736550 128291445 305660854 649395090 17748148 241728242 737052734 328244392 242735639 466495321 464310342 654947791 449809489 452800849 584578721 230826118 249685647 561050835 223590441 4246754 910583932 849429938 461769131 932112100 574619096 395261017 469181922 60695673 99789572 642283219 656085384 656400915 304438601 512335777 539956801 658238368 172563352 473036014 371721451 946748322 950754118 452714671 963190612 12826321 489211523 852017289 35129366 159425890 855291973 167653697 449911448 16821649 930935386 867112290 569019400 602355413 336929295 34503105 795948244 450665606 604908777 548174955 196597161 277185212 785847614 604722386 812350497 103222789 833571346 407640727 294645695 596366686 107025059 716880713 615970858 351086399 662518082 572680224 612838896 790294512 443401993 985550630 392064894 727322322 210722485 136053752 733843408 857353914 897843411 803508307 281724222 284867473 289435551 393756323 469611795 56921010 303478964 904889919 905619217 110679150 612756550 62322486 459773702 454642246 881229911 459520867 986800438 631305578 793307738 8049221 897922835 25992113 206377607 641366570 641235220 504295178 834431599 359576481 922989037 461055586 253439652 855474902 458653983 906525207 140102883 827476926 529632655 267921804 253319500 258070233 921643906 212339421 521131119 479003927 521461716 722447424 468442100 607383274 688136889 478716501 177526531 800696344 162235441 734439252 223180273 346253429 501438167 43694765 125599411 176985572 232698707 951626322 698796638 386894936 439460153 511175473 123952932 594087478 13865105 857234873 235117846 427989490 948581559 324793156 318279897 889088633 657636011 990779032 402863520 327851222 254099059 488803236 383698993 150143636 432507318 466842004 198139871 726334956 847446822 535194461 70285347 371515387 336767533 174136726 457929843 356061766 298499654 216465499 849559088 298068360 119543371 952447746 158342146 280739822 571875203 472971163 854763223 250007267 598625140 808486310 151171153 724331156 988139755 437603487 149974275 943761472 914930189 556740792 210034557 579357469 515464940 703678773 16529013 996455207 279873239 347224399 204029371 847763848 857845023 503155957 601995391 78611902 963616050 486493899 47202277 372191997 288562308 55304080 179242594 809867215 456741230 844839572 948024521 733417204 838280876 325478359 643592532 789541587 851614631 477114500 368277236 196791564 273422697 167750628 42872380 268987156 265955087 661755102 147716481 488220583 778219665 768864683 795426678 763161395 591536965 646929963 561806016 848260612 511976132 453223313 546202310 90054920 353108370 753652424 257927196 163954767 792448703 672469028 846627259 140859992 586368679 90499809 648407473 990137930 143777706 484753839 253130358 888704167 371293812 399877205 55356660 774037859 271353438 568696911 423024251 420406651 491217234 210467011 798649112 845604057 684255386 237647768 701862210 129365150 916887500 590207122 733158979 880592316 230439829 949385560 183360975 167374692 250418699 68616714 668950965 535681123 346684077 462079866 612921315 253146761 454162298 409113078 343651920 734955691 697082725 123899875 918962736 30778535 386745243 88314872 14381856 699343945 391141118 795556705 436277864 5273843 833907515 703074549 212418897 403476381 857388678 185368758 450850984 109576405 967570951 21673072 263721520 872723701 121851107 445089747 361302136 886178211 348876124 250829225 620239212 424488856 187171433 374381051 234112310 129764049 476119426 498997025 75393533 18413110 383028634 982175832 494514803 660851562 920206293 526136622 861982867 271279126 847127392 808975545 997014581 58056715 716847192 716984097 18850031 561639227 18383282 146057614 400850426 344008303 77831686 833237259 308951916 773257070 205324699 350971874 625155560 891363866 256796839 144423265 272149731 816120923 370138270 750717458 251738016 564420051 694860805 123600788 715976213 468561583 226374211 772143556 243260373 259771093 650170575 919980001 516999339 850908154 433342581 994772136 997211967 54064900 61951577 277666705 765502562 468888876 4127145 212875003 772786812 634339842 969918116 874814952 541368984 788324323 208402168 753006487 870598211 538524579 278807728 946833585 647975090 865756541 206749254 333885148 346019472 45179267 335372720 873743835 922043414 760712669 231179699 758789498 619694654 615241768 736752323 760389423 976496073 937678449 653086885 160762674 645446231 771806405 593597141 313507305 706220561 902709238 830246973 543741966 835889473 743124078 234236093 105173253 347994789 964457043 310144563 189067921 107514603 518348828 25866691 765843906 819272748 789319141 829216006 745915697 825610766 188382740 810823120 995291894 537764805 126908765 61576915 892021077 321352090 337344401 172423875 343645178 933264434 828259996 378836182 474982310 927012978 743238925 833611662 245263081 795938007 387242501 855280089 999861517 765520727 411530023 550377121 814336263 872426194 991506410 327342278 460501539 307366641 55881409 949943234 837576289 217139333 756045759 885407467 405398885 473901558 879071143 558441270 341125866 800397276 654537935 171692552 815883251 922377199 203586154 975996504 615249633 220827561 489037835 825062852 902012168 674475922 596185715 240055433 452143172 935182501 902488359 697537149 353484344 341328276 790688191 488669689 33710775 211444689 870785743 338137652 735346434 628276777 281257780 157197831 806469583 497308022 675356805 164029342 606106463 283442743 414126240 768166919 223330476 644016910 206907337 66360816 225613572 302890051 75865790 214178913 948407358 418687145 248672610 284780088 7855174 678314067 19355983 601061671 516461105 272562755 982178446 417180456 3184440 454866649 798954770 809626291 811283506 206749704 189671013 501740642 886073918 70132744 209824789 992420792 766961499 403275832 381218864 849527939 500436504 919679650 12815534 494442127 976318103 293165295 508300420 555301048 595064651 394133759 17741130 823346541 106872389 329536835 234481774 490068436 484318143 559983813 115959732 774518173 389462488 357614637 328419386 668431591 55738501 118870783 633028709 441731549 592320479 420659909 627912180 345515780 973073576 66876541 839605927 878834212 954349222 619294854 614790572 851386040 251831979 261665236 404533678 490498555 711091270 455851400 45638088 970231781 468195707 434618447 628521472 636409907 821659243 36427378 724024259 429843168 677927639 693681972 808870363 829117421 600595686 159749880 111498311 827118361 330232545 782836820 548651987 927716065 795276331 264716330 946120263 239105142 714632579 755264724 722927815 680917472 19626621 425374899 335824736 458952856 867308655 678780283 359900941 195886868 902118215 36342416 894147776 44884428 979237629 723480358 347674647 140877635 690119976 391767676 520889243 269992776 582246585 714661681 768282869 60985097 281673470 721371287 294784077 984977195 487674513 443762146 833856947 203369093 395889969 566025042 438771593 162335805 84894585 772992234 410253904 299296286 322220942 580083471 318496319 555028453 27814295 480570218 848215868 435713694 947607255 30900529 944032452 670505712 559895511 189079849 162592685 312663781 878063450 310370335 690779938 206010555 938290883 720572458 891096788 486637 529731003 209794171 504052764 784743504 599425126 652888249 894803234 149317126 911240460 192256884 658981737 663435167 538646540 166018467 663572919 541267608 478258868 467458589 296882273 11925564 234984359 39258768 809940502 390179521 632033039 212996484 738872857 131956108 621712346 995631878 255744121 507200925 397538695 411651151 516125634 821412877 352224031 588593750 731923516 218791517 664705094 955057295 429077476 724807334 301999192 274912725 566608060 829923320 714985514 470362236 349700241 248725920 90595068 800883896 1995830 966153925 878220659 243301556 477159390 86673423 855488213 296120852 515560001 157305375 82172543 236534863 108865855 285144174 974038729 380164920 590571847 494444488 513060328 786115012 865193982 412558242 372413401 69009651 453004768 460244472 356041513 718371342 342351588 926999280 891367272 606102694 844440002 463973944 215645556 389926478 890386768 823673172 344306943 480262677 38012309 391285261 84070279 921105480 371168041 941003849 449348708 174089479 162004548 333486360 846839559 843306903 568498803 99985863 588570335 158342073 113244759 667667044 821583220 319717820 641827949 614884162 517433228 694117122 791016340 338532922 957718045 233119072 433899982 432199525 88383088 625526404 732064168 581846854 64138355 680634818 493521449 974847797 107405335 144331563 7547858 305268225 90655956 789817215 41524292 348872352 629531170 960331597 871183087 188809981 760844873 726143000 559254367 199298190 738719576 803941685 52924437 864067330 707822321 421663220 929512716 866466861 97650138 454109706 919818592 187849953 255188540 992122416 503658607 147054833 761035362 842203078 323749357 570221788 445879489 635798258 389020856 914865312 403779613 234126304 426918918 238787175 549950306 601528523 237165008 859823228 423625527 113727965 921174750 563675348 416663240 964865789 202030524 734665290 999922141 696956367 93495673 858515498 977942444 265774256 43505851 12213690 748583883 460364616 729273920 568702612 377030804 806368208 433826003 341654736 85483719 833154209 27205495 540831169 547573914 353473434 569757425 223481207 796452632 118942142 512246556 323055138 730382491 134285674 946187440 759508693 866384762 929780921 729983409 672380564 302904257 14775928 597233131 389443055 926857169 970717162 72537081 384050420 667799970 492690267 906783442 542139501 252847021 4239182 984737427 242943790 784027975 31607408 384604426 659565051 326170852 705234051 287126478 201029620 599092495 440755193 532362521 506349352 965795138 218958144 259738242 528472208 789005852 336478330 739254031 643223422 913614690 806976529 923735793 222728706 820566522 300793027 516245707 502997051 750200650 679064613 940323057 775963831 129901082 589240296 268909743 54135255 338193537 394750646 455761791 902970283 378170532 721913295 836750868 562996578 299109710 382804193 506736952 346519445 715549764 269120498 494238168 768891763 343451873 446640958 956184981 406479887 566551933 419504940 668907034 974668248 823640392 145608670 598511790 30877525 661696106 309070341 881221539 518416927 98918684 379114055 273410669 566761553 735820978 758432914 499170224 729916947 642161374 635736278 178632302 72841918 90407634 977470761 590254350 493821529 135582279 640645236 158672240 509953366 237232733 533798220 354379365 97032837 918351441 116403632 125122917 775478048 475397070 136365095 711964452 513254002 621174520 258573974 746324536 242861149 889026883 564013036 952270573 350108324 53442876 58203824 838388859 604599852 981781496 601568056 348043526 144079478 790898555 589390090 104247830 818779266 890140672 596110541 96460677 433841988 907041831 487014307 368421285 46866465 844663070 576522555 497623205 401988100 713789247 804191590 695531667 847047017 659006773 780369062 70324606 256316486 496127279 763229907 629662619 656885446 564933745 953223080 973966545 821322556 274612861 675109288 881938629 550527859 396355403 409327659 219914229 160146690 359297627 736776089 500765112 793153689 340046403 102588481 625088856 559340359 112532913 665046677 203941523 368761582 183319643 165212973 589913322 878095220 357119449 143828771 58890607 295707102 933031850 334157728 981502323 409990614 878351923 322951257 947014059 385004660 764554874 890751903 824344219 695109857 903963829 168373439 271735587 619367073 567201413 371130283 313760577 946059787 230011661 405684226 668008224 144634150 289420977 261324019 271758092 63201251 783362336 537383214 752321624 708819796 954141688 185072639 475219838 65145081 471257993 427601704 357589 90812201 5942005 966705844 885572998 174259052 864881092 699837837 694052525 709671563 583343214 733332139 456227828 406824491 791504171 180147548 993048689 27154776 661353138 954658285 946611213 348781553 184269774 259406844 180474321 249096978 997235906 106716035 994995663 171102163 840632733 34114879 295457360 921344047 278504666 406672631 984703114 457923061 962053255 968744203 656298482 985207134 863950780 2939683 747789765 472700458 95989272 42826927 508147326 856563578 123050499 442430258 582234683 989427224 594560211 729767562 514852329 693835098 888924788 724992394 458110053 819600013 173287014 642144795 822234730 479879097 286251234 330240180 110009543 841229901 658864621 734403091 735536107 305802617 650283843 897241297 93961286 400214956 157007767 556809558 221172773 777120933 928003779 185434577 916144031 799573886 400388272 732450944 674744238 22714974 960144180 431554633 279701762 554072565 589697339 418159504 966082273 981993318 809706769 565549352 988449011 126944108 583357881 682673849 92809340 169992504 890939980 698535631 226841325 629882961 665031783 359105238 956719506 43968843 22830737 167315511 264551589 966546296 297595288 968360731 520239968 911635011 798177902 318220648 513074834 770239283 1303707 432438092 163967113 820957269 326662253 666194465 275586668 945193507 649751256 716747464 675346486 816091026 383947068 96774787 369966970 331552053 99203688 674543428 607701637 435479448 291896556 983539612 954914583 699897439 859829812 435619188 550429629 39071654 552157140 588554427 109646643 127504137 671923965 992646334 700500147 735706524 525778470 2214105 510084230 861883560 289542158 922698271 968772892 606459634 31517375 988497160 975906074 548501053 590130209 22067526 82507603 13666716 886657782 948533069 608288854 123031814 570466530 531407899 954791136 401909357 510153467 63860416 156368957 650357956 954785990 249752859 757024567 862169125 608936218 93628609 558968160 450176575 844249058 512493626 414640385 241056868 429820392 625501670 656302402 174495559 405168947 480191365 791005671 576932349 478208960 715384232 526316262 447108081 938963637 527036348 796896079 507575177 805465566 299454089 126873364 178226213 648894881 345728843 477760453 346381197 293298100 818041241 700075877 503343028 453186623 276417667 95222257 369123681 748122247 281164376 629133902 5909316 330986450 71570662 514044948 64368177 53648784 999351928 557722457 310865283 48574575 626935278 733039100 198866007 674438921 505555244 296205876 39619785 279081835 596643852 59174157 31912063 836137947 259466958 169921261 39921749 129520417 338653363 601086784 516238272 696197719 622144337 301001674 968635777 102489051 88208921 656542381 450896994 119257480 610638872 351449267 645073932 483415763 674720578 323302095 811292242 685734754 723089283 5445089 757203728 57724127 954360688 288322975 98504935 791612963 659681287 175665543 387308648 895246280 592313484 302104652 757959852 725127952 234883234 31036682 216252931 402541600 789499579 916888092 996925716 829671026 259530054 859563934 581543587 155180882 732130794 83321085 145452820 556533593 392741121 86076689 718922834 429156496 650037708 231032348 277000593 48351221 18348187 518672468 494571897 554671953 881088278 1973903 257622572 928941619 469083034 894525992 677351261 789777806 504591675 985200469 995359560 378666591 84240590 978377862 614941321 263880349 683827392 49795995 324858621 499377930 226203680 947128608 847615173 47103161 689992630 696663518 354037521 536924439 35688786 326163371 122584891 15659094 906564196 929637883 1778450 399894625 644969913 379824724 588428057 592063195 434421388 584010915 305551450 871106529 807090848 713883322 218398039 903545382 247215723 542232625 397519583 450498020 5580583 432790247 986077996 608433717 327318475 910316914 47743473 155654601 608075154 690529875 951160871 604382407 551761688 322448571 532632314 316421925 115156743 521839317 67345745 27295233 748507745 69561952 882771998 282020960 275576408 326385238 873229315 892689796 945306817 780188980 675463310 849667196 93080712 592107354 594030696 665600097 650325422 337399851 362674393 881196478 638501002 932477886 805358215 973864827 190301188 269017101 458542772 297755808 337651684 368920768 155229415 541564625 395033231 250574716 131228373 314218927 881756655 830290252 67022531 589815430 184516944 712144250 356914364 787349835 425986208 36133494 776129825 834968328 838183222 24668145 281159023 866893224 231434722 483631532 76308533 311055787 879063943 23054995 178218329 18565961 484433689 844940245 565694066 520518019 882772687 673627812 139824034 745379270 849860793 959594972 216093584 576395413 693232023 774866360 873964264 440073334 973652468 365004503 448905782 790241083 127092433 794070137 383338682 39383532 300776275 3303620 803037441 576532330 158954495 74579483 970286507 796841982 575382208 426515760 841716584 121146740 141293702 261564350 87275763 864493846 287517696 226551418 61460698 994841943 562388352 626437261 135707463 255841891 389779635 99777408 100327194 723949563 679330074 637205019 229118842 479711283 178941961 68057986 667274197 925741802 685735214 670563894 365201106 693458681 353688054 571292084 270866100 580340243 56332023 443641343 807844653 325170845 119698321 214750655 406184957 1276569 74002848 134098478 798648209 333707377 293828880 897597395 994811567 785641941 844507290 424281865 109459841 731057139 916704968 674223358 675735717 6435310 430728876 550580522 232407563 344665898 859419485 832135605 518031811 972682006 423005595 565387065 980036414 997286559 311336857 639995772 639560905 775913761 451702445 505646836 14052007 533273443 593667517 487120763 271259169 803726503 564249472 190587477 611342850 36568287 912322298 241894478 353167394 522439387 989359456 758308285 303509714 938939609 906427576 216852311 263202648 617766958 737388919 549530963 503072415 16543865 279159463 951999554 32249804 194862947 953864855 61301056 270099014 843249868 89512761 536195961 970100293 719448611 102047059 8937509 553224903 281926549 13457076 10019641 787543691 294235535 382878021 704611725 61345605 107729452 107064125 311593105 655467021 498227315 53182009 521408534 614218273 255760306 37139199 590098368 884130657 352207460 560741994 258077445 894999491 268878729 259682270 899416216 183517333 453801670 23058773 549997533 981764840 962127384 969258866 951438447 895755117 963136127 651666502 324076747 196808619 500811432 844322634 481600815 270632971 78012636 611028786 102440699 122324977 457777061 457015601 420097331 84715328 913046762 915103101 396446784 869989023 778389543 543317000 741507829 221030057 39214225 388056059 513066425 196567017 805319532 403333822 533429206 986835764 328805702 247008903 332166195 691249142 26042179 352254798 789614799 669876970 424426672 927861430 911489939 546517482 704823082 261441040 53936062 953576006 931462230 923301709 109129926 646871947 981468698 277608633 703196955 783647059 252467763 520923198 77452648 666302099 834376599 546691636 487179251 599848460 81525799 243842576 756958336 63353336 278948842 313058170 867076804 241349659 968159376 594833852 803841660 687241852 569524900 342313164 853517514 347671574 314799735 738814637 431648250 889904144 950872403 775840163 322529584 705555244 156683486 376843893 944076836 807549501 480105117 36202074 617103461 988657954 445782928 373667968 767648078 541320770 592425580 416380734 98978956 928833592 352488351 877586484 954052057 209575415 219252005 910414003 896839639 558233689 812711543 616408672 429740560 521444349 676173784 538183955 363800258 667679365 694053487 394809834 741110492 221491141 627122679 730214817 902534459 870130691 56187758 161852147 196380526 533730087 715628370 649764748 376648100 243855973 631269414 94286608 886336605 512855434 223398698 254421991 463880574 736922715 284275901 673458987 517836689 771197207 432413815 825678910 672759517 869902741 738516671 321648658 661218357 656658042 865033360 663295449 922069098 370646041 570552017 319600577 287117575 359256066 829502760 754703078 619752988 269081494 976813457 472113072 189599460 937265267 537498443 717278543 276206880 57290104 456715715 186366709 239253573 212189400 403916936 76758658 545804760 467134235 206218533 674461827 344578449 732642225 682994558 27844579 98207289 25448257 64279885 643206371 217464315 706671571 845596254 876109642 460124658 374631219 425183088 474193951 433660208 312068731 424224268 473843613 918674167 350836571 741956168 95636412 280412209 740286543 308930720 862864238 730066459 334579756 395346918 307380415 950957040 653666382 726620306 484918212 192374474 380813359 194413462 36712720 393825910 117629651 994492759 448275974 679013360 77631794 463813851 548840162 421459788 918910911 749556519 838789770 607440163 484115112 401388445 489230029 67646405 740507441 666386711 287736134 950894929 43668307 153731907 741597512 849357623 463215637 700506789 758283332 920399742 904539794 350122133 595663171 143398475 889845865 858208865 716884686 439886343 634712204 339583820 837982519 3756053 665844189 370490413 504076795 781633954 938544669 254869188 762775866 278370299 139123703 148356913 823958927 975064431 5995045 835767625 116572134 984722507 518911146 135787861 456616171 843408097 250312071 974767440 802772493 409629682 322174186 59136888 645344291 594115097 404384428 655685646 466288616 864493255 422448524 806796229 722840164 988982325 850769634 667852100 388187862 587884990 423395813 271554973 578866243 64770984 961942188 426884378 96690979 442913262 470217789 973390506 40839307 455829435 976938963 222057664 396096672 44143256 487405096 757724609 935848223 944691040 76148178 732693191 5474937 403769331 526121846 491422250 887238946 476874301 684513581 732144575 147338309 532158475 542711133 413153129 532360727 163981021 450859947 845681312 157685192 173981079 57428248 329490759 866279967 711178716 871900555 18178258 719804146 16491067 503882508 924176555 642037948 767694100 419980620 893153627 485827884 341603686 598018720 175380580 997310011 221684937 6363383 21695671 509836224 964740244 466350840 52786841 813062719 761214368 865242148 296525192 578275308 145604943 561983795 917055386 32817905 795501482 631260987 141414129 259302662 4608584 677375782 646556651 517625187 430180181 297288563 552237919 491277766 485033273 19147817 143074966 950722056 243423828 986724024 89731283 500201094 685654478 549386555 338450228 856864794 290686304 960417793 843733506 901629617 506786937 634414738 55411104 648059416 286349503 885637572 491423625 421927788 18292661 846825543 687786503 762768384 3607041 344300145 650868532 507196496 889982371 350465655 119164417 598462990 333417386 862822937 656916353 128126067 280846932 386577348 269075158 343151765 310783440 926080100 891679176 673597895 44995003 753647120 6737214 586752297 107773443 604590950 333848707 10913045 876374207 429247844 199907656 766946757 679732287 809894356 942734924 724902535 182925448 113339100 476418628 445710618 427537306 788014401 544033346 252071455 638617027 933540188 962229144 131277472 121295002 344560030 38046342 494131717 639150342 598958892 438217095 197463187 245493821 165173275 456206864 448070978 239618385 598848772 22544066 10499511 520076737 770187135 503378687 380958932 603033007 998099788 950201619 85579931 780113714 46427528 465834830 900365287 697224641 904505505 301956900 599462000 526856697 5048875 438344366 747712375 928497742 946125517 36933102 627923549 256268491 66474176 160714978 548631588 31153480 335452721 688849575 377165299 346171009 328042555 415069361 955971018 140584055 626693187 692097650 869232958 975945995 598751371 544222825 646014496 463604894 485925577 455190185 917533568 752755499 553536715 326382385 231028707 374025311 238573199 386297065 99119210 233848859 814173009 820835949 345152329 708759418 246246834 213294757 42776751 881329383 450420270 136113045 751666653 281463900 384042752 881869900 591459487 177183404 73041522 201945845 379123156 533486241 138261014 453205293 879535533 377290326 963829416 217952818 560917129 158160084 944510123 568633311 53483950 613432945 176585267 260403446 48623683 940113728 359880748 392115029 701225642 978857274 982745079 857942860 876140359 457806386 746100588 849580354 22913246 535675914 885688138 624788401 655181831 652792408 576000399 507283732 596388831 51609100 467859386 836882019 984827610 727375358 190542053 458921609 333798518 290198471 812515941 891788715 42206477 485639100 414894091 180607785 563193140 222550707 771075946 52628116 62329403 467032880 605864062 951303812 747318758 919020818 730327723 759651352 575636103 446197088 382284111 472602063 965392441 601476459 24059498 189570233 375027189 444428155 281750135 618262177 29801027 802933872 959196825 362840576 83102718 790432013 74779414 723528022 334235616 527332137 701805760 276912842 86568914 381397854 664217449 566414186 901079640 263715627 129444134 91264427 242968488 820148293 737166352 664468342 36505880 390870628 876429590 351382507 730861094 161520069 206965524 770385805 516313330 22104608 166619489 102429485 784804216 6934016 885967997 294957878 276881376 720731510 348690882 598450755 559041871 314732147 774374613 830514255 170074684 993152926 322266863 105251609 439550937 209599766 64958237 527622571 177906625 112628001 647223061 538836128 341120900 700209817 774892514 268043829 397477749 402821184 59723231 30562380 633047031 53705363 926751499 788808728 386701312 313983032 619970854 597442933 652512491 680566074 334230566 246135817 530469737 685368889 730710457 459830779 512515244 134342053 236639647 312671476 488075453 900809148 363467712 628692952 579401214 774849729 45042316 644587300 602205030 880573912 405670988 74128022 849152624 699029101 394231035 463957936 797110676 419027659 620584112 588544036 346644810 832966340 386419593 232598886 539707773 673384885 732284369 66263442 955999102 794947732 714117688 551277603 231325212 381801026 880824799 715954532 553559384 388328143 440284327 834752759 803025033 118310904 744547926 232916275 39291419 42378270 877426983 340351800 650062935 204264164 405896475 728547370 244196852 875068000 373734728 575949520 674557759 966973946 212003656 695859618 309680806 69717752 318896425 350190006 988470257 9321085 527869028 797807365 601280678 378817411 982662937 780345362 660290679 536413752 802704059 268744956 26821014 751575560 85946173 76137153 760610597 354154001 116540526 971685862 865323360 452454521 284521593 884360325 908627489 503796571 496353496 781427713 609861098 162617579 329400667 826378483 54253062 107031423 369406971 388269621 454830543 529189996 868445620 891153439 306326984 978861078 161426186 668241536 775459647 421194479 682261454 98536782 52748823 33299833 769688600 431446746 430261109 497530394 110403042 112913496 240721490 592528508 153397177 729320837 957508320 629641133 12266929 225567204 18705444 272350943 427595932 284705099 531819630 802089826 106812131 296364700 242349552 397201638 516488195 885043026 771081032 26014827 520196511 64864270 581288688 445610661 945562808 609557022 793856001 955847391 953135805 649164292 523458219 122328208 881033831 637451889 732266453 985808098 479604876 386596416 202943580 806651132 100294879 432120740 479980610 674170889 749330070 384789691 496819608 362907549 483325448 96296889 446328778 68964209 251214508 822851923 521491177 546833132 760467515 13801452 26887414 999008904 875469040 421091008 346088881 714019479 219454359 261368252 538856154 759296806 679554103 766260239 244235438 705266260 763638611 570442471 903839232 206312365 203121040 28245103 955832587 731825492 427390466 231131707 868017805 350260810 209809285 753371522 961457799 586493310 992299516 391573398 197829876 407454157 739290016 21262110 129889875 256594767 190765834 647729801 99288789 117859094 851743975 784456198 70100814 835963462 694848083 802553481 790313266 523267154 916796778 852444561 70904273 227119711 148511599 835898625 362836362 921586150 698374021 289449550 435371168 470326507 490241205 402641803 119417086 830549058 971972357 222312581 515686140 413388218 151955128 719338702 363340612 550365309 569094066 801342570 783503819 270173967 462101151 576500835 686725952 363330531 119826723 798297449 469916893 501137412 943280854 843084325 919421641 605886742 534021814 318460308 741600863 120023698 865930166 104226091 529394812 995131204 502045254 392933674 557872538 889685132 502296593 403318403 350981678 298129729 396164685 831657931 758300580 607375918 671401652 981379995 590067831 974272024 40670690 788368898 142379833 531901356 243759573 159956770 521254586 511608716 519172221 223216724 622230679 354387862 842195472 307092577 796662551 384801105 818187429 321485984 314034108 210399958 703077218 917765200 959844507 184990004 653367193 171954382 877310195 233230630 421018434 218707844 777714215 28122167 719718091 691325080 408043641 302364949 261581901 444500020 778691926 655718689 8323061 780152449 413039187 736231608 179116724 838342241 863863458 427868970 565061996 232552911 612995201 624912316 198095922 391331665 159626212 121226422 960813508 780548390 487936289 858490526 732761125 145838793 787490196 543766245 908967129 811800977 188589292 78733400 520956481 182559486 562719245 681251759 496063711 79272017 204135179 824218290 439225095 496006344 690059361 562716472 855582011 786597391 891261309 249183412 66945470 199028221 848084319 410991921 835798045 481319678 873487734 866455439 722343190 9971101 232650134 222220713 946077235 432675845 799090372 413260363 396866151 671124450 181179569 38929061 277391493 675644473 166135785 19772393 276324998 759122776 480336321 796901372 170174099 470040875 480303743 711535575 308953638 437723120 17003330 17571013 626371637 566404466 903115999 343325967 628928881 847410190 888843816 299217502 394276215 72602221 772066183 370928179 788370109 945012312 287577556 931196633 536121430 372194712 2772815 699408393 648294379 70399958 999686691 476064792 172369660 560073804 343900346 962983030 594934465 127943263 274345827 395395334 313138854 865301457 821564433 880745383 203116580 116866340 897075443 465042203 94260968 715938835 301463968 302246489 199721750 509743583 958868343 143453337 733167805 312912707 46394698 998246456 392659756 782754747 706595999 779981542 533433230 286890781 759447333 319283756 253230499 967072767 173250740 261688711 387088389 571674127 556226875 238746743 315338295 911176351 163586434 661343752 965547890 70615301 302247537 303964902 572098611 609546785 347338129 52763462 507948310 189291848 520772193 908163159 914290787 657603664 347823299 895681060 890731012 972529770 32239675 196689033 219750381 431042024 14841636 4360239 339646407 355002872 172499865 962833435 523759696 493215967 689353691 572828006 835974818 729598013 439381747 31978059 245527023 568789853 394767737 384899784 523237506 496796104 734619996 453777906 499549840 246876475 628930881 732902256 692592892 976958461 260474879 886793329 96041738 318530577 116471756 851368221 987727622 205745127 431687966 945249123 90183995 832904454 184376310 868477977 614686946 446559922 842630175 966522216 214259937 677422086 888012689 36521405 347190837 107297199 590691215 303944750 257170190 346404239 546131431 361568307 791250465 477094707 446618020 550426064 272959173 264698035 712939993 425274074 689629617 940700546 369085106 819048114 497747745 851570980 221779793 755570727 226518354 443400054 254120911 693205510 438541076 544369375 621434960 486772442 552366115 729431178 174296420 796843347 812263542 865111283 468948184 554405521 122330872 256173062 956897490 20361711 36272167 103284078 569240868 471742303 104770419 818956051 276699340 134517123 962347429 638979316 713358141 510328035 533784063 388589241 625097290 464726348 670914788 210111619 761416632 965968323 925758805 443244560 931195387 522756756 32431079 757170187 354147224 906372081 965703346 313311810 416474559 699942792 950867816 883602577 396802511 481380307 616667432 71015932 331229638 455452562 523273080 345359729 963656175 433266848 139806871 340105617 203019079 747430280 15937050 570921084 386021926 533023401 239688551 404186375 92989369 120434324 938532508 715400006 193794367 363252853 108708765 468531359 848136031 332839234 777159255 616385437 937775183 154466503 908534240 194482380 739964827 514263497 693813065 115584680 621422527 73337967 637209919 89259025 875499705 66447650 9801269 791259345 598498008 861149493 798629637 327092297 540806653 268181304 667300214 88085791 96735861 180912625 838755199 150842618 155754318 698931680 736542966 68097626 551444971 54625485 566995358 731419204 75150103 606416952 897669894 211815415 828280838 267651508 463022296 311456439 905885188 939384259 469982010 314481118 741498615 37897177 917353210 537780392 228723092 159526925 178725351 314832677 541798997 970337706 950564691 751841082 762596891 599092340 549172401 668697123 249609866 900343158 757931156 507618238 850643736 483826472 224501577 855608580 938859795 370155999 624401504 666156410 582222751 649401394 50091966 994401162 513551777 102279248 878116281 145746469 839309882 745814631 557251946 982356378 798455395 272012451 516574116 577828029 418762666 877796053 396455996 696802293 241457492 396274236 469025855 982671389 757651129 814363029 949834281 606758858 760685678 641190884 502270267 705047024 748437861 911646436 302356341 663337735 230009968 487059399 448137732 470990069 683100918 118915071 653210505 601126408 220368238 44944439 470103412 941035777 805864980 295497116 637576160 728244757 341261391 188117624 626760786 209237862 301407008 674789992 52103049 220131632 880311164 583078413 990645021 279123113 939623499 447946942 900992270 536698775 889764159 271644065 219943007 566434339 177059107 764470306 758296687 483549854 874734365 349562895 615369786 783177291 487397086 188415980 542102274 776451142 52842 301744747 858830087 791126083 204584379 369954707 387437125 526222624 77728259 687118055 116033395 680382945 356837291 783824600 379056450 970805585 655447313 63321837 931328415 587968116 113896083 342323997 215296195 324585490 902473048 354593204 206589150 647445312 572320162 126617544 909783513 891847286 233879139 166653305 288068499 111518673 62754162 988224837 87457460 168762215 280555203 421885449 202423804 646854349 520032066 666665651 883157569 815944985 780826067 25457995 90215879 849039163 654688601 677450431 597294840 754817798 962538797 944923149 453758732 128721237 820699077 956606141 908436122 964191529 528022472 178852577 581898007 905013381 500778486 531988011 371775128 965871740 821356535 963427255 473774556 252873066 46817218 388721585 286096604 861282123 326307511 734991935 205836086 163555424 908200627 926411916 718409583 824877830 212424197 78849707 946488854 861207207 577611610 805254879 90951720 917545876 906752397 327656871 686904044 85336149 292862237 125435772 358905205 763021262 481852819 950510660 724542993 657583422 248937447 46647672 869952402 731573904 596043774 868016959 584843251 294714512 890576952 94527461 849654238 909948747 647681885 882673994 136204899 349539391 50346183 414099121 65552684 779463132 613496035 749487462 519958716 919440368 864506051 436147114 287275148 640592229 951159861 752371824 323599325 305724466 259707349 968690066 428432592 584816746 635123572 890276527 852105230 484330841 839006495 577369535 347338440 801334109 539594006 209985937 978070987 702429704 640038962 746387905 2464419 213624758 597238503 266521058 540661309 350917951 176210843 844718960 8762412 233115679 404407556 181793570 485286084 998515955 937700224 493038076 496225790 164745692 741609303 797579133 107612378 558366711 395928278 622769786 396039896 228353914 907964227 493196213 113460688 278711661 290558617 30503422 965566059 533544244 186819506 834885465 544104998 734061067 525977661 764060924 160195160 856177656 363380011 805288267 477747770 355410824 976262426 862063118 572749909 254932962 409467525 198146284 257628424 150736697 708564719 523436580 46514110 947676867 685412812 289656017 971669928 948128287 606235053 646074971 727443971 985789169 588306679 11810402 427024961 56267100 674337632 621850922 555076116 517535323 865746310 672456179 627289364 360424481 120275524 492696283 209295839 412254000 755471035 357224505 240713074 526059825 760862571 37245463 240106207 551245224 265088584 696809730 553443369 397102058 923953846 304118921 342978408 668605125 945489012 673123916 544962448 214254189 330487594 778375972 206444619 365374669 365349713 450361401 450213235 639530800 851072017 679324545 994313092 787428925 806449933 293396214 76834515 13014693 997419287 583659996 600038321 123705975 651635338 917685534 799583020 183038463 761195503 540427899 320834475 16940136 974515390 254714575 627560482 165758653 967354475 138461064 440560803 427419196 967688966 45420794 376347043 914891353 430313900 266508406 650620557 149675424 335254720 622906169 339906103 80973752 822494231 972291986 193072208 60290351 55426735 976894724 35398627 719742244 507592218 638875778 626783726 602219307 353997207 684397062 137309239 332603827 619871316 665573605 108829238 279700603 878443106 674287699 142823352 17228270 824573920 396936379 447496351 197005897 443931639 625487178 753522869 652304426 60735674 226015322 555938845 266887438 43590882 412310219 446339556 444374000 881466922 555365828 838196954 735963082 773172367 263899554 645321174 370200451 885142311 149296537 441106187 908938380 132710074 824463293 32267788 87493800 416569129 893455838 549890532 71640150 485489652 646815497 139348976 678681737 362139103 279013857 997705605 945726031 690116345 450268131 779412406 940955551 443151482 925278661 694542556 894870711 330480148 565449279 263104597 450097586 353403436 816008412 997843944 340916900 811346262 466309269 306457712 336989875 489039888 335560222 443076433 705169357 512354841 747759697 167047341 4383303 696106006 247007468 260417593 527895567 625438939 762192927 457754976 144431156 478016500 275455774 728564289 767094751 562226910 177640908 4061913 105387148 130254362 884364519 907424906 824237175 491430545 223136763 500330509 437834018 688774525 677709725 281963286 396757574 361886245 148973936 316434746 695152914 182933061 436731142 369446767 220515947 779514326 957897116 267233436 844123562 329332747 421513811 295679356 126579535 873836785 272210220 797812098 814006831 684982789 907832921 308840055 517460698 755619941 576515038 897245335 742928247 984979192 96046099 305946256 562083905 660841507 852096789 701074754 717472179 391008669 860626037 880239403 249829512 306273445 729760649 675099700 976715625 581675460 298208565 900611828 844900537 186395631 923389079 553764469 85974596 96851287 131743986 426264155 55114907 873048465 442642591 875978516 376048647 828738592 34505736 697711004 538212382 971737470 973641580 182124584 694754930 861056970 169185123 216499210 640541638 869218194 983619111 24507754 121317551 495943137 370123254 384813803 709361450 814988470 274280409 350682703 600066426 843979487 934900950 677308143 346251936 339182594 361529447 143371271 877357084 655850666 59628174 883431074 325535212 534168430 401216656 280370136 703844190 203832652 146790886 95219750 488675206 674812924 822830326 557269689 241825995 802255728 346431720 143317192 834869399 490699806 178361824 249146195 482623582 288248177 575605358 524889641 817462939 563010390 36654903 980641926 752489798 601183989 390791542 52670905 806286295 409147547 285540603 812010212 782853403 362943528 629667002 346191299 891950406 238060112 697703682 280653793 814517732 402368532 566879171 468874567 496020515 895998367 272869249 926186971 244638212 129542237 893977790 336066986 896823808 552674686 899120975 217592218 750417337 524920637 100610174 19598412 708394938 382776218 736057913 513074107 5357947 302749213 319189295 601793589 343686254 983390264 820568457 83203022 479998248 278041420 684649667 547082363 661556255 632885660 377749104 592507965 674542488 397002485 100699538 930963184 474057779 219522455 722426555 931797356 482633007 131081323 580315585 289478610 531490600 204444034 801251919 141543981 67916598 288363159 938186479 670417200 918934978 837124767 606316361 897570645 243711558 204411021 872791281 27908872 41062416 395423753 856670972 807761306 610244828 464191670 789798771 208626227 164605073 326687085 895825435 20666396 943047100 9905275 491703892 175926293 474097918 57499566 867486909 807503533 126297670 983260175 341196751 476830097 398839424 375642830 460578689 861227812 22121205 962148637 773106327 877168253 163772717 954327267 289147796 223612144 800745613 227576281 901039218 381082738 536887382 854340219 670630452 563585729 83564961 856468992 315365901 690594555 702554210 565389900 974694209 787546711 516106718 510111757 624067580 405283087 105098271 955589105 839703329 199800597 137804154 482778645 344797163 60576260 52149684 177108854 873946505 583771121 933436163 944777230 168399100 682028224 328979827 229733696 876759270 54684976 927654995 979347195 838916591 875470670 592463292 2001958 338890796 106828273 471833181 40751241 995450202 86532583 477177133 37502771 769309349 570470817 727216593 711394313 291967090 439575048 202815797 386715593 592711446 118530309 468625817 639636479 487658357 735639062 969745809 416155172 285099536 803301588 884069725 89505255 291773340 488369747 632427446 305813075 705300655 58489404 412854172 555864717 369831317 709364566 960696014 513390766 573466577 57449575 941747843 775288622 979969025 795613034 448446048 320347553 473220268 744966068 322298149 407204848 790949312 396666038 140785726 343204366 377674801 194999978 498700322 579171245 494120845 245961712 648303663 14168895 625532820 632554735 287752853 122743038 591137215 668172796 97168010 552472 392411826 348461143 832955572 760892713 629007830 29560652 873832593 512803876 539777793 700229587 824026837 651043800 435221911 601668182 866898245 324320403 435453186 171098402 754103847 5647413 372118047 471101981 751762674 929292635 219729602 333217536 364879616 32337544 24790786 43888863 800423079 746151109 386037019 698148644 212801523 2382775 685530450 486751966 816125383 811160509 128569090 970142274 229368509 624260034 847337567 779940464 734786786 278035902 775714424 752076160 620596276 227835818 83775677 785072450 528172913 270677009 496507929 18189481 412221436 819599050 30005884 622702454 848110195 394750104 925365594 195232973 419931626 26974145 380266621 565406547 829654271 814536504 263666455 790373163 390410768 90561570 633368324 616144767 721372873 556637581 423966391 53461943 377575490 165939155 743900970 316630251 710271679 825917822 403181199 459859485 108991560 73253084 870185453 109199706 882949339 204815227 931213166 241996634 835881361 282091433 976270078 885196797 909285186 293643495 231293116 538431896 894559544 494951437 613485146 812091606 622144228 811084479 430951703 269129815 176871800 310802132 961800229 639095468 722805854 290096952 470804434 272261082 237375612 48841357 911931095 361060782 962021586 225836133 889998400 635576372 343030130 436860821 340598826 730090668 871360772 59446656 852288021 667566146 567760529 897978891 607798125 688425949 581018199 130702672 35648533 296327736 857618977 912810555 595111516 930097081 446517739 86035619 2813869 87220720 54434998 209210458 621987084 415783649 849061404 197530011 873890994 232640642 254952888 792301895 359591678 440882480 140988010 604524957 648985507 326986715 496884943 597538456 544046408 81820418 396923567 777133178 702500420 909419669 835401217 614654519 951220301 954307452 251440690 92173475 205392849 837035080 844374602 773176622 451045636 825292094 404674883 689109679 372648503 195774338 462290125 736531039 774908369 451323820 372750654 92413605 585476859 996275468 74007336 358695443 603552283 58700410 248109741 880560640 11941162 548912717 663972941 663072950 288980273 252529383 69075320 157853257 319307264 963578275 138294387 646214651 391946082 184197350 527418639 920363444 32338577 701757885 867874513 331071945 2384730 826747909 387364825 182253035 514193242 217906063 377089887 983745940 57622950 63468238 670159485 196311401 90898719 786819828 769652531 535320679 669715945 238090042 664709127 96480786 58508993 153277186 472314114 622525765 659812640 544984909 344591701 526878703 183790275 581559544 632340029 918715005 484366610 506725526 24499589 495078559 695233429 706063280 640862722 589607987 871025373 198679286 870925727 564316689 927804660 76636412 478413782 156527843 480741757 848857534 989623993 577687721 130968849 824797660 50050332 777760983 900627543 28482204 177050978 420031097 488999999 948777887 371508995 727139086 399974323 396392174 844429733 173919403 340478661 120071959 819253050 436643811 831307743 438317009 236937938 310902868 968000913 514667790 589098215 839961953 275747943 324712279 472658799 983715052 369399101 95492772 870633569 304112921 892264806 754429837 655594403 203854529 844686411 637188642 785054850 818613803 796937881 513745198 435368945 704708172 95876798 287432737 784001060 528743242 155859225 155993212 268900730 699531546 614532803 304492135 281020548 13546376 645584635 830816436 622639827 145507137 416758582 437469983 925160755 520269915 986468588 731525190 253942557 388917528 920653760 755211535 833952763 953180472 197342077 213864752 671373924 804583458 564018976 110769123 631523205 417843808 666389622 778166430 49636739 912813395 269361171 738797304 712251622 584560898 296280192 327583756 567232526 998548751 171445465 883478322 156138099 43177581 829926074 92012340 694065285 430951389 497134435 485187187 88236199 924828839 539434037 215709736 27439836 558737277 978913599 210213002 813022037 533376228 865636942 194715261 215946910 435038173 585075917 690987279 691817125 917896943 135311817 591807667 919437683 701282271 993504433 176810600 274925030 530392235 402091654 579340675 903831746 708276877 775715525 376800624 797067079 603945041 133480480 415382599 227657452 136689184 27906476 629384338 613942975 862406901 746746851 423405700 805865190 758086276 33684656 496190810 662319626 921887442 19559616 771212005 641280756 471200054 733961037 900718183 117438821 368152041 619481215 83987965 784153501 545321337 488883548 213074977 731750538 585244524 453425758 676515217 71533573 727044483 85311180 494805792 778345841 199338833 427531800 981912937 454725799 280908079 47846699 133367491 437886473 669701188 315515291 790539086 261416429 838506490 157655583 634641656 420140364 214710240 928441933 116510960 265568497 149664702 520745535 592057817 253482278 956811552 237673060 519603376 378547322 281868404 508732602 324181448 485104180 544869477 920533001 411840247 953471289 732500876 126724059 757227280 109791586 169028014 293276948 956251462 78977210 684849880 888406531 160191535 361149279 393107964 444672647 53927754 12522930 988450242 659505023 218206317 919457511 767112702 619715261 283611919 315928584 285291246 389859312 711558262 150866014 283912099 953909582 638682562 509472957 763452796 751904564 564173305 7255911 60862870 228133711 958568141 320893482 912401773 660355297 185098442 265388164 352125096 439345755 900784849 226668500 436378537 389134532 201312036 117221941 804176782 361351289 836243720 941656383 971334623 874038106 905412479 52190562 751714265 679438882 208631043 384622703 15134885 568738272 834843749 967255844 110485330 644260650 815676596 259831658 227415998 927796320 952943895 766085609 363922926 439032238 263700285 210163729 830764963 236541404 955954218 493201301 616699880 819385205 247511520 629443655 827982102 206670494 561842167 877500258 116865211 435767844 812150618 833822125 811539626 286855337 52231425 894042819 396062878 829085758 109629966 529482885 938482722 903381188 838721066 11459774 380118893 377496771 487095431 1621265 235766170 727525064 526124061 747201595 170856472 538128897 336344815 850497738 829873492 610642896 849137262 344875722 340213266 214485806 655975219 138542439 121446382 888029014 937878463 756406158 949939312 215914727 961443484 22318039 283298499 135206499 669510607 20602599 160850079 256872861 994595801 181093552 431028804 588745732 233803268 408388875 923512346 98687261 178348634 706956007 993804425 844572017 509109725 615066224 645765305 305734036 885934471 82212621 926751620 161219898 874162287 744372541 924510504 678924095 122752558 93596784 311594006 643837421 338780952 733693511 361783904 949550215 889792088 865460719 992695534 744339434 48292512 882422737 782150469 555867109 747042384 99644223 596855558 909403333 746331237 260622078 676620784 272626509 390912877 789794601 511556363 79690099 859742530 936897658 807881946 730939568 711139250 959134576 68895762 86172912 122718966 510818453 144294766 3720662 431587252 575176375 537350199 936023409 334845128 53351981 702475284 221196860 923980277 749288761 575423676 221194738 563215201 659945389 203633996 800115754 712050282 866042435 640937920 592727792 244701625 945194738 348055077 747406927 342548828 927301366 893842261 86952172 735056581 810469901 727609860 670282677 356485193 415221141 551185301 286349083 18990655 601849539 562557167 786015830 355408055 819745930 906165858 760236197 714893329 991216335 214035854 627652502 447927760 617124286 937826416 639238096 529858311 175476122 450268351 568589892 239624474 735742028 941906842 520539038 771007834 802517695 448644387 819320894 112084339 469739173 312263606 967958028 280985788 734973747 205960327 845249636 832135340 838640694 620951736 847575670 595825376 278380290 315181448 981439846 344796986 418880255 97292792 584014977 932628571 221860670 192671029 650493501 155935589 326101215 321881844 923333043 429719886 298395283 643545891 856176797 985092028 471422263 721305734 894868241 414863532 28667837 669672416 829488696 711389510 80823935 845657093 916570866 522946198 494824867 453130327 503901086 741385835 991013382 481352496 630964587 576430439 636047001 265405959 684987368 847629520 182899322 561828915 631467417 648456843 321973447 799600557 873935485 203740540 370916859 80577390 939691277 596982446 346992263 797367998 942142830 182956733 681741699 217404985 309972596 937765549 739180837 353807536 849996824 237439305 140097028 352772679 969578262 714865768 522666502 166417194 383208435 415501164 797489856 789557001 181737506 631176497 128772628 807381327 793598989 202471932 811845577 733873109 214808491 619342842 584064849 613494459 959603706 342069081 877672196 638975745 765924722 351673885 655716308 680741217 824596122 930602389 461261492 599623559 570014263 774915691 934388205 346797602 763790600 739446053 507707976 607525778 526069574 891745001 12167057 235687327 837349280 752901093 320515701 22442163 103793317 894635790 188322670 216934949 776710302 638219424 357561102 960573602 676730514 450907414 633342285 481432863 436131411 409606722 520760662 970563240 898300314 483977070 348025047 498029485 413434852 204883157 441961959 328592312 838431784 198088958 607193981 562450567 508242298 972906626 244849704 299221667 674090825 219843862 762037254 264909806 307686641 318595988 473686069 341164536 883938968 220267441 635536169 499044751 585512156 994189861 689491723 955275308 51071147 432486625 161211479 521490893 747766619 116697359 784591248 641251217 590678913 951168571 982515670 39661962 188571231 367621650 323653485 106450834 755482184 218626911 871713879 36532920 485153842 979981291 869520085 450531634 943126148 962028317 213926669 561098872 367542797 320738397 946890863 522905320 887432578 180084599 744244585 16393703 365115264 649356761 107389950 494599148 28935030 448073489 436393699 102422021 256598027 981579203 127230086 765063203 463389633 404784774 992374377 222465156 464286524 334333779 895263075 895444457 635271724 561323295 976776732 158877804 201603267 564902147 254785409 894977914 43263835 389907274 191161552 713520128 5669049 89408878 871177881 150730913 372153949 306300753 307254927 994633815 974254922 910285330 875167614 480048198 611381259 165434159 719585080 756648181 759566381 444289470 676822657 869539128 461166462 120515110 300845377 553975310 217679939 149815770 161149994 816382482 307448070 397296491 342163402 578045806 166475666 338453198 673201417 919838763 272927024 829637683 559192644 763188856 573483027 594256857 215468961 805356669 839186888 61998325 292582902 215033425 438346810 761980204 681786172 367870978 560911574 485093944 819821765 567991538 123141626 81173165 225728243 804605142 45252008 597574881 106249477 569041312 12553719 188896714 624090285 48277425 161121865 707033835 443668517 993193187 726529087 677904076 711798383 70360188 2858673 846660807 495016554 538823977 232851719 264468774 591655402 791807625 576126963 579720543 697661476 848401855 813989885 628353198 349713341 657335261 686116693 582445414 399637095 221909886 566742143 340044646 645408585 384033232 408971689 736248387 736378113 490194210 232752043 881914974 418870954 686266435 456058964 37167286 949466483 768844472 685856580 28912610 126289459 520308451 158582735 13640230 51106273 588219949 197045842 707509584 524135299 940793277 877799960 876494398 421184231 492560292 11774572 564797811 645437148 276390257 940581578 433545978 998851143 220335132 840452734 993743909 935000947 278428969 54699891 350033036 956853071 776512566 162789404 88618834 550610063 60557692 15706909 887260845 650129749 266273736 132068806 523388251 841485262 567443086 974609849 380363722 668906047 812977610 534124078 104236116 953123552 932810726 889233157 315922101 860033045 361342870 530865334 251867055 779404599 440892278 5853833 150108167 687583810 213386 973116963 275253290 193627760 781146418 14092693 410657047 750871402 921590324 204749092 194074565 813374613 19196860 185805802 167238537 405912263 230141894 757647916 385123677 208742058 87419852 798180907 358784941 966320754 938756071 488818126 595504476 908507304 431434359 231468161 150802729 844655780 703792034 806098663 76268676 686647452 819130917 174397718 769059621 449075469 249513256 422773867 810499342 696178135 436513147 791571277 90565842 866265383 610263504 255625319 612944810 972678319 692885563 274739068 472785684 913949452 306818761 375938905 108712944 445777032 53271924 275811431 478125395 475870319 638530332 980530259 301354303 788748024 702519394 375951015 106421471 40855430 27276391 380819783 501664765 589466962 38570356 443843067 154492481 804743574 967352285 252042398 240317422 959307403 240825604 150743635 85859382 339562615 278351084 678511203 843695099 813886174 38170934 476174941 977352167 824673453 815805156 623961162 605779332 977599051 714798483 909838425 440294261 167642782 789388976 316139381 131479013 84115159 816385631 506556099 857441246 460655981 121637411 671910790 143047716 813726058 143140636 667066669 732809168 377267842 378170206 457376268 751658395 87542028 477898417 312568783 921240500 538869130 237998763 187273372 287044234 602209240 69812882 699115250 308187130 602158756 620679792 832909144 194803362 972030223 734017072 155320313 365186219 641162115 207641330 15726135 329449169 473190258 22273965 119076990 79583890 247951342 718524485 238567030 941611338 734924526 741771013 638103901 879117975 405019615 852853851 234413048 897754383 452898996 462132525 371483118 672022937 133664439 708123947 528806254 979930871 217635491 805934293 559774546 947307523 900994174 10525020 14790206 830596696 525450595 194179924 196666890 933441364 190228156 199579383 248622576 475378713 599278642 123045605 289863613 663246412 304338129 334286827 709443924 307006658 259860677 390237267 718039949 617544502 860868364 156011910 660178221 906644324 705731757 134600894 186733047 236309294 349909538 923100700 307225031 784506028 911984014 938034697 982961030 428840382 665726508 292481314 764182909 315676971 465760779 768307242 56312209 685565811 510808165 391099064 899153176 936159899 355068546 542690903 421186664 927125562 180541992 531216390 165715796 834791278 896056284 377406615 329197264 144812051 519347657 195872932 117631469 480988566 864264918 128961946 658382061 344806677 465637820 39166232 371784261 905742443 669682123 79134225 618288082 328481498 316835540 746383066 421926159 375862692 37021867 596560197 475777915 568913014 275790355 294019467 957914525 916806731 84033290 913884379 106257171 78333134 184244164 900646778 390108234 259474283 608373967 523091507 681240919 690819286 71348270 240386207 821204386 338438195 642907363 508819629 504871246 996113292 496100393 332927661 726725936 318858263 294076572 390596028 521832321 277373913 199009162 51368467 183573418 390924482 320428564 396714937 938414905 157112927 118078482 739633868 473410251 241427684 916894721 701897071 27358933 273754460 965630679 207109310 842345364 889375960 320479681 137844560 293912853 280617966 310771845 385988773 268593722 740212048 983849639 618855278 513361609 923689508 264034944 350425200 118790950 635092387 313281560 621822089 863096002 907847333 978018387 372023141 974915059 497045967 768445486 315135065 725491213 894652853 671298964 682777856 556040507 421058635 57633892 993704267 320176605 684349749 970362934 329644157 333353432 775331890 469886727 998524062 777007385 742251641 946372822 773970267 481817800 643638284 379601525 718396626 306336645 180600097 486272779 973337165 305652763 715025863 185551940 441792589 546635810 108009433 22566750 153949239 846533163 141135645 527494955 271958756 153734984 515287369 570026437 827732828 170436433 851929625 375020491 719469794 595915765 371623907 645389891 77112110 87199736 870600670 282156622 106584636 458205954 355179004 54970033 443289895 528948987 587622171 404417256 27761364 740429077 355792573 817270096 622433326 145351172 193734978 209322062 693069738 404524984 574779237 456353060 115040740 898836175 147568681 198584683 933856392 696840643 740871186 642800964 825735720 28012229 415424176 346174990 932280934 531770890 831144312 716479267 975630931 137892004 177772329 543833712 160906911 138998533 200471659 955635360 357042389 144626943 267110835 57669904 133575909 124156522 40314343 353765545 440512835 501550290 303913250 698731117 633615984 354412596 822289885 414494377 238659807 809535455 188482933 64303834 267107538 454678263 47353993 300899635 740120057 11447591 683260799 400229817 482997569 915842389 621712158 578748876 302941493 803578253 944696861 997043987 273748150 321488873 826497478 129471971 578003889 178842758 88736587 503298071 771089861 424581615 286910809 888534798 14015277 836218713 82372471 630807370 885518359 413978235 77327633 582262075 596504098 655899676 497123243 952649519 597192939 642872341 182030793 576592407 597171665 585887365 932452258 856874849 915455604 337352558 964709812 615620147 632762017 67191314 527980539 598752588 17819128 947912825 516331348 983271940 953312263 313483828 332344166 603573336 429874153 701929725 45271192 346233893 807399039 920850578 441444007 660034378 736904532 80674250 383558131 322544483 739276522 536341599 214099650 941851575 155161015 827193837 270911630 163776445 342719782 317114047 233549238 644851226 337909715 62402328 448983426 703513042 132724608 280402628 687458070 947502711 712800259 208315084 513030542 102036805 686065785 58047894 783010823 786354769 179129714 54120844 350872990 18180701 717608399 93194916 17029351 367542483 384713098 352372988 610774357 403673284 81129858 560321073 829777485 953601985 866264885 679333099 426786813 69724903 155152444 837197070 701935618 927808413 388583256 86227754 355073494 865604079 462563026 290004738 581189375 98252140 268500692 190960015 842345350 811648115 708588134 55080838 213899235 722281858 405392150 262216866 241733092 912090125 635874584 165820131 22122927 893984281 293194613 398063977 159492903 976038243 398039597 11426318 381091561 688987811 898698909 584185330 250698425 513272837 680002260 235007395 56831230 495048898 352247125 719705512 990909454 141438525 746472983 27759989 579368278 176103694 664661946 284650348 36300429 628392303 39266260 942482778 998354161 714312190 409395035 643758422 720372938 968297391 225516052 63167041 673693304 206045063 393219834 939509093 898518222 36781199 312452218 315992853 898476813 97634617 740524267 887269076 190778975 868451981 630682820 251219359 889050613 665520956 463770889 965495811 486612065 357688144 948508635 51877040 37430257 811185754 751242347 424665291 507719815 912323507 829343469 19622049 586422950 218640824 377399949 309842878 864014608 204316623 365085899 228457380 885205598 257277747 310340235 97715160 330451862 638373544 160041007 990645800 50823733 724748670 321799061 490232263 467862788 185301627 832042239 78459772 623591608 57670592 329364815 169446816 639508716 274222121 622418446 22485971 743814315 629592999 782123635 337074195 354742879 222586269 325719300 448262235 202695660 523810622 268160980 245997923 209289708 933863890 960918845 213064370 465632042 650120823 518966609 102198618 31123879 37113619 282320712 881299902 268723986 924252834 383335351 864830672 600423639 63772376 912298287 822194639 575453715 564936514 24528257 858281593 627305263 205322527 280288314 612324083 897539923 456837975 13887771 399651839 294614864 843276324 701712040 930491459 794379167 732624655 493215268 553799718 571556060 389027107 604585545 695206801 639713940 73662397 639996178 265830221 240970557 84095883 132760792 35477332 788066053 218334312 625271149 983756421 384016257 211136676 373051926 92446827 79215529 226531676 285914650 13193551 274808575 33291693 825206462 637911866 533677303 527065791 873345462 289974191 167626956 807063736 300456766 226301993 978004086 13125731 364784068 595575555 127243632 858695434 420372491 918177635 995804190 203953348 661221023 763545893 880340676 268759238 326065658 804215829 34222338 817259615 269140692 429575315 314173892 289890482 838067298 939004140 89690723 395320390 435721402 293184452 833895181 242477504 168731734 508043433 478755010 254821979 130508399 896192569 422258325 684966998 978400341 552942213 94459752 327018739 510322382 13813035 458125947 379978930 399785534 407035623 210900179 280251148 908194389 561944798 977848160 839960480 809597216 349157512 220966730 293932842 269892372 836218703 298494255 375736101 151400335 540614070 745982800 63455783 152030489 668842793 746694602 616295267 718989503 533975576 9066282 558312933 835328591 827021607 666985872 685554060 997365486 145942186 506620907 687295445 176891009 929498555 198625964 771157625 733207710 123032952 347622154 364071567 291132246 476047460 451652222 112317796 748677753 742922016 283155813 46420373 380758140 227631865 695453768 243064335 677240021 75507561 877425613 507796260 553463141 543437629 221727047 503815037 730160800 292545128 130549455 905563061 260735426 857813549 220558897 519643751 250093129 979019238 249908339 706886688 345759333 164547205 602238745 172574908 93603913 911656478 355762199 755573277 878827082 66681126 199390344 838729722 839533419 623884865 519619604 332149043 478939442 45279920 31050137 413755987 902873780 641919618 514589413 711953632 586201298 418912863 527739942 87476643 13656101 881448160 771882111 329864098 795075456 535460039 774635295 594405336 800986422 321965279 409259634 535888748 792356201 197132605 272194224 833736435 48583427 715147369 441783323 244323832 95718654 19043597 679403499 278615685 64686332 551750616 888631932 121330914 136995158 708841670 282996871 532594474 617309656 165607224 542525413 538252410 172850037 147306639 453866038 519996927 255418057 952369099 754274675 551479386 274985029 486169230 84151216 642277288 461515876 709572691 119846214 286464293 393604416 560896450 316309676 820692367 375664119 220544624 584488310 763183242 504543579 102239608 179794122 708306175 773947268 144472055 362208702 797282428 289244308 244881458 283905508 429520335 299714707 321989060 436330689 925008050 971376883 137894261 32665234 418255303 584494909 244475265 311758044 460952955 901581439 778887528 988426204 851219821 576672448 223702274 478815693 425859225 432027953 12191921 484204427 893584529 617885044 793890697 829860806 343631720 77147466 900515837 761684817 507585801 558973211 149634687 92730875 268995889 875770535 896968764 463849711 619779297 137342097 104173802 849932439 248013223 976799968 919652153 182185228 187331238 936475919 21111344 316049518 149643265 830262922 95625558 489900094 83142461 195441100 446539683 829822473 540330811 423671351 11821032 817576911 681847741 703637886 721241802 316378745 902208547 449133616 857957751 200005601 799411498 724825347 939147224 966586152 19707443 663849200 774449010 207523713 146910868 744614830 163858919 945150164 225519799 512875974 955361488 392179072 155292517 614083457 77110266 170879047 399151595 354643751 620592771 419312536 334284040 152239842 766058258 619207998 527501439 669589035 339891286 274405137 497182525 343386579 827245387 177438966 299288129 4294344 380632498 224365640 858294673 302987896 50325390 622638813 616301793 792171911 965090078 190406688 959330684 759991099 720551862 259898983 984499303 834276276 420036616 68069054 188748278 267075053 378767261 548259487 3968973 913052063 344713033 117549892 735954209 407977012 14110724 556520612 690524927 847302041 900428379 926891937 967774360 821098959 291545273 717132754 641027366 371655931 477264045 70668157 777326059 573012543 802596618 719934168 52932166 433635637 111004959 9533957 183637937 137993974 593134409 412187718 995501683 631789195 691194730 222874557 463495088 691798492 68520803 333903678 66152983 18826752 877097082 322838231 149834585 98720110 332257513 784480727 686731424 233238746 146545071 63774927 208795084 194772327 319486496 958692068 809926573 598318898 211240423 614159954 800499379 970668891 144925716 335413319 94367694 766621223 497831866 281327792 842007888 3472986 397219231 682203739 448118689 893008715 228687503 516109256 423730265 812643893 808751898 727323874 347373390 881402591 208183797 570584494 97647919 785057588 546338526 363421530 800662941 581579512 358186478 726364839 438397427 650423079 373749626 927667513 127613073 596536523 270650001 854333526 40972497 125819183 283229681 929432797 910318136 589976878 703548927 19309421 35221678 783127455 180520113 395826699 835893440 494700998 596320133 568506426 412025274 618656883 598984381 345431960 716706221 580068068 270676379 573579908 749330474 57745492 529302010 777311625 380911192 116444037 732949643 360103612 728207748 865324084 733373190 871658646 314950260 359764457 542458225 23495414 324541081 802381010 447793301 481543539 74245774 409254866 243701911 480101036 9713879 984433844 173802398 991179165 848936705 304813190 924943003 644233694 200804641 443900956 635472197 512859521 987235344 356480139 458839570 33535108 479375460 700743538 639562189 994436329 723808229 554192327 64786383 801519473 645708415 599961441 370033231 876471283 110672546 881429922 369146612 255434368 577257403 730994233 269565662 733985599 13569194 75226466 638686273 807466554 303050902 757865428 283434650 214973395 222830283 497038629 986282591 949493848 314017334 240383464 858099422 999074910 330534083 46198289 947630083 961952063 284624360 626550334 905638536 231808500 975709202 789348141 853384370 500983973 955100125 347977262 554816247 758820179 472544723 905080821 105326871 709422558 707036306 655917316 516061189 773350685 325028193 587205387 868761938 202046216 47081591 390515070 230157396 109650468 724463253 559924714 768145565 290179262 74783002 470105529 559283669 257868806 686007023 464661156 814528134 718694848 626655000 662482045 41747887 103325106 523705593 579209067 393884462 921886339 19792802 653042928 892640325 175616681 773571665 704033347 856770501 661472637 861756751 535087465 96688228 888274244 500327021 360904240 451096770 66723734 863463913 85239869 991211773 18644655 553227190 250542618 355296745 486082813 840689084 618150816 982043914 456981567 594238820 941165134 125696335 25804046 484777910 963242321 913202440 402812981 18126060 850215119 17975551 869357056 934786501 441023406 65662479 800854085 914178685 188321454 200913304 56880562 736619439 866746365 122079724 437070564 959906434 880074194 548650964 905431922 217969544 538377638 83023877 324756741 406895160 441142389 574158588 390412315 129591468 403620203 846116053 342668104 7784595 84179767 544938603 266207497 891103295 61991065 726836857 113149793 716432759 989311997 661988820 126815304 670178291 337500803 909979703 128773028 678326842 509230517 265750662 215859963 644781636 847194280 763225202 563153915 223645674 339021630 342327967 903894376 877890587 973052543 972199186 950192804 27324344 227571646 502233540 217809179 184682166 85454508 448709742 474973298 538785340 543011501 220558385 776714995 670781020 219596011 911585012 258746712 498029345 700236330 585620053 772915644 556937977 689530960 997250197 720162356 638726827 261259061 862895068 293415853 640253569 366031107 910014975 601678669 836161617 288928954 695531040 352435793 302131754 795282598 373698060 709160770 548334310 786435737 208417769 821912024 573648641 915351191 863442577 757746980 136258038 159473053 446912083 617791946 103494213 111574356 777578374 150227948 538599312 610806052 173731823 724824549 836230394 370297886 111857679 17088040 654405413 749669234 256603547 408213566 991274095 281697241 169790386 42578526 141635304 842448959 853324710 363716472 173944909 567554960 38976258 373100551 995547411 107646028 871608215 456401152 556393328 162466815 766554876 671161981 763498738 911592501 641240343 64561567 181150274 587894631 855342251 110135333 223658522 359891895 94620469 402235970 33054003 245702080 870296899 397415214 1180512 962317924 412594035 1713856 189881294 648316707 743342139 255564396 241691860 271248663 628634776 462092345 656403952 871826506 768549866 748670620 692971877 241317113 675046505 781260480 110034422 944248498 672769012 272982929 613934495 585287014 716931287 143553626 718938198 149826286 885810027 339225844 359366204 77602452 257339339 99549377 818960424 745209442 452130673 507106282 824203675 594664705 912808188 984569284 616792557 867748484 818908205 803881348 183647982 24234448 209090394 27771495 492772125 196189152 331378677 364551891 594576279 979067555 719626666 981742960 8116542 634834693 878904549 80812023 549291075 776673755 141893739 351715072 124813082 298793859 948729182 944445710 574867158 563509467 426847568 963542198 12790649 591993957 266967473 769437642 83987785 922378679 139662752 120841200 806952142 600797314 726214477 490728858 819459655 55439084 385300441 254873578 951546141 730102848 727374227 975430014 4741142 687257678 851469865 995596185 583421690 239184252 223437950 31927919 497449149 891924497 3753370 513349606 25503137 26117039 292757624 31966473 451656415 427704408 456935860 304396524 951620116 869806155 842148027 550877445 199647515 839352336 243354785 431234211 796264902 468912113 406204883 820903169 984230491 779104176 902328961 781905252 125797031 937695480 648232076 1705072 882153603 44177012 37185327 89277529 107395127 490694240 139378824 61519527 232498222 674210616 363483649 308540888 857870742 913075662 462541921 43457421 797326386 260468673 853541634 5657147 264826732 47754165 452727313 768637160 355864544 412061832 392599678 730432026 885931715 696662169 902472943 909200840 495130532 156398659 460167449 202117893 53628175 574591278 921980243 682339014 593233493 472526463 452900123 764503130 226350496 572887776 552563268 79796520 638390363 922970915 339331176 143533467 410671092 322523441 792270300 778306647 627907748 747584771 982762401 776545165 607932692 756302937 359600149 674505025 118342698 842937510 42749670 177798518 642999296 563566538 824604286 826924566 227783667 274112655 488789155 814457481 135724848 41408344 784699757 509548414 448200503 960190682 286464216 872209856 951963761 30390707 726063974 761297026 527125780 903800008 554882032 778866178 200972885 775059754 67509241 263721731 435264522 882129642 726372597 52899909 47377327 76625355 834352524 902435467 806431611 935507668 566671007 188418424 514851725 519192059 105238333 56995574 190001809 627164292 171791415 903728325 759481595 543683672 135202025 810474858 328825129 78153454 94064258 746292517 769248110 334983874 356348725 575164472 10339771 787100712 804987565 835564252 37654272 47634013 53110406 407864095 861614075 260155004 916913996 264401379 939628785 191058313 335101532 995112024 617769147 505565615 1895469 951195696 803274068 173244870 616433030 368634824 415881698 748293551 123117292 63664933 71970667 7374267 73087649 934507125 958955944 802221850 343433538 530891944 902248804 260454428 982785510 764918493 101622175 338237195 416348383 390124614 123313476 574747652 542190924 394728189 941592368 719856802 972326067 575620865 824394057 593846306 605376810 870291406 199025985 97415367 195005978 828679213 519480761 468141193 52092822 783840184 271073895 657394456 566240022 942711969 423880020 943283973 754066941 287289454 241852431 59789987 20205390 323496748 537388752 147649718 508272589 687453850 938263534 362843283 784198045 442561956 723315384 32476383 784615402 726575762 911706935 556017224 347607122 438698956 630512967 971196606 318648938 820615037 617394478 631871287 767059059 181740376 247789120 504497316 87793157 752472151 832231283 797907592 788535968 787897087 912596526 521976665 877230097 205052941 670452265 794207219 478970633 399707091 931949605 29222380 409145166 234145398 150584164 990906163 156048041 174800244 357111208 292701247 318780126 828641414 135390242 480294293 595283985 125894075 786612490 615825048 680709436 922109023 476412524 593060003 523261252 209681514 487323892 325798607 572651056 827582930 637762031 993492806 118393591 779454911 66790948 795001790 155041516 818537448 186029026 137303667 682937374 983240757 800539685 423366350 698646297 457057016 732743231 100512131 577531855 755895974 415101167 20283413 385791211 778578525 709935356 654989692 189862286 473076135 590349115 193683531 433720832 75769399 856920393 591257108 398933870 763144544 937768796 879855208 340059747 177601896 978845068 536580650 54023636 708307907 821263913 533853509 337522957 907954918 954918552 26282112 280099017 71264110 459711432 980264868 376429848 211617681 71408034 230391862 285403602 672455590 577079106 38440603 335966455 943107281 238625762 458679289 395183855 317596372 696487308 415954941 276756748 129180755 292846358 963451211 229812011 327324119 172409853 26038797 460126631 163941853 129601007 101228197 287563081 763648794 494243867 441108838 137594910 360133861 369868686 880644553 268691346 449823415 573917823 898484279 298499992 421371314 563882385 366612383 173933963 674292700 836841165 841929317 469175767 376287282 988663366 395849009 908952314 810220571 955127147 551830415 582899354 51198070 269612136 71318769 264819920 296996266 8221641 80274957 677639560 884430039 404955362 975161246 523043321 45528886 129569548 322220818 44802857 901520333 249193488 500702113 701911188 776412351 924464198 465352552 259858046 66057466 627168097 356811494 436163234 851981554 960169368 923063307 104744041 864176131 579803588 820262959 664089338 912357482 185083869 920873913 375860635 15127459 824858418 440019358 462236495 166333998 519494622 603089263 695075623 116327547 63792357 226996007 765949621 595409232 355198993 711734073 222255496 777408313 794076711 432787609 124145520 699887813 367632650 438671459 432255585 607049805 18722686 941224872 703066130 824377090 511802603 498003595 670061342 157267918 667716410 940843174 268121646 994049751 741194654 139437740 704420409 50579217 200223078 896683843 610619752 938524487 678229848 733868393 906769343 613172782 141038805 201411920 140196957 65071636 721071273 531169649 349961378 271451984 369259303 869447024 846670578 263947610 468064512 182685825 904773994 507025606 391916467 396046853 95064761 449989846 393281288 552376891 637643637 211536183 114107943 984863517 869742812 627860627 183704768 8424438 854350765 988121246 153725083 526211109 946692230 640780681 827024050 689262523 653173887 474208010 907997226 156466742 145216423 577595003 162388596 289119950 573096098 889686529 955427896 312178259 233195570 978846194 77462251 24981136 181348287 165652638 672698861 457539332 273135975 892727225 851382348 684281882 485211327 142401648 298681665 826247726 358492687 580614467 119327959 591281837 536547541 464898071 629672525 394524717 626666036 356882063 334138369 103274965 390948752 323218027 123560923 452426555 124175349 642372069 152996822 937313262 523149520 857428051 929564493 248794716 461956297 582396412 396041082 293282976 426483805 528643569 526323539 274031560 284716189 989524788 715780194 135282340 363447334 394108881 199237816 999290697 222655833 576011504 841774104 843081697 916466984 892365730 562650560 240719392 73917731 410763445 100688276 688396108 892839595 180466649 602016191 874711643 322813728 7250977 701605368 31117968 23419300 516414112 480220279 705823473 110711625 192235365 240162826 633078186 491399494 655022632 544721438 451601360 358629904 658634229 434738669 988306416 553555710 202166140 392735981 283393327 471787856 6309249 686371018 426842220 631680928 621346173 732375655 326422774 99154702 430915843 31020995 232991188 273462254 707780727 922832624 374806076 293373271 924933190 951796156 687869264 657433313 130967308 750921186 328426057 330725748 114466866 961758367 500253709 125366876 203974567 663039923 609465458 86121585 220724848 965098185 764496216 723719880 809542353 251051326 846819699 553342209 420564048 507309714 801192709 738138181 964723199 593301858 219410416 184510576 818894437 588427635 840900548 605361569 422198208 135016934 49664196 660937847 259133668 480042837 183934680 908408369 128224647 186690139 281778591 589054575 592271762 125868362 954495211 398295797 4552908 833953278 455035670 984902480 287740466 370769088 810162933 373590935 691434514 30149061 50514673 192267035 584351780 737249510 437661026 218582474 330270276 502140221 168392902 401067533 866172477 835887931 738482414 679551757 782961746 876544683 117689939 931427665 979374265 106765085 495746854 66440334 763963164 682427491 159606588 684757414 317937991 871979824 455291492 540541089 370322482 312482573 981893802 498376460 878726420 220273057 865810555 622060877 488349845 388541285 709633222 544386445 741332807 383109242 316528282 214369722 483183779 861026745 925872597 872369399 517584857 971932742 800229239 822808232 903816302 977136926 248831955 531566949 90473578 851682497 283749389 93020760 718785859 296950322 783823900 919460984 616285383 257115070 382204707 534164662 857954405 258436527 483596104 320998802 120332954 1955777 602068682 757531841 797863104 313331980 740439177 657297057 40394427 37230700 982686537 705466648 222002320 545104183 6177816 603906558 993529749 223776645 68038973 143603283 510274195 423178652 249421622 935388975 534134352 519149798 490041932 774012202 930763862 764432106 382612779 489840589 287598226 377838631 945655887 576408803 871241512 589235258 376157165 308573821 973205319 337523792 645674214 312731795 338696699 647220581 335538234 454044073 265614634 586659225 42524974 854272784 370974561 271809500 851507328 481289472 454620756 669430093 417751789 329710186 952380870 174661865 456369956 998399960 666923974 124561646 855555145 698259570 497332199 19970863 365462469 473757850 291888034 60824782 969292434 920624419 537484220 882633152 842852312 311324496 719028695 680585467 646432419 245618118 460958201 839554439 325971200 141472883 611566146 274222678 848242092 764549661 424661621 652730693 843383320 239346202 752879411 268792683 798681993 927775676 990044720 212754309 760142753 355845061 8660803 348801665 674412787 322351205 982764521 346911336 924461230 346912599 359696597 226816498 293207422 835571835 157587385 689716433 545020290 956349049 307014091 334918448 633873981 681907963 526971511 319159527 85265677 517501883 822558432 169653671 446546338 340898736 39751486 640164295 797864864 63133871 130830283 567537862 629396014 245780428 470121335 286056631 546048103 990149274 404654967 667520072 38592097 920360139 417478759 502721430 759426350 717740049 927628195 644100256 936936156 849844914 453141811 923757908 26785510 450853318 219894520 444291114 25991058 699634142 414591752 576932000 51015617 14866964 988645490 401974526 533780062 398862262 495936836 988048957 259575735 854076247 292759907 485930694 885488741 39064125 752074614 442970921 683766233 553618342 665965521 871063924 970392515 6448287 291753460 824007915 809088909 542934162 329840496 278764684 739380760 314322794 554133677 742455007 244005504 559669996 732288677 330376074 792848789 695727723 854198319 801533185 36103058 511729943 886240165 92380044 563962444 370793788 843571839 956491448 954878555 480002867 466181607 152107249 770024432 42233126 495909621 481093253 912637542 450921573 969326325 658941080 830128626 689515268 245834880 716988680 828084403 757148080 497658341 392588596 89440619 909305305 704334434 644493604 811401314 430230879 293390729 232955528 19659843 274954118 190509412 266035484 30753111 792985264 891982414 604881660 715792042 26122159 601656346 120624009 618119751 787334497 110898221 980761321 375928901 419103462 77237359 642321146 643908081 605879429 294472104 529673351 163125933 551692663 628017361 592616578 244294768 884277100 63914742 750947200 223197400 988678920 715137187 949569430 513121127 121657345 576304826 980523784 911794374 233189922 775487714 600807769 449202073 497328999 409885738 581984386 443800490 821329436 184097900 117551206 75629807 763010748 848328686 854368845 517169728 782951124 330142502 983144317 542754173 356192969 215782431 942926028 527082015 957880696 647253047 122111649 134329580 449394548 412751044 291310055 53239544 700554088 759369792 623452669 383418610 749509328 104370870 283898565 396751453 413721021 6968145 315295035 474738441 168912049 361981165 171938900 959726866 165282151 460281336 821836700 943552912 756704547 381860891 309703235 111444080 568864802 667345165 890689544 225629162 318053533 251363216 311668597 170936758 164668323 715314562 540691005 279099838 915763186 721581995 676254950 93537945 132383031 539753856 454502075 486513467 513949416 829035559 61923136 770946265 308345987 692364296 951921885 284435785 371348114 586106098 163996689 826220234 566846914 399681287 95917411 563921653 11066190 385314541 670206318 471077159 808134585 489436028 930053238 911901755 579771549 413043707 243235886 875162828 141481165 383335469 538281754 238576338 554554651 636454416 706262283 404442088 178189444 767601474 529134526 441205835 803091268 784436670 801463024 448671842 19053071 45737882 123938763 138696509 434075307 134770698 194023125 485812380 775133928 38995223 792623406 114222761 964263471 376278396 199245448 311566021 574002899 745259327 136493596 786776218 518399408 869604153 441305203 893391879 822256311 142063529 326982867 25414303 358009898 511624534 479555329 757730493 515580677 248607460 321976759 206467433 649658394 201779783 824299906 758060768 574417004 445476966 204091631 406062799 306748043 714721027 188670801 31352396 5245315 454176328 159291681 417637714 508739600 952393593 812597225 526330141 136440661 914632781 310499404 667068249 656972214 423908596 643793208 821940085 207611017 951045730 639904634 947980022 813977110 3318497 794142027 856238802 220352977 948321769 716832848 393288813 460676705 932258851 142880571 698671928 99577404 258315692 11488164 491790344 495206145 884872887 99813759 722349892 690764019 404855447 41378777 202999023 538524384 490515529 166173881 74624040 788746189 203470817 954689347 297690404 738397368 594680792 807358424 791214873 339063796 360381693 285719817 459742888 564638331 153454883 783244915 568317610 69984030 366603449 745818320 503030702 356880739 679696047 808098085 865607030 329329060 441422758 580014785 950190242 758105963 946055611 950119872 563027488 702743669 36784708 379252171 730845462 690548906 245181439 720318021 153238258 903896271 729584211 517369374 927156426 469041131 235930443 403224856 634291893 325347682 311345495 366089823 681873147 175977801 967336377 303932267 697959609 902002734 177705138 837625666 664133181 465410961 343594604 614844808 48618560 895346237 16149386 692185598 323850796 170979556 110544510 202167017 869435872 163077487 209175387 215917351 909052166 914598699 660929180 454725984 320204581 627720983 236780555 993812633 816531941 715764457 505769023 945353034 589119655 746142801 284542127 1342154 560357947 412408475 106255141 608359159 147996276 778809187 496784627 535531004 849988056 544567179 549334887 993092122 594233606 381199868 412508566 937244218 364090652 771719145 921178827 477270253 827984114 651603857 670077522 614284986 556187563 148676080 752909888 485558491 771597660 303267718 786366643 498993806 56846699 610224872 21169563 640080940 828185609 941353568 432004902 936721987 600875640 95228087 904509627 78997327 947670713 737395444 825519939 58861589 532483766 354684566 311680537 889584492 942937291 399222155 352633619 968071648 590474482 398823748 583480782 989404293 328428657 559285893 528712567 948934135 703223088 12616076 830610714 13148726 869209090 42632648 508010175 301944539 970557411 381363632 282168853 979206182 876913108 802803639 247552014 186763466 915404248 544378366 493841858 577926861 636771743 988091290 726139533 98499685 152765233 928093743 756818756 455581133 628465019 55376384 175872601 679305783 96518498 168092826 959208330 458395551 990287470 471482540 708723993 68185896 618796539 868118506 517951974 170681648 346620013 139035398 265300335 952133116 692994427 240809184 850613933 701834641 345913845 899761292 146652787 893402305 957378404 695660642 569755893 589094824 67155636 277731502 329418840 173927047 869056543 557113152 844907 514116067 796013603 197295760 801569956 482793961 98514751 631323451 647304943 751082349 22231605 223590655 457255181 737010350 48022657 726674934 650191645 268486010 88638072 895240972 991781928 502026053 329830115 98942570 72057280 699366799 932642376 903807435 742441606 848284906 305740098 279869972 885485062 428972824 12426216 769752278 622576133 997893426 68042619 974529647 640536080 451745930 264766535 897667821 933869767 324867299 950468721 406270507 334320645 505871784 808371842 773857406 484064884 900289651 407912853 886709252 244934164 309814853 573851021 408870642 857527161 278315441 343987073 374784380 866522633 751339858 332244579 413744501 465839696 697123854 692237493 564357801 346694194 349007800 560670771 380759954 733004813 277012401 643058074 483816296 649654676 396108093 932108591 373237415 939641236 347356629 789761980 3627517 442768121 107317420 54136755 507568240 731374738 784046276 709355192 82932910 355797813 810074967 880561132 934251443 509690075 939326291 587950743 344371718 922163850 426245955 796255851 2948098 522383034 456990748 29013007 303793450 322143275 936931040 443746516 589459905 698728352 954156091 733038680 771816537 77042632 847384869 262584168 352265598 333225338 819311781 186097629 51559110 409472300 811534911 367243837 901375880 962588763 209737151 225529444 414845049 969767122 845088562 289804839 290362369 799626139 387840642 791313234 166962510 804113776 73591463 325992718 490687429 123675259 695692568 947670690 772255603 721351000 726296585 159465284 478487844 219926603 42449860 866054778 260823427 772045882 822238733 29213548 265376349 297328091 608770854 803323632 72927366 801175791 175361938 427449845 579147323 222261838 560870946 427868544 491383600 168364645 724264822 672736240 727748970 712521806 777586626 887860206 771728330 890504763 203664214 457199298 86909070 125046794 770955560 29571969 74255232 959145177 119704342 575054305 118076981 644159882 332858996 674263612 175240414 685749083 339347096 523899477 719894456 264640477 206889832 277106474 435106038 79538130 72877670 29699933 713189817 336819552 844121997 838006849 793236543 42816468 710211764 248864425 405274849 174284367 94729328 175025915 617657709 725003707 880525993 728502147 320084002 470650603 785367328 686457576 839076666 485579146 434198488 400170981 932578436 235622295 321639790 283525523 753559693 739633072 446108016 727100802 561815911 783508801 401105418 70731084 752578630 626727041 425506932 592248003 538142799 711248352 329141376 858388013 292215416 512263335 361759756 211360840 34588575 986859328 616542498 575735912 474125825 595797371 62166795 208050290 984862913 807704309 199184688 468630854 195528287 418200765 576689119 613087839 686415556 165291847 273917792 800731113 660815246 334545998 695783994 250412090 806790115 899604351 244720169 793535725 523744884 576925925 168052257 182259390 70359042 627210485 630525021 427971418 977061311 455182267 559297812 132635686 401445528 313942181 979476843 300839053 20155779 755100716 619344018 586042889 908970248 865306330 189726574 297063792 488857733 836112918 177764040 414935988 979968180 634623907 885924689 597403878 58764715 511111688 900992485 671725926 427419834 250069094 56630590 794642841 854148196 79974627 62424187 922266269 56803956 160813919 626211182 604617900 190586827 679506842 10313835 263137012 362864993 445151457 467823714 557338873 484398795 178104849 693666001 472157126 9735692 599206489 238728829 454361399 134480011 692564514 356064233 18837536 808790022 736626778 720985787 186750085 78822178 650149159 946777784 125361313 307793515 471891230 455385094 172520543 785057946 202840303 919522752 344675251 196702158 122859743 318425737 632731367 55010314 777324588 221662334 132313395 654902596 782964257 578916655 946411885 534316447 411917618 470864664 239071692 78984364 391633284 472777888 268035959 314533289 381425292 670787294 912687698 413264956 9807397 517599842 697921666 667411767 978229887 788923239 270330732 844016903 680600836 34077675 271217336 800577678 212003670 774816860 218904605 207583474 882315244 132980482 978360215 237615800 272146052 899916200 260374920 286321751 934751210 97148820 111669309 371584428 845850913 727033533 542518164 472475556 386205951 485988357 632766685 769415487 919019731 265373991 31210617 647172065 593371398 729549857 862313214 646835990 936849530 161500548 560840019 629187492 85078983 704702447 817864144 631562012 319711901 920488464 87630413 402811010 610131692 524831788 279194036 54934344 497415394 93023749 434889682 719648226 36856534 389806715 349813977 709199643 304527069 168525445 338503695 24052547 251828275 612084647 147970076 362478119 948284420 992077958 526251217 993712962 792487255 215169809 921121687 99033807 244452061 885552606 660087137 380709998 92483126 727147106 657328967 178875193 304110566 255372032 237141508 665602316 61634510 622031701 992093360 35352410 71290069 46956419 450009650 367554433 727948956 745186432 844879124 782232974 794740030 954028363 90851066 204810298 720521102 195230613 812365342 789356843 36589449 502206710 412423068 50870427 226221167 785398391 937432048 742351912 647919122 868858570 820874165 560239654 186443152 513556041 763482840 800762081 2780730 302800838 115789607 867956106 580294095 632178893 598553554 573357920 690848379 563640681 575459887 851777095 395371492 516207973 113723023 547874537 701405237 811061001 652832322 415147987 850029984 478313358 502126812 277602841 805686284 192180935 722926130 594456186 805821393 959526724 662036313 116445591 261672379 505882206 546521880 860911569 983908177 69238003 859298655 150423340 48178840 63091043 504858078 566822264 363894615 749486071 195149062 838155839 467762822 285842189 1146126 915183230 237049490 511099096 746689517 508856467 125656888 555606205 136686000 581658295 938755407 226159062 477003993 14275005 59532614 192682486 777310243 44219604 756881391 995849448 321496517 715187547 563118320 911351463 968553654 272653070 339258567 531923362 657172325 660555948 335293363 123708135 550224032 494078553 710105427 779740813 361755907 217717241 890544003 170751007 484907065 458962275 37252384 360046381 992995536 446585159 394319004 426909824 216432281 26764676 899304514 751813072 568877848 431297600 561706542 269875708 494384093 446470248 504181229 804672234 841252444 707292544 978443989 622602031 715817486 612168173 201966440 951081736 931085114 98178501 899981253 376254184 758355238 822613040 4040897 869047187 267921011 971513361 803470593 477652756 403304001 187665593 299522919 179376867 584708012 439099021 469138057 322894217 780797558 940539297 28814142 456792987 229570153 368902473 599028993 867788038 869268902 204894040 683600773 834768500 69323210 132239708 866745255 792719670 935157694 816480583 803069015 674322640 594108864 845101049 92239942 116734466 46074233 669554827 124471832 567574231 71740154 44903333 302453656 774322920 829447227 56156119 938776581 862294113 881770491 481414530 555446758 46887485 764071514 655213126 563798570 76019597 39287005 915380760 764887519 52203563 851170643 412411551 450195980 227073163 899238009 350149478 707434611 552138073 463683866 923238122 106847921 457176657 156653034 258304224 213942613 327430899 552152225 76949155 394619333 949513748 516988668 139916862 901635524 285690180 987174803 994108987 622850338 46864176 560841959 807600954 432751172 439067757 231232830 947141930 723091205 995537798 942838427 641638115 379253256 703054113 909026758 174975604 774840397 155894074 959959080 557886485 557877644 410822955 732668110 905489911 686219767 45194653 100420848 731314663 833539845 840837946 795168060 135978194 887560877 248186467 468440353 888394999 104691986 231160882 307428198 972551595 854521088 132662615 307771148 950648526 262080406 23126842 39786008 9655425 667262965 961961420 431105081 261941194 584502846 808596984 736227509 839054636 797692615 565037336 388784483 53343524 482976371 201893374 627956809 829586985 601689111 319849909 331225295 570531074 902369195 238151156 452345811 418747171 560506569 697707506 361810532 936796623 824283109 257086247 55076778 752781184 336357995 544389875 632994501 246735864 877007515 324662614 166444942 257123089 598752243 453763988 128496553 628182082 848801144 217237804 262590934 184581485 22373086 138362252 406309413 173840377 708534188 492579949 601858672 271882677 532585371 43627116 187595503 256853910 915799678 157667005 58469134 431069960 968740671 14438222 781244925 468611074 222992946 612918952 763552980 436988006 51285333 961588514 684754702 819218235 501833437 151896732 733156707 110997872 803251775 361320652 590983932 921640128 492688115 981382603 22678755 783643779 731303087 462992163 650925691 949017026 449673435 584232113 970914386 439590376 652910862 520815610 582904978 859164994 278599707 216848130 781037380 212912494 534819398 272331649 728425512 193313059 802016077 261633210 882651368 427608627 937238683 831654627 935430536 539833180 5661410 769880043 574634093 589543309 395180338 636859255 736941484 83043232 894003311 344893853 875026711 889848162 176202832 465879826 916190764 38067824 573976585 800844084 885509678 42460700 63761615 191731682 497886916 164455514 951364601 698201829 177307151 66776535 993474627 11976871 103239928 221492088 515471337 938950987 687296623 902115374 429891891 935371428 343736185 571736885 604397927 379371539 89562162 212711842 439051073 717571941 845045140 344219907 602041271 692946965 729997188 335878681 794480618 384150027 487671268 814149910 826322226 976533514 983546160 639447366 624598930 757213726 258057099 518005797 94487760 689283075 464943909 351439957 810088945 394018967 938177702 611628674 149655083 324651203 733985724 263748361 572384570 173601777 353770850 93692970 8683312 71065821 517383076 92143966 299484313 62811999 557402286 98766399 91206626 645597882 801255678 941852928 791083066 137672585 888867163 36757800 831247216 884888943 980141518 736909696 737999819 563619984 36128177 309077167 872092619 720294459 265431259 969530509 263468658 86541236 626134220 983259248 92895612 819520359 289522467 562921339 291141112 52183100 485377315 577007988 473764936 435649461 453183912 855140636 304763930 152513772 911669694 606133700 264759128 14628228 547391851 561119650 446424466 264771968 684250604 449951154 225170596 510873409 949702811 463111131 729308228 286425112 155760478 932356712 549535749 266648816 186764641 377876166 650357563 860383801 278595956 351889537 516359268 219430464 396440441 271578422 490443892 951024405 14782487 95168092 130633835 670608165 87327522 499590260 144348387 555953914 898481196 739934504 142276675 454081395 613474442 656266746 342240751 500231000 768240307 911848411 447538232 220984124 992081055 11616263 624695012 170356758 148397868 226715257 616848575 36225130 924409026 54375914 192638434 530812993 106232322 743019402 269296861 997724303 28402753 45280455 493222937 946420643 511998413 319509116 946291823 247416494 917535255 40091773 487059437 473658779 238259828 623835849 784293066 188393758 594357026 578521365 420859044 217215804 940104874 353895424 788224355 589408391 172967521 835413200 478133035 512714181 769080261 316153222 34289135 461935832 925657715 12788126 296947191 721329015 204207102 474393658 884739846 871755664 937072302 979614683 400072305 40237663 109484215 423625685 531253716 316737498 62442019 906899075 989835001 585664592 169942537 740056919 195735689 611288917 946977049 533269588 343599521 496494354 601687422 416545895 186003408 636774838 263025807 779740438 224297662 645047123 698760275 832804260 252082273 581827352 727026408 868941581 780672208 980778004 563789655 968877009 907443875 781716632 556570890 556391651 217146599 808966144 95536774 704366029 853963745 642957723 633412337 692830425 145201178 828802169 932165065 824914721 763439168 985707761 687163285 742229860 669081892 857734263 640234293 375602716 313370392 517228739 163775663 242582817 222466965 28613337 442303642 682506475 533217257 42044266 768601344 546950541 512453772 417659802 922481195 732820265 573061730 79877794 532664119 822828831 497954928 306884792 633303379 500466661 404500043 199974706 9542556 623857987 526706990 501715370 898904041 857306247 700814890 480528062 148633536 63162035 931897163 823289078 186615728 642616203 144309951 225697988 108179611 107562152 747478531 509431342 280965390 565261201 815511631 416038649 846045160 134211459 32606365 790524525 158006741 535444083 951762466 813663742 192960678 663316728 794372905 931882722 808670083 423335582 574432341 527764190 605598714 418470436 562497586 829665521 30839470 407707750 822637386 338571040 860803205 51622126 163840072 855107528 733925787 853805131 676088077 143047479 418563223 583872999 666822370 504104556 366503090 538944217 474809259 258805517 571373270 471482328 86430937 202304907 122963514 747405036 404896167 672554066 528663051 386385227 698986179 593827947 256805196 231247518 490179975 376326255 550842868 133732491 443250749 78004164 936023561 27610921 902215919 231677943 690497428 719774183 273528404 905715821 791683986 392644044 490979527 321816456 523108522 250626616 508253495 470827949 999970782 420907457 581940119 854945993 953921537 88537263 610671924 366242700 230398084 297065752 18529866 878493188 992872447 405651276 706093284 490605576 258059823 889166361 823772703 684311710 170583100 776872572 296665717 126908233 331419413 41327427 7118698 991186753 541049616 973752863 835471639 65141883 281837015 826258387 301664298 651935528 931790173 118174660 209549798 373935630 699015551 643533524 750621119 11346850 918770543 488039981 656508218 552101868 471931577 796390099 949653300 496784401 732831142 308972862 262611513 93678970 80065244 46013634 645291229 767528214 541471224 835467154 587289831 716289529 426366119 796546659 612555048 758925063 924840217 741348031 523942461 476574069 844479904 45220566 568192622 162587511 841595653 282451872 363071330 317085478 695950435 294792503 502428900 353706440 988033118 926015450 130572717 36531139 549570314 641902453 529361214 159756811 105846959 870324051 18785552 770672327 961334795 473117334 394791843 642443357 902065820 332490437 140059422 938640651 359123896 933886329 152866802 51135597 455909369 251593091 897206706 379864863 674714680 708825232 357488761 994153462 179549778 364482868 798833718 702211240 67082001 815951248 623294905 242923520 398334549 642228549 502103135 751187482 891290857 245863245 953549354 804155380 472820543 566954713 221673275 585178077 520312178 767305951 92937316 718837163 872359331 508895068 390952511 621973035 109481077 47029848 480960760 647892146 779898044 4000768 133484366 799986535 790954176 751662985 848858044 424611466 440497808 269285041 875407836 544098756 521828222 596063570 856229061 776199418 674647565 636986856 446227032 405900121 962905396 462176185 647775298 631889086 241379991 341439032 895947448 71559171 150373271 825862821 550671720 584250143 590949022 175905116 379255177 234527285 850727433 362057000 51108808 756644923 94452760 563983685 587214176 734425398 746434519 257131909 563345645 790801618 677021190 846438610 974089622 34487035 498318797 475346223 534358935 596716205 855314545 610856481 22096508 473729028 754213386 811139210 641012524 776334967 929445444 807207889 739100185 59522793 141117861 656260123 398509262 169786246 633712990 392556867 78273771 613708176 857563968 295074199 960077724 364371890 200571381 646281334 194110313 447157309 67940798 24712282 216982511 745958010 904338286 237774513 497510883 493913007 664122789 904882506 839085334 897509493 853975331 128283026 6540625 149642472 790529194 717029356 83079386 457423213 787987114 758575247 236203970 732094688 889680611 939020308 454661231 532659306 680603144 306978349 27837708 412180641 75433734 853995933 332578106 249567238 296726766 12780116 187693256 756118941 859626992 509122815 502531721 608504220 320415699 261624167 509407591 693923220 375979709 430409489 812101782 330911404 433899461 742854836 897176766 245841645 546429969 708478143 675036484 142627015 616822704 680477682 94370356 829530758 44690985 78677134 451417126 181353852 871227239 227456181 372882227 408322290 935999855 949039064 324015821 731616687 178178855 785210037 494050939 509229193 270358379 309080802 806334973 407159673 504083676 668848050 348400609 132104993 594656812 739126728 112461494 35788899 352961296 969542261 451203428 142655537 717835652 249408267 756352410 953546181 63431418 514352303 181887960 910360404 532455272 429635125 98600255 64443406 296214000 192244935 451538552 916443636 306307892 36016902 268631267 161664295 990800804 125846026 191322076 486392198 372583730 555179693 829995009 789775040 735519454 284075673 150201507 266042387 387007996 235644921 455177699 750351614 174295348 448057868 331340750 598760749 640039967 845079833 4396225 112175584 706687656 940106952 928533819 866275158 560213333 834448694 250425992 25512912 9008665 906282219 633348234 850189670 682527616 706929532 194531617 900248786 935824023 373100575 547623203 683403050 150198886 594034498 566769851 145679584 39396849 154716751 881261824 719020210 95084768 420137736 173892068 240360837 2594113 365691605 298825657 687122471 222525536 992868799 524557030 532051700 887447946 113137620 944590546 440925136 444684944 87474992 267472982 440637060 97205950 434748655 927026653 398597728 600456031 368097554 313893740 769852109 326877074 107361970 847179734 238704890 306123249 762686712 139161238 748768701 638235512 430681691 979523957 520108918 188543463 561102431 538564329 109888032 386192946 784858640 997226543 325888861 25892236 578779713 549711610 109787417 46986234 837914573 68962110 678772339 399935583 572953639 132668851 86543873 881244099 770937758 972416267 678425182 102036818 820995561 360146456 76715282 662101013 398878767 171478051 831547254 862260219 869002161 84987153 24005539 810054387 490603266 442496519 447409111 673385823 364720614 294582124 546950711 641504744 369958220 445713531 393512805 734724458 173654968 234915318 393847927 747993415 956327370 259965410 890550209 435066846 267258269 460493563 667119424 472843622 508424544 267056208 720843819 467983393 53838109 386120316 381957506 542341259 146174210 624858308 60065615 809203821 955144036 189103235 760003653 489378424 298810398 234106976 671712799 796338697 685160098 189074262 374083201 628081356 586905337 943368156 501391988 458912493 600410154 305781935 510414438 758754873 205181411 57535474 112537839 544679004 653483561 64695363 541288729 238268387 720609245 64879727 28408830 646933058 645223618 288121107 830025956 281866005 581088277 856955432 810282183 705536078 96792923 787630136 481321346 944100557 617464536 854025311 74078208 5784895 990577014 605308418 398504918 745239546 511751268 680789843 669011735 707272693 540963494 152475242 295486834 582305685 349496691 169288994 53788351 162986386 707357349 86612237 888954040 565080667 836195422 197427014 578608443 642261946 479252496 345841406 723818229 867152880 685122571 880027590 377636412 347515869 235971168 253044184 403751260 829282419 778371089 669972833 729954661 23242419 859595555 746679616 669386645 845967684 812284658 836487730 642178197 346904141 76307029 615564522 490389546 173352430 384227996 838760027 130027874 878581901 495825532 224979378 121631421 376511493 1474083 181666324 85479952 946117054 35059509 395829177 455052195 936730990 875851529 943803782 529094540 927676625 48992275 355767358 72436013 906694619 80782127 498514490 791160417 383113668 435641130 245529039 603533893 254242937 845976403 931808671 497569324 777874816 441092210 330247556 503971955 149314601 330881449 826296843 888474617 772057266 383090568 584269740 191045005 155957007 590819072 744815241 871718972 304048865 296363076 615755163 678502625 938931574 308334398 359045612 37396654 691764159 633101338 871493766 93300383 566068719 547581638 97153758 493210694 695490734 510954375 409137690 128072099 345625746 977621373 981791280 151448078 666468510 653531576 186328994 224282681 106003877 853136173 333667020 139540682 605717262 485570186 405466883 22585259 748928027 4759037 77059142 271293329 976496622 197674042 885899894 242893138 469924092 123781943 554794295 3450849 522018373 598503853 889900302 911468563 240130885 324572279 598797825 934976111 980128565 348982231 647445969 491602601 18797495 933795133 484145276 269319970 99150271 578780919 502895752 944048929 180053665 559185652 918218667 964538800 454845826 810706914 204821763 332893373 92364850 912259625 665785709 545280474 757859481 804039026 268572380 301133781 630145758 35098204 853132464 928313679 328117452 603400056 422517687 647930349 992032169 892282185 178327591 686775913 158572600 60821405 288996369 521302705 504503174 295443298 551667534 768242935 417326356 410322813 745858638 819699389 177807652 954873408 714977370 346862549 777551703 858411314 473428807 108505535 453224826 544991509 704967825 462638606 964395058 447479401 143635164 551555641 518729344 778209702 277159105 858081936 153178982 787506475 523568027 162702367 272684459 287717819 238062679 686766262 350305606 554804012 884458690 691947398 799257205 772835397 354720208 971299360 265434259 788069920 990288552 617882495 118227665 171526293 920845210 511057471 522019212 939366311 94322981 526914772 490140460 55192173 692049796 759968105 405384386 571301112 120446668 881376233 281858922 574336408 372921061 89731013 982887929 504998759 56321707 551113919 345254789 251577319 551395165 670935656 31506280 121129348 406969849 372686949 90332425 344790585 757437008 309115216 68589416 496208897 655251835 503414128 588117109 921852162 222532261 578165267 840315262 178475078 394004570 238390734 743239805 424206333 436900699 827556489 610732098 409675523 684911951 188832894 96656399 429428724 57281180 943597499 963839255 714765433 598890269 878403129 38355076 956330017 550798725 565610776 175833755 385489080 657321354 935216771 17387404 889317119 949881197 79480405 748525786 13295200 198698048 838294213 401799147 473795879 328551764 392637 523870752 590227974 699287219 558772894 438376570 61140990 850346855 136349650 728415462 395047700 310209232 888748094 660406358 668590711 802042025 514361190 385735082 514136003 385197807 603874136 773601872 823890433 439421143 958049176 83590895 377762177 807817305 529019098 648615003 655834437 297783198 222117766 662998571 138931018 192071002 410738880 870028258 70531381 349878453 130733320 467680823 631258916 710699815 395110067 89681053 848201867 835885755 144547568 677703300 824286168 23757510 596280754 53089217 87138590 342305447 504438103 124404686 52815355 332454453 751121314 790314931 611876635 997587564 941605717 917825348 25601821 862828045 129187935 138152004 332866341 124822707 933795661 79247578 638414121 541884127 508109840 768184144 923237118 5530032 380235553 934551855 732736731 83794631 879660843 819719557 511783242 150224822 112711177 786069303 630674507 599648119 452481900 702981786 953991459 938781621 777326708 323034954 712887308 814062595 494819469 610839874 753527803 161755284 981681809 598915573 338916319 898516492 319496606 283906602 455173329 486200573 197963398 934155570 524464816 924168307 772149440 267111942 406879693 617915022 955459893 162444973 866396241 880662844 972487830 86173031 618072322 866597761 800117658 395466248 629121512 492979926 623446554 440314570 47297399 667547748 248189385 469031184 305526717 28453660 711227866 514619870 657160340 65724008 266696321 946120602 243864012 203429260 350688191 876431396 673704759 990999966 718879489 609339142 19549618 870303676 532101753 304319299 926976398 325283773 808930376 294285811 914354629 340173502 318745747 180239025 891289678 41201164 1337178 499847682 209278424 845374633 938202636 137747348 845507741 144963544 986778660 822219103 724651930 239811525 887861705 409693725 871210641 625899561 993819842 143253219 691421881 731470856 487983178 94994313 848890107 893547141 175794749 797809351 489540590 403114654 288387630 927686620 882334221 793127595 634854520 419650935 964214385 308277942 906510466 300251516 166182379 248809169 294665990 114739464 827433319 106249738 69372479 889066514 74023899 267515600 710856479 315894098 789613921 578438875 510963467 710083112 259183354 753289604 938297928 153606971 62491006 631414217 180601309 244885870 494924295 638746026 3955194 74889796 511390307 867457033 632297311 694086937 700924223 73229355 804713822 586940940 253031585 159108364 283377372 429422741 502047961 552336773 749018091 714636635 990139661 7138667 321544834 272132436 152128948 599273308 701087487 823717988 217686588 297861318 939380942 685962007 825012430 47520067 554576133 811746079 940147609 864474300 917324764 313967030 762829598 479936582 289319471 218990011 732478291 149157159 755111622 376321171 237783189 209144727 151558450 916418225 355952013 527174589 234856069 462932372 853385652 370608612 622703678 49965595 638188638 560458268 227876131 78162628 424667551 332451445 345160678 292273459 446234098 605402473 602185687 5840987 434012667 344884621 753016699 868241617 37184650 630100967 73922340 839017728 428796825 176483459 733221122 576338012 296038942 995566264 749543721 805358959 722885695 385754620 519819305 260657503 148967979 90480091 639251818 140098896 131518469 386380367 443579527 313360671 497402646 491700908 18156860 323975601 94257096 154664725 943724714 972411923 470502022 242711730 757389956 404266608 371209496 279462627 429382514 814419432 217998625 119626438 878290111 80921305 180587654 487135723 775678975 635769057 123247547 296935232 536272845 764372406 762983643 391170116 860416963 513839298 593903663 29679904 880061765 961459352 862580005 697048506 695784569 766077363 487686108 329752886 214128984 390211978 573752905 744972199 610100630 40068731 120209364 388738266 50066624 803049300 510784450 330193581 503433058 377596685 721913594 489140756 321939742 161236421 277191282 739290465 570651101 470305544 243650375 232871822 808784161 184337050 94745384 906200415 45547890 467927971 925759044 549980702 493718994 669430001 324030939 531706879 435247472 696489671 783872193 741698145 522610386 994969721 266540265 13184910 367666217 198035362 121761760 283939961 373568101 936421867 44848529 134924306 941718970 234350114 305477529 914382851 655194119 211727015 178497900 806901739 275257574 707039095 683757018 500971630 313151221 120088166 811009988 227769413 727542243 81478549 243134132 465658279 698351278 432115412 821561080 88722770 898881990 850957498 424671570 625660720 486910029 63027598 699804724 891983256 228782688 550910465 428865231 324714330 443174440 837669392 516911286 792696356 236338476 369663814 669612942 200125246 787741863 735647812 471298768 161229972 932707596 131215518 805284811 236853501 412190359 887145110 959199291 972232071 207064858 870906096 998020802 672394748 562259398 132146956 972923461 762279838 658753573 795209307 156502656 260974523 388380652 481574180 817858460 427960302 703460135 935435473 859887013 590734666 20296302 433017469 384909553 96625034 607342951 998763384 893135831 505813234 429937004 514004499 366145288 757449770 850240107 352119931 920364047 168160091 584496500 90373368 429708658 92042387 80972487 795763334 837414414 233854324 358479129 58213007 892991451 786667275 694888129 300734559 548376976 620897539 714822081 166138360 651555284 513370524 403823304 225152761 407814788 201080701 580123221 835878665 21318936 533860723 532771758 140417978 811056111 333201422 603252787 299158355 147877046 659438230 771485744 43269425 464815267 728071746 332249562 818167311 788450607 241987605 605272568 355030423 581059878 934419674 999012030 519790372 86952793 493114297 755815530 881675391 128355624 857164180 209497863 30242792 241704469 117648492 505666600 170208246 182077068 637626634 268332447 444586290 317315385 922096463 673282039 355670393 734115006 779974925 277772507 808357391 761347427 731516411 433242463 206087339 830292961 389408469 478543085 501737373 323726866 314213672 249269195 957282321 155023376 180809261 56086599 962800422 814607272 58774141 449086732 712948591 394050105 994521408 666584223 877475431 201569176 519573611 11872261 164785988 996990760 983978548 136429834 342301238 667209935 161986076 179202087 71231197 896056506 477921507 873359994 498106351 173562867 46673598 821992410 209745943 730333274 227980984 774610446 474904364 78187871 19596350 499241861 171754435 69030456 306988679 785205543 919104206 81802139 384771999 845995603 282513558 742389185 40441391 121611718 587283125 50415854 923221005 699731795 32458069 700561601 434759117 175518109 360068900 389087875 712588506 755653815 305128095 503822049 371159260 904375437 3681273 834123059 200998968 234135626 576989689 117637090 91393220 445513625 79597109 582219439 536983140 901742919 133002118 931269451 691619183 421347232 356196377 168963033 276036645 336382692 697452949 975627011 757366519 852686791 341815091 23614810 73322128 457759541 649645026 301045108 775415247 547449517 738070937 929343920 760678414 743543297 780525891 846885778 627897166 918137235 404006503 389404874 262823554 874948656 422337492 464240283 103147760 488110441 200525473 764833985 782534868 229465050 472297940 234688459 516582851 706835203 722339113 877662553 578443456 562244359 92915316 556047500 617353826 171524788 166707977 260273940 993891234 910713350 560470989 638580529 381678129 738092292 469737616 317132343 601005314 361715134 360748038 70607475 860308140 147422707 96017145 793203792 855259714 163393445 398782209 715825667 412186217 15686204 214675875 791995157 114020483 857721736 849366608 513824858 444263861 206795396 99376245 227218785 442701939 849627415 213074759 756567493 255335326 484669190 965694683 309951467 643433112 248911462 472113006 805577973 867842264 663053032 460951306 462231864 196631462 969977536 197979434 365809387 569891273 569370426 116184711 406832251 403024195 771205602 113342420 300590875 278884757 761607573 149811765 105492294 955935475 342955751 46835102 108477452 361028024 252075384 132913056 892702365 282369796 56750142 466487937 78563505 644331968 225603090 763069218 937508571 412994992 448686177 502907387 270079472 793009874 757797020 475445273 324024704 549827383 496869879 206192085 190779692 9339186 350819344 948676020 781578362 446994059 356454084 525453426 444435897 645825656 611193909 10987318 914755981 145897815 292809834 413593659 594810864 997843090 213507332 93162844 532012895 386914373 815451494 225750760 991484696 950177818 309195499 742762351 567455122 254189810 983705224 942538737 826680444 555499635 840040316 181112979 501275925 617154862 661500652 874515515 428993457 930812391 166582100 799369786 790117662 95723616 110605586 185723642 55409316 14497454 697803537 68184834 28245722 906160997 424752563 882512505 232963688 351287928 761200785 278344094 919173309 895561378 296172567 892941824 104745541 881712124 72723896 427264404 332819514 99102180 771295966 148806847 632538474 208127698 278650916 640887483 644891126 139113861 832224182 671723469 226334963 974713630 340874004 749683582 134485332 274196661 399644482 29021765 522007168 167243611 569741413 459011930 547726641 643190299 443162384 36420137 386491757 647969642 621690549 921756758 91245312 745451183 126622793 123655645 160630913 336727544 631887643 767167790 480313903 629726132 214755426 656887357 983587853 278672217 428400944 6281955 908168088 625658838 250888733 532034157 282324324 761634796 31251563 159005079 720599483 82193024 999257508 186344729 366051015 473528439 340508353 727460582 120648104 110511771 43389270 724228703 121280983 330575375 179207611 558864712 39326539 63517528 55256987 56904559 653943077 184305663 643907760 182913119 7150175 175047384 215904452 105520455 313047307 871869900 566137475 892155336 971954939 403277162 400690548 459029290 114280385 528345416 786389191 37639841 597074077 89900897 306908308 951851906 191533011 313934988 262119519 80595423 926716198 383560296 872045432 175059645 857933915 84937796 504197037 781626788 786252193 803511017 421229985 920491551 793150587 283632721 821828096 857563225 188976262 662210652 869488277 899146019 152331566 641266333 336437845 356242946 472887273 513369334 680442387 224852308 927535149 390964694 479138552 644260897 433883246 607121040 717415747 993938090 251703368 769788927 613098077 16610874 81986605 753992332 592445522 997091805 884519190 491507607 88498090 419648611 843271531 211089436 59191310 356445147 78991502 858298956 85726815 536699766 721576320 50647069 226596812 19710708 415060713 210941862 651897659 723637332 412830376 434529651 805021460 778222787 699444853 71106369 613814596 896666911 882793990 862623984 451172747 402465805 53851825 586609283 249408202 537730731 9726436 78576489 232752026 40296648 602223263 682063362 474300271 714297187 89269907 83213883 92886638 405695888 556967209 979811652 611435960 791176839 800420420 201714449 900980381 748958427 537153942 402023362 301802006 616649308 969734592 808999094 567317602 621100692 637866131 65940587 46382000 395755457 662719634 719555803 92271198 353584288 48363316 915765172 281446328 910053145 613496996 841144902 186495694 162597130 873043302 206549792 550478425 307610469 721944237 362415535 336018788 914071649 425692590 272923075 109330803 352271367 285979851 419457363 779956499 334760518 562372826 701070473 943656473 773156381 501405568 153770655 901339388 793731356 96972675 139046 570339511 812090074 787795276 115587388 944371461 66868895 429012961 619483705 470744953 553313920 478122017 723836352 385224047 991660220 742717360 128431484 147133543 266504242 358302387 596049923 580605931 362031367 230424983 382927334 535475107 840652279 884770569 66120776 47708853 675314547 223087275 749558685 999855691 940360090 440214610 534348579 10413453 845884950 229521963 978584540 312599896 806810585 787049326 638763339 820702031 415397500 665863388 924543292 833628280 681021956 894625722 111602220 976014311 587346665 34347789 220962168 647144690 900301898 694072442 39260272 489746366 238194064 177487241 329750698 87053817 767569809 560970597 960559076 912750545 435979702 661532318 905964714 713431086 736387883 664445228 668178451 872719847 663287835 312920507 187175919 661663802 527227076 447872557 561672625 929214514 653396598 646470737 384499394 222023516 29486873 829328206 380250240 240924597 995834780 247871086 910791457 212555572 218348853 594552345 943659290 342942891 933334452 557316597 847567873 865860129 762015209 902216679 127718889 328777463 891096082 151838759 940318860 757730102 458371247 228616852 299845810 990308503 834715902 162243660 654726455 327880591 244844628 629113872 403570744 593206376 947143117 899295965 360983111 559964985 413652423 898693922 803350824 69421039 468699281 796369697 436619688 855310137 529806174 361797135 984129630 979110108 528321173 961404616 743713202 933612922 674531198 833280643 368597990 184237197 898984053 250137888 601237875 22677465 121445150 283049439 425836846 531558180 519392786 629738488 820215727 225520433 618046523 900388049 698574110 748430255 680032733 521265634 560293981 701551538 375654423 125350327 815865339 346383604 47052814 965617185 903133495 152902363 402637839 559200445 145126165 546769597 2700767 444253952 875764939 593740883 237721332 335955002 101829906 211149496 518460427 813506658 484618144 398940766 490304512 552500343 394778973 683801339 730609276 683386348 617887490 809083622 770295240 887325282 280235745 689107680 998182504 25766199 219896026 464075434 788554510 116233554 269524685 883844886 453654017 414514695 355575113 363036255 165633661 806254147 710902961 802072206 930775532 230676 435945326 801142592 876557779 920456561 794653464 355385109 93839428 527784115 284746713 495237962 297551133 818754652 343375355 89976811 739792242 705829251 913486870 292632060 864913620 595314262 663450318 19618603 381494755 167523714 565657131 947148597 735888281 432086559 460990001 845346138 901637748 526135496 956695873 795015996 456095681 314711015 342354206 614294704 613590062 170269734 601232058 77773829 68174445 460620477 427688463 130025536 863185150 955313519 588365431 931151703 863373215 542402163 401061218 167631011 875564907 456602175 274894775 554725976 926204197 968644416 534624043 27150021 451131495 163800924 740160333 263817547 149044406 908077064 550724858 782984377 928834602 216904378 439037111 454007921 869515197 141441043 549347217 301507979 249165028 594634084 999962287 34226113 346965696 107855915 158566685 42561196 955823148 827057768 424868884 951138200 1521954 329002978 640092182 232113344 798282389 341419266 398981455 238643863 798015873 673493462 904080140 803291714 934659854 764066049 378350275 45740236 985843681 374482335 20482732 106873917 513092572 498527573 87254085 11573911 449664438 933455858 826294974 7337448 699939528 791293454 265062544 204548350 869985013 989779781 354791425 128308940 478494631 858865643 913088036 421939076 559366408 642697183 311392478 771075764 112701345 834091844 255398322 620024048 519161709 748565433 798295333 439050083 723986792 30182668 700970226 377803693 895891339 88981410 562570634 334920292 978778294 512062880 232965632 862724948 16067156 866703746 863480301 969351914 149072065 370625776 325205444 265585884 685637516 220150620 836932842 856919783 790461288 478911334 282890536 897187470 745408318 603893923 560070677 609076219 370986817 945609041 52483595 837086231 939681024 775906999 783965165 884240188 345807785 486378607 769730847 340431433 608418543 81139609 601238821 565947942 54312739 824200152 734545 782222305 961185212 514145799 743714543 563009226 609411795 499485733 326605838 220022166 763682491 2337849 600575664 518450345 529172866 370222531 141354383 23528560 432373565 900695805 806918483 591654430 360143166 17754820 565042194 916480175 78421532 121309151 786313086 796890554 863332877 182874925 616516238 355232248 625069836 934125392 708398100 498492883 606716297 534481131 994786971 144003513 850793855 305112989 444335933 689060210 564649842 114679258 361626865 413710787 341019989 950913065 746484690 335692870 304009358 958781832 421359971 939008665 324635578 945373422 157716990 765358563 766417732 287973219 443617233 658961631 994417165 69859895 557605482 204566294 675690192 77695654 488730283 119718725 112166887 121425230 23573394 120873704 723138694 928024018 347132153 998394647 967569075 352694596 266955259 880335768 385705325 232926945 938908391 350990009 471112924 2741291 488199991 210916976 208290626 711569615 811862928 744897597 561157767 823683327 940684359 551769406 709537399 750199425 838934211 748417211 620146110 875705762 72609665 335085328 560699372 203882756 139716719 621330327 231522270 128870187 13743172 762844862 576484870 40542938 372775229 429601160 447870929 52012097 87916748 836968118 134667209 867323341 309751638 810543034 960914861 557011605 942826363 85753080 318044167 229024031 647124829 531269246 62260909 645978077 104187008 583637886 126003802 578784467 188857876 218754053 144412922 288295281 615829645 66494651 590984252 52767665 4444531 875008221 292869365 895221605 750468560 426350476 71855457 171488056 803172545 144858100 417814684 71821776 416036871 885007679 771974191 872365315 857342658 15831812 434192549 116288393 315236287 624550802 714342595 297456245 484932388 364252902 435057983 350958957 923433522 266441689 204865283 656978676 803028285 720995287 128539582 238019773 920916806 516858521 270312569 527218604 293886491 896079439 377733609 702354347 189276826 560907678 889366502 538905117 204277278 424627903 80332692 876000437 163022183 114409502 776548330 91160946 226516447 982861539 390509542 696311022 836185400 646475560 975113480 151216599 356786722 733181642 982751794 521876845 564589639 746535203 789808783 665256794 57991325 836110690 517790696 272480285 711136315 717994347 107117395 292385453 513620234 256689010 865484595 449633003 348799479 441243357 37377376 846891224 265596775 144125724 34429761 285143073 349699010 5856815 319391148 421118122 503473055 146909084 895515977 860664063 766862542 461781546 521324425 827223587 72167505 32658833 913661782 250052512 185326504 565403322 694755536 958632496 845944490 642974576 198943006 706912517 807754051 298791636 781875925 743374709 999054106 143507401 358120294 472198616 751591393 5337011 843700807 692961165 986337348 537138235 627176515 152663870 916081623 697884322 3238162 372788558 743608826 184962784 648626795 95038329 256420129 919316361 933765222 913389279 54748364 518247513 619077033 126839001 896876733 680210663 131591086 347853034 441740369 745213209 549514690 96726385 848494591 598863476 433936827 177516712 405293760 440298009 322469041 997252944 87269026 864877493 398028877 656938589 59788717 555760208 221559543 815989054 520064751 492742922 269663805 527014661 853094179 964906534 734002247 379520739 426945479 649767177 426638970 602733671 420230322 843683085 339591906 965945163 456804049 735073014 593136010 569943093 739701282 73588121 379697784 67636629 668006553 864881196 77997518 348455960 690431072 71766199 713885722 142751672 706182082 150430272 2007152 674330316 51322113 412692858 622302285 856211743 755054475 42474260 887886526 146365826 919066496 271339688 969443598 626116687 123881662 972394527 965119346 981953975 531800165 418875698 949372225 421474038 359570100 725088827 619841054 604241848 774747211 716472007 391783443 539059459 673803211 383851255 11283856 842480895 447714091 243376707 235656597 782213184 108076547 229147576 424727715 496302697 420575802 465104095 238688159 909803656 889909395 153425649 541243201 61891983 489076047 494276883 243597964 115941302 632379951 114833711 829886487 8756940 165408862 933162717 766607718 602861227 747046954 628137645 196217667 936522130 11286043 897999252 962599061 276995470 164435572 845082016 401750290 759527153 873007517 55659721 116228388 870558418 23689744 35558326 842916720 440173546 575547391 850952785 133340451 51827916 809324336 656764167 739850137 709287267 830942305 632098219 502523669 504943493 985798589 550831882 784190224 219311326 3423926 353119090 306040309 707834686 377091030 832633205 525379174 213637767 170901638 526096244 755177920 635359267 854419288 547996447 318868311 323897972 422337490 55067295 973328971 887036220 184986724 698784520 762881793 703283193 580238760 75545395 40949114 853625726 981535362 393575939 278356976 957117175 896865779 576302881 750271116 881562009 335701539 471093936 6577636 915474240 292086733 766410386 777412601 658252089 80721059 790901190 564015611 176378104 563909401 693070379 258029687 457001570 27135069 427127163 50597368 345530503 779799753 243445954 925602005 557947908 188720875 948146825 242482324 63587520 378600905 460415417 139610107 719432295 810097023 36433421 933707766 910568910 503622562 752093229 903216828 937742983 64919700 494226570 381245110 783124470 55653672 965701963 35698555 722052712 314614268 49535465 899282010 8450828 95806220 891996671 770139979 891201346 749533320 436273917 225816836 333406823 518418842 537818546 632148698 975825553 243735996 269095190 503908926 610013572 110446902 712529262 874926999 32456099 902004103 674268819 98887673 504375980 239828338 747428284 371125629 777995371 519557876 276133083 283180474 981906054 142978125 663554856 636302211 649992292 484792182 239522511 742991202 564091182 339598866 736918551 901080152 452617793 459736841 30430028 921013454 180886768 960887087 711547002 74692028 249064816 609280836 636459006 52702729 897794230 576277947 696642836 149630386 679308563 914868318 642632228 465092826 699879353 488962204 845089566 504418293 684894482 401072352 643612635 632046690 979759224 730247647 41524793 498509630 466563868 315243801 285234701 507446534 381327423 60081952 596493940 786078899 341190020 543135891 820594278 666559285 882046224 169628485 799885971 592538247 420365212 967887474 146310773 345763324 879948924 250417545 733960582 797083068 196636959 538570584 175437301 809423862 382783998 165128361 362754937 95230768 816905823 194453589 392520156 817821691 160734933 58424289 454221612 738862698 37590834 847417417 36650876 473957661 666466621 542958356 814887071 184976182 229957435 173267737 453383490 318983685 279392841 4520961 754696785 789913510 853878530 930252788 688660071 752570191 584194557 601063258 958842524 515381040 51709697 998913277 113689194 531063892 544593764 461577924 460863031 117707976 323356583 823985959 647386720 912736296 894739040 216475677 376285860 987149917 228060806 654180556 633892838 984044852 722730545 745386302 876227306 517040754 693994630 338886903 397856091 661620169 923966633 408966376 264516626 358293307 34958389 803478408 502533106 979731525 813831984 628423781 663328233 62247246 206564796 55064917 59037759 251498844 978251814 680991053 539223993 81405769 811602051 956014859 651573729 363298655 945681521 538532178 14403776 308722443 825936777 175427877 421655129 267555531 315376862 261227313 782319576 844948425 146188289 827584675 321279937 591702779 905425221 34386880 100841153 230006825 902012252 656802545 295504869 146772607 865162946 759686675 301286207 713872371 697295422 724565740 506482704 86284085 86981671 486467174 579073102 556316757 322264768 826972680 429898177 436790258 990308611 564093557 80590583 534314073 983748981 484043798 278903698 670835654 387891033 567641333 310083449 847855777 173350835 160482685 415469870 759969268 997562161 970903383 863819658 903862839 433174850 603558338 864733492 947535701 53438062 245000733 993702012 831958413 67477836 584189389 338063863 207376991 38593523 816078591 933204570 283984953 842509624 785721218 183499652 529104081 345732495 913702916 139769395 222306075 352819132 899126958 207844231 178495235 791835159 178308992 465573699 146312869 161131260 273308121 895310552 726739037 387390808 90865912 300296992 955046206 254326774 623763903 935344679 197588238 566742720 884447519 157400223 736355869 182644892 193152760 38650686 130867350 71915034 755072414 11936863 772714817 897277630 748985294 751020139 94981552 750245826 693106472 233770208 715767165 244938878 823924671 586308947 665621616 875117453 936593994 377069693 26485452 962281077 830922277 942556710 101262837 427792615 812521997 69570547 786812148 518200497 324238376 872763887 504688077 756014984 580335897 384104049 50190475 335916574 423574276 863935200 590233132 987320374 976056053 736343596 724664157 599677432 476220109 415149852 654208788 621015349 697298189 986458085 430561717 717985187 61418721 276091329 919364797 568953936 325107176 820292952 457822552 939345064 193036888 532311891 453015119 979879271 516735500 34103194 372978163 670562306 949727421 940079692 538405708 156031397 686742763 492643854 963264311 483357847 250847142 740295996 563840597 4809651 398976021 883691829 33922568 182429598 250390517 76235538 336444608 766396164 659127947 812687584 813102606 489083661 286214769 820660298 538490800 56523697 361252237 864478853 235949958 311041380 48606433 446045332 150480516 368269951 832974417 856747747 9738513 348052699 286277985 486793713 485423355 213479794 3837418 149936478 559199370 969653495 586832268 826373068 578940716 28459492 428640845 611237308 516186706 633380086 80627768 295455646 752269199 540896041 916832748 699493464 693180819 165625291 347929120 300135094 336942838 628450461 403191390 504571251 514270850 391044028 202998848 766527632 441969598 192469911 57842555 185092283 464160685 163487467 775957675 446029533 772905939 374761734 636559325 648859655 920926847 418091921 313913239 525560857 316961182 954274883 749979771 882595349 30880512 841511371 575772182 959654012 894608035 102432114 268021928 726248420 396681439 732159824 258831030 1821133 909542078 227724857 348960197 161428624 310295551 718294920 216278080 91724443 826647636 456280386 972926471 392419880 943940900 525207302 339133306 647172945 480059247 674680273 934986653 77416613 475772673 365283795 528883328 596928974 520764841 880947424 55098701 62776318 357457520 88119477 389559378 603093667 707835463 398914286 991787382 112766543 919693874 401005436 121169326 850912861 136583539 216302177 747914558 504470939 663361673 451767194 803319044 781773776 202518294 672581752 201316618 58683032 868023677 934752234 881304914 75731173 252409603 807218384 33226697 871926010 96454993 42060799 557964693 75375258 834997372 788147198 937320672 580094663 242926973 35325135 387003715 375797744 268422530 478168642 383776303 838495640 628333150 21658515 397604221 967798223 883738074 184142758 176793959 796200784 110973616 91840295 331141362 472066823 216480443 972585394 777483998 980535549 560944905 547081792 668078895 758239120 473200046 832818385 314323065 815390318 883502513 512687518 680345342 104011781 17480987 718450550 133835536 913178952 117396452 8934316 505827344 256887379 230680044 598711046 493321747 297765150 691882567 567502525 512450790 825598888 437148688 417875748 488460373 733836581 354822152 523567417 482477486 466899496 136499028 790314857 561456892 597954686 266345786 92289075 378030443 175019136 714814151 564804314 111227511 583235490 79232208 38778454 485711604 380544146 658995209 642933307 849265512 966305337 314628009 209592489 89375584 31782503 857806244 224999906 678886946 860099902 518767333 603261864 331924855 183653454 991789193 692418194 451548495 638775283 996630837 614201136 788783766 825567770 284923250 684416711 946143754 115128649 816835436 682298615 298646461 561691066 318461773 534556661 603500827 377938706 213364900 5771349 374374182 391710411 94638266 758009728 277722297 644162304 715221336 579765978 628486503 723603660 874593767 533774792 538329543 665197147 467290660 420683158 833415476 938781655 560098561 40479245 719647147 158214588 758259848 963679701 678031501 126139195 825711922 986121353 358781383 281001416 654225227 624586714 621830568 165166392 96807211 460338848 255228338 491375472 858367628 671865801 628572400 295642756 98155507 664213292 901242954 7127716 905018828 589968962 170442308 582640483 259427405 58016888 589691486 81205462 632891755 622486084 136700803 522298008 925910575 516900050 305865650 852118295 715646155 797268641 18527554 659232035 522863124 229568179 487954181 14172052 76723363 6783500 454621047 409296552 998212459 780960452 269286085 919611771 130926474 257894951 165692207 124506803 860066879 543776669 432669863 55735940 485140285 537120327 912673239 417520116 761742569 312375602 387644523 414895378 383930302 10115928 142810470 780702518 399208239 158839114 582796785 353980340 625821558 657103988 965830123 133626173 294142531 954904440 254137433 331769218 98095147 214915053 706603391 51231191 125524855 427624571 961059630 813894620 522434138 228372985 502125992 333083506 488219700 718936397 144580873 524118018 27044263 411937496 330747926 960875462 55458479 499210099 742340135 735460523 640653142 200420887 975012107 135352612 809979322 194435883 473791247 105132616 882862651 178755994 940584634 410475225 760413225 714866728 577687350 987418781 624457382 660053903 810532861 421512322 702684225 455012650 313646165 892212918 763856788 615279181 657394917 729431351 209124543 77628923 877722894 359949325 810530610 804045218 1254560 547507441 531237087 929159299 317041523 301079278 807074819 895331052 806180092 329734369 82812694 451165406 898319817 807700950 213816885 885399958 948684352 293479507 455934346 765390374 253784212 634842966 596789281 826556893 949911494 627142684 686988647 463122627 829942221 280996899 498895639 610614051 430048555 795687207 22449515 527279421 189489281 148484312 329212914 126849454 829945938 528910729 452595793 767752674 586664845 846087790 519000521 98006011 123013383 400593950 491318085 57061259 623087341 791365661 315315499 126346932 650077198 129377500 702817850 304571688 294915833 924204667 76910557 467518684 578183715 656647564 292641666 268965640 90174153 455149085 431068298 841668588 9721179 522497415 194937053 86485337 426808418 605657263 794960449 290833979 932297960 520219452 464933371 201739690 797783553 221580971 556871960 41509031 436153685 62212890 801672931 449787929 525688292 76897848 446434116 568771894 22621553 239012535 635723305 325042995 562526492 67171329 557779453 786064098 963117833 468536945 533658995 845510201 988017295 868884466 471290093 19677614 450655004 29944844 766681312 21068209 190097240 615964999 719827755 953751927 905035881 270865593 847563111 137346666 878493712 650689903 551230808 549920527 332993196 529520406 479867862 401136356 264770294 434447888 260850440 958271086 872451432 452682978 619693631 303255673 124573849 387128382 864264646 276019894 766522819 738229223 657402412 826480176 789419525 55744946 997776981 286374350 97767438 966318315 941314473 282953407 39222867 356314337 783194388 38175871 60229222 53736944 33192386 981536260 417634865 791085544 486698454 750968200 622660394 304681069 688107419 147474234 82150783 421168465 768194674 974078518 926551856 157939144 830152687 555826587 619763598 942890388 441914919 518570891 874414815 564043802 863097266 948131668 389520521 32790646 589596516 789811755 741260447 230570459 544429397 530707496 337233714 485009574 511627752 250008659 682371878 859617039 926846744 622482124 71170696 165803658 382433086 356916114 548737584 156549786 167138784 877271984 721733890 637976680 554568013 383631438 519883412 415061088 813604797 338014756 274589140 543269596 507323560 356136193 135502599 784168534 508487920 213963672 881677785 663265741 460051885 824176190 989338069 271756692 14817432 137484579 805442910 807969399 242009348 204974088 482327593 37498311 971374056 850346255 136559597 879528118 442954463 135524589 423385805 526509623 868736149 757869988 179233498 150717548 667905784 922658230 562000453 455649395 205529869 548243113 391921149 895957312 606371218 883523655 438913059 253075464 333041742 819675003 491163271 957677393 229528773 892806896 577563900 871743665 581150665 401234718 421202300 404038687 648825811 590881584 143174045 634439544 341578444 652248401 698271705 277175844 442792443 48207830 851994314 411506444 705721869 311608732 57306158 496836205 167180887 680789867 8336057 196391722 827424881 190432689 458925560 173106127 125676591 691699240 647988712 695903398 852864471 420534662 494848354 608892166 750603650 632859433 770143285 634689064 194547128 265230336 296281012 709266929 81714992 793385137 28991447 50063334 932829610 432522863 563628580 711972673 654744524 948196478 187245246 754524755 612019154 903299564 47253620 588154030 642138621 770517988 662951542 180871086 806988727 974057976 699724412 10645875 362039302 34216641 771951746 539728321 967915320 311041939 572416058 432128958 649453136 302603077 225673171 515209699 361052207 353954076 650564406 123238978 946060429 818515807 938813213 989417611 598304580 392073411 329819832 684247201 458270859 333893964 663258848 802425414 449125877 646451267 328773665 238156043 995802658 58722926 163436743 301510279 170954870 517478134 471578215 40418897 937324820 935342564 677968566 473729565 459422657 337691416 154390621 953775019 510237528 181112506 143092023 728680691 127838407 353723954 25188650 365807626 328787801 105329266 66344210 121735176 440512067 595851022 743979144 480207087 395528783 442254890 83766239 433265005 752444113 746151149 544254867 634083735 780405574 615904604 601596185 51424013 265915845 724934066 635492461 728684304 76111639 990413146 624534884 859138051 657753730 819691149 143999825 478288553 880762730 166904296 334184260 750045433 703316587 309823847 108231288 439505260 242261014 307386010 712626205 936621873 503330044 771359850 130407614 102184020 631827698 682510339 22007461 657701467 363752279 408589486 769414749 707506105 723568229 64197684 141208351 366990497 159429316 437109235 6218531 253616037 205595411 880475851 287994396 260809877 738642872 409983912 274863982 95845717 657937874 149033321 549928340 987131827 915272860 850327817 192029246 670294429 484553314 644912997 243852567 29582189 936465157 546680236 402426926 678285783 750846426 245161779 850075646 6035351 263479648 905765152 866358085 407659057 322160683 419888176 790205775 784771576 199747931 977490737 353616506 788078651 734280044 962607597 311968986 123079981 240218968 823850703 557762486 388187856 332909414 822364453 473542064 304243707 550563525 159263097 413139824 107028165 843309812 497190731 329465197 233680557 449329770 353963791 939045007 726194559 996877465 843082422 85546284 773310692 459242629 688708592 629121043 429462250 570755488 222604655 235936058 161134033 20259773 478798290 461634185 940616313 519240932 633506032 97541806 186936810 701477468 347121999 225863993 251920283 748659562 578336235 436198932 780220250 71458055 273598939 714655407 983777176 935086950 961243035 151880889 61315666 501198664 857858811 899369071 441968045 895847293 749203542 573665586 388088598 574172390 875156328 626610125 419189279 741133719 48237051 843985569 366292826 557262454 26114299 902882845 25051354 215329341 99344512 567682036 140851921 506691371 714944107 330682013 966107765 427500089 133866782 807472295 855175520 701228309 664833942 793658674 865476087 434732351 192904175 565324435 255385521 84756374 623154333 919065316 673982966 520049473 131281914 65698591 435527184 993692475 11327442 677019572 786646385 679495563 497414005 377153627 960823646 678823133 328486992 284609989 873401969 146849513 874358001 512859297 925325311 253939721 268627170 62815812 628391030 344953859 174551948 175311094 501292410 676912652 709665123 332012276 344342176 609377073 676729177 381435296 774693737 290845621 226611673 812319737 795267874 722713006 871371354 468216216 596947955 439262257 308119392 17060455 75445365 569441562 20917981 483838551 813404756 759715251 310321519 295721157 762550716 409392559 928772408 166076676 285566008 829605782 411344523 556157234 715018709 389042765 168108406 906372435 662065257 514522892 666052649 616828882 288580162 996184426 182941078 256782703 565931998 61175828 869123331 614586193 725185614 720245865 924798827 377671574 848658177 774705607 837843561 18009895 715717912 585790848 459430664 708229451 78176168 140364935 695291873 145471512 760767429 198107870 249056180 44214856 650201360 889475216 429438246 386048759 517813040 552638464 835910335 184471848 144550724 88438465 869413519 818279969 195236258 809958546 282215305 131287002 916643240 202761684 302692194 769918821 387107276 899094390 986021661 162514407 436555350 737343048 808222346 147508715 163187857 941051695 519583511 875019096 974490852 381804695 864135362 731060850 965098069 250021467 496702327 444062738 930622179 186544364 739190438 458293742 25828627 959128072 69448609 473300064 900952524 579507872 563926434 412045362 841129630 214323282 55663824 101342327 425109791 231694609 822953601 396844854 827695212 439435638 460457068 689826909 504504837 374256908 267251639 474320004 246715815 483691647 734682311 944559736 231250034 396576879 572268602 520247245 391174890 654030055 260747885 774618809 65125492 317542961 353234213 915034612 168054862 406152047 765376793 80772833 524691787 873236883 196022262 605455447 748378948 555664784 387307934 723939963 245802822 749210678 766282414 833123702 569284805 220368904 618530704 952003901 815600712 825463396 248760288 905182432 711352791 995786203 636510072 457423010 78935989 319432220 273279290 445398995 816785951 149837292 448771189 401498123 4300311 370479452 238554959 413170147 249176109 483677714 688680616 974906404 489707034 552145773 496111658 211938605 336234230 768324749 255306668 841283756 70753358 21915384 413459133 756653534 237941137 187421950 69215484 253710781 403784832 403879889 571482815 428954551 378704423 926344789 488947549 156517973 473984271 864495639 279555938 86148612 21191446 780951788 692764757 598371270 521227817 196454650 283998557 720317803 606379935 882148368 84005460 781100376 395621252 240355489 809509148 504906214 958499603 460904877 177517467 843820276 447004521 935850815 608055974 617188201 691159450 269075654 481105286 774796056 815182854 942442586 335815267 285578013 824593965 159102208 991885692 178496656 1482128 45297859 715965751 489759942 841781195 3899180 925186731 792429380 376739449 791864893 679019452 416224472 202705255 378992535 330556328 729708532 506369403 524558630 323350635 880177262 739095116 191493327 257034114 341017602 257263399 12585665 153279503 904224682 46808255 841999239 340065316 993158776 187408190 523836031 833106187 160922346 239077372 217081894 152823295 962256718 229982565 877336028 430890392 433495614 722992275 727979069 110229499 533029274 212396610 712489001 617478011 898846607 309768256 547195424 179385135 119614929 869513049 547097420 884421210 917961159 183586998 20699413 862409994 206656609 747984018 901443742 838130842 629607474 857325686 429270808 316554065 463505724 522484158 511350892 553797102 446092082 903749138 401425462 457775694 636567677 937206473 404200168 995797918 439576064 954850072 402549345 807006150 594133257 480671939 105299988 586842993 975732025 330640882 888857210 408327286 129647060 320017130 83025944 633993186 816359795 867148940 779596164 146681661 725661195 959316595 159716048 79597997 466605611 161468701 720442129 771245735 966145603 890733991 172241675 992631604 546853138 54758000 487652186 84620718 406269194 645928378 588382190 443820447 786240463 442258425 823845705 743005363 368899167 492943055 751009446 536666631 435794834 889818435 302501188 405304501 306090255 196920714 489130360 214359246 865860248 760231990 624960959 378366288 621016003 189814652 472492530 976035350 664029001 256255528 501045711 307739317 282974374 890135021 194341876 465661229 188849363 854378951 112025402 148420109 443888555 974420160 437512267 106792216 308178412 632137813 325660173 209044330 61595214 206912126 607076844 817709982 656736446 297471952 302169003 264954172 754874345 814349981 809346519 143982783 552575015 108652076 930447010 297755921 913010561 752183387 734969726 79119989 553969937 65899441 772199466 743544037 697623136 916898601 556340857 297836481 341454319 985995737 569414939 821975098 23181841 994371823 835243473 499141621 203038873 609468200 821333049 622225420 868303360 275413205 656957790 113872952 929260104 801321908 756080017 108882357 468017962 71721535 839014308 507532135 601611205 288389526 77739816 901443021 225003313 655800313 916826603 258918904 678671848 378383406 444990855 846594653 745149689 49038325 292607923 426018321 241692774 164312663 226499965 547152038 263377008 784617479 147074558 835247193 625026214 655004788 434392516 539844018 582886758 82155498 210043921 722663216 462693988 948226490 126322182 959317802 257279383 505331409 743191941 847896959 788875665 674382379 424924488 418191530 509047565 10056227 6959238 18787374 455373670 832390897 940869049 319274363 97156991 820419804 585138465 132362361 956858061 948280876 86010681 182194481 86751141 348874913 811218114 400202546 538649307 240577193 153581688 100938621 450440285 134020588 526890906 888155013 193477667 394865411 37220777 271657086 440649923 956464679 963524349 80991544 30855595 170254040 2504062 438145202 125174744 116927592 500237599 856967264 868162387 960433180 159726622 435772444 304896951 37427507 911703792 396666053 608851729 800421606 260013833 255369682 63513719 16373595 49783052 765186048 171361902 132324155 451900871 316321097 732073174 865476084 780535679 963537874 23150673 105568195 365490634 766491380 301976233 953465971 50115021 75455330 919419936 827259328 827925776 57728769 479033482 764483990 449651241 6801613 972210944 791989721 255428999 865965430 590720163 223632996 478312358 921275297 994194265 537234409 88995672 231147066 77456765 393391265 269450505 301488210 671208141 943742764 297208505 373307195 364683741 580936613 18905154 894758421 926271305 578481478 496867048 672120642 808169482 811895256 132010441 95422200 871515502 785519939 510711803 908271086 774038133 135418758 509284847 380581301 464386091 390997463 33040959 247483452 199680863 419585898 445929762 939832191 821723254 456854464 536826378 336027443 956676981 227360299 800472117 199624115 280766549 309421961 397090318 9279086 259113491 615634614 393384242 30795347 260029184 206221885 990720591 440412150 829961994 870722670 407987706 17526857 321717368 127817124 766391781 192955602 788786526 192604533 164395055 846610724 690300834 748365219 817558169 811986698 690485296 977176501 389820639 249187426 816833064 208009226 35455000 249888380 964061393 3947322 854709490 872999356 294125526 103575383 428292233 212307543 134077546 636217020 470520759 156253563 378048954 474255273 815738506 399883169 915472508 625007676 263349481 170067321 33142353 708200614 293522250 649700420 233659154 150077369 338992580 648538928 83947004 637266957 695444828 345024992 931107423 893400676 472566307 727058152 378940084 435493503 764297583 634602975 700763973 942082259 38101788 982635423 297144994 634234613 541962801 905224652 929714920 123322764 166808217 629260494 669636539 830819560 199957372 395657511 787035834 744769415 191086210 864097704 202043879 195430411 621346874 257002947 246333132 708540743 45533854 107645702 993911328 64813040 640761527 495002483 487327394 170072712 852677941 748436789 951949291 213792155 691524355 802716470 428723425 945561912 691930734 361849757 144946436 362960133 593907219 111473206 579731190 274188400 941834206 691524772 146947639 608561940 636625759 63414581 624708481 791759247 769795253 593619506 448936850 929107195 299411532 162581287 175591393 41628966 135637090 667223415 751215326 97364388 321504637 166387168 345448807 202711800 757235585 783401200 764859359 287494956 553904810 458634774 157617006 907257863 997496227 706381112 745707039 89466483 877248334 364365061 120560827 328658290 602372563 616428925 125063975 224877919 623862085 163660623 655807096 315519924 977531417 145166452 793471348 372000683 344893098 314685748 872885934 561034065 190970306 26119958 387453363 225617663 487800938 217424455 725596048 981297122 585119568 495389515 360993627 51218349 336862393 408401089 871066928 80729880 621625406 455096171 566668266 96664494 749392744 148031189 757689814 294557890 767661983 463785395 113943663 80203752 349190324 138822424 788431743 862599622 110715989 179526383 694058219 721805531 280035804 674010396 88693314 392781968 571205502 858385907 215765003 693286170 956205684 238254381 341427998 128610740 67636045 428607601 656759671 146140009 236606495 184116120 792765871 650458973 62391564 607834503 14415280 924441649 486477075 536234327 180281501 765611653 382264476 585068072 287804395 478173046 652163382 178552634 665116606 182498060 469525313 229090972 665291790 705797304 628862537 482076111 990623594 937960857 856475674 423227373 908141027 874927639 61071751 2336602 632199094 437126056 721775152 541744134 914157180 707952608 416550429 191960911 188637861 702523044 200903766 992237095 996105212 574280510 466485431 660047432 473380695 140295902 728750629 891753887 26482236 292275252 306150431 482189061 389941644 821237319 319831271 889448434 231989309 218431338 208539654 835151165 984652063 600190060 169911866 606648152 213488407 454935523 550256836 189137451 465247666 708598512 304666731 392300165 867961789 918070694 10781891 135638242 276811770 57823183 466742399 188665015 628028688 756787816 228229407 296227913 33256322 17733560 353318259 333191818 928837702 196963857 575820632 380608907 582753716 843523835 352359776 115940887 31156058 279725914 75746963 831794251 686581472 342734654 886358036 373555406 708862275 225875428 419709312 731954041 673379268 133254405 929361003 295091713 760627127 883782174 289364299 703702124 940510303 812333876 294842169 849367960 523331883 936150363 185747794 473400882 413810879 406252611 874157327 278503781 703504686 484151727 56480593 283887275 506779296 974859828 697746104 904916408 280115291 64185540 468182509 778128609 295303325 853829940 18779035 520613325 914654305 649791363 655298062 117518116 858848548 117288867 348670546 719676251 691076635 790360449 348727942 629455181 558784562 50141017 449526425 401255074 473371865 669584845 777564352 72206378 830896329 61729623 269341411 108919286 365372549 735809021 453077810 721721302 767172880 65519999 926067537 902819823 115378164 915630015 254947120 993025913 879068091 447972143 932043410 500618503 763042007 854047128 390710675 776602140 188327270 177385277 790235815 35674205 273803023 300646504 643255646 525955595 262414848 143002985 441454274 541878665 419267629 227691465 889944022 919993419 886512712 874842753 518532013 469365844 54179607 94767236 205607621 368966366 63136406 38206502 803127348 40069735 632951787 436287771 292341064 158125241 218107892 982608809 942414196 377443415 230955576 310870175 973752326 952796637 420953859 754776224 85472612 66435732 657491296 728400308 629287680 467448537 536161410 790652564 880074962 634178801 379922291 564897556 610434605 116548154 794323914 580732639 505418494 976706729 494601444 237506386 302129612 153121055 391643612 789856365 585993666 114258030 492542838 436266101 761890129 432846980 591953158 585402260 229994066 756584631 428493453 898083704 536736338 797841630 976871554 145754043 391511739 422525740 815494160 752176718 52497708 423059255 556451886 785254102 814988385 137567632 815739874 190002908 98128902 718973351 793862270 225708842 663593601 553661767 88227244 237847874 531530755 88360634 14934254 151866830 295181550 66581599 792163291 325263897 713729182 451385305 865476941 471484400 237471238 775156532 3515021 935766714 755568967 702931210 750012006 255916349 50770819 494188555 894633040 627340813 359002742 936249164 351831748 596333160 658754419 503266888 401361260 94303840 76896645 440049737 615185997 638347087 193684081 730544271 76560011 905929203 570667633 836526370 594612513 814407103 910841390 669289548 637626499 666331563 72055336 913295395 104471821 12943952 284324630 31969459 736064669 811001208 904534061 214047126 237968628 265144751 617640993 237677648 712573530 936303366 622209791 210876884 342312797 834770624 450391067 566748773 255067464 564980751 775903020 817021245 542991814 634574759 409541365 152876558 189074924 925452429 621099659 392544142 889360549 436872592 464314533 202015001 305571017 414842321 108471584 836815579 552172250 495025333 730798265 43308778 155033104 96609622 515317517 592390323 682013640 298679423 696126881 34856532 622479650 105584200 310257761 860715720 777931255 790429982 226165414 682890495 79010052 273704138 862191799 944916474 182700762 272788430 628959840 285943073 928019026 713937676 686310854 89803300 919393618 656333633 685440029 924593871 250578282 251465813 630055879 632417397 924225772 231567716 945097033 812898445 215592193 970698473 211358023 115343815 341090284 231241814 949860264 690619136 190969998 107786733 435829112 582312169 863555840 812550185 415035089 694539463 720456208 874832324 328899512 36337509 213617838 751529354 774494440 354672691 715851551 26436054 990313460 672976085 689275647 794966446 392300159 821275102 961652926 818198292 752973378 282031403 639986009 724011229 409541364 283367585 757492945 849020071 281231904 26683822 209309649 587220122 110551722 585545254 294333641 387892998 672581445 739904645 980098219 331159068 668624461 679732993 784955085 754398955 528033613 587079344 487296536 59258964 330492390 999975215 664013123 216310425 132545519 405051996 632980869 916132849 415363665 924392370 83762635 356881514 889941366 981236124 512640811 842586686 892219464 809754806 600561254 803951212 48250293 387359799 63875729 125966138 223317810 64974739 879684343 584716175 397750292 979104606 709984721 722136113 540645700 463615079 739944462 780135602 246830541 510321763 59470221 820870116 559572055 841741161 876843696 560515674 780504279 951650488 312885390 137480681 382301179 131991653 846645718 358437498 419219520 37638579 315122042 909887385 361692405 365073815 180476666 352015805 763219171 425372616 571394681 158174094 24732108 93496986 862352558 285165418 49430288 72817520 500270825 883091134 278075815 703032780 362864595 801105264 93430375 965074467 448994991 480655786 214340185 895350154 548819135 206957650 10887760 562004892 711324126 590353408 639747260 612491301 944336726 120468183 975332787 473051783 900932169 512394409 754319103 823577270 996708078 766251024 299512751 143392709 636353957 211174715 622265831 146938742 792033027 703361741 747338922 259975839 160394192 19533539 942244294 969295757 542719716 159816524 585850105 330553723 923866167 943760946 652260205 690053941 235974391 801871658 450051933 353743009 169643494 512764114 801546742 445050661 797062780 947204270 662026820 717630849 752368630 814313702 66471857 370801126 223930452 425391446 72326014 96076580 910642824 983264264 606785815 186744250 47826821 842458508 269802975 821241109 191141064 550670663 984732548 296781566 167631438 997747838 910917274 365635272 742472032 242032597 465507654 344892832 636646999 928677564 168944539 537431035 743734544 81282858 478533873 230187435 852606253 739203444 244641290 765257014 105629965 387387798 30114556 800108307 562415360 888322534 900634779 833623893 60732942 137659737 427271989 83223694 488493117 421212546 875604512 870271702 439182592 98511407 635995226 243754436 961451070 189913213 995378478 628473775 587728348 965144926 52264616 623649154 688024648 627631995 831447918 292881657 450382356 894006511 746789161 895009571 34630981 615836768 611541284 893086259 742074633 103436999 337465056 62063525 538411237 15237567 943792029 886652327 838369379 470895842 121599080 497958909 496733827 375809953 927915734 938536834 976872315 548851319 512248765 95155482 303467337 738615591 375842193 233204729 28164640 196302485 792952551 248129596 177205694 366468684 389691639 635495673 82709933 19807704 755859830 527639549 276024551 40788462 622992009 621359488 35553019 542108485 523348309 240840908 882376305 451860629 805331731 390473314 267938500 91180952 48754433 603845721 455875065 217470634 380280871 247304365 84193810 494108897 556835099 173464209 948773308 227383551 153722026 959308578 776847985 686075464 357245572 442576609 399667463 695022563 449307906 828147966 859149 968075658 208601825 543188811 474102622 736114043 341327107 269612606 158275643 890303273 980154455 343295255 648578128 427212191 977573819 229680895 757367035 866989702 795132765 203731098 613813550 90402706 674451247 68515517 676411436 618653358 622631082 276652481 206774449 289314053 512088207 860946590 560323594 852132972 898722971 629589815 489909930 510714611 977469264 728253099 41222522 594441252 217760993 119894203 497831862 851553201 208097974 861887892 90019582 704703910 444395840 647282076 594738293 800672383 375938155 524230015 316944686 52265049 278655194 765461871 922319198 511033101 32341439 867453859 904942106 244723564 289913340 201148445 187915874 395657974 527966293 777077657 550108844 670536915 255357250 178642370 981871258 36452206 106906247 34468233 484843563 93117236 175052732 610218042 887630310 991812202 985394571 39294179 162327868 430576250 144148536 435229898 193306295 53636884 792813455 154294564 630595466 384960922 894947538 584571882 406025114 993033838 536508362 848162141 799374967 400064542 710064913 581844791 739391990 122011587 266467602 913478338 891277177 471735137 117084960 578865160 749524500 722246626 226598367 402799818 889878870 930196562 778898947 746195529 320744535 622212049 881322364 39595736 651335952 18405417 897211001 916252783 510187253 220006537 226828553 105574447 710046017 451922137 949292632 129450374 263085110 334717880 605990249 336064799 546573910 993489761 909450208 219635222 536631526 827583609 534861011 670140184 593879776 842865715 960850016 712244642 694372546 761203706 407532226 866199550 396344066 955268360 898442829 729876490 32515840 680494844 304027544 577814614 62017921 637777376 985981291 820987270 186309049 519371520 545088727 681383713 226601578 80443975 797644383 310317218 254176718 698419761 631804250 522687263 458788679 856730019 902695329 239754398 317908069 992758614 921104545 382493566 491858343 5412460 7566359 141594505 519792934 821214166 709548150 669749613 797431372 22297167 709961246 526744174 571160289 433147904 147008981 508954926 600064156 478173836 2785855 836010026 511939341 990032964 79353851 522613191 488524727 202069475 138998662 388684427 86939961 641655142 621711158 284990551 204992197 128289296 668843378 337173315 462633349 780698918 906807398 380742563 957478088 660768719 863424933 208264399 243047674 526379113 986819861 916635348 533858989 532739822 556717959 50349444 314833243 835443864 272877951 151767570 818995898 462740335 134477325 664535022 506064358 844908639 830396660 119766043 530252009 291646122 629672829 112029220 781015473 427683830 808328009 271326912 386259336 778409093 708820036 549850973 100687794 323865489 955416514 287917093 507306418 94797423 134211781 408605312 146908044 969772489 207633877 766461678 254930343 332663349 163440270 854491024 184107319 703810491 164819166 122380612 968539898 215270683 680835362 147158570 407422275 933856809 447308194 227160018 372036487 800872849 788293928 216974337 155610611 712861741 590888489 895231742 406021444 631399322 470882462 28812741 886268880 595246075 53952798 249055484 279310812 83520883 859179562 212267723 333269002 785554985 344851885 801617862 464271512 960221402 406721938 47434535 62754991 437803506 885817367 435131624 584795778 941737868 303671318 775716789 414952747 37529763 990094970 129265326 320272704 768413882 159560922 771707172 643265735 810550400 370075967 672566548 46917235 625969742 834900738 941826075 61998139 569405781 444845120 66572574 444857677 396701423 368013707 788551790 479369793 76971415 155788773 51170909 145696860 364692955 987329808 116726359 464719486 800674665 328907461 802799492 520818578 940333276 34769699 879358060 892910779 450939089 957337226 494758117 976902595 210471857 654427266 612442254 3224554 852590320 711095018 945305676 292317293 699988199 914408182 170209747 721303970 953788145 932103212 601834107 248437977 398811128 880930853 871211934 958235372 931940704 828290237 551405204 349465025 26452714 46575272 522369603 478686551 396922196 811024203 445405464 109582441 881354913 639828268 428202434 830251515 938973631 343287735 994358481 555416252 731487519 633677114 489300108 993191542 57800597 342250345 365619287 635543102 264870095 55554036 489559647 476802456 215522262 408428983 210724377 894218197 81386735 59699878 87138027 415471973 80316348 537458556 116148321 320613901 679682029 209533514 525119157 988922296 947357489 133556680 700580174 446366844 969880468 132933758 33855662 864711383 554377381 47113677 551720548 796152305 391073205 682264603 888095113 349282579 457489941 784706719 781018262 218511886 916234356 482994337 350197384 283182636 680614189 581115344 670925991 327027745 998910381 928909591 113432086 417409102 232335170 797633664 235019485 895542398 895448580 833137201 380154190 541438620 356299893 74187906 666323811 320506450 66852717 16641064 951876531 619638566 171656367 614163458 748933650 767427626 20801909 393830069 694408332 600418826 424817995 277330769 66736033 603531834 816847841 67614704 419963762 941598227 663930896 871257840 335191030 587051675 895215718 632700248 790066282 613735310 392539213 886966964 582215369 292108366 493413273 257751438 981439328 458035725 692236676 695662694 510706043 74101251 124597719 950120413 364981025 573695806 623951542 808312122 483123930 233587177 585112171 34587985 798199292 345826805 536881525 850359180 539106575 940604220 591887154 409422957 810759119 938631951 682382771 880495437 293326114 40458189 74621273 993918096 108157810 225760529 292125029 229555940 130930794 592522387 212202493 470076763 843853792 378330613 694629797 113525708 571113895 518279520 260730513 807734672 848864660 432699067 893952073 125839863 619206850 190238985 513048338 676078970 447297451 645677425 835565185 186869844 945029917 476242541 46118783 296120997 245810843 8393050 996867203 810680661 316852475 107823884 353492700 461323148 254969393 796259370 427844680 970030107 862039426 460463359 761725306 151957498 394717050 97209474 488957120 836701481 847832625 673241627 175745714 573255241 222840067 712243189 454783482 642999578 973951165 136269088 570500236 636995317 981065145 228218233 339400509 299341444 357883080 822033675 826057683 720734312 574189647 439820834 316492901 749253402 416068220 973238147 508128839 330757880 83971140 640432988 353874108 134629466 774518650 635649736 707876977 859830690 326678433 555457350 970844992 520272819 15335198 34183255 72835762 363954365 61318785 628444459 880356030 183470412 459549738 241702292 19846518 29655904 999135370 161843867 567475918 635095001 388886436 83338599 761313779 595532634 708016101 189960996 893733214 100793340 453169683 720177969 498519891 32285796 911628386 501609001 246780433 585642906 240443633 731756869 593461271 601339360 883202999 505541546 64430014 57801085 429926916 585728135 996175973 843168558 402302715 651783951 539470660 367128506 459000921 409937492 611633346 889757672 968168795 576219267 988595342 950016542 613862188 626466234 836968183 685602917 604738490 983373415 560332019 855510511 456952981 510361716 693855230 737759799 249277268 980026409 584451590 994415109 359327123 49922983 654965157 511430048 591788501 734006937 392353905 993536587 452627506 63470181 209503200 14240785 777532334 777485646 953736033 581161018 680957412 528086276 534458244 300206492 289703319 353411984 209641618 586470090 334986426 422691953 761011163 222192576 417932691 271058371 422245450 794862215 764645849 662192439 968772581 699560718 283678692 140761104 937012753 224218948 562749910 393742655 24501608 40774550 645552432 840098103 440211851 942503613 628873791 479249946 936550524 372593248 39388460 849921515 916529879 462281978 143202599 894500322 303795405 288745190 886269111 912952913 385873670 394976513 639973242 467417878 62454816 205012478 303424862 95547691 908149361 952498234 821594474 601198028 684441917 703990627 82872389 250569864 332251498 608040383 813010634 677182645 717428544 929132850 358944305 729334724 166890001 697332742 962157522 99151707 269952067 478107192 894636647 634902897 249174413 948313891 419770850 81788091 303833848 842023597 980814412 502052658 514853038 344106545 838147583 105541483 289829082 99509189 828131736 724823532 162913879 667288382 777067876 791736129 784672673 21371078 726802240 336110665 237045019 347148542 107709879 8769500 120298947 185489977 446728005 127623125 957788473 998143564 50183765 545619756 617030926 255000744 308769247 490644175 58607583 814528219 185240379 21197844 743725399 230266183 164095786 768087623 810032471 636366729 13187583 816650956 57958613 822482526 472042115 895229610 893416242 271256472 302915522 232378299 295665212 607465370 791048094 823676933 266955443 698314478 637427352 760132497 65044347 204288656 864325493 722579300 15121950 589114968 459207090 586474780 396876814 202365354 425584516 433724492 651166029 622856074 855215185 590686455 274038072 860189422 64827569 289328130 180802871 580308178 329338795 501220823 735243296 128335771 918138212 90529368 546379478 175714796 784697721 2077716 244922676 749474285 34902431 370800112 675927263 439206139 910335574 840590481 682638080 709272343 437686635 263047267 322997882 791896563 111789904 815077194 269450380 577606431 180077251 236724764 690297566 366778040 974975196 488294797 348806857 568889529 320449128 170120729 887863406 576116505 183193645 608703025 830080523 395786945 795633910 988836213 803879848 11901117 220252631 345583176 515011139 947900873 111904391 390593692 759716108 825906722 631832474 652916977 214973229 928736254 764567431 445927366 546489331 641480772 745806367 118111302 629523986 982387955 250936211 629494578 627851167 736403168 975838715 679162469 198397474 10769795 293559294 532787023 595191336 810194463 356905525 787976123 109935629 902439227 798640991 126175983 613758756 249339417 38278963 509893025 13556881 666273971 70943764 344262259 928367154 890677200 316577516 81847160 902228657 325128967 490584288 491968076 168601901 265868248 334576640 672518218 805280347 304386729 589217228 962017051 39795690 581172216 2063601 268673743 565416271 151038141 281258977 373012568 876961856 409641189 46675262 914105999 161633308 20939081 998248396 705381730 841744740 755791445 383908475 57064340 914719126 699415828 314124705 448400968 725795451 831725145 250098116 797688052 304451799 955256726 452603696 704375188 546568683 731016269 919883906 532622855 276468943 230088028 477244071 992811767 338963507 473209204 408650475 112780511 584651303 948461451 808189353 704970868 835995668 672596405 578926066 419884511 427622007 190400029 501295332 606440655 321995544 233099975 970192999 911396415 818563510 630214963 184773386 728036600 136293757 952378819 196837504 220692597 290911895 153331428 386290666 151443639 975206954 980378313 782750007 720107211 444927874 479608055 110588524 272478807 451995921 443284763 698555813 539880218 847501762 634082972 204230526 136577803 818855218 181507621 727080692 169106504 77514831 779398510 475101298 789328274 953208979 937495124 959319031 385777139 46612532 668918822 339736800 286499202 67619862 202789853 361918560 200635078 887832384 209272282 574150209 11304955 926717622 48040740 136758308 291358609 469717911 399105530 377094984 626409097 297428480 288058038 395889940 617111810 283235498 849379739 971131760 485673758 763482010 490825617 389751009 744388660 99770902 557490038 561130920 670156624 987612215 825174325 298587234 115778008 811985471 240735725 668133938 88565469 9399602 360803667 588702442 989817572 154900175 31778583 687969108 856083818 774832735 4198569 76151134 669578157 974152666 718954280 671993919 826344266 804328085 138315837 625159388 611291769 148403431 495610629 99688310 471718378 664493314 793025398 879693030 764826797 707967331 263977084 902592573 339617914 608448282 694850291 830267531 453235398 722794228 496030834 73501506 691875413 478613323 27564726 67058169 32388710 69816353 933836325 750104128 896425431 509912616 637979642 563391770 63297501 367979295 806560147 639984417 671528542 201955247 840361798 703340997 739515252 906223952 84527664 244097270 498295798 504608432 905824121 127834589 743761953 388857237 109601568 197972645 494942764 408319903 31779177 927686579 226739299 443655479 223777810 623597245 599057230 573822505 44278574 634129345 752847113 112268698 157412652 187948395 453772549 587343464 1356505 502891250 218478639 378259582 7254076 546104085 948079788 219063253 294549745 816265484 156930446 758296039 869380208 414744403 488423371 334717951 126734470 750890923 992824073 852750694 175155047 80952384 908707671 26032310 491100770 67665272 667269820 155436439 94370881 228818804 195809965 516444385 212842102 364139022 128735913 656918454 900134501 111265552 784403430 754277293 684231610 255187570 929687013 143913702 615861633 196719702 442330469 836937316 47901337 53541949 711304000 967028765 716315687 497206647 148631082 845464302 208481320 153825756 961054727 27120335 693244661 666721514 746564049 169077085 519005103 111326982 519709872 785580351 768894021 915129348 864652561 880521501 271482302 681370102 307087201 847862915 338375754 306712231 58323025 696587848 713698160 768626534 330649176 29233275 746899155 316981311 762677648 869005844 730790424 985474556 679734428 340843592 377261454 250745646 195173413 416693359 527318253 991205815 613942749 440928879 477398763 156497409 792843290 514463765 430384674 568162292 321152998 576428549 599710725 132116253 251623300 804722087 858264535 833767210 416016109 569594367 672953046 625916317 674451606 113231070 587765383 168571966 462513870 337046676 21267199 26809279 741221796 953111886 273489862 420478229 438206133 684767008 308631842 888000945 299965798 922673337 65372207 286910184 191963546 272799886 237625957 280211170 13076733 827250728 990415057 539871595 303419670 722763187 767503001 720117809 669153478 58469463 135944249 117588193 212548753 630962868 76877297 264479688 179411889 858891508 56823781 153819895 476265800 972475387 960714774 307026914 776091206 214344840 773022729 160330132 18167030 342614643 38604689 80012139 732482566 723032704 691890858 204779971 981702032 609936635 858774336 974894297 786503803 953719117 152660056 499916277 34867985 97465962 686746811 613032728 841545331 66363143 887998139 370255249 165344656 619312991 299268485 783504534 668150245 839942671 644218663 243274507 357441054 452166458 619656147 5918687 656218787 952365529 923407763 543334965 615382246 323773226 639177889 577639973 469483080 200228259 631089354 263215640 51235962 791455141 198928404 636666242 790453667 462484472 593626817 890315993 493335641 404239627 84927728 347095849 767024427 10108299 422354167 393223965 684631142 689674956 670229151 990477218 134455489 375795543 936898994 505156108 658057743 232365428 313603476 90758756 441154930 268508212 162575844 69812958 75043138 996354604 943828040 158728228 902280252 345517264 341373072 679974334 352817819 659705758 532468067 144938197 100242794 322935811 894458245 795678382 338836540 679358758 825020797 964392499 775499018 554810278 693966389 495583794 920167247 680525920 734441009 201481640 363096345 377057613 877033516 719508887 524079230 912769586 899443273 10551831 681341850 754414343 590640901 980482981 2356468 228586937 328932600 656585476 807757093 235762373 142652565 869414096 594804016 274531211 474184932 513262209 133236931 430520326 642826105 550872628 558104227 763710688 500729168 474941956 324736901 70416286 628383701 636193282 35931541 49631410 117558209 885262777 637851341 647744690 952636369 856704543 894319721 16992210 498407532 234541648 892515180 964000061 997294752 208945644 705343429 34392585 335425398 356384747 700702617 638630152 876099456 26910225 524198280 274515562 712106519 364480435 328159002 271519310 786605462 938690967 418347058 152207791 719641225 197084262 691574350 464054530 943276849 187504729 447778366 958814631 179068550 974108757 89042924 849089706 930912632 785410670 307554310 521346275 173515613 24906880 861673070 892539409 355966309 650369288 568277836 601825953 651861283 158647731 15688974 274482622 759959993 877186939 183440706 3675916 12762096 360408947 374109771 80417620 719482482 699766653 110235501 21650292 693075557 894411864 786878735 795050364 418162574 677612847 934491558 294582933 377086887 868608999 397643697 283938001 598541005 272294110 512254658 203016889 170861421 102872581 750020557 847679660 558257864 770233254 160409976 244306075 897924652 587392104 719255073 677234017 123740698 397774441 993396811 702720276 482701576 255623823 875172551 404820681 365261410 6818433 278884144 907291254 266440200 928834612 90698856 972494468 461087677 56398039 199216295 149423671 199608902 455833695 406265623 926584515 638165229 105778707 170779619 945573219 498712858 366724191 343660780 981289432 919823817 919991030 95990735 682814852 313664946 991710995 486427772 54309080 39047833 201726670 354303048 823844551 300461641 39780876 940205013 801302736 326222601 485303687 450854411 592222601 46542153 244006750 522826030 958583833 496654525 542787703 928315987 743837074 838947404 1431437 572861363 258489298 688814556 448696115 976173630 331965554 201288648 902603097 405195974 179423617 789242781 807302364 134360902 488916409 825135690 442044519 100140253 101488132 536945171 250827851 831070011 108746347 519495312 980498419 626276701 339059721 542714466 723141777 377479563 479313936 599849539 785828471 968910826 753592189 85171368 170355896 244108230 370667326 612586004 24570377 537465068 134012334 761819737 681179818 274703903 713417834 324529252 805183570 884500133 973757974 191032937 614311082 55122592 835934349 38287961 279646997 371280067 938296031 235854098 560123918 782045966 819983617 958005505 510935408 364097378 408387638 317568410 234621237 507983109 149809937 827728870 46151223 715425302 970213817 732448774 313147302 228619616 134352574 32763521 223776024 452372595 344120782 421621858 679109833 411399600 287265273 274229867 346658870 393705111 144863459 295553924 226654794 498553011 761479704 57109814 132632762 806969238 938772415 817842378 94005293 980434694 355887297 684844088 154714956 154237343 999894813 454553007 305329338 640970660 315585481 771312025 861906400 301334700 18118221 492654258 520000767 993319139 361965960 524664033 2408112 705576991 185013886 508868447 95294841 369446446 107067846 516084427 834299136 635902424 446990633 215121210 90184839 727465940 685972144 249889453 721045943 221133904 303936634 788404059 952784762 428647410 354039415 707421178 166697507 117130581 860447937 314609509 194686576 527527634 771894216 632498036 642685045 396212541 923561854 547978162 406269080 628025918 145723149 370799937 94140431 681885265 362304556 224013233 289182264 290099657 649313276 841382316 647202214 792628311 48035920 963106820 550354748 985132549 307076649 332568394 710929223 833414535 428648031 979780853 495110193 65418722 9580652 590504654 493527763 794236176 468588068 41067526 444856315 598504438 529290738 675440684 134538156 199792130 988312110 962731559 913580437 953325825 168414346 194001613 462806067 175516793 707864683 776406768 359130802 534267420 794945367 708808135 322043642 393126543 646934825 54706690 261564316 138784546 125583976 967541365 393944067 962975975 143186251 504711482 711546330 443746537 819048421 988089782 123394352 536822000 935705786 263738398 911395841 851425791 14910992 346984206 86172526 194421477 145845320 440110179 378986693 232224319 930465607 996989587 212586127 444526325 75768080 876333449 868023195 96393199 55565436 983500547 298625317 132727942 891097392 944945701 991889032 825650088 469830568 972943187 513057299 22503889 485055172 930091433 367777236 311867300 597215334 429714878 632187884 170564668 453490655 224960625 373093025 480935690 628220196 453514721 378249123 999486077 422674203 745553310 581460006 670368849 815440340 896023992 19342393 647519486 221318244 114262659 959125442 454687167 581993219 116031833 475816985 785460718 432049957 566195195 109432803 32582838 12794080 60975719 330609434 46330151 958774596 445387629 733464332 443003659 272165044 836956167 301855855 684496115 880391588 524518134 431674931 250000933 90848345 944516148 329660493 175405418 825719935 218527686 730197217 812060486 427288657 426672225 671705288 431525759 295768599 575985551 270180254 432810661 351711250 319305767 643053935 121458715 141374759 630416251 987046618 694325285 521835369 490793571 312826484 629355701 453923807 645154924 993670139 609997368 838810419 393785265 735976424 409756835 612956520 165622393 162009506 126134333 974869161 589206979 3758421 815265525 469590775 245886548 348788838 904539744 330687696 14517747 626624623 882383748 139350535 647966916 364527015 851195216 85199941 538140442 812009545 400619420 677618499 377564488 348657899 5427706 267813250 902248361 96932445 831701053 952821668 797135297 147160831 54270021 886552885 927549299 370260455 777878098 160070923 960053689 869155179 498261055 808386645 213940379 324150007 704441682 448722678 1983192 477376994 965378152 149865053 6037869 95533080 140379636 621351618 259497368 278266426 262385566 968606094 371539046 707092010 140741335 689832358 541170528 54397733 854419640 57919828 936414516 680184523 230154158 870927987 290327342 281122797 530624593 519385852 650258908 946260168 821911879 784281903 342838301 893661668 353214217 518173508 513581671 257195584 465258797 490972624 455262169 874254723 175291434 451066154 544970330 22474697 160837882 772350467 658679395 811500212 168843 716130284 121132996 224465469 353030312 859271888 9629976 895906758 986591559 784164795 804876488 586711690 568663428 892675787 964561416 212836506 340042136 39306601 78784119 813709658 844769603 118611726 613722605 324988997 131067599 212629339 518245233 231704386 787491334 756407863 309824235 912975793 163935895 786229512 804470364 105956956 247768984 915216788 943649970 330826290 908990010 232461056 166357447 250150772 993830174 215787987 396001414 39357018 115954572 226840450 863520756 607482770 788302852 949381959 759791584 119197348 775368499 273816926 430489094 51419863 147658596 350269519 637784315 558626766 555508566 144344604 513721807 315721224 795172215 378182782 266175651 873797264 832713639 984801129 874343691 297199308 896755856 401068833 576378222 321795040 694545689 169981439 605151121 51921852 146886067 899562398 332130997 241585954 168628170 865758985 804232659 741171697 291116527 172665141 68368067 75495634 772670778 923246507 829223656 398993119 650047576 50322480 250538319 860652668 503937595 997387838 339612157 38669130 144016435 517508870 319825362 660313063 131324247 254759348 448838266 406453654 776163072 643062221 179306234 20237336 711934956 770139604 529926545 686972074 296131029 995425837 580357137 451971344 418305247 668317117 548566608 383466073 967192233 234263104 648134833 505689176 853936758 47925110 548427440 426263231 651993103 278237801 901800048 38727717 7199186 261289715 347535989 794558569 34723374 637150607 564917829 408739001 709148071 615967616 535705613 111163345 177355506 276982706 716244783 38198562 548980869 618293324 7083339 233676883 50584843 433746682 306874673 751309516 276059533 42807686 582554144 689923122 333967275 100924002 25822099 102058395 817665980 678441337 189485840 233133144 597682264 639837952 361076255 31616397 51618172 665938921 734027772 860025557 300028651 863816164 487123458 71111421 566368347 248393188 623476015 354023530 96594794 66409862 221250505 534606716 327841116 381347010 44269386 72272021 204477412 272592888 975546961 605535154 388568545 988064745 276881071 932804406 256385341 320868809 890929539 885624678 302818147 919296997 115886199 442272886 419843966 282541264 697590200 357307282 725272479 400303278 742332677 247174205 575651824 199944950 181337376 139856259 199126184 509171674 615415732 131188748 70029461 348039282 858409232 304932091 561515059 925849872 233391226 779555601 537104924 93298544 765937594 752691675 982443536 799897132 23585299 907672770 568436937 288679167 556158379 763447093 34494316 496382288 888235158 740175509 141196122 694553599 777213298 943910800 257464435 947802352 402990002 707362597 869331985 36757073 489929401 247999222 137293267 333295734 747904607 360293285 693496428 370794981 480438215 749264850 877621574 448083801 662725032 373910562 519954361 139994817 934986507 303580399 663893207 701278349 168181678 738203828 688404715 813452581 496803904 888248498 375681121 448485985 613303300 639239484 495899922 881577197 105984043 851734354 775585856 279183694 533738898 646041309 244016276 335008441 234414231 213855885 203106872 620755530 249971534 79658232 985789102 285937585 523025519 723613940 468745776 677911031 856871446 979265580 202630704 760718412 823257145 532522051 400934563 638904108 601242494 164735640 890441645 19270551 841544372 189411409 470416719 489135600 918617875 781036580 170459676 120630493 642791717 684103973 217347996 565365344 114209935 871654313 329556819 910268140 903850964 134976011 477000673 154952512 609788155 48559211 764812134 513837358 27751171 664130289 946842525 548901523 285811081 746943209 105507795 629820463 254741580 325562016 740304241 525663727 321627271 303674349 431973106 381055098 241531957 498720645 386878110 125786163 244672527 757051829 532913026 525560093 773890277 269693975 57454933 390500514 953986206 631202263 246984164 140677896 117848822 89153024 238674146 139854817 429649556 758146683 478390093 691061908 490304146 899076300 283529329 322647177 440824755 890700289 698595509 640166251 43750726 339781320 22446237 131097872 689154478 340386021 805748451 796311760 747094466 171436391 724271565 311942002 508595335 157587876 159863110 892793508 217843503 83273773 289121284 62702154 267964704 574429904 205998068 275744103 173948943 805707439 876784738 576248272 438002675 401731399 311853238 297620420 739612666 324246951 927554465 646498444 51682220 502494033 745476127 173110005 331542394 442641078 748188426 865085167 749949158 554004791 145173263 175038975 203446094 391625865 881121933 748575571 637626441 812124469 711813604 408708849 637518016 132551300 425720464 297953505 573170736 689491961 911161078 999192089 245436194 142614782 94634415 368267669 101544839 719549062 873740925 10135633 676387368 757151782 695917973 326375321 607118687 485317906 536603348 115314657 522280768 811794546 793637349 419802754 807178734 116150955 213170007 807597474 401574839 911247695 666979656 739112444 865026098 300263010 745206300 890547848 367524093 681097497 894775496 385982314 932234397 428439118 343192489 525442864 254828487 379340860 339728067 461378135 577646450 458256659 246736488 971705139 202623430 33809899 866022967 213278438 58120593 39066878 783819007 673351132 513862190 795587776 437353484 508015047 897494524 430235401 977670241 367465716 584583615 560786789 147557726 818228881 216419695 898848566 786237763 540831225 260694488 900207891 547300237 133638481 609972157 968759614 338126368 803698335 843961467 896330208 310051602 190569201 28916920 362353018 976241048 195092406 636477065 331517927 911879144 847945122 181993842 788059030 166075265 845767955 465408020 751953341 896158845 31378907 441482728 741219671 603271855 809923486 811505318 379370003 78870333 49526996 211091460 63037664 467608827 50221896 463383048 394850966 329488487 719796239 146373518 771017516 514612319 986040913 910945326 261838311 523892333 518060793 407031286 976657769 926726425 732838603 717429947 859583288 427890880 813520758 529688979 58357995 441452992 834706216 325436092 964710879 562288516 663076987 476546821 820315226 935594036 95020754 570743937 26975771 134262168 136521241 934366116 68598510 878976014 300335275 259484256 682959847 591691112 738454115 420213257 92667635 465066296 287164564 805297351 522227358 44912269 893120772 517868600 559971514 64514305 155216053 965390757 76881392 589317248 357871895 135424126 384388802 135509033 652150960 337061897 178093641 797396662 341402418 466122446 824564017 576875138 229119650 532764524 284313949 921830343 797166177 570968650 532909607 682700930 865890029 578429702 494473789 597186623 258125354 606877459 887772928 566327791 508924119 640711851 284811227 442893769 430459192 279105909 881807521 756510822 23849064 298640006 59400919 899945694 129608558 884534347 817506038 405799360 275434634 188286099 470283680 202337795 432361615 256100556 266954122 422086737 104998119 964473866 994276802 314373229 192593571 909997948 949807223 694278728 477804087 762737418 6592500 474895368 243158649 659556887 288793657 922166947 537593080 182045005 427689416 597896176 755232337 606435802 614643745 972951219 542612163 10556656 604356126 869813550 8698554 3929727 723377924 689293227 990010388 873933203 247947498 468236978 578173865 715400072 296102033 998865468 969903620 293148068 976059635 609761696 574451122 824950880 347549336 983689539 573671491 209256291 296995124 360167291 908936286 227953066 998888104 867322638 143144456 412555713 795991541 156339144 861446175 352364139 599746930 711057529 293539060 499138172 856823140 738214724 584450460 642408470 4245101 752164390 997560961 563990089 31528149 553259094 967955579 124267646 144383053 858480982 192302780 275697308 824731851 167339398 2914308 747410805 405759453 36981199 267059011 575349825 15801254 623212511 604247649 17179461 283953241 335130128 22571126 344592613 636817565 16421912 401586985 626742255 55616123 77407694 698558171 192750303 981785206 692968940 241320556 248223480 152814943 533222521 984004996 311120743 312738170 411716892 566072503 483428858 389955150 496266927 937033601 526363659 161079734 318300753 408807921 945171811 844260937 349254565 569132670 205337244 40618203 278213727 913625098 554215072 500531243 285894232 375138372 750392017 192448197 447673468 433854734 403818622 274961791 882142718 325517908 219927086 912116080 874179666 987411075 86529754 147880946 90101483 916285168 511931493 23857044 401463616 579502447 578977259 108960906 456621777 145518962 405838467 323694747 627370029 934483407 608091946 413156045 29191142 475188936 335289159 338557922 979993634 81267654 206370638 151793958 126734493 758326591 805898028 469852714 900177211 611305051 957762426 429226513 891926003 346759337 500684623 926784182 758123425 236929262 608387250 5332606 80286807 932381067 589502717 321853048 426548339 20381736 657716325 769424774 162394506 790583696 116272637 535433417 162982346 803285719 529971943 899895353 318339536 417634142 188557501 519129463 238848844 818238772 816223036 103291610 627147838 954196805 3622205 44118615 383216497 67346785 893400711 365893424 870435504 34574456 255689543 482144173 239379120 723120881 588007832 395110787 596020706 59526496 551155863 826920766 422726703 93266590 429125784 330118122 292900656 658774025 276737940 916059432 696481322 349774276 644852642 251719432 53415871 78527383 30998928 222632818 735117771 869343566 460411243 158502055 493646028 111588069 612619752 724023160 199645798 889938172 332263297 384825254 527373732 328549757 835584004 522431629 983574526 883113812 177215023 254042773 944476859 881149118 595838739 579594145 459597364 324246981 304304324 823591598 910122338 899782737 611337227 312940381 324548857 489209857 831888745 467475527 914094328 225451753 639165025 887248100 638853607 291836280 801301292 808175061 94145801 686453863 671342240 510544869 125272947 959497953 996845613 133698978 587907221 520729563 818333389 376006358 672648536 722528751 584418431 960853684 344807778 95843679 885449518 568026392 270345476 217692563 599557311 519658802 856085437 33332596 656138666 872237270 913638183 475219271 659094582 676610412 598041059 106152179 507689473 35838014 156025598 237489377 635311519 850825711 848611172 10275510 886129777 283216342 234691231 98407658 776041282 394384278 262654667 379550715 731814862 663554910 48711175 33856729 133938838 468844879 474827296 661493134 468180882 222403495 598703550 926370599 815905563 585779961 280661248 723627173 425349304 895935888 942505273 451681312 755387521 877894658 731173416 949588042 3439548 131023963 994708417 906901652 888195687 170962378 25031579 884514851 983216574 801101616 436551411 672385218 146480315 755122741 452601677 305624903 66435130 570613018 733464588 920419584 241854642 807063011 755157004 418451137 734914891 762716775 665554328 697208720 707696533 964582658 109721870 410954024 834338103 560952039 96933464 728291579 242346608 397627952 783857709 583884661 285455798 583013680 655044985 420463932 51322751 552111472 587366901 905940013 613232100 572465907 49439883 854170643 227005133 543101107 751680534 754821715 208913709 328192407 51479226 609572761 805555069 575364868 85482218 260235894 720332091 273597610 258559185 138378655 863530126 687589501 517031594 203504726 550019543 819563263 689181694 837990630 230558560 680332657 382429864 120057825 962473789 93678380 40585077 52714478 574397061 639636037 453402939 504129548 116494997 390470142 524577628 669715966 691197249 230000936 961720890 389488299 208458067 196964514 367123229 620862376 169630754 225296181 721236467 953812065 622586135 746124915 670319375 481756093 917060716 636793183 775890216 991655482 143867954 391937269 950627793 111450460 464284912 349177091 939506932 345774127 67730645 584258700 319143417 255818578 494477302 535043663 23133703 929488188 617760759 821899193 913738941 782669867 178930549 951663371 442741394 39434308 754165890 489824096 962553473 659931922 219613022 907036176 659064165 859608083 290713029 420263446 622462198 255436152 776721873 227982980 324547011 259920620 111802161 319207544 50635360 431621569 644837159 739913750 100547454 909621891 891872169 68067251 480488998 594682864 313842585 598221242 158910347 81463459 91972986 36810761 328693221 2238961 378822671 625164497 201973915 71450567 556474974 644068570 820464223 405907552 325061708 421380877 501275084 631881550 926769594 514611531 308119478 775338635 636494600 657469138 75458660 428877343 817259589 905712179 613509521 603655207 394973933 719216101 652418772 555369444 358994997 376170067 57673384 946597802 807167212 535769732 329564439 105278983 823962060 980822161 880323817 409472754 850586482 146795864 604663112 945921844 878155901 660671816 69321712 560867033 872712355 285704759 618434157 262775948 299275551 14563313 131724312 627574318 816642720 451200053 552696264 203568873 328950147 547167987 19766573 591554451 74549687 564302126 898446230 746195423 655479571 574995966 536399371 475725745 728213405 695992090 335729662 557358956 722334641 85736919 233005552 550944227 45906515 335060580 542604505 265700752 759112521 969367523 530639622 804887172 722457859 423878660 644381757 249539184 571802363 804753428 172658062 486467901 245452522 950866655 5874728 103495896 793433787 732056251 542965721 680123643 846133300 241249983 940549323 927161235 532067858 319059173 621587156 261382065 176446802 879699749 988922000 589988773 683453751 997522178 179590567 24191405 768212423 940738357 161434672 735377469 539014173 498647086 937582783 949591473 253957564 552888082 696080161 356518125 338968887 18837324 928286281 399501385 471069334 668590253 662825659 956286620 235198357 266108558 347156164 942709712 340088801 205055807 961361321 267456811 897075855 127101010 16266302 446075158 923010154 63749921 13733972 998284262 100002524 421507550 786755147 641525486 16904134 762370190 317067315 343695524 630170275 887108911 372268795 880602446 816664465 881442983 260691550 505074478 903619273 738822855 984819260 274340925 845485475 815105393 867039236 445150164 158918025 929931169 312742739 619152002 978763798 255627007 753767638 259280864 423688145 420087764 262251280 253425522 395024210 487179911 700550561 875467889 972201499 444704814 84218254 71457897 919436364 645218534 64364539 307468534 50723121 871814869 362369450 565400554 828838394 135293948 639514437 664633585 569805655 243789386 686996699 935595271 906913283 670213719 274153509 665376629 172513359 979032402 967053591 266277298 24693650 580029338 661257805 131195548 484421018 184408271 342492285 86865002 629894723 259140091 506370499 729212800 849006578 516240922 788086540 445656315 491075928 215850782 771987596 702257668 126966987 69637922 513731704 835199316 955204093 217806226 106135823 361027137 996437606 640004872 57829666 863476549 62212096 528882043 133858638 780989774 767958095 999639937 161070642 716870041 865782580 132501060 835808763 260627035 611558823 55600535 741202837 644065597 845208651 168961749 84837588 776448587 235607142 873661815 242384539 119589773 67278423 515449525 161318534 981148863 737775535 379850982 479604122 315219186 726722428 647638220 603178919 449637700 504438400 716424306 915394736 214060998 223861890 313844596 940807560 625956200 848990168 67979372 311391144 433310793 513826959 118554693 934891779 288743569 177083837 165986770 140834577 559606587 854531367 180226981 882122401 20155648 371991793 777509916 768037647 324033518 364043177 733000781 241448717 659220904 414311126 897796856 247877853 16743704 418918069 356301375 292968100 493381067 699455771 721977245 292242577 683942956 376380567 731554562 701011714 423309039 308854055 288387687 395583856 507634990 34382421 869729506 874037924 126723628 903527819 359911107 245118713 593010009 745497529 875781060 506404617 26315573 937216834 828810608 54295469 527637129 969558160 793508880 640125516 191622008 393664184 871646382 882425873 738882684 381249139 466913957 474501109 959143372 780066733 950716246 676283094 975030178 402634050 871564074 618821664 7378447 724747767 905024299 404283646 975186056 989193862 311627719 98605656 419859330 28703954 616700889 253917433 318490347 63049229 129067996 873554637 167635569 137080639 587468451 940491264 306064167 798088496 816087280 127850033 368171624 396724766 837068276 331339517 835635386 335345092 334233731 360807035 446078751 3199966 947838219 748022443 372298337 553666491 946129981 515118575 586362376 480237114 335811767 250913187 407029641 387259234 984937643 169220499 743309658 843636839 210538556 334802378 926269774 172133356 524792350 793507942 541541693 597983436 339105146 205962520 586213934 88202572 700271319 89595556 993093076 312639769 524095567 946325460 91549776 734417216 994809433 589751330 709887645 799957411 139806167 468133354 219004951 928060318 917538182 500713616 169100316 264923270 846091681 371067402 491048236 587598616 557298838 386305261 208737641 342490687 556997803 175059854 237316305 452386712 168277315 383954113 109132550 785532296 479242615 58163123 533350897 628262141 867517904 524537078 399707546 769816319 254785619 853255446 131378391 78941368 612604534 204001609 216319012 705093916 932125665 583760238 536105445 405650363 491510192 822288537 658374088 558110080 985490974 8292462 561092902 575594672 628923377 971795811 585177947 303176219 50377453 743941457 379124883 761012359 548334118 285233141 906467106 427382930 95623100 587095825 702648616 222640945 217128954 760964710 668268984 544847731 765353888 307723319 150153633 910993365 714495981 592791550 806840793 129310128 686018288 745605470 190980630 357006173 72624564 802309996 604017105 472485216 509672074 279557622 771138486 383975160 541739208 666896260 520381846 305344648 62139895 895405397 407435115 116035445 689149910 445525225 164359513 685485497 565228493 653426088 138258835 974408449 683581477 428498044 699982274 490941841 101793984 218250805 548931230 883904457 756151897 2248768 487067188 615295248 360451063 487826789 155164402 403140756 850233509 296089841 487839672 593244393 775751776 822577044 911605114 299540339 795496347 238712454 121036871 846277045 619455567 884560609 399320466 130559350 129883909 156199033 155286051 69499352 558567450 292845727 571634525 860472533 948768585 536691888 916346051 11923178 13161335 197453272 277396974 707416553 202738103 921957648 238881699 329768506 888537020 227667202 754608474 447651762 848709347 263997005 807900121 610967894 748563916 179548963 770071612 377478526 290926141 36284785 288736378 739259254 886280550 176973908 65100016 67711460 975671622 98250611 188207078 882467120 859214601 963800010 110405134 428100339 929670919 295706911 175490078 79825045 283227251 549086728 513915766 765549939 89935409 760369038 829511234 857356353 858791041 224592063 617334339 673246838 649394231 385891716 820357849 20374149 316679695 988920905 231230435 199146616 194457007 942678280 800925403 541080734 16396396 501723517 592388359 481672481 549690243 689808556 489152497 252832615 632827455 638595344 827251510 771356122 341693859 144145434 63223427 615870724 207674912 116050494 864591744 381038589 97190651 344145371 75417799 982790609 173313635 82958852 733765431 480045462 519234959 700476922 107684133 821077617 30033002 19680600 955147989 604933122 169068025 450520455 842506210 11220435 39396283 249318274 920511268 975787662 2744524 393332167 320248502 431321783 613283398 774108980 575397400 902073790 325597235 427712992 696203669 621930501 818966310 170264896 247693432 747517576 580244111 99983979 447199858 276808964 842961784 989844434 445028655 84096658 732761614 1106201 805432054 968328801 650345024 548796535 103334593 648937563 778491822 937646893 595227984 898674722 783063875 482970091 572728676 19617937 977091176 144461613 663556265 496482637 847133671 949140823 994352594 519652603 181027014 121300918 547807734 12954753 242709782 349816859 994265725 850871018 748920462 259570581 793781589 47272640 101127442 139415841 704891060 962834541 477384217 204684364 50524499 538350278 559693552 369066406 769386184 2486292 190927115 774082345 707240915 33376681 62693598 811920385 197432459 201578072 247342417 834551166 762898061 301635756 765902345 469247934 320722734 935233884 606942695 146677909 872520539 444284302 783731229 637023719 69788193 132529774 970155608 886743634 926939250 415867379 683104341 151237350 151110700 979732757 566390733 924604639 900338664 887145973 658419441 727498898 870320394 429896519 130714659 335768885 493234722 782447478 539687870 216800323 965904685 744868652 272471621 712473793 315061962 940914357 154455620 706619422 297514434 137843212 635701517 698127643 62506948 161281860 759559420 465101152 519650896 459667039 508142019 131450436 11572725 823403943 265896426 504172911 66192911 66215356 165512494 196418223 131038265 420284026 575243003 609027543 122168220 590220166 511465314 368059705 698466605 603086927 491469562 392193815 523188862 39249262 886313024 240028208 843094304 339526921 361220514 134233014 220211367 104147126 737537266 251948410 596895727 473423490 974747950 375965768 259873883 763229680 608041788 674224884 857095230 416102349 412467576 189853064 763785666 178975259 661765516 520609234 363227538 864917000 759517683 799305059 901638985 904899982 846200864 803898610 970004431 791910992 811776039 988195306 611620185 369072189 351932071 727942465 556970101 946646641 414394524 820494828 93640462 527609235 408342123 149101255 543310706 760575905 715768043 457995143 193000168 362227200 27506661 170707164 348058380 260305689 309431012 486420066 786717309 849119787 38150591 593597812 332839555 948357191 12333974 362774238 172351050 525770970 48552634 278333864 190828316 934073041 212149574 726445317 847473890 235261110 34883317 23808849 120060982 586016889 740760830 98979157 761706801 858199727 234247174 949713512 165861295 256754558 158784930 448006793 899817238 310660465 16943455 708286023 370392279 715089517 756705986 329513640 910808621 8602001 481195795 97986701 631060534 538028990 838855305 92407540 770509671 449690901 689977601 376758919 679448104 56775381 860573509 626812081 374840657 265247435 316951182 954040038 426529487 205233400 638285555 448809182 793485243 992532680 825426728 832217177 161138746 958654609 608156569 241431420 128793033 640842867 864245701 289845181 423615717 463260493 316364732 504444633 705419154 768667285 631120305 80278857 865464599 179852052 181054894 630386149 32854060 352575398 46687536 139273603 499213935 694008867 633340185 868108723 810046388 708841705 361009648 519896680 332373131 36084602 987337508 750086649 473379827 170264841 515174585 771066336 333101378 22465266 793581190 826783767 822708039 862308782 477742134 767015296 542510733 691449631 326963951 337115621 334907956 116090752 918690730 454422662 983317945 17215277 646277827 405062869 146617960 229042289 935453113 241291587 98603740 259424960 548070157 927443492 775924329 751982512 374557148 242265450 616624348 721698809 237353954 744162167 400737007 610897999 923659815 818390874 628166054 213581431 320304393 931125846 521966986 736617998 586604052 386761701 134394738 584171545 319457486 577904612 103477409 603883902 360825468 468680954 736068721 105678025 614402768 464592769 724679138 123929259 803540295 629420705 227366033 784077353 650952796 790569085 654389453 921864369 387341761 349683658 157409541 58052372 449486927 468235428 259017755 487972747 546200763 139145847 763133260 997599647 485226478 877178734 648052292 745758153 573414938 287379760 934459110 273275961 696326790 591296703 732945638 59394508 87461106 103804488 741544070 762923509 924507498 792241933 25395087 55052086 335708496 987266524 552091025 935874834 564067706 872808438 312953265 883409494 408639942 847096717 881234551 630424945 899092407 498003362 229425026 409443125 403998441 653279859 787816851 129457784 348570569 965499599 707098963 787084039 288026973 177985272 957541751 36061381 258341703 728258850 627616058 880359698 933998033 365616287 935672962 535740825 488683348 162124367 297029780 786977400 277526532 202855662 706005663 627513164 202231303 167717596 1588386 209241758 327741143 305960628 681312120 209168638 137266764 447070138 771530614 909450127 117035794 585548081 824462668 546805957 379298972 389468608 361150448 66073301 529947037 787095839 463148713 712951664 584063591 465322657 868663994 145252313 542816058 729144503 678075252 456450519 287185936 653945011 210818398 135602835 655285845 598105402 538275536 809791368 35983850 949334101 669606635 130472758 421761161 505262788 358452810 63872993 802856414 388203215 253501948 407408010 940976363 398748879 357374314 767267118 676647023 991173970 374694347 581993279 814596569 319513154 786878028 124708121 678962058 55787650 647489709 979922224 957816361 145093933 185704358 554767922 608145857 294633997 788664760 374897702 696412387 618474465 963749636 240883823 624913266 638223178 956570759 744824018 98825198 787253775 71449008 772684725 402956545 966078617 457946824 639425083 603671903 637999076 668738690 110887432 506252580 522837431 785339744 361233329 251282672 557006031 505179837 48727352 256611550 111212694 504282371 28204910 300753933 442295121 772421207 656681206 955024227 296694997 371370152 980460538 796246954 841038491 769801401 55871323 581424521 919020453 339425740 10525834 757738968 426988547 937318417 427868241 727844338 359356614 793069674 954152855 518596148 759480272 441407281 321221747 490076498 835268606 715936292 596563062 559771659 908475059 264984021 448508127 182992121 614149098 876204219 601856406 567479583 187547759 72592655 773096916 451596128 614282700 635393009 103975345 149885118 718697627 373611269 642840615 174990907 595541298 582089399 604062080 261222474 278094259 876582075 441917417 655542694 590616721 308058549 86167052 253924034 765030897 656074304 437836437 475880955 615067438 955968104 41674758 249550891 541062232 271465533 508131692 539340447 125275818 236924005 560693450 834499975 113858601 205502741 374809212 902652708 263164704 891440554 685747893 528567837 303913950 938077539 695616871 142264299 866029860 701197685 325313983 927765322 560186961 997796597 97573214 234093972 86033837 327904027 510430198 118987688 924260499 763139758 13314801 767346351 573849661 808602996 393883917 715952408 552883718 364614466 258493475 238548434 776539133 471752280 37908818 44877684 485704066 6079830 308579384 517051636 138150266 143323297 750829748 387555515 720000705 588093164 188743501 890875417 745976318 786650057 277885979 892131291 749514419 418352668 754093208 731251686 479858286 568145567 819015446 726790264 103756 677106163 526310615 74239298 399887222 121623719 30521709 41909260 557881904 963091563 855405724 466288986 632838173 935726191 495700852 142752139 465490410 521253497 56037524 191468803 982656157 837671518 122510911 561580165 977880917 849545198 793485815 220845412 250047407 251313123 723287422 650555827 266171403 694236045 261908241 41682701 799757641 465913775 850373011 417874361 380412549 844623738 692074871 197608889 232372526 620471630 953049848 22666142 303943579 804246360 540006197 757270212 402773669 942827386 888236919 226985433 655221613 549773561 782970264 576459724 528152654 607636641 283489602 69140962 480301390 720559953 530189239 116156951 565609448 152054264 122263034 316056287 634824553 827527158 314009166 97324556 786828640 349204075 275374235 578342114 382110881 268969174 965954428 394745193 442459390 134061527 499783788 117695321 295292660 61867238 537390514 757599866 669720524 487448870 91519017 620630815 895532226 785997633 529115590 870953368 670943965 746031948 466642845 889430412 904049116 444842824 543195458 950970875 629970102 751694520 831727466 862467787 575874491 422634412 393477597 862904463 865158721 156409364 72744813 347111078 846613327 765350073 673937664 439141100 442041139 997696972 379022697 147122769 83805190 889170567 118526319 909989155 855882970 425133153 883241513 522521019 886398641 851216115 797845640 301853840 216986949 817169255 395413170 457010509 898907802 636723258 769752623 763573137 358214440 254907910 426030835 32792114 936181392 59618508 274852217 861759315 239815565 182548212 873041106 574770738 997096944 452842666 904843666 704515229 525359444 41861839 513921401 561890341 871742460 430463723 882590500 608012465 385519384 974307321 483784745 826843377 244429247 472795812 355585931 180846348 191180896 219632999 196349706 978992652 46524409 224632353 207124341 555413966 75917609 958714163 139675327 670272216 23421503 34981087 688391930 212838626 453652614 609465095 355366932 816067979 363967249 322443676 897617072 967397816 382288551 782569206 654593549 393521055 838688856 536027699 439302266 966949785 722091045 896525747 436838261 850142720 426192609 261876085 754547332 928674372 542801517 68333966 787051348 612307491 550418006 161891731 635554476 780479824 713157105 574036960 892333364 815272115 488907749 544396380 262857772 751587858 420786669 802153321 134975656 695205248 501727413 287537435 556781489 912270691 287593416 778221913 71708260 581698371 586799627 361524253 532740782 895200447 637423279 601721880 117821553 935766195 769708608 943220460 840198139 908640063 336626354 664754705 623910561 829087142 914279015 626487531 475326803 31182176 173629012 718195027 67288049 933049441 37314556 782737369 200211231 551725041 980594811 250868417 512095957 849266604 782738540 120815837 877077109 864676267 382007888 330466572 880686569 251304484 483722284 585100220 361380836 329152208 746150271 414176668 822845391 914727512 528467519 110332892 136678687 255698732 807651860 299612963 461935124 769129718 743065388 210663283 451872962 173463985 879280838 960797558 757955517 646243636 105911443 750737099 811651306 654627870 751634223 626574970 484362856 118993363 107841379 596745967 230131854 155645766 785011801 273641930 572545995 681254043 575995425 328337533 209204866 964936905 969364157 383115679 882512253 319337698 499287933 21244625 252564181 713151894 526862262 609982821 765328908 279748232 557083029 366652238 834089618 106201250 366874103 161436523 513927267 471428399 855913686 40638407 693427576 462662236 597546114 958103146 878623077 806051027 409979730 237954704 779580518 837816738 943404775 170664120 881501454 391980397 628411192 955904017 291988597 984148821 133230851 853275804 540688780 453205223 213698489 698429341 367872970 916898909 457559890 224777057 47115929 210495747 7670751 806924279 475109366 771568490 873069207 557115749 232380101 677435220 393722574 848369996 298136343 818027639 79261940 405836025 7009616 441266304 474834183 464461643 711602571 491504411 433016992 707061881 697067803 425095368 824938954 753849653 139454792 788630370 845861167 983031427 539125019 767687573 182029430 725570811 126783372 305224663 859645690 946035596 944733887 180999307 111091404 222231200 956398011 482925615 202612111 216344400 108749217 282558612 725145764 53617204 502947903 641566072 343817242 321428567 554650316 179278489 875596227 413788048 680827558 437799889 33446222 344778954 642458317 708326636 469519426 270161712 238118432 607564748 242951384 251863252 379420824 900911655 935278645 330203779 460497207 804221761 978485593 218763437 393529536 163413556 514240884 336716602 747635410 663362772 236131400 305192019 667232552 862546216 914311745 563047380 758681732 627385231 103172855 89760231 558120190 396833831 427931224 631505683 996162575 372106757 220796343 975991611 267417625 266545360 833102322 875130806 304482330 565559018 946067784 528886961 193420683 4963533 818185108 345586898 291765632 803900836 865071675 698440530 692417289 428271076 649112870 436100678 767389447 651986226 605439313 152780983 694466275 529795661 884349503 212345199 735158337 298767238 54780440 259213945 923037664 220207631 755999581 556958339 107696325 489190626 815151385 173695729 275232309 369128587 901514068 2704238 83239557 93457106 259371693 301063393 821563963 112289533 31617506 843347970 689864308 607802499 775030873 162949029 693572636 289450128 519431644 782105235 889334654 540631051 692860985 835383279 282788747 77814886 295743639 559900343 876099478 336515159 211387975 346977060 405039643 984381100 540523655 365826641 37734032 906241154 336007366 18191693 230369584 811328512 436763005 313162769 652365582 947285084 722891155 240419387 572891044 62505593 337785648 527998701 455336048 770166453 748589891 857098893 471974223 908012349 307566494 986702636 661531680 782179999 202073055 205923255 135897321 450394953 402999572 29668924 17814194 367073266 940477110 163972682 850743113 566945422 128138031 330436553 447605310 637210420 829375367 551957145 2022440 762591674 619936817 568091256 846466925 398457787 109957077 484890549 430053708 744304074 452898337 387841049 401464372 491793290 264785860 154821145 417850501 917968912 605298960 55982486 850457770 373071641 621632451 602194299 523158857 198388584 368739202 842726496 911950680 736405610 395447481 101467554 444945748 648258398 550915098 495862979 497211744 18613734 438235652 126221890 160112548 140854524 192961235 251874448 508104183 406744304 364764615 916327799 687551581 266139333 802719342 349603973 121699842 734240253 827097313 395226660 52237987 690256393 530933808 218371708 848014609 131947687 582214287 215230168 310935853 229040878 832271242 746124024 632196820 127687722 451733289 501966760 162105863 208068474 214645815 800741759 515154416 494457610 75814384 531546195 104614028 987279107 243716511 347773352 140106088 521655771 28924733 270945577 226812292 466979177 704631874 220565665 458918875 604500368 228904626 767066560 845415413 922481049 697039085 19742869 814680155 316412075 752132633 917102541 962952478 512774435 89824074 805958459 637653360 843213792 156711977 946701091 855265425 267588817 922708732 221660226 949457312 625816869 814813982 30063169 391718713 954538649 890376571 980127836 548464 94504837 502415367 257116314 311315840 263569726 18581693 677102675 429253473 820274637 212843037 176931785 920678815 302188553 168709906 648189283 459277915 732822448 648961982 373188528 398542421 449174436 76401122 661003152 616993022 755471723 819603164 202264263 20243365 927722875 297152309 287454406 39089992 312922177 619888035 223608174 610487083 330692799 44592595 714537626 769484922 442353854 153845655 475350861 417231781 137061164 364131907 883171780 981370545 147907294 333488660 540982758 861844625 995133627 340892708 21583492 130848966 604731133 552977058 971804205 454487073 474499963 967831317 65881477 406916190 829446957 729832729 905571810 195772965 253394234 338256892 814779139 475585174 283601030 258898064 394448301 84049852 203644474 882163622 956930487 316206612 605011019 301881382 777000667 603851797 151569987 482218256 593139394 234745637 739963932 196357255 969488906 594963785 306218863 731956659 274318593 495487795 538037824 875447396 849580607 337462041 575067455 517801320 305221353 379991585 172473455 793232013 550624573 166622865 707097385 96335571 242853366 261168755 548391726 82393761 925409417 901382771 798829445 216059751 231807575 233758238 725448803 532513267 220020671 225303111 672263486 662748429 168797075 547135147 344041092 914155675 702560151 253777183 162583066 482457487 174199388 129972625 533672819 40925444 959819846 885529888 274050543 951052983 641575854 785808597 493589921 43522412 51724628 713829525 328005221 558940504 936847534 108386406 231592552 906622120 863805259 530108219 119724590 899188374 946760295 141691808 337586609 868379927 283898072 87185868 538472057 580329379 973703753 690814950 308753712 703428383 307663503 231195700 515939273 322893298 363982699 265563282 584679185 254486508 946508157 904359273 939418607 627114069 745556599 976397117 924565820 307438015 173443856 944509794 846470862 382118761 244636091 808752634 349790640 961589171 95352201 647908946 189134355 194972140 663969474 914049068 177547375 655367044 919537867 861839039 42646290 633161526 769607875 691683444 603047033 487360538 595226992 222094239 646314892 782612222 110990651 712706404 509932072 689205461 964936620 430929544 558414311 648250643 922111812 620362353 113527690 274238163 389401255 363146873 819382637 121527725 581499532 944749067 50550400 586343500 254193547 631194496 627794734 641445313 692092915 205755704 890707567 383785575 692999521 491916893 954957012 97007644 95080672 144438976 184670158 512842590 461371321 610297445 135432598 687680107 249089678 666595327 139739108 326002434 200301959 743787872 844284366 357328473 973171011 781868873 785140713 562162006 736793420 774881424 895859154 493378539 868612736 458036481 634047067 718281176 800225567 918251028 474559432 534513182 704582818 905779609 727943539 871716619 265498356 5489175 904354099 342031624 588717632 360378879 848494284 551798511 314201299 435911188 460332973 464740046 433951608 27423045 989230608 185083971 218657014 685549262 187364191 521965275 821952631 560378477 355315936 915211510 669494942 599486002 170826287 130491854 981881437 243066452 606588583 367218406 878808799 372268666 598254620 388325105 245311003 231511541 675644946 296006814 776981592 51175389 332313967 42143135 466720678 549544247 694392625 126942094 84069266 948159651 589136357 699448411 28958771 817139890 550805340 485349828 633837135 627369002 822207068 872726760 415743261 622125305 901787778 33763639 661776868 186812204 523120238 275510143 407487137 361271382 135314949 4353317 557974138 358727828 595480436 302495990 322564215 590756779 780948497 960582476 508236773 205498122 246073841 679241093 909151500 972859844 409385028 431406665 120927487 148847664 850288287 435388984 572316405 140444588 429639492 776664414 994425731 217856728 456245660 215776066 900550351 917786294 907056011 474469363 377712449 331431559 178854716 332312073 289689402 469092477 159873785 975728888 353054709 425190976 837077682 739762632 632540938 439637017 686109014 38353593 139777806 414820387 396201062 192739019 277647862 161422453 970222576 230055582 51188547 473962887 815416091 718721858 807651987 330794454 799198425 67085910 957500226 606462771 894733249 633893946 150045833 272617264 277674597 191851832 551303587 532347049 172373988 61524971 852571570 556902500 511205537 272509472 449375392 639028434 492304152 511430444 540466582 477509404 900986278 272611491 180753096 937400071 993544020 485632516 990959235 690627414 507886239 437444234 430380475 601919099 600870065 397963694 960274665 337696697 741586941 231994061 609972440 861277235 320137464 125167651 71841754 384146334 242046688 278332043 885162748 20050563 560605747 313466353 607439169 127649555 516984481 947905425 450458432 460743630 962063808 492123109 414841476 788772495 861177394 771311737 630261331 13714085 360684574 82354644 80217103 390247442 800312000 913120241 973613631 917328498 314080814 527816139 140068266 58803832 234087256 166667593 172142255 226090536 293574822 778703597 992655008 853846880 139344232 582923232 233642644 657460764 773362810 847750340 188157540 564060397 710836054 819198761 227645359 67963423 441997378 319666968 956472641 420615156 349187291 397711771 141999583 600650367 210046787 507434261 739967935 118351637 648949014 690246142 576644273 789321431 71622852 866284350 263812162 900560904 336514116 999453569 588482726 798482108 203479487 245914373 802152251 925575362 568090875 139234726 649541596 980654198 400477222 343381791 119988118 326578008 692864122 311034815 64946820 721799707 303240775 517839783 557404281 157453409 376987708 318593850 937294518 660862006 34250528 590656118 505682112 234203641 698325261 593697287 390732910 91638283 412869577 274531490 29961806 652966045 701666960 76536011 715919394 980781380 96296693 197367566 611120530 744280705 565660798 797921158 586653441 699407241 403059275 582568360 148494001 857751736 694749607 232632873 628006232 523646911 111074859 930078625 218924061 909544071 599347565 551095987 335741828 39978768 371356101 508987482 638456120 571621467 859860912 740936644 598316620 43238099 634604480 896684184 770683641 909463664 984154095 458166996 124230074 26019698 280937925 426776483 225998164 998532873 474159553 718648279 430402290 563147533 553976138 496003472 597531819 771586638 130175241 338118360 617198832 28000789 895731434 563436983 526286296 271914327 357754196 605659802 498672714 135556268 758882653 461417299 932591377 867452812 544274790 329237399 699730086 838772401 189610482 808558033 91899682 335865860 196544185 726467368 158076997 703733672 94278877 355055448 798564150 210423968 375469297 983906166 959758314 353238323 720703988 789757532 697900894 918135363 748142461 210499687 545886872 576731681 791786202 486492503 566242519 463158502 421860452 24080299 461562683 737551988 74329023 525516986 274043147 821450794 553034836 236156512 438398286 169747193 733571337 864015885 960209328 128482874 162322614 671291801 750087944 585144700 224213189 998906404 754350443 154859271 995453554 625282817 893955177 554613778 721334034 125992872 62825880 538551263 913465580 344478944 797971832 134438660 565766088 657105302 654189752 855269421 906532041 459713106 824294900 729582812 898062793 548527278 14244962 258599210 979685612 623116954 41897578 742389339 582516638 560870821 993246281 183837842 566739232 970094246 138334540 484149667 295332559 912515153 205097047 758398947 889650183 596362748 761019247 439470899 651506959 353818151 610248314 842401730 50800805 840921230 266394404 107093707 936839017 932521626 481991827 196156046 746165774 676085318 468304386 69413730 137913215 165339866 73897854 868597420 157916516 824144975 461544805 710500164 924204392 592268981 150308204 784692989 430288334 666849114 576929255 44729782 729864410 241006028 764851725 563123161 981049735 7318149 833547908 618477583 730783925 282225660 90812882 736427332 974365961 894469916 699097344 216165371 281919389 282966567 791665452 103401016 709459592 868177576 492149605 746162026 783137848 317022206 802633660 888264194 48974838 561493479 85306221 815626549 506744485 203730697 460152333 727027294 471212450 215424409 596506698 483843582 528250873 825419652 462022910 175946043 405627430 311061575 502570631 196341267 628518644 145885120 444762542 273736113 900771053 632264093 190019591 706832002 390751486 280167954 791706320 798291400 415600985 947999803 389850921 435617616 96716431 376715326 993084846 21624358 488654158 875826389 113668431 319437451 278047279 534541481 884876506 289880395 780329727 146599091 778068410 450076180 571681842 941648639 627210039 255266884 38769960 505549302 931887158 596308064 906048918 696084128 150775456 845479540 647562713 209107495 357679299 525295950 132145049 237205848 519860890 666872661 397543597 767249899 220578333 712910183 643247813 335073800 516304772 919454425 761813558 79025603 317095619 211229285 831981981 977476007 384042633 178717370 78700912 536870700 73505834 563494428 149368934 684090083 718363527 116017245 801324352 653747661 730709493 9557841 20825984 573113847 766622813 127208959 635472268 25624376 527511706 862464882 169663670 94594298 565833936 847343290 613187649 640985921 447448302 225804620 693126146 113856619 21877792 716921547 37953030 782404259 885254924 160386399 784219865 233774293 587482894 867212278 574333208 877245734 919175593 798471043 806192787 546992054 977480670 154927197 468662707 250195175 191992641 47837729 110442103 442311003 347927528 739853107 511321070 357619518 295847050 921148223 302254804 240965490 398847660 463736783 836924250 275088932 937605893 968497348 606898856 331024064 11530542 364217981 379293472 574208438 312160163 278846475 7660566 185045880 226079131 654846309 166758354 987791372 461265284 485802188 276854611 172608694 54399624 812999682 135239383 297485110 738497436 290515790 682497976 399103969 306240451 223506678 426125176 320752793 287506969 399227174 119142949 961684454 777911003 357992891 408856828 23250663 43902114 154492890 243792123 514424101 581475629 493224189 161576126 788021205 893845864 310714545 964089810 814448334 489044590 777945434 4295962 302081811 302119533 684824626 132940282 752569154 589279920 137595314 757316882 501519724 83586421 468960309 786856714 5644436 516791280 593761138 417327208 9217055 1144605 824787908 772630145 196146632 246318467 46056072 682188990 404885927 904843258 985405813 216536498 613068523 505334902 968768761 237158022 692386367 997109541 924078471 409368206 28155214 696684242 785445986 719578738 23268957 590454467 270694657 802822395 182909722 86132534 482257002 795916515 862146467 825645771 791750870 162945150 97300780 104805901 455448238 363858578 648760404 162266006 31079292 663391566 773512237 253911083 937091466 715739890 148878893 90340306 355540969 989620520 312961998 874855441 574977983 451336739 904480061 219715392 623081150 170046565 747935205 9940469 661483611 468638758 320504732 365402453 578902356 911761198 109985692 240625343 425395749 431857772 862683701 860087433 34343169 378999869 865351700 186181749 630287957 716275592 50186524 626901345 308389603 171502227 518210708 212514664 971430689 805366253 673024704 824685560 869744355 740119765 556868010 894230517 601928058 499254421 995637266 153771434 237282685 591327180 564959095 364499209 17149464 920105648 329095465 677295890 551249326 725451720 623991188 520029038 105301381 235592931 972039356 321827905 731266964 252743779 348182048 855393627 133231414 15263840 551287620 835014337 620494381 547747136 105195505 694395231 492522596 870592985 707442747 797140114 295978357 253745193 104260425 758181486 125455640 222100206 880329033 68647104 845140437 372641095 148562466 995238457 561914028 519426321 621702506 612512312 222708030 497613786 962279407 492074361 408928937 786146879 392025006 401480726 122053620 640782967 994886777 582127884 873713643 960669301 621619247 176990518 554420636 405321807 226967462 236989048 158369767 718160987 822847663 446750980 966247302 799107797 225118935 83745209 450760461 4291600 32188041 779579500 102264022 52650215 667813001 36258641 860388645 449307827 758872255 605127326 668144430 576796531 11959018 980015877 647262864 593183674 513996148 10883667 240794489 172097380 187669011 78411481 169932797 733294203 424167640 690095459 634180038 382794992 811079570 411432252 965286381 603515262 22256049 734443666 60166746 836460228 690351900 8413484 402623782 983964736 266068510 243314116 749784870 537086449 596208703 986454781 802182942 634203933 997365589 714369039 828026581 142440361 568203403 225361379 206412710 776313947 476730201 988255061 36956617 499587502 383308502 68207890 489054411 2428558 185310903 48749720 553569601 684839970 640461287 86812470 258710306 146889789 747950836 398451884 376445753 535064532 853157556 14367692 1661759 967092138 425097953 792608638 414229755 39467962 131296373 375531701 906249050 234259402 259193860 107261316 385628674 156565373 447181582 534917904 567277041 459908283 293586088 610440290 164294638 204174932 91639418 85672565 202400900 939367069 374896981 882201799 849588594 444922 445550177 417995903 848994729 299487662 320278437 543839202 410479873 243914054 561850650 493138720 430555175 146037714 122752948 547300355 535833202 812941430 661796070 645756617 717059321 413189437 816627123 778918359 633093402 631492285 566003542 793709412 541446303 473986474 872276471 8249191 14817768 681668843 164942940 541192026 899647457 734120526 694680932 989032174 171629812 393496226 273578309 428229908 150345132 118953983 330706425 299912717 707117348 606041979 465560483 305808913 646168581 777623773 579734750 682399398 317172752 884510012 244171177 829202058 223588911 803907513 40609627 735801105 789906574 602930855 420055383 782197606 890613377 380265610 46303725 689329672 182349301 254332353 69244983 474251374 593863841 480991688 246892243 714124695 759098634 675444488 249775175 428595731 949577294 846543858 223420462 274745218 569551850 929760401 11440347 961154417 243224770 661487467 826251180 287148110 706936917 730818169 225915973 377073252 807348605 962104115 607434622 541395168 440832282 921018975 100021728 490918147 196062558 791339986 773193750 562424690 599239020 870952965 547489193 426874716 526088266 392704632 307762616 470728522 54381821 985280502 383863427 733970739 713599275 552310174 49986374 836413199 729674584 122533989 290717626 131247954 144230490 301982520 572063027 136170533 734815452 390691608 111692880 681804469 160929723 407998293 734941504 454220461 748554690 478188407 644133815 781736207 829471563 981709822 905369480 813092144 341887279 32354355 714441688 509142834 564956816 294644156 208054770 272682574 457152344 408915074 707619062 208981774 213073815 51685825 799267273 45724542 363610006 464314812 948298713 836842329 318373505 803781664 509275196 99212525 457342755 732041821 858696488 541771798 117498839 392878763 836404798 693304891 345383133 620081975 388831273 605159288 97910010 797339202 256603020 306776023 181278416 471572235 651520445 317514191 405133324 518922460 388787340 13694459 623063044 345012725 778793002 389875423 835844111 582396213 859897031 949994036 482137447 764126108 427037937 650109200 867192845 693698986 687854997 36369924 898184102 974066590 304705281 180365582 743675189 752612278 375516828 286235373 66117003 139913596 685146393 403618453 563338522 147253826 989059253 586112988 412066068 146696105 983758166 509260746 847267124 651583444 700441202 628463080 923722793 472270864 825263705 585286600 479887117 750676350 26661650 692590668 755939021 787392553 619549712 975567216 203636623 413283682 725406808 929279742 513856309 356526702 615799911 978413201 991180925 970927536 472523841 77857329 876639888 600543540 553503167 760039686 559539287 225076271 413632303 488148790 974951469 739600399 559355064 142239724 167025609 982686045 30257811 770575821 512730545 462397479 299093014 303574395 803978190 245484862 685366388 545614484 611539481 829763925 450139054 305118850 931607937 59942910 140936776 964742105 522686767 171909443 366251260 965731171 122892761 117563403 222066592 899323623 428252337 598742189 796370378 187087484 380245333 501622866 377432681 137261116 450141285 963893530 809797098 478932836 906521109 450860340 358895254 884925259 647738941 372812077 215485783 578673782 274166660 417355647 406134711 604335375 154598884 761162834 366590252 906934357 768494834 814100314 25937741 420047256 988913347 11130978 714391975 301543567 99273052 614262023 430567382 799603205 932076617 266903836 85140134 238480676 204697908 974470693 43135299 450133597 314243568 619092234 906787108 626656866 418174764 25267218 504770390 632706600 652551539 154777044 416624128 905722896 124605817 534349701 420718923 682599955 833540387 773779762 881043729 507132008 275065848 279587975 204706578 306509637 701334972 32317907 259889253 214095087 134987305 754895588 192204196 575826970 28967178 440239435 646808586 319828209 123392341 887648968 111724701 720474346 949746284 417075349 824196172 686279342 28847787 902167592 60714462 10556056 806808697 976362992 222062990 527745274 168877098 239324932 939881948 862673312 142897173 960455812 433069207 600114699 38352845 745655573 480277930 653047391 160758033 687819849 282670447 191217094 121174833 65227534 214884331 530930280 121250169 546498633 599876261 907040538 429745517 871410377 897961685 143625874 739761406 882202564 719246432 565426761 28786652 172115016 688032553 998448190 593522363 884718431 784782663 447907055 770414064 717803948 298952216 211260541 184208199 96792361 518203262 399283028 283362983 188167922 334092300 555594804 294777134 668740372 760427614 809820575 906994386 235733541 772684865 701178243 259795277 58446615 574522449 975008092 149527192 464079575 209899740 983378146 663886657 245609705 166448773 943119028 604504103 488835632 730760936 532783784 692400040 6562501 288912887 748675227 90130835 858077804 404261139 628304950 315650358 864479413 577635626 212934784 801865192 859936944 820802563 389118271 87019376 9554978 144064102 233944016 141251873 623526935 860719034 525896517 263821053 706991889 647944909 548226472 66999835 157445493 333105747 994466179 129964857 758855187 501409777 118866097 575034702 627979311 85738006 343817489 584912523 296039590 267016451 282007196 683599251 376702773 285835491 534874581 635292828 964877349 470519732 718899477 252944829 740901310 57681628 258687238 413075756 282845074 322748401 573904400 76055033 792154189 773156847 397135848 5764311 532044630 789812974 411802404 21343979 968593957 648724395 892273159 567730727 57263136 51562835 244670220 620037444 14558339 577480784 215799039 807792541 688438429 705893063 966778834 897722855 21604030 67375244 575164075 701940316 993849851 106724106 717933920 998582127 663960809 737722604 342326153 649741830 139270417 415417738 369169540 100117776 943454813 172064574 860558231 720923680 317377016 246055695 73743400 313536134 56403041 76584418 986676943 75246435 854054360 459361821 842209459 588991950 839692710 983511645 266205814 471445089 593729433 363615457 730148952 80947114 556595950 898489013 459756014 242797645 424821154 945697601 107197048 700693927 138495497 617250345 732448858 998353522 973225924 615975841 168905911 643534449 926956860 566266717 393239451 762790542 671775934 702492357 498023265 664043191 548384097 320593237 964466788 564247963 470682214 352544321 411596556 641154449 85945465 130195795 787351765 744679984 842615783 838978480 86291791 751383213 714714257 533523653 374274075 841726158 76038078 795571155 226976953 454382877 452332274 708674173 485843766 294129144 777029994 699184752 757058061 754735107 711775707 798785538 60247070 928076157 134097051 786901499 40070063 699943852 817074187 830354844 16765007 59972016 462538262 933821105 404140737 376629686 45035826 991779327 383421933 544051663 334465800 624592199 286662324 866527876 165010812 207606624 896960632 826106717 394125202 631998516 367822743 919263906 569626581 252596645 929188476 849717818 690275369 410564235 801003509 397812851 679305527 927749048 74105352 302579356 903720719 925576769 665996688 995607936 456914332 784955073 209686761 877665054 840072676 755580595 519061435 678525390 311808829 367586773 670135679 255564767 722191446 665767765 159192317 385951773 837362959 234545379 124423087 24967575 868599178 732166772 991318241 614813912 895794029 503898841 199125103 976447596 126069781 414130778 904344388 52141101 468897418 421932798 254112845 348586684 257644167 952602865 290068270 824743271 431786214 38642624 148294145 228172912 757484214 615794053 831372780 405788307 928352887 149566022 407477926 828072632 51067639 763039608 68235393 973591599 636038593 83097046 370724037 41507254 448747435 271573439 89617848 576293584 625765177 292781204 874426979 4182544 32324747 704806395 222298203 383302920 413854504 80068846 117858834 592340051 677235439 967742190 295752277 52466755 120776710 248391576 174973853 198095985 905721758 742871308 818827912 558840349 220945874 758455999 795876485 726781916 620875686 523154748 414785426 733245979 224355260 958290262 550910972 179164422 389183674 427560122 648034161 265546155 670184049 343940026 582183764 543020035 59787699 539376836 387970530 396671158 28440484 967260910 508721666 628753646 667821324 883152982 845342058 477794642 88893467 402025051 215445264 554887086 790091686 219037855 459518744 89420833 716706921 988256083 496710175 885545302 794920349 958838190 28416543 787442993 365091814 305072518 626184451 767461331 666469648 973593059 111898592 671823940 356772993 792842872 625431727 332117428 441224987 840795748 962647044 312084885 325681193 122863496 207755449 732540252 975736517 78191586 640533215 772397033 322607311 236352166 686615795 212450542 228905737 204141518 619105256 573413140 812859065 202557843 79018633 672957568 612127744 927211719 852881813 351391921 368062359 741605401 356033994 609827915 535089585 421234195 585241953 937270546 997614335 630897813 761505592 832991906 434565716 862851651 523321949 284216408 942378115 952021303 328989424 568328203 814148594 940088204 389453361 483152400 347707472 997128519 434979802 940322828 497547942 524469708 181355824 58481460 146271536 462962132 928271187 51578218 669767101 113781329 830908881 72706100 159020899 910264017 597793544 374177497 316818839 328444178 465532602 557500352 307719396 797597098 443303013 327647048 732056536 7556307 779318072 944251871 735600276 938646924 25429592 605478054 702573431 33709932 83000941 367187061 175829670 661188480 743161435 584546522 781089460 276734544 283579643 338410190 495021417 89212986 476735120 351238220 96483471 182476841 639374733 891808689 594551098 290289527 74831535 423105475 385004404 466596204 157327403 149003351 289449425 367017482 478812562 383550969 644062534 883976074 637690645 943930678 911937053 253829416 737868456 152056067 724547289 964381080 90012727 930308520 622779184 532564614 598343666 116957949 229261738 467012197 111430643 85640490 157672972 758756992 148899453 896054413 721766246 558978745 847808732 393663772 116767452 266561424 240638966 86174460 268447310 401350972 827238018 145520295 75514968 741890509 941607412 327924652 268543578 844929358 90666420 305524135 73429239 798931405 433053046 574013197 607400063 128032713 229110953 640653604 8448297 719864582 973370704 499986198 836126341 250697814 158213850 837165603 112321151 142863512 256444297 594720080 210715545 411252009 132760577 108143343 22450970 522130063 50541278 403278042 416861180 700635379 352176588 896002461 923321242 228504342 461083586 334110394 845483404 274372525 102668221 409253290 320532296 305488758 870337661 917171055 741016797 232729907 67579791 330857091 741646106 829252520 644769546 423154505 257351437 306687951 496425851 397591982 418450574 727670754 40959287 69224973 596932718 67317999 430692591 558300415 177988199 249711372 537847444 454469134 982170038 343673314 816080340 343295291 436130901 558610000 358007193 95968221 731980948 502022734 905913152 870759350 34970588 824566782 296434697 340052029 13097333 46555718 244583419 583095816 468615366 907127161 256167441 513808226 116230061 690478813 18904997 132780903 351983316 492071209 980423378 49072187 806829824 166345019 16363574 290165616 71596353 153368434 22345322 769268162 428029188 663315366 98552387 859385584 645787478 49601079 630346956 951336506 735852187 280650373 401610013 952161249 786222453 166682067 975525076 125936752 522760106 20131040 209050137 702214170 804687075 3471964 749622616 141317051 241634036 345986944 214316872 963778624 132188535 100313320 752526475 901211286 446503808 341418877 311814233 683136578 522219710 921007025 368877651 20068406 94919877 45596270 388375351 743140814 353290670 73751495 285845313 554559709 413613797 5790023 704679719 322562370 379325990 537166805 473887745 587395538 789468295 118762885 932947092 704148602 712013986 888767745 796422747 129787948 716127012 850723022 391529805 701349097 609537169 205613952 392250612 187722272 120177256 603755496 11010170 818098974 648404532 905221680 534905371 174798270 788621795 20162056 66091300 30732859 196602036 923750739 54984824 701446039 629772980 470681129 422807557 229707159 221691642 174164908 904461338 336402605 251111553 389509256 437675968 398522376 120969654 457271038 770106696 156331721 689239216 68510564 921502635 147814255 111505066 114916603 729548734 312196740 366196180 250996242 342029396 576266590 254145299 309212439 321571843 473934938 430533880 120067119 645493143 444011197 493464675 552012526 439393208 235325035 721035972 269939633 344683995 853044906 923006587 230724015 221155658 662756424 674833234 41386387 361040403 669076219 91507516 876080853 963895248 148125343 685280597 620473073 277117157 408733091 137513039 974215379 54218460 28454093 944293550 920578435 354159856 4233114 392561511 631899158 142785977 183960384 172983087 101749860 242398301 224067584 125815040 420375895 732326684 201807742 19727150 352248530 75687142 226488455 311634892 919674121 441375422 798841836 252355530 717098104 549762356 178641958 311816443 720169383 960725690 719174122 473708096 336048326 516218417 648527900 692274792 254514695 838850541 988200303 886724269 981133798 418936389 466054605 456669818 510952933 212661141 848757688 467278471 44102965 623266135 916990642 22852431 306736406 627861027 988110142 60615639 699559104 522265013 113058741 208441706 603214974 526123372 896348725 241992086 73456404 229326120 532686476 841146828 946367349 207489707 174467357 922189140 450400239 148407049 746626056 225195467 40762844 917933363 898540538 518081397 24410307 393779873 853571446 791252444 964611143 940298187 593609933 508792894 480532545 308301148 907057873 40616139 488838502 328726347 332443355 131486709 162587618 189544019 553718233 633479371 437396282 304075195 984405213 448628198 995258136 355748128 586567265 927629386 38789928 206055799 333409586 304557287 990260339 719949151 741926547 439613035 732023804 863891717 523496741 654780987 628167487 884554571 104850889 574255259 190416048 39843315 303634064 81005227 100754350 438018749 544474776 644372337 956003836 728204529 696072123 624302868 504500383 501116625 377118974 69901924 149711099 543699128 363928382 605694496 561373181 239970513 853901397 246633742 328117025 782206807 844911173 993309973 43921185 197441146 662680157 208914679 284899710 438268955 957362278 266768602 388686655 313412307 591175837 531334684 134512964 597483953 379408473 872836074 545697711 877144722 992423832 417796962 231646796 186060796 946646947 168722496 196933025 267229236 409580400 988584362 707007357 336161818 341792686 641067754 688799655 868232916 261322530 923215236 377878080 964884321 764800066 562460396 486166773 800398748 904521179 882909298 717521719 722346072 201589674 208430311 797746311 565217581 241629189 167890544 33921786 483981384 644715479 144786444 966312927 277230152 905579133 359125823 726453452 533698054 17089277 226946729 795354639 169893842 953454290 553896825 978226354 660114971 943222539 105300158 989004316 393059488 451099515 587893887 547973552 756927653 11205477 487370006 84272401 829863447 151149308 678969019 91541771 709927665 480908161 30099225 471189268 889043662 571842671 353491251 471477773 856941283 382176179 234143256 44219394 193803229 103844372 317425929 992277551 848885717 345066993 171093222 936991202 408938521 196804270 120711889 898282123 137242091 116430090 54437317 50080363 208441728 209993826 560351152 830326110 854047186 910953149 552929525 861761316 710188306 894554500 692923476 638493803 589082517 209937917 848669100 610080456 171348617 582199804 641252084 244301850 994778611 511710972 205354118 952036012 256186466 252914019 885387419 450222513 77902694 624825008 928206613 733500676 173440237 710001175 642700312 405676355 907179020 248030743 69047682 423342521 798066838 767939900 984951167 624194652 162610144 390904983 108485969 797871805 350942072 682639756 537725946 730115386 730631346 954410521 133146966 168133010 840475063 935845404 904935301 980515257 149706075 776269456 993943171 385117707 370805631 654018974 151635734 443115975 598078201 36303691 646097476 169164236 490956850 206231392 853118441 242753304 859965417 512196719 139091237 936688761 446929126 320739059 389517192 69008151 174663191 21154804 686930170 675414286 639211228 826105416 856525544 126001280 915677968 12193397 845719276 427625630 504715571 497491772 708849518 609928036 206681879 395653837 479661341 979113979 794718696 617693327 763262952 28259119 222906560 45409930 593245257 815954825 486765630 972527687 200790003 364288442 532576948 38353786 553856937 389953629 541683717 646469976 962514050 782958540 61549848 706759686 958459700 737114047 127696054 725758837 841161785 51605219 83279463 82119707 881474997 654442330 848251501 744739064 25815486 723705274 253963339 456708190 234175260 761701874 220209539 78067384 414987525 832143270 524593198 415877894 551423409 77747490 622724709 407334782 959360166 756086312 100128857 425257890 535652957 432283091 612310255 945835370 215870249 566605742 909607469 180720005 478721030 516348334 439513226 812182731 185215419 142723787 283994837 61264857 711594074 333828629 206951833 620262485 726863450 566890505 643037567 41963994 636322538 350182465 565269971 864023203 324767807 56053479 465205138 930692813 235253213 531330737 165737261 250206792 325524298 14765685 468670252 86507595 121944215 64318844 425837279 71900322 844155742 401379945 380822278 921683015 398541668 517333109 866487757 534279380 364092532 534033597 352768748 774836056 726844255 174108690 658386604 299676249 721753841 536563388 7792003 958678851 529358800 333962246 214473657 894729198 97205235 190299224 228182895 815131270 781423576 190020083 393852057 308868396 933618425 234273023 792065640 406383225 681344600 442063320 688758423 75102077 686984881 961665842 953025040 610963199 609349355 119615266 499794123 452802472 269713854 457913392 980246205 958651688 510552643 914540501 426468835 839416795 115588331 344459324 156467543 905724817 578834662 76683270 9195271 592192154 162566281 560589390 29150543 702575649 8685919 76778739 721924542 149608403 768338719 223071042 568242998 991964906 332030057 523563359 554060083 312443410 855419072 179982323 166960196 843175696 139885530 314444257 165517299 232214460 244761866 226803389 722726997 43833078 488655719 765362442 515366906 322328704 419323538 462583873 575906881 887077730 436930219 622094379 727318499 873045270 921179561 451636557 454240197 355085972 345418552 446101687 666629517 182721244 7630446 414758815 408066908 182730027 275255576 916298348 285075038 828599077 287532776 632253272 83912622 418462999 328586624 500249574 629983766 232959391 919789972 743707679 186909757 7962731 76682351 357975873 710746256 464071184 717846254 659153856 723726338 313528949 570818453 773804460 602522847 767044370 911683887 566351330 162421259 575827226 893573097 215998550 603832351 976763050 652251200 570881947 191048224 986906355 309921538 579959761 730105861 817292758 235561166 960055803 703445965 959591029 595699449 906830867 652373956 444157598 103428817 840310532 405931349 265192454 21138812 504684664 813126710 931009738 123152817 42342927 244112075 107729763 109102776 521600279 388483627 204469403 513853141 116776013 969558972 185627913 718561530 375355929 539797336 550864474 211984857 673626759 984747577 197030213 726303154 809014221 84195016 925910159 977055927 824987819 281904771 17476237 836726184 608876411 752580802 667640601 1951399 286533494 642208564 115245383 670493160 480403761 575288665 701944977 596249587 269030145 513234304 321991965 703778524 272050748 231758121 716670938 8726451 584586147 839604691 31899321 193508102 818456030 61588341 708508579 527861990 357406980 987815218 122795033 41412605 44762648 932270747 345140463 866656085 486158643 536290386 417128383 432465950 212513006 434552005 654655828 136091480 469214146 621786212 98022119 446537340 596330905 216234273 696524225 605951167 457221709 622092362 3924055 197337361 795646935 734377995 983054136 518233680 193769881 992163659 974232366 418938770 477295890 408321244 607445394 807164309 308832130 830398127 72426277 541342206 412004855 277756021 342462038 926855913 938128532 802753012 369002586 612403858 564958778 55042223 970972699 66201548 30691814 711242552 169300310 820757267 343740433 393269097 405149074 587650759 445912254 878302797 148391644 601240934 877669768 847045895 625650653 969795598 17798748 119400077 951680492 797411158 200424342 628326935 945747419 168522794 677284646 634403235 719324052 706679822 277602829 112422512 92888048 588406701 968463516 809771787 258969297 776175376 354647393 93928390 908656096 688521388 111940447 990758720 258935025 353214044 992260886 311495685 14149658 658333494 686165102 683926288 596675 804456594 300803015 136666461 210492248 152984838 140935034 338082977 234127616 921044038 530628416 513491299 158896442 458890716 586983483 188707306 213730305 311196653 17001502 139201159 589702602 232005500 549354315 121906119 570044294 283229913 219681488 180525576 162512578 157266219 985438927 868598249 652367548 138629944 942273994 416840942 710060582 868839234 658844780 602211173 112347286 207792706 603141447 610564126 629325065 118199062 851349331 580294121 882237097 756698616 537556300 53152793 346110710 396991049 532635825 491726175 496627624 777992954 637669052 935185147 328034581 385748268 382328798 636585626 887188795 924773109 1043761 923975219 422512199 773164151 725337589 690083406 950483120 755531898 970205409 434585854 89234477 843240480 87237427 804137284 607255033 201458 263026107 859272331 126740757 312618717 556875388 603283306 791142585 521601259 335207402 314619647 372589856 663476799 203205740 479575758 281067472 580968796 166674696 458830198 252267823 48059369 307253441 574497300 327002270 877911693 752968568 288482850 838198648 65478666 158679540 390753834 821088424 916189961 510432211 285671367 782170577 663947915 856259838 961132001 983399123 195259946 587607561 321996159 760356237 392383895 308935856 305692953 758192756 991144252 553865627 850159462 529965413 775105271 909396438 736012295 564642043 636637266 382626762 828147488 736875777 214073852 87314860 403533243 881136855 203600823 328514320 81404576 937324329 357489655 614938934 48738400 202618637 628796079 899219380 747301714 101920683 733188487 428131817 275681126 679498945 969067645 275356694 489676477 498609402 492758907 770061741 877806702 418960738 933132381 973670336 859839076 145536349 239671460 491840482 752446489 90862790 911667286 709401160 399520651 144428706 39944199 123606686 337358319 842216873 784847368 429371254 930891807 611038253 414017669 130806236 116786254 288561927 105036845 550570539 808444077 576597159 617660755 822749308 625762348 293920190 869744966 482828507 935676621 537703833 701921866 353094869 278664431 211822937 707684665 857167591 527714707 446639452 566815364 197200710 356385625 869245275 957649676 272841492 921668157 11060047 811385373 76867082 601439203 749463597 5737177 192787684 115199999 243850784 261064666 156589730 712355966 549207656 477703133 736719806 681383816 668253012 650278371 93698027 284693949 390870973 711412908 273435590 282288798 922163524 408131170 578089452 227205371 51836146 281447362 782550328 495665315 22581435 200955399 239088168 901793250 603254895 623174423 184188273 942755616 708955677 13793390 921853624 310841265 831101008 174457192 678918629 822379165 429740854 912557677 299894465 573947392 372475046 68658846 812583343 686278268 448629253 916959576 812399612 654392313 322884352 495057683 163213427 163991051 5915100 144673169 293258847 101193786 763305797 422768731 251051871 163934805 246025103 968079856 665106258 172788383 17617994 700830611 852456035 834611305 63994246 612305840 747504952 239493551 488399974 909773720 600077633 698294317 845514965 855646197 276378711 50592006 598887230 368839410 102822158 191951494 731009979 716307189 885262294 278535061 367632488 719614035 526545196 708275289 107502391 659456629 188929056 519005901 104326561 566737203 768660468 682161160 734891303 529304983 829121084 847219664 558371194 387985131 692324044 36567919 707127882 219521086 35208872 990146602 943382537 209021183 185202983 84872592 517412385 621676323 503065717 159393466 547676090 358753095 449470998 965435275 286848891 463987181 153066391 481741208 758031294 435809816 604673651 401960174 601134284 400741243 890960409 24769261 403638559 335809902 302994364 163193866 259522357 94937956 371209325 98163794 900492715 467808593 37446266 954026664 989101929 823010023 219428325 80709965 483064768 753069605 467462005 353717907 372527339 518052071 463365452 297983304 130562743 932465191 49859233 214300400 274148248 78166844 590027226 70611304 301254366 719518096 686427456 344477769 630258960 68705626 475142869 813574840 803947608 859880461 887314994 380445355 562440211 121365361 436773843 64208256 915429811 581615325 521701763 799099055 29157109 824601724 562889366 339030979 789942538 866238552 322415546 557833029 567458305 109531529 752662358 160295651 567200013 835419415 489817196 782815780 764112719 677272725 862725650 397045502 701763723 51787419 949255979 907460002 983837936 294282659 25642445 444474386 999630530 495834386 759897336 350425347 686915633 455218 17882019 253101860 129880647 602106727 98698683 554664409 980859516 422438908 258559698 351301935 195520325 352216393 450789081 111874520 597695583 735399401 461985991 401450460 597400987 353397372 506452455 736814812 281443610 30904431 74470065 165821868 97392872 609032044 93092301 509959694 627797442 429279289 820991641 262388905 359052736 657024047 233152362 520311012 4694362 954642495 570961230 338140452 402371592 47062385 859117518 829221906 742088873 568506425 863717754 305656028 770688669 751718419 693025067 26540785 755150100 140706965 326755683 242258007 641328131 528997221 30492914 184276326 161510957 875038059 858644819 373449332 367123476 689569057 750783655 541884491 317545540 150657456 372780137 126551309 289203653 522408827 514320836 888987965 600043620 642627108 895535013 939766631 364592597 506185570 816347607 250392695 308030828 758887801 277371732 828418669 8406872 612217767 507304524 391878516 238682717 575857132 392483352 262088700 973956964 110283335 59008026 335996444 105945725 447618599 113781424 461472072 902320789 763490997 923420778 312735891 278594739 418868438 176277821 386542354 591330009 665398457 87118134 865421302 349218337 23196071 590986537 41062468 398104873 777399709 244825579 144871947 874618918 962783444 208886159 678052610 165085209 182896044 582582443 673459529 937969064 210313087 253449089 248534606 486519692 29643581 149620709 659842489 644973518 55313084 135866492 552367710 100008561 542627757 944549303 376400867 644671189 665916896 778916406 544519369 415702388 905380797 559227008 729989484 150780528 543720707 46928923 853757277 340847860 275396786 336499877 575888190 843110278 906257679 108420998 830308778 822458602 892694274 74445357 762470817 97453518 902308882 105365637 681774839 525521520 766763778 918419039 995734051 600001195 317919240 811814762 554956791 425927570 406452301 423339773 990429370 274793230 38493090 139643905 982744696 32723860 211540185 772145997 404531318 788559357 314282247 645683714 141784297 252622850 145617904 380125735 205499525 697312332 240221019 230791036 773028566 601829944 540454632 545796406 685551816 569747539 772535853 729023039 273345223 672876762 667417209 524907107 847710724 275483219 249132517 255674249 63344007 911981098 476191249 125340541 903176626 955040102 9088518 562908291 455202533 588021301 865484953 798764049 23406223 945873456 443719326 657787083 394697994 292891963 721929787 910865835 309523004 871091280 481317747 828881215 869860639 689555629 61964356 594929737 530611340 920803675 862377311 370067628 803748550 384634613 660920240 946826278 69240021 603623660 984863157 654198228 978752142 403792082 547967049 152599277 530748418 950270304 163165888 308475682 132398913 22310960 82338268 167082188 383114272 344355857 693429897 134786701 354105042 283660098 414626994 992915146 55847263 837889588 685936204 744814086 4002388 185686215 517213197 269731969 465844916 551332969 965673336 756598486 759285398 173773852 794304682 657382988 430799818 712319810 72391591 942019219 456697740 426932504 402866682 10103294 717319720 168460906 387517079 950788475 346044165 682200405 763790565 189670019 612755223 916241114 347913826 779423561 165194601 980597969 642312996 263857685 415865270 819840705 815382544 975971366 125501135 199007730 599600122 577623844 254335768 24074987 521644689 871344008 361092080 424620760 335694373 722025186 209072157 191452069 475752511 687679545 246833673 262411019 303817578 440978773 905956054 48236966 494995393 16964085 49372326 634893897 850063122 462279951 952198001 472987194 835712485 315128338 771647969 701543956 414710067 846669164 831148572 218243326 996591069 321707614 121227735 236938770 938850893 419418368 167923121 345323703 869703104 267509977 421496667 786293779 478868244 846306329 883573424 247297220 515264899 143376353 571120418 763150243 620646119 219290659 343988152 25115210 305902357 239774706 335262887 658933309 34119385 499391252 3250340 239623764 594440925 682233319 284575065 628558195 215119976 458225532 662470706 387047248 695853408 758884315 891510508 491301502 746077319 231195920 266895564 735750139 95756311 798076230 35718380 672613489 166508574 493677001 651436037 693491789 917738988 633527901 862699358 469668238 868462456 756085892 25137770 549591204 764267918 130721622 266260483 989481170 433658855 192363512 848264285 300274485 11641243 551989295 638262626 765216099 545715191 935828203 510292084 462874842 371157507 294611936 913579879 973005397 26180486 353810709 208853863 298191638 273214580 384945479 926610036 130789349 813659183 974417799 634674544 651242983 623738894 596184398 545774654 546059535 263248978 821563064 367960372 151861581 462555792 575263679 857268016 965503635 837384970 520625322 173158146 861653245 615767760 162341807 450052507 803017873 379696781 631285619 238644876 750252011 543448728 272625837 254339232 108327107 541352639 850215793 983404235 993749840 421673609 754996549 21270909 111877654 117332018 76569063 634912241 622206005 96823944 103164318 657919175 600170577 794961675 264930654 726901676 103322815 553069724 101117919 512450203 218407569 429398836 420726052 559269785 206587192 249293138 343802336 97075059 385682040 150162840 636710154 212361124 615091830 827316977 309926321 538095874 526947040 110385229 609312841 890229305 709721674 627470357 398956115 703259853 627815228 969154600 30621724 902775463 379729622 275588542 430133834 962890438 879833859 548939234 565516612 348633545 351897189 211284714 531261637 485911411 41489105 890873695 743944092 602322482 376480841 817274986 936703969 352173243 812003025 48854035 22019878 461454584 953293100 480379897 297978566 714451368 711270909 933184422 94376305 854662396 849337295 208974154 159796286 213456551 786775247 802719389 548301954 132534152 605298521 81403897 702977442 215028649 77333986 359275676 801645469 333586942 709376114 588372283 907233157 65249056 874976141 678712831 894915502 822396518 208101927 510470129 129084843 47783580 240737592 81370019 772428574 132168594 798638823 867602404 67612238 332716940 45153671 736290983 396763623 890993674 268718884 824329871 848812388 124417543 260549085 247084469 897977037 930176158 555731049 460699799 700356235 722024888 572321307 547081325 690759742 788196583 129075598 403906555 796261712 744010300 38514782 429199171 731971409 200349470 748960380 283879259 591983523 565930471 888951108 135562694 310548523 774812863 381367479 249139282 552007622 963230639 861693250 63087348 444197449 637362049 552594492 532629111 37063107 386930163 855763728 523809467 873666209 800621758 138200102 865288538 255906993 691652744 792067262 433665059 962463614 279021099 92249969 536667203 331372845 989828377 661534523 104783342 598350653 972807824 482155459 587259931 990656160 872816239 387101145 171912177 165687 778091210 378844854 424852728 72352912 858660186 815554584 833576998 420714514 285309128 418773198 535442798 274724806 256315218 360225669 711737934 927355310 192299996 150064675 612536304 623303224 267454376 62765508 923613844 409358323 527282156 489259568 970854013 166643722 210855084 699884320 682568052 869417031 838536031 970977736 40476620 110648327 657503275 837978531 3607445 680027069 315898360 743504190 182930725 510248443 26300254 628124591 23399563 341069898 439844999 939891948 118747565 741179828 239748279 123238885 383263556 600411365 773531591 711413740 518502106 378611486 597013204 277968389 140470424 285125578 635723569 332662127 987031665 297451190 45852862 476994710 957469855 459694511 294513205 2503534 581163315 9807400 930495177 45318256 198129965 358829402 959009489 612948893 440681973 491626102 282937788 386235935 683592316 588350489 102897698 400770490 37771301 24206503 639301844 274619412 59853071 940681195 726929199 684971126 808131116 499679691 309940524 707104699 11088238 394749606 601740673 840211401 837655295 743508661 973266745 312366847 38799073 388560617 559377323 625289929 860163345 566318549 879550441 334215251 622446852 815387420 251761939 949051125 26900776 167009348 390147240 193640193 691861315 593466723 932531536 172192002 538574209 39207744 696569853 698101102 279670150 404336879 274079480 150468591 876264826 820806102 466449317 993244828 866805202 542945080 802308693 45258065 133163469 643320574 20864873 890918994 677268964 262348369 229432022 421089181 420117226 146167119 476278194 802834698 117750146 50053399 231755381 982587876 215421956 198831495 410068151 217586897 130020362 915467060 418364750 223627657 106653466 278727483 642590010 450310784 878884780 262305662 827226800 239471426 524540296 732798088 208601862 678558396 28374828 643189589 349823660 709314801 925472717 367496589 464654298 123584558 117659099 224750832 923248817 393182295 159558849 214003015 902404533 411944390 583018897 58958320 879245756 706155095 41548680 660726967 978259230 929619338 251027417 779050005 423394463 515478415 972472761 456554588 958896653 285593381 132024985 918964597 120203703 109251597 958530481 165961093 178506849 739209830 36762523 209961737 675255804 809545257 787130526 994492083 554437120 397615012 484591831 408376452 196311178 697399711 916749217 222363945 253393360 699168904 584705361 751044586 981737772 167172999 886023113 647124270 669760984 68343220 101383732 988008626 315528785 356009800 555045657 947637336 176548213 939870086 866680213 568557836 564169968 752122564 442217439 735489826 958476130 867110459 502596274 736486523 488346210 392082255 613006038 392787712 601474152 782253544 991826672 604480814 320434567 66250532 756042648 184558216 526927614 840038637 235298386 533883764 626784649 33155175 659495509 505905597 73831441 353243606 658991868 710708765 652034477 759727451 164907791 218195092 505329450 309445350 125514929 942614859 812203050 614433489 50441699 424652084 863390443 371030367 853016260 415177990 992987903 40524179 414238904 331956004 261772211 587963337 177555817 836703296 348693802 206112392 170585209 275968671 227497883 397145831 396965892 846216965 722828129 257363064 906475871 613046294 927665314 611265917 169184338 819530695 129733571 3303734 366361826 876836163 319150280 881764666 944074650 128801636 985829925 650412952 355682851 282910306 211984676 307925317 85679379 776597525 658451377 123094235 545713311 64989177 751767388 874300134 892263745 546427802 462904182 90096163 172425284 176699995 962507673 907976688 874201323 70265275 178665760 724557442 743636467 185377946 19922576 345682849 172016030 54923123 365481335 407864824 501955368 438368319 109767180 301660555 498289035 353134055 111847155 2615232 194934025 127381492 769114658 819144285 244963448 199647221 919493142 706006077 63283830 656411205 324343553 101730015 306627351 898865715 21116399 853440228 960048160 514197594 439598209 33831635 794378680 28253807 795959796 290213705 446615730 205195604 100606526 95317022 850973527 51162988 592048010 665240834 838361574 268616377 334488852 69293857 448369879 864216208 620220980 988585351 359002854 232797668 89972242 384153187 887490578 170115060 23871444 706313592 832731293 335040538 125696610 417085185 37690784 555659824 179022460 440394871 418112208 976077605 99613917 553607915 685155165 225952526 82326067 868884119 988940990 197005414 580353734 33487943 741295301 157479122 473464931 217862311 179699375 593338267 349550963 625745895 904086581 563469648 684101965 869546901 852675171 682023510 311033991 910785196 224868612 844091977 542567858 204198593 508402342 717320143 198276993 555818254 81229408 208695301 6864967 171444360 974709112 771052304 572355047 479007287 344494239 599348991 668012284 380128524 488816225 19466736 542230223 61308773 327471955 216789104 612235454 913766833 232201196 323175471 738624601 641516669 240763595 839384761 403890200 437344231 474276919 522906696 949874710 470912311 730439939 948157589 506197088 853426617 406906305 95880373 694487749 64354593 263354159 782505629 214318623 215768554 218386534 142173936 243260416 338842709 772479615 95956749 638983893 394658397 208057261 919065267 812126246 515860606 995216288 906605856 108790744 809374863 966915335 666869568 839801097 281620310 114728052 798844312 140115076 57574119 189607445 318985283 716815620 572805022 518750450 26166753 990065477 652624464 170978976 891081912 716352142 410104181 781849450 68273276 10175590 302477652 113950344 83801955 319915758 516808536 636030212 672156670 333368157 427177584 489806500 673028051 477684120 741425887 816140134 901946384 194595336 651629794 352785461 211865150 154325729 494951291 896254470 364973061 885247100 623424568 582498177 2714493 227549706 803555238 473173207 170267823 911413848 608496299 333249667 533397281 879801682 337053713 675557706 662284580 886325300 875102328 806574542 736068644 868915658 205389508 729626770 777421861 696364167 128194927 835244144 371010669 527212458 518172587 466536552 441550760 132239561 374818301 730083034 43164198 434287920 238404559 602472499 578598799 609119464 302518552 485955657 719545743 473511336 681528071 431355599 445610315 309900328 519913558 139247418 986680120 405026726 160937718 296332447 916647625 702953440 897038918 534346266 663375862 589017355 458618940 523190707 914698258 774463935 561691803 671176948 581954224 890858088 410199816 806960319 282623929 703616484 857787390 676188095 302200605 448426619 349007882 934374914 151717562 143473576 888391161 718604861 649403822 316435379 6891570 112531770 205513904 637565362 681985839 116640383 7288952 235644230 943386216 696212814 536501742 582826786 65296217 796526234 260417475 341865008 382969112 268598670 625588055 798457976 50606955 819733725 501722939 676406845 473051620 328605547 130430284 198177569 501080518 162462036 234731378 866909171 7531360 132087341 902917741 728805000 588568353 463310101 527082996 580746694 882984813 118736106 434356841 10298454 390711247 279475560 334330788 692877715 111039166 646943986 627435325 60383374 62853805 325037903 319784023 426480379 923413396 862118273 739053454 924055768 543272275 986232933 116704872 710252218 962431654 128101216 461891219 888473274 223475370 933947742 534544012 972320640 212681676 762461710 661937960 38684240 453162556 861440098 779192406 158965514 775461664 159222546 624661496 65531450 247607403 44472756 987393867 494277931 677915115 710180958 753394269 407948831 961748971 113224615 940144524 996239368 391030176 773433639 813117788 320258388 628059686 6629660 113167881 822211362 305174639 851978063 888448922 473903612 949028595 947386103 431898414 892970295 626311758 928528273 173720407 840284392 654290036 897492253 799431586 64629478 240545330 357994933 86880718 836114054 559255970 570616946 985658810 662289586 18268001 254830444 55190919 342051420 655632913 996113152 547796483 238106835 461667139 987138916 671700083 264969060 125333574 101914875 841882250 214745950 77285075 682963550 17932641 190047770 65460289 319527690 719898354 744164547 536133372 629066368 302262822 545815059 431496225 815800524 521969758 739209574 230821881 925638204 631117181 254766723 659488091 582308358 518989240 86412701 163033436 537173482 801466022 215137447 755197965 46458029 444230899 479399967 121947355 620880268 108571122 340891659 872875241 503046959 383632996 517534958 909045577 944336915 372994290 344309793 966158260 491047485 679040895 82218784 451590990 125592380 515504347 690625859 922132033 284186960 970070784 461512388 55707706 687260286 544732302 993749593 730047524 52422807 625688468 138481424 283457241 139715284 322606488 818984287 688861209 942963381 554455168 567628922 483797697 202985065 923585141 377474468 509430527 536279023 478288305 789929537 449925172 132772903 932217365 675368936 361306052 849560434 440198809 85852071 702677086 638464688 885674829 419062098 283633172 690345350 246094793 156252840 33834851 928766855 927740763 67054259 681235006 544606490 529707793 346244544 356839091 385773046 516661207 986208582 253988131 905313703 113588093 603834239 414617941 477472257 649299656 180642964 217830652 393154120 740028773 860883133 498506049 428014964 371027435 662393582 214890246 478292080 151415040 252826243 288971189 537388124 772402471 371742136 840168943 407222003 53105853 46348342 127881334 892921731 562669863 361711000 150499598 693961819 653145647 836299400 669101440 655771202 647599455 449128088 512936585 477447282 788401813 582566880 509375334 116230705 848230055 337838483 211024458 100374591 586440634 210871592 247714412 498035219 494489768 881322468 921222520 42782231 730376493 31154135 163653832 604139592 222722387 987291326 230680269 455941717 480480728 804187389 834349634 452402086 2417436 766390968 367797456 193327091 877235115 411937284 512641019 182706145 441153344 230714770 831978787 768274305 834346212 234468581 221458367 187429429 38687704 206443382 598806467 615281866 916873612 12010299 279916065 136680550 648970469 681316074 949169274 104060171 830336303 477095190 48332972 280008088 723932450 758787043 662924281 754973894 67103026 501555123 918604311 776032149 442062226 693016134 466253993 20996612 815997655 773765477 340109616 799845017 996299821 94084189 218142598 445580439 237407090 611895547 467979696 859038346 153226586 546174636 56619020 616551539 660011174 835777151 657478592 384246533 885884790 192036603 649186709 841343507 29712626 614366206 928053797 588855712 924626077 94586501 636820041 44647833 867475617 609359863 341463685 970065286 454756994 521914511 361509795 321886861 954060631 149496726 244211550 21071800 974029069 656430628 651585578 738194078 391464433 212605588 879037715 412535706 71812006 577403072 681485826 125693349 975651935 563321626 172734420 413558813 299173246 561720502 765782031 165997280 806963328 948269027 997098846 476686534 990017426 643541719 468374693 178857015 818926665 737485286 209193045 132778261 285223641 127638424 534782087 499159830 371699355 51259151 835744899 619161539 498794749 131918941 17423461 194684373 853910224 783546809 3648078 257113279 246734496 177491362 508795902 194879936 267766989 38093776 284462173 683849615 400886841 553965887 771012394 325499375 899815623 822515212 855797741 409412676 888327939 204733995 396570002 996877869 259970596 932240721 591433717 445833229 617643626 753575476 116788579 536534406 725017019 905189981 29420555 101366747 572105740 498166931 653648050 571445629 667378727 857407372 211822829 608242026 281150023 347025374 284450557 772496404 443462058 851645217 448093572 721890895 424951146 87711249 801002084 104556961 621320285 187752144 577108329 548154853 919296900 603959098 132665692 514631326 349857911 961203741 520589053 352517228 965024470 347683015 662149141 325268355 128799379 363798442 984099095 489459564 837319289 212107114 604699430 586232761 663424822 975002434 444399281 776818165 433011702 812868801 22348454 682650979 492071393 584291624 219833492 469764834 408661843 745720166 764286527 821984384 611902233 250459324 223288840 259944823 28047430 421573449 987210113 617497626 628591280 717527665 254766506 460640958 700809781 384482906 101397816 245401278 934796403 227169425 973843743 531884976 608621654 465875689 645296668 299556791 478658732 114434646 629792187 666056973 980916178 150839964 331980555 330327841 545021709 115032745 721724746 199132085 661998043 312368908 755863455 50769890 557005969 993941483 608985801 968783101 479926474 131354762 353361470 224216336 499920330 337769835 513681348 653696117 413119599 29943335 446611229 220895272 64436077 974239370 318099612 543830121 134225217 15720567 434046089 879374669 44620818 496256561 660735121 101103667 523228596 587754062 935614198 837106140 36130970 150647006 826239711 528270126 242153349 696345937 123130793 920854743 865817050 760496363 304345006 626905828 130811309 192916877 515680081 742499203 969514539 346905273 556000248 238951246 361702970 88396164 419960886 341311561 968126908 609535473 294605669 292173346 214087178 115187837 364191030 270587377 793325713 241421467 530269061 812210844 42683938 131626838 623362067 355948247 734137252 582824670 282391997 287711526 651644594 705462418 696576117 997102324 83323806 198390953 342462887 274105980 318181685 914299913 778394758 165739714 242054871 890474397 315058857 946875626 910841222 993045610 542735902 993718871 397279756 779759650 249827815 607016877 598434785 983514467 14815499 326853076 991898924 402181949 197917264 301039008 733821086 125306400 570288822 26991047 870933186 199907932 557471361 600070852 178430385 550171990 121200965 955392622 852994785 952458717 821125751 564219069 142492130 295773303 41962694 749413013 435758835 992597478 68729425 212533195 785216829 390624984 63173314 747371877 656847765 864020258 273827169 57673781 569668846 193220710 426963293 82664056 458538743 935483128 652407618 746657922 614828955 196540216 403868275 166863694 474613025 420254986 993028304 102356185 146863084 426339559 177951271 172907305 442146123 746577533 677567207 960197938 823545635 914820295 835199331 365075434 847507166 68703938 932438192 586686057 795055779 991195147 903722460 759929543 698929775 571668232 774462756 830308866 594532909 808521941 562842545 727121335 951926493 726654997 417776446 659999835 54074807 256013058 165453247 368283320 913939339 367915482 902385553 740457963 964359242 482720471 789863155 725385084 239933703 383822964 24181408 904372109 735465500 170285054 761197839 856298710 106391334 669750492 374532451 549934541 560724639 947388215 590014336 757372765 412322063 368551060 450062269 37476983 238221750 335491523 269866120 939687074 34008697 45085821 221769815 711906911 559539103 634043071 582825214 472752552 494099457 158323235 327933915 323539541 381882240 573878204 471539337 349476968 993092875 457887376 666415403 317125361 17617597 465029259 331322454 509959681 713777129 851695268 935360985 176059975 569267850 388143805 659481354 749922514 541756771 847732207 46916468 814214818 470217359 531171060 213331727 108791302 290386518 82895126 648598454 793099251 615347622 979881930 558373439 321351174 871145343 810214154 437528755 834505622 528891733 45563530 771860240 51031994 802609718 702616977 933801970 20152964 631424478 234381937 405464510 331018783 23013484 246758070 946768195 939275459 617598469 502598442 647381325 35608320 907829165 667138174 958379701 162450240 439487692 593395341 677070443 775176705 418400608 790953042 772304567 999355266 721616517 392306442 179771946 390595863 724963215 594141028 607285141 201422655 895879296 296290359 402073373 259116804 911575610 517259724 409379690 280033425 850427537 565142154 665535058 679866797 361347749 672525710 524324621 539565579 700527929 450515251 987353811 964079128 548242479 187196524 73777811 521786138 736121765 71008931 384784119 364267179 94022338 567704914 301120262 814444711 871808269 906376045 845424188 192517006 889625501 895666447 743358368 447789976 377619284 735437929 868693011 532000110 385246166 478626688 924402010 490148658 829097842 822846894 974661577 29699888 238791037 715467738 57195865 798371480 264062348 210666024 532562269 830849009 472373418 710919795 727151291 477238821 495392893 130829223 459407350 592630792 500539904 459676473 294944594 564252046 921898247 346709986 655542173 374352372 503412403 369669594 887590773 107776047 550030802 368583329 491919368 163519634 187363015 651208628 984213328 829863142 632030586 184736320 842873089 9529890 89216053 61444826 940966164 764930060 222329138 996951049 41378292 122693704 256840609 831415674 667595397 204066198 908239874 738696741 842477475 143915423 434824619 899012134 910575628 114844034 230122387 608127538 121431417 461804077 397910225 714414034 671744285 993920986 943121564 41798811 236612064 400865213 997638681 51688112 130692583 381940169 612177609 94111190 671551324 988272004 525502132 743457726 780420107 615331632 287091750 787404075 554228904 588082622 153509053 641757999 503578850 262856502 72248462 405698767 413632174 197904504 487647512 646338601 649906824 632366191 804516061 549308966 344777488 932215559 521256084 46295142 657898290 75549694 486079888 979422637 663595177 997740752 865845817 224780719 973629216 588147862 369529370 46986859 18608147 328856309 318821020 41346649 800778023 208951862 878660263 347233190 132592844 327090108 960073311 67941446 706712804 506040626 116979997 787604650 973990092 170828604 259831673 544572782 405423126 330445161 312262325 352628871 227878246 81736088 380234920 115453528 989725654 278769618 269463292 701515784 5755359 668531345 733401662 513717725 572352026 848217066 228866608 457890882 592614537 888174150 313942199 582789894 837198876 91482321 61720558 924577187 137549486 823066772 465437613 993442989 873589851 391725026 656874706 101903975 127707849 599369858 105038551 806010039 324632328 459677824 840845666 355527313 834442156 640078428 839597765 565954095 635708431 986873235 17040264 687777028 426255351 206223424 958798054 482369110 152757940 353877532 515261779 558560648 74469882 759631478 46944167 113298656 933347690 513143969 166163591 805694516 233643656 767771986 684294551 83673584 625188156 428306905 855467066 608333588 111053755 471363227 388035202 456806663 508380703 356775976 166558775 253056950 510857643 517242268 286381907 635340525 95449509 589586622 737756245 208046459 305129026 154921010 473142779 579666388 495545896 361174178 807861511 700599773 301270913 826625153 35257427 343489880 849829377 678282447 855006063 44370008 973888690 375882196 845880685 979190911 684490922 712921724 148462866 123735888 666663867 722165419 942727767 360926721 723878368 795578050 509320742 501588683 900384036 53383806 281368316 94570780 127800504 94042563 608123470 187347151 182729890 248343488 964708741 601438240 28492530 980063865 451267250 306899512 337430179 425230978 987084719 629564330 93135138 316184208 652748594 869817412 44759417 454178807 7742324 4622289 200686739 192819556 183991619 497066945 545839973 766851098 859768513 886452864 500452570 410598238 948474097 958212578 817782259 450250128 377607014 527887329 281065027 826267584 477700489 904386263 72963669 150921662 855371522 816704923 440397657 137403572 836241478 697883032 965190535 112041071 333454731 735696438 72753044 858971604 182888369 89742271 129464924 907907054 172402999 196849714 411648464 960472084 354880716 842484666 907320269 433438284 316161768 207387549 350465445 870845800 966012660 230315388 260836025 452327284 122345977 334757305 393613508 28355657 433808586 598803973 946955837 22954531 898833466 764756853 153928765 689230956 273263609 748755626 73173076 154423282 166593923 412982188 302867382 537286777 548220733 798233708 520550995 407996392 767857056 199050965 358285039 744841794 563383989 824667127 401146816 503525215 89419614 645593623 420777589 334762238 242050043 863098598 150098753 422234915 820841452 968358579 216370503 850579480 240858713 102548568 170339706 748972273 46518068 765634829 177789757 930277782 320929521 101042424 703919721 693654886 313260013 244070186 788912686 260892201 989895930 14284538 188988276 211092095 202684157 863781322 2125857 448827856 183237514 33349777 941900499 553184717 241703799 889412694 504203585 312752754 80137572 467545056 107784203 363081595 73100308 83072615 646252900 245008854 760723061 531256626 943467252 268101067 35096703 629589667 630250529 109345678 171570952 614221142 853816756 100763543 129849730 977648876 30470523 857053120 676613296 771540349 875318896 102035272 874882987 98816270 920217981 242514773 302198007 392431880 645013305 6856619 922614090 776215862 31008038 781441859 922724278 176971851 810807785 801623493 136227604 851645082 13401829 718918754 103027942 69655465 894996807 199406343 267275479 942398264 757777348 973670293 541443141 733526232 196532510 328944524 612585134 990870758 97784953 314835609 757513131 236185319 880242304 597651888 110724074 95642166 108701114 984715273 998745568 629342675 588003676 780220304 317030832 305421243 727098824 436004294 388951233 67411000 898461081 207859402 112563955 521513135 484775824 531100137 291849929 160339620 788636582 454330015 370342986 160994554 596124333 367503555 494953587 703091131 355332172 44905921 464258263 93566781 895516462 79917631 811378362 336949734 523497275 6144626 994853756 15474934 913138804 748517062 14804687 539007823 527037839 911868239 582190729 535072769 74736289 674954762 507251483 635536059 917876364 861182664 517551512 34762227 719209907 344553063 968331351 275225231 670069080 607510002 583268200 426794896 510916758 994154965 36042850 190472080 517799575 701733958 145948486 932686192 852708248 813509221 481471513 114584887 781121521 323652783 770812023 809344185 722489316 272436026 393963419 611066061 414977977 339104219 179305760 235785512 365457124 481244191 464796275 929064706 545699069 733187574 323286014 217904830 659579668 933823055 796566427 248958153 228797806 970087711 639456232 234674282 536726833 251136570 110903247 11792938 217353692 92188892 451501679 823664214 284047347 339915987 132513036 339444503 918744692 348119873 579128483 354374109 40773111 144032947 15089032 555020263 784442793 991479737 288655991 52399230 866204144 168631379 790564070 455846160 902370082 851658487 204633965 466156351 204560803 961708627 981602430 336138765 172753231 318059408 367354968 730007581 333346344 401549340 675280930 680253106 620549381 238953064 846770972 305747580 265715803 877361643 534827890 888851561 779543002 183532215 537489995 45714719 753300484 443696005 476992125 424942723 342178991 993237388 644490250 623657907 75733655 161196752 645990460 659265458 509029740 59526889 679324241 637115514 995644608 673190311 625866735 818347258 197948706 552942862 177947175 501922576 263893141 180805751 803437223 116035711 407562354 941500563 264695058 946036329 312078673 256013951 194738211 620590564 528879529 256442696 402455448 369670861 756244130 166567743 427943088 787753159 463468831 990456525 213489264 874181521 622865168 685151535 700534901 705698407 778449742 981885316 898429597 594950555 601937188 9122118 57436815 706387628 224008946 223861794 657883025 903494524 523561577 712492077 582017764 812710920 708003642 382662388 929536270 384120720 914857526 643975892 720108971 354591535 935073626 906462976 451528960 855786938 547174630 696688713 603502496 346856026 724096341 447830936 104117764 573021346 400034400 902950877 441588519 42495658 113809298 578765791 846042969 580386055 169988692 887087153 508028397 714422237 227889635 974989792 950527564 22420259 239268038 219562386 822058749 126512999 897254251 610164734 411736561 96693218 393643676 533325910 76164653 839216556 381569321 247927281 188871912 288812676 697133600 324452734 720842354 781422728 410524573 861961116 203505581 256594686 1974545 187719502 71637874 771760087 353497777 190009924 914355345 271082644 624451835 948802233 184585043 367028610 270768507 800886485 909781400 586009575 516513747 146583266 339449405 967506579 739090238 295772712 192093320 444880675 122350498 229534430 301355156 386828461 102264526 32443760 422671935 143988877 201235469 532456410 909990923 447447804 846069254 934459011 98598683 10872573 787030900 78086982 817386181 670282142 949269943 296188096 413147403 529291130 668308565 43100296 865311713 151301059 844460372 208598489 929748075 783648825 63437389 383064329 790347758 166967578 889268715 142592713 659774110 230870082 153688712 344064626 782447051 465958678 888330798 239348415 161654506 723458145 290137450 425876041 348680531 551627001 143218940 744222906 862794832 126157912 549474929 192685316 922503014 261745792 740965307 523210576 963648181 712279955 449232644 850500319 707654269 94564525 107500937 493814054 995964892 548139902 768435422 65246819 17218794 857846661 249211590 980502693 288680366 834298844 916499025 230942391 33150230 897822826 794991220 464420087 771403248 26796595 269281000 533600481 43062116 308995333 386583789 139712644 549749692 136648456 489494407 142137244 653039248 511095648 946827040 340379815 72605051 206715752 532649899 851590481 365980827 154894639 782703867 378109854 670441078 526790588 73104110 684468658 987644830 22392660 951956380 483066071 431960891 936465474 708611399 812600697 354096337 147301788 435192105 850374926 289208309 978928381 899593201 578433436 4800709 826657301 398914433 270297812 776795767 36140183 22736749 626085634 965583721 258041800 212978068 919922607 782655655 30275594 940904567 758392943 560986286 663746670 904221003 276064644 550426608 48822465 549277660 942645443 853037430 932475643 527358418 709820000 304508031 334296811 615666436 108702038 439759103 761530720 51606990 948124099 783012377 683683089 300041067 129423869 444365443 270915759 159959975 549974040 37122726 652168454 532679181 994840202 813153666 563871508 339543554 467307986 755585848 789476873 139905178 584846426 566920828 692428963 265797398 479715779 79313925 776265930 957120200 811598979 974368491 657345608 845328194 890632720 600534675 37995849 192652613 554282798 886522887 997939020 163022407 864614529 567428584 721932523 920818831 577484894 379130377 954917030 887905632 69639300 265449671 86485209 146934841 451920312 557393114 817353945 923664687 463698990 436152355 325701483 647310664 834042145 30048469 200621872 661466481 619182541 513770135 56031151 581717906 226598824 909831559 71567204 720386312 733085829 464803659 311910188 590605358 485592070 806540688 693386141 889426085 782177945 296757991 695412220 39171113 492372994 704053646 414589776 571997625 564836466 352439949 531495259 941966088 428647050 481714617 908931025 301470360 357496121 627825004 725476742 949193324 189555017 659842296 487175022 603383332 208936765 148767257 880484012 884870570 719507003 825258696 48271913 504201285 654039456 551933900 575389688 437513764 636543053 74441926 533617874 49009637 69984484 234069645 453678495 304538386 23932370 368032629 953398299 883973030 136988741 830560084 620300969 666801080 298802146 57647681 31447472 773514238 699319895 359745457 198440023 199321830 55124875 38258431 888795113 241119028 381429218 419724894 615742333 661428831 646467499 830474006 269068372 694076002 94157211 377516038 918420794 957376730 329704312 529348101 740930132 983284574 757279875 930778982 75299046 451626489 262055192 883595273 706002117 566082104 956268642 328515082 133048419 151013268 915426969 687897345 830210828 961045895 950964439 479861979 818254820 786197708 651085932 228460224 534302770 375056819 148253968 175423303 690259639 567151286 394712362 847011586 114589418 289764176 1154033 387082778 540624397 229662956 921306685 174867499 151274837 126387693 789192950 459751711 80029119 78931105 342487256 671213103 309212103 134066467 903522328 241442669 436823892 784225787 675904011 706736218 456862857 574258016 494003606 990113660 682088137 49384104 234150956 912706127 827986755 30386749 735048315 856893169 126357690 425357562 444183455 94990548 579268545 982976233 75643208 30780682 288120314 784134993 254002231 792223150 358406016 460295870 742477421 928235093 274037698 906586084 73074835 962580307 50461780 352095065 103891647 63111758 50361960 118920336 685669538 127300731 706099584 681220367 254645829 561113333 390721451 3811266 523026599 390285692 976059043 476371539 539430209 452133561 997731182 330138503 789309663 53546902 865559007 177364560 31444460 179723408 431157094 897372941 546819949 37033540 71110333 851930661 756676373 771818311 388334383 890249606 740398891 817975474 148626363 148289531 707492016 93122774 979907203 409039477 107915975 544685520 982622612 74350557 662889445 838016917 464326095 161706928 908583429 68137517 110767090 392718444 147101704 246745676 934153619 36434033 69048347 459319897 19012352 260280781 51224433 228586965 3363836 979979771 844672067 367840628 76767377 46137046 130914786 722602896 461757754 920640800 271929759 101551480 578765488 376317030 709122837 176709551 375812041 307426876 389561407 220134025 437675810 471623498 981486786 560933147 474815318 566063748 780841447 799790354 625687840 800542296 560622824 596599022 278475348 494518371 654905847 725090085 711920552 753081027 915255835 907448506 622220303 275440683 210187657 966891818 386284960 882050001 24254676 424330987 312978428 71350689 351874189 271362155 301856424 489706875 534474327 197889989 748868143 377161390 325827643 738139680 871656471 49795053 441581233 952611957 589263592 602138881 669919711 849790296 975322543 312653496 617373751 139192348 499813113 521754629 589500308 610592318 786364505 854099890 139980423 237494304 24281178 646043180 226026855 136796056 147639759 975725101 781777639 274826175 732066226 238945937 81800075 236152504 494254497 956467979 572335307 730001200 976440061 496151411 447034290 520189156 663657150 860564609 591999990 251906381 755331536 939346081 776853972 762815888 354710029 855409508 864961135 727001925 775020500 382151084 636982039 314578102 689048557 952507841 683590246 143501779 91061438 782757867 112194008 150350035 626226069 595252417 54024734 646183735 92247021 486400164 236500346 954405692 396328824 677459397 226835751 688056870 312178185 720489827 405263816 951080185 986374848 560986037 571753178 881158571 883084493 457043824 599146747 979778352 320346269 847745714 125467865 87707007 119400913 132394203 13784338 980052531 21788908 198574731 542177024 388734777 167697420 107213229 967380305 752676337 219317391 175140890 70089351 640109709 114335419 246169198 534307507 608199467 869544579 335212122 720478364 936474466 198363043 795433761 59519578 477016629 642561336 687976329 193766322 568036818 61668731 958341893 425293419 339520191 161767701 42573662 109940190 234104287 702013404 115872279 582193960 533991688 70455225 441968582 933850323 170876739 865687340 471897549 687650990 880485691 923486372 753651296 787438120 28360346 542322758 316675571 823497752 307036579 241639191 591683708 14934610 804676609 755969807 89220970 238689212 159585109 740782332 111349752 939108981 449288720 865918620 766582436 500903514 655710015 604494394 298678426 864638295 968571676 803172265 985300667 837070953 312513415 103760409 549235889 746881820 38122948 439840539 715358018 357794107 98546036 163505668 196840768 478631376 64520509 624760578 957322862 272182991 21846486 248559563 620270973 161910812 935727673 358179657 339202348 148226871 146296891 301129967 289724287 968919225 945491109 355537453 898301709 756891799 880002209 823378391 570837117 208358974 131362903 849471462 746382191 206781233 18605511 31302676 979381958 259301650 472132 414631578 942848915 550510987 584440624 388907749 16716178 97574230 748910826 536202129 191904242 158472580 852216623 92599771 688776209 447615194 649114572 889502076 27854604 313948868 425390838 815481688 592226919 333817172 659761942 507321958 61893923 341016768 453296019 981662340 160340433 761919938 456831326 781505201 714867633 596049391 672603298 831488457 777762190 899241792 602506805 328044208 637341396 905880249 36955997 664032492 291281752 838436450 139115635 971601003 489230470 855843270 509581124 336867982 322080541 227470373 199108724 377431262 674030477 291075307 960452400 275676641 555713107 173143893 585170145 954215377 28657109 581461527 854431050 519791658 942209393 859409840 94519834 358898772 404165663 70633484 901139161 532261688 526915314 662084932 365032452 151262649 787251244 802331533 676884325 127675518 810527694 525963263 340174021 337744670 577138220 496384423 146104280 642794191 761700648 594835108 375678335 829467016 609219132 155633203 908641838 773070960 655285422 388442963 444990192 362823178 38484740 624400177 728552414 157170887 279502182 626456860 112902943 269230237 68653062 719527491 248311590 910863689 146845327 247706114 284108495 41380052 56641180 681975312 271027666 149048756 120448848 868134157 576857772 241568901 691337323 672632484 508011115 678809389 550333363 236942483 401471816 672096221 983673517 561386017 217580864 189761877 308929592 802610015 218327455 52467390 858402242 278170577 909193775 816352110 502661931 542918545 866015160 358798281 966916273 116218252 871622617 116232081 892197848 33597421 948626315 948080162 909972 974171101 508787267 595558100 600174846 76213576 103820441 388694452 196734414 228844913 444219694 662399726 644311862 471915602 358645154 94932765 490064675 934316232 418975095 884352075 166402308 268360373 965039064 880560109 326169607 269071721 841001382 312903650 907009145 239426628 544513242 890558620 181050011 981596406 589853320 514252872 461636882 494030892 137771638 820508280 466174772 287307913 624474276 5236651 12140663 314187236 522872988 451863157 517763006 427515007 367563727 208475904 686327189 675431255 802325065 748585242 89054871 945998956 550707835 570407103 266527664 76491621 883920106 941358724 12186658 901581514 515989386 133475970 844159322 417815825 294570497 261341324 568212087 285332226 338343271 175668202 102585007 805548102 637525524 106103123 939328066 718285199 917454219 265765219 931859544 951065281 429421512 573930786 44755127 893812570 598685492 600674186 357473056 706832352 354701350 828172243 56236018 378484364 287548698 145802100 750091815 561301769 316705789 341952200 318322529 646702874 552320661 384627177 305780 624737947 845531462 646018319 752128487 43243198 547274025 779579093 361098746 25458437 468650162 502208241 372017284 195116385 719925702 435735000 261156067 208704383 277754918 523847739 903168100 340379760 461663212 18072542 171524026 785532200 735848568 740723882 238502315 502363877 444165002 831364532 90399446 93891163 764536703 420269397 722357169 58378121 2951729 877948876 805413544 860657929 739895631 118581799 171226660 614358837 530044524 227715113 721887774 505511002 513377801 183505313 622276777 309141769 556671153 181472011 111546014 466865697 506486740 379352096 804881038 988249666 490425362 85156473 392585520 128769163 223569736 102235119 34310824 550140901 368149869 920714860 4601427 151337854 364947630 762319972 445708810 556821125 718867669 920815792 811757248 139918485 281690533 42044842 565319179 948519872 956139426 499093553 559219258 127824924 158915849 973487847 13425669 600819444 348070085 253914014 2698674 250649988 231488805 130562864 790171736 940524864 567048635 56440380 572219278 292411347 195163891 908205871 336255736 616863742 322168341 467229080 799372511 739662005 934231482 600398701 938251968 341075890 474753612 305098194 306707441 139391358 944639914 90065188 884342108 32546513 591460029 83757336 424446287 224467778 233037278 886818465 83799654 88836646 489888053 489803707 937585238 902131230 468530102 340214317 302401899 879628367 218534888 608955982 886345998 139404468 229891308 506169081 756521662 961624790 519967668 268147641 810856001 763407042 308472670 577050198 692065578 959252712 716070891 522685747 76944546 151607112 960634232 266775309 282378587 731565708 331275046 768744761 386558199 373696930 272152821 820205227 638253436 185567593 713355384 911210463 163639742 107715532 213679733 522105040 105932726 733531162 562987262 115436795 5936077 843819764 158629366 72615802 925079054 964918017 93105729 321912613 732066629 182367807 456076223 712659367 718093674 138631223 724644895 947507175 650776167 603044052 962929484 820430629 968455384 10451008 266534462 871097923 504987767 237953825 64634221 442155641 990968460 802078976 27837569 411588942 657673408 695610127 61007711 108523953 179327728 88585056 538162170 195088665 429376357 683957722 495665280 199457661 283865330 526247927 288380887 933318274 137110079 535101423 380478971 776542421 715650847 422768393 209095538 591509674 256962439 773388285 844658149 525183728 22694544 739119093 75182924 63805310 846893502 324803063 554400169 127638702 368946372 895081181 250551062 300271084 953123339 294804039 705297066 626328696 76426818 914898013 341773820 955562699 586791638 526434358 782440317 240542977 995323723 273121151 524853241 766538551 600122435 794299158 93557955 388564223 664118396 61822905 421730393 618282749 18970728 838077788 581403801 227212623 174981415 682448342 866536899 700916147 775649336 423382064 167746405 314559974 588351998 220142194 356475107 155019297 459848016 22555021 749870130 97810651 69969042 245957118 580885613 111289925 354834841 698361528 462794284 408134565 187557537 897006693 215327646 662114587 94635761 812809207 841440036 410184003 184635226 494745206 282559518 409835934 559493647 622851384 887702880 435530355 31159033 974472095 416752615 816821273 449010506 581803621 629814475 873379545 583724414 219959203 249589180 166173656 452147957 663318900 825060378 535827039 399808398 247014456 719763000 62440757 512025378 505027668 572379177 349658804 346240151 486602026 472571253 975915056 912590850 171249093 575009792 763006846 372869577 102460973 257530841 4084202 458251880 760214506 54709844 801758976 822147302 122601330 562907071 113881765 534502645 364580546 917171169 341697625 478013983 893797067 146161918 427721598 24399357 73602050 720680055 775151394 840655886 268133156 18293020 333812790 403814025 653152057 834419905 584042862 730094701 128742581 97438663 940077005 248661113 719471719 504943697 777325954 195996419 563724171 970522563 164045860 970938921 610024066 468051255 883418588 966839219 966695962 894932678 490623516 889887585 872676038 16244655 944839429 152479042 234116787 631394711 171612039 589663385 647109223 98122005 135559432 894620505 332500298 54094754 417392762 135224033 639371156 270210671 537099213 888029860 948094234 291001192 748245042 118704972 940068177 799442390 705221401 8764065 299033742 264661537 701234333 900531408 5453162 676254818 46282864 120568177 756387364 46457106 622345765 869180269 539842237 833858246 427298324 911591466 373102327 958102961 467969378 536258194 599547624 198477476 406395584 529947285 370414271 490785898 528334277 500363287 125518400 168870029 663568094 202168144 461134021 7180408 803093137 392418959 815794842 133004186 522295482 516381353 603086710 139906243 60976041 4145245 321972270 25423672 152067604 807863807 79637205 842922659 667816948 641202083 266049658 268603230 467765293 617654748 679602188 834751867 670575640 797065221 251468950 335238924 528485633 642014564 313306663 978066500 7521782 17021036 781189034 530640159 16074560 318740845 875765697 772009297 635205199 894769839 532808067 974485477 578187997 551411188 659500868 12865420 224120769 90409518 639377954 47835011 903391638 116207614 926883630 383209169 816004398 208556022 619120089 838455429 857214403 220270674 890367657 57515522 289566141 790139012 190071941 439103199 329936064 575330654 803613367 595960257 959797579 342962175 962150608 130174700 456005065 611055726 481197344 290613333 408445350 922395046 380216596 146079505 39280075 394998579 310494542 773124578 174895276 888811812 312916823 624059827 650450011 75921580 248761760 306407030 133642587 828243030 524678843 500292924 153874039 854078836 822774972 119866972 817091434 510761551 685424693 324185426 495357567 548537617 692441836 988183312 22603357 526595751 581745075 462746720 116396126 132487773 155688726 342781 502023552 201665507 175196685 591615159 240730012 611707790 42724661 674659319 250160751 827939514 730244188 743478930 19297369 339487459 984334397 129065794 383644282 890226550 727946732 731643501 887830150 423395044 220182476 780933404 897012537 318362844 350955942 592770098 61647022 879078863 37544887 439500729 292756419 986824892 243240749 218627499 308804797 76743618 263663928 542711055 227315687 915685427 44837343 267289551 993479182 347452383 860214376 415184717 806302315 728886105 106291026 848065411 607853945 856304354 240377309 726847939 842130407 78043754 127962335 755631335 423501103 852719393 385970537 277557534 162793673 106020960 879867362 557750447 702218305 794967064 982979304 790304234 984422246 868431323 374858680 547009636 160245582 129050843 667133547 369377055 786617378 561870379 745575940 821390637 556052265 806221524 671370822 354689161 114012713 691228116 611478441 19688325 242637015 267277117 387562211 141181589 203918631 368758355 978139519 217166180 408664961 807137962 449819854 919380198 853238047 663160718 256696633 774900165 189630400 294992398 750788162 957854656 278616207 891155261 703528065 752413427 323248804 198406504 56428914 992660279 161241513 976295293 526520765 459371507 431865334 759779694 730235680 935805163 543606854 322161625 156118852 695070672 178993604 691395059 47296762 706052071 703739279 617747707 803241852 717298092 88284426 564419265 584100261 967595599 23405648 311918275 985894517 448639016 511528633 730122133 63964447 341951247 877819767 218026907 706748864 81471670 958038946 684627198 925604479 307911299 174219170 919056417 142745477 162227976 736582236 714012716 307529786 371368054 967233396 312434753 451723650 313566794 103583707 690207478 4029355 903398745 905106226 656011449 963898435 904239687 734534628 407599310 221731135 244603924 573567829 56179602 139742172 694025324 298001085 973769679 269168552 778917804 677879171 99721923 541559734 988282850 369656725 592899262 262757705 261833152 454834317 82551723 500703669 232298133 524723330 560622040 339768810 601210852 668254446 358397172 363838146 380069800 196023409 182502824 174803228 32488134 387767213 886267758 674969129 151150203 551891601 54039992 645367906 533847548 56483838 939566263 781070078 143335543 979988304 119100250 358651112 385792071 424607681 23110166 341232825 280200358 873130633 424945119 770399101 201282313 280439580 273824362 51305728 779467980 1431076 75999170 283562105 473555268 173477856 572424422 970378591 78276837 126852555 44621475 754131189 555778545 337562943 213000655 901184428 211825198 981588366 935212381 914394258 12275633 772400283 720955869 142456515 834165044 969141836 558324231 26673567 166626412 747157981 926314142 296773427 635140852 995757914 681517846 721355425 841234798 807765761 778301439 91520937 620890853 670114907 14992176 718606015 613699008 973360873 989617295 722945611 152082885 140155023 575394459 206126690 39192031 861763547 338073089 793482144 931823882 930412095 257437525 38852433 583275068 866316737 334835570 146507883 88345426 196136709 900044670 571574340 145469186 579279213 428294200 428792456 555423364 690753476 960957632 644980635 148261968 56463558 748860325 396824430 46379512 449151873 603877403 450449978 81873411 203505504 535370789 72339429 916825468 813630394 551167204 333612940 548354662 851261365 989465860 75030964 903047648 493400975 297901954 126993554 271511372 168592599 205255788 681264300 36246440 535059060 423109755 327508190 949604257 435310348 363059271 402209393 814313832 754135543 926349374 677596950 816378774 98242583 865083872 46344794 926383466 172172776 684870243 796243915 907798822 824344811 812289814 760206366 368937310 297025866 565289207 726298379 831683987 346004301 926446530 973599455 889193968 177388258 399436000 885754772 433329558 880069422 57897074 75562518 476233561 380348732 95318958 21348942 938612289 194980476 695234484 76232169 825206177 991294920 630504942 833436510 286122564 562851876 958270381 54045006 349931994 880122933 339255158 610004737 439683218 59375084 121840372 730673360 246151523 785319287 288988405 235151249 344000957 573638126 622718586 838715943 47764632 622403737 615387187 774819948 928522443 496061464 56681456 95981310 485545426 999901552 128032816 246066198 205776529 353089072 722590415 598282357 9953408 811490268 242377547 239092412 535933895 160286862 99116426 172760376 293432102 620375670 760651993 850387997 773996376 608972652 928781506 200312959 537934753 398289140 860575843 5903590 206487920 989098457 307371540 941733067 605009392 443059882 391091385 627077553 27183937 525158663 973889008 399992266 331626497 334004752 620256183 225888532 447397537 908020263 420958203 915974045 890917575 55178121 863416077 267908859 362130526 487216456 655476155 896275610 786476100 203536455 201929485 14872857 930465538 227366161 313126603 658868281 472015174 492405461 218306860 415204799 37837031 551385474 103428822 5574729 106723708 499196216 480239978 883000078 350617700 347808860 852513782 662005058 391791313 512849269 540933802 195398530 113995435 947312763 718860583 563094315 458129205 445241790 569354273 968275240 863868441 483856818 533611542 363031581 591491134 24697887 883636442 232840037 212512889 234318100 198961381 560658047 394615166 885048473 179100764 268759038 904502063 976423872 801139630 431043184 603984709 576681825 836385964 516926083 197974616 466077379 972175574 766511765 977874932 904440673 523654586 543467372 259257061 418538173 97325356 353748625 507827863 523337097 278589252 212070429 685055346 146519262 656480491 623909912 288882626 341545264 650048971 467911184 506249210 244188278 225569345 701076705 820375202 485730537 211157392 119362430 918732378 790074540 341171805 437382737 685760477 902291550 693505586 334945600 123375802 320458336 682944559 552056697 922341670 507904320 14112373 129970482 92631507 709266537 837025035 694568512 913190349 113034923 443196863 302604964 257110040 392786681 693232436 144079258 548362796 362064585 727008503 98200545 789134553 875623398 291799747 439247777 189784354 909246741 491487700 386184377 897310713 278092916 112811841 874338501 433527768 210970428 957132678 422795245 243582861 949924922 823981565 457986076 184843936 480612857 573089247 401824678 111769857 63253618 687488476 358628787 466373028 674165469 211594052 164685158 548480742 266030500 660980675 505686605 300420704 615781713 876052947 814127405 423365273 211243320 707491984 754252389 493025447 73171471 277562629 834672869 172315568 722593368 168228490 498011851 203556481 546048960 242333033 95472269 370503095 573627745 177788251 543717443 588108540 903156636 844452656 309692023 779853197 873042848 15540755 81818012 455998685 356649932 161586254 135966402 139959366 467075183 280492117 779035070 176453787 825352356 486945595 93377519 71789155 182808501 406379858 665971126 603843825 431875818 283991348 983608959 171606383 154736660 157843438 835291262 697798139 417814402 825236633 540467967 621147547 853732932 124986204 288545892 85327007 248313788 248133679 164172991 946519512 807097612 783329522 731398363 518477070 820279249 451001308 64935659 117907419 803637120 690202793 106346812 871588365 972827215 879668815 171683470 663633331 61623999 274660604 330948712 243776652 985849181 70426052 686429374 614361689 561655981 677230995 90089342 387571996 667423475 979241943 672703535 712637645 281163897 209386326 511086054 548651881 929086392 301291974 614157142 60512733 362944951 163021429 937255882 624975401 369346143 102762277 14495323 987999026 502557961 820505168 513854848 788474224 50326620 749675010 449204230 749198477 304654172 173869079 738481463 543653488 332324188 86432599 340943125 713888015 363598626 17969783 334338739 819640257 86258856 10513747 111342693 570818886 387178716 420066080 135155689 805541656 172222385 911937292 738181627 78295307 285514605 272364662 857913344 750792046 965116389 815331918 551505575 678866111 167884367 540509565 729789190 134904939 367528737 575647580 32709295 874868039 432301994 338362804 411583578 987151779 632184618 706164194 849635644 970173655 365286737 898123215 679141899 660016787 179217704 263552135 885406921 893385456 75976905 801043246 201436352 688052418 976438738 235588535 781094685 806495857 214572658 628822818 326933093 204806549 253846988 687231236 135316605 586428211 584816027 250547214 848725783 298262380 783634990 332129488 122464192 161498499 141034090 212837931 176599497 88310591 990670289 206445372 327870021 467446144 818054695 5643668 709126220 793261570 139126190 262315903 629556271 919824781 17672019 268389680 16308447 406343736 63484210 301523298 256064800 338963860 583586635 149052001 308024647 21582274 678729000 82255957 497675146 166451599 137040961 150940192 166592292 397073326 771492824 112759068 828240952 505348561 646481277 59323645 139186446 683886461 86270467 922476259 745731170 942994903 388747269 57543001 606394879 604195670 634216157 200899044 187869212 551008222 995499290 212904187 803037018 681266082 593094056 191894333 475999204 666976743 565363172 515211567 169042517 646737746 985391117 59128457 294739985 38971810 80760937 919208549 717685140 858855387 591445757 955259566 303968072 542490648 178175055 275319864 280423716 841929701 562857322 726158834 190072184 462938411 101248746 969075181 212051992 450891494 94925839 479390650 669968663 756405942 105736571 987497130 462182035 555519644 856914413 703047216 74458936 140966606 698950471 344405552 611854049 119450010 589165992 993885978 309602038 908993619 604550672 634665571 981078624 490278377 246694597 753574600 609886818 560575920 853288913 562296847 29329956 755817097 642423048 164182710 6707315 901953200 701138105 221828657 288847090 848780791 491328480 858994218 248334023 635070974 171069761 706508134 891463871 548726182 663215936 818166918 749720510 530240348 776820925 142190303 350032154 689515235 615029674 645452177 576915592 423978339 962731119 551729034 460601983 486153446 699241850 129621511 970177179 135973427 226073680 282117321 733469626 175394701 50733350 377014854 337416726 916281102 110271159 502957680 483251029 97518373 849872912 540122391 22272057 890682589 212253077 982618803 836437031 907322616 3154250 62806428 913488143 472695973 11802414 760745186 243659341 166449079 28712206 164030291 264189926 75527881 242424950 844160186 762278669 348138587 50929191 316869317 493147848 372245354 374669963 1712820 568329606 242499555 153541569 529885268 199612215 385964086 876174261 992074667 277705372 733612308 124433879 713587609 232105630 716188600 514004619 917552152 697976059 504767579 871948527 413529150 575329494 515016095 840802338 727987348 595300216 133295412 456171853 524987140 412658348 827834778 426684585 674674918 688793711 311819980 264249858 935436704 292394294 430557722 17097749 30913781 763061923 418740286 892036233 750290094 410477968 506688102 518534598 397550455 933170344 306042125 494574731 99777590 461708695 293489871 919113044 773631193 579683468 897376129 521548335 462295891 868770936 364704405 381474730 136429731 120110176 349220077 702323659 421434272 422559717 825927908 468931193 226711053 842008839 547817775 692477114 8833796 806493057 285458158 671453308 988694540 724148757 382387043 574781612 401586399 147776974 835148715 984663204 522760884 355614670 664757478 346478855 459052023 652578362 241507598 669275876 988201277 324790100 956728585 549088633 154147110 993927889 479197254 141087510 808357130 50182838 814851943 314088777 264314158 983147338 148637578 940434113 618809517 175674365 569312631 455080899 456058113 5836163 775577292 456559375 694439446 657284504 422051830 782073547 25752588 319132477 788627286 181194740 379679693 297174733 180266621 641976427 225411340 211204402 592952537 978726104 358542009 885102938 33329420 388635661 39305851 712771095 278382702 270244127 273635556 485752452 725187332 650549555 666283354 587591636 505774715 464074634 143831249 322742794 430677960 263663878 507397973 106748009 319158543 945311917 481529648 670648327 252500251 207471231 494325877 930715275 694101937 229947366 719691445 526564729 762943963 611184690 653317715 241790904 656110893 816228340 950970232 690492388 345116551 687414591 211598186 339995827 237338827 384934710 693269086 915959415 660295124 173215642 496158492 981572494 699110689 764159648 821049280 432468842 189742778 655542915 373802004 688189914 823365143 362239359 777606844 342871050 273713400 209245131 204135972 473390449 400929934 281006509 387467527 3122506 300345738 297526434 370832889 143661205 852449665 700612478 212843246 35035310 138975710 495390264 338526571 249905211 767763542 389305716 442441901 731667940 347647396 290482411 995891250 291655391 850770336 232198409 99223120 316596503 875926456 885075969 683502247 575531254 369986477 695286447 805558834 665932582 919086839 400441915 630760341 508739281 159275363 333813984 127465617 513737483 216908954 834242590 60292514 552327277 846367093 728717702 197255506 249620001 986370340 746819191 532644483 676298994 280067513 282829954 519735334 557434112 594497658 657381119 677130907 775265036 89298334 457632322 739932649 863785820 655628863 890468933 144634888 355464419 753155977 829896146 397206170 562926563 668792469 848982909 583587652 344390463 645408154 631665687 269065977 921947524 287042598 793034790 150133414 320334562 42554856 858975154 915613498 126060838 505130796 154373621 236046074 314628685 272454815 766793709 509653234 210543786 7930697 600310534 285595557 346134032 45586750 175788047 618834680 477725813 190983582 820818134 221907134 809904832 564303437 849145927 466457227 759379597 287124167 493303659 984956698 406720273 452711416 394216112 853144169 151347342 403114333 332690664 931081463 297914695 751241332 691001465 538102178 489982022 855609125 107257551 381677982 146965660 597555714 664616695 641589070 757612002 428846285 104180121 128138223 111464706 795866834 462905994 759412404 357662745 739598927 97816293 546452165 972379501 388784769 346950245 53717280 117661466 143112566 431381735 187562515 232804802 825088890 419395832 413274317 520340608 387662960 591268186 500117282 504199948 402746140 250345398 473878725 140696887 405798755 901481490 917517870 60713702 171416526 513920713 135332166 455033134 847074581 805435181 151241270 583535833 637987672 723272043 442320479 419598039 859911416 275361251 40705579 97950727 689681359 394572112 540114624 237181261 81372328 571669202 384623423 35951521 596111099 259427320 112384923 92191073 644033661 512992484 63205229 789237488 347730397 369567637 474105927 939084293 664433685 293487842 855773491 752965970 177336786 613131930 449093160 925524349 176862586 742744558 605485541 904918772 990841550 887851368 920967245 442019748 610319761 520075069 118505061 658556011 199940758 94813350 623897895 551910296 390733117 875235562 442927963 491975694 730898182 65242688 200225160 273676107 842223043 601034292 690379285 430373172 740706970 603984911 985500870 653762523 53317786 566914373 238182931 452337083 165162556 548309467 543174001 330037993 334683050 99293273 294232123 896990399 209547609 190569621 586063520 77518991 766107049 356510714 883202237 975696093 584534542 543032397 954478966 978201695 300054411 572973890 940565967 62186706 467200303 393559144 735594145 831806507 265673258 120138190 435471942 693497150 502084881 734577157 453942813 180458374 868283163 198480275 74067774 744141842 418345681 822020846 81096250 355697038 410619459 602750346 781990073 866750557 675500585 519912245 129837314 574953637 414363915 944459551 454381876 998916301 948608027 191727916 215096654 670445001 244166336 938152729 194317930 546331082 697640987 6926162 853187788 1557449 986261217 963122342 55491337 345348337 415242629 894929765 935278761 980519411 725942872 804682227 11894234 188303407 439174552 105808749 606183300 267111395 866926379 451179116 198725588 246777478 597572357 955983302 692471920 936810035 316912241 516898353 892911223 299520148 40993729 61345496 193577167 852566349 679329016 943208796 926437552 628473013 571663764 342499630 71258264 462639881 399551821 430946639 239086854 160101804 32891937 127083616 469136319 79961233 809486945 976049567 729752226 410907775 155036641 153483885 861714106 82539968 40320257 307162479 615915081 570831638 840082950 548349918 426009960 962062756 528361409 725645256 31675068 928090351 830877268 466513319 695113064 313888217 570958381 434540547 837938960 148647531 677862108 469491883 776443305 960326321 231872255 737401894 750845059 742390376 342072757 612997043 657705808 786740674 604688382 143982029 3077998 837368676 51107495 472127349 817420855 937116864 636237941 463490724 939950082 742348424 526053383 782535732 731307197 730793114 242199409 130133443 630213602 714841177 316322546 447073840 575539116 831753507 860466340 436674385 692796469 636035940 468426094 44654018 384162379 366596361 842806449 446985916 57784425 731467175 982984177 848145191 419961981 295658923 851101697 94846591 974377146 646290948 398677220 811273749 121615407 118776555 851803233 827600842 273334262 472482993 394555522 184792656 494986892 541363129 606879414 937688126 119991276 225811057 197999603 657669649 938175846 668062008 328581057 104580691 509935835 852200568 506149859 188317692 774624582 587113491 760684911 456761815 362133213 600680835 549664851 475982394 134759961 328595657 305632651 111680266 554736435 651305153 998461657 479200950 846834808 222688352 186572836 299614640 119680149 714476535 464905544 223657612 752569833 773145490 216839256 425608274 66823807 623011908 730833320 59430627 334169493 538692651 984116484 165035091 359757030 29251060 108250599 761494399 422209559 368576592 693837445 111616966 67816450 851893426 326828334 367618168 229910076 845008424 471670357 294010004 222592952 697466077 142522754 773419228 388428657 450278430 392687121 153989546 792071077 400114089 991404902 992545991 562954868 457271735 45161947 387497707 539834954 778077317 856863886 139801651 68542264 129829088 361860484 198679907 409681514 642167615 791496706 329751353 580806189 639607776 636262351 394691446 221993856 377801490 352298583 161172336 98538793 43335279 729838716 365538777 305432433 107688362 553977103 705550516 309940003 886838867 122803115 55508277 51018820 529588763 435102680 315141912 818367715 330793319 936959198 185201843 916276314 209638026 839523956 964406962 426298207 906256826 674981381 196263040 698799517 802369667 19682118 581653867 639094109 31564789 319475544 437467295 522751088 375526006 453955627 866620425 889924442 606757976 585225500 259152534 958633844 485909106 274690180 67436454 739116223 114154559 669255366 878994500 96354088 231573574 470844358 442042251 395320094 449067512 65564640 239052449 77490467 747576712 326021984 20921969 699240687 690956408 556034314 178090184 117098925 515191074 947297408 362322806 173797370 768459094 653596309 399620870 591713269 580885003 677107738 395008825 996046242 123099961 601054274 634022545 210988034 362080317 129935930 577463200 712764001 529906389 579106686 119163031 616235739 687423364 737676739 858186663 207373069 687803666 123053066 44474815 6491493 16091270 791105345 482570234 640157849 988445297 668251040 131050326 592257269 393336979 37465863 452399621 67462620 693824646 314486542 458296177 403263734 955187536 160319383 644437610 107012740 612332416 269605070 253437380 241069233 762173861 768642631 94039232 437778179 655647246 724396852 705105605 3759220 983767602 838180790 842034801 726244727 938087188 175337596 425662984 942225670 630089740 518084534 723748942 631525829 487564336 345882195 561731438 566199472 911380139 955647871 480064405 153892395 265666948 748054658 81751121 50178888 877743852 911024990 251335608 643502707 445588174 380759570 176047438 678079235 513705810 559820557 528768542 284967690 562464486 868960629 168308214 829830496 811536486 143240425 211247869 438345183 162102188 412672960 750914937 346249133 399080353 383050303 796598753 746088984 724794189 58747741 803116913 557953197 894825648 418235611 527911173 338981462 368465118 821185941 18739184 668779988 212825287 336753248 534272355 366936026 625137748 269837936 975534499 885663489 734101344 785023020 847809751 503565918 127344515 616794420 831631881 62775459 704930310 254645698 368269871 644700636 352647989 175695428 887665083 238912626 885534819 161358840 684658755 887717397 442873296 597247941 320109370 803616924 731389197 987643305 139581645 206967944 996491669 189079026 284285849 717563252 404529840 64304516 375708444 302223515 660609169 541531399 563268224 318424932 992041773 55177792 203458241 541061112 111961036 137553545 584147241 423835156 953581699 232550821 357581795 153597297 561958114 24831868 621794486 922113352 135784456 919790399 656557545 342384579 266924082 471740506 160935155 325617990 913869186 602819471 723237765 252536378 480402713 36802921 842411153 258858745 45351164 131152199 644636078 883446712 715684676 113273721 489337368 319951924 410095801 576700834 942234208 577126740 733622099 646889485 621102835 729536485 854696906 503211223 802322260 497762732 949755527 639243261 223030522 337282126 94728451 442830465 606918616 904561372 805169218 390225483 626933172 630574548 959792643 423689503 457310839 240162544 453557561 727934213 454736860 683950626 819934076 583363942 55451558 862338786 852534529 695015352 47847544 324728285 268783142 170835429 36604760 300038927 995526216 100942128 835588629 800730650 23239701 427868241 909732070 938520859 962598321 560814128 64269855 753975905 865894752 469671621 330767969 307839560 778088507 699266876 806498382 56601344 113280374 917435573 623995402 826236930 492561207 618272991 328712417 227311439 554475047 793576122 281554280 998789241 2915493 13180988 273082396 800975453 719441861 422981951 59204488 369253659 703644130 268018893 650151612 719376873 420526658 273357514 460778324 546360496 394263229 778857217 357137451 275278526 447528988 758842144 529012659 618101314 548930106 565241845 487250613 985647106 449178698 411948802 860703471 269764065 929796950 835464637 639702941 131668274 768452762 864413985 569688858 223175498 927333806 992095473 792438241 728124791 526981616 513540769 598759222 584766570 205898384 892491106 468024649 132009946 263386258 84797127 388850241 858025287 132097008 312103440 717953889 317514823 401894617 237808373 320208765 729983808 335708187 32118652 634048273 223027532 578003035 726737570 253240674 316585922 108627296 127901359 346897152 224701685 664059185 242986538 195821930 219343087 975689784 568765608 149145002 162232658 910852506 733533002 74154092 282839352 82536191 554098713 109684391 60776204 902327869 12208711 732629875 681242490 428096981 202135927 553999379 775548191 953843299 823477876 156517222 496497921 966358906 53414243 671258271 102118515 682396721 518249579 551661838 190848554 850581358 583990892 787137313 487424003 121136445 631845566 640518720 657651086 971223353 662241708 653050029 966091555 285070269 56453042 847368508 628163853 687613740 889198920 618968021 222784375 279305673 764340168 132005955 874396229 355341123 883982034 278907706 892075535 287197423 595264274 264481798 67420426 418419085 862158079 102728328 356397324 818369156 506797076 673350141 444643134 92141293 676869495 522201061 763067203 853232003 184215422 830899503 409557378 462296556 819856087 237495715 980870015 409428032 197457567 584853189 216811119 952658524 401507522 766931532 782518593 665298172 839671246 29138438 79187389 529743817 125313967 516922120 124811228 998453130 896988883 563664679 501132107 999909685 641088003 203244276 553699530 182135164 728794279 654407865 19103465 719863522 255293738 429186724 803282962 797137653 651917220 658244806 881133734 261801228 632823749 956098070 491365216 172173944 557269028 789756167 757103987 151629556 50679778 83492657 347131225 721138353 442156867 606017030 35149471 536978708 410028521 743914976 258097754 404620666 818687685 632058488 781002177 3894276 480916962 884298801 927898692 412753359 328662167 361541547 620939337 103387612 386644410 212589729 942622298 225862096 808613088 269724284 751555093 639683899 954816051 154195424 158531487 970527892 786031304 71569656 392446903 105557189 609323312 783170130 516703882 456037732 313904890 938525278 904882820 173879703 930209586 64193760 722438601 458216875 33350445 350510907 708389911 503933819 590335758 482507412 496050118 874932378 47734638 802488249 77999987 929475672 42267371 260570514 586357400 171675376 167597530 950461194 3864805 135338318 425781418 740166779 41612274 98888963 945079033 952137385 176856186 860896134 626441257 646812437 636837590 640805884 568453669 209764672 786573575 777340856 376703535 359732742 661864937 325561808 569572348 629452773 693363573 23385203 246220634 169229934 285251158 650867108 282713720 466276932 455125818 479467916 888245731 901522231 594996740 192709539 186227283 458119234 282392424 702890517 369408567 3876468 859156774 267097703 210605080 566907409 312844196 565039120 584271527 775766162 217561462 940738012 763992501 634746625 570752458 745702363 185096413 786953704 526806354 705679169 215300595 682660722 398621647 394901656 798641970 928809531 823571572 625528259 762616082 995255163 847054538 167805286 993079239 433000825 336781081 598561667 20858501 44559318 889732561 421770936 910244657 338020257 831563924 180025526 796445356 778294273 780882167 640482115 323789455 396409183 368672083 623473606 306116521 395442455 682416369 295343459 209305427 800240706 246965403 865597569 349071394 548575226 894199906 991556544 2581545 522794466 724786744 289658320 477980451 162569893 835381929 32004867 180783489 937107290 688646675 49408227 334740381 154729479 163431967 489327040 453867583 425884715 953841715 478618014 990372699 655320751 44855025 967057007 957295253 435011663 276832645 453669765 191313456 409334070 598421305 767157931 341931067 810380832 423735203 462786454 358984483 795633115 978235738 653929698 787822864 578449429 442291940 168016742 558732766 460159404 780796001 769139294 353652920 572413456 933703611 662248289 194155912 771018627 353579938 983690828 171068440 280375626 685795463 969881769 589985593 987840527 81998453 374278849 345264147 16492710 863774647 179285122 102265069 378244794 712547655 567107774 747024747 367299193 922418445 866174917 13557868 273052307 25480315 567802861 656835476 311933441 607189082 11480837 875519780 228842599 430820851 151466975 153895860 776919493 78647764 316785365 237451218 298570313 265182089 933583052 205151483 381263316 974816904 54466635 303234230 257922376 760048813 388937971 357308385 197655549 787564443 721759700 874271006 756884090 63208363 567021595 26946432 276973753 853396446 151548427 601913362 338122781 625855838 503663257 448903770 308961485 837975179 883121255 940215109 73774621 354704320 973120349 857565514 901103495 563736849 820132878 815909500 552844304 216620492 98184501 397099491 437937955 369235989 548571273 738939493 494108197 833187444 165139756 512071380 547638881 398302868 71391429 958093025 215892444 416947237 655193478 768996699 789914802 361809543 430046408 926086006 267968360 72001567 876072104 662211856 770617567 325944803 506330207 293059434 758016481 359785290 164639215 651167050 749520591 251419096 740211922 454846818 354737041 855698945 324915100 65518643 753375142 665632735 914445599 816442710 633274123 85960585 755791524 782696148 630525990 72044863 373731869 755490467 728520301 190344128 22196449 329060521 715697516 274785866 556529325 757832903 796327712 376190317 902854394 698740596 622073254 264709302 93367249 63410099 319125652 360318174 452762221 296730513 964762634 940615865 379587125 684668653 228416844 606818131 30218935 19303925 152149522 751354691 835024094 524122572 136263155 980211487 799324217 520352474 760844159 211003468 377373805 481783384 31039886 138583587 359935231 627042838 492146779 440425118 448516842 959905464 574874584 458325370 223108992 972708841 111883658 170328660 503936439 884542411 12847799 30920706 998339954 784385296 970525176 506667212 772699474 752136309 331293832 227818922 488426616 627019987 264122945 61602250 689305436 200477093 159012531 188033775 721563816 565838310 618401095 972316667 257317641 727238375 325205232 904797413 730499934 837601057 493773057 860474027 441960883 614146810 459512081 90511761 873693667 163322283 441146126 287265898 499124123 841135340 785630019 633117333 443357075 623391957 71484748 903688612 382850146 826735355 325284285 887102422 35361275 655813743 181124428 124935363 143753281 922933730 961543807 210408637 656840969 604121072 358419094 115054095 838297106 554590664 130087957 836586771 928880767 356360331 76701709 748313257 910822276 308587449 818436609 168374008 895330542 502565094 924652437 461408303 209291325 622799190 887106549 344864500 139595285 657110481 711227272 424193146 779718353 249569737 94323121 718797634 318887124 437708662 568183905 132397247 246696361 47234450 636469790 916429214 471479924 622626493 676181253 561046834 734259866 600660785 823006913 642269088 584854747 792858207 11581378 821615566 365732515 319471028 771605862 856725319 544711450 923566859 429439714 839063394 813137617 248854498 920097020 765315535 91787216 924257821 86521212 997742035 649625186 516015966 739829247 912131185 534232408 723235054 132511674 738304077 296477906 39162215 60503023 586088641 245494707 255251354 667294543 261402129 699234144 61185643 515463856 486601062 702432567 277451631 497168322 100705884 231561174 628085330 403982887 16557843 868131204 72128116 624769129 292914610 120555767 223528719 41426993 282944147 8920123 259623950 557500218 648903914 485680619 55499489 825628776 949220309 977843162 511576959 496829341 290177433 997016002 441724723 904497021 960037667 589420588 251843193 732958644 274005549 753950762 843416038 447181354 439574076 453748634 653351641 31063332 138884217 790026442 44242876 27739194 949148053 265349978 675967834 564148206 851725192 837831604 487268498 842901856 842523948 675487412 442905682 804984466 111135950 819308475 816306721 913402441 843130054 531394642 475126287 900665678 568456434 710477371 246378118 639664617 552600047 783712133 308734579 907516401 782710432 762166102 851162063 770137661 993938925 529339215 579619090 887759083 642221933 24364006 178564796 615035029 650367056 295939272 778305773 957253932 128283988 555648047 597444424 610075507 803082174 343960389 562254712 919221801 551471550 170544061 97190543 949003833 721173436 378931515 636853082 127579005 345808797 426356649 481433675 98116200 441156365 971494447 796444971 514901715 995217876 929836684 117213629 292171472 999615807 808528577 305633737 760658177 665767100 252242994 110041941 554175208 861670299 182087843 744900307 39845193 639029178 374019473 237447439 859504192 802848097 33135692 856917232 633319369 343737616 372375969 988298735 313728597 892551483 788186571 553587931 157122589 321214822 320355233 36602907 247470936 252147441 854340143 622648436 507988936 767878093 199072937 531180755 638855988 632170673 617922562 414117196 377792947 786048439 318234292 544807142 127477710 837612181 550675710 730946314 17683020 24475944 232804427 792234040 156041677 438230861 749102671 55577515 251172977 188416607 691486366 977324232 889647562 660192651 318335322 732383029 124544575 273523598 902591734 857852041 23126382 95458166 748607389 362177808 238961541 768302072 401786175 102871495 275366310 607801667 720269392 479684385 682579051 249895026 8476950 774350855 138742867 165262398 280853900 854016667 137879806 234322722 958761364 267903820 473980501 312388495 243345106 962953993 679920893 705085412 312721325 911969130 137163429 869177586 796536817 762235643 129950880 986094110 720922898 262347508 643986670 50009677 57814597 305930842 362294300 836296851 345182574 57540769 35804461 919462861 70834355 397824661 231497756 671248115 468586242 547477527 964100291 161133989 923950075 104963626 963426946 878582369 702326719 200402404 441362905 11999837 95830995 796049447 82815060 34674250 42598443 378322900 180548600 463659572 219381610 17093728 949476576 826888075 598788068 632301947 165678211 118665613 49789469 931725926 570815253 628268173 173661251 900902204 699655618 119373985 52555876 549937381 748504656 421951963 373216694 240147518 304603701 958620356 748002494 378580573 942538951 137082316 854197916 105951076 692952116 654485998 564127336 143973169 675095511 294689145 951728541 568293957 16682552 371263067 979120016 195255005 299044252 704423041 706203777 857337361 405652582 481080033 691718584 333586433 158265811 629124139 787106659 929192621 326410758 500230880 343237939 348201544 612202217 344245368 666783697 166075162 896681981 807096279 618904776 941637736 58022304 826189592 249661635 34243801 236788961 315462333 853269848 80952582 656229496 975790031 472853173 718864464 611579191 458670570 105313345 660032869 279416717 545515970 961861152 960743365 640694568 246011345 220055022 604731113 101256325 45887254 829888958 985867473 938938325 797474300 128961466 95455231 993271035 193399243 46204459 766280011 144948397 443795106 796569996 936681768 704613085 818796596 566350804 647966390 830447652 841768376 861074321 675541096 381578371 708148398 867244943 748866591 898552122 695964177 781537268 402780781 48988420 452726649 969209477 224077375 289970778 947796121 513728141 656724421 980442963 714188549 705275975 433202659 893925523 653280830 2428044 745706541 440790240 240665514 496890939 409675556 439780600 918784714 252821743 475588215 913898429 667364253 492389152 670607090 431816665 615801360 727834847 96626560 158504777 246744806 359490344 884041226 583274418 673165955 565651631 47892619 217529296 714497051 641418076 258538244 888959427 250487353 869890202 315710311 986224493 340527538 259723221 193241585 641290246 277752942 418297345 769447715 815320793 848435134 135562787 633186682 768458797 253273934 628096365 683024713 707603695 923750709 171085937 48286981 978706351 589816846 800398511 878280208 428911717 520987833 302553869 593807254 114817007 739785127 166297000 732136439 955082357 448873257 736666503 122519985 302696422 313276196 652968660 704481844 485859117 993793048 657256067 927152188 745695843 89740438 879338169 306961768 500785959 17463401 792169689 493975249 323149915 762636213 593577891 897489954 390522720 829156469 380663751 340438934 442549793 923589802 175556200 362020536 853698429 731482369 165591303 439769700 500950621 508124464 345810009 334706044 653639323 788849046 639667246 768501002 386916041 539745743 797313243 501321752 445247731 801871838 789381891 21463931 460115654 493055590 813229214 304908679 376964098 375659793 553369664 540296548 21072073 416052101 374110730 35132510 348140887 128573500 198743057 20838761 644251587 485697465 193709159 221321170 836361515 629803570 264160470 259231154 682211197 665485992 773141576 85989820 180349581 80069275 831056656 297981754 204719237 364432229 718784942 718432223 205751759 668280742 877233398 938079998 337424926 196924368 219998477 792489267 602304674 661088598 346871891 257250764 48043127 110178838 170022588 251375312 803593689 396822890 886423962 946965229 989005946 490023406 375678330 767516222 107865641 714164768 80603538 251225998 555595840 44733927 181060220 720650148 455127975 228473041 556571187 616185781 271333448 695210891 218948833 120865459 903491369 565850489 374738333 986614457 501611655 899888066 77667776 602325860 528469199 557022477 417215121 954338395 365220285 319877276 168859517 602896233 704477601 29577106 324876806 365472186 579525246 481479953 929221886 92474504 141925224 476422530 664725817 660733398 673769889 459361781 712494948 367505040 315098163 186990269 852673210 781383355 756403851 568411583 374754116 851920638 116361910 147856484 329847870 567460502 727410095 387959220 596682395 940469323 683450961 855224898 505395287 658267729 430728975 537218732 514628478 991978569 645528799 139970159 707815093 710673832 591031947 27428451 424000847 946806770 86883607 221594515 471701067 608050494 338171805 582828130 287331470 605880996 473323952 662093376 222788409 261666585 481644809 316214039 923159491 903769442 781883360 330717956 396883252 814285688 760491326 949411469 295841538 236230878 952641520 200110907 950983683 20787082 246154058 459416716 771407218 752744739 434259776 389847109 308933759 955356852 759927737 468289263 878926984 320651907 148613697 820708096 650993254 301401250 509091219 777798313 321279304 10197667 202958298 94974781 570704158 328564113 531551490 439185883 677016458 968271457 958196916 405212984 46755897 707565962 620746522 923760260 227106864 674760398 682584757 120268240 442995117 475555710 178926454 845523972 824794318 494478804 324584028 529375170 652128684 982345054 921361572 476166282 349742911 712466967 956462335 548617249 993576848 874978840 539601522 902551481 716865650 255189911 628006285 548901216 511650818 686412422 171133477 366489015 316727105 921235854 606904254 85978491 829901277 572269025 506191077 465837783 647083775 637415086 203374548 788535852 721587976 124030726 383135933 225223978 457982323 760080822 838589891 437727196 501756896 883613104 477631320 27914414 831900200 416651839 216112251 283798938 946061316 577007576 465762502 588763675 386070807 361749755 744941489 296380791 804216145 197873228 691583562 37737760 112862700 243395246 530078076 169680117 960941609 516784332 18559123 279967610 71940011 311303458 116057065 437163615 444588637 687611020 833915057 451267372 688937774 234336820 353351369 31987824 435443903 223115989 55297999 172895914 537480183 361609964 127323100 361629091 824256701 978550592 69036965 219624645 410270477 660707564 454057706 715950068 593920160 621446374 809880892 218686715 563642621 436513195 869050163 40397336 721088893 853841309 834913262 165102005 39922293 629921281 667372364 141773804 22329738 666575328 806980768 387946944 15213071 257391157 482409866 616857411 558709868 757024935 382434375 128225779 842558838 415056361 371887073 832274365 700803324 682961275 411810095 62717902 262962936 440820437 775845502 39565885 920801726 714893799 900304750 278223415 937162153 153520565 711980719 194429473 358845780 384964204 398752310 447905565 986057131 624297886 641338942 456911289 352038955 942373242 465472973 87785028 849932592 837834670 952328981 37239204 320378289 89911232 504727632 446053504 908710780 172446996 190165540 487047565 803546096 377876755 138725315 608288558 133424017 382245554 8958373 690765173 428329782 932196032 82744772 893222736 324536897 411599471 888520995 115392899 76708660 644999523 250203081 835434143 666281084 282013813 521852349 254469740 201602128 117651983 333102368 969145711 935714140 938496622 833379111 189992448 54927304 138551137 61540375 406392950 90694542 565299515 491299447 471770194 626565581 449750284 166445673 951950173 286755566 31694665 263100601 893990100 426069403 32603861 738870627 304024571 222011788 138899735 37163608 925929622 426981302 406924980 482842497 214446754 888898194 813673405 940863222 531462312 924282402 306884122 692606043 557726775 794560672 166032261 255199099 13020741 248294323 991917152 627537707 353858220 541970173 268582921 623926571 549983164 216385040 46543662 149103715 482764812 503254822 722466486 776408788 423437898 600997138 690312472 443330223 740664832 607883439 474181902 707082773 783189458 330713551 813585701 540557381 737297558 512542939 179496624 709512122 390788316 150722851 895585846 585509667 504513399 570966850 721944622 105393432 500834254 229809759 254602286 996244965 432961492 471570348 732862240 687885834 624235262 68291786 420762751 368125618 789027984 231679460 228746858 532955746 454879835 119336034 238181799 146210815 921937377 646053071 926245022 189719643 658896817 867374765 52642844 611304073 63004496 111551154 827680791 622068336 903819290 798339296 639649027 106009029 947867143 389552417 918096437 466658473 770695685 896553060 217509763 780127847 791113590 733261405 318925721 950025101 915030175 721480692 758489873 119277911 32038041 937417425 767623439 292497470 766654102 117943876 784686346 248082216 114108450 767578799 561279895 668075409 969901053 165752943 529960694 874480400 625630313 88592499 962722392 598621026 965483404 936919292 72533110 115724097 736889245 751042936 955713616 782039382 880193526 948282811 550075875 971978914 687093621 197457733 325573693 804998806 903971329 621738543 635638221 970691272 937550083 708427313 187140421 249265113 103336846 618616784 247242781 49340 301296612 43200908 373926178 118899840 980745366 716534993 609772022 70379124 93449774 408713925 963182364 254178689 168881916 742222549 803169040 253728396 1767133 514712174 714588264 548798334 946688079 108625130 561280068 352361292 127306936 857076672 555301858 533669823 514027285 491767499 345584678 552984140 645993640 956464968 969363961 225723489 290539745 80609274 699954363 773109739 907494440 844847493 7129520 874628225 279998197 37580231 61954119 372866469 209766171 389005228 708602720 246157209 972782939 795934428 369400972 558681444 181595399 570901664 592841725 642496576 811800209 401822006 926009144 90540277 90838813 316339513 17597898 639500304 836087109 520064662 780766988 581383267 214781870 965517273 430319262 899265888 296489593 820360263 491028881 927334604 842633401 455465929 987957195 51878751 211107085 215940415 956444236 650861968 116229300 318233435 916251244 477003394 648571366 262162742 532797373 827598013 167256553 179479126 139365741 361933277 579296571 978738761 102012594 898487754 972200061 143675225 166358207 821923128 285607871 772179627 951570231 129838578 806521217 856208913 488889869 788503150 308832605 491170659 915584995 540712971 388776182 55090209 897674474 721790046 876257016 775871954 780033787 528959073 323973636 21289497 590394998 175593546 732182141 152544882 56138804 21658679 183738352 789053435 370498813 39265210 144040450 718707523 511395981 613555768 680993839 245957000 176764556 607628588 497217885 120753075 780479316 534337179 323818347 205130355 368251551 656267164 966462220 736337666 529968558 29599141 191555992 685795015 118521279 621332561 119587838 224681012 862890639 379324258 106126907 159106872 877175072 179842570 629628113 956456180 120589155 393423980 919149872 840056669 279080138 858770011 183050000 745126298 133873524 985310771 867428255 400063133 907001976 357127568 664451753 353353716 790049315 460302581 935570902 162920309 888486333 513520444 209610092 42115549 135044015 361827892 831568418 271441923 645163350 616865216 491863623 272159218 949393224 110016243 342674305 704604063 382275160 875006205 689967672 686549129 500490605 412690449 991574142 159228388 42585113 954701700 308140433 338166988 126818201 372079890 704120274 268510370 735787504 471661249 302378162 761896968 223265423 861752408 574491679 470366559 182316557 848846730 868946967 605272639 320357851 508880427 21660669 6189642 110905421 439250597 383989068 960028281 592650809 255313656 633767256 790001412 306532418 320868842 144317385 357366734 831933906 395885038 419311941 122206050 99461674 171631575 34788304 472539050 93169399 977583085 159895722 113390554 516876370 182369672 539162592 774148904 33475251 743763265 105755932 163989324 903326325 920063991 220513342 22363860 357385000 577547018 507233180 336099152 739979078 980303691 759346542 402770036 844821406 565279698 494911832 742818819 436734464 790090082 164424756 892240681 576565882 498894087 155740347 272129942 389522838 711868217 637578391 446762786 351521043 878033511 433281246 904755987 386106435 735421567 754363528 87848917 355338824 317503916 569105224 741389175 840384302 924504209 5975418 224164260 111029182 329740888 781459204 913981065 540070110 683143082 835791803 608295074 106690410 833041385 698291031 263949058 351795144 821624472 165253257 551015912 287988745 737455091 686373827 144373833 196120188 436449038 783631567 982816439 56260046 145496101 531638780 446627994 496635764 620005824 702331555 978265208 316037139 36638767 595833342 63241073 217031051 583653815 584275535 594703263 62317990 420367400 968501693 447016875 678524462 21042893 750628942 326445853 92423586 43153873 491289148 745746779 101102854 379274496 136441099 288486628 715053035 113277650 44466771 866956405 202692886 52629844 533527033 162122719 454450311 186458190 225016448 714237891 836231391 686208280 7160807 959003818 120010773 851628077 853083660 879360518 309081537 804197822 910689948 397603268 310012867 721378647 762252715 571382594 312534216 644182482 978673437 182870648 599054483 778908178 964284690 868885848 381181193 45990620 372905008 116206768 990548289 968366242 931566440 203212980 362229649 618801072 392370528 195475371 828000596 267985506 886410254 66678630 991451627 112697080 85879774 924250082 439161561 738748816 103151189 223381935 708480503 614771614 535494720 70535781 212679849 280097268 439491882 846457951 285187521 242603914 802950549 632675851 623681426 606326656 955065413 524924399 169567400 714004616 305532612 269169224 830348655 178293490 420209151 716511739 231721675 234416777 53910131 293471881 822963801 758071418 966958588 155127475 799143834 693090442 59358150 164966763 544089270 788392288 138366386 205941086 436364654 52599046 835246194 878466888 693059337 337237141 582697128 968009250 887011874 561507378 149309535 790225233 163414689 928501430 961380261 98295487 578055733 682579540 472593523 14933310 850491735 978913150 832873654 778551358 723249501 389188257 305002206 201491300 680171803 550971448 916717402 152973577 750475987 156490236 750475204 396860102 85579098 998520386 729666275 602899805 837324307 852200205 442454779 967615636 343019126 38598394 163768460 876338712 277188179 566348780 60176468 280098804 528360462 971089697 573407156 17184954 969997431 855142047 193830339 524594013 110247233 853069723 368955374 953303481 937110541 993339310 902471129 51266707 42437929 193238596 327161717 308734124 728058934 810001330 593347437 502572899 212918768 109112388 205727812 774126566 630671918 12593425 640601227 294871957 68089762 62652692 700305321 246239830 454548606 909757777 968882092 340498243 550049133 106817319 74640589 615278000 838751819 364517826 581742442 583199283 422733293 886527770 485118484 995209729 968691182 954712533 836936119 957597944 276120730 765681808 742741907 252221613 370225782 124094302 410109130 498645440 978245114 817575040 119143441 432484299 58800854 594435213 95207631 940572449 768958372 25846008 588119786 825368543 809453436 885437501 325773188 105600244 313036998 419170456 488694826 22059845 305224155 368918482 877203480 387735931 380028092 169142418 753442230 924542544 933929049 923911029 370891874 906154479 742753509 751001875 178769529 380118150 908156293 498016041 692063625 582545459 93404086 72747190 24269811 538368182 845377935 868534310 824597113 53020147 409763266 686953156 228515471 684512481 794426750 875957816 452926779 535013368 275280952 988684767 945585898 857893429 61941136 236990187 245221871 434968388 392074242 733408127 134934812 617582277 61773205 176228811 371568900 515099179 88548283 626096193 643363867 281645708 315228400 445437294 805474942 649120975 349827509 990523567 189562743 551168473 95667344 59212951 197720923 44852318 903594706 635727221 524414769 424474423 707440639 187699891 600298665 871769316 528117547 656521903 440141035 572438282 266097234 59735205 762097432 420350877 919999196 658128952 839635313 955015340 83959348 236205068 879232754 952628159 488317240 188405216 410155628 458510431 334509357 95932121 196337818 433566250 274880919 648652205 178153737 720480188 497510212 558435472 517572350 15426034 709303042 64942137 255372734 422349381 358832833 472026024 319047715 424940587 388955979 144312096 769660508 981873318 182070179 147321120 817628782 768343 296713504 336612911 869802233 489257489 671369302 260872408 616658244 625835196 429550394 949731184 166168953 872965136 934865437 223127126 172998200 585038956 550604253 283784028 471776363 480252587 690020958 351338844 686550845 531204291 639302395 508454873 333392181 495287404 529042017 350680555 679170613 839598122 975733324 468097412 969646103 106980510 428435261 954544809 896417150 898299764 311357202 113534622 907110991 965070450 225632022 243995595 780593289 57140978 548746478 888026384 616493691 235109180 195825435 255002585 634085793 681674384 840405890 866132162 724574043 248317972 518010995 444320614 292069871 914082974 559837124 1294385 822679793 942139000 120281631 291814795 684827062 755913615 512047316 39509092 926494227 820811274 348191863 898921140 275928689 13856861 278616986 956616551 547544826 476772467 726622970 329827477 387845204 84007419 341445665 109925823 602706421 787863313 494640665 521503289 663626921 639698573 741069458 138117865 53625731 797099091 40450397 950255585 128291483 658599440 235599896 711674519 303290506 255930297 674823024 508833155 362157860 63241184 792475940 708507390 591791461 370294066 773440791 468266908 391568082 395921721 155691740 590225604 56262199 159288436 546911814 949503373 260502185 114306873 936619160 297883951 159478196 730614794 290411847 227723699 268402908 769329305 144959822 990102147 1718377 802594229 652664351 41670566 477262046 731964759 887975767 905870028 262660819 864327828 849646653 308521033 78607248 572169774 425931923 118329538 81620792 518321808 990709014 333532603 519871414 306360236 554397252 540770870 668325074 198040720 767538189 528911270 223180835 77545494 645126032 963301366 184321363 737730854 506114591 34524457 981711952 63223004 700800394 240707359 936143343 256883925 83965356 447287747 581694615 271576240 946015443 586603684 63197182 439361905 35418922 214103740 948381299 9231767 971158847 160772342 597808132 258334060 356251566 407780836 737135088 374590167 300715268 215407327 478216819 896705936 715354286 500004115 588713211 52211422 196027992 844667324 624510501 374819070 828844042 541943018 22795643 631950562 215475950 903914361 828109210 303307605 251096816 405123770 868757809 612845107 721469162 262025025 803073803 970120627 370090379 293694801 451345152 91417928 977323244 120894735 351417934 773220653 720119593 457246612 734121417 582352249 754021755 2320607 737122871 136347526 859825681 784846186 749623948 322012829 435134884 258434257 391309876 186029591 606547035 963550053 976335451 232767910 41191563 117007444 832213955 506142910 500032568 741802312 747286966 180481819 567934751 295139325 541308011 100051365 595683679 105210352 768004454 187670 938211040 813813205 268262145 125572810 724955648 147979580 202985251 143351389 346256009 173283973 374700801 866589438 756079042 673607285 594883784 175360266 874749991 333460742 267854097 186681821 945406568 682046644 943462540 761201543 883691911 729263912 876498940 366230739 821188642 398118809 492374209 339816220 101635447 469677967 321815236 662212610 9107543 443388323 574941511 389721569 454612424 985348012 267653292 43888632 487214183 65459345 453242327 234898437 476320925 376341581 424205210 224402025 834046645 842993677 140856898 760725251 226268680 905109300 909989696 4569947 513865699 611589569 433263470 77014283 483973686 878593 383381052 849088431 34392681 788945080 367170159 377323737 213127470 931091144 804182868 144200347 13043782 538689696 934892442 777478535 926431364 567379668 455810268 251092797 135341792 883593965 49674637 547993926 519800399 410723899 761783333 90964681 510728510 168059890 986898113 25375019 969313151 176576288 212688477 49061330 623172266 876441479 424197356 370042434 91413118 878627753 620869751 741208238 481891712 824396122 921199479 942668177 653517260 141692764 559543715 671293264 138529402 258516260 217515385 31106355 631314531 200208437 730498660 951357064 134645079 882872052 828470585 93540878 2873716 144360386 172339414 32720727 280764057 85644100 925634945 435864948 632553101 456181401 364207504 368892989 707991974 517415611 336742875 677850406 147176605 431914955 688580204 218841236 418638957 461836093 104946967 952563082 221944558 379309979 967121379 999046384 233110533 307026284 304154520 461713964 210376340 231012958 17376492 890920983 998841631 557138408 827613155 658075935 374291205 487739251 143788016 597129341 972279889 13554459 239208951 829419195 150659211 218964448 138014470 349109344 380813058 32115269 641493350 263778903 301470482 231448004 571980764 7116465 516908242 722416730 795824677 654818633 333941747 626903859 180458823 556036901 443231307 118149745 524646621 258050882 826473170 106834573 984751952 123191058 781987940 807574542 314019382 192078116 834667696 908297282 130635713 112959333 255629343 569291182 70227102 679834347 615772984 369153687 150944612 550887249 852455906 868019402 456075782 410838526 387097580 511691761 766969330 380477001 645546311 87677211 279576723 220154946 731010807 829904904 928423559 328081700 62153900 880310728 582013050 856236235 790395707 486219151 672853612 643506808 950332439 489171579 662356600 316388515 347688571 510335653 631368695 124846916 891906459 36375554 713841328 102501320 692215520 173604585 286102658 603109655 221767602 185377983 601108706 164346850 453737235 215248752 563723035 37554903 566508649 873720865 474929217 883746141 582253210 4698024 196861490 544547835 81027779 970182534 27669104 121147683 327392850 169618777 603451375 864194802 448201176 437457155 894735714 984970470 99025513 857020063 771545672 112534882 47598170 419075769 84042590 937517088 122892218 454515892 232765586 657810360 516481917 991466314 587995821 973754610 979202319 445752797 580329784 425744669 353548483 715696756 242724542 144899607 180209475 11935746 985902781 616991789 210936387 160739886 993422440 225694172 530565047 299975889 291409149 658296858 107723477 623308946 487196956 536273124 37753691 737818397 59541117 399796565 572785370 229054598 919634627 820211449 93941496 645720999 741933246 632503082 935293632 372881210 710356880 733234203 449008113 525430634 338124672 141638907 578993990 426883514 200181457 731726373 598721642 71409587 787854865 726538628 419760180 323573522 823639824 983300451 885446800 611642082 974926540 953908383 212365141 18126921 779003985 128089299 387829159 934195313 328855627 667065751 219928452 575224867 754052403 201544450 58007092 825334396 598399524 187915968 538616928 371036031 498864218 806059352 252090812 46549893 333893856 914393677 545266603 249826324 139815590 976003479 791768173 73641743 878650079 279078389 758454806 227254794 90479660 448756033 556126849 530325823 750988053 108094746 18804311 812570267 456562210 549661886 360605019 752903562 497138993 502497642 785268825 401251204 431553328 809693367 1843570 900186842 576273219 282025539 276967265 762362228 424928237 817897501 717383604 648703888 772827693 443804089 148602768 355288596 707339178 461805484 716169621 597401798 897690710 630888789 673485396 568902623 818859100 429604332 931438685 965732806 438367182 314329049 94046433 508913833 665088618 99766681 911392991 437954254 150195815 601348058 252040185 460887752 736779405 160021253 513154164 889098587 610791684 426394828 213815047 425894781 522968961 176082106 283075815 665463060 609943709 764490520 892458917 350224507 352872086 165715880 946599243 850973573 316868912 133529236 239039683 667130980 219782065 404969259 447890089 200952909 407860556 987942016 755035643 482897546 70785497 991507786 501791036 19998530 481944962 308500612 487316274 870364876 284134966 400665857 420512161 111674161 321485195 463259054 711530750 727415786 272965369 403927324 493836641 963120485 633813465 567814803 792963169 442728585 354017025 936381438 959478673 953900230 366426323 119290913 862095024 332467476 83749540 486043025 414400036 604860662 963528392 908855523 182973941 791282899 264718484 642237998 229186638 539745106 177721804 775726379 650378774 232618310 277260687 325779576 375405076 597582167 240332149 962929815 916191397 311800206 281907833 131551611 902238428 424396208 197872871 195968944 850196124 309603966 366302499 652032018 755345809 503048209 503824863 678137578 477525540 53899786 373314332 719025586 129541206 834765213 671828415 429323523 201356084 688272904 265290105 761391433 848724769 143307591 412172836 933922360 623167587 115810536 107446431 956536408 638320353 425879860 137831674 58189805 705485142 644756923 359001190 736281001 501553694 298701074 754385124 811813436 828436632 951152870 448849535 657626919 821859376 986481289 527541686 9722444 150783584 902711117 251651804 510044711 987505187 741995953 280790279 626312498 202691898 647218336 806418770 910313800 495573301 220042440 582407657 39078508 989320191 517969081 755552343 874164142 684577152 377806032 51274631 426901011 774195503 880853375 777611538 148724956 793683482 224179415 892856712 966482238 863566114 338534950 259175812 150204429 961272299 637499029 494678829 202165225 717802006 957354295 895925484 291282469 103853019 67350815 455336490 63845154 690856219 355654760 951521459 360936003 274835206 955611055 914394167 483848746 306487815 288977128 303064605 79924407 856974525 801646873 286941308 524029682 991748085 838300134 578348925 137594775 348971211 913175745 523664667 775785768 28731177 590068271 734743173 657132338 776042701 242999829 640536058 539820040 11793637 307797985 982851709 360959522 526575310 401389489 131907833 865050653 760042456 746634972 401810662 422913387 363042318 639476925 258314599 430605854 204089691 511410644 395539200 721829412 756031597 137278931 911345240 880830616 872454557 306650763 438421866 689547013 815193977 426310139 412767422 664002149 208952290 565374512 611391005 887820106 526306555 379903984 237571355 807384876 44185884 612496937 207287462 184101827 34754017 208910811 16462169 414790307 686707225 377873837 840144555 965432075 331536272 453422185 894311455 217665587 559544550 717080859 771473719 608861681 36562853 764385839 386725381 185066890 618412910 316423136 51286696 632162234 565383420 229783726 30233707 40945990 58953034 225224973 332201107 867974717 926820909 135517952 257665733 898011209 398760485 827149352 936642872 624043163 378938787 800384939 132225961 560298597 130315439 562075941 173093521 533795826 108514029 759849094 560324722 89611278 270926856 573109794 817864233 483071029 500005488 205585221 862913398 944620413 465774430 622258490 863014385 264775339 800254946 405656139 23204749 931387321 773212804 688859248 326847026 265219814 973418836 896208620 455589114 649415555 756442370 197768676 716775195 16627450 469841901 293988179 177212030 200414504 238695637 444918863 727074114 863617103 596125229 156599131 295336833 601772349 677288560 54611941 823611915 331355883 509581734 237688096 264890264 872661636 275396721 184259703 146109147 541672651 797029011 889064075 33407438 157073090 745814893 895645976 786376559 934869824 351037638 118977208 83278683 290993590 818577724 497769382 571975298 205399107 329530261 22496925 679550745 997649898 573473560 351457573 437606506 50102648 747622839 647357322 309489845 931876201 736980972 796607259 355575822 62811913 698386731 462607723 5095713 94905030 147527884 786290764 831836473 144776690 893166601 206829459 298167635 410450997 957975392 344461316 781398093 350599886 744030000 395161475 908177893 982885541 643830874 124938104 721365128 521147254 949786533 389872637 824451753 146920393 393730853 662631692 149755656 923305913 63248653 677593459 943646448 653581053 539211522 662698994 365449017 562663687 252102300 927952713 345987810 49942867 981532991 105972104 648545068 43932654 498782431 434570092 357258310 10917401 935899816 124077288 511704187 925141005 692220306 584373600 827144987 276752846 59289882 101558658 939931919 328433804 680683960 49646176 81638144 714435156 424751573 895388386 15478017 638085513 675596964 801743112 758826460 718248370 264549705 36282021 123076093 789428802 160805780 638706046 232806575 180374160 306552082 837397554 286008332 394546749 468408500 321702606 832453506 541953744 597319364 575819455 460434527 660652996 649814225 835496020 559219678 969998181 148162305 740567561 516118796 640209502 864136824 557088752 300713477 411447396 855547226 450153181 528087619 86021899 938731930 168701379 44100850 542443737 100656100 948145200 597548590 296268774 81076779 736250761 607470716 575228672 403995573 751710758 951737280 229791865 855091730 876784924 229375772 107715320 380862928 35085582 321275621 527553141 530987611 742308158 477972472 479438561 680157183 175256383 341505540 567757236 437305543 681354229 926944354 436172085 30426157 702235751 107776987 832768748 338114955 632015210 639976700 932549310 322053949 60650504 449440299 133781094 403771730 803137670 444657864 726870455 375663065 813596816 290112430 796425699 76569652 27648313 446463825 641914647 45368546 423128544 664833888 77572277 29610131 647545548 202034677 801452452 533743803 626224136 164541332 425187940 735358133 695764473 695255804 97833890 12095823 619485051 537983380 30523804 243364474 933695499 833984141 83737840 548723470 734467887 795535515 330469731 222041219 935836499 33924076 704936822 566765306 954470423 424214128 127681526 627746841 883708596 186814268 566728379 673845455 837461502 197943229 416885898 839244223 736854414 725732416 763366061 471444072 131922545 984196877 999847045 926484542 246431817 761141524 500227508 358509195 224268704 404643488 867637657 928342445 34129118 704728343 110643134 234329695 586899466 286316891 165233254 661157160 735695971 103204177 34474939 826524799 461762439 604766769 792959430 43947258 287288280 751209994 15947786 26995757 113977337 16304455 439835445 790918354 538423623 136273382 475109401 574474711 398089519 322527055 994403489 224487144 443702288 453868625 845163480 463427514 385003849 744152384 845484257 323669986 170738173 40614778 583480797 879485379 783903030 275099476 211492208 368890972 639634834 812960516 574994043 221073501 97322339 779625964 205681500 681699974 383672647 434277206 171291353 964606528 397932287 646773559 209271948 307488497 279570398 101374466 243918288 427751144 57393788 557052900 462352780 289730747 263068592 97803334 608785071 549179690 290810205 386780049 444719851 79594736 674260960 738909954 772133542 751623002 972201160 282768641 507487921 839526467 211628997 432101599 436107871 476629378 755588289 366954152 895401733 451629772 988523443 47286148 792665520 693229555 812147393 680679948 267895416 608821257 636211655 443578612 941840075 330561849 135567773 46684285 627519959 766449197 896377171 285522902 238303509 856519667 709500441 240702624 14106278 415683864 787898264 815477963 811143135 172209452 350299018 757922601 65776416 169407669 868618321 252863680 678853642 431504580 308813984 989720451 367590743 343603311 313673875 392491552 549617812 848019050 742161214 574790634 803628032 486074787 857071049 162738577 709064423 433432803 911860270 223944097 162129130 963753684 484004762 245262707 66763805 473068641 704628682 875927852 387227721 962936085 494854851 109983835 35821038 662368595 813323505 485104138 37992452 246362686 19167087 961517350 528082996 786714237 437804986 280985608 499962009 367060558 752938705 14792196 646767220 111797053 118799513 254539394 963353060 950972372 147441052 927026354 816014251 30520128 898781912 437100258 279872381 605633941 359048171 110502656 226727237 866350303 753674150 438789894 778255636 623547237 322339691 708810261 309717242 956531840 212440716 502646974 497287310 126785312 568545155 834606039 848906229 265880302 188216240 555050131 836436356 586372761 14447611 298950729 414151918 33185496 379214258 633754859 979286135 885708557 218666794 752646553 269855274 951988872 927619815 697245667 860169821 847647156 538812974 866760958 722202644 626001621 545523231 296109794 112247451 804800460 159461728 624388851 478060057 596888953 977465281 212458229 882785936 33561631 560061151 31674044 435801423 680932414 432573008 1162312 781014663 701670680 548420808 508679717 135327278 949718375 308103111 139716876 392655817 356296117 527566868 801184767 791034316 196267207 433594051 787603848 182156671 368093432 830469717 413226154 946623102 835603006 731313927 771644057 927088265 616167216 793870962 139763130 586868157 882756061 435603642 682736660 831891313 207473128 209069959 196023076 895439605 974935677 386448566 361381768 643346774 559372961 291709822 447382536 599623915 510062019 234581685 234853318 364966210 133286177 739227426 301934015 639684273 41277170 114269936 517030734 639338152 975032241 697125762 963027630 709700837 158727565 926638511 692942187 887999864 291104002 560222984 825058844 961531174 203680769 339714273 485206867 573524609 645006501 945891928 375229559 164294629 689013514 997933423 258818558 343889083 12884052 394686328 449731876 205000738 304298004 619391349 402864534 405736096 675036193 532602909 823787144 663049482 520669697 349165509 724332521 650590057 924434907 619118727 175878291 323742173 130711148 143089079 832637535 137954050 388925269 139274345 961606240 851526718 178974296 634335255 45675630 863662263 799723180 749709785 645734105 565139733 818568212 831118351 582035144 732682274 469492554 657591570 570719171 15890669 503763889 494507482 774003531 940966203 233522089 948505859 740443275 951250600 252759920 629902205 993924536 253311244 879216034 476679125 136456942 933296900 847647237 832370613 239326845 287767079 355314191 993565842 32131137 884917258 171072272 201181488 555875815 254675605 251509044 64293081 857252531 341324636 666615866 302456768 22022198 614577095 753807037 606779450 640106565 420761977 152143168 674585754 716649926 894993050 945591020 91671932 8648946 826967402 42690033 79935085 277141581 675785614 64234555 879182547 487840132 62238827 499950082 73938491 276853154 123409607 172489465 22051445 773829728 49544576 534333539 693129004 333882219 40401643 696081191 40879012 647380813 243897141 107452789 792023965 359883940 627275305 656177220 623580687 227963489 427696311 389543844 525881717 399485054 326432846 363892672 163305790 572192356 731279213 202469758 950583210 965429219 163615670 878381432 254317115 3396258 58991890 805405566 982783381 460988469 158524419 748967978 793757605 856623040 752183640 51263529 458532324 287527268 543266063 964650248 780077437 965485089 459282714 823461026 895036946 927385262 726241682 463595693 725968440 522906086 4671150 99354899 305665505 561475036 456837490 876326098 171359823 563523118 162003808 239592162 88724112 192374855 574180815 66827897 914703063 121433912 643321366 451580641 102473644 268313990 390595135 320068516 865411225 630100570 806996208 501220180 755481567 996845938 549302143 691664666 61534946 608619750 845467245 405814008 584695646 8306698 548725512 301932465 474718319 900882220 164078120 770185408 549118823 464494308 967891838 832238860 438521500 811571131 735851399 60547579 580208530 93850110 107982038 211886490 724735942 965140033 522592761 685705220 543369451 58041918 436106075 581216413 401647089 116743268 210246095 300896733 807076464 764540438 745299050 302363811 446179569 121203868 151721111 497222784 358606839 926434493 720258499 762695464 517337781 381362030 485086799 9205912 926885997 588691102 136665069 57345080 324801143 973252043 77047940 902173458 325445019 886915911 237644018 99603231 442818494 153767238 475541614 498439526 875414329 606371831 772590748 793902867 228991772 17799279 859487637 860436264 690222792 715847549 250671863 97516017 890513174 118474979 402222507 575301212 116729940 539550631 992077310 188923856 845039019 190913202 929079121 479665593 280070107 718354360 86887978 915512652 334380779 189978246 48873839 662886831 482536475 756206977 612614509 67409510 149593592 669947396 337100461 652621592 82736569 933854515 496388334 902293987 145974739 392893399 345976185 198980949 409857032 137656751 507234472 140748355 812108211 627506713 532437973 662727203 799217466 600967333 999910082 95242327 75827566 867479957 982621799 415024472 144169671 787092961 885234 349817900 314607442 929754305 511118908 805102219 203947415 527577658 779511282 790758659 729069723 382946997 19975295 158895260 567222070 641240073 607130517 98722690 438056948 830689250 932499243 197687694 380212696 610924126 910333141 135763765 591110370 42671737 83533940 467070014 36929089 18660640 22650462 66350065 192078695 636811593 250188814 76323751 126567706 729591406 615488353 667488539 479201519 50650544 996507830 499918850 24987088 164407271 375801831 629272297 489307664 428330270 997523886 507377515 58278197 419163822 55445621 519894429 163884092 938708499 123976619 96356863 175444775 783472915 661068346 307563259 91387803 147148904 426252690 173736353 659730846 380121 246658891 111940698 951950569 429517277 261269324 275808250 122438186 894922499 922677677 893569073 751934252 2466089 600643726 724061322 713570280 226980897 842945113 446377098 264459097 240218231 831733021 592005810 263068251 551168807 650635175 8623178 622765636 144361100 664439409 850746115 465660667 709817430 394153779 858662018 662074873 155011115 814985037 190122972 152295320 100357603 495869375 859887614 445077334 379070943 132056077 565182118 725874415 868854635 645420088 514426023 160422160 811905195 982804812 149924314 202692941 348651438 184154088 8777587 59962352 396992500 92611190 811052100 901198578 866278420 181113918 187841915 492475646 862433247 454875751 495514175 864231190 139127065 485443731 571842499 974191663 330489532 954106207 664928690 134063910 157771356 503433043 620527918 628578381 614977107 445442786 863182054 183239412 872428297 20197116 360325016 313552260 612114634 460155032 481589717 946062448 671751628 190899085 569406798 800044702 11530188 197398903 299349534 462606575 661736549 584152770 510793630 324778758 42527229 447527198 396254228 839929591 451056461 13337558 786442214 16711448 181356146 597378653 691152674 302161602 685354661 179825667 176434780 108460862 14921853 139657762 290863130 656677771 774004604 507455784 790675784 947715222 831564431 622202610 441970540 887046504 389615980 256150769 106860549 721108169 68347774 640279018 419896590 202276578 728709582 780348096 563453707 237700479 540443758 283117837 454501604 846941072 765024563 533173351 980423299 69534759 501659993 247276822 515623284 591367789 800345850 905954565 277924235 336517368 568253102 167061598 642554819 635165149 800027118 12673496 493863124 14881425 943776164 307414409 481034505 195642381 92370942 61355725 663504316 475167098 201350414 452362445 165216044 970221276 779455929 620193970 961571208 709039892 415487011 501830324 227170257 824065624 909361894 797903017 598250901 392763449 516954399 196816528 561467184 282409599 256854099 370671940 920006964 105046030 494177264 548708464 416290684 768610586 107494751 209100452 971960695 627565614 161033001 149667318 83841991 613798625 605556276 439233246 210561395 425120263 924002915 824750623 876907320 10641698 342878504 904433491 235593305 209932237 250423425 444458131 160577448 757183929 946169819 902978458 809988912 573612247 209083281 586552471 195284459 761564075 708383281 459605502 251641051 333191841 845533739 710759992 886647557 487090266 191250481 654516068 330527348 682185919 629802427 281450652 848432857 389569224 195229935 35239142 465415469 164190300 914436600 536162135 299105988 465636125 744972446 495955678 798271016 356876862 386532832 748314665 611313753 807326796 835576003 671158484 424502076 449002122 863050245 696999195 569026325 637029584 348300778 909106801 273716424 670107089 12448203 32111781 984874333 24006648 301530754 70849389 545004004 209639100 141323471 242322767 612333607 241315208 792223151 899997574 904651972 452155892 599863268 757214668 627154507 319722679 724526589 879259149 204521090 264180472 983374897 152569795 41627838 130207311 500514277 534142568 405841136 527812241 356252640 830568113 389828192 189595768 304175343 188288264 169865447 286137237 503554242 360591459 61225192 688650687 644323929 533998342 570527443 45544775 156937856 2837262 647029777 786329078 972617367 943600953 568743915 7566016 872665844 464272301 441736939 148721362 429431074 672919979 828630354 214487215 465319477 79204849 784775094 8594804 128795827 952241957 819716382 366221385 876332979 730788851 935451195 645093996 550067988 977529863 561471172 54808641 965222559 155266669 495285385 675072818 999555098 901128144 926733488 881180586 770874041 90870714 675874829 368214882 744556147 997060736 693506316 32475765 449706241 145438338 205078931 884396867 652210755 365617395 290099460 5882201 986644514 675634381 586494268 800207370 408979496 414978010 64083161 223350211 911786852 817044513 944914624 706435577 758786954 541246027 357367608 87511069 39038002 344429838 609291325 515147332 588502374 438541963 590892411 737167609 149608245 566133335 607308792 731906188 262007410 343198901 944737600 19932560 831893110 207935650 687034342 120875157 670296276 542428736 464675136 535169412 607785086 904762944 166946929 799071418 290247137 255553165 48670785 319719903 516283286 738423744 241980551 426325901 265374991 850887206 512549199 825641900 501192803 350282247 12808422 649470371 570377873 729487125 719763968 634222279 710954563 393188085 663942869 432706961 727080748 358379897 353667186 862568156 367428263 6650522 61512577 747203963 216733269 520662892 477188190 560247760 899622706 401524134 854893819 293807198 173473531 233306542 116971738 4958407 436878961 719155891 299729859 368321988 788974003 82062981 291230063 636575460 964231394 188527835 298117811 127819005 643517540 46888556 998281662 536129788 909279115 772725246 299367888 75978667 609926618 491974742 35658402 817947022 526324507 925405139 686857049 42961965 261379465 7189702 709709426 652895290 232832751 271783474 566909231 715617192 332134958 781703809 50457058 712828298 193911376 963248005 779589303 88745943 599901209 482151769 884035023 470827600 249004728 606987562 793008385 233604451 653073771 907802508 800385434 52031979 946039045 731603103 720381948 444676145 23120868 284654643 593410781 511079212 653556968 28934853 289826611 45001504 113890424 545903758 999166722 7821550 358721734 329122667 447688312 737390425 615176032 672312164 777647815 424713541 2995247 745432376 589679018 751324676 202237302 154570994 135605363 280258450 373789061 680121359 54441101 909679454 848825904 502854270 99548010 206135749 832984852 302404328 451441879 726049404 820623290 987408232 620672503 240868812 246132959 737695324 366989660 270306985 670057052 281368371 505944944 240235051 292326628 234110487 452833015 794288060 599854313 966595690 963951266 714896913 529342094 637562758 224623214 792287502 339767384 762596894 25294189 548900144 904042645 762221468 228137106 601155287 761692064 367785294 864229308 834296194 653032968 833131709 878645129 80786757 381968733 468863548 986276214 942088378 516900477 617151112 411777603 155503912 380134749 266574738 919533146 857998106 574585366 546868262 784241955 312588331 333840758 98376133 737064463 85065182 536054485 730178077 691587708 522726279 808269612 819084514 334983385 95025989 953345489 585303863 186513377 680345053 471249186 679610387 233180651 455138166 904536619 504964283 980440051 671521614 167753760 340707430 141685280 411858331 204864771 795933988 120060334 606172658 8681937 15917771 883090901 715216254 102464755 874338123 776879790 669748684 775169578 133225177 779636800 311425089 995998452 995840769 897264495 18244623 122512312 890108859 609372267 578230038 21169069 278001248 908264703 903265312 989190725 494789822 635906864 366749720 169522203 417576839 731191111 849297848 654052894 916031803 136995560 448684542 338712991 791605900 440485105 626184541 626920972 435198058 273782919 240087339 23957147 745323748 601837384 646281714 493951542 7721843 309699 335353849 204485098 741182962 597085091 401251967 234517016 490597673 394853970 382859229 230458190 503984110 893110490 139168925 890456724 167068199 150991812 681818542 340429780 977837259 955789751 596381450 163573950 314089067 751691888 170282429 361151320 851210043 25656295 21185848 74013817 404861735 765268824 569983876 158663922 699087585 495821501 617567989 135524066 875752152 880063241 592937953 524124621 501116923 173986394 405946649 713837471 865565425 171351620 709454527 100986014 14656268 711569249 160457949 791738677 116902639 55913938 635726691 741834418 206065186 82845951 526955699 982234233 417090965 845206389 333823152 960952465 236042225 233440456 154140521 694871468 335897457 691626970 544788265 404411863 694069403 610139954 726622961 543569752 187523977 586985396 608120758 386756300 246915917 201333676 276285399 960398001 961711224 73784910 799012415 757015940 373323238 517381197 728179591 394875360 896878197 630966025 631088764 741157372 325462332 148760401 402939897 877300936 283195306 303842140 416478847 243210097 340572793 3871065 366540276 390391537 418843387 414032068 63319665 768632889 948833108 866707633 717105130 400404088 66074251 282240392 330722961 462678089 513358947 392254853 984204816 368526276 814715922 81868838 934726843 771953203 735466946 992663333 301157908 742149352 428142150 353962505 289090360 601851332 601268277 302664050 564168343 114305730 311398948 832534043 333520955 685973913 489088692 55797616 283852754 989789903 46280937 11637831 606237680 826074196 548564011 58776947 232247100 966349273 320469581 96965421 688781881 57439349 881113361 579224638 979338762 746797964 882529976 48036309 538737042 889757039 431313618 805715140 150794476 222764180 775576246 175708465 766491326 560506858 688478200 958213201 464189492 818071720 480326093 787777618 544856853 282220083 531375180 237996501 984187164 672786690 586655787 399823940 925046928 701174998 171137162 612623117 153356159 860095082 650772964 250434637 336047130 568240522 567519660 761627978 915309382 543171078 848263280 570049894 907165217 301764184 403054765 349171644 251649535 363552734 202659938 914305318 46133406 867752720 312290168 351639467 762008511 684477120 719729295 383190315 945395586 407510355 682757854 474676096 906003583 37783891 218902586 939660451 549040628 549705852 446253092 680192656 525887821 510415612 446484965 223722731 755733133 126505486 343185305 679507176 868753862 212863304 523611874 468799647 304021493 847414700 732608286 499272420 596423245 65976001 208457752 268867782 536603818 583101756 171028147 289672301 568682465 398691677 722100106 421379322 416007694 258376396 654333587 67194723 16672552 311001151 977785991 483174127 21445473 241364092 294772307 69784843 62922854 312812684 512152546 737566139 929105957 607784327 967460848 322646426 239340714 29953508 397564632 615898236 567800706 760155109 167857354 93168029 466751010 484619454 161716623 432041705 828246372 436165859 531151027 37001969 374015054 522595303 967372769 390280163 149705092 529850881 460804808 160138198 142399067 64943261 272311508 876853481 578328821 615972990 395692667 476177214 870098357 531134179 581836824 207563181 152495673 582604295 552879278 213061896 757312274 206955926 998074631 270696371 619372825 484115684 167905871 640777658 184583909 384970292 892837205 829405574 858766156 270417210 254508932 504587073 543336989 719905638 582531360 796341846 27728506 676969015 194672803 798514921 910700759 743678521 746947549 699061386 790408395 566207569 943505008 450288101 97160881 680053048 923076016 558741859 831370180 440287334 805973537 20454028 829791996 890089273 788382886 343881653 528671998 213032741 987114000 781559065 184990244 232406303 718473444 751368415 857827260 415405626 57378187 653581375 506183728 593358558 70316792 713668229 422932855 51967597 199076597 646130632 402631485 58072266 581367418 402115470 281286660 238476511 642685460 51031895 469793892 980893929 530962793 680239417 165049854 943878808 464025175 140358666 800014552 358453863 794277618 664994145 402120691 894164144 709226835 556693996 717496033 256381059 700351302 776694157 644110932 868617788 360601141 303847947 862326168 269850072 395171272 265484970 365031070 24636364 904973412 70496064 583765469 473980289 571302086 409536610 753337650 989522652 762196742 59951368 789940403 138786948 929069430 842849554 914086984 330976744 496628942 949401306 833841027 264868050 990626990 973726604 575446277 703470083 868260423 140692679 87494749 329459684 266463906 42037736 880792666 969254747 355422445 400794678 651601963 797999706 967303410 544065477 487180195 453209044 186660558 382641928 28087560 739217613 899591977 571173164 69434100 581541242 417129869 627854910 392788712 887444651 778693916 892262208 866557783 669237408 171399913 887032113 292678036 847883395 616690814 851463044 985105848 655798689 650534760 634757183 67858566 934826250 110870049 353664378 841003144 880711313 810754414 295800637 363714720 67261640 676180292 892652301 910727060 658799853 942998149 767308333 662385069 872275794 21125925 163874302 429703275 535195185 222998804 111965364 548895182 917280167 91310681 466766552 785770733 602231166 234717865 5421799 714900431 492059661 426751961 339263795 654074019 775810487 132371818 302321494 802808830 994410569 633930308 524677059 337602506 880573259 39786691 817579131 615697088 609890848 590307418 353013869 71848121 793297967 14753592 28558355 956921999 391847723 680083358 342749479 651333453 695204029 364208582 808616921 723808762 569289416 682903871 223433597 87329056 7273450 217558493 724520432 168999473 73750784 570033147 133224382 226961669 318894660 861276615 636875722 692359964 608130445 305370239 917901578 760031596 498008281 220750205 126582973 558989385 240288541 157478121 276298630 289859258 566347440 181771330 240486154 510531385 391163883 102763240 812818857 546587354 945392673 736346838 237887494 655180670 479676922 626402029 725508983 114789326 216843132 719244977 537387454 784765541 945668593 370742079 204919349 706750988 522480775 375249664 749176181 202677203 643598951 642295150 200757654 719643836 814553317 444331701 155087230 568558372 375787250 400331895 653892449 290300972 349086640 296327830 165404405 441791004 661123351 14489052 320437461 205975906 771567901 896082514 449106262 167838794 677460911 37971133 213067145 440994839 96190752 719544486 556224061 612758745 323159474 448547645 262986420 945754895 569772101 310932219 812418614 194376648 208580316 56483371 991750332 490767119 543027494 688785400 137484807 126748793 547236985 93968927 44927751 614545800 893612244 894031018 617813629 900424807 720790675 252492072 744660015 866886697 131459277 363599175 842239870 438826185 901620856 864319352 256476920 364282331 101547388 502072551 516574726 942376966 72261125 968721708 944902546 46296510 344838586 929129313 786916383 669023437 633576507 269417280 504472529 667853613 965773979 252079071 744360497 733216340 725521974 434475791 5253355 165664352 57273897 458041681 260439452 762479201 522525738 511659791 744381102 491997146 875104933 144570850 517972101 640805128 529183656 220878809 564338995 606873125 846118867 145154083 429739522 897528349 255919237 800538470 874117212 389461878 27784605 283863916 584833051 507307386 214762426 986585804 124109795 805474751 7365254 179246318 482684263 406813953 581071187 559332609 767228406 48940537 803787425 817198211 987153528 502660590 539564561 309675913 45395637 997623413 281425594 493995176 196438439 36197583 100636246 963134115 470008876 293877210 988794000 498766921 571635931 347646413 157922653 64185557 394875006 423589581 787435002 480928058 186355184 209629070 611706863 22200852 990569641 825828050 753721157 371848824 230226662 417265966 353860680 632547184 692971215 524525788 437999779 72014810 663764949 955397134 717859491 781078840 230276697 860111003 304645429 107115587 937272484 895956181 452303492 910160927 747859551 803213043 399869330 722196431 785341272 209770835 863700460 449541147 866723252 715640950 668279601 824962477 593340341 329663962 262119595 411446949 162740025 182867948 830657547 272507746 308243872 611090764 496187390 519556275 621098091 416115470 866149426 550328859 694572800 510733446 308968774 510244133 712563186 582272257 788373214 435591296 839748174 482560466 752180858 461739109 635452812 840040209 686791251 623473812 978401889 626404263 756452801 753383159 430757171 889322218 842245221 682603609 962094830 562187906 701259564 687023935 616077185 507390339 785640186 615060757 269598765 258410533 94512651 977682519 684272737 902478454 570814047 943529257 593800920 357101053 837714738 766750500 591517872 477649084 404962311 876953909 191909610 81816482 888163252 497165725 443662267 274487461 672137979 296884022 330515580 36254239 141835035 626748866 672954657 284149838 606651271 303261656 1046155 755266386 522126365 980051857 172692753 674263368 794123235 867490992 932715997 412277840 925074980 51591440 231550929 785836348 100115670 987735734 769723418 916471446 341343594 867918785 179039759 646336978 696530649 5365736 79118104 869608050 651783280 506381376 24176703 285628704 217096296 11679802 957460925 620847124 773381492 797497976 101851948 40567685 8412403 198614853 395093022 105973287 422689968 781608047 495537910 56232231 99682973 682342040 269505096 724356636 227503825 421703698 283820088 181962873 854550932 349872196 340862278 742690410 704189737 288929742 679869653 858795246 633235273 498531673 30117 697277140 642404647 659726144 274742986 30723603 113326892 91443345 834327708 484324367 877943871 29771032 741230147 705415445 478333235 316474220 601378897 168778305 415637999 391517441 314295743 591912020 649119760 590603021 29915801 344267553 799104090 338521729 716023727 390056225 182979465 13190203 374724977 412926831 421492968 914366710 306602050 864417332 130419362 298859629 993465090 676848998 883567367 113085951 178256989 319270365 651545714 542703979 809957548 83381053 419495415 999586312 756964616 390589296 923877850 110888582 200669715 878548160 168822518 505422687 69372076 911542836 361722114 681477528 627770305 133337309 859349903 517287321 886681322 346483743 948913716 322169668 375946624 964970440 64583119 199056709 300051319 927569664 88348528 78281354 289293904 758000670 645154942 440684635 641670791 218523039 5609710 492483217 340354909 389603988 280566307 853295790 108122463 409565818 653122430 796110509 57747350 875018350 318741548 552645760 526226937 505657346 191947009 114719247 703616099 414838039 368222221 629102274 792632689 131485271 936796924 283385746 415291667 157596710 931954718 684521120 523849119 745641132 758604593 926026670 525266093 621712773 373546699 670741422 222052465 260898331 754169142 405786388 977870616 687718820 351003434 132527616 852847769 994256571 914604968 125728618 966960473 802831667 272786037 886934760 536987093 129646219 55208859 155156348 643540650 410225564 18031330 664911470 394419580 423600816 891503381 510178442 684915656 471886799 49953083 845556913 308988119 471037024 591268338 105661682 324953576 400668294 286191006 529206879 30823587 41952422 425148602 702760923 15107075 675014797 3467989 671650878 78821667 605642473 473397914 764004296 450131297 623618598 724958655 671609566 27768232 803996290 466362823 710773716 41544198 32837734 788371226 406509406 236634559 907527467 327981890 361037473 457662144 435051691 353032570 843807600 667535388 122893627 317997391 478586515 202527226 916414795 454734114 52460955 836699152 222635008 998315353 624579874 928677770 152135216 185835161 925175639 836996050 131624439 487587222 823739635 383262923 185621589 271834021 372063154 998560493 877069611 868535096 417698326 563392324 888648878 873432711 476911798 110611791 468518481 814480069 742520761 703226539 115164569 885350418 536237807 125926422 820258857 825692392 644818328 740653485 569957 982475341 722117827 956486207 587742904 259834617 654651228 536641331 691082910 475937736 64875524 40523153 525307398 91133633 753761245 893479804 57244981 348033312 681519997 379686979 495150153 157215173 931329872 64983013 192220161 606838995 903410965 376289597 758204204 596268271 58351761 665551620 175445436 131832623 384154149 498585491 919862940 196564557 166612310 104594444 948221128 394757800 593850559 962081305 66295329 900339772 84590575 781822749 74683309 395693778 812612181 302274855 621381215 603395785 265640591 983125016 184555316 706484615 378188326 426537183 845883086 971012245 630910020 169146320 718481073 487128752 407214231 880939921 423120978 707490882 888427372 425155405 290834260 832935752 374068 129464805 77818928 307271928 219665602 742364971 359986542 929823420 897769212 177788392 110296327 683781484 711334801 770936929 547123099 133694990 606384111 710960883 459903675 446022920 318066711 281448904 587308140 247242107 540271899 549749145 941101994 985966676 380582805 25430389 365910532 521357385 621202501 894093039 231469084 251681731 653266324 761070443 561382849 373849385 125548314 89626128 128775588 346890914 19368210 3829072 119656909 702292425 649033052 734477973 490946302 207450666 75841056 714620898 345379024 228468347 228089002 953505867 98370133 861330036 511608070 37932193 483729129 129698336 533969391 781566743 365890983 69787985 218015098 671502304 730367967 920748449 149231777 970973946 13664677 722696624 237230185 459865950 566351008 697895553 685546990 914458679 177696158 594402873 542156603 362972056 751758219 170832742 777259715 6140611 651712267 993524644 937016295 419013561 378686444 387260037 734932217 484428389 239885725 504163462 833878461 869368737 55425073 27335241 899854376 842247654 11243177 394161749 601709521 863186253 683001799 278402478 333489992 236766437 20357075 948259622 714140202 310351423 294215418 483241773 615304994 715341264 505902593 439928266 485380689 242729556 942022910 921076389 761931867 343748035 246841860 581137687 356330370 825972453 768577283 499163192 398886856 585779338 936555066 560360172 999198633 17028 836075905 632704333 438440677 420835741 442851394 993794072 412146966 724646751 16385587 458010129 818197890 8981242 271377367 357927009 632274141 541583844 955111894 662253906 214502246 798730428 293478293 591578671 283448542 899229828 900928438 142547613 506018407 743840937 862833567 613353353 646422848 142993766 249170244 766137689 119661230 782189876 52482076 716513272 432539340 159794566 17633356 769981429 818445430 504089137 31695571 563533607 255281594 158247361 180018863 20935022 210897760 807348193 455844603 96248712 751955392 333908611 131105189 895870301 145403366 407749109 633076022 480356883 907939503 269534220 278266882 228897657 881038249 17705550 742183215 9923883 178052523 59528082 712420630 589613311 28960544 131025817 579115611 655994924 492626703 777103974 940686982 287241650 81053674 984649689 360091650 627411241 801378306 658271289 898422561 99832047 684846374 640951144 881100966 946282723 997820734 489135444 987058582 616626333 708718270 811771116 870621358 345121993 336451993 95737324 456484555 655825915 189545179 935134563 542587517 734370536 231909849 506539712 636959286 136959674 705225785 30715594 438335733 815856637 107798024 577407114 53266946 214001073 514294953 141971177 726747463 34102583 111893817 518473885 69303404 486329083 831831694 856772373 507970499 181117116 230175503 13140882 999589262 287610285 803494766 295633340 163868320 707582823 388883224 625816614 688052095 590383076 995982160 865361194 572011125 246112458 567231047 509675236 33955195 98322862 703467348 343056042 161829277 905987410 329872058 317089520 366661833 977438036 992089988 927474502 64764415 192047521 98423478 386498421 451557550 562563941 179714626 8533620 406217702 115855020 465691440 443637423 439446951 36133875 97589430 3730297 627617891 943303548 536115564 964332781 337260136 457453254 366200410 54697555 170826740 18819631 413821878 177027768 590087300 336781851 375077083 927734888 770446790 387502167 605856827 71046481 489419531 735860669 59063250 501842773 997049003 947784846 102966059 745832861 835444114 651084034 837659944 887480873 268306634 19714921 897916228 586773643 690520916 285627936 372713009 339009486 457274665 871507342 352351530 279529688 902561304 775812416 706922861 740462902 979573524 831251563 533895183 31469155 610433982 917314514 772958417 968129525 805008784 946541917 220461317 666701311 196955019 545293803 82594779 80508063 654996003 211908960 471757453 723426285 554638834 242568312 153819363 389498507 655202964 235989363 943194124 510755865 65410804 757579773 175313748 708553471 353814093 128577118 421420811 261987086 678139300 982725973 905693970 927613559 265857200 357552313 320722145 843003865 499410867 933831710 106622840 317336278 719553404 946014109 527198695 627093277 598029126 887514120 215312756 305959901 146628915 391128167 281015869 943497112 556059637 180874276 166729628 379178233 21235912 36914 333257639 127872353 417860332 246909529 249932130 369793165 357136321 239681399 197921488 513100529 652750619 679505453 740101146 891570524 164182376 860012601 946611283 12364670 527681924 595282666 329202134 686033705 115237369 196336906 652711279 620758886 772883736 454952957 270363579 886449246 700788447 190505690 978485853 987129919 969970911 57496567 190380410 154763227 98074426 893486230 783356985 77146455 392726185 478032085 113326538 50059011 968626804 711977721 307575965 71098346 325518172 322566996 458721360 487161548 641708365 727725705 264238615 337378924 16180790 659097191 350336299 474322617 738101524 605702650 49585397 655121885 865832589 13064109 536976429 382649579 457776644 219409774 84387831 336826617 334182996 488285407 115734643 207227262 915545264 152871244 184047640 600119348 904861248 727402737 599751590 571731506 72962109 425801449 159704264 560274838 467833461 513832011 543820586 142172239 287459795 14621080 105868535 500147449 568568724 567272289 871960446 214260626 373825473 521664242 300647085 427701953 515882410 781505108 559823783 176166716 679930592 48270590 535032105 979417505 239986609 167317357 425802808 826684566 907540378 172152969 749348263 563147456 155821573 747802461 919309858 796336695 357265040 606988991 266213667 134554895 196563213 350888922 177314844 950461954 368439472 169611561 521784944 108024102 808456695 303928834 627181871 835632954 327296734 253773344 824332530 974085706 13350123 685353462 452589862 168358344 671936070 42931039 884190331 973624488 452375524 249476540 800169143 658503773 554024626 580526249 940160548 282175515 407516208 978040082 145449603 565409540 200494777 939592158 306996830 589706561 221697210 892259844 496480888 367413595 675190538 387790565 554866419 523157736 727384707 620271977 52497733 985086125 84290867 443163751 474383711 856045075 240777038 457014934 732671422 915738335 185594056 422467410 293807207 170449021 25233214 845383860 242998096 790333203 238356978 60857283 584244827 438832436 984301040 699225428 261723277 796971746 117156527 257579512 916744556 990179568 318270559 917832437 395808571 160123545 198789931 790572679 129073015 465058707 457782026 131628774 842699888 30291469 56746071 932027639 84541469 283065435 313290050 5722400 130451427 217373707 593142826 949745633 708921788 198277944 292817060 338511280 950594627 739954418 81143566 839951580 923619518 284463013 21020879 123304933 703691724 47947025 590533292 215584280 414110020 130796283 81194051 145241837 642829654 242485603 175418010 588026332 414307470 127608199 329548005 396197833 945068602 433371137 40051294 698971826 838437560 465518899 233857605 90089289 224990984 55030192 469020153 949790874 956573354 983636503 797417122 136685249 206945817 719368703 25664040 413491437 227444399 952222989 904020108 872600747 356998282 991021595 820687569 604781136 335804955 342246137 7231465 98999578 116294689 421357275 454595083 745505714 610076910 90180288 864976952 556525561 436460734 599808287 39242140 758189847 331722602 516576907 982866881 672140190 335308011 569729313 777527617 648959922 500269071 800872589 640897088 549118988 493391934 453801513 363989318 343620327 666042648 321817933 809691002 352843012 733429311 169511996 75869371 553568113 261386041 442766787 211348061 261529112 345384818 270964793 795635966 732354607 551196843 790488913 648909838 969581110 221060729 832262222 214310560 608113473 897483578 853027590 222329598 319669215 828383815 566992231 504119339 850956829 477867058 734964538 516984414 377616161 9298580 298929439 467778612 869335126 400724365 439570361 448297728 965589191 224725150 700292919 921677914 737155937 16595548 350965631 71256324 703279209 665991831 396060039 910938240 558317650 885680073 934951465 523183261 467709560 92930898 218094553 559405287 70696005 860452601 575586250 52343644 949248437 987131703 429669426 343005515 849514552 838201312 996160858 406770503 833378728 865676939 366311061 506004306 359464317 757419951 204593774 649877055 911949806 188812477 615363219 436414081 255039293 501552143 797844038 213029199 176381353 619486552 778515239 71343515 909706980 844857933 739033743 832610646 218232297 729736566 523880773 799051937 84422422 847976451 108917643 373899009 823722402 934014157 924956620 817743245 661997842 543866555 849320804 155918370 269211401 372751243 118639607 100764869 863997749 423011825 335059744 314272773 284803127 486111172 947266513 316149688 621375654 183611356 869853419 973274761 402355009 224794947 699671659 831334605 377264514 848112179 990875645 423779231 28108476 629371833 378784000 717469285 522133442 335806424 924740595 77301845 898700990 558625017 614304453 913864204 451533913 748175602 845018793 812673994 290258667 942658461 240498459 468415891 816285352 994097772 534482754 635960851 951706088 711309085 18075497 914474698 660987024 707312814 993889105 829589079 381419048 423678258 17193910 933439553 577884726 332990215 607774347 125111598 882434534 33934264 211149508 111204334 291224822 154331231 619594952 693561166 478744881 2297757 886401184 215964896 406182054 270004199 576989498 231334265 936263953 262279072 229264959 901006737 94376600 85238736 579877097 290527250 440033536 922691395 109319046 987980591 715718413 228041830 933891468 381528992 345017913 852587105 982654001 686371838 3096823 406240919 101573799 506185102 653411211 474961523 102411574 785205299 888954161 681557285 928931716 320183343 248958211 104993175 29327163 404356913 519308309 632710963 510298577 437285542 292119534 936184527 517127609 840790229 378316729 534086184 17209940 961081920 921932767 474720206 727081378 289505313 846192242 752561587 530290604 133333337 409953371 143371276 100490016 518747184 314583112 49620193 581613142 718556760 353568366 695286904 801858040 942812435 177374208 959588940 697886534 193610662 476607220 609088070 846126834 917202369 790667500 44574024 76058803 212994268 9851241 257523658 174107433 299137642 580386441 928763658 626028525 30934635 143709340 225448375 970241639 841593651 410373011 195711177 385228512 520321581 146067427 635011332 943720232 50974881 491195876 447426933 952586533 637228346 602405307 43658983 442961281 881256565 196809031 980869616 449776008 439760013 357582619 230511014 705484643 716871221 76938264 343308964 769484025 383066926 623775205 587900714 527764862 385229453 81731878 643709034 878195304 380707023 659652013 791312142 20255477 550648913 381556229 148953456 5318096 193432209 160064881 780912548 955108069 151692805 584422265 21965538 614208886 920305284 430785299 300719650 222965395 937512251 137253090 702654705 240157815 978840171 427169413 191107559 695415966 305561745 533246983 137114086 815619984 455256100 578207473 322229211 790117968 825560247 248906034 264091667 221285904 758276698 793982936 287105032 667852715 531320456 677748986 824540456 237243591 415602174 865056956 975365421 149467225 930715715 73191221 33437386 130812770 491079272 588650411 431841932 947018168 99198626 542733724 683187039 472841715 48790926 903354482 942508863 838162425 137893196 459461891 927159989 726320628 457906421 139985291 464015346 20170737 89156380 613697766 23415655 103756650 280253410 442552906 833272947 97114018 872787746 454167253 860511920 50751316 161350636 316472437 71570427 40446146 687089701 85355470 100832033 387704287 284016681 48472949 636135328 551053603 850879304 603683956 937594194 764113338 340145352 278933415 932489029 693573843 615411595 328206379 163173062 418216647 787781709 738244695 122505289 780509225 207438832 370245816 980501794 541292163 755037995 333683315 915500057 824355851 228188263 25461427 955756423 612410516 122468795 763480654 69525840 28398125 919292892 461438762 667363568 194821195 9652173 61767796 178204799 766933503 198311089 598692574 639581645 231349990 467199609 674319766 805178200 585591421 190988005 246621824 589368854 446774401 393983249 449576888 330515906 215921763 123604744 581113706 80624396 407707323 97642372 91748526 813348198 86733416 811563600 149988889 481550555 283121813 551723274 220497294 644120316 182781653 102906891 614452103 587944841 853331171 711581601 340616857 543454052 412784206 436909746 389684984 974734143 374139111 475370679 480546033 898722939 138289108 715103799 822963579 356710351 836563065 55130032 468553500 608489893 52728654 502546383 119140792 745648900 336577179 794767733 345269743 20313324 820843937 144694250 636155234 121203348 501325809 167710030 383079033 40185827 993348797 275904324 441959057 244660054 716256675 616580650 307426017 244872605 77538178 888811318 798458392 149420777 883492147 187206766 603560825 53171566 746629672 790145773 806635000 950008919 3990121 341417733 275680647 518820797 896788851 604585152 375586374 287708500 933588697 251394660 93436968 300515537 115756249 989875852 448968075 326894527 416600115 250136161 589790067 766709505 743672145 187860634 176120983 941265590 813710411 306145525 742619209 18388343 494270305 639672278 811019741 293313836 722771074 22461124 765746266 208103136 400239373 359718528 474708675 709047827 190354122 68032807 97358919 490173501 47405682 974360424 378616811 837695782 110868955 426914980 100003723 938092571 754986232 204793 183458093 215369712 281002786 192227290 435554108 276865575 514294822 379237353 41553777 262595815 682627110 600329376 534929172 55232747 983165581 814261546 472683529 775213876 660347234 984909297 356859677 152680479 420002341 854960669 976018120 961500320 337660090 891211176 362340313 563747297 474868539 645492256 807835666 892586594 197490767 297447445 323856061 504000946 355595442 897512702 777730223 818756947 899921371 162327806 180591063 808843679 687091892 500942871 426083408 927762734 526156288 969670247 20016455 133126795 586356167 768079871 914235768 906458857 991592622 558614755 625837174 254587934 632233956 249894431 421752875 237434967 865684803 78211808 818538166 512065676 436052529 710559876 890365638 895565570 132061228 908194572 910100808 672978219 839188036 126867732 371377103 315845083 481829076 570553519 728244732 742565686 195971083 120792627 511924428 272149588 429190832 928617456 220899615 381675687 944153827 876766573 693947495 38259660 991568832 935199291 430215708 78679143 431293808 62814252 824391766 74707533 778742470 456826491 782186462 72580708 709611740 871014653 685206788 913982481 623178729 875197321 232923626 779937055 432422190 870388374 241984566 550947025 626966788 440249859 823318307 926635489 136557725 72169738 46647615 288579047 654747600 752896816 184350784 486833049 935480517 737183131 971207300 215431733 209348228 938016922 385656652 593492589 700925586 467399126 302885860 354934199 776714671 523406422 163154458 911008691 156684718 706062980 858201805 538705579 871402581 42678098 458263402 323827886 174740646 650312119 412629567 556046714 930305493 762346118 509265560 587132133 817715336 787665700 468009796 370950453 184842977 755849612 809459802 786960882 686593436 735805315 249036573 265256868 487089643 867826570 741486351 613122218 899464059 153161641 587900774 555092328 319860788 216683155 935078025 291303839 363286258 833075608 718093685 956349425 749482959 136201405 894745591 982098843 534200870 803469959 447727262 588301277 638865732 423498203 198633034 38469749 859950464 356176568 30484209 431327428 441958382 218393915 574909946 200702087 586745502 485654873 159890098 10735248 796375803 318614652 583976879 72025749 725929917 911715650 431751104 882744782 669839164 329353433 620101871 162513001 520408853 346799304 197389528 597917155 86850163 733770808 954725867 345063171 436639403 791708491 200868906 613587174 979188553 346496548 506096102 449368106 476381447 808815391 999568828 245448548 869441199 380381194 344461274 224428567 162455858 974248569 384384443 935666 129821899 379875846 169928705 599266579 131067812 281936526 472381291 234928120 673405603 614272732 608769180 529161445 386460390 893503448 142758295 967530504 816869858 415170057 122180061 134969819 898315749 367017792 630114178 502313845 449395198 68772149 166171274 97851017 930566465 573897837 764360551 757104516 113390138 39702240 237011007 488369457 901949417 824936583 671442376 20367295 432600033 886408143 584644619 868876686 100642947 196513237 475086648 397743960 615958798 890450041 569138065 32741924 138869008 486883030 374138828 981532471 557453189 647605925 936720134 465896490 669962243 909934020 298169455 299789138 305006549 350918906 505060454 991754603 25230847 781826377 249458173 396926754 164868165 452215721 726404765 340963837 227460670 762853062 712925725 204137587 208577845 298813357 844669716 12216428 224964193 144996123 984167463 588921647 353791301 139801846 621083320 859994376 553801956 630004394 568105539 723649676 429414532 8860349 62772297 208888991 907884524 553481712 579311479 346758852 668753720 603658096 220650143 382754807 114613524 508550385 425247412 810408086 110025902 494106061 411797455 638579670 900956207 925519035 468227753 89189353 842029020 753711741 142103632 203605514 747472080 8750417 265772988 187463103 347003398 289156417 12360609 744340027 161579069 286047934 506084808 518946803 825687295 555151779 501113029 530979083 716661034 132328475 438610056 395352217 443074570 188751994 626920472 971198214 135512142 89058693 601859781 365028721 991474407 621201586 926045339 260528631 987090921 834169720 387000368 632353422 469438642 686862671 304646994 131122329 734326529 973209546 148296844 732780666 133832302 298040799 412982709 617227887 326791582 446326720 948300502 786698602 801294491 636968467 639512519 667171540 763255053 6269409 485867300 324575884 25462281 334871700 306863855 569600999 653894070 601253821 117542161 986188460 189490966 596217769 58200737 781570784 677300814 195836079 244087329 412640500 661289637 325105353 425112419 702113806 382317735 52740893 85479428 957807017 746589672 37507890 816392515 15294497 426776231 390362301 664897922 486089371 106610974 399775306 346567219 539360981 517235165 967265721 170628351 169623272 703659123 869056698 242016013 521092742 705631877 972611957 311374828 900476781 551826909 820288812 915742685 917231280 18749052 238523259 393138159 280417712 856785202 808929242 638858620 774328090 654757654 146639053 759270537 862502498 97530092 748968155 376052310 5722278 974860470 406912851 395474463 277724709 473643170 784348174 510212827 315207046 122019585 509604562 847753214 451915359 79010606 902251357 96694853 836951430 825736230 361508791 254315654 59051817 789616712 973957012 764232029 67902304 435874654 43892019 751863425 377249142 243084595 979001090 890701306 319274085 985388377 444838926 848880556 523631266 582802059 990506380 972961028 799028364 715235718 908946786 29156777 607061612 432307335 608405407 222422134 779263836 562260307 161301342 319227419 498159745 622981894 295180445 466059190 311922621 197439442 80023385 887777042 281655690 309841170 63275210 868373384 129874565 159965950 729962982 908273184 727204486 124256500 931284828 83037300 705355480 827065025 356992765 74343583 891781697 978998215 765775857 98019131 559122104 248892156 564748640 579808632 922718400 40943278 218956509 948191899 720561103 577822998 551437175 839037807 43367614 687789118 704320388 435146996 52159978 96066538 74145658 431560787 594790268 283761005 343268034 727201922 496074520 520595085 387705617 583368128 991536408 460721944 662840775 173926405 933316146 669901221 940521955 773448557 95953796 974297599 312462618 613825029 153968831 402467071 43863414 44842198 846126907 894245632 797560557 830510502 310601311 791364115 486356347 484643588 410243485 733523745 803349652 97947719 259507190 731445623 664632530 674439793 881008697 701875736 886673461 132086132 554620159 256968807 656158203 274025233 883387500 54673590 468210998 178921596 884399474 462562999 904972714 989670517 300473413 862304067 4051691 491856614 773623450 407838363 162892815 410287491 857076096 375526331 324040852 616689776 349526385 810167527 926737495 732085989 80646414 76472330 149861658 564186960 627074943 745313903 583639789 686658839 303099970 844302091 219476288 649026911 830187025 860721064 297870817 944941042 722454147 986964879 566153542 656110245 28094570 331799010 56061159 105247028 718477243 226347756 662643307 519797321 569821565 377009823 876776037 251125362 538528214 452135808 625928075 323326820 856983266 831900881 563919629 750211509 123968050 51404048 847927782 886461941 811981704 452809888 898856482 133174885 736597654 997819019 639659554 291054141 441006536 788674115 330908888 152340057 714287032 979978071 30454340 469157139 737126833 631085669 977553541 511156010 14119895 572748219 738183626 197031042 675605602 803105792 203416939 595162669 295006107 58989240 31931964 949609510 994998498 654823424 368453780 398743242 723282909 173024892 655762500 828523021 535727780 881732541 399064034 161041808 349686067 551244406 524865973 828170894 965483796 986338253 117063080 638596542 541574433 276039795 88591270 861092146 776024170 411503596 325091127 181880185 743980537 552462440 372947291 372972227 913122081 29291127 417034154 17769859 963016439 45275979 615908628 984386036 293932184 327187091 55228597 373858696 74535802 701123707 185046640 292147929 949072051 508262646 357867657 38844875 446793561 332155603 341377070 151669959 406356128 812989990 651823462 224587822 87503571 304707984 488019178 455382340 391106444 415442589 580027973 143033751 572149015 958533923 151300811 805360365 327388256 765180177 407236310 586120908 261741778 582861846 181690543 700520160 631570664 667298564 585944801 594088330 569198375 839217806 930056138 573731154 346419938 711381208 62574710 794106290 783418121 366123587 808074945 687302158 325142109 734838985 528849217 803655244 209958860 390225788 313230258 459904088 549784391 130192258 656448879 454040189 414112374 630652123 440763571 602521228 897274901 46011514 968648931 617247048 749521206 640219311 387711329 497511815 530625001 948897802 209564880 109843936 878103079 971854241 3442068 628210596 484179237 710030941 514452441 819655524 362602151 537040355 155411905 683906567 999524706 867699482 206864470 689173207 344592095 822182835 433931714 23122377 287557818 470912878 614431874 143432646 120086979 448784354 619546250 957813062 53255249 760764370 78472754 657797664 457595209 232282135 630358842 50138071 42518136 130119158 741193316 861295546 529376747 364706570 936203561 802561717 567101068 850731703 821243042 754534155 362384943 563884335 383608607 766496956 725296301 153428221 730783994 331876170 612448796 300595930 796765367 776008 185239908 105145152 740476837 863615845 49123021 763124852 424314553 499627683 528366129 616040569 17637941 695333725 482561645 422709468 566179551 640423474 766030447 730992000 624452998 244377080 190412420 979696953 392563732 107309301 156180044 215823912 844981404 414574832 26935987 98535829 170018661 924441247 855840985 849672821 591147757 481948772 558581136 721038548 297767360 658793070 301188823 301213048 566294956 450322660 457925455 671517698 532367225 350677541 33645825 626917609 874335012 247407668 460415496 211039288 890016817 553352119 105935787 14596287 185385856 273005160 754967168 880531043 443134530 102951739 998303272 341522080 206905510 873839875 45211 604283153 622336802 560788467 669851750 663297846 296943450 465594115 99280849 649168300 48376723 253804256 71093882 335030886 331044904 449048426 367346467 100514086 511350012 763733260 630748150 98971121 442519531 184964232 826834040 3778612 128152917 632162208 164258246 142798667 41409223 288917318 697861849 805727356 5135383 460121132 104632410 694702755 464890383 897963989 7390699 9564993 820395365 358706354 133893707 276522361 606812934 831723331 372061437 187960368 374071869 159090141 348356845 814962424 19135904 4862188 427135991 21378234 404667578 475274003 370948883 233572494 399853203 920381788 413589832 582736184 575625034 149995302 230069489 332563148 921620287 153167544 445049765 108997456 873752441 85142984 929204998 204684074 528790300 400418791 465218155 398340532 547575674 417265085 977951649 546013030 265239149 451350793 202045919 507343174 898378097 79392140 892307194 603247671 696776139 790238326 400091243 82233142 805486316 920780960 91936645 486849618 745560853 931152411 374270591 468460134 785097235 249727616 677161704 981390302 693635849 726684951 88521888 822605974 894608745 345394621 77700084 530514084 824751290 430505634 501236591 519924501 976663888 495986068 508798646 427447103 960017502 138524231 160072709 986594021 261324712 158470694 134233064 718355075 336825211 71754449 214949364 11658171 666707811 748651086 201344803 167360551 645047181 44169913 198784789 338060810 769030191 12954130 393251441 775604298 369374564 143147768 808319485 895425419 33831686 90505444 620988609 134087469 998320149 470918428 294253063 613772881 928446904 78308240 344868622 541253269 945097410 932546414 597135405 964373490 807784642 845074413 800124438 54719895 216107891 342114348 888451887 492316402 92936571 935334540 926437071 439243110 601477988 59970280 841405964 19674343 618032343 943630007 39685136 9994169 509275805 61941320 333132424 325567681 470163812 429640061 185429155 358952068 260045429 826446807 532828233 104021216 645152324 487997844 270794518 885435147 434026313 482125778 459610971 156561446 627269055 812530126 922089659 941616986 413153741 695661804 643371734 452229355 839289558 48622147 100843864 997366756 41399340 258224899 754607612 935825333 559792593 766149250 120072142 443362624 342989895 471720194 445175039 127952413 484674199 251785051 575621100 823001380 94800453 556987413 683972194 266171987 966798820 685490748 698959293 909527930 751814506 586653267 751492308 590096448 227716954 151909830 30443480 256642303 225552436 817668478 489462107 709876155 443042306 683262660 305675290 64903502 795046022 386710564 171158222 301769108 5716612 798556766 592328693 275719097 644072338 131637389 667006445 353221362 145162780 751664448 764286726 377177954 643736829 36984647 776084753 786588026 241015315 293104321 660523701 914738863 775944822 227768774 614492873 204338758 221932094 570630976 838065048 565925615 737289246 665693394 583179105 381818755 234034983 448159003 273752101 369660060 751015944 295695022 705106086 241766763 325698474 100998987 129934808 581292488 705693747 970013961 299181339 13140720 750611471 416739045 498356691 233943355 751350910 858459035 864014880 520977796 453756054 237870745 296792947 351360242 497853146 359745069 80470296 405402748 496669761 299818787 874817053 302036181 84533421 345735414 392388986 7175925 114381991 891354470 100825435 142093814 316523813 927341168 3335873 246402757 346524725 251566407 60195667 81737303 397822066 212062269 948084001 667729530 523363791 197067429 71653381 283182246 474534946 262075615 780429462 553654785 693907064 642529273 269224030 612549519 979949743 406278192 314774005 504207809 609116230 408994574 967912887 970930792 914899401 939576787 710029244 708994980 427851339 491247976 544567028 888925406 69121376 156656778 844038049 435791488 751628261 402531342 511468049 891753434 995426260 624186634 949233617 962030053 655461131 847716320 94314938 783868856 925869878 499531021 774692048 517963812 863976407 154591043 604787828 38072969 586854665 7330676 7724908 273176323 200003854 840662345 431323375 306097033 580575767 83877681 287187584 621390756 752632282 152038869 36433032 638075924 375109760 320843766 594377558 980300443 19620582 455795745 428878989 625249458 309506677 413893215 661951831 668258649 777241861 809690810 757055449 455037899 700169244 282734292 304066348 962967259 788534806 98822192 381445268 558557553 393912996 822676426 565575778 179463034 215261981 235776081 48124868 181181642 537939089 964944056 620052960 226585683 164398226 24592813 494055462 258449347 538902131 130300766 689433507 949540993 662953539 956281236 402109591 685903949 811710570 190447281 191192515 284824770 73235623 557764919 516708938 34786534 581205973 640816688 18300192 240241523 303542567 369356639 779838570 221401964 625910643 419482050 584678961 862157905 52065385 304090192 553446832 433217799 246408013 952238657 176852658 980042265 681576215 610030737 251622713 691198678 365283814 929630843 171570811 780435066 912716279 697040078 581798674 314092259 519526801 218594734 79279879 257096912 54309948 97544666 851117671 911692158 593145054 440364082 434651940 145425454 580334620 343698828 343541408 555870590 699319121 494214791 671601226 236844663 938196014 87657408 556678928 42193226 190856140 604411206 736581425 623318150 958029389 625850451 943244462 829407256 40877720 496087458 451756122 366720012 981396894 914402749 807097130 182663350 713847789 164947115 769792864 873704947 687248058 311864421 616420826 366859987 81220146 655308321 79269359 736826442 245315216 337012930 964293086 569394926 480490324 580215173 478521430 131011287 796655149 750971779 42397652 861532537 185058162 196417825 157723972 546318769 847465835 149165835 106995238 707045802 243114038 503462489 601246702 849524565 855699249 991969796 379520477 292109879 612816766 685397649 475319647 797118196 715089213 566888394 680976318 123144086 360775328 829999742 271268510 12299800 133132505 383993218 301949802 590312206 210881722 96283061 296769858 384642282 930820165 23027046 936672227 968007203 97597126 821230393 689417729 6111009 895208851 605370237 96852209 340831932 570762118 923762652 336876293 526063313 767524158 846102445 996184140 535840346 809142428 69296147 890663856 437367982 754870717 259970104 137093063 425842979 438751060 534241827 305236723 219652444 854345656 756804500 2410085 233787151 437336816 475351599 178637235 538301202 556548342 195048577 64278707 77159579 64670146 938698763 594335571 4794615 469697942 739335897 360901895 549263776 908699422 108059215 153084394 140077311 353639512 731711608 74389959 692078680 132593510 804073593 410641155 529166682 510657807 912052391 989550393 615106350 528349124 787976533 194815716 521510352 928111423 900233390 212051486 352759783 908183729 171595834 476974310 276777811 857004261 55453827 138818279 607572424 863775536 677310372 272042718 532829504 383077812 189385606 288618036 764812656 955061746 83139309 838681019 558368490 237193197 549686075 571659411 606830941 26958088 428846689 899832254 953605341 304906258 487810920 940041311 725945651 518023938 398113224 137617653 443412046 375498767 310987310 702132617 942373191 858200825 625274387 280417164 161249741 927306977 315496131 583921190 476119947 752944121 154941509 963079470 814061138 352511162 520615972 625855226 998154016 609055321 593450282 79079250 145203051 874404589 454348257 579387259 307426321 727024708 897199622 405131948 520938032 288640501 141451921 502496568 453329402 983412540 707977440 483998768 302241708 587079579 45813383 969989171 837134310 353778284 264906694 147409968 83808902 664533712 647203386 121613075 171601960 675901085 178654937 695688126 331776542 648488232 862488256 263045809 369508258 458379203 631080356 264328532 689044633 9951789 64392243 246128387 112498275 857660674 6506694 222746993 253816017 699205451 840464673 510499604 955895895 41986007 654903587 895535307 372190235 329016655 992699190 525776471 103739125 202960094 226899717 819213969 850713257 517713305 899290381 884609829 712573682 588263845 329803133 844845767 976736944 4711169 40341903 209211877 855166639 992592245 361115062 530151086 362634715 387777925 452836955 351978239 875488369 619845917 707712289 517673379 813521129 704258022 220354112 744635923 185903682 841453342 473242590 355092694 571572224 687256617 181615887 171294627 710668326 796691495 276401994 69369373 325731754 891163553 390876214 926241088 518853369 786868725 481244158 521726929 393296286 29158492 499096719 813138204 746355908 445561107 300995313 628290454 122213422 902365950 655666399 84096346 703949100 480665024 941210044 703662850 81715748 197292487 907349877 642076954 694204200 819470834 122311678 481403747 959514327 527777939 132014996 456514188 638440673 981007194 299416735 160932974 877013577 636838527 240789719 437295884 274405368 626221655 196826160 549039552 568922826 70734101 364782723 224527900 531610551 456620471 456061666 633650646 263493055 526540403 14384689 339749305 379277132 506078155 152520670 362694607 199385287 954641486 987183381 390891722 820990526 440262964 670092655 239337377 425153034 538839811 85824979 242831526 300416135 327000325 287171326 348539709 725354463 746404075 204415377 710040797 323207967 40087144 871844117 689149766 308904558 710030267 42197626 685251251 373580831 891358152 466674682 233517726 598059820 922464015 902554874 641524457 867615472 993810784 599576607 149254775 184782337 760256159 598361195 488967096 230790295 944181869 50144697 206525192 437288263 107656693 591269390 965517246 485732553 669512538 364571398 750721794 595035466 78283134 320220795 886532464 458580816 286127194 242545241 330387763 592502201 119560374 306924775 942335645 980642617 95934865 494288643 983070263 162460830 20082509 309703616 781578611 191957495 214456553 234723593 908002147 21998099 427507272 748503502 949713352 462742216 747207301 77774087 387655636 203741561 374394694 816469373 509009372 302329057 435722982 170158505 683761864 36980822 662958471 691918915 852964229 570614209 440162955 132116839 442724216 883330968 296401257 699620601 494330000 907783855 836988635 14770369 895669051 885573119 781305543 236518170 562766739 809866629 706095045 522053324 107737160 177323830 370755496 630410625 256868588 765178590 575998693 3821742 798626215 701694095 510229853 420467473 260093460 319827856 230789872 325158083 255336728 411404124 964226607 654746698 532441399 875075231 997147222 311292278 558901608 330365364 901986835 455276954 326961430 30451965 935844396 936470088 132998265 848498103 330368578 538560956 153747716 397847168 10576941 610897360 197530262 666611797 242645254 334301013 456788025 716453055 307170555 22485621 592291542 887449371 288612122 358828793 45074297 127426696 912999112 242466086 638432137 350131863 739849372 69897074 534338205 477258908 496960786 256219051 10347394 623893021 502711460 118353710 951140229 652674723 422889405 361586108 894978770 630488197 39057173 569992169 687015568 318977585 449919608 773117114 327924704 692594660 397800565 369176751 795894781 810573891 593462255 158501153 77494327 881636870 639972740 231488368 474178288 437638105 348061255 789130271 17701256 338208363 69270640 504577348 885512444 122277237 736535937 663526397 577025561 625400188 556407202 930076586 76241459 104922767 861776095 496521013 823525395 841194352 467461285 625264422 644845907 751155100 493735727 449403550 630928970 734483563 738871282 967251975 679021735 28937727 746144387 194416125 117801150 396526251 37351587 474102637 540286852 384642880 905199548 602762208 9399692 177813628 469774730 853233417 860691085 664405678 171137810 42759621 639804002 50586310 892674973 382602944 650839655 913307635 897977374 500874088 201888725 633133275 286837077 68329052 592003411 635197596 758700218 661231706 428088957 344762323 700483339 165922549 675881324 873079007 129596709 506713341 306306341 84824975 765861235 424967674 688661869 675426051 818325634 779268126 990085006 743042990 201700922 788861922 670015468 424684196 226803094 558306015 860676177 155564031 63163610 825296417 28901258 656525687 358216129 444944540 402530779 986259680 892566313 138320247 172579542 161851075 421787930 824616153 214761994 125837419 388169284 122061574 772596752 479823051 481321932 562883516 452968078 784778113 275953764 293488768 74801500 678988920 977164307 83390951 570196689 721150333 499304581 987750286 929095890 915211309 568559328 281722552 866302611 759271269 779191659 415567082 984509100 246639080 831944141 20763223 651962000 700031279 411080626 262284713 455157928 55749216 622139271 346892340 956563264 743193270 864759968 923701699 472161783 829146444 3547813 399458526 342850394 254646654 144625636 447055195 875495313 925796891 76873934 4011584 300143346 355001607 880867115 541828449 556101160 157844560 511179979 874790388 78692756 809799768 827875347 905343531 911887811 678483391 593543282 25602659 348182450 908035048 418868163 378923745 294546997 730547405 494722273 594084342 849140308 981207852 637130396 929588784 65480196 762761743 791477592 85921511 341966002 144883402 915058061 449889551 211206552 275882209 912342099 97865246 893150752 958621458 721064832 147886062 753149035 320845150 945564002 839407093 995371707 43295855 905513142 620167511 150102167 456814239 916658277 498898152 343431816 676557355 308957943 576764789 866582843 199664154 567250070 506671230 774330705 823312220 199530199 926455361 561613325 717633558 258159655 714182998 296049250 196302159 537219934 746643929 882041635 159254954 857416492 452378133 257747649 852652115 116264737 456330417 654450481 538917059 848910633 365361512 973990280 592780365 646683558 504565112 412297335 783934028 757211778 532032949 131793356 418315068 330979759 694049604 102836662 325327642 907461735 904330901 911973272 274765759 553523168 669545004 171886066 682531221 770419614 395483634 194636756 708572625 107034681 880701144 425693322 327452247 234966982 261229828 800901209 406269945 952095412 884778894 662007056 291551080 733076011 179375013 325993864 218955354 422149297 51618583 215006427 174166905 248146228 161323855 282549172 104357803 565603520 309777383 60957992 40289602 178802535 171818506 471013224 814323441 60726041 678817898 64786007 336752123 768485290 808539291 236867570 817053542 512494938 841927438 614603436 373783983 115210890 734131656 861989382 9152082 93306268 291319296 414867834 777332488 841344118 196132477 190737937 690457 971792652 763220130 432094947 236708942 913860674 850321454 414473735 600077678 361260023 334681800 45793384 657417346 860441134 818332389 774370694 346297813 968712362 587951994 879908372 428932690 182710205 24918977 836629098 175293384 144495690 761286224 164052993 638201771 556162641 932206151 886850643 274744391 987460817 503235039 281149895 726627209 913554310 493922528 305156439 837498747 416181893 903882953 294466457 665741228 304118028 352569932 862081168 99915871 890963201 485338489 597874584 175823401 176919214 948571387 688967136 308888025 208436449 749869329 591194751 76550882 220826827 667946139 365486734 474015037 747694168 272078921 318029142 831473974 589702080 699611145 664296171 422374591 544375517 665233483 295608244 906447641 694449456 907418662 104836957 315659688 678273502 714161400 222840635 275245213 472742919 645671816 615500841 222820055 74175184 672871350 997838694 823174862 690424239 697634953 278784652 602264960 89574252 260711508 878944689 855070541 337836795 458734101 815666409 983629191 902572880 232947724 959132738 499325101 337209180 59047026 773608451 291379059 934485007 756269523 722895457 980749470 613941186 966436754 201749546 859970899 107021165 387395315 975873846 790576909 768926107 202916127 895935233 219912612 300970888 884412890 390508171 101634050 811100928 185327499 646633394 247045782 195521198 264169106 531363307 946636964 480874358 635364661 427087070 364584330 822660447 311907939 501053129 348462283 927640718 123679892 649101834 442013301 484780797 87089136 990518918 72089806 91295695 610644309 424897829 373167500 691215250 870592253 561024788 619465811 233503275 907102998 785022689 969201531 594649953 625390487 33716088 728650466 332110204 231539247 917365529 960154500 496741619 120992447 326978974 579908788 614352467 365978668 697995443 942380516 939011808 369210781 684408139 186482807 327829840 677906025 825971224 361403689 237521718 208480712 83532937 863422039 330398604 101198854 128701213 566389214 58216265 532469717 557665193 999620209 871047109 209689282 25570407 967248477 477724496 165119027 787538867 702880879 466842154 246412580 888736434 48855087 856078505 464166789 402903660 12574439 746606259 43123031 981539248 465547236 662213980 373897865 767057569 826596429 111426279 286394907 655093199 5904202 316766609 740179760 761075035 958852435 323544114 925658544 99348625 683362681 941465661 141054160 555732561 49216251 672113243 902278589 586743345 206061311 582853481 540668244 654862681 564437948 508448224 829209317 715015481 149561586 601526944 961456593 881696190 873516913 878705407 431770979 876014962 27430672 776417963 62029982 136089357 338872187 707211606 949710083 38301944 34993555 453245914 593091224 729534949 318801072 550538557 867269755 225940269 213322410 470519601 769650642 678811999 894778461 69770675 719613041 725199688 616126453 627028091 723447805 629348024 20426264 759614860 32323683 788777960 68793161 201796926 161094476 472250770 215691756 300514881 280915634 28430315 829175981 754275208 633889386 582820616 50047582 280898011 790601078 856534088 108334342 882829768 302536552 651720688 287366567 982065388 108343945 301638642 142728253 766066923 471514849 114220520 874724133 496217323 740167518 107999668 243926795 535673965 705289694 971879047 146483490 744700113 886376507 247611575 960506773 238127180 269184530 564674162 252265429 492504116 894195961 686050191 557088269 948328848 825449031 682326983 223569482 645811239 717539072 803606998 2289599 811768917 220792704 532035338 410841429 155417655 337241981 299026264 256150183 177054751 292234471 498270731 380624508 524611113 472267036 794617326 743618030 105433694 252372014 69330752 759526679 516342079 484353947 934563497 593899931 143723460 323508379 320211413 78455886 376549714 992072913 758375556 217314895 542536831 585576062 588169818 684907688 536928656 564829382 677346338 28326074 512625343 458577085 10297646 416510313 811172868 711299691 971041170 313473407 764594144 35074731 879176568 730092687 854400327 225701502 608201260 588419546 90975703 448195837 375762858 104288491 408293164 215239947 206114809 764783405 357476288 80246781 556214060 142388457 711814461 213194852 714553204 560179192 247578323 847210000 646207239 655821714 136772099 472590929 755750125 326451179 626309702 211471447 529466823 716138698 994029379 907108184 391041214 410733849 898075616 532528083 639389064 740744456 754330545 497601783 910748962 235530139 541876409 384648994 74996968 566684630 313569901 416244057 302377592 336186184 613566997 662327111 450535358 289259373 548468600 966028513 991640177 30539171 278297999 802981 336824163 772294957 875121990 191762870 507842503 78114185 623271939 454427356 486625220 660282708 984446770 270839146 101604532 163988104 322129056 681446304 772303720 403849022 911579629 145760973 396699227 26539132 823584147 519447530 707956099 337098733 701251506 109180220 469640364 844692379 476172105 911699001 629489597 855290242 282305191 647459474 830504952 893445575 122395463 247531710 961385758 563117341 412273294 874621858 117435446 111768816 900916491 495899389 722170666 647223573 651374626 593255934 264269030 19770890 110164333 446455636 810548056 594522796 621464456 300913406 293816567 130337159 854776001 398971807 66934565 582451757 369913457 606631235 896460916 359720563 236923195 156024679 567921987 708942415 234118284 501817455 265128467 761930354 666483061 542927121 507921011 215378495 563534922 512020092 733163498 329989867 175295804 706039277 92265807 692960477 359609586 453480074 832777920 868142732 223520255 296596581 515336190 8750550 37645916 257470203 416184846 236501685 891457497 23167393 822996500 607424801 35019161 64188182 548085849 247456427 607617821 288119584 603210272 764426311 728808460 661846326 771011358 419364548 153248191 199314405 225307526 179346722 604510987 795717588 390817905 973306137 466152672 736257 39299577 147429030 697367527 662407648 766377231 709334864 64915753 407735485 768212276 491901951 791444799 204963881 582761639 168819663 172400487 625348037 365971393 874964986 861935532 17083180 691160614 136070574 896001266 451167685 763125506 362498418 426247204 214409252 624156319 917344495 324806666 605779524 666356414 58021115 499936074 289389136 893067254 165635129 423295716 910429241 738465674 60524563 401392726 775693415 285272668 648535864 704586737 998929543 734682048 239149577 175801796 841802513 118786352 792930046 731421237 587139000 791327695 459924897 920719378 581477420 165998135 743127563 990733694 772599893 316894162 216689463 10552388 700474176 696352463 539311073 863013697 684967904 999831470 445446936 358024728 60938392 978201176 406652316 248141349 321833773 938977927 398710887 50082206 921002795 993129539 870654247 476523209 614339622 510314983 338320424 395006439 442502936 270792297 750559158 280353737 312935366 9378197 200547098 575758122 246421610 332634955 653173657 864263438 716279499 689339133 100008834 525347672 273221018 792296296 997546417 393026678 651787654 22224960 336230366 533275696 95863350 775409432 547281792 123396224 977871994 502400700 905524823 780481718 681288046 413581086 617957936 645147821 83514472 769688159 709094191 213457769 852957242 791622029 968598974 455166276 380783779 719815218 864670024 887626283 398384241 383606788 166256389 223095106 89787832 869423030 515781372 985245862 598733573 432114255 56531150 462137512 698764955 911967838 769004798 471638557 829227701 42300631 749897583 823853927 123382203 235832386 203853215 960125150 193376359 859072687 301632925 614662732 428143422 872531691 474051667 980493114 402848208 983819918 180622007 390704040 287120869 166069651 660814784 168025508 388626652 486970143 937991387 72329394 72995291 734219477 190910929 623453052 273449567 306076644 713312346 963082551 454195433 310336008 859254743 788997835 586255158 881928943 483253686 543242985 159864712 170898634 232472479 901461185 984794358 703587724 1082388 619789895 517316414 691108882 659952632 723197067 731212924 993594422 637771472 63469098 576350637 638374136 56809256 695845071 440002023 54669692 853303226 700448646 810164012 779107791 77101391 982577593 715302627 323734655 852377891 232572739 787688843 663469005 377565292 128643944 653962582 141720836 611655019 602589727 288111776 986891360 757813415 726006124 79574816 142718669 493404281 903119283 990423698 984934656 997575140 857517263 289983167 783504727 310638921 80634351 308152072 903947787 270633457 953879631 779224395 862047695 148063195 212106281 581296882 723051718 234126174 314837743 367311023 539107115 679698628 762776540 878301250 430310640 828964013 38081007 854121365 339204773 204224875 329045940 328838363 811956467 371474850 494248049 84896690 829277690 666734730 290312176 595704371 948579898 443848404 115740892 512991832 204064919 346144007 387092255 609736454 320245669 696827104 917913731 585504311 732397274 283099880 769818835 668953018 142269652 455056650 887514671 908194696 868891014 97245547 403257386 433654755 545408662 274979294 895283381 929658113 460759623 325211365 539059109 737602847 131748169 232380516 1573271 372144457 392359515 879292173 94669063 265888780 892433504 175127421 554084968 648653865 11675142 841445297 743499665 6793381 308778271 374354845 987023329 186781480 270093940 141067416 853391242 123857112 832306525 940967200 292017034 428448856 422304436 911017893 813191910 508818154 758672740 993264511 196861525 513628557 514932856 928488618 693412367 487961252 617921231 442278954 597868488 552690085 950957179 550558458 232930126 714739129 365086569 767436335 494658976 107810651 323104968 239984400 685957026 471075427 398703476 389632080 915225474 606147788 625977333 199786028 527628469 626783840 703191523 482733261 983054213 888544461 520770996 519951863 413089729 118373857 64818752 423953870 856109370 825832519 929260299 270722665 655713494 921301457 50531241 507280181 385919950 130794415 571632726 244416387 65721737 78423416 10179332 799357277 299578650 934529797 417662868 65870855 83914359 71086061 230683795 172755569 406636157 174997262 10048882 5880471 850739469 117938362 667279930 815020804 582248849 230781471 867081832 826716300 86959365 814132710 827961050 178977687 901396932 657145219 818637309 287715519 245824407 483674662 394479142 70261352 443476856 757139110 788996990 621127056 910529513 454791453 735384479 686868649 20137600 20871617 972868100 738221826 463046821 838472381 395032839 554567675 842391104 814498125 274927797 392419431 919643516 804284566 749402606 695619380 522306045 870327139 744184516 775530020 966614918 83655946 432175585 106693179 578273029 863384552 354166384 186770473 259353654 573964423 239666235 587601627 752803708 995025757 298575901 567540386 101854023 612814373 679974168 917894311 895234735 66311577 483378286 258585931 645509358 93980272 25515512 190910589 730595057 524373183 928111826 992203559 24046896 113524374 747919484 464088869 640910863 124077477 573530042 190375681 986810773 324037991 559933182 968602255 154487621 249609584 317455737 770269499 914518652 242393443 422215610 607615305 166075539 751400711 944553439 845756423 320499948 268610580 615012855 378585098 407111396 389286739 921343206 444896297 796875647 333530975 412619710 421208936 320928150 21635831 245065402 356153397 475576991 600907147 455046440 44376658 957411870 280847779 317852382 778006651 79260557 811486885 780843208 380200377 139208908 865552697 851121242 617593365 893140467 448105587 146353971 318871119 908039838 131524296 323685845 77700873 431416613 197084713 380797864 380815241 235929331 674654918 682328792 974899618 477035064 364416311 23180690 36788960 934498145 246764942 272088895 173351052 724024658 68541793 736389443 348187178 571818867 185720800 599407302 483837910 79727616 144034975 484032812 941595839 660973768 382908119 572480540 747067372 762631872 236098973 42049693 772394207 62406782 350609823 771739799 208447262 384224669 358071930 800888705 160214227 427210130 871617926 341786771 499799435 323204036 102103435 940295084 538327974 638002549 268230725 271010792 644615811 447909080 429602403 440440767 381714999 267401982 605246716 652010608 540923799 355578681 696066610 729099295 336896081 575225648 514875910 175264176 892308526 751989624 398240213 479884833 184219485 154970081 230207891 912397577 852934195 621306202 8880207 669335222 837443838 169962229 899164732 734462299 79963610 46221194 911580350 941662102 489123021 2157071 462642863 802843808 672206486 723015153 407279130 69320105 670407747 456543635 351820843 172210216 514400011 959922843 911976395 294628680 819039217 814172871 43475615 204769762 416052227 672322535 410639183 443636838 988743677 141474301 290792964 648438084 645992227 843362703 249677161 449080302 533256282 672307625 176670122 62450829 841876511 892970542 676999813 176267263 499528874 47167271 289683773 446895561 96101754 181747597 978339352 131370730 977079243 591581339 176472668 676316158 396179395 17331397 475442176 351852628 273604818 996781089 865922651 170122223 637381073 24633013 992245109 911139701 241996617 532702113 303584283 501118212 721530879 266056 884465840 941185358 543737088 323537940 707087949 334504148 504321655 566359648 596955040 809963505 837975677 360617129 84041119 697792295 908491096 937315434 683869032 998374140 567103230 801916950 737137048 940694694 452353203 560391606 332211281 867498682 567320260 754445893 343032263 504506853 489027736 221384855 157660300 569278635 217867206 823110836 195117346 916429038 549379886 257674064 816801991 85937396 520009760 783635034 535612985 67033514 770920128 312737956 185882682 796755347 509303263 57021805 676172012 8401894 574913308 801514356 88886533 765217574 629659434 493583861 527166498 604217938 511611569 737536 515464762 41318669 630222586 165074699 284251824 770552707 903979547 40701086 137419419 91008142 776686179 556651807 287825704 784712163 28062300 211116422 389566558 616609994 187154459 137849612 5413023 375897395 338335036 700287101 621712172 881958911 87852872 935610325 334283937 489279098 991550580 141223851 152350475 211676071 36792063 259846590 697342637 865791192 99978476 681673883 624724266 807234642 804784835 379785079 177818982 831068079 498084281 435224688 726724081 680866762 314949909 617817044 499654058 272051777 520183381 804242774 954011349 251800628 735272409 819078695 810922591 31908836 246076589 853117682 982216446 966323049 409427369 180394877 581792014 358230374 260808395 893931679 406671272 958255499 254823582 396188815 488007849 511984156 113270139 799778792 637364429 43542908 15442400 876692696 922586164 998491497 650889274 846026537 260806196 983266451 572918052 857114253 281538030 466843922 386100012 750930761 316893271 878475480 278171024 523419166 232823290 355406751 368401873 885123795 907756904 817744838 846926947 2146754 209195272 885419710 667451760 330109044 188082451 381390070 828879198 401043586 7801304 436016219 896739470 579472986 405783594 480963572 250398923 262979420 924988547 888992348 680230778 279569266 606595975 190068422 623925375 650752750 998298397 726423975 495542440 706155392 173245491 137426204 570306150 366119376 657333446 170547087 698741812 340602013 517991283 529185463 156277341 643126924 240527141 45000899 368097817 965709658 168251660 621994884 706050449 931051017 172987471 536177909 99999455 444231774 975403107 753784114 911236084 21019555 956896661 955185663 39887586 535565289 276107709 197089148 798351620 127755215 65411469 456048839 689301961 913280811 959929348 264113604 357958503 264858575 690125676 989502500 304080944 836060096 646279238 529007576 646651749 972034168 633869779 851410092 126885792 54329004 967600942 197740555 231162495 968803220 281929503 926698765 119405475 616300276 582621098 246618911 650230806 465281553 175412375 398694766 906522989 910460144 774730700 496078097 550826120 246159719 876525469 371485085 912764023 499991205 624985581 87165583 139339092 132591680 83251847 340589846 913265980 109322390 444690051 682950990 350750089 673427294 617350891 322310685 572559440 165573352 781054617 180743721 974801610 134339149 872447051 985573665 899861237 542962527 16500727 297525304 198775750 37469893 57480146 597065752 887399385 78108656 381550991 247803894 755794313 152810759 509883154 19707131 336023747 541612338 718806602 89079922 701469442 316798476 533461476 490454768 795725022 710667804 552715016 979300105 785001543 126233264 540222931 475113729 824894849 180043236 75050318 606101985 533175086 920219721 705602482 1785925 222281370 718150063 657676594 972446018 552269243 323578902 658614486 503404405 9449560 670535891 332224618 808351515 418193695 888321688 595080451 351544583 214476459 776752773 117503344 421962081 489826407 688356556 510226992 9670619 834863658 921509733 140270649 995597914 923667621 139952256 775781366 379262236 285773757 854267516 941435610 833981375 438444926 986902035 517965012 564047942 625969641 1502639 108651635 747478396 495199502 411930460 293258827 754405253 345272921 401709612 712067487 665109173 894329901 5066543 616557412 214608129 72151114 337911090 30189116 833790553 348851291 254465615 348966659 589046777 340259395 465618934 878192860 291408220 970786670 448722631 48530889 371902409 66233463 737116406 88357036 396323057 260797151 690829240 913452571 116161498 415289382 571086720 335794377 985181546 853427336 109715802 594807225 68260851 46013007 306229565 687973972 716429916 846320694 325041338 951783296 275765914 55722439 526678149 831399881 354761983 264446786 330465636 223518040 558381008 393300060 670538499 222127802 868097923 62420799 307431290 402258080 697643074 614785645 359520603 752485492 384693346 511348397 408817372 799398332 215518899 335313863 128985828 981087588 75000723 490710772 823731060 626170104 455004464 719033767 875182502 100331610 126746210 355428465 806078981 201345775 60774645 476606994 57531897 523507192 22619839 158939343 221665499 23102131 777490702 572833016 288788152 501103684 615854664 488346552 847843387 125667660 536531796 654070748 952143099 329513242 565971393 384471079 389222761 377127029 317919415 234265870 571802044 774055424 214632648 88318588 815572152 796974483 263976693 229069082 221238757 641630245 725558738 337364798 989549940 279833641 518731002 646820064 229434863 549665575 788932979 997031264 30374402 224284458 482070782 931707342 234702969 622015511 136143497 770147681 436689785 441191588 284690595 446449800 275479014 470369478 196421331 66136014 74775212 50185381 642834741 33677113 726349595 386218809 367121643 925616044 394364571 975697117 311902489 465423298 699727691 606095874 746300048 318399722 351892320 533445129 176159007 571796650 557051048 908361224 946483892 766407312 973572344 206716712 171753199 161545243 113066108 390387903 589363120 187874824 780361125 75233743 202251029 947555438 415661695 153572124 964826874 310478954 153428800 884763836 624367605 156512898 782659407 368252445 613282674 837001904 168624608 40909237 813940485 937029310 810048129 332690679 993594664 923423770 222425381 633731330 615281742 817553571 229439713 96587383 329800807 122917551 399885484 65091838 168014941 305957520 60469945 142126183 708694462 513476246 730835295 911646109 625433560 52361930 45662778 62377052 318226391 11596968 917879142 664828594 675513434 584472902 20666811 584708580 529027158 382375803 326364293 856048659 268833865 695071214 745415445 917200682 844613833 904748693 192098189 963334828 26239224 588694311 865327379 362184857 764034307 207753979 795318886 79497103 766607630 100253934 809333799 287714910 423165680 320377755 482810591 855036794 833888417 968772211 122305390 271754222 661214777 817404628 503995344 877700888 154046938 648301753 160394881 87201407 976732559 990682873 105811503 419835149 655919919 496590014 685065970 799926459 998772602 106093277 704355966 804335004 982647574 117111275 300165503 666792644 165541667 147146206 301734312 821038634 313160569 234494916 353736272 448774585 207534060 105457772 23954666 996862182 397612195 312876026 379102368 67091108 66740301 130823485 927856485 170584297 199298437 566405156 362488452 125735239 283983442 256077391 978021218 651497813 688085344 858863248 591651551 773205707 933144594 429377081 288303450 144945428 78000709 519040068 204626629 155867050 992562277 615649111 428582770 747551113 632394626 492676473 672114565 920385330 632021166 128363835 675908403 928071164 498384100 509985840 158175346 738115278 768296612 122761260 102627011 818230858 390970520 315290379 131586554 729539412 278012844 629477743 961617380 839822697 365606749 799057020 76240074 563980208 321287222 698538093 196411384 975598798 826180199 44602681 494102274 358865800 934577747 177147663 76632783 654681080 806548373 5364425 542096499 92481169 35249104 881892047 314170233 88531478 535210795 201581054 79893967 275668599 715913626 929601786 582328963 833774082 333363321 896656355 171130075 446255014 818751432 896908585 312938446 240269835 951671454 75258885 518715588 622350583 381558905 236225739 193650271 647557234 847678913 901108741 726332001 90322014 503120079 396636504 418503151 640563357 933254946 85539209 219309157 681962150 116153591 799148231 13162838 182870356 933477106 380063813 102177752 524008312 543421549 272730732 230453652 171584988 539716799 406368064 38589541 849235578 129100086 644188248 461322090 187026833 713213759 804428871 39265035 853684864 143695464 263873403 123230118 895433418 734854490 295477425 685073508 285441774 670671789 228372661 198118406 559923473 964325093 878422652 726942365 839899008 298319388 688467473 105012513 161671961 392339714 914245678 510162418 364378060 283207564 693847196 970671990 528024838 844876525 814265199 299628663 771654865 462242444 567453240 505288197 316119653 592368562 489375497 517929937 825611146 301100372 756097440 779984832 697185930 120415352 677126435 653439364 636634282 739110473 76067494 614166810 862509433 324811343 51692467 21125884 781902990 189152807 222918626 703521280 177097310 598954784 777058693 760048087 51227564 853294715 11247583 385019610 432824514 71654405 803735676 890459160 956800634 608030351 572386591 724254191 54222627 260963740 142629850 367347557 506243937 374576386 108528219 906776789 828416397 302875861 170382934 708857734 177199332 203999255 161666315 7703226 683777763 867136245 659306893 410834471 500577438 100510091 422548724 708635428 177944651 483760543 113763419 645939479 568155685 674890632 878842182 173254340 146130802 368207237 197015996 965000987 514895283 743405231 671957414 769691346 759667148 34723965 717216588 398481406 288263805 372709628 839648969 998876176 597564757 160663476 681266603 716333732 498278167 879306016 922450724 465638025 961814627 605391836 766101002 939864177 176230757 165885103 435453205 432247383 331212480 100214692 434006822 606485925 829799068 89418990 231091038 146969963 893238067 918162729 212988338 65062204 819780427 801902017 195591055 1564745 489221268 383203388 155101772 941762910 221131742 958681360 333504948 758131280 925943825 159583060 861863785 149369224 715385298 698994019 840519077 853502531 739160167 947968843 875966522 79786052 411657555 252439352 607103831 644341756 28388985 523699332 992889721 789338814 599018087 194113514 568092529 796609841 228241815 34616185 906760199 75172631 575859761 170920787 547676163 119397844 817103512 172678852 666711851 932710230 18905968 462172221 437528597 486622669 462484536 979567260 152978768 542313391 947893618 29846437 998368393 256029098 336263049 629395504 979368683 855823505 768118972 613032584 744521938 533638175 80553759 416492681 21082047 991240779 775194400 76987306 60416361 443584137 733751439 617703856 692517617 137582539 328882150 263151109 79978064 191794355 360570086 8370801 543452743 583887299 96122246 971775009 611588312 546523192 674623782 252269937 696082698 187125256 675761141 259248687 442498749 201489285 266407341 45493438 461544594 643523645 592419463 136225314 315463752 859664737 790934237 653551769 349978710 852052016 144235075 478713007 891826362 726998695 482823048 771805295 467129777 835868718 751961575 12334431 253647737 206336296 42826736 339266654 248454094 529425504 878905257 4170940 556987840 359733742 160030399 6130471 849060918 555401156 731903775 39426035 402902968 169800798 457751086 124450634 412710657 688420486 163506625 782989932 14107584 136054598 492305557 118124676 936419929 862217992 654842420 686261148 22064421 230326134 887428836 558995214 902794150 651323879 94320125 390730346 363223534 977165409 916648021 122388221 167636684 365682691 266015537 805319311 704032181 380313860 985202254 30034931 577365900 505674559 784830396 88786847 568774886 399773720 78617015 888568965 125828392 414804022 153626420 6083363 736635598 915787957 33792784 841851678 784405778 209445983 508596908 496522856 949561843 567127252 526894329 500016381 103728276 761318556 114139664 342406811 732771674 416049604 564190008 804908343 245337911 680446274 968059819 551762367 139433036 211060999 90840464 611962840 287468207 468769152 47525098 169639901 133079376 312151276 266720369 461918566 532370006 595480855 975168398 684744297 320804273 548326545 800402395 783232230 849188243 897138463 295976107 163698522 719284133 88629396 952533693 997865516 235944225 564194885 798958398 705148944 302816767 679536695 402082145 60120209 765800062 782124138 356734894 832055172 574957811 298127073 471338939 59172323 304538091 102467665 989571840 345915026 925370659 230908677 878888890 499816273 904087088 532865263 904891295 44927322 863894707 451568640 667428436 552582790 673887552 614167779 119001102 927356238 37696820 546842718 640094554 22024005 233492350 770818392 37997402 164599635 821592354 78104656 722293207 443187258 34606217 167756088 858092870 215379342 411316746 545614527 201734285 246912327 542771975 753465507 389624719 387598725 746429603 666856780 754699945 753880547 88165701 617526260 934888250 353207533 862493611 623313198 866245404 78443618 183112703 239136444 220021249 244713108 743858653 166024943 180596871 796763392 497957610 242941366 478474687 673336356 46086723 925346832 416650462 390020587 676857364 146913862 659147891 315736537 850973040 311654294 975473776 888904943 245691584 341770611 59479516 366872221 847022648 15341996 668201981 152982704 484166164 938550910 598355182 279227314 495149320 950653695 689050735 302473624 278147931 88732262 986861457 277784448 984935802 226742185 8203903 547045610 207709475 837347544 797719435 738509092 633546505 51570429 662564372 344492426 8881554 656683778 96944323 799654882 233313474 47990189 719544234 917408525 936780025 711611228 66142979 394380304 532016195 889776403 922789904 899282850 562739479 779126294 462595274 677918059 675509440 269352172 589292695 82992157 789084779 522164225 600086816 431542955 521779742 272089030 268835327 100891308 541688947 310726680 897945904 330996921 539809090 905774615 211987929 787198335 475368660 896928176 337389153 607913234 312143665 445919198 368847087 306482343 253701888 883476372 638585250 78357642 511093120 158117502 712551919 359813943 24181800 359628061 675879637 233154615 641571408 394822211 750362685 146298033 272621272 577992786 356191278 752845933 188037060 948635943 12710787 662669838 975269828 706438955 616664285 25073013 319417085 25982822 636651496 810065233 491410740 400240228 372597220 687187858 870677862 897689577 524817551 263779912 1802741 487301566 513565142 485902835 319725206 495875394 525089158 638400092 593250641 629825400 583123963 772443024 621413336 128280936 440155841 506310419 838454962 218979000 897451786 156959129 452608882 692906789 209386156 871758018 905795356 184663312 821362215 965928334 607117269 792066277 479726387 23273407 12204794 847186317 252396013 997748059 805137194 414165575 923430186 813862268 548742472 557057010 311398329 889588616 658512682 732558450 957194958 408967936 557960994 851687682 189492052 68086721 538308888 61473987 905359624 920189085 308253201 91820721 134735693 683139059 516138830 275111358 157462470 311407868 977682082 826372154 71148250 855493328 304337783 284421672 475405220 433638907 130225609 826264307 713306096 284775928 234965162 462139793 499727071 59329819 530255291 494997517 5330355 807548991 449739815 597535317 482633954 200768992 616128787 323521207 399864872 100459054 618588926 933594993 70834649 857176735 999182824 647683710 446979045 731267718 143336272 795973075 279958005 702838162 730752041 862197886 499691167 724668898 464994738 457502845 52329253 488809501 787578143 547072148 195311303 478356807 868556732 537780875 134997753 955976208 527288136 561632551 567551551 403928587 501115999 494844316 165819146 677653005 844174089 644024646 675304070 15833924 304575989 155015233 287435029 22661986 235631476 130321658 505473156 188892075 617956074 336248816 107485825 751121701 284589400 981731853 37725091 399990541 974576304 762234773 56320219 206444091 491835509 349574987 682476083 677578080 855711548 581077908 656300705 601855160 575584767 534626754 225586915 565628108 35825464 199950585 438156372 352529794 751821003 902074725 990016650 763863913 598018539 669072171 35981580 322319098 47331314 812425900 245885172 972974267 775565828 259867515 660362090 316456135 96613111 640178288 780723935 963366324 724164656 128519614 690966277 360017677 22855893 33759296 849859837 495616666 590344450 739131889 414628081 958340386 621211943 341168881 632664981 737313829 640834073 15264936 690407922 402568820 52780082 760013627 450549290 733659369 305980423 486074128 799192659 769128199 233693471 624675885 335020758 412440067 395575798 755055023 424814266 955483352 48549125 917471299 724494311 291241686 523985118 542667748 655016654 817096414 282816765 820471646 123561792 981458528 699988895 542758269 254672949 167289308 880501074 797891043 377211134 686511667 852743594 251895489 338522651 143233126 226997679 867602037 254771533 916438633 810910492 351114419 958882562 13562437 413191114 148273705 535255254 258811678 784040400 814264402 315759257 321576217 328723658 129105042 334292022 702868222 779458681 466590259 28621900 132284252 779111275 218213464 509408478 660082980 382964598 509047042 59473037 565620406 566986854 868440452 178337253 29619939 681079790 494702922 566225314 448734669 237329496 473087697 77175813 679964624 46273625 786471111 901040767 879022512 616794878 615790813 659687617 893740594 467930835 958797843 913409819 283426313 512809352 338264337 583622137 517378098 964875903 749516706 76314523 657695950 750666112 438073931 681851184 473808724 531658619 535917078 616425872 517388122 168197124 212245093 359506896 344600129 885703381 507780467 556956904 835553445 719568127 770390484 935708480 151847296 901356547 441163606 276480950 691115838 521551826 59079407 493611458 103212274 684835495 556501407 732055978 804987475 436427931 441558944 508696953 360846170 897038044 637351468 424441026 530502719 553076277 102719837 825920288 953791402 80160510 776139952 796014956 498845902 711571168 444948274 857939851 455803316 60997469 338695617 605352978 673214427 923969201 413818060 672139609 696874847 320235516 252344935 477694868 527924221 141561756 68179105 868770848 923737471 959492790 372911855 151270687 196915451 919078145 581075963 613788870 888206203 354769871 393037241 828856115 131479674 383321426 629419715 926767809 903097944 195120020 827776268 254418704 921107912 917050283 264236356 526170201 206513344 480107777 488338032 538513160 650481373 469257368 90303552 835765130 986932524 486887991 122247718 169540773 700846261 182929222 257207883 724837375 430339133 408413191 41515399 259233787 584184598 951462740 697389982 874519474 247849754 162008524 455181547 256992976 406371901 978758113 987343916 727268403 455387188 952186581 445218326 427194706 811375949 231025259 687338625 467547575 866869165 40285326 647378027 479524764 556335651 592273100 274388984 47306626 754129801 535183486 824251569 419153877 968009406 128793484 912990460 1718159 388598794 514844024 280477967 515743897 681730689 12280307 964875841 3540932 906221326 811145302 522116748 363831213 16722728 331453984 433101158 764687405 486776496 251663265 531628380 928723019 461930243 182880921 909286483 275750301 298612223 564312706 734374323 394982579 108958895 632427973 373374077 480617541 406430132 641556375 408843968 141012892 888849085 782417578 175107342 874821867 121133876 667516822 293047381 369545240 797322601 776504771 847475379 863169550 511527759 532884885 639482321 774245410 986754663 656004904 32314488 737620126 19798582 717799552 259195845 20866279 403989176 967572210 432404899 680635004 711756246 667134191 856498380 689716193 699170473 255988163 356929202 509267266 900643155 283083803 107163748 404802667 231164216 307892349 598852065 25275455 785866592 220644953 644919156 200819503 831084065 551222444 427234218 286901882 520449159 18166868 678197798 873571212 587691544 174884091 502955733 570507068 106346062 450735230 448392864 451755133 771137395 81047493 612484336 38210424 652466524 523993118 262495738 863597250 711585251 83318173 362996392 424411306 619240477 275358306 498218829 150749360 337749219 727877022 484723822 629384377 271938609 55449198 168350153 552839685 459374805 578470932 608102290 247756336 407996133 250217438 919353719 62794572 997470687 814382354 893800963 22362024 178825903 719155215 298942592 997538205 467873821 609889688 145796353 964818174 13491755 54184699 886203520 830201245 61734044 839355751 819527232 33103088 121715267 868425411 717587761 407845414 599257784 133335870 658555717 296930399 723470957 240298298 282324763 533018925 803703449 73929247 321999558 782501708 729382331 765491542 385351692 421067062 253595126 726402468 877920446 346416025 893952224 310907525 359616458 182951174 306446408 758752434 165997334 374662855 458704543 525809073 503551169 116317156 225946401 737159819 644146096 231553173 306310815 818297577 833713710 342328097 422618119 286159967 663160984 904431 87065351 399576688 897924676 56616948 201444836 404149790 527424588 392078649 245375891 663842872 282025988 980416109 151263547 354776545 237927083 395055462 807044774 402183449 587209041 746519593 908534439 651469072 724260239 788063850 566194464 209765732 897160455 263873736 807755221 962507053 274950933 401822140 953841684 818120616 724519920 719219206 759226064 840739739 983428524 335647940 956660641 21391333 957688671 910925240 429072464 536629912 962086870 685517045 997888847 379583068 772728384 696241478 51597722 634301770 382394425 944475176 935952256 721753007 158934116 232153830 646231774 19980734 327793985 939158288 486671601 836802567 314302684 975513619 994446647 198579300 208478040 639914507 743390982 922942579 154447725 973167681 200965164 148261867 866357283 920569205 842363916 283164391 481036587 71260180 435227937 522210578 501354359 697552331 534395296 599124892 54196999 975943503 257463421 794472696 314822006 16080748 798946565 300623939 50499884 712662920 309869529 180993630 293544035 608723498 521584747 240055948 752736595 341782947 855678644 888340378 165471265 610472553 572575070 344123396 385613760 945251636 36416471 708112296 438757172 854828945 877144123 974542755 439111235 738479977 776244605 86403417 243181229 291012019 13304463 11095409 802936871 561212830 972919558 375217987 20851699 725592499 325694445 433419254 201434721 228726398 797534571 71858246 365004891 668234681 657215355 312622806 972752883 837565699 567438329 397387815 698223024 599876432 663590102 252524959 498250416 563351947 146527769 180509545 101908649 159509135 51523267 255389378 229434719 517233245 659757257 116144630 952960787 523685406 406045269 814691507 246917899 99382904 628314287 911284253 495631499 620040407 574763796 405649137 618657386 518685328 111892736 542233967 570714367 167207605 122036950 687164273 937231124 21402956 405514785 670287936 582876672 502044953 389374915 552699567 389806167 724567086 523534218 789067203 59275028 881550379 709924914 549219204 619642919 204021083 29998989 192750918 683750996 303259008 182579439 465920144 678623761 736540097 816599684 509739280 881656602 275303952 943849850 427375771 140721605 83824435 446406916 423480761 178399149 280908926 180637152 359046958 64435631 380051383 630383479 134832298 175464730 650158954 887700632 22182089 369575224 1648896 998123207 602603195 706295391 449824205 384565323 91085310 905419928 782362239 689887516 468223366 316748353 627559363 24343922 634850961 357690575 302595139 658072474 31943591 769352310 24126845 90658402 955637196 368843282 167525704 645234324 406207622 413172440 109419813 277556069 693958429 971438555 162143249 188049458 285784858 830736453 304912319 661140557 321939801 799267389 223301956 928175839 397681462 643565150 263536007 85351683 608224433 717148415 871294000 267667969 889314537 652943003 133581607 831270341 44395604 44748770 148019627 727083913 701173014 593462376 559157877 737112908 757697250 681575290 666626433 650969574 306593433 215703274 315453653 576722468 374776314 117919954 174152570 741341229 33640898 505307981 68397624 637294695 472216519 36641204 487213117 96431622 551941506 440321435 187002974 473530536 1364986 810576981 957533476 688316713 451541378 912094285 22813970 378896488 937606750 468720712 971582329 953439868 682824294 580041938 920619719 225430523 822757005 584604424 202453823 38258055 544539155 108586820 636696299 2875076 65421081 679421082 349797186 65197621 8443146 807646274 499723941 583579206 248966678 415110605 804224950 513630347 254021710 306750696 787992940 422941984 726877827 108858122 904579131 660027216 102682406 101558380 971637995 737395220 686381783 814190268 822185847 243523903 499691945 280909164 486250950 826077425 822419448 993224516 353576947 446269094 872687790 283463300 752550515 486739026 998780950 905309149 235885010 675402036 511853714 310553840 18054790 807412792 144023712 484424116 577375814 615427844 494888336 162131728 307083467 465416903 781896605 380364697 601309110 434856304 614570329 382044131 812736293 214836577 731817583 552385652 128662483 814033995 440807022 385564687 858423474 648699240 708777573 817164962 472167274 210800230 860209203 658292425 36951984 206580018 963486032 540676814 367960134 668055184 629978834 272999264 303900232 90981827 251177607 574313924 396879766 261254317 741156277 151532189 852560071 906996704 758264396 734704177 510643512 352564937 393268984 307404513 190180562 678290658 983938021 102966621 520106898 623427520 90492522 611526345 219100122 119082277 805316419 22578347 625988411 563798612 132469151 790006531 377935934 382484271 613037046 154825793 409904952 917090535 940000865 419915210 75053406 22859777 540579493 932259903 453598493 51094747 728853797 623764304 101890459 248274646 765531553 395887299 935526326 573391390 319442268 531503346 221486290 139490992 418242960 45484432 9468757 816886840 641740890 923363614 814694491 792388454 475309812 943437808 414793396 366790734 703828255 489552309 512194560 155143370 545760978 50037688 489955994 143479063 335970909 641908389 829952774 176093225 102860756 311155163 591283834 104349636 732582424 79895464 428474811 160178825 530955679 281549437 435098588 237447775 967275726 593337404 977065444 651095323 850656491 857544923 265979050 629793692 947953928 212022153 426236128 589976259 293291298 634613370 70141170 404024684 514135287 437786960 406234170 770992670 517689811 207072582 352616853 88989642 238584145 924339755 85983783 509020079 688173570 618538219 565053753 239433361 196211150 368304350 488004294 961575338 384047525 743915336 674223241 125062294 498131096 327065304 805684993 14785718 576020167 76640433 912281457 246351793 523093179 867604248 998863106 614632724 666846170 795069674 230290730 220648638 14259082 161198833 907275969 789447345 586234749 239737547 600352343 665879860 458745529 139460290 364702458 784930798 708826084 643152593 55954337 498672087 171239912 994440904 521721644 12735887 512499318 525464518 801997581 251992750 153171255 533600372 637490678 951395711 716316877 587642837 54203059 503777457 650459766 618332085 370448860 987726735 126247912 692760879 721144626 18460965 242366847 252575950 920685755 910293615 699175744 435154063 865450573 194334541 723459111 455463922 759471197 797335603 706302277 6955943 269833868 552857599 785076819 294350396 124266189 413610907 44334414 901626936 750012463 428852004 72696250 456951622 253660741 497337076 474357717 333723578 503002416 883729500 94490571 483915473 854948913 973382617 845211940 657459858 491567595 669934777 563660100 289417904 952130185 727137411 203713004 848116159 16434019 920740557 358552265 977970520 596086001 92313517 761880384 388019739 751388284 104244741 450084910 396714409 479716247 271008035 673300939 843477500 884123546 873941232 511829881 96697635 361344098 407039837 494427641 869915737 138751039 267660872 691268188 631050554 73957607 263145643 265075825 614678411 706809564 335225096 643532729 246060093 55524678 331734468 862003909 325194273 734566321 415679275 861622105 627272 657161084 557912922 18309434 327907609 299812504 551721908 44251346 700319336 336523036 612815313 958929013 422647254 736229135 333266767 201165881 493545281 261286026 803043371 295131686 306060662 641249397 902295352 90222773 686890371 931270362 791671044 587377088 109941124 173539198 744066942 248937307 783754204 829284760 165384198 26291849 678461289 14824043 115712340 234822347 674562650 414157160 476699680 158057077 606695222 5954323 594221756 310569373 173733091 791371722 816756667 505904146 941774746 816909729 775741858 434656057 977066596 830563420 618325552 263923554 6610374 969885235 197477321 801119077 365734991 382543529 507397621 109001561 163721958 339612177 710980125 618276460 963604592 488547814 431589976 403739563 869012340 89734332 218813890 676092973 998715843 402292462 295896150 433516339 847576417 795506661 8240545 81132906 256560129 903674477 220156830 728058727 754162731 116707493 722770899 690405875 156775634 327070009 508294347 11801247 851824783 646008695 653409592 458767332 520014367 850899678 961655864 507456357 158026337 299386950 984272095 164350288 560802473 731936640 413920760 808763469 456376035 298181700 12277572 194115686 630548072 193941281 919451683 769015058 494412057 231379791 660525446 38966299 876288080 677087817 486790125 636265943 511547237 847228180 918899654 73027576 40300903 481195390 686042026 274012078 488470621 989057979 956712270 86457008 922541039 466654798 674628275 150262972 827073936 834209838 492882498 247489858 814047651 525269260 232462113 917087833 960076170 362460834 323034019 163962899 966079050 125634391 567128540 262347792 720675397 329028001 191530794 867037792 681375379 748819887 443145552 596720569 55949277 279303112 929144851 863633607 204361722 919086468 841209723 734760628 682598715 338490555 355377330 542647282 639851393 679158911 308825121 583313747 250023086 309554987 335411036 561277544 503563852 368164988 470957679 448387719 186857413 937973095 691094328 113151593 342324120 255018096 866525783 403427375 935755362 874614276 333567043 965654738 278688986 644540790 666015890 69664109 837636044 325382861 605346771 898144456 291529444 903003450 170605463 835642999 737084917 512036228 518280648 446842485 40049787 39456328 415387974 404629221 107214730 810417904 202835146 711548406 752124752 933548019 71741074 136721232 317105144 292003574 24428756 833727753 671532070 849253433 27006757 474207296 871897368 234476311 113444846 180577916 801170641 942032071 432654092 146526881 311566254 32911736 574060309 403743750 633160158 105687045 347818078 75897190 475237353 148587655 692695517 7542842 499938156 457528001 499211350 394937758 485276819 722990959 386976855 180990907 559793826 866696444 307665558 601077978 1536844 17082369 188060404 445813959 133138114 135690975 330246639 647935860 912233972 511281936 543005094 800433924 437542833 615748522 175263328 182091400 743813349 743235346 775776924 837730533 599801488 938725394 849086691 923799204 952120943 702698227 182925642 982133264 114767341 255583603 350318885 842361145 881634843 72016162 44783057 490114901 679332824 23944405 890689489 15790220 772693730 418579644 501247837 254741759 842527196 547252400 512771889 974653818 628937674 187681830 962664487 328076138 470014920 843529142 282694478 780029900 370234957 533184839 507373253 129922345 708743807 992696385 742991013 860620371 241592415 96550467 495222018 688649689 943658824 628817458 661068250 153313241 729325636 32379114 764644500 666705721 956983668 974075857 263871602 528530387 223135350 601189468 39432694 914900253 491560211 623052509 578242907 115367016 932225637 533145910 120518791 287274475 240700497 56545723 550557784 370400112 438504439 119453624 26953462 278992948 947308279 911528239 61337195 198668984 846825023 350421589 804111255 203881356 390078711 714929769 608659346 495869426 243588699 284089151 483024220 793180919 158574562 620430626 394695645 393718046 9884926 758258923 704746646 306164109 624274806 366293035 121294864 245259345 480278368 239138989 668270114 524743755 44263896 74264544 544409905 411095648 855613827 935653452 559548049 698463602 713586089 399844353 244488332 261950801 744763142 429690338 422451085 290180153 936502482 321884132 51431213 191381350 141335939 266875246 640562619 998772901 452244629 25758151 130322784 672001648 625130333 461307070 720949996 354388698 915376696 112877560 564668803 239465865 834071845 324678873 787879926 834821858 250136646 825034132 336996822 844713538 498654262 67717992 509248613 498199769 495489557 889888520 59897613 824116596 902187662 187696638 33494976 977220384 224584108 254728689 97751396 855927127 410460720 246594428 190779939 80136466 213249683 91823523 447446391 272761328 440021786 129179454 523204624 637912279 962820282 623188091 707762005 143952890 139884156 489624598 103672733 266275449 710556949 560180164 339849551 38141581 820874625 580370551 158280254 673350045 6858808 220911557 845583754 869593305 11835920 659291707 160013533 408038912 384829342 296701038 100482968 81395877 992388283 125174138 262236025 349194669 806581155 843768674 147412880 665977838 430141862 586019304 583699523 617588366 104019709 454537282 213691741 965302129 431333154 627139517 468923434 808819914 378428114 486047099 142165862 876416633 179990177 869958791 465931513 274798779 555524063 675009163 584843925 911362743 846675886 493392007 844101453 871072787 729518563 440152934 925295624 282984307 703693606 798904619 3097979 714579373 878243031 204093765 127987897 131691073 37178281 382899713 779849343 241643507 727302802 473855015 760694137 842162935 689058153 984028836 979859005 114256982 536708618 707866886 478801850 577146897 974462377 539554870 177841555 556466840 443971964 368834952 192861356 86310036 988442396 443471208 723463459 782949996 678944864 164741101 379331016 968392388 560462636 287998355 639609823 105343019 891687349 892939946 165840488 501437107 878868683 556982493 593599424 273971781 924469301 964282568 699102175 454421216 314203055 404249346 139589765 605443038 897166401 206762061 427373142 92798002 101886879 119207860 799404798 724306945 651574215 228935112 384548825 684239280 69807915 82095453 207311169 222307826 751831433 309753694 108781514 61697875 421157841 243408496 747138711 446556437 992904599 638883969 505514381 915683632 185823706 88386050 185940922 891750859 476102816 125720117 98027794 408030924 442754733 298585632 524320005 198172655 520038998 442922375 718023947 249422523 855314566 291049842 384533978 264724776 120181219 472727369 809972288 751120435 954683947 810089467 403335439 259971366 600238617 359600864 438146996 121916716 267969394 659264479 434155603 181359653 55335009 111350737 574693471 233684762 250564055 133870750 185155618 217087978 754378983 53258354 670590813 463491196 103281589 97231556 900684998 585466492 858160714 604824509 665542187 821539893 495651616 966270706 112038595 801117785 543746550 836777381 924430700 258245621 623039118 888401151 166540559 743001396 459203133 875240831 283986668 743192018 126494854 797294898 646028677 750358594 877858180 284412910 485373402 887879619 643813517 362109030 793389221 957401185 46931139 441463673 908222198 218473738 394589342 256634951 131605020 995003160 880543537 581367690 178946321 247322497 496062992 498494078 808701599 373308532 323504157 647937617 898731435 665080476 877707452 925769671 889624785 202629382 421442588 477210552 490592004 244475823 338647094 911858463 595092891 921052480 863780612 671945359 401374853 540468541 324101941 275083962 967920464 470585777 892675169 368083158 858889296 860032891 515428782 628285135 86958239 259053822 73120621 462012709 73377843 997756369 498961878 878717603 510127256 796010033 904250683 337216237 940863815 771643939 685420570 497459957 822842693 663519863 636364665 896062897 276753570 671672207 231975676 45688689 197256021 781777477 470009073 662752511 482757065 7292155 607352369 893952594 163395411 495626569 670836259 494934537 90259487 713575204 193379364 649851298 93048655 630106119 803924934 897150332 147188155 151106738 941732229 973216351 307769967 873153693 785562438 765399710 831578390 353510167 937595467 302101166 79015580 529585362 564046567 528886735 639344716 118301184 113356212 899329207 286131971 13220148 616453759 93764939 195447236 323572743 86401504 371217774 792787292 168268533 428130975 519770574 442086422 188961495 296353004 276270597 904443336 638716139 489360652 582452037 405441907 798205161 283027879 906265125 276237394 395736028 511323867 348279427 246432045 385243900 421429625 80607221 77898613 581103421 74169832 838735122 549088852 380584432 635550168 373071384 792922725 179044394 756207928 162931673 721834411 428172030 564230142 800017664 210534671 912176222 974257182 608401068 671960020 433230531 921925201 593570911 799283399 446376401 403713665 555530621 315343003 250942769 539911347 562288329 736658558 683655134 38260702 577186373 353879900 830178154 31023609 233087145 856814093 202797431 37716567 27190828 169992877 209408732 272069861 911869968 471565625 849288957 975435831 913129785 400445558 51088711 99648968 270820281 925601027 173948413 928152516 284372935 126398395 497863245 960118454 210951806 497608290 20637009 91311604 622527563 102577997 93628814 43090756 249103731 259792618 617374708 530067662 300918641 788268266 680590993 738065510 339981013 925997649 248662076 542487690 400130925 149600751 25513935 896775264 213957140 736561770 79941447 378746947 571193284 164532825 350365303 14990573 146649386 840250662 96652074 625277949 792967502 960858100 796831754 569094366 56084666 328260815 898345848 899871881 521046481 944418992 119725038 622938340 16437360 779465724 777636381 364558729 254353386 317103241 818459876 767456938 498316968 145568635 205096710 987816683 114032642 749392111 115567933 78196610 864261414 106415590 59919718 920037231 873287612 849952078 402424784 882889339 926844005 658363920 722762198 844657529 503059143 722373211 390255801 825099625 341750664 445408025 522928880 504985623 311108637 575246023 189830776 356444527 188924425 937623828 308800750 484165402 7121912 168003699 196895908 290986949 614665221 476222009 279974279 524194312 325770817 787455709 168660448 713770884 524686713 555785168 480499605 752850153 347549843 93496770 35883034 737206017 149930229 146037613 326941210 516262036 742181801 704820983 280585563 725421676 298115264 579837824 553795283 962164808 834894477 117886048 569888129 2399002 11058208 475276266 4511774 685864517 980163291 50078394 64676167 340464578 937123283 92841001 699009485 478868138 59543430 165967166 994687013 194507249 731856470 703580646 872183410 853229822 762184243 361815984 399491998 285625960 937143015 331661381 126521851 910451455 825101820 908364931 901411372 480557047 475871934 322882513 248500894 152546291 84611211 368908494 40313132 888989216 855613598 10563878 299947116 763173901 111509102 35127438 726292488 603321808 849383638 694376012 613665284 512531397 680158568 617432944 183967032 910538097 625995548 688248724 577805847 880499941 919584350 662961320 845512488 121818256 473497649 475454286 512248586 494051663 583633476 346487491 377744262 612265412 891356363 384949254 698090298 513935229 276621578 632281590 319047180 763897849 508872975 404333135 438323629 426309174 358337773 994463875 459283673 978178903 570746745 10391983 372598063 956200060 538819996 159877601 737798608 24889219 999549827 691985948 369186415 368410323 931521290 397943570 606955513 378837634 681231873 81617706 468969479 879202500 130518481 782235467 61869367 760498125 373497343 675064107 35688542 374221141 489416919 652790985 853973387 513325099 400255887 784803554 62666684 200246175 724573823 530225929 315798634 131391238 336036186 527644764 510989491 226332794 998739097 794863763 534917622 935445666 780807118 551031228 222323826 340862854 912285754 94509426 853617645 881371971 188770437 504296395 933844565 117707488 722707868 642355330 691815329 398709632 253691734 70850575 857957514 735245587 767166762 123990242 69454381 810894630 150248976 908338529 708412102 781089887 279798623 949465248 968401941 302014131 692179224 775785683 149504811 82803424 186808836 537920184 459023636 924983519 940062679 374376539 21738976 846234383 882868024 363204760 941207807 578175336 79574253 957942719 793381837 850792393 495575613 219389358 990952914 790306927 527619053 253060006 747345495 529918846 373197373 106756715 267422231 438642931 648411006 181317136 291401087 334352552 255323461 802841801 70487637 756790500 59092805 467800543 688553301 703170719 150010020 114284948 445895370 380468984 112428472 746635693 859630817 954603576 424090655 2680627 410808614 330296422 956682985 664421537 570504145 878669428 832871145 368106996 11054044 502988332 942697059 771520984 954252203 867418003 914846368 977288888 25214836 89870761 719856 691858512 799606294 115519395 120783989 64736854 39174214 289370693 291640352 227899689 568296613 688584514 862552549 265153300 143715726 397995768 95957676 822413625 679178429 720504655 213340306 230884452 994502869 523646171 982413590 451209430 772701786 415074175 695660996 710438895 713807677 488773628 532916686 911886702 394299660 737484510 954963057 372800952 711897494 794336644 119164962 502922621 211918473 370555197 172194687 869842076 882717114 469430744 661679907 243957562 46640275 953453171 947687856 214852131 108054707 663633333 684562476 251251743 461172601 518530662 194879021 603470599 979730511 793066506 653081473 296485303 275592350 972598531 182235920 762519410 510814041 664956605 148091139 509240483 382834940 90630477 454806016 146570318 239724287 882750939 503814518 23197418 478825700 699456834 784669063 48150776 177032826 77298031 103940088 748471430 681240822 909564763 586908040 203769055 660519109 926890065 620816981 25898984 661451210 767813168 502213280 696289819 102810944 733732098 681033166 886023327 424242564 557158520 390904080 435055352 579129950 806842897 411584066 701901498 743592096 69489380 847938166 579114828 744501196 335038164 380073064 824773700 952550667 895190919 724473301 977062768 978502823 594751085 526656793 401080025 618340854 802114367 895728934 454378909 202010486 10757356 338633340 441767820 529868045 235118210 221659795 414735184 459638463 564018618 761340681 533815549 773610491 292544963 654136879 904166889 174241557 195559764 631868528 357956315 815412535 703194291 559187416 759276566 638611586 46617137 993064791 295269662 452994411 445030458 307074645 895811140 180293229 146709973 26485157 18575922 408623503 94467314 821539428 182290715 84833429 307097401 396099141 690572632 657286095 356796232 76621500 99487779 461016859 292312124 596276249 32240691 902279684 45374267 461560316 473310622 746214629 261966332 522265575 115644187 797299025 220192129 334961716 868490281 417579446 435350309 316481227 29978264 387471045 392038032 439012298 857784817 851433008 691851625 336918332 336432596 251333007 304289515 635281889 798214516 592443825 3542434 505108105 365764716 851377167 755826785 43551839 141424540 364553442 832429988 288889137 395243029 821799401 353456005 314390314 706057392 13262954 786086409 686815072 583589300 463104754 8846266 100639866 990874531 204948217 759482271 216850000 177334125 401799858 105310967 605142179 744613939 60642337 14342586 949742344 687343895 914156737 748928655 863293064 586468013 103878409 221971465 292858485 638627175 605118698 589095633 280690138 621194953 378573044 939953476 145798335 697929116 218493399 546063524 281685803 577812812 93793441 267532420 841898233 255926245 801435036 229339016 233101818 614183425 672110236 35790546 417941735 15416146 398092253 687425791 3835244 153052080 592380978 841989649 71380932 922798445 970962953 282687584 667329041 399791558 864063511 143437871 262411377 671382987 837237581 166183017 638283423 426129507 238420723 507329345 67482021 917052130 574624819 448606880 390533775 907193137 461271328 681442097 61904535 616935321 574935526 253415082 99672410 878962897 402150975 534451743 797034009 110121513 637911695 445765146 473049583 256948343 962437570 281641016 370256574 406628763 10464778 935618241 319255519 257924431 664108908 78377519 760237053 808337628 304400374 512473451 713063124 90228068 890224509 969995912 43116832 30090247 219445433 298575088 251348486 852416882 358796025 431264383 230060631 365029093 986519069 737177854 388206630 391003749 411510679 687289524 774429782 844395612 706317646 468628914 525939419 82338784 389278951 871986541 381024049 960230473 498713376 826054241 844675290 219342634 861320915 637746998 785190570 30487871 104302804 12046036 730638644 262161148 588665426 224577808 573669085 481334704 644066568 309725101 139927219 13763269 173890802 729122538 433226269 287962960 448893202 825195879 895566709 109264414 320659634 159818466 227887138 167710184 386853028 346912087 489470196 718546953 73064676 355779174 988407383 540147755 250712256 621919055 594900936 540247303 74447657 898428055 839635950 332228925 525256068 811538964 920800255 409008955 703234837 312154949 928537657 608014084 203795666 881398245 749000270 234039281 232836538 922553527 331385010 610964149 800213951 195630858 150933644 382280271 462865786 47663067 665957396 316593579 544486253 11295953 705359324 602882242 532246116 478188636 638606278 129157347 824599701 73177276 475254991 842985063 226233635 910638718 556872546 941197908 742303858 380242757 728048796 2367496 255060500 798655929 872075581 931995471 243530526 750875118 987511159 649343443 882344619 225048178 728907300 712595379 145622297 715315428 11586720 198512965 156300087 938869788 143270350 245086048 703750121 617541418 246064053 26567499 74218339 975810721 763442194 248624367 109211271 694317277 595591263 648060789 371012021 567269829 963888058 721335465 10589856 127616886 143314104 635950487 934147193 467312453 676870087 964557044 116158254 881139426 287408237 683260225 757125936 795526922 152147936 293791052 554746627 507911473 131694935 748813169 952812320 235697953 154793068 26069075 779832293 90835326 676659933 597290057 403463241 797239227 612600781 112625904 983316950 932782947 888290244 15340909 676741048 563130401 308046207 639046620 897961339 611955236 352245327 188114594 549132190 91193718 764106630 462675403 485763643 793547151 192099560 349536894 304877975 400093457 492045311 578429362 304144980 929291093 746121311 227296628 149736575 342308320 308970681 860146634 473622845 917537118 392804977 652592728 725459254 599035667 973722384 112508897 555204846 718242229 427304088 755432443 126124128 922943360 373816723 754542090 76209563 600663745 688071862 332762982 88537158 747261104 326245629 678935649 253244700 984120403 179526462 281013256 361345647 929992114 726566642 38194576 426837182 479047704 15055107 730167668 841867902 273332598 118857052 784791298 950397886 995959814 112935855 408840322 430050008 320903407 486882094 341310971 314116112 11985821 649224789 24982904 521124603 558654839 903675960 315441459 547171874 707186363 33444861 387896464 326550545 538303013 473287726 298019538 21383010 251782831 853937785 118065095 301862681 549912594 410511284 468350645 528172110 927460708 855671450 861800521 690201044 552140953 663327354 396693968 776029382 337087555 158744993 594574464 618947680 173156360 426043929 415995943 213619405 403637561 509549052 367172928 937820744 114459650 233819898 488114633 223788289 114219615 763042053 46191456 959492571 584717566 762582002 361705483 644214779 814796768 333386431 910219733 856351161 294638081 50443808 19845118 913889680 285475395 334922564 750500257 527373839 423496544 726743498 394905723 996646501 655665406 594743891 26205774 698079036 85468090 949809811 416881446 83583850 569854687 634958689 421583131 853515724 123960178 877609275 814773062 408495236 633098780 492087224 778559418 314736765 624290529 398041030 313038857 304027637 923014811 310940326 146039786 439539104 151066626 148189261 805766391 339632218 590312122 646100939 349399059 886764200 970535716 633488631 208277041 420441653 933394427 972112486 560016946 683163308 227867131 932179152 931307167 295111821 828518983 537642712 464389736 595916072 764595128 320184584 161315331 572414169 171271224 473813445 695707205 892745760 918556894 12238623 414753749 59726218 296208832 589499258 344311887 925999123 482076940 418412578 490082959 795907311 244404361 764205339 671955901 262564520 850757281 974940409 426299383 780907683 832891238 725906304 605052770 531827946 146356385 176091720 548569636 497153948 778529196 344458775 700623235 278684622 125539964 398601065 293485666 505594975 685127152 487626111 548818888 850094431 566143791 52144827 589143084 707953068 788091148 618166229 638629623 129796034 426376464 999931153 913887126 776091799 789365808 588801926 787865123 569740201 822330180 333034071 936514612 522366911 988291160 821948235 20327008 826341464 134919167 996977651 743586270 581757845 663446918 830473586 797985228 728273931 288721988 644973512 747114003 971476139 292715579 32461496 838837040 132541144 27644197 808059110 737955771 926770625 716810989 989843492 390866790 406916361 59733005 868202090 688074664 49958645 537902365 548691276 284338164 853189940 871483923 616759292 771628029 41024160 152350456 1456475 802966467 241774311 174851566 724724504 336099812 69831324 621056156 217740098 72209970 573712221 44503752 416724058 549403292 806814243 604481102 792306236 524452014 400961453 287061645 227331597 815217444 840969396 51710662 359624351 149187810 736945756 876439803 99386866 116580100 170883376 543622925 133199920 673172790 288759733 964867919 440070894 62681271 293395062 739425477 790291195 601708676 295271885 177421519 623413476 180686724 305584338 659718710 383432282 612043829 618999614 340633393 361229530 398010651 871972793 526629214 321261720 630869841 956257885 33580039 644335846 666448671 967076514 416080715 77412763 396029664 37543361 24742177 781210949 893183173 769497130 503660920 129916794 960615983 781791081 448880705 11069565 615056011 544610718 321039719 238574746 593495712 148625238 151887012 77302095 861829094 922064596 694114671 109511620 197246100 583924938 982625986 870188551 503669740 291488975 622159877 760614410 172952787 574576500 485521132 129884989 784639519 102461657 638837046 116313270 42445977 6332675 568027801 726913980 826177641 875427519 124710619 806612179 579114004 410383188 690279404 315585139 83389359 296809944 615320350 928061655 668095102 350443031 360381613 241707445 173348200 801460474 386528513 252754915 394670799 732265812 726610213 299215665 51056481 275585672 608031217 212342294 5670540 892101880 990635564 564238493 106183138 361087858 226813241 939679597 859041687 102743495 208241010 857194609 16376638 918860058 972815958 172677249 442526932 84435046 947674403 923706244 212535910 229443650 669817551 909797811 24602771 725565396 650128227 205688832 787889958 292351603 883027345 514899721 53004399 70689016 727802580 951921646 434826718 459126385 674605033 407805875 448532514 17136358 177514953 138157727 545423894 495761844 321419609 558834807 535803806 365746979 391154229 762073135 216948025 184381729 986053091 789140535 965064191 10104348 970366167 121090872 188525916 233272344 899259805 661224269 859548557 4312710 787162195 171053921 15488423 41683564 835797753 275239322 242377409 708786942 158558730 712567622 841499124 38566456 301805395 212795955 818706588 328721601 256693615 846551795 180455903 115196441 766111176 664796618 19504377 370028325 554430032 893292003 449979329 615953581 587601535 469511548 612830626 851939376 618029112 690008739 243275235 2008944 869151606 489338601 394914022 433366649 594894165 217389150 388379189 34739381 473293414 539470170 437245399 218656577 545273872 444866771 731537992 247085941 84302068 164232497 400140800 135676669 943175380 842501875 641566991 716844528 311610870 335799308 487293880 21882365 135878403 262342932 484453544 748017216 332104835 112733802 334898351 657350555 115778064 550071596 492356546 970137806 563486239 648040066 917199457 172682384 324961691 470503916 916558950 389840921 33565852 563632089 828679934 954061101 207835609 975717816 861259854 799692189 239363890 688858308 245273274 206687104 653867540 933814097 988057283 196284959 190680906 28751789 482454792 347323440 642983600 57723946 147384631 283706444 819292500 992662257 62931545 936291183 589403429 681601124 564128777 774599393 593407809 75700535 667954628 202920094 658951580 947976197 571747412 318043067 173463956 48855764 109268487 778200247 599695984 526974969 496027205 253183362 692387050 58049822 758755252 102914612 643912161 320714209 679423859 706268346 672187572 490187301 450084017 230506632 555477051 445012792 533621857 55474982 498307813 289201673 687746400 419232709 699180923 266683582 477888297 688111125 14142040 644461631 809370932 969419986 995330968 919442246 248028365 997925779 142825100 308298747 884245149 230330336 716422685 427252170 840975263 923369622 499736424 921260632 541338294 314167790 171791808 910723457 411746705 550702534 637187836 367523590 916363345 905656664 404842385 964482578 118512426 66601328 47265253 187719353 120881995 791096140 153098445 56910193 548379507 982893372 337518810 732142601 704532937 45708334 939295972 376524429 30481441 181765839 953847979 756106554 613257176 118965641 172903437 789557900 803554380 542742037 520895002 754679674 515951975 699231404 929123987 182141664 847192504 548109909 407554586 43105902 325458855 167358704 104972178 346107321 382540560 836981638 762436872 868795174 109179863 357679067 713503897 366552314 445635369 442441735 700375628 683444030 270806053 498556508 899648110 964503753 396636070 460423505 140522657 306502259 13649467 651874953 671119499 590596459 879340474 453159798 231311704 908879279 337942616 896065871 503964600 937080544 828129906 95144917 520313002 927123551 310548011 311976304 324615746 32307901 991841070 224814132 665911261 928159824 57326559 460352482 270016708 401206216 324254921 707010488 610160768 774655614 759772794 632444775 661915025 295013987 483384572 841233803 24605653 18176600 792830128 76837534 73975124 855081580 850920046 591513764 907635721 180256421 820425308 103333322 693836334 398764701 532761453 613161780 867114841 642588912 638391090 285664711 363034445 586236768 430255218 26057847 143497194 134030204 436927309 698777894 377830145 498785252 923503071 505667725 231713069 547583224 220922396 291428225 831770935 563217349 139058119 931847600 343821355 855379151 849542510 779159442 674405575 945570294 112131958 747262714 105597755 98383353 350467682 293844596 698404609 548873721 41789201 55546517 594998365 492531082 609905625 181870215 628270887 779426510 651303089 584112073 839585205 643561823 766630744 276228471 24487799 300629923 94303221 211407967 892104528 775512656 477843887 872785158 778058273 269645215 62494928 915926548 795119286 563068619 478960749 60842282 845870228 367283264 286644167 515696162 64946458 525007549 483632728 898076149 776119198 158574957 577916419 684809622 438590751 312159116 326601118 247414206 94720922 96788519 682644403 547151236 388339544 383159781 994911397 799017648 378848326 666413588 100602275 260435779 431354936 719720244 761972653 137723595 501942650 948710745 100927421 241292288 25567793 529195097 9512211 310946641 270199379 891169416 716957542 740481096 789498075 936033994 756054462 934980192 843433485 495943197 722098862 891996452 950657646 735368429 256506337 729557453 186064244 480954233 390683658 735556354 719981837 585033364 471007885 600988554 943614539 188102673 7529892 929289800 489184402 333984968 562298538 33649607 741240785 731502947 542558417 225720171 876940253 194648168 153757965 833387971 370229002 616353103 312468531 979557878 524879431 381127085 428548531 394313887 700826862 422036516 782333286 120317204 47375076 672147654 79355504 626744487 766409106 76564626 283869523 668568627 81798632 69480005 748589299 848605777 826276917 650086310 4128505 296105138 283434038 199686691 509746813 1756679 272294536 63122844 281855972 189010202 815657051 58557350 324339492 756567915 64086623 219267440 789561092 668398256 793888906 415326770 462532993 816924669 516960490 409762934 767624166 382677691 359217890 682464626 206629558 716530571 969600014 548893392 221949781 680013128 270275314 600017408 452200628 751583405 872278897 410969492 546881147 731147941 81034351 238660604 432007074 274626911 725150060 717183366 552381296 2402199 479151903 322453378 765131878 217869198 271514867 160986932 387945405 857738502 708955548 597856263 264961328 173158472 580930668 188168044 981433386 456360542 427195522 2469661 398453861 218966900 568079390 849827598 374628993 410250585 281951989 317549668 166198301 350373698 508871338 769617663 797850455 61361450 621836950 505019390 106231159 468748926 61095413 552640787 654906922 282475608 351742748 818770048 601018874 130786033 297893221 607983245 897511080 421221154 984480398 370727337 831529259 617028362 192225895 203230063 686582336 582626147 829766193 828388529 798702441 248895316 228058162 925271886 507420576 897933063 868788244 822584397 883869587 921250110 164191197 218254298 382465496 34806203 744143732 158234497 754663110 169096541 790601755 973665093 4033440 570405624 481722413 787940188 667542572 940725170 743096470 413041070 377422811 34280523 997010607 544608782 58048186 267027783 933014174 517590801 462347813 466050487 223098163 811040368 587039679 928636624 226832495 385496203 381060231 608031663 275295166 86864502 347703520 1346097 758736672 256073340 500978213 920956964 519432675 111303981 121348652 319186372 472607922 778532513 920733363 844465042 257886807 607980627 157182123 521434154 813627055 756429266 665489007 781671630 190685594 956404228 886349813 524625389 679318553 288506479 121790117 70332904 700426885 865495401 243203500 784197694 217590932 336712502 157392598 601021021 133485479 407397233 725734187 480273880 24040305 375864795 147858229 813737796 936356277 230079996 410820758 320754864 37225004 94259684 859672965 332629363 424731202 826676547 434797852 576219407 449360954 942950100 818133534 11373613 990026937 679236000 585077668 561220749 966262997 437765092 314639780 514030705 883534484 432265998 342894901 723911405 733225715 522998904 180846571 351200147 139063096 852337531 90412780 699322411 743635288 565099812 74087089 155706452 319910039 825594272 114181006 208585763 81443103 407401042 532005864 220739541 558735524 148104617 405715240 304221981 938573883 336520381 441465 484074146 315064548 631249903 88106572 512983506 906368354 850019970 930571819 571410626 912841796 531544103 827517687 906324760 714200522 317204220 245113953 858661153 531500585 72332080 76332320 613528695 942686790 394597376 244832184 10704038 417631973 378528977 276712824 320652420 279667827 468668711 853889418 536716595 841721075 696634558 619222393 565843707 779292588 92131026 293504856 340376448 455350465 508088205 699663616 60873613 607009894 323015292 421949531 451627557 38345849 118238429 684902000 626313480 565307566 932746275 399928934 275558126 63993609 999913265 40187582 493423669 985806472 916587253 762953524 330295480 289824584 619712848 130363275 65083071 133734769 897363542 614758540 499288079 495326044 934340338 675571472 202146456 1877355 655041986 299685598 303774881 922294656 759724902 330162023 133631046 278878075 52196983 172203343 564630746 56787702 982792201 730608859 233834175 851233728 820045432 175253366 285564392 546600622 567076263 784132679 546462504 969130541 300976714 751359141 98205277 263440539 886633055 396654674 479452057 723532763 716437968 818588828 237136283 376219033 62915911 257955040 218741946 71032375 498055874 760895698 194896913 987871628 428841038 107641296 299639830 743252191 144737728 851366151 669161345 283595496 427489392 308406876 885980440 11280178 274301185 588538901 81172641 557705269 885932716 326414625 591551583 26469294 364115285 214286860 64384329 323350153 127908261 630390566 978592063 303897513 725565356 902779790 213017294 168273409 613333651 435754701 309190253 208333893 375395145 103958617 23222374 630633762 765837199 537286049 426554726 378789039 13909903 875173459 114618469 568328068 957990001 882661407 406618722 428100457 611414711 970021815 857120841 860509562 848510920 985377563 717836070 802819464 593989159 379287194 896315683 610089189 87423072 602538021 808365874 261394892 787514348 231337673 727597492 355566908 851139883 585842437 781074990 500402591 49974015 776701174 425469623 962552231 814284617 239450921 797829232 767305792 96608456 323693492 179294365 896457295 281454364 364803947 709248843 698271425 247430477 550714218 66059134 399012487 308113117 586572580 598945882 476275560 268444312 703014687 52499208 750881590 668842376 627978175 324940068 939825824 487755078 613372413 915254352 127931272 177217040 957069791 722731183 388104329 977302975 869182030 768782964 933116871 441585682 16313176 111251997 612864210 860507671 496440093 815889428 57748195 893711223 498306669 895711306 282737594 470813381 82019453 683808093 862615664 780741858 625131286 124741644 425002234 244174852 945521495 293254257 277888624 469936245 967314285 218197562 966946324 731996892 341020633 831586127 805353135 755392236 809699405 620809554 194750974 912517647 243280887 921735595 824236823 208575321 606951953 521776553 873757752 379743941 720942869 154237116 524136397 994127262 667483620 496240241 224720991 441388832 492946032 383364347 377542459 942210208 440673842 58584528 25879676 702349349 181622675 781418474 332056968 867630968 112368256 691130925 830704388 602566627 582739365 743388566 961976305 381260658 554481598 17806841 928052333 266513939 750440028 533678036 237821857 180372045 75495226 400123438 441042040 353415241 616605586 919235706 948040631 787869355 344990698 98702040 551322290 828121425 926577072 894855448 385154482 296248998 494345976 6369408 399355336 593565936 157022145 183928981 906757063 632823907 728057441 293074633 495498723 593579642 427112600 802892015 28261371 360974871 17661965 992617983 880730778 93059865 722627103 280182592 935920131 460797791 258979147 349005206 907240263 988502445 7374591 933793991 774868109 876540610 800277157 102721278 942145728 403157277 49614466 791529342 47877193 719482883 139054015 787528125 511354614 273130886 999913560 863507678 612755277 277627899 8521340 621096354 803460729 947459517 490523592 59077148 869647879 658920784 626916914 468509320 186621738 554466799 212839562 640507864 163493878 142496943 930437470 793585631 534469043 407619186 400044558 714975497 301518065 134844433 650198574 719455137 686580526 540864981 323145183 748063722 357833305 694212388 945134138 274526116 56968067 190634123 322833103 388628171 800677904 741762449 824697730 675064143 118861117 607522443 933620423 940876321 783212913 638391628 103895452 904613789 833008655 125825284 820103565 779561278 246241011 789282556 661908037 481189463 228400301 813761517 695182284 75563896 391369449 106266209 997657049 238544515 459465605 232167698 734411901 143605132 36383117 279148483 595166140 650012225 400547509 494718112 525519632 94469060 748797144 552884149 256996330 877974570 247256911 849828102 224351555 128202539 120442785 619342964 15860476 188962684 894919200 931673179 374979536 333058442 343144835 602665633 122520654 628418254 880684488 652966677 416455249 747868777 884004009 906763419 917939606 235671959 625441229 332483445 935162955 89733175 671094923 284158442 944532404 680779552 120049234 425769669 988361986 704092388 568743654 552410369 507012845 239267774 402144127 486070008 381645553 158280500 437868409 512929645 606315797 220188884 95356173 890853402 820033503 501800827 804105225 493808836 745888123 480248032 85207148 853873892 434192402 762532804 209161050 260250198 211749295 301781233 747715788 777304140 802149286 901386842 692478503 809139834 839893283 968567161 560627373 422360605 609546823 870283727 843635018 119125233 850264480 61177123 366358219 212030222 391109791 261532899 749571586 185810393 106227752 317470324 943865698 32861469 686807071 401241234 925000497 696233288 970511862 247233640 909280748 13484660 563113968 211141302 50432511 762367165 519397414 853206519 186578582 603655415 86870943 979725096 954717320 744992283 975549789 300704460 433788411 325692955 833707887 194312704 439028763 247793577 797639419 336331511 539641369 341568831 947593415 700554341 599680497 95373374 802221834 230672766 561318497 904524733 436019302 723712478 379118821 507454260 805503198 898835467 589132464 868435912 557204108 551157752 37880933 166367533 313670849 666463788 820227976 149610052 752674024 522014488 209665526 526994305 302108320 242999868 150738285 935316444 721770001 229479061 862988665 887453243 119513392 811857478 248825097 558125804 228557651 600972465 693560767 133111456 889268643 612686526 645406261 86400450 432113402 511753095 611301124 741585778 938492403 419701207 583845246 968847694 792240781 361478948 785795305 251939235 76874690 938341283 138796490 607363709 686203591 352407725 698871009 48872974 322863789 19348267 947218793 363946767 200214573 3694648 41859140 129554987 90299972 216965191 80011117 331497225 164010198 810381223 404298179 909900358 792420068 629142868 69405710 119156718 786584439 647086077 171892931 491245000 842909201 360439579 246135831 631389264 201636263 222227551 719613494 549009834 436927166 226679252 847151196 803593320 602314636 315953162 784802811 926492869 610317631 837142264 804469868 447257410 983407348 408309580 42871289 490634526 25080432 160280109 943731329 2973456 816918319 183843758 971794245 256220360 381988798 487272082 644620591 102117607 783692193 215636059 897608843 462400545 357485610 308266059 484861251 104880014 822083022 3497821 5677667 694567003 99455435 242428015 763129978 351490823 697745153 645622226 134033244 589976717 150348084 193224488 859137302 875841617 854344099 597566529 984038333 459394796 439988935 975653381 730516262 940299179 179362323 99046126 964775395 889458474 599792265 635705277 338209875 77185523 344405298 29958310 694815898 457828979 738373965 4805337 602094846 439461040 463763716 31594998 328238041 600660890 40001169 741498726 898212897 911613825 73553776 882050708 365416520 748846333 567116479 656002975 76053222 482604389 933365614 403129820 654522735 917774224 822179000 78147324 259411429 584699140 631634763 49722514 925884985 173913001 966957231 468731181 761660525 721620011 962678065 546251508 315307250 398212998 371827852 493854855 772671123 514103291 919368462 616179331 62594800 560916138 368552995 423805340 435912325 906962378 376598499 22081461 692179397 525624907 945603397 500436512 560232600 697107779 723393614 880718532 843639266 232219203 153968954 335552972 982465210 658832537 39983366 670338642 203847518 130013316 973949539 680565098 553841096 742458114 579685103 795057321 819063436 658272523 437424635 146445598 576297022 639540173 65796470 211330824 846789179 568177416 186474933 658523209 375878469 24378393 944037894 68082723 783047463 40314750 727209454 900078164 384227693 589003909 617075481 127364317 261649848 516564374 367255485 513419792 500970438 922746758 309754998 301508529 594588699 630879734 44801098 813081583 291334151 361652350 658623154 978225451 209606366 643117314 64359446 385500458 414790499 449093371 445134905 702740982 259173820 459685100 927692020 265279210 692689836 272995524 300139715 394308840 327200187 793299494 995581691 537763862 777950872 508145580 366062971 29104695 937488742 804079312 213131528 116956477 653208921 798584617 207445648 597561372 210186897 983113028 451383529 918412222 539809600 678969454 348399771 244784931 997455238 58068606 754667604 650920582 682983481 865083624 671636029 838039380 853858116 518215955 925402292 422189445 114978370 215621828 767702873 372541664 356706033 908372494 287106854 538581786 578069237 835880438 982543377 479075018 718863440 286963537 89567612 552002450 273436999 925126115 530416645 727973423 891228156 178851499 993851394 144338202 711701697 551194113 13738065 270519070 223763489 757795437 322191269 30739673 372167876 762797311 742787963 554271526 699185875 791604761 468389357 970361521 715828262 643963188 51740178 162860668 168819883 242211477 598377363 756947089 509096197 748307008 978276722 710898826 977947189 222325112 845309231 755533392 314002953 836638899 158454440 703632213 632028314 898912395 263624223 744451430 340210123 992096926 403121394 105915294 949082148 2736073 460324479 985062496 988515131 891688340 144483318 416201081 3380909 407501401 651863789 144276470 144622325 352866280 153714730 85985272 517339440 824842709 178589726 823503182 522713991 71228869 65721102 21980078 665305645 29650619 427958516 495487457 920545084 870368297 684336163 826982870 454835715 959566118 749804556 316692406 107211518 734948501 834951664 165717508 281602076 658991850 925971997 843306637 671199649 186680080 313030391 639150199 208530315 629435686 908980777 360885404 525338521 772208530 449597457 379398951 191738403 500489873 903127514 321349704 41716933 19956110 330704482 35109645 877395598 994897035 585299780 444053574 501568073 172196386 818439312 816630309 728949513 826109855 193251698 15857036 869614180 653821440 75073870 715256535 74766760 78489298 911493094 857615236 494908806 312792519 934776928 679276381 997381135 250229278 708221394 73302680 43011844 583540298 926053148 168296077 654803589 118822638 312542267 260837049 121061535 86549301 730644808 756257343 222401888 649130767 584917034 918209148 290427981 833111174 208374685 826820655 544916261 565121333 436121690 90015887 334542907 215579386 643378538 468266180 583710711 242257315 912011382 340539124 451586728 638268344 900302873 898273023 652479084 535121497 465817183 970432731 784276071 809686665 957637753 785194443 716398347 440479889 36483120 645459921 763246438 123252905 167465427 318343813 536602869 673928638 883499169 335104957 46384993 533699943 450108214 96368552 779322193 990981400 909817055 866445905 499853713 939761338 667889027 906532150 39202687 448039355 291133584 67460692 544612929 75329403 936778331 400433835 640438202 927051937 74169653 516436365 913648664 247195913 219883231 662281530 299626757 370621741 767893098 481762454 224507550 135388258 966016942 297399051 79040751 647176946 992837086 128778959 631979947 801210555 138226756 733094377 246544108 134526051 857812645 424927715 748420609 319849322 659446472 188919026 868260486 455040249 590839651 46364268 525289089 539832936 458064991 585569026 125292430 329496962 947782386 990796845 269340504 781690133 965014602 285427088 127892851 761777111 246028163 868945704 141174850 666856769 664121940 991742583 105927181 523824986 457241755 119613528 705018338 845341360 265550539 846038464 617963800 150662262 333320064 632965702 290909668 79162716 440066946 101600107 385864876 715406183 898305903 571374071 107136057 580850746 831344621 142683957 924591111 191755595 582273421 998863174 633856648 83139695 926238102 376286633 815981254 943371505 351593320 89735098 524250589 897502117 314085722 504405225 958135692 715521287 436062535 332524531 900206471 476324857 53076605 152681733 990268614 657448811 320798098 405016574 394069074 809289376 670417379 103585382 306893031 440582976 674833390 678364446 188228836 529994891 308615675 199753084 398710724 228496493 184107228 396209994 789620162 713387980 625223166 452054280 330378064 64024056 227830978 271985494 836614506 131598735 550338767 495054680 494600697 695258759 935510523 645032016 948856555 90481028 260402821 557088264 308949483 728780336 808014286 523346053 477473516 373362195 216518828 907633086 341369020 217234529 655690302 823551816 976252137 731172493 77921769 3588898 638369030 62920759 114718995 329655438 587843192 888997973 72962020 830838557 997958977 40513183 481078074 39593072 202157522 889342518 970456189 716421316 711594554 437564182 30495981 849457717 227388431 472324410 469684880 767417592 49542313 743063917 523423902 911530945 993617851 965087800 537707335 699946547 897989400 520376729 606585414 720338982 992913961 242863123 352127779 664847248 404538600 256854791 824105054 396274185 281589126 543930183 485279069 231143430 217185645 330360150 30325030 263757326 401106989 155509350 185535149 121096406 737834935 504532476 989825607 166032104 923569906 553502194 918941187 207119253 751437091 205189711 910172841 44881565 55110331 944420732 490579797 191924252 899760014 505100535 248361957 660815250 128460317 284079615 188879107 361965523 991709113 181568145 657525601 187344804 872649776 604281354 84383146 933506984 983719595 123872625 194520098 14697280 923299485 42546926 835796550 284213787 645753014 486132815 286945883 661242138 783796085 524183541 217905862 696192137 577444468 240644807 630181505 432984230 179748845 457526448 47630565 555811395 713212419 608360424 93498061 206681440 624399197 434702911 956923352 146898075 26078148 357327550 921126077 745404944 676463908 28757063 784122505 377298260 762627787 8883723 990066211 104715555 215190751 179323674 474008655 585583992 8412263 633961258 227130531 773581853 615582338 534060772 291714516 240933497 77607441 911286730 861194654 657624249 277190759 261516567 343175504 516746900 222012643 540529112 757075331 709752508 217783834 279234467 793816280 12575540 303482402 740774 689514054 116728517 71470896 41236386 400035855 883166462 539406956 966722573 424229944 139390620 603426271 815446208 992126660 431136698 905186646 420649771 245019373 156170046 159152193 429445269 735574128 506727540 710112274 421444607 874369021 464047554 780818015 3003343 830933455 193057758 833440967 546181023 404673982 663624450 902326337 613801789 303043552 949736816 800031479 249423630 610121481 699468650 523939111 611089248 138275617 378930230 873567024 165439392 426479800 249416510 626085670 846612713 659803632 414214082 800039807 634845751 666259404 998644522 51971745 561515921 524922094 570581026 874499126 816855558 904789681 999803047 833005397 777960845 689135026 535761480 832023517 704435605 259580514 420763462 661186326 500657184 706040159 878321898 393808077 564863884 550006408 515942156 156386600 161793141 723196665 192645668 142752413 114622309 433626899 710055206 197408141 516742005 405153406 298296617 185315163 730583430 639730268 855575611 452525513 337525803 152104536 938802126 981994457 960893896 67728273 558277943 83470333 435756108 388912089 861960785 85486350 81823529 16365612 932182093 57575286 623674612 178402884 253252467 966649307 849193232 477055645 958140782 260760256 503783752 894480371 115662294 584261533 696809141 310466252 779639761 286055117 665024544 60261503 278670071 417749055 810767715 320218476 318329968 236215409 551470661 426123517 690384517 968153169 735629754 499277798 619806051 145843200 878759048 708259384 232971936 803491952 129019523 395859728 772194919 511079511 967408401 630636076 989148286 898217823 796126663 227839510 617872831 776759920 934889311 137563800 647505023 67149568 646327144 377548599 985240320 726062071 3214319 316754622 66080043 531881249 854500861 819688786 477088612 218365823 608487849 512595405 717540878 514177230 48439510 414324521 335623774 407081111 569917640 428057422 517312267 364177239 194729347 735000846 811032003 1340136 874342107 585232819 493859843 628656876 925004046 425831738 298212394 161711933 271471670 751728781 64062717 657492507 489913439 716884876 654375208 751136969 641473607 681450223 38622414 230415438 102101867 713333047 102642914 624327606 128841925 255622915 565982542 955402769 426553424 792798554 145668948 658432147 244245874 527099476 84614578 964281986 505300446 500726738 294029000 749324421 145265671 854541765 343562492 724324958 773288999 507090961 764723387 890207260 772635446 299859345 884556787 580569989 720515405 865865676 136931701 514269947 71962879 923625408 820894688 976858550 48090288 67326352 731183289 387101028 301521901 54236102 5062616 163408053 968132620 544668236 250635270 705637257 124114438 467162880 109086713 598009489 984111978 77249872 200977033 312266961 695492119 50547928 879186177 157341219 437538314 390200526 520050178 550452717 953264980 546007608 458912521 821801625 621688101 163949199 345259829 554300517 620129024 907264342 37643414 502614772 318318737 307358076 319024557 593015080 88345106 853926264 92463629 505630479 636100031 545354225 8559202 701297156 115144793 797979532 373617237 262450441 707221900 2371222 749256906 713201036 805020509 603982098 136570080 746388175 153107273 691833852 189550597 607164848 408845695 256928269 930259168 527605106 602273040 557402858 687933350 839835455 779628727 305275319 445256038 286922689 920985482 508083267 882396178 834716334 896198570 15379295 167772564 681989251 400550145 605807366 478487598 866242781 45171211 579435663 836170491 239769642 880591425 157754219 998724930 58782725 250897102 928590514 503133086 433291578 521444889 359247518 842360526 20607065 135913899 64838036 80821803 171783979 789489477 800153769 104603214 219728482 791024278 738224496 381075833 595663897 320240596 248519787 744213734 223397092 726131469 853300579 17538043 375240725 976550064 711204596 402588942 847597412 901643721 933911368 966143420 535204458 516081861 298606282 182675172 707515395 232988216 350732611 494748558 324946366 147875585 468988632 521816910 998812270 593597988 70711045 836446669 504540338 40105476 114881293 456358288 546159879 819236529 988814924 591835982 755851510 832704152 777474162 675446878 333945644 719382089 148860458 137651240 408064990 101450776 895354072 854244798 207501254 722566291 789180544 337167830 908745699 400737200 401414468 392167755 468657192 763262849 122372238 418398157 519750824 245544575 499322015 544818153 191487844 129193949 703874487 435117456 656263853 454742601 903975453 142904459 194864466 205488846 945466049 49255256 29020730 892069193 548196882 45898093 427971605 225023647 400414452 500242322 556954025 304306272 835371206 721017922 840037079 621595306 74398543 863002179 963350527 885335617 338186174 51108703 545941771 460498297 608620954 662908462 496522396 458525560 656135747 864711634 344763734 819565556 430283200 657833131 709944966 982318340 935657740 105085645 681826674 867326 705605296 245904898 8724246 350503095 239210692 356966762 606829546 831167931 366025602 508663062 438043320 101578350 574499460 463682438 119932494 778772099 320505325 510199548 177397993 203635518 475813875 120509874 979929089 691193109 451928865 15293770 908395695 929544931 521810907 697201821 154778219 777695878 719759034 434325849 2303793 603572734 763695237 522891812 868859128 710589434 359118644 347622948 750854585 121498276 977112355 642261998 77382787 636920518 870294871 44543545 943230322 461106597 294294653 406622433 857406595 912593651 792156305 845495459 594435721 692419950 755684193 258222366 828365255 113974463 943261931 48711508 111967228 25427727 475753055 296881076 726797706 61614849 819565454 657356872 542572012 139242745 480621315 341510317 657608189 58112344 387250748 154705845 89883247 552189570 356291546 596138989 878562231 209292625 906299596 422067285 599723243 390047427 917173459 446768486 502215351 547154478 930903265 682019948 923160861 324801844 505879401 786537257 920709516 833891412 837313913 213816726 122744420 264339342 141975181 856340727 52830018 209082114 561461454 891763643 319365113 54367970 304005735 898100362 69929272 340370413 423878054 227204232 862003503 378142303 753140796 742035940 467247823 655259945 343157157 973157827 8857972 920694910 390750557 684488255 101583296 642761874 676276704 733395854 663765266 519940935 532086870 926854899 348521839 745497120 189915978 617674180 290927990 796894828 162300329 704371246 568638413 98866492 131849494 486709509 284656369 154329400 828132528 685033974 582480574 355411739 391136478 577041601 377492900 685538229 674071036 893466004 591115660 117633057 397880596 603744926 757807164 376990401 324474351 127867276 570224896 874739817 721921828 980791765 209151838 442001908 847538308 765678668 374158906 808219649 16771363 624963150 344688918 895314753 84186512 147707274 160770823 352847211 245625328 732961990 282417332 955191058 923713344 984228625 116285160 743655284 203025062 589542584 330866454 582625079 569478866 533945853 621544849 629039263 815878914 432976398 737364249 144156145 541875739 940884464 645621614 440674654 909366811 555974079 902500099 92798378 977446165 296265499 54899812 80748062 119723181 186597596 807673136 323423306 604433600 456428836 245906777 455526776 72639201 852061235 647297813 527575192 965147362 70149873 427236256 291494866 622937420 822240347 269068094 894180735 652320127 414280757 810335931 884859195 795584352 48126572 193857119 240841651 356633741 102745829 308006309 38428886 990950416 778982217 228720272 171409752 692132500 777884455 128828957 510919369 312538696 426838479 846682719 156737481 771319405 208451072 971043943 304575680 38986485 960429200 122068254 934384538 529495120 365665059 256730194 78435143 152091970 679710702 384966201 523041433 722268750 990931283 688579123 349221237 276882532 361483136 993684157 298714963 885006798 242821266 553006866 394924199 771350296 658679470 596110366 830204047 27584865 52921720 171672134 878178707 178698444 347249089 129801956 899034809 745561933 357609256 931324235 825986334 587897796 723752613 512773225 726662706 687810988 4685139 673549123 741875910 737124266 697219648 327555267 149981816 804092606 113158753 48891251 237354927 252924081 331888317 40772414 256902616 110584739 938202490 534154027 306516041 388119567 610538694 600237424 10585018 54662006 781509061 597929103 508799851 849450133 726498034 744589943 14533668 82359647 445562416 316219981 383370681 965845209 151142639 99133385 763176502 780262708 834306334 350894793 155468318 972352434 900662366 214150007 512577938 452708250 333979725 490100304 112673095 370608108 458203849 920161581 526016186 950808046 338263825 981733465 362119290 592140487 721132480 514613705 321570353 30133618 571398901 248934123 799734522 779050429 459348632 512306880 401635970 448270177 485954463 344155923 327280765 254075611 847304469 230002222 433229388 198043169 186381826 551891504 377526319 293689017 145433399 591961825 962372156 732836100 716565941 203649808 712764743 830403170 415655623 824019907 598309870 771045663 528750310 697076385 936507924 13230958 140776007 205942500 670784579 785555087 106551504 683603111 644290480 649956060 420679507 641973176 527046033 788831027 71575983 608589865 78284234 259460080 82968541 319220524 630112387 568979687 4175718 277414669 593567456 849416745 716382769 733119437 29696143 727471229 664294045 496961677 68183045 253900320 262044045 223451183 484837406 516673609 32951999 965698109 272831763 4069697 898219666 23159861 782578689 603098065 898476105 318238561 142249267 442067609 522156746 777228436 864473369 576710526 88136909 656812874 228136235 861313772 75359569 691901821 491212620 490089614 813952585 429097584 893636216 742579748 289496823 121348957 315711796 90446766 659084647 496051509 434941702 486377688 48543050 864429197 871582188 646520429 469994696 289774104 949444180 967238062 513574258 8714705 146850313 473572873 344189804 38895549 283231947 362296990 952099430 774881149 612083011 294716331 857361518 915574280 234430396 75741298 477550297 674068078 739150955 376237534 349198137 771108679 120804570 467078416 365879709 801793557 290157769 67848339 236694811 850913011 175492219 242517421 8635716 841884075 335456742 797923635 750176467 476959262 66067363 92645185 163110333 263242197 243339208 904293773 760141733 292438296 9220106 14556409 15704077 631475012 566578999 378912449 390298398 472863144 403773336 476250393 476750583 563422049 647397881 397107322 15661809 582036069 372395917 278127395 815146792 334166168 334020630 977218140 709889214 367467511 168980118 909680460 378601927 42041547 648731567 951428040 150023872 930295711 926825741 44153831 603553819 306475911 432467700 922276406 204891345 705179422 883017651 430536517 809202131 424490561 870858384 877930103 314269454 417560156 521625728 566448737 488439015 997804539 494773581 249802126 198059663 6106023 503540057 449196651 549907767 222601690 336798005 510337821 556019414 34700240 170073769 603638648 677930673 885330237 679969264 844637892 315335233 835756613 705004078 451346489 220437508 252835353 821822781 622005148 205450004 407284738 193359669 609260584 642270846 529693306 958184250 750628641 634944151 726766211 240442246 393448278 599062066 567096154 122131021 949138846 640532614 432344749 178328489 749602653 954022087 75800495 503870779 520070330 190257783 156502903 908263839 644074379 206055031 813428955 838629937 365159053 514609959 627624097 382569828 567142979 347279911 458303660 958019139 305523455 725717314 35124539 624668804 273470362 606350623 770979543 132063900 253252355 879267434 907971222 69507795 719262026 702588832 481955044 821077342 123162484 731384396 900853508 339424162 617187284 861731834 449036855 433316830 448001293 314230710 32289166 185239209 819004685 92153496 727598325 299172803 605831452 646670942 140945437 762270364 895562343 994670208 391207503 580302724 88349623 934188474 582379487 677667249 728541610 205057444 958335614 315510667 106921491 126755552 885261958 745608767 2848821 372702517 892504580 780079441 253654772 811008279 737738985 178702220 219374640 538396229 99074615 401320155 849330670 184264704 319804994 737859627 908560120 919979702 987337944 924302830 176821916 423473886 53959008 623976830 278850438 571140702 404177045 153064803 150112027 824493502 571422009 66322897 624467857 217953105 272133373 623019440 568763213 483957449 385066899 83707742 291973999 384412215 818233590 334399966 951757501 489410263 786161729 66636472 199120778 612399972 784342062 277523280 359438148 182810019 587851793 985128929 281348035 467384723 533062633 573884829 220482229 76876128 372648445 394907236 790794372 678428178 454201719 420560495 218625600 428263761 159312880 337939790 293817413 450781817 572942472 295069087 230176901 284442904 473236622 628974685 750435461 431117929 78353512 513559429 966335955 993926516 157416157 564833437 325253793 57517500 284613212 237229725 900969116 787903050 209373136 453330554 313396882 822804243 526968119 817944269 198818151 719137115 489336801 74497894 545530344 457483462 371776365 60481677 371464059 767190526 187308360 845531926 670518936 757202471 666886188 28937123 664112732 748981196 513376172 543580430 708100759 398224570 968154593 613129144 845347929 956431362 246141555 443443720 438295553 17028003 929831562 142819880 862025114 915523893 157741623 400226872 106419300 251016975 359802129 94165462 964591299 917951941 836960376 949820120 551002098 750062322 362616447 196596849 840943774 332745282 266305517 969398925 657268351 722840430 287497530 815585366 59195030 224961633 105987306 727490369 253531221 381969549 485085174 469533668 856477208 863363170 867781258 742497547 226736416 642027832 950423988 232608914 132657420 796132958 578255015 997164961 451871055 83650791 25019726 407871040 933153768 141561982 959830076 712209356 99875608 898941936 905604822 409194063 805326793 913520959 4578831 55436436 29926103 917581805 525722107 519845490 544631558 572338076 859123539 155344304 239272862 925632444 78714495 169701324 622560443 499025271 82459940 840089915 508634191 122843618 251288462 592859332 866019937 271767506 657504062 79333458 622031640 78051962 792406525 459549765 113939700 240189595 785063053 261650140 721973999 233070665 144406440 221984513 358420100 650008298 390273683 883702296 172892880 238209264 475341238 477824896 962858979 659625159 9661031 34088180 526515583 882535397 263554699 28926645 879768741 792973320 512784313 980553189 269121274 75071340 856041148 379179971 592146152 14366305 273856627 926415026 737764322 884345773 877049973 939775195 144762999 938665334 818675927 188805375 896218599 604950497 409343547 35670516 883219283 347635741 451259331 716683161 27604115 678066968 458494940 447376158 482925211 573707287 72651631 332449022 357990335 48048590 727282916 280047165 633246401 612523605 757800260 382087441 856271217 678245252 262835937 129859598 265076186 665169427 625017142 212171349 783530085 607555045 917829552 436200026 882184802 561979185 607927412 498934006 621151667 130243272 170097668 59575788 44169365 932187957 863077776 986781796 807656579 88955087 957793114 152652131 187054050 449800659 639045186 880609331 868833930 546015809 424068103 227131283 769132981 41016379 17585753 162508514 527289331 211110329 171499128 33791314 381230955 630542598 6731587 984943774 277461452 523346817 532058351 643868964 683642552 675597591 357947563 167141656 125619046 806926755 974470778 411037978 22065839 389426478 363817896 30623040 90492674 357521430 164307387 964942836 683878374 879300144 372322945 246541915 952212445 401776846 407250346 734854210 961878732 965594637 508541242 559644567 941177347 511459092 988244291 408322518 271266406 194319801 388072677 952029118 621449278 994029034 645842741 738151566 541121321 877628542 386617746 229919383 581515906 819853000 27395498 432528321 409080754 21477667 881487017 685450733 611717467 431081265 985482219 910143642 521002157 559635967 430453424 5329582 807401544 576690117 806099241 958305150 819490690 166335044 91482766 745416692 817527245 382931015 743677183 894919384 955819413 878640730 856805374 220197969 819279370 731624882 815506540 120804164 164913598 421046927 383434037 896619877 410109099 132484565 896207892 437418083 297539707 748957888 32781555 80228493 441273887 347045046 406638442 159873838 635853255 549463897 586131008 662083815 109859760 381661915 392269115 573238930 180601859 465883690 289551075 100302967 119777538 323247497 669776467 272547166 465456031 31179274 474384900 900779026 396862641 787278082 757401171 781771385 172802211 929875307 121975616 137106162 655661868 283746720 420223189 379864457 834003102 643739073 259833611 233532210 955693214 845717287 603851968 487622223 318815563 570944970 824748180 617139634 182842239 942721906 867704599 541698954 172471564 764863135 367310164 171430955 749695203 450036329 237273300 844620251 656581086 780152362 483132047 659577149 981596343 751650961 186022601 454498456 12758836 324955066 557439676 486933655 711712327 987609375 899337428 324879014 212198318 234134592 69718489 979298700 348650715 996640941 971926774 625615751 326584861 496069137 488231581 312524407 381634638 382010205 111085972 422078280 707959469 617504476 711813954 571761812 54230344 751976702 36442549 510491086 834967780 610783171 239204827 558349213 991588366 826657615 189866064 32070504 200598155 437084754 733274424 329220212 835761311 688093350 560320667 679796471 987833521 755472784 157870068 575867144 352556683 135572789 602235922 797720820 348880940 872053455 989187111 75456933 945880039 584460671 523948160 99338913 729514692 417379497 355736864 732790031 8916246 178006712 330491383 224937814 270744501 59867029 969709051 533413127 725160921 594516018 506525812 728984007 422896358 977725505 594355273 545419589 233759325 950999139 959335366 302326009 316691296 964879677 969563284 103396520 454693558 216613244 810413395 373519247 317560105 871573908 272116657 945854220 293297417 106088796 654163218 688490048 26241379 177776357 675467219 331624022 711172302 346875269 63214979 720176629 216853844 49600919 460309211 111559112 484881677 275079251 174541598 292587362 747945835 53732528 505414467 594155691 268289550 658552735 831559374 354826952 163526968 974319035 900281854 113370802 75556894 112017222 258594649 136056895 755604310 407905652 147169746 519525724 338720202 186624294 344175307 601872209 46753194 498150992 753493619 835175504 45112526 271831300 959920950 82899416 159893976 96059555 25794 583903746 818542638 43189897 231950207 453701430 954262807 908179995 174059270 877715144 43640956 451978929 914744508 459494944 294316953 916611397 625911113 2178341 595906746 990971074 838638183 52372627 197019860 632558774 407816375 611389692 700098790 679139435 837496101 423532574 245077351 696773869 94598484 398775591 992192026 154146614 827601885 346905071 186125682 960554718 436037352 90851094 283150585 202457134 941976815 312475293 266292238 48896180 545047058 473681675 631732538 133303969 515121861 271277085 513028184 94479658 747687905 488442428 858560954 595540814 155012176 752500813 871215974 352235726 455156433 783195419 283879442 558026464 461762952 801366605 313928817 494803216 360112108 221697976 923433410 886711990 108828960 377479998 737446479 617631278 809027644 135584699 373163955 431668426 509723305 834315476 702473490 644660325 976018335 658153998 503775448 658105488 398327564 503061606 141569830 210980217 751804209 896327418 505351445 269369226 811877722 691158393 323038402 54138661 410227197 371581442 118391270 86378816 274191174 116128786 939774974 570628964 71642420 410558759 189507099 800923998 247829183 688985654 58937986 176214790 986954050 877890590 153141583 609247236 92656893 16777225 715879040 828374114 769388752 37034064 84013147 463523429 760526784 744083570 520872983 528622266 359897907 173910641 569265955 918272695 413568673 652442438 199882813 654184105 180472895 523872881 352452790 528623164 938673662 904018529 452216546 411233094 614721866 95667671 924596656 52378517 434347339 461878441 359281203 279537324 901770124 805169516 724502036 379418975 258834560 26610862 117353060 269864016 438948178 150567226 460898306 130346410 565036648 502985970 581374021 257560181 636872559 748283139 254203224 376627515 575477707 158984125 668825588 882607010 883917070 949786835 92270042 230686148 514563154 952609974 702139990 969617654 188215465 625827838 672391061 309107881 215280192 582905818 530540117 552552942 923520604 879189011 784502743 152096974 489183046 257364258 377653546 80953194 756458881 817085605 218987892 894504496 789578192 629150832 628102164 437337217 860235855 651299864 206057055 377772217 25926278 85908594 209526588 266249559 379495263 394972911 479511603 59347793 718620884 377285364 857011699 760562931 681062084 825620343 53696694 891894166 132364381 241230046 484722769 658908458 547018498 797765434 447156451 585323924 677435466 188005431 759463230 402781328 962842897 555706359 516995624 198960873 802755145 179322553 435771396 493861860 174331469 125586373 248326540 665538185 799802765 862446448 110581641 270381521 110430579 447878117 601478346 898111002 305757588 130367640 28878931 687855196 306437906 97799443 821534406 590277509 971576646 512628229 78162908 678816500 453517519 842864036 549476801 261316480 617513869 806249669 668906141 877128094 971741701 411473647 537542481 593452311 758346434 955017464 954317089 457413847 659860723 764618264 783908766 338874275 761346733 276233154 260182250 803055449 683402156 730099078 10826637 886726225 112481987 435978683 539722698 618062099 893985476 883202876 109779591 113010188 653119419 481270245 637785541 719554855 634752573 549551816 290185193 332994121 525577506 809705655 173273552 21438710 878826391 359663529 75639475 592266273 557530766 306942422 837288667 22439320 571895885 21222714 709436280 822771924 74951359 777516783 681462582 678798613 914347146 219106157 782534372 379712231 294583336 285099770 529540465 819130248 849210565 808596462 87498946 101585435 848705762 128631691 881676883 978444894 355148282 129857721 570488395 368672756 979081334 51442428 550983057 892485638 874233241 469681593 455449216 1053387 647258598 600795284 21188626 716932595 30859304 204662010 80235893 296068593 316633344 90753939 291543110 628882611 523468696 759873588 899840761 21307168 322099486 211664601 467227866 894290888 645089242 474495714 546976868 279754941 265026250 797786231 982698176 944446723 658206023 500870885 182648318 313120115 138113441 385980383 293946478 742915085 149745556 553445237 813549550 125585188 846645073 607856681 464931508 683142770 27211591 693672304 361899313 811312213 593858043 409219294 882519014 27582442 560051485 440163574 608967984 995591951 590181087 75926712 365041229 762300099 152851967 924206914 459839291 276900139 219768783 767023791 848965401 216778492 429418164 534231783 606271571 318991615 65321567 723932381 808050842 263454033 857694869 978466117 509256880 525923 898507650 906072106 676321910 835535182 848579334 340813990 961329745 857928434 279719121 795574298 131093787 923327924 977437918 855693509 712569234 521178915 887573160 3319339 599420802 485250417 521833796 142344437 773002495 170789267 744657381 582023882 747178678 631806231 367007453 889343133 931292272 667214306 255870632 380312408 716407132 624359112 884522084 76301634 999827056 763263287 994657104 327784495 16879744 30183141 684206168 723020981 87923932 581645214 381848195 288520669 321844549 422186820 141017196 565909039 79384594 430658338 982640673 673146927 607805254 160521945 337979297 90040727 46233134 790876108 457585278 39496469 337705900 557736696 184398519 633666229 663739335 193779717 622737918 712572502 47880500 943590568 129560197 870582671 52551687 94118036 940763130 770058629 451152137 91945110 738453792 370313293 819483972 245413146 475103278 98329692 324723471 481787265 490246263 641776638 981492638 197233367 270419188 622727254 936853218 159211587 895512271 861720017 196179946 337111650 417995689 57275086 153403532 744520846 763433602 53950727 53000837 341144406 676706084 716272688 636635716 471916653 194955139 422583140 896391327 112302084 398501323 268050563 972122772 85347297 245069790 666650510 177586667 920239136 943364066 5104300 154086392 314917304 664560806 896841981 278549648 480880667 90749023 583672871 487605750 284442538 734569600 20562028 792111387 841476145 225054624 40061352 828880679 445330555 597225706 28784092 213080557 411251530 849422431 404524751 38562041 351596479 443355057 496941341 870183862 335596555 719252448 889950776 452430966 836658445 837563260 96966949 935562818 281070427 670253768 636683959 396481714 919431071 68281976 722472518 691151715 172767968 162816621 32430527 634661863 372744556 84309442 101784269 772261727 495516956 753218017 57045643 848058384 38906837 763398932 596795138 900856230 40206223 251401627 552271310 9004691 374315646 842694299 792418477 971859271 138475794 665970406 623806251 308647892 471473911 141697142 553294421 75976302 717648693 88211831 860650478 817725619 881065427 679792232 502599843 561119516 778136381 214193182 349899310 89269450 559964410 431110838 687693156 353899552 800525884 530522269 507101846 936048683 82509188 794091920 602509735 795486929 699363239 809351706 254366079 495623297 321975357 502586904 497613638 489532298 908737665 648392801 288492193 876113854 588979699 403639026 885492451 578103523 563016588 721171532 416620074 532661987 498688136 905350840 657572421 479319527 93856993 252619153 207599254 812248030 58569612 4716656 145512734 832942749 295004847 397792737 352318021 920350741 752905138 217206504 83211191 5591925 355830752 346670884 491543802 157345083 619026902 235369702 873642567 47140282 279657699 2383669 87501392 618707392 52873217 814351334 560888000 344600902 405453981 854491834 891697102 599806435 552426662 915188164 25647729 760454438 120848198 951706354 62650117 310771798 595602334 120244606 644003419 540241167 758514777 627914204 688485795 341063847 35070511 900152596 613407645 488570502 998679632 77283569 460009304 940255026 564034476 827069054 64422004 677378991 120658950 844424392 256822015 433522043 324753258 78067903 856395410 65241072 926532103 581225628 296236590 381190940 813588434 298081395 92030057 750551317 592824155 943347029 818329251 934011469 65413727 712537804 552958308 827558152 970812727 47797287 271519887 636312819 185395197 954155448 718907720 154657351 712509437 671733223 216228580 477956950 378754135 998309781 877368144 714661551 266949077 494219138 639592051 759089720 618798490 22868492 584474439 577746516 587932705 602136630 291380072 872456053 807166700 736779816 393531987 840072817 729772035 555363660 16404658 808037794 842373631 719998948 712443864 25146385 874265717 503506456 38242824 778448421 216103327 277714893 877345374 839326701 740743920 792525606 518991423 589081103 931699568 844695461 1996198 903547964 325988899 387175611 63291621 340662889 130009485 415461747 69953589 983836027 821847013 732854843 121656948 150918037 153390322 209567558 492906578 116336580 129208367 699148177 657721022 94823539 97326344 488986780 758054577 304553134 441327950 994659946 621903586 159593757 68254030 888162915 479545497 676320104 688846666 477975564 674879610 76508901 69604203 751312172 909038132 571339898 488680218 154118378 637170009 889513247 107781255 698447711 47997663 220505617 461143807 442054075 659940919 323733856 758658197 176905370 861098034 893420177 663357795 327216740 535701433 232597848 373466487 287688646 328094054 577163624 118571328 533509889 772506613 112597367 399578499 275586103 672412756 146083962 600784491 587359732 699077403 760210403 168765244 316928103 679010982 826502920 456730264 893566762 218995911 563210439 63956458 308433358 614779605 538177250 754003657 634322113 135574656 705845494 566471193 152388041 528493482 284952182 909849035 680063605 342982259 892070978 891376312 776811158 656751301 679200546 406855040 207988866 87256015 736071378 305845264 518212568 827778118 758383481 610594304 814149516 826606252 587665748 554714497 753090987 433240196 654656305 891463689 572116100 733879368 64879326 768148154 897320374 876904920 655628935 285863405 62561381 581566356 962726490 6195386 138690187 367379341 399129347 391017544 783925911 568017424 139388399 676882986 492033063 726950704 359882031 757012049 981443652 823146369 798552101 709730082 463198271 202298616 366475784 843357357 906756376 90921878 673212635 751709684 136643308 992281852 586363327 454018143 596331074 414560445 1612958 810327960 565340967 587599619 325531245 888295949 466099379 303035080 184040401 805837731 424171450 365129890 787792794 916375734 193166855 974179989 981849154 878438642 894196653 56366264 135232826 996040672 238693559 926522466 133653342 877811312 256086977 941124017 16842666 917845447 27217649 896152975 205710402 173477287 132371428 829123447 244094277 36352668 94568077 902764944 632616824 758885867 834389078 779653057 846822064 928767718 386896396 415476013 937855594 444686712 533168847 769710167 174930789 86534032 900158554 960559133 476865405 677598483 300744029 250098753 20196710 952392695 591815108 828720422 31245078 34819537 992387037 474806106 747422047 989383031 214961191 408724444 918343472 920741945 50086729 42865192 64645515 624174424 254481786 25586721 285514276 759893921 330670327 572298248 452665768 743331016 987388076 309252645 160391963 286317550 405555153 545770822 124685580 607570677 554411188 918494568 782277282 528573592 142174564 55606572 355534980 711198575 577327929 203713703 137239792 363085649 500809187 540593408 951648564 519266066 633226576 30436125 575494458 299658695 357536886 596403270 770679833 550867011 549140601 296332042 247003316 68043801 789265908 258776436 798698081 822877669 765197153 106694521 511676801 932261238 553124968 784614084 561185394 162419483 296292774 142273434 301611381 311505703 500561147 867951775 208223202 874606596 568799326 943373591 82119151 66360898 134341582 669400159 153475238 387593888 625974116 979916616 201292363 465994332 243616081 547917020 31334280 251327006 893527748 12268865 297084779 371508686 771823528 86299943 816189685 495929856 567265214 702911821 284991322 470415212 735854673 739199143 178808330 56903906 428272932 238811931 239817668 404259564 556489762 434038782 721244663 164292735 195677810 464008431 735744607 988451261 223293574 831343824 673190136 613448754 508894172 14162488 199309221 325521323 163377625 951254954 627660280 761937622 848286332 740566420 887181767 802378254 127038528 362071618 647044217 374963092 621974603 877417633 528517677 320675428 19838770 177376211 487310144 698967713 976874759 748207995 346002913 291480221 71551502 157836248 121569881 362109708 579860949 625804253 3344340 157201533 462513679 79267049 631418504 9625099 290133375 634214087 795792164 590290902 269042850 700674119 42071749 70265526 350252393 774322431 98384226 305070502 210426357 132169570 410373572 326856155 619938469 539012877 276225832 982983756 856468526 625087421 696600657 705499318 323969486 729333873 337612938 243003723 76099376 632268409 211907743 407747181 487516414 572837953 279378294 138416729 288599164 805760858 128316600 290049009 44659433 919646058 509084446 737623937 221017504 317479052 513069934 948070477 572339760 713636668 111980664 83150249 12263968 342527259 930349443 664166487 679515189 256233268 783262745 232626339 492010702 450654311 617438611 162330664 557309650 548335257 39756750 643293375 585144029 169426572 182356756 180339030 561021350 810558313 860173042 122348359 387895695 38494080 204534902 372980825 927565248 812207509 910180341 219444964 846991502 677143993 856567886 456746176 224669477 85015551 527358996 451774921 526246252 25097710 107130288 455356570 266794439 399138287 514071934 840103978 823386436 22047584 46562512 766226179 962387406 91935083 885217154 960907748 649132964 765282061 162364025 501023102 122161273 576500430 187941156 678358700 312277518 241090893 29653253 614616041 469325428 380157443 363173079 600362329 313951383 265626117 62701985 486109824 231557316 681911120 511826777 496597406 154482606 872371929 788255006 510981131 745263855 832045820 124903595 777262447 864984743 479694191 738947402 331513598 794501112 874388941 712694043 298364671 474160061 427682904 309103251 131049624 184980420 73995211 527559192 191910958 412116143 751280960 881311754 999168393 312845015 946151927 726380110 28229579 656618261 380028133 622204251 509604532 82933711 39784042 889479806 664774243 210770764 970516176 738538542 881695905 293656110 811577690 230609283 194493196 291223733 414828583 384722384 197741775 268762634 660741967 996479846 887767866 593098608 376080111 604972187 545525336 631987082 979802452 859599693 860781203 843522080 884108187 669222083 39332710 769111784 290223097 93792790 93108829 91722585 478261910 793204053 823983889 2540412 898754473 216602174 187412070 427816714 80961957 267898039 202120805 126248027 671235493 182710181 962620993 694972879 665390708 616357899 829536922 40153587 356918323 506947134 807298118 642634574 675145693 308909985 838653467 970645509 535670251 592138531 966956510 279661255 387610175 304162006 570508307 937164559 239500521 15230387 599273133 532657971 738196194 627765550 385580297 228714146 139716678 937135902 414352668 742997953 308252328 545532786 554357245 999030034 111265795 825963642 871797739 988893337 185968348 621414806 902653375 604166456 984366002 965812977 996552850 769853564 49620743 568951587 234414879 708747556 417276571 208539849 137779290 602157590 635950608 247325806 738656806 824748387 333377862 30264707 780498263 733197719 466206907 531660709 271589359 183913608 936986123 133054895 576763190 920399719 18464844 99607467 46797130 661155741 428753364 198006591 971668620 981711915 886489534 155789470 660457347 978852687 230287200 272439760 624745226 603762023 895595075 429900124 423639666 28139206 998599829 893574704 968880573 344299393 445090293 285060824 403460040 326336992 705698414 871772040 329145761 273325515 458365391 584603441 795700653 608564589 244139440 547221163 577945059 410759281 705629707 82929553 228810444 586755787 306614986 97224604 442145709 365293230 492815625 663448122 701192374 681312127 929749202 326783632 496997302 169797078 529078300 5575905 536478735 531263416 804302851 214414047 963973812 197595758 375075267 737164761 426278713 112542070 346767773 404325367 881600831 900879746 863326834 849496379 666964789 269739127 475471219 235188673 561611409 875421292 399747560 584055655 543920867 121861132 172570600 828208130 498810675 354004565 832936381 780542365 909128147 186634379 988820487 198640356 708281413 594707076 909124669 165251066 766738773 285384524 382551835 924157620 575601373 498608413 751105098 827126060 937787355 609142566 309013505 777822395 849915148 695850231 701416479 589508982 418533098 324752486 73801407 835060468 758770039 341936524 551116208 360117183 211978812 473669018 149192 972903486 239417143 2634163 624500978 423528990 542228008 949899865 966714494 325244588 56778216 117009128 300370092 9977286 14121885 465557164 119771104 81762979 209505193 589881838 238241096 531453656 15068602 297825291 595385334 917740512 53313786 341885639 163394535 33440456 297232873 672421666 118899988 46655781 76914790 729366502 245267492 713007147 842984309 860059538 979060317 25682984 289576179 955596083 800015641 175796514 867256694 577687717 692274755 805129085 530133193 153981426 560497472 810611429 573484058 147858760 775612683 462166531 713845041 158795390 68548051 111076783 500148428 422021151 111353206 871246792 786390607 881040826 192424218 130754436 581902836 931654491 933007950 425570538 669550701 178092741 44116485 599423587 958763676 338824183 385339595 389531126 990315845 736474775 373716839 252816660 778808229 933272317 577480219 289642948 178066791 767373236 222905744 764129022 231343582 918574260 825717676 801161324 408212942 937440025 609876016 820419379 571369012 692236670 759421944 537716843 325083631 447472809 754061864 124459443 482861710 989508227 855038991 65891712 171635454 862344632 823937275 368280659 101224463 168366413 211375449 333332134 831233405 618387406 281259499 446822264 539016236 275018013 4803282 114114465 884077224 596081803 388225787 326201381 324827556 240019321 39408426 255313910 677191157 195368300 485129067 157090922 911118912 997949036 796748928 62628870 187524257 299109315 908146592 699415870 255028090 800181528 651860547 931213378 629284701 386397845 200759116 79673415 385239108 227694045 534012096 574344713 141020447 613461106 368218440 268139079 560357196 334849154 852561525 567789149 635122057 185789515 433653458 30588862 243026188 909354114 426004206 877603283 54738637 961683242 584843171 86170690 358827453 892955741 559460776 255149229 657997420 111209723 231586889 858737828 778851070 344592300 417279575 840449107 557900654 978679190 939241184 424609590 449753655 899775985 856532759 756955601 237190178 738069190 626235026 808532642 131441455 625172718 245584617 397741835 929437098 679722347 78625524 408021328 885526493 648171250 808997982 460840663 527041938 597244197 655297962 568060778 271930319 774629292 795801179 320136634 721601383 745191346 28248233 522137735 357705219 855989895 74426358 222763609 693748842 918655421 747635174 722855496 783886058 887512925 787425896 118643318 553451923 492237268 329168229 239208078 178860318 221213618 627787082 233666330 146788775 334912691 702544103 731340426 329759729 228176406 194397797 379289577 618720915 124069360 911851345 632235547 442133309 790232484 221416275 767155463 225386745 129050120 201268258 499865240 840674662 109833467 413440669 299969105 283576987 176974654 402281294 53133993 889120478 928813773 256795674 595389472 342668999 978662284 248566678 269064808 899810693 139049211 578548361 335235196 411039440 455670219 229632167 692220455 844403118 451430786 960241557 630626717 449048916 908660227 282777974 187506169 192930858 509918814 970695540 327683732 420786386 796356840 253309836 915202867 741438434 761715572 29848164 409520528 759001755 220648437 434914009 668265078 774901384 113315951 583621219 607732540 669601428 331057187 509543313 533941455 149767334 876033358 215900617 10185371 188861009 816485420 611808453 402579385 330511502 620320841 240005330 499397396 355454184 464990076 333695522 958749953 758145413 464210332 646745111 633661895 245896584 630102845 350191903 74025222 250568989 348312521 978736305 261130917 923957548 34894873 618972497 621027946 948974052 189495660 55105361 801876959 816839463 555445185 788099102 65319623 681457985 270803641 387489907 879839882 134500307 149312500 211605964 781729943 759298930 526451697 343515128 135829657 746176961 30444011 331832047 932837412 366911056 552759534 841573665 20353467 327259745 939256709 724303670 833611206 869041286 529155641 588663973 208212824 722394395 989282190 836296154 245583280 32169649 373481609 746169031 873298238 108586184 467516094 834684256 752076204 492550441 743575620 543129384 529531732 975404471 699737171 639151126 268117511 852274881 154906451 538568188 826237646 44804450 351078572 862582264 703984630 864388953 261197211 648004315 520166523 628224871 202934082 9568961 333794574 578211633 390639324 508513707 396407559 48681973 104405369 471404977 817366911 93427759 809702273 282339442 709390259 193156106 448681515 650752883 878892683 58526294 377751722 30774100 356169840 795039172 69857791 993837899 521208397 392902487 607871851 461744424 224306812 594995920 588144174 776020260 464700450 224630873 669560875 801928119 11714295 387388002 760992506 63131412 460871539 742455005 435797839 172135178 686486716 206392606 891454636 576303575 277181071 26054175 580811230 540667801 431275466 34619840 536563352 423566412 512429488 69305771 154409594 786259744 980059922 372222415 262101133 486050765 727711855 854557515 368985340 687984480 308856775 199639666 377787111 782741056 66504258 226211187 275581489 324368472 718002447 166534087 567623683 530891632 9756063 254235479 99347070 379617807 588786803 514965955 365420894 681796075 128637379 54613491 631681894 679476581 753546665 460016996 788151164 981007438 650025099 303782142 362807469 798942290 723638587 188925477 494488773 726976481 432605759 679047364 125600855 745541058 610558609 353994059 763811229 517330414 879478931 171083218 514292574 232768262 935758618 403955397 63930624 633930991 283693016 104302358 181019853 290650254 786952753 326745368 521772678 767381261 406246523 153078630 704920595 156343922 254386652 200171799 56329468 840357194 16831194 847231955 16839319 836530947 220049873 1537546 916305627 646088665 34635508 380132490 128566323 112836240 466375745 892638803 884388480 639829538 345751871 254675853 406683238 69540244 269918849 675438484 358339654 440494484 480052017 698790966 616975071 209565874 89747259 841699446 884952922 50506973 110747102 172583167 851816186 671676724 140349352 437740644 524420569 537734498 995719029 187386004 736216919 122580851 957976241 45405508 648105611 564695325 383928788 305729645 992379340 50204871 413379527 22373635 94260935 948545474 223608963 391188801 626621167 939160750 408287415 570399996 506632759 86831118 229617089 950900150 555287339 516303777 475554460 463865993 395967857 400495419 254667885 762477801 236738518 528493618 888785332 613452210 528926672 911838063 399837884 680211269 556345969 75513576 189716316 862502465 463167208 556624833 26541910 834570749 238362876 588185739 37426570 398842790 404891246 922936803 683373961 388316648 861055393 556395890 333556910 530602702 374134356 947304592 227699790 109086129 726447602 281309567 284909204 999370656 175254587 400707293 104748078 209175033 327414791 681602496 558708082 308655598 712820783 867813756 904993847 265229213 766345865 892460248 954304022 482487453 663749955 133275710 359433306 989009191 39039033 109116488 558067633 760782459 571912580 269585256 337215587 354437830 15488270 258746148 167012889 566871355 766535109 231338650 90023272 64204200 101714412 721796403 610563200 665686916 199096972 353826243 67211164 58183887 383111432 452277690 551114304 712981336 552998201 642336611 183055615 594655389 979502847 958295742 286859128 323062199 396084008 301148852 747692869 316971003 717772632 377213944 670119486 787749023 197191281 412151592 78950039 146491823 9667513 511914916 872721172 826254626 138736527 318106761 494970170 897462519 187356289 903463682 10210324 575592974 394646029 693418869 655599014 246890816 66089065 159053673 389231555 360859880 137171192 742507136 209884125 963201111 787871210 200157907 321716726 414284061 543017777 893816084 283123671 55816536 918020338 545883433 215983592 264313819 847838696 673162193 751897493 677797599 8447858 519570236 970936202 120386715 836873760 947147079 880838508 565072889 712326638 41454397 273194010 910861336 50121452 628193354 828583465 166829736 81586828 709137531 266925149 619842223 347525810 73374276 791570049 628066217 51022407 44112107 918075050 661244175 454384297 141912862 408868158 413651669 644823191 183122018 366964150 787974781 159314240 179027175 560713463 539017486 296974212 440376807 570421442 733303192 801446225 65088989 564080875 766301686 21594219 976245738 213090401 569973272 693801354 930247679 315842769 868770347 344941533 719119950 865642794 68956660 437212822 115996423 53772999 310732147 750216301 486679656 935572663 28381955 47440943 423979198 66902880 133792804 632370469 196365528 412505385 871156436 896876521 506175334 759674922 239788914 487141101 852581966 842355364 760192651 278108104 68648092 400430662 66833786 92929237 245761001 578686099 200886907 343583962 744121247 786636388 381192305 945014998 121317812 103101400 837349021 329117538 453920802 632593615 150557290 590288447 271411233 73502711 436994679 747187450 418599171 953980730 690273097 12492334 940530855 782387127 118937711 246895959 872562639 468712899 937710847 924844034 676761037 563854625 402170268 591734667 785652492 240821296 155746577 174660419 521275436 189856904 990926384 747771290 8974081 747488038 414087859 788694684 346278854 779067878 535956688 996196184 136030602 557609516 946610034 786888813 653126687 493732277 531582943 935619971 95477685 812370986 82849374 821315771 322083980 929890445 513669492 187172498 937808372 731269348 973262440 39939706 620496912 28134977 31685237 122256773 279639723 416732393 953638393 574744604 11101073 376734363 852770197 596542540 441436966 595937907 513061850 125040373 316035846 188829973 88127370 468021741 947712615 791966374 180462835 83391531 597304246 396810408 184384274 305687049 99390766 381176746 550179775 110420374 511878859 784548610 542301065 691971444 571469656 436810496 383245378 717176626 750702481 803455175 616558247 659226824 330378977 98957256 25286381 570053184 260983030 458421421 516035294 426068443 360494108 654401981 143633205 456614913 731450995 501586225 992765640 199393125 679348204 532968881 782724083 92206765 136715093 944715091 242037708 687564787 795205216 329482758 207220348 847154196 917787935 843764215 863958202 976855004 48438746 364875043 442655201 446457093 552535949 507829531 168165143 85713946 449969837 370008336 93529386 633532450 355857128 552999155 424429370 878883675 69661959 840524416 357041716 414926541 341800150 58706389 845500475 823115133 732943835 583918219 354171853 973919626 109339707 136143863 99533642 894701462 462780661 12861358 197301768 649056349 637343991 430231713 850458427 495248871 643280959 638603209 474660366 494664964 129344709 894769456 354715940 912885746 764641848 5880519 966796642 424765521 657467804 200964013 518091361 779663874 997639663 731044313 105623690 740209644 363786266 618556023 575479429 554834182 48150118 220496492 802059843 556530691 562779729 251558906 513164656 850675377 968389549 902998468 129328457 510044819 761379116 351381053 495784051 618271023 431973056 292901648 608322988 62344611 673249351 544471684 944778879 829393632 195196370 672407060 722218268 122963720 227659282 236355776 273055685 535456531 948737677 633866783 477905964 674953138 222409590 200283373 720585027 734054829 113458888 236383788 922648376 252058117 197078156 616315555 219070321 249091820 706972210 744125841 701047474 994725092 684160337 163663704 440144915 372236745 717679952 509776854 969704588 986858485 235247319 834454230 903335178 169474776 683520799 42439480 182925735 114722302 12229397 663455792 211217146 984425765 185865446 611883142 546672498 175783925 37190273 369016916 434689960 754460997 118274188 350232885 733511154 662153763 432446235 734054673 780718094 55052628 734814031 806044000 130239656 901510229 152311134 706514883 454870942 514263740 99507105 137663076 823210824 846654111 327797258 183660689 702396407 721464549 81465162 620266804 94297906 46290417 46370098 889877369 423525011 137195112 560636358 692155070 621770658 961154635 735177420 281876341 893465133 718388874 183382916 272191258 36273702 681764366 152881399 374363689 203347377 759223037 197727948 193647495 935082871 865747436 128546278 843829162 351574298 526908564 178944146 787426052 931965155 370551478 206842738 149989847 140419535 626213701 79719722 332465817 663431531 236167115 473904061 893091443 11230159 151638020 954278774 389194630 105466307 963293449 512697508 100825348 46092058 786176518 426326259 294699710 917389426 378997907 168357953 582524688 863969455 524049467 984808168 522817576 786635403 222797086 440194743 743443456 565438094 303761770 776999801 467826017 133146571 176453304 472132435 735091751 891683162 990770406 626374548 795070176 1455166 652297586 283458589 169676608 552463866 309691771 784425528 502941363 320729821 214010400 816485747 12299544 198578596 156864973 27923839 123429624 84673939 186940611 608386086 872998308 289236582 59438680 341188624 931235470 533219325 335984927 520598176 66508449 406620836 362931374 218225350 30580214 661950344 281585511 921074813 806119016 156928606 329649985 464024875 995730629 462031645 618985879 486062100 13354368 13400453 333723808 376426253 948616678 418839657 316745526 919373991 440652062 187789475 38546967 913013496 645542886 928168520 685266357 127904258 160147938 814634123 635631124 328485683 936270285 736819907 18346545 122486337 135482453 378043572 735940818 906975088 149652667 49013579 917520055 904722342 496838849 185618617 846733778 7267720 156546803 637323879 428363837 540968732 423926563 725121477 831963145 584369272 529820856 10085993 479597897 58581087 990865686 507297157 54799030 268008035 706419815 129017273 583753544 309723079 343172368 835543963 930294772 391492016 210291012 463628478 32787245 708312992 331046056 461053667 507850800 978670979 291031132 990293924 800817379 9207698 767813151 767441299 113887240 646583310 640597338 318648606 334303436 912054641 780604291 885900603 146433653 228677819 777914893 140485049 896153092 139426633 389230689 560999697 341753538 942641542 599703109 821620562 219824287 795781488 312409681 886457420 50520981 252724496 791480217 188543698 999036873 638938722 702779352 364643431 128007767 655224452 827642078 809364480 272978123 466487939 657543405 352939494 275833335 814122726 138877205 206737271 440617460 411752934 83537100 298026145 40806383 505627497 968557577 233964137 809189653 430971128 356923130 364081606 465120087 89568283 314718117 189494515 188948173 370572937 550009153 66070449 289363064 892843137 118167836 151100795 479165418 693574562 300501508 152704092 17868514 936934094 945344229 782327902 780965918 971973494 696328264 389572965 615871511 495901378 817013758 298709813 484539536 585021168 750356317 628816127 437774905 915112120 359620334 978451940 14514119 855741267 111253390 731263560 887618314 615238975 317798956 935896229 310539169 936109034 795196555 274292935 648764771 200399984 222265909 70767594 761824841 306684510 885232866 565121440 684870867 304311625 684206837 217691699 88993694 315940909 275998006 590339173 664077882 254202052 439527327 492697568 59142383 545417938 683957063 995752050 453698300 590250452 713294389 444411847 164365462 328605792 864462700 87552424 368075676 55917471 396328074 432326616 878677530 351444974 389817827 61473700 280721411 6504770 160186639 74061201 268695752 442124684 506549733 963156159 447168474 676528545 479207519 98471436 895354216 664896963 407968138 512424317 979529787 969530494 370161617 60252894 936338618 833097706 302794878 302694628 481985195 730613320 459974778 668435368 315144802 79869038 329316923 911574411 328723023 702886955 177525281 75522366 483952987 905273380 950815804 945010268 344565673 90653874 376474891 584697108 383529616 781006879 690861818 441351493 590385519 408046995 671676958 136926172 321984951 357886210 225537701 517531797 116421717 463783715 294730510 976992569 227977470 237847884 8421775 604061867 604887223 73420884 206514517 148364118 318607154 341736987 964744336 871064187 850854146 608541746 217701416 77361138 392204139 855642958 50503530 399506080 814215344 685191788 802255524 326334432 24760852 21526129 428900476 410889989 576003284 69607949 121706042 508329201 389726294 561503321 966031646 55520179 883219685 543673945 585139963 814910461 647720342 248062103 134200211 246588941 707393610 845316792 131063354 145133509 528828838 722537930 760090480 227066170 609309155 836309336 915940436 234555528 433962558 24191606 696320263 43065808 27799773 648153792 412119237 312737038 772318346 150533067 131833124 760109504 620992850 994262457 86556363 867049801 474461956 591525944 759634658 736860368 560399268 418957462 181248777 203965795 637470457 718409308 193230214 594245235 443994414 397541632 277600464 37617075 521307905 402761056 912102729 730698789 10541702 498434319 927130691 729883723 530140406 572927648 69391098 272739422 856661432 310455225 400583054 691418968 714769448 31384245 228037092 34927318 142773392 37241365 676112925 646454327 539577717 46483680 109304421 888804227 698935632 851848043 886353575 585745339 927065616 166553963 217598405 447442589 992289138 358673648 234627590 83811775 180053485 201158932 269200987 63779432 190690035 249734481 292074177 958234354 889321085 428368800 446691767 694206236 25940175 596880588 512684626 929152426 619182255 886185248 973150814 780205751 509191667 802537249 285555455 500367046 234361763 398073124 300799918 242314240 439256389 176213029 871389164 691464839 219752065 915672890 62811057 625961593 116413747 177589803 900110553 873378139 893192282 876369257 948853028 566195499 504046973 374854487 923514216 461549543 503655521 741904916 495364706 335531634 854420812 783948235 580562162 450240760 129272610 792789880 492680863 400690922 309192142 961855900 564194193 323337395 503000581 168876588 532813778 758547792 256986690 486699717 39264124 205896955 391920032 558742105 604534037 815540933 36016999 433617736 225551067 319809540 92429506 815231042 762008537 127273786 501262295 979724619 617631753 241417454 633146035 489672938 563726906 968514186 923757200 295158103 603564438 925657861 279352839 375349739 380025181 227465840 288782585 233887313 116047878 967061458 570927344 383170961 982831426 913526001 710346575 384042058 736096149 456862127 266515822 182284171 534471074 705255584 808477158 24110852 126803414 178706450 351431297 365734668 740178689 416768113 932699183 728848829 400219802 251931426 131864677 108404873 484123223 752688597 75504676 944893537 266599550 770802597 389066940 25897594 79302417 122104422 368592668 417649632 234695640 606294011 215107110 433450854 328535837 998849314 395265008 104171834 906737713 830319280 912779409 223094612 201388886 965609839 137580508 10626394 594022569 997859378 842226894 103748667 629038664 585807351 858718512 324948926 10612383 984033009 132712294 870160251 353023135 48736099 15727123 773962490 202039348 519669083 513918281 781645484 129518276 738242777 604106749 724920024 144614524 246361646 46592410 372677348 339322386 787596368 78750995 456409134 943270352 712642157 304826663 418669982 519809657 615781188 253791842 239754428 798438558 544409010 902059947 265826221 347632656 63920175 743544933 788098958 52774098 223815057 142379459 89201394 39875986 323509137 945744387 757850803 595822939 721215856 296608256 239780153 374884001 183916844 234972129 112867524 215521115 583291176 830306736 443347078 246813785 153393282 220753691 749240521 670698575 207396352 429461220 24612379 823364532 47119889 478708804 211266801 628978779 698696350 376685790 78079982 774434543 973825386 226000422 872242061 220632180 988144456 163990353 450924839 565024127 623954018 173297114 697797420 529729676 333117929 583943381 849574385 383248753 476997699 845655121 593197634 33639432 294102336 54838342 145610828 729765027 374136678 720349377 949383809 291421430 759999336 442473040 757216118 567124924 591327324 994497930 395293800 829324502 910354463 623343868 382844489 898014213 578896476 183844049 698472528 993143617 118841975 625124171 364065563 984148481 547192534 981513023 672913825 208213447 262893370 446503194 620125831 573379845 594977521 158548734 318288446 639869430 624689675 833385624 11432869 698368044 228871828 696298558 326015766 975841434 598758343 640798554 774314478 357871983 94853176 694293764 631092812 435692373 259950379 540327327 293924169 378733082 987571649 433948296 848281686 267713345 912596052 647026807 47052190 671213953 591814435 648920051 803172844 206825477 756764267 770223156 985389713 377236324 229385589 888775176 251745533 531095475 925735059 633287588 94615252 221167255 96041601 631156498 234796532 544997275 284206704 363887779 448576233 1716523 806289725 80468813 440070428 704333280 454979581 687127284 459071777 99376470 985249600 250587568 517545263 324519903 270041068 526720468 398833657 717348675 640405197 231831011 624005874 253031491 597761860 952815164 580436534 874366080 167816714 373310508 262704011 639413028 884319873 823126328 344327654 594550996 82118294 994301567 787148614 429536436 116106413 317222361 509242897 322792466 269359070 169452242 337617408 375538112 587840906 506642762 247051297 351486155 293768269 275872359 786923923 246422504 678661556 403235108 396818846 845083882 772765707 234793915 654519649 591197096 603736548 215551575 93492378 528492565 103099448 308140533 508599190 919955433 797918234 758985444 405638864 462898020 186946206 294654460 450661360 814674913 1026568 923567696 712839444 24069617 550024354 43538137 198743834 453282008 511130775 121266668 622108312 740757408 745382759 618860217 613541334 890207008 156466307 645932318 632894622 859315304 634610831 608835653 747414535 495445689 234657146 242211284 865342494 592365426 455502259 766416415 690672126 650935965 287263237 350462596 616772084 913623831 982211293 118929343 274787891 30521445 875968398 620168667 199490819 544931572 287565234 710836643 586179867 696957889 36528635 575866403 920916176 694331687 479099829 993474199 651451211 443036133 920938608 991010556 617277401 992986941 118233946 637305353 614315170 649108739 460344651 289138408 514248905 790475268 389764026 251590665 150991840 681638803 556700642 739135805 621509988 674904995 128434405 758976574 882626925 362083134 525617271 485508779 198680898 939472999 122164695 36936937 584667625 909594522 838401176 121431333 349723729 740279647 57435329 831785557 496406367 440024598 828310527 649204558 121240107 835789180 373503871 498398533 540727027 874446822 343313878 757348822 447331034 858676731 747705100 943926209 340862669 973870326 295035573 551903680 982174247 533928305 604120072 515944445 546967269 943742151 876371815 559378443 272800607 826127375 594180322 552591146 550375639 894786855 610363864 997510106 610009782 837622197 878832070 867134083 769478988 242471526 977539709 954255137 861733959 191993724 370725899 193348147 604317096 104722809 233633943 439406567 820398660 772106561 82481891 82389711 580207012 678847440 913932231 549086969 650711283 820500701 126784316 573879147 230312297 10290147 383228374 823997479 568770418 286151151 142405762 979467795 494675208 741599269 178891235 553185911 594230342 796008163 179982673 647412707 57101005 464523869 162856295 447865829 466197423 993720294 133713161 282446859 717433973 312143825 199962894 115593742 633641192 406523503 279141132 798277829 830748993 6735885 577982033 682926538 222710301 964403113 52375130 633079793 653470970 19950677 624568759 913043315 417972726 831332285 910649816 562799964 805784474 509718151 715066706 309062473 853786482 235782046 706089224 626544172 325135325 687322117 421182097 161945311 309840606 998003478 242780910 443457689 222406800 721012165 446774732 783523165 158118805 242738697 120028302 71968304 796240436 585499258 349894443 634563593 15723046 127861303 216721524 79957853 498414159 773968968 63062726 191974790 404568468 540454477 433848296 523559958 580799542 995413038 786355658 145538258 804439485 809039017 221464972 85545341 974177921 772786984 273120832 511744266 849180199 254728933 640452017 124887273 136427019 234997799 935491342 122638544 456999573 195512603 416848087 947315708 797856038 950681989 142547076 518508547 615343914 649904695 20541321 619952147 335965886 528760548 635270607 770655036 6272993 974795941 369168410 644208794 274217892 960929837 915494805 3186508 307517383 495501320 515357802 168160952 559838358 100809693 922292210 347646837 692213908 139970484 771062560 735672777 395771293 151641870 912727034 329814481 436296147 686521220 871586164 172019888 545832547 752079391 997728090 38944447 129106419 467587956 101417320 216007739 271289109 737761800 742186195 859117652 131205780 563910964 195197650 825762460 5111241 174093405 694733573 233909287 418302813 543517122 407672304 778746248 537347053 87768502 293010807 861617206 995323239 166515033 612470958 712310554 361352684 811244027 508671701 97358683 356763678 238764832 857314883 648074556 94648794 741841012 712601885 264485691 42433352 45638090 448331351 53505835 858687470 436571608 564116865 867623713 195222194 412191519 968328316 903788126 895589987 554609146 916480026 195706464 998440675 819665180 740021336 632611209 736994247 598568908 891495538 54229440 590966816 866633816 325438108 961165238 239750652 198444027 855336816 385796927 309934625 620490492 964249760 40812738 938148553 468154921 329427713 810905693 905968030 618585784 866256185 943558941 921830515 16128126 5035078 851452075 308690768 687630703 279094811 609326482 158395707 556839181 279464622 952345340 414393511 26215458 160499506 102728593 865807843 735868165 745035194 205046672 674266688 768971999 322572674 690889974 32632720 282632620 835284589 252844155 949820613 927990326 936449437 627780479 706307237 652252245 800953605 404139448 656562499 252713218 496205126 185858617 906344712 672999274 793683262 122307292 688712956 898240214 383204531 124295262 990618301 209391443 885595522 681741695 221882019 41199351 751822998 440111636 484747579 582624156 584272991 994297363 205335229 749559473 159090745 855671991 635424424 983486529 835307154 363502313 876512965 532987883 528266734 964643560 934903479 908853589 707488452 133535619 120862455 943086201 991925935 420757831 346406700 889617345 889482104 945546543 495809364 168954128 855025962 359090133 268470311 701769668 207194908 139901525 210324972 76515289 556906839 565908890 697778069 259501363 842296577 935417390 893073096 978674394 987332081 304186433 656657018 161862732 732458430 962699710 373415183 170258907 124299934 191563722 832059956 637016060 271503787 313461755 292099903 68768329 296784697 892772430 767059110 546019336 574953175 225755600 161079765 307001234 51112758 31343182 264170653 773858858 121185574 654654431 747836365 338558080 221379522 873101560 835904326 815383876 240674490 392093301 402232215 829556506 895616817 911032352 622586466 592693814 224827651 426923530 237181820 683014288 128688093 573814761 53771864 409634442 985179209 177484125 119656745 390721181 359337750 833808549 850081735 73298492 472879100 120242609 252654585 93309878 975336411 23713684 925804520 198468076 984426799 244322857 458148123 249971238 747511327 310576748 794418452 280956631 199491992 540197235 582941302 165105653 767477804 652246360 468457666 925092307 458527813 619967461 963831086 350240678 919858456 986014192 694720269 102520858 929103673 717583195 756728162 223041358 860620411 292877564 733362913 433219007 598531602 658625313 437062133 463503671 835646202 528058872 428345050 315062702 141476336 648817760 499856061 932239563 772494833 126463269 564987686 317561931 846329343 328077349 599360915 973066517 708862807 211733281 646526804 475779555 292813164 19646569 306006747 792539512 976341923 44498245 741667789 740160049 126140070 814398551 989653035 362141670 904620879 570522376 381223677 838258013 184918294 306328873 373776649 432133982 370220645 48461918 468561242 499738498 4275481 493897625 193670593 126128802 685249616 496903463 149553711 663062392 41730752 909248254 124292080 892881774 171640010 210472764 354956358 524738344 907881192 170606229 353137436 491472128 168988962 638109228 490592543 29167276 425589924 795625733 951297961 299130435 291497811 539295807 377555546 221492673 20598360 146686084 740500547 202773260 69612692 168269895 722897236 686515312 221245345 497282489 903279556 966703001 726872337 196048022 757203074 487668338 834766114 934210123 131063614 24629043 96938633 770767203 503345006 99348718 271465684 100012957 175478707 861251715 267257622 874098315 286491935 632557416 391458494 936826635 893271297 597927605 833731850 45140560 268116357 826783111 548362005 176413930 986289985 769479840 340700840 409910734 370675775 763845591 880399274 993664005 916062770 497187059 475016760 874391279 125872828 711031504 154504502 424370731 136254989 441014387 463266633 620387609 925475333 652992062 927193151 405646911 201229697 838219371 63852978 929500020 734229214 133844028 160412175 642159822 307538366 162080868 622547680 13632536 609921261 826618531 717867458 956604023 734671487 874520515 736847753 475340977 228960251 47025167 773804396 332083286 428468800 828962311 838525202 942035851 840822247 818621201 537023536 418222658 655877289 404424990 564874360 935780707 828745616 194589694 371501518 537652631 912362516 837381783 275814913 662886022 241492199 648741621 826613324 87582787 18453901 292780437 4317101 540342103 36112293 369687524 495526178 542358701 561044041 385183221 97017213 19759614 611275771 526521758 621209146 714010754 934598183 541119722 330230860 728877896 642160031 1293867 924589617 19824106 860239263 840040801 806267547 163023695 340682524 876008779 573492283 170737002 127207592 563957341 41253145 18724789 676710730 677856141 422938442 466705850 511726123 773546526 718940560 269077151 14658504 850160840 961850544 52590866 495028942 321661855 573067136 522818629 859147424 858428708 315717619 187276372 371357227 423686342 291067049 302415167 935328425 985062796 961068828 635655230 529269772 338409381 169175279 759823442 778751730 416434682 281088098 73936557 973141546 754776631 727583058 736857587 325545865 20086825 655345271 952255675 415377800 707423191 455971968 971938690 394348689 885038409 606997389 772038354 79155164 160857939 429087284 377330622 64479860 396039840 795774289 616909977 577094134 973484852 122442946 553021162 987999195 291165274 837914784 158750337 894078458 136748648 183658912 970821873 274577902 257415915 670694412 3746166 282054544 440851468 594009708 26586616 534474955 770434490 236128971 523490862 935647721 720400238 602073150 122306095 917392577 753902571 430683450 953072906 12821113 537566976 839297218 34919488 766823018 116061274 561186750 897644732 957036998 363602219 679240334 631041589 573748769 842002921 752721736 95948689 448894657 862754143 745414038 550381645 508929214 116198457 106598592 118065642 611712819 213335009 333912834 204784515 749365566 723715897 791331953 746176065 45099274 516605538 149815383 894766100 167698787 628520530 476627589 934395701 843652512 242886652 521655674 935943891 100573977 378092421 177992685 787478377 6229821 771787727 682815344 47483704 691593519 171429084 791804671 165658679 637845924 492391607 313149026 387088575 19244418 888754975 611133846 225556931 458326427 816790434 771328024 943474587 822813737 854958999 906412697 276038977 450935509 658505655 103487824 354373787 942936399 90816744 443947043 752120442 164708269 404497292 70944860 627215293 501419956 939441205 564171957 515857564 167383331 9100543 221744172 974990934 271749279 455314391 222944759 755607989 602140555 786594963 825938462 504036328 91825679 815997374 466019224 534002941 185399353 880010310 331083111 273116690 221570795 830523875 803633238 614886827 526071775 491079550 605239930 514633984 873337772 704116926 985610214 65064881 864954266 524513120 769122795 211855798 797383800 107344406 710404845 332552623 646988041 589760402 418143641 877104098 805208755 686160912 289146970 941448283 624680665 564903647 242409478 576554796 100849660 68916487 134692228 360995487 366573848 523109674 189912613 805580434 751848127 50917658 902279276 431265242 243087936 577479259 607855372 241802691 25406134 274150788 666644886 87938033 923637715 158127810 34780831 142295791 972467026 911027749 780023549 449833083 301457948 44027983 703229793 45014824 813438547 42165210 598624615 896673481 38599080 550658766 812542583 723112024 984489575 472675702 405742337 289080288 750349624 488430343 899838846 17910159 277804374 99106140 740049129 49835972 762846848 860547622 395114188 471540827 361559389 262480786 158236451 778155913 265785532 205711310 327382949 629562712 276594300 79697026 176744752 509299422 977996009 168307317 761978482 686164749 579663474 694834976 622826490 452397883 303085299 206423173 433656075 609707156 918409149 241028371 575118579 311410360 118978797 547217675 121732078 963200562 310558473 959342436 162637296 446731230 959934434 746873063 415253218 322671786 691144192 288592400 668047898 843538970 280872024 908102696 142526656 496857348 308664472 265785626 855054733 785619215 104363223 580983447 147896199 245356869 551654950 478844479 796598956 189936352 541967363 794634511 986817320 867584270 933873369 447569772 28442514 735309730 285168082 731594665 678401385 214079321 462526989 593006475 296250981 158600673 269706610 74307414 419096248 374628173 611051854 461199108 621372641 821178713 296396082 831913073 571365786 45617218 711103899 674119670 859784529 761302010 228004788 996018869 737385141 703243609 700782885 341368656 835313703 571059805 152761496 676455041 891288514 692592734 723544762 732632978 589286448 516004363 949461080 922889859 626835163 850162570 448306323 168173521 897099683 957722517 729110681 110883828 182550486 351027273 344161656 870341932 671106792 361161426 967304996 100519162 243832606 734073939 820768676 587830168 992632057 637798899 731198420 214060433 605597346 700259737 616167283 521622336 602738109 260872109 336323340 997824004 739250846 316317607 108389714 189914101 34930677 564316311 758592331 433905300 109474504 351024331 74467203 339967672 202710247 341351702 476392133 154400893 760375275 730548502 743247765 927683847 105159761 696503883 149452287 127085207 948474869 512687378 991978203 661714694 265410064 106792267 836201570 895908959 706702734 209052653 347172606 922681144 176463880 934046889 897614829 398609562 868181663 550118170 451700835 113290921 460615504 424323577 160799186 668253793 141620483 504031660 615849940 944175359 399391059 826258539 526393907 426139665 453178303 534884204 205345933 852621245 541868048 747556722 784041236 183224001 162853519 101420313 374507359 75454527 228115160 75894248 781444466 288931069 876812600 868628623 395314611 2039047 604865780 681101532 672227840 420953749 152631292 679792559 28322832 232219663 551941953 103922424 969706057 482649133 101565808 507218071 161592568 765569404 183145639 57962875 400946540 947991901 147190363 833847063 845703032 772930869 825587938 926963655 523180213 63042501 477908389 172669319 85331078 827703480 155181086 992311915 486053832 650358908 572421947 357257964 870781213 885497199 634028728 7542320 772510016 283485167 608157947 158799753 640334854 445681197 154009849 893384897 796486764 644488098 253970721 55559531 204188238 678838217 722629611 313056035 359743867 781026518 763232412 921389065 894606785 597089214 654078219 358018851 480307068 665440534 261508695 19002752 925510176 768347452 575086964 259378589 898183086 534236114 190148788 430855903 981927819 25144171 642457558 434106022 580542111 279545276 949917335 462287717 54852274 418981169 282061334 295846174 522960123 830358052 281350623 787151952 682183000 179910839 304866002 993528608 589028239 883261807 454315531 623888324 85602866 703559443 529443981 741167419 659218974 720786756 383688069 879917581 592545553 225600153 326401823 987698093 92254222 871897779 526572609 350295937 639141858 351954399 422118348 547887465 100218104 303574660 525731551 376596085 512560012 812132648 571337166 33191326 113683690 880315613 432090674 354666129 925521458 243580148 171726728 115924308 35745189 553035573 330275684 756030147 953228490 552778242 715495249 600283302 337234922 504037444 415212410 5641598 164859761 402401000 326086905 716522429 775232357 733467654 56577939 167128048 521988488 970292292 502201437 556888265 414218751 426863164 255429077 608821926 470275387 786056033 924078318 83485897 597986922 865033425 630479807 660435232 220628447 552205930 933981265 109309115 707218496 962892478 225434368 919563900 666784505 800471298 652537801 925891972 216150130 216928569 469261233 552962835 70884198 561599395 116688720 140237279 709156566 73763228 753610745 891525558 405974242 189100670 716497390 343944763 782403662 15985444 342499896 867456473 538154691 102872758 284555818 855351218 837617135 934028397 31504452 273000691 132763198 319959695 319983337 332350924 457701872 584295251 234547617 612407237 556102992 472240105 422836735 108233433 620152399 510947998 205024454 763089381 660838350 563318449 809101953 160169918 904236436 10947438 396783218 95999306 916333642 793398582 71071281 557924513 524397081 77825425 969188297 488624074 376172312 376002145 600235308 604682910 496731549 4610297 52990113 857346885 988141049 931830785 902357722 587935360 404627148 85876097 442021742 37327479 303532554 99602459 597102291 278907321 16738302 930819128 796410247 687674008 438291614 685133236 168741836 582970024 636350687 994607911 510591471 647872422 771986762 13857218 290677813 308409906 841046848 39096455 90562412 661552782 107378727 888868390 485598366 940429118 937099888 971065426 997762056 275300413 27233360 33596496 127656860 748258697 404390533 335514098 581854610 715462495 312436450 536609393 312552380 438908982 837684667 771345060 598862434 635810306 249801229 993919964 196783613 474284628 979175187 610452846 983701414 659188791 676123092 869044330 117986716 128264496 821259734 164174356 852829128 993846051 962263620 4354905 872154269 828149666 975225027 274337343 835059403 551188900 663788725 524264107 690666219 119997892 331364795 860935742 19030145 863115248 554269967 923129803 672061206 7249753 559055516 280409893 133777058 532127089 587607161 193940344 644752229 83186937 473820014 838458007 42224652 581756719 776374664 823974977 177939451 900985278 467752376 561426112 842840299 485508149 297647883 703079532 416906129 72696199 495964444 796836062 3335898 887992152 148781974 717413919 840339011 80629416 679615874 443425827 994303613 632910681 42721030 424799765 311208125 53321355 508409134 277172484 432695092 5758404 997188493 195100648 916511139 994855304 856915386 810610048 38315466 538137980 85142336 886496779 257082704 461106482 394668795 3231644 803896661 799542827 282909640 16407039 192060977 994412931 62166900 594987718 967320552 877924707 943932363 908319710 177195620 945628904 711900821 135215411 397583765 994447020 845479651 511684842 148413379 279978509 89885627 204890596 280647844 591721761 933643953 521812223 623683865 852442383 961017604 254169975 536766556 707363782 225024243 291722799 671083832 970368648 174409676 719122116 631022627 541685516 730442856 796091734 790440996 147992542 663349612 539706412 495318254 643306581 872138271 277156295 360588498 13406119 241461308 171469720 12447492 577956701 458192253 947658172 677640135 829232160 498665470 935127278 40425698 442639783 54188966 341932980 897651422 558053351 849793029 285727870 900783806 959505589 467884668 289912452 1305644 836791400 857024149 553498018 348813899 822968765 455205697 3412182 248706324 759024766 438515801 478659860 113633292 284846092 491387240 56526617 98223801 624021438 938927831 392182402 962702226 261700536 322514804 927064902 370815910 636401481 60800019 194419544 907400172 118085937 382380231 841586985 267054110 99086252 776062262 6315972 831885209 875582329 528875144 109289663 777762149 457823255 925342815 829231704 888969139 595403153 805197246 969618437 527575950 555649825 760122339 956558041 876387596 437117001 913272836 155092278 120273832 349769294 800899440 849641475 298315326 415306306 840739037 685027153 12122126 205919870 723094085 748054256 552031619 672543112 469693749 46283025 233277989 856383964 204237902 375488456 542121998 966039277 217007688 369164621 527040199 88041409 118077984 413187300 359659434 52084698 609349761 103147606 203121915 431827518 536148502 614092649 425910250 516830565 223482096 678553191 378721579 597696779 634818922 584948131 557521462 164217104 31144630 664323277 326089810 237401753 936466165 954575423 201896692 660720975 176172558 691132184 275586135 718067219 479254352 936628076 855639984 668923313 832436714 121840412 582522660 68284240 915912421 850350742 740010730 451518346 915605054 397796353 912540406 150759885 611117533 71046139 867173670 317162769 230184349 216419864 922231142 689822825 441991854 99411744 854162966 487896058 804814318 187400186 691878727 397073380 654811947 501203169 322969134 714989819 536028555 325000082 766917639 450837081 665453173 943487698 310336373 618250042 941812012 292828482 15351712 994689103 679680201 658786516 145423316 914813751 94767227 346381001 202947196 193789572 27110981 153253511 279251154 533243163 731177413 130539934 699342921 881698872 653386117 841774083 82655987 240747773 787810790 746698519 865137838 788813235 190536203 147163875 80352720 100871798 576641768 984338362 673836577 667982279 582666790 149138762 884121696 61749634 676268892 195048661 5884775 802643623 777732540 75231624 342602193 897459885 981569077 204663244 676635452 734387195 453037249 998085732 119019463 222839158 392354689 533585290 546303861 682965910 659970101 427476503 445592802 761530849 116219021 67172814 38609253 12725913 590032465 55139306 810039353 306215406 343237473 467495316 198101555 336631457 105909287 386195672 514400921 413014181 788389134 884603067 24751085 603561708 18065527 908753732 950357461 6278762 643962050 966579994 39405170 492466611 740435108 915920942 244589332 370280862 353695166 845754331 467675532 670119697 67928144 484855266 551791163 942757296 662828810 282101795 268027086 754496873 631009579 668085468 834351206 308945185 662335068 801003764 761060293 512869987 828450743 782499249 301655774 10787121 986785645 886931086 879780577 751139504 368182034 493157303 175846989 769479199 657404467 108805628 508780953 478152215 46553868 828448841 77744392 31308312 329104690 30595244 99915699 569118010 481065254 448463145 743374666 598290998 907484461 341707502 670407499 939158326 882107426 286319247 84063753 866483167 75338882 414820634 216181243 903928781 479752388 200055085 505673519 857086985 729687199 596432656 609753140 12588364 203604135 411870997 158858293 986676806 776460635 413116625 389164917 101668987 570398323 444759922 880089900 756161694 10362098 409961442 578447103 860983300 778433582 286320605 800754606 48503044 599278630 125303466 854176105 966231526 103714754 341603475 121454238 589402371 802755724 556277571 977819184 890835915 728068713 512782768 402731715 350073679 606546190 228435168 670162550 335243715 254908483 988623178 20874582 794148930 510737238 923519372 437039622 894396642 396634927 792038136 22672985 44568729 646442547 429048733 379596999 622328436 772814810 73433199 261441718 993578970 362103669 156038831 502338056 786606319 898842399 323258878 468813435 126666360 143534332 511345815 39084664 514681415 344982444 863790453 610200771 572344759 496518326 570023826 439097245 138569119 958218707 65720749 105383775 599994950 727708118 938276277 94454560 136258505 629279889 817086601 92448768 307488136 233495266 81126349 957717950 531665636 531598190 894256905 124821302 403159171 739813587 872974207 883151102 879085654 902130164 335526038 788564910 52822907 960602781 776879726 494276851 126574580 506091247 427148737 466881129 4539914 861680995 883007654 964447083 555684390 499718234 674727239 132509102 537766152 725159442 847564336 849203842 550805683 28672363 645707011 602463785 860107555 615580238 164121338 916411696 781364521 383708414 974967014 717083815 91274447 893434755 701686670 320068046 20578762 110322531 431742641 769923324 638948810 361127118 424151063 237511851 425541395 121292482 541422123 957920031 151477707 858789966 284642198 470791683 502955520 20615480 78937575 852948800 966806731 748766641 771753787 246492593 83493507 801107358 601881072 534097412 91812779 876956444 164091148 820692742 805952475 692064941 948588757 555343512 577233248 589141939 766086947 766188502 841492934 790252349 727870252 255773006 450605178 514273755 355109279 674679284 599072749 192096017 195211266 658955871 278253234 428380020 449251407 310010702 70114808 481966418 655682890 130111032 680653067 484363970 808615865 817545970 553056228 937133607 616217831 962745863 892737624 977621284 446878609 770642841 218994785 442265990 50259596 281497605 13095666 660523951 467131518 963205386 674691185 620415646 277816975 538008220 829301432 184425117 667155320 525032567 162030794 80701393 992943193 406024922 535142051 9912042 344757565 401697960 564186185 444404924 688577474 436948734 42039227 61343240 823369958 654402119 804010140 504561849 779342161 113121192 281080458 344488577 694108490 72273345 757996199 155388353 901435947 77565223 435427759 87882913 32585213 787776263 306427897 564404868 566762191 44775738 536090159 949673808 89177035 843270074 615764148 616555637 411018487 718946738 199319157 354983166 981845047 334107623 61418978 757757067 862998912 474537647 786979336 731014574 172965235 55913267 83599304 980621522 506618263 395674447 687806448 960974425 398572351 739050024 80585010 212418330 872235145 743125947 392835686 876344772 834507976 844949490 655140733 711087494 825126484 724327270 945704182 856384033 781020222 108780426 111411056 981324643 307297209 687344297 886268154 646637510 649662472 917590739 733504000 289504100 466141993 286079578 449322221 411246953 839628020 418659234 614788229 411917371 525581953 163186101 206476060 220043069 346965918 977939720 321648761 139702645 550932239 662358246 851283675 252401112 695524009 246998604 698214328 405692794 132306865 130770871 225987553 278260587 320990064 62953746 940204762 149508188 588019179 226294893 373054486 342000346 385671822 261058973 287325878 682603952 295249844 558778589 478478711 228653746 730751024 631946369 259464093 3818696 443509541 966547002 122400645 399751358 363864706 919526816 245063002 246856477 445653727 334446571 40580132 506808234 253432943 789917352 54726086 222520120 760285303 359369045 448757471 55254752 635435129 800028898 202409196 971068015 964298623 578780504 296032579 58273409 475935726 817424980 799657952 69376708 628753409 744165160 350369033 895244468 697740350 153915082 247638242 252526927 959700723 171928139 855256562 973880221 495719911 13187379 795517024 840346044 478190089 980047410 423341762 515677257 245769531 771814876 464905140 126839581 704493242 101570482 529559056 868409323 944527078 870217559 893462081 868902619 560590964 379469747 452596559 881815609 370029134 936270933 963783891 93121507 971982472 331015736 301731190 5362091 586201003 353677017 460189790 512222280 670264567 685742412 540911327 91864073 484529407 20278 211414980 71269325 467517138 797872254 142334278 629685293 202621466 914152092 408061861 520500419 61629110 55641106 887924126 902229152 953627765 855250559 244785294 814767223 692093239 294974661 771855642 119526967 5997330 241047106 20201543 62475049 759411526 164569092 649430127 791994653 964020830 924426396 122903797 60232690 372786157 926150821 454925310 727525124 805512808 33620616 977595443 549892159 174551318 525013338 609304063 78134514 279080093 297814867 543683770 729806779 193875480 304116276 715537822 196058776 554053638 276925634 722819850 151029508 266834939 941374767 770425678 483619175 106808034 541367271 305427050 881861833 161691214 721441510 51262771 698945958 455874336 21691664 211771577 156124257 792605791 419367512 463169036 512700107 804886208 880087901 763957773 778472249 294270905 693511888 773557822 205329923 229193065 662312474 781098886 320174767 572470160 416020408 905758026 343349848 844866369 750327685 828980493 169000102 845132242 117848462 719318801 928920623 733499779 943342440 8822512 327690595 465277736 621599803 12890556 837065364 998315432 169210499 477887125 246338232 237979105 75256857 948428532 723606370 991829910 952072117 704051939 149712637 457453042 183464063 590102513 104741711 494341380 110098472 632384403 756945769 962623924 993878990 230513442 960439223 297869621 66660853 114130406 75240793 574588836 366649856 862352247 973118037 870679298 384967383 811893075 619710177 652493002 372494988 666096876 74185879 912520892 884340757 827516494 960698171 914450923 871178089 188502791 490132953 283481678 217841436 144503518 612988171 963838951 940665401 988406510 805370902 366244117 269351944 496334654 127413726 860368140 38738568 612814962 930436676 238477553 959324463 551072073 917458317 450879014 959321189 466298921 319913596 692260725 203812288 322494876 525261647 680567370 554227367 235605160 620133797 488580063 289342589 527631076 485239152 53367359 554349223 28923624 297804306 812224316 153661898 11328512 139325346 170313699 82495652 132308549 898139649 210122468 845117566 527609909 195490493 255961011 244642835 382703182 655209645 348079815 505709235 210182804 364916767 306172964 555312473 309750852 531165088 906062920 675340008 318704108 626225344 441904662 959726668 139096148 652025388 302045568 171302747 284964195 607675616 844890898 723236745 964074829 142493488 757512394 724843321 172362037 552013454 14618238 77939044 143912456 282783436 26478689 967225937 1052395 257782301 646290323 719185501 832960336 379504609 257994261 566116547 82765582 837833437 37173649 656692007 597722664 846650830 179641617 318940521 93323485 143710368 775181408 382801999 716796200 809927811 500862559 477325556 370053836 62196388 631661856 619248850 236982584 114983445 559634772 858791270 727406728 916582778 306939739 820239345 930345926 253399751 245822600 369127625 739410198 683041219 220112191 167239184 411111621 507033433 828442942 341879689 843534697 830753828 58589544 211486751 415712316 731346782 991190466 451121547 552380181 319507621 114706510 336750724 422530157 835475309 957565084 225920565 980380154 520738149 102671268 788088430 164240427 306215799 802281133 716157530 354567080 968325751 530511670 836610676 426997253 954300117 774243061 995958311 141170355 681270287 977636937 686835920 531068819 2344281 646940938 441929721 864358178 360842454 593115953 929930941 496634719 800844872 685634956 29539192 802751684 782375837 582716580 635580437 956765849 574266160 760313623 212772457 628608756 186110043 176672862 688664288 952283514 113236519 165277862 417490746 599869706 82444929 995741553 178999852 627433420 12864249 570400360 103318353 182167490 315850000 829033991 491385919 897535663 446162784 254012171 704815360 720405662 981809841 387202746 422655129 56387777 719845925 532487851 942895557 373846143 674163342 366613275 773803505 170090183 615958964 345468272 716086395 497144282 574743958 874256167 483898114 919853345 671946000 766449094 789360594 987989568 965061849 906006005 575547713 689657429 284359182 511365979 938959334 364895861 330581315 186694588 550112397 179290290 179748104 993337823 908958885 897159295 298522202 388518725 347813783 638580142 87722450 635892242 987199986 960754060 353201580 981748528 402609899 516693507 127105216 823432004 221771262 163071456 376763394 210426311 755964449 879465614 943709857 56901485 743532444 774038085 120574392 882698804 906231143 882807331 62098892 455150632 70241322 890532818 946745673 535148877 468662245 571470055 87264637 626435733 210458303 587275568 273211384 54476909 540661131 919625019 762769469 623473757 160364778 135580595 714343659 788635234 748815909 602822169 796361744 146477314 405667135 950787602 252876717 605553091 724666383 133032260 849313860 916901199 191278905 348796221 127311368 488053112 690063994 492181705 74066583 350012190 761423541 336954699 883056989 383611139 648541714 560569876 226351860 825376878 744325430 315433402 975815552 735160706 844451929 962793891 536893077 762655401 225570494 673309333 930651640 34225490 562172028 154369837 688166257 996076046 945071065 285915212 23552105 243247827 66768232 559719826 431063461 27437707 508303005 371383310 649835068 738808832 324053914 859330092 138833037 610923830 971402579 381729879 167266733 385934630 863279457 695062720 695391012 947771868 887689350 204418455 770607827 634121699 325267738 943337238 201753632 973230940 979860709 725290566 318278193 422217221 703872955 605062152 541224126 819686022 43045705 25303735 64410315 620282772 933794935 544545915 353002780 786774393 297158459 913236297 829260058 500639801 694793302 552745099 143997637 315570693 916629706 682808796 784047443 410733721 108660263 411615562 746727227 593359141 278950297 592972945 457477236 78216814 513650333 587520813 809587586 898818676 653772510 746740557 923340179 886259645 415536371 202100704 601787836 280344837 98685544 600798080 817812216 735765603 521383003 949831974 147872818 277726794 932210075 450361984 871927687 658782222 146068799 864344049 128263184 520256982 854893436 985820666 985921592 430348997 417942086 540278923 118185006 795775945 510381702 73709550 669218557 931496749 515023935 819721892 929412457 414018436 943046715 610245884 701029635 623715420 515436537 879391053 968576061 797023390 851084145 830447787 436369518 506957293 585454331 770434469 523863937 943275180 11506360 739330866 601311571 509331200 926105884 813270237 495167499 676026413 873670173 8740747 240841371 77635341 508936283 590348115 646410652 112622542 91102332 34882113 44064402 168064216 751684081 385103508 108990164 385782985 882357752 445115632 528406900 227679178 390632852 243246316 393808370 179187880 867875836 631709394 326568330 257558918 488248470 926231490 431508966 839086023 90876339 708793368 542582336 55129493 319748862 6412739 536597203 889422068 912815670 901581810 609826825 346089318 596282335 555119639 879812009 600452668 580150707 314211015 70673588 995686690 433268770 878758404 263867316 606797240 707028224 642584774 245534870 904028787 291764285 915642622 387369355 394412709 421003308 854340717 622105253 559650457 829989044 343754419 173699346 119777894 593578629 747428007 101873199 803380626 796777127 714691717 339201414 181715445 346282481 187311352 524834029 782672877 14863150 739342239 715376715 169804398 521668992 889473287 986044252 903751070 236156233 773905036 353280216 313271549 115154079 491118231 170813006 805042703 680669716 458077443 726566647 613487449 805072919 200482102 382232387 696591328 981566315 230379362 871101495 895229995 660519498 806443215 639094335 890963430 611624693 654864260 137755915 390673872 830833550 27442438 799560873 713221823 280338713 390452851 778064427 752132298 406302681 265747043 293330020 62051725 274042243 696459032 251458680 633708776 447770165 351405153 964989039 355618357 548827564 823208714 443854292 123134963 171805251 43919747 490222099 545855374 892024185 878094427 892984101 618680149 425843049 445681053 851438380 222028603 631386178 878809252 846793557 902364592 170065220 353369120 268111620 720123081 240624600 102001477 64913519 413205584 235504389 285656843 991119272 587725403 561892196 177527022 19841891 522565537 460162381 669100157 33073075 528986901 983569748 615798163 307233520 671927251 355425310 346129396 736714885 637524762 1805498 261005986 381170022 164260254 898873145 677656385 400839722 38653880 418285437 775835347 99048687 281954959 993494329 50499152 164674483 680344690 972396852 641777360 98975738 381756806 209290845 8571270 210974386 889525309 963909522 913349583 775339758 473739813 958240277 750931634 273454200 675919843 791811993 187065226 885124041 68143422 655836523 174380921 178452836 981650099 476069273 183601399 928156019 899509827 740970899 144658345 90267264 858775767 428312665 585685800 865485573 847575469 546910704 190951461 758493779 406201439 220646846 863218328 131696367 35280112 326595235 294036319 87866869 97224288 752595564 150595877 775013292 298798056 485513687 180793888 309887671 215989478 140452388 608355189 901179266 581045990 133923679 386639392 10297942 453460554 331854959 228862329 550449503 239337965 602697395 771986862 384785084 752494872 783133740 14212875 248953838 371036533 810895323 322017481 308055424 457710478 396589093 406086753 124230902 63290491 885158697 97815292 855921942 429879878 961907153 259676039 34189787 355547207 149295452 32916629 595375104 223120580 621577366 223476798 115001901 407517246 481062039 473912265 740314112 648553380 464754934 778248827 96907099 566496817 102536346 901291307 90729288 884863046 978102496 876887455 79027915 954750040 525733699 518275351 604231628 725799504 416937983 629017345 64970112 342920991 376782765 256870925 370837486 85400936 346657880 66844297 623016080 790581566 986496458 465259740 448705217 970132618 553308541 867384529 107590917 393007278 422399953 841548664 67205252 527981081 571119093 241779752 386331659 729186891 696815259 368083373 131977319 250235151 773169774 204662100 611062604 901908282 65982207 100278583 353684133 604589020 853036324 933466376 402223924 90497699 44905798 993987071 415678640 954460044 704294518 156345875 490856025 261960738 444379193 383413414 764566038 843006908 699007317 908961784 474321892 253002173 204117684 458857677 267762888 65082432 814739152 629309134 814685930 439731058 909239795 949277672 117357794 322070504 376875999 261123178 553793953 763083604 458556443 573540228 788685385 971274140 753193677 192274723 434640804 27068134 618985983 945634847 641622715 476124491 204187884 898937515 771105761 561445117 805308620 727966899 485587085 674118274 828104824 575606591 708129479 681759126 488164673 858753310 145190451 586679432 60401665 68276531 327750250 824861839 936362763 223379123 561334354 770745236 474494559 989162872 741595740 310727941 341144335 30443672 613029324 234369924 785902375 88681135 34732620 365650117 903995130 75922429 314912144 24474317 184145974 139260839 29112612 186672727 600456007 665238846 846195517 982502394 30945131 505302198 385890037 86138233 919583658 215970260 717326198 501047577 7035801 786554639 92118781 199186888 378246777 230508573 612023256 29332933 707521591 705685659 6025443 680214732 693953980 302644590 414066938 841982692 418233572 936653136 682725273 914458259 428975385 4228251 862258224 452997028 896600924 9194172 551417481 663286135 189891687 389881543 580778422 711926028 256145472 669533707 584661605 288580086 430037781 702430726 979111572 518248369 506622293 848243822 553201532 480305083 953227808 793625716 441283752 815402896 870784840 829003538 909457030 837228131 353794548 312357735 651231835 528806872 68017336 198008679 954534455 378593334 958807854 201097955 146237880 895686964 880306332 942129915 318756183 274206656 360722248 37675665 733288981 136663170 53657629 647831399 885935959 464648510 39684260 724595640 411182936 878815733 746639858 456113387 761224958 155047701 424146314 476086963 696453712 812337957 221045637 173134118 881966230 689243140 913229817 649153442 248380431 639419637 265082760 854110170 489518327 406965789 503915680 658142627 729248509 892608471 705163581 153218979 68711094 804377784 126142992 585766636 201120750 697358947 430830145 314572478 889850800 444821089 979303815 470462204 687538608 632876459 597827630 708365936 436502548 872157961 216832849 373338416 950562442 213835578 697419305 722976148 56914545 82494710 418392376 601237653 358545261 994797534 953670732 369921989 351844508 686777295 387715860 399417144 707227594 872479761 962966326 88246046 703608394 270381278 921771474 961264718 544429737 625094475 268950435 683672970 6363358 61045326 163557025 634267734 221775656 964608873 824648497 981521715 480601351 910240417 468460037 302066369 90366537 806061186 204206454 4384427 55957639 459248571 126099509 258428875 545156816 66178785 361868615 303886600 674982783 299170245 924102168 198368942 972062140 148006750 811726423 531137108 667840116 106393831 952161366 211355411 659952966 936456947 850769488 102740406 583877083 592191675 259267170 316049831 919170928 980937464 686302073 759402805 845562668 213506252 636228345 885666248 962647648 296665619 900256749 637685966 19917069 500812518 714211905 638148564 151727206 868164646 672563409 910728772 157939340 252106858 614312685 870528328 710690387 129165919 440615716 522090104 599186882 123305524 35311380 707332690 325887222 518062130 646569567 885778288 839037408 728248951 391411161 435927321 645192387 560473035 321889206 419573940 742620525 393698295 100762201 365823342 416681427 466210590 686514249 998360086 159364702 235206409 653594611 310402206 282082343 247955339 115245011 944925790 306165258 985970301 652045138 51297932 176847851 964645352 660180066 651515892 632562910 949293436 334508308 306546140 670312286 748659604 493625968 127779736 938668864 151294076 750605603 691433033 168579741 104900181 972372948 94620846 650879158 218775434 364036500 120349644 662354610 907247367 898836226 513827665 730733231 571554381 312158931 915600021 873303413 579590249 631622026 969676398 529486405 963094724 58503161 409001551 394305921 969328780 979904715 169585999 645575938 19643497 226511443 597642494 8105150 698220435 296311547 435113785 318879692 304047376 595774920 593007769 363176485 221939322 561880430 26414820 794651147 817784139 562428024 976326862 501740629 237043708 242204750 941650413 370070137 189633315 495513891 132587988 458414489 182993200 752701735 565075394 237062498 835125017 936745971 874766242 546528135 855498261 965071046 595673575 689984469 467330417 2728557 872734975 6776199 830146951 67374354 840787713 239863531 943414100 431017304 148081091 513928790 689172002 152078929 725370041 149819101 282594779 752837173 947497772 677012028 651173906 806457733 850940534 402112766 548781267 479841426 879582727 406904708 260360746 279319586 846211209 20111940 40001336 627403424 18747413 134773682 118324404 26509653 398207198 318408350 622750714 365408315 941672572 379883362 715092540 571638622 700042660 606331322 571536618 725604292 491817667 313357384 504325125 723544938 950865244 651030585 741663929 124140849 445687928 255791179 554989216 47832 551872873 505520067 10726105 198710455 246133252 657139787 854299995 159053933 540747367 336582381 673669467 70671362 775780330 613492079 306337131 766843730 761635906 869251275 723471276 838367404 854959775 272798643 780302818 932124702 971682695 668576110 881099348 850139241 988273810 652226008 617298590 37139988 409574791 515607298 251037348 728081063 36724606 443929583 96086793 927610238 752530505 927571898 359274106 956534330 899656246 77375042 543485467 278820045 264954035 522475692 682519284 870933159 349144439 181316698 537530129 736636385 695856854 201638120 830574497 726301752 917249830 348213152 432018757 526360923 244685096 640844272 197072200 198965593 953862871 712818138 717011487 187794227 74185448 994003696 665746549 15468185 361559258 139891780 535631894 377987101 202774955 418477002 483480558 906887984 480079453 373438319 116061281 303214191 225542174 334992072 577277021 657793388 780712801 931890061 36923105 871697570 902284639 515576517 466633104 715573314 994995311 614298090 94759077 439591171 692403780 62507422 20772968 263648645 640193037 160744581 498608829 392087361 32792391 402123046 765812520 190012703 139412561 612996745 33969943 722889317 305381306 675788330 484010547 595580217 646169338 12491623 296040261 674924239 198556613 588819197 670453235 927538632 329480258 45298143 633222278 805892870 317425193 324817269 310643219 683530096 854872934 759171520 789060471 479334628 543855781 36672643 669108877 972637719 883175881 366233189 784232897 732254792 998256395 91289382 720491239 740667756 157778063 965727968 942807974 616435307 828890141 278115502 561340619 961004548 808598096 541497764 949219969 959108918 173602598 580184752 558686365 936858290 243303234 793671654 620938736 709548630 566965404 379241164 561746022 18892200 629825823 46373264 801340478 852447070 305144122 581384155 765469388 524690089 365579503 718581016 272845888 137941190 354263905 831372568 826745536 696904858 215557084 671770753 594191561 932106158 505905706 368376879 581373414 239727060 259428529 279034013 836066438 723371032 924440050 34485555 997477318 349193977 565799864 930772346 990830322 898244850 805284288 414745936 692489923 466546699 187599683 942825530 276033754 743206410 90087080 38187728 510085316 894966828 977980178 476803171 71336095 792597324 266435184 354658159 866760064 800763591 979731132 267566794 601145930 171142816 460822706 891424704 91951111 205307518 978261308 285954359 207088809 267018648 34663959 184399343 604450862 893165489 767827191 201597326 54670771 832556148 939960388 450315031 197432456 899301406 827331308 225216501 219002881 865673193 466067798 524010604 59103987 848013766 416349332 510124563 409057704 922878166 835108795 698612460 903768350 393247354 590768479 922097188 753475885 132531178 862858466 35797051 930327897 889680778 897145076 882260218 130762092 783769849 192950577 449326473 810536797 996696723 528485464 448257677 562239485 786548542 140163356 32436890 23125500 635012016 555018204 883716340 552575429 57782795 497983811 647389239 882982985 211035716 874936796 840388440 557736713 198423513 789480002 676719202 705686140 433863979 828349284 540946051 585632406 28691917 552400440 315822683 238953039 884710192 412144515 477431030 559967646 58758613 641994343 251186146 318914176 75170924 39439610 902850407 65177262 386775712 593792331 787147587 95719300 264118232 304290960 729207050 984859285 510545237 768931947 441661304 842989314 882941863 114931480 360740724 889284428 339355169 542385264 582750612 321890973 604349891 993269789 126164949 443161109 372481694 443674031 976135176 573611727 464879539 191523224 764921859 565554209 833698771 900403688 918227953 677146592 350000034 421974650 429338182 45431294 136508626 870862000 719582225 661205093 996306820 835343515 844734841 269377788 224480152 718740478 221026286 949545929 890024610 515314417 87877414 875749334 945750615 171519327 664778935 264690619 941727058 251689610 333081270 452796959 867455421 933465721 467350696 986912377 41122470 50244956 953168296 817036763 617350572 937142797 326328994 14436250 37527904 824013230 830153519 234249989 902048597 97137968 413533418 118044199 703066751 44510175 203949685 898575230 305106908 540465100 113080649 943173202 912676648 678702317 936324485 442952017 623129145 739140320 73257897 185707514 464593382 32233945 548583258 868358438 60258412 680687907 765526760 456243031 43121245 177407114 930561967 574609875 329775973 477285694 581923086 399458837 896301830 671269231 937523013 458630684 597342797 397482710 846318412 528073988 391973730 969790331 37826501 300407195 172724350 289540970 906293599 734754971 856408055 199628799 321758082 821825960 378600366 544713468 619631505 95764007 280988315 548893323 747193738 770140981 163175298 433321508 618146883 259448180 9465093 284140451 683791001 220251726 802077124 835778541 505766308 53311708 915900802 383596311 72848953 734404548 335979144 436291575 675734460 436375139 695004597 171986747 989144094 174714179 489227232 676386540 282726970 617863269 152567388 251102554 258494854 197836304 331147975 553957814 720099621 826823923 974492909 194356122 934839416 659109326 891066183 329352195 164575921 321487250 586262532 832472415 884498787 92355810 430000250 423667652 844189618 160375984 68932073 274679370 931793707 132886893 389565202 860792270 489051671 811724267 967761934 670797225 228007920 365812450 867546028 405466827 496423154 806919356 974957264 240070262 706204557 511188717 489389246 106803958 610276707 450783070 401116720 473568505 313167903 165819904 138450345 437001950 348492343 243186795 800779804 272248509 457168475 903704825 626876601 615978444 733943784 91780722 68426762 474743286 606221732 248795965 187158405 503445289 333977285 630060222 522499593 850391548 747470607 347935678 657869841 288493438 826563519 600280460 760957332 574456489 169655090 176486254 16010222 155726491 885234329 333748142 44394564 804852648 743830300 575539731 994440919 689589297 740384784 255557742 515452436 790040166 816763590 468089226 390581728 286901118 371907802 732293694 780128602 193096657 877555454 969452014 839417317 212106888 1162702 120140686 823452269 565637721 682401852 939720757 268140246 754387929 996656146 62330517 607554505 514489638 858052717 286923483 53212762 410663487 14162498 338566831 543850356 309351266 773184274 849303471 772843354 611176042 501236426 113650951 592814184 977733091 601191491 865110440 330214508 110667464 889239275 606834400 313689393 597783556 186177884 183696142 746313184 599155776 140075306 120074312 353942399 973733539 959582398 197061654 88888574 603961354 791327416 59591815 738979222 568104535 67669238 922838884 647367340 713196743 336341520 730555498 773621311 885200167 524953068 565548647 800345243 488524065 279121579 147297898 77485165 217770146 174761096 531003007 447241683 726817672 393604056 728517463 384132134 67881214 490345049 392149363 738031355 830662280 82500289 1257481 798251328 549648921 567211379 170816079 268775117 394071338 629180415 448310046 594970818 840605503 810441718 926265908 160530779 807270416 469603017 256881094 919020305 8509397 633009073 256549685 223176590 436516831 808699307 676254902 311935406 590872671 182644418 46485733 783244558 242487049 619079372 505705919 92585813 733220113 57562878 482834371 454828382 533364868 325803241 518516064 833639826 972159732 899152456 949963893 751942340 124936112 303494428 665551972 438486638 339340465 752291753 374595725 323807879 114742191 161454350 390047654 206035763 153814627 568311462 144458902 274742125 248775890 392449381 201520537 359647405 986451725 181386187 252956854 939132095 633042204 752406199 965066077 956583561 630780085 997221896 246830492 363219523 931648511 629779765 768279473 236517337 616356083 335464280 863229670 67466152 60796940 496636545 129701773 457337319 604706994 870963877 458004460 348023105 84121435 677219183 668486296 520748388 181449655 293962600 619331986 652299185 118138429 676772462 444980408 969017338 682506676 853488992 12567519 211365203 522128358 473390467 895823352 523127312 580082547 258912839 513985374 418518857 56165315 597411049 822306975 806353009 345068322 540143041 34367662 354003895 870297390 908617189 141194704 489880521 108805903 89156482 792294127 146783641 196748640 325857816 397546040 871862460 910300781 68947992 920518091 127046721 577636966 336119352 414755698 105972704 858593921 234825711 494136933 706346132 207492205 518229903 331733662 25666390 255105770 350218378 327434012 843038714 757567585 925089198 703630905 812483118 15568177 903050350 312824259 330275155 383831252 382600191 658124600 180544902 744264101 285567462 108596555 218389194 582166310 941124505 892705331 341443786 505914728 567598797 210196694 415496776 638311104 360126061 782138259 815786066 108647623 927392872 20214371 154782130 178389872 850927744 347703508 21118576 77105200 920972704 788862488 156695180 935642175 301057862 107361507 778627929 744446956 844329576 34513552 773740798 54468851 218775808 421301797 656970242 946172966 817654066 297904025 575290019 139998346 208295247 477352932 159522408 648084298 436176302 28776203 850302083 825019090 822752244 719651505 687360870 461998509 884130406 793579074 964479323 686456130 508288053 44391688 953749060 735557015 850180379 600204440 841576505 647277136 406672793 96350228 385460826 19722780 908845044 103800970 381291393 858514339 357478560 327434368 32349551 695010858 202569012 623924282 445272305 425948365 510524155 403417369 514590614 148784698 541494295 493603911 568463546 962398492 874097374 537920552 297414800 759070268 754882208 529103633 719113217 991592251 297895426 14674828 410426726 556394860 642109179 509212893 884110312 479154059 347503355 877131369 578601134 907503814 58762834 919743614 543054735 541183454 426770458 155883553 936663408 983475376 943211777 876892038 238749283 280566598 569501783 839188116 199671204 113080447 634936027 243204321 205848035 897379111 371243597 859791527 120401838 706307287 602323410 236238441 773614316 800811414 444757354 688182643 162853582 838445370 175796285 562565258 71599984 534370450 281068956 316501708 954064259 359847695 567865579 36884776 43262452 432725718 106611048 874762985 296578181 618835566 310113784 767090011 360469008 719014034 594017554 621993288 356966700 477099299 711966393 815438502 113287621 680590990 927481924 663239277 382943229 904695412 804081035 692520599 471828547 932830301 647242911 456218885 380000784 36239166 902262912 819611397 168804711 828626449 496130868 550956630 16670186 58008252 212497185 779011894 337521435 36072159 200086616 668118951 331731780 684118969 242355494 595327225 782976066 973995373 585428936 402144223 841642574 693805696 262318169 326847048 258392280 558792252 120170424 308663375 426549218 681233628 308762507 751468374 705417755 400684481 899879268 215469607 868572729 368154368 300824634 842757299 126763004 278638555 358895525 866822333 674698663 863445720 299050035 428257612 543591938 442331698 147464634 751780398 157480405 689156600 14373961 509838649 362737274 214194957 1121655 209633439 606497960 377404187 274901604 493481813 204365516 736163110 170529754 546342733 337643431 669645398 874437321 76654487 151060180 663774724 133041872 361621110 427720751 977333951 218444636 335174608 218602556 83248735 547554002 167955394 361446355 698677017 204283207 673093434 529178988 853558283 337475139 637788701 960710834 547407516 416694613 910372911 628186241 653599937 889831981 30490607 76952013 15431091 435897595 418286443 43502857 901447574 529869593 188708289 783067033 976149317 543166307 439559895 489505869 649409049 147951970 108553568 100810590 651628732 13542259 924274844 419209124 428139017 555331236 301233882 430348210 191326536 951291711 843430312 827634069 816135787 715093898 112164448 256976934 659944301 299705338 404248735 70223554 239675883 865778209 702007405 48211866 608848114 86090257 688763696 535721324 63258342 245465613 498853111 81182874 341946768 665351596 104342156 44653992 91783390 399944172 664703774 523089454 450996730 914632147 149368845 666236346 105677781 393904445 692851671 144117726 901379938 334569176 500487997 219425571 109146748 864154080 854352696 890646101 804826779 719507820 184952691 892461592 86526669 32480274 183095512 682072682 488547131 248122563 623122258 530396986 922178746 981183654 306965950 177196434 105101118 898967495 228447082 353461633 381178192 436268901 251247584 471610953 61754265 85599720 202640967 582816396 439877130 332692692 753577135 696402609 120266856 986535644 448756905 469186235 682014087 666013877 462964685 247360377 817382695 734155410 787940129 321024255 790566198 641542432 788806345 783043047 695170566 932611441 779791673 489726397 168899138 467864926 54628071 749283629 197345687 621513685 164699088 573166130 455761551 650736245 367548002 286509272 628711521 431038502 21204262 711569147 940924803 532869633 177262230 740937701 194410978 380885249 52208148 219809352 571410488 431105382 65330321 604207530 718500147 268339788 478083395 741938404 700091079 856158782 346539133 248576394 489236643 248088453 679974152 519090654 833624 759986040 416746233 910238587 239986216 823994573 634206431 462818023 38329849 768482600 133736783 714509008 118097392 347102897 764977069 2070581 281594993 819913332 39030889 185457325 334571494 723302370 304595734 284552632 678546681 128859577 574249722 741763267 338597399 501335310 87995439 483675368 923777492 556868929 880823918 561887116 419960641 921242570 836568579 10398967 171149856 352969375 94085645 572724445 38184317 219299677 175440764 760452138 395978019 340367403 490885905 151717503 680256597 961640408 554009968 604684755 33783623 326973034 508450235 135152671 64631358 466320236 463921930 919982523 315620828 285689218 916065599 219353920 972271432 331609066 455999017 705761883 513342433 513016751 564760067 720769091 758922799 876578977 924102171 871184258 759484686 429134690 4166632 715001378 676924491 294459636 613373067 480528200 650901566 333038352 881705167 183976854 191865793 614835177 740099724 26834032 693897040 613632104 59560210 422994169 514418298 54440358 10950892 309974567 935465041 933533142 863764318 329206923 415231133 883173398 208308616 249398617 134028932 929756019 286569695 346537170 817590181 811816892 509208361 466673408 132454150 408449112 527929467 759808153 955025653 28775926 485374237 599413557 10162558 141710129 990109126 814595475 138483849 328678374 270596373 145841277 631255056 362149885 765606616 385103509 866827485 76582908 734565311 301066481 623682628 865387173 694754384 385923571 707657073 226365140 998172114 565718103 99002009 175252562 509566559 292750875 725036041 959522212 3254367 507272623 511251422 729672037 86552804 985976981 877486932 490980364 685559325 17012835 684393096 480924621 555096071 508876310 732932049 312757802 188074725 419791358 775158158 256714165 238333895 662791611 509313942 637030590 725005417 881363804 523781504 454410684 491749689 167387322 392156478 180651966 621170424 513637126 577444498 931913332 699987727 518244448 21902564 742429429 786896515 301555462 34030899 881725460 356688381 224997497 259683177 302362190 45844788 188387551 671377390 536512866 646093096 835724925 654112942 872506279 230920852 16634644 486996179 855984934 139481898 7386173 485796985 272273974 13896344 709377313 175288040 568214551 76773513 525043435 62251169 717258462 274985005 16739223 216907219 398344455 483026172 579481063 40156839 277902534 391550201 472660001 441084245 248677779 177731422 939089112 627949184 545688364 27316512 459085746 97351901 970049396 535963935 233788160 58973089 636209036 531007555 361006675 329322179 64645543 105475945 21395060 931770418 482574707 872102651 368003274 507512100 190071959 67099212 373732340 382224028 437248290 85012752 950302657 969188286 695912913 797491785 280400439 379115544 37666652 928362895 812318945 702287351 204947244 691624720 95495365 475408378 299522953 673823036 596411852 174681641 173766357 992662388 304516037 273979293 780581857 282372954 706941760 89816863 972560566 354843009 49729079 115565024 710886684 254747435 723245684 122986003 238618138 703467634 646959247 88567481 510559617 848819087 956610375 65302043 121421443 771939855 493570584 441271756 829341105 465194886 633931723 687626435 742253665 338380654 443101642 379034730 499733510 690741854 210049184 537987714 373875817 905869173 203456828 359007207 132142057 545173596 175576353 768718571 96637633 511735876 224891400 498729741 762216859 511203300 286692370 526838225 162255176 473279863 87007768 805500013 975291532 93082640 597784211 980275631 5808120 105966768 60645590 537558446 593253912 166250114 319080928 635725499 791105115 846423764 330283301 717514280 551956947 10702205 348606844 740469171 580671315 688959721 85658373 281115259 111246260 438942235 332363161 512964060 519391303 835614012 585397707 430757930 542840626 752625019 500918012 650216259 155711074 17623740 653535365 284978603 732753807 350228038 307661326 141092663 948880135 903062105 284374945 628162700 838353347 445412291 972152184 230807877 387243537 558245222 50040809 380072211 243394756 758492615 289090441 973387432 957128367 547998500 615378029 31784327 581716582 335156684 129438155 7402608 270347080 253886410 934845816 970962498 362023657 32358245 994111719 446140236 211750279 288009916 93099624 564869326 594299363 165262646 798424615 795978038 867038568 171363207 814059597 488346397 334761891 987174652 235584007 666616730 918710674 210370702 566127465 482313487 607666646 453924025 687471055 967862082 454931427 336523124 115212185 594619452 194691452 595508821 743031606 676179027 532734266 190787738 771046152 463619983 274150873 174964955 171717739 117429132 668664714 922917688 2426533 256787679 639721211 843675318 757697249 915516205 640928841 49068081 576274523 864174678 583331251 908505814 789288233 428223832 257372719 668546202 365846351 251717940 517496039 941274859 250910271 583137268 248010058 888449165 781455111 466583130 581471012 305501663 607951262 925265370 940281320 630439510 847883398 819932455 690297986 551968596 474006647 178636377 716676935 8663046 328040869 345522337 261867479 235369603 106494498 89585078 501944718 21991991 926449259 283352722 807288306 761037278 776496314 649267582 452454902 207958306 345317476 760598847 569240229 739820175 701857531 224714687 161222303 525918433 360318569 601136191 328201475 142691717 514871827 200311918 905821078 888363079 217860853 620010881 553421052 756604861 187615854 156325066 962612859 149196044 900950318 27102263 940750260 472456977 369342310 427518866 950107590 56235065 733558262 854845735 190179977 564276584 971582307 842814276 370979803 718795891 150247201 529071007 262765028 640653466 509737189 331549210 454648709 542505365 444018754 536195390 34183659 46160451 612886855 982783444 844606590 933755350 571363835 274545569 1225702 540678798 695653695 971039181 785555598 976397211 510028601 866272762 342709101 260181780 510322029 525204927 425736946 68791324 865359654 993547674 691755594 227979632 591793585 658146261 800145232 337859217 470535627 796002995 505679705 129177931 84621219 230809710 303034236 241385017 416073264 671068015 752576603 110985779 585010913 841147907 853404372 391150082 680870148 321507540 972448921 522092839 409584759 189619753 726473576 776760725 770411490 558791567 468375120 379620490 365653605 695065236 593901669 760465030 631823729 41224185 107620507 471808574 659474045 906051936 120781958 603790590 134622373 191203210 293777666 345079603 512805929 387924359 882886886 557301791 538897032 693519633 419892658 813745507 519293606 195115568 905398286 213569878 923896233 365802687 128938254 306890639 512734359 153968231 200441897 140679736 741720466 215599845 167955797 946766381 488415070 33080158 193229135 819405699 51965815 183564634 488417858 551680783 491114132 620339180 235075025 886311537 928237049 372145300 609363197 341793499 657508572 496081899 872698954 800271338 411637876 753740684 649462578 577520055 529583146 515525917 368297350 569785932 880284731 446391695 759029221 143629291 153156399 390745416 569728405 145641186 365738895 235958907 794671536 200765720 938740802 638870799 862256750 253267669 996615199 14756294 345682417 127584349 299920478 333748128 338154725 400112068 989829083 170387428 491443624 476002507 841106082 462532094 397821461 947051793 838294560 560620751 271970307 911565672 212114408 126274373 721590753 901480481 441211958 355396140 229799162 538996042 235165711 897696477 726016386 262914564 317706075 45091577 830562710 893478240 26795303 348743410 203407287 470636165 243845731 537298938 546166181 194813992 118420474 909656692 872094870 757148541 712348507 823379511 87242946 619762735 666011075 443500294 596988926 754881613 871773110 915013066 985370743 52966904 617372535 731279638 592857203 105774065 133166720 797406138 68486862 640856297 690212401 93797852 635173389 995262788 702338703 653060214 834534339 438253787 352168415 482488414 641526342 519262831 335196847 633161254 422327974 854121045 673299371 492939955 239628796 512868359 161171044 278893645 381370326 759576618 822644685 598206915 456893875 328824044 592788830 760598622 448687117 89591338 167189154 360928794 250716541 269587211 58392414 495320054 986487369 274055801 486260184 370811863 254595396 820461342 134351636 929360875 932152033 740252390 913379114 38748246 775880260 8398498 179612446 706639993 821761465 950881062 891153898 430299680 437032864 154162037 468252869 945606244 289070005 61206770 672278676 639542861 547741558 666217201 1707488 226833227 27116291 472409384 717294597 238292856 536944800 852089455 770469059 134308357 680894158 986599475 32830371 50034892 57127333 366400367 596815398 713406511 567751978 76725793 431153243 349614243 69494848 400208552 711957065 459939479 875809977 436963011 595284177 620265329 203497872 985345851 283393029 989104113 186703060 877679594 867464047 62389279 339588868 461186151 792976060 718355978 902927058 604001669 906550734 635101715 356086239 441003235 434702872 291571776 674386317 806823585 623129705 453992397 669855148 810783161 363369237 420165326 825256213 507524506 253098692 678210616 266093682 42130598 908343382 369971537 273857303 839835673 985540465 117735246 397624673 714333289 229547572 73483339 901060448 317173807 477145524 966183458 16612678 196087304 187803674 327601012 467694543 396373078 967059694 392102810 73756059 340782453 438519019 844778650 848225593 147158275 622340930 85405006 826284057 930780462 726732470 118131519 62772018 853559871 665762360 573855074 194285102 229486796 644930650 408237286 350868819 734565463 664666451 950510758 169637705 467630622 594425948 114369221 369167308 984596157 443100523 892348954 350891598 630606888 722734829 355735386 243876149 887265291 90469128 972142996 87644030 640448317 513727148 849670481 659302600 6340589 900602999 557999485 420227558 245267616 14581079 447287296 659051138 466853468 419169806 836752307 674771937 206854939 854943210 7608513 733820963 609362592 55593122 922189892 146056325 149103807 501397230 425651445 14935972 925607455 130781731 335701236 467488981 758228075 443445247 153248700 287620415 227558920 903581804 424696773 702134780 505168378 782052726 6897478 80810497 548315261 621347126 179280761 836343434 683257399 5767088 310725735 699647165 63392437 974639798 253894898 417612703 383211245 446569133 782868584 661683877 609494497 57124389 693685292 39631294 978908235 513500841 673172150 192803540 469496033 261671367 772394908 272947703 708840917 389157170 349093276 820848622 261530270 843727167 343149228 450050989 599971288 62730824 292497461 246816761 438975201 974530360 902467182 920152256 858848610 806349494 350367615 725383984 707395490 370874549 743207863 323485372 568875425 95422548 214623253 566335661 757725112 746623408 551498548 464139094 439434132 785838049 506744676 631905235 118701145 467253479 132155044 557327199 6531202 481024135 828165096 460310617 739149624 244080673 752025632 263561098 990010513 463534958 823032953 271848193 970822726 848046138 346206673 525648664 983148616 173979888 172387265 691258701 885103592 344376744 175609158 235478464 202258873 773172420 70102942 878632005 577980172 665687450 629285526 484446233 221848895 352893432 569029613 602084425 824450119 668734102 315754012 926442774 441032366 122847218 509398807 721124478 61552205 990690285 466105568 783724166 174573108 889903105 557540697 180383050 717795440 376131156 769470166 905346836 310527040 526915988 184285159 825768072 733571321 968938542 671547220 950771983 330237784 370218505 657380729 428074430 254101984 506611704 2763752 430954933 154485413 646575873 853769538 218893910 391000334 256692091 654107782 950765239 393561409 683142657 487853229 969333318 401603024 239160496 130489360 899989652 770251510 36221413 692267772 198600893 183306648 791569486 859035211 157963041 658767011 299568108 198216883 678381651 510978209 300966653 453864472 714007861 151600137 708958086 310791599 126029709 897019666 996164955 787844015 279061467 765664200 551676235 161857662 671670351 345481875 668215532 992103262 973039240 548609015 54547651 528828937 612716522 149403761 234238548 759759676 223261066 660667355 545304742 211335944 454003843 777768052 368914423 619106131 75228617 114921578 643297526 439228264 171300598 603513439 793068663 858741350 527241573 543818541 898091279 437759263 545233527 65085213 560247880 549888014 595707247 592256289 756674577 253563931 201129343 680760382 437762237 930847938 118788370 178014103 98014548 455604714 104183166 930042627 99530370 472729568 720667637 507036006 774981049 302823268 618838369 639586379 10671129 391348000 162714585 967134007 509434081 120522436 430410386 292415822 194142906 689157267 253846705 891390471 46599912 769264540 543631636 111765208 103447646 376228855 934875987 481690977 39861151 445778608 764752441 438068285 639318245 476063338 296250866 723126635 109710941 383646594 730880937 563481418 301932629 499866713 526499052 904305507 971478253 108617242 649098933 249624583 109627232 236511220 333925748 373501707 415418668 692914677 555789387 286180668 304557127 27095116 607232877 77513991 630806590 278647797 285556491 515875222 881027743 951917063 442014144 581065068 281552116 775834210 295089575 443232669 631243915 266418699 84922058 591924466 567855334 635393206 709986761 233307390 468881750 172498107 340456346 79410852 171962264 111909982 201211384 765884759 36962915 44526667 105363054 194377858 773121022 809986089 592021724 686385825 673752420 463096582 203976156 234334628 154324687 896175470 274604654 37085644 542483200 102293413 102221258 453010753 90569760 184368417 92672529 57810406 357340316 355008481 771870086 290711087 740372811 58931020 889082619 58722479 374624668 556911144 979023989 471384460 280948643 41738517 296796340 865554252 38506666 151648605 478971634 944748852 742703116 50234692 427751607 482845129 99973833 757456799 866268524 882826048 621918544 640565144 113696448 349624880 52806288 655144216 485984090 159747174 116646842 436578121 868270882 622424373 670379009 412420767 871982617 717479081 324987605 236773726 773291278 943362300 189568485 178272408 541044256 752951010 288807169 394549039 533343275 332912358 73957314 581927129 92390762 393759817 107402614 579024093 447531834 639669447 690806133 640353219 728155670 6986857 327692629 103189354 126615830 422659255 4682824 679126242 470367250 289324835 775816880 470053572 563250454 750269015 592199858 841166796 978661025 932626883 364206818 379483897 674415230 854013959 13254036 113295865 524830037 761043171 409403275 214745763 202071200 605850299 637779382 909995194 149538149 441648443 977111555 560578292 985143580 715244212 678420358 745314418 429038374 402021758 921964050 770651704 617469926 27474446 12413303 651912853 764543952 519876905 109483194 791892890 58495550 327864484 227327642 223038805 814580986 172270866 537800975 455935782 687220327 49403780 398148899 600090464 190472172 507063379 644074303 371061366 190263511 774217706 506338620 75660221 750857651 111866405 703882537 299944821 242754148 171499462 125647632 645118440 869082883 905023825 118629476 196940609 213367152 477284573 271001958 102015713 593664947 146837000 473427264 655418543 828709778 935354109 859105609 945747442 309591281 939055957 985365670 822001700 718638272 952777131 292430587 893180354 455512340 373620628 217928766 828868593 736768577 920094875 926564232 842003151 556671279 68002881 337467368 862551439 687745230 362712674 103876889 241224598 537804143 779740955 448193738 38673192 17432590 254725969 775718468 626782264 707224091 700229367 770277563 418244271 627001320 58321269 834048783 146010225 711280058 191109383 395440083 441111486 659547373 101605364 932369767 423653428 627284151 536594521 318464143 996428776 233069005 492755814 384086186 712067396 772915674 966107604 113759236 264987659 188215883 409218424 386237033 883198372 413213071 522204509 884961230 156591337 166770629 182095211 597616334 751182240 35977025 882705340 228838482 547219189 144880341 47810017 903535925 804536609 703534019 74858402 147560522 556464868 668123096 20641258 747864916 918949439 535482113 360730098 97707185 814468826 877744436 970267864 91878123 996897042 343665283 121078488 218833725 847074066 136444096 110450084 468867091 15662939 324742909 228695618 743642484 660208906 620749685 416899770 634575812 85659584 791010391 89985268 219898451 901303505 71324667 927007604 633548487 662505979 66190978 384128810 603738036 162087388 137565213 36265187 772098391 620380250 811842419 9606389 204154330 581101990 65700108 335689635 167441142 280849155 382099200 764506650 414308747 660325651 366844736 625596324 542741627 254388377 551129604 910677451 517562465 908690807 767684923 786006168 230253658 351029819 897128010 572481999 618455615 223185500 109354140 120266717 576724715 693787605 896666593 516615313 130092659 329515637 225029583 441626920 699387124 793594975 818718916 95213474 842793700 389976440 488154474 956177933 843037558 414203698 592842797 240737705 528689168 670007763 948093960 581933364 69652394 535313753 295766702 744848019 856870276 874625031 843107485 964798857 771598160 648738366 63710447 119440221 59706702 822572608 811597437 823582041 43495884 286875917 966305947 433361917 577927949 527283928 481741990 496785470 722262769 134125669 409435724 81217863 103907610 320845249 313630977 854609917 589290543 22345129 75792862 33702317 856663919 504997110 647686863 984476694 353174176 519571729 452342495 170918874 391812261 755524712 319844520 859552292 549530276 144726732 253877057 857669321 583334032 274757126 365038121 915058733 951954902 429645752 38773008 51823565 816454831 309565167 829928325 670791123 660348455 259887262 904863095 119311930 502855215 607196859 974758413 639721020 231294207 416120416 380073350 445027510 624361553 970094246 774023446 530828332 72647660 553634710 38822978 714702796 931678314 760886230 431097970 19556741 924460472 371465992 315286971 922823388 910234278 997030786 328396215 972472050 556298615 659369370 188788609 129457698 244087393 765104845 379880286 208845523 965876037 963711530 948634948 511370631 742257001 490393740 506970533 442930840 621167678 784965704 840281299 875042852 582788675 793498542 867021289 30148800 551816715 171678625 987769318 518365312 87581030 206201027 485756015 603071972 343984859 670429928 184202424 514904385 398602203 483506304 533011446 524318037 585827746 499419247 535688082 671617946 919423569 225574124 384190523 475035103 291023475 889734024 125395229 728484853 328587778 703697369 226400337 943867899 441556845 579955349 644118163 260790917 258908288 895031421 723214371 280906059 631006577 138311596 887013089 599456274 100846246 431554057 733393444 304549776 695543313 719005571 310626649 957993560 406966080 271442641 728922209 799846432 625969967 702241245 373252913 20159994 716363188 772022344 150648422 27676948 878988294 801670805 779139357 524184149 59053287 320144135 665105911 128071718 330728984 97972000 544980317 624308439 48692034 562093779 847997060 748929266 640812062 666290657 62532744 768197194 134494624 6717375 172371796 276412165 77902167 338617822 821084420 145030319 744215958 210905347 976525179 799028024 723826225 419050664 822806117 590955678 412456036 603486419 324102307 669999154 412305246 365369936 173669239 852050012 168019783 716924579 50629828 219519453 616131660 578304551 296663380 379968352 506814379 755377342 794154023 894519726 577381439 240856066 911453863 992274255 842171452 536543353 155286476 837075480 615955381 660304145 945471949 977696143 479020969 451898580 383995208 772698431 289022321 32938147 277653788 359044118 224959442 907214536 73849542 791244215 240019990 193889406 183426021 967028017 268792391 392432235 673230824 373041098 85157245 249085091 731436770 305637426 810362713 306072125 503195862 964273996 258909868 433204958 110312643 606638718 148662880 180523113 153331508 437365383 88057436 735911557 277185543 539508168 282902188 418115865 847903895 937576965 366933396 623612118 728944962 147771679 619852613 565732968 774154897 823392235 538397552 448809824 862905009 153730034 624216144 884141838 937449746 245768001 654707030 739252751 416500208 287930226 415018733 828635419 463592596 152440361 327735184 939796250 839239588 982469160 155164950 604000831 941321212 204359312 504606033 423372922 96463371 118118695 81036832 366263201 356181955 898549571 364228077 184559987 500464625 40292836 469920867 355436915 855950454 69508884 897419415 287233623 483168609 613219198 133978797 734667545 730529930 336529461 413118050 83592574 210158526 536170446 591915657 216022494 958903499 106637230 373785751 5462529 984135987 320568814 744054823 588941662 992243375 402474391 112329792 224569342 418279778 983615899 851411131 760748151 60974167 193258636 477176751 725028747 774735356 266166704 721910535 958076505 717031295 710264378 78840871 776691097 37749591 589056168 912577517 141975992 47289970 670410878 565320532 858483529 7106631 482552893 151029809 632472523 124297131 959486175 330672518 610491955 842962732 320133723 985516205 139839348 916718931 487785233 609607631 363087770 197064435 16778851 467514554 621692376 632467734 889974042 190730498 666924122 991858580 746270664 387683657 59645065 686512538 570839353 449837332 200565790 802605114 992989673 122699269 427810193 708253732 916371772 864645659 985878227 236347121 199489123 165163275 611784622 101991976 457139409 467495820 638882505 107316646 439111382 18213049 821809218 81041893 357381037 78312151 192672189 524932427 826145045 487969696 469420573 362223893 129296210 477216827 469105125 506750393 616281184 937695438 180296066 921427997 210032416 117176018 219461028 760928596 450631109 967906157 699838856 695429332 646342881 968840873 239040303 911421842 391908878 209509164 463621061 489866362 822566644 854388966 486900562 621128332 382454207 756028671 602559961 192036053 780068788 198053351 560435511 696809581 506625707 271573169 427117298 606782425 546475963 722790138 704159222 835605066 41312228 511818993 412860277 587940834 612016555 31299747 616342807 644046310 60164021 517858991 622954839 753752659 149190830 102087220 306558004 86660767 510884855 219639866 988107442 116960219 19282115 454970626 12325636 966697572 94858800 22965733 824042266 690377426 270501673 185766092 60181190 489199848 704745189 476287409 706743097 413315630 128750587 771434996 142788048 553407141 302484476 197502339 477581610 296714512 419412256 261932218 675620667 736285969 623282353 64781218 615859230 671273095 421244534 186858843 320411766 903972927 381700035 756116500 69312835 911981184 82664051 823502548 330054654 514944719 393433116 266486817 478465349 993900276 379904413 119970610 940762111 150121517 481609840 44122824 947602808 667117454 673032669 631938691 865642270 301648772 590739794 475100531 298266056 727252567 572142496 198658711 944571834 577565013 86792412 388343925 75076239 607168339 166475176 225552042 592163803 238246707 583099691 690530938 126802417 164461231 315760630 548665067 864152468 755147101 790517854 286803787 827491524 335654781 339850995 199782917 630468572 82206302 536158280 268440045 169863144 97726969 816605366 56138467 819797953 452330739 312276629 949074572 425615862 226264880 98173168 529166257 56840972 528496500 650384177 914071785 217470590 111629200 219545166 216589304 353102554 524823109 821851314 110421725 584572814 208650729 565567982 287813610 363109570 183296119 732897783 546720545 9693255 549591339 106594758 802022058 932685789 172304359 415592634 433669704 94639755 544157007 605978115 18861424 855602828 776951770 71138101 763602410 514694671 424723472 407160419 935399407 831422061 627876544 990348526 729091541 909679389 491625841 172832810 553550481 902606458 18798842 66098514 876465720 950383403 478432407 155537443 185083851 608803473 921593098 27327933 365152995 487822934 715736794 32428997 930755100 594560880 504691413 258188245 974963859 596252960 529488975 566777324 261717904 814525591 228284507 218359042 786830429 513160054 152161954 227026103 214832456 633838953 412965028 736551794 615314448 185202114 457800631 114659740 532143518 151357095 973627525 379704334 527257827 419304732 447410431 91484981 708765260 616783665 898524730 110747587 821176019 288002183 249317255 693480074 702997935 761519114 817645134 815667191 652033405 900030450 761550544 125417695 240151831 796947799 842300451 315792051 261704423 359803403 282901119 148056341 526967552 645585267 697250583 582928766 710492398 696668132 322446210 761481875 704003515 508907037 339230983 682936737 789214025 251072648 368583885 23617444 830892458 591102738 819827929 377073824 531177261 245660336 34908293 951717327 790323531 870111334 932736202 137107188 973545001 21588509 971653528 115349178 458973720 424544467 554269694 670745601 495999844 211550187 724614265 815576459 103941563 597872073 270402696 347596391 393941767 989354417 784932994 246249160 595666267 628018465 96229450 298665958 520619932 757756979 110583945 8392162 445748206 684244829 620942681 371454466 741180832 424690019 259334948 857141097 836018733 596954068 882903902 209097091 953512729 368681555 107385527 80852989 963166759 163883537 220966385 841598663 988827157 998092272 427989883 910156349 385805180 727931359 343410057 775235966 2351711 161338727 264150286 525359071 202531010 712235943 515755391 311910820 537334556 760330046 799682586 642667578 615292134 550222215 212671811 5037704 674126672 973862977 102064935 888994821 226624198 816358217 584875457 401566076 351053249 275461183 692154062 434935560 213294441 215761462 540671606 509932451 408795237 629160662 768176764 379078778 842170296 370369016 693585269 118118506 632089321 70883349 522048662 259671260 800814288 583255809 76377993 434110755 734535049 540355888 300720903 745180948 796647524 439816591 30679818 329894390 162115011 164776869 820161964 366969290 922755559 634796815 71015837 472770039 737161178 726905239 100518646 811389657 686343228 728738237 300261546 126282605 818204282 293368045 422236049 272290197 247922848 593551560 747454311 498687288 982501248 384610971 17497597 925180353 809500507 809469284 2464142 585759551 483077697 759013642 613683914 609683589 479727227 409145740 511586794 856242240 359441706 141138574 170103916 481923771 135763604 313211026 664459505 541242833 939439283 431337182 163428568 691475667 989677697 1298706 338971474 765795323 677631134 323588367 475569992 473751475 827827491 842365613 333057752 721907881 587529168 547776016 140866881 552815905 352339255 983696155 427062984 15880192 818971332 905134789 460932761 220401974 995900850 938211042 110509907 648447009 507881044 894675405 621470241 673578732 580060381 306587896 571481286 563109549 349745351 789212667 544440310 22336253 512810470 708981740 101974281 976012208 877308954 535389076 924869503 716740708 996284276 967247084 175972070 697070702 984226201 288806856 909858014 823850345 407321642 734490766 580987717 742928135 337834161 963965812 252435239 933661267 279264280 992104260 916760889 402143389 431394910 328928331 734568193 732530579 986035109 959641887 763383975 902244698 494958425 183439226 98633554 647692716 900832699 946087803 134271948 574314546 335005152 622019246 676293658 888238772 826384539 456544895 298373086 848117885 821914916 24341680 453972597 202349008 606946215 865731187 897186629 248478328 243141659 746230373 755843645 937373148 592605678 765524785 524377289 601083576 121372625 340699108 107023066 608329789 302682891 580482227 815593811 51131733 998711432 726536661 124454325 885897973 76999106 132745651 545671657 915978947 113612183 739987252 438162367 159343251 181083548 877984690 502932498 193928986 496999310 520383552 920862190 79826199 523308678 764229509 758401083 436318060 776518452 630929527 188061948 683340434 588071081 441728215 776302759 450362335 538644691 117080570 718116216 487707017 624567800 285101802 248847603 936837273 918816803 17819560 715668682 629191333 48752002 154191178 785065077 673284760 904190611 539667755 414946938 750515158 68648335 877140560 282018073 618733356 201728596 543960721 333190863 122036345 59285475 143932480 208334976 732080499 458408192 403709000 739944555 997327594 101612991 358336681 732550325 502306215 536334354 904206352 2904883 573385245 694384661 297787022 325058895 447196790 864916400 996407566 910748682 833639098 645361627 685981406 481151579 183121135 291348846 570151076 823961599 131420190 204607773 345339661 897423037 861893454 691369411 710425237 310474259 381111313 169313165 24150979 133572403 968527193 501603861 811692845 585345468 231485213 465466449 917973456 229897618 854602574 411436559 940566789 776224689 127754675 652526313 744015802 197341251 169137728 697308483 947606013 104884748 167974054 862076467 500680519 465385152 342605412 578146959 649848515 320825523 286124414 624120450 794185833 613217090 471743991 166870769 288782161 400082547 991379722 688582904 365472232 773558828 825426817 210854655 443052660 852120817 914061107 100547574 253712871 570137731 523534490 412540257 29950879 133715975 422301957 464240640 568197283 914204030 502221528 638207407 537443044 803611332 682744419 700461261 527019891 779753187 456779213 302883424 72864126 759391406 783223599 93297544 399216907 496706059 983347132 53444764 247926272 349378108 411791976 395885580 901024898 214085217 207376750 54028906 469934765 888792013 265285785 824650118 637997230 549852958 54565894 382196895 843909903 10415809 471454081 702481285 557322574 361168764 735992504 230669009 208301380 917644119 209135551 44775659 653846237 147111093 263254562 721183795 6231925 67978048 269212970 131644609 485496763 98705866 349302750 176964097 523532635 623486244 213849640 206431664 964694920 569335014 156883025 15379559 708411834 222077032 211059751 489218538 688372487 916698328 975747875 842991149 29476101 603535489 404076824 251278959 616359815 310929528 69554781 463555667 87934031 19026927 991438938 110574949 633958424 737164718 775273802 150683193 510295451 158173919 471023435 978216505 533464567 987298266 100371598 462885675 701491334 256585864 904608931 634486545 787066666 282937954 787787430 130244385 67663775 521085993 912782620 72752621 799814703 837872067 305377479 356435225 730666193 263993462 394870170 603388394 245903230 329606617 405466688 219418141 12545195 871235761 422593207 87312613 951790744 219059257 524977493 350191295 434212200 61000413 166655317 243805007 163912464 151848481 474863725 433284501 198729177 853528252 635379545 14591247 159383218 789008385 426330282 624851132 607407212 188604476 147441135 952713575 856398458 553372242 36277768 466257257 141843227 105810734 279766673 646774724 954589279 613866852 740734235 585706528 26427120 160365457 889076228 865172275 225966573 635328030 713272999 138975221 13873462 309018354 314406873 436493247 141266527 796345585 164478408 738312313 103257653 104852430 140707352 357120169 632612130 431427160 532104265 849842556 966044613 797412474 490045074 989965257 854727272 946781052 477269703 471747329 479011515 567290901 418951388 7776981 657924644 971554354 946861189 309853781 505349592 983947937 438787283 259765533 766572455 435080361 38902899 164285708 593944942 493570056 635080813 557394764 426685368 33508913 9277070 550645092 664189569 753827904 304750845 95574861 19095797 880177856 362393916 995379563 170679458 723184061 536791207 764562519 392047519 210657103 862382886 132257277 762098412 46203001 571029890 730187545 873809365 710475369 304501817 110206229 109462611 891463717 313111707 947832866 262369194 891135086 956071887 166758848 205893461 274492018 565280897 49290871 537283655 506742152 189694923 522795935 882144596 615666328 954074005 14721588 188542004 35219903 802835511 405608483 19442678 640208 334995841 958276139 698092723 68989020 324115973 309585544 51477931 22826680 97078301 419048253 154254138 41957686 249719882 933572013 746876260 939256282 423217380 777429082 802093561 97854981 280311362 493574254 218488273 596153588 420927903 613664071 884922598 611662261 602715669 15152535 592949735 9007262 340368467 369691229 976250540 927558381 505601357 721225513 412804331 7951445 39779355 464619658 412087727 181898247 954039845 53522824 194637616 532347754 95367624 150889167 581784548 339275235 818274333 747761359 634879259 759857141 399130028 640619705 294900963 471221503 249055399 415540239 190693090 216714591 340953566 743814044 116721805 978006439 166502491 763593391 984082487 705751878 268299941 944973257 121265063 874636247 30003500 943273915 447675697 91980369 720405374 1764909 50808656 126455028 22746932 168650683 345398673 572676688 148991821 105090125 535566625 728343318 60788728 671234641 726241384 807262665 541097619 592103308 293622787 392996737 453543385 549363773 554228969 1503194 679849942 976789924 742353909 722164995 961665060 26657995 546692872 435337325 626120482 60463048 750291375 467099841 38022007 60738998 406566441 731652092 823548202 511401564 722225984 897260848 803087467 912222706 954544861 411988939 503651650 434902626 96308415 762997274 583476199 787415467 287043269 225463340 543862194 812933043 561384583 747009364 562689362 734614890 126465379 996694707 358892870 312666042 647275288 32430838 514201986 70724471 64647503 777843150 158544991 2605545 752411148 716717478 10486567 989188006 126235462 294563583 748693663 112771069 940528535 361011250 38410980 330634101 29827671 542785669 536696546 170720835 581065640 265238359 829867791 245894487 849359877 991562647 874541379 780001182 432903640 919988135 451805649 438178961 689724199 512893545 585590938 233733005 850503929 937859616 944933783 904592779 741393333 549100038 187953586 704910469 398255136 608611931 388542699 34284469 527012516 801036265 591374592 638909158 407362510 772159251 405296257 998346497 572460319 476936248 502317719 265649783 208530732 386436367 753227444 180609423 647670331 492849722 139363971 376773803 527007910 954638790 925140395 777555302 279721899 88036065 216325024 986665854 182266823 729386924 837009348 95539059 817747299 33991894 211416266 454780881 762954178 888648566 465499895 230978339 890089579 27863849 721626503 823433347 234649533 879073118 790203393 315839705 572572692 613485235 618557728 688830650 930919571 527520776 272324333 458843744 194369030 487321853 781288929 685939457 150813516 164891436 759093429 848358630 59299257 252185703 574431782 755110256 797770004 962907360 978720189 924473777 726171555 827903935 860834362 758714630 663587624 375933974 103807935 740555766 863030413 20919803 253550242 872010243 420673235 560036139 834187546 999976823 374037622 835412233 837479755 502539799 128283564 486918966 263048800 869787117 301284980 468008651 174844520 890336034 522041885 477675000 345177665 400483155 237583529 491629896 523422905 888812576 695361183 585973068 791757669 57853430 119478261 313802789 43979564 993701849 355385189 269909400 573146894 621203709 996558573 301192114 61898431 81114656 290218270 647318904 371126267 707042194 978849973 641856874 276764751 591833700 823307535 578165495 395794899 869813328 582627986 35922604 401835009 105341442 648656996 993862126 185266416 530626131 630544180 900575956 881283290 498054346 387623828 372928456 814678245 119886762 567322838 616901064 731652231 888833959 390082342 824342900 804081502 462898457 765213935 177275370 796680125 353107720 512819513 317975148 129915170 26638924 733793756 527611382 421886330 82214761 563048742 610007117 203671628 509272089 422661211 487077362 943994899 960058939 164144704 485361327 252185270 280635688 287287706 892437555 786177930 202142189 260408080 493690336 496977565 898002713 973183668 906049202 893971953 839732177 855049656 311811352 678653793 623902614 762247196 286138444 548218807 778344854 341748619 573752503 142883927 560898893 286684382 831171687 311294739 236609002 536975024 803006813 809529974 665265541 209273813 731527038 662042102 240280886 427580985 538570415 145962228 619514045 857190553 683725184 375189450 348042492 321953718 612653580 186064634 971580932 93935528 777225088 783657730 793595726 130356890 202523828 16122287 869712182 87087825 689680619 142807933 566716213 664047748 24060699 231904663 303422842 808569684 44127343 397207982 803014846 51469955 926321967 561880741 209240385 123318878 894275126 38747173 247051584 353068350 464572175 38676160 541158884 265271546 643515978 44606867 717086647 22127566 391201715 591030267 238245144 59248749 628376268 796533081 393693460 320144878 945801463 204548068 72097328 95786273 120442047 962193778 520360893 758954775 629007696 354119818 321193788 759406827 105746401 954878452 408919112 672206484 974152271 917222617 502387909 436463457 724042432 589105585 244978599 743263408 256662117 88525242 899701690 207245961 92153532 910461151 512124779 247104431 272242153 172849554 591395661 211302666 360104264 670437657 186380738 20403940 999299748 965947616 538605329 164031008 4079378 861830676 678207638 361943513 158921084 596291420 566620581 229430445 488600427 488903540 426854272 50497517 335802066 769635087 523144561 884809416 843097090 648717820 526585867 69003183 124816707 975285056 935973224 181921411 423763092 889152957 17760224 54155457 830343856 12926043 939530651 548419490 269475247 377262849 515537997 647445953 767247677 364636108 428197491 784469061 18348234 64563671 685913933 832725060 561670983 463930279 115536534 537503809 567756849 321991336 264988106 174151071 317920930 810563658 267334942 252365135 637916447 998762389 193496681 563910375 908022727 220272992 96075240 842299834 831817218 238531797 298713085 733615303 648371081 948539112 137494064 50426049 310863929 430419610 212009996 217319137 7749483 831911352 944243631 444778725 456378657 6957991 55768864 473912286 662696083 884012615 89067758 226255330 15346207 480154237 83550041 155902716 839250423 666805697 391055523 884002637 314770597 682866076 848354781 609538407 285622024 961919220 124194674 300159310 120702424 314834722 522515060 171473799 225204880 613664361 725911917 56427639 539358485 150129901 618624784 336010015 223763355 52294499 474044469 352982074 221476295 453794393 225776717 745296616 215405128 509098769 837445619 471075351 699993437 600499006 684132488 842171343 232675547 749201129 508443958 817123273 541030691 592385322 445508946 212343637 278228516 574051656 456688694 242882179 88163128 369730603 363109981 942552152 488549958 797160553 839442869 82652788 974437106 864179471 532785908 308811711 610455653 401049437 330210510 370790582 510906048 33696787 105391940 149918674 525222370 927861455 373469832 531761643 291596248 375984115 542494433 554009615 88755220 433364617 604683171 433683913 768861162 48634685 199646351 971889135 730826250 589570137 824296937 414558431 22609129 449718990 892707629 403252372 724971567 604784742 731365439 598878907 173772926 93856039 994993746 375719810 565762928 340320251 77882027 712435710 81221889 651207345 858451098 911155927 17850971 490645610 806041375 14499886 610149792 682613845 281794136 13084640 324275099 976323370 282408320 502852895 681571788 691012873 841926480 659433467 96060206 768541857 895496753 251474003 317572583 766336501 924356642 430436590 90051713 169948794 205488332 331078177 766541424 453061630 121555751 559177059 714603232 94082404 397944267 745340907 230679173 888569325 502943381 341616604 626758851 415053213 296419095 267808992 154117069 183776337 381372681 986796469 485144765 708523944 908754903 877756587 472387299 884885614 928438572 819048816 63365819 641057831 795961440 945040815 240725151 480095614 272250644 347336162 693298177 200741130 63461580 696296030 248791541 952119855 554407948 908926345 158358831 473028583 903626694 283106460 831530585 583438935 980474058 860486251 270004597 963130884 588212099 439145381 386359842 450133418 35619923 455253981 94709329 102030500 953588794 154882973 902740947 132985221 459125351 875126466 440046617 443322635 162225764 975968966 528902994 575649791 320209851 830911378 594330021 321051271 784239415 589345051 62844349 178205324 919995468 385607100 807862225 748099746 672651889 480057911 143859454 97438321 607573944 481114253 367063188 762268041 773944044 707230702 203002324 990564079 585076716 393532491 555441919 498877742 566985140 393880904 865100680 421979070 581531222 276972720 672014542 183117176 616743243 760121249 88454076 243741746 750195406 110922439 333087717 705888914 869608080 2565115 365420996 33743693 258036886 469726926 85854617 164328824 221387336 196393609 803504404 618806394 901616975 224557007 433631073 365973812 797690081 421452493 917604132 118170364 808379733 546267939 393799283 428351285 722882 43759988 815553531 702296126 91901455 84878002 537238974 967732505 433572395 615979389 762556576 535947136 537015104 961763614 19893292 279022446 223459133 948899672 491875306 627843756 598688492 703046197 579785084 263100704 849699220 600574605 759474195 75734855 859958746 944645871 689050126 236899525 16401664 253026167 507180507 317494598 259716134 458448322 923720767 783617921 496873869 483297041 785114024 197601575 202093790 745411427 529321189 76982214 502161835 122883277 406808872 716484526 462573872 304421582 938284742 404583965 477815459 450248575 230722482 591104736 744862274 883246745 501633958 864529659 621964107 484402083 962637884 208951754 395363451 230335742 618843403 89015967 267981096 717384273 131087619 172084671 422837157 749303418 929470102 208623762 123143214 182440067 762014230 4333820 750715601 333982335 931856856 506041190 493914400 892286545 892142231 669128073 259688361 73122910 203633811 436819576 640978638 685090289 446868712 302775129 182208294 526083467 615498371 398344318 350385380 149164863 306854820 225696919 874350865 230529126 893230386 395221405 535072712 990293334 587846452 812613375 575759926 428524296 359610851 321016057 536676873 583337241 229173357 105883373 198545602 671139419 985874106 66271285 928991842 206053279 168523512 589229848 434758850 741880669 661531159 48828392 84207451 26284141 456024105 509865723 813966587 934139499 923060104 693473793 114306476 702106468 534406902 56084999 99795476 100937430 386576146 771641450 771296591 958733260 682257702 378371498 938210808 811497797 949058219 22948064 227728594 753721248 443247452 870506382 86247519 758872654 416557489 496653443 792913457 325352663 279834246 479139665 837408160 802617864 152366143 255573214 571806694 809184421 766236807 839232588 752743718 807060075 342426789 659839202 918507097 576852877 482076255 651707415 469823991 773526677 941691229 275040531 720074562 901153917 585602941 96171797 991792087 856106422 712106182 125249885 361133565 500757693 403270324 875682441 689943562 165932671 585326069 640336714 689309759 170447851 539761398 171781070 966604629 179418906 467830967 521272235 29093312 792505853 490776448 932037463 193397803 647482133 399313111 415027571 958268671 782692359 761328330 682622607 420835344 490477455 912361102 588994926 360061951 854583023 693571649 232923688 175484377 670227919 385091160 734168005 446996378 730031621 995660048 903654039 10502301 676214700 575216427 696624573 589986516 117423171 783921883 82394244 296722525 262465268 71922788 323561208 854574970 364035340 696311640 83229248 350857209 920929370 490915729 939245447 903983922 411201676 587916028 624334038 851274602 416986916 848024196 694805829 622330640 825808386 431203525 386256896 576886665 196952586 636439109 91118890 749502809 6957255 45074001 865661548 575861866 787179363 14231734 212382579 650387172 463751555 796408280 273903803 324690010 956126129 676585437 753228319 406115428 82800209 252991008 825968096 946934409 264624873 188795495 21873529 908511021 114198177 584816041 345955892 121257131 464781961 818103862 207803881 665971943 485566678 221939957 206768291 757371067 230736383 809554798 592057817 737413035 593659613 831956102 632159683 491601238 169099156 351117271 873435079 216321387 301286863 160258069 133041291 953114088 324657181 634961645 878909333 272305172 534020945 432187987 876583009 727224960 624457424 316744334 586249085 328486508 92312336 292999936 878966915 941882342 153361025 710502775 989180690 28434712 657359414 222574661 354931724 227160722 653409721 547491861 81703228 460379341 418047704 855750379 555566028 862512061 783849274 790949720 870661782 786733272 288537078 576372359 704616162 378056867 687634304 583229300 948225510 882694000 365870045 163898330 654102961 725002183 686638654 468736661 441620834 439050099 79359169 785250972 224538544 658143882 807836087 700789653 237154003 284776221 751137629 579763297 330311186 627874404 70369441 126615597 924164092 316255410 242026336 169851896 217687709 650956536 86499395 742728907 368200843 516474030 542000649 440309267 568700384 887113354 168154535 125246187 96162818 688786419 128905451 72982165 108374281 953190569 442134699 666181000 472110901 398768465 562922587 680778475 848228624 324449560 286672104 797003846 442274187 29264633 382865664 777548841 96803820 114991363 955596363 862267838 325383275 116054262 701337607 285261441 481735106 220567134 376972247 986983751 255415647 370782688 655030184 794780349 677151516 164914332 799600026 203808964 606796589 260873098 519840347 591622866 581215764 926031009 888693471 504942033 911119164 304933424 873138763 561885653 733523245 207130984 303144888 51559011 804209164 338587489 514115992 663329106 377472047 418178736 171601638 472538502 834393065 385583283 761283356 578245621 133691029 906511966 925337560 416164283 506398141 474507672 113230344 16530794 158412500 823984419 147671072 649271486 826956802 690290791 993392901 328610944 319802072 476385705 23786724 779869182 807443521 219456463 92593550 192441218 562759382 10462452 295647946 996737568 653230847 935045548 498524026 440674945 634829297 784168419 805649851 157977392 312018202 860189505 948208057 682428533 141830214 481525940 425260317 666270951 151049680 987816744 425339916 310464248 807170124 822548793 449161486 537021190 987914251 566775447 584361574 218874110 621632056 432444411 243306538 570676306 672593079 922845031 711622222 730938801 253946757 688668905 678922905 300513054 470725125 473591981 966080599 635854796 71089457 270242874 542248950 833341444 568019022 481763780 802303630 672780950 873464396 590597870 515334575 784344952 652553141 208121568 708331662 688306470 75404 822898985 471821860 752862410 427487215 899849696 496672730 181502879 546357464 546309986 263029444 205273793 167186973 647332709 749974839 568985706 829400654 272247181 451263998 649775181 675728880 414183842 282773617 541953276 752943399 112735483 388827218 181878376 915579857 105646109 970598216 202743450 968087996 297078410 533074022 476942729 664722597 127110045 947561676 268375874 414150418 262924357 845420660 564793941 854525226 582887204 635943578 490420384 444349695 929061844 652898361 670989004 304817983 234352708 361837301 24636447 135224774 37726387 242010804 483399925 490931775 7044191 627758784 423849949 303318226 260978492 919058099 595695889 451700763 269405257 568822705 627393299 853734837 910935246 263726699 633980844 830033751 159219786 453542675 663495058 252785330 319592563 946100308 949955179 894152615 254572249 730375667 280545675 741718137 371819815 960521654 900696448 562985587 105962927 141274867 685465309 903608766 17199436 996733176 453993907 189945912 265018098 703193476 548707009 203157629 659640598 347158782 105423550 281804208 319617295 151834991 1194055 614975517 364031328 877279941 487012102 327142603 148052374 988105756 553734917 658901806 605904005 514477914 523142351 528000447 117545049 596927525 507437215 702113957 984861746 414557927 180451748 500955295 148691485 782489921 191722578 184490191 278507361 856598645 291468962 922619984 244735154 611627667 688604742 217764859 338738622 612266312 384956085 480300523 114139315 856101382 606140085 102426052 145713757 58002892 917770179 686680749 460996627 376915462 594400166 727204390 588359947 756769299 142120285 833648464 102807351 248492714 892338699 198985877 344881497 18189645 72320934 433041342 66503916 524085129 830366308 814689909 163011814 489180022 722898168 492203548 734156776 894427374 882010528 916570813 851143584 318542686 140241593 628091971 817736918 187427875 298629142 737984747 260910688 339728228 842091881 129146424 526790465 68690874 208381375 652291296 777360488 836550670 468822303 599127163 274987701 364071663 800128114 396933806 940746701 876755139 624154324 718839387 680726479 482690165 891439429 195845261 692236119 669224914 416191651 823861662 61015398 813730730 634561861 390405619 396267550 536997312 835754834 780494624 875927029 530119565 975715583 134799447 349845576 833189567 840190315 493223373 748089876 719989517 7912760 277948323 547626285 5984824 872211968 127767178 725767220 474605306 549684550 141413298 828961543 642072205 760847504 461038864 644904387 983810491 938864423 258936735 682835541 435822052 701500454 361910096 675053516 521076365 605841287 793494639 797130283 655311946 225974976 753292552 4697025 454089202 72735559 837623193 819723591 83817654 753873831 923568995 18037756 402918458 761384427 67151176 419266394 727785342 463885679 644466900 726438159 687446113 222433077 549911220 966778961 340993763 90727906 538859197 574601496 274148409 815062486 574524014 517743679 445639981 287241787 864615890 855897118 77652996 884224769 263353531 625042751 651977909 233565745 710576880 640851011 862581440 945195775 742812350 581359050 18544905 807322662 645969222 450768673 887700581 705805176 331780660 270520060 348252206 83325012 119334087 421319175 363338667 155424521 937678293 956450710 685853637 228375389 134692912 56077250 639421142 512388981 557625755 498886888 57389635 860487814 194786373 705811445 446520575 156799234 235202927 655491363 308340635 166792670 524817934 621557097 832969634 520725096 357469860 171252275 954436275 721676547 272269688 357247064 366328669 747861085 757173805 886713412 507516882 524363961 810949089 309432723 569399490 851332072 964587471 853018189 964719513 38745273 944090379 14106519 586440357 734358723 892416061 369704905 700176000 753559576 831107316 840464142 751271075 747439214 730324181 163112016 83446544 452474305 639719090 601429858 65018925 576493 232418447 85416438 718437528 575064164 225309949 364469643 446197702 20591932 289422723 679106383 829767075 172780774 801274436 873449648 846036188 278143821 203448402 508295473 309076624 511739414 44597955 640681282 619916719 755212538 345857133 499263594 594847601 80687559 605963239 461037439 45383956 982107468 505933478 948802731 296599368 864120367 922966233 469242550 465051928 318640686 679848385 194516042 822417856 814535743 165219313 980931252 183655853 139951597 623562848 283784209 289311872 702420377 30331513 684874592 945047553 214686461 988425090 66494168 369097230 569506034 781345943 52224506 841051709 34504878 1298311 938253917 323961017 586321192 688260499 394664998 889359311 19572446 990673300 360792678 920402294 554285259 793933451 206576700 340357725 490803550 491587277 160236041 509253771 785700838 462901276 657496553 63131129 275657160 840621453 824344244 179359453 130131642 272312189 814456927 644751105 866122800 305403 398254799 857426151 172545489 211769979 425641385 410230950 831464709 3101779 197559464 179756811 107017512 474236076 687079327 346402296 520082485 472711139 882225513 38550106 189073846 482963837 440965670 558838334 628772573 966411219 109390142 238574975 869509630 102261951 18718442 363153089 394576300 797641795 976849293 798631197 180465248 249131752 728139272 609878510 71694707 16511041 479939789 209995978 702696108 487394352 482390296 553097188 96417188 53739111 206252069 366175275 458348493 328555964 437514324 407567519 830353281 959520731 285558760 580156542 425403494 245557003 232608958 669411056 356475937 80294356 417799207 267428637 387918497 466230989 675827486 166192057 718672612 309553626 198894101 315521699 724262431 248008224 718227165 626158979 297812013 821574898 120493294 477422967 44414998 95715074 173660914 686867480 974876315 687450552 750777749 550319794 686147561 539981960 1988572 30191421 874235919 550906107 26562544 822436875 9562474 879741203 669426541 683249626 53632590 343418758 35461674 327217109 873814385 462830877 439904193 435465832 381405032 96360722 817316495 257084743 630655891 607829337 281441027 605320055 33671305 307025148 116478565 865307632 928066974 174988366 231461786 49226661 968008820 767737900 619457800 491402613 962211946 983521055 723085994 901655458 530746413 69821675 629040526 227523039 9868079 122192445 991506127 354984321 414841946 668212288 317664080 304558679 194563931 387879736 131581796 700394320 106628403 730751044 962683034 368376545 649804614 252575076 770750818 456054748 526059960 560673968 90587013 264144714 970791876 315890147 931318238 730214989 850478882 521734681 571635810 779533002 155643019 134764243 687538103 498588471 780358535 517240604 884365242 55385172 470443449 49920950 492175939 14395334 880806411 670262795 128633390 70666963 551255610 997235973 663210111 422320053 813244935 837434143 653668277 107965254 915015003 361388564 800312697 892672951 250896666 457863360 457922688 735894783 527377745 472831870 145948853 883623383 158168366 341751729 916244470 927299805 895840618 460685348 632000227 608463694 187167206 368644381 859112515 611053674 635578936 483862429 174888476 415808656 440858154 79532531 442501414 461832203 534222327 212831987 208043007 596656557 916063941 225188208 490201568 166025311 241915130 334883757 848568601 361509761 871879248 783867875 523958501 219204749 448353687 15589281 477254116 932190869 400848685 969327988 459185472 291248654 17188905 561204897 427976562 636909834 827708247 686740016 273289660 612668515 699143408 187939692 341251331 628583971 948109558 944576674 621989328 941824598 916490508 286282764 407717512 209033900 345692066 622825079 916271817 818442328 130327427 76140569 844991624 629415156 431227877 466137862 820369370 261296058 656023609 880715143 809705105 295786139 624586950 427365423 521743073 936880302 330234060 964093012 124850830 874216838 580896754 445256393 509227917 399486427 720695784 100938280 237752288 1365078 47123823 930324756 697081893 435773730 827914575 570062690 802040838 942508262 676928587 784140697 733529852 101643901 764913407 688031368 75570371 947719319 415717943 226344793 449206840 12575399 902900744 316841226 488926021 470884491 919493950 574098254 759983817 186636510 812714116 18415265 673097463 785634236 804530002 231543070 345054746 690443442 130666232 682751514 291180180 212057983 598075382 838670959 489455611 650528848 745174242 522899574 888939076 366993407 473638707 891497458 342486889 541016333 735207122 849002017 22702624 295603806 161706675 62736238 484315514 939404670 156758171 562751828 892161458 821836183 488074751 863263067 59346163 799678912 692199254 744506739 467443911 394556623 400544495 200902639 405182992 335769874 209834497 790554597 240793846 54884131 662532859 549939706 532396492 315098044 598593304 998883796 96071966 859969082 188878751 574741309 147997227 999462388 276865274 502275349 450509834 100355024 821212427 88373131 34384317 736448359 65601710 619747941 696465532 463558000 965981394 824039081 568960118 475182775 34306616 665985970 183240906 979418361 169009259 694175277 198083142 13583227 356281687 777973775 289117977 967350679 159506430 931842624 47272228 599961688 544565515 760232367 197052791 569193811 445971144 587240903 325585476 859516744 616033124 940583912 804374652 891844345 559285837 964738550 900666119 233234985 649423939 282051945 844204436 430377504 881058527 193391627 892759168 190964072 602144842 840767995 624000826 301987580 77634731 656722768 463682186 244070119 483712190 894436025 910988666 463842816 520009792 509300049 77305150 543191175 579700251 632610999 67607347 813388883 633547055 372479381 434860724 65985253 108951586 636108644 518970003 134361177 93591376 541223741 657285342 372159997 869823643 100515203 880116357 371425814 823163769 40431116 291093311 381335566 692575295 866313207 790184320 387977563 747005768 81374007 390827318 266129663 889920447 369761130 1545721 280417338 253421431 87357286 82010283 487853337 317370903 339395068 998234466 499562861 86228872 330556438 36197738 792926614 755399501 602826213 146082765 269821181 962334874 572729930 435281658 410106399 24860522 389155323 482272733 63248753 816341880 127106957 559686200 738626388 434108032 727887461 649132508 528026901 83360913 27737321 212359748 256896293 679625305 816370938 820614432 646665793 738700795 869987288 945763923 771120491 169545963 257836658 289212892 682678682 223422205 721166669 649203863 792545968 67552864 852070695 590541333 186679096 942686646 393381343 557005439 145667516 204594788 4575725 92569316 419388139 652367799 828820172 626959890 149900159 825268697 172845290 46386030 282847135 764510944 595436765 227139978 975459626 181827836 122932177 790033605 334984887 995125704 938313994 462938241 306540694 634414115 7897871 285092986 687429603 229994864 650512354 503282168 836185073 5059320 16387759 241437560 949518733 35454600 405751555 397306633 89386102 666627904 735918778 66346085 933392307 748301151 779325600 962541950 925994753 646424300 2600954 126314345 604113237 438727764 498545591 277270566 226063223 237053453 48212434 514200830 912698807 24301232 360460348 484060100 364801940 831593729 700396619 462521365 692628381 219896699 818501928 954276813 681299070 415776815 696061638 972742240 629198208 20429801 783335825 929713086 940819149 280696240 904385648 894987508 809896478 816068425 769140738 206205793 579190172 240844016 349919897 235960102 212644297 32224035 535185451 960122501 747769199 220826129 76028377 967558180 141241037 977874814 45772284 592896106 269645948 408837985 55190107 176453477 276741922 197420711 979941724 66052052 719098353 245521527 957678702 555850967 923822489 167261884 198358203 341316629 828994790 860516555 462828781 828953535 114960464 743362143 962825527 591636098 281033142 784725730 315277046 195658518 259633793 151960759 824727380 359024752 858884010 970531162 819969401 533183921 284005516 234849969 622634436 586414501 807706647 615889832 867266411 820070055 61396055 53048927 637572487 207172738 123982938 469158241 440425953 897407526 241456710 406997260 806059754 763294757 15334201 687127812 240479336 799028691 812507391 369305638 545646051 400193492 96609228 742693102 637572364 122345786 680310612 540100199 691175042 636043242 367606761 480727350 49894697 195957951 383658590 145300524 93417736 730262501 702699862 243402173 44676987 529036715 895873036 634595293 554469977 332116150 688293495 503260027 402006731 36857473 688796806 833378775 237088736 705945874 593693675 996310675 875943304 908979214 678705599 452514684 373202318 412892319 975719290 371044047 235688814 752358539 245087174 718143455 647518471 627344609 444480763 597016212 283330044 597742620 204086957 785458432 434008445 935083473 306137404 811021866 374579551 218595692 484363934 173645181 33515638 920399439 497912742 477441187 23820965 803556453 605740149 124599388 286390591 418960767 610014453 224763919 787246519 938118384 349910710 30254749 554025338 386227516 823476283 317628985 421503370 267023414 422499599 66562709 427726073 794836886 250043009 793381068 835416839 361822925 22700841 638689430 553448232 144339558 982022862 638419571 260412508 982536398 266617239 432018688 556321804 957762781 639428580 162587262 934545425 170651706 479623545 389472229 890572268 978621258 718647751 642112178 542749222 865918923 120171801 307449812 688857770 239466634 867881133 183735348 722851827 990598631 899030399 600274999 406599859 34312097 857335011 75927506 901707584 415385968 376198784 554409475 77526458 732962201 725894949 381144091 519464345 291057324 851728972 72198357 969627464 373148177 524916629 199937338 379714028 674773391 905369400 681495931 12250269 589771357 150669059 94933708 659384121 446779374 74335156 958119898 820851564 329497622 47777172 856903675 385804663 880469608 55161713 640015806 178642497 741021917 860043218 223855696 579066337 20899273 78049300 518084193 808902334 682456964 160949790 588955884 936675473 366290710 824723624 924145539 317575900 688333213 482829901 893381575 67081458 79052086 812921918 57528389 256212089 360434083 780608124 929988592 533638192 684397306 142826057 107262461 159608862 435653367 165928950 428845825 540471713 15062686 411188137 82746809 328617595 698935070 170907398 732981802 29157196 973878130 870655463 336890442 317259077 173524216 810029589 898681862 661931089 753554703 342473151 448396041 942523293 163089396 50187948 597543455 510404964 489799358 180040666 85726446 871712612 669413476 875242473 814246120 651155158 570090098 328736593 672124450 774866395 167744790 987468033 793553920 500023443 978490404 865502401 787927955 554353709 765755580 473267467 9938461 605191544 394600892 207796462 136395173 30290433 126295761 366065179 397407626 384388114 976014740 136959848 509202435 827250040 35895046 245879280 164513037 612326298 893776788 339544759 601314787 366467363 627721794 630346423 527932041 841532374 236094659 780529914 276705730 172161831 785549140 774549748 821722333 911065679 713477591 383228340 166184798 474707051 246130228 807616820 753127952 516726618 831605150 887330101 149509205 126955478 80828458 562562018 691451464 817566624 716225053 74980714 576975369 542342672 70276554 329536402 109673755 781216503 322184354 130856877 238403773 753736384 997145306 671032355 171030640 381203725 214492752 406629874 310883581 451020889 89495285 741942546 349843623 398390020 213411518 514158825 78045787 380279821 674943443 552378296 767920155 812565974 836781224 884460429 627685921 140861839 905422134 155123511 58056264 538622274 443416133 968424647 274323429 473023788 7685819 812744260 871216253 933554631 390249329 838370642 449603269 930683139 389180025 186453494 275676437 949591257 586024800 788115823 822235465 114684208 240836351 469057492 912138069 497047538 67326418 384142408 689466966 398707000 483461060 307213725 124760839 341111350 758704979 761576963 508152282 553708791 585054788 551528374 781186435 367477757 505095068 964353625 73577321 818498687 998375459 565696351 526654994 882546629 767494126 770718390 325539169 77780041 178302452 799824989 699104761 643526182 62317880 528162529 478474297 940790757 345057675 924508936 562228599 90919419 184217430 375947706 826825342 753611435 75148132 386611729 47887740 78065004 548242587 787380721 840374283 520016402 282969791 297776848 758759674 603060616 444962751 692850753 980123154 250366818 434460454 383633397 944928321 708369926 353497495 320163602 719199587 886984197 381540086 526743598 651840237 648497989 956229238 478021530 403960334 577870180 903357910 743859936 535984139 572940996 230373830 681628899 758234823 808866817 35394194 551168804 433494536 788394158 292878105 768326692 148081539 950395960 291732252 286128884 11486764 284577272 543118080 398960549 993408519 226411811 890748304 963461817 824690573 782474873 670358993 245079190 793250148 923594142 694431586 148388182 491332342 991490725 172164925 465219004 817390480 786355244 479084763 967431817 388031806 70221587 567662488 672812814 347610351 567761969 943819946 192544413 948625753 260644818 510071776 191114386 722011808 975535632 277470876 587966902 988267108 340357149 390370477 599249173 598047552 629490933 964892170 641164442 421874998 635711074 330711284 327783422 469437201 974343516 244222326 952625442 690888383 179702907 660539643 827203204 955987330 913476327 149882527 422260402 93824853 483953224 105492720 755471655 609145662 913060695 155271640 392307097 743843511 688193943 297039125 955813607 428172686 231238220 487180739 666918081 228274845 601617160 37243792 49046765 926571022 893542751 131572179 345403788 443653617 63489859 279585311 743252635 487069868 928788680 241941690 523702618 73801718 911965847 16185290 827890229 410290111 998856190 124202448 797033869 8829162 155718571 774291928 441781649 353880362 542628080 481503197 923291009 796320911 168415696 262741531 368618574 977593688 485996868 279838772 547300944 610916269 133071959 788726938 546841364 926062126 47633396 123257212 370080194 282951216 114874322 310981999 55191021 741673069 464971678 801220747 22075357 433532815 920819320 89699490 530433618 814222668 552343640 11461915 149769794 416600544 396317430 346887907 728581939 680903550 361852391 774463318 639483011 417837644 293754940 143120677 786382095 136612664 183477029 555605164 837345143 856450928 785357281 59762311 958627723 616956073 782408474 587260910 491048645 259995009 44841697 569192622 559016871 595674015 365108875 877226664 489467325 174530750 158007026 752059261 903367383 298920010 463513625 460947610 710882606 252557744 416032317 11630661 278615542 705348149 259954926 712884196 821170907 497281834 937360932 112754524 782119352 983656330 954403668 967663364 75827711 963428576 848278811 948075341 516496598 745517295 932228110 705177374 104889375 768902528 503975799 387085806 271641930 538997537 916446361 160015567 667296646 812646849 337658747 75888380 106262762 131616272 756867939 935176778 653456682 662406804 221755788 154205416 51489831 782494257 478368651 301205196 664911994 162591368 726115848 78777637 602685456 459781008 502404383 280488404 197853189 958757337 136840400 983022687 890655586 318350568 518508067 928076831 187386777 906019828 543847299 399463088 842422233 672733305 160480775 563227379 347415408 808399767 798952202 595262853 422038728 872592979 983573520 923757944 926084481 968603655 254347267 602411679 32513194 113131231 723957303 47562321 891501174 469804351 14407310 123912561 92473271 743633635 907214943 180058465 602170365 77142182 969977845 586470503 615304883 278992796 682859028 754620254 523436508 1734507 959710560 76509657 232091598 846568409 172097789 410226614 234722384 772932618 352745798 982019617 417457398 121153848 30957572 365460546 711291784 694467317 953277294 599082872 874400493 266311972 609945117 306643468 90806514 36229671 630706729 394767221 20192808 188613208 356664864 771104904 450833380 730804877 788952169 237188058 276602062 690222724 877989785 806017650 277477592 215544280 491432296 234591742 778415473 70696117 123667572 741243511 48067853 493433915 501859815 75854628 877339415 177284473 289089151 912544775 781754151 857225449 174876379 479054369 243519369 206286676 759602065 342070819 298251114 600519212 346719905 396321365 286315599 524791654 996745809 306135926 413396207 894251301 52836702 695502608 19616560 936872287 331142134 753599598 678398244 519887392 994489838 978978317 190615087 783775939 731215414 680391026 917111769 468496877 632913139 68469369 397394251 704472628 377420046 603999087 142101876 371071619 161808335 669751176 503037265 535237117 553490696 474681255 229719793 221875989 719943093 437711722 874956192 34630060 256008495 171743170 569587558 95283402 291328794 165862705 344556344 711558755 835530574 405458492 398830341 323646147 800773905 339815911 248397471 613613751 835634247 885351764 240471392 983258061 109503264 169908440 570281709 880744687 685948595 759270991 328517689 890877597 856566015 583415884 151129875 827856860 242343588 345562686 675336271 830831871 2416750 44554899 299943938 279656070 93764141 130623506 997515257 353208639 86599559 133803357 877526352 294114196 45881205 999448003 513443852 981817901 140617441 731591746 316011317 756374987 125917173 193842341 391691185 197461209 727444093 934547197 570507664 808437692 473209278 182758750 615137494 255157333 298522590 967205591 413823965 532185473 2111494 199186812 959333189 70762054 513201623 714665177 141783466 859345299 890319879 467733164 985899877 784770491 325496852 80493335 295855306 617872435 531703438 681653580 185163682 278353620 171270410 76041528 492592243 223143292 789859382 192054698 529164822 341359656 95206301 714385103 664291558 851699806 408857429 878771512 508558029 292378596 833812131 644694406 919320987 279533261 336993410 732628669 290282974 367072013 709683644 620157310 802832677 245992453 521299433 386250527 399947107 921201408 774247207 744543312 856347007 475199904 990115670 473337469 596197006 478647967 957881533 784189018 733367546 919964663 4586921 412376357 231811098 751246312 494880697 922286093 842183605 910846016 527590936 682178692 171368216 214050118 587790603 599976085 253206069 278261532 366580529 963344464 878520503 409588057 350973564 100362855 455616658 299590404 129852966 368389224 537260770 848781370 979182442 87608334 737928434 120291615 775234157 778880281 812526843 630643961 875808033 21765529 635710979 348622085 720613835 598299248 693780330 659167503 587135558 949125065 307123709 506520107 700947005 226805391 651485443 205940504 936238638 777907384 763054947 186776758 548441767 238455261 530085420 906518151 731122 813373312 341659218 574078537 786760171 718296656 223166672 319691614 978789822 353409017 298409857 846402066 256611103 689373684 429534599 748374992 646912217 29015153 479229382 966727069 595807327 3313926 92256367 658402786 780595835 921390394 879419051 969747350 990401828 17013582 594198372 982055442 263501575 910682538 403860680 802142334 903559923 902684596 406395594 756531926 115051591 151305479 153959603 522272285 376479202 329893071 363956895 192833254 72047517 802700862 671101284 937341413 763634027 705300305 711517890 587093288 718589393 801346601 247034026 939831067 728974643 481331189 788644840 515714815 558852805 371062908 507530781 958910189 113274591 92475812 163279734 579451246 696659511 613460644 2490673 757583272 407794109 475199626 828562048 852684349 771179014 446370021 410195427 741266311 332493582 142924375 443338360 544109895 649416441 162395579 130932120 832346634 95595211 93285548 881529464 878224843 22574186 801736711 634587764 235562163 983079124 724396100 605470150 280483461 937107229 30530680 702424889 930180790 235487271 544167986 23240824 421421909 798147458 557565220 561953320 945240534 346959493 434151860 334267980 886955273 311791073 800337229 813401921 624531149 841243009 664507928 925417241 431686149 372289476 53733470 752463703 173512198 44143250 92776803 466099094 644345137 280279712 448558595 986529051 896554538 384385523 362187647 680697982 346107553 225834528 776136022 366658650 615516377 941214270 228054081 453556145 359946223 926798792 474330671 828205644 929247306 238117083 434242014 851083125 273497785 651909449 735793474 816962030 389904178 668179192 259068891 291792637 600830171 949342614 164212860 121590808 223284860 235426455 38261101 963217603 686394648 559373759 79132194 259960513 495228292 658525807 343834395 364949832 356598986 177916944 439521723 990650257 203773526 838550963 667666906 962584909 845924747 657218633 523786998 887986375 373456636 107440834 356985687 596573270 132510010 775991750 946142561 977317477 665747124 232074308 298449114 929278355 214059194 13528000 820205800 642986717 802209115 3246290 377829489 371761617 317656656 306001129 615661953 556732270 230377804 193670035 182070599 735689457 644065366 506791045 398597067 369320144 373771443 378729142 964035620 183736956 832972976 788619716 690510184 29811884 730907986 450233936 285507394 77612501 647155621 104979734 402879722 142752742 815843447 364292978 996012592 605212831 698329641 827911377 565333366 883206538 175202051 937112536 805407275 687881285 483909652 536822730 565765169 380375586 171566050 876661987 602514808 144151128 334182981 809399687 572763327 703799379 453005759 229637942 875214015 179451029 676180969 928648993 594630625 107195533 902161131 827136892 622914141 577185634 877990738 879948902 965189145 906192884 839325390 923961319 142058440 890404047 216641098 945673639 44580028 250740292 758059457 607286477 925176907 623284701 697500525 582436275 792923370 231936151 824860271 424998771 253927696 48861157 591735582 739409011 60487157 907119 89798601 747441194 110467000 691692803 417156428 523506961 752678803 188697706 136395106 271645244 364376089 544058041 88361895 424985602 486797763 570826934 289079707 852344401 941874945 122339727 378983576 658242679 579786704 845133541 184466424 503154828 625056213 622906699 68192335 862704636 511255757 23220234 858052538 368734564 539950972 887844120 891676341 291132998 699337176 870895614 887085395 901921355 424756737 15989440 313007190 680053934 111407890 582757959 110813231 539071852 596556783 807812253 46437230 334452898 431489039 552133734 456634134 133561781 678933485 654107359 38348989 249965482 900975667 438998612 900631801 423700515 298295464 840700387 3392587 435097055 513138738 240259349 569252240 190247050 845408518 763549975 881889655 330303840 328577677 13779026 826595979 805818799 246380145 731610252 888735033 946200064 209347597 707473537 970813180 578545293 337562157 427529150 512437899 568492823 263651882 10167944 743477799 395385572 65228621 634065506 314905793 747167988 929849304 484371971 85067837 794204107 551360671 563359349 890719208 589106372 540719232 386426406 577696416 492387645 952595518 571640088 785294569 780477558 22283744 708454926 755657633 469327897 180859982 819469080 781833830 705553529 830450725 25935009 593282836 659586354 309349732 338972048 487090312 780517254 858371016 877704650 887553378 313938576 289707341 898845495 748555586 365058830 589348094 383606327 978407637 131725968 391594034 972215371 955108325 438580869 269808549 190294266 253501625 154012454 712459786 111165154 628320613 246591226 33852978 948033167 667736499 539192861 435325874 916220753 802976269 442222357 473758922 59868605 239280784 721852235 920033196 908962988 423108973 269331668 188219395 352345332 680167330 588943791 741276457 358944824 640917260 266985281 666541334 455502255 733136922 88792121 679785748 652567891 201806529 117666225 685581819 876583018 172895725 110385909 931713301 667170705 816981434 279904601 663578684 758662303 938289499 313271709 856941924 903476932 1972365 261188307 378400988 450983606 844607583 872036512 722140048 155177702 60625341 76394939 888951181 138475164 718644136 897238568 863479276 671052689 968842254 43573368 872477957 55936645 976439828 496460371 296120669 494392987 316859825 289946132 95880189 342015948 887179332 365963733 943256465 865348369 832496232 165974578 553217103 409900299 901827203 450067121 773340300 794518295 337612690 467125189 463658542 545591873 851090767 459559348 788667140 737299224 525329503 697784732 491536542 646711539 661468902 266441308 338791657 648563161 647042956 157226527 674363228 330267514 170475087 636662175 861128690 872057474 892895163 81558929 79437286 28164087 140112366 180729032 555224609 503133214 558231892 914887709 865472757 288741935 666104734 519430231 413499506 59191590 898354640 856168315 956334268 534378538 397112923 256510936 31734837 554682 636369879 875784858 210619935 43033373 146274536 454672635 563301345 937781989 931838371 226934051 988454624 915385350 548949859 844922050 40374615 369051085 655557973 690747926 415349398 137031227 515832688 951421741 753859422 895983100 549550126 551889668 720024481 377550461 794914148 168501641 869175678 224202363 121628057 65340301 605404381 317132597 259418842 123393785 235555449 900368443 523360428 704449585 709000166 977354274 512479167 138744952 58557752 544204584 75990634 781124274 299356610 902429489 317258069 384347891 130063206 330243285 887455938 795568571 674701580 532533641 673280262 285050594 382560044 277681279 784094302 400437975 254947219 454704636 655907317 243072255 603324552 757661951 505226336 995786 977959632 490439113 891007181 829495219 920091776 961754465 839439965 231335403 257676435 542108614 588784731 307877001 681925575 75152299 442942396 54391997 228726436 62244143 716384569 965803397 140405237 836089572 573502372 134284515 537615384 130074820 370655128 97931550 199087343 538024494 924452894 485521051 725768834 168442983 993551605 929113526 936381879 898173926 649992360 776401852 139776655 784703416 592053023 692348337 604279375 776364571 950751122 824448842 909670873 643225081 814791132 630354522 157305494 497128775 321520550 819661650 802070564 543334050 91233428 584937975 302851063 579706896 130274066 854237520 707045830 431958898 624800150 627812621 541389380 227248083 331473514 822841875 796227254 699026967 139136083 474249962 265177351 571417704 829268941 774366896 120339944 986611107 719684244 770967226 169172546 215867614 779511951 290878410 755806727 845583843 155478070 449234333 274772099 329055581 131533651 959180892 53317170 774801710 282262833 580402588 800339141 15251268 201233090 164893766 24558827 487136194 885102849 847929941 404908416 526216504 780876382 806408618 979999847 983895621 303072617 857367771 544200585 742272944 162420280 414125138 452474533 554349824 416901662 259558804 698591281 594623752 96002461 874753033 456159468 673127408 548267046 232703192 261171862 260898850 586043828 304059505 363419040 18747597 987120157 452132211 598151313 806329177 110640719 236044520 639331672 210414156 7130533 790990808 370920194 24570841 648515942 960631462 964933215 709589010 150800728 309871353 456109803 792368184 227692363 423808910 21407008 306445854 932594760 455644934 554534782 656465604 13018324 914981456 426754001 268025348 795044052 25706442 65798683 697339504 588855241 503297393 839597623 473042974 358494945 85663775 241730189 271094915 327852951 264462471 374708881 599410745 851319437 334902758 264908376 98337712 969072074 518271446 974916307 512514518 956208165 895021478 774131977 763879465 53724701 484360227 830900119 106117998 248314499 637300731 45259502 51451656 652069624 636994350 524348171 982356596 215326687 494243468 16755042 159605521 641591898 695025782 25659113 345676095 927634561 832928856 949558295 379642215 624583613 151495950 614329532 396823088 530811054 104948519 332267954 488080554 770661307 964768136 6250093 481254733 269503319 120788513 99487700 2193677 3741459 514886587 954305474 398846314 243850050 440775926 713403019 798515352 972801733 634108742 339430374 305923064 907035714 236801843 60896585 97314991 509708847 364151169 60035299 165527283 633812474 429681759 163389479 452872967 27493418 871938158 442467303 136192550 564887807 436706535 745690106 137265878 269413032 799143188 242214627 381380901 74820580 189776182 198291162 773601756 458101015 894302367 487987671 435157572 757167446 233288089 62044558 805786195 50891208 503682066 893909377 584429742 651273139 385420336 128140540 644732693 978512814 962681260 976616435 650921132 197904316 740539140 751004364 610829278 855294629 627783518 791886702 957138283 971686656 486993298 959040757 539853426 128293929 610297065 422696537 971158295 91347369 425264208 637735821 385442671 672080751 559276340 386396511 777118812 856814578 709421268 178838454 807133643 614837613 379500615 367047373 514041249 206374175 912193547 999482644 627403680 870376457 702096054 587863469 747680650 42504637 911204826 323436194 840003795 675483200 832248705 592769587 844938758 397460604 267019988 882844335 108547772 630551462 257091368 402193689 129975661 498124316 976662896 215418060 727764249 808260909 844667139 743134708 783161284 963273012 277188818 221890257 10122781 998850227 968860651 745319716 510186805 44661525 89988976 574438117 807434859 985709627 968648842 315929871 426102401 554743249 808866757 700328233 15112164 38621655 542078790 408592878 477907219 728772112 291014162 475681787 6842975 8704538 493781280 218253832 268413019 337184905 879840261 857770856 879390838 82470113 719278899 430285814 939551500 577923829 534879235 305455184 519024364 663359170 210715970 367528412 704790008 180252458 941067401 556356440 223848462 515196174 562644181 966035551 361176803 722508529 649026703 882127440 936135643 555682205 450945867 733567652 523529977 946085104 322984122 776438044 225410918 640848240 42362052 843583668 186647383 361487444 633275055 924784490 575253349 76463072 681892017 63507671 446122457 397387574 765549020 272978378 619549839 966700264 539781974 683961075 739678696 59222306 835007721 817331231 368126147 818203307 357720634 350276087 42476199 276517266 78239725 702383286 957173058 614329911 720396982 426415885 314520864 336703798 54001345 525098013 9798781 163143837 979461224 857612611 984012380 496377117 213913410 123770114 99120939 358394482 683330450 716073955 717256462 7544557 331725956 378681419 509138060 890740167 806820276 644725644 9514116 860958516 904836308 733664027 138981070 977950891 561264646 218341262 84330785 477691554 215085361 625359955 833990078 703212186 105731102 857316349 5006542 442432559 665652328 854612859 358654069 371515856 198061529 528995970 848801278 441008666 140899387 952109281 522666204 995278842 566051265 351699979 295100537 100746244 709193392 654819415 898548932 270563609 705973933 314440020 47411236 981047202 98779877 183618956 372262038 995612680 70289416 936981403 118987068 601759490 571843443 785052958 326571624 162600747 385145753 251010141 826230577 389650 942629472 418557264 158758814 404181688 981267052 404597478 74309239 90094688 911244216 33735152 164829789 526824055 401974902 883126870 403156477 118278222 764349581 722795769 477129601 109536809 393319723 197059979 537381747 353202875 263626661 910284209 268428724 487462811 368271923 312990507 175424783 603911410 634037678 633425206 292919596 559943213 631080478 148084668 476824141 642290711 567212916 67228838 481000022 326433755 121766492 733065409 439877603 650698632 423343370 857533929 640420177 833484174 50282910 230306270 330979547 533166347 986236428 159304550 518796140 63746405 515952131 878328233 583414085 661798739 89784824 719748968 123389082 497448866 851736147 42760010 889509970 263893054 376309479 478828452 814519585 37940768 66441402 702761486 703879036 46689317 448645442 520905986 894197208 394277952 337306703 827874864 710894126 87150444 410131019 378015181 307302595 47527903 713002052 687966981 211744217 23701104 689695577 523073345 130833850 100529353 750396202 706748501 705531156 430817677 828306418 19520212 695039729 410991597 395625229 474612826 928588576 374729937 520029123 646021432 274111621 54556477 302397483 578447891 591253698 448442911 559610513 480463593 631896073 439784534 695111318 496103483 242438821 315535317 124701578 866437708 112516613 339133178 15783905 729579587 934771347 255451086 340554096 539723086 748257937 900352579 255008778 917859904 952073000 467199613 14243728 752108360 989138893 410938424 31917775 250483098 766573559 27708397 549310321 111097144 297962241 114150814 833039780 762106239 15260708 208639465 11279166 448846172 851047515 43153556 975644559 104661238 94906054 242186221 359889315 987249055 723283049 261827825 167515410 502776027 718994439 300072072 734892592 881105636 153188871 900906372 217387287 213763454 325213129 831459952 409104836 13857904 20518689 763234595 119219544 468462219 984069834 809296795 177319595 801297485 208647325 617489681 943727215 195860897 228039354 927516130 187798959 245213701 64215110 751309469 278401529 281350268 613382943 396119175 907639902 197864108 409480132 669613607 97309092 934854448 288238952 589239921 750967182 197078190 366280246 868038722 36776383 783185689 662516912 157112140 505511842 591879561 101190391 333785591 924195107 624038503 922800802 73976166 18218682 312307499 963458098 565065428 91882956 921596270 502738844 616855915 198124741 816101544 237529714 331818512 950159718 197849425 572493077 454429229 442207338 543245638 434554856 719030509 667019111 370681197 817624674 905652663 730437748 835596155 557154133 446044253 527043841 244443918 40993664 836461862 430406764 919858139 630111408 106512811 277155445 766586813 54707681 64672568 704026903 844467548 882688367 872614387 423217951 95065664 701127175 492943313 405614662 684129647 62883440 244970928 551508005 574367871 788328027 670383103 810017238 776771070 470844251 375563056 527690998 727635846 958933983 843458277 886587234 752507074 146138823 970846411 157347150 412046706 665195266 256884361 434634694 210042718 994597396 294354316 163781133 430713146 171288086 262098706 583552995 99284790 626597652 742493006 823946213 519888420 953717371 197843300 8728175 504207282 347938494 108275698 482053210 91022159 519504457 696054291 547527694 690312044 859641304 688366247 589588310 616914980 181202588 644218588 501893857 289168211 340463208 932155285 805068533 334583344 458459324 699890980 618527042 380202414 639959253 553756738 639425272 86753519 896370131 130291446 129540965 768069433 609834069 56088674 826782022 795754745 675692383 735151656 252517108 263019235 764788639 471311141 100365426 892652809 151013812 766707040 806769631 506001692 201422215 835656836 11248074 957714421 898256967 218029957 357751288 285843011 199533046 264438578 624139766 371033848 773087431 745252817 76252168 526478705 729669352 550142221 323522474 206051159 256178410 432421935 216812687 961010631 397602838 354626932 130772611 600375387 29591451 867018292 332410411 882460422 479791427 359347524 775504451 141017929 569105512 515967518 813974262 580983209 467847724 745986361 873468444 117667937 671935536 284510637 207895460 596909077 951809619 506781884 840518936 877804029 337712191 234906418 634064871 265052088 490211209 563893864 661256477 411028781 868889829 162478019 811634364 355915078 866686370 931127604 126632909 735090995 245263390 351143774 323114036 501566684 593566053 928694638 407440983 508274404 531441807 793646207 999176361 842569176 369143054 173145253 708978311 245647096 312411156 822484786 297402476 753667600 35830346 619690832 369099534 657253307 357404159 250903259 391746447 745430458 819835683 823048508 700201389 433456919 413845875 688400058 10972669 197922553 108555326 993260022 523358441 53649420 525402444 316572513 173627939 765145697 488542831 826332800 665811468 329232566 130888632 824063959 203351621 7769045 637127124 915522909 908859534 612012661 495133282 964571171 966425668 308345849 990519471 442967505 610359874 565933432 713406842 896000153 751117249 910946158 897474199 776690883 207891456 723798041 465867755 876042086 622932062 868629741 93671354 706093328 615657860 953176079 937096947 810030227 103722732 222380535 120359276 161754685 795865927 911722936 379727636 823575675 819254535 790908487 869026328 908418760 563889466 276244276 891894451 852266528 318732304 27406734 10523369 939746304 78302554 622064403 599435522 924880520 379964602 401700533 518073205 684993936 232861902 431995528 105007649 587456539 512751575 867682270 526790737 63220215 608577747 346159147 865786058 659835935 911654939 660593521 518660365 299463035 395253263 902369658 546353738 655272956 181101945 231234807 205081891 89752111 466427072 444797071 386291018 855871775 571335902 208454590 947412915 938210616 638904329 740605356 573482440 640899973 641272323 762671568 868347184 343999757 510345698 297446506 253975966 615299783 942124705 203648935 839765036 648816035 908291096 667264352 579076559 596669089 976355560 35761510 654715038 521282994 225702768 949868174 77487273 177047837 846702179 666775850 75064596 541020033 770518457 499074043 363089838 108906588 404374606 421155942 254231425 606811216 652294081 164694793 774378705 699351254 26705042 592533799 304504648 7455542 299716599 441685820 445531032 927463783 957231407 405183058 564927710 328776410 512496781 24372992 896183700 707621509 149951908 520408625 715082931 595426410 488725950 933192561 292774454 73071376 829372537 34148108 498635956 116724008 453136552 761473006 634785331 479592060 475061744 20762797 671305486 575481901 405692790 211168281 46250639 446074210 691332142 890054964 159981064 792650213 416755082 210870877 101916419 225293268 431861839 177042962 347726045 529837000 862001007 481838140 331942922 859546772 563359242 976952427 131927261 34096246 152531119 719485452 846677092 568212254 793322108 367550540 140113068 144372238 324842475 197442207 670765759 431120580 283744019 271338275 661741342 594460493 748682634 639259411 458369304 952048356 777747509 771515983 756563632 251223646 488767544 66327109 595568985 534737985 22896544 177308648 651938349 67192551 471628144 70752778 651393008 163593660 823461222 366354842 57937517 634186981 808957954 822433920 969460208 47222014 566286808 462470858 963713074 497631999 162409268 542575363 797347380 6475117 447434844 173917049 977553685 631264144 932706338 983245997 36629094 987959917 924529358 329538795 523423980 315169247 365105235 598578356 304636116 363997337 216121085 703479708 164579711 920262916 867218848 394740519 877889033 562446883 313117037 12103644 962829419 933530935 320682438 613524418 213155176 577987812 532933438 672119328 408168638 111968667 435080004 229061862 958635731 925919425 362082922 9446695 701928914 578628314 917858568 729737943 980686722 957125612 990962896 173578937 873807417 390956654 117292002 865320015 121413386 253802121 716534927 907992933 91659176 328298135 186177614 480906308 251203884 161777207 727195416 33969404 610150954 417001797 346147035 251679971 279813903 571772789 539903453 177118478 876691470 816826663 98711320 851974395 569832920 356006764 235933440 108662421 990743651 363793714 44349086 544131277 594798642 527762940 350680376 945018058 157135953 700465342 836031276 984996293 411793708 990294848 75008702 342560631 180294273 244546492 151989652 202162517 138010480 152025667 521269027 186899155 719676877 366001194 681121700 954700471 229466574 590980433 329269939 438965970 653008735 507603576 773094867 415068117 450995686 159738957 815618503 410198138 958484990 52789933 835914604 277551715 133590286 581808409 948012096 410080438 467617719 153671548 308109419 765824069 116356522 689264143 366406587 196708958 365109646 157398774 458558593 816787187 928761405 528507810 696991374 967126448 579871497 550079144 270825835 627995992 994717819 532164675 75961 705324789 401929317 146202144 15404977 146234407 177205398 695995455 98284526 765770975 749441832 282330922 642459207 985653222 227480655 810704381 245292928 702985607 314070004 600100597 295426669 710715717 981908194 193689562 320992784 596177129 52807539 674418552 79595107 942967667 263364268 997236182 504776964 744711321 753752400 46815897 880137204 71656999 378909460 177610609 325338898 240274656 944936180 871507928 791235609 226969301 697775084 139262124 23033828 386287523 123848362 377746807 602141436 184956491 937867019 135979957 667570191 801834709 523520101 667108584 996224695 808202989 724822052 275224878 145536740 344148005 181345771 815125399 988807021 39260909 153086497 493348465 682630289 272368467 330349338 132386180 619374087 895673021 673424553 137939930 217371307 898640369 227931978 471357328 140814117 823908206 986587241 883371069 995160706 416448387 669570538 262305468 648578506 932647362 275046498 880515584 89480080 532912893 510643527 902546713 636047357 593494576 631063965 352176888 988084700 420179690 418639856 935159793 911234290 984684950 782922396 557853931 431047229 76812993 470249925 720511643 320065919 735020458 817727763 706067789 348293561 627742763 156260215 191273331 855255759 522330387 679603428 427257299 73220116 434078333 912860996 615448360 134836947 280560467 35289843 673977169 896615555 202072880 97269786 216736784 408457329 696538505 820678368 577852756 162168620 962909182 438319905 56131508 503834572 781981409 346843678 497630046 399730650 864382144 901994442 100205649 193469438 586531786 496950830 751266023 480485533 672663127 95326907 940762479 924312887 382274616 891839 648570997 604951717 541096302 653237433 352171653 191836160 294560319 158693329 104530534 711800265 842035343 983110641 445394316 952716039 199118431 790787395 991151342 531802380 556212279 414796526 291233306 203168398 797692349 752711232 308503646 520078822 96635144 265225969 379492505 149174698 901412075 857803138 621028411 35171222 529945532 888289057 210087210 34150481 768791933 636693096 435595222 655162997 966254680 949516254 54451440 529566218 720439917 506601772 635425853 401637111 866994819 524390888 451711195 673569397 946783382 134683200 158933875 915099621 223160182 204966407 683325504 823244220 734253283 601898944 660430869 86837473 886577987 311256101 13280964 252496915 145250622 615792126 871562878 571961274 398394176 404288200 899942298 579685961 264903962 465968285 221890829 327844054 614570581 872218598 535139412 987000692 108748073 595553572 638813659 84889678 292941139 958222022 304841523 242397603 256468557 349153959 706805067 450613365 914568956 364463805 75703164 790656989 810147101 665215431 399267626 133103805 786138580 447615516 519101716 763842412 866855865 713733078 872200865 476849704 736672146 144294300 283926105 407882820 115526871 566322706 539276317 346437031 473770219 845232377 803328761 715893540 362589668 638593120 343611554 169580540 402580206 511420357 50070944 655479517 162565446 385144299 820933002 903838066 529837300 254328726 992715122 900765494 163504292 563160325 624841707 841600282 559657283 589019408 707213723 224944723 751705585 434382087 310752178 786140405 290819075 639306323 801193612 853256975 139592009 790140637 166842554 776304647 898357871 6141839 67205246 848171608 696539245 475388535 618736564 818699725 248669186 2103563 373230903 796237593 847148499 423778980 73672888 593681063 471692648 10966728 343047535 969419926 491522485 710745910 83326656 137774774 616658889 96538366 709862603 442937771 400709104 230502965 217043794 381076658 415608847 421266434 923017711 97534738 922111684 361809139 537439359 439707290 164208113 452039915 260099936 937852444 931280421 383006181 959245382 712379679 871748670 582659745 359905045 672683402 318126542 645287817 535179105 698697568 385323265 953777868 43981219 765682923 63276653 510879789 982169674 323962232 488317234 518435013 179606954 881961522 442398987 991769326 408305840 25526908 48332410 543905829 785195102 745487043 936051859 34427928 474865581 85928770 52513197 159142015 677322413 361172284 236640401 388670074 68184619 413449084 582862162 532611861 962541432 133130395 22611169 635265941 336027466 50500958 750051695 484054598 62598671 844184137 806682417 130392917 638115588 346799184 589644674 574092805 552433207 937006310 650374897 149140075 32323820 796393449 30926246 36452969 308623777 67980275 932503567 229556403 398952917 58678557 214580264 684520454 215710332 882880572 103967614 560777958 527205088 222714710 399033345 707890147 632594152 879685820 836308903 815280176 112758179 203046635 288881627 321383780 64764185 362897096 160200506 452113598 112678703 108771570 716609427 202554904 821086228 719487039 767712286 543301951 63268643 270057177 698383743 766922421 674434196 924467837 362874953 326488205 990746303 110923027 935509208 32860891 149515244 135524338 794702297 821910280 747640209 951510579 11648746 639114341 478679726 305871813 515564892 276005885 366069458 3682018 539831391 633592306 100958600 573570793 441997106 98185913 413777763 521533780 985032848 211809989 136976013 697612072 236116900 516143947 453420932 882195594 411451854 549198479 613925640 448727113 239676568 681236133 314196446 469201517 606741065 630089328 857898219 445002223 592675549 856490620 582440595 895758400 170248237 771830223 948717881 123914432 905374619 38519924 469135298 468970597 566051974 304684504 56538962 336894367 269677620 626948512 468069334 91996479 288457137 635455831 585936643 78609191 56052157 380852266 85223630 175963145 166208642 227670192 120888735 919516106 985776158 784236093 817832234 499399750 609479343 424171470 592014028 46500225 903496086 221826553 39931990 434082277 609434091 354968375 973859183 206046953 205266354 308347517 448967754 322323325 305183928 90178319 775235453 415526502 504333968 235268669 974238219 751081197 789138053 683351895 807093276 853568730 309414917 777043381 736132001 965976138 652429263 180452026 815631595 335412377 341452747 951770049 382610980 641429751 694956479 975184175 366659234 546256413 953781318 45706982 557599801 699174030 472638513 285491216 319558322 922568446 393764704 949064193 193989402 777549593 598179023 881681477 355469458 380251644 657442329 613568163 604315388 10817701 976975336 21294099 933121555 230094243 928949544 994025982 936026886 883432741 454702222 17200188 966525141 276702205 367874244 358362021 957198145 290195718 302906509 918187610 685729238 997730324 863529581 269705948 129138524 881156185 594737344 333365875 948122623 242587958 344879068 967991394 202862810 649986673 816582172 955204052 761345769 639852193 272106384 640510551 240007233 783550443 877882207 434596117 398095358 266638582 665296726 6290461 293470710 944131642 418113569 941251373 921842405 805581198 940697365 954053944 263232773 592103947 462334689 622043661 337073862 57612911 80359109 495017359 784709158 159336728 677859127 107681859 898811554 185699978 237752842 43445220 21277335 425084906 513293727 538015232 696320066 623260816 427265875 602392024 89084436 726353446 425867583 558717344 198960196 911560581 471171274 153088163 918032497 886154555 101722009 708451150 40459818 67556085 361474101 359563474 730998324 94592555 652865392 277847644 486633998 809434912 389221641 194419316 216044340 612615985 713677698 113506193 484717118 493357030 858336451 165856839 440270955 72810661 787122829 835107773 436070655 383702715 279302701 381034697 144287497 144474190 38983681 477072628 121050156 49846871 418860100 855932103 739784499 884017043 688907768 884568855 278640755 283013191 160573610 974779672 393529280 772355165 802900262 637293757 653966220 761596370 341640601 38916257 884001874 63954542 805939781 558129851 854316857 88142770 278565487 760305756 280570551 682127259 832305857 549233533 12765870 57394330 210459240 700638359 866335925 241665527 646029552 554411225 201151991 605684131 515920789 458972544 948521420 577757524 572367823 641273025 723072948 254813003 925317328 382090621 634445114 704156297 39796855 337244230 223495270 644313946 839139356 189106291 501258308 886297352 316739265 581163813 784048322 932488811 102879915 349082631 581780975 918975435 507252079 268623336 549704971 555830378 930918402 309255704 505125596 241153977 170408561 934914968 14054926 612962886 650730510 634950909 742646528 171119500 304907313 194814296 203469571 758643447 12606715 640978778 545054360 134451075 900721026 134251040 919392897 741471953 884411912 5787283 138891549 799351746 4924019 14934 278265190 831304037 900209877 325621335 753342568 301454929 537601900 3732534 685153467 699749872 192066264 369950908 588834165 172360017 97390657 391879244 369653374 817636929 571526258 318689207 722248660 813318072 696738540 786065469 993958961 903098433 509555243 710274201 607941053 111521205 245562788 65956826 546586939 115448402 942820204 18010625 548823326 457592188 324924463 360794359 331681906 927866004 247783049 125039800 808652950 685908655 312606591 723722009 931746403 330508745 73097020 329585035 742580127 768504739 694803281 97780000 330396648 3384941 699079101 899019598 795164644 901030644 156322598 753023497 692973635 606455429 449660227 836409626 927547115 958211003 924854663 510627495 291095358 793514072 332866897 153983547 885705363 867514368 128531491 145233271 938685500 146431777 536584152 247344868 821862794 432720430 425631377 604600848 821023455 833676838 839726689 535479729 753459954 704564800 689572376 301108843 670271059 472634818 716362925 227924733 792935692 761857839 886904391 562357452 452457473 634621525 395566243 484204329 899523316 943300028 742316656 15426207 574463411 939472480 176909386 584652680 834834638 725556416 730049755 896717461 479076196 990929529 541254968 370095030 576243871 617085984 399137781 497973735 413062668 939467859 678002171 785079442 772781405 700128591 819759419 181052595 167923791 931371258 904183589 138773097 746052732 357443269 125665848 968014468 894901955 742781991 344959664 410925644 907189978 183318568 156482006 585043737 559892702 469518031 73776804 744006620 137691828 222951983 174144695 836653408 308745819 829531720 512310358 644006714 30331414 124033965 950824566 817543602 704837554 341709513 219455776 339403093 861250143 953756776 196775636 962170015 417139462 695250260 31678012 586570174 537385589 908626124 972853637 383712453 130549493 713047502 55203723 640267578 751823958 481571341 723370647 324130845 153254289 52840586 79069698 508028347 1646769 177405031 113077665 969711997 514918620 301406165 567069074 37209190 246445600 324040581 797302465 481096473 252144720 743089282 788438958 35343457 868288139 644890070 21235203 896126867 70486629 890669988 527735496 170181516 154707927 706879348 173103462 27134238 111824155 153252498 850441157 736280338 487800133 722035074 591944397 760440374 144925718 21579707 983320629 963285577 163679689 891931821 67838856 689974364 233846067 129430985 606553689 288409232 953941923 440367157 678453084 451416408 225524277 670825165 331582531 444972509 450863521 922355035 933050931 337499896 31612599 122680465 694379257 797661848 182101545 141366183 792140553 180640944 127059738 852930252 437416091 589066575 91320154 272153804 51176179 522427932 696195176 284596735 477366458 558827716 117877745 401372031 443433500 113374044 512418090 920672982 4190601 289888246 871442742 921363722 323559277 442551235 523356492 119530886 339805724 539925790 749007992 618058812 812072889 408100972 177908690 354329336 197497186 765037138 76291810 662447497 633155330 490386014 123138452 961637502 259770955 385893022 369455073 290341524 498945555 927632137 56420100 825971208 456971975 683403519 221391900 809448636 772462407 183881574 471352465 71696734 950113768 696873504 908803033 951048879 404673589 910551268 378230853 502803825 796397482 675675775 665100314 469041474 111542564 53602064 922600408 38226676 697501032 826751074 519193102 282802987 63309996 838921418 901276557 931831784 668211403 617835764 666529216 462574118 913827485 884105789 543654936 120157298 929160008 924711538 300155700 274984490 44668945 819529341 982358331 745949240 108960768 203728588 695816685 64730626 63779998 332326088 188409376 551645670 605679872 746281243 149666147 974212247 674450822 731826100 42224672 849758051 670968690 432619088 154303107 384329131 464549326 201268578 976723708 591818649 84761618 449320971 460778469 452150705 882074956 960424659 732835640 708671877 155319295 277974712 929608408 845930920 379945542 976902328 71396756 118640062 335607234 165646559 67779547 730037486 230745370 729523028 872495147 562903810 801522734 626182954 495140208 161445089 437041446 281517001 666215995 160027320 366314320 823653560 330752836 86084162 899912394 934918728 646131816 313518244 883076100 868033186 323036437 682817444 847364667 604048597 603438926 889106629 711344147 225262961 154419847 242873647 259823721 832948590 462455551 844572568 801640278 100698266 836771713 719783577 928278913 612055593 62536366 329672981 333098375 117115406 882500329 132810046 206932061 787381132 754378191 894636929 785604137 293382213 475781753 400702647 405469695 168386759 139147851 196643806 608335257 593734765 376000925 153881474 905942091 897975088 367523484 36113354 570989978 995505684 377533288 39063518 800678360 332741885 326361063 151275106 192900680 193351636 591470780 54507364 379561843 456626781 474693907 400899717 308499534 249596996 678335901 293462975 946679001 759766492 160568091 931127304 230144142 364925828 36498117 488554570 102936137 900744046 146056269 664182829 298369186 137560747 973568088 214971915 744902854 787158148 299376523 370347827 476913094 563584783 982861414 913172940 922625728 788346862 195656177 54733022 506772287 458367989 892227761 575101594 906994486 852982892 960963064 322342852 159182726 93535676 391458578 281828238 44363698 568255802 848052657 815607846 626364378 628927132 482669189 269549613 635808700 523349986 23297882 383057688 294262551 998295483 562957343 234859249 179431868 613941561 765101898 59959529 925933161 569413407 603983017 208335113 856544605 493002244 463571334 752703620 166495263 390644407 731598499 780880107 207651404 579037179 854942868 531502201 73945360 704686707 978591844 761474717 207484764 67566142 36650368 998429078 94529769 569975436 519597473 19242751 36775930 280553124 308255390 9893549 93243092 417711621 2332529 663577421 195195079 850132447 831023948 619710787 633114544 405788662 871796570 683797444 108940284 923919827 834473654 130910108 184783838 51605957 477240884 101922541 296077782 751364056 120807935 65275303 565583233 449001421 544660085 297377013 611165210 558330036 260734390 732612939 310122670 876246503 297915355 599885437 535800339 718186602 455623755 972530605 822846289 963039033 831136095 649139483 551208218 107087472 201293139 114287556 667648261 226561934 931250677 906786134 8911592 932832081 297038259 511906070 898652399 275815360 70242575 61331234 547513763 527030770 643527711 590430864 714637915 557053084 863797496 930447568 236347600 541710687 834644851 246867065 409906185 19256690 507073593 283570355 729263389 359637488 674315651 311867257 214616986 622920206 998106681 206317337 964038855 421926216 76982060 354759183 361887324 343974236 415604452 487888790 606023026 27021857 857810661 170007699 453442711 215791263 28138443 42335916 988398685 532233601 563954434 790993868 749519230 614689736 804764425 206297609 425436725 839228888 527389853 965489244 871733549 191816859 757719534 859081348 755732022 344259506 69021259 122796438 697421512 469147587 391750408 783813027 922690208 129249378 447226325 296834254 863808244 636078151 827660478 367981742 834573285 9490805 683260717 502357678 488653739 515192617 408349824 987951599 526626916 713546526 410026673 690467412 82495405 167236479 284682019 177409048 176519231 556198193 524045214 67707405 245064966 674853802 918486499 104468537 267271331 720419345 619412829 38278860 562746416 900181621 519696855 489266414 958578239 699271246 881183047 281196478 822266519 197608514 514385791 626498642 548473441 277592336 644797243 547483869 925334743 472193634 612746385 363203321 83230978 574420873 780048417 666018492 833947714 983600321 88653935 111350558 482145006 122769023 499114089 43913437 123535137 179322877 307505067 693034693 725402824 696446968 687547685 169641465 890681768 359163560 493654398 239541676 407810728 64466656 376851268 609716434 718977807 605135648 161365249 525839059 296365943 849764872 587027532 326818913 668102523 206805332 367567161 57146270 771582935 365495534 440933178 60614296 252620521 907657316 65745367 675031862 164984147 340983371 381629804 916087499 361385363 136685033 263471286 374114434 376252853 188311540 940986194 503464425 193775966 406316458 761481378 590496173 696703242 325576864 338547312 602885748 469384945 617473015 858034746 570172572 189145135 347775996 411683047 328799960 5327851 21340134 411171878 93335730 42615419 629823658 11738219 469548572 958251715 98945593 616679173 479357546 715368770 469555073 815213635 338614005 994679816 187913350 984125138 504417159 767779051 422306587 852011603 778406917 358399518 934818820 499324136 926644275 938564842 437102387 93580078 360450624 586210772 84590933 106630557 931494198 310262846 150792329 9602845 483385558 347146522 370070776 837732563 820492246 222663688 146777462 735099312 852675495 889836752 353522392 968268439 772981361 166460993 709519850 213353483 184646379 116135188 317719961 955191420 298761324 350311929 531375330 521915929 198971326 472174098 536542590 509866912 310931732 862917014 899856578 390880069 300457751 654073734 243123910 993414472 784818804 407912577 485256920 635928466 792559861 19613756 482499344 238485974 28845746 524272585 998468719 515569545 281582945 133644940 490647631 393651055 480814095 523559935 771276947 898486158 416756906 343624169 424231343 441099168 112029565 231963482 433973654 832746694 692494402 87711852 613566170 167896705 983435157 527544302 328863196 322499926 276836127 427230147 507261328 459964435 457651613 261377472 400704921 899469795 403523416 765209155 938938669 88568666 615897098 836928245 46155540 39687262 269188350 568697320 42498755 268080734 410640960 787622194 743552000 6296729 587040992 575938399 433292673 879584726 156973329 353487171 830648772 386571777 679784531 824296600 21518029 523855560 214939878 232792701 134871620 120621905 653664633 884062827 129285709 941888823 598098094 73509956 314370970 447197661 733330175 700513517 881153820 487783159 246704259 282470346 996276487 759031157 988002703 8774696 966675274 180365211 464212279 959566179 209702557 545036998 29955583 395011612 421719391 375331772 899278712 221813149 233073148 602108370 64384116 882524929 998851009 148154241 984663950 59425290 57125442 293289787 258383783 11609123 840052448 27159830 337404079 608291948 347773704 300397499 403297226 894721210 129067434 27315528 616269610 196399716 846444068 732623674 71235896 762804498 305543078 191809197 898663048 371082945 264915607 592539309 429868440 269255691 393767286 627519074 446313875 849958067 213290743 602568922 381600312 939891268 465980680 199557929 376113198 55493250 515998288 291794333 684464328 797863310 954598790 997445226 511133194 970644090 119484198 64070089 284786369 394128092 975145122 915618571 605097648 775343665 53641820 610663507 798725547 443730173 343297009 251133413 111871864 896710533 469191090 155203130 496700723 903710762 570626946 77847873 125125990 112744160 940341483 688059067 96413178 771226554 267047054 446183224 141227036 938568007 348109118 605064606 741126126 733604078 818408554 303904633 158056783 467198200 736141084 958024685 9171535 609311673 564320865 88334620 675953978 987131729 805228906 771780542 896217046 488180642 167704133 309640852 732179843 68687484 452237519 334386825 185818134 272626702 857466941 424936340 174684011 28097698 461647172 566507590 525434368 838953550 180775371 808063568 391190545 354776515 315949735 282158873 166800077 508334358 530743709 322179878 886333421 891458237 249197090 373908365 128589831 804441199 340630144 931464406 905664536 543056306 333212426 955037491 200659660 336095929 187026703 465486086 666324197 652805990 738781713 588278742 95758237 233941185 269159431 636242943 506027225 302455108 790297592 46411903 763460428 919750496 22892806 803605627 199336656 255149230 414094898 290186959 452189561 381426640 894999415 576383007 252233697 903250633 142307301 826016371 697888079 97106927 329339401 654497118 800708470 495789265 349067960 124277744 12961691 930572327 394832148 564774180 13040291 312046984 671524428 370563207 39152903 84697349 420047175 229004283 191836493 937158179 929365199 299223476 223497204 34989849 580094070 910757088 683042777 594550035 898976574 86542598 851561171 91835312 834277811 666023520 295444208 405262098 622427258 44489784 813126387 215014551 652896876 245291034 573328583 878210076 71912372 919756319 802827575 795948845 370644477 922204065 789078736 207428068 790626262 531521419 163245470 989027842 551757795 63555359 536307154 142587547 565680732 728362810 530454250 872811862 851078178 73671983 298138617 202151753 401105090 504844493 922219300 906173112 475251507 57962037 481091024 785147980 207667535 786617517 835318962 20930661 609878150 660318760 177841983 634394484 915250110 457529310 374532795 442847633 599974337 914818297 704136876 600021934 43220436 7232255 545552963 595609139 554151478 732419605 363791615 988049205 791291066 689256271 21774149 312656177 258763497 833749530 551267694 4972258 9812107 335556229 595449139 331083664 428928445 211262929 830290096 428208498 378420159 290717095 152595404 176842445 726537163 337267567 307096638 850078607 883845407 540630466 239863637 9629499 5789419 616539751 851759886 159743965 777521685 934481889 582558911 830941449 883641813 235786482 244711198 651909762 335604066 196602969 74392928 963422050 396144395 203112128 253026046 420704036 688613017 675023079 622853115 794013203 376808654 30407432 780145247 851209219 410729854 537887076 470506477 85092881 130167030 298761458 912849987 876109265 668865320 933811452 548588002 418707994 172510068 439607138 722392429 910170101 780305481 44610271 801915778 82950267 469948811 294009901 779089927 599022783 935771538 215826831 511982789 808146297 987278449 442860090 790863800 597682185 959923083 122578292 457945702 529764390 195432149 308985926 928123491 71416771 656060352 298042787 280216865 243765195 835532546 558224368 246730889 403869323 757776008 466379100 815613594 303558642 180620062 681260651 283751106 286797567 854003512 7152897 781442574 288517050 478017132 262573119 829495049 344521247 394343582 765537226 521359543 58397382 362402612 868464054 55270457 871993834 959245581 960277876 465999108 383952747 212115237 115433667 154004182 101942467 773383951 377629089 360656291 131286247 947561823 779470190 890091738 331405451 85739543 723345127 204081505 169358743 200840879 568614302 298196391 400667680 103529122 323982004 558263447 402916074 824314433 365731532 583501804 231405395 339357928 46965887 116961155 648597298 33058684 164653311 892293952 760184060 394833203 777311897 705006262 159923279 173283044 191253925 282852160 916976546 269515660 780240327 364917260 461351002 484987682 495030179 103635324 667167629 426829808 624205575 237767602 747396737 518502600 447138242 533006140 509937320 248896404 694394926 300516280 887796898 952257157 507304472 80183183 858624568 720273214 914612832 46660604 401920309 251850452 509442500 73784522 297643816 501782052 284352303 686399325 719081628 654356451 355736539 728194326 874958919 5239461 335654192 115564254 451010352 175384011 207819428 395962217 854275303 523369438 962836910 431476590 823737778 62273891 217040855 157943755 845560409 108402206 100370532 844756748 463515012 491867903 569662832 468966671 106018635 721050942 215482280 367612267 303621831 35543714 757225051 911185867 423377476 793893707 497217407 401418224 845170207 244100760 826420602 220204185 208593372 671455734 930336551 364206177 431473832 609159191 620574510 191804458 996382337 782147353 368624334 803832931 560056372 899805622 442617706 852051157 668058731 770301990 142258411 944936455 395096563 310987759 475464125 414623149 744903774 689074453 133546977 640048590 231147622 652971078 360439339 539307052 77659664 275642341 133585713 122616144 220066150 223195843 346044108 767410773 439981787 971159493 975688686 197352940 153040355 482765602 682915222 871548074 598161568 828520478 23078825 654985595 625688131 679107538 925937107 438947816 88635309 673810716 573027299 597118071 60777985 665429372 271170883 256717845 529083614 518007438 445240391 195387449 483617320 979098494 308422264 172750728 725853739 266452932 168021686 679236593 866401003 550885467 473911455 504775300 740074778 659917412 161296410 566329712 845237614 722567850 333662531 812738625 615811374 978299985 172755547 141748837 221514109 263253966 460549691 809275826 267343427 650971343 200768156 162786586 786269707 991755614 864648412 414941593 304915642 69879324 146037719 207860044 861420288 114474144 503166990 148609605 953551537 798942226 720739009 219283680 246165603 724549529 670542784 631818059 661445476 595427663 183157562 806266066 884470918 63467884 197475366 131930245 412340990 649147954 285932291 863832665 406811278 694034139 317026740 999398281 434813976 954755777 495008260 167405009 887710362 900773506 484283662 947765768 414514967 257873626 648423689 187046665 560266556 194018227 683465689 355434673 25251703 352474174 36876145 417916710 264069776 452353359 674316753 807610564 127056602 206170334 712506349 508816458 399558160 783491582 201185775 922161494 968214539 78556450 217796149 731275675 869442924 309685451 919510415 870786522 926363140 192890484 820215755 308424970 505542033 566267555 161635989 40613319 807220083 693986264 116463958 286990902 377465883 195275160 477507101 156287388 240487329 545207774 653362211 561707426 836379977 176085922 411827125 201850703 731048259 351286328 299829192 38667337 228840490 530744138 236343933 554148515 243883137 330841155 320961133 717396591 57900135 702844181 519929249 64524744 908575778 911764040 820375555 681044546 476502887 364732304 196921309 587428849 220334061 201115001 246937055 463874665 676339359 102639487 52515779 62547560 468443565 522417032 941714317 757000068 776482696 202279261 164172077 635406520 531029268 584215444 7749438 983848991 151814837 470868028 955746806 102680920 423813121 160964880 320443110 60352878 841567553 531123127 171292797 925483827 701802875 595662372 40453939 248973148 216088075 836647570 764626457 977898974 243192445 258666200 296736103 960446867 584132386 910159876 17907399 189658412 99195695 566857182 86224311 837001159 778158334 788832339 157836750 809741505 192600571 292498382 426670005 458851527 311672502 76537280 31381675 511369190 904231975 758496839 696304785 884894988 533378797 580611868 908165722 340281959 653762508 471893213 30550307 77112911 104051484 827557582 716934759 689910412 338604121 430672179 733290811 858059657 481131469 642557144 705358765 74471525 303119333 110237874 613180228 383132020 487425247 85692050 825822004 617703497 280364576 105164748 441166554 790943018 341554005 150920211 738081601 3635274 803267287 341422975 923391109 371922072 708491051 267644708 441585775 46425722 641372201 976902521 783151957 10712058 379132286 331250252 461553874 709934812 646972546 959079222 191179615 405488536 448569259 974994182 901092696 865266277 376702420 935282039 210820959 374986221 317599140 604199064 400732662 324572391 109099260 36024820 774646995 59074145 52558367 292515230 510149835 826950767 238988049 682070356 782737626 37346282 223168302 232476491 460398016 835209167 405062990 815737196 991206541 1746748 886759325 536026596 4101314 168031502 961206764 499715221 267580807 38068419 532355762 66433078 365162390 912870198 928520825 819281874 470727807 941685564 118086818 902011244 869552931 628017721 238532776 585106471 118959014 910556046 17101797 683055505 841415130 857078017 294694376 510001280 978651144 873493376 291664026 739591967 498935264 415418885 477116844 251771882 807709830 99994376 323655729 120005143 282260357 406229077 278208902 258494427 999741445 193797935 185201300 874614154 925198497 180998731 570971557 602211193 189201075 739622867 306296360 934984980 728846490 934324265 484517241 552656273 660965404 836747013 419002811 776083078 449173645 537553455 303142410 456671697 424412807 627882583 806663445 403437751 491981603 548965709 365390413 194264275 402404143 995263349 812353170 93579148 401300945 808361049 765535532 242358147 561489074 287004426 431100549 597559366 880055365 777512220 215732838 997634662 737836567 776421601 287788958 703323040 732086246 246417729 229322661 336835197 367138638 770252593 384853506 817910696 949410285 449198234 940250754 734896115 180181962 28419942 134467365 129153581 8493797 557475578 258899368 195402949 153446937 388999997 269638374 719324924 335662233 109515466 951017118 177951544 489613423 24763438 401659295 143544754 329700781 326079309 995576915 955161263 355749883 734956268 355910975 666218638 142760217 240860407 649358794 95512920 99017671 573136713 234231358 638885053 17510864 452413958 202178467 564799198 121140846 14424774 329868002 303290117 22522363 370329421 662727897 915304360 579628433 924137096 194569612 617270512 549562315 732024869 64022974 153998145 796563652 623758417 933213711 843124113 530271822 262668351 134904557 306378084 687979302 109325428 261148066 515541722 118611985 932830876 972457329 861059450 478612175 158268547 506398393 748126395 858993189 394665425 411185551 768658221 990313223 477448893 528213985 562190421 457348006 973513704 538956629 519517001 873733109 986997173 99665763 820534991 222918949 411638633 127748137 537496429 991862264 807505034 897381406 75875039 621602568 250715476 476513373 430247559 197518863 413125768 890320079 348505705 749950560 296956021 829252429 89716408 209083930 130809773 574047257 215853069 80673392 484574173 351774819 583735628 75551922 574700881 230909446 810960045 304942047 733083592 889657339 499963696 819319142 499227328 581861451 558772993 943213841 898783545 463653083 718846671 317573604 878573480 125519950 553336114 867031383 883079686 307257587 181235294 483873130 165598618 483271809 123495393 868694238 394575732 152356966 117672093 543980531 826114894 116367058 445390532 463065799 277605070 959867210 964519751 157793960 572206416 12673265 151515944 213206664 802344649 43204188 669030774 64678228 401664391 471830516 357580363 419587177 73475743 585950180 647194111 442568974 744148295 191569084 434806229 569864612 123735480 225762455 897729966 742568724 689147440 703195385 83310689 885366566 408109853 853304712 932639817 954753475 772179390 900767466 177585482 79598556 325955412 614583683 588198248 543524780 628725580 937574363 235862695 427472167 495673115 508725169 458858957 606035994 166748900 23848799 673813186 117733980 685089972 553131642 411488827 304658675 414377451 978257353 370909839 977572141 662746408 546289896 815087066 485715318 652296797 728401779 381146545 206509496 530223027 573354173 496592909 755861195 254878282 946705744 879093305 181330209 254677069 518028678 740798391 97450965 789769831 472384854 457400472 654169485 824195710 31028300 69189449 901274777 743213686 474974814 218159159 767909339 59955609 806403102 466712678 575556833 637668976 246734249 980303855 661328315 31550973 399757759 771127884 341041131 775553349 936147587 194831339 233302271 180402501 103802113 822449145 453995762 959077852 825315205 837352803 477243895 249510359 651500914 905684630 861216473 874039279 206456776 871222804 167424772 521968769 709285240 553653569 835597588 336954266 652045526 535136766 647592065 730212872 414966354 638921241 988697403 779316483 346655308 999475548 37196105 294134752 839772062 159861950 539031652 376500742 733627502 340449885 620984442 178508188 556696074 358017111 572354748 174694287 934541976 42345769 220901829 679555794 877019893 831667237 427135781 231112093 752762293 44203412 426693105 827687468 348921515 510735107 986566039 477042673 242911239 960564493 157252894 374040866 593851972 312487785 132684776 500965609 767821442 575391565 952892595 630433842 534088695 642371505 704339427 100138809 375527651 345006355 902657917 871292069 772101291 956377454 540191607 481902981 734336217 982958576 264081164 560321495 60196827 439581298 302223629 553685205 828548653 452988560 917452960 561300274 472245776 739454957 292820960 253684823 352260687 474450565 909343634 302432750 71186463 335003331 9361636 51027540 364277117 603787509 803898399 329039698 355476875 860650611 409431354 303653131 718110497 590991095 622681257 88290271 87856948 441543976 321847194 287050971 627528686 263900650 651145906 830647245 650095053 573239396 854094717 589371363 741416453 871681835 250180648 799569513 812299967 498156894 282473146 470404000 878801611 14805256 515302315 956818698 915595307 824475106 347877056 396445809 579489679 151510326 886251825 874881922 331631808 768563487 77240512 12664799 759853561 906792288 513114461 6087197 501565552 908200945 376986427 870551079 262078589 636952181 365975082 760039954 218796082 224600787 978380669 904720287 722549615 434452842 652128177 341280035 397245282 62322878 25539889 702696122 225236639 339225000 374289800 299871261 633598225 99682296 864417248 985449563 215827676 784667626 853044665 188621049 605031349 694631412 394229837 538183901 693100630 277177556 281695669 618143617 81147462 353809507 591314704 121518108 222612582 64694425 638372743 672600288 192499052 789086786 960661400 528255322 483407499 219193183 793859097 382163724 745684270 776680962 924449641 789017031 499865200 470641037 355322152 39609564 892060126 631132150 989966310 118679803 250326638 863812082 16769878 553106465 28731649 404449200 602903838 831526459 79206382 687902293 754902726 600483710 259754106 758593043 511218196 796737466 784547898 598357616 497167063 974569682 699183865 703124587 113536275 623036099 188057209 439232630 92338532 752072869 840691512 943853172 596062128 693350681 829889294 538368929 104817824 177598280 133950429 338530215 244764057 254429113 863178907 174325208 470352386 132811328 768661652 555249353 265636869 758764476 153162072 553944484 617636567 32345791 404896441 829764710 764500178 209419176 210885416 368523882 437658874 289437524 814769806 707205981 780287235 690726611 120058042 108253058 193128766 243927868 590304060 31405716 257930101 434144576 858527917 152975457 458989529 403034848 729092087 137186116 141241646 750860777 604408601 121126946 464008437 284777373 862170955 157452595 6786881 64084208 836458880 477262375 332952105 896194021 718997760 383166238 362609544 786400881 761894058 812544778 722260519 68573863 244060452 473807403 580365412 640671697 124667730 407715798 929383778 367080401 132523706 328554394 246715111 742240039 111503008 426770064 951621693 895217695 743850450 116898862 515029642 78047005 250462590 435142114 728193572 737700923 634303459 167514997 946133136 423426186 45950718 803523387 887332565 998688157 149171387 630899518 719808705 599541928 431018873 763384098 536339121 470375103 374027995 73321017 281183210 139764329 115650889 201978891 240179952 843706208 40561926 624609971 815153966 658905874 605782983 390986598 566308592 154750038 570598344 779738879 133630422 829465400 864361978 104082793 138228996 554807859 333753617 167377895 997452184 472050324 576268199 330588551 154452660 792985184 824384098 760549466 795821305 748066002 968318746 123580021 901848741 131368227 200395856 555318877 961758942 506896116 872855055 922437490 719773344 330246888 542852793 749798616 432542859 948954803 836104264 765104617 295970654 645745901 749092583 199577609 584078969 877010630 493877070 684631532 785834441 823908558 748781425 682672565 848663882 223305304 115766817 780427072 984774206 817663714 875307146 583692635 226940517 532380171 588702259 651254956 624214154 574812013 847000665 532009635 416888013 321583289 851714439 982335386 838421555 304524181 75801854 103138376 128055309 748226656 882406791 635128225 663565347 496140393 110633737 705038262 358668518 452812979 44389048 693068377 885200225 812836259 489433146 807559006 779531628 606837463 855445850 74807160 31210486 931879808 501920756 122191751 578615054 841673971 833806173 872944260 484785790 3045751 454101435 446993483 329158302 886828095 235268053 318735238 473049071 311250793 782619553 790826079 719590800 370705273 745043663 156696123 555882000 329212146 383130296 575795818 786546257 705282948 867198842 544597153 876839638 306417613 620080796 170523194 878637132 449515255 518942849 147779864 168696265 102328316 446805885 498590391 205869553 168959351 18020442 434457988 504675296 186347325 977724335 442886669 78603818 604016602 640737681 736382474 128472320 452944843 348176588 464740747 492699801 283185974 369626706 533426191 298545184 593649749 693597786 283139999 435552885 437533842 973956748 101932125 556392131 200028606 214676716 380433554 688536379 406930831 142576342 164934993 228475815 837630395 982531699 124671322 418000975 738081405 66065944 366822375 520736753 380305352 948649674 394121044 466201321 318806347 9240269 113023415 742894331 991390494 295473275 254175078 861937368 710501446 5473670 979273126 116984659 267287913 810494216 830369534 643318933 616466195 217917213 992770600 195555272 880641514 718523904 187313067 467160645 926108644 872001564 313200995 941587047 144908476 99428289 905279432 399581830 248126249 333754499 808143021 413758458 656535223 494161511 724719794 551489056 584934310 192992493 187811921 798577001 469437950 899115098 157571124 374419445 963222915 844513367 111147495 982331264 563768676 730030373 904922446 66791677 516395408 799764145 434814971 205728875 932384643 769423890 849295398 170917307 963089620 836223278 28803645 709447584 856957445 44161299 783521402 369067168 519820687 451798430 61928908 717509582 495107468 140969426 229037471 998051945 433126747 276355887 943168746 882263725 772036883 314796854 283840166 410622644 246936658 417977248 88636303 979712629 892124363 722542154 614342528 305741462 220053461 357991088 925413575 947172033 309493981 905163356 915390537 954447183 985048455 350701589 563604526 5119966 767499723 989213088 705050373 25216218 570494738 430750014 65377886 970064463 57538177 980934738 306683682 397881622 284863186 995667979 165387563 149913503 74669026 431746339 321193868 836659578 652463483 634158685 371985830 233791557 267090264 760891660 241330932 531805523 328975946 693288473 173222038 628054046 97411759 712758170 508860564 9019824 72968686 897557682 63480750 524892654 977970160 674625205 521538837 271573804 429576797 891692685 708015639 232339334 640480144 302085729 690038445 717029844 108845119 769486669 413667021 116745235 132140129 229130443 562951840 62228277 220976649 652326937 965214170 120532654 113557580 277989148 502659664 419970397 933870836 619795146 714635817 988602153 684179676 61492942 372466713 124186209 959358911 633423316 245278847 634142722 754367110 50218557 743749157 789971532 442833717 706482690 165144608 548494513 512088205 268158508 862421231 389167683 579403113 32782156 22686808 199195728 747294984 534845217 927937574 315443711 218363633 595977134 172263930 734572028 957157033 240778320 407693570 641537890 855580869 488741790 55722845 426558864 430653416 734191384 502729039 364249005 821469304 638899476 696000064 236051493 460394836 376790898 655809467 582257657 576450281 959261470 627027168 409044788 107635794 524469079 769512260 362468361 314844465 553850077 379392778 716611825 913016527 20626125 889268084 361037231 360250151 403394545 266891121 800739691 936661440 341608432 669684395 705051986 46129125 447062867 18593585 305476153 840564384 623762872 512783599 646427487 560365465 446397799 882687174 539499282 460571278 446949736 462325926 682858450 792547750 433787882 624225560 810745058 750119407 116682839 275933078 992623769 27083604 728413099 95900738 408435300 623428844 689058710 683272013 979115493 510959614 32054910 33120773 954889263 187242233 395227329 950224623 550461500 440805917 266099809 497712844 967564788 21273279 837459727 698796051 867983755 461898478 222841720 778094703 714392072 259710235 704426540 766397354 577617462 776055962 368306633 146845018 480103488 435140769 968773340 63625538 360998039 136570775 400393185 587340000 369329190 417866067 312040509 483450216 279686499 112288451 775008788 898339697 306353079 155826239 597992029 462319850 720713508 137249590 377451851 542676297 394244012 272223437 391387021 799780100 370648619 199685290 137148139 606774205 375147181 880654434 313739505 245760834 948787670 332363839 332059914 126691530 570477796 380958148 747717852 607393883 151317346 120896860 846032630 18936884 734508893 783100622 744339387 357905266 13125880 760214932 233044199 972032750 646787128 417532970 171125337 176501286 143643376 146907835 924551195 591155465 12732381 45133964 414831082 531862844 211886314 951183153 321912930 29829554 556914658 412693933 183233124 851025090 942204043 794762019 248930460 85852868 883298927 722238792 914045835 538327854 334608580 337257748 354401008 984458914 858920904 538515287 357362578 299428837 950390365 472365573 473147446 35115195 154766227 580036600 799766809 256367154 170181752 127502774 583057545 301512779 457706357 88024002 768154110 910598618 929278944 946385847 819660620 9555484 750358845 887690085 516103196 42156128 103003955 679756231 119478710 797739917 48325742 707700290 81711539 700488984 48253002 738513151 178659233 436112680 919224842 109951808 814864523 617599146 178049224 797962025 355905584 543586216 576264545 454350462 189213558 84075999 177983896 581042927 116304440 174576507 13932940 724422114 419112316 593320843 610859035 822797045 416329949 8806317 783398056 950988721 380595914 94725153 137424878 43494199 454173598 692904287 192992305 358260731 324874928 957896206 627138788 711399812 722433953 299702582 885227659 864064870 667581530 356886936 65703974 472288384 554474975 965143833 747667693 130361098 157924020 425172003 48150623 583933512 806934864 915022353 345361408 752604487 839232925 893377883 709250755 568579389 716881546 37719572 215550603 434610414 618076781 907540541 871204996 867584799 353062833 264719646 660295075 174906975 178127869 475618327 724724000 740571862 150149061 927102753 497280661 661417440 313142914 548085454 622151322 85137093 636957016 958793227 674276059 124939139 825544724 139853599 927811991 289639529 72913918 919124662 938035719 131892035 674290153 316847438 463929524 373147160 246248676 931818914 192011627 142711140 473045866 251462373 841835305 827513050 547473596 784289788 870569863 757994686 642902252 307636975 30255251 39246637 720351957 416698056 438280059 759378131 318517188 987274023 183133845 554933511 680898512 917319615 841328952 74432347 31940019 216999831 423587921 33551853 433223711 848273205 41714421 878994987 590328931 260015371 759472429 434226425 935364659 610659570 39723101 469561028 182504824 315089376 313184244 590908498 103192563 593390576 445795478 374546370 12663314 677208347 403581098 889078280 82295530 904491023 745985553 881969750 14672775 408812542 695306205 593747429 257677170 546695742 677653121 625875481 542400832 194713659 311139302 85988392 199195570 881534651 941314537 798210250 325121332 147320197 332032206 656856384 215747510 208811226 754045383 716371610 673711849 64775839 754426275 316532981 54906022 432238032 339546783 826048156 177474529 292050284 693761681 617105592 336429006 844948229 833157851 463555055 504428200 248581244 511101 160913582 555040087 316884144 136925614 187973765 111332620 361797130 255384189 127258535 650774938 684234113 634709735 462420914 301195092 813843982 601106498 346740372 912422841 707536308 11414835 229980249 553947604 445637981 669976815 829141988 355695251 63402530 33550079 4176576 482927673 193792651 575387805 662478744 849400010 350843322 140685490 22326965 492451156 988013404 684469716 368014264 678456212 877878061 996188622 361922923 233640159 256783315 450801445 9667579 380596812 361966482 295494948 450050185 576360196 961108757 60974330 882982296 395722425 404227908 312078954 949185865 400270446 17625535 274932657 840864109 267595183 61755756 244250370 951294201 635245258 564914519 269458553 209784912 571729095 167066643 231198547 26762411 688715509 29503173 311568353 931657450 285990103 294776865 702814921 902080667 660227340 934205144 966091183 733782045 223035371 76815650 308851301 555808184 785411218 148011098 839925015 687417739 351022500 890241943 119430830 792105171 606360738 298368421 270021759 650245639 839937625 459759841 905023111 830425776 600514071 254067909 790336801 17124279 355724081 603041527 34793276 197268227 101730030 260787751 313322782 138317006 662951925 875329189 670708749 817265481 721915695 359570061 193078102 811413104 743519667 98607220 35295618 774238490 35220581 302058411 69356449 13566902 770868037 790496130 699412185 497772112 492008467 34101307 386560584 305818766 311301034 225126893 665197973 386041289 986981753 541186438 210057681 776876643 772759316 810757830 714533764 876390725 291503293 990889074 792000776 358740487 519282599 984286868 485523121 563436695 551949569 565307389 493182633 362957627 971209162 737877906 7459655 263185050 133646716 784159853 844340949 879283847 322497028 676414972 221282951 472394296 8011393 43580176 102607146 971618776 367992159 183316629 60465962 473559378 448938967 448872238 406625140 781137052 27884049 215319849 833528681 626312417 291007487 682146706 219847469 632012743 712140978 696162233 993886799 46945704 823867281 538906838 277294728 645952546 362843047 372425449 348682953 478140039 539982981 3130887 225353209 69475219 237474164 193949327 133540808 599814962 683765072 653041195 258280855 614418571 44210776 659140023 92286801 297845556 667575134 991145269 307028072 388657881 974557549 697799785 59479175 296097765 899760968 890523976 879679936 943828229 952338815 778638652 771285334 808793953 37620256 368695365 81829517 828682483 55941493 985894176 740034869 813836811 887121160 93767981 823971498 742264286 212611881 764913987 348266517 34719836 772186814 320181966 515026003 74184523 395401515 496982884 709751960 239653189 454058290 417870936 745036206 726344622 912560072 721167359 468869541 139622214 431398399 61049369 948508165 253905900 548173472 616588565 8517664 64160646 168746415 569886569 854378206 737644279 886086168 248144808 26093157 996467414 574241037 49433481 610813637 794384731 335500404 222460361 25153966 151981314 177577820 266092146 971900339 875003600 144993727 1567365 825232383 819247068 86788286 928955002 744867659 442268474 377346813 130235648 278366283 124156321 165649629 181834189 331398049 947414613 564098050 471635961 266774997 522375132 748252787 817864651 124044512 850278272 222469720 144302917 850264898 309418537 516252297 52232248 338559337 986490596 288813446 354466582 862414104 918035745 654780347 518821939 184409403 335487742 9387399 151806895 176786449 305643123 663384727 904729154 965252357 146852764 308681281 99058186 240874766 615713920 361675390 103464118 6719332 850886918 304357488 124475731 725428103 163762954 422670374 462468066 357591267 246003130 128030245 217141616 777637791 263272754 578473908 476383254 181161940 689714536 521292842 381730777 45361144 236406242 337359114 677841858 711273576 838670367 640654409 245188315 577664900 730754916 396467804 551474521 207414640 565974327 878189122 825449963 862557547 573253936 351461533 993765065 383110349 881245576 941151179 470891082 983543708 58565287 413192216 634848870 690347134 691289887 591522419 523313861 482276313 352547614 109658230 49950636 847899440 107217927 422511708 243712270 387871532 736605392 169431681 91275894 69192909 678162576 717891156 958020245 481632979 526614159 557408909 97626044 464497763 513510965 743342234 374661893 843111248 14593779 154637635 994584992 412282037 483223818 885223356 283321894 316355529 905824443 172232494 887673018 929063998 7626754 518301285 593519210 767373636 378935853 955686370 596910980 809679912 478875238 443379112 13018248 644561765 573039491 65595110 438686047 722851848 385697716 301119180 894249273 905215433 72582399 678962373 634686073 687440686 163762264 597044393 467788968 440703024 164557937 439612729 242025199 391111616 370864429 351537115 3339775 60757211 617788136 125895665 868256159 823099105 833897814 395297342 795266468 489209035 266220182 457124887 53936485 766091569 176574950 716434115 647928023 121087242 248157673 167760988 636097409 722605516 774225002 23796705 12879591 992503305 242971472 905394896 418720217 830214114 490935712 182415802 917171034 891678163 515586473 510935189 848645525 773263696 394494410 76806096 82117716 982441327 549336155 781644073 448663269 952371088 915443677 906839680 605469919 819119693 181424313 326475491 846627347 658529992 524089675 825531790 866051066 492847398 386440085 852917301 146295125 554622089 424477865 631308705 723178816 286642316 539184899 683772041 162778544 737134451 610406463 274022102 606310627 358106133 159593157 488737350 480205162 792631846 695458596 769930135 808040875 593293426 225778156 920572622 322328820 138833326 986348777 286692800 814071880 671794481 390282020 933450320 866430185 415615612 611950041 749481166 261901155 953280618 458503903 987031017 766462571 974745049 895873823 890813423 213156801 902401861 842491820 919001052 347533625 752779813 688197165 241943841 53032880 848844240 257127186 510966557 252368356 979849518 671968289 692889374 497832713 358504345 590291713 348410851 471219261 789096312 702689305 514848182 32400548 89951800 17376428 609854693 686793506 701105851 56843938 609832649 857739622 41758549 955750168 659941398 653838325 989416312 808622495 775793504 755837407 962216805 349296575 673177573 895198805 138891027 995229023 556904423 790776485 430664842 723476059 475814808 328617018 509104903 545863099 113708702 977746373 338279029 206450578 832570755 341400882 386768219 717107489 921511472 486955700 504661896 390708912 623116420 404047614 501632936 962049888 503534710 266217505 664940824 713604866 960074558 351380678 206848100 291408316 508804068 387033113 210132099 950846169 770078039 810899773 252999802 451840073 778175194 995989170 353892169 752912620 743535670 808555733 935020857 163738241 256710197 895579365 919472591 839542876 291130537 80147749 672538606 923324302 107953864 730353065 770554083 472876441 454355120 203167501 380562529 671312789 216921429 222828818 257459381 190182405 565614163 822716549 568457297 655582807 163958771 261998992 162584828 667843039 907972534 452905051 50876806 536683274 110644046 805842182 150635407 21328139 847642152 615468001 448860439 306860301 446777640 614710591 432904435 571369711 287419901 557332771 827125703 844527183 643132324 233002286 989020617 71412158 834803518 547545076 682286064 831041758 214674043 752590862 533883645 238717971 365188110 431055329 594070476 413763265 977847870 444794980 922042592 3776622 639823457 386216054 173868975 74611930 305455270 45071652 384460014 27050293 683974739 567542258 728614412 194140999 845042590 991524441 784624541 962777463 408707048 44294966 471655768 453214212 864649084 190207247 396813111 347360851 588621491 631204549 981835460 736915669 441266877 160462288 782759556 891893678 393887825 539465802 731092573 746545072 150982405 229839764 456203326 173088942 813157005 948449833 153926691 570763944 578894540 629271863 150658663 1423891 584428264 809934277 13831827 681836830 415893025 170494565 4543569 966985501 629777946 880022426 995825244 168117405 811290323 180329564 870755425 686039450 77360368 427091301 303116859 859808121 227198654 739161796 917567871 72757526 983450712 30489323 699692545 758391960 798140738 785720003 13201467 379350624 209901232 237541708 412034667 922260724 933153612 944324141 490417676 913672457 104496495 152267707 942026328 402909687 537271619 113521062 747095142 977419801 86198268 990606337 324898767 190901975 288508639 221883816 578734033 813635625 121461340 54336548 504858507 715283663 406778020 488539753 570632643 404856043 731343153 606969303 955322431 633446392 109254556 405859021 483926076 813614476 369520712 312639539 424267085 913162668 646542319 532013356 974453431 963140349 292416587 299683927 476277569 760413825 754465663 70069559 759697499 866329704 68314733 82276975 85898985 264533432 78275863 360796028 352850598 828601133 782278534 787209510 347847607 640741639 575700734 888729203 82185711 898008225 574816515 478900294 342678183 816659231 48200800 631889781 280039313 35692910 479182479 411540196 539451375 437474216 451054982 938979371 611997107 597487064 824672853 178700706 689297605 99937745 980483092 330265538 998398889 253070275 661893894 516504019 703628798 895779178 309706854 866044836 622509541 256304624 59415624 439435477 831819214 162702144 961635278 903790074 287420169 728107811 297009223 577773817 994516069 883891580 117389059 500825385 765835949 934389300 647108626 867027344 831593098 980307164 965012961 863139026 711712064 724324107 949104790 566169854 198706501 588016099 186720900 24946786 337818623 43774703 310792475 950444970 395762219 623952896 169507057 631098947 145803517 862077134 411045406 127111487 846789197 120056474 9706581 764033993 205501399 411247633 766037679 457326205 493311975 955890632 762622088 420121691 895584465 490526148 868731711 780452902 236702116 698848867 583719816 619384116 705420159 653734192 409159699 731586802 698524283 416961851 173452906 760628643 934793782 627368911 704463078 601888882 958487708 587461922 821778486 262235378 721944837 941884629 144704781 467233783 238965512 326878536 632737708 15448511 392420812 737364053 449655019 383898411 34311819 211115599 786415916 868724902 955281804 996642706 679201778 688056339 160641161 854338894 236324725 670151200 418620809 904971336 960227381 674167448 919924395 554571004 863888735 501498499 649346515 456631661 150519487 935835190 363079002 592940988 699018126 746870494 786864061 679794450 536323005 116903532 452263902 168975361 136118352 654463431 293205938 308791024 322594066 962483936 13550645 526670065 249774375 859349075 244743042 368045223 980277035 95215667 482656606 202925747 280590527 933592032 240643025 631329366 92316406 511766888 157670611 850599123 711914869 184147873 731677422 703754949 206571834 674285789 262431027 940866670 42729971 126348387 993529497 76456167 5302027 340040961 592913665 721647593 935076624 393391013 447831633 57224433 349817660 698490836 47327583 170498912 994989021 551847925 522237707 496660207 562375580 350579207 114578653 598011869 206496983 146286295 164657227 829065433 941470268 135225781 74669006 25916311 627283810 408236830 455271642 580721992 348542242 505573393 510307515 837714252 741783441 406906659 777475784 299941104 958302548 64347186 958319753 115801129 957222790 400235519 479939169 708176229 197843031 555524363 135926582 803787899 687029823 235802238 707226989 176657240 993614952 408983232 200735118 777681832 660001659 708116068 385157435 402278467 276965390 600231891 504676372 980458529 238935570 9771030 188152646 969720062 909127945 393339604 298365949 588583573 378869316 352115431 467852838 837110116 825971749 138951491 1711981 611159667 720074486 301899635 380508310 983087309 397449748 215764003 132692641 771410186 221189024 902334403 37024596 789566413 53756891 797975279 222409187 848130716 732904543 369103641 324780257 235066658 151289851 393712105 421218933 106802007 985798679 356285085 261440088 973061646 932593024 321197338 899066627 176880618 188871120 950990996 786954616 388954038 632691297 289607884 340638339 982486726 937124064 799055112 768042843 898837493 514839495 2433125 777632485 260434635 931685309 681134537 950190488 926331053 260959024 781738983 583303742 906429157 441759496 889073072 190931957 315638540 902030850 356312353 693007042 140337149 28912315 346487876 364252744 858942019 61358456 321511212 779611597 434178286 227023103 919775500 490367029 240644178 804503352 547326123 190294396 275091764 203492656 359618274 793002095 227018041 990744306 688430310 594430330 719031021 130680029 595568600 21645887 93682737 198190755 498023687 334427087 513388803 655046313 569045291 122048294 177920644 822687216 660350002 726993561 61260047 363927242 781100962 257488706 194966619 115406790 907662569 731738976 217876141 902908091 131598866 3080384 375888108 842614635 268298676 874863461 99766826 323203287 635215113 965666333 951991422 859781643 34616665 392398568 376967968 763843250 563358855 534312457 237971608 491298173 539069759 735015368 96602113 267769045 598651920 869301408 998185954 420550247 132583018 245002388 653574411 561825909 960539643 389123767 365980068 714443782 505002657 363050320 177176953 825637342 234341201 985855448 378853027 738656185 115757048 311759219 147820778 587282408 343118931 175306767 430466184 339193693 471486624 575766926 332856132 855889498 543475483 707026248 383740846 197022452 638445400 549721791 781299226 193210432 681994052 29904597 895221647 399711264 167082778 611659389 39402291 987370128 622868701 283840261 735233281 810860033 321047768 951224363 843075984 495442661 675227059 13800410 836460446 437526719 404795283 651026150 366173078 513870916 311502908 878908859 343205629 586522074 687135552 406869028 487081435 376260284 627189365 231687357 738014919 934432565 497102456 399064778 965518586 151265111 519725068 386446057 795253497 164293505 779364237 783839582 107571637 945746024 886572480 982266117 285249676 530981998 533102465 168432198 647273148 335043628 415194704 786231196 949015575 377577810 682973268 148494360 650213347 993371354 231850116 770836584 712237331 986572160 104208923 276807759 834435509 911508786 507677412 339052084 44680951 428384 906764711 23827643 914326428 956523651 551603961 399162425 115590757 308530767 890522517 678407963 745589150 395625606 92179249 483556292 659829642 66313114 88208986 537617742 212431688 220596763 748674782 70801419 659186239 406902222 218702009 36723842 638511840 3850207 90966613 178227011 129898628 336145496 152463505 495356781 160716777 144034576 427333682 336342267 648959238 328981669 452177274 776677582 462028236 329394821 741448899 676752473 567335214 955460594 900780631 337887571 822773979 874429598 149381178 840390145 817176185 403789029 516378094 673419152 580004920 527152851 603838635 962184102 470003973 393436028 834085876 381174655 914226539 82116774 844551423 630802861 170212432 920379377 142479413 936781043 428533497 726265361 790547365 318833215 936531434 188484046 932139304 255453260 711813048 887931275 643157702 280496273 471314195 773963942 434396531 537822395 668979686 215854941 410872529 448052980 383639053 710121406 699705551 587371605 165515370 97927849 448106514 923549788 877554209 661408835 465423245 649267792 28969595 748743904 982988355 371355385 244116906 976937986 85899312 894126783 198389049 294728053 203707785 956175876 309326537 46886893 629344479 118534933 989819441 877067537 725821662 545165612 390340502 261033658 991124760 461307647 322903580 55907057 489356082 890061651 257228335 230273398 794115647 147384910 907488077 498275681 88201283 767042611 580870971 551271855 682966952 339430447 375609994 256962150 148057499 179029046 728784356 243131626 256873289 522856750 354587616 375221844 280027809 35942125 76979158 621576504 695299712 806470494 678086359 365455153 618030240 373080747 864957247 2906403 817101115 763142641 840874071 698184311 14751389 994955247 996943249 861653784 720887818 528886695 499394293 947470836 62678406 954072534 595657426 178951556 563748854 945472369 788716308 309067146 992946135 553198878 801574725 556422557 544997923 202988888 37565924 149498972 559738561 985002962 986658865 822823989 516669635 268979658 511262012 342891764 253464195 693485434 564910209 352980154 170538964 429302983 980526626 351837250 252895878 102665745 301137943 69842613 528317600 576426922 994766060 155626961 344812377 234134959 887118434 535302148 289602721 600525159 115087357 509114638 318001294 672341738 605081875 601810465 738300347 808918717 87614547 892523714 825432424 605800201 845938631 78516557 38921232 995498619 829231715 838420650 436058250 660459456 590787801 680461719 16793998 569874994 319854925 469285053 882581485 831388332 547795401 533058089 101450425 798602090 528284669 2933825 162288296 765047952 732110119 206864282 181428656 959090627 48714269 337524543 127446451 833762195 406987893 161325385 829670744 112913533 959535943 698459290 976463442 828281806 132156880 716945535 366706350 821157674 47818288 921244859 241159966 485687727 393747391 242064631 489969004 228519873 715727690 833828553 692899862 384009810 310266513 665477927 584018897 436531029 132521274 786461526 995693681 882447763 124573432 459200200 239287544 251217696 789173781 125864643 131871642 763345942 923228707 84979951 181864229 600203564 342342643 763246632 442129631 811875030 636178704 574642167 471266640 366249725 3198015 149118861 681909669 462695201 117343661 721262060 568679016 154699890 219048447 24979149 843601426 151334269 942182418 321062404 510599917 788387674 694095348 899983697 800458103 480034850 963487750 784877533 956074367 166192268 359849717 56250607 400728866 191044610 573354770 138490476 96082548 185699756 902519793 667743905 688683025 752501540 282623136 144521251 470660033 626082954 339583767 425952791 224408087 378578799 519463047 325102088 332915261 441627058 225327851 535831774 105458052 39827518 242605706 259992002 964421514 216718806 444491335 390683345 290259514 175763528 23902010 436187328 61604504 226154722 625717570 307448473 986412582 727678895 803429787 936722739 495133677 302343477 479750523 264427038 302952312 28161028 558375090 514954565 99295845 874187843 955945458 887043105 433692066 296978389 103692245 412251950 230001768 122357516 806561671 996782011 199038125 936306247 860029328 493676204 511053423 817035414 931789835 975561459 201790653 351680685 448118352 613913434 263317639 696535853 632693992 919392601 720234230 203266390 904675410 208330164 769468813 814031871 375745650 641046497 500498830 580486122 437222021 705490666 485438931 190733441 126623897 569857728 973873272 793325601 748927982 394638890 168731196 992094491 784273902 702540853 534399466 833214307 377347032 113524496 327865897 690817471 24245787 474399894 324664392 500568018 12656043 979357671 951632291 390491259 396055185 830844945 847439184 275642416 940014288 626720990 650855819 722523154 278620422 507786831 557041879 386916825 614333871 679969278 608099372 908338433 835821121 444477754 440280557 730731607 422845510 720374424 138893527 897888484 994610942 896744881 196982643 854920154 588030709 411081238 326912946 861446139 49767869 883638118 631636623 712873767 302426102 473587709 713354238 895681766 585509513 770032076 583555943 658651653 28917272 167440567 295300556 3419587 125923934 196146516 997130498 60121652 266269365 638016109 128523986 13458573 646030845 55017891 80427655 398269302 263204972 89013812 450383533 931306169 139618282 728514571 913138704 784157502 960280138 686099214 330812435 702551185 217314362 505361000 304315156 742920688 122056074 621781083 241708738 969276270 473463161 839488611 554387699 500663453 436117942 615648715 926587793 442672413 907917919 247796678 771317571 195915555 936743289 335816506 10670025 166897346 947312383 347363251 498993669 778154030 520608145 438883175 826782284 173775688 784465298 330904009 338580195 664895516 899180073 149324023 952748817 341959249 2570251 53906461 551911392 952712953 175160329 801174121 8631316 297074256 226012042 99511413 2851362 618628531 184877942 539494262 274259649 67418362 754924314 311564529 997427993 979481286 273517910 499185451 488408126 820164436 387625636 919480323 210907457 634493810 270410209 348944745 765088817 118946469 477276341 552330561 166189897 677133635 478648031 311973393 655696214 394254199 970321825 930866241 255480458 737172717 393359766 158084699 1224993 783880224 57261395 733320126 97814064 369058292 846613920 846479203 821967290 783742126 825503039 419414870 304080488 550700132 576011950 529277339 902671547 296153328 492151509 60856702 844346196 492359167 939603640 56495786 442255589 232612890 873868918 283073590 515974811 4058048 694235592 597477504 668125238 216533024 86599645 577010360 65617085 659466876 465560124 592743279 999827894 397669346 370896628 904630298 486215700 152522249 141022069 181775916 295409887 482403787 573970897 921654444 324366122 73417586 133151312 580053184 626424411 652791687 553779292 586366789 881773146 896514207 491770081 955457705 747707526 737168940 20198526 347715513 702860652 481175236 146579110 493251840 688702876 389162823 793983175 373036737 431740431 435476234 102506574 13846609 426094161 713692910 606122507 804239161 189467441 568034873 910605931 689163438 973530010 30492617 729002829 890437834 511450283 58323775 195691543 263320321 78650687 330233826 67270862 495677290 714996202 780454146 764647841 953923399 524278733 1365929 354104430 394661116 668580383 439005880 83159529 842945884 778996242 629875852 177019198 690401357 227324699 499035169 541504882 655787686 800545545 458294787 690168947 929662851 826970908 919298428 832487904 648747663 265934538 444154668 46383505 231768160 206227820 257527367 241216496 797399344 745078328 512586046 101818978 739071559 280152690 973208835 535719852 915050488 817207200 689428508 141717647 238900566 884010673 911439224 679712902 20256609 975829388 795485897 679135223 214812892 607634876 608557221 652961669 169247252 655840723 456542697 545843806 605231120 229548575 177622014 423774725 672768513 71674806 61961218 902751471 193377933 932858901 34363926 801807610 841965428 997752070 875355901 245062871 936587885 394517110 224664273 417929326 728927779 189805134 538565037 606313783 957510046 828401165 703256109 329550759 446773563 991410501 783654759 156630266 56761537 387710130 16739914 756723124 155273297 233496753 158266481 457621801 999093471 277595109 415672856 332310366 7954538 607724553 865398303 93203098 924804891 72857477 113080858 756549501 743271763 882781917 271572722 873229772 674731958 279480165 104305208 684881953 257076818 15237462 170212634 562338985 523633062 904196406 314597142 761780684 773533565 142040241 591276971 917020211 10917295 999286708 310817792 69028182 648011686 682006776 208020518 680656350 727973079 584174416 720946081 290040607 985566173 805110828 102103114 150651938 478151098 689387281 637163018 403203700 567325472 884083568 437892217 948501871 978640622 39194357 728344010 322080123 912759991 483886692 22801389 384546824 840962018 684468532 29593627 50376770 429122545 416012057 442211159 489608484 874266406 44133197 945183844 198117990 667428220 705295572 144848856 416878921 726573328 76544179 613446886 739220544 403615293 342338832 32730646 806412296 999117419 107554722 950436584 293251991 337650490 177257006 288369597 815066965 296967019 167524965 529638887 109424171 282123110 471724612 908956718 85803492 409866753 825184376 553336300 592386307 700465365 357130996 402617868 828256111 382769523 577861136 671907909 957197617 859603429 203303011 385307318 483130228 785411430 433971284 362039439 292137356 543281324 596480612 719168580 273509678 458680036 251485808 784905077 2924326 358108700 382470537 464794141 497565789 264426105 660211773 132656107 241448776 342205211 709909655 302579693 804976498 163820075 972837971 784341342 350883488 251915079 605611719 650149891 128791011 496959821 152130973 34368540 549359159 548560993 798067293 823127877 358582641 308760895 582860217 323077147 412388361 718931778 241650597 143181098 660173500 144929658 35838904 608250814 622398161 895568779 225433095 125746059 902936227 328701667 918057715 876662086 479354227 130112339 98815620 634916125 467259089 836613396 815950905 68503638 775392789 547541275 336649000 786513662 501567798 767032591 528281001 842400905 947977400 145840313 874697899 105266957 93809425 130354 889778017 988269726 225940705 311354915 738957342 382062686 417576162 673747621 344800947 990997541 623765816 201010187 881400117 899759248 259971404 821717435 869789886 591995705 711304154 276421602 74465574 541841082 306249104 549402281 264815356 736750823 417702499 284527260 174703612 209436257 802820629 771600108 82975908 817971977 538259781 932984438 790988897 932110776 326690435 604980832 785609723 168934918 458488118 375771047 18001092 45170743 153507756 88916128 223916633 24236777 369516629 397721709 444346402 212833296 872744202 299120683 658037089 960875220 948112033 580968270 516062093 401337039 82641791 446424754 826203119 163710539 939676007 215136945 217479930 82086276 826054219 144950237 954888065 254959152 134858727 606237933 536688334 260107482 49268591 341366922 51754306 315983115 536656724 412936815 346145289 823531016 326653806 202426951 651648671 614432791 241503594 494819596 537251878 643001876 207179944 137901522 971016605 541420496 471191142 532955390 628057622 147553140 562474473 342984011 729962149 825740950 870969866 142817251 176723416 58649105 63658834 385642527 434766563 681054687 164300646 840545560 673848117 132618122 203071378 379017279 843898507 37406846 642808399 800114129 451904093 583589903 299849362 591595905 757747211 161018303 674434363 339152915 323507338 158409911 111784679 903154253 368358408 266527925 327994353 23680272 332055568 433086553 391991702 414751123 423173388 49476564 508059412 597105125 808777051 184519872 541872957 357781024 985232076 498123751 355645143 324391655 996163116 414079624 504435603 283145763 373530007 895494695 642832548 61806990 257474762 510641952 332055096 502047557 689893123 762755150 123107308 475505475 922873322 691387377 856267198 275801902 142283226 245991193 141628703 907110331 323204372 299913648 826820874 132202588 887555881 298145053 760748335 451057823 599977107 641903843 921638252 904983631 311700611 199162966 38724657 629031235 189406824 694204915 172519614 643079369 230720333 593789459 331277408 422828601 957456364 543849122 548158505 527614644 858481834 516915080 620371707 807754317 271033010 779775509 902786882 739120916 935388786 355742793 661946470 719546870 165421748 179798710 765128040 221946413 471284983 359814551 475384740 236292389 400639302 499964628 874542220 86942232 966197374 6459620 248054303 547251660 424036584 678610591 120440620 170397141 996037714 469653297 557121047 431501381 274250170 283766761 581705811 16049275 959473978 469360996 317612664 751624605 683211069 87516701 605822101 94828730 330216207 288827018 767427946 827070677 470152361 864906834 730178947 307718609 883477751 909622846 172175264 748333090 878675747 88896844 631806616 692388929 448808437 152227626 524447039 328374311 339047740 835007849 334949985 457283901 198543329 715253025 947080675 164800763 840945342 55150874 150550942 455384068 446103696 952010231 318645204 381800925 652148692 332431528 382543240 988814133 233179528 250072130 913228208 181337692 390628355 185857343 691033897 44160268 586466600 910328671 927722675 54200790 792745403 416334010 432610673 292668351 808356384 363624467 973685136 134558301 144729209 54994003 955998934 539804644 788375874 108976756 252840109 768706370 841909687 341380621 807403527 32764118 55989158 952048271 182960168 165459586 394781286 333440269 842411270 448330363 419287279 513547150 657953049 263481444 569205881 207677754 516746951 287594698 69210321 690847506 818382964 669092387 150047085 28277759 647584116 377452974 717233732 864926401 429214279 720800524 790340933 527437054 876778313 293658593 28955847 284333578 402833112 129853203 3753785 236380998 494778869 314197071 904542644 995480258 580108812 583202875 53878576 260169090 967429968 754779875 513135875 656986274 878406473 420710412 998185823 721678961 584227827 412650880 823031007 508647699 154804021 213782967 422605323 594045594 488349457 603988014 701340096 747684137 613562703 344155223 310701227 755316532 987890137 309057739 726831816 891781640 122258013 787483028 450079197 198819427 46362298 474344826 715310701 112312188 622219262 174120153 737797236 309014409 958370943 656514437 550378150 398794394 643737445 925213561 536173111 937157880 359602909 335265113 432981699 640629895 498710023 203332641 90783693 203290348 443825069 211548963 604916243 670298641 908786284 496942124 370867086 212782640 722450529 232442906 462368460 529653159 260382462 399442276 412896319 988409162 309785881 659331389 852901628 909881312 998347277 174276029 988876238 907408897 137828562 945855571 332646852 384381798 798469508 112048289 332781995 880940534 692944471 321773676 116277307 224435275 497351144 96392163 503505976 881479186 662905930 872896279 992905749 764182895 775213953 503914383 508297989 231941906 955549879 448784276 964428936 345879328 408423416 207098755 865853922 602837220 626591268 272052742 161901349 170616783 91492595 775565280 802312191 610806840 345224888 723448174 545736160 312410990 987053411 571921555 857318955 412701012 173392114 119062643 293149465 26903442 873744902 956590471 274920114 817083446 169099526 69035592 132190266 357212633 792192556 948756493 171554128 179527889 877403258 518075450 986241170 344996872 863895724 268623061 767018496 396527802 915357026 360667809 531242995 872973244 957199779 427373534 628444765 619071866 62154060 162587521 371346739 791396070 843878443 816331007 770848124 759282035 583183801 649955004 745441618 132397240 775828086 408946581 273885035 268601207 770195834 992224951 328897337 240263763 123503560 528828856 824189629 299329631 693488479 798034478 938834877 778903154 636669901 686006752 433864320 763005683 181523118 912758769 287782502 437885781 208977058 305608449 868540475 103737708 789325810 65079876 741468956 442297570 301783757 35823283 74101233 729447974 472160174 512649382 687089178 856577952 191353101 226448760 973367360 830868846 652290938 641021988 403074681 222638752 913106950 143805578 317433522 731826679 413552784 331556181 926859417 566262587 659684079 686124253 434595014 655415819 858987313 929152351 172460762 312111936 447496887 594730228 898761970 371890661 283561392 711194373 228174605 144246039 906622180 230025016 317850360 915168084 24549539 904808094 376241004 836259588 112127289 455018808 647498830 318544389 512147313 624261015 84212065 965089631 366811052 372271796 646410521 260292465 822756921 441502577 457381690 478054220 939528871 291278177 381260140 127292505 386773633 443036069 597604226 800505418 132233635 480648268 771186492 162266015 8031162 499573280 127691633 587353857 770052898 531975378 785809399 503269798 490213429 291063414 598146435 367653332 448117232 146020773 625810552 791091802 355813167 902549260 853601873 340990460 262440733 23114280 605080789 236944989 664178686 767634346 595187961 927395028 272197951 432707637 647514752 292911884 313273218 64651186 667339129 931882341 387699122 75928988 22607522 981805366 81706876 161697658 230254272 64243327 309221180 452362414 748382351 810443840 777710621 99381286 698200489 303872745 969578752 41147351 325449125 690503852 650321631 411481374 714201000 50646300 717883531 610476865 934805921 500722821 907332282 159250242 93498974 962658650 759909001 926964637 229069903 478906642 859203578 562408548 366486897 228444794 355228318 844048842 130960479 404964132 59541041 350146934 894399690 492361675 393420493 389748307 655199272 947704961 227783024 555458283 324660061 288131943 774069116 663562834 841227801 368543859 968510277 842338517 523012760 521519712 432966387 513579709 153771019 787172531 160890674 194914837 497364873 444271144 380166234 143986173 106581878 787113589 623519312 934445397 598112498 948171534 619186076 517369547 962106558 382139522 825314767 699302139 502049178 872988648 221009549 142835353 543684427 31967263 718551473 970931980 87075934 183817848 750786165 167754832 31701793 107704403 116636983 436024139 19573609 6092696 418213849 277395298 49262540 928601994 488931487 246501748 862426777 186607080 300221757 536644989 928905025 510864879 677823115 214327474 872918068 824538055 128517879 416346620 34245242 344245972 525147735 526473469 146150186 670178782 389359529 417558944 239681549 449218627 594662139 569814677 241966720 601323327 479633364 642548998 44592108 117733265 909523373 491429308 155765115 198434945 833133015 745171445 542166201 375136132 970862910 446461088 981480469 976014346 245305570 149096611 570085979 872204065 467399083 634582910 23005398 172846391 804292692 291683957 648808884 522224028 904806326 466436310 731510205 317607119 677583584 140321932 64831004 705818748 822601605 868638550 592939397 692457478 560993068 19407464 232564186 782698714 514549044 253400449 992872499 869034789 140779206 448915269 172930294 44560707 658592964 896856710 259895351 369904642 717408316 349734891 909807365 88335814 464794467 10596121 443510007 445243164 462639613 712149088 602834766 619097225 882730189 132589513 873654601 853954267 338726229 891302920 824117486 326027759 285809247 229807552 546559555 594357389 851838377 574843695 965934515 917457179 183161336 344762488 580650133 66429823 216020132 787152190 657197331 210338992 856827650 99805209 817992177 265608587 641970742 841773952 698853113 69502077 297223438 99607498 518775852 279684502 578195545 81402049 284129407 563859879 999429339 783851028 83119025 672663728 164633717 707634221 56084270 94415092 335250189 591794850 295740424 378411983 293501839 985164352 554843669 337164832 635178537 442174630 145391214 284916732 252951427 971673776 911477521 588742209 654980328 852694196 641112239 954013368 72442269 810181250 701794918 230146040 422511945 523852967 678922161 401737315 136477981 45147136 757722825 786771218 545425966 84044896 953247999 450384877 131374206 422773895 354420739 627226194 969388268 211788332 244484912 351893762 557609662 79033818 789040491 238016280 678253820 302353511 375605234 396400819 339047915 315078904 230576867 969838742 409482632 291954079 501498783 89676097 746367098 161680350 341528798 481084653 359336099 317125287 680246728 109604372 672528756 557679131 849628614 6435530 943924751 464550806 638119070 316144916 674910500 176040074 279610684 528893456 464550614 207114414 420819934 836799073 654272333 146875160 575734899 327412449 828348927 506998155 638135178 690669642 880092344 372994627 152650600 810117430 560453630 672979665 798565197 713631870 576848928 739048826 764354408 25045175 489032346 866745984 399281836 231040193 96950455 485739584 291467357 825968422 639503835 819667065 963772728 866958686 164526512 280908123 137502012 781164926 492372763 968178763 919621497 938759384 364785951 936558550 226844664 836806464 432425570 482343159 729930098 796135978 82150388 484550105 236893450 435518593 460610284 54761539 314649665 458214351 403280742 395905982 519093465 569886261 67550511 905855481 178455740 813047188 639103274 295715874 81368112 65407236 159939673 757543765 41641360 181967140 701773346 415840407 128174075 778792946 860213987 759809065 643975660 26934878 622590551 995611529 139986446 191765914 585606912 192316446 947894856 204799988 15862094 931147069 137681510 571562690 752857887 44501250 459131273 238467129 576852561 535997010 51424578 804212314 631654957 513883726 651845529 489342909 144841015 277186478 493826259 176792440 393291177 112764000 937256018 512017722 195702388 239195717 737519616 168928733 838250579 874116701 404364015 151795498 190382143 219313161 403872294 893717284 33582870 645926325 765381303 753182676 752968254 916577909 187904958 837381892 386704744 664038967 84726155 887626479 701742738 269296626 499485422 778378671 255553812 212917911 111198160 920084609 543026240 246180978 264445894 945926352 658523553 547952972 629628113 215820263 508911508 576124593 848278435 262931446 124144027 151617175 842723289 851995702 156200415 38438641 103328330 606262400 95157574 242805772 650218299 681584481 867225030 780877065 500675973 230190398 109832337 92114762 146719371 553513109 945769172 644579558 958981655 199453921 192993999 631974915 668667107 727441572 54182273 442126148 950070738 957855863 389174484 969740153 820223939 971471437 935957646 893157558 563903996 281543967 178825230 846663296 396037165 413062436 379960808 406636726 421996063 112748571 772606307 415841838 381924093 975330540 373226016 475326001 728547800 489403259 700770205 642035494 679614706 156826517 594023729 642690033 114595409 695328832 955908799 94876567 145387503 471935436 373137299 651183146 491186059 439779227 43176481 329639424 996848036 413874048 983699546 74662447 378664160 467138586 486229525 8610311 724322596 986108940 300809816 913122282 328596806 904380918 453238860 806159061 298476992 510085237 165196878 97989790 443387321 32342054 537060201 279457291 949962484 423132705 637955376 509866496 586077678 295616810 523947299 68804296 961810853 444877761 155531875 173201239 913516301 398999568 197402991 356410506 300845915 142550648 526937063 856301861 964986768 51936565 875904086 246720807 170296696 427461180 669665878 571788506 736249987 715282941 89259991 259644824 869785086 654195479 263220839 742746474 268415815 669526025 917576247 622404488 609415720 880829568 560657042 538962564 555706603 512028652 934655286 770054651 537063350 749633609 845415999 733049074 654002060 797747228 750422718 30801652 459230775 256575617 535383780 359665370 782707741 526026708 348352469 305702669 163805757 458197459 460319931 946079145 135072869 73548149 618503163 859218707 207414855 977078724 835959181 560268801 819271576 494215758 990527920 198845377 13554150 834176547 422115579 691217693 569931054 678213756 193584030 342434492 931262514 212350852 80499375 206501414 800253639 497752328 609776596 365607959 550762713 425037058 192507715 310162793 857281127 611969320 523006514 717542390 823296965 590679963 766810708 431098966 989389516 915965297 604007510 764883811 101771137 16832089 560023364 519101973 209414401 50534284 803304085 558490714 819292989 587497547 622417454 209574543 719953653 941218030 562054190 477193674 409847764 241463258 215500339 429399572 802204076 308682455 47690836 538655515 55628283 197922081 146324053 674774625 824518201 342681584 200882800 856769372 196812987 305580597 151227482 77509816 946272120 950615653 145791387 400137130 444433471 560252530 679087454 674793820 942390724 730463835 885807660 257144793 345636043 563055531 79853631 257536117 625515487 102408315 828079946 287780067 325880226 816358585 397647444 377885352 802595418 714897753 802161043 246589100 39366009 509062047 569458947 117203410 80027367 650202099 917824426 913625141 16269086 967789616 791924886 959795080 212637491 184284535 437293361 752538095 921689695 71712746 166794918 509635582 322391301 117074369 811527636 96689015 586024779 935116010 91682856 147149521 79713031 571664875 220691394 630186817 446809602 244647633 800532101 616820334 37055380 439417741 305101464 269652798 79203165 642734734 977222967 482393073 444932939 489982657 522333599 38155790 658020230 174127181 325164328 730054123 22968262 206050089 612062973 69164158 868850607 311279017 885853103 442354823 881913551 372408482 95071917 112121529 11583155 367301771 665522269 872297343 507847437 572744171 433336695 429493197 834873448 604894104 606684319 923673531 99177182 8011534 87711416 428740033 858085251 73328850 253383115 442541955 984520774 987317509 362116492 307529692 452783957 782755041 845980340 515138747 750901725 611797314 918157104 23750139 686049938 727874375 656310889 565632527 794671113 981282253 553811348 490176937 670831009 534175431 19726051 842104038 259187804 863996807 605307223 377448850 178967996 309992223 952917325 404596407 513159106 714181497 731373783 57601254 756261491 854665966 942001781 462283922 516402159 667087797 693417466 619667798 160487163 563287834 468116676 264755551 866554079 300729936 451287758 159625323 123556772 745768463 995908176 311030545 753606070 863094128 871681049 821098454 376546435 650936368 56034774 536532620 497654982 135560907 638968251 286761845 104503512 794189894 453477276 281998312 905514477 669829491 215458339 497888806 395118851 269892070 782105219 616632341 48438779 913045885 856734666 944911691 10458963 228467522 869991481 280112888 530506969 942489018 778893036 163223649 361014116 126035154 203633804 297278545 918751990 894301106 734705533 119815942 419601780 104342466 132986270 783502223 815309286 912672186 407206178 689314316 261666270 332724855 817356694 450408801 577641744 199934284 472405038 256392176 735944606 110516436 937543706 898192107 739492244 120157498 248188166 877739887 154102964 202130308 328064513 478398946 822883026 609970810 462447261 772297995 368366779 318709464 344322280 22827067 152092157 369751222 756551932 27235021 799533488 38215167 218137803 35238718 468632978 570151991 975109170 279288333 353576289 829138619 454780984 408986057 385316378 450274047 498339077 953827062 380354596 269332599 10195762 230634195 319354462 909028753 392567123 208770405 492728887 872614857 669909978 879591109 833526970 323307745 624796864 712661353 437184936 142540828 505620967 259506411 886060984 324025786 853786407 881869593 467216818 265490349 256612613 928319984 827014129 120958453 549139754 309702913 886454838 925445554 952797230 138141565 725269939 941072985 444870238 8641216 512947245 517163956 808406313 385202702 246871916 50144565 506827467 656534413 283059652 469195097 408554733 15582394 408890973 473512586 630247352 287183823 624945658 650750123 53050597 842149348 254989355 898222857 832980822 141023519 431358469 10547488 227167423 512381024 770162109 437841542 565016100 618884980 691128829 425843719 510987562 687667233 956206733 648163628 679738500 465709683 86914745 940817425 298818066 538319463 74618697 250442125 78794751 39771883 386971292 54438089 389733165 960127099 520760419 187143068 338592212 81536199 37604902 60740291 613254736 103349034 311727362 461525684 973662622 648241968 562950445 997733658 39576411 77422342 399373147 592867763 127038962 730636921 27830617 143083806 563502329 595795884 409253162 526231040 305279616 293116714 371996577 439823504 708590286 107855132 456229658 923655322 213106469 939660322 632161355 62880420 873927708 438002337 946224602 32513986 498228251 377785516 409695432 298750150 690859767 145444770 975123938 450358788 811168161 842391046 953951110 635114896 824561486 70646367 693063297 802727344 756060037 426637778 736514458 605646460 430645042 422158593 596887918 673836960 494492010 370870605 261182926 307520779 616462449 103115884 388953237 272506077 502652461 314308324 812879940 822917282 405016022 399155110 648101612 121411233 835866482 143597144 280741214 10611991 688164221 343245981 361261097 313067165 369559670 864954614 151363812 210864382 572996899 135116936 355583609 499587380 517924779 659542636 781189956 214545483 613815597 31037919 42504399 615203825 253050328 753042038 595464773 518885355 423613698 860539695 788628270 246402254 213359321 18928526 139215513 953987283 833702672 37853131 421007510 302858766 435518591 304740424 994669189 380519707 659612394 239790567 489182957 935410251 413839151 492513771 229326374 149172611 376694736 580664386 675025162 584190194 169813909 678063668 302668791 598533652 432754719 131470569 325107806 709386073 423549071 526450135 411889907 464027696 361234915 450384747 362690870 43390071 94336804 168559622 943221310 87518519 758773599 731594734 430167248 600576049 888543465 612639993 136301298 324450646 910581951 652843952 895532896 583242374 549937231 845114609 70029754 230558570 527665542 139608811 240385256 957526628 170930945 168782324 369608305 357708835 973347363 167621643 924190185 853833283 222188754 434915968 82088561 636101978 815761101 147683451 602207448 985225451 191524271 720368931 589083514 89333150 528855014 718917900 751129712 224767101 840748360 642277074 500782584 91098472 510699300 205400181 779294110 759356949 145113356 729052892 261524006 173170528 92778065 974097597 6937312 512248558 1678776 657719848 750130227 650689054 177819500 418718627 708884546 547569030 157189058 593893631 842344058 645376419 742183418 876083573 231233687 691335620 90385464 501167709 726421025 714134 282268315 535679627 930364731 422464208 265504122 629490712 417245279 189668500 843743042 275156005 684444231 516816287 608859789 147432174 846954386 975893052 30770961 606653434 850174541 859916623 630749460 751604980 714936112 762881382 843852731 572931832 327879813 485797568 887306396 523497468 319651795 467593355 515013747 932683709 636603606 338350265 853474807 579504079 97004839 181348654 72223964 211303378 843284990 507889977 342696884 823163242 919446020 396333862 618768689 860256790 807705292 983614875 218799413 563802103 753129206 363606854 21201859 978603689 352774155 792387407 141700532 562083772 465320928 138125547 925690613 664194085 524691232 30778614 869706861 385029112 969586069 621413843 442557825 480187020 197721864 563982313 480748529 339444353 7022117 878690486 714060028 205022199 369248263 714905921 448712399 771603195 120425646 830635683 797756282 720793764 624690162 872199170 443571806 176766282 369976933 910193076 424519732 537278374 369767380 966416002 524362210 949216164 864123281 872120078 448491839 753295150 891598807 926924083 228853409 259291300 595004724 144537261 775691260 344818668 631995336 763821097 70598882 402911039 58100696 346318508 560923479 541410822 298757539 81963205 41148571 46963121 354674284 818196634 249255325 40183929 319575263 774853598 38612243 995838606 711382066 49635456 477645183 198054232 734851795 712670917 47468391 855000926 306046260 186970201 155815505 66305621 804485751 959988704 799365161 658814115 651212578 665540244 737793887 153956199 152339471 793469305 638774340 700734836 727558155 311467490 893423525 487716431 447837631 132299446 573568900 936130269 738599231 193912828 16215239 856860003 689201106 859874436 416162376 176245448 679489099 337574711 384970289 798202849 65497836 37115293 863411665 948757969 275987214 160842146 701002873 550267212 936916716 857959679 140681535 232817679 824436532 220691361 141645676 929320043 876701262 106567084 233508254 815119774 230325221 18431143 908044820 131760764 752032188 990160799 109914812 479579338 534039292 625811602 844831927 503077846 574074654 503682770 440622927 357888688 25900271 225407421 127570041 277875197 541564794 895325503 794529196 510167798 349285312 52935240 692194608 308803902 213257853 641921506 212128942 677264004 102958881 644360815 948215301 465956162 524380728 472954707 174564489 390630353 92668630 415844004 789151808 22343880 128474178 472480089 347752463 216594981 683829939 123204178 653935144 351880433 539938874 380109020 475354080 925207908 165130538 185906441 233196035 546677403 98648367 473572586 875454202 870143103 512618187 876708480 806771835 972554125 700866403 121853223 666323028 933489033 968152051 833988223 142673740 724542968 493276603 265263599 920795898 785303714 264645641 53606979 201715199 658821874 529226518 204353929 476488881 992709805 457198011 808497094 5559942 70927703 477117936 70468260 583665079 920330351 81689549 164760732 26280248 601111401 331720126 442935884 24292951 484758047 838623060 415435100 730845728 391215478 393562983 683042876 446351427 334271875 614497182 742736702 749249142 662253969 755872105 564587817 989319324 464620728 863069457 415317469 986236043 267130761 696509413 831621341 904614457 879278565 101865961 142195438 256938345 132649830 97681774 573912668 311651432 202874051 838874720 87750636 549122033 464118984 510407358 635578387 748369031 452055659 645705045 266398938 23069136 971118286 454534040 324947412 121748154 217300828 590643268 472445472 873331574 585249029 173081499 153396559 487490197 482251407 32194337 924993329 826289778 405316562 826998786 758392095 724757070 381611238 586749366 825682638 601161131 552407076 321053172 92405895 116253429 804578306 421405321 168297010 66296946 486134155 637219099 844309291 723972089 832439621 550891315 808394582 833438731 942514670 508729626 58658589 58875545 163358423 293675010 68105606 242829447 552802171 994056440 39957776 765969632 427767142 276183779 42589990 850582395 196909476 624173496 770481917 592378274 490386503 938065397 536459030 784807882 355919597 909946867 463467816 187907725 686021886 207194097 535842657 588090102 532503069 876422373 187374713 369540367 272441130 758430501 825697813 439167476 355488912 9561549 426240654 957232053 635696188 450267223 138565215 624590033 354016275 195215743 666484657 584648804 811971089 181052045 339715645 304912572 602709273 924407070 351682783 911673479 555563268 398351040 14074663 934711446 695699043 782193654 923049768 627240207 7802763 92736775 617537567 896705061 870046086 62265490 949002735 601176910 541066807 596250684 996493762 693102562 488473913 772230328 658216284 18474411 630767864 988057760 216811264 663853150 115501942 415180452 917445685 480646720 911733255 101480997 890749497 184264378 235449051 690326621 97520576 993127665 207650309 880203345 63113077 446127471 422278443 162630104 125325348 959504839 396934149 117630248 270771479 139988932 646192858 273870238 64786006 581702476 572987453 23123976 194570525 296446136 692699561 821613469 208762667 885723195 697587825 759261445 411919394 234267284 137011523 154589295 151335000 984892641 522569062 371920612 586814549 88380140 992994139 5610038 564012896 761614769 304771632 943798585 3745826 135865449 447078592 423262014 941485985 369398573 216449088 664321678 53076560 276826876 189333033 557128690 695997799 304126798 227205623 361086669 954936445 626899997 381775231 538275835 735922614 734201088 354277723 733943655 284151108 833629886 812398450 126317179 728122382 727725570 866839355 181716208 849813997 266896683 674397443 709563214 282529311 360371960 614762139 299792625 59563091 892874195 4481118 802394417 542822890 962731193 196376109 767733081 625702761 270243938 869527756 894554248 985147103 438273340 167145534 254918643 727359648 947423490 847146471 583140336 525840080 275040685 989393932 989375239 610180684 244977917 696945023 5740982 678235791 751641923 416047322 773433425 405198298 502451621 344127580 391401350 115559527 651228800 328912667 174882046 230962242 675115999 879446606 529395352 382037496 356113790 445012317 337779604 849376045 834943637 800353739 894023316 766473893 791977814 791990811 765630987 698574540 893311603 569450585 437932993 706364341 994324016 408793172 205950367 709453594 788369880 468205396 226107410 453856010 712971635 702661165 750517708 971265551 634939726 594429738 445586073 736160595 98220132 720003447 553824332 975658899 769467186 208134026 233289415 37757905 994369086 124656986 194617233 192563337 75156811 49994654 64456888 199953169 840895608 608587454 729567935 663944311 687742926 590744665 37089705 288062279 204601481 778542011 766031030 953043718 854191289 499462944 410338605 886948633 505242203 594896926 564284022 528247490 900346288 876588018 260040150 317872777 593333592 160052789 654064329 472696399 439979298 747568993 495248460 377628350 397534383 990044566 4912971 778578888 287406709 360279272 42604355 136599167 598215037 791412881 834173973 156858605 892265256 515148814 837875353 376852731 25065710 47574352 660551325 285466471 931158752 7235189 737503307 868790180 735542468 260220694 704591422 76959827 450490822 605016123 868630334 861729747 316042295 386509196 664899629 44505543 110000167 454096466 117129302 581304388 441352328 161584095 945708261 36531902 596538110 929232255 265652673 607517560 572395841 811830866 315335266 537900667 199649128 357230650 868836389 482035994 274509970 564777207 446077812 48800639 94042826 913334014 354695892 624119205 891445559 339874962 432905600 287773095 136183613 273707117 747395732 340641828 375639260 937863374 217551202 971266638 287092738 515360180 835041106 850586797 174865891 805727185 756328772 781712928 362666730 994184893 931700459 243985003 786368315 823413617 640791353 584375950 38202881 437647232 506794899 53914016 816196721 225313278 606633354 131904282 313231611 823962951 637050840 779596411 345085586 877838687 92149506 220325627 891995410 413594012 104360218 551666303 826673317 839540807 171894813 352157688 779677202 977464930 409123696 9716499 293295499 983661202 824628576 471590595 777743598 736126493 111039855 817223195 795763570 885377461 472686992 153113348 841360921 429369596 669806333 403448143 334893723 814032060 496507167 997390334 537200210 604302193 846270506 714994567 834207331 143306658 227219009 333549053 999653757 655441425 389259661 374033599 922007699 867391026 853745724 675966986 276471463 452905346 737804314 232363449 562020907 92480093 129801570 282626651 490527757 792413848 567271505 185698008 33758191 57561591 13345065 319484124 452867989 178427252 752150552 176951163 896174627 602709470 974091350 888583377 916254306 575979181 154629155 137184258 721683058 599576328 697541848 301214973 481902517 257021787 702036389 727867279 626450735 386774947 697519505 865500568 28795352 847479862 441842238 861260145 900033922 739368666 736463093 172599310 236224902 743233239 98854425 352350771 425487584 861566022 500523080 411166704 881111290 347782631 318876050 78988427 456991258 944529151 901677963 135215597 187922967 258315027 196000326 813477362 585637250 351954064 738047332 157025587 767424158 366690388 538917806 29004505 464788596 346135402 977615455 457460677 262071340 47237533 717532814 837621825 759129408 651685415 891404376 488901969 975891877 590975785 565470297 600103551 303174673 743519897 269820471 248133877 182742770 892886275 930658086 392980443 489935434 1189450 70941028 386646429 101517208 154313544 204995822 882337315 871905201 946786721 745681384 562525497 973491250 652280365 907330910 673666777 984963764 607600320 499080423 243769797 824443949 198759490 785459316 974081082 357397530 939114182 575699074 844135602 600898097 397379054 438882510 818075264 44739456 166624167 866349953 686155006 161459747 793570600 430909802 36383034 658249805 614418421 859875431 206757464 345244199 780062077 155595755 203274968 763376002 887769958 280616351 401800014 896937022 405706595 698953643 142263909 292888000 318925602 986968070 159214160 311565065 632870622 851646433 653630283 374713489 545960699 986055516 279785109 677691265 636602395 521512769 140146267 56149822 793589171 849694537 53093322 163869678 113752035 867606453 148351708 433913663 165091156 860629410 799286795 896888732 940048236 458493056 643543612 252156629 77458347 110018972 406673084 25258814 856430471 910314821 980843801 702674771 931479159 293901544 515439413 558969590 40551650 456460886 879064047 754495279 134138515 582950212 448543716 52220623 656185608 649720747 562165096 983333258 895192330 175052837 420202946 643822166 614607328 702037531 888522600 383792729 576303418 658660237 553528332 926491000 644567023 417064323 501673236 660050848 158382447 294565311 695909653 696354993 698225372 571542974 309273010 570742381 391580005 200136475 385003396 643596583 24598238 730943422 219852700 979466763 646299293 220931103 487960937 895359000 634983153 852688409 278944261 579614053 313055094 646482792 404767192 395189826 202692888 182642394 563583937 812145377 645453288 217531958 213171081 773959058 562933626 164400840 373669677 616212935 310414864 394336595 776662058 877047480 483972962 338660181 834049620 48810774 732815263 523234539 246993288 248492289 399504219 116149837 792106408 81077261 702209869 684880125 653230902 703164517 266083973 872733556 818738511 537487962 607735766 215757774 275190013 683897797 956182988 956410338 532762824 617545818 799363024 860844764 379361152 77930657 610669777 806581527 446021003 910392948 71893522 10756800 996274094 996603227 938437509 214484283 667248744 413153359 94534392 702613846 93347072 310515394 455515948 434045693 807336665 262561932 905667673 643120309 848078785 365327613 166014101 50775431 856150084 163840534 556452035 54693879 782688848 157441458 950287066 125181445 708471519 727681312 418863083 44170516 626708842 551793788 593185341 198556921 615841913 912186654 275223093 174061979 730082539 180347324 471660647 994202848 902834784 350593293 15290020 624768644 687150490 215725882 4004476 634579382 201058534 583080366 323722324 844254408 10981117 556601678 251836717 109423757 745515641 363777050 199816857 79749423 414116782 936773965 424904233 453564483 170231501 212200621 913789947 398785209 655868311 215988590 684897136 275411755 842818796 825260988 554583278 982855208 710880477 260455774 955798859 237970228 197179648 127965421 604746386 355241435 862154265 493075843 948373433 867151823 695054981 454806423 828719967 961191637 133712616 552876798 290331472 726429717 31891645 657409257 700340171 279108552 540433268 912047715 336358020 870619012 177244148 732868884 560479836 760068469 643180234 912831923 973000685 354106501 188984513 302741192 740188709 862096382 299243409 832019725 199758547 210315817 771131969 425755861 803886538 993354583 225217370 476294719 474389169 491577371 991622917 188137020 731682730 142831280 187550819 629147212 868980522 701686122 35251452 221388836 995741132 502940053 60382282 330471906 388867445 497481851 74232940 732702162 155741641 524331852 22346488 884161686 620175139 708439454 752264462 973293470 261422203 610023758 470612976 653084330 960355559 910303337 690282727 471964085 584557929 100466638 613163708 869662450 224384683 83144157 592380485 859428540 842432705 983339861 778735698 10096388 874418141 158273 981676474 423380682 516577013 801140034 2453291 355136907 939438734 90867542 817576859 933170624 638974228 38599905 434232381 876500500 805277594 445507068 385639829 752140532 898583272 590286096 286316282 984076369 546417252 475625799 212856361 43561243 877916179 32433885 833098728 154031534 209047038 505416341 886720781 624276998 414505310 83658178 747803473 996416230 936924308 944112703 553282958 3070765 661635561 927682086 364328972 859187974 381755549 192703893 456016007 390921517 752534006 507731558 585466932 549294037 352420585 402398335 466762417 322442398 523017483 851018361 177493286 831972282 967172396 87421593 69151993 265387572 442330977 215768284 252227477 779475234 697640862 525938471 134109386 132395598 98251354 559854079 984990876 458709709 567879983 67002821 624464682 751200335 469295146 166589863 526929708 270666329 122551053 557112774 133279136 358306031 92114575 329852700 793508293 649484573 574450200 265536659 920672254 259157684 989529994 424404515 525093227 244335629 914038982 322763824 146900696 211628098 929559065 721163974 703352299 735518072 586272698 738187505 405073338 440746354 967906024 217543290 661311710 458692584 410555485 867681825 683991066 546064451 262433969 72879238 477513034 964827105 725041977 937840265 390959950 140472067 741268695 450987068 853046167 716252090 262692975 15069057 902388425 593927851 926423060 741331856 664776186 236788881 900588733 385988664 895532512 194042828 593253620 705990244 325384449 19267771 17627043 592463378 194930472 970623852 909162430 457162172 821314789 707892952 565211010 565831482 964637510 236020780 127140832 559628833 449548295 215146333 117908133 687746967 699583976 39301874 319418879 674276109 455228856 308949824 394879419 516497620 677273037 720292257 593445902 838524340 920937408 98092431 558673724 120815149 63636955 722157348 578199262 984849995 259255628 982988096 531136571 853154356 595576980 42923734 801663849 109145796 584922312 571341070 216786298 126354374 141676036 272831942 81039166 755601940 628927734 782088365 777921997 130416753 549286677 218874692 565118451 260894752 925513191 668444196 611872986 785675105 97439578 467600410 16245363 200977739 313757032 259614726 798816353 807405025 248341937 971366967 611180264 402205391 964295622 414297727 793497741 743603940 832827092 447544956 371392059 885361819 493545443 246220195 27966173 931899696 558165178 436589494 426186102 593318971 840178900 369464089 771231137 140463767 436215950 121113950 656097841 64961649 116001356 749891916 665092269 785624557 842195098 82510268 519606201 473051557 232420639 993988628 916302588 285339575 757453732 476257368 620565949 685613100 534808103 569365330 899625873 396107954 899328459 953328059 122227325 190337556 468131778 344570946 210202811 749140703 81743062 12797391 586296925 979925236 968304652 146308471 737045083 133941953 131223216 120889758 685867992 39089842 692759109 942138305 513662851 73279104 326612711 608036926 483726455 732848112 894234848 84254766 717605899 62756718 298488844 35280400 390348282 440281075 986722602 971762501 511650573 367820686 217990260 178562445 95901821 56879356 71505597 683904398 141540052 364034402 336273544 324669725 857936786 820647851 610214590 375598436 453617056 623001365 963271698 811064791 182396762 722331807 494262711 581958153 914643468 13891357 921455155 972709558 173122732 578692301 438741867 131887811 102069424 77429083 139568701 443578261 547154750 323374219 835650215 344735407 739091829 534329705 277546378 235992783 326093897 442801900 31213424 875324922 456152399 955978925 466923876 173827845 852045059 240348365 118571805 60884595 200500846 802524052 405991389 473341865 303099230 609799624 943697930 691996837 795732184 959923986 136002027 413005127 309140851 271787475 31813897 499943882 687852606 256782534 770459245 12166612 503352815 995412866 451991187 718331381 334145837 303655253 932189844 911801180 704217662 920867365 927398843 562620922 580836049 407924915 315039680 400659120 954439875 335592446 929294868 784166858 797832979 601470975 136560925 920512550 224755813 353406137 531428705 948389597 642812639 1049852 557479434 781700324 234398469 789802724 363003601 518411119 344293515 462754570 804786708 832989528 749641761 722213207 145604037 625738436 54334085 919933424 412073612 453701902 46773397 901417119 478974168 848942469 438605771 701839027 239908771 946627535 453234728 702608670 686125783 784469018 461691718 663738886 576437341 360595870 616612896 600942766 924340153 899523865 605280055 124844760 495821892 712263229 966411148 70223072 245272735 384607085 394490263 834695155 913679116 391355410 378826924 106302295 258316065 7144539 851746392 332060362 700687777 891405440 702622396 305120206 702402440 489974123 541141190 246001753 888773248 499176183 261032967 270071155 254598503 770863189 491443365 290181202 974754073 652884250 524213562 554373962 280441702 948000473 940234495 178111363 405356341 499070138 408250750 5744161 414021847 111381558 932616130 372773928 477073511 927768949 201026925 637710032 320515493 80439186 846222963 507675671 505444399 259177663 19491239 776930047 534974583 853950458 32167798 992227399 551032027 179843353 97252617 241015846 749602062 368818639 66357416 371413263 798844826 666981098 938712131 696050521 701387477 83787124 548564349 22857760 531622401 388228192 883166388 515674318 811160548 539671755 855225413 554787012 354765891 76057977 86103295 18927695 622910448 365990587 165718997 706027126 951141566 29618248 329544740 624566871 371652456 246796833 668678911 149890486 194833148 520468402 200462175 798492402 714167425 779855566 361232558 807328660 958545235 790964850 910628539 317806334 127673987 373610626 126215226 101391 846614862 770670485 392355932 623702639 73151763 935381578 985322874 356050141 427324975 730170593 130307868 9439807 104484984 19038243 573747 815868977 887341776 395240190 99117548 326460272 907234412 215459744 588208805 170905183 232402578 940405460 377109582 271570904 579202611 7008405 782353351 526122964 799751345 446324797 767571464 365033217 739423323 882628840 260784608 82496508 195314817 822504750 308807748 269184434 647300996 410110758 67376309 147954088 762763724 887494129 27451404 178945377 282921881 264125573 741799976 843178503 405246114 690855945 409211799 285078718 333200750 683602973 665980369 665070694 545008364 615898260 53795320 549914818 580670379 792167447 461147321 314531582 228502482 562277133 672574828 610574974 879225730 123723668 323041320 704019774 961204789 708372490 544317307 609281929 524824686 878514417 386233575 293396523 102034619 987840764 379371758 862469564 924362722 173755550 80113856 787863978 920440551 574294626 956583566 472308709 385745832 361247464 79640491 451868173 562993956 632102514 69171709 276654291 247507993 498574855 947384181 595743401 272531286 860461799 813231343 304218180 57262214 450730423 835745580 301930933 954989101 348124972 815569229 145585727 771697803 781665161 64298794 859444623 280985305 992949818 467591495 919965051 93475877 465501656 708860293 390927806 855284632 885236627 365542352 847594569 500873931 965853818 64669504 512618343 77057886 347325457 813033456 272007826 785730269 774011771 746705396 342982253 913061849 216459877 740514040 266843751 612883305 569560624 453431689 856436949 297549728 724838205 879381884 396443428 938469238 794779747 643643114 658019128 144413962 198956668 275701211 888442749 540342397 572649788 55863352 506548994 116596103 307511589 644310795 126831304 996015646 471639864 650050917 642466271 857364747 346136818 856252182 147175993 578043659 745646864 597860763 733327889 481678414 921523695 794417152 277750848 386813229 570813633 48236452 924157143 681288669 938601154 156452143 823050679 469672669 518515153 24028024 932947788 305132972 306470236 589176083 190439672 277178730 6736925 772084248 453304619 371618474 484918655 884113334 66031898 746797317 55657276 306792403 917592748 261619498 788223032 76928691 572874352 729686223 659865465 985257253 566441326 257794149 446158909 849493282 995958527 363120524 641986264 923272214 61599042 676344441 878559310 405661848 936683333 328463391 668536929 70016111 761200977 940569557 435581371 200197359 8437095 919255693 486486310 830471136 375372177 933276710 14383059 561420667 690019624 933668636 437568911 857621504 669557629 697804469 827433395 539870644 499534119 226906291 169742011 931792921 375389377 442789901 100886431 970634315 910712364 577291979 645039079 717256075 700853665 307166409 806089359 57509059 540785708 418685141 67215957 66158779 119313196 371446882 776845448 516091755 87694733 660823179 63308658 333810033 433320695 441813573 142056616 501571887 946643526 15238078 982441818 76282163 599347748 539450615 269876225 125130767 428295164 616970664 265682754 732685723 285430959 579884628 723068255 875974055 426348091 369029302 909251873 184768287 471615100 214932539 889115574 9987004 153391458 444148097 754937811 851944017 226450649 555189837 856402054 556489721 409327484 554919234 574169754 58020667 287669873 818927667 19280948 212443642 394801109 265712286 647532475 284998262 113686050 393311322 151235828 473128191 139186834 274108611 397206794 881774248 778256683 831041934 565525392 635582000 977795262 85218882 506836600 211769549 878918195 789419232 805985327 749271021 524502915 569504694 799793616 964850969 610300369 3219043 731153967 320098806 32418880 384594538 342668781 112965824 969572817 564189381 891919870 710663444 927736142 270075073 562467526 36879892 947081080 745515307 91812834 520932015 896730062 852411769 430002596 804559403 572925292 637353866 700636706 914166528 557729220 736289571 836180204 687945205 440496780 986539521 519778141 394960010 760429128 445999553 102669210 435636370 760716047 911720947 87277256 995692420 864025012 925629172 209398326 842976344 909119541 24078247 430306614 953652723 535633397 963021792 675221693 887479635 154510921 615436767 155888049 88858043 366704510 28496058 42524384 969805332 441847428 700937277 465858646 707570492 363121728 405957289 560977319 178624721 140495128 399092972 610789161 124985285 560502248 944920223 60874246 86432481 585162844 597948548 738708317 239070270 474470801 50347134 213980931 757000156 881520557 262803367 952942870 40884608 773714928 657393282 476114408 46130693 623163424 181618045 903783651 582922365 647627819 351041539 151695098 610655923 223079905 421184107 115048700 751776472 474269042 309564705 295793742 29417512 294648997 74433070 383791203 362958202 382955511 197586080 511400325 813888758 407421082 629645117 658967199 160119196 245987810 692748227 411079330 750349539 246118279 907722014 543016409 466218653 125659121 559926767 456340575 58860082 598358300 696709882 540448192 367728766 305670686 497987531 335388395 357174569 857761168 564935584 491945810 934490231 138285294 514555814 570982427 477879625 132533953 285487596 746128647 363023232 451160472 548669024 1847217 254982023 963256809 234041461 13722716 945020206 466823785 763296074 979261430 696388861 540164040 261257793 566579333 821529293 481977321 520736774 517453744 506762174 2418294 215679981 225665497 355644309 440554078 492055014 881103330 812473002 436986163 475693160 305244444 160687020 421552832 554333082 985011519 217608052 448961672 349932044 213084195 774660418 50049844 230533517 3896385 283461402 419010430 428178329 577763747 723530897 449750543 190137199 362128511 474053029 944256960 222495889 877146445 431451685 793116245 690486573 516885967 57666515 976206434 894414016 269555767 816719301 378148879 491830993 709159372 716453133 604745903 429694725 83694235 945753801 541112765 375211433 63921232 264368663 958522546 381400006 590043626 510816052 296875114 726820232 595210393 704402394 979805810 933609148 618147154 155087953 653930066 84220999 499612739 927252168 662363674 555387288 915977180 17753675 509535802 277725690 106518660 150107279 756234018 88050125 908077674 332959574 974025833 10725201 359935446 944446835 373225802 331772857 430904000 473622879 657225585 240745448 260378165 525988478 786259627 809717905 761346643 534811735 151505582 796581940 682318231 409318266 86428928 34117381 141845955 832333765 471783126 149372679 123109298 664335661 816316007 578562228 597739965 89929781 821558451 95297531 448889541 660556921 222593708 294642889 754209288 541134428 242824409 130066952 772125073 743985394 997424466 666550901 918238691 312066496 994437452 710544711 878712251 463841138 758489698 507916246 557922672 827813258 970687852 975950444 170963389 541765768 338171860 831513057 495882169 348895886 411610057 640716996 290951901 199459032 891605046 259424391 830018181 473679540 780307780 178398265 813414884 748717396 479231919 285819510 18681006 215594037 719706562 137252315 360202673 506245553 322776943 457787183 927884897 71539700 645233736 309979293 518286729 12461888 789821384 802122145 62748646 30923096 54622795 537706789 321371321 213066926 279522549 358288765 824171684 676481671 840425289 206254099 191955773 40215261 868939770 630685841 134730659 790740472 24268725 974728717 573713226 879172785 982764479 487888111 107976738 181137809 724058986 986504915 10998178 696676697 327518388 914244680 709221080 561916085 776723708 975890153 954844327 953923168 372611147 504554808 148251949 722996523 123602371 524429568 910544691 391825282 555099522 566591869 487134550 629073509 100940345 983391243 17711102 921419247 909485843 214672049 403793268 197347638 852191211 841899552 360989464 5538464 482108638 904685783 285599377 701298897 43785579 218576960 448991827 260015406 447825730 686477335 68628735 19892200 155067387 820698894 80414671 738583834 211582720 230625563 525782085 198378131 516391140 525322263 213712364 508938143 727447005 57882900 124188383 746890473 538181572 310370529 601754808 754745863 29557517 864230406 706542860 206603614 910953110 875137095 354457486 570425048 121024987 700885054 190955507 748066181 232898484 954921800 433049447 967048607 102024862 847213869 570661911 443317611 697561895 466337565 302548589 361816870 201900214 293173562 293836645 248683364 107344373 150239178 492443724 620287380 112202330 459467834 873763538 631615043 144278220 321271032 891328913 826433580 925578096 110549514 631739220 176074204 245445880 794454076 638646985 826567545 543494420 410220828 289930965 86488828 904686688 19899991 49523423 72640896 940206991 631518601 10954707 770802195 25140469 915709619 534374669 656404351 813834237 281857239 944645466 514461418 275614874 879837446 791737623 177267150 268066112 199764770 640994270 551169863 991480538 644548607 516858313 652123058 696243869 786967390 781799224 176771185 527150948 210679813 105700585 757030024 618262916 824365999 98753058 28979999 583432028 128422296 372793043 535577290 536480361 531919614 769359706 117324070 587697832 288241518 678092449 385561989 65841030 831125845 842779819 993049026 325924440 984035258 680641738 645168438 276386417 414774109 680590982 264099264 121799058 551879278 979015082 32647252 214712386 805308151 185594471 241798567 993553982 683042844 354479676 996432774 200088290 374467718 830853147 450759965 347104960 284124704 829740152 566179478 593085561 364915947 405597426 134606633 312995819 529269045 766144554 10299715 650610526 685048369 901759780 640001254 875062748 689246712 877634524 968108730 558087169 657928907 303902955 468340060 852368678 672446535 384285054 56954034 46046796 796162892 795203001 521296529 697810152 13258111 467087352 564968850 225641241 495544024 778420480 708524399 783306035 776243547 804357963 414318787 642191615 228854311 918571870 287025020 725980600 649416422 204069271 105943725 759668439 91975322 746149748 941343356 465431669 698228878 536886593 945991020 944446746 851415500 515115308 315603425 924124741 809632096 745067675 755138245 117740017 638944675 424188909 218966814 39072080 607933145 949467398 885425291 237383112 29472378 687792531 595677833 785320464 359914648 487562700 480479425 941334812 126040185 732721680 991697195 574680046 721436815 617784958 428473905 343974488 480511093 594720680 451398994 468047441 448787787 557807942 625184157 826136350 397421212 864417701 994931806 33152334 454943244 598027261 903521367 630973969 870897959 260490644 808292753 37135986 398791644 172262438 837916428 451597946 729924379 379797108 977130254 633107694 610501741 184679302 11160336 878373748 232643800 425995008 279820834 908752106 39014324 139536386 653673287 862482312 660901572 53513383 806795198 63584195 489764778 506735408 106776744 125348266 317831310 678063940 304718782 495018581 801624553 947944850 568756850 895514608 560039551 964607689 143271265 38540451 1345452 348214805 583297275 540887171 557182706 364590705 201786644 967112294 278206199 134788566 735814246 682436827 304366118 847572184 936328506 310803455 73031472 964618014 589715945 131757885 104521442 180273576 63238387 803417136 477417147 732418738 265220108 603562532 756459918 598974284 153647140 957156845 232740383 834535217 173519591 823598976 308602275 571418783 606287691 18373485 977927199 526210723 223074542 551399300 248694238 98122352 647268940 979218603 872029731 289722164 267010742 861270924 478074218 846536081 969950197 746817600 762838956 356054675 978771751 295528964 133171369 920706853 389257440 324695336 378966820 491885307 122426646 917915372 547768246 104819877 718584144 428659827 655841136 368958635 289064079 556505693 384719805 764607623 820585841 984766404 109188129 885959578 999280790 264553111 666133855 598525360 551707412 298211372 830993543 28257233 753237910 94534784 881746106 779488009 495598070 26146508 361372254 681566200 168559784 47707355 742242992 906187419 347543995 305687390 559175080 130370671 912600909 723754717 924472567 985589742 630400573 910794168 853212300 716124338 677066129 241392546 322838639 668697428 649109194 258338305 454467809 259664710 20341257 694448824 142659924 120907692 724024685 811672332 292422260 260726322 296802781 984387091 341576903 289686953 364387168 752709981 291450695 311686696 223541531 923286897 985561138 470697626 789493616 9098660 76297410 924303918 497885832 524195217 94027458 374677194 502826908 81211642 887176799 200864662 177567323 876578405 43565553 553781309 20291034 730636611 84023590 245985373 218849849 803046211 931050311 824091745 687117309 890301750 644850626 696513247 604515487 224563988 436263449 686509210 780908105 867936341 780906514 805053682 223483228 442832314 129868919 697447769 745455565 210326392 757100248 942088132 459619580 341605396 398381033 992190332 868803665 628767787 112451918 665555231 778119862 605033449 899398990 336814468 763176270 510479643 551530244 259279806 627084609 425146682 328620327 304143254 401220975 311077046 688527543 805407114 346319081 924824183 66926197 407678190 228722469 227579427 262779200 415124700 960034789 737549812 413311172 787276943 950275179 189413019 77513119 987160757 175036571 754714460 186697794 938607822 384112154 409618169 123500166 980635405 468866504 891645355 306402551 465397649 332182458 102514939 149249706 244352361 277334904 80821131 137111127 80380863 239938053 443184297 610059527 997535168 279914869 878084951 698567066 201451122 657234796 903017124 892869340 143488721 622921818 112952641 102894858 316400670 963020813 126668376 411410696 470180282 312260565 25342320 99658506 949436222 619308062 157666490 67792329 986060176 505020671 878761361 566710439 391113149 909682206 799808950 155575080 843942070 340190967 139022428 230679580 428342451 186066027 967845616 95119871 750811382 524676239 878416521 477076404 666989671 550739703 293793603 82435661 991431165 704580554 757945621 24385154 664411506 453301858 644622414 45818607 422574326 498702600 885389395 232869669 778115297 345645351 456211559 811593219 260704003 216719372 223113386 78516025 72674347 709420363 585490601 148891673 989667585 137481646 665071499 581377650 738827565 153525643 297494426 584797216 364727919 612210015 540309455 497566460 671627004 707716788 663997795 116641099 533057920 304262211 890575280 795188862 789231482 616492168 698575200 649466367 82480669 232995026 891282474 90726975 474386751 472318592 119151709 148946516 530831201 898994752 756748852 47448123 817680924 943792771 350925355 367107900 315408556 885422670 406983175 808290141 477955203 245443921 159447264 795110483 446382732 672586650 824908943 899210238 566344951 132542158 870500651 734432226 383573690 654022819 633047972 742622799 182590 959948458 692688546 247334679 635547341 114917794 558745317 97284872 993555375 45691950 13825597 819479256 210718801 552229528 258777543 17505384 775747415 498059914 713116728 747908754 342881768 928688646 214815731 434439047 830919197 597987401 207403045 510481523 634652801 456875554 235326984 574102701 542476993 709590279 493697360 624673739 705122077 858889616 96428595 422146661 262317507 801296837 936386829 997048912 972104988 703959535 217742545 138422897 960800947 372108006 322029111 694652680 637576108 322477809 652034760 507255945 661926142 715987550 402804327 418336128 446445766 386907259 863037004 130207640 86858732 854812550 598297567 713369229 408086886 550098738 884578191 145401965 94363653 886140919 234018533 803992715 450796851 198663884 334771729 978588858 491033429 201613584 992206746 739413928 576584591 291855483 145786660 484785780 356989294 395543860 92655050 139589653 956278177 326536172 300456686 119703767 720512406 611636760 1075984 172748432 66754903 982896492 449221834 386323215 608151318 939519129 357518420 141486261 611058999 743997700 796483582 418460044 885364964 298827150 868120329 592707640 820575204 200098436 242038876 655374088 461922991 401379864 969456271 52603520 209276015 941298120 249907281 535456108 31825322 582256034 541596878 454470514 627351673 497312644 350188116 810962448 268872929 571707384 984535838 437645718 455018989 728949915 575004099 967935761 569162332 188002682 370951623 937245246 29666131 992920670 826959106 546436808 749523124 593457976 327026194 647159053 943128970 294245253 282936068 245700817 92996559 61375665 725098194 642722970 743733283 760424887 685845427 625761907 672431728 981294471 466530318 10941362 662390949 73355266 539151858 374566970 752736201 950893933 12374468 903139411 851439061 523766054 372338302 128356701 975117833 201363921 659564502 589643050 717377696 341897505 162006183 632534377 67404470 524765621 951467539 710043964 274343866 392009450 947022486 718107492 19364972 281441826 963684531 252373118 548738419 83208666 247193011 551442591 868164315 614845053 862438590 106439583 540291786 493802152 97741539 625419339 212463040 3998264 373116520 337578213 139827785 19663952 690119874 25767595 645598363 768610364 395431432 531660326 45291128 409506459 247515392 696685202 427670614 61324150 742852148 207286662 156290450 643489744 786324725 685076349 756651554 603093634 222515795 3262441 677066149 358642219 915230568 460949414 18943405 459328303 633314486 695343409 508823103 817065221 507612402 270282472 954704481 381885557 368794715 965560401 910925137 53196640 73201558 897514114 961471286 801385188 678163682 129298582 633574169 362249045 350121504 878247620 544857146 754789301 743580205 804964573 641332219 407476074 286369520 837932293 199909766 16805455 331900307 741603351 248913881 382482955 456475372 705332750 575890492 776568618 188416501 974005761 258632931 163491537 986436849 866868747 603505451 163217920 617388394 704257834 292996019 521468908 571877713 515616679 243718692 822972276 891461505 296080577 446395745 456845847 672408473 955748259 909734126 975376827 687651142 971772272 860172892 465361147 844755731 438055104 974526771 503863120 81973029 416577769 380130772 741734731 854835921 381819785 893187141 540960054 521962887 493573282 610120129 259046335 289206780 357565377 626900086 552881351 48263305 295474237 941617126 687379687 104657962 95500369 186876824 819450503 306343000 257518378 952701277 202684331 855663131 59279933 514767855 178206170 698426083 265301393 920165192 412439290 18484359 85185983 942916721 230033067 65876363 857094627 961640650 912484767 595081334 724005565 80739782 996522757 808778034 236716158 279120334 18121138 523662464 987966002 43101043 485213102 585515912 853787092 429765893 420206312 410089740 638754175 510914770 386560990 887163799 443537500 733236461 242742546 969593065 183751946 912350617 616856474 889331164 416842475 28601981 872218459 212147162 959741424 36098137 998925698 10418155 165831234 714968198 158445841 915769562 75429358 598798014 869586794 289746797 274482454 587382134 279516603 29967689 501058351 819545722 678869646 182139940 135278725 928113105 607993542 714368310 351625947 245201129 887419195 656242448 942830401 945449028 870125500 47985706 208774134 614420672 963659979 768448430 671931599 261983009 651925725 447727025 592360394 257225118 790333211 980656758 534109698 391648609 48834348 249528253 948899940 218889490 509024937 519188510 65024056 237618791 142817347 350653553 46059985 675224543 715726924 435611453 13385694 693110940 924043683 64099631 981958069 841975775 458854225 738448392 942849517 754005388 188445783 257100824 690486444 694282094 714188405 339528282 946999948 416099766 417004438 432522527 699335238 814952141 569341006 973324653 551499778 968401276 959897785 917419659 940528968 223363819 370359479 120029600 157571906 835793495 591019768 41898192 822786692 80569516 223642465 749658298 345813620 279129397 984525732 994460719 874536793 314738909 440626097 531972801 79952083 496610219 826660228 757887556 830839238 816039844 479048305 349597782 116909863 47890949 758419086 245990587 202670716 481035656 17746497 885645167 716203107 780760990 152697869 529520410 14797411 91644273 362266697 148870994 963107932 117237940 602746378 843678084 431465665 977230797 262329078 308346717 859877173 753947021 323625056 840079056 409718125 965100358 399304826 834103575 161776185 749836270 2672910 677724417 473775775 153987421 492211991 961501449 364516801 933212098 645504350 841773593 540956944 824373482 552773726 858055995 626244839 200198435 104766091 19760526 406312861 83096285 359022419 992978989 287281804 831303870 254084457 435408877 727729689 234458306 24650243 329977284 239479095 366614501 950351182 15748377 46477272 25938861 405392607 994719967 201545380 9108620 393316248 464462545 922629609 463885308 425398103 300202966 774203286 567694712 863113371 460823280 591778609 249529899 716410107 682623906 203710665 24487329 209235758 107569817 468731185 776121 295639589 447795770 279024456 503328193 106782367 518773273 509137131 165502567 648026964 188159830 228452354 912799015 642418293 836557112 44634652 886682162 658140630 988818232 90004484 308249122 692404514 173470787 201724282 612467507 670111328 17291049 409703531 282453114 148139581 950519512 83171936 475413070 890327039 446477301 482606114 726910314 140664837 280231200 462724508 108049897 653639031 511600628 26073102 766940843 438532588 710128619 358448935 527046004 587606794 397641465 619781184 249474986 884044293 636118213 123012410 442797108 286712689 735718649 900800017 315231776 548467026 490025728 197926611 391860739 540247066 418813112 968432377 371916275 793539068 427161133 141295237 259188194 25094015 324614588 849823158 380387850 116309549 320816429 569096272 462349592 669398976 492172392 326369575 210310204 607278801 34566786 315764311 301213552 788705649 169577426 620666001 727047696 631432890 182040013 63106331 100256575 378830805 808357231 462231205 589402686 463187725 479360349 422104255 210932445 665331258 698304861 13764395 223152685 336124759 708875776 882563941 969183821 113871853 835322229 574324019 702299943 613053084 322597555 195039956 311576121 868292684 768916974 572709532 709886336 352157958 118079076 401809953 406263159 818148957 861076406 9873457 96739337 138157247 233320921 92944566 178560984 785058863 7504553 589917429 236097398 270646599 862643889 753482352 119640126 99902628 413378 350845336 113945293 571460556 936413639 734771861 808093139 539525762 29241025 60253240 855527244 439974187 625102078 845403886 114271839 599073189 914520415 894436950 200830104 370107959 465477198 895815995 589383292 374711588 143561546 112027608 139171168 817924182 630616178 360418366 326135212 587552495 656826582 535975994 434984358 886202888 299189584 98865528 125554615 581445127 848296987 594848269 407045116 322073087 589263839 82970162 939824520 786694805 78365500 993316147 29727420 88039872 154347695 365952122 965788593 513634944 351153168 225273456 19791379 160787653 106411899 901950833 206839004 211966489 3564927 562165373 758601292 901080179 695061419 77872534 948526672 765512222 483736045 602529483 809110555 36883277 568970421 1308226 126874924 949926940 347036800 554550495 936658294 430305090 325930132 423518004 601419258 647623781 884239812 509862629 213910346 75228545 690246786 303301829 197830265 472326682 626275419 579357549 127238560 406078118 378716341 633484196 602727644 914411333 922993276 575589542 937363910 227874568 65568149 630328615 35746879 391325067 508758982 54067164 623018515 678984853 153833673 653327472 458642223 324246678 618742184 527064750 200061281 669112717 918689563 682799199 13444588 12464869 647815519 314804405 134866915 102272717 259843509 689731349 165681039 941135189 942406728 299746832 394312663 648973585 120217412 977617074 862667984 421110856 285016439 912596681 232125087 15183776 967707719 609752947 743905669 438372063 444537043 562031862 666019093 122875464 894541273 307016066 797271936 755509897 520679236 517446369 220517720 630429743 296786692 710006436 918749607 240748006 754958511 58040880 554798296 435206349 38823874 715847534 558383703 869781332 864078392 233148001 412783266 826256446 609782754 931283008 437470464 727326449 631523079 666622791 732781671 439919757 261159610 340741780 445116727 140835902 551595222 973276506 901951629 161163314 435051516 224744757 710212221 143861753 441202475 365768841 108182624 274549277 293056837 230154286 558334293 288087511 466343704 725654059 42956942 606785304 868199037 205934194 127003818 197549085 31725198 523247293 764957014 582882479 40436163 511998540 782200526 935688484 398047564 893254720 12583400 224897813 168798410 279107753 365243971 887465160 869383764 579502790 248828464 511213650 432136573 520445089 302324899 48958523 740059305 283333839 484015160 184783502 63878320 697226917 493485784 980990201 286435283 269830877 16382081 555092080 371662702 582877292 940647099 621087076 592399490 961162983 403758622 224420058 203199917 365942758 531193798 981423844 547449192 369182118 493854851 313840611 845609503 320709298 862835181 875805054 331181814 415136193 739635539 33590205 727210249 267453776 618036284 927579159 67333630 474535314 47039761 968272928 447725579 497855848 763475900 408911889 599291914 553141654 931853635 291120245 955416488 41396001 315894558 587168631 470968875 637603964 832460669 700741274 870862487 211653071 853436106 440057164 476573541 740878542 352119115 607843795 108060429 276667214 453217066 663469189 753362380 457400582 657441975 225634887 900395872 877217852 821521234 554690388 715322567 609597090 430811272 977192844 91392795 939411451 961536632 781581159 802160815 380643876 697489872 198647723 5293482 320020290 410800357 40557186 807491643 364988762 929222605 166146742 225590450 941771543 974827995 569153906 267823723 134157847 750075702 45101527 803608371 106619915 731938179 988945496 158018802 1654148 479961051 868051033 496046091 718857368 418562494 719853315 266587214 456492288 920809852 178877892 708069517 269195360 422912572 1624835 106235351 578386922 5014391 387238627 752390713 42968221 597232102 219773851 726790685 952516731 820475899 966934992 4935322 590466545 806020963 442341848 335309073 349135177 290178499 427876205 170664897 439790860 624346086 378857276 286193953 544692625 750469468 460995691 3673299 462119178 308545447 420457914 767803935 624435626 130214836 65265908 16209211 368802451 482282133 155142352 840146107 17783421 764176064 855223598 557036395 273756283 561736700 843999434 434428014 269294413 330645448 612937691 152953195 923051544 510478645 885818859 928046792 414113269 755097244 300697396 560100384 657078047 366808251 570891578 70470432 885482880 40748415 535288139 129465245 142205642 305675790 319072963 318840801 289152414 79281826 562777636 212880399 569285887 103118588 463443359 156592504 678495417 728546330 23522300 435594961 319556575 608292369 220785994 676824754 929298434 329359320 301194363 913138077 841708021 891580186 759517583 321138205 168652086 817615385 810726424 472763614 149398724 470531007 870712219 83124653 184287033 508697137 827609513 951925178 690608494 818289610 448121053 149787189 166179577 493216836 78191468 875366327 847690743 322532528 651814571 143987003 482389442 102144250 462631058 493629404 777582084 56436224 184499172 46552430 992733784 456504246 68140930 902434830 214639683 639368316 715635908 845690267 627194862 828691593 232021585 68673950 283474806 985288801 398650264 244248723 259320913 927928567 851752127 689897243 771998926 762550617 686571736 552155349 279101867 808122348 670227449 295626663 811321071 694258887 322483821 722162549 597641284 985796269 255920492 92715314 645076782 701562694 813329821 916358257 920836116 523665247 492162408 869260367 259839465 950612681 396470671 584365485 571810849 67021295 957309445 121107422 715903202 672807096 101457933 298147231 765766838 831865137 366274859 100322027 297352516 48540928 337084658 137202748 599923661 458754052 253133538 19500061 827393613 738689012 117622444 487473888 815724378 223518516 761101870 705474041 651628123 319954865 882254727 301963464 153217644 738088834 415323410 625950128 809975011 962843307 7546710 854232393 639627009 498301262 198183078 643067732 441953320 156585950 36222979 764521229 668116721 49229777 588914702 450764003 93383251 732893053 828509072 86774154 332873107 23324380 387549154 67676154 330384489 8829118 307323959 117321230 105188393 228635419 393049920 841681196 267831044 581537916 296449662 372085864 187950690 215241652 196345642 30322045 211193120 758394318 316276794 111231552 697897645 524930676 580754754 834085443 472786262 151667562 117660061 407966588 223197109 418229281 826411776 361605260 251760280 611320953 964917053 373916060 905821361 750748831 506675086 245588159 241969330 240062881 730848751 246808708 575499725 576334104 432050613 545102135 254166726 395655099 319516302 30759086 652391842 215384916 843290414 562659169 837119747 211260027 82960045 72664754 230231834 813830744 233401950 632529987 826875078 148015229 66053778 166602526 977540987 355761684 733756082 834294912 340360061 561254235 998298052 564194951 708602712 389972799 731920201 233512335 206391119 617060786 514218122 559982689 130892139 890331243 676216883 526314188 789102258 87309103 982556961 307665405 432834333 861167039 420422637 530020910 392521183 807561385 767904692 913636587 482156289 257158986 941493179 490442287 469713504 989690694 564208333 8312704 277048612 388516730 899703429 447860970 210979549 892258472 454026194 534688961 703707181 960271781 825353232 90919977 846194412 872559049 956231424 584361397 321635708 593610699 390217383 500519814 311981024 912579617 876585424 574934120 594612599 683383143 340234607 433281434 348607060 433421192 621661337 230539192 386998453 32374374 777965616 430496238 908515098 659099635 738172680 293781390 583615514 890737291 112413991 752268869 13273369 146028583 599466164 734226049 167861956 967247858 85628799 753116868 106838926 873933034 708444143 873448056 785443794 488052561 777725137 761611671 608637052 636512236 46235602 988050491 930969979 172030490 423668671 551549946 287884411 526817297 143636778 58456267 729394336 757557478 789408962 529630455 964533570 416907818 934503177 89710441 287176227 335268351 95745658 660457855 622257404 631841081 968554930 567718562 601460004 241825329 479954013 505943374 86578008 697535711 968526052 982292423 308209230 621051550 560501913 79762152 758644745 645926107 160019239 735388335 445539549 87564025 801799042 239231474 777485188 988629914 309351181 42407313 131952792 674894549 13679406 685475741 821559986 314825520 49817470 110476126 955846135 657030279 165898420 833789387 33443074 122632704 834898247 591397234 359798534 919284307 630293205 692024602 325327634 628951233 570507646 321439027 619648588 273856179 160580013 375388803 70036038 763851524 507044971 547613282 72318607 547228979 234852452 466546609 766266615 253249959 172579120 729867825 917106914 276525545 618497737 498281658 584327112 812722216 30243049 889405561 926545382 963648329 164439018 597090870 451644953 452127183 928559341 943356180 518066383 410115587 244338436 927604238 361123598 738376593 635654684 252295061 206825206 791080948 640980797 375307835 168104482 7086346 718401061 724773022 242969227 769200422 135236233 474167148 381068388 432438406 110825482 816866061 256020955 73158574 110259705 619117088 962052207 205297733 72366472 488194401 245580202 504620340 697260676 896178625 374225011 848015608 702228101 97200865 902655538 493356888 899090550 554148836 434456501 86000851 515311079 769313357 901372384 973484822 282159853 493709203 959804403 811832612 759614434 564004642 197850392 768735412 121486089 990228636 658920989 898335851 655497289 427613670 494721713 164535149 256364471 113824858 347747551 951389164 447215637 10881026 169794404 829247430 564033095 731205186 670866204 836887772 499112245 312649918 100977514 628405849 52251850 569269417 524743493 358560353 890576966 654023001 403520621 162934400 792176221 336403080 153111269 646906748 972812735 403395565 102624779 145544532 263144040 828841267 759866464 402493953 834472620 806951290 204792501 540725302 199282932 697625210 353293572 356519783 691149564 753081963 453493239 118080281 214853454 801311402 873951975 602171316 660084273 292639347 950187387 383782387 369135647 862186124 238820822 876033885 856710907 578055436 239369249 232837613 941786963 460623488 499987069 191434539 487372999 187122571 344865476 279156796 487385094 610763745 217933111 898970268 241026541 595168401 704539910 71203184 699232198 37261011 921452041 641088617 376814071 363052189 113573399 819672547 134039256 562344980 113799456 137193761 976051691 151355742 645013339 280731173 582946715 127787701 699893817 509839267 601093957 546058879 502341769 498806207 276023454 607688189 96229306 122134585 435467976 538393253 586875030 427969252 775961855 709124266 831875476 609848741 681332568 463704893 490743253 600957222 705630774 177494925 630230665 306241114 952645982 274365383 773324746 311395869 19884930 510300181 161959640 115350013 979010138 231920192 287153569 410868935 431486042 732808809 733115793 464865597 421127012 592429430 796342320 403175470 897876882 237037080 666141048 137133652 485353101 209886381 854307613 65513256 574672074 858712022 618007641 188505587 305897257 918861166 655867744 202974372 806691285 179320721 190407170 432392541 726780796 219298649 814373632 24417343 119439567 466961716 989613418 91503130 743032499 611392312 896168247 209784597 129336061 280413328 987003440 331336310 58021689 384992192 849776950 374006466 900605431 459615471 468953243 199586890 723345376 636788445 159222749 431230823 557443731 850084552 511633577 527927962 887343668 926105284 46140534 115642577 139972251 646397870 83919439 637407414 398758046 640550425 253980796 748593495 100283422 314758233 837301726 805471140 25446993 18332006 785075019 946487762 792023390 204572213 131873489 90687080 191374190 366835186 595789207 857600391 428426884 713959598 342677156 422393090 376061149 453787200 235128824 901411724 6702997 660963359 151669537 92323600 515403383 764259332 309935344 100408761 169896494 396594545 543710111 179212074 782065427 627746881 25114315 511949734 270700862 613270671 899431643 463678220 834523110 785263541 398760164 665221753 24400002 69809589 185108788 528308758 427508433 712206781 657810877 612117997 459381674 843834973 660937434 869065712 786023998 260964022 472603595 445823922 998214264 566566648 566181784 60410144 956139810 824031785 864871803 644351417 19643331 733803694 840898715 82559723 276389824 791114066 506613462 472261825 851373754 83604702 362550032 906633734 172341937 938772575 851015529 552350279 143277590 203842388 148611407 228534712 175523358 370216820 52837945 210354172 132900188 643288582 747274579 933686274 474034277 636533724 419037652 304779280 315509568 841175345 563306986 973218909 186998548 774312124 136961043 206522426 243903672 476278365 935454795 908948920 292305731 983494637 95384085 9526964 492442776 660429186 357208306 867911684 358757274 662928839 512612442 814563096 386076950 329295371 340655177 637534092 343639858 31895843 143197029 828386036 180707008 491058445 714821301 479267393 852288320 417344525 869728556 758586944 845185195 694333394 395085925 931453699 520045575 54751840 714685577 215764175 414714066 327124507 372757657 279448481 696034083 123523022 229603175 539257861 44199823 324447896 404271975 678922354 156337634 185803691 17282949 90178718 459299847 384725540 901526227 852147933 957604983 433883224 725708993 794699806 940671227 282400866 15420677 123506392 836844939 554692611 384062890 635993629 318455125 219655913 587438362 708712821 449131819 662527790 812522078 580808731 5431268 520298186 451655478 734636830 218437820 835838731 286403579 32429136 967061095 908113251 80549827 290753265 464988901 8259052 664744798 268432537 60285960 902216267 408021990 585457391 608380090 337886117 129042052 985037244 863254337 335955776 439490070 156692145 191232458 459146342 661399840 679103440 341290282 319140136 763171931 166812710 363685418 796920376 781018590 274198340 110726909 592330024 995115862 672136639 573536870 427350839 518724100 818728932 104062105 786040012 557786995 808710475 994769985 470354566 976933497 23023164 364488344 651992679 890599128 375992890 728890138 817748637 115394561 103834158 306780804 680443152 62372922 389731958 783606824 49923938 233276504 881629088 113710169 114338175 149411060 726838178 109090095 859930899 503776440 503731143 901086566 530886348 44317677 319732335 566972615 121788305 812556583 762792881 238694073 307832653 847523871 627503806 249175434 742113380 94464824 879038639 378399890 876607487 205933019 156142650 939404554 383368666 205217177 228190746 896810398 237418803 638859434 592797414 532523266 693651411 380111139 201691062 33456368 236037839 374156320 961393536 796077771 196318183 761102455 312526246 167727982 289475784 337550422 155784608 438164307 779244317 731285213 906971579 914393347 35152386 156430494 360195005 855085421 132061617 89446430 653480492 314881902 793558979 689893863 539202946 1572458 782085556 19566635 379401786 230909827 163504536 583874950 237333124 476730531 515449519 622780033 376926052 2149362 892555633 298435832 515610950 904492612 884706047 921393756 517354960 864952152 788231139 677486548 1017428 226084782 768555927 203828919 429546354 620279092 837459190 198948108 889425762 369920399 49893127 520026187 103154111 345726674 527168313 751855911 514627093 359220583 70877774 73784221 573193489 830353355 680830312 124757647 300087224 409679991 702796209 858239642 51504648 454444741 283094552 250813660 538806598 486380274 602233378 125706794 725779778 715683 380360791 481730279 969140160 481197692 811833736 158873853 747920491 743436289 817791118 726355499 204231889 337868230 941060961 575279639 110307830 189202477 942092318 880363743 103899798 675433255 982596063 899717408 853361090 238787907 429798078 652379836 618361810 835746200 708693455 47223141 879045591 112427914 694352209 814499892 448461756 549886679 514628837 600195986 253201464 17611579 856232448 316868440 686775643 286900802 812838986 504059364 724004866 563449046 232581347 490434935 892389155 477688011 999550137 140598918 718429183 691537129 936161262 532157642 584927393 130273406 14209639 124466993 442470437 327991293 117240916 415423665 635182988 872481581 590430800 644771842 624749151 815523978 670528154 98127789 804967921 726996590 116775009 676694658 553990544 923026521 710789658 197518606 842346031 158589375 857332685 188669051 439311905 946386732 95169679 709087431 129464829 484696906 103498315 506332422 214924051 822132139 557714195 3791918 752904919 213590820 806302361 76667527 26576384 292261832 614669994 642529001 492805741 96849980 205536148 253687512 580407735 437769030 675460954 169779728 917428003 396765595 908536091 520339265 918406871 881620801 425744098 500360099 191281528 71247360 408973770 863998595 635767484 614655021 372898393 351529138 889640734 105851634 416684862 506352685 985532946 877868997 207692216 159912116 171001178 474635944 418472435 850367166 561095047 108775683 909142408 573999944 985675541 123072368 796806882 731836234 65747486 411574856 758772700 452240787 475988171 509454519 453964005 291782351 457881480 467113584 254078977 186808876 336268713 901600396 45010798 502481622 598950517 128597054 262257375 497921643 289089333 994365877 73184992 984334902 892139950 952630511 63694282 183666685 351825197 424155420 280847407 756028643 316717084 356392482 550033272 48890028 22760276 658533376 256371957 56008418 676396199 656150385 915189401 530764131 707372480 845750554 845051599 874550360 843666798 825731349 18962188 776995755 788077249 833552616 892827688 652113178 185254431 585461855 488475342 413104530 942899154 771785887 751515791 747583291 613591307 907745928 673811181 261999327 21609259 887649043 910778498 698701110 973600829 723153893 552092579 297918898 753854513 168761428 894639956 106967912 106582699 903726052 687587004 652385796 959901438 341915749 581659041 558266440 85904392 302359802 500772545 169720867 870676155 850335525 580927422 207447619 612290941 512024950 916738559 912303324 981364074 661048085 370468309 4553688 475807546 138094503 53633 548648721 11429189 606928354 474554651 479734584 255926043 654275388 54042259 559440998 654872746 376867098 899137520 153206914 526433741 632184197 210556497 473364298 726289087 383121338 354454721 775788809 458831469 275097154 800516147 310778676 109179374 460302908 809627726 372941062 491186864 68918952 764932570 564532980 917988549 30435019 63343720 50255860 482559524 514855087 350153969 967686015 668096275 349914026 166579894 191498058 797312410 642836580 246744796 187170569 440354191 399964478 499156164 862198952 805042257 415158887 680509223 775552064 483537067 574896172 569311003 484662620 272981675 630198551 39439969 76862206 653612007 449585060 957932582 881507678 605077406 101007915 829864143 962692818 665804331 817403925 775884217 593302224 567023187 360767022 23418745 778621262 145877658 919500032 108788451 124375060 68880610 442338432 321682831 517257502 199561153 751359452 559350688 603783139 808966917 759112989 387848575 423978768 450879536 695746000 265718640 566802489 973171446 546227483 292024752 260257160 704378505 799470661 464008406 268814687 160101465 559647145 274501939 405171580 300936860 469672006 267718175 447710143 522497515 63672755 296669704 3278537 862431749 587295464 478460312 782946037 247672009 440140543 771507231 506229619 846521716 33850594 349639258 665963740 114447170 789636051 688385035 198049607 952289724 169941540 973961597 649184414 704236809 376532772 764525332 505812174 897623863 187341390 782349186 178904501 583017430 611785050 41938285 195062614 624197899 331359571 852298389 311929013 322367888 650619413 440702817 39386290 503154823 901241337 945092187 519886881 660149265 805136205 775850409 210363820 429911477 730435580 858582373 108182489 676506557 690300267 681544034 176977051 789013120 499354653 195373258 251946973 143630547 786398617 465285555 992339291 904164293 892964479 692245038 402283352 301017589 826826734 89548607 198730805 497800462 61316065 590857130 463496333 862015877 579600861 485940993 718152606 138640635 208621211 514930855 328267232 968800463 812642931 148579215 315466375 372473127 445936197 133283932 974420544 628563329 535296641 541680457 938346505 825345315 208024323 906925615 993475731 199039208 506018542 382184852 881858485 544418840 321260805 95688096 514562354 14814006 902644433 646957423 16716893 311746301 10647399 263925229 749510675 724149830 561572989 631276540 637484530 49905564 348415173 736495791 401860530 421402882 172955893 533580130 88410635 465493315 577573730 191059712 986634431 756280207 580742266 376101800 995458821 29754196 683292493 109822915 789774881 363221507 444480623 114151053 250232026 568492447 16424172 684822074 912074935 376590864 706741250 809004449 127643334 396971556 389155800 946727773 848631845 200110343 699017459 757058446 796341266 443555939 485232948 152944963 332015837 122138445 928473964 438346601 726875769 525082256 796471272 898448610 553003964 483279323 296564455 600636568 952250328 231658565 242011683 4053434 839611441 706953530 32836465 414126844 452319648 889340101 34459782 801445617 956991505 44768606 676143745 938571283 61201964 233519472 286061707 35304156 594174068 857242998 330226854 909104413 721010835 563332455 923873202 244156207 612865183 695639999 281695783 104958118 434768982 107563961 450587707 39261034 805561696 599731180 960393661 891850532 178209824 887223362 902327050 184606542 785768722 803895415 27358771 881174612 928333489 985313557 611230881 942785125 993041002 363892278 986376654 581363524 910086953 785566260 241853890 249634067 750176871 168586201 995553820 23728261 75637032 338338530 80850421 787729651 306805436 321875364 851250205 495762215 252207955 637159054 843186189 177383303 893973413 412330567 633870168 123855241 169809882 151034461 350780407 654194800 48270983 5587657 206257185 745886512 590616209 718147228 787786605 882507033 363011513 590654445 844163786 647117693 595492765 404394811 840888526 351627403 437381836 63647461 801019154 414373043 13002906 667697261 678364106 440975574 633018969 13967453 364452450 970515760 757407094 553933453 998468161 154097798 298029142 648473644 737584367 354522762 201760350 595565734 876775848 699129191 585880621 335505725 463140113 908609468 490509937 237261505 81098662 111964570 439116616 755319092 497485555 489804006 628767112 22504230 369929843 987958391 631476918 536671494 900920468 249244625 50647327 290162588 412507727 150711704 413605379 696189317 874766791 984422506 376481517 507032586 945290341 231758899 241155391 908419088 770930918 948109966 449962909 819313506 951611304 940534072 654995913 257532991 56239720 88790765 764339538 410464798 392683356 404047272 676143367 287081787 433387734 639831694 83692338 396055879 219877353 832932008 316368311 172054202 837383246 446135264 22468720 415789331 293532355 742182784 625194203 437322023 535659525 87246696 304066120 290713588 247524782 183847746 807454748 503307865 847317928 973274257 749651566 671445424 494026397 227173505 355591545 352480650 37301860 117383159 921486240 489249811 873714645 95024286 997951132 342257747 714834497 971700519 752808454 107442041 712001961 439641539 46066908 446028719 332510969 680728368 970152629 52085130 385355217 510898259 823206465 725584273 979347899 12528454 524712867 564469315 613138362 375480211 931160597 932439923 791868725 83620762 584530333 391850808 196917895 32000674 462328444 964615845 835183060 668783911 12156536 494341696 186096872 402294369 770757840 664654858 734623273 340241651 539351210 535368055 498259720 639515804 151407131 212441169 861924838 678376642 916955402 653987707 892099656 913696897 915498202 122037638 731211962 477610058 785575411 118230767 293687002 24046664 135632268 784316030 594599125 353391705 520648587 751426079 830249945 844158180 203829201 642325960 969930252 289975014 659949572 442957189 81054807 91221686 640229619 64519901 180345518 205366528 431954509 334251301 418077898 544558327 516335340 385626446 251850154 990603183 59470938 679715245 498715499 681357344 682974945 324596521 727778772 216129470 215458135 226889372 287093015 278535369 15106490 509914723 537024544 131677573 321915166 500687914 538414816 540546016 754604084 934890905 138745198 869264831 319872213 55335087 332244577 35371845 389235511 75177529 825641690 654753508 651097299 258288887 854016379 262316585 594605612 35707939 253609982 241531539 192800686 759688445 208012669 347154307 87895525 767647181 77023078 142338387 642965130 507605984 641441709 565326368 452993210 613947324 128477861 702451581 693911077 789096118 211745869 12386393 213864229 988572661 562302590 919335023 821178820 754347178 512310144 665538837 401776048 300661006 857974722 909090454 401864471 242708335 508055483 363070937 407614423 155557446 236660838 835870066 903898963 563388516 854539056 318568439 181597274 605907616 952098636 29008331 545290160 403276549 540506194 515809226 59004944 53502457 574301241 164318382 471381804 805095936 965789492 238027572 766452760 813017897 825748680 766869037 934952262 404794639 391061261 780290882 256239877 176375385 788212892 641318414 631796569 210735550 187878427 137868799 342716988 955986726 263781055 654369311 960861505 153200369 81720509 163853836 954959925 689610090 609131096 553158945 266914861 496683188 692677874 749150379 525981643 371816776 751726933 488372104 223397627 507100589 781111566 608962904 260808136 305447799 316676693 656093296 475175204 210942520 297076511 88278319 515219755 253238143 215890220 42084344 860038787 949304320 72413080 92154991 391865355 536232343 262186657 148766679 782818988 831680043 751785441 470570389 208375792 982124140 949293078 258081772 926491549 187562891 776638644 188556392 142034058 663006859 123819788 196165974 778582441 346717981 927506619 448929208 445926233 302744 358102111 805496093 145117667 932929242 502935291 835819385 789302777 615410011 476207948 533796281 606694774 571717381 908765446 169471654 764909378 442888118 114411547 373405837 639465646 899182464 598213852 90793250 842553888 687489294 215211576 5895446 67761626 797421466 636710701 408571800 774124821 889578301 780784784 34431241 913445583 416910396 202710926 839354744 984885823 945250251 322062786 6957276 644380491 310765100 248725887 607020078 859335991 194351809 77073136 776821643 697666431 252643951 497537801 637784655 896050163 916855365 387042344 321196473 323421810 452904461 342781394 241221628 335032629 126424134 554904373 290266110 152613411 326498426 764787848 848628753 832009528 449061729 937926000 964091976 17967044 384398280 297602304 692613673 843229988 633495151 105662098 384421791 214373803 231970488 301958250 161088351 379788523 462273305 972522130 847576148 248715762 436652806 227565798 587566825 170266072 445537969 358815332 797032900 932651274 512832982 435329446 280515668 874128353 114560258 741503330 463176029 174947680 5968598 754752999 475373445 272354635 915418290 164778088 997617357 275040312 355943254 506077917 421815486 73453935 96123627 700726694 614324346 704447653 680344724 706714755 538781535 562335063 173838586 222239146 590898634 187351701 263249663 805255676 493282226 972510148 66879523 97322180 820875685 981353115 156175380 469599959 881291717 459211460 48749300 132677943 703835744 227679628 439804527 262482098 412940305 851463937 42399672 460490507 802264573 695861928 91866807 211093282 629802051 178880963 837570496 774634036 898813135 530594349 39614358 628769577 241446828 839819316 109479610 737755384 205003426 535362861 960288823 993632216 347768209 353259965 89254880 735116349 621132727 473364237 248907199 323898342 843857279 808297166 887526163 497795498 574692391 159646357 244018843 822191143 190918202 103568336 68571724 482233001 647468550 341210642 13119689 324031365 883925490 522457889 568254259 365897208 864697320 686534115 693629199 152560550 928354049 704190947 910382025 942805049 312423360 215707236 642198222 204744271 600894508 948134187 379511067 350847442 672831500 527268107 304138656 486868268 728741028 353058761 771534973 23252747 496328030 992630085 895073557 675392732 972596578 780945964 603882951 690800893 259868466 163902971 600515640 738233635 882743319 643095915 276583089 368549511 936323607 527106014 616648971 342217255 929722421 784067574 194868261 928144520 554120305 754559320 484224986 154975834 367414079 19965522 409343925 871723137 851583934 696579368 438142907 984421956 541251981 43714692 370863033 714586952 47368918 701360713 711184890 111621252 851408230 444268249 198421036 767983669 469977942 926022273 404713861 775837978 820076977 539572131 88010871 74824049 994614948 752748178 477865636 918870564 396605314 499603551 507356656 558609869 484642187 458460162 349847766 521394200 256160779 285157580 49476630 374562002 26399092 437190710 493335995 680092208 297723611 18954511 390450797 667791792 256613705 272636513 524996991 972973807 872195363 91903312 793806143 182924260 295684348 269703578 671973394 408187616 579768365 269743607 29366165 585944447 500665201 395555859 217311814 689449404 773964196 299015878 252500039 163367147 438521660 884534100 689869265 996305730 706385213 407038610 885864560 705484563 307541620 699418157 234227864 343690443 959458571 675181530 126927921 171887547 661471445 147219579 687207680 873988537 835423080 712102226 251030326 330144976 352505141 138611472 808489636 381309579 678602361 47713070 864117513 924319380 721500875 355430967 995131431 125674995 321597111 867371507 524145512 87951697 474458285 25434192 939877387 699628147 838498656 874194456 308673627 874735507 157205776 325248541 864119711 221472437 871980268 791433404 519072090 733825929 851313681 259939027 482218819 813750481 83380675 427606566 429446807 374198386 902609004 79994208 748002755 7680491 500844141 388430010 898710852 749078791 573243344 703953400 911309219 266256739 609954702 854665950 61262090 955580082 249743294 746670731 797137008 483438621 30145767 807326690 136302948 865173101 101592807 969755799 975818968 822038492 213714160 111897574 53168150 821664700 226428382 785693107 120030603 64069266 433372788 821417639 959465501 872658255 554047148 273495214 550317969 920154430 63279952 847812481 845027011 219604656 51499198 291604860 24064467 123777684 891341855 75686625 170471567 738103105 900326396 658655472 157656705 546047366 934252668 750780407 255635001 720785408 377801979 994380957 591763977 582498856 49740772 610697082 869636453 486277790 733413767 968971109 611255714 792856820 707720216 183512302 562421624 940867684 203198281 472010425 364701486 499805921 864742283 757878741 976112038 131028035 951233999 978438021 996534604 8899613 390268859 343441565 850420085 226939450 526593394 804785484 807777845 166092034 53631451 797983952 881427133 337763393 388192169 225300596 697643159 658539082 366414735 884109736 386010930 314555649 857954411 101819627 911219400 71773247 784113471 759918112 721061673 797393354 549216416 370355435 641345256 623360074 80926482 482905648 582716354 939403304 243048279 378041560 788943584 274071809 473857374 909913912 264785448 523255456 516938887 115130886 773871304 552137411 543844650 812037921 772509372 924447235 778352243 561200295 105290256 781955730 32784209 206242939 340977900 888584892 918271579 910429918 617186109 603994428 828184702 932311203 64274660 812958581 176859857 712027555 5080223 923573075 27989521 651374282 517787974 799087540 986556959 704334073 910064349 455467196 485584294 183315762 153632560 635374293 463220471 293856211 26253989 964478077 395772210 316557055 49916069 412979492 107024842 753784395 602230591 708365507 635571215 259080292 626694148 783131828 608386393 895896996 27469436 919379120 634390373 349491853 446835584 414486304 66356337 887787583 759725947 816772334 642630771 351224300 233526606 113735092 114685148 961478581 797529914 59792676 503211773 593980195 120845279 163472173 484613779 741877035 186195419 59930789 694887678 583215689 236379726 859294180 894878518 106954490 754219624 413317008 601276900 288108886 776059743 476718345 953011073 43180584 788342599 587726599 894087872 63708484 472788498 60352016 81342595 440805608 116267095 329434195 877046280 97060178 183586426 146405590 390711054 532965460 205503935 610365822 285668980 406650672 826553496 50638731 693076964 171663764 45504644 178702680 472834324 533290001 449730158 563559104 467516766 112173842 23269083 334458457 785385436 692852462 659373626 599949027 359536536 693293575 244983352 842757500 447551298 57933489 145470018 446570630 964858690 145101273 972945568 226397088 715327415 34724538 691282198 140124333 300590747 296781688 313311972 633755167 761688583 107481313 201565162 91138364 975924911 373780216 556825785 401452645 891234712 371641958 228741408 30554839 42258017 992798004 11532073 916730010 613348933 5604904 618199126 396773342 998782852 182912224 906627778 584095042 73257462 530854268 818830011 755810893 655233423 313252647 129979220 16947267 321000951 398970457 576303810 466686492 377696952 828519045 874408406 775348730 325343643 680051576 67040 67846563 439295193 423907184 185839930 694425502 277316701 789625739 778998242 21190506 89829342 179688308 459350787 262622648 116414264 282013182 560308012 231566893 389762534 706101071 720056844 825138619 432346802 847129289 994647806 366459448 16967273 307922825 636994544 863001199 267238679 233783352 290533684 548947610 398223216 475813981 609067043 437570372 986993586 943524199 498202030 298069201 67522172 370036451 759373362 360961383 378996128 94888817 993706250 466335484 185185760 188262035 502031437 183219553 773630603 388874267 320708957 202831033 280228203 938508289 113564834 305137764 575660723 946605133 501057734 552848968 600996053 179179446 950512637 445523129 495357094 524988369 745643043 392245222 474089020 718178554 536079698 276536950 796313591 890268711 33404784 198323987 324661134 755253553 349350670 175312732 66954390 449265678 973477542 932348318 34818997 317344653 708722349 437069921 960348606 679765571 475980129 594712802 490241158 38305239 824839830 993757174 284415582 822033956 817169633 935481511 622784108 525612364 131160829 546896071 484878729 979538952 358131000 69651580 389516982 150859652 627602521 219544720 180617082 444879606 246343604 134710321 127825814 653650615 132451065 812081049 413250996 204574998 977145773 704937817 74943235 506589720 563407784 728316305 968695444 175097236 436460986 318686985 264950631 765756095 572428351 469093181 455240550 282020527 215508736 931300462 47868357 561027225 360605208 426314183 116331966 159041455 428133979 604881966 955639574 477176840 770266502 877016270 274811742 210153678 144338600 569315729 364213889 580563957 4697918 220519831 555913277 738813917 616032761 671733971 751184300 16571312 924530768 596214934 346727045 535262964 227530857 703139290 519719010 695443138 765825621 583246364 941641117 952558163 130018998 716358864 291103678 634954337 771252091 164139501 478287078 181595315 503632933 663876552 321020032 153276616 182234621 637538163 984133696 185626378 696843257 362283266 339253346 235880180 227733837 732467053 194200118 626463724 383769913 533524975 483913110 92549240 17820809 236231603 642486932 169395905 235469845 119262472 636719849 386148455 580509897 958703762 514498351 135182822 176531615 968672140 466214382 548422302 304015608 534875066 766934859 32586799 417315129 813750313 417315659 408066528 884204594 274418686 524645934 234079456 668397372 9520073 431813218 355362312 644002210 7604373 307607209 462029276 800011410 403553034 424646377 150275301 767300742 877575599 735842820 989898796 462993354 487854107 320171513 372580915 493027106 488849403 966676594 712061197 630936850 486416007 698840407 898920376 17228914 190825800 734103934 572551592 560406800 395068123 8137023 531385860 829211967 130868200 939531861 305302348 211462976 500595648 101095843 266356254 936707066 894118394 548369481 378337139 208436524 45783462 291393025 269147855 389255830 52084482 380955749 376102604 325246289 827560298 397154192 82397697 134030694 969789133 384085634 781872956 852457671 335231213 140623364 944316175 308273852 902562663 540502730 256528050 827264505 106142922 147098401 212402619 614063998 409291016 325665319 32410107 38094635 747182206 651066404 753879165 329205232 552081065 84430295 701054791 442809513 413135397 641443536 301633211 939230837 995791082 234789097 947783415 28982730 784719758 26992373 459757390 881624401 280085274 954951438 115440107 407672776 75250024 234816348 388005572 635506176 785800318 646674111 227091539 700911637 728199584 613651957 239278275 534582142 922843388 349886821 55253137 285316565 948186534 546609189 664112511 702804853 77907572 461032104 993868298 140087326 453076863 292212161 76968125 185575038 1015973 304201863 642221615 991347227 2702864 986350990 215319297 778092060 872768177 16765499 449710488 655689621 629799990 289148966 505036852 913685203 322478159 650643613 80963366 831146584 38473025 646549647 432074686 478253569 636538877 740168669 196062807 522797092 956166986 779938582 763881403 129512152 756576502 106559492 150862060 571733845 701438721 861252810 658775054 595890829 250551299 727834072 302019618 266837870 134052078 478246002 875719606 256030496 456186473 443648369 305627173 917901359 565899697 137841588 310788447 880182715 746895786 228098618 541149874 724622078 243191024 936342863 833968094 965137024 865610022 97836257 174498544 547859605 12737749 421450857 693872790 555975863 715838059 743347306 128373377 855759790 872875387 58650226 81117477 38634286 95592325 714687251 621132299 703791144 582539714 478538398 879062280 133490818 875152485 54818931 92504753 571259524 42529444 840820693 755555821 703719295 36528821 391737448 171011087 281052014 949042324 10941777 131600898 447250069 235599957 731003151 170307144 538984558 564452406 343291900 821685149 829638538 131587888 40126695 47291353 549541606 61683876 990622376 608879250 50898300 42700274 976244180 264560096 868659017 608885412 966021784 421534337 631711956 573353274 465968371 612927355 740272836 617057497 524348376 532233206 158876265 540641354 937575895 768148742 779503154 960069637 351561816 359418552 749829544 305435663 100964856 575572759 261912575 304721471 624919948 214096227 856549811 386343793 857522139 45999094 488221493 489313862 464885181 399246534 803286639 975924237 267603171 864607067 121220617 387873237 69899378 289069674 678613306 440614702 680203577 48585787 714790906 495300463 139767903 226437617 284561538 924527502 460778521 453713657 851692751 127969983 103663694 375031967 406894903 97437968 256486547 248468807 814238026 202074350 695223179 36060901 361472861 218883296 791849066 149398608 367397782 209209012 147600179 458422761 497173323 39678573 876254311 144705791 94460266 806282561 29655301 515875444 289962281 958874140 674242235 639149590 895717302 650295111 798003740 465482415 918476697 369514637 967261386 934394537 477449549 667939227 406761038 443055878 858978393 447883873 57231778 325662994 750635729 522460544 16872709 168479144 329286640 27619036 758750824 721280421 424237262 429068648 142179133 660733508 868271966 989886441 341394655 170555478 82683681 217479654 116755469 994845269 467877924 606484295 582275339 445708212 904575270 86583604 654232263 793122226 265354701 199166766 343652195 481590109 512202082 998529081 305054215 821302467 641986058 142017398 301655544 977100203 708872163 146957812 336458998 81193041 64470937 367100854 664153468 833883928 861185748 660890397 481562738 302762085 266539105 990701222 431627945 412587948 911832448 201219214 296765245 796819408 583170386 581578983 177811888 148208308 288838848 224496065 336711215 316931070 371444057 199779000 883679336 408188186 573849912 500196354 236371944 653164977 713547487 838473797 139819436 993814997 977845515 714278915 690010816 72940626 251585476 729281922 23655971 317972242 932701129 878449010 777842881 268390599 807094371 644901999 714065954 161839987 387183315 877707892 489572534 371648490 272130253 807019975 313580262 817139709 238706021 836135099 545052955 945890224 833609253 780670767 147168848 603272208 159428204 507688740 454612161 57839408 949812651 590940126 307926047 335283070 342490419 951397640 97743356 434932303 709015720 562622917 8290811 856954888 401256333 484786167 395336460 472776181 130004991 239154422 182187669 844109664 132055171 182048683 557762886 273304630 450327804 887196456 825446538 692046765 750748845 63854645 130305758 597224243 90722211 23038108 511825021 984717068 909159576 554048388 730380748 400003167 560967064 852450384 187714791 112986180 282632652 511020371 273383771 247509373 694166699 853963761 130215699 849887841 724504736 646229337 519440015 989138790 611943538 138512215 66122919 854526731 767690524 719499629 590602618 732661428 766923265 862921123 245655827 861267614 273220501 362050598 82229873 26284850 25468119 90665941 780238427 534695863 741246798 426587921 192067370 211248568 110469220 781365424 355232478 871835098 568192823 588186983 91466951 126176712 515408766 909465933 681521258 503274424 554240405 142710905 509391895 741954466 364125697 274339110 272761648 113856717 772939032 74864651 834862263 55949524 297646062 909319700 658959867 382068822 930306018 511054483 109899381 957909953 824555490 251966876 355085663 687366540 23241145 635522398 294726395 898621089 101377348 560907540 728145253 63742365 373741322 641012125 586120182 609602233 478180651 499738185 274442446 875343244 426831136 528135583 279915390 435427188 102670705 674117321 905862627 25376891 478022013 197632515 926407946 875072109 884510274 575259176 495449421 265264557 198221301 832614461 127522198 698481294 187320370 11534791 425236453 560753947 358088723 28732975 607334636 353104482 656680436 914329880 982726068 178553869 476566437 372260392 525410295 101805711 77623789 832772032 397322702 20286995 180726586 521901599 444990435 349835646 367221096 960911538 8112762 75343364 726545777 703834332 583237454 471875058 383672966 862861221 460159639 763081459 283828771 946376452 666370128 941152789 454365649 297661246 225597552 35987549 845066211 805485909 609375101 539843715 91611001 538182555 893100444 111653381 87901703 522747314 543953655 625137593 770033682 135503860 797078345 442019127 859503361 261934527 568642647 348188780 143986380 502031633 237350353 685746808 47150618 611786570 292183431 383796634 540789858 177005812 691296418 838177212 829383131 481841158 417109170 453979519 137367104 884152050 922638879 411914553 551238428 576557053 62093157 537674170 624318903 480154764 365425419 862860412 978079012 57204541 365860283 224795161 379390009 908979594 205324286 377714512 343807552 876133894 468699021 751469775 552318265 920069829 124334782 680429386 207413027 668199045 360948528 434074560 912614944 45061328 181595900 669332780 638000808 769220703 373056062 718426435 183245886 112405930 993378609 432709151 788725432 949754801 609727284 545479080 73169918 880977547 689466109 631084195 218949712 66760426 976083625 744298686 1150582 619084288 65737889 914305470 742385530 661581601 251391637 447577045 942399900 807875234 337090589 819655510 379954615 755626640 386952756 18275844 18100523 351050276 950878324 868494486 625726887 938861718 692075140 589330351 481958732 989680582 956243646 546485806 845788211 214247081 833351309 484128668 921262110 678595250 108852109 773125069 198261822 880365374 689789410 494932759 702309132 564272139 763789463 382857917 773758118 791407326 194121702 964951807 658841161 287637362 792741932 725464485 401174285 404652716 790489257 191850395 370123762 609692595 709990911 229720748 336188036 61319195 709395885 196156001 893096240 572468722 887728584 389288545 493053515 27832320 804513571 332694688 465526834 709137264 505311120 594527663 988067501 922208256 701425366 584539803 650057433 993033989 959612639 773799736 416533396 767629991 321718759 197835823 159417303 271823411 712840058 159131605 908979664 278931852 972033018 628271953 333636045 387521638 175382476 822503388 858919079 668720501 193729047 982553102 24226763 693106019 188652405 89781242 214388959 427745072 386437288 41291240 66083211 277646278 573604136 31004214 101646285 593068170 706245002 220497668 914112947 957677932 207581887 538297151 385387245 481274763 673372868 59337577 979126078 183306258 803357838 529176084 558149744 723600124 231377408 441379866 363565332 757857995 257160483 894882922 69682033 265426938 54617061 215674106 737472157 803774714 2189927 638075222 151990463 869579452 881031100 722144466 78449937 896391286 665108051 544510361 435535653 577840114 283739267 725337760 738266970 27799999 187467572 62781680 826963230 448320345 846544754 664731211 475812874 442186640 83355511 50639225 682014512 969723837 914993231 891195163 751807940 387450938 724956030 91842611 410315524 55544183 464165981 630580509 80150563 267694073 424331317 178385140 54638400 428589796 633631372 602337045 94133555 680538887 65937897 437729145 694621373 74172732 322530552 885682251 885454920 862740970 414141018 807088985 542006256 440019108 874352134 329501928 484564330 425423007 791554287 543978273 326044614 430401342 301455671 863788527 920633953 613151075 420391561 704988681 283030311 282330584 419190987 945280681 1994349 576417726 431474151 268149522 632948982 360417852 43243368 189807603 721721332 689711883 264044407 279535804 228582706 636697538 391704578 977654466 694718801 699748311 312846712 903833810 952400978 342359703 687554110 268205116 840883265 837985457 336406702 25751416 311872628 329968449 337614683 396581923 828174424 45965597 942858757 850759862 60556522 899408924 383269666 68239180 566101206 127318068 113142930 483644179 111512372 28880318 643850849 123637063 359247058 516410215 29588875 402748064 710965062 370979554 880819439 852614716 976486033 487446304 138427663 259181623 277017620 478420530 147683442 755932961 414973308 82352958 516681679 798819563 235959960 671788551 827612236 568423483 348418412 484830354 672493639 585544690 88097932 103079955 902238965 818550701 579699230 507527881 690660301 549947227 947108021 570309803 831313351 817727979 634125989 534152876 348048504 862910265 240931570 751941954 216317468 218607445 24994183 93350563 365371647 521673893 218446053 849257226 455708116 918045150 168931989 588159052 994499253 469237522 43226128 169638236 191601247 7465615 181563719 581065829 170717734 165534810 536633471 965655332 189697521 889383992 430887398 391796921 627660899 402809031 194340461 895912216 436433532 174501065 683234470 131088096 74548144 393771432 984054564 170949982 679474579 335698925 382335068 77431099 204401873 248727990 576356348 262637095 491573838 870269293 236986852 112320208 93992380 359627158 930233839 581607291 734763371 844192215 142180647 441253367 759426448 243541126 522319288 490262757 71653909 521423316 765658677 940797417 642911811 38120343 175317145 734646827 610757598 277593954 490849128 906577450 571433952 79762876 977930652 431622556 816982552 895046311 446513474 108583190 592575073 345343467 391487242 336384389 943006885 655997998 640497781 752545522 90150661 626074322 476576379 315906196 523190409 274509111 967179309 197618461 257878406 439755927 515076416 967043028 459320246 850289389 351264274 208305517 467910408 510820250 172075504 353737447 644841883 189688566 454861919 170980241 178781979 107116448 613440294 409717042 997874479 357751293 414416258 932910802 224945702 997024746 860165111 129590927 685860207 254744400 890907598 973702060 538330387 489333720 438079885 775169453 450330171 413597979 27057561 919812537 133394316 38878079 272097102 37965506 792759595 498225059 796201875 303567181 696203092 656708141 298083629 169852959 46364498 393766130 205693455 272681262 571742005 546983629 810128619 470011235 41469021 369003751 999765904 617001607 51626885 109935846 375548734 397919894 211318128 699447315 207610387 193802231 849553900 661535698 367653136 189424900 68443407 238181441 574694649 971905935 461471888 392907881 513979706 671780839 590016633 848910824 142888237 738974288 862140090 826317309 703029797 466849734 53301443 350162997 668131592 463665213 687812399 72197872 321069544 933618056 36443080 5214819 11143700 849854204 334430729 323478765 766145216 626491103 371743537 604498938 254338919 172050318 400318431 516644558 908240748 647186444 951571479 692037876 954988723 641737406 308146845 85566445 241670163 114567571 549561741 294417059 835493605 872423167 270258573 72509482 371295397 755990728 709596312 835623044 219391897 774116134 746707313 300589892 647495855 545392819 950478069 690790548 724499072 448702542 20070719 350463374 381681056 12266078 775951387 435082945 127738955 437254740 582225751 673810289 714695024 666844528 319835130 833315044 719940083 801108103 835571662 388748986 418490457 296589731 142275928 438793805 659590536 94832674 256589154 181397283 396868981 233849040 273386268 285092898 654830618 181103548 933379252 185509895 929090195 916904861 998579955 322881034 945890616 742690286 764317205 596382819 347962327 85797017 257355643 223799501 873043733 317477085 187751555 785860671 8746601 439893003 563922514 682291663 686782822 632930044 597131959 32562759 129193000 11297623 380700591 14911735 258235866 128741010 892422422 274666472 342288126 570954947 474584291 387372654 669601913 554505963 534402647 928039891 933520041 79541598 57698386 607524145 459579601 709123449 727003899 8735691 101639828 786128645 932258412 209965734 683513612 409903477 537608099 77329707 619249598 781983634 228337641 100454841 575310156 485337190 421124400 336746862 481497135 20140604 555859161 768731815 14347779 150661219 394138417 63242768 829748743 229712879 65112217 102664839 551017826 130721281 410782592 472915345 605159303 488959391 112964350 92766526 10885943 138619639 269182325 920990685 2768764 268226883 601104330 685492021 844148545 535714924 542069956 494271603 77700717 600616596 363006657 358858195 692084381 394606399 632480066 914417793 409845854 252713188 158757173 730701876 842119958 809209283 628521823 129387380 463591897 52539197 309743973 40250403 888845291 247491796 845227348 157475016 516556134 37989728 440373379 254148591 350225672 838676443 832329404 141129285 645451752 913683016 994090342 282210065 64698398 361338587 772032858 564965098 992523145 588799868 12232976 537833057 189337168 559766252 594010954 647545810 576525479 90241108 13433028 94907055 906135505 729935497 298776990 707177293 996587535 296750444 797986862 825811974 689647463 43916962 820500473 90982471 673080885 208046750 910649044 163901747 826843182 252135 596196424 261012319 907227004 167334454 545115146 438465399 971992136 575191574 11934909 178692239 659299147 500554758 242486723 421421587 594959019 272539896 592948800 265864970 184450811 187918586 156301062 36905813 724311265 393759369 357039717 11934913 109485162 925411878 403020910 262652188 624125561 785059514 536806868 839074159 16879186 729620389 163555129 685937647 109338303 748926184 435984172 651443577 176880933 932272686 241352705 891044137 648873028 684770716 24230548 994510225 467650921 541949770 17006694 750967489 493018990 238661971 503550254 475792718 236664909 584937026 448704963 526037108 712079854 763015495 661444821 133098468 711122038 99303950 668191358 685739817 867222245 968064188 566013275 339550928 204345304 63001213 899569129 252144553 905134214 164114441 334388164 268136442 885767483 821850390 232633290 369609902 802711108 936138882 93134003 580984334 681783870 712733387 543282952 540350550 492388261 353780250 888158760 75369627 663522036 575601811 595470568 797210124 524392124 707292519 608377271 568287330 160798090 414530505 601178254 870397038 293386817 483684606 433816544 547353504 595827552 684615476 779901017 810904344 37401668 518957013 732246278 384354777 234591662 324840504 408374843 427312024 108293320 985386614 831012843 961494931 85757962 955769403 610793048 404605245 481136349 726315462 403138396 457505623 422176399 686109094 69107066 957783662 405154903 735324427 728843111 16300354 118948988 285321949 555061335 692866844 540729189 297865247 900553088 759900662 497250011 379967643 56211227 462552535 138731780 268956608 3009161 31782058 651264816 295235638 520700025 208407407 881693512 963157221 502444401 565788678 159550755 632896221 479449450 969860332 449965517 16622445 576153955 527389409 779498735 560443019 853504809 258250637 77786728 305084949 537701316 26669852 43356547 708285158 504748163 334261123 781922407 622115989 484704306 845084856 715183535 830155112 117633594 886162673 40456657 804132099 340772635 252308938 562013956 209060226 851934525 821689144 465719091 795432781 794807869 35949911 639634263 954721076 728899349 917554771 130874530 76326581 930845063 332373642 428824482 35299047 517202244 783452297 11491359 27249404 403274946 66922398 846524176 22140096 397711286 412974836 104165537 813344142 89746538 124314148 952499404 432363185 289446378 273513508 817318996 708162398 116291581 721963190 737096206 653255771 148172965 290338068 506375594 789943878 380293050 581440896 534726206 820971680 285597455 140351406 23526139 850037001 786837315 652724506 687415206 136411853 273324841 334887851 297440340 201689746 213178335 538369186 247970322 905716551 937945595 261775196 214428372 185370906 56499103 695039075 181265880 664907701 609307085 492204461 811463833 78215001 928933069 39925427 239320829 691821629 729752442 495223977 135999274 987637542 265766234 939428358 538586572 975193931 650591199 238946160 134453705 298340170 210965031 95882805 941906152 216603050 954257205 486834794 490155725 137207742 503171944 717604464 983538897 919742842 553478209 121946619 489565466 464696604 716686053 91133137 806750123 398510789 322713187 585842042 868003414 151256911 545718020 752762796 989655946 743950889 191631143 212196751 599269048 17492342 846753221 532285185 810193870 539390125 685327361 207474803 391555613 800990365 522481392 330342481 147603862 624688083 209744500 359575322 615566636 105441828 605407879 375563081 711761471 962374021 379324046 612175411 975913061 177415884 388943172 491164948 209952580 161070857 176926783 477787199 7136305 101937696 759650843 945234162 763912846 248215037 455915559 75127251 331675297 330807047 785616417 765518214 977324510 896268423 40888756 921766912 741603472 845916618 85647656 186115701 698168631 244783429 808685754 343935935 975461006 699584368 991551844 432556713 914938294 140570206 497781060 983881054 793031581 152980713 459265337 150159375 888488121 147753301 552262181 96327091 200489003 949587277 179557802 665372 1400159 510275943 361577141 180264468 764073267 317853547 643998431 815453552 120120633 112554429 696972410 463166632 528368048 387508941 683693138 225216250 755922264 22833089 819820271 742592541 697594431 6485169 159486309 930147812 931391924 344601799 536557589 401565975 74130727 107988690 468662022 696578153 500861509 327111096 160302982 206007631 130001874 926533068 962555385 903382255 908829170 252319731 376421928 124646164 476592964 789703308 573676886 970782842 181462651 742111842 68900328 532685485 287181453 812480634 402914436 670918835 544551843 282626515 337232031 666253164 263549751 53907203 839386105 816156942 937550539 239149774 294877644 804118251 577049121 325933474 851020392 436434849 390549336 487637187 869730322 183171713 430603413 176441690 2150878 83399729 672439156 151029919 65858677 693396332 609012432 932669133 224592144 166886088 581116573 852268826 639585926 82033762 885432002 745918000 357184083 59226579 181954058 462668590 595887982 969417552 746031836 90444958 247959695 519960466 780927057 167234032 536197176 233463721 666639344 78965605 507373932 909130518 357452282 53388081 992308414 874865529 470057692 666613668 231192186 108314855 679048500 161937158 707706001 268381285 124335450 307177169 438018061 62285836 689881955 947115110 298587290 971373615 139520844 969316965 179299587 230147293 420436552 923876312 119625734 829074116 810928007 53553955 934573693 1952490 407375387 316228177 101930237 591921142 117938965 918671972 662263878 859454987 589881853 392255564 781703791 924644593 323478018 541572303 569512609 761554349 797153373 575391153 333838414 264501426 266216458 404030032 778851905 856672687 496481119 267002907 512458547 907243488 426436175 478246794 731711090 318010822 919867579 368428071 209508414 230806307 625545396 600455142 744298459 555703933 344425570 320316756 421934758 73789695 800053406 91075274 761152955 167959126 545251285 300787261 293565545 731259417 222086955 943967778 465060883 98202101 512167564 832078548 649972975 136244268 506789138 82154027 868108572 342123386 763323145 689206967 398840297 988574744 519556199 85784936 734457399 562095977 384671618 863064926 318804146 186582974 95589900 132429737 555966050 542780375 536388590 395552628 241502149 973479436 856096290 354575499 197726406 155464003 616231103 805061548 864233877 472869280 594981370 274322570 242899922 22384930 44030890 245956815 547337400 224669231 389144085 635329771 477700863 159296794 998477992 644598187 327144060 642055699 801337693 549970030 660134554 864917310 203443990 514834260 589332117 703159997 257718489 1532037 971989009 269763783 515125594 437501001 642233879 384000588 496426877 828326176 545558227 449880028 909403934 469640287 308305435 248461151 17936834 337822669 552866696 742507209 93890384 439311701 498913341 119747600 458037247 384004573 666709103 357778023 512400893 484706742 356368410 79557646 847662669 465515067 297607952 310478532 567108282 502558856 744676926 512357675 793795223 800641383 218555872 589977555 160880318 956814984 269548736 83708710 690047214 660846298 970456927 211980981 590291720 727342198 29487139 423356234 524287950 674647704 890567913 711959657 518132907 408810712 78472163 577136917 857211209 96195321 348056922 420851331 231606822 102132784 808896979 94020649 833772997 752465496 474194919 923008763 956705842 182078767 716165944 902054720 886691313 265464947 291745165 343335777 484881468 723848391 978777903 296729989 244521088 155277667 14383411 348716111 482446221 266872808 525910128 950198931 24132438 495927069 479952641 557540524 223355372 411973083 109960254 741690059 476558641 454966606 458396665 363035315 41988275 798840686 177962829 375371185 159501084 178321582 292572936 480110065 345619066 120270269 180785227 119583316 780502226 974339663 50004834 882564393 50490611 985040157 575631562 223225510 631329273 937221113 36325889 260105820 150272211 228077533 376428626 584504555 842382589 950294370 500047656 878757319 642622925 133636705 2160538 166635103 792633278 980859293 558854386 143754241 878932409 170514470 878959897 421644919 181449204 422231406 367524655 372418513 149979300 810271039 749580150 381057151 601279551 764222207 27448788 616109127 459764985 69774410 55225076 932995986 695589853 589880401 749961696 493630008 400107196 322760780 408312850 45309329 389226283 767046335 661321586 809833801 224073154 83115792 979320224 254610039 446529495 978913427 546927754 296550537 31591019 400272960 6961459 363984086 125056099 737225218 299768640 645045309 360513451 243887028 446529632 461657267 154607668 98149086 540229319 282428179 829680169 853744836 664458459 703364271 539938193 927310296 460897091 717859662 775800427 700700386 807431265 504370218 757056128 626649996 620419705 298439015 142276988 540128283 183938744 834820766 67746578 561229038 858715337 859019651 657170336 525075720 911678954 308580131 136232541 24230750 469083038 942198744 280159507 323231623 327826164 19227046 287632756 846970809 596499052 967548718 635158614 656738246 438787521 480959101 910739105 365423705 89050768 65594886 318459212 175185944 239171075 215570338 758752900 128141795 883037702 817776646 318209364 344146190 409112540 790819146 965681497 787705988 681279972 840137621 613037730 691849528 119821681 412089894 836544360 646563385 221126685 983835916 544362963 956948754 450623215 19724478 284401590 253523242 987127055 272315794 306245423 133202219 645736794 898000254 878788229 972505127 684855448 226340001 287747487 549676015 418049987 833508979 648575025 712657656 882951840 414924393 467699581 765479945 187999090 8195920 625985223 124867163 408136264 867602837 494600643 738812839 567798097 799097692 698578985 207985990 789450639 186118872 532613069 710590363 935863924 502124348 463721966 249634993 26183434 506035695 444499826 744151082 104388216 662031223 638033350 519434041 424089090 938151820 1018815 922457202 149210819 118259732 187614556 239888165 532761945 147677857 508990506 87507447 298689311 218539198 284359016 636597837 710619980 649395313 916402304 918820624 211619588 742584023 823044495 609059557 840109466 590614652 659561469 724073669 883758010 925323917 997064984 543945530 37222738 558816963 991293387 629793972 321702886 224231214 458055505 963095213 684549720 91998507 915216521 634852740 772792333 914041560 694858893 65692286 145242245 829739902 982886937 314431340 572748907 589555240 877887395 976047777 783331740 899669125 112794966 163785424 324982814 167535138 9971632 584119448 876567043 75964180 570065658 425585399 798105171 701373742 986248923 306398682 484426199 445002916 308593462 507282481 200469204 919072851 316210539 30958482 832716569 924934264 3216474 847358681 257174439 985987462 282426764 520902047 396276213 821625928 471683287 474370601 45793746 702849645 695702901 443010045 635735375 506399277 140682948 100412019 862161564 402330379 183870772 925997992 720740828 903576705 753499337 524951594 277440402 716739735 416599203 868745748 839182641 777567785 164487815 655266865 705834255 969678249 904655251 350253162 183139696 418754688 656626371 97680330 534015214 947477053 483315041 992356407 439611972 837922532 359635215 328273123 241917906 202523209 686425518 105353974 532884735 360304504 557532088 732166938 877485097 503912053 118205041 688016677 211321035 497591455 46464678 135579342 675574369 845735671 499937401 490697526 90309337 948248576 285008174 379369028 475770084 278725675 718131381 271041172 132548932 695646338 843230291 131082549 905404868 456978335 467853951 465301861 59160040 186937753 522568539 794775018 778986425 311911016 602556190 245687568 396899884 853510285 98969504 93369204 92557040 571419651 779061427 503292569 911393547 87349300 108105133 866912218 155667829 827172905 371170623 195642550 297182489 817758143 142523713 55362436 312238613 740578139 758023722 285069531 140967922 650547185 299051121 339428031 963091788 992516154 598697762 464215832 287627810 507226639 998579641 74864652 271578702 126637244 169224433 644139496 441467731 37967936 766093252 151027004 99987651 355760669 353791123 894253055 278437230 857392068 44036715 980933952 714825898 362938898 669136938 291780210 704281451 743310347 759213873 880768884 112426881 246515492 966217778 322464014 748691872 293139345 283768187 337585830 705048673 83266778 591074812 824788526 181918285 414014054 46262860 221051374 415542861 27689830 119345006 58280780 894109394 113259740 597284794 861522974 947623776 971605159 869615010 776520264 725282243 427307216 493224795 715376218 469267450 431578770 667820639 435008928 608573330 467347389 724270990 382012269 143844129 521960985 609814744 17579787 294308795 608330485 37377873 117925934 742314858 954317896 767811916 639879362 72124284 398607758 339527206 645450131 411830123 899749852 784198806 59659843 72719216 520325346 331266471 110377009 533819182 983729107 909210016 162249251 71150375 303613357 263902884 789324955 961814619 388554786 319114357 339909249 480542582 161206308 953370636 333382166 830473791 901111019 995164169 811242957 532485875 347841026 409686344 443657517 357445950 128549248 880171069 276821861 3416091 599654448 144437494 903347626 38138204 6546088 405231735 4058702 506065007 165405494 492199189 529660447 458214914 277128467 640193554 160738190 786325821 470075222 469160680 782383438 445821472 880232543 668534591 827132642 498094415 966975636 562888508 979347575 830256352 36032320 761337707 454063429 53487580 58527783 571997677 391308521 55329302 818248407 90327489 248251671 51493653 742757303 251293633 821548910 493298082 705497783 401249770 719833103 991775086 291814468 628394098 307294767 106686321 97276817 92348975 855441364 134196787 650715000 570469069 358939973 85539927 492489758 42757093 306887836 921920447 611297126 49501876 324503495 685182526 41024093 661699991 401109470 449747454 544951938 453022371 619143534 67333985 848444503 230588516 121605181 219980751 661865401 354893779 358483460 294893256 288527563 262315371 171268546 834201405 790808535 458887904 349151371 280258710 841422969 964095640 549593699 656734904 813628778 476199036 749472028 579539433 653368497 437705073 37108380 810425477 704587071 217121867 940113105 851661476 866354825 758382447 374208164 752443104 302943328 995881442 241104974 182367854 886051206 797701969 71421553 707402786 196765954 264872542 392897699 23811565 585301761 320845290 335582734 381878886 720113053 405161875 429340432 832809326 68135886 344274017 433004994 61184996 107956413 120628164 106747218 727422051 390070930 23803484 2204330 835830837 56403009 428485332 876581597 194789341 94839019 650989530 5710698 565966414 152484089 558925493 960463653 678154928 615246253 684660881 605190208 801234257 979796160 58832043 62879546 366006841 757639598 429471923 928717337 274052614 192206047 663488332 325305512 761896646 282791497 191169032 692993288 858646573 774802821 426283079 323156463 30193126 885278272 169960536 131556613 17733746 208017979 631329445 757742398 465333352 810678888 497161405 477234742 23350332 823079321 432360492 948795383 559623018 84884256 381762196 549038248 151614279 141357130 396886365 856401081 963176813 353375591 245616868 321062446 510360464 606219331 487242862 169704063 837948621 353409678 11074260 22215576 610384664 764136323 745674904 300299968 974100604 556539613 501674329 831223060 125765523 488807980 159259535 905894791 750796900 84480923 807248636 727793120 261137961 873095065 515171086 717153692 160555786 81104165 559513697 255564531 504561081 418801643 823568136 361287427 594747827 923666192 885026343 713892948 914669002 612611609 875821481 182670622 622033619 575609173 282052263 669328815 197398162 706685754 754951739 669829953 504724774 662585171 311618961 621838285 589269919 732615884 38227348 957056509 812044283 869584865 194677709 876021426 568902203 628581042 524795360 11065176 858091311 888464805 275935584 233640770 232143998 580086533 596973135 168335217 303407676 693427367 658159061 654950339 973221311 921902045 458307048 809769117 617608306 491767763 770010317 199857808 978598586 804726876 273593323 646446028 337033027 682239176 635229091 966105614 70610582 694151531 3231137 331114409 989031706 923762438 841080452 950881650 392673587 567518882 902393681 236046410 603655200 409596229 937806803 247948886 621370812 134383138 408714607 268624197 759583936 923838743 190061433 220524756 732953206 284086123 507346569 517051498 301912759 767536625 97937934 97374817 247246012 148575766 832937856 645872314 287034794 326924920 597242036 519418385 915563709 703186735 251665659 670924589 649197855 998490627 161714729 449115515 852340607 962952881 851177037 56988586 800533481 297692009 924951198 897502263 851177663 28588251 620031273 783384714 4601315 835859916 306453212 837086079 212152118 992175326 746391608 496193588 620544534 943976724 301181731 663257041 52867511 456829714 140576431 496301980 738841785 395890327 663812152 988487244 718510124 754788492 89347823 669988913 537916304 311322223 334918270 854612146 623840604 43036019 419497970 876705084 910416579 258907294 5345322 125812936 751687967 978737858 626726864 627966814 29731615 895343779 949925940 231710317 828542208 718596788 304850981 466248642 474559095 424881434 939613146 541646186 126598444 623571981 772959216 323715062 272014875 172265017 191362559 440237340 343095115 380119038 166690456 449626715 228457477 138132487 249953501 180591773 1095291 833493867 244161225 452271014 337441621 46239369 883062979 101973831 435090974 554441270 671861527 443111511 434911252 950708038 2731853 588288873 238082390 592374021 12784620 166495323 327047014 643947185 182443473 504734843 341984293 60188007 685070216 800511811 815490747 881123341 307853102 949661454 522469574 109694081 727333516 223315914 43771972 8198774 667941941 88107959 200581881 360565146 241639701 853113738 279638420 354332493 604746461 547194691 470230127 313313519 376529227 744369317 83048190 392961497 251653725 921142645 51656349 658059850 63428207 383142421 576083994 426713368 456982520 706037591 283532669 158721262 591746543 272117319 390863920 495461272 105431031 679681964 175194179 619730412 956725326 423167901 444318725 550693421 230227238 322147770 640645699 157771752 96882065 385794200 394716760 193029020 486990280 838268158 571592363 726315338 136477493 67893536 642788190 688774350 148242346 367197675 623178713 265518942 815523083 922605345 436709600 157352899 643132138 64605549 881102409 45385544 557150235 768014117 166792040 770553150 540248730 982396911 787363387 155644087 147352037 870213721 166812103 823048507 377026392 590855116 561527233 828092305 452222348 890602794 190550369 713443972 437834275 785035217 363320440 722917985 773253939 465549443 836448321 482926889 94819306 651142725 670225830 859545954 114908865 839454198 131319386 267369870 552634889 845002401 141485469 782151391 443278090 780952101 910107976 52694625 152614245 872842305 310856786 378278493 90297752 615615491 67236076 675641507 535060447 319637770 898781769 565241239 219451210 360303446 773001890 317312554 494721307 726685748 369705437 943697569 55377689 151368439 184046274 432337058 627148908 858611613 133847111 350276784 734046065 91081139 723996719 748343790 37155354 153386548 926510627 459025777 342825935 825509381 512713604 166956831 296276771 567766483 159014525 336038536 386060120 148420365 562871632 452161566 483614852 150279584 483850500 822993044 672601221 992923720 324320286 608410016 698725197 478045928 615933035 187267595 648054760 767698666 46528670 648626102 417809846 697973562 36292988 683298676 577599335 844400103 702404675 865799860 593701596 175920443 151953534 195357999 627913985 764661394 662300535 986918574 699700075 711390249 46078118 196263407 60166235 930773587 431600057 728934899 978073400 599160839 867500796 116069135 487973283 757070926 478602078 670067880 83927950 499065729 854438679 688989259 80026429 771465227 967661656 479505031 648183130 393431025 547568770 412088133 577358966 417167448 543207368 514472359 767062578 601441837 7302298 548790887 690540636 474685907 577176023 996298956 385575194 911755465 248740526 825148663 863845173 819741759 408045497 430263985 852867452 454460847 846628870 368749812 30219085 455968832 597008557 523436500 775815266 952448330 26371690 646960217 570969923 956231390 630673396 376344205 590561400 449497262 636754753 882863856 343827083 436010811 364584431 624366401 203404155 839734349 765534885 157828371 627589206 65246245 445258442 132293018 986405056 631166904 613727340 849253653 82506467 121941716 156408120 813589071 574116594 211859485 846372584 315351566 390168958 548158583 289469259 344472696 565077987 30017217 768268098 965901287 898230986 436977809 487086922 637298431 550379915 485825386 417099566 984934330 514825356 607366812 271576135 992911680 599043340 566000942 738413194 843748457 984552121 37122313 991262221 549344542 59273744 243674438 376493504 957644354 123013517 637783450 355513785 493698380 726714677 419773312 969346007 177480266 93154012 519166512 657905984 467811405 594015925 252266855 647070370 130890615 261220417 736779457 992230827 677105424 126677192 117578626 189579728 581742577 948938832 793793897 892516719 412074818 234051658 959832413 266416779 164094402 568641686 385033191 496203569 686808631 293139921 665627592 612681132 775356090 770660836 638404064 654335692 355535029 340137108 625724292 415973109 553981373 2984718 252929782 984207237 56775927 667022792 83909122 919595984 131899691 763556114 945164450 562819399 923712143 125436447 456486385 879273731 217928184 130306518 44245102 901374864 247700700 705513983 417011198 337780679 763442815 389016790 558072729 391667612 704409157 905962395 283156953 727204094 592439162 813943215 546529410 96930340 196769809 499515713 16415912 252678942 506064597 551971401 221722179 708641649 25553019 275942409 273329402 126759731 673517844 890981004 772254183 481162288 332433738 702521990 251479903 369445939 789991606 123267054 199285294 259032597 165030553 542745455 733445890 279105405 592216806 690519810 896574887 699236483 242481423 241561553 509065511 187298642 82297790 986171912 98251975 617240811 556549637 905869947 809129748 276474605 936399909 955604677 30465351 953786404 901648717 8573773 714335299 559942294 185512299 304382349 119210322 686741339 140120428 971835167 174574846 523108205 945103552 831469511 506263235 89933956 861986456 64500695 96095446 939873183 476839996 342629789 798700025 378173083 374986898 270657287 144207077 582666753 176692121 351950806 435192229 947954105 667689683 486299233 791617777 832564776 7685117 1033749 755240348 896884569 264518936 495281215 643988841 688843312 183799891 723188161 416575252 214625673 808749901 606172835 341786426 348449717 852526399 431027156 462502580 288886940 967970903 827055547 38407104 636548422 723200343 163455119 46795795 701465416 830039521 676259560 433140786 335044868 101386366 376751822 80250571 227712383 348566213 25274102 997717647 627723880 14579393 379654716 262508409 213681228 355374678 495852646 158546557 766915848 452925028 184962423 288933554 672689930 472440314 61347994 116756073 790732001 537354309 694889287 478692911 3644464 407928094 989728727 302113214 324722047 946292634 620553533 508852656 191158840 836094060 383152182 998864652 393996172 350072021 956394252 443105281 258630450 682865527 765119682 113088362 490509270 425016771 438950935 817827757 635324381 290476644 126386279 844692879 458613750 336970253 33834570 570617039 791503975 191541429 139371911 152172916 750771955 470039109 920123410 259851132 747910619 919014115 944609292 872757583 279144042 355706998 899379303 516399525 409954204 725578827 651224657 219650235 809122539 30850499 90250717 137401702 651048343 380325422 173054793 78059580 366515178 217368348 436651188 438129652 693662703 553319556 53833659 410673196 179236754 531732726 428174342 679792113 940633197 487166141 468306197 203957141 70231591 195034905 772139619 818680005 773249556 730809242 283507933 569889298 392784390 541269368 978584788 480743583 397167024 10867993 225839654 71642933 425370788 420076279 890853088 287746475 249174659 63666115 916866825 40421132 345963519 495409814 736903999 64174281 887512105 954524990 984255379 976839289 719445846 378737292 448644080 323699441 177908642 649913604 421143600 750713012 892144445 301041681 349666185 670194237 567901462 415983169 966235210 618588914 880249729 9917522 551945942 606512115 715459544 178586097 147337568 771139567 818372864 91536072 164430620 74130880 163870530 423727667 120035382 865736085 400918117 75302828 472075783 26072001 338440045 381613343 552583240 341588259 516947419 556862305 526649777 661327917 646074325 401216158 972201229 757037642 3731230 456068557 991380564 305201530 869706980 107151835 657301878 660203130 25617574 362553452 581243291 581195187 511270330 137638102 829941650 688378594 693058168 249145670 345860263 489928521 361588074 363167881 929726176 152450413 242389084 497315082 490079703 988468784 880366404 898727219 725384070 163621990 774238183 40868238 162453468 126930022 8116841 305078989 279195089 917874624 846182558 927354259 602607481 204105811 51591867 641802980 195819662 449767302 366325358 467872383 304637850 847260081 673711680 420139525 247767520 418635242 176032231 659433784 756681725 609649593 484166879 311981523 449392623 168916908 986667990 627803820 769884719 529786449 184392702 919469837 292439578 902933605 649214019 518385473 989802977 242610035 346575644 197882606 699623014 692196298 186982878 976287487 875415973 428587824 704012295 423441113 92907544 689703991 685841942 995391555 635367920 681947926 41676156 641012141 377520603 74074340 255195179 718431320 271657689 374103814 672621203 508216671 579654699 367502901 157832016 707719660 128865608 919864336 880174412 184911389 63598969 472292834 911473777 883172035 493437420 789230733 977133408 520434534 179073960 405183707 575802404 459031547 353581044 883516012 599065325 198871087 873418222 47622135 340012589 660177645 197696058 32590599 767027542 100136898 245984393 918458920 748290001 598630594 600024611 727939870 531808371 819092599 553696931 298418490 655546973 680026082 66193326 393450487 986822272 278087095 497440877 898974139 379924329 799450695 844142580 379188386 991616164 70116325 972786673 593733853 43977397 440249881 220648811 567939224 235170481 673786209 272717013 232984061 860622017 198538686 202044036 8719152 801040869 744035158 801865256 376189682 596112952 602201789 429650953 575561988 493320151 215703764 964214803 244922898 586711167 601733745 892131105 141339415 750612111 146735023 563571831 958845663 877690097 332269417 502625649 254878908 488143729 801507941 70660909 843577745 636855587 584229872 489117570 949022605 31098892 767827168 341304603 915600770 810052003 972041865 998560815 841748314 713725291 443210434 866684397 79368305 521872137 6208745 244365674 635464691 751995218 595685897 957773128 246093690 219551679 248059688 578524920 345648349 654764215 215405406 983794263 389476472 543349838 688656544 423382232 156935959 110904508 629201017 128645643 892584443 952654135 685571428 363993952 342219174 168393772 595171356 857563973 516707607 8373144 298946096 968130125 81825919 160908690 552646277 911459538 386773802 772722151 854415151 620525176 191783730 24645456 361064218 567196084 943360360 652808377 763334538 821844477 788716210 784804682 740011362 655433015 682386052 235176293 299904194 784876422 121026319 641763734 10505666 993942349 108776153 232708994 24726880 507038352 661439419 560565459 79781487 933107917 425784315 62756284 533276246 69957324 73445376 240550869 444782476 870203086 150587820 653197104 955900574 397940683 328024531 406620307 403453884 212173233 237925781 42589519 985070916 5528077 682986998 853256305 613807141 545081146 987651102 50880282 428337239 895678292 777844659 747138780 854756438 425189441 539420241 373100601 946077635 480734814 858915211 901023520 620157857 226231806 316431788 757971400 911915319 884737430 764391918 876219235 679987786 348416966 380771251 260054610 236072318 752520912 631996437 918562121 133290701 50471864 831264688 654586291 482891940 268795241 85455540 548644621 809225496 503804636 478041467 356109696 719992909 342457894 401547370 302370145 243557966 272854980 837030464 635222471 453914667 722865659 905805147 896213318 451882806 200237187 808247557 979626708 154662721 104344762 711854657 753068148 617124318 68979880 389693319 38991044 183382997 50456274 761556565 351130412 640055630 300260614 4690687 106594970 565644400 498087982 556822116 880093487 468425989 837047002 372259246 774397990 91330295 260051253 794999609 501332919 721742047 354263576 419160108 284060173 989558968 162702374 897541799 690793623 444707855 999918894 294529192 760077421 373337 853696542 55660537 285606972 541928047 73975650 125371175 978607550 596771174 769541502 511739794 707298667 481335510 504094156 114959155 228221435 614727458 970229564 915149619 209227189 671042283 846928664 275855050 376621814 837253411 340085155 912489699 29258793 783619348 227973348 891312871 655838985 776866363 534650376 954920682 250209998 181710347 182399017 764191549 322919470 90553320 113130479 502489421 455402640 356098258 289774025 631693215 509952031 606725775 187736611 873488015 910558643 977997757 819715984 650482853 942608809 310235170 7943027 960217166 635604945 682669681 708138557 241725937 385476272 63698557 94281049 480333743 139971194 377222363 849261422 77403521 236366452 130938776 450932141 916884021 748726421 607285763 151780058 323225103 248808097 186437938 150487145 858625361 507964554 266657067 651192790 16050937 583923932 753517966 214457577 612457679 199519669 205438984 720429596 321052032 780243892 702207655 994813027 9471770 479397209 188686157 71397462 141630693 998885972 694636074 387250916 614584976 752428020 607794405 734868729 173432484 895136764 641559443 30628495 134489133 668840718 155513845 931141723 834381194 325480585 72646814 178213957 915636685 481700135 863888453 590864619 622623427 529855817 331679615 349702064 546707452 405975512 407135284 369020388 454714570 94340415 816229388 957432285 404281199 30241183 501345451 926674449 849398024 420999172 922421730 906656528 696771053 787470788 490604529 122507424 79169426 794734219 954987094 26226127 718657701 496567966 145750796 142580354 321385280 129029033 224601844 254693534 156704158 555283445 320491170 789905527 677960072 647408201 759957473 620126765 718222281 436927951 35706850 556312901 752907829 366596788 803334836 436938497 693750666 735540928 45603242 572906085 28160615 551600897 873670280 500234345 826813999 987519890 500474995 100596148 531106333 436017600 395774343 117945626 689676503 872575853 805173481 219070633 362459392 867041739 819555656 781250267 811889675 634827991 531186267 849564541 111403273 315100499 873791663 348762603 135971456 565720439 676752522 688196090 613259302 20245763 913765970 293471891 115041965 478775346 711090922 861222962 153179136 791066498 633791932 408570493 67430130 887247517 991179118 816713004 484715862 934044163 388460036 177596346 165503342 25014796 327827598 991178606 337482579 278477232 455379100 879841300 219241969 850204319 71774310 509612134 338790427 881313838 899748389 337485164 323606585 956107689 515047336 361681890 712396503 350641992 844317534 457428033 937570715 763735893 921901483 564968930 760112237 642623798 647204385 852894037 856754883 405841609 979691851 623470115 551729671 992910518 598367634 235288805 832395281 746219994 435247308 210886650 908090784 513308059 846864382 866469125 443045208 902916002 532936013 498153058 834209076 767544917 493164093 474937868 311160389 124527908 221085591 920484031 853674611 824269715 566488069 347642620 804837126 705425106 972214254 476057047 30387416 949703464 910606862 756574713 498731515 389400757 287642976 716777983 213332361 436597889 450466279 887083919 412178518 871651751 315765105 722571466 739132760 238970307 333991443 262050300 851582132 815501538 816352296 724330829 469988759 99331177 820842618 335593457 7223470 961632888 698299217 499189583 286079139 147520114 370846811 641521967 352009421 821029237 710540549 730211123 339633255 946800137 999524400 358055029 238814925 96401175 187318723 512474895 314134477 594513188 650582441 430555304 52497264 814081961 137199050 27731969 318423102 271720768 285730892 329416585 599560690 831585808 414512970 542089206 543065166 233474578 714043880 317115490 305423886 875663190 839827206 113008210 799082172 392885989 666295490 705856733 750344963 929628103 440095234 110379568 189730516 333076565 888634183 520299903 923573320 598715850 516516062 123573785 871809510 941576060 133153495 390510100 136868496 361544703 378562776 5548451 415631641 44251402 942251234 114928411 474376893 540014762 973419879 494866894 397683014 36006243 979426755 593073033 972737439 852292887 602029179 169965891 686201682 748831024 979124978 363959230 653814008 509808470 953389443 348135604 550235523 340987342 285253888 835809855 635573099 899031806 780033249 549372092 168574200 774444630 554050829 461300823 72646450 995519077 681018888 94001781 305844423 515024502 685692824 129153236 739544418 518204628 203094985 351666821 244948896 81645431 679663055 902569534 640122300 940552311 278046178 930635164 426558025 630190141 981114910 500008361 374750922 453134823 268711441 671158342 639297313 976949236 278972959 62349076 305196402 956247093 840780493 632882118 733638965 943300949 32123502 818743009 798158345 270936260 418957564 238965340 678321518 49395825 820433019 408202359 711874267 102555939 38189459 951224300 914668506 184890923 804585170 526702639 878510147 923821108 352692621 159140332 588593957 620943373 626424967 790917700 240948755 512494360 790832512 912199504 840077810 593442545 690131736 834423432 10304473 872526255 717500597 516364802 274505766 802230042 52015564 96859250 796144926 328397457 115975140 325086305 116226510 882827766 589396776 848951356 126136106 14387640 830185679 733040665 663385977 71417242 214587858 269117889 6800264 53139649 417119360 262682009 380446747 277026617 794461341 794832488 476272617 176593673 698706176 190377839 522153132 341546236 337026423 967874725 127694173 556360234 847743186 944577384 454360123 220209185 354944951 316171076 480441130 111863444 230245149 844138894 476606510 545300872 472210304 151657746 679752084 560211598 202282111 379882827 189903259 475500575 975646452 718649109 234536710 19398005 281280468 178654331 345892818 657450242 255153751 983242689 139994712 413093877 611976361 161481517 577013444 815174546 851064895 649199184 136166019 127025128 73239258 105109117 745392342 934647102 531955626 580566754 866990357 634237004 238963954 36176604 667793352 459015891 400823823 188067093 991946259 165465143 206162909 378748742 346450213 293487523 905694420 748601913 291262992 873464625 907772340 632904453 161780405 420061083 549389500 900144445 346214888 647753353 387205610 630672072 396065249 466231709 53422171 915217781 862511783 509902534 522161192 329934432 563562548 911361197 789929733 535984444 360899970 292316624 178258028 473572731 729543567 896822879 803369927 278585497 131372689 606982983 372088957 358055035 982855399 92185579 646638319 503046613 141295165 89287011 569863228 667375472 874804327 367147096 367537924 291136528 564280797 880580993 427615173 689757485 388205749 713556642 822007782 721605764 747352962 124552405 48001398 658524036 761806260 795890166 302208527 151158899 89780160 72369057 257088872 145281052 13332861 732611313 471801158 925275787 30165453 33516654 153016786 896135842 529861265 562731528 778367495 951653584 52704307 635051384 450556012 467658513 328005676 752453206 991102147 606629342 753085416 441167894 224256609 476957669 894669495 76540577 601655493 706411148 822118630 87170674 766539212 808043371 892086667 754804699 373854047 219484085 799774210 739469963 893586474 835961575 783297533 215586461 792242853 905243460 444348935 161356317 933897666 419077436 649866635 862986398 822734512 329334580 917859430 438527494 391025334 869458663 113454816 436351201 892069109 684120465 594526805 959514825 343378850 467591005 514258953 218727506 958589139 902459028 8495551 336253569 722584569 448172911 162953589 752915690 762286994 312482272 928511209 667171693 126423375 585890839 980478793 564457239 47582013 231384038 767812634 748598279 298975003 441464381 682824591 69429780 943544875 892715131 337314187 168074232 661465682 657960520 159790011 200303034 477623078 267347718 739798823 484163684 530800181 294601788 227589699 288221355 773397576 686244653 276366660 263758219 642010016 631239020 865605796 649906296 613603227 381184871 690250438 476432376 92693605 275306355 929715230 651839996 534529338 583308258 303259019 269548776 572805344 202117499 685340318 290304058 485182721 56812843 344131836 469063754 173601563 805090420 72629038 191900972 711552246 436659715 347177256 686095887 886686991 383042388 191453940 432744591 331195592 646026309 547759555 481675701 548738967 585817803 15675438 840232320 899501039 525350011 113858887 983313265 905617498 527973998 680968313 666929100 579405513 18448915 841754516 313185712 738077430 669679081 101075519 708402466 18097941 44668033 263950190 194524048 545266438 738025167 925700192 727765066 383785225 443586203 965406785 351889340 475260563 500855322 997709990 718328053 825288656 673612718 998690241 49251977 967855529 609259585 82978144 25880304 852158484 731794995 343599263 867627836 648728927 415507414 860635538 957392296 401966731 816599631 95957236 734263030 368462660 747929156 441820331 419185283 327621274 83373876 435186879 343871191 84192804 839590931 244576788 609041980 584597525 549476899 465104994 271543141 833440682 419482879 901765282 872410932 910180941 394026004 597338419 838089345 138126886 516331881 615892980 176793231 32689733 806977337 18395782 964817359 418191961 699639255 182166670 779128787 898506923 830925027 63593266 39983151 322009652 290467212 707922072 210950851 835756227 474655413 250703505 96551261 270400506 520356855 543676815 897538795 603148770 601402547 932810142 831732481 84769464 626923744 465240407 915992488 329402845 497669010 399940978 761909869 514923622 453407977 480230349 836764122 633285149 665506158 441647296 828297601 711792217 577308374 405137665 862943478 640945249 195859818 602750406 612308407 442424752 927572320 81030267 516260166 694034709 861984337 119478956 879983332 197454277 26277497 65624231 76772360 697094332 211643592 886776744 566749821 952158551 865791170 986421227 365686588 385494061 921912492 229090125 351912258 915119540 456437966 368194980 703660440 422157998 979567238 767982352 392291486 239025560 683364682 928928020 630819672 279659972 807373485 391355444 379475484 181988790 830309117 729103103 222439775 229781568 518522558 931245922 748514786 149968580 712405936 76002984 563644976 555816171 531609494 175850542 805310147 438114117 934332246 402127127 12355323 965984921 912764517 326845278 257485854 776935487 472000898 591245188 768163665 857611281 478274684 910873495 365661540 180708238 886591944 214875695 289923190 261277063 831684939 372082346 361348560 406488023 932815151 778396763 910708636 518607594 255006584 859353354 606101607 980875014 441441809 63364026 876425112 218916188 354745153 257433844 658000531 702436801 694048673 139732767 432174442 884950287 628236536 612673933 948717180 839381958 191744946 252601664 16362213 279937002 216678654 15371499 30876018 646750395 481215231 525918755 590154045 777751608 231639467 299120630 625753699 906590115 791578260 649977850 342635989 662170114 767555075 463734950 686655178 598142649 890936379 571679112 118851264 938430146 332982216 146935720 485058641 233147765 166388865 771513184 441003432 309951155 181311620 881219560 467089112 566731294 893002422 867576428 520370147 299537472 323990090 817547583 446392234 673769400 385671980 68554553 612674131 612362813 532929090 811620173 363947538 634101517 641782652 509889287 522732821 190750424 592671068 118947073 701967333 162794941 55013797 466503261 449641870 873268681 886622227 428336192 84247503 793091746 642805405 874053373 349323040 142014560 146321175 409277553 837259132 814582444 846447592 86690577 754975008 357241112 865643256 211848568 730539239 919361912 922499382 993988723 780949737 645297594 221601251 320800185 109081485 992190333 606547645 796551134 681212958 355826067 537359040 734903389 353006007 860716711 697664478 93915356 631711267 24885325 381996878 120843373 232045991 517335073 446402738 973538531 728401536 220682971 32150087 847706988 943582188 891815801 870022855 803504699 73653842 152145226 308887223 463856919 171004950 256389335 987228477 706923206 407788506 884244505 702157385 844443782 758929072 383302596 178708759 462396641 378148920 555834157 81408554 253783564 188941055 188544163 991974394 5874745 654486158 82580455 31782384 628573797 340060007 127726437 194920133 410619466 898285163 483128910 973898710 405587864 349048882 447089585 337153098 694686739 643880853 423946733 776527478 917543383 582887860 655870615 357967439 97132464 409587657 231402275 262622865 979877645 984711400 304579875 385843815 472048990 944330148 819743270 267220639 614315516 631147230 563119427 104001157 796303690 866287659 960801917 724193360 915640700 390895820 467810771 917519925 868639975 979954844 330002861 346752035 843793830 591017385 831790698 780205326 897035557 199128153 702859583 223177237 820651731 831439443 829552781 9381179 382923245 879014339 425848572 317733005 405226574 241159493 118092672 424838828 240667886 681770337 185608122 104164644 574001928 259508061 724228682 898450056 17488452 757012881 813305123 150720710 114831669 59049420 552020698 71480250 175105450 680264344 177144530 89650348 162642094 644703271 117412352 511305048 618822252 131365727 589300842 410872877 428547560 105600835 357158382 99125545 917199871 457459834 243514449 551976857 717981647 386963258 132128944 135055515 363078800 565803253 314432546 718482011 682814423 594877290 483654876 339825773 849439458 403650311 757485683 481948483 870819816 667973433 501434874 943318250 545699640 961644171 735407151 390770501 394410773 855445039 836693589 864671448 383787644 445981105 235879201 339035811 804283814 124430919 312712182 332302316 739137199 430327566 792733203 775213000 566983731 959767069 47891000 66257204 963945086 616726449 381063448 318008903 678862845 365780496 355964103 816399789 132912149 363306827 843365802 503341559 24878626 736717184 905508880 612287139 952545179 428486496 785161358 687436612 741249449 676065810 48043086 396878637 788387471 42206321 558938763 317469506 285429539 112908758 773847024 906674846 391623515 563773552 281386314 985429651 688509468 785944937 943958477 100945002 935871722 464920431 15395067 431532915 362371249 91943276 182876443 408665590 433687697 33087852 414451284 652549894 705265385 660462803 842184373 804468437 777921627 738053348 345819448 902109080 91490908 994298418 950782580 899460020 941302295 959192675 624322630 359667440 627037004 280565821 160202750 910713035 758203140 545098022 295314963 742946626 473175825 662592438 460804011 996055824 753004832 211850706 332318623 932298093 27880655 540361611 198554469 563757661 733944535 975867120 261711166 383394212 198001329 701976806 643966435 494514146 27698761 645276666 85804626 806746144 581922871 402982405 2950601 666317413 114517358 60072150 115390831 628532383 344419226 346584360 616961273 145784319 566860770 783601338 557751447 651450471 839382596 662217077 546934025 927571913 826763942 99722409 379575851 376130372 661677148 241816147 280780742 468804281 202135640 994103845 570217559 220562223 753227220 42065406 47451282 465269309 686384637 484947261 586387327 281849103 857959302 672229912 873166448 259368402 449365804 272045145 547746203 311582434 493988638 852974184 706736539 949314505 605852396 763754990 104750815 358272817 363503450 831187698 442183511 120236961 498862924 274218683 655667262 249123049 236840357 449193867 999980461 979559134 121949923 534602957 26430764 21329580 237836864 86468189 25478367 396369806 248074366 737539363 966615566 748929289 197517643 466830002 781464204 848455219 403891775 183768616 403544826 104803956 537721488 209958164 990879401 807229169 141431525 520240171 249981517 335438067 770289885 965847668 569604572 852840277 191257065 510506722 373800870 603024996 454647897 400048228 302746323 807603006 717192236 800969797 923089841 755069511 136897890 374670015 686772366 488732327 8098248 433942535 489544399 159902766 389669261 176017567 748427643 328803360 637714088 256157205 22052829 524299091 206630262 120027609 481656806 974229611 934945679 392760596 411254238 953089787 912784340 163896969 239499190 183494544 668439967 407606122 257600548 382611776 712226807 387173424 324354844 633726222 240557872 154370695 575928742 366989857 134112839 982150887 581458653 771159583 731191007 443149515 114851825 228680661 763033174 619210458 628973388 51780734 921794490 915957068 802185004 479058233 431791499 288891312 610301023 44513066 783287552 139101757 967288673 517776693 39771852 751998696 767938448 14063343 761239944 163331774 541269060 511712597 16966110 326527266 575326137 830483466 408944376 128647938 613200261 917874434 274612109 920578485 277466776 273888754 406580963 767426369 328795894 682737438 715721868 914009770 424276195 409574576 473067614 884642086 86909008 808675892 982036844 737244052 615434399 37718391 178269192 962693888 234957355 321621521 344107169 777945775 5774955 962734946 913563178 958847466 956641101 116345007 778304482 433810332 144960340 876536434 364832424 949791616 631641821 658833221 714105591 341307427 107492109 213897219 940142555 834015366 414592956 710196363 834556868 384090859 642844631 320849124 133751497 876883800 510077656 854762021 875629555 723956976 390998687 436216647 529127431 768006004 488845603 508966677 738176304 866168705 906239123 541526574 384301735 451316885 369455116 261673756 76913021 128181827 566341870 539281408 867848764 882696537 154479088 587202722 803579634 965459180 804544127 21327865 396022955 938267691 610300336 936487132 246719990 138015816 141575594 163381493 885964796 382275397 894899932 312586918 964697234 364742451 355247249 494675834 981771225 46569042 100612178 28332173 283914426 236766718 257210557 930820748 324472851 497116763 107133690 243278604 183196105 973988948 965826100 61558021 869370970 799949036 492952972 863851354 698808556 684621778 451904563 929904650 934168971 848398551 57230 519541429 643378004 719483651 191448218 742217470 42440500 845091092 112083634 313310523 569795777 320889181 367286342 570623695 838310535 521973044 397999507 787978321 486307585 882523011 242661268 804463161 306513254 64321420 27346030 396632753 68138546 16148219 480978786 732370123 198075413 15250048 189327307 965322119 891952545 26540824 971676312 849474676 177199232 34677591 892766942 874825308 855168191 983218858 52132970 284293084 348055942 416800412 4495295 539665923 626965433 679989763 233392780 280175157 829559539 408057092 252730467 550384344 983284266 299812175 167179566 630103369 2208278 110911769 918099649 246398067 352031063 933637667 689079124 776776819 182516016 902517083 849536438 609652426 498170811 419480480 732941390 781417021 561622181 936270739 537709733 949206161 949171294 514446952 103318278 424558547 863751619 549540129 370507096 924731391 739852330 736222132 200256560 29652591 426420762 291655360 105801092 292003088 304243055 350128173 334656588 7233723 55512422 206569318 710911901 217707076 740268025 455555892 826172498 57307820 791510856 414940746 618896589 582539164 597706844 486983978 895202317 810271132 349276818 707323366 453706099 36276560 911023995 625076529 503075803 930719312 827922209 616736202 244607766 213815640 33426993 870124819 919618442 488924439 59217699 99942408 215276758 370429977 779496071 574608773 157985583 902897174 674663556 361856609 383261956 764237062 309601975 910891753 22418982 341899072 407302135 412726339 657154967 294274038 266278213 488825467 43329345 329567270 871150630 591865065 827129332 919248320 160751791 767319175 666803079 273977689 978733575 501359954 834387679 99811352 95439479 200039327 186553252 578941537 523419380 971964547 153771505 126919105 145041758 135335795 71894858 669049370 883506851 287533433 692815673 45582582 300436425 84786098 761568012 775936243 197381392 265263412 987779514 382287238 19255215 915199731 794427357 259431566 328740477 559994667 103548434 439662455 317942369 615203816 998850967 256110699 468656905 79825546 888659050 750621851 387458955 881424608 270123523 333280361 677358545 907995504 293353446 853739993 307874739 49592057 892501221 57285259 840962973 302910882 136115606 513300195 123051879 825313294 902555240 595958323 74627328 44417665 57618048 655032299 51551954 721838316 541865539 772107594 783697661 522506373 433126363 349235586 426275936 852375424 873919029 667060077 93127218 128867398 866979632 182146948 617709290 94855473 889486039 320722042 308994572 932479951 806780019 618574113 535000888 588125028 21258049 772579646 929528283 605064518 364168875 515766438 806830259 676660643 129671700 695959010 272023724 321567916 777613098 488370341 493927463 647962392 958648825 632620771 570380954 710168750 40618846 762914595 764090900 120468896 828975752 552764329 412268358 569168682 613928596 561816027 961890479 298107164 543610133 933701227 208551382 242908691 805244711 791428731 689805696 342258608 348746105 323225240 467397762 787779309 718827151 673656734 156370405 418749052 691335622 205120805 134770140 712026120 959957748 922906965 367744586 14674658 859511676 684227327 295136759 222607751 938662838 377423198 218820025 329844382 64368281 19527756 200905205 459271056 578046683 456986100 421055689 666597513 352348140 387621715 262821160 726815551 433123900 928488873 795076389 648738262 272526424 282625845 27857023 432326712 185193622 493660192 315838927 481227566 721010776 636450520 487030857 606651807 951469871 805554960 277814572 890591045 752207934 58642991 469696802 364275450 340481157 715784925 790565488 913710884 444984369 19048816 708658689 606791982 937577579 572140333 615698511 553658015 46757928 471213264 831843341 722064900 895129841 338132618 566083435 801406772 901515140 335803944 872342168 915390068 146560788 929048998 367365718 304930316 880023259 133854985 306285518 325078879 745568334 451888660 802383049 175435632 475048814 847807647 738644737 705361705 52710157 288586376 85296079 99558872 983329044 256868306 295354277 610274930 317716852 230874268 912506867 110191924 820703962 878818658 574085875 246168059 710981299 108505933 578317964 837102948 943672780 882711049 238132424 143940112 970943530 589381136 724245387 331174434 777954322 69780093 355345074 108364276 769309482 280736762 480858066 958284206 973303724 724153634 519757800 433433857 761298080 931619697 536820854 552275970 236296334 648327041 269029248 904344265 509547015 369718460 50102690 597072401 393998388 694796691 871174318 294528305 291677044 805729708 714696841 540803250 385989032 238454795 944917434 384155788 753944647 832957314 768260719 657735854 56119261 981451166 381316527 447875272 331514620 62774884 548975109 559807697 759505024 3189680 649134519 752683678 909600045 394725344 298788453 899366038 746006997 527975183 183375227 882862086 332506336 471463374 451296988 804313008 958597784 249545725 339888023 254786363 69064336 803516588 34746258 869948458 808191264 828671574 738146394 685121356 815497557 808884305 981502382 596459428 140001702 138103445 317255105 264436457 987074100 493743839 31534838 937823308 681879788 643757063 544244941 39895979 600849421 204664513 468836880 243118201 545480212 96794258 475139690 192380802 103234977 194966954 267350923 649974815 177335815 12032055 111011846 891210670 668120792 894874729 142575090 80633517 49309281 938951838 214380394 404177104 362987579 631215019 310615639 33393166 799620525 263597082 271452189 806866806 545309431 345581627 380072618 956785977 519597841 284040934 58983762 148798366 649983652 451757615 569598960 616631272 622269490 616876394 629633127 581485964 693376972 846631182 320881798 907708753 852207804 326037027 546381590 321718354 729349372 728126431 385738307 463541684 480170698 704096045 791493185 724711254 824045116 537656990 892666914 13249568 23374886 825878561 955158756 528858566 642678594 509820830 250916103 772964614 964316318 551646238 488809465 68292372 151115830 990973888 777147620 980105099 694189170 548459262 965642887 505255906 881655562 625251515 698385231 15979275 822608622 611669663 298835967 674642567 606374737 106004671 401217739 75127829 78154108 914119065 493978048 570006016 329530664 89693588 310354685 943831530 158375669 644029593 711379054 470818384 110478226 525425857 79823616 104334942 815465999 138652314 678801447 506956054 828402237 280773865 13609831 292177313 872647613 990818281 180345016 262480265 360605903 533075503 436735648 882027124 26006577 714388418 829238131 254492858 995278016 780745 745903660 964096943 944945210 210857800 974865901 697626506 76633602 639851199 419186959 470466261 199353014 923991511 877584300 900339202 31682070 738978658 976988285 922746495 376695797 84141627 593917840 426226138 55115391 377610068 215653776 512099840 852438378 613811839 922122785 778494258 54373581 119732630 403244288 790934537 506889425 363945571 234690146 538719364 123339144 810330753 626276091 105213070 367684205 849399159 878732921 890572036 858360193 966515180 460293359 732689081 909822971 719835548 574497456 470494315 888205604 343652610 806663133 539927959 182392217 166720657 750294271 215252788 299655928 561619043 25988369 169038632 643297225 266190395 779231162 122608018 842933710 125039084 419212129 892368573 757766026 44047351 835994544 271452667 286251935 333162308 319664308 651126939 896038519 847065635 405762529 833062847 675191759 386656675 926991156 582261940 948020665 327186556 436896950 952654390 823638510 941242193 703289589 188187505 689545556 906006956 384229467 224355622 873695374 794742570 342726998 402362319 171141058 787275769 868413507 378280740 285152329 879750857 570641679 358044172 83840862 693350026 203632412 98930156 38491616 294072676 650294217 905195986 928395751 977904345 340920652 364445444 347647454 112282353 203413582 989169505 642146695 958054750 300507610 724818515 244581232 79485957 364879171 937338534 890716020 940672251 618352773 323955351 154214565 61213178 969055141 207028099 524342090 844692747 653987824 612331301 137268869 111568444 793205738 606091860 996186402 407609633 560653828 297013880 61545140 489780373 212623873 670656538 213365531 391055858 604002596 342646976 21014388 277610657 866977809 676490980 602819648 290369236 316814805 664416970 430214562 687954122 830118639 86820399 798524889 910468534 118452234 346453379 339340011 462027657 847857798 558942602 253009259 79598818 292262653 988024355 891133188 647098637 648461931 767815833 698367764 685574242 732738360 497131205 251728529 332729832 286895602 563904942 433807788 981879541 499565607 765482642 963174605 16737998 944465530 212692322 349883169 230293332 331628674 809456264 985235342 934884132 932543108 248012057 749249581 468042194 392744459 247733000 784175627 945716101 952736664 566654487 303070912 107434215 290560625 271636436 72374597 34514773 783686243 757010654 107538421 70250621 561467356 191044777 252104989 706370883 551376872 456694172 467159059 723493981 425848783 392660474 274178552 439445424 158112000 499814998 210882143 515361568 717544782 530423749 411151366 267192028 713891258 554343054 225666360 284622407 18236099 430088556 221284427 45401671 895463622 634806455 145876144 103241287 927326957 479995058 187960651 176212415 179173063 819509272 370430683 77281271 363622997 427745302 838103026 248222556 506588937 127240491 495507194 581775525 389557787 897830628 599494610 501207469 342012830 127467245 244602253 72730563 155724772 986394393 878436527 819112502 418104429 88299057 130772166 101833534 443888922 983130328 199624133 376702342 853610817 907660181 955157947 206218268 567606116 654595593 706162573 450212409 893482547 973464377 871301236 295783655 323958708 582217449 936340652 742659267 639698022 162423362 738345179 400376104 84864815 702714680 544548617 678582255 382916599 254786820 399616996 692404805 625554411 932588721 886753244 961747417 516572024 584064347 917435697 617397134 439430410 109562059 235723947 293531039 819539567 862123906 490185611 844724553 267063428 573624824 523909649 25200985 814183284 970180887 617312036 449859260 550311740 940091570 977130117 788325810 365095235 46914890 382811608 734376890 168672949 437698079 650113831 860842939 359403472 665732749 910205673 976611218 515838412 155223688 204815978 548075179 723795491 422021758 172510114 45623798 722105966 815234436 255155063 446022991 448756443 288769435 59509473 793144205 165177189 503681478 900518726 304236166 515344401 869078702 848074995 543178652 701361327 450725722 752111421 239786092 770248513 320414345 952215970 277426695 591839931 453692954 848688030 114133908 837552752 782878034 630531794 40076108 184425145 553570869 916912906 456583316 466991475 144557458 593866428 390899261 480171225 944599385 876327723 961970073 674422181 416623812 732707728 357399864 808225267 301441686 154453283 7939142 148740434 625410928 617509138 870346224 724319640 249656505 305020266 61239131 2804504 190253118 24894618 942067463 145350235 94209051 828068999 615095770 316080169 496412586 913449053 790719590 438832514 319301994 932955276 989556904 163855986 656429556 143334936 888312261 106597852 263154203 575936431 251364949 875578718 627869157 878291603 306725199 396689163 803979260 488894834 947218094 718224183 706356252 951241583 925913179 544789640 334214701 94096806 150058948 732734502 719793329 316865816 150838501 950885861 107653895 322079519 473514995 782170866 476423883 936635730 894561886 666691247 897696269 395469004 476984229 213540806 74527604 733520793 715025323 315377993 135630268 431067889 465932476 345404506 986287187 573311097 58938366 351233498 65472745 763924559 455438989 558806591 973831230 305996644 928992506 988765186 308228910 603638998 650916691 23392051 541669502 933792362 516018676 537257463 797783647 745641588 228090683 779860192 564403794 206359003 152482941 503381615 471009989 478136556 103305903 449707234 607194818 906997095 342772331 158830172 663600405 531957618 880265862 715740282 490666973 87719563 294473057 896442492 741691864 82331958 833963523 708466654 102041417 196376539 974427586 756389526 417239985 932916274 950197577 696575196 455293570 873123401 430349824 722453709 91561843 265423516 850449739 997639054 967513480 168409879 350124346 993414824 257956839 584188268 494072568 790871779 474971856 516222795 119839814 610551007 656615261 963955031 179421478 902643932 970768231 286441775 118777195 694560795 899721199 791875191 209234163 736035103 519876169 773430250 899612217 99306337 403079908 956743761 90604931 552903288 143183 120443855 810687497 960447489 216740747 831644213 545856788 25534441 959520547 454082838 489365536 593700456 997900121 526880099 897150724 658611079 248463184 679919116 658704538 401706905 26037263 677330307 93901568 464130337 550609654 824425281 914944556 812414381 767466690 28935813 722566739 269960860 96494360 71509462 932232794 938780248 685008686 832230938 901418 559230369 813207115 275893724 828307914 291871973 556948013 853087024 138324225 444236967 170371839 203169503 597288674 28900062 199098799 706767146 819841491 858160462 846004935 588569630 261433823 81534087 293727215 963767940 645164312 692166777 723931007 358796135 848347378 815608695 679319164 676502235 660914047 546413550 597451591 104970353 386517961 929933277 180070755 687773434 725084125 486539571 924951582 733331815 788076825 552718881 554567993 323313180 313171034 411749755 575173622 557419860 117754441 687249070 456156531 818593487 35185799 394426367 371024228 941376551 301014973 457326486 455059001 528422558 854156371 747007039 285020937 625314018 83822597 194341678 674138946 871165493 529990258 520753762 15978788 207141720 978514720 226450246 713835665 231595918 854916197 39401740 114708601 364411250 807158791 563530777 746428591 675594242 244404684 417677623 870626074 507288651 566882278 590812117 77492227 927200588 144566353 723109622 694359182 974388781 224533394 384133043 313670317 714472840 877226098 251955203 362515329 524880137 435599400 311466063 22042702 719517244 155687119 432590066 891703977 351678918 811709681 859011854 493423492 946069016 301508327 417075734 638811943 826352333 476555636 114006648 691797081 555962500 331410065 216603650 86216310 225632609 658944158 215212064 966976013 419807910 656734767 453550237 424333854 565139276 290907906 397574269 279652200 413511654 677546343 408457889 811994554 525964470 983857943 348014646 950347754 664584735 449774107 444610608 189369960 644628297 515887956 936581407 241789655 231973503 18876805 982236120 831163505 496014464 686501535 750303582 515596162 846049653 85128363 171634421 156641072 238346911 735781337 461647078 264639769 46175194 595237921 687372957 537177452 612524078 465882304 981922430 891184589 762688543 323967915 681831778 140449503 565944355 624689553 151649842 832357161 514792973 763488695 182172279 741546325 704771631 615027371 708423460 484886172 711510193 438771660 736994545 87256380 334927749 50269341 815486326 554831069 522590006 993635443 306005378 629836629 228683186 828157007 764889030 742751289 845188385 737491322 24678214 807327908 208013895 973523624 416131458 578491004 898850187 287021005 355147702 570413110 652046813 828925155 838091914 53130863 974875677 92860599 253719162 252209403 624308278 630646343 869282064 21175502 959642777 785858823 470024320 448694024 172730173 601035599 651432102 860708622 298649623 413746124 659065612 387548426 265368750 789565784 500441354 777497586 752034434 704822716 977898598 409679560 198821023 878417299 152416455 251242582 816954250 219723601 561389854 190122103 56767329 539890884 69244621 70118071 120702666 195630546 509040205 950406319 633975088 581204106 81318651 6865326 443299453 87539566 579447374 677089528 120539686 343190269 407210215 580629816 28098508 66968526 860191392 989336932 39048366 619846902 345776122 503682134 508836108 305662272 706771630 609843258 80409831 906889068 101320891 899121254 887927606 861411228 682361452 604271511 729917428 699710289 504648398 152824501 633911021 86074887 87153304 245488992 449264191 700049144 181822555 864689416 583966145 464356317 270174624 217640582 11190049 784865950 970032943 997615487 364455510 969435186 779110567 598052210 898129643 381859117 671753073 45117718 721390254 283718992 730305750 84223106 896401606 271986609 681460250 836523408 519684916 344187588 766261590 874996364 466999586 606972430 878814889 221565158 124796521 942939635 203553396 67801686 429310000 218081587 115357511 19234091 826371486 628033934 352201975 200397657 746655307 324146870 491994018 550985470 381784317 674085004 452538069 488844092 458805422 422038374 870352246 960014887 493469048 826698891 943173128 950985490 238542943 422487275 214753335 393068445 471108253 626764915 889943813 28002943 38564689 372784470 435472597 442182761 556022842 470461005 451628051 857831263 272253689 593252372 852458814 987874649 111053363 975824394 983937467 908150521 719077088 862364288 536431110 598368023 861783575 212397390 143771999 772727508 853470607 206157071 960503096 159359799 804225525 848785963 323930069 455621014 842850254 737743681 954229849 569420007 447441522 890705216 31431974 756675210 215905361 987653478 341717239 96376760 249012555 551918456 956179793 285285243 765336735 46016250 15550714 676097072 851334593 513280052 725696135 548562623 249938580 248701154 722018896 280461100 563863131 628496165 500213454 29195146 504924479 402653447 289805775 478268917 935487093 846458066 931668614 496160575 613235938 263421720 263690534 159730220 591610269 331999054 905535118 408154287 242505306 770762403 478913769 390498670 428847839 582808059 838971025 534425369 247491177 669100537 776708199 385194292 6705262 159374896 570580738 472192238 217393060 990616185 679515512 644470733 115971407 267164444 808456643 674171171 950510928 925021727 542500699 562978284 679810555 869238421 124941324 556586665 570371591 188990210 580677690 689628899 389880820 234253918 59001384 808703380 38719787 842765290 714264177 27996020 910668518 273576646 645456305 227729559 878960093 258566907 559801717 189356973 657197836 420415385 601726825 630742242 842375658 368922621 523495054 533739447 480873665 449837866 383120651 603073418 690019271 586174688 646927497 51709119 870695988 935027574 482440812 5316504 505719455 203747161 673966629 922191703 751278309 260184303 681532729 960881026 186346984 544079989 789619204 941858860 979788040 961903766 502384696 915959604 578624062 680463423 233624975 713103964 728150656 571280526 242853379 795506641 313988110 783244523 586643730 594336403 956448542 850438300 997778581 29395111 843263781 47834573 589271609 487017944 336321856 909199612 493875950 760561924 18763511 661570688 17749653 282811448 329476751 489782687 391400806 959745793 627452302 917413604 152463726 460187746 212306264 950047354 200254910 686081057 720345099 413290276 516692353 764789794 402169127 987927235 423105256 381125306 81159547 253048405 478415937 14293631 395125296 750125844 837854556 144748058 932459555 462610189 855990922 18766200 80472555 141033512 240924494 333894213 471954996 824924008 437512069 449071770 730647101 194705375 395051307 221131961 276595098 90072129 980751438 429487336 645769720 454405823 575664087 88915208 633206571 766718590 99317638 577641981 522530296 476742543 923130808 399222544 853481888 69184767 105885794 660371057 787591452 792280796 228327741 181050678 975899088 837972440 505371125 685951335 63529739 272690217 4399193 315219067 760264065 576738748 408418623 598972778 966475376 601791737 612622694 887651058 143226149 584198532 662854459 220776352 194698610 905362271 884168399 18218552 644386765 37788466 679820530 218742818 988587599 793202604 101003101 17420027 881405574 304035364 145523035 398645978 566669131 963083676 407819999 991336856 254447127 949922109 177815818 355446841 461681826 779058920 996264306 251168649 144336192 209766562 184938771 412449876 317800147 704637850 718602693 683943076 530290511 467563253 29475153 23601084 780897778 190101926 780741214 819198744 456750434 352832202 337958190 635214895 616078324 666492923 381667208 110510257 248925046 59616951 661239693 211681898 396106101 113473526 515494646 101205411 687748316 281988439 10700675 947807222 890374516 854609387 736029359 525114992 612096712 337817239 591818971 504095438 690630400 79740157 273214922 215936091 168950311 985952557 884067458 653922878 926872298 869366769 832917843 856191465 865251797 385284813 534793188 461703085 491747375 626613319 277758109 305298929 794139563 481145578 623996672 727068678 283932594 88719187 212873639 306565295 95764617 782476908 395461849 632369523 874963738 577171787 822131906 611451638 390820736 180039427 258504293 458689743 131298078 380865876 98930331 466652358 362755988 892870820 212670560 780803354 222544736 443574494 141936385 641234299 27510544 117332744 940731688 464728099 277309125 998293022 887682468 613611749 275432763 754183535 636930251 754983739 547054680 958382305 241577551 393152277 73813856 430940853 78450046 112621655 993645741 890451649 871650061 202765174 299188997 15590347 448266629 132595345 531660436 174199612 682900778 682872766 380492876 668083481 657614157 932252640 483215830 110045027 72273233 573241093 875757797 929984541 230237542 693806701 764975349 101831842 446453837 656960901 784097296 311392410 241004952 23735093 281469366 947585739 109760318 759347836 877295754 638906427 457501473 886276060 43879798 102704608 63446489 390089135 714115669 290258636 502789077 188934929 498047942 247277647 759724973 373438152 471534402 644582969 371450032 261157798 66884299 751847765 596718882 540890236 108960546 526203048 652712472 727566878 280508209 48019696 684052064 807604690 69215628 26505176 132982282 562305416 329267968 945513698 372238367 104112809 917393728 106113686 398462666 713085506 43591419 431507283 90593474 271426721 650338652 355638502 605369669 822013881 986366861 99336720 541743463 184317611 284180271 479836317 173908266 682278381 46548884 235770435 442352069 821770425 481408019 13422978 964924847 121971014 267651659 392847384 558080430 548888969 632447694 80077508 462020641 12362659 679405358 594320494 696092848 874873872 371702093 904428584 41576662 516171712 157165826 363319013 429340778 694282634 935229888 938629161 480637062 615792022 225047244 65461188 532977462 535221758 998832697 780727634 384769121 326621507 674085606 211572585 747293507 68080911 71985543 878456609 851034354 403364942 396174958 917916962 720850549 291884081 706897781 556711484 445066658 988190325 122238366 927325271 12998364 980894034 677657200 451199334 105062104 763663053 460816190 707139344 864847912 346690052 640321931 792283739 347285881 768558925 370568496 729902452 686580217 76701938 399122090 168283420 714779920 208259075 892244808 45425427 822125736 338578092 90536560 370444649 880429751 978611932 56631790 62126946 180633381 427403146 772705070 958614817 510961916 5868086 151853713 817470220 322751791 873008904 973674986 283722071 164636091 348304160 729682637 402223026 127791603 531268173 343909360 575149829 222976889 430822145 343303058 702471343 790902342 486500831 533033446 850007414 314643746 951755077 575307904 47137038 780158304 243156381 372055560 312114879 955260207 634621996 223470751 430464870 225351171 687428908 294662542 290223029 650310382 490340916 32650000 217298992 939378016 121364036 207000305 272505479 624555985 489400782 980941692 492477448 627744100 826264589 555283371 139184447 488814330 342182132 962103627 118675354 231081930 846766269 985024216 872530512 255694818 521433027 483162573 792331439 172942197 703144489 170960742 595745248 709678348 587011949 128747944 631710708 614301949 263565702 167750650 514843910 917493362 150950969 49671417 829957859 932167915 487919318 938493652 146148293 478977277 783534695 479854539 445809558 900639619 243604578 344421728 366521917 920553196 425550 941393823 485730435 941883145 409905394 857275837 77042784 198003775 44526245 229421487 879628984 779008445 969635830 637542200 419292633 9318100 64637389 22186866 512226315 910955712 598214797 396728952 485081874 287824329 233473513 134702837 60032266 612576042 638004912 37223383 791535808 558331722 215376549 390326513 145845203 934714185 589298080 310040142 78981517 955791055 885310362 303618516 318357807 343739614 286397107 929461436 429403374 946139593 829817798 162097517 125358876 596721469 718658584 780114577 939317527 991395000 317908546 368613744 816897835 279659422 525582565 299782285 643963665 327606075 811080104 935323440 869576264 428482455 272895282 180283462 162837383 216004057 652489594 195989759 583678127 774758367 119231158 689664093 172940954 32213777 856866504 307310909 541008267 420947985 570838803 390411794 956407371 179352658 870599735 318587788 87207875 903375410 804233888 287814458 239949704 552054631 450669112 22038869 99959016 750839526 352343880 793055656 195659911 933998750 563949255 83418465 895290831 694216224 411378662 258349145 50601890 610889160 324329929 134277173 527044566 174582360 464428939 743614341 170713404 674850623 710030385 891216250 597217313 657161495 724256490 404463350 481904592 165750292 466416472 747812492 915255765 596992709 541154722 319969840 793430181 934572812 185122066 405879466 625817529 140842979 58844159 846025455 222739639 598095506 848047415 648833517 729948311 884345390 527115480 424369220 41995418 934126913 110530904 894093795 985595203 633233598 103625535 539461670 865869297 679571685 879220208 107815632 946329837 151984663 49671162 159276439 135272416 492262811 567896165 726353832 954070882 677242542 642456949 628419463 537015795 301433788 537301249 288468789 476473829 918266358 232700791 986476516 723518734 686649387 531587213 285800971 953697692 501095436 891707288 907498169 690709281 510129159 978004262 411747713 339349539 68998480 323474149 615887632 46775289 453394787 775329610 820269166 583725424 398183281 44799018 796812811 247199039 993529673 847379400 684371990 663685535 407101190 948223264 941498551 459604197 610519889 655040718 279631497 684448497 183226381 478091282 217249937 370994914 991013470 967714663 371749423 680022827 70206256 402132092 225802579 152352960 647390930 411049654 342130614 772082692 584874379 856799569 474567094 957702709 274825740 988913137 738675134 969198507 977071834 43880635 116765867 536509789 776401705 661350716 648285800 714617955 943729322 597506313 172781478 912586110 665024359 537396821 842791818 981250604 288771318 229931547 516497032 847009602 447460388 168792895 986573335 520203127 890758937 242225648 166295158 792124371 951355123 15966655 581978887 319802217 401808039 844485389 68812268 660300671 780481993 205599938 178473607 160389585 513092299 933000107 687511068 921379110 276187248 949439772 828239539 68323104 290561631 337313896 741923903 535003537 861404491 585753222 68208404 49583719 273861756 547501651 519789188 164995061 695116709 260410912 916405481 708632351 351090361 900652509 61819314 936962873 301579601 18265351 110649832 29175808 799665001 269563423 711913610 3593412 769907524 654706198 534031574 93492774 954307261 643046779 689590026 391207395 1925587 614606953 631574132 607738720 594089786 882425867 974002607 102468971 219639869 959210970 500488539 555708880 766919281 594660526 670766826 565501018 980560647 565623669 644659524 85184058 229886118 811505174 734637507 172564702 551602587 786098827 582550772 635407897 945576514 260313859 445364445 60760265 356960029 15072895 13531640 461466450 75923300 757482273 836426240 424371263 602511036 918079318 829012087 288618939 145580720 707307710 954680085 470809039 234931148 155696533 994067708 200064559 808042307 115388937 524022426 134933240 64332158 705200229 629944211 674905914 822264386 77942022 161819675 57631723 230800243 217117155 314814456 641389827 484551156 239870238 259158736 14644325 699935454 419967594 135269247 781264229 591497860 522348750 488185498 428360571 761887061 987961138 879872833 264981764 726208366 298149157 53886349 948723864 649957693 960687032 323981282 954820495 262907701 82083590 611530740 98322334 242764438 708672450 394379571 247265579 246290581 395456403 146484126 569437486 451491464 625799609 323236 164960460 500569297 29874956 916026816 622997413 134991550 579474558 980905988 884594627 536058623 549948417 528506252 156326140 700990136 627181401 421790789 45400846 203722213 313407860 673468838 993479067 175131610 718477865 802286565 612220540 752846055 301613619 879092046 799402790 56998985 114299554 344160413 65764044 550433239 179071514 321048102 476190854 823808501 189266381 773067894 614268740 921226984 976979754 186439866 951109052 990186624 545166316 955994386 638921802 562673633 311753353 421309702 899025663 160609787 290599765 368720660 398409473 49459196 127309071 889006150 785647113 29932020 235689914 719710171 102841924 718745493 891140095 586311252 71368194 50153950 341028794 7666728 175249119 205280918 945584468 958168189 490039425 484894304 691792653 191942442 931838920 413270649 88394649 764127412 993954799 370137573 21618020 246322110 760985449 572931817 148498173 841167195 629365441 468971302 475591708 680466167 947632055 840421478 594242974 399340805 802465446 392072305 388995300 337483886 829216105 112512474 850277629 485983077 38710802 21519020 286921192 776219915 972648553 94550279 671574271 26480926 971856474 438223905 980016804 225512474 477977365 450112555 516613516 926898159 954225481 454525418 183688812 989802636 731651650 751137971 797484320 133969774 981785473 779452889 339665738 819555687 367524992 482117426 218631406 773791236 376131524 445217815 595310543 206052520 307787015 118570781 187582382 106469096 218061731 411076294 561583780 595314663 278779334 317229545 433658134 323243707 731620815 69575273 163413962 517716846 446528426 832671729 361110114 310540761 355151342 268666351 970477247 113386695 817096713 860062664 482129294 288258044 317890305 156731242 55273861 488047283 72938776 175871090 341270671 458301871 549189941 670560200 221049732 509887373 548821463 800091505 783764643 25636962 809702407 923634708 489017078 93468120 512808237 357600538 909383053 59507456 222009860 989035352 361088073 404952396 903200588 235754062 373579370 549527570 290877750 156688898 883370954 721078371 97039956 146177039 387317769 89709663 380152107 570475856 527507107 565036278 547170221 552467152 106756937 857411804 501349506 232825773 740189404 202956016 775227696 73039477 408735292 950239281 489037712 725122295 570988899 519565926 220683081 741102893 604264742 92245010 337247221 52052796 370742798 352049805 940892854 430960296 899562976 949071755 240454427 546091880 692147749 955275492 781754573 61113107 806740449 786974619 980129471 779092073 42305416 993628802 267342873 994820582 839904120 770806474 181005658 75061429 667540171 858951443 571749090 209300183 920994216 372608576 52190322 849510856 59208344 186403336 126603591 18745878 322497026 504620814 207567634 538225019 919805534 690033763 200760651 264637356 916885229 816602445 107999031 717858046 759682108 681230624 711230318 901959572 746883874 168706995 320638668 636667720 691068982 368531161 343726879 417367496 432914280 561726496 375775181 15607174 387325608 385978997 661233548 838250234 535194784 743692713 833067284 648204187 379145623 396237830 734241808 319308267 553589976 850915501 35354452 282095521 839063996 151222200 107203471 418341618 975166562 491292424 36487275 201387021 93932866 592348802 114289700 134615818 802071793 999134524 185249814 185289647 709597243 692670642 918607772 415716781 959526044 702870777 377160166 617337498 531335832 937278821 94731548 912755903 216431929 445283591 839477196 604446321 436764173 193339528 570285375 251548250 61949206 902452797 14071687 712065988 122569960 356347282 516928113 652750659 771192774 132716642 595235641 429151353 630374226 729293551 467443915 878984396 634670557 159785083 649571428 592165842 443018535 603128987 925499862 869785956 239294800 965071633 521202151 322803383 142349876 844801232 24083652 985942689 268836920 271780063 967888647 107403665 849209213 64964576 969748037 791505223 549984114 700357520 433376617 30022620 266759508 700114381 365500960 674241187 73527814 106325089 646147213 307278784 447567194 608386056 337805863 125493656 282686912 772346630 697423300 304416041 267610944 495858038 438100495 237356543 700856229 766122549 595735624 311846982 432467102 963917664 26665889 921515503 98163907 597428998 5122792 562020202 818430616 300178658 949878181 711935329 128833543 170595080 358929979 539902215 182377801 126573918 460687487 427573152 493834797 760165559 316749546 393614139 410788016 206702076 774341032 87312993 875595045 76064952 630209758 254535580 618009124 116972155 414139209 987280455 912125324 320240607 401536457 123622826 195751726 724497506 740855414 796164925 891186285 375930565 24780988 732121842 421505390 344638558 252344936 346355399 849821543 195403773 194626469 1929568 480313591 979304484 199936209 944553143 330915079 780685117 403881235 256935715 784671214 677737016 686840780 929496608 531513662 68468758 161128412 710871025 890788458 766655620 44506909 6457866 122547713 170029579 139832423 19159291 755412370 738305674 610307273 634836356 20165603 925981640 87608051 452980966 659555209 251537394 288806184 844442340 753825741 47526334 521128394 657602201 102255021 893287097 623174913 59144898 490909099 816555645 587507802 587908346 441704252 82555723 496920746 83065763 961955061 396239074 272579771 345059055 181594902 216803338 799958050 663821536 143491182 425702918 79846981 979267232 559830993 966853483 328225121 248865682 739511074 972535454 205184633 518570167 969280086 976577349 958106360 805857409 203004317 720479400 22374226 484277291 834730508 499711667 441319091 211604797 586441448 435233501 135129410 950565090 756001478 191134697 784048980 732457598 592243708 978026014 885306501 587315032 208481668 488811996 729837685 88121171 58203005 592765332 494261971 351570801 523311704 452847019 734906256 909100611 311408425 460866344 231779537 928622616 799125224 6497162 61602600 967733990 541306123 667436648 411268593 556690578 898480403 912008195 397135515 994449092 137519634 218813458 985256612 955954965 276891407 56166381 967244796 651124912 258230873 657592006 573786493 968687421 870965496 317957917 813295179 888881208 104848796 889612814 781372602 90108627 134615799 674731830 517417928 201750318 358771835 123742279 549859776 993536788 49029285 81438715 586712847 528056843 482680227 711920401 614663178 455554402 752590602 708425057 558696021 889026329 284605172 707572601 137792373 48524187 273446568 873390958 756037029 512524388 175982124 75036487 467031733 184315689 117676253 537991678 176939130 126033204 93472558 754271239 292411799 634184045 192217540 278117790 515657388 658435649 441426750 332638167 924962920 533241392 858466336 178607575 359650454 210818123 590615047 995306797 131723650 331378283 484289801 128182266 221028618 401675424 873563509 912327519 472986390 628259514 774293042 348598136 610838875 769702693 763549412 965080346 322235363 133419661 87890936 137463279 849421797 767703042 721053428 856381048 282225417 548376809 913601875 240863319 55216258 476894987 452539559 778357255 181683009 327211243 888020011 939611825 491859973 206392072 96822660 974294566 560213005 841012139 248282895 970351978 157273243 359183577 334125930 405594 99846025 233015309 46952344 250974949 758375152 666439312 963573704 939958310 520865052 657690138 511538403 953046485 840674640 29789661 987902898 590828015 113246797 900850432 761562148 594093783 518315762 612617860 484886473 741948681 459883458 723154262 472602918 552391711 90639164 36329981 575976704 309878195 133680444 998402167 635287055 598504292 571673973 855351424 800220844 118170915 291541238 929233886 712707634 500529488 830731278 785546853 582706256 834388647 184871998 39874738 775447150 637193289 664305489 12790604 256064703 650096626 746218386 439775483 523287496 467453978 491281893 796634792 125277579 290327602 880049638 284566872 200288896 882197929 67544244 31742213 956219576 625045505 337004964 829610027 839663140 691970100 149250683 199265936 13068347 317322564 88370843 473057300 728825009 725685559 330018160 837592803 665745106 286224876 578559844 33929445 40968033 41954623 524250855 283366699 538712667 855704528 475937547 426827194 227122228 449893914 850017578 583673597 250912346 766384501 918867032 116844537 140028628 171816003 970911359 764628587 106963614 409626167 657552505 914891460 842493319 34343277 546730915 249656274 801625423 556520194 293797834 656101105 942062094 94039268 606622244 26434156 1508035 8143845 505253823 884714067 934988575 511281159 190371805 357964095 265472617 349957451 41514281 193605168 877470472 236704759 13529457 775854721 183124046 857263138 241103840 894247500 167401887 375282861 457570779 731421834 507359153 641661601 493965857 709851470 221263690 507068341 87160079 762154888 52861835 618546234 491297420 145268929 645206837 256392556 172592812 713970472 500096686 373011931 561863894 251641575 837917999 573510862 708848909 604464592 551049645 273814184 439896760 248849584 519809144 168441997 475578811 754296941 676035737 122496342 312015466 335607935 201521424 259876961 756321449 269460801 486861922 280923743 839139171 919332473 879590353 963694858 28299808 178760173 223798703 834328288 526648529 174916646 952134868 963597956 12259363 618323803 656726996 953236928 607015390 246637538 580649408 553926426 269049417 815018641 179913641 732548942 132978057 774623987 48441216 237131264 183948243 277939565 287497398 148675751 587812495 472821191 554132080 697735326 711944137 825938925 722892226 270511096 576218640 499790540 43068000 346706628 528465029 802100959 102792757 337585063 43258918 491406681 99557583 111176374 650237350 163656615 349950858 382190565 645677906 408159708 572896582 751529600 268931351 590203088 454956722 707828790 503242562 936098792 930899779 314258545 708811729 647865773 897523785 802239375 94153934 332236839 340067807 906194535 752616699 647831173 87898020 503896658 250690346 196445889 799447918 976012591 164573931 436628070 181697503 1202811 214501027 467004334 892579967 204478771 78601901 823424638 505129663 755321506 339173057 468780916 916167369 187022571 940009050 676902645 358346802 700704233 956167790 968231420 611365686 391247002 429543058 578528076 726315512 453044475 145244316 323592929 554866399 982151819 239661753 434345206 515509662 413442547 957753473 951339993 22057760 667966566 9723607 309483488 591250557 325192129 702569269 497057161 246726917 804216562 81781552 288700549 809918819 942641912 259132196 231446899 420504864 638017767 824610805 342769496 91809701 960215277 154614433 878572153 880910622 244452334 124098077 810556854 483399119 970094838 37088288 6496385 565492026 438116186 93787879 58626064 273216418 147970988 815492472 962271922 306830398 242275994 277199355 664058497 96276487 147771569 992295370 726741234 17960730 913208279 428504853 960507085 141376487 885230741 767079534 884492757 788496658 748206247 665273525 919088171 621110737 511005187 679282981 697932898 565995788 626771272 917969302 849439366 988754138 711287877 16443783 201864364 317863888 651006865 567398042 201452573 575025055 3113933 765385434 371037710 879347747 332932174 374717925 803182816 980742630 36299401 848753389 496486738 485711078 958910286 686597493 11862962 49433437 329006441 8294944 358552899 150559765 212527622 173100975 92804720 344791389 48357939 303376647 178228017 925232580 695933737 220015305 473681808 265904381 588317021 525243467 525874235 526558504 123340145 283538013 674446522 782519271 469109214 21733303 766334600 26353449 865875385 649707017 380795192 359138501 567024611 376893342 352913427 45876397 156560153 510117280 236163309 559771906 572345623 702033398 107016408 734659025 87967969 269708221 806735865 548195567 417983291 309381173 421607199 25983638 377221293 53351400 153614885 592865866 748197745 277026960 71517646 683840261 632829257 62066605 372844035 260507340 608618676 261269916 484469720 159943133 460621186 683115592 883591646 891981130 435370344 233557520 747740339 319513687 513755233 926119048 900924807 251431426 433637257 20845847 488340958 97312272 16775554 265312622 221088746 162551394 701050503 706700138 961810055 259841999 151836467 872899808 552469297 766450402 208908309 250960439 361971115 218007756 553660292 39847391 68909611 488387338 151517812 843326658 545481054 412994672 90618321 81142705 834880038 39970129 525670419 36318227 956930254 190749357 468782416 228482450 453939600 303013271 68314109 704521091 465300645 596561460 25978107 383567198 8134299 635268937 356984536 686660212 604885140 570245929 303951464 783273691 129414741 493132855 730421275 638550471 278414405 363447217 195702742 539744935 716376183 296775517 730677181 956431438 956195186 289547269 957243990 250018830 208326640 439217863 677333454 530905030 657504315 640008413 375243734 317030918 481089696 381757191 662207508 270170052 577172402 282828227 916650722 943455865 935594705 614843125 953656352 974450999 3958023 431070597 30787968 523901211 308355192 154293026 362876935 661361675 201973716 709875193 607377113 738530497 681448261 950470057 195306870 838421566 224063727 114661307 169899082 105714271 883649862 87878521 687933020 284898680 185537229 770501247 693255270 284979103 340556378 736416802 224723297 962210735 909699674 947236486 403149121 170194715 210018321 669281506 347556576 307353607 836690075 425541014 152536086 79759874 921509038 477488707 415171887 164244330 93638499 431840041 230410625 166368168 319525572 42132378 932440260 16418102 728338775 419518094 254714870 501284627 619874392 982687793 362830995 352530143 564807574 262235006 645034196 138559021 89658503 95008810 197186231 497785823 197290933 503924636 613998400 238871028 441105705 549209293 103089310 583809738 461501554 705258739 994989936 974839177 788838434 448416409 220608521 488130567 565639124 237635616 198456881 383374908 10132346 566373153 485018700 501249619 65560338 278033187 962014086 809759102 93262301 591909206 747684488 214334830 364863555 365919175 447043960 391100420 479951379 507931442 585982760 21519487 307849873 281564394 609228263 732111695 297300963 34119023 261942754 718332829 43188765 148716616 575846201 298306243 799695295 704742715 371602025 809114680 369417368 698176481 99813437 305402986 784364690 162296363 746431751 587459505 911253982 240745857 670982095 125967147 816909065 836314066 18987693 466040149 5513218 286324784 222975114 498890848 376278711 48608137 269010801 13332981 327980006 864895427 463511083 975956844 113568604 666565837 598965848 856267935 901616911 911845772 732405543 748482 643032257 40067552 464925195 430164494 532522551 465566145 286726276 504281321 601172102 240331723 910109203 79026328 175107155 493750255 490209649 128753354 384657266 779840970 526318029 635641211 455967362 784859389 266944676 368068297 858599372 29692786 504606374 352614638 696154786 757782235 613550616 333850294 618804789 932944474 81681313 190827600 457669989 255375135 797201059 644640650 524754513 69835646 73098186 862574270 366848308 284214787 161477522 418164881 746104232 369142472 364696517 317991818 693234478 898591912 555699258 589739165 467513255 267986715 934464670 72551165 973251937 991115583 479698213 47355335 844118756 811499408 125547488 609088524 941909609 528891219 923890085 263712942 238109839 856552786 801644472 860249902 483065667 372443400 375477615 655869147 839197373 647097194 412373297 600693275 441599916 986278408 955824614 176448867 846970288 216102156 906097723 348272030 327744900 151952894 739198210 444394221 757615521 15480770 947983665 923092168 261658243 359720554 2032891 302071492 403741472 593834104 200646773 63842443 502284780 964355111 167016085 254436245 187609668 947430918 147882359 686255816 206087482 474927428 989373312 340948199 374497884 845487518 405264035 691021959 539130129 619536962 204464433 805520211 98490055 201144487 23284736 545519189 183603782 439593671 810067174 891598032 834578696 4721944 987294672 33131015 385480700 997452701 96676213 674607849 264456317 26356461 800521005 562351121 783556492 584578812 825327157 567742355 645404260 389358891 193901600 161367863 414386328 555449205 794235746 694929270 913598592 45557501 783722249 974813099 568941071 808981148 326231862 259860608 679909912 831941477 397428028 321963820 782779806 371936211 47402310 212895576 284022026 621627622 827700672 854434042 62051442 78035350 658364429 748109632 503181063 801919040 122796816 61621981 663909357 329071782 80699176 533835679 711162168 750077857 655608295 51216117 3303435 366708755 14476153 782073218 330016138 404211510 695764484 938602463 706501726 483679001 123746753 743465540 233404624 161062238 101798165 385436502 457790205 130618379 276509139 532474779 616098492 82912661 57158544 828571277 955518759 601607304 878287198 409664253 60380680 221591688 898126110 779151030 346151218 912036390 830340372 799437977 308609759 607884554 881686491 80398969 810781376 246223588 23631925 517393976 154587954 791010625 872747561 721896527 969266064 534930403 564375867 550844125 791397410 624576014 710359000 883897020 748758372 309186130 635484373 811031049 354219897 920315994 267588876 38330547 441459157 475895987 196156940 63691983 942307615 494528418 313579279 130449115 7782181 971328258 437540410 928828246 783915635 118850218 53328369 107232675 421842189 721571868 868756136 870201098 200791366 317154005 908569284 244793411 776061425 945920069 489222539 335446825 511166248 152057352 612345777 83409813 647982181 335357995 131901250 286294907 221235561 151713108 722512547 88166454 456401202 412538893 490155212 831140188 332298643 509406065 272124904 314259276 205692626 172504714 568223617 820537300 661037573 885525971 867166106 443000620 432553686 881459370 36215675 795755721 214599 241293711 539876532 198004798 624997726 152902492 937757151 480068773 800956898 608241159 360370140 93116605 58303307 753369885 731019990 414073790 347052233 111945162 758792775 802880152 449580646 793624472 145939290 119308399 506723773 86037188 509112496 935617941 454653202 454349749 280218715 151467203 173783554 728084683 827921516 663813892 254164490 59962394 238792725 749409633 889011187 232316566 304032026 664318477 256400933 626677749 724277866 69454550 449425899 757834376 44005554 501484573 126666597 744347252 267939749 286105671 161846703 233977506 755084597 293174991 474652620 203474815 383393318 248869031 255083450 829109931 346725497 352930284 699720968 815457863 732008038 14307736 977847870 435269477 300214072 637060356 951617439 631662245 930718590 368964333 998136518 105774227 962376225 890489708 315185562 170039106 250416841 619604911 833510279 406527533 341032720 961253776 833064096 99402491 238622167 381688480 975490136 209429247 947133328 38111983 954233935 515063833 905312987 918145715 11673261 393930134 755652036 15909745 795967963 598803671 209087153 576671127 63443001 990308489 342698169 684161662 566988615 490886171 789409980 70849465 913294773 882452262 20680920 100359247 156575613 236720097 86785434 930523741 176155609 605509220 602252950 747286160 829509212 64343324 537438271 355021830 526137048 249053201 525633649 964652139 162530033 690541114 962981847 187137863 607996477 955701709 588348909 299418219 512218002 556280968 597210676 958157500 613088636 430822098 746006514 556725363 279969117 890653804 173485042 101970720 943421850 550795920 921908704 805467631 415112780 419560670 644738259 825989042 75382942 908939459 31652189 860041382 410220770 217573732 626546502 389857113 603289044 596950176 531841285 966014688 850724132 25559888 939741 349363240 475553544 327321055 158985369 717807942 354039376 609940622 410665187 353312532 772348194 364955330 588417903 85585904 322943116 116031342 714473127 277134051 209610763 106543409 402254104 365686792 125397455 562584001 622532380 559390003 987817491 300519544 80651426 500922012 228183002 291957188 958958757 734179229 258411598 72289150 825443923 912817146 278600978 788614903 129618676 159815690 343917352 967566576 531043286 369649934 133881407 186892448 959265299 854017607 283518375 438584023 609091996 81578496 91619981 201124291 169101969 83297454 491458383 339469019 562654639 327999501 879122556 524795386 335975633 955990036 297923609 651490820 6071329 957400366 620379661 67413359 16152547 593771553 704139075 439941548 807239329 539511971 168783278 668122742 131823313 705537016 471800951 93048719 322347739 588327099 970099670 343676094 871028365 507553307 203711870 556628409 349894932 675578427 93363409 444888680 692308808 920550176 835921384 516940051 766377991 563927772 90248283 232605675 923082160 826363139 100981789 626657900 683946870 928947987 31444364 326074897 750341675 877718792 248820840 633507130 115377866 738141031 585513203 190639645 808983076 275241284 38681138 447806873 370937028 971725065 303823559 521012455 296718483 84246148 401531157 152847554 468448199 794322931 987873276 343295843 783821131 231093487 714691379 252423733 291649442 330081616 106686871 51909453 712928402 31428366 179926144 996771338 878930124 923108860 168843710 529642369 937372125 731529853 987246175 416611449 645261920 653788819 76528082 969498409 746822115 918409519 591087419 421926179 816552534 991632192 365028241 123056468 552879686 706805552 724851670 589746639 324045535 650272716 747254249 568262473 10929515 66949707 637423257 996432379 847881379 3022993 53535532 583036342 647846482 931266210 135225900 79013956 642994651 133436877 213606313 512510912 859438521 235987863 233146350 833416190 835019815 818681589 625023796 242744646 785164899 242171501 209302359 232870423 360768216 172729594 984964085 627100764 303442805 543469859 420942796 935843948 974146483 331681238 570635205 697330392 341081697 239956650 982476047 343627488 89644799 107603482 462810552 798804550 994654436 263110962 140145159 407572545 820176758 273543398 648631997 857228401 89899993 688501395 689162871 710803952 616228298 596010878 482891437 359506305 492262195 909651619 566666658 905615381 273914093 364927411 134983590 649594480 563163797 538201080 527596511 873347952 760742368 86451582 480754873 185543657 161716339 808722789 518518325 291259625 226799021 816572509 375246248 254352566 125423766 200408051 418324286 96143847 981295587 175694399 597599460 389306824 253823144 296415441 499854392 985916487 654617549 998505470 746550431 587097505 466520273 824575032 385545354 167465868 530825434 683893093 561784228 53805193 654807255 651845810 325213460 885171487 506039386 368575679 984188425 502090475 180465738 412367055 668886583 12790998 93576927 87834646 41432730 78437028 229965296 277573510 112151367 84513933 320675409 688037538 162544758 529678790 549150645 483872024 733011947 555210960 548066814 299250991 882040762 280003035 60056235 667738353 803942531 67346090 64746485 105772731 532414128 137929770 798941345 613924769 792553956 568632697 499356278 392229445 194191227 464390112 820807462 490159257 185405365 194768022 731940904 127864623 886725270 815081047 502939020 44258290 79904421 993748230 235064984 992188033 667749262 75224412 106509103 491567765 975063698 643824948 615115010 163794662 807588208 32695117 400667795 983687123 212263759 913943675 296458351 834988126 715295999 525397959 85871073 218473956 755390850 160765837 411201549 679387152 724171968 737702542 582172072 162750948 716253950 924111485 346158534 901655952 650197322 330368407 254661096 363739064 318575221 118856765 750392871 154155975 264155695 869502314 289503051 260321317 907533997 288482339 269205026 398884513 13036654 664382426 754972800 656564213 660683341 274352638 183993509 904824765 110374183 19140069 733916909 222313013 455286475 548931686 245541924 341628921 550379066 265733667 284683937 912073000 45558017 278746545 810278897 712966291 377972420 754659846 458424048 613951316 888750479 573091190 869916520 86427860 981101195 205631256 363324118 9149393 923241236 282193640 814888074 69191544 964859652 498308599 641980223 862780097 154314977 2534207 751445097 994376840 469327947 250083279 153191007 419713638 55346636 404094931 432754192 5312918 669185007 639920554 770749707 59550757 73149679 759803583 727977574 565790631 513288212 492514901 871060035 45616108 812797016 791389788 434887724 808735065 972833978 224643336 173698088 11528423 611350203 41351661 856826325 131270847 492847428 912598387 338382551 748460045 653273489 841327398 254623662 711986513 871652154 112904560 411762924 70532328 975344363 134124872 625220852 753268957 663930049 827589164 116675310 652013322 460140680 658653900 562026435 159126057 243910426 574648703 81254090 954600215 694533882 612201917 975663994 809968105 624722527 113851835 220703021 183334494 725223805 910712865 124926285 863174067 467015413 995279783 736502772 897503124 442068911 593019498 430840489 991817958 345406058 691033197 323506363 562361068 678762757 667179065 532229630 478129880 528566979 994995343 127898499 463069790 217384315 858862615 688228656 575629091 895165257 315667377 463659590 998654695 394966760 449208414 876198613 883414776 824784758 881653880 546275658 448598687 731262064 980345797 212422457 974228103 607260137 876628895 563330034 168170805 804753612 216241913 79183842 33536898 514202264 20774311 251248300 311544086 398615985 650412348 171195971 79803581 532232381 236305167 882036860 68537155 835726622 580106003 146960956 291721568 353367683 551492625 205794254 651306401 294839671 233470602 538836512 571568223 651704464 131899348 887773322 815985286 819450746 768251553 490677679 910275862 535279958 444609736 746462279 731058255 476088110 416370335 445614611 546876329 760544058 805298848 848538085 714932421 541510453 864576544 911002402 157228926 210570155 874230194 439191766 369965744 228023232 934531659 534620077 731693600 494439210 257100674 175710472 273521299 109699490 488068741 95394615 146725070 663325132 328042824 821028455 343297609 578823351 774090349 451017108 101235686 219399811 246246917 224822396 618060645 887623212 394610583 413485320 368723830 918842780 57462417 173878203 549042795 591674484 583647038 591171066 251805563 797946106 7179303 212109865 7955340 741576905 738185994 149468993 884610528 152398935 169420669 569248411 210327530 522127074 112945927 11215075 655648100 160559461 645562845 163627350 454556859 535476984 44941423 988430923 698889878 847469787 62808260 254138971 711476458 333228478 226639458 187705152 281677919 264056660 502315026 478231419 305785473 233625971 211521440 43426788 294600641 434180459 156283423 370747680 72118265 292191948 933389764 653913831 261222162 755122016 44102431 539775123 10540380 765293133 478457965 80598557 914727374 889602780 928951402 797520748 498991821 635301977 390195889 934065451 84123565 114189737 235381336 698792003 126218573 739526880 872180642 560414818 395038469 868587833 94638197 797931096 375848571 801473667 306504312 179527904 848135962 335868195 998486914 546620307 336395814 69385149 341334190 573707923 391637404 152658611 957394213 889471557 922964891 352710502 586320800 453231412 93901579 676527015 534949894 568568830 154148201 313665080 402126517 967071836 73790320 710745854 323176974 216587350 765322328 95778965 378208661 632659191 797521655 719161633 36013138 73082466 960394623 736910280 336556038 281266672 838430501 496881868 876161937 967247944 484154734 532327286 544050006 42775434 974051619 553397744 181023862 108512146 357431504 805127552 483758204 440890153 688634993 73116286 298837683 545568862 848781538 525665351 901630357 116751480 139535862 946495098 349419390 899926042 458343889 142772086 12539654 660886028 852668540 912100669 648179126 504509420 565680495 555191381 402190967 69214362 399005101 229972823 459185381 654350124 167382430 230583590 171831161 749488770 836500989 522953065 23313664 392266442 939636485 971495749 999676702 505896673 194600169 386091840 939651666 917055713 397878786 571685679 268818771 817738000 331159578 972123778 62178756 61320974 485425891 91858890 969056474 549054757 356925535 127122783 695429952 203426145 935859342 232089781 719314786 379649683 405668348 739766161 431926746 763363666 975965702 149701650 756215853 472644012 610485778 932419368 770349691 151541024 428879794 173481806 117558565 180752173 321039418 176154452 514651842 48932463 288534363 499560619 614652965 139582990 184335666 752389040 668296870 73763579 352706511 144362195 744523579 365011612 658349505 874188650 72266992 958061612 491575121 234929913 443775946 896646354 114679173 653808325 259306168 664201640 501379648 349031951 797160025 228762399 530012288 645349744 81836266 705241010 802276779 97673994 301665390 421448916 625382195 899004145 369425904 370888089 626109406 197654377 661371290 352957236 90082632 954711514 229826317 49941011 198766401 885005286 780679270 561750186 461394244 238312149 342392566 783304540 11739953 58055857 31458683 75856327 305377688 605764555 71323067 550713884 632841978 8676764 641612198 630634409 935643135 492236721 155892371 525426173 431001321 10246106 59917466 916603128 318394225 391186459 825458446 535803761 989449116 263478062 701041145 183598633 389691056 364178528 988745561 565643845 850481903 798425791 114539870 264217791 17385387 626281744 613065104 456500064 839526153 610892624 319864273 958178322 699382113 299480867 770510533 175276794 207456115 162977113 198064973 13923981 536235122 595272185 243933673 629947101 956842065 556815886 433554589 797782996 182905801 640510409 928055616 805573934 305660671 410167087 102380738 131344892 66068936 333697745 528155065 714221006 225550457 977000528 236138953 324026200 9394520 735426046 742751151 641359939 311219808 81771764 165866685 710474743 901682574 107833772 785552767 500357061 947099728 996877972 728935351 511183847 530001367 153608840 498139572 292568107 745107811 471318014 143389725 608898222 701449027 764066684 594144890 271793132 301310582 561610184 70150114 944147808 57211100 476176038 865965032 800983903 261235781 523869706 426312 225048935 906938173 192288636 761425599 360321823 474575359 738159647 688386483 846134541 151896384 805087726 289732418 618910095 596300153 304770696 87417419 795889499 470198278 575309947 965475244 809299209 93114136 182969365 314501920 735316338 494899768 607620639 293543590 251961408 424625269 253996512 673271572 740597027 289224752 334328649 165650987 582526884 995547541 820647570 744908724 91361142 72203657 950506473 355795439 301694646 692992857 579982571 566604 810870201 624881303 768535719 375883628 462549494 97801414 376087604 785025950 372810465 540826089 75366835 430029352 15210339 946696688 489392274 475549883 63927145 49654898 686159606 72779253 660667716 308878261 265375767 148837948 704570457 420444973 524294846 842084887 975706403 23928051 56200273 962218505 210304991 724634808 209579429 583561761 193599603 336382273 875264866 669315501 938831137 325009 590099777 986265587 354520988 372999946 739526946 359010655 578792787 913941338 214892049 209239894 478298934 565581904 848826303 374313154 576019573 112789202 887086887 43113850 181268845 342762431 937321896 555422791 259428086 342179894 953166362 802547259 551990427 575504656 329931067 659678380 996985937 292498519 98584639 164085759 223514774 786177647 132001217 224955102 46350679 772218675 204899967 696804686 884923770 504032990 608177788 555310764 994100083 101208907 14529117 497754630 884823639 806871839 169762300 251571963 559422987 486924039 633608585 748429227 185093024 880977220 371260105 458848184 428463622 410675551 256624611 763939639 411243646 365670404 241487028 412909385 562918929 92152599 707984979 553121751 391295966 169748889 39657390 566505191 908250518 887635370 583939495 843807634 333884951 895026485 820338928 944161506 997850461 22748867 319551620 356454997 334557438 812272488 783689702 882511012 133576749 991294666 188030555 507559016 703424321 732731798 322792830 709644867 964392522 951619601 738136861 666010564 901983070 343363175 736960130 844330008 542211189 596336964 612480460 373091956 701761727 598772507 861794288 762443464 676086734 677676416 431734739 9184199 609659439 28208933 558149629 51309699 504027039 324752132 269490296 20477940 75826823 13979461 924162148 972967926 812969509 457233682 466808813 378094454 201266940 433464896 931584254 261441145 656449494 930885235 488424009 169477793 312726328 504728776 519611069 395245033 799371707 890234125 880509113 849074425 92722916 638380311 791214741 614088307 367404928 689987277 379168898 483622089 701238128 226683464 275386685 907002327 911058612 319235992 118987890 437723352 233343874 884568899 728591994 169137162 202170999 681088518 797756268 262950033 319174697 679452036 754942359 980439331 929509734 407311595 292404200 413643811 445347055 788760452 484990257 573945987 40678556 719968993 840925849 790226774 553588145 103954777 698235882 279052609 550679274 901490289 386307974 963693355 865631762 879005830 131504617 301205754 792133113 615866887 374560333 564856408 808201473 906061687 798103413 13781523 396815406 158858804 140815144 687200079 872474287 561581242 44498114 416137270 120246860 483002994 361123032 477335476 750651056 521941303 611514058 177227889 122346507 175831440 482786285 151394316 578545310 144750353 327199410 664145423 647024442 529446006 149728472 341900263 10543819 821428223 879505247 509058505 978872872 561518986 757301584 731563495 972344081 164715620 793355245 658868695 356806452 652542090 180353636 435541572 639842386 259250938 381059333 176109863 705173986 888798784 404133165 453894885 379515416 593101007 919336969 876874433 978332166 704803328 213949538 166387327 936631686 69367206 541741557 77917452 663984865 311892190 5051635 318166613 577733945 474915236 449316689 401891698 737630477 509917412 428882425 507538464 640861198 228562003 7880654 867476156 428828233 269579973 666165443 891737597 121274655 232105129 342937844 591356183 973578942 501082646 256860634 471658323 932028546 516738131 723888320 680161294 170271839 381177604 650038283 864429986 4883735 273240886 592075110 694653983 976729168 863194180 191808135 823404803 394450183 77451068 922766377 470648033 802248606 611128863 195762730 882400545 188916603 983675378 649655223 871220321 451509339 641311096 723999053 562196901 439836984 799845080 998568214 913879765 548708644 207280469 374653422 780094396 714586166 75365186 626912008 159211765 316648113 597130590 359841381 852904262 999754553 761260641 471692451 950576151 755425200 362627277 64911089 563219020 730020886 886203625 449861369 800502776 830690338 835215601 400799710 476937614 302543748 215745468 917509780 303010389 623668164 357584378 600221025 65431951 200369110 699389383 623638016 441190930 252470086 295592101 179239590 349284932 653216150 333895209 519971937 285683431 12219555 758085166 534706787 220533836 896405594 601711744 942955968 580611669 272359615 185573927 990443559 786272345 10548147 93815729 659114010 397863130 663440796 290464798 292580333 113844855 237145771 441954966 24008085 234261240 506157299 20418279 996094125 472780202 284594705 439596917 366122246 859463712 826151684 566921823 689120478 543223837 844696610 239730777 376912718 230863518 933974872 628496089 696662450 585810941 533113415 534182555 378850320 44936404 22728909 234861008 554311856 80122192 316795853 659195881 986813844 96928432 477189318 387548965 162035981 562688536 194370472 196661347 91016009 188712713 411914406 565005803 746631043 845626474 918869681 765268933 582948347 741416969 265622771 107923225 29347803 948512171 603310545 837801711 630325634 564837476 12135041 385554722 903843479 603891116 964796117 585796080 912008296 754872579 239275493 563659449 58612121 511907716 489285679 610218566 702542827 641766637 844477601 390156020 618528368 443379112 814886826 673950099 359189817 859815658 152356251 380583016 817120131 201788929 584485150 230035931 912443817 714008940 322198663 37687902 870581267 312173534 864860361 562490202 67612858 263405768 76168093 999217117 268957182 620813365 184877350 496183915 441159921 872341343 972786004 858091314 399146038 818803669 336413925 65044676 314456033 392954757 793669066 274511267 452323452 906391111 158237543 545831283 180761433 264721773 52658438 747158640 115690715 483827811 771784752 11615289 612095741 941248609 438830756 813556769 533607638 786070830 353225485 524427173 228709345 56749404 648767710 490342216 270024036 652909056 816664336 158198452 816598875 685304533 927745115 562663157 413292181 792011950 528746613 747835917 446449891 69239382 949340510 496850461 560361796 927273596 415420677 720049143 847258041 248393464 953981805 707742627 150458956 448162011 427391992 996599555 163127417 831158690 38336442 885763415 763123589 198116963 812492278 276387541 707980455 809185780 342546407 304715316 256933381 576567091 465313709 282997142 385638241 890748016 776722418 992794555 255284507 658717450 598834599 587877456 943075072 45842096 297472346 81567859 286852530 816168819 285542470 221262353 398198935 781846699 665835465 504678066 814995287 575243181 420804588 414333101 413144980 172540961 647136173 309496759 186761240 907685796 879056441 208179786 988717345 979331287 96330999 542288335 483836242 933661042 746725634 530839508 568159821 681938415 506978462 349070237 419698375 172107501 180077466 738827901 695291084 339518105 622481634 780021729 829075691 510705196 439692344 147207635 639452834 491542763 48407912 946115705 226794542 124612357 787618164 557341181 227893221 632044663 970382856 236263290 884275858 155868785 146801827 186253928 409086501 914810572 617921709 418713931 751029359 417872654 568754108 666960991 223333509 400360065 80611970 933549781 25431504 461365139 446371581 572707995 996267586 196052638 802709435 120282089 975915400 76403355 199396047 139498240 843692233 703686086 560642094 741558595 713980792 318847009 536098121 998383863 56427530 684328749 738639931 216809704 70929808 799983019 288842488 639104243 799032143 3874680 100824800 358577981 503824831 334077847 735359638 723261145 854522651 184862243 168030733 799957528 716463760 82258229 54666129 33765546 987928662 569628284 312202675 994057753 21236844 262875958 775451047 599910921 799290519 757725161 204582195 762519060 1764457 836558335 345053047 356663420 599486618 478716178 105821229 634424374 185309933 685217232 972480716 808400308 445474386 991152684 329121178 703569921 926744072 938835405 141502805 798928201 312814580 986286899 714686541 44322895 992259403 117936801 590539469 399555954 603850959 246654788 909495856 247723591 261514910 163712123 754029023 774568848 580205693 187241536 88107582 418950023 559647925 318519898 502513708 161878816 672878483 494276256 284550899 955920264 571510048 244357204 924270858 640053303 137380766 651732781 95521350 292137630 498267194 274460715 86770105 353713119 845251147 460777430 285783577 348797282 61057515 827342893 102035616 813570840 459538028 804606384 555816480 512971976 809110753 987699529 921397247 7850137 44044784 289027619 700467810 207750954 636478949 328063435 287902968 527567577 733781282 268198592 974375058 362939935 928598770 313593961 622905199 902757065 288946220 560750478 641913898 209245573 65810056 222728046 375655428 780038210 694893044 380885682 230541829 965680509 586711234 716811222 805259627 385578837 964673507 674008856 30611598 328515792 507793437 607128866 954805027 931923902 255739275 756364937 118465326 724427447 1165165 794798841 142251385 324578939 632635197 552103938 121069040 735074234 778905620 200110701 177538625 874547225 138258150 855478338 664811142 481051768 625771337 413852137 894587229 80045 820439215 764805981 93076794 41292100 216363107 417669674 866618844 822946282 250981494 855419301 138754993 103815043 216657444 639801863 523918379 739271255 116376723 285828925 377388108 721823491 726702989 560240767 172650963 509125073 200226184 389845122 742656268 406629535 740206069 929423010 800608506 141574130 438032741 223739168 769180787 98632278 415169203 983592310 91526235 97271774 520997302 199013991 688375527 741511825 839511195 561720280 137587509 841317702 290143416 670754397 775146940 528168772 652086429 76670648 47888523 234725670 9989219 206599745 685619797 741520872 130447245 684292189 166875271 547106371 953906079 22717299 623055659 795652847 469536726 379570398 947869270 79186161 336113410 833160335 525849977 743631536 886836309 988574720 999929746 673443982 103258530 430717359 343888797 48711898 300216297 15974321 118391033 187027603 793324650 271110180 390848167 119057369 268214531 367646558 570760103 437560187 181997854 464734750 11026454 913219154 875022966 817367241 254759806 912773178 767125414 88041736 129878869 948591936 146339166 576172067 203738140 37875785 49838825 193092459 871881970 612419029 253679229 703959917 340118721 398953252 789117038 148781453 214878892 96494387 224389934 144299355 29529423 468378356 592468712 869202766 102755183 103962186 926658551 835621549 336115343 470517641 9846323 357904863 116050114 576969556 49728279 238065300 551573150 434276920 673350667 791694499 114779220 516365022 341311012 130683812 563232232 101617078 971750276 2031030 490475662 969000994 241839313 943418959 563487572 269055369 983386237 363444748 860280333 439378014 285490206 91985404 652287690 326588443 57682455 291032209 367660264 409692368 161264478 445081952 247756969 624118536 860623971 253459470 230920705 49566660 687132247 396580448 377581280 434927308 53612979 634949652 340367291 63260060 497021754 672622298 782885455 289332138 629705672 842837820 720484281 844248342 878973336 775124493 681210206 579476727 955613471 459495039 663509258 656539326 176444635 405831849 843007132 646546247 559822618 802464532 701305016 231618463 990643124 53887669 491084749 432718469 788881836 349950437 815586958 802501924 514472527 728349849 130728062 153807255 923619321 392053370 231891249 890205782 480265164 462586060 816101238 886267672 477447976 841584260 991233871 971313227 390364592 581181221 554442709 625370610 133586048 295805029 635930297 5271440 370575557 338365554 472999988 452922274 431245467 665753270 826825698 914947069 967144929 906142134 912053757 394075011 920328923 446924214 395882881 583518772 104885884 372835018 818365310 225876628 273946532 790877789 359333342 217026912 144177008 973742812 208449764 336989058 715013205 872887271 144945351 926992527 297677531 666782883 228463061 719086701 152600928 790145384 828489964 482165561 280290511 303620647 440595633 850517467 623666269 491671742 121244184 920828472 762573071 682340803 700964519 530948146 240356935 425221509 157656403 509679719 730395768 218120614 15305523 262088819 50146138 358513785 966021256 714535842 124792539 366920089 407608210 462502800 53589477 951004485 499511909 649810511 976371912 888716091 182875759 39049776 88406073 686368170 83465131 354066634 202262148 215625974 817612975 401875463 288526025 611953659 539019756 300537240 583993726 443287747 304189201 784142038 502747362 501994974 115411200 294048877 363671470 352565070 415071885 658685297 685810766 702968329 654514978 310103829 826579811 189048431 174797323 759798789 474255145 284092987 797020224 499902792 135133942 581678197 3741198 764227567 869279153 177107415 369819118 631196500 982642938 468662249 7155087 845167418 401192730 392933453 999536891 373651879 193351668 970374185 70433067 515032142 289762975 411590942 120914195 623692408 267004858 130544939 765732542 4419623 146768448 786736763 382835521 890201844 202781420 422347753 688628949 421820882 8091483 53595657 900476466 900291004 232765338 470559098 489055156 316265109 849169246 589750123 2551251 976260100 832418604 800021116 997779313 262742376 579969257 143497800 930040310 948287030 564709242 276324057 153465371 763277830 670787228 494809517 781435500 754873213 414313072 968620209 98043106 516472795 880191902 410614250 740486308 284464178 87752534 525714103 837705629 548940986 486027748 859565848 293366953 810913818 883647080 348185494 732261020 650355788 486102408 32736178 747594906 594795420 985949026 140805477 704803210 223724495 58836421 322881931 705468421 985159000 804556717 130831110 445053660 270959436 699841759 865177427 822504362 908835108 595539872 943417514 381869572 527748985 612912766 731043976 520199765 811420791 205243692 810042387 434653516 185344895 858668787 470078217 87539060 851410975 721388111 633272333 424003722 345504456 323803540 920758162 832582027 888524294 163211258 827111088 975401190 156462995 927284772 694648857 690460180 258223886 798718984 989331599 731321881 300021676 516472254 901864548 256558942 190892376 191352699 300753582 494559214 94310395 54860932 956113316 900701363 595858678 578678522 82405844 418212509 967356241 592846561 891041117 19995920 210965100 744522287 280146610 311657749 304602827 352548383 238102102 306172982 360763201 163014770 203063858 420186149 943448889 437781286 873572527 707800534 101089201 963262749 670828346 459771129 815990500 290933132 977449389 816535567 597068115 109802927 851855306 423079248 50003169 69650818 140527911 732375797 74300772 13148859 762100106 321965889 392213433 960507397 242099302 623368046 227312506 54541428 596383255 684652178 497393705 875356692 546143567 344811579 583999970 351532024 489525707 421223215 613549409 382991914 165993671 785133314 61426714 803846493 594418090 490645893 432207774 416806634 361660995 464902469 690875502 759447050 314225227 881930899 747684661 451348123 420436061 315312798 501408526 62270856 50669312 484326794 243237529 654316325 299223493 397178790 863907760 481356304 476745215 254281563 614636204 562810414 21157933 496114522 281506516 433939500 18154981 214348777 963793695 29919368 353823427 732721807 295710772 859687871 759871383 715128351 419435117 3825176 235098262 159501618 231536411 29014674 652886659 53818774 618501385 411129841 183875126 701404018 219490091 289828852 856501291 241228211 148686777 453083943 864457326 558951342 847368875 547419802 920789683 965660305 96855400 621205190 672311219 305351615 738306721 288548633 128435503 372725431 476346198 173393101 143361791 591349152 126486108 442263874 89492758 695209732 192156605 580420303 213912094 456679538 640860894 225782975 923946980 53526033 402772570 73149763 169003440 726180261 110820613 528452959 10428924 284601485 72758354 218249358 198335190 268919314 893356416 55423169 356992359 793196839 989035328 584270428 684179877 2312772 915485230 322352747 539026851 791429642 285088227 477868537 311654888 397399439 499459838 586582576 200006152 117090632 225738005 89438375 18800039 204897532 255104265 656087817 523079026 495082651 168067788 341143949 315310435 200358682 76421601 721238424 661918871 566401385 326129706 343144264 603594868 599554283 982752220 139898150 230862702 630351920 599661150 598580572 339109636 722073318 673886556 478364052 774551255 125462947 609113972 46627671 179780030 942098673 983803334 309307087 311175803 403378617 986923436 681162440 484577813 67831373 15474843 420380588 458915442 15190620 368010887 454540123 792310310 533420205 418006948 404983988 210862585 868321401 366862585 548683096 578859662 258631512 564214293 794115835 323646967 109371936 958362709 809418264 295223331 250653861 705089308 122112110 567589643 562192086 281971954 35191471 172270385 568652472 459656115 637444303 508344255 748730282 145765426 402484135 178881399 63707295 424025987 564445156 573093895 760297803 227973693 209014521 401924293 162154380 695426751 37590907 372203780 173884048 48136932 709759698 889629371 320680217 244835388 585842249 224359152 530037268 287391498 322056178 173785553 509970320 973094478 340408496 344532931 136815364 483270821 688879885 85389632 813275668 305050185 971267363 407406474 25127549 267303114 802700682 980225088 202291108 238788492 879525740 318115894 327925263 112618092 986307178 809574384 346538002 960785042 33838374 284811403 24740380 73694934 119989175 250847619 821675354 259571428 756912032 261839937 300111454 999092395 197430234 223743457 83007363 135395661 950666070 852896372 322400270 3660453 900331939 880626738 755076599 683904904 965288424 407467786 371089523 867071488 717426019 339361017 960248556 939612152 636999274 475699704 332498369 494349067 571673693 720917241 655196519 577377624 688535034 891461186 389056230 913497886 898717489 136690095 346927600 905087434 153371609 513523408 168575007 740128526 613677391 76561533 641053679 163588405 482346490 33499655 723019728 758696325 712856755 377607281 593436304 479522212 892245378 816815145 460455220 457173996 505230172 418211025 60456598 944246851 355069392 141577280 89079853 385942070 919465485 559171497 530507262 932046350 475413954 53803478 827733346 393341158 146813022 824980627 794218511 691531604 99933959 982062695 104435899 868865379 746259748 867860281 699812081 752341204 58636732 30081191 491572932 878690876 734617657 24155497 689011861 987486991 82823134 786210974 370726483 91435361 597667454 150033493 381257586 460015979 623645270 711049914 471741598 786963131 174805757 653959304 162772972 152547071 584293644 571804729 227853750 492081860 414487805 599108576 787271320 768343962 171759239 976075210 619910308 148984839 218151029 421046981 310392588 785702214 437291784 746007704 692833499 193048733 942718759 73679789 832653656 265805106 669460250 939141282 935415965 51153134 65332107 902056883 607844798 415102854 616469348 983153670 893269325 121761585 34435382 774829595 642049304 895098571 420821444 462834681 683716779 473873937 759183371 163506483 397251076 263135704 475502950 952731635 413911117 309378297 814532028 917248663 459675006 928518501 169929561 930927002 560896233 321091046 285559211 622007566 458903943 540772965 720965239 102184515 834217941 595057456 168494174 659594054 635324501 12351800 761018101 707387499 83904542 880733556 565547650 921095046 246525790 933661127 873489986 105644790 623697668 103080108 51915252 939133563 863356944 234619847 515408674 115970543 720769396 965553483 209416977 859331457 668416684 298546450 709531432 341983754 102268012 151333397 583028487 522125932 19089932 817414142 885333727 205273033 593373837 224338279 809111604 576317501 810103114 483647194 43361641 483849708 23981062 889623746 304150160 716216055 949604542 998315263 601658428 139751619 598686901 264708766 259188087 856410372 596552656 920707168 364879397 794668196 675550976 396596465 32705957 539994812 372482815 168977290 681017769 850552107 331931018 491984602 419487147 843878386 515627696 691507807 872802069 98852315 65143602 372400960 789669856 154364598 685815160 576796878 546400617 717305441 897862512 362450383 388017631 574907042 898689028 549117207 758072696 548505447 303733227 653778907 247046474 582875758 573331063 866470373 528802844 617908315 815100464 858179904 255779324 813316378 751398424 354542974 699480118 526105322 466687653 547582957 2023527 390622621 598227085 297871486 508622603 280239515 743722225 132543749 581272944 380305333 251542820 614759489 9389867 500631705 871951659 472626292 304751040 704963448 374998919 214706199 924181351 195008222 159242237 288432402 629773916 839172192 5797204 729051199 121134879 410095652 481436078 49802306 873295480 871179362 205600468 617515879 425947203 778220478 24715566 845037269 470689288 619530018 972750952 441092930 545589009 475267106 301291578 306928237 941416053 554325768 97091625 888607212 447383465 486447805 315878342 501737558 838253929 686180951 8997195 577494445 723574993 515894234 762339037 143485168 610114786 709791836 114848833 750318797 575230811 386203615 574212320 723107860 731325177 643088752 296363535 140163189 450794462 435211818 117201182 344587751 694564496 275395647 207316664 305110296 778892434 99605127 135662407 317812034 547175867 759374537 419000002 530444218 442492665 144266352 97840016 319532902 583961604 538272243 794880025 769198174 130470715 27287201 982423031 955000304 643293947 533542526 36842796 184527340 440407478 955296197 21794217 381437658 547788070 940393838 126779746 337088445 243564880 233875238 557255838 321078691 317766291 222374088 915964934 463486604 159839690 429014133 859956829 638675526 836913614 625073601 957821184 377865865 64101320 356015089 870796236 875834685 198807375 565767456 817470149 192821355 929753187 928601658 366732902 268456226 749746104 303998137 643360838 516259099 112492138 354157383 92768292 528526285 478435432 187089724 825385217 631086942 390578491 494778607 724459907 612652414 665814020 716362273 969515531 959632287 810066315 851267901 155497225 445979437 438856129 504069747 589576823 446020880 928678929 343919151 751813083 349041081 972390306 87758197 228846592 48782047 936607446 164040901 14538020 361655151 502279624 160631224 897996609 638262808 170278671 848182090 2399127 33292088 876864110 782440017 794107890 796772642 835628867 979158179 467645848 803186733 262343948 646866904 573258623 340778766 565818454 798009471 938162803 232591372 279476287 279553897 703263783 850570853 432508488 910466324 652944211 494166128 505601693 276910142 764966517 609126441 462444696 650335034 376327235 280625403 93024405 450250975 686778994 162611018 225184958 909488219 408828332 360738584 390699009 507482256 240653759 521606590 325777496 990616461 594411433 220050168 404657284 642583837 288107657 7971695 938643794 771713904 693662900 587192699 175171632 488983796 421718820 332327074 905885937 983304643 405636554 830632719 201196922 543620467 506770899 665983566 469886848 763954387 845059897 834567387 990347063 161606594 214741387 366321190 227777762 709598801 983192545 600021147 594611070 782324643 31698652 302471508 39450917 291280963 897940665 120371166 505204504 540903210 29957239 969922951 483413914 5489479 114990173 395285091 707167165 936770438 61065459 803798479 811818555 597104874 587214649 62752462 800787517 410428980 62498735 793457506 939265647 937891432 926918119 490956032 315479657 104626997 218974453 835473785 256934428 545540763 263168515 423065536 435357267 667385138 186537873 922383023 911498723 300932115 524548430 591582541 3601163 852929111 130726550 157825157 186349056 902810251 527957957 72986506 212854457 415638740 254057486 867607387 561730851 714555588 679582013 393743146 582962382 198819267 439518287 104953803 356448110 171053075 111643632 482615612 321126076 591650876 367500681 884324888 915637581 195429834 763645159 875350048 64711363 326730810 201474063 517042232 210321582 342471157 720684356 982180097 276928085 410599651 552387241 977887891 225079760 771316381 857886847 375895544 365105714 756063208 525248746 223759835 524465231 703828996 563915089 74067105 641564727 913830712 922345997 410999907 819478084 881397982 530703229 225540492 730155511 915751900 37297729 739473426 551784721 452108425 819601127 723672210 8952378 372198520 816241175 537258007 596512 150279535 423608473 505573924 607303818 327436378 533780278 817288846 723328121 877072291 687011173 930775262 717446563 540000854 69365540 105046009 540886967 873875634 243646350 486137965 884238320 895549299 147983654 80575884 17743690 407660577 62811633 642790580 38779163 415545329 498563221 693906162 973401155 689976667 278577264 683690475 195897982 663169896 156494890 854391861 189477320 948514078 232698113 289795208 562315375 718328098 403995117 185857227 528549170 163189545 577923804 314338726 195179414 844797582 420496199 165727957 946647534 637582226 778524682 139563944 114958036 570710646 392974921 753697722 176669878 359509690 253355247 252942249 442806835 765019207 362593310 382596568 259197115 809466135 890666316 858520134 797126547 542272930 683723346 129981020 142450176 925583384 271854083 386839497 329947302 378088233 55461023 954349436 331730768 394560580 216648384 834561358 499604653 564547624 490225604 995475765 340106273 879144516 800259597 565331337 481014975 395544398 748115311 703154659 715146046 713880036 716748413 330835062 760080553 487235324 537636605 935390923 38381491 714910409 539129166 304220534 726154276 64125318 725201562 490564600 100325431 20799382 395672692 449523844 604558490 167829216 260314861 824043288 324271916 956662240 229384140 462319521 256229289 271877518 28392226 562862099 815939093 774105744 539779966 632730424 722192715 210646810 208351794 774766837 594435719 918167106 473320182 366289635 143083663 710976258 849421154 226825435 704064944 719525332 877617108 904115282 378965703 513296226 852222515 683728698 774536660 399443055 419998438 869105023 14878124 1534846 796756409 251259561 616543187 989380677 412881564 394411045 858191220 944757431 103401296 742866640 855751189 247567884 742461387 774191846 639672860 583449899 791155766 620328028 865702218 733154773 45477260 747737001 907359607 980987435 170589855 192347226 549099750 155901199 623872498 399083528 297216609 122095801 123528377 638940780 53608472 243372276 661375233 958850941 359130058 468944483 890346181 561607516 40891379 88355267 354546376 667800963 70306964 786016394 534717449 313056805 736497832 346629954 504507693 769460932 502678303 916721205 255953228 402227178 353037460 846445609 531839309 898910523 309806500 137430873 290336761 657387032 733394049 459257958 379342453 425675001 68973495 611914970 354484549 888863345 68266601 81621568 594819387 677735437 405505365 372474119 669117756 962960884 11260843 287416892 559878325 124526993 69084400 59441658 949215136 190146153 873468548 594174852 248421149 929482139 123781299 611525429 810599971 57779667 980099825 842722864 381414542 847084990 141533943 585556994 426026657 970137747 861721128 191626388 504183147 525366517 418533008 707532900 420377463 451016225 579263057 325340536 467413479 680973345 22174130 192748354 530613351 290090789 911614785 444833980 622266730 604719849 393676463 711447343 613715843 364250935 67613288 644330120 604275233 554590482 199276703 211226021 694976199 410597584 981414444 473392172 39652615 600083612 880911930 540554823 831146454 869487389 916969769 32933711 679371777 995824289 962494568 489147426 858282763 209164061 547643826 403944833 986952321 936303441 545241936 995802902 277043656 856260455 473806052 273342222 635921723 131172336 212232375 128176981 579317620 575799964 584163666 473190189 786844331 580461916 113305094 362785806 569657775 1273500 634526581 353091409 610436248 90744808 451175517 636746519 889847641 833053537 425098707 866016109 303147345 907657348 389262691 658742611 801510360 209491062 389802377 685567774 923118370 272079068 510572768 931341829 142813132 106875914 392576939 802728471 251916724 764614332 433622037 146593172 979182183 338749836 926808626 432870220 944957437 824111034 935040821 837488032 436247820 467998767 314655380 333289112 698023845 733780292 202583530 723043896 617857830 441566297 887214505 566985435 33588034 186638874 317935764 776294121 13537809 793516404 355416541 762406019 168956589 8912555 748009444 919511622 953388446 640300108 668607763 183734136 141217837 521235266 524510649 79135793 251312196 227172969 697984772 698705483 193089065 972991481 118995004 777011309 473679095 493815832 468699946 248527082 976329804 464548311 802686226 881744316 814244778 638115110 146369762 553766313 487493542 527882136 363669931 343883192 874062014 481052955 167868367 758883545 656395203 448665093 50150154 740693101 479338349 603159535 928485158 928832822 195938199 467848161 624803848 232256968 890217074 2268038 444800774 24347550 5630877 207550580 126914266 54754838 499933758 926399278 939961288 177766169 738933230 558996185 493636054 560415156 988434287 327940199 517268252 646019177 924349959 921290914 15312187 165318430 872000387 59537321 29137946 259071890 209292712 436700466 974300956 816843700 170216597 674758660 918504165 885232670 864737366 813674849 208692181 379185755 952560585 898307645 689411228 949998726 880809311 53877161 871410865 735562432 200378928 215581338 584898559 517195706 208139527 615105200 314610063 758835473 271289783 233475988 235369444 699020272 872362724 772014504 582423314 298118703 63085474 572361291 650225703 583042095 601187404 329283388 503625344 32220941 725144107 61478345 676352177 903827695 527747889 104802316 582825240 933466202 253915986 308186361 498700357 369581070 626460415 679338341 82789226 539374314 410723882 566480357 787124874 836986487 472423353 54134806 252648441 93613147 697070343 929958434 928189631 545638691 261038102 684550315 731543163 769099556 133683917 579192356 773869825 798813222 506397998 800397 559195563 244829268 890407888 814106452 252266931 107915722 635897082 518498077 997076704 301874172 358762822 323443903 793819465 451971591 567509383 935916503 60121089 147196199 834419785 120226433 373884075 254458123 195654190 749942115 303852567 291634656 156336026 944181634 341800203 390709173 790428183 397445186 695582796 431580042 445366920 152783942 17715352 712483520 891727397 821028061 968761117 10135702 237297058 357702416 988771519 659294104 929411566 699188625 542652264 176704632 968507671 496525303 76305798 604708706 879410520 315253345 314599373 766210689 912413050 932110379 478991151 344109536 669642544 673492101 676612640 91339242 664786687 360859388 683085399 20703861 867205831 226604424 465114072 8024711 834001662 845261932 671502992 161650168 279510126 267350725 86791 247627189 288822434 359316605 708933828 616222634 590274699 267882580 948222704 945422463 799729180 292097454 78441538 574070454 440736603 686378194 121739001 751689693 561312335 507019409 806077992 93379719 167857323 727205580 101456175 168111837 340331823 280316297 881291794 340870810 44954027 644823194 103486587 864370964 355227558 951121532 316676869 815512548 384465318 596228495 436507693 532729917 694738998 777420755 861736717 388049590 360503009 240386552 432049700 40927888 890628646 817737568 160621047 216776775 576818720 674469310 298435679 86234807 556990537 55305857 572226856 61710004 16699591 344234934 763881973 220297811 455383158 615864348 927368108 392407140 788356138 119006797 994555629 372079182 631522580 643617940 753876814 225046693 903246474 20409640 614810753 679705113 906416145 179243582 92124830 727720998 71710677 172168138 939313261 372795584 64402860 291351126 289850339 222073932 202428933 899903541 96638942 939407779 617645359 615773431 777621672 968452518 738215137 227114688 448059263 875452211 961558900 668544028 480381431 257417615 347946193 312491970 994130590 175436317 689160793 687646826 452876761 775232408 923094468 108985320 270961382 390776771 49897542 755308993 562107573 509337324 279849646 257363992 939585254 442895470 140549094 753713844 323025440 460886427 665345511 652257289 845211425 775187623 116862651 77743243 497479261 630469881 947747743 119496411 329915078 395347189 42272981 148145432 885236396 233411989 984381835 215396069 399200814 834076406 886541480 932232911 518783156 970137773 662393336 824716317 459102338 251824407 440366292 657535750 325832967 818603929 447068561 236978793 786713143 561087915 30886757 911763124 240085773 626170111 795614212 918444450 478565796 192460287 467599407 926293391 735609892 948684514 925577185 431917859 381543734 124739658 156195677 771988014 463508813 45318793 604169332 766350055 500921631 488575319 709081359 867733600 256749494 770728270 39725750 163055181 698708333 70422549 169538098 480918697 545592498 502203638 380403019 258303849 42212110 645487475 894145446 369878133 607195420 899733783 187650776 483688736 50460806 476915835 421967048 707974439 903475156 831996811 906614021 346239947 600760822 130876699 817721106 342802493 298488919 925164117 208753152 459547597 816330811 863045355 900652199 813244506 383060961 258503096 398929168 354623924 175161913 646955828 502516157 550865153 102600764 839428276 306201099 945605654 571525678 78850256 177224594 118256774 718029239 816184661 494706440 726468886 240971733 602792476 660370615 523061475 797675839 360172886 151010 32235490 431492659 286163642 396551884 462674088 125369157 96203383 321578036 611618035 922160835 984424476 325434613 679052906 752212923 141965354 132319255 57760746 907430384 502169901 12089830 722374786 733144681 356745721 789598634 536554467 289740351 848916842 806342427 674484754 973601870 618739863 243794491 907945881 360537334 12432120 164881667 436349064 171337821 393668433 261901304 275831125 251808001 617693516 541423389 874257221 800261948 872969013 876947631 453040260 568391416 281495407 855317920 790091622 945415733 529292861 721619868 812834300 639296828 94918158 77833571 105802181 286591179 303547016 537245671 957908810 356540615 555374446 111302204 989850421 940871758 62129418 107850689 597232471 80750119 733892056 839147469 163490649 199027139 926774435 48598059 779307946 887308424 376677646 140145736 869308716 85731814 819682136 873967720 971146872 871998089 791415401 817661684 308968662 501081836 374829474 868679684 582679361 235040001 256650248 435704156 209106173 883858397 188640145 4538215 142032439 584177258 162350640 156337799 734664293 64878043 710475053 945839328 245254798 834898907 422545781 127658704 960247036 842427067 667093284 923284484 996662355 87400414 158062908 80341342 311317554 953246453 909640037 498689266 107016559 419912427 519588927 562163520 837097459 159418914 45886520 38445104 430906767 532932008 385220968 635806480 347344862 154617355 584403395 828458412 9141757 748473422 643485356 369898235 304186663 519457525 974611798 945172123 783394048 229636950 35468004 905503667 188606415 278363430 674647278 60568713 757829054 772917385 382433599 601177559 668296106 913688330 535355251 252931298 291557051 533298698 478214496 95716293 650747513 376617051 556853715 301878913 998390082 720000974 468770861 791425854 596728076 180726866 436492816 346559347 536313686 872004028 226291170 411885313 809746201 593142255 626750395 268049465 149645423 211893229 322830083 90550867 47741087 98002561 473635136 448466060 85497553 720027665 342305260 9868864 69790913 14559516 793864778 549619846 827002979 922370583 149500211 487966938 623725998 759573422 253371731 133407812 465239396 100610925 730927634 606117346 138726685 261861177 999714515 106889396 312754823 595033632 989124821 278437033 449827263 746895610 153931061 275635531 286484275 194583616 626605148 277540958 481538229 407776515 535205563 776904824 755192525 387812270 425789899 610014705 92507680 294142843 601528724 492676481 531282999 804230854 718778125 756255097 315685615 473005313 487440003 800887315 985193576 453137734 386256410 629041448 487390886 73264401 614516662 679571733 113901527 244823668 830060988 433456929 778266887 825994894 649324528 273584372 492103830 140535438 594458221 528174916 726443115 425289154 623192213 372092649 955196613 297335391 303121696 206221210 366753717 952010709 420960076 878978061 328505260 637392732 399134763 675719707 665601885 77365981 773543395 862546131 162147522 535359732 808656045 608429007 933051167 987404414 63941880 1583789 521702779 665894213 969870863 25330674 727254616 215274855 722941166 571725861 760746807 301352296 574812759 857492041 834269799 176656590 458530485 757120089 45599848 757519258 14683809 323998610 276926078 369978264 351473324 207930019 474857125 809709013 669490923 250682530 206940966 950086282 890983594 149730071 688728651 895259932 20087759 250463606 290893978 771623476 802652119 548922647 959505546 42235608 234546916 706042352 557198039 344243477 516938431 887674769 880354644 62929496 765198779 320544986 576938697 333674773 204299984 114622326 393209583 476753094 176368870 61995453 673075628 202441625 86736855 18517791 925876409 402587427 236806474 16536473 699298306 463011991 929689169 338746527 320007874 475992866 227819886 906026518 327918720 66599308 170249319 615887268 592536238 843639683 573941014 527306005 780243109 843592801 916468970 812738313 493625921 744905341 537251217 167444026 621068599 678209907 312036525 488408431 702490070 680244033 143128552 185669621 788659463 445885539 334555214 928652087 366461444 996793648 679567978 7907470 649824794 354203838 322732807 845896508 81251390 726504484 954952311 621369653 593937230 558265546 340664500 796437225 102213889 575620028 998374980 963796695 982460603 328948783 128319410 596234411 118785890 176274336 592781032 68698977 914134729 97778828 588314628 319332590 908922487 796560404 67564609 216966011 208624153 475386741 666904096 621357407 596684412 766039522 878794060 350563684 427341586 580678112 954848826 574012421 319183109 391918418 494459202 702964170 254311402 611655768 801430073 253431048 894734332 100892277 872033648 251741692 562545985 58922415 692999167 436267067 271175243 508619134 745787364 34751030 842967411 55772216 260206683 263913465 404187882 524071746 261182964 828770655 19617605 275417123 52929391 662393266 490358381 94708042 233151148 777119255 897880051 241936846 596534444 474511034 900859721 356823375 24075321 243534742 275686611 934879148 460412623 703346754 205084720 17776349 351157248 45688922 960151102 414723747 72011694 756900283 996406824 856852845 223281555 588514297 627751049 989702194 263145101 313493660 674325953 507857137 746615910 891507698 275091928 259336142 614102442 321097980 739142533 845580524 873287690 327576364 479349864 364737893 310742534 452821622 515861004 242442270 589030701 848190202 939091121 613493145 813942875 994135049 468742122 51030162 558488709 742642088 898051910 990940054 272434699 773712377 760634961 328464768 264330433 469766839 774908221 696923940 105632755 294810694 963617531 755782413 971381800 433791341 947823080 713893189 639693789 101766539 426655269 323780633 600061134 676787959 115194869 265404566 231253872 32788958 446316693 353679985 255785163 196787248 799772776 891577324 911045437 10546778 825287149 43722049 877341680 921011719 101893183 357358097 672589634 295484833 535837015 532932509 442467177 456401698 906083629 919908586 813229222 421791778 673527946 200263727 239648300 896641185 835324020 273943965 571547419 461941196 602871564 481501641 112955237 821019317 309318614 555793870 927529583 689186279 407346435 96047811 297022056 457991749 922011199 887069403 252932881 297067991 894161374 323621069 340603592 120704751 111254749 397450687 898125834 286787449 316005994 691076536 379671783 188362712 995158204 692960672 67167252 39676215 88498922 194204831 846056570 821861852 309514179 106477591 968011051 975987715 666419462 51633109 241950308 817164873 313842195 873719460 22775869 132763487 318140540 601886109 983342117 858960249 165675921 12584084 155008443 862340543 923442768 399881806 858020610 444957754 748179657 941765005 180535282 340366778 231680887 333751614 72282801 836510277 796740236 876567979 753715549 750528546 929137351 370048282 393111867 840759587 98522250 148264355 240036068 249839548 86787660 583435116 531338503 942405417 198171266 177643458 890775621 698012610 615711093 437925704 200138620 192392564 321136430 642215407 363901555 252870079 258960630 732805606 703993486 955324830 159702015 796879182 728916647 819133824 231120017 121666873 89228677 348287896 629796587 718113141 276349701 750099669 344439726 960808889 208646906 595271032 972231620 711722830 249554392 709125515 788851558 537339374 666519048 911301857 995314142 71085514 776656353 153022013 679112761 619069032 342723703 986909191 553732977 671029229 162214928 559216231 35266571 853114106 411391945 950607705 479661823 55169839 425324693 347769165 552476713 114824052 809161023 153475943 401449615 34719086 964747146 951684492 853163905 830099239 213867481 765256614 46040712 109302077 247651902 430409618 357507884 929219631 502149360 707354155 146120195 173113748 871696661 586155575 320502844 877754736 16479259 375311294 600537265 680956463 672480906 539744353 739616647 356083868 746331599 330152847 692389075 910412930 253483142 181433106 759212985 968423809 901379134 78890088 861678795 361363050 897323207 963041213 878192877 581059926 844641111 573351656 374830484 676609657 243755847 141613843 701252499 602143274 638439023 36613739 880134997 296477235 439802134 423537417 302567158 539909408 742310146 907846750 982481574 6096826 276465370 469438183 65486446 773461418 156752595 784848308 375523118 156067171 694337515 6248603 935646949 499021908 439685527 847343523 893833936 745908938 621602592 313851323 964252266 265281070 94049587 68320462 512745086 695567843 998830307 838547305 443685769 815108034 945218912 9529701 376705447 483453513 589627316 707985107 754135995 888545397 612485438 970915516 779851751 517181076 947867594 906210736 229887504 177850798 18010509 37912302 499310142 514106099 918724120 528533303 888881166 458111718 629788426 43909217 814839302 122841388 136824072 899264284 886449314 649916309 603553167 336871256 893528175 983745057 590710876 827095265 448273883 597632084 890308803 677677512 219411137 998702078 91425923 472040163 963900065 299908440 162033860 137359600 131946632 382944173 120322457 215695998 659174633 408702325 787169401 40490432 18452073 365017277 52286233 477349019 397172162 212809741 641413085 988054123 746921880 350400759 621582415 457164882 473862957 180359978 392608288 3470362 822292116 127448569 493757300 850101828 598285708 219574126 651219112 934646520 872335830 596103777 456718263 135075284 799583967 477059239 35702785 339483063 462139827 637131610 244637710 408378183 70602839 282186596 481617015 528979820 825941468 287772707 181527311 75273141 158304922 246758387 526509927 943584909 434117859 962224510 386755054 593001767 739370233 105063770 625940298 929171547 587129308 740415278 361508913 860926930 796921213 297853943 676323960 944194764 479158077 884947338 795377180 246195172 776276108 415610371 95583605 124033906 38192971 989883341 503450961 429072707 549636938 896353134 105868866 387455140 435137563 464852314 729436548 616321202 546534610 12623866 778967663 451521668 747693454 296967943 389891255 789469927 153382185 48815417 490116927 59662373 962872559 614210853 833999463 716211875 676461226 560739770 961456528 310084347 792600478 874904731 701128349 821104097 781481722 358527647 423531842 555135533 457757439 380558307 102886820 687173200 443048124 243550746 699718626 587383619 761594286 855973329 99173613 443930625 251742426 546501652 668860480 193534901 668010562 369826214 406797506 224996395 651172396 265916847 444996850 769052534 958423682 519420731 808176978 383217383 935657124 848447927 191672114 300531453 713378760 97457498 806763391 710900263 634972192 814847836 894161511 713585442 89084560 369676551 316040417 467531425 151644 86846865 259021225 505727646 825529702 896139651 835052140 81954708 856944674 114494906 113795292 75011431 874693621 209014339 838799229 889579274 434403928 880176204 738670836 9599086 273914380 540778805 786211164 133709376 865057926 941646605 809392312 591141556 578418714 403115 172845835 376647942 674871481 535700696 764980618 660927634 490094599 226727052 262436348 454607611 980685314 470936600 267403638 405047865 585398495 881346736 402276094 312055960 532771843 609139886 523709719 891944457 169965384 868011634 303612004 991705591 408819792 410602422 943177362 474995998 753405928 675316993 350813576 577119663 422088465 184065696 134765448 803850649 854335564 347180863 973833267 97784872 829128457 125628331 283786525 51846995 430708449 656936343 637533856 285482198 512095805 207297293 902098453 946995050 584087406 692920026 399687349 695073511 323182189 949940229 75824605 508681286 722991831 497135249 108626739 497147356 198322309 284499290 592456700 660029203 333397006 315121146 499484142 749993683 853689754 121352215 961884783 992170406 308251968 394204185 162765717 163698231 131773680 484280071 974147836 75090050 248075073 670753358 220724993 208683127 241742717 27546147 632869611 451946899 347780043 205047359 477420694 937463654 207521392 288887242 353520900 238912592 422184307 795272466 624917319 844242808 142027243 98062713 918835254 227131637 470241387 253627929 957462343 529295525 479786886 265723694 422849146 343787152 72939191 719798969 115572610 253114580 247438958 939220975 896443260 301809369 110878926 971125166 968122976 510406572 491825366 669129545 920762794 621959817 57804786 216419162 642528974 161240109 511999668 815539276 124002984 572132736 388092930 308514824 586721676 128457257 468632405 643905896 820480056 680578004 744966628 346604816 753310541 987457546 714581360 378963343 287647240 134286474 546071139 917860794 906914269 794066744 784350197 367601926 830953364 847123395 31683952 415087981 889245104 793786387 854102896 745470459 627028522 914311736 457953794 121111480 670755360 561356088 527315871 104019766 710192269 249240659 271507753 944919118 634163608 631573164 563949048 341465558 743828463 837029662 743863556 478228749 766398319 205809838 323450743 981477785 953011556 430502252 800501642 292326815 864047050 829304804 859764767 232096090 281507623 170694375 329239112 790260417 992739928 27105671 205406254 694111951 151484875 387067625 121303493 983469160 666564592 849634856 663803696 793958689 960360147 17913747 947407332 603239942 500157906 301309598 360325838 119068263 846707721 413342001 242903430 82105980 211989988 625787621 231748115 49389961 789688504 316152776 845121571 665151867 508237712 331066471 30667410 356158756 352265972 384322781 346399107 427475997 716444806 517499690 905843932 715806320 57028453 23955895 610495571 568889449 712721679 847698720 728685125 33426129 189830055 576845453 120557240 123453563 578859881 976631159 453235108 919597295 130476191 715937978 528406169 569175547 7179396 962821660 784051381 371561401 930662973 971817449 192430738 129358048 779250632 720607540 476433087 608343452 118110731 246186566 735035643 156339191 128556993 149915369 370595163 1576755 650109223 553452709 831777022 533692872 881848005 540902964 940550632 412894473 119991587 514645252 133926650 948763031 209800273 746186902 272229710 87258706 569337476 674807186 739461581 905398396 715211108 173090330 33857460 861662043 186352210 689458429 575756280 685499348 564294365 886578057 974903639 984803436 535733612 22602886 93162523 230013457 113254127 18726446 419268229 327109301 222748414 742407584 437817366 810590407 305303056 206833652 156932645 724586593 36151454 13551254 372076223 340013359 675439562 361098235 476536665 188916105 511080202 25915390 730033925 384317667 190343481 203730565 795202571 748728726 882209141 675471311 990091402 91948301 664351153 930261246 895379681 556486295 42973727 499851311 829678539 565058577 487100004 434141169 248121581 93133669 547126734 247976830 911956106 445683407 392076550 68666849 840533401 16317206 752336428 928860489 329075660 639564876 503084418 885177190 168151562 527164253 39878111 620084013 81869325 5076560 247172003 737234571 773194000 407000112 637544184 595924333 170509579 115364455 9603305 531785291 160208971 887883987 924503181 912425932 48308712 726590667 361269394 859936792 111726171 580168954 57455752 750061670 59682339 86122649 410985120 500083366 378480865 513616162 752639891 396818155 129289007 65843263 498227854 148553035 155001329 446761504 467420287 861870661 562351696 254858170 415815954 655254354 412634583 880060260 184089190 466165024 257945927 758972527 255564615 901492414 825602418 638367339 959549285 614211632 656015345 245799529 507223683 709495551 957161453 468706629 146564545 576818668 682565737 754913246 828055296 190479895 138232883 769714655 28233778 480440005 130274940 723559335 900774687 717126920 752816799 715812451 604165479 730937787 940161570 733638611 577444289 903464754 719310788 4264321 972856014 845095216 635795360 647511498 963013809 23569951 913561058 62715868 967836851 511323932 280407000 603395704 690112436 885606865 995610155 992731887 244453498 794021309 149878176 616394449 289069028 897464210 467367583 676692516 425847628 546592270 495777466 858597214 356258117 335375996 663999581 455690532 602295037 834539369 631081528 994689049 828353490 652798708 311138512 635528994 692261857 159107314 798000558 623615665 219318406 484432541 417126477 74729261 137738593 43975792 251898730 990167493 140518884 894908422 432574362 186212040 721401132 364150359 397134286 96399009 457977077 962457033 859407972 211333043 933337485 396616728 687579571 189573836 527842415 772845270 909632575 215484512 149197634 224371019 97107432 648915439 839816456 455514250 995920914 332098807 201339282 909401071 1062426 179461504 171534872 64427726 780258286 524207425 255585634 456761956 295597885 569740969 135267587 261016720 415179008 156339959 980332128 723726604 126533910 966895440 502089069 481076512 825355233 704830468 449947040 258371754 564202063 704249019 156866878 237716269 143298479 167822438 665028947 347045757 763011783 485908498 995113333 558856385 760801678 692891226 820849955 967588275 762244210 199434019 889117829 790725932 760716730 466496859 27112352 15259820 271197376 330874221 613616931 795482347 517794346 997676295 133602813 225953803 937834539 849182999 68848098 104486732 870767726 437536626 100055621 609477765 570286508 920560385 643387310 42829620 346366009 156511357 330900026 854073582 660097218 471982216 674641937 748692397 289443111 147841217 574838248 312392369 178711057 245605662 936324963 160620767 967287445 633356031 441420439 496578292 997694127 439807961 429818291 461691704 591765936 894364894 810610411 343737617 747208871 762667246 114458302 658411542 455305212 772603941 248730130 891300268 725681159 173975192 661118064 854595151 835924892 430758954 801155758 561030178 219411722 31429726 409062328 769844387 486085562 83233729 644200621 393805964 67890221 35312644 720743428 778505094 34798319 875987765 308429851 98071863 416336593 679182044 268602303 839093962 318302658 177629082 253198297 862359226 512529672 413813919 5585791 557714033 900716850 193753865 328325608 971648748 403984265 163577063 696423278 541561276 319019184 348371177 931815614 484419852 807854271 82935956 209607321 189383445 769280172 541703104 279578643 28676787 558022475 604076155 119681217 285225923 817904087 661854221 559080253 870686730 477898453 98777139 510104999 291294226 274044432 858882085 346077939 368111252 997515727 481849902 755885970 285599873 885225365 976549681 278569257 692231491 551918279 959099886 99379427 914027756 465692417 408608831 115325562 623921204 500662729 668547802 1865487 384170230 705362202 461142587 541328829 944048290 56316737 570894603 920984114 949311491 203812916 62833743 163605531 970611985 899588910 717897800 749289010 665524905 574875528 557169832 526178764 16555534 896729866 215222593 318189568 261891774 576480723 557095933 14551932 727349561 572692781 345127040 505598702 134981347 880598352 221548889 376052625 592486438 336290963 993659067 696623022 780189899 704945687 479075160 93744477 157223198 979407056 306825904 974322905 961717464 579806509 739039014 440282058 112151211 158433996 63392792 660530701 718859030 205266910 473238640 417708562 460675736 245830462 587319017 253564761 272943881 186593368 682237267 746730160 966682513 467138492 168154176 292807627 641014417 435443890 142250880 762305549 74832191 340783820 446583999 449568464 855743242 131550309 71207474 334955581 124943560 597350950 556609937 811042363 960295270 833125936 394487876 241183028 275748227 941569690 645847421 906071831 258545230 411443897 542812600 188396100 267167436 344873695 696172475 512960018 579438018 808484975 985033714 703392240 258078832 287637807 602613706 706504898 831269230 939628273 610822037 439176021 799511754 789536522 748910543 184907875 142250213 521380048 928841737 773092587 977969016 739651085 92199072 721515957 37123181 669968386 292249691 379204891 683810443 398556646 762210507 615994619 986701740 362012328 372895728 79603459 33313960 888019454 901368713 114903671 490551148 426399414 706381533 782078206 212380041 463994462 30344996 101843234 84403384 631476461 878311017 4701225 151486129 158194888 253372094 834136380 433066769 651487819 392787317 268454558 18227445 37381476 227933758 836233818 609369451 266960827 290211556 130802862 986632438 224750446 951232094 705036214 178489988 255234734 430791548 177614873 747707370 554209458 109231739 412829530 823445958 304885132 609241695 910270126 696617955 450821380 876166109 149743256 279006212 963341495 345345947 950148399 826562475 85541454 851628084 282912388 775019851 138463239 323487644 736023407 489221594 830454428 293858682 67300276 26393270 306329556 5036039 810779278 882275762 623603915 241673877 333821397 588354330 396680929 996293124 736803524 487019663 95349138 130380416 98246602 729949393 263143824 173093183 509998757 603757772 461487397 987840624 271786583 421367402 747951041 552625737 347703152 795734908 650700485 697932178 66136133 540050665 606476066 868478569 893156224 978681962 79838129 321141681 375246017 6486010 572426850 326318377 554768946 886721897 449469946 566010108 569563773 121300026 823755943 780944744 320528135 411442594 767742812 353375522 559993001 326376343 344998443 527039520 986126023 19423832 178745636 343247729 690543363 913480792 232552761 394010613 435478795 452364787 247077179 547667371 154641985 237328880 579777995 188601508 751816688 114259894 482522838 732317857 455405869 269580301 587234946 828992839 961996620 495873366 879463290 633546796 601152606 445431656 527167155 231400699 890490377 115321389 736441741 428070441 995570882 24748694 7249922 228475646 616124727 457364177 260474700 199264140 342194181 8963789 58043747 600619856 903026545 723224505 67909278 856536620 739043899 864950067 460350447 585726182 323647953 175777090 449326390 683087917 156408409 429365653 184333955 926654198 870872449 431974147 706009913 344499897 775461586 877166214 831695514 450774023 212892998 819945077 105082086 167112957 907018857 778966510 473215987 523456118 722202694 3792412 664924986 830918716 754060562 312298925 887531162 162591742 467912697 92007818 223131896 68686671 974850334 812274953 345553409 923574328 615900151 887797160 254556145 289713664 363404518 848664819 199512590 142950326 287957146 81103592 13427418 368924209 877943428 860434081 876099947 296093860 92918410 592826061 614290958 447652573 290562005 638616874 419838369 364806649 159748989 607959290 98668067 21987333 349834143 283962370 337318895 635436088 626176033 770504480 981118944 946693329 146657741 870752720 179324608 279789761 567760860 322732440 776588326 435952166 626722563 154093220 591323844 819643480 909280959 718742922 734390078 173073390 313152107 817318049 890796493 47455616 971843673 99477564 666022021 737115286 419165789 518678325 913152005 15938170 813066481 425853072 973387027 629706579 211626021 524564379 942652620 728699400 402690858 419818350 553814382 394471055 405324081 870566648 850447219 887945792 355803814 785925965 635908601 759209405 101022642 533136055 963399476 373392098 918537228 679349530 776274084 893771224 962957994 500098701 651286179 186060896 970445756 991602307 366777425 273898934 726892383 90784144 658854001 188003539 507015275 698710641 926129250 700900707 825805051 140600906 6213373 676963530 104225554 885780374 95732649 739431528 501097557 114970301 414922617 876150107 79437823 932484197 911925860 516992607 189691432 540755423 305513418 653838716 260738310 338231406 764390619 727897300 146239328 33406543 930396071 716755275 735004833 795255898 935171893 93397680 550452904 650274335 524232162 337229957 142342489 25992636 581389105 644314824 454290654 550326932 916167741 621767541 2946692 321726594 854386451 997472686 720152799 454650154 48210724 493914796 977540012 661554960 619441452 915718107 107474556 220915366 782722973 69506440 679883834 785195515 314596626 625032595 301608785 866631692 816806899 938007428 807069279 10589556 363163944 604114003 965340680 562665624 11078133 624978843 550545273 72309784 332254042 206636362 923626764 257624000 551454071 220118311 728903076 662853872 129262298 410117660 160232216 397826556 399833646 154836079 584880600 827481756 724384883 924364815 310994658 316433156 376923923 114712689 689051986 447655752 36248053 496788325 367575031 242544130 666233247 825293961 520949056 873792930 184732565 744008415 867437845 569989394 554966129 914932307 900477957 281134150 783703597 694134180 819410862 729278933 21509524 553107115 854834014 277435363 767357357 93460525 304641649 683815641 807692520 525903771 981034416 574740998 485538054 10627927 927397745 383675219 554012921 771518117 365131036 394124921 473480981 645111656 178380590 836196700 600529607 635935035 269056904 419555182 861768644 656550038 287861959 715887782 976909281 67931392 668594985 893065912 344227783 541724661 742327162 680727742 115998197 11972533 375583850 492179591 327586546 276287120 143751590 973851410 41514144 972092451 674459904 614115778 730584296 485529586 327775729 48281790 287292967 394051066 325788495 65433909 671381315 455180643 518508841 927801339 819619410 955711938 316846353 111062410 314174154 211949374 288693757 996629727 63124510 894234343 823456138 929450883 539013614 521776262 259402454 981107609 172448639 820326722 886024625 520411343 270688703 970779994 330017951 739887131 272339297 994201002 378275872 537012096 286310458 87368139 134875000 498100498 815438513 265955000 102737963 137778182 660124189 898259473 856014179 643938554 631886749 641263003 999541656 93706445 239517586 981436578 345745283 342632942 284656973 959892288 562052281 387146963 800373297 989296111 905126656 249282393 28112741 282080572 790657064 272623452 854419448 102887408 780871517 920250192 399972914 793417327 378097131 63410767 643490899 946171340 851063864 177899567 351433795 807519739 236436004 182248065 270445103 323237192 755992442 442587219 392436120 817042441 504173330 31360660 784552018 669386499 647088080 575860546 282647281 653818078 859365092 286312838 919709063 844983712 699287134 912014060 566494399 575962315 765962 993542157 884478639 949395042 491534176 417709412 152699986 153841814 653403796 566499634 405634441 873184304 420685201 653672004 681247740 564692424 564768432 154376347 816152556 946929866 176646155 10567008 305693818 457908553 190896801 936125459 655320178 573840136 193559385 528449526 247656747 691606605 21826052 399051533 907913497 303099235 704373480 780174413 346954469 572339715 837125354 345161237 149765945 859989774 89607616 243914001 595811369 623847291 831860055 927491841 635647922 453574593 986516713 663910604 413182871 383557349 226384510 689199996 385098965 553775301 738495780 25916770 262041712 22038013 629465501 370860351 890403448 801007260 91417129 271868486 509704581 866787173 984117853 433390686 517309261 409527524 699161051 97578519 62478834 416497992 555289102 736869640 429191150 182353574 780099941 807607692 451961692 322571492 631956013 967688616 879910756 776834449 692308749 712865524 409782374 323383936 881373056 487539777 95241083 704324144 574251776 921735130 706982493 750498934 497840039 468451248 834659862 332101799 191317877 102205940 73238679 240669059 564956981 927664038 23249801 790692627 697973656 281800325 448075281 705486706 474701507 977206559 194201007 893331945 691939565 171448912 754941770 504740249 469391455 332301810 653618281 801819640 773909427 563981555 873925219 962426203 931127972 592045503 38911592 181439421 248127852 691450786 740292998 616914593 50071618 860114527 845996579 559480846 678062802 287589652 494800463 810216579 892496327 597019014 795420466 948858951 163385232 389449007 972819628 541084902 444368475 670934091 361924523 341431904 228802035 504810237 82787896 306220374 61906837 967963919 273246317 907987918 825292288 758495890 662985710 93655821 653230941 927297777 626057292 175746838 927154769 992336629 709643783 500491357 94454068 490691976 256389995 695367211 285739993 774745536 477946769 382656560 505297142 2589367 168243233 905814240 690131744 404589050 384157604 382230568 312334476 193762617 204689488 251647549 182773705 374998593 614274721 134099601 626616194 4517728 375026468 941607785 192450903 157455653 683317507 366735844 775234227 16020993 270837467 655280627 513059835 259913759 871446193 888896310 825832956 789235116 824757012 761323048 143678706 176968140 429990088 871265273 10580593 638236265 441631205 856624975 964921485 453424403 225639035 654763110 369855583 435158731 682547455 702816200 345553196 237510189 851342122 965879432 570611448 489924155 965403323 939024164 721305162 257147774 405621230 461854996 110106607 667294699 280902115 710056022 340832803 600470146 590896997 568843304 88992988 515817504 303802501 93687757 369045523 536191642 463371007 963303246 975998414 209421656 128311234 5328543 972691618 816228295 701389279 496238412 558930712 137154207 716972846 556443003 857546918 332281081 286135002 531568006 668534843 764336018 25575473 139988872 74525059 885905996 176283854 554730583 294129714 676867504 18345698 8231763 925299742 36396865 716604193 768896602 809098790 634125501 170790605 950573104 289115309 295016194 47481159 995756358 517929705 51481929 756607610 633415599 509922787 174357215 428448724 671004507 273579036 417991027 547854284 967099943 328919482 597676367 416923459 251715020 915897433 181000242 687387140 826636697 427530726 22166470 568473700 813799243 408418745 879993130 505761628 92586369 908306798 886540299 596745020 988665920 857003763 458457160 192062150 992071365 291054235 711193738 830845642 491802406 407835171 595204807 623061616 618270955 157411378 924023206 447053838 132617177 32622808 21301204 20093577 9763993 384280268 391421851 498013540 232200372 147405746 162845212 248102842 238246436 402681667 355998527 561137540 879734989 876840909 470159835 564668051 771549221 317399930 471442084 963973842 827109424 419880013 47715417 185151951 197452573 21005371 401384586 399330500 941140401 984027687 192362546 14157690 24583881 67693571 202715204 346629467 186461894 54309971 931725424 405289384 833466647 179585265 354491941 687184139 266009725 118415540 228253951 479839843 710593035 219097107 979358575 239196217 834405337 641330338 250180511 322261532 78821468 892330447 215139622 170878101 347781110 49219584 733675399 215967460 499109920 400632128 165664333 458453557 800373377 604687605 806063987 462974981 501629548 611703283 18320451 652188325 485728031 130212995 119770252 497796219 692083918 565970375 746063061 55800563 718319597 578700887 185503833 978135987 863395754 604930868 332914743 790760245 502056939 194499642 258797277 791866347 479106059 864481743 417105431 584667919 342333671 32113554 377226860 410462884 539227126 605539330 502488325 632721317 490700909 164275009 488848983 724856434 507220416 365095817 611297803 731181046 914500438 711981847 470369886 714890801 721742050 797702055 504334900 292634120 383525666 268522534 173931701 261000100 644557682 847389297 873223436 821436414 433817014 232592823 958961719 224894013 536656217 437503745 866124321 159121358 960419298 881954488 845600484 821831575 367344300 553316711 680394613 203310206 680989015 313156432 414035319 850241752 284968712 1438129 680924144 653973407 905684937 801763425 844806821 95113887 853803054 708096180 776463266 626152308 435355053 39391965 707304154 879883917 412374196 403225801 787716128 842529696 489668176 83975447 43051750 952659223 959751052 483887158 190593546 852551491 407289867 542641154 773798683 821956868 413023755 454642660 146852073 216758517 237187540 55497341 589534232 984798671 226873014 877612230 104092274 92678241 279674907 51363157 496297789 639467147 773146577 748981103 102584921 497935889 388187483 903197422 692909417 141416996 188879300 338494116 852279052 643980008 960398715 350231730 936109470 405301040 95198778 618616428 200302769 32009549 785771197 936491928 971585671 45327216 978970032 857068511 338382831 669476769 991775911 888683918 917635988 825079346 719118994 321603474 649102122 772437329 640238408 445902222 386283843 566218368 268614632 90430664 588816723 658558072 187670230 730712432 480470921 880713560 436875211 357023091 422668661 638260778 762837482 724015120 608721144 73193896 500416337 601035200 994306908 397838683 558127364 597097526 207574106 44319776 645764219 477011418 950518317 443633917 63760418 230548369 72131552 433070603 727530973 766496188 632086205 630822481 789225674 53776076 936374141 364465554 10530148 944249854 168311885 788276646 948512137 696644219 347434921 687328569 658132140 485338068 59370211 990593919 153599100 369093264 995230652 789175089 912527581 50514942 717642120 124710977 183714229 786794056 374034487 914228194 749806009 318707977 999862926 280794696 431885769 403269901 610750166 836943303 414545352 344594598 193585639 144804445 787509596 412325111 89285425 12036294 158213700 196067367 538094565 913348971 76398890 320810385 129339642 24056659 561562354 568447745 767876429 556578848 913994374 223105299 387775349 482248031 456883572 743453310 964948495 781021910 629969300 931462249 474263620 431805777 715177077 341541048 614163469 35639579 693712188 952342568 392057983 267745730 762647492 159034153 828827224 606859204 862619518 690164729 472131825 526482754 929507401 492669980 306183755 740082585 722256624 81169294 177037987 228725266 709951420 659594183 241776896 313396467 865112393 441027669 394142138 958128182 566271386 656309798 285087848 454859912 521366159 710424917 260658700 230693086 992482043 591292160 97881814 316216013 547644613 589710331 283791367 830434365 994947487 431325611 773840724 459592780 731111725 32423836 810624784 434435454 701686814 658163226 87592130 647678301 846966365 191534397 624377943 968181157 219207860 274388001 935011664 185800427 510132446 600095651 422332163 134950060 915611810 898068271 934172880 910339459 293635611 395340610 629066398 95485025 290584735 13856131 213917685 301532493 578686183 332579965 792443549 776003808 748186949 697197667 897269344 225626552 324875498 386801234 956013104 715727557 859878543 480603136 801767606 326726530 183662210 580945679 771902495 44253168 140054788 865479648 473311577 974493373 165283980 588160839 616980693 184287502 779353393 573128729 194121617 895492684 943141786 988175710 138701645 365902046 163536203 797059733 611147867 25121265 600542648 769541066 819313901 386044217 409041444 796047707 331441542 166736923 736595643 392226275 87010328 263425188 932013663 791286051 431377689 261938003 890093168 437263792 104880774 278002554 609737851 875042568 957912605 720726208 831225414 536052986 950995391 930517444 697858698 432127061 681962269 122014894 176006569 277995785 934869624 624556914 419254390 424372344 691321348 55621916 908526451 467123372 706505384 683868445 948422329 559221559 266357774 190684585 993460069 587075305 816683517 638311307 267429445 766054867 802710614 782704838 509003559 667634270 522740669 850689640 155533524 723594681 681619221 323980158 490775615 443783599 173842141 477291084 895427731 50350890 523075310 161710893 19856733 278957884 241631441 322374814 349618221 160483298 634960447 589823301 387699889 951542864 27936462 813102437 366922704 910763017 435952451 247841443 282020930 906239295 941438322 353817768 844214981 433571490 482010015 256849181 307501140 618440211 781638186 765499630 501683140 512090201 306836758 937343857 578491386 972715406 502265683 554153845 414177703 191560488 927019617 14254132 762349499 919528365 905685357 77822869 654225876 409709647 894701552 320414062 291292133 488242121 880642603 92098518 487743782 732501096 316585969 255589259 862819151 692205773 502643182 460695660 283568374 287909018 950055896 711938710 140545365 559132017 767975479 898306801 969580204 427957728 805469428 444792108 983368095 162111145 154785429 738986365 525945864 370004755 965734793 899487640 601621721 993008700 751449492 309497363 320612561 37878463 25229938 737725655 308228926 64374242 414755808 978103499 406230659 646932363 472378017 858318325 306172845 518287619 575133739 312239299 703124641 978464661 513281302 888907310 509900136 56101133 102589795 867225808 339929787 975266717 604472821 680008261 63688951 835348692 431841946 351322510 865117241 706770334 804049254 860795601 897700507 523910967 933484875 558409858 761192351 418043838 274598386 741428045 569782236 986796520 827785900 3185254 914409710 146084065 53837818 233675679 636306086 488616568 35204589 340920621 115007671 653169048 787565413 965660356 41876369 52003822 442373252 463594634 642917041 352513581 97763363 22127119 805990384 821394564 645363169 723495557 597264484 983636281 978419377 813065666 510310124 80901648 337847790 832320562 787158853 144401038 279483390 627512931 123419812 385871218 382414705 296871512 149222784 579421782 410981631 198547358 735286407 168760869 250721091 447765716 721011894 650813491 413667120 906791714 83853139 684833312 183385839 624586163 318861351 227730145 637985871 381588081 859316202 300069589 239333063 530997690 93200870 330953751 862421807 517030121 755753629 2218431 532911003 938345285 615210468 121866697 754940711 206056033 536553098 862794026 72059212 157914415 196778537 353941227 294492271 585590807 465989571 348861170 634938586 327331597 630737890 563999863 31995847 564564611 136020583 855294542 281990225 99734486 924960586 407769255 14984693 962536781 348805183 221934648 413522251 909863972 328372206 437463511 332307346 171643639 816746854 390930045 492538624 562991235 544324019 910915478 29053267 899092248 800249669 939045384 712034458 259921463 957341742 443726479 552407692 482845164 923792066 21293458 743302245 832584772 131127495 112420565 329446011 230109423 492200321 938083582 540886741 760289299 471891677 991153762 447082201 347795820 485162209 574892849 334476159 855707520 42380775 502195898 565257990 272493099 772453253 106302057 783591286 938061372 382443420 370880709 340642333 265939313 589489485 623099136 793834518 684108998 457232563 628903059 169365307 816673633 62488641 263918337 143369162 42824345 660076146 821554790 959067611 829944464 323069581 499685664 954187118 102285252 963452736 691693546 754156387 960948828 988925679 157848753 87884731 502092914 653131958 45867509 877016969 523835154 265559381 511639472 760846201 217204545 305339902 229103038 108045035 889708582 888218208 859797493 567534475 151357555 196654288 119347747 322954164 234596509 42426670 99184249 152311562 411766559 523319914 705652709 695359135 995911633 239475439 438813032 862096076 89434490 500213176 514233196 857635181 336364740 634198301 835487655 732056934 729331722 802043582 575179875 99850104 832904786 65162914 881429302 975847952 112793683 396310331 978803462 712282454 219543218 558797433 474952373 916946332 216014853 844320031 781543991 924173572 627930914 853557893 885341299 969491013 81085560 605911481 956751697 518597351 527076872 893833300 604003551 679975354 15412579 55638328 721423058 776536299 410455421 146459579 603073775 71195235 672572808 612097095 371265699 979977035 109516244 39270594 984606320 794843163 790062586 839669791 514131183 472649753 864939814 800922805 32826190 861574260 412008953 364673560 693065852 127730781 668694143 716638690 533900735 239348702 544392504 976795783 552165475 584946896 969780694 194998809 781880729 458812905 539631679 560152976 80080005 338459401 376733575 960540657 42034911 178781760 895102404 898375097 734029695 655411855 924143603 924276302 344822567 366106840 40004283 235955411 470584229 430187903 131368161 535446535 654244693 531404513 208084405 643781130 288209838 646003463 136364182 7233385 629885626 698117128 317205623 655819587 925212129 444678403 893696914 593260443 792223714 577298795 716857362 356000098 347545422 102480931 506466502 836145500 252399134 635851571 445967488 825598181 90002880 424512003 901135088 465389598 266982650 406781697 716413372 738159396 452401334 585904679 541526229 418668612 237074608 647849262 93531499 433384243 816368876 90014346 871963989 70730210 233288894 164001158 346051383 823991497 199070480 604367521 728647043 233321863 735404007 188966248 65939408 158597019 241687379 306752246 308826797 17518191 435098692 260503234 204288064 291993078 560680507 451952998 706731014 176669318 376027461 646477428 457526316 873756996 716550639 154909666 556223280 229156217 452907527 707425015 186031306 915269207 694644477 819031219 232291673 144808390 419556490 357420126 370627517 37940311 675942578 315505513 337841445 647497100 884845964 129377180 802585906 99139833 988589904 114071703 999177868 874643344 511893337 875648035 892530784 844279399 337757024 639775324 722498827 624734614 951963876 578061936 965164112 49150618 62305400 790049310 571114085 209230727 202226100 786928099 278783599 616932361 248567533 663447171 334918167 982106024 901616667 477131259 39344542 411842298 348049828 405455171 609210980 323154978 233752054 911196991 687259349 33662539 79290029 737881008 644285948 185799881 219770549 51339587 401087265 632041128 335033642 235579594 415853623 965359495 967495601 312375854 161589928 398717847 634894536 477457453 244060815 384682653 764218832 323707617 669676617 786897195 715317419 384759268 805581462 301212730 299717346 475098366 318399882 450288786 873244911 913166917 957115709 169038591 981164680 907306676 94407216 107412080 515909131 724998831 137110457 724488330 835565827 252813295 231536996 432452733 637709397 696597257 771082287 760512609 891482704 893189948 920852091 794533007 453423270 881990825 90366367 798676821 804891563 884896679 49020876 464783208 891920992 272655983 542199176 479244672 236344191 38611990 940579501 912821184 74015987 373589580 27748052 971084622 58636169 12145356 823738634 665187030 640510958 973898924 186004269 118693835 25186553 584316262 544604662 771614062 857277193 367800321 161346288 954001697 490956326 280096753 487692187 591394761 672336724 570933331 581754691 387107994 692461540 866009182 427703751 498877134 316559577 866541434 314943053 306931712 871910960 200198686 595375899 628484538 570132708 203488704 68069459 181071067 991004699 956469533 470699595 795262205 937087155 718913300 181517410 76754762 80964216 922616480 190068405 603600201 649771187 351052876 719804756 44519957 695023957 439941341 85008727 96537210 391286606 887937707 552741142 526874992 108349257 496791550 810380035 194549646 49319946 926056274 992304946 421424110 48096437 870517581 839423185 263710208 125303781 927831955 186536741 871618027 81289508 365005360 197435934 916768034 588547585 617647192 224356220 593995687 4729367 123175259 146071312 937934342 545373471 612532221 3001217 439637396 950626538 895026170 553221191 710017057 747171318 864836324 355123787 759513069 228040825 498427088 821703196 480006067 749326617 451945599 912249460 19064884 721029743 738297532 957396271 534795519 511140560 35863715 909669587 581198949 188493924 835476910 448976231 876316569 620178900 93915114 726752830 511821936 232701595 470913753 590938972 176144925 221170765 766906980 724469243 390706803 867183018 917592109 316139385 587507483 501791453 259559464 995413258 86971978 781191233 204687690 326087490 134106308 596670688 31791423 390556426 394490002 948871274 768024108 341862283 247605693 41016494 608763203 429881822 841185299 912247289 943550630 940175099 786535833 256429836 924079237 179110805 976678978 51123152 234607879 773107177 931491509 110344809 682060092 839347060 519042693 982277002 943370287 282695896 727478596 247113426 464063535 488252228 922442370 335269015 880099912 853579260 276830741 956282806 60922842 236973066 700142041 170046658 913149421 578995755 795573866 769257383 501704425 601184823 415508815 896557817 731886989 888457792 802250551 925074079 865649418 907929093 104333286 696636694 517235504 852231007 621760508 305758386 407894210 660812510 893828250 249468996 278057811 831466473 975697415 189876355 595941888 185152254 545096506 347442558 930982167 875656591 641484156 50809656 281271126 160835891 860747374 840651624 621912092 673513172 451510464 797655056 400025427 508285632 371503672 650233227 513301621 208065392 47140033 280238311 593264256 926019287 420323123 204609642 338756254 588882790 388959707 942672710 472616897 913769287 721910961 687021237 525798923 659464073 869840261 20538411 543838463 685317618 92634656 130963026 857408191 572820818 213150340 901014376 946287592 578639035 71477710 801537931 975323724 238313841 192926150 3786047 970693073 123550644 734797879 267357043 373988532 117708925 259022885 88691406 596522996 591115526 352664193 913118557 962624899 923016836 273754099 272197604 227113 220117519 875646749 474102383 882898343 81096483 289442584 686361111 89189414 89777766 841465773 3018848 43757150 257868638 485693739 582335277 463409498 856055235 915250247 408268241 877660575 540498048 93821977 407599033 50389218 40739399 670678889 748443032 765115167 26440531 613518761 201307922 37560812 465501592 998951947 272649314 389540130 971929530 307454151 631092409 943707462 239143671 882857863 997407678 684830601 888283121 211674568 329966919 283660842 105760261 548322672 104465224 897036023 534742524 127375744 224431602 610707526 878926031 16596040 835808649 142509881 637819243 134944866 413983688 152308805 71598515 989017869 122637518 492168771 540956547 460630628 609780990 744728045 391919731 246507332 855357212 426368875 819985056 54548209 361263781 320949363 681328526 401089231 74664403 874038555 931374013 610148862 638732587 453502053 20644339 458664855 72651286 278082713 87018321 717700695 467320686 968937031 365384359 967601809 55912727 581329430 767081784 566082432 525600238 300360646 990836725 127542945 587857617 264033691 442921970 802890417 307691838 22924531 490061994 358806656 989287254 526691601 39910674 726838916 674228481 301464517 874883229 103495802 862194916 565168426 956725959 897120388 359781256 694413911 324979276 665565510 58356668 282279705 607292610 269342686 252947743 306156592 369161226 888366562 569491482 29516031 554533939 96039009 693142853 479204332 200459751 538934626 763833168 720647021 216915569 685983728 526886796 752233244 716520449 82338472 18899581 235829574 434759850 194414630 563158634 273593706 834892490 866557585 529243582 811504866 75348701 684143796 74026950 561720114 727993279 811455646 132701672 453291423 663998158 382982970 66367674 769841761 693328957 746726765 334982876 828505763 70072854 833495493 383127959 978705906 274812565 224795737 448052498 848935594 108985130 866197317 772605377 705054451 639364275 72993304 920110164 396470171 467541757 661022550 219949637 158395870 782207898 349660028 122621237 219179031 872655698 92475697 646320399 768050990 68036605 276211634 585675845 978808462 682191911 97638278 354055849 650825703 965464438 224816175 272374419 450180490 537415597 220562437 936975609 982058163 364455837 21930248 145528288 802329535 94871829 726585206 738443750 441409268 165163808 104782629 710956366 875184980 659579702 497957504 945060961 763997956 214372590 339678770 461325901 682147630 780035384 482114315 979061351 910316216 587180282 626510378 450917192 155404791 368359397 86167946 668403703 400380615 610219951 639588642 59247702 47973476 304385674 485886626 149620059 69776410 190826545 834579917 284958995 799378798 104308849 442629486 65235675 585984057 9560026 234916215 538152292 19278468 519075749 925625862 521825597 579055488 872157518 500471630 842499579 6019760 276142167 631735201 478376833 154398449 110342433 502983571 383971070 126147817 151725211 179657418 155923249 709255170 631277422 262100992 171693437 304111042 88106426 844191955 96746943 218490365 610251686 211378878 142868364 403076815 972287564 289026468 868181138 35275281 290927912 599661254 701736618 412114413 96429278 598905053 14226470 951460188 383356067 515824580 705212285 761220290 192847869 197140285 135009039 262456356 818352327 870083902 623032868 281190423 983402605 422368915 600765436 24693302 828107143 601228504 768097355 211854866 219571497 258051322 480260597 575619267 403899157 630919741 480251481 931685311 304586170 506750162 712919096 374837788 508641435 980695745 465434887 506460775 102685443 381443526 772092548 27798151 887619770 282844613 743524799 443694556 612275437 45037507 578364151 364615318 343273796 56057160 948216289 580940537 819211862 227704126 830679644 261983669 77816107 578029148 859676588 915328732 139194314 78769500 443210838 817744108 173110441 471112259 991667951 343492296 926078808 24901186 705614306 866013461 891853437 286439497 890902753 897250168 150817388 623005560 101064747 576744879 176883893 336377105 852870912 823893016 645087215 305992364 279574765 382125707 891691624 793226483 941116303 579850617 332736954 474490351 666772665 630771634 884772677 603656335 622903572 434921825 366880834 158088892 599146372 341435994 604664817 811395287 955296381 93873103 692144577 965668294 261503802 596514746 980817078 608852464 23986277 16441665 884090121 710072184 204948548 816980439 272361230 622076262 509793766 303189243 699283006 256163859 741784018 261495031 147840543 743110684 650660836 233435908 201038174 576393190 77532014 870058449 389123333 799915519 669367357 555886334 869994822 172224002 743949392 340767519 804413230 273482797 196133047 871205271 78788659 487491653 957692350 165694263 794843967 542714842 936911149 565821228 683740661 558528792 560537897 428003634 485620129 855715201 580572623 456457529 327804201 59523681 591976063 775924740 990663721 913702247 517826234 521159919 295842748 343190012 684778742 171764131 152437937 118987275 107538772 728930539 408691758 953200286 95090301 475818268 395996501 423545947 246293799 254946516 196313275 597052886 203849786 156592411 420097698 31973364 244117420 924389698 988350341 891988673 377539170 4045705 613185256 675430953 719418359 883366518 576991390 860537026 550221270 286439828 634660307 143228034 53046717 751011999 86248969 926682088 801707020 8374454 72791141 820058525 959881189 861525567 882262664 562190943 38147014 557313632 502912900 155977947 7485946 986764205 949884203 796004540 803210874 814462879 244703266 362869286 583960419 569587139 449180932 540870586 47521487 74184818 61694158 108069443 632986031 425377838 628757106 923365824 526559522 97505240 171951058 900719298 360079386 72193299 502444463 226658959 344567904 167778380 19197712 53653641 339347345 98676299 391967606 533285841 451101755 766481172 911388399 8461325 67414021 731261231 800286707 592429852 177751460 759511143 934313917 274795406 502932823 541623344 945033314 994283379 259401859 495292398 260636258 39974388 696491158 444712630 622359694 648995129 289821859 78007405 767568390 738644156 271683941 619914039 336811472 5928194 274418073 532858280 785197983 466862876 308130004 898065952 855037211 877406362 806742979 192468779 662281260 677767792 455830870 274611477 685525944 479773605 516258610 350507114 699578585 755835560 322530576 377722602 752421025 676460594 250259180 734201994 549977183 526192483 163030999 874278063 571378144 270018642 685023685 36981109 266764388 636324626 517912795 394322966 737062379 853771552 174005177 927455188 503451023 483634207 208164545 220149451 203582481 704332205 658697334 214797715 394887886 910672259 504390694 212578109 155434004 850615242 184489281 808051023 912800394 901048641 228461878 254582762 917212796 117856538 644279399 328325988 936442265 545052104 654923425 681857320 123109351 843603642 751256710 808994517 935634282 584514228 970180542 88012800 842510533 255070230 461603223 734497855 722889887 309297513 902953342 489876979 257432540 415527308 984227620 932805081 50250450 450122763 536253778 725657351 326862367 129307126 123108904 382857857 376224681 430508232 212833359 380771748 234279681 677274948 142641759 166108906 135339936 624945270 803868384 974974349 9507208 267362598 863128881 315485057 107618967 326761255 280485916 612933880 855934935 822950203 404431114 519498915 444595852 387899156 491016482 248839524 384921496 819795101 855524737 629331 946251420 766902268 746116853 741878593 895332947 792871500 681929656 527648964 804678367 520659752 665178692 978886572 283841539 662397062 477041482 823626216 811179091 585681624 708583537 689580835 492694290 4446741 924870419 939030292 546180330 278437536 211532062 126906527 834786791 386084201 57571765 124115068 665065467 300063833 651793281 250119536 931907330 391449007 98681364 200785297 858504482 835450445 601104271 118385837 473940367 793975834 403058545 321473857 683823400 828642673 889662698 835876168 944334088 995732733 290369328 480350906 299556455 815756973 289203778 168171724 809832980 836715222 185377583 161973322 766499784 87389322 417348138 574441518 354215003 209526835 145466253 255053132 960836182 516603923 30213101 358219190 724189070 853428810 639524988 909792447 543920127 777827934 609010129 524229280 801350552 374221348 783094064 730337168 630615319 904079562 142195947 998299244 262807397 301406513 123640664 20185893 876024386 185665831 986425760 726087670 377663319 658322253 88989759 114192248 328742762 754288495 220166882 406557743 929009438 711924793 91571702 842840766 834887835 514384888 807384489 930454034 959102894 518279955 928485397 902740428 923438071 844575806 391703521 249525251 104401022 891843066 450852410 596923344 420592205 418996794 265181678 743087099 885989035 930797586 149071540 34290514 769851002 812973983 674748172 185816884 323644304 241778503 219442993 763445908 206821925 805188359 900490108 593860912 550063766 469480884 95013326 711971461 267635761 196474937 13502568 597207271 138307738 349016721 638618356 560449195 119866724 842809599 983501131 691212193 26132220 667971157 715939361 192000758 707006326 366575344 136284627 416848436 418403226 779050675 278820806 163210709 896846933 422091613 731602452 390866614 839717683 173338811 912540864 293595480 968958824 142163715 226992392 41429885 64383199 978558107 773027835 930625653 775530154 463047099 903903177 39252824 438288377 833662452 553628868 331293913 948742167 596132973 560654876 697320766 33404726 569964884 281538563 963216692 196762448 668873295 829464305 190268304 493304988 126959316 200597845 665737471 14098436 285611632 459587156 444974713 765178258 327299236 271239004 44875783 753262874 164190337 363581876 277130143 508659626 497944565 506847582 808043829 294895130 842310390 384306976 763247046 898617077 928513716 120688725 483296701 486752215 7613427 586695556 956993582 689586568 569717870 747468590 987947496 579338936 697009402 782169859 733134097 602452686 911569997 354286100 690919216 97958812 866869842 241362401 714646274 957881076 920205649 767126817 991425868 42317416 113589800 260643168 53671119 986155121 87027611 40717158 28174216 398950537 811001725 197159038 590442181 939530535 808337154 870067126 132888143 359011117 198041196 556925722 412268891 935646821 871644996 418461987 17237883 726235887 984920713 746498836 969016254 100225530 968873140 115358836 881941153 748901650 200822392 707484288 97809546 843030678 75925359 153174732 840423685 216286003 75393254 703729002 74933563 480539227 597285719 372152004 467019035 657827129 487629941 716807641 287670591 840303050 533971617 708543045 717953144 497223166 930403868 197374657 861158682 426648951 998752036 354756577 478856903 17804108 620419834 770716323 70371008 761016113 887937773 630040753 229685018 76829262 606047026 348544296 734922424 456451903 678984864 40922110 952219191 949486579 508332229 455927053 69177264 429392353 975935202 7041559 483922538 501121776 673950098 129638407 856771901 546645020 338612712 469830398 427277440 961107703 590637169 789489893 267088314 256734209 680375706 925984172 616404014 974158171 836306449 818555504 335600866 17060049 990598144 201405667 432488217 819624637 366219287 859149682 453708691 364049444 126416621 212809957 786936031 612826446 715168418 405116650 10930442 229235483 601302527 565820938 837937277 39480289 482213770 552438869 39292789 165357269 689977648 617605308 779775531 554288610 118264332 946377609 590031099 244552539 460765922 981582688 179557740 817860314 351824024 310118860 842029742 24785517 941704029 449579623 753759413 696313472 195753750 645176128 819618861 779570072 78915264 83515376 579454061 578214063 983101341 485250620 180524521 651222162 441775324 909217897 776968347 723758205 576925159 776179299 18684307 913443840 139858005 20207750 614714442 894247876 482123015 186674283 264944399 696871964 519099779 383190515 186900641 850820449 189617274 219887033 658410924 236945775 299631869 329235762 490597532 296267376 624536580 990734467 964794843 554741232 21498797 532886840 843103473 71810894 21130652 111648100 753535744 587421597 750466627 16284749 713460182 305795851 752041895 809654732 217140182 248357367 226209215 944470694 41796688 306495804 72353611 346007000 556635623 871038582 127568919 28142699 575083175 433821642 712575430 457646765 388035217 517994062 721643528 976794267 89949450 79613348 244013792 736941816 551389753 500713776 486108945 568892221 492676108 155584822 454310850 473388081 255673417 970421014 889330563 927969697 752428765 21940868 865422176 890732064 367550194 626994072 463654056 527332989 551618747 606081924 316728886 371223602 479475541 979800875 736202770 255352341 196100896 212962187 51573125 948211737 568053275 992035524 545944403 399194923 495400848 275732675 109733340 81583164 565709587 656354498 153582890 97512051 465829334 546948788 206870866 574529402 25552817 754268067 757464738 627112187 627854996 774210589 584998079 739074872 240666573 861934383 606819568 579437811 799040527 413966456 270890137 831516832 152761897 897575250 790143354 456985697 937937592 614141570 422000649 511875943 889893857 349027681 418411654 239250175 640954865 485184203 802177122 491575624 428566435 565971983 846211253 885848129 386385538 621902762 602880003 920796701 226597979 315909014 936986008 122625867 897985028 197466137 263757858 596844407 890266610 428019803 146195371 31982030 870428550 296755108 222803605 828367811 381141810 927181838 235217896 137166000 526720628 121316077 236969394 811593262 538925716 726688933 10367328 173712082 40811446 455123206 602184405 385021088 753542435 911209664 674696983 801780804 278412336 972958122 514244357 334435019 386170433 208608873 400629342 800932648 571394334 753765243 780784482 47865851 473077477 462947441 724196934 618823977 683674483 895112119 555047174 433617328 107630953 349337369 607971167 371738602 697305630 730233606 223554928 309972479 69197612 832696554 188108612 858997152 78740480 44469513 602693254 601818847 2349935 162458912 462813805 907741953 980307291 179776219 239888310 829514986 50398965 381709495 479596556 601954684 964569856 269938746 87863263 208338826 636086135 577283452 58905487 879398437 134862903 730255511 439230409 535706962 902085380 829036037 673351103 819473336 872230417 76099427 657657963 131968156 447501320 574150347 104062512 370243367 962393489 261941385 439039571 490916012 326667899 102592637 710640813 846549548 843325820 549744684 454174844 163333504 947970613 254728542 987558520 803635527 803906095 357499908 234213655 351464727 859717291 855769441 353459758 189441041 319307216 808665998 558740406 705703176 768962587 404851224 145106868 97117941 868111626 518725318 893278900 142246958 601886447 305338909 92714847 401427239 456524693 782908757 502457004 944847204 981242973 975918597 737789854 131029139 459327506 258273858 855658013 25782321 542377416 968336879 634082755 297126080 503308773 100842444 526067543 184604952 683012569 527495765 241880982 998065126 287763684 819556694 34505904 358086710 695394764 947930007 146117512 855363620 681417848 551047287 533831296 4712964 752808975 833199800 265636306 256331111 957106613 351550756 853277770 615085334 688710413 438610399 955719695 760442608 852789152 321881568 521585375 332782869 877257026 264588081 935537805 569045753 592156664 288616880 788851867 926242595 468763174 158846271 484430636 944879511 558904451 209128188 257759401 577580515 313146772 872895512 734796107 945019975 517717069 727277667 682280232 719902138 248008627 494798554 85898727 404404959 379231161 91757075 863588107 45077924 389924050 401824427 629506323 16623155 777175802 146829406 8429014 734648461 701056247 165095400 29858633 737004287 964207297 394212021 866985131 441684807 471155110 34259876 424130299 567830840 77079172 989418387 384610941 650504828 514107234 142143342 534629518 237953607 231990561 348451687 691533333 442467337 829345494 215274268 767856633 713242213 470567991 132149054 500584058 687438035 224968344 805254877 105374957 328776368 873038315 489082935 366872468 411251857 596384736 158298950 819128238 233643308 863974830 339689368 708487310 831445397 355323302 485616190 114009846 462616597 19811440 541975754 234011896 774451403 423579761 650074269 435310289 801236614 306024184 699224059 794311676 938962758 448368176 936141700 143185491 210916744 304373391 400404358 507531309 735352846 152940684 539694187 657542967 874306676 877187016 428442529 717684978 275596315 122555263 329251641 572621136 175031161 90697691 601492868 736329512 409399104 897384803 137299302 535444948 86313324 672743514 143762252 25742861 956710638 855945567 375184183 988243416 513630118 688593255 61327423 755182214 272785995 347543286 875575586 92440654 907769928 155017109 759027901 9826271 991348810 750472636 4611753 723234008 407241294 225024997 886818035 157412949 754570863 959072387 147632072 278442244 39137623 726626992 132452796 245465313 109481412 771526226 782146195 59114245 169739081 996372799 911540252 339706027 606941005 21925562 298260434 976712789 90230969 29717838 71664085 126138665 790389893 283508998 852437805 288141309 532955732 905228557 454640027 488751444 582443475 299256421 368767107 815447958 129319685 240714343 702102790 295579613 706705109 744345896 602132818 683466693 421237888 510124867 479341687 319818094 113818904 8727975 852646303 150736648 524025525 266579147 926963287 598161181 925685183 38641991 78310810 505490657 456547722 732495895 183757323 300052779 495447162 535564591 792370617 447804879 96738356 861362222 880989165 330765202 438787685 641209366 508440883 781317431 819393907 525590186 77051003 643128856 265354289 360295690 727307431 208860557 30141393 928727126 489661917 972959693 661576448 965864112 671788978 122548593 331168967 359369824 607638857 67869672 802660595 710458900 425394907 867532260 430046928 672432281 494190221 206486796 843036577 551052198 28224308 531631646 604598136 96769883 305164703 102715666 810748982 561333707 811095510 217735040 987898234 900755689 23001709 663191533 541970130 450516091 695040504 838030771 481026380 236721440 780648188 189037813 676839621 954046509 656454088 333297083 543415740 936513117 755778945 243715612 424920922 799309126 791903076 67002153 397027466 314577947 975682006 679848305 176071773 161621623 634418151 373537952 149412332 243923893 477707874 962778261 175621989 28439413 248703805 545547770 261838952 797755409 67205268 517653074 648070572 605174465 668633739 174608213 70740343 867998716 55133065 119853243 693032571 522777325 527212118 819998451 782391213 600546875 82509936 445999425 666580131 897095216 607698431 389965059 511856471 67900883 236750481 297571177 450505736 73664707 523127704 307045688 970290705 544106622 321199955 708404671 735467693 175687799 538980581 25591586 519489287 379936804 13544831 431553927 958442176 514442736 572865155 543686906 528523130 63358085 655646121 25818873 476979525 796346765 349756766 143962246 349993023 976148787 855567969 914737896 128624601 313389215 348716083 46852416 249824763 16500183 176244848 866234576 645801952 524984088 654493930 88311444 41847644 509885228 13516431 428306726 986407973 273522298 918130709 23010112 355494044 259013061 846754464 726791042 146269618 964230212 615201016 145337866 557003419 231338554 361501173 807447966 606703171 872902625 137158974 371908435 43784726 733100166 612738681 132761899 792792928 853504235 437113364 891126370 476556307 263529463 254336207 282885668 737165576 584504937 384224228 147599860 693621485 132309377 793402976 860903379 163686299 471390063 817277596 317769958 402785520 436249506 261620455 337410609 188613102 5380459 522454518 21033797 631868989 382967681 566456090 618439068 800537388 111126635 110486062 615072008 974280917 21361793 953195820 957520519 910098857 919837623 181116632 660694205 917458380 227385442 966679737 979866338 840376722 591166273 938791836 154406623 243621339 615823553 165400738 104555154 505408412 899803161 863317117 190059485 450118533 92762177 678008657 668512231 307065418 75164523 97268000 920741594 429297948 368028621 253591233 816430852 647742227 307628086 585179311 937083792 549245616 551081353 815232747 735035470 700265878 999556022 729030746 79667483 525960736 697974871 252871756 76278619 16797363 127603447 355408328 650848418 975452573 113845389 419668275 221394334 911675670 985880586 934803491 498995147 666342685 47206678 39856182 348783119 371825654 623628869 12834357 966786777 599745049 704167644 2815688 418882964 657922709 546528321 238417870 161900990 808283225 220245564 604632060 719412802 706068188 316850488 820230394 516741810 920056542 750896823 221229163 163078505 684436579 380738040 895034917 273678353 386586285 999427167 725204917 177646950 406718297 350495559 802222945 604894065 885994982 103062295 665798554 965221663 847561170 235868905 312883389 913295031 487170032 742642505 469571227 457379485 436518583 492839393 823373267 927661921 136991601 108118449 197926036 882194155 524712595 439305569 793750523 415283991 991251736 246210741 293858612 941469839 1118872 608970817 584527308 890824856 197611081 731283431 477453921 452586689 632174573 237474250 322293643 767127812 919733139 37291088 790404976 686535307 389835944 710301699 510487036 723599303 252842671 714923404 660582112 183681552 957114035 88928938 897750723 639433811 688639476 227885157 223985488 315667569 257659698 571026176 995595014 313944071 8449632 969103679 667357214 298894113 293285151 197849624 548375627 234894298 216301191 8282374 617458755 683997001 52854108 729731177 541151620 479302391 433409052 185284987 7664472 699189203 581664506 743132169 55498347 454852117 687181016 54247015 194376131 309998404 864908573 811230412 692663339 370291761 905060333 85072337 84282629 371792028 655979884 898933997 681106187 712378215 113522693 260708871 442340619 950381044 77971864 280531540 87056370 158681056 514342219 20652053 789386917 320535968 728112516 492807841 182659356 578745970 823012691 89484346 605125213 957373494 326760032 106287713 70181163 124660269 487137434 351746081 364967441 467935877 28070947 25941587 946852804 894046053 675021083 850062653 354232619 856314065 276661535 365564848 534789996 485605406 477639868 38947502 151920928 570169991 814417377 95483010 792543049 617367929 216581552 287088438 45811683 612985596 423075424 825167153 762777661 180498512 432311090 386075590 558492530 578399868 855952692 453992158 75635699 411509713 517138275 777674887 151797731 575924689 671265837 575447907 48050586 83824825 856623699 203871377 525787457 332863191 80822726 83610621 452913799 98296327 419447280 792537774 144288886 732798519 776104786 752244480 676446068 608697974 888696584 513856911 323771360 254847472 450859548 798883814 726413558 311249807 958126074 167247063 813463186 701110183 240112236 313824433 912922749 806077958 598484739 557771337 182699740 675224644 399546895 904227679 962586531 514446748 795691884 151651244 359599246 294112743 263941418 948763106 727893133 546116252 626423169 877649580 209749682 450023385 511351408 568675518 685589627 375768425 293696255 894184827 571617899 857692686 708723340 429504024 517357671 416519431 437323228 796486669 835436697 237591438 429429730 527771870 975766441 140171439 856810189 477267109 129573861 299153036 319170783 793162151 131760788 859469991 268016996 458972643 207172134 905121363 44407134 395926341 123185035 544254717 503524226 95297087 404455065 458731247 306875677 533101879 925363159 952560643 698442076 737454118 664800595 886682378 653706673 662110817 431878732 877136587 169362525 429268467 237836955 260238543 383392906 945527070 587825808 90379035 710342117 430993571 111250165 321491648 449378938 691519843 328972846 715889302 503844296 545844872 333749713 246260402 321706367 614614603 541333014 535994373 492839530 949391761 705437183 842374055 641808600 413213587 648762364 162948950 196832510 145265786 48750425 942010608 870773666 586752473 976712483 718232566 242607629 576854503 565851712 759004891 276835335 860618737 708957610 115952535 331697622 297698429 252144129 454756277 5511061 829806970 145104658 514589372 634893712 673712468 259785394 233167359 177687459 314222093 823260727 651026867 11976473 387098902 493340510 796175063 880896802 188058299 21131787 98398186 374783404 772872396 769344380 398379669 143840086 607104561 152466329 122079088 954987227 863566250 758785410 177194936 584359410 693069441 657524806 833364743 527409915 796519868 167876378 725609267 405131877 254503199 814296973 690494176 941140077 46529218 614590460 337607988 715013749 731629150 166867984 595527171 444906835 476013599 708318069 185715454 499309006 346169451 76884144 16275808 929682788 991952895 429243919 173584357 761998279 88782867 666240761 460109494 593737981 601695270 580932351 313185049 632347273 893759367 266800213 936393780 602017040 240035991 903887977 550411885 622057877 588708438 186097144 163402420 688179759 221752820 51746067 455397048 725686997 16730777 44555774 969592449 625822109 828675389 354123906 539061912 886258401 370281176 558144489 626064309 594998549 570572540 902778381 202894556 254409084 359779484 788974192 388347654 460928056 131067067 342997629 653602179 691305470 673457998 850266591 281279463 906016320 625780942 266326017 459128601 944946318 959516200 554444179 301155617 956614299 939224444 968136799 876053193 151624539 816857464 284965313 228512350 501321655 268921651 731419218 507885641 603150302 464868432 47270651 925208872 369439517 44407861 251429974 292901131 794790241 711412780 976340500 815965904 890089293 166444494 249209324 555940730 382984877 955773300 121021405 331411126 66562005 336188098 791393219 179974964 766761074 46113509 42778952 942543864 148239416 380368015 315601132 594687189 365788414 399661064 99680611 247982830 602367340 168268444 736725892 410830596 659917007 168388520 710352646 993943451 447973924 536673456 195751709 749351969 203047595 391906071 468842256 172655548 525854078 555885537 249676092 992468950 828729089 203844500 583268893 997660226 648351834 167808460 654770792 736666850 877573418 297111223 612616896 256220856 854511503 771741038 654907276 764103657 897880417 96970691 772903910 103777213 841183103 114729029 966961466 364957570 939212039 298017249 17429159 120741633 809919295 53674812 172697578 958204993 636384167 846947176 283410258 31800859 380824764 472126244 760057623 750477348 20967500 898870078 326937252 860978358 337162282 258147786 540193332 773318536 651498709 893010246 426428397 650223757 641513843 539554556 500351982 795019344 502708228 761658234 510074392 316044518 109212379 190882229 308459873 63305045 577806437 314886874 207905206 750624943 829842951 741827544 848614830 116213011 580545240 971988332 619306607 342177839 872430297 785633112 762280951 220497091 460804811 581259611 769506187 825299314 507346273 741049041 906628025 433858136 594483631 151788307 284858343 89808783 706063313 262826928 897618562 991717854 424818790 431521191 952884448 382791134 9648072 889284697 624106056 159223162 151086650 801582991 994691203 577541262 99280405 179114600 98896464 956751224 121155561 883118050 91859629 722117175 618321632 36985380 312813886 291871019 948962468 217745341 855642058 439934071 445846156 58798424 418455733 340760329 235064045 421864067 805534563 610624628 199123393 531783111 962177711 740137069 396618018 786340261 65267989 698129917 131266450 653012362 864676972 616698258 279164372 961569936 179979248 21046374 723747345 957901801 168011841 510934969 799161346 595939511 285305960 151182768 315771947 922367401 333504358 127542475 121018724 375641488 517040930 554020391 629848391 544319609 452743769 499081612 357477649 624331425 798331955 916719696 676930478 958640785 17236242 486619607 139784826 201151040 163100319 578481579 132763035 740482594 698086476 665072616 446232001 472164052 205660170 118387388 491822723 600360722 642834138 10263781 74948835 319987698 644519783 924099369 558977721 330756396 915077986 743691696 325722573 779377956 934471905 21379187 134271141 892075658 697008513 399118434 267187563 43903754 852225875 321004619 552136413 968824692 75985739 17353431 984497723 971291527 406971289 428220707 673834336 419154596 412229723 727426184 825818905 364176063 637436072 945678819 62050400 803474779 701219451 109298501 333964703 787894635 957196309 582822202 773475233 397684810 151307184 979924035 983148088 964406145 363195533 477057463 808642008 154533300 574461814 425829804 611581776 378763984 900192216 790347497 435252398 28672309 134190312 16288089 949786359 386217195 308673260 410472674 38440685 292712255 640668206 951034690 741797165 404809695 796163463 630871444 950950177 219493970 118802682 230331556 713376078 364924011 90528196 387019646 744011251 139212519 933252779 424859972 821956848 89674867 273538971 410104557 589867600 119509562 61091500 374266471 151456836 757704222 772577575 379072781 524205699 925809150 30280016 399677547 284396322 261100611 99575178 712063700 628761036 559235815 787448232 522032528 836025865 606957500 263389131 402541583 267668937 285557623 688109103 292637867 81954846 760839675 171966765 895327848 369279647 551976622 969869276 491649336 303693832 310547966 622586242 91303191 544814566 505263596 723841491 797167230 131498454 734679042 50841486 754438604 70064644 606128064 202175274 256906704 511345044 709126642 866257923 379298206 605656539 245309803 848475061 720290411 167659321 608484861 291903116 706903185 264824667 241490056 17991615 24978443 406204230 685834318 667053225 463221494 484651006 260179715 212913409 586792883 910879742 4046195 201456495 788030142 546153973 31916768 306733616 847734519 274490717 146243962 423628603 130031298 363028669 826085269 737888248 134212190 632645933 693915216 768521794 294570047 661759661 764336331 206989953 754883276 467440566 783078143 761512406 559560912 560889032 885937107 683469021 552890553 546748953 953517749 681209116 463647435 482014917 523678575 186026276 960413539 588563722 67533169 703763884 986685601 648422224 126282919 793446192 644304658 438906487 731580602 979143215 142563790 862645809 417525214 691389322 733618820 417554509 895903093 404447909 908422570 563521753 62426745 574827801 228438326 216662943 336147504 305060776 573894731 738344031 885501387 100220824 744829319 597788427 210956886 104795851 459694470 956764995 301293438 378622877 897152646 661679000 857163579 330872924 986141858 450601418 999221080 344792592 524121454 375027910 606443010 812358808 272618279 447142889 439799679 544937385 873692715 731380763 539157984 114296874 450030036 622252886 534808864 29659178 437245533 476414265 360545554 289998610 878342518 899236357 116600995 388306784 840640762 586080079 553036576 98088082 215207375 926804880 815647783 618604195 948617098 76356918 952599540 61520746 46257954 117480426 914959760 459816308 282204861 409025306 274152349 61266141 674116826 170151499 344479848 728354909 111997263 35220743 107089657 488947594 640972224 927407462 347489340 465721705 400397022 49529872 861154568 479098555 430761481 890859774 877899813 873836128 782839251 520436049 123011796 320163043 275287634 242500243 513270656 294983508 625616610 477630266 442948533 406215436 353988335 513423386 629448217 220019465 121058205 98732754 806744803 850570882 692508938 378675559 356271914 92831775 449899036 253833867 740299146 570479815 501778407 328804502 951961441 566794241 613956068 94821551 140060615 957773436 124823982 877415628 120192451 674637365 562638906 613553575 766849572 615251268 277544265 38695969 738228575 871814218 761272114 217801684 781299761 828032736 326253000 193469391 219344588 306102066 744899439 253171961 148279999 791166553 374036669 288201406 829133146 865979728 992686628 819522185 886706480 512748792 766728365 785057197 245860422 615772820 216436137 290634181 258083112 403368844 486831185 810170185 896104203 152640739 695175855 197819335 731897588 805558517 261110605 683351703 165321628 670344585 831981512 708166601 683012568 826808588 360834982 459834759 644227705 292062571 311536845 644997982 906335072 663857631 91837013 543280686 712020703 57611389 579674142 383701631 423305059 134983809 540400969 416258085 506503263 667850601 136593493 925805690 416798291 746966672 281886464 9755656 60213563 889357375 689322959 858790486 355903076 435487755 986670408 663893958 475182392 271836608 189742291 45374432 386452714 773514634 155994447 227410949 319604838 70963923 121957475 291132332 456964073 513136167 3448398 191741886 711303474 248642562 802701969 642586815 629963266 222816663 911147167 34458229 208289438 122284538 208301326 723930402 14393468 215357390 14301404 187031240 628872397 900737271 388738316 50319843 60585901 303693087 521952255 362646565 574014055 447079329 799860575 533730789 673703176 319337575 378965134 972034588 163925400 125339860 969119507 149028164 961553031 757370674 140540272 960218400 765106007 11829856 383417367 52250384 95949813 923971056 834355866 212956534 15807319 33806955 508202502 278098249 495022129 927065931 644863404 339474180 151802739 888140320 578279070 11854769 595538043 250266083 865597885 155756275 410502964 989731373 878527492 520058707 41952836 510753700 641210610 866489882 965645007 634218694 350457984 495968038 417454635 685281050 876879494 129072785 86164958 393437205 786875330 764864800 50309745 29554022 984645665 612729081 732792472 925247069 214890481 247907019 922868108 981360903 901443461 68030325 822867689 988308434 962836554 102008498 542203165 370993543 582600395 852092442 786718127 305839455 668332085 121988225 655274316 308183392 861169670 110720817 857376237 880959382 82509086 980064133 851979030 725226433 899086242 324334118 204388991 676831704 912322452 252667534 123920618 930329643 9310843 818384846 614227889 356824669 443857538 509347904 603321285 140295521 246551601 254344669 383894171 169876189 476114957 972211338 751034492 409519682 817730740 258485946 471958737 542971818 52504403 726511278 149167423 728249823 801762471 266545256 112959669 62231821 863944324 170481280 455699865 965663536 791128139 714637151 660786325 335341406 924276538 944542170 298251818 830055078 461791086 766091948 661312500 808180248 451691711 864848463 58303396 36180428 365413728 99064393 745037090 66689041 574424791 804265445 662377553 645995897 262301324 858022835 612749527 751842022 774187183 286486322 459483603 50136565 8395683 240984091 898132185 205081695 937185236 25680958 254671321 520118241 118585727 824878637 284476335 1629185 119504116 988994385 41238665 545737701 511540860 141266930 884036518 8285308 255165290 728245428 526395786 984911326 871244311 724482626 477076340 868244486 407806061 609856836 702572986 429789124 311463257 78289519 722438531 382996328 796332325 860608229 436149056 424736472 255926350 857954633 291162095 378230432 907875231 449726424 647729350 767097510 61130220 767448721 274582805 929475076 58805015 118248298 383053599 235587475 182112932 914702674 463867455 450721465 634967274 953059292 102526091 21164657 54287126 69017739 41410250 920867313 406939184 315931788 350144257 653382394 687960979 285279202 760734569 290198719 868330523 916197618 192786655 947478901 333815438 87502667 382066732 118654113 904998499 932287366 800504866 444594457 573735179 9039481 477298889 489853310 962476168 149288818 628495952 380503413 90806689 139068322 494094635 700327065 92678578 991193167 999465743 872408323 678627825 967771700 361781527 475807949 874117087 257340571 766610872 200459714 556723183 907720488 683050389 271160468 603071173 606123686 967858670 276185603 102754354 474435196 793888262 845528555 158660261 487656284 103885930 508837176 754839905 500004073 766207089 787304068 284174723 825799659 128996286 937398325 906808071 363909174 371192577 736056240 457719863 809972747 600884857 382714242 798145635 517977469 151834252 653208101 371319568 76044780 173685368 804690752 56907021 507472281 521089222 114206949 971549713 869469255 203878652 807527534 617988433 652789158 557121260 438257506 802586405 339760310 413513048 314564529 854648332 302871494 379021684 663126597 652969480 872787550 81371284 422799590 420480893 754481136 994762692 274581091 624612642 164576039 496303494 563011394 35341677 106132567 98788808 875848283 526026638 168517917 243324257 406419260 210256862 455903099 584359538 647814689 180708125 517924770 477512035 489014281 752185376 965681804 429343718 831173251 846475297 959409608 73022993 619127387 465506758 909496886 742581190 274014090 582102347 882284056 173243016 922650667 658395032 245767012 644717889 715453945 882811884 737603455 94906444 465079913 424514284 941391107 604794299 215898118 888079364 970544101 850545050 70150257 976987657 201268175 73423133 977396565 410973874 484437043 372689721 86442940 929739044 618646232 451735857 157629058 462239424 351162950 201748902 317105082 537716277 34602833 362565025 998198192 613607537 966826488 680231366 290167465 835433847 696939576 621881614 497878122 522979461 736626175 83735787 544282462 103329725 636756795 957826681 404732205 785070599 77548495 734086692 4777945 949384860 732872964 505974349 980843588 510493853 516970012 596799569 288719188 457394505 843152527 49738615 380572331 968997129 821487101 324842732 111687492 919363936 527449886 985058852 869164728 371979045 944105455 764462602 19379432 259665654 472214191 375776302 816297853 826797676 270744258 649949247 905985425 978143873 283560981 942968627 28017710 832153218 90703106 352414503 997434488 901555544 406655654 918452764 863975151 831262394 854907219 907989208 779593554 418258556 573620169 361914207 272738529 5197581 29162588 875201014 937739202 845815394 132965765 477261019 602292422 817267521 34574969 470172114 560256581 564526447 823307096 56317373 760083173 217493421 44462601 47210609 115494079 246386610 478795942 252108812 661005293 739647631 129278578 474263070 527583784 627999108 708134458 731793121 788402493 849007990 457008953 436344274 186593524 427342001 993951350 102555616 193690001 468484497 120581432 415893136 190330539 348826813 117337314 531165239 658091544 436973020 947537783 101578963 837274141 736930154 674710231 268437232 849227769 535249012 789304606 378820093 865982508 144218080 545175507 544870709 581808274 863832349 142090105 926923252 377834321 199370471 396434473 292619010 348805170 878805486 645935879 576453905 895284331 637762922 304209796 117674633 23277285 911313224 86612882 271991865 201635400 163147202 895029200 281252046 323176758 419216823 66833420 298355695 135071968 494667921 486586962 282296757 868916530 466002724 796130517 495771584 663769715 595344488 106420029 208602139 661636631 812441891 469922023 233067347 26800060 121708644 565031025 971302648 797701206 917094098 918012605 761188262 706035950 529068220 286374070 47847458 697061081 855691313 653163081 59524078 901259771 101363333 761964943 530062066 509566862 34403238 301425908 972703010 969747329 246892312 100581376 61576841 653136684 834302702 617937277 99031574 507369182 192310879 657125873 587151810 760069551 27264418 274250243 42637134 242469652 699350739 640487186 347844727 617345942 843925824 557358349 946269715 181426050 289279717 201063094 112651469 428732801 994312936 108943602 97121009 688178376 177911100 210299584 49451456 884910840 396546038 630075494 899534609 760280800 443766410 81640731 823445233 486819883 213576036 705479197 729421710 7205070 965151077 960526454 350381967 231314763 733803521 726997615 925092991 712271892 92209095 693875240 756710310 475651469 408774691 369530745 454340400 373355026 937492935 338446455 63776681 345786994 340401005 607182115 387275508 140357579 858136193 334558203 843109103 565494064 691406427 627549528 786239150 28212741 48108621 233173833 51496703 739076011 758736788 537716131 457974376 55642040 46435897 455026108 49153609 35660748 54430363 469939244 179379093 800165729 732442162 842210367 213866873 331074167 813659398 506532601 971892141 154091176 226207593 593685546 682609645 312618932 405538981 821560231 731554363 995433782 735748513 42615776 442028916 260084179 739033883 591638997 111702216 739466996 550999919 190125483 793641659 808121509 128680795 311759820 550933024 597288474 553324480 428964508 561063315 423015231 668676479 323176060 226280352 319956979 702064924 302211591 381363713 17621391 197282489 496480425 699621711 869661841 219251002 598569857 66599555 793029486 430486842 662846514 131389144 260683066 640930915 183146197 411219685 386928239 919609812 698457699 745407069 163690955 39102851 449971515 659634198 185830076 459821428 370689435 650959879 488547794 130130689 774983209 343132558 269986254 370645021 749518024 267322393 743920382 741217471 533844048 924875748 964316735 768926044 902117850 696539755 348686981 619947508 451381029 379276515 107182953 137434127 217110719 489080480 986083733 113547448 771881435 842336452 92733924 514476703 89826670 527480961 98104921 735901211 612042579 857323770 37843919 573741928 801534921 87738075 426603593 55995761 366327605 68825478 197485095 570208626 803669267 226982298 450420509 631196099 170753205 388711610 765513769 39596168 68588405 953746104 697879163 954860879 407248053 974015170 631033203 400143102 325941859 847781784 879613511 403394089 559353697 479762484 646698300 561761540 697990973 745972259 629998214 32417999 283988533 935450504 266987364 518077655 411043798 607825569 599319768 527365528 329392838 446516458 259019986 797490179 498114022 546226824 191588646 924772720 782243925 415795080 508811594 928686113 34232836 723352638 275120774 641966223 185392014 98796805 971250883 127902829 978525428 871529546 33132542 767152917 155041452 693960457 62547877 273628914 280238982 227774082 24305225 571313012 535724205 705640146 423708990 714700399 362209531 865422140 643659856 771190162 561609621 807693522 37585916 24346300 540156135 981883806 271437468 951713617 888133492 601946717 620633025 576419427 759097848 336058265 913246164 46265968 726201523 241982983 301079930 899424196 965751272 117591762 721635761 432101938 735354398 38831809 376049882 535783954 752557340 559088832 700627859 364364538 684819042 788398028 771550057 677855273 593323692 556834113 91733920 3696144 842950366 944147869 176994061 131990029 574538795 214994656 977325611 787884788 917254960 706189692 878199447 610865402 34400106 160828536 7095842 871927440 847391188 166711097 770493213 784234348 96721017 201930131 21924717 269526542 957560536 106008956 812726998 588334559 905428812 671636810 47755267 913407309 833079656 151295499 977568163 395935813 179595589 170310830 8754437 564844907 333579645 486051349 253596142 174020980 340765060 105109304 593929315 859813631 190418977 705090872 874102939 877058727 85030879 888080149 12673119 48709692 176114266 967429912 487029997 629701192 122671023 543513881 503519789 476420601 892435304 851623615 952284323 130625098 818725029 485223431 311974224 645476033 644359029 987847979 407790374 800101253 675035801 39505301 797173084 335360405 287111188 648901388 2093087 254675822 687038004 135873422 538129781 689908543 832882364 744435422 678888563 209888866 123142085 571861803 227285004 461622861 711187957 196772256 234005027 126136488 199106464 531189953 177145269 378029856 393480777 911167381 957553086 828933954 568253552 96437021 495395766 8309481 136771234 961845250 505671842 570808845 51134302 531107738 233865803 949140851 716831529 428153725 810224690 769899448 970498775 330997995 365813644 88077230 256694524 996762419 906627541 450380041 596029904 952479734 83767741 291421858 678904303 112676032 908135052 80727841 56874718 723435080 639080701 586106147 103356134 56656672 344373663 18970298 626202256 708218562 759384796 489735448 67712777 930628579 90312498 507291466 760418932 876842621 854098885 951771116 40515504 41390833 321019274 327951409 853743380 116373575 887067012 821807586 12759700 535118516 218789524 111775779 548038963 858449964 71972563 586310769 373329093 613615666 728518666 303478653 620746910 317174397 558698315 511462286 32916963 583220448 667908305 617838823 749498916 814696620 884814559 872146941 63469656 136012517 479433774 323103219 29988826 349254140 837535897 374964719 168916079 933675266 679188092 905574877 940041984 751424672 974428985 189006738 844456087 492551824 769241496 693558016 407646766 984921191 929533656 723824997 308359625 875922204 90911331 998792331 314631284 10605667 661551242 613110729 458185359 643639385 691820760 475554108 819408537 445302749 671010756 947145488 381038284 914580605 668270277 957184354 223713931 558405394 129401288 450410775 153493992 507207934 199423433 683813724 530802481 955901416 518634681 479040655 912025361 513775263 205517557 219259134 561372891 616659627 286699390 967898782 313898187 67099618 908855196 286001541 973454746 923645914 206917066 935323051 281539099 827682785 246578162 509373780 546960161 28155531 452043100 787767828 189084851 51132388 906439809 990330548 341412098 790426579 974172176 53545077 916958799 350081827 193692889 489601814 345661770 814797373 267678410 170140479 960774984 10837640 52904374 670278716 430947699 45491526 154810919 36677070 937683569 661324753 833786379 241410958 863529472 658165155 679055065 745920815 270695895 53974012 494975581 515753988 498157930 515948837 37797045 104136601 90965730 126764023 81459557 226893213 271644631 261431116 512791429 499474619 344472765 802326598 29158209 303305955 799805732 355278270 4178556 332813971 812169516 456075726 319858193 269005020 107196379 515280233 295753990 543374094 491358876 897677018 900897410 870897311 653066133 210006588 934983580 524875745 72793417 180855901 416056120 940782575 865777592 791844453 282676759 170705287 574470441 254924682 831371655 779199649 380445031 708317655 698915936 32894027 774690674 498840041 484524006 606550102 949697160 758314116 194044575 316105281 380511387 25147773 427551056 495368924 897892372 129628250 282836823 810991087 88445885 518602513 618732010 437853228 799123593 52557804 352689544 103473798 740384100 428672587 504610001 743345934 312016246 578693718 228849505 357232753 780881231 800246766 343618674 129577097 751795840 618617331 653264338 862597305 904487253 468868183 40115552 260558630 246964616 573658960 627686900 553942122 390413659 669338134 949193142 534422377 231029540 992626516 772875705 428026904 324397098 211401182 15170089 230517880 90348606 761833479 444637744 35956012 710725682 886118051 710660126 953417158 359851942 970007563 294912739 494637242 77356393 44595637 634323179 385939143 25470339 56371170 815414972 781314704 668396512 612583099 291351374 834809808 806805497 819231430 558525909 241702070 783182334 654210308 845196033 423800331 638318180 105121590 738656516 452893870 757643941 320386412 890101645 241348581 892729093 873860338 385223997 538734393 917471726 784968769 46133530 508677652 164075403 105894105 931860156 829448676 531939680 941806311 757827392 978236356 801353266 384596188 792617047 773980926 541329026 321755334 132267418 149492675 526749520 55058789 289558100 781636863 33753052 9871939 186767707 157933786 280804349 549017812 187280328 325399670 562897072 475641406 819815554 643114048 797831150 228772118 310667498 123823102 442465660 917042208 687956362 103973200 534295109 834542356 16828564 600005618 413924336 170964686 698707682 742047125 931391939 933248770 115565799 724880914 22263941 381380761 571298528 319432923 288431075 714227633 698710383 738838151 999949138 494180135 216780777 683104018 700116416 225439361 922370833 390612859 234205311 646365111 91452513 953868137 261296412 839777285 20352721 15966665 261964513 105746417 748852593 573839888 99063028 297305271 270481850 434374817 435375500 436532957 366616720 288016944 809110900 432122139 467323614 208558024 31748607 860004190 769702741 636978815 408577845 863811621 212258264 852552221 999379139 41381007 271681828 480567592 952026863 450475357 49845733 237440409 296129969 116905060 472650366 227977213 103620792 593003464 344072154 206820182 565998994 66313471 604987732 781111401 106027264 153416310 176346647 122934308 352819048 211940765 894944191 927778544 996876034 690284146 708029890 251451387 134956516 633881860 900006212 464428193 406942135 922667776 207380054 684594457 251198752 657404625 201806098 200688399 13063074 815492414 351440789 699358858 502670342 916858396 468814629 594097543 471831477 609218582 901135130 491530674 253031467 354447838 55306739 448481084 763285805 551772176 99912090 610375597 992160852 498238982 72119113 90766166 826217140 148893498 253674698 854652547 743594541 139018705 556661204 583379291 414462925 310095136 739472481 531105503 426380570 236973919 16600023 269678926 568173412 85334469 613374754 347836781 902326016 95966673 109208226 115134868 314279279 136435337 812308209 302832401 844512621 718360559 13083580 268357778 131093699 587446058 241260985 959999919 789053010 195328453 339735810 573865490 411746770 938414754 792036718 928773536 148044194 574988890 230634269 199039310 708592272 3160774 266951636 402319784 279573858 227618970 346658769 941580746 147581725 871213292 941193307 901216046 30124724 213919406 617309277 226798819 731700588 671785319 404975763 841562810 470617118 228401993 844616259 319624119 799018250 315055722 215131385 306399665 224001798 634320880 791586311 883162753 903594340 233827452 537653178 993060050 440694492 60356388 78733034 998775224 798430415 177332531 686548264 590147059 201335486 747669569 900579907 487438557 35821948 477235632 539783018 458188444 529904474 592293022 647597845 568355079 869076293 62311280 446668275 260795199 846035035 926931687 863553912 578537069 849069814 890821450 290295751 220646284 355694677 276227270 71256282 678606829 690132438 730304695 33356239 97179967 665374160 273666730 498258531 687675107 569386489 351807168 316417930 811778547 488446735 66524513 614539492 808401914 399384287 986507201 340979310 797660621 359904595 788782422 610962199 330470693 179870741 60408660 489872200 568035778 106341942 657743268 95518858 497669533 49956473 334499199 49689202 323599909 635006797 438205862 411484310 664579382 808971211 972319722 357223653 131811475 327510927 869126762 484525604 845538971 514286036 566402111 853918500 346122016 853025991 989125311 154133933 227480098 189479290 355362847 767756850 175941618 178439590 951026319 536012880 173479383 445740721 615324792 361993265 524278889 814253623 835847965 176406233 742881825 40871493 702768689 823416739 379602152 787010410 242555645 648394785 350497346 361380448 438950318 560378365 959606301 552230565 524886877 972185062 3818309 285995359 862891413 646536734 378638456 413316807 245002434 681129437 684705230 884868454 972316976 261195556 248565038 966281718 935543703 420457482 546524970 887714766 5474920 218801088 791950532 701086927 638230580 717253272 580223417 765655186 487939972 440816086 853120435 360596383 848514095 531685674 937008379 629546652 760562863 204651194 429896148 687379500 176115548 155011944 605694585 208325960 479111736 734807067 878140888 410190329 239126882 820174871 160939055 326570915 550875827 714045286 574476427 143242922 576331422 41772072 707972578 911330165 53912890 607334298 422891321 237339271 621088035 18955658 552958603 724192769 551438586 630779082 743639743 481573966 379260530 368058893 501359044 570051928 728274425 478855000 179619169 649482339 571533394 989833470 820968686 885720535 167408969 590827010 904179609 172801360 654103900 104034689 959229655 761412556 297451514 468937075 647939887 996748208 862135666 9764337 388124536 508307759 784565312 996533915 131471496 164303943 462418150 620401204 870182869 341073266 374711458 918377749 712736536 605371349 313922669 430727872 154238127 903585941 33816154 8352750 224799761 166332515 979540324 190661514 30250236 319426427 869361441 891941488 595741282 666801487 54872447 375655161 99027789 662721010 189525435 395217381 534662470 872307697 693293436 416778306 928187050 961207179 772572898 700912265 819810198 523344033 528473488 14917590 602222649 871951656 527662319 806112710 500329515 810318367 306112020 388986081 390559047 18034251 750449666 709493681 303692167 521291431 419840519 527911074 114864721 106044174 50601837 298938180 258210765 858828260 144674687 841950221 266921487 315500735 15037881 29773482 742097151 791330738 980658470 703177389 439641206 806408209 7007947 641749887 669451303 833545432 442092754 233937467 603804869 973410475 204818183 54337262 221542520 27503767 450552128 93598533 763849551 275257101 581807169 87169453 783268142 8256905 229260810 681323640 855756255 147940301 575722325 272726698 163063461 584151496 839568743 825430674 452216992 100844483 789418147 794216854 869709948 433407034 563368586 508970492 614322146 344800117 374924335 462000378 782428820 914344935 378888584 705774315 779616960 702795523 839678523 568162986 149325847 207071146 551775024 135370518 427961431 212056703 562727982 780220206 210298690 68981080 214275780 961949301 157662910 427392166 201278118 566476784 678825829 344753593 89172813 976728509 656968870 120975265 733308721 503527643 368016114 294330090 68125674 955060502 402880904 631210133 182163517 912533626 225022044 760735419 708414685 217399918 561505670 576874802 842726037 426841292 538561075 728804475 231885294 326091433 813971147 480420667 974537234 469087624 427588008 295565646 6198116 506857191 590558102 928089994 773448624 951299264 87066002 225970879 388770475 545480223 684837889 264881002 115520242 125476812 192591044 564293481 527200820 144270628 133106276 358690672 270543785 278434224 594205241 108027736 405539647 82031967 909238359 453737907 738654145 661680138 633739170 280922373 479733299 555272926 981061531 288094288 42044371 454213946 907406537 272597840 922370091 488706035 479342424 463662128 489241013 645517302 640898732 125772305 714655813 359630869 311900231 831245904 57723949 869807036 767907926 808512965 4571177 305393731 594561719 898811063 967964474 154694770 191308184 232058604 426586290 647008930 216117438 622755546 113587575 662600522 182166909 417454998 598793603 178613626 551873893 846738614 310956270 197470039 752633171 787838690 385471987 993530940 661529932 231020231 136896887 583326302 406045716 923904336 840890068 365708080 628773506 723164984 517135698 315692028 441919175 51820983 396550987 418822550 278990308 238521333 144249958 408459917 922535152 220622813 92600344 235733566 895399359 999573523 628733902 715009096 599755301 649988871 221728636 581803553 171279555 127679803 884433135 330404755 274202549 209482248 249469017 546486652 814051336 300123193 477285413 611810948 260161525 765100804 61007026 107711047 892095014 718799295 255756643 950285501 530258025 161094237 623437292 123837491 294239891 994586488 822862825 423627940 502895264 438870025 416959047 181549398 825177052 454684929 550366305 51170464 551291658 425185530 268312811 635417596 599964068 904090902 645022278 898915224 361278945 633479705 309401774 115743743 748716362 776990361 325259552 401958454 450669740 281795364 852599769 472784872 796942466 739509690 806609851 298390668 236194283 340609885 370537897 872454293 902838142 489035543 804005514 418769872 738865348 940827555 464954010 46345020 141422657 292046481 890730291 152959829 877048906 555459282 672690813 721610723 850654622 167662482 782737156 163413371 826449770 118941214 460635366 422593861 723671958 335910158 400195556 481866497 469353623 529820153 802628621 200937425 590062478 25111591 548281257 425656309 940320583 686634740 885742959 703605410 99200097 96429928 545074276 238257546 835822420 927994424 344437967 139867566 221798419 633204820 334003222 153797567 29126823 187236812 918192435 958842365 936596788 393328149 159286005 957263213 354138345 614010494 7800767 360948211 834887444 116981034 307658357 709129836 501206852 732251773 533275697 843082485 356881375 581163752 211994238 266116308 144097221 933567719 879867750 552303982 295576345 323793796 318806878 853056662 209230675 133819488 520312407 366075348 446037490 51627165 51881356 437884685 28400472 684694593 227748259 273413366 185680945 97059269 807208974 35696473 458831395 829108893 544634377 223173443 155379895 432040752 564189776 43326173 704413934 694173721 89203322 577042512 995229807 212293436 343629773 543922019 518342778 979495781 151731890 188478473 865779341 602130883 281084191 728376199 611471087 653690560 917434600 14488054 76757859 415520423 964377231 598221787 824635619 192359207 298201837 539877418 352993923 881189731 694661079 538718421 989324587 377039040 869730222 738757699 342574331 702379034 476589303 201435003 57278051 715444751 653849847 71332845 996786977 721865003 204397983 547859856 243249503 960941239 51537045 489061310 61676041 103416500 939132764 392332531 643476172 490078746 928114194 961470424 20496791 24630972 936453940 537320012 719722927 107040803 945118719 339898904 774774974 519479781 440980608 195170523 213315832 650956444 126359571 172500643 776107620 936349901 533842987 758737024 99181260 42855250 721331328 316350427 907019817 357065692 509407878 196369343 250994054 569961991 426463550 211862773 367111031 638177807 635233546 739125736 108380300 831033222 980279592 701512681 844940700 780536504 892716669 432609286 472705892 662174735 108517112 575680558 818870505 862844133 527760834 317864333 132741812 171494920 477399627 180425745 446286632 673818700 429244567 276323956 985425903 903288738 179040337 835554225 395239639 886065641 858354072 283382213 925899015 431430261 560301648 344074113 975464831 357148469 384659109 736292989 382338411 585936483 924642556 503117632 405555952 518314569 931160191 324863080 379787365 705583791 840352146 236301451 161767705 566552864 35547720 16476685 922345093 627483597 3307934 105443426 49408469 744228431 240912869 809932162 135751484 796932186 984172568 758051430 324222984 525045979 429663739 538259153 404388087 328723934 839461407 267309767 188645985 527090184 740123617 649718724 389914146 129473768 630372527 318228757 459748753 115165369 374000422 562781101 479788545 140119494 126182988 379594396 865534151 754398342 738968403 990770017 545999688 274931246 301902838 414566591 567340227 673229686 274867575 674703670 939575311 33970928 75127150 856230806 373775889 983582684 572057075 715123859 531168814 465175366 546918673 627535337 266947137 439573278 42226775 668524434 647937691 386898862 40182161 828709203 691732289 440367539 979051043 576634792 819728702 990806375 970761124 320588043 19663763 144632655 117343418 831926810 675556302 757521361 777410660 6750976 805035959 407665926 638965698 870677217 497918607 869112128 321182987 249815859 225365404 5827257 763348104 384966711 393054675 80824497 644706335 284916466 488404443 468798537 473621390 977154159 41998556 566481806 258880245 146430485 376549575 924693869 575365738 680547605 263087420 855205481 415564079 604020289 307789954 814974191 672220299 560500100 424501251 846297969 654435914 139522005 864493590 381068469 907234261 307324948 486922845 555797915 155344263 180646981 695876209 350240225 27438123 676677370 360022319 722372692 47058725 575555416 671574937 784710206 101510432 529602577 475846527 29565464 337886494 400904452 756124594 957480717 965255410 668057975 433426898 176164608 366023472 93084444 332598967 82945199 258101857 869863962 78067827 229365109 432042572 756977634 38930820 795896170 607953206 611098908 569816152 727621268 211846532 518944945 75303588 580540199 537573495 181424464 128106941 183103786 466000767 341839124 436392277 672897299 671125667 711392072 248891984 144839779 811999546 664531169 897427995 231474680 448243156 353957198 856508494 858518044 136950610 664018759 984820579 514382843 476746814 883807672 985875519 514966511 363738604 70433935 605571195 799670791 585334372 629398559 82363979 648007406 358993442 913695448 153464907 202114812 220493342 494656633 893008809 646653925 986296308 485345326 714546266 635660661 783659322 483963902 939228715 539288453 332967602 390329632 599052707 950729727 859955156 372291090 806531136 901092626 294169394 86333916 94964797 144774798 192989623 764623755 830709202 77742724 640089830 901661202 581324694 338018744 98408435 843553069 965715568 745311136 650930082 681617523 620181839 159701372 442378876 989243366 178883844 209371625 764277666 381282764 67934945 95998498 364453785 653004168 948156016 89402334 957975083 394690433 14782060 150934480 832865654 844498675 493390874 489951470 743747460 803123253 391121762 973035962 999250884 721016323 57036145 427800469 551796627 19411837 804042026 746923237 275518277 389712176 895057916 543841051 349497630 350280277 127634132 994506349 70045491 496057679 782163277 389863558 653580500 925690163 865035959 736169049 30796203 952035110 775583978 76762321 724235899 967298101 943748738 20311681 107697261 353652634 925464699 584688276 245997769 946254985 648314805 947412618 11101665 767242980 649726922 990772369 454215676 883824835 315706531 218575148 503874431 449858411 845847170 688718970 856294876 415825011 240768365 149487493 964623159 237933075 383301545 359159696 118817691 821963241 779627104 576995915 881791516 633644627 165321684 872473890 454507734 884663667 99081395 277186904 4666364 628483620 993395665 124927699 904777041 156250770 876487264 980690692 274013564 153331956 956870622 492988496 64388162 569107157 914269330 190263475 583802486 809978338 31443250 71242756 908453038 822347783 746558109 145938966 670366958 549782338 280278642 538293778 972235808 106056186 679784546 690477335 581639177 68402768 435986732 186216788 779247216 796237050 203542801 606535515 490974462 431873209 210984615 973242040 585491129 52757145 249207289 648905937 331748999 508957318 883105828 917577274 751001886 179530561 371283070 385270454 64960906 258047153 102264361 510137946 458297311 851668350 378948598 757962249 360891610 738068642 610868780 238918203 217859603 446319507 332269813 699979719 449391986 865795770 429598625 201938276 738051004 358633172 163918786 275586112 848230456 536495054 23442046 503977867 897614027 557842727 601495193 168833747 516012174 743271466 328717635 620870591 251675078 246453339 953351266 964081199 253720419 705872862 97987214 426432187 153859683 782211986 776470530 24260054 908560703 4754482 686111774 3606039 728201209 383459397 825831807 947009969 183899545 817863762 560964054 185826752 580231057 559581562 776430825 951874277 798175602 729903795 423830181 638208711 582896286 819054703 715078053 276730957 720731535 123727037 888561934 688977133 980836815 534952468 835352694 984110210 239454603 676510439 190956663 288764246 224004720 869524982 378880453 368735337 324570962 156658419 911578296 561976137 389882064 838634215 965321094 750522680 411629717 4318807 81657415 98473334 609771528 802707940 841678333 229123390 652320008 312908547 665203799 17404927 180104711 778497606 615655332 703612485 526071133 547264828 106894953 234378472 800294067 870610857 201217114 103042718 221927214 143371396 801788015 512762366 299110223 382824000 390539930 112785700 99311195 909833937 832361938 500141268 386216418 714344614 336667357 712666778 488916710 119352246 14839026 744176474 629103969 514782802 633825363 8742139 509705252 198481320 49539454 56212168 708473850 341156198 392431610 569073440 742340192 663486106 589555239 519789935 794533552 544485071 322923140 930333032 15319830 201866638 564982974 364698166 778194775 703556335 882643222 124200337 406633786 119935739 917118981 191745812 107677851 610825089 590294088 690487483 31934307 484768466 797153789 575338929 334430172 568879910 298800603 892584501 355313220 127076268 637612645 217540164 496716201 74765592 560892460 649531530 322529588 389652869 817105443 929166325 346729533 235587080 195001165 426104838 149902097 626249896 688069097 634855309 4493024 307061810 516115010 930235212 59567580 168950611 421532077 606888217 845389222 962530319 961901360 418549691 887862535 165514427 421989262 86324008 527812915 839772754 13324780 962270364 498642018 187824941 940875695 834598782 622944494 653737856 946125004 310406383 905253473 762186283 69383122 841169853 749890379 116599286 51160737 334642696 734286519 950709293 958919712 785776944 371957625 250572276 576552007 53235835 244255945 309495461 328615748 469375985 165141589 930202473 823971462 967578581 773240752 507337579 334638443 519704020 30229003 603024032 126127095 886406129 972841363 986110324 333546369 113237982 38016588 755663346 955746513 830859935 613451490 564767082 517043717 505255104 71656335 532629162 67183228 370585670 897161541 665013983 37420167 85868135 428949638 500030388 124756705 429696476 36050867 135946493 895522137 537683345 868375417 912024080 720105525 904164603 698932412 306796326 509197841 630167184 601054719 417660925 164611210 155579676 298813102 269504501 297084781 439967814 921701942 398716309 918805292 539827048 969987353 94615998 418310399 583106999 173715632 635349290 450440885 53083407 930327478 61213429 352457776 830977200 42270296 997312560 424537614 557949906 708406979 479689184 945616465 741783980 371311379 79786127 320957645 576285 884294334 923897311 709150835 542581840 687492764 934934008 549636401 738783542 721634844 970859929 70943602 456037133 699944811 757249797 711646864 923425147 841643194 296611909 668027506 466553817 70058142 913907089 488177269 529704352 155485270 192062274 295468742 437335945 236201543 218543809 403071098 355454266 52705346 404275017 796147112 182362124 711617566 836324994 12436471 938172881 321583920 78285431 430075990 99810037 126616166 246817288 889397200 774091810 669622666 993979653 472556388 797544250 135702225 476714011 385156327 786557387 470634773 856588075 789356928 351743249 279436684 934358657 412583152 111948835 140694163 13894571 494297685 276635360 632454681 136331656 212028340 86209616 16473937 418131695 192389422 349285757 411019518 551807246 894361970 651767577 620081501 210434879 999799559 77002206 209366318 908271603 603415316 610127409 42864029 559725988 98015116 189764164 851373891 170989631 297583883 415155472 55903983 620131476 463103297 324833331 888419065 751312483 130059821 107329510 369245851 866272590 732534697 600866999 442406133 851322678 675374695 677806249 215407821 730792906 966195892 205246303 12692723 795701067 463941737 601833266 211258941 431785547 359566955 278710539 125542710 819272869 506487182 864488340 77388516 116671443 184274123 325179884 387514610 193623520 34661581 905973154 342193425 697312044 3020857 925067821 408454822 666402489 180727066 172577698 366164952 581131226 841793304 413993808 318675402 553406908 905485262 126949975 423453268 735921557 444045749 250698419 64357384 963341514 827113340 544643951 498543131 935548464 762183377 297856377 515827025 704600483 207858981 595973982 568482809 26159895 900738540 6800252 88641885 767574113 445781097 208997309 282536057 119325855 700543894 600146204 67847131 225727754 197259307 312489864 92120238 924488589 19208644 495922755 942557867 781781256 81190378 811059722 600596702 89008505 86089114 944931335 24980008 520164400 649178768 306046181 376505234 283126012 521024697 741559148 960768204 938683360 683298930 74077282 564577073 595405655 56383403 367672037 752374657 80818089 711889037 524369987 713104164 827015630 467019295 34821168 689303551 105936465 742511111 504518710 771952199 218267012 698277629 598629693 681876274 479674768 919766534 633719999 860971357 95711574 328446568 117014747 201819377 351001146 667326021 366332941 778815913 543304071 710982115 760424872 808056920 740294581 730164432 891725310 927512624 531351065 355930981 111877343 836386759 575003474 142289957 434974768 10024647 907721957 91106420 195727595 651856947 454636602 509194280 906403426 528109057 166112589 669720684 763892209 869970677 730344250 355398499 103151454 32276914 512945276 892903986 223558046 54680452 360382185 557474241 832352294 336726222 138615043 154448557 924294096 375293957 2841710 710188883 995253045 369821803 771540361 787928705 605137393 91484393 362869279 594966214 318840363 846168111 699684434 377644567 696071145 167137941 61050789 374256082 186567074 3342650 525199179 187059199 776931108 57091645 82097382 389987825 357428957 376070559 438873321 406042606 238398026 696511234 844577810 307890489 589113369 391407310 542563767 562901575 790482516 121942316 796420759 80093744 205023928 351853145 986349908 659824083 906687361 150560438 602556936 209028016 951466326 42583148 653410795 477434175 864448885 371714213 18010154 183201013 404732002 824265711 293743072 936969795 174577712 82206143 185203591 846379701 985404555 330994123 926660752 425548340 165446649 990453916 203011746 617675169 192943923 120329764 512262790 202891475 898427979 728589513 233117577 412247617 355146644 782490150 752078860 38468257 768363229 503567828 30299812 948800549 736277362 698328449 53938139 587185509 700203558 941006078 885119030 150014228 325210826 300328634 84745286 768756364 823839831 610254384 128072106 470510967 70025510 771924415 246975744 601868528 566506486 537564660 765477769 265484483 308416325 161212696 863042740 537242733 135723244 514700376 711692818 158309747 790199090 35230745 83188328 801093972 829884240 505981833 524858115 721338417 81849651 209557667 78862719 327881798 112426485 31795634 223215870 355190959 11856219 883498840 469836492 434140719 457172605 322396255 889627837 832709860 375585784 869554769 948416526 136592545 95535220 227532994 563138529 975285545 817407521 336591857 886993036 729677713 47701813 939844173 903113339 87073950 975480648 866230274 150296730 241583287 1946641 752093575 689140094 244659159 549634123 474666690 601553150 735632897 803068588 900092857 763960657 247454840 501860343 499615053 131883391 375261277 590517044 642022347 628426334 362647021 901751695 411961246 876537513 496231029 859858151 225656716 356323984 200903687 184078923 552682800 807186381 736590489 625812828 558595384 229335848 994689517 192122810 118402367 515558043 911801046 643553335 207304081 851425618 556981897 301605503 576601845 215539936 735723004 830148134 338158508 707086436 262546022 84682286 173993998 901483591 164090958 980102567 324649878 834894195 655196442 525641275 229581083 525837118 599768290 68919484 3022725 435206335 608999753 761371253 876065967 30526532 457600775 173117789 468722079 806387527 637777461 42783165 843834302 631071214 287278170 517878090 501067222 851749307 618464578 701097738 547585202 538393081 316409827 498982834 460512592 541459820 149710620 226498857 826692008 551397892 217436272 200736438 840233583 800739123 669501706 132874557 471907177 267154791 11743602 390508023 885446371 618878307 198173003 496372067 312163205 323591768 981359024 773819145 182263644 336458960 364581784 688952430 236315377 803414599 538596588 750588906 633607768 308764949 23464417 958958096 574605836 793921913 541118996 972378152 210607558 3090314 57567366 132033352 677030758 996740395 861347629 681387953 334613548 408338230 347072576 836952052 274667715 430085058 784581926 881259697 898471090 864801298 972452654 538132958 259315348 766162534 777947479 207770040 632693364 146679940 692532302 993117648 307505871 839433279 714163291 9948278 584049840 818495802 817770019 875500695 107142978 290240411 978067786 890242130 438319363 472940809 801292039 823504862 288839777 806154893 603378873 558969206 368705383 341117754 126338077 632778158 993614167 889530798 824950737 589089362 714475297 414985795 246821130 379101671 30847335 641890788 524954281 639437157 701500988 27744706 171141726 668730407 560593620 812667838 390315063 961769311 29211516 700461599 253735772 701506751 419070354 885533778 236013726 312293753 900149630 342258904 213521464 894970333 541635101 616864133 466442749 90121710 24692473 526306124 349513680 257237336 749942486 195385841 636818943 793371681 822321933 970496311 13658407 193732829 578970617 615935479 665985178 378396195 189902641 421663955 660604952 643624084 386906220 970380074 375079516 603522699 709379000 431984919 314343602 92899253 512854231 110632069 339712254 282509713 687734169 86450326 477543480 832268848 167179126 881300469 787231540 247282205 282519269 989626990 235883832 636931015 682705514 655779723 11429272 602096611 235125219 92311989 239675001 471498915 427425076 134111255 195178928 162835857 967697011 9487673 771366609 517778784 152037604 540810423 732726366 88114851 266322573 808358017 506645737 620792374 94132618 372110783 798566035 360073417 639843618 787387915 612647208 36500483 117631008 369327845 76074617 830680109 981472574 401807363 748461118 507621827 310094622 835469326 261456048 533088670 579850364 737109442 823830925 326772047 507028750 858915607 888410055 517842689 374583730 782288304 633475513 851011781 1467898 488844983 494660085 723759045 533972042 222457262 523328240 657236214 381527907 171117879 612371482 879862594 408281748 168240421 841260310 651506201 33793097 728716730 349984475 510702619 444548998 653812885 916535102 996245649 505168780 593880422 883750200 455478310 785478590 872319831 748957208 40237484 710004898 556314677 18542240 386781611 709345317 661428124 403756525 675930821 885341154 349102616 295816711 237666873 359117772 320900784 976162097 682960593 208723916 689234548 367974995 736256834 653534465 685919034 998930601 987139209 210799955 123513843 211878848 602566194 805505284 725328002 902054622 942088658 862530246 807176930 76830698 414496706 443701052 29254569 820324394 983275762 525821165 892228576 494566877 740103683 464486433 496493950 976446124 608129031 227051051 361609125 478600716 782070366 196538257 731266379 463689615 778203412 375141985 959410894 911162158 289812741 398669470 544709600 276291602 534275139 831424508 914448481 608237181 546952006 983208027 132440470 832118107 389982894 748265446 672853829 576406787 329870288 219666246 428772506 635668958 776714314 84928043 535446632 796458039 556219871 596792450 499042487 33958727 823773613 643596554 121776877 880875529 280889653 752038069 159013553 840320361 564586033 164421578 295623055 344382232 745192752 315825057 830003743 973776991 68146843 392874222 182868970 872544956 941823644 929924374 171523474 974154497 325387587 712143777 257362423 362021526 681344492 157411065 822144227 560652423 831336450 983929204 235845175 143303064 18448186 87591085 476545972 633600659 686339299 860208006 916739099 362274856 470613157 104020816 981270460 54028975 487442172 874987564 88155288 228334642 186419604 856050406 269777218 203892300 632078086 205429896 743193170 320710853 794054730 926993582 154190526 288619181 536335208 854472558 635135413 272553576 421736275 271966790 891192362 416977784 366102798 116605470 70601848 307031354 544809664 569809697 448463937 685458560 356687022 378739455 802483485 13389907 603670137 449582509 509628123 827331633 51619345 939848937 5155178 401704720 100124097 2877863 613710163 117668827 315543639 700825555 544384273 992193836 99340478 633000796 940110209 714044920 482440878 340172 693374452 966665232 551601897 81290670 483201881 639656461 805984822 892846988 463063967 740979633 327684494 327808596 150559695 211620406 355385152 381089670 302866462 687430903 824071590 6835528 435196124 224054585 954406070 241890448 698657552 261777447 137246799 574736761 32123195 795397612 287835877 567171873 855477551 387186762 473845362 434099465 166545098 41964941 114330153 902177844 829927223 966439989 783420798 213709101 96027848 75749408 327215672 708266167 584357377 124217184 376985004 951780893 468107175 928142734 460491026 480394555 781534567 209434427 736526481 504228951 743888483 312328082 564823542 706183655 681258129 562997351 908553284 443224703 481356977 2726512 506187904 544946981 622054998 115677540 829303309 302246506 720860329 294028159 938559106 309810132 639294244 410793628 437247918 528074077 990787614 25759576 145992428 356547001 550812287 733454862 565747339 23262358 23631574 858158960 579154459 777583833 719070659 208994622 60544455 76536846 811762255 16296200 891166437 732948830 667248216 586931240 872304720 434154693 708780078 162222798 599733522 318516813 70362122 406935365 694354168 711967934 448483108 986273388 215389561 424132373 115921513 364456687 355020980 448254722 509947841 399868829 108690451 504769399 118227470 476644721 518675213 800415906 229825118 54891957 683622444 392355038 220977824 338424241 649965533 432267101 902420927 561335794 556444444 395415382 680255166 267462262 745286376 471265605 276883471 942677818 184183107 254148570 593163384 500159152 838941662 845897959 680528516 843825159 996271700 41456168 200400146 152016651 739013854 323599282 717304122 581761153 913187727 968811262 126082943 945769190 38099438 219345335 29271524 251848351 414339917 962430156 360038518 251644065 886863983 959877530 943205856 431509386 204649866 929332990 479642365 41046432 827769185 542842068 478299659 558086980 862711786 541951821 865632091 105365535 258441868 584360258 276351591 51416020 307483482 10734250 52960883 298543910 377000694 94197505 71661300 877656158 983359669 486806674 170312982 192230426 247821864 49387071 350069215 782973220 832570012 78300381 411181125 668635674 980470058 485497998 482175262 167928243 416165783 951812208 409046435 942564219 452231531 813729865 350572502 730140836 595400008 38010014 579924103 771461800 286726482 253447641 880615506 640492017 777319251 208395382 631139521 144342549 931787442 596039288 32589146 697449205 563141077 8585797 80275049 193533230 892253248 807331940 579994797 675247058 870486405 841054333 978210204 885668400 266957042 987755024 311984409 796560409 448857246 424032334 237531693 815930032 951375915 474522317 811412678 300215320 578125007 623132797 212680758 560085562 61239434 155475046 182023255 810671152 446318477 287371925 365907826 345319060 535353906 241781320 64111359 604656522 704903324 841184016 185927812 949027670 279203952 857326641 406079804 775650491 964779386 939939202 567132582 157032594 15200859 56779663 73427402 38053386 613021940 570736884 916988388 598181690 367759713 344770013 384542291 436964868 605382466 106182952 513895043 343560835 431250996 340916394 35817400 50844956 98754350 709165687 885405912 706369571 520781748 206132652 712741424 269872987 546050166 657942630 829570696 616824331 681049061 314421875 275496234 413742762 873933948 430896471 239855672 830360117 958205447 928855716 111873936 944647338 637699752 535187364 166829284 528146153 215343775 752601217 202962048 449770277 936237653 770994580 533112721 811184893 934904261 881073037 501538086 62559159 579907085 405962962 927816518 397195425 720907550 815023913 212568634 723894980 41577109 957461991 892751514 14984606 960931541 970539983 226550169 157901273 863024469 829485237 205971952 502931247 224144944 195637205 400726999 598856684 303826244 561623502 494150208 249131645 892822951 988347703 906258249 228009671 320938969 909088197 103627445 497810430 955932843 866233710 842806446 618421381 729623852 452684032 173908118 288151962 679336536 265681857 523885998 148076599 876077692 20532691 322206705 330028356 535947482 635539269 918096597 643315630 975908489 809373875 283018605 869738113 874196222 255631043 389809739 126531349 262641211 485388826 971672609 379366968 392767700 828575252 561921379 274205910 621750450 388488124 422401849 770498343 770576461 582320597 105849639 308629180 338074235 985913855 644663071 238172382 212048278 568082656 895090403 829767885 737553902 664216945 552162882 145544436 624306782 835931029 928761145 138415991 137873956 613967300 749732350 184762453 319254690 372243379 746828195 893318771 225496533 514351977 119469069 622993586 929057642 982444415 947321804 156084400 3680466 302897742 967209221 558845876 481536307 847253499 768018781 577459241 826880296 966784198 460592311 961676144 12593956 145406807 122003398 585419725 607486023 959363284 238946228 70067841 385104234 687132726 497655714 687224913 692278917 982112284 606601736 508616323 865448730 700942789 674042893 212891643 994629281 208871994 909055526 177583038 671889885 948998794 290158842 467797314 443635316 910178617 608648473 621352833 851851956 259418786 68075507 949924117 445035396 131119795 924289431 431208808 775386702 579347046 739434576 535705036 516844434 301506593 609102251 465648456 932840305 457443979 537097270 970938910 617775151 416453340 727045193 351748641 588735103 702853092 501027207 43527382 403306671 180712990 795048169 832314703 399008973 679499553 493078813 425732403 276753805 111525632 750747759 784429960 498173082 510361995 746682760 504661757 151119203 805728755 416150640 891587152 741425548 355367754 254701181 425934987 268887710 254027380 681318107 245160391 902575616 461154652 792933462 806774949 781326208 565870775 71664996 197351913 565455845 235524444 643334582 134169103 59333476 261749209 959813864 629631418 873991320 659953436 35584806 832492122 317256151 263449287 5065476 406448087 121084719 586749295 301798574 381120707 684106572 190653435 187567208 535204212 253711079 12126060 845495847 917958148 532587256 121714454 565381253 945327971 611372905 338858462 422240285 988628471 497044002 908367943 430400389 548755113 826451543 930814170 759651655 255808987 69442084 459374927 989491972 957012804 50040174 493016375 804919986 692332210 994230777 137380408 145966166 772044786 987102085 109926415 266249654 449602623 431800065 832775003 395664801 173102259 481484277 494696167 830656205 857389590 87719361 672776199 579325888 931340171 360052510 212259467 315616549 141838064 203472920 755768615 640053191 386754171 420364636 974279854 518088989 196044376 314178924 485997840 625558940 582997603 327269828 258658377 331667247 949633471 929287650 828483032 79075392 171520123 88431492 175605206 225201860 519776719 995844999 806366244 137133320 692762619 664575463 580476145 100065173 331277172 681941089 280014583 878356887 960840426 741793887 550168668 277716464 74525631 1172212 798157564 615772563 458894077 786238893 385875164 732094765 109595578 968069699 904262884 578794108 438879757 705220517 277595178 953648213 42526360 467098887 838046239 85234374 293044236 970515073 988180893 488661117 120976151 804109332 325556847 589512827 111391654 416517644 999299413 113906253 154045306 652414773 300614152 133210116 960417370 696871468 295879662 811682456 964384084 178250191 161523246 707156043 467272229 618291808 543319536 441448594 55665055 502974559 266333279 947874120 619859988 727061824 785394078 353233106 923390614 789778779 876780017 82063193 605508014 525236694 845526689 368382036 2115072 709937892 757019103 934347958 324173868 479620525 138982705 372954826 119452366 106839257 106686533 498169302 863189238 377985883 628242640 748756927 465320405 189578862 173142288 986311561 451950157 452553480 77678088 78429527 918202598 639390914 113323278 459163155 239816581 152407162 709942091 85911443 639590201 183821172 503347645 588721104 552073511 603674388 229970684 734950348 728055650 875208391 636814085 824004719 749847986 857573526 328485550 771585286 999443851 388800688 998568349 817676512 105556669 326326129 784707787 356218605 220008969 801479425 582832146 868312046 205561180 679158759 747393333 694507232 372064053 776071935 299320417 819605285 608949281 911111451 970931142 66907124 498658344 365726600 832202539 431487679 298806010 759700949 147810528 464441783 374771761 434473458 614294100 162532547 920533802 996025017 643197046 28954038 485825076 219693586 591552336 898022241 242650037 297798019 306256101 804358204 521567008 553345529 156100212 230409268 611413770 558045047 179808890 895962857 711134982 825516755 472460924 391681970 719869632 575440777 993333326 671125025 918397163 380870601 601556599 308873839 24984871 179732109 359265288 656297023 894345011 672123674 523766803 974567177 292211897 661924177 641331497 856733869 879513445 188102726 641972153 394141987 49285188 129318936 14830105 298385133 782309592 525825794 525088185 812190634 680763176 408546682 860546267 674003230 120162090 671237717 636973900 614452162 391936013 126166860 502978813 752775294 875533042 802172367 282646956 25771526 611617921 734786317 529511161 330872369 473138553 967385044 438871059 98480613 247193057 335040212 191345508 434286434 330695549 140348153 966700377 903763186 424816981 80315111 63388528 687926420 668143847 709090450 80731840 488638315 344176652 509597147 976983011 555454310 182416966 872807883 300936390 583351304 844647843 769264533 38207599 889009775 748576537 110049048 407380137 59574762 49176764 346718987 328114742 333416577 796639828 533855286 836584388 940980571 513084756 658530588 920545251 809341907 81182763 54432981 993568055 491546866 840235762 162090327 304207635 175011880 726911463 662824740 590863687 574708506 919826047 479604363 490747147 624319140 672741525 747609807 592951530 209790338 937810749 224986396 964630348 356470180 245487207 123931138 298829436 421479328 324515262 791359575 570144227 186180991 515915682 105707764 734893303 914917183 211302645 277631465 84301489 383254743 270414380 162820996 441150657 310623644 830613083 550668685 231034339 108667585 932194995 80923727 138840814 928841994 258451118 972220783 186908803 848264283 149473820 533148597 775123222 364933389 845490782 823559699 614898462 399584653 572926945 437585850 458116932 49970661 609825046 463056266 197586198 138919763 269772376 119604445 733382551 857263714 804704366 33440477 138242552 383042579 16575149 966384321 846653464 593792190 640948880 782902766 757982540 626937992 649233353 259513973 351644265 525933316 104486100 816374578 420417848 298094060 824397825 482106259 990096723 700723472 707837812 527528900 78900079 837705527 70534109 460130543 712891387 271186464 392298448 641296556 4086792 204984865 734859653 497716066 137825981 555804612 13330850 985664218 612089711 479872250 411589287 763114387 925242963 621161711 701809658 963078873 850184108 742033216 938734506 595777863 405152236 102409709 364644455 289086949 491311970 88628094 150324742 602441843 896498480 213173674 835198291 783250524 130857605 588691617 221159322 703353047 880619496 745906602 981344410 947757671 811284739 3059863 563285212 700557197 107161542 138251649 509902105 830892606 90739716 363152841 614169061 599504796 364283060 425226824 482474128 152497155 862625675 877293924 404145484 983491251 459323838 664094599 325663561 117238454 638290785 13293844 77014674 30627191 423615584 803245051 534437783 321497904 762969836 508493139 904185340 141022035 406850484 55044991 424092527 816338628 611698809 738832814 483691439 464154018 229526180 737358268 335183357 982149844 469074614 438925257 672964797 379739023 281947315 84772897 808277031 268210586 547245388 777920420 875681161 692677771 631942612 985920060 385913812 370007908 378798686 120738550 234293761 225454261 224625011 666590523 452678741 666387351 962995001 695429584 549129078 107895535 9894125 96155550 969137714 604255587 881038390 826981912 713628133 765453828 688453044 540762322 675263523 361265468 281369612 383206298 690732215 224167627 264408031 284468781 883335131 242455908 4266410 699494604 699352141 796250662 441188036 982958531 149247838 30556007 973810024 89953866 128486674 660215147 636749826 103449940 814565676 847853081 688931888 383905191 999226170 372004901 617964728 408781103 280427093 512566713 801279942 697422133 947008861 48199814 393559092 18710469 132756 615087680 27580144 877969652 677874690 284151262 429256813 378676205 778860144 111618361 727957753 328305381 746286281 140297764 949465247 614309373 701500093 965226695 313953505 721464973 454248110 965606918 497357616 266827095 624244079 627328669 340624270 51637022 609852963 928031509 79995292 676292288 953346415 534128353 456624298 348105961 2243429 889503606 354286883 836291401 102993259 847870093 816827792 181650741 639547356 609283583 811218851 473151352 63118127 4119098 519693661 418764223 868042051 841934854 39081750 728045734 674440405 988884271 254274404 304397295 80007093 375721836 390119028 432624940 951044912 441110443 758350724 215293546 773068335 885197292 573648701 992400919 815945036 70880065 4420093 965772897 12783993 778966394 590631791 428423184 219377590 743065498 997856485 476305931 750190251 797047901 861063598 101068510 603906195 318914437 946575640 681188918 753840663 611150873 217838825 75295856 11925100 465846452 424166937 112129530 874605266 414567995 195691858 289297633 762724014 486989088 372663964 927671182 550796848 574925770 271294234 725005640 867945609 334674815 465369978 691054936 782228792 901798057 100426127 36250019 82503202 869552970 987041444 846254128 981091463 377295964 117631526 711452637 122097460 218249734 979199318 657566254 656330902 591444858 638830620 176113421 261674234 22182802 438078911 309303125 608301562 467374845 799936195 801836673 809040578 988726475 582310044 198972649 746220012 35841642 464854853 77316945 921945700 947787104 178796861 369656049 93929402 600675861 616010103 819468755 927359215 814169894 817737790 754473859 794034507 443443340 812767643 309944677 124718697 420353713 568859869 863267437 583906209 787745129 742105958 133494282 641712717 703850986 55175192 633876364 582463118 529997129 196601502 750314117 816144193 419226422 75980384 633500523 708364665 329446327 723544452 917106852 943120837 228263605 506479376 179910302 239037690 913801970 370321996 703701382 147374550 665743533 997928410 330085697 608547068 474677569 20342477 139926157 823596168 844328938 856771363 7997960 195470015 785803767 425089094 34051338 745655663 710850963 228626610 643480223 623040173 188062141 906374592 387053275 396086014 889101208 426539828 35023820 484030615 877568837 575451042 578757688 634918618 180235900 19024902 210671672 658568360 563370239 697360529 273696906 469316878 634679650 502438752 185804533 474127827 586960073 306846272 392367156 494781541 320211390 660658140 789535620 844693967 591046091 119414686 784916332 904383014 60877869 929119707 484704576 390211787 569563305 475582459 257140246 424964376 325160738 249615443 406029219 257549426 9622420 111201016 895572371 55130842 114857826 58001366 681201285 626630367 906193898 925477984 847971849 844012523 401866347 844168194 787209506 105323290 604435103 585009192 177574359 423421482 201054251 329114239 549602847 212049582 568860683 174860420 274913280 94107947 720298020 82045533 342338142 652744828 421881787 365252197 851026425 632720773 277992282 837289122 722724049 858552456 958321461 69961715 421060793 858421629 9492201 175760159 693548434 23150091 20895938 715006747 699331215 115442351 60142700 385862531 602376923 622484467 294474657 732644937 20678967 165538704 423989718 763644961 656293840 458158150 83526689 779490012 899164660 7786428 962991166 723212124 281708522 26563681 106169168 350813649 194605636 403109990 279755408 117519924 160502282 545006966 962957120 363872688 709111826 298231154 94737186 341392359 104350718 518769471 44468344 860695385 97252174 760897230 423261061 21845114 66244397 295857748 430407854 835908754 843503571 990600969 927650972 502771081 487972028 991543986 172828468 498513812 527401760 128381064 78845088 427665864 403268281 815835846 282494110 925986254 574518420 47994712 890926821 846611150 782365801 144659133 34433162 598226452 416050033 113710413 311951601 300824325 354458698 1489402 569754460 269853869 554441147 215854259 268230482 989503613 362486017 423969135 576004558 670897879 207824258 659004400 379153254 136774363 708118386 413596390 952094691 633056360 372842175 88481798 760748148 687675600 495518523 83903887 983302484 261419302 757472141 584379929 540866599 334295046 555908887 138765597 966367582 477009894 826709221 212167383 163966817 92290807 44673693 988963919 705496290 94594075 160828714 548895025 370596854 206953690 739232909 454516844 487247790 136991897 300686145 731632292 381260305 117442291 984392880 660316011 917834020 192251490 203207267 13687240 409285522 451802996 358095156 674042648 424613445 565419331 723130023 619474827 135692821 677619259 978091001 770794512 851735832 810160623 397973209 452659844 119788523 385129334 943741772 190970824 201928425 417689905 469524675 891071018 257834146 43806713 189618780 704691970 191448664 700977757 516229816 646956341 107205962 603110252 362349178 753750616 883858490 359682372 424177853 940552997 456126008 55422911 151335102 887877322 624730258 323340517 425234924 824543268 83354142 460866968 129797159 646539332 706598043 43321324 944929478 739053761 412835461 559982814 962832066 658144742 157452525 571225766 152373607 850399029 193652560 692814532 476983997 24605512 426518204 493389467 629030579 464996321 674260916 867601129 649093504 581979494 751355695 884780750 371816139 582515768 989896012 422464123 656824725 708019508 33756511 967483786 844079202 541282696 868381277 256293943 167080704 748633043 434995194 174139414 164217216 558706364 756225070 854302753 846302411 138918516 338302070 507926892 871382673 551911078 156330800 564234116 519908151 425431508 644451212 168954130 231997059 932588394 564582721 287484317 360567200 9867566 160622396 617183054 271361322 532068839 305882151 698199221 686159907 328723434 544783275 12392733 428921736 173282137 486332881 785442019 866080130 981739673 625437482 996826840 763817680 141430042 406450696 612745714 492108489 601297127 236563901 829844716 508373080 924462009 456210813 329611388 948866000 583435052 262189688 134747514 890764309 294450072 140107446 817134170 916180510 565134659 762768522 727874606 425653680 911140734 239772144 508868547 885173713 982347881 865373577 675525006 890696362 667116264 596651563 589726198 716295060 449194714 77399694 328435865 179579117 816307337 592403152 377172395 266398950 249373704 805161934 441949422 688914262 70243472 194412281 616179559 41368003 693454869 49612138 471678210 174245509 701918823 510505922 971653787 486071887 876626849 124321328 120979567 126328933 634667183 408167020 450309799 241654355 207979496 132026706 774641353 153416040 814251462 45233481 557840045 840757455 149684579 144304637 370673659 304391093 42607869 86378658 63425726 438922198 116246380 990398555 693217286 432857832 77498955 264029757 673016966 851153878 471796790 523721827 306688045 655420875 882697218 495002688 715500152 177055390 644717195 396486512 542257745 879059927 695177162 314948736 19508357 436337705 628772835 296889402 926223694 720327093 900128521 447213328 238711173 411794812 30221575 817573461 832320494 441673189 529309314 936042144 838097664 875951492 950373250 346347883 776621144 350838736 816497103 438593876 813223656 615389217 776461448 4903582 416908970 329248949 462843107 939697560 736009972 731294887 134121128 175892296 843816228 353208634 448379196 777820677 76519222 100586585 628369813 676929031 415906285 567751338 29020360 372166243 717865505 294919285 141456173 477689239 647015490 880532172 285547019 254969108 600347417 340241736 115086095 668903864 907799968 419703904 212293858 326538549 691749538 584687554 802179419 256582947 926999553 609435443 926817749 348432768 697907025 6729287 414333164 508138223 541171711 663548205 623290616 273288839 293209928 417357329 413925003 940242671 616116511 526421154 991704160 871225805 412617380 710815277 45238291 742343954 414496728 856972685 252006444 685850597 636059081 379956752 223261463 668473861 154640228 619319776 642424080 557311697 508319530 502222992 337128816 54051137 218943482 887632828 935530774 50750865 986007345 519728875 600624654 839633344 928589428 12769302 855201386 533875872 359924192 947214222 688950060 961181468 612418826 136000361 963070924 812467231 696879250 128568197 114579174 960581655 311196928 103188983 402605667 347402795 206187431 502657016 166523509 841050206 26837011 942205968 497795767 357356842 23473890 711201883 83400419 6942290 368307246 504339407 174616001 891122197 397262669 732778345 953440138 986739786 140383321 652854367 777040658 840600477 549466453 354156346 907942744 93486332 909556122 642358052 281930502 775758278 112161192 965721117 69325580 335343799 317665061 875001910 886693879 742333760 347082288 843910248 511245644 901544975 453014441 212854600 459329813 711782371 829986450 682839576 239684077 399827593 194665734 56840454 855223931 630827779 978016841 695992494 374612449 428964202 975614263 409724945 177246961 376648188 651272908 46855028 954015553 70509587 700295985 519608985 298141516 41871549 193709152 34841189 308492492 326271283 381746764 108661248 580790877 684095036 842990048 960480630 554274600 524080652 283141300 97105860 816054864 23773465 556918079 133324415 627064146 337059977 976263247 871746878 242111313 648952828 92456079 791463699 521079999 702585221 633381235 455258450 776036778 960232871 955076275 953918542 6775948 122792231 358127446 28070895 589973611 35830008 139789723 472919404 217958957 833682634 992942476 961070037 40966059 688007798 579457713 648197998 322189307 675629093 449478215 7309168 960805760 861425763 416302588 136734200 167325907 290105219 547696291 284115896 581446507 653215890 423675956 605555981 469123825 805844336 833701378 874964851 319799078 178293984 871277015 119867388 274378645 734308357 894518713 391539252 976111545 702345903 769179656 793789277 930994001 651436549 750673028 145661479 334034830 730003540 354591277 269335350 863682526 41220032 969482580 954060421 468766047 164847981 500277884 838001937 893030951 916401163 784093007 945301500 786077699 30392306 206940272 572398772 353191482 986098903 842197660 892010471 895578864 116373410 288949236 64767928 141704666 295666275 151893889 696695685 187135213 170063306 843844788 808905325 622488516 943710422 122982708 680284093 739338092 345063292 153326948 389482941 441653630 757649240 207102292 814473518 631686121 969909658 646559036 585222695 930236493 601366568 512069296 689323404 689395943 281282317 139952071 499798117 793684243 452361022 809078646 884279165 626164462 458767918 610831344 370840417 749117596 460108809 607027013 820221400 336386296 685164349 94531296 680706647 989845846 727286814 755953080 481009176 155364634 220236372 109224748 579656001 377965301 206108094 850885174 339298667 938383817 622446235 317929505 128432327 213610428 397058821 425865191 139016975 498470220 241517631 141887677 310343806 375833856 916563929 440961522 372647170 55117162 635063944 437099653 422635807 359950872 656526297 336288600 550020496 437153897 618381682 115425522 437560090 520282908 743927650 816203154 894089219 506112946 537048049 744475107 921052186 244694827 645402266 668396922 352087302 476297871 780159340 901768425 957605541 822196172 597007399 769040238 676926327 399837541 242375492 882719860 502750760 836315502 953809312 279348641 417822347 120226113 930941835 36955347 887808263 892169639 90238448 602668987 967972131 505319107 305149154 472419827 453650965 458398250 191564626 280624073 536966345 132206646 99425151 88982427 777428655 840144732 649853729 23882119 637676252 785450997 45810434 910036560 773292559 670333858 806043818 538535898 792251013 184158014 458224260 112424515 565126197 547859598 126570339 280308311 285971090 479923747 532258886 783417078 194238369 825600273 206035159 45870754 689745405 644624072 602364932 229396113 757850561 278399520 286465139 367704346 3011850 904504710 162547953 605091077 986437666 684486226 938443027 157736840 277660464 518473803 493463508 826706103 591287394 118761833 24637554 83421605 417821727 461125831 264837756 360037346 496233547 180804200 406583413 13197561 759300565 262004645 301322522 742310959 306467895 77327880 759940935 791358542 904422214 892356198 337319347 638602176 617006412 373924533 493966823 382153008 258120469 425604087 848852894 226270902 504349924 54586111 69725998 81904427 856602107 286650371 404991615 592691345 501879537 515072085 46625859 619082492 16319833 501783148 681786341 86616379 146758629 877988808 327300804 466565275 768516475 444196611 936673273 43685718 389583464 52099898 968115117 478178527 778730410 882602657 555733564 6047037 424714551 556361125 846597110 120637022 46216548 493785544 700476504 426760549 128300636 824689161 731217257 525362029 901381639 653793018 596159806 931925889 487914062 312980003 631670116 713778317 802387536 217804732 920517673 237180611 779403936 16969656 60414177 168020628 12280447 457672791 647202483 543499462 68369478 219763961 634470850 278799214 82349012 642439527 765760521 184171646 247204864 675256943 468695792 570111296 696966944 911244080 325293523 125960923 954918370 333529623 855760817 791676622 308645966 731720753 625530521 14906521 393932566 61749648 522234188 149488983 773097036 991344305 56636422 829138737 841978494 333278055 144870844 819799709 782387274 525575134 52057768 876547718 358902389 927558488 924954532 769010474 790337650 764416846 200916853 236397121 179387266 523486303 742725917 560743320 456978187 48347880 97210021 373625235 28052361 191616319 802389526 263273814 846106154 988121407 794777453 105400107 231682707 428788975 618086102 413488633 466636343 922008768 549561835 857785730 445308880 824413690 942237237 135344434 625635194 13597951 408234664 3179733 549621709 350469210 748466293 168897441 706165248 324681794 580086846 876659750 767598044 462037328 458039984 275420941 728421238 214326059 71294388 75825966 856583201 64534411 613675560 547495012 15707230 321181786 889765640 95173938 75403295 991986484 790418233 708488167 176181022 841107846 515034712 421094731 652137208 195190375 400786454 67632161 824729899 221526418 733374463 945527500 511079116 119870831 404773541 549654488 669427793 22697088 65126893 950352155 658236925 615302032 26495102 614868652 835656049 802353088 938626818 888260071 144252578 207722062 599376026 34913636 604617154 10256806 817228748 709890510 254158302 798817208 465242993 839332185 128597091 825788316 895833647 237699356 856248847 686460301 478414631 89703497 372379341 682166331 864506676 71297854 367968272 459950042 259181982 525854698 270893558 639822275 935302624 360442944 682850675 675670923 720469661 726277991 791802181 349338531 716225333 191357933 226647738 57059985 170548412 716811852 520054477 693253868 629150436 684754180 534211839 693224519 881242233 955143932 707324617 578857266 503447570 421362546 214610339 305662293 753891539 875731329 940729361 477640379 680208816 771824128 272158106 263049523 170624428 143624871 619831594 363277921 716260213 525990397 161119334 796427846 197323300 899381218 971826046 975712582 177013839 740780580 38364652 279149568 854271993 932332934 259087440 88023442 367507900 390157627 91011699 785243496 215176000 783684658 224893294 208170794 517153428 661035578 409966415 701721807 883965665 814623129 722778069 979286545 838451116 111874256 923822557 933518618 611374790 938687735 169148120 509147960 870114789 107356764 845603586 665319471 656041323 96429427 822699450 968949245 327431151 472697386 123211065 153581472 541447310 550519922 550046372 202178858 829892343 299873062 223440727 721646343 656861396 277280792 492609498 75069191 232509142 333753566 918010168 823111275 908772183 331253091 845466235 318248661 281974760 514195817 707647834 91122921 601839886 691798943 678047877 934356653 29105607 542655073 107308886 487656587 271419946 214038229 635359760 689624430 805271531 49604496 481225755 393834351 105960471 279595616 562363781 822837793 568915708 949088001 608644159 252206396 541322397 82849133 820750767 879928653 444938490 419954214 887414927 641923559 497216640 670639591 673094498 499793470 734708999 299963559 143803289 189311205 715870605 379616641 454215759 494013439 538782891 286179699 853895461 861896202 680465560 258442493 430444389 969321991 813731225 467512359 679751170 591861898 615088801 58481405 773041484 394127379 108221354 641151039 942393683 290162620 676070917 886979160 122403183 112660920 328063695 716741853 516880874 369534852 339408170 113258275 503226001 841646709 823853050 878105642 838549 457270831 98552070 185424319 847496782 358842209 53649381 139943489 736485403 152063661 850378849 436741551 445093729 671917185 334559841 226205255 490267174 645942595 876174479 807035086 15688146 402142119 421321082 56169814 336296747 442139551 54004199 186304283 531172419 404049790 525960648 127812785 899092562 296738088 533404059 437685994 213143493 281437895 593417488 827721513 997475944 383098714 260712973 494147777 120525928 75945848 572258794 733564010 608624905 272901269 995921459 994812096 184013805 573804249 249416039 928538955 427262806 933223487 25012182 607831209 365911865 325606074 242398186 535902486 536246019 138209899 828866411 601326140 882106043 969439048 404365369 30292811 253262915 363121764 339018181 652881919 305129761 879070034 926990042 114396042 233725002 515941370 941092413 22850402 850509492 257050292 663248515 42453590 300762189 924354635 927412520 686522971 168239749 811922014 786835277 868567094 195208692 371799126 137763782 243651958 30051336 801866754 923717040 467660634 186299828 558645742 381774135 780733690 744244406 549725041 303116932 841064340 965208115 32033296 881367777 452953677 134551420 211901647 888755932 448550128 401247208 309102607 92526539 950504566 303818914 586393189 327952522 834014252 577956935 370380753 133569126 224941701 420183709 43381458 380407360 941751586 691523933 868080948 184264485 33754829 43803884 719762186 290684945 912138188 511004523 702473057 344390560 384114063 690631287 360843949 292382000 151754063 193591362 626269589 644358844 643886766 854465541 184912574 964801586 979654181 170443295 520583665 443787075 230469064 901452683 512666396 642673214 408618348 842258670 52537934 692676666 66580043 917430784 477661779 966455415 467666841 280524253 881728482 712407855 764340939 229014361 285448046 878299147 855241591 13614824 988146805 209499535 688522677 966681101 954206825 997424498 777397657 258862081 822488454 777328629 994213521 810119048 757916132 367286779 861610084 692099937 263738991 560065873 762348123 79281043 336263012 614568452 231886857 977292264 375095446 617310533 747685775 943399945 159999383 191424618 638288860 132570782 876116695 758249681 952780817 809454199 324134690 538316294 380496334 337023074 862264847 716639435 828472869 54386049 545188335 998897653 212212134 147668386 228083124 619457129 778188734 622776354 412507084 159509227 704517344 520959935 384528118 872661954 703004865 601919458 986367388 46591328 639524124 283794627 949104415 529169470 302382893 403888187 338088651 809054325 172363174 126599392 791106603 255129401 104977331 289748730 756815362 959714151 79828805 949006907 941446491 165245779 408703034 235933907 635304261 664301263 167699075 20842015 46245647 520834963 558499055 871483432 702358459 504488174 828833682 896230449 792802550 784053256 410336918 407120338 101507870 688688756 519985722 440418956 818276016 723447931 671641194 160632297 569538237 124656087 980509762 894884547 130987524 503976160 538457513 684514444 836924108 389085215 783058299 105370867 963732720 710868717 470289218 701993857 376929300 445541543 511664817 838013037 530836229 71081961 999263600 973835188 314800832 963789700 95194247 987123900 291487680 847042658 18989588 910116344 101885289 984286494 557307644 640450176 769494291 496113474 462089865 770147805 262696836 371538682 597680320 457100901 604011240 833695718 779784042 806951995 807583452 865565711 447834404 206184024 746438515 57383239 817015864 992803998 757951018 208867274 683639584 52242038 900949831 557242980 884230794 465653005 813031508 260478267 835390171 931301533 690790480 175436482 776365909 224272700 882184143 467345543 820431395 70863009 363547920 509347111 80173027 671438430 119330082 90785395 297401117 376751643 791979734 287003077 611621301 703306460 37886637 624546548 745278755 138184207 92140854 893615846 314424930 135186995 700829000 977024646 87276529 319262953 649560166 920649125 48095098 739511739 868997255 474063992 573106751 372840630 29977763 156824434 149087958 817124637 606446656 563400189 21209190 620464761 586709856 839413903 76096331 116019348 461472747 894711351 207865267 687021899 419691904 147636681 486028996 397741246 588924796 120083572 762812998 133000198 335536879 401773 462633136 387453175 236774242 605333859 81074593 56003162 446509298 201345843 974363205 391877970 259601884 536688570 748341942 465609760 283537894 275288214 125557459 80486487 312129026 904754152 395539 990489796 62770910 391134959 113933128 447424202 403508859 747524909 237596701 535627272 130099213 131167364 224274892 781866395 220349949 912826175 294839142 362986792 519733831 260964390 464847750 832856901 255129640 571364075 280813798 427895947 361389209 109797301 735955187 632605131 585583316 405028565 665055924 362877663 548380401 929664691 472325372 797943255 427145927 330652450 48371763 139510452 490808274 385533504 449475182 686836063 278591571 645127059 226189207 638020736 946328068 501708371 247287928 416793854 703385328 388236967 799514811 240563463 266891642 742653013 507845159 827351454 537578235 436823698 728842465 837621965 48457804 643500557 933922169 484698031 510744404 429871077 900951831 619049044 620137615 151046572 842722744 358022671 650837795 144185016 548609343 474954854 311361336 175557887 625173244 590701102 977503467 561700469 753107161 266117312 752047007 796623836 687523040 683939554 256526202 547384718 803226311 486744305 908926821 246895983 19312732 268813300 45935753 22577604 141633949 824407449 843443362 793032842 459250973 878767816 277920923 377562343 433357922 840301378 190846457 233624809 27945307 625478135 210118303 595803465 433558987 807738236 649573889 64976055 435346931 511637592 664210541 934324722 95110931 828080344 520264109 987094464 260703915 716513496 572917796 984987780 371907859 945639521 660368774 595360353 481103501 626725609 839346808 66903771 500269220 805447694 542180888 512940626 656224327 768983078 407605096 949208436 288148255 907701834 471272334 237394793 218448089 553490789 650685956 421276795 648549195 709423214 292893713 524736515 238898198 76318317 785710090 586312025 706714567 219559537 935723823 143916881 263721420 803697760 895924365 618420691 702573630 49388706 856040265 58452974 17765770 701914501 525567379 331954139 117624478 219081041 74303575 145187343 762626635 712680355 941340267 900002261 688214933 492410849 405429892 975993046 166679571 299891030 454204353 199779832 617241379 41748156 586194937 218866161 333731733 42895530 17270676 391909499 963762966 542827326 263305893 329567113 319502215 706354107 16612953 18419726 317219111 310827243 764497818 407525537 732931807 765228255 337130631 91317630 897413620 34441734 906956710 331957002 519725106 14834408 780043845 157995065 561176533 940976260 300584486 103562665 608774321 955034750 949833100 96363022 584265205 235467339 952133107 761213266 471814389 291337637 454050091 86947515 402663902 578209459 355086601 821081318 124752512 112366965 578742204 840941773 211104455 34081606 789830273 683873492 3411990 9956173 819603945 933316369 453610514 900281445 807442721 945992511 406512708 368243641 233552254 605221979 343386499 869026797 289104504 843423481 555999834 94009639 40754548 165297761 650652560 322081702 858797086 248248935 335083854 239631788 709447194 837883224 593924944 81917015 985843903 668340101 118249937 617141929 729116959 163168738 326020243 578022783 2564903 21374649 438087012 120325261 523523928 919132869 974760517 496934044 648048709 244996559 758089026 841903032 910410494 914343286 558606009 845991085 403604230 57780196 949894884 350944778 510703010 535735403 766651553 797656401 392389260 515690891 722578494 508695295 904086682 786554575 633905388 713411973 815350538 295350887 924049175 52344274 233094408 757073232 876667818 228972469 880229740 523602727 508396182 254219148 611436680 533067040 122258972 695822752 27223013 49809683 452098306 976327951 818487673 138529871 184596750 398431223 734257214 613397375 254451920 593932568 923154776 278381868 556100349 324682229 268532148 920817362 977227150 552234209 448968539 141391414 807660151 584135534 77812094 441335924 575338231 450870032 336816637 38068604 512826421 211609728 555605941 187012429 381222313 433839160 395764523 749526745 833695160 164522237 604334206 16230129 910575627 977511729 854729804 799863186 251184970 809046068 311295215 612537074 466778491 906813458 147753742 244974123 317411461 293850009 971976803 918880870 946668493 353774759 98769735 626370639 824739418 568830492 314043176 602331629 91923915 612556080 18966103 351241867 594393218 560196458 3208643 578950948 78429968 850016150 788054358 690022540 717839141 515067480 591053436 1237308 58325010 381212027 754800135 994597240 47790174 843550118 440344057 220738576 242743922 454945416 823373674 733779678 757753275 828959550 425890600 912301954 908081380 516580303 926406252 213925957 980688802 81600468 82652539 790434893 565917980 584760713 527934287 413797438 816854562 387862782 415579284 780315612 500456151 818752233 764677385 450638631 844973111 879750312 596035260 403190460 973602760 526788348 252148333 391850628 758901984 445572302 191522566 374184189 943753686 273086181 427337300 351247015 589881411 635740458 626941469 192335376 741480714 769844531 589034671 201261086 344902243 669655964 769875816 697936592 443359834 975394217 657379869 296961252 382380523 673449935 939888404 678514841 611615351 949770108 514599997 78634104 69617641 576230393 143678013 826032834 704687486 245036918 437832706 123099782 994270613 346270134 312911734 735469422 74894706 689418929 806094879 50092027 81866257 588522259 304234819 829964124 833078503 992829678 375260161 540904918 339498876 732145026 451553161 237212628 394584265 937662918 255589769 504575269 529423220 989606260 116487097 625789121 458670689 839499667 54986155 21509250 235876096 875410811 535256682 650850583 54184705 821150608 221969572 977671757 18630874 189818063 101608247 123755955 67468602 965276563 765895211 962945348 142299007 410626520 545651088 688195094 658671990 696347958 510203343 636939262 95342600 992891643 524971631 549479677 581655508 814044558 13019011 659035469 633063411 277422138 932996339 851129996 108536245 616387787 573636717 511493079 743869967 128746824 125784732 848313739 873029167 54669944 357947166 952551281 417284795 612187851 766426403 51287684 339074495 77332209 870845963 34063394 744591927 619204489 559614129 838262193 609935313 927230694 30676321 297905105 110777620 597578643 302317878 935995647 743664023 305801353 306801372 615123403 248959983 674704208 654975060 741640455 838390428 57047976 488995130 923221292 387930855 891133431 768906701 168134529 189740604 601812645 871053333 533106195 527231175 59080086 331354945 860596899 954551654 360784912 286093837 30357308 783110827 120726250 278852531 935609930 991752728 340714622 23673751 308451776 841943347 144919528 560995025 207207814 230600845 473326841 633453273 538496435 363975439 225245921 925892398 667753793 507943784 717166233 534494984 762429428 763745203 285937998 589964772 461429958 381314652 181758502 873524774 445196238 448399057 322582145 267521354 21289487 623652825 567459282 978634985 692751246 265658096 518407092 713704430 255308704 144984963 111602050 386215996 962449065 868819754 114685657 572796922 857089042 270841755 494271905 144251787 556309788 296161811 872722639 3668109 886262618 886870838 225456381 962719998 427889607 479867637 127045740 266424336 792829047 434417294 431856179 681956468 489871647 866185714 420935912 65248062 94976734 283295326 535737268 786204910 841034255 492929394 29025426 803847583 368629741 506069514 401743304 205596663 64129534 155827001 528563455 496169214 749699811 801038266 751080105 901138313 963042975 193810699 909839920 122446420 915934488 407240543 374747687 839426628 659671526 230168751 993588899 18865346 995458739 856859468 741467093 763834083 932981570 48852415 339887799 51366891 243946892 66796859 856246447 531485186 63375172 127422595 770358264 807413175 455551741 417975657 587628834 275782672 842491101 597877293 72891625 538987353 784860165 905916748 914730991 386677204 245217013 23225724 872983849 723515922 384730787 12808257 748385601 293692120 161298823 315252768 268012886 928590879 369167546 607055070 971091642 577043186 121390267 837785047 658078237 862272154 209232508 839203969 767109876 941894954 837402389 149065919 841573637 150503019 409590837 372433107 260067711 686466317 263784213 455490718 119319762 453423440 176538500 148240797 164327800 49927342 303536227 826742902 688763115 168057964 47188778 838147184 314507764 952896322 144206449 770852550 847177209 448125262 896192767 903896679 331620564 680204218 776653642 775938505 75058594 490209451 762616590 678359794 187027393 965499433 240403785 247114943 411119762 260163480 548187984 375746682 705820903 588190087 864713510 363115581 980850945 810472769 765339441 401234769 955533470 315362470 572642988 838681323 840446838 709417774 218004754 706969963 945041348 498348488 46547718 28657262 607755312 909951447 785198244 372508992 900453518 843184004 529066988 922570644 142885855 53535000 347037547 471891446 321104671 904351704 839862430 799270060 70485290 831923482 995191573 413721151 375326709 409629175 982502145 710589484 938007556 942610113 677090346 65161266 313137715 883683529 774595483 389490144 822948668 488842325 215293127 640929698 594429373 698342659 686133516 917752887 145815498 367621877 343329555 185371118 263919621 516033648 607612559 716115843 468589181 904312692 685308412 716741935 155940055 909391730 616517477 761937728 649766976 970272950 892017513 358393844 786835137 839860193 44137981 969617921 711570943 481393038 406966934 518863795 677118834 645459904 245599943 746658344 402863790 441906141 587786323 572657329 268135911 910466602 673829390 499307691 404363679 258072239 212773165 813793747 867846526 614793112 931143059 85950892 991321732 891440923 283474413 4576035 96261118 341462532 598251755 254504869 19093714 635057537 327519413 783929879 633968625 912857395 500459026 326934769 520236661 209671587 717025089 474293344 252223353 128977333 886721831 904927054 945829154 764210370 74272657 572679900 285786995 352004385 290221772 491156277 964174289 237360378 99228778 66241184 716069761 250111370 324272434 881978350 73518126 870319154 498973689 666374512 238064171 202586897 160122499 516854346 311189509 22054036 541222192 773544970 495228709 976615213 594012242 325782399 392042836 303441607 775477339 234251542 103208667 485352067 423493323 792863703 177177541 524863205 149940006 384244537 294324122 134324503 573077252 454821928 84543276 973919884 6574101 16883207 690852108 626153199 968618886 676322487 879288933 545134489 993683728 743458411 931111489 416338311 729012501 580681846 445263810 479209132 945922470 258004035 593645669 660162172 534506507 260850097 328938630 844556228 418125472 550870912 707562013 72639934 623523870 569232015 390436924 591579884 407610450 226219969 866188366 743612292 316846638 789480461 41198690 562521450 224573850 174184563 533364486 148819494 318915896 963055399 78656471 538373949 41260144 663433437 262716271 733780598 219370272 886060627 91757449 59053928 104203733 426252414 30626316 716766120 30605567 706892875 121822456 952164233 279212526 809051972 748390436 955357700 748947629 903767320 836831585 889527121 79174527 602469976 853084612 641134691 639068301 858567744 427322780 354314298 827190237 181824435 183187475 502758639 27328024 349713750 55123245 239937613 57870124 279822751 774309840 248928117 404613070 411540736 714409896 497088583 944081781 9814131 576703069 628949144 680480812 76460007 690148720 548194917 683034417 409324217 543090071 57461526 458241326 525304463 776638752 643821663 384879569 582936941 641219409 660579523 747633575 424897470 942231675 150838671 163879499 608704029 321464447 810790903 289257730 599096655 556556735 24389944 187249670 364293431 59197053 792480252 677773983 951678741 188826040 286866991 254082737 377691448 89070750 847013781 149352554 322738990 799285689 337239592 42960805 564920471 486587731 559069432 484449261 707857956 317501908 964443705 332192297 810431924 782663838 804922018 960906907 50484943 933350156 993126137 160333196 257852205 227063482 523908079 908414383 115475162 303850265 497582612 21680172 682085010 604743280 400215304 139326226 466647445 60210906 427455243 145185873 161011591 790329670 431326259 913360299 857928811 868146367 772410997 759409685 293328655 57872241 418215218 702729055 272395168 374800929 599556573 586731936 712332634 182013663 27808598 976186967 325349334 610978001 70187420 105261842 651374414 362996898 333374144 367468390 297370202 642705025 859870081 785784991 167669942 524846755 810795495 377444396 260343829 23395683 207163816 357279674 830377704 396812541 251377708 458787839 250030803 478322551 111065652 857423758 965671629 840613900 163321222 471418217 205356887 595845245 343944788 372204782 81979294 996327765 321128347 299806298 577116148 375710911 309333836 663517997 470215737 403822050 754062239 782679362 207805712 148674010 751468586 539221461 906794674 508670090 761243369 7690793 989480401 561086243 174925307 145592721 394077063 768848338 771697749 404833180 462337487 159473269 456747607 433464192 571914760 119446750 162518518 228029968 293338670 570482881 412455221 738764926 931558719 315276863 347483086 297940376 196922979 364002841 700122603 813283510 921499204 132846386 449290011 606857439 708852667 767911642 637288813 641912684 251035507 194517043 843358788 348576233 386287203 566431574 158008882 683590535 559988521 50068907 559764445 261242491 555073747 429842305 595527954 667697950 329568012 647587793 591366989 670722053 626231184 577422970 598105879 351320172 465496858 309729578 324360381 323538473 389904789 387951436 962015199 199279005 936548019 584152887 385309559 452361268 465240354 720806788 548296641 246064678 727442093 980462578 299478129 524809369 673833682 870165354 837921594 185046045 756501736 176864551 573397067 23914967 316165698 188517043 245998124 977850752 741687841 717185122 774487429 966112749 757274970 323438695 157160684 963589984 844110563 675103457 436952254 426299804 886078586 223809016 714476853 720313339 728646105 227321894 143403858 226325300 103894962 71148602 717963243 180611066 897943604 935436581 93501480 543138336 290410931 153913936 308024784 764989539 927040297 319784761 641931329 490689243 79540497 640220441 299869268 137050141 735296838 400788039 409220974 933238821 197267723 586460513 167684499 867622620 260649807 98283172 895255514 631554324 667745835 136447442 887969240 800636050 341519749 925561036 893092170 948073559 569411312 921490734 705531910 465427760 631831500 553691007 422398571 78688389 588521245 341510095 648542492 308221631 400180565 38748991 574432025 159787634 244253968 287834976 586044900 582109576 234903129 192349362 724473398 853158755 199448128 989489154 613700387 513222714 759682550 135796280 765352046 108054387 586207395 891072298 360494737 549833307 304215723 42117858 734060431 180093583 555438664 94584373 651242192 374021195 162498315 524519033 609693120 280572611 214572236 65574695 876342169 450859211 352687750 54737990 950071613 633323375 940667841 484520735 82497709 346671138 293038269 367351530 715791741 474268275 995140070 228932604 661568081 936660582 937781872 746564584 463775312 438806930 565010393 456169681 1795983 994385909 962880808 456024361 962140778 615637330 552931226 145966762 959204489 210551856 797477425 540104692 560477879 229032462 550584429 766291108 321447209 577619253 76644084 714301111 476153278 216928946 696390442 671610714 680058742 278083788 151754795 548410909 943817859 224202841 406882260 880598963 398632705 379791162 53102194 478421562 235500390 848810875 644193089 530646678 302897177 227836994 221391281 946045948 630076751 690102446 238666971 310227849 818365332 404611568 135535168 998409024 298969692 952015761 555676308 663949152 510417761 48387920 77117809 389425004 223293788 445935374 252977772 578197387 172005686 920055925 423828898 677867560 202622698 896473905 577560195 269647652 583976820 476420193 26746937 361166230 75233358 31228249 56652075 862712428 287776132 829568575 726062229 332653529 6232549 60373983 845453874 667896733 181431070 862866757 341886125 489134786 632065258 496377591 722999044 668751535 76386075 412880396 335200200 718776658 124355270 534130700 774797922 470953360 172690547 371173897 801884313 697945810 385748380 630789784 400121658 385618021 114915955 283241684 423591404 93517336 244276733 485966824 28255760 476180946 123862585 798434685 311057639 236224624 245629083 626937612 859816933 316416063 556376779 550890039 942653386 954018724 750473555 125054405 802720791 439911194 742226116 627174820 252173655 623027205 863434934 811198788 410065765 337664216 862528067 619606963 198004065 503287312 731053699 299434688 182341053 459701244 310887596 6895214 210297947 380926969 784788593 148130604 867808583 746517153 140818809 799643785 981879483 227774810 178213637 965490339 399145244 184306385 733592548 467577597 298528122 689180195 927183129 198044817 667892352 423949839 646366015 149556448 636712682 33390289 471739286 138718717 269608827 602844916 564470283 805735684 201149535 620292068 339770823 329959790 129091001 201753441 216652188 606145238 418131893 209182106 469105471 319690474 575698135 223641638 465236912 432223970 520777523 773016057 37125469 409479279 348352487 71972791 580092799 934805591 823030497 100857795 555731930 245836244 973804730 764193961 163977561 657592547 912114865 337902232 335858340 824537711 610503719 54937697 986138148 33794396 686343009 89935020 278076429 882833714 911284629 546910093 807664749 633888234 406116677 356350488 314686372 82496256 638495019 13986260 671267182 184095376 554112484 125418359 187468468 137823127 140528294 671216677 380830607 333115691 438275214 249131381 649411676 840198440 821625344 345463825 43509791 689903227 931535128 313068926 737831353 905679161 213503141 828399977 105777464 707319480 731564998 755906233 306892053 493739410 216779718 386665656 53834826 209467000 229614719 912057160 497351476 986094753 754082968 121858443 731222466 997907209 301648509 442931723 202859042 344575931 364046488 31896423 750163500 186562765 652634226 736689765 126304073 867947601 311912495 513218855 348268247 361407527 6852892 451120046 259869057 929610167 866081889 859089566 196239165 775702137 122229911 976817669 37654185 755053123 51735874 197326812 591496666 983028691 98900969 65150499 41788341 158118174 389039359 740213092 206290695 363413106 544287496 601126944 796657977 977663460 853680825 409170333 647500986 493512642 218384248 332061186 375033084 646883837 416269421 11044312 606464166 272149025 693348467 620949428 33254674 202950284 646080977 587911935 259074634 512511089 629112278 559771419 137384874 92347726 312283260 140211873 857474797 36785800 259178218 562550282 208194465 956996237 92795255 28868159 495974301 252254126 627155124 605295325 282313596 231193011 678866342 974642037 476349362 615466976 467431925 378499563 179618031 745390601 346739906 981284288 605573860 358168441 83035906 648718099 947827801 761096317 561073497 274839028 854248336 331654743 466173004 181072497 166283304 804287897 740554178 280401264 814144066 333992741 512554809 537656133 568631897 452678010 207408777 856091753 463156522 107671369 77374597 10709500 583111941 540686694 669746760 510518970 235145689 676769548 135908461 326880143 385839224 492344178 329542392 74638848 304435625 687814233 976822301 136078900 382524156 154920926 681886457 268129401 220916751 187285347 609593439 674605872 412880444 211522902 555881878 635261531 162164662 371409376 967465355 145176379 469691531 420646017 741240398 494791313 675099500 797190434 9355763 98623683 168303513 502772735 985288341 893338440 549709628 952980578 455597590 696950750 33199057 426801398 769860490 151472335 904076977 186757783 896696524 342320939 292936463 591647910 676072864 340871089 67210129 751193246 557649570 446161641 315248945 814961080 977166856 494467870 616319939 693204458 182585545 442727187 145334536 271988514 442593056 240067554 717032004 837286334 950536979 284032115 494498982 118320436 210621452 763375691 95123347 341116373 80470000 878171183 64602914 171416862 931844418 494375001 770284064 27826260 855868927 872409972 964242717 253868837 326777501 370908345 662484491 898597781 925019286 117823115 840120069 491049219 434342433 377687195 349989312 929989508 255536367 230593544 97480355 963498296 536029588 404927060 477689588 855727612 323097551 366597291 711714212 89995238 82044934 940062427 682627775 704503191 950261873 462357329 750776296 19515052 211212313 678594245 812502923 346459515 538440821 985135463 722163792 622346758 52407075 566898306 415782667 133050314 344381545 881361193 760668589 120912283 608556340 577562121 585931126 190648971 718444936 874301293 306316669 657381312 303437349 228750576 489372747 55627689 724267769 136752167 640733577 302356686 977383638 979736963 337818353 211704836 966818380 593856885 283744262 160860334 149286901 577588744 637858945 857548548 738259523 671743679 479097675 264098794 423954803 558139761 931637016 320382698 498764412 785969738 735207882 642093464 91215697 579602484 697126366 20918967 680320164 82362280 500702180 562957448 847953611 103580323 276948577 824462190 732847279 752835626 570781867 224435272 385641965 78740424 653207252 502809452 932153374 409017008 159959899 25307927 480940757 736174226 353102470 295080151 835315591 328279577 404973137 168180560 73058137 984184264 680164370 124178978 859970703 971021999 142991381 247404474 681549385 441276051 117312383 111895516 20126129 305564767 678887715 853937545 6307213 799117404 731796909 166023151 510806797 576385552 848343217 500468735 29092046 918038049 110275057 126482802 476322094 981624651 158277046 751521875 714384173 400417273 625007385 767376460 959530984 34914847 774750359 874213441 855552866 821394832 739465541 553012187 233593926 826024667 142602805 787697827 630355251 114843814 522843402 271425852 874497545 267206494 546344205 655721026 9564451 254874838 526398784 215081622 946871773 389911695 172179020 58920333 451513328 924482794 725819343 365990370 386281165 344074013 364805258 112186610 343563698 707946882 452790946 357560326 13777143 533448720 11191428 715439941 476342473 439614781 291727476 335079190 337049729 7591680 850238075 503168285 496531663 662457369 875751524 882328228 699867209 562378831 582310060 294358493 70383354 213221545 122683698 962979629 772139996 216176192 640260415 364697713 981694417 34873610 908700966 901704126 420347686 262347335 57188704 972030351 468006291 317787917 528274763 497075960 225264048 354074246 997996905 556850268 436348289 140094201 498278268 409416512 32062254 13250792 273943212 730582399 625429344 263051607 856480073 380243710 603549674 640547019 770603605 363254902 669988360 886894032 950361951 206549560 60438533 836996707 333740723 316469575 408882167 666658831 342319890 758617369 79011452 785656872 259517992 278102316 954124054 267767170 92724409 29020264 787214093 773499203 343907409 830077026 461795000 259685436 208083401 168932939 627323495 717631300 914880314 125843968 748074319 650839020 201614515 608893123 395981623 695613241 175672543 256819230 84787028 875109620 591094266 19999479 227541622 916931308 408546489 241498297 780139565 727035610 689478339 638331461 296451525 94464082 574706161 333211055 592909041 848199637 608083689 574278358 77295556 892779352 993946105 761618508 656619469 664664263 973637837 225369118 531157462 551583682 194458765 698406569 740492472 818848568 106370411 332175778 798492491 487733697 240668325 883145651 805707500 904892047 593512699 390704366 95796244 633052558 983866600 679207239 781725904 704312587 402437502 642221396 215798272 271129927 423081256 269479581 857294696 410147933 969550906 259681858 50339191 272612755 423077222 668367605 604204353 363241280 594662911 990481803 111074971 30284326 394887485 880089666 33918279 381068976 918961294 342570695 12412946 619188287 100497145 115579401 541937048 34854062 888569429 837736083 268495852 254836084 794812758 111351053 851499651 781929479 207044838 669375135 695533198 808290763 298989848 410797370 274466519 659805751 914329919 55551137 496530056 409502956 852707234 597902359 392616089 481015444 285225734 847150611 627460341 931976768 697071621 430044116 166151150 572100699 805955316 505802013 731857541 293353367 315264677 372953862 974585740 715932665 130804541 750387290 946724876 269391089 823076485 175928589 931916940 399075650 263695612 302038479 975764770 772802295 268088738 207863 109034424 455825262 171863843 190082924 907282146 714772 343544103 556136064 274734416 73422749 970593241 912952738 864424729 60517798 427974431 587201840 725748382 762138857 422792571 517115364 678192823 700819886 365123846 766160094 557479394 278021893 928181991 797348243 101691832 222754833 20595899 906092236 239194417 463099040 386018535 169501581 47331777 712437098 835150101 147442676 649382440 371959816 392739406 396699321 643336420 380778252 2651586 369416656 527416967 431324376 695055655 148176602 119792950 794267412 954565249 220751629 868072650 292293802 257175183 859296153 773264442 559316914 55012207 225583892 293267300 664929475 974204589 986354033 482568100 64603384 454922232 434941796 381268487 200672988 47114485 748539531 166025080 657898174 422182454 923585637 445722479 700404069 837137647 932564816 185532696 838745289 453034690 367457115 600018699 645729469 526174795 442813227 832986953 108233529 770572423 414008866 489273413 425587891 570873616 257428346 963103328 592346886 917525017 54834175 948180231 825104195 730839385 868434205 86503885 271701346 870996546 467376388 544885355 363917528 703765000 510488011 234383063 191404084 834430005 950068543 400235587 611338875 483772032 242535735 70224137 119400464 242177728 698830784 172839188 762325035 358141243 462464061 155464517 941273400 970211485 791568393 570701038 115059873 296896697 55816638 370439719 553520849 404892154 497049630 659450540 574497726 116563292 482837983 613387577 193549776 485592224 205671218 63043400 16667764 40581620 898037559 242928030 790185512 707172623 77116015 343451555 278528263 652256540 681335325 59300043 969829739 344486243 899324145 114191561 781906379 535893079 332680953 985934122 448358141 219009947 223256439 504841227 446994626 121322464 425421987 771731898 540839118 600794791 290847106 412416095 843847019 192365900 44326874 114266401 442101015 695806791 314122859 110286749 615034041 547022584 351208391 954516682 672295077 539766114 45547645 436270223 476699718 925473367 100550604 683356678 936840335 293504974 790441168 526626115 677054979 848684246 814141579 695315354 483020511 154074226 751191326 345990856 169825352 134523822 314334661 361768078 283738491 110513554 982836640 608777085 449810790 657005060 860912009 265755059 613370389 114451208 960912013 821891738 621010012 455801610 520327596 365201465 582348403 821924306 846167547 310448925 297052556 577587462 7773211 34690539 905961501 450400818 359088178 400007704 174461762 241275418 360705391 90808937 154113326 300495871 126353782 636559982 694709511 374790253 468309896 675013787 520302689 429890042 209632193 695687634 405218381 169273783 663705865 55976654 101273017 184314578 215504724 917627017 120343275 672393110 794574474 374541012 183691538 177390286 532670625 175785017 760825588 361499319 152372836 646847808 401059198 176710087 312896025 212328142 203169835 619827827 29784054 827935739 924118473 650806937 430722674 299833503 543890336 265403846 127187412 527952511 220969498 956642208 308531950 576555478 590705501 184073309 362258785 370324737 543293547 194745296 928693334 60683605 356320121 271141754 864733706 537176611 621655746 934178754 545420393 849563385 410108137 90792171 742185015 634776305 293123554 157272346 751178144 180120438 179037863 881690063 803995368 420834536 975685812 846219796 218362796 958562174 876032740 168197533 40014893 81873776 61893917 331470583 144690488 373826944 913777009 578420723 235874838 4274612 53219751 376924729 39866764 464911711 787818787 13778083 630736821 45597965 571432179 488108724 740613335 794001136 104646110 864570448 852653944 345665654 169696552 243647895 686579824 266186106 37085146 737316713 427948709 824814906 876031783 773166003 696517195 270799698 389814392 381955411 105510945 108796121 70587391 739416070 119580401 277001400 787717256 273430558 422682058 15985335 613574702 35188877 245370677 988914032 471833176 16906200 443609155 263206315 822289474 108710762 679046813 229262672 621194934 597884738 481889061 690323049 178591534 772368025 743065791 171271530 919521663 993897050 873967344 74179545 716678860 497526959 374495640 243304252 213101213 334077470 83333792 315158223 752295488 721191443 641232857 710924890 736319883 106573099 685465515 512888501 36752078 287678777 801575016 177574077 995334364 61018334 385088469 81116268 705893734 590440227 729960473 947568925 780088534 523089020 145091023 340736517 471035862 151950464 866706490 402155033 294168173 104649431 850252537 238681124 15715748 24069352 970425933 773946170 955171493 679603195 508468476 966909538 177092258 518565603 81339053 269122160 609221771 234334339 650237334 708979451 699859028 14090646 272506838 885524276 292378968 179907757 912330547 140484357 277221624 701628775 606096695 941251761 505139449 888139456 208099058 535764572 349525551 44539229 991736535 684505440 141208018 890413519 753575562 892372187 446457402 751895576 168240872 50218402 666294354 293921668 634610330 283120204 972438238 282736606 960058870 428869770 532585572 536618067 640456970 930166533 173938190 321400982 114855619 952865341 123212989 133712007 405118013 970126689 199202012 502183287 458183481 77495110 887395942 170472231 448417190 542674574 384656165 217832392 939364529 665940588 185807750 892615168 662215217 494916386 324708606 184630073 965059624 560594364 563560091 136635825 812929794 726131072 453097174 679785729 352529700 658225952 396602400 269195834 474038336 39917532 491644479 768077161 363738026 134547301 244689534 301160323 819648900 882057520 257985401 644551224 192604969 860493260 431523986 388119 135649184 627197388 64548101 769128575 955037269 431527803 177862808 567058537 537313508 130934594 812442995 275083041 937110744 152438778 699101235 218319136 766642344 875227501 396309625 156052592 429313135 819707566 473765992 397805573 801699928 17912279 589012992 994367388 208038701 387811804 131874101 670733403 884218623 786645631 94074181 357248655 243365960 717949945 763471328 104774948 401708410 452278328 213427570 917818981 970591751 641494736 929570160 884521012 731222777 471467892 3559463 882419438 305060587 24620112 940763920 631178217 909155309 371081183 191360345 391221350 541496484 787591913 958970538 163112581 39538532 694360321 814459621 842773995 248719915 864509911 245797579 287835181 598978343 250942194 505291178 580101529 480399619 8461516 823583592 825297329 390673423 141000381 887610380 39110627 299771298 84878604 309581641 128945797 561483955 690762657 961613801 433999270 915543614 867236602 49614803 394897049 488596038 29461222 981838794 770775477 288312934 208868080 730306938 138837827 26313652 474971537 665225033 387867148 983394313 472948646 744761796 35194777 449180059 410732238 593515842 553772917 617884080 297544404 244871061 145964048 556966073 438586264 508395013 465415542 915593435 630939082 823697384 140746900 999776556 629834228 205243663 856419995 865789462 49403762 321619335 824860912 960235108 483537078 946566226 683725558 937202411 94849169 140278179 977178072 811160322 294031680 455776669 808931574 253374581 637980322 337050200 302824208 422936760 565884279 237273016 296364000 839601128 365260517 238558359 855997606 510722203 604806615 239342107 535330246 852593334 912184418 156733495 975460069 375631801 967972376 875964651 160452898 507551559 473003174 337654342 368762213 378260257 688358743 432558065 898259075 134272888 173278910 183297232 525431260 501236716 441419204 611693017 245018811 747563429 846049159 434061178 994917980 186439483 497662735 871035037 896599345 897130778 332607576 49053677 284592961 336217946 668026825 441799237 768916511 886678613 202394871 585298567 805932706 885238737 375252234 568621187 146397392 168824441 716261442 932442539 441552227 698950035 298072909 369922723 150842685 388518476 399689709 89800483 313731499 741679448 516154203 234684856 999071852 6630933 723121946 683957791 691610273 419865501 228436752 815148440 904567456 743323894 829088753 540765818 622679435 4863241 456441102 359609437 318712688 631541833 122424869 601572021 813959939 645652601 701121026 650401487 18041863 315713896 868734213 354375049 40158199 512736254 423239320 620115293 928859030 379824156 926780408 418287297 576853862 228120878 580671610 844388773 618169783 7747334 999551527 859017974 932556601 75081575 812628010 181060788 896591966 429947227 513252699 142511754 315621401 519351292 934085320 105245963 346540407 936412519 144918689 367307856 26972680 442219616 738005496 271021631 614111408 183613938 90532766 923965458 897302429 853037892 871653626 65111905 426531128 138609693 168359612 972757024 116945890 867752441 256486238 515614222 806366280 883227304 274366383 125288918 435742677 672179877 734681111 396230754 319460860 135667008 656919927 621211559 977140619 231682364 12487071 954072391 240844972 202056502 110875314 779621636 832971054 521197221 267070282 163825286 382997496 815786487 285732245 794891065 390766712 800674195 629778134 645263219 817843868 990747236 469568865 468203730 434642086 751009100 558099466 136513514 4615481 396631453 638690368 85010462 739266332 346050360 823434482 307039237 186590977 484189703 301830054 764464167 785565221 803259842 55469244 308017580 194090340 908234579 912294520 576552526 764468977 925465512 519556136 686853256 869721863 418932800 617593754 816926552 919571403 513127108 78753273 41286058 719442642 503346672 411152881 215995607 143334713 478921121 934560665 629986208 442115943 772075316 164255211 545677809 727355949 841411305 557179534 276430364 407806431 734519210 966312052 464982534 758300672 706266615 133215946 345279936 798512640 43377654 70536369 61191301 488016178 587201898 8905459 121457241 299022778 314139158 652836826 255976041 388889085 40216359 83412109 664754292 10541794 21195446 404949293 529230706 934905653 246074021 172594190 822143502 815218300 8813778 139455618 490131365 992517750 456159606 187666413 784123473 775134712 409833676 556285361 87640938 682860106 462004622 51604193 565953583 375786574 524933543 529165753 299521117 341829123 570864585 642110705 19013265 378910454 799550901 551513111 551432821 557639804 932929923 372348345 665724871 338359624 750685445 930743957 866038490 181154997 102809782 924301146 643939581 468347533 135754495 214921494 329375331 939008671 798152758 193402646 705999868 260264529 223634728 744558195 748571466 337495431 299166063 63737863 810085555 71241909 475425588 662929411 749820087 731878554 264179742 257779391 292203400 153134395 292829566 218121378 995983676 844115316 888910282 220197273 800865076 620024396 508365927 118104456 688379109 201817038 825935473 762701398 317073132 6725704 53631440 921708550 999606105 518076678 472198193 915899880 248847574 343736562 467837205 846295281 832678156 219203026 761792045 10742808 536714427 967064884 408715342 634179660 911546013 270802728 388113164 917316834 140225762 266064756 136608409 910862507 629376013 904829533 754066710 97566549 531760836 653943366 495516604 425988353 781600057 221168216 513526800 356075255 620231421 922390427 868342620 901355044 476064477 358083248 200602378 688688906 841911248 802448961 329461628 768885882 572946912 542336021 610444018 72889586 335515020 971189592 820306728 904153982 806845424 593524738 60357688 882416830 344444374 801248676 130040395 822380196 758707940 287458049 185446931 307326170 380073715 524884503 866773025 385279016 948894687 155115574 135056729 342558443 289829038 322083424 201750434 473082548 102460132 822711416 913537887 676678821 310339659 592750363 134252771 445856109 618061731 570544422 601528759 790549460 893420474 278765405 963308254 101474725 491778979 66305426 897977966 624226877 813588077 960839336 67474231 789197115 930606091 923124210 743721457 441955981 521127860 458948989 135159568 654542654 507826644 163943581 578077971 597065715 901376045 447343890 325973582 671220650 974203268 61102210 162377480 835250455 139595140 960949859 418653701 674942900 26889398 988887084 112106487 212989533 857799714 530974287 102779133 215819798 549787777 923120104 902689390 850873857 693584923 630176228 841000542 929676857 718764159 568883000 887892009 144615245 179194040 175115128 366925933 181040373 441209955 461006424 620341104 479695716 954125086 799151175 398352032 839136353 29485057 895512207 813499951 959923883 957073142 41303187 615157025 161137577 779913038 945652689 409169643 637156991 481657348 372540928 551005122 377802063 51503262 683738717 220022178 28769081 303255224 42170012 622292689 4633189 736093335 818722235 534903338 811800603 242167377 927904311 296437485 259869218 89565160 82139803 947678719 372159136 602677586 613284541 366589065 703264991 125057679 896084044 548563163 97711699 878081211 602859935 138494255 596338803 274493048 518682012 439494595 380758303 362065401 965930858 649695405 369312984 42900998 329917080 625365365 859290989 720188048 835094446 444861419 296948907 219169318 705418216 196468330 41145778 531764084 839345458 670592320 170366317 415567841 375796065 716054677 652964994 746898796 965528936 449384125 625577145 526070246 242186706 778368010 163686262 294803437 821164705 302221991 95162560 451406509 793137709 885765999 883972368 369969519 355825024 96634014 416666620 384562765 105700817 86531696 533215824 319602253 780701622 539005381 938395157 116486680 557625392 236448852 199692470 179628982 404514936 562738071 541052741 835049380 342480902 98547487 800458535 286326873 587144950 106854832 728255007 637219712 985392252 458066810 7265374 795345276 262342308 176812170 572910154 606916691 209264259 741605557 782651707 300805964 819776180 134369802 535125802 474342266 65956062 406562828 208712101 241339324 915284125 674958931 193999425 205113228 166226588 389488072 467213022 126288130 190396769 629254673 255258127 662680388 3575570 160999415 123473747 691871205 871180955 642158986 369346235 176618841 954753337 172484905 35101929 529051446 434615765 383886671 145328141 104704634 437156920 428704432 457326532 939613374 406475040 466907732 653144221 605137849 465197576 563891518 30110935 455654522 199819743 377446355 628775194 369955958 258360124 308070454 810914799 57850634 792820995 720020795 280175313 588543440 864178457 429073910 978203730 886741133 554425198 335078635 487043024 35160655 478160906 472496715 82628037 338924465 331160625 262584524 962036848 313476610 28391877 611752556 660350549 706103509 571036935 374711002 312910952 755483874 816182331 964660157 899996964 777106814 637613294 874206854 887591676 806150985 693656996 862011156 573268148 563717980 764431680 594050819 339295870 265736117 791923063 731164965 908066735 648044789 733059589 477000522 354783663 528954670 567426761 669927169 331921829 422463229 581506986 760922042 657213171 52004197 323382363 209807521 294890761 367937082 415778531 188408606 931612116 107319367 862574037 558870356 98307154 241350522 257691472 86044158 952944874 880598063 104531742 449798613 911224482 349186694 846330336 817686267 732417235 483616405 321517387 145835839 7527114 295134010 401075364 659200275 453055341 338634870 72976716 510741166 901724811 525360586 200128785 464721867 639580590 155230223 188703825 182284035 860304082 644046169 131762200 940222931 947961924 749965545 380717695 92683540 579789052 80182481 910634821 890045215 864106118 493637833 972059188 765710378 863163226 986156954 774226399 264354436 181380176 552136963 73967614 197109951 574224413 216165561 414641547 884198174 421459722 739149311 627610968 558314646 475773674 254315343 208442182 475348483 866687594 703578927 675514876 778630954 151453774 572998969 555816902 858528688 633272922 529029618 875417322 402882302 931615474 810278943 368626681 631835862 421962492 785835168 231971778 728748475 432987133 296196597 191594790 687004915 729394774 885455773 104440458 353029165 692945935 117718222 733758650 398053655 193364700 547512696 714299620 898056629 674790492 190309168 280184671 800175112 532839272 537080056 246123656 492940977 360292951 341733443 35943972 322937511 42073345 227024376 438539115 7570321 937696453 98054167 746836091 365080759 510112765 4717191 444160637 879003501 940720274 248876107 346598538 605426043 21035258 636292935 56239543 25905283 911506923 532126808 684229510 559930663 101891000 610301940 654957692 895109556 844288043 49624488 445330297 333740667 666758178 669890928 23634245 748369740 102397837 362224837 993201512 429706466 824668018 886019517 491501612 279847331 608802280 234131125 857181724 164100669 503917471 413895112 140814141 747666729 934784577 17540679 556904154 89762069 243030109 593524666 494562726 83250256 800685712 148285059 440412989 556994926 545789300 756261517 855305366 564070987 275097534 801882322 662755572 826347963 821392895 15202134 734931191 384672362 123338643 265724891 716369815 934025604 859848373 827605502 704428895 343062833 126884980 733229560 979756658 702816677 230570179 335201884 577314400 982532185 834102217 744961209 218578076 458687161 587457346 565557185 87447863 96555163 349725462 836284473 544746486 195379197 42364677 599514705 348330297 909247315 332931826 297912833 563848333 904953619 842745740 545167108 188106227 551794723 239097419 636278316 780183646 110740265 444247849 729871537 197510977 668732549 174763243 561324307 375113597 43116648 663181479 270202213 105366242 19992841 800722605 383517152 16896508 606051164 613849807 925594820 103804926 340776929 868106372 186697268 52556444 63976307 115852570 166229308 904811138 420789700 867749430 577566323 309182250 864886458 776052785 569728612 398750609 608592755 787939668 75499702 220158497 903139110 16070708 458871429 530037052 259256075 499874523 888504228 516921703 727227577 990194107 311535069 787188891 347515462 13473132 129723189 445708651 372111756 763388649 537896379 35550955 688538932 929143378 524033596 525416987 82030843 378297868 999762340 39171090 250281214 725384901 203175949 619427725 536852775 895557830 54988983 881511670 223380790 356621903 229984107 493394098 391557698 885997292 328577099 854812805 943468737 317886223 887812001 353041499 638075141 226309912 475069601 765074749 380276887 241421367 802751869 138171392 388202240 469285289 679952214 307164531 930982630 977063805 453731085 787915845 52458122 925136749 415701328 21793084 578505885 712403110 668237350 336443224 536977708 103710569 518850481 947460111 594394617 726258643 438723054 341461971 128468650 952667306 375510055 141557471 526686043 32691091 466203228 573363850 393793172 763906370 288582922 791362490 295839875 683445202 815109167 44662343 263334176 161576558 686317343 850234502 65371955 670048055 136775849 673847277 16489619 711908816 861783061 227647213 468857504 316614906 344415793 691331182 600184762 738769152 894226616 301785631 213015830 943128692 401675495 450560829 535858140 116255388 791105582 115889376 79519049 68994992 252338775 71920070 363687770 329980243 175124016 419863526 691771529 217081578 448966995 388536657 818025150 390832015 992534671 170325340 591347892 43633305 752401684 761469540 653697697 683550591 454450612 581372194 22399798 91536587 880643097 924575259 810147124 398628169 637365900 840796195 639304672 961193451 490567529 367603255 655042725 423018551 470748742 875048823 423959138 374504274 690895999 1441062 33558528 314885963 350874602 775793441 90262933 639829518 438816160 107810910 824239420 653347008 703580672 309028512 990198005 908517215 722753481 442269554 659261514 810446671 805102974 882665665 961988240 571111331 501788546 116781427 431685162 754965691 275495349 220469397 144581492 642648811 542160047 734930762 352463719 415301208 522846700 217574014 892626295 604585078 471293835 429543168 635469494 93564756 315573186 472719184 397236496 249338603 779683651 732544002 582233979 712750603 896535048 290197574 253346336 785249629 949375147 668012527 688904006 764743723 850570876 372272790 181493361 544834219 156848790 414188404 739275079 415201498 469182306 241826797 817181776 709650392 297278116 567261512 920251738 921737697 556201818 430640417 128058863 869334476 765957438 610384558 630221358 592239107 432379363 457294788 994310071 560941320 128126564 391310661 976635926 863180993 475151736 451786791 137016569 423899441 85607867 83678399 580363674 375734677 296707260 764373189 746112703 670516695 395603398 717124349 877366152 771457309 29377404 743200090 769330705 853209385 593883481 492009828 837724936 394989564 818466098 301024386 594931952 636162607 735914592 616770515 956298073 411178970 254660983 60277871 969174831 582705963 406729389 192765963 352006272 689610949 386689004 606140961 517656123 694307139 503766580 544880334 393150365 352290814 893922487 186131994 44832422 87966553 650556533 922910168 311409400 776944175 856241319 379428108 13126182 762367151 245161993 857267259 897249194 21225669 610697803 564515844 725889148 297142216 391318542 182760007 270629722 323333858 227654676 812083128 502523310 924991115 40369395 822135490 113533320 626728521 159575686 557110241 709127446 730977483 132995126 320705063 918015885 288520126 792672356 373587050 112817451 638757162 959125658 354767537 844006700 46543813 814327200 711787989 283108137 631271754 563823298 961280495 364816043 783273813 522419334 199315059 333661217 773538155 51904287 903415810 40807303 771733342 856076173 274042866 583308929 103754739 118067453 25131334 903797818 395108456 96852981 532141927 174528806 41789873 593794352 426743119 125874089 445712941 870814657 933453873 406080180 127291645 144804296 235006494 311461827 489811944 680589436 783795794 162190227 307769653 120794576 46299893 221649330 551023871 491444676 636665070 303402425 745959840 680366649 865225974 878130424 685806607 463944441 131568967 203994566 648297778 426504798 879290329 871956672 301678006 823311127 59507336 673153132 725227495 927415143 821816303 46042963 544151777 233240216 73673742 351631301 772065721 5691139 520602909 501192150 198994824 909819604 130487106 362483538 301274543 129235231 812994526 704695255 717937535 844963809 918858990 827437527 943842287 272432775 149592814 905570183 413382068 339296585 796692719 730109461 776886378 371325492 808422992 319288593 280501967 598271009 801630880 7343114 178763410 46447702 141904655 419184181 41433570 909387465 624378413 36848332 798898496 26203438 242688461 333357790 416186589 309578096 549556227 79774936 115570728 719008860 603606803 906727626 269733378 341404073 832755119 169358922 610015158 326015809 37501814 153470734 338898010 291533699 586536218 211233764 440602422 547478615 804215473 84392656 786412351 246590114 109754823 502369902 666666834 19820608 283495153 431134746 44790139 413767235 336027921 605872628 781585478 828920975 410610999 130520097 619136910 887439757 556978819 379645836 206288254 55159908 316794449 360124713 241728579 765456863 248783065 484837740 771719022 261554382 57543179 319496724 820650361 399732349 691816901 371744082 884069121 775926345 974333312 887462422 927816195 168334723 216152481 568701839 131529471 980393590 259474012 251024916 495846177 814033102 857838745 581219174 380707689 406618804 180367060 34886085 827072163 701663796 964970109 703106303 326608930 751568683 715226163 162437070 80568740 823013903 123511320 795563923 86983936 359287195 214225129 195219760 355167806 86905864 960066209 70404485 135675235 305175688 173320266 375724246 81597931 686737596 889160715 487885204 430723211 563256898 528554600 880080080 393436276 787654188 336251066 262414399 38896335 397988981 428455620 701480885 490507842 468899011 466434126 431210196 39338206 936757880 926693127 488834486 720320671 939926443 484291787 243250278 964120146 233094581 564443984 631534445 278080435 619595548 170371536 488201111 584001843 146154149 70127052 501825892 54662723 357377152 786491565 739519686 565326578 764356243 935921902 664636985 272216174 525399547 727022803 412133113 115484320 371701753 40713139 184642907 834987740 202969677 197235705 946667125 337212839 142329300 932652211 155862520 889468229 476559824 313867693 253983602 708302607 208502116 408615666 544130951 225883031 504647682 218273238 630714599 56143784 625508993 855715578 539419027 890203497 214248045 938137467 488820027 107997481 434294367 522620624 274143576 977039284 314265908 889824514 638320012 317477741 538568452 574776454 127794400 327902882 575795318 48981682 825588276 796241333 559374922 424896592 89102498 495855517 724440592 997651759 729670193 257247268 300905689 222412899 410482495 776529213 79178860 924748565 128693106 640752037 636725029 921396245 661882209 49735688 551859455 720628295 369900346 525084760 821140296 457221820 230693674 227908866 642855499 965775971 364830808 534051025 429122258 484759330 477726634 313465894 921009153 758414224 994765414 600349355 234957568 978306527 903381165 497296375 524126219 778370490 522831979 978574061 647853277 173139727 2022478 762885846 848931472 401139530 539740354 556034847 764989402 309192594 98804148 11075667 944281739 340617155 161486798 826383726 828754385 37627336 329876250 308598219 51440184 778381879 559331700 781916380 544270311 3732699 904901286 408027776 361104820 612036772 169907613 896236522 179902959 688425193 432271987 986419658 58648171 891918402 649613626 77864029 310547340 521938 329326050 580761111 497509119 812369747 621555387 687990674 6919713 319976380 616816432 390498729 527674204 751568675 482418730 97684109 14446469 612967750 6411556 284603181 121096615 517174269 706542807 772062280 438296688 940497180 579680307 678840449 442917754 795685827 645680124 619678489 353739127 635951865 634435075 537210119 186385458 165273757 858331092 50252482 334670252 517185607 337584784 802771879 72459934 406963810 371319821 223263212 601291500 472547886 175852991 776509624 978608663 985020586 448388797 967122130 898033272 175478862 44988618 556483094 582992171 412789219 282135846 810354852 1804844 843801171 477370348 297946347 870501609 637219453 958966445 486135758 506844810 880646848 430728009 863026899 484260492 621322009 232654759 525290399 924026981 314351166 328474316 769333516 122347966 118978722 479410860 635100523 762468857 756985420 725489375 335040321 301063849 62058836 649563582 959778031 638932447 160610626 922045124 219597426 123023188 391952622 309401901 192778665 879356193 310921064 520780928 413752232 774668166 922882590 827995244 981959531 581093711 591970178 219020894 235748289 998307320 183325908 443394386 424818448 713236609 530982738 358440547 986376514 684578065 619796202 298297587 484977763 909678263 459825630 191744399 751544411 499526261 516485852 581380227 49113328 969547004 355942167 943670511 427647830 898988047 860572195 202181293 748995183 704909142 197654859 636662434 309682945 629206736 405272197 639564188 405267806 415065894 255236206 111987831 716501664 59216958 582227710 212151872 160660287 34682468 396294824 673427175 781832924 843966387 617233107 613214619 187551922 191911849 403678289 838929608 682310057 111720272 353068166 57795316 26395796 756451804 624296271 665620717 623477445 945837829 864371722 154921655 981775539 137919576 320348947 323218347 309998416 148055241 140989572 696310482 571006222 794381465 302811486 338141303 332751535 750286525 190444693 493805654 66891276 96294118 431692174 511414548 317614972 919675168 514870343 81918912 307265143 880503802 85616148 876172861 125030963 802932394 708933297 919159423 622064487 59954338 807988984 773119255 95855317 155884974 628682473 54673116 652565901 125130804 86639208 106850835 767487107 177373922 598148794 549171916 839201022 333341925 731838710 6741052 400247471 748704780 123114300 709446184 363218079 288873586 620433300 531906309 525192241 742417742 578904340 720119420 128046318 687841306 472022077 463491733 99294473 120796974 657176057 953437658 579550199 722296220 82545621 812842781 615063089 966064502 3221489 606631097 777327962 967700309 11527297 378129739 288760819 744764170 69842431 469434426 536159853 159212024 920906557 751091471 160101045 23937799 262950045 64134287 771410476 579097610 451144664 51983905 986934885 746050954 991321180 376841444 971661950 754079272 23134501 399363204 712853275 896595577 237602190 418178425 661905705 504208061 268141042 303893287 780315247 402976606 95405082 169741696 72929115 769631487 144298390 795272913 587350090 298843492 621536242 155650204 530339319 375259766 803640091 443876884 606514990 264179956 960091552 828858507 27264143 610107259 125982742 766325659 967447328 2344759 115717890 884392270 935328103 213605949 302831777 565040008 273492450 621314192 115232614 67268061 936768126 421529243 131519411 101396856 988046646 41161736 990416783 999001923 484491681 411384957 580266197 274807731 636520625 879449713 380830909 528207699 616411468 390348285 740350270 375669209 759783018 42100614 127174912 924639433 649324398 490225334 762974356 79050795 335514242 17825615 457257705 324638690 415654477 376801314 328805671 747756666 966973827 22617994 976539724 867286216 255585359 261876647 852192842 689466965 294647356 562058924 29980939 17845359 157124690 872845242 196968496 95918183 205744066 833672074 628946198 555691214 732506953 889055497 895750183 897425972 616151246 636857320 309519944 142730721 793004805 432606316 425408627 976313419 288247783 552934129 741367562 431526532 351287263 147765649 440527108 194869310 720583944 706181233 69688426 102381589 793559548 452612223 541802940 670831521 268340397 655125620 876143309 215210988 292633813 557962282 656127188 545639226 303890190 523812763 507044378 736087275 428260519 397950916 858503755 958774913 198486499 118647065 519287026 628670420 115329349 562519753 361065569 931312633 319916426 795553300 647268029 763569863 207742399 367909720 610629148 841564579 41107167 703830889 207121156 872828943 4561771 289855226 191996094 607438975 271175182 41355054 236698803 695176900 755871515 5353950 658812735 120071596 613875930 51303072 602196839 31177908 211214403 986664035 267701394 215622520 152183886 922536472 612260641 917575174 778696468 915239420 276662043 450495999 190446750 946845942 603413784 442050596 887277111 416189079 787495664 488557311 461347804 122822933 612599279 572153189 280148933 568480779 596747077 955274802 737404150 624472586 633418529 662826425 629046766 152748829 681301913 171165064 304832256 470952965 918272588 56232182 133758962 843730920 146340713 151125997 913373347 500933949 744931737 312318165 275499700 941274567 69451618 603021306 327230525 306090825 336006167 686640578 924486176 64592149 309424179 513588680 325578928 782193647 164350648 812185088 792261172 856796382 342330409 121241832 975910895 709921005 858745732 141249441 204106714 137438665 646395398 1293659 14584799 353802321 752956837 963389032 216381219 325677478 267302209 153818367 386393829 631959188 94230328 226365172 270134862 444913233 918369825 940447010 91960083 315787314 97276312 618317572 736289053 672448164 292322975 606882337 116326477 163929664 389727803 184572384 675255425 229651660 437436983 307986208 689297451 684369372 655440328 18633021 65649959 460729399 608964652 300034684 828303214 678074419 396520577 744430908 495194832 468966236 385116051 134669445 918957244 480529392 374628494 599081064 388685378 326157778 452501036 430415409 733492898 985517737 516092714 656791625 217047650 407781076 958142613 706768775 634711709 662819272 672673524 334218614 313019219 235089670 868928665 976830942 495511765 547661396 109258043 941147402 480573018 925819242 497317478 165044497 179409674 904608031 800626682 73540129 522796805 802453997 786212214 96226388 98728596 120630942 218084694 227634811 203714823 188045580 858987764 541719663 298616724 988022648 989034478 351299403 588781661 936127307 931423841 181264386 544200934 50473080 639401793 451339050 507622461 409517539 501905804 662584473 293741329 612090242 440008018 731616539 639494370 769382792 573790730 882113478 497808119 285031138 291373912 282598818 309004888 574639262 242842806 900600923 385335526 762098512 609931447 713119479 214659379 269753882 849534531 777633807 209659709 709725250 731540209 829673366 270295884 364193248 916610995 885578975 511377000 562291832 135687303 633468525 768836178 696647700 727017890 884975539 286776934 910899362 229876102 613072744 807242872 373259735 316342766 42225163 745538930 14310439 853156626 967313925 366865486 6878705 649360514 470596206 764269018 321753078 971150707 780624207 175334118 708966967 506519738 52836306 751821511 387844822 616824142 206465257 661785236 497195375 258397527 187103674 525142826 960901704 515920521 859234026 872854466 533622955 613827485 564775418 566085211 728456690 424336016 817978441 729831410 511590959 58879508 134440122 482903020 396159758 395480449 405307765 514486065 465411576 834182378 503609043 133963041 334149790 416807117 99118074 765725571 801151671 320544248 65244942 725976202 414626604 862506165 363582055 589042109 373185979 797782909 578841838 421316466 162995588 455430981 301038212 222247181 837152705 175317686 859654732 792889371 555009743 863993690 296765327 510072703 434290126 221526439 107693490 86760846 147708866 439504465 707112030 155183838 363545136 988543028 127756672 819376736 208052842 1799699 819768893 531657144 507357947 363906259 369587099 61735315 284565355 739411517 700667441 658014104 427730256 646151590 840074384 862659929 276601062 663419624 714094508 611977541 381730122 708479739 241696590 603345471 981204871 726409703 324774349 125612373 893184486 367484198 724023455 918743312 820641750 37600954 772345549 402763226 10443701 732123928 554904689 797052133 468042679 523283325 683460027 931758304 494226644 879111981 339102762 759126227 961760192 681741995 8139997 51342342 427762570 724392935 999293346 211118404 158061257 970796624 821969408 501322595 972166338 964455748 886701213 886578468 727292931 52785185 657398208 968250910 281768118 69619954 191051736 288852174 151256952 106222060 919375361 27266906 779304271 421782799 58440123 363254039 660976347 67710403 247424930 844275087 242953757 579863844 392160835 819330539 603299353 791820646 741422137 773874784 159598737 686377942 726182551 141371507 776870099 661432585 957306131 893145842 223236979 442096018 826618831 241868049 429501517 142080437 224969753 373369226 703122455 232445581 479993285 972623019 568882053 107752687 602923252 152449339 373236647 955330933 155686453 676762640 283391766 984799957 184891349 167645478 269801248 210540050 385637107 426237321 808831316 185841272 994961541 877808097 498479794 488620828 18800765 894230715 544428603 602068224 887033554 214636972 900373593 316608226 533105988 934469782 764161417 246791004 719910395 246648510 164152987 302396895 54724291 322874688 908399490 49555660 179681651 35575245 804540568 119600691 980954990 928489720 625746984 164445461 35907515 760523559 739952903 882607078 108837554 810012092 89910720 505348393 446276942 629724170 286935075 909108199 100700224 204741131 866781896 989308344 244865675 99041973 681921484 572956772 193165949 572964368 594829543 998810191 249503355 994122956 86034328 703899588 895983092 383897111 242728195 807606842 990193222 432671988 825419767 880526922 256452197 432120652 868386456 611552624 196373894 397725544 748686421 762398846 137282062 789659477 670966403 667852970 683818439 788903779 845640967 262358582 383233280 257763560 933006751 73564081 439962301 547418984 646892644 997715386 647517557 517803335 39641544 421572349 333242775 88033593 946894366 157549192 618417901 451697310 814314936 58685176 422228224 774873354 994047036 876290903 430751444 21794230 810301324 262936397 116706440 61861142 407150643 603858488 634366954 91923314 537004015 992871339 186584213 610329466 353511822 892006226 103148546 628172144 371415956 804282476 205828056 931427670 877658896 386587218 354486076 293450246 192597022 837966715 948675109 34583341 327076871 839972938 517923554 880027140 196852593 550555628 321844254 131701184 200174905 533406565 243290644 91682725 898859212 694804113 655474930 960361073 886915838 665798278 504534427 299804891 738724185 533449569 371018953 542594397 973067107 692164897 863905669 223109089 454234264 481367112 348282798 237534187 144514682 756077175 546615969 275925712 932439810 354722807 60089611 197041337 600425885 174164131 90270189 809754731 922381200 832956187 728841801 413089871 857583038 859252676 321246508 998725709 278467918 738796407 809496234 439419525 445369577 440682979 924008769 868963651 375724252 126738871 47622641 739076235 130426408 87314668 3416344 329169614 444094099 509622163 404126104 187289152 783841244 152250196 427639630 744424649 64225426 19854953 796001850 593155758 549496915 773896389 438965597 867655605 408934517 293961357 943636999 58961649 859937433 499185698 961135772 475036446 159501119 30071381 892567459 897151092 534709050 572649804 947152235 752490370 223684903 818640413 131849220 739508875 306753274 8517854 720361267 494810186 191017333 493929805 768678061 349175222 130034466 619676148 888734440 796676306 647405810 929426642 520367231 251886002 515701447 192302032 971643963 615045400 190010507 186846859 23418591 88595286 864655445 466861823 372604979 743276963 573493165 511289780 369129717 938401209 327577484 406791655 960079605 988870034 15261447 189565148 379830305 388994315 636295054 18789778 454833357 815428267 341534951 15348983 330752165 959977302 821155730 591864558 698868819 517060929 808682542 189510345 209759933 70332252 359214567 464007914 417928103 639105377 263250125 736457475 370468361 222232707 490261910 568797316 367953947 709295760 705920711 794726522 210608209 736868028 927401403 367433129 477207953 2318000 589158580 869669316 378968226 914884607 861476705 215976439 192258785 614334513 256811209 227639641 109191987 215751656 32054329 87445910 360797373 783293387 207247815 185799765 729002239 433064930 991043962 46658552 485276382 981849188 688946923 752261645 377678637 690622451 172796523 62038217 400268926 969053657 810090340 465891528 240214465 445129935 208831652 213036353 842925365 395694443 778729749 616243086 464097425 565187861 574197731 831884096 470777420 156657100 153906028 482180587 832764970 448206851 231964683 705933793 221081749 705789922 760488970 32010267 74752762 467699615 14161391 513398459 340976888 618505349 10317109 369313882 950267275 549184314 50160229 323087961 700474125 235183594 440584499 507393266 337326671 23598759 407899336 627002815 149427332 54049761 963237081 567367609 23724332 501687856 164914456 187720642 226372510 485950197 461896460 588505537 677129165 817720025 813456689 295898784 870039233 34140417 112092892 837527608 402247072 778196253 951702982 589003422 602354345 410789793 247291979 360594348 560984772 500716528 386100964 387705992 84634976 542942428 686900239 601598999 260711900 960806795 958191877 994810125 864486834 444163326 9092235 786643296 266628827 835446321 306838082 943562842 226057430 694575009 551567004 859696445 392613562 800321031 400577611 613054116 634298601 414512883 92970333 900736503 632804735 589472387 303080769 265937162 848636457 285797165 204590800 934328066 823425779 93212998 98263306 60025853 284199379 77274911 155405316 480761226 857386769 516560664 964116540 458329004 871248636 337845291 511537345 600782257 87483852 710806774 217637864 96132980 717585838 418455758 209690611 507460624 363085076 201812552 250603509 535203711 337440909 54814186 19452632 447228217 675232462 781615427 146098310 266199646 164845299 524326395 329654118 833455910 121225892 645710822 521914639 320453619 603005869 554804672 98705089 102300813 95104126 732625959 238361561 346035304 33752918 800790902 214256025 211187808 373896920 767348135 308883800 254081265 986314842 69822633 613606726 712709194 501965226 217918909 75609186 324313651 214663325 222365236 312718026 499463349 753024731 85555027 907459016 160654288 228663359 779821643 67060320 989712449 309883641 746641872 839862924 28937208 955704513 81031209 116990936 349069706 388872523 433693066 595539615 47470600 565443202 938850521 141589759 169933846 834703651 851608133 884052578 381236510 293866187 879973560 761892704 95451466 100636021 251941692 516517997 707717322 218343207 563056560 221968556 208673696 420006789 847307514 266421699 87461546 236367453 916727130 123214200 974914515 529644246 910698206 1243740 962145145 464237060 320328238 59480657 414872032 676611723 575029351 443213052 90749721 403390039 909608041 967987982 833950465 922919776 888776774 505181362 392627702 535155327 767131743 396426300 592503537 5005244 703675814 128664150 322341326 611386434 156102943 854061397 699451495 802006576 44111947 720817937 320919151 781335807 947388249 230283148 96399169 35351853 241916806 711885354 443034234 359227992 568737781 992535551 96745363 239314623 536563362 180935125 708383809 143532368 268796208 652087736 607617155 74512825 989916167 843638963 911614521 70874935 838281668 989826746 793397154 947688898 361527952 474681657 518297069 518071475 928314118 274130968 937115560 4691589 549753219 309134568 711245217 568240613 663484580 288953840 662271720 338022045 200059787 798173541 142412748 880956422 592323554 911243106 638924373 382503785 274502786 421888509 332138415 314700349 706596708 350087991 2289905 366653045 665123402 819993793 172685938 953357616 667798757 18486336 467157271 943450705 626801309 714019430 576600893 775750254 725046084 183468816 51697223 887616812 838432718 708246760 326536222 795680164 942572896 513267302 263249466 768259968 56512727 415880871 768002006 12057034 414844314 894828739 553147526 99707874 881549200 865288694 811856031 273922059 892816784 217849948 146585680 60752473 828572412 863095577 683759120 143391246 12135340 870122226 60185090 483801354 423736109 809194750 975476361 553407260 426732065 529572059 565334269 156056635 131882479 379251415 243746758 42671737 147397537 156847169 879608421 992709952 556191620 346178223 858625833 847697898 336918392 168309964 279637016 569595351 324746366 191175255 78267890 37558614 671956253 548370788 941319240 788242048 877782207 171495285 59224385 24856590 384724622 459528912 605325238 210779019 176038138 749097179 590663016 276122412 36398345 412429221 509366884 50929223 787225876 148850324 547896013 79996141 768279497 359468403 17970843 450340948 369230983 751088291 252863908 568031451 914524153 633929990 379255178 265428640 744528133 593680414 865369754 273440216 170899879 236878636 434340484 26281890 415056309 353400211 212337850 353429937 274566231 852117058 74843871 922802787 105373785 523767691 59303571 372730053 692333770 470023018 61106773 630293442 149802538 695329069 963713270 340079692 247146722 109162073 811340633 650009337 809054666 457918034 197915826 907382119 79015850 793869596 152071585 887921826 403146539 751223673 93147722 690083362 474475546 326871680 962914647 278283858 423084475 54868651 284602983 240655415 24617585 137450819 279294228 258717518 70514525 704106333 848004823 956479611 609259377 595378128 148648988 726046797 553207157 910133466 726814499 779326586 560015990 379192818 619507841 312489716 678503466 775440671 237064386 723495617 772144444 624430678 45883510 881033986 599508054 79424109 851043831 574855500 692712241 185779850 111712417 612632934 230647607 849278867 576834494 760902149 972692524 268872417 645541560 878871386 217086725 32403269 569633200 384461762 742004053 906423968 142144823 102042138 806673511 346964468 650852966 107023849 28198411 213008965 785859017 403127525 483157220 831682423 612668108 89620954 41008199 870509943 123604124 454012392 736673638 846090096 989591476 760716705 241176923 743539478 815442050 395286743 156135867 505032034 516516309 586802685 207157341 237527666 215975077 454824779 741968055 332239759 447831396 837450867 319960349 995094144 433255393 514187430 352957139 192423986 981483251 718373126 839594251 176417317 257637647 757788273 912453948 217202983 83514921 717036871 950184742 403808675 167446229 870516791 854417216 67879382 977098125 159603949 602391009 206118709 166595950 74385717 440964022 389398940 89145977 483283182 100642202 872850514 503305073 186318418 840199401 668920625 581948572 60295755 812353398 150742657 199098758 435207704 643154027 967574519 897803098 797232410 972950938 987022698 520287981 765497326 598052252 682031434 416830476 227938687 383980913 962156676 210649295 366885423 319394392 623499115 448529849 167368249 323272075 137027598 908964048 77866304 644681608 396669927 9429399 750954494 50353916 890790473 466145086 744456960 848880586 210727810 705828164 485556779 196942971 131746942 906840933 290417231 418721926 899351092 52578796 124254936 460045896 462777742 105480498 751834471 987171411 177037830 438421341 6570181 665306880 885364780 613386020 420507049 386692008 985829997 386486448 107099807 271363005 302814553 255043943 628971326 802112370 773298449 809356398 759597981 405332183 617738285 259500416 507554169 16107436 393017916 608713388 870181560 759744477 708473789 102885096 99823382 489526160 795829145 541867046 599926820 854107251 957644708 150153018 364987090 746417691 327736359 91460550 539053692 330916604 343573856 823090878 433566561 582272964 614446740 91277148 42467625 404880385 753689518 366289624 495657680 327747177 863584337 672614079 471371636 484590205 242420547 392711713 325436298 119170629 288122488 598787749 729659585 386846886 697128611 487739811 996201788 547903067 152023950 864270352 23395199 705672042 358977947 5661936 646570862 628813415 128483756 836865739 390422475 89033261 912869374 721869081 998772662 726543070 929956152 554943168 258575963 56670431 103505710 314368484 825883198 833854314 457629102 663919990 484020679 235323282 658387141 255145276 545696239 785654463 967575375 334539532 192517601 892693883 775816028 949965410 425360190 571535180 10103422 209161087 58956641 34011518 866030285 459665849 330973397 399238188 816416670 291992870 236158523 667833374 192142258 593084023 910449686 711465507 536913246 132002208 116434938 322829319 267925832 52259760 865931148 392298202 535809029 330095337 909008276 448094810 923572670 391165789 399483690 593629983 790521359 293536077 142992417 974357980 565782633 127820577 747595654 776893503 849427738 990075000 227964173 843067087 4298990 992424152 252326635 975036279 54196074 687541360 975406553 26841751 61325342 269611259 276241899 462998980 660714553 843641483 11257286 809399199 449441175 468176616 69698314 860406136 387831563 182596664 388331124 499553295 574709195 324908920 871470865 905235011 780644853 277852098 362008687 920221725 501471177 791363361 458245015 411949781 632624493 253593785 163205513 913246603 385908324 56518890 105405176 843308236 198724183 13027860 913983740 932067333 832853233 403448581 142548785 160919184 312717023 245648180 677465836 482869595 195077183 806937572 670869917 464947612 725770802 185723702 623334303 917361777 45892103 957399452 465423788 390703655 412432618 976070292 461855451 826233623 12390165 550634200 855147767 960703399 762728101 838741917 149377866 588694844 830907728 883579002 315436772 335905853 187147878 93121691 262673885 969931012 407493524 772409331 491061322 548471995 179837461 895153986 507707246 382678931 637395271 941128251 454738178 401259521 137098560 865930780 796757820 216035011 598191139 650040619 84297068 841502500 874283464 280183532 512698258 968155086 80775484 885017445 680644823 299780267 320606308 490652413 728453965 74913736 926211834 407383842 381453641 864893748 453162238 311574646 607238018 380580958 376813425 341204424 328305184 920594156 544198164 740862709 598854527 658683483 133284756 415714521 336900575 956150185 747645282 737098722 141491603 541510949 519036888 171147296 590307428 759386852 162825980 384751718 893304226 562329671 509037103 182625402 255052359 560594735 78563589 697610851 673020914 67180772 285363756 212363334 934049594 260800116 665792447 785272745 522876872 212072509 841702164 578559463 600301757 776056820 641692479 463643551 980377807 604009748 974668904 403860407 713350789 372428535 7408703 33201117 784093979 983357036 715903512 586441647 974500872 390968380 368183328 617707371 319350168 595070015 323323969 132038475 871242740 6019642 522747169 390268667 2591285 427152106 564450333 507352183 56117105 789549913 312666720 191335848 221296375 319180754 618962363 85723764 891482922 885042771 709848386 29394592 559535714 170836066 820388702 312800833 521076739 703917164 279300959 349767876 308628290 447953616 266221673 136466132 86794945 848464393 350378698 843203390 629802568 584142137 849515683 575671924 334725467 423886048 713537182 686230481 831389908 179247330 512450591 549580789 848617557 199919834 119193964 577277026 602969148 473686388 622355630 853270916 705906577 908401891 803053572 491709619 201440153 241566422 252228854 368750820 532958082 506736712 635684640 812311987 638919016 910325550 946665506 954398233 670972679 442261830 88886689 738133983 646557467 539423512 753720412 772850625 703643022 99191480 417923232 424072808 929528307 572207558 105350153 771059423 360503379 199986898 729401346 893079730 86488308 917112623 275701376 701216692 664600011 487441265 310368365 739747683 694566951 393904341 711059330 703043361 92978638 129377422 47968577 856434954 974214091 171003757 238139534 74740245 625570286 672408512 16240426 696442666 990033515 14110898 270613202 975395358 943905461 712522876 520650176 799180018 625038600 470762500 657996472 910645216 758058808 840703158 187308666 213360645 910403978 715633958 544007373 203767204 913893086 402666103 994568962 647542031 680437908 827888240 830955422 366341574 921203523 598748592 483417048 309961250 414782249 227012197 830375470 333900237 632816187 516075340 181846636 418729598 800977786 678259815 650814549 443739423 785046326 861228691 793825366 555269886 399870269 811131562 710800534 614845981 800350440 172630447 929007169 221399378 239448254 961264660 73500322 493142169 930371963 40635687 2836745 870326775 818361242 844863593 955493877 921370260 268471084 76145123 903844582 532617998 528022858 292624617 254149411 560632019 3437125 475618689 202376299 528797825 320352222 392174967 230945105 467787385 732179914 644268353 225186371 703201070 978763740 27916558 791161034 822908823 846558512 399487866 809229263 233091644 978466314 805709237 665481562 928669578 909066464 167356757 248047600 36748292 460949554 516531080 659590215 330153010 930253812 161936255 444917221 231625845 927860123 715279786 276298906 838551420 752034566 680103614 344583047 188313833 934001222 407007856 509715502 348171873 356871822 527322411 18848930 658643104 758565007 745851956 567020673 203191658 132533202 343950826 423448771 930397526 946697072 448036453 525109978 4091171 390288077 209515835 658340158 636261377 708530877 156380890 865792658 516202507 915694388 460266365 264586182 275635137 498122489 829171927 967759751 215338099 413456487 509337586 115313118 473711941 452448688 392517039 375181459 825611167 337083305 168436805 831716914 229158937 233716180 708225976 671547977 941253925 659052329 582145776 464625324 294451111 258779667 228448804 23134718 50108272 289324993 10733810 553730812 900284474 240419300 732268274 659448979 919965283 533527183 992520279 278387701 431307358 218830410 989110041 801510226 538947946 159115819 542940270 410433632 159830902 950485070 260904142 522849530 40388414 991960131 337269263 744851022 794132987 807920294 122543106 864429266 37086907 316617244 958029955 155680257 966950550 86782200 792099649 506164095 84250220 848950083 266984412 843101760 872313410 893260611 733226504 756911333 354994482 369917278 139390250 756597954 460400359 822353759 173898056 884778493 12321705 360744983 952878253 1561257 785151694 890080306 114174985 494132596 291920166 699962529 373139178 61363503 742084078 535227403 337735857 984742018 870521803 325104025 981038688 550986676 154142459 649129474 292213398 93344995 479551596 222700079 242155536 281550421 369616478 626690253 452553217 220006034 323334730 272327107 83765749 818534392 433355719 574786681 416873223 536553394 132626144 511773552 532857909 340528839 71429557 868222408 442418093 389147815 604667090 107548478 868145446 401417265 579601795 785768447 904061618 575454318 65463323 613278256 354845507 194307325 840943270 234399146 512882672 387277937 812646739 873638509 369300659 268111574 89115599 379334379 758607953 834923939 956913178 956769889 657316956 242345091 218029260 959183493 618642079 24834561 295218350 84328661 722955392 288082194 145068282 980108539 492619360 450042976 506851358 758889276 146799259 670957614 510453912 551994853 83782966 722210351 107122052 844916384 207334003 285653648 729685569 471529575 322660750 110928237 600156614 257599346 30173895 43632603 955080850 166724145 86314832 383710952 635431780 212854980 215091085 148476315 277558245 843102428 248757600 990980363 956188241 237043278 100229678 291961509 18597953 676398420 148249683 176139508 401483384 460781253 507704535 512005011 792628923 92985703 819583976 636661537 968290228 588812884 764955297 507287169 1814198 184261490 674809454 980683268 830779616 7795731 108384336 576045316 487520164 14627937 39888494 292118565 78291466 933470954 205524391 111495308 168620194 498707567 940397245 900303837 993455846 379904545 978888211 584778298 624004535 426667356 826919846 457076585 126377202 69994272 961001645 700556854 653937848 752283667 856405208 69617202 659736962 336112983 276735608 851944659 746280483 940725480 965511312 85088803 21500294 870500669 169170863 394507512 556390620 218248810 234403998 354825079 539158914 412155229 273937085 539057983 738225258 4837619 122414402 412237631 79717047 562744097 707558204 562116805 419698366 318858855 816434632 45074804 431444278 791441020 759377323 437058901 708541400 359512608 157496417 792009607 532791726 671902034 519130257 149533711 96170339 881928433 486624758 368538904 411989445 343059120 302036731 118438374 498293095 967211933 42570762 470292471 557003287 235219847 171107638 546257696 266781243 503454075 789124795 87011171 127860119 891322813 241746823 762614409 715209729 81878730 556173863 522265859 967391710 233996119 192176297 344451105 34407162 467252684 513956918 443750364 509896679 327792233 546020349 344847210 554517551 977914440 537044642 392035481 89037364 883501457 211215746 672469004 528305995 346667041 570168034 212744871 99501854 850675424 529572285 378337142 903372236 849178896 24792127 206000247 985286674 78626983 502851774 650547259 513735163 120104234 63216028 507877948 98474284 676879219 163833500 106241022 686734200 987960386 357076573 682480135 386993816 628380472 290722312 78718217 165469746 336997678 91374039 28094262 35627159 128846495 651414013 112739970 237419859 136355975 899292882 149027175 340271583 247106079 86391499 819058727 539416122 867872928 363508154 687612042 625366693 34821091 4580051 111171787 116744836 789812542 542960543 293858167 482316401 512323362 114492795 864928535 655428086 794195369 334224887 388036020 699486849 602671287 207610419 597617896 289251489 939810124 314762430 468531612 652825373 197927403 632773447 158064930 435821985 183100389 108028995 423524582 615111116 179808830 662295880 323296900 817873662 535589516 539074082 654361228 789245397 424471522 404903881 541637125 687906450 461148641 809013101 911239587 588794476 661466193 223662690 572852820 483264186 775211207 176003963 631597780 681111193 932521139 832240533 997703356 771924192 178913966 465193217 90909365 48839270 706605957 787865848 699701494 18762846 479087937 184326039 205933327 974403673 511021471 366808057 176468893 268355793 918458681 972054509 492021307 237068752 144819870 946153471 895995763 677790034 684007045 765695152 310599629 7775660 810007137 896297836 358688844 537318918 878625209 174021393 574328597 661990527 176194395 398643295 604504809 165967079 499892491 974969267 24810234 474506973 378824831 514112486 447397484 106357905 54267047 235266107 223797860 996174173 99817764 750403165 261571533 258802022 337927606 525800734 945735889 668446966 841707546 681788769 17691205 552371159 497659770 180080322 778252047 161295760 560173768 66503010 911508255 923997579 223345150 900821990 925262922 655830721 139597041 500385079 250208441 24519272 630186531 306933667 499227013 936013398 47599409 274614155 263186077 677629707 1837633 546411563 30739512 408324875 354144517 459125340 130357683 361895381 947143707 587041057 330073972 694619861 969305712 826214824 519459632 606941352 891780425 879101825 793917282 968521613 284211530 469540374 99521373 978287208 329535309 158051432 893873262 209192964 595786883 147822179 999524458 553377774 750037084 497286690 333915463 673774376 646324233 654767289 947289472 614196560 66923240 724160870 374331723 934331908 531044254 718241389 104407961 654368393 226255877 965719379 461249253 482346625 71237742 32328229 618206363 562046158 824774036 33069558 682803860 387543876 977043057 644594603 496798491 64343064 45288784 856073777 403777022 163783037 651615290 796370422 250858492 539680997 659027755 669340194 195371778 1513263 100083277 500305492 236446552 596963745 472502302 251356630 278450293 328846481 353882426 700398803 151871183 625748035 358090318 126309850 290879329 706813970 184127074 344539087 825005184 525115279 540708242 315597276 288233592 451531233 966773993 756864192 404631445 427916362 221759224 185845503 930735350 948961869 175540541 178060963 334406758 490262433 20304736 992918843 870225865 515361678 557798813 856073096 456724995 844741231 865388831 716854725 34142668 406900349 278735249 514005750 788177279 646084104 512481428 319055205 469649413 707603401 69293603 512815757 896106555 34835507 128433436 676020233 493640540 147320498 975107189 569202865 414855230 594983752 638237221 23205515 680302468 18163584 69361041 604472607 594702505 455574575 57043042 176866011 348870127 569111330 619895099 214564367 746506042 55516393 897658275 191448004 468970936 779001437 4285444 154143846 780146816 198267410 908474606 226547822 476369346 883093167 838098433 606844182 363739706 735314792 939883423 20850701 347399750 591886662 192295221 171709169 505887906 447531015 839720060 753362313 855707847 649647623 997606501 249079376 149932893 8499177 816263234 411747011 53203543 916195928 469385358 974399091 959050017 634525537 893644551 11965517 629567941 994149953 124004487 2799636 250146430 210168406 356429335 93376572 715807551 601594012 953731178 775943873 207137110 777427963 233737959 181265650 628350816 72108734 428139553 897520919 635673848 321389230 861258435 605715792 155666516 31749730 53821924 737659921 38382637 686526775 485896195 641881579 720925511 924162603 417087716 535403530 998905018 720728392 405102533 94141766 373795718 849401915 541274222 893299090 600538675 643122926 975009010 586728383 919305565 331323116 115695878 166340799 147321429 860324801 622097146 957269444 718149667 751023168 400843684 509844663 23824554 372931325 973297854 998024892 611972375 398100044 156197823 110739340 100217013 6722481 564212607 330624496 651360786 904450689 609983019 303926191 368480576 197920683 558408741 910952888 61026082 819424758 431070400 759578573 658723188 614829396 897970740 199814624 327350962 435082 983026992 757946925 994956130 27083381 803099418 282700129 292396710 511897322 163589457 603695503 170243263 945765356 154516465 768887398 465097738 29053596 678065485 70652088 478156488 361602626 386945166 583376659 384329118 986014221 527538383 132932803 993608183 489937450 5382652 43695182 119083582 441559364 900212220 833174508 559325144 634371819 51714260 690534943 565426435 876046110 997137384 668247517 710487573 25017778 677421065 906150138 212394548 298902598 958019189 210969060 95631110 648506649 458011261 585571723 863608975 538344299 870631099 680629115 532956335 556519687 240688948 820963703 460423256 702475296 718714745 883980410 153186077 729337464 263350354 447887148 410422268 382295286 64216377 325770203 418475539 627018464 544618287 213588425 25509683 724126068 508415444 900766461 121982421 458255729 448649387 289786223 77945042 899773112 191053776 922608567 21028356 570819388 194036267 356119705 432265075 804779359 100740741 821026635 676815157 786384369 260090048 885382355 900178133 927336362 207840171 934598862 83082450 956730169 806115547 579202886 117657438 470048175 314679724 472363453 75632231 779915482 441089987 498268190 726440926 392522219 959548113 237662088 422510582 465731131 469510547 725262675 748037549 425707934 294938574 367580692 905386294 355571581 156957107 748639663 687073350 133124263 375219329 713948967 322616831 957377800 587840663 291521015 262532274 658955705 386231490 36010180 28557324 81929223 37067116 29802140 953851064 642215572 529265658 857208897 59736532 411675634 301412874 845511259 634178626 800927162 698802982 248474292 129207523 236104596 943229358 913849331 594781008 170288994 67231514 129874712 960169151 3649084 844915618 966618345 63852675 256601088 565136743 244405694 568889840 32828209 340528722 315794946 987849631 288268895 231814289 379966604 823528495 111495046 34197117 467430725 386422646 515191313 166726059 79772307 931218826 993496376 956890384 315544826 662351819 977605473 300342204 522989272 887527663 867180257 551914016 13082415 66953445 411899939 829625115 90799171 857851531 759561047 948116025 533954768 339451266 754366591 161096656 389835137 528298956 87637256 984010846 457933231 582111673 466614103 909485621 631032798 527838975 575818448 231664953 686316222 260924034 775811873 39234671 584611594 871265626 572658947 809618983 914111451 184479276 963470105 150301780 882512689 42697673 94716082 343108045 449235712 182735988 812784219 9788541 987243910 60516074 909829699 827862840 756453681 59978901 83439827 914750637 789481376 953623000 60101041 267738102 758464480 323131217 831280353 537899472 224466221 869409213 133238184 989478648 584383090 855651689 944279716 749859873 417404219 287454623 500753444 245832675 420885900 429544467 145973715 125871967 756158062 233656621 617226043 326764080 100228648 769130858 78456210 120985643 675948508 252214862 185280704 457353591 432173618 694743528 50157118 502031451 140970578 721192655 403775791 529225897 158885465 160878696 884356300 263514354 864478097 981609763 557024153 256119669 348795580 782839230 395153781 784039925 822380147 368051138 685787554 908675480 194871593 427653365 5087945 460265713 347941021 835637100 51565600 993178399 973091247 658807805 460497141 523473348 456122812 998953005 445712360 729677636 340541222 198081803 857060133 677254537 296445021 612155325 448193205 353524950 204343329 382577489 802366507 746844268 363629806 163454719 315728712 228506416 604112514 360232314 715075722 118209888 324845775 893644054 579939030 24173761 68185685 834111520 921590537 457316669 317113128 263093178 835150962 166307118 400768178 751479815 896095338 731636 101276893 433656574 551399282 315310367 938829706 713041167 676028552 908966088 576041695 466907963 910450608 124540396 170829159 572731667 474942386 44200203 394011153 774239595 912125824 748688302 161690589 743608090 481553383 50816653 608862501 306994069 12383716 982474060 756557908 72790273 518949793 651960082 773834201 300169249 679019172 659748056 420041946 648852692 472086755 789480247 43686908 677442410 815559373 527620429 43209459 797211864 695686354 27325321 139069289 392597458 626259377 303172665 863911801 618933518 447336244 97071926 318423925 763592160 560271253 582422751 801581555 638595455 929456660 344746891 856429177 947456056 610455819 772993092 290047223 250914121 178691641 302580917 584255826 69603854 179249126 9457891 429476395 905532295 425930111 422724787 222482820 147257205 215972394 804503212 132590347 230866160 435870952 282790543 596157998 112212865 47640198 946426004 295249486 63939737 959515922 103609509 972022216 376018257 559720219 40059688 891871261 801575481 427902690 240311339 664877743 555386832 105911236 927038267 881135596 167847609 339685533 37996884 875016500 335630912 381990768 199114929 65001233 867338947 907365494 879732888 152434480 108557004 305937857 554581601 830571575 994069045 153560061 644678390 453995130 11031961 243682676 116530305 576926638 437290533 401173655 319447303 862407173 204932484 760491061 202313157 646798033 809856974 403125643 450581760 25134910 438815626 848179475 472549643 103662163 550436823 75921168 148875908 667526510 691517067 156851525 311958703 781731490 277314195 721589898 810557867 296835900 667002096 374141192 211723742 166213541 470152770 655609855 29757330 760623735 76529182 608718689 932741853 499525936 318361132 940671469 985045530 729804924 308288390 793031089 321877780 447171781 692350737 628102347 335248943 451824216 309406907 826304772 41176722 460557780 623804087 566100343 645306684 211782233 354543989 470589091 460589220 315624647 526047867 176539250 413801042 237418102 588679444 554960845 58658247 667533417 130389538 429902164 557105344 841213239 752449303 502805772 662315651 907192860 851210883 481448582 716421091 316087573 524923644 207776933 550871423 540556798 70351056 753171723 556394467 833716883 588465537 950177373 155367121 411766074 181364330 724319691 660287155 671603501 462971828 925355546 608062090 31859103 529416005 795710231 399805057 77128770 423228181 472368594 549183333 83725100 725589127 11786603 698169304 235682924 582431936 533158649 278053265 262526512 906382693 388036885 273115642 790973096 285593075 963001297 173811916 45050977 799769286 785402786 83576871 419345206 345517204 503750671 507097735 257728994 207321682 104125468 326161584 743121517 33193998 579365314 78923831 103086733 446377103 474811158 545601260 834506599 279319665 573889731 513279387 128992408 124072133 999588825 381006091 662239795 349315378 834349036 761782790 964829032 657008584 316285631 753962868 263195020 349502872 521476286 540026900 583362495 353961333 138016258 588925513 589847549 1202534 146002090 911463434 2771342 86859995 17660075 56082269 242895358 376810766 595101360 706421379 268854180 205396926 81319087 491792266 40403907 363875536 433761000 966834240 405568228 961425134 440086856 74889017 8566638 386187555 93550926 911798875 239850903 68260084 19115914 549827103 266995752 61698113 793611827 287912428 777434866 228577250 659033812 814118762 533065068 292669360 910095857 518555505 89574104 705976288 554803808 417825489 552398113 265510887 631178445 648315134 759407106 587839319 504339635 56408580 238261075 381701281 304168089 868069182 347525027 580601507 756896989 578620577 62035503 771359961 698709474 634557917 210862353 694424062 483927992 914649195 232539076 376597424 296093246 794718739 650145844 384628852 466418998 579745831 117742125 871610255 903776896 104294915 875541971 843088602 355682742 458218475 461891723 52397697 660181621 181108256 826585213 565649207 987600450 471237538 539647464 176663273 282115788 367670546 441575229 270142330 905597190 270687775 86803908 666347684 595552389 21648496 316180846 342110810 899616178 52725385 116965643 74208042 251654995 865903236 399700747 164401111 731883751 823475507 129499848 858756260 233971960 169803078 231935358 130128799 228334875 797244130 790728189 636722120 2926901 214220497 635023710 925943693 477013350 115079262 999176457 530153708 630294563 686466698 960969689 945291729 435895825 443282411 438745479 667757932 799010699 357526124 917620632 909152967 474379364 141033889 105634785 81610013 736529762 261586944 82786318 433608688 323791910 929402096 257631629 916830835 904512407 247877901 69392696 959784972 62441819 64388842 248542184 342284866 427961905 989812598 469836994 586959568 261530911 687502863 53435134 706695922 915283914 381222577 420032605 777780853 499776940 768131822 59124279 178436796 786400368 655913464 115851197 634545947 62868279 455599748 504040136 521018153 713555946 303613602 711295666 40890319 694188351 986821006 849365228 734438738 223531301 547465537 622111692 787083866 282480503 305949132 861077986 3098185 721380164 833250930 677367465 325438906 862478448 266460264 269238357 696771987 34780829 810189436 122841676 940589604 240669827 205835040 448233553 395472623 47891054 23922972 32636476 897790216 328422302 18022436 322183314 859062443 882411228 308386234 222658642 374479072 304612963 321263045 987549368 357263319 428930524 423114754 113902975 734525922 197354259 902451642 19379973 547415458 734124346 630819467 721599052 443669041 836271005 755734051 631920794 363890419 249471170 612141422 654409557 438550106 182029679 862357730 48865979 852970983 178443393 159981324 177072076 352415747 698331770 204888302 256994191 98801926 947900321 460291281 941217679 64672224 898756923 709747873 216945504 951344378 526340748 825200937 931015472 434384082 803049251 135905032 990174476 729712548 383639697 207672591 312420809 8832283 702757982 608892008 579981291 871281053 765191338 672412545 297524672 592122588 507884732 872936470 662994853 914977877 485511526 785455540 640470897 663119247 434202120 514190897 361464808 846214277 505548416 546711503 214496376 805999391 436826949 598551666 394103544 486520888 384457233 17289713 418154116 930364574 71584901 632615481 903026363 283335262 613070956 947009153 870777156 140425876 560357632 311517970 326776165 840655711 448266764 839258001 425828483 563058259 116680152 5594622 445456928 85200215 926166669 487324421 881618252 263734339 121301570 309673779 345176209 232790464 219221336 260682683 27730698 964419441 979512009 424046176 818223521 841799459 111158241 501373754 3386140 382838670 509605096 175363196 491093780 732170804 644672989 286905199 2849653 809408486 863144432 594055265 49366822 226503084 33895548 624659164 603328094 36519885 949527777 393458427 785642727 70896997 595515471 754831373 110391005 373903042 319979425 320050857 243583990 362725299 117335637 733417280 261869264 790603664 29503868 803980552 155492118 377542773 253055726 999582131 883799320 38936480 707143479 323971692 122655462 831294379 226800511 359461832 522352967 3053092 571512264 946112925 486398257 247056013 603428384 869101438 152524821 180052505 349579626 441379700 271782007 58997674 10059809 418622396 609990063 717536486 449248852 220523692 455966765 617658037 860367813 517561562 185156697 558547958 985305205 900094179 998065335 59714710 653486948 247288823 414275991 189696398 878710458 789814020 110740172 497313107 390248748 319094865 348014844 998842428 831614995 257969783 263073294 468606378 201615211 78481916 864654577 142561479 377173113 571159181 172042279 233888550 169974935 436704048 912444371 80212659 564723792 784958632 166198693 520111702 486755582 425963477 296405755 878191258 952733194 209700442 618068886 581067534 214253217 285540384 241381519 295946948 53715640 969904172 322367139 649615528 733311021 917369036 319504605 686193717 591406142 469598553 596503769 473674447 767019421 346967668 646892265 269302246 215410383 942125051 713262243 132702731 779458891 879468257 288809347 3114417 266101087 630769301 17409599 490781044 803857002 709421414 332436711 32304657 904116733 871030052 749320120 574323102 89155620 134520418 202006091 565861577 359320405 319550911 467425237 309109959 376693463 430469227 327371319 649027686 463925504 203279007 948527005 780316406 361957594 466322023 101640415 759224459 942839015 790092981 654707121 43961517 105751678 498836940 989315299 934414345 85304211 414797494 9876861 349970631 490988031 144835241 16216854 167861438 652117215 497007141 970931987 333532790 651058773 597895506 119089161 269353258 776117525 383908456 113254259 474993910 784018495 428671071 344652282 856939437 778453219 715726856 298837963 81258514 50782878 113463229 749948512 425875873 28773689 582370328 733749474 465564089 57284497 46229414 467298087 960728318 122282253 433533689 443820091 224808855 177660498 395593266 188949941 786201030 379549162 72068441 996540448 506204510 175955044 61889789 802823898 398664218 39078370 49131349 256474312 97833071 162420174 24758590 856148365 822422635 413985600 957509388 559842846 793168148 10680123 367481293 600974381 672819002 378088568 525876830 664004510 145614584 728139093 946779899 601211235 820896969 793753938 159630822 674108129 597058971 952508515 919268393 343818410 422028677 761251036 759883689 407864027 6518096 973544865 808381862 728470359 125162647 458737236 376789983 566762722 136826668 449270533 761754044 469576851 115785518 543412107 541738621 69588959 418909411 746791142 672158612 565711161 703918394 498351397 673334467 669514807 448135640 661858929 774879163 490437725 190782795 777055529 560810474 562072843 47060827 179204520 576071309 311149272 874323107 983369903 701083422 819393079 103709971 486726924 162633341 405306045 531892227 899613377 923372411 799279138 463191882 305478300 320121895 815294527 616165591 526265694 829480598 782491178 150372681 891295472 634432305 119824729 912518682 944120251 981734110 856993550 756076363 891957035 971591292 96991627 496837302 322748397 337302217 983444915 653350649 721980812 527418545 31402466 140755035 315331522 647201439 719475494 468362777 837477957 547014410 801972476 837783914 527465222 964841316 255730975 18027540 634268443 49361918 327516665 308368805 874062058 398331051 328150882 922500744 452105839 749885981 577960550 601034003 32366044 694519137 931825479 448436762 178803000 848420181 739517925 306172654 256002416 860544750 40473186 338138035 928288798 96130419 992608223 297381880 483549577 820407990 456353367 586994239 777042554 291811073 824154292 204918684 852655781 242054677 217191404 997726251 798228272 635528913 458810945 263894168 131958396 733231064 64128244 702692734 195593516 755827731 904866455 707299703 764837075 123133901 224376254 685734865 290136671 859432946 425085311 510088333 607100999 359003854 924769680 932889541 310864662 314977937 685217940 461757293 798363782 202738160 491502443 498810501 581614391 518742560 624157096 51273638 683941392 49159047 494973378 822031686 731920380 683345638 391644801 899610746 695504639 104848446 635810056 266046500 239252533 910732130 622277685 118323983 749181957 84858991 344898706 505009518 989968540 389337810 881553711 877346267 571643332 942750240 932821791 674513959 588475478 947827021 480535467 778090372 155272647 878652001 797600300 964094428 65414474 667275 928711625 275217872 977599365 282222272 703915587 975472724 246663029 190136394 924046738 411180282 872037381 817671442 526386358 619261337 275439546 54084919 5376110 276019232 829643570 974371239 809895135 685040792 225085276 111875751 824378008 226292720 703141616 202988689 8160188 473434538 959362448 71268326 87258178 597695837 535384359 296044966 26803735 612803852 143837139 881659041 915248146 99896811 99671004 801093370 447831839 940487240 301219783 461802575 199791895 292718363 525674809 952133780 279965017 912991853 237763527 324052009 324762172 351351674 984048393 563713627 863967066 871342379 261233963 989000682 955573691 383121086 688828142 453091690 852364799 45471391 599775777 726440008 480304862 228848744 881324061 746844707 109426010 412362584 320493133 15668396 362152736 32591989 454004625 294087348 283656179 571241370 550532525 481152522 327609521 154248811 379526300 321028162 296028332 846333924 123792074 788130887 301043736 729997321 324457391 392023032 807533111 450322405 209279972 361147914 746207415 436112971 110649156 810975539 904043200 772702468 92359392 97279416 402317455 645151309 434486715 836290121 686664810 587731867 475502535 733500769 180945048 585862528 836746608 780624226 813891124 688541408 45603595 69814329 560749871 198079001 970586014 374328774 237277853 538200533 380952276 619427890 867248254 145599769 67542258 562653019 54962120 590489401 781644310 251183731 881242729 688584525 682482787 607125504 861238357 490002091 291566424 513562361 323263980 310673134 688411460 233568789 126677895 400981336 415693626 178392129 733196009 854848592 481723683 318241088 273976772 677396878 914532450 963041959 272108438 552063844 41158859 535070718 39575953 721279668 945217270 96449278 445704435 819282533 116734248 897841503 137606046 3575706 236498498 453819637 100641116 904651735 598356789 204150183 4765161 977884962 407482203 186270505 698478336 102700256 712651374 165249405 475277622 575383035 93730198 651315463 525898821 167500858 507393155 477239982 91915846 206319471 632480519 286580567 393631196 394394980 914765008 839343635 459979754 666079746 585390674 44749891 317128582 125389356 642972209 692690411 617596067 504660811 23875968 939938547 371616478 420364756 623257269 294179635 124276732 634508105 954791343 91265781 886083136 581047188 948808440 730991635 188446743 905122539 405414062 53177428 438244480 703920940 147520791 847726184 499251453 754366646 53911192 336720741 453712796 664585471 49720776 405699041 919645352 345535968 869522068 195357272 833338780 193346800 210849097 821766099 701785289 160187446 502777068 318484400 481653952 670077796 700682088 762761623 337234234 64295428 803677916 483151922 692252344 931377702 5958098 761097248 190840712 821567935 314681935 343010755 394979717 487671966 6452160 212829338 801487002 64383625 935894574 895085129 164996745 630608279 850248720 450511307 167190877 444070281 214097512 590294392 608469121 41811658 475783712 302262605 382364731 954088727 443463690 578042964 335097767 685604593 857775572 428790710 911873592 244257439 122958417 481434229 260858624 713256549 262024502 375583719 165921127 576393432 190437615 555597629 845382134 917231920 537350388 184419997 808651077 337796754 333072882 851208489 558009392 244742702 829166537 486873797 384630122 661294099 932277272 651233535 520614985 46848615 57173811 514277163 348474064 400748707 670608878 104711314 157892764 28949870 2819658 995762200 741853678 583081814 619210424 804426664 727887573 490064033 607637164 393144902 314117945 486989962 496951964 544052281 187478035 960867991 95404236 923082671 744695780 599379311 38464553 248033854 878692521 791427703 867582893 820961538 802616352 347517601 896887837 160033965 126068635 963425315 713319881 971304611 731429199 76461040 98973033 195905013 259122066 696539391 246289559 878102682 695578152 721865191 286208071 754408706 445316146 384656012 503439347 25829154 570310472 87703133 379088700 926313595 401108286 276341397 675596298 652866118 196168344 975664651 261503427 4268245 894360933 8502202 406453170 501869341 461177338 759145037 525827757 229918224 389800653 454578338 499411769 608895094 931232461 463494994 275753845 745304603 918196130 701313626 950896008 207185662 305511882 639390044 610725072 679928066 770387399 507209064 201640791 418783673 465144295 256386579 581648778 192020053 901403721 74587825 814763950 747271630 251802517 389849067 243390764 666982433 30712299 720819522 599170503 85470385 443851386 764029002 735873314 57759383 79082513 17801014 15343071 18458400 668945880 799203722 125373700 755740635 460971065 769450781 520179495 676273780 941309756 548023193 926779223 888972897 544994005 23414877 212815364 180347733 818899789 353211929 310207184 577644239 886182628 882792763 804385463 118456061 68100262 829979292 547783892 850637623 698106898 228770429 2944679 10737527 635929339 527435064 451955004 287499074 86651332 231683187 153352531 108915003 812586441 204399137 12639622 61231187 124957476 2686374 954823846 884702836 751608038 173884115 528052795 869418514 504510013 886799011 341251593 927026079 503593921 343829772 424499469 811314055 182014814 840658636 567843597 733133733 325358595 515071266 712175488 942172604 458233039 446000855 325013639 856634427 377070822 176499622 741868370 486436788 690619475 992772526 112509099 675923382 117656373 767309997 54136693 446945029 124164807 635691984 960675591 546784758 298178400 888077282 125957171 791425595 525328164 437647152 839474568 37571296 323787743 157649163 558131479 939046853 667242310 266001231 599436935 927254814 508766080 251109636 920956690 219848834 48631322 667533579 931520065 423433200 596913824 253071975 920968855 979021977 88833501 206623636 583939897 679857550 944016645 909456165 556515542 347731114 113436534 4503039 871383005 543942943 250162764 229035751 306244503 750778463 396128298 241911043 518110806 210172829 738418531 298770062 847550484 776606109 297559226 443869547 180149728 465809281 310445244 740419619 687735235 836375867 260137937 863867447 84057169 913845149 900979407 111871826 724362358 571791767 42326111 88676736 440557690 89880744 896557608 917359507 681444777 623612292 568972589 255243775 775606032 257523607 589659165 995100532 519930488 300050281 654150272 883594025 414073980 675130685 943088105 376976344 467523007 529257386 433185708 727970305 605727640 476541944 982092037 335971487 400981240 453783207 403992433 833540993 437917308 692459825 444023387 890706962 647833774 808021024 182088250 108910990 791504904 652710043 830058408 498815067 768409395 470064445 124434687 81365132 115015561 393395595 69069013 981157684 309241911 490443129 641276762 742028978 30470861 749545642 406511046 197438573 75213992 390251780 650412044 690440442 552963634 261198219 880580772 527729878 657998311 883872855 977313594 967880167 746436053 551212845 45077488 843516503 141947468 84780656 297422057 220821215 643962788 441219826 30519564 950335746 641702535 301927708 449343645 185170218 296281528 72618807 124122784 904848779 173629041 808858139 188981099 336764477 395098015 552749435 813774454 326221393 428588151 860058597 750691470 745497156 827327389 495495097 876455792 573568610 125493420 510002691 216048006 634899567 625547926 74047887 231223425 266445500 577133559 362368732 959202400 604048192 541145162 145018630 964770664 708193154 375395984 84610700 605134193 818297937 443406943 785103461 124585495 666351766 475984593 252108869 646345661 133781133 130881669 471447104 441771841 727662573 799622664 258993742 613944698 573399650 397608834 801823683 812717150 288831445 158185579 100577685 428749878 468576534 538663886 441762256 835273531 133486592 43494236 302347077 94278405 507355272 684640654 429531442 710154911 782745307 882889496 66729040 294154757 992135819 893845043 255827043 193248569 928448283 172136112 906581095 483915446 744091821 129878934 848311237 56385851 623839810 292061768 458634067 331800557 990351607 472994020 640871122 272869049 679578410 38762170 577172702 791436338 5028329 288396174 17825736 883101605 295583128 811947556 285743927 502223471 842523716 611279223 422989747 798730919 92433690 846050630 840793549 790827976 155665678 246026637 827676381 239354760 320091624 137894771 776336941 221182715 874883770 201554616 496304502 620025345 138720950 523168764 242247165 470134442 350262872 740008433 234937429 612254301 264103007 535772381 876008707 798534271 4336342 703888922 28003876 579995721 630313163 348933545 736159877 897575966 800223896 227629934 716001269 827202811 172923929 107516343 928736796 675716164 719327388 764029102 61785513 82036922 819785768 875768924 415555611 531672614 269877926 988658585 637424284 348603747 60486543 11064081 953386299 298440062 180815568 675084184 487210645 663588712 698693531 730305527 868342873 542557452 181339765 624545902 736506330 811533782 949026380 911082630 806466590 163638230 71815035 860992930 299919430 386158937 65647903 711503946 812912909 771507025 400163739 22242135 882554927 940728341 556069116 76028659 423263939 664488893 665291774 913093478 4834273 859927929 6006898 393216460 688861288 591112613 100628407 656505072 405550915 438238953 747926047 942124636 261513585 217091425 79071485 772231681 423091788 286503900 899398006 363836222 360309282 244140036 868840193 795915116 900343326 426592865 707126921 71609553 68055023 605166588 966624123 239282067 239587258 277210227 115286479 521416784 1509814 762282211 380052339 412473022 672478736 375687724 983166382 24997936 209112473 546574212 413843446 847814319 720723206 792489811 215845167 448285112 121989903 441745396 42500519 133944935 628979963 57855903 114496419 508928433 257309841 513988582 636743317 3475848 533842874 69760277 884599621 928867660 145408832 916036013 631124965 179335430 115086121 663251055 915233754 258620406 623308065 758608456 916318411 202143953 337197779 85379245 353738088 881008033 725719105 703031454 917810382 303305430 2201436 360198023 935838107 350806989 362401811 985634252 217917161 398110720 47196539 451333775 321888495 523008012 716076250 684193670 505909211 469863041 708047530 573629612 397377111 473900319 977833847 798965517 593922792 617183981 188250093 797181146 581548946 55201976 562358344 845932766 761827181 979661539 942909090 744296819 492934416 466258349 940909816 167897334 390812771 566299252 961344635 423283556 631104920 482508679 157666589 451476416 308615758 699561796 747604677 266951115 644702838 330594776 752583577 864649989 55894801 287512928 504913515 593067498 231894936 650258993 19754880 247790980 421132335 245780146 118990378 816515861 495397083 663320168 232216985 515694507 999939792 424723806 355947496 855650784 920487201 7977401 886073971 428306476 73140678 976234925 238238244 64084644 266366489 459099294 696254405 243959143 65370701 366661049 136569908 626987871 470305505 840319086 807008099 606883887 952835037 252853566 415665909 537802293 105559213 963395190 136214755 757057429 713282976 454744679 771073784 516299169 417007757 487610388 387899534 159772703 746178240 721621448 770912901 15860924 488244435 686518548 369621255 730449351 27373520 965767878 469104008 802339804 890492577 997919604 594628670 324826360 146154823 856843243 425670944 709424600 410910380 526561226 126629244 836393675 789478874 794727851 34049714 494185216 544640339 857837298 732798249 453278438 627743841 410909746 83529990 167395297 828075596 270592773 553933428 991843785 497084914 843236084 647543635 637615467 685250225 665206154 408867519 410342461 931839400 163451118 526961495 329630975 698922865 316440272 102834176 258412576 295708870 572504216 270985623 188154025 781617055 842208616 287573580 960399500 327623347 572728419 114134799 920912177 990184495 625875472 335721277 201229156 788087276 260141155 245598297 264159858 64282489 108934523 771860747 315864401 969728942 676179268 36764680 544932662 971637216 915970798 729340739 48648633 219791769 530428931 398878723 874461966 328295740 549046894 615368237 895274991 790856431 142215905 70588675 642491509 573157786 778809133 923018380 178345484 158798079 246788095 13693374 442659735 209812826 376799962 833798654 631861568 943728846 955405008 950210601 903514368 682022482 442971157 735548863 437124575 766558823 471834034 286398212 930932497 33630828 592816534 886420493 499309997 494131302 944662854 479329094 825847252 712018961 453624188 82234392 320431451 99818666 615101339 332853536 315983020 548511770 173148325 683843799 210469001 918087450 398849154 384903043 528635855 206108747 886349948 28443250 144140459 648655966 244174962 549626289 714767554 527661495 251870242 273694960 33271464 224003957 885303571 466734245 384136969 336801647 511277542 209421135 515297807 234326612 944650211 905759121 864781669 86093068 290249872 357882791 114868510 976656354 59724602 455853142 755551987 544433251 204441657 733399101 851833712 131584602 677605208 778814016 678606845 306585889 835927725 495646063 818079830 584087395 526770563 469953326 542362487 214161359 138977037 828586270 171835784 402619376 620451505 26305031 751910008 642590769 879748964 291794339 715891586 409778584 757067712 822350810 498729501 430362138 560945604 54704266 104170585 26017012 118976077 48148571 659855670 193425504 198143372 610224708 947119039 719617578 796010436 144934846 364609583 492786141 785194770 384365262 308145993 242595079 362858757 808900962 677821948 707573090 445501908 612361946 384621643 341562191 165367698 360824443 505442149 801415246 282430358 531004146 745440298 87481572 635399268 714575132 611622579 79054557 90284245 647542484 56199218 586262136 548902747 278620885 382513557 439827233 871169632 688167451 571158823 727567516 123484594 404981588 315891043 116290237 401149722 948424001 234422278 485594468 190542779 893928123 538663122 448959631 913208554 312395521 106414708 589260306 362262210 462307812 167080044 580727001 609611107 827438257 4931000 350144067 907999481 114525075 927053603 519006361 893860726 204105913 328511342 26793508 774452052 124653743 599251678 156208225 434655647 183039316 913272978 581876029 181699394 79968120 231520326 123868587 318978343 763534640 810505573 289079441 587505637 4320638 451965472 112177294 62214908 572625771 150599041 771602085 697612248 123823119 121891257 722601915 955257920 572202046 196032334 670159680 97425311 354140531 156433480 716189339 806781004 567754514 591582063 870429974 162262776 526473592 459396803 390896144 748401693 396776619 5434499 903606361 80904518 644296195 915096981 271284985 391714686 658274912 275714531 651300540 968307878 507033478 190613573 550593072 989258479 272891232 273415146 200823865 107008342 311775829 437107169 209597554 13346244 79350930 66867244 255926201 503209008 402699006 725984367 108856863 825849597 627273785 436025433 654510561 21120610 196845252 141970089 337178041 935632671 503313125 730194142 719608388 435548905 117243314 183125861 659832869 893809435 611718099 475503772 151778294 16127093 231042445 849042428 776112418 913221336 370366583 3412023 471071569 135071166 128514831 227268399 547435445 269671106 475565695 830532218 816998162 460207608 232282019 456315012 133989936 689397083 718038455 511233014 86189419 308242970 594857682 296946474 390171260 590009251 911985020 429710570 460205146 515974667 786602168 485997147 559216259 120932027 860420391 959834804 93951397 797499349 645093403 794331232 564170212 308878445 500835586 837737389 887884786 799126509 710654733 482771370 77354010 621943264 944566003 842412054 161155346 829399739 202510368 688306384 604278425 306856951 499936566 637260957 960632867 140274249 230746548 729959776 590502035 707191995 831471988 878370112 498281307 20051665 413952337 717069003 598347049 179963917 628079192 309959604 693997038 611517640 484508417 552375580 531737322 569402652 355242168 448846493 313787794 200336443 4688700 443502720 549214103 649704463 560339399 807122991 478568639 494506426 954618208 102269873 363975318 453220022 437449298 910824094 533740277 514687160 576456689 652180062 88928755 894125478 242729069 695384170 521042995 518182341 949328347 402826736 380262500 293064725 966143811 803896834 373954935 241801499 840357717 398790252 187153769 733896250 983298430 983824597 851186485 271035922 708392905 154285622 422087567 201916234 41909125 781969301 918755153 806696443 783761842 499856587 289524002 256929732 409280538 163246462 371352639 628484861 448010465 927557475 721633791 509710718 728690971 41233945 389637779 553342113 509488893 443798334 285992242 504014826 378229722 36694746 99280489 795208820 833695637 44767051 780943180 989110708 280356493 319041922 718616693 55892222 449250763 275366251 37564713 391628298 417602976 598976898 718895003 685127307 955297697 514821511 951225166 983395825 306276111 922538264 934177973 380045175 221214648 912208239 910693957 226889759 150325919 838294514 30872901 929255608 873024419 769508960 192510299 710682037 351246118 610312160 414792651 510641574 140434783 742882435 177704001 981943469 154679823 165222037 72044905 858181712 996909980 558674675 289794196 705317794 360223139 334569740 586808779 602071533 25390602 522915265 537653701 652880897 400871097 919243708 416037738 388535413 708255119 305157695 313347149 830888506 177931536 734000769 832888874 222987167 13772724 755056545 710691739 916626384 213564395 998041567 477720737 379505912 716619127 985892827 967219924 448923256 419266600 307142647 117741863 308091623 627894939 459308424 279716482 442568988 322656727 239769763 6388726 642241687 16881470 399486715 720808455 900213661 666612837 222988585 967779405 192794457 622909410 223415492 754653082 689835632 443876464 478416838 158091007 180047604 695026852 790541827 642282968 171728909 58835553 992650535 127375870 377377716 500632696 490260646 354239219 467233266 156159944 322468912 547512911 728945187 17275929 355256353 140834626 947646392 730075361 487506537 226387191 83850859 852701248 131877988 442441955 146001620 271888225 621498342 420021232 814558288 449956738 600506062 430893735 476479943 777588264 377295521 820303211 488180522 38166033 971180813 553405944 150867337 616592465 935686995 651008893 109991479 851320568 914788173 451330686 705958781 21391152 82196375 627190094 113445438 207678446 231130787 874441356 425543004 966841891 842910208 637352363 337433901 148555994 986980892 940160882 488747470 333200563 243716254 991630200 10232539 611550405 773661837 493381222 830769948 468220965 52084814 275804838 198046868 585344330 562728789 154422223 582353279 182232702 870612888 333775137 469536533 110229994 802523718 256052214 280223418 888049668 567312803 674362000 975626500 822236819 759444136 751931653 334247409 128553194 156147507 584614401 544776696 860400254 832150633 61233175 240335517 279693700 642029476 232917334 246704677 57102284 650701568 425066683 997730390 763137676 963717922 896629667 583577454 318910139 137830102 544462018 944357730 71780964 691214812 880637357 377330200 189590690 947411844 259375512 323369643 35191646 459373642 735647915 907881254 589929432 295354944 401515036 741977178 37455721 388691293 771407186 567861926 117719038 658436958 137233955 681929417 54223323 24343821 45329245 89538352 420390718 832942880 317597665 958065982 520354940 399557611 882734548 69476491 306128252 21917752 912648164 613140801 780566712 858905337 394939926 218550330 293233117 810508353 433281729 627008427 289118874 104677665 431299770 313822939 321990677 758851111 658109281 583284396 698101681 126871340 503719391 79224665 400027228 886271178 868924245 239834327 551909110 336698622 156981468 841930095 396749461 909356460 355403917 472992464 253403603 375084269 407988549 642314706 925772650 296446303 803265716 471853226 934282031 21879019 392133311 932911379 811132937 380327215 708649578 949121763 60564812 161969806 70035655 202937221 149432184 773346931 581535412 16139708 429601995 684957638 230977260 94902402 268943820 126002297 674325449 659414719 68851866 365941616 935827381 772157649 199815411 47457923 387386260 852283163 620906411 743291900 140639618 579533352 78399845 631130758 603810879 496570719 497412980 925442079 223737121 692807538 547180796 263041309 182780233 496258863 783971175 719386074 620899466 673715927 888339786 104703339 993319830 533337997 925949005 808518563 802745094 649706136 477786074 445905396 48402882 125612845 301266375 273764594 955138482 322365280 995666377 572236804 733864245 702792245 909407375 877025765 587594017 274149615 556730012 218377671 685496667 466080119 897427896 586504884 45811093 415043907 283644174 293753697 362326046 666882394 782432292 649866259 928650849 989106586 255653575 851451652 378331888 920366947 570421486 233164595 616436621 835332016 164459446 137618289 325037840 311056718 714812460 493833124 527508218 605030541 717255531 225780700 668967126 419955279 690564611 296334018 601666437 852520632 965795123 486325792 344026655 793855623 948884387 910797193 652065408 721161818 230002152 43499442 646554507 978329904 681943303 465198331 684532487 63729006 936854088 755192697 330730544 722282477 914558253 731653782 273925580 270531170 419907528 185331851 414157750 372991276 997831786 246360360 728576770 560508092 865905812 119702493 645455204 679050813 153525312 890439688 88689811 990984720 543655141 718166218 631774948 100526057 934266550 296157617 722828665 499505163 129318518 871662538 18949328 233994014 513468378 937043829 199008400 621497017 592801050 802992763 313646203 433108627 688114800 447769601 299361998 85883848 862126241 275487968 801592224 234125929 170953889 50888803 930209843 717293415 481745739 356446011 325793441 704421591 292196306 102609173 931522051 731580114 589416606 925051825 68694955 990966458 418025543 12001675 681629482 169937257 470487053 482443936 406008682 857100125 286510059 452634344 716641655 432937787 911062600 381299089 193490328 8467914 690499838 170049737 549193903 230389082 582664996 481718627 408380034 766363082 362684675 500048142 214451024 542174471 616049566 34780320 48432291 253907148 54136883 866801852 832158172 24448253 403787683 611487230 36656378 470050393 487325984 547598224 52638239 264826573 589007349 31668559 61597612 511600010 832509759 337302307 626198838 54476249 311568689 873874441 402787596 279525750 33054662 959542668 580198095 76110580 392994283 683979978 747945221 583394877 873327588 642169808 819973141 794830811 930893636 459264081 568830508 271199902 127224325 467885200 388088882 291586696 696961443 153491301 282211517 730107902 271470831 815388433 675072801 211166144 111125347 384180248 898442674 594326756 871656555 659125342 529354845 526463898 859101336 722765856 601465693 148403834 57421041 348628097 722769521 72927623 924902073 119044563 553169625 333806370 963352708 120337410 317676586 491114669 472824384 620177091 364004256 442680161 473948196 123073610 324161655 544574555 354591547 397651396 5973131 118847061 853834872 110462830 982464762 905795006 116461498 72092119 432689402 374186869 826298047 558491575 684702909 177621216 263090497 368624636 252059786 127844307 442910610 747082021 101963117 383307867 416174357 660358268 361708958 568931494 618213573 435354328 799623370 262332634 576938246 739677032 726701709 705619620 778893471 560008802 817439114 22399693 364521835 250395719 44170434 790641441 701704718 418495924 262021914 371633236 819368928 244918431 71506222 409880192 606569709 535164247 538408636 733702327 829736123 717165931 441740851 992134385 547695963 193511595 43243086 238139451 383554427 501390052 961761041 78811501 754925787 252630784 897928235 494432719 301958208 782891259 502668856 331141891 766806776 265935473 58985137 207229967 603610234 57382801 739712895 677362651 40301208 41839426 828323768 673108132 170839411 875058387 298808260 69128287 437605886 808323898 393233859 87099793 710352482 817091002 954979037 277875515 38469679 527729586 893419539 611546375 295335878 441311406 601505039 131845519 688145355 778062842 938681237 129426268 780550008 781942812 487451661 396436773 506269575 314630624 552669859 213263642 56563055 328970745 72606838 48744918 175340748 160977882 771412866 746898018 880211063 790084583 436118443 580906607 474452193 855283369 300811532 25292882 366361101 456819162 968531428 250427334 164601637 65832245 909868295 152682485 946168133 672251917 80149772 260915402 559733346 981527094 329976280 931338645 28663270 264700844 638674522 202913914 42552352 119500874 122662731 2410403 934182257 491726202 692315422 515798732 885525890 587343746 902464731 484824531 758648554 470152480 732309144 1589002 594865148 179957220 463581142 872821488 731575209 593643453 259182356 348041226 659675466 862068218 135920578 636474593 100249076 604531239 517873094 74855795 45024823 10663696 756640258 134650943 59550136 613181779 976241400 507505 121192216 353519666 180077981 170177606 837251018 975189262 321190982 120398231 137042766 358973036 555515192 548461676 845415751 902595922 456822168 984520309 659245591 394339686 239969293 247623814 467028206 172117933 459828694 282558839 99748169 983240687 235462857 826609590 522280789 365153487 204684635 453909449 247661617 364892631 168390387 771025482 643907835 377643255 423641573 512387578 638318664 164141673 412834065 763148377 610872585 269179963 633967571 571634233 376252353 923662786 397780308 74357984 911361024 286792372 691363174 655274364 558829533 374965055 580080745 770022743 10730657 682162531 899502265 456072136 3195457 519690209 815691986 389977455 349121215 851597355 933002571 614558257 431692793 441223837 611718266 807890283 980482178 963655270 979186074 171575747 247182899 392330328 743162596 536752229 974870432 349158829 761452849 425784796 17319108 398674085 321447691 938383170 642811804 830183218 498654748 720244941 676268867 732310406 906063024 847984368 128007095 670420534 399211980 352635175 29098683 244769602 358893276 885054653 249240744 817148323 860078562 292822585 341177146 802818710 335390281 718440846 139234640 103211446 808702314 501708836 965172951 393418912 25117069 790161547 906446268 458939513 67058816 443135419 480258404 215889127 887602139 58128568 276965522 682377688 927607735 560519028 923019714 727990594 932285311 993420743 934933895 290963668 808281264 534276603 537443908 805193641 991444524 798339308 200974563 258771277 357273945 367363192 510060733 233985116 886918303 34107503 678502299 930691564 593693977 82996161 603769038 186314592 272464291 782115247 157224012 508929221 745775268 654162552 915508702 234163666 786454988 397028551 444803661 889390228 259375481 451463410 186950072 706144739 233988370 729789476 960210539 178633521 337758632 292731514 753919828 205510419 480249509 572331407 228447293 669820319 949126379 105383550 617365452 169716713 456479769 936201529 914050027 593288747 345662798 74937787 848987846 330119210 498088463 729611952 664248508 264341699 64817067 314099354 748148110 390822491 859861938 361178231 986504155 114293301 166864441 837894274 301256281 195449716 519197774 225675953 648541213 37538637 558630283 172921906 444148119 251142464 491532452 573968776 381731685 147900754 262638550 333233674 337581538 489626478 739030794 628511852 635935116 329101200 424029784 618856220 537562461 727531510 456195879 643391368 404856704 649108963 388599049 821846146 288532593 319598857 163638384 691469697 86136573 330646666 624366168 406538662 509422764 202097437 890331741 413414226 391841065 690091194 557898151 89209443 867031418 190847104 514084579 103895433 397900038 119227131 166134703 87491557 515034022 503813165 476345668 685189861 714826406 391199468 999212965 900864325 194407692 759838878 536345085 580880258 626462736 69846817 224940830 322603020 666042412 868533772 869198632 179928401 826045243 648966763 180554707 741395158 481728481 979166750 603108312 601143207 876334668 587674682 657475424 658776609 35546145 229548217 326100461 673530098 585179567 147735710 273529074 760570530 833437108 951795115 648295477 895519679 608035427 325388122 277284355 53749449 806194719 418688554 942569472 754889558 189781593 682669470 668320860 25337273 139774199 746971763 755534147 844108308 7069647 679895069 867847491 119299282 135137057 581698177 371393620 444880634 66422190 730086321 990124791 522329821 37592132 278777237 652391424 521435691 545696982 689030673 58050675 829016828 697564379 474254773 221579786 94105859 367277755 919116576 543978012 896181967 938937230 252907291 999847069 401864369 919814247 314902384 29262295 53430620 978384510 375521309 646559751 291774015 997915594 980015904 125221515 274020779 424736110 651591702 492561975 572908362 340984857 507638295 911603455 842740920 448648808 594204636 376520797 396106952 60861565 912920675 204189396 319961385 805557166 660755979 909382328 372947636 399337868 205452930 249381943 222970912 381808980 466017502 619086714 842665482 994803540 70465790 630030194 926464778 153865815 360992375 527616950 828462970 619885914 816765894 869517850 634899915 56717207 27120365 628815137 961748109 793131470 328411919 969247570 657714909 399662207 387380059 489676678 812557776 330724515 888979030 97120651 754904403 19484404 866818131 266124690 891076277 274090713 53944906 165760367 455344193 109878065 771263486 540946045 487242142 319487959 674954972 495061648 655066756 430343666 371914592 294411338 661511663 940494119 231988551 320651670 138916908 835788894 303094082 188100116 441982526 851478475 952913403 840924012 348103325 166808720 711716086 599978643 981614388 149676865 451203154 591627811 468971105 521367016 441208884 804151700 592639789 713357804 230080301 848616101 217109110 575275050 5894085 597563063 75807520 874793195 772225993 779881047 39010478 995094393 644338500 665638691 834500807 960728334 715749486 374155851 870081957 742464913 411107715 494030231 166510713 236537364 420838182 848487527 421832486 425933321 27619 76727826 20247303 446079513 569641373 287131723 573664787 999951540 652135320 490725447 393789713 775675348 437167001 192442618 770813499 678985163 811852280 358588918 270592374 959093867 72712354 609636605 943890992 391014413 90613798 572501852 28631170 371008096 516263874 470932481 727710469 809295794 8938443 431583221 642635044 317946598 624473396 108604772 489677499 203243596 327298979 500534993 640226906 858193410 566525928 452428759 171983568 454295143 891354884 788831372 140635564 262411834 221970510 855138812 708796013 880968554 284208421 242094758 714283936 137302011 576465465 222197802 610109328 982929544 987041246 502170807 800673262 475729110 983992484 781761257 493459457 857968238 187041439 294947119 266195335 331860754 738530220 675668722 89006894 175643107 397456277 266458602 774282026 995421353 711328806 491554918 200780695 372007134 568429760 781294109 235503789 385860083 573294504 285510213 959189088 217464165 870507492 818630672 140128414 983545346 259710215 116553921 760136491 838403588 66816047 634327517 120767547 749798951 942772266 735400702 762748139 468291767 469942384 599036847 679541152 873078342 227125770 128405924 700866842 852770576 479515652 583313016 758303524 78823795 426476832 476089560 742400161 735338 876513902 286314133 290929338 966186715 366891739 509798941 218345942 700981250 345312553 774439396 617802756 128621856 811135640 517010005 876829465 640678623 372143617 662555548 999625265 636891915 430386518 453643555 970754147 510944515 893102970 63618681 26180515 841609478 318955935 504289734 530620011 958758479 471406927 742735002 784270814 24270681 280115095 870078928 669110651 571987763 827095752 445042890 762074820 139250099 657185539 417690879 860800734 15326785 762209771 586428258 393389568 577975432 763588085 146103731 796399562 330402700 722953266 641604256 647843410 534073309 622642456 868936909 884327032 431784263 852862744 82194403 855382394 137425949 719759067 494071685 996772828 513701538 957607559 152378048 66005899 787598788 672768402 408754189 601065167 638204764 628630489 739452886 631602003 134885892 296646430 177181573 3829795 896052608 139164502 185537282 419427122 852140284 346916320 143427881 454692669 734543018 594600646 231356283 415935744 634263148 69576100 238364660 230904632 532586648 62328165 272331161 618313070 762002571 978016193 928239483 433706333 514574987 887746522 458694697 899604350 374831516 538653556 871305680 349441702 804177712 487042640 845363865 106712846 828970508 294196952 953691514 703564095 776469889 391484592 957901851 454999274 69189694 208469203 91109976 873597056 487791158 644661114 406068651 575076983 975282979 696017448 210128224 953223096 732927259 169062969 355961031 880669240 748259601 453715670 148111830 133289463 272099351 482481317 348751542 970664 642670107 669936782 514747799 929126551 517641595 429812375 803439024 210517132 378638026 687720184 287492676 828374048 649852048 476663275 277215631 445982928 936731351 637393930 220989395 324905126 733382042 829785659 113502851 277853826 876572923 152652917 488750256 803282804 417332496 72133492 237166270 883625547 529133329 455761291 777910435 238827397 997714783 708897276 127505109 886530865 502764716 696659181 375684473 835350780 623349950 435542441 46502939 565593285 365109384 555730534 844154047 692667330 883804157 324734985 894858360 468585943 224161013 425829683 37725865 995146870 941206846 874773032 789417097 48774072 602426117 296314562 172813030 638085976 25827974 908092275 613108215 789937605 954956559 496555384 197138008 550148780 211427771 17837363 363491929 258689007 650581841 796126550 462021275 772114640 913324534 675921971 490994259 116468857 563081600 383265383 55514112 101788382 575933208 332629958 814958937 543179994 525725049 642359847 946831079 443913340 568559576 583733300 272567489 710083496 614093379 85211800 388861960 460911304 303287689 168481682 906815317 69698278 48807924 757833671 877881560 927783276 639159423 532964125 960094582 539161766 186630094 69867343 439986235 906214464 868542667 30774873 552233683 145401464 579678226 513985344 382257222 122737614 206803591 975493578 335637583 889163666 944232346 585514032 316652906 760204522 341675895 957132087 312048646 84103518 125533168 775065308 987907926 425119934 585737501 893392737 922059762 469543000 91777732 802701732 399022441 369522648 138786653 483469175 52225284 366158630 383497134 527580278 571740260 956385191 115995496 820425484 349267759 407299015 281249805 852311000 305192469 220985514 316783559 280975927 868385298 360530369 735023741 712665428 866637614 820235290 843209436 948814577 70509295 219462558 279810231 860616487 794189245 894238847 599619424 612255578 196965340 200528107 421801986 995468851 883623451 86877994 76033952 948725931 202656510 383498355 772161952 171476630 535214809 739833986 449291576 687008196 323558667 338231004 316154817 22576303 290021534 732425294 835481905 337525900 54263310 263563809 180884832 934130398 348354451 37309906 159877880 138865317 512982120 717223581 72567885 928496854 985266633 467608464 661834579 792288677 179189263 188638700 432524945 709075475 729640310 856749788 210637285 2594098 800404653 9872818 634264934 859592544 223318643 220425634 1707493 388338540 626548214 844076498 277990752 867943489 768470904 805324639 321635314 900117933 948127686 936222817 484146839 801454752 289157279 898963029 565360295 211298240 905417625 947638918 274551041 898060360 206281334 159135886 622522858 265743075 167668339 247081712 331402580 361900464 663911062 410352567 373119601 399965615 404373890 996259638 971234018 252713656 242272507 837443748 230851129 44491703 157526937 3431345 192780604 960618031 645502892 959489921 648895897 582553845 966548412 414041266 398617812 4623414 574633533 410498828 195729399 351485914 155031360 85928224 974865175 394703133 318588568 879512538 299112427 607098379 525953666 943068056 186621562 234251745 676522662 412169009 962061231 841000689 749461525 445004535 366409499 41767466 201351902 938438759 126033465 734146455 104877293 181023832 143203044 481532367 695169099 948492922 352428355 830309624 673956301 209304179 110797165 968062007 945953419 654729196 261369970 527429414 786081018 820815546 626046237 152201678 470606725 18618921 132417554 283513669 381100196 77740550 944058077 760015219 611123366 512750770 653202159 419677702 933790644 755128021 933140493 401375369 836255062 453141989 611466929 480238558 74307983 402505978 855729014 535455875 23404935 485744121 817768321 220899093 4336067 80299092 962598228 126288248 618912905 553517386 50527341 387746792 458535809 100033615 857837193 198684949 517489590 320718950 371910882 4214769 571856801 739445129 475382398 555150639 296699727 687710741 50752480 532079581 134751231 982158999 603488677 901099479 979161005 162482513 332045587 762707671 874904700 419649081 153702480 583881396 794968615 136694295 666303915 291601139 582225931 651365847 920672401 329990781 89517047 136565476 315717503 376597012 772176018 20961962 229513503 592637204 21357718 22381023 469505361 248833768 48887081 535410770 279008615 155122838 513191720 581823779 227489753 231148995 679574485 207729485 827697494 925055985 168256980 472684559 130981336 421143119 759572723 888309083 954758496 595364507 492442596 855994585 68127085 592342366 638193185 198990973 399700546 368630304 859824522 779195698 220954264 709781265 907987100 448082925 150022916 520820961 231232237 284803413 896354235 894232187 485046433 486968903 954371621 813441087 808116508 884549719 823482823 635090998 374061241 328327178 218257846 448589184 204662666 196836599 627888925 617891555 989419025 893593486 340779451 140737311 829250600 920908248 714763078 293665553 556589728 144239440 42677000 847682123 513178305 409849230 368528321 402433827 428632093 615450880 406954845 829881443 8206605 177963361 470592073 847787816 536076933 790681146 454226418 456581922 199040462 259383190 461491800 418773276 427085021 696169943 549830209 892274021 806783060 936931281 145047243 662795966 814842757 339942938 537427850 177139310 193640072 376078896 763089349 854238559 691390719 310814681 245249952 585793794 141346440 933472774 427297678 99965864 503193970 212683953 552127070 643797462 205543479 561725287 194928706 313121943 191624979 542709429 188245638 668534645 458287425 63256738 728601751 762373763 394298716 467953779 577547576 486558092 320657598 948851331 63345009 283657818 503381065 637906178 993302272 458798755 700477375 403377574 376203921 264687964 446442753 118649423 703808136 15044943 847200869 862048353 974051296 118664216 546950865 568467186 680890042 373889227 682978471 883786846 647919079 962098242 494809195 326526648 191628215 367861130 378056595 263482366 510289399 174438178 518903740 23519776 938803297 189586012 740796879 842180792 715050261 929613910 245905258 881361704 465420064 599083213 588594581 213094716 145803643 481712746 945791629 463333850 832452625 807311283 90486110 927954366 643969612 823595404 65937571 329639003 339509817 970823300 677661627 620189102 299976679 213471405 727362354 168339934 788435815 653479391 804636316 833865442 324597077 113764618 73566200 942374139 207764811 779411817 109011205 896946770 538755216 783842374 420556356 678357408 514356185 312110210 257810281 466051613 660779484 316189938 841777032 705012322 481158505 772332805 292279115 893122400 962473591 548211818 882571699 6541421 290511775 1852514 844429983 605690495 552927429 105505564 690058173 733131182 206072560 377279580 55283194 784271030 606610728 938976752 947415625 358857192 584082660 832145599 23008877 946797535 402718042 707694360 800938295 457468618 152188454 284434532 641620892 703973898 858872189 610507449 116137827 89200172 71898041 709746934 900561262 265445965 759139010 809206079 149796253 244230433 495048323 921576004 260116109 470544183 409127124 651876284 254414475 578508437 312061006 720337818 860954827 39456290 473383367 743489949 407231160 264130241 679149054 691982852 780353662 389018670 313253068 284668689 245367285 93115039 910391266 18866635 527122277 826861264 675042971 687613980 587931530 397184859 614157608 688264888 136691821 857065027 972087672 80711841 706617050 9840278 521187359 696867569 415833846 597965058 449859591 798963018 685379750 363470811 594693607 474288420 675653247 544142440 232119695 455063080 335261651 801171794 340638 605984889 466008876 692534820 47639250 979608852 18458190 757146035 143183300 575056724 152471134 984988612 509548773 81916326 854099066 973571943 153863768 81517402 979761761 285163200 34796584 154823478 116433563 522641690 522027515 347387750 132758826 513547588 153761731 790704214 159453152 687318668 42391581 936539719 695617806 907967640 773620131 347265947 795685259 335462561 973220197 29487538 815144672 110307769 427482900 429141175 151024504 524002884 544847429 607833567 255967139 749415507 579252808 381327870 941813158 782381178 138511519 809585316 777863956 173610762 354991562 880202159 907286114 394535842 869274437 392163939 590500995 979315181 795184655 63080929 960244436 262343281 904647170 636835020 944494018 907357211 786739991 455320073 654507000 32924610 147993174 28610238 275763186 447236070 358920164 997926171 775908313 948644256 576165946 260490763 398576901 506321619 221047791 705856430 106609878 899812537 371425552 266034233 905125393 881792890 926587105 50322581 787393673 244783805 963527523 978849425 404109738 602539435 970691545 624644196 64077429 668477182 451815455 160423296 284851798 241535009 258104514 602434938 162617008 100101816 216488786 413536470 987806390 599761885 384323770 402366556 23033995 419231033 439676033 76021120 250711680 881643185 588468957 142089415 231326354 410022929 328948343 123456767 113259963 41456754 292624768 218981128 301258131 392616505 561088720 612570365 499355333 3484824 813622758 116160426 292767375 628174628 988596025 115122872 684338907 905170611 879720217 607246792 433847698 677137244 674108434 934132672 736118842 476799970 508547680 563665129 892634708 596954047 56845915 354938154 737583586 51683484 353162288 94211431 514341907 295879694 658608905 936147689 988979712 59724078 99660406 819072869 635035023 223921163 748341844 949592998 557915937 195822016 892042652 892153842 168387898 461034569 616730478 202438555 828928628 532837117 804413392 666841552 320500593 102049288 606128530 826391244 533419164 30183292 647198182 380157962 724782808 436399027 652795925 752139277 196611585 811111484 232943689 947344072 204531803 668972881 442021203 300110171 656223902 351195313 704549721 348494220 275781935 242490246 550831420 590778141 554076941 541664070 765066567 322277579 525186297 609961127 178868563 655754802 723679511 212500802 104448901 473920334 820920166 290311003 333462258 568947566 896821845 514882242 300576925 782630314 661374182 734962072 960482494 502092425 574276164 311060882 636558814 439231087 671626587 280930207 110489083 342532033 392294155 825775887 296384062 578434339 295752404 452004181 865097104 789893871 408892567 952115326 614126617 156564890 718637107 109692832 293547443 338990660 508904404 788533009 916569486 735307645 760630761 715145770 981504202 772942904 960635648 108628632 305694463 931650187 72173807 178029735 166655588 257001168 257549529 983508544 969774235 238327914 692612366 525976180 872102312 261445615 461274410 824848504 440182875 574217524 6595538 705681985 644144535 279967591 202092777 863628470 387826522 444113425 356286003 315009716 876388139 527655385 662071904 464906059 958125854 651723530 188096156 188974769 525649895 535151724 882583562 942731486 752516171 662565240 295851265 892374010 270852442 828796889 150277469 279246644 774818040 892088143 579721547 934031386 937077460 803160112 296738052 615272268 835384966 843617306 743808842 595366586 362902250 372310731 384892767 257640208 836668812 904539631 55617702 566622506 704548203 292680350 239594438 127250364 86870092 120563824 617057187 337359622 776170186 121255634 295700997 585996447 569729430 31421216 356709423 122573935 840609968 208723700 582854893 960189752 117774765 361694995 850334174 266918267 125379219 366683605 645815291 62646390 34297502 449764170 513964246 187455901 661629089 677914776 25911510 896579524 989480419 763332182 838109112 460389213 968422883 25525190 162011248 623160674 588322534 809711735 785737219 12856192 978997579 128198829 888280335 323014991 355469412 297487681 499655927 221582177 758301698 338078204 624359135 539656109 488130964 225447506 165595748 621472535 367237855 349126048 732743225 791380512 285337844 416402640 273212120 742841888 203718443 588811361 753118248 835090894 658930079 439422655 311055430 337171744 783168940 7897743 443915101 835095957 796753357 988723482 911876027 278755749 830950439 452581092 557957964 627609972 160761210 58463842 710993975 202975831 440670559 368703447 900328967 154041156 267400425 529014372 586337777 321773170 197567733 928925819 153010443 697767973 917476749 382855022 913564180 910906076 28821957 366342374 254540609 183522942 209991902 125991626 614371066 766818585 600778156 116953817 466940215 393946126 911360916 845408684 731531277 275486319 57076775 773159030 580449732 577677751 266781926 950927300 338820581 695890668 25243704 458438372 192127836 420893379 650139702 607580516 728950017 808690871 598598506 248964828 615563023 488969479 283583700 499234493 643920170 989798734 858921890 905338584 738007773 661623291 82361521 486344088 116561286 934501055 717145943 623516434 655953627 906382340 783093785 351780178 177413680 919437617 208674441 778622925 503180642 931159016 268088525 879729769 192212914 829095552 125282427 94811569 140544952 421606196 263295172 948657256 556608713 252316466 518033832 421270568 238122419 873046287 695262716 44425668 237133581 377792514 220988551 947363227 221877080 228083136 34667998 62887862 660635016 559198479 640348102 270599129 115509968 926181070 219116154 358930969 830900395 445759667 555007627 62031763 861490516 260127231 438108024 479185608 725324690 671155009 298310281 327670051 849448693 571649808 162379411 691162970 290460361 443845852 481937806 733948097 28042018 167272960 3655047 164905563 383494351 782163131 831439093 560823225 796350776 55409403 934457805 923018554 542996482 111260982 423946708 902810317 163157955 200225931 448078264 881452216 50531253 539358877 91723868 729115909 61093789 68919102 546006868 790759988 821637138 108296417 717757249 690600123 799971861 655351948 918827327 308199378 196462030 809145340 663656460 298983186 717390650 839728690 988592237 687173901 872891216 390345742 67477507 262937038 649898431 597357690 785095055 322363923 896274196 506773782 679132979 362712778 440855402 115789895 60978928 441865442 817462567 709898127 450530553 248815574 508469082 911148711 319541960 839867923 763362768 374628713 104155807 775523584 54210827 564017207 916291453 621615921 170492515 962061285 268334259 54099764 634845139 450036878 345838710 678970462 322835982 220760801 521861203 886565533 293137125 246145455 439271599 778949211 568073432 287595674 825174872 101341622 523424523 281719964 935044938 944096563 169218537 198280453 332790393 553845395 456538528 664646220 895218154 809567495 647325581 714461965 582423502 468753865 359391824 325953591 844095408 528056821 45100632 209686558 545621988 358042585 167737027 394063928 34267053 661202205 407453282 787269342 788936169 865419110 234715510 981738558 754251015 221918280 736451412 602831801 528679045 477140531 483129921 808334945 529179626 973512122 98382046 324675507 33596361 337857633 950064032 602359994 795067893 242649559 25915625 575423136 222900040 5624557 6797839 991857249 182077294 146312167 269842576 908862318 177550939 917583682 609424305 419769723 111128830 503203901 526868725 951232823 881571786 570995288 659828870 378919887 973782114 33236491 581903740 749536723 529512224 867692465 561292316 814331532 259429770 815767810 29424706 772620403 533938225 932630929 411933290 131415537 790614543 782358864 714562455 426925585 290601133 954244252 354146500 850211486 460307305 399029176 364728371 765117280 480941518 832699548 772405823 504569439 611567177 448956437 352366765 958516831 770304990 276969289 645544775 591778482 251873564 354348065 816000463 885177038 395164790 656506843 907942352 800936232 388158789 26080497 51524171 217840378 900151748 502474782 603164825 826721607 56676067 204398031 247661309 187138271 361513487 550188780 83151129 503282821 500196910 883407309 732360355 889831774 927838045 431751013 84427091 141558647 955500992 540360348 340682984 691732998 553114576 405599574 249094138 17127040 577505872 689851125 903393969 888042092 948906432 108854017 144049600 660046864 620094400 840474149 687651051 840619042 991457255 671261066 590035743 739827815 578562981 800508569 694112337 18388892 333167942 902472608 527691436 702289546 493860180 809724161 921379414 614966339 119530913 778484858 635211934 231820550 172400931 552554495 117298218 499253734 478308932 974337255 302057771 97285698 374906534 973505843 417039420 134506987 212103147 918931612 727545754 907088004 666062091 875990692 512095199 305181796 767332498 57216991 832469804 835253493 2553738 494390148 314596360 354661077 293643500 968197078 532520047 163016409 405895072 950205417 47688609 303845308 743408546 474684691 267769770 419337817 946912392 654516385 173961857 13920758 106020877 657321670 714234652 46987805 268840846 88334495 915938631 153624638 112263422 458613537 420563012 556844230 579737894 489179956 503609584 559522730 665299212 40936174 676312100 19794710 815670532 945721700 294957351 836881169 978214254 9491838 229373281 893621804 934106911 582340151 50950353 423298312 636416653 837016974 964570357 197494008 638396232 102714842 847066729 631240795 659971480 497991782 63398905 52494418 899762786 780489459 888933815 178585476 462329712 26247146 221400443 612212567 278847567 38465565 18121367 716551046 181168450 354800916 681827072 649070390 954307594 712584683 655401201 109520876 397737423 80256530 672071349 950891 159618640 29809459 354768981 609368102 511212884 514184748 843077288 289614109 294489849 145227262 287741622 522400084 869816362 577753989 515305883 950311047 701145986 740886262 569076810 498888229 108282638 948653427 887418065 476525117 844214779 452431990 794674992 805313914 685407595 155694171 453835423 801543693 830459439 507834604 775137679 886078521 522972031 999524627 362820304 606791473 208948339 818730238 999509505 619941167 711061821 429974767 632405978 975815294 167865030 177575653 862850991 775026972 114765244 790861300 227068489 301788176 412873014 9344282 949557976 126629249 136621214 928635600 802357973 789387968 947557262 681505108 216525965 406447499 151711964 376280368 728111314 457351347 484189343 674806444 743361178 889179628 755648861 535862900 594904150 433393006 171060715 545586203 438571594 189461088 368516474 479226558 191499668 795610225 441935209 423636183 554956252 47713687 618311249 377179500 783864396 137058339 241041298 839148973 701810800 707302457 477260306 476386788 253350292 277558509 184804253 699434191 683803045 543392100 589507637 591225513 768626828 998106700 641068724 594820731 775173064 630137238 730322500 75522860 885986547 557979161 61656081 85536895 68500576 348884868 567918290 837998609 548369930 571062193 82889909 821994809 234483060 709981644 904699804 384624737 721737092 749071156 254851896 163410910 283383359 429406721 274724118 907425378 875355630 54876804 739263303 910499479 506138139 196400774 946595842 115793744 194182538 896583703 366633536 199197228 614124252 460512752 22365646 207363336 571448116 914202111 794550947 128713689 579842862 504348951 470284005 317083824 393315310 29302576 403662435 824487104 773531935 273283961 957814996 442494533 310595923 921315514 678177325 887360635 385568776 710805274 822323459 644169884 196072372 992383532 441561030 854441202 433606508 752053584 899561360 998353020 988891487 502939938 123299705 216863535 932336181 143534885 557250606 734364864 38876949 205367295 467671385 670741244 749210759 409731209 972006819 59155546 796094792 316063719 948307178 460947875 852733097 10764201 764692472 994206293 634014571 354109629 369417231 547295059 459948497 364993762 10610982 995834587 646387151 26886623 641117926 712598931 103513551 144485614 903777486 931406230 770593912 395254708 158505085 46459455 550303750 231720700 348144319 985209046 568000911 118688440 962369801 422662075 271294012 384221497 810909819 928642654 104757427 875602048 918859790 372432805 450547224 336409707 770117363 935635799 93267407 40927838 853525155 940408430 493507945 667189431 598609417 572425528 492610850 354380817 487323438 673263971 227220594 830939444 545967400 440255823 443485604 373109609 460008917 299852460 186967607 654818564 970003579 365518705 432308313 922442654 691428873 210632035 45845643 838067121 752980215 310637823 129783207 610958881 598839844 1052941 88516542 174713135 995845092 392456571 115666176 601690118 557419903 924098245 616266429 194124911 86605385 3873216 779802064 149940534 815167851 498387842 545718549 342854407 741573813 942378779 70281080 973866415 393717308 786278635 784811825 640708868 103961270 326385009 143899157 474176876 286230111 90605667 289421676 925688496 794290315 764803687 823556436 283458667 156495452 976684640 343917364 702878562 837761655 719963290 285783946 944930014 525286188 629988597 222017627 648794200 676288392 984080398 197589827 798601259 986630463 80409798 579059584 19254904 413274863 384473574 10923439 477580138 921302917 695328356 836418010 509816035 963858730 303319424 975258617 728102120 520764002 988575670 396716545 561242703 140224545 839838846 628415267 424515619 705131343 768714714 477707300 28148720 731963308 119852233 221921564 748803202 103824609 384892401 460858988 842430068 369861270 446872352 772889745 365190858 783903338 853022114 194441100 41883765 265452952 388198757 682857021 330894949 513117927 76514784 877695016 836840382 365531711 372280294 768333111 581399899 989195510 619725638 796622271 3117973 210759640 939947989 999926027 14287811 444925281 14352904 360076285 73852440 192951558 130946585 394368658 905359813 766493457 906030067 203710884 68520171 104703602 787460762 613763603 859868459 760890567 597060101 142944061 758983173 714037930 786231907 28006352 3996250 997377015 831479859 284956042 367068688 608323081 120699734 343278766 23589354 470870847 968345976 123570565 124927230 354299368 897562901 314183033 181150187 742480300 718983813 309360024 130800775 195499768 960337020 20051369 827157923 882632129 424499796 183447721 88649764 988854934 80257395 524513044 738371069 408945162 76674954 930797610 344459865 851520341 661435280 350237088 1103821 667954750 708685203 620552064 768318095 344721029 808505794 971367193 248292347 159552977 601423612 36759808 411763032 290085938 125603482 833639408 100601451 916693104 311516739 531863412 926976132 824442406 639179869 944473281 110982453 483646490 419523494 240581819 917242207 819457202 70658233 845638471 989648533 986505837 201405092 573485238 288733162 533005590 302623287 73781020 643534926 534687663 250689904 719761891 464043299 454134349 466392357 155064316 66977489 168496338 402372786 576826578 102258898 303330579 137119527 260177547 70875667 418795851 373320367 812090658 442324711 619131698 257500325 541667563 496757265 645749329 747739341 983699677 864848818 715262641 649958344 174750112 403157538 570693509 922358993 278114070 448906337 550520753 596271434 243247901 377156824 143773629 973940021 803057938 922832254 288563342 206162082 905682322 187871533 351583641 928930541 902176798 554880294 599876642 355409141 941556875 69383428 288875619 543635304 433921852 293651329 623921143 57049135 990008081 114158786 210675363 188421784 10998124 175731848 606383459 966736145 422758163 833932773 126864275 944871054 790426112 366916720 344079152 421216291 80312047 759192694 30484035 829709928 270755702 107594104 510387417 311280831 927866307 602235771 930240141 486521432 54742014 862462493 366166663 488671968 901516900 933538019 323764364 146293835 782180492 486879664 297711510 680274379 754254319 585390006 321363701 739009157 660228615 146501132 921698101 211066123 583918940 22492903 931499722 117251054 72973620 528815032 889745701 640527158 536095091 74771805 588276915 365953963 245860085 424786760 82455956 622686758 902858384 39520702 204380140 527528578 144757265 428764513 373054242 843194641 573970392 175617927 387509155 185788927 65631097 537963180 952505686 373153753 667073820 973198117 563779171 145102247 579850011 734756701 309676511 592169783 325192763 132523459 855223447 728031829 548970297 396878481 682741381 18347602 45774672 23475353 425864485 259312672 688196983 952738161 175222123 91919081 938172524 228395128 61627318 702385698 559753131 970695487 755572694 204332102 559764445 272113520 395710271 646072490 2596943 587015337 309271972 391069455 152822064 898810560 927412593 88065550 635069959 673292088 935848500 92817886 978752878 397248325 75536209 62768787 342989244 589224994 889423349 195973510 42510885 473484587 439361420 212325712 255871323 817678466 433416674 476145034 647184892 480836965 705180326 4967041 459224911 241253765 573529651 378430079 161998174 390536395 429494263 152968365 38584018 373232997 129557707 203127668 312872396 492734076 71152553 321219362 5922280 210884799 532732603 191958153 967800546 29261709 923129294 818422589 528668558 797414033 243249386 89897490 268365060 8959402 632867207 112929168 517583027 548897306 799595268 236323332 420167783 977738619 147567595 476179276 376699772 940950632 387316793 904463370 949133559 204909290 744971466 146504435 78660713 978131154 843239791 253107335 567817163 414925565 647378699 242337196 86097475 554282122 801621546 610505863 15643681 975914346 725253233 947084093 870478809 735399298 339596157 125426387 406394117 867988549 134548543 320821189 175223085 378775584 712189090 640935921 740989768 270047168 300623975 490715151 179685568 150923051 137181075 541870564 888791493 976651628 396907328 535953265 569817376 170320285 974112541 705825986 459173125 677644314 674506484 202266587 529755044 615192378 391770283 87431009 329651898 588621764 659456970 318190511 672685429 389074271 493221707 959882252 695650609 444903675 514027181 398313518 646293605 709568332 221226467 66453156 411517739 212652345 428749889 796000076 164584866 211009930 593188385 649365267 920679008 483709702 856101766 685884327 332887996 400563245 892551448 995880807 446349942 120017801 449446447 612644717 20340102 865042388 349491039 867503027 375457589 340703079 173522951 530989011 805897969 328545852 389227779 281953323 607226382 746854798 47218532 139251935 596202245 916627104 251557488 54719728 895229148 520059941 516559231 618944338 605676223 176034906 1489441 29627862 486025359 131254308 406191575 788884669 916158199 279124849 126257340 340425642 891747384 483578376 795974917 804893385 125688245 709992070 228724008 615699763 322374368 606011256 688813319 413761440 438326114 578553597 464702087 66138138 516500489 290914021 32133620 429549508 449941321 29269051 962485413 280892456 454662464 798194164 804732550 531979579 463606415 90344571 63447243 979838828 549924520 219616688 208899683 621366150 11307817 676162133 573799925 250884187 38827287 615783058 49507700 126661480 489957967 192237207 639227315 130926 274060839 997400291 968092106 81535376 824796343 316097260 772954619 164695198 251816427 758350647 154642918 872609580 509850736 664122756 180718370 442751784 43832509 513822520 37621533 848081621 259918324 867691599 453209883 606141148 895385207 30327587 509730482 674338449 385765713 313560526 40858130 261080153 600728038 305279456 424407749 769375280 240447399 20332534 91449584 463641359 573271676 934271327 505114317 369227828 457143834 749642127 222500466 816654457 123018391 910462603 981835655 390109299 262474003 184473776 460719774 37732750 305236029 470929574 567693393 135294027 715040057 760140830 810126148 470349423 919674047 698049434 270096139 321675413 325961935 92542981 354514008 860771052 538642820 814926819 449178150 798295487 754764020 38847646 612959060 682319867 903718453 141030645 866563244 999412207 381411340 759844793 857766342 146668733 618005151 215705272 866363480 268738479 386308030 554967911 232615971 507344094 437179823 653953249 624168306 346476835 150985485 75062795 269569702 737345009 67634212 157723220 333916222 318831939 352255425 230273878 935073034 352155913 789257760 184433263 929303465 20536456 273127105 932933016 537308269 401086222 662531985 400367447 745544267 39937174 742794422 596657336 931509688 172376834 185659716 41658021 718099352 970450759 395909415 752546265 397454185 503520401 322794511 289900853 217137265 403615203 786897361 951543553 709080377 892705482 647262311 297151450 607649452 239361899 437998082 812403458 973982327 466268307 288027353 860253719 82588685 7062724 723673291 953839903 324076959 439663089 9129051 999800391 938250212 123190914 664452610 670479439 629548527 419839234 793518007 50283507 425740759 179604808 163493962 383464185 210910252 737796384 530099087 544552705 269716802 111908982 189423185 889752082 930113634 817312089 606932318 290882842 112516974 988703639 322791064 69350424 752770866 678338429 678545155 809078937 75546452 982005838 470321752 704352063 301413127 272103945 388898929 436241303 796592720 216774547 838532886 917951546 593481952 765770181 594569382 511077849 772885333 555100518 364124906 41970491 561065587 873199117 456475187 357685719 403464182 228268410 640604993 993801724 103149249 610102969 461120757 890291709 566149812 7708421 414271673 871085378 295886698 866225516 272906147 423973831 37237237 269421442 76499132 998282112 946198836 474639291 793435160 601838209 379597537 34070510 136352017 227234571 786995975 217533662 844415038 536017580 646667720 744359322 967429172 834521875 514952428 559159699 109664001 260535728 134580911 296913541 136234548 377579957 257432830 578033607 357919297 539238774 400984593 367037532 697655873 892164326 903639753 351341873 38177881 370236486 740021900 566289567 389115936 76149982 459471824 47072531 214693506 562388587 228752924 89853049 963884171 793442627 578221710 765808479 922380992 9242570 720567754 974056383 212840045 603729370 344297657 322131538 731285723 68067171 315370296 916104173 967123164 602165077 507815238 537939320 975076188 574445456 433885593 381775265 652636707 769307056 404030017 733831692 213010327 121241637 4623846 167833366 668211356 496868320 553078990 419685576 547832708 2402338 324142125 24330237 954283429 145604798 514603453 444649831 605970822 846401005 134763291 149162698 234609996 270833251 378790032 394694493 118506034 39245362 449442903 869460254 854604910 949866160 82999589 261231725 542326770 235990151 497974278 455112099 931570882 29101119 496287172 213069523 158665223 868961926 187974457 354276708 31113760 819140139 738370612 307096331 816145768 768288189 799702518 450678226 715452825 775220244 717801645 976426262 885011088 3301726 545383173 990788743 474220611 285167100 804472668 674691127 982300378 289177826 938711758 596015462 223077883 47577871 61961707 426859542 56876242 687267702 922800079 131589178 351823421 821884471 264911950 986319026 574783789 511602586 268899235 751148248 928707775 986308221 745803882 178207172 491101830 389312299 246038386 801630243 577348772 783390678 35066245 475116989 487681873 557540613 211683436 493611343 15580184 202172 369123177 620593331 290441643 375935235 381649559 206658551 434440362 779329192 37946444 679588670 168763402 28832329 958063583 973666879 886336888 403496447 553047567 749762869 647765648 153593549 482484865 616931558 508960611 455894228 355420394 253892839 775809245 664678405 698860608 642507158 447462791 330603428 967551116 867349948 104252573 764995908 594781201 885354625 954059177 857681782 549424523 804241948 726707493 213046454 303957741 901687079 155434241 809344382 875971891 430683016 677428231 596615199 267697682 95902893 659573200 774735503 200108492 216815894 605838023 34025802 418442856 419507146 42580886 66626890 921888905 358480005 477321943 281719361 640050577 682174433 342996522 73778990 974425104 204138701 509389677 563402897 668250614 857113467 249699296 486231578 450125344 107974599 895703179 882495917 472726773 401371441 734262297 818071123 505403815 638458069 290540731 442060289 17310474 624036463 315459862 590779029 402692125 164095484 15303959 799338867 608232644 30691209 297083758 301708968 115990280 421390645 459066357 15448426 848129756 296416975 425436191 231602315 11846830 740955952 802684153 627742603 146296987 544594999 515214420 975378357 131817695 916972007 789557327 845653546 198406489 78568542 516654067 583906167 253148942 650212432 850094886 167602330 510757878 130796172 400803602 950102816 866285592 288093993 870451154 182503823 260222630 589630462 813055974 350981852 273406531 263153929 408430224 744596979 338536131 870661213 727744178 688236386 785510432 70025808 215441819 267007950 414187084 61982123 780177344 781797247 512202961 184326099 781130626 729957377 706761758 844285771 488283152 695631390 934848186 473961251 490564882 529367164 836876417 654318063 293076490 465899178 437824048 940155020 849243186 266980024 44340431 742619231 481666571 955971635 872150022 76802553 281255676 464991849 723974414 197556811 631875645 254314258 412577713 850741701 829822701 580973658 484478984 500721639 971087459 244238427 854585069 263470474 455142850 207883132 470003750 649572233 818096523 709187433 85986822 157338348 925264926 291426618 513191007 372681505 941405239 331800260 55299046 453561157 561615991 353886503 207920025 130704127 990597248 393678055 375726359 465792444 923989936 246656546 995282620 25804857 852948119 778346475 707956660 516839504 128564921 2276278 532439080 310209354 660511223 214248292 664412082 834129737 784667583 285065685 145025275 46218839 617743668 738746731 474619944 43365079 920572485 755856263 190259695 915775910 321897536 398352171 125498413 353553892 400709233 813334699 583738459 618342203 842844907 54712437 458342877 639962031 167766814 913037932 630583742 412532832 84693743 969012222 881649083 220361118 637060585 727094179 343492114 772740428 274896476 554987426 588324854 985793390 712007501 491593652 819635417 678240831 612068543 676419791 985360669 83166922 569644828 137988714 71312449 22991278 242940579 975895610 211897558 133723706 686521861 600296050 320350147 617973390 614940303 685976164 216934472 178688827 191506340 49508631 157110290 383013663 797531626 87552689 228709274 289777479 507818818 263130896 924228983 766983627 960011459 981546328 737915631 510464361 165963858 407224658 129399982 120978095 691995069 503930153 761092546 840796487 103045494 86246659 725110637 209323145 897380971 505041768 791360508 482450569 145749621 577817599 739924792 315937401 493279952 426394797 950364959 90363049 193182675 211598697 953795661 129688925 434257464 304591681 956705623 150525653 176366969 509997641 140360626 618092541 176109202 965694624 357343732 884068571 517815915 769152508 623853069 228863609 572578401 521300761 421676219 220558174 751685307 713521183 471785043 972597597 33285932 294064869 411963313 190253090 709393498 956100977 87293198 527698255 780664926 892878091 443326127 930826260 432692913 118229214 402174455 985279893 279603219 51750628 539944762 522875038 57028896 473250353 772808419 283815197 421884932 70422787 875644016 118669162 196375880 416216898 221882590 974597205 572727647 233511786 594185104 861454739 343031331 12407015 306689088 209858771 301533065 575058464 287412559 702595329 478058593 416476535 694966458 221456223 503164125 10686477 469391970 435068134 43044288 169489462 746198351 345573829 946387452 715764623 147302924 809367113 243343182 724761953 226905609 178950976 596429888 840050083 61645702 717111454 65388627 512628757 742130105 559336662 653525565 854799283 444203537 313951053 229532765 551936810 823358862 277878722 349100442 886824212 825167144 931224551 807273875 529934294 672492546 58006799 488138011 179577747 645822821 204310308 103086841 496942211 508005003 11123221 544775401 146896830 672653551 235069522 195494970 501159022 64668008 772400833 853780135 432990294 918662154 127902433 658561490 819769278 65944357 301627580 763439466 621130906 145457949 959279934 27442057 403572139 913228413 135973183 671913429 976950970 682094219 386579601 623323422 939000296 786977132 23358781 171110540 637921653 89145521 645180880 484186691 803665739 784740127 897137684 5077484 495131752 206590927 141348143 35658013 692191534 659216999 877010541 239696980 921315117 872480308 446976557 640878659 932234508 925034810 944201079 421789527 273456171 907752141 156938288 368856141 794469382 335040066 302785117 933796012 314766004 938594190 363921917 195451867 153738943 716847648 190942112 713245303 826911154 951198834 330394053 195905561 992469947 974442871 51584805 828022945 622796880 97534198 293443085 285970710 112642551 501306041 877328501 793623303 686117435 477827746 792207345 172476006 836198274 519229444 500993119 922588744 960270114 248680993 90412359 995685432 421802756 814066687 313762998 509158367 720873483 498049864 986672962 4746656 985736530 728359146 772730928 137441567 880914048 974216607 852521732 854541055 630843968 219030891 605756125 346477256 875760455 925382368 599752687 695157558 939817652 695472110 547676480 502445601 894191703 959448637 322515447 6293996 67621776 328566641 579506522 19008823 470398690 112850653 660901407 245994699 760269560 162409809 802232857 803277292 440006885 577725842 476681870 232027686 587909287 788205621 267071835 705456014 200188329 911968491 429920582 119742184 84126090 320263046 113373510 779060862 823675799 154508078 389430124 837719467 407034808 457441671 99363416 481887392 884354630 152625917 812347949 189875371 473814366 753609145 732997163 434499922 104480383 924485046 839586871 224855664 250443476 12005269 742141745 355310734 586575781 86733873 222105234 215690367 845925980 899648204 777155730 421212747 917553097 964442966 445596569 775147683 717904234 431787114 677367997 912752741 765418488 668946093 593602292 289825208 128514099 931411162 105660015 102317730 78690102 203252982 139632536 239060350 747245822 740806792 110883704 682062740 251361553 799055699 929201215 39591484 720546150 733978063 191040858 734027141 485739225 829007914 257139578 839331614 842358475 731050398 967054117 754140147 921623488 976874298 497058789 54181032 725822326 692074800 337759855 678884010 410743362 119684560 660667814 869215380 736915723 348698983 365530336 144043168 63211107 229073782 273798729 189187949 33827070 949192556 358986429 749990451 815196123 421376996 249415812 982060995 490410603 655780791 1764683 200970942 567330980 307190971 59591048 206842235 318963570 390147564 512906450 768247599 112312077 172316269 115362444 537292776 22468667 216347475 361777632 720772633 513461621 816318578 94286281 3843480 995063053 750255131 41849541 754797936 154324462 170295816 824883027 56110820 687867035 48840531 764567053 779778307 472821324 172598644 628808899 890300790 528668228 474446736 920683214 788260561 428609613 339143686 752837945 510614812 31675454 190765143 313695556 198781730 676455356 796846874 121875480 796089659 126288522 23062179 730479950 968058333 847729768 590868713 63088575 902483927 613936776 263837236 452894458 179367127 711061580 278571929 47773344 38840103 715909646 91482643 557077135 979632323 157088079 351494945 965349259 728335304 31586233 233582539 394905406 886806928 634513606 755412047 809208453 113005335 200773895 625270533 966500463 881950222 607747278 432944301 582225301 257141525 617848491 51641464 578154072 333796087 303380336 920507720 552859312 525051452 539685128 436137714 346403804 873217450 891239023 735096294 956496187 826331539 561306990 534397252 798397993 169968420 784178914 512400931 21836262 811259868 742298225 114337783 285139160 512157616 406103106 403305183 108059810 920434909 208352681 655329563 753767014 542738030 246202632 788730938 74870965 252625782 41078947 791149309 21817678 177529075 685872223 159759412 569145554 977787780 653973885 755749403 20185968 901040176 616227657 1776556 182387859 731387164 58187105 737727815 927092102 321362046 906514358 787223384 158186393 385398469 609836531 660088664 381588074 860391625 414048764 373885634 81226460 163967537 732887158 36522540 237077874 171975391 619159164 826012785 369359665 561140908 785594205 987607607 877149433 492384958 356802543 349013779 942256905 863428863 803409361 190876178 891349723 820618108 676506954 416691623 190747194 528400102 486014770 925001768 669181536 704494192 565764748 159770378 562129002 76759498 359420923 445240894 547317969 311050316 406715918 630519282 830140145 28039520 252475846 797471758 694526527 620880015 490288584 957724735 376126738 971977092 655016160 267357998 228195066 831171885 490719797 156341741 316836281 617799844 643824101 213448991 311914269 666330121 882792396 572999718 686821879 373035602 582783403 142545033 624068617 34337524 105301069 478126933 445704077 722414715 369371685 452339835 310294376 143873985 347798418 513690595 954073011 781016246 658062267 471859186 634355838 957555498 132901413 310269571 518946607 40349461 966718657 38053251 787533253 715847959 784132798 690079289 757010245 573052007 924170049 959561782 335603853 262046777 875108918 791803205 346163094 243785511 804747819 953655038 289321953 446556981 524859274 643068534 794383125 308302204 453116930 917278039 395549670 604009921 285219201 319150240 616749059 655884493 165608680 684761407 838331252 779576134 406950638 391126142 74724210 721000370 102339714 840548454 382905458 548371399 831782002 124510285 299072232 410491709 878968238 83042896 196263740 818231207 338070966 653221770 426989323 408028761 342776371 401461403 954363810 896781666 338313823 105901077 456353462 905227518 299549789 559154052 977249595 156779001 382659378 321029484 222667686 707943817 950519762 787396249 582286767 852629207 681497845 940573064 897886904 932422798 270671570 697182943 444153972 106997245 972530958 844310051 611705472 676632125 256320765 548804407 476857099 668341183 721521426 447655806 651606028 238160280 932871835 90342878 481605681 891240080 412679918 607097579 385848432 109182153 654638799 135608656 204542850 957767928 944909570 766582449 826907962 943759396 483113733 402642948 421945383 360608778 69522083 941591002 324020298 280773289 8052063 904123148 839362492 513724996 629606965 200870447 397354664 328453819 689344039 629836425 963647040 540983370 200130492 137924050 908621875 722656007 326250599 672208652 865401796 910837235 646382094 842562299 753955897 569082806 207228090 212321583 763376767 267314751 301760335 512039630 925380573 523938643 716975309 955524118 588711885 508885440 258004085 377548854 98089631 541151651 747752343 336150046 96691845 277782546 69477837 690418354 298220525 821596678 984099766 751737704 831250350 564044945 216732187 779534626 204477994 887988197 379609430 498470030 601647764 777513152 763217532 480214024 506290315 414943651 791900484 337636193 527319313 452023421 336313725 750203241 91901209 516121567 729284308 832413109 995345323 659905927 977564486 421786609 624252132 92132728 559306113 310781091 719323654 812721787 411173263 809697803 151946984 811948451 834288460 587744520 980708792 483525742 989132839 456119451 903960809 229954873 291197302 402542462 256761560 493168960 966387007 122862309 597966141 797729005 353956544 631051722 430932337 70314470 174058566 590079388 618605278 171854691 83610376 762124052 281061128 513969999 181581828 838994975 627747527 127096938 197415192 426044352 235083815 569933294 364650646 265700437 794527510 592884694 991680959 77298534 888591402 558065668 667600137 957727490 671947369 79873391 49199197 358563530 733021422 287376341 82105046 802676557 80693097 427954694 553507477 55969575 703741328 481487520 493732389 909371016 71335873 358549043 628365058 662496387 375325747 801660415 135139641 409755030 261205779 934490110 957804700 138266682 617220094 780380865 570595961 47946391 247076122 972107300 60062333 924462860 373813537 221907353 624756471 752726498 914629259 632558162 616700552 788440821 908217034 563296714 829449471 10627897 317454897 876378538 503490091 5126346 816557962 181886391 30820569 535183664 546709629 61265906 593971882 816967423 14214080 706832164 805564662 782263336 481655650 427503741 768915522 788623211 625318850 48792626 984550442 604274211 610378604 314320497 419414458 399481003 791112384 446335332 175502558 179013379 423075023 723396614 728565507 53947746 242345566 481925329 732143441 465138592 168547159 504046379 201095393 771455999 15555960 358512217 348733087 833611869 41403858 133958291 92806551 834481985 151877950 801075308 891442303 641252628 595538771 169292239 927538681 419019854 563515729 426677721 906092710 746177523 183560292 113128862 174275021 572429626 203854878 797582358 460560403 775863893 36268919 742262241 437512919 537255249 639512614 312977960 194983154 992212862 624713962 796781143 137890463 862320408 124566942 634211418 430637701 807980290 89539637 218221418 645687841 688197077 910523868 885248876 499267303 262357810 448919307 146811854 36872625 640564586 79146323 569379272 722526585 990821921 806862165 341300861 898537419 117302208 554544886 495908730 759905266 186165938 279539183 701251556 430296973 236144727 308536346 60770882 2988088 859965101 209121837 146759054 316578438 596314139 951282520 101023786 935693791 393431508 613477990 869157720 169388324 294106341 488870324 950427702 840434195 990676449 595705036 562397763 937637901 62429158 881019863 828151089 241914575 626352771 62096782 422768837 141861089 936084625 434459555 138353496 269901784 456218876 907726123 252367883 634785717 852085883 27643122 786472876 702173202 659088155 595738751 17370526 318275235 170558990 145878975 525600602 293170290 342502368 900346658 315021675 929568249 667377513 770966526 126587439 132136039 628876732 499228280 121267285 975764906 80664577 248854271 844723506 857774437 877424930 177042910 834189975 18333865 580008048 953860233 548007993 492173714 841083870 310007515 612756079 368464152 539467281 821091475 103535451 621688010 287366761 767193081 467752041 653733729 991246315 937969498 803152277 18376548 318686798 271085001 828932585 701681949 4676798 998863681 233580446 430346914 810010901 304262491 652638942 306713576 476295472 331514275 915529693 111268132 154511287 976001109 103635759 197764343 194683076 721914886 608127823 297239808 468928632 592592933 326613809 981169896 333451773 288341859 972197036 353117880 929262033 887329219 426646780 595945957 248031556 394850248 826284296 578173095 136891367 119675978 511733227 108965492 220305324 224959654 700811147 728258261 784729882 796630357 596321432 963332963 498100373 308146423 125214055 979936047 866596532 732118070 771224832 812544259 2023091 41352708 896414070 784880799 672363092 27566567 69075695 647692146 331386928 610009918 908811175 519917628 848954277 219181384 973452492 168041165 106016770 463350745 918315091 862756948 909098555 502091711 982054617 584578702 974866228 130718202 831833711 723380345 152759457 221181429 685393847 167961430 232656152 995953906 379613998 69809014 206522201 576445848 454798345 679680733 956524824 671368016 214129792 8659451 389709920 917505323 321622671 602544835 358773746 76483332 736949829 633736547 711301739 772306954 256267384 318351851 413419301 962365336 917093540 375580081 716559273 669074467 184643057 344229991 879593396 101375470 994422113 957075944 465295122 700625384 219694456 130623851 917226546 668430239 866831928 760041291 290147368 973075499 222615612 680503417 955461058 209399519 205220253 999525785 380803410 917759227 241702723 574689099 651735362 484042761 121397840 311999251 397736759 369039429 234260578 536429443 693767342 377237712 860693290 561365732 63209476 967748372 200214872 589887578 457287369 653353334 899996282 142905626 906348640 825536218 667134290 23351049 852478759 971293800 695723380 4256942 619876197 382646374 910094762 390578021 700337771 729542863 769515157 812892353 18986225 371623352 450488112 267327756 899135771 345020964 698895338 254401444 540871164 409969727 134262453 410773222 683733190 832897333 465714682 16950292 195940841 321384127 106962536 237051029 513827149 500858553 235206838 728233580 139981613 165835850 904558633 339434726 672237723 725047286 523466814 161815343 548058076 649065449 287876762 57630862 505028189 333565021 213419379 586597003 328956222 616226659 385917609 329931138 464420192 211527089 55101725 38470966 144367066 642514888 907950797 794805085 824629681 309413560 505524084 779394288 577351269 795875505 796125083 605807358 178600230 168441209 424720036 21740345 811696074 511034931 840950846 354778220 145400608 190401513 461363014 458361598 127447987 708783545 778413861 969959301 592672217 608044126 504603439 973020880 607332648 15350381 491059929 322791246 309255302 530944059 844704840 608738866 15353603 811065049 150221738 705228111 16891857 580339164 595834855 234324359 834974007 924527356 837660791 470306498 160250048 650180157 386802077 812183178 492394690 596959089 888403091 531603474 135858713 764955830 643805496 950308926 66759180 580042856 798032042 70499688 949246227 893877564 973933532 118424373 130064964 123948084 798396915 695777050 374795968 504453691 488207265 316608449 36675487 551631751 76671644 233219895 643092199 677405263 365613598 211854963 524581677 876906150 198514093 829878455 565726016 832292484 287541385 900523595 563523390 664553696 675559914 71604829 62439986 114435456 512604305 704811936 73591078 916651358 681330047 993152253 958824849 794879469 135518355 893285110 774073192 419590792 645622850 529490459 749821745 217736644 574803599 705334287 221877594 63966220 23840735 94096938 833614622 328966086 821744080 275757151 954839596 205465768 832987660 380557966 772898597 753764529 827054778 753269362 736204182 841842180 500398703 935386289 377773315 817422340 144069849 248426044 459414854 429036955 328979368 301311638 519054979 148514666 762642816 644112600 507864286 232431944 38679529 296262262 44547396 445439499 559473614 56228885 114848497 374846994 775231925 685079942 947662844 356556679 880302380 240941425 485193903 683411022 786674186 655409313 290352968 51236797 766168216 448902143 188661743 204963781 110199021 129156249 62966574 85569199 387043680 112659494 288487962 39244948 84328592 37456984 537256776 342544463 268637983 481513927 413272200 858862796 410236547 343311619 654876886 136724751 536535936 519026547 778082525 724938343 172327215 150699099 749312896 576304447 442283747 407885093 416768700 555780498 255780914 607700693 94002875 11353712 589913423 231721741 236904479 44136108 376700724 187526934 610675131 372321247 807610630 548479589 856056795 365731909 637752316 489166011 733806897 440539378 962573384 495475799 656332909 955701460 361836383 794180914 19208006 51218592 521461679 595181836 379141514 190431001 176206087 515088704 437670268 937263197 388235870 7959408 775964589 610337711 880503297 678535539 189623785 951509816 262541607 297160937 950056140 249194542 479574149 294164500 917311430 150441144 268911640 919535001 860190312 522723699 671873514 111213541 888953362 62017389 574613566 359558135 22431181 520113391 510499207 67163376 657693949 264073484 371106341 483941088 248868801 468906959 712544824 135844673 374628537 963571014 373775555 173525244 4868638 217784618 690573534 859733275 766461254 975983053 14864398 132830670 21728367 640093148 630950475 456453375 533361920 6658132 54623358 929097757 467669384 562201628 752458303 80781472 724108176 958477666 427001592 15677644 715677368 65599736 348227020 356656372 423834768 649912099 725190599 59652770 617432032 592611927 857049146 762766474 798817575 407142057 410101651 483688505 92412447 818744556 158258029 884939578 912522202 285094554 944723503 224664583 951948696 750545918 620263724 233330859 999499057 422771614 57537127 577888887 663302939 623462753 677613161 232750922 795396643 696791504 486183329 808817083 479355059 265406254 370114363 827347953 630243568 286006901 977872861 166067203 847984127 104971598 789753798 424419998 687170811 855530951 36635550 458738421 341291062 386270568 730167342 586776583 842841342 197565836 390194786 637899272 26358178 174525291 707550487 995169457 839425741 434258414 431974740 793211176 474965007 838395146 740299896 788060965 891427929 256392517 939136525 922926615 368948479 135451681 885321238 360578866 932968840 557252330 963511952 405287689 840290053 10157205 204465818 686929919 888119 8427976 454944964 121895293 886761953 104321559 740287149 615327297 835996961 151809555 864188387 862634741 932542733 849942636 882230657 188200568 476389724 619814144 758445080 381515304 228562539 998630481 156082119 700918665 27678957 266482418 71119476 140567907 151655524 643704719 838299350 221307440 837097145 447487118 3965941 33439467 562372841 731393743 470757979 942641592 393536444 177505134 86492528 198983662 884441297 201474762 140387202 642112832 640807593 783854766 694351056 737542074 454482353 825684237 698107324 616227527 315662660 97777514 968132143 824647094 672147627 347768163 997824307 842139772 982710155 586479437 82655284 402657505 723500087 452550498 821959410 482427273 406509667 45701296 648072220 137345151 835624650 748768567 262280045 45648191 96347 603888207 259124389 760609328 314823841 731858286 763322657 975879163 970393457 364619141 893293297 658175695 381646673 782782092 651059671 295817905 880895959 551009700 20627073 739806265 305767204 107358981 309795844 155729935 48439253 811600845 74457038 43436717 350912533 30594364 522882812 734019104 66780985 977649015 362499382 599662583 27348792 166849854 274376033 167584101 254225916 279527169 578523266 955097356 865425672 665416463 256157610 440871480 666359109 778444848 92661276 94689203 261501582 616267418 580360452 636154240 838476580 189458656 721295274 675929227 530787608 903630014 671114875 598088676 761428375 194529138 511901385 740769338 382182495 661892229 728903657 793766390 935164281 256013612 652898149 663893995 100414152 754030849 618428273 692644162 752563396 181115146 855447951 375086653 130852619 949755326 943931517 97080816 98646102 75894866 280598336 76434653 301584177 468671999 75844243 247745210 309605581 638813437 397197174 144161298 659445582 424260027 77346095 129594479 467539931 948790074 103011153 431524862 404925800 121940821 634550699 661828768 730020566 978108490 527453020 140898485 319030456 606266170 78838543 754204947 624863082 664212523 876542752 523542873 183612132 981142290 382392640 801876358 290619977 276504386 629832085 756004678 741112141 28935600 636752204 799309764 534230672 915664261 740250607 917917331 821058147 833635000 494647616 730871795 163497340 703427662 936124212 768733449 721126619 689544074 663961262 502438013 892079594 694146132 77101140 197417314 52034706 174760539 596924359 384251384 394784302 157080369 956001390 725536256 47085933 646397468 279285583 914515728 20540319 545621984 222698456 902675285 848909566 709540854 951654739 697388245 29172247 998216961 689288916 975145939 305274045 279588407 890331629 708226670 192048529 209697759 103337264 741797726 250186380 955437942 569062060 233826771 147025804 919761872 752223145 184867203 523409752 57264974 191743447 539413163 619970759 249985784 474984699 501149119 326212597 525380314 813097930 954754495 249439287 973449010 422335752 923607716 390317918 675690967 981857694 569176517 5191862 507647003 766034812 350448875 223084644 695380945 381380399 947843442 458278781 599776271 613283386 302590862 922555371 545113331 540961731 934609113 320894875 776433184 102153870 605443649 500452799 486218362 148068637 93662338 239164602 592845476 820241645 687404335 318212159 388670653 708001209 713441355 610559710 790427045 951221025 488914150 953485614 60384931 787658056 368611405 200023527 549690675 587877387 205340422 984034124 678422268 35433642 131776860 741178305 551608848 327190779 658804037 588451103 926244907 37687667 90341860 160401411 978109425 986650849 749783808 520601430 284027129 71365323 813519346 756340562 244890096 973869113 287096123 901367798 813447582 996727451 742754701 924262651 464891807 806681338 890483091 107940961 643346498 226206594 362432945 745990418 954078782 589665058 436265318 757866697 778770502 24339928 727867788 271886787 255763621 101566955 457819312 378099826 871992813 520936885 709032499 180181790 552484277 458328079 729583813 959371546 207611411 102831789 513614856 54173759 275656839 764202303 507257792 466683716 613092981 752897004 276554331 929908514 555185628 320995315 36098199 68663004 327609468 613964584 859091298 862132842 523613107 503671672 629852187 514889668 644829589 380460647 777346381 295672297 612980079 139435205 128351064 860302211 752103753 453470426 45997791 781452454 273656847 573125264 64251737 915937605 447699769 50931037 430247209 98857528 982285887 432685381 58262412 191532712 436291612 598469388 483100604 274463716 929098886 817201220 293512652 52056655 662014001 663638422 244629205 256626954 266372385 11111638 891628066 999353234 541963299 834888499 79914642 733945065 616283792 342672862 702997900 491285544 148242796 608676894 24596263 953722079 728088989 728090774 317721349 405381401 553815245 546130360 972164521 197051453 411519789 618026292 216826048 797453012 121409202 564025518 379599013 139034312 562550465 949296027 509007733 311790539 330198560 965828380 174929734 613343885 537910530 712480007 645716588 341478720 166311806 145287082 964749245 74880923 683032389 442483425 318996766 808116661 538902107 7564338 205892157 361794336 946186393 642417375 505269801 260528658 317049137 957013024 704785355 580274767 824143733 308575564 271995623 720435404 778628962 808376219 568328460 207676368 287245931 81888565 566382004 167443081 883487256 618142200 706899386 54121262 269344580 194414262 199881038 185388984 865965493 203071836 841598030 843429552 643443751 809983364 333957556 503248486 403732276 66681754 874756459 921905206 549030231 889661775 283722823 321584312 383459557 743815480 679259725 391197714 799930197 7082113 160866231 60746934 500314904 25560609 364662885 589723555 907789625 105802233 18050476 685698800 444924639 185497197 581626251 224104923 392900125 639743874 761561107 189244604 319955049 249763325 189786952 520468757 239109775 257338676 339908559 182200583 229733519 211618099 936720823 29586414 685909121 280438018 113350810 240927311 894567828 811974602 728361015 189046660 157326420 318661729 191472865 672886938 912744211 495031254 274683440 595993173 995448449 40327208 622398541 885348747 154386092 476914344 968617347 304281530 296953406 908775796 42874636 134232498 432956434 709005286 756877194 964381620 1364510 489270265 365217668 371364058 439080634 282016722 549015461 986253721 555458202 956399726 498528579 422207390 428427608 280043327 174120433 929931077 126607690 679322684 783274574 184473152 55906120 122332913 864031262 689535628 222773302 561661616 947457380 743977075 959892390 673056673 460602459 314871477 218732768 784371872 957471366 173825688 107762974 815578985 919852131 530943527 397737969 540016320 478619349 901448378 370599081 318672559 487053735 631566025 990620579 536620341 472466361 613882723 544130591 476003247 202470528 752085153 447471876 194471880 923407622 491225561 523001062 977751761 874004393 507346489 848619681 404649161 823808915 422962927 14593161 820855012 764930683 413631251 218029694 603406924 582054956 510380211 445658619 253866829 247515932 894747594 687750630 800815715 246501403 846619591 365860929 385851241 548245305 225995838 283721052 874817923 708141399 203769908 141287608 593380932 855283927 483642527 278856491 167721468 228100924 961589606 75781940 850802292 354695335 22010073 535355451 261319074 576302772 995544479 785105128 611560799 410517118 129178982 732108609 213375412 902524768 475253824 308709707 671888799 166180267 527030172 815660318 629135832 699975264 55205704 572834731 547702708 863615603 868618312 546483936 503351267 76027426 208983079 100361109 672755872 560993042 699525623 546766839 389254512 835884530 764084116 942696826 190877392 62817687 515597483 238149621 39783752 998652387 323616551 682316823 460389381 163629158 510425985 553271668 94121274 104507191 915451207 753418258 871714877 536336748 334814087 297109530 186178068 493262406 861179565 277166748 374967667 72135897 13999521 4864350 907470543 529071138 797891200 768541453 888637193 982378146 983635677 625742171 273996685 453482724 385841148 473331211 309723877 202886713 476163022 612578089 736072451 44800602 653955719 257160120 921875172 600481794 947296676 72629920 208840109 892579777 918847221 663733756 182295287 49843855 859105939 489146811 613362636 619484025 62129666 871164758 342303037 33208463 285077672 746767294 97109070 82006748 382372598 589452543 996550936 11944546 147351778 810574579 912145457 592091681 869931718 407147488 852271686 557643598 207289011 884121053 945790503 70542416 287522923 634137413 110530671 271976658 139495545 961770144 481037196 645663421 413755355 248423410 170400850 392278037 536838029 821263848 715336054 721979803 838738139 371521218 935545814 704112527 976215476 94595224 407003637 886597324 861540351 796153026 327727246 615256251 743695408 229069580 982365545 786578699 949442130 92456444 803925594 39454159 667212309 774144918 785997263 966995036 854511996 358172088 580156095 548386821 905422344 205877221 763982173 430004984 300345172 772922683 890462471 890727876 416372720 912380834 877459114 361811363 85341714 677324674 35930291 727506354 674097737 622366725 839774458 643716599 603701650 791773808 33300359 744208398 541447735 843859862 931838518 68219018 143126859 517449711 103724232 663040602 858093394 859760944 637879310 827177959 404315220 616195499 292075063 990115883 635423769 868715835 31200990 420091850 400316154 812331780 92149009 123485842 826816940 611331312 489248402 108014143 702567720 460178316 823824264 810426686 467566010 659220587 142796078 632202440 362728093 911373047 167041099 556259960 780486229 302439994 717523077 556498917 334102406 534814392 71841059 249671468 731197992 667714322 872973592 101169471 980982478 305285142 827157325 714700720 899098079 640140399 432060038 560750548 363151755 17232208 546043758 290634888 701319301 920316169 438843962 919150511 685965667 847852816 4890914 780417068 958609138 474622083 210681751 696804265 693332987 358629563 252540884 598079551 517230326 776630569 61572254 579985490 337794598 857167140 687307670 894027641 16047763 24162880 761433289 453520271 215714408 968503746 373446096 243732331 782748902 358235862 848524980 522065035 622982351 552920351 226307550 218824791 472733954 625863044 931799759 609813954 944998312 547622877 179666262 460261448 185308575 198940507 102978982 859785415 920452738 204558830 36962169 561148614 469065530 946356840 70800609 485313206 200087649 30964698 977331813 848534676 312845747 706695469 235156774 715920166 600050915 868085790 699265894 146790431 816221041 103517298 565456136 206529269 481037587 259289524 339484856 508448181 106202502 37374896 64604122 63685348 721360159 788531227 301575158 157217546 594493997 112826936 853777661 228043835 426692028 130581435 148566022 312078083 99207809 121454197 327482814 106538575 26715083 546133244 906792545 737855031 113628018 458217060 9383599 131324027 848081884 729582350 359666782 896274386 952421625 216689492 985487059 446031276 501298480 267251731 421617750 22632089 281234212 93124450 532556324 733502757 544744311 546263007 500585085 981070832 932715310 578068290 473470058 741110128 242967988 221153064 848755480 89659788 756911772 744946609 439721369 182816538 951269584 375213418 379536022 178810781 298797313 9072826 871292060 85085029 528139339 382107405 907590648 660182127 560792660 871431634 686072438 165249795 451873588 745659068 326211194 736108978 13449173 979639852 857188011 881630863 902534986 902258434 472587159 174651175 914265795 815495998 773811015 900331143 183829774 39329959 563818003 767655460 651024607 262220751 964067172 695677270 32662379 812570839 992580326 809346967 863984627 687187973 22163542 780350455 162313184 731024679 663075161 590899941 787886087 209563650 965599495 146004463 568696863 983880777 501297845 636947479 462988469 735324222 108122551 812498767 587974307 38722994 398815813 603904864 828217759 941454409 414057233 361395900 842209169 754759755 831505091 299180102 178392357 789352883 550870070 946896953 213906243 180884897 120325751 450645223 906830455 496901947 255200075 34693923 722857787 206680137 176954557 767437979 852694456 232299196 770280714 563693017 514327813 864715267 941803616 231962360 49132652 377921959 91462580 822677966 819510197 99217379 294964365 566361593 799507130 969088804 328146318 18490950 110822608 308182296 707200023 937193082 320014253 611674991 306116501 819613145 284310396 325253298 267528462 921610376 927145453 965108038 979452258 234530673 653361454 831115557 732050544 24031516 467363371 552969652 742805492 719481000 133821772 451409500 113555717 314477348 533380650 997109011 5826143 860176915 860265971 54296141 392197776 981115413 114748791 879796865 857081161 464911620 431240552 69418256 657408224 711843720 866930484 511952834 571556085 471587014 548967804 424734509 602050949 27510485 279986274 722549229 251846337 158739011 105695450 481197014 487784951 45063840 65648407 927546016 768352469 710688333 360168590 256740849 568707975 565696282 991088851 341488304 724689511 86809403 952360105 218399994 630920030 243394011 150259954 814844019 315041213 252830111 639887784 560554311 190553503 384570151 546621275 52297413 749584329 392369070 45344882 12716654 739761702 176561368 679098564 754831227 15080137 335304968 677559761 993951972 433533213 274797826 896448548 932195685 127703523 538994351 180978327 269712275 125073289 800284102 534026674 967584448 93071455 849395686 890752991 979811871 835001740 293541956 640036263 259364015 791992331 528755903 21958963 753728492 909132330 494700317 66523345 972015414 396366068 716981717 834125476 472168113 495555809 109292479 345710881 309183850 717746757 584809130 524396600 425062558 636011684 424446331 319323050 61605751 20131901 885989415 478036173 366319984 304800652 174322256 501731647 937054261 700309388 930784550 898157006 311292288 325285776 59870709 391936372 935838516 67564656 676457765 474564905 778471921 225166938 233021842 635671532 575340517 208345438 607903930 585540593 748238915 187920283 989677651 478507518 561793714 154129254 486625986 584572095 942353680 184008329 305692050 426261294 491567529 407048300 574319958 287972776 163554416 630275840 833528098 875942406 524066848 990046414 214414760 445915421 532665144 233959345 219408160 857192494 506538911 669021172 612679562 180473900 8525754 432769015 727780269 725749639 503422369 173278704 55696147 296847007 580677892 473899895 279338705 289236348 905406867 136286634 448280222 889585651 694053922 548822614 729120600 261868808 651803583 819850200 346339682 141549000 549893848 188315448 636104841 586388072 735694067 17856340 867978824 421438445 152003519 657211640 52924266 505177794 986201467 848823271 777585535 943988595 829588507 22613799 71877657 993402298 570116275 526907499 831448298 524508335 63971662 995303762 39265913 468039293 545635417 752318217 504563233 898535589 698434377 559063681 620018881 952318226 192836967 101600439 666541305 888982577 222372218 110473633 743166049 55739092 633636745 358379633 546310694 43043117 93392570 500088659 315623026 576368789 195894 31033566 4645299 48330940 107957021 920916328 150261675 773451891 608562928 73600630 395643810 699980056 270025213 132433273 477816134 669129076 735548223 752479003 594542894 60011063 501676320 597599312 663590737 870420040 170192657 358858521 873821013 651432485 431333018 607792454 373380960 755060500 378343901 20432747 369491856 496312062 665444923 624977352 41614654 783282891 543240047 466988952 67443236 677315553 786241991 72249404 574088688 563167509 887578907 312542619 882221521 733947106 821172872 13724302 191395901 511946690 823529140 119997538 531089143 905974006 560451544 333193470 244457081 280491822 105271059 656880293 495978672 117014388 740913251 469784678 901295423 193146152 714250538 451728260 860141734 459563482 506088176 645792214 134279014 852062432 174749204 256935161 623894023 692879366 780296430 641694954 46661878 13557901 85061056 839032897 383679733 611196931 224018594 44152411 169600869 944557016 594925222 409534368 247551835 869981762 323172510 518314537 135550539 47345666 385341445 231889325 583812591 44544054 179027281 937318740 659105536 778872251 771916155 420069810 521302109 838909476 271888641 166859969 148946474 308146259 813401379 310004440 109 410247221 983901215 202884103 802014072 133809189 242303103 932299787 507528435 587283871 323749420 959961453 689569639 376607603 56653808 668398759 548528656 266365950 854845915 196393087 78160451 15134272 697794550 169765370 130625761 260090376 934215554 992292560 162072979 706924488 197487380 802914263 314232104 341459259 699525794 64813603 269068466 482771991 293624806 426547358 389761093 497903667 206971800 91448629 325565020 924174732 384110870 574649867 346619769 150164753 149476066 661339233 983470045 940408462 801893598 87842543 404486608 930130838 31003289 247538448 479585202 661065465 435782048 781170060 147433790 8036689 623945293 213924709 188855736 697401579 729879637 495199973 351052467 631727888 54038829 914767153 591298498 549893493 557930255 723148170 357444988 814942492 898640751 829627116 916958488 828852759 502979355 167123123 304877657 155376694 169356521 290283508 319995604 767518487 301907687 197211024 10450269 695629255 762267765 827680069 204230292 900626196 806962075 899281918 253430009 663966474 275821636 776879105 841014970 170822145 370894703 766959490 631581895 647906971 751548993 407509987 389508588 402862307 8521827 758861824 336193193 792178574 943019469 772599519 794966922 504433548 556812789 253032007 746890570 223196856 355441362 615745322 28223129 224037086 792631719 481964333 33409565 954762294 175515509 24008745 666017032 367288485 188325806 164715464 997121338 267983432 304282363 687688397 460751077 586939294 646201421 457333594 525579268 754242167 785742629 738517849 634927275 28712781 988590719 803532760 135211784 594024026 742063578 867352002 220854399 452705369 193478539 844004290 962367442 162124324 699231525 715478012 768208977 185201940 353871432 585246518 399391655 779406230 257706793 987244440 803412756 454953585 446809624 582856108 894733675 982435834 485272355 743912262 934464182 253912579 77965887 489195363 386826189 376492691 565156202 208766814 825859074 937741923 771335425 132334510 983649874 236734195 766283197 361015056 670818220 611100274 29604459 91173286 103158637 722979115 840776737 38078159 72552463 44298010 848629393 892440348 813291170 159929236 362899627 967548420 274292662 976737784 949343132 482102452 719233381 712953754 508693788 574257139 469559110 993553920 574910942 648801001 560303571 828449546 70769931 301967970 504111659 298034528 553597742 731209654 622244859 129306037 497068954 600892403 541341296 211249227 182832585 97377445 5643216 769016391 546845117 769918063 702062404 344079176 737551927 337736602 668784092 116805435 816758963 754927893 265011525 431991464 710125537 48369771 30671855 618407632 492301422 626415343 564225100 149598164 692748387 678516959 871427319 263309068 642741867 657127908 782685732 534539667 328675124 740069058 645454249 653598049 917394907 75237145 454903099 963335455 835829596 179412523 875560986 241400850 291910587 995676063 553948557 329177555 57749618 741925872 996757503 693188573 981903894 144423155 234548033 686259142 792165595 228549964 348032916 192687149 905741349 410553177 144252868 935550690 778452142 835669941 885112145 87019118 30715881 968806398 538004984 902714854 756531881 478675282 837674868 538550492 566357027 236187377 352211945 118646401 766021320 308536873 404229476 306535176 582526071 903767551 155949090 134979172 623970007 186082269 11613115 850828554 750753739 232838294 530126562 335366052 701301427 974528228 742109097 648099243 967577406 840072009 422165772 735997053 104125571 982956075 417924416 568155330 791271137 559524542 87129660 457838596 586300969 782176658 550918299 596601170 228779922 643598146 888146931 474771921 853298846 151099067 116198706 494175068 908419828 936034976 228512037 525329405 193867110 363390973 565644062 664501386 237341359 382832039 752991639 590433615 930425806 16952504 136833937 929813617 79134631 437547429 331305582 461048062 223368032 426399747 194491819 363103638 621883635 560461882 954774888 927591265 451616349 537433884 689890837 768892265 637539987 524222747 479058483 273373303 24163203 642614398 944579180 690640042 729564498 373317788 703594961 607316290 592213373 388495204 996140141 986253706 944742948 702233165 372897686 494655479 340759368 944093637 369106401 908029810 211206934 387979102 790042775 299417119 621599913 21435541 199908230 279327873 87739453 54139408 239476103 133405200 386070123 954512459 637297102 919766574 363705092 364588872 961129893 441763609 526764769 437048303 198054400 359073315 620382306 524989929 663328194 805822176 795664722 499673736 366175048 591592322 61325444 726757185 797314683 520750536 470555967 281461579 72044764 465885511 68067502 310550192 586033254 579882931 46817067 767094281 394355706 881624811 269467305 921581136 994589649 818173179 915804669 520371822 479732127 385306063 939282270 309873760 20608161 324423229 842924875 30921161 32360168 536278079 49169804 335206983 747480365 847665594 664020916 240333458 105042066 976494114 637942574 886630872 209336521 644009692 791627000 232488876 458043848 464270722 993765911 469499400 193551700 757315524 702002310 406527544 192074211 873551964 859207634 649200693 531589221 130450470 436558406 12792183 300797335 773983944 416900579 125358290 29466200 652263900 410235483 663801206 305013368 161812527 877622413 536202328 587914911 859246699 171588528 426484731 667467200 488231512 987507831 370892026 46336243 707541788 567144396 955355610 912401435 49664643 435693890 51069516 143911113 277611849 639113373 810917410 231325909 743618259 729304513 793365247 9436721 436984253 241469837 711851397 372469946 519272635 831627354 773429869 775287569 877681181 148300067 567192481 906176673 109033328 382675438 861258110 787065977 44148999 4337190 566163881 783989840 73770784 17189267 750837879 106439896 799310074 141820113 34107878 595189191 93901550 8424212 206300810 414913463 971438826 947051808 572958408 206338714 727945644 265434092 419245299 67061859 121449602 825199939 132423507 76012152 44719800 735876807 892997371 331023044 232395194 387166757 797734081 951026405 868849457 562464624 550420023 101447795 260795360 582815392 888307275 954614826 634472947 34002039 902017808 127085779 66490508 293864474 189692534 462227329 799572818 614415729 852581840 217418871 363875144 880774468 804059869 402170157 635125297 726913945 538465803 651139139 270648481 602462248 906676096 723975560 92668426 560630253 879707481 985196420 20073170 65012835 798909209 915282286 235075697 746399327 20332891 836477525 558961911 212708061 801476117 80681300 503914061 217413962 662418222 257417402 338114041 224963572 122496096 93837269 375441297 943381629 152469164 153556744 940686916 711979384 195195687 240391308 706348858 797527733 73688684 186490072 66732793 591030304 406036932 238432340 316924936 525179627 207207750 994500917 166575360 196547539 342487484 443509827 737575127 224561572 876795345 561523247 920847454 919435948 751303499 236727461 282432695 386038649 957464624 36547408 852573090 365200565 715789625 550418482 940389155 650482951 906793426 837853766 933943967 956336414 750881309 700995453 187947322 506640981 364121156 761418206 205506724 320932475 298847741 995211056 107538588 160086086 612933203 319665664 898274030 108051093 327414307 308194202 781537193 598101356 815447495 4686754 762521256 350075898 946802781 289565369 697643385 162355752 272723934 794953639 476177863 560308261 481132079 384632897 890728600 286027006 117922844 917638010 809922372 708738150 911993110 315781375 869859725 413877514 557154368 645166414 367914586 448136480 250698149 835051634 507196538 781025543 584127213 634287119 39010790 913336237 14045081 957777891 50530597 341352060 698283670 962111304 463909098 476372191 410613197 818221173 872608867 870631638 40825186 41372373 716321589 197209830 624075037 858149417 669716132 208150015 637735879 66672656 297315606 134845304 833445041 989254076 46865077 96500625 472919543 604624832 386748459 702728175 193083074 13132463 813770406 393115797 780126077 392714368 696292657 784552289 642360012 30459178 445936125 675088434 944028523 174864192 319075931 302542737 330022036 841680640 30389537 774559444 862294069 242226777 500025407 725585595 517229161 302150615 19313689 821839225 352077559 333365940 530564759 214431019 954657955 963210145 186562444 300510529 52595443 497696472 378882980 421837249 102293563 83685787 491061702 151366812 273493670 497903989 296593879 811953054 511948157 607308231 954439885 658322796 602433528 550375798 40775553 301338211 590693047 817644939 569217724 482181130 526929896 122639160 996291580 797022217 403290646 30542400 629762634 996146208 793953712 608079256 984156234 773005754 851262988 699372006 477832853 834551718 112321648 527939763 585356185 843331102 75414329 616345761 585131710 327806091 400281586 870585167 249164380 493200671 106182006 874556029 12553969 715499663 733289770 504647695 442719305 292640408 138838759 799948051 394061733 693874154 711244211 27492542 556702609 244119766 830951033 655116075 656126841 334855668 12659094 526666329 202415037 569094981 177957807 166491862 165623497 476984630 316275927 904854169 657099937 801797978 144462558 228084568 123299494 45145694 287388784 844709954 691538960 571235765 457701981 761527679 194458171 605124180 288236683 597060985 352817668 43407208 763881156 442859142 605687314 741305609 237970527 110243751 529355362 5782130 577268865 261082169 429627405 138267279 526915801 997787897 858834703 15883017 421436928 773914814 597992261 11064268 427781543 777834776 45000075 191085634 807999170 926610090 363150640 923111132 159943245 199035255 955239712 790810816 389514900 585942247 165325707 689755384 472451517 113663979 182153195 973079088 402986834 948983403 605921323 640705234 685775120 34355837 687686007 524035774 786148285 880724126 678019198 874583683 246570099 858056230 843261047 98851047 570670931 73066523 81722756 481998081 728374153 388263399 108281093 848320845 785370582 742194980 568580461 649751663 478888040 142125335 124020041 854551255 573067968 341535952 626903881 678227796 539249511 47707669 643778345 183099465 41959253 517481966 187598098 919294079 619634997 82867434 340831213 147688418 59775119 188568928 904176897 902387551 120087063 238191842 526001412 38511096 803591015 971760611 460669114 772969689 437897255 562663755 210284819 322743856 837600140 502038836 876559457 621218021 22150215 517357262 646843271 718922221 405680384 391873644 319248651 400692974 399774957 549652977 622209403 606616697 816641592 112934364 572266475 142345534 534037285 725361143 353707159 622519839 731297634 439719443 598372343 761679975 339062290 21105118 242115128 772984129 74097801 291434169 993857744 705888932 945045678 245748588 209509566 439879099 23322074 383031690 808097982 33123547 371310607 767122089 901525280 242838968 29001350 973559352 836172512 519519185 657957509 476036869 754023337 940064856 141472197 970853861 625492455 878426200 266487316 666296035 792175259 706541067 746876433 464719532 592079185 904419070 331964424 668343666 583825354 536326950 579960349 198583912 800173323 540701519 777033645 532884523 813624301 369868131 847200794 456698458 890375740 637262922 751455747 931959469 579377262 333844925 248160095 952401533 362152822 36291313 637618328 965831173 196606884 691141210 665095447 341305861 489891554 225191969 944466794 608270969 604388917 91444305 686855856 398601262 166043741 32799252 872880705 719597454 837271228 672271221 472996551 699714599 885642484 832542121 653203669 805244002 533392868 387044115 623532857 830931296 94441106 577485768 842486572 335417064 822416794 535806104 904324388 989837060 712624642 409178300 952561280 939911845 149195738 590403838 602430756 751523805 655753301 775035102 845351225 838346846 797581499 25215265 404718033 670704869 584124442 732859779 290618585 719721541 916151090 13368888 410378672 769836708 838103230 983876418 838069461 846833959 218466313 857938793 82459328 629056776 195607605 721115958 438060944 570626562 724057279 128355166 510910452 191646675 532213805 945021523 556883334 217191778 869072581 565847224 814300362 97582092 959036638 968789261 650656245 805099301 540292563 193441635 87388139 439961225 859759782 467584430 47752390 104667211 435172722 490771005 910858640 854290125 273201600 792611321 313162808 105214476 62533581 870318465 396076503 402349277 542708821 565143670 580588721 509793565 857989513 622826816 256613369 199522119 901198044 211374721 820610726 229106411 942376645 624725906 887688300 987289918 983376967 630815850 337251047 633020276 130574698 751995262 306451815 995865255 850683578 181728161 622859231 692366577 837407341 427667704 948799023 956488523 525729134 373965606 318157259 11687961 224882429 603796791 409897728 730119066 504388038 494767231 791385426 193494066 304299499 607718854 258963923 484623274 161444016 645903402 240071602 605590155 615238792 992157780 280588313 395538052 747179813 314797474 695492430 432417789 418316996 493842202 197952655 939871674 932655051 69574121 32946020 399079765 95408852 593474087 654647120 183021880 318796870 14841123 198370855 920657225 63054543 815809405 477365236 10110016 898633359 505311284 648587164 330312794 264877162 419823479 892706054 74127737 19783664 105667870 11600000 484175128 80408561 588715522 71769235 777772629 611338946 470472115 750821239 867900004 924766640 47407846 453331000 452297207 643185183 714475123 752936044 385114851 159869088 937146020 427952101 647132673 622144945 334060640 131472117 574358552 792097110 741103687 691073227 377750065 928149043 947883151 227903121 63763736 605550785 573428730 99125118 432629555 889913440 254548803 828279432 25341563 64441877 46238522 695707967 984913350 685943312 169399060 972781938 719282471 656979229 706975895 233559823 167967741 217264873 327495796 267137817 701047603 236978662 246406444 255338194 562036672 764862999 248246416 70427488 239688130 659793858 636615415 274456677 910045877 219855500 727521932 935854152 201731548 288300815 897561645 599043942 621522423 545624260 931820571 266761940 197155002 182954292 699014945 851599459 735961004 616280149 618386332 596356912 77300453 304249494 744227309 122944098 172556166 828372097 869475169 170218080 595851290 278971217 732857194 467070301 75005911 766768582 640182065 977961111 537003530 937442390 866587244 613903802 202964880 483987665 232487116 839032571 274387380 23050724 994961632 395853534 35743233 657709596 389120090 552115444 281932198 139648104 755750623 685129540 382288595 493430019 431585972 164906481 802489299 121086714 282182262 879486749 702433181 813030923 782168462 395939302 913690725 149876329 120084860 392455607 429084939 152177881 251134734 648794614 758392364 271062537 493988168 53444326 986675040 30302116 762337154 267689603 44723456 155260313 187114077 938335907 506183204 181333436 559359941 253019916 380997114 23603497 179992808 117546792 654708452 372889801 641179920 75120728 229875582 659408380 444825841 813851780 912801917 545604130 991137185 131936859 325892594 996936876 140968490 561473012 699359844 905613511 550659947 318868439 347364941 206415517 923990903 984899990 691442029 488891387 874382949 997490487 974107414 138406680 880661653 279401027 441589829 780501722 431499768 201526097 235105089 981795291 589628200 824216230 472578054 707659831 214981815 409058710 438843417 136547133 276719122 644878432 856393878 392774730 200497813 936039225 849080133 572767398 950489223 679899396 936740277 659922053 846711677 259442103 527700191 49276479 861199511 501250373 260795701 732822667 324738566 87638313 375420573 768177725 646804555 76322427 128683146 440813350 502749888 807878114 388149596 930346558 396862188 583091338 957591551 629149323 895846945 14890630 254391450 360240224 471922568 851498552 888974060 910066713 752151351 805871677 615476883 638203400 581280438 244494594 251642392 545813764 593740533 184574258 413551605 200637178 311094909 725174518 862466705 860799346 112708225 775907494 894116287 444018695 733776355 944221686 234008917 110811097 413440428 509002839 947632526 737848162 613421914 592470605 643231336 267409061 419820188 883026423 919697332 822796142 964785593 161636515 870605761 128940187 700130565 941756427 746317615 826860329 96710804 595159716 341457666 971056052 850637747 2005406 370970824 57616413 668960944 679133609 320868117 750356452 46459973 920853617 459266093 611548689 427597278 665385536 712851091 548696576 198883345 44759746 726117484 192959622 346692269 383798822 263966981 575700468 436371296 689476273 593037913 144838921 910716319 236047216 616249403 788498924 133689309 126446229 389150969 678199631 917780186 808606190 268657834 235648593 97973409 439622631 543744299 437948266 450482123 374367078 974821157 786478835 713452657 29995844 818535573 849002816 996130028 573845595 549850054 825728294 425196613 377811315 114750992 777113655 188299480 492741390 677101717 746941935 605181565 313915869 433472902 44208580 813334966 126338414 506206896 102944795 100613827 973845663 505074201 849837293 401532117 58809709 287753219 169572279 727500929 193424268 540452028 849431447 479598107 318463578 956516240 762165644 941938878 736296567 719860752 869902535 32710421 466874448 369321815 199515071 411648776 907013888 216418267 770373889 720371114 459728917 256634887 547286384 357446806 524663025 953895098 573532733 518290826 959722785 42730082 830920712 209968798 714004444 359621188 434028610 52962055 244073517 332581968 774708685 564844188 131455387 804620172 542524508 606773904 156330298 559839277 257369220 179489939 3562872 478638251 572711348 934921196 819708740 510183540 911194298 579131887 310195579 743609598 780270150 131761448 577398685 311020579 275074982 28916655 471165978 93640533 546041496 250580960 901406653 950732900 506609905 455785683 655010784 818734431 725411929 285605612 213245218 4732188 632216611 852961301 833578252 979980354 894580581 396297414 841211499 154618701 538887522 253417695 994005088 112668734 985676201 701892754 95218859 753039745 612125433 749850724 20712332 203470925 67075891 224889912 218498005 810581184 112656317 419030910 532263832 445457605 256657526 702046206 976148964 784027575 386375675 439715386 658288847 157407466 282417993 842770669 65924459 456134358 960090283 830147373 831620586 826746729 294582778 782267606 605926247 378270085 770945265 825672137 246245983 173262243 365160258 12503572 310498979 836009369 421029214 808909609 230306760 62485613 690013886 224719400 98226160 789902036 383328039 678189807 217132859 916390544 689383516 978148055 816935386 735486831 167010310 116553011 976002959 601280734 630009397 140731731 141450519 291144192 112923378 798019388 13938668 898936795 797757651 126564512 662003455 858631058 910526122 601420407 310350540 217312884 963405405 465409836 707098258 480420546 682812098 874552829 70547552 140169631 39789704 709199161 162554862 264245152 266136823 194732928 191092711 84807685 457025034 229649964 711442767 417802465 588377262 932213501 543196192 609628548 767083282 551943920 48009369 159673950 608092685 757921392 565263006 659877325 962833406 193039096 848377703 819875659 520946255 475047309 898416575 432083555 694046299 828923829 487888372 662497107 248926592 960711048 65294824 341688171 560587226 245150123 985415409 194581630 187953703 882339348 769720777 270742933 770765170 921867206 397357119 510177542 26660288 806421874 262766240 898186416 673862968 442299436 822671562 407759146 945400396 707743382 631005152 318715002 289215913 969043619 34454569 869010860 55530830 556991672 111547919 148790576 159501512 121595202 535783953 835378306 948268032 492822294 913917741 392079485 90648653 893213840 153156682 112174256 129008116 340415507 667354771 512496881 652657939 199939144 222178195 311677791 338782345 104672962 21475139 710382340 406580124 700027797 407938214 540006731 995410251 460599804 329553301 299666919 227503297 39430428 748486142 389188850 620638816 942144600 823834022 514839722 150694727 379252449 518579126 685270046 509479141 882865745 122506134 965240489 460445859 459868954 160463224 428983817 600662013 962895858 137479265 479308867 751436088 145288375 280665327 821109891 341019006 289662600 654873340 592040076 194054502 308886064 155734089 410908680 199702462 895014604 962580553 868413638 712607469 328743627 370957733 461552492 525997530 692215432 610045895 12624126 290131413 554488082 218480425 236592709 587314214 280521244 984170593 821674437 836016529 640008922 442718522 287239768 746772497 447029720 388330235 750112011 407270544 773283694 291914050 213563229 203192232 616652488 842695838 169901071 978980792 724044556 25231721 356694205 776072767 357863498 909138005 463980483 726949747 189568928 870822788 301493190 73610721 250508346 552331004 783123074 658196954 389836430 624645034 820413338 490059164 828451758 233212514 974288981 38033547 823473173 24455218 970181254 298148790 511983594 260522770 266126687 157553926 304879990 702189747 887983492 785908242 713758406 674515503 946617539 976624423 812980789 375265604 836261238 602485225 153104872 877085122 897263342 509174051 658085102 513618572 907772876 116275942 582479261 148955773 941421585 439382936 115138831 128928497 646192808 262472621 369004789 782574460 890371798 733327802 958911913 246038697 92091104 580407058 912872050 873171003 50812214 307710498 365429679 564368742 696760750 460634412 84296918 210416637 721072101 752336517 473298301 847209867 914636941 943216164 683513928 386185759 86796621 285904584 341440702 132683399 778825585 166581904 736342635 759889200 107820554 181430776 195455463 588321832 245958282 210968103 753001792 712301564 761085204 481478911 659281692 503106373 48687612 160941642 380703931 194470335 58869177 881424212 387372312 544125388 66972672 927420164 637221172 658226408 860535947 170145062 870760191 145775045 918217812 465814165 188653013 300884447 828828216 398063720 632861743 479070101 392728794 153142280 812513138 412393614 123966643 761923465 878379378 546970967 27421835 807342239 175957169 671166996 639178192 158573590 959635490 322178452 949205025 373662729 503858869 57974016 113818419 484226565 17222456 156219708 910726591 913887021 257372642 992123911 660190313 793058960 43957732 321650442 164427447 434269602 394308432 477244876 375032211 24966584 272027102 528100237 197164493 125473157 377570363 832722773 834586106 154559655 13392924 143043967 764109879 789095835 516893415 282701607 621635127 922966156 288265148 137558071 919881240 301695875 367522762 49430849 346842 19881388 510430919 781433875 235887559 569974760 507163537 200775880 216744897 517113389 573786418 972848949 31527611 31323558 667074536 903146806 659251334 200559615 964745360 595362260 23683745 493964570 411635322 75394646 785347401 230941933 911933169 829455048 721154960 573295189 81194731 751511517 677589387 373625772 16707648 15966058 154020783 534116863 476968925 408102744 555904720 497345347 25621412 288574545 834389005 925230128 379265016 857842983 313940224 758333673 877274354 438102722 374808552 261073490 365148759 47669335 127884811 953204562 717736613 354898990 636659542 385678463 97064971 239970634 466553465 877689231 436869514 636053046 985894738 547589758 366650114 568242507 271368719 667334304 269726284 823961902 555487742 820792770 213812730 73450246 436269081 594879259 88744144 640255281 433886536 559832576 171984624 909793517 527144199 36638328 457438835 18247952 270745620 659034308 356427972 882672000 565400796 178702925 397377054 724272125 33782485 753839477 624268111 643828840 770431541 683816954 171167512 653020727 543195008 732914847 101512631 525716755 167860923 99916536 440423209 540683001 509335924 593323366 75175916 808272270 250612050 493944581 747468911 781343935 208027225 63493395 192848936 237526050 553343386 812562915 296172818 208738010 733372692 748904245 1866101 398882100 824163289 926143997 435811169 955747307 613710601 873601070 509029421 683614258 543842186 124143096 406902679 859798659 321407753 963036337 923863462 800881176 95640574 444324031 172473084 501863444 891569806 452688826 586632785 753838787 146879214 109473024 822173024 584391016 272356037 595174794 430231536 506774486 380382331 115027139 287780484 132934313 104093072 631354864 29983501 763785674 772157126 704615017 976573065 462659216 474392716 968241488 500394139 922410608 699653420 259588789 530712450 446694691 800012822 554639364 975905346 605193200 320734270 769684995 640592697 26765007 126517793 796363028 17414704 573534770 707814170 770632539 310549488 534366145 999532674 95737916 741778801 939369861 927228690 485721759 226603780 979494638 886560789 237959215 659470538 759500488 168289851 634457929 532305135 219153911 53862946 300109084 655849314 751680681 918450253 826879053 996130718 382081185 392937579 533671496 231254915 797259313 954674554 503063198 13105720 250831681 237625335 386993248 508435058 337573481 372959776 915208396 767576577 879512807 594074859 107196144 632488234 668962926 369247910 7178461 694341725 544520368 841522347 857361666 609470212 332389237 250177710 899227340 573116291 567489717 529944821 786708836 98073110 739936858 457246490 76322129 666556083 257013478 620308820 106722696 513029418 688507086 197857788 660738757 306086763 737098871 539609033 31732992 749441839 915989968 11075786 290618032 713151964 837344116 47465374 595921919 454656582 997288883 823618863 303839947 32854645 866849580 69154109 461232163 706531802 372318730 421934643 482067100 30420527 530463029 252271534 235277716 29311859 98353666 345394237 759482654 728524944 787275010 644902586 913650858 6746944 155261219 543635936 977463309 68289273 337722040 922985926 950206823 358955482 977756007 633483925 619104198 251579460 570615967 897435189 184525468 729856291 329961715 583262319 97181139 462995662 269559529 608441775 856551048 430625654 116990766 152064253 259500098 827261310 423328509 322048523 964880555 871359030 71727368 409174169 106919853 16724978 755887489 578927453 512788712 694264173 616125336 247343892 945566924 138528807 24591119 422548100 563480972 453343439 458549165 231907668 967464261 170583005 786739715 686718064 894641125 822464092 248780237 606821524 449990521 418497362 597395942 583950857 539397717 268060801 898414157 573141875 981566354 569420397 312215529 488881978 233929612 444910635 97613581 518157059 889893268 397321459 483880156 822053429 536585727 532447008 644205509 247626619 3214459 479486153 991217203 992735429 774534415 730679544 590640754 150908117 677247673 47877019 356124485 105014739 392205651 237062618 488095033 776672745 125302529 887241045 271295131 772451066 192320103 138978855 692071368 182194010 80252309 546967164 438589603 874636846 884145808 523334384 487252265 281760410 523901856 404569000 424223972 881513140 837729018 295396512 35946592 642460616 80278050 575504067 591480447 369150924 298316642 720509738 980749569 13221844 585098512 557491547 850509302 238644782 685142988 380649074 2857321 206481492 296250738 959918082 886347435 857213696 129006415 877562151 386886148 633310939 603265 568098879 809131746 881113688 82943717 818781845 748352195 992819613 776280798 123211026 426287391 73558720 323625240 321184614 300282163 350415339 967950173 24851872 171577574 96900436 34126262 412047417 102888727 10620515 726751111 132084029 807420498 578010906 100474405 944751438 432590855 290049906 746189363 123694105 263781859 554748609 262555254 693236628 807257985 142966167 72131789 647485570 611468258 382649553 176176302 265397705 536725939 860602468 530663309 321696321 238583591 856859358 502851248 542281681 603203081 447448585 759901364 863037722 253679625 303867679 258390746 815552280 438201210 493943770 49355368 674216405 783512275 839750658 15304406 620958079 215243415 424607653 704506524 53117909 257452909 738550225 495752860 17826184 45414144 892628532 435074549 534805917 971855192 831502323 71249463 402622615 463340034 49808517 722167207 533027742 970714052 467812978 976235581 392758378 876076492 383368318 217532965 676534426 539510480 219065177 38205582 287982962 363145764 461228764 920377427 463410188 615989398 153632046 424499960 714094792 660541500 941421544 279727776 324493920 431788029 492291062 571149634 853798453 300434047 576228455 392238648 55621240 225572564 988035436 262230662 79692026 755767038 21180427 659755385 545253384 22015766 966690009 73559269 466370109 362453049 613469702 730143033 758559500 354041465 213835053 986920106 206872817 170867543 889483932 897129847 119330836 205712881 159522237 287885798 175887371 5672561 214385376 959546002 353153904 811055221 223316390 900542729 255913677 415679408 839616822 426338675 747096825 355114108 938809636 897922247 849531660 184022261 239027082 97341391 373151472 408948784 341973151 777223832 233935451 174583673 736212784 900021971 182316396 281059959 438196874 578533678 174728360 989103367 213845721 112151412 963790755 8846035 862414863 163915737 500397662 112985707 446456627 793843418 168294081 944953512 274463895 847970444 442110885 567187197 912004975 143367571 503280237 242089331 973702726 143240400 429569273 685755954 913557910 543656456 675584340 868770052 697141735 73278093 22054804 234712851 599473999 533969849 904699423 82043235 412810651 312028262 565595451 73948988 873865795 695017160 404799180 926918447 920309488 515362805 750778253 784654946 371254272 757347115 873509950 863498339 56458904 642885216 56906611 880183117 867150072 795289526 765137602 510541573 165197416 494014921 520289180 819818420 357970747 729661029 27293827 775434215 414404019 724044767 140108003 148735412 88175474 933304895 168819065 354274700 852090001 346548949 337883955 646628182 685847800 506701557 857423862 775123039 865381235 814084241 387588946 158837405 316906285 889115967 223254955 879444733 701573418 106464505 652746215 201304429 134653619 853383287 44451109 215318830 354788651 422359085 647839947 860575661 204418955 469160988 671075200 972236741 895550751 570464170 369021961 219770925 592219118 516672161 433338422 301909226 113125230 204579406 425259594 996960235 22040238 398215537 422082938 407431371 863008131 770184391 198084819 553976035 76091025 23027002 127967650 654907376 186451818 120421252 293737258 141575954 244122592 627027630 581875926 728657436 402928785 236511941 547277010 657072700 164665935 986627351 801220360 531373749 352378950 936145362 639890747 316178591 593946791 924627651 727119341 724849 67199736 742821289 647436971 111197914 791666705 660313264 301463074 728970682 605365418 513212703 372246421 265487672 401031526 57691705 831465189 826433674 498691786 380779635 274882342 482405966 262180288 237394474 784654403 205002726 814478011 111692169 23466451 278314623 804434579 110025794 245513080 880894035 959363474 94618690 462535297 5180987 942051336 17508982 364924765 998784075 638407423 881661560 175697531 822290485 405282353 426618306 15901753 11710620 523555914 308662870 439656905 345125440 743786475 32450249 660611633 8751881 850197105 340386452 645702109 459128722 908496212 763886801 850773963 617111628 979482782 740526805 858182933 295122553 547570647 839580283 431746035 361173793 710259670 807125615 943363679 239465336 988118472 548454705 422672014 759876491 603578244 325371552 433406789 988969439 340828670 915043590 506381562 78863653 737039975 122693801 607141900 59795342 9877710 813790451 303533950 913936126 806773730 363657438 126150745 281606190 430598668 746852265 330461294 517341267 819631520 959823543 196033797 648257335 99892163 659549557 278896289 592487429 699685616 447144979 273857982 709327013 713035496 692593665 924720481 790391790 918886609 514775012 281935165 180211736 615721440 893604367 256514424 686963936 396519999 944910677 654951469 59465332 397639733 806594677 750354503 19546300 854861184 600885891 20704710 475451275 20110811 585020215 516616611 942756019 107680782 266592581 87354662 736835540 390303397 225975010 759243218 925047252 871790944 43194397 79730903 820920235 273506797 456010394 246324376 156400388 312559538 341378362 256211374 93045663 847556623 384590898 98085007 76902026 149449030 96585460 232815692 209856981 528599046 518702519 887969395 959976683 105286904 645211559 555836138 197482603 411644385 699999870 34201499 173450106 753191645 247223304 369082890 238137935 839433507 48858932 848373818 467101919 335599199 664280778 790462018 624784043 403939755 764144240 140225824 457347313 261425346 186619194 305931339 234412424 83477722 306938859 326963554 342205890 823637575 778601745 174481536 809170032 514445387 230851463 873832792 289063336 284143393 760541294 455905270 649283634 504046577 837786175 850094893 318991686 889119584 785375214 769265124 935432581 929917925 750890050 889383540 333259678 467756698 907393726 628646283 134285814 952873034 894832416 775584061 484234995 479787880 182482695 919268294 30670295 633648399 177777515 779607407 181976969 30685187 944555859 884079569 771625781 68747410 800794643 156698856 404513967 921044136 896991660 534618755 353525472 200882562 213466587 897473149 980733887 124741349 126957707 635239579 844353533 393671918 513505434 63250208 900885235 654956032 427848994 93101022 885288824 791899217 743859033 378690471 818913619 372968451 258128810 723354575 73225949 292995680 587532212 801319254 263096331 132227971 731691270 521690593 761089364 141028605 506981909 838660523 121610782 412187486 586257205 703838358 15066472 445086132 778224991 639494310 48801272 120438214 282574780 897305667 849976173 948112314 756870751 844926740 876962491 986772320 248881675 476666227 925577027 116262982 891479191 906001529 887322011 222943591 453589320 153081801 674153070 291507525 908686528 721896333 410491392 882620975 315131533 124916280 790843464 952981828 496854622 545284128 63182916 944409816 442203522 864330223 451813791 247683682 618865618 194682562 310567747 957205697 6595777 601093132 616035991 578295306 645187921 745478751 503637315 359075108 385018504 74908950 984505459 564216683 927867942 803211759 516863837 5819837 5526476 183702675 402965233 41897553 416816989 686388230 236417315 892761602 690557463 635225228 971581411 236981954 490033092 341197375 107630936 952381740 14564026 686500524 507993293 81540077 560105080 891205816 334264670 173652425 811622943 925113353 537554758 224906459 686730128 507986798 219696452 12965386 904711584 854215457 312469225 644665222 607526618 346632256 448441387 618056919 464033389 36453317 64445472 644748519 15960568 843716960 699336975 977343862 541100686 629336265 568736186 164564359 765781410 82275744 300165096 631838698 61039717 2262032 622099255 145302355 527118277 243618795 439817462 734825710 539138196 669873988 657690489 204126046 691001120 830938778 670464807 255753598 508136071 893179306 691663998 888041354 263218147 638226262 425358641 160114249 88028268 225102929 883159089 643770286 643132742 360382918 195754022 711046206 263114074 132319183 562657443 554845589 379109893 555999138 832412475 4868008 438899310 344214599 570261808 993667068 360078116 864111536 540924570 367089867 501614978 604195835 677660343 914524473 761600517 958262572 552213935 211002651 757535166 341668772 790951283 117781567 20466850 68132860 241628556 700868318 931366391 143563869 48524251 306481103 569490022 373807816 256916738 752897278 196038583 579626726 574822956 464133576 248843286 712628747 524019734 661832077 602296399 416805564 340383331 500148950 471168302 199282636 240473911 756853803 500531404 290885631 662950195 121250257 223196414 807019179 426481976 354862483 13122862 468984306 335341519 541458035 929406384 493231087 96048960 32504071 580052306 522275850 466271905 852252015 307036166 59635140 342909500 575619361 957933118 884090622 367693166 45720632 493332484 981922634 735263790 983616308 249342465 478971497 666715606 370348333 525335509 8772301 917857131 489451943 68464072 354787223 984322120 671011124 508114172 927476260 747069603 838116316 738842999 679573738 457312031 654033961 823322121 324214968 559545611 184081472 213833522 860505813 697290796 535296391 643132444 703997822 702437730 55313093 929296212 383500119 416727345 995235268 21124443 972891317 60000894 731748584 394690180 627530810 409117253 644736202 112881358 690721841 58132643 293214500 846922272 244391931 542134320 568372984 899759854 131008455 146191152 26058791 434622650 684926666 880048583 62892557 398836141 293942371 464856895 877075452 671466052 788485200 303297404 471656405 37792520 792752118 902083678 693525520 211968044 10203323 668032934 94347066 867849206 759797387 251694288 241568516 379699584 83780400 418144944 142242083 993347501 833587719 337158319 873383720 961244111 523380503 269515584 810013903 340614875 82392490 903575632 331879400 18348656 900496181 568157143 789678958 552984566 426317763 25374386 723650751 831697042 720664212 9758078 532199344 453943259 164773528 30120330 305446886 645142817 297463598 902593628 499417814 311126682 126222502 771476070 385103124 570058944 378119920 468919754 73388240 449284950 63072110 607323312 504119123 572240963 468396013 1822220 941136377 192997147 700783032 390538958 939467184 331898129 996629091 627775939 773286175 608132941 233738606 835737390 75646862 73770701 170826295 935229229 980846931 650821921 807862504 226924442 830567441 298726304 606360084 843008129 725549617 452948985 2188256 740013618 841152208 637870551 358019244 983020481 135344031 252982333 594842648 365154998 269294514 109668709 356153331 943468016 521631754 951775524 569710758 666939401 315048000 242017219 61172934 798103040 9535279 314456067 12134072 29327470 642879382 154410839 446626096 20518206 529723401 409808428 211992617 199111223 594170657 27312445 228389224 211754088 434915264 155329911 292884438 240951190 476809383 447780361 356532358 217983236 412684710 870213942 509720286 4847015 439837057 108119613 532023137 714297272 618317960 303435564 896306733 875216025 235199349 10204685 234405649 395404216 479868630 201813842 610503519 214284582 373080661 464190731 169973562 895364117 565860861 335187712 203531120 633716013 806244382 187942299 813198790 91628893 276382067 799651219 344913640 863083174 969524519 794826600 634627567 681473259 220187155 348889009 429263624 312486534 474805220 533633151 115518143 932061757 908026181 967216216 557573677 254572270 345776260 29993968 962622965 558219540 379717216 10130852 358851617 907381831 257402362 641194311 753708284 45608922 988026050 407195983 970526296 36298617 797871308 111651328 75296780 879954835 115928534 796628828 433495525 135127173 995675582 483961477 10352548 532773863 381835860 766073186 929122210 447773742 113987321 304861557 913802199 1932797 452409100 650678364 545452830 690153629 593842051 145613316 426351805 218997004 824583841 944355758 364122756 605707855 510978056 806714421 697164388 511050994 377206910 618837430 402355701 471881055 522990204 425757758 811129781 677147288 862077756 427225697 875223813 807718976 536348837 303020781 285019289 388817900 811383376 119562335 929144565 281632982 820540308 231910306 576664574 896641450 723368810 511480591 975554360 268613031 211775718 663366112 363893204 585791993 341612385 158673177 879686647 734113891 531509488 873300532 330006473 545218378 77111456 418661520 219352052 155033514 582010593 828680541 958921262 669748906 605750980 475271253 316743322 742787491 534106278 50823605 395373911 926114112 680457352 792319599 286620490 119446038 248395315 59629077 875121242 256411196 563008556 17354928 91806867 880137858 962118511 170181688 922228105 667555939 522531037 511581951 696347155 309496258 97669834 100410716 488199139 748786216 490843997 758771343 169235736 198265031 875001657 477978190 783212357 348138322 31004451 391790046 71011324 846732286 666060938 887755750 921312181 884254861 601405595 241543118 43010945 865167495 831020378 790841324 866112129 795373339 924552604 682894639 689640631 579585505 131092931 765175478 595536148 360619642 989214761 78171624 490544878 515646043 596591278 245431243 590566337 430184463 961041296 480493830 526011491 751260745 848365764 512774590 952051200 968805326 787903471 544202588 453721255 245652166 758259641 562265811 652560001 453092509 638992682 943501041 586073456 411377399 274229767 825139903 914787087 426056955 994057463 792985377 983517656 964902332 59759576 605823869 560628236 445505683 474705192 641022106 107186600 928884302 201915616 912257010 292835505 527967284 312614369 556463552 342233391 990886291 962640659 5809544 468740794 440696285 194336925 869035897 319281744 458040117 537597625 46471990 885306224 205160827 613943680 765686333 783114955 248745972 456698315 365810156 596905490 351227474 861852775 415556483 853229694 965952238 424631045 936514029 193539862 173636895 998086822 791619881 872676961 636101397 946251655 558768222 108651845 347560723 725500026 204273434 991731025 344587257 242833584 718943443 532608585 668256254 703730919 123656837 382121583 879834225 638982073 205884839 723750041 429137901 661965964 667903062 421047599 443132839 595248898 414992414 640500269 1683538 499749418 674302292 367749144 735628031 597868717 683435623 1408265 846710338 837065359 707612900 484634987 356645787 97479205 494114099 327901945 641254582 209083302 97669695 853901837 611571574 46606818 15822673 127082372 508912455 463953009 667627959 220733874 115362862 512312762 352274974 918960645 288329448 44885496 964383626 435844457 683360121 589904774 245739208 60150207 29466067 898313019 138338410 821465358 325523826 169161259 196028806 404550665 250592018 812077160 869552069 835414961 525270965 464497343 762437609 930612258 954791481 655544345 842670461 995278027 893321780 527217311 835436313 601251967 817400328 209285410 939625795 11956934 763773926 564102028 645297301 60863924 731463176 400987692 383901760 930016835 115295955 481236680 566716054 335167491 876820992 161025001 672296881 188102355 579571385 483411480 662620836 935030894 718155057 185218830 396594690 964910056 277199269 502616274 661745366 947780990 818196275 238553497 989097263 720499170 693427314 763097425 37767066 229321855 961036949 598248272 82637923 998108068 630605886 82123474 496293068 717758878 405017663 546620451 191023017 778618056 138952553 297088368 182887271 12019946 188184763 63146960 404529429 844704456 593543277 498921171 329204574 976424181 609855127 692962561 186956154 617973321 556807122 528513897 513275 483903568 984049893 233707060 375230896 255614319 23483696 383345678 358204938 596471689 354607054 578335754 755994858 970334393 606684769 689685344 792664798 103593246 56573466 342484415 560416625 305593711 957377811 404826775 534016876 992683159 280169952 114864009 507580063 426318505 238958764 231190844 356480078 73995368 330953657 532729982 663034926 422388957 163796631 517342501 910444000 405276743 963004434 674951693 634012906 3804230 683799426 729076018 865787308 686072373 299609969 152035647 356775781 46777715 39474709 255616536 92152180 244590643 977836180 637913417 280689789 114227146 129318343 484176773 845838022 717571716 888185628 404802073 272605030 340748651 699201784 461957029 628398410 961338853 187054452 450128815 44632842 212038975 858607557 96014455 678939119 109798858 371817466 90786634 141083563 80685350 354629847 461495223 559535014 236131713 598844866 352374037 289143363 613121330 837852165 195388183 619761384 179944090 672405674 267893939 149873268 553513319 855845302 586433433 428851084 106046450 510861228 240224056 162236101 574729292 145958230 684894907 126534928 884786614 491062947 290697572 383436276 859424830 125657329 856077071 257653337 344971290 349184237 660303643 950903758 246264748 233643682 353893265 133828382 511020420 67849379 135059681 630686063 268864125 151555759 806298466 347140591 792609271 628875667 982094614 57989935 931764268 207105989 164331676 866488128 9596520 117588726 780066714 140993144 447949291 59347932 456602901 501878346 46632999 555818608 303556286 694003919 247790663 672690446 425643521 136663716 12946217 202640212 630795320 820646688 93621912 28870514 504887435 800594131 157071625 885960891 478874373 199640106 112189338 391578532 921902804 296631663 249761520 509142871 146706115 410520206 283156803 589477971 305848462 725120287 531618134 528057533 981811604 253514436 395815005 460152902 827728113 275954893 742265047 418029803 474821314 781233773 241322964 802175732 922630661 12695654 349146422 9621853 89271427 355326182 179503556 378548621 845154438 17629947 474873056 425330678 572879032 689153340 342706388 192981069 989424080 992183496 867550881 280675253 782311462 692388013 844919317 71654884 74662105 298721385 759161729 362937273 211582300 416355169 507287540 96231082 547286729 248327901 639042803 854478503 157181470 48842568 334851505 690019459 665673666 63998229 429802637 473740795 754507339 1915094 816252373 366380994 756175288 814832540 306230617 57182633 897077002 258213135 11029347 324135469 959821531 344483742 915991596 219402466 293093869 851297508 967849629 972262061 140193293 618428116 206215774 766276957 888014966 915896221 858931604 147275820 767633318 663748001 760909489 103006984 881199832 487913430 527186794 701338423 883452429 492525869 633353826 971510771 512187167 16470216 284398113 285775468 377336423 84166805 702161814 782985084 15044844 171263313 982555201 712920618 235391431 554154715 707738072 692586636 384413061 86804557 252120775 425683655 356819822 267738499 346345364 518144993 48208199 954721028 467547694 477314969 195547049 429673680 494759408 816634723 426499219 993107141 683551764 926367715 137090702 598356969 152681988 770937794 691903960 557382479 177336709 534923628 883801054 830462370 479883283 13322151 382425217 165075556 295582111 50358188 257080216 492970525 125868614 402748489 48216372 784275978 125673552 924731514 821738316 629968482 819663623 387499811 977031755 304712629 756380596 923491995 50241172 705421914 135048977 356261719 188184643 985427929 209946213 462009271 715424466 858422517 228681685 416168887 58759237 224981614 7050496 124189999 683907123 820227690 284334213 778267819 942906985 13815951 988333162 756558524 959483182 786064273 378976391 675151544 936247515 374663141 864663368 325406482 418531547 714602516 614594484 325890935 666996952 779337697 311551227 858420970 630076561 402671176 736614403 56330898 677844016 126809446 703368243 170217062 496541524 548186699 888220611 313273169 187648575 457346097 510687398 72676548 304242120 166783149 524730891 469783892 167514142 637402067 725703103 602859219 214808845 390236128 535175358 735401617 562383586 67561816 65477688 194124028 887621698 618056827 552935914 997435680 174269771 229825017 230588118 701996282 937676830 923180832 712444346 715117598 414695278 599598228 820121748 621327285 158928824 675548511 891078673 720480877 678114889 519641780 592424127 473299858 521692829 414536741 972281037 60980045 253451489 831666443 845854555 493916054 956706696 19506995 921552831 483767985 792725760 780312358 409900587 259320281 25977118 253359546 571249730 949305155 858163857 678013024 376429588 576482789 58066363 382294103 483049629 956461470 838928602 355402577 787903898 957074664 596675579 888244247 433385379 699493904 214532151 573921219 982806139 28160723 535029801 891170213 343998545 697092519 234469102 361228548 413512773 344054748 223706301 740176054 925005148 89662032 404219725 106943822 604575967 72405303 906291369 3865 946271873 985822233 77378613 207726026 59622428 529152963 207035759 462227077 521264138 726763127 557237775 76029971 772929276 806308700 283371175 831139042 16810970 743497540 981071115 661527909 445213945 5947458 976522807 288174335 252887919 31059485 983672584 559153948 170856735 479456513 677221383 44103079 259888175 654017883 985520210 363820212 530689337 918944865 266080013 721897107 219597028 405938879 857498806 521146345 402082870 227140643 689548103 530011568 490842888 213112513 665019498 121333595 19054282 854577614 586123955 225400616 419382405 408046305 484559144 233077850 397517247 216908096 383532090 612865533 203490788 809489093 840218495 411067528 33722479 969062484 485544878 959839519 615954600 730205058 991032454 37812564 607540548 354510691 174121534 438997384 913146618 864902301 674996474 938730190 579810570 561801485 947569791 680916111 663453222 269151610 421279733 582328325 984687402 6785682 776568468 888090570 624803411 943261414 177508184 60447609 905528682 265321256 525436770 65489860 872829180 482923395 990178680 130767026 356835502 756582117 467872124 93136400 494568095 394338581 294808329 834102201 469452099 246189705 740444313 661708227 935737036 858001894 550431933 332421090 280672843 674186847 125248508 849281269 894081741 985928999 41999832 7650316 582891335 552183416 597762672 429398062 76751799 774677261 267948471 801850384 892569603 808186266 994199514 281340946 128425118 436178228 180396677 178340152 545589010 158270116 640039711 323464267 255251000 718479482 451826329 54635101 408359382 947656730 710595274 168828430 674542791 489989458 185551877 585629421 668585697 370846128 827749135 900669727 407950099 480774018 701050319 294811430 839270362 770056804 319361223 75956043 534620436 342420477 750580851 29754470 846313203 440181718 427694759 360756065 238187066 553469712 673729016 646102023 423435555 298518403 336767803 256050378 872230871 337165209 216470068 504269842 389261020 824472164 821859240 586928351 729883818 640735626 737014106 611883095 184246660 621001616 662210245 554732090 809948976 681101012 670499540 538897124 265129161 824800368 937797226 10696154 677420281 280826473 965418534 112059700 459501015 603268225 943727937 635228602 657054649 773671333 207390199 637174265 724573282 794716929 805140082 280975444 863132946 639244854 434685952 835980856 409236346 388083556 112549111 275830186 387918158 462970609 511516707 311777496 524249255 492514313 557112484 693802965 607317034 728902175 794336893 70689768 168250375 771851374 567267526 10808610 939564950 497839285 751729406 261249882 801315606 688871931 270509412 223906708 82308383 954556812 204460467 243602691 898746420 652677323 810028073 885807419 529567492 779295135 650795454 340645470 950952271 154040211 775126621 485015075 162757134 592153462 469892153 430182832 390671309 56937121 771891886 194538637 739656317 89351833 245612643 580073325 806021662 933486768 317002163 42445429 769419646 500541983 379961219 170308871 254582182 958199527 505984883 934650326 588965800 760172583 612686822 685623352 208097674 712482102 96349295 332503958 426424839 660437734 782608014 305289504 722392903 965283029 318066029 145086790 753727257 541269686 510401323 915451776 576450477 789811044 900132388 260645316 290898214 491980939 791836079 685354073 815814548 484098982 756234603 965408228 198889439 489660287 668647913 500563831 138871994 65509659 127474179 528274994 369122318 730893909 62036316 592320738 379577875 197761784 696362207 953848048 178542195 856623332 430106350 700418928 860703461 203379951 324652760 636040732 847994523 192877577 771646226 52261594 988915748 176560199 947493925 944125215 583763351 570560436 611597624 509404545 628859801 229658728 735113757 200630990 53189809 696119857 621127483 957778330 440103769 984676250 984105701 321138111 799705439 745880884 781575062 991620824 163157281 881232712 226136711 989789325 62616204 700604031 341302389 348233074 830134022 517269864 569255204 26738739 837995598 148988037 845611309 742536747 355276799 652397767 673835743 591210043 224641053 316962747 415298856 976064385 327130237 649463849 28787517 540987887 397040585 145264678 947777873 948392634 730393646 543996433 342207473 825678119 6966384 380298263 544582785 895787773 412939725 236584446 422018267 793864171 306974253 780046283 735351376 790015454 975058886 203306687 598846210 44405618 943955798 837490483 221478427 89584124 420717521 29532893 728008786 909278049 472728640 318762643 854593263 640486195 621016681 986028921 880906113 827120273 194999512 317548269 228904979 965600657 23096776 803932392 229802258 978017814 738236852 454045320 679583240 405919224 532020247 91080548 253979544 777540610 819259965 697119174 826974670 958175454 728706440 29376902 259889551 499332353 794759645 546654114 342971700 390713875 444376325 323657220 970150261 871913990 560876435 719668118 903012754 60316700 970999626 447520205 390175864 722909755 812702201 46683240 546586284 373240220 678592250 927934906 283266740 725708656 419650707 204281411 970016329 783389075 137829336 889337805 429902319 600665358 62784053 81360324 635064085 946554957 768300915 141091702 873516969 741422208 731320567 924377904 178320629 362008451 735872905 920617507 349968350 828340560 714710184 770357262 266808069 865022715 195002102 394191505 836287046 551736661 498819873 958146578 426230851 81525692 576669070 719854634 242514854 530025724 948407777 559167966 318113601 496388078 632656894 880787437 383235048 624306570 706963933 405418040 660658926 378849307 656562232 252953885 653292193 682555368 803956109 927964197 917845156 981170600 734909365 841163945 921330662 754268598 344636832 428846772 153260436 538998480 276501294 900625473 134913513 836643678 207150507 787342796 656943008 828956209 845520857 547007345 441464634 437032190 868010070 825255357 373855542 609254807 733694434 236296787 454773303 578697272 439486844 512016187 826878436 196289185 825883508 285092336 894518577 380440504 513201147 776488810 220686034 791497569 633112779 615933628 752932551 210111907 851664009 416058218 22939452 601408200 921801482 223387169 814912204 300357652 378393332 800389055 977388783 531031249 797837637 640347334 575451511 932348655 530286497 632038205 220456939 425113362 188163613 33232934 83427622 533061169 828406245 785578652 996882617 45295373 52560150 860748720 788172648 224501175 628162150 712722782 753079062 329186060 719427676 237531945 530693376 840683998 409200767 900918061 520071006 75927971 933724830 143893360 630710765 391841462 427247267 14554742 832936029 803550271 559388625 178388215 801375354 260060796 891150618 801203925 532154529 109471720 688800924 218557721 610458948 776561830 497702302 220537351 575794745 527163964 816343035 595521790 999863785 206377909 444478705 657604729 652145604 151519539 386024984 528369826 752443660 518522082 12865991 741407552 389656025 840811797 539097422 272148025 879244343 991807342 463074376 979122397 970515888 275479623 401916695 231711510 578419859 263815159 6277304 891351356 482422051 253150556 524844427 794257729 43149192 42698856 159181271 491072651 907014280 630901129 881460818 760235790 208019215 90380732 178841616 354641230 391505360 220575547 629567877 311554084 910645558 898071534 343772263 354825571 223202369 488650193 700975652 979021605 908114703 821621135 749889863 121870453 227833260 997439214 849656307 543792866 496814051 79317184 3512353 189140797 546837201 601004847 893041178 746853514 168947042 24015060 9892324 565975770 999692454 196472601 892572709 743800449 157579293 823010088 568390834 411360833 252128312 197707091 135305998 246695527 591924303 210492357 348578998 23224051 584154692 267135584 992278670 510743617 586389460 957118756 859260991 97339949 481347792 513919167 484372335 804495977 114288639 219279602 969298413 386658970 314434079 233701943 979953724 908153265 945137751 100351825 757064787 623818661 879522251 503421854 899461035 649292565 1831628 165594702 922125512 419249675 330744324 643545375 5263785 589002282 988795396 599058745 775238244 727847921 956665369 294906831 259289233 901419769 14961479 488430066 389129878 887000894 486719377 374456961 215370524 649555825 768991870 750395731 495401446 910794131 448581464 747621170 778267253 136988671 65892488 328452678 302292083 361942750 230466252 660033666 590888783 227217932 852754348 874265813 543890731 238371338 244708455 889043654 294940648 147056168 807113964 361860266 40334218 137227723 299656112 456342564 193439785 556444015 593540050 193230197 174711202 210905655 631466961 82862239 124655917 682330360 387551741 142271506 883202167 156237467 463085504 461412939 737324516 418105308 306948036 601266302 295610527 146969364 315107768 881078257 13557671 178941708 440122076 704146185 310868181 98251308 880650928 949070597 237066036 907225930 438231566 932767712 481824670 792636344 682819561 525921429 463869971 583516759 723927845 465945917 217421252 696160337 498766048 802400438 457512753 21992039 684163488 626976404 351350646 4873441 135489300 227075156 557526041 448108031 104623134 550986929 843922589 187276657 325686736 602300129 880772012 444039028 610497515 334759568 830071806 814392153 283942375 528689885 256485203 477692802 578400515 171474045 766198696 975558163 480380105 55336380 885429643 978488739 50039379 100202863 80067803 369093478 474151565 95247435 360421718 260459695 717868153 657143058 620461776 20554662 333944518 872916902 87547413 826737414 617222324 687126719 96197277 130939348 929452679 763751374 813086833 694579360 131212145 577750302 663365315 360177354 292361830 351916956 268323660 375897386 241326792 118394774 943498486 982276623 883947436 494272572 530993771 436807754 490806308 856602581 306429168 169577916 608079077 84078866 187904144 470100778 511718877 330582760 991053638 254538764 429993794 330675774 16406894 25587046 427509017 395668674 836749059 824092562 662962820 400755720 251316567 214041925 273851553 149638610 520520005 622445663 783691358 667927034 15804973 581238025 163994861 467773863 184009238 828840985 942619712 397852237 502266313 125412116 42322143 720770992 263025241 700828897 474773759 303998920 688432760 908977129 252293893 792380611 193659515 353023086 5413751 178522863 16883379 560969147 402193158 719828765 902799438 892788740 274186244 195348863 494181416 410397884 862337141 960234552 483074677 359689435 400923462 539580363 271067870 99506768 255515014 486477650 248813261 57188469 464209478 760584957 290357217 954886494 186611149 672611533 83278407 895840926 303131541 398454709 510226947 10343178 482784882 861543781 735111477 755383970 677288231 20379134 922340186 656956457 70820184 982151706 682709883 163417887 960140358 324366473 739381591 524157353 682260981 218106856 562791269 342482625 94877570 833997333 783793131 590714373 741759308 126328488 575173813 427620651 641321383 113896016 12587824 997145743 852277580 261999120 726211251 387654064 125051053 102476761 519683993 780664926 415834078 706802438 568910827 369568868 167510944 823214406 846606516 145072370 818248603 407923303 894079053 876517570 925416490 874104084 965543084 276842886 497314167 961247697 598875174 459789 328068060 647818057 148183257 21388053 384536293 437291630 932302029 226141594 948134976 234339017 650217137 861644834 647736985 461503038 258360673 481506509 760407219 949592008 108991124 733626115 693784464 860088496 421926393 213385237 859974822 183529170 87268553 495951304 980797128 144047004 692770972 826150150 113985537 770209286 55547340 14477607 543071827 706352433 785356961 842974058 443341713 990469463 329815066 555741978 478097049 741912284 714315900 458850492 744641347 394717283 79954128 361860123 550149659 597912051 820874942 242025411 946903320 930400708 412912181 746294072 672710319 816844759 149043147 782026217 972201049 723037231 711163446 156002041 937032568 234663213 87144716 522116452 351109050 134119345 908672106 55128506 35210448 745829920 873382596 812500542 920277617 503081977 765982747 204824187 445382010 538287188 597304044 571650931 292857901 477562041 457592569 134931913 335342241 263753733 189097413 494366323 267615630 13805706 986677885 1227701 143531243 223877507 824173673 733814239 325787310 517130816 577628717 486984252 716995946 629014954 215702893 247140572 396750950 983158674 225554888 319346858 875723279 165124287 659047252 807121008 434913840 267674958 482250971 681480562 232427710 864390045 824436394 427442195 318392023 524207765 20177444 924575695 299792869 580399356 217795456 24755867 233102456 478289436 579984689 102816693 521254550 3904437 901806898 202605197 888593482 505929306 513296904 575528427 207433560 449046424 204416137 224976498 737890414 598228401 648135526 940786488 589889919 710144006 751516285 527268631 976265926 386921454 756154878 754586645 261271346 439631390 904420910 536485298 442160483 563074394 88576633 937244969 831955256 502058614 39002580 669955129 164143879 637904370 445487426 487154177 339137486 667568873 532401996 612576383 384577687 300807013 563566578 16490093 205328662 221883153 194474561 207619485 29199759 606371684 756417383 412604106 584824183 420842034 217548926 109450808 623161286 715805098 933269690 561333768 510363914 134640389 622728506 906828283 934103862 771434341 296958479 189249360 522716500 550338811 91507429 644402181 620654302 652435878 539002800 934393253 469636819 826901731 687009066 876995158 223297387 812534985 459071457 988127918 392106126 622321865 654401171 157669838 944787478 485630225 807461600 759459910 812881048 204215272 660124090 175448457 272402330 24081220 624951996 649918343 689503705 918436826 711045174 782676602 601658767 963623798 138705600 882617909 455292460 369622925 793276839 800414940 834475445 923070038 804259808 345630276 604261143 10937830 26564397 179928381 793610616 67611749 179517546 885709763 774947036 715641093 80179947 284146282 871742588 869683606 991218899 353886633 459634877 138123455 719226670 583589272 379319074 597845429 63222065 123469535 152577058 872595045 72673120 953843008 873061917 43856748 20352605 658914716 963859964 938781302 588738157 562567754 408818605 310575055 375972099 517514152 318486933 448851325 400009649 433819454 374357468 819243494 33660480 523874606 278100081 638981427 167462636 766108645 334533577 977021529 827152628 503606532 575406802 368422803 91070861 265171642 561808130 830262711 875073962 740029607 875619311 301537755 640962092 162654471 226351865 259834300 76767746 576322813 632983282 516863901 422976005 280016321 136741401 318498737 392940859 993043197 651838176 505953510 183326759 686102877 56504896 472398893 194794989 619891891 596065725 915402057 406672848 478587395 255541176 190546420 90647825 739120077 566795670 924506286 373182537 1668897 109223259 73532510 885987958 499705161 240522354 452571215 877858702 673305494 75092220 238644074 375411911 182908359 806196614 265404941 626029100 144446211 423467805 746557364 630898871 446683181 551017986 926526398 743798282 231584251 359814315 342421200 58711037 89824697 499625238 546339975 246631319 780061998 37567162 631794763 52050295 833598969 94517051 5379419 138222696 86737324 516586542 407660862 957207317 537364380 926122585 545210690 714136230 830880449 737687683 170381368 648357646 704649359 889286662 326752575 717000213 40913404 435163133 203809459 330838098 354598468 996664304 81264046 995273092 498383208 468658430 64505440 37210530 803222604 510203221 480558849 263340404 842100048 96250498 21088770 188493438 932738206 530707364 15934312 515929399 352554415 725110930 685080227 116733255 953625545 402938509 948387469 920019903 387808936 86497993 251418112 845585655 370304576 536707515 833241399 650709078 570921147 866617615 454309049 729117564 897859401 400976325 475855328 604847309 782221017 362790047 7830863 22002096 668262227 504032106 364520742 366158781 216203239 397125449 18713514 611120901 27377061 883878054 652397099 533048313 563312792 884206031 746322208 828786180 491256086 314763423 750707223 839338952 507349492 106036890 90382226 129937523 90903418 963747 748026690 420637483 225689274 746587071 244119368 405479807 823964585 40083595 786982242 885648040 612318520 164439338 856369587 128828393 702183906 567467441 112920835 505532558 154929532 223727466 673800243 381599791 91060036 666273869 779669176 218549807 921776615 689978041 682592806 314839217 739166286 333735301 456799482 717637347 87410079 665979835 207452152 229348525 665250115 206474290 6071410 476599275 668537033 947239628 399837661 935863676 519953750 364521037 381974542 378296966 777989162 817629699 239711702 840758874 246523608 796214736 537508257 221487034 535173730 488866126 132905686 827873983 761278097 941206444 320385182 324973751 765780339 150529723 810797213 298162070 409567228 881923534 735387079 346669957 308438987 457812444 247465569 935230952 283937360 262565850 418382356 896081178 976600939 403501752 171954559 842342918 843879262 915105046 525833570 332321175 735794514 146619866 838125142 186198769 675729142 152303870 822373286 462609404 155062235 986377044 534573893 615261103 181317359 819798194 819500223 69672249 133140632 171106420 929410138 73654292 889169332 743804065 364088451 280722280 915941054 341590048 633666951 337262370 152956968 823843204 479289308 34112293 23528282 712040134 509238361 86240464 905181027 535628008 554959544 347826412 778482395 340106560 566502698 116389676 874216852 608564783 19679664 394231992 469165852 360015987 912611230 578203099 691376272 905269734 329180852 569518677 393579602 125076895 927011564 943275310 345510904 931744239 679381100 79779133 494113505 607433570 711100293 74201235 439090883 323262700 897321234 814786833 172385104 919909027 828985385 649105328 451979647 711456552 462932923 914043087 257651814 487447315 380420082 83015881 566867784 806790008 285859881 233898040 501370995 19906610 288777451 316362994 133027735 935682427 469425077 445398471 102767387 901260885 23601117 591704695 865773012 542309759 291584231 197426267 167629187 4268045 756509437 479408596 387380503 943080139 889826175 634003531 88573989 613134431 323625813 479093147 731787123 951490965 305130022 972085918 103049507 982384992 844933009 124693712 194821504 914005284 236510055 412897183 286757269 447983450 14622046 349798257 782174984 911259313 645903050 403224814 476104767 630439092 640477946 623575826 996520030 319395452 47725155 228935486 981059005 77785944 457258674 383937062 232821090 238616392 79583662 328511809 629326064 293091731 836379395 997808510 943244476 726322353 80612097 262340821 605432517 755801099 8327295 746688450 579715272 211796181 681349823 404802510 198304174 694890867 613950918 67529860 684873702 267728151 720353008 235051276 34299517 338867475 146806056 84296852 126550594 119709322 523096353 929568205 880008304 999538946 641039312 189060516 755433749 840908576 793054248 470070274 434035069 738509293 615747222 205958172 182211985 2077760 860481084 400413172 821956035 786571100 329570412 728451700 453598631 853795412 882826695 783577500 943073818 124317299 831804253 867700524 234701269 680147880 154972135 988059104 279688432 141425877 942091436 547379442 757165004 524223806 219009956 211302407 788219310 248997786 867567700 676960890 320665508 508260412 617878539 720282164 325146907 418020984 813420409 508761307 140314342 724934720 990898309 123813909 374921865 71501386 15556475 169438744 967111877 808425133 595522503 988236210 62603349 76246595 962683140 219403522 865478967 245458671 45736803 374062955 159852932 417750873 820581268 809359736 739603102 288959658 344333048 565689177 424241006 648298093 847026312 922477636 557135718 908525526 411819952 746490371 226222426 778219129 137975299 415182754 526895388 665790847 558607947 532903621 199563838 161285127 275514585 925942957 968439859 107688168 629200978 552934455 968466298 988138805 176729098 993575494 268128953 130761900 45763788 12315093 285815898 79342718 189402297 122868891 851581513 555040637 48810082 427353038 329012903 524759427 528346989 536857298 86169838 255153871 513541858 662311689 155116098 928999053 778438712 629545571 564882990 954071564 411008846 458909354 923027841 68760759 435638555 487500713 357602803 608176473 89318074 32175550 504207961 862692339 444089442 669631222 363068067 823267234 185400168 839166743 682561852 303466301 979242943 589060007 838723789 971747039 646165113 446783388 73129909 620995448 728407297 249539647 11253327 106219517 730228881 307551725 786196965 231240538 622063236 296484535 77453792 307485494 832815286 35564893 963465942 473170944 437151870 775713352 586961711 342773822 559563462 691063200 153229111 497877296 465646686 190405886 299144990 816246455 159246356 613939704 682319250 278579608 377328542 354357746 107579503 211939100 851095694 711055844 498143811 515085960 558278521 364647433 721795203 670155285 252384056 541804534 208765566 150956524 594514756 944065906 563549208 406720798 648732865 16590113 767972984 159631182 669862636 260410353 638483121 233255109 597925264 295235845 202332416 977654582 590352037 689555112 973538051 961688549 954581299 815873250 935750891 220351742 247161428 475310366 853741468 800173204 542144842 349450248 911849442 875253209 378746996 622486696 336814247 951411937 448926643 484486764 866643421 968963356 846527924 136150709 107292129 739488381 262205213 750123752 521154020 918314099 866037979 741197657 61674638 194476858 555295298 365337280 840426360 925668469 540374671 874647891 508213478 753283292 987880748 365527517 438585692 388885139 884200496 271969683 533041821 414809304 86227350 806308107 520639245 118231462 733724597 386157315 208889344 459364096 43278978 309950479 485584489 719578385 425830330 608970041 569524884 668598776 430549708 23160927 876453348 235483683 240043216 685114139 701960972 548614688 146136444 840988843 700667766 440764305 835867008 803668397 744333680 795017461 778584234 593326220 898148443 528195684 757988365 854822474 838868615 520370560 510308289 269402328 974699826 586615946 973531737 801063040 181525246 981975465 468166040 202095923 837167359 604632366 56381918 605392563 801832246 707267945 875824075 619865830 758874948 639650703 807659605 227437216 78945001 313020616 119818641 510252977 325440928 588986398 351570962 885708089 832002614 128433358 519827307 811474485 428871416 419415402 506519280 926869274 583706346 632167244 814380183 744187025 693015337 380753301 660522340 978990227 61358160 582959847 539709499 931522185 77459320 454879754 52203122 824220958 399090953 980751095 330097572 741599647 305580516 747709321 634575652 617113836 294887998 585326245 642659825 735290702 365688542 625883764 691567033 775962794 813371244 726649106 421799884 786481541 526586525 637389717 236250669 573766420 478993589 140923593 427410398 681176865 14093692 355499730 592038048 365790963 15273608 632401376 446120944 546938896 260564045 154632064 942179017 675445111 8121075 715570312 267165802 452352081 526261838 356695947 796233835 576132104 101124937 89071113 33345237 643105501 353587893 643012200 748789990 72471079 982021562 473652304 543191296 996003327 433545145 378629368 404972676 95194691 913960810 552010780 452861682 632548727 326147326 55074289 276379038 177359457 109321249 422035189 345648333 933228161 303933264 900148413 735048141 107104375 990034390 742874863 671503470 143305158 437918669 286011361 403942955 458761984 514676338 959150746 854489890 776009588 164240627 41251073 281999638 211950073 689611344 9688932 543459618 107095633 197521081 365280245 308193795 311040832 997096991 202751463 184519718 41318761 240209771 132051612 918895699 120703842 145978880 972177967 308078634 26924466 525162194 162079875 189793159 705280789 489480639 679396011 371469451 550636106 576442549 175298009 379052927 55619254 445600133 700288964 588026199 11019028 398156560 894858900 665110755 676021195 103824494 275154787 492570333 349428724 6276783 195126543 733632202 497344134 891965074 22955005 8312929 533786030 843360410 783821539 869087785 999171984 61611726 555961518 965522363 164592804 437616935 222593345 431452187 423805071 585407065 100770647 356049390 267703607 327555965 637830411 309826634 397750810 112794895 166071696 561652025 71951003 239223291 138806925 155551946 783771978 910995668 253726054 406365734 109503639 200960519 319336805 909959715 509425683 736602597 935655522 841479764 887636259 678619955 395654303 52755279 352926757 329791823 354396761 585207303 602921099 861602444 531277224 384429179 930119111 65980719 222522460 646727811 344464932 375552749 651970424 301531809 473535415 798328329 697541327 99051466 906655588 505007160 434545163 651986861 698971198 634556379 362661104 169850872 944498168 272514357 726884603 467155010 668647248 60411613 181872557 175436338 680741033 215519725 69942353 900803400 734571720 305046675 876266261 275867681 418193780 47498391 451806325 23018597 544642640 321369028 308318571 76170943 862028332 592683977 54853739 244548593 315071917 88981660 569739904 698819181 485095952 460190900 7097499 922105490 179337638 600090778 592174973 858518892 424624945 471214235 870597643 831456738 26882301 807658259 403045531 277708041 89134471 64031385 169947570 725022034 406083273 278925389 751028954 119642000 732899192 610448692 412412043 81608966 530762242 768028657 635360800 584100727 308578868 135753770 375324703 51550434 232433887 397104007 568857201 927751994 129386449 193409937 90855705 438598668 71747207 428194377 172221405 622392331 487743164 686294819 416473105 210953697 371038285 132759297 220314485 573815790 494284827 572678104 670933671 652964021 409886835 759957578 710850062 970194808 354800160 217560740 218191272 487687531 334529111 959298515 708182032 157523865 911862601 912021301 360147623 345969130 957984367 846073458 170309826 818274637 447895245 107394567 759480752 405255319 424102007 946126637 196682991 842529300 101790961 945777555 928135888 737430293 642175950 989708080 614707759 850282726 698825846 318074191 239420231 232326071 419369637 679556601 284818850 448379149 512814890 508056023 913508140 105606732 811043111 25318333 354610990 168336751 902665286 425881155 132092444 933791483 867357337 421752468 299236645 438127942 944984757 93042642 653836027 362848883 905153998 928816048 935909314 302901863 357583878 820007148 835038235 877260495 762633472 727563356 790196120 983507682 958019709 60638846 659434829 284900242 124391877 95439070 61945283 821065552 717601632 65539026 402018582 182165119 308008032 697126505 831879968 957849706 904254354 122881980 962197310 657584297 393463446 322438523 504630114 201675472 601719426 572701019 445061349 578057153 359281227 723976208 771025185 210596385 94070284 418825520 731844709 689919618 770200723 138043922 281377515 289189081 900000879 845908248 400581551 24537243 924478207 585816871 898285724 826181345 132307050 116485433 995254939 8304948 686309761 6622610 148173958 537073913 247319434 717326838 575472021 440367861 160406006 209920680 385592184 444969834 659219107 419668219 26292369 813178476 694957634 28117703 306361794 884758681 751859916 737075131 532475526 533738585 408225153 779278870 909590036 629133841 579355545 314577575 526198555 834506588 574452073 391921523 590730041 867350937 174717812 891398643 569223434 734542044 121748637 873059322 601930254 937497171 832235436 346202601 402348380 924532624 22132928 144559414 510768984 515166352 421941675 614328081 869213829 914748967 996288489 263273217 536681218 445287766 709480441 647859579 982474780 991448530 130105466 538575216 388565916 337844071 834345565 689852012 412678803 641441259 475975319 617709743 261482814 983242618 598299532 343918784 578600166 393804410 75061457 587464937 45522028 889969004 591241510 853192251 936575452 348569090 415820256 20508804 716458531 42763358 562257216 833433112 72144384 825726166 321178506 942464343 972633728 518962401 358871078 531572656 751054736 49514992 37067649 367006882 926234636 999046961 211521646 766575155 202276161 582015082 553149594 235664347 319539650 436389155 677425969 139646701 484479568 939325892 68572433 421659699 789127734 190479891 748393525 191882997 993603763 594488925 951807907 848849832 915434260 65327328 86929129 264492890 969600374 369480165 542631396 9334770 751690641 197763237 870927879 3980433 366020354 722278044 685165867 801341399 411858988 349866262 264195659 7498618 268865272 663653117 347238407 478761038 927702231 839185444 886141854 511651314 446748256 206393805 454309467 376441806 236159630 38191519 840074441 133091544 70434171 50373452 412887560 567394941 654866166 682970922 924487742 563125829 446645269 648996378 110895785 481030683 79820211 677726939 751343653 619754361 747531349 626432497 112588653 565765278 525229515 79040632 429379267 930614017 202033321 666092715 406880268 801530607 840356086 438867299 453440115 369141998 243269540 439390436 168283707 138350146 386773118 666207216 975139094 504884548 445240555 162514394 549645019 519626313 267431581 832126532 828090792 805727958 894666674 261143671 643753009 85599521 885833099 301032817 390940304 137084623 500001401 10472473 885402612 371904306 17095646 621573077 71090777 471182448 331194065 270158822 814359247 748251701 905921661 63597160 557267412 414438018 776065685 43256790 486936311 89933662 438588728 276629549 841715175 935033172 765961073 932890364 312329292 970846576 798012963 47772116 731960687 687400168 65568976 606555552 197431909 227675344 389375916 758029203 13674262 444923692 741613108 514641183 585364575 955191237 510143442 157927077 17768939 725009518 349672043 81306727 217873957 226149945 355246661 157066025 655398820 451822252 298259431 755862245 410575797 89479632 599846706 160624475 760849939 264795344 876713090 635137660 757992268 950990504 497451408 865924819 838091483 931033882 937640686 919096686 179020976 32496546 564902850 836245542 728583791 435743265 429867928 527147772 313844919 376916280 182705065 590722649 144509011 433230351 475022683 129538657 315853512 111481385 886823085 805859920 873973470 388498526 736206745 723574868 735453456 219839055 733288 962072314 947019568 909934555 717442401 184632995 2635657 756669492 956530141 991306233 447314216 414697019 422761732 889935302 875019867 535454174 104783537 759869829 293412706 817986195 369740538 592237273 202908657 967024935 197264017 233761571 98849245 108524084 624858560 461306773 694298097 631592811 954600161 413553837 475914736 288664740 408358130 158903406 589600767 864038427 101745276 5560582 402132956 385283751 47441833 788618205 807124094 244014140 219868113 400501593 694676800 93192156 197251605 495010367 744086243 319761435 810851003 560143643 932413946 145295052 566214465 404034686 731101921 629672340 629706854 365553422 665544181 918891969 512193318 608818322 178155474 401696424 733194326 480155040 39014230 3996081 121065962 695843017 810343508 811703968 292280410 19663708 113075715 684218468 358926812 443930507 159286032 59148056 961827927 953353107 484736051 373080252 27625022 561750936 264776459 560425310 113579287 623726920 654039081 254542279 302477225 646436131 453723678 945249649 875184708 12013290 53162322 417356542 654959442 368885700 983866507 379132409 881765286 180758776 225100752 883972540 180224951 794951476 328458792 146921257 562900735 536380829 920963497 169695099 631384613 817016717 496650013 579591572 710200841 480771110 155697365 648159388 818791656 580320954 657018350 573567504 348074505 51853419 73708219 785873599 364211937 295311861 542248465 362457926 685307633 545637136 849482229 623739090 821971257 40242924 226711277 273047688 8536242 753469239 40239893 475239064 546784424 513610959 703165090 94197464 401959020 225841700 580737298 480309490 885944549 216996292 683491179 9330286 159500448 313281652 395339912 892952934 953674668 193467036 41341197 757554368 745748692 296440172 429656671 940165807 751446345 285046512 644830610 857736902 599763384 873963832 939532893 813394134 524185521 334876504 823562440 618866503 949882661 187298865 236765065 170418398 530154543 472724398 724860359 619072548 791005487 539059395 487847960 624315627 437177427 196199836 382833126 929945685 719729017 657651632 912419778 605086730 104253553 338658669 813376477 4050999 235923746 974409076 930505126 894996330 752296240 895155462 51326867 393639964 40404359 699025515 616753615 955813462 731582113 14807731 446371722 905240635 734615757 740195578 136804546 936055209 685024052 986180731 103300356 819584815 949682996 157155936 689815820 856473101 818253740 423171766 554244383 514155787 521004573 128010734 921461947 882914620 102649962 103868225 538769574 830297445 814079764 854556966 481882428 521382887 64703183 335805708 7495348 751177241 840900238 131028928 469130308 800305951 75048664 164060740 377908987 622720816 425348250 182958885 256853865 321452356 116468418 841197594 274728727 262562079 199739696 983864487 542816347 545513515 85294643 3605570 739020887 701046131 791721947 653864287 445998386 251528202 329642928 878861535 88973336 688785035 978224088 549647977 349694814 811356962 477264330 416973876 409027812 445191282 204902779 595894061 18839217 223757098 955478723 908820634 850617887 849071754 953704589 713045897 148954688 589625007 821972302 536560082 714357907 306659977 848287344 128383178 961580034 944584130 596003925 530444837 828081351 659629721 370139686 820198095 658565431 390212756 919332075 823634860 698497957 940832929 974206409 333357837 256847066 591872254 419187460 967640764 43944774 767400984 858403992 939994518 500249073 1184501 912694465 603765388 93407919 689163547 821585228 169235624 40204877 55686907 436391762 871440026 156804286 533883230 466450137 989068148 512664566 849083949 28438846 710367554 796618152 433416214 492210178 456177878 254275134 814185897 16645247 178105104 603262125 263467378 296630816 703182806 360665542 77346184 894139462 94445408 904217113 634739194 441355750 796878114 258190253 12908534 184018721 66398359 675508766 521503775 541771381 658626820 366019207 625633924 172260335 331026431 879034319 842717443 694500602 238395807 571810189 210534315 850954163 599274529 386603084 302770419 762409448 580900531 655169069 221325533 369335711 612503052 817330184 181322876 532594526 847231517 186890141 952464373 677555494 949271319 945831789 844802143 325791762 868835412 806412326 937218143 464366253 744470306 948702949 3177524 492335724 31714032 783388251 124311209 285376829 13235050 354746473 41928916 442595081 273316379 215986135 185499748 114953878 184756016 869280481 450381952 663037702 936240995 849720623 888677262 37056775 69621538 554712429 213567932 221589654 90833649 986101869 236995438 554697492 611509207 521498925 257111539 75795230 697384483 783261847 903565571 736500759 186032882 763124387 239630820 553270500 455474346 451832843 825696979 465981700 308995496 631694754 222146902 148516521 682248055 304809290 996196973 904609782 743612875 976246110 763898600 784385068 687888481 306016028 874301146 727203385 372394934 35736789 483562364 586631954 147133122 899592786 773163945 614650506 241632739 106261495 801832354 63900457 830010167 294235082 627693128 982305652 238726298 11985177 441936576 831315014 234396919 451539150 4049605 567736500 922584728 564558561 79403673 395926673 705285905 837969272 613795945 825173414 652167830 9670510 15061637 452061461 405398311 133848529 842997417 496088019 513589758 981323254 573293459 971314248 314737700 469995881 686084022 140539705 653897506 443102801 576889324 50451623 394630779 368584276 130399240 526893277 426355758 791912402 275880185 829977884 36071165 644955280 76610645 127279754 250755855 427821504 199602009 825545432 879455243 287827199 65602237 702391048 862313464 158118267 49686876 774466260 259120500 523311821 428205635 353858760 503840388 592849313 355732139 260556776 593912428 370480672 412089984 473113426 696079519 467951714 395097026 775745467 249154337 269328666 578785942 599377226 937412014 17940989 758854602 258715240 159036719 658402130 300855853 573276976 191634262 503298120 738314653 809474998 545545534 468968232 765318395 673262795 163316260 462761843 788572587 808324183 638032236 381618455 514331344 283563227 275313669 768859347 424093687 294858340 785191202 274863524 379691829 28129893 155029160 580312475 985158182 701141885 270755403 301499068 300332661 960716678 244835875 137059966 294112329 975380888 611610201 219818991 33465126 933497215 404876133 47911048 166086402 966103708 393615827 795737168 619490054 386719239 403243865 368461163 537567134 276113526 785251817 841375217 840124466 708401129 559986704 372662449 395235827 119245046 106535494 38072857 319056375 389851194 722761536 257732880 980643169 393663587 915308832 396683900 109261384 657345403 954497112 901002622 367969182 538109361 184918358 825894181 318519925 234433248 981425736 649039318 948025331 338316386 207495866 768433649 6200765 224207402 217677262 27502720 754745883 337034663 331182523 266954561 490032175 940340717 435584423 975023357 969615063 671671391 287328866 941910818 328416614 196025290 991522403 398188019 994302751 386435096 915386970 152492857 617193957 757078030 588875784 94821613 910414258 833413893 11867514 381237657 214020844 166130971 244089643 45939428 359810066 56808552 366258607 524604684 699862051 975714213 197515211 496131626 720577013 242668583 199236326 722123758 180651899 563259202 607640384 488586011 967212084 150775329 618985680 309308646 365342729 19357546 118793586 257279472 904393155 541181506 278117968 90926043 81491564 347641051 888955763 799760819 334150938 187766016 846062382 787437049 490944849 120225408 294511961 749641053 147343545 665371175 143515606 183933938 319820637 41666633 575250669 918464236 226379144 839481740 353010874 813881425 192561107 450594415 482722327 903803276 986696135 718961027 924667854 934565772 628764800 943690497 34267558 813612205 32870870 33248695 649856635 55387188 380994508 702015926 511299778 451264779 109117239 490793235 534610709 394661272 592493963 79516991 484537245 537030250 825978817 953099615 132594832 986573455 868206884 148940099 148412668 309376218 953040364 566060651 268558058 882065196 711993688 191563824 345355731 82409574 596021158 798762710 142745532 993468824 73474847 680600229 808118849 918426109 432483899 532828316 640494576 404602748 228669344 338995477 533185052 382319243 254496058 351738315 602981689 555673691 787434150 100068754 981809327 107079322 461181078 281478053 847929945 56365486 90274532 921883557 722081546 38514340 715752191 373758682 230221918 518902678 839007146 980329978 204126078 822306297 807977955 176897588 734787820 334734048 281448450 935399598 870911504 806311048 812172897 730039240 417532029 671443749 498510113 994357372 576357110 677593513 607881880 762452554 47604227 232468755 455232233 359641811 852714584 801705347 480527571 507700444 923402491 424020214 877296646 971782930 976074125 25344291 474129117 453708802 571371849 964415553 608466593 457343944 456094350 546780984 780366945 188085476 218266121 946912180 333845037 384131806 799979329 329266032 958645257 349659760 553283835 468605449 392201544 640530821 517474883 227421965 181065149 997145848 562794929 619915436 731626428 275645053 82439601 636125858 239083593 323345803 807197509 700269563 742488335 649065625 991688710 988068706 136555477 577995134 89236526 317043503 718918819 36496682 352276887 308745171 460159993 654836682 731225554 984078855 514697383 113090870 994070924 150680453 667463294 18199350 204569482 370361150 328244351 18258859 430317815 417976870 14098209 360185803 905830527 314078769 985257564 644631714 895046630 516856761 415750435 850606873 362208650 263185537 880190214 258103123 570390263 375956375 151016565 431369945 953719894 179589039 332263785 36585799 82118546 93911095 502113121 314450533 120619557 263981215 784428261 984219621 856564620 755235063 543484207 411664074 692209996 482503635 749476284 520888101 143207378 762787204 580541621 11869377 930018832 721497003 819603028 788633754 80644830 31101362 578084107 152439219 440965501 908537049 528431839 252955040 913989895 514045090 739837854 61653937 529141899 285604772 215666438 914399246 150642864 969059694 18111839 495308350 992482489 413567204 718776082 216355807 620707359 36802304 905055717 211415998 345465900 771706019 977160615 778449875 520747507 91502088 16326436 79990837 524006242 964219032 742305611 177530902 426300528 678795295 500613949 119427983 602637363 14135228 152160325 423891143 596435020 990360277 901833463 5933648 636422630 860391636 996071293 110206557 316835206 595832129 954834943 191339685 971448093 464633089 514639494 814774437 823915253 724738611 39390579 120207416 755971088 748803476 724965565 403825083 344163692 968773026 1434981 467578164 501256632 546001090 461421900 673097731 464149375 807512372 532831448 786577536 347280774 952217424 573955177 534142824 87935602 801870744 148649789 309140505 407458208 512784228 336504446 424080224 113321054 774965257 752913164 226315099 759810963 988378903 617136847 222004498 716610143 423591309 491594238 766293796 68276002 148031631 49958725 484431145 816478420 524253110 921035922 515459548 357652228 906057587 4982779 506084051 497074524 602537358 864865901 303308596 666407872 141229509 445956447 549986257 223145267 533537884 823239272 884593336 674242870 341331781 973699258 653377767 305396718 73650208 530262702 412144257 122753438 641791894 177978271 389496125 898399090 503684398 24123713 363527079 335808071 255150436 751882364 501310146 863143445 30407848 532775979 689599010 755564147 165022293 546729552 634486577 258866339 63956459 384396543 959163621 126086653 377970579 221181302 683540153 520638048 223075302 951862593 861054203 565302698 787245035 984969643 452623157 121151437 89799939 38123763 293470387 956847842 160306220 576463910 404404114 262458436 512979837 325714056 894222645 951517197 499819464 565378217 818101047 326385978 253338789 103123446 168058568 564997951 662295941 172450027 736260484 748633567 825443940 280366901 226161460 779803938 717286884 24871436 763043540 271514721 567774045 347890416 63217327 749227518 893618953 502513908 824609564 61833237 790561235 815354895 83024355 694007461 462054563 367712562 786997400 526572670 83086193 582248807 481249693 494672073 417352564 987564797 250356267 890577399 30872929 283650943 328382741 332592429 652491664 230388895 780972017 147775930 675563275 929202301 130316255 962685706 394666841 824517896 772327445 908068712 965709692 307796552 41555997 606600070 939592023 626133346 231214474 716100551 202357598 744423052 31467190 535028577 263945194 297285944 883654816 154295976 618508362 117162034 151075506 559464316 114210025 707991354 895539635 990835536 262671237 161801371 993154945 904960859 814632413 363045472 813747784 229008496 448440298 196471723 576260693 699966492 79947796 568720074 714241756 355289879 729535055 735252681 623973609 455553038 967829876 511302898 849667842 985083451 96654974 436580840 671852981 98265091 416396259 772875404 840812412 629202419 449997046 811673134 992995872 658892649 895735292 280576824 989943961 548544640 603024061 557871459 521706348 612146062 905857150 620906341 751100039 609836557 524522823 195379328 898706051 395205088 487057281 915153857 137891273 541398330 670600020 285346079 752892980 154582677 850576804 416346076 307683028 347391127 808070000 279896650 498888711 237795659 681198619 112189856 749086374 842550780 581697129 404921074 364423485 176309594 508725066 976709354 346389681 590249013 244762471 978834598 182490942 772190387 741157811 143841890 853535522 26710885 477333481 725522499 453351232 611025008 262712991 576001019 413492327 202021666 323087140 452985963 843553330 776856449 982731404 524786289 175213298 287946504 832401411 405010094 424019094 436567323 120934520 664888736 241243691 301941403 327893424 572144740 124438491 994683592 260783955 684582820 215206692 11956361 854186635 209473845 522838311 970153179 411043359 901484219 566524267 945534922 342368580 9722792 195678275 893035751 312989984 581428065 809444447 287753755 743186529 169010360 103423482 246613679 402636989 886708509 650573521 61111595 763405743 464934324 662633937 192958158 211445042 921070413 778757042 996038629 699865951 920659893 743707423 728263075 368057627 477481963 660596576 199943298 626341420 268843032 942390307 982363631 136415657 115335603 519965787 796410772 856264039 914897937 188666786 360369584 518436257 191775641 587243797 837361606 44877782 498785734 32886795 435701394 223932538 115778303 177132377 896174314 805189870 454896997 860850141 672698199 112291931 188500391 613334415 8264885 977880519 976924108 572600612 314159076 731874071 48175317 400413880 339760000 844778042 620611082 745053437 566130777 739437924 359959390 860714662 975976852 285448549 724630113 16556320 412396238 440878032 585249442 530806248 766182105 794905146 617386784 660051530 139002577 709553767 846044393 64400248 989696985 659962005 298667973 221988495 825897124 723770804 904077542 567374005 169067369 201239593 532013329 342016458 789459426 617920305 148750957 445251582 481040596 97200897 911709791 375107050 557290891 276183362 909671601 567433458 806969101 426209751 483980771 372462889 979921364 405515762 964543340 617868576 963309978 302499955 282968371 44923024 723193598 893124678 252905642 905208509 428701949 740618446 665381695 399263022 99969454 922295432 200064119 293509827 917065678 51131003 706916575 266652724 251036036 262961248 505436438 536859415 972987610 492983085 833192293 606484244 542040065 835250444 632988018 350866996 417940636 355622686 733317140 450044521 729527287 318195395 220211638 116624454 884548277 316293574 100345484 769114960 645812015 549264679 346757745 891225923 160151563 316217921 471548885 553338144 462189827 634864421 301943294 75026912 245421290 44260678 424628343 386793289 946601399 772773013 222064605 906043900 74069402 904443 969709605 680492338 265481715 822929369 25654449 11634802 353668041 597159728 314088657 693798994 485381813 974049290 887344491 614313548 668544689 319818499 872190271 307897385 83590823 691422430 788326763 378832160 69165177 76516950 884072427 618927377 337590413 668770920 306255249 843301535 127495290 501913820 143760413 801400735 244350024 829782710 637029283 808882001 921711078 831565270 445714570 21438483 842572454 353742848 228126038 853815403 279886259 404397529 625553151 522541297 850503499 127405626 634466957 55147072 965770370 987554560 984510149 115254352 641134787 913971106 830531604 410974617 277570993 991439977 951244928 347217540 320980624 894332265 154472845 851235084 342392961 326378509 560624688 537799195 324211960 331702424 508140538 648173824 755851430 214020867 549694584 691608846 895079241 531311726 637459449 628812449 576359633 879260553 807832883 305019778 182003437 230148721 592208117 448900300 894193459 879142168 163456498 42205323 389597637 36901401 139235965 663561199 521117790 746565990 315539476 9349819 820953434 978656414 108714715 98229934 995921466 280910341 973369892 55880923 383556381 552204698 743831036 886370537 909600260 604020961 412645528 143830386 63272773 287373045 193078438 754898979 449684584 450243118 669649616 466558179 140597290 244713607 193315322 389843787 243475386 551448722 883731274 601834097 424063801 543375400 272649281 285227822 302529525 482390198 18180461 639496577 666025221 318022113 984328878 378328445 637518898 398143531 178049715 435129935 393612013 931296549 244447761 625979651 259642205 299713475 517039903 281731546 171345225 670756534 679934871 398244462 698276315 399124442 83618864 748590732 90712805 311634155 848556804 464982707 575352288 298071409 526308444 83582845 285102767 722552129 898398890 442386068 145232859 72843845 907884541 116087511 282326099 700108128 221581426 372548708 760555487 974991602 829916571 23863346 189933518 969637216 948297302 932170025 798140285 445812106 275135275 21793868 413792364 647718010 995042390 276882546 805490190 212308381 742873160 72461852 132180837 874002431 132294057 86115829 652782144 326835650 773230412 83696629 960444846 85964942 612378249 729105555 336463083 407472183 339179644 952777063 105427773 842038852 179295332 914204841 259706616 472668032 256837100 876578026 834057773 19987931 938316270 703765388 180254805 740394532 561343197 270537227 177613089 289681729 823768358 398695149 772248708 205321597 883525470 456872998 647829795 997596449 561097098 310284312 546499271 206473041 220980555 280187876 701286985 376315220 620731391 485908514 662229578 441675730 900942503 897732702 698553252 309446060 76558475 894834490 349419564 493080555 799929315 820702962 767629427 721134200 399482534 880463505 969949420 65437870 512909525 275914081 26623793 187420201 172980453 719854784 659628857 17644073 107510846 667563326 842445003 108032489 282818934 677418230 197312563 887054934 91557031 567025153 129723008 815527508 697908497 571301455 31686541 301616039 642910044 279775341 636986185 887210254 872155460 649151663 622102590 690312473 184175466 269186540 936122592 974696437 746609375 540273614 135755569 970503408 736844251 43127194 87924061 450723730 685854883 590327008 36923046 438932841 337379728 194012179 727507829 740365896 431094095 494590172 83191128 892264983 490926467 628785610 906744175 936186643 671499616 981222109 988331549 870697825 234859809 130278360 9520118 985961150 166128197 284402316 514242706 224658895 492827439 739490587 146212342 75888751 61164282 76054138 440889738 873078816 300295973 999004355 350629772 210817731 132772418 419851639 824618063 870447542 795195508 697531496 799638815 362249698 629901038 149220263 71537397 623949213 927345650 91177960 604396117 717530052 841152374 754324930 309970940 828597436 468609485 213355716 391451536 474849282 67693570 483972172 896898311 324333495 635526316 903560293 665059048 498736390 649094805 985190208 59177503 654630274 553970366 82184370 569171764 828408730 562438399 378618439 931217314 345795243 852987394 92227144 929298040 926354655 220689565 907852727 104235528 227037203 147599177 434525021 994471490 445828054 836061853 867484099 360404959 235069536 989760649 354514594 112857058 266880903 250229768 472999434 147836761 396471955 491543746 243809042 48827726 579399731 137902816 379856767 670201628 741282849 221443726 867596067 602461658 423644382 678660688 726113358 421862437 447052278 378319662 550163677 958552467 870356276 89909379 710698412 772092881 108044065 376575158 73677476 331846475 225403050 303168579 948397916 769969774 691692840 301489134 973720841 25339433 675218958 547888276 259572005 864905227 358228749 107065008 634128008 796922458 680574799 593032879 599563751 305438397 89475774 834754870 21869605 432460605 139875686 818916973 750135198 81279963 501276024 517903451 669273641 83967650 930151535 572031307 914978197 943402757 863012741 667970986 747252340 45606634 764947562 909267644 63512232 423027818 563632566 629736281 503412378 589500280 819798095 989723888 876054375 444687143 123924558 733984661 569459805 446645049 460371355 952362412 211786582 542467742 675242604 467197945 26598958 184083548 435043233 662523418 267522921 418529112 485093025 455462349 691167370 650427663 257348645 919069087 605821075 491410425 235157720 590652430 457528723 466047091 586000947 905212098 668507834 374777740 308106567 737655460 827779235 958343486 469408149 292011275 577661159 541849662 670811699 176741047 269366573 762896206 411766275 365674122 593343174 297878927 458117890 793779096 637754380 892568328 417277867 512855127 797405687 584023752 108223780 728159406 619123518 200849775 755883366 988527789 803608645 207680804 66271477 759723670 409288961 506622758 539093519 607854990 259161296 652838662 941824772 256250455 181658090 999288678 674255828 270539462 410186180 418820474 603269449 198343214 715664845 629000805 836275338 967207341 962165750 168159521 672389467 286440445 598460823 194568093 865855451 321854382 219422916 956622022 640957326 159400882 777177844 54845198 864759113 926516130 246093579 149520075 199406643 905441749 550067434 162315984 112016123 427105655 860542726 422372327 109830545 758902626 624417290 195360210 675762683 527366 838725344 571574535 573451855 357284579 706290718 799361688 9598184 6054302 558018155 580054048 307317074 605736924 946515980 953552678 306974502 391181011 956775759 952990544 432287001 48123711 69695463 262360269 13171256 684352347 43289175 662477939 821787009 97595940 849024828 232829258 828179952 211829947 565783230 639186283 685987260 522313688 359813073 859677734 520947422 534474048 532804811 453444003 182153068 628046127 384745393 128621476 260799942 958616455 48682044 982394954 277218271 350541040 769682260 929625699 93024760 142986903 218920226 121875057 509328901 560944466 449247742 668935075 418638574 118952424 750599270 956623057 156982640 894251177 201516294 993177067 843377422 202634724 310675975 891519002 293957706 807946099 257677766 174127383 54780803 930880879 148691306 869160145 309064397 329091947 510459901 985944010 800005799 800806660 333243852 232852830 815257385 448201389 634549112 446023171 477477528 750155063 915219818 817342850 612744140 115488182 479428746 734965818 332426265 114676364 475541072 760474170 443436242 506216907 223856169 667158176 19384673 153003481 112756210 599404954 122240464 754309676 409372974 612849244 153847535 587613339 142414029 340095222 24777967 432196179 853210385 58382920 838201040 715245692 897815953 901475892 499755370 218552941 555369333 70281698 881651407 533873876 535333625 908569082 323436254 72670497 753039910 587183103 357079920 746267089 813080968 972308110 168019353 872676787 599711043 281202284 425421069 24376437 681311224 899892506 66806258 74613149 528120182 170058349 419102676 164009128 89991695 193761603 743463294 866814781 708063223 36589173 455382919 532662540 385168277 972519452 234035444 898001450 539772569 13080556 108438913 829162734 509230505 925522148 413854460 643103292 313790597 759751456 705566964 20860719 876844352 722449993 484553527 711147075 875243980 761377767 328421774 200521635 142510636 543628279 363774817 731916284 657651939 477637239 820974647 982524971 944079073 252845624 741725903 312251873 36019116 460928589 625197336 467790166 227599383 384601070 928495869 294267450 453833977 662233236 242246359 672961130 582161150 894471662 468913857 12540509 374342467 654117075 338256749 848598110 869805321 970531981 585384966 989809404 114215790 884804156 347158043 381234544 392573070 756876836 257712541 625026420 351049430 98128214 84943031 720304091 143781251 784525927 308922179 574587092 919931765 803518700 363126943 73588345 575144901 579363747 555470394 855860347 720097640 538710197 254130695 563486825 886036990 715469033 673523425 922346951 536551706 45108333 244265971 164143266 269660343 839720458 771743862 354673440 779127890 583608445 40622283 214347538 368624186 551926920 456198613 215009286 427098813 195608011 817515952 26127633 739239507 170075345 788680812 518042987 125567687 111683265 365472709 264658022 557642440 797085357 163846122 348795660 961499320 643742271 878436772 895606690 499316914 979931203 533666943 79698460 28437425 603168355 340866905 194819964 714686544 103815503 695743153 764062065 798748151 316419499 19974728 993917477 620106115 344010669 551550240 412852264 328497586 219747845 664893989 850828118 740356292 80713612 120547738 914713778 203320220 458281969 315166694 186982586 271396992 299517972 294222598 784842297 499410261 905855788 704363357 428455798 350561351 410880238 250566119 444621533 113662380 897704308 946611271 974039434 291000682 132844753 202949551 949428185 454026512 107055238 503984709 373121270 857817337 189704179 150376723 101153776 409425515 230337126 397188397 622288296 703129591 93927271 238405224 750459673 302739525 413125069 349893980 126142955 523814517 265498397 806895183 626538536 652114161 915494205 877098019 932893150 695265215 965323137 821818013 747847790 385379729 938855730 396571515 507634403 135529192 996168622 29108022 967678476 926167997 548729159 28886093 861934595 429141545 334151765 217488126 384460047 693619870 719110760 338238379 801061395 952446933 118528193 397050406 931987446 201030903 10087792 386809010 659114050 578980577 980584839 982075012 663194526 435986692 287809420 141262128 179476335 280225203 883589651 390003879 331310211 643783435 796723789 493784115 961450530 551940877 896068740 594421968 721781843 250771861 762301155 771846997 248780099 33587451 695466173 950008995 667906621 511339186 902114082 562926622 923219358 262836178 834806476 632693742 55495913 153383235 423347658 272901449 997492870 405533070 4861286 818327618 942230508 752030252 438286163 732777669 39441092 440371308 92500694 763003648 764747547 946871317 410440591 9025355 378821663 392041795 643420095 156123622 369815411 777363316 894452249 71885375 595793385 920652419 374108408 161712945 165661521 266336204 148086431 829378394 758714014 952656761 318761644 914463233 2811907 788884037 869495324 272892272 742589468 620163245 910003374 657484649 638892421 614204739 928510606 157984750 503187744 702922704 508952462 446850606 965074095 488029353 175233278 175099915 169626263 833785544 771871612 127534040 151701104 297175117 377284893 30121734 890289135 409488410 644654581 462253496 589122640 562451921 114704083 552020659 251891477 88142545 49623510 942606146 617705449 107959451 467394311 701569877 530818064 769117681 765375119 480696617 128929631 945609138 505375834 724530785 567448572 328209800 531635730 142040005 229146379 872267 988577513 624757488 892111830 218263333 380376373 321548585 227167026 542602045 999594601 701038054 374009231 317429696 773120399 558536273 614191068 123859718 89991235 718689430 956968795 358017775 177670182 469646426 731952684 629961085 548371721 620486203 556179035 348684030 777441484 998226734 34209347 552221315 376216526 755636642 681556524 267636335 86746049 595418718 842458152 301433748 834196595 399348563 194171066 536271316 963445660 615679798 524007661 951423272 633939478 639095643 911846763 312455977 3804171 455607866 49636229 566377565 33358205 20331007 211065711 816373578 140220986 74958638 605804311 397680875 169469507 738770650 350053428 302868495 752477884 667340060 683884974 908907017 497212266 572564530 610461474 596496910 380501886 972268563 641646304 643426800 237270113 926315591 341947249 620767193 679054026 224576891 711107653 498453344 248225782 473219918 662902727 658147320 5942689 326142017 569748284 463264262 4326528 185889795 289328401 529093822 986397041 558839945 929160225 733202537 496129276 381297193 904968450 492864172 166048308 179941755 594556855 54160729 869033983 587094480 540352203 993869016 267672390 28426301 4173314 743958750 730142770 533747204 314441720 645299422 150800636 596627130 416248971 550236042 444885865 553630831 75803620 91426648 452342122 804611509 952196645 996907829 378642578 319504560 157148074 956139601 939191533 441934718 980227457 275859247 455649514 961195036 704825528 832476244 646182556 256526443 318394594 385040503 207376682 308348205 499333647 653226915 835815791 316105355 76124906 530515525 51220118 458041124 339772281 957314615 621569384 211060536 182613343 951080549 977531446 16768128 247289890 420836163 808157166 461176617 867576109 376784967 70871481 711671623 652242341 673297265 931737738 320162480 526424590 548696117 466245553 356336065 101429970 375493726 565358444 257504052 58535177 155301099 666787142 534852930 142695535 551897935 754030618 589748701 134288380 619227681 891471439 861364881 729418902 687816273 326751219 452979408 204398307 468970436 194614851 797042157 195681531 171255716 775816948 550235454 399037253 68938288 417555554 347169966 447496363 676514928 624618575 626844219 742836250 166113884 134272042 279734178 227241710 700982401 134525328 736097950 997847517 168012203 685470987 380994170 349117701 827336816 647300918 244495135 204195879 107604601 606048549 530334455 615999170 655553001 547876644 202597067 215853937 372587122 57363315 843533463 290553066 459663799 629662341 618598795 146192148 337088460 566329639 574214517 122790268 447669208 309281490 569794586 572241838 468616526 988262111 496040851 572126837 469200150 164103287 101420817 515604242 550996680 564612671 818755826 112815141 628552603 346303022 437104665 467849935 528125276 983105980 264112954 797964942 24253616 593165421 317332297 575540627 790490264 998731461 104982992 623876331 292791933 986224053 121023867 368111735 90428631 993319410 442005023 684805282 506422750 770501356 461749277 956280822 302710194 342908158 249121638 744546186 108442600 730442940 662998253 587961138 300921400 248049312 235162728 812888973 218904007 735224087 891992351 987758006 875655285 437431789 583228696 634262678 66941261 791369192 882263535 64479496 748740608 576310074 389034200 185186080 86921888 837148356 911539542 647230737 706113540 984842216 745061246 349220944 736772615 729738413 215400087 43514622 337753375 997385286 545497341 64514732 944530164 900134063 995950992 382801408 922148282 300791946 179372898 19236308 390101063 535066402 484150210 169092654 924173329 197567997 41447010 552543491 290592995 32295286 499540911 936525644 482360232 124831465 16302358 656335729 953162564 164940097 198958074 496647140 757031246 196375762 157270968 538751308 470269955 661586738 947866085 872885471 844805347 594849870 466886803 66842001 740607487 897151828 931513271 40242531 114055341 827329892 372981076 919418678 772364288 210527526 475882857 602041285 237620313 863866536 162140972 73257142 5805195 25892990 681700655 370751508 21324342 357254431 382813459 529978599 286625347 780106257 908107900 873138334 462888831 166477002 317920710 341436030 887831477 77236421 367360079 998629399 230802878 611543812 526510333 579212686 226882335 729442815 92139395 218619093 580752911 704967659 970831580 312082640 787905847 878816933 976008705 275914133 280882661 341672665 522226929 677644385 390960799 582230772 825199117 754632540 401373345 340663260 581386182 690598352 6147994 465460234 161711234 933034676 293100934 508016106 857740657 816976737 857956288 487250811 495473498 363579386 494899238 87078262 963746584 467225970 303695231 141952305 114451107 54220940 254522938 610820691 131081125 165485536 857505003 698616731 489544786 903107744 87504447 630349407 200921737 586423948 297884078 732963929 207135487 333326908 481780623 679900745 634742564 931179367 94054812 774811475 588621461 28296397 521567775 345892814 271968083 642193529 911286860 69748616 661204263 383036210 607971796 318343781 334241353 278960007 310656841 195153167 274011737 680353745 193223549 247777700 879597542 735022284 981795227 613816262 69840171 469919918 847548062 50433310 9414034 615854475 475597239 958858435 401148090 781659056 119783180 921099639 49456149 936779704 22759421 219907333 316399533 46860430 789032935 168355892 643289169 415027026 31042652 692480289 61074593 156842027 512845713 959063978 599037333 952245583 608518436 578593715 666957891 866239579 501846669 869404722 989863122 946080703 619522462 711626830 282673052 343348856 851938915 20219367 999549923 94731800 186452791 123365218 561649188 373528871 984463435 79801255 279980742 355469213 588086064 377145084 303344801 569703322 992708147 1703705 299522047 232386189 352515537 359780130 137276974 963942616 233191660 327502874 968716488 583485592 507399890 635249772 648479649 877374596 546516873 601268477 400354155 506078637 540694678 6334102 219786310 178317416 794293303 538631222 136013598 424406853 79527507 686225866 314671266 5026199 706954549 77592108 878394317 807869169 956336844 74074357 772300394 405718312 325896465 886295537 409930976 504504966 117642227 48062190 473292660 193189360 512681925 473715292 670218253 80358640 706883545 22807525 333300778 402082465 662367343 622676706 999971986 607969421 724450646 541913194 886187258 715823737 296453619 825410858 225032608 450043992 459091080 823218383 815060227 804324831 46117366 928949328 148342140 308302807 127338089 936364770 76783028 390507927 422963764 152059355 804331689 326074865 704674954 52292279 691629346 289361619 469154928 337164727 870306243 609326359 240187062 276804128 295551559 401526921 418177672 61057688 692288190 499482545 746574176 196699735 749213278 520749450 30610452 78599685 480429412 325759949 901760361 970332264 182828045 967301562 143576796 143474829 992885019 603887979 354105793 953526662 175029697 667866013 162072382 915567608 946636099 430635729 228543496 537922285 696283273 935530913 528346600 27157277 744515217 134186432 865140698 471943491 917176683 80364049 98641970 252435681 156249974 567653031 515472489 624524881 556999509 847834929 819920211 996553820 194676175 772156685 438334054 697200933 256704025 748782594 764425960 782020223 252495616 585607686 419161446 307457787 240790626 157039711 567729539 824752131 840599312 949841929 746348901 412133881 151971371 606012737 626888065 832075111 977797994 731523231 902713762 990345954 192355219 941469927 406545111 434013036 657522375 364218953 988910476 761891211 272175294 888123039 862373890 772895470 910432050 861687971 20641082 891710200 923269475 368964024 264044057 734547533 422939695 206806473 78710683 46969256 601200552 943700458 267196504 497396307 158558629 613019449 767474029 669707275 92641816 595731981 323215112 655318558 578557252 278910524 40858788 585341969 862604637 162124976 731888178 203905243 704717809 429889805 417790752 458222107 681099546 690223816 301150379 487202941 912747466 839437701 58890971 584305430 397710991 100872821 829928320 405788271 867517007 40908785 67254529 759605504 667125500 168432922 86648326 890464655 100657535 668568174 369360293 718893288 734060607 644553910 639438191 805411173 665247820 412999237 393673543 372533681 789966485 249494951 331346558 560337426 319866488 214666144 229099590 968726545 135706875 779775985 38659512 27240607 427656418 996658778 382956771 409247871 128619009 910447125 456745213 9131794 144317638 719735236 552758355 629036733 8390181 46482478 82558988 184552818 405891061 118255439 473763274 327017363 458262955 765976270 865931908 417220515 493273485 860302152 768393019 366835929 540960682 450276055 600225217 581219218 70184224 495125826 856232946 816576284 929647654 555232051 807862201 738083634 592845641 231502134 57989549 716466443 327326968 849846316 130001826 366934492 871266357 698741011 76541820 597382285 381633856 159903144 802454755 416079659 745526030 830689101 902464791 480072294 270913342 279483382 368302508 867266295 727490413 575821928 278951049 154309321 767898481 805734072 61248364 381344585 121868603 285384250 85792159 1110548 730539199 158901300 877123538 106423128 29794050 449943073 615058330 881789049 518653704 47597152 597905343 172267238 534817730 754104487 151401246 393183698 707067146 189992779 308976625 677197904 930536730 762468775 408959720 905936088 534661667 102130374 968720519 91911814 763590775 659313018 959042815 584240656 191652878 873570367 737799287 979929876 48039671 969908146 984563924 839014288 512299242 305802622 453024142 856852565 515335614 757981522 659393814 322780199 482132650 376430603 295630166 683966031 365616406 668124251 451864077 490429013 10790476 989265943 591477028 743067704 523354796 872302660 627035084 138596387 790836023 835608274 989798401 912446651 354377087 13821419 312242555 386735169 640893500 567538167 435360975 429013108 197529418 297335571 201709132 27793055 179871212 881137009 198656449 617310437 753125638 508939368 14327593 127853441 281831720 496020112 358124454 863706915 452550305 793214383 256256723 324879176 153388131 978837695 91780297 415906077 136380996 495096190 864890460 625405519 467101004 363781229 28611041 41220155 487882329 322481530 865882146 494019901 652574600 319604687 130731084 739875875 297344099 339084910 335939254 431004859 2708016 420889519 608268855 993955368 737628721 944518060 42257991 765333580 440728335 212584924 522189058 486570170 693335242 61921526 176059886 420288657 785263937 178878761 514505514 475181619 504359920 322933760 234417048 325240915 832266087 211919147 618548198 289018698 844695342 880318685 987081798 709359597 6994981 513159640 436848107 928739381 395633209 114348386 238401032 506394013 273553247 806620049 583288613 432474162 644201933 936409197 581825203 412232878 130219795 90994993 458976222 354707325 385638553 279609766 594799637 846238875 559903227 764367054 210951716 139067911 376723018 89679294 516053653 664433805 953192451 96151097 932687636 569638652 990230042 140701881 460721682 62551671 246828553 409485417 38488565 50096225 763238558 696466121 224250268 353601402 453905233 297967404 401965974 688779413 123409543 870596197 942569615 141244379 650969888 983151405 137231676 983091123 648091229 567427784 992816695 109078332 526624244 850791315 498882626 652250596 930226093 528830938 696316164 741763877 925629510 98937279 917984541 951941798 3759638 23266713 473455619 704802635 926389990 158602713 914216864 863441387 901416139 174749187 571101504 886591801 977373790 933080100 392908656 406023665 872174314 682035590 437232599 595841688 908031108 840866297 513119323 6528851 963892086 215827549 301847128 50815918 276045115 179717805 953581018 344113686 398487268 287178287 718311155 811600590 300006843 887119326 581721522 222592262 280513417 869883901 860310175 400464751 248584860 116589736 355575428 870655209 171212846 951206225 39247649 958011595 779651738 332340516 54923200 895938790 212493445 865302698 341496497 888651792 777126247 138953038 275200026 976316691 10557703 484675363 531238324 971511138 94243354 19255429 933896201 704090024 182326788 675964592 559291028 180976897 775241606 457422913 909324407 471244510 740039644 158423403 584140471 741812450 189594000 382772195 436753326 137948155 469370630 760342001 274110891 752522593 679635024 336434383 959013743 392809596 659006218 632766080 473834563 256006050 138723739 637903173 377187422 400929013 571082473 465222340 599571310 720210101 840364583 419500155 331775017 968382564 604740414 944661192 364474345 905311886 717188556 421372374 285162910 716711531 639026497 322396671 977401847 119742104 25281185 791709392 214328077 710249544 307331066 548930722 495101741 50112023 128837890 36901643 120648981 892074493 213592087 644616947 630426516 740677861 827940754 193600273 592256345 707663123 160394138 851988171 685208439 774835630 822917133 515291403 925501857 263221800 741970867 851190463 181672311 859336281 525416554 321559706 332512552 866635459 693339579 933138600 525527052 944207889 278671923 297414157 210784547 398860529 7582312 313303684 528814849 93332905 473950738 471946500 406186026 274984566 606108658 890162279 752220515 745270784 362687401 453918916 71338666 244791992 651117826 668002701 818696516 673643901 125333174 571776478 692642710 327820701 532860549 356872441 668228587 851154453 874235711 371235949 306899006 854964135 351690094 304181918 890033126 751594677 412958026 537004010 65407934 668126072 211812882 425542023 636746762 730284459 717536425 782839750 90866189 147499136 773780473 809020939 19022495 62222584 999302438 773481207 403895326 506139440 590863965 119204971 981601603 221481574 731443919 17475495 161455684 356422738 46298147 179564716 336632415 451711608 621801161 650252000 669125166 161719533 694189175 585818391 723204571 881659439 619581132 710289992 335909362 327191259 196422997 718028963 979266602 718124957 678170793 909387359 106493998 789985246 758551339 686653838 355616782 207501403 565206466 196936506 729968795 760730489 400076805 549718924 285170177 828201797 437598161 768383895 904432846 873672627 287980049 194953261 52241136 669623737 391114917 588460563 384701420 202729958 228192333 255895224 509854415 779646410 733739817 130843725 653575468 169476231 195658206 485977428 889348756 268304499 127108378 794074008 581067202 140433374 970238650 519117449 762038728 484954499 719039981 317346364 283876128 864392248 548830282 735594423 436432810 246556911 906624475 848141643 54596029 443805119 978116831 386607816 80490918 250339117 461378575 497210536 876239552 255682832 571822980 14318125 888968023 24304920 839512385 499609649 897649412 758729844 321956192 459491463 337010364 333986875 756485519 255385594 56117561 667345770 264150266 65700371 269383995 766257305 70616218 946647540 621382248 651885328 154153076 92485823 214995642 282332941 391327636 640336449 542840335 414526236 561209983 909824808 511573255 985484962 973009925 393808412 268039642 680097623 472759279 268232040 745243256 274897710 581694150 564552506 162100696 594704802 543369564 872209715 669719942 49308482 214050737 181907329 875648756 409320514 308234871 627366404 583317157 83993578 173332910 790789960 501574037 658792088 31083318 948885488 742932285 800558020 452106223 774736680 588934684 117957703 146844348 432568146 651327306 808048026 727676746 80773207 758900519 654445499 2865191 301780987 235484059 879244557 395662868 484463186 172156752 279873094 694278009 522816255 893351804 811444618 346252283 226924272 909219220 915877460 276032108 211235425 698207418 138514859 611999027 113406681 598496317 895463820 750870322 958765318 417273647 536786214 175895300 122191358 881184789 701976658 767227784 912454967 647892459 975952025 241221070 439973538 58268932 580186537 280774171 181577388 709062521 511483280 468453183 753461177 285763012 833098216 333386503 462987838 589811394 365425044 117569057 835729047 5556816 1891944 771372609 266826722 288459935 43485141 984202488 53648961 84126416 142125349 210220900 807232962 840306358 125749605 46312288 162350374 942677355 294066940 155326566 436367369 950928446 171409427 285843876 316367738 673073691 532127076 484832350 996475705 779583425 569596352 672508173 1674803 40743149 281763582 900760536 129131532 142648242 258066799 480826131 212928135 450855566 882707672 751975961 130753391 919360108 904043691 644613621 587709203 444600322 369077124 172904462 31722686 979742677 449698848 185189173 528178662 471777226 808189925 863562079 175358913 365645434 799436909 266765525 727968743 2894460 985216134 695038915 864530009 237057063 96365062 736479408 523367293 590706448 544622344 886792582 531456457 477634879 241099304 973308186 947883152 403706012 803408507 387795208 290364015 413666989 570715238 355979504 568162316 93640178 699002166 62093770 253481167 894620860 359755823 138558440 943377180 290038887 88602009 394875102 701594363 191707782 228538103 322845081 324742921 431762598 324013340 567081631 273430708 86335846 759183009 520365439 483688029 497787067 424741885 280595533 620684770 290686262 979804836 722264746 968065102 84049081 462677818 115492991 406666203 118960996 806132555 984580855 890137276 650030165 427737984 425631937 556826569 894216164 813692452 295359398 393637021 92730238 693697484 425197096 680951721 995816621 99862516 138975503 534552519 4863386 14643884 984734910 21751960 48410771 467665357 697642156 467925718 813700864 550040065 262593597 955383708 496871497 70874898 884292217 117381550 46181473 426052266 599167622 530571952 651202419 160963907 147279001 894441063 859122123 516371729 157359130 953383626 123187599 70041830 675445292 166090578 883552009 107615348 237798039 395584672 712067627 974714548 523668910 685037314 440870743 130600298 774797347 633719499 276637219 647176251 681837508 156948549 221386465 789792596 133954368 366921536 823346359 649838900 762222913 305008738 469721976 121190078 790702115 519868039 220478504 834631284 945790798 577993269 64649810 255611656 817150796 932893110 967657956 461741377 318304967 877626396 606939107 38040813 794162147 882066568 242141652 640720857 203982530 300014622 244596528 195915968 967741367 109167550 128406481 402006276 704888566 976484683 475625138 569421279 720062842 509190099 308929935 53183226 916557305 947558935 565046181 537818001 880718272 247299589 38574255 360266687 316772465 735180429 177828508 945875133 335159218 912888051 941101238 277652376 508013619 493970721 291470992 86243651 313529531 150347865 57158489 942250254 545242942 33551901 189914609 367664807 43079677 740222332 921512134 568967919 887824277 580712131 349263836 573365942 797112353 523801636 609301925 506606527 951871799 802717133 143239831 84036361 603179647 762188724 233565750 161398205 17399737 381641900 678583268 752132258 332952386 610175144 765769133 771387857 682461317 762263733 329721075 569417420 689665512 373452647 61782409 984705654 685843195 780903516 899391355 602662559 50422030 591476351 265411517 709025346 738400080 264640690 69747124 391857905 938664685 459866849 597329142 243976257 591347801 208807223 76529659 658409022 804105789 896225187 335754312 945654672 488581634 426001672 479506959 921231621 237479305 315288837 597232663 497694030 387178672 418565972 682984736 514477212 578369990 365258725 459976888 960554825 105505911 80061425 200320857 500455428 591246112 721264201 394999971 103577282 233177605 732352096 674142456 684876313 873616900 999019404 279648384 630683145 974161212 357867281 103347608 779882218 650165610 222836636 902027734 314046814 145716842 170149578 359584494 626392314 793517873 20428934 991988949 997071331 131560169 890054467 560633552 523213670 814092047 750592318 262689075 470226280 190467463 425998904 345706034 598867333 48897762 154092714 654528239 305822969 629178908 428162760 922299779 414211809 598509582 575145465 855442523 906913261 670530214 278619709 785041580 840670886 880104853 326523564 199823790 850955281 534960211 636314190 636908503 204884832 332404021 149210401 87893399 915406950 653625611 139092880 398772935 239991597 763053662 979584032 16971891 821400273 55473770 219690490 887245567 590734223 513752149 297329466 254213548 523772143 300020515 136275058 64128215 885431192 28172836 817502488 691191521 178830741 905502628 555313902 122109778 73235755 854199981 449416185 255632787 938753495 519858957 498775703 268655857 244420668 112542353 977075454 473305116 92582746 651876215 23591741 25649683 946416841 511945124 544640460 975705482 940415258 641827074 590796759 833454726 382552642 345316830 466348942 227631457 584551506 318969130 562153355 741779202 211324444 911524759 69613899 68170404 519644690 893425384 134782759 444405380 940189746 603279922 333549344 338018984 19239067 325578241 574577897 907601178 126388637 796523092 636724426 600335527 312151172 910239886 734472519 594745406 665409263 488666357 194646954 858303138 32759802 788144803 265256 591527276 145744504 188436768 543125324 954289525 66766613 87318740 887865951 562789291 158263536 952870708 143431217 246994000 295456117 426805643 265626041 736719135 147771660 418991978 142035207 865499757 805203448 457922528 136343300 612285287 366623467 191232340 355093430 884603024 579652146 16634019 866344127 165478415 84292690 372308222 820093492 741537930 394537232 357913011 330173312 277916924 581655308 866251382 19797051 521337264 140209398 518693215 231202982 716347778 398256174 783926822 388696206 221970267 911569530 996275950 663837437 606218743 553406317 371769086 735522429 292933444 272278302 29501130 537874382 796399996 443600176 160243201 691402637 516534170 973202348 519104397 675119066 505924061 185450689 985410282 23199083 118000907 527767494 964003997 808917788 20424990 371246842 727595848 221752824 100480576 103369680 99985166 172858557 732849082 747778753 288979331 36505220 835167588 249977375 645237754 669222118 979908036 986603648 126650757 205556112 208374600 723995842 138493728 882241549 256184720 707494527 86691205 254985066 727272015 394245603 318477955 606498457 134585483 49159485 326379642 533813325 666697359 782705748 551345607 208605082 675997280 572603941 52722263 365293266 62947237 392940219 861213090 147968183 386136016 20624362 590913311 742136939 142363874 970086812 523516121 116224602 697313283 326451980 206569071 607395567 135872541 880950522 400433377 987827593 860135951 915120003 43328866 417315708 840962905 245752315 401885261 396315353 108350591 804432553 146057670 72423274 911103056 24057987 689121211 953095025 162065075 35263139 990859895 474861192 326847590 447487701 813790121 780944402 523639912 93505445 823247198 998711159 168413298 476801673 830827972 768913298 224196651 735833618 470252072 427294208 414190521 970447070 217230288 829405210 593957841 916343589 312008597 442601751 901013090 46293316 113638253 956563162 825212349 38228518 524906012 126242818 171402966 675852174 156219976 980632131 199306535 144250327 78889817 92553592 129520849 925852016 695902879 306259795 291458254 197796401 855442552 506521945 322012241 44778099 515225002 571090872 321964328 80088666 739633272 8054286 386405161 326772028 926356384 31835316 121046357 465905641 378145083 795172048 784878524 557966122 53861207 115099210 593448439 386521632 470917213 685879621 935571504 174513752 906945375 364260868 382906745 34638169 209649042 81066444 352588333 921790293 524700614 801039325 44947294 605970711 901344222 439133761 347409254 798368195 70680987 513108710 413097714 223296451 458504284 747502701 47126667 281453898 706158876 744949711 484330317 250374611 929673194 724749601 610465153 964106399 172287851 892144708 147457206 527984320 699422608 597234018 11231893 376796241 901060431 131307092 729828765 212284520 449450217 310329355 213939498 676875761 817850039 934381147 206485018 294970324 886131207 585766198 912565663 935490016 239977903 185190288 624494822 653516524 306381441 522469230 381820771 31236365 424427630 363363710 374722248 539075095 6036440 248256722 485128545 334109309 60994003 477304350 337055272 454689320 528903321 731718878 607397953 283504973 958708436 225218972 899646380 824079396 766852339 701161986 724072391 970540946 820122933 142667259 319923725 966895180 881324239 994506398 680318244 890972922 190353717 667561475 195342443 735327352 424610718 506943465 850647572 263306615 946038696 267594839 168509139 896929724 605946000 50611907 142429821 391754963 147547667 987145569 762331447 632492692 561489169 495799641 755015797 629029423 467712107 941928198 728296990 375495834 263363972 718797974 273791166 86557565 362161901 994318363 16618580 239119924 451005145 907788141 515082049 860931798 292700036 56500745 53830016 412853157 794068951 508707889 607302510 872046229 184177571 959716992 786084230 640109847 328694430 66286942 406321237 115666138 977996694 830570183 786350918 115906034 51301751 273062697 406476756 215554499 575321784 509694758 494180675 170390846 755633255 185930412 745120348 981544214 173972516 158908488 217249878 854552762 433985449 205423907 395260758 90736929 604752796 712301529 396350750 458570068 338885300 724887131 222267355 62877242 317144860 20208770 818204852 142685825 263256020 174836301 249051852 52397884 202225742 510969025 185128330 498310958 893018799 101873512 542618603 701123795 221337156 218615486 279010262 905451856 133463370 309797908 17965601 586248181 991399282 738180721 949039115 174731722 833677322 832267436 982949412 23409340 637991635 975212722 876296912 566657214 212560949 126901788 438516833 596197492 966363449 760244204 314129663 581766173 538085850 781592722 113010400 678464963 741457683 325278120 394674519 897984126 250034727 480286983 574317814 878622056 624704879 578325643 262949834 641402187 301665306 874492664 464981728 542131786 334014884 848647195 587821550 273394164 327042506 202225211 728938366 472097435 795673603 386092752 543371551 456695411 701319024 794472326 356459409 136837682 896550338 511822262 220230866 442537323 292442312 109714645 812697630 980346365 31973079 906343094 754857389 666025213 942708656 260338950 643358992 548240582 490649206 304564308 363380146 246949434 583437810 787949371 976837501 970358488 69140275 43600592 121424706 799543078 169036635 995111084 57055721 294925482 388145763 921101213 673267573 451383930 92247779 909722863 8247753 620100530 795210034 572677028 834059245 317284498 274133529 301371298 744908719 985504045 974839448 809482727 358958739 769313682 294580987 599454294 713572133 818709415 436286601 940773834 990311612 343962674 356936231 307134339 92182294 829997773 856219641 331325394 963338150 902105379 879872128 401427789 519067780 550008881 693971479 471612936 723304730 619914285 65102957 197742584 576465350 154898715 974121202 459414287 127282786 637311379 207947987 614936259 104698828 729166793 256986809 898778752 662960483 39293175 192262611 883586454 138479886 500906268 19670980 253958676 439348538 275261171 407599787 225736030 451488778 135004978 799330856 157415560 798191433 829706654 737465034 377653008 929587799 619973802 760676356 787810763 807347728 260991321 562494876 271663824 152201870 117564526 362241037 206900068 529809796 882173602 878486852 773294420 925931781 257041878 308312428 967695619 10937898 531788737 314035275 516464818 993908964 371056019 626425133 396951045 796213645 222238219 100475046 472226880 720280872 249207950 407159879 520058382 625824194 590791803 918891201 743809763 495745932 817247141 673342256 884294455 58674734 638628574 490809176 596731270 941760540 865499871 719358268 655219308 239073891 262013606 680611945 628521657 979071535 131128339 219681634 668593003 364634563 781058207 75036450 404449505 589987242 110417668 752469441 284130713 444167362 132571960 8384169 267756947 882498042 542735505 521719689 652513108 220446820 987112426 743574960 919263415 11386136 853308003 433615761 811348309 563910919 543304078 556623668 356882420 648356832 142351612 92011601 541878282 766021695 72104009 342863805 311814299 404178792 585718090 312206952 290414875 604404447 504720949 356605476 72226505 745316876 681548002 427903008 23929179 492968592 868541767 596140240 370154287 486362306 110443024 782859991 436985745 233692913 881498735 500868591 406868742 166098165 931275067 506522152 776174045 721987339 695572486 669760161 799967624 366893676 511357105 255732006 328069211 167177462 815826100 361655564 92960416 742121870 853095600 929976184 188349083 112126651 47752720 358628084 802236715 320622843 29808078 545794560 267883523 974207160 761422189 143424281 350738284 236133753 88059132 847336341 509021467 438780145 105965773 661892264 221097282 136696532 37728680 177724364 682153829 322491239 699908328 105076722 51227717 237300308 167019147 529109172 105130798 443803383 379155944 655441929 281558115 193055092 989339154 50352766 256942696 943796494 668765308 26020032 224271002 79567698 130533759 550271891 169031685 390174270 421461670 604509309 273177922 295331052 491415577 537475655 42159802 898713052 583830744 155142237 600063861 71851715 501974824 591485907 191049686 687928904 78124864 147207331 120171299 953517604 979319867 97263460 421199717 529480662 492217241 978414559 358924229 748089529 726336941 582028198 15615329 355059778 808138420 196655193 627652755 888374491 189956044 168781684 305189189 651177606 947817859 5448617 497205226 249449493 299080976 918803808 799324082 263176116 941092061 988314388 240035 144254587 907996430 55048718 904151098 331865188 786388735 673930085 403321132 276911460 403388506 790113066 281575851 785608835 773059857 917357921 3814254 798866905 936449368 654881673 651300743 794618315 187405960 668879209 49451969 592257355 757317663 439780342 966234315 981189253 507404583 240228912 992419962 209280721 791429337 221431357 465033407 904390318 27851643 346802442 864253764 191051148 910944876 629491963 248315519 575852250 888848837 415340973 629729340 77267680 579598966 982484398 388634147 413414983 764816791 643089472 404350967 81094320 383869146 695585490 531747117 368801371 194072735 553056628 286136674 264600159 453831764 305364139 401996128 252686965 365949016 357420733 868905169 751105677 212705218 431794913 957505588 8423272 704455607 169268989 555819187 600357102 301902134 142736231 152132798 498081225 211487699 998475141 612717082 301031983 395494159 942409768 128683622 141040833 977415321 444097249 224998309 540680237 826982271 827798055 382020469 396208759 778821682 629483940 239858812 59016114 702973699 751823012 716850692 5019609 303833341 572735320 528093655 882558480 23911354 485710194 215087682 585039374 579729754 638708291 870160776 616366842 613398438 450730010 330142183 701816269 935806726 659088246 741923940 564980673 127990284 367043662 196669631 766776800 31421523 25064702 331973483 79519250 581155872 593593873 383068254 821545020 481853370 556582141 717468121 134339910 631936973 585514566 308800658 908155471 742974781 502643579 239709542 468551089 229355491 749379732 818129861 580361676 193193520 275875104 825085880 68172122 800879479 319656033 949483535 466688043 309668554 729590852 111067323 763565676 626440111 514328343 386715025 116852793 252484728 392039046 21051121 397013524 479552110 107314755 144690097 35942928 264618608 179310525 560332004 983359704 908873614 368742523 63647318 784619926 160357975 903687208 839005519 554856571 103727781 42511002 318279726 67724033 905663458 751904271 711999893 961832826 310031333 946279629 724053308 719432977 491617409 722352613 147826569 335386385 777990061 766244240 295640369 238430881 648875619 931977110 243189566 149516683 848555061 157002735 970062922 941237110 268569554 48895251 6821469 294671824 143739812 192267051 996236768 701771041 695219932 518627388 759142332 566726663 229114165 666655306 47570990 204799330 233745935 234997298 253120618 295268225 260881130 937069881 515181109 196791314 986780081 173422316 447309347 641092401 395026885 867888356 438374894 508649915 130985428 116988912 598161400 243991164 142449366 58806631 435025390 982440511 928464721 860794799 148694230 353455622 508800854 96031911 22413081 716881846 55943319 867390394 249836899 564882377 491997345 34597555 996287069 243266387 501924318 685199004 372257430 769031438 622733181 629592867 703220118 747977324 847083347 861780982 702410007 281207958 871878835 934639212 242092337 417670541 765683541 854517820 127526651 391448809 523297736 461559910 174496128 698959121 157910035 743700913 27376669 171917889 13477501 812611368 959980154 272048627 948001464 75603560 848873815 196761433 607443129 678902810 149224469 65337833 805743548 204404861 376509516 896414545 304799251 432067892 66796173 270524245 569147757 930968372 53182359 604390070 627513251 364618924 417925088 984421070 70857771 330959018 598630170 672766168 155469209 869584303 198482439 102302299 36929825 86068181 312719075 698933310 87266327 930193197 83520008 596496151 786445947 298350981 177537171 244777575 739828029 208218885 346213371 393488842 637508407 388249652 316505529 116064158 970243455 149628243 787614764 225491764 427440089 876560683 963617482 495957699 848209341 209977351 681090774 379593219 105439188 138146669 961292893 981871578 354556612 226589185 2430276 83341700 139947510 303173620 630633553 39016732 233391592 22740314 494531073 995816472 490805264 264804588 741893068 931776642 400023311 37145437 375918024 88774446 395764384 756891433 308060546 499294501 108243974 607264577 903478679 668416195 909351094 52310166 388091295 85718631 256693086 503089559 613650267 955086957 872758555 609805980 621571728 425296555 766422745 552786998 617883227 133133322 446746892 935533953 820933461 701910805 160607246 679892222 689401090 94530232 851145297 124014970 207291180 600670780 617289093 596697619 789667928 942382084 638763650 354797294 677753140 13391166 689523150 771509653 386529581 748885394 828144727 604669566 481573206 791623488 529027932 220814941 862299380 660648163 877400592 781998868 780349454 167797077 747783517 191184250 913286429 494109453 295584208 945067552 806731754 682313175 969918773 912048323 75959063 533742237 692695623 9048287 60057767 356473737 686660546 547584043 102299769 600631946 726969144 523848377 319651878 263653033 681133052 182067583 904213866 51617986 817682341 714781350 800001679 292334779 891916152 24776123 711687627 451218116 654643046 352106263 308603889 104676767 470735762 805616141 649831376 266179662 792069698 70690824 279601514 16027323 24776911 851671759 257927234 626582651 444356926 915643650 314097161 580876905 311998552 749388327 658126110 403469003 690198484 328607312 843121567 109474822 634045126 829102712 6732095 815048988 285236364 36742163 558378174 775763379 772749670 62054841 945228512 526243913 762090856 399289139 625583426 914224008 528359829 237354203 686546014 107179112 173842930 284174767 597061887 756659112 702742134 240961777 412937255 579595756 176714659 631871043 601599016 96747561 646800924 327936792 60481852 320221379 212437270 182608799 127015807 403224756 871985231 393207011 424429541 411696953 177129812 232588995 174750079 664935296 155481022 143400594 926475695 861896366 451739029 202306425 562566965 267467805 564136145 948308174 681226563 584563822 845156737 853686068 53505993 62493405 682557060 177636219 464190812 814030061 861774893 389345124 758721191 150438556 933064378 664942412 861419478 75371188 831216404 247185654 585306311 410840054 895309052 106240267 698237639 733285918 337044087 939893514 947412370 834178319 786215768 442827398 452088103 288019377 939792432 583736477 660319806 270684443 574035829 564243937 669280137 224496383 372584949 45967784 436132445 423660867 272717349 204567282 845710717 31507649 278159884 716746480 196980039 680792568 495055083 964762894 117204453 506063178 344176933 496049105 673320042 496133179 259340133 116524807 320121930 864503339 395346755 164254690 115276659 982593186 208372105 506055479 830183433 878587863 943712101 527674566 960103242 242968972 489943913 334077945 324284493 418746312 199732572 786241402 7649931 765134406 268309214 337923505 526695891 308112640 229246320 693554871 774273491 28795520 406443914 857408947 930406250 716031273 365263692 97926328 560778584 925531589 417801593 451148356 801863908 514115379 970936989 654415727 426597531 804103510 298117213 175572295 443672151 598677658 552705509 654225994 67467296 709599903 168369876 333236952 423791092 231510838 910828148 928988317 540811396 570239689 706596820 711698747 401771119 150424677 525069916 450831782 957372128 86614248 805314278 291279557 272434305 136249467 788390082 350112842 360587983 352511663 822937677 391831774 457883216 646705979 445570776 473446438 712887247 652165137 431438514 944846132 352809200 828326494 596732079 320297396 590106355 775726499 1126255 888583344 372662126 399937591 28796387 77235682 388084558 814642962 957855280 777244741 261538724 672860947 552438346 406220599 548802909 232047427 523466302 177374658 260757769 481021283 102229833 21299346 109991099 458569536 558309725 714104957 574947806 997984684 473457986 662788600 779673603 215288744 339235392 410169334 748779530 635568082 752981870 667147344 733118139 559272653 767183509 661507615 643187859 17216485 590350561 398418822 776076343 77129643 460646362 836815849 638879544 206038152 472575505 475291545 261587760 149154113 858689157 395778957 448112920 217927042 345757061 465674485 991157509 752005813 546142315 329367805 495450615 881357460 139585680 197418847 137104082 378048833 564508362 274096315 902534233 62458274 669486400 683180627 480006636 213071652 184100264 316630868 32561194 583643657 941194975 843110950 254336038 519422700 781502045 299369622 899852363 471595153 150175468 454677852 311955360 494012490 141148289 23226632 982179075 891987982 323229323 263215131 766204206 40493848 190849480 936368909 49104891 697912883 664569347 40301710 709526596 464527665 506502865 113705010 219856504 56337295 820115616 138610499 674222905 237970605 596659090 717394038 609983275 744257435 564812712 511994322 332668517 385174515 530776644 142042423 35099006 1504301 338275468 355631407 876014779 215692783 319700713 504325995 839905591 861116013 835938922 518736466 618934171 327990994 914621848 857757924 192341955 135955250 949847512 528476370 658046240 908789488 229312747 122254186 602221323 571181722 659234751 70910929 58622345 557727128 160239998 83790229 628404251 655648303 168998668 677428278 532392712 207330679 397927654 60258267 316937187 197570204 213569482 926873117 436189528 191408627 808754132 548726125 726341540 816069924 26695571 99540654 449893257 695063558 438329056 827140485 502409182 387207965 782732423 928851310 321590847 673119789 562907645 653497269 408706236 190902310 544218752 597779047 996044179 926539035 35813840 47278935 397300720 257085960 918576713 936044475 286530647 329181462 92065644 371508297 59149295 61078474 946094240 282556686 258282004 967682495 173802282 862989715 156365251 771467849 158813362 707506942 891858969 503810107 790012564 657351933 490438590 614660121 79026720 538675764 222449760 928739868 184107532 190679901 312843696 805783529 522637757 476567033 551041167 882725160 949886456 697081672 546319683 659558562 692071701 422865178 334686150 112833309 634326164 892277034 202424317 363545899 545105785 715050981 965401628 463636982 99744613 975290358 132214256 396926878 248718753 22173101 206972959 730155604 100198022 971508004 572505120 573996706 596509520 737606686 611509262 939433973 586154715 630152962 422143420 265859484 281554203 982900812 398581899 893793353 2685419 981613016 767338903 575884817 503093547 270472086 745410736 487909243 183540631 927782000 689514322 597948008 478806088 466467322 136739974 662183079 542846306 627110557 713696402 763478774 753183243 69291135 763931700 809635810 441769338 724347652 246084497 786784321 661423732 559155511 143584728 653594826 439588503 631586237 237956036 963894199 605055950 557577631 694109141 168505395 466420769 341262737 880420402 428494235 168606383 379318325 390346048 900094118 557946388 773666147 735564707 225528886 416771119 320866780 859932365 854735246 495925024 395265638 283640977 533858835 559237048 716648004 172518767 323200279 99000628 216066365 140818032 512875908 549359083 991220816 884804095 643080206 555291589 123480889 113121311 709705673 889360108 978981403 72197762 792952380 935093543 267331512 687217806 181678583 687975468 476429898 348270200 425644042 621430832 370510527 840207913 257732735 67931957 934697731 84478349 254264246 655940995 866391928 60459414 312875348 951934416 38042143 805129026 423612458 603424290 465984182 182587725 543257916 727423150 524129086 668877179 824317395 968063884 872662630 986699909 844361508 866371614 386218156 71350975 576949470 295083558 778336044 459298440 318914619 17325691 444193847 668895828 200045222 891836594 950671307 693511368 788723462 805422265 347506182 397963311 238126335 226460444 255938748 543559355 597677320 297269300 550600914 839462943 795154445 571624948 960326421 558361535 338163279 795820438 217224058 412275101 272435589 179664125 828786859 390545833 616234335 321689367 331868595 866714026 681501085 410697034 730220880 848885383 970937827 698723774 206775381 107533101 479258983 537875506 336211356 898618860 353534901 209502398 678443645 269385768 744835593 310378151 204022219 699397538 432913318 390569916 890637668 423274434 903630770 252362117 758350862 861899049 657481833 262372930 425781479 912950843 756338286 127290901 463873629 250279554 475986505 587173174 153758928 717446625 822918498 26787760 29842603 599286961 831120058 329354193 632937973 250682344 604633684 66421454 467260605 753538320 736614878 831280743 458526333 84913877 249556715 297293014 262034121 992220678 229020832 679212193 291918924 811834977 169335167 53581270 268384855 179931246 289327968 866942716 163129183 664788740 196181757 489121416 416447641 451963997 890646766 968108577 436397204 488064491 834249970 234784601 417914753 367265763 324155863 398311122 165492126 60789800 53801838 356542632 909987131 32038152 945808532 783804048 881075985 918123594 153152378 623116798 402768597 803458399 467438197 115084885 51102977 214079191 882052189 249440379 709882241 203937437 687006948 121539814 499735663 994221553 477477326 253205301 100284451 954650751 977555364 709241028 235221517 300028858 978538808 158893649 277198120 405102257 378872956 450551174 899044548 145432187 539211788 205053747 860492965 345502094 207874247 19060879 240956992 906489590 846438609 241977619 641065702 187142347 209904206 386317469 641496692 13003841 244136446 94293959 274582922 346610934 538457803 244063851 567376146 445096970 755050986 309806207 291098641 814725467 3726962 125519761 766533001 76702337 523280636 690982674 433326271 206926591 898783083 257176540 492313490 564092516 405588304 470979382 767803689 854178625 294464556 212449953 884075533 709213271 880277873 489109293 290272557 927891846 616322744 988791143 811999134 343945978 536496886 796524469 848710770 23029304 810975665 28647096 476404585 218189824 971706878 121855965 957330826 692114477 28762815 242848763 27354843 507855899 802456559 950841634 164001526 574211039 66709907 869871278 442060561 791203388 649157866 860625195 412132555 884099662 245184543 968646467 139619098 220972290 127684729 418149558 257050765 414501351 365270818 893524429 449044517 562364750 833799080 833835081 464827143 857264295 736106668 31329121 71572038 313229450 110929726 621955566 642613797 441245940 755434695 205408091 926951489 26301295 536834077 413913973 229265770 163799074 759412344 255047701 777001787 641215275 550307106 529479892 382317668 923794125 697272854 888331797 397052083 503775566 843704416 580742356 701887605 229113149 907211741 288367313 420459143 399531305 287391249 734040663 480321719 682922170 24990561 612543921 437008327 318230013 911453136 615067315 492488931 60458292 42612957 491131669 74992676 391499884 638855809 740684258 887310729 771751223 779053542 55141966 1540037 420195442 768583316 716750781 198603464 930575042 110832365 269111413 559864433 346278788 324375350 179170888 612840680 554772320 372750827 127649294 297865948 22808126 688167002 869909589 915042616 36707969 400711532 581103941 237316316 879618528 70686508 618373312 352971879 146191467 372384780 442463850 990028365 837420899 365369428 356157395 775802844 350706495 551870409 702698143 768188477 419950602 699771986 36411834 887593168 495422203 991565219 600548334 809716378 727367944 537683918 278379890 733890635 583921605 804342463 961712047 840024232 842100199 75349062 21174444 502313084 72891612 62157610 317783234 74536379 610210894 746390816 301005604 895037518 598155025 69759361 408526315 910888439 842902650 708189822 507608666 251933917 600108592 539170997 960829294 804695555 379822335 316391158 409889031 474221919 110001939 799344141 916513622 508113917 378219313 665422886 503613955 530040124 512922737 867539753 759193303 634690652 326819983 234446246 871386976 929875093 57592544 999339198 625905357 402953211 747901889 324366541 996575793 20795190 900257638 496746156 425554247 100933143 274815207 796165357 54246529 675025309 489089380 785620384 638194541 603175064 334634406 482653293 656012145 923076633 163180183 414609196 716342331 391286754 722776582 109019795 422442871 864200052 816127110 484379555 44490103 481739101 625350717 972630525 948352652 839411601 401328735 891945821 513381725 966426796 270403624 327087021 470269732 819446860 52356246 617911909 378705023 888335142 184127347 746939210 953013932 478871478 871913562 788828336 990141577 290873972 349044155 873673233 994868653 829986011 132028141 873197028 432030303 802518181 738737346 504875469 314839643 661514437 210150954 161074908 452815610 771369329 997609767 681820758 493172018 358031038 944582461 897439283 66398601 558874675 330188852 573685917 47605234 634088337 616491091 452834850 696708373 17036973 849728673 269061301 987009211 881107549 913860127 934668222 231388289 76310972 868293987 387744051 70070513 620719498 474946760 894174398 237602247 167498733 130553227 383611601 609634313 807903928 306185686 951197682 912808043 253379877 352044518 480570846 142294510 831519567 597401719 912996679 534099875 293041786 50026140 225292479 19179069 83556337 397326843 557581011 967726606 706154841 626189097 405456723 761553122 537819530 846942474 771917747 603252179 889403145 915696131 157815839 962945509 178893812 364778244 871645243 375575135 808451534 532371940 697047252 629391095 785278398 321411819 658542101 809614529 265003966 728506182 470032994 67477611 681428073 470164658 377486105 365797120 735548956 34950286 635972667 11748722 573868892 596126168 149672469 668375030 760470521 545967187 824117761 924770759 158253090 442708697 345875437 378742655 603963843 175072679 268853210 891398161 277647734 446581583 53986785 209371325 954514709 949212849 675430827 96198819 830262679 945406861 904235303 544525323 237524089 332831527 277074628 334265078 370908286 622229405 533746245 775696006 284460210 763971433 970821161 745646006 150799588 460088776 84327292 10063607 736264505 837352343 499019559 839616087 317052235 842847259 721086839 758896318 642920996 347699365 142719083 966920633 432636902 746125398 646865199 43774489 412278698 191268233 661108110 267165170 665748394 277844711 94575236 338603781 833840495 953889057 577372612 438331243 564780219 590647151 907128573 684109618 481878804 721185915 121349932 32596134 339860485 221553826 917619017 212612285 279253319 742435373 308049985 660715910 282003552 324729165 800897486 509753614 551913569 583690784 199802684 414705305 419525625 413194030 56014160 560842940 214729609 222288914 10222975 438229448 535869949 174816925 645947311 687889097 739458877 93510927 27518441 283444908 222786234 165637234 349387558 117157394 810283188 871453419 977799845 66892704 887750801 645266537 92886198 349242366 572214544 924070413 839860550 859023905 94169251 192908732 675458182 561531517 189347482 654997430 57514112 513326768 829075454 24856212 378305805 809922189 454327508 517663732 546909104 768333618 630556965 944407424 879663537 358518107 313480717 389139237 106917676 656518757 574885181 919812591 954400280 846464007 975028090 567615976 658593230 202138508 307074088 983499399 360760181 607325824 932698416 770671774 373323967 514690600 845343432 682505220 852964270 933466226 943339145 387471387 925712576 145708167 144733943 772820063 832794313 590637133 484280878 631455969 776490106 229990537 569236809 109877963 932197317 197876533 875125308 464042097 661846170 18479980 229736041 20666094 829764523 220931032 231665195 637532664 214986013 927782462 841688299 447205118 732402332 643576732 601555263 121952698 583632985 657166920 469760238 681582715 315453752 73870122 822268428 350022802 554536847 349284328 870146120 859451182 295978601 641812403 10060046 482774374 261850153 789540892 100846497 599486170 675965133 411880054 413005238 876216410 312835434 225444348 87853379 322368819 438844481 953286829 455410608 646568571 478861569 532186153 676579174 492630583 957362827 70976219 300823604 533420326 773542332 839921808 954582072 987892748 308678991 518078466 545333492 624526974 804244109 218928980 592357963 669835239 558231748 846752666 762252173 12353012 82912956 862807843 238637699 958309693 225871565 420944360 510756509 453468889 275631704 175969867 97597255 51295661 68276625 953041437 995617035 669212494 933460294 11791128 664686615 509983673 236637309 383832500 675221082 650088408 136407698 89663833 85323118 363867226 911778687 467664948 946504366 736218377 579336032 274582636 919146887 975012236 662602748 831505338 570535169 441459194 842584268 637159360 993832054 724171622 531551386 198322547 928203492 948187360 459077710 330186490 49203691 659516133 703082130 615127197 260165940 532240704 243538739 370134859 252059738 470959668 399751482 567507563 732927519 605827963 328286436 875217706 899235821 83436404 995606944 317886840 175548972 537483112 941932628 956519987 580857642 200788425 528048161 317205994 577367619 394380965 516840741 56331340 774393633 672901634 572127652 962125593 134320413 341916401 752341685 139042346 843488333 857206607 90861764 615991485 689941028 882542906 780707745 252117121 839268995 858602089 983442488 810981569 608197638 409863396 11131929 280871464 142009245 322107614 682343223 222224976 522197460 963246387 189192581 932601825 13551019 849755181 646434553 206041315 408208420 946163274 904884069 320462437 84734213 662524138 57548271 562556481 604540941 448570374 411631982 197434776 264277163 926565476 444214044 790821922 133149333 744317218 256911456 283618476 716115850 169742028 546472651 451491883 536611185 479564624 193208262 773721531 361811206 839758329 752219269 621330820 500266748 268450912 14353090 954609917 894345241 548628794 256795306 601352990 307802222 147205305 740734833 869977652 882020781 817123315 434622554 231844858 850832694 243458343 236467639 83186756 281290500 485711665 70417386 11878534 527962103 707200808 707931605 23043497 499264334 778567277 395717889 548707602 489307141 462945077 680811368 789705398 73563922 936740103 229557376 495322028 93942547 200781358 56540565 854685928 120146829 944771641 852116320 107951910 257596701 508430084 90123327 689845829 192373775 634387385 497952076 305456416 570398942 953338389 132798882 664981008 730236583 395141498 725877113 949839227 541715979 791210281 25282540 409256703 262944857 531109925 694628990 135481269 208964747 170865173 167058155 383108173 119226380 658910947 370135451 748568509 702647395 996038402 981900882 993578189 41436132 493907302 44660524 828492518 197311928 960080442 28721408 538608913 390297712 461653532 34143912 668804992 478733822 240056593 525628717 913958518 468349112 803367406 854097873 425712457 408700146 398141245 807411488 918740941 905435846 741618544 215497756 959909449 156146121 463847261 524105793 755859793 806115683 570658040 204917621 958865315 392070659 940603362 482070350 752188728 589611575 444507247 611452404 502847883 994678917 651588451 485533355 221865968 896279942 342527215 440113846 921444612 432363664 213321781 150495515 841880868 351459282 714386800 895461558 973226500 656331431 736385609 437680250 550777234 443714969 886443168 147738943 3627487 583472830 880433562 239234850 855796071 249615159 230230382 862917156 921941720 54408629 380122583 485754442 502042972 391907122 536449121 861677771 570980119 477176684 17866785 608215220 62123541 508442394 334024191 93956551 980825244 270095905 995315968 550148422 584451760 45521281 512447903 956385014 463663837 81502633 373637473 354703657 789640369 49337694 960884336 940769526 264709916 897708322 207081060 236798221 629962125 922325946 82918437 787327420 697459190 413819171 219204419 998892554 849367390 589186313 233055635 771138849 212021510 445224006 204158245 926899731 411417172 95474358 10324584 30400412 980998538 502962652 517905036 151510863 526684087 846384796 669286124 622856010 601954306 960890239 113418473 848590427 478946630 470752669 281076236 436002566 709268610 651199645 36122864 985025941 257099922 322488516 920630893 730881680 705499641 518273453 852184987 544116723 552712255 319497346 203671596 600271238 159892211 204011394 114852207 770226863 399218606 782692222 435535225 273076268 860845386 84772607 562463514 524322183 308313786 469919132 233285124 705050225 751963494 809538437 400137764 220216996 963418574 12574642 993559340 591140236 730168452 81469300 391009444 673934603 420916542 866398846 20612839 752723220 680502742 105584511 605633163 588321556 530023222 866988331 629382637 235829794 214309792 527335960 606705389 349754059 479260099 944151694 545558690 738989084 312928480 475504068 735441234 941317870 262482620 676147867 436430070 321703577 503869050 802633792 822648330 147565717 58206571 754202075 198665445 545615776 592313841 949920413 880408382 505799782 370180657 63557053 522341674 974894474 76641134 844667819 444889343 831329723 546384819 826182601 738572124 280065546 482676271 88604213 549528156 637925013 796607663 635271854 965253849 908442360 203830779 148789252 673763124 208903173 967242916 485629263 772487512 929116630 964879557 969049820 894352219 420479109 188009140 38992288 86543274 302309818 367675532 876851097 2389004 163198340 969732787 680002440 106196424 8932086 974408984 168763301 193970208 409777447 384834398 527695588 437132004 300692029 363590370 772167278 629486502 769588187 657715962 748428225 319450949 643321897 844321937 868286621 622246851 265781878 687484665 831843722 39598875 145724985 192600827 357625066 37879567 894115805 53981422 821386269 950287483 763436015 902713044 2954755 576425960 404913860 90751440 25332836 21408658 679170832 969702676 360801469 293059687 696218186 385003564 349027708 917078535 611425766 905947932 693649679 877282838 794045505 55379549 255103932 541665325 5834158 18669981 521099259 524252597 194540979 371507015 56077855 959691997 3529497 308245956 784825421 20201462 362807692 873367157 609346054 643890545 282866076 374403006 856941404 679125983 380500503 444414856 918494030 224723483 534787576 80392638 897688994 247302457 39035013 949966759 519765793 633279001 699975629 819687148 949418798 220133677 257873904 463154485 116402482 685430254 78856307 281509024 499744500 511506381 860582067 190373710 965692864 372739974 535774359 897105390 358135692 321386395 485830682 767134940 916519623 354379677 104983970 422001812 557608384 997938808 842787174 682299623 91056123 209826990 682487216 428528637 630366100 677965121 749803694 261055876 125200403 346177093 297242371 260442194 970556421 131330621 101957625 528498045 812525061 941956760 217407742 30221386 220364941 160116609 798485852 594122155 155608937 642708179 298636767 431125711 888607163 936038187 183510505 638252866 851289962 529320948 525604328 295321215 32405711 120468714 593071318 633126079 208021652 941258223 468405510 886000557 532369915 571356394 153367206 268090688 151733161 707255984 387140132 173368744 242800909 926317331 803578566 118164056 749973638 677574470 240819244 437387911 13330824 447489456 784759528 377795895 719526927 193842829 342610194 971769501 836780319 745403696 754724570 976272018 675693486 929557680 389854251 421340005 363365774 370378279 303307386 608039026 45148887 626754384 677415521 312096522 614335470 769501718 976620007 487634233 73476286 310565162 906210165 5943715 312673311 776766534 440252257 554178898 544082170 70745321 113889810 349558713 699490592 429337117 263956569 59048967 256763299 792472870 805702034 60837648 876535910 957837266 95507354 417849118 393982004 240950973 672656773 523159464 664463594 222002007 509427546 84774024 907402959 931072329 65013109 48357660 817087158 67487340 71247127 460059328 954529792 666631199 836858232 41154748 20865130 137247048 411591486 991236040 456063287 99217175 177487333 380181769 668841466 424627715 649546398 686031438 837614438 453011207 749577608 530170348 66525285 362056311 542959492 320408630 927327847 740143250 297141589 860590044 273241 720311556 727907190 457539632 347243577 515721407 981400619 49822192 528962942 120336431 728716128 738361298 482600341 535726215 940914835 249193049 629035679 181305578 451031280 486903189 371628633 953041932 878967522 872701471 863967156 833222937 669629348 573632245 169403038 105789495 132429379 161486259 532633357 613134371 560077264 28045233 822185796 891260321 269008218 517669415 717456467 258436067 261703324 49947757 186739550 463330532 711793027 756245635 387814158 323913340 61026373 106291487 549097394 704799953 180790988 43276601 285595306 875543654 22860150 38438795 635238023 927197858 711307664 161419298 247149818 962384767 264707133 392639073 77721461 892013129 248947968 364189453 107974460 123446275 293313499 432135206 69175570 699676438 991968643 959114666 604103764 143766270 525763041 603770851 86328020 665271980 435068865 519964736 678207960 392873598 975078075 405447169 246805300 143196881 733610167 776652166 148285123 200402524 180837486 323028836 730970322 339717257 804921778 36081289 800460953 660592645 209434656 401563320 884174055 507325307 40039170 762940610 692103284 417066945 309196352 81245491 243055869 922945555 792759497 682186084 311135635 193248689 994238188 11274579 40890058 476507821 578175080 311162738 371006372 303997896 925746447 809035843 696818245 277108956 172634410 311473196 607360938 267951948 860113889 947374590 946743517 386732458 14547141 487033619 806050389 150054705 252944718 828762641 493130647 110020292 983387782 336336281 91218852 846026566 302090130 917582364 994455494 135497197 903203759 594705572 338100726 356039639 490651102 108602195 501154754 929843871 159183401 429066465 594615170 220959602 185867652 946842774 961720826 285957478 263805531 763850117 773079780 290525630 734562008 247744322 20066947 109120993 334605990 871041813 590007206 115786060 621602081 259043494 232172661 715421186 289889805 40240323 642955503 230616882 745303286 64810858 744046257 210447803 619043799 303353344 436723233 608300621 995642169 379189353 266991569 876352091 573577459 517332342 22605873 281892240 963170148 832844492 657407572 820036463 126093572 904931970 548274327 757841162 261098363 264694939 971442388 812186616 937932203 637725042 258360003 703363667 924072636 314480690 419298655 532562026 751683079 280062417 75156179 967043729 107281674 197645558 765594954 833045674 298258702 107536227 320259399 732059663 156265024 588242882 838121865 46612437 397213223 764822318 64950382 909995662 217288541 839240166 949928939 751480432 457174720 756913455 621586230 393995287 152855238 778992221 135323572 907235184 473777817 359738096 763168799 160882602 524247251 157918341 846329388 45442000 323971331 733472702 451319528 957659745 702528787 177228459 723246958 113889290 421196045 179180858 684232822 491448571 965232637 33612001 10882411 303881763 964785406 331980904 639824847 990815505 394846862 426584367 923460927 933600439 243905220 86966113 19933025 721029510 213267250 219577229 338523554 460071607 85608803 368526555 731926535 565601543 828829928 357561552 907346077 834844945 496659876 50009837 453135796 794419298 655048488 633591507 649528023 262451470 293978285 316064043 18221491 105379254 110233457 492251391 568485417 591049780 372787550 714023960 872976653 90423626 882311565 172930325 196174931 729975831 924218545 874692032 410258935 222235605 307543824 696718271 6299882 255134869 568902410 975853961 942573255 659997377 403464246 569806501 149938894 154225152 502256261 541317799 315117583 670058970 415337621 782858159 35026502 416494301 600824332 26396674 802584455 774628143 896078231 826377843 18340680 354715492 483394658 546286676 953571051 407233344 224590462 586720352 871867231 564878811 712441399 974132341 496339716 858736635 605374177 234057447 185641583 36322731 428501227 702778734 668146032 375423185 388312125 535223364 160050910 628271876 159328888 248970891 726448160 149484627 954694374 78065075 616303142 682627761 674744405 641204018 499769830 528633100 702613303 138522169 338924326 157306969 752571661 257323203 862791953 717145133 117657902 519632189 836026244 258841605 678520304 348588859 556065552 177283427 368325552 404504600 752088478 257954665 547765054 968230025 968572150 464937549 138033827 226802841 154021673 599904308 655477871 867318633 32049388 95991741 275408064 687157142 176231560 195552749 604631262 223258986 328868001 818063098 636558173 42828193 54104325 603189823 203185829 85722126 891220771 719713881 803574387 977708954 551748578 926457312 667116176 215760923 353397300 402610341 932815000 217673070 942544169 51953606 522169232 672039206 453454983 334894185 26098280 909094468 682029533 439992101 394548807 608654867 156976940 234863122 975818160 953977817 780448407 880613613 424307658 854120645 750995957 563872060 69591687 29346554 155672114 343594299 817640667 737965752 838131440 333579692 804221502 298253740 680631223 245752909 438393927 543946715 111045485 35196690 573872314 713927008 261890202 404095986 383815747 183700169 18606024 301949761 9620319 431200740 146963452 301993981 504353965 598375631 602304167 865599799 245139562 560258141 2932129 990190455 705456246 345796212 44676361 35922915 558464652 364126625 985545894 149567978 279304028 817576997 22699985 339090426 203245386 382199541 914176820 301215654 998809390 691012376 331552034 198541006 418534283 880931119 407436022 655535202 215906487 852480386 991944250 455258409 681860811 593023361 218966449 676658761 182872374 546207922 107610121 189526983 406017843 717052117 123777123 361324158 500079244 516854461 763499613 344973300 496708941 543793404 18084342 711838074 945473455 290802866 520873383 917922503 730581975 480569980 667611590 906503356 109984105 439986729 259287543 845747785 424619304 209161402 72598824 136460778 511698491 548856148 672889394 233798379 941122772 946921465 472050909 469528823 543416322 603408233 91636163 504252495 730696564 506692748 479809952 86272112 987533748 851085034 693601795 795273424 370716928 220078764 356820210 700881331 114415544 428758625 385678492 374243225 701302051 224565728 957397954 389287193 255451988 125297545 219038734 407155118 702060941 106127315 820089222 275509911 84488448 982150976 680733221 48734308 740060563 822929462 923045413 644472635 66123871 281153798 119571326 951972241 177508430 452150574 318504935 476985358 499952776 548146686 63001720 674828685 462461080 354769156 618380446 582028818 392651432 882867893 272196710 453521292 440067220 351866251 738864815 247487235 777771875 173945226 340640 93035277 889480752 64083201 84295071 764350950 582698594 806219911 895454446 767169827 134792308 110528841 979240318 167334591 442114546 380137206 586176568 998061955 734928344 462583597 681638607 746808146 810026427 948364810 511392856 673860584 937287696 240541517 853081571 80803531 389374913 709520260 159707007 160007451 960379543 246258967 372554532 620953229 195395810 91944821 180523423 899079133 282687620 863071500 778865948 9785248 77934270 497168728 830120728 950133713 520866309 733008577 590376056 953112872 319915332 733849895 450689579 797496826 67678544 728169788 756648846 194736985 932452789 688991943 595820706 99013391 94219583 145736056 51937050 960608650 536298728 934143485 645981177 847552439 493375892 338358497 656973679 984408429 364024131 768164268 615978543 518664883 471489882 37405571 498265966 683642844 773404287 356391912 686790160 208445983 248850562 714177399 613996603 14519102 390684012 140088017 853866274 517821279 515793349 872679976 711295533 693658900 917149324 684142547 400381119 933344719 367472948 255015076 489220914 440238953 53972795 367191272 712635106 390078985 799333413 549802962 713247298 789603119 44754364 912332746 952101835 689767842 714181264 739130544 882607385 596487162 963233448 303107630 37834128 703881130 845766774 864528949 55524215 984685369 778286160 671219178 892324784 329496603 117313934 422545384 793132597 129178795 309940401 792868007 36022607 932146594 460562309 393629721 6095263 728284701 655558355 921232490 21971588 623483674 547873529 315479508 981000431 446076073 64712794 656024425 669546834 791503871 551847799 681624614 989641962 873197941 401875305 602438692 423444647 516177224 831690109 727643220 89930255 604286657 88875154 191434447 699510566 728720063 459781933 362684440 395073817 852816452 150072083 861965047 124354475 279350898 202561625 790661741 14243181 699082975 443148551 536574641 265587406 204842524 805678112 364717300 39737288 778673160 214379558 454021398 591754304 987875041 411073569 247813898 322485303 113721567 286792859 220723402 184008692 790195813 727877048 976293270 590912401 476902754 738543609 269826683 846330272 929127227 39590151 460402756 30684419 607048563 732505712 862539292 395560523 984681502 473556296 155179674 183586105 94237765 763271459 795647911 137048539 725018391 878162219 371551798 140120427 11799359 917018584 458737436 453392534 339041898 118448689 441040250 829037702 633847577 950264060 75252782 644704404 318865537 102648681 392041989 227802303 89721959 763953481 997850592 758978521 417109250 358596584 421809929 800150601 858481290 905598119 33876902 313916664 755452925 821971637 312239408 612138293 713591377 562475828 581901803 156746680 39196578 63068715 51060327 376404485 234900945 564057154 600988740 184255318 364172631 720759508 435864563 332810750 159467361 833079145 936941619 601404707 223016426 789716335 179462599 782063713 484625652 247550176 596586623 89677138 813784701 326621077 967144510 8191043 100414027 159766221 21058471 488540732 892762280 734506237 456394200 395438102 610847925 966637958 572979397 546632382 599076875 13105299 96017694 798543450 102403921 539898725 545552450 352171408 795916158 812078632 947189949 918415738 315922614 62294147 794995676 690176199 442132152 758495360 342457573 269972408 19111979 341423929 453018067 302293440 943353244 271379285 21799023 749195596 347797419 731805267 612746495 327647110 446574681 251463585 545601987 244134808 541725527 102630400 413932248 365155559 118276265 911715510 895143313 262654777 159648255 804812774 455227686 457138970 110372187 236177335 20188242 791009757 211777761 244469787 701054110 683239566 422869735 180415476 862097650 631721806 712898046 596560227 590620759 136094618 202184056 598365670 847297573 564353464 782341088 374588279 229947017 290290446 439154469 298810374 286698857 958571289 882392948 643027558 443455230 871432673 105394427 752833423 593435179 627844173 762162176 84338832 846740815 456514304 107609775 225021463 925984655 831670758 399192103 284990154 793333737 796266401 655747638 299550174 695185461 687676147 236409842 197517098 311295976 286833492 913030311 728857277 105379829 492186470 397525122 553790504 545363027 718873808 844642408 288503516 156218248 190638316 667958019 787956867 969666119 821967076 435671608 143669739 224627679 205947175 979215155 883075521 946854770 785697546 148153182 947443432 925378238 562419575 95578854 99230753 482326733 973513033 637210279 654114818 237042817 181140228 380803569 798629977 918927433 502246074 48638239 350013518 514003383 998323942 91840068 63179846 519321079 794573182 257362019 663790584 443935771 839887494 920987399 436454164 349811573 963209317 174812711 793543328 442076205 72720916 896757362 508899280 206444565 855142399 700366354 102834221 725715927 221373057 730674511 937621622 753224694 179772655 55265468 56159260 421083251 241916205 564428847 15807988 277745456 864739487 652180635 913672320 128760392 345712437 645724460 733842045 759900657 48857688 516804568 181847147 979345767 830411562 238391912 378168059 264517560 438801423 394408149 511132620 105288794 688459459 102028398 42519067 457179322 322149955 657927989 252841624 10891337 332140527 278645836 923402779 156495971 369994496 142922909 497153573 191345323 900140877 338881424 610556366 570304200 238752759 64000764 214654253 679292098 445563644 338487259 208831119 487694880 46221986 536876764 754061154 682552780 891509540 190794455 804729389 950500042 448411729 785396738 376555916 557087256 765429115 400802849 22858015 42716647 333015206 13503065 523207610 228848763 926061621 391390690 605737508 649110905 672635606 375761626 48176132 513635666 884525506 660989581 191612840 128479048 21153249 317141204 167669163 192281825 538897917 154341789 593107653 480527282 123208819 909939079 292992148 615854124 690727745 492662041 87470698 772679241 175709460 168867132 671520778 352143517 101795534 652377816 624900573 659678225 522808277 173849750 326561641 13380191 871528824 598356708 655382143 343194764 961503649 761200506 298536997 675049875 43706643 46558880 507622923 576831579 283064242 961541961 436742872 739875056 598726237 721423686 489837324 331231706 32045051 895808194 863181971 67174350 561292523 596505945 701715003 421442140 51467294 52175715 467166946 260566118 492905717 482098534 437088089 177504027 202435797 99297895 170735919 860728080 396563701 407010888 724206430 796268574 524221775 861745901 330663310 855735318 366237 981353375 954267654 843308573 187498683 15882020 60814517 111930734 332519839 488475390 28468794 195087215 181589318 468315056 433433517 393877412 989339801 191077112 15388932 516506176 230591188 646362208 789134350 531677995 498389058 136995953 362456543 212264518 832026860 304581652 816851744 200123864 87380078 864291453 724574740 645888738 469783856 734819580 388375224 886231761 783816511 347049598 671053602 495125544 104146163 430380021 744080301 868638985 173827491 333069177 883181081 706945606 717099325 950520781 711189295 225365775 76513251 986053837 554974944 705168769 270674648 437326234 86028605 326294476 72192760 466297017 993400517 716823138 965291149 151811348 102078266 491567963 919129994 552344443 40561737 995708027 703341993 963175097 583172183 770636907 508428461 734957267 243202605 812765838 368316638 760759134 667332321 255067818 249138310 742972017 818865952 277031593 972231782 919007257 882292212 140886165 296039179 665009080 90280570 322632725 464041536 757195698 759693413 189933541 981892271 362344033 475557581 246730816 897096027 564077636 222956484 848170327 692207121 806453202 599063661 784979457 800658165 474617104 500920867 336490035 260468886 765455819 32257129 312887158 189805524 219838090 635166167 52847212 789508370 226645077 118269864 51989552 838139391 345486210 255036630 466100773 953774127 862490603 706717700 305703424 400612005 162885961 457455139 766231633 187713729 332034484 155291976 71115698 805470547 317186456 481014077 266538132 743419500 361481354 475364352 371627644 448566736 731819195 138906359 769532373 243992210 976693488 266647111 189013043 521921634 41777396 533418047 69674971 679102326 814931777 78439971 780973320 862383834 620614800 481657487 67574702 200868783 537298934 785756859 796923338 382910169 806654762 62084248 987483249 823300379 796363663 114076532 91181884 854533272 740434824 8761085 146703999 100349771 665357631 477463865 259717833 687305721 878148613 216402593 837947359 892211347 169060160 997096187 617463805 73392849 792397544 898159672 110087829 308395298 850594708 206018069 81121931 696008573 933919471 811102407 941685836 122067733 525735243 547689680 885020926 262952420 883462991 249484934 779019243 599439720 932484505 825923518 107969197 737827337 247930161 412273576 575051962 535198206 899597298 339589469 443435064 477782688 845100777 641411789 237177935 369214359 105347082 679081940 33505279 376580546 218604495 15445122 38948535 770554964 38415496 203451560 179623663 888249277 488620769 81905113 428743130 933572537 859271562 736544381 64992541 131014400 385919140 223904419 268247494 655393940 424110650 428433864 444381027 76343989 714697295 329349852 759982755 366826877 317869993 805031876 838521966 776304970 842217717 165071703 509229431 292892416 91865065 371989667 608135725 351689882 606089701 542264852 53154156 316009194 829867105 736034606 553981293 56001161 941225877 554765500 405999311 35608088 497085367 651531491 507229301 77641712 665528133 71146636 695870956 528125003 304969278 911554076 563760729 462596252 733709411 105583521 473833821 765049582 427673710 387786993 394442643 213825262 880277543 857268646 459111018 543406509 229998646 245457233 998905769 887208523 280003582 679421128 899606923 608771471 133704363 611919079 544246826 537029264 833395681 393261499 511572482 152406655 405364055 316354350 880571617 849448918 361723598 621736883 261033719 942293861 791469591 307400895 952491517 966912283 121370132 439260922 488360337 917371648 68818001 144565987 501500780 350430333 629306528 628213684 562148282 615859748 891768913 186763398 645534928 506014982 950031441 533427802 460314516 807828635 9432653 238151342 145490189 863269700 981216600 738628108 208867054 717807731 895801851 976342078 714278024 843303234 570723842 701351580 297619439 718285127 824067307 863562481 195113269 812175561 400492159 445192891 311082667 322031366 69796167 296231679 629196186 826227842 7923770 544404143 124434404 927234652 193418765 118954786 915595362 622072359 333773514 701489831 975519968 737396404 282878347 343659833 496441031 439486125 435079090 456554523 110693798 70398725 130538182 517625059 863180477 337845442 229645729 267306267 512200931 906420049 105142070 618424837 232579514 869464199 548091536 498573759 369652165 234048237 934310920 823144690 601977222 745707170 474428004 261631754 509015017 625233940 378843115 545988921 386126054 547781709 292097014 786328650 905775383 684121128 610639090 440353080 583576391 442737766 694373435 58678044 441392887 673870120 548767333 684900705 503859446 127448949 322235063 155153496 882375476 484839486 630294454 523127527 864638273 623651596 321485155 32591125 289459168 808519193 679679285 215659957 254119184 898680704 951923258 489480779 207228639 297784779 678463182 799678692 338320842 75371802 517520275 964961407 44786699 942669355 442855930 635234497 228586242 526215540 186722740 671556238 804950697 505690174 388113692 228225140 915139007 463224763 400035544 618024660 676302372 386953865 766417983 678783069 560382536 216883127 979065815 482891040 778048913 509444771 574151279 557941237 179591825 971408712 793057552 848745647 298807357 613290673 478407140 199367105 12739086 368561860 359873117 954675280 308037803 839655635 170615838 631427117 545979511 651664457 855806184 318799390 956517611 390686313 146791864 633989987 39445893 478403526 910716258 765473891 703110039 84125629 695287705 871453739 211226031 640164489 279846229 270548648 372686640 743207907 22621446 435211730 452672970 671848994 466255045 165442594 108434710 289858295 707266083 665679400 364539659 19779994 56815996 360178547 872625823 246431301 89014802 720119381 720648630 504574692 610021472 592525855 762783263 472056933 469815466 164164258 390307829 436792691 872727024 135430709 434304060 41477558 847019130 106167427 440799068 518939471 772884361 344866962 968482860 465413434 238203169 675708646 649155950 743575620 499413522 854815367 255070185 845050563 533333392 484921005 731526278 596453170 193221606 900363393 322780786 436160073 241601017 823220501 843057902 19467757 63327791 717067768 728892105 210008006 281259717 999169638 947201249 581060085 64974456 803613433 869380087 757366661 239912208 427077056 961983863 526928006 667500695 624766891 508281811 436788966 189365102 515105722 95527862 136070308 928736356 219651792 155308520 246886620 75271575 201529796 176580440 568303682 611405064 264853822 174447703 317534219 188535705 926819304 515799735 254065760 755133568 219641662 724505626 160095866 611430003 970085178 867172169 305112761 302040448 329777597 996404533 198683227 238023971 152164372 29359978 70875956 724261811 894340073 120966323 426161509 67682117 223677642 154904280 499180977 403902364 303948632 643398436 58501856 449060577 235114039 462255992 227507317 224959719 422424001 662558691 556786166 963812273 685686759 360112141 168585649 420853934 255913093 892524879 777180916 729668394 15011447 624309057 60722798 679994084 809801174 338778624 177881908 92919262 555775445 116800212 34673764 452078107 316672724 21152605 251389677 946117773 160740686 198717260 163229554 977769782 241717255 248993915 738756639 516617853 334012077 619011544 930373535 37849038 337400873 297659471 733179338 142575908 108361580 811118687 477641313 327651980 964552326 477593954 960542602 133646500 618810257 625087426 917697932 856987300 30986632 937360178 759840402 69799800 94488858 298862087 276766600 699435465 829410858 380548856 362620951 852876122 2412662 655222356 357583815 208921185 171238313 145740582 888642975 759678655 231984766 598982050 733433908 335979586 381222229 148608342 82689812 913061466 950865471 442092766 427956831 87023135 875379270 587681101 147728383 146652590 311429830 60926881 452303074 48721253 84119360 976406793 399159046 392659876 955079112 862156219 292273421 611552783 976450325 95050688 211119709 708306683 199325938 636006917 859763841 627931237 242867672 246460618 445932248 551036119 391432651 182895834 154441786 295253458 320447981 659953023 767570087 328246297 225933719 959681590 804339225 339430537 773382128 22688613 334105631 277854899 743178568 19586743 621914540 790831993 271544562 860804316 490559793 948017493 775808136 802740224 696624187 455403989 190218225 326022136 921431084 323824210 463206825 91569249 275460399 181764273 913843422 536494560 879392077 3342510 487741015 242617038 718755662 157122900 372325306 125830222 700892309 22585643 542792376 370825160 594134657 651754988 203763026 786880600 790755266 489472885 843060260 608933118 40563217 724476608 779546625 441528799 782752444 522587686 348172001 248756206 646067078 800149046 957496669 100741259 126048167 778967144 208019509 700019117 302922976 352510232 713698408 645195154 690169200 977476721 628969167 94221345 949574122 786098306 51884451 70422775 155348219 298270955 309799552 755922736 781424405 395306750 407547012 99184919 865714836 968243676 331350242 816432887 371918102 415760301 244624781 830621926 212043942 299782728 864005933 488728641 344934905 804341578 17013375 659116532 812512262 414223207 572974167 128852641 901337789 22903087 475756642 710703942 308516049 985726406 411420499 156252472 256878387 368464909 447349765 657132068 308182066 635580967 538511813 121047646 502230987 319993971 515014030 516488208 993393974 814753705 610711291 327227138 57375091 982862498 634498322 727706944 457835387 465563923 151135773 726294021 138880793 184651821 31022619 717421122 47416294 908568335 790886716 153464331 57624722 8194170 397210088 278904391 364696189 632658500 320282292 830582498 324093815 178536248 109400622 178987687 473469537 155934388 55044030 795292357 994327176 739583702 39748483 621912007 481798203 137668521 467369278 512405470 38903217 155969510 21639264 168893203 168064345 901375159 443330445 480882889 686200166 568760504 921492511 442267509 179451464 401061657 722271771 949586947 594494061 318473598 810474081 31514679 366064170 941229040 674733087 187065331 559067554 311798861 70440134 109536845 287881691 445502789 561506793 549599421 28704232 291728815 639051449 588355374 662779467 119069350 515849008 627850212 912507349 310492280 497095530 47373179 647015446 260132526 476874464 367079978 99301093 199182977 990782475 813493090 435889531 537263093 48789357 984754187 860878144 109340070 662010599 188494833 159771704 980257775 615137882 622995576 356857082 755178400 149384453 32251939 594974511 515006818 871440072 532491410 479280276 51756363 576507132 614425220 444285614 949982413 951797221 109587392 825278536 960286263 414666472 670575542 983368206 811578945 454272426 815553545 373131447 331869408 158091173 624984301 956364099 920302222 332139013 380270694 540856355 542909287 301462040 367506841 376737377 835980410 587286755 909196962 73811248 729843360 338667446 672985240 637498553 692099334 334266249 535411640 14974139 362824339 460972817 704845677 789819615 983842995 146329515 220720471 886107554 617082829 321988524 219782323 571410540 560969136 535789955 933503747 623507503 603423690 135173504 624078340 615119347 743236592 287098152 600754910 523025376 643683379 639077536 920032884 350492979 653096636 721487602 540898345 220990883 916043629 788698588 224208083 512116330 63622333 854806536 724918935 755527551 140375857 53922890 661332732 551768338 288952911 186900641 181417441 709778449 671970850 289339061 701398577 138063734 411804072 639752753 2993680 863903108 763002302 524693857 557126096 819658528 947382327 29199367 750697543 483416618 529898303 636342787 486032048 276680970 708720463 428144305 370052657 24271400 879433899 666007503 274560895 159132904 709095851 633694507 711743351 980305295 324028421 177583651 298981102 287054583 770445668 347350891 760253649 63260167 26085850 668645642 684478108 845607224 992415553 849426632 264948273 698635325 23705134 219226036 680100765 650280198 635231200 492226287 15142798 173115877 104889454 556150122 250287364 50401774 359940168 29372546 232346718 658255781 735020057 908008653 711591006 984104963 264469199 834366744 430113808 477059879 45425853 234380764 802601885 607780771 712635424 841660906 906240379 862041160 88415507 416478921 844497972 820657070 949652826 195560412 392680164 19544628 99340695 378930803 495334523 126428200 132309059 952520449 946321804 917091203 410542149 951068878 817726387 993308866 624290922 301039183 137501714 684504391 252566842 289508560 288472699 314722413 158305916 984585288 235200878 155700175 262220155 899458372 514039684 317639168 613975106 496812394 631143086 452597718 867301882 499013372 903091920 564504040 185321483 931011080 432209424 993304384 661583560 53335330 301009027 660374622 339646382 45730697 87932821 195395915 317277031 877601760 889420457 753093101 363279698 521039468 857817170 590019133 26091813 253823833 747990556 648572501 774426056 960501762 146192502 174831677 544375480 688167398 580538580 86807554 533754072 789408167 657296869 366238001 785006811 388900936 514050972 210112999 455724221 562370515 865209141 903363669 788525031 429756475 164373247 948461174 612257151 928163653 693322987 781424350 899295733 825816825 625982278 439712531 600348948 684168739 152322260 121197976 535816313 657048475 705064823 92734146 270810624 24836367 482278586 959536919 871395795 498767700 57638030 342337561 292447939 24448206 636057410 431589228 941261568 562524466 522892284 702099213 898547386 730241843 720834404 126599924 736607863 536624241 775801284 742151763 88264286 645933490 653152287 800826653 227027437 97680976 397094501 81879251 70370354 95704723 563589720 3378795 886380295 684026564 226711223 816081970 347345599 471606277 804123651 928653935 723300720 412535924 310256899 500699417 43654127 989134756 770213149 238088412 285732072 372439249 673880141 112344394 297303035 127462501 431869373 730264255 963171355 957170452 953558551 895505562 383892203 88924394 944350221 565278949 930693361 891836827 798198820 828668927 672959683 527637715 977467744 291429293 269196542 210567271 968738620 781507544 319593921 375854932 437114258 810324259 512217803 87181491 902307584 76629638 688227938 439836184 547230131 334226113 501971627 986385200 438053875 793326911 230273250 523962112 114739100 207920719 255652816 43710553 536679420 796289936 870528591 957242780 519339338 972061407 939333698 33895820 77541915 728311887 239168099 810052009 138338571 609820822 996702543 514077200 934618785 344041430 466072822 769065587 591544212 109419274 356824894 310501581 145289044 666083453 988994348 493278922 904230469 300755010 828180715 798241686 819391531 979429499 61062765 986082468 358192783 601351516 969453738 714237819 446164232 441519931 221264835 615808348 694706533 716013831 897287700 305481594 919234688 801065054 10712618 10920323 505682963 174745915 971808661 436772040 305853645 448991998 321923591 551673385 399282458 130457280 272038719 557283628 401594981 310700988 764565968 644036372 217990634 379366438 251708374 932148232 295033221 68223645 3981920 44602515 775251510 686792305 525380718 945001824 613611689 463209415 461526846 31994192 327368401 635013370 180728403 365084003 598309542 830607053 663960932 919141710 551993296 373770100 798688022 692378459 30816290 246924072 205380131 744039389 412525431 7284655 513381642 653768153 140716011 422190378 966584184 875160049 120193156 993726461 266647378 368362427 115866683 731921180 256946325 667036352 632945544 699365449 545409251 249930033 259804973 275488370 243340774 808884661 319745774 693402584 684937783 816644819 790721624 436938608 577072216 664198133 150668759 212181977 421164650 354461022 922273327 960426283 805051272 147783096 582541165 118535882 438225478 842865683 783166005 529953121 787547044 403505681 61202009 183374810 437132688 401873318 220218590 582266468 285887941 641701769 686346751 688404175 3280474 66959746 546753419 341843933 24765549 186978397 599155585 163738431 833290912 6078307 518811426 73057749 483793709 777601551 432884177 947500867 286614229 986397613 896268790 391234005 326628059 281158127 890086750 684424321 434475529 704964465 573473016 576434226 319307989 245715154 386004324 908409866 701106970 805185175 523861230 694491554 376484461 631529418 509080105 228095497 895263823 736514848 965696872 135684704 41483082 646950860 961206345 725937682 749975490 116508268 705496489 999838522 452647449 777269463 987975263 397200290 783141625 649999590 454228987 517980053 32351902 733176644 62302993 423467493 449930875 528843511 15578129 106727452 171416975 740152453 539924742 818660330 409166904 585890892 633884752 756791908 99543850 878668008 464021144 735425278 193028755 535180962 480871193 200658858 97071942 213776497 401581994 188956714 321296766 353935498 584028708 37826558 791383020 522944895 139652214 860804387 970286011 876006113 499931266 707860600 399804660 607634695 445532162 876782957 951190238 979486160 832229520 127854512 291714962 699007624 519939753 984145824 423488982 970580801 939752142 121442756 895542884 49193361 542306607 138043411 106348337 319420694 710519029 742291616 93190800 330369525 862905063 489642822 764406438 186397491 667489320 247631127 955353563 684003179 563760032 551562074 27889784 480198695 222563930 296808806 682528717 816005626 891852658 406284348 95412722 217100937 32728362 474216500 582818985 381894328 69144610 876017652 208053229 325683697 163577431 460735013 758728522 532102365 642509903 662473446 513884681 685836162 18940310 384178132 316352376 723050565 241829581 152116846 405742296 89523761 327815135 470507872 109089606 453939953 390701487 620672312 920166030 685973009 783852632 691182808 627848418 459886197 6766000 176807151 337029222 581833847 265474104 655894473 666048308 744514230 368296290 618948992 953176829 53495567 226513036 11737243 800662458 162665826 744734181 62800322 387386522 811429634 639486384 280389631 802163356 375859315 356071372 490525190 655076250 257035992 174262470 500388197 580719912 640975710 294089374 978372652 740954267 686339214 33081035 188109949 110521182 816741694 418411252 265421471 122878354 564517386 810955900 839050348 788108244 596903485 675672446 158527962 490333824 938927083 510798941 142425697 72208396 293972616 26363719 428853267 922621922 376636418 568279489 749291774 325546638 543834086 147785818 652833421 289311869 253587492 390414299 761490495 866540119 772369358 35540845 291284608 330033552 874641572 262328109 823054584 374237346 650642784 543914820 644934508 650076008 369160187 349408120 640597737 46287951 610326732 613062131 434601982 922781523 554868759 148700910 398967197 903857284 430912457 342297727 160712650 311279278 194192716 983021122 243032679 391858372 285960389 42565087 651783112 74435234 244672465 588363809 112662485 595467123 86565204 515193493 978633764 952298333 807820678 4122764 960282728 26998145 934974930 129701553 681252968 358393714 461634702 464667897 170939504 167411803 841521498 468708344 825275693 995417421 130779568 309153950 72031847 965531907 702906838 627959155 104290634 396520843 684907682 26967001 221070847 987436673 126590687 622099522 48995971 604302126 250438214 727741871 834066267 650170492 827090684 623906879 605120570 2482249 743460788 653839441 918336305 407061987 840149820 958520790 846329944 428765546 460507537 722560202 342231097 944612537 159880738 320477903 457182271 579776224 479174989 990254224 419271729 431881193 292282574 198685299 655620122 386763648 382056718 995833230 1730695 695459933 442632679 636536799 954864671 189744398 615725866 278164052 415406100 741065349 467550542 921825714 368286201 68280815 908097664 978881095 726815157 177533221 448263915 417646437 981398273 211870703 581310484 274860393 228753353 113995968 869882592 298205168 943505042 851712408 724823813 149906142 974568537 276735577 170362769 81732849 239746527 408376493 262704609 967721675 360745461 578495521 861471105 721735099 495721491 115674962 804150470 779832771 269512288 509201326 765826738 441402180 843930633 512565096 591790031 877752652 574499016 471728985 872246743 702822077 328017521 628650277 37367932 420774987 37455129 413967586 115580014 632916556 506129806 911393135 81564961 221697323 693154439 615685693 534811048 955624536 568029630 143486961 353746634 163774345 76010247 456934007 685960445 533774033 588720843 923040199 344257280 61856634 891597901 998560865 538144938 297197548 223863942 45924422 193133877 626267624 69686502 860753625 154831547 901682172 895019823 76986 921947898 766351983 543260502 468590018 232850238 866135864 196215093 252755414 381546558 760667537 150024511 463759684 309477739 873406249 801371293 661107782 964854755 202220315 803849614 558667632 910075144 765341160 330759636 156440289 62254485 782702339 210875659 609058676 228028575 155806805 424132301 123557558 765864886 934052409 631556117 761403753 858025554 752371010 53040206 782611405 646904990 642221450 244717825 578028552 329698601 612937121 437855893 789992759 771425625 938230481 278392316 403870802 663695673 629784273 890275798 252082342 553036214 524223935 70369656 742775236 351562201 955726504 582627526 143778745 855399743 738209813 119112105 798563940 54758659 699758676 752673508 451613669 846938913 886019939 405385375 935459846 865640578 24031524 701242470 154526260 30288138 736146637 385556406 659146775 540842983 793881302 670054747 904447511 551461997 279409876 211751843 994039832 197685226 659407592 469300788 105436594 469518983 673940421 207933153 319047930 251537000 929270929 110331290 240116866 9416842 594812446 2603924 439311599 888357425 755400617 45914582 127794084 867263262 432509402 389208470 347652255 754989368 776821823 512572050 892622629 763129521 325282032 457084975 372212056 595018597 409025148 602620372 494404572 186648168 305568654 212480822 245332318 147897448 947485836 64100625 293764315 910469088 819851348 741897872 625612227 917584049 499025799 147054203 946025820 35685886 689047580 529867543 223602259 194365628 847048240 589840380 64434946 86289582 962077700 889854686 41099876 925327166 953315008 588971825 26797177 826084489 504099688 921468109 790449185 564078842 898846070 736237523 617430396 769730310 308914259 16837603 350760231 844320763 681355771 899274006 580224576 740871374 520261107 742709225 668805749 660877398 997318160 122784315 371318926 84371453 196170691 587412100 29401322 935701771 98015455 866658358 194227136 921175970 902776191 506578985 958998450 919887024 627700865 110334357 647631062 497663700 88728169 330478146 377794111 652003525 788274269 216280788 965439603 507117020 550974608 70101446 927760966 363745691 483862896 607045827 159944466 73590468 627429831 557094119 505575899 183473754 206114918 634989075 82073385 720983847 717064735 943812820 486125334 377764320 209708334 722814671 650525484 985099295 745116923 284491705 62243445 237724587 499493976 514033648 623766935 410174455 348933269 95846684 169894168 114771127 843064820 779249657 103367050 796708072 173596381 314512228 596575229 40048177 193203348 438594455 298879832 794202930 974111348 578602637 908198699 468542358 745906532 596099905 379218108 893334523 263590647 800556069 778198212 892546527 521821407 769502140 895804597 224144496 507291039 658558689 61351994 98876098 967561578 387686169 649650233 658703210 789201275 43402382 644146008 593604912 533169905 976438398 359490396 135025431 436066145 166081284 307496353 87086750 61327374 734699249 720157178 729158583 303124028 862671049 718447168 143744052 448421052 340048588 787283146 329387569 415257490 297105245 534170444 619907836 565400077 562782266 129196296 202845315 750722916 673371573 379190230 472081643 795005066 490839309 348997058 20518673 234874866 270907696 523282496 679720362 911708621 473891965 492796923 825301402 765685377 685050907 667191078 926042343 912101422 334985261 212810441 787038439 805588503 630423997 797136823 836939869 991190992 821702470 36633426 643582376 137930560 923657590 997697583 885260920 415918408 364825475 728935932 11570866 33706078 32513981 144341531 297520373 345478024 159509005 616344514 464667052 561706032 903525628 917669807 555033689 292673686 783711953 880946161 440570327 682079792 251697689 576933042 902558629 320683059 215873058 86974703 383739169 810891345 597555744 608760285 509741724 64351661 361639026 595379893 238454333 296714999 70118674 599961363 657130498 576594763 317015628 743708983 98552996 307365082 654215419 234371705 435501463 389125938 453021217 605990666 909526506 397341450 471176999 351997641 70966560 546981266 268272100 648776744 165134567 854837299 585759255 742426575 13478564 710959167 104190097 700410095 332077250 533851337 181697609 427488075 481970351 362719415 854030127 862571832 429475292 913284367 800066634 636654881 314743868 845075936 234679878 137656332 823849023 401124681 42466095 320550241 76746564 282335653 399332887 69863236 290058457 346480421 337094724 908921512 573283244 116356857 850387063 468123660 425045401 635796678 841745494 567932861 674047207 617529213 695854915 774294579 643560350 884928830 622581601 365458742 510956170 57581068 113694738 644968335 45423331 949615487 69399708 231767546 475982741 208723908 165179891 619709264 674498822 981078028 773606766 884391909 554546858 820628040 396820660 21911946 99542545 983417046 200250400 577994277 284679636 64775923 88686286 386732202 171265184 732217574 236406079 187744029 650524946 327324942 909435648 208630266 519166322 465348992 740969833 13458419 471109945 256027203 224573714 499248446 412200841 695549869 579229622 25533052 481748588 939935012 264244862 730741179 109903547 912621647 48874048 978160984 782218741 596592683 339645798 366756330 637714502 465815732 529063571 504287885 970853880 245185893 756170663 31106094 208008387 372941368 997521795 993877210 678272713 903779675 801248974 127577913 367671179 194288966 261041547 993407731 892578366 492366747 921075456 187486449 633916413 986259047 538486224 849022580 282897014 18000723 11356664 267171648 112339454 358845024 619389241 869730224 182970287 113993053 889438725 478808649 826190890 811053859 455858076 741508288 558996863 328644758 984734563 660438336 297722961 583673710 72638974 449096966 194959471 188108533 102764909 566762296 192579584 185742532 735999166 788205851 115712076 185600444 302085043 889516143 465313057 201262446 175425499 18347409 88579677 962725916 638145996 966055253 306160972 460257581 302760696 748971239 782106571 235200533 317033078 871127134 171319990 405332018 767477024 336692325 115404513 124557395 653595628 449492187 936934779 270583999 805571887 499969780 183519296 325948968 878947391 279232345 252908919 212872086 914344348 969760189 41555957 575670702 196378656 490519133 937612689 740886665 552673986 977638539 404800406 133128263 231077179 34973819 752946390 757313920 730609518 199170988 159276386 304992661 246118629 176051944 826239343 140611793 405110236 898527864 802072558 165102618 56992454 563032326 81913823 179431243 370684722 401444758 264191689 634350754 961890243 725774992 477444156 58188843 275213890 71087483 559777749 747593103 707033716 52520036 135447173 644703457 910953295 291117859 250028230 853235218 663592265 250685643 64075218 95196202 901920006 252601075 326546366 439445938 324590652 600171726 109650412 983649954 697586508 907887422 828652032 548310890 566726311 296073612 171217945 705061955 242770247 457326341 565100110 191828654 977837719 964005386 498072448 110131274 142906188 271454505 676713868 306981935 724832558 185423058 586846086 311759871 554722899 915750596 398866751 849984910 73917393 694494641 409234027 127439127 466416390 217026140 119579244 328095113 537414168 580390095 775752220 190497540 109241670 413474726 141595898 384710963 143224618 745410392 518374539 94269451 819005241 298939994 702272661 514204955 205935698 413123472 391422160 794919915 316103295 258095307 760626324 513448587 682388287 91105989 70072863 659375260 782964762 553171877 530696966 317231508 428333094 606347962 307777095 889186359 417515283 209387115 59216794 502977863 885160839 40802167 828314775 501047005 334742176 537254532 377335431 934879315 357408871 600052164 384540118 972223175 452626181 267035643 577238238 183260356 700975031 820845957 312212657 996119102 257526289 580149837 829094198 355667706 701765272 579615324 490716813 566350863 905664897 694495742 237318413 584853730 287543737 16130070 340872794 676354273 759289648 209281961 644642401 786199178 282242403 879352103 853110132 685169168 908978892 77919523 227015378 678233122 559498844 831334642 416970011 837283766 485313820 418163167 504758625 341943170 814379422 433321204 772845699 559959369 702015653 395979700 298754354 885593310 339271115 588175916 829523516 798565998 764921517 377142819 538198421 413600562 556267080 71712082 715315048 359992709 837702308 962975524 125379173 456521611 847426103 824648764 263065700 121372033 708339688 117355888 808171806 940094340 932097347 792158879 273311770 717167057 47377174 2784708 65282028 46151981 840463185 109686637 933401150 210558205 95711259 775900432 41554242 586481204 918484415 461253923 577786090 993882085 618453970 929373483 998487220 263291065 410406657 481683853 384725762 511972699 204027108 193265956 303424427 528620255 316798550 763864362 923899709 929488859 578110866 261662070 668653806 600041575 694212169 175368584 511150250 123843785 180255053 216148433 955123322 526170493 37031857 680418342 709641795 785993176 145652018 661339966 112384718 19371579 672371925 116878875 508928210 782024460 284228235 160000891 364829259 555380399 97885434 714765421 974062487 461176539 196622347 549311607 574740819 492320354 80300625 776533655 818915500 485531167 157672206 624249754 195029270 276647214 567075212 198153549 470267657 387271965 628318070 257744758 315582107 904786072 308529009 306984718 531140715 461289769 724210421 866488630 503172962 444534652 959389107 73416450 963015654 518593109 359475620 290537081 659306229 643944387 703258682 923593387 159695087 163585837 244838613 389437185 311378388 501492982 341866958 324296071 175046633 875916251 517568473 61071992 715311728 558852367 88836105 682720402 852949075 179046052 953112764 85602570 942717996 179671275 477372163 797727671 940806624 685169677 141243335 176581380 250375914 196794996 719147222 403240505 581602274 493716631 752178263 844933864 892874264 998139592 53568581 36456698 342588034 554786055 325635696 498289587 946036962 719352297 365823475 115195991 123618063 479357020 463787861 774539379 254140870 911889260 196724229 48160239 276408401 293084683 946020452 118996614 611657666 916032834 944200104 308630359 79102568 600527657 179583890 33687215 424944941 627354491 433267592 923825016 32524690 732645362 186792980 516427222 977521922 421069564 737279890 456185170 297924933 172539400 345058082 916063649 138905609 928407051 860378685 558055652 644819409 750935195 212311031 244690783 867570117 285172865 790682365 304302729 619568829 173192884 929621971 527057820 419174325 267632925 808566868 143418648 970084679 342928658 999775377 876718767 618592035 858088847 706052566 18905590 386185146 643487493 245981888 421978631 431756191 827933510 103967345 318126692 65644614 825493046 639527457 118375893 228529539 446103961 741583172 209824655 906414812 985086320 131783430 641133091 308359365 861664714 896772535 351558407 984826814 199742820 121183844 103571581 774185187 687037879 295924374 682337100 286143065 715258214 756703389 544683962 28880954 328385313 532184416 530742837 714036447 480205281 54260429 496057371 148924659 748540663 990609570 662502602 192245090 544411544 334425829 287841315 830286353 344639766 868333448 233565556 420486684 118644116 279496154 565565783 944200756 365948146 568221183 64821394 797660093 793042197 550632594 578079269 340421814 428854066 370358835 693175274 210124454 444393789 173148184 172584477 436914470 123029098 179793595 933072134 431803389 27389423 610083574 378908238 182756836 978054499 477636603 366067934 477355595 652842246 523418749 398756731 69791352 285081320 691621722 639293186 590380041 623456162 487166802 116859835 630204584 442280794 190337558 116879374 710865413 846020708 717944167 86331185 672578704 565751845 15705823 664739058 155545659 211669542 700197803 679241696 529723010 274354227 971836884 139822816 897131753 876299507 700270701 99276671 591547248 869306791 72743559 17271741 972655592 162728874 955004736 590029086 771015622 532257668 886684750 256056447 487565934 896326664 171090371 795295533 320583885 105479883 428926024 375930651 898761780 235691740 677295833 178743827 204375125 454960131 919741215 960239672 233716789 993797252 628375705 163266799 555965632 732443796 683144299 842869880 319185118 64023890 626738931 990791464 453596353 349259797 814888291 815227721 163597854 262580587 225212950 168554067 464204283 559936692 161167706 11759650 655545987 590486869 654866523 786073655 677793192 969199987 512591707 686088507 151416325 492068991 11652964 155273281 989219254 200941903 259995436 27790703 908887281 55597418 682906528 81877615 576240507 882821900 38715303 764661058 539969086 970754875 129055548 833652018 662666498 827268551 246726112 531665211 727873135 496180760 543542745 252632065 828330174 226727665 827068814 866994578 356378733 296240811 907781681 903260221 595330558 883732293 1216499 893701683 866075358 214585738 878267715 892862754 44644795 319273697 211727798 527761584 506646790 185365623 59860708 30129153 660369487 73555189 314769580 778133143 401787363 204319847 123232241 421460608 755901756 274193111 539534768 998138845 708789076 867531213 780705996 464669440 812030962 266629390 108251265 678601878 756106343 350434874 909087770 167777261 213841181 395720201 523303235 264806425 337431693 380551461 245240328 208404008 594024140 592760750 745644575 451817873 229266711 27886316 757510835 597701497 780952431 517055504 811918756 170561236 270560184 843249610 563648520 206715185 831721674 73281867 440440106 126954426 716891463 659568131 381366133 138605135 712689734 310795691 842383770 441227541 536508 260341037 425831647 316370238 606934532 177537602 640315471 102886630 392317919 916460197 774976786 339928879 178563193 321663075 429378724 320139237 343759656 870579572 840136422 545271341 701327074 896913419 738050974 794892208 932055557 525602651 536134839 857914019 610530282 324706111 548053404 547800837 565316725 690293205 231070436 538931276 803413299 380495017 732287083 201053964 730863191 941253062 899582134 331569578 722446233 917828908 508787746 821774016 872880128 181813890 69918836 391533875 983984898 909600567 290046855 990746863 136030640 378802137 899191189 984435127 369415830 188244208 186700041 129055691 578135799 173033086 926107872 16847958 829804300 819524648 678802477 465395481 525022245 579184474 745419980 525978029 351885210 228968723 136075537 715386045 378462512 45352943 488227247 826749756 112644199 422582830 635926706 32241323 453464804 380602833 576042516 555728313 200402448 319250193 114305757 616599942 134613439 800995603 891121917 256128469 975619482 561551209 168419580 32563645 314525450 282200154 388532694 122060957 148492430 638976457 916663233 964620406 585436645 871207449 728833263 77864328 971648232 83824843 380757665 659523125 833023086 7574866 96316607 861644616 438623301 304024342 969196157 48579378 24608007 286046173 185813235 173892723 963298445 355823752 418027092 140263882 856194479 145986557 478440298 108648795 591416653 919494520 122930497 154762909 40322678 6184547 546847096 671426565 466020110 356274812 717221850 640795009 365045673 181715381 539141865 150677379 286346435 283465456 279504833 995188884 52916053 174033245 841203101 595606829 996733311 413934284 367690820 304209605 251903490 846571245 125337722 737851953 443808988 224777032 284048739 804123100 796846706 207251613 807511112 261260424 254402917 207450691 246760685 526009718 943634392 474504768 546749718 622826815 40548622 398721204 200032846 733874111 209788930 575916286 407641141 336843311 49192334 425218615 240872134 114780001 377029549 208442004 249864807 91791842 863014094 930007086 512557482 255822060 928415267 722200532 909332162 481983033 511801495 322441528 783249707 398675486 937182634 149807831 12765884 499928607 401775031 948328748 797160188 386492519 558602830 746209611 318589037 460686144 954493791 111036378 36754921 706899673 680320558 996364825 538137422 16368120 345239954 590807292 170463510 494527082 250796186 861013744 944767416 422071807 307065386 804171273 58829091 484199479 894185033 890850493 236441599 882992469 229933043 351706582 295581840 212163579 880464532 218711652 578644321 137009329 108755964 909268210 604759158 743129243 200307511 503757535 986038980 471811645 203708768 107628824 255479550 130928892 202855556 657352866 502968115 607945547 875293047 700044657 383971382 392345794 342231727 111680579 16541794 542867065 67449278 792802609 876888883 985255008 135361931 106418266 422660917 654738412 976686142 209937889 675986221 956325915 275743485 345271651 905210917 465868627 289726730 361667476 105554797 607680776 771037772 109719699 864576171 665248093 535004285 999217815 553924326 178468691 165158303 987237907 669831872 694642321 708148737 791073168 295481432 534778096 883772890 470710764 733493146 509620138 987265906 42221293 540129325 499753316 630329330 287888167 858474924 790773521 674457704 669177129 251599499 268034958 71785512 379949966 498942393 574371045 218500687 680281491 917977803 799960517 721297127 124058963 49107482 929877499 903951664 14315021 288208430 847181048 931449233 386474333 261189396 890604271 563157748 323764472 181251084 740525661 544355707 114462522 545603215 728289931 758924384 608786293 46740392 319362270 336457712 730454664 784489878 684748717 958939300 244687286 308596035 678373914 855921824 104310453 68531882 529765936 834921842 59088107 826198918 103577065 745872039 954897782 346048413 970739469 891124951 137439038 31578981 858540215 198823338 462707652 128128030 977445594 112389659 234338772 777332774 944732799 615875674 502110048 736615194 70625945 546249054 439752023 355411802 862437621 404777729 23701816 122921801 93658221 165932521 384518880 713569527 255887758 93951485 474214471 641276786 866432312 748696249 816715959 109857150 157908425 422515816 435330072 246246676 84693519 632998202 300827630 752789436 297595998 646993974 503765404 299269198 576169424 940043951 349285010 482287591 446171927 320823195 866967835 12504913 79684455 558293819 104200213 557108198 61944878 816391824 565655534 5232270 63588400 708939698 937353947 315666661 176552000 83406092 906994251 918220406 376818690 107830012 92877349 20905643 694314651 884635076 457263902 302236087 282144848 875486395 574231580 200436419 279694187 416793654 696971839 622995946 639672220 799351319 124251333 296667911 890567030 966092514 919893268 645839586 944455385 611049553 259923730 488728696 295884115 534755780 497333607 316822430 196303209 563944829 766224317 234520391 162288214 99469708 628328287 989321257 401576977 169843854 559085794 311478600 156561971 549465641 802622733 330067036 321323124 280791221 632476288 673265451 610815123 447159790 605907714 384681559 501549440 148181736 325891046 610736683 322149400 302816301 490121392 148844152 918876521 504982994 681341792 717942944 941184111 441661772 462275283 559969801 308226113 971389420 204796623 837079522 355023375 282064864 602616762 251969710 534483177 266429870 774968066 172675869 167941672 471708390 179843607 546811841 600529115 794357693 217855889 487109428 855251585 136114863 45555156 266062549 919634762 295602689 775990387 879056804 770161392 962968628 589489111 669362305 686387919 501760517 971796057 783828303 294224198 933689181 431864204 320543424 837175472 813924368 399435539 525755273 164425945 507814400 271787480 51564219 118246834 740331465 902443994 960394244 673684057 473659509 62198035 859633127 989535231 893654368 366382491 673965096 106174959 360784524 700544902 202602173 130290169 916316143 22117906 381643942 821317022 665202687 667375516 597135179 541006935 834243421 994921029 5391797 769204586 317865053 443520624 306481216 391371442 704967819 155927321 78066445 635593899 85913894 473458553 470539528 883367517 801171729 575748641 441951237 965978369 990327484 245235679 5774106 902608166 748210344 528486538 410150310 135208678 753037869 339528230 439467751 868291634 700317968 537458904 941224130 458978460 272810711 636040357 825442447 869243318 336542361 798151489 718116970 178999565 575297987 749250025 601161075 396358265 166043071 499637469 909889065 779382771 629185713 189432347 209322749 946047966 793268465 189403247 813878273 852022017 105562104 379185210 568986777 814458922 544824663 1112773 617448287 309320263 943117033 5707602 420834479 815922833 400430085 796024327 562024758 573291403 932121874 383234107 245011332 658708229 686037736 805969227 306755426 331953774 979964147 205987082 201882853 688195502 146270161 50667744 196321101 340114926 356281596 338428659 775413926 108664567 769959987 706018104 541275895 868992445 183520052 906118527 838490180 867165756 312180361 213717478 707704639 48962241 129017338 721942838 318561215 513727476 433902728 134455372 392408661 910649595 263534872 30416359 855625893 858369315 165510181 502497563 102338732 595903283 351696756 440314299 391399493 651473145 318166614 493270288 456802591 907328229 73034836 105806406 666274707 341015333 738463820 924753670 286228905 517837695 960019350 810138250 854183930 891574025 369056018 546320507 764004119 679169033 868658034 614406952 801232003 736717376 588966784 581040889 419579474 440497964 792690566 170370524 544765540 10199867 215711725 271151459 285998548 538237747 944847170 613405052 337718273 834301575 139832879 461073707 854085238 570598282 687601178 120008772 807831091 747756335 720436622 549652278 585630095 278395050 2548168 574506147 420522978 357642666 368192781 124260857 268247527 567907720 814694364 314360338 945881721 94746122 778763320 57004941 631091447 166396471 164069278 820267909 527498486 486424567 291251652 194127464 542963299 752264460 680158768 136546959 254664569 492938387 192845110 264456231 349644852 99559551 368103728 919739333 562327652 881667107 678165321 915487564 150985 350619392 92637823 356644600 702636441 882818404 232293736 881652455 553755301 335639479 276609532 545582279 822928175 100388669 410386946 326270887 710362573 517201296 307713747 366985889 360221247 504920408 258902786 825966840 416673806 717997663 228979406 795724723 668743382 4017622 709314751 590463848 835825813 419151398 872662581 926387471 344477098 903400839 323192821 485945342 466063608 126590967 61671275 838051596 745865898 43003335 626913518 14635163 586393931 373365366 368059258 680361558 751961065 602353393 59416031 487505727 967714958 515647717 9093268 409344598 163594165 207257034 577985810 811659990 361665056 748470967 368779497 447684251 483212062 788973897 702479284 133637623 8455187 866122080 724528432 822760980 533877738 330117260 940825201 393170838 228160660 628118210 222017652 299605164 51637689 35763521 114793878 998688047 193614065 619176924 825132098 38811871 121101974 589705650 43752416 729898954 65259968 554388991 901929358 968125288 378659608 915253588 239127200 411837234 422490401 275536590 521807638 607598776 83781184 246142079 79119155 518495345 868279474 393434171 337508523 138369198 27965805 784035690 502188584 344300119 383811918 188103695 859771377 818759065 126859066 637430495 490154209 28237299 209270506 93355116 331244645 684202960 999147542 649340287 808418974 402996827 698064330 756996971 846114884 531997164 542055780 708424967 399332624 41581720 783944841 739428018 101329902 111083452 347958439 195511701 881282925 515970742 919694038 11117764 560121625 590509216 816074692 278938051 794267717 941022656 358127777 140375879 460996524 566833670 3413309 971003527 131857106 973772020 28136205 153001735 594073730 384158133 73837758 998608134 199540878 449555829 51163628 746211492 284561858 446962348 143082974 377020562 742172443 76089857 526872059 139611056 211236999 657907151 145099804 809500972 861304387 996475876 811447318 970202973 981811792 317477288 610408819 859316818 792053894 572690439 938102490 448407512 525342123 508303056 400948397 477432321 14285459 835933739 820582440 91132754 402363031 289052988 982235197 708438522 310002660 727964953 481690642 497388050 32099770 801331539 28070300 349853398 664960968 12702050 669329562 280226860 464017348 90192656 945632277 128789012 685855757 586955659 16804918 380922077 56754444 158457710 935371095 803518544 782102733 439398835 271177694 952062342 143357983 876467027 374165854 34061909 267168255 221029437 514680216 207356903 801275140 963094427 453813182 648015988 706216588 655463209 894088094 742920609 296266692 429896796 835208783 918729859 437865343 93217913 648895365 4352316 745782875 2897985 175252636 392112006 560994531 96186266 664372067 472479007 245361706 756922722 162273715 794081314 731710289 728210998 295587635 396190466 738585485 390263123 5644499 941624539 905320624 465890340 247287123 980047927 115564162 885857991 574138711 22447669 708949122 563521517 680053982 813448539 492212246 438775105 531833386 844017598 282461881 156764622 155865504 1340225 141018848 58443129 415270325 546192220 15619863 873667924 972763903 185512247 347026671 830615013 429197075 324157050 125295151 741726987 106952320 876729470 942742367 943114496 299525768 816838480 391777218 147757865 703765584 153165772 468040556 709561606 901122618 79979963 171976290 479492009 499024292 448306627 214092775 187609727 579492984 204277491 819451561 358906347 857774353 969699290 671979752 970316793 4017395 426337971 927878514 298732916 528190421 18315740 945321539 868349368 967333652 314559076 582486402 648704732 40576654 117163627 333295323 211005732 164022549 535193029 90682160 833382175 679590453 316767518 867167410 204455344 524346090 386374735 102206942 506347745 910755397 993215170 260723046 164034639 643254139 742528298 592225838 457936599 286341107 359019816 156400216 915689298 337359003 289413705 195085434 403337572 745783123 584235641 598374896 834978572 660650591 518105097 426931095 586126815 417060689 484907060 51864052 50329088 332105145 371918961 853091820 773479573 328140596 623517066 58802977 59479394 953464101 433926754 714224380 399778894 323507480 441142341 981316764 374494545 38368832 404207093 114723313 794515944 356810603 914149868 249099631 106632164 351301527 788284411 370725830 956613971 368573055 617008672 5403916 382635938 463042599 269488917 815706246 809186102 935402475 789128983 686066457 648558281 774951852 654485233 618515396 947816830 867312654 974528058 139721623 637151860 485254442 678040966 994915374 421425371 636601516 233323294 990656381 125534962 825708689 504034130 537516634 779294443 669935486 142656096 349308630 204645814 155915987 967245996 963652266 510405221 708361639 159196247 831192178 372638258 350630010 538854718 982523711 601243148 355706277 735550764 129316991 300006467 347219182 309099816 239588028 736760373 79896099 858239549 428043239 376059417 258145523 805298953 473636948 498654652 343208435 995854751 24707825 581943139 260101768 392742167 40923480 893879720 356065636 463772994 304233372 174706348 155963618 638725582 698485287 970200708 693999 642092272 398684436 353814266 754003416 153801016 403432122 923294375 280500363 189307398 565373666 552598568 761741467 214736736 705952155 854881277 650632084 818480281 43863950 865137815 338053257 258779887 216886682 90281883 140300456 129058047 862955645 7715951 981220233 629755734 497359342 261274634 882172832 237035002 22396259 209822949 696770569 967388429 405451899 66309974 479774914 363290840 201614886 487739346 749720802 51921769 389221114 542201373 214297228 809957146 551117633 690189658 927636013 43408197 696676156 132028999 889320323 618530455 687266121 66299871 842582130 499143811 964678337 549974851 621487852 845646218 213719607 350710912 186398625 675535440 333949449 311609578 525503598 83665787 614939303 125971053 9102004 21865385 799414142 834612395 742135581 795398980 601855351 371910772 650998113 678613184 898549759 156484091 450219359 189046929 770201091 67415729 282315237 317937229 599303806 50437741 879046700 439272194 432609895 122918727 132370122 482053581 386769112 744378168 661201732 576965870 251047884 627189449 933375587 398093546 872978120 666368888 315776995 27506200 95711656 493714226 183617024 381575506 81709555 699642620 842138093 499676775 52946158 687805407 80298975 996261666 971016296 270147531 490668319 365192630 675649451 465756607 913673424 13115955 286991901 327083877 185398588 580423584 49995066 300990816 883364540 570762273 359260429 444305786 11805195 66374911 480393890 840023723 11926080 659359631 460111601 742656802 913000981 752523130 949693041 962403098 988137986 76398707 119035591 114361228 798050385 521688881 938304463 571002945 151710059 211474121 267719499 402036889 750389071 566900452 289303439 842333738 876020527 805711729 398042657 484560216 595100886 19599136 623140614 741338458 31852917 876898168 641678327 756956270 910547598 803938149 233061158 703189341 799985394 873726054 865390103 882878082 455072790 25901517 424801687 409116049 422698787 669287175 863918858 652159361 521280010 989411101 985718384 358557383 261764034 826214053 60363242 972007250 96252994 232464960 773397098 625432366 400070593 510335194 785445884 323811160 837593326 689141234 769300293 742043615 474547581 857904776 192292344 315879130 694698814 718724712 672768511 614907208 700447434 971932600 388078295 471821674 464758806 720426967 981328150 429342394 614248880 483231229 610252087 569833719 215870020 841688741 20265293 200204863 57401846 696820774 618615193 470312425 751301601 35822504 165794780 757940730 794222419 373415737 236760831 681443124 189332667 212539745 479412507 675117713 702162814 129877491 484072818 543681394 815563913 115332624 773831636 943052881 460503714 243209326 475719506 277405461 409708031 558433640 143149468 821040340 461274805 501680221 906749142 577723034 262211593 79386621 889434211 819214595 454498029 849941501 65620352 871716454 943651785 948179560 688151214 82997056 122789195 456113491 386218781 450955462 22750028 634921173 204302295 527180326 210588002 95527090 458340198 702247807 446401022 112345577 191673436 790360854 683180615 114613552 9320591 952751824 439018313 825139687 994116331 44919722 476739224 839171277 255640179 168594467 164406650 585976507 864687053 201799203 87940671 221183257 302092572 669074008 567141333 43326067 546313827 2009921 921277667 932534415 436614479 145633595 949454870 230617426 221547559 294882373 941985960 957701643 186130876 247299415 899437659 960931123 51757745 267215017 640168909 462448738 153142733 768475519 299937391 457659778 197074004 490586073 536780980 776275373 149877323 784101956 172698202 134305968 142722047 43118633 319108230 683859479 630439680 572988457 979667982 450824867 573788705 88439826 972193836 560872923 603904183 391880240 389601490 222498588 392184099 455533512 147991355 346203130 530176349 411654745 583620912 81981080 641244104 363002891 793247230 545370977 616786188 344376945 681268690 132549881 893816939 880821126 812388922 164570862 640209321 954222772 614095545 135503264 876148182 913704112 36542952 585712974 458010383 693250378 718216596 281462932 978090417 846523293 873372624 907046628 829539199 240086392 522977976 204346733 431289418 285485871 287245829 327855761 74761167 564366306 983362119 485017069 483193415 402203188 568845303 486267141 344262854 304023188 891780883 320140990 980236098 29795875 199977299 869894056 132916620 160323354 143134622 39916068 199489677 148635240 681371903 332116708 839840285 95283411 533413599 549640599 655931165 827688781 664315478 584103565 724282330 980537239 282676904 594386411 380886645 250245010 505561003 210871700 767062764 672480205 686418068 205163533 719193782 222047963 919634390 512839291 715124898 335583321 33221607 427566356 390607913 609852524 707654192 495075575 515311012 638214798 565943942 467411299 405404413 750307311 820901339 313303619 986422965 414531569 957838584 110538553 845421763 465517522 101797397 635936297 814353519 436928490 549157014 491945562 366885406 697377779 14111579 419033719 944338935 640782569 973888792 256879722 276287620 8269683 358349137 350895139 254327046 792242902 897323765 28405786 470278547 851581706 40702061 934859589 638840380 644633521 818615695 421314899 595696809 973034294 134499659 216508163 913821049 600718594 559202877 788553334 865538874 588970891 548481246 507526181 242798193 231170308 20458604 864410525 386775233 335380323 861979035 980504888 347190303 92238105 250195813 494910626 371837591 532172538 303066566 77627177 540617440 563231127 749986347 559154744 657488721 972839603 774960111 374192590 681140355 488754530 221169783 364485956 960449883 538240946 24207054 661826048 235780554 378560371 896667012 761842549 554075571 345274729 278912798 166951871 704403370 49370381 226168079 308004933 984157791 558701066 972595098 423702817 63082167 815510669 520336703 604560635 567599449 88838095 822030871 914764020 332525968 527201967 217472903 982829583 348755946 196797399 924981183 969410812 699358794 246293979 989358637 693152313 635652129 405811389 424880173 499271997 725180090 111786799 619667124 846962245 845503054 69874536 424138166 235678617 863365878 990112151 127540986 339719285 827442293 455644377 486244553 752382255 874892699 29048364 893295206 555335896 502978508 65239224 760695100 912909314 218854000 287665779 402603845 353712141 549356968 777178787 529649964 624454662 383879072 507724007 812758621 398194280 814463656 749407747 384525941 723689563 372015666 987807807 12398669 910125542 231053568 883489209 98457455 330093246 730121623 202086666 980106272 734985850 12734197 250915381 636749736 908558463 239436277 610801471 448237234 671592214 966393288 73093857 165420433 187436371 840323426 19777343 500822421 469791059 490548328 942934729 663507082 670510361 542671265 189296811 76520525 497213540 233998895 488076888 605402154 901033118 936719810 834237431 547885581 479100452 470539800 674023698 985967576 359748635 885330817 893975592 830341959 206697437 997762128 723413175 184876312 266018309 327416819 743364045 818585491 280280038 113034199 82129811 256428128 664016415 666289300 546021131 380147769 632562597 292775105 879109044 962186710 453720483 8481232 329500242 307579411 401683484 215346500 514268081 504035693 225533081 2264432 802012517 585519548 123540362 9616449 182813393 523172922 134579196 887855772 84372561 18006042 661811830 918425763 991933516 48889408 280442006 168028756 917571668 551645276 449963785 444215597 978868981 526074870 414166919 734834124 905868288 747945087 801511993 909583547 596515780 845304553 166797804 186126745 366117021 836463366 683099992 227538241 833613481 669048870 401074343 867562742 480293285 230784747 351183662 694687894 342927176 25762416 983845163 441832340 456801491 454306325 786377163 416096941 300765473 731534842 981058493 219778098 656988466 233677052 494197635 416261047 871351345 396371580 125480558 38238530 520943250 322894541 568739644 668108199 137464824 733926615 190764440 604264200 66918800 765717547 324488524 347816657 435948732 231856799 428671717 742885883 704717625 602794462 348622630 17826754 709427570 174585962 495692034 117352240 104204804 69666983 613895861 157291656 890302653 636905047 568115746 111584314 55023205 548621017 550699542 829071949 912028327 334984067 713971850 825141310 691441470 445282605 772513255 80043675 913432291 913351592 728791629 425923685 583872778 677095332 792053767 63167900 40585168 568809190 753241637 850810182 126912840 145492456 943022425 611279503 979111943 464518008 675173632 579541978 397559593 167383776 716721820 613336979 829314712 585414413 830829012 712573377 623741792 187912393 162227697 393061739 146954245 54362669 643037706 589777082 168116543 479718044 837640696 451563186 802351033 738503544 379354629 842357627 803133910 61010689 900243480 91146146 151821300 503526247 487771339 103236776 31233863 399656815 239549434 683197876 8526792 115567182 596053906 378958929 739341381 741166924 218264996 115274434 563737363 784001654 38023298 214199409 413181473 324915093 709243541 620098332 198044028 728337233 344628588 837538809 681039664 61313631 483872361 669615380 287966955 708052569 236553136 834480636 602116318 909274845 60155495 619544957 723522084 405030466 871584532 524743463 545113586 51166174 313513289 298622178 363571463 314046181 473447388 782744237 213686307 631440821 657405454 916225323 830803675 755744446 534003937 171957545 715716139 304506632 498488324 462117772 937072422 213357890 972218577 172583026 661693173 144487062 682901023 119314771 738491334 474352036 563676488 9730228 596073469 852506558 708384325 710439071 631126381 202645 342806764 228560787 837191552 812806479 490670554 955147438 868113327 860228997 651270595 102681522 566237854 682313692 130237078 893740361 488742846 989687418 281694279 829901196 566851591 867545602 823711416 27346840 757196770 833530862 209608536 306056258 460456550 258521377 70980482 611056200 81693463 30410871 122153751 320233760 726974794 143426622 418917921 737341723 66945226 403583557 288489631 488006379 791802843 994788538 610357371 97817824 124624640 370267274 775699169 267756128 610316468 491937451 531561321 544463674 666351110 861380394 917669048 791080261 953461128 68477614 589980751 431418440 890208575 359283627 455988058 892587367 129439757 362343494 749865655 262795777 789899563 32992074 839315652 74902742 793580280 725639802 125482393 811982798 547373647 453267974 718911767 797008285 653152536 692269854 301090516 966803295 275369182 869872070 307055112 949653 998428264 483250372 630708123 763579513 292831956 275981176 403656940 612680582 958404062 761155677 925843149 892976344 475373157 989532455 758724510 228715810 667875333 469025480 43525832 747903219 137398764 753659630 957699133 934881320 675615401 247672656 445367866 816168853 111896853 651098613 221840328 565782621 783791780 293784858 702043861 438008764 422703358 230404072 946365656 152333787 474148307 824421048 649786788 332562584 943308632 46658295 579541851 669000444 628506957 745835643 874146209 680581950 360372813 964199608 413168011 497006347 640179624 56449169 613586515 781395531 770990152 493353697 861902802 584844818 796036803 297936719 449380914 123514667 840487839 522651585 941964188 287997771 361479355 198251068 317605793 378367876 920042576 350958225 696117166 466489088 477929973 689447325 331558781 951702619 765202193 359030075 558687774 561117830 484916325 966832921 976265373 890290803 767016172 770329182 659026414 354686100 106005723 421291424 183485 725861011 822925207 510724696 68263999 488572765 847864738 152567177 356924594 758987476 144592304 594642987 358825875 906487042 817494889 313629907 481153992 667430000 200374874 81620999 578413395 26762147 824178261 619365994 884077297 926734546 151674166 668667422 308125890 846187903 223906450 323816179 678126020 330435507 575888785 971849970 193913001 39814914 782116293 11092428 132525210 402251617 448758311 134057268 89136837 692271222 505613670 418667653 46079899 670059279 433518673 227157689 971076972 551815292 386311843 385785538 837514428 422942933 813056576 931512594 610243934 31995880 365849101 681265026 2147795 560135329 591421646 872264684 417522483 380870584 271248045 40853678 739421413 905613083 709512595 660085405 855875512 176659851 790142793 935167830 244094262 949643886 449244116 531844178 316673966 868994671 628165916 137921901 224780549 262364025 294399339 840408954 598484362 847034847 952373306 248379045 518466696 681745079 535601158 416610405 750914881 194462274 858219545 794935422 313653702 342405683 607608251 908684804 427587572 514104703 839364511 189353324 165735137 549098478 23311008 636829828 111905926 781580601 462090812 591694614 926100704 457448306 695943985 85219556 952314001 433717520 301835492 54756845 19843745 542137250 477154583 515718439 673742955 901409591 730839074 351424823 900665147 569253888 223519810 444907356 830376413 940697995 336234055 402372357 988093691 723550688 55217516 342335465 167396182 67095015 67018084 397767431 187033576 798771102 856023252 850519105 722421011 395219057 494688069 492474159 841994021 780438268 755494589 302013072 324567547 572519882 390504525 909380405 739556463 257267538 839651544 95857018 378710709 638276009 7368145 185202490 606529561 686828260 516123601 655160994 51805322 922998908 911073065 723832282 68295167 782110732 725848194 319303488 617292266 743347426 334230302 661079186 530282035 216145691 345416090 265529288 629491577 564280163 992184521 224617366 626500587 734458083 587327326 89710550 164979847 245937523 426920008 218473306 636465885 488499010 590772026 387346688 451645276 114567103 998745612 701152863 143538296 625155290 332641517 553809995 444788067 203328350 393533409 212780672 382098052 444982607 843896301 707279379 526846905 706396027 852472851 863570653 91021035 861399824 193958760 64350184 152975622 345586068 94917098 400886791 25418334 529687388 474715268 795356081 65634961 786217732 582111511 680670769 306572415 700898061 413799298 255229622 163650399 549048177 870865803 512418823 177467268 200736010 930675670 183702955 783850975 203658510 127744401 122791835 48527457 237853984 282976388 302646444 925650845 71675928 495054102 327219181 445748132 631092430 664018885 946798654 2771765 131577394 173344892 91090610 671007397 834121933 668786085 805801035 250570063 286224185 310174960 450058020 885834274 257695720 824142678 531721474 291042616 884830288 672445684 10456655 270576591 72879689 374538657 871309175 280684642 404595588 3255585 365459583 360978195 511236668 715473412 924483525 799626172 959943059 223399824 136142490 793765968 439051295 349329823 666081807 39060189 378611858 227768890 459086959 939640220 250094178 438520116 395153770 658142684 223162110 951057746 620343125 557707120 65015250 775505495 105314612 222635117 529884073 816160190 244569363 925853242 620406688 488200713 125490612 285956639 699617108 432151601 520408580 231472175 165918035 244382915 597541755 604477359 848423642 854064358 575649553 792874091 222910803 510211758 432986032 233646356 357717858 95835289 599161071 413322141 723245825 95675871 656053140 950663066 795264864 21745616 188993980 869942744 419487086 730706688 561798498 65928962 161111144 519016888 289769494 517737651 43153539 17812672 731909964 883362654 913861368 693649145 816918125 86678415 362690246 183351830 777873886 538459686 812480364 397148361 902102834 809932388 493230204 821442672 681079930 643247018 194335911 763573871 224777198 173996978 849839446 322081636 595217829 591226736 205114245 656922720 400813791 290256623 472496579 590128623 565006457 484491411 110990180 808550550 207492081 778908984 181205021 936450261 674340573 689145861 240890765 51600472 622952394 232389637 25366786 18997663 783343259 799610309 906301933 613484346 338991283 44549360 89832902 603866675 54279502 351094580 290893678 739354476 642588572 920235340 273547015 617067797 563001663 472756584 974952060 848492105 279607999 420739268 317339678 478426957 504563741 947261685 337748617 238283743 31233250 996510551 363360387 257464984 703563643 316750406 215669388 901158566 697291869 148966500 661680572 303098164 725182734 972378265 390624960 324822145 494710129 851158883 674469220 707024546 701044214 408168586 515464813 851209228 928906705 930859499 158872842 371175414 423813088 39355864 375765309 558324667 729447251 484086365 240923137 624095228 404753484 268002917 39793702 546406775 975517642 832451729 553345585 661180380 618118162 361909978 952734828 537631833 709477962 734254757 198566665 671611870 49325449 973803519 632335851 58132055 959227979 63059940 571989566 818362274 710112484 718761302 663517239 791254620 494877070 255144716 832496684 973109647 845168964 293168451 892992592 935768190 200699382 313145766 243847471 240197380 958466296 532159962 612787521 149110103 182446903 459916626 193883453 762509971 229948392 570036327 944909471 660706407 864954717 357346716 613794503 436821752 126728186 710910616 100841359 260997247 834152067 533504054 261199824 661049707 652403069 88283608 686026355 993230505 828556449 99938442 869308524 434066701 526481644 399964713 359488369 44863693 762653449 842740414 872103050 933982506 487152902 101311686 240815140 114269671 923294580 508371820 33784776 311291964 141117837 562360411 523617962 181361705 264065499 271634791 29315717 156260440 192083511 540183404 570051288 881052433 551282880 793955607 835532837 812280896 311434712 571357901 555240657 284552327 262727118 691691245 383944985 375685851 307862190 459492633 536887439 90688544 820733174 145468516 543393113 454034325 498219090 313001327 674169250 960710653 504890229 645342873 51468717 68069674 27882810 192251834 75495867 402066118 909680580 628735533 260654532 883645873 202079693 422501152 787772928 204973448 796911142 492966785 895425191 131917624 937864509 357349513 787811219 507396137 964874378 644560210 608014036 684197451 459282266 617367872 449589785 185543869 675733714 763855152 735091583 39454373 768720841 418001404 748932658 596079717 347473528 728210969 130737938 144982247 977103499 8840929 891857871 586093087 847776405 460271050 199796243 507005811 959446620 66799707 74408967 873264321 605125959 332529258 529968433 735744384 379029627 257603596 757645461 711240122 683460562 62762178 15495600 366026674 217554823 510906961 757719184 388099901 494844170 9740614 984685836 937226039 869642360 626164923 715249394 766860119 492480506 567097154 593022336 698644241 598526157 130958040 494203731 480734130 308906811 170002890 765812890 77293334 777733736 872679212 94382029 337830652 68957950 196006293 638842500 716764571 215477627 782814898 994504473 698175944 818250352 488050199 533049933 340177063 478423757 419850315 676006449 608976189 643591997 20111143 516254163 339220292 215147033 527711943 366921254 74716143 843493820 998550865 14744496 657315727 68304959 108197437 855118921 498075254 492492807 34484397 726925301 713296545 889021894 784589111 480985182 978568974 901922306 869363269 530385623 913345821 746484617 137028744 722976871 371372561 676991341 242076014 810036274 940287532 722755901 274020510 571696507 348160905 696093938 686916409 593356607 628182593 425206395 94142204 541861265 840207354 474750044 748651340 534428462 909302912 381843934 945624900 424029322 665304827 634715701 410687655 58760506 680613320 527110354 195252944 304685246 942088509 613443594 585787641 495630698 51130237 340165595 765626504 799558111 599242895 747512845 172873445 155842962 702917251 606677901 200932133 294215669 998549501 426070463 359162570 335834673 728616347 575832062 245185281 831904491 205616589 167746898 910554690 354159076 417452049 959067686 716779495 85481105 643609569 991392766 400544718 12723760 314781969 354666239 416083779 736838385 912232637 733768605 629722254 969236531 173625248 48046572 45852417 532576287 73782994 599307727 812974131 274940201 341131413 643321016 936756531 870088921 479948965 385415618 221652873 331681407 347818420 622056296 150146525 779278198 454254083 551229492 358906428 800740381 352949453 920281854 708991331 309990216 521899964 615252555 532426934 778062364 724041780 632032278 511029567 480891395 529995964 87110693 161551209 409993462 327110305 412485042 793091208 985092852 866267226 531621749 108016562 779473095 258075591 424382423 111969563 46832883 165572875 571508835 594283729 337095451 867562394 124990425 279687560 342362378 76569 916011295 677950030 333907470 780372034 820774397 815423519 893863369 180164987 153079551 449550043 906221969 7991451 620231623 985462546 826621284 469664620 104464955 2808754 548732242 827616176 988335939 20927407 982378090 671710086 503695748 74133729 186722098 150059563 871708730 162820349 526592098 974682370 612044769 176674916 199663 794022392 680962390 441276880 184516841 94408362 246282152 37605151 77340194 264818940 117702532 661081051 180873969 962905971 45963625 583236480 845016120 861784618 696067115 795400259 303388302 883469894 28103802 419029923 379550738 711288553 856078749 132689631 463767094 772249821 878072706 998522918 549020127 820902896 508333857 378510348 857662715 465531611 805375911 649934332 182369126 917933857 764281002 666720666 859731919 123457374 953545240 540746311 47180495 995057616 319644708 838237759 236051680 804400483 54973738 476500050 383095724 759888317 12502138 331792751 749201183 808497297 739033059 475204060 684899955 266638347 32247049 776599937 741790796 629716622 860520045 909327750 234704756 442256306 184850190 38929272 346085547 44949708 229927448 206084745 307810868 473445402 409515144 163180348 48696839 577804450 568150596 51820165 199187802 184002825 993311430 22203037 84341879 184771301 582763977 136898993 783621810 105285128 405757370 792337473 647389230 606141279 478357542 475965572 594612063 666295945 915081392 721555685 899749275 505623654 35838654 740706901 797888521 971064217 110978429 345370959 524131780 82213945 115712997 93746109 82396975 482745041 361816796 950283686 737775794 853402605 344367788 222731082 467850918 456073815 547414571 631106242 866780822 313194908 190200812 479179217 912727984 550922487 190154879 801438579 263463730 381536215 949874484 781012496 999148430 8268967 6644766 10827566 601295892 287823095 383648394 749061164 205370800 909084813 506658341 343482466 225738061 920399057 764034520 930435812 535677304 584510187 272845808 439794237 149708113 563886651 445422252 258718818 324433816 767532907 437354589 239054491 132755641 195460934 864410734 304636423 886376945 721753437 731326693 213550025 712872022 316668833 143877693 478980677 22794515 834912325 331946847 321174770 730711230 885140204 477139542 747608393 270396933 6060381 329835554 459095078 605651547 902734737 367669569 92376270 238045446 557169456 922003820 813354846 831831479 506103097 507674725 719717206 550107947 17827624 591610843 380116680 590501528 210850290 956005770 887483911 47437742 144217281 388137574 713414355 25255219 425952582 433186913 640900507 300153701 826424445 487889102 564398529 152835921 18555666 807670608 21907030 307405326 773815850 848137939 804192198 316836332 534980379 826942850 418436760 59973047 896074421 169093825 170255042 588528599 194715793 587123571 200937159 755768945 640530246 384176926 817657423 613092739 636221493 753783779 220606193 460994747 310482374 393772266 859563628 162534260 320022475 341033325 491574406 66681168 238193275 965362282 163355042 570764601 862077085 256242335 565708951 226381369 886047423 776513737 835460885 806941298 754800184 485737393 288377587 50963314 665650886 861603216 321984849 129277783 295594601 657153556 100671086 278628937 278782242 394417855 460711564 408492248 166989826 491918966 513774263 404884470 416237635 35281436 880999824 276500746 591630165 530692932 587772741 322415161 989011799 326640337 774836053 754939467 815994509 447755898 349896841 58271333 222475960 813209768 701235491 585626083 541587699 845028975 345673214 444322626 599574040 175135942 110094758 482156341 449477216 479363600 811403528 538309028 9259833 36785828 471199389 112288746 639924708 157977666 191980326 930437312 649283872 110403884 632026269 897605877 105160988 459490076 131236382 144469718 842725441 443087329 600730205 43665004 412326285 949889266 648726019 681930837 163573817 121193209 186646595 274003415 710589844 660175416 351601561 805115754 625640546 54824111 531614923 725491676 586805492 143057434 568096545 482392890 785574687 41353622 279696085 314791370 491168322 830964877 790143524 257694532 720224259 65426174 586102138 825077008 243827435 943994084 360251992 784063692 762533160 696701606 332404834 182785667 763676553 259104448 357095156 4294547 579002081 589751638 483712958 439876419 756647941 738335609 206697700 298598161 815196851 174490674 489526050 53280589 224375201 616208663 573007876 468529701 179310253 316942377 131920772 54888256 149674492 492336431 496028556 626221342 455932431 2874308 123509461 769154115 600266756 276260383 456766004 378102275 123534699 721910950 215425792 258025181 326238077 578937834 265690142 360192843 593023817 267066870 441258142 71500833 893574050 591161945 126053311 830008489 497899350 580436427 193909488 752399979 968049911 559220338 557207038 711736220 715845183 132173986 446521710 622304672 285876181 445387343 336564312 385574187 840229217 549536144 974167769 452704932 116105566 545026492 798677478 885657450 534764116 592555810 878518002 866095075 911315239 380890530 433403433 695183388 733442977 83985193 339146712 486654847 519498087 78838719 962265110 165751805 571734405 632746042 25598135 201655817 301847818 340232312 81727400 700232382 797878162 342802235 675549760 664982479 518146095 532225395 869507038 195570077 756250964 434192059 119788095 130602269 234945206 194897073 913094252 255298979 871282066 904531370 491333530 220833729 924757027 954189236 971482117 921548122 601069164 20392651 81461994 51330957 618450664 841081399 385416904 367394514 944199008 77756300 361713809 112214415 803149636 100774216 239396339 556227384 831972267 578303303 742627104 457899861 866824558 51635239 172301 375644623 294793673 34700940 84888299 56112288 408086088 612560365 879403394 201859814 280515597 752053262 298398832 329469474 63587614 11831458 29765776 144500076 809280009 275660222 636975179 620222472 448350617 355260857 525728453 318835668 238197011 980687592 863523020 373321160 954106880 256920208 296049810 589704290 131387169 848413239 527546218 453654053 199359760 48319484 822115759 166332787 479739087 263458940 745196306 617307524 852692464 11623324 455166612 410319265 438687491 93645384 340247591 48975214 164956648 954338822 30467385 460715855 414613155 394195842 609003656 638741383 279441855 425839391 498796099 422406914 340919788 646826257 872612800 986232734 626186173 199518648 537076137 453556703 619924963 940079239 433219577 726144647 433396193 190416265 443865705 318319325 248103189 236604891 701095354 582594162 773919320 852313120 38032071 28173383 364085242 685051264 381814286 519265206 249999310 96416940 568697430 447704494 682974230 703653451 135382783 473130080 748112647 707435514 101533104 677089558 685416107 365182375 900950819 252258183 618403405 663180654 864634805 952106766 103076030 309700235 639048373 565745262 432309243 350406514 762261619 805961596 375880267 902357779 375325492 656059116 334232167 639114301 482900922 752281419 825378174 459185643 557336154 808302236 206804359 404474097 799108378 897525900 745193721 73665239 4833640 224646949 690563585 762203524 783741475 219972509 140182374 706676014 665476258 826254225 779189921 546123778 32590349 703338762 770538316 799284719 30366511 138027160 420862458 256353916 936996077 144567723 267376686 248720047 405460670 431491069 970254356 563721803 129408774 3879927 661624327 209163109 909546555 484338123 2194529 773333064 578165838 87303874 271145172 108896738 939009243 766077949 632113428 811651375 85660482 469200532 734850635 637807935 468627130 257450039 149348087 778144359 905253325 988163020 393986945 880993425 497187773 821558895 509915005 813652713 744121826 86213668 668472348 585185535 580949380 497858882 556119710 431871550 191223234 196575302 282844221 348333790 322812305 817212790 40332617 986152162 958491149 556836905 923258385 822959499 405464123 666837168 452328252 417786532 660696887 886145366 846109137 528802953 379109808 542797891 164565952 383560607 15895030 346671376 874547758 827327085 696913553 525076214 209797545 296102646 674101534 804266262 652612755 579626463 236209407 994733317 606514115 779479893 826130314 218493688 179946253 287763040 606517005 712800462 55503615 846424037 837495160 238206041 199527302 433074374 444643873 662834096 715540874 951205851 346831490 448668986 48036453 678495392 946725345 280732011 205113841 274203982 233754776 192916000 482141585 997471618 526500577 582040831 788583608 179170757 222835997 102140101 96482552 423906886 66854452 398653643 728669582 887195184 285678534 271549800 701263698 397664982 829624039 579215818 266568843 191397745 181814913 827778381 79408153 13245190 775714226 790539559 902352997 574384652 650434961 871336107 570249546 428612206 940363709 651524218 705565600 49782620 230418729 818430615 888391249 18987392 831122330 133923742 598278364 138441834 854039984 969106932 903542889 988712644 923424552 235118996 87385025 487418517 660043400 966621424 665117788 465249693 374110255 666215861 923601949 61554063 170285494 435451158 328128041 354540450 608388316 531848297 759843377 589450650 762179254 716565622 495341577 754147444 944051754 197253339 211073124 710501889 660026294 299785324 755799633 641427005 239022703 727895976 748906612 652648352 373511720 157575601 3950413 311107813 775606846 325619031 840667430 393828736 596753677 766160938 928097678 208253166 649591701 174286615 758533715 659825548 676459266 379208735 251759286 575921483 195366092 96911432 776756491 404968384 660425486 140030638 286704166 135781529 350608890 538960781 762046357 65811168 848889107 592741160 504180949 626766283 701759361 651434962 597101 981606868 155110946 106129689 118882391 748671345 982890239 735232219 809753652 49115436 173724789 678897871 911793551 766744333 835760757 542258541 108988380 564458963 442559263 194439737 966283497 368092092 390527888 422115792 264358791 264484201 595961118 189919340 211348027 470204860 13023280 894482751 527531176 140672173 48320694 435090204 751091464 743494875 506963914 378721407 750790576 42298426 897006285 267995021 844229220 438829685 180631614 364012784 649530477 54163534 326131135 618361216 261773418 50970976 722865921 991495948 268740958 108732539 458457791 825841080 80047473 898554281 873070224 370744951 688623196 874778946 43848992 946696237 799501377 710342827 614304308 532833113 271246238 255427183 697444831 441826505 734848232 978855504 935868744 14509530 53830124 164259640 800786272 411357375 294760692 500970421 6736334 100912859 428972933 661287236 148495081 335575503 592352066 66640953 964051826 109632602 79831578 800342417 64712767 568520628 738380648 380952246 59006614 124585480 966747765 908735376 543222334 87509535 647187419 225881166 511413587 785645830 748868568 885713075 613405635 599770333 334392592 24460632 158625362 524860015 558656960 132301713 739968836 356526999 435151407 783995620 597344642 586041547 3938140 35449353 32862511 736051851 492378646 621530871 974233859 510416679 67570249 831043628 875713652 380799814 721602141 926367845 73198908 555361893 273397389 942372960 49012100 717108123 530680342 318414175 125102136 255863213 605793980 171551765 223711850 262470464 587492661 290020258 606036281 480302739 382697526 163357147 350213587 448714056 377729323 987244817 21088494 802730862 613018135 768938690 408966199 722301659 972621763 597835933 652092051 529402767 183868207 291170517 440866091 85106653 304908944 570255992 519419767 993421679 990375903 486610012 520834280 589356270 848012180 675965974 880408509 358565475 325693895 302233734 493138577 540224184 693941310 274849515 981553128 400923825 138285408 740713481 622112595 541568038 124049809 302593726 376563411 254022217 923563800 292965362 655469524 921709108 209469760 395148933 866437579 859521355 477547108 978247963 372065121 837738270 571882127 261879555 778286629 703377825 874004369 561690544 255802564 968040256 268400671 621829220 825543709 630081624 408272195 150789078 41762856 955479834 154060822 880265658 884980436 496312947 605758014 161831 160002829 903606646 159648814 609683379 245653317 427880978 166737284 180460510 644204915 141483734 465675429 743158236 286870052 721621189 741909698 752134928 832487266 495131270 561047670 298014414 494538259 721776733 208411241 894467282 431308355 269061978 838416988 195140201 87685777 284989587 598336021 291527905 945976842 992076030 982321543 938679262 254959696 91131754 101544821 132185269 467421381 158692655 519646720 558605223 93401056 235268011 487267644 394777990 863298827 427239330 966224115 319465827 41007070 149783560 69573810 80520132 881200101 215196860 727464555 33502666 788826256 866023851 223173584 793663066 168966553 266412690 305132659 198101678 600246344 396952748 186654397 627482442 666077098 298963185 518129532 706137053 21554202 532396850 51936094 970408569 768424576 305509004 967387778 207716086 418510580 90796088 534474216 498455304 964309011 845307362 448414015 737584382 840867806 269166876 669889423 39383788 836905946 649680207 144235788 970437391 287169266 465530740 835483906 651109514 564170568 269120186 663150633 261874530 867507064 265506681 504112606 997264417 16745669 790429045 14325423 64323002 809870953 696078733 735601808 358417613 658059620 899546415 899380795 120251271 899278949 143214066 569308874 914650087 58978040 248616836 598425143 468791814 603720646 433927963 68569993 560730073 230853866 814152967 39272283 620847843 251053105 499574899 870691583 146046069 345123186 658179691 292055511 466730919 691995233 635792873 367354177 133385507 242295723 436799965 417216099 117258058 601069850 91805915 975807010 433912255 334001192 496258256 745966048 662811997 968648398 300125626 770463172 677628566 686567675 769106540 891666796 140046577 993088084 822380449 374191825 488727993 220450677 748322336 797006246 796707581 721394627 744658723 597140589 953320626 937834642 230118878 299122660 143778175 325836263 68174988 533235358 516938837 235336360 336573977 76014876 193073710 246109884 598026264 471416254 726016882 82106828 415436661 976847393 487146850 181330126 815933139 681237098 244929054 85414143 258312703 58413661 804576520 530170905 806956383 378251941 792917897 477119252 607119476 398189356 634961764 599796030 73600586 64753479 360124699 916263566 91921471 401166103 446752694 525994058 334688380 524332837 186803040 813458647 441116940 730347331 240079274 508492622 139659354 553026629 571238272 675004311 124635040 723414330 467330865 929297156 413343305 319889420 485247642 909858689 279564762 446274121 823867307 741273289 849311195 255363709 632809165 980271147 593567148 376071058 816027604 705982727 982519520 154889930 541203703 217321154 224802938 929987615 582047297 679786562 358849503 994841853 499618707 330482539 349277709 69148566 444610671 387779755 763408595 176414412 36277454 461860484 895912152 454126749 589733581 436884267 629709662 82493533 512188716 100100674 297901789 859932336 944165377 741515971 183421096 676552994 181335514 130426060 875032161 206050031 773843604 233702434 810713790 366682827 310543787 832234819 394062988 752025007 428613905 636839096 894894430 422648873 695538397 526418625 973176108 322085206 411308115 775484630 859006879 417698692 393128593 170949038 953036287 97531582 393051554 684207942 577517502 295271693 549236258 887006236 175485593 279844930 55652054 327502318 300868910 769602694 720918746 431095139 497148990 666014193 252977191 271561486 241076883 904065068 884799243 366517768 215824111 551381620 191900873 709160106 522050761 991059985 39660998 372101094 31463876 223679528 809394473 43610841 804589505 169099859 408227510 640089147 40210448 599202714 680790855 6207826 930502619 662177056 742180625 324011948 282078355 202224747 961175104 719869173 327748622 930712577 401742853 217012737 202698386 568878247 505931294 421009051 937433320 566102379 901839787 739501875 108079832 10710295 807496531 538894825 982581201 575549187 592065996 735844642 900485288 794123199 497233223 268577833 128350047 986032868 921786470 67539355 558111346 343955316 403295240 528745275 635224396 324012434 824232665 122661888 754233073 503590868 420051256 340390256 642382569 492508188 770641762 222264325 500758007 523121782 431117629 202320756 855210381 701566820 866358876 503063501 219060533 663060167 187147604 921726041 158971435 874918173 589798025 649268963 939041249 324039896 806898438 560843620 443528538 25648178 534502793 309744481 539888719 930301740 831186007 393159195 377857522 767153816 468112808 963463883 947749699 180011803 334897389 400819437 46592621 382841843 621311671 194945191 734525772 894295573 934019125 739271610 155285959 959491719 835844593 302358280 994891493 31210800 629692682 203099633 784745604 424618145 853223815 477607752 380587754 682634115 946727732 703172781 162259817 700124779 32276567 723655184 531430583 399981923 322889130 321935693 936418163 16358593 911638801 97727683 210555622 770071506 471274968 855258033 632649884 545920393 565036229 653994649 249847136 534764831 558071540 773665963 149871501 193776271 570976659 524306607 678507909 761106206 648219630 48520082 602688293 471499094 858414114 766052721 750523235 502709651 322841809 760270203 203894779 328031734 461606275 840632012 241985362 305604328 559300802 152138593 651639598 777340339 942096733 20733517 118638826 277821462 245427251 571172441 25317363 18959994 822260838 987643921 220189205 625157079 887048286 597865355 772802577 798268494 523516581 177455878 769684850 9906119 588670822 572783954 694509322 494901508 641122783 854421537 46207967 493249135 983139374 680122301 624275621 598586906 308167523 408861393 466900296 544118641 935379849 537853318 317183787 173250936 548456504 964553834 580166116 200393782 407602197 491921356 229326809 189247507 113174819 258204362 62291449 26864036 227211696 345577028 838419843 588718831 405481967 127684837 549401443 166101520 183848975 170188326 31829112 762637117 617624594 465930471 144343206 610163060 164759330 137124748 572379867 559754203 11264202 679692146 984572963 871649601 65326721 214652570 891217139 548979114 378277022 645300999 208303322 204709977 892286779 212017760 66931722 439413228 212609343 217325740 849631789 329945851 183533713 776749469 177057822 399268579 624088471 902575795 390121360 467240406 746057721 898935591 635310834 418176764 543701432 881974154 501797944 943656283 79959122 32887661 933447157 868768372 92597144 577527197 369117984 398560376 71339770 183844519 217057266 87567624 237374408 374907681 125176583 996424308 706762214 949700501 807446427 191769925 33286701 409239775 77163062 205989518 118002307 932573366 237034860 474277946 257290431 976151430 458813695 845809032 164629055 968079778 357943894 449794680 502946421 27558703 816883871 619274855 108243858 158517715 609077022 88588510 942792714 628200368 624406280 225279129 293678843 150890517 474819421 939069268 40367645 994765914 885516 151798368 638220094 585470134 632093994 263095789 157422005 877613607 183316937 106283985 274966652 925316610 523622955 359449307 989643970 754466437 736507471 676053362 651434000 408509966 227786730 443010659 789954078 389006887 206217625 684045800 531896336 487269509 802598927 348132605 176524752 131406266 749839333 745557152 943863366 984246378 529185728 247164043 620817957 394081149 78799576 417603412 597236463 186759420 991133112 649102161 932137642 342846627 595147625 751169435 799058767 154297793 198467361 419981234 750602109 337900933 789183728 246973870 956345081 924838685 691837391 639208151 481509157 869005351 429069972 544490503 496140593 675277167 121478370 988684191 258092575 628906659 87413880 628069428 939200110 365819374 275485021 590674055 989552599 448555301 88909132 46555306 868584920 492529780 459180188 271034139 449212184 6139437 317011136 607896444 395667865 810487838 332208267 587179679 177958085 59510650 842409430 109177585 543604526 686144662 312776181 573849390 643661126 670432944 239002825 115267688 884832201 819471852 62738132 712398826 719468012 482790747 998766500 635501032 593012141 960645846 701987963 755986607 985357841 535098987 173598418 95795123 662761484 796485718 731439802 981737251 790919560 332769634 452006538 398338306 14877124 360441196 372103250 432122174 655346702 200965769 315082359 578812195 525800486 516152313 889350530 737400864 238412620 725393312 698770249 763718020 984235681 63234128 483254842 128760911 909396496 15129026 429975506 22889182 515975134 437302155 805759375 330101046 430947587 149156826 237815409 703497848 877667489 306853903 179984104 704104968 270512727 464963302 362846284 761001327 662937433 956356197 224972778 442750563 254987225 317659511 488594761 314840233 586612136 384238805 515892760 558740531 629059959 636758553 179898654 1395637 458278522 686476812 486412427 640572932 138518692 392433482 806523950 345668474 131544160 136442303 548309490 21682618 365033340 540060831 105218136 205284639 454011659 114130728 581839030 883252934 866515347 787999000 557640691 693002866 832430286 137790334 80733788 59196207 876837688 948936343 242398933 299016165 522727647 883670694 300843176 364483299 760162918 342252608 879711846 90426068 491226865 333259065 636032313 53600216 129553923 922617557 446550873 653770407 574407580 933559881 714089375 101571547 636624943 656703837 523483159 571167440 18171541 896465312 863077629 809376874 947771448 518380574 466559978 360695472 908860183 439499391 677855421 438039379 678759433 60048308 345854486 888801110 381140685 259201649 739234680 227955227 833975271 936907939 96546688 208772456 687398449 982213309 704956947 56987906 594144343 396921179 875516242 277865368 911992948 6724507 366601133 580990811 50980470 261490448 58520726 764256434 381807116 93959931 281900567 701905930 117562696 452613800 116072564 545350955 459121411 512547101 494192552 414788825 94771852 366909 374919863 298191286 531090281 923008871 487572518 304884043 633719365 859792289 791793335 782425529 702395330 50132601 865607858 109597120 890661595 216415345 419787641 323215243 53293642 366616391 710410987 232566737 661478874 169964709 254602072 264139426 18534495 9877133 983105277 133341461 429741793 73767599 217973858 121073919 964673936 536947280 895964974 966640093 358105189 708861986 71843742 690595479 237485755 65396034 983717820 114265784 387576772 330846940 433075798 624348646 814827822 563942636 815350810 16277835 8398566 894026467 265493001 900120679 549674576 14445612 288045625 330902049 549972638 934394578 96571962 2096888 171244080 321855151 692466678 509563659 239005479 513601001 340253031 417450361 988959633 523196123 437830348 548792708 499589640 135288121 870183427 640678423 491164668 643619221 975389141 831713800 861737440 788096298 740377858 528614186 573480891 104053253 471790541 42231140 353416619 788505199 480080867 531905727 435878727 946554238 676337079 741994291 495942610 904169216 441804073 86762121 371384183 282213539 150881138 423268009 420774260 764701198 543704419 584469273 79085191 601018364 498214897 658646894 78234841 575455650 612000360 597711377 253152563 205764601 710120549 164125192 847142348 336921444 356074887 495602486 802363051 207678441 626055531 97700140 284709646 425025867 208792298 224979747 78527688 717805431 239776796 673417181 596885910 129554373 656510490 612682820 414300947 885795853 766000652 55873648 67657798 471161360 377837619 717665168 469282339 830132787 238529232 349982887 852416919 490050478 94426641 467024568 395924781 321237838 378155339 58870871 330090787 255932028 23624790 962920193 274090015 293469528 649744854 890391237 726792668 779925002 814174969 270565214 504367981 274268244 704552602 530088645 116730483 789571685 217856061 608724565 505015564 640727791 322458379 35854552 804737588 232007490 543803805 948005394 783376520 89546856 115815871 692329636 999461687 751911286 353269056 702016969 132728389 725209141 114710011 987116818 343268725 341458368 722947699 815913194 103870301 848727531 230344100 822750439 580459552 837823291 121666122 893213663 698264481 396777215 803186321 284632010 454106563 530529076 779221252 497578504 351479269 770504717 525680981 880739804 211389057 958333544 700072712 783298800 873912196 936363593 799026526 775213014 460994509 236910906 666362189 76660545 764939639 924273499 489336373 321174691 289218182 991545071 423274720 264822875 996302416 607727203 860607406 639207562 194143124 301368462 52650500 801634502 316438442 744399423 141642078 665874670 895657306 40017212 815506139 76966317 634183267 290882046 169773981 388669799 316079212 265761814 927940447 226883831 263737122 510523242 781460934 39020456 402603434 896835818 553239217 203248225 288774214 53394323 22314222 430938402 488318228 556251740 564772855 205023700 293482660 960534613 563022321 554960659 86807276 732095291 643117771 892689256 853374056 373288597 929159147 698987134 770855083 163400604 814090101 926867616 300875564 853449516 477838413 703115054 176477901 849382581 532757605 940948323 892817985 691914055 874939986 536820379 789936884 52979464 419365669 698050059 147115523 608899260 280333015 508235810 273293860 609995631 862825760 501769417 585834956 227980868 76521498 429606193 485308493 250749183 796626265 762182980 363036018 812961312 383178892 870103481 728196625 527553240 873781365 338816128 147285920 828958440 989741917 347632315 833023915 404101712 6251209 688050823 509801246 7642351 937380861 27203130 433091115 465090262 436301069 23624987 922628687 524791943 334794964 792237634 633607635 712663943 804888228 710599993 120058654 623686731 570374556 211617120 214114181 588369241 508585410 670632696 246919010 340480896 13132303 23619069 850352957 359880066 786751024 595635801 440605681 9338019 97168222 254925458 664941575 608003626 867383244 424109711 328049234 844762365 443628754 226284832 231705397 918120869 339901346 889538302 230538440 248913165 403191680 171947955 868566460 867557330 30887645 263484884 307419186 68072523 660962358 272783049 834507468 459937160 93625007 739843278 510845468 791683183 514382700 641356863 718098496 671639380 559620664 442297922 300948530 469151352 251387426 374494470 69522346 780724745 546048646 794822756 744926969 657719535 814651001 201223205 868374374 323261987 819227562 836146817 103996454 226187757 758064366 25898039 365881697 43402334 569766214 514019736 643507613 453591438 310569056 55124135 846552121 219130019 450903341 200347523 750513386 919276189 327260370 603010340 603063993 709651121 241122011 930762087 213499310 168288362 409743551 312390934 634989527 482177611 390991570 57123079 893490509 187381230 165300706 959487520 84680232 439965598 787070811 214104707 248190523 417886626 322132970 414167899 852356623 901316222 73748421 924771533 521333843 423522791 394773393 886498235 323548598 894006340 395156635 892339398 398767767 550821467 601679908 138209458 754003593 614448321 859748346 197275947 359666746 916422604 65226591 997390731 32297874 127302231 479743540 728473679 972918639 497673640 566588030 810736117 372953961 106573687 827741519 811224690 298553539 290956400 407336298 773087577 912415771 955948951 634729697 832721337 762064116 652806578 34587905 577212960 740754658 349550230 933655535 246306892 955581278 258149159 622903753 980451695 365499067 253537284 491649591 210671122 72005963 734128629 160993941 553068850 616392263 662323484 709433283 145739903 500218284 911772632 829500893 327735150 568895560 329234049 669877053 232468527 285141779 48797117 120860527 676055466 25218998 260162705 24010279 990805017 832116101 507243416 511543005 506196698 146128008 247626903 775770388 112211929 609367675 693529773 809127818 394838484 923714842 552022155 506838421 740773994 414510579 452488470 946718567 515807302 231213812 400548960 520973916 272963298 511995091 60768796 622968381 797413640 1357607 656211562 54790164 578125572 19565197 384472703 63569834 148941282 494582350 199101233 805580344 429238388 722064386 455962670 16786545 375678868 498569685 836362080 453369407 218858917 556053938 659718630 231108444 327483489 685427469 461976687 285886320 656849339 827711392 287441970 526118356 516721814 810802645 523687815 563132641 461070325 622581649 329697326 766240081 554013326 137667577 141726403 286582794 843683905 670507543 696170298 175090944 793747539 484742693 432158664 424354441 985171149 795760907 219462615 191149835 589528245 560403848 690781059 670828937 942641863 245740040 70188556 822045161 381410216 297346224 43628848 412806211 616898323 148266286 764119421 326979557 844360347 718920127 80320269 220391079 444702529 193686444 462180835 648510731 280917357 521818172 845789964 843769269 967496685 54700913 990532928 16374659 951109750 734748320 822434351 776226308 167509823 309457970 447663674 984764891 800080715 154163403 244458661 880339099 281609930 791467548 860073113 493662158 369084041 903459007 67842877 524814652 816194459 511577936 523102090 826747384 556475966 335439920 330900176 816560407 49419610 36002959 832976306 982178893 200988564 9176219 910970321 126958232 137554346 422439396 904830907 186849606 789490015 909024861 346974833 224169824 990637600 149663942 877756742 731465530 795749480 540291797 475591203 879609826 926561467 299225973 621236519 229178412 470476646 742241101 965873772 129353528 800732182 614977945 605360623 441133271 413286125 120130083 263816459 803226366 281423368 900306796 992767441 28709154 354577107 901688247 596229497 669593453 792447957 734395039 672836930 15434828 599964723 303474571 702801558 609096737 513908102 958194381 767277418 387771420 426125355 497354023 669133037 459678442 401355723 59142893 128264513 334048908 940422444 879062790 544055594 688455474 520498437 39017727 863554742 394289774 607635993 937235335 479534253 288463500 829932224 635573407 976328465 745299483 151692104 402320919 438068071 936933290 888057087 6580663 759920062 493575237 279024067 212194737 151077042 938081025 156790139 91271156 962475209 924362995 71113492 44364894 822098270 908895885 853344116 322608607 860224960 120837940 268632366 102461285 204323783 563962080 540112110 364990306 156084027 537653070 682466482 575004728 19121784 617283294 113032703 884811944 581962160 561873950 572046131 11149453 182473646 858093275 293870627 95805652 773962658 832792513 826176928 734019546 647243252 813614441 838040380 376855003 624181870 773953224 722960626 443739284 714632284 374354221 430247953 962375245 805842875 327181998 180356484 800400018 954021731 443557923 787308601 703581732 30054509 299538545 566006852 633028203 464062535 175973407 853336827 645062114 852259596 585966272 575148318 340190718 156278876 158609979 338612733 556436556 716066918 362257497 838540421 831775037 303373430 891588883 188664250 501222549 718239284 826530487 253769432 539716057 425843288 708193166 515031096 158048766 348472379 787145284 144645969 125482771 749898732 76921274 832538132 647664251 276076902 158713803 798242603 133206742 368337612 106942851 468627448 944005316 832021697 342243497 718830425 31502175 844525263 443529189 407744490 591951162 3225191 33171749 783563522 801514346 319490653 408606421 92096661 881984986 810078796 21103962 32075286 812621038 961465223 621729721 504651443 925998046 733584140 708407588 63074645 530500211 40188341 16382831 810477384 241336087 502040525 795979186 192135858 513807261 791973214 443981026 288674252 343295832 23670062 503815587 893694214 144461766 194417973 936984431 972731 403155844 873406139 979978321 881308721 218593840 277249934 988002347 205258728 927789820 640280394 862702454 2942450 732458950 555612163 327489597 141916388 850685999 288894299 609522139 826662283 42907789 529146030 89425729 505012 376662305 982120289 865871236 708911954 59722580 610150875 356346586 990104212 467140696 671136684 71756442 740066581 379426410 607876886 115214585 164485898 611827502 636070550 309319219 49878003 404246734 348266677 331004799 120888889 813636559 588138718 982966277 953828401 531798096 868786312 662348005 834353338 793408830 607104696 170437759 151059064 555892 548166472 333316469 999593751 8248740 380812100 760193947 308450128 938958161 334650833 739165430 94365889 325303497 463294100 804832082 712906863 106276892 235922403 357433908 207455369 880330059 33482834 417547488 290007924 331037645 298205263 935282729 11777866 182601604 350674651 532622649 567592292 829708481 356894501 593037228 396517526 545731741 128412496 62877268 749873725 179412727 744569798 731847475 742183547 828871488 826311097 283937171 257154861 692589919 105223863 406490851 599649035 467332608 160982237 919849679 693896652 832070880 764680664 230905646 193869968 327321920 330847474 849321953 201875316 10434040 662464391 978647785 989114007 906242471 288093038 840426979 759175308 185131407 379747358 354412043 473342990 815872640 998619908 940813867 934106503 648040553 630491870 785927902 821006973 403921421 606906270 380679526 122374765 160737419 516311311 660070069 622127252 720537074 854530330 5441809 776090265 157466268 836893937 780005053 106801272 820451956 577861234 675880984 957620927 778424978 147267127 999043857 259454865 858866562 754600521 877478363 943482201 588060708 65574333 728880561 679775193 944980068 30974544 850254533 554697619 291183362 79021710 691813639 721550687 966534836 752443839 419185237 657701598 343089470 973758834 27250476 7759390 979543428 196077614 744879331 503792276 203899683 327778560 445635448 411371883 25461467 673656050 672761872 881560819 888467834 657328880 818501166 902389209 420317141 987352586 27139528 644751935 425849236 278622277 569054835 139741519 481173252 877509103 875839708 127440818 775025947 174382708 539159492 457254993 872945881 924610838 745638619 17305447 908648105 495103254 643235347 968367125 184117686 279875500 603981785 911512897 47699862 448277433 808077540 911791281 262086905 18181764 377637729 472014413 204959018 948363277 84497674 550350322 970093082 342862798 885567280 32978220 924002956 429904775 544778129 635498470 27993094 479874877 20560550 599230427 599959729 143791676 906282811 542357729 187561327 608269627 548590763 914220208 884956451 766435424 352973881 93030359 628028734 802986771 243455730 415913826 980663005 329864684 453921258 273438098 258513997 753002007 199163623 148339666 432900496 507754352 706936199 79068816 40933684 52917266 449807855 384916990 203747990 655227661 247792481 981778138 669358515 467487326 390357880 12100794 169585716 272363714 589718716 252675886 138685857 993954432 761229883 363216596 539219908 876590363 558108344 74285332 933032121 832303633 882785601 53983632 265258478 918123492 606537971 540553952 275065993 427323795 842585182 930288674 763090011 251045559 31467678 611440510 47968142 997771429 522000955 203820210 634423921 417389839 834796169 177013021 686741137 483384053 745173803 302148939 614088023 46468872 796117845 896927881 742664343 953263238 405226895 831121574 700697553 115817207 532486041 188393100 490961189 982095037 20999590 894783567 780946515 38981942 289325806 822159115 974023483 879554039 33379283 635516463 695247566 341571895 454046123 33001508 998724644 418683032 360078016 920519446 49883170 251694541 990025279 832992536 262206790 277035597 720955510 230105880 516183697 215085997 973120257 256080022 235655543 370977328 304194054 949764924 309192736 813863590 406737291 599965658 402404156 841243387 152887188 84517215 999091747 427653841 338494074 698753424 571026193 643812988 498593583 506686765 989817302 679263473 640235368 763678681 292939447 862068920 255387289 244432656 814146822 150525680 537973787 260820117 976663139 20542372 513331568 816868645 296394340 700254399 828836261 421813288 884684291 682333471 275060790 259715869 336495066 239978827 207212510 138746477 489439334 822478076 139196494 992636867 332219345 754659284 112698259 415447214 461050922 789381231 905780155 928343265 591355475 216802778 961834565 503641710 196393652 75287333 379799969 716325772 966451872 771200496 957376851 963874783 572600261 245582248 214483136 131703000 381324303 347530107 137043477 41794623 566345008 763306598 274202302 759408829 5603829 171900120 42122904 326142753 971294948 235598729 496415094 16659303 532631862 410322053 573742827 487986225 633150426 841395042 315469314 635415243 162520572 55268542 789016421 681515395 784285174 812907715 590971246 719572414 663136233 962000080 370327475 657856443 544739593 557655938 983923545 692857573 91702146 743877885 713703094 737210824 732094534 854262015 544295626 895834563 520880322 622503933 313108045 532955955 960761194 48409973 771411249 634695673 34520014 788672448 218612375 731219393 594238962 289029369 21068705 453590384 887604604 216790745 91037987 921639716 573409528 283199943 861131017 227017494 101954058 740241422 368058940 383473592 299413595 209437430 853386714 591831434 563324147 971447130 851960977 818559541 193652258 259554130 877272423 214051507 554333631 342329308 172367566 8116368 205309011 854175931 752277370 380388422 254246300 912768006 454385249 941977462 634908299 829068543 994243993 978943913 781310740 958069259 804190684 958169001 983720228 754811304 117713385 362767358 616130669 794125741 643578509 739175818 410806413 840337020 865043197 603168411 419907152 894410237 438889048 197728681 478047048 212521066 304736462 429999726 926744250 124271436 574493419 163139948 882984430 746946302 535191239 71984632 149647723 160203676 56665411 210267160 377342188 996541310 948210308 136898325 380291930 374925132 635509693 866813661 490036242 146118614 888006608 814770580 721934036 8906755 994880599 940243227 120130347 913296536 756234668 862856275 731154086 264238557 838449331 919307147 864798195 447997229 487347272 459018952 560512272 185554403 588352969 112638393 165902505 885035766 218856518 637708875 939378718 251365297 675755402 271674172 523644940 537091695 733803452 884995110 237621222 450021517 980378603 412293667 510817251 974164145 799760962 231975885 503185769 992556121 841037901 631428097 554944020 646271914 666487593 607025067 374947166 344909282 648789563 473380565 504662479 427982308 31487267 773813511 764795965 517766224 635272731 552243301 895382500 366279869 965784237 339176556 687781797 798446998 793849396 498816904 829114520 446621677 920565050 219775625 150513206 104552776 410945450 67241862 454510601 627769796 222103245 451394389 884017125 344840513 15986956 225438116 866799315 761731783 742397539 234871153 835638994 352385588 932891144 807881387 321060716 32885989 881091780 539854791 703164610 481222345 84002543 505812232 394130984 329935690 559401525 494502374 563824875 371070265 827915286 582894647 253962157 420211439 207070097 248575333 170713051 410858099 104282305 300300249 51681446 43770125 952521355 594813519 846810647 966797999 236962632 222205160 962707782 184654005 651909260 628652187 7025503 689561311 877653810 832675394 414494437 257535698 500724584 109251789 300725133 221285522 516390837 487000727 205426346 613327696 669859051 451374857 401107444 490050092 779111966 722177332 47645797 602734845 963256048 503816323 109459570 734617060 212266065 535445642 800044428 920030299 334181160 117506533 231661322 519135515 508377546 438564133 681920996 705674984 547108941 547539784 190150288 825849025 447342937 210394098 512248916 319186838 258975475 792362104 701113543 884600444 906052575 663087064 945095605 839242970 884283613 41371820 817946098 926075979 403662606 936229076 566691487 390270375 464857561 723191091 389729421 912825256 259665234 83793242 887036338 173350014 190681248 947621184 503384617 567258563 908969234 519853904 840795247 779527 212529404 572264295 745378536 173369456 180167167 555364707 414144883 432104454 583920491 756944581 71103427 675180013 819293310 269876960 876735664 788641139 770999072 320567989 511053491 926956841 509480618 97858017 144198961 722985067 775648234 131832991 227607365 633694430 521081835 884133560 14762536 668486099 205943688 128088082 13686794 289186909 748862793 46023885 905066589 594347391 539037680 161607508 100939639 80320872 109206327 824128757 558558497 279093189 791562495 925237740 158181149 600733826 298197832 8546129 226723542 94952294 245552952 361521633 636874346 739649822 909233048 251239035 31593340 657402250 733776184 137936201 253441230 83022254 435255072 600792254 140333632 61535599 990846228 143606592 306506886 389039266 24329017 357501196 540930313 535133163 81400234 110199956 403955794 993223540 10486546 984618728 336658336 680630720 237472808 867819725 147338266 282944884 328409568 709516556 397162938 469752247 240868583 144075536 875487973 144399763 873273789 268733774 824634315 330189375 920630666 845081942 387078506 727151864 797280993 312746265 612507867 871997718 911141373 768203822 909676231 2066261 337241358 311526676 625876649 317518687 715421898 445904494 727686326 909243714 960453288 427745417 142211705 447595341 247307163 41397188 321032268 651802885 869780044 176898592 532876031 292698590 239019143 688757228 842434502 248598379 292799369 202543076 526727121 231968017 88809729 632023207 551105312 21225863 568807425 962608487 722800522 167837647 105534209 409730309 151345686 454568923 188321021 564429249 93649183 852090041 459146624 506917292 19965216 265224834 955163029 484222093 437226235 324379224 356962806 647852709 617593969 497834272 843547953 186152491 699736442 571892205 424849447 114555659 433959586 298141828 247142365 355123383 70397768 868291841 607456539 87660733 696798525 969673094 28713968 275552005 571315647 188707455 597946586 616453441 319469843 522257192 13155343 540023614 370489374 644162182 639028254 201029227 438282752 249648277 763275269 431684764 166003182 538302511 795484140 993948569 205496790 634938592 835359945 209191636 610445672 188176461 386889678 333338121 634048324 284848570 736733372 589194283 766537332 812273984 468546747 366531752 119513999 187141191 138491050 654053875 106660192 754912183 974954059 276545430 953556168 154721225 130419728 392108471 538471242 806160199 496919919 731512272 478903722 297774895 886952935 298076025 891940643 540972638 507799175 145632004 878777843 332427178 789168142 859527090 627019478 218853045 842838311 731033263 41309448 893764310 17692333 993269699 404455376 670110715 297426997 7528787 353935551 436555995 415818138 521437268 233327205 677184393 765320829 66132275 662331043 829406834 364514701 78541748 359393982 912842552 452310880 870738493 259275562 773416347 326408997 189233354 206666723 32914918 843741571 893967099 684435635 44823417 410440893 868599942 40976758 153558712 679033134 42483374 798397717 401758041 454200594 460134588 456878576 367343512 47748020 575960476 909148934 654423965 886110592 985563469 390051204 535261521 145549453 541812153 759973595 422768045 289657916 187966271 593030695 911044506 772424099 432432752 417865914 809938428 328747340 693763095 463536558 200652941 243065275 191986546 529854343 630865773 4070651 56984755 556800830 20476129 530081541 400677219 263469039 269113605 355834155 589220959 124269607 576871304 107789596 479542714 6611161 566780083 109351581 372976823 438177363 62408470 616406554 132394234 662986776 116979980 724930585 842158379 987241464 529541463 849891686 63109292 946676037 400343277 508215983 483354247 935602203 360259727 271108040 72085815 920519214 760738633 888782935 132653462 246760484 918276016 281265621 454805520 974912512 28102633 176785667 886286633 307044986 145419634 460176832 710325977 851477763 433500895 759086115 497633272 317935457 277957179 158655650 287035752 455610201 249253035 171088918 317381314 826999647 402125036 915768959 169797804 981556711 353315692 550166360 577237199 195682171 399566923 611429865 840357603 130382882 682026666 455835599 793746207 364878661 13352054 963438711 34474542 591156198 67737675 36382254 444824141 171675789 928427035 666296044 802111863 226946006 765476124 353369453 442759639 263490848 176404385 169992730 813676935 803476750 449901485 750241207 621809837 243444775 41669542 189885177 61766855 399210229 918757365 306699500 920955070 382641166 238852797 22356693 553819464 315944665 48997624 381585690 627569829 402861156 576860896 932400016 900691233 5562692 310470585 53474621 830885393 658828362 758584560 905851862 14812495 894986039 518294274 326957050 937332224 686993569 464165887 333170007 568348268 443432096 482968049 133833300 412089344 950256815 388328580 305839704 162625467 161186414 453882880 228432621 105634384 275990286 487447584 383360107 406339273 41768302 184462555 539146476 924626434 150045826 198928239 475312677 381971115 964312068 26358473 79324445 119628885 651234735 590593617 934331288 897464278 182549000 56624007 68425760 875373450 203526141 803900723 251551548 82535642 157549043 392082956 709378445 339314254 73860520 227835858 511772561 748524473 443214404 898152171 544391737 163859802 176789716 288297247 349750861 850973721 125724159 49652946 371542445 510299222 625825098 313159185 523269545 536218625 390980912 812187243 351252779 126452307 537864048 241540801 95891104 602262521 400101930 824145419 717934784 288687253 642852679 196162632 464152846 345564341 24109052 33413335 392126504 564628022 316650868 941472456 832585777 578144812 131524187 571842972 13959894 370832842 256469048 142357311 149112868 667064526 586291020 590724258 244027864 325850884 586848625 334028990 562265539 327892204 876911628 393432 631638284 156929406 344923174 654786180 860098360 405564782 676450786 164575808 716141987 265517669 905672026 778382031 604463658 328337557 780586863 160217011 943327071 716654862 630448010 892852983 139367637 568908055 990157065 372608289 819998612 658084610 642882978 981953842 654258944 465760323 721062150 267321284 47844749 327040446 564710915 906089914 389999628 182191152 553198090 973144188 490147292 580505227 557026802 47433964 266505959 474942401 480742503 495428009 720486864 987933115 499006909 872143850 298028254 466666660 576096875 846477715 821678236 208028915 435738624 171866374 312229828 313578408 393947117 885565177 112370085 645458876 391897314 945985443 408569564 431065759 225169587 416201784 969129068 608448882 842808825 367907867 507384188 57608007 45997492 507986591 470244767 344427256 63855363 788152578 337286312 645321816 684118799 911669356 819734804 432494539 764487393 26029256 907188176 533062515 311475172 53248495 604417772 879051667 112621409 224400423 206016229 366519209 671915454 980713091 913318979 38312701 51139210 466349978 467258612 343447751 894402444 822359863 465094124 319774720 981701537 568995605 35824904 899627897 403396332 879690584 537035778 703656760 76844142 273840325 950899832 569745143 907190923 294578662 987761813 806687087 364383283 747003057 218261040 108375857 601263814 166076294 109723729 774262545 313660339 733127050 297046209 873820121 300904357 582165308 926305965 242879156 829033077 97957909 195959010 233578620 78215710 787325922 710594093 815330446 118547073 8628297 233630576 547654502 78275636 53250915 150261657 863996467 972574452 288616332 410494563 616736307 615087219 592498064 476330833 485886244 20691328 781624594 215721870 412276526 800271487 651086030 475799664 967379440 167931501 740043748 4850897 374236008 924430670 270528901 327352867 894748224 736418619 590835589 216013161 18604835 112493391 383797378 990715635 182365869 91453564 211664762 338657206 673180251 158082889 282024295 766865562 921340302 669749548 22943979 216845827 967334990 493061285 285412911 436015452 404509275 931291225 970477192 907507021 586465556 409751317 18840111 365785870 841070554 793226403 478783129 762682400 41191653 764961719 584662184 846168105 168453013 330750027 358083568 25589534 468965391 156402587 579455373 17551812 624066400 896053021 646776517 198646036 337698438 617573442 642257456 58557647 668445444 933602270 979628911 207561579 752527459 164815146 529962397 855620484 256671643 435015081 424708808 845836490 994427579 130376779 688629044 566516511 877384172 681615450 878596003 752103421 636061562 489398420 705516965 825537086 140246941 58865236 99413588 190044508 164035434 841723318 141163053 839066349 646626205 810098221 651906597 489296200 2257944 939923063 291147145 431572309 107890121 186501673 527723860 862612961 983280900 736982778 882642620 806489785 521668189 499234366 537716397 705853208 766253382 520497408 309207 494145154 830870660 980533674 312886653 932171018 144935941 16854813 764295123 198585720 754435719 630562096 175849982 599761943 49154134 116426835 948149600 240517642 650236594 940833350 577941809 847832532 45489539 152266129 842120489 306967297 752610924 169200116 446590670 333035879 373992721 443876644 735875582 708771211 8543282 21580454 916894909 609109545 570044145 220954780 690618281 943203828 477593996 601025172 114397076 792920978 591743473 817865401 308826376 659169326 125770055 349737390 13873436 397956625 702191222 714615917 618227134 177827408 879514417 579403708 715503446 817851609 782326956 805454316 918519055 332837737 375281460 883897081 135940674 687010918 380549130 19546891 704914134 543732203 58034032 666248741 678942098 628036426 471001893 777472223 84256676 757757882 787274379 789022106 196235037 509342625 380271751 469590701 353909577 689216136 979805676 706634361 641635573 510971096 234714302 600697176 427850645 929845869 704747976 809119499 572696737 382298930 895037805 910718062 550696026 153545908 637503049 601125844 858985167 615663234 2807884 262493955 917078935 406730510 865085399 223491263 601372343 47980252 655473116 536332398 816096888 466672221 457645493 583774250 652784799 601029900 266497401 482548378 517301567 422710007 509685537 423019095 37051877 323720176 523463599 537827956 291581443 403065782 17545250 333056072 694173724 695582397 520260596 532757762 351379708 296503410 813108237 791293554 476232741 582743712 747855096 764820692 537197352 465531840 30176901 928784292 334970099 353948449 49893006 536993945 615822471 380602591 55818558 829173982 944268034 277518662 74193570 934907052 125065945 779700678 375355039 35414494 289897337 459996637 581922223 625276414 216899054 66118482 164499226 644906456 716728081 699723595 261945092 218262505 760917665 636406931 301231730 413934096 451751455 91127839 611306367 838187036 985871004 634594544 436525188 271014132 430161546 561092421 734017573 283349397 741965899 478851327 430074428 439429197 521783018 556132796 129762225 317953873 988219142 681957069 485614273 324396857 673846586 693118343 65609405 340915433 343703751 48537782 793004835 333483653 708608983 520877042 853220840 819938520 223839960 139859488 469021302 551457454 116563517 690976018 844891125 633509962 638871743 242931849 80083082 543192599 866436281 844604784 148050632 599954959 870699577 832071009 326180111 31606056 368470988 860764027 816404874 244761446 557720651 359389960 883519767 299976333 599803636 543326533 960868337 71172097 277929403 584666467 349556887 701355793 393677998 841472709 482057869 354094513 859395378 875265141 283467733 877263977 763975408 136146701 391805144 343123053 634140992 30826762 631627976 219015491 433816905 994761217 746468662 882956419 917909116 492441880 466126002 581449698 224820374 776402567 532496839 156916157 122835756 798273064 516437863 42840065 283284892 895960449 239547509 469268290 453524350 782443596 883629838 321646051 700695834 359884055 515016406 574496897 131440170 831191679 368599406 339770637 57519253 55905865 849381629 734357114 971615651 151465709 156098686 85114725 655820070 390830398 910420000 623347370 240952190 836033493 624332331 651438270 807362414 826554830 218449923 172322640 215460212 850260674 843803803 714351493 731135336 770782099 162853678 89936550 7782941 878171366 945919179 748082793 119830969 548319881 713295211 808805054 732554992 729268241 780879887 891564640 643633650 539273893 93858341 480159228 988602690 562478056 210358225 629912605 678257724 202024209 73215776 311110190 978964067 90288966 557546776 642873195 624165959 684028885 183470658 925907338 517731391 558304776 523176495 534720730 9765664 91972293 669814670 639771776 542174697 135071305 303409624 660211291 83775274 877702811 677364974 464405737 650011417 939256027 594297606 548746421 912626087 162696385 133335848 242191430 202952966 85732571 438711314 267431069 704817697 48956609 715320753 507918625 94827727 747705260 293871246 575500960 358990280 221042455 967498801 678664178 999527116 496307216 153015094 153313832 105158979 976434850 35078554 313170888 360372007 699842625 227507257 424717373 224106956 777094732 795566245 368731750 573772860 502774000 342328251 872308240 469590587 716028903 676491174 979171957 8032413 874553524 837217521 836090223 163356975 592134836 985105128 689214130 767131076 979112583 921132539 658430636 927852874 98213549 234137101 494554867 261232970 426972429 849278648 520479406 582708725 602995690 969032616 717123781 747036169 817193441 883794057 501525953 472343989 848884881 342829746 273387111 205997236 9546322 469546205 279879442 589300606 625677977 166310560 743905260 219852284 935702053 390069452 988598091 672883181 764364563 484774123 818526332 329290494 841358563 755371086 171419443 391646550 295913988 412719446 656025020 813514907 698603800 728900378 597471570 69228928 317227372 825188036 121951926 477870860 98301806 214867823 848640022 838837352 204572071 343475797 881361077 66928508 237430578 814022827 482465824 720907155 595435339 791453102 971901560 988029379 582335238 267045487 483990079 624997402 200319318 373653262 466164380 469711366 340774151 120198532 751147768 229007533 971340835 535513729 61074595 791400864 730206260 433681459 411689495 658167222 12257603 229212320 450225545 596015826 852113478 127899257 751204112 977435767 482245214 595282423 963195829 504653661 944702540 625591972 340184995 244923343 580099660 279683953 532566924 806096095 355475669 716691866 29622555 284640247 568937083 972671362 254470397 782414036 199983813 26490478 589364890 448599465 88187163 495818916 931595651 658036553 788334023 156830031 686882076 54836316 911984215 602635769 610003803 141582468 715517885 678846405 285947513 707187924 69546962 826914142 218500738 188671437 629253816 562969769 995047238 871498237 306885744 211375193 913274097 632162931 600420650 108932174 983182557 973572541 483118494 214261754 498358707 233504363 278497627 258129910 148341165 621548337 931782356 46643249 310711338 693986881 694580138 522633958 428242443 325699753 98771463 57828509 398741083 464791839 516016310 136122482 884846242 248918074 247261242 118118273 836190413 562797969 1360926 361869883 978380559 56111437 229228935 3689448 45828834 67661162 229845175 130379805 100932339 878977997 144568987 863476375 546898503 755928262 585925884 896803289 118266569 665989454 819870236 561048155 530055130 373647078 152904410 664637430 470033439 882257875 444727567 976338368 237262402 84357889 817054912 974777662 670855806 850019929 391963516 162566676 767335746 140713851 543908989 150125799 798122352 81762301 755576838 157575554 844998250 934567491 398159791 691947465 597185157 963781866 677357796 12902612 3873350 6660200 300718888 941459904 611872778 512673676 929958537 178773066 690939813 865319707 723825119 231265232 110279719 469361223 528715139 866702340 555167120 862879060 688841520 261069435 936068243 376653610 437188185 97457834 410802718 401897471 982933304 496633716 553024026 676529147 384551397 978918306 112681139 312706183 785431627 197856030 872377174 214923311 882775174 361441588 395348052 855341118 259868490 508749792 107444578 91785108 771128364 187862091 692694844 255154153 22713742 155644167 829366311 60846314 136552024 321137486 606217481 476963629 965973198 261606355 930084786 898166160 798126454 374504642 864324508 145593482 192270852 321439178 951514337 30539736 883933868 8619062 105388202 729880983 120773875 748067230 949789871 331784777 373773191 824623503 5524717 338747824 160765456 377083389 847943535 428667635 858560620 945622323 127295021 578018746 225548832 893904675 948081115 790613310 701934077 355981957 76391110 182440546 267839229 807515151 340588823 251117355 603622693 880722306 532665355 533861329 573510302 244294083 933968635 653929089 834590331 297887594 982701340 37156999 190529869 175590440 430245305 718945433 328143743 140091912 160430857 267863158 496237048 956880208 18765171 469362082 841188549 649187093 346474303 655668047 879751417 582304003 16183602 844834429 237072094 589757712 269024593 790235343 509851974 427043338 27861320 424220297 327423724 353839443 688586561 79430755 84113533 134774249 160775726 348333615 268138922 67338615 475100218 928757317 484348526 443682480 786504728 53250055 926937618 145625786 56658915 81723030 992802502 175744742 754698545 563707438 26088297 709131981 408973099 70657376 498971192 528198894 202909051 818030634 895901556 925680556 678584450 276894050 362929772 135777118 213726816 996656888 676588191 121372617 964796186 710797299 932109514 925636136 363315923 265958037 325991686 456009416 167802944 646162443 47402817 684420455 507288504 247848806 213513327 221185307 342249324 346862944 625630967 741968302 803986918 387145544 606262915 957842407 441153110 467160262 194519851 310154454 774841324 557416104 745862354 366303074 475176820 873877293 57451110 640041149 635246088 680028501 888933176 238229953 486496992 921050879 736087190 546710792 247894281 857866361 672155387 44408179 678870550 760591393 148004969 90940703 88447101 303516788 47609550 166064975 827150516 176551079 863391741 673192881 779575812 2486619 933990881 321286150 752680940 321080526 314138432 26122033 37571003 910015922 356574616 995527078 988245929 429861631 163258620 178296470 76306985 999407051 202590023 745578686 619077627 927029375 961166450 736898994 873684267 629168685 68687050 269689119 17311975 493712252 506321351 135355146 683738641 307137908 490869672 256313910 918737556 948351164 313112382 299479860 445210156 351985121 367352432 553158869 964366941 515634031 6027486 436739958 892908562 330560547 667862802 148938772 472326917 484680470 286161622 14753780 169369971 531470970 587899898 431905443 862887950 194592463 636222507 844270345 456959756 240130340 916348788 189910704 322844883 703930212 772612241 751626908 172848861 293288956 501586088 289887227 900897240 512941273 640625596 79593347 810310754 220658984 452803083 705711316 197254996 114089562 168234940 625478059 462523127 383245650 369641645 164363784 538784285 107664490 452147770 850858574 846478905 262243296 450947498 648373257 530577082 744287800 9448212 111916457 874933680 57787464 202626854 368204491 582840286 101746748 970547499 370962526 989641503 698917955 343242024 231061494 301009035 703180422 312461970 902418143 920954432 263489918 270897670 971402727 886344247 960199559 979925865 509106501 992065480 820612993 718908662 131079933 109982834 591129327 74572125 95741994 170264849 792422752 748368815 663888855 890693944 98507406 787973332 658639608 680810226 497887749 187707851 770122083 529242135 130540683 47655451 818048830 118623027 751567199 502597320 671538759 562357751 663268972 770644690 73682990 447782371 529651951 725033656 61860998 548808079 538023370 81095513 392441008 486647653 29149493 522859449 56396961 831702185 300229045 135186911 674678168 219840121 445535352 767540932 161793340 709896125 155045671 317090052 594790136 848434676 183870366 782683494 273689322 744382971 625887373 113524595 60058518 268789538 263426428 218127428 976894849 932208494 244261338 976489223 971585004 902683787 47018059 911017140 172428257 375309284 847267131 733728332 563519358 950592023 129100441 437741950 930317929 940933351 390552015 132841897 304355169 36167394 45460126 383942561 554054236 170658409 804864903 515286948 339376672 788707470 653424026 389104127 558258993 819597311 813227219 851850167 729295305 645551896 174807515 664351420 221438610 59403009 562700801 777628142 407419852 598065113 240580135 108896903 113108871 467299804 309065737 745406284 522769064 67790607 112477418 306770053 610671519 784493983 253642889 236444833 93508115 899981780 586465097 537861641 264039083 195649478 969300754 62611811 559775110 340890824 171895078 675053779 18431923 514186129 520156874 691828434 100104283 942278286 802170139 714905225 500728841 859404416 714060416 238708626 868456836 730430915 526521534 313963570 563420400 261192370 213573061 575033813 797954710 841110281 226548048 417640744 148140570 131206025 462849912 472038852 584577331 818401656 254050947 118887171 273023724 884307734 563986816 964688598 272568709 995003434 24788162 48414639 387234908 625093098 642615108 458609436 480911730 623626960 750702520 489007629 526917944 156203043 845706118 827945455 122949924 712799999 588142068 15344916 71125737 371094220 276963156 716994389 226286500 979220657 417727274 442604120 133144383 820354217 142025715 564785320 9978999 73488736 732085284 799651207 401860607 649082296 780929875 737349667 593150544 845554546 693605071 235658779 2283913 787909617 91025813 700526280 153176631 223200700 127049579 302813988 380066269 504670613 478834596 956325401 204674516 139705019 796396901 868916604 525516714 513097053 723479422 209583498 927882539 953982768 348531389 132084363 535513728 780514039 217744444 245800845 171295958 159904259 767945007 398318237 897724112 150692731 756014767 77548785 859976453 132576636 9901841 41783687 150777423 276767751 988352083 666349527 155277883 597856189 676484285 273827958 539322123 432526164 726550911 232292549 222019286 378126083 586118632 36081801 72950635 601661552 610298292 837294603 21458437 596075542 745753801 152490836 567632376 645454514 929913787 74497398 521671989 580747025 772055795 186331263 83991204 999514340 942110881 853042703 760258971 503815264 259464286 291776530 576708755 566717055 500593532 237385422 812726438 76442188 706665860 460417428 141646435 136181304 207529002 546938459 328142615 654020311 511060828 344788291 388013255 453037474 704540753 117560068 590694525 953686846 53346903 317788048 121945930 938206178 626097688 405309214 345091818 276538059 30058306 165489451 437153695 657727640 783690509 109723237 285647279 678218487 755985031 112627405 660370472 94734133 874126707 303115894 755858170 634646009 845405158 526398152 167745510 662782318 900151225 170697425 710316543 495241584 403018555 27577126 605639622 288501284 454200618 771950256 776860079 596344177 318143318 392055969 496316108 736326190 744095154 656845343 284951352 845511662 768717294 282745019 184803483 530763646 582599591 12316752 424114771 840301793 523087489 997021137 678163447 577765852 441067360 859421080 104948740 811409592 959545440 170479470 132420597 147571149 662571930 682231875 673039046 636419776 46654207 479481285 942048595 646361709 273894797 88250662 600982584 647205611 952941039 967917192 627128097 983027449 174903746 30324615 709372714 319815653 699323263 41215171 521075441 951365923 668027377 465532852 80248009 343629752 32506061 385089551 133525954 713972590 161831653 988083674 227998793 309355092 610918798 528958849 5372095 24723137 591185370 610826003 551443818 557306439 752551895 964137311 381291067 469095076 844161283 852026903 472072121 270845994 547557847 30308538 755612432 914945571 555215899 171895064 455373945 253667580 410490225 561282474 19756393 288413001 482999238 457419603 312717736 468870866 824551014 523888709 465705315 964886314 175446529 414106655 690610718 638460680 433169454 517771489 201146383 134931683 127211151 760796428 193767263 665222551 601253635 631078835 328930386 142934395 552276199 956102141 788144558 820937444 215155947 60774906 871588198 268099909 984958818 613652514 364759500 49538795 559188875 909214047 631671404 496355897 691956668 980382317 331576608 942357820 323899021 200436275 313935660 165549330 143694503 379218701 114096733 183780957 481587984 621008054 475031717 955490095 349476373 456549518 519961959 242791889 212049098 343519628 262895479 420580312 455218453 46628657 1174790 194789490 433318542 711989205 132906865 110770858 196412374 216881667 460045358 792851055 687558158 930796489 99186271 737967221 669055108 861086958 944557916 196817430 127049134 118434969 334106868 625294200 605479735 124991426 399128230 437559916 536589390 631291225 684557572 42363177 130203158 119555892 73111787 648641160 389589936 427748154 827543821 433928602 622341269 42065578 103224112 708420753 837760814 79083559 977031193 760565085 106621425 534077486 674161339 473871426 809675558 393354982 170781497 798865706 731947907 518176920 492813115 725057307 882152899 19962204 751751271 729740968 432808237 140707614 233937630 156909378 975523214 405445520 917895428 591538857 504533985 414467780 352786193 163511630 479963953 251661307 431134288 804036056 419169656 429772047 333038398 121111011 555184860 887432522 422962903 979603923 684117270 288148782 950301849 855325923 399860561 646306001 421644809 307570264 385460164 7533376 960870760 564938480 899432811 365847512 864452858 114116490 408646820 106248726 290640660 415460350 387601495 581313074 395088991 20333486 472059637 422671168 929023887 278243413 248767115 403124657 626000342 900377026 787195789 279026873 46434379 963855890 546914543 187712365 878218856 846441415 938195952 930898101 901663635 517108444 773655905 682951347 300806239 889679052 223452231 235505637 952058824 329658437 686173086 456735635 790450684 434769234 127814462 928818942 380242694 300931584 575643970 147363322 82990985 733874301 529846452 349655434 637859955 750092546 946454183 842995322 763244887 589159323 453466991 701173718 597313223 30070799 328548399 144129806 262295242 52572948 169114732 91503711 744766607 633791676 459545683 476248478 259272768 981382549 309035616 530519681 412560446 876035027 769712449 919086028 913634658 28053593 418285112 313477517 545244161 122745277 503881141 557007240 195714673 808127643 710439933 248504303 200222262 223813867 218993568 975556070 306526240 822853700 696925123 243324169 951874736 317553285 728317592 36563201 877192239 684262722 423087253 545099710 144943692 621884654 112492941 101454458 448759280 319245869 683397727 216478521 115490324 2727115 384555276 786121546 322521282 634429360 492229642 556916726 985472944 629052744 828355588 158818451 915927832 392043022 14488043 297515481 402059476 60343832 768338295 97725290 437988912 491502721 291846912 653598243 869820355 682359581 479520670 755388631 629286645 16091309 330912624 572716221 375338294 984756884 356602745 489824201 905501369 293009278 87037965 619395639 777862720 151656165 818985866 967120882 896732915 174475856 355264017 448977107 496659165 161408490 366660308 9464169 371201022 495565218 739482485 990727416 919169389 623663663 190552567 317973158 354763823 667443248 770455433 716972915 258574623 837232206 801191068 717158051 349580944 301889045 164226092 903043387 530991061 216954228 137069547 815417557 704572827 577011027 961703648 183898776 315537605 773155291 455512648 838061778 471985145 914779742 17649371 100606842 410970197 770258071 679245777 503951130 366135585 994827669 389094952 599364745 54788145 552464497 528948866 687569392 404883689 12175845 806816047 332668390 309810553 969263403 377150677 207547587 417944486 63986926 886461426 601634879 543141159 327512824 74682741 142223430 908708020 519334611 349179602 610398667 522916191 300837405 800927371 428352554 175538112 657101162 942498362 514013788 862603697 941805406 144305525 250491276 287080496 146963104 399698677 173055351 551817922 920857132 941963622 8483880 509696644 782610199 714644249 994075340 796578792 136670491 222848361 336918225 304216914 454407968 894636272 467690428 336399369 691891815 872642459 802175661 656604967 880181063 19571688 278036967 165888557 980646046 139305312 37634648 709035170 602383344 264277518 534782663 711285790 386050928 388469886 301689511 194094989 6280954 250785309 988496336 805146148 841342777 639610940 582404070 795533892 440774757 329122733 938762194 185157449 699261793 130514420 69129521 293031623 820528235 154864139 779198790 476243862 446602913 366876424 664783165 227967637 919529068 748663388 774352930 876110913 380244342 206370804 863166915 592505552 983569913 208977852 912440757 584404071 730866653 614944689 52567024 518345366 820816639 277671323 220676044 536390018 895996473 906823657 411642787 417410777 49138451 183774282 924333225 662440709 504579295 468065903 560911341 380933384 588851877 108744791 482278306 818001240 713077431 212980382 323068890 956474814 66357100 474024058 329557294 87278570 572291928 43157928 136319673 787413189 665829413 378879658 490796763 368321044 555356470 230041899 56908195 564746432 66690901 862863185 879370693 925851285 998892444 705374604 950739016 399898335 866390502 465797693 988226315 737460091 890934780 864772308 627034192 521608689 156217583 62875689 521620021 244384488 196393010 116417387 761275853 839408757 335226890 683984944 31755153 7823636 997084599 391777888 532038035 616356728 501133528 628893994 947767640 488458018 571200839 452709808 789335376 968469737 958300527 899944202 866159044 669589989 121345895 959487701 904470105 876865623 28205843 21643759 818773779 765773265 407679026 74530535 769376184 140726313 228206355 199870578 938250139 953812951 79385665 38087085 840677322 122704055 204977441 200554164 144115865 734168491 204930141 234986110 802664304 394707149 494451913 552477067 520556930 875317109 979085191 958473919 697026823 664567906 38503499 777559458 213670531 32822447 386940472 789011583 367982494 583606656 55317329 253589768 797167461 143301716 254681773 612464603 690496466 840311480 397444511 689652412 898304629 153805865 737555585 401954403 426107972 315185651 698920540 342326700 50200534 801156681 933812032 648052761 587691392 422527697 777961942 510103913 944152866 747868103 712706658 414092155 615468174 326757586 360339209 190248814 598953853 48473074 241621250 495213816 528144353 229297409 304220736 914901626 707018708 131689267 158120129 683235153 133902209 342528136 771285994 911887411 779878053 501823345 313589782 27222503 234855472 135783870 833897624 637248779 860862171 328695460 889601047 508207978 345050930 379542978 741735668 673733712 809018693 412229346 478747736 709401143 252139773 22766148 612513056 125395580 3413199 3974827 174795586 615769569 570685182 114989082 523059021 217374256 328344389 576034117 603830497 878322848 25541517 826925256 584976526 607004777 184408454 15384823 749683800 285277941 991703478 327466057 996715401 362557215 766935593 804627708 75691872 399834977 422572969 714892747 67116516 829536410 604084704 879137061 43102281 181203672 161219091 58195302 617648988 528486162 757514916 316258772 305938828 138124043 458271834 585444713 545475521 962653124 990987874 993684707 767323888 281285078 593013822 429348910 688188170 712783411 946573969 95148808 310289404 324072041 158012212 17232007 240694672 778696856 44080137 488785723 116715469 213987840 696152701 577642614 1245628 731020390 321938025 932643620 726477543 833657433 658421506 73819076 58787222 836612832 965465776 281023468 798406432 606444967 402166143 570084177 305780034 203802477 399401048 622384708 585491054 334158185 768992686 712533094 172781753 145468148 28386641 794743174 138179671 529058818 45727196 910378702 45817855 981550752 511342090 43859957 265346636 308835978 474042899 766493138 355339493 470794809 344875085 880118966 259447176 48919022 138005199 364510894 899040619 647640803 565109743 467217696 479886635 606651865 419037076 63321576 643933921 377669937 906837689 89782466 161632255 912918033 792658490 735934404 822597738 809915771 461517413 105287071 274036212 305549520 318686987 141867036 311187439 991609738 831096474 461690660 187339508 64238052 863936893 820693870 743400947 446227925 117233058 192054590 177149854 732051841 188687205 181466130 449646997 533369597 193182851 284295521 833594155 183284490 917623136 927840854 56519684 932638457 856242982 320658402 450454530 422367917 298616199 957276558 945523615 172957997 899749223 817371051 393888183 157219517 284256635 876696308 127744795 581345722 321618516 525824308 252289303 723298562 840343033 249335385 799358896 378724771 92271362 702192268 784319377 215472138 880643545 461552368 810950219 785748372 612691920 706023603 301239782 363021539 281569127 816033877 849359547 904821724 317361537 302119191 489676732 557817648 848395286 578384294 744562829 385409747 43821856 186052925 732561392 607534415 246271768 832152021 332560504 460922229 660661306 954317366 214231794 698153907 573221292 238483128 876740946 446275182 792118471 665373735 898032886 336565394 856097329 437165801 461181524 405920944 356782949 642534084 237963699 601872500 560552173 205176580 542594450 788716514 861338563 73528016 681503582 19785063 461991050 362099197 409037811 390774821 39965745 521652270 229473253 875909932 999241315 840426807 354413978 638279235 108700614 493346285 731914114 940048326 29326490 894555376 739769362 800144280 190788032 686404447 579989824 662531742 390752257 186648386 72800109 19102821 757823227 256652204 306212764 576296251 171121555 388923766 637579873 807133147 674680081 759122899 274459006 722296580 990949098 121108620 302634188 381539911 523828559 941054563 996179343 933368265 411755221 917961547 442115066 77971296 212233215 684383635 81616775 845830927 460039145 815835955 20914315 877417281 977468523 151119642 427777153 89380797 413676019 116487303 231428748 669054204 642304629 511141640 361749154 67416272 853958777 268561238 913301068 458133094 690145358 200254937 73960276 704303609 549375664 781281867 288588403 470701728 275854013 732782873 445728047 688913217 442170259 377416780 946938563 446271395 521970189 293086637 776931798 388133273 539062454 29853583 328481402 146526005 482723232 314382907 570678674 717795959 863771300 700772533 884617337 127866044 341590946 684555045 733689300 203168399 780259422 605876341 653692128 587593790 975565747 54731287 654715332 69160830 102349136 526868515 743272405 978271083 554025847 273424259 526779611 412926382 899533836 196615644 583505866 760334458 671476126 872287173 841631835 140942717 258802458 585697202 311740246 524293928 854396540 425609122 827273890 847681239 444496244 353276259 563736554 492513224 79004241 739406836 860673670 254115311 8775131 476450317 789112901 220969231 128565800 313317760 757680322 780077056 830418157 840461564 551201737 392560402 4811537 691294951 145442604 403011633 781502988 979058550 538859584 820108476 664942351 738034737 3414928 436744315 249308040 704288965 274574439 908384749 576086738 94850308 420344229 657349646 430837752 967881809 876369437 774618693 985750288 580824254 86060841 169139011 219003300 144849983 51419446 309498703 189192332 870968722 701770799 10574778 185265495 11816504 26269666 246412313 669873057 385679139 779445822 847040829 737950895 108952374 5800726 542660019 854262952 422441219 801752595 562585609 582723503 602545541 420329653 392149187 530113924 402121864 379953158 88944246 706794041 446554655 906855929 540506855 275030732 102504188 348478213 330384638 367277039 947872033 814127442 361412216 679072638 326987797 594560449 503625746 232989630 403977549 476848056 710258555 27684283 120024831 65976653 315468375 4483673 701785039 561422665 518189726 192117970 589444294 459184942 131813231 529123422 100554450 864664175 615967133 189327019 334750657 863912558 179221321 977592393 763268094 203193829 115064453 307292306 230276492 392853997 715880822 901802643 417002518 662917705 975680189 735138063 908651220 1149192 939319278 86930314 339440560 769269398 207719626 499725272 257909829 681274377 544176256 981823845 431027113 815976975 332876942 884383314 160381576 639453739 279039256 63617499 851817236 779257128 464358426 64130096 536815748 497523874 598062302 748160113 898681475 300884679 757646897 645503543 374326635 450227245 81146918 864929838 124769329 455011284 273318382 783318591 884108988 384286341 63028664 761498265 623392724 977570393 898846135 977036095 58008571 428241530 810690755 835854961 224304174 796035930 476597448 331974796 895587647 468262967 477392070 587060723 398815404 469945227 599390641 291216553 411113672 248525552 507808846 174707789 395383246 65883686 617811664 186197645 551636118 899748145 965428936 965990606 862462470 841462266 238741809 700984050 804963077 378599806 271145322 471128411 187467486 386116911 675812462 611043783 427666249 418744107 887377039 755613938 915774951 758184129 90440715 899879723 72351823 42147858 194097943 480082061 116152140 826170102 518634849 40926352 990844187 723836837 245427082 715356772 294477059 785268837 331745539 986320715 770755097 650259725 694706264 135515897 827328796 165067431 781663875 707717744 920625255 982306988 455652588 898724078 454059603 668237449 783253004 527785126 6346933 922231696 397809305 270383718 139346783 318345616 417694881 64858867 354212584 10612296 373406672 841379927 525759969 308864378 965466356 929637447 415785654 820672249 816913727 168567500 683996971 958107796 564367713 334971022 803700559 626543764 73245784 851570924 294025563 496838364 143089877 11141774 652236852 172981247 613591709 94115577 916590260 302879542 470393011 879783812 312566184 129985875 291155083 174690953 187270212 406823424 312547192 600904692 257990143 805884020 888507 90829738 67366670 948385457 360467762 206611363 872449976 6247804 198328376 585481104 571625270 57122058 904657297 428930321 685079840 462891794 90127650 685695448 220371445 570542241 954491115 784794742 47481894 35324917 36892241 354153818 458657750 904852707 959377911 116136994 370398323 271124375 370879174 485509619 530425995 669930890 765841927 999889548 929705979 732809222 968753185 134631037 593126322 633414889 376304922 369334606 702913966 450869910 199861066 560120703 371855514 517277669 39609454 650449002 44481271 708289771 306341497 232774836 713323637 329305070 756203240 209374651 131645793 123124549 948736474 716831600 609782353 491866252 478732071 988537189 304483146 96244949 953330284 699552263 230582872 411544864 335795975 258233745 411666847 409653784 992285895 137437135 959605365 454987545 230055780 622299 502929657 721072523 417771552 207581836 314634512 595914064 343791777 187289747 554822559 464897533 79569767 774390046 137999732 315906822 88929302 637264755 589290629 849923165 671351729 521422437 284071910 304059616 942649258 738129992 272908012 114986099 146452497 309365063 563885446 189570016 677607893 998056223 228246311 514797837 664141551 935695675 721633711 636637674 295437119 684100021 520766628 252004640 599818867 951110923 373684064 225218223 91445510 464095234 283412942 589756932 153335211 474092482 447728538 486673981 762600881 790932396 988881928 761247066 665137311 942127726 126495380 219139381 429691737 253767028 725302335 145375593 997576591 238968503 658491822 826315354 286415782 251058623 897409492 37955429 773206566 854388488 525331881 720285369 291127304 268219685 61356588 651170105 848056862 411255057 206016287 723154293 771592062 294213669 990262173 773183542 153334621 411656189 250666031 290894293 398931973 736588704 876037752 346696127 72781961 420789871 630443644 531102843 992260444 609848966 654677136 411197256 947224473 65363144 433341752 240841517 399447574 705076023 369559787 839712501 894342609 623577454 607503760 495729319 637507259 894648623 886062607 689363017 836450738 862186896 58285961 711557534 49691310 388788792 490310421 699393160 923450030 454989479 946146940 742884070 21767282 876612949 282158437 173189322 924618552 501297452 248990769 526023269 745471657 990285718 549255555 120483159 662282997 970072763 612704591 451663807 567841764 352409852 806893206 565047851 506225157 345572658 8736067 654749047 649135041 280341862 675762670 608609445 977552611 782365531 926513659 812589260 86938552 612542031 692942076 783812389 183879202 316354503 591765082 71302587 881197839 550724773 939993896 976650257 912041509 535055715 956514044 754518696 549215543 944473750 236041163 766523046 851094206 280517717 846466717 690688369 68538389 882146448 384102820 621355449 328472485 872611992 431121251 576005462 622787301 234218458 243556499 700583 905120372 723625124 878851604 553163140 873333232 295223416 280222340 359348757 637541653 678258334 566586224 33696479 537205491 291304948 537164957 505148666 664488859 791298249 722700429 242079379 38808120 236933973 764971376 239402404 447771953 476299520 665421423 356003101 756854811 835244792 688170990 593400182 533378540 617168936 817420990 983321640 806163020 253106251 4489169 894358576 912271304 199858765 312513650 168910911 111257653 664206440 279511384 439520877 879177066 753684349 188530727 304537861 145187990 621332406 668876190 154775808 395695924 43960940 421373409 83701741 533746900 893965140 250396309 402973072 864200461 885879380 792479616 167315894 161572803 119715136 925045919 191130892 107664629 236929923 60052407 268994269 250728094 673748521 813017581 977769752 431086411 526377895 799970925 764319019 925553619 430358997 651078825 533823079 759503738 98773505 189686833 66805427 183558497 211604904 680285250 240914269 491541279 435770958 30249414 572704361 162582465 363178937 343610683 5377466 709186965 818416986 915812601 866196460 951674754 748223858 554023149 239297164 750324059 907078449 7970558 811716799 544600627 190356063 684536785 274019 603346508 827105479 362190616 641140739 888900145 920144385 635242721 142745165 551060034 245642201 166633772 277544880 149310547 892001199 780532448 644192453 648387049 945477609 789198089 756063421 821963980 184782925 917439324 954036544 130401487 61625498 909756479 89552059 823897508 226173954 910031268 450218893 200655995 175732403 208107663 349952948 30049948 361428918 11825418 370053761 654597723 312371710 521224416 502498270 911200555 460450995 789485831 118764298 274523937 159428567 274372602 19903601 102848378 97569824 422271837 875648988 406187759 220631255 85750310 121615708 630446026 766744091 417673092 620440970 449526658 845401435 848453885 962999319 223429392 363274464 928352316 15144349 435989566 464687692 685754823 810968447 95185876 343824833 17948682 666028571 737892557 192330513 990977549 26747098 622004670 676335469 470065762 502214135 538291395 435903073 440526957 339273855 842122314 497155180 986078372 912155507 581418854 288520324 459170891 488340657 729864593 28422957 526001806 202635039 195753345 195986245 332064118 516028764 639582109 298463020 823314227 527680721 998204257 880212504 168774009 995442652 607336322 865219806 103797756 211772211 770072578 461182363 581114700 331851131 604769245 931716485 454609701 86166859 322805152 948609061 466927745 337134728 176922885 756289486 95101892 407689974 661085790 582444051 872332056 262855406 64267262 281725294 220540444 226081743 189830217 602602553 6091584 463279675 7204984 402700855 960191342 401383831 282189566 472662106 42022429 777843288 190747739 500269207 264660930 281921261 1559487 880472513 619513706 31035241 13875185 530466957 625709183 743536479 501550495 371769849 203505529 465782643 47512741 611729680 268728173 54102539 751855438 295999641 592599620 553242987 442036778 173850514 472604959 267103723 251055536 447214607 349064277 473222273 496258017 397116796 242340352 627838305 284146584 171406123 285288383 460721380 583628195 780615567 344103338 744432922 292435542 162401721 859458648 985781881 519162048 294658565 682693182 135236676 180419919 819186845 734569446 906884973 592440386 899361218 267201560 323259200 371668866 214759558 150153753 960417571 56801636 142731017 282045589 116770258 570106347 250337163 915143044 749458898 93329906 474401495 622068984 282643596 416715352 79973149 989233519 231410308 34809973 123680396 189374267 703727016 335285648 526761519 909256845 861448369 196646811 951070851 483961163 745579438 243256873 765218523 68919131 208619586 381994593 431976925 78712044 3810526 606648155 482040020 932176371 445083822 963851825 555843517 127521275 311603781 256943059 760197653 72555471 669012888 872032163 783673463 505066702 886055298 939379443 853958855 359460097 254685597 921913454 100145970 69274636 926548517 33019025 15550388 949793988 930931842 466735641 232512107 100035660 914615377 794266903 595610928 161929871 622624993 240055312 113471328 829828155 983334389 101062549 445350406 251400130 603685500 67588110 921674623 736477221 347194779 752043492 686190376 356887782 778273869 167343469 912474938 33314648 557433058 291281079 936131666 557029094 360608445 940910713 721329642 910411984 837182791 449217884 23306715 903284000 865898510 645035523 157681819 163826688 584050465 678822005 261060879 12580005 876527201 355710378 174568169 624595940 860775129 164755336 703189620 75469705 401388418 531310474 256680351 555754302 542596767 215463046 674087988 879506890 375164722 953182113 607359928 56503599 269932695 201471754 763755128 712644324 225940133 835173028 199720055 533219813 901655181 635125565 76882106 345860444 147784706 228523166 877789150 627687627 745534616 248060245 808170504 489709330 95097166 596806397 523593629 90288804 545846413 372664283 153360835 775544077 612049487 708702353 125338391 597200185 829200245 290472240 156944359 103244438 817854524 470177683 860229058 67743650 604456429 348974426 46302941 90870881 638543326 671266574 189790256 550410986 325198434 978104367 553782786 103890009 406646724 687405379 900436834 302216133 104742396 147798441 784693494 632848912 636867299 91951379 580928699 103457528 637997263 755124053 292172286 739651314 637799558 906593178 109538963 449537602 349077097 437307374 662820526 648741378 69416838 725365519 935944089 657799939 575762328 934480687 39004072 605260176 468188839 571457744 28896917 827847182 496138393 691064514 691504483 798495106 740064268 164737240 435340355 972854680 115784483 24648548 876034301 909639998 709488100 229902553 279198234 651602381 923514949 523658321 924916920 367188565 84006988 505004529 950844946 127234618 216088244 795142892 480404874 703840489 893905006 540848751 708760264 186916320 791119803 961006105 107060399 717194016 804811898 655275545 843031762 32788515 924849530 6666712 243163422 43547258 932481431 680978430 226558090 515210284 300229149 215171409 859423590 174780224 893518372 377714035 104504565 453223842 9349823 860161295 4662163 167987631 899876797 804020949 316563951 626627594 554662590 242423204 10768093 618722500 959550187 688193648 801044840 834597500 63352756 296794368 330056417 635493967 964766023 552482601 803499901 600890838 189227899 823934347 191417579 273985652 585594527 200808961 436864443 400534767 927090340 382245525 242131161 945090033 418996141 8345207 274348385 951090496 142404363 70188626 377841678 291103524 428467578 95635391 539639998 775762566 915286259 424198733 981094268 465402565 361947131 699769006 396070334 833135795 86536833 664752939 34280698 329614758 633139647 458752885 833265804 204233634 774721749 120761499 740417796 297698105 715244087 360669895 791335109 914864844 205795168 339749023 34351831 958221342 93226444 438069636 604013037 488314417 573815461 543469148 887995417 897104985 450748215 807976460 280084402 261726871 34527683 369924137 314690779 147165939 960026127 667581325 36002824 264360662 559373172 557063563 799184265 660381843 430169119 944204827 798866051 232457516 431748027 318598036 576334812 327206255 146271217 498717953 984524130 17217204 22468335 967789504 83864912 742291300 110012492 593361468 301873000 533479673 771195033 327951626 324678194 178198331 47412801 509386580 691504681 332260428 109673630 664838546 981710072 85074091 946367107 542306832 551653269 966616024 488004118 32569139 314231153 512294167 115208335 570982673 820207305 630637753 703089480 870895986 611428997 513136846 197697266 52262906 379854442 138638073 27020479 193321249 832733578 327849879 848848226 732044475 995306182 591260316 270909332 588089229 827880992 284373740 961106918 895576433 317651317 738235607 336316328 727204379 836366947 999651527 118110747 457238719 452971779 42513496 49615659 409512620 193266359 702010269 556820947 91736180 754579078 697626338 242275516 353699013 32644796 701916643 244404501 264342010 602585258 749093727 568369103 277689019 344181100 257294603 543725170 115931751 918597204 573202235 851596901 271325870 885434505 308142804 169172977 998316257 376763521 450503697 599428523 928030583 921893726 685770689 597712295 125568765 47733213 988817208 15942510 897666529 733100701 628069285 238482965 939709505 397664809 428882965 807723904 54764 691569905 635278303 327257190 626368427 819348401 178911842 884276608 382922040 476157727 732104791 579115810 743378430 869662474 431856179 895556861 280377430 307067312 639249511 715887096 256438022 201281292 186281020 334445300 530753432 323829691 380284507 356177924 457878774 6249297 572686630 118958859 277417479 576083500 226068682 305821197 333897374 951633316 310613105 578232615 888714019 855148885 334107380 92782433 805550561 226677568 537228227 143112299 150035487 472513031 852135620 555942226 459040325 310413313 817104392 485773876 312192222 355286657 88888486 312220842 611426903 874658313 151426308 676597551 964524160 708827271 313801325 786874881 745222461 207904290 355823833 135314033 77731058 302103912 54666372 673473676 391513616 890046410 621860867 165830044 489996441 262338889 226194895 627857923 273374890 74988102 845730781 812759377 194732656 471718432 708074689 306151081 893044856 222124375 284816208 716484184 944591502 485219316 355356054 796116941 587411447 441783227 475648980 835875468 220293785 938476676 84077129 475169225 778138615 436536575 158271706 969852302 286771702 449437930 597546391 541541700 58251882 298825298 146986728 87177241 775675124 392285375 468489706 297528909 972822756 21161196 784186759 315590628 989024712 312934918 619213603 828356305 786047635 7685964 477588955 427137799 406902784 243079518 103681271 999908939 212905823 518734078 547506279 609978068 573025508 991274896 724680761 371682283 388910784 460291660 478001890 814958692 350442687 688876883 595550286 530901606 831257815 268040394 4241467 997883316 881139962 669538692 50377383 3953566 224557952 322212708 185231464 994011160 279851676 894871783 412880403 11515977 216910848 201410577 737721124 613459118 30278479 960645423 54372597 412602554 915336508 346318088 366798922 968606603 282038021 463753258 466269359 719150897 320971833 830906131 666246565 309388400 560935449 307318019 336450864 284660627 517119866 586969819 853458364 480588259 402166605 485298603 224258894 18967904 223088620 513878191 31212020 34993708 281490938 367736078 288500930 298805858 108084304 401376932 397217578 732186677 522566645 53107106 557606467 785365237 57457240 189951406 592856797 503822499 269746438 689283597 804663403 244419747 344515822 878163174 943183495 234943059 300907574 520102783 39731153 268470163 678854627 216543108 883049546 132219105 632330711 762964322 180129990 512970842 515676163 78918443 859266300 876586739 532155969 683515525 491224710 656204488 931603011 150648146 600260210 863846150 742280336 237466516 121468493 964867153 569737361 799611148 944384599 227604236 181606838 631863133 296075912 636167663 708029443 153027709 384872007 248835442 729786809 568449484 870015437 647354219 379053990 498906195 751141989 50519306 480401061 477912301 996377544 172841114 685522928 967722187 546515513 589556153 113325339 373308306 49064916 795940604 729984046 295548152 662943286 763356660 945394943 899698989 380257444 479061662 76564743 775952922 961900118 167837854 307657502 855202240 481054848 54214197 174286191 811688904 284656294 863393156 870825047 658267648 884137257 534005354 898039592 630996485 716114601 587123978 13694577 300970359 415813488 358093453 980997586 703037491 16657265 648095209 483891223 705418285 238376432 620858298 215400256 170693112 640885160 273778863 968067843 431479838 702612206 940662211 693581201 515544985 204476693 111517828 282025067 66303875 181796682 14352649 24091922 923801301 756406155 284594418 813625630 970067219 210140925 385421183 5580739 751698228 982905816 282972563 238091423 602759071 778574603 874907000 649434129 980087893 407330553 854215266 623715241 373858782 372943769 324208337 758481375 900150306 692847476 378186517 447573922 543092512 650470165 449026967 149513322 624040537 852340766 859635683 662236483 740925009 991249769 895136327 347563472 392825026 340044298 355665888 984054689 964286385 453692851 649996212 290044452 616915498 434617769 197711961 775979852 365541250 486629039 138341206 748423121 755586065 549011966 418768429 727393159 395937537 521798271 823801460 685062701 655062524 552175231 167144541 449525603 595469455 471487300 888156567 182347361 243073992 849376520 149435504 439089226 609049609 976105508 313098328 82878399 815445242 536935936 304283822 164411686 240763345 1053621 82369440 481271468 924109269 550269166 136122051 687955346 585187737 765344536 665899461 120752655 449309306 163164982 713021888 456652599 246385171 170943239 705390432 350625027 680044514 466704432 569018700 123623722 856774379 10471856 633021661 784092205 832163201 768342521 256724992 603343839 324894700 842246581 221090713 104569123 391858959 604864438 804899685 334064677 13478917 199624193 506060940 884735584 828238040 645467654 488789345 476621988 27749458 607006852 521603582 793699981 867313091 12988245 242704539 221971243 70679440 656550935 785407523 665527067 240517652 26519831 806385974 396263862 999476080 997729636 680940232 217794696 699188602 402303544 294668498 349722688 34116890 638519804 490709907 978963920 491687109 438641792 14692422 235879504 67233728 256056227 475834231 669852319 193251671 657506687 29446695 504210530 810018377 532323819 99473979 439883929 243078203 66563638 287940804 336931446 820479157 468332129 390809825 712696089 342154458 387369178 468546313 176160565 426478831 390224064 865693654 457805805 9935664 352880234 113173510 48797060 625999878 772846651 260517132 260005786 975100076 595990813 539818238 105001732 983985830 648550276 27878835 150987468 507509155 358732241 732490044 254680304 910799550 211676699 259725655 195561099 661823339 308387310 334097141 470494974 816240220 169873528 507636727 163544491 126360273 800368816 19992985 97560660 79530404 31354845 264401966 112720911 9574425 806675952 816062012 582000644 240620823 423991258 235452822 225016989 842511665 988723377 625523631 335220492 787786152 631332274 804133203 12419946 899215221 90075621 61820541 139708704 602688164 656617375 113460926 39872473 865883422 889569907 99460496 807644012 423113418 567930347 622546904 884472274 113207527 782939115 369530595 431015785 67119581 127062989 59828642 623875703 826554312 983673250 164297928 745654522 290444634 37779418 50633489 408507244 455133798 190368274 92250643 138154352 870249403 97364490 732054535 855179130 488009750 982018649 129554188 256917863 269824550 229910285 242785967 899268543 31787121 297257985 196386933 486123268 966982063 556989840 8177159 570128743 990867154 288615543 488392134 4999717 142456433 333983894 109229516 678357813 313260966 125068296 315328644 526951835 252678623 594923430 914022206 717451222 675309484 386228671 376558519 8989563 956202600 468262152 725213450 106622673 713115838 317531527 296722478 853474366 915792390 494725471 251477323 475195615 360085354 94753578 405096518 202408390 232948881 23689422 943565584 557310082 398945342 953850524 780109033 375760159 584613186 393636630 402327176 664496362 857281507 713397698 500146928 892931128 664285064 38234114 309420211 9920189 429283967 561672936 825402246 540462276 286753102 244999585 664598297 262153979 533523301 197470149 972226776 601732976 232298118 524597699 340386801 590085078 845344691 729828414 229122760 678486041 740002140 144075157 739628945 467057162 26594361 851571275 539895894 182195437 926355332 242052003 936870615 468907375 648940163 459347131 642482838 664885216 974097786 694581775 947940797 877561771 768764456 614237869 226310926 741070595 506004979 420004330 946076059 612421589 728306212 157555844 408895550 837117644 458714612 674804420 491868455 32280887 499971699 236375095 111511080 645127689 733847837 789268154 65197573 999804539 558267406 671925649 286151866 731811870 674795880 278404352 344591689 638803275 440164379 281254285 890142785 828304526 178794432 688421757 143122769 494594230 341713186 921516968 500607326 793477085 260700315 148040632 994375518 33413472 288896216 359436393 758657707 492867969 505401376 409367415 799727184 520743310 448992377 633822886 831257537 344778576 803270640 421967681 117692773 849415824 265043462 349397434 788601260 529795594 939170114 708424757 997606003 959340817 392678977 649854148 49960125 916449585 324632627 815450194 898139373 377050896 648884316 974803447 32581115 837898790 108448993 723174219 285474068 614186783 913923952 986062897 109167787 254824285 102991426 943152955 944981881 231149212 979112912 292855951 109055831 694156296 976940859 288559349 917859129 157159928 381200584 56265111 388736219 155802842 212739498 288062920 192813251 214207703 339016121 1306358 111102319 187859935 937864705 792110429 553898848 716037618 976270952 663964877 49813955 566257896 452323119 37455887 473590027 760790725 582519834 843852246 980165870 538070177 648346317 844239869 336265839 345063060 726826622 982943894 320630861 299759217 311938515 872127236 172526668 380165576 999871715 27454392 77159548 12490657 483673555 863515242 128065662 18863427 458511836 550571000 333795946 571218010 299913312 259768911 807218643 821084575 497426045 284390634 690402153 771658693 817467064 255241795 663406975 100639873 467210295 787105310 592805719 12139947 963724325 847155826 629604130 372432676 858023723 417112023 424522171 420467269 936634255 960956104 556654405 10717636 541564897 526967188 649308615 586063756 317776090 776144398 657331213 466174760 992094570 396009986 133132665 793694374 240249011 835441349 800255728 439811459 564320484 597541097 18472872 95033906 351522548 595404674 975491373 91384415 969789358 351522978 926060413 746182567 464759419 25410980 768164251 285915319 135213493 307430101 360149188 137731744 636495255 327893731 178553532 513936860 682459660 59670680 365448555 103422841 878319590 293729400 8399493 356449450 824692254 899505800 158211716 272141654 171792748 457005177 914835543 292617441 951376936 600569788 555014771 425344309 691802971 205442191 554707526 967134340 604903310 978554605 842988209 166312642 528192527 893029734 140570807 871408807 77106884 84371525 204814795 229822967 827620409 792504363 356587085 16643797 774372144 650123982 481533554 484751634 393634916 932121289 447132505 595258384 249771466 83560310 597265439 995706780 23095599 979426687 672536302 383543387 962203346 707424509 638451884 998547833 284807074 354176372 113952097 199598800 664818720 670075812 998416944 79605704 709619670 351884944 925220764 997007024 678853068 899683133 691584593 27820438 175159218 640892290 318479473 488460352 786363726 87669561 696443384 535221203 210023063 136245524 401753898 745086659 300453345 347169814 695798305 636331138 466637033 722475517 289333354 50019756 296905870 418664526 660246685 745172704 726526328 473845742 983675547 975895041 404143276 894699011 948292849 675040071 399177890 17830408 63226650 285069414 205977678 529594204 752967648 402783586 353779162 443745175 396409621 665327926 998091363 806522986 506127261 805811423 428266096 715368937 662185394 111332837 930975633 785919827 60656835 235431462 143290158 531968918 621655963 857547486 193824569 837964731 999738690 896155431 554199410 150074905 630182684 66450333 881755848 530321914 118435618 335067410 654205144 527598840 979679622 92803790 204360756 31568115 870510829 639722650 34488016 39924132 960349433 890809880 239720191 617768638 411013959 922718655 406719036 58343007 170924138 435783439 325579159 62242935 876352709 213093717 710675389 735036656 755828477 236125477 362841512 54613931 430221854 946780676 813134694 154513912 191034555 246781077 343802145 264081497 924465571 302944222 389879904 262406909 201424693 665321731 486370448 478761013 998648105 919807663 752079906 259663489 76996422 398361305 91203245 466983495 944943118 838968746 427086573 99841129 80607436 400979299 185600962 856210276 21552115 614014409 612950024 14865896 247509042 995381089 468395514 606860250 61233059 620680975 357419478 536393008 702068444 904058976 388520896 222796120 108440137 308560259 528813012 437435243 930948885 514111830 89549746 231322383 875515651 470691723 363769303 175405692 804570267 859883492 240964317 507460488 287003075 286503535 429335095 127214852 930306572 859127021 211912756 408135584 156776096 886587592 177661021 568242757 895057587 668407499 653595525 994220801 28198693 990307631 565455257 915085287 121059878 4459973 337954473 330000407 788894654 748008644 125818860 705019719 736139642 385302648 219639250 423390612 736588473 685709366 843160671 108336358 368505965 909621105 544892543 304135710 162616927 985305385 816631711 732436328 972679730 79914976 531071764 209442356 157832921 760765556 224495592 717780628 680459248 813377062 542058795 179546963 839547326 553035935 351191577 996886740 878945381 902647340 760167521 379973328 499235000 641486134 403492167 306097954 137817271 327619001 927144460 965746264 606486458 936247799 692589636 777464837 574166212 472748981 418589982 581064857 517550441 558197695 908161933 125978888 811708663 737111484 377066792 698628078 532016978 651530277 484231110 229773645 927856672 185335106 83479985 517339253 208598978 6026064 131642600 285446009 241792135 950065351 169553235 462773858 857949633 331995583 734153585 295120551 483708269 693462815 796326826 204706734 228978091 613509914 867206645 83204720 530903076 659341674 5163762 300483087 90451684 413055291 805822365 837250177 359430820 921510157 904377140 974191656 696145959 395473231 785713421 909905128 135503566 639441145 711432046 390739740 73025746 278266485 91786154 549992030 492250675 128868287 872030087 584471107 841346656 11377193 919631083 981021486 42745917 687695949 550020502 148145 602107150 242648565 51256171 514785906 15551269 691985694 57064418 830726772 760178008 725434985 663332219 735668650 852219748 7073732 336136047 238553876 905416286 213393380 928038079 481882066 795128739 353853951 509524878 431553752 801627447 805466745 66369748 601507222 421927791 187857871 640870222 72170426 494608133 689755913 232684891 295561195 999696444 454118989 168712331 475742196 698985334 225764226 249396744 297890863 877875401 848339637 679393214 723366644 674592468 724762650 883454578 301471330 67499724 844735542 479805720 683022807 146168626 829928941 739308145 981716838 763305180 288806878 678685317 452770615 954276762 278133878 282369864 481678261 971208483 264502037 391900614 154328367 27070991 982956902 108679445 757726723 758903821 25589220 848244628 563071458 24131396 689044237 781448415 277557356 509359246 871245026 383540297 701414639 119708238 699563158 518378305 527353569 791307390 873896293 924884794 531684679 110879145 24313208 985881888 164499298 697924996 168867653 97182940 614232329 457948857 188574738 734361986 711312651 557291933 909703601 654353621 288299724 401528824 103022423 735920207 675397827 941504787 655405100 953302268 510846665 605110895 719613947 322699865 862804512 292778451 394929716 41249191 35142145 555691119 218625165 383593465 665544660 857905651 313411129 471096185 36905916 443832634 861021205 428347019 40599437 960207887 662986314 828010673 564654276 39241009 571852789 663377148 485993020 520508180 351889737 109188873 837322485 569787645 91995331 758741832 550549855 692092035 321585449 761159581 280786782 762552784 764243897 814269638 21827059 272573120 516260453 748502408 552792078 375272645 246135679 572347291 702594178 811036203 863529519 967371373 905336732 246119795 275995377 522519701 39434685 943685372 464334552 506913125 201472196 93187859 917201507 969884728 505095666 322966644 994625233 900850030 781757541 466737976 351811571 41146022 504060163 888705292 530208793 347802711 184029581 848851952 722764062 520281300 449043582 524621585 649152045 878289047 862546577 520732307 432595513 199532430 578373736 248356367 244747589 251987160 714718430 131713697 476141149 895106348 960364575 511766167 494886190 11412882 860327338 428107776 38551596 712271522 449580987 541287492 790114166 577612045 341505530 790210816 941553565 810014065 193997812 403235023 156972734 256178150 713311925 614575340 959635261 198403942 562358564 449423681 413035964 949165057 774667322 638283264 29041361 980701404 853301762 538863204 140892762 498514275 963357499 561409572 651389284 594642032 867070121 636694902 873372807 591405237 852267150 817866341 567458255 810653057 566558941 944906886 871525715 733392811 214255481 564038705 27824916 441253951 929036996 688498453 332370764 649548444 944119376 290390532 522440238 108747732 657643691 928327902 375976242 171236640 210209487 763139282 136301654 296354595 579220939 374750415 922253491 319695799 292549852 527380313 369876224 871262367 790784534 393289400 529531071 73620899 318196951 400319827 55034208 142028573 415613589 283850480 561361094 547487447 36986417 501730388 811704311 685909106 396966910 554681344 17051472 100057763 928163749 594556084 716684435 735476084 236259181 23800361 259933254 359585851 392994426 745561496 240133310 667521240 630575419 689852992 400606637 569509218 571660026 247267423 319959778 767089638 447765503 846648595 357204639 802734658 60859038 146578643 947058151 784019792 437211109 43320909 561728031 46487379 758993075 673594852 854710763 850923308 662901198 332934466 967588626 594834296 705528125 493306927 14792058 174610172 159270935 275705562 304946137 149124020 767691803 656642067 501353616 183082038 879960666 777331786 482033121 731166010 236589904 598655245 415639162 124994307 349369201 806516398 394803260 508089732 903737580 47722693 972817311 218472651 662599501 859566461 548124478 955119920 544633056 707606136 101334635 194030514 672405146 407089711 226370912 558981543 753992331 556395154 23096348 171555966 147171438 150123686 643492468 305907371 339179275 467315284 841369640 270299420 668632585 854336100 668506125 600590343 799793541 708029333 990385777 882847804 755908823 688382510 729085440 291364979 162579264 689974257 736465637 91280799 968905399 4343414 206463849 626951668 629673430 184485595 135356688 914286175 428627723 616110020 560952426 987155692 249095974 881568203 775429350 151273980 328733204 33217007 548528878 145649915 832411669 873655542 296758826 118568064 46485364 590438113 932535577 271435705 802203381 897197092 870604396 411851299 804053107 177189541 274970773 653603433 934997267 238831232 875972134 665880803 980054094 752549307 387587814 755765800 623333524 457745436 590256059 735526573 887233578 660110709 461095781 143769291 952945464 713688612 297527390 818266344 947068081 422380080 267188495 674206595 406849622 808132969 163137161 923065933 848761769 301689146 270265464 922055510 27510832 586508783 627036946 379668462 267993196 152809434 885369785 463258748 269258962 14871019 871749774 209521204 626170501 195593488 901316536 910625736 305496216 501368590 506064247 327528877 275843321 672600619 306258054 830001184 789266776 12544950 57865222 763901098 573746499 282246243 161413185 803226172 521110281 153144456 710785790 730257969 762330145 220160636 125140850 303808539 152491803 998024873 609152283 514343267 224921615 836097335 600810271 818619245 231509172 72227421 585571825 200548401 60130065 271698856 557346540 682123448 730607900 983767462 765037864 207931204 770236359 965827390 376514672 857957481 95693739 666731004 103980690 157312610 427677075 465547805 636571132 422978461 944211303 360268164 442632488 316214661 374366198 953927075 632158759 528663928 718984689 82999000 123987977 601190059 788875507 999729997 610434065 834945552 593462998 810972550 281196269 915026634 274203226 261576803 892256178 323592345 445705174 830359134 739578818 350946226 143298154 687113319 564886839 210664678 650027449 323980253 397317660 43820140 381997459 437658327 985661244 574438803 571581026 751149334 965206314 823039692 965554498 150783651 844198752 125388244 356061534 753074884 462626968 256140165 266545467 439713131 110115992 963102059 259819734 41148040 131578385 800172752 562751485 585110842 785988174 676104247 295440678 827768999 720711602 899960455 639445922 768818301 239513766 44872152 718137796 972104349 983087013 685768242 930533031 789930118 470526126 568167144 937959763 436447541 648107141 264881105 947377977 969811200 907431050 518800259 589891256 285465661 267358967 240134659 70073810 563532470 449531455 59205011 512230539 651523335 965410181 4222789 621839512 671714587 138703248 754160324 241777891 890643350 276968934 406149034 325709080 317549473 126481850 574417819 272413370 681843090 549313806 50728850 143326461 260423031 205897848 650224612 97440079 52611961 967559761 551000013 779078519 760669413 46492233 873347922 848068393 751272438 50884677 158262738 967121379 601937926 14291500 63224205 790626171 274711946 827722644 24868784 424770563 785397909 305600650 26399994 225360308 794726829 15435682 718819874 416335023 117813187 412390446 599142185 616015477 83887496 919163587 1458533 676944211 165093233 17560069 298213101 844546843 86989664 576672165 129206377 820339471 370677291 869804714 197713697 374270164 197676155 682567650 326879362 990585756 884009619 770406606 224764200 568819179 699119309 878042295 511579235 212347746 805093697 579217620 342898951 189505573 976861789 411400822 23832079 844643049 658327190 403659234 249292022 212609906 972618967 169982146 147741280 902530768 236786754 916546826 353183462 914753839 971080160 386167859 538211443 897478885 698710873 544824945 637853968 928711621 452744673 741051625 157127005 193404664 384507424 624212506 696295192 66896611 570113678 528330374 221354287 349027117 601113331 760593334 117472323 429034725 639572596 834702801 588634113 512272043 771504010 606321965 970631894 242262352 496331166 360005033 197242583 180411038 831516135 683242334 592077280 950292955 909227088 75982879 243812704 196573101 140534699 69107596 619016984 626031172 599591718 32763558 538444027 908345308 703384088 367861220 460768472 588722614 410676517 846928749 518978552 554576484 864008478 771992626 125476067 528693901 293390854 252624870 528766118 267561293 335965828 363920452 262139304 743983763 277824494 562837380 692333298 594185629 492303015 428410901 575357067 354058598 293700803 489432599 493208230 603008521 565709602 607697769 216790069 382564976 947002583 690182822 665369306 598745452 917199705 685032076 512499718 952267844 592316340 68030848 991922785 726113369 224497506 114671685 497028430 102028208 354019532 647863345 445644303 816964915 390809010 512643148 84634725 763245930 136494465 855263524 715874538 790554298 945735656 922597320 818705957 576518760 511693022 172643989 10972093 559047671 379025156 783992989 557262452 299473836 38996975 789280288 130111432 424471921 69092059 153313725 916571248 613779760 352448789 710460134 105518359 318742866 796322171 355097632 330915523 544942324 643859017 801169869 611718074 828939469 261888308 312954023 125195225 218946202 198607252 603582273 779702666 697757321 441125879 242326010 714264783 96884756 366566979 662838432 915019313 356116385 480718222 248157389 941903709 589614386 193948495 462067658 930498705 156471421 829248471 945299213 524138234 465426721 73285576 167291311 520671391 306690394 802796171 541561073 151823157 329474818 289486683 97592023 980887839 146303260 404363003 556173936 466668142 72941408 3861504 645230951 51338943 772356509 791117385 1144883 493775010 362955349 707776523 498927960 76360886 412458108 36981728 934165312 853056843 883812601 492279967 163759643 674157268 881911358 62671684 487076340 495238686 24935702 743806623 441126917 199269741 603864124 492438278 352338202 323544137 668203566 970170490 317820003 692703341 317796743 582048678 559703966 567342776 29827234 930156032 991732846 155682777 421387019 267492397 107575926 627534056 610796 357053823 207200384 148739140 914064881 773114712 766721226 419381769 711732380 558062512 669344979 428326727 677230259 721327147 511071791 174846647 750131671 621958305 547569661 362871036 118106804 237441812 840242712 1058701 876385116 846320620 29183322 139863179 892711200 85809676 38909766 952030394 695780183 908423869 316820596 474568910 593872689 846637585 769551874 558462708 212361074 33135290 178191338 463822063 142659298 708731649 626868122 333682399 530121715 24325687 158058439 640811568 385715536 544552046 660180120 270144837 760057304 705377799 14770109 134516791 523879360 893172093 791170301 478413135 197991046 258258824 655653919 681003987 122216846 855997029 107660002 671453717 606350458 14773995 642666016 770467799 589938596 341376110 136916881 795598124 231929289 175274382 184376968 281864061 311512028 82868096 606954178 964367268 18927150 55519333 503261147 616258844 663040149 212901062 863171199 119198408 422030123 273790879 424574180 692612752 691437321 453135827 80339568 334199426 994990099 884848382 452302247 224856594 666225470 889406294 263252898 444566045 363482441 521978516 340749868 302798388 999186273 845083795 366003183 56290559 429878792 115760039 619882629 64613011 799973212 290976703 672106504 268111002 498081998 396155667 11343750 704925779 116453986 389955987 811632351 428914720 260555229 285474751 399628962 359278823 664773906 512876873 587721630 924325643 549519038 999095341 864249273 392926828 370337407 592515321 237708054 220022769 279687560 229798232 860678412 54959574 459510657 814331414 259066482 116546565 636722888 78755314 402527069 943837295 565774510 676598712 662445408 174929129 401835143 972075300 115551475 855112229 895132955 328997458 260045887 443964161 457353180 501974280 960279290 758515560 300238292 477104008 477885296 968474993 888907110 413133493 924758584 925814735 292757877 700289750 663382761 697704732 946934722 456569595 410682379 508763845 445576437 485827274 743334529 360095139 434442822 515131630 550581477 541587819 514365104 950374597 80276985 978282324 290860273 481071961 805432067 580194307 925245021 598535158 39524711 731953364 771986294 341657844 858612933 87917786 761134234 96192821 374428712 931420745 234358673 395209189 194452375 490842630 570389465 563104851 98466856 148698044 743539513 776578961 745703547 14064437 293264460 485617752 160993375 617854802 585431208 482084110 576851740 771623053 91230691 232746189 742353923 349789325 791827657 984261412 157640394 615377905 228124659 809226142 655546025 596130645 188558971 990075216 67428320 818681694 765077978 419907195 370836775 685357917 761654194 357244841 886982724 649616137 66408682 453227518 35809272 488264749 818282686 114253427 212042885 927207632 647712858 876197316 523940857 780187654 216143641 497952717 70209832 924541432 918597201 514325517 870725464 77167590 283591658 645058542 721490470 843548415 168017833 457806688 711979103 952192114 223379731 412050254 469811714 288251670 857328088 230736458 149821645 29684972 207593030 833987954 992175713 371351942 719482527 977951306 702412017 55056266 450941689 17074682 519025681 428700649 201324642 176630166 209141506 378877169 240642462 452966995 293237131 495910785 227245433 664708487 581474226 233971269 427433761 859775734 458748230 919054785 953033184 121957717 745333030 388547436 290430515 119634997 380141969 915769580 964698342 935225545 138532314 811211650 870950283 977132373 215966230 251242128 275898311 522514524 627756969 179750973 921192572 297654545 173726497 775815003 808584805 175633781 94745783 865322803 351271038 361189584 614826380 350062544 938982470 966902710 819648710 593237919 279408170 810314410 808741712 799742621 760113295 306428869 159798600 933318871 744658895 207383499 320259346 399850316 670739550 881870101 807841928 138399760 382537258 612391466 287434239 284069863 909385524 77220554 268129225 510380864 769282247 946973051 418673942 907644750 43157053 339255463 937826670 548226964 845511045 54011872 450987945 982799260 858400307 686799602 852948560 705707572 801280633 167035421 503929009 34294721 83032501 15745568 260890217 743478978 86071523 466942196 643576807 426367684 818001713 710337641 923067149 667049327 194943381 136648740 163409691 653340965 723379086 419802653 248984031 702701865 234350506 380401210 480418836 448210613 793939566 981564942 293344960 816464504 445445681 506172340 520240743 428611175 293812703 406687090 423112948 275081238 111751039 11771110 913684704 501107916 28055314 66130914 206382569 125527940 481586504 572815967 3601898 565583825 701472218 312270603 193659611 492737854 653897518 263714472 7716698 254649891 519915441 107919727 191486047 43325287 491512668 706042128 611362237 794739049 218475587 577299192 961443706 253359800 66564660 825928828 256488252 605254092 839671426 825276843 410716772 46217969 431647645 977567871 128350687 811298578 834910509 425448466 902883177 962609671 90185487 444237736 941011509 425949371 137479502 436488241 904691467 549326781 781731245 247927445 355199715 509370249 810090623 639558886 822441628 101077445 256866976 452917922 717382502 188771253 586738004 505806198 145484030 978720754 598819888 809829522 248829624 91008064 738610446 429077684 231166732 23483184 801280162 247710186 320940151 279324665 754340552 621131037 211468004 267243910 860629394 459860563 139678558 840844162 600601689 327290972 786362082 999583871 265888032 997436850 316688221 349001978 331286863 383763841 231095087 531101682 225563476 828875881 277314060 106244382 666519718 711004335 250344581 671760642 270315236 645505647 183521193 679742324 495483215 657617568 240100228 702487284 648542190 860151440 379937400 171101174 49017114 740320846 166734156 749759203 759392895 596019590 319412318 147171877 597275403 2634448 139507583 817372018 533809666 80394799 287848752 564350660 770281860 155532251 517051764 337858874 82653649 712944129 333572704 682871398 395059992 963662515 20744169 390366503 294700860 494400123 85006855 120503310 944061088 753756610 614287132 22238265 15765517 69320772 359130094 461893866 953330861 688253695 75065170 505416139 751856020 522880323 875759654 357190830 942355537 338851613 748463725 369444423 799482335 204816903 340665261 486858795 153311721 216289785 427919303 743222855 905678868 593253662 527704585 997888138 701158482 938612236 845578566 928441586 66943424 365063660 667157638 293609062 910679216 858038447 387710150 393474618 214751121 638104239 67953399 940169513 20101106 647327604 678209259 475510804 890386493 855871817 370427628 786660183 246109427 427711164 823051866 909666099 820255643 494448582 512163100 834533124 546051558 182587286 517492402 935394872 520254151 991718485 715466086 45110135 490187028 212173110 215119445 462809892 119111121 203830263 857760557 727997995 199376987 825324548 286518686 584649682 413136713 700115888 291449785 945338289 124175658 309325037 450111333 638261071 209066371 798043804 260524716 132703318 757211754 289328025 633568185 930303539 108462481 293316844 920259483 805795835 606298737 695967953 98470121 621707085 621003187 402410796 696328722 347768499 760898942 330946931 294779845 382311874 130856720 489218228 286643873 888031688 180375088 347393060 336563995 834018013 679699823 649661801 902768821 972544290 983863185 101469915 45430715 683574046 913035276 391123936 103650557 324532944 953288203 103222004 714512950 482270288 364084238 769642995 132862671 325881999 168675253 199612755 439235593 508495131 400235423 298094570 344486975 586185708 47107700 461770052 515779947 184891835 87925260 204653471 882015611 765667204 183070169 938706707 320750526 834512966 956779868 298551169 33466989 993890758 33329827 188363971 19821510 99435587 84100538 222508866 439572837 756341077 902603401 376770639 325203564 817432995 329033208 778327535 19350784 56527928 7603880 446300447 997200527 780503200 10236128 300265759 687876122 441956237 812297253 738866781 521507305 280472980 56560662 313007634 680777896 398318678 561033344 525551262 648906283 806554704 838691318 959744949 465031039 646267916 561918538 928279504 95110598 921739411 705953731 989038640 507474653 822733875 813310640 572640316 66986904 500540789 314218024 409383429 376726970 691631981 694360624 960384377 640709017 445302821 140165243 339681708 240286583 423514560 330845726 810178237 561574708 547038369 475661354 156593260 606736523 793030853 990832242 786598604 633044624 776604170 184964619 853925635 242609551 222032104 196161027 893921565 472128328 962007780 473896895 169420140 828473373 603174159 261948725 143051568 87778383 149801841 695273201 757792516 763754169 440622143 424195789 329525941 138680395 661081074 415164023 740546981 341752211 403652400 927025508 862312342 113451066 734286765 166218270 302933792 141844629 775001295 313304450 209631685 721200556 383166053 686585664 308241982 349612155 269749992 932855088 887863856 373893692 242232715 442603630 298362309 621921160 197391842 502728426 35582629 895736238 842178596 237111608 768614795 964877778 227237692 273019922 165817161 497331471 759075447 177556583 555221713 289766585 989172977 4588873 46087041 762769738 675341340 332474907 194768801 360829752 844826190 863447372 780524567 869531010 991867143 954296152 616463623 77257391 202871238 556070209 358617375 176070839 790173497 286980789 795914525 744090980 530886893 110851486 416460979 221213016 421133970 536258931 871486397 963108213 809675345 129544153 548711204 94226769 152196145 665997258 422636384 983345606 978946742 554612603 5143293 630028708 778994380 228890893 258016072 301122970 330583998 197014467 26848628 386922297 573103974 953664594 250090632 507081604 580871232 841121327 219483705 851221068 333265403 860044123 611197703 304896609 207436434 488345120 627412570 516898624 595074676 511150437 559067401 611754227 204444692 420375687 177651482 97341404 727537549 133140649 246579290 333741173 737307335 849489099 740985983 300092293 569620588 525511437 194663083 77486871 651499952 964020949 107547685 530100669 665436107 103854238 401367417 810429814 463175053 286311488 17027827 240020554 140338200 738916822 768220731 296513828 414744924 354841572 197889145 959500286 782551059 337004713 75816794 54886295 965794839 467568196 146209382 50474600 201936682 180566436 223611941 150694959 124773685 162807101 923291989 299106934 537003983 934448802 705632220 744391341 358104551 120903533 113840690 663279206 604146392 949360985 103106546 916545546 997915079 903015526 993957591 356082032 140734191 565456012 754087569 953970541 639776017 95837762 779978207 993528380 741077320 859093891 637949721 469156476 455873813 284876144 753776219 579059007 557815995 505738198 259995230 158701445 855711605 950728474 163567651 1511281 715009966 419456707 88076041 119267575 109228353 573950528 827097679 492196608 107589032 855306921 657374546 15595184 581240572 451372512 17208983 294925718 491373161 525579655 733843392 379234047 97983368 694184888 540678113 643131146 245775253 26602784 147441252 941372210 7635 213503580 324571147 308167447 58476725 451549717 655912707 951008319 567739238 881674062 199755054 886536432 563267017 858900448 602647421 699953985 718873496 654933177 438069660 343314356 166712766 500447449 933673082 786975225 73856753 483545710 395493068 634845260 67876742 764654483 423355978 115728186 228848267 368331123 203589128 576481610 623574810 956508010 526121634 891999288 304783956 96783234 818568314 19581041 616073112 994863191 671403843 707987298 743545542 307823462 365582711 736147753 536685969 84610027 3835729 773260264 133161927 924960642 389294836 517304096 294299925 646941965 584095702 623379108 790833226 202571220 808367025 441272626 174973291 466032369 393298765 736725901 781358477 519016040 239665931 778066609 516377255 421159537 442057931 673098407 366485582 208754180 298385016 886901337 727332976 321207895 697004775 465698306 622332735 143592720 631200727 363102850 435934357 352541983 987740141 868239906 10123134 994671431 960787113 925428002 882384638 988339215 127738819 724907377 433645459 158691960 6961243 967671567 360941062 749042700 366380024 171402396 934929639 741665271 605599387 404356323 549708023 481997140 709626064 158331002 271587833 76934688 197986259 83425220 558677579 663006607 628919103 291083153 936183727 539876050 591503703 791559047 854135379 823911255 199217527 376573212 267283715 820587800 247745475 547881804 518713818 830787323 108485769 621733231 360462447 481834898 488780067 129289614 354459010 32487274 457272454 453868715 652186418 237887396 249265339 25176158 579879410 165946343 723653461 490673140 215857098 860691626 221968120 801690371 11448759 955614674 970065019 165911250 884574560 622873097 495606462 597447602 677229848 329454538 441386248 662004456 822175768 999318652 624126080 755747575 950071860 839477245 452246727 856772868 25508201 204774900 859457665 876415764 275111361 780550007 304449311 787097457 417378674 863903344 109687217 987620538 973670276 78320537 557721024 411643577 863089691 112746175 459417257 189260933 414845307 117970741 684978975 603512753 102213074 961810530 346122518 772385764 154167773 50437560 144592806 373413405 386040902 299022641 373312431 180440420 34850647 617132288 438946690 864224489 611472294 433622556 335765643 217603168 975763302 847082229 556943991 604319263 454964471 547884509 446583468 910519886 573026448 988715851 13101542 963620668 265614715 221152256 697080079 48881701 53049463 213802935 713251824 690455757 995281750 448836605 629430237 294312147 729388280 850387056 820069635 283863592 111243265 305650077 484957856 919648123 614461621 747645921 699366139 569562447 951129567 622575879 713258622 963469459 392159018 480465503 61883931 733452032 55427969 844029547 849019009 726900103 248996793 831861359 525144149 843039113 319152791 990668512 908678803 592426246 231256253 961608816 800972743 390088752 744023155 924733905 37924016 685099341 546054325 720051333 416171945 744150431 786939489 437744024 90659702 142931417 69964017 735509122 204393979 967010466 129939461 898377280 363399714 760620805 735428914 486783714 291906196 662798655 579402769 573336998 724415013 170466591 365165503 38083432 971911004 361828453 25205272 861666664 640258534 916485711 383255820 561789840 275548138 344427750 576343578 696784517 201042362 768651879 777144496 543986453 198610494 133261940 149735177 996515574 628946889 98525368 290987212 157823690 749193257 897683820 199109411 409920768 852956303 476911852 464535223 216785501 763242536 56214730 53273756 385647120 528644576 320946536 376581438 743485518 202442361 670611226 335207517 88936092 566717490 539819505 668610484 772678855 202641673 98036343 370410918 797642027 953878096 556688893 353959841 685351051 597793182 998282108 527180056 844203901 964695316 786481792 280064497 434315397 763253167 619178109 450000662 454901462 431526345 603902297 827632104 781763289 383281097 765570830 567380239 137729165 884728968 995221226 537944032 971822113 601892068 233819981 502831351 875809246 170955909 292738609 554636827 541865508 744180669 432847033 346815479 805485369 549531394 369847201 98192281 40080507 362596798 323731112 465332675 809799367 385603351 288915978 117293107 68738942 621369720 758075208 252180865 533058457 49268045 955004416 230041867 650486696 146111059 993182313 812485576 966901848 790015828 287812945 616007562 283041083 114027513 766149919 4195453 880063937 279101339 746822535 546703141 558869302 888800133 624470588 298752958 354618307 807725252 950038905 487822432 702479079 841254453 171023150 630094085 366517471 212323184 361704883 50867187 923377017 658501803 558087297 452097413 119829860 422215869 671168918 540088832 17230869 437307696 132089748 416418301 911728263 479428812 319111833 253261644 838230685 723725848 145118468 47259649 816846035 570007342 52714051 410537791 182405598 707560070 643475948 485383179 655963224 371848000 295186217 60906561 903496944 95285576 418530395 571731242 432042257 132984146 756819880 68185429 222741260 111596396 615069873 266105600 972587314 403605720 151440997 910327867 145942068 688280330 605693847 38524900 146375055 494267248 400569615 824505270 771087074 618224373 73856875 395394855 394791876 327378071 9542029 527438667 970082733 38232771 660559190 997862598 583725431 648309388 486743155 196774076 543200803 910280143 703522428 3176293 957412604 575893623 523359023 403495560 889237532 494280430 590439045 398623358 726064047 890607758 657466284 236428929 219255150 581968862 423881811 616349993 483413881 258113132 238458029 869590044 413577971 301589271 313459480 451493236 112727100 627963403 306981343 34119527 280819571 159388854 98722832 575267 437880784 531192565 214866347 772921563 633541026 461909059 484922125 287732940 757230481 18992578 218652148 562327717 664792635 912008809 401878198 579023947 102477874 19452018 588924394 146810668 852267071 392670835 499649610 745181673 760893720 413729720 508726223 787686138 894422670 134105731 790718700 695582356 397654184 413793397 986066253 773083940 74635591 982049672 337660991 280744641 257979232 22225116 943841950 275598795 396126691 944905799 43963171 676069786 856109739 701891287 341535028 192979529 863190278 184234152 60971720 825618323 414552647 272028564 143568635 540862656 354246039 896953590 771052627 875705238 253056360 443442181 24549046 282270417 811648609 518872378 215168857 946389950 149614007 686428007 230986183 690235893 703769435 366661255 828900848 716279847 320830948 779094171 583220309 346496530 95965772 354496279 740583360 656468364 111585951 486892866 847617930 339036723 107119054 424419118 589994067 353068765 923227483 82885259 15999609 867368139 487302265 42487759 750862199 638829862 710911688 945702759 507022728 661997389 896810691 547990677 918464918 228164209 609062014 732905226 588134493 409684672 732397932 543616569 382721176 825285216 316783360 342647078 480159187 403210653 507863306 156794266 626729341 962971615 356108992 679869780 997595365 727864907 62790621 641718550 537795902 663726405 207772086 50506823 654294623 381203542 65109017 86340143 875704086 666330654 684838624 794864992 536240190 350038639 573392035 875712558 251817654 854552664 524197441 106209946 848561941 816913380 176333087 71954163 311309275 28774507 767114027 134341573 831320542 311187834 914237671 855883753 447153735 418062601 895735498 611555475 682484426 874935159 455815034 268767806 722742310 31519768 884758375 837836209 988640620 5800619 112471440 939215350 646367746 183584907 114774720 559847800 6211650 476783211 289186628 348413118 732205965 631302951 520657080 218900061 654492363 621327161 983540697 688481200 344350792 341137523 25466281 550845826 603536262 662765414 306208875 178530518 777255835 884270137 974998347 659599141 954134530 274108795 419690745 334576198 80449045 258256891 744750300 754429312 406695594 769256552 775269832 804608670 399987037 390912442 648358612 214670647 78719617 346791787 820001559 246252949 684648670 533227583 925116302 193336006 364330716 268354721 288098034 839806725 903598353 345637986 169335291 810639311 289862127 583552320 252628087 563321762 493303521 647496873 89240309 827780545 850861561 816714391 666470206 918178918 20892653 858532769 790732801 340540423 64369966 881081773 56691027 584585956 35425286 752856541 46573079 697447286 245869331 71355607 334231805 290886619 979644004 994418836 824537343 995551438 270321096 192182506 152894343 930278281 109725947 119965666 393950373 321388281 805223130 797584808 820730960 114844169 137461789 287834059 607741683 485035711 839828923 434073289 418603720 92931978 382139261 574465260 892386457 195665723 625662304 596689118 779747147 856113680 427649749 223153893 766740770 547656989 657542333 59658102 315916514 245030559 292057090 133356989 640181853 433006785 182415972 48738140 652358484 326739606 870215662 219763760 709571950 338896785 286203321 193528313 707114674 257704392 297282286 463502159 464300739 288231192 784576568 25865030 581484251 219172521 503124899 182430183 667703141 721849489 746887553 613323711 661232682 113796764 912859304 988275081 968393039 64416639 458384486 824616257 327046548 525659840 475065536 393380927 167407821 539642598 975470188 226993265 710302007 981315255 441707286 381106870 94625605 970419091 979987835 305411845 516868517 483115804 687765748 197558241 915843435 22553963 806040309 786531630 278993626 933454978 367026203 176587444 898374446 583169991 199386347 408058669 458726001 188712016 33091323 319135369 886997103 337410872 951746968 968232938 87622382 781034644 169850366 464284242 743456531 268930132 412312195 410084761 707130825 247785908 852448511 9410577 700599516 336967014 4221560 654162177 772283818 802519290 659690710 558064369 7730387 788040942 479008928 967387229 835056066 399929782 471819750 376816139 741437801 334792192 467775749 258554051 133992237 383829183 394133577 807172115 89393126 585904158 993229056 590497303 698841026 873530882 871498224 741467558 405700178 251107439 760790664 764568772 410801593 727809647 851039710 481483847 681488501 732979119 210998079 571190063 879219078 206274990 484876269 165336249 429505647 195603124 532927620 345335428 502582075 251101675 176365348 544433464 715602594 944345744 455980227 165749799 837234473 61722917 852316825 731298335 604679105 867882852 211523510 941930907 987733062 760828230 784117891 376361107 487437885 891103026 268277188 963605039 826850501 496842607 808891345 669779361 531661321 405099621 230805255 443138392 96892030 48588113 347923944 482590630 704504518 898346565 895487750 803035944 698030070 760252229 244930862 512666748 608930400 630852355 100611475 776434614 764965631 489327044 25342691 645712500 252702943 765323699 776056445 920479495 35804612 843737094 57700742 866409524 788788092 530249126 408742154 730498971 775306587 697472884 528100616 946473852 459501097 516837405 685536644 630567917 746068601 618894169 143554706 645671480 713908751 383624125 554226982 333721709 353167581 965615925 794029174 105018087 77630197 865557054 508583428 301951873 126624664 103177485 791327524 788027921 868588920 164534156 659762443 538289510 93484849 336609107 255334020 583569974 764525040 402721847 916424896 358145084 741396774 470381797 970149418 263195063 362293846 332813076 238257887 173623579 95245244 10400876 739859227 171459749 789390806 19034285 437579821 812407493 335896604 23199150 65661724 117411738 691226781 999807603 589062036 576295345 983056489 786845121 549475337 777742291 297194795 238325317 305583742 370564565 96883577 505974702 985414107 773153273 674746579 764922535 48173518 204510778 705255923 872714402 751898935 957427583 612804034 391982805 698528127 120653772 80207568 439777397 812400672 107103857 195052120 501516763 151007677 640959499 556862721 910317685 96100051 28474508 550663840 610457582 867945520 811866258 928164437 330282555 787185010 132493875 124857402 992191487 881180483 393273060 431062390 818336818 674441828 797528930 619159122 674133780 837206822 180132193 315953465 376925288 442211313 481820386 657366623 173079089 449968864 78351292 930266137 539088726 232608839 122065355 121408603 575399419 800201071 438029277 296533061 648252589 191931068 966629199 772963357 883732506 722745153 304429926 913787309 775292818 508109795 337444287 601947710 599224088 465516511 261692257 663848342 474225678 633509368 889381401 997074578 938277616 694203941 306320333 25736231 317813467 888244857 450662841 255985155 929919641 338280897 323934514 213403084 881768247 110428951 340373117 241653804 219413246 367410717 341147598 208985632 938755698 330814028 648942714 311386070 446265889 805639031 994087228 907262061 726456422 478894451 695109498 340109096 295140552 19712587 999276228 704442408 467999886 557858045 642063929 959449398 917766527 530320738 53590917 613468256 194599960 453605675 678955965 227948693 256544698 68583602 6192578 54557184 137624680 764119109 377070696 787505759 893320438 458169394 154771060 261274722 173475678 412505721 229662434 271476731 47876808 12243289 756790336 634531725 17394591 481170134 452927083 812680656 745152729 931991723 703373878 794816175 762461917 335827723 986205471 563212093 263468471 515179286 472633851 661138493 320765511 144505503 806889313 512668970 931441683 622298769 229114150 404827132 101997334 888147487 860892801 603922886 210778357 599112512 209790187 195685581 261172600 345936913 462381943 369123672 346206268 305262350 260412959 27706513 196156699 399566201 164703782 571587803 969440875 435514144 953732793 208796703 827013806 393254374 743203332 688945157 661733932 52165685 177208836 778128976 354867151 266137271 391747688 24288019 928234939 707737425 386832771 146022432 810498127 48746455 628706195 967321078 510405678 562773933 395780957 879621396 39686114 453821409 800051462 732620811 504769634 918506329 674871632 587331002 234972053 116435589 968167549 654128573 248491432 914376031 606507701 546878639 677830071 778419706 694203076 547693801 152487544 376820131 321711671 692660669 277840723 608520470 649277289 566117599 597225322 922956438 913947647 442666723 174573072 999993589 922209104 130230220 277255803 599420011 199749006 889095850 793896930 363732432 732367085 442258628 697823755 40045356 565332970 451470717 128503800 774436098 94707208 581567023 915033337 398534027 260475370 641021773 675178329 976740972 607529248 110867168 490044023 810940163 313221696 347754072 88210197 972482703 114653403 742969826 202578658 887773975 658699526 713964689 187661020 561847786 271546092 610731655 699885248 848508 959245952 311310491 470073598 486240610 406966709 1463679 936701560 811620047 475116843 768960288 993149751 207884945 835237115 63487419 451214225 578284265 522528822 656907989 836423570 643339498 898337898 792261046 744194190 934953741 52969764 242300762 784172645 36480776 320008108 951781879 379088686 811243950 572026833 651681584 359742536 696327122 262831352 683939172 942367663 160017112 477433015 858822230 822985785 330741911 102497300 567209924 517855866 652875948 815716947 441024620 146537886 367355917 897580210 555024008 69134837 467996512 341685198 855061962 743893598 705425354 201499718 279520815 414250489 807295116 431803203 620815080 344095238 132529346 403120801 766184974 493542234 958617297 38326087 351879613 458060456 920170021 638034368 890859601 264123202 563654333 609581847 133499444 851340912 739308752 943876437 183798817 554599675 904653476 64547577 445110158 166536503 25368632 227550840 518002745 978625075 944084076 562184759 680094749 892908849 935687179 464153432 550231120 838810410 241650164 921312431 786878562 433028545 838475285 357530252 63171145 471487092 866485008 764719949 249215151 603391344 430168877 928165799 382003739 783267055 564331835 411871541 505830789 838648330 884560382 569556036 115540421 912554221 129088170 610513590 950838010 400491872 55275804 65276256 748134237 2348317 880992448 342723979 306520711 571098819 908512665 783953709 291809839 799963006 663921511 133371192 292363836 793167376 274456081 109953705 700747869 540240869 392042091 822239068 625449534 197002221 757365123 642100240 981924533 69745586 519362472 136084186 131005032 705905773 949608727 234801931 321253222 283225225 508751400 516507302 31704035 797730393 462354841 306304711 80169079 891896194 420476713 926047478 184015057 139654361 386084506 892216791 893367978 518632370 913261021 350929885 879968008 273494171 72119143 814666440 759223115 626686302 829265900 144170373 298131259 218647186 461201300 470462736 202011893 223078409 711496266 296415710 974124907 797503113 101200125 715502933 402331551 900040264 962880697 314843871 943281777 474480149 319435900 914501891 107990883 692338171 575697083 587955505 479144415 136713096 916157041 230055764 735105466 734040243 750963362 476159067 62862698 731883430 47881097 958841678 276835298 64369037 844710939 517820952 248398762 25606107 728642807 907725263 818034516 447363283 154399959 953900175 599797532 183472369 169356565 150571972 996803811 338454803 659776993 856933376 634228251 403585389 486698641 153952495 546672071 398714545 206597944 921804424 218430752 871292525 728618760 457731023 660408921 682474905 595861381 340686522 870146048 794059180 795432204 537309702 886927101 214679624 956162342 102649084 259991782 861233125 331590164 885389338 847923901 742163714 209591138 609609164 501571951 539062314 180238117 30547683 189184087 28696544 718683593 397743037 495230188 342344456 139419886 980263948 217632177 662383183 699967406 267142018 574835268 251236668 608329564 608670637 315224765 528647787 757092373 630343556 721288393 604752136 924065470 547886535 108333498 177264113 990452399 863480839 138829154 351564751 46757231 526380759 420003943 77951469 928245910 629967184 98100332 104940850 884017635 974037465 459391007 825367173 346729985 918966047 80871702 30316777 979190257 11942270 951580786 607750166 49182453 924853297 105390979 708913309 879773252 582026951 773513718 401095831 713053580 886003357 289865166 294839199 405668019 165351430 176080054 162883495 726142725 373442993 503595184 256112500 143202200 434086847 174025942 573814020 647493160 461700090 442217096 915497059 157326461 21775687 815417618 187317637 793689700 413692455 727743146 353068176 506575381 689523146 96900313 793297539 297807963 889788109 604116428 143873042 187847772 684899582 908829316 519471826 183494892 293884997 145367901 585005599 637322887 800839320 316871728 696638437 299816862 34119319 628490096 512582880 959634059 714075458 145648081 577895108 810967977 679861631 495784927 612714796 668259447 315012610 705840786 10033234 166512908 82900335 882487400 866040974 111732791 256341819 564917429 726982978 222836346 647360957 893594716 141357624 827044856 329841299 595438725 8753205 769916290 398943468 579058596 484966957 396807906 836859671 123083267 567706448 607877703 320003458 351782721 485725203 919084269 2615745 197987265 937364046 327143379 633179041 177912743 695088135 468331755 747464848 476860578 971355716 412939036 313341809 128433229 64630589 517544432 910955206 559789374 722776036 424934162 331072270 687454330 183866636 915375476 241137252 670109425 404959385 922134794 613587898 826849258 560939030 568062686 860519542 638746150 399350194 372030590 667562352 645560117 18393414 770694186 792117733 56856452 6397908 324030523 779632182 921962590 788733317 299624332 366829045 675674143 337622481 866876381 316237401 664895768 680209378 812932783 611935976 989864138 882771818 743591041 489556906 125465556 556194588 391145795 551386723 527873414 161230311 64533249 379744204 305416333 249978029 990496855 656026264 85110706 724267627 376524632 651294039 289650987 190781409 738608604 978450519 812938123 553243326 647592631 702641339 258602513 524430595 908818141 340021544 27314773 197696844 934118561 118970744 283428823 562076595 813368329 415581076 386594834 702935626 854783479 778723749 4027569 231172447 229095486 589934632 685701198 421477230 262611267 562182632 259933116 29988513 787782863 98039702 485969385 88697841 911722211 596099030 483147325 234571806 872925754 542127243 365978439 927376993 874949561 50875219 811349464 755120468 729195421 387098587 784236328 503574877 196508478 192559441 471153374 541794237 354206445 21919601 691963984 56619159 786741977 419109341 199436512 312776783 944168411 188861260 769774541 368270718 981310828 523842648 279980325 408295418 82230667 483171713 437468827 16570278 594596773 239369101 81416659 580083204 745320413 728159496 37356783 253115668 284002116 704058058 80368076 78814621 661975364 740858896 913138317 224647214 77273809 44670295 323476619 203828924 750997708 801002679 300498248 816431555 924704066 989828424 518416704 951790960 910844775 184941666 763912740 249664080 46761038 832628970 30904438 112724282 207624348 493014114 788732261 654073052 189720681 34348233 981555371 681438943 350052206 536867783 13066037 899640120 804169050 338874769 356335506 157532371 869802002 112449053 577325366 313962688 4850895 578485852 657025910 204729183 43329228 376813952 726300827 376794354 695770319 468036673 344181716 275175346 89144162 181976318 246972454 243696871 214645256 56739863 378148758 174940014 475420998 277992546 152654855 918216793 555940872 597813149 778180277 258437859 137266059 92647972 723160358 270138152 583094309 868616000 320797334 279538913 230414923 612997948 616629096 499924327 262836883 839322884 236432717 669847477 636699944 696054062 830347201 657797708 327229970 18763136 622211493 958464856 988196141 414902028 985146275 180160640 877816244 183721715 930692613 494770774 969760190 661781821 639421766 243655924 54741675 914014286 511359308 147889451 836549734 932348633 454320969 276751062 711817223 172657748 622989283 187553964 248744243 462233712 375195861 784363360 258015022 406469296 792926342 51805549 851675666 611137459 975750689 489571003 704060629 427273127 535698045 118827942 376759026 848308060 470640380 193923397 781877423 971441569 569884485 58745445 849587591 710060252 679962908 90185317 163172988 429186726 834513851 625619940 308435131 863971076 76607728 480249386 186060648 428704593 851371945 906304494 454831647 861329960 519554666 262825443 974120441 225896601 936716652 196251231 365643691 404740053 274573302 2960326 610366339 490285774 385641319 872832205 214323448 355904801 408135348 42692181 2567455 541863839 144037421 652670578 748393280 79110048 601468662 613945109 455545962 306562146 678367191 913846598 866928033 785350096 711342967 537730481 632714133 421566040 382414828 982166937 782252676 200598075 495658543 601855275 809833908 788305614 116919464 99242200 604822398 289691051 217115586 462910656 856611336 481212052 268544706 757402579 983469236 444892032 382848244 811375965 485774244 74468181 755391369 478754909 49199060 112312058 461128958 981984637 156164229 851047136 378828621 989378737 709342042 107357364 284726185 879819475 15064172 279397855 413835004 227359095 598120548 499386745 153475901 365642288 28077881 506767991 862540300 942087892 914541649 252501050 497880152 209835845 440414310 604154560 959067235 125247747 305184479 799345659 815732605 800069894 602030976 19263970 137432910 471741267 124101168 705278258 258794481 220026925 865041162 831615982 774788868 713552379 15634587 718033233 259011313 586334165 29432010 955387148 602379012 171194846 285110900 187397967 762758395 865595870 396479355 898699357 44439615 862134148 886471747 735165729 421903057 243223068 471944951 795930889 591892154 159541149 410586870 404358681 165672921 507656851 34438109 771061445 928802386 210057106 783912581 522047915 884307021 190120127 430358745 97245664 316731416 277546692 602779946 157641071 842614715 899664826 923291587 227324750 350104954 100445522 456215427 196587145 212294446 662658654 615150283 379732348 305996801 751882056 411452916 735507173 674857795 444196003 960027577 182253957 942997362 672109710 663963547 673552211 757106049 734456924 650589157 774781932 474898009 942323204 106889076 729689168 145619769 569238387 682435315 963261410 838567521 883382628 271589423 755473551 933113285 651238082 424424785 209718392 546354945 678455805 659393613 621209121 744240603 554959848 79398577 483282943 10445844 274948640 400853625 453426632 157562103 627148459 43797056 585107383 570753124 277202484 918171560 404947154 693462298 225294467 717458748 389642395 246472296 839615300 824978152 520711734 130099692 753493729 692891558 507457531 240134551 799809850 209170962 262264925 775945551 224180468 196775297 748330362 73261579 223941845 543623287 908334565 245211756 409776859 401132807 821956133 768471031 717861898 104876626 917748628 846684739 732507510 283234217 846491376 718179118 65822999 700536795 634031749 654541428 665399700 93509385 643923138 588551806 735652470 615837950 617306525 594985208 911187652 423289925 392904839 938015953 219525261 119084992 707138413 823838236 423830552 694745977 198843545 562570681 424779757 84917529 394254691 668777922 699171596 924690424 910276010 93183784 816011939 708623938 14510762 856879683 53516296 996478731 492422954 996750122 273032770 868801038 393904836 802115409 175277058 369801914 341728639 18299067 707752846 440012311 385119640 192087094 154706312 761198451 653161725 799635224 510184608 376916633 961374932 35983130 35003288 554476922 532276304 559531640 306347577 652751832 57946015 924657769 979869043 688912839 391872616 389091411 538313798 563883617 290867149 374289279 148662257 281050178 955109877 202218512 650068188 271118173 102006234 542931172 856410296 305448811 895698220 871926518 937598021 625387600 552334026 321691196 153830578 568278524 202974307 55994152 552041814 935385644 28973510 12086102 22106941 744213927 832495073 842208674 36489456 845419788 385239141 526533798 199394800 819569162 585195337 370599667 315150911 932353321 401057602 707254143 679444055 219409449 705977277 888492045 961440533 314112577 950046296 90720691 395725675 581654139 795769454 399565010 59826618 231756517 749307800 673783485 198682044 449507002 572532933 660131203 615292477 508964091 3668658 21144060 824445556 966361319 85707018 532257296 449726869 355950903 553812739 645985717 31921742 680179729 593018525 162168175 593164816 892910087 228150333 290314945 476765268 864256752 398709606 454072377 651519009 180796338 822323501 639439337 469795364 784548070 378573745 536741166 458785336 587211242 552961412 814568129 439723795 960939071 5201895 550008693 496899418 919830590 992487356 884318342 465230501 989484582 912894265 291661336 654257202 415600007 977631079 718977387 11189570 451003973 537556229 28075332 387905594 56032749 400702450 208438387 22039502 428360041 954596570 672823205 902617564 4993820 628192948 214833846 863038736 14248769 271640885 875325260 532274282 422299643 40194609 434103203 341680022 247694356 846131481 386750157 369936994 552394260 946405595 770846359 117742033 420210730 190139397 509338243 810499817 261445117 293347895 978232705 487854678 624235459 840148137 20672158 615201245 173375077 137862755 752828202 384362910 12922003 347148562 795815578 389991080 362511860 388084285 878643842 34875447 725994519 443843937 758145712 438983225 184712300 179285808 17776735 820813371 217979689 410995404 621788514 199400654 46877442 790561036 766329608 840738518 781817429 753838903 660346062 474235985 764501247 134391260 982772166 252835777 195236379 65369481 81419254 13855637 417075862 606613235 832137496 413974139 201480171 870307295 205655403 584306330 867073588 880083891 101530890 951925549 203979909 613861182 573551975 660381394 529438130 618010437 663755944 478933328 460578901 622641644 685404554 286975585 47940682 386702077 129680291 104435581 171638019 287893230 45766576 105570817 36187900 345119681 494908374 73922219 805992713 371036023 255149580 110733786 796552761 197652076 225781900 784847414 601210196 292631737 396490304 197031619 842980186 979090173 302191291 85774493 564100843 859026884 48884155 156877019 39176271 445168647 269883988 479313492 133917952 690359996 847996638 841876421 487387451 102863043 628577705 424652566 451213683 552215909 736669344 491894592 94255615 233317369 818271864 438080397 747626136 945950727 859687143 257994608 131831208 879919424 791098256 543371334 963520906 793035148 733879128 671971080 764738172 938232897 922981470 70245516 417931120 853105712 68357552 193753378 302896488 690868227 258110488 705213990 382559780 552859047 584570080 396895855 50664706 509716987 475132285 709739765 689418910 770644069 652036607 392202965 378719967 199478501 454262536 80664906 385601549 813764079 813247554 124594408 923583446 800942527 157763292 125361436 938011782 116892258 264340910 173416157 576116739 265512625 5118209 129217388 527592257 431298819 24167990 298188363 743820045 726339284 989936595 701677457 398627649 54276686 717602286 506909993 153981354 149128339 18095302 929563683 607272391 713529348 572830937 600262343 991837834 317194023 385011384 340857376 965321052 912308990 680173390 111859715 73569242 660496667 661433853 666921911 540195676 146932650 900772259 693465108 732507208 423770517 823694692 836047472 677238626 34863149 539738168 453923056 633009718 511265998 534750548 657918715 456814616 86447512 218211512 287334108 724627771 542772373 578601800 49991586 582950621 21035228 838918250 431512371 587968590 576897401 696245703 688212330 556130598 533399625 771908071 878249386 202900471 930219973 427604615 410972767 40199187 211834037 70358224 489492793 746444586 432431997 236977146 280386352 404491240 47208576 697522648 378068873 324092849 458383225 153810447 505283532 736406333 466879190 200013859 359060648 61728264 279548403 328213667 327070156 734773744 49076117 681515088 674711451 694470449 582152909 221544530 594929854 75784005 279272641 936025994 668073116 199191910 560851288 290769636 88476573 592069661 41641013 907695060 706346294 875415766 319144782 926606698 651781276 730165197 914770734 538227080 514748657 210530165 430434450 989901447 289699336 402272234 885860715 702065648 47303234 351524601 71643962 38813596 328209562 150672822 447753965 432625441 629371403 114709185 923735734 398081740 106928286 187704373 338621405 316669307 209811785 966515497 749869039 537163531 215927382 559084281 697960882 372319139 507775755 69658772 652908616 488238183 880349387 194892140 625909260 762822351 632326330 520201170 211306731 205735163 649511375 959417163 271075087 385220130 72957822 314155785 580521835 73154234 521018114 772002492 795212761 990268245 79038312 769453115 255219915 353933459 495026164 555843671 736256296 691330773 836384245 374414776 270369995 940550673 757441810 756546144 609193187 840077449 591447274 191840906 391081826 759274431 791932849 668638488 453818019 449730859 429536886 113903974 483463984 569257528 126378434 663414185 290977061 764682631 891631794 796018660 623871562 11880896 249339065 702169490 409344067 724583504 932602781 335798632 26356370 963103019 400110310 665777345 12763618 230577556 866059703 426984803 120608734 569415364 736279845 150026880 150701776 414741055 51391744 700476906 929635365 708595178 920418056 519511476 301392856 102019862 977697253 933311075 625578765 200978232 237824246 583072454 911054405 13085263 376463895 329521412 433558684 947816273 781624956 36841992 605448459 635699651 570706161 584694018 752573797 331303754 599770023 694733525 67645655 691480356 580402856 48235104 787872674 589627979 963086969 717581854 7499459 742604869 71740460 237449711 893242169 968493074 611083546 563349853 633658697 190937377 950994490 772976793 988348739 259549965 394107378 806023043 920523183 129316643 714242019 391598280 381103296 179630057 89432164 921212547 49598583 45984038 419630457 974372818 411429961 604271773 620982255 734811873 410494477 276302082 249621873 726635976 349178881 114913810 689937192 622051485 550722633 904073524 431622979 657295345 34443230 727498576 719510834 635489618 964494406 964020785 656072832 846436512 282401140 399760433 220011787 410555017 601462945 100820610 539751624 549711484 852887426 503968035 925095495 213749992 659650222 143450882 305251776 65348646 831122509 62119290 852363316 357382313 88126534 136455572 76055105 733131485 507593512 269797700 704739989 680909375 637672903 664582731 723355436 668980470 690198309 495482706 557972210 358445451 391477236 23662996 31375834 939596471 102032830 607134543 366884783 722029943 278177433 770108492 432301256 372565238 614789815 297396444 375430756 808436916 147646123 715664702 829548520 543019590 715088132 618015280 683307194 368492673 556565452 914805901 692869994 17733710 795745585 809727718 551874300 99670992 447205631 159796640 692576369 96963583 657665284 564278289 117287906 782249175 678047399 881492809 222886274 25381710 838021965 518857603 304882456 54543809 986256493 65006551 567029120 590354155 899277062 795340824 860205273 279136687 228534761 894538651 2010108 605144342 470674363 907562427 570853616 4543817 461828933 293542703 393574105 303040586 484756081 808809061 10492580 466333573 881633913 184632942 327936581 168260296 884936958 14848642 741570882 586727296 888690884 914806258 703338625 621714709 497902262 561891641 273700395 902468050 490258391 804657878 524652427 626469660 673168979 873805224 590620692 366814655 395322868 43179874 725036910 510611235 885227991 486788968 37778078 775207154 821174630 223049946 176746441 504096117 492648088 6861303 66555625 425312192 296813662 653647056 613107868 614994284 567739823 774025810 47705566 175761039 680665765 361041040 3807162 211783869 208429570 77771043 466717684 952222175 264894845 854387254 598620990 187527173 195675503 30382544 562091051 263469808 604569920 74015945 196491669 118904354 776182490 281263523 652895667 274892021 699960825 465009166 712416808 102597863 559850198 805287602 657071385 631209382 18020754 763049953 955547085 956464763 303227314 467372877 856095483 273261254 581677164 27089159 782619359 450149668 754255852 758909932 298593483 505331260 706628126 967565665 792103836 232819167 862431795 994448428 906450162 357123245 32746631 886655457 973413511 451085513 282942514 828286589 666585587 606074644 92038006 368637288 792773615 510076337 268533210 865188010 862963766 902955416 979392816 475974625 906583203 695216479 961992319 864364280 550551704 647691496 948157099 262334901 812715427 376648032 782953448 146259671 586495193 664856270 453424423 642518910 853403366 564263756 307728672 654399656 142673714 136522349 447743239 614639550 476481321 92150799 440973226 676682161 301889039 768897409 112494590 5762127 341103392 983126681 395518891 213509643 235077585 30897248 148977430 701267298 953483460 362129184 738704817 259800871 33372980 930649725 505758337 231572263 830192931 622541463 335970275 952014140 202347274 148334139 139403661 280979973 419781618 285042191 5841498 73567382 21439349 130232147 715661213 346568527 583909999 273276358 997411540 444528168 322046106 909055488 727703002 854885220 934063631 825810965 295288869 270252929 345018518 347885462 73213590 253367930 333795009 241277262 55223251 610358058 682322511 584243941 88743895 864825947 527905007 779567568 376466569 394296266 524075727 585061420 340654373 245826350 212772005 86625903 813785757 177059489 859170290 14590906 71606805 499841367 446639730 510085295 731911347 410402827 614238406 51400664 797984994 842127613 594935637 771847767 491693223 855276662 320185612 706643338 528708154 88557200 627846326 427835202 785686181 305903889 569994164 221544268 851673162 703546749 332406241 291761525 435878351 29381182 51959805 155473258 893290203 207291176 95228503 570864819 703173968 211812477 327444280 340920387 876213619 529114935 904261457 507764337 476679816 720649749 21964448 592712548 166949661 532450215 988983877 849057646 752505442 846506974 302284464 688445258 376930642 39723654 202573963 734772486 306549457 314692209 952938425 83552268 583235144 150271256 796089967 216417085 790941640 346805504 533124501 778139188 651060770 907232977 99590856 469305910 668256061 773064812 590586807 198422087 659821167 25453529 238678795 360907699 748651201 645769753 746372451 485403465 413765173 787488832 298894449 265874120 287218462 223058744 457014280 748199787 426771607 30703795 951652672 164767792 897407909 838179851 286842071 336940394 904984667 611196945 48219786 608508920 43938829 160757895 657591148 523139352 338337327 385122536 182699533 64269283 960193125 944137394 301901912 542958221 899436087 25624570 50937778 725516011 93746870 962795597 128708273 55801424 264687322 933695655 698897526 988814133 430450839 136692523 697742482 464280531 474287282 477912625 510586374 686012304 763151150 875165632 862094784 759477491 547929121 979890482 274161848 269756977 487923297 419661555 471513539 594534532 125857222 842666312 739311904 801769283 474027577 542948125 381643689 865951183 628833948 239274696 991959708 361466215 915998731 517566832 449833044 370909543 845502909 80045147 337562831 680934992 796293082 194266406 491689028 55843578 158452407 973785942 470521170 154964901 630383795 515662752 822839937 306670204 296965849 731629678 679836923 21994728 318065064 414303032 50633854 172499185 565206174 689454379 440044631 725237815 884911515 101522821 737847710 452092254 962055609 233512059 586381632 743748671 262207318 893934038 54862889 361098191 545075559 446423496 27363034 343080141 273364153 777867085 107698909 341391688 870445316 737261298 303598478 506577184 89040471 698237509 828308455 70427502 354333864 38398106 927378321 821087601 655180651 102400096 985873033 126320035 458707926 334909803 320169411 92140158 126228990 717169810 556721070 471499921 875237276 754148442 984028741 970095121 925479626 372346196 875922854 231230267 629095189 8077540 668298952 343079325 488527664 281538747 63023055 620958653 132423731 171922810 227595254 300178269 623830148 111418775 383482233 695779697 504185960 657503516 246829544 10384847 421632793 649868156 930713799 348353495 577628813 266043683 65817918 365119482 848339353 957144270 37585472 878852121 999122965 467513247 513030241 552100116 305205485 655551318 971856884 991596040 897982649 180111856 45842160 385976160 851017633 845908562 755737655 755648514 694988429 338698988 223886792 273948866 1747605 938185274 224401996 248208216 47587980 978688536 772297196 362917770 779099257 974356164 864974980 858381228 939763293 535989302 651376440 785217842 325318072 632956452 548682274 954463778 468313844 552932727 470422022 664909775 944981666 244606636 617655112 379258092 87061631 113158099 858962494 942740033 36810989 447833083 714320326 254037633 333650936 38382369 946035237 784943126 619564894 545444752 289771888 808706778 150271985 364570798 668655736 450039167 265784988 953132703 68702864 861722992 409719177 2343836 579140854 151336490 347231157 757573114 15056381 519189312 159840986 363286702 57474288 545369869 469255768 565676716 140340247 977710785 979193280 333620038 968459677 65257569 82177409 863531464 436757264 660483339 175793960 380255739 130188145 650379574 348198326 912054847 441966723 722485855 29037247 172981484 18893059 876299509 807741853 719981320 921325980 769329372 89641864 393325833 736280069 295110681 47998816 264469789 410839678 777365343 892818496 549188198 684313213 766494378 583501907 543300331 678720833 584600159 853894528 596530145 500862476 116674291 740557722 899690904 879248393 859225431 640396490 975055802 910887747 969558142 489221658 284496516 236567996 727503348 928227484 727961425 906752075 321241685 853446836 666306372 65010908 958823849 520148352 491654309 64093221 96417401 157724728 73891884 927202350 75044684 933703623 760139185 970515702 567714395 854491673 125212230 534345354 971528941 593370477 941904353 906583054 187754303 922156367 976060756 846738995 767178820 632793585 194459753 424178412 916842316 495702627 620524457 915172424 623348889 135719832 628244768 581423183 207164716 620564468 653172323 717710602 67431398 164326676 401207796 35674789 146015538 461750336 45953759 638605010 610654051 639555464 460586616 458348898 15428924 584927194 390958529 588587837 81925682 510527497 590348902 173736523 687387600 343938037 17141456 257334320 369151215 788596387 790075909 187712526 515001417 714782566 320679561 370498660 146614393 862224316 431043186 639451396 153068777 412175252 568272716 226697389 113467839 4908194 896633673 333417961 917900359 567535713 383758213 111936188 270784630 980075883 576465530 144188288 444444735 910676855 262354463 111702181 48298620 225595624 176402882 464642568 137312876 251488532 150837472 194401584 305054154 766175675 626502459 682934935 668102148 411951713 962471954 192325769 950930989 184482608 626924515 46369643 232053159 377824069 814497784 324122412 422955795 366647621 938384457 159513412 840791604 874765574 464663697 274443403 594611526 297544253 483105275 620105866 704170845 763611591 41240134 417993911 448249867 534467682 688585432 183597783 550599935 126346029 723666530 916814798 970028038 102257019 348788215 389918417 615231341 386360118 224951648 333044204 623279793 242242673 467580752 809010805 244262839 347036478 723800629 426629010 186954517 149831995 150220620 649163757 148729348 946620697 13007599 503345813 503702601 180986171 609866340 287583167 176465500 920987770 990706227 426168193 331043665 534880309 851448139 717479746 720442389 94252049 350521752 387305895 378977399 404838719 878786825 93174084 862742521 289552499 120943631 232658595 956241025 758786310 671018715 392019933 877406511 870016610 262866667 921368548 920067620 489865440 756761209 415911941 960010138 941256507 136288697 725170790 890140256 778735466 161829623 305538172 342565533 766658633 367236128 317300246 196013968 36302837 421449367 936496511 48563817 52978599 988827267 389389279 615804948 737186187 790883120 857507397 53161582 444374673 682061 764266841 122877703 728552338 53084728 316648371 207337054 704282539 995768620 881408019 269323803 720773672 168324156 378413951 248902712 570507822 509608798 854533860 672451952 939264676 209784980 102574043 661906451 942208513 745490185 138419328 627946964 307123613 148156679 582317869 171338882 196616841 995920714 287959411 459342884 869887325 895326789 369689248 58074227 892465605 797702579 829258783 972051078 589701986 366520448 90541739 661217038 445236793 208379343 281827793 308668516 332009613 175997491 531355347 868965569 952224599 408057786 578146788 143970375 344542033 357340162 51081203 158318305 695643460 6521966 998321517 421228400 637348794 148678772 831671580 853147154 437467065 125180771 468698059 416926016 430546830 145453176 917855371 926454055 879933892 622339714 643456265 734767191 654003477 610114638 127890072 888834036 871553930 410553118 765623573 782353463 218931527 785579996 230279773 156475406 923020286 426183536 432635857 280961558 90331219 6679813 742798992 776317467 565340016 156731113 11591629 798977166 304528223 408714317 309955656 61853135 568350947 737325247 333781009 276433870 25173789 592428519 630919670 963193291 296858530 623587688 519700329 861175938 985485066 494030783 452168463 4597751 771350113 176764967 934777800 558711795 464602049 952174031 199027832 852056548 674103466 871975310 762540408 354764460 296761985 423952864 689102716 587425064 14833508 542982696 901009520 725936321 515960737 461910451 858540967 454209265 415936012 299338712 918700668 703357552 535530552 725214742 928882709 252885436 121227132 549699487 773935983 116783237 765654833 876480471 130675358 788271841 960691141 50280987 873675511 48447542 226543917 448256286 108729539 531305970 107543685 343393633 156204973 503384030 402039432 280612871 753598005 764449124 975561496 568231179 918152040 697363528 292352570 735451211 87376822 834750929 978218349 960238848 300631052 506263510 211789502 792972538 828649940 357238652 657184986 808294050 973004601 340649243 974844961 250251560 348781366 811827414 779770933 304190794 786065250 560258595 709997885 639862669 298979553 422358374 630929437 348623764 193052712 544598545 481245870 123780687 901356389 440805487 134426942 165442006 483800854 984169980 427450106 240044372 341013757 499492629 825815165 431011557 382073027 206313104 823191346 937695248 982769449 837141606 841971525 419732052 52529545 34397980 50851400 375549370 602304979 939300774 534104084 889642587 443960520 854005831 732003433 169827381 76630333 807759828 541413444 652729746 100217728 192292031 472192002 120045741 212040103 458267154 932398035 81831768 59099463 33126972 894374319 888233387 910349348 247308813 830467634 702354974 93128438 816857940 522460747 417272169 765041182 763029799 406008382 42751915 708142296 583844550 90665166 759596778 539002367 322029127 245004884 581447754 695981790 572533583 405478346 137447644 279124620 645353917 445030472 371324652 305106281 800549026 797685252 541818787 605599407 216570835 657554329 546419815 675869586 657752513 408445646 424783726 722756137 737970213 588043029 504668333 905747607 465351035 809166882 582619573 422421916 468371579 677037880 986708094 961090680 590977370 923134072 222484630 970859593 190916467 341871905 877941104 245629119 211237442 434134208 600802087 779856044 426164139 759163526 603234333 542628561 388060178 856741500 466679194 19261165 957644367 205534818 268420541 2240442 241559363 695369848 617197294 747081469 455633758 41952825 877479623 928607795 867749529 38215474 431578283 581236625 747593191 277733148 893963117 853571674 775762592 684690139 764463357 5088646 367760030 340234743 895156145 35024013 976325981 371466632 185520595 848636315 324892172 797216147 805062353 778809836 980124163 631888315 286591935 821097641 779229581 579335687 840344002 337948754 777341571 678741907 709431899 641196011 277025939 164642518 569645182 728958154 569839714 618238875 345299070 619092108 950226380 10305689 687358281 690845890 505699685 625124999 718790734 204489713 125726904 145540603 884672943 169094685 446644184 521286278 38197934 832729897 94571042 666852896 649719984 231604903 727736720 113943664 367968045 424865038 774159634 748353057 706492678 84404617 281461467 553238453 945012786 453589684 212133726 420725443 662852896 533016606 427662506 44666394 178347508 198483210 938370191 368105244 615726455 819137886 497075134 991300300 838125270 504615528 5460509 817950755 785757515 180094933 617078597 213756598 355551991 527551342 490486230 563978163 49173774 100447963 773382100 387803238 165464154 24561535 583151020 517515796 793958229 14598291 669067819 982294711 443707874 896063650 985458396 410416233 638666849 419504636 880150195 728198720 895171395 193234304 472156503 872056606 851730055 149413369 689304281 887922500 275309984 33464705 743030849 988146638 568463415 860902961 450558572 808692949 919629092 130145703 733920299 44700943 927247668 27889129 723208139 521101666 606654937 653673719 227968870 469112462 155021424 655867022 311148950 490092519 325239526 73984587 388586482 660401588 347330474 326197587 870046781 816618810 530502246 227525800 993352945 317379940 134779777 519982800 145845094 100113123 336722905 859940869 528563601 273861611 751229778 178551384 339469651 66994636 601565286 686795295 304901570 120009210 468961282 446610255 545322396 372413758 243128883 772979962 241974950 813303869 216530683 413048961 798789476 493997241 91668253 554608241 467169742 531157477 257701213 90980723 714669826 744506178 767077203 672479115 184414185 104608560 361491257 406720755 284266837 99390887 266050184 544027874 312980625 14717376 33571193 284784319 244401465 179640408 427349686 913789175 517720681 56489927 389714254 291512655 822569723 57838962 678058528 188759181 135837849 863894576 258126205 802870349 824020705 588004669 619656628 614310035 704545961 9087455 28067783 902997081 944639292 201683969 528900904 426850154 756273333 282216244 42090933 731117576 854676792 120044812 614472934 228479991 613292648 98745267 676378948 998346231 667359066 546625263 150382140 194355528 334194991 431972521 694567560 107592757 593090192 61097812 872709469 541058986 262526731 196769838 808606000 551888570 902847813 114777833 506768824 114639788 611460919 523267872 308818620 391362530 236370146 169546274 338839481 220075014 643992507 589228459 357588350 266451053 48418702 198932018 480229509 882203302 669458126 308793345 281749497 473337267 979922206 297656748 524892209 832642011 912655106 967321747 287704965 350379122 318601787 819796888 781104588 408028277 44819186 887396333 471055546 848193032 981332404 36016807 362204535 608534718 344847024 990792102 499942501 688419071 580125385 741448830 430289099 999385425 816162220 572724770 802475725 567936452 605742599 502726371 539239414 635030775 227476968 457219736 152287940 161439106 850987028 227507073 237100001 879487416 149666444 184787559 845286153 822028810 867785056 586843938 328023312 700108692 333535709 241167170 106053396 23592946 295812130 515959193 1681757 717952480 604804464 942897000 459850990 211276280 710927910 450022183 82189344 510070585 160594827 971603433 871241824 96072863 681306099 857132929 511850816 921061630 782447347 258237238 739812051 434166970 600269073 845713905 366286153 463077959 161639835 468858837 57291826 645556502 644489729 101730584 174913434 203515861 158371772 296438833 959429097 975678495 858587778 785042892 880778457 85402615 428889675 892915289 920394671 300118716 785988318 350159797 703142206 324793416 757503473 326304462 171958067 690557249 460787081 525990495 916857527 77464650 731178245 457342139 865184209 113960312 313799300 490062651 553705153 879416988 918946700 809376868 968760500 728329680 954971129 632838549 493471976 381306056 260364693 782495275 381518686 170383409 847033643 801558709 824156282 922875508 138867094 344768800 506128372 126430 180986887 233845155 353475475 872719055 572590402 997077321 8939253 384296497 413857293 43624439 461111989 229853319 573057301 815500677 281937061 823542085 774505867 134676376 794661648 476908655 705416314 208684109 736294059 866530865 479584804 791934475 123714817 807434918 706926624 125031076 39585363 742728752 608292626 19768040 784855607 508134071 848985275 305754277 63682420 568682256 66442248 747925655 217242900 258283829 787544029 901934862 298888673 316909981 183424073 78093879 151461367 576132825 960719518 370632606 234440540 541159293 689535434 862466407 821947541 445216662 892071227 772049500 245625376 779432583 645480749 892857901 304622356 416325241 930093798 763971606 54509284 822988914 645622503 464520892 781515811 165932730 198260796 881041196 779024813 356700253 139114929 73127091 644395176 22623826 375255837 48886230 463303743 605852269 733183975 960088997 392762839 826239712 702541605 17413855 672112555 568799225 488135756 802111730 92760617 668401464 412872357 858521556 422388128 40907380 600480217 466573957 987773590 110650056 652448731 10901393 491444297 763381591 832427734 614490453 628372656 950951258 398789090 522048094 657113015 378093024 689102669 396614118 326124172 961806533 819825689 597491230 69191352 64053068 360939348 71758652 953900150 569375415 403756525 798489513 930878747 508395093 287063598 192574195 858566017 368448330 804635840 929317350 722790319 304696510 679805737 184907288 243393841 966510362 364028041 999199335 3298429 206729143 773702269 936068470 140099654 397762822 537308881 87839913 450208589 408321977 760706953 879963343 116208029 489588030 16238379 791064911 127940188 361454443 838287944 719048949 569555044 514281969 969551292 440708272 917630260 171683879 614875833 223937226 161915991 852259860 302469202 478785058 997563543 719956814 967340140 129430256 584135440 88779017 346286588 900788679 357371222 84837609 479173839 313288944 131812482 752576622 64932161 632377849 3625305 310333228 726876037 687353721 697916577 568067600 188328764 465108510 770751472 128895185 971499951 136174521 853858285 935367642 983507367 162630223 540461821 283391094 598060988 202714747 555532343 678757203 937005725 913498040 116989090 7891719 508373194 395946770 708915424 284235377 661572023 73421438 347489384 352122306 198636483 940093059 671287161 113742619 661141761 692303745 300668130 741285919 425360910 627582735 612008762 720950807 117006204 152614493 364285664 991811461 358171835 529301055 570852228 655860582 2556052 990889522 351692047 8642941 367405841 265458862 263258198 71855013 907032180 436032114 346282896 982989585 613249890 306623286 673334164 689688650 309786044 391404573 456250638 340380755 135272295 90164793 470113341 358398180 910236705 178433714 545990866 505181490 697677109 497452731 369920171 198148708 805760156 607550563 41314029 939936172 178858496 976121058 166538603 180484585 194811206 684111482 816129374 342191541 98062062 944231290 346187003 837534147 45119585 362625528 617696479 322758153 871200921 706008357 271985764 783328277 541346793 842590249 41455293 959348453 319807329 644296744 491141341 172870687 809612874 430630823 822311739 354419631 844712440 939904243 740394897 269107705 321048756 860632376 846500398 898049213 407466191 941059498 817114638 834093762 754199495 48321384 648721149 767156346 808095793 257883828 842028382 110820217 712385874 372380543 118682188 697552542 711061969 945042497 960656103 361796694 679035180 388259026 869106969 410022920 800507153 717461899 861764166 666726898 516094390 539803464 59469270 776139088 126172890 850093956 484710960 214217614 118644801 643814705 49558659 357134971 417368101 100280467 883995618 715159799 663355141 31802653 975303788 827646519 661829785 397377569 684276946 320367977 403045322 695117258 905984118 513394494 210346025 899530339 503630637 68464455 83807588 520445538 844852741 228451136 382174596 632457442 873327864 671756205 905303599 439820136 973282924 62827312 232056080 788507078 29394899 83253690 921550843 268226497 41308124 853701056 741568876 541679738 970458237 342170052 104848099 503384139 402776779 666505166 903175693 397318038 531353012 364249378 569645863 654616582 302555687 545988901 912429654 39355220 145551112 811869892 761975011 978019840 215560026 45791252 86411666 397112453 467127643 260949370 44038418 814955439 427505339 492638006 622100987 681472402 193468822 987766943 909877697 542591744 574240241 889518002 954990113 607633912 598126290 830192791 516598682 997433831 786116051 59613091 836610508 875307990 643590888 106848889 390445255 929401803 819075645 636740888 273264280 767860204 369618277 893265300 906381468 420043777 434314918 267587217 901484645 953168756 208133051 764638711 301875033 719851215 838527238 158640667 7955798 392090145 838974316 378251 313123707 854241402 927262277 706762253 705575615 550318387 703212693 138366745 688985126 506655265 860098880 435315186 776661906 81883864 958367224 350238950 563180644 560888273 583670330 816385587 867718977 291556923 561089704 978813588 292821618 350324213 592577029 260124955 23593875 421121356 920658054 742331682 205036236 732594064 729386387 270060015 579046560 332619122 428052942 125604794 346839033 167113731 52755059 989890298 906179441 330530754 126780360 155148961 980915530 176391838 32640964 139335792 744816927 203913457 273512307 71704931 582084387 908474602 540385378 837834161 421644892 666035796 171676969 542301656 936353475 140718639 602485861 387842447 8164530 950627670 643274084 704961678 656706542 774077575 272477079 780184519 529621158 80684838 508439468 996049044 287983760 523518716 823665476 629750036 774831309 757918479 990571403 465976641 695970474 487287870 171382398 544571041 398108538 14286142 979363470 636953368 279389217 368182188 591175587 142730990 528402517 862507727 818141382 541267509 338138680 117133248 603412019 639343414 36923897 958805864 952271674 315242788 879224848 753987668 692585108 703275852 133925513 2518140 418170447 202802206 949131831 316750943 900124792 133147708 77647398 57015218 175314805 16092170 635782597 119800549 248668338 651412188 342535001 399689139 237669871 638835939 127184305 943282679 142359543 902664094 354114667 460563560 603293993 862842615 480979953 674924386 893984433 603104742 676192749 796589598 336241417 437906823 585901736 495539721 433337654 328326454 293561999 363819118 468905939 122532876 647888757 302820795 701965817 175595038 113425161 419768793 184116801 672986543 59838262 594316881 616648830 496147320 495480331 630860516 217150344 759764684 546721189 980568879 623469250 126607127 346287350 618434377 128519807 832060477 504110714 679154401 756918351 686535349 927685636 908554626 679716740 927866968 564312394 745713683 123613950 170296054 806892969 697173679 863295040 721152516 761116978 787065555 458507505 130953633 372121908 905032229 878794355 658268380 583805513 549542923 678411431 694396370 447852306 577305160 461907489 693712059 659985612 797730674 944405093 357094410 866453861 618472618 739202666 870756495 192893878 266064767 617147749 248328491 244601281 116402831 332295939 522850456 702583205 516109196 930068500 489298559 102254833 220256774 453815879 563286384 786179207 299301147 479389473 338626414 4281327 970194936 825446874 447819643 203996467 769697633 11129909 609349527 695458306 131649403 589304651 823315542 387891857 575921688 373276064 470168432 534538802 724489704 369599263 520226887 866661148 613912648 577721635 421936546 525931642 74423853 176638966 949515228 759178333 276820541 992535984 349481894 717258818 440551365 765911584 13491042 478922633 106311250 115691928 485084007 99519329 834060732 360186207 87243210 407735104 274718245 19048939 597990340 61776609 518026139 638367702 363635658 61138295 175461989 68414166 721203261 914411728 923797624 556437695 960587811 777156297 191049067 808245497 887425064 396954936 138793903 392594657 877876460 525842016 455940797 771466625 873202049 523139757 275655150 197636168 867035497 658900130 90706361 221721798 738606489 521876853 663816580 16730748 767267410 326021123 221707164 840941749 588335949 208202051 666608256 42884264 984416084 717959504 35831355 451067806 577412201 813451316 892084345 183586517 154753367 838660108 896990662 334129977 648554243 981503240 411964386 972499160 930720001 660421949 248009260 240753812 864930815 168590769 79413168 269335454 571478816 260225458 443688441 108950771 91516769 628658939 941605293 929808545 618289683 881945335 681072620 926766959 562913140 200192791 849395687 990195967 317847398 317772554 994584248 250962473 945275443 918193418 173986000 387762406 59940371 195003501 814557336 399990335 344371486 581818169 928912328 676929703 539980802 131826416 611371176 664014012 345495873 405525832 851618236 812641190 35726345 397393057 144670396 283044771 891797450 957582379 577908831 247029569 51629097 678132784 300153619 617120027 609494673 877671017 395133547 191244511 947587488 154438359 757431172 893314515 733669837 416403905 417938961 986128680 571364197 407492136 756257512 494956822 317951379 857040123 356693934 342048604 611517298 107265067 103889411 501152618 127151045 303340542 44062301 565971540 683587280 161551151 33323783 9729890 439791564 795515981 928958830 943558764 296021017 713582963 795623051 843250434 290087528 563166057 346306718 918201518 340453523 264970130 406715152 391892353 802753665 489981131 49520331 141416748 742313940 625144095 16333197 615571782 659222667 940330286 327350805 805333182 75032696 425923554 398185419 562214679 890845255 842596144 73800600 243183919 82216063 839161570 290084456 288973654 809288350 173106474 456715003 410954309 871218820 813414056 602373402 330143372 576834618 83552026 382384700 17853303 893980553 599739091 915802169 444122876 69112327 218824731 563664046 644608866 46499668 69321201 456928824 769794727 141098881 120334941 300511201 88856301 351468079 136527714 662443549 984279964 445862248 946022175 784113662 5842245 170193824 446840157 675165331 279981799 295727674 662057230 68005899 20392122 245466750 954297914 289023575 239437466 926712771 893118299 960961140 844097002 415943724 48055177 619829899 137338975 306330426 964281088 693214672 940105713 585561368 116893610 222188400 973994613 721146906 535398282 676000132 178909791 272776989 322033489 218467166 581225423 641956655 479644302 811425209 723025217 41272439 87894941 524706366 84399999 35046186 43338606 778062883 549918208 615987049 430613260 286638268 564206047 58927103 144324500 307749573 22885297 303848945 492391840 509291920 876251707 591446241 318910810 885341278 146639248 881056061 923797634 186513136 128332333 154159796 147656520 278851117 70931613 180591087 898891041 539193976 659618143 569931759 223947773 483043595 583786358 697131494 92548359 661534586 878732432 495040085 898716387 745904947 701222089 902521184 263154383 603283800 105627614 457674235 183550522 913313325 862181977 580559445 958964529 870834435 238046661 586120772 4669856 995812875 461799208 165024908 234318048 729994398 345549831 394660423 647893899 417322576 618945950 576360459 755156353 54996953 855248238 100343254 964585387 825248780 504464578 799959735 300377714 309939780 119459661 545465837 737642793 206554392 471220310 830867820 969369815 333542677 532149869 594735197 489302479 61581577 950786206 728724996 847806255 711259472 29158682 241964853 521596275 334147465 628986214 515804400 639438275 694090541 409545002 612599300 948718348 609273013 27894321 971341507 161058789 857992383 668459944 41324325 747337100 766781405 689679260 697919452 139456079 568279950 913289662 691036319 257614666 560194694 665322678 397969628 419207381 360930888 399616301 556152558 934827287 824821014 577004830 390687036 492768542 189000650 955457699 611626097 734116518 443207537 298641412 110451257 822092131 114383578 368342935 36216772 916270325 374669891 214282710 690553169 543735070 964647083 150954599 357188528 151329019 522573805 538130797 684917331 156174955 413802193 5458296 273653677 865296577 317733567 705344206 516935458 764149420 928376012 127635260 101409817 448451307 939299973 326948476 928247031 999365511 33878641 437291178 38151128 518588279 904010564 973959665 889097123 956877698 120345413 458797117 391826823 804406257 968078968 933325631 756814522 411644184 386297729 277432174 481751925 232229492 624519288 922275599 426147113 898751403 923753249 13237499 928448817 291362781 286290183 332006601 476349695 446225725 533949283 993393490 296446238 779349429 151245678 404131752 727291442 860507179 618601233 766371112 432450980 276486862 862499798 230267123 906600344 53325159 59112074 237044628 120123039 431095703 493832602 636199663 545712597 635181695 407981624 730667213 463671257 230397323 235353624 495636706 920228012 642279759 770685611 238036787 440371077 690916385 512628239 210957665 766580695 486430074 864448967 489742038 310222773 285024791 260312727 575788575 27288553 719125012 89418442 668134007 190933574 332027973 590467416 420104295 164408406 397108344 956838900 544867152 505224562 242961235 934051841 678997562 341363094 300943221 56880445 289858080 579313271 930626592 363958812 536771587 589603233 104368187 533851614 198928357 482613773 381079235 251189758 310822808 866390044 574483741 206160592 483379097 940062848 396342549 625456112 555150396 124460014 870644480 697828700 314254104 847332637 94155775 559141209 716286698 446446913 289139760 834747245 316000768 437166586 363640112 485042635 913765581 626648185 984712545 220982868 126022912 257424899 91260838 940860769 26767432 214718469 331467840 999265138 102024089 354068153 198013519 199789307 255415512 800205550 512850894 523638646 475132361 890444616 901731557 95161869 428463828 472794035 62994329 719953513 868859027 82433723 505538217 804699202 40376235 430053205 472038951 480126363 314330877 636962558 249761723 168627903 403665941 947176559 755323588 274032329 70800707 948432765 834715838 666892008 474067929 547301239 511686634 781691099 511010652 175400537 693774338 720665453 57171941 901565730 816913136 652838443 917025843 948048529 875300482 354781518 84031748 55140233 905551742 706132009 308578903 456031409 58328025 337741842 247768375 796445803 56801334 655753715 831961276 113855758 540676863 721792697 796891278 651261112 314425291 707950845 587407690 962592656 145010233 327427618 915278728 446009540 504732670 578072356 436472610 528495513 13770555 467470236 926679443 965106670 744888110 606508341 179332416 402165505 23401790 917552776 17358769 712241582 605815030 560838895 513755505 780695928 278132657 29079169 412773650 69098704 438364707 55659271 664545002 121728291 505770331 791381850 206145260 561174172 171820113 234954928 179521745 821462646 953461723 357691926 328278464 838474989 206558180 296891656 612275520 381880351 166716027 841865777 432266 39634715 104452181 726002598 824487473 363735023 646223964 195072308 137737215 330111649 517880274 617116949 546783729 711584633 945279136 163078018 976677930 6935466 458114759 398309320 978595668 457017813 786876957 483716697 299419347 763957150 11285145 438060345 537664153 991499260 729074475 108306133 830047957 759595108 482443110 959447690 644986378 448011038 638353714 957953420 16397320 859086291 766624691 57622268 923018284 3939322 654007122 417332432 512212527 684721437 445228939 998942690 952915126 295968324 649561171 738617220 261614314 668901412 541223499 51226703 123809788 126543935 868942835 331847603 471213817 226163064 69004372 27111645 424907397 703237776 190504318 813852611 964420670 313029715 967401273 125189740 231021738 421067940 333843015 331240996 252438431 177556448 992509477 233050481 457376065 925972242 742154071 785846191 614943454 471145961 204972254 993776371 561328152 46342003 621304464 919062973 561968526 883514178 275523055 404045915 701824776 437378635 354231350 564698530 269599230 111744207 14405513 967153074 830227019 692835163 899029793 197551829 84342287 97617212 274008514 285895891 622333554 89455944 63394292 912908558 405854916 900538474 638143321 814679886 318727721 177192923 163121747 668101173 762264157 180754417 320314122 982851038 989735284 433069375 924929104 254542057 982050585 65516403 628403918 880130036 230531791 616853021 737989494 837151070 599124349 859798868 970427707 270301897 977033362 727784466 707244074 287380288 126216533 9497025 594678597 370785858 532313085 268969057 201543832 256525063 836731338 397402649 183569270 875183420 36879989 449427142 22525106 263706875 760736586 613403046 798500942 750764638 960948365 533587540 136984734 732158355 641846417 226497759 553135473 116559623 356194798 36370837 91014907 898280622 503460476 249895639 728626379 23711145 795725154 835208081 808236334 443654452 570738414 375465986 937392359 931832413 963269661 26074754 327721172 244616393 679159159 276488775 151532888 642916132 162607332 618698229 493420787 819963591 738784734 137646322 583630363 468179560 406590763 113263598 247462298 182458044 988138858 448555330 604547523 20083876 305563673 542623953 759526451 941472012 540017045 777714219 77251817 100417175 973259850 482888578 120774040 182590875 123723890 472419636 139589120 495594647 777399072 671291029 475212890 728976869 110841411 492947985 572789412 867573071 349844524 486390977 974495289 69173820 251881416 272130112 173872041 353020106 444736588 277312513 530759728 568812317 25173809 88262992 456290413 391101306 882369786 345491372 344573889 378064803 227499839 797721705 658875774 512746206 330404072 557666241 121073887 930860190 864835248 296765427 951505762 250825977 488646276 340512139 214210792 139131834 967219068 185449061 347017995 95933997 931351875 365781770 939001348 527385862 713320863 555553399 249998695 89488070 780664281 790099149 887254251 935613638 533252718 770899993 42363717 752447707 951204352 927610855 539746631 82222536 252472378 470734175 24782025 884489451 284477890 593436311 184009563 982131166 363085352 757115469 481383120 182742927 244106603 254682920 781892100 358095340 109297174 824829038 832265381 79383970 63854471 526774891 754113445 410939725 101475678 318875574 189913294 1772627 432564547 800775391 66819094 788598369 210637026 482907081 388494127 111152914 94300766 12886431 557797691 699684665 965874236 714669637 359480109 947484773 636922454 361231281 494798179 866518821 364303290 298894341 575437131 864330308 675802998 581314793 410460433 749276041 576239239 788924928 312993183 986054943 874481920 994920413 503680607 284091447 837472162 728307730 545202392 12239806 909209820 220328763 163360117 830053338 231012181 941845858 17771022 624872744 206306778 44563036 467037247 486162721 161585866 648833495 370221173 367697193 773037223 410846029 342633010 682914561 839676920 237605583 368095496 143432236 193256637 98198944 89427406 879734386 921246221 795073507 126753208 104693010 950932515 738117562 178689001 973711990 54725441 235851165 878501514 780163024 866853934 984059155 441812798 583951154 443057213 765777599 543476044 198811669 483022725 617681491 320872247 280199381 994075494 793070227 274617961 626652886 173768614 999993406 401950493 176030204 650863562 847882068 635974933 775518152 687038458 745744993 961134447 670337808 478420905 552451292 88707993 878314053 437761514 610425515 834408104 141074027 506985145 370131382 491756344 972400379 886266210 551190942 60793710 142719678 312038981 607686560 507877282 369599878 576348268 156444761 34846530 207741929 367995407 441080471 320955484 4365363 11774832 735621345 833809969 791912521 54886991 674552925 69461375 765698497 445330071 610471061 914841564 140939924 866977174 536112171 131912223 740522926 742217498 606539287 812039564 816537156 576806402 64224784 245184729 796580427 663658234 479415665 514412334 654101142 134652528 287750021 9705113 581480964 525919160 687956697 842812817 30687545 32351320 262899199 980667601 572474218 610720716 253558951 353026244 112447985 642988233 718275859 110031636 13759875 470412842 207108792 69162269 147266954 371779891 889475256 848864580 544066547 820531365 84241414 66085599 452377555 155559052 757880366 825044452 931824223 741277773 323397670 128156246 918258347 19677541 631440209 249136204 915514256 965114577 825274068 76976710 899218008 763153756 563221565 575807886 529590030 273949088 982407498 901350735 430347207 700770390 265113292 173139027 495580551 981992364 823602182 978577713 96580995 434066526 93976580 161159570 522467911 12776995 680657865 990925357 207649596 866020822 905111495 145524046 449899327 650616451 969879933 484330742 52805487 215553126 592320997 944512129 540320138 379226954 873525176 781769957 959638942 796806291 512572814 567549560 615763771 979795380 19869058 814617881 680408408 953187028 105849955 365657470 225593197 949459234 578816928 450547777 227827104 357514695 952664306 373408323 338456968 741898587 891563252 881205286 297740113 785297986 825417183 558956319 408892435 847128856 604739367 710153276 877339928 673690477 734883915 489702689 103707232 86201399 106679830 726050662 607997683 43706684 42634628 208372392 385786105 150332477 253652495 193983186 274495278 466754260 792458619 663911531 113988557 594837599 353053191 99394356 680157519 123494759 496939465 34925523 4512772 653411876 12141200 633459659 178848228 362957436 224731650 910276929 386904118 507236296 7762201 978241585 281160955 368336972 159351912 250219963 985751510 856979054 12115900 68507810 608464238 364801522 339333195 5319049 537929351 928187274 192509945 535449540 802261104 142546513 717003393 58869034 332567347 398782697 454342517 430061812 939677287 117795834 132393865 933759699 67781151 437884881 701944391 778011083 35101434 91488805 759338455 515231767 697933050 371618801 245066690 127086998 264165963 505482547 121615343 320960456 218174979 833259982 514053876 104936836 470429600 757817761 163853456 140412579 421146983 822441913 522856190 227600748 499034794 63414490 150003981 159072935 129758157 381026370 949288767 554787101 565047670 716672231 651594757 198029026 20761511 410230027 603851991 304938349 732898459 604202315 755655022 896210017 94690061 868317981 996378504 985041826 496642654 621538722 837616996 44420247 317673167 411845644 647110239 418423397 567489350 478007724 389601505 377348534 691443391 796235383 856616271 802323327 357596327 279769994 961232883 87694496 836406281 583525353 980728227 339500085 564491619 134339638 855111137 808934815 729871265 183802975 101699625 856404490 808952205 82916287 692364506 986413784 215452214 403826064 905786667 404972224 715647818 315620123 108564067 475031767 424971959 858460314 500780019 161688184 354847204 995272548 518597604 33766021 358092851 543026845 54179114 538805879 805990085 954563636 515024724 665534869 369653659 41877772 508704370 746761527 452633923 682178690 356292313 918732296 374984877 863956422 130955498 518018062 441738458 500303544 366388341 219782398 930804597 369379337 73429450 582257931 988092716 696593200 872771408 336356468 754078459 774410215 623057684 352168659 228598479 789634585 824670621 580790628 277838392 411137291 556306356 183786694 530450014 262479165 595529388 65111752 49823693 15410336 259561042 688160587 61855904 76600560 54500288 792673903 837485641 222508486 410223170 859859928 879866657 55444256 651141547 666689070 396095417 822663101 141644828 748434857 38230345 475026881 138655151 779398683 157176191 20665316 206264345 886955948 419817003 400709149 433373418 542081387 974111164 418720101 877093974 400131069 626026623 70090180 73750034 833467972 566171130 379228930 451486423 494055711 771413892 454215395 551651493 779850768 664354964 280272699 392070268 437404509 538756532 495232316 325227747 39600722 782811509 169653789 302067435 191733255 389353549 508157365 545832059 565898014 80287560 768406182 882113713 690381379 777823003 168330148 363635605 606588937 283518466 200083588 399094007 112881528 118855321 332871820 911456798 262614275 748050589 202346648 849080339 933700240 519468726 677789477 565895533 530747994 253763874 537232177 883994153 461475089 279981887 875733117 430081873 281905209 408747572 487957388 399828714 605789805 93747080 136999509 666537671 43920573 628324223 143755110 436569138 23037654 698159734 199014547 912317994 588823590 537986495 777983969 340299004 969622532 750664926 888533904 180993240 433603645 756210405 423925817 592686503 188335656 956426247 511922831 587373536 948884134 351946073 934974930 767401018 556404033 608243560 689314958 185063129 309967839 383967009 160995149 917381891 542578275 896176685 936382212 215280262 359442829 784747199 480742888 102639734 581174382 918076878 926714289 417669007 456149021 422565890 551640886 571289041 346225790 255612273 87934118 347737910 604702691 832515487 231840991 340805647 226023060 967643570 891106807 518713959 698772548 929839879 230983007 691255213 467911864 266265718 254240727 381446686 494918386 712183469 607994154 188401076 860021304 76212129 429733845 357851841 923177044 313342146 854636928 78712241 17835083 548767359 930024527 903534847 569736458 233135061 563238348 76881859 211282655 143300942 726242918 735426551 478368009 376402134 659042674 579359277 580851378 846945934 372070747 411372412 521270587 401499526 12570000 281019543 395979050 555933867 909407562 574500817 232563223 635463391 854121557 690967386 233492192 784046231 608103660 495012153 507972440 302681837 981496443 46646663 879538823 547407306 987936851 926660005 729895178 950381719 498208142 795838391 829023264 841780921 996986344 405588719 821715292 569683803 524865788 768874078 655313344 891386372 999167315 952228888 559816602 61721133 314254727 150134119 257250751 952387833 118590558 748899107 307019131 837554520 485959474 931255042 737722585 725481840 385472704 798068842 102418470 917663438 65631161 185662032 629609759 872805025 538310861 406731374 740371016 895714637 389996539 550284355 246898102 834009596 109946167 583761367 404954255 460784224 643652755 234770046 784856682 660965226 221429203 661824735 246496155 137757882 972895381 961020971 780046793 749283590 955757120 622472633 327637878 970270185 556240526 99883149 687275621 134220849 896903415 875047012 626838055 868182650 276931147 550169216 755042135 289726419 8285325 833822003 127705471 187955120 343540913 464213685 466134829 530431377 686961396 659816823 489461815 19575923 649019282 512438895 764098984 405360830 819286411 190161112 934423652 164936789 383419981 538547342 453461490 163275741 991041975 577690063 515111113 734947396 438137242 730931420 979541856 176253119 739181320 64623545 554846167 41528707 16736829 726957621 287929568 265458685 853846661 805784282 520890154 431017944 491222311 69430469 662997204 69197666 770675903 932901982 231119843 373138220 829528754 434846054 905195504 489590880 924371537 357832339 771800394 499035856 326640617 120546847 309518870 358794979 806433006 878875048 453604893 638459330 881399419 498634649 418722947 713010042 935942542 350860261 345404289 475311520 239083813 988552396 509916055 379801830 905028583 114697852 388443489 569493801 320343198 118394367 154187395 309716197 814855373 296671271 664357750 416075068 302012929 694549603 553950854 496379662 175598958 178283589 654114855 426354542 388358058 879966226 697099033 389536195 892557229 316994893 505578246 347755143 564509735 876178543 27519623 578721481 924108990 664049246 22857723 605155944 823466923 609778960 567113652 197632590 860703707 759282195 167326728 676825671 544802472 140590020 226774702 871587660 988993519 343812818 926012996 67538200 727842413 725597207 389462404 101674617 800841720 532455534 492926621 5447772 723000498 265513927 170927417 131369456 551150987 893037789 392284618 429745665 371771731 849155278 496605275 203023753 719155695 366369334 117828384 89738785 834854087 834524985 453163756 820480346 470756078 504935614 74516465 659311743 889392302 584796869 42493357 798098594 902853770 402966258 717603081 536262599 260173987 812357027 887794098 271028747 690050665 767064345 41114771 72641323 474095394 375105153 652750777 56163961 908564989 219499948 807944197 547684444 382116083 512576204 667369094 350753481 337785992 962268172 200617878 786718082 332272257 514382122 205071726 160217478 146952943 462556003 338562637 673579692 72694333 130053085 166140582 238587171 453893261 593975801 757213170 974382204 308072967 382871982 250586139 168437301 695724348 575806724 735069452 78150376 426988664 586017237 542403542 160669982 423778315 78550344 426635734 981047699 689101928 444003404 340431 987075089 920133205 494586360 496057595 82797416 585293166 76252382 12696586 936409489 390662733 474508669 612604187 550331128 94783840 889961623 378710291 445197178 648845159 274305124 402679723 698860422 382616476 178356424 133459948 941332831 283263698 318461161 16834038 84759846 809106977 567595484 554229350 708837539 906540921 413999805 537820861 38059914 430355983 51966856 274040501 358963826 22031386 836620746 378739419 142846661 214660914 842586218 373798593 446955881 380959687 9809258 299099704 16152357 489977472 363468998 826409470 79274138 438590319 683693559 60387541 521820063 546305600 158175451 939523594 10336453 653644343 449434957 368390632 825456375 16062332 103588385 829382147 104106834 627998298 927984638 789584065 235452390 957935233 867777938 480329160 49479373 656527181 96179613 341991068 832469360 878804500 190427661 429962693 862024501 598910998 753779969 543946813 324094624 368406431 980957312 394457676 628526094 202823977 899294693 389292261 724234996 388108610 125486745 771588019 902146584 459515975 99055695 412669738 701061936 151014989 320276044 765107488 245025120 620917769 627888965 872987602 688678541 574898521 690986411 715109337 521888864 782177023 81760505 884284067 773829510 874056382 484831402 692375553 676905723 151451477 973186438 438541116 765364412 36644411 570094934 345120064 81195992 929286333 329178775 715805945 1023218 529305431 659108894 146475747 499409605 440264576 986106570 902001549 420361379 262383990 662097469 699998790 725501528 278093289 592731744 679970990 250769848 787622306 766575793 758910244 666960483 47468716 214684437 886619256 18726857 708030914 233440629 283576928 487172345 830176073 441937501 931487570 989013954 752641001 426681077 483220539 453827060 723120680 558026447 744509573 272923763 558747118 864835081 630624944 479313380 61998903 714226567 897572378 681530152 854763551 425587847 888137709 807304940 763789968 367802122 994034951 544302545 946688470 527821246 455903338 887511154 233525968 429963093 295291231 113677825 382600276 208078337 386655606 708377274 931356662 944112433 700978863 661939947 241096983 889724917 916932370 534777632 523736607 925185143 501401298 620376880 169587285 136030022 681776185 84429992 981099232 914678264 101833472 997288344 665349288 95337080 195535465 700079122 338227431 314918362 696043518 103624176 223663792 978493621 416661451 234916131 163373384 253472470 801927023 143406365 673725367 403151843 477736697 927858213 282419001 870749939 675347836 2679885 91332274 604566210 621319705 545611996 871255226 555813517 288916733 921926674 261828399 993066994 726493413 641319381 756193274 952967095 870443333 544734232 936348287 466987059 937945347 961080004 564199555 29204679 187290259 675784017 595490814 693358850 233420839 497185988 636939087 928788337 570202799 234382416 49440218 223893793 463338484 874044616 711236727 22470574 568670948 94261342 169319821 793332417 883172378 906683291 434221361 670726439 207451206 130657392 767464465 210036373 612932093 413016894 176667486 670322549 750282741 239194683 200330763 854445161 560034861 515225756 482892774 993493510 726105124 588481346 350271596 566194486 691514027 184185186 605460747 5382882 821191525 953706102 918595325 344516117 453116537 873897290 1601668 827458153 281984893 736050460 440955409 285303025 55925743 989396756 822096739 442868847 239530873 633554056 407216973 242194344 931503659 528112849 467020941 945789929 428860660 372304458 9432450 910497817 957430706 560209254 807602615 399693441 593662766 462739388 439791373 242857088 100615869 72687479 107967150 304980249 241318279 715984215 550964346 628246313 604730329 925845235 69916427 787133558 158765700 492167036 172038423 213726162 275041712 730659862 88926068 758690947 609888644 86116855 576204023 278943420 241067340 283744310 673979750 247768217 615422292 619986505 577584182 842735188 119941625 420484720 547032930 14066170 260663687 529373869 187522654 916728999 553922450 789677361 636529199 993952232 664069075 300266264 77704270 110311696 840405567 660764198 654283684 936695405 682889437 8569101 33995884 574238641 809724526 689387532 889066512 29665909 887703775 466795155 455240623 444073878 260002439 487576185 871312993 88512805 22125149 55020414 417289664 96132620 775956850 628383220 504895616 488203627 307076510 512080217 177457977 990859324 696648188 921086720 288939999 179929013 66643022 170964532 451638227 166229348 50403264 326011400 231526609 860408663 863985542 984188252 236875372 156862867 376440506 341489562 521701555 104661073 891166345 693552294 298186732 431795230 245318077 613546432 634331899 776463901 455713537 732636278 68416351 519080458 23842507 962490913 565793816 946450111 305982732 592374826 951418906 119311669 224204310 210138097 757033669 924731713 856073864 711951404 312713376 435430016 728063967 927854061 920270921 444061027 478516554 239424092 624186002 670053219 35493141 504590030 182119550 792412775 73361672 913756529 61228564 726944648 127250921 383509941 797473478 123369159 874652966 488920245 526503037 553234663 653508826 363632057 77311149 571598210 592771608 64123097 211855644 730536398 648880345 225589486 135382168 505944116 823555188 691655736 209523777 91604662 557909455 805194717 255646009 746424534 271822749 750872579 254580267 723305670 546372878 229840662 480877030 634613258 672136404 133049240 10926110 478670326 14475330 474914508 697617350 211678173 113663796 898516646 157505172 938879020 638749680 739232184 834780329 758246301 658640700 939047118 352016575 378261284 124426461 261237746 936185051 953852688 996518544 338392689 921866191 738579064 60326318 176306742 709686989 966212941 507503401 615641815 145414323 384326669 796349861 588358215 280685960 91935297 619672151 285610295 214996234 671224258 258993696 871826765 498202147 686131336 658082427 400488150 112136748 988163724 807111493 317378941 273985333 692888193 210705814 121005053 375471571 824649419 279066777 958194985 577474195 885899221 3128072 77628885 223951178 144870707 459798795 515530309 709008572 81042733 871058039 950920376 503827598 633365704 837579798 411566250 644727015 405206130 974446788 577968370 623391889 981425191 32555471 456890441 912463303 540830782 871016901 196661838 317013365 33465217 728712559 219670661 429196344 809930584 339582062 709457272 924345659 294682387 612790389 250573166 397835935 316700615 361376327 162708072 588576106 697887371 148659078 39618084 79850303 803247064 703906205 842647899 332687973 363511678 784965276 217456665 432126259 657069957 911241184 500043464 180177330 532945827 326833571 279751608 635799826 195837057 205653203 389690121 862040998 884918635 311466212 568539223 580133257 834131231 781177328 952165820 39557978 648940349 727621477 127832369 101732618 838986252 826831003 166702889 383002583 380964730 121383663 736543671 91531138 270406378 966573034 915465899 149276715 816491806 192906311 128554668 371156270 771354245 329368245 34335765 411972285 110905483 476682685 92100702 392950174 95697827 510288592 117318433 356333165 235064592 131811949 861900287 940947339 350282648 624215602 451008339 191104854 737464510 452017134 830645570 752755850 101710395 948768767 583838933 495934670 145587754 707904459 411869869 760484460 27029285 104456713 578709742 903334388 46358036 388460541 46855970 394813641 347601205 266790338 107174309 767124404 94685074 784265042 186412135 396947773 901196524 798559562 532438685 852487401 38045668 659096178 267696793 478662337 215386052 538325036 1912830 323945252 85472513 23424970 478911896 51013127 765658210 11041847 517324711 128700354 746806034 24913497 785155660 759157611 518219667 811067395 673616383 30529197 551782999 643334039 430512915 88633370 281586910 494492255 24394181 920432137 720690325 887444474 770540042 471593444 148132081 715632438 306851011 440342645 843115039 673101352 386622223 773572262 301972866 642657449 311777559 391856811 136126203 582944532 384969656 612413252 624276175 267896121 419675214 279108002 440724525 716718205 709655696 554264261 125045767 113051954 597075156 859450626 222985845 312584426 795492529 752767727 4997947 873680838 150677401 957222589 454357024 79959351 923788265 356871479 916959463 382380800 411649104 145889939 311022571 847089943 528263234 807901561 3076419 439237129 730261834 244873871 512076187 362174082 522088551 911152365 363311566 829722284 931516532 233786705 471642537 493138013 566472293 651327860 12899816 17956456 290662501 459917057 491675343 952381146 858103280 924112575 410265752 510812065 358728407 860687552 1366166 987957888 385127721 560538468 164092202 331491139 108329713 463547062 549287983 717863845 789173682 576555882 396191924 630637397 596923047 877894943 975964148 516883159 418491563 448029469 597710536 80124876 916169733 794911786 153803313 733410309 662896224 889571767 11964139 190742058 531489789 59109182 495168908 912236731 927694447 50553052 236174002 869329752 484015461 901567889 699353483 963024139 521061814 943911178 742824198 943088475 351564219 9205268 786979606 820933559 3021101 871053289 405634583 936034185 813787974 448807825 582077222 630229782 427668667 89171324 54478202 822874603 126393837 208157924 629494846 123762129 505207354 463892190 889707098 435842266 873562112 836587154 518757684 456513934 869691822 952318791 618341592 458364352 442117031 73557019 522845449 355535402 347790457 210703483 213345026 169497204 641894264 823497912 596346985 200495040 731617554 99977209 451025720 165077700 807736998 625269370 482930331 259097167 304881096 451504177 240918662 103227932 117668985 199130302 384071177 872235331 423464148 660835092 176352454 544548666 342891428 97136722 362514400 707061718 198121233 677497063 600540022 194158925 417608874 274896677 494334210 878204037 196824237 224414031 759385013 543996450 463044339 601841345 826917980 701953904 71983252 929370656 285214657 69670572 257055861 754368414 988908090 841514828 749113996 802677108 767402701 882566294 372195812 673367448 326463775 46315169 287099021 895301713 60880400 350871461 395493672 918320031 500655618 638453162 723959685 481505521 931242686 384339110 774725465 259241928 813240635 929690323 2001218 167480743 967972056 257817362 580209191 538561743 997857471 148204143 414219700 334075803 927371505 314731850 638723349 362505532 214658947 650061547 703004671 377681024 153615230 105503494 97693541 445074610 960662194 901159355 203749637 821664886 829230074 866766394 175590276 890891573 953824133 463707137 472599158 73800373 919724120 71146382 376880221 844096142 481653046 774510458 738695185 443320375 914343679 66873304 956417118 583303348 131124266 655687795 982945742 595191314 986115695 641641758 374303299 95054397 35304766 897533287 666993467 621210588 510762743 156236078 6229719 607867330 277797391 786209610 321996442 535079066 893560441 50612261 469451064 176122546 728067230 627587337 582863679 778489212 364946760 878019415 11365506 845437449 267000120 255196149 380853634 122838209 60811607 785051143 999796814 261816461 166058773 660174331 196155346 301131453 117223668 384961062 825216878 699100268 224905330 393853343 64641758 595637734 875054963 519890378 891968430 420285106 791008383 298433591 220411628 893454817 865177058 626788927 655463898 131146025 252080085 799004322 799234386 952508639 136254403 68991062 232004073 171944642 547999953 170046842 566259575 98044761 318959469 815612570 260654552 434161054 368079974 515882460 983936226 456183563 22882679 202536566 666248949 665849916 339380404 397879096 622261957 830977483 205698553 99890390 477061987 916002281 593267634 950669104 963209737 117294061 970713406 148533550 433693813 940996975 272642464 959968581 70162315 253591018 540001959 782896599 448409047 34762173 608329742 59740301 916719958 308197584 499898586 842987094 390711550 560963466 993975668 462124567 202227108 85672113 500261096 734990017 420115152 150521761 620012527 961510557 562425319 850138525 98378226 235880624 875658860 579947445 90384128 559194679 581991256 262824449 808146167 325220448 255052613 682094133 483935127 509422225 194817738 255759829 647928139 212166019 949923328 335933361 687861200 361115123 702188963 968916897 956508644 441184592 55510977 326029253 409343465 390373871 170747258 610543942 619369296 134376566 594589046 713404479 446202958 924366840 989088287 824406502 398527399 259391692 294293361 249838521 466335423 571089534 262409764 115851153 594051753 739469558 590733326 629151537 597267378 108851488 813385637 692673884 440341630 691727823 187555356 84705208 654142380 743948485 18700249 577535435 694664977 817892914 511712814 308689205 673307762 200121402 283007494 343783264 833764711 257980508 343579739 88714742 979010552 671016915 522348936 791944795 171963518 741662487 796641809 660508859 94747568 311522323 205706566 990641494 61098904 347379031 766106020 635254686 258244386 486260291 417065252 63532415 964507614 492212436 257817415 509279100 735215060 377682337 962694566 74504480 879803120 643486728 998612572 164238222 955527746 552901039 788426465 880016279 318905734 315610571 24805172 650174080 746753093 309308473 893661610 184194115 881141578 637609826 415887879 436583709 93751236 523180162 314564580 701623149 456373612 539545084 416673409 677049771 273706470 42649249 93510518 515159149 516855792 137257014 366980476 442896035 775250565 847940974 39364273 727908826 262905710 33605509 141759304 628725879 282433827 158331590 909128662 706776535 758040319 484946209 426090353 31693049 106109649 428132629 964896738 178684275 662944041 549825376 987448009 989390126 841346283 712118587 216612641 755687450 154227125 784631868 278751721 745927065 162282079 941011641 926416182 283814079 953495174 269270297 699328437 85845886 479505981 589167515 748856285 204019321 480166741 31990167 362474810 927497046 334490160 395408802 77705899 79703222 775810442 89204438 250200037 421673464 865110705 82812180 845346834 564563657 916639616 361996305 904082505 888952302 602805343 967781164 527929371 91957197 813352148 399478126 586095205 446254701 943531422 535223040 387339216 885328863 127805466 378719203 408085883 709508291 297285587 242161789 485046750 460940622 732727509 411017031 959357774 694241526 429081421 131351516 907280233 98521360 691023353 476643652 998376703 831661877 34037632 319424387 795822880 826394977 638186373 661373964 383064688 641296797 565299182 690436395 835650091 68319774 564157632 946855372 797679686 729570495 479901631 397866564 692021509 549378166 873831478 58086928 789452687 792212406 317558488 958348887 987484363 495923593 465130447 31398316 391009778 460128221 257523132 314649646 310967703 266748521 543223606 28052912 195662123 407118221 328376058 639437811 16311172 554279640 891236807 715780396 244267574 428541292 523985368 720393333 705350163 201096381 81812017 656582620 223630624 953544628 82659235 225914854 449493498 353907995 570081909 629260831 806541805 18336837 828758526 219931623 138819823 582831731 294115823 269910630 681678214 708682109 925359180 237780275 884677511 858464693 197175829 923520026 367149466 18926878 584445148 141429397 736734285 549243447 79295603 780064245 887788493 896219800 947862675 304928057 760121518 586602084 121266674 813051215 355380844 579887222 659416429 985692839 405362156 978094440 632569797 797997206 376789348 577811030 275431 538584915 496608033 729060695 998460878 883964609 922702323 686982981 507046773 967546072 843384953 273120144 651161573 632036692 797085454 159199130 861340507 545457800 613458177 372740371 314078598 998979145 266427892 141353678 529532897 121969546 118380933 793443273 828601265 766691872 476558538 310924581 726902212 386237690 278052256 378864151 493913125 295086279 53067664 25263338 541959420 559281949 892079817 189531362 256133467 552557683 242695859 619874558 759907658 116079057 410217639 435089851 134117572 452907718 720079580 489196539 793538280 344214039 833792759 551122919 982210191 786995890 131794016 956023448 178865573 249825751 542592646 609823071 17204915 585655442 790167466 406387577 880948148 373575121 123325830 328026604 322015650 515529664 598786453 717644390 618111868 784911538 417009456 845181258 536828105 150445669 558088914 982424947 689881269 741418160 824614008 26207222 723909135 237386623 977869132 562806076 833039963 996615350 647592117 480763705 953281501 26354876 535866371 234206339 292475312 27758714 302239534 857698291 917511102 277832148 772682163 586569567 907236538 68966523 410137601 601440088 361151861 443736176 485309480 850204248 481323230 12112309 179795210 95719675 188874219 364345540 788474964 565930535 347503454 203566287 903627897 361513673 433374822 421668619 594248825 735677840 608570339 215158948 820384654 953561963 438687158 265347363 559878451 782361206 716262809 907812467 250101459 800702543 554923050 503732407 886809545 225637518 964553414 981130376 898123227 732857863 476791328 943843250 259598799 512708765 32530145 500328725 632379253 83553397 88437321 713817280 712028793 316870743 192659576 265301506 786709621 725517051 50837540 325372130 99774614 350989549 523282494 88826531 254440314 392107483 855697355 162471902 978376750 420843350 27257235 83420643 335658708 322375099 432068825 684190092 638869463 631363628 281553994 753219945 801244221 599229295 665748597 566440309 763816403 182589686 274514997 339318030 266365145 81011964 129949280 330743343 949881675 47434245 996030771 880932020 669882405 835351296 930374683 722087158 480873508 335351618 880147240 680365056 58669813 937971145 153097806 19170641 494438465 859744962 148886002 548938617 302596742 531994640 180471584 825912874 12451939 356949816 715527926 210331153 778984187 514605869 782666592 881611946 659482735 424119392 510109185 708533349 136846681 188268308 759888411 995017651 432592885 281240613 129904660 600603940 23459601 448884409 731468486 56216833 186862099 649397616 549056452 312627667 766116874 304885617 431255737 553807294 188662418 416079452 161096022 247296697 913628294 381024093 431895259 773410093 717384500 831055469 947123709 861354196 846700427 772932814 440355334 902902294 297531199 393229387 499546602 976634149 82018459 940553566 765953517 870158044 933901355 578140095 155227133 581722207 683030523 957458844 346250072 878906118 416014039 720383256 572435712 112520787 698284837 461383038 246249752 871315074 645626945 790585914 923835601 214908286 364653978 294557069 120408394 560121523 586837434 176246451 792195800 939797062 726157938 567705071 970105045 425939900 796470610 179676382 545951631 480701399 747369862 35396526 454732157 190270873 42504440 790741271 990839169 712367970 218932031 47047453 471778874 700285889 577188141 725644072 165955656 61134808 704265345 45723776 157015724 76779790 970118992 555999930 909358773 691230199 916498731 1720550 631750010 675642342 9655151 492735782 319468566 706121096 812256357 335975050 68808074 903833192 585841957 733733155 869795891 590460028 750839839 625890284 425666034 454152405 618993797 989889206 667848800 317466892 409897494 718091015 638503688 534790398 368184581 185682796 461262891 259967466 809658964 72139652 307528420 550144266 120239066 718647586 83746325 188663007 408202745 692529282 522541425 303355193 915999048 32862831 453558472 796434867 152429796 445038538 720155048 72159033 961503050 833086171 522493663 165197225 837802889 762787667 444016211 872941683 232668174 744813153 279558288 259183910 740768447 480598837 784635631 202126476 994703000 856419211 870571793 336101455 558293416 582344667 958060188 317827042 995008245 205455536 326577517 389623580 738365755 224027109 856257914 527346843 686514350 727948071 941388658 757335029 167884347 901266794 195460025 653619505 459050260 310834557 81962737 545068743 178433447 663872906 858646042 501453359 311197629 719637615 7658518 202855311 68986485 969311080 701442870 420180894 437249073 782967740 700144360 148611728 478076500 264165662 751620392 482679858 791342650 732987832 406143612 949360407 429411408 338118074 194301369 782094053 618467604 269399124 769304620 469272571 123374490 592796778 449223708 607712263 743905322 143928667 627034579 108860536 871593161 648386930 49739869 872270704 430907702 871814341 383990095 15226539 425483251 458536807 756414208 542790167 548745510 288362597 201229878 104802957 660793541 712813267 806276035 299470836 185168430 482257739 23999729 171470917 825471388 842520 187041242 766836372 227400459 674906166 734166197 38373214 145422418 768256438 742211987 64299855 675624611 745029941 988316549 412409056 609143787 632414738 952644380 805146216 313420863 682687945 578394915 440233975 195131817 523466689 383909147 917832411 65462967 113894278 185157559 816069669 513032949 631771660 602655490 265222434 298507175 107462607 486041465 933428712 779483657 151339630 760529354 820984603 770334549 412437932 646721174 846377205 350969836 117303054 672861431 883698577 332014359 936032586 945905362 824957039 744023106 511345297 800133067 700205443 50386974 265994052 198530302 102327024 208355066 371727173 464091115 219600800 80191698 212096165 104245261 917685644 332247127 974068902 195052653 256188425 348152334 60698081 747377665 568089533 311463059 333246516 318944700 868098672 896147856 428483792 209731750 119417784 202317886 401284575 681637448 229522975 185398601 294899838 227151959 568092582 189048142 168138807 443307130 916447133 527253857 219703728 458686973 830499319 488580381 333095974 684226973 837454922 525051207 791735426 834493683 313546384 677903100 790825998 754441605 378646718 432154208 372755199 622909406 773990671 212740060 236780885 701796227 739973447 539797633 686069552 9007212 762469583 153005877 145005413 442041444 28020113 827041318 916438202 34430656 630150060 284171927 458716013 14106324 518637021 842412457 894985717 922843825 825923398 627509244 62932840 238836065 403901271 328706563 105899635 802207276 544521630 137086786 292487996 170806045 383447581 221788708 988666536 660957658 678134054 957652689 83992056 813621660 295823222 305946126 313741809 900518220 290340602 923680842 494589357 778893996 218298802 547563927 312285286 946724984 688870830 946043211 908269041 573396852 642923023 464683975 581093647 363311152 667330893 389170014 495230785 556279755 370037954 131124283 276852432 683572630 486275159 758879590 335131735 994916086 36299628 635728614 201442697 538179462 42305969 407815725 828306335 671208147 686851621 284807185 221642767 136361681 121470676 331030392 582296746 409838939 889310460 175662558 213050566 342410659 304708523 340198981 775114519 460468218 318005364 697549406 687553234 977055928 47269029 323313778 219076756 459936297 331252611 887784933 132369248 924626243 925582454 388709444 614927924 990268487 702380793 978824104 243820894 252412826 406525357 726874598 530733991 293754542 93454686 759189648 380488667 864463667 746779596 453079179 431716316 240759760 893254177 478472986 722891093 759720805 28148197 402669679 807238666 588987777 402997759 419315747 230578709 198761576 892708776 399351771 860023042 129499454 571375645 85110605 838563583 910243033 454501112 61264703 545323362 312790093 388125649 547933477 454145517 698246039 262583118 117398497 851309833 564522357 580837418 113760836 79057066 639833596 714360483 193640134 612111765 419493865 669609543 400545788 973881770 419806480 23881728 13006230 156878123 117407508 472217933 948391194 429082641 456043570 173338481 843255495 486724814 576848398 551215315 994908971 925974213 565954185 882632316 607831497 175806880 463032970 277535126 139602717 506280597 811582770 861011123 193908392 980578528 337951773 976015360 590165890 380060648 659469052 445326068 265174294 143890026 98951580 968372219 415537294 426102473 309849690 853197658 668188463 246790409 559732082 469505769 859465331 569048353 303064935 694529041 352350822 309309297 767716494 191162231 114640923 135165649 185866463 961879860 802560519 116454331 603109110 705803319 845386478 823479452 931711567 944779787 876260317 60594304 227482730 405744772 418727385 766980099 578673920 389535137 807293406 683483010 5241783 87016803 389013691 362295758 95926604 894206205 157187503 115606461 969476275 391146781 237890572 415955443 519982967 728617519 599664517 105108279 699115772 966955949 154824779 561486700 679122667 575327716 258304839 771116378 316052725 550334978 922566109 649377523 608202157 843211328 97704259 198555630 914984288 568090181 806349550 979744151 723638120 872352307 58554073 360118995 396188624 136720168 570856129 146984038 856368383 170344633 153530991 74666820 774290937 365748841 474119543 685134905 305821227 280522614 315294597 336833635 78743776 701160984 70119694 933762622 663943542 963811175 550701211 312598502 573065213 745014306 516430230 763584199 324429286 187422651 320308981 500616042 403347921 586847025 562188094 751575501 516021974 36302254 163296554 334659526 762169160 608028679 305998702 99840711 324016006 782140653 952347134 124246204 704890232 559130478 828405422 690264989 599150738 980769995 223622312 962170593 920871842 271651908 749899170 426462502 392637693 966063376 609186596 249919237 471213135 354016385 404321365 774524426 668097897 176565271 724720068 28232871 530996584 200714081 977608138 52604309 980941061 422302632 92576853 800209951 484017757 7566930 643361714 93847355 395465388 84774041 972644585 106447080 525328762 617149056 106993956 501473344 119657958 280197022 168361304 893150084 560363819 530637855 595879097 645890699 722959219 788753199 240975646 262876895 303734067 237160204 654820889 557022163 133973980 300118143 438738115 596716709 931864617 554235583 679751660 58731722 462104135 811617837 995192332 762665090 136444541 601914343 839368770 868564802 716334442 144111001 812463500 157796160 556589305 945755136 365387885 698814187 648553219 161907964 196350287 277333065 624544704 21386906 994726473 6800344 318768519 94675392 471816867 954475767 549175287 323754189 606767695 555459681 930219866 687865061 717838713 675192385 609376183 234281600 430084775 615759999 662874269 274624289 152816202 472558974 458751422 974957189 930841522 392061381 323293658 983285543 721373445 77551337 307136694 31064650 549344050 401290107 144424025 955121025 315356502 308437054 572077412 691863627 355261183 162949202 6962747 300131201 849626649 263680595 219720957 309968622 731328182 361298031 420721466 145390386 736692301 6057682 875859141 918552541 725066958 852863233 578890789 328534046 245964055 863807171 115950139 360104442 892574942 276088769 324130067 406111033 350759174 247286982 61263891 374503335 754436429 900771923 763581075 271848697 292716257 178895964 228440794 608100167 730443461 992528595 933690896 529234502 321719831 774120866 455741416 170818917 67845583 835633087 934990886 677415865 418449145 790562105 197347971 157112721 726376534 129383398 873946155 848985620 14848185 19689844 922376787 59040000 867600468 776200667 507510825 949335124 154487320 966863976 106593432 323856459 357768605 223196129 534117624 321887225 347631106 208699848 879151657 492318192 694375162 693721136 877702692 137407961 566576229 417763241 649469912 277178950 866417342 127728193 962157999 136729567 905792347 595376482 99330286 81037122 598487558 533775994 486004762 635343971 494784144 585737116 536812803 631435533 463626101 948089701 435719104 199473139 954820834 709435040 287172044 900069917 266925320 639831511 788984912 371774734 528283508 606756439 182845676 629119785 27972120 466361007 233396480 954836353 968203878 238444106 353484568 559319449 813174700 174352517 147473983 757686329 719568891 575927657 264947836 675905943 625041577 34848340 158340497 131478795 621652881 166620754 611008184 879903775 413238989 993454666 327177711 271202837 137072779 869825697 960423452 979189432 662021348 965868867 344529826 589121137 238261531 587641113 689721225 463770559 285039299 995012540 820130054 701477584 424306767 591838022 717344361 771341892 664174077 512295645 580069564 674255029 442571871 417504672 325333086 41801211 998882566 215768082 550602969 130140607 318544223 187655241 814640200 617914454 17772931 270214358 208705896 625586298 705973397 11408588 869258579 905822257 749379761 53591490 777259900 939191629 44803667 924590905 456691070 415513029 307522484 79548018 678587046 83109590 481923200 57257507 930933561 793092716 615147129 46726378 267332360 519803165 439306386 279165274 694648257 546237644 341555310 600580893 232790075 721206939 602712796 932113057 65217018 158881526 760781201 142548326 909352020 32844431 256450477 320774118 902921006 102517342 511457427 491382387 262289403 915859786 294978724 93513880 339322606 490435576 460982752 382242769 836134144 133935327 147535431 789174074 910899507 970584509 30569493 204784903 733245281 640175253 99454928 533018523 174109633 473682484 406681049 58945227 28460853 741553250 609583182 98670508 661698455 367888781 911160952 700946855 363605692 756291821 544707412 533217917 147195007 336506837 6062477 821782929 572652282 551551650 622110395 126472299 571329728 993983937 220195329 263027210 48959363 802767160 988170633 733253681 98896752 607228997 490358028 766164653 459290842 515167072 247249391 97821760 865378402 572074524 146803678 28979386 198747124 853427496 318219951 518733525 190065042 626125340 156329561 636100938 680472956 163787961 941818843 674109435 658345964 49699430 424364032 708764235 523620851 50693608 355183999 478898376 793092984 862957893 852418183 204808142 532142547 94623722 91784219 734441280 196055275 412197127 553270253 173326421 38820219 430467865 833685211 410695754 711880815 934410939 434538433 176095704 517254333 518632614 546800243 999316895 830033708 15514449 186159685 147498830 571157366 725290671 471293582 98982235 729507740 375376949 123331796 923234386 140520245 254408679 310368981 257001490 561421250 172478874 758795104 267226249 676425687 127219821 940009650 615243770 214931568 490171406 575821971 624936080 352971487 310194318 67340645 782916088 209682761 337814166 26214108 531290150 951275587 617468393 816099282 492974663 876484374 224444353 455337208 252915152 614913135 727251109 513551085 220975548 435966176 879100661 145603893 289917078 996066026 412002318 36061631 568241607 861489292 75809100 765951309 231204244 480448428 297356538 13072758 488348867 282689887 40145258 860599317 519053414 34492520 891473546 428186519 133675193 504438693 680092701 4446165 93213131 251553203 834623366 922606076 800539554 510701472 763893570 318495614 725598999 482284193 433073861 628113182 596736210 364078605 434474272 524845035 869321248 637951501 31147424 743896316 583156196 239526619 708854309 62826829 297729958 512862914 876705976 11103605 784436875 809501095 664815745 999223278 596466628 244607615 493365484 292478467 879209002 336277343 734707116 920085864 66778575 196169845 179013278 252502052 254014318 960478624 674323807 217943667 394107731 155036237 470987342 258370640 774594965 180161570 936624605 400663206 800558883 435790471 232996025 498800997 182051974 724188730 377041195 455631561 741652831 267810087 761696491 94205672 852237291 732812618 540909470 799077985 101215427 285585053 595382059 19025006 514535534 139030962 280481656 943033346 41001551 461495863 512214621 415530850 599792515 960793972 293129742 765200292 967307827 748788571 878795848 150885345 486819526 211087397 930012227 298312789 664497796 706164337 929840095 693041777 235476737 611673281 828243615 495186431 571514506 785798815 841255480 504512786 536613288 364073784 43836050 756259566 874833623 131587505 957645921 814221310 600692600 65571309 529359996 106184095 848729444 536325289 170966077 56121876 240819645 35118361 586357826 387123650 864591079 754378594 102813670 209051657 185181876 403256937 300798860 873644568 915705524 598359179 921045041 260336513 795250210 278373239 997499087 965750467 434777039 644034136 804584287 729635047 140070282 302024871 745550395 972133743 415590196 830518651 845532953 259417324 173603631 899703388 319283589 28829814 247509477 646191338 848039812 936370480 432360879 87182745 693035157 367342462 546918147 278648657 613471236 525144367 874268041 35340854 894817531 982620974 184394545 393267894 604312169 386079832 729348438 352733578 189700482 68412876 532229593 384036987 745984017 893081597 702716893 110908485 837994447 250383934 174188379 166156299 993914846 328379661 613586181 466938234 226257395 3420687 209033545 338286267 969071906 595796429 235379062 97280273 446364330 802863096 387098027 387263289 138479996 216789992 920666765 571135103 255900743 735069420 609398071 138383925 227555548 945521620 134568776 610574184 461170844 628339156 323393225 598059847 528750913 340180961 685333244 40471778 844231169 410404970 363199306 175863920 28162873 155486269 585166112 398765616 342992133 408491570 910329956 941560935 485050077 493877099 337763558 268398600 807657065 64925077 920904843 248011261 837281038 132078753 529526253 261837588 773790896 540048264 94143142 796928666 762085901 1640146 652596768 407004735 314113472 460294550 259887246 380679162 527654589 488968797 354137971 766755209 348681522 655121729 739103452 19434984 359174751 794495685 281398977 24110647 381626995 31247236 436718207 895573206 309340820 965006227 981837844 632120635 448153078 181161920 57897829 991178002 438590238 952140772 923212106 182556678 350333260 304807497 365628711 898058070 360055582 57794166 371830844 945576522 786259303 328612175 858953122 694764525 12026198 130695175 171554176 541330630 790147786 550788820 362824264 226113041 145882434 658692156 19151959 963980629 204912569 403477454 159259826 585008462 333591698 235246021 688177336 302034819 52932199 364528005 928973812 168411125 390249686 648969373 370025988 975869192 113721638 831823219 995526831 87528531 553923048 154161854 186602284 38759494 787082019 628185928 331969784 117940737 229949070 100962261 552637793 179834472 131282670 117598331 833100620 637343229 74455082 883769781 664442464 595888944 399947957 184965953 595701457 558102332 873038509 4632859 791860266 709854824 629820967 61328945 601425374 824660343 25075898 821420913 523610600 385930047 893818912 703648468 432347470 570936118 484460110 889053768 355592549 917710795 718259894 228900901 658422011 141230315 985334349 602952392 479862204 86936289 319395834 96296900 994089239 494762944 844512126 946090212 7402569 103719065 911697674 495939868 885381344 549447893 769454200 729955038 809028596 70372285 22612854 652766335 402259859 475546157 489037996 925182353 893220854 795537107 545159021 754222265 507244775 632275617 448121726 8829821 528571605 930972609 248209815 966709830 183438902 261906789 249240947 875030985 108176882 230217210 137716336 373698470 532451419 272051377 796405850 632831421 351957287 462028624 126789290 582073856 288851325 243039912 696750411 170129034 423791003 569987999 493365985 669525351 688857966 392748404 668681107 725813733 903804714 837178645 489116772 250179428 822397574 494659576 1487034 754125219 903821979 347752963 147990322 201503728 513229032 272953772 918453172 335747473 811019724 462970452 957545101 477903434 188025435 601958193 946324580 990755300 52147550 126108416 167005376 768255536 625900275 889812615 116079389 902979306 703784731 519348199 319642201 658106741 938082019 372572689 356812996 401485840 371283691 355754863 16704499 7227482 111296067 614842122 84206995 62339082 890374316 515012562 187754710 11846897 212826326 365950537 498407961 159313161 195563317 162794613 42919188 736700376 411409522 3516252 329791851 863990769 987922497 82055012 221209659 930280105 585318632 310478041 883628067 133496065 833177870 10782263 757124264 431795059 829294379 271008442 797458671 260886981 497662409 813342941 87262547 340592872 704833329 550321300 406524327 609067224 50629722 844936722 99224170 309286524 665987450 847143287 368066052 433944869 140840606 312952478 999162710 208698987 277094183 390173500 683440817 587242239 120079286 603899466 614165364 757644425 743668163 493853324 346367186 257982677 531187746 909789247 781138508 91306213 199628077 290767516 168887030 714513105 530101307 900068669 123820684 774388640 535760428 912600627 236095244 84585302 96576850 122664899 720097844 903595325 153164472 879446736 990864213 153129738 731914562 504385736 174687569 419858784 137387859 791773081 873793792 648498997 681701658 542684933 163290481 98620318 361904435 834712325 669942273 873209036 587772785 272336914 599319737 106637390 493225771 314599504 708958370 830364456 324465817 77056113 921321359 325279666 460417386 956965341 760524959 955250880 976204068 36043678 918857668 427417461 189478790 209192127 178191792 656627488 402862115 851515653 60844773 713216936 496852111 249132274 738688341 542628914 528312214 320645104 351465698 73066444 455120525 174206352 811270904 345035276 780926962 230034005 976597943 780937731 205091130 958740256 534100221 600625423 396519711 204778224 143337764 943346185 43969901 654391656 387974739 491926663 243074082 815010896 903521042 839368403 959367026 158891558 239068308 260589476 482085712 86402816 578702744 447065886 676039353 993004671 398247229 795456980 691707010 122112416 541351501 305437537 853299061 147799546 145214990 971681435 973529464 68007909 926182892 892892679 122774305 651187260 793314087 101741688 26583589 507880507 206490532 315139154 632122723 919789023 958896379 626015399 890026148 375906954 367070736 794825961 71927834 460700352 617243218 754377537 85749299 757854478 145987957 567385479 150628764 184461129 666368532 180198393 752039308 28991177 522039322 546257307 280280071 804518959 448688814 730752229 167776033 745055298 905977546 518588697 340258068 859562547 310594619 360506542 172510445 661910783 529597156 433177676 265217378 968665938 243924695 736538802 441699238 810145073 7377841 952304254 389718364 144640658 588161085 427116670 75142877 923883390 426479532 290071701 63829831 218451045 119041048 890058551 464104381 144209681 847688540 384802857 735906727 342947931 984116314 684627863 855585125 752487073 806735111 639822055 679835321 791385307 86989697 324486227 794048598 215345501 101078617 352600344 147815929 7346162 822066608 993911661 623527826 256487087 93972270 499725689 352208830 142455370 873442154 192130552 129516343 815456667 582243679 255534775 712850088 147954937 360192891 735964825 852357449 715745505 658312990 567681316 288587568 749661325 570704043 481097465 639788297 170900668 647153074 406975920 536006488 519735078 529569116 788026691 45602351 728681794 855081602 538899366 467547436 306175211 369387377 923479903 77956429 271582753 701441393 692090397 31455433 191895429 463551866 442076375 135815868 577363301 454720980 966424346 100636850 9166014 218859329 183091823 22298390 75533423 329845045 825024074 351753024 381608511 292275199 439924765 614343027 263215831 111287587 44597764 275966279 292757149 174102106 895878801 875902456 618303302 649099633 165685932 903474643 931489943 744235560 164498580 121893205 710376955 205282576 850449968 265666864 952247937 405040094 62282419 93676835 895525191 287969797 501641092 48053106 875566098 173952996 950056468 847037554 244764489 141204932 7263119 451198976 672463673 600841886 302632085 7089458 899932815 963438538 366085192 904182467 136292974 850535604 733566973 191341999 886768929 713539587 915400423 35036202 873465113 146752679 946965089 761586676 898885787 223557044 216020128 670439154 453968927 200292352 152873493 360423999 125888220 73703666 53471346 443668076 23931874 520348561 259928004 634484820 70172872 474844752 85330176 956821554 559547236 336108777 66014761 843266112 833985518 638194689 628327286 274254566 305150649 174307426 742522185 475008337 24778133 106298611 906441933 911191957 173859055 901303966 801900769 985177055 768126667 177387049 637512008 578251360 745106930 398787934 445269832 793078853 94885141 731514336 92915156 917101843 913617456 673853465 40174329 295911633 454760471 392578787 16346737 458721841 989077106 942804768 69584903 68825212 887139826 28844120 341772358 259079505 392931299 148055348 431553030 811508197 289428089 124947190 319523878 423957378 723226988 491034385 840642743 60913777 266782565 458359680 243612117 211410791 27332348 611028301 220674923 845516906 777819877 106674941 910772009 446558782 278894954 292956517 510352135 880623762 185927046 729932360 472965817 402826888 275258385 130616046 305731862 231060972 613312117 758685364 905507038 321776094 237867696 73506765 658462244 535569885 917710542 400277257 242086122 80761377 612898479 276819832 833389933 784523824 143068181 187859785 403687436 133565328 995385102 15642517 291660178 607106335 382646495 839126983 858715082 660147746 188833279 291921095 948954666 644635658 478087991 131787627 932487492 261616525 937358519 990087007 545272412 43427153 469537246 158553065 790049668 965095470 197460064 540485841 141862380 415930890 370453262 682990739 985484464 730163747 129392687 121314954 883834852 654234105 737976976 533647827 318588845 283475158 533854216 428838514 264133635 38238640 175356865 965887318 349318555 759887462 735938634 619371349 760714949 265074451 611534767 612010419 565746371 242257760 611695376 72339528 740435758 50919742 675605362 931470193 948498210 201004519 732648576 786227105 342835716 895065297 69013130 297929757 735206344 219418770 816637930 895640097 139337696 434316654 530961207 222503810 505215933 906499838 233627669 82783736 495603848 197862775 576736624 591087530 158091688 805728297 257886615 290701698 509277789 985285323 3211494 797998329 330586390 838448919 446949690 603721219 233488591 319377261 899070467 553530468 801934279 122743082 966563817 336245060 724403024 750349476 827129445 846426281 446939815 60100999 136270896 412235990 811174184 797685404 932567899 433049931 620253625 352456401 84273309 945763148 510969464 788193054 67477138 710599693 168406843 235570603 706769194 4076325 203716391 389937996 745539758 78991795 890522233 728925831 980525466 232184445 621265270 444833088 57157730 911275502 23040557 841318721 27679256 804275475 992592579 297211879 155032162 728081559 148656017 859650873 893339885 803078698 339196066 554307302 12712825 142786384 834065687 105614872 593738933 373161605 280819564 111785222 84960835 897977311 432076603 852263006 722954043 127334943 999497881 74218445 680606361 307867376 722917422 438467403 859732238 173538499 135342153 819593043 534228128 768871289 897768833 317004555 361071430 259628289 672093021 677567545 894419863 855003214 972998357 691104906 237418639 554604312 475300846 603424330 919677290 734987564 376817433 304756364 565256843 22258085 217468345 726619253 814291577 346054623 948108126 793984292 198882520 710400112 304499285 929314125 19528647 657887163 591769666 354192863 502302996 443153589 672220923 61674804 506100873 965723490 550205305 26552998 589356671 912946696 143996887 878403541 476181780 132551955 717311374 348075082 347051632 576828918 976627682 901632625 464188613 985108439 997656183 565252058 450645800 214354525 149593026 942390350 109213852 184795006 861951848 974638531 172983364 400742923 105376754 239091528 529587765 662160278 948082863 552394504 479264106 609937235 371420247 18024213 43458764 172852790 776371022 427125003 182109397 502910313 653017669 773027271 239596875 260939639 597563510 323547146 513606711 889631679 583308740 470851785 400047140 63132087 892901547 844958689 583126679 125540840 292435668 219926836 149481985 291675677 258837208 392844704 427108576 81068500 553107744 856903189 84976012 585130058 905946474 826906284 275556006 726695949 265513652 474862612 246770082 921394781 411691214 292067290 118524281 899592222 131043433 94091747 797085808 760042333 6439924 677310550 53849785 746402447 169927744 341676520 310314307 94541234 482090917 998271458 474970796 113671957 733687552 222131198 653317283 650520224 325894164 354675181 995570292 374724073 242793387 826829145 329814920 202557104 373508273 101685693 374307379 279176030 274676488 465625657 14174388 249682443 406598234 925144505 398173818 238871805 238803082 81020908 400063064 890402886 498329008 801143069 687125513 923950295 438450312 685991488 406061213 898957531 616006875 414792091 670317636 464454993 2396316 942352700 560887912 298608803 676650686 770950625 750218795 986384336 15216086 256526422 708550179 916188802 705283186 861381008 146845767 489734981 970995008 684161173 347569441 517323113 687311774 659755031 910150219 368993730 819411520 640069460 90062895 805455783 220499598 662798554 685162520 362361956 539147096 794117908 583202388 885787905 971116243 520127886 37758729 830973074 640319104 890033070 659001118 309222139 304153914 48561687 214043482 514582799 25974798 244341739 737147038 458502122 433026953 295397013 59396480 998430274 666879715 975527714 212328535 534588832 567531204 629658653 108376566 663835709 794827045 746115156 554545694 420312391 756375262 401531656 32600614 629585678 329064602 659375331 427251592 517421099 26606828 704688665 799882451 913715985 825495043 455777576 366926680 764297497 175476712 932194773 206023947 864749785 883403285 8775911 218442329 253664838 672084877 384946211 877676432 699002584 867672841 657349033 298524171 967531884 900120171 406066941 380701375 925608044 701929771 215301118 922221844 595637215 899411280 88007167 531842638 472115616 76384830 309488853 904267921 493361363 104962331 800733203 845916197 270417101 476127793 628998153 454828742 12494363 751083673 54919338 512097477 72256985 36364718 401418132 881213861 269530792 856133174 398878847 90805684 231589799 823632829 687839248 912283383 421088032 554636492 982524821 817127319 783167349 141636388 447961371 821864691 981559004 856471058 797381821 680129841 943455308 393044536 998352521 886648639 679703157 810056346 897728633 57044106 414025384 253263392 910324031 877530825 868845840 817686910 439530490 581859602 62340784 851069543 333523881 492380480 613103117 577260672 94503798 461225748 47209922 246096054 254970458 2333595 640162639 131085921 247598991 63437157 73651653 364863718 343036946 486117781 489890132 227165009 240140510 690074579 683941000 202991445 927204247 433134283 120582074 87761913 522226538 194768697 236783981 538784486 710365065 238957731 531788120 292307490 61519578 374237684 598913850 555411819 260055062 393354549 262870939 687598017 216623599 837208116 64480030 256922544 776706097 768350833 507660280 444017002 507894043 753505929 491720728 281471651 560390822 347807640 53525031 111396638 324386485 269973415 822825863 746440999 302011801 97688708 575674301 801874497 45657529 174895203 6093287 718449231 789862979 310299344 887075245 236643831 394970054 744142733 26530352 874439990 585154872 939089311 979424817 237256548 233573264 8163436 999760339 373168531 392073627 25256588 994472095 913012085 896782497 798424389 275675182 110148774 522018348 989282847 841029229 151153917 330722334 472704659 654828776 372800492 30242898 107626590 205764837 577800416 663429655 118779825 723938891 252046214 308444888 932203893 798514413 281436590 446722042 115232405 193511844 720651020 389267410 837749791 187968927 951072108 812817750 640466700 473197227 91941006 691244865 747301061 535358904 400655056 268713430 842055062 804595383 83972274 395658743 160965586 882400172 333512664 798230782 823030240 223911630 790483098 950738147 173753532 258430594 445635197 755448350 296964784 42863278 470326166 947591918 326022133 321987631 515812121 760711268 452030955 769955846 923808106 553729176 986325087 411556152 722382749 840485665 749630843 556928074 939235137 455201668 984934314 197766531 566633722 209290869 96329255 994272355 644325807 135142249 441407703 726332898 159179563 477275368 129743260 846826366 10172911 698693419 741198947 231775987 602348334 595779657 595167941 724299003 950225176 589315851 91858018 77820329 444583604 508042567 759800148 634022337 578116785 832725025 864714986 162434047 872528614 988602432 664316959 6384588 706638058 329308602 805769996 500871356 382814889 332869721 864803611 987149799 443898009 493539444 236510568 985058055 454322503 234947308 283914863 476645277 658282679 898207360 241264446 737162131 703679337 569105129 491480890 160632415 605483770 74126472 474056665 564525085 23881507 727498670 762218833 879988965 25523308 210357806 533519235 428816828 632183361 772709097 145194891 17131506 388099518 40365440 338881132 565033331 197114561 403088376 342680021 721006617 416675363 492770157 725066256 740143772 716434942 597067234 615574731 576156025 270496797 734587758 922157122 146645926 425940780 433372936 2269523 550468345 579167491 160629793 782825847 272711515 80655663 2958974 498991404 125445212 768337285 397257741 35223811 594616715 921173291 683876206 451855685 623812348 137835973 238390991 950689944 194291802 803957773 314122592 375173058 7487374 241059165 531369312 58940442 13196719 571265540 662718268 100973650 118360372 140258210 586299602 482215632 177057531 789740346 888240964 801489580 719539491 980738467 616447801 939899689 836590448 361634963 109324998 359639559 554156309 964849677 526029386 799329482 518988767 106881778 893162265 879490213 906103906 741175770 546572391 331677482 958554794 927757646 677905299 916419541 269360030 840676366 442141196 259836505 926283933 282341305 324728985 124003406 296978530 25568614 626390734 789271540 244332153 644973210 186658291 681709007 708621478 22626957 378236653 698852416 477765834 954455664 492916322 422896609 259308890 752748738 409281379 878824714 406237708 619922156 700744168 271935466 288153674 7686660 455622850 469311313 863311150 231916981 755425064 694632619 396673972 504952558 924667805 659046076 618415237 797965847 135068212 269738949 998139190 422978502 515858178 578849201 56956169 162882534 428875591 477522558 641222035 798488464 920676102 420578528 185304245 295843416 519570994 226055791 460519247 436043031 350581725 5501142 588239993 362188365 139381487 497556533 33539783 855868050 220882961 909555826 795086309 812147732 282996598 271577307 802336153 962915208 39354517 5233107 849610701 850166117 305759222 849267360 534576962 98433855 447610670 923447961 685073633 659721512 814839738 212726029 805357528 966442296 293659183 532095846 142604333 568228618 962923920 988197990 17139903 523469511 505964501 103850177 260169121 510693663 448476635 174152323 936387388 24701265 188351095 901584008 14482408 240278971 402126872 921402311 729832549 944656101 175180953 10092713 101670864 603721811 626635040 157735670 790973417 510957944 767291782 537078609 128073239 531487056 380748459 533682851 749626913 820354707 484085809 149916858 372982626 852197447 896044367 526456305 574118396 271457844 611258698 483630879 9308205 797354605 79230113 424296225 263440975 653892378 739583572 937358608 821338031 153997627 415896890 988581506 143665049 796699595 716130892 31749013 690917313 106958902 493003758 30849153 593556425 147006963 871306671 363084015 78948376 244528065 738873248 342942965 56947218 244232154 949543841 102467470 26956628 149477826 270375531 622298096 377874094 746124845 759480550 921322859 584996960 377816926 681269979 811226894 125618155 251774597 748778246 890212577 386555 830272310 288945344 176480067 224497166 534999196 504506343 953320972 459352254 628884702 820311593 742139446 536880837 683690074 765460838 45094681 765293572 758839507 802629052 590715878 796756466 12429940 976581186 794043324 604785333 308843296 317281158 211851989 765945619 985745990 856387256 651943683 635426160 603289813 249040891 811753253 859150974 65016622 553480363 55386409 415322400 825002273 862574021 952373771 155775397 243092794 69459896 676883856 595645544 672343358 456436930 810638543 195322377 409502069 256939216 761407457 620888996 156135757 527256215 415828334 474524836 120263203 22922682 34737110 974165606 940940992 291104988 662668433 989219233 772762228 440168031 91162640 853561748 42598512 198736335 351657593 972642522 927935571 669505867 719148159 538912610 904720134 585362874 197431559 374135309 599954423 563723062 847119721 175061335 927926971 200057606 624001548 287229245 2229712 215412719 750431180 662369376 869478318 320436953 292559382 391159280 154932639 524382650 46964026 550970031 490547743 394043382 895687209 472400275 980780071 146364127 510468910 330656103 123152981 71954880 64948567 920585948 146829123 231678356 840287608 656089304 542497097 289287638 273404080 597900979 877701233 278989768 334525452 649991948 603101832 778124939 265607612 698404994 880829678 288258259 746880883 724042859 346011722 903584858 697921673 666865159 699137433 317466286 524884965 566622020 29734036 279227348 21069355 558662625 672518319 88521517 899719324 435941013 480789705 107200421 500262828 392183023 338676046 296122711 595500900 583971343 165389767 641089163 543229915 355295827 739074593 298438051 672725902 445721827 59102405 123416154 128971930 408472074 631244940 662612866 226028614 399741892 38624192 254442652 587796875 140969968 797560236 134217027 327101535 266918714 905692242 232956885 34333243 266521873 722303697 729814868 775222081 817362845 809048558 62236862 258625526 720746184 825353841 897079054 208818802 681905199 781810718 725834849 991251169 119871460 113728169 731688683 332227100 134203215 428873911 616458835 698571719 857194792 236714397 175606741 400842991 116220037 570264813 688081222 4196915 205300932 11215172 120088211 942821303 878193352 329159671 575420106 402925964 43053323 107115118 770394038 33796571 855285513 793723938 519103274 644557616 16976522 560629451 798784876 777405228 704524495 303043827 112151763 292722594 54164554 488657153 439570351 460235587 583947837 961374704 871241588 254029602 687738001 80717929 760376870 822357710 823739582 462541104 608249686 105931373 73245379 460455974 654471722 749074879 799020390 720407431 658229103 349766714 867113808 6725787 286237763 706178647 954028660 798523261 700289793 42436952 683919755 170681956 103166596 585315409 496123544 21116657 413064453 970178493 608534395 181427285 390528750 717395848 416902440 616551429 20782090 772662952 111294837 911716883 672518905 319237346 925228043 530332323 707325091 734212244 964039183 399740458 845317550 66870879 477171089 316572946 565131727 640102710 605392656 706270962 551841615 627367368 675218754 877367344 69341563 760898796 841793942 689633670 300116675 260531837 356576144 383570052 813804380 679331359 379776819 984825972 863261632 16739494 556027710 364599798 826794977 84882856 506235568 557715562 213426567 482712810 461429584 953426514 352237680 534426151 834222345 985370746 487091871 573173259 203095031 999731034 42794132 599532730 189341057 627822323 369486063 51163704 199630905 958711831 587416759 199518381 854151858 751386704 395202304 744010871 77066371 36124772 230527050 835772661 226554602 926693467 578391876 320872215 128148429 34564446 958582989 895659575 292358495 293493812 487938501 986244804 211614523 666492841 637796581 161030911 661012330 20032703 709673614 235827175 669332115 704399828 664849808 843535702 177443189 208237536 65061784 974868875 629370793 965680987 713506923 507025849 751168553 777372961 712665469 11079891 954707991 399060305 130615100 818859388 197877920 24807142 466559574 460458380 993619183 216537147 632870018 987962169 885612539 252404180 270305587 457771660 322989943 61958368 968312435 245166171 988569032 870854927 575399575 983326938 45790397 66703846 338563192 726699417 59868845 697444461 901500595 366200505 215028482 369849798 433339804 590284854 185974085 290443539 404650317 152123270 951532158 456121218 559284659 955464027 874764785 671383614 294104994 555678629 916410769 949461520 316100412 665346250 200452605 754305523 989892076 850400202 124793826 286215244 237404226 307895185 622309071 298544166 365803473 393683662 186253945 813106084 514542359 433196726 892791602 680564709 921868673 795861841 407835270 941959861 315531818 992067682 923835561 872308083 11781542 208905923 816684681 927352715 766665597 700262146 944291489 639470893 656417717 237424986 798574789 645992136 282895877 833871743 205620697 170427875 753429391 353172058 129811403 322345671 116744617 213745224 351979665 904257961 229345971 599323259 544854238 179970689 728945016 75021687 544544522 583289485 629743259 292040653 45136735 268968492 962095751 179056831 281235626 710869078 799289756 4992310 336903868 318353984 702353028 42988275 422371130 948726075 957105169 475061239 828096177 272992635 194748479 852442505 947235927 255699925 270504096 258412181 481182288 299981409 724864489 269388861 122849160 520959989 857981811 26646639 96662172 610937986 528347086 433798049 755698831 918659257 80708527 982429822 536484113 303874741 3817189 833528017 348325812 721501476 354868521 835818651 862124367 295621466 875984836 122673063 80315093 586429910 557544936 510272152 99235880 201054552 712209342 385644933 678650839 241454480 163143180 556976206 723467239 341036385 983389352 188286614 912486237 29454138 87169883 729777959 687762590 875314032 486640825 694884712 538352297 723178887 895669004 275473448 540769700 820596542 674561075 573603336 37783641 44704910 106625484 469117977 227747056 580300724 246954644 760277039 916513671 354250979 9402293 121348794 770992938 720807223 977774315 384247960 656547646 195883156 636444351 793329701 726403936 917738349 807325627 922243091 43744782 292525368 21926126 2360291 946542516 587908867 331840427 81796326 320976242 217956338 167628940 654403111 235389228 448322834 196714314 419310876 241230084 806486456 593062421 655515164 961151955 941951435 755414399 75929994 83852742 785178568 534457642 289072525 975555040 205703478 98081368 393408631 343088841 115086444 827376383 421179624 938014163 721275401 409543427 848923092 464698261 120816220 24124529 564928066 468424400 675334383 763760130 15413500 259697706 574858525 920010637 738004435 587910676 655536693 386884166 105222770 558768181 578360242 916560966 807079743 173502501 687385583 872901381 315308042 912449867 449252061 139420554 533998164 133586548 572965886 432352156 268726725 921063246 157520811 729400550 838054908 316566315 106422412 416170640 725298335 346724526 884873810 67436104 654111018 950306037 759418277 430679332 365064181 753791774 68841421 516329812 266612709 829575039 255400047 430466435 63519166 102850609 457574420 435747255 854992657 245816830 946029851 797143153 476975645 518850501 405293619 705670256 299229623 880261189 132342733 557879875 246515917 516480055 249367582 82217250 972382234 968891584 705904574 846086013 231664320 506031121 467679516 608806561 678107159 405671805 532309827 113284830 852660220 40959183 126042350 316148548 914419908 849818694 672685138 546826095 115385777 874519418 1510866 218224980 12682301 36819025 546447998 438672864 845211076 865362613 371707897 946405652 595645609 990595078 740679729 282641704 102014283 812477016 530608615 343939507 954545779 97212465 867245670 196131645 647357584 918716661 694952034 675659918 251057087 293920942 313516579 308243642 894110119 837138560 402502807 947151862 4113207 30911189 382149878 542307801 125388317 610779914 97462207 732255471 598512911 504725072 852811232 351413332 254709313 944121170 563166570 528035434 556311577 2283260 161209598 419672476 27182743 595194522 73145254 840256526 296966442 794559401 541979969 813463465 6066298 590619735 230920884 974296115 341492716 778591277 731249924 896395998 46885799 107614025 102735347 180646790 260406250 615908358 342013660 351598113 163108354 978148468 856924989 744342767 811348106 253009987 651864869 341388182 470967856 360441930 786817067 624671910 755555787 871420208 409132632 999323315 943869655 845616157 296324266 504254452 823820544 346982516 227927567 432338512 64243380 457592769 176437939 680452520 862004098 127134378 183202529 425429536 191426349 991952119 368833112 552233619 709165611 615646066 682987765 965061068 207871289 726832885 772799797 805410972 586992999 975363036 92315573 144576079 9124426 31365607 520364270 832374662 296540118 750674558 842597455 576987837 343646764 464421471 266178133 70039682 481455598 318498274 903373313 549181952 805541117 518621954 585170293 810596840 78650473 604402000 135493293 575330290 99398980 59629909 462130391 208166187 271047684 929422836 965008302 295383986 476583606 230519633 27478106 151520104 243993472 886924890 920386826 715929318 393398556 578669043 49160227 264457398 629318760 211037776 933945139 442453585 644612063 150733333 221080008 447496988 477410161 35162874 788330716 318450426 686772644 150625800 426105554 304995268 151490186 910339602 245434024 918165313 195618514 390758465 562495937 209887567 349947141 96014436 615310732 953099575 753688962 114782445 163260370 246663138 497561815 168412667 583014297 959827123 244045558 615807409 554320726 771753442 714069329 411746725 70065383 424287864 641233422 627208740 860377698 143220378 816953428 536016670 580909165 243662032 132145815 68279314 7222211 667445902 682367362 304644324 94081147 902634380 275722835 268760816 384007311 383233051 212221755 353869767 285023490 981085711 671430044 258509443 943175640 595970201 371929608 832846202 143612731 531333179 855832804 769809664 690598815 930885438 2775724 328947864 734463093 7213829 913105419 791927132 418559597 910454691 685287105 906744951 312031673 457662867 879717842 184983746 762141769 138259340 843058389 337955867 610512916 17509586 413945969 191794963 270817863 31665117 768205380 292274403 719930927 104333805 701071695 404123417 952379203 836402588 736850583 608968149 275220569 247628678 221067395 491153343 845972850 52580767 513293392 129156173 622031867 824034388 764687227 249798231 687591782 777868387 329628931 863756159 510381993 165678713 236313698 702465557 640639986 764784931 5081617 479293000 585043140 492717578 22625363 619797195 481462903 23396571 978587107 104888029 134209875 81276561 961407557 572446910 87056535 693921986 973895648 38553233 88739489 150962275 937683005 956057600 273806896 537776903 898304128 556699693 448572788 797323290 423140333 504900787 382635975 255930001 544760492 309295845 915082997 544340970 211551842 30983175 772252294 30284584 283265421 993771089 435833295 225958123 783170071 683756080 644838020 720848053 273787936 392679258 564838383 617998895 861180936 30310571 934639944 612592849 10231917 838656742 207268284 422097633 373510001 704104296 498334548 132415991 113984737 317395169 755214875 863839408 186065213 35726289 773600424 566311081 265776344 314072119 472395996 233274654 224904368 613592090 536821242 202671426 432750517 782765488 657312744 747642088 245241455 611202021 745911424 457448591 45736664 299132509 86982089 651764988 455718168 950809228 114414776 874416741 459998491 212540112 369697580 19161629 696282116 53733307 395868810 83437396 273266496 334368662 634615456 240348139 907444115 589850669 109377273 54897628 285572510 633701744 925517793 463226879 61306996 623292108 929448477 932971986 24506530 133163000 540284220 335976961 782533313 106940234 623908566 926841043 781460304 257101801 644406174 77392035 333340114 160488619 228589547 979213615 215108400 52772084 865112825 658558842 602125367 943728062 731107305 296613676 476565738 170107471 312683299 900533325 621850518 893698118 65839175 237629730 828970177 512125775 766218789 375827862 832031665 576721259 789023808 634804818 97226946 511504984 556606287 879566149 535618479 794865618 308676651 29068517 126158597 973362769 609009028 68308686 229237209 158042263 417024764 135481012 708374536 151096178 100868082 487490364 666345579 101872817 67718316 942397806 848317924 989188525 709520989 222298648 744511621 148593449 263465775 347478090 974707343 294228799 926104874 772914049 859877367 972554446 632151768 739464892 137470274 319701027 104079943 948389511 53234701 209555481 17973888 997244792 680522108 203538512 332324281 998048499 642089035 275859842 825551113 65063113 973066840 263222504 401834641 580412095 774792697 530786312 667372055 547841485 224600559 142520475 691911708 712604693 416180915 392513498 417651947 57388499 218059933 700149875 109364281 44784841 230395484 438426958 121552598 404531827 112855649 428502573 19453508 60649187 483376444 402261738 268129577 407881564 441839041 266109723 957257614 830328811 545468914 465105482 501901093 325396241 673912745 815065353 253101928 503261945 139333243 632599691 495674748 834540547 148751983 820956965 88981517 878585582 798862586 11540803 263399315 693170204 449643685 309239792 700159266 184317245 325995681 883824422 621618777 148743223 590808456 913702446 450586845 726313334 585693686 413030855 747611898 717010433 231486348 430684571 890435987 176796293 169983688 194418423 638729117 91473582 762308167 42733506 38515817 963016140 69169179 362009415 361768881 647612373 77372134 64203791 131818518 725733903 739916765 690431424 549100940 521418636 731319970 987697062 92199821 712261342 404168555 470263990 366638339 77074311 881902359 620136469 212342566 956640967 958968051 939003432 760830540 300903213 162422905 686402509 964060884 316629195 779669393 793365812 113354652 747446835 974271870 614810439 591601297 304830750 729335364 542167061 668833579 287058353 100393144 974521896 917076799 749034057 394070664 296955749 693869653 526166523 839579203 321126199 44498608 393197954 396516453 108697948 539252425 903474544 934001465 446959009 925123475 452686854 294990404 705425177 122322633 2502190 670393618 560021984 22313546 572064732 86992546 192345528 887513102 975081088 119053114 117207144 93809000 667583882 192102193 228812417 377032657 535229897 250987571 794821065 243137457 342813293 129330263 550024497 72756126 394134549 402812081 792567407 972713434 540720967 164206188 608855765 659437377 399357084 819709244 401403148 975320203 37264109 156227136 512333243 639926 466832445 733013573 681070484 258453513 367151664 502705266 246384675 581902021 147140492 883637664 749726123 993302422 840624272 876274075 2051591 719220339 816782382 830832094 455279139 748124274 503902134 226105939 151988186 132991352 486927044 126987351 271865098 508918530 656313109 534608368 326766696 975089542 528780880 407353092 809604051 962902576 823943305 810300068 785251366 706950998 885383363 257627696 737078698 277836283 38238033 746030143 380409076 11575604 259272799 692987990 30925743 423703612 602967850 767233903 637693916 995243045 61702964 487941077 814923765 156694182 530290197 139566002 243801918 323021289 553394255 620159487 295349577 651979832 729324381 624325917 125168211 330006119 741136976 869170912 180397073 982082398 250301530 559338128 243580258 511850827 325213335 991711872 919431769 408854950 259410901 892285976 603387793 958498860 285414933 708834983 643266194 258468531 541513045 473618738 143009306 381296926 313603933 434885806 972425911 405167909 893963897 87951841 403509699 602278783 128329970 130955784 51379079 964059722 98914211 735618522 759169714 800162258 212330540 797190424 131263100 132140079 536214045 390602994 206599540 777013567 992880592 198824037 120422963 856900204 36336737 444016991 440162126 176814892 471956875 261860666 383708697 896205642 241178717 893081078 797360382 350279557 156507086 362300251 666300376 183574592 839824023 481876041 845665952 633956619 745764921 798456519 302852131 639829939 193832261 207446035 567580573 956184994 912461178 950823124 572756972 19767245 410161244 459420439 999480827 157937455 751641643 555561558 46809773 248424263 557361257 903600278 176530777 163575891 310369673 936216648 542135791 78325275 616835307 637291139 428605979 739835023 694338954 513883799 630187182 176902584 295937907 453506076 848921624 84110204 717528965 421498745 681884400 22492405 689540907 344894649 298853641 246846536 13995762 91506872 823239316 299873104 971706525 209873548 432428194 833181534 231172568 871460905 396896469 928744349 252092217 211784032 668044212 351765350 29870526 797671200 57252204 851543187 444702867 297039294 299744976 553248422 617121223 568502037 827051161 271988985 917806787 482419760 384468042 218664155 906198522 811678983 410367334 728584389 338779262 61694910 553407216 187860253 78698161 610156246 574239316 45870723 10862255 186103326 448773228 296193250 273198784 949734062 606448024 637910091 70638106 642658164 491177187 506760995 588522043 115656435 871938669 108694035 525715426 265435675 96428371 183729769 215095548 916316211 450666562 888288955 423214033 794332465 424337312 944168491 436410717 719069170 542058427 739858889 72181815 410347396 339009232 711636998 217348655 930003396 437393644 194011802 305398328 665974727 304275779 854594104 284238348 186048700 973674269 59537338 737056813 277005964 419152214 78418860 370427280 494859767 658683622 5805434 475725236 341248302 206026432 452073721 96844997 971052998 656614530 474642564 444940237 108246887 665694004 3486659 548657405 947490762 901386706 831771975 474950947 390604349 602879876 787725851 768864548 455684978 824170620 285668880 870798216 842993285 582357853 816873957 331839178 248230286 892557882 89575838 78157901 397495770 14546638 332275374 654146688 384716682 105641459 750749215 897036156 273645237 881001590 977177463 214115818 661338613 377002318 821739607 489037430 931927326 884802620 619944643 172312073 646970470 689810735 260275589 340406500 425355894 240301877 165504945 274901101 183759246 617601541 964570928 369164063 622438568 854142629 217557358 938738285 56141992 68859061 937989369 592632389 31776593 365967876 993634633 328057729 678848404 955915864 765515907 883866275 542880173 340291171 281949494 326561655 954197559 313835396 229552781 497132999 892503866 126179711 653203297 93195483 486612825 651101591 817648103 681046914 459325085 329951369 174708750 374116291 143722745 69129389 915259630 910210566 800571556 7596850 892625277 235265804 846781235 409482038 47312904 271184936 493918421 367237970 5361760 96334486 562080306 773289263 925292551 491474814 381975930 574942250 844854220 961842733 231749313 781379173 534539385 574664259 693657615 188680533 69480258 872837667 96145316 351784551 161206642 876963649 152408205 475735147 319799612 726163338 381309431 930717634 648890242 359802662 220499014 258045650 78978973 159952742 975453771 103075700 643909568 274450741 283457288 125147727 769624251 943896685 130607031 361160309 955414675 226554551 866638929 311095140 779136597 521897814 977272370 90396049 34322831 372758046 804479488 498050196 643876622 157989884 572551396 532667074 404575821 210412271 694267464 385786579 387992245 563493247 710794165 563201893 580607123 11895482 88836575 207818389 446644740 872898526 842948058 347123056 759841369 200240854 958523120 120701564 892074663 613311172 28866963 587854637 894968496 983133432 483778154 90088227 591074510 239931588 490796228 831011860 746159321 472620436 215961565 104355330 355953989 267834303 542571334 705234588 426490007 978599090 623388274 572069692 287458598 106879682 248647331 496897596 424198441 6688377 564081183 236903667 586449392 20756689 253006594 534913603 582217701 543833277 951804250 670897768 814037233 132701509 521645026 113467026 638686065 49608565 579176701 563360264 682232546 863610412 250364308 906915178 628493242 99597116 135331251 271767563 799822789 55359674 592686307 756104733 507946310 804843764 388668192 966887751 1373214 891309215 504734627 109295202 237431916 807766876 689981704 382510893 581267498 517891936 581778535 546769202 517570307 176315079 372574032 201284907 775102207 659246719 758826709 347694669 147202979 494609635 647576848 49290268 534637588 67931255 625044331 796027387 278430468 225686957 702471591 450399493 493454335 428353537 221420458 564410274 584169613 7482314 456369377 551097087 690456060 295204477 996846018 876323566 488236381 729804344 706523956 218327480 263947143 882209254 244718515 720673578 26711380 471149309 803188097 200933217 533013244 714366364 590936025 514131575 96509669 39214660 126819826 661365802 29945738 49696153 920119 382591595 880077651 672818434 752407638 689126140 373277410 51338696 376812048 368151280 251438081 862063396 156369386 228465033 154907202 79879251 754962987 242522186 570274724 175025735 607647405 954570570 818239461 45817458 539636621 885020613 3910492 518221772 103769457 841710407 846693717 592169383 307452484 977792063 571326091 273269474 356790303 50459063 63589758 213910459 710395971 906761813 380627394 355203912 507767254 498916448 163568448 418183309 89389831 448665705 140042549 501723133 464180862 589445341 588149490 341215470 525759000 206097109 950218982 736306005 832517115 601306461 9708437 989936675 756002786 68355826 774726960 573626018 909456493 457856379 88075337 468640351 803859029 636806217 724541956 967257766 399546820 816589308 627411437 979432684 166643353 346947699 23837797 15757930 336393344 707254940 368269611 750899544 42187508 52223861 14355002 112065744 945887201 205800749 369597 895414166 153398078 518636406 415159811 694426130 541978528 800231380 700126463 205634037 361300940 675141852 558584474 122073528 996858766 925911547 9487499 341019667 489629136 444061403 917734627 932330431 950774199 550093269 271700913 628023422 977422716 561433173 502438110 623597511 986928597 988632596 345972213 263123821 906955588 665997389 635262341 928675061 531803484 995899025 900598399 762268009 284379960 178885547 374077178 515403755 321823238 892935372 428880503 847974051 492130704 475207886 941390354 951247434 71858087 266736937 65263461 598263574 951483557 352420849 942247323 440912902 490222102 278698589 287330378 545981885 19356898 405344745 210077644 159820850 569149124 846538557 38268136 633293893 162007621 202856789 216679687 205739848 69504076 807042603 855297876 154562357 949635822 346269168 669175615 118287414 101898193 115357711 331471684 515933297 403354829 850909757 496454099 805535735 484703989 457517982 973876117 548266497 508565782 3218521 745673497 722053232 138875618 86282154 835882257 113734112 69886513 227878655 690618138 615442846 518713122 326083136 202964081 328197598 838193135 100895172 464519062 28491447 844629391 280185741 790370334 211228855 437118518 24653129 413440761 208945954 507040464 731528520 231726595 92599253 409878123 461397111 15986962 61179133 845398978 772388265 221709586 494657401 706163280 63381858 232072414 400861873 59413227 876879393 459023418 347911399 179940239 411216249 302827546 238624657 998745801 68295236 759300208 467263704 130282431 923606571 366838237 637855338 602039892 818191116 256953054 158372723 803790792 405611368 158054241 181509879 6884001 348030792 568925305 394186316 110724720 794104480 249340516 335170339 26544807 550252467 944724345 585548328 196050411 158043136 386730568 557509703 441567517 386232143 514754485 58134195 981924180 677856416 447809355 199171331 855207649 614356497 145259840 272608946 792011097 543292873 709314595 556698317 546025346 978720050 271762949 297786144 634371289 292872879 272917441 995148291 924522965 685636722 167265580 308905942 570397265 736159212 156985984 435021190 893219512 405557860 666535119 220080352 671187669 557131537 746458944 557097392 139431253 576326989 219480280 565878164 838471920 470990392 572078135 757121985 368450268 409291595 261953505 789279104 490647648 155888058 934590691 190865848 876933887 901362819 430897563 28019292 368428826 855499912 844066761 467991423 175976125 293428024 186220153 741858590 885021908 273791101 847111836 867914982 592358357 612388889 274215200 790517069 220430748 303869437 355905159 144086402 792612264 783463141 658244270 846063400 559997492 414670142 223574358 649726654 213664655 457764385 468660901 337435491 988276145 95767698 492147497 891192544 268503019 172529660 980000981 979715919 665390842 575975388 310426645 213666205 656332414 50773122 660159248 520502464 520598335 635885618 320198176 8031099 28243589 606824064 570032869 210343507 561144944 802822002 263959117 815411227 551401877 494523553 207313800 249137161 18482401 818391409 241958295 772694861 334110312 165397243 604769589 822919942 507647230 385213000 996774579 861380332 978943125 166925438 71274261 315276774 576543113 309306715 255697535 794526386 296485506 682526370 767194885 867786711 512860840 352779032 31176145 976145580 104403531 437184288 492310272 529346081 19150684 222656562 50053572 360136151 498047417 720714917 505009385 579237256 234300829 106312519 623879658 681779139 818671236 61329232 711343673 726469076 581477863 269533491 116003591 738532602 891585666 459978434 821351142 501002807 562450432 376215430 306467556 350289239 594337181 250108527 803790582 903675960 611473018 938682952 907555088 330827285 668420026 490209542 543674697 172706904 706137450 601159317 821581175 615001506 130675808 311828102 781715598 841128439 191915357 706772774 426962320 613744224 927540706 837862567 675349453 136287302 907184253 171360140 320355515 840107190 209140143 377726425 859748826 582020475 360186584 74297135 310781692 49533190 929651887 588072096 596090784 995952173 227377476 746972575 216667389 363984591 781680510 958217111 100383210 22904299 603659155 776735969 47697927 330155597 153021870 100630951 625496009 731567833 3322077 859134066 119087517 199485143 728310960 543298552 272445475 323367526 816340274 944569760 879162519 703883280 477555767 127541594 935522625 167089531 909683276 203908367 885307741 931216575 45902004 146287311 806616093 627089319 928945760 199531806 3722870 868789881 431202964 465591498 319148173 562244576 4979885 433501439 428973445 662004474 603729736 704081874 846389073 206255724 315483797 267046446 462200158 761567477 735391544 485633417 14775279 23422332 823036611 828626570 607595169 474381335 179435582 440626153 364252228 74427544 936733262 280927330 123923683 44197553 71325550 965475694 489099535 493873886 635110949 421055301 747605372 909669774 801221903 373529901 746534490 453415886 967044209 822555508 328140649 253004883 814665846 248726499 442933503 751713338 766937382 429689428 573605987 495228015 652998581 33229964 660225199 764655201 262915575 346695046 751424943 193168930 632687647 754430914 347162336 278336531 955890274 250967871 868912814 818988258 220150828 251041018 553079699 752732087 815143699 638308254 65413145 656678525 167275262 396097858 142307292 12824561 700501699 256117011 380889455 872954243 78040406 17665101 574512032 26138702 232976040 285063773 2690189 113780671 922169303 294367209 201083350 97498272 209062216 483256730 935732016 774026295 426126666 739864615 426324811 588589049 942074125 980784601 905958301 858004982 473433996 826881068 461614837 755495371 875472060 247063652 142802297 800483457 381625773 695024893 546962309 111387554 709016883 737982452 80993528 126209486 491455128 422575099 673207126 127402030 242970673 711842893 986992542 500988700 992966059 289179596 641963814 405074541 532484414 697667729 606120649 273097914 463980750 466830175 121508132 361021343 873793779 632117151 600711687 280991638 937528953 670187900 809310559 651303377 265822646 215002108 978411235 270577706 145261054 154683983 419214955 380403484 457321975 764758762 725199857 29302983 954053162 737109388 965302008 621840420 836941034 792296593 633557405 384558439 265147563 755918564 16764803 255717151 589285628 846822336 576315358 146408417 179149010 398131719 945788636 613418015 495290011 62761572 99599045 996605355 90384630 332453319 975765441 892909665 604794759 908695359 970545436 233653781 430832163 835732491 736483175 209059214 974138407 498274329 218374784 785617194 540083042 579988007 15212971 13606301 519896521 849236807 911845759 984404952 976596218 691260842 929611382 522153465 296541542 113272247 641128227 897030484 562664265 683399179 865653990 721940805 294695478 464068205 950450330 949040643 738462845 99602005 548498988 209550118 167078123 214374923 160617384 697433997 806603427 430579044 725436651 740313543 541240003 902065177 929084495 355026283 898643445 537634129 784590484 494273967 946878396 953526886 75570948 69847060 23969122 825447649 645857978 992559646 123624562 51245075 997001768 795233954 862483630 711284490 937937293 521679177 322791973 239699827 214671324 906914641 119539546 559415499 183089689 608053591 106338126 428371190 827723688 344689898 880222780 864721881 103762495 58397978 43637954 185631942 227037248 632204314 738459913 110456912 858862936 896231397 809220332 228745813 819147257 685914819 758794647 216635126 62795531 189369072 419091831 692415237 324900143 34409557 25452013 439518418 942835492 44965507 151669353 822990653 379998069 588479406 506280367 76808251 606146219 249530992 214275162 722824519 857442841 612002174 702566397 2237937 140203410 384590067 524571214 677823656 45252718 855970726 977518100 489962198 521143269 511093963 93794768 98667183 542937875 830513218 151529920 18030340 600246982 798637955 406089174 635500333 494762949 193393431 844883277 140425035 43577178 740572037 696583212 228742312 87604297 60040039 454765738 340118672 361700570 608543603 215790138 246497808 182373849 66585055 350502873 245017869 701540114 506823236 183034834 343478448 806851147 765980598 265874789 195612662 495464972 850822677 321356598 760477742 535461853 171066509 53962361 212069432 458880602 362728793 80234598 572514642 283244862 938346086 642744108 970314751 955555479 634103465 66333088 987027360 165753565 185757265 149335669 687627363 311202094 555454622 847638169 217754846 745072146 736474759 325853548 179331672 330404686 631335261 357131575 767514030 510153336 913492999 691148130 977782234 274411677 211562687 26272939 705669325 521486241 477082766 733148239 752509830 438164120 853019515 515296633 358977900 655559019 954327023 287473577 243562042 791757757 155198549 555122323 769485005 829923105 731569272 112675706 683902421 628521637 161459422 943539004 204889368 316208229 647643004 190729627 828713955 773747478 745202448 374544252 328020955 419957615 682838139 606522231 221492730 669891077 544903954 291531721 201827523 221890305 135227683 314701994 856512320 657305895 231285845 916731988 731471984 359840172 414983375 386856423 67994753 849195285 955703517 855591694 209627650 472651666 73826383 371134910 681223991 60969054 705166758 37967006 116885138 163198605 991576892 580406387 629277206 31392982 250441046 158546669 154431011 379702550 540392876 974034604 661783848 663295095 890448838 928668620 961147445 232969104 216521163 887382265 279972501 692425791 916690136 932938655 565002998 111000031 395233432 990157225 103125472 912749605 806232214 590926571 192474136 902221100 313494606 157431554 811710458 376829504 920831436 118949330 361892892 33981605 230394311 79120653 502750845 435406811 53323766 257087041 503927513 964857044 781217956 465871560 248355758 679902346 223497289 330736274 557164037 89543774 67422777 180039153 5397114 462150898 386542449 155294902 509002166 667169117 421050673 745055419 884798375 809774375 862757905 431535366 182053646 36755410 132222008 818863938 536904220 963787351 412011237 289160740 40525011 327149010 413358279 475010111 885953812 601376301 411419262 715076907 990586270 486848818 190175132 623716067 145511556 558110627 597984517 389934931 490057355 942400048 409069403 262564264 807037576 7155021 482536553 7879413 370128551 866346423 698711519 156559118 494633252 136451109 434981855 608265960 239967094 540439973 479689487 241930305 617204132 590742864 776522741 436383297 784437100 92523340 439298251 549696634 296939676 673736562 674944070 320732398 769697127 626281383 154647501 385069444 613745282 646070608 926186051 3195992 474011427 4603659 572749409 333946631 540944617 702477992 559132468 294233974 820000323 616944560 45877506 562825593 333730531 617162028 283113226 783241233 332926066 406930105 966294367 284035402 302625147 907267647 533424190 889079765 425517837 619749850 468839676 545427244 863420282 299413491 821698012 542760856 62702261 971676647 732407047 841725612 627520360 547635339 222175987 315366674 339272109 821014714 895867176 378415087 596502930 737747429 676457704 461600470 776733892 33084880 46297976 570699554 934419953 784530118 721851755 934134881 381641741 357290809 529146038 303250273 926744855 389178314 31224526 479565124 201137371 424489054 52460337 678026784 687951589 449693511 552872393 836205105 889730294 612435693 914744832 540185164 743379250 622716936 298683228 186485455 878974518 694741728 480068187 893605778 139434456 850618846 662758891 354017641 320846468 493582415 509883951 959585959 348374791 120285481 16872403 120622181 720956047 582287301 397149570 87538664 506061662 671995517 724135618 544775242 19344577 332861878 825340820 329956540 491605278 337086402 158413384 970764468 1715968 746981125 137432027 132531647 338216028 692456106 699347218 863211399 140837855 154281631 208597433 98540809 557371600 958611316 31626470 355701436 497699699 84817519 843333799 457022193 309285921 934735531 309851662 882492793 646990586 392429952 628250097 769032485 622645554 105969066 652297846 541143775 105391185 520569165 829131879 390923056 490620803 148755660 672171442 183890409 524422083 129148513 214282270 102624499 168741428 709455744 362550300 264805729 67455306 483753189 704935869 409866715 480395406 538106845 706961023 907177032 642036670 389810610 850467393 147569896 150868984 591727994 150210943 330588573 392539537 980978239 39537639 839268650 499088532 799740682 497155633 698739198 266427296 549389362 25758572 145702431 387615257 843841679 717493849 946946028 130448659 385133002 338458844 955664347 200934642 63534921 538266924 298373992 467742329 692852456 499429667 813852787 274060638 121774609 403487664 756316190 938430914 858718437 288009164 990158661 995686077 314444323 369212015 816699588 885769799 586008059 750446609 787040228 859250544 373342352 891151915 451585250 657880400 33566462 396559944 582580829 648265194 454629985 110258956 536015262 989736248 543028297 904524560 412124565 548284861 664639966 984931542 825523907 97088633 824513664 982497120 706841066 285725667 698161262 663974442 672822867 922435342 828168887 915108680 483893599 371708227 41382212 175424119 471198769 208043267 828866413 262741830 954774426 114953493 882701460 958473744 208165923 803201203 585987187 159139087 790369391 207444515 718191623 246750955 903345955 967098133 13502481 928250738 128731536 870861739 279906251 847849766 333031088 123712117 856850630 22079721 178774330 111558666 211248699 542297899 515257427 858464257 952005053 495447226 60128754 723632609 193168032 942600413 23494545 904749644 31847266 551322893 914292742 802253202 992017191 77108641 188784709 712274867 545405792 360428820 17710788 177020696 433395583 644474051 73753715 607317224 830976163 918658116 186100510 54390213 806846909 246315758 423147254 268381573 43950864 16699671 942890412 342754803 177385583 713760074 24787209 285276937 482472649 789760803 499073394 267584100 69158511 249059753 603712213 88862486 773181790 655374058 981298513 603288711 592946606 158286992 969109687 109502514 266693920 611522541 935618749 841821899 223428221 110652396 259779828 711054473 22873699 861973759 400420101 78323263 515465959 834153707 448173096 544298140 103663210 52505381 520730073 653627969 525028497 883125866 527270736 412509378 181575208 385485697 871008286 482268343 278022588 646371260 218233663 662884168 49801240 142458298 28928369 285325827 294470482 290419872 468559604 162513614 17535365 380679035 560339891 822376189 839558083 943252774 261281807 116973701 249041167 641481832 989686367 957832274 133310118 129998267 996601652 979955410 352618872 253108611 739279089 838969772 848397841 363018938 556751667 646607897 31816433 786659381 897226231 474028483 149449606 675014609 24774532 547936814 540870067 129272609 501667548 644487961 515851858 33369368 615956656 353774545 211409810 964709331 737435589 442198430 916578691 821221258 11420975 293011277 132795007 199051118 819616283 444893516 338627029 722947266 778863074 199732385 312366284 592110784 593910262 386164609 105642360 818206579 152096253 109736970 205090670 545916204 60707550 827232902 129510872 641727352 226089458 530932659 401712897 704928285 29951143 928595745 126803837 653058645 335582711 474801120 413489662 728961433 322620072 806087507 324171401 586956579 709439204 580811211 182502176 274036393 71172731 832587793 434167094 332876038 820294206 293175235 429231589 698261931 472560659 21559238 722629435 368634098 253196976 456073338 833882802 989755935 275881378 849133114 357002508 337010786 481579928 296446519 522504963 523796735 686460324 576150969 947982932 228184840 228447456 688686991 270277525 432656588 708015705 849781903 686677502 611397202 459143336 249912428 14531959 613439629 475748654 52839202 723205111 92307709 152101434 755249439 667025880 775995729 758646591 784419268 928955290 792828004 638548094 834223730 588734644 313262859 94573335 518409829 534130843 263722161 367712803 66932446 45914760 78185470 710424587 919535348 703974927 813735764 305154012 680974999 403394591 754321227 515998475 29044755 418140777 434194534 913413446 478772919 825640373 62175630 756602321 618145799 153611813 159343129 956848879 45860491 775063114 178023926 510464862 755251444 481403295 331122544 923373560 523941728 299911974 517854918 728266757 540250046 630758865 348676955 32729402 633992994 999257607 784530803 54137931 836557141 497207465 402731439 287788719 494591404 235715710 733636127 139147299 938730906 682671113 378271612 287429254 595396342 364977696 993130799 341136393 577619975 793608326 991463955 507463799 133461897 990557270 763729207 490637530 228711800 830264620 249331118 49599405 18207183 24038832 885938951 497218046 960069692 281661071 886164670 358475149 778832399 75242712 893329464 541836154 250077233 859608597 281707307 969329812 456837103 328715904 217938862 696258080 116696468 377708359 174221341 255655903 859771848 161552183 300610479 276941074 454945375 550611418 469709537 648511041 904814111 625177702 58588562 317857705 522222889 174576935 197929672 731782502 811935762 994171610 647018504 21148765 729103644 857467148 68699072 733152066 920425314 819835105 73084140 955972435 411584022 78212154 541174041 89886427 765719888 388904313 502930442 109287503 162053502 78136266 65756197 643949432 349418519 812397719 818987737 768316131 542053829 721946683 513938568 994029534 522105058 426163834 35510110 45958223 179014870 901590216 395403232 566768984 301850576 158588800 830094751 886267937 321095920 407755774 694045367 752214035 375037209 774031818 616767020 108057870 199322932 56392020 394009600 426723881 403274053 178680558 77600322 636368680 366226475 480967088 92541624 93221582 130246556 285210414 113212248 59891203 684235400 976614144 606341376 883177076 859158517 40876183 930397193 888003856 343903250 381736854 60634194 532925948 899871571 206128556 391614698 392470058 781761170 123154075 850922944 717743091 11764171 243972890 771656221 132965956 931021441 893464613 439030623 519274005 471586319 475546384 708113501 662049264 29326853 688876900 778066172 529493654 456364040 144587893 205155458 802237689 417558120 802574977 473026748 876088322 897528626 95438691 930716387 432262491 57463398 197560899 306236493 332687540 186731777 940134323 207411859 292401278 927650485 458028168 662857999 7655650 376642058 844757887 542754999 835369718 281234239 474290274 655433840 883598204 681302646 330172355 608483088 186122445 367006137 822624843 561917135 318134586 925685878 175017305 39288017 761699357 698270201 331484983 686536992 262118378 920466737 966859706 960859535 128372727 870090135 284135711 322900964 360636439 3073769 204763343 683398360 600158113 847076145 687749395 681904036 926385372 274889932 93685902 603883559 436716703 51273763 715488205 584149151 944481128 753771588 761383052 469037997 299930791 683577345 697535970 971424293 553836899 795329852 714298206 690399564 312498387 185605044 977408371 937795762 520039760 734074923 753541452 300122137 975538499 247568005 6940849 510775202 912845379 948468825 463160407 346535574 727160403 495940550 451029931 890644639 124329066 37747823 296489108 475339615 806045749 742457848 151183778 561134933 655274249 129516057 261314746 643633083 2454085 885952210 935308008 501701630 557227688 279522334 552589198 991584462 327116194 635346080 534900402 659250503 177524011 526838657 531602107 371634563 675874206 132557143 248760301 423783915 161829621 518923077 593688363 806049832 109644272 516469167 147031759 44914 891432604 31112557 49321271 488274948 969545765 745324297 866144975 371732451 603093404 572953647 181877507 414010491 90213419 731219501 390393875 43589569 640047221 14983598 90239434 402974191 372145468 288568963 983829174 747812076 126817802 337827333 425572495 458138871 506810093 791058541 868406115 897001213 889316017 796879269 744797344 458825865 538165871 67041268 872897583 593272384 610558376 999795158 697780681 633714106 573514054 455809647 170233651 954287341 909969270 518021490 453854607 634577527 459894153 412247317 717961996 936867100 949401654 322047383 414564616 710828478 973762721 301094826 112549599 157876932 642543318 23810767 167542204 651525314 661242893 911842736 162499072 488603296 6282733 524399424 854490600 216222888 567689771 608374359 605787718 532199881 641819075 312816806 71755711 34018798 545676570 676998717 868975170 654659716 224290952 594274804 899730330 705864395 164892943 685360772 564674815 923481391 127972964 274135784 984024248 54601211 262227528 563731805 180801713 395600280 939054316 730975246 310269889 572715355 668782805 783931805 424690886 702347459 220941053 341398484 36813732 942341937 287922873 562781110 255240514 465504970 183533925 498060653 842146744 349543553 445662756 259571236 107025521 764052228 883416776 432444754 331690169 563585069 721757562 123121494 636542064 932802757 123804776 322052709 320910354 982123240 480677561 597412785 658383449 468276639 332176351 642227131 526574406 515286948 840098073 422222922 375489970 70815391 837346348 497572391 421842179 679893110 476378251 356908935 735763441 342781063 341646579 979064067 927146781 812471496 227309417 646915923 643153536 560843504 781591507 434791906 625846937 907942036 388028442 373926155 746963543 331967850 243953839 136260197 297005081 355769519 481193517 426892511 782229030 838305974 78532593 931650173 812181697 127825789 661117241 661480175 782279406 368844214 921969767 229683066 182897407 278771306 237463055 769343629 281075349 716663470 627180413 614472067 402070664 731516040 296221400 894463978 715911950 899263283 853391924 631073697 196344673 60528751 540184996 240217828 259719115 579466501 529136186 805532543 37832176 871273015 107393316 958444191 15551783 55316640 632295559 882995786 139637982 696046022 655546959 628995244 473536050 840121214 355614675 737538655 589848878 972203521 471720337 982196069 328103649 267171227 721033842 159858632 95665991 206576942 340302281 897396617 779764861 27014603 116278921 998483490 930795808 150787372 962565807 635552828 637955282 845169849 245530397 956622448 515428267 386952066 661452994 702977473 934439112 84807803 463645538 682736127 449969462 974012606 601856850 895631983 118229922 878786626 265054056 104317250 344751293 628321922 786468757 805792372 932920695 627592827 272222627 690096688 194487436 538509018 742419086 265947251 243021908 466487974 770520593 988929584 457870255 191190014 667469082 626387221 162723352 854738306 899127100 733610272 893373779 31425402 323110319 38650331 217603610 863363036 521398173 513460374 386318366 273246632 6595616 492062245 421057070 67005172 497625949 938248598 469125184 307652521 429451622 287294457 869102987 454771772 485909027 248522621 490514295 453399385 696348588 856304567 599081839 143076025 189477294 835017686 773382570 722077230 802720946 867515941 89061965 55434241 120183338 936134557 705888768 687974515 521194915 878750833 22760518 798968180 725169499 353810666 536010047 610248563 175736526 384267356 592112120 343241528 208973372 429372892 558343592 506524140 31701893 431825462 437181255 257118095 392181077 458975948 555297779 136838337 89367098 322340100 934873034 522997385 496154188 317281534 512516252 439998360 903006390 333506170 567415490 72464249 848256082 399319241 471202515 263631678 172607964 778491932 353015312 690799246 587307845 395283227 704535702 243237563 929287920 797849688 534877612 94542463 378731952 214528202 752265026 356664249 94929895 895598211 925519162 453105843 788853131 408978906 561319766 567535360 71931547 489934376 899229799 374109862 678261384 981264699 211890058 369811586 751138383 665791831 889545577 528020415 530996065 594435559 483439405 354083468 878911052 579071294 893077102 762989187 624867653 142455351 405782822 218935224 203722452 577379725 926087828 685721699 40267148 748117121 550102322 655542388 399837890 39061378 701247037 63289135 49956150 485886532 988038464 652423559 51854492 5969758 688320604 724972168 304343814 274281049 326356445 908261338 86191283 820284244 866419868 862035776 678785979 338426994 782642105 115135480 427494836 715874115 997353341 466005581 986122086 680813107 799715421 680079172 563702198 376208533 251809664 871860360 452720322 638077277 934265096 704622520 495849129 293324695 849304364 548618226 523514702 632389244 201225132 587310941 346077282 379942226 975100108 451801090 614094563 703256047 576579584 19259066 471606647 185106664 12056449 951728078 21166843 783385280 228489984 614770451 310647303 513075651 786810990 425796757 53725695 683924465 283727667 700752430 593695556 370108838 620925093 59571219 878098881 639768876 197199 328500493 310962988 341889040 133959957 651567668 617966728 218503957 592420905 922768032 743419273 675933150 216596866 52683880 542594159 15036074 304288989 853225641 874486206 739801619 907901564 764538267 136992322 31717656 140962651 886927430 700785166 260000184 630463831 676066724 777030788 777172484 26278072 901650808 865165416 97275803 472612237 856057313 262216279 83358542 292823784 227652523 823720195 982662511 510759914 730742126 549454935 22948499 696763184 172122220 658545608 619569927 141895702 855066381 639928133 204348100 532145632 154712093 587387270 460730977 886084609 568010420 443235538 76600130 14528360 875172564 641316579 885616704 103285292 612052956 627601419 286680201 312345282 632134177 81214647 562509802 334538355 820706923 306903674 788384740 276407024 518696848 705736439 62198266 480656336 321741111 47341221 807215262 336918267 327771158 384930234 631770851 734189519 654916541 208170244 474548 581856200 336575594 501779368 684695942 454684692 605190381 326803042 752752506 259277925 289958294 424916975 387059839 444677950 711594012 413728518 86993984 446871266 848885961 546744361 146872380 849575707 789979989 964116406 523122293 606897048 825637424 419267328 169095414 492337353 408359579 851071287 725528246 233686646 24220155 678186832 345590196 561093713 600045632 49095482 498676311 616109182 992868940 692037433 74129520 604139603 13321640 972565509 294056490 780809843 194994835 498198943 868564940 109689713 359159520 774573587 268848605 422301891 23979508 898432630 757458410 791346399 460567164 628234169 356195352 65322085 817298169 40850605 62531690 553764810 711433227 615176531 868259052 239719858 69521392 499832083 423160705 190196626 718584200 924576246 871977192 514363743 180584203 640601741 579451103 653637819 710323527 322796942 477353469 215414060 936263599 637269327 248033010 107175758 395931962 428443963 698596292 504234503 741302157 109578159 478815095 944705822 880956992 178464616 936814115 588074972 664940294 104973008 736095397 243701490 81584608 500701193 669054518 65661119 422381997 865427936 847458326 234674110 394820842 214343700 708728222 258327822 422104108 310438031 38856298 803687249 545626193 524502618 742278652 878185253 121164159 756088367 721343914 331693851 40129897 584144722 381356689 71235569 361290946 931970990 346419571 829871795 569448910 494251746 75654849 906738116 654269923 421478031 523702929 149214777 540416023 670196061 179783932 583122398 904773975 196012754 256663905 143318340 732592121 853990933 868114164 552607562 32659783 894770500 263333929 279762389 351822770 496162253 776448206 898372965 384037207 383132838 295662812 123784481 933881376 164435039 124137723 797650483 259716329 629894014 775635495 166186525 315121794 717170600 134659443 396520292 82208060 400224770 459738235 847156901 37084726 568333132 183507047 566071584 777158625 465491162 362646553 789966986 291997932 394070560 588235247 136764212 527938143 350847127 985251874 562284849 224415762 750623869 348150009 168801400 153415733 106857476 541337748 588529711 860445047 151023257 647613789 922152290 602855949 593574860 16666955 836298574 217100962 730942401 41989196 844331545 46779090 560666903 600152739 836237904 487127290 485966641 223140144 755322889 6950103 435091162 207122202 935895553 792924657 164721730 974713887 763729838 140266207 947777721 867046537 169656025 760639779 15185596 54739227 963226999 911765674 749381756 495275360 10264156 626447727 815873761 488863030 295129237 819437268 599524600 957218923 522770170 332319061 294817519 683627601 962462435 872797805 428421436 480553244 434590397 235982330 698480566 198030148 546287191 349077715 898035948 757811378 437064701 981972534 363169004 62818782 841063350 54287246 839638215 468557330 486527181 86064359 732925065 436437430 848749370 834606824 844205799 667137845 371439145 868574143 929129143 615752646 673563913 376227075 421205235 515789751 627196408 308579943 532673282 777791534 687435917 7010227 4305773 306113481 346317459 84822929 562694239 935328465 531046504 810535353 372380580 399545726 715425689 757457739 221932613 315014848 397865459 938043249 968272438 794066144 586986228 576450134 347741910 126000915 918506291 803835305 164496724 510201118 250531716 244054625 645495892 196080209 224904746 403164975 412773918 272234116 768623512 663849508 215810245 725127466 80239453 944393456 669566892 16228668 998136922 786421634 508251612 501913911 522201863 739389004 824723875 84978796 934540422 764187815 919862747 767809498 136257034 477993361 940137550 257976100 195568533 203067325 771233421 873224780 462348116 827023566 791867605 18994918 997579085 146903348 805977827 873219493 606879850 964380510 386969370 810014929 145177660 920135406 326183860 868023490 734660316 106328253 856033605 352641931 382707113 566307657 700882325 754457063 185471649 165411807 396589525 726297025 656866074 274585920 480263393 169548832 884502011 749358176 901582639 526881834 982535299 761631859 916752613 474425315 740179428 342630201 317756040 347236660 279451312 930745138 509852949 236854182 364901243 490740986 367078607 332207339 538908383 466768860 8975725 910440096 408997905 512859238 206502169 863102917 306465059 134618596 856161796 100676928 432283608 717025715 516506209 181916299 901429226 933323466 795201216 70909622 247839835 887893051 178827822 704680075 763462353 606320518 994864710 756947295 963741175 927821977 563381035 433411224 394732082 246459605 231659439 254896143 467612123 325425770 237819662 172506578 866310627 434301820 484316953 294003462 788837207 873241323 463952449 976809311 61065245 166081238 929351461 924521099 585373479 761076165 641689390 386384616 777936888 263279731 506131200 449082692 153717579 392288504 586443888 871531923 206187080 863496770 325594303 551061018 491830558 552658625 481825113 316069114 618562684 551123652 293079381 971059843 295184923 709649041 624096534 598818343 240915540 486145319 647183266 28197153 783148535 977832177 921982160 708080132 544749919 306605428 987432530 560246246 516479697 490292108 412210117 454379137 695279219 557564338 300998470 341132217 628973224 794771064 895252862 146841458 836268235 679019938 867464379 448967933 547419979 396068712 359925811 574952301 519222545 116861551 392484085 824829379 389574520 871533058 461395184 102939791 121563374 359458766 99676893 794834653 864002858 863154924 772737910 92188892 367194150 144039189 23485323 797824459 877354506 714357378 893194823 567313697 597645794 664506893 445454606 882394144 316753165 471119421 296350580 855751009 174398910 300389053 389359624 27921492 392854246 452477509 345454249 751136971 576443136 248881994 344929014 875998019 524059926 774330047 966173527 680495752 779857652 360260477 444096198 167228663 654710974 79794374 778990808 154700805 261476525 969296670 957083378 216360292 738783478 549280569 299570304 423944345 351311976 131122382 863194727 825363388 157793683 876118904 884368170 466063334 229157710 647111647 889808130 321390783 393131757 502592895 200257057 937085392 251957695 732278310 333725597 67668143 686344298 717043854 143890820 615356815 26435178 86094249 710212998 234970940 895607992 990400662 901787655 191855920 116246533 150344785 899004925 151260439 903412666 758588750 68004899 721032391 738529845 331355288 643622623 959847402 548333183 612764835 173215799 314995452 839829021 24918465 274750112 98512524 71425328 337851512 170551390 467629626 498559025 232106508 713404220 172948473 387259273 225554568 187929083 223334886 606094138 814332916 736052235 998689123 298211536 184013499 962002724 353850307 813730218 521667910 589765596 379757112 401804477 714573821 600169634 818674481 535605864 211825498 302070709 822116894 347805782 9816517 704118907 416653736 250619974 120066971 333505305 119244061 637729554 355116897 798543499 496324470 28473633 52875594 757631820 514602649 382581701 248044181 832885314 504898034 742388939 166163960 313535854 451859723 709739570 690957604 433239996 362671145 23224786 222174608 348704046 191323449 83680240 801720685 158203474 44488799 329889339 30550276 832235313 508642531 202405092 480724253 682669124 396724155 924053377 615877377 813366662 926271445 823565831 62452890 267571305 916391070 346207354 988783516 323559575 7630531 656372330 71246515 92980032 762990990 166442750 455972624 364974869 117472499 857526150 423894832 769812960 660859859 643948788 589620400 809605764 520151038 454286281 987274916 332605006 626930140 234033588 192398186 113068518 415910136 775943695 688663487 109040334 876242699 693330352 857068198 823987040 153008663 621755948 494400995 554732527 940740447 64620104 127077026 639945091 822510146 270354458 639056882 843597614 980874876 46988344 432802786 840139095 841660716 96524976 83168949 94884306 52150422 683763619 529927681 930890199 89577952 296770893 331840097 122151176 356925663 668505815 729816690 825672061 992050194 580593306 817363175 248018949 425202006 444681268 279838114 834285177 365625140 457435672 253628029 825146526 797816782 385217134 522390232 669379224 300227040 618400609 678721440 223198031 554386999 736643451 13872985 365755387 124311467 753207137 422208870 962304289 637000544 261972708 440160504 513601953 522491924 423274320 730328214 498855032 946948484 333369169 553060005 480595990 924054218 395948985 711542300 824762708 463004748 504443324 505361086 142421230 965476098 462102390 864175827 299973154 748039441 949801133 923544202 638315708 155329067 455305507 522286639 207913502 202982952 661839641 615346441 971293875 670293859 650396400 809494832 97274006 179804913 946335386 414480698 504747150 730790719 215807637 814295922 364623890 546510528 861331573 660325681 472045397 855506827 714644825 522414655 809569599 230510773 778200563 217832272 681510605 430688801 279388802 724792593 918160297 346382051 277609868 197107914 777539012 549060199 3636708 526365438 684437498 501689052 155431261 665259276 696901963 208644737 473867366 751314762 875058254 287669839 890412489 405340293 430711672 152312191 353267582 470870120 289391948 637331330 796635488 384861388 182250149 303732428 186604271 889307369 480756172 166850617 306349260 532111458 69398857 499365582 68129326 201937771 415106755 161432210 137259287 733224530 810960949 330770218 356786266 400446429 941355132 102603256 166517796 195402163 214980257 556099601 697003836 759061893 371321166 287487535 395074244 827045288 706946329 46729287 164009818 835302477 522333550 549036000 749667514 768287751 296589403 194168078 346008523 938088107 324413665 899386084 484191009 14588766 978199668 666277170 923090996 548883471 261219600 639246352 213736892 592020119 165078866 666172415 393310293 127041570 37631205 350916671 882707055 386796554 116392480 589541675 624319310 428610126 960962347 667101004 635779762 262042148 124694917 695837429 425888648 523901645 506229130 435759184 982845002 1722439 245628660 201418140 751897220 744287782 208047586 696619625 413270641 910078935 804424933 836358130 918459955 236540129 308459365 464491922 240127939 26670092 295376494 412011202 975785970 834551447 362821867 249394890 158126516 48093061 435513808 967896531 620368538 898982161 672888998 234180546 675546167 564257988 586507023 766478891 553885410 467043155 820574996 293650653 966611879 638266846 576607476 900571914 160550601 538362192 514239341 884073276 788674976 232607227 505049735 795312183 700876330 308099738 629491819 585362741 272639543 779047037 491051071 360191322 575179558 480757350 721677415 661923039 132478002 438232810 385993984 799028497 51396881 271284693 578917054 297500384 953816018 292286438 362102672 52051111 675178878 5172854 658397328 207094420 109005875 180966175 109609882 641348762 472202225 235495464 299078812 775089077 755041441 538711407 513242147 668261538 974923641 832059645 115483552 135683103 730222699 255774797 341914398 398951958 26215513 917619332 807069844 437095856 537467206 997754854 114027332 489605922 953595780 233708573 122177080 59163669 786287397 900581044 19304115 213262825 360163765 991719779 462663441 658796106 84828573 476514907 373275784 318963438 823282452 968581758 444486942 226600087 163128016 621372473 86355148 780979208 886256525 680106297 999006433 914880267 597642920 894968399 212598324 632538502 302233231 409907980 719658020 304762373 837101427 500089138 147695274 61032580 279249779 994142988 947839592 332795857 659593742 724366555 831890803 308000656 653299724 8908107 264839182 892705852 849495672 791992198 723774863 731090185 747871471 37806220 580671171 97222345 373156016 945628854 771985514 599105514 520442462 295402188 186481293 745837779 367715766 916657368 120515662 439336279 91319310 972442712 815929578 272185350 563817378 278670172 194691085 130334030 387605361 122969940 357319184 702511425 809647711 935674000 165060691 492610561 407971270 879002454 187564167 480276176 251868798 987745906 186392944 214883009 602370797 248625646 629082921 435253672 171800651 159327096 980808892 352682638 411919728 594694457 241034227 36400706 997800072 851419690 74253819 469820968 61772407 352397501 115914557 984042953 970474463 441157747 751812771 647843698 231679468 872741272 874005906 747398389 188233604 21882406 6299650 106453554 199869332 874486299 931537708 801928988 708910921 179689306 546705300 388407272 416262316 524259979 989227555 657923093 999006706 588931993 769769984 279725578 538242764 470908537 977961867 354268107 563257909 933075638 974943001 168479253 915769238 712401381 75290469 696137423 750137137 126995796 543323326 760273061 905202206 272351641 605531047 793561859 617404226 489719224 900301970 394809531 826854142 425111201 828416185 745758161 575495012 155596856 109823386 251616837 987154275 1364900 405610996 142187340 914757802 675415944 732758582 627780182 109918922 288868595 37193581 717858681 720674814 293521271 755329491 402759907 232584572 81698425 479941421 97751777 393393352 721499877 831040020 506512492 585175769 589041541 619538567 979845019 875413209 948740328 996913596 333425702 127771230 183180428 707289883 607769219 780600654 441472528 420024970 724103292 985167525 349948345 268349709 874749352 451384002 231274496 546891156 934076068 618337279 270504418 880609217 84625283 252441944 6103029 615526899 85635425 766459894 825220574 487039913 379348327 945797259 116600513 378532202 85503211 259241483 912512261 117160720 530945963 424817324 220601521 132019581 249896827 347138939 60186515 294019184 733433022 736668182 123759152 323589867 711593452 715379878 934807513 937583900 916727924 928957608 537984362 334282383 181956874 846925156 782500650 449862528 273651163 656877949 504121879 494585980 511353398 278343960 590201211 678374750 778480634 516842971 129376247 573650952 578932575 362122728 635921940 672338287 913406996 280686992 60383800 100287781 497077861 216422327 460914500 106835325 758796270 716701416 747636641 505954653 62722229 455262675 491641717 338312336 378964042 362366295 520578729 500070242 237996710 871544013 947058141 454984901 438197332 615592935 686173474 439867079 772762728 541219690 462683761 647961001 685033713 608658836 884986414 471721097 136070201 954289221 226460274 810845459 490573777 551115500 212008262 315294527 141703438 538563465 229712170 913788369 66128912 916207979 210401482 659109880 561424086 703928164 811679664 323842435 521310663 964871243 56433400 953320506 69140430 922006671 51596891 45264084 899976493 37257423 149699879 445519043 686991349 512411279 556166743 937936110 510771971 193392768 288870860 654960462 588155963 395176554 520138441 352457072 468455387 720820450 136946008 133131304 30441095 256226581 149088960 834563193 798319367 237496207 83756621 747318738 58480134 30388439 929901827 569198187 181194748 940807648 438002909 694290630 564533804 506916300 913211026 166433763 957758403 735479156 375638619 39792792 639562214 571180411 646548799 723750439 856773065 667933214 422553261 753618149 925180371 433873298 171343414 189025695 15223366 491078033 912628270 932941579 276367998 939874350 588667031 613010216 307592177 858712678 962614693 365934052 484965558 500065984 513106986 265463207 582814317 508012259 480427237 199710869 452632285 467284771 590112264 7869775 282208867 358177326 853072059 239414466 930850234 637262513 334791872 789838762 130309482 786832794 711968849 544069707 80389496 602069523 115318318 329809110 170568639 162015941 624832594 322967141 553777033 733237772 662744802 757845782 618407558 272179947 110522625 143548610 297832496 59729155 765709907 799165944 727410356 443462167 972342651 92640189 42478258 735347981 503802633 595796037 350963288 216746581 298068412 250862551 603583036 7156271 565897902 107028246 156798475 32116349 728641878 794073645 644302407 454925497 192469470 611317552 526420140 579580950 943628564 919794796 44217280 526354316 909877144 903708565 580797465 671285214 124009551 927304988 77682302 722909130 103147030 104538736 495392820 418813869 261824000 323336872 286657791 531965024 756536922 951434388 813156827 862348650 774208893 180834532 143395311 310917256 518338131 661930244 698309169 937525884 759452137 501418771 863505732 960270863 203438364 808104315 221081967 340353224 204978586 929235732 563084591 763836475 131013333 581269950 555200751 525077304 516474905 739513191 44092705 909398675 83576947 901093657 255740973 118627205 305862514 68808680 982963027 121776233 805495326 664800087 355237805 384246728 188459427 828444446 722300327 734798714 585858049 95977458 970688373 904051478 37912409 203279399 896307318 995544270 259814195 712252376 55204203 311775946 69015950 8660458 168244953 556417580 265000406 100877799 208315171 189821934 634150235 986675173 754413920 638361569 310640421 756502505 39418416 620180903 717608034 540550950 890497731 443802791 435838752 307301429 782849290 390096623 681522786 668605282 563201962 981313925 284000547 529158575 699105374 681242284 200472734 472601639 781333944 834443313 144418179 926804935 238956069 664609247 556734407 903690418 259624376 605677036 205791391 961953490 506229205 572137753 526314471 599201401 345392844 584165699 276401485 802300924 129564637 768888292 381453275 471916475 623115162 693295460 576544890 711076538 469455187 74229703 911458497 471785670 673847697 926755365 483850475 109610332 567731236 872372697 503127445 606679446 495351913 626361954 809421959 225246118 124903051 823752845 457988339 363360581 817314246 951558145 37576775 894442781 97513984 192923668 90922417 923120019 942788712 622115773 917671599 894609805 398001111 889806817 255758772 816961877 594333791 289329795 390448618 67226040 808283706 571207197 844924161 415362525 91214958 661218964 279670109 866106175 694974868 981238892 767213092 857377291 140063740 980142899 876693216 623932004 965405692 655784579 660451675 668989800 929050756 414081531 160668423 5821158 512054966 277022041 647643845 910477327 378797449 757696117 5907397 240921391 257146821 304764648 4311885 632354919 280870714 656082185 626272150 593621921 602628007 750064571 31614983 742915451 648653839 73420899 672966391 306994984 939815290 722392921 470816602 613706832 524962730 645471187 265074542 4851354 760345092 696201636 967103544 668571207 479054446 50334398 677776651 10828401 838085695 964509901 221542820 939325259 519773694 170408115 755305679 195144575 612528041 977677898 822258162 866226652 506009579 44508058 61210136 877536235 685391897 400232069 237555793 196145254 501131866 345007714 542569247 438397679 172084515 465403437 324469521 926374100 216481904 989579584 426177136 541929931 319613551 563010936 5872735 89008879 232347072 934764444 767514906 769101368 604077133 378157611 833007867 663720125 761460490 619002341 817840257 512510977 179004797 343341747 104512504 247373435 820308926 622446927 465572005 436645129 255822789 413895426 198735199 744374720 935287356 845938152 924776665 421449652 804817264 700621372 755540382 651399806 898764095 951989792 561531839 784690597 156787061 981945878 71617302 436327123 167956876 224492748 831639113 610629978 901040972 383933108 841904840 914707472 138606390 370545001 674192516 837237112 563244277 513487908 225012746 560723085 864617193 912120456 758239851 446253273 116371055 955302853 483225589 671057153 706888485 339298853 353466833 119848881 763256625 422895549 15323668 559615555 327167284 543280213 740677087 947979582 307281323 666237400 476439986 889758874 300002366 375120445 27401638 432374404 545888053 266784983 884624234 260930856 59342138 797882892 328164896 686977867 15062854 695927432 789538527 640196063 768246187 275551053 687791790 727561166 449453267 502294320 925110246 995968626 557167254 996706200 695938049 402091771 49830280 51108895 223680662 726502919 726110451 33503419 961539530 612500733 358331818 740410854 673936795 467775502 359365635 173777348 638340149 138288121 988697256 626311100 584745905 808375239 804567532 898186699 963009810 99766389 722805089 74915546 704759331 668872695 340520224 734355591 155324834 281762430 979147712 892576134 29718404 409190674 546578659 461488894 482096605 3422157 823817262 28943752 516135561 228370735 399037431 1738258 126435734 736897806 687275080 17521091 19891585 998576814 657291472 459743348 553801429 849664951 904625774 427238053 723819401 476641078 263903677 848968597 270738365 324911011 33006371 96642393 753703755 399760451 363452317 541383957 634189294 371773236 402088877 723842593 567881111 963691624 222190811 129810237 817036978 827055155 529854135 472864187 599323168 139612145 173476202 169859736 518250620 743901668 867417851 588264933 940808781 840373102 283055875 381794753 786737969 784055502 302407317 328400617 175377071 586958516 992172242 720704796 416504457 875239929 228571543 782221412 814723138 700626301 549423606 760912306 172811338 795381767 671462784 900215494 997396239 278365562 836174801 390281224 364712866 139511765 619510043 660005966 174242337 732245431 631502076 593779510 406157711 214090357 547498702 881363803 856780087 955037957 852714723 387868529 281144198 956897090 260120012 582129391 116543728 779773123 496945821 908230324 671892363 727001079 796908098 208525319 96092533 155249185 839818333 498989485 661115959 171907839 789987452 533797136 689429566 881941976 88504034 773266176 701731703 346763979 423323968 938327520 350686552 789733549 597934156 96089642 87208285 427154836 336734564 555434990 538684035 902277226 73284827 128634180 329883755 534129983 674234045 255625756 255063498 856638180 639180112 920444246 34174703 179206643 222519521 806918668 189891778 55112737 719381516 657392832 826210507 898711210 831520502 776799973 983250267 692010743 784771642 62422033 143413720 90563259 880308557 441795517 852779056 642997894 927587008 125259787 783714518 395982005 95817838 12937458 761630493 31415128 410106037 827455747 747099236 358509653 477531974 325800712 22333995 890783828 459181226 901839067 557092878 257626410 53383928 608414994 240052355 940891465 288106691 466788622 952118634 512537585 752038640 511010242 402476473 98548631 56386112 605841930 251763240 373159312 465630187 962368456 308375666 18859390 821356742 562203092 143889896 98560916 969679101 429639060 839762735 69753192 554044202 856057333 549019198 985358824 987748639 690242 792436386 283688499 334699447 638809586 173042377 251452024 40341801 620408176 401130132 180731040 841325251 312608178 5505675 658806378 778297687 68111725 531751378 761735747 570593087 990897984 279975084 984302144 681214357 301728701 85699029 473075829 574163088 685091466 833246080 24725119 396534482 426157408 188355700 882065300 859351033 135511615 584158676 941098741 574952280 460057759 592820474 494310661 200209669 360884784 47735392 325298708 449717477 503707919 601491232 707117975 846272709 729424758 850592523 163337781 75486926 321214092 651116218 164297414 865799510 762723726 385570681 467744015 14954271 798139834 94009193 906810254 803046206 434699989 508783718 840041317 546528131 675675105 931418018 903374435 88628658 537206000 494870624 433837229 982529856 377408308 350879689 457500706 387290173 131725224 209173272 470102377 124539902 466829181 671469683 483272593 910580038 327821982 589619997 927017401 116974451 529726779 385246082 654549303 997722912 486553967 215115991 256616563 690792020 46271994 829176829 267669800 141586123 260210916 160094387 163433596 251948403 545072716 977456252 399504406 396843315 864937690 826942716 278305155 400790013 347005466 854772827 676397974 935327200 778979792 567599773 178866682 749268849 442388660 493527749 566433693 682162790 226267528 451079494 404175560 703298504 847226895 250780383 36646449 389515423 254500745 841395084 125470603 725595895 878096838 278697452 483011021 903010317 680156448 258710342 893229975 102516811 677187241 395830478 400210829 194699388 285913031 471961781 809953537 386590251 612450878 979408389 233927785 115632606 8534188 499868906 11559819 856338821 204041216 29447176 259583068 578693839 530434772 141114987 687635602 513218691 478514310 358164365 336796557 28917144 774366362 85074162 398033297 882292648 570929560 808258154 893754123 129062115 205541630 326350459 338309077 779005669 825168758 638682888 644648433 473600731 489610788 520208362 634357668 515332000 520852757 805953975 909322925 790533477 760865507 609437596 296988992 173306073 357626738 574953844 635901782 39257396 117700699 78996214 540922168 474104808 218521933 288060265 500914669 783973531 608794947 672399836 404083421 576353165 150044434 485004913 944395730 596134985 595368126 254539534 802499390 744413781 906397561 563541714 888593476 120785726 60458394 246820484 61108759 267732123 181438392 210577301 849536297 587802284 247474641 736683343 794687847 551211638 297900257 298260973 472987310 438906959 434487367 195954669 612017826 451135231 523314117 404421618 92829368 681865682 69320203 675737599 710966037 870546721 931899151 966989206 879776198 704316449 145321021 383092306 691312079 18053497 198715761 983593280 622853300 785140466 156952561 519567913 633630014 532107522 994403801 41991563 144735052 791638616 301096096 74767420 617838950 500673088 68456137 370909274 976466175 659242800 651790960 253502382 113769529 732406078 429421862 103244544 294125598 435600623 810872086 758353762 735918970 699064394 552863361 50260960 26255747 623976343 582986952 5833066 838543162 799500952 157575838 11810369 82702575 715990860 670442990 812952254 48531069 232632732 724336226 269240846 819363989 641765349 963858132 182663175 62685918 393468547 631102687 623366737 397949162 569257794 514973219 537288357 782914980 71082303 980529581 284797619 1840749 41075094 705037640 981547565 854878979 120368302 881703252 867711596 612583566 306895717 22031272 299970591 719208452 544587021 929347092 88097308 847356908 935225550 29770607 975427412 49631171 73903267 806936489 730083448 598891113 230481602 979820947 39053568 452095206 413119233 729077757 152311836 403796491 662065326 910746915 250809685 933373112 452190997 625831621 665235530 985368811 749479708 295791355 401944598 568625356 717248040 740756226 287293847 566872450 611649581 627984380 595373378 943124855 668646093 930663237 726202541 810010062 929983130 859540706 769724130 488919513 460735858 670627969 332484646 25589455 608342171 250902311 605657587 671887443 38857573 866819605 864633987 578804016 22172325 996692827 194163855 203234835 543575047 180614058 283865510 251921159 610541443 539505097 209483407 25682727 198231160 537464409 463183301 932361789 198458446 917813325 440416861 265891640 719391000 259668157 516204256 376237619 524473364 95828196 59389018 194264578 837232200 723290797 262630213 556259769 70959286 718039502 232699512 921613428 692506589 495479839 458715761 96551483 710235889 508089289 954688785 606456027 316443728 561265104 3525546 323521188 97680204 700141986 50326920 625002550 990123542 482693764 441227595 562422262 728325518 539351621 18807781 93685568 87221684 342647006 997276122 709592853 932109539 31698661 303956498 991871438 718278525 221402859 416019542 246743140 426502675 307209342 987080109 416177714 487016067 742836500 789039878 597369700 85926937 265843841 407696222 200629626 57774715 220190475 628158680 983098411 653767122 157777089 36254964 20114041 289280380 57123926 731800764 942107014 134431382 414728987 418121913 597595779 241350666 485587089 939566767 405673750 40524502 189497584 868389903 168999045 294065755 706640553 255063079 899458053 397814676 565971225 466265881 475403735 118213322 445908451 169817873 13522991 269499681 810559046 330869991 137607936 410240408 921373663 502807355 246446369 54512911 675577412 431830871 208692895 782323528 337357300 823235559 807779484 823146295 7889574 691841628 182131890 252499458 673443978 248088549 800303614 505689213 605597298 59060155 354176994 523150163 967369258 634697110 158030275 438896839 295816130 673903055 572141469 883367038 350208373 41139874 527687140 476101879 445267116 605837321 575672974 938307118 974814997 150930171 837265450 549091067 326025384 683935323 628668571 944395538 599855841 114391668 285816438 837241532 724753766 948999966 145821105 968483490 680894226 827365417 262658479 226724860 539679060 264627014 841460390 236584459 81270994 21605962 481282818 1533375 322540564 211515078 483402270 360411537 688703552 488386472 863434513 551623954 792798104 522212708 752991040 578185126 804234139 6970337 817035825 444495400 632556701 176101370 351187340 896691149 395584689 681784385 278933827 607880209 390000977 599644914 326461985 633976323 139128712 562363735 410937371 934775778 71890191 431418674 846591007 844632801 120645725 864167394 563922352 390119931 990352911 748456700 339339656 939179047 283270519 514693379 393423614 403358778 18919903 3069274 813249119 887251215 894412055 902937965 196445952 183633039 7521623 696946188 807006806 272085389 266260166 375621791 6951545 18950486 366655605 426412964 101553295 231764804 758444445 998636696 975773045 842588564 873373203 41923329 240488257 486977581 805515427 868874333 54766286 926725823 94188615 380811357 460156580 20359883 707637736 607543464 84359698 709748592 926387456 885959577 381441962 17385748 329283383 17691416 482047919 117770644 310997584 765710250 697422470 761160118 631602204 241431095 639502779 982203027 612465758 772130720 527051682 47586760 790153699 216745523 352180226 926441269 971242724 469886865 931329405 179171981 21551843 32650290 853521334 571464809 276596847 358889911 536701881 887523544 107364446 514241289 471762532 127061614 378181997 988399458 759914667 206516941 373603575 651242626 640407190 162527925 850558782 295984691 679937112 63872774 921139742 149919194 827750822 251929384 418300308 404455721 199648805 831523322 548857036 681150857 209936931 896056732 246478652 961204532 988405291 235031921 160192979 629562981 631559392 636108886 599820314 334748666 342719375 320814171 12453073 90632945 390924599 470530739 110268641 360283072 371535903 5106922 613175425 719054321 382301272 593446763 642661581 596203573 702271821 743909373 435989083 384642830 727431051 959818573 984395500 114227506 889212786 219901171 799527705 570901395 391720207 936329151 925603098 823110969 955120434 93405599 513621019 304888892 223285992 496871366 994930544 304423665 6121634 955895439 177620560 931549993 262680860 561029252 611493167 756983746 497063002 116858064 403591909 902747581 399218590 871255559 915165339 253335415 618851065 595217230 838488817 766893294 923509321 598477905 610615957 841771106 136235958 365108712 226119524 539964597 887526739 240625635 737896882 464661624 680136664 794332774 815090550 850621854 292260766 428992290 209306728 313769273 523436811 486611954 144792208 200868136 144745670 238535987 925283180 643849007 995079857 882121784 504439523 392627807 134751973 218701930 32537690 403608505 879616004 807711144 450957961 435318030 704559393 238362520 695745532 707105308 401172951 514065254 624835062 384506992 44604443 46071480 538261151 352142389 198916125 324083284 855594916 207439333 474633535 498112773 442372638 882753455 665355833 4596927 143618526 412458329 248254584 657501587 857536461 827275427 19995881 112505157 873919685 324849693 479612710 440277481 849448062 768096220 284345159 278185622 208339800 945360465 669451469 203606453 461639851 478508613 795259813 886961548 664397221 820001728 368992136 826044425 175263836 342168393 814355644 705994996 625476247 562237344 747263987 89601219 269013897 152859558 635758550 288300429 41714906 2234389 894193290 980489708 886112692 424221782 966764336 240043791 729569446 894505724 409086957 893666697 684357608 326942463 946489420 862490574 790968304 814686793 715444819 405950841 942192538 504314482 50397522 953735635 965731992 473384452 330963155 84984683 835870858 940819767 245752194 988932540 792514163 699940786 190125036 467647447 381636939 725148474 773362929 780605643 824504989 168270290 986276378 998630432 53625253 796003034 990961815 277981078 91681458 620310043 230422854 538394995 369690610 276008414 359223703 977650523 100884571 457790836 636776353 906706288 140785932 344737079 841937486 414906679 166588797 899893916 949837669 789857350 272091445 707873486 371351985 33492120 392640163 268396068 774853596 567047250 166822415 265045542 913913600 797922877 679805887 950482833 243994692 837864097 661642251 789566058 813170385 933057729 181304759 52263052 387103326 896502880 103073748 71283957 904454003 559671413 290966782 249228311 96539256 110106513 189420875 484034581 878189565 941633800 231427959 489987685 611525878 435245586 824946356 114442664 413864387 835229768 863248133 898516939 11252009 698636797 324057313 450028587 603929176 438825043 555578588 396814964 954986084 304763821 817053621 628470663 546858281 73246686 564866095 725548666 948050750 559267497 508263499 263865068 493883970 356952806 471125050 811656470 148380074 467034468 179033092 899616937 704337079 692896943 388474647 831492868 696579870 981744148 661023167 361606476 905872580 384978074 569521794 381964227 609728504 372635008 68843625 681002251 375320022 443116602 689608439 608278677 281310987 360571194 106936923 605119901 469868698 441937313 837554632 406924063 387995892 159728984 27316939 507224450 445023027 59799679 367695429 556946325 574299146 458737435 784432086 461021757 883411289 870765064 404122237 518305008 276051423 16403481 411681193 123814161 2784605 427716720 596717446 35851595 992245886 926922878 127275728 913952761 7058920 428236443 613980148 699356757 130691126 102168331 176990708 562933184 414559406 792139572 973111441 132958274 986880541 338957979 139546317 93172801 291850104 542936933 555959447 672002709 102174953 765591819 2464540 912460105 757707211 896066672 185300214 877395670 965888148 698791685 752766274 751238984 516953473 281096387 706093771 918874659 403387968 355761220 219568250 919200737 840140965 815387556 480655779 431903344 723011217 972778828 1483852 598695400 418762041 86734204 717230973 553830327 176451159 385559927 377110410 13670268 749860303 9249587 529490002 944089516 963669060 65066942 562008356 515634324 508486126 647830425 459571662 320212415 711214257 851694209 438910786 105473938 702608659 562571410 272185079 174678820 44729943 861827235 551926586 647595219 482133908 26896574 578324325 897316254 611547713 91081221 379234128 950608852 887020983 555813959 799063402 827408892 831120923 420204887 444303400 809370951 791607763 316647783 986036005 426223248 726054608 201415871 749969843 663131139 838755029 966316660 647329696 445966060 378928624 787936422 308378305 683657232 499554579 925502006 858862527 490469903 482948587 88938353 508559132 538559687 425493605 929635654 398024711 762915134 387145329 640781611 95210818 299102833 379204833 171817647 897509094 789384058 611668168 554262653 511337071 191724321 998784778 879962015 437881752 834057059 501633272 219704669 569270287 275122226 645853714 28619178 420820751 198030953 995900103 53324681 993401666 409997626 904675534 166441139 658153916 480363932 383267864 578076729 997116596 102395833 700723445 16237636 723974746 574655812 247708751 419576143 225840134 605100525 974408337 993854604 670575659 167833495 529845151 480193345 705211708 878546568 393518242 91131375 662612443 606201897 979369168 492608072 825607816 719924525 596490475 530949143 582726450 853621836 626756575 151207248 456749846 511035427 975563452 88860728 195401830 821777303 955947258 277646527 149469460 363112953 176852674 955637547 42393745 659426438 209715687 386280965 599134529 413145499 781666576 948880965 228507852 811456424 956007235 402814759 995641393 710467804 736783812 93827091 974981256 625777107 259305733 492244890 915270858 339386745 743445315 636735062 459304173 212137790 3502016 128878783 250715953 368287348 538109462 141077955 62609486 757446453 303972649 159533675 94693503 259685570 266838696 941520608 198238446 39809855 820856412 529089501 869625702 966832968 317059401 434913754 435291257 541918662 158991315 282741030 856464629 984645733 150172654 993890608 829127528 265242108 859100165 288432745 29369391 542981417 435475670 887576815 381131749 982164446 38163029 700540419 726647450 963246484 925535377 611924769 118290489 11083409 655752537 89106747 633780818 543689432 230636573 908492115 661889980 854964712 619303661 520154057 143829303 165576968 672286493 714870230 89016325 253307292 487852096 464976622 657164496 692666506 387402266 627990732 378074458 621290402 290322416 750478205 791283799 40198202 283388313 671130120 674898025 287828887 186920262 233658869 358808313 289189215 846949144 491544816 702940007 273802166 8710605 217718992 485920473 203677356 560215152 686226502 640988242 565621205 425694545 115945436 488207264 490471168 477459522 363899754 652530803 325325160 743543403 224243479 616962954 873474354 346092083 262205784 917387144 361078732 447554413 391702869 913241611 105363033 691419496 737185506 848039799 251600220 172467567 495735987 275631844 320802930 276332780 655701314 523304155 79876529 220435135 69341364 661657552 366567245 487956302 543311917 740938596 267983806 158226036 786871533 546708519 214304843 752976662 677205708 682768422 406648745 989661623 316102254 837539828 39408233 552525947 222922457 145926076 519051900 552105992 346432335 989384267 264867444 747469230 703920605 763888900 207073724 949355396 690830551 237144574 323076070 465255734 273990475 82339680 641750394 37784684 530957852 254339916 346653748 401444181 19515974 353376537 978998413 719503502 690540061 686996159 294837226 569457704 688014650 789079108 631992262 592529063 72290536 970228383 516750779 525769767 613218939 888437647 347123389 594758663 416589121 423778758 751367363 680969160 594256541 405594429 448182349 519525810 904701116 127452284 11208828 923142144 967324604 770736331 900310124 713234839 945531197 213545287 852337766 684931140 810853730 537087582 511292874 507512133 713362464 168635573 852266953 439051460 181235861 284446987 740283544 107585170 116165255 655376393 533894379 341321427 466498170 450452618 711798336 576384698 598527300 644782065 739459868 817212572 753454977 263016281 276094267 260618415 700079043 109000619 36561612 879214967 71073306 90270667 676711584 53540272 435758654 366765281 498485984 184762680 797252395 700218679 526316935 272610030 116346166 480400569 342890960 120327220 469967077 630673353 297922918 811531243 651556058 754436782 202345315 769531512 704863213 329470760 536395793 161892758 256477620 901600027 56088555 445438873 138629478 652327863 586826176 362051878 583828463 679311890 738263343 657265064 186113737 753870102 53367418 344994566 36121513 151835487 683082661 386619165 195134537 278608321 768324969 740375781 683252597 555981889 141208538 339984925 728455935 26495394 752310539 761871367 721796577 62610153 256370851 376274261 418191985 66782821 816661801 455813092 309949483 769784249 584125791 848773286 878483811 674980185 422875076 466955755 284215533 725308498 870323159 90608125 289006312 211202085 771673659 677693811 957347737 981909997 436921472 989124991 518146734 92950983 434968452 970772184 134975884 652542880 620967386 343646823 302036183 687230109 279216487 456032443 685266177 527606698 79336555 287939212 570906370 409244234 441471441 641890801 752069643 395737702 715110364 588158030 992260454 317418302 898438315 676068069 55884504 94185555 474072131 322042938 696126203 431355400 423918222 481186164 976063881 848577887 451715349 225308459 677667322 179928608 880539724 439916995 445249139 998373197 425375585 941893380 904883407 529261053 55407469 234592295 237334686 444678034 918812330 588671583 877094067 900126806 930541752 22410256 228750380 796760849 44611443 573508980 802758035 25641964 927991635 436214505 54722959 673372533 540313834 253079071 381132939 256226508 710491182 762870192 985585695 538291012 177513521 978203527 467200595 239160016 9449892 258930230 653403810 999745805 895969033 383629510 807493735 411804856 412273019 677694595 580150241 580650674 989460175 315690356 49289330 640000971 800186658 427551130 849954539 39204609 234335124 13877404 779989594 373774313 964181247 138552470 559098332 356447859 685272320 62019782 777019669 897065450 687978196 963145322 716393105 49569267 479442451 848452784 877280202 185077138 840479389 716345029 46279731 432686697 282477819 417837544 785558538 49095857 874191207 788122726 675334370 103783103 309317081 518783414 208979403 147164212 449158819 73843543 82404663 525786033 366313402 56678629 777837330 233794506 318648116 992626975 950086333 520063781 106380955 228597429 242095480 205959173 721419938 75432021 276734010 410628063 922130907 887640254 212779033 143238843 610906556 860387112 342888761 388879164 973234677 42438403 784463085 416695835 508916109 219839533 683804477 887081439 228853701 442080989 870960542 847236099 421602594 956731300 458620466 145660737 933282846 454888216 604450430 325058547 787575074 958975680 136977573 95055786 79898254 475770234 511072672 725317561 251509829 17783020 904904634 35784722 364286716 293977082 10672150 560992785 476679876 360370355 28403963 662499980 793603187 612849145 145458473 437417037 732737558 782894638 191988052 345388872 768290107 198844137 417687370 767939725 170233305 571505208 279957798 509415129 154130732 321362688 776665927 165853364 528783127 146551628 945145421 991131668 892756172 950296959 900031426 647655819 82233829 778194158 313580683 737002817 801374119 957110372 285102622 58293125 696038451 355247382 668479721 508032240 318733170 760805356 237364047 344444688 580019061 952798264 982959577 915009553 555033748 769493541 408882401 575846952 81692131 769617820 970758600 367282694 842495930 322345393 836728391 439225553 486438543 71907968 974075534 228355944 416795227 287629340 789592172 208014049 12932018 499838439 183626782 578011066 232311563 608706378 752103718 354298299 320588605 900141138 284332893 800938321 269028052 444616389 160490348 37869495 767875717 601428356 46942635 821401333 77330338 655003290 718239065 563733729 951475396 541300522 32048508 156193136 629044374 306530101 207471693 696349928 682464764 915874675 763531114 685353046 553601889 498107819 727158182 987252052 541977303 129661903 589427799 294628969 700252064 592309973 733832173 202757663 971671278 40292323 95352670 397075449 801581515 713946889 93168729 570959549 557302499 102379998 491013958 910893919 170175025 571992218 263153777 575452163 875426215 237792470 24229700 948185835 384373487 595883507 430498902 49702663 46424530 944758130 747769648 996230556 868771515 634160990 165769778 832432016 296993160 630999453 132302884 877456503 388772171 609380641 495545740 224486137 364547253 573443131 250609734 185556169 634770167 587524075 931643022 915385603 247613479 722267422 130012271 307079105 167858310 603716094 706282677 685221573 460704505 325173089 271066169 415105453 197186226 869214830 219477918 114591875 866612900 119981917 50711549 656038150 681283381 701407229 591398359 576562025 656205691 619845510 186059441 872080488 747567347 173056115 309160193 318127926 857343150 846036921 692029053 409707545 730714912 520177924 630376024 437096608 360843218 544904430 207298197 266117708 977903284 981939180 876197109 727975544 924278425 141173519 914656651 510568147 32705671 468875926 880010769 623685054 674792136 406066215 836724373 594081697 389534886 241815634 873026643 446718644 673816195 404169700 741567513 341828540 802105866 744758642 11900225 239257877 759443907 658501206 911601499 387751092 207647309 759351749 140131159 162702383 709636578 518113919 613150111 854812995 228453049 726925420 487599757 486127146 657930525 11297806 895089436 717536684 148516354 192096804 245386189 97036195 789900687 712504008 987952805 219053278 219886371 477929787 326312894 287311724 351842883 165734315 222233403 582976320 764794538 483448426 390740240 787826369 516518469 273481176 493224549 758023604 544186391 12969429 71586333 11890042 38642547 796991845 144873309 115534775 266034830 555456525 289275973 179024616 707216773 369182739 71682973 991179534 44912004 529137783 689331879 910459265 714002477 734846215 789843495 698717033 358135726 252282893 584858882 825944803 903285393 763209615 899543292 940525243 641761678 315295484 432727156 894144818 288382650 277883996 719406726 76393869 447682695 455985141 337369714 168502633 561498489 534907422 285090106 61916784 775184014 448957345 797756589 589233978 832106172 558147470 41153743 756785721 51820699 382628268 431012569 386511050 783851640 495750994 281418902 984915088 690881511 981314158 580902231 443116114 433917500 844410216 232028155 353966259 180453885 457587479 734577150 439256638 210246733 155812805 657345228 408616125 525924360 525778694 469010503 74822045 594589662 765467187 245570499 701367576 221670350 565569242 273033640 751265926 924061461 481954459 548303685 359054011 166471279 993950693 496906382 307661880 224848003 230962947 987582912 98743522 998523607 527707839 688156750 400605611 564454757 519830318 177829493 305128762 698344828 423177091 759969637 391647184 866949804 499914102 994869056 348760481 47558881 665552015 461122899 488806264 698622038 51135839 472235655 35770115 575661635 198301094 969530954 481817993 81741800 773944923 543980958 769027880 881981102 377002070 616499692 571327370 793337784 319570733 579067632 705074317 36666920 322392437 939783315 659813202 502768708 723221173 887558871 333558686 938368833 179742257 701161562 836875079 145945651 394644992 664372915 760311568 136422133 527399660 57875952 799204869 102317549 161329341 520906396 59041734 70447540 199745063 718345721 623968316 100801076 703843856 708279132 950235610 535854021 472023218 995470699 464736120 432240098 839628611 297945920 385252451 104558280 503617347 85160359 82123813 275632678 499165833 990367310 152936854 704115684 483761818 34401929 69642124 928203511 780518679 514642329 833595875 134722949 230378685 523364219 102401722 810806416 520538227 304304588 483439351 675761613 931577094 998073253 470759848 768349329 222167996 658265972 632519055 114986558 810583667 485730174 963467645 219790889 835531793 409765985 549351845 741677722 382604858 783808470 658708863 185974835 721891110 856823381 803071137 905237842 759424110 895076812 317262154 342901860 18851252 658875131 110096056 614905961 882297982 332879272 765102676 474097381 658288924 430634099 944301704 245051316 791598304 13515334 736534643 332107971 662922293 489260012 215020850 930909902 683953578 870394859 781343649 149291982 367997852 52113390 304660616 523500269 403036775 442788878 546931017 254027633 397199088 765660214 146816372 766461866 289367654 785396375 338099452 726164016 179132740 938434452 423335009 425340650 662438222 658838496 469335022 65010180 849382974 76588873 515568992 931992574 309881837 974482799 473629546 336134618 391519256 392245190 533192260 570704242 541634554 113650511 323683169 978532665 869359149 424982682 349506611 833496943 239996869 550144656 805318611 478038172 848635990 727759665 639319047 236077878 467968870 498835385 189562993 296979332 144365890 405734085 940572668 707250684 862268674 746244059 332828305 576350834 348478761 999396532 779799516 368832224 79532232 450320774 254490421 309439940 188883098 153725568 499683436 949885271 511022896 918678971 712188840 67303272 101956936 125496501 592503380 702744363 662479830 475490357 997978156 458690589 959145871 167826468 687354463 932906534 424846701 105022348 353585059 707258827 976849243 754787226 489378414 139839531 493059251 294465537 252546869 531501180 922245048 349175713 492031806 296833901 358645131 58615742 175078633 122242045 245868139 725123922 739006141 502617757 245390336 415655788 129693456 377972129 744993343 224252322 763080378 978289033 904962905 293865218 975686973 557587026 954695693 223947598 550767103 154387772 489171177 867509534 919699377 194760918 643380867 665060014 336130871 440803001 71284479 376241529 834524731 230642768 616516680 440338620 736031717 784327995 301155143 286478878 516359518 396464505 309245779 327031605 919522677 541192790 318454896 820798250 728457216 97315248 284765311 594021229 44070019 609122237 884186479 900093998 540930404 764126503 66676730 379896349 325262712 733522671 458622898 437466706 600485070 767591496 523932872 157951689 970509686 383600361 620918714 689692543 662712249 487007384 722187189 315250079 253878673 3813332 429600929 30234841 172504016 255764705 915833853 93426765 528857181 475075772 986102341 113927408 182739019 362446098 288506125 928356394 300873763 628938539 918667692 856047397 809714063 830090801 391375474 403759828 327335771 49398603 541451506 552198405 539602632 309997250 447481910 369194143 181116266 210960559 410038623 44180252 34620540 84075223 73673494 720785526 108857873 184040115 932431239 635957778 26314903 524097023 739286088 259332830 228311286 26437427 138342276 694491935 458369064 161548434 763855259 737963267 344087241 877820541 287592536 344990336 769204987 765247087 236971045 585841809 40121017 823623973 201367053 952398992 26274560 598043943 923312863 608815485 117463345 489740228 515762784 552233759 849965536 331994469 650861910 578094291 946135133 399813962 369622734 193632090 559586395 752183119 297326612 884486520 892417530 98947730 541547530 605929124 120428912 966567125 427322292 907181877 967248341 718630158 137024218 565401465 33614014 377345161 753740971 467416589 883796147 973685388 302253057 438313393 353384769 82219451 988687971 382412294 246430335 786019864 726798348 697329530 433427516 93047026 288565740 870119015 127053167 159407499 442161802 488904125 88704054 195233907 187828741 193736050 636505246 497794695 20579827 89153002 920829210 665149023 92401742 676969414 613893577 472324544 975380169 921432782 316291983 533040484 859278395 114192246 692343968 394096480 554143033 388487153 877602588 203022352 730707123 394924966 675989183 282424723 677908077 661523593 427656363 310812067 268393162 135990622 916569279 583155314 505748268 905816191 149640942 998450284 181236720 226859277 444342361 729975752 760716230 326342799 56707667 182927004 489462324 703304461 31460358 669682499 68643471 981849322 486209907 883007226 117846667 14597234 161312339 261591720 463783406 981891734 339496198 77647495 987635864 868272530 192367982 952639418 425601507 494024245 418046282 690502174 1383062 523519892 959912478 987223055 123634058 317708655 687212567 142047729 847400011 369356487 993966786 770522883 610960929 220362561 380423193 560147220 276958295 974165667 314179934 144329849 633652151 949120200 176875086 873975027 232706469 311593801 368538109 845184545 97619516 930175418 786954502 755469143 547001652 325513200 370557276 732139613 806455244 780889166 353070743 410003904 794977220 505315142 410421220 287327881 302715125 528471379 834329784 461099626 460848167 980859150 755155117 342837869 573082755 568078024 999472443 752030533 946957709 609728132 251496094 17775681 536985810 302628135 656502592 531382957 421391070 780688396 768005318 109959326 331454098 326930153 968483594 217308427 766086421 687209961 27603039 26871966 901216101 879443773 812972316 129315903 20907396 861103556 165907387 820470993 605352380 493295586 708577591 883828642 925727894 679440566 404762381 226889249 575071120 259017380 832938255 572240778 598750632 401938020 344027769 939764923 934278350 131188604 77362988 995578945 786337875 258671097 567372781 121046884 92387036 212328047 120520051 555449026 378261855 191775779 801903506 569570094 964742678 940078873 453615574 14834604 767859801 580536620 534160276 446834443 365774417 166679295 473404786 994006633 590366454 643255544 887896028 802756970 128116510 413286153 912829554 762214668 333938678 346676261 41085111 490337815 198327221 577420549 280785915 188912299 367751189 769397844 586855961 669884753 790905302 387278091 926275371 287708974 740526089 393891288 316173634 717250205 49448708 582501632 981553121 943648389 342670796 133100018 66101045 583168184 83339631 890739081 362490449 889401076 806943255 750265953 669330799 79629388 370327196 480093777 635341393 7873740 233652267 229349854 324816907 734064424 793214057 173759085 684126482 689853429 564068118 654302171 30861237 782516432 197034245 70208959 699423551 753962626 540625881 408809113 664170725 47951389 141728792 237197305 120098878 572647806 649246222 116804215 328597215 21092400 908438478 254552933 225378951 651674350 358795545 236766140 213660646 529695913 348763206 762456258 304836767 177325231 676808631 778925854 706159749 464017909 439361474 605239781 299196790 652777684 430690188 535634410 301703623 757201778 943633622 623829026 107315969 698488857 252366058 75716361 557655883 154643867 16393453 767457987 526947145 564661188 399170783 73010768 562773941 441422969 309016863 58547637 153500078 715484918 300127030 736485168 962923552 892410459 298150777 269096673 883621336 313857242 988481617 624060087 766253219 726253690 33456293 912159618 459798421 304216778 985703731 732223960 796450170 797710944 92884898 677549024 321425966 494308080 761361656 822581031 347041031 172163109 47292602 493098902 792188562 167116268 375839185 383019218 373023116 109619639 735638310 728927650 768842422 837945244 353066794 5139482 184151004 791573556 574402921 485522740 480767976 42244657 461763183 362047963 730006152 692534640 322750816 472936951 373900225 187890596 50722500 485230156 511123872 868928616 4985111 201264837 4115608 59862779 871081702 926020376 786428438 933504536 220977625 81945808 94886244 68825128 910518968 93983155 538503500 8837227 166494303 718850929 94165166 400779428 346025418 198278716 38814133 31104492 822787609 711153187 237546121 708312237 820281873 332099771 169409704 573643095 104288496 858238702 6276303 713672233 947007550 875247583 711939915 704841589 660338864 559326032 847366103 35495785 176676142 961757891 357408312 883635391 434000473 632331142 226623666 905753724 635313907 310190002 189425258 603310463 293827255 996481708 521774936 71163313 779636051 319055179 392440155 75068041 949910776 615934980 222164785 463460809 878168320 2786533 899702364 543114487 738081442 460133969 134241194 258387729 821368958 472952762 746564328 763616612 836282825 830852868 766397415 858780871 483630395 334079296 804501777 929396313 172379700 554147393 844898317 174643935 135064504 638362170 993298645 438992363 284497703 223250506 299468129 478676392 244648942 954348601 418335231 562747325 516139073 95726125 417497080 705985402 387766716 407365718 912174388 240459962 315257682 406475769 75907490 775943524 712251163 554954562 745601441 713711591 46169833 447396448 379975739 850942994 90242623 798511362 533283331 417016338 373779275 637582440 518417304 908840560 213548772 970707194 460182856 835047765 115077297 114021088 794281649 445498519 426628634 387499693 231932534 68910218 926403535 202950917 715067177 749390040 996453098 953943786 473287520 893709396 792162193 302749074 897030841 599555223 509714187 26095524 958015414 214410288 858251228 220333598 369184696 495516636 27220320 14769628 97751120 534576524 863268391 118093163 252554710 574620427 539293106 281366735 100074349 905078100 384679690 384550146 844009331 292374913 535961447 23605807 982408243 221197093 420202332 383197163 319097579 753764889 814890649 834133840 295715586 361391364 308337291 700234457 319316842 102488924 283151764 846838751 79318108 217504062 533998403 525784826 848531521 873177725 627496522 359550745 384239626 162376748 819510750 152674412 104694072 54110063 689458193 250074311 920963733 132540200 390438268 316948820 642568231 764376432 849763035 859528428 271151716 916728766 369120959 119986300 503420393 391858604 502631504 22522051 716595898 345696216 863059873 757110847 170933441 62771027 521912713 728133747 59049576 355408937 873983662 3600246 734665413 899277594 818520433 222297300 938601098 815838577 561094555 356441906 781613983 922273174 271615304 6289690 176133772 919680765 756793927 968518490 540763846 868362904 549504030 551009925 705125574 479616451 877383387 287704111 196537376 997116 825576375 189231092 965485156 991206500 955568387 672672338 984538492 61715977 106119321 130887059 525222484 236406027 150258445 104800234 789440339 786646143 957904910 528661527 66331193 126694321 895180684 432165634 455495755 538419978 100124230 295888845 308854024 937282593 656122769 843192224 66026570 590487125 277221244 740919018 195212212 929717394 136346784 132013223 80812543 639904822 343163520 808480516 266072453 994758020 36586923 735037783 250889526 458371959 109889556 557896042 272913259 372763306 684524398 540611983 784510730 87862765 846326413 209160165 162013697 742684138 489531976 594264101 995431231 571702134 181556114 267518702 400132090 62198646 794018072 722468380 810204454 557661820 682372834 946592772 24268859 118920615 894262523 581877430 276334202 840656825 172599835 833624536 939960698 690810125 601261904 308241103 948047944 202243191 788511260 16268771 183083921 256751968 693880667 832250215 840264277 284261252 700379534 105517823 128485851 635528272 807838993 612752090 90949843 534334408 467051643 453956341 287827713 164573121 141310976 109989470 782373409 15979913 230426973 82048826 803366939 712830853 498417045 862804153 152080775 807275362 568212320 719754972 776244431 172927082 971166036 878683167 103565802 168761917 913444300 307895643 883374560 910713028 748494108 459780630 597753117 450414615 304564931 834646553 110490507 535843888 829323824 705876238 781861536 336689538 803300982 50637913 812146814 961834845 511224729 991522873 238138633 322376462 714055776 475895972 393419862 902252209 377550378 480215952 399218331 631925815 342413971 511700894 626766606 151982220 600767525 993450213 470826498 455070152 714936729 679238451 491537618 647593071 810566890 408677946 244404371 476499948 321083890 953056839 260366547 880673035 158176065 85028365 131778144 877322403 439233223 567854390 301645245 945958760 212548793 231290846 864758799 29125517 949349043 805534462 860893322 653060270 141394260 749678827 414157731 114172467 395885510 779494393 789062535 949249653 967684545 131582654 424143332 465506921 986586388 775201653 17181411 899920014 978083684 81324678 854819699 124665708 24792284 353321511 806663084 261922829 218694351 788827175 272147367 592232817 289880958 892267712 473553122 76424197 476164868 942556911 367550093 890967862 246809352 129973878 464254058 181750754 153402363 679414658 932627343 565067086 724074793 960147842 892665750 171598979 822978092 876025234 959933186 797110808 210406399 343483763 318816000 588223251 207364862 65728235 949109700 38629725 789089007 728476574 529976610 762173412 538304417 249983912 515696553 780231959 219507614 484452746 213917920 175007813 768432124 914219157 770647625 882576658 330856487 811906649 374718362 861651825 170831064 652454630 786994522 300792893 458219184 524398286 255317386 645379341 936199559 993118513 365913827 62183897 256458962 345825816 316792990 341845520 442645279 438383430 719798840 604670733 693545392 44935496 882788542 986507528 472928458 572511168 685026395 269881253 262198414 487722750 578003324 744221583 80430423 632385311 966203465 425038110 396837801 702281076 965195292 279836246 490031704 746324637 473359329 736261103 119007439 935962965 63584453 530454234 736212297 711911944 784526173 755580022 478922377 846155468 674153849 139638046 890348747 589823799 440993116 460538021 581683626 481540267 834531516 848482426 162348560 82755013 476453230 349822489 470940071 602125923 970674670 738092152 723686707 587927888 663736876 189315476 601264721 860251733 962618767 804916346 762765214 574688546 317543163 801558140 85921969 486792073 257207656 900428414 141388194 251703610 698329116 861069036 384848061 973571578 138552712 249943774 534473872 630493972 966941955 795157024 851099063 708586936 748782134 601500756 975767510 531428681 498730004 479021496 408410951 770268088 795991227 321612136 219651738 369272474 322542705 827401941 731424185 451214854 29931725 58664923 308983412 680950682 706398043 734387421 526106108 823333705 535622932 599779924 669382451 462184321 175102655 909666677 52100577 660449758 122100872 531725926 850816315 545008160 785863079 891872896 837762462 371681105 456402216 743665524 528334860 819401298 530516005 531634337 445353901 697528433 63144240 640617945 60961175 637718905 606288933 660909070 653687693 704993913 572712366 660038141 669391797 673445987 292734487 549951057 169101242 630036780 586199289 393807749 986731488 347801441 697555626 469279994 73295536 508649645 654036376 233342913 825175679 293368228 389014198 976820642 569561202 844820512 255355843 190255567 931757903 164569596 439416962 817636181 124978821 382376927 156160828 397434669 88345245 99596076 773533675 909200080 39727870 251049039 302332669 732991195 121491435 369884284 248816135 811798585 937701135 370346868 140806185 466573392 786724098 658679014 851149925 816603435 324171820 369507564 244158760 183867611 208399495 295506773 668437352 54326108 967716040 536727120 428133898 324510987 783919123 468576922 812386493 987750799 620516625 297348133 987547530 835210434 7491590 222291345 541028777 541167897 260001238 279882473 774318150 431934552 36435008 736328702 201142806 836717586 28723734 249651539 474043304 134594357 792387880 777586569 819208158 4937771 453962867 574005330 916301947 360558891 937978652 209831173 987757771 595112458 145106218 399701042 192410909 722614941 583446393 676709470 280226923 400394034 318448662 800250821 111603444 241102459 650773147 43993994 446157254 194180618 54273340 889212911 612993803 386651599 530964185 733049874 332932867 160965714 298630618 98854375 675563621 412788440 170439334 209628142 588356445 784374318 703659871 199840244 67662892 290752788 630463525 752150591 207464653 322953242 413448497 878582385 6847167 397468735 990365990 296874292 923829749 718932741 981171312 469324610 39579556 118022725 704598105 851848797 112287580 545676932 421290034 454166448 228043397 454263336 535671501 624951916 263679120 852291547 535907828 547639074 831358665 142702355 58703841 330044131 786005023 103717097 359591054 446975622 396802059 149543519 705904364 398983115 662509723 477646130 690620542 380172132 501792747 847880177 244086925 53569410 313934410 399983233 142033165 639874626 642621919 971219517 641098447 208243547 492707709 827729990 218619261 255737329 41764045 147744074 341961465 667433104 490659869 374927938 313324438 533919753 849964035 707622926 747265738 827850003 983993686 808603516 396412602 198528954 137959451 884467588 845200146 957297583 77527183 249334952 272194621 836059057 554986521 396261720 950920654 891825295 23765445 348360633 373124062 748645332 680544785 213575816 979227561 876611585 391916322 719163927 585968153 311086670 912832746 644208235 547028331 664373351 193481353 778467975 682175612 760517968 343946457 510541867 954095914 206495371 41547444 233430673 400876853 174732449 936764545 496899093 431468260 753995057 305304979 907628020 629994057 331518996 649506177 662636903 749062280 94956766 829496298 229777405 766524895 321523413 510534175 106672091 209324058 302595934 635251419 106816513 183299397 99840915 770868945 754126775 310546796 799193441 230158971 996042226 262839960 818610835 998730292 62931319 910357775 299925998 777413107 52702178 13115056 577305647 766621125 339979495 590180581 782753500 664287215 428437085 551970247 241866519 637177812 406002253 936890163 124968800 157689967 367613177 979077190 249888197 213511142 158484626 367205919 788529500 410087618 778145953 27988155 679829432 954210815 142658272 916179002 923300827 562620237 482959950 54563403 610303090 41609658 428078804 770959523 396385597 425842303 616369736 987007919 258786903 672488167 823464552 808211018 674951267 379548144 225559029 810905111 568373256 315130376 192892932 601942987 162386073 729507174 668112625 910575112 141082872 847846917 622358700 510033186 63539480 977821260 278170823 185406657 571553276 3893737 796409846 481962140 715995867 116375330 885942621 55416915 372335994 656652099 378407719 934019307 343835135 258240627 742928379 733777158 710473463 720293250 352105184 663822589 632759380 996141650 381006776 555297097 320098190 668576535 4299362 354565174 94264020 189867993 503295077 421913960 417075117 235623247 631391967 851738778 720566151 4777233 627209710 817028430 986660284 227695074 470617042 195756306 49671790 558205618 170051456 801662610 456311588 63616339 94175881 167950831 957790389 109035933 161681858 309356745 313112028 919870927 15590574 192512818 232787569 787923720 873607202 858397859 120242134 190329450 494147181 68627988 569535633 995080812 879391748 627992764 166938382 253146252 965390921 223348581 972771294 102340220 613520926 527623856 356002326 981951899 900460632 295560303 786685413 337493578 510360719 129837006 625454980 863070924 324434405 19227112 403270203 134776619 295451096 454106940 783369433 663673154 246260723 943478678 494102448 457715876 119456009 242688678 220767826 93599725 930246484 475824752 653336450 659428580 370187980 617627865 706422072 874068595 999772083 778245285 797749245 337386054 366709859 165118053 446858140 367861867 396301472 880996150 59485073 894648525 593908310 407018966 553049419 88267483 891775327 709320309 940917836 737742545 693944836 190760889 788039299 707558774 12145602 707283223 136236805 812197198 796293345 304963774 64764549 541566292 827511247 187826905 24290171 684103132 510761830 525713929 390870020 101694324 427188610 930966439 684386414 538388928 214945617 760258687 265588889 626603482 791962610 563113812 680528094 750592843 908634725 683441625 524742035 915341968 512911801 184887800 965616009 712345250 526890968 517785998 429896698 160475167 290817243 53810076 150402684 435199318 649090511 532705114 588184083 675549968 941183885 368780338 975046902 779183400 62561325 431497639 310470634 163949480 466746672 597098924 144604355 389630637 405068400 433525569 860240937 338467854 487831282 198099139 128779114 129585666 615385553 154402781 286040456 483932282 697471913 341960428 348959496 302863392 243560828 522517519 192337930 8023246 109881880 437912277 515940564 819121860 501471847 725614522 597952296 698885853 902876393 321709161 449495817 617376507 610556577 145493769 566499657 466188103 170590132 797848979 79380639 896824908 351891105 740475597 700886364 833326797 390444389 359469621 613511056 980054729 671546063 585986215 782989194 881681302 716917507 415601324 870848113 773689188 923623407 210959337 858333697 872355801 737451021 16857161 255216496 866997691 100306556 904511799 641842150 963728064 696771335 424670106 123123160 192561523 403322781 574521724 964239892 879531514 836593731 164508981 722578362 661151315 402096110 388742919 997014803 197278113 164082322 399753002 743207119 150600762 162191914 778317357 290164858 176377824 934833314 594088907 999539835 386257911 877956297 424370890 966972917 269592202 613373173 660139503 259900692 32673946 787655742 731057415 742870176 558817426 958833567 128160585 486428044 344848729 233938137 924402673 212874266 682024771 8525840 789239831 977118169 598292704 859904011 731550790 522452113 88070182 305104400 248260283 870579533 295267888 660128291 921967695 768590090 995544659 257104683 892320732 350258559 81506282 280491386 145206899 465193960 565801302 852885020 239465592 7470896 575625824 805332413 607394344 389167841 366299776 110207540 561578002 16205537 756692321 382911657 704544866 996020132 448455320 210607555 275309248 947972551 526418195 91557696 368449274 38825394 618928784 647594979 511977144 333595123 476115004 195934365 707661445 292805792 772680347 263015598 672001848 517723895 13444322 770861096 453076758 103417398 922842012 362361608 307240571 690523899 582674915 949213421 784359255 650035029 687229090 581366509 5083872 549182827 528405076 299299158 372559784 985403291 217222817 282571277 593642022 755286614 503909198 417667804 889813363 169040876 757246805 842020048 251278761 908474125 977741722 94489281 337153993 797511945 308822744 391290675 400952136 934481103 13335175 91281566 978112588 913567466 543684410 348016652 993849877 774330769 208580516 427811447 322560078 411038583 431269719 712268899 310937312 771114130 34786665 802725311 93403471 673166978 155574087 35682935 946443172 80448095 401903687 801742538 176851369 977616319 672762036 234014403 619383836 282909516 570975759 945218448 940086006 512006959 731324399 975033839 943815949 902607792 225458186 491996271 837898349 371560649 51068433 230081580 560868928 542267365 388003431 299069224 857264072 988111501 544974989 657279798 392924707 59910914 158232914 58540338 921389621 112202891 578040340 586956748 802244428 695369419 417685034 202983083 60731976 118644168 791322469 687035210 337831731 281064348 860532135 46239801 621244754 806805492 987589642 737924606 323983285 107895162 411129451 634337746 451998642 439773803 900151310 43126744 648343550 715895153 112756119 334917068 47192389 254130684 547878319 523787764 733593919 952134864 216330610 236492149 826115778 897658121 277823278 225937965 337240151 905234791 113034509 749646605 864228298 238432758 382189659 955362948 222900588 480648464 53381562 705512098 489638612 395699674 85151782 465755570 859633729 156063472 980940864 5331096 541956562 327058622 274181391 175829256 647342919 280672420 622150420 509153016 875438981 377120377 627229748 976658998 202850805 881207408 315900597 75169043 58387938 907195290 277890249 281680691 80310922 402080100 404933072 915448386 447661016 879526383 101041442 21556231 125584262 337313057 299414618 73671624 105611560 179708948 92779974 375130961 36912837 859618536 923862668 411185499 539075917 197321914 547419840 262537076 277009401 990980211 199667810 356835646 436032141 832408028 373511422 389172322 459973348 844899594 16568804 164045309 523049825 465804859 273286172 908840304 618284979 416287574 399955933 905165155 893477708 591449579 309608839 473600426 329673485 550717028 661902555 530329876 10845113 426334099 99684991 298508959 192378502 45090208 942452524 229508763 998624998 933312669 536012307 628238497 409255890 316817033 96792843 953618497 464738854 146460920 697500384 618516730 256446509 377378084 714526441 84581238 901390472 944663519 829194970 272195659 69346070 383227693 761187802 579098358 73388373 354840445 504595072 531742676 54215977 735234286 952612471 459505876 654941689 484822084 390554404 491442016 662852694 951983763 193674660 427137215 505454019 701757965 72443179 310348387 175959745 779936473 849273036 765295086 526695448 644356461 49539101 367672214 7216856 996459514 173286048 920007806 170654500 112418302 982859839 872257632 542684694 764671838 226753558 31423984 939782874 599964939 196468344 692420981 89201921 448354641 771688067 155698308 881995502 934840855 635068585 212487472 334191208 472558188 153057739 881829464 473528832 240228611 331875430 505474723 101935368 573511323 658919051 476366610 373738052 228388459 579121631 720936031 970516784 300193814 791336021 20903927 360743240 166730210 194280576 13229318 152580389 777604785 907229574 688813625 331612214 464530332 946803759 659036126 141669086 146779307 820724668 339673381 960148698 667904143 339786200 446229624 631826850 894661513 299976918 394563044 368161958 840348318 853816062 149625878 418422604 219798323 946213607 410273215 748225114 37376585 877353030 852473733 887081516 53175853 611220468 955176049 364355131 582239971 551494993 15633070 345351509 999095518 208769402 282181278 834750578 32973666 668271971 896487943 588472463 802142497 508322950 328344276 692152383 667264704 100095074 454701452 141739816 648178146 325935377 280484425 853476758 794877409 651997318 611368364 508888110 681402117 741465634 266305209 232600664 684351982 821537864 504166493 827701794 858005963 545347578 95164981 176922767 655947512 876050320 400502354 918415256 217103167 580052162 67000323 870025285 219759962 150533619 487214754 57899952 219872751 708298934 183552961 923009580 478363078 540656182 68600927 421689210 640450637 693480358 952123234 940129136 31313567 259331243 996970103 834990985 72968196 853088759 45462195 528246309 884294161 802750344 887612004 260786645 992250800 253393414 727742531 834866075 289155884 851413769 898053382 379813332 867930310 881904224 880422885 17357249 241880205 354537060 864735729 481742069 205184910 212566354 513324850 106176157 135385846 119853039 368528667 255347991 995015358 524593279 290732076 302974356 545253296 643304169 671969355 148098969 553847824 846482326 105442197 664644963 799767868 597117950 759908391 760304464 622042385 419526458 905491683 244467850 152664105 998272361 654744087 761734632 214798517 355719020 433755330 905723972 518630758 933886342 605157198 67300997 771402543 664657570 578531638 950932363 240609315 212309496 646677557 61859466 192912803 389694127 931934478 657023718 494123505 31556091 822116958 180866630 240020810 456628734 563802465 789106778 908832706 213214777 645840109 558160048 562021936 182390195 644632358 841804043 594565783 60696207 421630040 915354372 57345283 364020858 475308912 113179462 137348671 203950804 291748614 385592515 576001454 880814815 409666233 175798957 776669373 291764523 823888058 932991659 889081183 158996248 471159695 602598226 301147018 885633894 6882663 473359725 194918283 621251576 908238780 244725274 61900991 767288643 112271735 753323080 373997433 795811552 898736274 178064572 15453358 961215469 509228879 871429901 107288493 260918755 510811670 195054034 641963731 49488668 764650048 418350976 995824912 171909070 169366216 41623241 762671771 548035614 543833477 163075173 672967509 81740577 830743054 51713199 263190222 768204744 253195899 128869174 49978353 77523315 471016537 277319310 673947311 886111935 246842559 830368876 713277372 388090205 891643835 509771306 569359924 954982629 344719445 282438897 610753719 964160843 331060592 685789918 348904882 548574806 439817992 335664424 383802602 283457193 472268930 139656342 153213588 725882252 293676618 88888206 691296652 517822570 818521351 756638286 535365853 477560343 593273273 112977843 969824069 391198664 913573140 68382010 889276220 999561308 727264884 527370620 480669212 304556398 634634670 493746459 435963996 949505837 576699643 609757898 721784265 429313758 879911202 573416950 650902477 469260912 498249879 969434662 591429461 272397271 7350491 367500838 348908338 967652805 664998960 549598192 388057214 166729658 700273729 384696428 694120102 477373541 812648706 535600583 114602624 38920638 50744628 418778963 89500968 95545904 401109955 626804488 141709263 359778314 669734039 911561549 918137291 251158444 13036635 202131737 673470410 807900520 104321036 238814368 780050731 819641325 94696208 576151575 510379611 371101240 568178620 838894384 968212841 406671130 372815342 971539708 590100042 261235238 656682622 604434437 36595531 937370484 798235372 290020458 423256078 351203135 97216221 860656400 905439199 391323651 116067817 463639200 768065351 594682100 145167487 304528678 202513704 942591297 816324180 151353195 87990528 305223546 11961444 293793027 797581513 31610421 401618269 425530449 193847703 424191369 486491698 957399720 760745977 237461457 36165891 787457601 462395724 166330386 406688263 574885591 61974532 400055150 569116438 693937724 430164425 120155023 469464814 111127084 33281456 300447615 642259398 691954924 771664090 513162438 880083089 722933011 667029222 469480341 384110919 255228464 147907821 309294539 35442062 806447543 405194764 601708952 477512167 288715064 761102596 882770534 310231223 109519842 430598218 505100707 315780805 688053552 982748131 802207431 975499992 922866951 430910947 795548325 124709687 202896837 526149890 765257009 390341702 893021056 500356006 932634416 529951549 397582086 903799751 680446935 77572869 744765482 377762385 228099706 519308224 147182081 781753517 762302409 42517169 364726302 320244177 758729203 346151871 627349898 596497445 811696825 677439518 876695199 351567093 975939352 67951632 685633788 858102828 436536800 605291438 244924022 398195416 298725063 842088199 281823892 505896401 332690956 739031844 160309720 447787636 668405238 986033427 356408693 175026543 525504389 277990104 112715514 508055722 762909256 288272556 234477185 130787603 75896683 592261527 162313574 520784711 307991040 706914292 301812403 310337004 471678912 537962165 267123847 328673046 586826039 686832749 439301689 945160885 576237651 35255150 193631202 502330460 9264537 103594081 739448834 909279120 850920422 991365126 138783822 304182919 448979644 785979976 708866000 526014948 791266683 698692196 8242770 137846267 816106414 346983553 859357734 382580235 605347745 634086736 657480478 641710758 138863100 529005690 183828365 773962079 954906435 456622639 12464658 323493570 251620004 745504797 788056484 201618985 275762811 997371960 470371229 529837835 404628983 806846408 379991118 891967744 497697552 549270733 890299871 386811410 604473087 438461533 474118020 327503369 708476308 466829174 1780517 846507606 334143061 64213370 477062627 767479793 979793289 657807569 852938966 300832082 511638649 832970450 934201269 289376193 540905831 557649797 421332601 83729156 572282838 850256472 725928539 923354180 302174157 693313699 778925240 12645536 913152357 136233409 190959496 721882801 802652136 954126093 652955412 678714988 559099189 92707024 858938357 851355650 807832405 542207581 776385669 631023129 295359056 782805758 719245297 205414781 529767193 586475879 804354741 860737463 792032060 983115408 806630539 739507284 590113984 615911487 18429037 471006970 1368447 70204141 111431864 383262865 694585974 84707910 140028910 375435052 593301029 263295962 937300194 813260159 721961330 187196523 844784289 485248937 79960187 768269849 758458982 387715723 774806424 35453745 692285838 631528369 629964831 805083143 574741846 371734128 958341985 195796519 616050242 355985388 804106297 946282786 717036190 964426249 858685185 311564653 59373699 953076971 119875589 616786640 471556422 892972746 480024038 51945984 221075484 526093762 445082495 572384221 90353941 592864863 489974322 924713883 509824878 412433392 285057170 779539534 695656411 826540375 54517084 595674472 538192553 409106754 573984343 318081943 644818272 442600924 206143944 498641205 374903237 774262667 564232471 2656195 117498057 150299849 809176016 997443826 241439812 591160169 814154747 320674909 719616067 220586570 798238711 953275447 51188094 721991558 394748463 702229620 75407543 449333708 332113939 501009593 654847365 987984127 630726354 574201676 661234501 281523965 627189251 517573227 557125167 240769479 503277358 414353102 795755542 433496366 207980840 212137444 648985267 700407825 641764141 769932072 973366856 733086192 670668772 754705986 564451524 129752559 943996969 786801909 184450741 793209140 992674941 490013189 104814247 552182527 639671007 275106875 988379976 895407285 811049317 110158987 978244533 712801008 469573279 547511930 355505097 12248016 579133445 44751660 20974095 897869590 665074750 142763447 139608051 292489257 873846026 754782235 568767214 321470645 464426536 960282050 5857969 452079040 269948784 866001643 613974663 571531603 150501017 527002380 385640350 33860476 740369825 460899417 112273789 460209008 164567598 791200303 612582098 617921070 13081775 363526943 914532922 821868246 927328512 63794505 537555315 72456997 285197648 984059389 587061632 37224480 525305232 93867132 244853329 582546743 277235092 192864568 673528697 385799033 590618831 977366277 52178865 721092139 806306703 322066689 341406308 775875351 564966127 789962659 902812847 129366072 559756381 321086732 51941416 191833589 454140866 840038703 532697610 123592039 442089832 798501748 417104119 537276048 906782854 37619030 868157674 21235650 327801152 966648583 535046796 837228907 695546276 360347794 981508536 944414209 624555769 222513781 802127494 606969621 690594659 104072436 504392113 719035549 279340926 281460067 791719997 381930955 671404741 636558488 905920466 657230074 772229638 850691509 964196013 287880939 547199258 437111319 399869541 832922510 684522827 855722704 669923457 411772889 270248389 851138910 936785911 455468491 382271508 219922293 199435882 147251046 671594699 318681996 719558913 668867906 19328153 603010092 779462698 230303912 787433542 539302290 245921943 829249261 69906930 504050583 819616881 178859108 831098802 236137193 350206549 756109144 110310181 8593749 939392175 382301840 467354578 176294580 584284126 912298544 917498223 236731340 295371405 136293854 921669437 75030519 559370263 457891362 304944083 900934612 259583305 470119396 521462834 760316085 166398145 321908216 463853761 456833008 832983545 190298571 16022711 369859348 77092923 694881783 198130983 388501410 510598145 701374564 723330710 295043798 991173521 733231518 149091964 818611975 147870724 849963634 320842496 920574508 239453492 980524735 193043885 634914111 825989244 498555165 325977381 451479853 484480255 595850250 274230761 608747479 786831771 288385837 398087952 489886595 690673829 272429039 250866793 90871956 600211641 964367146 781327163 500824203 625841845 679116666 886651296 229934604 729977005 110379984 608285229 578079795 436988855 988804584 198458558 316580806 190807121 938344285 873595292 493054357 643692262 153076962 411017237 278471798 277151771 23934517 991912189 900585866 615874993 546215773 65426632 337145683 132097765 480120866 823003192 112562054 337986837 691397964 405805400 488391291 858816483 607359429 408596904 529521175 956879010 760227335 298838252 420969764 571205186 299212810 360826019 951884733 858808805 710137320 775261554 956150098 489330989 22949323 785362213 773903889 109879407 409782572 736094256 438679910 952729795 968497487 542018668 530197060 405298141 761493209 108134851 497518082 896535337 489875767 544593979 287975409 745390991 207263326 863161486 434346063 477573997 494746131 264141951 845710836 659644980 36091885 826507605 800010992 599017161 480067879 83066329 821230377 535759753 804486122 242787877 548550734 72043586 514840066 566506404 951675014 66445451 837469798 309591522 902186246 555411532 331917544 641004666 7373443 83608510 988100696 91355095 13042161 287936394 966596478 564344300 887567425 872396183 657562649 847216067 276644878 632604930 997770723 452305620 376886966 293933057 767024477 500127298 624985741 785050113 689286810 915936713 680307868 62374250 695147046 430018590 894256431 650074749 408248110 418977949 550571340 738787500 935802948 972790554 469208899 396162817 530376022 313809258 628816967 367271682 191616257 735856955 934688827 927074458 940559669 49261366 666592867 807397018 85150548 509675022 32789345 64682420 302649617 385106549 239682595 59933464 123472070 502853395 558398978 255654824 707717837 981565262 340108078 943312818 449302619 395858006 222628583 639397428 881140784 4843528 810831265 864583778 18877062 606564571 915966547 192136811 256755045 397229099 599933747 923632278 469671860 453828085 822021565 658960653 830279012 584605555 849682186 444174057 442832835 633171761 823105462 160118777 222806397 641582006 568053654 760589778 416718945 305779228 888472579 229879370 854603607 630374953 85831108 683716318 211719548 712202756 599660027 671094591 90447956 654628271 849922150 100589384 680610877 489190116 208134983 526446941 595835551 767094127 31063534 645848599 676929055 22186959 735869642 949808670 132602647 256956789 422080031 845318635 709078015 177458557 476015461 785289959 551469371 369609972 366076072 580041491 273342400 809632592 3126758 836638484 139629610 234174658 767276610 187427230 873143978 381580432 645445747 248869211 296377439 614525371 630504385 274296913 372263284 550442167 79660116 20618632 429419338 487608472 635487116 291500805 123885051 56733987 772248130 317487495 978159891 125441741 844123255 922596941 923094008 907677826 792908420 152651755 877762872 817508843 551934553 879919661 694260201 928664037 940243936 98444615 780309132 804928425 356707391 337660909 633238385 532223673 937026834 999674087 397653 255669160 328896342 538157621 315354360 729458770 208839344 881601052 950849352 890921065 780430423 561871339 847708386 33175480 495878253 150437914 305109304 664917417 257196980 611202587 397882134 95529715 80780700 888254034 111292411 500313863 811153670 535482965 680892896 996546357 414330899 111025007 40738813 33850504 558708241 910593639 172366676 19005135 560043703 195059547 284207386 458249658 243311015 842276490 249952033 632526023 25435207 542129698 812453345 458686718 753206440 413770974 282437934 718060018 455498952 237173834 427527139 45626120 437584618 272016294 801902710 339353038 120692164 646547023 730953708 70290966 90644811 404035029 141805293 863710563 321042024 794991835 403190553 672055981 334875164 305490065 901885989 827287254 398873801 211524333 817681431 648101941 240788782 389297942 875011304 926416126 229621993 492858327 589192257 301049383 172863398 84472731 870831308 587040046 621254975 711570833 706426302 898856541 105096267 304452484 362826047 798055639 72038241 866873640 972569095 215551129 433499910 748294047 236376792 856797337 121004032 210990135 791838723 553677772 101339638 363561814 52317630 51651845 286545392 918781907 178042574 544633916 261013188 650069417 176644771 288841990 237336637 450963014 769397747 557775223 890445804 187913368 385603260 135062030 500391510 181693936 636358326 586903382 863849867 217605594 791188750 541671928 326630630 346259162 445958791 432606275 678412377 460227905 767523011 872299771 661275305 288220288 451940786 756986200 769518133 657992530 61260374 552225275 533485035 271281636 139478955 604755794 556232404 456777190 271366803 268223457 869144552 275640164 212213530 805679221 445548066 686939244 873764577 379919743 854010053 987987045 877137323 374332835 861021530 881039735 599765043 138257582 856907053 236237736 524065171 535189224 80176615 16955435 931944402 547809614 902519100 793499874 821928568 918197578 54576916 233040902 886739922 936356558 955794883 585051451 400885229 991139175 441036232 732626205 288669713 128881867 701310843 518771932 970511350 249518386 389365779 418614624 465088595 961676911 740829523 826312610 727360850 172589956 485192614 902719383 555181297 393721414 393091961 892781982 311202228 926183350 62138814 202876911 326702939 194637611 98824872 188810631 101160373 313489830 467236904 979779626 999654544 103343014 362760962 224595314 970863434 495569001 620297503 502384459 753176468 278424319 898424257 728670272 105589692 370825210 351260348 989536623 748313692 268340350 987929266 535825307 205392587 438654915 834236142 532731568 727970026 298608069 629485823 917320802 840510216 721567253 300475504 412696246 525907546 985199474 197423803 211646015 798123954 781065560 815008708 509651414 887092033 832832606 313329542 3719346 931564422 820909079 466345460 461826485 67228611 28146832 803141943 561749987 530521617 762702903 203433011 106328497 123931012 774777199 907793656 91141253 13528786 254993765 822236922 115793790 593044394 240824863 87659757 163787351 349214179 517719753 126306769 643035146 921595981 851209995 196325512 505998396 774857906 195858199 502602357 820274455 157865795 543225459 103562930 732202283 921322136 941345611 964943551 496123883 113785979 174488370 823917154 890219666 454006853 867196748 203377073 761067944 497474132 245034745 8800329 54588379 838414827 595718676 616907445 522362599 349180160 712981018 317413599 990617085 913427390 507289647 749335536 319013340 797042108 272976009 400123812 712986715 223410219 907084237 504551004 332062627 236774666 142913936 105549399 508543858 788017254 912616715 149935818 884350573 524036623 244909516 939909796 418493504 24188478 287495584 616145211 898906201 379574949 953077439 272152262 191785644 478166007 941962083 380882341 255378541 128227964 745738470 799278023 484010458 354833457 751853438 242558242 78188235 28665848 246078522 759016889 811022221 953174608 627842675 332534620 71474115 645031840 744148359 535925772 562285301 521497216 91513443 110193147 71219601 342104437 40536857 943560287 540980093 404394751 563283374 377335713 955746868 399491601 817722939 630390343 338625278 856895691 45835702 588890960 15279054 502136671 599205271 32514965 725786359 162467642 431273704 377040918 48955414 578534077 835572155 723369637 387674819 55585000 874326109 113847249 161089667 904059667 18682548 834896350 998085066 705048578 339796166 564810984 139593331 545643565 174025066 705337809 169527161 388911967 544562014 653139165 304595322 20173522 508017832 610758014 644104379 118007199 260245609 762379989 647671253 513554498 291244913 151395775 245617432 121520608 124699712 635417849 173257655 700875043 519999601 467838213 45780875 606434041 378922397 908289589 302254608 145510913 680103559 392689930 458754049 840047598 690798430 409141811 503591773 469712024 644263198 619377914 495359549 189380487 273780043 753070415 249262998 561077235 395342746 576981828 494267604 140107599 847006404 153350124 822848939 484111285 673494333 372183681 104826930 616348828 653169705 817108407 729051376 64040408 960737671 123679788 818885647 984653517 662352764 536838093 845056009 404974018 493474448 160643991 865740934 564628721 618070746 990367156 225831067 614426542 351829007 298354501 537989503 41583778 789262799 717730073 33911589 234040310 17437870 910992002 46868974 644228134 848343919 80804388 817461280 213067536 897879036 444107169 8808723 854128448 983529341 891543303 952068076 371343803 535436272 621292149 879669949 150340636 879671009 512980799 980148191 872142744 561411727 506032863 349412210 840850301 200975322 988134677 235178648 522284585 942530810 139807385 685577584 453596717 57637471 885876693 569412340 622738097 970886994 787313357 90265254 626881229 356927391 888854604 178139784 910864663 970396059 476494410 771956096 759592968 399456836 91486600 296505383 890577702 751253108 65454320 702009303 973980718 267967775 440490602 362042049 312191600 586279469 781293747 653013201 384264393 759524893 766659328 357696031 983617266 301547728 958156343 47327039 871242153 112330135 738400445 924906676 329496213 936628501 439654091 56503119 189249033 963462346 885977231 992555522 309309008 928490278 476407735 811335514 176719969 101401934 221806161 589227781 339357711 728193932 214929033 404319546 841382653 630630170 126598017 19071592 37357681 806037896 235465327 413780313 469499548 523119853 281294028 367309841 546352249 901584929 702770009 913842864 902886379 505332219 939560270 78121421 497616009 865998558 182787439 223119307 161901708 66535840 137178190 433693677 691571774 235228560 795049931 575449498 15768039 560869091 840052600 713017143 915820594 495116992 696934690 466081958 541892612 354166393 267241254 970039575 603677097 309773578 507152767 291396444 256788854 567766357 520841619 37755145 243052133 88334142 199324430 359918047 942118038 220166227 86457767 681520070 694410133 145294633 186471597 224172049 117688058 464435636 503301388 239010720 910649264 73988604 656589893 150292284 8304022 926246488 575955640 67586928 468371551 558451157 736786406 537314225 227170484 980357594 699704842 500759716 475350816 377502564 921515550 420572741 254287797 244953039 722012278 169149127 409208493 286424705 152390666 799685044 391250759 906548174 653362048 638045171 307786232 94155507 684593669 352285005 787948149 695163093 818140495 949624214 508789473 51480811 749361513 270752004 413878608 964202427 901559948 490832145 425461880 83937606 113825380 324049081 954185579 845713878 446021387 818177475 707388164 487531860 763935264 355062813 475266811 783530653 81445178 890218413 641578363 197899017 696808470 431843052 680123200 509206509 727756716 289457394 496700451 367742194 628527185 130545665 968333380 797994384 487017868 405599894 40239107 603485803 236372833 133716291 445785432 992572269 452828671 952878663 221821604 978221356 92668073 688825795 158061452 158691627 304028933 48619417 461058978 324744004 382963595 78067563 946888903 971680016 539431136 435819005 275061455 965500593 561619205 198065661 686454401 767224246 887878592 772538168 102663936 704927960 59867665 482840502 400634063 660959473 233871539 365215308 749933363 118782096 319649176 910299408 356868484 455109910 289269045 539550829 276248588 595427823 276646275 824627918 148525971 24437619 193484085 363501030 187419133 871675519 2801412 516188798 170945353 974152160 554563243 948959681 214476153 587220281 965941402 432634887 167493584 540598022 916871204 453225557 74725702 68615404 169563759 895137647 991675021 836965285 51727675 108278771 629371957 476143655 757267736 456201162 421570289 158930768 651848613 9125886 25955398 18867762 779770626 613689985 851499714 95439210 507440635 149805431 594555737 509550209 861940738 723291511 530199544 241880022 38120118 761391961 736541900 604882137 454058824 285217425 678696123 786527766 208016333 176954281 813511194 693737416 135878784 381073813 815263899 592742766 979794690 383764101 737295280 843636762 558696261 966691494 867220677 123560635 508049065 509630409 795019740 806919677 398429675 194789262 524632621 695828991 854806997 464469085 425421165 476634979 761486820 422776267 120471944 979039384 983445259 129438458 133400630 571556817 564687193 931534858 682542564 599529450 461873970 651333865 39638095 122199096 398745948 444119948 727237522 764641620 4575998 700272178 112335597 600665998 406010351 80176509 326966720 70947892 754324866 596400334 989799540 411178770 51535910 780840132 29536743 269342372 150055809 800073705 641319022 44518274 266996180 904764030 229323284 467991903 994168748 302059289 850792306 671899394 560219068 568706642 87152957 343908767 499235696 806194254 590899050 254162106 539450413 798580550 877175375 326677734 612910702 581709766 64418209 172855487 85478442 977182488 196215110 810094674 357205133 645226888 990318556 445340302 687349157 445369804 779321536 271850696 486630370 122122547 365187343 960529740 928298559 464762538 72908735 437938314 874533737 49600355 365037964 582751441 88744139 527242132 43562454 273308773 606817037 296423431 406832565 202423709 32758700 295111317 455576318 418995593 597322664 734685486 190832786 640626356 546777074 832783778 690592094 539619275 230262524 836331623 806915696 924616794 314640997 408629858 266609103 136624400 972236546 397866994 101046772 678812764 487139332 551515056 595574836 216079626 102275807 772485689 998935892 137547831 811500464 167177910 915283105 813897062 824016103 215622450 227909523 429050161 574000494 921303625 18126865 651108254 514851462 151545432 464469425 650965782 722648729 737368118 481404706 861444644 237618269 342206762 686993930 602718762 615513765 430355414 145278515 13728319 882678079 789459862 433561316 966392013 821212156 919565756 140722373 234869788 242354520 240012415 725796881 398318005 606201066 362726087 287422159 555725162 446608754 294589295 940014243 76709050 528420680 326838321 854412348 628385420 601223429 503330914 663106901 473846614 253780765 587686674 728548631 249587683 261662421 29883461 576136146 355954444 491668026 936096888 959045928 403686447 79786191 308925592 561190709 28716794 469340300 124173041 959551655 758780045 437145971 96330506 267424488 897678154 941798159 814851741 865687268 96975483 240382040 320173754 644270700 504389904 856101811 131575927 564333424 70946096 94756320 223095768 936432068 481913247 607810011 582532830 389754754 874714642 12556659 486663241 995600653 304557055 333251155 242282627 566359323 272252160 713441485 121135948 650756349 387333987 955750281 519442068 839211075 883152764 547886307 669590666 461603570 442609986 148211275 561177769 600289286 847852701 757679965 489444632 9781176 316749190 751439436 81224839 532031655 466390431 160094749 883420771 773877251 616368933 508666399 822337535 420635542 25843893 211034021 77029265 709691657 678417384 451692236 639409296 432778063 201062904 212098185 905527711 696859183 304876687 456460116 547288853 642771021 701889 529200094 86092930 629575754 958143605 192400836 848642280 861346671 714208432 878731744 842261356 219403182 573983967 240697299 854184739 160001313 596075384 633076648 638708902 222518766 530564216 98259414 801264609 459765369 251878888 568493610 676521505 597956880 134058079 173424966 59618415 739391058 712507194 395188137 633623835 145084671 643333260 170912856 130081170 835123429 970487654 522157515 798466941 226828985 996083115 748417980 84921204 340369512 933423409 954670805 224186066 633710642 257870578 534747923 237578176 136760958 341982088 780430642 603376271 187699974 594613473 272170649 806699007 803184500 64045157 976497057 148348267 640794293 295102285 262818788 525429218 169714868 201374400 757134581 4397277 508541512 608912892 819395980 678130070 696671048 366495111 916451196 320682367 713325270 366068348 437712277 737332952 65290144 666207646 398858312 716960859 856019392 274075678 2742544 276980558 428217545 815886207 402996082 411057419 363471786 416365319 19577459 872142034 517367902 293939960 703743201 774707921 599176160 508193775 675487807 694488335 959662469 44529224 296184324 959807484 94880033 326354648 521082380 348087484 719910926 203101900 232560787 841731364 409462292 113859989 810303649 488104155 128414841 131911251 572711509 302629702 69891108 612623182 970767339 503774064 262220356 464931016 711675954 843335920 824569224 66158239 155173903 290768254 130403715 936691078 279311099 151286640 579156478 617442893 945384703 622042227 294186587 940176530 337338711 618306425 776149404 196341996 282931125 573710319 92409606 911303112 126318406 519593084 17515248 75698225 986535386 469164516 243959524 209306297 436001583 151711363 394148035 953864031 643109273 200038123 662446635 7610047 728207056 548626571 530776197 963795031 136656545 416811323 451432614 369005333 38306800 823211924 19522625 604651992 525397989 626111387 638532599 913125817 10525613 149898920 174794994 39502793 957086614 845645474 609934883 919921671 442865220 699176839 976849657 205096641 211208380 225807341 249889513 732524510 124862836 929374018 98848031 62022922 168656655 856435723 191489255 352192619 46892690 506848575 671082774 320904490 119178277 381160597 494641484 694527501 594531400 570412318 538860223 858841421 205749495 146230783 100281372 138409555 27569916 721839859 198591697 989265775 986045292 890188853 808385803 17861769 101531232 366323406 590128034 778343629 783726585 844661439 783444694 35982353 948369397 79569957 77747805 447516494 920075296 632828704 846521763 986827447 280700218 650328468 668344399 146460713 556443558 651005090 574690289 655473858 378864264 616681302 465375953 948789438 301156875 765304264 19306599 577078394 165116212 428781037 312528436 915920217 187399482 941675120 527811768 921728323 335895167 864239480 592431046 588769567 973254308 794716973 745774367 142490525 174792263 418475853 466224073 913259114 552042402 836774245 360559934 988396462 480181598 493197439 875352494 306340765 575810538 691530606 280231618 166527692 827989748 569892771 411982490 155217357 36511602 574511739 538051115 961701646 555145009 563898484 164793341 143711817 21030201 138041211 288026631 236510527 436594217 745203802 122894086 103552111 208045043 173309190 731707446 481966280 206152995 164011606 959862790 939320580 479292669 486357618 485739235 60443547 61566610 52381040 835945073 420300633 541411543 489950612 17421505 47032253 20539056 140881425 547218264 464249448 759869881 229136904 785143825 989680765 145737399 878770768 955740490 973811694 154675621 232323208 653114705 254975114 823292982 937402513 257406774 818992378 716120948 696950150 773427860 250919582 630210641 735664770 360046170 578315105 377256981 588269784 79111596 414657745 125731945 611028566 316168435 225137509 593412980 101499903 86414703 95932357 615060706 97475316 724303488 695213350 364110578 896053621 180091811 832570844 380425670 234651274 601643157 582771559 853679787 536982126 407930659 514386841 334954934 519990220 203834042 862860005 587233254 88024546 951164638 104425699 774241776 354116286 92576721 315557118 774362003 858494722 922399563 925081294 320710983 444684589 934667929 357746943 101358505 191054515 36495518 715114809 6645132 897089296 182860581 598351195 317109970 331669270 363425587 897579312 941344173 259969840 400812236 100079387 778418294 8487339 592960362 107549875 360981063 757929961 550201016 682199603 291178007 811229510 549092211 397911802 70449168 492806914 936945255 102818357 684325667 316116071 498893829 149215923 142368521 805552285 528149441 824135790 514915633 318119704 722708517 746684932 110070125 535380461 591019649 273158972 513488362 775185751 591517390 616621758 188633646 324515737 80245090 305350988 871211963 611407689 607834897 521793477 78071611 380205408 170904678 269050829 206227945 461040818 793917367 255436592 757959631 269648620 77380781 699128377 246783737 212930237 483629441 472718803 657987139 520023939 846927562 693924292 753576911 212511857 184459122 103324846 461863012 750029265 32523344 680223630 244585346 325347440 362969959 584807225 566167524 610258458 546082267 44474346 466470490 506686708 562024090 159287851 558812163 16640578 486532186 948626676 891140583 126290936 921255769 257014262 493685043 337487489 103797327 594964092 109262478 871509317 285891908 347138580 936643511 992710323 508346629 188663253 644634245 577885515 666444448 226818338 615073023 211781840 758656549 30011914 907162451 838995674 716859862 121709768 508143963 346238310 30487258 939731455 146047080 81800306 821514455 896433655 248308395 607230200 137257964 707156310 656514033 28708278 26790718 697889845 806674137 766808607 367160766 904819666 759170844 90747614 719221290 394943436 382275467 770812875 229641843 919806568 910982369 904386030 814720199 171194742 353101259 262129283 420254540 366415595 151879744 171895894 816976605 360902658 206299266 49789381 189818312 972079322 358479147 888857025 800654055 2042361 535620293 373919429 437356551 402054596 415561084 742792517 315614004 254955738 933169112 521911197 846936229 772680925 34752144 687811256 945059495 484141289 7623003 293178305 896909623 65625752 229579228 78060004 989762075 473395008 307276025 910427588 86819349 920120037 618937637 877459949 857047415 714976030 780632027 813371644 727160749 937819097 745515557 77176805 602904047 156941862 394456299 81990446 984833126 973293257 830598290 816166303 188811036 23817898 676813656 726982043 29104927 631528454 628831052 865560144 362791212 106809308 917765666 840635411 139882263 782910865 669667186 447320469 274228613 965906863 527593330 625079157 665021882 655429652 671995977 149830963 651497994 685358364 98766067 127304061 785620749 169755942 975338317 444715328 825189444 937487408 24267 470561891 291530429 61128009 564142891 614558516 966999475 367379758 681307269 691426473 40443074 30669920 115414809 714660137 176275788 224214697 473608908 6018228 470495549 780626748 812638310 676720860 434770706 524058345 19400637 632392304 228563471 153531721 185826795 342099240 778677308 45212172 57822615 701190484 867383491 545628358 371807331 765205516 240823242 77099555 675085138 958653260 608372241 914799410 825573843 543672791 519528349 727172554 937191959 947462704 443844979 317771967 200788943 374606713 502743912 835910850 504821456 652073131 532192749 143928329 536136103 78850020 35914865 632434502 601433880 986895616 626265818 359795545 43135221 146990868 72250722 324138460 810990595 366877639 466144252 431493396 418409865 275031475 814468686 18671908 629164132 333238379 172952641 890271023 943908321 411566431 410342488 944895097 842829889 37476159 852092852 377757171 398404305 25127635 279351642 222097701 87134031 621116330 596342366 833103620 334609122 237761081 274003136 898710828 109891922 141080629 418127704 746614174 128782149 391896300 376468539 132367220 721290408 43884179 893745429 244698091 327702178 753738919 395440063 631815541 464737478 126041248 379554433 355209299 147830986 920802107 686379854 503940939 635684145 682598172 582216445 536848605 880568099 3537040 894952379 910010706 376451229 142229056 511726320 495235391 341324769 805351157 763869080 572552685 494776411 532617685 621962949 104480415 450661305 494480585 365341698 333081635 438070764 626141992 361810509 494370332 446867973 480263167 870493581 748509259 32699251 798974708 414195834 336650684 293155290 595726962 359253639 521245851 916077140 422781906 66176595 121601869 295878229 407075082 732706237 232005818 639703393 615184377 307309688 513967817 326222886 228070671 58056149 598778556 46344571 995441994 446644957 885434648 312911758 854703940 202395781 713824924 164647254 567002490 931088654 464885830 198615005 849646880 115717995 967783436 652030733 91181662 40893001 720184925 464021862 761068227 972306284 804296075 962919642 251064449 513470494 793118603 490319724 166638884 724864013 691731961 582133428 975189514 284498172 295855010 758287373 295128984 346659678 402123234 355990886 395930135 641409967 244668453 324642208 794220421 200201919 107865509 980537918 268361500 240762779 754197035 35182348 358131328 271781644 901508425 655336815 567405211 31845491 644560947 595114687 265983282 377174726 160805580 575490634 680903538 99861510 816172380 985020586 463291567 397990385 987223437 109911824 59572731 756736972 513578813 497037405 814133523 414275047 363302880 145945213 166653328 674959196 992308600 468822258 537129893 139169528 449801775 707561296 60972444 747141660 301813113 428183355 643542862 733572651 991289589 554256535 685926243 869933574 548431452 117245215 260307357 114610920 538598638 42302516 138645602 423603634 563990556 69933611 105543950 117121128 142985777 182318011 966264945 680370910 727814542 856116186 363693835 528113849 137200977 903550893 408847702 938721565 911533005 213042418 646213985 677261468 175862346 902277028 449198848 607246145 517074750 799123948 895046812 840640129 171550238 133952996 635278229 500990543 671986091 326997797 800185005 655830848 388624445 848449713 332762548 759473773 445693750 917449484 956840257 253341733 274653016 983878625 20584073 245364556 136685633 715366662 929008334 641454128 759009630 595469249 535344186 495755365 339898997 832828395 718635063 278308719 644558663 64692584 829876158 67628101 177841631 982966287 731393596 630468311 706352274 146212968 897054392 260687910 302524545 569482880 84109406 303459414 368570030 559246081 995116915 261546760 319969757 376986932 694341224 202267476 625512095 656955701 14923299 656950478 78557244 975606020 383084826 627818663 178139532 889993472 915109770 899742494 13065939 222265289 766209432 612063766 833747787 80393697 875814114 363417389 368149716 765038445 885150488 252486130 562891193 589355437 260759557 120312041 746435250 878776571 830480017 908210710 532716773 771209277 68371363 416465695 710748841 835427432 305183013 212863500 349568668 377340952 903816171 837015758 187397195 358612073 619065844 12604975 515470105 527054868 463628765 652926862 744817351 143050578 683065319 703503643 310592299 140482813 552421530 880189057 902250165 29039421 547211232 323482243 671209968 141948935 89349435 129736539 384791029 97204723 2747966 232403713 57581272 871163600 962208728 406075296 381126024 435297604 89501327 572533699 543240658 554976190 47952097 836942240 65955872 223413253 7479669 331415233 619950813 997075414 508393476 291670353 920479616 849107304 24914848 573800583 150114575 598051636 634621408 150325862 638454516 731205077 42105035 804221028 714978133 412333140 114615446 225611229 360053627 69381923 223102873 118156919 220518062 630682106 125986802 977787134 740151790 525677407 635141687 258776237 543398634 14512843 345540679 998220130 394716898 715244315 372747478 102752769 303790747 695063484 555161315 781530175 440902787 717687 156096960 490442969 307351615 312797569 922516611 514629540 731559624 671240618 742143795 145296812 681294880 667244196 958827296 854767907 341048215 126865187 837479865 95197687 403490526 695021278 359099479 874191430 477430887 346982549 619990488 304855789 786806429 508085251 537064811 327305331 340488186 932682323 792616771 451091668 523891775 112416491 398902273 106669977 608787908 983074352 296647406 674015358 201615416 671363364 220307112 796559992 714737752 849346814 352878562 668430732 179461374 696331261 811089853 107794771 131646132 30541181 34029415 767545209 164977891 737875237 582103835 75985580 27760125 598690021 245392992 879883170 340861360 840095461 85855019 230770523 163841039 240803926 898034383 597471501 69330761 727646016 444321840 888352035 998401737 38396844 106766069 379823920 656082158 182914009 438580926 955062891 712322127 960886002 935805497 119895335 698527309 58190909 897450489 643783759 452930161 819596139 273829119 752546197 708654375 292229303 232807232 300399239 211124618 230843673 467182623 412603747 817571168 238041735 516676625 493746124 211957108 195075458 425349241 329497768 849594060 301063268 609433151 571466545 592873379 909067670 861915886 663772053 37815128 549307485 958424131 982196571 336199247 170498744 437377372 456291765 356375775 734909873 167302816 615358550 556913323 584195005 719750170 399943164 103854755 465239774 319041435 295861607 309993217 90974570 428458575 182646966 411603686 919705488 534457505 433900649 875473506 79342184 388019897 343947686 826419150 782322248 161030043 258587647 553902192 966886974 886638115 605111516 897392854 709644367 738623868 653524984 529957553 785816571 893064837 293164819 854288666 971914779 116339360 649788217 448892961 641031147 516581252 644639728 891529609 10799807 871611698 365847839 649156457 505931332 246170827 682452008 997912773 312252068 912544596 888018704 230218902 204771228 101530705 545354426 906051656 830788782 91295489 733167404 786268089 190878819 628835526 904170635 59525148 238796796 761025440 458922874 370020043 832339673 724561647 538153130 222893429 635141106 548751549 320220424 74165730 285987889 334379204 778272763 681961102 256304761 961212394 950973234 843996683 268627874 851855517 997543255 169186250 178453519 456203303 797352479 635048053 755716274 536285150 142923757 815778065 334219633 586229923 979499012 640199047 371138435 375391546 503850101 383102684 210406069 96099064 789218771 319293466 843010280 144209425 783644095 209164990 554475562 387756105 758196587 816413929 497132015 93276728 931542848 494964562 136069074 726994291 404215056 67319522 61820013 59376708 55522392 901825700 525908766 28099181 994526064 993049140 387690608 874714388 24932697 851542230 307163160 635635354 594627058 298163033 36971447 994841960 736804688 166787190 672708563 865939342 410810095 157391479 781830061 781380829 435813027 555639233 587961115 525876127 477512616 716911064 279266159 351956485 912905714 111377045 57223110 923084467 903190209 958736000 869887974 784306420 537132692 689494595 307680351 972719001 688929718 718740251 638116302 642467973 592192321 105979841 803671116 162679640 195933847 732605911 149111675 92128092 663856067 69330965 430960753 12804090 335853788 380239726 774351822 368553205 913923148 659977486 591230989 356256826 38874939 845756041 336441036 411493253 677296137 290584647 777274001 506504926 624902146 115363614 199104206 14214761 639693929 953064556 589895795 36137454 770907000 191709205 558812282 498908067 931270447 739759539 87694469 637530800 452482824 225558362 577992009 66775505 181732032 854423298 970769505 613300038 428839940 926118534 117857794 644597567 212116799 248061852 622269606 476827807 360488759 730514311 220873406 819967355 865022904 721937125 77977902 226114774 232039166 545576098 29193236 170513661 815643018 656724083 501062815 956314890 727823781 616551906 234097573 769150674 49317071 655599688 494752467 566512010 264451432 106518220 260670025 386378147 162396272 988717478 172790441 20915462 813199784 199067219 602754151 159860172 301265131 341173189 391349372 99022438 430748139 825668706 416173633 717476414 29031411 169755880 120758641 864785715 549914122 198382709 324616586 392203603 440936030 44983947 436535188 25863008 175535611 554630355 38478123 985568840 396663185 7345714 939164931 646316134 182220980 783363976 844753519 877478924 458388906 127587609 321957596 944124705 679910047 852312535 890647215 855198434 699634604 593835563 826267452 951527602 880462832 458841048 515152118 413255798 9547035 371672879 472147885 967058975 384317441 577706258 470701021 988986751 247036581 556253573 338454958 26472791 533224647 647973311 606499659 769340818 107731103 114639851 467387282 42827256 427036209 287787886 987912573 213401372 718756746 909285209 615873305 194565883 746144360 742297995 951436144 733809771 760460455 184084033 838408112 40349230 360029792 620005874 911213709 973383147 930132889 491869082 344845173 631022623 491794810 13290816 389254363 554769677 362641339 899656913 976771728 153199282 98985713 927982305 640315881 380179218 721864 608824377 964165070 940416297 837254026 284600806 976093655 308254645 937246099 895852420 167828932 938055073 878807379 604373647 36887846 961241634 539482493 344781390 616679913 5564099 780333237 932055519 948587212 96289519 548139788 888124881 726425423 886193601 635323665 65913101 216451773 725165627 241365907 992422764 918911980 292754052 389396130 121833893 712292489 392959445 744953844 715842914 840191207 338219272 748037679 496369725 7355305 896630015 212318084 463053575 403274380 924461195 357897379 836889754 438877816 745377310 608185786 502883624 853995654 359734525 695274730 954914357 610005199 961539952 429103988 695151882 236416174 169421017 782106359 11541314 677374458 754554128 518135235 173186121 522452847 896044897 558016550 67858084 75319489 397600699 261323243 418056087 448857489 939903483 780651967 256213357 104761736 94767934 496486528 859473731 360634976 486505170 596782835 82963514 669849857 601172149 651736771 469083375 660777699 119448554 841792773 553238105 312019670 383042672 587258256 13272958 812800238 619213933 862218499 607595453 750970085 827987727 218857652 403786810 458876597 941170634 763661413 19028361 43115081 117568195 190196964 231509504 246338211 419634180 731559005 27963786 306555561 673949056 965599634 746524124 220690120 278296805 510543793 579048751 159014907 807332805 863000740 908388644 986479369 246856204 159395902 498972090 833301933 626178845 554301232 816697044 572360349 311153163 309884722 127206249 500411973 855969555 624763829 90025663 913817963 153610533 401370051 129985497 673148826 624213815 524874184 629238087 490594992 17100523 958375896 500207179 100335189 162506269 887969808 974761564 680074855 344044962 244637023 415021343 80519619 517184952 288842609 889552302 59328077 208343767 929959537 655131902 397363244 555141233 438536776 10957934 363208851 931495420 56937876 687523149 363032776 367991878 530067221 314753325 90286775 717555075 410035760 73371464 458496196 149595165 923293147 274098485 336639084 785234163 796433167 749234866 150466972 121358309 92309676 438039210 538290776 733919380 812697190 104883382 536334795 643471718 341259050 920883555 995544385 857433883 192230736 510372959 566975950 507143667 428973178 153967895 382167680 504763859 647871120 410158060 935075048 424108484 777107658 770043426 522967577 154864299 143322962 704849614 605074735 147547226 369537217 303740645 598032721 247456850 332233837 356740023 221537212 258832977 51795480 177004314 936869408 216935298 777904516 403131406 867288634 24303192 918921289 152081429 34097132 411262111 517790356 399728769 667096993 780092952 750768600 459880258 928252160 1071621 661675307 801603744 275139776 838821091 147647471 944594315 468842386 132598576 879877474 844549995 356164874 639921839 527225909 938447101 523596382 554082363 33332207 620064440 863140476 722092635 356727065 125645652 3093269 362419079 113381234 917558375 563467236 719463609 430410869 260073345 791980811 797077495 520246842 329860371 248106854 917325611 955127557 441738156 538513076 120251507 234230955 985554749 998760112 123875431 192181304 910149206 709883461 386843937 793257217 407503514 725011762 220224676 383157475 312857208 436094034 675975532 273381356 187396182 755443540 637609843 289966080 641283188 375484666 872781640 977047193 684139692 878158168 38947215 322960562 909939588 273990208 766296981 109604905 896068662 736522681 916662801 276361646 195048720 856045753 184272454 100531752 480432862 299060864 443832172 325575864 356482858 833266829 222271744 769531965 762420559 678823228 540274041 296292539 814504587 672457557 323048306 109501561 789365211 983378672 522855236 746895438 401825766 465687393 308993534 240769857 164845092 108294345 335064850 685116028 494010923 382696959 600499570 796191466 683140545 759035497 722350155 169795172 900651825 266168500 713429718 885794055 230992576 332965053 886100779 185259133 692055399 271684365 776721751 200768953 263380396 165451320 12864769 921080604 790742721 489045428 775441997 325878633 808494851 653070390 891892181 183070344 332488463 754516523 806356461 97191796 369771432 474709760 73975545 133186199 118445050 20878101 370400070 456183991 123801484 943707452 242011579 40343982 327371634 984557298 644724153 13290024 100423744 678445519 526352197 351608167 861137795 729083225 959988937 494385474 49642872 405146999 373481058 361385094 256725888 185762974 608683440 823257786 470449923 410410770 715767754 400719920 270510129 477248092 460913239 822938562 913293500 603102067 561461615 67085867 430826796 634994487 301107019 571234831 321618055 462332514 352999749 448535963 898032309 917030734 697174369 11816384 640547607 68604506 352534686 213513038 674026470 989540664 418943463 661061211 15361741 255850064 509433964 690961380 488967441 179086647 666060075 755743208 759066251 348500170 180211060 86251447 498273743 18317103 933599402 742172021 407782346 294514756 630830860 321515655 965774561 979558580 346170677 431369974 53934291 629533077 637536178 481598693 545262678 487253007 107164267 521744796 188190828 969147493 822183225 816905267 149326534 589852100 851218154 957365005 82620832 688154003 882428019 409954385 529564849 301006921 839557301 158379635 126515072 498938723 895995420 425648360 834933965 349137291 271552190 79071530 337221798 174984425 220985075 807221703 936984368 372684472 842138150 140695971 139854933 731411168 153383910 500294284 220079865 337647387 588880660 339963973 973156336 114565877 73547166 151165192 745489345 687157098 831213231 804078684 716693690 555852467 496405648 348560578 23854692 210402796 415454689 223471626 711582734 651004151 750381304 162694662 26629350 515685317 430373978 565371218 702560579 208835146 165997041 185797979 702121354 480583852 149751935 20005812 616600942 512421648 1246045 246729271 942532481 530123780 123057160 814151105 428767047 812634 806713829 214244479 184651856 520918191 124479164 288382249 29287520 568950705 563010036 21279723 928814615 306205536 942237603 439950281 791449557 22931972 227066113 870083301 912052650 12669278 721637824 202003727 458764138 3869413 27279224 440519320 300509752 384544630 867023628 624261762 614478807 590214143 20796954 913540236 550139703 137194373 310269194 388294587 481907212 461365861 325104402 498503405 852677982 113880117 635788900 566289426 562559273 765087748 205744952 131211106 298867069 745982401 908818937 993199964 127184943 297036178 115827013 761027455 28953752 78582784 217046780 59730234 934691048 333365212 821805558 595766102 263099043 247962036 304147579 140809921 522952326 172843093 517051357 798717731 492892792 237008714 307342677 997198312 511129046 120019964 530329592 779404475 157473620 660032260 420920913 961848757 749580942 773174146 488706021 388645212 280063288 723251702 77946886 711540049 545718916 516420365 2562977 925466919 978493673 162695120 531614806 681334734 599861118 747366973 554011885 735833443 617233463 305197896 421576236 517854474 640626456 40557413 256718068 559143845 60502730 5780707 457912660 979579015 372814016 222956963 523914959 92197506 144723618 495174729 489092067 732985852 790302545 302835817 862480481 134091884 919416226 91041107 216645890 809135127 344377463 216867696 862037394 515333009 587360912 10178308 81925708 534834343 776394086 318470476 128300247 523003547 615757522 318230455 88758983 700031513 432818012 655538075 685595321 415181923 736724089 522231781 969390356 503027328 796531948 342672159 663826624 688811983 475162958 413483006 516241769 961817558 88546793 929983448 247113216 657578103 461866134 752478129 838356480 288052516 771207137 1058656 300095472 633743162 514076294 718353452 157495456 738303033 270292319 279468892 200323910 73453136 448308457 462395116 12503112 140369045 296063805 903718783 352220294 480795906 572234246 865720285 273522050 546295168 85501079 569013338 250351143 19778902 15301962 667485183 470469983 370720328 821895316 187270036 554003898 514988119 191163743 770015235 944638551 718466791 975069924 102761292 281402681 141355134 848104588 245768958 55737155 81984466 503817174 840213224 768869319 859748215 397180686 626014550 771753814 895481208 967802916 557534867 688179090 62746906 10245732 426731722 555364954 392168458 311469911 746603366 673450563 676986050 344779459 678170612 920190236 197437135 38999511 977235239 522389555 639997630 179998044 259610117 298770116 427653678 476951740 131630281 656650361 65106266 720414765 5980987 128456307 521820394 202299878 974941490 309619603 638731383 698570953 311044124 566021288 2868895 121528792 538577311 650810589 111546757 24101729 438233999 906811948 804715554 128485819 202801983 625051443 211123692 372020401 288495303 233678288 893903018 654172874 714815445 430668196 926255221 203260323 806786249 970714381 411315949 498293156 835424802 977368806 179838132 517532436 970025860 227849514 502150851 562887578 93233109 925205435 419801763 905521375 964807487 294513515 392095935 977455027 985436990 321393230 9920676 679249996 198224923 444424275 430553138 726518629 83431573 342376029 440947896 934395040 630164142 609648141 399297028 224722903 753535911 32468019 550898694 798620275 748109773 283556347 602304264 982206807 758486754 534552962 938037527 241958572 930678168 188568772 12404588 498766850 805261913 854011988 699490765 151267520 75785458 296545349 3533642 670757784 850718662 564651887 602327740 909887653 824430348 186180531 600601979 279592901 842891792 242925646 475829315 738969768 914513025 809696317 189640497 154661870 334528016 435143052 387993424 318453432 828023272 298419895 638339271 937984383 390555400 791664845 166403075 262063044 250205018 171485373 447407336 729689374 920248161 318571428 458053826 140658803 183125627 195985742 865015057 597951042 383379953 797711562 809096555 436055144 948077648 6161053 199383123 813140748 171333761 870668037 101810049 572450127 960925208 180167328 365488892 889206582 740450572 429744518 470861883 740688861 311137899 232870763 817706841 118403423 716115498 483687864 220228765 313331281 105868808 600691287 59751424 987836974 980125231 437620216 934478172 54468447 835920862 588682497 286878117 668011540 924632167 209356843 418703697 646784426 246469132 46720733 818167527 6513914 475718403 612806755 310598108 307886972 52640714 251241221 57479903 442690248 450066663 748561313 554361663 283182812 958355690 851494520 440532677 46258133 160397781 38647623 945579088 209333174 260995139 804180159 285703952 29524167 236809689 974268493 245578337 862840853 985645603 109615468 241426982 513653490 415585263 194796077 229175272 77832275 941350373 556303282 893944535 547169336 105985590 493195806 800889989 854260880 665243544 851580953 672624073 820788711 434719370 250950304 330843999 360027410 508918161 909757082 591231952 525091497 832834385 771506298 503805015 616769632 815954266 649348110 264610169 863568518 556932108 997221306 449143251 70246665 302668845 873570598 492198762 577289539 67916896 227701448 878371774 949880078 212700032 885487671 133990913 183535330 806739713 215916878 339933988 930292117 556187426 185992188 707123748 690983994 122262 544323966 815269502 303593550 294818345 688274835 301902890 923739340 953781304 768414870 39629769 518942250 582374327 237493212 121826622 885148254 123309529 696459548 760451373 428786893 577706612 837251882 291627654 80045373 736389214 488149730 49796236 387702865 475860213 559508718 296444441 456534328 511286482 530429969 68267795 264644969 423575103 374748146 636011023 782621834 478809330 732382288 268298345 250326547 898094901 639802561 699275403 921678376 97045738 441975459 736647622 956416720 832640444 460012406 263137945 369041087 677663524 689830430 577642939 976500786 46774990 417039543 675995271 535720764 549805098 735522094 676428919 51572698 51568160 141410862 501573615 853872384 876982356 972331775 935844558 84494438 968398861 275696815 810321593 630602642 429949733 127959893 688725333 83438381 15248671 624822920 974697463 175633581 540583144 775282353 764095936 978013008 396680128 588442667 19419125 911577796 950623703 743462178 508495666 105883201 63305564 436037143 2421827 205955420 418609329 32156980 652888418 818453707 800399908 862323521 855025343 217279352 574137394 14908808 382777061 154995929 283923022 220361555 209498457 211876389 221464949 943886386 229707307 7119976 670304801 194819219 619654868 21671413 341128365 510808817 136391900 884728379 1839521 733205396 408263794 632840410 344561453 377513062 697285802 1022176 192645991 708612630 613912609 452159628 600517521 539841570 600134709 803438039 621203835 9334824 251536865 964825155 297828351 822514692 710779692 937671771 896174895 903477990 216124924 541706202 184504251 329298835 358561104 265471617 671906924 996500703 899572285 575701631 311429685 558582376 399097561 594206665 160728294 821230307 506810986 652499722 137852680 672542681 602009691 258189864 277422322 792354020 289482695 4838904 90371015 316789221 559514963 446310455 151550602 443655042 263900135 603954784 975289394 295779631 7361727 795441900 117805739 344720725 779299450 334869267 753716471 938732866 961741827 353354213 67221533 336615004 860292984 155742527 573938120 913722987 329429787 95236962 454461679 716108238 823548306 554870914 478718705 660953443 772913280 673730850 545087449 484144814 394177171 466310999 840834640 27954470 489957317 38490909 347434492 470239400 507745553 107161664 641620209 225306654 983462644 328091607 406520641 603452852 456018410 385366392 32328793 16293932 511449375 298976897 976377302 119932962 895760155 35446655 888166725 781484539 368561257 74120712 7920666 189735585 591822027 391757468 861687101 240909787 387256267 645050640 982218048 500202888 664707045 894687384 29818314 658287568 434428507 800843400 375274243 178167006 906939655 30371741 115264999 594323041 104479361 984439570 864163896 299065848 195711463 120003042 213455128 515385169 290222598 622805018 370017649 500204830 211249658 9455623 925914881 712042077 403187437 422459128 781073280 316354102 402451083 376533903 614175753 767024052 442885982 938831362 296003801 237238368 143907259 580906590 145115382 232694692 16776718 860714528 528695052 474479248 465792779 975020131 205443547 572414763 111500062 156151438 5891003 519037622 386758194 628978293 870135139 560292008 767448170 789020985 979998880 538546957 462224423 785463586 350724672 442542199 623718738 592412513 683389635 965673730 669405186 500924932 181797201 6633085 764413800 484903485 434813602 689874684 312171258 240876067 226128640 555039331 491211415 70613408 218290164 520855269 609492648 223113992 280034197 776264483 3478729 690233821 134146749 816929559 25261101 414977751 363758652 474811035 305027083 283831583 39957875 452505635 678433731 419429645 647908029 368908241 474554250 321798170 385327190 522748034 648450306 35360978 814239166 148414270 988630806 633760448 466828277 419458678 891869434 17356282 294330613 856405142 562798439 182169081 56737076 357609073 299457264 354059183 769245401 550053730 232427201 990763568 656733712 135049339 43158857 788204044 651581894 926900559 284106361 269740220 168403749 729259740 770481816 365481303 9163585 471327627 944159506 238998724 614517766 117377734 985477934 191113818 831833935 440613050 296179970 596340615 367895564 138165659 665244551 265970370 973977249 617863224 717383112 210255976 645778410 292299075 265423067 645740970 397575679 897974544 752948415 739004340 471939648 152711804 962398603 978676111 942990900 253682718 297236879 324507558 961433127 516515448 243040042 73127359 591212614 816316100 943853583 237488739 444499575 489409361 529897115 214716191 944642744 96360753 688472580 385650793 67392859 731973189 429761502 981461278 634624008 893754607 704860270 375267082 719107377 98980353 357506408 92550183 851537448 803664972 970115065 411042285 421907293 83114094 152590396 487038910 13714914 324430870 979921953 528603189 823642332 472330013 513000219 871384183 741809669 661219644 69940649 992188887 146300575 536446811 709234261 560803999 623739264 599111167 495745133 851872427 601786514 678937012 737598805 286131797 937086078 356363203 921030437 341820145 972697754 309180434 248019902 248866416 829380153 933328651 872459296 693473717 131922849 441085839 226218212 278415607 172688296 259268498 465084166 270974088 511143757 403937427 121677414 408363714 58759494 452833647 837283572 491303545 329260065 467460359 403195906 605682389 506545042 691321046 556497344 809348318 190342160 485787937 561432207 422490011 240129977 208250731 729746539 691556426 102446963 391762661 831584741 546967428 557586250 135956875 582204141 985839102 553767220 302401891 109176979 485800959 49113811 518132114 782528499 868130674 949344617 241802815 154989317 4281908 271953628 907708132 800652198 874550827 696831869 95692768 583354112 836722447 546714988 855490239 195752402 81068781 466725921 161662006 887952873 213956734 949947394 885432053 235175482 291777515 359412505 515193311 92760233 755929024 333815082 915538989 24429763 923869181 291076871 355992167 239992412 682875610 826902014 940631126 492490949 816838824 266555400 149335140 45729911 187251454 706296391 955828576 852715099 740889243 846200619 475767222 86112131 495619647 1279502 18662212 593118344 919055541 717714716 998649440 141175453 705338354 353900766 272724263 729339740 866334800 607778019 826172075 46582472 607188732 815750185 263998310 758701229 35972739 134480489 962608316 515064205 943799482 61001277 486830487 331606186 713845995 701994376 988120577 897589809 703586264 641367491 922873439 967644024 36023218 99779340 530419259 222644237 84031309 725042615 984760511 537828154 603981891 582072041 573208440 179928387 164318399 137619879 830219373 65307918 306300142 589964722 262700400 228773438 637485165 593088866 386110933 600713299 63538347 686806233 156068268 566423635 912887784 875512052 598228420 342182607 345920889 641533370 341002198 875707648 808075016 944735449 508174562 706854045 782443237 501154124 775175872 405936941 86650426 697686045 814805846 517256729 986903146 12088054 482522910 557409744 563533385 678434928 971125853 688377837 615622426 219117224 411401689 594117859 675462474 6329719 939394133 252163811 200424958 619238405 31318299 613647606 9662997 788214827 287893825 998691028 606790015 456929431 770127970 82023179 795152640 652930190 185045867 752136792 442550923 486221351 32619806 393098806 164969899 950989584 690256495 767106507 19448737 438137509 766849495 122579104 457580246 310499765 28183142 214922207 877226262 456168878 985323004 30955966 721723404 277711860 757097352 441104614 352928842 10925874 14857236 420972485 948934223 811555937 850381238 15975484 652711147 801290170 535912032 738887333 228614907 786529437 686528779 106651099 660113842 72170606 48916307 964779954 684669482 333415092 264324889 661792372 975679794 188764241 334277639 468074816 369984459 518882912 934979182 119303660 475149754 32345054 827081269 453148153 625442893 388508343 287092832 415466423 81357634 64173965 39689823 159895204 231346201 57214223 982815719 293600542 618579963 931999817 47387008 538312254 229469987 75129244 436246264 34094897 130599440 764346974 592979527 693420206 749179279 899225841 23506422 147730271 100266735 252030203 721665484 50597201 964871421 164643138 970522173 594588287 535999441 643773682 171327629 615731731 989949550 31578729 489345282 800282724 548770153 288956242 995608598 860505894 230906634 453993902 658472571 79282764 740019169 426625489 60074594 753932808 160476848 994473617 9901439 360665069 191452929 578030506 789172942 962840540 597799023 775115574 127616784 426617651 733776913 232656346 949355100 126428290 850377716 346220863 467617957 13886075 174333310 240221799 645835017 775066897 481174916 404650062 437356589 885565780 345609929 590163395 506174610 560487645 202198539 814277910 132938706 363084354 526964595 95530906 242957439 582282384 161773537 638517663 212645600 225563829 914223531 950609972 330052900 86649772 60176945 486913350 700521969 817279215 254486863 819159325 961840348 962831509 228370239 247973007 678004882 528236028 403784798 240893855 3788444 545823470 396455015 537062771 911767436 804998944 443737245 378393117 590656891 19420331 524137417 430337624 390967133 451951716 956323089 698167374 775700759 903207907 931022442 507830325 41676470 906103116 661189067 148558012 239574646 835454639 485709315 184699291 60289856 643742182 146365531 300395198 117124713 998236554 808700598 767629467 409447821 691547646 166852690 15324117 316842379 693749141 791663270 515058359 87591989 283607497 670564305 414099416 702230313 501206803 581900589 388708433 761351872 36539627 17102979 747792237 490517023 937642548 586783180 431731192 145917231 663820943 437679957 551596847 597780402 356543168 275954720 680585771 887377409 406201219 176503504 534705427 452659034 545182836 277396149 428096548 55479448 626993718 564986027 832442599 992812711 133905040 644143340 210966676 392699046 312615796 66878768 633341015 29869370 633204399 966721280 464836908 398159729 866579167 213273548 324079758 109273368 65289005 763952931 493876888 184772376 215765661 880477177 607634469 804807583 588608780 279053419 251404771 42938014 224184535 137864444 198315322 485847948 522880129 659755848 720429986 235628680 756811535 726367852 82112668 346062607 53345713 761606043 499196014 421622543 170871241 973082901 234237513 130338274 505003822 388254949 781790873 932780479 264398590 61794162 680550749 156978360 868227511 490849037 752613564 589125940 739737251 520892764 786440844 624028600 205645993 465031259 281043050 566420471 803560466 463479930 199327466 588581153 69627 552261950 68071282 528979888 6246332 459383653 465859333 21608165 412177068 778037847 38596248 792281254 747224711 770722539 444923530 938405470 237790017 582194675 364486930 715893888 925024711 711125545 944552766 805856296 738772764 569090727 236192978 159955944 206689133 673265468 424126444 803058017 267010534 634695882 352717460 25223020 623595457 203015793 656217729 983821999 870009673 105539385 943043500 246689150 325240895 343749985 396099448 74315683 200959701 347932013 582296588 383223758 512145277 398218070 599475951 909088797 713467261 124770754 533392783 149371647 595393450 827040958 881526016 828203533 922835654 887362402 806461901 133754141 614992863 471016811 59892654 909097989 751896678 523972850 138728078 344388156 430186609 300613869 61816527 424035839 659998345 847542207 140860468 655720577 261930787 660767067 810798347 383171643 508344708 799088815 813803559 9470616 356739251 348327375 501101172 621384950 757497068 554196645 32275499 988590408 989640623 926528552 847466073 222556895 359310040 330287658 545732372 562260430 952171492 605020965 42698020 445105118 75434428 498379705 483181692 101261199 630303017 201405800 996710133 762522145 704854866 131592596 752380823 123786938 408319008 938630856 195096461 891188028 226887053 743063817 968872106 214613110 132211575 403734665 313045465 897695425 645151403 118424623 583073263 32457596 841568123 642711385 680393662 425964242 960129182 639079409 282679261 84536901 370473088 867350443 589303873 912088036 350332462 563084692 735531149 93229283 574010256 533286259 333958961 90319805 233768667 477952478 129619086 922204387 906102198 624677789 657526783 455834967 720249735 475294997 696934977 609701585 998463291 968416185 477822563 933196293 144416294 841171815 477547802 325696136 679262464 222128294 939871718 342329629 411797026 55935476 957760870 464608842 437724941 928209108 579980932 122269589 941550015 476506061 684754955 938584330 765782609 262696350 839322473 946216513 90090148 633989604 600437159 236362732 807595014 547670070 749778610 654633586 108216044 471424758 602586360 467319718 286200310 261861297 732275564 39615531 463248765 862063879 147200996 831740370 440326509 83170807 657172125 425507034 558192646 35117125 52172536 923246541 196090121 250135073 577690017 528649112 531813243 413128765 86911732 276758341 459512751 166814133 325313891 946855764 494677336 827123709 211614080 51917237 525646985 140839002 621554546 9144347 120518252 260118753 92229584 648066678 1352439 58672234 126262859 996518295 493908308 999478909 845424978 137624210 348703303 794085553 738247132 448793349 996041248 637070579 509418282 499868406 97848044 457418359 462158719 892527082 774207814 605862369 42750514 814253525 432240438 794858150 29154060 601812017 197891511 259041224 510750637 676879934 292987626 86059927 32188871 74853290 68865669 743823390 184873704 92488445 793955160 937217440 836258701 729571010 586050968 982386710 729901119 657011040 984444672 720947318 742857752 876672514 831932510 923330364 518058684 543157307 39438097 204194135 653262552 745571352 927473677 172048589 397635238 706291179 716635550 97655071 628128530 517391945 796854813 423220245 750107194 247230087 686738733 89262390 276442896 225300871 918184901 791542437 430059961 917080837 476591180 87636874 657368118 769706514 965977149 56546369 844767720 680824106 942840599 423776245 657966498 656939037 352520181 162491845 311312970 932344710 554451305 773321850 753709615 778304469 993036852 320896767 559090249 534970081 252990190 148557090 533044544 296312280 723912885 302511339 910995039 959477838 874767083 869320180 168526385 306022564 844706507 750014902 689345543 508964026 179996998 275260171 305462467 195515217 493847851 333193671 924720683 576281000 266906575 3386594 41791398 276993413 825255293 724627590 719392363 399280286 104847122 403534063 341603147 547140143 418142770 60091542 63026176 281408051 888793776 900764467 790132887 467689595 50623304 460193210 179383014 762586230 212252463 33142525 695177098 45659001 562103683 797683937 549127726 710100096 219987675 524945739 610856963 127274626 602857235 73601530 375156621 53507389 706948702 232851529 536022572 675573103 830822701 110912861 287933216 13727223 633691818 592111111 688779477 237159187 66596842 918993430 726860263 635745873 665776178 671709200 630784705 351849004 324795512 984236306 784265851 267795747 645917143 613393403 190798202 931338716 691254382 717599362 415145271 972041556 75462099 120734529 766089355 263083633 55100963 79607782 708465250 665510008 904458192 523559876 126665234 678586080 192601719 530837041 235570979 167911367 961088952 940343655 771804530 319846568 995877115 906471459 26379004 262537904 674132857 270492573 305088172 359601984 287953783 445334642 536350323 660784258 612596087 268499643 198342765 179767791 134342037 465848966 583311162 787208595 432333833 734421073 472871194 961001218 864005512 425464575 734711551 283161252 774053943 803650801 830102237 965103706 949018783 944215132 581915237 469415561 644387856 900624865 932220459 956749973 496269864 695352510 182774734 798929274 506237417 729242942 918146245 803024973 232009172 198067882 909501381 600701594 571267573 687154154 743222254 414602379 183198699 949156159 224876252 549301961 114945063 591153745 338384989 987902878 4401888 831970999 876505205 680516995 573627307 565273252 587109304 113359189 20867659 490839351 225011409 30538701 647572744 31198687 39276504 262948678 778818111 346071186 633602661 342922735 139489507 60963958 699060639 876466337 521670208 660772023 405037881 354954717 661561983 424572882 378704218 353775925 415341931 624102589 392517352 768886694 580000563 146805496 52878768 414663687 851281923 452150142 671340836 755163242 780323089 602216690 516715023 55968625 453356643 348956690 476207790 329961250 751234147 868387567 993605960 637892863 160920300 13198960 108721335 566286226 851209496 420961478 281405969 391809800 419306452 194189253 65583089 449003910 49910057 887141032 295324828 987738721 544398569 978048982 903497392 86933164 945023930 983021405 533557909 195633278 454389387 503276091 458388979 921854232 398923351 831702882 464570883 150948375 658823442 46196601 627994121 409986313 544519504 71163481 443398899 114009624 867421224 17193632 560431429 778283633 693993342 659407633 257203238 946659704 848366162 943338760 733138188 390624556 766968222 503139916 642987868 520460787 83588340 248676203 667506232 733129274 758938022 279180625 287701399 466508055 843424048 794639946 400244837 229163697 660383420 268051220 700014505 855461276 71137310 589958635 852330850 735345514 157177792 578767789 561271586 469235119 661838897 558323270 174957427 469916024 315717778 578369865 890867563 657577222 390150400 668871119 384380048 247025300 825248816 487195295 924723630 500790168 493426117 40040224 151215178 236251490 345359679 563006980 300077661 751171519 256425308 600406574 594960133 280679549 982662463 474098635 460705287 55206215 349877341 329214068 966426705 741793440 351166651 346804923 377617594 250844143 16038112 612168341 688738890 272126435 477941578 337231970 743314790 699166106 4603979 6774414 848320784 608424826 83547132 147532383 496118395 319648202 118196762 21646893 676537097 582949636 836382432 239289976 429632506 887526629 547739909 576360552 70678156 517547856 945482240 353353170 613252123 8420617 806624707 946791716 742233555 311617752 21006559 174201758 638555528 427038783 334068487 389513550 599310392 354393682 918450664 53545506 400193091 74231560 671075067 26731506 403589687 695850692 169853822 452630027 589004547 307049008 531942968 47934805 537996957 483658151 908494284 335926454 854468128 959972251 970504478 356419241 57822062 681448236 69988097 928394213 714022579 440080126 793910617 287379018 742640841 688593634 904581916 492208781 202202931 415751126 111246512 295395627 718817391 728120767 702820363 679940600 729860550 769864608 310998334 118373930 927200151 666296620 417796518 382378402 31392896 645481082 632625881 183001220 955322855 773604540 619015583 341366543 120876584 653074877 804457686 467512757 22099042 306236349 736262732 253764863 391243684 98342489 917564564 287668325 392167687 308453287 778222555 513652124 440564152 95771081 581910098 772390628 64625358 602271477 872854586 285476103 986978839 216718267 784535798 466848479 492181270 154979243 821141674 354266080 527582319 170342567 429423018 482994484 122327273 962707369 251756783 36260355 263004334 73158233 775716055 484267650 128371210 839912242 499941611 316877238 547871193 637456507 424403663 884380812 233883428 67961401 203736370 923498113 615441949 413685557 561244963 287369489 517677743 294775099 401017408 421635024 206084341 721253667 754844324 489238045 448505278 950301318 527690996 126397852 145747859 361032625 331322409 124045503 88842284 686281853 243906798 427763283 443498551 854171350 102651889 423359050 24751322 152393085 648248469 794047787 743702438 937844589 370172759 562529725 165519423 767385607 184495807 71184879 322275051 153486745 445363409 552811203 798825767 36742613 570621800 586612311 184147418 977282384 117526837 378331033 988051453 700987878 831162213 259295499 159629221 760973417 959157063 941326333 863394652 131036895 116794820 511410185 671796311 256593325 247114901 229649287 196215994 291085013 372968051 246745086 96242549 981006790 549548618 620276202 966280179 549561143 767054996 16794955 54071926 715903394 436005062 522815400 923784910 308725812 379444484 681307052 480227193 446521351 897771683 741436129 103381183 838369279 640292206 774105905 83582187 505124094 349792473 327872728 181171879 431462720 283933851 610139978 275452748 806117204 302436715 82409404 297842661 860370609 401264865 839752480 176540228 677225022 462937037 897440475 768367247 629708854 797904655 123697774 475930079 282978732 735260758 666231250 450593624 915986216 482893497 57840472 506452135 119033538 455352530 944670678 494294587 116884295 394910175 902410863 625499193 321589501 60027451 8153451 464728789 42268269 673327840 63403565 301184139 855813917 529160223 906236522 583239400 251465017 472881424 645884647 563056385 958638667 263865380 119533567 112975299 812677186 154033266 96355160 242329160 343182470 903607232 117847073 884280666 259348494 433486371 401057749 74063220 690632555 470228869 797343576 137766252 955632813 795030832 106463449 461845052 566909070 553511334 110288840 594849844 262782620 284949493 560288042 966059291 675075857 590705558 722499325 294721968 545899569 341366576 714576810 117504520 459710092 702654809 512205876 252576875 406295489 525041781 659007200 337310934 180109318 598471143 827508068 358672834 706536915 632777523 859141168 884224901 79623999 380287975 901229297 252296993 534278010 617601400 564591327 437369244 517470476 630148166 854315010 409148759 936968032 814681428 206931282 877872894 860609198 774848950 818046478 235045788 260541540 700257141 504698199 391840766 730552396 547138352 69941535 650338085 671854452 923782267 225505983 124644823 810826129 233539365 915272462 815997170 308524791 791875489 114816019 15045731 452102653 971367742 698311929 835390781 109970238 296514998 424200799 18183549 593235017 922884620 120981071 264334318 949351723 789317168 852444163 347774740 970012539 56561117 163411912 777515051 67333956 943622368 631875923 108211236 139120035 822310632 876169485 569202394 389727077 439344583 927866629 999515056 152471112 85489116 463003874 619057161 501748530 804785231 368762957 424145918 355269668 952572101 577807383 684438559 86138474 379517597 195911475 902327173 771118194 654991650 995957442 988959257 6632151 845414313 187394104 2817154 698301422 285565561 249827206 971065564 937337934 257547641 617395989 504606358 967152442 286222178 538038223 453037585 854288530 131940795 628851141 450796355 88020183 653513233 352979904 539204545 362947799 377976829 808069089 584136671 370511247 999191508 290684426 11024303 219267324 762756868 116865002 77283814 996866258 167726293 507201774 517312611 848279508 920457980 447935816 367282850 748713234 73390625 890098881 889094281 101867512 418614915 787613746 578489221 564577527 367569796 656808121 705806198 383647000 712703875 660687100 979372497 372753622 584324097 161867686 652623572 32463850 304534961 646177894 46890915 64406478 705264281 35086185 920005019 532977510 707954095 288291341 532095424 956637410 399205206 699617029 618623487 347320371 458351049 966217363 723315123 511187505 568098697 134879689 564245190 698405 223597809 431027198 69065254 464910122 14464438 58763936 275874818 813247597 149842272 231238396 326657519 550081824 775377697 875146047 301985552 433849235 745175358 941793051 145929268 121413979 71444829 278335925 145885509 311946678 655178661 870894796 738508946 794980004 368752676 389753230 162948015 450833854 312643278 755735771 153807301 832032993 824874376 138921175 444676447 81867644 948454202 588195028 240513115 447183785 309028908 499000973 337815824 976792206 5481702 78929206 790292761 860943602 508156777 993794423 262302116 743462420 628351134 184871950 626778517 346598379 826516768 216519014 257773610 949482926 429209824 432540068 261882248 613590851 741932455 975762317 3940137 850641382 976868040 328733429 813233203 934979844 408873436 694494013 987827646 257227440 769714467 386698658 773211789 453945186 788801558 692191880 645493856 73446274 475409698 976836024 666629494 780743594 149772968 431444823 555640200 383238455 796517592 771630042 202095872 961418657 523780680 442242202 256727980 934460069 144944518 145062776 604984187 513760221 574924494 414678274 658510807 313363351 844632641 95660053 810670472 669265484 565783114 983223841 784258173 69308414 13421741 701511097 345867209 808212699 621267934 420669163 370296842 155076219 338831362 376959158 865227462 38001709 544520620 696265996 146118965 773837803 187209610 850059025 992309046 943221698 138426013 152997349 908324078 18648975 897160397 130124724 763571184 770662821 252230594 429196540 242318352 986543514 773828797 142830765 661588386 705706242 853710628 339152673 907259662 345824520 719787090 412255192 814080684 752172312 163364325 565434736 625416 211800032 995607687 741646121 288331325 534260060 278715052 504486422 448772418 844064331 177666852 685350416 422459919 419830960 386258213 931905201 160270894 646332447 629540755 538329005 378645298 794902381 627714551 343057845 585627221 289598929 62030357 786274051 58325453 322358117 978259354 421329284 731142316 509479030 99720634 883710810 694091889 942271271 762228301 620515808 290666508 542567589 587876262 989808230 741824826 653722271 443063611 153593118 936906503 144511834 256855949 282085815 34489963 245165874 3361464 821291569 134660209 502526416 936619444 821303056 385447759 381632891 278763807 443029451 394577958 129854614 262646099 3005567 186187339 110260068 567554944 841640038 429911941 446070629 940978145 448240534 320288700 467049448 904196545 918568233 957727974 456965268 17959347 410311667 418371832 715164147 366179057 408025835 972938693 59752661 239400137 266089018 234188594 115951410 662535453 946616392 494297501 125036728 908742828 139655752 982646029 514567176 633925237 917394454 301827547 130375148 328426881 316139723 937025602 766715684 820427036 449643565 286440550 874680854 339090523 132344241 856485442 49338902 202981587 73676416 523739983 992540275 693415595 859913548 987421104 219449222 752839308 722375963 501627993 103387068 4671505 767636060 749744167 818192342 821415716 589289035 594888973 62296022 916916752 871082281 118313846 120096239 875147843 508786813 379209805 206911697 638925287 865045265 556470385 823446962 110658460 714581275 616949277 690548818 420962309 586884250 189590525 215922970 498375556 15454350 508676535 285832880 25575065 700186595 923615177 137108662 922183021 453206927 94760380 649994412 232360167 13621417 118396667 601023637 651840224 737093244 778600729 428644652 89206230 548171984 726198881 642220362 733583722 796703950 453494826 458347848 649307331 283965790 563754316 210966967 825441426 529439471 96826436 108826137 96686270 834771457 656108215 926679105 93006759 820202865 337311272 280406800 470217977 883517336 553177682 984536708 110048359 65392460 971532349 288468807 20675751 528572234 100377890 952373990 204845784 546809109 108096463 275526902 977989804 605147295 521584270 29581236 291400049 312954456 704357012 285944604 485874945 415955379 683632412 787604040 466233786 958702169 80527748 258788669 235234964 237904356 493628493 45538065 502263054 236359260 407187759 98159254 433666765 512216716 53680551 514911228 558625631 983885725 55491284 911279985 382961720 583491869 599517122 990025934 138076191 475070748 533050610 193018866 49416934 520920160 134564283 604637118 503370315 74055221 229518550 705600582 304615421 804447702 515105073 189893696 865970952 447077245 544951642 380797790 632895988 665872975 550040973 275824322 306805452 956721473 460198778 272376022 999883693 69842867 652698496 54956129 590553594 424896854 381680773 302453915 640293559 176120991 604445156 693546185 424351604 458788841 961163235 109678556 628764057 992470871 45156459 269382074 590633554 267497426 996693689 99695762 973573200 527786622 85414308 923988584 229155984 310025989 545399243 50782256 722459902 102004967 287732984 507640139 83956460 123029176 969545308 647921762 561751539 489985312 110353993 490021916 262051974 117471967 980558327 17158518 694151348 249418008 193794029 882778215 90409508 458810038 367158742 335950673 165690556 260138263 852320908 122354422 425948101 80651479 186268968 402818586 671198515 675428238 403528501 812851357 286044461 415222040 304396449 696902069 978863100 54399706 422507842 913808071 317868358 254430521 886342179 258508984 676504664 117586145 591185940 741737261 80755831 975811970 490351823 983474097 819143561 128268860 498664341 482934544 484153964 979264360 490895859 96093630 789319321 485168353 756659207 339331885 909409502 979543341 920326290 502436636 749352446 78513748 643196598 918170376 726055372 748508092 264978753 327553892 58800889 542613987 131914050 916301422 126727881 139118586 523998547 925550673 710758377 463446692 970958548 981717916 195883571 819191270 61506313 97330905 221064169 841860599 146157232 160505543 643901817 633651578 683741379 200565165 135459563 231644521 554986625 474911620 230325671 481741414 826532865 176969677 593149671 222100905 574854994 199692337 776586143 685901822 299838470 598318401 178238916 733107361 147614212 851914949 727430223 739058520 3978637 704353002 585248408 42071569 248891010 72639927 592878791 632514553 521478078 261222359 384137425 149612967 176566150 839063671 7445328 493700611 214094575 20829267 778532932 662073030 871736112 386582897 424069845 45953234 607329429 298138178 51131983 14788427 384339439 303869876 222953121 91968253 289491511 675921364 768629971 218765941 185171919 958305345 872771846 960019569 105331427 814251800 891328020 580242523 42509002 322479396 569269260 111411321 361609567 803361477 281805344 319857914 877730619 100866681 246056968 312607226 472202829 930772594 263393245 134866264 58314030 590478320 718645404 346958113 360834577 321685632 391882852 630755308 117650099 630899982 860831017 6738112 534199457 60948960 656729955 251409441 164677711 908094131 261426886 547578941 959477743 833331165 320965194 894574006 347904830 475770403 704134783 346517922 463620174 303729583 828761091 492676305 511211250 64246605 655151127 10092239 324424655 237382795 825567252 291889087 809337058 342487899 805503512 481561427 371193548 153954762 223803207 367316639 199365252 921581558 751122943 558059825 558147627 322585559 131902113 487787371 707548038 863174650 521966146 647536937 514239909 999900711 676376041 903851725 584170106 330236561 836403296 464788786 386761015 393429009 182027365 55487762 152631970 725960785 63945706 532518920 122272206 184809282 691076301 324148688 379537229 81867008 916563021 554736408 635756986 110905497 31937765 21363642 794412080 606558719 905097472 842754951 583760106 534435090 950015907 236520671 704426632 448729071 928426024 784608617 497628820 512078259 198592802 63779197 406511433 522639784 499602556 496731413 534968036 628532590 346793990 154720668 751167378 432366317 397645125 910597251 691667837 967934725 945145935 904553514 482744606 872520705 150009567 570702831 403111486 904998183 89172298 648222594 417454119 736007158 997450592 310825883 907423709 719705479 629285792 357926772 47873306 209901758 418048697 341220748 185497602 936462073 67542507 328785491 266745197 536948204 978922437 937622486 976595197 793036364 936989428 231260734 158639372 96845856 979712046 519233910 255645200 264204224 699516219 402974356 990783893 405934863 672057504 150366622 668360358 737812863 761921197 534679316 129508531 960786235 442788405 799948109 724114690 718199112 755478111 466582151 908029224 142332949 709058011 833505407 355394359 585167153 627724699 591974366 371875185 646437780 540873346 310735411 583464591 443409631 618415304 295794018 226128239 502410590 162464859 761677896 984683742 703033061 392013521 954135026 718789249 155272525 738339098 858849423 420882261 135260748 177913109 527984548 311104069 873349353 383811449 886712066 954712035 390377239 154904186 795952763 708002326 306053610 700577943 13623341 908410482 249371777 280853952 57955009 146123467 916659176 321022193 819702180 38200578 743143380 918003614 191471351 752017080 372833851 303672391 718253075 641265263 275396746 902914535 257756602 640732517 478982609 799207065 601025661 471529624 189580405 448007040 397007932 519607015 800166152 360205415 329507617 912801779 935412204 992958444 232444723 221116167 484796876 971936946 990724725 293809690 11754543 734890316 196441017 893505568 565070637 790738259 957815552 202150505 495564933 194681686 102856748 169333718 139793973 944249635 8704096 326382370 977494224 479902763 956866893 898008647 176800908 980679252 608373934 602821216 734157979 472667996 361493208 737594621 300915061 379715813 581828191 247757240 452617589 348073928 953259552 135515628 425085572 639025932 84797130 339330012 714169340 659800530 960470431 296573598 445469490 630176113 600750517 597523973 428853926 353279382 504234780 855440943 203911971 328447812 825627422 932373654 574291126 983612775 782242153 236432440 959566935 496081443 250439337 368068081 600454088 52616151 960877143 41498382 690502993 299705718 45196618 572118648 39851155 958789454 662261421 57691955 898969392 8909244 83374812 162683348 161072240 658562068 841975799 126530173 491118430 442791870 622597360 53477301 140553683 751341069 925118370 473427007 120652391 226255863 706082988 222631208 827074563 827198392 173403259 253888488 956961399 423527095 242933911 289370086 682543381 218774642 255470991 21907597 247163964 602752411 121292398 977418251 139908613 100739907 273821827 698440387 184232034 341277385 75178193 44932989 190775458 802055538 275477502 582378562 974078910 541537229 99108284 201161877 788463742 741168927 656797462 985252883 87503971 51727721 719497850 101026486 52793150 210432197 124684521 505817789 671467493 593959386 146318449 398347447 646097956 331820173 494132099 251922264 241836203 898242751 71840183 86955084 904186824 396158724 999562457 119197686 950072939 841160476 810436306 184760104 616697520 491832229 744476324 202243388 619009896 662339530 809480308 725671345 277899850 327096129 613975131 727026149 838272098 997005185 914776654 158060271 180119469 961677048 279638811 208506658 416852266 608166195 354038097 440360555 90259056 876817473 771528197 45071338 739650961 838637451 220113680 884444631 554196873 944797178 689795023 89225658 128264700 426207608 882265126 46748066 840866709 848918985 626425443 444571693 782594292 989263460 464127691 29277551 403914108 465001197 938470123 955766395 131863416 461529365 108046515 746955717 620578794 577591205 792691106 196760882 95526532 500928906 841302534 119321095 561312067 690469740 780568831 553678020 60389910 713306800 290262913 131203490 288798032 210090112 528108107 521637892 703263427 56001880 90588829 374161882 552829267 242556149 535125799 352502511 880007863 436439161 629371254 68655960 754162371 332923444 77783759 504416627 102324002 529509360 399604901 354344597 484235600 192568870 369085196 555523953 938469646 504129640 430143563 287902904 733714853 428792218 269383035 410514824 378634559 11566789 248214958 76969961 608165610 410991992 608310683 667497713 252013308 8184535 81381351 466432487 766474148 522582608 871698780 843242550 563494997 344724214 779770262 555581081 360674562 592407987 243829383 217235506 986882795 117466501 531309876 735577245 434012306 793766556 689950878 883797778 385098281 776289641 496085897 828178753 549319163 133543319 370504119 519960986 83480897 403088608 381547407 246570421 263773080 709897347 636403006 297357701 228384256 263565672 514322143 471180337 472136499 699435759 477883883 227992032 23091344 217200685 962026999 625020336 586919892 562953384 248650589 236822904 391281968 345156155 230669268 172501377 521826418 918974395 965431219 60875110 950253459 581665901 968845717 981147331 354332880 348819186 48863721 779259401 846267527 285004683 736936761 880331262 826740729 36061337 338074177 264555490 638341262 124089756 597175728 819785778 235540953 467703377 843386662 752342515 137900734 955303755 900507594 294389944 182153414 179147033 323468142 574320375 862858743 574912831 243699415 313065772 338767684 272823429 465299855 453763965 30402895 635558692 261036280 980042682 944628860 123207050 683786805 630186129 246468952 557933576 429430675 666005054 136752821 122611510 951347226 605955546 314750620 141580888 596678871 806290558 708881806 372090321 351567382 526091508 518665451 802281317 665858996 101627478 260442417 287892152 810040760 425161261 387872639 575619656 902149782 339495665 701280730 8090181 780430226 920264627 299217497 588359856 691300770 641739239 893890825 660547439 588562060 727852953 912035975 406120995 324334420 155975072 763636177 112098280 269987983 690498612 229156663 983231375 515250454 698226998 363388637 757043793 934359331 401118505 186316834 668535208 531072992 110783638 901437128 621827729 108306254 703268475 685857981 543669674 59849657 491638459 582585962 515372565 70784676 510432866 551724215 776640281 562991145 916982124 261542468 305521963 363668369 614781949 804105943 378684561 989816614 50133915 776875840 628266572 21564618 109463524 624437010 601123461 993425465 227534794 241010868 506454239 366714685 780498504 895373087 405753463 405492216 925929695 67731585 349814405 325263808 899761377 657920788 923810914 334892761 469978262 561233457 170356478 98348239 951664591 601987789 838766413 80117962 907433153 343669934 661190050 278117786 532114911 801817026 533499131 335178532 539608783 555752337 800939826 5414394 382571108 87918958 664747197 504582891 697898824 389665014 86238519 534362118 11234854 908163301 962807223 832149403 412250650 84100553 139224789 998593695 252401120 590829190 113105795 894440478 527432723 981857713 872832561 378413331 331051106 707314251 697103150 96258605 466805630 492943769 788181552 567037203 452563242 341089868 838846824 190570840 239110108 578501611 10467231 656322119 614391022 893568310 89233558 615330898 680486674 698185634 351107007 782495630 886413558 671365822 657252483 86581783 961315790 552510409 938449628 365016911 469846031 999772904 690600267 474625346 845906974 674218101 208989826 172206534 844655955 504796047 470018251 852292063 255345679 221089870 259193734 454224810 15082851 847839367 482303496 213898755 920061146 134036562 383828321 942292697 336809796 839984332 671389635 810018780 530153684 537209252 593157303 918034314 661468947 329289165 665484705 812496767 343883870 577522356 35896772 120432015 160289625 944670533 471733997 387400874 962820048 737570314 143008768 759898863 453403363 592483144 62069661 310800154 411903713 807246910 709111490 27153439 922398696 687982842 563776384 301801566 282977449 312866857 298623282 160461780 180510813 844569386 53313229 732223382 303202968 738151928 992014000 171613571 175056293 695850910 898492518 509476247 151803914 683504527 150934565 192033662 599636686 326401388 690972751 100103854 283443452 9699767 265352926 189992773 660569155 341901316 701073421 283693054 208248933 507204078 907909891 488989463 145898616 819598582 991943322 957825597 919777287 54768067 772355130 600588576 739858917 126277296 332391985 239030679 454165954 689780126 971686885 328980400 196707693 138164961 15019916 900672876 684632901 29517505 194552132 651279218 175268264 492834293 676653075 45506278 247473793 616056455 71969877 775334496 934572621 201064258 163660145 967276390 985327075 221147130 821834642 89100102 535937536 591007551 251372070 355306660 521375552 339219678 1762442 723306269 653711804 932662400 3648503 522606399 967425328 936304731 738911400 139396359 70573439 296223281 776529389 724113950 53764274 113619988 65225230 480253334 939286437 94518613 921696669 281538907 689926201 249545521 190810953 365280435 385595898 904037937 570396434 489003206 783586951 145832823 588034650 823034100 55597823 128812323 697849099 715776332 231429713 131426122 60857153 809495696 82943798 841750075 194416490 903385893 415759788 920601789 789618361 954966227 99822683 297441916 748546411 479003760 734364872 697845797 221900300 630061138 746755496 429877175 567325684 817050319 356660370 641425320 641787987 359914322 497978164 753246157 143929219 998317863 70326713 835656157 23406665 64134034 868617774 894332589 124349327 216143914 436803129 426150651 811501053 509127163 155553806 118770660 831400298 103939877 578214504 626447303 935751386 574677100 456756827 781925687 658506591 521363154 536984677 580895983 434719039 5663448 985894434 777178997 506887169 942796923 426719907 408232111 496416923 901766674 565034329 994865448 545868996 610424652 163210762 143250779 236636404 930773927 861951075 894035820 124592324 188575338 659065257 789478024 766454715 361720708 834289264 167342229 865850796 709666943 51064567 25738835 880573161 211709534 869889140 517358390 739910523 877684220 910920655 795351084 655854425 174583187 246767776 44658180 871943260 627071325 864805395 712638021 16888994 614428190 73257929 423024362 984846603 4149989 695890305 532813119 735632913 421665837 407974178 178054364 189243949 550774362 383344194 931470839 677291932 77985017 933981318 575409857 583701357 46975221 910945912 190018246 470457706 293955646 439189920 286664575 780939155 882038176 340296324 125655042 112408609 169803401 174067959 472059544 403149403 433810230 780225945 741560489 90672435 429299036 743502333 266353138 198988000 475755935 932206685 166224380 26496149 232012425 269175432 312752740 991654812 199051395 420863799 119534899 122923093 119723080 741706143 479593219 596542409 332420205 343085896 177305641 477309075 748885686 946802937 542337443 526910017 668122175 322136489 183529355 400117131 337121874 916619944 645846695 955100825 725071837 359961393 209560607 495346983 752293495 92667739 920489288 138845758 271789842 884124470 616702497 635701657 435444702 32415066 360948601 973993807 752396565 562384580 607612586 968533629 961006894 462052510 946338420 784417630 877963417 703539451 260454974 24762628 678565904 901100942 550530895 979012523 270452467 949931583 309882325 818201151 646009710 984870093 751571724 647605376 772192895 208773457 808601051 523896145 188656684 514197015 573974396 849463403 172924931 282634879 769690092 97777620 381470325 150223666 889145437 741136640 783190413 453034743 640186387 347878264 717944995 474211831 843020139 416886904 186310477 978020786 181026348 199836602 360252772 662220523 899649563 683210596 787123516 433381346 857182839 801359181 813465056 427239013 389128009 49977083 247572786 815303520 615751674 26583520 207260310 471967948 683061299 319228153 40564422 489311515 957536676 283380685 661945893 469602010 198412141 258634555 16887771 257669158 689004073 206020418 411495244 696347388 378860078 487467725 502464426 465854902 554783697 930168066 405570388 516840871 910230540 909861117 21983482 368402863 941539303 461238570 759395108 887592407 343198043 952729492 413342673 838576183 714744616 532228521 639538668 100955360 692554578 477689310 283948791 863013941 189974651 540436410 500742612 715013401 914871629 503631354 661451982 441725195 513864725 484092886 350574550 621844532 595009467 780307244 183112950 650861022 150495819 864159337 526856298 804061778 125275917 74508870 968659587 636224112 346491067 33832546 327838608 893108102 924927034 749937454 175873511 942012093 989101434 454716111 747240297 320727757 514074602 728843192 855549897 332953075 706341818 940033229 349466996 144796875 814368608 60010574 631095485 613040600 725671484 275878257 246252260 186033129 153588964 85288860 14827282 694018215 869302448 711734437 545200331 368412359 949627324 202611469 583082063 775184770 909777113 663104826 60266644 707255894 824476596 181372681 66297388 187639532 582071294 468328129 943775874 603975605 70178882 967741058 203160520 999203979 642297835 11606642 55449831 108915449 248852722 309716557 615771221 689096879 213292846 295323096 859280930 405823708 175473174 730126770 643918718 746022672 580842737 824623164 748667496 202646108 736765207 523724316 286180665 652032824 970270744 684127375 464922592 888798622 295694996 212081438 571113274 10070468 81690727 170320621 620446938 380807384 699452586 100837277 795118932 516316537 555196570 915346332 863300643 536192604 860309409 533671177 347982666 597072031 779092457 423867536 985118192 76097576 128546082 177918003 464404624 930276706 584268649 721693381 163771126 677897444 599836467 675947976 351258259 934458329 822484220 70370670 133804396 332195034 391119221 430817539 125492753 960054725 865057996 558239532 218703474 619696512 638646087 917998678 346522667 655274605 539901175 642278550 159989045 302468588 946316665 285133759 162450582 752919699 614256165 664312735 202056237 390947313 728510142 940358678 181287799 168744141 409684743 625777257 730240686 955495265 266150918 477821913 381438807 525343667 180156478 692586847 443631805 517564663 332386602 607979040 982346649 997922859 501929267 348347472 138763724 511229099 557309476 75299730 508981534 702693322 871564662 48772501 581612794 480095079 753397270 958091133 663012908 517032509 235465268 332888873 246681772 829467978 672102721 642759022 680805610 11408117 737233296 848526942 314192003 782157457 315139657 51108642 768917255 119029504 693608680 8255453 149703922 798152135 691601629 780317909 242012875 772969456 154586537 55499975 355896533 95839859 206284560 987000567 841037838 916118856 62697743 772024605 809860286 757811911 953618051 29661812 3026338 546080222 518306072 562535136 565450032 894600534 342914133 311480184 393457445 360086394 781315791 980903361 979581868 20820434 984849737 204435832 245348528 495430965 115938457 434082964 850760855 891080190 583287298 25434250 752311148 386226662 739195954 212366260 123265394 319770765 95914518 506986464 651452215 726274533 253409707 42115175 319167053 115147087 653377441 493257058 124104964 470045791 277671075 966867128 289160399 67327322 804810115 568597466 499911144 217959279 672897458 30700952 70869 58499014 353034933 515753572 946243770 58563844 915098492 696694318 566962366 799736259 176023976 405489893 792704360 387534097 77632252 292189861 495391215 469228924 688226089 818230252 134031626 330980777 121919012 250750602 307454464 705591153 436136887 227877953 990906426 217193994 750676053 761677919 887765787 134169150 227574098 637455405 18758776 446965540 624208771 469305435 836939969 196872979 491796321 944731580 93707468 908041290 328097787 983440332 443528825 725541949 332752940 22491444 32541777 241258821 930930670 580464248 696095378 640666036 231761705 461196796 564313471 208992325 840540265 176722116 403264393 312644030 336475548 867593125 588809297 68880143 354480487 684408102 929773055 817124569 357845886 798966460 692028595 500039837 354577531 270367635 656986128 580883521 648700190 907746200 110602195 519371348 135227450 927689866 624655851 743816041 612987326 367588112 424043529 579907566 818204428 882458241 948555207 776955585 523319772 561118704 104305037 121200829 147875434 314894691 754825804 811809 717257048 328070639 677393953 106012120 129936823 206196318 889704094 174232443 415127579 972435613 655340439 976051924 203624168 229783659 704059817 294174999 68641513 608088865 162985318 425689938 868994369 550589223 657593265 585969682 228082660 347577472 244691097 381557886 692320135 88013785 577925994 364291577 977057949 543014611 985943865 167403920 241086483 857142450 22036744 748924162 468742234 726370154 446412405 888198004 426512787 901687925 426386193 359054809 462735220 897753357 371446563 909869220 523375508 388956321 611258430 673696822 595617866 42914227 310838932 547027923 705216613 887422473 732693768 204798649 187019144 840235033 506878824 475070201 676374581 535207129 10410737 650732292 211702243 22034047 13048489 969864173 589801622 449668612 959975788 474561927 40989852 524033071 523037583 813828277 910692917 486856793 786719566 119371555 973966093 557393930 539236457 481632265 462241628 953528430 254929772 654985589 539830406 289749879 910891313 687570213 359845459 78860581 829893579 744495908 651775721 548952496 839192082 156329711 796047621 619192333 494113558 744231031 50987102 318378374 281217464 148058186 646655201 726968282 845143111 98192449 547815849 710395951 974596245 641677626 845761888 719615998 33895296 805235700 357160737 686824944 42274636 166513471 472118061 926974793 349679724 1926977 297884275 431520147 683852596 806751000 210184199 865643160 983718060 109769190 106239560 76892118 532595678 279805712 971765299 469516402 999270566 596772670 831551997 672631367 562801325 10573548 773210749 626437466 910519282 226677172 921572169 439109105 840635212 811962627 319222330 604894181 249699848 534503598 929560924 144485165 287589533 250687995 500073947 874672134 539313533 32831729 904322364 909994825 502544985 656919737 976927155 864303011 928643647 937185591 56820043 254257037 439812688 581865362 433113287 523471402 734176879 45427776 518267726 373879892 389459985 809980601 285504535 956491189 340527008 438276940 338719918 972250769 352636251 346638359 533794444 223879294 255546139 988606701 385312542 194099673 240541868 56547603 324378194 465917829 51505145 224167696 138241201 280989176 899532154 653382629 968393032 735139487 986021319 665471706 337871085 220059162 557069580 274842357 14316911 12744289 812950334 523667358 96030556 733392985 911896125 212511388 217738585 701940726 808796102 2804834 497882241 39709310 241876118 849346215 813518476 873633162 52281676 263612178 21469897 162035013 573731367 27661148 808006490 50848754 536826704 835650828 221707589 579102473 559340481 78930391 667529838 328065235 751086982 685547006 412501379 652282444 73960759 155795506 578637160 855069709 899812580 948595474 989466146 239813870 389584514 258804968 223307902 37224171 13748849 409570025 659508986 969938726 586314614 849726880 394152405 129707432 395572476 838727861 637840960 268536286 231796540 971545253 327252597 596544414 488274070 992590316 997821501 79243981 35248749 129071922 324261850 175677393 894497717 900828853 306786026 200772335 925311687 793165342 761785096 763615103 937571133 448117664 492087654 145133399 467323096 625263217 671157873 146839408 903421876 423478901 389589190 668252084 660733689 398867053 616454692 789918377 958896856 541906390 217226496 258344451 780676818 292686055 32662123 980358237 706924520 794677262 717204054 315237471 5893468 485834997 472878282 453757251 800547054 560077319 840897792 662199825 955872621 508952281 501646814 466677244 994680 175316235 608863857 701392188 852466723 567544923 973373793 422663729 667492837 184592980 629750547 647873817 567028801 765463121 137044941 685940934 225913337 546716358 679265332 119593325 208890094 507337689 791159654 53488481 328413574 572568214 281080666 420952268 628599722 483599346 922462630 281680383 10190093 235709197 974421986 91906520 945751262 929816614 129995964 437155741 660145978 202264839 661131304 731089620 449733045 99068235 148601276 75079283 708619958 951201157 790446568 493972966 263815279 210090171 313881723 692187971 327438872 825170632 710707561 828242777 287500220 3057157 320869490 597846796 637886356 581781746 588131022 422192989 329839516 874086746 610247311 504745545 936679658 341541942 646528222 435754527 471944024 571820950 145875688 336183255 98793512 723540264 449316828 216087812 754872132 992185573 857692206 13882077 169974261 626878234 93530333 145676499 665578679 236477666 897964603 162762704 83976333 722538252 100813879 822963942 116241192 920105901 145346973 648050137 63117272 977153574 876514356 624473063 743666093 499135048 183865015 534379719 372816371 960568522 506346158 986359142 643208763 992881424 947953550 839087030 526440059 835028190 505119929 480133612 416449895 471079410 579750572 583833542 255117151 763660472 772586404 133607155 763811606 720463339 328610952 253718354 504767154 115772412 194605124 621986170 552580751 33786656 261571227 940678899 179967227 136345595 792733324 193730258 630045260 508431106 828660306 547587667 562746684 205396731 833448028 790584401 381692526 614414096 610855677 210763927 922178441 399763879 522075312 377195405 682663032 301830840 146006700 84330833 124781000 541084352 458800304 391661385 72418465 744377176 602534695 850586192 414504104 19325431 438689489 463902374 292808597 390535879 274651198 247331340 692624486 113329546 35170921 787537844 690561260 983997910 923684431 558196365 203624578 306363876 487258415 115487301 373022873 72770111 551469379 64919228 962345500 185096966 753977186 94019245 461743540 29449170 216107678 612409027 535727764 264167189 33562463 80014480 123680505 702420922 251663167 936256585 145196048 674572836 158547094 638458253 305840847 967379790 379958604 542774883 998971720 630164434 573955784 399149230 537418262 742757127 392540064 524011796 588283631 428387926 418823497 443242887 479840701 861286667 254285628 938218223 738835615 557375230 767577200 925592134 809614251 520402127 253715616 379528329 777817472 807492387 597038351 419136977 992596884 329481371 1862526 579028761 552309155 809915285 882343141 184521297 912287836 153221198 283958954 699535750 684002455 125120316 550767982 231285758 283698270 308749576 44356013 464109195 327769175 709642967 577579077 188924546 146716042 774632198 250439374 522687369 288569785 436324703 401200773 230643045 737422338 343565112 54170836 624530502 10934622 650083864 705373710 617116796 820754298 535394750 253755597 639704555 329454643 42096899 102120117 920562957 376222691 174639792 629486935 442973902 523722163 135662170 573212066 936749439 981354924 343083919 422692470 989864051 737622435 595349548 795140331 8953437 202103823 440510699 393760499 892705503 619344031 486824713 634730322 148480249 930758737 215452702 32049868 350737753 488838962 645473898 677368166 14390734 606586892 727486036 821374074 319570497 501013232 115868139 802255343 415279549 901225066 844315373 154176982 777544898 45044258 336386025 509544073 63749671 363360102 543243749 434035728 102924262 757603006 214107909 316775157 921001743 64270514 469591829 776174362 583814270 981756387 119681057 118218318 906893186 914341273 25940980 350403906 32900697 50311802 112760297 789015064 612342015 715444341 705753659 950863834 316211724 394458789 490600915 488506721 898165014 257235597 248309162 576950082 698661259 704919085 849740160 194531144 286872925 274095909 6304952 127779019 598902989 982242536 144271163 803045840 300482257 769735410 487066886 759610530 835857312 679133330 246593817 705927824 470849070 723422586 230352709 52532462 619173785 194774263 969135019 739217014 601101774 560017091 671423775 133618189 869032522 333441191 473371552 594693178 303504391 134597465 414625883 179894062 41933450 777170548 54362102 849995255 593489338 958020020 927796654 465183794 721221239 812416995 621235648 606117480 158587271 101949431 429127291 57341856 192885259 674641397 5759002 941748628 120583366 862538853 106753045 27700145 230879409 949040830 862976156 287608290 110071705 417672173 927760752 184123239 979306011 163638261 502518998 324243405 625675130 946029506 109608652 403042814 896674928 262303593 91465795 171257384 832744144 1383959 94863641 746674876 63634148 472554157 175897217 265029298 75773904 401603369 816740226 799499000 472041219 403668470 25460038 18805254 329583817 148034479 681965623 146021073 15144205 147454578 438806300 649321026 370622532 995342416 457495773 213021237 220889790 167599138 807308257 435746888 29086134 747482189 356805610 8448603 568046132 218333869 767791415 668545971 107151939 200857300 134536587 460813372 890996158 664435260 85529911 96368303 376842122 178213435 339151059 592927583 624196055 158334936 350764282 179566855 949422357 494268610 997381094 216988054 870391272 288348741 224453704 822378192 658684781 387713354 797647953 873098042 637473316 950837152 49551671 535591755 476333374 461238860 974910863 86463400 572795451 322364462 713050246 724142124 569853187 276414477 105407763 685586771 624874858 197430095 820747525 326924898 848765670 423209599 872087409 76871668 497405560 718284891 947696591 823072352 501525052 464847427 829141566 325541397 400417032 993357935 675199848 483922987 988225679 679815493 251533382 463891851 422224599 198590950 82278431 976899926 26849379 837182434 339804511 658029210 229765258 362472284 749928185 978227022 449526390 922580183 350220892 214357775 36548273 650119194 967430742 481798125 549796204 514840053 378948699 265550281 110066699 895041965 860168959 402359145 700358755 622409387 1140930 980164082 439136923 731370060 626902924 129313212 781310346 960889369 635375200 105388692 551805879 341980201 71297844 983124435 4702084 911418884 937338570 793170041 345847958 316101013 724629005 264946092 991178583 151431070 220470452 60757016 650463670 683523827 909310956 110718380 525591720 17617665 979259673 51317399 561736233 362678349 205473078 47563647 867493095 287581246 38325233 494355362 629217958 24901448 376787746 910423062 719301487 899798973 99004130 816453572 634209939 151156223 175130247 41008013 355403540 531845554 28460802 104922110 190699140 329488806 922850098 273992994 805521585 963764834 932604006 269303926 804409088 276437675 254910007 12792900 65054054 623224879 618890027 338845359 624194602 202376307 165776006 468670285 177057090 92561041 490109483 328186007 977539150 643628354 152148436 15848780 425519696 834777906 374822672 442219839 986894489 912838974 581017315 644053602 108931084 938635217 328137752 184872114 709977662 754878264 370569642 445563991 60109456 429661945 404770289 807193899 925599497 562722722 176723644 66825763 483119498 979598679 122146248 944795667 444859407 92631367 5023828 901911651 457339653 478733483 748010724 495112919 676067724 378552863 198792690 708649423 803263486 326906477 451693620 257391080 59334106 308975701 301434062 512023451 300820732 708014631 664271302 209668841 271932846 857038253 756878356 455153058 420058777 61137622 540194366 851558261 405648545 131471173 215007981 870084557 727289301 209204509 936584809 358090282 561313987 630299937 185704457 956128791 215032784 998681310 377557875 825216077 139551452 270406565 768627634 110225430 790079300 392702581 610646259 895308958 899412782 664528998 326153088 681757334 690763668 867470121 819090011 469375905 702466356 552902764 190520323 288470318 684174776 843937037 212910090 10286456 617340930 434702454 796594693 689982406 109901264 886409071 699594013 790167086 793536567 86161175 560917035 583258860 467611957 969486092 552694437 651442204 106022388 960688751 236402371 794797094 802200782 972190895 327108557 896627582 662086417 65074591 986140595 23230728 412609656 827857698 276182480 253501912 958420740 875437343 668418884 257006564 901181208 120956042 847437382 470388683 441685958 645529741 70100817 153215794 345942597 641460844 608830586 328795085 848888756 211075893 413977961 352006083 657497866 379893868 246553210 955917335 909204663 920444503 105336200 948952265 329022922 384084401 840889088 908723855 956937841 415647250 431334626 357717503 380057581 151859909 974952551 967500891 223493207 387258500 261683082 115460801 393511243 802307867 461172483 888784116 171010361 494246716 16077488 659337374 645983270 346493187 492217251 242311189 113599521 933900923 80746339 86718888 599761706 403606083 743900628 968585725 633090296 850781675 495978656 336168720 802127338 787495466 360704044 985837091 618257334 451897267 617556071 91336508 377553024 409987883 372778166 575251334 873963423 215084191 591986276 973395566 641221988 954132029 472244057 333250148 986169424 804976630 429957484 172050832 800104201 734716689 697840641 149667635 195900593 682370875 532963085 325830462 313511369 357727759 487222133 583241446 738008545 544679400 86092724 493355786 353285975 327383704 226880654 408295807 968821103 634365176 800280527 213743114 483997857 453538522 325449541 680637409 195599153 685310560 915382015 400240222 35993663 65146358 41301776 16896339 545402754 978522711 98722490 247852858 313126467 249594795 320584261 454490852 208274274 214408571 697190547 775064877 521004290 644621 118750122 719202867 537600217 560801971 721775861 479459950 787584785 142817605 261850997 8507714 742496024 309025309 66969609 598319373 551068621 690311029 781846900 573952057 533193936 817852820 521539460 854974644 504882120 52607917 674089557 927616323 233187239 810021149 475878304 806058193 29546578 434494048 452648252 187347745 997741597 777885887 732283419 133904462 747664584 58698421 532987154 616770369 714443040 738384160 61188189 915298359 872922394 740919560 86259271 110796446 284211739 482583040 656419531 129214952 84259212 489000215 690370628 897821837 347032641 544452024 503398771 404235014 402302208 578579000 42215995 499220201 794968499 221183451 740133470 625570964 42159443 768519449 993071663 352327181 584674516 360088960 446689491 842131841 196244630 253346107 580514384 897460090 581180926 404371885 237437314 356903751 598608013 617782409 534614234 729142969 532401238 649268852 905710334 287859692 127997475 328374721 352837005 957803204 279237529 121930222 461593441 577905009 618518666 970204047 894337022 28942333 386465622 472532031 655400234 84186269 335360922 410051381 987822702 325954463 824899652 888661378 415416519 974715779 751635586 435469501 463930240 948138620 557667872 618587073 575196351 462217585 852796845 720943281 509991973 416969982 174240941 984384177 906483155 574750053 743286325 180189807 813106156 821537388 447429281 643403937 656724341 851508182 965077968 242084206 81694637 469400701 700171003 662785812 148175070 879974233 206529775 884563056 312660102 419712074 571619533 555986985 517827921 48960994 815547447 880218137 205855440 956631068 599120226 761776937 279576785 186406175 699406856 793801086 773967602 688557845 844139284 649908168 868417935 862599942 732689170 798284686 749055071 532676915 806157884 311301863 467826953 43604382 394562163 506820907 384616405 494829281 468509274 846367819 320589572 486327239 575352585 813732035 765283448 44522268 385093020 405339693 230871347 484262397 898665026 652236415 808000857 497210643 93613807 422199877 360262833 438181757 780136664 986149056 184484538 271876533 850245519 314368844 80162960 865921683 223032096 46481230 920954540 33807729 110151329 939452581 249667947 451319638 786854342 731258073 645689197 657857557 202725295 859691375 628194925 916918158 914997803 86074120 652951997 92323463 737891445 957252030 752012946 598984825 867322555 204305397 408733870 863031003 548024907 775262517 864165535 446639113 367496340 420670129 979992286 352849615 20034932 292517496 246621046 470040341 81495747 830603778 165213460 372806928 416929814 225123741 680737033 814611201 188521230 465212189 277919654 847173685 914750487 449371124 471215834 52084561 586415472 240496047 333183198 906405691 390277554 707580822 830093374 53522760 970985708 677649765 721661144 642503645 509899405 563992951 951324920 19105701 468030032 165498283 769635234 801483027 416582710 662474600 265375240 730733451 46826686 411655504 624863952 303398264 597347408 655586329 15756590 627169545 974284021 807497145 443577290 464912677 853929145 838659482 274101150 469966335 981301368 285293168 535839117 632152725 631632573 247224581 799987879 842252962 858424822 883973056 180156795 698984326 808909519 448949516 540904730 867533135 409131733 159837460 14868805 237500257 842067403 947986621 558187448 206091557 727153394 307822667 285118302 242880107 485791969 771738882 513546012 902337623 27879911 577069098 602725333 635492033 156472508 672158206 182782653 609191590 960154393 669688472 567107190 804721437 708458796 257838263 769069212 998783513 749312411 952542180 583316550 753204339 38826854 301592989 952802538 344189482 97092028 52859786 596176703 568678327 919517157 839823598 826719723 388296730 174465844 101322249 884857608 549408789 437064175 527380066 913021295 953295273 831794458 121791252 479931955 213524180 942731844 929831127 580164153 956393559 663556084 265383648 26075753 166399221 664300734 928074572 231684449 386586352 123507311 7292219 179626125 326258438 48117162 437227776 422603649 396851244 355090675 972382879 601008817 419536303 86580733 469550899 825674240 552027476 323982779 559354877 372683358 706062672 27926293 761453219 765157364 288018308 91874330 277138315 956619091 726257599 667564598 12659126 882049478 329317757 954349342 474974747 259642046 995458247 356672477 498776230 894656488 90756186 552015705 345407207 228554168 692539641 58419712 682530133 391528929 248797182 473719786 339384737 831961558 982669462 282734107 179282686 446205465 846497598 878637789 90506874 636084469 616330903 460889084 7195570 43693771 3591374 769359911 675225100 592207830 326994949 363069940 445200398 999760934 118640123 211936784 591578383 174624837 143766225 621546466 455348997 369246708 259967248 827684909 822864739 478768625 117228376 60628267 310937081 526184919 447722987 772125548 562790257 283313220 1540666 44239081 195045103 45980810 987831159 266454397 608892347 361860918 479891171 340048960 182845577 916599671 462348237 234331050 494790183 197231833 732728253 888848940 369866053 282636836 217103896 832133006 236690231 768095317 213736953 762731548 965386426 837497227 861627620 485374447 334440030 667900495 191405306 509786645 6403356 371876929 109949357 6378407 649147740 190321378 955455340 879156950 294608835 870588097 313631969 709292327 799537173 693031784 748837672 455349569 82833164 874079781 498946307 146349394 116729985 231361285 559013860 197970156 55144424 754198695 360570163 957042513 893511494 959706250 170218591 704866114 799900468 501777110 847286710 98230636 917470521 965075101 470145412 727149054 151175898 909653651 240833706 255305531 595816610 108663860 434094623 35321947 346618677 665960480 371959966 915774033 526740256 589922817 911970649 847925939 512465313 602237117 606737213 200671592 722250115 106005111 539240294 951666410 644154516 554045388 132909907 841323113 347012619 47456603 474980297 693491194 613043690 620508752 378299529 7215693 143770799 497937738 63322760 999158663 735981339 745432281 592841359 525253076 949260497 844747209 262942535 256351496 105315708 538519252 571601774 271149006 80186292 104931702 632488977 222854531 856419615 187944408 329926901 492924279 223773374 989045467 786029381 241018185 798654523 723007064 653518154 581863817 449620428 526147431 210042995 969961017 48849377 170420832 209436433 24981307 217162953 259237213 822884528 59218469 481865542 856099499 567518920 4560864 956905351 961190204 307083585 746985415 971147415 590003273 342778199 19992871 585589983 636504960 243782657 847382670 866258960 162088570 764175845 681336857 228210359 581111669 932584943 514301395 159096101 128444682 845407299 854566704 678087872 213432442 277481808 707079796 494891822 190761520 458069529 259541155 953006256 42368836 130808220 505559367 463755861 362018871 823079615 170963082 646073430 92235849 289149804 731021567 759602336 705904108 241464219 63000914 629888648 30034892 230994494 476737887 871585503 598481680 524658308 628428719 859093583 60045034 284821232 713845399 995466388 678851795 76049083 280860063 46036747 922424289 424519964 903790820 572292154 871773759 724213432 366338884 954372363 513747668 492750583 538240959 678772435 822244859 814480488 524419248 610503268 305721908 34854780 977785296 495937702 714931363 587175082 894412050 283101798 48352648 366739535 148153969 432383647 717001284 618165845 537046067 25542310 746033448 441624181 346950172 32941440 268778892 617291208 526534688 275017649 577142407 716801213 797422373 684998897 777108135 449696875 651089898 745446342 108609793 350585198 407594224 78931897 201707345 898448504 119463502 416977811 575098733 291381071 794345524 880495058 950117383 994754378 816253612 301191817 798870034 62128179 290336218 683821669 368908012 250052919 191147336 246108199 284703984 545439895 310602067 735967832 673033673 653882307 400236863 302677689 642538457 987151234 787785929 221268848 137474995 545227678 188303383 470976637 311592630 838267966 416144665 739500226 263593164 174515916 238328915 459018266 584311349 731885877 665647493 368589405 744359777 225074665 847245542 368321949 284283083 808205549 396085826 893734531 566713214 722125131 144803648 223366395 954464810 507315920 941253019 838681840 864972946 264347253 631568971 831113888 247764898 35781667 312531418 849512569 324575474 157096207 436928289 577710697 121430095 877473238 299392737 25786144 335579162 522090914 443502207 822328949 5043743 229606886 36381082 590530381 578061398 737267898 573902209 635721740 516554671 668233967 542097949 494885583 64736766 972227706 949297907 754057889 671442616 433025450 584010950 340244793 165921682 441738545 351694265 806652481 414336815 648300865 70099686 999624848 182072267 335265239 761574793 102133568 706524607 808513813 502462938 957458770 466376653 375659011 761580417 779141399 903833070 812999654 188246813 183990403 442878510 229738252 87469275 94143274 433511211 707722041 893825095 668610200 739296340 133218189 796256167 915465072 926303805 725203028 279503263 76290409 110442500 150232819 323752929 892467429 204675794 232259346 987737006 484825272 954388723 37461780 429153092 956993633 206665411 642376516 979021199 331713428 693424497 544930921 544272347 742693133 537126983 875890175 763722342 982147833 234600781 16501263 169888920 907277077 625065993 379239225 244452259 901842378 662482547 69720971 199015853 25955125 266986399 197008447 760492361 591752266 732647792 272967277 378038444 869920271 37439034 27340218 656211387 598668578 588542425 227141145 450160563 91870351 149015573 609692542 486972717 933056546 353571055 495436486 475828188 144986870 714164904 748214672 909903823 95033750 510855359 176450308 426123102 176241562 139416988 89286973 253488946 462506180 738754454 334384332 758230501 533044260 838489285 314777430 73799190 946762495 950503426 715075398 790729886 353376519 662054951 285872806 878563016 844545153 571345924 55662763 731806704 978616516 922013900 168729390 806318847 473632707 999049096 658042567 338139595 541250903 508022048 451309961 102010441 945409641 172069772 575856992 780615702 74782969 151198629 189746575 255990920 739479384 951578332 410095581 348244501 655865568 977628926 904504295 59455184 400802068 834264743 836698318 428993834 273531875 471834800 748400159 439131278 231878842 219125069 120453239 485121262 562947713 95623380 718990481 339649842 798869058 195705989 495169167 539802957 588998814 354720202 67998092 306026102 384762060 950172180 349746385 973582435 551741315 520067994 770605999 581607822 502862227 931493290 86638535 786631612 941953277 178770644 211630740 248201556 408258274 456299462 520167843 967745149 263220880 345256444 703074070 839721838 2101659 475903424 227962654 659236474 991626127 530413669 200303949 208126422 380101270 308589422 928126865 235918614 131798722 51882080 254128276 783691367 471241489 74771730 587893266 748610722 24729712 95961529 247538400 446907474 322931269 189426917 499642941 34398024 842317473 118660382 95292382 180878418 53582871 129634541 94722549 772229502 266194559 334559751 792350549 880532525 556691356 2236659 765676592 999510915 984288796 291893834 22439068 219776457 995687124 53709221 887604012 362385464 817140294 408747203 774357312 627797500 844251134 726186709 102326546 524982144 315108391 539243889 607760523 724091200 234503147 121920327 327544431 225907073 190630803 605831591 508950559 494163303 514184552 482477095 795187851 736810770 417468676 526513759 627141887 190984193 302142073 516951776 605162701 660214721 293774526 916632670 850703755 809659892 209830140 758524501 694836920 922815683 39894886 75324694 192408534 911450446 123130699 303409367 47525325 343265713 88886521 175907180 884326831 699016195 335184046 154208621 11419374 929739477 733585339 663439985 722298255 220123381 31997415 130974586 450152394 48601387 595850469 728583398 629000077 728715199 659159714 343445065 37222651 690841335 145015130 501292130 398474035 271608972 745284508 278343466 715010614 822459291 199457749 595579141 679005927 853729336 102462373 785911493 42879201 657113466 647415351 205360396 932532420 477792387 331382468 264421734 725149319 477141394 950460339 657765444 135063690 463944854 154843126 317644388 459106306 322124270 324084226 269712233 854853577 89517980 554687677 856748772 922809713 800424489 51055420 992018962 651533984 653928793 743621234 700567892 521170931 782820234 511116249 336405778 720326290 173711215 706439302 581039913 384621311 195262277 450598846 4577609 458927448 84735254 868349288 51448219 501328941 988993281 640196383 7158895 749827467 418648235 782663951 580458115 323031216 19219747 730458142 365385465 782191186 879463914 52634962 269922001 887404287 154911189 83248718 828721654 699667848 315026624 881188941 69146446 858769283 558812599 313756778 384646009 983906860 677278357 245194315 359759394 969294144 272175037 351969232 629237637 804487701 378666597 252913600 646568225 640620704 706988065 164980942 280804534 226892470 770858696 220338546 651188643 214750469 832902767 791248971 493828881 580030486 668868900 502626713 41381645 185973237 615052720 723600396 850024397 19965192 831846291 148790580 581609233 23273076 423802683 285622372 645019264 391700648 217620147 65738534 756656766 775148604 531785236 423351255 527006466 521213686 2870079 868570207 614256964 976193490 917354577 978235060 699104862 495496710 89791318 428487475 423216684 867832124 531836665 70378329 513762688 763887638 373873784 549066845 475418931 109539773 10936179 253410097 536972736 581538890 154381081 338490539 240218020 979466589 455919679 403157823 265749505 793720534 749677209 48376738 891177600 809379106 798112663 755443074 580199691 547430230 90140537 333862869 617240288 531651275 693185031 663121700 431390244 226443540 432088672 609124539 788615771 362654471 194077204 135882328 281199313 793924800 343626746 788954105 365138715 648687520 295584659 568795481 317954823 521279996 66209964 98573375 117570132 252423670 99646474 984845372 670079655 440343405 570952563 800171424 441031005 503468771 367012733 854054308 158296584 582425328 367241376 248828828 109631635 982626993 66154406 498596104 15583822 910432776 552880951 929234499 38271146 26011206 205789211 765200895 435092792 600904025 654999934 941049872 417180315 26944551 390844846 17058540 616235899 910988262 929491062 726224526 45327880 164593170 703704152 594583482 587495529 601113872 257995717 372162831 920400827 511352927 459669522 14235290 437816544 375704566 378379780 796305975 447966811 271783322 532880652 214885142 161037116 637095744 428662011 73227543 423454332 953943749 797835512 174586547 171958397 681819430 651049757 686533411 332684720 565028389 576730566 212120193 965676008 585130146 850825547 115962278 189017021 560765283 94651443 822904248 82637466 357293436 66565878 773809230 980325071 712998847 844429289 659257271 527309181 898391108 775602064 869566178 408040836 319012512 86440458 61444220 652129942 180426856 351435811 613293257 511104764 494373335 736687739 429455980 563794988 124000875 48402340 87954093 363777543 763126925 647228875 408805588 351820995 681124235 925945681 736776192 528939197 86264796 972117026 854804260 869684302 481911578 497189856 326234731 310396901 315238987 379962910 14174836 678419252 366256221 101497672 875354637 663676922 741042367 596916980 390161698 887307544 553166046 585486182 24200974 409125876 605519156 330923638 292638194 764860316 860137127 775869465 694404604 973949627 601934492 4852033 659974038 868623547 211384861 940144477 332150871 867850473 935167536 607916073 709469041 499904940 455744352 622281717 582718885 783277112 65292167 291340433 273467509 1762369 869069036 353323571 420400932 841885978 425977919 273290452 692127334 762324505 404695411 313458599 503227701 61791435 922175455 264131202 331855405 674488047 368081803 248668739 257592003 256747480 156800645 323345477 595101491 758319209 169910593 962177731 965160192 248778997 924911441 852887923 7936319 830674456 105365751 754512810 543519564 843243076 591964362 65705383 190284589 411486062 955943543 207213830 946275167 614896661 904441672 261053275 305564638 842191597 49972523 498890107 803069310 389706366 761913850 60046654 989830908 37379119 55364449 491341527 994171741 54468574 440403103 507939614 796849369 735879444 173461277 619858300 932938906 711560296 98383358 568543087 761921274 779198242 226791585 493315938 599006792 619376857 997425705 142847202 903201791 726849156 556503018 392322752 359232762 441042319 650560710 558385305 645769590 929379169 398080506 73407957 556579155 183462439 659232327 869598065 817347432 250812523 491353512 745520692 857061548 946865337 71403863 759634913 618564423 105758579 322566051 781555291 516726012 423352064 590151454 80538134 54868234 359781117 998384432 117703393 804246459 231228539 489732226 585135400 647853382 922750719 400654933 625683514 957593952 811030420 442793779 625011715 62893824 76525449 399898332 328111324 581488933 935569633 711165117 34101210 154066588 266982400 719197559 519082353 864456941 81208212 858322347 605836200 2283460 72137977 512994191 615788056 913090090 229420188 112174440 977393856 607380933 572773305 929622629 188916700 372695431 222603155 915405047 11257058 914689843 986758175 841932153 124077777 438755624 227632854 655082511 716670475 328220086 785859979 901440290 343230671 282136081 455990325 21275681 557080223 762981339 116541287 488465210 95969568 659506389 290046569 778185286 89984282 424431755 199185296 869962687 354658718 621615741 583057640 605163264 891197745 788835500 892794751 248011937 131545208 198800281 684368151 515985443 995735379 614629821 556463411 312957608 525035835 179205209 185613499 597055785 783154016 984087652 485298865 791510755 447686456 477858790 558080372 613495727 109574462 177102611 919394692 292478534 417813324 707908888 745655575 935818766 880566862 542608539 681570327 604776592 703134202 856999778 172504337 546077086 48523020 109601498 433338019 985171351 148232326 528020940 461941614 82861642 965370206 551727435 461115374 215413566 405258027 69939614 994885746 664561434 210025211 633738050 924490307 889028578 584655356 481785547 164218145 577417907 48691625 995187675 734333842 492970370 836270792 449611628 887168490 531870686 857920222 734071060 268037902 413611258 175799864 533426154 79177152 265978825 911078949 141245245 453698883 512057202 876418043 497258756 202515701 332245205 206175418 539604843 796467756 611294213 127670390 633649923 272800345 55625767 466229615 916782995 893883413 30490207 847672002 638772751 838282598 265329976 334976794 175414817 301750375 701346230 989433696 349481696 338995322 350859041 49888135 517059719 793240756 488788401 642775603 116344820 87506273 213727990 791599793 80174818 220554843 390101572 312749575 556049731 404316327 147000701 450922855 326801015 493854581 843388045 797190878 490963564 330223781 201887561 197667329 463578889 927184636 360974166 701084586 270724061 674423863 848787668 453941578 546607269 523237071 891431080 217751664 279693451 869833267 679356089 736404239 165688098 794486350 45747614 107344280 894721059 22609712 604698398 365937937 858300661 988077939 299776863 312474954 745429709 878399799 823523500 145886716 536433626 52624601 316386636 235473456 915037961 418268975 957456036 596569262 671488046 362040230 533776181 397689022 12416809 638335397 907310476 252809349 621619003 455365847 728227028 256756198 396498784 370479473 765337710 268301887 121134207 601709382 20875086 919443428 798175616 457194032 83331729 382192013 730009009 769016113 837182844 469240444 597704756 612447263 587691038 702391190 939508919 234189994 31816316 506674116 434740920 811206762 26413856 222727596 434825006 295345491 318288968 477073052 482476951 502550346 71931340 505544877 995968221 634388679 774682721 776329367 584152963 799891345 321987670 505988632 622663036 908559564 733645008 382421046 569057745 738604802 156589008 489226984 667897836 825725473 524019966 58161621 112983186 751897394 731498749 8973921 230639501 606262227 221409286 317405581 327203472 578541841 995761587 425765694 652948 233561113 187199422 924005924 260074383 104034763 870306113 937027754 404504486 577277519 782925014 118356298 428196384 500112382 956177203 315346056 892109012 609049067 581104770 993709686 239728236 82266107 977409105 95920260 237180870 688200158 799759948 286751612 662475381 67318977 338306421 735164321 486952105 706637592 763169227 42907610 581626715 627594690 826350654 991163503 465561271 374543628 353993031 591088651 658693771 606222126 421254261 996318693 148896101 284405981 634753686 892516054 403386129 979811152 698439312 424744785 827506406 983157946 886307923 44410792 514127635 15011931 927916310 774075106 139160596 362473484 638601918 981795332 242800031 85719103 886808357 366700661 100968672 638940110 269165466 526526293 50232698 685333768 538126865 569716776 720485539 474687405 780211039 668465013 31919078 420299301 889462619 198517209 673496950 802102457 185450101 41198937 602547682 465027461 596889593 533606134 273220799 960073753 162605578 89221566 576435380 123832088 577505375 42325486 62804278 243505191 738624058 862451219 85775053 243391709 832172955 166568984 397252126 523703863 928315701 598402649 194412577 781971543 517572337 397307451 381228298 437484720 586014072 400211078 954464312 196507954 651886119 176498488 62010538 244626957 436399605 514378156 752010262 716473864 318018595 303157924 271117156 162888594 577190850 231319273 613054893 786664149 199426072 254939490 274716466 11149088 523807636 230194707 77770797 702854984 848058631 959846503 938976943 235015684 196955065 657743373 390867504 73165336 365917018 554750305 274337604 831142172 15795186 336305405 462014763 914562210 996189087 782057224 668679308 921414281 244156608 237758993 843600561 630114637 961011332 518817012 148552219 847062612 279827984 844323895 576287243 983893164 89678244 136476513 591096443 988960959 929810240 554323424 902882655 859023423 236795540 772576909 277642838 189519937 66224164 839967053 470003868 886205264 399352116 458460732 609213979 939692120 190352069 990929683 696212867 713158714 33007333 420387378 356936539 817028401 232817557 621433210 910247410 377009110 767838921 930896038 442153873 448886518 706741437 25430604 941203506 544246705 282320497 132141748 831311794 156622752 398630071 808958349 686676766 584512221 20367559 917744835 339710972 422785042 784665856 375698680 979544889 126393527 751427749 904788374 409291098 862351557 204992715 809659051 540441349 243625797 444210446 372295525 956811485 858452597 880649661 580647402 290141961 942279451 272717707 828170049 337480008 940393404 134593996 118087838 85342843 929799974 926796296 777876105 573040178 547417991 725725752 572900532 92835871 934212502 941405434 971834327 952550164 490463503 860144356 227248162 617751929 173857735 305555048 80797073 628902300 297075196 24669440 379906797 461588210 368596230 109261803 107689661 492334951 38601656 548798684 619035102 330280528 544432006 512695930 343697432 934106949 720246401 270702820 189497949 75955674 355631595 625118683 748835827 552352096 995589776 110103199 970149124 154591873 636806642 423298882 848038069 192856872 244482598 912977411 78633180 753304588 255914470 459105536 586537219 20203404 408003986 582144549 233891367 906796088 758840482 436029676 419169459 308844605 587652677 137946535 232646191 566581041 146292605 685388867 902500402 236543651 75893672 266319086 887667113 144364143 691896035 251099624 382122197 219960603 494558198 367587505 978047773 858712055 342202258 89637836 809899635 972948518 747685007 743997391 24290060 749520611 867842300 702655125 287897548 912063808 564936322 471909644 250838750 13617782 339981354 487480168 394244098 335929875 294412662 553632112 724287075 721688324 46578435 347476979 347806752 97110259 255736693 390257541 441595624 516418725 412498394 249671179 717897624 285755836 621738961 90213181 403557657 466705230 884070330 449581540 213658167 912923506 237787550 865660379 653485683 882262151 871642694 504174478 342026860 584500933 561903425 4820545 177100162 802401694 563868795 285256643 677285163 90879967 346135295 508158729 918820749 803893327 383669274 461454121 214702913 889260800 965913225 250034026 686822929 742445624 761021006 810160826 780315374 563198507 570789603 624538181 259607589 583753389 672745311 300778610 962526881 167138285 107770203 888407379 876502168 977018281 843626626 209739171 378690137 420461429 400079076 656388252 236011487 822952710 732114779 379099272 195082470 340339575 636502153 193140323 403257583 811448067 313027049 799564050 434155803 185633329 486861276 693837184 545128720 58045439 921962646 743939483 32828167 455188935 18190520 267374206 610517416 13712052 870331300 876663044 244338451 183264228 763719275 798484454 281524038 991800125 44205866 273780726 598114776 476282595 281922680 586527795 294615856 518403968 242220185 902086697 833994798 794840364 681178925 905018900 344692917 137856063 976018655 670081184 805416340 252130851 751569907 306660562 546351330 518033128 392246566 534295570 450611403 321038708 199625808 412176317 308856571 666914651 942897627 236427780 569144435 582368333 674346801 437281327 910288803 843431401 737302073 827664368 142158193 162245423 656439928 716082102 833603908 915594907 545314304 558333445 600608479 782365417 437579744 375448113 479052593 357822129 815824662 642310262 631525038 242205818 232327815 438721079 556615897 486211744 710853359 815546416 880883999 150130982 532864912 170238246 508475054 528119125 110559279 229112773 28590577 163986610 504913043 417621331 482761230 77466460 453338934 535044759 522957412 800543955 412608946 279680855 971906776 926905701 193492124 654049960 274934843 454327540 315081189 129364699 245899672 350229644 704948893 673577361 108254353 366096321 210806566 451587950 123109106 754011644 502384542 969700338 956073032 909021625 269433455 188088532 940218496 847282897 729151893 743821686 745067070 110110262 870749338 165909255 459495411 605235519 618114916 800813546 292565817 379870524 670038633 672651325 666397721 8453139 540461224 356645866 200901323 599778564 190504752 368950366 774725781 434194202 864742710 943360299 835640053 710516692 418050883 142100668 155622889 394562831 853778672 379384023 608570603 879391929 438542019 393956227 658537862 629114697 826631858 638139658 367893186 699049789 880132951 152403799 771685780 314810182 827001422 620659976 130988445 68176833 580491356 441779126 153220904 460375719 437594013 946023555 445537260 903525531 434465118 698047696 198149258 153256572 54593064 87506001 991824141 293514622 52209959 563480102 889221214 942073366 484894584 885107961 986086027 521364355 834754707 699845441 438580097 847556492 792817498 740289884 450232275 454274347 990229748 788126736 642437600 364489661 105830056 813459607 208482038 822616572 846221680 194780309 111565440 409259355 964460734 175223080 316232205 783312738 219336521 126327588 17580738 744402424 125655702 308360876 554467052 871473442 582119833 141888586 253648890 122584608 741344508 98008730 268602277 641053923 573279268 655216020 748367252 437139475 423587881 335464235 472195664 88317188 892584776 663633611 404984326 812637647 827282332 95603431 851667652 507847582 335065611 777089056 166396539 849354581 433597020 154755988 689556992 678305743 723837438 89327490 371713088 528308043 598675367 636922486 286307766 706964903 299264156 697307856 425230065 220460513 31252952 785503839 47538204 796593583 548415520 35267427 244918495 571420615 711983286 536861403 651766332 851659002 842643402 464677134 258196195 754137765 49416007 376910115 251421361 566802387 459483711 243161951 709796639 674535087 257981424 648614222 3198158 676653590 724005527 288276524 99621927 972940277 291972328 403435016 569418186 394548626 155064205 463417643 966792027 835641355 996706422 781339160 730707611 647949353 733273877 407474213 734528846 23717648 410006366 72275983 54774138 405190256 282458052 527708368 326833391 210052339 884676159 421142011 676165915 782533315 699669002 959401446 301866579 583669574 486769418 531978341 732127286 661361704 70654308 303874992 434782036 236913778 991009023 184954351 490497632 864354633 527472772 939238408 466858935 590425916 889704516 77532836 655408546 824026034 690538888 6874799 430530178 694294372 665081742 254637049 723302376 561822851 42309127 379263195 102426469 355141040 990038671 937347387 135977490 413373101 647789802 283652857 717236551 572379111 882612646 760972945 160088404 647100240 510598300 958786088 897603491 388002306 2003130 332302611 213950718 938915980 96401825 767115164 864797065 895025596 823220957 957200880 520288306 960102683 951283314 592898950 78682556 588402264 236485974 220023913 916804068 31280454 292529082 115209871 469404670 638823434 259250196 686268423 803221094 418970767 4450756 403648519 339285617 42164780 629630358 253605373 178937934 582824786 78165154 912543825 950895500 698372053 232044115 657746356 695463565 884339580 929539057 967995983 162018410 305482536 324618937 809945900 675318177 293553496 81043074 664399114 215160358 841976099 330422537 643427288 918611692 189151301 833742728 973983713 179468427 308730081 324508513 779053365 945595176 49220339 807926088 697572767 103515818 318624701 62307019 674403542 244014379 145750377 612118640 975820518 6673555 317117634 91355601 422807181 739354870 297982448 128235505 8204161 434283410 996848564 440175165 284032942 111078265 453666871 807044424 140603757 661256695 761592315 735183879 41408510 534152092 676576327 723221723 834394969 690274459 621408701 798580773 55889483 980831178 884276767 604406571 246205121 884074222 712050190 415362084 731969413 36716991 389916329 502313214 752060743 424428637 273001038 200832896 598651015 939889371 989230918 646981358 204708542 493999912 922931104 735529339 718436941 323589442 813328918 203525867 469130953 807860565 942020714 451908648 194701520 471203962 993610727 350726912 2790899 806893179 722519262 825084492 706689456 936615492 153378951 359237327 372485338 487558292 420059983 555289348 702600731 268516034 953071811 35878792 117560177 350010872 479919766 547681516 102064913 733364994 316345917 131462093 362266287 961372548 502780345 260667444 818918337 254737769 258203841 93589410 568737078 970986792 231938015 919782966 766837709 553697333 89475523 208238917 797674401 901934032 789055498 983628504 154793869 811829823 528587331 152984496 64739633 307581880 757509402 878301739 795034499 651034493 342771082 940615798 611483494 823601631 638971654 208927576 95566908 985780971 322110893 464973933 45919008 675299318 388589683 393584529 169730465 878038216 48901940 112259715 542114371 443864073 341875833 803281260 997749498 782657453 67473766 663073137 537253204 115292117 134228661 676169136 463727564 561930736 905754440 70622428 68839724 785700953 239450959 199218908 217950053 966355711 940107016 202728345 709040220 848861488 41211660 484756296 764682958 794001325 937325266 985239309 105984927 640260090 422772373 850877175 419293855 784967239 564151978 894748592 219936190 578296821 587205825 120255156 555732395 321211353 669670457 619049210 618480114 90519699 337920090 317697925 985427192 577390701 287496947 402434862 560178234 658004650 175273831 914097477 935583230 226707392 958343659 38542604 312914135 226126571 817301853 324244605 269795683 926870160 33561701 360647974 909716442 854739102 47904423 991657857 780804561 644947530 896808012 955703022 450627422 638185857 180626027 900418554 369013379 376362687 768823756 553682069 473632234 997813546 109769423 61594137 683196006 105837341 686181757 464324742 174262342 22375905 865866978 782419030 500235763 91522056 438907129 691715984 344704656 470891268 837708806 339306903 740147632 415586678 923421121 111699552 537435550 692230008 531084144 912458360 664787385 486377144 569683997 116045113 971420007 806963258 652546085 700860676 37395183 513713497 919371927 302385864 386948965 972320869 882472142 300603372 340955048 742986197 642081487 264852655 513669653 474940870 3339651 831692059 551641516 356169993 498132531 341361310 49334546 117741580 400339575 829522344 2009208 874214626 865582404 41215992 286138941 682594310 564626919 990370425 668347725 459453978 762883425 741049513 567037998 573529837 714767243 622731656 385523901 310111109 688178340 266073717 816507209 843614790 395042438 208416890 458880683 964440341 781144724 24714802 234895950 459016998 258216340 756952933 103728909 908569229 486756554 329893360 503632329 20291860 518051196 844458217 262673660 396754527 981005357 896812155 883691426 423666487 799648223 382291922 455652733 549928685 730120815 46235098 473478246 86130758 222331062 263378216 304094188 91201477 59094351 978990206 675030884 3946317 435225200 971384387 915338548 216072260 15751514 683859604 843645064 564634278 804102376 417813271 579495134 423279232 440851977 106798636 279415987 162846081 753736976 588682693 369813730 587217981 507785925 217407877 995273380 534569850 727606816 248071553 267303226 552521026 341998544 643737662 31911956 152511222 623783874 234329528 57391997 518314207 189896651 816931172 376405435 933669249 358894474 126741619 220137077 690905646 996942827 646575291 968339702 36438230 376163732 431094301 6837576 921665699 757938253 573451451 878510674 297661291 401914012 804381495 518223764 401116571 933426925 347697122 186224337 124520386 658559778 54376807 21268698 798078191 682789888 517195761 376685598 939304658 501285913 58418049 773962835 731126032 354136530 650891885 297646933 698840545 766129789 30893168 773581436 113401864 247619086 264557424 627776573 202546562 884675741 429521789 207777166 248531108 840407520 244738217 603994894 731396354 435847383 386340576 724116989 935772134 663040943 909388573 215600366 420001870 800983493 847983912 452282023 558105545 518404185 766637676 403036021 110625598 12518201 111005768 319285449 194125373 234038420 546783870 685414434 569152054 819871692 285432318 975651209 35300889 615552113 699416883 577875012 503160793 244412312 692569576 155876202 675833837 540130282 643514297 338377992 35024165 110691214 172273044 768155163 141851950 8431837 441508421 409988870 750485659 864531325 202957238 41358368 911244135 757007312 561669023 204643741 650809251 209381380 298655613 135853078 780203249 509626739 548772834 115482923 589771570 821537518 156043019 284355208 895705331 821488897 443264056 252920576 950792606 186978079 110693569 844659205 529819234 50728412 709901901 225641258 112089182 34529039 14302096 874327515 970950657 620357072 434917947 193587022 139227640 813792484 909611333 410428820 124286795 225665795 158110759 368295832 542880036 150794628 248762300 225119059 563915812 642467475 13497513 210138218 59786139 890770561 8495011 194239567 802241707 516109296 32350439 953657657 526674644 156988569 255312540 147804559 936012284 170014864 886880047 901932717 44237570 168997475 741157457 550721484 8538094 873522795 511909917 525631120 988768609 778168038 828362583 879340807 755258105 835191352 254791219 614267911 107304979 34716508 543271562 66775696 216819477 247016943 611039196 325962987 250352850 528650386 636201062 984293623 222195451 198240465 785744227 104741815 104768519 466076389 568000115 810072369 890285180 719909889 904519632 597066520 373940476 108142655 566911330 86026770 634056354 429213260 879774987 42059260 428980871 321904850 209583406 637472686 248246771 915821442 330081588 439402725 837534070 418179751 658679 230897572 904243874 33428089 788328233 482502250 994795920 859964674 396186369 25867083 687811523 164947723 488745875 42611908 40644912 291922757 429209733 156908743 86816447 615034660 335816197 752928662 912281681 882981434 190767397 822876752 92031616 716424224 229106304 36066093 82258999 88558031 748031723 887712047 936979812 974270637 223506781 571891419 181268797 419480461 952300380 885239283 664246957 31335793 913210068 875922910 719993110 359207538 854071265 87486365 860994837 342524907 185949753 483893853 851840633 420606633 603558623 77176090 635474312 880334784 766191105 3053131 44981266 89869622 317229203 370183402 976760144 2931221 747050366 716546577 191403618 176030537 977885931 792550678 10570716 438392539 417748991 631753564 663924718 987965721 265800252 683236380 442472123 161583611 703294352 113760291 499747640 254986697 209121268 305919160 613375757 590587786 386068986 974204627 808574417 519167129 961473881 892194570 326054619 993600705 210173997 971641189 494522038 704823909 700941672 448165104 289912359 194744816 224236643 922506070 99761436 952550453 296227729 890317146 907777662 330451321 543377489 959701522 59646321 264301588 112861725 894754442 601601611 265405217 392774494 73305535 578826515 603865349 214905110 898902084 547802962 975198298 882935901 129085055 223149482 384299760 889304934 325010238 327642114 562775768 885489433 471989271 283542303 848101209 398716372 149730393 913073308 736143321 249516278 437780597 733768922 365238055 360014866 941231714 964045389 243682732 956375135 538170242 639779003 870530463 123107027 88972022 17838218 292030837 307969915 129413057 35731812 4697716 452659200 909660228 713385976 802623263 39990268 413478917 538889154 489152691 379275895 642315983 707661331 474716426 753607221 111002061 818880653 30545979 645841051 270094308 151180259 851888655 715487435 773759107 200973717 558982951 62658941 523757022 501020664 388191603 840920859 835865320 523649296 582782966 998327798 433736138 319694174 872485946 582681418 789548748 414492138 861952871 440482699 169916771 488508903 792784398 164715406 345698982 848267422 986681634 530448264 965004096 505281991 732672500 809752576 98623190 208427461 387273651 669061881 148499855 756265943 673841062 364880931 133850728 653972289 826999096 767928651 117898148 215159142 657269204 532007541 173009526 431523300 351037511 439307407 624136513 642347369 661983273 687983030 164392032 565783468 679068631 317189939 822968765 213079816 855618597 495933178 868663653 32957850 993133982 714221666 954403178 948039127 570349489 863782519 901660789 374651233 23280408 461370720 232250293 326526784 980821732 275978142 833932995 77927412 624316979 244510928 445331666 321986927 415692287 62994333 818933819 163974694 497135367 888912301 67169524 552276901 37447483 548261181 202122330 800869840 404629173 436845670 445749043 817453107 2698105 615456399 661364016 876905182 937188559 606187896 595643080 127915259 318341438 5081601 588397743 84159571 843991062 31721826 649986916 155614962 877997419 983287112 498620729 721649295 623134355 100123487 569971111 59443255 669267765 501236057 88361129 319542901 515572972 538686256 160162289 143801808 202003674 55116454 305361260 711863638 947045420 172987318 123621229 806514946 108146179 114281921 412347526 658666577 795750025 792360400 406090813 763216378 981589577 144271365 163879120 566499400 816006599 929435951 90091361 746374371 517665958 265436506 603132101 154369432 70405628 799868422 274905682 767430162 253860209 972886393 16015996 275303718 74055052 153568555 621283801 611643307 569680461 825172285 899753434 549079966 885179296 274716034 81152162 864855550 107637095 782440473 796074240 607501621 109891251 740986405 903683150 407831238 911253037 824469037 460875050 704062857 519664821 715970169 419960198 388730530 472287912 141392891 448104849 570026003 791116347 351486793 927937642 600432919 556876432 739571701 838282405 469859632 921727968 606364319 482431135 700780432 298846603 904763085 783944027 743844181 208972349 381451573 11292530 754082251 252139737 196137937 88152413 381584770 911663883 113218292 751540371 557772215 833858472 288524226 161640956 842777741 669051582 634420377 141329950 501546708 306408726 32571984 913653407 963379645 931063697 924255111 636901763 74715081 682330790 50997556 774483517 309930954 169748886 237499089 553427328 696549791 390109761 364406812 303611609 534843769 875393196 276886645 228946632 915897626 405771973 263200679 146439736 614539674 549380854 152255394 107914693 314570881 446364568 460977270 619989950 258043669 168336734 394835440 385525435 699981939 830004709 477067051 842588871 863360659 931624073 798495337 826076265 455253712 10257114 103398027 783182522 870582998 586947077 954851337 660706098 140789145 318678278 852104685 968377981 59247981 175576142 113113331 767131068 503003314 697918856 847211572 582105546 353246112 724418438 569436275 819289798 224459664 304989919 391816751 791445090 310008253 13869060 621963835 328372906 923302494 938344997 144897126 350382608 716814325 999025709 923910379 579029800 669717530 517575192 666417588 742935186 857394944 8094857 793293141 914976142 562823547 882888136 659075235 394779842 16466469 139522880 51530739 44625930 647511823 297698208 724918516 716757200 842072093 748823180 460792761 504803312 88220343 461573755 978446741 19639358 926493993 876602338 768796734 995385953 818632679 829775854 27599965 354100479 431976887 748943183 290501802 101085821 213093251 211486380 146582139 870838888 444277920 136950484 888853209 381993886 981928528 435705672 991721146 323989906 617380228 670095303 245496293 171135785 570053133 643118550 904825815 334354178 28199164 772335034 905654660 138738648 267783964 340616045 383323699 957179549 174829141 45151101 252282616 620175445 374322010 505349549 754928712 472390689 51945417 616630258 9208580 702270936 932700276 711282716 457392646 84672600 364839139 898878318 697078793 514681318 656824511 355273488 118302704 776190570 353722908 849386856 587294100 873494283 902108698 780405526 857633623 707525827 622779799 29045114 312281437 483038541 378921578 623615481 15092995 586906276 213396486 814405027 389411368 709252475 76247234 76065469 259477462 675663955 149404564 970411183 741758071 503865715 502769115 308224102 642932066 502463986 940156211 750728609 534763317 656966364 903956020 82727036 433472542 293722007 479693175 699535863 268567506 941386934 827526740 853704953 938472940 374550239 874909449 556260211 736791854 435100079 439044424 985588296 242871498 676553528 883611451 696201737 744187001 685613239 470824369 766839154 331148842 62726015 697545270 303515532 906987175 131271662 937658171 661312226 101343536 108570949 871960842 86789451 41545416 297865744 54140012 875447154 186785213 99965535 187539904 407481279 620498464 9447587 302036803 573551968 299734535 581538820 201984641 162525173 19162299 473743250 3722239 888693069 514271162 643020158 372128014 11651514 30386420 850948181 241603791 406029755 713135219 418201332 848240998 647319590 727433865 146713595 849113777 563914068 353887516 712365991 859436817 213545109 324650570 48106289 389400721 253813929 499976897 60230513 390125214 97137907 581673914 744236870 437042058 947360328 832021629 435164496 210276112 644574442 633221292 905492704 453548544 223659209 153199519 236371691 191379814 893389376 811215735 957772324 262751839 859412047 553865542 528883105 530471467 402545700 234329247 578045395 430762590 64602514 626801184 221189055 370644710 890045528 205161717 50597283 664550445 84389752 4832588 541235468 710776633 512570397 614155209 683529262 821290511 68624275 168762091 839546040 424243863 211640511 476662482 755047512 390171260 456931583 759613190 46323023 243541237 678094958 514413524 885859610 188209934 650903568 565157801 298775349 900704386 946131395 845968091 50234800 810152492 326184299 708375787 218934719 753742384 398495668 187297069 808420100 209567444 398110634 145219245 823900880 844969073 57009092 805853423 989203064 406312993 731006693 50897124 851662359 18409389 268084630 560860004 544548217 835568548 681817843 149281630 101826455 725390559 983097982 586532135 795172607 28660021 886032864 571879222 725590368 175085018 992845415 612724931 754840161 445633979 971462339 865332186 299213093 722375509 972893705 264427647 879031512 54545050 671712182 269928882 320962864 671535534 587332649 810699041 729630609 147512495 392279574 459526106 394192028 837917787 196898228 11772037 111263375 461532945 576451001 699663061 800897070 19179490 35058209 185395845 169188509 262406023 573187904 488281895 426005026 558899546 350319999 582726213 691950987 148559224 761217703 800384105 274353092 549371811 432255467 16421891 183532405 816040419 384810972 984830699 174023438 489378555 76225112 980779331 214007741 932801856 216570964 988004351 902709540 988775125 721806877 897640817 93485260 974807161 301042047 216027502 165257955 731705703 350040115 178697047 707912096 389359296 883632174 626032883 166923299 642021154 34197598 311483230 393609899 430921163 571506253 675437483 262212183 132889506 467859976 934057853 860407572 67548199 502318649 472201223 331000480 598170598 900075099 723108741 509578873 511909408 580197933 318889162 335302960 386740669 564050242 289125539 623718566 251438197 174533575 736164979 150594032 298664894 67405187 638126230 281481132 361981437 461061608 914299231 950870366 522984854 300902506 203014569 917528736 313950634 85813552 683300923 809566465 406917858 764804545 866486821 99984304 938897221 651240170 604902068 403854071 237054977 666184346 729422426 515079281 421553867 359044224 430579865 76338604 196252196 555202908 195524558 252105728 489822576 848360162 808245025 493815795 767544014 418085996 290050276 284741128 250056656 632217546 339099430 358282253 31081589 423004098 990898753 325354887 35687689 232959830 113291094 778778450 466603543 603990878 754249473 155777965 180460706 810341 321570914 124307021 110982025 678905181 754569808 724649380 401591909 9456127 68959620 307058218 153771712 142428508 11600822 585018073 568532477 311821849 533915156 492530632 573663943 975630287 789182456 391671753 331129837 357801516 63724277 550218533 950462343 882920111 43571577 119489543 8529367 319813077 308650892 420654330 688939374 172600377 867439718 730774257 871555235 936926897 808849122 536951722 263064434 635808306 739725620 383256332 25558612 164031027 450284518 810275642 838724407 95666600 586400223 847815722 752356041 383932550 169377887 874227738 602339815 438411907 718360433 881500665 997817020 977926700 486212353 519483461 828103604 146562016 49059507 966385407 239022709 49692516 207957092 898922564 97269879 723947858 853897461 736476252 802531360 677827434 201015506 981603450 818679438 122707594 312546568 938538918 377419195 144505951 515796182 946900539 618277436 19691947 51068173 325320841 505692947 827774777 788648128 225842789 329957382 872322447 462049519 912766558 118441016 513504486 352458837 36787780 617721353 770415496 559105485 412277298 592918908 313304869 976240219 404737324 207544901 200029572 89923307 235785904 806604703 831898060 518765250 579949433 799201309 486633439 790364993 347896810 396083084 489369083 536130775 398194593 794801487 356172046 117761903 509129699 727075751 184555424 231133399 785170079 378144200 733645694 476371837 426934996 369781226 802574702 531063853 812262662 716849981 102140314 504517313 94653769 351570418 864170401 937351059 451164062 393813489 405638631 14224488 426598071 277437161 582312955 791131638 350979912 392491635 935561454 911978136 418216195 126966743 362275544 114851111 164700303 403159608 550876056 618522952 411194509 578743132 322856827 978070552 867602 924744197 650115779 789916717 502299549 418709614 450374543 882644838 875393559 279823280 499022905 765012333 551328011 671524422 297572859 15798599 492200550 359883602 867158817 197830957 24293876 498186508 151441902 818095588 861274847 264270311 168479893 381935075 116255891 343539943 496888976 541998456 760600759 110922489 24803302 383593378 527383304 39739322 993343004 233574233 735701316 899502037 217437759 486013406 811483415 757148441 839010412 994941071 624496092 774253176 681898737 599324169 943599639 130532132 297277054 677485331 214044215 334089933 466270977 459257112 249136443 995020412 810100784 579012281 821447149 310832835 827915929 12808613 828213003 105049225 498426338 905963506 742554377 670097835 773450685 249175818 96905364 512625835 498892835 931267118 699223114 427638248 67750438 235845369 510616171 102670406 750442172 888775128 418161792 480486296 322664313 96187209 378025987 280783829 777981859 180421895 410851710 961416772 123131482 116144619 339100874 840203014 867768018 507165101 744999071 328377911 296701095 241967594 995532891 820963743 187083283 270251505 134604672 535674785 347105210 278883317 528365477 808963304 605636231 76926027 873868237 955941272 140499464 675511244 561037464 577663216 912923839 969996782 228875649 75314211 150941695 713223635 302790612 596488866 840841980 976615612 804861229 700506057 643886275 975407892 284952119 208185250 749933864 953906432 333108747 819996049 811681304 650840008 405344183 391614727 130368087 699332489 565838742 69057504 10933054 479762228 229301470 143470422 190567880 145421900 39465139 424372923 536803029 916710290 50275452 257435933 681911029 448338651 629929325 738849331 179272385 309313282 927827595 282245106 600001593 448365221 494231265 689507174 134482124 214268093 501726899 783672929 603677908 300913726 413278712 842804706 539097609 194987822 550777891 662914759 771002997 923696102 919219944 708460432 881433631 861663923 617542422 467909520 85495903 527069037 873682011 335870057 742785691 832221279 272673940 381816465 673309489 848926937 315165428 117442012 895133323 534922577 294866384 33290658 252690491 321611181 880555610 626819817 883334760 676617204 895374020 399560955 94595698 871592007 122724588 384593904 781362066 193681599 903143145 765011742 439332043 477195214 883431646 766483874 274293546 405890463 363871005 575785592 848693364 799415529 851434663 404621408 622880917 346103031 585676627 342287296 381929043 562072662 986880734 597704932 109663967 35894686 905673616 685980162 447024539 499392827 609096150 241308992 920972282 868529105 924761551 45186945 330244335 480205603 111021802 901074751 139914318 11014445 296037487 390081074 93052484 363607347 660150193 683852265 882097033 977560738 606041268 139255659 336078052 76149435 388729309 294201229 178193037 219557695 628415769 729798142 387696835 827264548 676732547 105757643 257272163 463913360 371196311 178839001 994249124 647958739 340326010 481125787 398990590 594348547 348678671 416031946 243871982 763347859 641349017 799666485 820998365 951076066 981382326 283943623 281432788 129310467 98496562 93451531 771696070 102158371 243476039 452896610 219634092 335774415 825082707 972670288 557064324 376752929 32020070 473586704 716803192 86281662 973453734 692472237 65558019 707784693 800884553 690579391 599209656 524940069 343769820 269390302 173034241 233653340 367225147 242652251 535197861 691514602 769328433 852374459 781727150 80314717 275073204 259118696 464869041 932715710 936200877 528565043 402875905 208040490 973322728 158305425 580156276 330649745 349477993 540366836 434466590 151086541 646240747 30847101 354490595 958408308 346667683 996892898 406743090 672311058 297522984 275941375 515411400 409084952 609801351 146089291 976566015 467377551 342425369 679097255 919016066 138514573 195575348 178331639 949278163 823005890 900080683 714284922 188736283 453052771 359226609 286632621 640315547 79607092 452940598 58461250 482841989 119320476 808978806 656678500 741536058 453745937 510787750 126419548 437640111 140379470 580407420 15733213 614479188 85179310 763405274 957371772 740360643 398284706 534018617 463552281 455460752 211276106 815920115 798157581 559025935 946024955 942168143 906834507 832050823 656788710 911062826 951198400 380117627 226772565 521141440 421326941 444961768 699770656 28287208 139014954 745576810 475110767 734459653 449578240 891864059 703386503 46424272 52306994 196519953 442129535 130617604 908209863 553006741 120179992 245172058 832596397 166377083 102011117 372959087 632463981 984297795 523652718 611203311 118020965 859946542 573073697 139453470 429924745 941629878 317537807 995609470 370668043 709354982 952202814 684689907 370638043 154621621 656272168 306059667 647399552 713090060 147930658 564494106 271119763 876811904 138518478 598584977 758686609 957080717 412817518 454779692 52007932 316190738 949682355 851761323 535886094 966220483 341230565 157948052 85956274 608983568 535645009 352085731 385907538 875074232 483431700 555287045 172733513 188122794 54722520 228722335 670056948 893100421 556929471 455645811 708895413 998806208 150842251 96993851 158898557 335872308 981794219 517414562 805282937 81240383 532840813 852574271 988998897 695818983 928735291 104720480 43706626 732281924 501028209 167284577 81617433 913332524 333205372 949833638 876905729 649659795 294737885 243828068 426078388 280701263 299901222 878301150 805771912 988840990 75612023 434910979 228455022 422781147 386230156 259826500 451710987 283468361 914591020 957118504 101139232 608225599 155052438 514022645 519650314 82678620 218744039 66754930 268454286 246825350 301317312 208725053 849119066 539423469 291690218 702727409 737646240 487579588 96564450 405450583 664853725 760650388 657436867 436481009 543993083 334915434 759796034 174125593 789093502 407960100 754028060 870137743 896212216 200834125 237922103 912968423 842453855 49766368 963307993 851822502 147072068 63774804 727918095 106714033 346521944 812663475 737641995 848008841 443780521 763470318 46885068 642000768 147148746 139022254 475148552 562740201 384067329 768674483 380103336 893571119 960840205 938684017 432781685 511506322 228654513 324839415 129625082 706671180 752139895 433055703 792762715 294552325 850718427 194708191 555006444 425016752 293410100 790367603 736305550 873485266 841539522 126322714 990604800 942362412 773787833 476295117 35133092 172800510 281853611 197672467 276034367 485115724 424278355 148632433 865126581 349082779 871408872 121902631 517343961 989299398 285932180 946754750 261916680 299337006 88367536 439642167 493597043 929692848 400202716 861227900 396656717 727606382 379772918 967449630 27192347 71793131 535633074 845927087 714678982 638423068 461226822 257506436 21410951 662826179 120177212 635934871 943486311 636501264 927449785 675145389 825775753 473768985 406851557 140802060 500156501 162342488 87162410 347770397 257866116 362027437 145778797 198330968 352988764 153402632 378074846 518946073 701732481 508380878 921379321 688619205 723176156 474336345 136186980 397266420 86966120 905379872 903408665 655153125 194872810 269251014 369491243 753901110 129980095 212691379 813478871 325717834 904429539 616487492 349697036 74033184 136964704 953800932 240147718 552513514 388633497 665908466 339687446 796861378 492776498 729930288 862935209 568395359 995792648 420904946 493470923 772672514 908462492 370223862 860180060 720266772 408693985 863171595 957421976 413102004 823310978 697082118 3371405 973203796 955813813 735550343 637918305 124857135 222698783 38776866 186706087 878872623 421729182 432016879 405265334 654278505 251706285 126953937 235985424 327694461 414373586 733900779 82245066 734268211 560119083 29252043 81099089 260149521 265640385 322009805 311246023 663226418 846569307 982608610 383613606 899699635 846744283 324014491 357438010 183187194 651011675 161296604 293446053 668710596 360489758 1695246 985252624 698959877 794121557 196755133 223254988 783704669 351850806 841754510 552210518 975081880 793706695 921608532 473989125 323756064 799429262 453670451 383466833 240971670 197889 210401758 493405819 240318411 99235912 253061171 129044943 135719887 722640035 27906311 507173401 428949077 822167453 497273272 67400868 969123351 963737040 730190428 69955449 335773769 471976043 759608322 800597762 427309591 718994697 820251336 608157845 628044737 179936446 855848620 75544190 185934907 155809557 361502221 591430057 690134954 898370693 838693075 680854747 641774013 420014354 452142333 357329324 455715334 336868909 88425773 336794659 206099778 279374652 81769340 725128753 807906554 29833663 151608924 419413944 725921228 433569165 606493745 975285883 800936330 871223823 10549890 792256788 317262980 417082482 737064529 118889129 84170527 120401766 639911453 217827178 962631611 50004819 491806607 875698349 135040809 874616315 515404927 348670097 815923417 8810017 479303290 897789282 388003850 365058875 607028369 693017426 514496543 342894133 516984998 862942334 368976761 336568313 836415346 407118231 150060257 515561806 772658779 255433591 99623688 962858477 549640561 91532467 315950333 148314460 429435302 982365680 809107198 473919053 722886843 44627587 662164933 154102440 868878442 559466071 437249041 917577860 139338459 649436354 959374846 490013390 301383698 755732467 436196470 470113144 581259508 559283800 205710613 398603325 697388638 612822347 710104805 145957196 459693273 123993594 352001077 725306371 51810699 939477248 339536452 778673370 635148586 737567872 310944028 769934428 496637325 427043632 793548662 189549747 939677994 638471302 854668845 816470920 217306347 614719160 323074002 520236910 311810016 221357109 808037131 244127512 186396956 516995136 500613190 457738498 816965148 490028328 139464560 338334504 66869602 391556509 173661046 502486283 294714719 84924831 949426314 363925519 920403664 682650626 767556838 586059993 661281792 851194378 393958123 361089988 286196518 954040119 539439093 573317864 968682334 868119669 941818910 65995577 710649108 14340611 875155041 93634784 730982794 991128793 777549052 78666028 109819087 952294690 777403855 524221140 603545634 737284269 899536365 641940745 250699331 867765134 342882963 936062219 514927052 83062017 50860515 884638576 847506839 518582015 901955841 316458981 591299358 533816947 559951448 325338332 90544500 53465553 16088897 468224131 134316649 17073787 161824800 335610015 246166670 707832033 291756923 574357196 970969102 916478379 494928015 149078915 33408592 173929083 885921627 720848575 484313617 980127756 402684003 188874302 458919005 917501485 679744404 260358779 783627063 270178637 824858586 105475585 333442802 93098728 511870782 304034851 336023060 562434286 697940556 998650828 998058499 340027262 769994077 161320500 280220558 456226095 232333940 296853608 637473960 229902221 286818619 451674834 216152204 67060893 48019418 288078034 860733390 694044275 907644502 395399186 660186884 666327404 312031658 984870388 554916587 98963279 858028601 952250736 828574077 971397417 318152022 176694728 128542100 885561955 752997189 495740474 923373983 228160921 612043164 232922082 310827450 84981784 985423113 617259836 495669955 126571841 403951045 107242338 474406985 125527690 995166056 31613050 203055293 383849728 298548345 513118116 137174600 664845765 974410117 973456889 25608157 215295117 669723399 874613308 464786155 461088504 776590081 968194924 149027366 169164913 575769707 683231898 912396331 398071270 321734481 829006566 517309588 858705574 673483521 135932361 445004119 870619627 410340077 194777326 609037655 813699826 949532229 840569551 591741978 22362211 341265646 429975867 148400201 407142795 641929145 445876824 195030961 139324030 973183948 382133558 895790257 770256638 82371720 702962285 519867175 906309043 194630522 925312288 517289498 958840229 239137790 250746221 803719155 206508166 832312990 483081265 167639423 617485552 20723880 589528072 787306624 165768692 426665712 331155750 137711174 323666491 666677270 908650677 752142469 68999506 611644296 901908576 913833589 239356834 360096147 115138499 7115540 911560930 218997866 104981691 408316149 571776436 701159674 385425332 684762730 344211052 145717393 297269331 300684973 455061030 886211653 869831752 838125767 80514544 195574670 241187810 842165280 930606072 130477658 513415287 277760959 447260854 186295135 92059118 480045110 870313375 100804189 236023119 290650501 147304135 470969618 516455116 782248176 866066368 415407912 845234279 139218044 360710619 603227282 909316004 942410102 998829535 958662293 71370362 738743802 454632482 714539183 724782555 811063341 783168045 411817253 824508046 886950200 824714272 895658297 789854444 494419370 630423374 702371382 783692905 916021075 674638482 934639427 420835868 903275112 452815379 490551943 185060925 956111368 383555981 177860949 183396003 43170120 640046152 93841084 899164318 192743184 168428289 817349116 256956369 233653769 509239140 745069682 126093533 114340586 964438165 895581835 189142837 917781440 225129710 9159335 668243147 336983928 395451740 637876253 945692590 334892552 416561811 306755364 104393658 864128387 816352615 575256781 895742033 732947649 413101958 704653343 508834139 643951047 270728111 41024565 767096739 198666874 730895667 88315949 161422998 714997255 883997821 744581945 210610076 927554378 551711007 917325365 920902863 91688819 770311544 500283604 696651230 933906698 32633882 354210774 741813465 408242648 727648991 528891308 526553380 309391030 40423381 213524536 574614921 676682292 880062770 209244340 618565462 253600051 545090641 964985660 129260895 791403612 668440289 541854725 517135524 724303320 847952516 823759422 719206164 257489151 526742674 420944462 838227107 315884895 852515741 611970407 459847455 782093154 665526061 955630288 59145760 695463779 965187063 484081482 995310910 41028827 566748406 304929879 341547354 23232940 235493791 706141295 796001894 64540780 940432493 61139890 563311903 431819112 82563271 84898547 629324421 842468275 360152269 500776852 692931557 946572626 451185200 878574369 3279707 376606130 508357450 964812709 950993763 127914686 650302256 238876404 655571844 649555585 68657363 910495135 814796522 948825732 120530362 152657303 986007787 853838136 136077299 666382523 458825842 337263469 775141273 750150416 141794878 207480901 173710618 498988750 803595738 333625723 470425059 219086520 417824 807012400 824917199 115902763 695403548 361582703 965497841 884536684 391597070 926790790 527836403 673000563 316638981 626943220 600436739 265550749 693243320 193138555 910113841 641119880 731470928 762935046 380966191 697933841 45915084 930998747 110332092 881502617 495390365 656106831 866015499 656170385 898270295 740719748 187556747 304818268 417327871 377350663 152314747 931107043 132608479 64685299 250505685 618389973 177972793 558832351 767327127 721261837 96793990 853666429 881303850 2301810 84213050 24131969 778128149 769330758 530764826 97379908 763724463 875445808 596466841 413939946 218024560 567346997 166831027 81457603 137172759 584591103 443509486 276169018 864881520 957185905 999905730 287907644 627379082 402958905 941796541 768763429 688243603 988716472 669121885 7587448 987459900 995694692 26786918 343124471 567736182 655880678 475513148 572130360 888350478 707403036 476766636 787839116 10145605 796475516 362813600 649148398 928173992 610980325 62808211 494900005 544738454 538789670 483886182 700737597 901065564 883383153 691461217 378694813 811427850 942322725 191615829 595249006 176178042 323472931 925721477 4575453 190586146 347599238 171733424 724034432 426214298 692274875 961575215 368624430 794998272 679929648 875871652 669027843 216931449 904086551 473170662 997064438 763848886 903343997 767735479 68476961 837236373 766957443 780232899 267841491 88918587 98170419 37009435 524072927 859634992 430085262 78596368 878823636 322354577 46376452 883897617 177830913 638711681 205887389 982310040 258413214 129248107 913963972 310477675 441015490 390149773 519395853 808403190 481989687 933106105 384446241 811014720 120057678 996366951 679286175 288338048 267577036 779613022 505718287 173698926 593468893 631161125 864368161 383267468 481390322 605135111 194645725 284346368 334984323 263667919 776964517 933167077 279973870 276446568 857468482 786734845 779426733 647392672 230156404 271438006 843215042 81540020 247771801 800625440 9396501 515681206 60651273 985355917 687783427 214746415 323175895 115471607 523657170 755934807 429023374 53093105 117571194 610033494 86496147 925327557 91222300 640482442 350377463 561085342 338352826 159752054 582058893 549438742 14873187 583731929 299132702 840974516 392140275 332997835 441311758 352563926 725122319 973661519 545313654 495929677 856870641 489235971 735589533 509483414 675255870 212260945 494709311 222987728 184111017 323585926 348972442 175627454 514683238 72645485 837539508 863420024 221461387 275654804 894308435 615186114 821235326 431648556 903229279 998031517 731717859 975317744 860095671 938347322 293259315 310192550 122649095 812382452 988283701 328886385 964149352 346141970 570172041 558419770 69820852 452006436 579131262 801652529 983670164 323457406 315301831 689309971 766656420 204708187 722389872 935460480 742997142 209625118 319172727 242274432 984013952 52110092 210709708 318726021 623205619 912278718 700144986 716051581 305837827 852014942 1617872 175966028 470430057 848802874 230778368 351489954 848779891 144747737 914301743 861263085 882417380 312245416 917692700 783275577 167891773 775941593 327613295 242815326 811443248 673858198 982881355 288747659 62900797 978324287 397672539 41685678 647689031 910269155 164262087 298331778 425770204 772290999 393886643 249914394 665888548 665652805 599490996 312473297 9882726 30682986 349178929 582095433 166072765 185861120 77536495 474393789 455415343 334424666 937894484 11268995 497112955 38036477 888994019 22006374 581869810 3489970 38088773 64094135 60287225 899742349 989599259 978226114 146216636 129073842 81859569 952456266 197199204 414842410 213331556 425281235 953917353 918308680 364386964 276320360 133723498 711296476 695881660 159396691 700770729 61906806 548301053 247951139 750323485 600777745 554182761 556711780 164250119 779733850 709227761 479905384 381602102 593451261 869128104 764172099 685384837 215495078 262159522 672661583 120651240 559784504 23739875 348306928 495797868 894772216 162435746 267403581 233027322 322523646 549794705 241970206 101101321 848845207 394875872 413392516 256682959 24323245 466864283 13056694 773328283 983454576 899429583 58532394 61268304 531726527 193907008 719330134 143328037 188437415 101936893 8179636 885530857 440809462 832066951 375699839 199347789 502685493 518678144 282541821 341609225 503290936 841622982 100282201 796809347 466479087 505720861 259932337 596046005 633703231 376401559 342368461 264818977 31341408 926250032 354988823 105489541 792327022 881012927 175711128 922153882 537079826 677526748 450362906 572768685 696161576 108542278 156166502 17145976 466601814 304494019 681848984 261662916 665866552 110689868 466851190 511583090 343226298 643694126 958387829 137088705 750616257 868287831 444594015 866107803 687792277 490222361 454027365 160347218 312152472 436426493 322897525 574461064 847880750 827825392 914256612 553202459 898905007 472927939 432660709 725883136 368199881 984880684 410920998 314881456 147201496 439041161 828092332 642992709 529357803 72778963 137445317 195378273 748101392 589855157 740735499 6908602 118164304 72580496 567170359 186860503 592173127 265844707 679225944 211758355 737877194 354341873 351081812 497289063 168271270 528539314 705300579 275287097 205920808 909436299 622519114 48664030 9754767 467604119 261295363 300762215 651564127 787059558 931308338 912167006 359201816 274065541 502080154 244157478 300056885 329318097 424823434 587278547 316468276 593469373 137813376 895334840 845769257 282249926 739478010 670181758 899384073 961250799 983631496 519636677 490891596 140274165 562541904 616210825 41552620 455260572 589351685 342092892 563486714 244153853 20601137 911514939 653400354 466187143 303046089 833707105 723307987 562337870 795146871 266624996 68273994 966043374 206495812 985769579 121927570 23741986 980013941 367283914 821682586 689101843 393808397 773692205 815896481 461138617 616038589 679261471 511006566 436834606 934630467 463648423 688119509 526265698 695332742 10871386 815750160 295161241 222920745 936597629 365185204 386091940 641784453 246231882 857994647 149607756 84485046 120843180 807393841 359556593 215284723 407480573 96436260 481378811 613175306 892328236 362964755 771545567 22413183 686743395 562017903 287164514 740668123 443899050 184276376 99031244 193976992 322492602 735531548 276285959 781604800 144222055 354470718 502942022 31571384 110816206 737017399 241644454 211164155 180327166 267667352 607354339 802871852 86752409 566945025 685394962 695703411 385168906 434277263 778827545 428376284 611129855 612491207 643182884 884821406 3376198 55579990 885106405 340552881 10616876 569045914 363618816 438893932 191185695 988360208 120586137 751055178 594945102 394149568 740480299 240514730 838157556 579609623 653829685 788587245 821405072 55507019 60269929 704253044 873496981 858264513 120748970 244417219 960336971 96001004 859309362 717419532 425364528 802163633 120584196 896049463 295875206 395456211 751685770 246196666 873925217 795353790 47295572 280025955 683110130 646799302 109035884 202036703 643196662 504161959 11125249 119527784 937128799 153339846 392029587 816722389 977503199 664237000 155414365 732459105 588141193 882900362 139281535 391696540 232471465 965664787 771414822 861992843 360901444 89127625 527258952 487451155 820108128 870068658 764481445 518474141 884958704 299432697 976471925 459728344 864726142 47372047 661835512 391747726 777689326 773813037 169934372 797202904 137570931 861624084 444275142 495144099 817703892 777664174 195767359 73057473 229339181 289108111 58491857 536166177 786074617 165055240 667472509 975555871 169167028 664457375 106819029 343366147 663172764 781967860 677427946 804816373 326296019 476870970 782468368 384270038 79514783 487941698 195225722 822263929 709773083 407165953 305387716 265504629 15540883 659668083 960593914 433811644 994472690 701687226 956055729 189145474 229724709 657395245 923860416 341699812 212121627 632391579 308965621 333012192 373792968 432389566 347093357 459703565 246480719 770389393 985908689 497218708 2072906 981341723 900014987 809906265 683779181 750672618 152083165 312063078 147449852 525889970 862883289 451649772 695133270 606115578 531346324 14812551 167357620 304723107 259103909 839014665 805503286 827682994 102281847 986007787 283624756 910389608 546545945 24553426 260547582 140333810 478010427 155940722 178240013 289225262 4123582 212091547 309462323 666188892 626070455 556019354 880129794 870397683 11953460 834753251 793475122 810867852 849868980 364089425 290267988 4864669 53542182 64745479 561040722 775999963 499100990 730643305 585166296 671396164 683162120 884645518 292740760 600936377 58498447 991723601 634078504 488322351 829431016 16298763 344077865 39918895 345009445 707926507 174322804 884744459 605765075 582462475 792692980 575724689 48866118 189214466 350219431 719139159 886123024 209432136 196518436 521915594 469528299 488078678 57312721 431004727 211006315 687655048 941988389 104319081 313458644 731628456 223303648 566762723 602334503 932139890 222813978 639941316 520558607 64962738 946060854 925970854 283337241 251220987 705832154 104935198 451664977 91423048 848181360 601646993 995041889 809736335 425506912 390674159 258587200 594562841 457646947 6937696 69198444 695956893 287363610 523127402 58867103 663188810 33442760 951648650 557122557 723442574 551474394 748331074 567898401 150425222 995240949 781530224 111653614 337168718 825594756 358201675 693072716 670033813 771881248 908832280 856711562 81312212 796820988 660058310 479204468 189904058 784076238 35394029 587618380 702717370 271096686 319501713 253391421 546815380 911150903 399098019 803638782 483288366 379800729 308708413 588759210 815329126 297201181 52483802 684563377 862282968 714916672 308341831 807664063 614857201 16976609 191756259 110340766 90318211 246662221 763942743 495836534 400397031 375543039 832319666 789944066 741680154 350595997 656439391 962073550 419007415 625683697 868037956 435165098 462041956 516172192 733683604 352473120 852217687 881241072 241522725 927343786 279232118 587763271 806000080 780745955 795231985 867281463 198034395 48699461 882973217 2295793 610943407 548875981 286895795 620150041 136300169 408445687 216840727 898949958 270577018 157874037 118701033 728917196 991195261 369378764 803487376 196924481 784780310 890041078 445429742 849986058 680460272 519240299 949063641 127493651 666927437 69353943 136072766 896846432 190398677 541631054 589221818 229305933 167654686 783290672 466746524 586957914 781037449 13213499 948538909 481683424 530931145 441092753 213269582 971363978 985624600 639339569 314163440 395557353 277407362 632617584 931590894 423978939 320697767 29629805 302623468 768438086 72309855 978462826 757002212 873448717 346820029 720846662 973434925 949713410 225226966 518171917 664871175 193528551 61568929 829264301 97586525 687067441 881976371 493187894 910076647 542337308 523310566 29407579 316184298 823081712 63178918 810246935 225605520 128593763 178656814 634345586 977371959 32683041 306933338 373852578 511116548 238203700 426675153 189901293 287145729 771134472 526235564 276493219 896542479 447219448 871211670 15455345 551904801 501372549 315852053 521311708 251349914 359389128 791573565 491995380 677362705 223801838 632296681 839202491 853661086 864273803 611697037 77715670 502396165 419335637 482236799 510609029 301388817 566793194 14483061 131159800 958722187 161954307 400879067 688304010 196245544 807371599 209526806 977635677 872399030 390285190 323811014 760422373 547190902 362534996 298310736 914369618 296960789 752111316 261867881 100107739 934772931 452918154 768509404 562917923 147729608 320390689 418488434 339660735 827142808 460550869 485932247 242632084 389941199 455626915 773929848 269228714 27391560 110496152 374532247 329575274 449387945 593962082 909450262 490805461 779775289 292827860 380872347 926162984 378212028 9884702 721940412 357615387 416910659 466183292 9994128 769784140 286761622 420809753 715482361 325286862 211199770 472069257 402612680 229713733 799104609 686675458 98886226 475113794 184065541 571090006 169240175 45830551 162501232 533219708 189598584 99993913 964566312 202453958 481322192 230532685 302383615 249585739 480071948 48857301 465051265 537917088 436462751 685338033 797769900 671073978 674664169 301515778 952550217 236088487 636124821 328145516 872606991 272480656 637115848 985740487 367490467 619427182 773262696 783830463 508794826 563777407 841036073 508400491 6818708 247615683 934323392 939707928 225345056 488292808 285049259 47964289 273625100 191233568 977397889 604381041 383584346 399277187 669599896 732255690 726225101 316043036 203321677 90310329 144575137 729328226 511110880 143984853 740041263 471838762 502624425 336135721 561079741 999250979 407277111 374669259 938320508 79504400 149257186 779060320 522628001 976550110 196819094 14531250 170473958 156704105 853848103 977669541 436252269 964191746 817371371 773819249 330494438 58047683 293925275 929760373 89234345 449878127 225369734 581138517 824410862 21194151 500624709 113111940 68267101 534696301 134294830 916195895 542277307 958956941 958228594 823513404 824310774 156716721 374712668 609624413 258468197 625852504 708853048 382243843 944747726 257064420 33266745 515083039 889473162 425406326 5020204 401814291 616184137 965540004 782357388 556843033 663725214 248957199 862575187 1844362 721540597 656966635 566522714 54460301 550507701 838107163 115731739 380027857 1403673 55744152 990479383 123667006 792433341 754879450 948835609 911481855 596993351 650125472 11912339 488606275 806563840 819918378 922184124 457554650 568605141 533787377 658574340 667279033 211772872 841025115 222241764 581996321 260866792 969309138 595696046 985759780 259921181 814429045 706702925 9673393 262724374 500869352 62231597 852058469 378621925 100176247 20795063 912050448 333960267 715004281 595236847 490007288 974927065 971270788 496548282 849200097 216063475 668493138 237246003 4107539 304857384 61428219 851415929 430773720 342029659 274331717 252731180 893749646 179187747 626466699 416115490 242653518 737446021 242963285 741506221 441030022 386758879 124917581 379549308 217641360 962615253 684645186 599657710 103503830 968527071 69446997 936240043 726599270 546546476 356178999 564357047 603428663 268998313 865093843 870755277 898850875 936882055 671339528 437245881 867150936 400805478 95546064 956718084 940662618 139936883 897989985 767034764 496071867 423344437 779064716 471917867 602865193 678114683 268215178 441480831 389962581 6881623 495155050 551272462 207362867 266306098 133996607 516293204 482786352 878232979 522309388 970710289 3662973 435912144 557858317 548535482 13724912 904968946 230927149 356069966 860417303 952462926 305978233 766985172 972650118 40659452 821680163 309373397 177662138 295016179 914035935 461955139 711803175 863610272 983266938 251568167 328448043 286229936 867243700 161918596 84370819 990989466 144949834 331527418 148620236 360964225 320497334 734378694 813314266 897329445 112645351 73554898 656812489 303785045 280330767 188908596 72269763 543898450 116082147 986347729 390374799 213669139 960674787 686213449 376193213 34059261 636064594 331335060 883018973 791367974 133078439 463544326 980313887 719159063 571041432 606960854 730738787 234575158 258504330 42665252 454518399 502237208 774790441 279403473 12637963 865405006 250694117 99011303 115344812 641425816 437090129 369805619 662529805 578233182 361990562 482845810 772184281 999739196 804815917 409568430 440558497 207930409 891998722 330388964 130146238 327012385 879961214 587787648 405715538 86396128 190768000 418680200 179065785 653849391 947534156 629222445 749069277 76069552 208398841 859513244 538982092 125175558 862297850 719693379 625217026 835301004 492033493 144883736 907149836 98032414 594953338 28700386 435440636 44688173 770318764 583929173 290714967 623972799 156619861 491885218 224168238 473814898 301398115 313985926 840547433 452122748 670291379 869798327 713805567 802900834 122965454 26369854 792772070 406161214 526235797 696783809 141397200 2022170 180673853 628921025 81469742 926847538 542491937 96265981 538619727 444662985 854314281 629096162 600687693 632273357 111121868 492799099 887143375 217236109 776957587 986490279 342079932 665239460 427318399 764782158 809925677 654260204 884014604 768423376 669059915 947856987 752476747 581742088 355364226 113687471 903040652 37607550 60731954 133444114 10759993 158871286 775145431 835291285 368681618 818193615 454170441 692252642 670280491 327463652 665457332 260228555 957371615 741112478 441060222 520395244 346554552 455456397 497844365 857342853 104937768 61882249 345439349 101411160 256752482 852161087 760616642 822889075 838278588 610245419 171670772 544623181 465734191 467946919 980571967 847640798 512998955 270832441 129620847 931246773 774171995 388368487 618189799 917176962 518919596 956470738 56458397 221005975 820122656 450442549 618226071 340707661 9414342 417929061 450583680 828294108 667673164 338796418 49043468 461944969 345130366 531915053 231849340 123379816 724990149 215853860 807249787 135476219 148317425 13272803 783247143 547162080 456107192 207652699 338010052 374044933 919979938 712179220 991709600 8727704 980188591 773030160 829252310 280579683 701404184 965478145 573675073 308376637 588976812 60816962 805217528 417345028 290141121 724487057 389562063 743201481 13944019 357744213 687083743 636964763 396943929 82950735 36350129 810310062 456862132 625064991 160816867 749589782 362239924 33546014 39794183 106451922 950391177 839576314 755265524 569783951 581064312 972964145 601748152 960185896 630575421 609340786 286913111 258374946 545798335 636639957 717891617 752777948 617338080 956924136 831406938 292633575 985976739 886299545 624747779 973394858 334361745 287731096 554852902 129240403 866877180 354290974 182226623 76558915 89938569 926763928 644810084 687220463 74204875 576000039 100013305 160187596 243288117 626758313 82279055 521628565 443059026 441518186 354472775 736396493 986481839 191104524 868915261 114770389 980312255 275396503 151946901 232245271 71634851 585531991 348578465 289963501 251656549 980279656 371964519 868344319 131862092 410653529 410296205 213398665 738405057 337010577 411472322 119992563 672673680 464669001 230833188 541915844 869191194 14454705 171392603 474167639 583115010 716991982 418556524 564247434 897248306 600650705 999823232 399603779 88096443 154340 98645612 407561044 894682050 445436077 784711117 808406118 316045463 784490668 437383736 517358262 986085348 804645532 944749271 706843304 14357664 878582402 298035981 712691620 421174534 655571717 904420565 105218627 448996239 431996331 575387092 472693598 129064150 807700467 737192685 270683534 584506032 721165902 233221310 385084962 362104183 211765362 993604366 441172864 666821929 970919793 68685205 574231873 993108570 782224304 903489521 41500327 282231684 569459959 956744246 953033221 321629347 556232093 458916616 531185436 438044114 127720404 727544822 663086332 168490010 437568515 181810757 409620875 624425122 704388198 985252166 141184020 618691064 409343122 874651009 494699680 266550442 250366652 563340631 329040494 138778607 780243608 205039440 486524156 877872059 29386219 382746639 42590012 885386827 6091027 624529528 914280209 638705834 729376524 623407439 896081779 588372093 717295688 317654242 281207973 373653572 870892233 158015078 748328845 78931456 608787386 828330728 305013761 812035209 601108186 573185616 401893840 348067476 228843845 546150083 554682750 572951867 721060642 800868445 62469163 547148242 301249953 241692495 307752744 181015570 620896856 247834211 630654984 917885188 913991090 260298145 888985703 514485889 736984244 567202410 369574952 216669910 196151771 420693063 104042998 21883676 423581823 334438 332383382 632021698 977534079 182706102 748529823 353936487 363950886 38643882 274110865 169577796 37170654 970433201 120461066 415632660 500329824 996040035 153181904 862755174 733936858 981415639 860787155 352158613 397781338 766498784 85081094 886174395 446013219 785510744 394615975 454287533 199686382 812006624 529443585 707219417 746375808 303950500 46634702 342307176 195812310 984365663 650546969 412797106 433287693 342222237 372270688 725730564 523245315 63233774 796869752 712130250 108291616 144413772 273502017 390308932 673047864 61816558 262685148 37474452 847195552 790382284 326365258 32654625 612916610 943573883 586521947 542536963 346715060 267537966 492249873 842610195 199920920 134531718 683091849 341028758 301277220 507828079 73860380 861833431 854343431 813905580 375706816 53954317 674616568 346684247 658502516 194157805 108408679 231379226 371223065 958630997 86645509 350592392 234469565 509151573 775102521 645192848 969061435 402463667 446629393 277842267 958527396 894105384 675416439 607312219 574603210 753795762 957259030 891708923 748370618 850894448 740484781 99884872 409901776 17698304 922084901 242937768 984859800 862893367 238594901 462824298 427782142 306414797 401431833 834910630 835620497 520058277 309086119 531464594 842979711 981401040 716967138 361404648 202246771 582584785 121966684 489643479 180930441 165587330 135510684 722894179 665810881 174801613 383742110 375588663 75842871 555796258 369021031 882734737 918089489 408043967 358105826 172718328 60553133 462023914 303471635 78350938 592494157 135107956 214473882 319467490 593499762 197376622 710500835 199851727 712928913 446618138 245660188 230483158 620095826 496387202 583208386 266850331 790668738 458035501 692037297 6766440 802201595 522169151 568079363 911799175 68508446 760251820 200627473 6303746 806939129 121793773 800994131 952642888 132102139 373018596 487089139 463805114 387813041 857129133 526920964 745490361 104403397 260763104 819242363 13811091 657158911 619415452 136639834 498379585 709404252 965318681 594098655 800015703 453590204 947901447 255900779 599611622 724861304 976687342 458628106 477088263 109923389 289240020 848429160 535478486 359393334 656981859 979871985 769032203 557506453 209729079 210852308 425082712 132853474 901105970 713233067 375926802 890711070 448193470 66945213 935379576 18844772 816952966 735216601 327461391 760733086 272339814 397051047 477516467 960340153 29259349 897618607 579891247 116392851 167375472 869337970 374295499 290630875 23540622 664505880 469755615 549508018 770774660 274863229 132632530 396581639 160585661 982427136 102084770 235566612 344071658 531412567 789082836 194832969 52856752 726589600 213112266 680013279 310022962 326077152 682148296 906752212 476077545 292876923 702966680 414944971 822537683 852311014 447802977 334784478 899070609 931461212 944669019 490156352 795613848 700708681 571807079 357779498 969347136 817189403 803147856 164687621 60890579 194121675 150166393 999332836 544319562 333680086 171337528 185895087 46579199 547799074 327736308 866695473 762559134 4499766 759390089 651163746 374191377 822061695 423381741 736542200 512918460 573934344 296483476 186475356 525493866 689363259 117415675 668330282 548827029 158837646 50211380 979465735 984786678 668954067 276458350 634918618 467370256 547202604 330410760 538929210 173264411 20094309 706726642 533562834 290372481 980584882 448023720 819831756 996137395 443232873 62304195 224084564 277075416 908856327 65456965 711340327 18274742 43910512 146432500 964522892 560518535 899273812 239144901 847447075 875166725 248373642 959527680 884740079 882670335 158287878 861353401 263993781 752795618 361776088 84417278 496198984 3691658 776338874 71270325 954180161 210315888 944068911 115209098 277215766 983008200 610873780 252962214 970947499 531883600 983473005 920015081 194097084 281870510 671543698 985919748 240028894 787235653 997627836 101692240 77671103 813657987 813509877 965317215 402597874 694565185 189050713 209974896 593831352 451935551 530481689 974985696 363697689 758757426 602561314 134270753 454749576 444141374 361204171 162667097 79273080 903843368 957959263 491180233 440896608 304335532 48362664 363707649 128884897 747888784 166868568 25778957 754390283 316150854 636982450 706051258 604870958 16236713 38695802 159085535 91497691 449376271 860687502 633914076 160320320 160346541 224258393 326061289 723435279 113067675 854697959 361965887 155453748 634971702 565636904 887388569 655747934 770502518 321672076 105043395 355067939 211241679 172039811 786861480 657625855 944900552 870858158 185444566 537838180 247848077 170419979 944129350 129943438 758939153 418797965 832258098 960977651 369471134 772719473 384877262 376541139 559059389 669222756 504535581 248631541 935867995 967079597 625125315 983185893 677782195 791437849 920561410 386637437 487993880 699613576 734063707 584318417 5582443 650428208 363824076 176035983 349876214 61523729 653306221 17523158 766867016 975863925 635797478 219664030 805703171 163441478 414789820 814143153 475197528 797610703 328576652 452130322 372979605 331206221 862800923 91832137 697779941 3201226 818977028 844113715 708033910 179511240 4863601 345221595 169442723 386120430 445772250 12127516 841232900 390411511 840398372 339383423 62143204 997017345 23160207 870643391 392846875 620627693 811190595 970092742 534462782 454415560 179751249 331910055 141554413 183908793 408672688 644534534 144786978 347810528 701437397 119821470 6842409 432565956 422759682 470227539 124055402 822707017 114225647 706524388 411398256 490617952 398982259 768714986 193563932 59241623 19173282 430965365 216172994 713876737 764321338 474614427 501327442 343657881 711756355 483785724 856643257 309363447 675456256 81162986 241573486 962813117 407185674 187652594 370606262 812807421 606126487 845696601 661345545 421855619 458600169 495340746 705814435 10498137 940896133 183319507 67503566 751325699 645516378 281517078 952048039 662718754 404007322 422864920 777715185 422547675 365660594 27786335 332671792 322276065 473633260 823120916 922066915 516637804 182361023 706734693 296465632 607183565 384083936 300159612 347097878 638909740 75305461 954439238 786423538 387936502 829776188 925479219 986041787 253608379 388542092 99394792 189657391 141294124 650342900 290990446 375274034 212612755 223756762 361356342 939178944 224082798 169847 240687777 553643799 169306576 329781306 224539987 978084525 368211525 567633850 720046159 827270104 903796129 623189084 130051350 79606402 996700376 289198386 404308126 249845782 405229611 822408136 187683517 544785521 880319277 181435973 532869970 124810531 709214065 673792093 738036844 570076697 33459726 463785721 583475142 14769986 216224423 602463534 194179345 672832922 391482573 181409561 435856324 683507863 88044639 117874109 956638431 851835114 93053771 554058025 65665885 631968471 112158813 781549344 912736794 4588902 402881085 535195412 91643703 408141711 151414749 951031550 448723258 101763175 851041882 22054981 248100532 520881976 43358927 508606618 392678501 370041970 297347124 975647378 863823874 945453400 868191495 853738610 626389838 450746451 974820810 1901571 456610061 300645564 292976551 422212150 866269475 42075351 51636023 818078813 723970030 430700522 569310692 55309299 781571377 201138743 95291190 722561783 974524470 375671104 910512782 681913145 857911578 50471483 915820272 252069207 908896612 803585105 507714525 236224483 371410312 334413513 279079151 238932213 293802800 53733688 783550171 891429113 710381093 830570184 131613232 397459112 536118841 686143050 984425392 346864771 169220227 480110128 739291178 637885570 246223425 927689198 345322050 846915762 179444219 889816450 359746731 403290735 703966994 572040128 725568007 900226466 766215263 403695295 967593215 396593326 39331617 255472958 784249918 28988028 592481401 403658836 310322746 62609867 302463780 872091110 316026080 505658470 840242604 245085113 843261190 283317404 421586408 493784820 444222925 209174705 396844596 104204250 385715447 102513979 401537787 592134760 849651295 201489881 222967383 458391503 773873297 379479002 607650361 509843676 93892422 69978552 728554588 231373387 300573132 511306687 939538284 824263751 900019237 802693901 527356184 885292087 169916560 295142507 191420955 263590951 173124753 423225459 399514018 59376411 323188676 476787668 381685000 463464082 261290767 767070520 777290561 438798230 665779881 573702942 805734678 777894566 47151229 236765779 316581627 626497069 426607966 948793917 10278375 686619770 700199474 267832315 73223586 485038871 557316218 991439987 585321066 467357401 43888904 913626956 315034225 236125251 445556011 820239890 891394244 778390951 459123594 241486954 523864944 987815325 808841842 421856323 49684596 549314858 112041546 454111692 219018033 39308633 899281762 317347063 490200666 115975218 334223133 241184384 139967891 147616811 218964105 833575278 245743575 388513466 679669990 532352018 936815294 489708524 669282523 991796709 749824828 956449354 685240657 313316987 357487649 121427332 140546798 859884466 178976039 716192586 186542174 960697895 842814507 760912351 822291093 242452601 395357353 324974207 157611518 408035137 798871160 381567233 305488751 620566542 238159803 971050921 754327344 737263249 288817745 939709168 181136816 370854843 894319986 932075554 341149762 558242760 383069396 581572770 742579802 774638043 97886533 220361998 369842466 471123443 655973846 742249940 132463111 963303015 231957242 812364365 151898883 498153743 768534803 50577643 627626508 619504201 518245265 731017859 199276263 435052544 244121666 188154425 573822232 19476086 332745618 358268132 20368452 597690302 688581565 826116855 154713105 949271583 171729463 30754902 779177694 245079217 555625813 62249903 882011687 287432324 647510553 804501484 186711615 382440315 868599733 417680176 446783470 472620594 489459795 205464549 875575735 595754796 472741196 365304328 779746690 288611910 799928695 700753089 324715587 992375592 155322293 518739388 693274272 568413032 245972945 984550705 9020527 735255983 606693790 140682671 958988208 148850373 955911037 662939531 307562215 377811224 928331641 230897941 971676694 147999272 184662921 233564368 466927570 419963858 503904753 485225231 468308307 531502113 350920289 66029593 143635639 394618236 979859177 776322831 398902848 606148967 670763761 37485495 496071418 115891973 254287163 720067455 394855525 247400295 190559655 371275967 593056654 59784174 316352436 601869876 754921265 909966352 695959508 5052601 286313063 907342737 926929828 620313297 215914986 495005060 591581717 871735626 98099385 837130990 668944482 224119998 790652258 396640933 639358933 735753293 925527610 867557421 133578557 215355135 729599142 793774135 387456080 262717206 823658054 499133843 181053621 824780855 650444860 622827111 987434809 803529359 603748966 330783333 744072691 836728041 487811352 794392484 194309533 527100008 909093933 964881658 174469466 423287905 614303445 434495205 200994294 783873315 898777986 452025384 108661240 48402306 263245965 769195944 517385244 752763491 192388926 222224857 521938537 141416463 413940341 440551529 422017972 132877559 741052188 351396661 927941184 909992738 567764920 108983997 771564734 451306928 115579695 307157948 884624518 396369710 161956666 712106260 444225714 315496578 897253977 131490543 167778961 994362807 15447045 384524317 474353660 210990316 560286379 840149337 365223872 87069057 969774902 45325497 799681788 437468709 467414433 904088531 801112018 97252566 896263712 144096556 405030037 856301880 519339758 913580768 376243258 773145077 313000799 762820380 692565398 574396057 18555435 195834162 410134989 858107912 758621030 253030963 408288308 144043565 516383147 776912490 329128809 79855392 245637024 441955564 517847708 464374501 889737437 724109678 826945232 468370876 860412115 446628036 587162276 991538766 337585769 957396221 799389485 406554441 839179374 581286827 807726723 98679439 342719301 787759370 613392720 127406871 245959356 817633353 42752322 549879492 854816011 130057828 196824435 949628755 207254199 48570392 619408638 113411210 88045876 249130559 204492841 99353242 512080887 145015457 315891831 606242884 299513630 117714924 504729455 20319361 464587482 730186018 881109681 818820075 208592176 957073531 861154692 313255817 9423251 550270106 489174983 344718264 324720518 856927425 563283115 340276094 555076825 455922666 557390037 10723820 318753735 623558318 607637889 567947390 817372596 986761628 895340503 129202808 516816063 829008664 461005675 793071373 892192306 344872770 184329525 675990503 472646582 307402298 864137825 247822322 577844400 112841126 77777862 899086678 678897029 954524082 847754359 384878226 853318866 479957673 386119572 183664466 157744141 212394421 808741317 517432878 546166331 935871169 896053861 780020975 955648029 612337234 773925585 73911544 448597001 686251519 691325224 98831192 421903705 899410672 762237481 489479814 409709183 788926472 737071494 718782184 262339498 243034813 341536678 775519917 872279870 733598490 586350305 762403703 939613215 274661492 583823946 726673856 532379002 9966283 153512603 708263213 663217670 407712155 962790469 892424148 893705141 946082365 460050681 485548851 83473038 889835824 928006991 393575305 250914812 597901185 94250309 812965848 64423505 509558735 623302939 960799082 699972367 155713921 485865924 301067008 906440925 126125591 904302519 494186634 509982999 72751555 920967841 987533514 244679056 922643047 299375485 362747420 787304 858038398 94027955 272658676 789309505 704783153 712554213 986497734 538058185 160307370 32287577 840706421 879938086 526358059 773353252 682940112 771077511 959865428 977940381 838841627 993493005 982069349 965577445 523781774 285211762 981055230 777399383 542498719 464125263 440399864 325850693 596303081 371416477 427861495 995250933 770228091 15965796 419453833 506454442 453806279 521317861 131510568 542274190 80294734 564023040 957054183 113332557 295363853 416292845 676901333 968888024 203623766 16882895 366263645 54612390 468394464 156667356 398531041 937774642 903380414 634901791 538370464 205650757 144710599 614514040 785135818 665405005 128320477 98102330 113436966 838716461 185681792 883160838 772943906 550168878 305846472 320781371 503347201 592415652 662312029 487213078 394133924 491728002 733791349 204427058 565284135 596369908 871587811 524546734 340901173 874337938 713627969 229785995 883335704 644008900 10622522 48720993 891439387 85329517 353304655 878044113 335167654 372286303 170191290 255387969 83248209 10597586 33998047 116104221 250761142 396300498 587428209 580286338 472408121 140463191 892820392 664833531 20330111 865032909 737914415 662776230 104079099 200946846 360472907 868356978 910595827 521937385 242208225 516421049 212489713 253182885 617049845 763701205 378638163 7302328 625914011 772003197 118650349 656339746 692581255 602214026 256991349 851564943 646320924 940875900 658455856 920762795 18818605 503644792 654395210 404953777 725891890 891500086 160429275 784485211 58968746 757019617 185089222 264668671 427482225 521145803 121572923 403459779 996316872 371765015 987754028 332764735 579401960 479387493 376456216 27562524 588670406 744979317 427503059 458500254 34092115 463757668 601110449 313329740 628362030 875813148 204686841 12200619 378203347 466910288 557978567 518974548 944148541 458753455 20421929 660780617 162941344 468688931 91265056 377196914 869616002 281565761 599451834 910214449 815186366 228494246 121153329 467719189 105574209 755713312 685562840 980005471 943514029 234176918 564344815 936526187 929885014 608743081 453855521 601787074 877566868 793303630 354591133 802002465 176727561 802887203 888589765 761976749 276903609 951304553 703801482 642504799 539451069 85737316 53989919 824160236 480337377 171344320 753945858 324390321 958641264 277749189 894408171 733453263 26043281 236660243 792820622 309848250 265275748 473126998 183247700 278336579 717722832 149285060 59812296 394902981 502298803 69443469 172604723 587269518 311520532 178065931 284974837 922397279 55355051 411039782 88725253 35830543 865641987 766636242 780251224 331719436 738659869 484868053 696091186 464087200 520993019 756526722 991632341 648531386 952396185 389437696 766384342 901891564 970076720 615301576 351525737 783520648 583378513 310473447 902649953 244490196 276512196 10012716 499092118 647477454 457721188 270480996 198929533 231171943 268347289 826247242 832758061 938757611 663085256 234900024 883793229 335442133 582569156 356524193 68712913 573897960 52117409 171950113 614222610 556179467 217125908 930097703 355176392 938362903 643753097 279568363 892503120 694142068 75265276 34767393 346696325 492712146 863219013 590454350 757817319 180817337 414092303 704610825 63375000 340989660 934928355 955410340 629585532 95037984 556860138 144002682 480335425 96614002 82098743 896941310 607796772 308209239 694183526 868756391 563647092 396365728 2574916 716748128 943340254 394235479 33894720 125024678 628355830 783879214 134757554 896308467 466753232 519284339 792834276 898208647 602617153 139896674 293784541 557802303 106034193 380769106 59965743 782384181 946193905 158736596 373835361 623013041 762539945 699487972 119737638 796599700 307362945 107347840 183201516 356855536 301876548 732789323 131759584 137361739 415928275 548568971 160024877 156592403 256940892 667280639 89422297 367380227 22154739 96292942 515895764 209433574 721771485 228661506 321477804 468324379 812365516 916265580 980928862 966487609 4642220 429455259 59273443 734421195 321738509 325168284 250211778 947663659 778652784 611174325 518071312 189197237 499259116 552219814 38839751 484047550 475416308 313681273 710715962 355138160 822103515 370438414 547086098 357829391 14051537 848487798 775664929 309831034 747893249 528307586 616049273 907656884 370205533 968442878 643109031 159023727 39889632 239312607 867463429 959337315 645568703 414223247 868470840 446274231 764780387 240823094 541915512 119479525 202629387 525605538 138156035 878186660 429508532 422145585 466261082 638449888 967604998 67090200 664804549 801346402 955779911 866294120 221940410 54036283 804034195 188173497 925039509 103832554 805998760 191204158 431914462 332631148 261858470 682247234 829754706 148365347 192366646 891950714 212955244 124841453 889684294 802371248 266606874 412088034 54097124 802588101 23841306 835029474 822310992 162820075 777806510 65648243 802962908 32495750 697240776 358351510 437624711 804013985 888297938 47426270 512810841 173821602 747254627 143513370 925286622 606469035 806027441 56983995 627891156 990138427 756717410 670880134 452028035 666193410 92078901 347909682 548204025 920451714 780385881 640997583 102940848 896528154 899305875 775340414 489850742 237180479 633060263 796531978 785456414 767219880 178546778 168926955 729829201 575347528 260614159 754066401 7126106 228057278 6372717 321118332 385854623 19948543 848111225 142599510 149710522 386109431 125076916 788109241 618650674 165695876 617840392 566465559 526041452 792370064 990959189 696144476 779939185 393403485 130332007 778056596 414267428 525321121 645750494 685021599 720266855 872365919 117910584 295593248 160860545 867316756 200986394 599363443 855239813 173958935 52720841 454102639 615391445 967925186 210633228 148798987 756317897 34375116 77889698 39828691 616835499 201310888 585047735 622342485 458023975 134759907 479395414 324255576 406157962 717621058 638483043 127603142 71466208 702864557 553029100 774893124 964600619 542316113 507994792 106067325 937990378 901457272 719103849 711433604 704980685 651032094 392736275 105990483 837593526 910813724 949947452 776721288 684880125 149583832 184929556 434726822 566420391 244309842 239440793 219658471 999367919 847453567 791632079 412409926 159325630 540546298 453545081 829473421 941217410 305578142 40171685 597716710 636122076 119288642 538868923 814568578 663841216 705243487 217865276 113608102 846778057 217681163 885364350 376067325 703839819 416673309 809391337 614175167 376605418 323041405 803453036 621412496 184190157 548766566 185425616 687468607 520396196 487035695 112960135 719456585 666725873 115433131 749340766 122367925 343286546 677898144 599302727 482111143 740891807 457115695 380927505 920615139 604778271 374687077 273551812 992289268 212666061 987697412 88980455 113025030 487538923 629475636 721144147 93331564 839579857 688329904 300108522 554239036 104455937 3542620 636803158 425987994 120960661 71170709 714882941 359103981 657355966 991202257 732061826 928556827 494354752 314555528 506496635 600544819 791155264 895982922 304327663 452617891 993770957 313374210 683263753 228644861 120060661 198859580 562693609 343922285 57257739 810447507 220715868 806704081 153029461 792078131 153614055 507861989 406121511 92944688 433099530 672138058 548027407 874440271 285009265 955258220 444779782 782666745 554632945 22599858 482119172 669869620 28436912 532387932 527347460 292401919 814860983 75450716 341616939 825650636 86878239 518936104 540260185 710082947 276260308 117275457 215472528 298293512 681819398 143438766 307007328 12405641 914868708 373739420 682933599 145292335 302720243 142674185 62554557 955623099 976776620 555960694 888829406 193486162 289137107 152027002 271181348 273247401 988813535 216107775 895497608 125657453 528401538 447206727 388883947 860114026 166741353 540732405 615415636 29361302 458546443 969283536 706381656 841833684 484848827 904840210 476293977 524652201 760371134 690628704 249242181 160041557 799258747 395750504 217217336 251530053 688173560 399456718 608019315 958406575 411193556 237618822 389480642 369780289 728900804 274219417 463189955 171383200 371683135 277449328 925307988 476505908 351640063 715848577 378254270 571817172 737825054 142783436 313545190 398979310 409526763 690821252 193865037 929287063 820304827 6554148 403830902 168057530 622655069 342943951 954752212 464914999 643249188 124200140 233791236 202660960 156540057 180049644 145842985 643160892 504150283 703156499 83111328 288520403 201579172 378245691 680215866 932477704 485137465 932926715 834620177 710861524 228989374 492443729 301579147 38200460 501774629 679208186 918879870 501161768 194260194 919296230 216022570 311505161 271659820 459290468 54652154 25810329 366335344 276720154 490450714 399060952 686979620 420540034 10246238 739515003 628642338 719830493 393290983 441335025 329170642 608680242 901289167 617706234 950035295 472188611 333917618 790411805 135582968 84510487 935267485 855416913 832618076 984978672 796302810 371502572 305218415 816688969 243088387 831176802 630516817 838509654 675458827 341940207 239059415 318278223 175262813 921903802 609085455 784344225 560213749 36823368 62617617 755577002 541312928 822547944 551067810 894526138 102729105 680636462 224607114 367980543 236088110 960465840 289550759 949687877 228898197 292872604 634164730 380341089 723646095 143714824 755799233 825785187 191670543 656469910 625695643 665834815 330996791 429446192 500031708 986522490 314844422 862381458 299365741 331016965 911552941 868452174 119117561 135416223 841116744 941844359 821557405 208429002 877760883 972585653 673633405 757412561 840331267 792091507 394235102 257971292 833618590 536822561 875201068 282262677 554307312 188713119 36666957 285199972 343536724 37974786 705890465 798573204 932746511 360308130 8199810 312234363 696556272 902762882 315538535 625412597 508023821 220731324 477307279 722818797 760899061 467166834 727465295 587158426 137199367 328332647 181315308 447357326 734699641 374743113 658995447 655576777 556946740 578602085 793751672 457405986 202382184 97597446 436182022 894242723 363331758 904750679 780835604 804289606 406478359 216346499 140758278 193404055 72009140 687135707 152688729 30301249 14592644 565103004 769887824 650599150 878027931 274009333 482565592 588742205 561459201 198707235 247955648 713005268 309856237 419457503 795155846 687604612 310948245 160152158 654030286 867520743 912799534 131964887 724932188 912246923 402500701 985423971 967895827 440279597 494516969 399334033 133421842 697113328 849333876 157520593 512573194 819449694 64949908 519745956 349224733 821172919 874679572 916353007 916250109 543390465 989849065 952964877 730494842 92541787 965454685 923113016 542693136 242571510 483732913 985326018 822223514 370174459 631647580 965123610 952949045 882936509 534033087 143575111 428910894 52953032 14682886 864071596 908438743 846680827 399875550 439812437 257667915 899798055 140665926 127505490 686132244 119581392 406610647 498932554 338761183 212853210 909716482 332102587 336801591 540471772 428149113 642508771 90973293 8854840 932182867 39386522 149018645 129656779 186425959 840561397 807040687 78253648 479153255 90771039 417184643 592963527 676744206 726609438 919104072 508583478 834128010 288645712 381640232 905799546 748963186 969354212 801570453 984409704 884089077 887256619 834121912 160936269 624789972 823366508 523472611 835320697 368240611 194356180 503017993 869167997 762649997 493814014 20356529 941629630 753486712 938246848 246535186 375028628 54766222 506395101 81611282 186851103 669813329 528042662 933503154 658758001 998169946 897223143 27596662 964213913 462407092 309814631 871300279 27838399 894471498 86464176 473768551 728409741 656253429 381246612 269548496 86426304 935265396 166160082 973728732 873213574 498182089 600389682 839520027 443966778 857359215 315431624 229850425 798657919 928965080 970497535 706709068 190136505 785906918 595244535 441404527 733859188 116029304 514759482 469058919 281110158 486631393 251704878 994184192 445115930 255934729 429896435 873564304 695580007 400366116 248101215 396191822 43160953 282111225 127056470 1969762 53485133 356250786 56351651 263450661 502376815 518473456 150864119 540278591 972925635 538478359 741823650 615961645 755273136 938308675 519589864 428382061 834572481 815309666 690724955 835299614 341364000 837009972 497129018 609169630 844292265 498264555 713551940 550555618 377670615 926087598 242287989 133137629 122451556 651706087 314967334 995869749 454095284 144154984 199125835 907960341 264858700 877803763 935921482 22122731 325063014 924292481 792346369 122055817 243612512 804795263 692417972 627554735 453512352 603738372 851037476 486242140 690024745 241581798 503583907 965193367 470577632 788906258 326597406 893922833 341203887 654149055 78011295 842766284 448894786 209985624 296642282 708536220 382910383 137033743 89017457 81855267 243872782 313258460 542194018 942317613 74980451 242869264 558577702 860233779 396736590 317581998 280561761 486379332 982369990 675932778 413593821 174085921 86304169 427703499 319460425 15713259 143847999 491687660 539977239 93023830 814443483 732854522 80857160 147179627 377454854 758900795 158344095 755024927 12011220 910480723 794713229 63490957 665138591 57461759 806725857 889198949 443469042 867166909 628518667 967023915 167168944 458881193 336488518 624566417 163672463 709935716 122101705 939409055 74518970 394358314 545866697 200229359 664555589 304850676 938137012 82240803 273105494 477331551 611318845 198782432 577949609 989630976 342998528 284656729 630420588 827397572 323573406 529290528 692216518 44595139 66376776 569471617 206991450 347225284 915789388 973478126 542399419 361442302 299330738 25855877 847106170 174000860 469313633 309660025 65887264 239023749 415656831 473194179 945672725 511869196 244504911 217014931 831162415 722396171 155782345 804639824 113369827 729146132 103327445 777107635 487440365 989851484 854157255 199407813 599218078 368862590 786994265 456809795 984748030 725095458 252216535 175585520 467931198 829098925 392111856 779649954 974545818 667574098 632755474 341466741 789786531 363951351 378291362 410458114 593662264 11126506 614991487 205392904 122270622 771973237 660484936 135541691 943628814 14154054 290596952 375396020 288632751 14155907 740005704 144028037 964018170 872461433 560681124 349227873 198844783 379722696 838557357 555102418 820465478 807366588 32287868 882055756 672322124 794842512 504628709 748800216 767079790 59273390 955535421 377830825 729047801 885827133 890152236 877856669 32362945 537330613 210194494 238380894 256203374 173948607 472970262 632644042 295890312 716296840 317028235 744188367 723965395 597302522 141433585 191242916 496408969 588228220 196714775 557623341 291961225 269094286 36381264 668455313 58478484 146135464 44783876 841071793 124099838 427831449 642420789 222925150 402278143 78312259 890039798 480959987 443933868 805634909 971795727 273546417 890492261 873186795 20514620 637055880 664805723 32121466 363979964 743123345 406842020 127122283 336824258 246547269 376734935 207034772 370125242 699079569 328366868 251883866 670890342 935477386 453198686 407912275 96219845 900789732 387124715 450748677 989674121 481051106 508603268 617343881 475329358 48522076 707677016 445457159 634252952 536281188 391158047 564838213 187245094 605951348 487580672 817829313 73379729 343640722 155738381 426733350 798606989 738250092 867759229 223081850 888416233 216743380 665648047 502766665 655752110 586192325 214286002 845859242 536125564 850559473 360109155 195239342 782378681 86813734 394766359 114988159 76172323 659809121 534157941 303196338 711384326 510478506 414286959 892542980 360564110 775932003 691835846 472992986 199955372 686441487 874000598 116861134 302859055 711675715 393575548 58582716 631029971 208251362 157002077 968655990 389580166 408742359 571411778 744508609 901856500 13435978 110412859 937543238 367403282 626923062 563136661 894460189 440666986 517509214 129565652 897119525 746023400 709270246 378720226 979767521 826807199 27902020 768211577 331305368 466594806 269501748 473140953 620019884 546359444 513521607 938650422 71829079 890434997 444322063 958905753 89648473 61467838 670075299 839338736 57950335 241323253 136447603 720026654 507695925 718486073 34257116 625246054 962162411 262663606 713787 52785515 147961087 740461078 881453136 78848074 501626183 957507947 992093008 788678023 184215394 172367876 153595885 437358796 912406955 527985410 493170559 364123825 177093189 435226998 907680565 190760984 630635380 226247085 64414984 983080676 61483404 194671698 696543729 627982162 735769942 770794088 862080515 698482728 44214734 404342736 357109132 69465038 464134644 657825082 457289188 74812454 80482577 849941260 975685330 185550780 475720967 629543348 700199330 498736520 738631006 705060995 87874212 356748709 196263450 811284574 225459912 185983601 755647467 482907120 505304558 236974641 425187006 906693938 44122259 964351942 670957515 75556829 755512297 131012286 906413065 186799038 115250420 213734432 244570288 858671894 268935197 245203702 132722466 170182814 625218945 986778966 279793911 571879362 234511669 158022265 929987383 296227377 441557746 553786593 229180333 337560007 443589290 670439993 748332055 639547395 992443947 143393980 44355475 676124270 622845439 988977618 936588010 623665857 506926582 508922739 244236683 541136053 285986502 768712858 263440396 2664198 522094920 17054233 331141242 600148862 986258036 231328436 75150460 662769745 522784275 352877705 804229520 234931397 778750989 657352144 709891218 100170917 107861855 69438315 773926368 772627891 597664935 515557042 126037463 508527749 276373377 74311628 127166879 582460491 352229135 929578195 19231160 704301252 72633334 543278725 203921387 988188630 392615851 800034437 620980049 665130945 134137983 354250181 918337834 228429558 841087677 936388403 38008826 157761521 466952340 743923171 57767809 827333502 870877353 251675821 647130535 863074212 317194392 730444300 964602440 440243383 404380089 769039318 348454960 620819031 16027795 639337746 336558858 773090309 229671617 452066516 322997311 69648433 13927268 22935641 493595849 579236850 464847170 340883170 406503672 905909825 892133013 687528539 408623161 409013708 581260648 117113034 435265913 605201890 813797149 222424785 584008860 478331319 83507708 896851749 923895709 73866594 301239186 255252381 703819604 639585334 414259782 910625941 165151229 136008534 731830566 932708440 340003974 439839455 241585833 704718488 163621685 465723990 281499672 124982391 673060868 124600619 340861657 501369656 85700129 824991355 424199683 288325437 459185489 267917803 527991439 952334907 198580290 593875770 892472174 296566167 887893189 241357537 962245666 271002932 784004622 248533569 886234143 243806858 96237967 987232482 186734117 727241421 231028520 280785593 928221374 43345608 941251796 245331360 613878603 278038462 675088649 181689552 458264566 828678149 396870021 186246416 345268151 449312514 40206388 491531236 68351486 73156194 489716572 744053471 920632243 757967951 700186271 149524196 952335537 417536106 619715496 169394353 385331305 942324450 970646837 312527476 311257458 17222147 33395827 517179533 773745805 17519748 249461748 361848525 935991915 101372675 466673003 973606530 336363346 38222756 538542214 553520469 355794359 455374593 926254951 50535662 713045602 63663921 217531904 685640749 704955402 27788657 833810548 560387026 557345219 490381913 551448530 529518019 86033158 831369520 571151580 644854866 4390373 27212149 378767291 577126001 518870928 39699971 743058795 773734529 209290422 316940870 350376135 911748333 921223223 617859541 638143795 988524686 385551809 833480179 480691551 464242391 30746926 73506407 74181413 415284230 767770614 810692970 165556044 796271473 670626085 572449735 385321184 681137581 667908169 404430295 566021050 280299446 556427894 522645030 626335715 804389504 198059972 253809722 783245885 870542985 272729852 505550104 496029444 421423548 55465726 520989203 83572450 322610621 720390517 311754699 798251102 261170302 2595214 230683493 319174025 706325928 257314847 494342263 888638414 702573330 781006464 651295819 687778329 546367851 135137005 286689839 591097397 761595611 281600971 468873141 9150701 96897798 29252989 532394116 197488803 107978238 109173036 123238920 877989723 841575141 205240710 108630992 44779089 659470327 19411324 158861005 55937089 647158366 226957062 418479429 522351980 90828619 148406007 662302320 266465138 326361815 107638106 405962046 18028461 18336722 651277526 720676526 779954400 83826892 871174280 545991817 383279456 685833353 877907921 752513021 417073106 303369719 278369957 62198028 647525241 77936635 847768474 27057321 938297325 494338549 549113551 684691848 718781487 111320645 201031001 505849008 50917028 94156300 901341317 270257907 775296024 243369806 713110916 469055215 782905657 582556974 205049532 823640065 904250162 151296117 967707723 494108690 540284941 742392003 380128885 176883293 72501346 877049037 437851840 573669802 6683637 57698325 537178952 975583632 747547230 397456189 947414321 714015001 94333768 109390769 604071074 440369900 442300851 150512401 266798431 543510844 150514512 167205423 462350931 80322168 93346055 261522110 312460718 330803694 362583029 390202930 951793714 251864448 156238707 36426767 886920906 769681560 502798141 976941743 102875630 444919858 724866065 963707132 323136175 654619516 637133585 967204429 821572728 118788544 359155611 437298845 841201361 972123012 478721246 335188897 888894333 987013920 681937086 197559895 751654779 74189976 580752778 336246603 948043566 805134326 815993307 338813733 44451581 612059301 261893191 788288254 585185148 821245753 382227137 433862656 875010380 432400197 720132751 349565339 65666712 943919151 329157672 63857155 846143109 533744211 252567700 926008510 337670440 268175871 806055259 885226478 118579476 610525579 269301355 990427579 227880350 835836930 341307941 527534414 317371669 513535555 414002846 740159598 672569082 502550258 724844446 327616526 881751176 656361992 775309789 814106866 230986282 442082595 690686574 69176951 308266884 262557072 833173386 514911059 341372385 435874156 453766055 719828992 224583022 312163940 822893692 745361333 613617430 79146659 414219494 72302947 585301952 359942692 737209755 664752705 497056790 281643100 246673121 19462122 297583565 517913107 462873262 505175971 484429322 202884154 274903607 66142974 382635070 976192212 637256182 445132799 742914778 624357915 904220530 656020864 145669836 541642616 987485372 678918330 288721315 915462167 659099259 905573883 335161053 335489462 560482427 869389779 647214700 829965823 823877313 368669690 89466199 824047936 240734685 494905156 319765037 820604545 539595604 919123440 992595597 122803647 862740779 680274803 553267619 724765113 791042533 635422862 747105347 140620607 722515579 251249920 95974747 33369964 200536419 404796507 476223038 775449561 745707604 777707271 720735240 72767697 928437226 660637455 563159892 159166995 945968632 349309334 300662211 350968735 710003815 57797349 761721063 503970549 245317393 66564683 647469663 342038890 775729612 438176485 118327331 568222251 877171096 811279213 574145679 489738164 948727809 916696412 950987658 782910873 162174848 668070111 722164814 720776770 462223687 460017454 272028793 394750659 98441474 676102274 716047845 424191058 628191615 244053842 497112537 241309236 100930067 390125197 95140784 616823971 899175547 726445801 891223437 112187946 403427516 651800598 101116570 924008119 677544764 932565642 479996447 87081951 955357326 855892196 830684194 574157544 765855274 752486369 24674213 259521792 169517886 731976447 656483416 844092078 308286110 821128050 471652287 794840246 631852080 906002813 931302850 350621731 991325766 388859245 993127347 278133659 732980053 403401952 997417815 251787347 857886112 547579180 865576727 379152416 551138482 54103265 805493809 167186205 564725209 471452620 100430049 188175434 231249628 608499985 405785061 422460935 822955315 656727689 963016867 459611907 941164654 619670596 489949958 672323847 922824047 587991221 326563392 465774410 351373055 818483534 420580075 959853780 894160034 91620021 237734053 646665236 895536183 68519058 633617010 681932071 488453049 158487521 115297736 81635179 765788786 573470082 675483553 802520146 266939082 607617712 397476568 500354223 832613862 162830822 652005518 235270522 144671742 586267848 561623716 67755728 606538849 655001264 759867820 629799099 628914626 613922056 301547748 174737629 221684638 228512181 155322925 725543160 817895351 739441137 581610533 481579083 145678923 213677454 126369106 846574614 406054830 436108892 730708427 491444356 138052345 216089782 891257902 711959261 77150306 234330250 536431312 25088407 589365352 325968165 251834508 365398625 879698811 835984244 180822152 700875939 923974678 177399727 5823071 123699220 532863073 589189766 996674794 368972907 941026954 65599828 673562242 920622648 323336928 164468474 755677633 675749973 694427946 978028426 346151294 206791216 282220067 81319665 48123788 891982737 928513954 137679068 979338302 304487102 201451437 439261590 727422617 502799533 47041261 18192093 895332359 924499164 612056872 635498184 123093613 551975276 389620601 394016035 22634207 630985304 936641065 245872650 304289538 43323620 324279612 70262567 283071281 329127664 391494249 251480148 249428824 955118200 863478762 525455814 327733032 423055963 764582661 229773929 572622288 135186060 489606548 200859867 540322656 664261732 217656159 833978617 142170957 170049355 768050832 357044456 617106165 297986878 958942744 344376435 386671811 910091461 666410376 542427816 852884031 526371702 704279012 890320712 129804261 441695456 339026327 132846839 263926541 507145467 31951872 246285589 130998574 881717852 790950400 249213314 253014320 691451988 136483623 463971995 299144913 881529132 29981532 933233821 722158224 74951511 176279453 286912094 63787770 310097829 393453584 115065475 471549615 303818307 913922940 475987667 919945874 679052360 419876063 311751980 107044434 472074523 401019831 669033273 656490963 547690754 628538211 939235145 587090800 143226677 318923769 40265007 407406404 983284796 258308179 308115687 301130498 33571363 332540632 338842507 938284821 896486813 535796586 208207391 428661548 494647493 224329051 230255458 739323139 2369284 836538544 334406065 372927353 162381562 149017184 505500904 698296642 983748567 190629673 870719508 265942496 91224522 886269807 483938336 601542263 812699751 262317057 368626103 682783230 459580953 365087887 74943955 56212142 430153339 420670104 307581840 538175758 846625580 399491527 103970115 510782487 472876629 325382305 813904694 362941391 924531555 167340396 628299720 247927549 611146084 129378374 347708203 513066243 878125973 475391216 240259221 462922375 19689634 85723406 919178173 91430704 827320841 45810636 270266911 844821546 126172485 183089903 810648157 449153244 487493428 993436175 33748885 443257029 647929776 934531365 571767009 115343373 80675751 205425580 256393710 709760605 785143132 354686212 997877101 487270775 164696432 563282348 919773498 145792567 899047753 532501795 683698913 853515858 101353986 396846214 214901945 579959077 760499864 246476567 813535321 563853711 556095737 886851172 648279509 717293820 341279978 829673676 848935294 24260935 41829689 274108153 929182625 489394364 879849243 333449587 244503514 481792888 190510668 993523613 171162450 482434228 962552121 667340953 442157826 694983845 123409916 880145164 360498143 801979977 654475867 858593036 833156853 161551957 958120761 473982763 389013236 865969236 575150122 795374824 980996146 110078779 565359817 917651154 102363092 296287407 986079932 906132632 547024701 149478603 808620059 534580805 234584375 291464303 525500065 865773913 74394914 662730915 92772625 727835565 361385179 665998007 726518918 690469904 901531132 228973563 664540520 322746346 430526083 987648955 386579806 708446679 837171367 425491268 914208323 462977341 235541277 335852752 369173552 422874992 327361894 19019626 156301854 370420733 967847175 421070882 291992141 798473087 732401330 450763625 720797779 636394601 913355924 301142126 871555142 59977828 680461023 304505731 854747326 917330419 67502143 848261570 674702302 41457811 611993158 92848146 971817656 349062401 887888119 553706220 89208054 632102423 363666911 11620372 113981541 793931576 235578189 439996570 792101973 18713358 499455879 444812996 284989334 285409009 36678337 526424509 868508201 599279525 820326969 282094601 694936635 120786887 512892439 942646429 110295648 70455337 807259003 950274025 546595482 109985117 513829136 4830532 232305916 42034704 819331400 230701279 612128247 779268726 379118457 334476692 135555018 207743485 178066536 794220050 765599357 424303990 936165452 62170570 18250427 921221809 699912548 36985894 16303469 587750615 490976913 813781620 516780181 257958903 929200586 463908478 171787554 383449649 515647962 869993214 443555998 735267491 543291542 832124941 153432421 256848393 409966917 725404344 575655403 843237571 711538129 250604519 462175055 128271244 770570976 476167471 524038200 634770349 934230948 717013078 522045557 790752786 635659320 732868421 637657991 65905257 966613896 398098950 518368047 444469716 746185664 490399256 565979997 375745531 602368121 746830153 70012539 373279978 492274343 647485864 405278462 287246759 670382174 379532116 727056474 211758857 319223936 75634137 861424052 418757510 872822653 51739679 863228809 134804837 569667207 814737326 975259991 589260371 495237456 788109147 128387674 189705117 959184560 184670442 883037783 812137840 253724422 784721568 995960949 126629625 79207249 94187664 554590612 355584529 829884334 240157526 177422653 603182585 287764151 120694506 613336986 306999994 260346141 864929249 14778433 87562384 631811687 196444568 877488310 194565971 829644983 438347747 535235934 767215043 602262917 35535571 791815389 763425779 863929668 453114590 111192230 219760918 402751542 294132139 662931060 14315259 970391393 829154818 178397601 56063818 691441566 863291811 934081787 657519277 571542765 746395349 725009968 406707294 268634024 148038587 469801070 614883195 587101147 854194019 665741572 665185330 757551032 951208321 541042213 821317646 710197144 444654200 532321272 583672528 418587079 62074042 887459412 188487519 679736916 52228474 33907749 888126363 884353663 158101181 808624448 842008516 382945539 511225861 248466643 890785126 980373745 983937225 578312266 372803011 763072457 121240949 531624831 607761659 382352041 104146513 794822346 936456632 199501087 834758308 965924033 65737788 86063416 103652378 124614716 120471369 678941144 336040958 266650501 174868776 281027273 609044283 804201558 21578777 48171788 267975647 751044817 942489974 840611717 118486220 599242022 543467215 8313600 628745682 716720287 792879629 171193261 123082793 356373781 846131711 556476899 596900391 652353744 629569105 568077602 219185513 578907852 266122593 89753829 493776489 521381947 996828947 654575589 760170637 349018238 285969585 293269796 782469980 639539286 374268214 290383182 197821238 43969922 633869120 111428836 129071912 691851710 543594559 381949855 691216685 95300655 41386459 776293413 919147603 170113 579338330 329265912 829317114 962926524 411001081 982362027 884602835 45735990 72963952 856683037 908396570 945956966 769129311 386751321 718948637 397158013 341998442 529952136 927955734 308518286 73397783 950275985 301029428 598514306 404866800 201717471 241898945 479603187 79354037 644053393 765962447 643132065 503702074 357876569 982859259 977860458 630229245 158720373 910982629 27681577 537657899 888413678 187607710 503250773 329528681 872301269 513806144 330168760 66136412 380709229 122688315 604572895 149912773 691636026 994957794 767937465 837444725 913937066 484689956 694843580 158393578 519550771 176708570 490728194 835357362 984573761 419294059 288360495 279815267 992078515 406447813 915027187 639761909 49609915 431143237 795741432 829588421 587897270 557517737 9451241 761904921 916821337 732886644 587184394 950829861 63144929 741037851 209577389 87904297 825637780 786743912 747277260 528856298 642348419 491664954 399669325 578995641 8798884 357566912 702903589 22177527 581805195 365770047 265059743 704907938 310923046 108956669 310003980 520454664 625849617 779690066 957177997 577221819 925160847 780299414 508343808 652149391 620460841 42206898 19045945 86025058 587532680 932713691 839541523 665192316 171720518 808730276 228390372 906232088 688687742 871965621 652055912 522992671 75597050 983327622 140843654 731109413 825615762 328563517 690020913 403968015 589775673 262573788 412368839 453647825 132876133 206379024 414329969 575544130 680484722 623039579 622244621 560294000 238962473 388700009 574762024 872293594 462912755 37912048 33679009 136062351 90025070 552878727 471016734 730551237 53213866 787527291 874173062 194214595 590826486 701413577 452155214 307701626 173722515 184218486 350020703 170948969 646585720 420342169 644687859 129010018 420738214 676519262 28926346 458792262 185319630 484071235 992998424 664365472 810949279 160032974 943908459 177236996 307986264 207823275 821049569 80111630 221446915 508672533 734543727 928874864 713437646 45693806 763700778 110414864 166617700 657745041 921151269 240227019 758110796 728491360 196751197 521931286 975174920 275743692 641061386 888811867 697271849 742155421 250812379 997832490 474249186 816211293 564292432 740784592 670091850 261303615 317112514 652926343 623754597 764154393 822563834 163536235 355555569 549643837 673029406 333297308 385690838 485986207 312684222 477662557 675174477 274116489 188997790 206953281 270254750 32553143 550991336 532266178 938846075 77489970 20188499 212636037 841038770 439935731 555048534 274797291 154216676 266197585 856967149 285603922 485683150 369810572 344690125 395026628 872164627 787440637 936847742 669568147 663935667 954330183 825292177 238365964 644970362 347655077 286424905 220924193 290870502 774553254 103268477 315319500 226806195 97690062 46031409 922483929 931666752 587410322 291200447 741655083 171879791 217450250 803378517 700533887 410734032 912476652 125008641 164876403 113210224 536189732 739646277 575313516 812044825 503243941 927193589 768552917 257699447 808513934 14979059 592984364 916797501 203343312 312187901 937730085 59034775 504644692 813767654 239141229 595939590 991413069 405658345 626940505 836420330 31499237 967205036 287910349 543577295 529980363 325668624 465597038 417748592 112232365 293651130 328312485 544278297 571610474 24173762 108238640 566974888 936377420 769095511 959115278 239555792 275179288 861191312 629954472 732545564 453696982 322093669 414518068 142960628 799235559 432982014 574370575 904577112 752291714 106789361 732327354 11907334 854844056 941808314 114200704 322979550 741765183 735720688 797851870 6677495 536496636 372258119 284403765 877382183 622645861 379212843 108424607 233463016 624711263 279274385 425943756 532114831 324392558 620645586 931558878 563581795 450344900 533949449 636169282 133460073 177406600 584079652 704397939 706247035 576070817 510621327 969672740 517056859 823401443 180971343 515812245 53252612 734931892 268237976 24541899 346553486 987436879 114041382 309699290 547780805 577092232 532001443 494777671 905159448 663364883 209991214 717524116 794155366 836375577 346201525 439213336 449185796 447734793 666317980 162331756 420735147 771286645 679953886 588027053 490351393 968935017 36335688 55440076 407849814 430641638 971924676 205380996 764212955 907455160 33615168 393970973 542874069 829437753 248076417 548499254 326072572 384190720 385980876 680901431 274038848 163832055 227676812 339214963 246570933 660105966 649953856 175050099 378899212 594448712 698242032 420156520 746324256 344660847 990957018 480045024 175690742 335694506 569985304 379468418 613193445 367420581 736452089 768007697 661245609 131809830 411284776 613591017 448430616 802261418 248525508 674642188 436888709 172631160 655842654 988283765 514441147 437442078 839768131 335456363 368006275 688727706 928588003 571580894 7431289 275036559 460950464 656228632 272834309 817024492 1223897 394793662 854719766 381863685 85515385 231579245 529336167 943473652 702038276 463738732 905888403 468997808 952799110 977458475 143098323 900091371 16054519 164807301 253714602 478903519 868640117 737881078 321034475 675535583 437003482 851245772 695286584 211402397 76722974 793935259 287682844 789256065 88100494 634993520 127829919 307630704 222058624 5127753 659835694 264437984 687458696 600198764 583092146 228555569 564094116 126369326 407780107 846242574 960450173 999520538 23851641 583630572 939732314 914694805 280174390 86382846 315968839 566528004 138634707 678184740 837596202 456176198 181069903 262874488 874892079 34399384 381892933 178465009 260324064 298939252 658446246 515016678 258534449 755953680 554347692 102935301 526175535 597064363 633629455 591032969 280578217 127752593 528221474 286040408 685064907 727853175 84678952 394168475 988345779 763043340 583369958 164133703 311411253 466776554 656955882 122765680 871864807 555869371 236743931 435952344 546397534 603590153 912370416 451518256 790311563 938990826 761117541 183030577 4173976 338997319 288665049 597836368 763092156 604110353 86115270 868137331 581254434 1920919 709312196 966794830 300346792 143376928 360430796 71338975 468595613 100387876 805535608 143946822 729964237 334645151 566741631 113697182 666570044 130997327 696028284 515219163 246747520 414147686 534535019 586041970 975953792 538203111 679366570 360913652 360917557 808664860 253037534 891038733 740803784 799695959 621760428 575999354 998274315 807662952 976314639 199265943 73951866 492865188 652647836 314184574 387282547 485105589 954025445 461415234 5133783 206021034 636078929 489730362 663551806 513301303 674146080 8843778 54981367 305840818 305464499 893817611 974983806 743841542 979782567 414393010 948727208 531036519 183786666 972638002 372762023 401644371 455417485 704914140 946759426 893962105 545589854 116347760 857670118 674923203 861153365 530205015 490141028 795128850 379121002 13040577 512574226 60755443 781917904 336876741 406466233 717322915 999456426 841410782 723908715 394314166 945237744 595066207 523824541 356254105 388761376 427164381 896404463 518703192 661339588 829459440 541445876 955689974 35947453 775851285 862555190 406293971 311113472 571504909 190500296 312398898 973781129 967485487 110288475 794985921 777469927 839935054 872095861 787498322 68030921 909737270 226629185 170246962 415868374 960696664 151359381 825762306 996328557 344150433 65815794 133748481 988223967 942849489 863109096 687861051 187061368 456790208 883211649 470207749 662478313 241944757 607984318 201910884 53894104 181937372 768383366 482976687 146642502 711231564 711963088 795217419 373581326 457783071 851250490 424528591 704528952 475395466 897918063 750611693 198744634 788111406 984952675 868602805 325228916 95911832 64405710 622408961 449596734 363685689 339431193 774520963 497022809 296262055 386958258 473274348 749971993 62976644 140040611 657882346 495370698 153684598 87929898 567696292 473697858 359936222 913053887 908237625 178889301 41411571 964450529 558402372 181002075 779791428 992391511 490887304 895756358 166539565 274545797 450996439 41781411 67668636 814525693 100416394 699044490 517301536 186661422 511730577 978663720 386799778 323621968 300203859 540607401 971210328 498292051 260369462 71855836 212164579 390443733 395920022 58486454 356864991 678780822 896532375 179085692 507436651 774394816 106973141 498383973 699854343 749289801 485010411 449988112 765984755 274980477 783852646 560352625 325385463 448501953 270003320 255125758 490048629 492764070 632917402 370665064 658267176 27286532 421250843 331906887 974577051 693024534 454533732 146375615 558183208 772091389 600082294 464830380 372982180 262202094 860503726 200558416 466643869 946870295 3433091 903704744 778295267 316940085 128784841 378342444 655320948 414408419 571913281 535149906 724085853 341412870 66658284 893986543 949759113 66457234 381915094 932341340 908400136 85468449 962348113 559902507 493880199 349083085 629202791 269946922 871557429 661449968 583824486 142476469 3742090 121069003 266822772 435502434 601729751 506103125 117893415 684469795 954772570 201277557 231337725 31445720 34690438 12490845 246750490 758626244 132833528 928421916 566317542 249010266 807989633 930738431 173286195 173606384 595111378 275197631 365844807 610090212 945411974 578613492 119466598 90597160 640307024 361358718 672907896 943875146 339513130 10809385 469035800 117684913 885699046 134171267 944575683 414377340 697095722 355906416 975533564 642671718 606223410 774594666 510980158 889124187 784761724 747237767 545562176 963057674 788481619 53430076 387460371 938359999 138224568 854209861 72785568 674180429 677406559 216476166 863776384 768048640 198074153 433728941 550754937 999418834 362070741 539635217 121525156 562470127 730945751 261194250 79956543 512134065 952020335 15036879 62560492 533155223 275170446 155603102 175355458 184680509 597945879 722038401 234400733 418353444 749509170 364715967 649597614 877869232 701319156 145523168 558836500 463910544 636898553 297690132 900922870 92458755 991969465 809099573 223259232 294666423 791937803 439655881 771876262 926384199 51060529 781238252 146787187 823703517 79245672 996975512 288295368 69631023 971598900 500599482 786946277 624759688 77772699 551823403 138590953 590606398 745675371 275374387 566385265 484496745 617228733 831269474 489523568 395009992 372653888 634389236 478911904 996062609 755375327 443264801 492823486 877314852 93002222 920759986 58391003 24604570 902953789 737635501 748688760 598903533 984766486 555420741 856392755 974442610 612236799 297704686 908176581 284602171 686499890 332502340 433652123 623147387 469199248 444237295 482298638 690615454 152083065 473852063 815703364 709815351 778679991 357872861 290610201 951347245 444405366 446435228 531995028 894224638 949367541 192415003 692881872 270657485 738495672 583410817 438558646 4038530 766913077 975953563 960760120 567820398 204777019 722193260 62142722 297918652 329396317 324733404 177354085 922559866 984273303 916623465 337728180 177715184 805347639 375969112 626384823 78489438 630670059 820721705 601208106 668302047 522796401 904280979 685964810 645420201 200486796 656763113 635230488 511715995 226112734 964824804 90053772 607393453 817926077 761087930 754785616 670672099 809554795 601098520 69848778 435941480 78860223 173568449 319259175 562047329 561515427 705165250 534992662 464516054 576113063 534273491 211136487 753396930 890562447 589583166 781974148 46331265 128252282 634718356 505939861 967522878 514311261 406703215 254388860 974850566 266205411 241347748 224553598 614084536 587714747 60803350 693603441 970496670 861748989 770996354 938275795 627449089 863984548 967932030 504557431 270079494 894291482 775555999 804977505 2264312 244713616 465910164 279501819 817693465 573321064 678342320 92205849 491440453 600799046 714453059 907350716 782868939 585670238 464645372 642712159 885550938 44327317 48283388 47534273 61319958 24219395 386512561 760281251 865101469 453324660 46001817 726886283 146258455 926343784 73678249 637417946 609637016 120472986 204607997 360181070 877952265 983313740 90768614 70816704 105650245 255003510 173800564 419833640 515436986 626976104 547750809 247309184 576343431 239142649 476544079 189540850 45162675 844832597 888161286 943710715 232143234 29444635 919076789 938931441 747950471 487354794 378118168 658647066 780258360 503827774 446894700 316814952 387154959 563194342 888715935 686385844 259480285 988944319 59277559 247216059 861499599 168319406 520783768 892889579 733192563 638571008 677489098 360168455 78260805 138982364 613328504 53915704 320967913 305834525 333122775 959233338 997980432 59041066 140220342 818080131 239150290 11757753 923009664 711552040 884256747 830494518 749113274 55652242 380364253 704545358 198023503 139951641 108961742 889869992 779338100 518115933 541119842 568770749 998190875 332525603 284546918 723911154 428534038 725387193 922269412 464623772 737524152 828559194 179981834 329798195 882356244 428385207 961089402 747488434 28055819 536881508 251287829 327666680 216380407 141448713 843071176 834219983 393928640 449279327 605399168 239127079 813822919 148545398 477698868 417640793 878148361 142630902 123966528 920973047 273827313 101891793 149198061 427283864 698063597 443115230 977714004 735621320 181824259 302446459 648328481 804713805 472306948 29531803 120259942 557880684 191255274 812129642 683026698 614037847 297185186 107094061 16819600 150274738 756884688 739522709 422070051 242345514 640716001 488515604 132045992 728543785 601056407 338826494 960558556 377851776 154390483 108108616 927026035 374617469 492673993 481560964 588528997 517728697 981281237 177596287 323276001 647298615 526097192 658717934 281538893 463811503 211477166 227984949 263416702 985315928 327084048 225023969 836904079 566676967 710484379 191723129 407709781 997071789 689393539 189951581 806107566 23134370 731396589 301196592 842717923 849591215 833259762 481598559 537492606 888537114 574314253 252056998 310658671 136214695 58813013 138109033 13622247 210563673 99764 26343585 764880399 677864863 629941357 565786653 221209697 171048839 166581855 287914312 871610276 304537224 847450894 656735033 909379830 364982293 788100155 945119220 618115542 502789613 653436291 26173989 627458891 953681051 53342051 266194658 518486519 929978542 406773657 395344194 330189606 186317072 65174559 238635057 924268910 223738373 284393000 876387371 866727214 66842807 724836802 839224644 976592898 333860387 275726592 551201614 674402765 318722235 150175505 960743395 910327761 934410828 176671788 558520335 765758456 234323220 652848005 92326187 526293162 941038954 480012360 768249163 204335672 879073174 800793028 674769761 771754179 728373640 698577080 365738096 82911625 498869582 820556074 435104073 191031357 476903783 273921769 990821645 880889134 39407491 612303976 419441219 854867285 957414186 562430500 323502904 549920115 576629769 937649877 14301620 681975590 702779050 488817193 545853365 555581407 735113090 746347962 933461676 17855144 46467383 13540177 311193239 678476760 699515638 465768613 324847479 282360953 472065983 6706194 701822046 118669643 366589180 441729478 937268965 922477801 917889477 447944585 229545903 350476055 77204558 926844938 975589939 573892823 510655813 37145787 615318553 497644673 351617330 197506531 459778550 819533596 562717371 111658553 815914983 218750716 339282759 103575554 529328869 298033860 52772516 789478857 16724478 424596049 828639773 581354068 46344118 425437787 167885518 194902646 952756480 280481038 899620537 845393892 9664850 910938148 640451314 75216073 467166217 609935134 677866971 135762123 105584791 762978206 77954634 108509586 771323784 711861478 942101422 483650333 621720074 133289548 786572629 645963453 211046059 473299223 873643714 175979714 360839812 227280485 607203398 79108089 949219091 933690199 628156686 511077252 350323631 844425850 708387141 789644188 322168319 568163779 881251694 919373684 168368852 2176218 504884513 451198959 774094109 720094648 45509691 177545989 760960818 609197447 957695712 195680174 283767811 296786145 558236960 152048147 750599851 114742560 872935725 538961473 699267632 884915415 478168345 141413243 683500520 898484902 526223045 142284590 194715308 963127231 341699781 547048874 185368129 516774072 587744524 94911706 570975863 23479553 295624147 63335684 916635499 995185122 248340090 631819497 619010830 974017438 465924905 542578238 180098924 312447210 100758644 381050883 700830261 770852757 760204309 55520264 919379010 354843037 619765595 780065955 991004857 936254285 798782459 357942629 2202134 124134081 688028376 851413503 921911573 303462925 128284966 589632239 288215888 306411858 701307196 918426728 676553191 343034964 319914323 632136714 917842215 698283245 494984869 272425335 351577800 669803801 233517331 175015248 613686415 363518183 593918409 33631726 304292476 1336647 744998351 21064870 498779562 629797958 308118701 390965797 576976099 458002686 456741059 278614592 16124507 175718724 405075793 525707927 622321218 212496995 862562164 176791803 863493976 739254451 597443307 479066420 613730084 130788229 993127247 767650309 200993463 983201279 810358267 215016835 188858931 813673207 819988569 997730005 720903841 519650151 32338564 869840643 315373920 379774590 870498605 54287012 57186964 581194388 203894442 863504444 162404189 754041352 270985900 894782933 989904644 935703030 268988116 668033771 44706147 165166338 155429289 426105558 51398650 86596579 494428258 990019851 199972209 115888708 224005854 726414605 139140762 462905470 820641747 68707152 209993554 176847619 887477239 255264466 161109959 358194844 26604997 352974932 43065991 95889186 761962406 767655767 592491979 109472165 487398227 140332771 313407631 988273932 987318266 898393656 57470995 770751291 768719139 684153039 593745339 981024124 744903482 351892573 443273423 380729129 990177306 670458959 527919057 888196713 761604125 187964331 900907724 570881425 83186106 332572502 284276948 347984504 901625873 967022660 840328061 15696264 592062232 361469254 385158636 556978673 672183292 228424656 613485979 848327658 753585947 925112195 678882933 595344485 904520495 122483203 502649941 174089340 139799753 166625296 585876789 815652734 993557638 935247766 63807102 891099243 553096484 28861983 215003881 536428533 836971765 561011951 691001992 882602311 397477764 464436759 940119963 953328263 397568808 118295668 658165944 52772199 366735611 358953913 141227379 828620374 72174850 455907158 162322208 117011960 985984581 212751089 203947193 191366933 694728997 276000203 150797542 813877275 782972965 627990549 681307423 952282733 271254781 803750216 320863001 19987968 993984174 512785489 28753176 623710225 769381282 350562030 518254665 969357039 492270513 878614328 749772832 339060957 992508640 429932364 72581000 797485468 728858311 333434267 53523642 388518793 590812253 67201569 957256444 959824005 82213683 16679885 767205274 896611920 559730835 485342773 150812738 730623939 57553163 840275143 283616388 148949328 85676414 258358875 227616255 11042132 592841294 319587472 715732906 407133688 786133820 746455500 290719703 124326874 786282453 54068957 541978318 702423763 500767258 898685703 872338577 353411923 114329709 382334509 1999349 312715288 1789806 68593279 475870298 603345137 285115978 28317611 980278264 166729168 687483702 126300461 651630527 377648225 317147916 727823377 54558139 176492140 317462562 553410128 347017321 506319322 486933860 143743309 933407421 292331922 219296200 100631299 247594706 55662985 111516440 941795642 811491892 420512668 794277616 826078438 360342527 382684158 637886694 719913524 135577688 127542566 601712004 964954389 452480228 765885617 13051481 665144425 388766987 793956259 817452111 934150568 902018075 900213985 927985033 617101046 331074060 824050497 385435341 416111793 396737902 422203583 64204282 113388989 992993014 355702194 894292090 797757921 241191777 631814536 76745956 751017255 834955615 770838433 652251049 104845640 534726261 14455695 182117245 804352556 162900850 19096096 872149408 129495455 136659335 734218764 618271546 387239817 675893199 612203097 833494900 654799932 405223372 126058785 32565793 858232014 229926160 695603443 913000314 130496427 979151467 193245308 594173720 476912902 310228005 541779631 631161732 535500513 253527769 130285308 134027797 234236615 532043364 92342671 824880353 275061809 777375186 728674762 328199461 62051235 330550853 560355156 967898844 332770582 704775710 686618782 249375590 235878966 555132540 739630820 575230581 462539153 335707649 327195799 491816465 12236509 155292092 396261819 992837731 540924612 542938570 370849314 853636285 614902174 151686549 831815830 840348619 182787927 778835131 620753567 57117339 487348921 486373929 480538266 841500025 751537654 225697520 446875030 118906836 211611422 633911985 287985449 990485245 106668640 826500413 598314534 592138735 40945229 937093017 555999340 143909290 600323224 755155974 750692123 590025164 883923729 748128225 680534438 639840755 361367178 426627208 805575639 77689057 12877655 851810704 131611833 361737374 664344743 72552366 381298030 811756619 96710548 138221306 674927906 979981613 947246335 227240720 266611743 339618007 829745682 857050946 769493021 980982729 11419684 70722885 714729120 731371327 60893439 405567865 934494632 45776552 442883752 144957006 106438052 585910024 463120552 876595852 954197523 308476233 89864377 986707093 669747387 815041305 251905407 530479610 620667421 198683466 412593484 960043428 342977909 780467083 350295513 980737018 293739331 916830878 664765404 568993894 385082396 873004749 574005459 840250545 162365544 593569438 146079591 525362691 458985813 224376653 850122335 667318284 396912160 365984732 876555959 694380411 79274409 729897367 122860708 292994119 715321421 235597959 218853776 783338497 677837806 575214791 893539160 987456422 746002442 550508211 863163495 472252277 856040261 302764196 546843151 817847221 534931046 631627599 201602373 277720488 753286117 402701550 765551844 466247905 61764830 154569682 14423919 721769857 860943148 691940862 856946707 943025975 824577972 464447792 173781542 760118015 359260705 463794684 140949257 692444365 213250411 439859932 184517312 513155417 473265756 234830785 592239596 953716555 477108920 905259823 172944348 36301897 28924259 941673356 389826957 885532934 890198761 533989694 52848260 756198285 892355232 726204029 169264759 76989939 603409155 698766593 561595256 887360508 44222767 553052386 363744065 94834807 854175319 563465387 174161927 262846749 856117893 9656802 204633698 596035131 17812653 612122276 889129356 574583164 898964042 606185806 937577477 703198807 371960912 586866688 6195617 697479740 202216581 496342410 119316596 702701960 100856113 348428435 327674893 721073725 96801878 472138659 112564249 794451193 992737275 985016983 882255948 635179168 675780873 404856629 640923796 870430105 278080186 187167679 307167857 683431440 453476362 235589581 569944354 18265136 603954915 626505758 128257007 127451990 498814579 927752850 305921961 469361629 247555768 294076985 814049395 807285525 93189021 182307088 432266479 744033539 575375803 308322187 302907051 567332057 820863856 384342430 879258703 692683519 129771922 699009821 462277040 954823867 155091059 416390957 870048693 855920685 138247957 846624230 212472130 937762302 622450057 95979913 8313854 821661042 550221068 551474693 591608337 976598901 626972195 545698262 449028963 937042068 912223306 605748450 233215702 993823635 500662858 165733573 614522616 826021717 323045913 682130441 468646470 621980361 459823986 483974916 817670666 553316601 282588915 865906692 123608590 448546549 119244484 652849768 993198895 331881165 114022332 967300830 406754089 579994402 741993789 78430265 500618556 788850324 15672887 983884070 299167414 518420223 207621379 936319051 709012727 910892693 440555890 712206287 338722008 341195296 265059300 946619121 727768398 912522708 363522870 904780241 835490811 190423167 54666260 613944363 170916228 565721933 911037963 639930791 222092165 352901470 440694652 826334369 704381600 703009977 507408426 891124922 276840613 655983457 630404729 407354042 125746428 373165594 693116486 838422674 430704947 669489865 511230674 33730787 238126499 99372575 367279188 346993539 630706940 672331251 394344115 352885028 267052491 298881298 214182367 147163987 112931124 92125997 851197649 593871608 336792764 316195023 334349461 919840663 587548431 595850007 512292689 839140597 425940808 593842046 158926272 163352127 23840555 604194358 353579315 606987230 509972629 17124809 528642044 947475667 840338065 734568770 914553090 859818614 89218213 883134415 68159727 277928920 516547254 71207653 642861306 30661648 763177198 87472996 617235494 956489972 836515379 899021124 380250077 845052638 196017330 334086005 11441824 257141568 369303051 985961667 860672134 346920552 686700454 142046816 963851569 187481666 228644297 447681236 829836786 290277824 631485977 175145621 270001142 615767127 489253755 564062514 428035932 714977695 78391993 940664455 218936875 227988895 720806412 538116618 836833810 883476684 160896793 328353616 405529850 718710426 455849785 49728278 711208676 692331001 891366837 950437936 355319443 103802595 8546021 76145020 630524960 448817953 175776868 87708279 5190976 35171685 779705173 101917391 762521606 866710638 261159314 678931579 752722418 805855718 344461415 306849153 204895839 261242493 348062539 30523851 655814777 768787698 221606280 976096092 123395612 555439448 252344313 372574744 84207399 414289697 712134955 569099058 868582623 834712329 489256207 10042143 131302262 415011687 455177258 677652803 200730700 812347513 37575885 434194176 535060607 616784460 548188719 268377743 31452772 109908791 114569569 848745192 761852668 857047645 45453580 847797362 355356299 967363867 682731370 451565180 43654169 798799153 645413339 35619983 960004563 435316513 128366708 263105838 52814485 390682009 16038721 87444419 913983551 196061808 275783938 900870941 906864291 644837307 969227983 248098142 189936524 108987597 96500199 229214087 477469625 444753752 984019427 11977475 941656807 787535346 28352441 29151778 491439215 780027286 121622227 878884173 244913636 835906923 586878812 543291043 489341570 435437792 609844029 487122914 414416418 370990745 769009620 202910962 333871189 44552759 62021555 967246320 657446472 773589756 475884981 222947361 914477522 536746209 765417777 529001981 628857821 238846414 379720671 854364920 637382668 742724914 640134827 91127492 73043121 625020895 944063634 145949842 554768208 206247094 464618943 812696628 919375947 74826353 870957001 554362111 956678809 947633672 36602004 892242856 95676993 453059504 777750398 781616240 25104976 273942833 632391638 354582238 18915136 156834767 965295379 706835478 480345472 330337642 974624763 199047220 66530762 442231362 684798501 594023334 708651352 474438415 708635791 423635095 523373028 173486372 256428102 190888845 275510249 627661172 999494407 853040792 360412713 404214942 34085651 584040517 973524344 876853422 936263001 485346496 538727826 868134281 260976849 294583234 328925162 238280051 73011725 467942587 28332021 9669354 575558984 88760059 441684433 689842765 713617576 846430998 985102403 305087497 292367291 902473213 71078384 582745642 815183455 364955957 419136495 832378386 638641144 421255580 288910769 374388063 659502470 107302632 389917929 743954046 793820896 603802959 194033277 196894290 327636429 563669315 287496699 272230180 926187428 669308627 797207400 818190343 580814503 333068798 355989546 260768479 706658578 72149159 228104135 101431556 667486677 487014577 421475578 337519059 199615815 970340615 316593090 421368380 84201135 692942131 837164445 577497197 798135273 121177421 199042689 433020680 259267910 194943487 53152468 780809032 615453545 74287508 120546428 169492533 809665257 212285767 835436950 897998932 227921091 208556381 381273447 158696572 489777238 648359266 696238524 184944686 732483235 217041851 741808139 32909135 263205390 540550876 636780244 870352566 288040928 89494437 418397378 135333247 581178808 105678522 72426903 533942563 722257213 843034590 970121997 977549593 231277960 121362958 910206073 236139560 995284305 91656928 626363461 426362825 594700754 37951420 567471613 495549058 684364865 619787628 863415727 163819599 736689234 919262655 733600368 646219076 624252165 119216505 615156724 31750357 866757917 912449274 60403905 88503808 537604724 81022666 602059618 140409467 466972012 491412578 475637647 310485876 827555192 752609962 896927084 353178561 617574808 808994630 745391683 883049079 781103917 154972545 256192167 289271960 277574157 701129862 330420641 723739462 123046923 601330894 359882873 249316332 496771012 761930822 671956769 76789471 8420454 199511950 538674816 895287199 606131647 763195615 539460557 523489894 485073401 741044597 353098761 940970620 796885233 90769673 364335699 516843290 28333807 626059014 289344620 328080960 253580440 845052648 618267372 62448673 852663586 217264553 686524178 271292910 29623491 257016999 557747205 885991249 534843587 967471859 333305119 818490120 834621537 447752259 490832634 43039893 717396981 772453789 377639211 68227053 137982599 186628618 269912581 495482813 59320971 668358034 401604291 658281645 565619269 864245959 118812527 321469737 477783061 564633592 586239740 759095038 992408635 69527780 393898570 768357772 72472909 101901658 327281325 837218493 728940500 612874496 209436492 723009163 850352205 423220030 218330711 677821567 968584293 977991617 135905025 513521461 242275646 531707667 435934603 360311686 520879635 860595948 110172045 657601964 198317701 636129277 101214674 804121523 514473946 502185962 127880547 434571727 656992214 401967016 892244455 318484790 210363747 420272115 265570916 931344861 252158804 465474852 760350019 591394917 487467475 380477605 770199331 387407135 80046217 361608602 6352133 141704883 378608367 668850680 412503451 75424034 452598271 327541404 949350160 200259352 986671639 634485886 797496337 873286123 746957903 369705592 818453150 329927594 787036771 537767537 493337582 679259586 583661981 555712521 100779517 582754707 29005536 70885879 999661850 897256669 343857636 243156862 594645061 62354932 548826644 328250221 969373680 789183240 808206993 421429384 733356014 89964690 647507838 565991779 238888302 727580128 880849894 27717635 500541382 845606274 212479423 109767122 67660387 465069804 695311371 241701900 438546730 424313962 120019982 881300780 260854448 113102234 822170437 900550133 280287941 923401166 138723495 519745765 696608573 19943294 887346510 261242235 961954779 852672575 625594683 428581143 561797947 517709124 358531531 961623036 253665422 653429061 732612984 243904621 908182852 59301244 705087047 903274298 990712571 715812963 872937168 411574814 297031070 64619100 765063716 259235889 95209737 166338642 788665270 641020782 623185141 216093924 525659842 294860367 870789860 278735768 406859023 986035201 441428115 100769067 70179356 744355581 147429615 281805090 915636459 77520362 825787586 321162404 318739555 913825609 380742138 311494137 270411423 905046546 334871135 966506065 400016553 580728359 211820655 619520875 990714132 676536570 960838910 879638510 794159027 81104639 672149291 14729901 947383401 730188215 704010767 355975010 620136752 239347844 23616091 389762099 206374128 333811446 885210959 283010248 977566410 280986032 565166632 340294660 599185898 465230340 687412138 757055544 323237832 76702201 331993384 218635038 871731585 623663712 532096017 883803532 658766742 23720570 200798590 127987802 638559260 809844032 251312370 845262769 758278029 691476164 888070572 543016264 959099307 433299626 189827519 559351939 991584666 131925419 945284040 552103539 10368212 866099525 938439132 903429010 189148267 306913535 492174181 899661408 305839561 701291558 179967142 897780397 681514117 600303438 160613032 864281686 826513537 451323961 286141759 644666774 519466125 405370347 310760831 458172285 327932292 581251547 12008581 133757573 709761051 930301889 58558284 969816900 384619879 654342830 786211609 192997537 496138527 721453597 444467049 820059927 878080636 124610487 279266717 709440321 697421492 223711703 736885411 442819628 405826141 868724822 973576367 933574375 273249126 894906152 892008159 496233082 690836591 499764078 777147463 976362044 945463883 848603004 140598781 875836686 685102638 391490363 466003510 84359564 651799797 971766142 817930049 670379686 411070501 699916106 944470233 532980338 255649773 57275256 312019523 712953696 52885271 263097707 885982098 900798439 281240401 256598232 723148124 312436780 353064417 953846620 584201033 931698095 240986596 972627101 673733323 213976227 597012690 805759382 452856759 402759505 829451357 908808095 198828415 417815036 753189274 374895161 317497794 86730117 400271936 698492395 474091997 995282251 677106890 302839514 722501009 308184963 447044858 546623182 318958420 855426119 639248489 144394706 759671232 82144427 486712197 267149840 263750393 955533878 834387115 565101792 891401507 722854194 198509427 799889214 886507411 67453364 16162223 215976403 980809383 241237921 220557848 29275784 842980863 748335304 751507764 267409341 11330566 544949766 637546487 585724299 746584831 624455662 692712044 411490783 314652390 704319822 780599951 698842251 100592348 495449314 219973828 427042532 609173394 950669651 69549695 704842988 248209576 211551476 709898194 335542841 349023600 278816969 539109189 36269454 668465011 102981877 794829741 114597001 509260866 549615514 109782593 515671145 827166072 39601066 130131539 384535584 798878767 775941803 238330702 989412942 374354343 653221085 355948630 362085823 665319916 140241992 147234597 401361460 403552107 658995112 12616721 126635030 241636792 945783959 728114679 890429307 213483587 63326839 170261816 276038954 373574284 74933051 141554543 24975367 252971053 530123593 443348939 676313535 57447874 586898012 773009830 293264102 937233768 211770874 833556868 195985198 196901203 645212510 776677266 969294423 60792587 887824597 128307129 83163844 700176248 776621139 106628381 250624708 214581828 281082395 970562654 387048202 744577416 791715991 87413213 754642195 786024698 236610559 309072871 30525982 718598122 888119763 88307860 708638694 952512628 739462296 888473613 322622083 904883795 901094439 774483414 247280722 901027812 783076550 908543495 925466789 756699243 79385990 667301992 506303547 192583681 770973188 405428784 294038895 468587278 345512989 828723536 348857633 973293126 550292193 510662274 188164193 246129988 575885765 278169903 746867604 248621747 123559878 656724057 912415163 616073787 378157123 40008833 375386285 850705819 690927886 422002481 856387925 46732291 467090998 848841773 540472879 596457589 829648497 748971471 938637553 989525110 551911208 275548287 291593838 378914850 674558032 189262627 377783540 198208350 297437189 282192653 621062660 433234884 207535082 925975179 771507958 801030896 403294923 596545693 81136230 593756691 148913335 680306774 398475044 407583949 421400649 702842567 196208974 493513123 916710515 232705043 475094369 888321485 588683257 548779769 704521808 809353439 963280612 40955213 245284336 392381860 582541691 772202352 980188918 358780236 157342537 147868445 743141464 288753988 520852662 598904443 312994991 897489813 71601403 688542711 900275923 199000814 764910763 454628675 983550831 226430466 459651045 711602323 707074121 982044621 857506491 398183453 70244042 717226420 231067215 532124258 631393992 971545638 594192299 41241812 851276463 800001462 372728488 46264341 534450960 746552984 563332972 277838563 348858444 739153591 741472408 826797400 843637105 720103354 987235422 154925377 260389310 640565396 644402504 891954748 49629951 138943941 435017577 472428124 704131010 489741588 770234569 920861247 308692974 741041605 529479712 884663252 389163414 982250737 238166623 567846840 935570505 188914381 971494230 957551573 322468605 535963475 845741089 582014800 14543746 716788967 669241139 296877927 95457681 855139611 858288950 465921679 440189370 383880775 896365817 600960311 384594381 34968597 829282718 126629091 744750955 808623354 223009451 734937475 46194050 981385165 715310937 58908610 594822965 93803166 798572256 732344819 480992184 139205622 767816169 946093730 653575761 236939933 583267700 821031758 351013138 477156419 671569574 419288463 601115376 807147136 159347926 570674081 349976518 774039875 673654767 617437869 365020409 908114618 640383426 915073800 469752942 93107066 336294664 990158774 488581871 777372034 263466458 18320107 568756764 267171263 110505186 36198619 607210136 532527180 130051908 377636190 203795022 942703115 110693 396696378 833482214 775554814 710869075 126503442 789507141 706559095 225639031 124895433 739530246 259658442 581459773 323508565 224437753 226165639 610836645 693134668 180042705 557220000 853902488 347081581 158105870 914199596 546422538 671854751 994737624 651194405 72583061 483863388 384225283 561459625 671613483 311225737 643217516 88677863 441060549 689725727 614542882 661709412 401232858 432730055 817823899 785374907 316881011 577525405 772885129 35752239 589756354 998286482 892991136 586273189 411117881 934461681 632459562 471169043 18621826 247836528 466232383 716989089 625079211 587248159 199112535 232768964 435179793 910624404 825651399 213046699 941550175 993966667 947654213 949635602 324525931 257569974 498307919 456040259 134790014 437146684 992782178 854675016 821574789 480496447 478047398 372231753 73246842 545626948 268092424 522062101 744590385 354880572 582608457 560364336 947486852 463147402 562395002 937694551 993607060 919929591 221061157 411167248 148735134 654481706 708038179 83184544 949146355 569871555 652102404 504660085 812326299 942160731 485691339 320253169 943442490 732577679 237630465 848638214 480723338 689625616 31674617 870278789 864483157 318898867 213194350 948338387 245169173 343579741 786281496 807548398 603466347 361294957 591838980 276368621 975181708 80279555 990373686 512609924 283238284 816962160 744530520 579340549 922384017 664455724 289588472 194237058 978706383 660195199 514368360 646286248 33349652 141193590 893942345 265267836 143592474 64051157 642827511 468290876 524629409 324902707 9442342 359239685 767254332 396362553 132406454 880090648 693786897 710051314 698809068 340370656 897573967 247817220 522231076 219876212 953405760 501832454 956229872 719630947 209083974 978565181 454497199 991664429 77082793 40526663 836669413 191233544 130961883 184093656 779369816 390547106 803732994 688443079 56426564 664656974 854110574 311475089 370346061 845397120 469504396 16580307 265178124 289319480 373422211 828116137 850272998 903337847 648175411 762329732 999009796 946512948 421318714 373492555 484018208 909043443 530655339 459562836 648792255 203452610 714174078 209750933 492219024 730702595 670982870 853042510 351658815 975764239 471908958 184159563 80711328 623659001 240079877 681096474 185023731 475588164 260140832 345067098 651864331 637370993 80388915 197776192 135533391 223294047 248739147 670553688 974175919 653281676 309030432 820595173 536753574 590637321 538973029 929187235 156173438 673881915 288361448 898630521 230947096 887293695 805324881 528474181 510306263 549732638 404952791 998556489 672434493 408382132 743228928 776919516 693956871 770701293 407599592 273119609 18187292 245402256 743300339 980639641 597911849 322452079 660996259 991992893 412255083 613690109 85331973 111311642 794093188 959986346 604760430 380143808 44355230 835791651 886551689 824386166 569667462 63147251 247568707 666096699 78621178 456359147 946522812 750440875 946584718 695525543 437544825 561821006 943647771 553029967 70741526 87440499 242612981 771468473 585523797 843408675 780064788 624333654 955777272 742017143 184879727 473488723 435410341 29136659 44892601 576662357 490939295 696721277 716619427 518486311 801578874 504524890 895122031 703671128 735625166 883556587 482086774 949560014 927881622 484852674 964634567 31962854 773699794 934196647 216414882 558416660 443931546 832946022 113041436 225558613 370176190 330676378 615248070 402066101 231614356 13652958 291642232 366130852 351834734 25498032 915964846 168920730 491950969 337209889 538951849 41673543 823569094 986362187 621798462 644861334 375289877 375338308 537212788 103033394 201292798 188296624 596382683 626167826 744832305 297529585 895564291 515403714 335286151 412425463 13896083 861237911 528392766 408787140 398510943 889022687 320664771 594735819 152855650 267677444 878700751 5065524 765029551 964189441 828534730 620303553 891647920 834793069 270000121 996094252 959890018 956202377 856086222 335410965 514893543 47138368 967353720 554492014 330794707 576461721 682067221 130866975 509495960 361257834 84906700 771541556 647623393 685284841 530962684 968549211 396955815 179138826 759397510 872798852 345572057 242907557 385803638 82090103 502276581 380274972 127121260 951075410 528942828 876608921 160022424 233592914 574932654 841298228 18187763 794972431 113468773 839917451 508290033 45244648 603826313 134104957 640025565 809335754 429161235 512442524 39891096 317662499 145718309 368983135 398821571 762990726 965817082 31703723 462693632 291437956 235518801 431875320 175378408 803530312 924293967 693461647 324322765 124537987 117901110 909701600 343128464 938916581 953678570 79971327 127934604 901788023 512823367 495548259 625801080 229924652 764596809 29881093 621638180 519521169 443978127 460057449 409446845 885898947 114895689 213666806 343691281 114632079 54019624 809987157 129462809 12387576 452407209 677047282 889741735 525859695 724561600 456871005 102791257 346964272 599892117 542716902 429782792 565679685 735791805 149702386 759775996 481348697 899536632 134196562 172012181 626318085 429460331 985890312 893997185 630102497 716617127 804233741 144498515 152143167 693225687 735338351 794280502 375553257 624780819 404923798 896271514 120039632 999990573 357245523 181246038 741465738 255726675 628416137 784831925 207436530 360004250 444934406 374640231 869619193 946884544 525123328 128921493 531123042 494813029 459491674 360052788 966088506 498949053 162466596 924327460 780265048 997029424 313586053 445236669 509463830 463623062 611440663 796349930 847187890 931801678 88140993 567538944 289773932 630200760 872905104 463333024 671332886 129143419 468616445 821819819 548597696 436342842 928952758 222561948 376134002 450638393 320978897 107174739 355378910 596935955 263191330 352953332 472275059 238255095 157159334 888503946 582771821 395890079 67434780 607721498 910175328 558382575 895711069 868120536 717224759 898396755 828490905 568412753 336178147 228651121 657609117 400946378 953102070 759825997 969459952 906802739 943800132 458806842 296997138 247950771 783017938 490678280 450417922 715366133 513386877 87410593 763143145 261003363 344438860 128375276 201175839 885949660 799834759 580909035 215755719 609035444 788389148 767982059 960600408 75495843 473685875 588285335 131259374 197412666 526537469 15794009 515228553 367740249 235093183 251808017 167213621 960878735 113506942 149575897 536206201 697315214 648099170 747807970 141294867 176359154 643882286 569755792 575966322 391760503 749358474 909434951 68523395 673824433 691419148 289581848 757861008 796708237 483659989 657592070 777399486 488016587 746720494 940712250 384469423 453268813 82201588 685673100 878667916 901370579 98426757 775225490 726344093 875488341 467569350 725502211 510870852 74103491 881374679 981502137 275519993 516014216 873519214 154925196 898243673 610535034 701275730 871674460 856752681 579718021 765149389 36154439 734467136 120625922 512892868 69031734 880092 615106587 852307353 165916658 498890861 221803841 808880888 431902772 122158307 584041861 619798580 272173582 904915951 511490236 357544061 585829533 724604726 457916546 69314754 130030560 423229686 489530138 865035247 147057906 315711892 23028993 559448321 799505535 314856202 783219498 186119781 30379389 918962585 999589382 326299574 625095758 920056635 108088468 279016952 902722129 255632834 807058197 709349493 428815265 229492165 749669401 997895572 22104016 481990953 882206956 721215840 352060584 392032051 316367352 794629462 243530428 892582159 863841237 302711611 66192287 991365181 193830582 4285762 778513697 783139415 385672367 803552139 382616729 573209206 545581759 414937175 637209234 611897687 600809763 341107628 222249454 118191240 503295749 825301037 491808284 189524907 554068144 63308282 366140071 999745079 902951066 606352324 765066341 755446086 21620159 571433096 841102552 291326396 138653577 104035271 565179388 23211017 195784345 712207658 623453100 543987430 585987285 572628821 102201440 461774901 998635592 834598723 245182128 919679849 20676782 684420159 714847571 519639662 477987884 192421013 1225820 591412259 877520922 25170853 64737342 62997388 432096476 101567178 466170565 726184908 709073361 93725756 819860936 740614670 499484173 57209917 474332993 822240864 116524889 425762251 402647516 928849667 615256416 76317192 523978582 464796131 204208582 279812479 201328139 2433317 837434589 253927156 461050498 823144916 286962420 527751838 786473948 294100625 529060810 78302609 352943205 580507946 820703271 643680504 566238527 536733900 636419858 341760079 910432 955074328 780813892 792053576 184030110 59383923 201384773 42314646 499974581 503604022 678618118 736454556 463218017 940108943 923848745 652098469 696133447 3001256 837133548 545023818 947843971 233100048 362922358 170767773 623201377 508939531 994183356 826881173 94136335 886785760 480877929 910765432 312754413 781023661 696025669 741323654 678576758 881096062 838838704 690137630 708557771 73702410 4488414 692480055 106210929 938251567 145512024 174062704 534499154 561857997 506706226 7281832 58617624 796705743 64705175 504857423 706407026 40113610 921164024 380603319 319554200 774290887 574923344 835653016 914791856 379443671 336913138 733755320 820695977 42266712 947148517 390641844 480888424 851677530 464928635 684643718 430552526 60810957 301187515 108405039 784761646 380367714 33665372 531280186 645976251 963296611 158358277 587069130 227110638 837335635 977172949 233335950 422019197 687594957 939530006 803324207 740991092 478130794 337513720 110412958 470327731 481266387 905244323 920908333 484985018 869457517 229699284 534521730 355777323 25150043 718318420 290162556 381659540 448417993 51332702 806036224 536092722 490308594 755603209 592757050 390892915 357798817 949693005 625630706 896266770 250731308 811941256 119786612 602625368 641805694 171194394 849927200 649340663 808791713 244208145 991298913 262818108 990419247 540223648 908896406 910098818 996832315 818589350 821084083 19170638 684982640 265268882 153446051 724985505 943555562 883828430 734433018 610265501 545684120 180282205 127202299 479135581 824469152 409546078 933538339 881057034 182579221 222535092 533091434 820824718 268687537 255942504 13128317 364941580 508329889 464210604 844373170 285133756 609186461 940852535 632445090 40445377 808159446 906710846 493091900 117887627 707088996 348911780 720580484 108002643 608912336 870190095 11487004 591054095 349681801 325882778 459767542 856823184 755686605 682949489 688163230 819967146 373408018 856829404 169783779 938704056 388219169 912952722 366315754 595331307 502417150 62731431 488784518 750205356 434305383 716107226 64110149 370139170 964879624 461483092 272172085 635841550 214624643 320823177 36162048 516845277 79202397 347954692 303557962 659613341 778949996 435271831 831548890 59983511 387062685 127644412 737635840 740913049 795650389 298502284 958363324 637631535 376794377 218145195 127073153 256330739 34403440 215097785 424165403 776525332 219342953 147843136 610864893 7475294 179718873 486163443 632811430 60639046 135216101 83421943 42221427 520795879 840375613 691856117 342076571 766990769 825898154 28040341 867129776 124972093 629134278 14641731 350565768 594014950 131799772 853915494 523322582 36718085 460601598 18831951 442866928 75778199 579148965 530517172 593333890 986283741 396743482 358972341 512201806 981045967 689759216 399837892 91370516 580714114 581468844 165273838 203659577 124933148 558829651 864040514 465190689 189915970 817288120 485022859 630521472 723698658 752343803 510177134 769984521 949355668 438714466 787253198 5889299 999068603 559170395 899937920 240773339 892897545 39399607 983181205 542028413 324395838 519331005 97066133 381063658 135492971 811069578 249044255 874664397 912147507 271308681 57296925 486434995 540996678 520331393 458289349 487560266 841140421 615891273 412656721 880509680 21257586 906752202 191391754 695809739 100590141 844639776 697463329 68534587 80978358 279093852 907132691 723326198 416265995 503863529 231934505 603215901 930005456 872285240 875506182 272176893 146512203 42872991 738330670 414045676 267262343 861487978 201656146 520312757 923464098 170190610 639386624 935680477 148371050 352004263 625851515 247939334 487633070 642895559 618109357 354118591 818722903 482016150 477846914 146479535 681900671 968671292 801287834 944839672 85085508 201804903 83560917 72958502 826230898 54841524 965228740 41653574 300590815 142539545 725381110 73917891 427917798 822686811 502463006 56151958 422295613 457622765 595808977 115902005 620977049 402774354 806006268 545165733 788394973 234792396 301086602 737710279 232631297 931738345 518168921 891466540 317817566 74880164 191561783 446052407 54373066 31544373 554214262 21386080 105797884 333719550 892966226 727208805 758594395 800984414 965678690 869837953 149288984 640465193 6103581 683929011 880031901 328946396 342073749 66904659 965583466 81865922 439887749 244980298 552020818 487049352 371929547 812370104 737068561 422393714 388312803 598082987 979834048 197620602 285033922 323268367 72195155 979278063 77044116 299754180 836958313 993777941 751818789 771061745 987151546 70703943 449589031 284091025 707641832 512287082 460435156 394248602 556186459 933052555 577665856 212033706 682378584 699499759 789816950 822125133 695879682 875937098 821740668 734364820 377712928 807277523 951852593 942728883 206178696 764876776 48077313 101401016 393189032 245248895 196681210 272239459 960391427 944116003 303548284 134590582 73409048 264073859 849770785 751742180 690073425 976778944 464175 432469589 688443450 518318090 410386680 520272236 705890948 830686209 882254612 987547996 159059002 784012364 331724043 664850483 480948888 880687935 212880048 693167815 629573025 685257167 613068469 80313337 685433243 242022446 858532360 634869048 808288008 736456134 145233866 260425511 190975753 951127750 190406413 165278931 163704826 308289508 288547359 853940164 825783637 83271697 901964101 967397440 620617891 544820746 465473909 870564213 656126651 405533780 652970783 125929103 697490329 401505208 450822614 998191171 616856344 434072576 699805344 18681687 888462814 846547762 308296818 776326851 799454645 565797105 617613372 177073685 763818603 695786264 354665798 181149891 597127646 967504927 404281175 365085693 963921840 951556091 227730785 841662846 947592604 696492567 476422916 133978202 284935022 334773760 224798882 460642600 971196540 54602773 348716842 480072881 448172459 583016712 64267440 903566219 768442346 874357581 372986415 90291885 159820087 135367807 287478391 236684216 196927161 69578152 866503874 369938501 130969900 398478303 790551907 576630774 728834328 229630036 464792436 626464006 485946527 319839324 8543976 787310429 440764301 285721339 147085703 596644167 501288590 739966708 841307142 421270365 872000648 189939937 546307167 712272294 283664476 530019820 986494742 541063867 621871461 341336757 796473628 717807116 198044036 656257458 386664762 491381086 103113707 994617289 140695271 307168848 936578342 462782882 632007974 85000402 578042959 139722314 792297846 261996721 965509395 367772877 168925057 334222747 714610729 308648151 869220725 383905425 923419160 392668752 91955156 470354511 144302470 5888142 495913591 817642520 845729243 279828009 714266014 961714057 987627553 397703586 805309587 32821784 820879865 864556493 600873166 980164963 250756036 197057011 93680131 448121466 779370799 466281550 550167407 551070188 561913868 454218543 442920387 409283169 412376528 849432239 963773691 81816358 126142761 750973124 290362929 510369283 291748581 683011926 350931151 442324766 368898823 147092090 643307420 648642177 772694463 471433997 344311769 838397040 379052780 244878537 527356944 746349626 251062546 766459377 148744609 603033480 581548477 414147345 566132624 683508792 374800188 139394222 543974026 513760830 33002623 210710184 581472769 60085075 195626319 649203193 999430549 865024652 796855223 322029364 959572089 569758604 558832305 913407191 901280575 162961737 498812830 948866579 419816071 388437705 635737941 531697191 975492144 637359602 683298004 306730818 454806390 890674302 13904298 843580144 244501972 955604691 533259482 471310651 393129736 533462334 80726492 317573389 756245284 820258104 451087222 890366422 411461403 111298450 126758627 862514359 899957279 99285453 628140855 83152395 75530127 644899378 843346691 576612049 740730769 322617846 411854877 634307144 430033976 169179315 808012629 709307108 443921360 917389040 449388308 152189400 634515628 244549394 994035921 43972527 296672172 826216302 554790105 286801430 494082167 958333629 984152567 430710463 552044163 1916447 236943631 960779633 647425246 92489771 454225759 219324798 861481119 390058317 379570892 816942341 62193604 394992213 665431368 731542752 552672771 949207081 997708585 827518968 646426507 235551683 293411888 438123174 168073407 610031679 338357152 132502521 614454995 750492215 307230367 58608298 384474143 7945219 809402563 460756852 917788965 660381607 685172651 353584791 287373243 837248828 190021783 349019901 742122337 787201779 977398673 217224491 218856935 987800246 112315387 586331672 801352840 151091528 141622348 137107539 310602385 398664254 481993431 981616042 360687556 322725655 704734411 898804673 458440901 374553561 617851599 829050129 753339435 797066721 471458710 354023816 360824120 861655882 108103537 893337759 38202814 220607157 5460253 306883772 306096433 190592 307977567 359502428 822264662 700022890 867788279 94774509 685563865 540829791 857810098 857116506 137240438 757948376 112330768 117116156 47313642 756858344 833580995 60277130 670398297 577358563 177381873 250469279 921176541 644540186 871620126 391616474 246793945 528330938 416804807 806917827 449239128 473658565 120021877 333305170 232528170 367516688 671421402 634530139 825113867 184232456 31718326 213118234 827201375 551386151 40890325 481656231 928858684 659094784 292583963 584600826 158205527 2838141 791364885 920243643 8467066 620907091 233366062 171599181 134234253 171809495 131555428 127546207 921962335 968225111 43602072 899501028 37347528 399172769 738318922 930432434 629139970 924498243 95618277 949128686 605196314 886467873 680104246 305340654 436995216 881977292 850314885 880511803 593122923 195226004 430003232 974497160 637157082 387167105 663853737 890046170 752419022 237289055 933210553 944122299 611335623 271803395 517745530 465641919 379422912 78318960 905235641 534505263 449310703 449059685 850030008 83643837 181990084 254878219 472773281 529359983 853529692 356242956 705733220 587668926 48681196 60718385 356276956 785989849 474300642 361932821 228563516 93360988 265001491 858388772 149365281 461977457 636101695 960170298 787116696 83570024 272866242 986491936 923210401 154242746 637094485 197096629 790892321 142976692 891189140 56273448 214108798 155020144 555638540 834654787 776645789 243234587 738269271 939427834 261000323 263606732 283509112 141239443 775456486 491493320 413030456 429807622 930957373 543111231 377960614 825160750 956400794 648431803 372217353 131764998 649781081 389083488 561753230 923686104 310013920 961678009 607645999 354303514 570201526 423889719 555795954 947290917 159236848 755024669 19392135 212581061 618009335 437891098 73130577 546198574 160978903 657692753 558715561 123270886 875371920 294192212 124587853 888218537 703404871 243880890 401240208 132529888 821286201 282418030 969553797 211272361 969352082 500007584 648347146 148153509 247470050 451432881 738700799 463752019 11614569 528648712 452749007 416152515 676548523 776052880 80462204 538877626 16203606 823297957 728915274 365087148 155069994 512251643 571802679 187552336 287718977 60013654 243047817 187998069 465443123 477822092 383489627 345337546 355108762 16180167 666608468 656972518 735605441 125015031 91960761 139549179 41509672 42495473 904634529 96210352 752093431 885546621 681668334 9945295 232300689 936264609 446015484 417592977 651127472 791359078 59672714 176571775 497344914 64637949 977637500 262897756 702022269 759631437 10673263 627885929 670386806 605884409 504301806 389947423 990129909 291610773 478979587 415138530 271371316 404029084 799572713 940733477 657937476 200771792 824240164 690450726 282785235 125711563 591449256 944644743 546163878 365487292 366982985 56823383 899543956 670823756 984666997 767979194 985150807 486211972 994177823 639818954 980665946 88514520 400064325 857511961 272739888 246148554 860156918 975101536 510133138 495268807 826634463 813014877 767588017 366693492 630831047 418201530 981156429 419985310 308610421 831034883 884140215 153331937 969695440 693330301 260262908 818233550 457456144 189062934 877458074 490617417 449044064 263868353 130244589 746976111 890068221 514760423 339617771 657358271 921788251 23637666 289846214 853837635 177797014 674461081 557028159 604543286 440145526 594994829 987502769 532572660 800243689 582890152 578759197 947739300 408713722 335276219 454687743 320074050 990743114 915231220 282301374 99116895 927413880 305377791 946582550 607172746 145398568 897016048 822521589 29613012 285506480 925469283 5908340 631189456 228076065 996408852 122466682 676604300 339711082 624101145 436893323 621549177 963613174 51734148 809501531 202391665 598981109 66482757 925558095 695508210 579863305 441966262 462582378 105834563 279353183 193786304 318200601 163385286 430064217 117397920 783614897 458105796 861394320 779940350 573656254 53153163 592706794 247765519 925685814 872037409 405223037 294481201 977130714 719166961 131757333 940362385 829276335 106010519 17942532 521295623 719006483 375132360 152018224 206519585 657068760 112159776 566924413 982596860 347521999 691344295 780677987 29552182 885718521 601440177 160280399 320369454 988054723 892375739 150789352 187349293 481814015 300807346 841018209 456981308 668782082 793318135 239921766 736289887 213209351 115484361 250161662 159493959 726799378 402957655 931269693 356811410 626281682 868167271 192714309 863403584 791439261 95872675 63822500 948975296 971483396 16333109 906214723 495589369 450866351 269174433 796979895 884214249 668237261 206576221 774717851 425330020 203453965 543625165 293405496 210715890 973585506 286982366 681725294 528211426 842872777 908996963 554840595 628648360 866893607 904013830 583529671 533471090 66301935 620204642 933400085 826715199 447170873 582345812 719505798 950184841 785112272 174241548 111499490 196418471 371536085 196219173 757651923 279467336 517591989 102482396 202987473 507554693 797048420 475188346 366350067 454701246 28368366 927080820 545323527 375209680 518947280 969373337 836816090 995492868 734193034 85900409 92573332 362190823 215211283 665848221 128964205 964278816 128429662 699181946 497453185 439692885 534512703 331899337 121682148 618435306 230986012 82782417 1563668 119899145 191738989 577207264 68470235 225625566 788409243 122145243 978029528 290732601 546549907 175652461 286836865 739108787 366402501 551646205 643447333 540344594 140698868 259874928 763764536 70596312 653692781 354562458 528237225 118713646 327731638 554597852 660808625 292372448 713911355 333821344 352367484 116533816 158320226 76443075 867630669 548720284 857363458 409442007 461349889 64927736 389284881 348861174 29995432 540302661 56334035 646509300 634722795 161125758 972027112 275140595 721123451 673513097 738442497 618935199 951805044 597734781 911133492 267135527 360554245 701212919 336826905 839091747 927400264 763282120 318047942 680147580 522017500 204306143 379796957 475670515 717846764 530267454 857411176 923496156 37223945 877557547 755348105 300467402 533818505 405488930 690743361 980247230 943079690 533179273 408806228 844755805 620620406 992839167 937134950 171218444 95132949 354531127 712740670 178154989 139127705 480848885 753603884 337055630 346459365 264738980 426648632 417727207 194779649 51642016 195230352 150753458 267637754 46929413 974446410 515398215 360221142 993893785 193019730 701532810 927097457 331419579 557327951 378110200 179256818 264137021 848657988 360274600 857668051 73152999 825078327 380178872 941909628 989045701 224779975 316845627 212398763 60388095 141967886 590998046 334022454 413842635 795252528 349651281 98215069 636278420 199664411 548070974 657022185 580179691 917719258 113137358 917480669 551311205 937539344 633543056 453125774 179510246 143978709 434619156 718191452 856116515 142715375 118642257 782801591 36313291 312381726 181454089 562198836 817211903 456834449 48417358 552718799 228802219 642243882 499636704 840980577 505557915 194422690 36461398 363582871 542291329 197491679 924092964 300821874 168902030 372808593 927224326 840290358 37508556 345556878 333388120 876858809 822026538 861402298 103862394 728955123 660789572 729342011 129810826 597232406 789207938 822421119 858455182 922192594 26429881 435212030 468223573 497872896 931385242 303915199 186122314 659199836 471180219 955409315 257488105 78845548 88838018 970623517 734059868 145505232 138386691 677012288 27299072 639005359 187373608 753202313 51401597 879208491 398194410 406340806 839361519 737888346 578480687 304589104 868025816 996151951 328331138 845617073 327432251 985764562 396272321 107739787 486079183 256377388 913919932 279375926 594664482 499340594 13549946 377435701 832376596 116036143 411642803 358241922 790924449 952048221 167834991 748312457 526891998 338543877 869496417 662025183 395095426 478788788 506738260 298082776 44019202 300852467 26953776 678951233 956420179 540821886 389288724 519868268 96741974 238362698 639058356 785272778 952397682 198737781 692761829 408471938 771016098 662870332 644334213 145431340 867455724 841848249 408599763 534827860 264480425 927277932 153259422 410325916 62801950 577005130 402343536 28367723 394896932 148298781 925199858 120354952 71239246 993800682 956199583 459941195 867623099 605143163 739982149 950973499 886212158 361699403 340605974 420875129 561422098 95111043 247816704 313282517 670257221 424719543 915722713 593256912 37380595 157722313 558525154 894223240 666680826 474979794 880491720 780359952 450776914 222336813 696613209 170506832 681476990 739003119 272847504 918144495 342487034 649330153 501224258 970617610 976691515 31849631 653376125 114872558 448776673 644963412 814292341 324851235 166792766 340705070 487141075 273071280 456973984 428951986 471923006 441498650 983058426 918833911 519584562 553194320 918486085 894003464 466063720 355558393 617960317 821014142 352220788 762450039 219784254 598587917 231857851 75880317 136912573 22688531 827285553 253993163 93204494 791029676 38542424 117399547 79722059 316561119 393589853 661170274 413463880 934435107 591573173 908439555 200692738 14962388 921773051 651272300 255763199 280730603 439219518 153409913 937088503 75103019 868225165 893568965 971772496 767358577 387763408 981158346 281422671 228323077 878294859 403890497 386137268 939036807 574503338 555079553 230434380 890631130 935040000 123629622 285937067 389055008 938031260 832877323 458925622 131327963 190116508 364440038 764657249 955198238 226888203 390937107 393288651 203949843 853034825 204968626 333920084 670353530 567249051 920425230 533490984 333893540 918684986 716904676 971443296 80964132 711696668 564496578 136762615 884982453 586588491 692429275 930337903 838529313 166221755 505918390 330172494 85804928 499250174 284959774 513436166 518165031 781835247 744299498 155441926 34030715 519601373 108167697 393445581 289434706 422438364 847421225 877499185 404581826 419574059 129802871 912995747 823670263 625534155 466294660 649762405 57409936 423529408 232974371 702733686 761574402 1939663 349162187 572655180 452594880 721722245 841631972 451860854 520483583 659749050 730072488 976658246 778734871 397297645 128295247 876394881 697956366 958804576 345130580 443781905 697596855 834921163 637144459 110065985 189602834 674963742 44884810 312809787 72067424 905093853 330922199 556531369 688594407 350474282 558876348 622540407 405374770 421316751 272323280 468481779 666396680 523350062 370455465 291141347 316665974 887212063 281289817 61488347 731220807 682430804 613327256 484771307 410586185 197970534 170044855 669953132 180786670 853315044 487325129 404823668 501882613 330671397 799342585 998363370 922008275 951110872 460960889 963147782 62198088 203443511 715120599 848086230 117380523 621709929 171480326 477426774 648603205 702296703 133498326 912955827 249117184 743121001 769433738 618409497 242334832 384360114 801900281 869018197 997736643 877704553 917685757 970541890 334672081 994134350 345043717 255870124 818300945 372403508 311747887 999011223 711801965 302605757 286626735 579619376 107558669 384068645 419049994 310948516 360783140 473813996 968977682 555460004 898200208 682622925 613732654 800229020 756541927 962726043 795703687 64816181 157420168 645173027 546207385 593223442 239474943 904733471 423000088 605191895 358599483 49746064 383834393 76249096 906205722 248064633 535012369 108305965 423925708 295690663 820211916 760584436 317155940 750455506 805342801 155053802 575101286 914947846 478970202 88100353 502851059 272745748 92760810 566487005 187088110 421486401 572659684 721824534 122689132 361301010 650206454 143810095 598216945 573460364 287640556 238662122 611646767 98968386 513569379 165380778 580584127 720136582 303080515 839627494 946462093 579663591 736089757 295819688 492220621 9551344 170142378 104153807 899658744 533543751 722050921 57281234 51095201 733732564 491145583 755276434 379768254 350322720 116094895 123395576 19468324 355320980 300162903 734928364 511970102 823069906 255134153 982297537 439986882 487450747 765437299 727866837 647930549 765998159 9589333 355320774 638528480 308475611 618798592 506767657 570405173 506255722 352921346 785896683 906279817 659921655 349864315 891359657 439439451 71993618 607296070 370046160 606376342 420324119 567694198 679135504 248816011 150441228 571969753 149803487 586146332 817944612 906911141 931304063 668979741 995720745 158618904 87438192 668034638 36747068 102048719 591386383 348744050 81944754 491008909 201050297 968468545 644488698 739842410 396169139 571334090 688349956 5239124 515983141 811378154 433898877 604057673 320130226 361446219 878689745 381836348 656292706 789519221 3554815 978201463 98538298 400118702 115040436 142474762 596436895 575155223 562548558 794824427 937158995 241417232 16605151 890827159 320137975 712777720 974008043 595502699 470440645 970439070 592150269 365272335 986562921 619948 275675727 514483038 234661806 776741779 506695137 803282547 42120171 503686140 492122774 645014692 890088092 440121925 581820888 642039949 984669994 525897950 929950153 244537737 600996351 657952607 194697798 130779835 16137660 9764085 564023767 637745006 820151049 191482885 694231464 718103422 292262679 586772478 338631398 820614887 895115511 135835529 844174333 118544545 610925964 180327302 110406749 949541720 185130487 952766812 541642478 903005553 15343866 6431391 484281305 52721032 95825803 342142333 508170916 158999279 506846085 915285198 672632368 763525743 125491491 969379445 325558911 280670797 113257776 729841945 523418477 902713474 609116024 861826682 858681716 724583298 383474299 610760645 540710266 51589805 654124190 906332045 526472009 75894570 935210504 974850225 705208795 906849150 640085804 552557263 512927047 690128606 338828477 772401423 768963657 508900744 708555790 821307407 146053756 163273464 710592046 442325725 190523259 50363212 752542721 66441377 257093242 28743384 322215324 341470246 730418205 216197559 58155237 888608000 697615886 522573972 307391257 689734128 790103706 875267813 67901438 606881133 582777472 954696548 7873373 343755924 994379972 569638870 878774601 343601795 403228916 990311237 450962948 785233989 173279074 500558012 417985021 372195050 230713042 787718812 911429959 946464425 496357042 162101565 280782902 383644516 575951061 970724671 901880068 849547122 589327831 510591279 443808640 216860550 367784808 146902149 539045682 913667065 80611900 905258690 345863746 817361814 869471118 942094143 453794782 657482636 495804366 434342610 396216236 901145331 470190458 442465839 762391244 984321647 852385102 761927607 687157688 695132171 384029066 241473144 623031765 687597809 984812654 399374753 142236221 31462323 771390182 673898674 268810430 2653907 641194325 285597609 973656166 860301455 36522718 117817532 765856426 340710326 324054102 831399702 401980045 140208743 213430774 801435608 461180103 223824841 380507546 205563 827538241 437384185 278377110 985699137 269153729 671624190 341662475 298318824 881197608 346789288 200500318 481231960 307175731 981901930 241844269 631928201 683717539 299441258 577223351 888056170 935699515 863360684 283159283 750889830 914820400 273181613 391095688 674605752 343606983 409330528 96148045 722142229 619071514 916946929 458705681 501521012 791554417 792129632 161694416 970604325 823683175 734356843 521828696 403734588 753560789 473175922 932024511 334509193 770943241 545884470 736953027 340150320 257697733 377545918 879169636 354247494 138998180 541267978 384015757 241568523 889026258 623024669 135679058 632965725 703362671 904897408 177928820 946524960 620661370 710280971 120169370 762160983 893392975 702635111 112245303 224972618 942954744 337478316 420737869 744178065 485987991 402831183 380195110 43698377 434416090 669845636 600428285 410543485 920603188 951775826 106535377 333186534 391003447 258359535 549153438 237634570 247214198 792199830 216447157 326261361 5288857 704557167 982511512 446077269 389805273 305241026 436426580 697880241 590240336 364149611 876226587 285192980 378219272 573854209 835681903 896568154 842284752 603036507 236175174 52766954 123453540 675650894 873961177 185739747 43502984 165011848 170297384 278357671 878798518 163250018 334805564 645974146 461141409 137303477 568394791 928062933 578290040 140198024 61006165 350769243 960119795 990519054 126349575 750628511 214964242 477743397 591989121 321578187 410783974 207106534 829073057 670508841 387963442 582964391 118887755 793913787 625331159 760687741 994308239 510037414 575763227 915551016 835844300 844523663 283769997 410077114 582088957 723484477 689773699 559956480 603546765 265188678 518922869 372530642 189904686 153432132 403014368 85419760 524482202 499445561 151723407 7809626 353627981 834740805 516074719 38205137 764899214 422096076 193868954 423201845 800176546 543490584 392632930 101886949 900276086 316466230 150201933 50654118 16956795 504564902 441953416 853701960 135268067 754367044 961118527 137485307 440868232 635048091 477322104 100767930 667029493 687735149 493420085 332124357 237246372 826021173 304918860 678872897 410103653 527861462 179729035 125244688 88585031 832280848 511508096 849406652 938311814 272384903 589400593 569963317 690464411 602664672 437161713 952122713 940682071 382293120 450592344 525908760 613608973 454476097 641793825 507976655 200623565 169232724 948754654 490641295 356302543 512053337 888426002 31263368 172818193 168455208 945811483 792114845 444236173 613375795 624384206 748793267 300347107 89173656 101954044 71987446 505371948 324056657 280478614 521049719 627866805 217770214 822262465 345527111 58419439 123624516 650741574 426607857 570838009 284187293 555646946 115743609 224165853 385830762 855274412 268990162 150421968 874011648 475324434 162831364 869246072 722468317 725793089 91045746 256648161 734663409 728258663 791295192 521828095 218477715 285160145 335895072 96045827 945066795 532632835 929070654 177250466 349557614 312830135 356045625 386821802 467943672 184952039 879113472 699396273 7323327 424529901 920005682 42567102 455358360 727688931 183050052 477620147 237036165 881467012 620382340 880135135 348715727 419254288 65842132 398887427 901922218 654706890 214780814 38638163 540391146 460589365 167940144 227210369 238617942 795013611 883438417 140068673 796208416 984460012 748447252 800818915 138395430 685248067 415794854 168687802 712568186 283592596 615932131 346226406 962601624 931492848 596714889 946072392 890780169 452520199 259507809 394203519 358783918 150165740 496287400 341416269 289630432 412444524 939678941 437982255 387424538 784816766 459958299 412258975 404445804 264224891 715711157 694799342 148342067 905128757 132374541 475529930 748298796 32059434 518882289 698930306 878736998 307001977 882045312 694414264 940580913 965588958 606199760 312046949 241142497 482617196 886485998 697261544 295526902 768362463 591765641 199116537 146991289 8711794 69189137 311722892 561769976 799499916 112304465 220416801 402553716 995984834 372604334 786513057 691948729 771706771 225917121 279424153 521332831 484129582 621251914 951210057 798022629 462949772 97278250 182282258 210492404 680517211 64858221 774181173 55398310 593848217 948950661 645899341 408163944 597318292 863738968 851084313 121022101 530829442 478845999 168820292 60497488 223590025 922842774 271634727 38200144 535014996 977895096 191820978 127675617 519132222 134513793 361192375 324679236 551154883 88712575 750711182 641211851 268991862 384428678 279089217 49857934 715698466 291832775 587376713 11323677 77901882 639816688 517472779 985074722 38062230 164722372 106204365 258566604 117018043 274728101 484428742 754444797 562661406 290884850 377398284 912127168 868613398 242558339 5497074 269076952 444171889 697580994 245599937 783592275 87157758 773292634 279457036 824840331 792754256 339826294 933710130 444164295 788073924 604056657 992957695 997380421 106960456 84266843 145965559 679409383 875964585 544052475 705824783 461843797 830374441 9115389 716261885 512035459 501288946 199444558 370582070 976558630 298114215 993100244 500045153 652301787 444659994 304354588 921520583 430408111 93005840 483922 314824944 151036875 761603163 245743831 764765335 526427870 615994056 814146920 67937270 247518116 411366852 54749086 642671646 956674676 785444323 541164190 955208488 421740073 808492003 399508400 912142046 403763476 246290210 559414681 410513115 141684543 717584569 797860503 808328957 56423535 849477514 203349141 516731391 944143717 75658327 894714799 719769372 230491191 196526415 751110374 830023332 516825653 878899066 999907183 650120481 855888135 496716195 210271800 609251323 752227815 469274458 656633935 172949824 703161951 969924684 941882578 77159077 799536288 588840532 297770388 264740846 514212599 386994863 874329218 60120385 237374009 595735279 603535653 170394658 167694224 103607313 856507803 560255741 354856669 830488689 736883164 413070376 944618998 608886037 617555776 929004480 346977247 595243408 355708235 307785763 882516204 216653818 654950278 921965583 327979947 530343904 227867317 435909199 156452762 417411664 167795907 458218693 909104282 215079674 659178894 598396040 739501816 275446977 601631034 716147436 635773265 784007905 574242824 329329704 136391827 896974332 112823828 694138357 469846865 652281635 198590283 772890546 367956531 61182087 746624396 158724521 221044926 74217363 561521782 385119182 62311095 245613096 836014159 346187312 294605498 688462409 848967971 55302896 602952350 544495004 733293190 798435956 683216017 892172626 155139239 937406353 917317198 36228502 565630838 191985826 689314368 378025812 103166997 901543940 34792356 685614417 122366663 902175300 576994652 705198047 215000543 552949313 629283087 100942316 703572928 324378444 324435040 801054004 902301967 647890781 990790374 993230253 123696821 487944975 919073189 302041987 483825141 20745230 245206291 255197701 696837309 741212467 231772756 100041972 481023133 763833860 899154897 42681518 900524532 937646383 809942691 62384435 995970002 865253047 970637868 916259171 276319206 564834408 400813559 942269702 307515882 735114781 373982966 925877722 499220212 989496898 871865282 764981844 763435929 38874727 694656051 10026986 435257478 271322790 888170408 778553189 897622611 758386285 152672013 991502629 588508759 810974072 637466961 672680789 830365861 255913406 694358936 564598771 348768561 636892220 790688632 248766046 574042356 528670370 750995242 886066330 362665436 109867825 954665249 152591487 872868852 372632485 386241826 121720928 722535825 226866695 8698864 935914346 866547054 47720636 336708284 159002107 632627051 51838810 804413864 124183206 433575825 167448605 391310415 230921655 410039242 771736732 366865260 65017376 284503005 402883115 664625428 615270972 501484798 400814704 831388968 671664036 464867714 992073990 58721893 577056555 492144895 791038028 287033476 251000454 307385834 641178779 842417026 606331739 904885212 893980342 65669568 527931507 762022070 608394373 284902248 196310440 379265152 235194514 358976675 509340281 509544197 542594660 78038069 976064789 465232594 814016928 726569473 891160412 365342423 920849513 845793433 841591675 504074668 899137998 143893320 231685065 170585748 545954430 469049188 631180385 942364446 241591172 104235492 893549526 2639997 495151961 204601198 285489555 426998732 761466300 67353704 485628891 545652461 183166082 829070999 740780580 892161180 138831926 258378462 589700565 150509311 67730078 96600791 331709009 674041981 347105740 504280656 587865299 760221958 797194024 345332292 967147757 171422492 758624729 745627276 319662681 950461221 746401746 41470163 600961990 194508196 167919236 46871654 339950402 20511598 579549735 258309889 372177778 322682721 973230082 907855444 726043126 659558775 901516864 562157634 653975088 984355689 572379870 724485564 989631796 663588708 164744380 132501445 862587133 651242771 832048651 922617592 532627952 510712146 481854870 252999532 125897142 395682298 550233181 977904910 750951412 224976819 317548123 542897169 971902715 173110953 472111306 921146309 254200743 882206941 918653299 604733172 649795366 823222759 485119908 287437578 629651495 600117946 395714130 581440723 142506886 811774997 28881030 229107806 349415920 64333521 797465964 485357993 81978687 528677723 502195535 981412332 428956985 134812929 838447691 31329625 615943544 541510603 420034290 762609661 654992691 212900969 704343678 370891453 383519009 287140893 653860389 914820433 604678515 432654509 522280876 99484589 602255744 149864677 889485559 463432988 626974539 943437761 445369737 959409896 6724619 654709621 442412172 448840798 438906112 289787783 460565996 981983687 153516648 202645913 402559482 860784864 794475521 914035877 987543545 353972967 340544898 479172078 737623033 735244656 308242141 186680579 303124737 360246136 808423366 726360291 935822651 971027778 290063476 609658653 556928338 624191238 60640788 582832922 864068567 923953173 574456897 475567664 765171557 105834754 492356014 121665284 854093710 803587524 70316348 785527167 782742548 358644170 765999352 935298592 818289039 180889748 748010556 959295350 890525408 78960805 699423589 165279726 643735455 809288729 914291493 370332620 397448829 903455545 764941572 496317654 939066697 202412680 226816105 8969891 35584912 388326039 918183170 462861767 802059060 540561020 190172179 356574833 136093228 231636108 307112557 98714046 790413648 679559021 440962559 484249623 134727557 220002878 144783946 485940018 408826053 477807619 345077487 70260349 641865782 457699213 25222745 902912679 650048664 694686233 251948641 158590626 398034747 911905433 119044639 466427944 731537950 452420208 175760957 452547208 746482534 741185465 482596107 900375938 96823812 136177707 652047837 798017941 914969720 270344728 574363275 367286053 195229589 729157019 5837223 412703833 152321941 176215283 36106145 667927574 862222303 570288052 250374491 313118912 162344680 904295085 84179173 498020609 38798990 229853159 718689477 118327015 584690361 639288198 586802822 504739743 153716860 992058601 162362816 760829103 896722541 737492353 662134662 832103296 926869987 955346823 876217086 648513916 115448216 237624284 514122476 435059114 343221641 257325607 470153820 287366203 513972187 440070206 748062507 781557809 230868167 702618111 906410538 649830396 109535683 960267471 537436594 329711637 134332007 210771467 738994737 966071011 997666090 786283692 595722450 893412941 165933961 782895857 653011002 843714219 14000588 254995882 543517465 5861895 221698468 65556305 215496487 516084919 777075125 832355003 122978789 414666761 45886255 870967394 82500982 5512169 451742726 528847449 282128383 201541403 96382107 54513776 541395386 206697005 774595468 254804625 865815881 138527432 884237210 380724598 12755579 29381157 327271693 906819821 315993488 487223304 287030944 703455282 120528625 641881247 637194979 34939974 313467408 52997017 42822949 652548036 18758374 225597788 925821491 922054180 384569682 976517299 584040044 516439016 249445394 676285747 432202297 359541625 44164561 999438827 453061562 417236997 65961505 165461050 953670988 294102441 38468153 104523943 619474422 83044125 935866945 609211432 179605702 643768749 243884878 468696796 826614985 120652956 850803023 223765657 702164162 312019422 662976570 155594183 768222944 531061714 483189764 190628139 919451380 466729703 779742312 766136578 613837562 823344352 796606978 670448115 721048306 24864226 578232626 612042113 887203660 359600573 783097490 346446369 966752383 416157148 874009132 117778487 678411845 908370628 848473053 683999004 39054764 674181958 963386447 585532653 226057994 540807861 120296946 772797831 178736483 503586968 291042268 367462959 625780527 73328799 555409120 950156110 713635976 739143881 142561549 638000944 314246959 606203525 18664184 830128270 293275130 879064245 670639031 96404763 169034998 246714051 87411879 631952446 884499053 191492692 54349629 296628937 319920438 900191562 546326330 762184112 125149758 682463901 957226745 273347790 519151601 529797772 931101348 436513475 803705940 659268762 597121822 264363358 572947715 614575764 240960429 878940930 141402026 434697786 142768258 628309602 327069228 236451734 711814358 121031051 42251573 509533533 504800549 335649794 631109621 610659774 785344528 633269019 883534033 948401 638563085 279743447 378256846 584457280 600459935 302411830 542787678 624155582 183163719 257511623 880778941 701507971 869993451 271398276 266448436 439549109 683318591 166325734 816378858 561555946 36021146 621672502 254827857 154708736 646840650 725431779 608883901 180023900 905672098 754420076 408505502 787055732 571352199 516378222 284291341 715531429 66903936 796520589 646113901 100776339 632580363 116863814 18058723 420363138 771328869 573706266 482240241 875012955 1522620 208903510 903184879 576814715 760983160 67783700 495559469 323562899 72829965 445158812 969236338 31873109 257484574 885939618 72765909 29997204 401942187 447228331 267201595 406402505 868712727 619890326 983981753 945662561 915774903 958422747 494739367 471008897 159585303 985802995 62613502 828928031 692876532 903474982 697751698 484458385 28841755 355777174 669116816 330977786 663822476 772165802 36132455 333242829 53632721 768199299 148789010 297068379 227515220 510269161 881013955 481068437 568161167 616015469 444176566 447595269 622687005 677435831 438121306 96448437 674386835 222462192 398636575 191192363 712654541 15579460 898087170 752332381 792166955 192429289 205615480 855797869 94459313 425663881 476056815 696849794 42339048 53467298 248082151 832953883 321790111 885127290 179830340 837103448 585530334 902065299 741823761 521756564 668309755 630511758 836555076 26629560 239679836 765459193 385943248 770541780 319056161 652134512 505723110 959595107 359122939 861351925 576895749 658838435 780242853 401830541 195532423 315918139 674385502 984060483 347150239 478239857 151370875 470614105 984201115 170222649 722008977 717239930 61202687 951551791 267078396 168891326 465276304 599519743 644787225 614230368 780203227 987149766 238796840 286001603 888158212 612781087 511481210 681457301 450661185 602224939 608005282 722580636 121304226 216762637 309843270 865774455 96575822 166656225 758654853 461648434 519741318 909693862 510985057 327189045 796364736 668716187 910108705 931655799 793625506 238813151 829663088 296549997 679842357 667537681 952394897 932853961 588901863 696199836 374612602 249878486 414123483 51274893 587598130 991298893 832090736 532795835 115936731 947301969 410992475 13616920 427519678 886032483 214197582 720871757 657162863 316892681 320813594 451447852 17642197 229002003 727352220 156020575 801545777 79824655 273651632 769140915 33311443 861466022 78407634 731946501 280507051 649245635 671600318 268644747 92452876 436960617 33614892 819692002 51714473 447359550 786188474 304134232 608610003 747576010 300745081 910106779 646909029 675945074 967028771 710560232 531298452 712940301 525018227 381438945 250555799 343571537 222816921 546103436 972142826 414726025 344260376 79594185 689413470 664006721 981867976 746203338 18908735 90174265 976289660 656210067 774720992 774855433 927838744 176850942 868333567 913255484 689697360 766514889 629171150 962199821 861858611 279066713 283687456 618974023 373791428 982382592 604769544 951107424 59481184 827254055 41076865 197875853 269997395 906153169 121104555 766369405 606668975 325482969 610688431 375526868 553463498 751464029 165865583 524893274 510264641 219214936 608404442 473091617 668629821 168004257 888181390 348676384 41248490 336374047 492057222 88315059 375045170 667727877 853433876 217159482 93312380 149122960 865258185 872412970 726264421 106619411 283963313 996903715 176903294 379528543 506493518 426564849 182284613 524570955 982243330 589839431 171709893 138027039 734855147 900566081 223604994 295939298 838221320 716285294 661990818 537440315 536169288 502531813 291192574 978471827 689126841 532167014 379527031 424090322 676789560 5806886 111801425 969714361 328134298 58681658 89108616 176935589 55978373 568892473 930558101 241862580 990681849 809473929 617708265 401816371 918468474 321413107 321562393 302464323 378683412 300655572 546546777 713574562 976910453 783716957 64806037 399300654 193380604 151678168 394857395 767379758 688079311 314303288 69231286 183493075 599629599 446050723 676462829 339312652 855779973 918531845 938612561 309768517 390283955 444606948 301801264 67092728 738195154 55031144 395296188 434811441 218776465 429906530 18221255 129640986 529488504 969422152 976821359 795135067 342811206 224129009 28818670 987282271 891280160 716169265 151603872 954701344 405512559 428534171 710638489 420138569 703782556 789964990 693813051 16580627 852699329 110750801 757952804 57386243 926604509 802431176 687670784 516568240 584143701 150258135 151756182 83529038 677760286 431588472 376088674 420243505 385627057 738661169 157690287 734323497 99122779 723352976 240751795 516254814 640679157 715534166 933914597 513937096 618821784 481098480 626812134 776919872 378559099 773465463 520525727 449151493 892702834 163846823 147290435 181437831 552150024 447446309 253274416 455897183 551020510 669981009 926046386 421434714 475683858 780930456 622185221 313358770 618762046 591902264 884077573 974016303 558239404 624175087 662038127 254779210 268778061 563614539 450913816 596244930 468298732 435996723 129170272 624384309 244714306 329884953 930451520 680390949 727192995 817257041 825528646 503453658 324675576 701664682 206266334 105071475 275863666 176596789 532555063 403144962 380484439 830889838 477442672 149514899 440975868 286901596 49059263 541888028 650905842 254929139 502731120 79403425 196083722 633152151 224554056 695072269 84384556 88657106 152846223 736634811 969999957 679916204 76640006 168327363 976860195 175374424 465934080 993950805 735098191 815344963 390061492 529459321 17287881 124546302 501042908 577433381 639431204 330160616 217260478 782390421 876459844 821963759 850901274 127987410 573148879 570511178 57460054 118459654 790600060 273165362 819270945 414262248 975214527 209567845 378532485 167427674 26811085 990524045 730308279 930199814 510828377 644693024 245642809 243030001 790638681 288047302 486210045 784176688 234277304 76945784 592471542 105458197 253572495 505646082 33351401 845479092 446326755 560977013 619204765 921758274 846747201 372802754 406133828 295362623 853308636 203366435 182859047 855261932 291375555 293461452 338662890 418673510 990997636 279126716 382953156 580427596 319953355 251006999 203488714 441592427 197631222 76935614 315884995 683110931 133098000 916049686 299928118 85311313 47057387 445410135 925092881 951849294 773911433 274018960 563247308 69135797 826697545 925177926 645363447 34514735 379275806 53297837 259672090 87995749 18108941 987098401 612948165 273786696 404688120 779470024 525769661 857922369 499083881 757020710 948706898 844033358 131639411 668669910 227799317 343502323 417030324 567192807 471747390 198380371 905376137 525837349 498239167 57147007 296443003 457718927 235402270 664518310 927870165 684310226 251088559 865383769 741427025 244623282 477416924 872818112 694182318 550955310 735040522 643874609 773373665 11348741 596332932 29497244 94781580 307185771 990002913 975281052 3930733 213505784 117095959 385109493 484089750 208924959 925269719 306935327 900650429 835586801 242922576 983196690 42496774 319005857 635716311 501296470 616556563 867920687 166292133 662273881 725846172 959457677 255245132 174458155 345656951 656781428 602904233 287802327 37045696 138493705 317419513 199571399 784067134 206640461 975983348 871382435 861140613 340810375 474927398 55192841 887260480 548742222 844947774 610284813 349299491 876457711 840387074 953092444 582674447 269868536 915633607 986929392 749175432 716514542 317027196 177708976 184072291 802052752 757171695 756310170 984078004 632751785 345729353 27119975 932641700 865784740 950515375 394920697 495703461 925680537 117094210 550170007 220715765 946829645 27605204 678366926 89566068 549057288 939719296 384641062 856941068 37676235 214984446 267830659 2205968 439933977 6247165 90945235 432833365 295785312 618005883 524173808 449211398 523948594 849235664 339195631 999478505 65207221 265663859 211203639 553349768 175500010 781575450 789289768 826559109 360444308 130206085 156738693 635864900 396230361 517938734 989226905 46317546 73877013 889263717 781216886 253095364 516005205 83647501 453879385 707468924 726951228 173337252 502758208 915181989 718438386 23348287 365387677 717190081 81865786 210828321 392265399 602367388 833513891 745389768 810935066 522416872 529832417 60103560 3581834 125927461 746067291 800778658 619823407 720364106 34083386 730424729 177918805 302500311 287812575 902621018 557880025 873502420 267497465 314376989 256738921 979447901 156361498 167689845 799668712 629724677 939859426 970519812 868481077 12600697 481744221 831037020 216043002 554655069 932349469 477898010 256103878 661505621 536486721 600006917 895372262 332849391 515766466 35886284 811900307 806239106 357041515 996455988 406506872 789743903 76309746 590070710 620109840 118891417 859984109 799258824 219801144 506848349 101733636 608290205 103171659 928148575 892242845 492380040 828322386 583607634 586513689 751605823 453062455 412871600 508793937 984783561 708161276 650310521 641222036 495033411 759349202 711087792 896718466 28791895 772990953 168893721 840961924 902646049 636300059 978715375 84301403 272342758 236401291 44597314 147346199 297789735 511308606 385819977 252611938 420512253 814999169 782340597 111114194 767195781 107513360 217986959 357127262 578919216 253940323 347729587 439990924 958148078 348488258 682056831 367361216 780358083 476375275 708535079 630062998 709797421 40406512 634164273 450548361 477928581 666374902 387033263 849423376 701461782 184682791 228715986 302541219 654887880 421765557 481389914 560139567 678716378 521549193 578593133 520065242 844394297 725488240 495442102 979513394 309787822 45037084 602622653 110131881 813226374 651616875 546472517 511316575 320594735 864717980 274591950 858933590 611532200 511730098 555097302 795398703 489600446 394547462 434451741 41794198 968221069 284929034 98876935 431143066 529274064 251578970 603293611 505444098 156626473 54239532 959645043 663266062 580717507 792304492 553474223 200615853 357411664 832005399 364338953 963229228 284101245 820232483 9729279 973889218 414887328 747988829 226372089 935854737 915036669 585468864 116387149 462356053 475485852 526356775 44390118 162206761 27276312 614961092 272796905 338787152 156715505 913942554 560936211 180333209 768767802 217965763 290585908 29508359 155672981 907804353 976767410 6300639 278758908 879432483 933312736 195106183 208376118 738061900 338289210 504093568 712026443 532542271 47130860 603277419 632635470 958729822 851308684 104341521 119219421 544307706 606930136 217978853 453928062 404026451 689817757 993117634 927490754 808549751 450616558 60116766 712118507 361047745 282893499 968139662 900427673 291087323 283386351 225426029 418961620 962126355 39123255 695643189 331847692 511800254 770160396 292960122 466676672 687460937 690996960 56382565 691661664 473788522 11022693 40971647 937721871 502311597 890866299 546191101 912728541 468600339 330002937 965092702 278560874 214738983 445838287 508338765 205274948 644973825 307720616 607544727 199868500 482126321 479903049 875140579 989771526 902499912 468859960 703456386 238835035 456578977 380086301 256985071 537920920 508175781 344291121 31058596 951686151 523672262 56581642 746792906 849452134 316428154 542353387 949476051 93544052 147900341 105517349 952806587 158942524 465523684 797115717 509602016 920888701 351152083 29524238 36636417 802829393 448236159 898110472 50000857 798743257 216195293 144031167 480670658 798972962 194144620 766999747 469580238 511193737 367054877 799020306 722263564 670050574 810468002 838970913 503128740 244986390 192280489 533633999 372061486 852746153 125789504 757967965 924876381 302598560 909179930 879850010 519371846 483688234 893485177 168634594 100275568 753048496 524774286 361374512 617802787 10638864 880560386 837009250 663206208 627046098 286917731 497253439 586394758 403977082 232518855 897357258 884935778 34048496 300071318 506959299 358187221 810208481 220656718 226469385 173472063 783556041 487239696 62574000 958239204 1076213 216688171 759655371 765119163 912440456 618028414 339621911 138358272 189854013 440670972 285431619 746995262 535637591 963644736 825767068 683475257 154619109 35131183 608480376 708990532 511443146 139417334 306916908 697255268 668492733 972209378 132368443 365202810 61243299 197138724 23323945 974270635 878147441 28984500 73896995 507129991 606753162 735095853 556498294 192707753 133996022 248764804 847244033 957597886 992738669 475709595 880293850 644580021 246098456 486023956 429771444 171200658 86532709 250179203 925290458 840999307 494836078 458171824 654821961 116526831 794234523 427535855 144434290 970918139 608464937 820520011 105570876 485627498 499737777 980173148 665814312 381996658 428397732 104918240 710977075 457435041 544008471 285014832 766301528 261598136 447204277 550815563 781892045 837843672 519527052 368140061 36630467 133198975 854385219 775597098 756836854 634995696 401944293 490201005 157370989 497680944 247598514 133849174 439829908 433317118 389036231 391370769 427830613 89635111 664901551 531900943 338451182 262654847 100129917 400550781 646033923 998734406 524726337 195733370 718610967 263361707 492428473 259429008 412927538 46149513 63977692 982548119 562295817 836054846 8105230 917813675 165172342 823302155 25019431 33701537 835863237 397578642 8054954 53909037 247259680 286976063 226907401 635650963 814053262 931450069 448234793 472209782 774405881 801181196 171997216 422705396 91071918 57443257 855107954 275261742 779597955 86104487 944008644 720906578 424714736 629781260 356230570 31538407 900509975 933438918 125267356 119928716 538081220 340180531 206827449 303608203 243895786 154538997 35748092 527203508 93635552 936318155 712995068 252628155 969828738 582390322 776908306 532651712 613453693 139436923 192197472 387318917 995394763 770928290 89577466 113233684 877282264 774938476 7192571 374091993 891039843 567627787 531705848 845486364 685710940 830500503 291316706 578416449 376829900 483770855 199180526 211347109 580938801 476421515 634273974 265131147 697125044 393976643 872509867 149101538 513202179 110239895 995970602 570947157 232245775 469308390 781057710 26124538 454133506 313667804 580538858 732344339 446265864 834230170 399554128 732256578 594866081 431765579 526015415 436338505 635898268 802430193 380189627 757089442 896432674 378897831 962695031 163902645 558461056 531257190 860957918 796061975 316103468 852524312 631537244 831578381 112467817 478788101 647095695 50543265 415861853 201430233 364868586 40798265 859558706 782799248 938004525 800430341 392024847 184578576 166182536 5103316 794897801 948571319 569807143 211624395 113953710 814539063 866685380 853089442 150291508 68754297 970735712 476089793 468005599 857468266 543260060 202704199 299460731 324404041 181742884 138183146 760249263 7261813 655073680 887798856 45060990 918233524 725141797 835454346 783762470 50846971 500161126 679732406 558255358 158380063 613756951 684214885 393520114 314808127 351565179 189514142 224384397 288380018 244681755 3664077 436243298 37994468 644569212 59747213 65758663 918069447 626781161 816842102 13490127 786970432 270785423 157806430 476138200 902935545 823122777 716075417 825877753 699919547 996548922 462142139 301762479 779818465 537107135 414058583 489813112 880801805 936511010 804546583 755171839 183171867 203107865 715722557 688032831 228457263 894122327 460986736 246217490 831492456 430707850 539416539 237192571 112462549 587841334 37430651 992053178 929589645 414677321 461068207 635587767 268665016 732611832 975571478 669097424 758358335 908127339 484409238 928655469 130692818 372446746 431865655 664934575 903525711 305402748 415142018 414773191 173268049 487201842 797310550 966756377 720865376 3581456 325361642 808078168 918059201 223902595 490026768 49933729 403304296 468458838 289379018 465296883 842122010 673590310 652452796 248322891 450651463 677059551 479498021 252189410 501150988 821849669 340624274 821969706 872990509 378932203 909545639 311250933 445270926 995359502 891417678 119754229 7298859 883426444 525557322 646378665 707092947 647292465 167362704 161361202 358331726 116915044 49396915 343297991 427421477 422339678 241860857 778561674 7838728 963454452 846877139 997029628 881906532 17616634 4535190 420259775 386329037 647884472 203118327 962418719 163671974 344769423 680075318 380323947 441232218 296974669 558118797 165559271 318977894 844413253 495784808 265618193 990630713 119659227 185125251 756324339 715274505 295920921 642885428 904844432 940521283 76519036 919800953 251895018 410142134 629678566 600763706 120341484 504673205 159422341 670568622 637515342 251664040 476107133 799406921 445537630 821138843 898114789 761885372 860489088 172099117 106302982 315268472 557808165 292486371 230488192 225454609 201792508 633250788 579395216 301038786 305788566 298260386 124691095 423603314 775347333 111268478 536848792 750615876 616309352 186881806 197629570 2733792 798281208 229504104 270644325 870803598 945403329 504851427 684656741 678461181 570641993 578808970 955555189 745877766 441888807 342698444 632082117 248138619 897813075 865802578 825140478 610777221 885729526 354146592 762095592 247111565 663072929 984171005 17081746 112644209 51361489 688145912 506040568 411300723 752052743 979551177 401588788 585929902 355426299 468755597 862035809 573592662 725413237 493110719 138706471 616953468 802767874 34020226 244763636 762215522 765131955 322080045 47625393 625417107 276747620 87153973 380237796 488663454 729383608 816400211 162122086 808889586 862743657 132544043 996155816 929880607 687455189 49809909 877439329 386558040 523699336 545024564 231897427 67942302 328413887 663385453 574582611 286353963 552931286 817418511 703229816 823378665 236184014 928327056 883829295 232634816 793281306 669806257 816995017 914581482 113508903 896506751 833618352 220638343 422986351 443714499 420880785 551613561 57758492 961756107 706212098 102532456 678969663 552631358 58056889 348935767 154202966 862672307 895801693 182094091 796706748 764641334 198348060 741704152 584676991 810738929 685290047 918992027 857262356 663603218 881864667 349498206 933015014 831867491 143896031 681751814 221485976 745599130 513104031 660413162 728753545 533637104 111255070 146318336 355897283 959583907 862031124 953576863 694648881 920813549 594797384 646473432 12775441 448637846 263613669 110254514 429555180 188889882 478741861 933966862 666732315 403326212 501373066 935133775 252946418 979439696 90059976 648509576 495050868 67319952 294034941 987668659 446492425 990155434 465836589 580338240 718420529 543674432 913272984 439918069 38567102 927501022 478284141 174782973 412940502 536880184 170693377 961516252 4805834 849461793 831948695 137308288 568220254 763341003 134332411 47989459 288004441 666926464 313177305 500591947 800302886 787215072 220044249 666222397 404623258 769715773 18418301 476216608 121086575 907734025 887500901 814308012 572211264 860620873 914429908 963022223 515938440 916676232 42088459 313445075 640847480 976329240 169931248 290949120 955467727 570314870 832099135 826878801 483569050 653407949 529162482 757021177 152431111 955710809 997516860 723566403 540194894 617175066 759728812 687098659 942168610 788751741 775576255 292710376 52932899 539121374 331909907 477675951 260714690 855769599 571876498 486267010 460172355 391169392 291928711 70951944 255554780 184591015 151211713 299867071 171039496 983005923 857168593 35164347 725702320 651044527 667378298 151566256 600787000 257685179 745030750 293054812 525328834 353609650 441724500 566309392 479795062 701235851 278137169 910985242 559886206 152630669 876442188 175153429 497346475 175903930 309442485 967839287 488484749 923527564 51189355 306162925 822481963 682768925 297951615 923667796 934736743 335928985 11346109 961074713 963882595 519440058 278420573 263023598 964230671 669512960 256163924 277331231 781998080 946477501 631500739 769965286 260485689 538193516 134757974 76282589 234986870 19239436 465759198 766038151 806270387 264505336 151286193 204677127 798782312 945609931 448093714 209647326 725796247 50511101 299660161 693849260 196867346 485923698 345703955 608356962 134619148 398391571 655983945 115097529 176230227 835689396 593017217 49863424 549089953 543466151 372909591 476825417 301611588 244504589 568692326 161272183 968686500 213324971 260497429 163981329 391288240 312029708 517691370 270951968 407398720 985004128 630522507 194944713 20189683 861771008 182629817 765569487 968032261 375239616 33095251 308398458 372601855 294537060 3960313 700930140 816812286 887616325 242711802 46671747 408624789 369493434 862454006 266761606 107503535 808801149 157780433 731794341 674686028 702969117 812888557 989558996 496757879 215417201 338127692 250036162 745726992 883869472 181553785 709208102 946141418 730068746 254808527 920712492 897999008 37594219 913043788 400003582 772966025 411148927 850824028 832013165 719883045 427134819 529113824 192189588 783197554 32452585 589090968 152282749 654697945 702292844 710477240 84573804 843902875 241101316 457356337 835971692 142128250 822857917 292008752 798855860 473862517 983442145 35391781 258478258 79550799 441035710 143127313 841085681 302143116 692461613 957673515 481932137 466687790 774306003 726116602 670119900 714656644 306152689 313812358 896356813 859154131 703373895 484337548 764429569 879616730 418902067 947351191 567358955 532939943 283067700 451396514 34980553 362067993 44865861 246728777 642907303 402354543 860112635 36493304 775392801 337676392 954097403 79618651 620373459 917761800 247494007 267056831 409766264 588368154 139422811 278027652 431367999 446178893 959101622 754158950 118133628 38972181 550425676 881614090 292405851 107998180 644916796 552185782 581504620 905712421 770308941 422044255 933423755 129209768 538569380 189434797 878299988 735790345 8015242 245258792 220067499 758691342 989887475 943076427 396985647 37072986 537533534 615433200 18485707 844971645 3026089 210573908 851647483 839305579 369113799 901915481 67773191 770317365 190793535 57550339 534461598 558303930 261166691 377458154 439843472 397883773 477052102 479593985 733519401 867307390 22940222 219684534 184075708 838888089 235557233 706329457 640420563 652834575 888797562 798704527 155644570 398428207 120254547 799552152 418105218 328834777 823014991 918996291 206797441 676213058 738642881 90111008 459179927 612080465 935935427 904755705 584149759 766442302 737448306 348757958 406816224 285383954 411115080 888500464 800352555 867530900 315997044 508452993 870929906 406651983 925340592 153493356 916189607 541818287 463957641 247804267 295853361 95980532 453030587 393666807 35878979 757499427 309536367 198726686 679495834 814742081 885063348 143077937 337789294 128897049 446440348 316037524 95957960 942926219 316939 973192377 33562731 572905367 316580563 439113873 953469020 417093464 56493125 765630565 360138926 555531447 800520011 148547894 235501520 324818631 765547747 124587313 229412248 409674765 2192037 231820185 67434348 972647793 457071276 328714269 748065268 170025869 56431406 776562025 405295383 386001723 781304098 279850955 902583863 392956289 658346619 450563695 269181765 642361807 748225912 446161877 861676666 140309390 568936873 446387223 408477220 630219135 759966548 915486898 104512304 600035046 668679412 591903546 695196458 252764702 753044510 556338839 68098347 236663770 99509152 427748272 137424422 596960132 945978297 369119395 688378199 364371377 846409543 913995286 338223001 931738651 239266878 963882503 195873311 646077233 249800299 621125668 77894948 369604508 446966269 261596769 702508399 846891313 809643391 594228688 500747029 716187367 512046895 563317684 193066235 66459038 854547699 242857521 553305149 709178264 833501178 722477316 618713315 138542992 873403681 740215326 723197841 260380703 778176115 854932942 340094217 296870483 389814567 222075566 251544954 253091790 540104944 817187422 646378956 476451919 783114062 267560677 963490206 71327645 851715863 877821552 309543911 849479802 842454804 683373713 610499428 930504498 962157708 524701624 99489719 312169788 428173889 25403638 936564288 203062200 121632970 177089776 74324534 185711890 724381364 76409431 502703508 909890802 553215974 479672159 365564198 939451294 770243575 420648378 600266777 720474289 531251125 834791550 889170552 831178973 448863958 620758017 683871069 734023951 50622876 953683933 921789816 791571079 513930854 312323069 836945184 756916997 489387306 333005823 844415426 352714793 313120699 623590519 812305144 766343568 472488176 788496947 456260897 837272756 606166157 829934192 721056729 114915501 936671227 64430384 766497407 94936106 427903895 680838215 921851845 783703004 172338783 456582693 372835072 749365831 169823951 178590906 204223458 864419166 209426041 715431182 379738263 722900724 524063756 334180232 581082298 615910223 490462222 340271336 616674718 644098397 911779107 829332279 24836616 873093308 886195448 314426139 95081362 460447539 277851537 817544456 767480551 902859310 781573580 944810133 379483796 778260445 630898204 854781254 448879741 578196859 536611693 444272185 808272816 345382465 907995556 395802673 33823397 578293778 180994603 239521163 517481493 534337139 518236401 316866543 301803844 632077290 701703578 988792341 61156424 27163280 103229354 747487156 276916407 324411110 947211502 795089391 680786555 575975198 102665150 446685405 47395222 128941646 661627032 491821503 361789545 994793841 73349632 329549042 297673829 204766074 141203301 343377114 912866262 707839323 686918444 624307839 90066171 433321677 665632833 944993881 277367407 567755397 935054119 154967195 579040512 968222449 388226830 581334814 650309064 267757765 169608325 28713728 223575933 519809172 845859889 66179794 77715882 408113184 354964778 580030900 463669386 206155086 708571066 473005953 432713526 204755341 202895310 125530736 642820899 776141793 641791006 220530440 475774338 79151722 168262674 634249680 98242186 806500710 978641208 435539858 836068580 928850426 464085018 720561242 646699640 211601314 133824387 295269753 762970784 59356045 219836630 959585882 609129294 336021737 733107698 830390438 327568853 374412860 892950130 902639585 784233287 63280595 545663236 896027615 496153333 361152287 968897563 580724578 462700495 479078409 451188579 859264115 921673938 510190902 417715742 926809752 685571935 587137547 781768 888512485 515764756 252402113 380084628 903806601 630796852 967139124 711649131 997544565 408630068 976762843 628230567 598421194 569132601 825435346 811691238 638374899 116816507 39815233 128230696 190184988 406945464 208798974 810427456 763650776 803057250 280140431 414840608 794345876 773914920 497561699 977306632 429299896 674073305 231848166 509928382 6386690 288011150 243528592 661236780 51375026 210400319 27546381 673844146 349529204 660918981 262705874 532372968 6180036 453094008 962332487 204135078 375563675 893703542 325847089 116496554 806052787 252664667 126138561 438455136 635659147 681649135 43075733 758898377 797136031 152970822 150987372 414462307 797857150 676946673 381249993 650516431 775371656 861660552 638769749 840769614 391712188 987543979 683227937 214572266 376570097 782661820 199878524 332922688 907370300 47789875 13620436 585334744 159844194 549602862 46237866 166547037 167294881 390154118 617819657 13564363 21770092 830102340 30377202 624908136 882474761 140760327 682827134 408502178 323014753 591212839 548031587 512973902 842512080 319399040 20642195 882851687 530091253 250535311 412411621 483076120 439904588 299364907 51152789 406997574 392878457 439212047 994776426 979197364 906817717 593892781 726952406 679215161 363163834 980772984 820866701 420881446 895899102 172619575 305611774 609400186 290681933 579407381 963158517 906795779 304172216 371881508 764918322 819323152 199664240 897827880 880963983 125930872 914921318 131203457 432073203 967646714 209783095 426752240 712567030 641404970 371818327 610760235 348846491 393287557 456571796 491061444 130558454 505467697 476472688 584055182 44826576 36291389 409874909 608036725 315954604 342136902 594956184 760717524 636140156 479497602 945309909 541860651 804292756 663951484 293459134 500098839 339513180 24435139 655210982 174446294 318423737 422664967 885115746 286640215 719892760 90988992 765029340 699846956 717387022 970752169 172679110 889404321 265403138 483776671 810960200 840749027 112823584 963157983 470643191 361544222 602850714 682631217 705030926 505369894 583657604 168631990 971401434 664088993 490811476 604319432 732220685 444663347 877835007 175105357 307495189 444339268 592383368 932016842 492466757 889569999 533013742 663589275 241031364 294843305 263496113 280129493 580232635 439879602 678661842 689978721 880046120 641966477 946567605 586434388 236161800 16843928 994341268 146691964 71019522 688121234 988388339 971904565 868125245 195758589 965765982 346425232 229353915 504766963 625164991 725142988 380628506 838393087 632308089 468994235 240093930 956868255 492136207 904480229 934825509 67449649 404350706 518246094 829386111 875725946 938888616 660957340 50894021 61343298 836261247 681441678 793180263 390535151 196290599 418290286 617148453 819509254 364842060 797630438 865936609 148952865 674698506 126397794 367527223 12364938 461483258 281711172 385725545 904042183 31286651 277824708 64532392 290089076 946304826 536914295 145581178 977266418 474909568 752270065 94069453 486489966 446166226 645662844 299202743 146318217 529786505 669108853 993928163 633318968 292911407 241254160 510227338 624922799 647383377 934224013 236747370 393011031 109166276 645080151 809526569 910747392 962692439 910026121 509176905 558263603 566116846 771273667 159590785 700612165 905325068 857606057 162088090 124579442 743572955 577409682 588887971 267735101 567464697 27679846 809714433 846854999 515657045 332511850 221069243 12603307 770068632 847000672 287072509 674554683 172128319 206883793 980412916 975348909 710040372 701524773 50650831 609282118 353491410 481126242 363610745 8423876 354677340 114541298 835338871 377905151 322343923 324746377 747564476 624744356 818289776 192515692 830671012 24278746 224317280 368106040 842226958 65778239 287613311 754431416 300585949 653333192 982616063 514989153 386863628 808045163 242043704 439694365 848994400 580340852 724917135 242744364 575544304 84114431 617499558 458315566 892056851 92166026 346771612 76423567 651253779 199300926 559138449 215062569 556036999 4577290 325323051 641842541 299565269 61823065 30657243 34958138 166764453 248979385 177746749 338716930 556297238 11050464 172629230 122341484 168987693 754648110 673747100 89459856 926574473 488114577 510119045 2600201 475639262 27988619 487486247 878151363 937054183 332500888 95538069 638960083 413631414 229276452 101720135 45784441 601015963 661209095 144068279 643321383 360002984 940672719 714255242 868957868 986473543 887694859 343758263 3722429 892735904 410646150 6941540 345817945 107906617 72822625 366712755 989953148 17023591 153989824 795617336 816074559 259231938 382624582 447187 205647068 940980339 127821171 179562417 165809426 301425669 716922026 655437117 581244569 629655069 250825795 62734894 96893792 69691660 738187980 749822127 376939764 84902292 144062344 376522086 654551122 35007583 7860557 768696990 977133347 223451363 564779623 72207503 444692663 949321286 768303123 365765276 449143465 950429685 298894324 37242937 17327599 280266768 427656840 114208754 717774580 170113636 526997961 248118934 122083984 341810354 575930555 636559109 260583879 273048719 532545059 704573068 521675314 669885182 512319410 394294371 684998447 672743362 694718569 618963060 481253460 820694290 45398746 471503075 208875211 103542783 221978946 878743703 458058564 616296069 743074519 491503046 607360868 613286386 756579262 569933872 34482624 69465128 478421673 125075509 373767419 924758363 402910567 10646302 464416467 775831366 90080937 947846177 671085558 744598181 887375252 488667260 302951695 238661268 149673831 904856929 883737549 956312731 745977217 265509424 260255944 640617037 483493787 573225624 628856276 578996807 850533659 643353364 138915166 748682758 594929913 969688538 66653549 438399802 757507538 164724520 464941208 880142430 686980140 74628398 521882411 916162355 393772059 688809834 118052744 720431718 109376853 998002077 75552773 418998669 491267604 166203494 855646156 653934799 975132978 197390953 53822342 229447951 701737589 702835408 293047898 254450970 52726431 874818917 717076818 750268915 69620515 234619392 338497522 537313692 22163938 704121440 137141959 627857291 261691463 681760823 466285070 816715618 718018560 886045048 566888872 772716477 759205018 562025294 985065186 921421821 932297902 890492958 172782120 33805500 865610785 995792175 493802448 555457920 717043538 837543560 331405604 578765478 283787997 812781149 424945574 48627194 532944274 678477793 254771168 175524373 923507116 726056705 336104036 777917761 854749304 736616643 636513202 823009323 720341025 11627242 966097840 261029245 600499910 883628917 684431706 973401168 416074620 555175114 585795185 3299047 279741941 635782193 892468993 745757495 619117287 414744127 192370045 385847534 775396343 516226100 505107392 88740129 559423188 881636300 510852981 196126996 118349260 650971723 904409568 677150002 607045198 718505460 766596834 222691075 973669015 456717229 942456230 719202235 535025682 957022842 638578401 103942105 195539535 166913601 240970627 742927596 433004925 275391978 110456310 843037890 215580309 703810637 625549052 941107170 628317201 820064626 761754463 736821892 533360173 919904665 229183306 314155455 747807597 599906171 372485398 142019450 42740001 994010429 132283139 658723436 185075902 219018673 855366774 234615470 331120728 50467172 385795890 877159210 702347983 641805901 892609051 691880365 524222975 290603747 366519263 54417679 492035935 773945390 456516787 408452787 643580187 495072891 454034812 364698589 198027746 699781169 587962189 563672129 561481280 522543913 337708282 805873782 500591637 654067250 949240783 562139993 317808042 953033590 243211717 239218417 395845294 162418792 682635965 808458676 329779694 442086525 852385271 295415802 998192897 265999754 991113436 495687858 224215823 978103467 863046238 11403879 659153888 957897251 584816803 598075396 509084591 43195643 962180301 881501057 139066908 505746408 806769212 806527602 500241732 662708489 969283678 698940859 663510080 28947269 735297439 46864112 12632889 926403555 328070510 859514355 70335401 855137781 473670725 809267543 8404736 561485910 653547662 578687473 713625273 895105653 791004737 302712281 639408394 825851154 606251066 57003547 524163008 445214139 578847423 237928775 56934879 850278511 602186872 318535161 477528334 916430521 557227405 720995470 656436078 825597767 961858580 709500290 766270858 687069658 34783209 735273213 26387438 456113402 766905875 688286444 467562729 862498593 407980314 547350721 449117329 24353405 794603262 505456025 666238973 965731631 3584868 842205098 705395374 208271528 910148434 710933404 692869555 53584043 240211036 115055158 130737095 774529917 852543478 14946175 120692267 447284507 929035273 316505145 904318019 930562937 36547664 506674298 65570650 309418593 199309423 409207416 273770303 640415217 211586278 174538876 805451287 465134509 788331893 261351387 919488191 60620670 719891890 80303500 878661457 319573515 30622091 888381526 995599950 835612878 98889739 79907307 315396071 300109475 687773010 340846950 850665690 995263040 202398250 449249689 629642647 134298130 457846792 207716978 746243923 658301875 348789459 235059560 113237102 486807858 594281071 72559937 83649438 533199472 846774641 70938156 23443314 167575702 228615352 768558800 987442824 795578214 943878793 656281800 884595984 661178615 89240518 821297792 871536543 916454417 286440659 909402182 419592013 236933562 437290557 8050020 319362511 886659095 57616805 216480627 644844307 950193849 810882188 700392827 302818208 259716076 346288152 128850876 70760062 136930489 815331468 484801587 825027134 968442711 877207570 287622417 528814714 400213132 264269534 941917167 964379812 121216842 230694150 991363444 238670270 797625502 107990555 7030461 656189472 385218875 716463127 915712818 968830940 395039841 524004123 471567011 713920692 426891281 779136262 657342274 217449498 231770293 107976099 358216912 424487697 939236697 746515081 309746387 62690399 230288605 681607094 543016909 583570969 526577131 219672047 342839204 776912518 730468581 971119877 462756969 545900113 256995154 456071399 918787386 210891268 575509256 94461871 927007603 922990523 125529678 374299901 413923031 981203286 645547077 506756685 934579495 256616611 820728285 82493971 226260097 449044303 862376128 283874714 110713363 56867478 758918029 894806950 908212303 526450170 956873139 347783648 689015621 861761030 930292192 887499017 86283324 277304308 430444377 731034159 795335331 25022510 141258026 185566447 490055093 279172725 416897778 185752754 604758887 411992190 231000607 246649769 770633902 445657358 539541859 65339988 958705394 411062449 727877179 334853961 95108788 992983467 844541054 887823326 47096768 304110026 895620440 248299424 497864584 803873312 946727486 903246560 908433484 204445316 727273023 525026415 322936499 903377423 192418455 518944885 400404796 705256532 623819984 87835199 184939190 704892762 760334208 772417416 246714550 111860444 304038026 258817675 956768840 569148877 184518139 224275346 770149838 568806517 322967217 758601281 923492466 999458135 178676655 18262709 181792959 729120167 161799727 163703326 422146836 455540973 926445874 966103818 88722967 981745994 94006878 550748546 660851557 116262539 442373773 887377581 529804724 135198066 535312386 624101347 24717293 170752445 247895095 417510371 551889354 262593068 365341572 495761603 624725447 234875451 722174454 95885131 235967330 15583422 475996729 686092791 546199970 316017477 871999945 849494146 123204095 499648625 481455000 730716422 127529469 413070332 473477418 533909137 752772349 972890708 616603302 298166962 909570921 100608815 118698417 610706679 791829967 635062196 263293277 180545566 221421797 652968848 800348696 909732620 332389276 226545462 584715875 940603171 195132109 316712283 102869967 864747605 353243242 336353538 136208380 609543999 643122914 919921883 985349159 146362827 283881608 836312112 312671423 69537665 557267399 358696044 480166140 929797853 339781925 417369613 252933980 596390686 704703036 600771351 444227468 540935681 553185274 40884047 268418269 972495316 162721806 23786026 724451591 851673803 704499939 168128257 314727494 313968406 277585050 25958650 202244087 457386976 374244249 266998398 236854042 166370647 524179022 278754173 301531137 811423352 40267697 97910415 694816962 81571601 353667201 883526747 68789813 125676910 749777902 862199077 726564175 427076185 526986882 170835825 575229846 564513982 898826406 314333802 303951813 543318410 402387268 520879658 564342877 61840385 118602842 71654941 391363677 440102173 657789134 654823257 367241529 182530078 506826041 737537883 97805680 834009611 519828688 439053176 622983452 215101391 485010593 907949763 811997794 343156543 806289568 535209829 491318224 695660274 36220937 394476108 257420877 745186422 593858842 227944695 13617692 225870770 982517396 32905644 341440808 947950787 351426690 330672217 47879058 597229462 801729276 198503387 271276770 209093733 126187119 851670647 727510484 449714915 37439762 238185101 185482284 731105816 137696545 56939091 931400662 604307616 945982589 830551079 33000093 903176488 405070097 599416287 909759488 41208167 724506056 873269166 326686565 285255975 943882249 711408849 29564730 553924227 698460379 623308691 311076066 703135006 71921085 685510780 265792592 710641142 736181502 602539982 888053860 455223413 849660721 662926393 357861595 42101213 193724024 88975544 310039625 142254140 993325727 542397202 850114214 438595558 332253809 692174693 215548692 39014701 525233061 747068025 628730992 166085939 713111233 604891364 185479976 498982146 903403740 537505361 558269036 432892923 653764161 575993367 535788667 334519342 855082921 621977347 488495667 928966795 275887430 455331382 293030648 184084602 637859213 892684750 777771877 382512905 203779310 789656140 225039596 536041322 536566454 795379683 639751476 663054819 737232706 556672195 693865109 193030594 336435820 179997540 548025594 512226084 509104146 731724011 150339636 579441325 324974661 239708922 905504379 386591085 207219211 498887369 994568510 631296604 51668958 376477835 195803293 172424633 228828365 928313647 733337967 218611129 772444330 667709299 526322323 751496891 695915667 173341217 687230739 632131117 467231150 888747537 867369331 896699383 609425264 718545286 156429838 678857124 802145558 762566117 573096292 365989019 743393794 172160313 688151625 45878210 79794303 286885830 651257824 522555428 2564499 307580564 647622791 866939796 12623645 754714310 151669611 966247080 338545318 257809510 773815134 930875445 305518505 407910057 430609540 35240405 133033208 915294895 81185601 890695602 312412631 995553757 581313651 40833115 58280691 672609072 643454740 424784376 51329228 942114619 996159706 307435238 942557908 166445179 595894744 666396982 519747139 888132232 279568860 91188367 750965150 845072045 650018884 836914652 384432897 887840132 592651272 627270502 754604832 176243827 642233569 648193623 358126678 25853772 677194964 647410707 220373183 702286124 49572517 785754951 470002543 280327413 528069554 793048461 437516922 817955331 147131783 137467637 391170776 893872590 353001603 906821356 869291492 677607694 948466616 97622416 537673339 654933536 197784131 532311148 328695022 939141987 588453311 542602197 819403759 227710920 352902122 623293993 98882393 15650127 744506243 969810555 720237901 96976206 950842764 152138417 756407234 791471136 162706946 6385032 996480719 530334585 371253644 117870439 249168504 481607815 16040213 598590441 231747002 501968415 573354127 473039314 582893669 209671714 95346660 50201806 28050673 151437260 265823997 586496276 930160922 739430337 330061158 77515627 859343787 162257038 870210840 299186931 929103227 496085930 412134619 636082140 600206336 314163386 916140845 650357991 180180045 725174489 993316693 553392928 311061271 77807034 166331949 750525027 181435202 381002744 693309850 632774550 167015241 653911730 286813999 980586774 979898263 650835056 961493334 21802507 567042421 181598207 659426450 322715353 120237606 617424488 821851105 568943185 894398481 199641649 525697976 566812942 339437180 688108204 370503438 44296774 334139587 681084436 945763220 283730767 457329566 485013374 930225451 7848218 396229677 195462486 38628283 544402705 221185095 651128617 389867371 680837900 941159258 183134128 779031983 977305548 255194775 775094867 149098387 976575867 632866367 538543811 425013257 170105112 487578345 213397957 667904150 675379559 969195942 105614076 912308871 280768218 228234796 357170259 145018298 117285722 473489407 43366872 295976333 904762315 206482196 304571114 844498740 445226173 252406935 996875172 506571276 712706230 292972168 530231408 965633477 921061324 559977256 822651802 84394790 332548543 248006074 572612939 224126976 30335568 150866455 784990847 25611970 356144527 880847558 650443090 32123047 407301774 604131824 820329546 746029023 529810756 604517438 486350900 53487074 429753750 441895636 87593903 305260073 586955214 226304283 912783469 637008208 254043648 193857105 205562667 129020965 435354446 513269457 606325775 172202840 401397902 924060005 581156232 378824402 348413162 945474819 604014315 633665405 266423579 882128425 636774655 154277271 351685824 866169320 583624354 875200550 902176522 163296375 529900924 912546117 307206308 663079682 113546398 375515293 130058462 31957355 614017263 704454958 839536534 476819194 292183256 665611352 149114726 804578628 180828654 378966162 379243122 837980892 296380530 775468745 199604556 812122567 73409422 164773282 2451159 503188522 686993510 634218090 463814433 839573692 495160722 133863388 877719614 297881852 216037998 560626240 545443408 844236849 267632591 970494015 410574506 83331300 286296942 758901000 816240814 110059659 228682990 603913924 417724451 120098511 719726112 76009314 201504254 730227102 427753898 924305646 638183254 472024564 369206685 980277312 116362152 837339874 886970603 117458425 425792982 555772039 733421820 656648828 312972490 159816270 148481009 671564532 29967876 98439343 590730479 64385109 902407085 371568518 299315503 477210076 839598351 888179882 954809593 926956901 384384811 857797628 629740943 797210725 668276873 627323207 430092673 82129412 616881744 380037359 108812051 46898092 590804993 524924168 528710838 339180923 186083094 426181083 187636982 594765403 446889848 146266490 176642291 356519141 816404273 45618171 688227334 309857094 892480598 530330403 483622061 824389296 122934531 558996705 546673931 173053994 243965190 721612547 776100039 636909017 478760946 781075427 405867349 779947855 183780777 833785663 975788383 289044466 21675730 850050032 70969586 723213296 169408251 976196341 734841714 908332095 102572871 972497176 372685267 271608393 934500163 6673976 999717196 136101620 176617996 244343865 44184189 740389710 424815340 44848009 970392278 445214829 308102433 700256709 397081372 274356904 249012119 377257069 442315687 105289935 363984243 387484305 194283025 922742346 304082016 822588670 704138640 174582663 806596530 384718833 947727295 623967595 199552390 230380340 548791949 509590039 223873717 317231422 250592673 544000647 810372822 552011635 897987731 578134222 892159191 758359463 413873669 522552569 567871605 181015548 669099357 292317108 946292043 299698279 929940556 605582389 532857383 810792146 49556681 967740375 566858747 991965082 938596356 23812832 473688952 605560445 252791478 182789533 567820240 94815363 855711328 893277452 942264285 764058038 747827725 867542531 978938791 617661960 552847360 696354269 87488287 682263717 675083177 849550619 278237218 901897848 587770829 691690755 506486018 691686188 598883795 184110198 398085777 105003211 258096214 815117369 551642465 818500405 177817871 663548696 400761002 265464070 990982138 516531792 317556968 29393106 373726367 454254184 518229972 1149457 496655596 634749549 799811602 490437246 24514423 939307207 978693541 395845617 546902382 798234617 919274119 976705330 941537812 74898398 965883582 927034591 804125420 599279492 568705961 334689841 242893948 712715140 980584997 148241474 971251693 974845987 413055880 395513341 601364998 494618365 136057526 649636731 625899578 306854210 578759947 828720042 188888521 502681454 505113553 828309879 597611113 337613796 150035437 745799997 751695147 784501888 583820808 594879597 924016685 739456588 185712623 78345866 869523028 500185668 686178676 910440110 227181885 937384665 804137764 382942742 978108041 704843758 229774845 20819051 946947664 167907323 499048300 704827854 163042222 598015744 401656987 779701415 591667967 922956953 375049326 612669066 711639751 542067664 221703696 802510376 4190343 976791694 917859092 90994726 769768758 330578452 519891526 877046319 203538014 396229788 539824759 384166475 206876356 753307814 793909748 423639661 78788745 967121905 754707604 966297989 949197069 834284226 460593965 345607609 300889006 517486759 591603237 109665129 273403575 842486739 516543345 433035973 611554880 608382428 5852380 258674154 358769373 232089348 158969603 801821946 286352398 88220132 587566581 952468446 843705003 65165466 764851035 155430363 888424263 934683321 188340135 911201806 610563484 923947384 938571235 853941158 38874421 211023053 1280339 909616386 275022852 210723446 768521508 951345193 779355786 637788042 869429526 884048103 212321178 29137992 656930642 899425513 259547559 854382583 982053377 474033834 361870534 195291745 618429933 116096737 595746667 863831589 712865323 954575684 881899029 545989902 444646136 41286598 416673194 511884053 894764314 61867442 897566434 555370622 411682719 83878543 892244364 247971559 294907091 138699143 633537127 301937159 791929636 888825724 39305995 487076942 585177910 934092808 468320495 676744614 808716312 358748910 466294194 98436199 329235293 214647442 912774103 287020472 997257408 829420924 464036052 116476002 740022793 876417309 129062615 43702855 800377830 345553017 485184879 617723334 116398989 604986975 936383521 159686927 46906300 556822025 910195144 719253880 753636572 736880251 992611968 407799959 686906086 733389674 400510886 232384153 484571365 32743943 613095897 383083772 444375139 822882114 715759093 600653027 61635268 847455481 478378963 250947237 150193061 491220557 915005072 207546362 422645286 251858209 527609801 608300424 994418031 74980414 459318908 898032534 893965320 762273441 128089264 35484000 838285488 299323349 102465431 205673505 156359925 331233027 978383931 947721695 341554028 149675573 976459309 110739107 715729753 41381900 648151996 288915500 556232516 50407039 744543661 704944249 267599168 358661241 967004954 430701937 326143625 467992552 434874083 361810682 599035147 820111062 120503380 517558863 566048306 829688035 136837211 689872001 409980395 762296604 885928773 611440672 233812206 624332489 68265277 233030173 631756465 806003606 562282944 145528464 780307815 949247623 213360548 897442043 88975358 109688661 798307389 939060467 86611448 976624943 367075291 538501406 73325428 182334018 425300234 837409691 818328661 369710862 475468915 612822166 692328050 94882969 92922160 24883196 261607702 521233809 811522436 123557135 847286286 690860344 254764190 326424691 222537775 569849489 23414760 142596279 184575109 51036073 304423300 796667677 14163611 405203470 808472581 600963274 76338809 427287303 751063263 582689678 587996033 622184272 133070413 973734316 902790521 684581723 930007980 154583324 869911940 831704007 271427215 935111232 268470785 564064663 818130754 175277224 613169397 30205913 910641994 530915149 981934252 462204649 149241729 788820487 383964123 77588490 202856166 523063186 35884384 417623999 186712580 747051327 922224661 332074347 42998985 893186718 404158674 440951390 662933549 940047768 432179073 232528278 662772234 199442708 384680406 764711422 388451231 538935822 268819166 126522954 178364426 833307025 357158270 999964371 809437294 435323994 362756230 108986584 695760274 554307428 485238177 821027211 497373142 607259043 226370820 367261681 559631192 438252959 904189698 790880627 369625006 462354515 830480580 339861459 336524161 470438926 971733572 287087606 308046000 549890060 469038284 840191009 560269088 121760369 988377158 408232299 825188837 560474865 669470107 633845528 426167295 848586893 869358617 532255923 269914200 122850331 757226333 770622673 458823619 433969042 924482197 403436302 507960919 574416964 990730493 726440178 748819934 87767156 227564671 265113967 226151484 367571925 377897573 587721954 285626025 847827131 187632384 706743588 43587280 519924053 324747097 250689346 2340005 373690998 226460486 85727103 244657991 389432052 574663769 157558207 738818567 622923087 70003394 148266303 674099870 381458770 805407219 996797540 271989929 7552836 726614172 737057361 25975400 876594277 173404909 97970953 639100455 443108531 688104198 305418574 442078438 642402528 708182168 592586633 726754488 233411976 728859689 641236956 447069200 220734070 911646206 680165692 911439639 428027095 911227329 200387859 656944948 214898352 740839159 684821305 571316375 102416341 62056138 647692100 300363512 181670845 165474695 935643760 472298627 714760302 709797978 999122540 231602769 370487588 494189465 814980706 206891966 324872632 517853454 604906410 259897106 361720564 865998239 84514882 362342675 713109758 392894387 564292796 807218484 182069789 727866932 552301601 987923869 776201141 282050978 299526797 579980201 729091191 801512871 663365375 965353993 688996812 473074301 119685501 31587763 686668774 667644290 447705712 112821956 114731624 915025550 20946634 180851673 648517936 468116327 438078995 742106761 231224944 301457995 492168755 709032395 579024158 110016396 799382562 54835608 274030758 600324747 861505804 642829945 109712447 878393907 127097313 589579933 515476396 207140941 375586156 188676031 892587613 129693566 806471109 8939605 46321362 812024056 165701426 837892592 987868147 283303263 895222473 853899412 545816078 47218844 797741569 53568372 36879792 496006594 110238906 173772141 749962029 896079622 998395735 66453659 272770817 658253235 193931877 273803347 776202825 173195740 216769286 660204207 436682642 406592031 892875365 884621766 891331401 646881419 74989832 781485915 276147485 334642355 122516874 303831061 663025446 892285376 286732941 603600460 222609235 50988251 345339648 996220657 859178135 354498930 508145515 484862470 841645660 7733760 770178753 320473706 714166073 433343987 928921693 281339750 963523646 137683379 566926263 850483053 198922278 919079595 671380942 675717024 694796764 59483601 653473225 67339959 398019770 473346939 841489953 42576601 923711296 594283264 2582695 724203551 408676340 17351875 642767487 220738025 345398286 175100741 164701927 278050348 605806198 315402286 557484722 470499930 749718735 18086074 59896031 414435637 890833405 530941176 154579367 5942636 66657869 684196738 24726035 865478218 724400802 67479847 922388992 736421407 766933962 165506136 52943232 332722469 142639775 739122621 580929009 323484491 659222549 457846131 451632963 633197437 263962745 590247435 564106860 125595299 401710077 324972367 527719243 724918742 875073072 447594625 416902691 920359088 285468333 341616373 196621236 835160673 96171649 726176895 59703240 183754329 858680258 588251041 293208951 282579485 616654662 680126965 729923585 225948645 607071542 316151996 359012482 115986892 569387905 232092345 998633099 875947639 170205496 25711435 477501560 399664121 396328216 840135418 570819404 797128665 305528723 875995027 214980116 472426662 308901922 311093040 887610839 90481928 330608209 348868420 783286432 909563258 361331129 746134777 458238069 309628657 895671159 835418889 418778036 572246128 227128950 850364153 929924948 483274079 773046710 354404807 66975683 2328130 829735767 945262117 478755148 816267069 487066044 234209672 898302661 639060173 627711250 220683245 213371614 423234901 1073696 745141258 877372176 331947519 327357623 351674471 690291645 64528791 456334105 361352307 233555042 296235374 859301136 867470478 328362229 777461080 144458899 324555571 453208480 125841126 251111901 708504203 764881569 187308849 405521062 825164603 279027360 792506796 200344397 648144274 346375298 276765538 715003737 481001076 563235369 426118166 373640613 737018602 88784516 872130537 170163810 947715412 722349903 537751303 75175281 521127780 317728669 427618198 764439942 999767939 499531044 651488351 812951994 554222183 255671290 249467892 517826467 289965651 998918519 649585563 256497562 468416507 82173977 251185706 586173801 161613172 770862107 143428040 451261208 255246396 14618936 885153028 239230298 337303264 971945733 189755798 853123802 565243033 872845772 248813091 128059349 15831480 479512956 171398640 868048579 380102266 906425534 829744909 949697376 17896768 830705307 353855759 808183931 159208818 288292704 778941780 179329815 171623049 219926935 626682344 71685351 605970863 892499307 263215538 471810432 516301930 204303022 106462612 901550307 326434070 6769180 609604816 3924931 166847372 173534585 607515905 923506197 264496974 657885040 657769097 438619525 601812862 775241030 535175456 125483024 116923336 479785777 997445590 264782944 503695557 709054146 662867473 911990651 418865525 453998633 683806332 800106233 6396672 874971543 972185472 657010711 781080966 433528914 800122442 903460118 851136101 949098208 864558726 418457912 431256006 879732175 859896234 975350234 527644713 375447310 126504505 793466428 547704390 167258665 843581914 167573102 848211950 278755787 94483553 453677701 141936522 565325543 64118788 942844201 52674837 18033811 616450955 61176204 459390924 946036528 80689003 274653998 171202308 946456360 757203664 786806169 729642893 66296020 628075767 245353771 698030347 771316694 157859235 725666839 288335008 267895305 768881401 775073776 321089706 911324257 237523494 639226408 396816923 607665121 461404240 190394345 737085567 896505604 818250005 516381731 623644066 819155084 149484295 473540763 666431471 932623953 131473757 720374206 66781795 969610026 143625314 843219340 284127562 196277490 138143560 748048085 54174224 314199819 687855283 70317311 125510396 799444248 148057821 338070042 594483226 776294042 948576733 222260540 432964734 492995787 800701370 826583997 779531600 968329581 98566815 993363444 582990836 815517873 581950835 294023019 63217449 77892244 783440356 757428014 941705098 926569528 136754359 482177524 278732028 605273911 3840364 736434491 596684761 933108253 802071085 841915976 504086682 751635217 821638532 246486831 632512555 620286916 576187461 467160580 387691942 612151668 229364653 463118070 773177920 46001788 138547672 875664056 854904751 589790962 538511917 484860658 973701755 535627630 13459690 10158955 925377318 600586554 572534812 451058803 333078742 459683947 143950073 539902256 497046912 824336663 269420061 919627375 193101375 481266326 335174780 58766834 252866658 748764713 311084455 861299706 641323354 20548365 81547881 276596511 50887767 174397201 881573699 653556188 580439991 596100446 123934556 939588777 954907872 971738100 993054365 266290574 115744525 633630719 741477738 596372847 344626934 768810462 931802954 376719109 203945630 165993769 188597985 394101022 924673084 911966269 768977186 54969308 450209042 941331807 892696174 222013704 32424996 972465176 806141097 238991865 62946171 745883051 777736874 961473261 87285240 760709190 445661915 288497384 965561889 114457926 666437699 248775932 179179220 638787875 319341501 921252558 189934090 970476355 553257937 398153985 433980361 67663237 516672449 375376714 198046617 557721288 246779285 615050573 124602680 694605773 422650615 616816723 811751794 473071949 712184226 147440198 982570340 774464189 193591840 565706702 259072122 666854 224770215 129232571 336248585 213286168 345799303 497919448 58128677 364018315 936096132 579220238 745492857 620072331 845128743 779067661 578190327 308691359 316623463 30529385 150564097 885837187 541809383 758467208 512539298 692549363 194284185 738969136 576139407 461439811 760437105 806849957 829105954 871112449 815696167 621000523 547851053 744310963 912061946 513652538 266254281 821749433 652342079 944021959 925224198 696547136 503552679 927233336 493126773 220932954 153862161 348281687 908985235 696235039 686510019 942930551 548741671 437065742 208969427 387446255 422594633 172528290 122735187 573358730 441732813 497768867 40230160 977531096 792206921 683925780 264654852 219659598 692153798 72345480 944268940 774859742 347892424 214390822 397662964 211072861 516553363 154749655 441817368 262688457 248524030 117646640 149569124 19932405 393305595 879634944 279336234 883006846 18818687 343170720 918077756 227876361 869739041 749291322 394524368 141801863 884040529 759017080 737832272 560224833 599260762 766721559 989035704 252354733 891989219 363892162 173250003 671868731 969599026 475061897 370375646 249269064 956994000 387822341 656890087 489407026 305752731 823298394 698873527 685004033 581319213 765956714 853152926 618621792 542770992 572224371 338211045 988587571 963739208 69895488 278299233 833799760 160184471 208005681 152948722 452035239 995335505 524492673 78916878 659339149 380955273 781536760 142414392 422017406 100300330 777526401 513700123 436988259 13653379 347725595 112766561 889875350 437858573 634765313 330756164 924564273 243919561 751864216 579964361 231569281 492575975 33304132 75572961 881901996 842792205 831461443 717770411 129374526 199344963 99026248 77116136 778546275 353606744 652032860 240913532 675614063 730660048 930084112 505869038 674723711 319518153 873519725 259495089 287485572 716109798 159834259 193180985 69282358 31323188 82181446 563758742 27672828 467426603 845715693 701532164 214254685 120990095 848663088 311458123 149637519 647121837 938644385 58763065 386111410 933323406 751624602 415434899 374528634 828806196 488853283 632721064 151715739 73389916 486854777 729865019 405423170 724581527 534087278 875540768 657361242 740428035 234585428 752251435 694075058 808846170 698150836 156509755 780578140 526830932 413316829 532274060 245029209 976722115 29654895 110678829 789378269 697244120 594144117 361853623 574601996 526231000 73226272 619613959 875005692 810918634 990328912 271846672 146523797 5639942 656161500 458132942 261475817 854931254 630308060 759706873 773492716 23480932 830275696 498647598 782300451 425176268 23020410 593993453 513441655 367605473 471544529 242459895 957700707 70321298 176549983 543203723 83501488 890530623 234482479 143890050 77344732 610081844 80114426 329222687 617159941 779417689 244895682 499045639 448167840 590560410 885728625 665800139 682871670 226332930 390142165 543609634 481303839 866215180 382296115 146959476 557821199 791704556 911293635 397305296 339466380 670038601 268176642 569198711 167442663 850155048 445758224 961728479 10798027 579405807 817125619 248234007 480519216 469038119 789218572 686265560 344406266 210319826 107608792 261285853 923670889 142650455 552455778 393377658 599746001 794145184 109491421 5389510 829130512 627472524 498281278 52051416 779800504 164700403 815358372 932151378 774094144 671769322 296701173 852369190 172898283 260851710 886494316 115394048 70565269 621320862 874316339 530495788 609621068 90101536 719610008 669802939 932313809 724832243 847963753 47755661 710229870 578840411 922575811 447989061 570492853 551788269 483697051 603408505 44603342 662537329 177319812 240808420 782586206 144538524 964908060 776499737 927720512 687246418 107882970 802205550 402711037 146084666 281722641 945092388 957529499 861715779 961551527 117813655 891739188 184923642 239626882 36482239 656488973 778958836 471016909 612923679 958945968 796509832 651265797 305806851 654727620 919908140 255872830 551599427 830874393 733536221 215341609 331757621 397241771 26306088 912677647 178033496 152819716 472258545 695373759 816203620 545742722 402335362 841092324 955349729 951934080 214835072 267479635 354267176 703121762 423858114 394303310 524270414 383563737 874745530 397629178 613703980 161009616 162872118 428092787 773458318 979831992 896826458 210583159 683086371 166512598 44438089 415759262 709995054 490018263 376354461 22071697 993629188 206979716 500979406 358765041 267616907 184935349 999666825 945304885 925937058 472233101 217500433 113316163 619727049 15637056 191273906 379751748 606960361 917455234 285142002 562337162 993330850 872816416 676940368 598365654 994632822 610094232 612761811 335518098 353057789 279885244 65147843 625283854 930813141 675067653 955515994 931411246 146484827 702708794 202295740 667080863 309807271 770833506 328979232 203185991 827972178 69019130 172644354 819095227 487960129 982332105 236684749 843438788 764231403 875809589 585111541 580755718 758806019 707004743 174447748 410137676 229020557 533063269 802066121 383863474 711234464 826824778 366201717 802680891 181099525 981487399 715911074 280468420 605735478 512170461 452624576 499860087 653434472 463206765 535079520 729915681 137988614 423194778 789304340 194230625 337629408 601359732 191221155 902722735 61133254 786406933 389288514 925508245 173308877 793988959 63790039 195878748 265325681 102164666 204239959 38382527 540870531 852295292 46609163 837221671 819944765 572839819 51224655 27145427 715898124 92448173 181564273 629049324 152917332 486680765 880158250 729473875 131868719 47337648 255628568 270495296 917203901 245619428 287345058 913763997 482241926 765972682 595527817 225955140 280466202 279210917 365157127 258974560 554435706 641161262 533291719 375923136 608416858 179957095 7004866 732505070 878972938 740906216 945037721 733123730 834539586 555313910 880832393 516594699 963272684 724104369 180406407 962383363 928066142 597442015 204999214 284951897 84056205 962000669 493435886 431732051 652064303 25249276 378202885 116045568 648358066 615905914 430531970 938320665 268695300 932414413 294382301 123468094 617836637 720718936 496817900 478238696 366824919 699864924 663805549 909786329 962656451 966855598 794289327 26626445 450355530 282809589 600884425 684776168 879735385 871719645 790136790 142165551 810422322 189000992 733838742 251667038 946621780 93988078 153890782 291667529 83611477 653757582 901230926 973319480 316803774 627556418 105368822 709643844 202469705 318355025 490529030 660509393 315091230 715136299 257157805 459977760 468819406 895312093 569509370 445716650 514299337 357507564 916518070 516992086 282828997 370325212 345921502 427890259 673091510 879761889 460041569 251322271 419819172 363234088 886202135 930643797 207012186 722523560 709800149 67948045 117927953 245441283 613155299 904682690 372890702 807799383 911449927 999901437 157774285 72432531 781072959 998807370 784964884 820716870 143253375 439853861 851935026 492309982 300250230 830690502 450044334 841732479 698668273 566389742 776899380 438815927 406195413 359429168 708847178 682732768 121123679 401862748 820621149 518261207 374120163 830178125 400772312 773246558 304773671 467593786 17739590 874568984 526174933 713663083 6010451 269336415 266386362 690241042 221402869 983349195 846222753 880667695 238641501 1761641 775985980 310680229 767947047 679015047 687593853 912372398 995908167 176590096 883864260 832847440 603188067 987846445 168715915 179452875 423059540 915018640 593768383 751707542 464873125 820408001 500770226 346841093 448054336 763869286 911531284 421220337 301627721 387309946 912326231 73270144 485975381 837208911 188935598 809006047 578619404 377680843 359072534 642237391 86611243 926332873 155855272 186444945 322692196 42034640 403102563 768510630 433174469 748466159 161781991 66547025 555248256 347077776 626829914 206162326 397713047 195864030 765097574 467572985 192010849 585306554 543557353 497765035 48293340 520495653 836207275 265656580 249092066 14730659 230404161 206492192 240549855 229600143 622777541 665785395 245049607 896164903 212710430 632151331 406816051 839075528 576722297 87723550 477545453 578183819 841363094 994600039 227368548 34687128 971088578 491506248 361078148 265631379 226092198 579481575 486330519 487486659 189384898 857978903 47688092 126228356 895451783 427802359 641801534 86281831 754226532 820723354 157178934 678210401 155708384 592714134 670177385 866622316 737476991 130990847 72077632 459381036 338198017 958996828 414806738 639070999 132145717 332834324 376980944 222569447 554196855 581888412 319179253 597194572 620225564 132803823 638995117 763890364 634522253 881316909 799334086 429838712 347590893 55480515 496710404 868560235 67889684 637953027 19180330 40776660 123166944 788193839 164872511 910988803 297317849 826075019 45732936 348626122 50213774 980372147 396567715 219896504 236332187 486621717 457623421 72498619 445400161 128156834 861469108 860947432 564554641 678648359 399187888 948237270 620863077 37777901 953110986 864698528 789433479 782018553 603066604 940356076 625123103 447421139 171212667 777234036 342996160 232756461 488129925 749129120 874660200 393417890 660823736 857412423 171264682 369758367 384925055 63814597 291884333 420617173 22357829 574500952 915631772 267210000 563578883 519480350 594595952 391261479 689895282 622253784 499999112 863121106 273337688 950909094 322241758 157942502 840011900 263862036 57938351 301928836 106640142 401072688 451787161 962000957 272465885 340592347 311913628 196327514 549771833 343598994 483997742 363507346 141299997 744646149 282102136 654789011 433510182 849000918 832202471 676850067 801535459 323196036 998408959 677161133 559985864 90148829 919860341 399177096 724765807 796950515 689088455 357146042 329059429 463026108 823443556 555511497 32988841 240226814 202984817 132414512 356794411 213159401 468174968 491886510 502504920 680458962 568645390 683288561 576645626 851910106 837636184 153218386 133019510 57960946 69089743 965736843 358476388 588301226 336547920 599183273 254834438 909791214 892356153 395518233 723705160 686441417 664080846 6457876 42716488 18489778 445906743 23104740 777594299 651387562 764748076 722639150 792749034 878649552 751317917 703783100 312450897 255123070 53783759 455155864 464606844 271121228 481444112 428455049 646752834 350340771 986030881 131519618 417328728 974789851 914940155 517485055 940871238 893976799 359833788 348089176 921140615 93069204 103529009 727724134 770364041 324204194 760048097 984854393 269177828 6788387 272932023 865278801 560026294 667569848 572184563 619858951 337356424 134255093 397200698 527970457 502833360 539415638 521105027 448471044 968060659 909442986 640360348 686215362 57555554 22814660 290068104 906487488 378707210 444764962 378576987 406811731 122666963 87579801 737470947 797431165 892004960 99684691 523883157 715152687 250030200 754005766 538869536 597918928 204365614 234443219 780064934 806038534 179610322 647697917 392909379 8621864 56651823 252332863 21343725 96021930 265073838 681625238 753339565 174652025 355940993 753926525 152070724 302835964 579004029 12556488 742274482 71965792 440071330 446563645 893973948 20035705 900819361 636217704 310787122 379151908 864369232 171867200 567925690 994635072 53242647 778412794 728882156 742842521 661663671 412327686 634982421 90177600 999231453 766324363 614967305 290120171 847219116 102249508 671586369 712754405 959746340 866928629 263281572 248450957 389647509 832408272 908759423 190303009 176469928 152039320 536520042 590138743 166759730 194141204 406199703 567208581 327130649 193210539 557034466 409785443 508732421 902954349 115402387 996449072 878516095 525092146 283412511 930907701 33699313 294307865 498595929 490402842 346728808 68156917 691502314 891444475 210053463 34148650 152823481 469173641 983453622 728812382 664173865 577368487 281035089 870662449 499097313 329925352 488693752 933509225 443300368 840823038 348911075 294991910 207982944 509604935 742709314 733865468 936210266 611807120 394138958 911768694 488138171 966739687 225118460 796075644 436332154 523197738 446898559 218179293 263987792 198451295 62687710 822938321 287539015 81372003 396666689 744904739 20843691 18847521 192898009 760567616 844198908 881615521 815345754 97032774 533451112 643064012 88514780 635957670 33521582 982772645 329916212 275130341 943485987 944779181 476307303 625713861 42850756 678647814 176864742 595443509 403644594 225672209 96515554 470517054 801483977 564688544 680425702 100161932 161094371 576639044 247484655 772754520 212525953 575739787 376417029 707577182 607212291 356485343 936946861 325750421 57310315 389295573 987686826 950250088 154954177 356592729 547812098 116738165 225539439 811923319 992753744 748114673 894602333 192415751 254048015 236146094 359164193 989257072 932914309 680055552 877810646 996609099 543384347 589584345 983968071 954514580 636549240 900622392 949134750 213198964 757866095 441309651 136135765 355470244 626211106 591594477 847970073 198957348 442651552 135419043 257851633 428232536 320248565 579848622 533507497 671503746 157420426 527093658 490696429 431844174 566679266 445838067 592389998 781471164 91090901 845636266 852040297 342362613 453563925 626202307 822975345 140403731 643417025 170584611 683630234 548401864 416291141 795861400 102074314 411152974 856546882 204318813 275852688 818273803 226143512 454263590 767825138 285089254 300466873 38387017 265812175 866572955 846204020 921540163 905051525 88532604 551919071 476907226 749770904 381628963 252079107 688173755 153514158 647543510 332256166 709048882 313530452 451092599 98599233 353387911 584611495 509482479 180555505 933190698 177820806 446372172 18905492 181495956 993690301 559450251 474836765 90192091 351746616 687292784 680139370 687505520 323136575 996527097 561954269 474946654 129169219 224893726 417336541 205128195 118799579 972377034 828179307 620104533 854869847 837334835 577622456 72208305 232164899 332857154 812087879 404009161 556423955 827673771 713435105 238109303 290662015 713418647 682947311 31393789 792865678 18373911 517598957 642924750 66230482 577431799 715329236 94140459 674085048 733721099 660022747 56048895 545302768 754332718 802971451 101510972 315546354 914588742 505411651 264924877 476691834 34496324 448632203 454660301 224767390 737795772 104672888 659468909 54527876 52550121 138194878 995088191 590510044 465181676 68020690 946684016 546717178 690484786 292256551 889674133 174863457 77020817 62437402 128483627 553133697 631538535 523237361 881830280 920812633 235142964 180132199 332788235 884702681 462398628 726799214 97667305 368487935 263500487 544808141 269984877 756685539 882301662 408388453 109223174 622983025 183531916 815958044 609319264 651046753 429091445 950091200 303554367 308170132 93718683 826238173 446474472 774822006 45727902 457509432 273312808 128861947 501396360 881381381 842297856 901309435 384127961 240154155 957723514 100493481 3759177 415885336 260184708 202945832 764095936 420012745 828448202 624713914 6906075 629274029 39894732 123387977 202459932 270574873 915299951 498421169 926843192 373376861 586171100 98292464 6062476 370536317 790601223 592996511 654144669 802242723 552190257 142991587 201203157 443406688 330218291 438914632 165457991 80211445 812555680 94528727 14666519 591181317 585508340 95987981 126242421 869953895 961738389 680916886 705549299 788409837 836401717 279463292 689749822 964637312 709474487 407240345 233073554 666262895 859514694 544265895 413095607 976558819 516212489 739012157 494711439 304161730 141632812 887947814 634509707 624956648 878290606 914243536 724166146 655336823 906344703 167897543 856964126 304610614 243087985 121024662 508708254 476065751 823558903 582437782 379775310 244083043 512758923 241940109 933947914 710669920 458974022 274850009 278134559 872967140 713604882 602518365 213268009 986161955 558161065 177975313 431577798 401223110 568388935 772180924 150730483 852446473 643526620 749136487 582961003 586153882 881404676 626109199 298262736 311557970 252188661 662964810 494894603 690152312 56727469 615320768 201769320 328041673 829910272 481431224 187974625 670039001 487510561 180569027 444154247 178195143 741531258 579445032 230631475 265587680 623924561 710414583 555138423 404433664 295865682 830725632 737022988 512772586 460128763 593157511 259971952 947937272 978112869 85333443 148582246 89819409 631089094 379267702 696571030 355255979 833918784 348099887 642938245 369541612 673504889 346122056 707819655 647582097 617448380 147507992 1155391 361846624 515160523 188941951 375658330 567963349 850544125 422748843 390657632 224565242 770809473 804655162 327109450 349226938 432608720 642462247 105106895 534868509 304178609 567858946 549127665 630677089 779088381 869948998 618795743 898999076 157866528 3166877 578426193 338792260 73099503 105868527 589222358 202891256 496234859 128705496 873419810 268350241 152732539 167505393 528845652 987909816 850212188 223714238 790901260 95115803 292897096 898371959 638532320 109364766 345277773 170228313 975686017 399584594 321552132 667351436 713811316 39097426 369952448 892859652 794534885 212078540 292677065 926065922 775544440 929500660 721511371 518143510 772845061 94928466 460172243 486776070 104302634 94776378 525123345 537926164 688841391 916309221 648521170 620989728 491297324 348051905 185430497 912265514 783687701 267447845 614566213 332047869 513306482 343655317 782864495 428754576 895671764 235190678 562154508 140860559 321742355 825954512 172519523 901437789 235359045 138328334 917311245 591452305 289975459 549199831 518215070 732153006 434518378 34887404 616990136 845340301 197293374 509716377 470052077 34627313 749946486 830236950 281349591 189744452 778512260 897327679 362979218 525652911 74572875 432182287 96906943 536507933 966888294 606989888 905085797 678031392 875154506 891693829 848132396 285143480 448552232 777555912 19038286 501706898 497335744 213484420 642719048 498853322 415966217 378697345 199558265 722630343 279959337 704167916 668400257 771230094 814684100 764353386 329818785 860814838 897856673 716827979 460061346 498981955 709379613 576340788 910742218 256602741 364149804 607195056 102230629 97849740 507074628 487182877 270145074 300257920 202270004 639788062 89320584 761503487 646625034 430631873 106436066 667320296 311228066 738543286 280613398 828575678 978513181 973575351 104672385 411210384 694014143 863321260 473572234 245288037 835504625 170970971 618754949 912145394 77589350 866838173 5236698 376523178 331533727 696529021 531137923 897733197 399606322 338111338 44923475 232485107 598181167 994657952 710606409 503002426 605344858 864743288 897298532 367180172 293512720 657765172 758242225 10307615 430652588 867207193 642463962 80745183 75855254 579709215 15492154 431736209 17394282 890520435 932536201 154405005 537433788 755621782 697140655 83531146 49919100 155308256 27087807 743329606 116188303 810984099 82788621 989115181 19111105 652020840 621284188 504951769 226027720 799696134 455442923 992919960 418873879 925319276 465548191 255737294 585362027 147547429 632417551 592444884 168719845 307775849 271778730 955764409 721478496 556203699 145609343 3296895 289527660 396959206 115907650 324954537 425198519 827181034 358956307 829366871 96467149 806081075 923642671 966894057 528137732 422082026 134357767 432107203 680897855 403075899 994723779 802105983 475730355 275941203 740244255 689251114 19909071 285942967 258981425 686024390 301448893 841785255 520452636 625976614 969453839 775374778 689791765 114788758 232261164 98977150 866966132 35001110 631916143 182376541 297281049 72110253 768232 649780931 592207025 337761636 61121807 418322991 512678762 207563881 738467313 896502039 423363935 15490072 803822264 876627326 384776765 862711936 389552924 399221701 934146067 65475408 371650937 852472195 311734498 222211775 813753380 712448866 965142395 768051459 689400706 610524745 416493583 487980793 615244265 99528196 561213788 607998498 949004068 971832397 816391047 897576808 537256862 938815446 168762547 413044950 12979223 926560554 388502537 537884964 10611307 582064348 30724766 794141072 586112058 797520892 346355015 243012296 983836284 352623803 628127235 349621857 970460240 153774731 454331276 716731869 882870185 52290234 358428087 858204315 369709310 486833718 23415834 396972111 826787256 923012214 252499898 411358378 479413175 585852940 360993451 782029006 556265758 48058467 670212758 783232430 931832411 293488981 169934786 722213305 712987606 210086690 982663821 315973563 914337946 424337606 204908668 416406478 253825325 70896235 896097267 214508605 619980537 529210697 103075343 193681165 920238030 344287916 970949383 39167536 980759695 491360066 404091343 196513284 74985182 228385635 543710173 934793953 857712558 369267861 177651167 287579090 838359266 904654813 776153817 532400147 178675949 929066815 852824701 351555866 571537365 638022539 62864803 384872434 392940008 117951242 427202542 489979525 972310874 504175032 562509354 18559670 732635089 199923393 765734959 275110475 118492223 17561423 474149642 289797842 169883711 48811219 816078838 355625655 956134732 54988940 733503551 562844744 926580443 924539330 695962882 690489978 997785158 146038314 38315336 46325957 827470478 673485014 714929050 881421086 53237658 940469244 948902168 374333198 205792618 51205255 412632494 818059729 852758620 766439940 567568606 882809328 251032177 158979493 824175936 695420335 668012662 545945148 269036198 262986874 618169669 552784201 709568115 950628176 490924916 392357948 228641283 190249817 660687073 881975669 183006705 173573350 221002808 936836857 670090436 637901551 942717952 769107524 982931729 155678175 46638754 156105732 111434428 36638961 836808767 590940757 404109618 353184229 210191304 284430859 689235161 667259713 199652468 33379419 847486620 961113131 814071587 572525603 504164351 112884782 653350369 72659686 480950217 351014375 874798352 572163000 343563555 968116161 56769582 211065396 263408011 810124052 703547280 807801363 881517086 917859194 857884353 846261857 701988183 428335760 6969180 637793207 800087740 391874776 197617620 360569040 40864312 907813041 336699216 723651951 160777479 888829203 434382665 762916091 937813749 824117527 309327400 702523473 915869882 686223190 406389063 109747962 779151059 732282584 274179667 293738217 292009722 729809216 168326886 791263738 947630960 632046627 609234282 505771855 223805836 864421318 161704195 516925493 164472430 312195020 408239471 852270306 367658682 148932568 353594066 967929427 498713766 666391033 517851873 668926355 827853662 463066952 307933710 150424701 842474550 276228480 542201653 511779307 809285934 401817254 141559182 522551584 788610816 541208848 28282668 270421753 564097779 409702033 911417746 32308210 227822111 858461484 651021944 925764664 464014484 663872660 990321524 752734032 479021109 99467281 385042443 464765549 152033007 904181429 670548836 928899808 726031841 981178363 342464328 115638773 542221951 100599167 499553404 126649491 813032443 457853974 468320650 810885180 379668804 213089967 396832546 157940302 429618696 355734017 81469215 471784991 809784427 682610665 557716250 395507286 393882569 451186649 237906729 330315531 576508107 713858361 475709771 750539625 498046471 152823883 207756133 826002216 344319347 860345380 469840169 955464003 830696110 402178991 712848622 395541435 729007651 5876843 451142381 785295741 802975598 192614887 868702342 749079067 115009959 11822098 281752438 695792662 504517234 38165071 571013052 697533857 832068200 48620188 454047260 259156551 245031458 995473539 968568394 572456398 785664393 25366450 984583587 668662234 695281449 723105650 734609346 767093611 330593150 827271896 277689419 258272631 923133044 386315946 54806489 577299526 813722632 638113966 125689255 628938234 823884575 751103712 976896100 60296473 591518178 610501649 104309849 574285267 962669916 225265015 292798034 767118683 129725116 40309232 203075708 944937313 533139000 245175080 881377209 667474386 821853275 740706097 743338177 906156470 845760125 577878187 919194453 297594744 868661536 730304737 349868325 219178573 195502096 653882373 725269539 910930354 895072294 156293260 482751525 93223165 307751234 507974072 35762498 511237534 21745071 19031752 849610044 543181010 256255960 895946588 226219127 985391527 31075103 125486660 463621914 341915929 933237796 972379483 460125907 986322891 48121907 323772428 702817442 369004454 649237634 412110374 109138151 125458709 855232908 676479705 751286825 229913772 203406932 319534292 656813077 528430081 251417058 890941193 906268183 968422450 490688666 560358458 614337407 804280766 187914174 323518589 459120067 547738789 986882675 531927499 143595243 555991534 375426450 550235279 753738410 361476922 713812598 652875383 507109731 651710670 912532895 550438897 997395260 982002498 522465226 709066037 784980225 681578296 446814208 666004012 552264337 946751158 156824671 321333913 466665191 560263959 933803327 380061938 311531318 984006007 753416185 670594749 125011969 676374284 528819517 2734293 257607912 380801111 138044763 576959939 962851212 13499783 827530551 925355490 417270490 123188385 181856366 551149611 601665137 450800456 156948285 154090920 210364568 315680735 502446036 205345850 148299295 327854383 343600671 636196403 65214633 962739326 973841056 437706226 856501657 656236005 867254909 15469138 178912935 137298245 855861052 281256089 364377700 335487942 645060607 212745471 773535508 636236256 651368764 658304784 513935858 186369607 604052411 176584194 160921549 128546622 37872817 346035586 777027572 848433419 826500428 660765504 182727139 697283534 347451169 943682920 580419005 219857364 857589636 170582376 331030176 813231608 607063322 39305491 511844898 510848217 821737411 195254091 958040493 858297090 985564979 503931394 359392536 480194301 944419824 534516397 664834348 967757693 922217600 263478025 980005404 697913990 295152820 536498777 107759475 646632986 471969362 172435981 794949952 72156502 512551782 603850412 95730653 909957025 393219370 149841279 772094100 662083466 424848653 906807146 870072845 734011408 630795808 521322917 539521969 321291871 796721949 396561401 893722140 307588533 192267266 208162333 334670333 957026064 347951646 960999223 91593173 666695613 179483421 802567848 408750283 465700200 930749599 157462693 851126440 394147065 93285511 185945448 607701256 585262367 255283075 490602866 524974766 930468711 946808250 10528460 640156913 595297519 286656246 602193999 130558253 782622875 866576184 253645268 562504888 344547615 670233613 705947764 943338210 771826738 20307916 627027501 964870655 681992852 498755488 550758613 255335987 526945147 368591252 402661928 446805522 530947676 941028277 813798853 889211118 214135975 350320642 464188877 398242801 670073149 202242888 698429527 208213666 567733462 621687650 776587403 404312020 706658436 223312551 432557394 861652700 601689882 761074520 511856455 416678940 305625009 670313329 970014309 337053303 946147828 651617434 841645290 397054539 592877388 582103475 593242331 359461352 992057740 828132693 425718052 557090547 867760896 700980968 493358466 741528980 111449200 541245064 310438085 376620233 704085063 228578515 988864098 277129085 210683436 427774602 931117660 422328131 585598655 704100081 912014838 947254049 586258665 171222560 434121952 321886279 408389780 581838397 767330391 112360253 625488951 777766320 260321967 590907521 594748204 335558430 171493743 589152631 110211501 270314379 953263216 779163778 802918517 996670740 822272470 388220522 968676754 841276712 610695751 657941277 791656339 594580424 734754733 766800027 734075866 652528196 106149480 431730152 474120352 666572461 581533761 876310366 485634330 109153726 158673537 344500283 635452475 694557827 535455165 206111769 291150232 428391236 507395170 474110441 195126709 55436748 620442889 818360390 636040445 627183312 915747122 482473776 724780035 87017115 314441548 151458332 232002436 71859936 913645051 745611134 189440379 865099913 811820207 465155446 17606851 395729299 982004637 991815625 897150221 539751732 271153996 665915348 150937710 274540003 593663485 360056901 516840014 506861602 364186271 468282182 450927484 894904254 57928545 334955256 883447672 757509795 511238437 802578843 778680235 417883512 345782329 822067647 365356162 749569345 623381411 702103415 741261851 805926128 36683742 758237106 471947771 758439558 291903375 830425922 985184485 114930389 577518882 75642171 803961273 673107043 257525887 314046798 950826680 139537992 112809459 29068014 731961160 87483188 933369812 947857691 757873290 848196899 136189923 338845409 396267567 125191957 441240571 558989675 512905627 101853968 88132786 388984406 342549353 503659621 841840731 907185102 63628374 402037250 222627305 134427747 58375090 755406686 916728343 30049304 971351868 880095220 957448064 451719639 104099184 552443227 329989346 128879975 664032928 87043278 47347608 596599188 218100313 156077145 166784129 263474843 39024625 239878298 390240959 67136541 186666283 843041552 946512338 387804041 230567335 936695050 347463430 589672573 441288747 588143913 787133127 982238767 611722765 86712134 246086875 818415454 567342303 737230578 145597708 465744402 456391628 681515707 266978558 91349034 965100422 792055002 239501397 75783602 465271345 303250059 266670537 151562017 313551201 670313580 736995358 469992911 200036758 749673173 352861117 308439943 941276085 557485438 555566405 610898690 819151798 637859096 280091776 447224767 915265358 905031147 654379731 575661723 688521723 939616659 846595740 333976491 974626391 283864921 504734841 963964675 372335278 219393762 63391649 730587270 523845576 956412454 113640475 261771541 765810778 202822845 443589823 398128815 418218519 487901649 868378323 988564951 275147996 737858211 876641791 944784174 253098430 659544595 278932999 29073651 336686820 708919764 831828570 812003509 334998385 113126849 668033862 960396242 711273474 155115132 557944123 305934450 836174142 130811692 18692596 388675633 17930349 248795839 873983554 19662286 781733608 857099071 235754310 472555601 506198342 340889596 96818263 123695156 531177146 689369595 848197361 871979526 96881410 427201837 60648078 859284565 341327806 554131476 288682558 682290512 482618619 810165925 314115864 111507328 891444959 284909590 540053359 810323797 259692297 142224278 86967573 948653196 88275563 408088060 74287958 884184342 695624278 569613166 322295867 453552085 244947058 837277199 614898232 541506449 258400171 224515577 548033160 437628260 688019484 792996606 354881852 456149887 436627423 767178965 81306226 299914881 976290590 815401666 190015669 642958422 712284570 119186227 5337323 679942834 132094790 958524541 587755840 22418642 446381051 817751844 555438730 415466293 308252991 68954699 412796658 284822756 113943332 400179507 414508961 474254705 115553136 818753892 39802658 788886360 651173363 286453083 82184100 42065732 404630255 849187710 120953824 506925481 278434017 300256900 45730219 274566796 159322858 796745472 633858451 48982100 384286771 495033701 998770674 679167817 215242979 231787695 304734378 85126784 492604473 185950968 943552675 734871476 865292728 36183487 185628580 944166304 475350156 691900623 394128538 757137335 31343498 932095003 142701994 980006135 949266286 813464271 697216662 349086817 868677190 304645371 452872402 671058565 716848011 619174783 383912938 31568988 973745974 418677682 926244999 544801243 584968164 929887170 85839975 472233876 784520685 975273653 974353425 431367274 890357384 257151334 848069672 608631420 608042348 244707480 890090629 953258556 926638045 256770559 909352281 667191669 856537635 824731599 24744408 907026744 483994078 158977100 518086148 221553820 2081862 900399581 328525154 490157289 861278638 864289425 385851063 429129049 452415948 385572893 769843111 250661120 606269586 691146218 644962756 139906019 535343244 100913319 952785009 547725674 808440419 277332719 693245333 714990016 304422522 753584828 686717934 59699392 702219507 674004617 723973437 557638730 636879245 369457413 408516947 91745808 317180905 443560342 711954421 206977101 667826931 654327768 139696363 733039484 90223642 481769421 552898860 536990016 533242963 373758996 669404592 576808648 275230094 904390017 407855031 490911295 582188293 191871916 908869228 857317421 473760314 783097610 533913893 484781267 333672182 293987459 879441686 739609296 912049789 473648389 38468179 793513733 350344546 270543866 233674192 682188830 423961316 372206915 61125947 319341660 283556552 987885913 777935615 499827383 36500304 759922172 619396315 556515048 525470903 937960011 294456482 751280479 699351303 121495356 721653048 611107250 231729461 257038896 91615809 234107609 922594542 138445413 882161575 765836378 871096193 361877567 236892562 829149076 562103594 927849000 986499662 181616671 544701250 172351952 154715719 395362019 402541473 423827346 123062717 356987582 130086283 171873947 229644403 570477156 445446336 838810417 186958477 343622814 906231957 327751245 105828471 568695054 307058292 423239545 148329054 400334790 680980167 461383708 275366065 494974192 111732242 314880634 350373797 297659108 960501516 585483022 557938522 240423592 58562183 950491535 458607315 249281649 404513299 528308023 341182048 848944317 163511537 990092167 595353638 297216119 403040760 96513978 915612481 580035767 950689212 299822853 116226854 194155416 269487667 202711880 545543883 858646686 245477112 495894422 106560340 534067856 229820794 673175717 999005281 465818081 778064612 823141136 921925628 22133661 237623594 556672417 63531332 346468538 146743272 889285666 180429869 125967893 457887704 810377851 741286468 514348397 120306055 854252826 26996621 734472412 990684913 643135647 840313086 999096370 959251500 152418749 166250612 336780174 885856563 933838272 559005808 549487358 312947173 634729069 103967910 390634970 327416988 942531830 342175738 914518117 995216310 752897127 988663972 96846910 289172318 391285898 85170884 816754520 48257496 739724904 847166187 658474418 108980842 111814186 866545947 671080498 971784279 942793970 142225206 835850349 928314762 320485002 664033845 235776423 758763158 413927257 552408874 35514632 568687518 961202128 497030496 558463277 550846607 620472361 174789840 811069681 181178678 313435575 508778633 268220745 664953177 969269057 655463497 202155678 742916581 833864966 353450820 994693277 159787671 179217652 619034655 30668277 578716275 782227765 138158642 747053112 948489717 674673239 477068027 6200621 934682134 873254535 150326431 935497139 650351010 667375321 992285237 391172097 502324466 539626985 958925248 632301559 972812257 355155235 461917732 370853149 663512921 314253617 220370720 922359248 972113539 180054596 964430691 184348296 827374475 633938366 494287690 675712161 898780588 716220517 53837384 279977541 379835901 298454538 294032622 627781051 64014876 15778415 347194549 500651424 123193148 961364478 744006151 859261538 965174071 834322803 343078257 580475354 399604271 814813256 641992639 578685694 681843906 71439283 686316438 925014574 423016005 775751108 876232838 799561840 150181508 761488177 3316367 798859813 385566778 391317433 996612732 63115330 767455302 788096186 222622170 49317223 638825279 418403667 623015239 482243699 428577041 578008219 103303366 851693136 446395885 952283850 761261211 740490812 149764189 825105095 256352362 39121932 736142791 676430421 478797872 141327485 730644805 958538655 601142394 436478214 392364634 127335173 219835126 377226978 320894802 875091310 88005681 533578746 253388727 820593638 160232025 875381146 964524563 596309125 14634652 45332148 936927786 915729263 997969823 360001241 339750080 90035724 390530165 245316777 102584678 356316714 102559153 579628120 863494097 703194907 787038546 684158626 250664673 921279834 743461899 987374026 940975262 424160340 808392539 401430675 538439309 421507231 533696776 910163705 18765716 2965391 766193718 323038886 230771107 412169986 413449038 827371178 257412755 663911836 548788121 126761823 58606959 717904318 213161590 715991544 88626032 610192849 612823479 571169056 34204476 233326376 188507764 875210534 315448764 997247719 589610393 838044584 686452050 279545438 644247335 30406425 701809887 543182521 540850864 850847872 504775873 695458687 797817381 449276815 333798163 879084755 696263186 365213038 110037373 372625661 69213898 966972918 39963083 848932661 475358123 142231627 441298619 763464290 200559694 188445621 373646580 406279974 747707975 535640840 467392585 228084652 253724883 250102174 547564992 92323426 856052097 847850598 557367292 170403532 151777246 993971305 350046465 71065266 429184408 889656307 60827846 464837293 10174058 541773673 918382836 334774656 620520262 305852490 116898474 730568841 609004736 946753412 552011586 265650216 627753913 5165005 18550370 801823837 713335298 131304597 454779013 88587876 28198645 941181971 584722878 804532586 192334971 474114842 554040381 526096364 555996634 312564631 163592621 355764172 784078845 814993504 986398823 519180604 910588726 642778348 179965934 393451875 541753244 892025657 812370960 623263473 804646128 424631922 365332723 831321157 791981767 725207567 33852678 776460983 424350368 656845723 90241946 208670198 109836218 174545185 553131718 871980425 785100042 254921145 368437616 45172670 739579031 276432221 484579384 967649274 338081128 367366775 53180977 349675457 92720424 337048593 603343157 706146998 857655858 107740236 804909013 795802321 372788197 16663639 763375134 693989116 280633675 237298382 857654365 304448696 643591839 961282447 70071431 266447101 168947334 972147876 147972140 746746275 46156277 237331634 627698144 796606309 322777158 308022612 147411591 986045443 737347732 532150868 768048807 675284038 905079808 979510159 484128585 660186072 148808755 298727138 183291032 389728263 408146177 227565994 384359642 848731781 601757800 983833596 933896450 851114222 619413663 559895836 928977044 290571746 40722079 934518086 797115591 964507978 160075553 925736248 277332704 566058485 912200465 21440761 110625926 781684375 82863194 509669315 946691897 27837978 747206464 579316506 865644673 574616776 25150660 883913376 194573738 137038905 816765287 618872088 312438079 117187770 954465253 69636710 729676649 396644739 431946588 426891129 246680876 923640323 556838076 340399325 708128792 38792618 972600683 186310034 788137611 796213994 70125537 409925100 801999280 83680442 342947272 95054072 65721414 552466940 647049378 108576803 209253893 577492228 690402612 338327101 700202147 839578345 128858900 467510011 243829514 858387016 685185930 209004873 679708564 583780452 109813993 621993420 43975211 856335150 270070604 525255594 882602433 206421674 870388337 740607542 273222964 749426267 159508833 979946039 641986511 115423279 875971879 252884996 121381878 319548087 405264740 711160054 698464932 721806675 255697810 662668757 399571175 744547675 835858809 899275122 803984227 602143850 347047396 901447481 399085359 442869015 491864009 80737766 543859648 255934257 876202416 891625343 357990062 559036311 982167762 308366532 949737615 493388666 470759473 867015683 630320686 38977310 727341980 531241888 278156241 138537908 550488791 121875676 454210650 507166138 458994649 274531403 435346584 331323238 535791841 617829359 775494437 946985519 488830934 155169954 6824670 717154720 129344877 440584664 450711230 753751051 836331286 671507610 462683019 107102545 662304849 934189040 478003961 733225934 45334838 308806482 693061651 594734632 628558017 442045834 883878413 241297458 572237609 24446203 950245464 436334828 537549695 506855577 903023317 387349622 751486862 603867794 115538677 433412478 180770129 874160545 613188819 159195915 145455612 74756919 452945142 979197061 540744846 228479323 391608898 755406325 458754521 790046368 567020066 935282193 929461377 682016255 644807481 486653280 764625495 969788887 351742283 724610183 631092082 376546306 747846467 126728810 442565662 951734985 760715893 665745759 317267545 3899263 399111735 959331681 654633120 308277723 379077140 204521905 263747733 752647228 881164672 140281641 514613486 292980794 666397533 614572327 459766804 363181307 848455092 810799530 659676263 91222680 315340644 878451970 437268804 349858951 872688205 480777689 685819590 834470333 156241335 497058536 689380562 133848436 594499518 792452673 973780623 941011502 280122426 151141307 167607067 276286095 441722161 647979600 51032014 662597891 961745707 971473437 219762956 946194154 835028937 888532457 261084329 501532055 888847266 659724417 295058243 785529773 167615007 145768735 153950066 66755642 770888363 346231919 178061156 650543082 214365854 306565727 487299708 185528777 900847249 625645157 861754204 814556920 666359103 138029239 811737484 759198600 190159076 420790082 536454920 934834673 616132442 378992962 441472403 138349334 169492975 544393784 149683310 1538876 836337077 13189785 2201361 418151495 370106043 298284432 65636118 843145964 114612465 206208967 166251665 424887504 30321573 814948573 841564287 862584317 277401450 855383833 240783068 751617392 210818779 833041311 570168564 508957152 964329470 26653586 713045886 112178600 470295243 45124763 708730864 372284158 496894318 862608970 418130880 86114893 101131980 885983811 639571642 476663186 900347163 81682016 644385837 286563512 40117289 935553993 58104421 454803472 412365976 176322660 790392282 57850409 535480680 142560418 677225801 811381064 875023680 105591603 324675068 587655253 51676736 134422378 987111706 918846618 495521507 874097300 504346567 684507750 773814206 866487822 201834699 630004021 187042549 9386928 457887945 448359818 891329193 340825984 305928517 804931399 747238071 690258577 701280685 349379332 871717767 26388048 272707301 320690526 110356522 439574469 258629303 837782035 923252307 595574594 884064145 1686066 425053485 595463316 116752907 949389999 196299618 536962204 956036567 392162683 89520447 317476719 925991993 437097019 510194048 35041956 331237014 234857495 36710453 856127049 336591876 282428391 312077968 682751239 437963982 371728193 447009508 535794446 366426825 293407174 349894143 964627623 181856026 886394593 997407450 405898417 913678548 494968849 373225179 968185365 611475921 864625619 179277605 658138430 673924421 820699027 709764512 440395905 15554294 35777938 771078889 391441984 182917838 954093261 277543086 955941510 756968264 334532368 316268126 581902989 155516987 768289555 414982716 69432826 55103301 283932915 802234428 131690189 177760549 648491822 378054445 241659810 718874263 558738874 228071200 355497984 273485304 844896846 412841655 809275660 824140572 55657061 551309735 196564339 634559688 114824430 673412602 155959120 258135387 492356444 877414174 580947826 107889221 205103447 158706770 413426027 695253049 538169587 221122223 893669087 185367324 386822399 758573082 114759072 389415488 643021208 803675974 137895048 807301560 251429999 281929795 782729620 64208013 459212850 967341109 347728195 715969407 623535796 789993497 673566244 451816323 828100037 118086996 576814132 446247984 992171739 820140709 568743676 792324753 104058384 84914633 300713723 12211799 981494901 384812540 806648446 255246374 451815898 887496311 872313216 665221290 16145442 937051556 238864304 547931360 516327487 47687281 480798082 346150616 896288255 581000731 495691799 699564794 820871257 546919675 121341832 815064336 486535360 562121416 840610270 920942653 365100293 178964147 566783676 734010318 333526615 517016201 900687671 951604169 113629854 659354519 573282375 546945894 514938969 907248194 128387514 158811170 602432717 310477224 418532113 40135970 425577322 854251322 63689991 668021699 384163081 35852921 314525416 331264284 714135341 479961976 619627494 421280160 923556084 97285650 902805529 947161014 583345579 85011973 836752062 612451064 476303479 70027365 844395692 386148064 37415348 761703096 293669697 551269465 549303484 366168465 757838749 22468433 40240736 509124774 308328979 821352666 774389824 991719988 371468642 915244639 244287478 394837785 403207834 648960595 817184126 545124766 950978465 924469555 947753187 524144087 91137539 582203136 762962424 659137199 734606272 148549517 732768458 40400860 613654922 221228132 274168840 759090287 227494984 776326570 794846638 606816501 750817963 451692893 431509860 437634422 324149646 409483763 313389167 422450299 587366453 440247529 183443186 701721707 551929481 785606572 951800015 49342139 35630403 98271032 358988967 94468639 766132486 300294001 390834475 196027612 858176849 988463983 556015224 15643892 252504269 574869950 938017670 534559884 383968541 473728598 133053093 623030157 171916644 752569071 17035677 604975437 311656892 481899231 905039514 847940889 857050965 800152315 645261879 155230 493689089 134120930 325829746 387592285 661431125 72786893 95943423 230969045 849493106 758335823 443870810 645742840 911176402 729862271 909793610 728073450 567860660 174918607 759135203 784099197 987643932 695116872 692080416 491821909 529102060 415493869 495566055 323641192 109636448 313432989 298360687 737064747 102999822 344215253 9140529 570018418 838894591 839476721 130531215 370810473 323443901 64497192 724910206 353260250 679018838 556154799 618780390 103180380 658307122 299081655 95694207 280886958 558067837 921047362 570766145 729901510 812701712 980167617 321256023 25851138 370940834 873293846 661398580 423749649 976330174 325347428 638289601 589794693 566207110 661083197 594462690 557231923 38991404 882743713 927798722 829875997 878961678 129446407 531597095 768963925 158644303 222684259 524931314 73217396 638568756 381127679 927358978 285902558 380707305 69888311 877268054 909516346 5442617 259371139 131411754 92823320 561248744 535159144 293907817 523047462 277849627 624465747 316412512 349220827 941111238 419567430 688916079 822183470 121551295 981878439 647481400 890681692 800629456 541111390 404025731 356132469 64993159 976868239 758598059 821185048 434980591 694677497 269513574 150319836 725257893 209454126 106026426 182339384 218230478 10099452 420945595 514239308 923693036 413625467 941936012 701202585 382173319 667427666 847408216 960750018 271412286 663220804 339750740 969824045 739264774 731234963 191545858 125569925 893215818 324554723 68244382 546996933 376646674 87381970 668151242 787740052 292387282 830098 424661235 119604609 781528235 589515311 195227722 124557160 767602438 375729895 967543079 172436592 943203207 435010279 788054773 593676964 108221914 775603655 791557398 985396859 357312693 525542573 29294795 93214352 431007985 356458270 137233659 463326543 907736409 352399460 160510469 646034657 354338767 240640991 773335326 835604918 695318218 714274134 583660132 548868049 357217178 682568400 53487246 598405862 435623132 212604881 829296918 745775933 886250293 343001688 134457649 72083689 908410 735672721 754871135 294974725 621994450 999712648 83030592 137497105 571515413 855427322 971256218 263447394 355523356 267483498 683348504 63388141 365148992 227472190 393547270 84620002 279160635 710785856 624330281 782653091 56654958 649597926 653200560 804790721 979760578 228884408 212632615 354377128 546004639 759126650 773496134 705736666 41904438 792966339 116259082 222762862 920617446 152450142 806218112 664958025 45072940 690733826 727454364 281925245 574063280 223556948 262992796 943711896 679170456 781684868 552291161 607588372 722382207 829428753 927083480 26460111 947520473 790392934 485915495 977730956 138108314 422388301 579589526 211423300 288638661 78112669 527201181 724601958 406108358 850233469 438262764 147679202 102475476 994217322 48984064 437938869 247765997 609680645 502267745 448309012 807548184 611334938 704059753 677878174 622004281 484288079 142133926 199586447 886010463 107903049 778255526 647421129 541475918 623610914 853649165 34889647 505439679 876198750 794710162 434108931 591591522 565653023 277328695 773805141 844528900 886539377 486765427 698635620 232834623 54647258 615774433 313068804 203085433 332115814 200461490 367255194 995366006 718448075 58774199 632499986 786153588 442339640 391993504 744477280 276720073 947454963 594881130 612372016 976955041 608762409 291608050 62241791 872000895 652190416 4735684 416650279 870005828 269847365 914651396 456221480 378097947 712750088 996905318 767340571 142758485 908189008 154141438 321257480 54315596 929344193 171162508 310369817 179964077 818731102 522954129 99583674 944735078 671714681 8562378 47383792 628128890 213355482 244145657 82239918 256684017 818636209 856943355 620035483 424745681 968554249 385761966 738077689 254758195 942910996 406755580 769551352 968243110 763643502 725188277 281665084 156088327 469657477 502972650 128921426 498583922 302613481 616428821 219539514 997027937 116238632 283550719 263564612 621584575 861138220 752418413 844455882 576038452 989316488 665761848 524409574 153007426 403170020 943502296 755410114 144093927 490240673 488105782 411119812 48632286 497779169 832559520 583892772 953918051 910225344 968749889 816929700 47005978 300727591 608351425 207199983 701906318 814491791 551819077 484648020 117662444 909827000 212596392 236355134 940664311 474457236 953348666 645174769 376974762 828771000 556268816 913201783 176954184 701759968 838859506 668060927 906126069 14097688 377430758 421477805 494667864 493800923 923757990 239442219 673289412 656277537 561420140 496385555 117923911 980100969 807301900 734162270 908900042 330640456 178744671 286937137 868987921 782809658 410862256 399247355 339842976 446212039 689730880 568884051 776259137 250886980 192046028 298927016 667892198 12753937 906586019 270426169 396690588 888776955 942852857 746345476 517516983 522442316 260363451 436796883 852001520 367704797 299779199 82726171 858476729 599004773 98927108 564631696 477014294 63121648 480330554 888011350 211313353 313493286 280689297 285388349 568332956 348809122 552549441 242050884 478993377 685883672 183753768 407208236 107440539 188364267 806844813 653728246 894745751 718541486 340393052 914054494 80801961 323373105 603698983 866056478 501247413 247506307 82088287 626313462 251009017 283943650 41859310 88541877 701529337 524447950 22674733 337810468 162922043 932287297 108013519 386622749 805984573 287345951 410443929 184972454 428359038 936674176 655342165 531559103 255630643 950692153 356245586 754815200 560658577 567929399 296306832 219070007 177273066 286108733 72526782 933100313 627320512 7095218 140310492 356594561 9717241 578530680 651031698 69720998 213702621 114128535 259585525 516304121 512048998 951618755 145412156 444766365 815608033 356601630 546491352 659336617 581083935 774124094 821208025 256809878 50940149 763892416 50230667 925153415 172158468 420307342 404333979 48747002 688541517 650372006 105418701 309842751 658464131 686628485 692599939 171990615 155493227 223778147 504501776 64226393 784655359 625213647 258942249 581394019 407322283 348594785 499844259 135190529 544625146 657484276 143857779 688266886 173563246 29790940 702304914 861483972 145198434 752039311 345187726 673272623 54229586 276355891 483706052 213692233 116976913 696886791 642706727 954679110 551823329 510432227 927465078 140602705 760828180 989375377 602928400 836143757 590905775 471856733 951673262 889538730 317370177 502689923 740052578 719076281 197735578 794273138 140111766 146012449 779114945 814407575 265873145 993508050 679163122 979824114 715731205 934880575 26914626 258282666 386788144 791121574 108261000 746230184 540278049 86994192 274236163 818413355 281205413 41556673 888554361 8636976 575633845 147617214 997333540 909971606 742608902 423234481 824206703 57884111 912367413 783205846 667878748 644408016 635556288 21748333 915935882 995068271 914220922 102148730 972524514 525730180 418452125 916700876 546772593 231100313 670938676 886963160 683689628 64152151 652604201 320281093 706749752 565441283 328495440 556604760 974313679 296319067 586756781 25971518 892947373 374210081 275935656 813090578 13461661 925701508 483313728 114891290 650340568 553506443 240592315 395796792 396859339 132832845 326697874 276088616 466153554 300723786 701952851 42965567 163622045 522525461 358286297 815934676 456695935 780579864 265168969 699792735 791078026 673994631 457281792 943771127 181648489 214412695 810357289 109254340 656548622 919078831 532430829 138240994 383361626 476370268 42653542 385086278 55847012 178323251 740539990 404522223 351565020 372508838 894858774 56564464 695977586 234195459 400214622 135267481 661722315 520407826 729958804 26065412 596194670 873028254 118955348 367749609 987528083 307486678 699489250 277364225 756626386 10917490 111655937 686727029 408295600 198125086 391502568 123639864 735497444 803606055 16561128 281681859 388697412 991316442 976465877 145540221 256984425 585109814 649245958 210184185 641133213 830319168 33923392 717793671 101873072 439153138 527965950 971078013 80409789 269048853 412778091 427759172 319415493 566886637 153539858 592006845 507226501 676602473 457473026 48797435 328440565 239610268 442195779 234662987 785034564 94827886 594209438 745098865 556672857 574693113 290992969 431108004 32768509 341130464 929492638 601725450 837754255 549878133 950911779 434839542 609494576 978774775 373486976 910773341 843436019 865794222 267204816 722553711 433516814 67729031 597183062 385409094 855785494 664131416 632763920 21404661 855674760 882728002 510682270 567457160 449081033 847534268 501635801 929260142 937476180 919277044 386797508 99979960 465382695 787905822 775678828 951106377 714641424 163230644 968202291 245818149 738079188 806861664 789705421 711209632 946633825 428924253 765334975 459574862 255605122 258718987 458945775 987930735 134218508 134701458 18687156 797051187 935683467 564214176 180615213 399904098 466046400 238575534 462563763 212679724 916690710 994245464 815465204 528541268 56063578 3557991 338006282 372281072 761837718 402876452 201002653 862270051 940591817 573598716 396906042 52570123 967775784 201176326 47626600 633827187 983701389 278378345 853145743 670814947 114695138 984397830 676958971 75521986 911453179 45219804 460906457 930762616 948775400 317800115 349369066 92449464 252327007 806940273 143687063 157280366 304955323 767922114 896051926 293874906 205266329 734110076 766104383 565965154 987361149 470343028 252480029 846811557 955516064 318754651 642385362 93562448 883897708 443317153 138162386 218955374 800503995 964078227 256021492 853811906 453468064 930548125 817130158 704339175 706940007 204239053 363560241 791039587 739535952 121550048 240933116 591204471 106896878 791106814 612197765 461219077 583317757 876376946 475678129 596451258 669695936 978646321 665402145 79033321 535556095 667858958 740762681 997802613 589616538 267435395 30141561 688031239 568834392 348518940 950382145 284341910 856246703 624797747 393499865 953508666 596086934 278864888 669530193 686950977 502456856 810303406 243425190 848315326 595539100 891093489 788048780 847519246 246422030 777088326 463855494 741272962 432616919 47753681 978254997 187368831 469780926 139332811 909116998 251656787 226691026 352048675 320299671 709389407 803044517 533047654 785943875 653050672 648540869 762301463 568429661 223217376 280936020 892406940 820574506 942232496 833892570 152559108 850020970 162457908 533223095 770116229 77617476 14970731 670693234 602588655 59994737 11604125 736536994 362755832 146647512 14921133 476972111 690894680 694974518 777694413 173725583 645836833 637566234 782385091 14182243 413236174 691670888 664401421 391217415 995133961 346596194 56095608 854566204 988938185 423420225 565710001 781368357 869427957 228836846 153189239 698356206 396373825 89972975 170216452 768521828 438827895 533298943 867258220 102240725 469553052 399225071 910153110 520148787 280725143 211676127 983968169 997225137 644675090 524828714 929334424 936206693 561257090 686050114 172225813 927851974 250629196 486900872 833393744 881181484 572048877 13208120 789628747 682127214 686316178 975679233 254604081 892432620 845018528 383891544 918725126 417330696 545907381 327623327 744968311 205587982 411579666 139801378 891328191 217533353 714276271 185710447 279097558 532729740 475122592 97197244 698882530 443294335 672602670 767194473 485252667 676619404 138987233 904386064 32665433 79302304 839653053 111637687 159736935 895819128 259207060 654593549 132397523 265535858 923343661 791826596 307581403 436039444 902296665 279607692 610365772 489241517 268384540 131473100 957586285 587054438 702376642 338134293 597805174 792623753 50970019 6816611 624882444 812476936 966312879 231811978 886565260 368196460 833201936 406438112 217569798 547448383 544254674 713895232 676168857 75820706 5457552 221590751 788941714 414178119 795634268 891872785 243560592 377806488 712421824 560148235 997272023 129683304 973803662 660459456 369764088 659571568 327810484 79687647 102347257 535707250 949149388 829452597 599330229 608057590 308295826 285315209 849757660 450157884 551149373 749882481 923148754 645671615 399087451 789930069 883026070 835867598 855833506 641263685 598045409 209614565 13541715 586727727 428888105 605239902 550118429 923430953 807554904 907259829 812791123 367142356 709600236 878778213 885314791 249458831 629584315 874646889 638173858 416372304 888506356 22741916 879366337 676860153 367292842 529894170 720746974 347011164 262614143 787522 21115406 73677263 983638199 758565252 312025126 478040892 50808427 99548915 917698769 627469688 183347430 332636732 746213072 756795733 752602256 648297412 745432102 52247959 515206408 205725779 128151952 965489674 217618898 625361304 710572729 842400266 945111726 276489644 940477737 832698956 546087101 621893995 980205468 953432382 732675612 772657297 588137137 658731052 343681411 696927254 388482778 962022750 814268843 31429998 527625376 984061579 43672105 995102369 595012052 779802666 580305238 858637997 744343369 93637887 147016266 603326394 903333926 775057983 290621934 268621651 358916306 492781635 551762755 134408008 594142885 368725392 384553999 525920090 618714509 304642050 492278372 454788580 1502605 509802933 111920404 975394677 516431703 98801897 901333295 402056427 399936166 8312678 976572651 688294264 904277604 518690371 862256693 832381069 297077965 385581423 881536394 641569565 563805882 231202103 453240189 841285084 234564638 3845740 994488476 496458581 559363063 639152278 787259742 576877644 102876578 786296549 173520284 462186191 768541078 826623339 415051454 507035534 587979265 941882127 50839284 491777772 219373613 387625274 43506127 203003723 231026602 230429519 467523693 967068122 704213020 175000547 741229571 9951951 121549572 343730783 616705155 244466767 163337629 50539914 946892857 69805210 619853246 822381489 956967546 399757187 135986001 505476093 235550042 937995279 725429056 120715013 301644960 215720501 311514490 958150601 530463625 896467667 859918275 255975939 512473611 788277837 47706903 949648352 516173514 87627245 472002073 589495732 528546824 673912157 634685026 992517217 232313500 344758816 239037599 983879478 753863303 108957199 334820948 653139756 19045400 792756874 136138920 553725185 618046528 592265276 385954666 139987719 900413899 420751407 777479778 161308317 767737928 456731355 247121652 800932637 829704973 704505427 461535999 224136433 787719658 289998517 279009044 447291365 842520847 483237127 754748424 552514351 365154485 621466073 4114293 975517354 395496926 158766101 173010309 227526392 748846811 562469515 195924458 500587956 37131151 73790529 752386486 245807913 426942708 573436134 878583615 383605703 715361823 965379230 406377616 121649786 446525044 347697035 487118368 155625996 5814155 733179069 781263818 447488685 803302901 262656521 274254760 487554268 653030581 675811124 504077797 397508221 435005531 785127433 31554859 18713514 495527781 70052201 42039491 771350209 987896761 570611550 475029611 653483548 982053172 111320840 376677085 746501327 201447378 850081400 789338183 267908113 648326008 898672874 42332450 416263985 409425387 677879895 177847117 301451908 51443162 268163803 177273820 652142985 646888759 104798800 162974661 980678247 41247632 651341164 196424852 131255398 881721728 98985511 478534973 471778190 245250350 463791166 22830422 353541242 745802890 548949162 564406202 328253886 112520376 555249566 201019016 592116462 348171641 221183393 184544910 325333328 957974229 771299978 668748779 283658252 612227439 560843485 113288025 774492136 910524315 134909825 775027518 473526889 697649934 822458477 477057443 327958018 681860413 152510192 278067046 800501583 560275191 610479292 890834274 804536726 218940704 151916750 559611272 239417195 402775283 839866321 905330544 22191885 447994334 499786045 169815662 832034597 679572672 62913338 50196772 696464710 267746218 608621087 139701844 123235840 651742155 59067061 804434533 734691263 5053905 500933865 820472661 549667613 780274262 907362006 383301132 136696102 374184968 155669174 794991888 143462633 237747929 39560858 946116186 517654891 984883815 339187363 282801561 224608916 614878341 59873049 214934416 889066877 860910131 391120556 162954917 550258374 376164772 202131045 538492784 366495500 614020606 752997098 203146813 771061921 143147807 130934254 679044486 294057231 24588223 64986355 137231005 975408053 525360806 976983607 353626121 160640423 354435337 75584527 232667362 809015770 438341656 839359052 873827308 633833404 303183969 18258326 658233448 172889301 317835871 40585034 211494471 405919915 203756540 153506092 97398937 273994550 867347224 107013745 675525950 204133901 303741991 259072413 375326528 834277246 722271140 690742244 405352371 205009735 132142525 593856438 552348255 40922396 973212301 973350197 441819697 517619207 179861619 706961223 691779914 487550265 624861174 563080703 255405493 960313655 114671924 962278584 793229161 344348285 860526466 95736096 540251645 66179759 658660256 102039546 467323330 313400938 416909979 648645292 582327466 95687139 659333390 752336736 449994727 124046631 801436667 284480267 341397909 943492524 491877690 185797901 362940291 875011310 914987137 135813523 759857595 331038252 848921826 861573556 280030232 774649510 596182682 718496088 537813917 388041938 87381994 763387532 830024920 17895726 262982097 32869994 639964583 459682094 794475791 940645275 338001381 150426488 557052195 143686219 296737487 709709202 132601226 852882130 614289336 382515326 673100001 53410871 773752509 110259315 552083157 149018238 384060809 894615035 266286693 571680150 566125157 855253410 59931355 694708812 249528705 503707645 137617299 407525313 846713405 450486800 843815709 827310272 461053922 70843515 135712356 828175880 713533283 577608213 247192544 689801660 722708575 347688986 409923327 900083034 987105301 768339187 670967574 561742970 207371594 834221132 874585621 188667787 676805461 194070463 964179545 217018642 878017010 199848317 962071193 35023626 573213198 396929337 542737585 121648724 335905329 978050402 534629865 677997504 882968185 14363802 31652609 902207351 156728019 702032700 957910513 448536046 608441381 863005408 200513674 569003153 746672198 779860929 132242511 765224425 388918631 118251005 446669278 534689622 999696618 39646521 537261231 251291350 857073790 589850704 326201725 648605481 242709243 420557172 834774191 78735427 364438187 877867345 119009764 514335558 845361515 275215889 513922253 964785968 782356114 509782110 129279910 591157508 989345338 820014686 395617965 354202580 245132348 489160084 485296435 283901663 235081636 336225829 60345079 581917243 821094482 700140244 286006409 506787983 213614673 262503438 115073497 807659270 476476362 698790941 62357303 756406611 611952869 483891671 17641972 832759949 190852004 87297685 694525815 636870775 954413471 331151406 529067226 728586417 258603363 772606929 990965967 505098389 443482494 519242498 216797072 961794981 311335668 48759575 169425914 277379753 448811380 769130239 176088327 963520244 793064002 591011778 610532531 617149301 29766888 223869171 401340117 720808564 409971967 788449890 228676431 929005378 177739893 936113696 799372613 563043689 568594582 233593117 486215952 791806977 799740067 373045053 732244714 983665536 229743076 913957432 284928383 672940000 803548350 985737035 665712653 447605859 589507617 963891904 502659132 832587653 309828746 103036438 78313592 602835766 414446977 599186390 537692266 465288442 900816338 506168860 972325132 458935288 173084427 156337499 266183178 986873101 251193069 755163004 519783187 354216198 287222063 191874202 819564698 555182634 484216834 117605957 449001310 901811803 272790965 331420603 535362236 324523111 591482939 719634634 365452694 882549001 814002264 804118308 445084678 765891830 841278531 500466287 184515054 899301263 702303443 858219864 163480991 442317028 392746052 19312166 803544047 34750715 203252666 665600213 696116491 579221955 36350751 199624677 834368440 36320064 285488227 327643212 192588284 445640468 353403087 957034241 320179307 881846351 859373206 762679664 855338135 582860766 343769736 192560002 648422775 808760421 14736558 234614013 117766386 27458111 849240398 443036663 42760802 846557653 886551587 672912970 448439628 122807614 416282667 265659046 115123214 228269903 51977159 14059510 61350322 527942235 182198726 171527921 672093399 929687067 229202150 174317644 961123024 710008826 179525306 814189209 163590510 806262170 419693135 348799017 866391113 81448940 881907724 502317076 511690294 448924369 814015235 319273694 787165085 1287984 255805149 713333508 239453780 384976781 189639119 343018881 608074876 631147213 767002660 72399933 37869966 331213690 412380234 110795488 370301001 617054869 331788970 779574660 601371998 661464592 916181846 111465254 765341281 873823230 405191358 963962067 771318438 871911703 609228744 268617619 877917029 83609442 707839380 295566704 594731675 256900597 116430675 828223689 707875805 60082246 182365041 833944462 519609843 901917700 302814600 490774453 884016671 19759171 957591094 139892051 549086033 471184199 80364420 328091940 174665091 551145058 505443936 25215959 217189740 787795310 833571331 375656759 554995317 908208198 913195421 668812699 640282983 85067581 529528159 583092272 247902125 451137965 502936074 994138742 244483220 291294995 182823039 964778686 849768918 796794938 931935894 731314537 396887774 390222192 582213939 655453328 272670078 923751471 232102269 809529188 36511500 389486897 986922536 544072979 870431676 677839228 121176781 356808361 457085499 898740230 95823836 54542204 382754044 553186007 908141827 927409362 364689971 464021438 34214472 941608005 377290153 718940783 313412465 55622237 583587447 577700475 52659564 910691255 225065929 838942268 974471703 246723797 948329398 804786439 285768270 387624363 644316624 815440645 852101179 526944004 303494673 791037199 259493418 875549939 660210253 41929755 315441913 913229002 510133313 554989914 16319321 591796322 870435162 199890851 464082165 152542903 130648639 668985891 545170440 660103234 983601823 82552673 235398199 465271530 590580838 429891495 225015654 576304724 479792676 21024762 203870752 549295993 172251786 816543885 898008701 568848071 780909357 925577634 303523610 428549647 40379775 774653818 601278259 629720831 768018063 28471761 933164225 764871439 782692928 526439147 333174096 414574719 248250301 748688989 485893128 595546461 562578606 199233930 580829165 458956562 136367925 471687362 152152617 401206621 915128770 355805051 302320903 398528423 70380002 26391186 894209104 920142563 777482203 105400535 362484969 475261558 841542766 324175035 233394431 672749997 12202637 173067524 412866682 373413757 183573133 3448606 7429488 749367101 513772357 977576749 203313369 311105385 632278807 94840301 558645966 806953397 474244712 353445757 717889683 739375759 257234225 126210367 136620650 420904204 492527815 649449565 169773472 953944973 522471014 171687130 730617428 649295701 300706901 333975152 729256793 769564229 213457042 310054118 684544508 68262937 47361655 178876226 792306020 286829738 861077115 549637287 67365330 370486049 290816853 295591268 884246948 42634608 771805515 172953946 903494610 52889638 596203759 181837549 416248489 898648726 249175691 587631031 764973157 989011427 94619121 678894621 906368929 783255454 268958658 710740458 658188888 403373460 47860654 102128738 108406994 958850466 5052694 516177503 536074118 368151251 276775090 855482519 53169797 924490228 316986933 986455735 566364391 934640162 32915170 872055629 149047401 531383259 726904664 865972448 462581026 876608087 220929612 2289879 571148742 189145869 907666535 204523747 810036573 730176674 627347284 537151482 961272117 382600054 365380787 733556870 551591144 880111796 295705157 460104697 233057745 29796097 53018588 62148103 37516826 431241117 565683713 905999914 916822676 375432597 730120407 72636057 118983197 421137403 616092483 200869347 14736583 36200529 526410133 298966924 350106385 80514086 808303331 75027474 276962312 594753240 681694220 415807905 161526595 229208285 386963248 162371770 588357822 453941086 21189734 779199899 991493396 424070997 64428096 454295843 859434211 663378631 460016910 958812802 510433760 665722749 358425527 906681626 979944838 835964273 756469735 296864883 973947839 683035873 721582470 584664069 476999447 451574780 189335584 397384436 505862472 126439206 481804637 64383873 486345433 574674419 239849552 772986444 566500293 161013301 475306504 431625498 856036242 471308804 421713226 659324709 322688728 18987566 472077619 186088021 362940493 586754014 133086269 189394093 653758168 402440499 58845629 327131273 163070022 961837550 526598060 353250962 635717575 359635174 602302907 304113565 472670994 305020501 390126437 561095183 533594364 629780676 894625790 792173698 728385155 789955323 107504491 386134968 743040948 845695188 710326793 73772238 532963039 871474657 277210467 274873772 344031608 105978556 186125007 581933689 124059526 620560715 785802808 454547371 163638320 739751178 137624272 635003589 937630178 485618758 132440830 443204260 696488192 447979787 935059521 988335966 865955641 392982056 72873879 172571064 873775616 758357727 145749831 528221491 445723746 919566685 934021645 105881701 446866379 975491798 612334649 319071440 462422995 500857147 989403365 212537359 790691756 530763639 804418872 221584270 627557088 444917396 54076038 21848666 259127288 549615093 310162685 20754501 736878143 450255219 594267318 267905960 318226368 782137701 340241546 567703328 514473303 642028884 130603913 723988629 177229767 770780613 840146360 555735698 268450441 342227693 510648322 224745149 432586848 621473849 399367998 885327104 969612432 176015771 867873640 481120463 819097369 166595541 929638353 51822092 934750138 336198030 904212151 161588055 225681516 961423869 881619060 237748811 30237247 632458676 405441201 999810345 952846434 892342797 492638195 386902333 968215345 510755771 787614685 535810189 446952590 784592886 724392336 460005257 304552997 899426445 277077759 17502938 798505284 213113053 453303393 116920848 457544626 296721475 708196399 909252888 418275180 693609917 165330801 93492337 944080574 612337934 718022376 683975328 653698948 188412069 946064765 838794648 671909439 880164784 33319661 854033343 544880522 822470512 339761191 984348114 534812139 767083295 875460843 939147030 510798774 798356589 461084263 829583457 996725367 253125821 763601838 776778912 971862228 422054385 652703099 130991239 502322638 95574866 690846389 197599665 977182072 161704020 260891225 836906564 518433344 353334622 902433422 596776537 709286348 929890453 445695501 695796851 270967291 180193706 696148297 105475674 38820936 174833896 80419080 641207770 634437730 223305782 739900105 751309145 168223919 148515594 542499683 211982499 219321734 746641110 946679244 235772731 54524235 836073451 769076000 985238463 369599650 731410708 106277420 910327217 153679760 127620649 866034301 751284712 497422810 620335522 591214650 658168824 674712346 719491486 697291287 387059908 441338848 128872335 930811952 346776922 585224682 904420494 43407242 498876717 213995720 309990624 624998871 10602873 430311504 510060659 388863043 234081351 708782658 122782386 359283128 106680855 740809639 145360135 87577505 703375943 851824838 778242620 642890688 54992732 564667371 69039604 457281038 512815301 936913699 187007743 457243720 659011499 324166441 740057750 866184161 590282935 598827759 26266994 265091543 82588869 163104771 106869075 376949142 85169552 918218870 984220491 274308101 677721980 592547477 762523498 782908612 138715256 614492411 4225301 591015648 42103889 946715612 326492759 36440694 875152303 625029301 451312895 16162918 203483809 613620049 554709561 774335354 863602481 153616096 874775353 588590733 745223979 217796898 321455305 142100645 630255837 410022836 670944014 5263655 318925084 250934343 200504569 945105754 803373798 159773000 124622522 554576685 809262427 72810882 998162026 973212962 259079985 99319553 263288444 960750833 758284267 259612427 54622266 707445818 953402397 245210493 693620461 625547427 46623667 864722090 896804479 395557680 311309837 482922573 238625102 637108649 518422643 460658379 276705680 444220851 444404431 926463260 411798658 124154624 565491726 237361820 124315734 594738612 313851505 756349500 421405413 104872428 681166844 348290958 145433134 866378424 44798082 862954214 511876067 911399432 326241425 600271617 100060237 360053475 457824550 286707070 799325251 992821591 869622268 74122206 276781102 89212939 981766431 742738874 260523513 462869153 395397202 80594783 939401991 773871046 113335869 834134297 652758333 387480391 780759 879409277 725710560 197936087 859629890 400481779 319172681 92178918 977819082 193169451 517889143 801108777 122236084 426535057 502441823 145752713 577268182 708768846 271681300 824879927 658042250 74132239 288773105 156169305 758857249 130377429 381272592 757867876 817025372 942473237 68173829 630929948 197502465 416998137 147191688 58442283 131499945 861260414 550989599 282565812 319585707 446643195 390829756 646995601 989055295 663339091 618841423 679920393 920349866 94922404 427595526 202002209 699963620 518321661 71784191 634893598 588667942 237599592 250208387 62216512 606509921 238931316 33979513 398465947 309268784 667780482 301289910 352515491 418356887 596160095 51375922 130235808 15781860 965360606 158215589 989644899 502506933 849387215 971249271 908907215 528730395 597720865 132290220 687844337 771880207 670237516 32648837 121697544 952665994 46274381 15432015 415480587 895523950 515638737 365937048 43364152 467788933 401335112 69865271 184156599 627062713 508443632 771438361 290552121 183871863 676591754 2314999 514282083 146551900 581271394 178292267 682375727 976643813 70632317 713747150 169352874 314574293 771099192 244419597 652801792 536366539 275513372 757859655 677505459 83515032 187526661 22209437 116638807 508629745 355514911 740302188 580554256 573364010 465804751 934002230 591474958 121573805 539525204 289460871 682256244 230884431 536951213 524435208 50026930 919511195 472418072 949214339 763291086 761578638 305429863 594596742 884063574 224934893 964072687 932356735 153725340 240396529 327639222 963860226 542440143 165072336 35938853 634486379 822269807 4489239 975971197 66225247 112242264 321836733 87959145 74219975 147230518 686271805 769588273 781731221 224417358 865089180 756454506 903177362 3602836 303151206 352541913 78802401 10237614 106192781 268499242 873204922 814048417 50594380 88262813 26645809 240529519 208212815 774237570 844433738 566873331 733302501 467206419 365900359 436238517 127239788 562352477 586136243 725929578 465588996 905639498 730641200 857182403 290919562 155713148 422918311 32387727 897144530 921456201 562849361 202386610 501580986 17079382 202449956 440190471 453955409 110143434 461914348 307810843 153223497 554369227 559781795 618993142 114275767 857199900 324537583 324452248 95847543 905261017 204155270 329972099 896310931 602622612 519438683 844165982 892350056 715541675 582377811 47267807 742385154 936371444 509188267 782240640 704334748 149900249 746799488 912495793 30238805 130885806 595106945 484515211 904163629 10100036 232913479 965903390 355181979 452176335 742738366 854713741 570499272 252498504 82839377 51884003 454921771 39854618 807963988 293031535 871411392 247680935 863355238 128040821 396181595 796854169 584822158 630314289 88686846 821250841 138354942 210367420 986491787 90493839 7178191 579902554 945695397 613101982 945267848 753287516 165823850 270724783 663578176 826529690 220060241 19014569 304364063 601682221 521793155 139302921 722642172 624719340 157195522 993723641 526889127 302350300 729281593 365160857 74126966 432635547 376288059 846467134 197705390 318196232 139985837 351220099 749156396 922026464 636831513 376160190 441750477 311576808 713361803 178974218 173911505 540633050 919706477 175182228 793506023 161800102 807470368 279716090 403492007 309474991 805994700 486656587 129298575 804443512 755381222 860491186 234721817 946207184 11762704 803240818 513074758 903592890 272882135 411242018 519926285 843153348 823503145 707443378 79999933 429852822 124885160 972698677 993108416 294995355 810707541 282920106 101385799 597084811 714793266 286669912 418555882 736690272 730639311 917237991 214672406 180445764 363515057 541859142 651327884 594443750 646647257 921477823 809819698 272831900 358042540 769271625 954953908 686463686 763254280 32678390 650673958 737897594 683166588 20276279 86869887 170926620 670645532 931291840 403084934 623481230 613686721 137641256 515112533 217639735 79079893 224921980 517041429 246319698 75769171 476108820 41232337 73647254 919881378 917275255 24303759 285002817 166858020 822451964 997772468 816952800 947889767 256846667 131341586 220865588 250794231 100583423 560605676 464990880 238013538 348171960 364929770 454452369 198956226 573743353 313710644 346717953 251340701 651969753 697863184 934444986 404716464 552771692 478031662 714661427 357121380 767347703 121081149 155310188 508781786 363362969 603094598 251552890 308136641 966648970 52565897 930403236 885216789 145923318 137578675 932221727 388409179 23951435 202765066 660489453 414742289 3548298 857865529 893567757 566840943 478420605 855211515 441413298 402026754 684042508 114994247 933359766 85470777 444457254 942660404 861929985 863134829 721629269 994464898 671043210 11392884 517613812 365963856 302629818 839783507 143908263 668813703 35774949 231825219 464346819 286069740 858313815 280435397 455214301 165406727 720070031 819677180 679885571 78619467 483794172 102610928 160118965 309734811 936713086 811167680 294688255 62868236 658662938 400670640 548759053 79019590 831946134 524315233 675073540 727020801 575974071 311245214 470648169 151883537 762621257 127896426 827842287 819288089 993717386 32416415 621676063 559110191 757901846 730969710 619307958 993742769 208614210 317176812 246927181 363467122 870049659 150104444 777798661 602869703 197972729 151141371 171150818 255717114 645582560 746135627 792472063 715493500 191426156 516658387 117742040 919758879 860194151 524334193 388203269 336656259 326316711 56019088 825241436 939088903 42311737 242234574 354484305 408977401 933375731 819540359 956422000 994326575 619154084 792968740 263404177 272011286 674689924 308482063 831378248 46211102 657752853 779705920 316171248 847757490 536121858 91627580 674433840 161227938 823767244 788062974 429699639 703558042 495587359 210179929 147818811 898021557 278747637 262363161 554583220 773082887 206901259 617637014 626362278 786478773 52685907 288433746 898644291 162304335 256460293 163586476 281867356 942537203 867234436 457442075 310148256 906049973 176538298 50095531 501279174 102396149 589187125 30283447 268306224 345714918 268720279 96037088 256774810 577505404 965741415 621103392 897669578 410734213 666463583 299065133 335162322 244574808 560683488 700274632 733848038 78817681 985445761 550533256 416064079 62048907 320817985 633843967 685357251 684240471 271095818 710731317 994275657 299571190 206432267 277524421 393514136 872191635 60875322 804419784 223519143 666621641 44241529 480719979 176348973 120774271 120471425 59823216 818940563 156046120 967446271 316566503 683429555 143393296 487788554 614090674 131354040 804323403 928184602 145130206 229164332 293516269 694635060 348897780 758877563 868189382 173229992 936731469 467930720 144693092 640766766 776662907 398112587 159346695 599634078 757064268 753697098 923845105 880041778 533720460 802578300 6501084 380341729 130299026 497411402 561928680 131792859 556080579 38496771 10949870 135105939 757482866 590345696 348533579 516527228 776896275 674069459 754985920 589973619 940945706 61450869 425361588 821392566 962608651 70673422 656644841 320051386 92532550 875736333 916135022 416840185 941688212 108907169 409353555 741309897 645557047 655950782 419787087 707516606 732060594 341911288 929879240 162004886 968877146 969023818 218709263 313135854 876544522 696968178 645132751 127060126 762794184 759930431 577735329 681251047 70468220 186194989 719846828 799057386 640680509 349700344 591033112 375848848 134324521 305214343 873309129 471423422 424524690 625434929 325517761 929247670 914333775 538063982 837178220 84031117 351419876 736037453 664447114 68274319 807365049 331413120 902420028 321483404 137115266 957021804 970797263 187513099 944735631 801545592 401803798 165184143 546740242 486793482 179286982 888567987 806314888 664338466 448943585 580845366 360700162 275435304 268434533 897373726 397265855 345553587 744291561 441805240 635370302 456986792 797655531 960058818 949585770 787814741 826584361 746569370 722966948 582109368 504900100 437618830 520455918 41444718 428593492 108981421 740264921 709422702 472389694 712617546 510164763 389057046 167480546 197943605 197949190 447208843 434522083 275442129 16211933 661056428 784722055 561600107 993573674 631102436 943969854 267278929 783919056 662326017 237820599 745621445 675736318 32841979 420574405 21994876 731396512 370843733 85417630 802585450 205353522 141279652 713101469 529940299 88663575 871965030 393458196 496915345 170283975 550131577 789987000 744463716 427403464 160321961 320740283 310269230 589343268 867242967 488687081 881903947 920569097 626096128 851413318 486730684 233421701 251069544 958484869 332590098 146898922 430495204 64672666 130086063 231404097 336576464 286761233 16414992 445742531 485290231 147994550 361497804 744802423 651784636 2934768 179226909 575296874 592096909 581727573 309213721 241665373 489446407 572599865 634949014 514173077 297387166 968974505 113202122 515054763 864807695 716715373 213000909 911677037 854255343 234053233 880042095 37565778 595066212 341468104 878854614 814728149 711536109 630623390 839465388 497560512 511941917 540848188 223768213 507791043 715992141 648633910 899089976 569289201 796481393 404317562 83639531 155058963 60037594 127718444 495202950 703957910 378133499 659243390 778642374 841377605 551488870 696093736 82664362 842809668 261539450 826042481 952937477 971847211 625625305 432872949 650381975 451972894 566717412 874187779 729496767 53754132 695402499 114101018 356516519 120479649 508691174 429524642 998997947 826843260 686486817 690047062 455868777 67864016 782530754 279050362 290615185 357356755 389424016 988980681 57774827 137687529 600081896 316140807 47093382 691530518 464421629 411289158 990365431 928520429 253899259 556864778 948558981 965582894 77895997 935195851 860658381 307782805 571169138 38588281 858588221 800445575 705523101 176521776 602181363 307164173 296597442 678142330 237775768 207938579 671676665 105621516 600036322 920856005 526979733 189739633 395109517 295181247 549500605 548799401 709700343 704174833 369325650 400430694 857727903 688409557 855166650 816124982 974715275 239425171 610005006 613956415 76142941 173671994 171712840 754950832 768302924 932998007 600088174 411691128 581979814 657929766 139949449 255929434 333598895 267815981 940913435 264631395 473159265 891067125 437682461 787098193 869456977 909732592 217711252 408277114 794738408 887986697 140045985 234324494 27219397 904914748 673176616 960127220 639657139 887046604 434566736 564184756 664181402 821622731 289490679 810552161 782403750 480009032 748714479 511594015 98759441 992539240 388859825 359133740 460200415 626272905 32738682 653351580 682264123 931575449 726290800 991473814 156907610 46478577 619420633 284551470 151585014 985417627 713234255 640182420 239130795 13115458 213554926 5592663 283845244 212391757 890924240 432483362 856241589 136254821 88749036 780292096 45252951 501963297 172180476 450348808 833701561 27725106 97186615 546227561 219878682 147768769 152183503 455661603 910338006 189671012 638042253 366919918 844708950 514659950 878949281 960982051 200196227 537298637 793324394 64196476 208672891 364472879 763305155 762388229 661370689 125143273 761408532 269654811 431003596 392714008 888846916 494437795 976022457 337327328 657805551 91423928 82234987 607477130 528418854 710679707 428779920 491292496 849189211 697795908 456147208 808912094 444104647 756024965 175802772 486633821 148883804 651314770 466276578 949325355 806939361 4833754 542293681 26287531 971149362 120982 375987392 905423477 251239729 928049948 694434135 617159367 119983878 379341643 167007960 558371168 814757231 944224289 203007260 471226918 871057205 526967977 364646788 666277692 380935000 286959183 213255881 555035627 566274666 186753898 132454506 25492050 241241409 738593315 868784281 356082576 635170693 674709221 701453844 697866719 705694807 638137977 828674187 665806929 91584126 313149659 114015354 684005208 353604090 785130346 133225820 535303799 549426305 339947183 334363026 633897103 1391499 693014568 407707882 665158508 805396596 912024759 31174581 684953043 20313158 377100484 395985826 517601940 243671736 529106124 34266956 41187370 563126924 9324056 592595668 424044232 589101431 934258162 324410343 431013869 543490082 962842677 231720457 902326370 586470475 711943715 270813944 871942352 370095160 189252521 717703137 88677195 600762051 239281209 606790022 710624507 389725246 19909236 449280103 585344186 373113410 956728644 592097188 510819668 233212775 172714190 186032124 707171544 879412156 205355231 956282800 979395168 61924672 592176390 174107547 481196793 478677671 930848666 728010626 960879563 687431750 733943175 907547011 425362406 313452524 308058383 66728584 947148492 46544156 319064473 719581805 316750546 776894017 74473985 442808635 132417796 641915524 381215873 781968903 13925758 449956254 855156064 274372038 74353035 11436749 715618571 585849081 885150548 357089688 931897444 294184855 166930296 46714995 21519572 244661469 98823369 824816584 271804951 1100721 359423658 746608037 454067277 209608207 796600386 631147310 990856448 725370509 921676061 631120258 311210761 837199719 623316083 77865295 282267743 610755352 117389123 955789410 728367483 402877902 868038272 724820972 104906755 360764982 502656465 17333304 989859604 967558837 930999271 332867008 805411687 114247056 145349783 445382974 512634437 469341506 502572954 583296421 793318149 357571873 318863915 547457665 942700164 391611543 477854839 893324734 714028841 189059134 894674179 540918676 311240896 372188074 486398695 602886113 168080472 596441327 885049588 749246629 596213537 36282437 472728850 677023670 791517804 79090712 898443388 34388561 358810107 822487962 763065484 410392688 925262786 646411390 186911937 401729578 442604839 635172670 937144309 222367378 727566279 762371846 62378953 36456111 845963429 346543046 113970416 968753005 859684459 574077186 200843877 783891291 496281646 190285709 912555766 24713503 769615434 156802153 672260047 143970533 244277693 966983270 88508588 289471814 885012383 1980803 175405796 43595592 852474909 910739893 373678687 925313389 471293737 952154516 836931352 438733729 19221805 865057426 581493666 788475968 700943133 775760641 740821839 256696454 411479829 726442729 390436541 718640003 680016025 992198935 544602742 82240834 456055788 543225747 755178973 692841806 307642401 754539504 702899053 233238216 808407037 576087469 385175840 214130063 106421707 30849739 788366095 883248676 222372476 888153675 86367224 142268373 790683415 78974751 873316102 77314612 895970367 911195849 561399479 809787699 150344302 548826188 283106921 87887783 644795675 828184878 158941853 394667623 919116368 909381890 417696602 289595522 693972161 829143939 132026776 772649981 563322071 836427027 417900039 379111015 300898653 343084252 281598385 415138899 944479564 237794389 762847890 733657 197543270 997952538 956429852 125372240 964476040 21542951 50230674 928658014 972451516 194957429 308055162 18054684 993853947 154741026 663241899 316069750 141720991 26665324 552961351 467923007 421801522 319547161 981545734 498758006 909528195 657731702 863652251 294616681 121212165 82954430 660384276 48070280 318001217 33140247 996618838 401074530 216396627 757126428 455622033 669806365 853148728 952586150 713221589 664650044 480772040 854445763 474109164 232768571 367370639 156311917 748310826 165054127 928954786 667468556 291202154 344140333 290407595 424840440 262028928 678603985 609715587 501985529 67295914 80818221 924916103 338082449 897160074 623941511 555712677 938907195 707689328 60638031 524770986 602807374 932293985 480747222 724201453 94779229 738929155 654698277 812281210 800227603 625291156 570622297 786574320 486751939 823938469 924426241 705025508 870868210 660095769 558911460 490905153 720423272 271656621 973478097 87163012 566136614 284769650 616578370 488724215 674834680 946949189 157453127 657746125 341155876 318366025 962968987 550863435 980492883 306017410 840701815 839740075 989015858 459414251 702161194 87800073 372857250 330312253 197862161 843270629 90518195 833123419 672239847 423617896 698724541 270040651 291492436 402988880 627100592 416846528 253799537 829868035 439729816 572157191 688908923 112748623 514659456 262630917 920996912 756979575 906704671 694069064 918274753 592543526 446352349 432491514 822579770 400841241 777722642 136227109 806134700 182773375 142842565 855085662 3917435 431819173 23718533 402218011 436426244 35812486 458788138 732903332 254472745 804264634 515041226 366582225 851155518 267590398 319663411 232326762 752433853 310791677 112276876 395334866 372882306 667519051 474736703 382848610 38900686 668020807 585543519 443440306 49639848 914110264 757505360 536651729 789365726 829816751 798652626 809710602 425341191 869532425 437810596 516520038 259507862 995832645 51626519 970205891 563518823 759999300 383724308 522231099 934176499 106388110 36360777 135033299 953421140 311812653 278916446 990203462 252597056 162886598 499172200 420443967 523165572 613215385 826068970 3107142 110455086 658940640 405308625 780524425 113583977 889118731 889831311 213583689 697423179 419817154 720720222 739987620 980392476 510533989 46651083 595399295 644237727 821118643 473537202 849854755 958980002 368353228 639948190 364921951 36891279 647585905 124673526 128834860 694465781 216352941 730143160 953554157 499133250 103327923 380281688 597496684 13084632 299007267 537586569 120790273 339721645 259656037 241058849 528946671 254427114 153739434 814509832 930184341 120431159 986174255 581959926 745004476 214771468 603153273 285011396 128359428 376666951 1454164 359054857 812072784 926204204 716780636 118717330 947055055 389125280 456623690 386394365 697679804 696100629 774028436 353728520 586228533 773454143 665938386 94850909 902717323 889090654 628482465 901739761 931132949 285139089 579190915 258446227 997386259 58966166 419837892 984797464 607958053 738012183 720695626 82802957 192800059 145480796 480779635 608481508 147673862 44131565 637449820 380565580 625453921 997121621 634606076 103094976 206134976 818855251 562116054 585659311 302217101 745931499 101510348 68738145 35929947 759605125 585174285 857083541 249847685 730157499 258070856 20514150 272160746 377368189 778487718 616476104 157240276 391094949 439195957 212193186 210520582 137785640 789761580 979284873 160191558 624172899 423075489 170156567 755412300 526796227 121549644 10598472 814926887 96308392 377168202 933777362 147981752 879397109 618023623 993942514 25459686 90164817 690505198 517230930 866961853 652547151 675733309 265183036 503628465 85175718 541590577 616554843 15482532 30839263 607480948 666398298 966157364 830795416 396583119 354653004 894888881 899014805 562247486 849859354 294343866 770126530 109888628 364063621 115476125 777712364 323404451 724290330 339947145 4523731 960441808 530523131 515669165 706477277 250804877 114935260 245730022 561399059 668014752 125563361 171813334 718221534 736908600 58555607 456424969 103333857 3672744 202165577 458380382 475019211 954430671 137973382 386399843 937404061 158128596 862614023 850497541 189186696 905943226 172093979 93394410 196641320 397163649 948946174 272725182 58900928 731786412 810406118 838475173 730199163 424687027 630048391 581959138 986866895 147093765 136257542 157724937 532763596 521537828 616074144 102045162 726314996 976217235 177433506 810302797 750197352 29533892 806659122 60579789 173732517 167425902 918499892 643030952 217147062 634087325 113390372 675585150 146588205 652072082 479219730 81788285 108656058 56511173 552610802 318703194 884063653 790516728 441932671 810757739 833773160 269858341 434482885 729362150 735331716 703386748 899850624 494557263 544534195 496628077 847194421 615941795 715696006 173359602 510327050 504201640 282183996 833505634 135102296 244452901 406074917 285264685 341211131 704085328 87949650 934211663 804258387 174373663 808531195 508651731 670053379 241419981 953445354 499698753 134353965 543493914 821997440 616497303 858798843 657124867 406757203 982148036 989555261 815555742 57910722 938601537 901952453 918422712 292551902 411286151 763100077 418218566 397916964 158862616 662702892 845590706 476665836 444576160 354716189 603100328 130326387 2817291 270630795 522728286 460209527 653667746 70993510 38321224 312268833 507173792 994394294 978717085 2800293 6288058 534055060 760073738 47455309 725765399 542302042 263188503 808576004 46737328 61535013 226505323 150924267 541670385 778434540 944889229 767237571 165716823 562797350 29604771 347959126 922566282 513540254 230482159 728821060 88044525 873110357 655595955 139804643 770824980 157542439 676311645 926576924 294607121 926906933 583867809 952496830 489202456 572333433 986981039 277397694 628712550 372158603 268981091 234482515 478196368 846155073 342635556 250827722 298546026 197457295 818735238 48862939 187119358 240014477 496388499 432572889 542845268 962844293 407840574 258474723 657532339 832112984 174775823 487800747 359989028 105705571 841713149 142311860 44574998 631327297 314026538 318184876 123181135 71422726 156847122 95977322 587083006 198202457 362891907 514275694 688518830 295888281 552482220 981914697 748754144 40546057 846809682 780578671 72179294 707545851 214139734 419719212 359029825 836365877 863938143 69912868 806966761 61348019 913987895 863290486 712453186 99394187 28554955 212629895 29583215 702783587 854581273 598329062 213590103 197139108 275453902 304393735 966538192 83269366 599296338 866084991 665252398 986228798 843810355 933236542 681701156 140924625 933312362 498114032 694860142 281903346 280978444 41446702 727426927 884362628 370311710 941799780 193168129 123416684 416539775 821270525 265183187 68725675 337041460 444217593 76582314 962253431 156297583 333644872 192344595 977637576 560983310 69689690 504650808 713896626 121775748 828712369 943120045 798805217 142368370 14836614 925262044 877773441 27794454 803004585 183706316 851319024 95497103 782058036 557714233 27573288 339295537 750186399 290405118 497567769 733405226 285640889 554903374 757282481 75967041 607468246 190436375 999400892 288561008 687751388 756331172 375702032 625821240 904632316 672529839 387937588 229166788 444378468 296559867 435186866 895967178 727351953 452819447 745121213 674299796 933202755 509008485 44029756 220721895 737134299 456294242 814969783 715508031 904095247 793140625 335204209 56847581 182457033 527028994 12957130 667377153 111689899 790931773 416662826 221973904 542120290 797430352 899053214 291488729 357704839 970142416 29742389 657221478 792124564 458870646 128198684 46559733 273025595 493921332 691213873 885449264 561509089 790057028 6000480 823953715 403791224 239414491 867514443 784040738 654811721 909759430 26373535 973660708 173182403 351050118 381543501 200177087 847096161 99147493 940759908 602291949 878888105 63410990 747799206 772915365 53375451 818738179 262260488 659037812 676768745 146593417 575425487 602454852 464559424 393531272 888886455 941796080 251374050 46912323 471173625 853548446 888113044 131498212 341456697 166896681 484456582 95279335 196085972 40462231 491441432 152172806 968800039 157795297 498900815 838455425 179783767 509572822 284723646 873864592 82620655 456409684 220694443 651368952 342207589 44893659 102356497 966622393 417545447 166302230 306016278 594320647 429342706 137808830 220150293 998648076 383403337 911698936 294504152 294598502 478612686 314964608 95892276 212153302 222777176 440218625 814388642 520441928 664951956 333970959 202476325 357299225 737191170 978071195 433080987 71555684 97794909 893877803 315819725 442535921 391878384 192596303 111875106 784041481 89734210 88314129 881321056 47147652 491950382 592650096 891427734 384372833 848605878 349550545 584825221 248449607 406687850 359041043 438834645 118072605 112811975 124505310 849485512 219552740 860311384 791679300 314586608 674342552 56077443 67289717 187412571 969258938 209601198 338340983 523458153 469464498 769938954 293899811 165927480 641531108 929154306 249016462 796559092 963125595 205480417 288857227 218841524 182783592 526179932 396295744 286839584 40192608 54095088 853421379 391841624 733734110 224673582 586480916 154513725 648855807 723584941 344970987 544602488 759445384 534798539 137966104 716504600 295319084 342000922 321781655 251035133 777530454 864486153 246233312 529698311 438614890 91317939 123036392 109732299 61957172 38555406 77770892 630704712 815660429 656020963 474456374 277642904 100649557 154683542 161559186 941525970 260925278 337389597 637521351 181618969 538750430 339965212 569099965 555544347 127323311 645291666 39809535 455146600 102244765 85381504 954725476 905730510 318403791 961881285 985511770 206119367 500338532 888650159 453636756 232817714 422709125 294697565 724341016 76422065 23321747 578777177 268273396 122910562 413803848 208144940 741044151 926924002 113648241 91366802 639829074 21416387 717705360 91056002 754966030 753455440 447035056 988997706 556887518 277720868 397257547 831971814 557585301 369038935 553668089 403885908 199025302 236853947 841939215 650528130 313976492 323831745 249544648 921866985 601695198 792502827 375185029 495330310 584006826 294031604 959884222 919888797 409919280 930976100 93235757 43817755 589381821 970926630 746568009 890414056 678040514 700271100 560832937 528697504 859033613 810610704 668174348 572035092 972797370 244488352 113137776 446757712 656085981 813534461 990869234 621177366 164719566 19338595 417032981 418236809 823160268 870126399 906100538 408639937 950586312 347711263 94209423 52122919 868946010 65354511 31422885 824969081 426623385 872246091 50361160 514712624 678270168 65890258 465369852 809497147 215301279 280746024 252973548 990999369 441778011 151674809 602748917 6051871 958410906 869357348 313769654 534441454 281980212 945217533 399339438 803549147 959888289 126352403 303451322 409912810 868806973 617021170 842994229 744730848 585341138 683328335 918681247 729877098 708241095 806223149 88107234 217282896 607163374 463112775 305996507 732966940 589200634 904261398 776803328 323486056 718957327 260751218 327029086 740911304 699544611 917228236 191585942 751523468 491478543 389200042 601759158 868799127 662512493 548926984 619055733 796750298 585415709 652261426 20739350 805655953 928025025 291434483 38179921 932757284 694220184 3304534 509343181 629206013 771583008 343232139 834895847 995472006 171960445 999536939 718275617 561437685 874216308 355627765 759503141 299346951 904853496 75639288 297028041 61702157 406686076 221753162 176436836 212981989 621063126 12618230 535625806 203473329 425408293 866815716 158226182 116125498 219007963 168020740 607468298 734997742 765207721 970625665 88281985 979080113 406111334 171440957 312465141 325122839 235286841 496806224 102203028 227822227 572286723 89603344 419492892 859930727 952103295 939751873 937512096 158546509 24287957 198892368 932690991 452285138 358507515 35940932 450300562 208640181 783819531 799452969 213954399 921990154 552581683 852499163 438816220 868737185 626327534 243533483 901614502 301787385 254407774 542193946 338000804 745552027 965465309 167553194 106150704 649198229 980092919 743580011 394728877 375551446 522577706 355996978 568456383 588461082 483762149 691382125 977886082 321112299 12977858 633390189 136080808 210701291 614111974 846093795 491253592 532856718 372865878 520260678 625158029 193267167 908644814 804569452 476870359 79333068 274837457 820349622 638542694 274726817 234727568 821550296 166026090 232622806 584342085 746856932 904362714 199952033 598027601 646013553 168544538 508493147 473439389 767917769 924888335 828233855 995244978 246880081 195995268 136029981 285252438 112474870 45199376 977419540 509015201 910664248 208035631 583293333 936693887 818081034 311316078 538407934 832847613 245964749 826307799 830880241 533283216 247767048 142751740 598411654 610307827 680914915 815484232 633603860 603545040 978366011 121152470 70596420 265798762 687067515 458996080 29501788 848929848 976010907 65571589 454158138 40517585 244384842 469134338 136378849 210698176 167956921 286840498 13687181 531193255 170518889 41041167 433188830 504708098 906525448 625880494 699897341 321809748 478931331 317816556 215804565 93589878 617202943 330503673 949450925 64703271 139283719 260700675 71849808 647676939 927710034 378964620 307594759 597606446 765133478 58480598 349300479 928381867 336616216 756631588 372207985 699561428 990517250 451423344 105221675 959075561 349594093 920790880 624943072 317521322 117187817 726588383 600212262 824918766 104854624 949280463 723527421 272848931 934083817 449051945 986223338 504240699 897711916 250966217 551327650 445956388 510494404 68307775 509512039 482829371 166753333 561738560 133598566 77540825 194938315 344784713 625507163 560170924 858271713 596322535 64741984 364598873 975936821 132870685 661262862 272103671 49194303 52201415 685001616 797675989 863742627 444159365 261681755 12701058 298841075 399365174 709787472 112649324 967983201 18332091 262405016 943733256 394293478 52172840 416351961 831680934 983886594 14013613 924801833 438811692 318704681 584660275 908214642 276750372 225921705 161914535 862918317 83779889 195563347 63164294 902975497 324959623 262817461 515637409 60648945 520547588 400542614 965896755 597054657 867839021 268174320 855133595 565962642 989110108 278736783 665685491 988779137 87482084 610239756 378556756 889528033 378615722 570236802 752165852 76669721 383834312 368459898 47479186 136820853 340484446 348531900 825440180 925428547 608267959 512270251 44065399 485157349 689628056 156286081 221974421 178928849 257788203 312964805 108001397 733018706 422389914 516032008 96894931 460045760 278480258 416131678 610062395 182831288 43197610 402721071 946297699 33289699 37526230 815695746 790413800 745037264 720523884 710062152 26722233 31820127 160915690 911683430 701309335 554456077 412829446 660740149 984698180 181768742 656331564 397727358 269224015 225988103 587758367 478909004 227559614 978430960 306081959 893253642 389170430 654893351 285328130 301827733 367691607 313063485 296530890 931229887 102023628 775712203 560420525 663825019 327303460 57932032 14503229 27119079 149102756 23300217 651433369 815961231 999306916 624248830 454326103 270922805 34364431 880016300 143590670 15731238 443978265 884511369 313565458 763277657 730778130 818802242 549108898 757622380 511364317 623630644 401126056 817179540 997485450 647819799 844360416 830635787 604955072 618048209 578647304 236899334 680254806 828657908 649133634 516434444 675698791 910615607 73037331 545754907 938325334 80342398 806743236 401774384 357781374 311495809 62801518 462202607 239951293 309600308 468913771 775529190 848238776 886109896 495833689 535793320 908442125 733932917 602983944 323737639 539981922 518237244 22120226 535121452 554034170 413849620 925182314 175140893 668754766 897733916 151115366 202181689 705875204 671633629 477241441 18777045 420973650 862316313 697433392 908428249 221586467 481534782 551362926 395636984 45106875 299924592 760261543 622843260 40230269 209202888 575299531 962680530 186669560 422958587 730649314 355883890 589456714 480700781 820283933 319887974 716416660 498463097 428608744 412816858 789751738 622513372 168861955 290230959 707979518 786307151 373301433 771797599 794464726 18133469 336073476 286204292 146208433 582017051 265686443 537741585 576759837 298399426 395534938 662682448 794332238 980486171 294108281 164953681 499246509 901882909 568342470 417381158 638314217 428456019 346121558 727417538 62208375 625069476 720987968 280651115 696894698 109352886 802761534 89213419 276081327 107223572 747831573 685954141 403848620 660610280 470624718 407629508 352877583 871529650 115393486 751238165 185047956 3390362 263685932 676441922 912257557 879294678 907498813 902871443 928836974 627303446 150039096 197680502 509541962 727188024 674936098 982681809 631354447 179593715 627981906 831145184 190893004 44115523 541734643 470186587 557110618 890061939 943260660 546159013 129548112 224728349 321238162 320811499 337728791 294920612 369887577 144559134 424779667 899554565 939626931 824811455 855512569 321996269 317871979 542959522 96967600 982825765 532578364 978928051 432290363 929869217 3380007 576019364 635784599 583659918 158527621 435116684 586019894 948128216 432786716 463458052 954569276 760061026 600401799 257002637 922065259 854082642 217101869 890302525 730482258 320535137 613093637 20055014 257802903 225778789 567736482 36518323 280625112 50412061 560096565 765475392 857346532 127703736 284867066 458581525 259039729 169951444 960417867 267209663 823977462 704163250 661121317 723827150 814240298 664832617 272874543 454069945 38788912 672324318 152682269 844965433 798846116 179790036 128052822 225491209 246710778 8940804 640508357 648138176 29102897 840688440 629970847 938120668 187862919 732947090 174013018 826956618 127277504 636866544 675133294 119256750 343379630 338825160 118265468 79007211 926901976 716640809 242549212 157280924 342089821 634882857 652766316 965411911 550261077 558209626 329374717 11417040 69394318 219739636 143274147 273093558 201101570 655505711 10471435 135997792 790999602 887298972 482485047 627839907 789977254 946936324 385268173 296691825 527566577 947591750 970410216 75942641 945359974 221593512 848004669 516071945 161636413 632770539 633334459 860365811 652866426 395952028 414493613 244244484 770583735 197370847 565745095 200556116 660713247 174823697 531912504 464558712 894557947 743112208 620006096 658592514 301298998 230751851 299933587 687354791 261756951 523124028 655053007 599630849 596942383 128522238 253504994 914604799 200069656 504906004 341967595 712850264 569029858 90166041 16983599 510927064 331468211 284911574 138798748 348412234 391244273 151016115 428396103 285287773 351693970 482306379 840997686 434047833 162355847 546395868 5584772 869094185 383470166 654175828 567169630 727034323 602752565 313528682 984534899 772079284 303546438 361235027 61934818 510988781 587443100 718570473 515735937 602285835 869338868 269580056 836211562 992584090 119960832 150475425 461662050 230413129 807416281 590212277 469717288 591927065 957892889 662836259 676431413 435561121 825229508 83839612 775936137 245183167 434408350 649292326 154232788 103333395 6847322 853692705 921063056 400411816 677991445 491202849 229683110 527625117 820524376 828046215 508876301 85869178 186003582 977251736 358806994 719940478 290531402 721219911 920542132 971272668 382280968 589197402 14601640 845438595 689712223 729556598 74044098 225812674 888749617 768722597 79033407 375391603 772155908 413383948 102559673 61912000 860058899 281311784 28338687 936950111 294848540 567051972 928780369 558113956 816783349 397818 985722381 775275409 80135605 117585382 239792841 955645006 164555654 465966362 480345700 5251974 771270531 228943471 327152161 697853703 935442745 427850658 493234884 564256010 173127503 418498782 665272739 428990450 596344967 741105225 578936938 452515583 737820490 632755411 822551291 328817047 525042731 341835598 802967450 710090691 309096048 29652309 600924674 829076826 713101424 942386051 666277794 689299329 655469763 181708892 584956832 240231781 221906425 947646149 425529169 995413994 193252659 746296871 792233998 733039603 66298462 979150958 284331577 528883513 30302612 198086845 864420885 782851573 735436155 733336539 529943156 353491801 354769794 31332906 125025610 946453674 390362668 343757820 775768689 363067666 727891137 431043832 237850380 722934008 912499939 214265123 434315723 165474954 39445932 520115634 573022010 524606418 723328754 322277733 980944656 707004897 301020899 904836189 729699464 443442923 668214491 5870527 407118800 970296935 679294330 336440562 990087989 88356092 226589819 705518145 479663518 46726992 521613213 111002394 378654783 828055594 813939844 594283195 57457118 850442504 742125923 726435800 341428314 744398386 787803654 894136107 741947213 475288507 814114426 577791318 600936320 380736958 360193814 78240358 973537296 731469196 426633701 963242111 330349890 74007803 444965258 757352033 430676079 544390836 600625880 516563479 289621345 307203549 428017407 742788370 974387098 706659152 947003626 279460974 132732600 649907458 877236742 243667365 473791400 980958898 690066192 917827835 117653382 729464921 269261756 7501853 572276469 586364775 800773914 793930113 126196817 190076814 545291465 381377294 209767866 586703815 262805814 553387393 548704108 184194508 195332110 520139457 798740444 741276424 14550202 888631952 296569102 213123515 803831937 452033302 104792149 997224958 180114009 501529272 429192202 393280003 381263557 769973294 323541650 229252959 351964331 680427877 957225772 663835456 953976439 614145075 92309134 652326512 705926968 224256931 311880471 110259338 721520138 700268355 420353486 237754964 873784207 375679648 500463784 819870969 905221679 623190863 272730974 361046108 182122735 850725400 954086371 37867404 680565989 105381128 697977741 542925863 110476128 140007406 416738856 310682632 473436436 285436750 734278300 197953189 661997875 644781319 100215637 636897408 415469914 59782045 436941908 298780584 784238929 702041586 135535311 322786533 924866253 670544764 152093742 772347768 714035375 335688020 87212480 11640418 256594470 724594506 67132089 446978271 620144338 16648792 81240695 218427646 447493025 222047846 154020402 340325704 995747881 710303523 565802136 979083772 172072112 698955526 938505161 642759313 234567028 314860583 615114796 389175038 641761186 355686634 815179035 664784998 308194964 93364546 208261641 72473019 206100382 877218139 49774820 775154120 583135069 610579224 944840218 604495767 959749639 683941733 903900594 643756024 552886664 700657363 486424666 632450933 266967682 238992542 659106903 331277694 339870290 958761696 911338075 805648026 615910088 703087381 803670410 832527151 273173079 410654401 277701664 264693689 610916937 916192403 616667768 545844113 508296669 697736263 610909911 87233523 87120538 942472250 544421717 221125293 377716553 637372389 1051298 674753431 332151233 869439203 346561156 114926728 532540644 95032547 653026762 475929240 792224967 666108441 388085496 771146147 742064988 77163914 944744058 371320410 168319866 570747333 906476637 66444389 506983261 483734309 583093792 583914837 22838336 738248560 492553400 230012897 858446067 996537524 503921686 113552756 950220999 684613057 240629969 37877979 11980010 36727585 660752834 62283522 349581452 857247288 743053957 492716805 866334768 408546571 508659701 600689166 15606758 632011872 291021657 982298720 898165218 560363417 462948921 309829200 431454762 172853963 127578006 27622761 872098222 919865568 139584545 717775523 580590458 822051227 507017224 374762751 256391789 557696756 328164464 573773190 560368406 632652661 299942357 403250040 541658517 893635078 801128374 193873991 636779162 588686329 592441219 757160000 580425548 109278232 52856591 403898761 542900408 305721576 776214965 207249068 481325746 946074388 345086175 505293661 738276779 517206847 725801752 843392748 662144211 349513035 142795599 891451683 637753987 201221750 419915601 340023317 76258292 798461226 737543266 383872241 761791991 7072457 698009394 414924176 221105776 39834036 194476248 600575209 961639070 940594627 522717358 340738391 521923053 634864617 230322959 577056378 255534628 423352154 927503336 237047531 141263502 763683320 344899024 290151645 261405252 810327109 976104239 580339649 940904626 163415174 127398861 867898178 894063096 759468440 968676118 834124416 167336218 297044578 652168445 197221591 895922593 16660271 779126571 259682392 519836792 451263560 125764407 688067869 10905269 897157195 803734303 962080237 835826670 952346827 360717689 405198606 139460652 241144904 52140371 21028481 926249364 197639804 695019833 527693686 665628758 798193104 204411890 875881011 313626313 593138372 14672256 94857343 561513635 671013286 598184018 917836137 146674385 171449921 185298798 682718157 34087312 957521634 902188976 440951320 855449216 399218170 789278664 114626893 623083961 565577778 190157458 508569708 374531266 666703783 294335750 99578629 279770673 615770934 518962961 129550150 591093477 581445741 662890977 576323348 974964399 739224748 425217720 379589418 93487064 780946890 673363831 415378880 412164126 917044895 19735910 532294309 42435966 715416301 98495573 31941275 866995845 569189771 700736167 846253980 947408937 579466044 291358780 970369818 284227799 775546403 221515553 612688838 9358003 465010510 756075510 526724541 736706361 72913410 660797501 251476154 985450644 216975656 979144 895960488 228133390 22088653 510999997 999501383 918672565 420188166 523051673 412837285 144979020 947743667 558622487 701852446 923833150 214447153 424854887 550375243 324801990 16601080 397142678 710499313 298397770 582906508 585253485 688105351 718793454 404569421 286778803 984666429 131892070 742598011 97209476 579275833 389426515 876405244 775323059 616513755 219209836 420731659 826564567 390467445 332618839 969037787 188286387 188418632 658623583 589078112 178363627 309813665 597781021 865168320 26121225 540191671 17206823 829949322 31873683 878130847 89609174 852860187 372351578 700282024 653933410 169027037 482293589 462670701 325236820 474649172 463756775 894196721 456084623 46638442 181704232 707583013 806098606 818071292 543178346 736473668 140569979 842189786 914280800 54930355 699915052 735678670 370969043 290356441 369180 679316322 977352835 965631048 508561217 76186474 3871338 924164372 319266355 683388105 285213046 518665571 481310479 970441995 334536887 533995044 667975525 737299004 66128363 63409067 715380593 206871358 6868207 51939523 914290668 887360995 730076456 320781987 320720784 173903276 906365765 368820322 757799160 349184353 396112730 900247250 736432755 954265608 25265307 283500409 178295502 596613268 137870847 387189368 416974130 793174153 907299472 390722563 104496624 891481943 662242119 985026615 870743653 851570929 356778007 581182099 657149620 454261667 487734512 898443843 390126166 200020897 893023098 475766039 732563851 191786056 670658731 286039532 289499535 69337681 664221137 395967975 399966469 409898177 123546582 295494925 814928019 459337612 96855299 16554243 567871210 335360494 168292603 937775827 684572894 997305823 731999986 530398195 850577732 249177519 1870988 211099987 294876001 864422484 888562108 411963346 217704225 64440352 216005201 881387004 447838073 769058404 82849050 668547451 326099362 316577236 755588348 983311503 565091435 789193292 840654689 822874202 469225907 27904916 996099293 778367750 689743298 902829999 863905562 226812804 115799927 714395360 726567168 547167894 380482693 882047804 181315419 430321055 423075350 555228392 24300159 456879775 22245926 83034756 736141827 295728279 900172026 316397235 771981458 779631497 388422376 398388739 803242384 95602642 260404626 648906576 398922368 36670965 840125342 481308686 373012484 471567987 211793426 647611342 934246816 854367184 824358231 284039232 420437051 80235888 866736953 183960493 760909047 491524168 239213141 694417980 14691871 179787914 929704232 528017625 700475007 400130367 383445225 526297596 363493023 687488584 454070691 6567265 569050329 157499172 350299139 466066576 742275146 810537131 770785258 325472802 425360708 902515561 88402980 547946378 35490464 269249431 881629969 776664301 330985800 929657494 215378972 939177747 453058288 425077347 959370175 868503458 144535893 886748806 215177397 805315123 386013275 702830592 244791975 168477759 999806440 874072355 879709394 530305257 893570778 653683221 340713829 674078110 674123760 77732347 954445300 395201285 133193187 502795951 400252693 318066727 295866811 694007350 643871932 942000083 279683127 723051551 616037298 989555985 608849061 783519001 503650240 941023022 787817856 188440249 609640922 458137626 280240323 125720630 966360892 31725961 217559503 426367134 235382723 19255573 356756110 328376844 734623241 461302603 855732101 627930264 19406182 882132081 529312698 837899866 153018268 217582559 306666404 621011727 439526225 639204441 641490213 551140918 539078441 557817983 479826327 382530844 856972690 430352890 902744117 285799778 545394339 302290591 943961953 589841953 955386204 430523132 610038846 388539289 299968395 702490984 86819322 69464954 147249573 41132186 963083901 591987586 358039916 163456158 640335286 589370129 650356694 818614476 957993887 228296083 33238545 992491005 67462255 973367893 895400582 854002806 43112730 907358532 823743372 898050831 893616481 857621120 145463489 155424293 913712620 791632103 762414089 214510283 809826834 459015049 459556112 332567863 338988400 222324325 155799228 159833051 165550333 148093042 961386625 483506726 593795209 811291386 896142669 309927308 363923795 602449667 466339122 704853492 822468305 462191249 365696045 201440790 467404727 589789491 562613424 762561397 685393375 939255479 168786336 114469966 631518390 880889856 105257223 400615327 682186181 867877997 23369746 876649609 30281127 664635864 655637899 690007900 322994018 952480438 350104308 990463016 376423471 942296877 615445256 173525990 291671749 112421385 416307038 233971314 637422768 509921472 956010880 465407756 935590931 726735245 537007139 812076123 872542585 638976616 519736849 618174945 88191294 838007872 395806680 936984724 175432437 111475033 30534929 526070502 157706799 84601946 119140358 557647447 714538618 783860596 67124460 664698275 32898929 638587351 416695768 535103836 766245376 698114237 501187854 975732602 143429517 259676097 683241536 979979797 655821495 990296398 162574767 199858493 107618922 432157358 344936760 571731350 286382092 652424336 699334121 75759313 138876332 899796028 792887715 271519335 958337878 899431471 79975462 488498411 803272867 414052086 915346853 284708000 539370344 769407379 652193513 891555803 654630540 374152370 996189051 988735837 366193142 197901428 660716405 689962563 629579074 441280128 156498720 997134036 393803413 449651313 705553709 395453424 191195794 599646896 763537930 667632447 380863425 901107710 69204665 33862362 73761324 286344368 502068908 521494924 337814355 840049752 660292840 517346497 337813722 653012342 719359283 989787707 526699086 620728867 922450714 24469661 618062999 377205149 909844333 25318027 701876261 33595242 76182403 668768064 591712744 287848702 504939618 249416437 528284609 392787758 416834783 993391395 463454641 518142240 90235495 657567191 73107573 662321714 665135989 914902674 683311063 403505040 719356158 123079359 812417567 847955289 875970111 507352198 60474992 451781221 910091996 952179991 537797358 935641354 848554913 419012430 734524759 749149240 534459988 660728569 122058890 232600417 140279354 722902516 368969834 962425839 94664378 427745605 415870917 237446016 594722688 923412039 995014577 219113871 561103408 656371086 414357475 815648842 699780276 592666763 803448813 829082358 601646234 493565444 811518719 890137388 425727045 478658455 449651224 173770427 230604843 505020791 971696246 616263871 519629876 573288636 518629439 331347661 737335168 253374259 46260008 836550953 915464404 681604761 984026778 755173737 823485969 917301901 424490317 881004394 711973001 656160870 228650229 116412953 56499675 638987369 535727327 867605605 476277589 932964859 391345336 36143170 133182539 586569601 707167765 50264048 194792116 527396584 455783173 718474955 997159499 954442582 320683637 420373602 167490179 895502941 93696765 680017039 962597223 19311645 525654172 147036045 470328943 170809410 56750648 154722054 999393462 245264868 152430344 529242108 770108338 636059902 226747865 27213905 739882260 957128773 60530437 338154888 301292997 803929684 169377343 858781282 9262837 650881330 834723022 997114937 718386045 481376334 667459591 667449521 368740216 646699073 818830611 991781171 662425260 921885708 263011050 353572757 291989557 828802410 123403891 832127936 929450354 219859695 383635302 381813383 601319061 147314663 812913097 809920846 829667254 72936260 313503820 366367181 924196761 302483312 891855863 772052274 715807075 794371607 38494915 465486517 298929052 254076409 202695308 906494720 785366759 653470888 383904137 891409138 910069501 140389059 353247954 692086480 167500122 708689360 173541955 478369119 391032518 295848121 354123400 360856892 886896571 239767421 449393422 590620409 2069357 327373213 536904199 361226086 65292001 137123130 586114558 364683117 564028067 252488020 901458944 359003825 717014588 320279844 886132154 8778639 862487264 836027006 80451249 657955607 78781898 599017451 429849315 323763040 195471033 228683540 491324434 108699798 126997748 802835407 831664470 978387791 246204215 109455817 501130515 316564828 317198047 455661660 500647134 607038644 357290700 570785521 560727004 743971098 827755328 202639487 133685339 250654413 436860382 902459478 552942062 994734936 335459300 585269024 699748161 406668500 223426322 974757112 183732049 583624128 358968515 956053433 887081579 28195432 846018742 128561007 237146942 869116927 812502904 900040843 788301240 72458714 538451053 187601841 523250182 36351486 197884795 659956410 192627598 227913589 696978820 887193249 607156974 442261555 113532282 958456536 892932572 122527322 477803807 167050849 807700779 897157093 286308616 350539339 727587061 150919000 218528066 38493929 363004899 97839311 717099401 307687251 167671126 728045937 276693422 761663504 926131156 342306833 943778572 780046799 969344714 342231554 955425730 103749275 124601328 468618551 900755513 132001372 860666950 490563021 282417447 822596677 104029612 905242539 334285322 66679191 846943780 122461598 270202478 134736667 841347146 881716987 500273960 984964800 376992075 656531507 944897166 800806492 923901661 166454287 585872610 604426186 464321272 77867375 554897662 372503 335331067 496186 620159685 948077323 890160374 107496498 45852932 30908018 44903285 192921717 157638106 473214771 555859225 747599946 689470599 397181888 135302484 456407870 486765969 127371285 573456515 514439223 554492543 108620533 562711470 789649705 882380756 833377940 847491486 492415853 533300528 872006459 281499711 480997643 903408735 398534708 985887281 406706112 275806819 518622305 626666316 956527831 577511561 534739847 506872209 860954901 354099624 266788983 4233261 704676673 459338406 411437117 896541266 12846265 788892543 919077456 802822205 354759742 567645990 108639709 147291467 64308875 454815052 284782961 635462400 118179052 4971114 656623071 930150595 596748898 335377326 582314895 156226492 315421754 119412096 17727393 295410844 284954288 204436993 61931478 825861833 998079263 793084959 148279390 590660519 21039157 223550894 435041970 258651668 757386940 617305635 320525005 745633838 192931535 996401278 20587512 621661575 822689092 912450926 293070860 591369279 612575225 223661697 34437525 157527665 508031462 825854607 400563816 244137755 836961211 315054498 453084120 593297447 991994170 557559289 660898034 696086461 944308066 300302915 763184168 470034042 944929789 540898816 150976875 886239177 297350179 494374372 716454174 963244757 588642321 538705730 287169269 143761440 23442394 582319268 97347304 71840604 395399325 31919438 716633243 771157236 296731224 610342338 821842339 374825693 355572458 823472283 759543636 44026470 130641527 598547594 742342096 258948088 786194039 473490170 427893737 772423682 284358322 670329880 326072427 767018053 693945385 544020565 366733311 595113105 731874319 187149511 601400978 174544784 66883071 427186252 537141268 860137577 491377349 651046038 89210259 581575140 962553805 505329651 133043312 26626331 966235651 199670138 941893326 30601685 718315521 84115283 454925348 613476729 208767513 965173740 779512798 759829091 893160098 100545097 986891186 607876586 398638105 367541161 656390402 188063911 49577310 914491277 925972279 638670183 933477051 479041154 800760556 325754288 981648857 305720174 26537913 714443737 579871428 462124847 329641338 497521176 575052956 21689795 706391955 263591374 603527422 613290985 270554411 319689556 815883905 678151794 896994033 526094 13743081 343281352 137881128 219525858 415774746 819689757 634446830 320033354 34686239 39058609 499242563 428985525 336483639 913288767 722086245 700386855 703841621 849989650 513309893 978981360 351960444 679150414 563084339 442138845 734992082 900821794 119094188 844965560 464924107 944357633 400529071 919803898 413605504 373254436 547982135 972096476 442431169 707409231 490326727 466363912 125840167 123805954 782636035 267249455 670925539 931435742 891467018 278534257 696631340 594464959 745802998 224337672 515355356 880175309 307403095 632456033 114400193 628360583 508608821 918024303 250597931 132624438 159166250 377317205 178196033 448545822 946430916 819324262 337401261 720810112 605804575 454073129 894081709 342949096 24406638 97795169 892348661 819478357 876651547 372898554 677220001 960737203 474096032 376899033 835606481 195853543 806624529 914281242 346135441 538784520 456395770 815850555 171232387 604500032 491473369 698406880 883414529 155167852 259317877 865470395 244729095 746659437 461755136 281462400 274162868 676988727 481633397 980659530 879589805 489473176 63143723 428336550 739868785 636505509 65241603 172029090 844177597 332535954 110705730 193672257 99512903 447055331 900749170 932216170 390537934 963256609 482421158 479076624 205992915 122239242 906033678 70296472 674246230 963066983 479196377 535518437 183997565 120887037 17465124 837437936 324152950 276953649 138629372 439969275 522034189 957620801 401096383 41898867 90531158 156205224 227248201 870465289 471926805 178338514 275000609 546503339 413281295 505001400 16886106 695541852 6870278 607753898 511809221 139893078 833492161 322346084 160773298 755049332 996687223 957352218 138951631 645674346 709579280 572849270 679679456 769709040 749043392 107567787 955900677 301005944 310844145 532606532 16672849 765449693 975156622 527915986 252421778 146314166 527897230 674050536 604733429 774948784 937683301 462880484 425346563 613589887 308744511 301062085 781495463 81117123 39923226 659367150 478049365 714449448 944435666 971734227 634329879 961981288 417434654 365861390 490411326 933192435 52745876 988019879 480502487 625377417 10272895 656923582 968464894 431433902 774476667 527055577 786374603 812533725 483122135 383959404 872690304 304335364 586562659 724235357 641280170 149480218 488649741 211638604 748857706 102681064 8919246 317527606 103973888 51270511 314378011 303443026 769156089 339355193 129967364 720215631 465756031 746369695 172424974 93801897 90012841 958459911 200868780 132346111 505858732 882209601 499059747 28361178 884700494 426593112 202221492 320490840 430732250 343274022 125425155 537825360 502277779 326945656 672339388 762402916 382836842 999253110 803478244 187714156 382768389 999436683 992939236 394933492 254673685 364391706 641489244 453592170 379771574 823709924 888583716 164759822 120496347 872501527 226080545 363618024 264058801 523772036 947469473 372125709 881727039 557600913 250618923 930221324 640691620 846136392 92196241 75837248 878001165 394229695 590789178 997712802 262929459 692030745 214732342 324632332 507616510 155347790 738685353 134492729 784171100 698391314 943372355 112942959 622992558 338241176 898210727 256250161 642822956 275996865 665481155 801366352 248437431 827141549 145411504 48616154 988326836 17940858 386646263 602238988 762278952 716949690 858963865 165177837 309394558 628440341 544576399 589342106 126026095 848537794 662228381 920892836 982003549 380175740 239515479 300478376 717097552 21568530 739603026 676292819 748334101 198845469 887627259 709589485 460864397 199508737 955218955 805364688 593541313 207986491 811741001 925820397 112988333 223394926 622371675 856304823 46545069 911375901 390054569 154679200 774972464 83775768 402468098 186154372 803160293 189910690 968251944 4958392 75250481 58108643 496585522 356224156 304724227 505546992 779465794 803376898 394175207 326685558 232257850 516647952 197369527 676570378 375991705 715654996 534211176 278594490 353417869 205383396 877566253 275994992 579726326 808695667 998027149 503005983 703156294 866762568 166622856 587147688 422635419 510721946 149877707 10570644 717652144 380513434 676431395 595026080 693470662 329811959 82381865 975610563 845724254 79003251 287160536 56220505 726095737 468735024 463505704 831593396 84300743 44298650 287998122 588667323 503200884 581628624 48437319 812873376 415535894 811487116 17012905 524893625 470981722 170880476 753191556 984407792 937567639 921305680 298324996 961500272 600293590 966751555 740185883 48312953 333580772 949134282 872909518 399937054 315388182 613149876 932424539 187707307 423199948 931994253 405316944 754902209 459059803 979522358 617641307 555516816 988460938 327139271 591397409 789065306 867965271 103939664 74427174 832963594 804435417 637950234 928325947 762669805 235254688 113248840 708569152 682663430 499978702 495620009 284147538 585602257 74847834 92215040 635211592 40966991 938732808 324777266 495917192 696068236 38162405 271006722 331102056 895050261 504033210 372986547 690705656 534494888 923996567 827157149 986939158 632489549 407295255 802470054 926153100 160025660 689864419 464181175 973368632 492243426 786208821 933083800 660207743 309755515 789907132 190618446 174361842 43605065 888093375 242925335 716440004 583699521 776695945 749748874 921345018 382744747 454457044 233948659 662253589 896399198 458974166 548869266 860016239 913307413 220583857 519200802 170524104 792201777 147918497 168729400 898099666 966552359 96214659 784129329 435121229 83097746 764272446 618437893 882601067 300908583 144913066 497235508 334359680 900724497 394048289 828108777 522256908 184845589 137820542 679538717 648989772 736159573 756560370 744524489 592888277 915240161 327993911 79158932 468636693 417219071 247106058 810283335 275896107 378165498 31019201 771464980 351717867 654905714 257001921 58219305 102016052 214230006 914821893 524871039 130556469 636040845 972647554 987069973 408409954 337055087 194549184 214849876 527647636 914890852 792971256 934723258 287161143 861069725 484354497 393634337 371575428 155500817 147131451 622967159 693823292 755810077 255103949 985854370 487932972 325005675 725911414 81846975 226205327 123038363 800592336 792397387 152625825 794988158 220234684 662645887 588969880 148126393 309482712 534104417 797554548 314442114 799442940 271537114 519937166 653839476 537073456 578699167 181808931 8243104 286818324 807004019 556495122 2703706 41586442 522616331 787763724 289696822 873923734 603783600 745231249 965433951 827826911 144740356 50769245 819831168 292928709 540038339 295919399 649078803 540564732 652354950 856621508 263558601 251520423 978194726 125189006 517922487 868208922 911432781 504386352 634070944 817026533 236426712 331845138 588606897 839880258 169174188 361482741 699458805 74649930 846702396 18031651 316243168 509863465 202555584 321490760 223722071 402948941 984099440 454833915 767299022 399396800 493250442 612333944 657241697 162496149 219906548 669726352 73539232 289694247 428834264 629274852 33389236 831779118 275279458 720656433 391233066 928631811 352726944 255842017 585581811 49695354 136487340 688569350 586341705 419274235 960518080 587916797 2834845 340492825 525707190 366680722 326751989 73402765 249840192 637153951 640369000 260936784 282062931 842306446 964546454 267085339 961164962 537661509 534683286 228851510 884811226 424815855 495295514 231197689 529724287 992447100 551234244 445435930 489484125 287530110 866768613 572715774 731086407 874777816 323196286 385220338 265569242 336204943 78553992 954400527 137703177 663594491 427509689 17093318 645414573 18282494 879836826 263245296 626855965 816430375 931549687 366521500 990998530 647053081 983818546 157962744 169368654 156802481 312538284 516934530 824503073 175049262 288122958 358431875 70672695 369468296 537449557 839278807 131048729 774981048 182087119 587297984 841767772 842552707 601673020 706934988 15037156 88785445 34422530 840371314 120620906 855793564 273773290 555293443 197522159 75282143 486007657 320601104 22164573 420342126 881731378 838055790 611088202 441279881 638065574 257021321 725621800 79142831 276993918 895031258 440976944 463510504 381429286 22948782 113304667 240894602 475872383 781375295 174273551 351659315 305404676 142415913 541195061 585269882 147040253 684418581 553275403 42098535 416576877 71698588 592597759 540481688 758882251 727422720 558059064 11044933 948462403 583238949 802335310 396281335 408762033 767130215 991671588 324116584 611159335 450507273 131435423 717666645 48295443 495272967 129385967 298491828 714589547 555825418 978915242 366696777 87928194 715054629 211563988 860506486 623044519 801504688 863179863 360788376 532536661 223493574 890586542 683822698 290657844 966265142 387328777 471778473 146047365 841802273 720919862 540150313 832545547 820414915 950030247 861663694 288031109 306762432 188528955 562086129 921941510 261936061 194435314 232791072 456893205 922039504 416061281 824472023 659853768 134991925 913074296 590297944 307321267 994270732 723564261 513413013 800299670 398467090 347937820 356799828 60877566 657860487 167180913 723543136 742700624 184217626 660430854 881670566 98718722 758375196 879214014 707146256 736199213 732607940 135396739 974463284 847544730 188908339 721057007 43617087 279654179 602006656 456056413 615192853 522049272 752366918 118262110 760347258 680777855 970840057 18277265 933038595 60464840 662975554 246094912 559507543 871337792 995121993 984515478 182541692 74805052 946063797 799541812 40875956 394917974 877673734 746527571 453257037 159917043 659904402 894802787 940053459 832246922 712065235 870398189 38165226 365492329 454539831 713566842 619620002 661060360 873052012 663035904 581250970 50836082 940872597 902038076 792996494 324996159 667333596 950759436 830762144 358810982 88200499 301986319 733784251 472727028 928761862 256214023 187331202 251772207 521749916 571114409 709972223 648101011 519159066 300394443 567438012 863762919 79376868 103144029 404361748 107615863 907848828 153248842 245236590 459040606 145472955 239252378 966136671 825474714 933188329 755630293 241129662 842202877 524508976 498084263 940612516 365230706 961602849 967813244 931323723 263105928 28802323 923524201 897207298 597284449 980828811 713489070 476063432 626161501 621608948 825742513 394802381 405151604 136213255 456786868 132845992 674117319 176138501 862921279 213674498 329045672 442986060 738797302 82362111 307201416 352360082 299902479 780089367 104743358 582510666 914739111 258007648 840116781 641020617 675426729 142235858 54105855 214050642 269649333 76638068 527618689 129012635 660112771 599920797 797886142 246072409 50783321 373947509 187197109 405722818 842570254 210678851 769015657 717650163 547790526 835794266 507649510 443149695 68245636 579725109 811414235 527747566 775930773 488459798 78736533 581038308 584702304 285514409 169104730 364421443 135705411 209204527 95952021 340801138 609030139 529567664 145296922 354384369 699555955 589010980 428959636 759662695 439288143 860383799 683784952 2097702 153527658 139256486 239010318 930305976 112171678 624115972 112410859 791110189 58963128 943497921 257089207 676812212 807071526 84423498 741561546 921770465 340164192 984015965 226084371 257849733 660167709 110371197 656466621 60118611 830543270 461024243 861030252 235751484 585937534 474911585 360328635 246709682 269696469 366145869 585759975 180035480 278627429 755797385 238949340 767034060 100761547 296575848 242404775 719424287 161821032 899412907 89230946 206536463 539115696 525422759 654771652 590532816 875548906 915159654 148350857 956621543 344681199 278847808 404795223 657246085 989472485 26042113 622237310 219514768 196645376 675376113 638939979 251473460 335450029 739989720 797979413 517491355 124723831 613551781 338227601 561885112 998465887 876693081 850700437 950484061 344446275 922882866 630095312 797734819 940851693 565050965 118103822 679370443 334517890 530717413 200999061 785816436 633299899 283092781 303111763 917478565 837220842 759791949 895461170 306055120 332941857 70968046 142616343 375204954 220297759 710117835 175568748 157741729 847077330 521796075 435483180 289796472 581286720 45124830 497521953 381847094 708773891 911538093 593745814 650735107 175788459 639124129 51477324 60155547 858501141 698230563 245275883 436800717 434959288 923012392 884731814 822092138 440587971 53850828 215797167 79654615 42766050 982908645 962692933 61942396 116914543 108667409 778143 518323405 694020291 143961243 527026377 520877502 650004214 175072563 820808776 846537668 702183915 439471205 656074369 576530615 42730375 798531052 464888567 530386078 45275323 855198472 421887322 62977961 703993885 805913279 785286917 753663858 85874350 827265399 407376130 80182412 53621995 157104974 111413871 997094208 210032045 75635366 511791907 164000330 2906852 740214767 185653314 172943523 862851267 313489137 547606107 669942814 899853260 637381045 82748411 568334446 708549479 175133250 781945867 276100990 98235500 418798888 645764489 71807317 543261945 580469835 341894618 982170480 210771669 92484973 559460724 364657891 760422719 230004553 58502206 532672113 884358526 723521709 137665121 542000346 892933367 123945228 922614161 148789579 396236871 655599768 451363126 544831070 76854270 550380281 218794420 821389019 537744209 487438394 612647186 777066824 759823039 669310651 166648685 893609615 269306368 905436100 905196148 850635596 767749598 726989463 986152782 693170494 128021361 316701525 323636704 205440868 769773835 672951832 118553037 509006855 928986834 293797146 872659311 471777124 672525657 950688025 48818927 217591515 414054413 968425524 496399696 220198715 861986361 652830741 839361073 303411130 215013388 723070258 502120890 696010687 552164346 775283836 525893593 673207766 257980513 733314601 383662250 631340370 327179220 189380398 472983102 456810777 443206294 857748750 225218639 117022510 770996903 736993962 147253046 990490779 389699675 349201086 703515938 934471870 408213634 552838883 109924084 250363188 432672622 16069430 14100756 7772609 917119857 722607428 995781192 769860685 534958370 316754416 200823139 974573855 825255258 779247435 610134115 543396258 839903971 958666168 327215244 939538959 296202242 445215658 51798014 345757726 635617828 100749216 248635696 761614948 687438081 222221064 694753201 432524639 253817125 212294360 348899271 354651932 505437171 390715665 430436376 712241987 431354678 908805409 515110756 551409636 525214978 707899082 703707949 40613094 510286468 489790809 518100305 680114246 230066905 726654975 967301317 693207772 374560233 616620452 632521209 822772209 774180213 686306322 591469825 22887679 762617450 621766525 852084551 372479256 3748420 662270261 645931651 509295788 930185410 28864605 703670191 735754817 553138382 720977636 882211314 796318154 44694212 910494611 628097697 160911315 217169900 422011459 527461108 985070821 597167528 626891111 397931517 916350602 919889635 442206014 143335027 690981389 995498253 348567552 660167150 514380304 940294199 910410826 243706554 477725234 844422685 785095752 856145263 425713560 440515971 498680003 346700521 352032902 211304967 911324889 69012348 552417820 446151947 834537935 709037844 582592540 33268058 745470460 343460372 390112079 11052735 72469072 550453932 28686678 877958523 856125242 581428555 654530491 371579783 229039178 783487199 659786209 570458748 705919471 527461717 752976902 932195083 483727762 910711343 867288951 717981966 3883056 762921865 292927508 362857427 489732271 420480418 17870239 60582833 523889405 916889695 308262734 142462389 26565945 229878965 294750370 155236214 881375310 793931598 738349499 69243651 5434458 359697160 184776077 270833282 698858809 7852525 390617803 900024707 346067924 53752056 785430184 191275625 928130571 879620269 993231479 652392197 956954954 368098287 264060737 192981989 274138445 239340828 358090756 37002686 573516846 499276471 819079793 78331892 832073468 223785923 630653398 932901516 292069176 520028359 232176111 172154704 578579013 42655627 114119010 853023154 941212774 735446483 244800231 729041588 335935191 306819424 622819146 767939086 319461108 7698732 440042302 161190710 592147594 24294495 529749385 68813515 480323816 482869044 692501275 64872294 158545051 736553737 175449236 703615026 920521415 824218023 641184155 77126074 695191458 334536392 341380127 436880731 344578470 547594014 776184935 885969313 743967118 989178651 742022001 853607913 287404333 407720662 128358012 373853185 736460166 510290014 540162135 92271847 865830105 657309825 810462179 112429278 863643800 593250207 575695697 280278080 540823204 919597980 120987565 408962306 983879841 430081217 384660678 961498697 571960312 759167367 990163673 857436448 405331183 546899977 905637382 528304422 905981977 211008882 571105838 960557154 981511787 963752453 172111342 438061495 632785971 260549459 553546409 388564745 729273085 200193653 697019521 106707029 55041242 327072644 656486584 135830181 116067644 450995131 816508310 434392409 111717213 364957926 722451128 908195579 43464352 972059154 432113791 803329010 489846985 719565117 612521702 289443915 789958339 26142306 476449870 428464428 296774075 285399904 286275481 746080346 505954071 636841307 933084161 225651342 222920098 227367325 233109146 550946018 951736180 649551032 700301686 978068434 502476740 133117190 539011188 370390615 658256201 868341100 131817719 756173791 820839002 952917495 714118619 92083730 157571472 522041519 907781789 177051494 534871198 791498261 389039294 286976493 554633715 260149915 485753655 381933538 190787840 412393716 784692040 340866544 278640044 131147915 732827733 126529731 716526663 546480925 429806901 981416410 192019619 79787624 219270380 613287807 964580182 176599952 352670509 722268100 619320070 7445588 238232087 438870310 798929988 103444865 99447378 275863353 479936332 29370320 340320625 312074530 189135928 371599483 54276741 356092216 999489814 31023494 62502908 195130535 312735999 694967154 805229645 555053143 171772217 649363297 148085577 995760919 891168711 452541115 288573514 739109389 947713746 751439398 284692701 547910801 194368279 837610969 721583316 368782309 714008245 958478852 44582602 83745037 884605608 950916061 296714732 44012956 592086164 725090739 385351406 129725637 715759600 315408745 772247075 141470283 136322864 294922016 878699026 510204680 953987084 898984724 709013587 142027839 874534510 454100639 335809823 584681802 62918636 667920151 408008036 923404242 839889540 611189900 423644579 423070241 970092643 167114664 505594777 475315993 642444155 267361463 192789528 314894916 84692429 235480348 553802721 739767806 540511240 38944398 651693426 550226426 555566243 809012823 468318091 420944201 364092843 387315354 693962290 109432181 505803314 240921623 105197172 994329751 944258157 532683258 455532644 268837647 779450288 85240636 743115749 692252322 798988442 783377728 353813014 934413893 962241174 937047284 676802443 225405203 976751577 499830721 842730536 330115844 344901286 174487673 649937870 860119582 45734130 175590907 204097359 801346551 720286628 914799436 707076904 572334553 756380980 980427949 149116457 173535185 198149209 354715335 23311931 409692060 577681806 850961784 118403938 708720843 736886583 113047523 245816955 367179470 419653442 405715460 580292364 935798075 877308471 854992282 598352997 65988963 117617143 457195024 488120661 328259706 110011160 273947051 260775343 756032340 740731321 348440120 450596069 578862245 969662992 586421968 930901841 987455479 831463504 380585545 747459965 834432572 358636631 201138525 94040494 5202400 662479558 18985875 512255184 667315123 595010528 707911886 270289643 114387375 910742237 850925949 964051685 222908010 691678662 695507692 211248543 632145861 967039120 982528317 263101088 184162844 880942217 631214906 654162945 377721561 283555906 939220327 710260913 703345115 798131825 882977915 971898685 852931859 790549465 306446403 782764232 450710740 986052876 976669775 804856544 161671321 57560153 300107163 681477699 653536292 905576411 412029659 745000031 656847070 859165048 388291845 362472904 101847986 602802735 673859770 418139998 42476224 803443478 5760442 910455494 115189375 794929118 703833708 927043263 557837843 754214226 866043250 353493066 613355535 51771764 981174894 858861078 58033972 551808065 660525620 223218049 199453577 820688809 182638675 233652100 370064305 297858087 5880818 296715297 212197227 698242338 893557642 765871368 582529804 301867901 393322265 225241618 139780705 558852473 160833813 961493390 601822842 546234111 457747001 197821363 957231410 804378839 471020317 320070194 267882524 523391907 44482694 545228944 968444427 773416544 474206738 440725418 194543035 904729737 340195116 506898986 664489 539208012 562152824 853284943 472536897 838768751 847937661 750056425 254549224 781501828 866038250 692246129 491570518 585210550 775835996 146432153 252703893 878155611 699697874 488066844 371756474 82110343 390864242 318491022 873569787 225085478 406114236 861483403 862697308 365927851 100589275 31967816 89318404 584726183 644741227 606053989 391458988 928742421 954488165 762148357 881576862 937011067 824179716 471041476 248045006 335737492 218711626 828179425 111064409 915469822 288030388 541947363 498990966 225752448 409026743 714335867 71728743 195028830 104016532 754244234 819975921 897608027 453968815 39204212 234881927 860477457 224541876 436406619 836257940 990823913 452194062 738182351 209292255 692926442 889586832 519026994 238689428 852085705 405570562 581951963 37827040 188655938 850147685 35108546 695784268 23193689 904406267 976854702 538827682 493961851 384558852 289377157 808176129 422608749 939691945 726536389 23814759 936664256 227438658 659510585 53786270 391469070 293063566 207861172 385453076 218264287 318419104 325419948 507859575 507689716 652586536 579384782 906094035 173557625 147961146 569215326 191466434 438968703 316546717 128856923 581294968 72983498 546361483 385525204 374866457 503601697 598926929 843209364 909992428 97072255 639482531 322861766 669911182 28497602 256245627 760211341 717970560 470157499 985959195 764593142 599158454 17886927 198627036 545816836 106652224 659293323 385453382 742390064 335233598 940990297 344364262 540528890 726971905 803762926 476720163 520217246 779756858 723965651 269518088 931306815 645661280 934368590 465290654 84423276 481772339 320540501 63096782 247741912 472947018 962936758 392669053 15480059 837864096 944596312 718133476 576636913 616659759 371684877 714236074 417594547 877908696 365834918 183589425 518885594 888137008 113682909 415231841 470106392 293667626 644696121 962603413 108509833 625807305 203214844 716160249 769482533 606330903 682076514 836441860 756416938 658768678 670597340 280035297 642154027 515859175 171010418 696482208 738024502 176347689 410840860 89762930 805172755 151323267 988463093 549589157 241373078 664957820 570183059 824255565 99604100 334747413 752968296 560936873 555849761 259940425 263432890 40509189 436473653 445313723 786376322 172494577 607840356 620020750 919936371 387694643 548655147 258213976 756368978 926917347 76794561 553807148 749809327 869218140 449267483 8795572 46452199 915365248 840160365 889227072 164895542 475191562 118956907 370342716 623998715 909075276 957569941 792029036 232601426 909781005 376242237 667151254 361933063 952791739 111799586 499943997 513855573 398514656 62247970 286120867 924293711 42174865 239598899 12745556 397617205 346438747 116261497 793287351 330948485 613210534 80157000 974303785 967111717 56116845 327649254 514618664 134776489 529256399 412567602 212349043 249367894 925783290 693389345 688427386 467862948 274700550 570933783 777229178 576212040 610590116 941701195 821982739 706253307 866654085 100177955 331618139 891156455 910469906 774741852 643202730 747892136 868028029 949505965 773460513 234283889 950563004 727602195 793346052 972346340 23033528 994328541 440708139 695408910 23719978 726435798 893546330 780844414 463332717 439065236 16182320 953709683 762789052 31742750 602310631 272737900 740715344 309339052 205240546 114531211 520012680 980169326 718924962 25490736 561906118 680564482 591573999 466786164 944516554 469119204 835070760 598857557 887903483 274985551 406795546 349203977 552150065 257912457 658861353 923254086 763047445 540426299 408527488 311169753 28052434 717435556 909821068 961087737 875700323 925586003 660681610 756160350 599460657 77113858 405565990 515254824 516891069 596537906 196421715 424668683 833865879 758937138 101752910 195826933 866648903 784368154 882126279 267082733 550166667 183211714 286971491 770188971 449022537 747133411 539671361 39770268 553689990 784098319 829730897 321150533 35370989 637235200 451029130 749779033 573947659 887114999 301799089 430053970 156427232 568374340 752446983 195834536 211918819 104996252 44368404 951440649 291132090 554078386 906525 604418125 24770981 973524171 782623011 942040607 995382504 414087336 729067814 155089372 450315009 668195745 174124767 980992885 95626436 512939285 981851835 27371518 147389404 981837759 823877939 947960178 740095860 347837386 937973679 383063523 851297350 303038138 317829438 847746054 561711668 628212158 309301803 900450348 897495870 408196888 986763560 995796047 457145463 305893537 706318092 616732993 989286708 724427392 631097008 177658198 575478861 94742767 92295627 983450478 430571280 932030975 896528233 901288038 855203442 954626456 839145327 797477566 252577023 776578002 508493796 738060962 298530476 285713465 736425458 120137072 869185302 259025829 292902194 473357359 705095710 692838692 885605639 644269207 553148927 189540456 571830738 688826059 873293913 866478239 633363272 665472177 558467253 616995745 507672460 35084248 705878773 274713885 718107629 75540151 181622187 502166464 125786909 588687333 456971944 421093436 942502211 360231540 101605780 582236868 289141180 782059728 61734463 18701003 291791702 213414066 64684702 145477464 25560316 91746069 391637224 677310658 399228478 253594522 969317568 449733904 169261263 308865766 61081825 70796622 781436933 993102277 970690859 85655357 317888505 48976233 120461229 719695465 606109168 378700724 358083397 970817644 50455501 66315132 525669373 686026762 606663092 642399194 802092577 31778194 100017669 243173991 672294599 515974379 881818049 99193608 451475297 369225252 103235678 607764591 279305561 83926716 134814199 595743345 20431859 346043371 505910050 88742333 889071948 354995282 267019062 777253214 258959331 822863965 892823301 700751140 166863442 525938170 246297990 374282928 571390858 836893809 836367101 601871839 290911735 505786607 49316926 187014557 974500302 226739830 449334800 718379743 550637340 337494384 510032303 690120179 961229462 131311660 494832790 320772242 625119884 502069028 999507411 488468675 103844730 857564520 823120445 190344354 225348559 600677274 564104210 443713250 971981131 354721189 865557768 236125523 410735123 369383524 619728630 302986444 399367764 126750979 729830792 203987384 433943386 998309449 636162272 800849284 842765664 175873089 361265886 347250787 447565756 613927328 998293503 89450309 977498204 901906981 672970864 353001429 3732033 882117759 859809374 590215736 480735550 496768704 818844341 565774533 440176890 269192041 974672430 386512173 601928505 874508744 494834877 959176024 39492507 188165269 120548519 358030944 17260178 964253696 120155663 193304647 328015168 660964487 461791343 445685744 257253180 9452184 688110540 457754327 709471236 44266426 740233564 13356629 415100335 442533741 849640762 63123208 445130423 954051795 168370618 126466886 981075211 996242405 558664739 568713306 624620268 700269133 532469334 409934498 667055670 959734073 915951167 649581626 877460737 730208888 790561152 106088522 727608850 753707252 817585023 27934043 110334350 821866927 357868782 979139909 879117143 688760149 251623656 133833513 918230865 529175991 222262965 377837237 340362369 999350548 208179351 936426302 806677698 588380203 828893348 441719009 965253410 686826669 904396485 493793407 475286985 687815947 599441937 786822026 910383075 543950041 192308309 345348015 202206984 834118031 328952110 538846095 970594391 304712412 855858215 657721510 129555775 552960228 504857304 982586729 627730839 454304702 863384396 257761564 526929147 175764249 436725790 682151378 539906065 416482200 55781219 251958328 819655771 1194821 840579904 658600143 254226742 320105455 118016990 183668008 949984737 43059528 902453609 377727854 784101595 634343408 999721454 540796839 393779123 405451467 599545071 29373069 723745642 881281764 604368120 34571746 848460737 119809865 626126486 19770311 817663459 77019712 727191328 561621295 121006710 98996348 352482751 242745345 32579974 6046698 509360487 412065375 565656715 237041133 436933138 99957817 472606266 955456169 513426069 104717590 135814968 636546784 836694045 995662693 900831959 23869112 873416569 598624455 665531119 120145375 839313962 889405545 574044685 124914477 579436622 634358265 494960290 665037377 734661649 780867961 330086399 487794757 883190406 402537463 206105 31271752 361183061 178499431 570521591 895876275 492767911 572506280 679898527 152477130 46550652 156542785 949008143 360266327 791414863 285780213 481282420 502343392 933450833 983977205 443913373 437941803 518090736 851258109 801735703 259895016 984687537 670735850 513621546 731516993 134795369 836623054 789459695 469986760 370132512 580959844 349799329 785488971 582921432 766674267 491308860 386807053 441812377 451645311 64531116 180192458 778465680 950191564 185645059 192932898 381197579 988116375 557829606 438986630 384271461 970505120 49608785 112200294 507831 226722161 714292519 778916865 726847453 920199613 59369591 870963811 959815828 169810393 697882371 119386486 991195368 257537397 450996577 369193822 770716716 922535372 410146617 557705147 176346094 393776551 717197931 866828708 225495693 339651854 78299487 703106528 503181736 156324098 726443374 301736255 885710266 147672392 982263830 944483717 795890657 361728191 685800580 190659607 256638221 998227394 180308043 387912156 221937373 576391986 200499016 74188740 846307128 471027700 51345016 512993506 909966468 637493039 113282688 356204292 778879794 59381479 891004867 545614769 537336082 605114689 596713439 285485083 283607728 971079785 332301339 733395997 203468986 779634566 162814039 653336276 433434448 288531073 401776578 913788863 288539796 77045375 331006715 659413937 165696291 763947384 637614607 556430941 39883895 249208708 307344586 225125506 214713188 681290511 719531410 416130537 183058387 474625749 123651605 748127124 629351100 1996958 631467306 988009186 61090653 731455263 687641596 473455417 999024045 116882756 850506140 949389002 197588033 849784515 704959213 770637710 204390910 453162271 971379736 656441424 676418844 195604757 262494180 523821261 548640588 383477151 652839982 535063795 97467890 532965126 91102407 374511104 910551603 92909562 380793736 877055374 445784089 289922411 300379937 218047489 904771006 252605503 158449468 852399431 617529635 511062610 602564570 730889791 426560030 639797421 85028464 394241164 937238344 526401905 997657938 330829049 574699628 59689069 795924064 888481770 921637824 23382711 597732701 934427383 955455159 431947478 153332358 179440697 448275088 110786232 426454804 551177055 303421478 794749961 70861709 850060119 551284407 866756158 38559435 121218850 277312859 511404735 928163095 958996234 939635024 17197821 650799241 119700230 315100394 443542018 89991121 371788925 840783936 641092902 181896403 940614067 597363419 276256073 584898797 237529836 283715109 229992943 179381286 112447393 920738080 156157023 3240713 271840359 468374944 604188950 536139527 871488760 51610741 221249274 462673650 199206212 55829432 466207317 441298241 947046787 744623840 102022865 224630435 754653610 562577182 531398165 979750596 649012381 192123943 94631593 868897243 337266334 993536016 438345959 941853982 993192745 247832330 500702046 413556962 629341844 999697781 625071957 241437122 643238500 54636250 270249839 106063508 252866293 136139646 363736918 143514563 23305426 148676554 590861404 266842834 832547524 444852259 284973828 239591169 113452713 386823013 494054725 605707027 185432529 890440356 852467534 357887392 532892948 581225341 274110142 194370473 497370573 466026611 253139071 149215445 961167715 691215975 106100923 809793093 272665851 55620471 551625758 594574952 246506125 893816567 857538545 314238177 909655562 927516190 214362517 945265102 822675347 806084432 282763816 70001164 631715461 984394042 742032842 329829143 128266099 686913828 305074548 915221954 240924100 43454148 549727666 283710678 513358318 3890181 573616933 852429605 902145186 357521340 848598161 595657985 648380052 55429416 232027602 366792589 772786645 932503587 57572933 157160997 870906256 970338448 366943529 186571081 361249421 463400997 184761379 811471002 462078645 445828754 793904525 833166758 551957048 440501924 509926519 316711428 343153740 836183498 995854228 292593412 69904700 770576846 610276509 132283088 715826113 588090264 126519620 411622189 501386411 129887421 232941678 431458935 40036752 650653753 930833392 360131554 571275032 397198389 205293783 983397564 589253512 1550132 24334779 680286520 868972199 941497167 112706861 43882194 571602115 20795994 235658001 732795463 93766721 275686907 367334951 857571041 977936703 238632415 267914175 652864310 97557450 675475334 545561420 245812371 624266841 907095236 264251251 945480434 580368998 156138385 284149590 897728622 359029885 14867109 95646892 655959566 660150925 433330779 288159214 580176275 524351066 573743908 367726753 670377080 951960310 413998786 303261017 166180470 294973768 273333135 182536234 101329446 186955808 346738306 842556863 152646131 959372665 363027606 380401161 458139695 522647070 1245317 123768292 777107167 838851910 210619784 900196382 307130456 670675435 903649832 381957864 535647186 208603915 790577491 23576549 334134758 797639292 639260725 678843585 900283917 837938458 11590642 320681253 295266081 122018974 118557389 599829197 645982941 931678190 996451195 407811354 382574539 133784859 874928924 131701002 593981132 762233755 971317190 204778252 941974500 148062516 728653259 51055748 68469375 981178310 262567899 552645924 885739577 115726029 203862473 594057444 570432174 538628010 689521307 392720584 627253818 636928548 267885446 484953925 995276226 872575932 57635065 969803810 479373383 715589027 378452390 624931007 542259262 553907433 948548427 750217000 661566268 212892533 140434431 85612903 972733212 717830945 471441848 319769077 341370289 781781481 402617102 35794940 103432607 632839190 65145996 89645529 969148196 676064862 698122476 463632725 606513405 258715785 897150293 733098671 236666728 472680817 384208820 920004209 546085314 456363763 7328482 10884178 748198376 123463199 451821293 639370507 145024980 509394503 523036246 517734884 441765598 44943111 740685865 441716832 627122613 102679591 962518333 63340148 555615844 570486914 588501605 763151572 784456722 570373097 202412860 288687303 353937126 105738799 194823465 918161456 18227460 176757826 327250268 499916174 93217894 195970366 283269438 373661778 432460739 61327676 935522492 751130561 356783548 931064840 474714307 297409493 341901381 507521307 401717308 507674418 968956776 339123901 565750347 117684183 672796590 181489530 350376373 497206297 122225499 340501979 81716150 958169573 915887777 203610616 183395491 540372615 691299476 76200177 649495686 797030810 573014797 74645276 32195227 952970168 668245368 265008158 524116244 984743449 394455360 408382571 688951295 986190584 957781998 367971651 286113736 396125721 543564234 840347312 52544606 995972086 222695456 31800418 113241491 351363760 297302929 419682324 487054154 658330952 355312193 894335719 736509391 362816836 644999447 969801548 955261458 951191815 560211261 559656801 475446623 42053050 932951916 507641645 658092252 391118122 181946734 645413319 885217632 688016242 650310040 889567190 988927276 395242898 983682676 580647338 599488928 113537861 36795969 342545614 601708840 865096352 358544798 244603637 740471350 141895879 840889907 355763397 326779631 448682063 520330914 555108697 226212860 958493413 431928944 64469953 878588395 74358992 98829676 714439494 202633770 836531474 480625404 419581146 865275359 605424653 551991419 841556080 73135079 741834599 815484064 745615207 845001489 720281983 418939086 489501235 390206764 389895284 332986245 881570832 368133170 692928958 746061438 124282296 137452046 982922131 158682918 189885345 437387274 350537720 215210942 444433554 894772272 350338773 748766729 397663777 994385945 953715913 648321898 365964453 195366918 665196381 157358085 938718307 393473857 331981106 425713689 404126697 389413991 887431657 979175352 590382381 330188847 175709993 785293415 329763097 636060836 399640475 69359048 11770813 845807964 482853887 713497276 956431072 424569529 701212571 577253357 802400371 886664667 713727823 923645500 145728389 618586235 621839378 13265224 406225468 409948721 471703105 682276221 81148130 371992710 367182513 205330368 516591229 404152049 114540456 346964501 281334345 987629302 802068390 655720669 337092443 127875077 656192314 569642344 124082764 753616204 523265586 870029322 701424346 42992199 759775269 673105269 539757482 242785823 680729901 312521058 323142621 111087134 436201797 46964974 645107256 721515527 548699165 981125983 105847403 850634531 749441984 619978636 627399011 546333837 264028004 154008938 8688285 577929292 916363851 665360188 573476996 744769488 877267687 538441579 778657417 777475995 167465248 779171887 709598134 237523423 453163336 703233879 217634580 652307491 892148154 2413216 24824296 242049483 898289930 142142272 508810787 668920784 533384220 727559299 132700145 168398549 463507224 925313404 957525284 626515354 67809727 265974027 689993555 45520755 437316968 745829128 623170896 444908460 11339745 47076692 785465441 362703001 50619505 369844295 334245030 761372906 663496606 993801943 900850193 683640472 392003518 350595206 691351453 815984397 700775059 951645478 714270377 463670292 668032958 130834974 8673423 189866018 899846741 825494411 795116191 412529263 450925021 814036650 932866014 224876967 149959665 98713294 68141691 187228236 772359468 729518890 885247996 329782767 464211771 518527523 856469303 758036563 207611230 219334206 872275353 205659723 514461980 839068982 254026323 934665053 311309350 96885305 846806993 983141316 569041784 499342706 924926841 33738050 914769805 11165163 278889160 370427127 793185000 658017746 947700487 110078383 980875340 268615792 646995012 364938461 284745987 870876140 773654672 401013870 719973939 894238947 261306161 834320470 341023243 637187796 410910148 607359029 788139376 131365011 110294269 303396653 12689891 269517250 410628921 68125966 822680006 730719051 864555231 970916035 829253547 46259156 359228537 522145915 113863716 688684299 664074517 836124314 712798900 230439210 67082202 415892231 452144631 135092820 717604425 913694022 328983616 667465330 589121571 884677235 923234521 274565303 713126331 794111574 485780682 135843643 276136281 47965764 333708032 373600779 149494934 603937650 303644279 712255922 961476798 713941687 946185848 659446049 996014558 219922478 886205966 919436949 595002701 154537042 441748348 46286444 177645985 155344439 851621444 719394064 213349963 412230433 989471223 412352657 532170881 672376940 637890048 226475400 831529834 95776847 741371231 145300163 728530829 462271884 796397095 162750366 862357640 162955605 918695485 816237510 18989471 915735915 254294287 14550754 383060117 146781987 683194724 120799500 43114866 364892065 51242468 987674407 275062465 525556015 224633157 402905886 477315834 895622292 847756190 422092928 928983755 68485236 257636323 121408213 57007431 949154225 775652561 337580490 151578811 426966724 376995413 781074674 194124381 655774574 343704571 644591120 847471551 635686591 107696155 937788773 664612256 394185616 745304382 855803251 898767475 228144404 454805029 651400804 295264187 371686083 753516033 274355690 4198991 159035381 347502615 697026987 636399149 530880025 953814992 476542843 138356428 999735748 870077336 735754525 555708094 814156720 241491681 756360038 609957424 246694380 252968995 554667674 119494864 289928510 901369788 79815162 986783809 404270837 218658549 122417096 485015318 544363877 638757651 927346226 326674440 751731449 37391916 70541930 318562777 40263404 337702987 660061442 19283677 330797766 386702625 214701948 136850022 765603474 799142843 432537399 611411016 392746683 694176210 474283763 179426252 911954169 745707546 585787229 668171309 742144098 764904989 994703649 891334121 230556984 222314406 8635206 250842350 675777202 103969935 861750716 600819908 96198436 133967361 594297816 801769652 471580815 235580521 304531709 275200440 394798371 395219733 164329711 861818718 977125566 480245846 420265490 733434015 5155540 809047401 208193853 74190128 743747742 484760141 368230745 902078660 873491413 915374327 612261160 502797867 59493972 512665062 149545358 318205087 421597801 178123176 89522698 435829917 631696112 145438731 420160234 323950881 17153626 6046223 154882827 292199366 680629778 537730891 788203984 394169567 460314579 661864895 756145941 858312783 130486733 297746029 978438217 273899383 46973695 484237935 156210138 922407265 298365069 187843358 493980430 882459045 370065574 143559551 319312188 751710034 130525601 904614229 420990744 235244499 74859936 501908742 16495896 420377311 523212783 476930130 41321796 831095978 426648092 660899623 70354248 641147193 680583939 371205009 557557943 384650515 399233116 240546648 407674289 827660271 344944617 299203947 650933093 946868168 897441388 461506945 444129329 231971027 855841869 787935033 406380955 29956800 222420282 65378116 257174735 546424720 561661412 265305196 43488182 354784888 890053693 695292610 994511559 645361784 674786076 422116943 535487855 781408619 829655280 660406453 942309306 337518611 951259879 58349081 69695493 20506637 676466836 929174643 742096037 723500411 772055172 419638960 428437419 186148414 235751068 419698606 221458336 393179289 781315770 824513662 159402119 494188834 618993583 824474017 148890116 121551572 581051631 637880487 57679247 31894113 773250796 296207476 196900599 639616389 702698743 979435843 464631014 723613682 450731497 45428235 964146629 225868877 55631909 229401391 105378820 284202706 360181617 82823218 464202829 525014600 63586065 558673465 642234565 941267693 29588381 722808414 651408798 76785327 953498569 575149453 341496513 30798870 864531886 16388638 893003198 164560357 767929827 80556671 118323179 438485069 561133622 765728832 53812643 680075913 940839819 329348032 106024472 63218590 53072338 401523004 338228112 802467421 677471680 332209475 623612143 138179803 79772408 80870490 178519669 245148868 609908776 755910398 636564497 865163510 514510269 65820870 287088994 50516714 771788731 897664037 519153119 751098731 25647527 221670575 724827190 97001906 36399311 513132506 607940632 313381847 531672765 508853865 397527431 111759939 977728969 300676459 993553964 940463190 466156222 394302038 902676935 209278677 342404467 888397699 646388781 246134509 701889606 202703419 831548009 168043484 507072580 391244617 176216754 920107285 708993290 370296617 167305358 509077917 768780800 871602627 14661368 435050554 625790943 361805669 279520985 98649408 480325047 528022200 989938983 133449202 5867568 872242950 230698194 571165186 682013735 119172731 295495609 32958492 869563362 208498809 10827939 669701262 963460508 154131916 987710143 412133924 828466709 254503781 634800603 730377799 668230621 278869244 418361924 546179246 313914110 239183207 804612182 906873454 913406263 91380466 861982010 59743318 984263881 529162196 273781429 420425308 176941184 984289662 662991933 596660249 45928926 383705091 457940361 913021974 163956680 97811461 446119841 790884347 621922621 173257868 91131809 973597179 7444083 444238341 935914955 317907992 553314098 792190040 928791226 650386618 161827837 216675984 172409226 237767639 854325622 142692229 987465781 922329093 64641052 912591409 478289897 901398177 801314951 446308871 454650257 548351816 307837656 341674201 632741066 359097081 648314745 41341374 385721314 52672424 476284048 521268639 447873694 738978533 741724582 735459373 416777765 659210760 991613426 657543641 750990585 543627361 730748527 330732357 349498700 764800986 698885601 995297640 340731219 830473687 892204761 679890743 916320180 337627451 206317235 319938462 46767131 256192928 518019390 42276102 198679158 763214156 691184312 10964527 855729083 656699474 899266559 390074564 575871015 60903963 779282695 296825464 813952306 284133330 808409214 776640673 805288818 296760729 33584854 70277817 398213380 714963236 265360684 522832749 866097037 983859463 20814137 523294804 912103154 619893444 425358510 727742078 626098082 837829822 600536919 723715012 920715213 260229554 366337947 159237735 807902393 817802239 393469691 162006416 966738449 269702852 625583780 356223577 718308964 14096488 529118547 707673368 430569156 482854812 204976661 41658476 96717542 662712250 377035231 231925726 192039680 804220253 152445457 371697898 166100573 408393510 563054191 62325207 158047418 344503706 100239377 995288853 686219176 123202622 483196422 771832363 148354804 587347744 271165799 483422288 385229975 383948592 730692694 577340060 848194082 72749184 138091490 324182780 439479296 241775278 55630888 291464192 565188713 674335138 645699730 527218416 52418039 56471634 737403991 28731408 873722328 477451676 762123953 227953935 279431372 865772904 153731956 367661922 596128854 603257313 563855268 870672539 598046480 79584587 608952295 215088201 688515160 24170716 338920253 961472192 169112884 22163059 688885042 799435216 350421314 775604954 13732769 670165795 10942414 122764680 542646354 868622186 346657167 232247194 989238197 570379945 811744189 159894199 111451618 258885919 101381466 125768779 167750059 750874867 396207297 358825157 704571657 676122762 885787609 748097118 487703165 544989634 131560739 559163524 633288701 510418988 687764068 845896586 335719564 174079753 305296471 52599715 595490664 105460452 724090444 46986772 700588562 859780395 3775877 250955456 93992172 142845019 981777007 517444522 677352897 29286214 493091733 396331754 29812350 829342325 950595491 234520977 835540148 733139961 145600109 596313179 316886927 879466090 611501031 310658850 458234640 794513879 732880431 439012621 811073229 196720768 135369720 829051595 656117623 796043408 151727285 247692351 287682511 336014893 536082805 202309546 565859073 795266639 102408383 461732940 673829022 809301561 499258597 189140668 271149488 928242930 755735033 795090923 555487305 639080059 243330875 269909741 273216945 110297626 389582806 631936698 272296786 584607337 622661992 426309679 338492475 740878723 784407526 469698225 682818824 640283102 575170787 593042081 738424194 661578343 385239559 576619947 995949114 510494675 661292995 370194980 427865447 243835974 620017705 417478718 920286558 829194138 670549135 504523841 254977943 852850462 68478693 134870412 595303746 323140271 930358494 539399822 507854055 205204888 562726746 870532059 782075849 904350686 68387967 124270007 330225189 536676199 136440855 398715095 107778929 468965136 39575029 218813479 921252556 32861280 860538152 317577607 161316698 74299510 985190989 938233455 73414377 764640425 951801329 593150006 62331045 327062995 718530135 576469363 298582439 826166437 905916159 360937060 291289972 250417595 675910122 864200074 9854918 87326424 868591858 482847761 115620325 954704322 530286029 251874147 639272959 378851038 943014696 254127589 22991458 716973265 533493377 900659291 354929379 536672093 237651492 448209804 816208323 191516724 7083477 39751584 441773947 400245208 800828342 598286781 929514709 301209288 546629771 489943833 791081253 731069509 574832544 802927791 509516120 794534691 832340059 694052483 854793443 278084823 906727195 339390955 202565902 373094712 700421026 104205872 518411210 90010418 825249285 654746255 785965080 862098336 783963587 302310279 98489322 809659860 621808549 299595017 957769007 589317502 934028697 62100900 918324144 247586538 718791995 269218751 34005726 349210835 87889816 18609180 18735175 89867968 559429421 574532798 629310424 843946023 89488444 558913414 858738674 931495687 944441435 299557937 879704701 52624959 958586096 815493922 14137434 594355026 888005420 250580447 485664454 741483660 546009254 160032569 144370526 236556744 397668193 816411243 899009794 322830597 433225949 497058390 60273215 87781518 427736780 645525945 823490500 829940735 963837274 779353002 234136919 316249081 568288868 935793907 903730727 938176717 681338164 798566956 119088981 655223601 544430890 6065212 875568811 876672315 777612380 645224408 58290189 943187387 550437199 284737965 483025336 266812699 997148881 442390668 664594431 375763384 547376099 387146736 105899116 308385001 462847161 189662944 369382837 723881280 787962897 436587055 319215629 844001988 199812736 36513466 857744396 80892377 667356329 457355117 986500077 224412086 308237640 41263189 233255216 687263901 281532304 359034414 249122217 439490950 190607206 854273310 890252601 476801381 48579977 723929510 121653435 388757992 21438057 45879451 527679688 471893590 75636079 291721216 183875852 980581140 952693751 124829076 308120130 527119370 356411563 332358184 716793475 471831754 402437298 969398710 446017374 988988823 440928304 843325368 302595135 866171509 13025877 918973029 379539125 391936486 905177731 712435449 312700138 629314427 881267647 188306782 774484688 833308834 215110425 426005032 334514998 746229602 588528381 622990935 444225215 98426995 333429711 510903963 662695849 843504263 351239353 713443843 10575288 908528255 38836967 115949948 550219881 90103486 480732585 44860257 787098134 887249403 920733043 863894272 211838353 570748275 926505363 742096576 910608496 892651515 562955885 776340177 123970121 129111189 275342851 962488937 171619763 119913077 962492042 83197406 77739075 130375782 96172165 735720567 210907661 34002024 57910584 96276523 138569962 754009716 519101473 755262278 74424852 632331966 95321206 729288149 561701392 252695038 702602298 90368420 502228050 856263936 873055030 746327971 745980601 227374696 483226534 324435443 505691730 910632077 751980277 395984367 661591984 247635900 935992992 651779879 305474101 721583406 237629892 831461156 299902175 551309513 247226244 371482042 390138899 21589028 623781984 17893058 239023407 944977437 272776191 245406587 704697440 967612480 895091208 410060120 29317618 510266001 870123703 176793241 714699257 694389256 117538469 274698440 596282193 709749290 507996812 681609464 322142919 745839921 849975189 468259757 240136307 342049168 189972451 334299800 410392234 276018253 278836157 290555960 555240999 124237170 635447670 231470435 801762255 780291035 796024079 191314330 806172563 713606279 494116158 553772453 420810763 518787734 581132221 950279147 632321836 599156413 613881257 529287251 626680226 261251284 868275887 855389678 996272696 958057385 451599488 892271118 83536950 101865507 201488911 619323720 933374195 146664809 731182142 157330772 635565209 151842686 720576676 84449564 106247922 567440948 447254729 596384861 148085137 157522748 309937371 781218602 347982904 606329876 344956101 418998788 67395216 410050197 878101283 334318940 175794743 77681478 58307955 135732445 41296364 265614755 488700540 989611649 119634491 542472740 742909421 898895830 670481706 47854308 668606246 884170797 592782672 139114121 995226323 220773581 305748261 110638345 634336904 776094875 96230663 796483779 415248062 178020287 366928041 404740254 99237081 164761172 176973757 780335995 829032800 503654478 271466253 731618401 920236784 503986425 434335320 80728179 39722600 108015114 138887257 42310354 1110282 615258588 343347706 257682308 538624808 440228533 179093397 750155607 607040239 508357652 921073630 725647979 891901164 603529027 2688645 976306229 142327498 238574452 827160378 619150280 369188386 15109708 584451187 318227501 682907061 103002675 554014316 320278996 574470682 696224701 428629062 346430953 147745725 273232055 763277194 306509955 118668224 972801276 190891872 120622076 698289624 978889461 865668196 235114507 40470262 17648816 261163048 455777871 185702096 951548428 750105716 379786309 703078168 100142816 582602378 127801169 148836908 925943025 228822300 705814280 639184538 791884544 650267139 969900348 186427478 406321419 190367610 816297790 900217356 47964393 627094138 373166571 592206556 434020724 730739349 580868642 753144746 555485468 72609564 704903123 688611086 148180835 433084001 345061270 432111928 187640048 409642151 602326881 980460059 238975576 431197048 533491207 958222125 150957575 772390537 806681309 573180418 576796280 876354146 984082426 877944086 420324157 770371524 735080063 643204165 100631057 110410930 566799780 600411152 557035389 631593239 986083210 854025143 183019263 442978452 309740163 907629110 177029437 74328182 115104528 461862287 766334968 76986050 78840859 743361454 117972590 551020440 589059439 392129659 301556987 108524744 266337113 903117785 44218570 580148328 209508513 303195538 404059733 788064738 358751008 738675670 327940443 585824288 795807946 410689475 579369501 412139474 868352482 656305416 306910725 440255066 626852396 655197582 831649240 520146073 420299148 630519364 993632012 398376979 560383344 939364624 847857517 284463027 199437139 887553815 234210186 394513970 891894463 27056211 290519796 781557793 770916834 137655162 384356363 254524274 579869736 702178930 949759396 157147034 796784445 310436864 390127878 925296569 8538748 943797843 8779398 961883285 835205666 65552356 903844272 661232196 148018583 768743492 493806092 367029726 998178164 374579574 652694562 312842327 408017257 27959851 54664021 614535791 144560579 139203769 95627298 226420106 981892426 457710513 494276217 414507649 562592393 685200059 3466045 763112800 679509522 463090704 425563063 116566723 993635450 917560237 600082788 63713493 599166706 540999375 105478805 872870264 391514197 923978743 726796919 489961724 843788608 770079120 324123447 189654871 452749275 381009765 101660234 580308196 761166840 213481787 598690367 901837607 812733417 697653249 735585261 767334060 766066084 154551892 65313379 816597330 451238507 402339999 435690933 73128058 224060709 531038944 719198190 225873284 605972360 42553349 113958482 782977326 776991367 274063524 401908739 27934922 48936706 291028727 139839053 927861099 498926275 337632346 106137747 417879467 271039130 724836069 516261400 499563385 519741971 212566537 53282318 573677911 909639995 163731410 916816864 152991169 282736887 305795682 491177216 825574988 551032607 343827869 799158185 226827463 517427241 655954101 813089165 59203190 921484277 725322972 773296652 526191496 905208807 407851920 678739258 474531055 50371977 173663278 701277319 557367315 932068251 53725314 593877415 85436476 803926894 440157682 416014348 993981027 165400131 361911931 63101474 496321026 475371234 959122467 555088043 630549800 525015306 464762505 676069468 589159206 912366679 422391582 147189036 903657984 564957842 807800907 954566100 173581388 820994077 895800956 96216042 914960215 954011230 743066516 965486977 385834473 685609138 466137319 56162912 778308503 414725727 534817674 229652312 366064170 187030950 793066204 75826040 366623005 469801180 834195915 836577489 468205174 715394048 758704705 513034689 141953248 504294457 578899245 754425745 257520167 513338194 591649507 704444523 171450249 941272304 965088875 760621921 461531049 57847790 420502810 904033957 477850693 406809342 506571892 926249815 661659160 812433318 358332737 82984853 285623816 852261086 339842077 463046010 374002938 88549500 60841391 313632580 654718491 373133357 227709422 905326404 503800129 321182106 349542724 623164464 72851745 148049841 427676294 534718001 311014647 395602121 393641595 893493440 103094850 20485302 687564573 113661541 391189723 511506560 72635634 330192565 593610435 682012773 509741647 980547169 613950594 150868416 293853600 203633112 737264505 210344408 665857741 388259540 210141059 315647506 736548346 117948490 153056504 257358161 795663196 370052035 642231591 412961202 365811310 177529274 773540406 535749797 819058721 362367876 921679146 406325613 58855990 51165308 845847850 630015028 175476442 888196624 147131895 482296549 808997005 288190175 835111155 396483063 586394049 180108121 692989270 374363352 912161798 352432681 782357224 520724079 412996558 692219866 67076683 772791168 328275471 112961159 478571976 375073806 647945887 93572689 248439854 274070981 490792374 636459451 155008306 904482877 480176621 133080477 976162660 56391047 922137870 226668843 180962467 754910311 75623622 491901991 66467920 617063856 930977502 623545138 758413713 60137143 78416425 981675978 677856894 668975050 200347234 309176930 886865689 59589133 445747874 831310460 734689659 442188613 709586619 662533114 85177366 34846145 535684370 86718369 852663147 736357274 389834249 637546902 513531030 822439903 813685828 745817879 40160900 846693987 353098808 599766182 378483324 745789022 255374931 130409499 796996451 777355229 974253406 819634495 112517618 850130204 531374092 272381701 97825624 988683175 409752642 919275079 358134 257378852 612211924 196322477 782373927 278505263 216960667 350739363 124704844 189895923 61621033 22176868 190346614 754193004 55166718 327939264 936530700 570732710 895865577 370092590 120306644 117668921 673059489 376088592 641834746 546086293 794184803 421142797 89400122 358192279 234449197 409189456 92648970 429632044 388831553 775469707 598992892 378076673 821901121 207355002 558644173 504547280 441795761 176145650 132559811 830496887 904399312 680445839 997859058 487577370 57331111 957891075 689421559 4652334 178470111 595781191 435778328 984623255 32353318 225888383 390736971 836860121 331457489 859604146 974797774 371743546 363990571 563662274 790162779 737144762 613885138 524706181 979357496 614509937 504416732 238649688 541494239 156671934 914802381 723507902 136061265 927058725 59592734 383381917 439080946 155253831 652615051 244796189 695273079 133138844 244695814 578396562 998490952 308189859 222458145 938025888 668717705 356269488 511724018 30749778 692272932 545198469 562610060 774566337 114387702 820506085 963696762 142359206 131826823 282749421 273889605 343477645 436152006 314326673 95408408 750568307 494453356 185307060 438278313 883717833 109256142 761816016 245477387 514826136 598476712 353023214 786191721 849691293 30401208 765970697 606384654 713427343 787062951 718541434 759486872 269927945 547422624 921215221 464379079 765703462 722358429 892116401 119389952 377039697 137088482 409364315 619800273 60178188 135094666 833360157 822916242 268425011 898972816 111246935 765221228 686648253 657550877 377278331 297154892 420169051 823281700 326157948 948856559 92109210 67156327 486099252 291439665 1081984 537439402 319164176 531034085 928302616 19177391 666654956 154681074 6170725 746454082 187836557 712127761 109927232 125000524 679063665 302949132 746460648 413658022 837425004 596832610 375602129 14440839 281312844 289432017 889748019 315201855 573076789 694007638 403730440 17887658 313002006 522441277 161570779 790760671 131510796 172643330 448038191 692979811 400809731 970613133 920308478 804288630 986231477 552773347 810731530 225127517 723914227 343534505 643246637 706473469 614547237 695735791 884036977 572097744 174188678 659457083 569131555 89816710 142687192 979058034 914164697 587092178 887732415 555173754 585080106 27450739 272264297 665659777 890125653 854603910 154743130 728915111 149986289 523256056 906159398 893611133 286130015 821361472 797839138 426062196 638138820 492270262 887738694 28548683 156260619 25004876 359096370 509704689 608501020 979253055 996785254 425270856 24899252 309436930 775003470 335669353 703606097 523134016 577938459 968825273 693300778 849824348 621217619 887399682 518201868 667773376 444825834 956177864 723198926 106939591 401495448 823068705 135575362 219570381 234802666 842392687 445851770 248249333 22628242 446571054 845165913 598143816 985754250 739530330 610373 243916786 646133306 714544275 301230135 404181670 401406965 965448577 292260243 391785472 340727320 535161758 289209119 998512724 487218541 652516696 627904397 198559583 752700294 658049271 575254066 670374092 506025262 779469082 961079885 915317413 239278241 225724061 962764786 144766656 590516412 299814217 516509181 93491112 389229172 543239673 781766367 833024509 905559702 73560132 567318269 929632850 947854489 619933114 639506237 366957580 209222455 577414595 391319066 246230538 28437960 762780223 985538054 148685547 345200157 635010735 125704527 790318124 900015478 977302833 217237989 30189219 798019860 694638521 272172631 698434304 107643133 691477578 13580186 885414177 793221073 502738010 22014984 188780559 435527863 565019180 699576482 804457273 396817276 578199688 675541446 141340057 929955947 929123018 188037791 215360860 161459689 86720953 429635468 913589428 386175885 398892568 79993779 594405731 946621192 696054897 933340002 929886245 313956937 331135036 463155936 656821814 25279257 805068580 452420390 29176622 486736465 134616642 688243908 772300939 164306806 239209528 193452671 548986362 823247719 685521757 901410867 600140472 208156141 161360831 429233272 49908458 156952594 274563696 617879727 564685854 11915625 669179797 318875442 402839069 246375692 376824225 599033097 446728326 528624601 868628738 648627917 593817667 845930751 131981378 698551702 841392591 222916785 761012247 395064619 898729939 3270348 4510213 171157003 17694893 297661049 944362576 34357650 926568026 482078976 150849909 508079032 151838897 783426737 602817685 749709894 635317289 346916545 695351781 242272124 406187967 754541309 90597214 32624714 113588041 596173511 272006186 217487315 700350120 924041817 471204656 623844129 71545290 829831854 701099904 702113081 195440013 749204819 523227037 320613537 696072743 16224444 730116249 586260485 55379975 705750331 511681387 183987612 280546770 114578037 938319569 948572683 604908240 898073111 34982693 388292376 98357556 893820117 899754154 175401001 378003927 280302468 332903102 606064480 18497729 513983257 237436830 479677992 239379796 93870895 470897667 553998861 624011161 406559463 304541675 652568423 100473672 325387738 431483564 145172846 232114696 22036759 937501402 606120273 219889309 588868119 132354135 117948356 861433391 953079972 515840492 856562280 146171017 820190302 999419648 666866144 32443629 16120798 64822524 2038135 912325648 961261685 318354002 237219952 708609045 146323570 832007258 578161225 552326036 529466186 225150156 722078761 523432852 112946699 982416493 882727057 719818879 511012964 326949251 505917927 554819512 292286087 524488718 500011591 320071421 937158914 862764996 393577787 971847201 268868044 305571610 227336665 788409765 270449540 672322428 439963004 301480575 328139139 775217389 516083534 261749598 517300711 205674513 245295417 375415328 379106296 319525923 247528357 504520340 424944906 629845287 59617169 674448813 104597091 654486228 665874902 633339696 637887711 388112353 144643380 659866896 704351893 728703481 324474725 266000160 688096948 570162152 409561805 734900528 164582378 163219427 172197535 901067092 502515922 433224935 274213602 897963313 936853135 688847522 224735969 938709312 429215670 7943476 642951349 74101438 3858423 312732548 330879895 160977921 935192701 217102014 492102690 242008696 660609212 232101125 350365741 70279711 712711692 70450620 999456871 888735588 745384116 360294931 239864844 275829068 913863184 797937275 957018080 602516754 487427037 321108893 145695672 361908257 796630581 180583647 594672562 302452326 926761783 38782892 779046629 446546267 449424440 262748173 411761047 93648918 560124200 421177998 484811281 331700231 671636266 1263412 738477340 127048141 832938739 39655708 641251757 757061290 954073430 390036659 456239704 239909460 355290433 454464107 477728633 225669909 853810917 93147987 292432295 72410548 421775065 726975349 590407731 206706545 342749290 879511930 907919316 13910205 372892922 130034354 230091893 176092786 367937163 130473773 518641534 981812498 926096925 341405869 856732927 998781907 694243484 991791570 395511418 694952643 263037874 691910338 773549245 400348570 64160456 742948279 606347730 641174830 293185055 665328636 544141721 205790210 317360451 273854533 597220097 316114862 92646100 885594150 832703501 728205324 762610661 189756710 118625474 751726426 529332644 831934314 593454934 93119676 56222509 920623543 685242978 825959786 436863090 219580890 302898353 858907203 328874844 222949293 235885308 865390231 283967509 817299075 68144040 464684004 820268611 378346063 186285645 110768299 532936932 79365565 549011021 964724454 312401024 688683759 880791049 775159194 892598912 953590325 85007158 711521040 448716532 388578428 508617611 959864872 695775104 687999535 826536200 685967349 405869872 98314746 999879640 881121299 759949764 25866948 209303664 871508803 962896820 409877521 99602344 904638620 476879737 240080654 322386085 895413942 307465643 707686190 962229104 666521221 531604114 567859508 540698642 752194713 367149434 772150651 941128541 849402509 859012029 137934413 825305170 747249827 953508604 910161252 107597481 10194304 33479435 323451986 55950122 885300293 381979551 553268611 938088460 610061502 52434232 399011698 728611320 524266167 312576630 986285184 295357771 996208085 37487528 121881328 226119884 552801205 947615809 718807459 716714384 495585662 392567910 70299273 154272286 472487382 958910613 863585480 241908445 449675328 262009041 535085279 253584470 237541939 468183603 616305168 208263063 710665289 109218759 767110046 873943129 753794185 79815065 298520497 834909116 700994987 411788919 753509381 93199843 830892477 276838064 873210062 701489671 396736672 373511993 738688287 627495504 102857561 217049271 531156909 534436285 705391651 816787351 977912673 753315527 772778503 680662357 47133760 6618971 389867222 577645918 943617092 183780295 885184916 874099856 885110761 66568984 820543393 79487382 405383762 687753184 156582420 368861194 823853579 783199715 503907381 281395977 88467915 729262081 238870229 919906662 86690789 363285846 386648834 579559136 307768421 515945992 193979707 26773997 372891530 34200419 164663991 558017859 895128119 599783254 360388049 948345295 515887682 234095154 186779124 774084129 701064647 994682867 448195504 932238855 639276066 576648569 913342736 15915797 951496837 850881658 288017658 74457905 713905072 574257630 548736061 823443015 482223325 927606840 392574474 472631704 728095944 485787588 989646436 74218832 256101778 40149109 973194371 976028609 322379301 780725814 712672917 406802396 863483844 125439479 736966240 826959535 339576209 35146177 420845725 136686250 265391213 82766349 850896203 525551519 679113422 114731237 919513216 945244046 184969433 351502641 359090220 393611570 751749037 977955447 531117712 111693990 949112777 341717097 657154940 526744909 36821107 604341046 405653974 834699282 976343422 898295660 206638921 566085065 297266540 764175527 772168879 659921851 739298390 485509444 99518540 140955633 256857574 811652522 791628276 579339121 770316132 74875600 155225519 867672242 873564495 377442329 276280957 606639269 173173460 57948107 100026784 671774159 123351814 272197227 877912135 378570294 345888191 631791896 167173227 288121219 493718671 124623361 956230383 298266720 347261229 966962321 116552187 234152906 280958113 747985876 410655024 800721982 458266810 23981317 564512915 325891100 744909309 808100837 900312078 8508140 568082501 249712596 185721411 976751805 645993625 284086048 809807367 789660358 573053878 934256333 481615755 626637219 551059502 771204601 632724955 922303734 59602900 784098638 185264070 415219856 799221757 823792893 605504561 287564550 216608227 597982612 573504787 193734516 724561117 680178299 788811660 747499142 65193746 873396266 327953510 41149315 300294346 23997099 4868596 594034819 789719929 508716116 926652432 109409788 921280027 589526993 729944968 31173774 88390552 570034977 387428282 355351836 471110990 186049049 363956998 299251375 182633378 617642559 159868640 837416001 491736955 326369187 212402661 966753682 110866719 953291127 730149175 841254190 992443345 9047905 662883075 936392145 242118755 925397267 877757296 551262372 731815016 166325486 172948753 583432611 417655889 584479225 834479518 863020569 204103439 51151652 299095826 968787454 905286205 133837662 766454302 807011091 989445284 513042099 197300744 618386580 303605867 632799528 624898611 284203305 818736760 27104593 143228781 497189947 581058571 192654948 843792571 103549683 318179430 314402602 919900636 711443299 410983785 354903583 83264509 699033912 34422066 382619886 595422371 564061143 177296044 341939339 202574992 430685908 299206770 893350809 620369339 761581507 702949176 888784132 706131618 186578716 829040038 185677897 682410444 671574952 342421367 118516812 239013753 415219585 667936062 948827758 344543806 477739391 17243920 463851533 580985809 483772006 23368533 916398258 551302787 649886855 683155397 369670185 897602732 107307012 334157013 620819294 647581109 503324128 598480951 131282508 346575626 318482062 731110095 203357396 641631460 433508596 442795795 942895878 486278835 288241058 924438700 183751991 908175253 656309485 312006916 472870627 864843519 131942964 527707543 671027563 853474216 216618785 565747869 694582582 248568505 438721824 437926483 945875357 150895028 221199581 618474142 581607487 821667956 179077049 137639990 525328917 884073578 802463352 109576174 748513687 860313741 283475010 376311739 372872730 30931711 141480307 532163819 809114866 173314907 917248058 968704388 815728305 362071619 859834429 274943834 967255254 539863595 342217860 70630142 445845153 543562412 863507159 967076234 959053183 909301148 144012099 848339921 555369915 750259290 829664727 982928340 976280176 813467503 999315334 799969338 18066321 14740567 625137548 84748022 126359611 532096 362263966 599271464 309166866 594199796 543376260 537699716 902970380 574274641 262431355 602358857 603177969 734456557 828789603 579882 829136038 625739938 790954424 568678392 249314649 9021600 762828457 154901282 162997793 308651740 244757418 279682845 398510144 394206419 465179377 312426303 786802065 733560803 756097068 507616950 165749440 236427701 113313219 265933123 598443014 917048406 49426752 327722294 923722053 984090074 480243887 248319683 847368480 725781864 363359699 285762976 661554934 5914532 480234427 947905162 237830128 832000813 81564634 299478940 163688963 259360558 712660457 673295942 39676953 763162787 478744683 932305451 551379827 11938599 385468633 140791338 754888711 264540651 622164943 245471920 377133059 695492045 728946928 383497790 265523944 70671023 616861163 540193699 239605561 68501363 858058353 124682850 974376583 967135772 90906237 535119046 268818234 27762296 614496894 337186736 354738627 430832845 73120195 295432119 339453463 935638562 628819095 733443691 214354667 586566630 203160398 932301160 411091689 379635511 188696088 442925698 797347621 48872550 784372887 407945412 990469570 28048330 738763764 643027900 929933332 557239723 288182878 44170935 175764461 892982287 293189748 459447429 265900790 720549636 365307788 101496400 353973332 598061191 628884260 912661969 593225112 395002107 904326385 805109344 913818965 298762378 313447527 604323393 979753067 859871168 780582891 952489632 458174958 875965980 649040970 947879878 950111942 46208998 301388392 435107655 957606291 165915745 711471583 318954473 906929144 296492107 464310491 594892340 206517300 716376241 613528767 781537522 279943116 170781720 588343015 54583305 367895163 190885807 339640019 776110117 545324610 690495099 306348620 18545617 325270453 391381421 719992444 731310264 726668577 839152670 310784326 622126201 888919856 535189807 48947637 127277868 803941847 399443297 564551808 822800383 843865601 90545700 143945008 919398598 345709183 305858573 69398369 631788299 542732511 798710958 517990892 142342891 633602393 694501080 43577407 345383969 145235966 915463415 33844183 555028510 521231498 796833031 671269398 111051859 661182855 477177999 817410197 587247820 116536361 813919620 203861303 164710230 449812905 564169752 667371236 173761772 6409451 57687826 993778189 584270707 799555497 225721136 882647478 589525106 850356474 226977211 919326030 885808390 834196722 522546917 155855451 498163539 198806776 716506974 226496945 331555534 971390049 271013628 175335117 587357253 626218009 921096765 54545707 57191821 630277041 567427156 152375811 6687577 331952271 291243073 325805458 11439128 182969434 37509556 928539195 858737399 597114920 416636926 392485879 200097992 302044408 627170116 31074124 573316540 249538593 531641067 393918560 646193456 758176002 585067074 382573700 342647637 835817368 223490697 590470739 785910843 170678984 789682807 342265975 918396735 602791390 195420462 395004693 148684757 872236023 58988450 911316256 832650808 209666364 815456624 790889417 647195902 89473262 506242296 496375290 228908081 379192823 371829869 136089559 150654254 414720815 371686774 267455650 881854162 14080585 225176721 244157120 259521861 893387891 692548476 625770931 592625846 407474321 472237923 159445943 763884503 13932473 122379995 72743426 683550452 295213968 339574556 812256290 902204787 908627975 33056630 193114504 75852853 521115053 320860651 383969407 549982923 391866982 806457990 30743819 779265110 82858986 780363717 129321850 691473789 369079904 815329832 101842274 930894167 714692164 706693651 27796729 988370960 85771359 602421710 632076182 988734868 531291772 882107627 115203109 74896131 90044435 70474011 528733619 730317820 611707331 909531901 729873516 494264087 484003754 472166115 16603938 545644185 632162737 456343554 302068474 983179102 677888699 455860974 65934759 639581651 780676434 240323630 588002899 639481048 884063370 828002556 761833499 4284372 264949242 663343841 141715793 515091550 904514461 382799724 653419050 432907841 385903052 919153939 170814478 864191531 934109291 846469041 869360093 847338656 355952302 570183182 431434909 904893807 13110557 436504790 909137243 58242984 978584406 72986871 129180103 975466989 853369695 624092163 349416294 769024970 476531310 801772717 42874363 539800080 4377925 346623667 860635738 312935645 191641786 955543069 961659242 607067958 650036191 182879486 434942616 977094684 864962514 147915095 302183192 907696516 386133617 758819331 475530542 407248358 570820607 459323593 428948212 478344463 583987744 717991705 97766559 511705233 460007045 154070013 818775066 669457288 670624266 537460030 891455692 395815240 562001563 493483326 726309012 736411991 799201621 989470800 253502915 986580503 98773669 142211649 896129725 117081194 833736571 813546138 292008987 780876108 640346111 615987371 355716030 332813586 784376742 986993762 739688630 856375791 740082007 247001271 397753341 860242712 699628965 664890693 193734718 533905543 152174051 231357576 76626995 15864629 130457861 887162259 856263868 398070567 371441236 301914781 946076938 2469912 105641353 342285439 872753800 24236073 827873454 623101422 63638830 194603754 863136341 290947640 41113547 114493733 486436632 432761612 657752852 178639097 6406390 674280433 719727761 324564984 702625098 749777903 859551847 329438795 653895422 362799195 321647837 374710194 228217379 163646731 425989143 172622998 262087575 622394427 715799611 799184462 717960835 594064094 500283896 717034417 579202233 167360095 436220098 117949921 285202050 340109436 606950934 531314078 800408813 85856739 117802719 338519318 535191741 277969153 164283200 886613963 507217061 372968488 282259258 86488890 850398300 274713849 893425759 559287027 361066040 350595100 700574003 539066616 251043334 484009507 518804346 279708437 590983221 255381926 227089911 922463949 888635794 672350579 48442634 257601579 850871018 150525296 398706038 920421293 801040374 713812581 656902873 895884024 150253062 348498882 994449813 184913690 808311662 530294620 808013671 552230458 277125150 547185090 3304484 46737998 45277684 117758764 888270021 914550157 264291218 831058 9245962 577814284 137722930 766136043 172817446 550241360 19876672 899994132 473152254 271069179 756847103 854485682 597881746 66058151 724863452 343233358 767725987 905342823 399303753 294584774 289174644 882628812 557582534 998788884 503746307 787242516 736777559 633219563 318426639 201731584 147318525 871788051 961079065 742944306 211548287 487170771 9319397 334371835 845003254 121586459 843638974 780754366 713977175 119553293 493330290 33698276 569281762 799427766 19555056 617346694 828310708 118596066 850809892 670779391 765309911 581291155 855295071 253469376 248655787 963361440 494391362 739148643 964896965 454916080 521555028 688643835 26794788 181999961 212186158 179825197 838377970 108792599 69942353 646987856 886445654 791118171 979533184 188637483 393969452 574287522 642674242 577745235 875653939 386040070 196358227 891708591 782815956 630858027 915823006 275093024 104835035 667300626 855713342 834536062 972160702 190720378 348280609 725552026 347993179 532721316 710309873 686392996 989488652 236412411 6899066 505895435 41491786 596623422 819904560 445155741 294688734 116734936 645939394 350614905 556483745 244991454 948418873 623636930 349743311 322738722 116506893 882457932 118280577 279773310 961124977 376640345 36923473 720889399 329590455 28624268 463326392 569364870 365510499 236367295 653709868 514301807 809926050 313218807 838070082 747468379 566797939 340731224 719205402 424370393 632319818 698546063 164406353 730357158 979174962 642387358 785863758 160917840 538277852 512893784 688642973 656344807 265778206 170368690 642956115 175680143 568726450 935225631 873905486 395406101 544495538 133679872 412691713 175101815 216229199 743441007 712753117 142661494 901313437 600588401 143416450 88975068 686603557 930698355 394860601 724759266 589091111 33829898 523685088 67273010 990267018 790176733 870455127 821963237 844826408 20043861 70356841 421393742 284183696 548711692 241331007 81375085 872719215 828442890 982658896 399066550 638547180 120726290 530971326 376480168 716567847 829414512 809734688 398319322 922118554 754637425 674005199 450015159 250802476 403157687 500700111 91956689 19451833 10987733 850105825 558456475 788648706 829154352 181128369 106412113 591993744 337448644 618631089 943561299 77502177 841074233 192027164 189469968 19177171 879705243 419255818 36829739 222646645 922550522 294722487 402937173 197188759 560499140 642071029 740974394 654149756 378804566 28284951 331816045 514314411 338562675 467401824 442879044 396277992 649280273 548732085 520557269 240724738 149631673 379888309 395675760 777333587 368973017 719130856 833541235 81822822 966458246 688747359 274330652 350745477 538593294 885441372 805025960 31580912 748204827 818564969 813707119 748473291 179043342 992456435 500054016 592973056 523179186 781938401 567658526 99488641 759233960 977511451 810790036 916821600 205127378 131371088 349488725 959686950 50977537 266684063 676785608 477202667 980438021 988770617 813320603 2376100 766903769 152034143 169110779 956550672 350840218 39675291 432011551 779471204 996409864 169084973 745685882 426863155 390296481 500403425 580662637 180217202 620591782 496257009 964125721 717409101 315821732 136804345 134630019 816190881 554648211 764214586 584950564 250954390 512054778 156150895 230268348 975588871 417805585 127010176 845152501 532559974 288373151 710988927 976844848 459094849 626781822 707122518 899059433 325387731 523147673 472790459 706162608 390206151 594076479 213760558 255871554 640651278 279295622 450572877 413200323 146569677 326534024 509394708 656468949 716360143 954759857 983932320 792598386 948301838 688767419 102117741 539708277 292383267 151603762 389170683 612466467 339279593 304096760 575464323 851377218 938781324 484381027 651689063 535391280 653170686 746280897 760738824 474942406 655256145 880223854 304682944 113836227 461545846 787922575 828955462 113099387 328312378 669721102 637294055 150670158 942690310 909574455 627027607 283098683 514037953 673549746 170754057 360958053 416177709 489208867 436554655 928374200 909151851 658283443 587126671 772191445 56976564 876401307 470010900 570083282 62428659 978104968 741938926 452403750 337642137 674779760 181651037 181651612 825584281 902155175 360419694 162477589 130459619 308684093 829478677 29272778 100947161 877657599 661854016 57462896 382447046 331645520 298676688 135053097 433347054 780730020 917339671 191220891 878673026 978027550 103012610 535928232 779110860 375095326 688215810 477228908 262918879 734236782 476069243 891421199 404581754 137560189 192580092 338309812 761811209 597382782 118388981 871112159 727515926 481391185 820779959 921562309 912847638 850329282 756110493 289151950 603476684 9081697 133240024 216961255 347513713 603060479 200966169 461743917 953524642 456348904 808562464 66625466 645360096 724531462 973849179 862740502 404261772 747889854 783958213 503731675 201883978 63491265 148045151 726053176 884511487 722554509 224933904 719790205 673262411 544970127 930936873 36068056 554476562 209403589 663992087 351385634 850684856 16745632 571492446 125894456 435439283 269538134 68329436 89039028 147292426 875511689 119710657 217798472 908282243 109555539 953141161 868153054 394082941 466828520 600803685 916404673 69134190 37652901 987665319 408967285 94707237 720146698 180284103 482157437 365048026 371380744 379987025 439551180 249596444 583085312 133834388 98006128 649318171 692423417 243007390 437196492 695584190 408553489 805073158 655712339 882801690 413352652 631733029 656969342 758833087 785426963 113771160 934059029 390573855 267748131 24211543 834859854 333471837 362024054 603821327 409349066 986979616 214147558 951641188 395545418 33630280 536582684 474686255 305568240 283216947 179390152 275737934 881258226 263846220 651894864 589533087 251887345 505493726 314611461 902489329 60504723 160294228 769765736 281367338 688561088 443484696 698068172 880929057 879601585 494945618 296066260 468903209 273867047 238954076 611283939 887681900 70295861 449918319 209607288 745124443 138944834 348761694 859723435 339212940 200851249 728244739 830566781 323072296 101338742 75079610 560781672 740658439 912637095 87181753 731735768 612222994 605829308 562400381 254476264 857443192 419081820 166550556 659574796 766989292 176905684 794786659 484497241 241529485 661299093 507133747 919394814 461713980 149787824 213390368 971727918 572601205 487554681 472186343 104724649 84845850 113347920 939155285 989496625 757836692 520486545 149014060 511073204 13798507 909264928 52141468 563348000 998731597 730522255 312393743 407496260 373066301 297154296 2868800 867105876 554256398 204970247 505362842 878345816 634448582 880055972 799367826 862883224 293008273 364119303 478591921 188540040 23772704 880659032 91254033 750697117 667207425 597840838 763964610 731875348 68301358 506474676 48603771 774196149 413736039 951708321 650594672 819459552 130546482 807631829 918610376 993519529 697717098 884379200 468414729 515719144 675522090 600800739 225043427 805075565 198032574 354058266 463274726 558431831 152662131 57507242 755719055 812818662 642370904 432388088 756952981 414863614 917523412 924594553 24208773 85088329 341102026 595356624 202665462 151619697 24317621 392200623 473205262 609643125 131623101 848234591 888966996 606997380 599811603 481584238 410873861 782343910 211011927 915480501 594805146 747221176 535776762 385139094 230080281 116165679 747067652 81882468 944705912 622338151 863004578 714186773 452605387 950862387 265942681 969763976 166352142 10172084 723215873 16501013 632727448 202571667 32926986 448370496 665920818 335872855 321695904 443912852 895129824 258412231 17961736 209891061 182527316 718496974 232518189 391299898 420470665 679251106 850204637 177307154 734983851 491137305 669840761 775769406 536903728 447405101 88391669 766323279 423045607 284887124 795766592 540330268 334476073 907333618 573852327 436537945 51530822 228653191 797776629 823270636 547908648 566799260 600576128 259872993 876457521 34208813 286148601 95683192 971045503 577552521 946464883 427289365 731963152 900243226 681039727 665533291 746097506 210954806 731901969 372313824 550033050 355155759 639448671 777288170 401870448 521967068 479127004 829079271 245817303 40992462 134228030 440556913 682028629 397510247 272818120 829013957 956211812 504391673 727566984 663213208 856789731 647830222 572531211 965907999 708066960 319183526 698895296 578758122 70954171 324521347 871038853 891999234 517903489 387259094 879460795 770731526 663820720 757295891 294227795 211646579 901715967 168402338 17434993 449084080 491030893 984986426 840142965 868470107 939185476 465643735 933830006 577811647 881441149 540929289 823720959 301228321 286009023 850139970 43887115 731467040 257370828 238912125 587998881 490474462 96969058 970217412 828550051 765688360 808653857 552217783 53611125 987140213 360458971 664218619 562610953 307633670 878104922 755494802 843502147 763355175 764794390 796517348 169051969 311773071 972244725 754229426 552301838 208903568 630557442 686535122 149015780 975623878 238742705 840933450 940961547 311105737 619460604 892994209 540794998 65912910 713742279 754575306 177331565 417263786 296983793 996328272 683653259 73139266 257853048 320921081 187486280 662407904 991822704 521448706 145214527 941643167 364009545 261872153 696985586 202603790 470963379 213559939 49966032 524210117 712586496 895142146 138149233 514840484 611486468 737369155 843916223 320056813 507322493 592945195 343663875 487315014 565092301 871378518 37014806 145082861 378925612 60844062 512160278 610972337 427812470 713778956 469768971 259395171 999196996 873863959 920264817 881578865 332658244 546379401 887943322 642002279 925091798 657603937 136506784 181275831 699571455 602367372 875471921 935351292 499673200 526722605 813712429 86907781 36366870 116233646 292598638 865273972 483718184 651199157 987862413 557472548 413543108 134301194 691314547 693340096 584617358 478017231 599410925 790727535 927358681 500208059 855686375 446359832 730351748 39450362 315113231 883726015 346116239 67696486 866840402 751888073 983968656 249762357 768922018 327740273 296100776 611038417 371276382 776830650 785678812 788253191 652604918 752192810 553022934 808601509 774040607 957678519 448870330 668419675 640106758 294816212 915185335 866284140 144067827 100397241 154969445 269096706 721013111 365889781 348158726 4834203 742245234 21304467 205430804 239550474 107573520 594518576 453908812 20000883 571711909 820967904 646055324 710386620 447322357 417474207 884750469 526345774 153744789 824808833 137340048 587204538 783682833 139745430 7898883 25281035 479849812 4458365 499935048 832121287 29287959 577143093 465635987 904518895 292093037 66770513 993758499 507055030 140864128 479575198 592280375 490131376 250569663 254357120 670060491 681914780 487986928 156409233 131521560 48886727 835910035 984816571 442631667 17892483 894635627 483774426 229692523 630047596 239733352 707204569 28415538 779359843 671628321 814913353 966034848 694170750 842511226 935211783 475354598 679692946 992633249 354830663 378871812 373220452 325387904 740687824 132432779 11275391 540370673 282765337 315249917 697061088 593405675 633673186 719601231 612359294 715275362 932563579 310311773 648113743 677898691 471408370 312954392 762596316 391659990 752106716 525838778 436454512 692536779 257172893 482546256 970474715 243042471 384152395 103401778 748169700 990906415 253629841 591893341 412342842 343636957 249139388 276765624 875148208 251745961 714920920 363580633 186513651 697660638 525473472 490980325 439602908 73635524 770816323 685504210 21916748 385081989 653105334 288215003 876470859 178011142 995497970 638828885 460222126 574274552 115623048 27736838 140435773 845535677 107312853 77427217 508624546 32763399 464700673 209389967 54716477 954019549 788724954 857876363 772110634 282970535 593482688 115947086 892482579 301320659 929563979 213074890 730093224 322997730 416949720 792093800 192183097 387300336 445961042 864981680 175084093 588072528 977709849 72565650 167123706 587482768 102410045 668226863 390036389 321396762 669486196 94437210 559105119 265593054 363321844 517477706 188182287 642025430 985527472 692436932 248491853 694985393 214991852 317749224 219933347 379363735 36895993 769532729 449657148 404003361 467040920 893202951 353503851 233265908 693596583 257394101 751529889 128605794 865866338 19302211 462356505 97273838 887516147 492962886 222357264 753537903 711302939 544737360 798710733 650691273 572068311 74320901 566472244 795388292 602837831 563250583 937092905 795134347 310829188 517259908 350093208 739312573 241474231 836326188 525904899 770895057 121551935 955250542 720828240 697197620 319011314 882329945 990978777 593120148 974586615 981947664 539476421 988210264 584533536 473959191 534359810 387505962 348197449 720246851 17577582 456582036 950099365 440301383 622508299 856767483 838046210 58959633 340051047 277545050 857660536 43043385 42344073 260359881 815718474 199015099 912135357 201415495 795364675 430459881 311703199 125565033 263496257 69786004 4696996 202283550 672618018 773170691 892107230 588357066 501196378 443577482 785019385 369321557 964982749 707215300 541570199 708334313 669823 107826442 861622220 846824535 156830286 525487629 31554840 265289009 459416264 516801907 645274226 372656276 814835715 167826321 4117665 166491048 577181069 504166765 305517294 450887288 98437045 345003149 159135303 535133946 849914282 136006808 191144458 28410028 259115818 940717544 466386387 866231596 483970963 251988463 110097346 481821216 702542115 856805877 642010283 540270000 982199794 360307654 247997095 492304245 754084898 236613561 677621510 945088714 335079747 384959405 111004622 844097223 255519105 181112551 684094062 730162120 997607899 989888503 652770388 618121122 428378010 818707607 489191637 639518344 795004100 233011232 688478146 641717952 865537088 706565857 623727340 595285670 674074892 659932 156840569 299504085 577928876 247114166 311522652 95960589 326140526 758711364 75179607 47095982 825509511 628560253 95162523 373432247 524329013 55606805 144774002 291273408 371298012 554321362 265509649 962067679 17753207 896873795 796488311 956388375 883905718 809108607 663767278 662203568 121905848 505361069 509050409 748575512 825126760 776356219 740459677 823602055 143960886 306438833 1136716 224694918 521966453 624113548 941777378 604227433 365184538 228075056 699274547 691335069 46218859 934178622 856332722 106540486 769370460 574046836 566128881 778361182 373927367 413553988 332965345 499007470 380806009 398563052 162302521 457496783 211058732 437752897 151658521 570230868 935657206 657962615 52181229 337847221 23095223 165003601 746400571 204868895 789830290 315526084 741825447 214134777 396661264 520677650 675421845 32225187 858234870 25012991 614634614 777010348 338086245 38712146 199384407 557605917 987139109 728141289 377321885 785074652 214259370 316420018 993188338 51506762 973635185 48193622 609368355 357880216 981220547 187252757 362201576 130308855 155040624 822821349 130548393 789409480 213621777 886938521 374943632 782274374 516224782 788248518 61474530 790348461 138700087 269416003 121290047 520925448 58439718 339596248 529770840 39446997 464304349 773860854 394881828 892714685 790888164 825702400 597062182 532076230 672986256 342345148 124706543 361164308 426288367 419859282 650818960 125666875 763001110 846483082 873616881 585831225 196744868 263088222 810100860 895479308 938735619 426802163 956496758 899176665 55741814 84382160 915297331 531378161 20326310 431327248 778245607 161225765 233599737 602048868 11951818 607365476 934991232 500424915 762425320 25964836 300254786 311576152 315351534 600958184 341777904 317133125 983959968 616893548 77434991 333508277 801077580 960870253 802370012 300399663 783325605 424271460 750027547 241878043 205951534 641326543 883863772 432165192 834533228 949208703 884745029 511989397 604989123 850129854 161087056 491687164 589662525 662399591 21912596 646434952 741970644 985778848 134153575 294814435 735219406 497991855 649645125 914265399 926468294 97384197 746523203 677053326 562242949 889209941 559255904 453821106 320739087 967654550 896018453 777532045 882885552 908138598 53333351 298151227 254898496 39258413 773614438 653994375 785631556 40977897 693546185 867524471 88376392 70335599 505774492 40141888 845112077 379518479 65543627 186395561 139002053 659232914 847124178 129531912 461997251 93895671 961965623 134607325 109728620 927783236 323597131 385711658 82036996 696272559 502012613 676462404 549404147 354786998 913409456 426734975 46379601 9470632 663146426 165742760 836293241 700611350 550018664 744037769 168119419 902787617 355901247 281592758 278653359 57989551 645913236 631373256 455400489 512469486 633923448 189552518 358699913 721077744 287833802 77406633 701427426 911575923 401222789 778302025 535945236 842464316 492068602 691450191 70129281 35580975 857536896 533579715 84888630 423867389 641930468 245172672 960153861 509212582 34168119 739526557 219983554 152643145 680675907 769141591 593956601 819950409 759431064 204827815 868259947 816625740 164281671 458792104 598953093 533433668 103839718 983383776 632055861 433783248 282390778 37286323 652896791 46346678 253420052 160327753 135543051 370706807 212992736 49782346 596462745 454225066 530255269 750382382 620247315 77007396 870726930 224128369 577857885 654336351 728472868 347078648 976995394 757526076 993509831 329341297 853571503 479406148 803124378 995491413 54375200 666110954 131823743 988422180 103724954 774486519 360153625 653940894 96894129 678041751 206168904 338417339 283306996 640259064 689814596 487115182 445604244 295380198 352769399 460491069 139456161 581398127 733715533 731838984 632127524 833403703 911376519 411259353 837515190 342741923 904404628 573040543 38556251 254713963 48520707 506753620 310234232 961772283 698951501 204144852 110014162 20859666 257947443 524963341 78168022 763648773 541905905 657021882 528374919 396028037 608115741 673819907 825339766 144103004 965201729 907764532 58220965 566083208 487725469 947603158 843035895 767683388 171414652 546999744 193423132 353850041 463405552 127598577 717012963 4839480 598277459 593329971 559730371 441783340 968349427 51093020 312267093 496830734 823102740 353108397 458426704 555606927 76723718 137395697 202014137 407610683 356137883 281440769 563459958 555026093 75532505 787331756 722756821 246177163 654187165 171020376 74028668 153168592 563484966 75613538 305119585 933595056 331702638 35649936 496198450 537858448 114689086 33582368 427005239 558739699 211705233 546322765 708529320 32466885 748372950 652281054 459321585 820116808 774568737 804004369 293069726 744912312 2119008 148685158 686050943 485606453 192630882 428407094 713174555 365013029 23544930 775262843 718144691 754773686 1046541 47029418 717852620 794040208 671935959 242517551 963342733 382179117 608582936 551324516 77723846 225104896 21721025 539637708 238527638 880652508 223291944 487797810 648395932 465834296 374646705 756395463 454475111 368334210 498495133 885705598 400288692 820197376 747715742 228856689 244313637 199799009 699998650 432368340 492528745 191592072 766733536 555608676 542515067 147289830 92070198 751016973 103799885 253865368 594543098 55700245 381620002 668173587 236248171 603674707 84126376 191529874 197472351 87682928 615643576 949405491 312857916 548951001 897424704 224492545 275724034 192894338 258441703 286043124 141415568 979588860 57223865 241298143 770074353 150180095 851685354 894913826 877285128 347430282 250307996 266035806 267211004 388798388 458233875 502080952 302162176 207204969 41542379 24927418 762192217 37412473 135636864 152009378 241021236 776972731 679501653 355857273 548351295 167559203 100072797 17418665 627188649 779377787 669859174 820613568 807595317 462007687 969707818 902669899 888494756 550463363 21926596 129184537 404015384 767359897 300282489 331197067 54871406 392909568 603990775 392710428 793559057 734500228 597488317 559004104 563391996 476524688 603860892 159524723 322805409 275695951 662923183 738826609 966208234 911272376 461164361 977560170 96763200 503959243 173294129 729418737 337820658 33181739 585913226 944450556 928993637 401660568 283610560 848990103 14900362 133223052 339226963 121128826 490452082 176064979 638378608 918399459 535675047 463582224 153375748 776528923 570804362 117181164 283552499 382380346 625584008 364079218 755850114 877300489 399046558 101654962 348845500 710241590 838581712 122612681 950622633 697264391 585627611 576558216 319980122 38445441 279056485 810366592 767988681 190428903 55982076 808500036 837877456 122586029 519964634 660969116 470913037 262306686 884755690 314635263 252470620 821261932 917753903 677517531 535153587 877157758 931550774 467289687 70195437 542847387 427047798 842653877 288787412 237711350 897663534 332579546 521844347 261717910 116628746 207461406 243287377 92133587 615898323 728237854 3441136 313617390 850751256 906500774 459240482 12241085 302985363 311638764 929682936 360595234 763011333 419732514 65197593 512747306 82284563 458697617 876701427 305701920 441637469 82283620 122145198 999774381 136650369 411768394 664294980 112693056 293225782 355273464 733006809 350692963 597836210 503705668 231241725 54075712 45336719 31491356 739747359 464083866 609606797 425600007 898187531 735298286 909276655 690899516 804386378 831435550 580365202 551895935 920557495 65540123 136922072 527790892 356620898 838419971 971004847 9937967 241802579 707592257 923876568 18625535 744789578 407977317 935583462 518464440 564924504 605211439 216644570 158748116 812989799 68738635 884016654 659586937 47902581 325485044 873280849 241391717 110948653 411457868 980663220 38602205 650072246 226293932 350092436 318169609 244134983 554001795 121946625 573851600 709700871 649893440 494210933 108576395 903872046 323396716 222080614 993116713 487086982 652618590 755322341 200461473 677232345 799362633 35700276 384232722 193343575 707078491 235877405 30500249 118156351 667776096 494412617 497150565 129357575 56717047 274385940 128192751 190684990 963817646 737972148 316070467 408435225 756452648 79563272 694050083 485457900 571082285 261342909 154033704 216458278 932775604 222616152 610612412 321417824 667995189 959734937 153745514 258418793 403521526 203131181 435783021 81263760 533977830 947173395 22446364 420957850 25509756 833883633 536791305 131843016 370191383 591112446 944122027 565021332 734688504 122805434 127558299 958982638 793398780 35079201 708336952 716138688 298043736 183150971 34063158 877283283 852021771 700298528 83848334 193605354 225459873 17613081 747728417 304032760 985507933 847957646 694061501 150804627 289443902 345924358 141347320 40340521 560265084 371638490 665310551 370687560 165520467 8153893 849089808 779033141 246794916 851504822 620737995 331694395 436353501 615418073 774322746 722320702 107225294 107451393 897842650 558968152 261670544 17885304 696940268 349944482 643571892 712417612 384641705 248902295 15266317 157148875 530955769 101931973 746624326 32485162 268297175 580112131 412854192 86251844 586738868 525037799 717925603 112651172 70968118 654216073 410389929 196756426 185968605 113433085 855928376 974779159 540695064 803211782 736151124 314679113 176802686 633207627 810183317 188864080 7356367 48772810 68901821 892889425 44569706 226337669 544142124 205147657 734184737 339621132 982367415 840352465 338334512 628808318 188572756 118641276 127269548 589833651 901754777 268249793 14849135 979262148 922939920 831846751 9994444 153608649 828973828 949300121 736118393 581544232 164061658 608619954 635560107 879666187 49361034 913588364 641384364 753641781 618171796 862694870 208497492 377622334 340857353 44162391 571833193 423254106 109997322 976478512 359908164 424060613 272220657 944127378 683950580 707469061 330910144 356956213 755166727 852211707 407593299 311900391 539914197 64420193 48435952 378070587 886560408 465063708 728527567 159567486 267802877 577526055 533673556 547803541 899340045 842050416 630541458 359345428 170016613 239133530 356359084 762334837 110269187 352615222 969306600 877435474 115310921 182661051 881349196 257637220 675763002 678531172 876511617 574465157 853436524 44320781 518685556 993178345 556213431 238301792 850966735 521470013 534041926 991713383 149168536 522275150 524374778 657660467 771744058 524062931 751446025 681528055 417812190 667220450 787036377 426586193 823208757 380114353 659083021 424505763 839151741 824975344 475802927 286943495 418460700 78393755 714288334 496225164 427899742 169186466 599523069 127266837 732631036 754735533 976930118 472007937 647792922 741568906 761694378 850970705 691491383 468792690 564850408 573384739 451016733 107164359 926179375 937342385 517813814 278900429 280139542 813091995 242125428 681028120 903752383 33254471 172122761 408984864 954279498 737584076 945868585 48917791 711089382 445451305 440513669 623681511 58556427 216688967 892374098 118256110 802419682 873345383 794890996 152915881 887397867 491462251 713055917 416241232 176749143 510275096 993824058 800918506 830773382 39943434 237910044 122694319 787395702 210442052 637653986 380706234 74504217 606291484 269928389 869051389 587755327 538851211 255402543 702879973 723883540 791864718 86969521 385091593 55924141 651508722 325217037 315003603 839721174 995565119 228687296 869723111 908173436 950737080 25275788 879334234 907109088 47634179 679792429 223839600 823920551 660312689 933272820 605009566 546194422 341777059 834109695 548113104 446008892 306350003 895141635 125302881 173127386 277085154 408118593 58907663 954469917 301799039 849771725 375119314 290410279 213769675 609168908 163650350 532350421 555533538 58554156 203428711 68955907 269434810 140021339 838254410 274567163 930632049 953753278 754623231 886859405 569183068 684197709 278577920 58482112 139210570 724359219 547924801 187266029 677161235 780166125 95973658 966009071 23420203 798836803 879078697 409319626 554168225 697697376 902481766 475806724 945179294 394432946 263592162 265282288 465204838 225028617 419906367 536019233 303501186 999307166 210323536 544474140 12028398 482337886 73401652 540291812 211280160 404535958 704118724 229129300 838703906 539992603 259856889 488408754 291064810 446270059 628249265 952228883 55552388 995343298 335158802 268946715 113975097 931219906 566914272 831273866 210119443 254872985 482819613 311709330 208350622 867872105 452499502 349675915 289145618 29256281 130187965 447520627 910699684 149790723 54006510 781858759 261602630 900738371 557006945 307556625 38158037 47544905 868325773 583190596 812759748 822925597 710688461 42760912 957520610 979892182 224643105 552601554 712146777 701679462 674555844 618771175 345046441 53817280 385998053 644125296 714611561 532088073 603949054 827317728 64169472 942190196 566550045 999331663 254768139 11240520 709327700 488855792 232820552 218380891 544169196 272588979 545372420 201822763 8581033 678706658 740316281 49919025 520363455 916437621 696005737 309956552 3443720 655516799 485969223 56907747 253418432 421571347 276256898 847856801 52125032 730463571 563109582 181260353 723885349 571654696 699786918 671251237 846500325 66896740 397067460 446575975 840300912 236009104 886301491 487153021 810526058 946499774 797209955 532499600 208170591 188727929 9267794 469207597 373034032 771882495 68066151 999673394 122909588 399538182 633525406 853017064 743088465 610866335 886505866 957593669 562735536 757937456 722217219 721783903 352332360 42865254 141213516 733651578 660485317 391406167 846418856 677002653 213312633 566240000 45917109 853714797 539863094 665027458 234414362 981203737 765130164 27329203 986145055 744772090 745473226 476075052 944276837 495831665 885383709 21497138 496276050 926275701 496230760 508341627 840480254 950122944 528191345 111061672 782778075 680206916 398353208 52811882 813682549 185156814 810212240 281957513 29716098 212401474 788255463 338051030 6637483 250798221 710236517 472376327 674566726 420848106 3149932 877236882 517960024 683992556 555425931 290708762 672190731 878061482 826684909 87326795 29772266 88723256 694158088 662017904 324507301 161129429 376908869 439195179 773355498 671134346 870514980 926960110 977438730 266290820 858379026 608069973 916148118 667775188 909763597 963491920 840737946 752328604 27056270 349568520 931131506 689768141 193095865 534739268 993386932 136484813 304635655 944728303 618698683 828248512 643093482 666290903 904515306 918643780 829388463 708969925 514020883 642057522 194531735 558250983 213402768 314797045 182988489 423654711 408088075 575026980 433230673 348330503 488265991 727603023 715690614 996992825 452114456 563510505 445340877 49410970 340779061 113773876 971230468 2333848 486890768 694554947 951715875 32660776 654419361 966282802 358010804 19498900 828370889 50181838 30964397 14886638 639665533 211103079 780279670 315013390 571040687 29647194 356258088 193696248 438332574 345379318 847294565 982295584 251924584 648102695 150864930 368617520 700656048 793598477 941682172 137948244 190481426 494260309 727354401 870699300 681052564 583837519 938649006 274061173 275895329 525856093 545017601 605539291 818959596 376781808 811510521 724796905 248028266 647707874 371935623 54186329 354804661 530592599 743135304 897318642 966067327 667873179 517090015 189679603 767751671 763668413 540689587 757173115 541284584 12848411 248488308 71297730 637536107 705364801 279616843 680228453 948328682 830778938 552009519 754507826 671780277 900834442 684754001 877412780 567826830 889761167 408219073 207487345 422973746 443178386 758596554 755282531 648043341 174634467 419059670 973137558 309274455 183736916 972461835 461314696 876500780 207688686 84614659 693745110 323708377 742499705 71625865 945367450 685345877 323870565 298191196 47401217 768661654 140848808 142856 113091715 41324846 98341298 127015827 809294317 290622161 278153606 79678565 316025898 112111648 838978447 37655524 976867291 204143313 581398811 74279270 674739178 499990380 178742409 385428482 898581115 694848807 972858707 793563158 685465627 992333525 959529470 112910504 12484552 962817619 821449416 73096811 907062984 974635155 509734284 83624931 410240515 797147130 433326522 73696339 338790581 593768640 326808602 49288144 10881168 725036409 255193962 921449656 782684528 826935257 498541121 65006657 513712079 342451597 375434720 265311512 706922108 619330290 636651363 737483898 537318535 863818719 284709362 575681849 616411694 909198089 784521028 619023460 560790794 953408518 173272282 920453380 5184679 89645629 41991795 801110320 785221980 794004393 4655718 600897607 73962933 85013849 498106219 593362602 285743265 481926312 834829986 679854664 519252567 65627109 149680986 730898240 790882087 21506556 647792163 355404646 770139615 894251469 666042884 244674024 690516158 767640978 979911838 710851958 140957660 250705941 487390269 521206601 135571985 855929562 406916227 317100112 102599231 50204360 77736403 150992836 984082261 650115797 384678014 424889784 519149028 17604886 86407828 741017057 366628204 748905508 564235045 119617476 247520063 413831428 152542327 577534569 963590378 500343153 783059135 880707238 117449140 703648877 309422407 705547154 299579534 227688473 365706953 420422160 655082323 78738426 91317729 433726430 587470068 997213256 653762342 333693346 788237746 767078158 364897475 162752531 777522120 715868361 909834470 365382892 809536667 703242045 349339117 717953687 758865512 832085088 610859587 362396847 20752391 614172600 163486515 943325931 624576662 737160960 480135170 228632667 912291374 999860239 861189231 357611815 354287460 808710903 131744982 212468520 885636505 399408652 946527283 3052852 932490552 913169534 844271333 676384615 980037042 600839553 231151876 669310567 195806354 475635936 780431512 514517149 266075755 423690816 275079787 117921799 12769886 606652415 389369033 742525348 923255602 932121108 817026227 102433908 656721029 534547308 214600348 345709743 685153330 810436953 728918819 256807006 699169857 994746096 311058580 824777114 555596124 600219440 345133654 947678265 883711719 351293330 863619994 122867131 353278635 374536427 155888840 659258506 742560259 228228509 382622135 423400238 14752344 432348095 798184502 898816890 758253599 210909867 501851937 407029557 634860528 210870642 943889181 410262615 180711305 177302552 732250839 546853957 399044271 736969380 896364496 958596197 620920693 903062352 437748689 540887939 478009668 382582784 588811757 178315919 763641366 726479656 803744257 900330909 175321768 598839036 680494122 104423076 779391437 239681498 652577721 726663902 698676917 275981133 118348838 339577774 26319178 289127214 941813668 324817245 382227182 659092361 820785453 35596982 797564754 575129678 277675842 508769308 323997750 239224313 963870954 487526553 55608768 677212339 315921689 122159955 855801345 143123857 190358400 421587723 371762149 601058223 881667082 118405023 535196698 829684097 163547872 567959471 551373801 808651194 356832527 245026680 958302199 983627267 844928226 508023923 259526508 386645504 58782022 207607578 690126777 940609796 698773084 885262822 325963722 111211883 141735203 497229629 571739554 785730410 556163527 564904170 284293392 411158227 841396864 958125083 812645599 415315936 443771701 776470039 969472011 844754835 837979599 48653694 953306116 630950334 675633540 925948632 178125730 507871098 177361104 414832643 990426381 750709239 724504560 118937601 813425555 933048551 530937878 778682362 569093431 126627857 951555536 57545512 231685635 741385737 852224783 484084306 71256454 599377889 776265335 19968146 189730209 563070262 769772568 497673401 191157343 958839813 2478479 954486343 967038996 870791714 496431049 397194833 671986588 37968143 9894740 293054043 453071621 670022358 29214204 449640367 944370717 30709421 113102870 947059317 813132691 633853465 578443885 899008 55683350 957993092 72411703 621280411 451129629 307581749 60489358 413853696 608368997 378893551 929349525 49151789 702570802 641087689 501159483 910771888 329365499 350363335 263085704 943567533 862781866 199549322 85409799 720726420 471512088 833423532 761245687 253619941 262384687 238499047 298012126 268916473 234838103 496788641 405396698 611104575 613475240 762062973 336755941 567308393 278975683 416888847 883442172 873218107 419650667 33902620 860703529 478004667 264196598 180418308 892596122 951872414 552367878 493909736 423012119 437040954 736490992 497500420 133975331 364810677 40688638 713517820 666625683 550927685 331448353 10782460 13551918 451634167 15836833 953147501 786517454 915620151 894410039 265327365 582212670 363284681 986928110 825264629 134753140 526154482 548570407 549368530 996110954 227127990 518424709 242371737 381778003 392604877 225354264 203800055 675817212 745074517 539996292 317225314 705855674 71923588 55248100 573914415 754201827 47592320 518523323 948095824 718221297 456251842 307688032 367103469 684660098 556112970 590457577 200635571 426521409 505675745 977257312 947806131 294870274 683998667 967899866 193137704 812471553 857166624 428528512 601554555 510268351 533848507 583184736 703649886 191136458 460137194 734290779 104441144 957346092 226874474 276454176 569113838 547663009 736417630 625787132 730309122 614267651 221940093 401266990 497852409 176374202 65016691 10294147 152555470 450561495 8548351 438578616 770646616 589203574 396110887 476561347 165333978 434136018 336106750 37937600 349522321 974799637 247474695 491393197 567889855 913226947 177806414 969702715 258047737 981621451 70960722 745283799 534833402 213435564 174685197 523177790 502469826 669981776 933762559 868124924 995979349 141296194 376873606 124856033 195388642 583994322 883072360 107187689 978279174 24265998 515051818 871605012 929754797 827532453 969756 540644987 497076428 60644868 209299783 311306220 302611118 198228035 972032162 60401992 59147028 720558623 31272160 968072071 776890374 921556123 73861687 768116635 816478298 623093472 384274827 737021425 880115982 460585511 282106537 406588376 528799788 853467434 456913927 938286395 858399613 936265631 490783657 548299078 839416733 505569627 986300027 108979390 293178859 730858753 113077147 382881769 361641604 689973347 118170969 980879394 928888846 571602467 177067899 618663070 196212970 109504582 274906201 854205461 586520856 88354315 518105083 581290996 772210801 895761389 288792493 988384367 360772116 289205425 585212885 116075067 23659714 186436912 532970014 283685398 508455783 327607980 197159601 417603128 810726418 105897514 713079634 86453339 601452228 726374517 774751470 884912568 563041552 219372441 585055668 952874984 566533233 948901397 519544574 960762932 318782620 172718104 648450408 745227618 676413228 36104706 33088661 367825144 43874686 184704801 977325075 815326275 439939310 668202956 738642584 823471806 625853305 660124875 347369685 808117942 622896844 729111650 735292979 832150710 449113695 466526889 388062803 486263092 698438694 177370047 769148124 263677406 580698282 945085133 897613853 545753779 961157502 81946499 554852750 831404328 256961001 992350948 925354831 259817138 161622157 835814877 988608201 883029979 472170388 858211221 48982808 376072111 795941739 481332257 399378059 147684085 640647660 51627341 931617162 623513439 966630017 478266688 681195266 429344162 666648808 731293539 476991247 676608194 765326433 134534785 166043652 539833841 679552557 832042310 109838120 724482579 769032815 321589744 453170059 742409717 779388218 771465005 127533086 192281925 559162674 396904887 574593921 574140742 314470547 312130126 291124445 166149311 428831357 990888867 970530170 949282331 696679905 467282468 468912130 540933777 915055661 303319659 642711360 634402661 939732014 645256408 557589736 455570105 203464772 614853272 764850533 73866758 752712560 840753419 624283911 147873144 437373694 990212332 956745530 85678059 448727814 689441117 55471105 162992242 853667031 690057389 15763749 309208554 356336360 417302839 423184309 840487437 590408659 135706504 574663607 155113624 274744877 313730727 479515339 151712096 641704479 94326799 56543268 524635872 493378083 649765301 926364325 130694757 449038830 848786490 347660906 181275113 18034093 71385720 301674760 903652535 640294917 636321332 987872478 416947064 489362722 551748794 73520722 134559199 728391009 416670749 242369829 448613512 583152455 452533991 555852929 140691971 570193135 256789772 864530579 536624828 44775479 345276630 216907397 740797523 804738188 702803603 771409925 279451818 711148335 844956280 248419988 557222144 605270649 603350235 560821634 675359028 273517416 595307056 837304544 220208714 773569955 784762301 508744566 320094637 665850644 774005514 274213728 551162089 333006917 567946006 935039030 852836203 194094325 970744425 754891578 706443483 991017259 351813373 834187443 650018191 930603496 237629216 907994460 639434729 874330845 707583074 433596066 530263015 262745840 577067740 951832100 107961677 171970890 385614612 318968725 191080168 207565530 811072920 992301960 60815052 932511571 544661772 273302421 68602109 597481625 480878680 432585451 678985926 347000996 795688808 434117949 75285304 653146493 905728419 441031921 525600783 234867060 979844378 273385366 802445607 993528053 83507395 986654544 533195428 464366858 624942038 437008737 714399516 947845274 412767579 124904200 376461519 40369936 471059075 504196892 376773751 482107466 583646461 12807384 840728441 869125869 848983976 432911335 431691662 21492123 65337527 823617275 718207089 134982699 593123525 781466652 500399542 528934567 846985162 370918135 25343609 398709269 634262061 600681645 582767437 795138019 799048475 111637059 3573765 652122764 337826876 359221895 928478482 585996023 744893235 896908172 635118311 521779246 820850922 596731777 443342188 707854908 462173618 328472469 679090465 535039660 604301692 564800965 56473261 143957449 722424474 331304310 407040503 63773397 312835315 853463533 776007349 771900410 251576301 369587320 295644488 63027007 326197313 255625237 461174999 617359088 986163806 540093216 404009356 170565345 127022279 844563015 919554168 753244817 312357655 298340014 220121277 456772775 411887136 190610732 664296682 828540867 73306915 352870383 635158284 466425809 596448602 606823944 981265592 734927240 158705491 814241556 550084751 166035903 201652425 652738730 619240774 262937813 624631192 904088631 143748396 942025838 764126731 720813684 482158275 990800828 662782733 105134620 585097246 120520689 427497318 150929778 453430885 866630433 802690735 872340194 348835828 970836791 400705521 588330808 100745341 738475107 316523257 725976181 590704640 504810015 974534043 406899497 690407883 270299365 706130567 57623983 529806525 582587143 47142810 382255229 956518717 397954437 943962655 220186280 297810418 993958083 641800296 296116052 260206955 367765820 708513852 319309521 706059631 335167835 22377294 23105733 248401655 371855809 374099862 31818321 860067368 952638368 882744964 436200299 336943189 382798965 480232715 994782786 410958570 62305297 530332529 605955780 13207924 951152828 851523454 569940496 611665775 672774539 308900935 975278577 427575703 76487019 538548699 530636457 283828886 800754071 642520321 889047171 842390041 258909767 109110367 885275055 460853599 568559079 947147977 3012456 755772939 770196170 326225633 892781180 542483457 931097488 307145266 789564326 744860389 134959895 989431488 712694730 687798090 678813001 881663062 384023405 179205475 569420778 419708032 551482020 574484077 480584690 938042526 194996634 248654850 746906928 493442556 590449339 953784105 739410937 313516454 556339165 943960964 247625565 663429712 90687386 41182247 945174765 227254658 199390007 858102779 218829882 439875654 720277650 7078956 284382386 761416318 300598104 372057964 380805524 856845748 304531686 487126229 859022336 899479598 652532311 899581260 933924848 183373008 633759292 543333761 946388180 985427942 824866888 550802321 542541096 300864717 15643375 601532619 805172994 382105136 841272486 651104121 284253389 586061982 691725232 292901960 679024915 256000501 322150277 934924098 679925007 198837904 332391287 555549301 534933538 540550676 635927505 658252536 432750660 530947851 353758598 696477474 300221426 516823609 182173590 866175434 458745838 839591678 944689417 30189264 584595799 823938321 794187367 164169086 331250246 469695975 791248190 467983579 617140050 767874533 345009216 160409660 779573988 986860608 537498629 991777167 330696105 78845089 705349699 160335508 437495923 139378205 33877921 344846239 145977800 845564910 937601092 739905389 227696088 40801690 822991242 64205270 277041481 502127708 806768521 977132839 540671088 700679849 498384085 865247430 939597806 110001018 359018327 603576610 65430307 220815489 66581863 660819353 209810110 438265928 821591898 75061366 286547379 541671506 715425026 813955883 126945846 765079014 517409499 553332588 747149071 979926590 650444682 32658908 748119535 300810455 548237294 768925982 578635372 906171902 773795989 909995824 192805374 32054300 611191309 470990138 273934974 262529539 55286862 604956251 769331309 541693988 421871758 26373538 938080372 316957175 351333730 956578313 495220483 212658856 671620152 84369160 365627242 230517210 375426264 606567936 102749617 127715443 346891818 279327042 794325150 673290573 670365275 982093572 188601490 478271969 549282346 849546240 385137658 958614911 987317326 333771814 294255945 695162269 120520608 437117715 943337102 568634467 636939833 712660295 386291427 39114266 921521259 650909044 785813202 53270628 471949040 844746099 559329994 455118263 544042113 995062553 277291508 192599477 82414832 904432882 783487111 950966321 165045550 910310964 120693559 448295081 52730443 69694680 840286339 855051369 820854513 337144034 514571340 530933926 540090155 847382828 334147117 695934668 736019154 709858872 113861612 527613866 820020677 451782830 874124517 205412183 834438952 451647093 286269179 590759133 207932001 865422824 703897060 21509944 222693387 684314477 436751139 123687352 483205637 176694773 666365813 669356128 750791984 886149355 987743725 907554389 86560144 24830220 5585034 243510498 915196836 411544638 865732487 935715504 461539451 9725521 431136921 500567250 843143612 491159157 843137502 654089366 255689344 281204486 426598934 528478863 544310226 904140570 123704888 509584848 340415369 207457921 526841176 397850795 197670575 550346985 101578846 499117476 427978679 840139764 937715597 916295098 718157874 581227725 581979843 824945248 500193323 846021493 555348835 102486783 434691207 903137201 96952980 668648288 961484639 592610936 605501375 229575790 722959794 193597479 583091802 287898779 696234849 24092731 269512376 518712690 899168698 720449633 610359165 310914122 374691262 641405884 38918481 804322022 322818987 383029619 812703432 667751216 415864442 410407900 186111077 349038846 967241662 581978396 647626251 910102985 83493051 309263577 678507156 111667796 16098440 623512633 262536167 547816374 494187910 34742911 771885654 322865480 106391104 227428438 404787229 457801667 890869368 885943200 519460345 429463734 913913454 337945601 322453004 665640921 784234708 728419107 126906567 24244051 66615184 971243484 534442245 767730426 841088309 893698067 983408976 902662088 501316346 172973551 159719753 558075527 667311783 414735419 752804497 237866106 280612839 594874064 894921510 366178080 910969392 85842478 736460279 834743295 39212854 668173442 978571957 921623304 451574577 76143314 91551091 340166600 591015365 231173872 534583082 111656922 687714080 133747451 528318492 336935733 237038479 30414321 724005420 81136178 556722064 342992472 239152198 123991399 772687074 140975020 146443821 384812012 387221464 506620334 711894118 865851620 669517467 989254092 390563956 454135142 274464132 657531623 236040288 746401006 894615735 723837485 736113483 714120371 405133866 39199000 135660980 735922214 626769946 586538791 666545864 822817094 279996759 943339331 689278905 730123627 327721522 868412320 910164980 229382953 46117480 551550451 317194255 381033729 751726274 283044526 198167293 695160009 405753896 861383736 733869054 308598011 572030755 543774061 330428735 330613792 940975297 558593814 785399066 741685236 24380536 156901833 814113815 634851152 521089801 349908889 460957737 191896540 122058020 269114723 567561524 199040808 774666926 970956122 60110277 631370528 246248132 194331642 275327866 631336318 143395823 176280986 645370301 859450805 980199993 945784922 970743913 846672437 240906135 515400245 454298186 83338181 954013296 174280243 207959436 955204529 699548524 220493851 756664043 919009747 219998563 553824572 139085107 268591849 38429229 870791456 957221807 54328308 58589431 968237930 198657698 439899004 53653534 860306794 727340103 16752075 369887295 964346660 566469121 718988611 909210195 527320619 983671380 818996120 777590887 367774285 359570533 729740485 166588754 924100765 699395304 933381868 229583599 85923770 827970089 980208393 646729632 136893433 122851342 753953863 491953375 858643040 678395244 762904390 964210523 121250773 319970581 234894475 151157883 230085811 603596867 95691881 471881582 930276905 319572306 636337308 544744960 363162876 119222589 440676603 561905442 452727545 674037409 117755782 233669557 890597483 168775040 97788014 537455728 489112437 919718464 883571408 67916684 732243636 407012074 656393683 356230597 741024102 460296032 633893025 770644582 519570512 546901615 253368457 309382874 205512282 595017182 197385986 982729967 703530764 588802141 143285882 827164987 875312888 926470814 75653977 301580905 365098561 665904085 183051052 671572731 528710335 924378681 501409849 742809295 456237778 742392613 313822882 735343246 509029455 893885311 797075940 899378190 951784750 176906361 119468704 123253267 483492480 809855019 642893323 147905180 903582322 892109407 398225330 637742276 680900156 493775231 113925939 844274392 565191233 442109533 959055702 254017544 567029390 470061995 268296330 235058912 838572333 744681558 600793250 544218132 272659543 74358612 992488606 966361690 913539610 900748064 500327536 810073172 554183957 608232399 9437352 994011619 659589028 618885559 245085201 894295539 278205430 497723901 527746009 511347904 845701096 454419946 869846938 185197558 750520980 668976829 598412377 615389244 682665535 541108134 951392454 25882115 988786626 592142251 827546994 437040449 545512543 472216508 17372544 427606597 653326618 995628582 18623072 493765451 634724766 744139174 334175270 188318505 17973447 599410093 342607203 725618036 370799683 801330306 843429328 795876517 188341877 257101074 7983423 658667341 195561420 865221076 70498344 690242843 592989184 644727644 196469290 82173868 525163430 716473 185208926 98566759 131054487 421438025 736614064 140550112 710110239 78526457 737724653 90425578 369405255 971959963 740391228 659806879 97970648 233205024 313351600 307189514 872148535 302555904 359145644 541524742 611900436 149209483 272863764 379981975 55417127 758165982 181256030 90583821 145767797 472455173 555868928 168086551 82982804 341766729 435306479 401008927 129065947 744807173 294897435 73789473 480505185 425191189 324446584 787854707 849340828 665947243 442889545 335974646 963718551 443149251 725818078 115077528 218551252 578466865 593532594 689033229 113756448 869829378 570556461 939270505 28241648 976698254 315387945 939158611 966677272 484083890 939735558 943453001 518346647 708010685 911852887 27169169 661550964 292231759 548602401 308174192 245212395 810446606 148223703 501046502 813072529 365270670 598876506 218054727 150341292 412746306 12645831 575095982 109411825 654720622 877693427 709396331 818781266 251216033 493036894 151582948 306009851 479226439 534631913 691234287 758558635 54476922 23311754 88158061 788333613 848086514 780704115 663030485 151879985 240223839 304656584 490393654 799069076 523936105 750043740 36725522 912899101 56803125 810320467 960711305 454775108 443838769 609925079 752398000 501803780 371210954 638255263 917494315 419717724 283429020 153475746 850118246 966793378 642538108 749169906 10254175 66912202 914998201 170161615 646854303 390002570 213369764 84904496 26650046 101831668 286410410 73635752 779286124 978314428 738128969 126117269 713090638 198816867 875598829 180656810 659956218 257624625 286088064 897316109 900163875 566285316 301569280 16862654 664323168 512406436 141768652 553939883 134123304 209109880 377201303 712719116 225817457 114169834 277342771 259500897 350403922 405173433 144273820 296234757 444868344 175910960 731443583 671618932 438086621 854965738 842608622 792173410 26164305 451017909 733035019 607670961 511220850 366038876 594579310 390092912 640334618 198423271 324882169 913521085 242439128 770776887 923783030 993561323 619000510 478034456 269749857 241228146 725524478 199318088 776373543 365988066 304475310 856622994 389822852 487904302 269430737 794670204 154575630 710918524 826738391 257159851 776061987 774260765 414784481 588259872 689875499 794752712 597824059 488123507 394400848 387866989 658030580 838807245 454377583 854903690 263673499 21102363 129300181 422278622 380683549 878374081 720727106 783324475 648532076 288265291 689178165 315643559 733972888 10730312 590004808 11821364 921849885 99936119 52413840 552940284 143757065 655639206 666241298 657729883 511379384 552434785 374479021 238800918 411248060 232588748 843963921 708029422 635478683 404433063 637345711 19550342 652614966 723438233 13090820 42135881 878222085 556554542 388291393 858997586 894050648 895631023 50409830 215532132 909105720 384261413 431055311 876712810 873216857 653040902 759687358 870201126 83013405 788903723 898178730 562213255 576605509 983235113 627926633 284215099 845001874 788560430 591911075 334443002 93244904 290826894 525610880 720157138 976577005 866835996 75810804 581690119 81212457 849279983 381705076 77590764 755396065 593147513 729918223 987416617 404413730 17636741 108680735 536405549 303735189 652270898 362081805 596400076 843706947 805240501 275898509 839791497 898802935 3653387 239512364 4710173 412978474 243372020 300739536 954933931 642800885 28677212 242994713 977318415 769822044 324651339 279724422 293544992 523926104 198974069 411958777 220394432 122757242 625463112 633687531 637796845 752468648 931337160 889963487 711936323 118112007 372642007 882741738 202973596 437709698 254266679 19267682 580831775 947068459 214171100 835294963 573843709 725092706 478534924 978482093 14037241 446570415 573189346 534904030 694755613 171893315 269287966 287480303 917050625 852203689 622644740 400827991 523809908 441369433 286140927 26171983 201468253 63733926 89994284 921347182 63895954 192949583 318117139 873140203 970772129 337465275 208132616 87263726 96448320 558629090 964247244 880381276 656373175 417381893 907538971 296868207 475451710 999966194 735984770 168731107 424008407 954997267 868011926 1104553 348092925 718919167 933146887 981345007 889883187 413025081 211896620 920034858 93919861 191797411 770687606 507381311 63940569 952277038 973559840 1079620 414360854 98862234 573169813 86989800 364784125 567169541 428123911 737804179 810503846 206814879 256714048 153884437 306955077 776788707 776251050 518564666 113962137 963618729 111112253 572926039 299374832 323668352 612548966 697622532 64833328 30685408 313979018 779965813 743898544 910340412 259823847 507876965 522689868 806300645 706727032 983822488 876693943 384788769 603926604 353225907 342614866 214389369 128229897 875125138 508772956 51158657 605513725 94092896 202869154 865043970 832987322 279778851 143029840 705466301 724183516 455374297 439981079 45149274 927210267 476780455 601416020 24949003 549543377 273608148 858550925 524043857 683523754 148883176 996685716 892769875 343887509 763258190 202155534 106394179 299758439 482041384 422897765 929581242 815293331 43428932 49732401 484598356 99051146 108720965 451424845 533522382 236641181 590628137 410507640 928890070 271169112 559617162 278233143 442118960 941445112 636675962 127496920 662341396 366203806 469687407 567004684 390839143 505899868 140289287 377853369 867169500 290862021 662372485 121647122 397875032 750954769 325636541 188298125 732659602 459518240 91889919 292648310 985364462 808639173 882835229 437716906 938422086 40034101 639273411 71413607 823657433 920839981 677571669 33174196 419883057 679939481 676381349 468936237 564651869 341180147 1814542 765516656 455048101 424656839 537018555 818995823 722002947 395892822 228082273 957648680 709167009 500438066 471808697 492951698 320725837 608806472 694892956 608796560 993505249 968094632 597931332 446735056 418890310 90797951 819539324 235447459 44322348 201595308 751470886 162879088 942017573 171960956 697118989 906470396 886938998 647363830 103506515 150703447 632343724 431408807 170877 854387460 773555147 178151177 914139809 627103429 118997998 492738349 189698307 963656787 942721320 735139841 229170082 24942388 718002758 333942660 315964376 280704118 838570593 246368696 722073044 636515621 529316732 815562695 961639939 286617406 765868527 20564963 930824312 588084190 59513922 570219948 183156910 281880062 991747938 184219264 837843610 719914990 915548014 764783319 538555665 817888962 877675041 892622407 189903076 26741439 280522828 257415603 100374016 611420168 829046442 806405766 858063116 528555136 502336202 32211518 772109562 59137260 878971820 58498118 665603874 666276138 627190125 595291010 600909613 339504497 646160604 959784490 203004489 2286071 10588998 118622299 884977031 290926495 447420635 998786713 101425315 459712359 828721945 325026069 972681773 748837936 940415832 855980663 47307207 713182047 260235225 522987938 709473650 745171233 262771434 999122631 250554892 247984490 167559303 879780307 951751634 991553518 966413480 823285693 237349143 559793762 383277156 111593195 346481220 759398773 363311261 996596745 724444260 951723198 789014989 505015529 909802580 931758619 570865828 82689032 999320931 145554162 768979027 661956330 973650405 667558444 759305294 433069502 151405086 886660737 154581054 173361776 169984147 603326351 625051748 975877678 802781959 130507492 595430355 666560488 37856071 162061930 847480767 498673451 234044282 235125087 854017966 779512178 232552102 394369540 324804213 526273679 957372957 83265574 115114434 289259606 83907574 93007258 129968998 263187339 311219731 717581956 374322244 293556413 143315153 720600850 833405361 407928518 656827752 923967012 165567511 954050779 605065168 835957404 859730 428016786 604031850 871276732 742675219 496029697 835575036 306244575 336041492 528835334 343820737 424426697 897241048 238407119 718013851 855403224 484166652 836881428 522224014 373612025 755894761 730536329 967295697 941859723 629528166 458301610 341088583 184442361 1829543 450664137 522872421 670077489 675787619 319248272 308824382 540710672 178645223 517298403 136061645 343837981 362600057 456038405 537813580 800975416 854623919 636762231 865323982 932103741 149456125 134941475 76363110 476724857 801807290 639829179 850460029 995468664 579651859 595892851 530949823 480653945 8148839 224678249 566990100 16155703 981617985 499698457 717720084 115333851 618138091 414278950 768288523 200727147 129191363 694537272 659343209 441309362 399053433 168254301 363165078 885510447 571064269 903478668 783051137 539903599 389017442 45695277 103015716 995606527 346561944 583363688 31578267 852396489 341486943 342409084 406108098 371390521 362958816 654571363 249172336 978820116 120121572 584195145 875031753 842418277 79602152 886776070 492117184 51802341 873219218 652467560 593937286 644624388 275499711 674327009 258630357 173049999 955631316 203879432 908854223 561913862 366316177 213524590 160131349 537570209 671333881 131080042 504568204 667813073 593836599 749745764 45333643 875999097 365066088 2740533 955508203 215743945 107037528 915089375 541924798 909632832 387338723 611612120 67294599 335375904 644195645 64014829 717222222 232563223 119155179 561545432 191303378 226245684 309608835 392361328 113280698 470235175 992238160 85042782 32963822 493963560 216977250 370918995 920888156 173835940 848021566 256081613 554985363 547933153 26065477 163102757 511926716 598925395 488879364 638743994 555363251 706798481 419735898 223553556 364883557 265014407 511170697 652108465 2225297 38850851 390730390 523257928 19113077 546668627 572657481 558287187 983618882 536591638 795481721 9837934 925097445 599876390 12138039 293533728 464168845 473108432 196894589 196358684 364748578 977912202 465385140 397463532 219370443 407576080 246354877 337402800 909401662 419324368 277988744 190130656 681968631 73627646 941094300 836120612 720825954 479568748 64182086 131961961 230102106 246948739 318483452 527997349 194314461 380004325 374811074 182735084 236634210 843860071 734288704 443717113 856912594 395460181 665052577 655975362 335318900 292707237 801112839 592147126 869744091 291126523 764311394 976628081 442558654 767056810 986029321 478623380 219401781 162459906 589826412 731941068 83850843 435174598 883469357 90043114 242394619 299103291 49373535 826729691 424274683 503461537 965779334 58591854 238654187 769479794 141426376 492816509 947776184 678186961 676153863 9668067 480625375 781926797 132347100 56831293 587614534 720259724 335969191 726329078 968527506 902776102 70195861 909735281 193739835 496080089 446544693 262185529 153620373 212132697 561159252 670439792 329634801 871540417 714085965 769250618 359521087 916202111 292867744 952339398 955868969 641586455 534961904 506315599 556862447 184798703 866998127 431370694 649138038 386369824 666119688 764528323 116196395 459636041 498495221 468224704 240652745 4046820 282561218 987028952 651328398 5747877 43675908 803390529 915953056 44591219 822829431 502051277 297392584 426866019 26346284 376015246 21971204 736594950 306370818 801216440 827925826 519503689 181470754 256461815 343734162 114407123 844836838 154711429 848588715 349432732 994712155 396016223 632955156 53711900 237158313 235210770 309989355 718461172 828930280 204180143 296966620 348745584 730651824 630983635 172416088 782268092 660057662 672619687 274650938 234186651 811573937 793987173 432680330 301910154 840566715 631018470 306273873 661050032 982150762 699014609 5439340 946031154 769987851 818859044 140266235 794739720 959053203 185351566 902599700 895180173 231671412 273957624 575399891 343798428 680807585 639363161 465952887 388303349 872219231 610127476 37269222 183227291 374749484 839887665 753218727 72425181 244347495 935696167 971681663 451073138 277407416 633340521 562649231 929767973 396651667 575284058 753125713 410112129 525607866 610161546 589090000 570749681 330976604 498295797 521228655 646177569 727221490 42632719 585750202 123690481 749029117 441179628 98635776 39593553 657149322 679248578 31803622 332758994 760985630 194882604 449668289 213721437 877617711 117858754 852245881 741735361 831882769 468379753 65180226 206401058 721698543 718566071 425412498 142270712 813396604 615505548 975963303 207295853 873661069 560213240 144816454 472901901 307761287 334078967 683025061 184504663 823622236 526042440 825159392 105851306 671430309 946106004 734916067 333119483 8088264 52142682 823769626 729720931 340175739 111298393 756120358 304366160 585997178 113100312 280152585 945175595 54891091 270873988 687098834 897720946 565099052 315203422 244273784 29198 649270793 335616754 464427215 748510136 636277249 828386352 88938780 693406191 753738983 415534233 91780413 369785707 447620211 326586705 295999792 270275029 36184040 965445510 48642461 41649248 213845179 593384424 371740101 687303730 193217667 482927160 141476003 221573405 363387121 239809268 41019298 482104913 936894982 740223141 413833440 997014409 338535255 312800336 956864346 330996856 978236569 276941011 426715103 614738144 847298843 707882512 353565508 128835698 513831939 703449729 413039531 819863874 682566346 740891330 233323976 987206457 610920989 994451738 633371515 783978745 725399631 594181397 19325356 143103262 366421977 464167137 770298191 941579922 659129826 988711910 918351596 471985817 752456624 348621723 715239614 258158100 108410009 217643150 236686981 448515788 311631015 370405967 988053071 645497814 923414581 944950869 832807009 609709483 514291077 841894747 634701561 657129468 805979740 975069235 746137619 858699224 464070474 822591310 368672650 17428156 671176900 169097088 973170017 399269979 382584008 942097350 698484366 271937947 174096384 312739619 69819956 540618436 730730807 499981107 647571215 234211792 572575378 434282020 682806513 681634257 507505500 415418582 804091032 428805698 250869726 523134674 744143535 441675903 18420407 428647642 361027931 795506327 257847998 161764251 84964293 961169613 699083854 559641820 517955085 121053562 782596597 722863137 144277553 196495034 325276812 79041490 423026491 196717564 617498088 110656644 698156789 723398593 956679715 952733828 357371470 674002624 795452244 141498665 362104496 136074596 18430390 291440488 303666934 190367554 614251450 935328452 711007732 810896231 21425381 54331219 838356581 125938167 435087210 156959442 809253258 295391380 625853054 324459473 353459302 741817637 256831865 293881809 414558646 613954009 774792350 508493549 179157161 661586503 363743363 795430416 12264263 314397063 575163746 662446816 978948097 516480012 814092771 397419450 937476586 503590422 520583418 326502746 459101673 835020023 784084885 89496884 11100638 375459678 617896984 216676234 753261505 519794544 963907839 224307789 767788470 498962954 983874553 381338646 853653372 362193456 484683654 517809355 621360440 641724027 874294838 743075773 909589409 844700038 782152569 562915191 920706803 429138752 170527760 22422497 197427899 398286598 183775350 744442238 891418229 668920536 413846466 608728731 384139745 918553137 518309998 76025202 196349251 819925383 880820062 608206677 717796044 959399388 407141488 959991116 988534782 983840256 26975091 618882215 942700296 724619933 978824781 360112418 282501162 781406350 17965272 638030038 298217687 849311964 339537705 115747777 283636987 321998941 227205471 838093311 481936484 9603096 586108492 351355470 80255262 58299695 126583090 385202790 398376510 892937905 722365578 334274715 65811554 563374422 124722565 597794921 212489504 563668052 258489010 135930963 116131262 768238988 19826886 240614032 553920858 494212002 164261929 458337892 483684598 592286018 527608276 805196130 989044977 902715247 330910680 922195229 823852793 528175472 104299640 967008175 830984467 781657638 775183641 158753757 4393660 340064479 636221198 312862559 281282419 882596193 575248878 409133395 663418164 504322799 961253794 340786532 429710621 912374784 842040842 371489041 586140892 423703326 117637059 421549102 554090207 530592426 739687144 59957644 753000767 524330786 782049815 988141911 581450964 680283241 231240575 37869334 640631591 14358187 912366950 673140415 630587228 597951795 741493264 734883689 82342441 59353639 174599281 302828451 446936352 762234620 352054669 391944011 721353139 105622792 740694509 347378336 914105812 998848057 715362895 201275399 780388594 103622181 384411442 927586823 289342691 963800540 374608459 432899651 297345770 352761475 189132029 676356080 230323202 341944546 120543665 509009196 903453693 504376192 2410290 543640967 890540481 581144186 537428337 153151441 634070549 741746090 31660408 964815095 571184289 95277092 708762775 148330158 619442854 906788738 219719184 661108635 866446527 328599070 15875909 439563890 204443432 17453915 331514404 579471189 430913424 850302869 532638496 697007947 936241080 422710200 401064595 899954953 57482203 935936182 532877318 385897698 106675948 354021107 574714148 767285832 200015313 490532140 825197778 941013049 566484654 963410605 319186801 910290873 270709883 890575446 254125919 27377659 851822173 649709852 32386949 663180220 935570412 148087136 537059922 8508445 894324634 509004712 393678964 516991660 904864607 94350992 240577868 653742480 238730725 726036682 767715663 396076105 428791136 79755161 808534512 610893442 916510453 609726557 464360358 137587088 337714407 649689655 866561318 355665953 913970011 100299866 863453674 59208732 234120136 866811882 545887535 911500678 709328953 871895913 554067107 417480211 844755731 741360930 436278280 899042302 749127864 856453326 188205257 559142401 190498806 194190624 544523746 552246649 978554878 257543310 798352053 571719414 241372327 734999811 87853107 223451817 402960208 335124899 336810739 294449718 711180050 167816299 987554756 628518410 630491945 85305812 942156135 745692736 566208754 613781141 929044609 820859443 968659558 24955308 47124484 169715199 980424963 150200019 91068819 210802316 494206871 313903766 912800896 108497442 633910700 301926739 656991717 544574681 409937888 187357151 664610024 269124990 551845333 991362390 717595016 70875610 321674526 505067620 484659259 896488217 592621302 505813454 978850539 172825442 90112431 75376062 471829566 267028315 108425921 851166629 747262420 137863927 749193883 986207562 662109011 996721483 853152456 965562541 350689852 184786818 386117758 372592323 125374780 40487529 521003835 429343226 705851003 403931687 142683088 135012268 690334140 918984987 973579950 407637083 798348147 402201610 366907977 692579433 41988936 72243346 181300959 779851185 393058318 559077645 80380940 397778790 799069910 389631221 316643430 102282187 490691717 948655160 286033779 370457489 784871485 494697298 258644682 982987213 166993204 933639580 380730657 458065026 72697140 313899445 728040658 213793386 832152607 10610447 198279733 680830096 450679797 245330283 743508075 465569142 359742862 333044095 826967799 3517047 720987575 376227540 52397391 970577539 120824771 941177669 264956594 646053182 640734641 710060939 371751361 365841814 420582064 324376293 728333366 317131097 222167453 376243998 915130792 990511129 444203245 881354260 406539732 353156363 177909879 286997746 766865210 859461397 16387096 290932607 42626053 319247334 180972636 835990843 269451880 72557117 267776427 697719335 303065493 370832048 858734718 930342426 199422617 959259138 913065064 258175382 947113371 733608043 415550488 690781168 409216752 359972306 609025645 636737829 254606996 81831538 8374538 705482704 340600429 1905198 399120810 593512063 525513544 834091547 578268364 958658755 109718872 370345531 872071964 475110093 267378742 454985565 581466189 665812694 630815 541639274 837701717 969801775 161825262 829818780 431540313 367907598 77483206 57271601 3973705 344692043 327042028 55144168 261750248 290845113 100063287 936791963 776673983 708255311 600763742 305507547 440590925 386395473 808554267 676566736 203060415 925025489 876176663 757586137 396891832 948628124 180441433 714843441 155678307 655369625 57619890 600723236 913186177 694668214 917278252 489915171 911354734 368694029 904298085 873195562 871145627 296573632 940687805 649641468 223609275 289480208 332100133 427613990 408194224 164606181 147349967 271552003 904471131 363582443 988920890 940235918 850351134 330637532 184343239 909748746 326983510 309344770 857932672 916908075 607399277 39944877 831873387 397723635 285905004 914482073 147292421 397623834 197135392 75055857 851755306 52703848 532056064 948409912 202900607 533858512 993681302 19995409 40340924 825481401 771194443 928424091 245402469 652624293 406237084 724987261 292074362 195742556 800694916 597834809 365989727 484079864 39027841 702069250 897176372 16954876 50852091 212833613 84706452 727351071 850476623 879503347 467306037 74220979 388780358 998631420 130104170 729854437 929885526 206436662 238476668 629695802 542086222 536081973 882784631 808214542 18247397 604974131 987505245 566671776 458165669 528185941 397716610 613876967 674672223 694242265 47179016 796176428 101016465 175869105 689264980 890580098 219668611 693105007 764188547 2659931 513246347 877013054 300623984 779776467 220154646 868748216 734478633 851443731 568830374 552877513 587893217 913180157 351677566 245999379 344737149 787117431 457321343 345508938 280898061 867461155 217150861 703011247 618429060 8709576 232850969 521581211 413583232 106960869 570412213 399877230 587287957 993229389 822544780 194476882 362791659 433419536 793819495 824540082 851419072 435090702 410895451 655563252 499371133 935237076 363748746 497308739 683319200 484786572 663790412 622336458 38180009 896789382 403498535 872569728 604476578 863977383 584405286 392864915 5824305 528744828 255523989 477789550 326578149 348369424 77604813 713168265 701697913 887732240 190261763 389359933 390220315 179957530 969871801 137892300 434105532 230373889 350714865 764179149 282752853 366596729 526968895 656880956 252299340 345469844 25806032 291042358 171963333 676522875 802417262 571847234 360665741 806914267 948905048 782400084 402328650 121565404 701325644 288618202 163073504 399196930 173083866 114250588 225862607 835119346 821563747 360493995 221480591 144635734 426757518 122508250 290929453 352050039 709266572 948652912 833446729 275918253 529765853 417290656 339186729 962026342 673900083 392090765 209813764 313039640 837408217 86577255 191603033 649116232 872820570 666571677 676613965 297435816 721815564 530058195 84088904 111784251 899723219 889808002 623832660 664052325 105928100 410223249 51239998 707966316 361736588 428560703 864400690 783768348 662468625 124522168 849006852 172374037 236270363 767054234 395127065 271903043 434192279 121020916 62885808 860663078 890313057 555026638 816735925 434299741 397481139 634714163 601044167 784465995 420719349 879443064 42582197 31648090 154873240 352124251 812358226 913286639 922358517 482039607 54528854 179160272 901603567 303502787 245144556 242362735 68213805 596611414 396950837 484636945 633277702 405722168 681075816 719480568 336965424 533759745 224393659 478438036 922022012 533078267 90903171 19057426 819787749 67459375 240859734 133520279 767402665 672166288 167936508 59227997 421741225 177874536 90158266 391283691 302653725 292845967 563180480 781842120 859049956 593042611 756395368 325688647 114542141 590161272 61377102 209692275 623737639 104144425 280636764 407321246 450936127 610113532 555432463 589966656 527115799 788726957 824826640 555917791 221272228 387477551 461841794 79464638 816282536 87109873 326639801 226890217 30244851 389998506 415680521 250364200 290481121 413368736 510197755 741026086 372336441 909029907 609729268 688343590 202181294 951752241 643040861 514005291 423015568 619222982 640227221 519919014 554514752 787717923 949596250 722203395 819187989 728408824 149927295 954842599 651253159 405696474 347052608 12738830 341055597 653971565 849624270 595124446 658841636 519602668 847771062 314763200 639336907 820210627 875978909 453387699 171991197 25067641 177302583 277308088 700048698 462735243 243234294 859264052 21359554 571669686 474558801 756553357 700743185 485311134 50877370 947594785 319115439 727696762 82214022 128363558 590762575 670207925 748223044 646699199 126388558 467070503 560595888 888925641 151635944 929141339 494914931 140317770 611550703 991072312 362670084 266545559 23997001 845457742 358718233 532818290 772834858 11385442 938270287 470226318 904871088 705178828 416811383 804953569 401046213 797969893 958007764 834608237 508061176 114587189 844174668 442464655 564818259 257520353 245691406 760768804 775959315 731796781 256007252 754527307 567216918 518703992 166731372 844268248 166815765 547903113 601544777 61882225 716301833 15964858 905995482 552761902 680513911 965232492 182551952 136932948 597837128 24344929 487324184 706871697 714738969 656219739 167150775 279540524 989426463 990849433 112267131 639776463 252813138 113476203 708036256 636348680 227145338 533299861 165674839 650360526 639386582 496608047 39858010 797794148 375544724 609124862 151526027 730520802 641033590 33155043 39254006 152650758 270226817 686770867 664674100 483107095 564421911 375903439 511079122 807627884 438635834 643817206 327766080 558361793 775542313 313942360 452865610 603223841 140213956 264130339 274308948 841189253 300909089 148897871 944915969 958668097 221189384 382264657 345016594 902087310 242446447 895549182 262138888 972512678 318036780 602751704 459810988 194947328 521624175 380269023 785496376 794839144 528727369 206229485 755070106 191485140 522311197 844063704 780527953 856807168 47284647 463041196 789037644 655571976 767511920 240484652 204502559 388826067 542356621 78656110 644555340 182526990 940300679 902658652 54676326 582607038 588790463 968000725 128234057 699732069 190048860 349178500 714284479 756163288 678869322 228595668 802807893 630728228 662816147 476021771 915757273 33309702 63781576 386642224 984203197 895957521 974889783 788000521 344449966 800535164 859426526 479304379 631702899 9253933 657685796 926314511 463203234 242102135 406489074 920758791 578045824 165018730 787016589 221524037 382845599 631397475 990248466 89755320 416712761 735311125 746645886 513802300 345828192 549662044 295385963 626132543 882946719 239862296 450574745 536565113 173364624 307366351 862407540 952145987 343965922 59726705 454825358 555615021 262942566 155220006 140618636 998232069 546785265 761425535 607512760 106399584 124020938 518302325 264181638 179408415 111529973 384269801 851465426 93630513 226124653 5111909 753680187 907795545 302428759 937607308 779653138 841108106 428096805 936355687 239697741 390715443 570739498 370402044 792821127 889141901 347713689 815605660 116399183 12221554 675130295 342300808 832089643 178729157 707657756 971636567 449114866 174697374 377150779 317393931 288592802 673064094 95232353 478476847 44306939 675230028 452329720 65502286 55773396 166116993 407190117 156029070 444344850 136597776 991356551 308515150 948081289 530461429 992683928 270958427 963816574 620522832 800179873 277738196 346685915 448631299 384910115 482721677 201627745 950905387 530007145 865547397 56439328 942300245 831881235 95962781 663398883 492499765 6521988 135050093 531779192 503465111 796090078 372399094 678288017 912912397 432124794 43460 45136445 309031057 571529097 251542356 764836348 105049230 315340829 468037238 454489140 354279713 346716885 294197526 782902672 427366844 455484838 735737165 623406710 172357798 213350108 295764056 504422089 459038660 692980720 74066034 338147495 944479242 361485944 572301606 774282446 280194072 930404680 200923152 703954791 369351993 861665401 782981522 769850159 271518410 787152772 670574020 978316273 483446864 251030324 329076165 500922205 597456484 355594220 104280812 433348460 18501224 566306202 86418589 533570069 158071833 557260856 397104040 581421954 745620068 301731582 886682109 55664663 85890178 668645395 660894909 985900369 650561060 655686710 6540565 215469629 309903095 297879588 736121860 668060415 583699401 921645127 989472935 15144879 445493806 469373843 863003164 575296578 78286980 816625664 490377874 780171371 835651868 254034173 989007200 576326450 371667631 641167438 322615729 387615446 875893843 322271536 436111106 965903132 895608860 289339293 396723274 291278007 49006475 942923288 437455177 407952183 187387855 394429389 598315042 248042621 88213692 680596450 113024988 685723660 91407784 332216579 686381545 803928242 173392398 397055061 440465640 979409558 78852267 445371662 392298926 347574703 432740927 978799491 427691176 271115050 1478008 406005259 407028850 527859903 854976812 837669841 191517419 968360634 466683313 631750696 33961872 916636622 665093076 508917818 232417686 941093063 598338526 714387901 878653359 325011500 578563810 216486866 217141523 917389921 154177537 730084217 241304798 160119963 47103068 248731234 447292003 275744848 580023626 358090725 781560764 315432163 834888899 345992158 113688917 266443693 953274319 586612380 239216919 660575043 576151289 883242849 553805653 422248169 769099847 888225327 386160717 935599265 579078150 105125993 467608650 949814716 251615481 146890587 700504660 992603846 36649800 348918519 776755716 839721870 378575473 606051613 142716887 27304911 290399164 187101234 325344256 950197109 553765922 231045955 890770342 811659699 33369376 306767097 897750424 411479501 175020105 973282466 785463035 802030958 60742948 367825589 856374070 261393043 935087068 106139938 223326979 894486912 435808790 459480492 414835369 891447987 179810261 224405200 987829868 911259698 26742787 766232729 564695212 586657264 699130391 560288555 923383647 999803450 397179777 796117945 503133668 358797094 605668255 266654336 243291921 447218999 253028575 119347940 470087144 286870310 11863938 914506260 483424087 787858625 90146544 150831566 771781975 936192835 709069714 334478178 801715551 320575150 605865928 289416930 994714664 637120435 456844631 103759052 261726268 212974760 199346796 211359014 240356162 292499953 207454086 791076852 376209049 228661082 103328470 35720691 765843957 408534709 975178374 110685834 315273794 574489707 652614199 850138761 902581127 396017128 608428845 670535886 622235095 216648922 205581062 722600111 615535954 604414574 248046163 962444503 232390239 450873645 546206457 359758230 24930716 456645661 833200180 210878066 397543116 416777348 605088266 2474696 128014551 521235524 844444684 309384379 686071356 565811294 71447587 663178672 710536858 218549866 488213074 927547007 843375705 363013864 280665058 495252010 187317564 233595606 897650889 79254620 331969386 854194091 859252595 923344094 246409767 671167638 937275382 136439171 172618298 527885553 49381204 908135905 239866654 880646413 8751123 879420175 647291370 912275933 25783666 832555152 301252647 390482974 971996005 210650009 181132929 784511317 7483360 718692344 901766760 108777466 962970169 700035592 123792765 3926368 629351456 529163421 678543978 504662028 605432965 778226828 495629399 206455744 549080526 377589849 570052744 926826728 185937573 18256924 192037819 197514781 79664518 717690568 441413291 856797370 874570149 786836836 690320562 84142864 673552058 822331016 641414160 174731550 792493643 452960158 353358986 336799362 371257407 498219954 865606603 518499986 927311669 556863243 841896083 632374624 711434039 355728421 674219272 215794812 955389297 398478677 518984424 568447680 825463813 238245977 638289445 932901688 168003017 283235260 941816391 167773817 523632972 640224776 782230336 927175085 678004253 18700005 250810799 961390790 259625362 969710702 940685415 279325566 849554647 671980087 719615109 242573718 918752654 344368023 541188665 482481862 638381408 747484880 493257501 311370914 289276280 918212403 943667542 83556701 484475263 340412472 235110089 216273145 763650389 891282178 834389110 700193477 784941931 884929691 506849895 364762050 23733272 846324451 724191239 710741461 301062225 384412734 931230263 781227839 906589948 500187777 289208450 526715363 875494236 355734410 844777640 638761006 815176616 665276561 737507577 467264092 822982327 652164185 222583567 860257507 824741629 288983972 506255904 732408856 651861911 859992554 201393230 958806884 643356905 523588702 68623191 918385435 946378368 736402745 180230762 379219904 888781092 556453160 763746955 28157608 442434224 527197188 370779699 832705347 439964875 488716955 653995124 809588500 695062682 600960705 755024438 258193771 158450128 713543776 822212237 830629746 79504928 518339047 783512461 405346151 271514133 394834825 796262251 723809200 15866637 482132969 287386544 960825308 263258753 44982920 788297077 64219483 602085895 582080849 682924740 688822206 888352481 188704348 955357344 834431438 245905099 376778534 173907648 254451169 219179631 816131815 250076372 81703784 593803983 602425051 429598093 261577198 361060811 50159903 39948441 612514765 342745693 993602199 801634145 397944493 527120967 587443908 930457152 893272026 443942959 87302087 442107235 110944253 43972908 943805707 869169998 719693594 804265915 722057639 246276522 967909172 948709694 369105648 572732532 154737845 830747778 949904011 440309607 590099470 851789316 616520724 411449600 432541274 578359057 41905077 87092861 560071181 55813974 737511487 630595587 456046767 379318213 529560940 808757471 444269341 222233330 465465653 878321086 271979113 531487811 534288664 819691463 342342030 979847296 322409598 377502074 658817651 314046980 864635803 848028282 492394952 140970423 921365067 295454952 669682377 824813092 368042852 874351615 662605450 547072353 172473749 240548048 878185544 777815 410777146 279751516 365838503 724045059 888250411 811738916 657464684 940324938 761105927 41667687 837912120 936062521 363684548 171945882 463795600 982896715 769723345 653339165 820515598 774129562 530493274 817967175 690269574 678827185 584876998 167788275 235954130 140373082 832713335 991781839 360043210 830445316 423406016 832185315 386454584 857111078 111745036 63118739 178069687 305588065 350833453 187411105 453697654 828554380 385882179 795156255 62353702 983440458 760638171 687291565 384503760 716460305 893283773 812990446 203980155 358445823 790300822 405625305 959712322 607949932 528608766 275026593 123240315 981363712 366032482 186741809 325213750 795623023 663501322 475075396 301576915 530610879 771054355 520586034 899359266 424497204 703385618 115697651 470217452 859018179 856990914 12212122 885955053 378293598 903328904 642353009 212458593 518564235 6710956 436477869 375649889 995500806 462094440 528090792 972104086 981826904 422447744 408201928 238102715 397924275 246666177 467056876 841897879 130195049 650105831 334227176 496767438 941034779 891280327 427569551 530671603 817505372 902470154 351702064 733610087 915855571 927656905 888365030 604182889 877391980 137428122 416615849 93810633 274001555 186733583 509989149 484972439 775141231 796899732 112627915 969991525 495201708 730780889 512780455 51735600 33518568 616934545 770909607 282930635 230404954 792254884 878014713 790890893 508625886 752114372 789716929 679590821 616683837 108686798 499977847 516348168 779721608 225855661 380086777 893489585 170603830 575008128 738947940 634958081 23147790 282351187 814042418 389301958 807289602 661559161 744298004 168238303 284913097 209577826 257552272 590430072 355093619 388208518 557059936 501281349 755214951 626585532 590415306 353953690 653074876 578967700 946668884 382473383 425805086 613544363 624648444 142228301 617762177 516611902 548752524 283411692 314272969 692765514 88007073 96372066 773875882 35759395 604139397 139127289 49642332 155919674 610363025 665592026 935665736 683090106 556194039 55766280 697164994 789901146 859563555 341807266 655268753 853407783 671534224 216303015 250811972 700543817 223353264 983067503 528093404 469119832 361937092 905207753 191011790 2677632 59005663 727440319 15864569 708736192 498835432 781217173 731674998 542239749 972712592 29458184 513042206 880995723 106277716 439569314 912616839 600410018 378830386 603845230 273955936 771717635 84909278 304451959 234312437 752176751 918868263 988346000 599627067 801886190 690672798 127554434 910976047 147592921 479825516 559494971 262870120 897263426 437940530 640946512 728451946 943819027 685852507 291211895 230669160 352328783 565442275 986748116 493566818 347920076 485577583 529447938 923504764 724927468 329816791 140124131 501379756 235324619 926852736 973000237 656233995 574358301 778650444 32301160 325123655 813850223 153892694 776657056 867389598 650012153 62103575 523106475 166314123 13802359 513071183 579966510 379016055 527167010 524701232 662091349 84952873 506764289 388084647 10910751 138346417 678281699 977252715 919240103 349851775 15595248 467937814 960538415 548513977 562286318 322945220 722859884 218260898 493692745 37564538 771330718 122112185 190568 585408234 933458865 544037420 781112936 120948151 593240561 439184974 998572093 276408468 542787880 145887458 863505534 885290406 207284733 809149240 844164090 186370752 594771019 919738452 661593055 331208527 100930161 751972125 535557105 571857173 381773412 173264701 336607322 156513154 455586041 638930645 211654179 526562959 235424518 783793171 957876133 361162298 786336041 658685949 729824823 541596645 36412738 221699338 75065010 563915737 10751429 855178401 393276734 422009193 557180698 314827582 373470294 153674777 229682618 250901557 817404960 995584652 714045319 144256856 356923648 569619172 75463811 616339112 899711727 846622094 882128815 705002343 685551590 197305580 265853205 575902247 974935887 612759493 513704171 968134400 760062302 183034697 483858454 279103163 134557193 927732434 993773431 685114219 788955710 535294317 592987993 32078750 771601703 608124044 874701627 437747939 29516092 619890351 24393697 851744060 435803728 307506735 145844998 953247552 731528677 658223288 462880708 604281590 810468408 610317752 223855322 39207799 102818003 465724560 180568053 710336603 590264038 878512890 271504536 916921327 216219249 148137302 936291615 612128072 772498331 200028600 184293085 593602326 87670050 749614974 868452146 185609469 366112728 10753890 173487280 779744144 455001761 231660621 744297409 119569034 404993530 167650309 631379256 935213287 852072615 455169381 683382709 913990564 917871675 942267062 885567559 140864907 988157408 383222562 636978266 730052976 611141558 632675664 763053938 809375480 269392123 260067774 674882989 664626717 414341338 387429176 339405227 951940309 108601815 620884543 597967112 447531791 311383895 184298408 609384477 811173897 620248032 821711372 299821063 309966702 678724038 572672569 768827820 162979219 809076368 125969346 847783056 193328217 278892365 608065517 415067984 570134117 527935983 478784037 93892016 788044481 69914104 651402646 681032183 41421410 325054606 800215999 236649062 378623118 917349085 529142200 973628102 251499464 455887221 486629328 49448156 152777941 794649953 924989389 50661533 822276785 991122323 691047436 954211128 487176705 262922543 302734155 244903302 976211495 76117563 718510351 183536436 178424800 661600003 953605626 678711095 210075937 163017856 250312086 537477852 237465893 643294310 368957456 833455437 443678144 981725307 916145817 347853001 952258230 794175081 680747962 565140216 86615827 104999549 255773022 251224238 286085864 77527900 168312090 975746109 619062330 206627406 472246626 372390416 160601851 966347971 521614034 467435706 599459018 571550373 90690425 378978578 625087164 385354393 925032102 23580398 909941881 291382205 902718165 531701730 278440120 100415796 602889028 81736897 757227872 74470103 415741813 775029385 334723780 798284060 464286220 626063483 79757611 279968969 447265842 997364752 15106063 7471897 332567357 406334165 285082499 80642730 84450120 370506315 473128592 909290640 665904828 999761019 671233697 347592988 59861590 694109139 705335693 450649047 829188520 85419443 61348095 42385337 346237062 641124181 89637243 913003571 74444904 426114908 352623021 662031567 684682774 600680393 770827101 296773976 141526313 445640287 813188034 80977423 225106883 504681714 923719005 243036838 472241931 912011721 389044681 285332334 530134423 646712162 43538158 662031638 729102411 2068578 762182534 276542336 591041462 861759933 890218490 981614340 428051387 687105063 71457645 466722559 96218051 381155995 137819838 605389670 978715572 422370509 207146924 210364060 625552080 556115764 130167114 883412679 568753088 139640605 307541719 710083982 620072852 686242756 43776739 588067066 794452193 360176471 29789022 9944390 95644270 692086220 23074983 106850218 242634318 629879847 324805336 748437511 968395331 315254731 820690890 510610247 657422653 856212733 662659920 9998284 439553035 924585101 183426130 852328398 420083361 785565634 250166193 183054639 942852044 859939202 468317393 577139552 494121994 593291966 28986119 979972318 98048776 802951905 603541455 444082155 485567307 437806539 244063533 780456403 8008386 721276340 674699852 87293453 350275827 484132803 927774496 821270258 899312335 662381950 446789273 631200191 8204379 352226586 979687233 164981491 145969839 886157940 239015359 307368727 60680622 88622938 76249266 452276637 234665677 837965264 464415099 435172757 121877761 19744263 739946841 3766751 65733271 127344149 703984131 812889546 209367910 814895552 272690141 194725316 774730739 627158036 945723581 910039851 346608517 922561940 492784506 478880624 292869761 673140029 276052916 187088903 407467439 314669760 581878452 539478241 325065751 814012036 323614487 480248073 74408450 405139728 345430007 590681519 27994937 918783321 881403898 652795373 198106002 310865961 146480198 298279549 696117884 190384025 794348329 126694711 574215428 6362964 496644183 418656625 272486730 154326546 643290166 702427573 518164415 53054716 798497020 37540013 95400177 814605915 762537926 263667611 285898313 425164664 436875996 788564177 555000130 179350377 675328589 469939260 955889179 476172996 677536165 802588248 672939332 935568085 266721841 351792423 409094671 475264320 841180017 905706033 593687856 161042312 499899304 780960106 201523718 247082706 882159585 218534038 896761952 774387645 436555657 701456905 558606454 781334878 842856883 926618084 763310714 331798212 83912931 140290749 455289076 983244621 675624544 46614541 566725856 38506177 369844449 461155527 530158652 916661375 569238511 375990939 879808446 688464644 74498156 36792794 108691841 517092993 349905868 93651570 729109082 469254341 454670228 34251385 733093515 500892555 503059533 37026308 194174712 935390528 579765457 633803380 666641021 416977280 416109001 650809847 692540000 788775655 305659576 513632238 308415154 29473318 659173000 957158617 587039167 273176332 943774009 827990595 969848669 306007457 823658217 280539411 948745814 536914743 575700694 654155382 563487321 658460456 438190771 524735888 889485659 784859407 542422424 344631518 556675893 704332819 671961447 70657155 803273624 99814514 622694678 994865713 581554621 743385124 206730053 981206355 280735782 101304194 156662812 430584757 564683196 652972593 870933680 348377215 149526755 172226538 111731560 263878854 525127926 778623504 817070343 470562304 835344945 996994581 475738380 265816091 797221808 434253257 176981166 886475030 300539997 839737993 607930024 766258384 922926143 16673598 675557503 984190133 742721924 452286796 151389888 409037238 889332042 714188475 115437734 885899743 745710393 298720538 368183939 373052388 330931288 652861587 371590335 859972433 884457441 674555809 581990457 773930863 132318896 431716713 199939871 649063505 808455900 437381591 861749447 49102591 781568269 111856003 748667765 728766467 248701286 430688189 848099142 322645661 283630029 466531357 530624351 82099400 882184136 730958422 156984937 219287195 519340856 472009968 553950385 344272981 363656464 509305299 206018451 493063750 430381431 475835219 117065795 747582408 665926219 691172690 40872389 603716358 113001110 956799448 284820407 601774263 453799743 576915777 645028936 145178147 162960957 540543243 630553400 746613640 795619587 549595831 921239964 11524981 690521677 369429739 98877555 706258602 900700044 924391676 137793446 228812990 955019611 961177090 366333795 257733245 489354267 559804166 406605508 203657922 294873044 961190385 386646085 534460615 511773221 254808181 681240428 462348638 53163159 255706251 205425848 427798518 765361169 841275148 532532329 408235766 578925889 96024386 418562905 331984328 410269839 523218335 302835444 859918462 736936472 199003042 195918024 201018143 725173367 617601720 66805151 614048765 736469674 618383288 227339689 992067063 249754235 748392241 419556424 921135931 209149248 415824048 392246193 64936829 705572886 623298676 493323006 374352689 245022305 918793940 796661016 946526906 475301131 106232919 3278310 487818880 396385016 741294225 373729668 861998237 523233139 916098546 640033164 56803444 227909921 389035879 597545427 993838535 291581105 908843163 528571858 103279936 718454323 656155963 605347560 833739793 235676741 160406381 687245208 655995766 616152077 159929954 446158623 167561974 788647038 176512277 425454761 781765436 845728678 169033768 903316765 815282400 248853951 591091646 77915068 514205404 365746871 796705621 511160921 937350416 455258704 431576707 728075048 22186803 823830946 619251232 793692420 422648453 67931507 638101221 804404551 423841008 638096084 562467883 597181392 857992884 106604439 869658041 266026852 228339089 91323366 684224848 132246247 17132884 473716499 324217238 734610834 37739097 7270105 895667244 279510311 224015204 922840925 491369469 940016301 64145979 94312827 629528314 594326346 585792905 418871354 993032709 502510556 775383285 20850585 277404757 583672631 395914345 716751527 974897759 377365300 669373957 924954462 132280226 158372941 586191749 619458077 538792489 184880303 706785727 861133437 820302715 818834206 424826165 321485771 139645155 643264816 472459910 405129221 697380368 467883651 819650437 806975946 733744636 736240844 334836636 606590450 452940264 477755680 710012569 784025100 800491273 682869394 894179465 251988697 297526063 936327759 122887764 822605582 490782227 302017197 918461021 767323176 938190979 831577451 348840635 456769104 101879286 961407644 48042274 215850564 80833736 890396468 358038200 872093186 337807372 837252534 179135761 377336509 304861220 669930917 928243944 738438476 705915228 816015638 657308213 438157395 425089753 683681351 717340931 787797754 237201075 2320113 871164105 746112380 682035979 539814073 934071568 905654163 64122065 779916063 711990751 383715751 956902897 346490509 921947631 607723021 307384899 7783434 546001906 909447822 139153505 951822717 152735600 124517770 584060158 109170200 764065400 6936534 267654716 394259003 501694956 668420172 262548042 182998960 937880039 599499409 314213227 462300302 482496779 153352347 579964425 21581477 895602166 342733077 824385991 106419547 714406417 460590757 419428195 892581086 706882623 367709570 240081339 764217657 453832424 749599429 77260009 411410772 617387618 260023919 75036606 446233126 230654527 653162469 163577405 528926630 804586614 200052091 185804351 617546626 458224120 63916706 550630359 645802024 267816830 1385571 996674678 83267334 973098640 471919455 939519078 915140695 308187032 856966261 718810784 428062007 910705476 484891451 439114454 482748758 860620581 292883675 49911375 501344060 787652040 876279042 71357952 521044335 607354814 95810968 302469633 549867890 692934154 124072951 904262089 651834821 139569417 472496033 459339672 66602544 831628191 382659840 70540969 796085081 180755287 351451357 55797564 419714114 150250129 701239866 226766746 496134136 465973047 835083309 379316364 551407164 415865339 867848437 72692114 714502629 101785432 474241219 483811585 256504054 577502428 619994988 49079486 474555906 280617282 436550372 317409526 43984092 539607116 761797642 544840140 277942309 209409430 174054712 178332125 504666503 765257243 800308774 636193526 209412498 533818373 251874386 811824489 952640332 822932373 411381061 747171798 242864523 982577875 374700537 565985586 640199868 845141643 354126093 601871202 330513534 592888452 983608013 839719382 725089295 191480420 821290761 27860692 226464143 825935676 408158867 65172902 890899063 751502319 866527251 386380265 759986292 168725140 320809697 760187856 652138760 496991062 120801246 855494162 152255138 436675931 680892416 886632298 140545796 646901617 930576625 390870182 983512634 616366172 231820350 463739812 117799530 94611822 494105026 712086602 256723734 783154871 934113832 40822318 463043071 423179563 411408772 403382122 963653542 227690822 153205294 364854882 369567446 20945625 249121659 402410638 698696765 228575959 252026909 419166958 548153762 161255221 199546700 941298997 84655689 498377783 33915844 38717136 576145380 849034348 477482369 932721888 659093438 762580384 717535362 119863583 902242612 358044159 66520251 693005262 888036836 332666263 287968888 840139434 118378630 641044941 45387812 699471240 222794445 517625452 399649791 864472159 454153779 207151172 579123921 560634029 325785140 3951528 242977579 274020038 693380737 627834836 504699675 192852470 315509031 5720933 642383472 461098076 83502906 856925082 384190404 68570293 942901520 495143290 514197212 373998884 32727045 511395543 104783031 838868032 911807325 708899459 679500327 390518057 622883287 782203726 558187751 69185657 793156873 124647287 596310877 361584591 876314845 64310991 308647966 691039219 281000468 561873344 374532720 313117806 360553939 744167402 635882850 391529840 660572999 451142228 195202237 965514040 346922654 580529246 119917931 961971052 479538529 739271835 92413259 225103953 520140700 24773224 675464357 153631771 590881965 450684917 680779531 266325411 388653118 725660638 939829553 731715799 551405982 917797201 709547436 216356405 265152632 486023535 736480078 61415671 992230737 44670752 27878681 672667910 605773084 149352396 252892567 330019884 917445414 169150040 927011504 622890370 885978851 399497791 728681614 452263632 607246210 261065891 469395678 46144141 790440542 268024427 169782505 433963134 115961359 450420103 502563899 744862999 135455002 544285216 937537447 212636096 506606604 872257943 987031832 226363245 837109496 208275548 305383317 347999975 858027188 239119130 79975275 686743519 436119909 138738605 546498992 829663560 683600847 374198840 647962215 851398678 809784659 917919572 34019186 567455901 187713961 740302100 421283050 905745073 309588863 994496690 742402651 457339312 851749023 464466142 404617228 66776124 740872434 195012004 266711678 15624116 808767690 790455841 580989171 126671895 440091673 502513936 264426572 883491290 132299951 765089738 556223823 616063821 694748291 729094328 99988224 345337878 492343408 766880587 516488290 965770582 567795033 86525911 887363453 614943838 675772565 32870391 217529171 392869793 850270535 378341150 39089876 218708148 236486048 780333752 51334795 808052155 745756481 933530487 815738698 819940615 506657428 752529418 665165643 626642939 937729779 908067725 375447828 99944825 935239667 808963563 784930265 867355158 357661652 852026262 19887866 98176475 841675653 506365621 882943970 735069227 494183897 761657188 776251006 408484947 920738736 603563151 933510516 4198448 178936719 956014485 429893843 994300504 735401612 592062633 229198046 298678620 576112767 942032924 4309069 981336165 192294119 980491749 239844701 383010110 670600080 883774908 506217101 247865373 907029160 214254857 140053169 752377537 180230000 221127248 549045364 119919764 768964885 117714867 801557525 244918247 814030430 969943231 308785740 716864822 944875924 540836161 346132955 847604293 502917821 137702841 243393370 362239899 181059982 465369486 459848787 105577972 902986296 129009510 982398568 141696862 918504980 130911690 566648465 83935545 705869828 701644954 388963007 935062434 508106160 648262120 501486289 495650662 208234718 556408583 580124274 915038307 13018276 837394295 683598621 186948369 230932647 54276240 731959322 430867822 635521497 381987729 164510774 434348114 471147878 719806683 561570735 618196782 361224829 732909895 831582364 258198773 508362625 493328843 227944162 376434543 846399351 562993901 160947421 617579537 640400573 144083303 261989594 694974719 299830142 687334759 639376668 542024495 556950489 586775733 828689904 501583459 171969460 695175799 397300037 47774791 665552148 648460155 420228065 750356758 78283307 833134112 18819900 701245724 960654136 312875100 817467464 688040630 895741958 697236513 973825673 933983576 335654086 253988724 249688887 424583077 505977627 654896849 310863609 968364154 561244649 399047913 103924698 814934735 518296793 735176846 239140544 420547958 127633075 663170430 628271156 384274383 150165734 184181074 382395374 36805324 437123913 12725763 968563526 316804614 646202676 277085980 984952426 999187221 74586394 642704023 273820233 532400564 850248960 908254928 235390963 888445860 808950314 222002534 684783639 138987341 917601133 802981595 87223440 937896236 921511236 575831808 289788923 36486991 730380211 245906710 17043491 895154018 293017673 284788343 738078616 4252645 622843682 25642446 1569683 196781271 140233661 696844655 627646894 297080650 797004871 64750413 589568127 692015705 178300551 229088627 806899002 826103978 711934035 269626662 590464111 730273653 648956972 446038757 332952751 417655942 204561752 502031114 134897160 594774191 887073871 906840964 956093270 577120929 870086705 643329811 378009085 271678153 744857448 797757224 522525769 158990296 257408810 477070709 910996680 62974393 234017414 904748646 727191466 232444459 604326972 122547508 376934371 800787661 753307357 4115458 552376798 657840580 276910295 445350180 148681058 564804244 887577298 305378163 875362849 313967448 358159224 113451101 557378822 829577319 103506789 442201158 750879447 161470321 620217809 690270372 768648554 35113221 605511830 193820927 800396649 146995875 262145491 153648416 11551922 193336659 76632710 624187024 471738449 753662657 513672227 949942108 280455666 300532114 316695221 862582486 786033638 601882028 798341046 818949787 786491803 292403962 379113425 21731062 389864921 88447781 929597771 823985598 989143286 127870315 413125312 465098420 300275405 670392890 802923890 433643499 88493443 159898427 152711715 423052728 87051873 158264807 354648721 256639922 367874554 830432364 199839875 498545801 516405201 732554120 286698624 965778784 858379821 395538124 651143652 852861398 398282721 495127350 906928028 301463723 276819543 584311300 802595589 808367488 461270033 382026930 383082478 156717331 136816279 749785891 326703710 647532423 804245620 56773893 848192444 732215441 380814902 592329907 844532391 976808157 498638701 117181887 552918913 112311139 245526678 234274354 542833464 672972763 659851051 16698950 267510919 255216364 84453630 151899919 727495838 880676930 383954168 347386434 785766960 841809183 28626403 658090593 260725536 121109017 470012444 977384110 928415401 5375069 357669742 909803304 832615696 969379727 185073197 275414002 680820649 804232365 908072842 206829982 362300318 560649222 978391702 29013938 67559525 229739917 436832439 962921237 728464086 721137570 336726064 287886541 428729857 21480628 991056119 223785419 429688059 647385973 187876500 294446102 965584560 874777780 495895423 54678889 607186382 534860829 494616689 599578357 898193318 912500764 691624122 761857250 818655664 288675040 47810332 385505193 621759547 646451061 980190470 878617494 396094216 419114693 533787882 59876978 639048239 609193732 961508713 905559667 964311712 823067778 143739042 223082705 970037327 306923294 824931173 745750421 14019080 947168655 984437766 671314519 397724825 149831876 18207699 994470117 560446656 546490962 936135181 734710008 839234974 79153502 461250844 907169371 690934807 817285333 295450974 839716233 522921571 304807061 987912928 725395765 57106906 337165905 988305024 633065197 48101308 160256945 565023514 771646322 204356443 284729193 271160625 939760798 606038278 660235921 684568362 675947341 85127668 966253038 811118689 385562421 399930537 78073332 577158644 906221688 395057443 502757274 735088053 408394456 869971766 986849210 194625710 935837521 768441618 729867037 670512033 656139796 912964728 749802724 290805292 703011208 452407871 254258546 326590783 386907850 943038527 649914111 996697509 256668861 584116878 587210683 410044193 548585044 851316109 953451068 678261727 110000360 201272475 924308689 422678587 809721199 291949795 332610210 553964440 485222664 735701609 951284283 556011333 512479486 839737729 385087065 783630411 850633701 548775388 899184322 851781530 390903037 400926274 848072379 868184995 321095263 854320636 695285540 790517663 300886497 61292181 886945257 622495876 895279556 708884217 688037277 598145942 974623294 224511768 235591760 826922284 815242994 323580148 444375418 446718195 123608613 107701619 699549637 549690993 431739546 750760010 551859523 325256597 70918650 402860761 349371499 930813136 935882529 844240306 731050172 911225064 449428783 505974668 670959940 249083623 284086187 391663925 722114563 718984689 505537942 267469800 738990531 405108137 170473290 463295662 566297310 740504694 783881446 811663987 488236709 227823331 474294515 67843350 85065675 195045621 93526259 67762677 948968813 417669671 305246480 962662694 557495381 696370748 79603235 69374101 123294027 556319612 440015654 569937094 798323510 595065008 965846104 241764869 491986472 6644230 912694705 965091985 771685598 659108791 174295479 837674937 562554509 904964581 722514961 622475395 567045560 415451374 510837550 404752147 312488696 199144876 560975827 575623338 353355720 933341892 85297714 86557768 101913651 70320988 708337201 875528028 552134608 619632994 394603924 122720294 171633823 797071330 216664718 182106049 312165473 156738019 822146641 955762380 320733948 491399631 369128980 236579039 807239474 761909697 143271055 902389293 583691514 726135163 136247466 129794043 222156984 540144065 68788229 479950637 974136345 781216296 587912898 20810183 178417221 352491940 6660329 506862909 710911048 83337870 683474670 565478947 404859291 873610738 773714416 335517789 12836739 414800729 285603733 824194910 291734693 911737888 921004765 411604579 222193202 869828614 599085466 507606030 256218933 646261805 370562566 909669828 266792026 411673276 543465917 460746609 771267171 37989288 144399075 642215939 483914362 504022497 710099611 759052241 760308213 68971545 472647253 442292360 427958813 662091682 589725942 62156801 503042732 514307332 912822688 363536743 758355976 606487821 104782043 317826699 805909501 401870729 336480057 525743788 533141498 696711692 453925849 989217298 318045974 137431154 90496013 298508331 523841250 695549910 611791430 68817306 945086438 447721446 960109347 269914242 255408078 763318458 242455458 996916770 850982200 723341196 502871591 770124722 428469225 805954573 247970242 591355270 580528062 500279870 363539309 963806676 331791842 298962451 538790966 837202013 22335854 660865229 340154578 620950729 173796368 73573651 925026918 412155891 371375201 11075270 72800241 466023722 475865681 650366469 620052035 503432620 265905545 269207429 674896751 781743951 132923129 282793421 745630356 284020755 966803734 741916727 914380725 948972804 439679303 996016860 839874143 557562789 614439693 479428972 345078816 839622098 599318416 938545811 250609086 131835879 180756217 198928669 349067254 445712699 970952918 412085292 681639340 97207162 383737914 702930819 158588660 653189762 993575603 570371775 89506499 694637148 438080119 861591628 747567382 216528919 592528593 904342670 403514756 743276026 359916206 563737785 674618273 778510746 693172454 669450404 785816368 997527836 218575006 589528188 924818039 443996361 895265494 526182851 176273921 1214479 885243912 246813267 991054823 137376591 531646183 565961067 542247066 795883497 635021257 509086947 583282616 674995573 682144687 460746147 900872533 215709280 291092131 299027403 814981720 72022466 877581311 219951495 201331197 818085258 502425902 696370414 217596579 478950697 876979813 58663997 863560828 736280716 900449947 843595517 67904292 874699973 133031584 4316276 300988533 615725166 522531392 720983875 446237355 300848700 465545872 705297095 981029055 440272833 390749143 769334470 382694429 349078151 791149261 188691353 504171729 245238460 886414756 138845169 472803109 521846592 209217738 914618967 666231126 109183096 2624959 425016280 226980169 253613059 613761989 152854725 590776617 175632576 297424414 833795903 256678721 42089049 609074587 457393335 688528561 873587993 778689443 619152476 878770313 785196795 65773280 629210557 915617797 94893135 478949565 179567093 36491339 227215373 301088074 908576779 540229039 566224459 407368771 965593105 704985620 455518026 625233566 700764464 80689132 974457655 9539806 116723941 197970739 890242622 291903979 933985505 771811303 773737826 524807285 695720158 611833891 787457663 188955570 539590384 731986913 619362106 430630641 710307082 543117098 102262919 148621819 365526826 341057762 238386992 114692042 709715797 875581210 851911549 267138400 518164711 491494637 94130420 631949812 479293383 229039911 47855764 931783745 465480616 227170449 906819111 943992433 629751422 890793973 354683705 354597435 752092767 710553128 707925461 607766921 19040409 814211303 797034082 781274746 649354377 289710201 916690983 788537334 725234855 592097422 296886309 117881664 128481480 898518129 646719199 951822832 232200693 317513872 144044153 553138713 980796104 901385984 684130910 347768923 860253559 483133124 424762328 899175495 850890876 725874738 801711922 802144076 483327348 335563492 725765396 536248736 122690922 369865830 690028500 405645237 347161430 606979189 797034191 996370179 917714836 971085128 200710779 157342093 808274307 229932509 679430550 860443082 183962531 103290978 796271216 418072193 283949130 457703881 280712934 431042984 568453245 437189548 238964299 335828279 323364281 688837713 988543948 16338976 712375413 504148310 604475323 79441830 467346151 514560674 394202617 4200260 449394313 292468139 351170865 663707125 698984722 424824149 407974926 908087982 946982701 798866901 269541467 548745362 857211456 375377075 476217922 842816533 587559971 178292428 332185269 359239674 362204711 561968803 611832726 827748989 956193362 721020724 545771611 65244161 65243988 694345817 464915714 999479967 927874114 40386949 411193991 165111746 439041244 874814363 56115804 33657368 948208486 325684443 193412135 120954399 645238264 877526018 596336535 394451963 678072589 605016924 222796208 123899684 471962179 165113753 543213645 254652102 34427195 741921854 150156335 941356716 632402928 255739346 938519346 969783512 466421644 365707482 863348094 603687883 806156923 723298127 58583998 160469229 866416431 919399766 515960567 970099883 513271882 195091093 336088282 678214255 348292404 586617995 139129146 78748683 55476316 293321053 806674271 595688151 69514077 516380463 410404858 813967873 876276969 885545331 786871254 729414592 488058095 86974719 440593943 223983977 974290552 86949430 575949112 404888065 865115359 510515362 992051950 445332274 850511564 76188453 216757941 382439444 680660690 392156305 911198621 352444446 698363492 569206227 521799729 659367008 72128324 820457858 736413931 10987651 268772180 616152401 975411631 847637939 968956262 278769041 31759117 562935386 973975966 584002644 8246304 701646883 270452681 19535334 432010502 604845621 545885245 970454958 913703899 766469503 2376752 556197005 82950687 798883839 723955613 826676915 541384615 279925270 786895791 239646928 956861953 520002574 42495526 788524345 281695026 846117192 210292633 530438140 63875437 517689022 734734437 146046825 895194507 918628563 64092091 283371091 391050356 151711486 117742465 805256556 467260223 387007882 905169351 975580974 930114707 797503868 957694388 962493236 254765590 840453450 771975101 117655667 739091406 326709256 976667614 296730572 4562906 755142408 357434321 998890845 259675001 829070017 674704199 40977699 736139959 830748759 680239111 721865810 159857545 578994303 147355845 656291364 927447725 342287891 266250069 518141980 17763737 61629840 204385481 558982699 863311108 671118443 656341794 282174990 78493829 529369543 160028562 55939574 592742738 846677471 51492701 306687581 394290315 786245487 120449962 654509450 623090189 93936111 137689911 161832864 852516131 299730897 374504854 343445661 398943207 904954400 236593391 467885545 786665751 919802881 590663582 860996760 240403517 256983081 256086725 663536660 834434262 15200532 746030471 981253211 955591095 895719753 59742578 997120824 130164129 612394898 107988311 428739314 933387071 479169206 719241626 103497655 143609458 790730599 499419398 211872820 638504399 400874790 680526051 440745395 85067206 971710119 316482137 921609326 904936226 553215131 88873787 46369528 82705356 541328258 394176783 613918040 331652157 521098386 913349241 838428225 198828549 879668988 638303317 398376147 952764916 409075475 375227133 861808325 802952313 466756340 245305548 233658621 751628901 294090928 581059151 613576372 746968024 670744598 254395867 19611845 195540402 588854065 360172072 226056193 50962618 546869119 600414583 907496537 956788520 492079706 626755316 232312382 288817014 79426107 594403553 880647625 359001587 438774443 206617747 326228405 615617612 241825451 984973999 886356941 136243538 674142009 366696280 854998989 913181417 437863486 12194362 209133723 143380462 508797326 343192492 945958712 602803471 23372097 342076672 954311584 679683254 150383215 268236564 379224989 431343120 860268844 269633429 829322875 89591027 787335653 503789626 836891733 852323877 695252067 179711 113331144 345611737 440125905 54653046 14433741 905630915 300402993 369591411 958878492 677734544 957683830 229873481 612354233 834203126 206899155 903242558 199229914 740208460 368854811 349607173 547182326 327008208 196794914 368717893 966854459 9752637 198386527 470878478 503246644 653663098 671115246 848124848 514720620 908422315 721563414 210432982 667568054 870092707 398106066 187699557 175722268 511567693 651111171 129803624 711484652 175476044 171762521 475263766 14449177 502728430 711886664 303536549 344090475 679031613 497062731 131759163 494640492 644449008 765629641 74568 683006181 930178169 504276506 266020132 982392082 717462366 892055678 77213331 42533239 616865680 693012237 885737858 101300342 255068347 622657424 356460269 395310895 909913436 643872956 923297369 353896194 840199627 182435700 671612367 358925665 95880983 511178933 970707167 427298182 717136072 173086961 888753441 695489424 458366368 285467699 100953367 140587848 38343861 977817658 30092540 348205512 183941923 411001347 881810506 234232993 560811710 563448444 548946522 310182186 913865237 266437416 185263054 233920201 56064617 641962837 669646401 149778190 154879154 353568263 639591360 434825096 141555471 368572504 675861612 513102426 440248633 940764370 400350932 599125920 427020655 173438236 983794722 894497795 742639377 26388120 463182798 146660980 986880468 295416125 660206663 644948064 69312687 457447955 446360127 460219874 932284900 438166009 448546027 651407356 728153337 868252770 935885036 176317898 967887359 760174877 418714086 616491132 362760035 115890350 475919217 357909614 249673268 620265281 696236578 904456223 136578256 693057840 752843956 424191592 402795799 93041828 321078134 102681821 84233440 899563034 269269356 29035857 505624446 610834264 255984444 503068279 515843971 385528490 345657305 720755772 602170541 869633121 899259462 952937240 601683433 206759664 329128685 405385550 387992122 521013442 817157998 987449475 436610962 577737068 804071561 797281836 2901349 40837159 711420342 800282568 715320200 417216953 59878285 564654322 921672714 698327444 546902738 533330380 920264039 633104695 302494629 819650939 429040061 913949749 422832651 85955199 776980268 946834149 873015320 831401355 542862528 567848685 787796713 382876080 484997591 912529241 867557402 326020103 822023124 861170708 805370573 425262312 115738423 13155895 178230895 268828714 341936143 271899596 453010588 916550113 929080057 242797655 377056000 566156999 676558517 632783026 273122901 417725871 293350636 937520466 182061778 202884075 128886020 583191249 693629643 377765548 717980650 853942130 567331555 160421212 434747682 945462236 799466773 907294652 215492060 271870108 755319629 691371127 330397683 886175948 181622236 231115489 568758713 449700988 212710955 552283921 458487325 448184863 193384138 725178141 52355896 184309089 103306187 954889916 417781739 927169079 980200425 316507676 214465787 970189391 603415104 852075103 232420854 513997588 515534761 430891895 855617260 199204860 823826859 463394140 443882794 114597513 295506237 557979659 769915541 818957898 963311209 877292844 844676131 683141436 363187563 400898793 234084312 5922856 243658999 9729132 61733424 523070670 451003731 56659012 480438051 719994597 130891943 93111382 79740872 412950199 582401986 268031329 499200278 253443330 244580819 391665581 302637649 620873524 164076785 72207943 326387406 935463419 547308753 980518880 175037290 920266256 67508492 335033797 272781667 540802651 993737060 767151625 830435818 807881310 100456378 882556255 610939570 717530130 438307845 751692434 411952674 495863451 979479823 300409765 232214631 440873242 214781591 354742301 264069134 131110386 772091921 642898232 956538751 132471286 308401032 765448498 578383794 156702217 797909183 948267140 218890577 214760914 499888875 829496335 857625564 492855279 4975397 899881122 303191574 601015925 463873788 412396431 904757705 466635047 525018299 594002087 78120098 401905309 778509446 139892395 217044552 970020308 144751244 739705483 457487328 964992665 861021304 224909367 904086419 23410341 678802494 44988742 703563932 430641810 922846005 496375609 751015962 636692519 714737417 42205942 928997231 571550713 394148475 931548738 30142876 899616582 578039335 762109311 290462368 9030688 155883737 586914126 752574966 451243398 301150397 420617849 106437817 232336785 629075120 517958153 240524349 98581126 192026713 71507250 386298818 655639533 846979574 826210579 817775253 147655168 906143687 105566181 855684029 924529002 413169212 963501734 905098682 192222468 282028938 848312852 85105562 679155078 24579346 59460621 650821355 83669317 446616496 222004326 426462998 961560961 410288186 391749992 336437152 239740208 936077265 37262086 366740893 739544558 528312473 56189444 149709327 200735242 881811879 589485865 966408985 829753056 670598680 46715877 165454448 776290308 344593767 929686221 724328913 669474771 681964360 307777214 825929728 684074217 590111054 100095137 89552932 93664573 320861084 668676946 919580870 713083239 209318904 347517809 873229014 345535695 75415124 651679562 561998477 862891801 825961340 197083929 180697712 804864800 787202415 378925664 428717489 736856144 835873855 727899593 749248643 323291420 82597120 449690561 403572246 216299506 26393207 485514059 703912985 62611754 178751895 711567932 279859164 85477673 458215968 510078857 696425144 829061988 546531446 666526927 221848558 852987211 456408558 518391250 247729127 879609494 50562862 472048337 791743097 896510259 509198593 191089913 432865614 969148630 950216987 622481033 39217169 764809000 783681020 207824334 635994897 699557719 314361587 689211427 433246140 406064961 114124699 261101747 507356513 841397833 850639218 55876946 606639764 379924680 142176128 626237908 770956108 567181192 177909474 400497334 327595528 83447796 938098328 447434508 453960871 43206372 395936524 833103535 34809101 638709117 401150372 953211076 516365784 724887026 454105174 142048090 27954489 984699903 279193249 270940561 944210706 218528299 681560500 55353146 538765068 580119834 29676898 611637595 504334759 955746248 841887075 267606234 148108983 919583913 813774789 210918356 245519422 944734992 447326588 57500867 56241244 462866002 348532713 323526935 862746177 138470984 970201167 376547470 707943145 985518944 396258547 985906353 498846231 374351490 161322736 816103089 342035780 324123990 102007330 440800515 340912797 153671233 838877994 133259000 858035453 496369142 316768853 42997374 166058124 711832031 409021577 465975139 318641185 320546992 180413366 895751533 522136510 67452109 437975542 593827246 261316434 771089741 512452377 668211860 335691447 267515581 955764544 328543956 278316460 421545666 680995568 283014384 744769289 142117676 210305206 705127382 806685278 668708902 315031913 360383981 649457456 34242617 354125464 644888366 425483916 14172070 234008815 375867236 583624776 224943006 212595598 265331204 524913362 783568798 700566261 730752174 38074091 739345163 283089003 502890310 484877740 207661666 778752577 625305684 686656451 495483964 255674310 52336326 5920747 670366014 492182789 999488416 921757225 989269083 846203506 898963847 807442675 492889927 581020965 521446094 990433038 360503053 800965767 163109230 640572821 868568904 564780671 262971426 498174552 872377741 282384117 668132735 105025770 65056720 880655670 189147205 400716673 38178483 968538668 313478386 391255432 152571951 589368102 407344246 845259806 613208651 670146350 740669431 526558660 114795495 30999682 376393760 875991393 753323615 892881022 60989419 214591054 665840643 531426353 348990728 810465753 967714256 598961007 908127313 596616197 618803632 611818976 227165622 221497801 81850142 873684060 814449209 693260876 648832501 295018954 66997527 714721360 129969541 734670791 593360707 233405756 359669535 331820107 335409192 115894273 198195651 539032454 846920781 710958716 488579704 782941371 960260270 230633742 129436194 681651664 995403239 844613107 557640418 796688601 834544911 306369911 327811174 506149182 385877319 528315654 951369328 159430406 271310103 14736388 397036277 640348492 640748689 426479953 873315073 685285491 921146707 641703121 266320208 246460652 615471882 834875024 284082172 116696463 448431526 652478030 990665486 280002902 200568923 67722406 722753036 217106486 878763742 78936620 275821135 439194821 701916702 400900031 251293951 578506247 125345182 693563944 410551853 324117486 942968051 586388131 362028193 289940911 934762425 24437967 227147351 6468632 822488923 108470622 783567053 793206672 256118854 921086987 99689048 845361069 285009004 819603346 685392880 154496362 777416473 787501150 652679168 616307766 938372566 71391288 316894352 191574383 481958005 457470843 285065904 424722959 196009993 24160556 788278541 556038398 650250823 203935180 74573196 772859476 402151280 357615650 481654666 355285519 900969871 928033541 813484908 716707687 429027220 32007413 768026134 773930204 476575808 390721079 185465735 192287565 28018805 495546631 52521526 195595150 233966114 546434419 690233896 648505158 842440076 571070071 22262772 776787441 475716634 566333445 323409657 329867311 976338478 911581822 449899521 504997774 485683544 213586918 605604570 98492033 149684398 260397524 844313175 924259763 367115985 153330503 517806476 263482184 248390717 988466554 705913003 926337884 184084431 716972595 63541579 34221731 540890763 899344070 663454400 167014554 293648043 876173079 216432781 913157359 378797754 707920546 562059032 823461568 678697082 202267309 196422934 955956554 210212538 382736485 847621494 858709195 877041142 733291291 697261628 168382615 987936218 588837366 265624421 375074825 398235044 33188104 674914424 902646049 98550384 132456614 844719913 200360758 62820395 961820962 712300229 466214809 129604656 753445370 140025336 866168498 883620688 699970336 308401720 831447273 935143127 144432728 675198219 356079360 791669162 552513597 867231172 361507208 479133181 422517999 982523799 240177370 77834526 650041198 603803417 562432579 796291991 923106805 198773947 546873496 969099078 467147981 992503103 742302001 266067301 857830640 547909182 693967321 250271288 770915965 697827352 683003723 729124482 434935271 320312500 829137160 595698739 882048710 781789555 920123607 562371998 932099646 872990677 367670578 899837363 154217042 930938669 975269082 905749878 666069957 843460302 651721705 402241802 71954757 945142344 404800067 548888793 264157076 957660126 482197638 763440197 851392136 108964130 713278669 51782329 426551459 69896054 954733093 975636571 253303613 522514494 436202167 14711531 890068253 850512632 25423787 108679622 343577116 510929826 211069700 732548579 112974020 544763275 164814641 436618114 477244358 903436760 997403030 14031813 811669609 322795517 14515073 519417987 495769347 363347342 631356368 488782364 225262110 64290019 252608512 780336969 979848994 97118821 531622769 720647870 665269196 275641895 990069707 68832746 688290805 322202641 53343715 860146534 577476613 700168647 119889817 821705271 825221191 765009087 651813000 442047122 923291371 246271918 574436154 759452665 525653759 656257998 403789395 395795482 557991818 124489378 708156903 395076182 378618813 907257780 579201995 271797272 996533135 680795931 557330779 974551494 407968867 313443147 264686553 652747520 739597969 765363940 28574360 763078671 293115806 524923221 134389262 522351600 545168191 98369460 947168199 956659397 932853502 319216325 788760865 239970632 479347878 624597817 95113361 525512972 597157183 836057062 456750668 115996432 805786947 530063256 264107032 837527125 79660689 535707503 646102602 655010170 462858341 87081961 793994995 727399819 923339603 907379616 454065654 938154847 921259211 165127861 585839180 194513915 27442206 16228634 307129978 450360433 64789689 485386262 429161854 54247674 738990085 130619071 964065242 95685677 35801731 713656464 587258166 740864961 26824546 271926537 567179363 518973163 521763122 530837360 698056155 190502704 419093131 892445317 2057151 648661587 644456751 276754532 347989570 996910844 163076484 480050760 83982120 409748184 696222315 287493023 188843980 738609255 778322123 202127143 334340066 470717703 263612619 712009305 722902938 360074056 643807702 487063422 74372370 207107399 800807850 363445657 728889957 57109876 820466892 608304057 602708221 939095239 105636506 355709967 965696634 242472464 217503427 382232637 347508545 855978596 656443843 524184729 188610489 780945421 832795435 392956660 108443432 674593272 422386881 289895825 371755519 922886815 527451169 734990429 350937865 30892839 182446546 560744286 551720561 873634576 902491170 743724110 335275270 878289017 975915123 487661117 713149036 791033868 95087828 589143990 165449288 620249749 52770787 577123788 206572115 136592196 920076848 716309353 23292992 417777249 512378919 474105059 303692739 366001951 491294470 796588809 833613776 160099444 459785267 192799148 915176018 679911521 107681224 299893332 647585438 370832972 320032239 758316526 641977760 369802073 509401835 441315353 493024330 446716955 163763667 780219802 633651164 497873 755007253 255098377 2376440 275593818 695466695 320723853 928233083 962907743 963078306 645265170 579224131 375579221 848752223 360072470 817756887 355757049 232996727 76945170 950032181 564148294 82027163 952769590 328736765 53908311 138018599 743431051 734954651 149504847 483885406 82751495 261986756 299010148 71022264 739871526 189642467 649297661 333676307 890937409 627360454 341406646 434330808 979606789 416808257 504167111 788025676 872359174 247041624 181359058 454940805 114500627 414462173 67251760 386725274 831921988 623961281 430668766 120851545 773179495 830508363 788810213 59266452 336279691 136067110 585386565 923850583 571508846 429915407 696589384 984105019 319101042 425712451 877211871 68586679 93986102 254932761 375590130 191522951 566027185 246253040 350572872 452862642 976700988 704726751 37528625 275422914 710913813 258544436 812639534 50086887 584300766 566100873 935145051 294677282 328093810 789593865 903616849 710412622 996477748 784546621 761261004 170202455 570443112 81189970 393172763 525033713 333418868 501285092 789175842 130049007 951070733 245857671 575332968 871301780 75550852 205593158 165808900 771836388 93503948 995323348 305446469 226736352 958372308 403087295 830414035 78251765 891126873 862135545 428035851 773728622 885150382 250485326 290824200 421817558 188391076 41610408 71453756 602074634 340807652 319043528 535153462 811786691 428595417 789079075 531014438 380896945 155864825 666128058 528225387 621251498 843321652 226628255 152705836 134651813 66280629 74427179 697162386 419753533 527022827 66572692 565302091 144746840 332418046 200918401 770765680 180973812 620687076 430539175 368654887 85192041 443864396 501171855 47121776 629168196 330200664 234134820 107104431 598008496 62243999 469506893 526238437 614935254 396190941 616665851 651931777 941248783 807085400 952646088 916465141 944729874 36894446 119192070 878670916 609051379 563620316 941671883 306172756 743530854 790772693 758486502 188517524 698721713 537184215 432350955 883700117 870802924 886079750 226157373 547049996 563877958 337661139 341023194 826973445 825581689 919423711 16410729 435286972 245879506 941994986 413486579 394783584 717402829 155110883 228480962 120987907 24040120 660310547 211451731 611998007 38348868 780063866 675621752 919599941 10491864 729718126 381393243 941398901 955684128 331939040 148867805 940778842 560911652 960262906 85725174 553071097 54632352 371474362 717182163 721271130 131570239 754636738 289026231 502283260 966138065 912870616 53522726 830729937 604920561 352661455 772170282 5136242 870502777 894129508 149854210 355606479 920130912 728023064 716028984 666688145 859227676 880122274 727917260 920755087 361637072 856931786 602586250 459765798 404131527 334743525 10526745 703267354 320578712 498141415 447838230 277158801 89219903 93822580 309763557 417808007 408197818 938917699 53248436 448774568 670493707 168862250 354681877 72230575 1822462 237136784 212682773 587939058 669111015 754724288 111370625 524925645 524417172 675139027 714816162 860562678 850233235 40681199 970947055 696905867 997942076 507392940 293351805 964929412 538609793 576922601 566115984 368943175 492433247 715649598 910560598 602378560 489248588 551855390 649678936 969710920 986606251 889634065 857802778 905851409 476451605 857341996 395664614 433445189 295531033 488189401 993064920 548636952 579141096 804179774 253580001 491577744 55876007 687988119 485932923 768230498 215614903 325286089 390510705 493382906 40896730 556608101 390946594 902646999 335816068 896085167 141671780 981613410 110689206 774730940 242233071 623097976 179521427 888828606 612367823 430765251 44995790 119957446 336038048 233123171 503822071 364136330 50497358 501907008 951006544 153015517 45148239 991506397 212071210 638790421 164982703 779483351 170624562 903910257 180949922 170815946 121364894 89510425 9547442 668746800 90242347 721016524 543421638 51571760 953768567 942414769 750960328 937734931 790248963 337671897 128554758 874809428 960727281 426878831 736653119 47305568 808725970 34869824 145770925 976102962 760882076 847668702 766432962 420577840 542507296 493181946 185309125 888122560 142631190 710615692 334650739 851730313 62658074 680638284 394634137 254866834 958532246 496833637 507194049 246670550 272608892 336414909 463990713 275084316 935055567 485545185 827674247 737803877 15259557 885479271 340952840 347454001 955356587 447946073 945181042 862806191 681463514 538336993 595601508 564611282 428741270 914141455 522411480 864117489 198103001 238478303 645366245 561921429 667657785 502322624 138612233 325674380 176910557 264472388 839751659 941252450 499478417 230716725 589965262 582420452 354598847 177377218 547753696 62572572 944749881 700555433 908120434 384732854 523258610 332911744 93263257 777682514 884102989 812325508 288632375 279348123 664250345 793105487 303674050 712670099 99212911 645945465 30073780 706574399 690025420 434995780 963643257 913182281 609671337 600132217 812247681 234386577 722016324 84878670 811991934 693071673 388433656 252115225 748990155 634955876 490696947 298712727 756300598 18956099 244080533 503169546 679937230 244117559 977012953 475797000 140498795 554575139 960429814 735676248 912467926 126978454 178833752 98765624 215560133 566230241 406798218 554166130 495630671 313480275 122762817 768123208 432543923 236384839 353906523 309956345 727300607 53140946 547330338 825154668 555954726 496510204 205487871 655353817 99054804 465763283 796508478 209093678 886294394 432227728 200742398 153889058 609754757 321504358 513426297 380036621 753825356 107328146 825510235 661717000 491687996 142369731 283348815 979737888 343179026 355845860 111357172 974653127 135095956 418726192 339814132 237781412 228382367 4197630 170705814 699300235 436485356 116126815 782640205 877849968 182569718 300425624 794782730 63285136 654562050 26611729 306183252 592336573 396626702 456073212 999050153 109674100 418351247 308016538 139656805 423540468 195161137 812953132 85562958 607589250 670282504 382928880 30624616 642150177 206296437 164088609 627013786 777194427 531451173 801390978 383529777 332246690 559643715 291505632 558321388 338940544 631413971 448034485 575564253 703246203 71074808 576382713 869654493 869967934 975862248 512263363 729840907 269458071 83155317 554796509 498900581 868770798 304042055 9213170 200787281 862596113 985951056 86810055 928575297 570332108 86039979 713841916 306224494 401994130 660124503 748094121 188551821 323478359 611128975 68747555 330338541 576725222 899486886 923927159 481589699 382276110 26002909 441775571 899531869 168832715 834426267 763900025 972075131 866579559 340254450 14163347 325676665 811629536 586912940 708985595 322773349 609962662 195828808 234489410 417500429 807488856 155499258 44138940 148972005 797630243 210932965 448643738 716177684 794973371 365394775 531558198 259083563 977240474 786500848 72324970 966221876 971814815 251115290 991690182 251341229 738644395 887503435 630531380 29947967 289103168 808931393 357996427 45808830 527520828 447136604 880082376 934763242 908248421 548062642 583705531 127411608 522815146 135662257 448207401 162983819 262986745 429335177 533246507 313671652 186554687 181294296 45633428 134407665 342808360 432740734 621269265 602149592 318921541 831798888 213850267 796784453 203759732 103243647 982225243 233389802 811957081 555106811 991068363 48242166 483099760 560978621 872861468 242047057 190653390 992102751 414966796 253607405 675602785 317706734 908416241 655149455 886207755 168022094 281215780 397892339 217913699 23807950 149632715 6977480 818703298 119554072 552143428 396955380 685592278 220957248 61575807 50619416 312250165 774322280 559027063 603964492 350147554 909597798 602108274 18822189 781456955 786572144 367610489 887344488 726807617 84152442 196357816 200420109 762805695 205100452 759370451 730792435 528410386 460629288 745771016 701033232 851830532 71533409 889375516 4220283 307807838 820779704 523943649 219636452 672776832 742246825 240165516 396097487 792350330 880698995 831066120 354491781 111657843 69621317 270349987 370702860 574780637 126070135 214246272 560082156 812743387 924299094 337022962 290073645 756995006 371267950 936885661 754647333 297240035 637312456 888955835 290351423 513290639 616256479 804082100 226191172 258056714 847670131 551863839 315721722 724879227 277532942 767144238 296921561 666577398 857103723 419430736 68876080 436088650 817259999 148373442 789227695 14537534 885797655 495659124 293705664 502311467 463353217 8775346 612526129 916981261 541962848 659365004 499718746 992650009 751296430 545741588 883353314 529443375 767657085 520821882 166306748 887586845 643319670 640043452 252769423 761158499 24818171 565202593 92134440 294911369 461843788 367591349 158441404 190980232 285381368 802170970 246737344 820134039 131769262 927939689 414856151 282092338 24267395 929919698 149863570 872692656 600341467 234133047 324805838 557445180 394548043 250474316 837325704 955138824 486088468 560654081 894114879 646162074 500997622 669206120 678537220 971205951 330544221 873421500 937773589 601935051 304158554 218181023 222887985 809456357 760067640 689240380 341431541 600272140 687944436 107504052 601073074 484043176 654399480 138242098 367372852 682324199 609214997 346775769 208712759 620803844 961062221 212226890 143339562 491263790 290922593 286571283 270285789 47078839 95724118 724214524 548602627 8049961 841032216 46106216 161597219 220685575 674449933 368703017 577505240 643834650 666727861 8098990 644473351 742563039 222518182 332753808 329128803 393331790 242705529 771475094 831727995 44304686 250426770 591323732 95438847 474338519 384885050 124003187 11261655 31005196 804847820 525299354 966581443 199265459 657418666 471243320 959724985 192332624 223964250 560976770 710179791 360892461 545077297 706234820 185159061 898434319 416716198 420261721 337416413 948944968 18723814 14421520 673080107 791155404 448539703 235734611 934574532 801630346 681522393 687240484 853517106 287239997 312727608 123034990 670854924 940118494 95286449 419761908 323363105 335317624 660973946 230513011 919812343 711913805 506423223 235295738 674407413 822240643 632981 880685329 89110514 3169683 135831858 564131405 652947213 569306758 808376252 864259169 322293353 360628494 946448831 743193406 556659850 582193025 699182361 220681692 252411919 114345867 700545039 660667127 616360884 274201013 605471210 991605293 243751430 572066188 267938044 402953184 456534012 957985599 638003055 915826079 718459395 626913017 755951883 406581660 647971313 513326579 655101143 461902024 415041250 223355656 759994988 269250636 890652994 268983868 343163627 389810712 373551274 845140487 18121353 970586812 678285347 503200264 492182615 299631673 868603871 278351995 163974004 855625149 278630365 41544118 356390129 70760798 868022015 33699065 912881602 732700473 421830436 679636593 925898322 418372557 275016021 397644506 525972528 299328467 306318648 125526683 266568003 710242650 346563798 172131320 85435680 235826409 603413409 118957473 503666470 148621060 421910404 304331279 350318935 968542968 194496058 942409803 186413666 826007329 743250816 399826012 314807248 837703951 823177992 657990760 136349989 384252473 653698293 701320335 389746634 793077374 87538620 717302679 858434716 674128313 930301200 318582635 143743231 253045998 802746208 195744703 182439848 466249199 920025895 243223565 962751125 282525969 490978370 416610067 205981025 277700512 27432265 175233784 859450042 159529586 450733896 39906388 722647612 55570162 678970532 190163218 697035072 47866067 936264250 948579464 482645506 863336278 495020705 744948953 691787398 173675142 972226995 815826620 415201196 981681858 908558019 8215768 963431931 554857196 768513588 527387547 987142487 954622229 302488672 125698061 838582781 507598852 406915994 176647409 882297062 541394924 396118133 943555757 799977712 556586936 115491339 607630372 997251328 649754212 477693758 881034534 823282836 33156084 38518326 880826794 926892271 225321216 175721359 124366074 763224155 846265308 891443024 980968147 833067615 848937164 466853458 873318262 861090032 753198770 482305281 673108809 146835052 230283952 187571542 47004498 529812413 526260727 505781441 417015606 628723355 585240515 409668795 546276693 295687319 954967884 529130618 753387000 16413484 653026522 362400917 748469811 869070543 422184439 297330996 179267462 892168456 879408198 690144795 902219174 655882776 270655717 420543336 552418005 262389994 845977359 172942398 525966198 905268498 848084698 361257173 853911975 80711796 65913886 300981963 585695839 304091817 481108074 262986064 205316984 829737598 384403473 24113130 913897250 295526953 913577385 183558279 35356234 322705651 658249989 568616551 658807538 657766047 584376370 202151829 111750060 561054564 672582372 895705786 615056617 77750073 441538359 96759117 52062405 54641848 282918200 282766667 533437983 668292287 651621061 616908446 744638518 917648813 350790571 303456945 663196657 219826184 456811373 405429657 46316950 713422095 824786335 99174254 241142075 363818465 699837489 109033314 792993403 401256269 980241678 927382313 801926359 35284518 270509605 924083500 308231629 132655889 783184483 217282082 77444998 322125053 594503231 202512342 839262455 809099004 541965676 311079063 47885590 535460458 206603104 800511258 824641854 920558644 995397990 759119410 8891519 238389039 373582777 282789192 403819099 29549561 620688648 86852207 64934372 910287008 853361363 87824662 996860801 829147153 823437113 775331296 898585780 260238595 503419044 441150504 330743933 801371795 265482562 337943099 471176572 536317695 736023773 772936306 257177916 271271652 560027218 781838722 499626721 135814027 75653269 800252714 853344734 224615885 564164209 625168228 535363765 637565657 894258629 515932853 31492980 328079197 641390745 779164950 8159838 537562196 401262852 76108911 68580461 12008134 543224384 238066461 654190203 262617696 59476778 945000629 352618248 760343943 282419805 321871016 465276242 149243075 141368298 255089532 103306724 547999507 825080967 470991490 718759622 950812475 258519951 745982406 560926435 771482325 500991272 358684181 658342301 790200306 605748455 722415563 229288202 181071934 689683667 303282987 797637245 742418449 233534340 456953626 451779159 443183214 174858011 66845080 566687898 270669844 749152454 135983075 501872636 278023538 551017968 9743364 591649910 133626617 643528965 541631096 99367814 887955719 210858986 758469750 286964340 103508810 165007276 212851072 805685362 20992217 602055440 272973109 418733301 793294259 929067130 153740749 394516004 530430207 556732137 167629092 978150427 519920426 292325413 459302711 395241537 920004826 739058984 356983020 893395739 721506999 423825765 366962899 201098915 283582304 9836095 186244980 224038334 11792930 300713381 656897790 343271258 164439348 884903092 389449491 835365752 105693021 897867656 385147064 233193365 500259630 559372788 431944986 706291347 37576325 449311868 525956861 912216582 551642226 955633724 534238902 305775720 124936677 608744917 154771192 783684750 238216352 753178143 735656155 148705741 394659219 922158687 294737459 817080131 521948109 672643238 577187739 980486648 502569458 424300701 224531024 465165613 60285871 961868531 308371444 40716694 668062531 264881906 588676904 177808834 357169837 440797867 806970697 213578247 876583000 712159347 466309473 713088369 14652257 538447722 990895205 622043178 145026671 504411692 694590672 671147783 665424802 259953255 866378821 425267663 451022077 742789801 751519233 630991424 84129925 135523677 255505883 904382426 697693557 506776389 412927828 412900928 734132630 853201640 26868894 588092815 460248844 597311204 266974270 288704758 605470945 515313516 772208286 725872635 423596511 135204042 5432929 239993402 193919110 851451582 246692257 38117071 524296751 715103878 165152815 402045384 985573890 292450171 32491131 75551849 967459129 773883165 628547401 777230450 353035344 292057797 989867675 815783119 654808398 918324385 282991897 315917122 314111972 910125424 179334445 786260770 313971640 722432892 909834635 748452544 972702540 48914094 543921087 97159254 626508590 566023682 893588660 607185186 454178707 249704983 57506454 524904836 956013894 717573402 494133993 349422895 430052077 420455163 422153725 325261224 928259748 255973386 843469514 609721947 148707308 523899033 355913607 278367861 264812235 285382410 163546067 932113330 673046411 206691381 830094990 941671601 81720810 60377659 375060424 525032362 497246641 14562236 507427267 400704097 248068953 299638440 717122357 741970450 619370356 460303090 345554719 964977672 548614697 369139869 402408408 154004792 865771687 126164667 375121078 228955906 275711108 590500515 253247247 880678458 432862210 627207713 715688224 222259597 52564943 991750753 985555126 264234145 804017924 254738664 89884713 131888111 593812995 353962272 863381907 540331330 86720517 19778374 654609467 974514874 204661799 475711157 72312194 336360358 455258626 860449796 973729241 775419361 141180520 882668120 917873599 360097468 860264521 923752598 124622619 458146342 21375553 509904906 785918622 416287018 607923304 357398601 160297959 343048495 44467170 152631805 365779504 849474647 141878142 14722315 36794479 391694821 401674096 858030677 163905420 918865872 175148063 698818691 408126567 523234454 816922449 526873735 200870158 14172814 600532549 481497532 738435357 310868139 590986843 932215222 847785058 105646689 159996202 993265459 919238762 639880358 575965343 281742832 56867281 471995617 109307863 264583033 499963853 821090633 351033321 39788181 914920575 935388124 647969711 722319260 39795425 759832517 368618708 650751053 887883192 637106544 942665798 268339273 155770507 849050810 722713972 158441111 536763303 346892143 920386550 422843614 716901619 512112819 801462797 742144034 220668934 455819971 410063572 263629238 340602188 313438973 752408344 828004782 420629539 644487323 38308276 779852317 856335025 83752133 981571092 301421037 126124792 702349964 892462612 511596909 523124675 597270692 34983355 66676997 123967651 72158254 31118657 300900850 350842317 916084772 895290253 553519344 965012487 654310080 710262095 140096081 218551109 404294096 14807866 119440150 780358688 966683291 939764148 910659622 224016686 554053752 72818527 287452695 718426533 151747657 945267079 963310499 326918914 55040211 212400126 294587272 960139001 389423464 675348635 471838804 795028928 4611458 863971883 496175944 184477968 210710556 276053526 729719026 202374529 532696612 394608257 239883200 259231376 956050557 238076977 404155965 578501546 62669835 983503138 440497434 125836317 176617671 910158257 687254135 961817614 241665828 364985146 92917959 69216355 103811338 921207560 950252053 277262436 508931127 984873671 679732813 2662796 741130969 913972618 459874047 608364817 645438667 253475856 523363300 383237984 831597436 276020778 89990268 190843224 858659643 588942067 648237314 259037330 316675817 49806166 57989364 229312298 292938225 340770765 303255891 370843543 802091127 175607506 726509430 627879094 975133460 605726400 118208023 663271642 685570535 82591816 87882671 319336697 202931196 76233756 591353630 975247159 418293253 770501463 631864465 657201825 865125128 510729437 180650688 499887117 449155193 625881478 363794896 485867820 785244314 201437712 26402768 308405733 660414171 202421886 808237255 375195182 317043347 565176439 472186019 381711204 269177879 439444893 966023426 774407939 505257531 660802269 792038872 258558506 831090074 943310461 267628674 737864985 587986479 254484246 370929094 435767403 777339635 811884337 180213885 299797176 371820037 739575053 701932609 795097125 772350815 425921992 500918496 181538572 399254544 130548848 618030544 589664495 176468245 148758309 479444302 629110501 204876480 629674584 457106854 355585376 397190176 492900822 605495682 66685217 423012887 388432691 666597801 75420618 305776509 841107929 282533685 841886212 355235826 751106815 625339087 92155555 698408257 14104932 690586211 450482556 484010227 333540315 337956768 29637226 820227827 898441601 267232430 35878538 790056972 225703776 468138021 382983364 302564868 333917125 22566884 203159815 411301508 202186147 385501501 166803615 702551893 13945630 778327123 247953287 554601159 255088209 720639848 516676338 986701128 797818559 41966158 170280682 440623552 185914701 182032250 893192878 269130050 123526047 859074742 254435036 808705179 165788632 927923857 740659885 73251881 941700554 894287858 286770425 868554517 369547009 80852018 822976687 932797696 253854763 404094292 322533559 709880378 932636004 599538395 736959675 392557342 843030635 659435811 915034820 175628274 951792941 901699134 276859847 795015623 220557150 75495094 490240260 494497310 423167204 439791095 708571933 321369218 715469936 554680901 649648053 204441963 733334274 696479345 110781698 203446673 318989754 415726704 364732961 669348302 215642474 303222831 116792105 655005265 708478150 165553550 662862203 792890554 441706976 483022412 939018343 969662559 552571570 199108881 919133158 98077209 466124398 692918002 460475110 785291281 206374021 705404205 515273520 546265548 800419295 58963924 28922234 212685089 756740770 681914325 320568753 800046891 65476080 99158430 410632797 680663241 336349002 630798415 615318434 715208750 804747739 334388453 95901378 600607200 663752429 200009047 494747502 793528886 830145814 66694785 548580781 776298053 586960439 564052878 918781585 637877384 3728410 182779154 100916319 411073352 819633898 854774173 315904818 446135898 194050891 769645600 487966322 338357492 836886295 136989318 513008355 584673517 49874326 73849293 244989950 563772745 628498417 70874741 506319110 63847580 168098422 428013319 31745862 959803017 28080934 521985821 972801375 21418351 95451082 612532877 203089001 566456337 859211257 40799135 864497787 934041381 513162542 847316912 397350312 214247556 189820639 544054815 878323730 497178417 629809480 619219420 313559745 385649671 457640594 425919646 503064558 561658552 78507098 601978198 474482518 139441093 136711917 209118388 263972779 37957383 434181087 911730690 971377787 959333554 711318726 7519862 26467009 287857629 683711281 422651598 495572051 529518620 697846457 988946940 994202256 118767070 805911326 735479246 829418136 234488492 544633596 487350797 331746048 764546354 19768832 217642531 755014546 750954562 248950271 635906780 670962911 130036380 446263955 505266090 862553808 969479626 785658740 169874635 777265510 980947133 406887401 216863350 470265861 515230647 313540889 664578203 23251600 822714469 233461537 641984438 943278616 44183054 59490079 512958932 635951205 905156665 694577982 888349551 694057745 960960745 141920646 360938488 285233043 753686616 249477579 356063137 440278335 338465197 25770314 219995962 330796700 316658118 865376555 781661634 835678133 726531223 454683231 26750035 176892972 111606205 510104056 42072729 568080913 498503190 113127030 23342901 831871791 31979096 328495212 703904736 2144038 310471313 928989057 430460362 323904797 140796088 187678789 513984901 611505196 953030748 910199379 75693949 895051594 422849746 357956043 828781607 959289288 710386520 721871018 369925828 599444624 154777007 259970692 713667428 305696235 681203924 660820310 317648990 28669170 341579293 798805450 874659403 197277331 87436738 513756298 660013054 111214925 615489639 843663101 1476356 696459280 353604012 241123533 336498576 127592109 697997168 547618764 30839228 633912350 838392163 381321073 356107136 23319515 644397671 702927206 720845246 940728919 458914959 745525925 692538665 514148318 127699201 283792977 172769768 247058589 545725161 587653971 897289279 265012101 602448038 323075989 633158630 947407719 47549835 704918407 283378931 641731369 802067491 586892494 709565910 539819582 719417590 382284226 650411082 785864283 985943208 584931963 130990024 297205606 581002487 293667306 156385685 822647417 150720522 331634845 472836016 772697055 315549238 803640571 857211764 378658700 742671281 46689921 569375713 131978778 758726012 565958804 629411497 179400033 942444878 973164233 15097939 379879137 128162072 445014866 742627583 880455260 748214388 363574472 793776432 441531396 56726547 432273659 951310471 591518941 483231575 71122137 630684473 558067490 422115551 666236205 440147897 949996764 5528131 972370996 827503940 455094979 864622218 353336863 300972411 831955827 506822099 179244987 47610752 128339741 751139305 136166375 260353476 760339010 118300664 200435652 210700173 586959126 608596624 308963001 395969590 475094749 16118276 350618876 738244763 532936833 113041201 803481366 558178382 169569382 980926025 648652675 282081675 645783387 193130613 559950866 17328949 301597558 337062429 641283810 385308620 444427361 620251270 484617037 7259487 914794656 580211309 953095520 365510226 151433588 553490609 331834914 35637 223321941 16650977 313055855 397111267 504100279 87400055 343364116 759622185 470958524 954799950 410085575 503820603 622137225 112257279 867792624 724689826 739714597 990501516 388565416 851181276 20317934 113199887 724675275 121051618 845618412 240551117 426171835 489388305 123217095 562966138 794171898 92399389 228780315 805036968 293213379 609513820 558567861 582368167 303865857 301596143 965255767 752635951 170881354 815227617 351192396 962041107 863076832 518668444 847697288 517349998 574979203 546065300 73660717 452527365 68420088 415569639 359536387 814999503 290679886 295229955 969145157 849968728 695189696 513903147 943676039 714266531 274289818 257857298 277653870 210926030 528414386 742515520 801337566 756004865 319320838 852556710 801010869 152304584 754097018 26488275 367714286 285701450 903957582 304781872 263242393 851313678 817150909 59724118 60658122 438429287 338998646 337886616 720255668 122596319 906882253 551900836 491172296 464142900 290542755 936488183 735532515 988876898 419954238 886758754 19603154 925435544 613092341 610997078 596979778 778476519 47682347 104034764 341121762 227304360 718449772 947839844 165183933 135756172 258233483 909003695 428908420 656664508 52246287 104243156 221970888 848732311 292459542 374774309 697445706 844343825 643125025 81953459 585573519 30694046 329071234 756611007 108597312 721789119 851256120 295037922 800416649 291893056 592353277 19084135 319192466 25763677 731272819 432502510 43409149 131018749 192776931 299357399 561334784 571529184 922996901 609886244 893505766 484867018 370003585 417449810 970633953 34794467 831515217 362381466 50264311 508232705 961169513 28014747 475669301 379491026 684200980 728946581 262725432 209409491 623164716 359724957 291940904 238536320 116073549 675546335 589529354 706393614 183406636 857844910 336276508 441366345 655167251 15633831 850393391 559579312 271866247 702631303 647368915 73844029 967566601 122660028 865171207 846490321 731436965 698628655 199896947 431900440 647723440 674500465 113567938 674256436 164293377 521419060 132230308 711479486 455986976 205664336 538709978 245094385 777934871 823220704 231502121 64017064 727021038 587166243 456809942 775545238 226310822 54076597 623018901 664374514 581836305 24441624 399617112 937873077 204977506 792407449 127602905 747555441 882301959 77663914 584185189 900989695 626615464 53330022 534928870 395252704 424314911 971777017 884576768 870369158 312960558 504948000 526172152 383706903 267741363 476632494 464898689 293820408 465705750 569397332 543054109 597249159 830495592 681926336 986563408 310174500 543941039 668424565 328702926 845499748 982228539 115975566 583682776 630197361 866671328 466102410 733311842 809820851 280290070 966888804 742374355 444247807 684552833 528053453 409424659 883484353 467265165 859333466 146316191 838361103 73927031 635346442 113365691 23666665 814498367 903932451 734894435 141057183 816477704 470816002 88201763 525801645 838284403 272332966 92616016 988279313 306584743 345863404 246039376 127347189 201857365 617036302 703686108 464766125 864729721 905228470 402176693 724994056 681657907 63331857 120874384 461838071 22459417 407929378 437626920 549558181 466638802 61608067 598091248 165335357 11479432 610247780 150533177 478181597 846936626 167138809 820419553 714316847 233730811 481220074 317670416 203292952 12109966 294821234 971956699 809737585 605904861 159552750 791859399 165492682 82015735 561065483 134690167 785602605 861219171 689907497 525884826 865881738 192542643 657881677 653256010 957763247 54157691 417588475 283489352 147164628 698624298 613442520 851606848 549573870 454300945 628122664 490320820 519267535 800371591 906796393 691836914 128182901 209466618 386287345 132330916 672122289 817567305 222649658 92637047 900210840 301002199 75616477 15383677 264390449 188107017 263463321 505095926 511295452 772535109 775634637 654099703 221405543 360053165 998325537 990196350 862538679 189354557 240278182 514060366 112797351 518467212 325750680 994759784 189243353 546572625 788836468 78361186 331201590 790498770 509732649 910361170 296524820 257460684 152478918 645744072 45079452 21252442 917755914 585586959 116146728 397413980 572747658 917575900 826768797 454472127 258565250 263439472 81581120 377936030 614798803 756503509 824572578 964917781 763004328 788935003 19670182 958518563 676014937 189996544 867965213 808095942 457380550 420495379 326534420 821371935 595830709 474118459 203052823 544207148 77820018 904360350 312559102 212897972 199284112 593536887 182803210 126924655 94811197 809975994 169722485 468489574 694779340 348597138 542109316 769395006 634715223 24256497 45913605 491798640 472113682 164162432 786383392 876347616 612763666 671348842 414891598 897464579 954840664 725257554 397791990 711103512 392583177 656992853 15877618 258093253 244414425 689962004 134071166 383230384 25265819 572631287 702621733 986287530 854846022 201726398 800730500 20979709 762849964 542636497 46419681 545790269 315147348 514645728 904147114 352161770 655286015 711978629 149718494 37016965 803000795 354571103 350541475 966105506 304410683 287854207 516388064 238398621 618304058 939839805 737907410 147529848 711106180 613861154 498973829 246432792 542377539 561787410 975880114 730587794 861541222 514473903 969292105 397600370 596759666 314137575 593995516 823091022 800283045 66509287 66681029 184600614 400663183 43224208 6236575 326672759 429541283 639579982 601296704 342969223 495307289 832130413 853440216 642599735 168856985 445339321 160459778 916005589 788816474 995531200 707884223 560885298 386802452 954225137 252223591 246256689 823047964 936740059 330776847 636933394 937750622 848500513 701536941 133049344 848298151 562018558 158298875 151030344 637839194 623578333 356633200 949681178 607646598 264288789 803230878 109443614 784059278 432911088 241025787 834844322 640605917 742647053 859485460 524135313 568712437 513611270 367265714 268957063 464834397 431595705 894516169 653572725 829445570 932368655 520750920 787239596 85516508 475849111 106220594 693221276 478948461 515447476 341606724 542252730 238854253 598045955 683996280 484504599 975505150 295151924 288231079 575731882 573556109 725191259 449429203 824773531 149281929 429478575 718524512 181083826 89384672 26613089 187814682 337931979 202837055 559636977 644782134 527830273 586629293 335816243 979826459 367712320 229111343 654243419 750401162 328801127 912049508 760087433 346536574 772477819 570880123 359715768 422446374 373206982 523945305 451125561 389490740 368011198 943557520 164860179 488131495 852372979 57684415 622269367 789923608 385914136 891855006 938183989 177973710 17963320 485445718 507932219 184621578 436512428 161786793 997151982 504255844 994657719 884942752 689884090 417584556 665109628 34022037 866545792 995427837 9707786 48097139 75320139 733656736 426668375 295574265 407329577 628819153 48962918 552632404 49209113 533449442 657611794 849986954 3622774 330554347 927795777 289701955 332834685 913225547 268576762 941641902 482697872 121935055 234845173 439798928 977691251 601485288 341835218 619199423 237228231 588277427 572957845 342417860 877928215 201526513 479329213 223839944 491914439 696712871 245329039 604672862 339155381 342799344 806311912 35540801 515115619 500459962 468053282 782911771 633049860 15530618 134735930 522163624 281071294 123890949 518336501 224192212 146382269 355978300 559119764 456302877 675556613 340331421 284784272 841572955 671604006 28915962 557185947 63359145 268613182 923190085 107460169 686812156 538946654 524006616 984264722 839212286 792589403 65287967 888602188 81258274 376213007 320425624 758582829 820279931 28260984 500840350 587649333 253100999 28907419 580175777 758643266 469439055 102575736 524424785 949975390 598159048 351550361 744615201 91966410 407089905 815618490 71455956 672357489 379263242 468287983 997748857 403679850 688378617 487691944 545167552 53483945 567448846 380502804 240108921 339018062 118054133 998684567 194941024 222944299 492751610 503084261 846428922 991937679 231620048 553564025 523140368 475839983 250915398 940166517 749729771 783067969 438743630 614579933 316203639 317962760 370196470 233722189 673777978 308633703 654228110 388763628 3422489 672851611 973381006 234554363 77630463 822460864 729124812 620057307 501748808 14307655 971754643 339252272 185878920 737174330 668534961 473094789 941378817 466169882 245107019 187658828 477042393 820874078 832123191 271674973 897095396 390762586 570683174 994627554 871595104 758944243 512703304 248066297 580906284 285696507 35115451 412814401 664376457 532083422 508202741 164707864 128271002 695061855 666517878 931224047 466531983 701835919 710721339 263542271 128923332 707365223 950262254 72571182 788729299 439084422 664742442 12250173 809344492 531529944 447852940 767683428 752690925 539795930 161496464 432287525 464585657 689420571 798257087 114693578 165245695 268457668 34414173 723131777 465127100 524793906 861798778 682075098 636014909 968998932 531466098 733253190 482808136 967274258 323297134 621559903 346741387 652176494 52605104 723484061 322788349 824266560 464771926 768966276 481654430 99576443 81904486 208126759 449315235 586756604 414498567 745980965 866845313 885803590 281751650 610616957 90331684 497408226 707511551 202236675 891606767 738919671 394883548 187751003 586653778 583628112 971445005 597216253 939294019 275047005 165307483 380716419 467778179 948052157 979213314 547748966 189014742 443654123 124872049 225760429 488455033 469392733 238502354 247776563 916748372 437926448 627652389 843214470 566689530 19341387 72421483 215062046 662387113 942778197 544772516 237607033 532719245 88756722 881109976 621651561 983457573 879927683 273988470 844445798 43961755 105990551 284077128 502427083 164868708 202492645 597607994 298693236 677179543 865072504 151542577 813856372 587231892 152355065 623246139 682018938 371005202 322692455 870592105 173054145 29472351 137126534 9335200 790779737 532627000 774940605 451601427 698495444 751412154 759715213 977319715 151446185 621445440 919189806 391358508 637546164 449026286 636515605 772337561 46445188 652822015 940114832 55871942 318695358 470647836 884612497 892595038 940274465 254850432 850314635 860414331 190705580 446948034 740097407 314345538 342144585 803669479 294875126 196091270 266513774 798685658 621012787 163726222 863246970 958358054 757190035 323507294 244979993 676852265 624708290 385003277 584801797 731074315 216924857 339645688 44069413 781689581 235957081 377667059 384299202 146770987 191542833 96729659 544328628 586475593 237026502 998875388 485440029 807233116 656418707 292540047 85708124 844523586 861207916 896485677 198698355 217088842 76553349 5688861 522603724 611126660 287873418 12390665 766548805 937007981 590768515 232070370 53117477 326195781 814654597 104042197 555176785 806781134 666658107 507992890 802373770 74679583 178181815 679266551 521441500 872476847 921182954 321697204 646678902 159523887 431245458 620124566 181949338 927004715 679723582 449268153 387129435 82428907 773755576 83803350 215242292 238145852 307700522 62976531 306044450 208520634 792623480 413755344 710282410 822958269 853984016 834810530 240635940 920888141 636464332 558725716 760876329 945834102 929681476 647929318 851667506 198553459 888219603 377743244 795403418 470792325 284525803 215723498 912948845 91368 815385512 538236691 268539352 711284612 674610554 573059369 604299597 684235436 321815365 67772776 283701103 51508772 823973075 449393286 303180935 466940564 915607329 794211941 875995960 84112526 338521258 116794769 375294297 362941178 282731675 689950096 256227954 474251847 266672158 228765465 543807810 488475099 258915521 459352444 251991204 930519127 221333791 352263072 706484828 510711326 2880102 610753683 464532354 918817305 921877665 13986336 146679570 885801256 163057092 501126662 845446813 727167901 35679146 686116739 772969028 759150748 840586613 492805652 440584935 136567121 829059949 721183917 713047082 451733120 624299732 628570976 765623495 348291047 754701066 416266998 763779647 245045733 811546732 943703124 24340051 551025710 981592194 439804519 963396182 730712336 374413355 138702081 501786245 818510843 714471192 192561980 36377906 958674584 966957010 159105409 267663223 180304881 344918011 685361939 718672967 148641086 512501840 927703298 573854418 99181061 673515271 656817395 42489412 435336359 862246322 84035130 429969502 596106797 669981889 147871349 700603968 458104745 143828155 213021470 262325473 402029543 25726283 699308936 356877779 832428262 440636516 439190969 20376825 793096369 244105782 988676490 760170494 303625581 833683539 725265421 850830870 911335717 990448409 355455892 88704430 376255049 2129351 749449272 508119443 242833986 392590415 233489930 849638282 192271281 922206708 513367774 955176446 133680169 306279633 135315375 890228593 389531039 429198240 602403357 376335442 927288865 773002163 599062174 102513414 444446497 835261304 764289398 141875149 443670648 799949835 53630206 352965434 922831857 988844377 687687705 139090173 947184965 882229345 552695939 384397595 958390459 718043295 511748704 599479074 472719703 947101961 154392750 967608548 313441717 9696579 545708946 218974215 517793823 360570697 432567399 269083189 917190223 349696941 433449353 905140689 188601565 981201172 12351043 41762915 271754683 555991613 74517510 983876004 405652949 385752695 472572682 210785842 183769966 111772740 507192654 715275900 977394616 929525245 717971672 751907522 233675810 719862281 249679139 210858891 85408041 964770861 568369070 281256238 268153200 437141399 552159891 58425655 994665345 791497117 195198604 806790455 259106080 450772074 788884787 753313348 717437182 728806842 466865117 103904900 998751495 449353013 640524524 742951955 396947972 929092719 779461110 963980476 44770855 478698877 196683859 28674391 94209607 35326849 202473762 439332715 403520588 521590436 205972142 876356517 147577298 591066225 691009259 957498652 497319576 3893269 102776718 834658996 630712945 667380874 243761297 564073912 791675672 276710171 681467725 955419285 788427977 448298536 441755813 680287652 533406625 798126138 689499834 776088808 213808846 176371188 60459975 114834803 528332632 977165781 881338105 606609457 466269076 605339015 708719363 473446683 241555871 685310289 708554546 106446166 996095221 960089742 686886109 747696571 907524303 338924690 955509188 769738443 670271906 316558599 715089932 806589796 98638072 884849383 162795422 932509123 312107918 359784048 907739405 704317788 920799190 743206300 119494547 693682209 580036675 983405043 228866461 969740195 2345102 192600263 323356145 123689951 235902702 945413352 623256021 264707888 625194166 605062256 741535389 271486461 63398551 775686885 973386245 264622228 979360052 202265516 115231195 796708374 652121372 422602175 532948794 157550470 664359042 578398811 388167237 748293898 914175150 228448886 700042001 819670801 970705017 630981780 646809643 85690998 447867410 26722615 275604637 499796573 368640198 719231617 601457514 323382861 517138443 332391940 904793371 612929255 443652142 847083020 190927657 894561392 953433439 803071834 311070861 924326791 78853118 82634995 826475976 560188743 817931282 566939578 714585683 928467470 533786259 907997551 94832577 505678982 217037097 599585153 209226724 497386509 540150789 133687958 645706345 583329306 228024363 614025651 179455474 730499446 695186215 320041461 700974817 219500279 470617424 671514743 285805890 40875843 90304314 634895167 857149541 600775817 42532955 688127270 988354020 999789109 995647075 473815003 345716492 707971504 676315846 173888477 74211653 882597102 877964955 796945145 775694105 408918613 443475578 780353855 43566857 246365768 655157603 696572420 998386936 863718245 616018420 537782994 457204104 770033954 338644466 608621109 632796306 441159729 322453704 563622300 369556346 120569252 320895925 908117418 399470852 706605182 96179787 430579257 272140932 876327520 304805052 777617285 601751532 471340201 191193402 139990395 924754954 625956079 946248787 631676145 337368493 19386219 768635228 557395552 77273784 5195795 108593617 215129536 83057859 944015637 953179088 448873455 922920911 357649098 197240690 409442971 640809955 790657308 460443313 963107368 182531192 629306644 274726708 637124379 925674689 522151956 417731783 740057822 542850567 806423049 212000565 594654466 57388754 926996943 376434046 760300051 863888439 938734822 270911377 52886027 411279604 388120645 483009966 105509277 710173915 652937965 8639698 360878301 623284313 816549307 205688662 510235420 504503383 528386504 272917643 672887877 915350536 877669170 559279719 351879743 522897825 457282147 818001007 583327002 446366691 390998773 987802326 429756040 41407640 139222889 175938343 560731433 665110469 88632260 83016478 83185494 923545263 667480543 804664570 670625005 648249795 135426434 131513490 506266076 202125293 106468998 536111562 627112292 911317061 289984919 763726064 649812741 470954266 7667177 324496896 928703414 381516244 234619857 152283515 607956627 964119707 92194936 136802935 228494251 489520070 231498188 267437836 916759722 957450168 504805443 659147837 284363394 85873106 511712934 712710308 657687360 844566320 146809929 470103103 353630741 177139892 786699761 145941536 257957620 440786347 592939006 979958718 977900802 352604232 195715108 411454685 852923878 384029747 838609118 965635666 962637564 493103923 853878789 206113373 494610996 419333285 861188544 811281149 835912824 469957380 301545718 54122557 727093217 698580514 968006663 637081950 351736750 456141073 66058685 843011926 184923703 478002650 65570678 414312871 812405327 733836100 175711173 620394678 713247980 852067243 793660424 154415042 380669428 650496237 575402459 102209047 855914867 821664274 560591464 702598304 328228523 673148577 326515103 323534649 282523506 98154917 189728176 428536016 887491508 499286370 611412160 610200712 66013352 592386141 531518827 819079200 344218547 81086653 533732969 799579403 643212309 87055790 910945762 658169403 227639498 519212242 766656599 343301475 759659083 477724891 799581689 343830048 291885451 160180852 261585005 766857459 263499229 114921557 184895209 180427474 430058888 281386458 582573212 730146460 945188591 287326852 80116173 746154428 464076452 184779921 999882323 336340711 746261338 959868545 276881383 777225714 618910077 99581997 297459103 800912961 371049202 590459111 153094119 532225186 558204394 313580982 34891157 564386232 374575942 618757717 558851041 694939386 846071369 917595571 40505136 560271055 418533559 759883357 972337452 576643449 945542824 808753336 131310619 343972742 42029181 903990388 490031947 971414087 187414652 470069079 735480405 695539788 880142159 647304429 351565561 799308948 688061148 393339663 235634741 512122294 275979082 730317039 387815291 174078754 170540342 84520498 296640382 180530393 259853401 601679929 999493424 950210540 591718629 93751717 329318243 662708202 396710088 783412544 238873619 646979339 448676473 127989230 131905713 410112757 250700568 58300439 128551219 558162089 144626756 163299727 571439254 163114345 888828044 882551987 589802185 475057174 181694101 402527107 424800325 403767992 473029438 85340859 526002353 592017904 346771565 816898600 249228248 817372933 415096174 240992121 151328551 228839287 88618883 423901337 965351956 905104371 317418860 283322429 782247897 737577337 977167194 857135547 821589451 305427052 188586104 513118416 348911637 856147040 386034803 163385476 886538353 815017954 813345776 820081331 22303500 617403197 587362236 245185577 187271400 790785867 453928377 633201560 808971084 928959032 6038404 124092958 984425481 654145525 110315464 728964903 638449017 229991863 355551949 201786676 452384305 815372465 173925841 379150866 515278541 537396309 66464029 193467944 588528867 114707824 935597270 79562753 790269203 760342795 342748571 943690269 449783966 283904705 223754728 91144802 167176379 174526322 600349908 992609929 649909657 279602687 699667167 534825918 357410885 469302160 568786280 882080366 626484520 63743067 333130831 22752380 504391813 151000161 468935171 918497768 811479922 258155633 661826713 251269407 101728779 955173438 780744403 510983768 348840271 230765133 648213042 843363521 679659697 961745400 490918096 882972516 40234458 632404200 274409348 348884821 704024077 682804832 119825607 940896794 897246425 33864134 590984433 343479371 848634587 45443737 479773117 52022017 754293600 608712317 670692117 393751498 4795872 205207290 353119933 609502344 98822494 726865967 372513686 102867313 391937334 701224376 544712873 766770648 938841820 383616704 765862317 843091129 701133526 534222014 908955672 430908376 156599964 274067747 476610870 932407572 713733078 323028036 839362340 181099585 228235976 146241975 997024444 887418130 535296271 747330264 213618897 635101608 83303173 822330480 871750677 992068964 260839599 144549092 36401216 886104594 947469408 649667149 506548660 868124803 905077485 485873801 664473736 698421190 200328973 660703081 789232082 264324782 455744098 236106975 683471699 439320535 599890078 465246030 969094456 573189194 927037729 375833717 376052485 342075381 537848398 27013290 95922410 343332310 580905691 211840238 971096626 635370149 726987889 931586935 611322240 517632385 325608059 457028723 370537377 644341687 230713175 86721742 22067243 755688431 33476378 893462177 990377583 504717216 140270711 980551409 890961932 820900499 34211818 54710763 778236955 661091767 245191262 166068003 995779872 239674768 482345900 709054696 271444554 395185018 209416873 795889063 534474387 363047266 947108993 747427218 818234622 834873294 201984050 957187168 675289893 349622235 315185424 551612209 224574426 563825416 410556533 304243573 757148486 446576925 293946051 247157851 840077288 129626873 217063755 429076652 935022217 813274826 502833857 369849751 80592300 104576292 67826348 48885479 625318054 509452314 203990498 440425801 211556742 684338194 716470212 983873155 298468843 416228051 470957771 387141517 941669666 732277851 553355923 149495158 61982283 221105459 924705047 132364657 69513141 662429564 858395895 315608190 645612086 849681621 174400872 91997155 945953753 693116377 733619498 749813644 371120987 244553104 225520374 989108014 327510879 563444375 63715931 243219668 954669565 888964844 421995526 68953090 593240764 518837717 642789896 47693925 536023350 636266209 248735874 276800058 371401566 23017033 78908414 722187924 163576380 171947710 309804190 962548561 138164391 149862010 916550255 784990038 95063437 25710260 491499707 641431115 598773506 757813741 728619359 380315895 546903719 469215100 355088056 79981189 564887806 805795125 516963402 112112567 648658242 567508368 275081300 933425847 182389917 964398267 912268378 674898488 579449110 755582972 778330247 957534645 52532318 864180839 955622120 823013128 997917345 581434583 66764260 515120198 860713910 626161516 407915734 199779122 580841151 74922272 360618531 503835970 22968507 629270837 206703031 960277699 50773731 987201482 248409606 434417340 582386747 710990695 958746218 341959537 465143837 29207426 251642286 819187009 269037766 126037324 965251071 818254032 427988236 811541333 205282288 571886594 414578189 351475233 883318502 12103990 709389400 451772921 64283596 520138512 295723897 646355179 444102161 836943332 15493533 733419873 232820217 790811273 231621620 932168179 393842 257844262 611933921 598051389 715784303 443664777 276712948 924610016 658076557 887680005 430243273 968895185 19892423 751718730 160385661 676068839 651407569 444656692 974694877 648176896 483980144 259658424 315614010 288921437 190790963 159712650 752838030 597262225 696985657 622207661 507903087 706558791 162857964 812552468 32924074 566983694 576614267 208078020 685598707 692103504 931526561 818562420 448588104 943135532 143301037 342277278 320858272 735406390 607400327 760946554 109559946 632207640 13207076 897925189 425679436 291499416 87020553 597368996 172891302 278628049 973771301 512961506 114862220 431290682 37829347 29475496 658209867 268215038 367885249 187319515 640234338 141382854 154795123 313823532 121313072 905901833 274072260 902655957 698305701 865657314 505852538 553566008 89075114 792876936 634915526 960026913 80119106 804982708 473780916 59459904 2962148 204155694 357206806 918518940 252403141 725204860 545575988 860271073 724949290 339290754 721908531 581214899 537971596 566164145 491297756 387307704 364365668 773439605 701403437 416239840 650611686 724737817 864251980 842446511 678377830 774463122 75114486 535524512 682998933 795438823 665642899 787984798 584733308 892478376 773075389 41333848 461081729 338465324 355044889 740572284 476467778 389972801 302374082 727156797 43602842 898061803 399154137 464222753 790467459 894758708 748080676 979335185 396984118 438630948 826869177 93599814 556543031 204779396 409610921 418419862 720223469 914916678 614065562 468057754 694322082 128725778 206040594 580883426 912635621 58981019 662197313 157380714 803817988 152395393 379708141 375188762 518841087 72625653 714148513 21726444 272355119 607558761 864531915 886976269 986026217 832696260 288639306 444492660 574132395 728941301 875811148 691027907 339323849 2886828 602601409 939423754 958705901 942528267 80443468 924727950 171630961 184825528 613706767 243140716 403706551 925007003 407120256 789300269 715050229 719265286 995302541 289458178 946353411 427421643 207297827 19107202 985490374 642600308 89744076 157528913 773072001 347449631 245704262 975842652 236759313 727825448 578282167 805259394 853146533 432578854 318401041 194170983 647736079 390953866 37863313 246393055 325234236 851878929 382851268 543751781 716300863 589739160 887837545 20239204 450457855 145290626 720677306 236110941 34183777 921574022 855555641 537734036 587557377 912010639 815073764 949612419 551024223 353759887 171947116 249992851 856229022 102925608 152361373 71994634 352099407 752848564 440044362 17788502 712256134 83968915 756875274 195468581 161654799 49700942 386173076 69320059 586033464 647192412 826399220 590883894 590228356 586682971 233577522 624673287 34262542 455876679 861598870 80741299 801231845 461255130 676864779 146841943 253283417 924788076 125436993 465412811 229845168 880638376 154060849 948801501 879435005 922211851 538480975 204018857 969656181 509719095 606399544 35913409 762795881 682957500 435802387 154207618 117348082 878134216 946926904 754714284 605668818 886632821 142109418 536295804 930203745 36901687 15846997 913985129 739815907 930210417 396401346 872297191 527173058 294094996 984589056 407102314 365481165 713538464 596878300 2224437 419236468 572178172 103351338 732410976 709003469 962175708 96411123 132927189 972708611 958786595 651609705 46577438 580852712 213176542 854127378 204278589 742496217 161481445 656620758 812696810 156777134 228899863 987167163 950396386 573498630 600060338 456212734 105701867 922296447 953322867 262945121 443041028 458076576 432700860 709224834 573784122 873490586 558474685 652508728 118306487 959270940 213756286 611505209 179711580 634474784 145073630 944296918 786785157 133291587 484437047 325187798 990801727 40151316 396505459 722112632 460812085 852626669 219871471 858628016 792456774 110998950 352203575 58458897 16106594 298818398 886401655 413933762 683182523 649032640 386643596 909732048 10238977 53980809 322994664 571870707 983584335 839014482 350202213 252810880 688065363 302779431 618424518 93522423 294145716 136880129 576865627 604902507 212596694 833887926 463046648 854822736 342808171 958405581 36010926 516398277 559407418 82941178 134769867 143982240 294847748 911304875 798498632 806986388 964015180 477150434 748424156 225500452 62343408 751712299 708517542 667261343 502753941 869498971 95657822 526785947 465649131 376174475 410715090 435883327 410602193 731744443 636595840 645519285 70566357 655403624 278900069 619498482 814420312 970430969 902892087 36931525 420139186 537050630 522572099 428495148 247816942 307153880 951782053 388836241 593101094 965032660 885278904 588288608 976985498 244276603 915333594 220377860 225498932 10470317 51172389 909767178 341668427 900328822 715688212 154259029 916285290 6045733 942779797 971527387 702480120 515594530 74245818 501937750 749856576 976117744 175183753 126699384 872567496 590580842 580158884 241042048 44027334 782260896 586832995 387900033 111888585 356492775 252862783 906561783 435376730 149337232 715360670 425372460 348923153 812459924 692199379 616881950 646412587 918189483 824506431 51669778 690771144 123354475 705405718 538416563 887599543 16011319 148855905 178270169 177614540 6036507 981890577 315921997 823191565 474610380 685618077 294997583 949634393 568346672 17370312 882698091 542948872 957098546 785884280 958146403 647569147 451806149 721387250 673221957 189208852 937948382 964290882 88284287 158184846 861094964 14487305 379608929 802625549 554157570 644552730 154401141 218656592 781780951 6318408 290045574 280887643 187654282 252260157 493653713 259293959 959285351 68108364 771840970 6034735 53534297 25469002 921256186 93357905 836086403 638041954 185012454 356521349 567368341 571769449 470096453 290113173 926897707 641351622 110183406 4586265 472132409 785719925 687628522 127332868 996183049 521031578 97073028 817149419 262686223 518089864 850803301 409322670 327866694 747221774 386664169 160765857 193464085 594653955 406502829 472229855 251339975 451854074 550781705 762221856 521888227 872054634 504411397 676842361 462534977 785858272 6585219 929368523 62834983 441729645 205005382 459921418 458254975 554316080 926241180 424995509 815684774 700195393 712728258 999058802 688758283 166062547 406768831 370675571 909184933 849683741 339921257 615841737 920797209 734227175 520563212 155750752 717548622 767864880 235893603 234129140 964443757 594282817 130941566 640644881 182478671 364428965 578736651 583554169 741411420 188633081 508058396 593302159 371508662 531203222 408389502 709720887 612927342 762226343 580414744 110480988 463680086 874226734 499856972 109085948 308604204 341789624 37043330 459475061 795228768 156686496 663455615 450225158 571486260 267586638 135415184 556977577 524480332 195640441 293700465 461571736 304529388 561417125 837238671 158935198 558290072 748158782 111319246 527833370 438338004 74666412 186013536 563570918 371832779 730201849 877708753 675253782 503397071 681426486 226587008 201272339 199979464 884208301 334091716 583365378 349092403 536449984 592746263 218412464 986638138 199716964 306360658 230964770 632772214 141373670 377606892 475885016 241852001 444154264 619605797 766002104 952413848 775012784 918707057 752250214 486611048 954588759 548006416 457678141 163420068 864475323 145680824 607990723 672449795 726011643 868067376 244864001 390596110 776959922 383919862 578331708 82967507 424853439 734633650 838258241 789897166 929944233 518185521 680655658 318101453 723898214 867262533 418196811 590861628 953514494 918370469 666667301 796896892 372198752 124361177 297633536 655754162 346663732 760060623 284088973 299189890 774542101 168897855 142318733 908979141 467729653 954497897 961369894 945763472 912270071 593506431 476522130 326096553 706628578 954298997 848101189 737135341 387597350 245474150 474212222 333205053 313597710 606475538 673576315 509902847 87813805 199404952 650022965 670666313 969928661 287357313 859656208 712764959 995752373 612264064 169125530 490939936 5420864 542857521 572995969 743112051 2183395 411839860 83601248 990226103 639147896 143317977 561054547 425132516 381855748 537875468 428495791 359754287 714525792 806742711 625024775 591296384 733068231 615952754 837233672 470608417 669497989 243636366 432644318 133682095 242642684 651666092 912462936 21983056 167151475 446615778 289611470 467456127 46336936 120322602 443077429 47774902 982614049 643028532 707856871 91202698 522818555 534795096 778771134 538318992 369870205 885885721 146456424 501795052 610287305 917648655 232428103 696365319 104118630 975667117 104073996 704740261 735501285 51310359 730747031 525210162 980971609 794988678 732077890 146026680 958480428 572999518 625917573 635886341 560945218 571884349 942553934 455696695 956768276 983098500 549555271 26935743 58908547 847449926 505957335 284604300 798028027 587645729 321081668 122933413 785775998 861021401 771365400 664164804 54886988 17223875 723019083 334936778 379260552 694240961 16642299 843279791 534172986 519383681 660250847 176884265 809770423 990139001 657490779 268171484 564258095 404528146 521299193 223626687 480698431 177772655 450267909 314808161 196144596 966742778 121941470 877432710 843916813 20862032 694365578 458530332 233210784 771149613 440031116 666166005 27112144 90442696 120167988 48416568 474072812 401623593 554371389 605801771 56509943 50915118 646226913 510488770 456305039 331270981 380041267 530316620 917582945 569528207 182884085 318472725 245046814 225652508 657256071 237633985 459283900 930692224 38001714 877552446 894885906 304491548 930903039 720078152 405934335 525367928 31770026 546009931 498149011 687814185 694548121 627323283 88330454 944090782 719631512 666419699 845545677 375206702 871179458 690187439 957723823 75896049 197001296 390124057 895174397 750515675 7034149 62869919 137901731 316623699 660079468 81576583 782266398 3977062 362573513 255679976 358467634 627211847 417495181 983711188 337379498 406241366 604964262 366873757 200548089 992151163 869447147 126418104 420659036 1982263 612242309 585830964 669012314 178740188 347717187 497479336 385719120 946034870 275116750 134760093 721010042 533581571 530413555 798773129 560164276 172936256 639179458 341168200 472033929 965143943 899334873 655419798 936875670 309252416 933788011 295133714 943053859 66646387 405696663 190440640 426072166 213885527 18080069 185148999 560840064 231380314 751963585 784296663 508783281 149569310 974501153 818434544 674213677 173909785 510732828 872565527 613652927 342247997 62984976 113634143 362211052 279705996 467330845 814921915 907502232 187680783 759582994 711306219 862557374 750682588 744185513 235367056 45973626 474403783 522939268 71049065 487360831 135987875 102131614 647309934 389744639 469754788 28458481 36091898 139650675 911589139 561049876 834671624 176291815 126164899 926538646 251140780 164187924 550185035 276141350 394648237 406570764 351151562 522656265 485387509 300811555 995087532 216359179 325191512 245331622 36606074 431697113 946093627 474183908 3615323 244934959 709595759 317028939 861846476 173410068 865915658 51972664 736177804 717249370 556761816 409199615 244081930 251099484 119304219 264054475 149099217 287149152 107569475 33897118 678673588 192393614 235804567 88265333 573673790 22139607 330270077 732414427 377094626 664913127 780795164 362809584 223289859 876557515 709404400 58989119 259722211 863498136 450862985 165710477 946591871 713602383 106051584 618324736 258422658 772222569 3009830 293328834 485513347 956482101 609447924 15796206 323773907 514260239 439487116 100336852 116669919 129844124 488436698 33840052 646343683 625893974 349933524 43758968 138875839 975276801 43753280 30486758 345090776 816837871 384685695 102796057 857396760 85319271 809648294 85896382 745544314 732063182 623612029 203552600 275511807 22513779 529871806 934129796 43993022 208315356 934775505 562885253 264129906 441885629 277020991 378825366 625014717 475296413 544629883 463172291 796322844 249550969 76754736 610304009 897574483 3104088 573560180 657735187 427683250 136660613 502939591 5869485 518423538 490913627 200691697 620505364 686526181 66930240 422584384 589908157 800047556 30718853 931097924 461340723 902980245 433849082 934175662 851040961 34323596 162662936 282301392 986790655 934844092 3034404 397288910 993246324 49439682 646800268 556760477 633760965 573815386 907267924 714244645 415672723 102795018 383934974 567870543 291621780 432990915 324427256 56913039 68170905 879609493 123209909 862919687 131670739 757673418 711717430 714445342 735332172 45700327 315345162 822894127 334583892 874395456 66099004 726188819 144770752 900422245 593843792 640150591 167766170 341078021 412738804 701067965 312445262 972674631 954626008 511072657 490895437 647998051 481999023 171294584 320050299 358727973 65598202 904140173 651284469 843404148 596681532 825141711 941688494 501359169 81886587 839155752 30604208 845479547 583365125 184916300 530637475 225602779 860121738 397022289 680895910 958499795 251470079 309132813 683536769 199669795 135954732 976440031 880142232 426181284 657628409 250831920 641505296 344666475 648717527 379760380 793613566 39828244 726251144 875609336 901609818 59382598 545777927 639067826 997898815 396078080 328904115 610362884 588614338 999357742 398783166 961167275 449411584 276791092 568721747 770794400 884240207 859653946 951115330 803562472 65112893 475808732 428792656 654220053 90585648 597951360 304610686 121163001 525977381 302906731 399100902 238350022 464714674 449220380 718875355 579412278 383437003 215567775 298318666 89499528 496257831 249645990 934761304 780722378 294103057 32473005 868948573 76054040 129867075 478029939 618444858 851809502 994681265 668919387 474834510 49468421 400727460 758414058 468487539 262385677 385144672 119849891 662692705 192948906 196945802 730566081 221345884 669130945 568345423 503252640 737729943 530645350 478382448 881635452 899215174 670935905 31478009 816941689 671525833 741624183 885005560 203683938 381291763 596028254 202737160 356813983 365821123 405842114 554081295 658329146 883920222 578881489 113102372 88840231 774650030 155340911 4303754 201554889 718535953 192390826 101591470 656117963 226171610 598947336 998947132 914846393 367376898 393654604 97400053 705567061 197217255 615247452 753089168 69478459 285648266 548357293 728982517 935100577 61352385 273275792 554061801 944512695 285050335 230603150 675070142 127621830 405572369 614057059 470228613 430579817 10744716 646607412 13849671 16412023 48385748 853895300 817661031 659020901 879513835 680874330 603370629 78802438 224846246 534690454 481313564 637902918 44752611 687042792 239582907 373738313 746906530 733394603 366704515 273217713 840774645 124090424 898313629 471583357 630180171 820589660 483291051 342740620 597499784 862395671 773069542 535535967 846056652 356977672 366630446 554363872 290038553 200021229 716828635 899485738 3732375 223427545 418995729 134071640 385882241 428494316 866852492 726089098 656185651 691754351 461255811 184031210 245958366 505383204 836978378 541091291 686185011 791890300 110545812 979196020 114257920 515944435 137817572 505827705 214848288 521969210 189502300 64586859 872336437 426123841 516126166 386375620 858134396 48994782 803909305 499653699 993559457 852011452 794471843 747511690 562580236 177955507 647864184 185915078 382403025 457766831 534731959 152376907 887979756 946363897 326717512 245470755 388048292 859176494 518411574 996915011 285973908 35365013 344375988 142486331 460253015 868222018 734383751 251501314 986903425 600131502 467124823 575858817 765566277 751578766 60310937 616670790 731878608 35548247 310705249 640733409 610816056 922947604 151321713 239471833 913882854 879444258 81810086 637989504 413500436 484198632 759288539 575130869 416736448 392920865 277700112 132479357 124685492 56981042 753465592 246059466 811080065 17889368 487614758 994302574 464905001 189110128 837006366 902242435 857113502 603255282 366807757 87400518 950013037 151311905 557597722 893710098 292520299 325616631 647627112 539768593 480819068 453638366 576413936 311163709 839868101 965573974 630976439 117099825 736076004 29450846 883611968 855275248 711479517 768794169 916673973 13993358 841185080 835227434 842851189 160955500 668864882 662771325 985934522 7699221 651658541 986664075 616809960 827672902 222834104 22830162 336050118 316886835 386066549 777342650 509143862 508630223 535364052 391623475 610264442 912826142 265819534 260285781 235879115 628220369 838588496 172229111 451288327 585304207 161430129 855534247 90609285 519992278 62533839 507698122 224021144 799534187 340171733 920244575 922356044 67179462 632090162 101406019 354608963 922354821 652726817 990631095 638976231 438231197 578391001 704109589 321302391 639873457 459862508 335322092 55640617 28905828 985508445 348778582 644883990 995088070 705567788 252986861 548781017 482598116 442803370 81939403 430880449 828056827 936945176 973865199 19655925 397705251 67588926 517800770 572905480 368562150 427032197 745434680 69925964 650393333 152537925 280627131 688810482 613499756 372269884 21254947 501365971 752423490 340797031 261519781 247897306 776438630 36416499 798079543 531533588 124366282 777239153 291864066 409643098 761565566 794649723 94783585 219453518 564468759 969509870 430245127 165316217 179765548 422947222 974792871 453629414 94698507 569383032 182894719 850618843 870169840 598032452 608234323 605887075 711324158 843745749 525736758 736380477 477372702 381039603 187716874 410212711 288280805 497298996 711481459 134753974 767319323 528489201 261852105 245881487 648947159 641710173 114080980 105453067 636578582 373194794 688258548 238496618 760036337 502144336 355159106 891439141 719490126 301914236 41187914 385947353 569969083 489913018 701382123 262741339 65629605 743080313 946917953 463694174 224234901 995453154 113887879 251970106 929094736 551163772 102562261 556262728 690448306 617377332 19866752 816590419 592342641 841325325 660192966 715855249 137940165 446540924 103528093 106069120 799330525 227166190 845740905 323245618 368562951 522261643 303017411 389625635 81260846 295816523 851843057 510366191 425245457 207818402 592403648 621693838 822187078 407239555 320404123 374128861 485355028 806255935 503637675 350194338 403869426 9009381 204802859 43791619 705403276 819879718 41327760 106823949 317287288 830313994 331436181 991565698 489409350 81168871 201056181 390794997 601423122 235587897 928100427 387251479 453633080 243378665 879303801 201719137 925335778 878112976 76095502 685328670 727478270 914212743 61964924 803757777 288482468 891558838 375673398 871368768 847664470 830055974 142438044 30082236 71775074 880868362 246673827 933995965 6671360 819088504 85900914 505514510 864408437 745184859 132117197 677101075 537489216 483373007 399514415 743891597 821894773 95351669 443156265 626557673 737347611 818989591 711796566 416505807 873140032 911554947 227516520 657865707 798426116 469454830 862986543 11400518 686380824 689623820 748227963 806505779 496025224 653435707 987943596 271915594 354146082 660137373 72083900 522425148 768340385 628184127 468487022 589263318 842612828 438626246 598152109 313886178 964034511 440509899 410160761 459250629 645723845 152813311 722831254 865340825 788204010 795551171 513424852 293633937 383775800 899693074 64421597 372739984 381867904 5767161 915157419 140356692 279561083 744613142 198285496 37977372 62787877 947972943 595810239 948595457 124550582 686333868 879140778 415954602 489070321 349083741 655823013 496950005 991937060 877570533 287426279 946212781 682826342 713476627 96896516 630430890 236745958 888296192 265191829 959684664 746882177 917521478 308485318 513609489 663784975 20585709 935658947 849644625 366702779 611325412 399013419 989638870 405988757 934828300 559051586 201933935 861011596 531710533 265184062 99651489 482078798 394133701 460234584 919286049 629446293 472043447 119982745 672442739 568841924 942152130 481420920 820838476 28080695 611930479 946485600 145243200 907553542 873413387 345810150 757395432 873505345 31568034 422261147 313569879 452264341 4363073 215746740 905424906 402234411 86654789 732030064 659672805 979513629 24313737 376772418 687124579 196519283 721412750 647571829 633287837 237839660 514896206 65429333 35795598 466939075 768596901 728467761 847919130 992712786 971177688 639377679 336863678 182431219 97580839 324309477 119552211 250908866 631806137 21216904 477641528 585485856 30964559 558709699 645067722 720794423 118780045 30009241 335178001 62829086 325084856 38180083 48156836 768804866 487975636 392663336 35306636 937098372 592166909 80999378 712915996 577169166 761280059 915753636 30403472 296440912 222335022 359120176 829800536 76483637 726667710 979208373 925002947 210720701 204469347 824167357 53932459 525121394 92129807 231032436 245879557 116420761 432087794 984856893 418911716 210650158 131176649 344016691 372181808 609618659 13527660 866348857 411772409 418286068 673718521 638992447 585353435 446666195 789637709 865760290 885174716 235182467 60724354 209824256 913761632 417332328 100647358 714948353 61635900 611780424 41757122 403594410 6603841 513338386 715314983 224486584 238788352 112716355 474177270 183411345 223377754 263147346 2003521 111662814 722527003 562932070 936715219 768933282 232517611 859430990 595892144 295832817 936109326 70308106 252972083 90396215 263852204 258233841 363413123 526993387 42433279 687718349 236987032 356913341 107156905 953312530 896245004 57171283 245105772 433818345 501979292 335678434 968027238 615051565 467501342 787671184 923730006 42763422 671950195 916572940 670929249 909847599 27310657 933247025 817126154 479701307 979404701 391660309 35930743 53639289 144483529 786258088 105794512 586798481 656674434 398121806 840245636 699157412 628231419 567417016 956689783 504474484 431154550 345833665 787384506 307624311 429459295 348202299 300910512 212369908 762537779 367703148 474808660 260677918 383959384 291178667 489974695 559314841 93861938 149608462 88474685 698721567 794635482 932642517 501479811 244189843 890574454 448813461 465657581 914136591 677286057 103536212 720789039 172921326 440955530 51507339 985026795 933781911 456836815 679000353 18896625 307302333 775462152 285754441 944507419 432334582 905407427 853751550 146131461 702792290 545877231 484650400 561287419 408095040 861403449 880539350 797823645 988799368 644534611 669563757 386214810 885009574 356612360 326491794 10791008 240976667 18935996 537205694 352089605 859502939 38718086 848945905 823744365 387586678 137511058 588847982 221484659 533692038 454591472 825685775 325546749 632497540 762973371 585665746 822801555 460914726 618473570 596524317 77567255 183688335 998102138 319927595 546550536 820492536 545430538 342760207 262577917 541751461 905594751 752022378 719497664 179583343 422750421 697047955 815057000 327550664 342443965 920996166 95334745 658293501 594861126 453449809 717232335 7699059 397987878 591390226 238567342 583515496 267641144 894095074 618557079 894822268 210708263 347396424 481546454 50498679 276030118 676372111 695101117 970051451 494322252 500002559 847239283 42141129 120028273 810390203 688361884 9714388 677825942 93114288 124789277 245524508 896293222 42014231 784795734 537877706 120554504 350622173 181683511 178584472 462632290 746565509 976065177 429034808 671398979 731498556 888432979 183353388 383101681 887557117 210806740 385745593 755232393 974574189 927089363 677742717 728035607 148877558 297715170 964141301 699720457 785181938 978777748 214798345 260075024 449946624 909351178 326228161 963651218 348656126 25637588 426218723 977472089 861770309 806744693 23819782 27650139 176401195 51003896 396975823 467056650 814654275 341725343 76693083 924670799 155439770 539509744 408073150 944302765 279648855 133220320 121260849 365280924 950189503 268679074 110576999 838069941 746189376 652497774 521739801 503542287 531195661 812145570 55155738 672081371 642140892 64861788 856747524 920242874 560681091 376246231 687294283 400890169 164564083 94013359 704090282 519369387 826583046 728797224 647302498 207047147 401345173 413113490 203183360 161203350 649613205 919608435 39956379 807467523 78422457 312085634 89983107 560131365 922020230 693310451 576670224 775761109 676341135 661775961 302201673 363719150 964800344 755628109 910475327 864446176 850344682 395224802 362507754 740917577 193674803 566379045 586458873 454505008 309229090 738598090 375798001 357388920 338074893 946078908 657408494 682598151 316049750 819458974 609779123 939338176 385629632 620732637 110016069 586453960 837576180 182100989 535864270 9121929 790329827 715469749 842780527 398512818 14515977 247433691 408757924 124382377 618069206 475853220 674380229 616585517 711716268 925591254 986831197 833938063 307625268 448788841 762331731 371459219 384004215 907968615 124809230 950399250 28861982 756258123 411298299 146339877 151630737 871784863 617543327 81816436 308942078 351893021 357376743 800481620 702693886 482971745 263161573 35745365 872236150 279796839 941587441 147534168 875621533 829690020 12416224 730873058 397035576 932930293 258348402 235259019 437585290 812613356 778853085 558622273 491925226 667142404 571162865 896386973 781907005 163183249 549984926 46588195 496121815 888164311 90995392 360052342 984410848 902660758 565921851 154224103 886408526 315963990 309889840 637674726 48008566 933511205 134164372 451841288 372924900 858866009 179775865 308961780 383855126 756662078 807471202 931777525 443690488 70337553 528874920 474869903 991958090 553247119 254954147 388866037 752227674 206325891 266294085 119209867 529691456 38317655 542951161 78313977 29943837 281928705 349903273 768156069 128958273 678101715 666891872 988410455 428187639 147216803 651824306 368592907 246314121 825071611 696692692 949138282 200661107 986095015 474628924 102807082 293844983 732070732 605335562 303378761 636755220 913134593 328330422 84912866 975631330 510870800 312422758 478057666 817048168 884560276 362821241 264121448 952192294 648672184 670737323 730757409 924398099 886088841 768373609 795003566 77355942 406714201 217270070 174203263 519288008 812677646 482703990 969950025 921856703 24802434 415760217 4932533 200782887 264834327 284347995 768816839 408476559 796453617 199498036 438434697 198083051 226546933 992305568 707888887 761536831 516609916 254391750 458409222 931644951 138767470 716040772 401294633 282167103 557907910 631146930 984884660 667158800 710122696 280958981 199584141 141124048 83571760 453068754 908676172 669254133 232407127 620225576 610104965 537941203 296463792 201486392 814249708 939533425 925174210 115946265 413166513 249142467 415843649 254227211 466845985 670398036 718018523 622352368 437199154 207598191 521102011 591822480 701972031 576788472 273732683 365314464 569196311 747168267 244582709 687834925 82593153 204137289 8146015 481327107 168938295 322302298 937188872 149521517 36197334 683989920 794385963 975338644 695266816 665733032 562071536 197840249 938017364 261063563 135386039 479641433 745482350 733138776 295023789 553842736 864390615 76272385 622630088 812437613 401870571 375546265 155242854 246901555 89447100 533791343 544682058 582731295 687863156 545909338 885156766 784386739 861761771 278657148 198083082 181064971 482265521 155582399 591512678 59774099 47818317 961398439 158437736 534008778 718848192 899063141 701554870 152342561 299320940 548414074 84706835 558730655 420137293 99493552 635839537 497055441 22822081 13207129 330993064 547630744 327493987 13173010 475698598 838384104 879333001 376102855 973978283 896760924 460343253 779713213 127968524 780492917 116729693 547700662 640667807 100636504 364666118 88526738 822281183 918834008 258955817 813759617 164996101 994424986 942790966 384757874 878345558 186560035 569283873 718772026 950878758 553086609 414990165 571273558 526456654 592533538 359357366 63567726 457253773 451627590 241180089 392589219 671038522 328766409 790462756 54728427 15356887 877251109 719119633 736193072 991621984 128938589 837847364 548197375 864234345 567657577 97228030 754273366 70380539 727889267 619818361 628451713 296966136 258236281 202475133 604743647 559630879 789783872 71217809 795013085 824605013 794737837 611262926 755625699 39754030 762000857 883979861 700440753 797373569 329389716 541131764 406751069 412980616 761316111 800162833 600359199 730750503 209379025 295933452 566729855 308730775 588916997 547958224 280322458 362034488 5184749 346088119 94137349 398802414 838275960 747323018 461646139 853075155 882794898 45562947 218141801 328475161 515510165 69973031 526054405 413591406 368622253 180149417 290400054 28438704 602166603 634162143 117615930 36322615 538735953 952124648 336479107 115050255 951082981 601594618 512905871 828456220 45883880 634703757 139547650 293274574 912695826 171643304 927874827 562087577 798830216 287716765 406091137 348590519 219885296 823558238 341919649 320682072 43210493 531967787 921400759 612182384 814841841 362303354 727094365 846781058 918872193 950430703 557218808 166291642 577217711 601331828 979287293 961456543 370348908 679171995 918766896 478884005 542364525 139162373 74707722 755314018 929916538 741901329 781619780 401246371 201901611 327166201 75750813 986452498 638160636 597851285 315352052 394724355 789492314 356857977 508075185 779440693 385360183 304591672 320826866 695669935 77095086 494177466 616466498 991144156 338727477 824244394 917814253 718704536 286544103 433976848 138320466 535686678 765351246 581786233 687770896 623135462 800429068 791271722 964993295 389764500 719987362 96877315 408008863 77768237 552704315 206324519 965997753 566350939 283755500 120347681 870319238 851857280 856707175 813969425 471780702 241884606 265861138 864381235 436537213 781185070 820178440 919009543 63349198 554275111 549959746 77387177 37612681 635752480 508765987 68705658 627577073 207099493 908536183 537113244 309087097 200799539 278849852 647441135 575244381 982642967 739207609 577941691 647297911 225645396 816080781 114267536 147568886 765706502 381591102 967327576 427769949 697853900 202992089 389290322 861746851 381957318 325219030 890442219 340502448 489819684 708298073 3555917 691683971 708819566 627581388 521688215 832014218 183313048 829833365 667568033 410961950 428067815 205349785 358910988 818317773 645312494 744108250 352594270 579158064 35849573 415502529 344448652 80640025 483261590 650583628 429688260 790497994 988462068 918614642 106149813 127464753 731001091 478507584 349837101 429972066 462578870 159925226 625242655 548200207 979702287 396463777 301946873 725352862 867305114 709090048 580781074 860684703 907611416 364225370 597562101 894437524 559731642 856216756 913626793 634190981 249474213 299671389 539615880 375595060 432854497 43688891 614203439 986004780 908537648 454637845 893881963 678103042 543415046 728860198 972296197 219107046 749996092 560584606 228166798 658205610 783602520 169398635 450354518 41044192 26528940 317948134 112213066 116658503 216305908 896253984 982304233 722188399 883781203 640566570 377377746 378825289 624729055 717905639 258732085 389585789 185871421 437034563 415222991 305199412 723468351 480417728 844336294 120642234 708231211 53420060 225874814 587887531 230682549 441848382 757754610 397068068 965992237 501739580 124346444 342748291 518749328 88335729 903024463 460021527 541644730 889562536 232571267 453094392 270350868 355556981 921059040 757880124 225430778 10441746 746846434 161264011 856424496 16249195 267512159 514385387 483900466 794089636 536413908 138227643 763965473 988108028 890370034 490205553 98533196 155704694 601719486 511903136 944428949 800228472 59804447 13923432 47586075 890540048 212117179 332932064 890482332 514213963 577875487 351802743 165076215 155933235 751863153 606774487 461289948 727146595 186205094 973717133 1337402 976359870 55957521 690882872 869282085 583812853 681442722 252164713 523158441 184281322 385243012 606869531 882434457 19732394 849140265 302792011 47788923 376037570 832189624 817263236 552031142 708447060 603194434 322090384 708280948 33902315 78633232 985851739 113795500 217422957 621261628 647244690 267196896 733788768 570558793 435059746 513309183 574891202 761814056 870743809 991839278 133854800 4340224 303788347 907074940 686645704 455649723 80902565 347459600 730310592 544899371 562657596 332104331 84509067 100101903 628529150 324871856 417384765 994049507 298962711 939559845 672868628 62153190 747692446 989238240 608346439 891494111 925231562 252094540 744340912 253377437 839171349 357140023 609023736 110000658 991037155 960196527 997384336 735588409 660220600 359082361 725841540 243252120 578212031 245164346 42146891 390931030 994530271 10486704 416749170 643434780 735539440 676642801 787225021 863488129 501900562 513921675 761994142 797288157 307859629 728177615 449638361 776171157 545931672 233361374 615163012 254032917 658692400 411723109 983587554 319742841 985115956 902466270 200596535 499228456 284983870 464964485 230719756 580676563 273218902 149577194 954497524 590241509 514898716 124774276 863468662 855218968 890433746 428323858 858620616 181625478 381640922 219452374 728504037 55548455 772732965 993688564 649807853 335649202 92770864 222417580 265022869 279075712 526065432 27883251 571999664 853103399 63506611 568722141 481039757 143519285 187525703 382742557 727503830 523397399 908009808 736955500 266907655 880771452 628420053 55862404 434178555 44733338 585581786 593648398 226027818 88879273 733071793 81558576 531623284 750280184 24598476 31836988 260768047 446157141 14706817 227291103 689328161 543050565 643935434 928156711 315121601 634643142 881560968 683286693 752595434 673115110 326469794 507151429 752144359 730851542 637864528 876173278 111269278 64303272 874719057 918647432 799354996 752669705 49451301 156048505 615834350 101553601 54911787 78906592 646509222 304005462 378523596 954005732 719157450 828093580 152775618 796122063 859294721 768629501 275444252 384254324 579436882 380439640 462872685 955223763 225996999 912621995 571389177 554712229 858435462 185850212 268083641 752197238 433480996 916835082 733689932 244915450 629229938 73135528 79133768 236612804 335359030 810087543 306515737 40591650 317209580 749639500 416922166 986593005 595370758 676294576 883523424 165575754 392448641 338066689 445174639 336387303 726175918 253313962 145844253 536660604 485494963 794740270 147882848 42624990 587117380 606884358 989865555 402880104 103181165 256005953 183215307 812599183 168066294 972037894 533303115 616588681 858250324 669112131 812982057 219855996 628647839 705086564 46443998 833248477 910140624 336860135 592142765 576877370 15170718 50742774 660543295 287570271 988157616 963754455 77929188 516725600 71480355 591135627 278785372 466942670 686207668 96827050 547131690 942196172 854190722 882197308 997650381 811752843 371488116 157333874 75360850 980594185 421191212 981697480 791634926 67045773 571379492 530449261 185289559 291961105 365661982 212849258 54389393 496143261 442462018 69859327 322550272 100002975 526919573 1455784 392267512 523013495 130942048 134233543 780433820 842943169 275526376 288006343 681120582 40533476 49828902 308556886 211878661 541800876 777548130 853421775 166348042 699113337 827405873 328082734 144131214 994057728 845567508 898839783 201264592 821965553 753100736 750809481 753992001 27683378 838758364 24592022 880980159 964902911 127790716 668617253 807110266 783953414 217021542 297070046 158749885 665621714 40029357 47105876 414786713 50654001 527320251 410134052 920938257 540357633 561737435 802432140 533853346 718349235 550481380 265228817 379725359 842079724 775691067 589286936 970243856 657091711 712641264 45506800 981274470 565851836 840459819 235626350 33610533 605289589 200935283 435725460 851503211 763729004 204646497 295124438 560965081 307346907 746141794 842734528 252937662 127562084 155181991 113748859 294349677 176814769 871212078 292588362 625988205 432724631 968648088 493016046 106556774 246533171 188683609 968203214 593734211 179524533 230175198 208456400 185780434 545651918 583106584 887894849 375268346 131479928 695570224 728284745 177000460 982709066 823211953 629505714 406145454 339975149 855919077 534700699 71316236 522137855 801118463 857883851 995855416 732563709 9833622 91261894 458455267 16675613 211055595 220757738 13366059 504787639 32362501 10762387 521029385 989451806 905736655 108720122 611635227 923553047 517786058 188874819 763972345 201762052 526536042 994357367 654784522 423457887 264821174 405674030 729074522 468227903 2777733 837376440 812198593 858316271 181084110 770121686 535118438 763524851 625619976 779743025 749852126 69742276 550086313 306613812 442185405 548804698 609006640 672767392 434055712 123436822 220987825 919304839 899888189 118708547 254672244 196662180 766875322 734271654 240683032 905550431 399777208 768765587 169232450 22690091 498011162 346717671 969978886 167897658 46542076 668622085 231531747 108971215 415022709 251844703 138787006 388070272 885233202 49224522 292721328 37558300 551154610 665065974 275945428 368399360 764569558 132649479 902457706 21709351 409398170 555886248 816437529 966344154 824013384 374693750 376383035 873753308 247364071 534007442 567139017 913538909 683071096 721929636 947408338 979085170 280699442 922740434 560245209 724184124 943623890 320656704 88031112 911817750 962534721 543281563 3396495 375970456 171855083 925132070 573142574 572481827 49463648 194827868 592731964 186242234 670338479 661232859 378446383 312602001 268416157 193269576 774479818 82913096 954852255 585038885 11178398 950281024 866389697 28370421 977034891 36482105 618983348 65565827 858296758 354439194 208976545 370309136 742547529 708177941 146270688 264799978 849906732 854717681 244305816 759388714 925767510 158921228 314942437 227278073 451063304 241445240 569018913 309074794 845835100 520433436 109878780 272191522 829510618 149777679 439402460 60559535 866020554 628634552 235290991 932939167 531104160 803492984 252077334 889569809 330120973 964807304 187364838 839624233 762679714 992616372 949781030 114538742 239124 9671025 121153951 170060649 484581925 551973258 531945248 684154451 496065203 500569586 701000320 350492444 965843473 300925071 509877188 180410986 653991910 52053016 788747722 152883543 344020813 457420416 364273244 123238714 974122056 827327633 305479552 80132830 872633780 708650745 19947602 557984136 417362823 323809435 325414019 969122316 52024456 239091875 108209231 994204226 589602361 80621211 911808328 393204830 897731422 992741178 531661276 987267680 500392157 423761080 384987741 184403307 574660590 902949015 392808447 695003465 802452279 939283791 294333677 348611690 164395203 737532106 239334313 210062724 954056760 295443199 907095358 87438345 784077318 840114607 940129648 667704531 63210089 628153109 1772077 710955904 394137535 563471594 298621153 99223575 491629437 203260596 953321345 420845693 605097938 580772786 680520126 852951099 926209127 149282980 744815632 491321576 895171302 151161732 395167968 30778227 424121798 794857912 171374427 225322166 558432744 563211478 54141665 228949517 738977842 470146981 797779241 746889764 774407367 705359882 803249850 8152892 446525394 170272711 443619744 776504857 143405068 886113057 851841576 176271778 745836661 239408246 204809195 318439725 720460706 253385073 409281428 634964549 535049085 593334873 826495835 234600755 65590688 803035507 112738876 861597669 847266441 276525086 591954547 665833297 838535002 104248900 96829210 127511542 222683673 181095739 330321859 461976749 706603546 427893069 384949260 386476826 204790553 736014908 358461938 157939713 737890247 137198640 841113482 569402429 772091917 331413427 680557671 732088024 487882404 613079632 661986994 627755275 768722570 462133786 103328710 374815233 698416372 19514454 231071513 77580686 219224493 617257296 474766295 898077425 776007842 578417145 836339419 475555796 537827408 90731502 184259516 642213878 747661072 783620572 997916552 654146934 981653090 617751772 741282784 441015433 461277961 158192709 845957246 934265735 817637087 902158875 628088933 654256609 616983197 4916809 328309325 559253664 814970860 626389442 193924981 195971760 97957837 200193977 949787196 327640302 873938931 824698133 601466990 949908095 331914353 972269736 771038837 310705307 699226593 718877918 417959914 544355442 671572731 876460168 12295514 352805270 604477776 925819403 841202247 386485096 12836437 452115214 729410946 990108374 416924893 153453796 903420580 884511958 582911326 544842521 925829530 299833529 804734374 311651547 584686848 314961709 288138702 914010563 746195124 969775557 748483049 647089015 92720363 920309874 132446728 837169548 724932003 975142617 858256808 691388277 595908002 967442956 322995808 573172509 641663706 177468460 102635245 131856027 170251801 35271259 58951338 664011213 146926109 963746847 216118709 955820543 347966478 334080108 842116942 908444840 347458683 813355046 605588241 562806198 783528333 786563771 263110829 786308111 201377338 492127512 370702728 529701014 249167471 609791999 793121289 502680168 31120714 116630874 443917878 596808621 640768237 988588141 884632858 767876703 217732706 664766877 940611295 412394811 385645637 607816450 339733098 181008557 56339177 986174205 138635958 268408977 737422380 685188824 399058629 666897855 224895049 982982893 879460515 74422470 439221083 71115168 623946114 519257311 774962907 629978822 1644621 687001972 59187383 681032354 659684436 2097753 227319644 898969780 78076843 824422011 228501135 274230791 142731024 174110064 681153394 498236556 271831075 782499342 495831225 799663071 310758897 704752029 263803693 787987241 963253668 164565932 750144096 825506272 63177912 640597711 573024746 847172 681015235 547966439 638746751 283799525 898561592 78106072 12183764 450428292 547850446 561154767 761776704 227560948 872086279 316941253 482933015 456035362 465680639 17348191 488731622 605755034 834961267 758051937 702911974 178615100 743292768 718181622 447300535 364244910 435213311 185669817 475584538 868326764 807031460 341230532 992911367 312528884 27418464 283453065 346135881 43573762 365683773 755125190 20038242 693458737 554281327 227858878 401881502 582131822 199867598 536217634 600236336 519444000 865312740 953944318 225898998 916801582 130097509 714431935 404808224 51825792 461712270 440234223 863350125 873332 701698078 692515395 964442359 483230456 888836038 577667472 903138816 282256464 984714360 256315200 766476737 822170131 26926680 139649264 246128499 291170644 543180452 411082515 894129152 12369358 845537562 439373217 771063487 403892457 632815558 154825770 645191453 184811511 86856047 249359802 895357156 25487404 348698184 121354302 837705534 772772577 849985209 557046795 550334858 526724241 993722255 994787414 414175592 312118494 534959281 346499635 936482921 215060557 874667805 39127285 727821561 888104051 739373906 765044615 114316990 756996987 614411791 285083567 29117868 879455674 216055465 30774588 608093652 401880450 912924443 706277696 677448203 224447781 466252259 72599334 965609970 777518436 766575532 416060883 496716476 63103739 225219655 74012052 865063840 936453516 281337643 576181758 898903409 190658950 39840865 286763370 680412929 9329151 829913936 502505624 3697775 1529596 582728847 780621733 230786548 220504714 853589510 57237786 265908847 215371075 86421897 309916664 492774400 922880859 372757272 837042789 606892796 812305848 55306632 175974037 28769146 395599299 228045240 899554126 120325889 459755507 436349939 483515961 28871529 760234336 343270900 327266206 524410554 535097781 902223309 659218009 759082048 711153194 823750789 730759727 834409307 108718458 375705892 328922611 525273157 827899788 433943705 900015525 937186151 653343187 180070981 213577429 660236316 192613435 575484225 335161276 241669105 815197311 426507057 570086996 457250305 637914014 132075424 334774306 49876660 146339625 237486325 314484556 595125258 209148705 443453613 434313698 523945827 538841087 100824200 5954496 252037544 810125572 763272937 673089174 583577856 929735745 853782672 651046864 645974570 814928302 655189184 500160276 68497085 581574273 655457029 673781581 208779667 170072550 741255236 808270177 37268432 154708502 623852286 862360549 682674513 130682282 147567432 164575804 831592064 136145324 458490638 26648935 628766996 939907730 92099043 180915107 331439337 87202579 53360344 244840936 539634310 955361096 5097385 141309886 847529904 981889649 528206078 318325210 853923384 443161144 344228409 506971045 530238917 903025988 990184050 504468391 815520875 337765168 195500476 501217878 150377361 641430914 937739516 184704589 64802521 937918831 182876891 486637569 316574694 541606959 218749136 834026258 883183160 816649642 12831250 180891546 362214083 335930166 284329974 692069119 152924658 159103128 589617163 514857709 699897440 463642405 304446392 90897701 541800601 468555313 982406603 890766756 980158511 539018471 175831640 954830404 439321953 11570979 237611165 486011666 797035070 894299170 903053789 157267765 512252815 729790642 651275829 178808015 302886 702791349 129862846 455486589 392116062 8454160 145800517 895898095 585867398 134693643 713588602 399448219 568435170 796017499 813078196 282258444 920607339 476645354 576586135 819541571 750231867 402742299 312644892 744489013 517087725 913493570 862353298 159520361 941960227 995234663 30884914 885489598 665057530 41710570 240380319 973485957 795591549 828202752 234412218 123105124 47838362 440350086 606417365 791198531 883953509 433229230 575175838 183168493 356986165 403564003 6295562 169750698 220171399 472254589 509007934 227956266 590080388 130395216 1623560 270119430 49320191 34613094 254942424 714623543 968506103 454992163 572396882 885796237 79807016 93975897 376865275 973320176 632738869 342941590 844263157 669934014 200811793 429680202 388612645 956962382 446993261 3829005 548256589 414715679 27804065 175577166 145137809 104517542 798961386 328438728 704080195 986504813 784716333 893426002 895702684 651351156 189643372 712887224 828133927 627576894 814240707 267711974 820221958 854040891 405636649 495039865 355852016 976199754 586696741 756218992 864102355 838355677 623662976 813723669 137774331 754048922 805879892 907256733 36644481 595932485 594670310 438337545 284702441 433117683 645714066 394201493 947246498 350071849 494495806 291547937 427263115 215173579 519530330 882407041 99446126 589068015 149262730 841252620 710557219 409196524 389397192 374102531 64477499 757673889 900269829 895367358 754011960 83966051 935016139 622953130 831625673 167125015 309055240 650148619 788720177 271124159 74651497 192443510 398826613 382014969 421340538 23024961 116706055 725878005 467743211 592061038 670729289 7791558 389913440 406133789 562077097 236415318 959692842 820544730 246296690 322074995 133512350 177580652 471360180 677836411 709128280 527196365 713081633 393953622 994668047 36344178 172115466 926917617 940777736 355507098 334771846 957399683 926258596 441079321 165771826 888939907 451333313 758662679 882506870 792435288 28053062 76457528 258316603 401849407 770415473 73360454 946403119 702724634 528610443 773312203 427545202 527381215 743775256 220407022 173862637 77659647 783713064 691828360 450167893 234465051 732974401 572659235 774944694 498631208 990017851 122279403 463386017 859524190 849020322 973869690 403370814 963786864 801015489 185646081 872469503 336989921 189613238 447553665 680905978 323970075 886947390 266645848 484765712 591542247 800065213 821341706 68396965 105249604 593715220 154090156 259501479 593696363 150841770 105483466 723012459 595836843 673371073 996465435 793625222 719496305 385625893 822970212 668184973 213982876 498457480 316768523 288532816 229656678 379970396 35876035 863370671 846077867 915177354 293572541 376944600 866444671 989971522 801437502 283971218 268297921 172422790 780654287 379934069 795453869 11018205 216018857 919780043 821265963 170551788 26767286 90821156 727472730 221695832 293891560 315002978 523120264 234544349 584253126 870294060 946759064 723105706 609551184 288129096 612193107 257563423 692992881 141507011 581630955 284249497 540460578 258253317 454172946 422894301 255140183 361436038 198339826 316653739 452814468 187236535 151676126 253452636 416314665 217524973 989496519 823790600 29067469 19211641 795175917 995983479 190967576 924611897 852640032 751333984 850432115 439978506 296089153 581832977 941847799 447671961 925457102 517046692 327817783 92565189 847191387 374261387 403083249 734935279 632798549 494100330 846776721 900003482 763081038 80256413 725571903 678695757 890766014 160180124 259934841 890459742 362103594 698102976 111979299 939412753 202021404 305856847 281413308 364936436 346105436 140017056 872572122 813382218 995916532 511764399 931604042 648075416 242183 154211745 310377834 976008555 859855568 35733646 277335182 625170130 668399742 699214025 586780977 841258550 737002096 485934417 173637533 451827345 898571738 171815097 632201336 474351735 707817917 901557406 354784710 991647810 91327943 635448508 395366205 695106029 416056180 391035090 312771376 999508878 78949090 32578059 773512351 346810446 800588669 450165783 423577457 885194036 274658691 374467654 289380356 408154210 806464536 837718135 153854288 292301208 820842756 589887404 955704459 871094749 183954097 669319856 125381384 214728557 152728073 837621730 983748185 726558456 777870154 261303115 131071666 93246346 697526832 681101954 731715340 562637334 599846235 503108320 387711197 838242377 518812318 418080442 583458882 897405401 267322592 239768458 381548572 788880771 701960655 993092065 219085765 967902446 277731355 105101075 798150413 986105523 245662543 466451405 310662253 123644300 463742287 526090012 270164160 483324522 491457984 375886334 654395272 31614707 385429938 380569250 76627091 397090900 376902767 121858648 260413389 190182477 949770135 71964753 53569462 643725796 356114496 499229277 446726089 311575766 32611742 212422684 491737241 738200233 613354378 75241677 604245052 598739878 714306126 908002796 856792819 315472975 661952551 967616360 320995176 935166 576065498 263139785 723635546 596558461 406065354 430359113 83847225 926788535 219227567 843367143 229705654 891384193 361423817 871494003 175488762 921607187 471266720 760161678 329790937 605719487 967070028 705068645 507178692 307586103 822522244 314856098 949868011 607610214 553263434 27889344 254426487 964854674 244586023 803112522 229996149 720368645 240669714 448426201 670578885 750874120 914313668 178287198 110391018 77930888 70566034 978575140 185529472 668999096 922971823 706083055 943312044 507697516 308797921 688512371 908112869 455074195 36682708 667504948 263111096 513950544 902306974 377457740 349821484 411186650 711821133 644660378 687042552 222914402 570909105 570628954 907679095 790522987 530614812 209340446 472606304 114807298 47335070 836446017 852038270 541653801 600278541 476866420 548474826 282053446 8491050 274110383 933487993 744152055 295796341 631542971 788068004 435114646 718906177 661718282 343383127 324521315 327020377 644843105 117423708 352702567 679728303 742425776 603827952 496980544 80513242 611332977 520824035 215559610 615357166 773014813 476469188 989261140 720713826 937143661 1203192 106292486 28378010 231564359 211781258 742683775 169323984 619414342 966329910 174356037 977650579 625054450 84067307 925461357 420000581 269918693 532313880 876683495 62384875 146771285 459848817 595899171 976908702 675282129 982751331 617547768 797483845 90846068 112611796 810429751 495144287 792532211 666586756 910854634 754673866 66670628 340574137 490460994 182190598 309644230 841749218 48640152 252272091 617212642 344610843 479249929 649477163 392044067 337935178 462177699 224559145 915583964 139520145 297401521 32892063 409560951 996664202 745568752 9338282 738766422 852189066 244562934 723456517 651223714 185018208 986456848 484166031 931816608 923569836 135508294 801751848 581242568 560757004 930602664 869696926 630828028 732536809 902080676 285581378 866207117 737624003 927587655 619884955 355553791 992687537 727037144 715431101 907184605 681100816 109490830 119886355 336123107 862587378 220185631 867133725 61466589 545255329 361395739 201231348 546195 510665891 978376144 878571355 278097648 502147943 458984654 163875911 855468412 376913511 787362792 412360914 852585071 901987614 931086688 663886807 272866257 517762651 384234175 939239480 604310564 221953517 7996165 10450989 665371875 465057438 279699139 48224316 17256405 795161219 564078644 236814634 908226011 98908297 626803334 988327235 59578161 918337327 419244055 833914249 800890599 715197767 382128143 546323280 330257444 880299432 96150729 740460539 193078624 283764065 696157724 135474302 553880090 736281649 981296422 587761301 182426329 985633873 246264055 199948808 265409972 339232320 760646522 800295923 253032858 219361452 713504239 815457861 984276170 326083326 51001415 990782027 715202760 414947763 192000806 364953862 373897331 231728029 651204299 1586213 224949810 52289223 933208256 528543830 274481792 523077510 422797602 653141382 957662872 202218568 42797327 784779560 758104777 236923556 97566792 173417529 514584598 569353817 229790647 435538471 326358911 957498365 395789865 207386208 115747269 292154371 873038061 575744957 698348966 299760106 9757522 461500445 876689040 75227535 408524723 460039803 430982417 979266189 990596633 780618149 593075721 605000378 610450509 6453081 937753845 785565407 734991618 102436136 680053144 365235488 447716400 801342760 127830236 849305214 436734202 944236499 313253912 507472530 7213329 348944118 546522773 909765767 802861368 229013817 145071375 97818883 701836944 896714741 931416232 574050168 580047675 528866697 845586189 238187138 475276941 81893778 201838385 744645909 232208306 122596324 551594859 874021994 575120972 438572331 290650780 477592219 782847114 559354520 744792185 60780241 242246449 88244985 649805862 394845100 634736297 352041779 430657912 161545391 352039030 212565080 152089828 202875634 969385797 31790424 668576802 269997619 705966725 405926352 553246904 783857328 108463496 739672557 84808607 601794155 341703773 13137730 538360984 89319086 730358868 440583887 767847051 477749683 435678514 963218571 891852455 446903796 602914440 942883161 714867158 246867922 733983657 790505837 812229540 645144251 12041707 120990004 990961340 346684506 94389169 986666509 889179249 195638845 775975008 871646006 202446515 132987752 324730242 651156959 812540541 805415917 377587215 486298248 917687465 197866141 450116995 570018206 220778856 615697029 410646326 136741096 272297964 817557749 725050945 532052361 985432225 258415059 384916546 637000118 267720369 745295028 238117182 863819629 187003226 213892738 84239776 727840673 19076894 39595515 423592918 361760772 205483468 956815214 852063697 890977566 423185084 714107999 943517590 805420144 904649907 248977627 505822258 551204852 833217051 947252343 75767423 750163068 322318814 405539981 166214008 911085909 74045895 325086332 96166954 70629920 117349461 396919786 855989059 443906782 817160637 459448377 351471570 587199023 172614739 927208186 450595369 752967038 221255811 613368761 476817390 884969350 508286730 869789279 5228236 648578575 839527424 200087505 905022020 443241650 77758270 429002980 823084485 548454245 258267823 914129751 984468465 248757369 738665049 410756339 304339525 77022962 303122938 742857455 951551346 949693386 101912881 507106329 447234590 959083423 649449390 595060693 680431058 208872056 576643775 575093761 950843723 276297578 78048946 751902901 60347088 941392286 628380855 918577392 495737870 281644437 365480815 13090171 544356137 382354562 665907052 393416365 341309604 965231828 518463781 249667137 273064598 691243498 299689502 119995999 218983155 954478342 398320496 144998742 77793433 932857685 362664767 459491517 112571862 703558845 238728753 911882615 445560172 791050531 230812898 885322450 247152921 150354809 285986992 668504260 562413742 486484167 71876505 680658615 395996833 907108027 358087567 500475772 929435245 83867763 785418222 603303499 835174106 174371426 209484198 365627372 921152187 762388296 921179259 212741455 283581105 356236701 181333935 208030907 280893925 305365685 171733691 536388117 355508851 192610468 832722283 259649100 575886570 930153696 487411466 948182672 878009853 797398554 646990725 706657210 785269483 684476898 45646642 489307114 289247811 767193946 951445 688767809 622190830 797417369 841254232 468928819 442196282 14110060 560616059 636181223 514435557 97284570 40159803 783099631 130746342 315529855 456571400 574365563 917556300 869252086 868412816 568829312 711095055 766370172 684583570 926734821 436061358 122647753 893344695 827142305 938658718 856499113 601001938 486379522 846737060 371208597 755992153 618715173 485751922 454130849 967956527 313176192 211301453 193149671 504481128 822838997 801391782 290142543 921824578 931691212 748782696 145600100 142892489 71290219 352668239 414256433 430933942 918021990 894590731 898521058 176415956 27281567 383591631 624985986 955300055 39185049 818392312 752625586 950913476 162421640 748229895 331896720 167993473 320769649 981078694 458024322 370466124 308622311 611369903 677058715 593889828 50124254 461813546 256623703 68282631 881478437 378857842 707620618 834149886 625962169 894562230 785650024 873443317 111248356 520602547 868511965 148891261 962278819 424201929 166940672 624417785 700864872 360386462 339711265 602053257 373404611 215665292 975462002 972970361 705955327 541365855 470662143 243525422 21955141 642592037 581253322 130394586 808273915 405520794 619241791 813212744 986344243 304219463 534002779 483267712 693597264 468042209 548485554 263200500 491221275 66865481 172317831 712205496 580770621 209614066 811064992 657357583 188910811 513691543 966888202 886784308 277946958 635744514 382590544 40432323 610262719 820240194 271264931 924294473 387702673 275175898 385487288 879234868 140385023 252071719 829432770 265382684 61192517 346930762 896184597 909265627 987482465 532276704 667184479 776678062 659596349 806989356 21394634 843661603 178231154 690893553 389600944 377609250 363125396 602165774 386144997 143182273 480108122 583362671 58417394 192878637 148893518 118739871 702171860 353176614 506040769 618520497 290981876 48041508 160348789 586459112 382814563 645704007 124182667 166691066 131901152 928219180 464199487 379048633 967988536 287174003 816649313 133145347 635026569 146406223 225040286 849671949 646935739 844624352 438819585 164386245 42367464 187761593 283262645 998619782 889097232 606719090 186332851 501264430 564025232 148280052 807569723 680185344 963392202 885571613 397591642 825042127 872981101 731073581 249756885 884980123 36753555 329131546 924772240 36345713 816801216 280357328 982677720 190722370 166838464 524437096 197540068 462983547 103859768 436578235 976881600 758371390 368106320 773269278 494428885 413706738 899680370 95573142 560846253 536218807 146418078 117945240 735037665 766745468 623936642 90189697 789653917 264730017 765138350 56244397 766975143 987088170 541359688 461615041 243939386 692473460 956034470 446511772 148248487 356216060 733354318 346212419 843861111 821565080 72859682 695184225 518241130 779617347 480818745 462566612 27304844 69275072 439747289 222280847 806292791 449291147 794994241 728263220 391150636 449620532 175901075 1338608 459862081 297614837 298112489 670351466 81137761 200387836 638020340 482860323 811635322 673616999 225328322 707105667 591661232 738354250 854062244 536214870 609435391 119508444 213525914 229956049 261871332 648776603 199916872 468682460 183524491 94783649 515745833 167179441 638983232 738642024 902669268 868230653 387215217 170481710 776949353 491133430 749104303 906708894 128552039 576802995 842744206 942270277 947660542 819565671 125757542 128932092 768033063 918862378 569132904 593390618 450959319 834458077 863453404 353348987 148461461 427860531 540081402 124036605 214755263 495928834 386459050 949494934 502288398 341022954 483365355 367035002 163688493 75962684 906519627 855419789 855602389 951320703 971610110 207181829 916732675 297570713 715059188 9643191 58209223 313852035 68110458 844822089 738006792 281621006 388948342 820056003 520453167 788229323 604614069 177009163 571718956 56999075 794066412 288838992 421130944 403562117 834075519 488840093 76754249 444051506 732958132 156335749 911052847 22374580 791392886 480125911 100855358 142822533 814875595 22153211 453156822 471894507 393329955 969538052 987248131 303000382 497759280 475519141 674545479 105675233 76360043 145581202 388558079 929253411 426087535 856437335 859586362 931218579 778671820 51063278 129871383 399971209 405012604 230947277 248685739 279730341 182622233 350405658 36867867 447508633 80080928 221023042 181480366 40062605 791232367 489977885 145497397 334071106 502365110 902008348 498616059 484145880 853651383 744430715 558648878 231747045 155013418 620305601 852895155 883963591 117010524 251006561 261964801 41414174 777167223 675161933 613959793 864049597 88975394 723375799 663552336 141944934 964042645 792998859 54074646 114317321 69826482 23179688 923148819 491801259 147781414 675573343 142325587 148045676 824969569 28239389 231021216 986838432 575790962 519514893 198106188 817652593 983207329 295484089 256966063 753325473 765996982 761176004 716160063 386788959 852944040 301492127 68037253 883830732 911803970 515591321 170261631 416066470 843629624 731304327 513672748 468334652 520859684 282007756 693318410 523584297 694072013 910593402 934522740 114574452 153364825 593433625 459467897 128322331 510896548 130571329 537200563 645362428 9243718 220446661 582631851 598208585 718724701 233935120 849861505 475495307 359405581 311706840 302895984 801577905 560300887 717558441 183605944 447657784 636662758 790663549 362256014 506058642 788798830 102336269 501268808 555987871 269100205 33556317 602157612 948505619 832616891 385535062 906317982 733890034 71295939 144230706 260550941 420716306 380929349 57427555 930306233 733889226 729061989 545586724 531960723 270104684 874666462 105891655 816858029 859204628 528365012 914182737 935479282 329100968 450476354 34799423 194028263 262415130 628576397 337410920 50383755 601449159 82497569 820721774 370478710 99236624 924384552 970009671 522098157 338583930 495484035 917107002 217141861 129767219 570300868 696367833 690949511 495191786 752041393 485585546 597617515 371814746 243883143 203655913 603242521 36477263 96389945 652315468 958117446 408118449 43958535 197968229 436645729 372420487 970128223 691276301 841159267 520366162 861079289 439801370 803994111 216011910 391819261 287430418 87913749 2787227 799720313 272358462 248715809 860434674 876131658 131972362 431966577 136485775 506052352 920010820 442001678 2907839 599638379 658882132 615684310 308166674 726194562 524304937 20731019 326500637 820791638 819794699 631181145 95071135 958994303 148076886 737527529 347547861 784968850 948415996 139138487 442747761 995660770 193266409 259921140 490769523 511893644 302583291 862508600 192251245 604278602 175915377 664883156 797199106 876374661 97140719 687823627 224940039 183097759 87868030 868195779 501431903 86063916 199246930 453433853 795731653 830445373 49762407 808572629 415231004 107932521 207935966 13870899 786731618 99055390 641698814 36998127 389616186 135933664 685833427 981217044 720273071 942323354 709124868 803962472 389943891 966736020 633653170 654907540 632313578 290384099 22287095 990759589 903662880 90973092 995786586 689809814 849697675 353942541 463246576 809532760 220835920 343973080 230035568 613266269 62437863 213648046 901203165 190538257 902339063 163692774 869302962 423269861 355310364 730637462 210458309 417869811 497957975 470934007 313210799 545126008 732260122 515604651 246086993 212038709 517791724 430525721 608184667 7232883 271445819 826504930 378712923 220711115 896492862 85219635 548811004 23219313 458838472 833875116 744977056 695075034 637563433 953170465 348955619 730982586 921397738 31227975 124563668 641096359 633642933 264505689 805273787 872820158 277935189 73587728 354277439 331887706 538183695 939625061 158606597 714442794 219881685 696741418 670381638 639658252 453614913 456425735 349792508 763870526 58288352 71632717 136170012 405341879 921755886 628193896 366007565 664726107 282899517 829357842 741450473 178510810 643391958 548927962 288686133 634341445 894472309 860700250 188280386 962073368 429947846 112552314 236003140 321122759 519300550 450106050 654445100 644744975 770412068 657815344 627319007 632470850 572827380 390378372 516222084 942116944 892415072 376005014 974323177 323896230 211039145 674607900 246795486 698217152 668517801 790817973 405373871 271181435 212783771 332119620 487537200 902667463 934788086 548158349 244543475 559974774 805499443 383720757 633290527 992736426 542139562 927617668 236113395 864457735 960410990 688876109 781736513 369089103 560415481 761047853 266085278 98053039 411173678 419865048 325153373 530399080 375282366 981699104 157483711 789361559 930437144 799120654 825813683 457221510 169584270 308362827 273315243 466742790 312105120 371670423 967327885 538877634 185138324 917336556 933007419 155790248 411955997 151261643 925857232 395572811 957996410 98892861 336339167 239516890 160430780 743350742 348913924 506961251 179054412 775345971 649016221 173793231 564752406 846265207 606179391 533693247 692670876 842535982 606341681 308905078 999450916 91616381 273743476 899199639 612624173 950611171 961592312 453241021 249295383 121891283 118977871 323833804 856424120 188906994 834929596 745152141 964082937 474251740 384645429 66438509 745856762 81219954 644266980 583426930 63978393 347305869 931672368 252229323 573780987 132551706 85479466 162329308 208532358 977613185 53290135 427072512 442764468 675567887 97052921 465732283 467937872 580964249 652826108 17275304 211497233 931399963 159237722 904238676 574297569 510687468 685679729 101716267 909650937 784169183 97990886 309001000 946035256 798643784 776852550 555023822 290656559 352718639 7699567 595195050 240007674 774180086 363005017 137157576 759606608 56219529 103949558 914473177 382929364 928532337 451103340 137010426 474612988 642442063 780452316 731406893 307764856 510171304 815213708 554786675 760968089 437985746 161550362 854738663 344223404 70984778 12676288 78701782 455599349 172712737 367364598 201652183 165535522 703522797 168892301 888897868 952335393 983651210 602772234 386361635 777454371 449870734 674799077 402932551 102442085 790091909 416142787 960700671 741500030 367147709 978817466 74725613 539305262 27015605 716553443 862948906 885052983 915183475 723892020 32487250 342507203 617466144 578206250 135724048 885408758 653611747 201099692 413693684 182206663 784303658 25486239 355461134 106891584 18101514 55844615 498624146 37755274 27405136 773329956 113360619 944127225 653663927 342491970 221313222 375163518 13236698 653340590 3314755 43457503 215522063 225406667 93595392 317888364 917355293 120215433 527263526 389011033 257427620 44905971 874712025 272465912 346749045 181984814 287893649 933717375 414578193 329121903 836102661 242425982 790319721 159508412 550434396 653603699 730764879 582039472 884594243 662762302 520201206 884437686 641560611 22340422 344202895 653626738 802516545 577601958 228414886 973253451 380939491 308456297 487854509 590317073 478552984 263467811 958940830 598493490 75664073 437524152 223476891 649433746 396329197 367966248 949635361 999334079 933493978 321981463 648548147 332115215 484296825 906869522 755071277 520504723 261250291 238982378 424334196 296315049 471658486 643332254 921145757 782137460 261149032 962205398 312785827 752210789 358146702 523887630 277947328 238517351 287356498 544285491 802721965 838834839 895671410 345168951 1346600 62082752 673231878 367334060 552959903 284601406 596616718 111438965 19338557 971243317 606060449 227780349 303208043 192185499 86380746 279706695 736821295 576689705 649400551 15688180 977601412 391553067 426534927 193837194 933841716 641216270 500884191 859015996 880837777 659264284 864072949 83967528 4641715 692566720 72753124 416986765 587205220 110641864 202776625 984003090 62805543 741177599 489562562 674747849 221782823 733543965 687269066 964667113 523752871 657246917 228356817 389088938 90654233 965842559 325462079 532119029 614154474 615749843 126552652 647021860 332119465 891665809 786209835 240860639 612958370 545423307 606447215 698745453 621940809 345161605 749283372 557174410 152651260 337600886 570861010 747106714 736975397 507349008 338951336 792648416 567103706 127223559 994352439 633452114 830686065 541026741 406722812 138376598 32934988 542915172 375534077 113335102 110761014 547100009 11903062 842600601 560188224 450651772 881853615 308643882 821475090 232824245 528043078 507830423 924827695 909334863 266724328 623001912 266679425 217170905 368146705 451027505 698830290 539289212 154414248 352029438 134898926 150668579 310014138 651487689 694700624 59739144 290046948 725795367 41276115 459194102 376700320 982190996 604906552 880818131 532486309 506211284 766265663 840725564 102745551 814237552 731431454 249871323 267171952 571796850 286488412 367927044 590497002 6137589 731499274 558695808 794334905 434737510 519371227 922846800 672429962 46496360 993882929 706387915 676863160 869773923 868477810 194045910 559807324 844462906 874765207 712414884 955525085 399876418 911967408 447145974 326170054 827981927 638205730 903500174 394783879 923253708 579703381 481807248 327318655 499651301 883763007 316634295 614171552 946010374 329991190 820158226 737660153 496016970 373682629 545585950 739689623 14592605 398826215 638590086 324595986 242705563 39413507 432500137 199531093 879386839 113555461 744482448 519494012 853930604 496681438 614153627 327723034 709111676 904312003 853948981 10011772 169471038 137681290 368989051 154044916 706506890 474948112 943927974 752876466 426417787 710632723 190288948 256316318 122845023 661239734 126142958 801141320 55581188 636938595 468217698 278116548 608150506 335661870 946816920 761377716 107561071 195948239 258759849 989836029 79273631 429088374 203120112 221356735 130994230 945020491 489841343 392024697 616643718 346150431 476835103 380569043 910554253 659389379 902186104 158941482 45567053 400148307 686944603 569707325 669233501 233459876 221173061 982057430 188868432 197733253 385120899 120646401 177384886 301130780 136250133 464032419 186571933 874064086 801185555 607511734 205451566 553939747 336198140 204158368 283876401 606151999 579203154 713621294 845321332 907633397 934585640 826386961 102775642 405284544 16072463 874629573 842305987 798608409 944504315 203023494 495191228 477039731 856203441 302478430 435197166 914759126 746352178 883032727 249790135 104485064 3966116 161738308 368716579 417999776 302470041 483133038 902242960 10996165 83232223 50925768 222043614 298973917 800246934 85374108 57189390 683233528 548586194 819098442 259748158 563524057 583257280 276600067 182246768 323549481 928758720 888784387 13060159 372199917 124103116 493167840 714707826 179673316 514076880 412312625 919146362 993252043 26205853 375116730 805826886 353205923 211498129 738882826 173076436 968189407 361369356 5123718 781879988 304879678 30638967 782671161 632297674 662799283 527554001 316985061 722188576 869606220 786160727 517344805 300503144 71281388 392838005 964252167 997523081 907783822 427062652 540474400 18811557 50416344 520709295 218987183 257727654 414820700 615733369 682268729 569738801 295877148 824491442 426048701 194498716 483134027 978055082 842268508 597487227 193661135 671656100 724712041 190479345 947601416 944012357 286579407 871094242 92228077 346624405 976627073 60779419 787393739 928812122 642910316 14783892 330062250 5882306 824219107 228810621 801813875 253477800 148555147 167333339 515384451 582354377 930299792 419808717 86805188 103239607 402644604 887299550 114113291 410687113 448248776 627362103 402037193 484954399 106436479 258366856 976879272 686729649 288286828 187762919 572713152 727742020 955043074 257908837 236218992 661120485 44314116 372777598 428836028 719313930 464021118 992841101 338963946 271860302 127597840 381549782 808701202 84021089 151496768 42235695 69716206 825841732 706565561 862849230 973207152 832012435 547970731 443192295 716136765 303636088 888365804 234519650 461010625 355591498 12233392 615949859 99860866 236370217 239882136 677254752 528576040 999428485 404536777 144457036 540850394 676523618 308069952 681831802 552003968 42495697 809969126 843265356 825217099 541671643 865170934 215624037 358159222 29692954 812083611 324598701 191259421 270037000 202991811 818380599 914680641 956174807 627865075 246751013 424743004 132193499 510840383 282181945 859591594 880153537 432666052 463127578 72810594 161583417 723175593 70879024 640340762 956420607 619159059 856780282 677753350 29393722 36774644 429320632 337577347 30101720 446562593 476807218 7836005 351793433 727219683 746074443 179459384 921690732 317229728 607310267 275289108 448245483 743013137 995266193 372279668 56170980 549997832 958814203 467228562 606199006 647464840 299655439 998276303 612143530 722256502 727293827 956031667 788278577 851043981 100395978 124718191 575691466 281488482 869873648 655880703 91452365 2787399 840468187 713571268 378846305 50479552 943677352 893680326 685047599 837558022 169682413 321991422 121151670 25022577 144114539 954408995 956318546 234409162 365760907 450728318 551129713 430394619 546519548 607715180 598134234 767001715 425040961 117849351 248656899 577151012 292630430 28574689 722077951 918284568 64827546 550078114 2735222 765548788 370951968 161119293 32520782 152012067 760773871 425924801 654879043 732021244 56261390 171204648 945333984 386761189 384348394 390151112 883423411 411341421 92316387 990901524 794219203 811852258 507495692 21987245 884682580 925031687 132135286 226445646 312801300 93240930 301806117 475503592 620100949 917456968 951054615 731641225 768506284 492992019 658849342 595155599 690773539 957729893 811218689 37468968 805750786 596274168 669038966 291947671 345046127 590316713 204643377 571619884 897035478 707153828 84920911 137127460 379877097 420203481 457163356 967582971 758097032 578273267 842456301 191726560 534387691 561533941 557799250 146437115 177831810 211976025 968916980 600704456 804978177 115668595 135775118 526145275 944986674 898336444 978774518 419067784 207855351 737599171 389063885 131615418 300138885 164792929 90108849 463757090 734674341 802267982 927322674 68459212 235508611 850316938 879100394 533169503 922920291 661002017 966782952 946130514 955197769 262164957 188542763 875831568 607806270 898374530 510268029 671820486 858468311 314472247 439328371 730618319 744177241 811089896 135429813 939473652 125974142 886951003 36321080 826989267 236172 856577559 10129653 39358460 953705145 151287258 558561945 973076900 831460926 42991096 802961693 405987137 610038530 920948674 617772727 618248742 530000696 948919421 157802637 82733632 553833669 316298623 192529370 424985968 837187986 859958288 153046442 960816835 103789904 129486455 89884720 979426646 982408961 239059673 952884969 478597503 352258258 787759433 644283761 910377179 92737233 597777143 385835617 594734191 207581301 631787542 475221898 800132156 17838683 305675232 519097052 845166597 52213746 695067957 613439695 292071786 528289094 229679673 58571232 397267984 587007461 631217563 402125667 878460019 882591083 543648383 867359652 704349089 622375446 591805902 351131178 129913105 840224606 666649842 116948606 303989094 633180284 183000316 192743690 445262873 498466491 296564310 440153305 837917609 429810356 374604916 977554841 985859552 412046292 731691905 585586302 55737136 536501938 167820219 744095095 707553289 473975295 571307068 227221692 522434897 517709466 89009523 169144733 398542049 216446536 411814995 725044949 76187545 385909685 417130669 402807741 436859710 552678473 220332124 420531423 238021948 323551379 171933204 944880980 687327755 439657802 100103635 994772245 561129827 175622314 832035562 94682395 442443064 474247044 26536903 982201330 55375864 651167144 721373601 272226130 983912353 553882385 54480987 86171247 596309410 665172730 807500469 29984581 190064808 812949000 313850840 395044948 263902319 725791425 230986351 224797407 171923141 638662979 574883663 929907427 432440622 991425545 523297926 992708164 424142732 146776754 462477914 862531939 658684474 680296703 42866647 459392918 947290678 526453161 518315287 971447414 748920226 500699263 723907406 699861015 932466255 18907021 227749439 192018459 703716704 424525302 401162331 980272651 46516920 82258406 51912112 389523632 951032857 272483445 963775147 440312246 522815411 735603618 563475452 895656671 446713938 874934222 764154505 547829913 923307346 552192079 257598953 673019635 368592397 53445087 769041586 362262314 29174036 656259167 440345859 923809889 386406421 48536228 645068526 728463882 493661313 760368536 770840104 744234152 545275464 994131179 732039832 347599842 244370763 488924258 632491291 816904057 287872115 925231011 239187927 611736471 376129622 256384283 150295046 448490085 416724838 274598413 32533441 459239402 652922290 816762138 830461054 42355602 195493659 211830605 681968049 771867282 27134957 733886526 682041365 432592032 924431289 836321355 426386814 329479915 485051939 371169640 861301893 163092800 954048545 766822914 394159662 66812253 7537717 153743557 853409579 864764748 401942454 722095342 226946326 94755252 616774902 639919005 242122336 161706907 815870518 47673228 929059142 639758515 674235193 550564568 297577909 238447248 301786238 301449218 278937200 996999806 757130906 261858491 5849603 275428876 312981166 539390890 698010735 642183767 91560121 996618641 399066530 708039095 345423095 36270357 636758337 118199414 922747062 321634208 658826979 360456173 637627560 283294055 431905410 852713978 567892537 73423093 758037556 962247937 51664625 991659948 176973209 726204796 391500358 18681820 56997894 214677197 970824028 495262920 453021181 519182130 217301241 777716182 210674907 430429282 659404379 380971399 732654879 12031717 690497472 887116637 341251785 304662673 438390578 222744936 347261687 198618152 452508916 860156519 405629690 551437632 306786693 188098176 893081777 849310001 742343998 366853891 982657574 272474649 377568895 586734250 571970682 440278502 593874753 417096096 550077034 210347564 675943640 315550260 44791930 34659236 385130901 44502918 970436572 398734245 131108640 619395106 389018083 481321320 149387110 575833560 792983387 358587832 54157634 156183247 367552385 921366077 831458641 849874365 785046716 435237881 494551199 747274137 399739858 925838447 134797378 603592617 820510353 696141111 528746472 741219291 48182117 805498049 970640156 540789621 791494438 339614797 365302733 174848328 740043462 790064658 428307064 75806532 509085700 133229808 377191405 956471798 929262918 727830098 409029818 333363896 163624919 557744790 203961897 565008096 120370187 874025644 387471500 315415642 982345543 384274444 720111423 134229294 346397189 560849202 617795100 239040076 253867930 890255888 422513902 233376832 335216535 591481315 669269370 813224138 942892820 787242630 125717564 140747548 984774536 940206373 24437790 995727665 405299051 851359742 990622592 518893912 399036129 900853920 842225126 226182418 958945365 838456298 293082465 797404024 679197851 456422014 807195083 269448712 619034502 478892045 570653178 736794979 16736953 477990058 889852436 141218593 38429460 28817930 159766802 898202389 343393892 61572069 483279056 717060349 673368976 51336125 173947790 558445176 374346796 923998707 541980752 155660300 180420614 812414988 382060993 860807444 501997968 237543306 926628069 354910380 937007716 967305636 424972941 254925788 833854854 402370880 43858820 360671572 51413598 910211305 47092740 977095717 372824770 7160088 28501652 235007916 21453887 45255167 965709108 502471079 999707411 134679172 698947816 815559391 92527178 144088747 155315424 455653597 538504686 286657736 610391707 228935682 421344973 35071272 332252723 377436842 230207872 142778227 678702659 15195105 639240644 23395472 716866637 200955689 215734044 121367936 138415425 958711966 955450283 439324801 890732759 746707754 785117598 832882883 718012885 966307152 931496591 190503876 920646012 848796122 384607173 93180170 827737034 346869619 338707466 47913752 401171720 967152737 43963865 746699048 881663176 191879679 309296339 601031690 335398026 167609211 938704754 964853122 555572977 479929851 200112264 491416857 196637879 42027220 422989432 439464382 633564582 302424503 789257166 792876442 13300792 533068843 649779026 65144073 152883898 621385353 158268656 490395801 921522189 127278421 476339895 672716807 210294673 150262967 835599430 227671857 229617334 234152512 315678261 263033765 586217571 482028001 786652563 557721910 973360613 325419546 48985996 293019393 688124701 984450221 965086899 557901237 457910936 827233536 433355339 465556050 337948746 754214834 857337119 394728179 271282666 642279354 659552659 947144950 782741345 144209413 685040936 652986779 167949928 746870978 545504680 922940467 303423526 724348668 284059691 715646362 761482138 780077366 87838271 496747415 230006848 843664684 422697263 402979714 360648910 351441952 802846933 879153245 227677545 588987838 277331017 575015221 905678197 890048102 120207468 674196898 336120655 19348861 57495377 381966581 187317607 51206702 234492899 136730741 160287077 628715847 374577495 34869073 807314861 422252755 356933677 494365132 415492483 271139169 12470716 719636392 523673803 425419565 416426595 845893567 414499547 708475017 53652449 13655614 103598128 965739839 443895801 470098483 786742704 503998951 105268741 642807660 615299078 19091720 139688587 672568312 279907876 875164587 557428145 821446413 676692363 110608699 73640669 929125885 256941700 834145902 707586116 514377495 136863624 920731627 751484802 620146379 844735800 962030258 570929443 15269847 985515680 840665669 150562430 496462055 270580425 843300163 44965455 26181640 945137471 421512664 303698724 141562873 386999683 83269771 889370665 137093564 827833630 691370062 864745696 208121150 633070370 177335686 629526415 242609672 347053389 995838665 705254966 990096378 391766358 504240359 954788578 187552511 943083637 310553897 322223877 632420480 331000652 947673942 238765020 610333387 355235385 584873627 521051308 864262440 663552693 350106175 732035941 117531736 33629851 71195721 867635184 321219039 902827396 501571849 270129690 636833159 934916196 234275580 357265855 19771416 245207228 639438586 306407808 742738604 269228882 883131434 285737688 29920409 373562648 763597167 724025396 709099086 868416611 7001645 984288880 603644120 25653822 962929165 2287890 295950621 964130016 164841965 507712001 801427302 323200109 499033829 537419940 957968633 513654414 319103892 826501701 364489406 707294311 157847190 931496025 310664614 932576324 210019386 309899559 408237838 691764513 329405992 20423251 286152058 945935681 455424605 630963940 186340281 883768149 344046278 620178635 390793645 737439196 297921056 614411051 923174938 699629225 667512085 22451927 581462854 752628855 761237781 934999044 229493382 717326909 420380430 360021915 712298411 753640283 736591180 195665599 597421767 136329671 900180116 616752912 844306030 221077983 661496654 836775368 905191565 380960351 506680504 649913095 253820449 340916749 577415609 35792077 408853862 359157875 497397607 565930931 939690792 787300199 559312388 642838375 34480369 961875469 804131599 181175329 972841252 510550314 716000897 608917223 595628879 802833673 905202471 640806573 616974538 719326433 986920126 215086702 268565943 512414409 991788244 895091914 993815949 84850357 51130248 791025073 563559495 187402238 981773902 938514441 975268887 298535381 878209868 717017809 303729601 432938469 853463022 243653277 934610069 266985692 530308269 126541186 877511066 398632791 922324238 189678711 232461247 62823470 892401635 973863082 426453308 530847617 302032645 526184291 72181322 81401581 429713041 763324732 838614391 385351370 621628610 295454950 383045241 142230385 411046530 901560986 349769041 838810045 169479428 423701161 734290763 453537233 413083483 925756291 597925256 339351041 902702347 609517688 956966823 819080748 40678663 456457328 307812137 135119322 762044275 478984103 864529307 78330435 880998600 490667400 101539451 960079702 797610866 95134123 134525946 46022738 978529378 47517337 381173447 225143580 558274456 237102704 644061584 348203093 794876243 749668052 600848837 479013202 631476846 988073143 605599899 39935929 428537664 483551999 172628701 763758842 358744460 906332121 886707027 50780048 837888394 644392537 627977490 284183185 231058899 879101980 493158947 703438199 507937583 330149277 510278198 14974396 743785313 422963670 862762997 260184788 60940056 590480899 817186364 733626747 463864905 668496589 637647874 170624034 989218400 995169405 120745296 34414422 256872752 65527016 771443700 483526174 342429745 978181937 419655491 750240957 482774892 539326405 667808032 86274207 936917132 13003205 946401854 156569506 875393918 742988057 767976503 96959457 79812635 314765001 533224645 590093617 245826450 641203801 853701483 176223056 720273641 564745677 413316633 932814625 821865867 360588372 477511981 681509248 893615187 124961399 490223799 672083019 24677591 285352344 945119738 126610117 235342725 600866110 843753665 422759207 307706561 275457755 829608374 752836109 226043328 58723488 984042472 907762409 569820307 509924366 238181315 912089271 747675212 998745648 55543824 600993625 501044155 72165053 670214357 126768760 335694046 197350328 647062491 383998687 993083891 183568848 277585942 665068022 800176916 675309626 767422123 257919767 728141108 614313050 635690891 134999704 256823843 827660461 286589511 569550773 454882869 962234942 578089337 882702750 251714671 424561291 643075452 306416973 296259755 419422139 619663620 187657965 882920044 247797663 781095015 174332021 860537674 89916631 257329664 259404033 900207612 873112907 41132235 668903671 269183051 708842761 861663100 708864364 68487553 350126106 914456093 964159237 699147772 221032778 13488158 366546658 343355038 442709969 362797148 735064985 405208845 578138991 941023579 642233479 138124201 255827360 125149824 519973920 141027953 257711684 241100290 15676923 670526815 446521508 631762835 614981759 93423418 932940149 311768633 855739677 252603353 882229721 669844739 85664767 512576669 833007749 201403539 911845060 384829614 363912656 96807183 279847299 367434467 672747844 514023491 937491449 677941190 392712484 133188016 166817204 688393044 232515908 298165026 488301449 919982073 446226564 451641611 672201331 404566722 869530897 711141870 834451046 865407424 803305515 271984159 260715360 583494474 231986905 956381553 321466675 972985760 733701896 752017312 653329732 592183763 450429800 453307836 433569214 995005745 699793263 357317201 83152937 320168480 537249182 583643846 873951641 498904698 179524443 304076645 233041597 861799012 137459803 823352715 659486837 562136499 14751811 895628409 270528286 680574588 962700838 711064363 64996206 380383531 612015629 736909231 198793666 42393172 903034229 758696453 895441795 328902988 878431336 121025101 399253177 566172137 528530785 529842257 226475628 411242955 972891324 72554846 478694895 708633522 325179558 78533460 783872664 623915505 510331561 633140345 317580445 705650570 3882923 253168881 514449810 708969265 128458481 360629452 993432819 78304603 89232120 428892111 201741514 14127044 170174474 681476441 842631356 110532016 920094067 333515879 197315509 237905418 294605967 906109926 235504224 760643924 476880245 233324386 995280458 781389430 478024497 373296877 945985682 224615490 47447010 879534060 27350577 133653980 901261275 459672659 152134133 50851268 264020168 601472859 756634593 381247087 829430856 12680203 1902724 824081744 757923063 290824361 238145958 550727577 860920861 162226256 217460991 113930994 283439979 27358156 317159921 733410788 596652824 453442398 552500138 844476704 656036519 908574202 236737421 750345485 834522427 557061843 255024396 43546787 567315794 40722939 191993162 577054327 212239008 750236679 37139650 818077805 254823052 565288721 69434178 949698628 456383758 598022618 253707153 140261974 297193321 678380284 565761899 654993960 947045657 569100163 464192408 318094286 316168067 610469604 506461092 339892220 694702899 563448692 873449423 703744266 471698367 306037295 381424567 889538324 778244102 155771049 892052748 284418851 706003237 223896067 969108509 278870508 994771679 857162942 432282314 516587880 966344170 816836620 674851994 690594931 705643246 325215999 771723842 397705281 888838885 342606578 698317514 182632733 499981374 864244284 220620256 589674559 768042187 999270177 715779263 351808682 963985214 51293453 108202244 331479424 54690983 788496560 743865217 218115651 530717051 554079091 19333779 891604173 320370239 763333764 499782503 929985018 997620137 398224131 805456339 178264613 63692373 559949085 266775802 710265261 257580981 37280423 227016897 895140625 478695213 785090715 544511581 247472302 373061150 519563202 822165641 592382527 429529794 28726495 598199688 232246411 483986605 861120452 886115512 414135948 546350552 107844306 691216799 508711046 273933159 75937962 881741212 314224238 853199255 129780658 713194875 998061286 841823374 483253573 637933925 105086942 54411065 545071777 620604925 135097765 107264894 269732347 478123484 21505404 559012874 896507470 268483929 412486694 478200571 477965705 759491248 983208531 712643925 919591966 781663759 983663606 873363518 372365766 292595614 336578004 972302261 130371495 343465605 940285624 801627984 689252938 82256741 844583993 392495912 114330698 281558397 30742399 997791790 45517114 767390050 740978870 299957180 303457005 351287303 406665663 932825044 475084639 583230514 119451083 117022075 77257264 140915972 201360129 854658717 771889684 913449558 75079270 282762092 112637635 177787861 430467494 668171872 341103337 73438269 909486849 726517752 86843733 41276891 600638650 283104999 111904684 476344576 38326529 908259903 886123538 616886400 774168875 237875148 295261299 288714296 298148072 451892253 530289902 155897700 131769205 427059821 57619945 924429131 700359602 929971628 147170702 969291695 883143856 246821696 315382682 741756598 380089330 396000762 600869758 26288773 131007748 428914239 981418726 369649623 232220565 790275590 105982061 136439858 559706270 922823165 894212896 278843941 843481203 787836378 146669150 929761739 362266715 788120094 351370849 137822088 834193000 288218238 118244001 509981645 623501624 724555153 108061453 124061783 61104326 760196253 115009877 862964297 330754440 695741711 535504543 759514701 231088114 207807779 217050733 741292863 783976636 450359609 904615470 504031165 178904524 985077143 489485052 519465224 116538170 663558960 510940710 112564085 820067479 911500161 142985886 631290195 315775360 750035494 769511993 700588884 708818688 662568787 391051702 204672328 119014308 120124872 509809414 794755243 514244440 915986024 107773466 555618844 468797131 177484907 559655841 859493925 860626377 723750046 971520967 423238879 130849987 361838181 583867843 566464403 999590719 429993890 422236710 216927446 622706701 321512987 498624103 226912000 369352202 707827530 246513042 110801365 472993118 250834372 579583707 55704827 917028978 14539805 24714249 556635209 899080791 137347329 682011643 73727595 508748558 37796836 765491439 116503160 992451420 375115883 278879410 606299594 15326017 178321953 465538608 522864676 505820413 396105198 932822356 224529527 169740027 508632125 606208054 946415604 883815793 607887975 713270409 263182405 982496857 860041451 994368208 646939778 515983582 738357754 685642617 317922766 219756177 182446263 735720594 621773153 894267604 621526569 934600509 168598758 735390862 230949594 468585205 964408757 524866644 503239218 413595542 931078503 850021914 619016561 872647185 393230201 746193614 737670933 371734744 755513366 494767761 502689814 372210845 794210017 89305330 207562889 273735991 296285383 156102881 591667147 137945643 511612008 976420359 776828669 574149814 599379933 577075217 758680525 552235551 25566903 729432769 47227383 683418739 802842733 689583293 311760774 129265275 510787627 846701632 771239335 66307062 503377518 258702764 991156801 627989522 778275664 955337083 424341184 348454142 87774079 839528316 706709367 764535511 640154398 555935938 304692690 618394347 258420063 391612970 983820836 561343728 863501382 864845300 541048415 624006435 628010994 880638099 921889403 986135562 382364674 779489846 325598933 801123012 582579895 349108170 892483176 226753793 395197202 440537086 445600197 426681027 954037895 876351624 581403231 143635087 595362375 953559187 905355745 630242728 664004226 540078633 314358638 745645958 592319362 181972922 216664371 233030054 796203578 864635096 979202685 759385391 475344442 631027882 630657169 877588666 916259403 958155036 679950980 396316053 764868183 820517069 542886644 705925422 728339325 408319681 790726058 731486535 316474564 321352338 87599781 330166525 395073213 586487411 434368006 741871683 395109435 373929634 673624059 777545838 999960776 657834093 387665342 313243824 939990180 499960270 174819673 835171992 602342415 446372910 751624847 325291835 184613500 991151482 236783475 175413004 480677909 197669754 883108041 801548835 765198502 490449597 135053926 684701276 220278010 468238548 341301362 70723750 860016322 292818799 889708681 892275566 985181077 540537979 365202537 314910989 393866738 695963451 351122473 747889362 286966532 646260931 444266280 545691395 462774548 969830336 839399381 508393198 749310702 6675926 727470127 367223125 478156894 723818009 634572993 993391057 361196074 968108285 500682971 142368168 93633159 74273755 201814200 559531731 318281662 740428428 414204591 477941937 930631719 681660786 103594066 837819459 248641877 452673115 183480707 952265355 490475100 49270367 248331664 133298696 974982688 239731018 229039787 902154939 57515219 424902709 449440726 690919667 823969684 960036829 532711302 795252019 418999139 140529966 520388279 169601506 746241052 659442428 26656108 133062104 542799500 221473861 787496060 397117121 657221896 731592444 495280006 218436969 670006035 20358104 24238055 454884114 73211184 539677755 890772498 69050655 810528138 963365326 927145568 173625458 762426934 523580879 98590834 571716234 753295017 425089722 569126344 632755362 266349775 960355447 623226905 244823243 779674393 303102272 894299466 3282662 52457698 869121331 604281919 774511788 739269379 879522111 858539367 41731724 802009474 359779477 481876676 644164359 38176811 445567344 569249128 357556290 755172327 72319704 120384966 447592511 999905542 781174607 854916925 925147015 980078309 150124323 450955399 772812223 495822714 268871164 582694778 383400886 892130165 340598244 199271526 874543130 711681742 559031598 825211938 898917350 110009241 668717637 442447118 101984818 408986439 697869229 116080465 285416573 735264278 816254428 429696085 916455042 939627242 877060118 432390193 776230488 918063999 216177444 875342593 942231931 241764 545005881 210380703 104304557 90294434 867712827 979039544 60492113 454887037 947773112 74663770 320864828 841985843 92141466 912483922 806366458 6957495 591503105 651766364 10530334 728604649 164621802 832092335 498165305 269003150 634669088 459740908 412042199 94580394 25455180 747413667 796935114 446795862 78812632 590415724 443849003 110803617 154656913 639687257 159128787 376613731 11061948 983974338 178249183 96064898 872290291 792326502 876189602 686943775 636668424 959167036 196626697 814327731 773645398 81897920 809817375 199108296 216904250 52937619 364317007 361445436 399950674 80697773 347670804 56057332 152972745 376694711 525545746 713235762 201016570 393303162 546240090 693409835 930805113 494085799 354689570 68887574 254134066 277523696 826444382 365978355 276037908 952057800 483702874 271548663 623630106 832862610 166161863 753766275 474045710 827225990 886603443 334125290 132646935 743340208 929864124 880579043 836253152 224731010 804809745 278824593 275654501 728918514 586422551 946647911 722376911 251518066 331480175 494053280 591526771 265536635 477254195 808354029 520647668 728675429 901428388 169948463 425975037 682190480 207409648 261226119 664523811 416025184 400313854 22045497 72219529 312438151 544769948 198103598 30065915 459262 76777600 277574131 365180279 178370989 116476418 771909987 61142128 183081872 264207531 712981339 331072682 881341388 776918898 43015903 135077845 685467087 953739236 859385662 193073636 310702630 509301212 872324659 509075502 541154871 220761944 194411934 403413572 623424053 815839531 359399684 529976924 232296853 409964126 44505185 365678592 480779383 597013147 854422167 745451860 480886910 204857504 184123675 770857694 106099632 107949749 670809455 73281349 111708076 142535087 576457683 735899640 662558163 694095478 853494931 951718707 539322071 269586265 593939049 455015018 236502546 775359892 938698520 90313182 153861819 613702601 30322983 906308399 224835161 279445650 296620940 95121835 921354642 395988522 582559581 550441514 40454863 71917951 361949820 983762152 727511321 483323710 369911878 964765289 189626157 684873800 218774690 877727509 675166650 730108106 894874136 786317979 661231750 41855807 169736666 135852307 735268321 168172728 57830411 476194538 452284887 156076059 603166632 225110773 76749973 842091544 57704473 541046641 720609797 487253795 326721115 203097328 879534568 85948598 820036396 206372117 403755659 227082669 748974766 412152482 184669380 633878852 395707720 43281394 359095960 296454349 178110117 704936706 783719734 432765139 528695498 83682654 205325713 770897240 115843516 175697215 186237979 257344816 525444004 549669792 740265524 895875973 748010137 321929970 81550472 351110203 934731471 860062999 916217339 255106062 193111711 352767459 962774283 246759550 775317112 951329255 848616713 407541278 785199510 158438722 738504993 409610559 167517965 529275163 220024344 509974137 295211426 304015568 48289134 471026214 827517648 888519461 717507892 955326789 511741668 204292819 529809075 888327750 915627 890892067 4612319 90267337 617979582 892620553 495873364 248275093 873654043 185293561 897658540 487438425 82976975 439558458 649651502 963226190 795021929 523636507 809412272 616985806 610059658 650359564 82193536 956630772 824211274 207758407 404941675 885865513 510822045 822290271 994757277 178918354 603406298 464792994 702796696 379370937 699473064 45668051 799819280 822067722 19280870 96316120 725417424 189629003 13019009 578248450 853601673 716558858 122710862 648541300 957700882 311553950 217738006 489465937 436329676 615879360 488040453 123477316 303807432 773416643 276879300 170820697 132236477 669167235 517109866 324951277 921457648 563523993 871848729 115977987 303544785 131993711 398753289 364902769 935026499 692758900 653434122 213432473 641874684 648948567 62308143 951460893 518615607 971318523 783645043 983328416 487279009 283400520 436423124 520812061 188808726 847467384 966158792 349769780 251580753 625085404 931235029 578887603 55264898 749949126 570486688 176422532 422148191 171833977 384130166 369123316 616306717 655417364 361547131 996866784 771954228 771725223 885210146 628311043 782823089 797845338 828487078 163362993 341570818 716154781 823061269 622747198 658029042 886249388 577743019 348135428 247152207 924511561 465631068 330508114 845558523 621634764 379526667 908304523 117918584 706437850 691527184 377515319 834279145 822913646 245737340 663638840 118428078 348306610 794922727 168458598 137505928 727367937 158952520 545322124 616203536 411091258 47902139 130005890 695234816 245080549 383288916 57220295 362574993 203722153 879998887 620715264 928672198 746222557 874467765 420968028 583036592 244256117 809410011 145027146 866589582 89336038 912965015 622607128 297123998 545328194 541662155 616266948 46056819 492832521 597960541 740799970 248068470 286841162 434174690 894417476 767441120 19980553 36485996 170421038 286349026 48759844 831298035 441662702 369948246 9794018 159829070 520134048 559933451 447898913 617711150 676681306 885086303 456440431 742387078 6811319 883753535 57471342 877012508 860101150 706912477 467849371 980227646 22307990 721961113 970745404 439112210 392275425 152384757 562276005 368082450 165989468 758358278 385865789 924475855 362276871 452078541 769751826 786313233 705316704 837547840 386984980 603042947 504742235 622055865 737145674 667016416 420526770 434441443 658377174 9532049 608022722 280483312 940474840 283524168 883068141 869573384 308876291 359796738 707216201 625795874 775436518 467542252 593600906 485023 591834643 332911267 419120536 706608464 150983384 369043187 382541357 170077400 777972704 220607613 201450478 44271644 417033801 188734123 576396361 61743534 800998276 139091832 109526343 23543770 689897121 986673917 528023685 803241494 708600453 950689012 59961538 979400529 546335081 214681675 991602545 710668365 198187886 156647970 431626133 732388687 478446335 823523296 355715998 814679074 327807810 382094581 260681072 404648903 744787119 989598288 692723316 701282880 56438173 353326601 96879534 110262768 486945119 814651042 32541910 53320510 378781237 396726999 661425414 135604621 775733652 259211102 109653969 40641748 154417126 625254692 200106958 202172374 761997650 876090769 585393614 875493649 601334513 53340574 647716564 899065546 960419976 818400616 290441205 236462995 734053750 991644602 587669447 715479801 684040985 255794590 961477243 530725102 460507008 302336799 743104346 440498059 698297750 853964937 57684543 970733078 144414991 234816910 759664469 305989238 271847778 854848316 590204200 949651302 180372181 666912676 533963060 242357570 722620989 990143000 219866135 824377096 853155753 212204320 922562580 806525887 353688756 99737489 647584142 325015596 669245645 710772155 553664997 672896099 277581791 374478745 494837761 249025164 691710473 995343667 691404023 567585592 224395801 970476233 170502742 726947866 833340724 634308073 986885905 319883926 151202169 109304507 633414208 445480076 768945853 291633902 858010221 381853140 185907059 177682839 245596948 295467968 65616053 187769528 838659189 368948323 387942140 247287075 644195730 254274531 216050892 56873269 729069617 65784820 156967655 917030564 834908511 786215082 199430715 939192060 228826987 346557742 749570166 887128736 610984399 60347403 11810821 795071424 180900693 361461463 316261503 571994387 827870275 733601677 527635047 268334789 155987685 148868761 725692136 293096350 492494851 899008126 630098637 686602866 119087400 297437604 152266874 31785742 631360817 891629557 951751122 623064092 27339217 626053499 365388758 382219020 662468091 115778580 516699933 530347811 393027882 317890556 601886070 303417198 330570565 145907601 304030989 77842407 86855105 87007492 433288302 166357849 581193533 661430494 667300429 504132199 271570836 997946057 394616990 392670971 991875915 403345042 425789933 420700269 879845007 178353151 89979823 652003625 676886707 5004628 754942542 705467323 588247197 602426099 671252208 161472267 19645638 343940672 910693621 278190804 613086098 426870074 328501542 678346432 996335540 26112981 786012890 406525316 59936507 481961444 370010393 647832869 674460491 331437093 997419778 330280899 116940480 298928337 667967613 571377972 1998651 89233300 954572536 222806089 123565717 816962541 255239391 541879422 324438200 657209588 462789417 856526556 329815780 214627770 778700457 624327574 747292802 640230472 828787567 42928685 21749153 69494340 715637665 52196445 365745612 220046138 490801265 250645048 220436248 453275380 281717233 295877206 789826648 968915301 16557629 12573293 897572904 677334284 342235876 848991610 663774014 600193903 556254120 362459876 374842371 936648409 546532327 999870155 401229053 933290848 411261835 444695883 805328883 265771310 946350274 57796 909600151 610719631 285598126 909965057 889646954 802326616 876634185 187878006 878909543 424803905 937081165 823184373 292636149 245995977 777224158 99331354 995985846 732617745 539970522 593353767 132659642 736710001 241778940 931984736 624074034 800161610 445795723 329775853 43572186 879913590 599352066 413566097 540162252 651722172 669615404 492643427 782887123 911818803 139814602 510066608 191357876 602046100 666198977 661099966 163688633 447879321 267897458 915554153 570362850 966572288 207032844 875432288 54463944 230275376 903502421 337393265 935154599 249530051 889489525 773315326 49357083 380964186 921296305 231066032 86192884 647112474 642800456 109150771 88160452 157466435 210036298 397519228 806518414 915253068 963945597 512792086 465922900 615430144 155004036 940045198 769172725 498436752 558255049 399944304 115520956 546050332 917189349 889220154 339723701 218297930 371216025 159337906 561463597 288481549 796814928 613747679 960957515 222638670 785207235 80627456 311528149 318055833 352969382 151454484 147760505 337825812 217142353 865373714 393391577 393625072 32031501 521940175 93394363 893630036 239065362 977535696 346723027 985165170 908173686 316839536 637155368 661327612 245373411 487829545 52811260 851108217 799793851 338459996 176324983 914270876 932333084 858934173 608316690 448640580 423957077 623389497 952629702 408215354 992993731 127689267 777345996 987026672 557524046 709720157 470068616 567900869 411984354 87111131 842010339 91962715 431581712 286632271 640785034 401653303 40011469 175959579 510194008 955810156 439508614 560287378 126718636 821577650 310583913 345233287 697406294 119596280 571250921 196163734 321000502 143813515 285895072 267923333 647369860 16999551 426138693 464199135 518931791 676491296 580725822 292648056 106178072 365094550 379752889 402573118 631458527 755658252 112885334 759543808 228606539 859573436 279493256 500640522 507211333 502159182 755244599 214438401 235926059 13627908 443935532 54636013 7683957 329858455 26858614 636549573 214328293 839144987 133105377 834466494 660197304 556230309 231637776 988283426 262732717 330624765 479654924 948780157 581361015 784375887 923422964 606856237 865866368 493553175 747709500 322975890 205832516 840410714 130924295 517881896 928583483 483552032 830269341 449533746 177839209 862955621 590707445 172356149 849663633 607127595 193702772 253187204 13689455 805056205 592968408 876270152 915016450 873593271 254152333 159542901 121663070 311720157 279242527 762173104 696893348 2287225 800139501 18483214 295353678 88012759 227789889 446335885 524381701 859689465 940090844 921631778 69537686 389581089 883814383 135589630 790883301 381626927 686888967 741959382 411561036 387136702 417174342 830958413 969496382 4404721 951150800 606238582 33349855 901844483 772362176 514192566 987322314 680720272 607020685 166105421 936137948 467271996 958637039 694271196 852871103 240429757 875795358 632458963 331775108 897580786 80682388 352830015 273748788 648025008 120885245 966909193 785968781 484584762 468775257 319514410 50551893 811803641 825998792 453605399 590628259 518016856 357794938 268004820 495584217 823242577 152098794 417963476 766894419 420242623 162653093 845067839 257799313 769739836 571460380 810010753 764549687 833085760 92658709 820107641 258203013 113093136 100918392 143900859 808623512 662043303 643693851 322639612 410098037 219191689 865361561 565837991 673191406 173834001 181880453 141848318 5913405 343032620 303760172 981057723 347032295 910224949 724229425 758292166 36256386 706093685 350205967 831955958 766110683 709054290 658757521 534438161 464060308 726633428 409566804 792800957 316114201 799831957 648719423 607993599 48721814 293332573 456100817 239195995 171033476 596092713 929360169 124715674 141830961 433630602 120510952 269447221 355132035 418709213 551130236 499500023 984364368 328699769 438775655 449638632 646945927 224921903 433062920 942483238 723198808 306194974 165970585 714599307 126625689 267943892 831533684 585965924 853023807 824031426 145435471 407786950 565936050 318257246 567066951 196640402 696074302 611928867 955765408 265275847 505124131 38516454 380578292 905016775 666064670 815990080 2565094 250464695 682821063 281263727 511444234 224772825 141644758 391569137 621121227 665962902 568329975 257095016 22202019 274868442 932622794 992968295 201465161 207186024 793866831 271316344 362582476 209904573 259788991 900513453 96140153 148285990 838589836 269410247 528820458 243381253 443810577 696610375 667764831 607024711 206618436 912527533 929278441 714368596 825381277 768219150 336340364 110316107 495269831 411428152 768911208 590938278 136842016 423925246 634790642 849973347 497229179 794071195 665411675 434302966 924616869 800208361 634910646 498686153 204667800 124943183 434207454 268220263 49333091 94364411 476621648 790047791 218951082 140166546 501232311 876473900 566974658 534783149 824012190 74082809 560738382 855686061 576138046 267044473 306690100 563816241 372198986 818404540 406357934 876437802 673354710 55570161 90986713 462674289 731131212 373660942 395088218 421217307 838540259 997956015 561920023 88283613 368660075 524267108 797086095 110236692 933312423 979435550 457596282 262695446 494845997 274459011 899296294 34772465 452722108 450000313 412917422 45526775 930154962 760762816 254473657 11376704 296119183 971965304 538004668 332037570 390267671 178024548 971313769 923846462 677485843 530633770 366142626 517957700 766264441 283348247 488904410 744478922 365687485 743889569 343361179 14841885 631734930 197356130 52548771 499643805 523286667 139385990 477877740 276672699 939929735 198010040 738807871 779799824 433906231 798004849 234406835 807543141 985648096 169236170 558215544 980462059 102288423 475552296 36089181 387507642 894666585 822368847 802618485 279202691 750260788 244387786 937549587 457585285 359627720 322043872 95652724 92579229 735293560 281579528 148799478 373080547 119163273 971805002 482409215 712542935 471357745 455951324 397455534 286023697 85311272 345989711 89670026 689503690 891422336 723938808 351885708 580154951 965567681 165702437 995883835 411228276 547644984 843073748 62851886 781190536 156308819 418727269 400606490 793975803 451425958 224519654 113406731 611198655 849627005 485464266 9308185 926252767 79523931 229729934 344398846 125448488 2587954 460562013 271044066 838777674 603310011 4190236 848222441 143650032 214579746 299360040 337071790 987812227 259171457 953706181 399962623 217969463 750375477 465636110 724629885 381832246 853397378 39419938 624791505 755797727 394140473 237443158 807520932 976229684 167065787 322918795 846728330 532663553 852480419 75287145 926219984 489165057 865573810 166026912 476851575 149431231 903967726 860856052 230143499 211352481 636454211 416079545 949813285 487844011 68033795 943223159 240619737 821006936 799608335 922644718 86171501 284206180 558527755 997119698 594839269 156477674 271396771 484297934 495898162 576097072 121196245 571738703 322516810 932791294 377677736 3998357 452612525 295560146 563493924 693482834 213190932 760357704 338450326 461876461 414830478 132245016 873065923 223598685 561439419 699850802 520133984 961343775 997826268 3946285 429912421 577832780 879945835 454486870 630546074 221775816 974197831 537982115 630184186 177435157 383513922 693311821 132130237 78771666 46259290 238643522 86543607 929990998 982534725 624744809 644293680 145427650 383047449 557611572 19980731 786294517 371959171 876898573 343193284 980972940 48197651 930180223 812582766 350800426 533686596 810689643 934916488 316952572 805581038 972798466 103920 157113534 648266394 908149764 338550161 333631981 485441403 236777941 271006368 375228417 983965361 24802481 530294830 270561957 106337631 187656485 717000159 845205008 547175194 966272276 183120969 774877983 246334845 164597816 667719643 667030289 293057946 822320251 21204926 715846237 317763594 203729619 637679719 147244348 72004535 430448354 400759473 187896590 225291195 522093663 456452905 35776676 56844115 324692404 56602851 954863406 620079411 854263459 429426411 655356358 154483293 646986142 102095482 191958669 425310189 179842326 499384915 837282727 923621123 79771741 42328754 550481804 575541243 233397881 574819522 400967230 398987359 368187373 479649894 65702022 959600124 652385842 836854570 20112737 303528766 212442449 988665935 963613233 938139072 573983377 858767369 605087981 436878188 231651242 418301862 806868641 387372411 710581157 307670479 334319894 345850249 572295598 474167064 649686378 451609453 153908761 378986009 164749078 546988849 113324237 354377376 209529 742238306 79366502 852521718 201038684 26044653 395293191 691850268 220432991 458332018 354816224 103757444 771527403 912748594 28436198 258115252 528446325 850151926 872527803 906568470 647418949 332014033 300591752 930802007 536169566 230017395 423317275 604033713 493683914 781201124 58594810 495444356 737293707 631693167 171699495 369153257 967018961 888463665 280617138 486058027 719481860 614868770 233502297 121750165 184049286 585247633 257358638 726111344 902653737 715592055 56783350 67670634 581123390 312061183 852513049 755206459 732847519 857121487 275441390 337096241 782969182 847154855 348878286 369313171 495579519 899714802 721022474 972421025 332124018 406126974 381227984 3272629 236986826 293398787 445449958 494828707 330122608 593413166 312239880 570898309 98497039 564720496 703735258 188981249 570921550 820508023 352513041 204683949 137292852 20209199 422256669 331051628 633636488 825126253 163298691 894225789 129066728 469980122 20072796 669630816 729511757 737155013 303029174 780475397 779167069 540473872 452508200 97325469 650567044 80629059 626948238 493859458 643064321 58128007 173288247 36730619 107925514 465631576 972904003 925927154 376500526 980292208 197585040 625203854 625838285 888997015 545270722 73050503 865448860 246324508 875557669 141409029 17653081 763202793 694066271 317895918 293928567 622698508 218688179 965501932 46781805 227276904 863936560 234937534 408746794 159967544 246410253 831107602 199720165 553669625 809106074 879467744 754154137 624604684 353073790 279572558 269296011 225204582 679080017 641869674 782759992 363367245 239380511 185482213 58082545 283852653 998683147 358049427 38645600 509400262 206186449 346349031 191781860 579805519 501861988 668290322 514119649 844224339 982081740 26292551 188980618 889595556 752369829 464441177 49018157 92390179 973520936 740406338 386081794 535228175 752460887 827303312 338480916 348022062 904479071 17109264 521387515 725219614 814947374 87562977 975201040 918514732 496983165 152600171 179786470 726450755 191095653 813738946 870197400 219585830 97723277 789154496 670473554 578270857 600466725 940029861 13259336 547754612 606226897 108200019 35035918 267303531 493017870 84088743 256721141 202421763 673933328 191961393 597889416 493072298 192241357 546752391 701899583 310399920 843913939 533946187 107855203 554347155 123025197 334230088 459371203 128070882 266905317 117111026 774530919 827072284 966621461 705233663 255819873 622671305 380246013 682824374 671349142 626202975 956236187 711805157 118271099 591830582 478241463 749686405 209194534 265660562 765100495 276308565 911973073 240155415 96740881 662178735 941571084 661617576 571175102 479355849 110551664 708945264 764191844 395688739 844404682 131807308 189967882 144733097 337974219 532861466 256382428 108355156 774553689 402579538 58836483 906436717 387929129 118695090 551564926 267791638 195120789 426568255 656231944 484908525 20362629 775706891 371650031 446138610 350417351 833901329 638539576 391186118 928668637 762954818 271646 816163146 206059811 566940345 753661908 387310511 732498308 824975379 78077999 253670874 89645657 468523165 292035178 376424714 622826445 858198327 367741914 631003826 404174072 193019571 837667838 824451905 778934920 827210275 15357317 854574835 801703263 538450243 904774610 195451546 85330214 816329717 318211534 986052129 291969834 784307851 47591147 667882098 439750246 880203200 396914275 369468530 98522431 135152716 267168011 437039566 924747322 803216706 534986372 475299289 554415563 31653628 823852787 663883979 985362951 123467265 689577126 794409828 888955670 970539259 361298646 207573097 389550127 611785011 139506889 62841824 549638679 704313397 633820090 469776814 284338170 242966057 762554998 604470969 623913822 668738383 799418577 907157577 549743404 846515399 487066598 2718473 305773579 398453603 392574159 527627056 648273659 999576404 562118159 894585979 710556812 172621379 186612946 553346982 370772491 142317366 548843680 836521290 738597068 217861462 415393827 55839772 244395237 742574147 793341570 904916993 136684334 431879707 788380610 695799974 454479940 388107379 938629749 374224082 676865177 53615611 852493434 856995851 13053593 821054952 160196478 409559242 236984079 465717610 246713958 962977915 550053989 804402039 874630609 951473851 554181954 20391783 855526647 307071392 962658548 713120185 874493474 7683347 260728426 252147402 660268677 742419797 835885546 710852299 657552945 997105948 347055023 587354104 722916737 825889527 9260637 102119189 731907069 402583129 85106633 482575554 735643005 729693061 154885775 741994763 848178540 725721966 47985244 972843027 708863951 835443168 462405021 302623624 832421597 340913242 275862591 199011368 712736822 361517312 128041116 712375064 45282406 841506159 936227024 593173358 322902432 704268983 526362757 540178926 320049293 151155434 14780468 706095134 256857712 659301379 314985572 687448735 428120538 463544813 842075748 662563407 162910378 201483217 645445850 522853692 551106351 271085149 254868102 421773085 389310184 448617502 683681395 724751082 500620773 240381258 452505604 682873873 896953354 797519005 816173941 545226358 747072801 874795727 102658537 873534497 25642945 342931378 69955927 312646046 225460834 720850353 144699385 918764859 208464519 872071774 35779968 123647703 189162207 24803316 754956841 393092086 197849514 820295224 403449767 415713541 868414103 512683218 727404746 647105145 124808032 439445608 818921739 66139860 16617951 563523326 187853507 945063324 922421316 502536489 292574760 648929361 638996828 715808851 787601621 299438847 602712323 400608761 249432564 577052030 457488650 30563738 697338624 733915553 865808572 31142193 809697724 154262894 345331488 776339834 260395090 146804582 830305763 671331489 743457860 124465616 708181503 920558677 27869454 654162904 105105943 784258845 385025964 342589074 872781264 20802727 892529495 964530843 991790142 311896636 649879370 237028713 564206853 704095327 593758430 823690194 215262111 703669532 262712106 904572747 940941050 295241588 306063542 681833547 522596242 795065420 359449490 556329629 306150436 905628060 959734062 394962418 734707773 81459624 427151150 383084238 299173946 967501726 387056056 838409442 106175871 123150219 837681348 515922862 877048466 164278925 616921930 379651181 157183147 163849155 707619740 458534954 253586338 240956088 961253228 31805209 195772180 296309579 989328522 209738240 837615450 821024968 779100724 424861616 552367485 116463435 719681070 550290010 269484029 992112537 697513631 637008863 231578182 659193656 24625463 159778770 128141737 107579066 147420411 363031711 562235027 499827101 150276053 847664319 145331593 439613808 553725842 528560864 266027531 817822876 881879332 461966629 711167864 62697360 604288157 485987096 960163434 218326425 364393024 955196746 71058793 666594731 269054170 416551344 515999841 649697290 339312414 851786112 616901840 408373633 349393964 746259370 873658700 264943479 22444840 835437999 44696921 414544170 127006548 782879248 182169590 868561771 103586301 567211528 251247264 293392158 971633999 684437224 324932277 827071236 870465777 15426381 480843520 124549649 809841675 811169130 696947448 941715578 393261021 107392118 704656237 439728424 961280580 950565462 738076202 784207843 70109947 799679052 569524933 542318626 2602182 389854581 828266391 928216054 469910803 928434285 25157482 316615034 600764978 576882894 389067759 127339782 319173008 251544900 278272397 650133464 639910172 473638700 963114905 629090278 155816602 266895538 829757248 681029060 949681805 326402771 621562980 384486941 843638307 647134627 681491915 251158424 238617350 639856851 320733032 798828925 737480221 428455637 801204418 159738467 975682660 570931901 776540800 755034982 376664483 854289527 287306802 857408718 66711247 247051701 145147891 179938576 772449160 92461719 194038563 886125387 383116491 455334839 150129790 506586893 603202740 983716067 310535944 320508008 653522579 247659117 885525346 504729945 709895055 255658404 121417353 333525112 245442508 336669799 22424732 994783482 711405474 169026440 677037121 249790596 931072513 145073668 798121299 750007647 7380228 685168732 806878285 569031797 128649419 953084813 944409660 224170652 270693175 979987693 897613106 232565964 154995923 808836461 817288448 703241724 618156829 861840082 642920730 584845355 773488138 214689909 539728333 521227890 603789882 8596082 896040148 286670423 517939503 937532947 55468665 2870094 724311868 274823021 438849105 353702778 989036966 446941582 117671747 123488360 576685237 371665943 876281726 400912068 274700 517952352 660969890 513467810 874289124 149744475 440222535 353975670 780331712 586821695 231668907 176793930 169963538 509509636 568262410 857347505 717351109 354643919 675207821 290760507 747443131 807866726 702333018 238084170 355901096 213921925 632931266 232755572 432615055 704911571 704889331 917746214 439437367 438487699 213053931 772158383 617121808 408477391 798261588 293913421 134948797 93866561 457762743 313671520 888792582 4762215 816626066 966083501 572467498 586252931 955402438 306443200 763579159 664445626 729963426 617602418 924657495 842314148 914454129 703749132 152313268 384867491 884673116 503508426 189102505 5162832 320692256 880829537 801665771 593989441 56137572 609109415 235989547 415866993 433902550 73930647 871385844 89401664 457764755 329359220 407154988 626105790 989232354 309784586 448825861 779075617 140306595 96182157 571074700 5185551 602910795 598169976 377781886 333880427 647248137 727827770 675214259 703573337 721994442 738739584 735468780 419462042 510528686 321816959 967184764 25449160 225132305 501865581 339264829 676561198 491074360 619712060 662421315 641431336 76048555 56707960 913025989 381113167 457130358 587483984 407575860 631009702 310019319 808204682 235202585 502185799 324544939 150824589 385228311 867273202 126660221 207412552 947764189 959537768 616802623 31899646 999472417 942005251 843826678 37403992 689568293 541009086 271530011 757335557 846106825 334074572 533118954 970651063 39031651 374570975 779908227 695731787 245294600 593284912 715332412 540713595 591999197 321338462 944567413 4723672 769553589 788154827 42438201 193072586 336628274 64437069 948708053 498846947 79099715 1140619 18083595 621437358 523941305 133004558 943203646 747682445 263702066 83525135 751409308 615930189 659883790 987383371 285838632 487506179 615204488 712921681 815103008 375497638 89635944 520608358 690187341 411393690 641255918 868188490 507772662 170316035 469402224 687998838 706386797 38441332 107736148 98847342 675171622 831516902 819969730 145362421 550093861 780622513 129764933 505671347 601582936 423226330 733712699 642712680 719396826 30931597 334504280 143703721 526670434 63105149 728910062 588857241 805977643 837148062 895522204 229856613 535651546 217553894 172530609 16572254 395151686 642875989 697945602 63083881 191630884 502546704 622960638 974126066 87321571 466937305 433010336 877287313 778698543 692666546 41540388 295105090 488733784 875650823 288047958 974547926 97985281 702408051 953428682 504772866 36447949 460612732 626456376 889107842 863711791 817525566 855600484 198327157 690327665 414986155 483836688 429864674 109121951 520624875 8188671 592335680 111169787 283268526 895661179 532736011 372675360 987631332 312522535 807304442 368653695 410490161 716411417 920922728 537718494 740563967 24534795 209729473 335292942 772657131 267343708 335729055 110512264 344963472 824149981 846697679 328773944 656481154 98069570 431288301 286639763 771635785 592846728 343545231 90106261 492619905 291884336 904167929 246820341 54351813 818173875 324944476 204549694 235501584 824505628 400943088 513990363 977772901 626506140 459146426 690380198 255347730 328620900 676828405 876207632 39433213 555487136 309606986 364316364 272309537 672373951 834215719 203339467 71891273 571443119 921011219 794047022 639016748 787234266 759145811 756636669 315445700 192919431 129945050 617931696 297713480 665352722 324464808 346011302 45301167 691333804 222992200 355089949 870083197 505231981 821568540 408547692 79956378 11890961 400881396 425599076 899848030 311473987 483200331 776358485 354269861 753292216 647834037 171486128 518602741 30279601 902602567 596829932 486513790 54649594 845342931 78233237 927238324 338883885 976869324 505779544 267032741 740561976 527227787 903320808 604218515 951120540 493278850 882037297 538681435 691096046 548817718 394737626 374857707 739855534 142344744 117882803 468085233 256550298 89679837 466145711 661886781 623739749 956084577 311138703 947313801 946543343 442056774 278177378 256464269 921312336 188831168 544038636 908512475 670186311 95185667 149876651 355292823 676596255 301057861 950445636 771314937 179731481 662244212 443304524 423564664 537633157 580977144 942323677 954640896 101167653 738891943 835945065 780170942 334766737 263749657 206469336 829913580 766660873 114445519 151160504 768098927 678075285 445572911 697507573 372867416 396198536 843468768 484835077 859001219 59259550 223048690 842211919 932367238 42756469 437945023 382124319 23767180 76244717 683288169 103463898 741743733 637405037 320120624 249765221 493399240 77090863 83699707 485799582 787948413 549644274 559498592 41624108 664616782 880665874 984132415 343992376 920935747 868909712 189368443 756262457 547098656 293325561 82603465 73305041 725246655 697778416 67413490 258476607 478938181 128376851 839352889 532827198 320064319 802489887 509296849 17151443 178628297 492853432 531864852 520438177 588587222 374633599 855337792 286143843 776934162 296125406 314507293 205395170 284670203 467550732 8771561 3459960 28439458 666507568 777967057 743402238 858319582 685857240 977209243 454203962 455633472 853637626 53685403 364760442 400068834 203455234 978085635 282508751 487145604 897013927 746174980 377098786 304101765 49034388 266562552 826236844 469281771 264044948 548695394 554536199 94393102 638123757 993693902 219735225 611978424 191342795 644911109 697037586 436071485 613589462 817454949 186619293 797584305 627116879 783364810 763434752 118359211 365670074 272050614 977358518 403693080 332020668 690153912 187160572 662424533 124235458 601827983 504770315 391044649 142443486 167532266 681975844 66727113 236355271 924565836 806403614 668601297 690068344 111055096 262975659 847267173 568096821 867438365 693885478 83667782 458434158 294135741 992102860 874697239 536690603 23847377 834234505 2953905 329500618 56388714 537924111 619997749 733168414 509365495 682398034 965408995 638595182 362286681 793419923 948282679 801475230 220605361 482551524 971834810 876242040 655663569 870760790 85970184 804516509 422484792 101445788 295636906 795310419 862625150 581367387 51044232 661727402 584001853 783812666 332051274 193791303 98376526 157610444 596575868 905963572 6959900 532779145 837240694 567919242 553107672 723288304 703100833 837947960 501164648 10098684 770645633 594050212 480260266 825370843 585207403 471246763 229240336 847204370 726023984 372718761 721781066 836342901 118802185 478053400 549980322 368956261 396556892 520773487 284106895 54056570 637106817 220509747 363346120 674880568 97614790 182797866 121232084 543008751 463025360 328946890 726344703 982431531 145353735 663035118 396869865 160587003 974677622 286444500 99280054 695481045 158669682 237618539 283618559 690064127 193138256 899077927 744870391 545948525 599520888 144181493 482921304 800457292 201077565 495281307 612635389 756876976 501979827 877722471 317102776 78034407 892494766 46668933 53780162 810081610 634701994 619531942 926342337 106060745 329432173 212938540 726933031 946708502 806719524 726725704 9165130 390874489 940468959 463652540 251456583 81563156 142568337 170029381 343953636 605748059 522708582 953402000 104664824 184368285 994116426 969478652 384078956 565911377 684584765 204482943 560146835 755975738 586732371 338348863 499244519 851744233 368669582 554610679 104464286 615515865 586016565 250325961 488600494 592355594 260596358 718972960 901175851 944036486 177160228 178008194 97282502 458159553 99896192 15912375 165000213 625682811 404979361 113291570 273637157 718938974 417851954 58067375 313393685 648198911 723187605 772697225 243165581 837343696 502883343 981025464 273981075 3238206 603336430 362982848 205746095 75400658 994913806 37763474 424505040 423782327 106040889 440884972 406502413 607104535 301117280 895792217 645170885 684873301 209547582 814837089 601114161 778102445 435684315 568189485 255945687 323000880 290681282 130518152 65530186 999703826 423652213 662508127 71117812 331228702 470500407 129755117 42323462 724597294 959515246 365992556 313991071 157008274 762331261 511227552 576360024 17324009 828823070 788323554 252162515 26942375 989327317 711083816 751965461 861245061 967308039 575553071 880846659 500173276 308400884 218397778 889113728 788990587 294445392 386641141 419256167 791993117 652397051 71050058 340434097 867706419 429274419 882498319 760199345 378763647 847603320 187408787 865302421 394422184 533765536 452887814 149103125 308836708 609918723 153006388 516349041 160610331 794450015 652251428 990152444 973779043 582502167 811637800 120243158 797125377 176701451 768414035 288713572 485754901 960856853 579974619 127967808 841772179 466401450 496085973 134896204 22300426 162103911 619507693 218596489 673798668 218141245 594611737 480648786 550815167 934127334 569548390 155966842 388113893 342954550 15908478 516576103 863453083 691494653 349735299 831776070 731858215 121003477 355197255 962652285 94383836 94589324 616909086 263652755 624305814 806742228 30391868 446940043 723788772 881400594 152324478 538127623 209991223 368754339 729055373 69661296 845454946 544151549 37132747 662942149 361008774 156772013 237037112 331316971 407088169 809630169 298984427 418933512 110695037 545428320 665060152 423034944 300444194 970842228 830547908 388072913 785489189 143322621 198644006 420039958 80986704 353636067 636082249 596359381 678585647 4941914 615455825 435989852 714511308 104484897 717283033 169837924 477271760 159376525 539298930 536928360 184731650 58676212 869722146 627988187 982338246 756204153 308312797 551430538 186757592 100733834 649887528 309978253 554822281 765133343 376172041 910415869 548252816 296066627 44346601 844498728 739185722 474560299 683588788 724748180 275935031 25786452 769957491 903118223 521434748 217811575 962173317 654779048 359401109 574595562 545863962 50971515 303746295 969921896 456526439 231223520 412938256 716471524 564101289 927409652 399344415 519352706 197042522 288331894 235069806 566182680 805186045 513936072 574888423 302558796 182283348 58100780 417144179 24313583 872542313 795043106 136430543 71166660 395016092 63153923 865003897 728699953 713354136 241782023 67572107 146839011 319422993 339155694 761818436 165502859 229524714 857009361 564248689 222064773 385336533 742381375 189104907 241667606 31401999 761917758 377781069 488087236 575853095 689039535 396651485 683287531 352461905 277709454 9255534 166413654 536788311 952013845 775762254 731260132 526894721 298285054 986645482 163800328 399992752 739274729 5159791 56106582 378113975 261068739 283680731 226917964 829704755 934823466 629422300 404192732 147314696 394849354 736403554 474093901 162214250 157918135 641598511 966402544 618553938 241092958 549199841 513814958 62165353 722436143 736565844 723111369 600879904 534267006 522544861 924602314 563924625 935507136 101639645 19365076 450821260 974156891 594775714 2831457 144163200 243610985 138073219 168978029 226530513 973444790 653929564 979683457 32931570 113301737 252080791 952591968 249089096 600640984 417875846 349798587 633705039 252648287 124095648 58001531 915040672 332915943 660044551 853589564 41202513 840269171 880555308 879788249 719428285 571303317 539418127 708775171 711428554 413163667 320767413 87668042 904146710 798190519 163686903 437846148 145837680 547372749 769308106 294063238 395409500 230857588 902111959 210711209 697208131 225954855 82089750 682807300 216155189 899221276 295612964 19581927 512095514 465912956 166744614 326107664 98378565 558288297 90216393 744448248 391572957 330461324 501401627 229951578 882009618 18405151 894437044 901305154 685216033 993995484 910543428 895119272 670909624 764107089 617194356 440498223 365520924 35895444 329725928 965414630 869390871 159751877 725485362 482636035 424732620 598331264 761843981 748076317 617836471 96144988 480643320 141432916 841673738 578096661 563130645 833904064 767255925 114456430 284402044 870371562 190165347 172169714 658428401 817428456 75149899 167672191 667701560 934697749 326445006 854137666 909526821 276884849 592679240 594933073 415999071 27739712 552178797 533393871 415857054 327879886 645291791 689224074 348731410 675726559 856692145 761868602 734945590 478065804 159013941 299232571 427080386 917492457 872266115 663704336 626542505 63333637 427409640 490103312 852070025 554644872 555838866 618389317 754253086 309188932 615135070 98838585 709313917 272374501 817062955 593787875 490147533 500222309 957682025 984508908 484930922 508726458 645121931 92880186 658185793 242974596 657369685 749970224 658239128 824246295 234580549 371693118 151271330 180314850 94900529 848809372 928637107 544011877 674415223 46267736 949572730 196709558 705497380 877615992 551294302 339396543 342819253 671365312 413321725 571546045 434663164 42159792 848009408 123974372 510666449 437127769 475198581 595083290 292285361 181685403 137709576 876193774 52994539 460142627 608446789 539615690 482905306 335159756 39829067 635724260 384347680 657304553 232927879 409573278 195933951 677713384 458444817 272140494 286300219 591674008 816116886 595964649 749571438 904403203 895389828 485461590 663788630 846413484 724986285 483126818 572894275 402488755 173396333 134449677 403482714 829601380 599872196 764487039 731389872 718586781 452904435 290695481 128533259 80630782 817746738 894398412 209473486 160786043 185050565 620395319 30235111 10903512 412495523 804171819 207340132 374856137 223711699 771124698 340493407 363133667 454779594 73762632 525439007 151231735 704970568 664785719 345176806 49104535 258474057 234236168 230917913 210262353 942978728 136715887 165239135 17286389 849119369 432614331 182517256 37091609 502006342 321996757 252991854 590660703 719231387 807293837 562524799 159894768 511247351 388625864 313473695 478203528 843895127 661176975 25531468 781547754 894475185 679240403 626311651 221083727 10872133 140603156 988983926 179951842 585369251 803034422 565307106 300734367 890942348 824430495 633560329 92878828 298085551 121856399 823460890 35574791 50469048 12914354 495875662 978232031 948557553 905315260 29951216 253158503 323680936 714378107 805363875 571760766 853101881 629159677 690088450 133331321 891157671 157791036 905490187 261706357 459045547 365426517 650216441 272002623 407098318 677251950 762632832 646861652 758466066 193513330 926230763 758185716 438677944 304382277 839922499 543584347 474338863 196264595 47781454 901451117 502814530 348693595 873135287 72759301 480263155 246767683 39380436 204092209 338212074 587614498 741189308 40444549 464019167 794724620 702891196 507267459 2353574 491984127 238187265 839946404 358183628 349023359 318812419 55034985 87970706 482490134 243333296 451577442 207041748 204291552 429143217 749569543 918822892 926183037 231568707 315786353 117141167 714683523 696090153 612379098 944110319 427396606 306348813 726752437 20875183 429457075 952715576 256415527 15879249 164532191 949549573 639880081 597332139 153868100 347591134 751765260 538615614 642824494 850002843 600261936 325353566 798059240 919565927 635378922 806650354 95853830 41804514 938304579 108695560 531638800 207124946 329273728 346631052 510273477 694318181 653284208 437967906 853897255 436581301 140228111 546850700 938132427 885894763 1490076 785731479 187555469 29095809 37116055 726010691 982236438 41870907 464038558 280235682 995442202 20459955 304109404 846471784 168705134 248416257 920432436 284139075 417296991 708159882 17108931 902384674 730594216 739655267 83048483 806514192 903835679 464766674 212256257 28779633 17101968 826059042 447615645 95852757 951269625 146409955 256532874 688197166 790543443 706969377 438341358 350684398 109837009 366608991 139660917 203508040 703311198 569980360 64318144 251412332 466405163 905720107 72236225 108276286 784487653 966610951 198208103 352883873 493933956 561263981 144471203 478563492 981720445 912459911 858151607 290230740 441302431 260243013 838431272 130307484 263384904 783205372 316421570 349654796 172940005 258055899 992300036 199616555 487784812 795577035 783926134 468899065 736907854 33220712 719280067 333680016 698272865 947539694 62115991 862225820 399498321 379710357 717976596 425681545 496919296 500005864 225031907 870736125 146608654 575075711 621471875 802824162 96104304 650986796 453244114 308083531 278606457 525672580 832106766 190776688 803855089 631648233 373358187 758972196 845158474 212449248 879663262 299039796 79145209 218217395 214791213 23357208 129490662 251050974 957141371 341466685 738364041 676718810 873210213 928492164 437500984 138172691 803259257 902119032 4738396 410272621 555504906 562473820 308105053 182438111 93504804 695069415 445164528 297152910 711070027 327165688 287389823 733310372 552374901 401323322 586207220 654695579 752797984 745895559 83394698 767564438 443627857 29706891 125870235 432764167 281241767 326111188 23115830 86046898 816308614 39367670 427499498 483955463 127173452 384182362 358105617 418212496 200117221 192429415 625339793 443392134 744846463 340828467 611294415 45304688 49885246 276390181 285261907 959319701 772403759 186226577 593279294 662174268 53442955 132185879 976308918 735155130 134773454 27353808 937417193 404093401 342844480 9305788 309885179 585370272 61982544 590852119 994919699 357131237 93293229 115717263 204909274 177713271 206614391 298023358 990400672 864873071 73265763 228501588 467674527 838801734 368474858 777753997 692892205 783309958 847799985 883686220 885461624 137673805 689395613 162144036 31669024 446877494 249241 381418164 203700326 137093789 423466296 237722088 484289532 674752072 108542686 586601376 364357236 858787217 865741687 678396370 763123641 468445888 336571149 788393391 65559996 865349023 943431163 783887599 878210218 17989545 171450500 326944211 440125875 507929392 299165355 509337267 610286278 392115154 9586087 211913979 538803591 250155040 238719476 748621916 691549870 330372282 478653294 959439654 351126557 784457318 635643022 460113088 290478831 306993072 396455832 447867 72872475 128969426 759745308 785381555 149831317 351808012 512070365 230536511 520429928 837094592 655129228 277731413 643097125 37822942 948268750 935641640 824798136 577060660 450307980 19110047 69795545 938619394 278286683 581126858 351182122 779788999 665749414 514730325 154638715 25390692 526575989 35820931 666460322 258659740 2943375 465691698 707377867 69240710 336027062 787067591 381694246 617874517 670748675 53923496 229034998 871238917 534012266 634617953 568382966 347237157 690572002 511146301 528378977 367728218 501176895 553383030 140121917 407036884 924238935 909673074 478842016 319607199 283993372 127432133 369259635 541952769 323787007 382544204 785517708 342371659 497767544 144251845 561367722 527532476 129723004 815471613 601601061 579161056 721059511 708948333 290423991 798667701 818875079 33244160 790745361 713942180 452878029 257844204 238433711 87663857 101442684 328586535 394168338 488753170 141040147 790843287 373519927 432531378 871828304 324865712 163850503 736237860 178897084 518919037 479592273 426970030 827896697 980619524 890405535 613094836 715819026 935211709 315155410 791654231 953523577 573863792 287153902 621857222 485899624 502462923 933937936 677196356 554312096 535233817 530235124 624891271 56417331 370419312 406421464 579694656 920670567 59700343 588661343 655190246 297663028 594358589 417326825 647798399 252484728 583842238 503781820 415820758 675085876 16650660 231433234 289965031 743693369 463746431 329467884 340110984 306618239 297006843 335280466 603464943 830399249 665976440 580801507 601533048 671201071 75046780 890290992 392292588 362502458 948142046 324709632 570320740 268115423 715298722 48241683 842772869 538831406 29241969 382953497 513213886 673715871 94208395 884684357 673444576 205603980 562409002 637375969 819242183 515977836 668500602 500091525 416785185 403501202 462313480 300973623 615775153 792103475 586923642 229580022 656184939 614396758 37845286 602951466 306882221 447940538 877518238 102660011 588980790 102971731 993435737 76931469 155228222 986716076 558171792 361648960 77897923 332809273 1803852 302343775 388964724 447565692 611748037 665941561 280230155 749278968 587777765 382121971 304006683 273917783 459518938 749602817 32847411 346828500 504827692 474852143 948360717 92885682 949935644 375475016 872281978 587205190 183530315 928815651 592274009 827581811 195257717 612848311 147610053 556911468 98272521 125636377 124959 231791660 146369177 625578065 211906144 351588929 683944150 738308711 30108559 304917166 473013048 939232549 231643194 709536433 436090975 738737983 125725510 360838251 898942054 288085374 159014633 400987866 152009796 877891757 823872982 59105904 933058583 5383827 416561056 121774023 143082135 137843336 774506353 24482021 33896718 500682219 571550339 150335854 618498549 629753675 308155478 67354830 125535155 983726539 121616788 131389134 31051416 393795177 978852778 879490564 325161248 999715920 836709169 885016928 899546952 740203692 1870655 966370069 594202763 302700134 31502265 621207955 115509527 608209522 542069429 184848623 879697019 93842036 640385588 462366374 574865451 664144754 573045721 236720782 498825484 317375432 757699569 397950881 743611520 841235689 449683469 646211127 297868045 295512070 764073319 228248652 536679670 434460827 174945222 236836433 359402564 669150435 827062101 383828016 206703512 376518332 869819878 496679047 674198220 499837528 217356590 530048433 340921799 245215990 857228629 340191510 967433895 685954095 759309852 437250359 799547255 450565926 815705123 772338382 470859863 319433973 292624149 506877841 996479497 529449983 882251250 539470115 844601262 475794238 123418294 862376660 801243681 831972954 270178755 112141680 617542980 889754342 449139399 398079509 148915409 881223952 114416211 252370051 250888258 647813111 431443389 979474852 503888940 810896362 765380970 10521669 336319954 942867599 259936282 344508997 694628951 169105432 913453374 155446415 202313350 103186891 549493658 421238473 189893733 608222221 247936490 440539651 115472585 604552351 711882385 50431737 383595500 673135245 490480048 807344236 780491207 964856154 548072880 88443514 560192681 218950960 257459877 445326688 159707718 850356509 237922290 842465502 942023903 277365387 144231668 874234304 667237193 641434928 921617935 630541 23851997 208762800 710620804 514989257 733763337 274444216 550958599 100503677 25082861 6311568 577868767 719860143 934518467 130837184 997712294 706673742 789581379 105668853 825558534 31273678 224170212 456177043 759110825 917833862 941052971 521452851 297074584 350983247 705536350 679834890 8126222 611424936 215078178 468893185 821897995 245757740 391994278 600425865 402826798 695853631 36497999 861107876 728744775 98472389 321850241 495145283 306469298 171767905 215937974 14145167 731497039 568265523 855061445 769547627 101969504 111116667 630497998 364315550 168322208 671124114 9302375 604834563 251814856 262375158 755630379 267845509 884771639 425810800 288571943 346711540 657039995 185621294 213517520 295418200 333999771 916983696 724442939 821691885 823105963 39397230 542212352 13518877 492527483 16310332 189068912 455709192 933567686 211870417 93474468 96545362 554948379 355902593 140432890 254449079 216909109 854598620 205386590 141395012 920662397 74645077 137599148 742294172 12772455 260831023 844119861 741660421 17620355 649548209 979955595 919810231 760420940 904465291 992698842 971381983 326361275 357854329 982476844 605390312 793459045 700715993 217361099 986967511 277955302 869969784 998508661 703113301 74993237 306593175 979047754 62302688 498188596 858156647 175226504 294668555 673934015 162060420 112885290 697680781 143692244 31540362 228212616 315064239 462140079 814092660 3246241 563804589 438143028 982804657 357552263 558202515 339760442 637134735 716132664 625310847 227492860 19214831 612507368 473437964 781802589 79634133 628239000 331659207 443500717 464761815 448688301 717757358 640812096 610275796 138711367 328438358 656707984 220613443 801355307 823564905 231327686 175949367 86483636 322810523 853207220 251334542 598551005 448846872 224374519 387549322 278101445 796773026 743355329 154116849 496265161 509406311 863183042 504381322 440059071 821783293 888374217 957302750 208477953 793800860 989241427 604812336 216827826 99532603 224521877 832555446 772678813 18362441 861088435 723505575 469756770 796400107 129180573 160293084 248724980 308801517 123150807 744472318 942657626 579264350 183728518 658282445 892853327 905231872 397001859 909494698 468815692 187744070 384799889 470789308 357179569 6253225 136310561 904306966 520911349 770716663 560159258 780818985 964952496 209279044 382277995 246217849 71489560 957938489 980904684 252774939 538728607 839132573 38828063 537774309 515854067 742544690 109571043 788629793 111652711 122444504 589236479 934798070 24999585 690755220 45247070 412555372 836905557 986385156 777035949 51044604 325652682 300279768 931616735 239392626 204028745 666181741 614325102 422949801 954795921 402630332 153182460 23438894 570539291 552935697 441354357 784173665 117094026 734892902 474173986 313095308 744854680 27871399 241593406 679835102 226489816 342299063 731640792 979834410 845330180 779480723 713654880 464717741 832207133 264546941 429881005 23476864 685541564 773697761 617973129 322777356 226557533 782159745 220315053 6742361 306579458 611007009 674632611 400023398 734633582 435426608 454461379 322178904 296207973 371566605 642988235 239793310 988261937 366628407 963157985 903182564 225864629 528828068 277655254 470243502 753982530 328709793 999252793 672110044 859322867 245559268 834820527 955828781 197911647 11321356 658112247 714464212 330150369 566873591 924511748 571227438 684250567 323860254 371483989 547852594 761258593 752217335 124961582 499307323 19447596 486851993 712507717 612929631 850139673 55847428 758092260 498582331 167684263 562057190 881042692 251453014 817676671 989676474 367426552 799697277 595802460 333980404 61842786 707978371 711379562 417210882 328541349 93190452 334380576 956395921 515690496 956096075 851637763 698723089 393587141 798575921 106574929 640424141 412511825 8930736 354931847 799438893 54817072 792386531 955409699 132734510 253949380 46445851 293857724 847769463 224711357 94255722 807838176 973855734 767623743 158741067 589823483 440968733 176405655 822851069 946549303 521440572 76964791 99310942 623248335 595917498 845043402 752935887 562461575 88495485 570489649 328787187 23280315 604820805 608585170 138918226 519798557 39614074 538956594 554180836 436452488 543982157 352012794 715990573 189245719 901347439 458967026 107134761 752261381 706885142 715263354 576313572 960206944 936807141 460676066 113627577 356478884 869397759 379669496 935662676 572020049 37365254 733650707 162614538 185774302 344654785 461628979 57497323 288351803 49083013 60425420 411881915 733225537 498465231 322047743 239832255 199068693 626366297 527578108 904866795 630331 658595436 554381867 712769983 912657895 739945008 926885213 365303042 927082261 849256395 860876467 368004925 634459714 281157748 581091373 564001739 52563691 686746477 133468506 292890667 88174950 143406858 261760103 852237460 791659117 362362144 905010886 364750850 655777327 81779340 38522902 290015409 174071888 54422758 11864643 330223072 606660447 881785034 958812389 519456195 855945114 607218193 381395949 29261480 351627631 669247412 719980864 527847319 100658896 727150753 723726711 714243105 275825758 881614772 95182830 495647988 97265001 960950868 264139818 686187026 34281610 803952363 467464157 44910537 696832808 866954644 265997340 341504962 192492969 340860588 185119535 669002747 278917385 995540853 938212678 924458109 974447964 537877015 852261539 380276789 610545352 854282326 636704339 105924061 626742311 313959383 770667650 311833506 423867329 561413466 368471776 753689606 366226003 679409598 429500385 76662139 532093731 664699053 974634885 377011627 334422499 82246629 277535134 537995164 255000087 169443262 145523013 238370879 630907266 513140443 146735321 538076690 840716802 667238158 235008753 860107095 507831428 539546558 162033110 809140814 232729858 306705159 455020271 424588154 56947991 221260287 53584878 710786886 892853666 614084093 482469418 838979988 584211198 56407784 622528148 694195560 822733105 137052916 978616633 876181636 914897269 264538075 731416576 989986654 455955201 87122578 261463841 453582113 838096149 737681811 402683195 779044885 338731123 852953906 204311308 955087521 206536975 57775245 715001410 452237579 371343305 784988917 565998137 808178080 873691814 544650296 869012782 956268671 14111392 379994715 23339283 44698417 565262698 871299653 353394597 988620523 247605153 688922134 20602976 62713671 571662741 88970193 139030112 275886866 284291345 548580509 231731206 220778720 319430997 148338246 233770614 842958180 850641042 37898298 662009470 396211465 233748235 233947551 611233197 174410127 689079877 419836355 737954318 396113701 423242298 613309663 456115131 442435249 678707685 849747253 658305086 131446642 297927731 784195604 196680050 254367007 83415056 128575856 504527777 678606786 772821092 260701587 732231738 646601094 73800259 205535519 12778127 360092037 464389412 987988595 786669817 662991887 989851739 42419142 182252775 442122923 312601539 262338896 607130689 738345520 726034186 544757416 770061759 862353795 357709870 730389038 953961059 54308936 171002640 410466271 435421059 874787565 149300224 969924100 971061474 442563599 851885709 740537920 557104345 610752689 848070582 994957443 70351281 682327296 267546137 604337470 289937157 979421771 655122773 276940649 533445436 56738031 250968140 15841984 326410875 858599349 817693217 365199204 414534587 214668460 506338305 842744778 112084640 650401234 657917661 644701587 188745294 522140027 780044719 998602407 492247845 911881472 691517514 631122055 249528581 184970601 108069478 362926005 441239778 724695306 403029307 493825196 479876800 516688752 197129944 380188141 322236597 439511260 201789308 820732694 334615561 709064292 42554431 996969981 710080018 376724550 424370243 410538767 275518356 254847695 133575769 888002631 576234322 583087586 440903411 429535074 983954658 704962547 696540943 517723629 377025709 8602443 344173812 320323527 924974721 208953700 328218936 635536739 163886038 776285107 256928748 687446004 138018664 783375272 73931352 696282230 806233583 305554073 796772332 604051354 1102371 311377081 988864344 340257854 41246489 71028455 69448118 318112597 600405739 725124698 896735546 555076032 299994560 779260017 791100370 54529904 933601629 485857869 133853664 915334334 32370307 557545321 203187068 151000599 11408378 819451860 993353416 608764224 760877105 1706602 776577051 492299455 733766769 444068889 865448531 651098144 436682051 53633363 669385101 90630115 486306176 406516998 392902941 643338312 886696901 480075177 253897001 106471806 479235618 252002108 51782014 338202363 309686436 44668204 649431731 378625853 640728898 655947071 209248552 233144043 71353093 685740422 681445908 192634623 121802394 295509094 366989671 355556325 149807133 690273774 472407247 445933571 178045684 733595979 38182556 889231844 716239676 857274061 788764968 341691937 492425946 213818148 738978689 293002493 503092957 215149781 591193971 278863278 511206534 22193948 778747287 242564563 914421938 201613049 525164043 245705898 303125666 681853157 396542631 138048908 951273164 511431421 752531331 249169407 359986923 658164042 571607490 786956829 270456694 120174729 779782756 738140622 181903294 701377647 232676904 536478977 432975874 154200382 116157186 903514264 748376626 23676906 181524037 514539364 674864652 868783635 667178317 344791010 398847849 751567849 633588538 252714389 635314122 104814170 777783699 90639833 823604828 97613274 473454504 250893324 695316593 660296465 374728107 62985727 455694630 634980998 338421565 909677232 519755177 832578111 778064237 623180008 711912640 325286704 214982957 273753271 24022399 625950168 769087056 445160795 930637518 206724353 447549510 936719768 408392103 644147620 134468240 779179262 606432556 868878995 53048870 507179003 744455155 785646425 72182021 247703519 972872400 47162887 270290835 487675155 722785550 437700158 563866296 211338076 542085200 33404909 470543277 582063767 345796472 777752342 227878020 628886138 834982420 342861811 780021675 661340468 226560239 146264492 766449127 403685316 226488921 211377553 444332359 24992716 345874270 88508724 316399063 857096925 655764207 949345541 402368709 441504614 564480573 845951651 521892817 995554104 334015236 789211088 222860992 942185532 686484425 971424151 987324766 880803198 817804928 104922628 782370986 376523384 683734648 461432148 942448392 23225144 729817972 24476669 552518697 547302466 723447462 981162319 874836311 481331180 833536431 625505593 404051787 103926019 861432643 997066788 52004261 887544219 163352046 18837100 623177830 125581868 688321082 398806019 878058469 167837343 222458484 765343329 16576896 981052722 673614174 38855963 6934426 55133367 849122626 962099496 936229062 555318885 190027743 724096144 227969 495089454 609934658 948814604 461396801 620616194 950010783 296350855 94541060 213617299 199257419 870018651 191462926 893349338 754826433 766049198 350969419 185102099 484476446 439132362 252076304 255015716 956003684 419846975 522151252 82018479 713832099 711637747 259786911 623385361 766765944 21435336 945984802 772602761 573505099 174769663 422701562 92544910 596976211 640367072 800065661 170568142 331511518 874544900 98371875 301836264 353773645 988476843 538020174 91937976 782837588 264365009 619028112 893322590 799986516 524567489 504856648 424519176 873468060 453639188 832096171 803142483 178948993 51544854 17481071 173529756 249756389 50905590 17298346 813103845 338495052 810254364 533328602 224334240 429274504 251849749 603977304 420321769 626193831 599185998 41242815 952003280 365587193 31563569 768104069 975913060 607745846 761163755 488815904 870084309 470957552 848698069 824355678 973409945 112282299 654529810 275577733 108005088 396464164 66345235 654240829 974316286 839590469 931869850 402123972 3824769 554418508 236533616 964799552 619084884 14940103 728884301 42300246 611019762 899871569 977041517 265759348 1693620 490088925 183694327 360600820 591631227 849605095 310605315 289613327 303908225 726671728 627256459 679128407 274333015 218121247 334409183 501141842 907348609 653791118 421377260 356520031 287377959 874095796 557000132 586201596 18106397 928049153 234156853 206289469 67865935 123977080 600525474 953381333 793038988 459550080 707178288 603716317 627756554 784038277 27439343 713822305 764781475 329416174 33917568 33674224 478252594 222469739 532118921 287932430 251898211 180456176 653043904 547549781 34115279 397335279 288040690 432135417 827353340 954664402 938674736 763124698 579100634 917680054 582123713 763085322 942671733 463833341 21816751 133960123 731301516 686888439 763372944 105557045 828655712 40593900 85923268 650480229 710646947 875725829 670891573 505388454 941104971 229642099 526908191 509796364 830476517 288994049 705912096 392477034 159798319 359461220 543252726 808191171 147191466 69794609 841315863 629480975 735311755 410361992 299040688 619361405 979106881 330056769 31520158 747115871 507886543 120922215 285888289 546587623 667120460 748735143 921009077 401882862 606302391 114028308 216199812 791528552 638047240 443857173 234057390 217145905 314435654 199742346 638802289 364013653 247069994 24603190 16305496 777780203 645059835 935509758 870761446 929750170 380778978 957003464 708453314 666880989 126336233 28335460 147712276 872217268 591225240 674659990 135534477 32411184 444485159 787618340 97413025 562976655 321902465 776411386 328262552 848454943 234136269 289054865 739359081 656844505 634390791 168890354 853941470 54010908 222158971 200224804 728333752 482740794 976785825 898264730 522129065 584126670 955797050 84352922 640078561 803684228 789867033 942461062 514241214 718005586 612126846 643548274 377333438 337702796 26452201 944809894 141843383 431876565 397707226 131356668 985172168 140417858 241798149 803056702 874752377 206018523 73820541 954833180 222452734 502520395 765217137 593620415 453651372 111162063 741138759 107219033 118665061 206217286 526336474 632253881 949448139 864414695 954013175 426114153 781880115 392420867 798081285 292334666 193199155 287175114 97220601 888703751 733566288 787305109 933030850 577149378 50609701 191222230 891240895 234259789 397419687 913630690 967205382 823382696 925034003 983134985 150447589 396273587 953415196 113880904 708133566 801823354 325148357 843535179 29190920 649092683 767508645 224507402 504442531 158248928 325700063 349237211 860356615 976950692 409883710 540335199 830085557 468097920 673764780 752797927 647143200 992246393 861496556 488902711 126873715 174433654 445994603 425376135 485130128 252177904 802618618 421611554 55483009 175877518 649055145 779504060 361907601 680282050 999074555 662984740 104859408 899293742 883707038 612978164 291995806 345809532 151138888 159812117 754178471 114913509 724632396 167319895 347691758 528587950 280329143 887531823 267765502 540725261 530422384 170433587 364350167 453703060 204339047 267650234 224739731 700830091 566664317 870905839 332902530 927984883 828692381 412220324 980213247 513046938 915159631 65318051 403715984 303430235 185330443 267381301 93217257 567764091 397502629 577201618 874235270 16616627 199663063 382176015 44367162 789492354 822257204 142490651 944236662 98287948 701857098 355804465 759649646 693768814 663145769 463194720 940325419 734625902 272982171 809551962 119072330 676654861 835341813 763018142 734782413 414168266 2627649 554779991 471593197 990222772 260201791 408508419 67493765 669184023 512805018 260373287 800751310 457100578 288068235 139250749 512508332 95778596 562915879 538834793 54304319 544174626 513403645 681958814 708699666 180973747 435888661 190037173 989296343 573938876 778394218 128981324 730576704 261102908 864945311 251081810 836467047 361905827 77416633 859094699 109944044 649745182 321346835 482132560 960945221 586171788 207846711 859953549 905093120 593657425 112103032 312135102 654337553 542315580 481800641 940290495 44556355 805038707 217092234 813952654 192149093 104769769 550801379 983655222 697187629 721275833 801321947 357594390 392111830 444127032 440330200 299139006 604714656 595392552 302132706 22175892 298357298 404001892 825974070 165215997 492715106 576159328 568622067 842083000 680702661 866048755 94236163 256844296 689463721 273279320 978499252 263562691 824647179 422996277 481998276 292608510 251445669 534346714 892718124 741441860 339431761 399220607 151317470 307909152 699710107 692692391 172487805 992375639 247414090 964910819 980835456 300052984 24193356 924750575 452948950 502565130 327504437 971229783 98732641 496216882 136871848 364143378 835405295 647947855 170043768 824171029 816794669 360474560 428328467 359657254 758298611 375133197 719502553 285802961 194108458 764948175 913510246 661289319 126572560 385091387 722128662 343093322 872713555 750872994 993267275 823137119 450159827 395483168 782748597 401559269 313000380 647501516 341289640 247867779 46504243 913470377 128732347 989450767 492049059 872407925 739376824 159531368 837802932 647898582 605036814 871739490 364005846 186987148 173432102 416941949 801223507 985325479 178497924 195921726 115913151 23747876 274325637 725779746 113198885 536536942 867075546 445743456 282871478 236169873 134272556 27573267 475631807 835657989 908639693 423790531 348591526 680492922 305626392 413309523 603557598 453821637 846834534 359808141 802472095 860437657 760777808 363890480 485022690 314482873 459009123 384374122 983352880 645074703 443287319 952486069 525898097 645612658 555939372 190241767 506804473 714214213 125691728 748219272 3169368 954367086 835084962 22972465 310092601 191076270 529500167 637025970 964830881 755841735 235907089 384482100 450495059 758373045 552192512 901936704 450265812 301468996 652619395 967208962 942269161 544989739 164933100 890351757 400760099 649177976 309978397 205229700 153641144 29688120 441205654 551596881 736079067 240004733 447616430 872334945 502679437 522340628 695382819 50971341 12509080 291152277 850550793 466887149 414630884 689849061 170180840 183733399 134457320 604891741 619909960 512426871 366898827 361049963 283361378 574524317 890383834 671165220 594678280 791755977 121790276 341920164 135074094 509901390 469622073 805788162 275406381 797854795 539830538 962006572 491674351 424421401 443808493 670470775 531452095 489543813 790697920 105653364 283956329 221322643 270802597 288081038 655928497 492776286 230081202 544523209 645006176 810681005 724024691 191069271 771284214 581888710 525435247 683915026 417349166 967915107 273951553 454685868 424613098 407911885 738802079 981549147 529459310 634880032 172385654 958760113 195065784 785884837 363417996 408994837 846880299 547852169 543771228 196446683 724769337 346810656 499629858 251549797 783930564 131677599 594392173 802154349 145129498 709555748 790200356 688790652 599163363 436189635 392152795 1193227 13477798 466752989 705529813 998234817 165393316 721559530 459290670 438027189 553587434 348329710 870749319 884096181 845994320 935700558 73504478 433276987 862794500 90539380 787138518 353436817 484749808 225396260 62107067 304016919 647908465 853861442 960167301 887679207 30098603 281270488 955750124 443102859 831057949 211007028 744001028 79943842 233175955 274056900 11391398 521609949 895213151 291690806 576376182 197116215 661694620 128454421 225841832 283713962 334630954 29583466 784360068 618444234 89341400 374199624 838002884 335241777 614263114 106389505 664271872 852865377 445970190 354920954 598014898 895976279 35397342 436221725 649005416 626225888 648505087 44921820 259904013 421771596 897161173 379710112 467819353 405140791 204227450 517981854 296756147 996167287 486993944 262878130 925420585 596531606 507330436 969039552 351883951 400137198 364491581 374700115 498651273 262543880 851344386 526380621 155215157 934920100 655438484 305805190 122239822 34080238 47447523 854158395 480493512 554327033 376440770 43682199 584258594 471493476 433810387 193423707 911666508 619830669 737177408 627004800 403429688 845637852 960736265 931377825 142390193 430389994 925129151 311645365 738730320 738831987 899496407 830886873 143986278 615964783 389469945 126469580 223211502 225591846 197752026 334472021 345206253 237240275 910639598 257623945 720525159 387553972 103106262 375364641 795489572 792891258 74898995 970685551 514615206 279304405 723577029 232017027 922731442 86283862 115059412 498279726 918801423 548183431 624756033 409348561 830439844 449975469 238567732 126438550 174772752 377657671 489260681 284325683 818219015 125097602 655167248 848709358 480023583 71718815 50013003 529784133 813112986 674463640 351452229 78492417 226187080 484002947 651119375 113162434 577978879 819270286 796670216 382023449 120099252 106113517 987945026 728351882 775008879 460534933 162103706 113487331 273604372 967143763 349092829 57269035 693943191 551622042 681889193 420027621 119562296 350495143 848897503 629535842 923697094 557450251 419818211 604562105 169578433 506475582 956700802 140597387 586151955 382169075 861626059 735764245 762060765 853843732 686524192 404753597 871911494 481763255 325768233 439136827 74544870 973914889 450203680 909651233 558046402 154639430 136646855 71763293 322651915 271966907 538352215 547472008 645843391 929093040 22689388 430753025 795107372 82057335 204648175 489431910 956686635 895579792 653333637 621850898 608620027 960411045 128488620 747651612 577976946 63579643 797135734 364680047 196329957 742379013 62543384 913951797 677003046 291525858 906306516 863430314 677579212 451521531 783783455 402725133 445833396 989495775 610681086 488659495 96344672 487607926 958214894 915927255 914193079 858135329 951721264 564961012 846423865 945839548 652271709 54654641 152154995 366196473 78028504 261156375 462826809 44573701 512093527 383653560 473014670 593090583 81663552 622737331 645169865 199368679 715127431 878516075 985388354 204197978 738774876 370980971 292356307 181116423 923210416 484766021 551044470 832968315 355005601 317555674 340930888 7757732 253075071 683839000 297826696 337098839 795026086 89528181 280893602 937752210 105597643 754269038 501833339 661768470 420178591 41041485 193298620 896101832 645566292 942988843 173036914 909473894 325444767 413566470 42320803 877249786 725351698 82346991 803143368 297728572 176384898 377393964 789095053 612926870 252040041 931334677 793949272 402430458 395984717 900629429 273850958 182996621 453054609 112803895 726035430 969185163 837900903 211689992 774317224 947424451 160093766 728626963 891938558 119865075 228783338 840368255 195004220 344287008 225397174 307025138 136317354 576007288 594077796 755990354 581153138 575029697 122254008 693033154 317226526 97480423 595325317 438271020 722646363 73605802 608472553 810393204 873252620 368891492 28543531 348124071 138041878 492144427 616150569 766715068 464296272 523816346 625797213 706428626 253579420 748391347 925218999 141829722 156938827 319598013 929643807 53028769 95223587 566676891 522874675 980835239 236744031 967338120 988071989 756975351 383651093 850324770 802479127 279233591 107013317 599561133 538757426 74100131 477570245 279650827 100771192 90194492 548796972 83344887 3604774 871661492 62169577 998297245 147230899 917299227 369880837 916200244 123993938 898318140 472243059 237647683 195772108 105864126 336360940 826603299 317784741 141773697 519122829 530593370 6016412 83017377 457526077 418840428 546720736 927773992 392228715 785656713 263855535 243536732 750643424 994967258 642179006 995180323 473539752 817198652 172924885 809880923 60665041 48665344 792905065 468870090 561964798 324818392 645650192 666491719 647107426 63483764 563668119 690252198 837192523 140505117 752813973 399522705 92958308 655955501 643719554 205867831 441686630 749275846 408097571 843482264 224672158 525260702 149835836 133140060 645952830 435719321 512300918 729052873 148885515 488237113 855028010 951319504 122581187 267866366 267663766 697147518 547709314 160888542 781932097 502143479 226300565 664290958 7437827 660653371 12441592 83429817 140807553 74031623 889464726 485636890 905888689 345350774 87101552 943874293 751158750 104064491 102287856 55776801 535805326 282756668 686126896 723307304 552319221 101603413 441184962 356884563 562903355 267400150 629853294 1762926 589537393 473606994 726866232 397556548 651909635 228775888 493142171 714897024 901384883 22565255 43017662 279977962 535924796 388920128 395486930 265562580 391112837 342838395 526763675 143020453 336168669 264310026 612714740 686539192 833155938 75822911 439507508 298157788 30302968 295065535 261295776 330068229 404968034 665661452 626630573 411023234 839024527 84716567 297118605 264696495 707284132 806570265 137657270 852910626 404626284 825869035 213785406 174919513 991170395 912530232 300885600 647842083 71645814 801689758 702980423 943762989 842249557 992502908 567949053 817558343 733990904 77632546 89465477 662053780 347494899 709436516 470644167 443542090 134520868 237438363 770221861 459657176 840374543 538985166 335041186 165445760 849753036 414595852 259023577 274521262 613985712 760660192 504793278 843641388 416421736 797162555 93992384 409513501 665988825 364967460 964615415 887602206 242779471 193647058 984330920 642761649 365886254 601938538 284022791 893698096 128168159 691464135 45596205 968120103 271605016 318994915 102553588 342940294 577346277 361628782 853049918 338200933 292465404 176275909 746985644 692534298 283549720 558389188 809295772 50083075 852028951 415687095 163430487 6298736 709788440 691362257 302808923 863909300 53955563 439865379 922961047 765224961 597788018 835012285 254199701 811813244 367266869 384027995 5244975 624200641 333146347 189460741 958077899 260830572 754469585 869614660 995804443 92532436 188221615 308391987 243130024 218302838 836088409 818425115 759743946 554906232 614702746 436513074 28532424 388852527 725290237 888049060 195147210 934147716 903953369 195178072 69124893 267459232 562999590 818644566 455548277 240751968 836263018 323731463 242121335 580287879 70422100 849263428 573354322 431219104 591152860 83305045 535983851 749163798 718917405 280622244 684533408 938362555 972033487 146904820 97630714 69777611 663556367 727066851 296207357 569732759 63499190 541579926 677232536 818237766 718727695 118031785 73113515 662972143 746333205 961903621 255526834 807812122 403713092 678591079 56150658 152542064 317747326 514438849 189380711 686643787 675817937 753919159 463182630 460915685 9937203 19590445 331420104 88380020 907723890 814255054 58072094 599254722 966253358 986108244 697990597 244587514 240629004 608770465 7407836 587604674 777971453 81080611 931652133 144980776 72320675 694638497 553453946 828909349 310988558 537564821 498402905 749935963 230765177 381823205 816527395 308376647 398463657 346828143 531073644 852490475 351682591 531424797 361159963 428597436 194876332 265322991 849306566 983981738 341516517 529367656 817026012 805028973 908511794 133087211 402606871 508339105 125001932 455353812 906830570 748645515 938835404 872908383 985702341 350233916 742766456 964735271 740214162 603591918 357145444 559531014 20051630 591130008 44654819 77592088 195271123 702331387 190941682 809247195 314769390 913120949 823710585 334160731 918046628 302146749 35238983 362738194 204607844 490075807 229615280 421608971 525891029 385169111 571038872 998655718 222933652 833533253 204203586 415515911 322266674 688781773 758660748 810464720 532774673 495485190 397558964 241392616 522677896 938480246 655693346 641779869 647077027 446349804 88460565 968599952 324662052 151733184 8867980 990388359 283249066 161177109 16578917 792359342 176237880 919099269 422057948 89126827 575688199 18123551 960644678 122260743 508050575 513127542 666494978 578052149 22513952 542926316 31758327 65452284 829697599 274743336 668951613 932152687 314619019 919588137 347442201 658549130 887858820 600626787 904003261 875665979 940599912 998835936 721664856 314991476 917916534 114639424 591850081 498883929 191955988 952036356 480460826 869512348 968321980 567726838 855821024 527732063 25853669 14605327 398986273 824689184 781872636 378970523 457728871 270047366 922656149 538729610 826638509 250873711 147831740 24295298 883023605 219292289 531851896 746264555 371407539 427544811 715719582 161893996 256674492 308217596 713098697 955849797 37964655 883496176 97585218 573729071 831595339 533972927 968435770 322487497 817681677 987654664 312838062 235252887 4113040 900791395 118554350 393009187 146492392 899184870 264218742 883159503 221996162 588826206 223131673 745086202 998777918 777175482 411244000 585397135 543742913 270110654 217199707 978683568 916574190 547526400 487732496 988818260 909457282 266878670 916162067 146600812 497390178 758325925 128832105 916164909 930153990 405278401 691429797 15877718 939705115 81715890 980121884 141507251 942245245 293499915 673867175 693693999 146566805 723621738 286869212 623847235 171339547 57136026 168109445 789247427 804845784 103483848 893854064 285410066 161528422 678564261 96690426 916460663 458680527 103862833 98351882 727780192 795761605 686927861 198134691 634620887 101115846 839863060 570162581 558639606 488566916 810594173 297298330 144270168 484379445 201311868 253145299 409504035 364125182 680971318 865655153 73499478 619297186 639809441 489285389 878292770 339673869 199712079 792768425 277663662 494381545 208641000 315506459 274989602 779331795 732549957 960520553 890055576 324221327 623574242 281314182 736744420 445511872 900783205 372751802 281755729 562727008 981209404 953108489 709581828 621926763 957228394 717621405 44796761 990843180 482795406 591184482 110186840 986661014 593352150 158361568 991524604 701088678 805539050 231997917 572393363 560057437 19856990 443668054 837965988 169289148 749756696 598438982 34977833 255415108 672569300 975675913 184160678 277403909 973346623 329865145 369360653 789594993 741971789 298593433 90459198 401003260 689863066 570255997 713304140 698622757 991237661 555088271 76002022 491987022 172631169 540275012 803173937 342841836 93234570 518829242 976495746 79306623 189492769 954844936 982049600 351917887 70923187 143741165 197082351 754942762 538194038 60715559 745140243 42970698 42135491 615559893 660291724 572979316 437783957 335395171 247925657 87720978 13001989 971776018 662899720 787165615 937864232 563286136 91518819 892199896 440524176 342217085 192556930 608208190 714964040 563751876 934827308 258819623 648213237 449402035 96424706 471912602 909255891 895299025 789489003 835355591 817743409 380376371 542017302 896994418 546994588 454235022 104050134 488847147 29080323 504316832 464752352 107721582 975533941 129868571 34079331 893035740 530965946 260443421 289422748 994510831 686207351 525624799 986316804 993614299 279748478 183910714 74567845 385397233 328316063 383405681 904756985 224629155 680534318 994266191 393075965 618587009 448199919 37089066 300109404 799344329 105415467 576701882 102166217 838043690 356712321 939948336 268833130 754928855 531275403 521125350 916719923 134475006 177056018 858989466 735692683 127560122 660261884 104667799 43936364 688246928 415409340 694036010 98844223 682717340 442631788 30694108 514823969 184660985 393232928 1615180 236343012 621587773 135877850 379527249 678639850 682277879 571154034 748223180 771116104 805449839 376778491 948635517 75928004 493013841 506796333 127947141 417209251 28580060 597525257 420195799 866672903 457726839 820511804 939431924 591480759 403295888 989995432 487052875 443621904 92861666 483866555 610053250 566096177 854201793 325857833 936167047 74877048 537308193 664156971 995503433 694386307 846059144 516019681 74707045 745830393 312748097 163159219 143394208 148615464 377584284 458326534 880687322 938119431 431836398 235256121 532335084 10965022 385832574 21176730 74566370 523421501 899870135 131819007 526237909 65869343 264283535 893548296 192944233 365815895 595324093 765797992 829190089 433045467 238893274 150868904 80370428 19054672 886543080 333958869 47362440 550086902 884792428 262664825 812763677 11484982 790332746 668003528 765754823 423671828 646249993 247885906 659766198 943066312 193288594 748593766 219349929 446738652 942140521 514003746 471356081 480474858 160479498 290182379 111231155 870207694 158883866 148155406 370938888 552187154 194569856 736225835 606741029 989689492 55810967 308332104 51438609 990446631 880812422 359988971 363808156 950563418 405627386 255218914 807663631 456248525 798847540 357606817 901621772 373826127 494298714 20990811 592069364 790768248 891005489 695336955 224190549 681195085 9087024 681952240 643065402 997255741 89849970 295529136 301730167 163801428 97608178 252756598 721778707 182432931 445223335 495627445 834252508 167381832 299118453 9239173 254951197 410344276 40835947 513414417 826012671 109646698 600533087 710146825 998067176 343196768 371753573 854872605 198185392 404516823 797181828 813899824 572777637 899030960 749938302 478813862 326197285 433224051 958106596 867497863 482710917 942178876 729064817 742994257 797063921 698697022 581235811 894188833 581299597 6363576 20506172 915130840 526124503 519459361 427399502 980861293 447758579 630692958 384334499 96594148 551699154 739422838 746087452 195036999 996785459 567807143 726264231 485586585 640714105 399731831 921883652 114303800 271143395 275630330 537477463 691793826 619525312 725932947 949956863 406660422 505502738 690339430 88014138 46308729 339720885 519709126 760054817 885356873 60288117 124603205 768807714 883588299 252316559 304304867 912114148 598715899 923003629 882834834 977096326 755301477 242064248 901025656 709581418 377463456 713354260 4307193 397336715 175030305 791049467 147001574 387194514 34180677 323408775 702169529 480881057 649774655 90814725 111470723 958241396 601716463 627754927 470075148 754089838 924651062 496294049 80981431 20919322 968152515 710113722 80120515 98243563 443345874 146578201 2501653 81024271 829163292 604766344 267198179 683240342 299394592 779553852 817941788 819503672 930235979 628734232 652859103 295479898 209932984 751863177 357692271 488545075 420693484 65847414 208694309 885298229 553681647 369583803 907789738 517697453 904322665 522231011 998961624 660113953 967726436 98680778 866698937 655799939 754294861 463334514 363168319 22636496 930329503 720408674 80772558 427854196 344451210 90919804 750364480 21267702 296030178 887035852 257159146 357816533 70969507 387814101 451464477 740774716 51223950 986933155 281419649 254061915 89109943 352660240 517193090 379594182 628320748 989290281 815589777 795673352 621211271 446531434 716193170 370276189 879921834 715737407 3119879 512222024 694300672 700627064 325807401 956923372 994688343 358097361 979484405 460494993 308851470 628853143 205702356 464301981 6808985 32991489 696572593 224978293 800947464 504863744 455177235 852667877 977206375 363872084 120822108 962112418 976850288 205476164 904452249 445538402 787888470 993192527 549450765 152110710 338741654 36194547 53774625 561108629 193112841 256110012 913037993 480329999 949619229 875564450 607905364 250418613 12946744 205497059 546466931 133591371 3344243 554129082 43301119 356788204 698711512 56816323 294788483 290243553 970123828 230510305 995944630 451406442 850645321 399825761 252066836 842246819 460890751 871228022 227956451 921811103 350787594 112496959 214601023 40475321 720844570 755175602 716161119 647891004 353894298 373629857 177236849 802017073 565719761 541493193 445009447 271938990 233412784 620076670 862870645 237615724 730223582 505913022 799719312 781230765 747148237 535317902 306042424 331401 513657948 921999146 408311571 625926396 192543966 377445193 889123561 776828881 715982250 772351891 297068802 59384060 465597068 599615456 957720627 185095505 724212946 550464102 687390595 974873771 97043702 51186429 884513432 565408072 296677854 138589307 78148942 502413466 35309621 124998443 445886413 703238662 843503864 865175052 184636060 552774980 810932661 896672682 936653242 183423723 418181926 587474885 131126308 774206412 850177414 584959588 407836043 48039342 773284483 372345304 499793659 236376376 482102952 487377058 195113744 845389614 946628004 643757005 841845274 908044763 644432504 514391572 494434171 467000145 597863850 939445135 995807542 168109159 153337715 313690975 664264446 96304285 279964374 234927493 656979858 689128721 333671233 894252231 891173247 412068124 532326634 774053028 188076607 605986506 339251506 479450432 852135900 390600821 828885194 386084353 5720850 262760340 329674161 197006831 210764812 635853440 932872386 836052774 543135646 660710806 652379252 801872200 955227941 937483667 886241379 622277438 833146423 66141688 991609047 646236044 178685713 4557521 174750556 903115245 174066514 604485570 252280384 71118843 810214489 258090874 93439237 639447427 419725879 80241453 301011381 112308420 591099227 843098365 76783742 202136416 538209642 858343116 10141498 989352773 320145684 700535041 385787567 821410468 600484355 926690965 580326549 89244968 306299190 566676735 332862170 601475374 334155680 788431085 985089234 550279463 443878681 937505617 213426744 336378230 626023531 198791877 88867255 567889460 456932629 195467753 738483518 576434398 675139406 374560496 932003788 106982684 510614673 223032622 509302288 580766027 857557004 313555758 436202806 236902020 709950595 411710945 337103150 827097171 893613771 957373997 958426027 817590572 785977267 28982345 334213264 270215260 602899207 701257678 418571273 315352092 189105996 501074576 127135440 87437863 601053927 110764502 713953853 40570489 468784855 140356483 848360798 706534355 892576952 193688076 175177529 228874008 31794749 97474647 938014485 775954451 20256764 399595466 322652361 686851273 169678759 855619176 193796256 215320605 40887879 130797885 220132881 943704939 426776068 445373467 597511458 488545557 203316260 214801340 208612476 438091360 904255396 557049272 608060395 625644315 6645137 344225774 40961925 600780852 664370393 47925662 104691758 77586239 615214036 767548206 840667713 381754496 14875338 605885752 766637621 164766738 421459509 98310944 754567846 933802776 462086598 246061823 518246223 128698820 501792772 76549530 888184255 839264054 526996026 255578653 818272074 386718299 918748858 570840652 142624244 688390146 644757616 113902578 722125416 797717048 675645001 77744998 462948365 730470343 880285193 403706134 940522825 277678791 678293612 233725691 540150448 276301649 384519709 838435825 595354515 138200247 717114625 421383899 206977552 910254275 408667302 745624343 677534149 542889006 414981254 426013573 275419239 179069567 818993124 304666712 447906155 358950401 507962122 102973146 37475344 325031504 199635071 56866295 366538875 165647985 331711626 127911740 964349349 458012622 134190845 870364796 967191300 511080956 241924915 268696599 316786141 101151479 785666572 945019156 729144460 881463185 14144039 532358804 972701420 126732676 782444264 668579674 917417277 908531721 120072953 201473504 584845153 388426357 723123688 462143549 899365925 189550643 861790994 631316897 633994056 760003892 564351604 656407425 214923152 316154257 332355229 547084368 774978485 109118719 390052203 853215256 76292830 967640296 565428908 54861778 204847656 502786223 394698470 274756920 770771257 94261635 574050134 164395804 75545342 490347245 737665926 904453975 230331974 302548489 815501748 763806012 523175255 457030321 306054912 704660395 684541219 608003114 346913433 538909304 143945620 246693551 885015598 920936310 364931844 831353792 591964458 189101615 669593022 640425078 997796235 949719030 33311202 836383096 82513253 937564863 674512768 257756401 925343369 732504691 637516085 582864068 231355148 139525609 637965141 836406151 174991855 839562447 150956674 916626469 520721205 784703988 570236411 923047659 30030246 139500455 737360783 212820345 584681247 304340851 731799583 613445365 424183515 839958523 332168698 217061201 410295013 556252514 703040852 712425182 141680430 608272768 549857246 403101074 777694754 646883175 440179974 801783275 26616509 941560487 44837310 548807116 501443094 569586356 709105617 210150274 671983348 436223071 113881785 223358810 987563720 333064880 938364409 807430641 468770659 855535730 895695264 875126178 548222993 993497112 438577760 63103666 256513433 682559308 819778370 944265111 637385160 696182658 852839250 691731173 129805584 353909088 392538533 240140865 193776843 239754241 563065897 838538532 768231368 868577173 241738877 290797159 412895274 722128480 322493034 412772637 74479384 596325791 56746781 703473192 420089844 152092783 487814884 306574406 882436590 276467888 793148454 592612734 176040207 458156285 300191772 194105044 332883233 139996344 62823717 787991977 131919940 519713416 703787120 403497365 137164384 301029374 514627224 522227388 897734282 126957971 490225172 15530956 592729268 857073138 662934765 87827761 435125277 805589299 869702826 915539834 489932759 312139982 499129991 794362552 615733595 639407611 373162574 621726200 840755405 253929050 396029564 744645731 231807329 340802134 596055174 801780996 693468114 408226656 849092063 567889779 551569986 504458104 184166005 249540881 312230469 945922596 295681700 285656438 628995373 276220191 750772062 953017905 71007900 929649290 29819425 106051669 70406940 971311807 979117797 511405398 713422510 129583744 30016178 613228060 445215277 549075896 909322966 826255065 669544201 263519903 951752509 272871781 501398515 987458455 618621923 851578969 680686662 116251163 393956507 278816354 122237514 359108274 368297842 878922934 782879600 803221698 264645776 937049886 354411790 695038176 802393514 722005452 30036229 262486920 545359896 580290578 310691669 310115211 983868853 75790629 943428302 787316137 760762140 749811680 942333389 712667097 431307667 972009533 971324424 862947550 590978629 140326854 926783815 8634296 389338593 59061803 669581327 188327106 892724951 52859810 790349836 405037255 238913769 342781125 421431876 47558071 474377050 738001475 762730522 707021930 983389573 750740382 603862369 464700544 884072082 649262523 524032916 168258820 808158286 435903374 492196300 538458243 572609855 357904783 647325388 875503898 155681428 954246906 516873358 548485742 152802273 916467882 872493132 822268078 21706089 843133975 946010167 345793986 986093403 708065536 59147521 563349764 464468027 306828224 992813018 761946831 990101017 744093518 360002251 356209070 561102770 600095101 546482359 144170863 689986660 130106751 87345158 74830825 482988751 940249632 69183464 506589319 297602993 332933135 445125776 320101278 916118816 404345980 201704230 379657574 849910903 571234359 809253230 646867905 683717749 756984139 675541406 777009734 565528919 221920586 266597842 805907814 919751982 631141391 104326827 459404131 751460801 880914941 644921668 802868624 103123520 746688949 315213838 821666366 771160848 321575701 522710716 629423011 708335554 886617598 387921816 379633023 231664788 450606725 177307242 632854411 503563113 984472810 218704190 313520567 233192011 152953313 433537703 173256755 864075158 282641100 659533576 747418306 993464083 660511812 196162443 532985203 556687207 781317580 691580346 888720220 954680585 425936163 427109115 789994173 546657052 913000143 113994296 85539261 348685758 595279881 400027838 258405774 433740886 762749200 783891734 69797509 194770412 519743548 259070175 83236703 469761030 173757968 673397619 579647176 641743134 187736197 216403021 805882305 195330715 357191067 333359163 559867033 709510726 383444827 200882138 480544323 181040487 946637315 629627291 381486469 43279539 751694277 660660133 644611156 663436799 535236608 124154858 931803995 199251866 828140494 498497359 816111509 811071642 644393032 704944362 743563017 895446417 468378214 602617207 139674502 837742538 91754440 225326016 938625733 294438843 338812886 968182046 120526748 423707498 226778903 687770809 736845046 73593277 412504028 117299424 91705117 771573274 783538656 330218873 582090860 418149644 633963911 685054339 905837582 528951874 508132609 612498661 347835201 442680197 133306961 904980026 168926965 365715269 829475855 335047348 976811721 405928583 130295918 77675442 596877889 233406640 720001631 110016790 703979040 973503633 227006430 914479259 968854408 13648625 971997664 232481051 65975825 909621293 64447731 569207709 358148533 939569829 132951541 504465249 582017776 36501353 460197587 831752611 500486580 336117074 273297014 935412626 344361268 581945105 69177770 768722153 889169595 660211990 270870952 3430293 957729939 300137601 346134565 716715672 701357035 83008966 373775115 725557783 5802532 411478054 196382501 235679767 217999408 436178177 697354569 116609762 748238965 564695415 157279384 346459361 867600101 860239803 292574086 514802998 645580540 176900747 263135884 147650887 987089011 649760148 944274018 902182424 925855465 524766366 471193966 365506430 59945806 753822905 198185767 505129062 619515519 705940903 766339732 382592919 331049902 752433402 629916575 777492146 359085922 437116395 20519539 70534979 48868552 199846950 128789388 222863075 340057346 466860179 121278374 437456634 878451452 761179099 374826099 330957711 128323944 502739864 390844986 753658060 897893386 554689218 212179269 237571704 673528291 773628931 821471663 601860783 129673111 48609732 540896694 780607391 532272558 348471860 290217563 539160387 21467951 427090174 832590213 68427769 71369375 178564595 805701743 442588945 668693607 756518870 254826790 815924662 799679485 351133209 125316082 12870905 670089608 353684124 629231776 153195714 390772593 895923725 320368108 747502180 873158815 604557789 669761668 248650271 854639574 12392617 809248822 113579769 603286676 893788731 974248159 951262642 143515213 557593843 529241674 559341648 109474769 417566837 192163260 658416541 954477779 332358229 666613063 724178792 661901241 301678793 236317081 649172327 901876233 331857404 718488399 157545420 540483183 870697515 950732314 7555251 971643737 25556131 625617622 874833497 170376308 65459419 883816884 330745879 873636343 329470900 339384235 762417309 326224931 518558442 969791032 191361481 577524290 370314148 958431935 520062915 841845184 367227591 917818080 934057962 597798386 546766540 123275226 757804501 434154752 640797637 20306404 916163485 704058495 562097756 130182324 782089480 328962799 807282625 112327944 401055049 771593886 111451302 440017378 781593361 331063875 389093505 87308631 193684826 207197097 955870041 722179922 263339888 852851766 200551142 269096399 225790812 737415232 128723555 472095460 949945911 452956799 56314735 624233424 319047363 419095793 690688013 771906392 97136801 947349399 223373230 752809492 350131511 597710958 225280911 54172896 580201811 606040535 219918905 12792365 894329538 871056824 434881251 170279528 71486815 578347098 458733837 169011471 635307705 70222224 508318614 959547820 592786323 588478880 797571665 167260820 881007969 950871722 56696001 522910849 743085349 89827605 506607061 78143059 649925967 699068084 436470260 637250986 202289639 277433886 874651091 270699599 240006954 471619011 429719009 965991007 279331917 251193131 360868916 112550496 389169621 226531095 772137913 88033178 879257036 489998861 745638103 316381764 45208579 793206122 794844558 838346668 28178262 854164977 62400148 555085678 627126488 413617513 389853719 36575908 812208970 524059039 888535273 698825916 341968981 352205094 332789414 303021774 889740750 452613106 156042673 260196819 895684490 132862602 359607505 609201446 988065233 618468628 884668199 903153750 564155715 521226717 286598128 454759163 208882542 583720268 361652412 892219940 601077280 184303286 559074717 399868600 685659834 26468566 445966159 958025399 455344775 3415050 946757895 542131647 561781548 942582515 583504733 66620050 195326074 595849420 478263327 941174903 401658371 314584980 580744639 65385216 719814646 152066533 117495809 901531902 897481276 120538947 973756414 936200216 860899304 62329461 397022190 277732889 736522962 407705670 343932326 999783478 337422379 354033855 949495735 626195938 363404809 992020972 695586659 706592384 67836424 739656532 669600439 133016819 113313069 994214243 934553616 492536466 252899092 569009494 598274961 397782993 450029656 601274369 727438268 89522342 877891254 895456395 971754800 478999600 272220034 980699628 685949799 21857093 861073226 700637957 10382159 27412358 414803135 297151984 735799575 932980992 669769460 403334734 500998487 114298362 991177784 418769733 525779192 190439148 821762769 395604447 962744678 67838082 179440057 755391835 790031809 635632935 318472128 220279004 492510158 370180306 503365311 272258435 715295215 293665625 632955946 189991551 33264999 850497123 19699286 805637925 877589724 268913854 241154298 45112638 614867235 885924931 188476248 192337417 9973247 529261376 126665435 320277516 680468640 803829783 981215492 929404166 957187813 397059657 473114824 214196527 161601059 724271969 595590365 926562868 682724455 462979426 494401443 810614384 996957314 185587314 983649933 502689085 778564966 503309420 977185407 961450300 454357209 670747216 819281307 905806080 264057305 226297545 985485229 524254896 803464398 50208762 157891578 947481534 567902486 479503338 242976486 35096016 777213218 66551300 342965547 674946705 268086473 640293229 355103196 291902353 929966778 800179674 822701837 860709634 234913020 609296530 209549763 560263202 567396401 907940311 129755367 119166912 568185042 936969570 247084697 366526203 305782875 500430139 449332343 653483284 706881947 513854579 258377400 226961994 203384848 683036848 362566348 572074134 420333826 382812007 899895987 231529304 648894547 163377752 182589048 646215960 218063720 614594694 438924061 664333552 578309999 569631260 897985830 298619822 906932971 391155336 277964984 417246353 805711922 693410890 666027660 871399903 651146394 446177649 53003363 139909348 605485667 600939245 950190967 221621252 194667439 756015051 162220876 476147530 373876943 831383332 19526012 580850275 887114756 357042496 314434895 837482459 40228042 424704883 210557715 779369594 625974299 161947455 794813467 186321917 631950264 425159980 805408901 594437929 259346553 949524878 317304040 845672247 746014019 950139471 344296156 607688296 564361137 538375465 691029754 693861501 168522848 178483758 260491030 804600478 487271992 290636424 86387736 265755528 348365545 903359770 905348954 288023797 519725209 137799723 845449960 771135973 202359000 996509851 236897987 57711413 199822583 792238332 507979871 174053549 919639124 244959076 986222021 11224675 316800076 758840509 218118333 863877818 807874525 608359008 550410331 83341266 679704963 732464826 193827899 807041128 915710700 887795059 306955613 253861668 144011779 397759371 892867449 578573127 242620302 70789731 71054451 566431550 61338412 953193546 222924362 315186610 548091527 213118422 727634433 450125964 791028958 375647057 488336434 282374064 338349992 481490440 434901346 378918738 353802019 72518034 527916226 593757248 32343464 409833520 749104826 651821875 627754187 356956366 569508192 246999919 564671678 16959505 714678582 359541288 748667053 45007749 435548123 106727516 155397926 69761805 475884103 663929924 506959587 785301302 707646305 845702674 59277790 439366876 847283111 386956553 181322378 813766248 775804207 537742608 128526483 136262499 655087128 571816761 148608599 205223302 650651603 379682880 866624497 688841766 245323452 317358880 238436341 123686350 475969094 473972438 200213238 898153478 7945932 9972432 751473608 836093107 254341696 693442544 106301676 74234820 881683918 531589095 49806192 362641945 77612786 494382788 698780816 640244707 69993734 203299220 184115755 504082868 177696024 237762296 162253302 956338790 993332092 659489280 75595262 739053258 224153468 109033636 922457133 366302872 450711521 800414125 257469552 315611690 85852154 56084125 594454977 48753819 13794347 677857282 838251472 494507325 227630317 904870449 653929244 706144979 19705705 210639383 924032768 948204160 502376715 465019994 945341734 886637510 779029678 356173019 352763571 27171543 352752373 327787747 271607033 859914018 707444483 160438567 268567703 638062088 904099948 745871017 221244349 449717849 347439589 253351666 594918176 219150794 460113167 529837979 345576318 557087397 981624702 899506014 539640183 651361628 775789146 5922811 990591570 484287446 540099962 638235105 904504186 929195991 672215384 339123240 780419528 762620625 772184486 128782105 674464830 69622564 942581642 577424623 324113112 598522577 877508655 340637153 930213761 108224962 667662804 256112526 769158258 670272813 388816001 726043828 600075122 879950505 888715887 966687338 637613830 478459069 716736281 284015505 147931061 241415800 453442795 157143044 385971295 75720558 479346008 538105632 107348973 783441533 224110563 703993284 490999224 931149027 540420104 888066419 629653141 375307724 145771676 832686529 361948853 50956574 62615077 280710765 783635856 423824970 284465220 187996967 20339941 515106116 968406378 64975451 404895568 295264448 918607457 762206389 338610120 235005216 547733964 463514035 733676133 380008953 177561199 408307773 796244833 128369231 351500572 90858857 255677368 599429115 259127282 408136906 352621129 653776087 616424177 469873851 749380457 547861545 99987442 953842603 300142446 351677138 90941524 686318461 251411193 232585056 359401222 975183452 414533875 594495934 704814846 908066862 586434717 210277653 680317498 128164067 402805364 97938325 648384568 105879908 739302835 741528755 312697887 711736535 281584150 711904586 199367534 85536166 297522388 542151238 309180195 814590423 115676776 756395837 57746223 949842544 162644410 4042940 656799391 621842421 121270856 820234058 449555 351126250 674364231 117368695 592547409 807423237 802854454 522918885 122098148 86143457 785936865 348972645 140901981 831298603 905653752 462647735 705355776 606689903 248143675 389079356 339276895 389588189 715797420 845938533 652201889 555198047 582877965 131513282 631599450 684876718 106899364 557154944 229582791 488454318 912871532 95053668 310763562 877501909 200786379 349718575 925913440 780262625 253639675 269381265 440747116 360503827 212853148 720735952 121476642 453945355 163878039 372432118 396109815 667938571 550465341 902073228 234181602 648079146 565809271 660847438 87116208 34001195 140525067 479233413 644233930 398258571 335347674 372314048 480275121 543510518 812235338 149192615 898122367 249769275 40606390 863068107 955000162 390807980 159728097 974022019 192692570 369105507 617588301 453333735 58797745 196968286 649775350 850143522 327206753 511683589 762383653 238056008 629866197 140894254 653659639 357584805 684506068 530229685 889733286 955808588 929767195 552713847 79469492 856377937 532484229 634382586 600221988 416482960 405289091 8101182 30499247 131890016 927145119 630831694 323129501 94804477 871580191 100747087 510451288 820320262 664294298 863440262 593042431 351943916 598622119 712014761 629972417 143054041 695297983 898763836 698544492 382894398 424990317 664357683 797814518 753116098 400483700 372491584 300201894 968693675 557424800 855710922 398826404 37138003 623788083 816484449 681252410 380312654 647815218 978556347 245713769 763058887 872800506 184956322 379736561 338227120 492048731 887687879 64916279 941171143 289791947 696711967 69685470 198435469 240525771 884265316 687489234 962477379 948978028 469961308 468458283 629355388 684371657 842452705 333839065 848183034 721523283 864938741 906009833 414435622 341973699 693934735 545320679 151726310 657340620 419097051 914681511 69295886 750480073 229330960 578841048 52900630 332896626 183947082 623138907 304978069 346487927 582391504 128704835 819938012 145348743 412693481 497404168 1061271 156997853 962772658 329505590 480717708 280910406 324368708 311844697 739911146 620345995 240315751 245523587 646080380 5270449 408557786 773378349 453604476 987939776 286404712 98134573 957266410 245515194 239194614 355091185 985881537 122450920 288408190 435771543 47117002 377301163 316040725 754860029 618325910 136056155 579699849 759878839 374351346 468712505 607045941 865532137 337498524 668532752 60177602 220543479 657462744 317248748 302096854 661185169 694093866 643391721 636025532 854926777 288564601 589977992 78052259 211981056 621067040 870329995 305141319 431111463 596363822 915463962 296224105 304694738 817944426 406572984 419092254 343801552 74264975 128296241 156531049 645858363 603380929 505300524 552751879 44563600 357948849 587335450 167016316 789565182 701427390 383547828 839502994 1681861 771929628 588973057 304969205 281237789 844378679 854024278 999348774 895040232 518884654 250061552 629894161 712054816 379473932 120961113 865073597 672730107 441171451 508009185 541055684 382055072 960657519 479837662 665712976 279111349 130085331 630721103 359381291 842853584 115595146 18560255 224467946 102614431 322619902 572191631 952718904 787935691 435942910 499951814 512455414 593667406 705640988 476661957 721268041 183322720 861862192 554035511 159289129 858979343 858687317 577312402 869841453 200084960 998463980 282558726 663743993 187267748 306059168 15634340 546194135 594710559 534999518 207582117 123458372 767788522 366817513 314165566 325737289 367562235 470447363 9010334 61266575 398114270 45650626 775561293 790409995 759459701 958455785 436253508 334496716 114448441 845221263 253354068 994968777 372214844 156704313 702346623 533701682 772462480 430351650 135729062 582411594 670130519 180479173 688192199 699111575 318748999 961861940 41314410 818594091 222263474 839077982 126061462 974593706 690582274 81338527 570422827 813732124 938851604 389759407 807889782 14093469 118566279 853735519 690769442 555594954 906741570 879540769 51492920 302319362 537334203 842543999 817165614 395383949 990111887 227835271 321055613 513121329 531425374 926768459 233618761 536694817 420509127 801402062 549106117 709858964 763886272 66331347 294871495 328690053 432118940 759168542 276066047 472420339 107359331 620115245 344743617 396782897 301880176 913146387 350420596 299388112 325222015 586165182 960080738 369503958 89020788 386189098 291831135 66471329 67336052 72440555 240992846 49974243 316041935 561542316 629202915 163019781 337116459 596055912 222728160 114591190 521639348 303926880 821239226 951243264 840969265 779836569 995478834 438759767 345931168 627767466 925385757 613619579 422600650 358972489 268957923 474026072 597832380 205367829 387615985 795600956 679361090 476177546 80827428 682340822 977414285 811319368 389250746 121053874 887552451 267830364 248427008 432830410 460031905 69055157 162416410 72599296 477269903 542281834 387159205 81863601 809529965 788560121 568252793 719575514 415840449 125433288 101825009 765860164 441658539 60362511 615957184 839621138 576821674 906622630 144583511 49421270 697518655 601612705 54448471 584217675 187328211 190300128 740610139 787611945 155041651 252192906 578143230 1574565 735033655 647383153 411195643 779364986 846296867 724276322 34025009 770674179 549023004 308641778 951018099 900060376 309254391 989087964 442581199 919579261 984679851 632300288 633180726 148588254 391753418 107079936 388268479 940148795 137711783 845943964 627856287 862309905 240702633 508314261 952997707 385182311 402838404 69373560 415064286 683639037 160659353 119940739 302534912 65078976 885071303 991265526 396268579 628192718 424830486 151391604 250410991 699652840 982226220 896741487 625422578 873785409 6815687 641579603 916596375 318587404 170497110 54874942 542502143 286930532 794222697 248090275 395217978 705744040 276854355 347846390 935465 821106753 599869071 458442840 80536087 659300376 220212392 665919071 514537905 403635649 914985160 570844136 175049538 843663032 531383146 382365625 106727179 125162112 567875532 168048828 246745955 532279683 190586676 504531561 508881405 135779780 172602608 815515942 503945406 87977609 959615163 357655739 948687045 356845864 198768072 977813626 993259687 815968033 712397150 119178375 494380071 31796633 350945496 297996353 336635360 357241989 768188360 678327975 763312024 727432309 725832251 122375665 10248754 599343560 105121814 494211421 144300459 985113768 955027093 326641127 456257768 689788920 565958560 29611852 541429906 828657637 863858415 875597061 609067028 345267413 515110931 997807217 876871870 581660048 9233701 749539331 33880813 196930323 822947604 274368277 189416256 839595280 884752244 926678432 395314477 490909680 585081436 214329145 703137749 325196808 868478882 788253782 391671242 581163456 70104259 220752597 89387378 367173179 759174663 272670079 958996659 863393689 303475531 635602171 331870108 123992717 790342841 609296372 810623395 379556733 400290661 833848314 834688216 273723925 410811487 54186538 857816795 392700868 312108925 99811288 884235863 795559928 977354565 65229409 734179401 92634048 879355733 880347260 169931520 9614089 684449082 744882584 112586208 173618251 272029419 548299368 715771050 676925946 365799661 684512816 627997708 244663735 435293123 273349537 924775414 482092803 682606310 500377335 75351542 470266179 322400719 341399555 767313283 167647055 810475939 190078878 417378761 123037294 578071764 937216663 442606019 279840288 918192051 177527392 90712471 137141112 133246986 224591766 997194925 607154900 627214186 373355658 67546831 779092237 360412250 872352859 769951652 880236310 787154023 292334193 66453456 7493063 333588688 565170227 154823800 213956668 819275273 988733679 565642909 73567432 824690786 568107350 643540132 907168062 323670638 733026851 354725191 112267795 808216206 617975396 92199320 66730922 878334171 503714310 264867536 389294873 544347008 620295605 356880646 571695991 348942451 854442967 317286070 23371057 189518180 191024812 266988333 159707450 410233425 453977984 497554011 645028580 127802162 229325483 925705786 509623 418418793 840943090 496300396 909892491 715506017 699175729 48727667 815094851 356279037 54128640 27300579 146639524 487028998 735407232 944520410 999635885 230069119 774483360 563564513 393667287 962333382 425926476 702345096 909553791 188259728 349627650 511309759 866422750 762099829 660330967 506918027 637628145 6848097 731773048 683395136 887251777 296773479 487064506 113055704 914087700 916564850 887899629 228264073 340794459 740569134 625501387 151662850 263274003 520687839 907148281 582912301 522392821 2847016 47543417 940493734 542204392 775944363 58817709 911949614 820041463 686619550 151377108 791638915 288386435 590402242 383582304 687837020 889508073 388924847 604079758 849801917 95620201 374955840 27726932 304764029 166573183 391355390 266201592 619984724 481157516 61056416 26671985 967908487 211317118 497830825 445137382 32905340 720401673 843579263 504089222 974547447 365257594 221996592 399054428 106361223 801669181 16908287 695986024 912600578 71750001 970453502 752699319 374436917 362001699 829886242 503224641 702773270 252937288 95175621 535901235 539552874 583485474 759941883 103648375 639987286 896879761 357486103 772790406 228240382 229529735 622137762 342493732 655806175 99951160 118913048 130365882 334237962 374052836 508087584 618178638 122444710 531634481 749172321 604138284 793456553 623078921 965857097 722157730 864232514 695323426 290748075 233552420 950566427 78535410 603491250 334364294 231887076 842098550 770876205 347106465 223675537 850284280 32184475 539964264 748393930 408000104 651851243 913368797 854392262 74771533 584982883 259569909 352180715 186631878 680613441 574303168 529449743 230009452 326923895 448941908 674673034 32903006 239650201 442381412 160156784 113115163 128731607 148727961 162070236 379911075 631638377 367311315 927834408 419588893 665853743 253606892 3262450 69887429 52641788 99182642 124675393 264571243 829680721 437483117 7399953 698146152 524057967 386185487 914311897 591369370 301978407 349157064 600083357 877977109 210403074 830066838 567354459 860613422 245725127 255109081 486616559 915242096 31566843 931891331 484061216 512452207 471758859 122273058 624330472 194496517 329392345 722758860 306236 395865859 655542531 192674705 542843513 504951399 893264284 260970135 147070635 221645186 887294398 14597976 244847478 78808183 524531418 16011925 36048684 731288465 236625845 94917922 843054875 92295409 565136779 58315748 897178412 769272613 211461059 880906308 490847719 219835599 244483646 859615360 29448125 994207098 831691004 432778002 56832001 567956778 599291029 10884617 614165725 643281931 310268662 846133746 244866359 428907711 287360346 688545677 334632539 965862349 616844573 468904515 646250529 866154216 84627465 274494546 460066391 427360616 621402193 935608536 646729667 414184447 468329903 404099460 961808695 785927233 790503105 983407424 872720941 128455425 857269900 475208914 239666215 764453888 942524298 849627584 564368670 406649069 226107576 780244243 12905736 10227511 117602249 736124714 426095827 879190536 113712800 639180911 541463598 601527743 870027018 891930140 758339580 439589966 68157004 470914272 491183251 891605119 686704325 291617367 541948294 542469534 347749228 924223548 626204946 175399525 962816567 785028633 98306223 99143045 451315546 855771733 844103761 942988503 749482140 751738545 992523252 803176183 217775523 12340559 4117025 628274604 251931159 76300848 300005539 18874109 731527696 900199432 477956003 691631477 474441259 342341648 477229457 814706655 4134477 649199923 768856639 486131863 861964698 553649040 50254719 470859276 89816500 222031229 946943795 355073105 320769093 726529823 848867403 238590655 103360898 922483844 187648193 814371877 894680923 324877575 86624306 813322736 262339765 154537694 505677202 421813342 153456465 859607045 156217679 560249767 784144613 739476845 199588957 700668327 399727747 711039337 261831136 645516831 287047720 214475773 935774880 63291398 127302571 71501558 428118566 894672402 541751163 148783757 999813815 868799737 452350325 190850049 830300273 659754591 717195415 529950892 974121392 310955081 447429925 698220468 595822735 440941274 919639932 169504385 573447637 129221643 766608279 788558320 44618253 847496614 694327116 696719304 585007708 328021168 561958148 880457252 503020409 897318319 699937809 851734011 393563855 949250920 776059998 929320739 86805612 824026142 180912468 439240573 829343857 616946723 482224839 158838731 58103662 842917013 306203372 30390886 770524507 327537935 294837566 136934265 142795349 396444783 761495992 845840941 957398323 528910376 76441982 552752189 377643860 497087035 198677222 588713349 626786786 371474253 20935352 283508719 282549854 497319880 427559302 653188773 891343965 451120368 607039834 735747352 455850025 752127644 464126899 834228125 68953191 831966105 185311137 224435784 21313452 244202566 707777970 261235575 692866967 623436510 738269567 390024561 636749805 767357406 229423351 665213354 137771018 791901500 769562815 392632036 688484838 309370482 124565284 659353171 992437293 555141031 283591583 98791916 545661206 293932415 1896760 204712225 316460384 536377480 372884737 365502100 439053878 725593832 99591133 317604902 879678063 355872227 632899702 246676391 304165155 167899057 443932300 147000012 646844337 121995178 153739067 237870731 433852843 517774243 443052944 26532244 24831181 605287952 686806171 585698623 551544284 704215754 583341186 301254848 367358493 688058239 265892259 295896039 528878238 845514409 535850307 85040391 401385839 434920405 245621301 606975777 199741542 957695735 762736338 725317474 853981962 65993194 704077991 597291667 794195094 985945696 89741458 836870013 12705528 616707620 347805690 520487418 489307992 1461946 817303393 611320594 351356006 582445659 740376556 601754778 711312927 334618894 244982478 693911323 596634555 222307002 531242996 175416202 411471090 455785991 824238681 778447480 57781171 555608278 930418612 188306533 183193484 135792952 160418827 515610913 769975481 258658032 752159897 714659995 464752918 737402541 503336444 498764967 764584438 69732390 320633188 309518525 728843894 305657552 890146447 216902692 973651069 466816232 4912419 62068597 158303138 283404672 947471645 84347197 446482689 441736812 287169718 363426560 306856956 138909551 129781051 873175160 98611481 427280437 124556036 544182702 307197653 888879031 354537894 792802436 322918194 123163909 406368749 349669543 935375187 22557027 821758891 597673142 483965676 254096261 733744768 781590679 990668169 73975080 604371095 215980650 869328951 199893798 953982262 956539355 292916401 65454275 384277439 47393254 522361503 474747686 950084610 502152255 96191248 397007934 397839469 447676936 743078396 975065003 649720270 73206893 209068901 972978288 570819013 159563281 985915230 254153347 25320279 332153268 432239733 727705878 78068681 971114116 8400691 921140631 514189285 964667192 79279194 269975320 417004071 636968267 396739473 120917887 663705505 347327374 94032971 531492664 636382793 985124934 260444526 351874245 706183397 772162272 637504090 568530052 926113407 323263912 92042287 478420838 785887790 686855321 560609110 325909202 36001828 220813771 563655910 358268069 663740521 11846606 677423114 513917540 818544878 13624345 857169566 738264813 382820350 477378209 314004327 479869909 999950119 304027015 712912611 219886928 985949629 16888690 836032521 694811172 200767634 722088329 979454787 95098683 752141190 663402641 945085885 540370461 951116348 146141365 345331725 330590377 541422409 284920506 510497926 520675174 527091931 942460764 266015674 37974391 350041330 237357266 277985863 369143802 204750218 972056161 44034866 649173006 463699252 68890040 147822734 81641657 378922051 871710593 253213974 682627336 950478472 398272192 222858687 796176631 812288335 813159710 957160576 233658418 762177839 166488190 800579216 730296585 28385145 46713029 942175727 832485066 676063428 759532803 370660083 115645888 560782140 633322572 381306725 837744346 258314604 279473198 744139088 217364154 640921850 626079621 82061877 146631354 860091056 202172721 812517574 219043335 533099958 412748812 705591634 47960513 798511140 776489948 830760412 159386510 345243580 382626915 185092860 694670820 425742574 148352897 96664512 868489426 114444789 423947007 770311998 659044750 526740516 452043468 165426077 850020369 172723310 18416719 517669100 444837725 375728851 744275066 173284588 220102553 984402405 793632067 725380967 617079661 589096753 579093651 53180396 941855402 878430506 311296598 295710006 10420454 688657288 257208544 430413784 35890269 244422952 750524092 107720989 881958974 427371091 697851785 553356074 756294729 131265699 508142332 790889529 969530740 558475152 581438724 337738645 193124011 335895718 81899297 829196747 213886571 297664078 783012993 49762730 414242762 514584514 369808401 48722525 699453602 52675810 26727045 334453413 807286993 145691860 647912586 232366616 782511552 530187721 405844007 269053238 576922192 786480606 305477047 971904279 546696338 198616546 285792314 418730123 346215961 887350391 901626990 877650036 113810099 965319316 83438257 226829783 722252104 647556259 993981104 114953747 167812568 603024635 943729036 684106671 390350815 713883538 633216723 735181369 931976828 119328540 898532113 773853616 207017386 356497758 674554686 651841131 412529282 460438186 504260520 705097324 424963257 341349552 685504867 895924110 117341260 816902568 249258840 351607019 859836604 559689069 602440445 387364760 150219003 609656720 473461692 679714327 746781765 945269293 199562910 142130760 876490313 996122884 615324474 560341392 28278561 807772782 898897507 836372799 602436422 362840968 165329273 43004701 294871264 963898529 257917572 368865839 991798127 672429464 17832309 594816842 803515198 22973835 253730037 66452059 924540301 434347065 79246490 966274645 11683741 661618510 393951762 769496405 915354613 619104473 880282307 779470267 101711138 849405809 751034213 970261792 488829666 806336894 436794039 633527502 149493384 538869047 439177834 713213763 196896162 167129736 906260080 295177172 671592440 475352683 730462207 782260588 133904529 757920319 927140512 180003344 942908884 689012839 96101050 437538669 837304508 856253996 733015425 252777551 107595237 306510672 707687705 832394707 677228599 585555925 681078377 338796648 907113071 174231384 825908094 486324628 647271039 63171553 470543426 12613446 692516424 84001894 499762765 757426316 220629794 629568116 843310360 193227570 611870947 950206385 98839369 491680265 88238763 937061383 823195851 229621581 92520758 858972538 472968285 383492154 74830506 660101689 459990166 493438924 47406114 673790395 271366721 806768706 723186203 211548828 306471317 41969592 944329852 188017697 131157900 429765487 693584064 738387567 269726924 24873518 510946463 553735173 542973378 5152768 143785323 499736884 398692288 999190679 51266328 813859605 67173475 543269777 520175488 226731553 898795821 701429554 36932181 932509885 147181135 212488974 811443080 153647313 286205604 266123327 316281572 40145746 576408958 466668179 64412124 615453078 160528014 795822782 237759598 1267822 413576697 358089201 320985061 493045044 365294439 612613644 463743911 80598479 804640451 262807695 917018898 580292541 793210833 949713685 487269255 241474793 281480554 833536865 941439906 70492123 181826722 884387450 456006281 153753344 83480678 452466904 248961172 464899800 10956423 45038978 925431944 478810022 257198138 513081422 110311826 900687627 690459167 629713662 242089013 531762129 193827831 575621264 755495067 301785904 285717319 918414717 529317907 473308376 985421244 45994597 923574315 727959717 803657007 399982622 220562177 150296210 618991798 819363755 737939557 42699054 434514963 973838082 269177530 11849575 348498028 230961766 706169343 956696109 492590329 493410869 527004094 565491540 597951955 856576210 861047816 310937615 757140945 191068022 668760470 579942776 83405808 9852821 60704758 826981799 564607883 70793485 309404148 312662959 745708046 923728059 336348150 207222400 372824330 676680172 546324875 301507700 746087047 682827377 16962196 481258874 555663248 629602512 394155507 821194609 131674431 279670599 570420128 812135714 644262601 797472621 900095207 612351572 801637093 742513136 547151719 454688854 620323281 504386939 192292808 515094694 373928616 339560050 927144195 426876233 851682299 858636408 581499055 992734932 710253927 205579364 702395338 641967517 260599765 592449610 738373326 715952097 985605675 985029272 750535330 129622358 925789563 882072036 6748324 800477961 704943243 260309431 263314177 482740329 681494874 461016765 175238567 902979680 435868577 759710123 791631498 792081002 247400990 439829076 973014709 105573896 5560709 752229787 370471125 393927679 420194905 226851659 428973032 806635531 744016597 816209208 922314557 315111550 375045675 403521393 399784347 679344035 572287682 94159975 18422152 334458521 760269995 890743461 413973672 38952983 561929144 100892238 797235663 900277404 676746926 657409134 962118975 223480756 923305077 189149968 86782458 31075174 559674877 626386199 47151559 210655383 312937109 78489534 986137723 508004237 78786037 797232649 782587616 241119690 355068635 665288671 9264743 614221418 813329443 404929193 789354685 50194618 886756052 442957611 916680148 447252057 776748332 495597847 265014556 679029845 428117530 46240109 885187451 59895611 993233887 556468030 112931307 602991083 960505335 294584540 469174738 176985230 212940037 372928585 884405764 736175741 659673667 760698868 39258751 306752980 216141661 563094250 736730673 237135865 566665385 322594020 993272976 583207689 686119904 239008726 934927142 951631348 862208089 385036201 3643095 924404195 222304900 293216459 788408462 898773993 819530450 419523221 639672439 513250845 181830836 738419103 444134916 596609685 267242572 925913702 485496825 785654123 330741920 258584685 135229736 921597421 336296982 761760795 281749578 196212827 347785014 277970803 633925277 973528782 299764639 854003012 541706771 465373075 28239789 623451760 403490759 491850843 665915075 227485148 233830736 494182068 637264489 391777594 511492828 614532027 296447034 311811762 994536203 286143790 322860387 785964363 746930213 568739036 956990223 484940542 369019426 974728923 650681150 182971512 998909224 493836245 453571314 713922760 853376370 275781900 745541768 488953285 348176709 526350496 216888795 511677150 588296288 257722199 144770953 583645952 541649775 930920322 359571675 551708308 2962797 468333788 904716187 670881165 212310866 298459454 481034110 365499760 125699864 387730302 206926197 343213607 686918993 612711769 617711242 895434851 213597649 612309613 536393156 134520680 675222409 650401569 293301497 706502676 602653739 540714253 153242236 77149179 104931263 34968789 722008259 134098936 93106822 163515919 874135137 132155571 467020754 8910085 363249176 505566073 198077944 190346486 692000752 435339147 672826637 685418241 216261605 449310060 992564843 495097116 789401661 624376431 331649051 548159093 749769051 25182704 573358816 455201385 7945239 186091487 988279245 591183357 810101126 974891515 236899901 230198603 452197283 337294920 87425455 340492636 691685552 423202837 235874726 998959175 148016580 602783477 258813769 177012204 867922163 944530240 422741838 98637850 204953477 148604817 296136979 933596881 83508480 760078210 962500362 104277898 103625502 996151911 505930370 789992767 742498298 93228254 511432666 949491366 787672573 264276790 856605346 857933214 200069861 64560323 227655193 394141559 163766144 772736829 118168261 352042096 867988851 56090236 885961332 171182193 804625018 1999570 308197761 498198358 42137030 667558071 166027527 44973003 53353341 953459874 563214291 951192714 995975374 565952288 543095693 664896194 209702512 425865257 975066443 969832349 604177205 780694205 269902530 150294893 857465 10228152 242082033 146808118 182201017 324726748 319496056 721795240 267130713 689131657 285635455 360233405 119045027 913708223 336321281 900343153 91224919 987479904 490512924 829320594 261898081 17770792 394811190 854934196 444976056 155225262 422162986 844287005 839422537 546908083 618018840 729541802 82614212 929754116 480584114 720811225 251076033 469630340 150713760 652811199 809765842 922830548 857940577 322486157 804176206 922568821 397042601 501835891 55684750 696877765 64214819 837542219 735428839 927283200 720524668 854363368 863838637 425283213 602276173 989801247 419527945 242173519 193755420 150374950 412626640 95292848 113115486 541815306 349057753 437604792 677157088 794860357 789795804 955107878 317278977 940415071 372229042 187466709 478266243 718015481 231018578 814137835 55269317 625151358 252372579 30707039 439769077 351218867 928194979 273653115 383562443 911594047 891654812 661263187 536894569 174507772 93041497 756651309 436297596 242544346 210972014 870741053 991039492 157611640 332072989 190212632 913101160 622618175 929750184 715126540 797028082 538190495 872513929 434776068 162425390 669791907 369480332 86539932 274370879 381401991 151456263 683539389 923589929 539579117 793958274 700913749 693292078 473301480 193969601 912303168 129060897 456802742 942820137 805925907 465677127 20767322 415279506 92823087 150884862 630470935 568476122 116598774 419949035 166664078 859347649 582473270 704415147 76184745 575421392 968346775 462719547 619794877 313380855 913213412 425411789 164598327 482527128 772792267 362284269 742474854 428016260 848596600 833832544 471667214 462918492 396296158 331559248 953206204 85443824 400991636 857670105 538642158 373072250 625008758 826344677 620742177 223317223 297546131 503909603 501604498 169723143 124132404 257737057 954048460 361139853 935704735 731034442 240614634 380183873 80323460 478232170 666348613 485054521 783619672 493054399 695893437 209095194 273882128 901195696 103278599 86823717 582083911 194431629 249590052 26065608 989810376 444584976 723243320 105334013 604395299 285675373 794173406 546821883 772568085 650979647 849937933 92200238 595010249 440203949 526302949 260634119 510224151 74099099 331022014 551083168 529032014 765958706 344727161 503748257 207834329 159795358 573844133 504960020 456550177 642054826 107154132 983621679 852507 691060233 458948877 182824190 1724188 424801942 843144049 124921815 309766862 641765152 78348029 958698116 751792035 835075171 736060892 125405857 53821548 108938473 265362459 259947559 978075390 110650694 989695571 54231507 534774037 459880984 74530083 923619277 45599020 448167418 86270114 54469149 725065844 566221920 837752697 706166054 463867942 92344501 852783004 802749879 533758792 338116605 85652278 646042896 897735424 188365636 522159420 972860534 653167281 945387664 577320443 642836319 328600247 301512770 853540052 919361381 592479391 854520883 333805727 802052655 281111414 99256776 436546916 338454993 564954953 553112526 365487427 786334260 641059311 15920912 353538472 279391716 291943265 198487215 866064125 29671780 167541280 702991354 72970465 55243709 485932911 109063567 496914696 300706704 777946567 619976159 108904948 905751832 337826062 633751629 188486844 227616960 925684700 963567394 123420334 26063695 38171998 548308247 108541927 742306988 756521601 10695601 531916509 436993149 694238029 629463997 877599081 387722954 866321233 397841697 78631103 347354909 845744253 809669710 749164342 687284877 337719831 656757630 162482659 668503179 771140642 46189835 294649678 214983921 271821622 698014203 839101500 559292414 908682098 927488113 684851977 248948145 673690163 628670405 718583121 782516411 536206311 893135506 315084203 875005400 87847688 686210475 473531354 663000907 760475850 716602409 249233984 857427407 182857111 539568410 481656750 310019324 770908833 620913554 656544053 2877080 786364598 99683802 699670058 83161008 572543740 378023361 16592073 27123391 312309808 621597397 855493263 90857863 355337061 563318436 183243680 181986643 646518152 576639163 523415758 291490483 995648139 914382832 485285277 453946987 288460956 278856708 154432683 920664015 582872803 760594351 669309801 64851282 37111864 901116561 71793136 386070942 413168291 427361364 957888824 867205849 638664568 391070073 977448694 568445568 692366078 325713525 887527827 132751940 742519463 11331307 32430232 604204341 426758997 69938099 432731193 823304488 885085599 632863869 773533813 493344176 802313832 924918121 566026193 217766485 868528366 541819769 104862301 436120295 978072075 987933907 87437525 167055480 765735248 259683239 256515653 443778984 315308955 626742490 186630010 27217652 752490517 811124596 590275774 655960524 352219961 853199472 116234585 603842561 182217115 594852555 404733063 843988844 321277239 773419651 534040237 109096165 664886203 515240202 90061902 868128656 557458652 855859994 707318544 958096738 703421449 858775264 943508745 81660955 817379945 406426367 891767110 837486548 388430040 267871485 362410797 435902889 542529953 28804239 456446909 86870211 876521644 912723615 694077511 294818247 180999642 350909881 457468812 432114620 676758331 756004589 938195977 101181246 917245870 562470047 676260892 200322072 377688241 680763305 569449123 905988541 171654301 949570930 62286253 90467170 948860414 747127035 749604857 318530348 934277222 59996614 205258206 474151245 250931264 599308237 179571642 671281223 882159980 616647847 214183415 541768983 732260136 684822986 532170202 228820742 819758195 221443581 784509616 383582946 993579055 488280463 933047779 654581167 109793592 384406826 498788682 324157852 16941149 502911492 1606134 701892830 633950474 55737040 599629321 512659604 139170118 459201473 906439424 948919213 253860882 873566844 461861235 592121764 122661646 408492547 444676360 225927660 125180470 793550728 766100132 417223016 148029726 526366418 357162344 156426565 636053586 733953643 534816747 313933497 930555330 624014020 264972059 188566747 292118298 298623163 78724994 699308942 153817448 38556625 251628838 697604873 267570817 153535401 42273168 786809305 556915851 712828346 914298870 623781942 869599776 45344232 850547803 672216430 663379008 857970052 315473304 812237939 993517252 61240532 267513701 333115642 832249934 264834856 288774787 666267903 346105854 306522182 313000714 182198328 505369412 317995529 54812437 179665264 868628850 829165117 242952668 149423859 946825328 839856340 574322454 40436539 719536768 597511881 222858218 257314011 862057720 157272413 809520361 616191897 373922066 352204502 197775308 509912603 234224669 991750903 839417979 207490389 712079295 123840174 188374524 602944566 159091457 967660481 762254921 673854183 201641400 667719876 613046912 672932104 729715776 452741516 142017871 71997016 171717309 912671353 725975253 557381084 320067504 647896006 355917611 313332419 239974975 490073615 843146901 250322374 804825226 254659859 766501740 986330058 988390828 604876727 558562160 547185106 537480506 441301486 543375434 967214857 465226615 183010773 950816626 848021408 173827712 893569861 875199614 478241575 193953217 450506118 88019850 258235073 980377612 611604121 828753083 768578496 387891696 185932327 410574276 435588874 516621061 100902760 585456449 12575487 220760236 601008288 538611772 310720665 571492487 679896814 298064584 401764753 353527817 995034496 132958449 787660630 250273478 62731841 704667800 401643030 411995882 553436537 67921442 232020926 700299635 160653963 963352546 485127811 135590289 337264676 14597195 18940080 544967314 425777541 991787233 8701486 939960167 16712813 414165257 864141419 959019621 306564035 743875164 479641766 820266484 162517053 494036679 501298907 603524186 990413467 965250315 27421161 232333230 646778405 874128550 974126845 551500027 335583720 190770272 510093280 2415092 348970539 36187077 568073149 113117651 210635855 513750581 244306447 44968565 283143083 392443665 807012018 753231676 433765202 238977412 207789651 731361357 864809012 801690745 894709536 16350152 67978340 824880112 703730326 746318057 484185935 78667427 922967833 828860039 906522881 566489709 195803391 984559643 620856303 342571808 769762160 478023925 300762310 884715909 359486272 343011188 332285396 600036971 895969898 463579709 689044886 681817390 994887926 625074991 368617656 794796749 987038324 229222994 375028696 30714031 439604580 903410064 460349390 985596681 730227299 763961802 871406473 837246261 490043618 832417609 90703032 450411558 49891189 344452129 372692856 60104463 338298224 938481139 941044534 275637309 447651904 810168831 939938497 869471544 101859865 655596898 888115146 766984092 928380803 722141048 414711754 665580022 304282264 725030976 774047825 813828289 474239714 311809995 304913713 950371905 314911118 981707067 431867606 509227004 801564357 993118291 576871851 355145401 299059339 639377067 201148551 554473749 990229347 496428718 642325019 873524009 416170829 416841229 267274750 329055503 439727452 405269891 357372006 881845230 658873476 337692909 975545337 941189849 722548873 901098439 213532361 106962219 61663228 445208095 242537344 25304155 466489105 733033633 953210656 683165784 723268590 258263524 912433377 207396269 694038841 50462100 747449582 507700436 296026876 451234277 12587491 295867626 774995118 768540622 480915038 258269818 541289231 253545939 89109002 767955526 839113203 325939227 148933856 228860786 760397228 171397601 622945032 970485818 850626657 809339814 31609236 619683721 329898742 747724891 609059786 105945736 454238534 111662249 531335395 449868312 598282988 585916661 454349851 3241567 977155189 426340013 890163397 686938013 579946887 130315130 729762229 825463395 97584666 588280728 492350340 746127297 641213613 530468322 12830066 595505878 175452285 192981456 45515828 158728730 825839852 289591023 95034773 769338659 673466812 580271635 576527280 118239182 675028110 970011801 537530985 769482972 230631639 729419046 877288143 398826307 674427480 765807979 888546996 440522380 101611486 788140166 437129541 439439062 953645112 396586145 163504584 428489003 413221607 683632412 203112080 145741127 224170047 77798047 899106071 993645466 107271810 296577649 262442083 696284152 565315880 748954524 313560130 991193203 89846260 230714015 619108586 804063463 995040316 843546974 504445207 573791445 528204285 904127858 64200087 351737252 589050727 805713981 277146155 502095835 307545963 788992183 223796620 519967218 998093395 475847731 260233768 29376870 75956970 173128368 498316452 894296010 180966536 195787879 201857134 702809827 989443929 368383362 314000982 555586160 782797016 776683667 619051802 439737185 155660472 432791250 57085469 39930210 226295645 409161607 789456280 208521069 11955186 585641166 250159551 39139582 759040871 528947284 286842918 691341487 518325578 407020359 725181867 357167380 910936463 695951439 238666225 513307814 757355476 32909578 909904025 288895746 202766402 859750557 549834208 376963781 951711961 246696838 644620558 452351166 60030481 103481821 352493437 402444198 724921349 8383727 893834384 914347406 479346243 606527061 42564886 184490558 230769456 827197759 849655092 372706984 484518514 799539871 931137411 491235697 963131572 209330513 77010788 531722493 119806392 402984982 66434766 80383432 678143312 742783449 881597961 962648094 307706028 686100146 900551971 255810236 5391928 915847683 123694881 183209207 45936502 488672962 344536421 817624313 630967859 292964430 331247601 608747147 969963430 983575722 44792163 786424164 523353541 976332907 106833984 596319366 471007093 213781231 716473928 56295167 107088825 168344316 296435150 16962790 328636793 816261305 127456110 683100067 895022015 211958075 907787876 823698877 951082875 210373756 953749788 161052591 329833123 662170752 797990710 434562960 704010689 335423958 358396500 988818889 639988822 273680584 787748031 705992058 550797014 116481169 634547048 930120556 231758886 924300942 711053878 574272195 277616698 66875011 17354700 883372646 574649512 374204021 269903434 822741440 946996852 534920281 254470378 471840857 648108450 379291396 19338628 559941503 104653922 805594878 678099447 442607180 95701834 676269223 781832216 202328542 952552036 610742536 645894638 607268378 313876624 707086642 902590800 896672080 538309081 480807419 314008032 615107903 826451195 642312026 677348117 162741240 819055541 641636228 45845974 142235688 970258162 155759368 317984188 369378534 140641284 569899860 335560960 905321457 986527596 753695748 833883645 548344960 105165639 304726855 594064508 810622994 401750104 700894346 562688336 453544491 780577963 773483518 842307852 881562992 573678662 839488199 947835208 896828221 392254801 173603911 665297990 497120568 17951541 604303462 851250908 260622127 529991250 374558788 172066612 505850391 568104970 742317702 868497916 581525835 274225069 671787529 229106330 932027367 661985161 791109708 860969935 786704852 322363586 212983647 474501667 928986896 182879790 819891756 791202817 232791449 455271500 837844020 467385380 104176353 897895581 784849961 694117776 651338902 675859297 493778959 759196501 928089912 496768910 651686200 466319507 669793885 822009386 919333154 976022081 353974461 124718488 365015541 107494333 714548142 315798822 923524229 485813276 54505691 269211247 654659673 748916471 259085547 423070892 540424792 543775915 803957205 198173335 888381601 782109162 285589408 402470622 493226758 74927680 542567407 734463894 481930881 939081108 325602065 113167312 4249941 725175472 921679603 667979325 258562625 381711067 980510662 277427065 811915233 874222626 212766522 414250698 436074689 405237010 586022403 504199500 552718735 987018841 707610570 562118998 259870076 944561205 575670540 485915376 198218060 486561572 107434541 240324892 617559412 527338194 914028017 842979017 48453667 698388123 749117352 423348145 548853617 447317867 471271782 195155906 86897202 436639133 221096105 789234594 356972512 798839639 799560039 296845619 166211976 421730606 41384889 289509767 602890156 448479413 199434613 573209102 196213366 978293086 861859432 176485925 182954568 312763430 893639292 212785335 936218143 272597639 154582381 134388614 180912999 828190554 759227627 664817673 116555165 439498458 998003000 943969896 996437080 812251797 640640745 903632998 692331657 553519303 686978282 478798061 129122027 664156541 654248744 201917599 310086356 406481755 318547458 201838091 65525025 476753768 376416846 795940144 505563507 749729557 281614651 724634687 966186056 493298421 248020395 300628883 874852714 476737616 772447746 927239118 416239401 387330514 837102378 162058883 672286739 93763007 417569681 675494854 856337250 347692036 336723191 730516231 24565112 350370671 446377552 770808847 420571388 751593421 640686606 587781525 789187385 754809992 460613229 568677648 884472759 682450810 25641778 173093620 62606277 86116854 71671422 746885225 869564568 597686424 235033822 813749799 482822718 798309744 925505015 29130667 207096477 663120613 936353690 868597606 763221958 587048647 395244214 874188388 316301193 858770131 770052240 837599550 25128445 241132367 41481759 55171895 727311492 979654368 9724375 492167360 443635401 474075940 472465945 654780786 270540086 466537903 10103508 20866847 973584220 647807917 8303015 393689302 714662417 249351237 156720547 414176448 661664747 228257934 149102344 738966472 38995759 287588614 511450021 962631193 951284152 15254773 16309287 575533343 34165798 481311789 310979368 146981411 489664164 58394609 917320338 402144240 233239094 798309661 50381646 577205826 611027372 687625109 24616337 602783039 980292705 147227796 6711158 622868759 123746929 763920043 284205787 575805311 953937556 440851306 395456887 108739094 643993364 845232308 188345022 474649281 853317302 31721083 779232853 780057417 712558597 970225786 269476498 136374289 436682681 104011929 276223576 927982158 659094604 938962195 420790039 112696574 23064976 533074815 897484137 520654850 699441740 577615175 383306981 711705505 607251777 79510379 683404887 485572945 800424052 950888314 424410272 200002172 90008645 973478438 989842006 805826436 672426869 39805563 867479783 490107932 625146193 986079315 703493962 310175869 294050296 761943552 649214050 118739401 179645156 112888525 649672850 846492703 665245694 361252113 108908273 277742326 499564836 659363540 448701235 273812062 846251990 152755968 445939964 180815378 180800511 871704957 707597034 376234318 961821633 498587988 426892880 16611279 736246574 402601806 116955771 732727701 346225484 379538386 397239138 43113024 865094857 787289006 447291167 76273618 793794563 557443826 312933763 680075632 101039453 260265278 559718043 780217276 279555875 819962781 599247936 570514679 357498409 421945774 697524964 746290893 32779757 507462429 377833339 124705429 388240519 755664893 601762765 630084017 694735745 866215738 91778368 171297007 226145762 842207522 306086793 424400517 146066292 391148036 684747425 948347709 742278972 529176418 743390150 935573505 801215311 626058232 350647941 432680652 769527581 34059956 323105258 232585071 286407195 459452332 182589752 299287136 333797316 103474631 259882492 275463728 425076097 131831389 491789469 123350200 405785644 93337307 181522651 696435043 518993676 982153586 145915366 531138734 137946346 28461766 486976509 489349167 827842790 28768275 470679042 956602037 927663430 41057307 545881677 153404433 789278651 313221885 883440154 591607954 112909671 39073320 879508111 697871204 185635851 435813543 722894078 835008601 111361074 944450854 770212108 463966482 80637022 205715880 841943887 516914930 387422968 937778762 985700575 342599651 397798787 629014312 634359883 673064448 231864148 828576741 946110685 991391360 674255651 263491607 106647633 50121585 554892319 78970966 715551808 990013492 143046746 229234773 80535390 965009897 972539364 956084640 618779111 548813885 726177506 381193176 308647279 207454735 93009646 712337634 980648685 906767290 986961951 964916363 172447709 490816027 440448071 839296094 149772749 893685172 983407394 674468470 592098306 794438889 343555789 543206863 467551523 900202103 172401503 277609978 879994569 18106078 171946224 867675189 704246396 269026995 148420345 547474211 38339830 685573333 270733213 740083435 54189537 109025122 658809435 267584388 93588773 300849765 906666846 423083015 177180920 483007818 55412159 364977906 22559281 599587116 665164571 183892167 538605964 223853549 451691364 956099384 728394225 337784072 314773301 977221310 247080980 999701665 108657340 408592611 290457141 285846033 28753998 498095844 880209181 58451022 785647999 291926026 321168674 364863929 355348271 978227386 497426912 304061750 452087586 631919764 152908944 33477132 518865638 25745277 583552392 115194805 699304833 942286819 384838154 69142174 249480953 647493032 300526263 996352960 813721543 342569553 799863523 889478418 236390304 147714003 207640844 595271959 747165471 331100111 617507921 77676703 856126445 341556521 658142346 933130098 50898834 577027753 35615457 648946802 762835336 150821945 672538267 411827984 561435628 536941504 61847592 782822915 125543758 403593016 252268245 521237696 200999212 542410585 356596341 877042620 623005619 421610883 666518985 134565115 70246245 565324747 311175865 764950177 208086505 929382076 457271390 465413795 894268303 791227027 121912589 411116991 289762545 674712437 269988195 102003076 649331316 511792183 487242239 391270006 55764539 185348546 49478256 18013421 225882592 639440338 227110711 369011235 621794687 603716490 896479112 87352043 197988945 91771636 706259457 227049759 941641626 828854911 724313288 790182238 220852570 642516637 77800579 633588758 851721346 960045816 141138141 837979190 595529953 395776275 425587246 803883355 603121546 256855316 433967747 699918599 245816568 164985915 933166094 759476866 145923696 820523601 796686954 472814350 25532308 463427843 687895500 463279759 711336503 522769777 864327478 808352978 442026298 979143261 725885141 509245804 5759622 403504078 484563985 407550278 439870327 553733929 337842084 697471047 972126541 43084957 618819800 268508460 292663737 542071683 699417227 724600906 633458875 694843920 247325812 993573847 646376602 483112508 54366866 443268315 532540502 686328736 871309906 18484115 544043470 696735290 601010142 258297908 396807370 460145345 527357400 216691179 638714030 70341247 237381453 487168662 181524647 227638219 94368765 723783468 589850118 684146102 855378412 333681282 478450155 709370947 867731921 78308197 94236105 52697376 478507134 738198745 957123395 272531411 515663272 696418275 838237551 925383676 73226637 194568552 331170351 371808680 20457759 733787475 674701652 964772281 986550630 710169104 21181187 911439941 297697041 907033358 444135764 869898271 150817203 731851235 466247258 445684723 933940241 607501483 377631255 316643646 688840814 711682262 194224860 381462607 983976926 901636804 284252648 501429155 252692153 500808213 393175907 429856071 807109569 81652117 392967393 165084520 555537408 531737668 447963273 483718664 749990249 298459992 326434221 645555338 822224838 469684831 770818064 363683879 283723077 829659101 844277684 412123856 608188294 591834487 40397561 238375810 221110796 285874976 894464739 701854175 874312041 885660796 667123552 345447924 572795154 884529655 251339611 283093318 692854162 533592360 79001897 878875499 771136705 694615574 562183575 554917900 481847138 774759141 725631146 315672918 182481564 607100763 175625074 626377374 522021451 669300678 217167221 741449586 694609941 318643496 107659734 326356212 564565034 483995342 709004503 878597664 704199623 244963633 741839837 473295793 234492293 971696507 670255980 37359088 728266372 684584372 61187760 879956823 579126703 657738075 468424287 629992580 628731804 219874861 129787471 391006898 674442217 673484852 205662776 725701840 543490763 485993216 531046246 993608699 652091210 214234331 801185647 34027304 610177497 999021733 84046894 719537845 680835685 816878688 653187746 739112602 46454652 46542727 887521546 444310760 851008736 542067901 845794703 177074846 976074409 710804934 427669314 178321026 564116454 523638686 975270102 418425026 925521753 95032485 882960675 138253646 596337879 658354996 31542777 819116277 303068054 276289037 339699746 479202598 801022182 398783627 431417894 165218945 792781483 414746131 755858870 536644735 123175091 15623311 804475512 785298762 289711451 10842811 999457177 468876377 559959386 294822732 303050856 605251221 978380825 745324373 612078037 445036857 482175729 365557261 326321443 836709475 427781756 328841299 844000483 209945212 956043844 814260445 760310094 801952736 689204238 618768534 839819547 279915701 608815579 477385863 673701505 253492219 492810142 824510101 239647013 502264034 757104777 222940517 444989638 943625892 748152099 631055567 399859852 367248386 247404559 872000739 187505517 173773203 206160680 473705458 718372692 957069356 129140688 135215367 767627276 971617260 573626974 898733008 844867831 513206470 8772302 135243446 112310399 803820279 751975698 994620689 75619131 677228338 366945524 883545049 608003529 494786737 491575521 430097578 491065074 385150844 992020329 902317230 17692664 7873565 318684159 37897519 42655278 2476690 366520718 645664173 986761902 864850925 231153620 478379170 736274471 403187937 315560085 237913313 6260080 733408993 965598671 10059877 739745561 925571481 123412643 913411647 86790112 841227681 114001407 744038699 755630951 79025661 45157213 321501258 418535131 602821681 323669321 681185521 814817310 152132895 87154476 111414030 741864543 373890298 844670676 182804922 219300001 576300279 418487620 998158170 609038533 153848137 948928922 643135247 764123287 540041522 803262068 312602224 50613783 603241624 49228300 276478679 347801800 322734316 261212509 122090902 681200219 327314000 359081936 48519162 166492910 319186492 724611462 178140739 379642800 873764909 972513923 506540157 144148651 147095565 131351210 405377223 303254468 748874831 152254332 302239813 299360581 635473538 528485572 441299690 185176636 734461738 213960602 198336439 611012997 182257960 740757347 864330126 907920176 219182619 30453009 399451096 813281519 612502971 636378392 755574762 273781831 848633213 776389636 326433798 472724916 246862986 846783439 516618319 999122845 143793722 273284174 721230986 19712021 827891687 859371286 452991928 871064874 425395119 957166301 708702786 301218841 959230720 215747496 98385833 481989338 2762427 323342208 858059978 336675556 409645757 239134099 286380956 328425859 997855177 678412447 258347916 91436974 164831779 148889322 373188105 691483831 390864255 535221644 896006793 817931744 22096317 226648060 265909304 450548849 925101398 427232219 625252404 852731809 756648498 941238301 934102723 785025464 463793040 364186280 718914675 814716300 588394910 425255795 154042408 985267825 856726503 876193105 24580803 152962418 85408249 354826893 833965865 768976757 24310733 927060088 425468204 631984244 936680689 108429841 90113489 87582133 238139452 440057268 260876093 247175922 158627034 653075342 497133172 985954273 497744142 10261762 309984330 840340779 648049022 854741734 493380902 961846098 874780009 597605092 705270954 725650809 640747005 720923645 573356988 507077283 399529770 927213496 237521202 447009750 683681212 649179449 626265046 742935015 63377683 911679636 850705527 613533379 219153256 160849159 473919359 958064261 809929631 621815448 169230243 915097626 425053791 290368109 847036287 655756860 880264438 203236437 331521760 874175767 482421955 32872454 198673565 290051383 467663253 13716311 632796198 740758888 248381223 680747299 816581414 513817690 420889644 187425756 323347508 432941599 381507912 69757122 386766433 458556007 298772697 939391630 923202958 496883809 473427924 863634163 929282619 35900129 569482075 840941372 600943063 354021489 784265691 635860272 965360630 138705757 788134356 238972630 827263673 313366584 732779228 206883211 233448254 989976166 329353998 513288257 331008450 158716281 676435079 267648841 551728778 724224192 307316245 688848479 161217580 33806276 520976254 659648780 730102287 483669589 781036309 500522126 58581845 787810353 707122657 62397521 407583743 623017869 308769460 158738013 52380885 969950815 938043695 110261837 872600468 792278573 338586292 367370569 642688922 56616391 278610084 375018055 545096597 137542289 326024166 270068759 321776220 331189116 301361660 218347751 676347031 376948955 721097261 961185114 744712398 444708462 918845410 310389701 697806292 496833875 178977418 622943666 283213554 836311359 435418940 627942228 64626168 133160864 552231657 106747963 863138961 357175469 612517046 948836122 704299202 434501867 834319746 233492817 438549222 417862626 262427830 765923963 291347486 14059729 919375477 974213751 756952468 317851836 37068058 95544826 982377453 981678510 19374165 237825692 668403904 476094178 248796069 804263912 461091376 958697205 360782931 763410794 342816835 335015729 947117004 477140329 800907031 666757876 888220837 34907724 26092979 216387314 318346054 831258147 729164739 255800110 870800413 845147169 106076853 680160334 258546538 124255510 126860158 579966746 731166739 764106545 458110881 388466115 251035517 202976207 74131697 177776805 244413035 349466591 985425345 544080236 709235924 430662324 862928227 833701397 682551223 678689754 23813508 727260406 148565125 48370567 388182957 819151232 497242186 828363873 952698491 257804386 789553347 602996214 858725889 757773542 392059658 799540094 15395203 62108863 987823897 774005116 271566594 121389243 630185657 960134848 361918228 222882878 222924358 485941960 507857100 292810648 867104754 238456941 271981359 380607422 611593297 322567151 785860242 551671037 740388645 905475477 885565467 529633167 834785815 935792429 475183986 606000648 657402284 750738491 443186573 185325112 290103814 469796827 952761866 709433834 213420426 968762030 809480693 572550760 920027172 103508142 116852045 358067723 464103919 876277977 805099140 719280530 829265491 901114762 787166366 845743661 219945588 724665818 83873530 440066350 161338812 572971405 792541734 895995655 193676493 552567370 372974906 318531761 611300101 406140889 115148730 849528154 586001162 664547635 45355200 24229110 627755157 938925865 237859454 42462979 441178611 717383773 711600853 611325705 459857868 711854644 273124508 668285540 38184714 306216413 106042112 214916761 657311630 959787338 529739204 46069224 824553340 479465991 831423100 532887213 974834283 867756738 663130056 954662907 501129910 521066411 822896350 174266331 172794006 976839311 950336855 929358079 861312628 43687519 265874460 752573415 945653621 917346388 866676270 189746822 270187865 888332937 862929435 823389241 385378488 912936923 489683841 545108724 213189660 293964335 206870091 220469328 904237835 770193589 789987419 111242927 619445287 152288622 743121696 826433515 690697821 599779473 311937202 950838217 408797146 301748958 237614268 755979484 498215938 703066654 190234515 562218642 878175953 235527259 732861705 727983104 127789036 914087522 455694740 888504194 143196860 323262622 84613488 675304145 819105660 144237279 818610673 222443089 947599309 429996770 816417504 471476024 683813958 579199620 985816771 374471061 654367325 330762690 963340445 328955779 380877132 420122658 492860710 698807332 613127431 679016366 936685340 912601973 267577249 285706481 490677399 647839209 304387976 27020184 834963190 434038946 898991125 453978458 859398376 67016141 827662995 238737367 170377567 765220044 563729835 78229956 975556090 749948347 915475391 693873545 266550575 142409710 581452382 245883652 185131285 73159144 387479700 477437302 326158699 19342061 594408647 247485189 379974243 509582064 436206152 10541239 56408044 433907845 617193640 29772265 260927569 448253899 503509406 338613534 915241176 664029426 225114991 844113814 449961355 826662043 858362401 850588759 318164325 785937469 610350459 515788133 844812920 968889863 998630315 695742360 911790576 387819722 509008469 772036899 336009233 665532931 7750005 174679869 267239976 659964894 451693969 458538606 179355148 998199872 815488651 528824674 565625649 949098960 120082157 861672129 816915307 204368337 600611578 68690451 366238658 772892329 527707240 362970806 979531655 43537379 731266640 458465512 95216909 597527997 684067617 603503685 374534688 149820376 748578617 88620078 774990618 38771558 677284902 390502677 594381808 191148968 609573308 317416655 435714664 617248782 619686042 843747103 387568227 225310618 23170923 156571226 816704765 884720093 979262330 523077505 408309000 777410258 485087370 647512179 345833860 475448246 915493274 750233392 185536074 67875153 845059459 348593034 181007920 899614682 641740239 898354073 24052251 482191094 559447475 267018105 189511267 92499549 915559460 526659005 230082400 967080486 699592814 338289457 251129505 388941342 161766312 197693450 410972779 862501420 731266543 660412688 83067016 226019416 321269610 421881977 801946162 637801144 726719997 364264831 557903671 58539810 754097045 538355576 716247619 124032497 471410478 128924934 992202263 834332407 515839995 897440779 846025159 477320748 630904288 330099968 738079856 683282224 409585597 169001900 457645691 517830802 212794604 181602564 902850296 370774371 250275004 511373054 123209259 604848892 748998321 556614803 632034417 216434991 32066488 727739188 397822075 985672445 307777417 288638670 834182262 35390026 81986473 934352552 630796767 608134049 367285274 541491675 447652155 870204577 10994384 868809445 952099493 196156354 375186222 864927414 610428007 315648903 536604446 713145197 215337391 214256729 116503657 893133029 102647290 714162453 824568985 619483356 643253835 72936610 428730806 514673133 547772922 904558307 464430410 41147727 140474969 566423486 861971591 79689385 833469768 990454596 609150884 434984538 733141653 186302298 246690740 18302924 238488922 43819039 900202852 279234496 237904702 117239550 704302898 253425101 54769166 807272670 902814588 305047207 198989833 995876902 306216742 209211472 874456619 178011431 403653133 450853208 102036529 298991683 842185748 211321805 456824160 905385017 181630061 577302525 753423350 624852842 923028942 762582898 798577226 951207126 947116041 431773889 47501792 637333589 889166690 375331255 296308925 854135792 823905775 786019767 407317911 37818126 946537156 460771278 460681217 995481168 574280530 354027796 60118814 729757118 808130763 676619641 73549523 328174236 676559060 549315719 433917313 787275866 211493603 535740026 141152558 368821242 920832570 722914660 622321879 903890578 361729550 440899731 261914055 271542720 971997483 548443588 375701933 902470645 851813551 6412962 538599463 133131525 710524233 184743769 229543682 283989729 474321685 841460028 849215745 833552651 514720654 175022531 349099434 305643351 845262459 661068981 705293517 964122989 356767763 891513191 747540096 587382620 966067476 216467279 170034138 688001147 686364837 646165460 496723085 523011380 642111664 652238849 864525896 146370653 935843306 594595517 202828595 11910816 972797665 65860744 621125029 499530467 596388541 505231914 880713476 737370574 943576202 722878050 332332822 703468648 882108555 366463220 378876277 887156543 748087765 941721378 189145370 681870288 795549715 15803035 12224870 249334004 581705796 263718068 201090007 578231189 997858678 584455322 280678842 212372250 848430402 63532552 10381401 390997374 762234925 190359924 24948151 123202648 627167849 867569594 124379789 615859890 329267682 543506671 90115523 296125237 102379602 824423126 696019055 924902491 926034683 313331581 103608028 488390208 775509728 935963398 895673430 133407729 401911876 936063595 75121245 112288019 445200732 898051818 604653242 753311591 512241642 194534852 60654793 49626434 469571951 530548526 704240779 540832535 279257691 914089023 572826723 895440209 305734088 495488295 153395257 984007461 832346165 909523470 972928910 85227723 707592611 463044709 359687065 386076099 54083480 999100821 665616642 970369155 723297955 562828057 153324793 971224109 144988641 918562082 940006587 169013368 715076251 329431786 952232244 312673085 254049899 941551978 357236318 699975903 878114739 7547680 723006364 863308886 695303769 116948935 608778595 78400896 725825334 501583950 792769860 256361857 682240180 62350747 869132799 817954589 496401642 603466739 761901082 159357149 684321940 987522898 754268543 427807539 342260428 764478271 82863342 536568200 992325589 132192558 304152840 254478664 283598377 673071467 575995843 104789696 142329879 930095926 578337091 205355233 601927660 331534455 125310073 348113633 500159401 989902590 818391835 652457516 337972247 956852307 467048627 334022708 911181545 196375593 747029227 897307713 960469937 212170339 441778038 763534645 378178631 637068155 354766631 154557637 15115024 77417547 332843597 218365795 197521075 893058137 243210110 193772650 396248709 638924319 407010879 461490715 263947616 405354943 868271120 240350856 170129126 296428480 994485155 284060285 702969578 158291685 378508464 778585319 598703516 908871321 788853752 205246150 671171976 996741405 739322145 468602683 360100689 517931297 972622979 756487774 738811978 55262048 152179561 250917255 994335239 723372968 936018413 62573386 12775514 269034700 537174150 203272679 257098342 475670097 321913143 623383452 740074661 917191196 488243776 640488491 1396324 366901061 430226626 522282074 217704928 330469080 854447966 982414597 103243210 68024055 36499285 42689255 496474551 685451028 203706794 953706814 349183029 643047927 832356982 465718736 761952166 197654525 681806713 670819535 963733930 179789523 672719434 448578525 718853256 253234638 200831204 524383077 324522300 740975431 643420037 184613444 531262240 977719833 201238405 888621311 819529784 805919680 258927216 570543404 772603878 317092115 577758725 220637089 993726601 63023492 282211598 478754184 644828569 166510775 970913518 749641375 473641553 845326095 895624688 250235867 613934832 809910814 614938350 770137293 18144358 122976087 752780043 986622215 689672458 753743979 514639299 875674773 202679579 391173237 646696858 892388415 474894929 749555849 439112270 905839823 903719422 951067074 758270749 273051466 992168774 137117590 123621827 1572739 611742199 792398507 399019832 753045658 648500453 983153218 68216028 355493976 464131745 276480965 840122689 690891861 13338751 368023908 74261991 660285332 424002184 488250838 981269784 437809740 644706512 46639226 180247620 886982900 847960528 890918604 692383507 870626574 721864982 879182727 133361247 948962685 362019715 98509391 796081894 13956538 440925904 373731471 646937165 56826124 266081066 552935771 350213939 494045945 51069631 550784270 898662212 557260478 346017087 602401475 780132841 277111838 945844789 59996150 888173131 243943490 92186197 929230841 896853409 996812116 131794700 324822078 100310911 498140954 588881870 219118239 531919554 336005438 262690365 582163304 252472960 116257048 24179493 886949153 461902672 185786777 122874464 115078617 309219501 122595102 129717902 916066591 594633204 244257561 436828371 446647247 935575774 993646634 930206352 752091943 997332177 621390994 966148180 407962004 285802382 111206901 377131179 186191473 363698531 565128712 334148865 379389795 932229636 207817221 173949025 537225288 995540390 407294303 39027286 193462710 987313661 338177120 604039541 928107691 854603324 770388699 999842042 175884119 283683733 588377941 574544503 399883368 9252201 874685728 903035553 379153052 97324570 426013807 112212448 556794851 519482791 457719083 392342351 214183519 574651835 479516134 799677775 570905027 12244056 596064013 4161375 983569344 383650189 239742894 856921068 237239328 534636440 530606304 959183330 158973397 365733090 951202723 319944603 818251610 603465265 5255053 91069706 390909405 603840417 135345983 46726583 325931331 256187469 416142276 511488021 659543670 613429534 792592689 47748096 895392938 811677613 747750809 908812131 333493282 533235571 444928437 968796255 206695897 310623660 188087034 84801307 526794845 496750560 375260283 55917542 382817425 779161633 630644921 77198915 865130552 688172792 715193246 459796114 620729035 260663539 262999128 584118676 287041588 503364533 368998329 141393931 741249286 939025778 38774690 849053393 509654247 461614253 461620215 665987203 646232504 888799126 48219149 39577323 22139336 272406305 464564317 226970746 229921658 790444865 77255364 982828063 397968798 252154721 196220494 179742332 290635839 161534363 999361913 774043608 193406718 804285971 697524914 650432364 931664013 958082348 596246827 382807174 685115906 683407458 285548044 698811915 321563029 332340743 821790107 269740110 809669337 116037824 680045414 387516726 220404903 396335006 657824022 453686018 418895010 215618296 11438981 361716522 898565532 959893862 399820315 397869431 299863835 963168280 135634169 788215618 531983888 612707621 610065399 889800202 341990772 979908763 304293336 41055916 326324981 517703780 873448588 201761898 606542289 967789585 142450775 926274876 856440746 968363071 248741538 158918632 971960483 309076633 358672709 458571598 341139968 719236815 321747053 792775774 538364181 236481913 938709462 144931995 172300354 38280695 188477463 85448877 3040729 764804449 614714357 800693664 660939164 585199913 663268921 991838159 346040347 627863287 432182930 190286090 796143912 893124549 901605429 222378098 725392651 832655980 820746262 26066351 234410530 834284028 795787783 348458282 631737837 996613733 63378184 232755464 15976445 226225426 159413707 157898465 235428184 439597356 313799097 300863097 635186760 36546923 12799187 377797868 65146167 678036109 926476075 465641599 317039138 588609191 552169170 526683422 573985065 496406610 823276707 891667691 544011577 598795253 689217022 797826476 841033632 926709655 833798371 355998214 178584797 961563475 609439365 132493391 199519496 375603854 952117276 873189156 382289825 77649329 948516400 393595130 101896885 857910081 363018167 333567745 57373916 241333949 913281863 910587213 414409609 839253459 702357699 930692829 170681067 543751584 141068254 699568735 146139494 973126633 415511878 754879950 261493844 901712725 590950931 449181012 23269443 6555236 786088236 541821200 259003585 851773487 916410960 527319457 373860859 199660750 640494436 80193708 879444428 102098280 732776477 517787580 314959720 706057039 106654197 431567288 202801063 633221788 93383304 309190590 176344194 302692835 390851009 792835980 163691011 817599328 969639464 599277599 244249457 308263873 349049153 588659541 223418736 315158819 879423638 933244992 990101017 328744474 141107404 234147909 382161859 57846116 406539986 281126587 544909161 301232307 878466123 530282356 722502341 296516142 396690208 169614951 99318343 172272044 518104078 87532399 803309126 757195745 496455372 477561474 740830568 532799155 26720616 730180045 490862816 339630722 579734766 560616333 732827871 464236372 408511253 67490135 955186383 265615390 245613381 376529024 647553470 100355691 511008949 524163102 639939956 897653861 174750641 695482016 386040419 240822601 327530508 96864301 9708421 165253371 690939920 821935239 363412867 374379748 690790272 102967284 787179580 31432405 548515159 663460587 19961569 206108060 141568446 274924581 82437486 968804751 767589607 57166175 218805199 52691999 221877689 220166287 504749171 426610138 94814436 504135421 564876303 73026421 513518324 846150628 488474113 964443155 703892219 950068237 932467745 211133367 330652915 352277745 749014768 753150031 819260570 796889525 698430505 716551614 363132132 455768210 840961383 488779791 252261200 889205285 73399168 610609425 959007163 143956645 472992027 274559465 486537369 990686620 10575139 785086245 941452770 533768283 228743583 271071251 384578062 265665160 509335957 500408380 218228056 377552618 235671172 786816031 974224438 793097829 649307527 153736258 374064866 458530485 236934982 808472240 1393683 917672577 483823835 480942401 458068163 133581765 600426848 464930558 614034507 332106574 432747136 698188226 965531691 875809426 572438527 476105126 791939807 84975028 89743233 572711089 813681627 108308418 441730468 435106818 533771448 635677477 642917748 461089314 16189561 126251794 335945243 362529688 935851876 923617882 138896614 736269375 794512701 350941764 361528907 650720482 963339683 473084252 24349719 274675122 164050752 860602866 26044431 575465623 369574163 185640618 860763728 518160778 998466857 477258618 50665703 488622497 829273563 694067918 814914630 707465814 884024461 878178196 244373195 203123216 197523058 740439698 46642811 745950586 548298162 904068766 597193590 346641065 205691410 457406734 633220543 433440815 605365201 493279629 560179501 268813201 914882020 787225592 275662813 528525400 121224792 538873580 63721267 192250106 879616365 196507860 727182329 594062946 997820714 192661316 576777944 360585078 211956491 119096001 42968792 242637294 525723193 713121571 656341306 176918689 799196821 981517358 386563126 51737481 325406971 43741250 894848143 795036689 883315968 28848409 620252908 746900144 802265840 829937684 466797374 261900861 327222603 704106426 857108756 936388846 639550436 678182504 695401588 88801805 919658023 298394469 409308287 907501338 672593274 993848432 547830101 155157681 992710552 184951492 129441700 207290041 605690018 923568558 233166815 586243227 963501851 227208544 598894297 292450153 268676614 172195397 342538640 175119532 514766430 329462904 262486896 937512221 810290993 435641635 665954385 824413635 697858856 870442248 330723804 614104500 703830473 926869222 817478751 238069105 422118681 459833799 991984945 557269786 833574755 849674101 487885596 272150466 400486871 351282670 663422029 679004554 308932254 255901511 505675504 977557136 408830436 662125874 753218303 169713947 92902343 327712898 583460468 751920555 267848847 459963589 23268276 500373082 520535803 289561683 257058100 681642169 472460702 565785141 825747714 131206855 599132879 639113766 867610124 327810927 973623932 162391481 644547354 524160451 855334384 156157150 352474955 108489484 65709596 455905038 422482632 314550082 346883603 732688861 208862709 776540728 1191235 106670077 263507351 525831679 635313667 153411052 857134786 416516892 726419848 670043532 877790665 941724342 370179792 196371754 887652140 683166171 835088702 475302037 353675310 784511823 152038026 323965968 742407466 779218024 763022120 356123197 487558831 889629456 150623356 617491116 992476487 224640428 856488772 6520802 231173525 582062199 605032774 173759626 426726359 389157997 421233336 397250206 389744225 607888840 985623519 986263235 670890582 838880742 145385943 659634553 522900592 862199770 791795705 982475616 481380805 471280724 794005624 566296154 696416196 693676045 118886360 933979812 932697902 80441138 326670630 166028607 447824156 966465773 304917693 948672932 108154601 723329139 602987476 67235718 486843447 360976540 789309373 600043663 322828990 77746355 743022897 582542244 363893101 587930134 103978933 431539953 790296595 55146256 237821147 906604922 308652429 31471670 433062719 402581216 531816321 551052169 361963977 423489564 117860812 278302830 12190143 342114953 405349253 494214726 398197252 408157191 182486965 689499474 812082093 521187452 178792855 220770136 776531299 969727214 197272028 828867704 941474757 139665639 645854409 103790393 348613605 813977213 8230649 544739296 964939929 786240751 468612565 204317242 441454854 582042249 930469046 24788388 673767815 291099739 800189156 464070965 826377738 914201568 540938465 203107929 409494044 808442825 588809223 639594181 94291483 580615321 595634526 959981388 483305921 786400452 135679148 968354831 205334766 740627220 611629303 127504956 411661964 590536281 960770976 883063218 724810368 918387496 944915286 109783930 403655800 538759135 228030825 7592981 518751496 181133101 649693074 880659798 340661074 755389506 205832575 321857463 49931087 876446726 382163846 715990367 325476687 199029422 65463336 821003693 730894806 712610331 748643841 788738808 689327071 469787400 418361179 507557515 891917785 73758744 425660121 681760973 901234841 743197786 118281494 510802188 926765066 521719550 625598829 211490054 309896440 542552708 468856753 303541079 428103698 470558041 910346022 214776867 8898679 652593783 747890058 725050831 61565502 427528512 980639503 89339961 722268106 440805983 887378502 848375606 898472344 597413280 142767155 127343363 26752768 10519613 898996898 984816411 345773519 84302547 240283310 855458406 384353725 857052984 539452021 270221058 683503639 124621815 912261881 908940735 421325801 8356158 480244434 627701227 110430415 438914217 563715679 975618328 158726785 683821718 970260956 90552980 866215371 381033921 186430494 364135895 894578515 245235668 469325134 247294064 95942038 874935616 791894425 784149037 196160352 855971771 616875779 163116582 228966230 801819635 45879539 777833341 227730277 848169918 980234135 891306862 913214309 108336216 395430239 28784783 219641577 162197824 323945254 796637606 704631262 115258052 375836625 536315922 789345761 487105464 514042801 948768524 179892768 762570930 912124379 814163969 936279338 623745103 3154568 890672823 829217134 1012243 581420057 610372043 874170093 83278322 285869544 573339723 673681605 665644991 637774610 618750017 365222723 424166797 693738069 238076565 702344372 6000316 104045104 902481686 911969468 469588555 375027681 689369608 402862440 545489329 858147359 445360649 837604618 241837445 324535442 473563944 764857913 61148599 73029731 90424466 201583101 260461668 328762094 800007927 248576224 873245453 175891754 492158148 896817761 674975280 304079332 409140532 65720182 435524368 462918195 640274802 276315303 964633148 456521349 288408531 920238637 109613173 544758366 750796266 797767828 680172708 660336197 569209418 92364987 485526070 795721257 74212298 924605440 245685245 863245854 758461530 48395261 141935173 365770646 472940669 791890049 236757936 985476439 947648363 140320252 736381179 835453964 526932039 210887099 257597523 667490952 875928900 433405234 980179640 398108337 314304902 130338221 618780850 516143493 339235058 881222863 273186908 616762036 756833782 255679623 212016286 532674796 355117776 602401574 271975179 397332693 511143420 450657878 899271828 734325673 77689457 615554114 839612230 679344837 8638275 309162366 473615148 619236377 721114630 840195830 304315754 712970046 588254793 57996693 991356815 475588322 203273739 398118849 538122861 837148305 394666711 396266340 260715866 891522155 134225527 756689684 176421222 776357981 569356619 849764826 255305235 300501211 446003015 2149096 166991076 185086440 406567005 158308450 602121316 2008627 560882953 659029144 822640955 264322864 181712116 264412640 865408917 839290607 897277183 166232561 764021743 718005681 89735624 66524921 792898890 851162258 232775608 618852951 5268922 658425349 270028470 36481824 395114541 934581401 627498950 937978282 907526644 47901480 768121790 999413070 649740274 72572042 640885176 338746339 386693633 545504954 511441180 883332135 149393440 46487603 867724163 885386901 917608724 677661693 345622481 58885722 717427270 464717473 714804884 521319451 720795247 622689022 11567524 497746989 552493034 800162839 670254525 233864482 560644716 663894089 640792757 652920350 71601523 261835682 35648112 24034753 848389777 527235626 180361958 662661823 837521827 773328317 244281257 237848580 788190470 209965890 490879825 2424556 755014809 934731414 645485531 412019254 484883882 474791961 502789048 612197141 464207706 448693445 540700003 88009304 976584009 199797091 460860085 474498336 377005147 551773325 564443571 114083379 634468555 461113829 36872213 785948409 282201780 428467605 915342653 144871306 380849549 702112212 972417803 515735618 284842202 904941832 716391753 757738350 853689306 461016604 404890209 487224286 111275623 391802447 346747256 806889307 103961192 730702910 363857816 782833465 850043339 267564869 598858917 992332862 931872299 555278758 528146157 636350234 555576300 622460365 489933795 937128355 816160557 928281068 278517042 852448320 895441046 14627445 564893927 190402414 476014476 223245936 532661217 192309779 714423523 568316876 42961438 102171490 450412001 58555357 267700687 139421985 688286250 838445739 276389849 15474513 111753828 450473235 859445395 486621412 632689003 221754644 247272622 290665442 156445455 10474074 125901148 926132499 912951585 33627787 931697105 194640628 624044754 104453090 398214883 178389770 272197059 423567611 708186969 657300437 260901642 694909794 169425629 237288340 351910399 803796480 178970093 173141121 606978846 483989882 298111553 95127308 861355070 153152666 823971018 742173352 31782538 480554615 716845863 538056273 891558899 873788004 573813004 260073370 681254143 283234076 764676200 50491898 115675744 610900071 39079946 45208112 906837547 697329119 189465556 709128077 433995384 587373016 837046501 487307608 392370920 855762991 591520899 870647687 303306044 94379051 40522661 793894873 186108563 699891619 262889110 574801336 742135219 330769261 164078412 373571058 353284666 907236257 837818879 915050192 233271288 851479904 92431329 705895482 695333936 532330211 896315380 970539585 429902626 626540724 411740428 624907959 318657745 750316513 577406742 421568647 178450589 885190171 345348532 452294383 468151101 24704328 952497046 365779747 176462085 875579722 480424827 621958527 410204284 428091922 331543403 976027535 427893778 482374996 291032178 711624615 56165593 933531630 458022938 202670954 634262322 256097326 223339543 759696406 115015772 318744550 843624706 938211775 200381337 756840129 737989534 136685810 519546576 876678274 180880219 100713837 158945603 170112737 151700319 785713168 419682213 365045223 198892010 945733054 940869750 431254099 634896302 294656194 20877657 31588084 321996910 203192376 314147715 175607504 347550314 459184502 527790921 440163107 209339656 839575136 246084086 295939362 355229557 859749433 137950162 223971156 705351510 769616135 412852392 767269587 632363663 74600877 665638159 219120357 99252597 21500377 134562098 888667143 45544140 606127409 982969015 557842803 844645676 962029277 740530786 291484218 606233796 208608640 478672158 177844870 168104371 960647634 76494876 483702909 554529367 893038186 108755838 917490077 498869693 825210345 197672302 271881473 794691098 161532683 721844169 726402601 847835492 14726046 274696325 330571748 885274961 728427536 776585378 456795825 306363714 89010881 136192066 944239675 674581267 224315017 821231018 44266337 229088455 623229539 501091482 369960824 949331696 243122413 721829262 195206928 615266739 617648057 898377690 640300443 887438426 378325480 328793514 436811785 575286851 769408495 655224369 729143644 314141335 311112802 677503094 252428655 337498777 511110467 716231273 182898605 77074872 565177093 623641291 79749391 637320280 966064084 157044068 760780905 120746009 536280645 26743622 224873738 448531984 374969978 73775334 714253153 766783850 729217962 140805470 374782832 356335057 405986371 785285491 200867017 270848900 584873073 455251531 855880498 407810777 193909695 754149240 342095335 488342325 853733293 5174612 784867449 734454654 814970441 600908927 711765370 165373378 718083261 24818478 100243833 221447530 598552285 679697091 405604102 908833365 226199755 60324254 254296786 194089516 484289846 833543738 949879258 864103802 908074674 809833593 26016735 560989276 780378866 36724644 797623312 190205136 488715370 535759438 224098133 38147916 558234183 852498291 513224905 512084702 776651189 567563401 95902616 613004285 482458589 574188799 326892919 948803439 241685551 425849866 374512657 526500955 912639145 834205811 412119672 640439201 372987134 918571174 131842264 298556486 952204848 385733414 269691270 971335172 533532110 208540112 786939677 416025496 483587239 82157219 630658590 870749275 859313745 296764722 484458364 477880042 38915733 977101766 404226670 595930685 739753137 146136349 390085374 631106659 863034097 271633722 350037185 610257382 583379698 677809915 368393217 674162517 230817648 936545159 540142343 509449609 8364159 246748320 857956960 664860820 435876547 875450069 741844554 934543177 324747097 204232502 405619382 491344100 574491152 928189912 129614036 13558073 159596758 400328215 592850377 247454929 906271756 589965263 168190832 328722999 509177012 602131116 752707259 393890621 589011111 711527990 364999961 672309342 310956249 383465443 956073833 755225127 709896324 88389845 823039825 447585201 540201856 271940459 622337580 667288340 56693319 487550111 206010297 408294551 242595442 595340591 847003703 19144613 389007098 662205889 1682864 808646589 153930835 775865743 538719868 764678682 169575473 278151893 806634869 904668079 147538881 484142569 502626067 613777540 229255120 105407910 653302097 964123993 47896398 70711298 599276515 184977278 977753413 594004584 106134258 492582210 445459728 90978065 104044194 391584023 698210506 368426351 470506606 765280848 551058842 486267273 598339349 261535251 143890915 959083030 940094798 895467974 993346157 723254319 376563947 701940089 706312412 800147415 775710401 335287957 846707988 210523257 227813092 704405799 221273252 504297128 70762772 196314932 362596446 389380469 470374064 431913213 960939678 2647484 797755581 933130577 432340062 535779097 314795152 79348846 233328630 348446463 530414355 835165034 363821371 265296129 132540101 32122464 896505875 925645325 59327252 154118102 365983698 527676265 480991346 457802891 325357595 927122117 497985250 139851113 408178796 312929587 797524320 296018859 54366674 22822235 978901361 251112079 302215593 602028940 740652093 95848291 377579989 215634104 509338467 432250470 208059329 786492713 152542868 788555170 391971483 635092856 259667184 745994263 242810539 264013110 497292093 290322809 881765890 161940869 335676824 197222893 536696724 832580096 816857019 515272461 168955694 46386483 698006575 398340445 46713470 822380401 109868344 252955033 631920922 94189862 788751721 447486636 53306171 638196269 614053719 224212413 824179080 535371639 498303758 198823125 588460131 338435473 157493976 942934079 831239804 77328961 606879605 910369992 893211840 102995527 334276924 597106886 102262558 703404186 662610761 141365103 920784861 128094103 653276909 588182840 526690368 724153163 642153664 638974565 502072461 981062703 535559793 54786935 84124254 329781658 530561454 951337226 962236489 470780560 819987046 768524260 734893060 993946683 598960890 53061123 344303836 490471870 630032926 839802077 997742793 718416008 361539010 83904319 37949536 126284884 322734742 943885274 352609043 766304427 336454444 297792048 217926493 396864537 891266942 623194266 506684868 269823293 829629610 765365443 51481255 322612975 504220977 865368534 211862700 421332868 145356546 967483475 946881523 208854697 477624706 634585398 58985287 405262354 745970280 869218614 103652535 763021912 179185362 835494378 823590126 326121453 295417695 441713934 303520723 276366170 330354174 476342739 367993878 100377779 91449639 29051172 310000590 948706247 62932944 694309044 512638285 271930413 856884155 370278731 205163079 391251384 782576332 686486544 97763661 83246604 997111265 61725031 838659853 417618058 198631978 868089232 798953637 566339523 379769811 83720910 587519872 29379944 279073131 886176434 164380057 429213768 32881861 141030860 610646902 591438842 893213530 590647694 832137020 808819141 786424301 38854609 888760817 533801776 819636752 241818208 503284997 814584088 604152096 434649344 495381375 92776400 319073469 846344161 140485836 536107014 786482551 132120737 170087515 908023475 896993237 802091522 689207243 99972704 210740177 15732151 660641243 305269281 14893878 446149213 598616876 670304027 308328348 467622835 349797317 65022026 993384463 140600025 426739340 888787326 692036979 634878399 495449270 72932002 579045642 729955851 82212853 783218178 117025390 827630743 527851523 277750197 466075661 618731146 131841670 896205779 964955730 377208286 558871206 716346052 514798370 413045854 895774946 506929677 128906886 750274426 252200713 143251784 754028108 758683111 257160982 376325653 651626524 428973076 676175387 209161256 645260101 290404391 901416858 655710270 245096458 428659484 193620764 717864734 173281001 824056161 676926604 550319375 187670044 449463897 101738891 399988575 754859078 405170146 563729598 655131700 710304387 912685444 580597833 187259526 168012008 791911089 628481563 229077714 978413098 370370384 315554077 725095265 679047056 98675635 228479693 184407944 315150410 568758752 374284490 781077104 389226598 209453445 434860843 899130003 878761487 712934274 95961971 303845741 381566897 127442027 502501752 719258484 612711161 892380035 523519495 572124385 442586243 164165803 849679798 985891951 251755784 899743811 57307615 520971619 596854199 334481982 455160754 65731984 876267843 323494465 349571727 379753563 357166311 124808762 305539724 596930143 225827344 193894526 776144353 722445539 620452964 367444288 179074830 530327359 736437729 683504966 620094148 862051287 343295765 552429877 375512694 593891491 996361219 584175003 755672614 663007649 761903492 183933468 480513048 99020557 397182038 252753261 961878938 560376805 915322092 528795448 541842320 314478389 736461956 498413414 273071380 46923868 375417256 743146470 100868473 322347336 462012904 105087516 667478485 58070311 836099575 916504077 186043832 314999162 517466253 939145333 417274555 941198435 621762129 189434416 656585552 420113191 259151703 527969643 230405800 553883729 150101252 171695409 294815189 158558773 791611735 865909364 654887880 806744537 962238447 385890025 562169765 994252806 290347737 286257705 212347521 443708221 84806245 766801831 826748121 21305864 726586211 372503817 345457035 545015923 858567685 257680 380622329 318423968 994511696 910810017 928428485 12240475 600579739 84755765 975975882 494808446 824495808 279447961 990621313 100004855 283285815 178693681 336524074 507667226 875458663 981495853 239043743 239513576 174927013 55284126 544819172 498086678 920235124 662397842 357731382 876183617 371587050 714908659 701655999 913823876 385020859 377525990 55530549 519408689 397086636 821827561 324562250 741224642 820935888 89732938 381849117 912852815 264191638 838622403 59103056 5107208 447248515 333662953 514487623 252840096 672923998 333980151 402671384 602836977 627635925 733401653 314284586 942465238 402527136 606779750 354795036 795366751 425877588 398306351 188659716 59058625 963267085 951324127 506687589 864182682 198262667 911952066 941090026 198582117 452962071 307595163 72471971 491977215 853453559 904332066 273725891 518267707 140099312 526151208 913213587 796517903 545267431 15778469 910002158 842970392 713727097 228283785 10024162 43357070 301108710 858300047 774019314 932801364 475611346 815568971 136624957 878600971 36814304 296574110 815596044 1117132 875937099 877010285 501157547 750484253 290756973 869100495 841951705 318658856 993314897 244409162 45701260 290090601 396453104 965889358 249668468 879522880 625135728 219673801 923345087 844942223 704879291 588373872 203042180 54354643 137984871 52710114 573862375 659771249 601215122 509567223 301309950 931344743 612356941 988938985 621004922 744151166 845452865 270478242 833687773 82292253 504286679 873064016 881939957 458296880 216112962 859731444 313745268 163664097 819721057 685320865 337407781 829266371 507801457 765684892 573970694 992627313 27991196 818971790 354576764 344946617 788620671 704107093 465905137 251113656 887812083 489857091 463291324 703525919 245546700 294689220 86405637 693739665 892605495 42556739 204225904 163924992 78588579 393642913 870324259 360913314 882359395 592954243 916608799 678872175 956916804 824561712 109560607 956444253 21667707 452052446 808205159 847306420 952531174 377038041 802496715 67123742 523609736 797481232 752596069 932996370 341148304 254187534 188896079 689878416 152502569 515240344 143544031 511731995 558397725 302139823 284159252 811909614 809461854 164236233 733118283 235015644 688553883 798048200 2742594 478552102 884157443 738541091 75482799 13387255 140629292 333882333 988486401 442191126 382896879 471590035 963133952 49344183 645105092 30134713 660139488 787575258 896873577 964380735 441029457 732980299 767977269 470558532 559852536 377418257 135805593 694371729 883000208 466335050 269347748 72593327 970774070 563684360 953078705 592744883 377152707 897042831 496647851 221905114 357732437 488825037 477316766 989315281 355870192 786723004 812090231 334343108 926405142 126691425 901089460 41219528 866030002 182288291 835924740 591077293 507971287 324591967 101853472 955763076 439705907 490721250 931573298 130377411 537239564 301259659 659203803 368632898 896456252 675523220 705048677 759114806 302722767 43216261 89540621 96940812 651495078 163420097 748467831 383489630 468843031 983792283 298672337 831440811 967860054 329144156 327465281 146990940 925236178 13456043 727581235 503690430 642333526 697041744 446248796 852933918 873156802 923090721 761300250 159555903 952892351 259264645 699984362 24863043 803402321 75763568 244385710 214721819 159841247 204295857 405325206 380900024 326814169 821850015 373806073 507601226 198744196 898815902 193409788 86981170 169613823 293421838 220637634 638778443 457809720 795939520 705208341 246468864 336896392 838615608 424141406 32926443 830451 925480336 820972728 806890338 172722328 39829365 719527454 6322918 986838177 880846736 264978158 32073494 568815634 489205985 539723100 958292560 518967697 961095691 551289447 106750979 517264772 910913989 335801336 931981741 253838284 591633655 173035923 886256334 147080999 333136458 731895440 280525394 18479198 905219016 484859448 891001700 731346865 167944395 557576196 179356194 291309640 30217774 497850558 440112091 679935053 658619794 857426330 592750330 85225212 72228290 98807658 411541304 865881321 152008768 157117087 116437911 809613492 197705733 941100565 781239641 890549497 294029182 975197589 79804824 796577027 961790498 141009316 836372412 796100646 759548515 549658360 927441851 965415229 428492558 821948762 508828272 148717344 557150652 585165565 152059276 505618845 87911195 848272805 735091554 184670700 538456603 70295636 965108859 271718684 243640228 635428827 79408037 1473066 263395469 977207747 494212240 868150889 896832138 481681449 378376318 28254375 991058918 33551822 858747266 573108969 726615304 485263328 9173733 635327782 571851047 536888611 959522446 402581574 176301240 786003761 767422839 209917895 514592696 608554334 502147273 296360478 708175190 689704745 347864521 952342752 833408045 558996256 405452131 732699740 186922841 864833072 203427833 915573088 476766571 968103041 340381020 251693366 912192894 216260101 72116817 825639716 125658746 129259230 231265747 518018317 396254408 42274968 100119169 333239946 775191228 55692764 347330713 535747615 942530396 176727919 171143649 256534718 974148495 838521681 413565211 172370243 25919400 805316610 363030927 839888741 776076614 189402633 225253505 548542551 597296953 636084674 892872557 363688476 509965150 419340521 777144405 303826395 381450834 937745122 366824630 18948139 105636114 340682181 552131395 966665677 898971388 986293279 117450399 774800474 863989834 26928111 133124986 244881211 105356509 109633628 247249758 183054413 158240550 217079177 576855733 532487687 33270495 216748159 789127228 657383683 925732687 654726993 537684570 452874862 184835702 588989165 905015136 944156904 889041274 984000272 526251179 768965726 206023241 924483255 679640351 599486162 762083536 201435301 946693416 534160276 262882085 270108034 633096939 476777874 190724169 416441289 402081460 669288644 57877838 375224481 209766032 398378766 156507071 780639429 261102589 384996842 330469413 763064715 997172493 922011343 758754153 672835223 232475760 999135173 578518594 287946327 889480126 904039398 34614581 3494636 692574388 620611817 492114774 277907623 245075605 265139535 17649042 394275897 91204669 41228867 322213006 476574957 645779139 701297447 797494056 71894554 230697967 798861431 587655915 543987805 331635606 313795473 782264970 214829013 235434236 491731736 453057928 45578852 832665496 143082251 96825974 741029350 656425499 949769682 965678302 657778660 474323903 887075606 345622574 456450669 757011439 401090813 102491688 756174957 664069241 811671899 894275388 250243365 301575413 523911443 902331264 391551630 619890248 284606434 391850855 592485170 611485836 207656055 657099353 417312452 296009190 458585493 429645275 326343211 312430118 779559987 749507112 678287048 461429925 206201950 893038585 656259336 613869225 273301125 704487108 724905962 989024651 796686536 218209175 220731027 410713181 68702927 60756210 221927915 521546792 527135230 877916768 616058298 172184861 696652369 557664999 616161588 947414328 263971364 395075790 2270533 462048895 674948939 222981120 143343348 431518943 538602260 846159757 957576306 341108333 368622971 397064138 477088869 456450508 212520594 429928268 38596777 386399886 379822752 228177190 23568059 295887416 187581208 584920805 783866767 84423305 435641953 472434411 604711919 818866247 68073961 966332668 177990158 865148121 175958543 414619474 26315158 938635576 499696794 169175014 623931539 38301460 518817348 696936582 962278969 535997135 604362331 891990932 879177228 787907446 476313806 264742099 10239943 193183215 23036476 49923826 399888781 348249167 919890942 299369084 776179942 331208361 116457256 297809161 54693416 919976009 707351936 227837198 463328560 473398508 942828120 453869413 223921277 576654833 951534817 627138563 860890903 53252084 724177443 651509108 994951630 631048460 454659738 983138217 110079687 721002836 11750990 53318476 55666458 502821825 793433890 188139885 930193901 203353428 556798893 980787703 477342521 738551189 448782571 554224707 390958293 204221411 140470475 811875586 553445846 508483728 955386681 799970183 249673063 699946211 51531150 531973883 89148233 474261322 483697139 95108962 94873007 530328588 152090610 402716950 904449766 824172079 527313896 413119177 920074165 126692302 714500390 825750955 95678028 131556899 689775030 991736400 307177380 74301973 787141640 986007744 236248139 271521836 402039068 18776672 34508694 392247259 859312364 970902887 809777901 486067608 803913116 455075709 488262359 465492450 978195390 393518524 679161567 518879427 231004302 929823526 206887566 798896963 835126569 918836592 712864882 336235859 463701890 838082486 514034963 821692488 589876260 535162764 165104188 231020130 754846098 166351191 770717331 323571823 994932187 455846716 971936355 455522684 378398169 141377940 77826827 182406338 395982332 355729145 734885962 439305624 145222500 503438061 42005709 648704041 930348976 390415995 577315031 226554988 563649277 748467090 392955876 738424201 870182000 487903539 217649651 411380180 364964355 508741953 953106610 994303391 136972532 353385212 220691607 493500445 270650683 895841888 557407786 849316321 47219548 342257778 521523388 929925599 26078234 740941014 381525075 408006663 817424337 161127362 552515073 188053226 24878267 277691347 585556424 89681875 221049194 574908802 8646257 705005944 849578519 19611164 992538496 988068074 419895769 238035859 231324704 519178442 138254496 92597570 208328317 219996726 738765723 817575903 471329982 10522816 768710622 101023253 847075217 896764376 912143718 779487255 109551836 889738713 488594680 326663364 174294499 932872830 824292876 124587140 72150902 515763736 638536444 21411541 515935267 776133754 30176039 138752999 945069911 169948238 409110880 902750011 408621297 554345009 968787761 985430080 985587315 83616871 641829562 197548024 735050235 936264820 812764792 425861695 995458126 249731409 887811142 250446989 161295069 52825271 915048476 585360884 258319611 443885966 999272314 527286011 354690574 241827404 375845894 622229913 99951523 48581838 366407976 344647874 453292014 556435295 121821000 739393668 547870941 245401480 362700893 643877507 765627589 293737332 913534288 661647814 349421021 908343620 16607104 871381881 671975794 607581942 987525357 951722843 668740358 277819400 424608776 898055718 325150099 836215214 890087241 334790010 660692374 825497374 191669348 858196729 26577342 986631393 36644528 553111124 817484279 690372129 205852794 457793833 124544045 571716326 323562150 578043929 180625913 985144753 867232034 63166977 550631775 938414231 169761645 648317065 55942052 697488754 345825064 523980607 473063662 946560195 103938766 341582930 316805061 654904903 782071309 574879150 72600189 716449627 621306396 331305552 999331073 647044214 230355720 205877710 520130996 548617968 180031200 873772814 159578900 398707707 181027321 706975817 459593336 199335529 286508637 817447894 25902070 628456323 767632532 543351257 157227931 282366880 118534562 303207699 255214524 489857680 644621485 468093847 44015860 430277528 684136771 303473277 689031880 790968563 429826549 672358460 891308097 551868807 142039391 620504540 974209193 533415608 285264496 397010525 25557305 118539319 271764940 824627712 279711447 110927963 631591901 238820554 812413367 925373389 442545117 395684252 680707623 86607124 716384229 781175492 82176145 136651493 22340731 672026952 825422301 261056308 614450989 744079402 85847457 465011591 192418454 39509561 697185455 835246174 853644915 791632575 75469493 725759416 807191866 953304816 713387105 122951441 639242058 366830789 417640004 359818842 812553129 594911214 55282515 647668573 878657932 914067673 56541492 691616192 875473553 667188685 656559656 10186956 725742659 532153442 46476760 864916386 622421847 550330624 681283206 455715190 665384198 313366467 79831552 887867732 837211103 316780399 254321817 419174751 289422977 499344982 871855981 2321639 423690327 97920916 916367613 39458245 34727928 799368506 342181328 407655989 325650135 518892479 365479859 676500676 17408439 522370513 66297299 940851340 582232239 661451951 643144686 650074789 968948241 383408051 598720248 785994198 752140833 462917472 546082400 197162975 207918540 298784769 689974926 385814519 649058703 469425355 200165080 44206618 842791162 378397473 30654215 621453753 51537105 633812349 908727932 99621581 808457270 177340935 202466372 190903165 163697886 439304281 996620372 800428937 706484302 833587464 192129447 64589035 587119088 727272617 188022010 756248138 335475998 966067619 581230339 98775652 793715539 757373023 739779556 77839810 733301019 989930655 216879394 918851161 473826996 733689139 488357030 707786527 683037044 583331206 226999594 125874100 880257750 280243931 897219986 277898287 578373491 17662105 425314721 238902849 539519024 492024575 471845935 783314969 718330102 979429729 61586462 716751455 790586039 812701616 76039861 210688301 438437277 343850475 541944446 480933161 390158927 630362183 805359072 249585113 175392771 988925723 283666637 823507270 32276702 459202226 388101302 571665279 169846295 377015272 650811123 106096533 96472273 625457772 13439903 889618849 956324507 513679143 92810812 114770383 645702689 603213800 234146015 334675526 758995798 455427152 10069960 828534747 91653280 281572188 534383821 756678021 416826930 637324858 474740514 363281333 664513462 181873998 793153452 580409793 586199029 525205984 997588311 793146847 943624867 966253239 340336392 614236867 629705503 78432999 272782388 332898094 120934214 698531215 986911430 971266891 440552785 973030574 819878456 446215844 667083521 706463663 523315031 871798914 573070243 854071142 960836122 834188 883063364 253389676 658608871 161130748 761948496 168939718 610695554 171513440 795213747 52963928 381826594 725850940 569022660 800015378 263744958 48707552 723749323 75527180 779633235 328495484 758091515 101446401 273078646 851009266 517229960 600715253 695832450 493233075 402622941 744441337 273503246 338271175 254800357 545001648 646191171 501511013 721468555 383837264 874403449 65481341 602032055 482064512 26364966 447722627 522459549 260763067 969604176 562265919 415344361 382528195 339071839 461495695 414755594 112730449 898366383 430931039 311350207 806349156 239385498 602351812 845276595 539274061 696546714 276878342 751230660 229981427 939679893 560236519 237640301 127194612 415110393 710318731 141722977 257695807 585668278 290473912 404612139 335726341 840344924 439203686 501813750 403903014 374139799 354689075 563377160 503258663 978171558 888132999 17631889 469051934 757857717 86837448 354639275 22564244 674948316 898566121 33999366 322687827 253925993 32800030 514465305 522155731 871711674 327348997 869261651 351528336 516598468 550770028 680658416 698047745 931114972 734759428 12569611 700316702 213848077 932324372 552812723 716816793 858133059 113621364 211557027 365045629 540818861 608053476 634450462 271669405 179175584 958207648 272285234 48032501 26098205 532202992 364075111 317966494 255660631 275897518 108641421 434683892 658354610 473047123 814646250 233455426 247223106 882494439 726130668 243602735 301906436 998687957 506948308 630679397 936288161 79901264 249514643 907820812 642557558 374531962 582556380 693801089 849777955 313928637 439247126 659591707 239964185 124338346 438475133 669207777 157505264 129744911 340906857 675878008 996115738 328174952 879274481 404208472 269350839 832015811 507043756 503617898 133252804 374474128 883214031 173658839 898371894 592342619 487134891 610542350 519940828 734350192 28901685 136082507 312078541 482067585 801674463 326454017 350508465 450413501 569222413 800315888 531240771 473413147 506986274 654322015 84698559 384552138 448183850 520977680 684792350 513525355 142449125 445579879 928500229 972126034 295110933 766938027 837785807 80612139 83573661 417492487 319768067 996611088 481197576 322844397 264902390 63895511 612477803 635049137 962779215 509756283 924824 497869808 372297454 374012698 282518586 667590421 457567138 896632811 261716312 919035124 624570059 409756525 461631270 780185386 609619446 403839510 524846692 984721957 250137847 524512738 923393579 969426000 721143574 122801113 176965139 332971119 564511528 759680227 512517632 416056451 691341977 285356298 439617409 128097504 707315885 856265029 513038988 566183450 63677803 771804273 401741703 909863821 961917458 771693708 114497700 753383032 887293646 83120971 352350234 440090980 135883096 214250479 725623874 537848984 246604929 711624284 47177834 897118291 928035125 780230671 831875684 276208367 207842914 373428844 321407689 241412203 532985298 20559875 833174624 817747784 646551188 335296030 955537811 229312268 474619008 830779679 663758889 313161772 467604671 683541379 94177443 680266769 784710982 408304076 213659917 317665771 799311250 444547873 517708 360244449 339476765 165390064 939509054 633400531 208171369 96169122 170385163 386854108 479194516 920238549 369743811 405143259 488481258 955397485 856603266 707550273 468875801 488835538 696036476 327344368 856503402 686835429 219007442 583904745 265385416 162517769 854506920 470996642 274454854 640155090 886220882 414058689 371431172 399588884 663246714 231933200 100145444 79811144 440560129 15147466 148010641 284061461 161497169 802611562 983419888 477689226 528007036 82995707 107273766 303311728 589574103 530514031 329790430 815355167 817653294 159418315 64402612 544274291 589749181 81208838 783770950 650535745 36837769 624039677 135878701 393168031 763069346 338101530 248307306 189296632 319040827 849634624 472812438 556625652 362260905 606403231 762781422 512319922 370406375 867073671 287853985 781285180 418436540 275167281 170633341 57235217 967758993 11066643 541750211 988785232 701666537 439495862 876835400 433875804 848085974 755707300 13662121 69973916 941662691 806940262 825530828 930034650 213262718 606210321 487907708 784560010 112210608 658769068 535288121 460916170 740578701 86792472 586923921 363620808 683734883 982328241 697495609 467803489 431642623 146206083 193207048 522617143 740188009 308125748 492980491 903723433 429688816 417345020 108447629 398221508 706629306 13265479 465116943 657729294 284356760 158650390 744055884 881535689 159276031 296611776 140869762 758977685 814749878 757364428 554724410 634431531 471718037 15171542 375813504 883581770 159012952 328078537 412547400 150800505 677066283 195495528 691918344 333629741 534156370 584305872 590713085 809730538 315466336 453265890 217187714 836795620 749375457 36544357 59247121 720230757 927812022 461646403 931405745 937510653 164119663 588644072 761090260 211314871 912659014 340872702 872209770 765663800 865190396 302678037 751541971 78218483 206438682 309315569 228963902 579463053 502771138 660582770 500386884 518856743 256531689 855992259 986157661 338067957 474976686 468889488 382932212 769436858 764067401 825608014 799911442 591408731 930765601 239662860 542915292 871405824 513193757 213034011 410688598 280432416 410854629 443988764 249683719 507237996 687195377 893403423 595031961 7485632 174109598 482472026 966695672 667651867 596096026 607006480 375441860 541703518 23977107 632224947 680759103 844693181 37608630 526708511 346318303 549414822 517226582 953504590 416109521 525365223 81200722 565350561 544683432 678778287 953092331 341439406 238964766 928756480 787824803 118623802 23536349 546697027 959345307 601800693 626186889 489303996 905805923 904000444 522275837 54250916 734470946 331366438 806651594 803810593 215815723 520161047 946025454 919633407 630902541 35843389 814605620 466015711 299020661 806224714 66887681 884463439 447119879 29900048 315576373 40296781 44139852 286258978 738503810 269078499 100924976 461344053 829037631 281661110 53663640 522711313 253295335 287092668 410836437 13389109 107325703 869192000 749069893 263674219 47508087 397232323 788144714 508709346 647633324 286607224 940446345 518557363 834580592 678373266 524253906 772097645 479248072 910896278 699251855 711518707 391205633 99428582 155082461 558548196 260292915 944138140 445110156 538111096 774813560 742180180 275062876 222640479 317705631 149494216 936217689 817394586 178108710 268580951 129819175 92521284 847740085 522718621 992224147 230340932 164445540 799567941 668007485 332267726 374246476 822054540 108742041 518655854 684636196 586493321 536989893 526323861 314640960 377989301 71847397 605716844 285554771 704192121 523081109 239716198 523932172 838714808 481536676 188872589 445854439 351353952 337475497 222875966 823854159 497215398 596446267 19955003 168288003 619707538 923033401 548432922 540642961 444493698 764115352 611180515 167643410 514029377 17469718 217570895 168742517 945607484 525578598 643625921 644095882 996507929 5076190 579050199 806793990 607278101 564673481 762106998 962249263 222054967 977050872 578109144 639928876 193092976 960528291 859620660 20981890 183858380 8677537 755626997 797787496 105372827 801946169 982735711 462255343 276645167 397301424 220358590 863891856 567212954 252040894 438687739 213264468 125531430 605793664 454434660 860551293 437137682 947495036 195255293 683388138 505073283 103949076 672671214 208902506 471172620 667500405 439510272 119909872 394854431 264990218 968778832 880405836 870970791 980763073 322676204 694582038 26676288 970824289 987623305 677529166 441452206 749466458 965705192 319826584 298516119 875414585 445111438 952765082 125909995 88723335 589709228 528499028 999860761 186780681 251832403 666466111 965733690 186940171 228020498 227782313 807154364 888504840 860913038 118940793 234173535 614940371 544584078 292324565 289453976 336553826 506602349 147945269 946203245 972624631 570662032 414690977 709702838 630094774 128543782 628599236 150938192 487842955 938830141 225539158 626031836 31446169 773402506 294523289 914159459 570913550 814411293 475298014 168682010 225826477 959027698 252819790 197884550 825506091 406212644 800907059 467667188 206524847 823029784 594174470 298778841 365904085 87289466 203846032 916509608 501299578 628211856 910209586 939683709 659967916 14449329 134241225 758567298 892834862 238053512 981333715 641482044 608409389 878376651 804734648 787127039 599790994 680357455 842548585 315496258 991672808 224804646 490506569 845616305 10541089 249824063 126973540 739764962 244044064 724141122 478645145 984863723 705219356 454676131 362218530 221027461 198983450 496688950 745499036 448755935 869833539 491269107 892917385 988485021 362393466 262622554 330300843 681378338 210882374 962620529 313906878 587230316 599407204 966658683 656797798 610902825 977255122 165848489 648775658 115577244 188679358 848022373 23346841 837922993 123014147 936728772 406247078 858531711 467285733 344315902 482724121 619175254 442989704 368110470 194450330 424415613 225010021 262276502 868114269 870568729 9231216 928859570 592156912 978360390 948017425 762835607 248693771 89863902 42433459 141564189 395159430 50091971 864395769 593832140 153063060 351757059 518496353 247410065 255248896 863389064 751825357 117022794 581164963 472058340 948250218 22004372 692263544 445343092 815597638 811574285 750368691 774382370 221272128 789325939 752703762 631992888 577800227 833475641 658796733 941748896 556477771 425670330 834181413 807842909 928761225 304507844 718348630 822054931 627948134 248479412 389376068 4782313 783515595 115816636 58413728 227736304 215610845 367678047 332291128 47037959 698490849 808812754 106413533 189375235 6486915 734405905 146911119 942097131 745877497 721949915 883037508 674414688 902055105 272787534 686465330 468131469 23365829 671368891 644176882 288044642 581984151 411340878 147506807 23422648 456350862 272747907 351563330 352021477 54321743 21453108 280869116 326828998 266214619 623563495 753758118 631315849 574535773 206132812 25459943 193866852 960649566 871640503 457927904 282946877 387527478 757527670 309818290 212573622 438865799 416303347 829390212 223230413 415466778 561872919 758510381 157871749 923235772 773376234 536504416 580535166 820421765 75176151 407819832 412975210 558572215 612570141 300851323 949724970 844566787 579847039 855849091 967988286 951835200 498466368 956703703 465946593 107848413 789997224 486547718 129368070 651511969 156931073 253299736 406018801 200662039 764106815 506456094 463259450 300986305 721737904 862335587 673916523 274475881 519933241 69897551 223947693 614575434 211742263 756724812 562082232 392110934 420048070 996904379 749773187 784928669 932389521 259561447 579711738 585656551 19412288 596061154 278165425 390615218 208423134 442441916 779644776 811982896 813845461 130309030 712589876 443791587 561235125 735373687 260778943 89881680 972889500 55945039 850274807 597342119 847123738 481674868 858893109 420161085 546491382 61168255 310660027 465157818 351496011 980526469 714756981 789826892 365052245 102132301 618819691 838885568 826820748 296879590 575963926 465107652 757369596 5959836 806883897 385689608 409046550 740220828 239902913 322958779 759744424 528147824 186563743 420071207 151478733 63377056 250144726 711776770 381567614 862321820 673715878 995718956 703170424 186954266 818313980 433587653 33905911 102929829 816567188 859281503 92069296 745312925 816745241 458473074 691615173 791769509 390394079 651642813 386788255 236414868 606430249 469897499 635071033 117998709 253404575 767340939 761167130 283606541 71239222 602154385 359872302 44500258 497119593 499145572 632204050 208149227 290779032 925586776 923195951 32954460 795563721 537568655 50434399 705293965 734646326 865190686 493285086 555591451 993312797 981557261 245262163 184289254 43507771 214617234 29585433 600738365 967650842 649335965 215005396 999969326 358897897 24216187 943863462 851755196 692903013 462100021 104539363 466448270 998512854 771911337 590399959 911154862 368590190 969340754 546089734 730617070 980809308 602278870 760834433 818353504 910902544 76304347 394033767 765739287 591760796 405992204 652221152 799485227 714876156 488030508 730497880 772784612 466497453 46155466 225058749 127223668 721901862 168599060 327439864 862936473 328108099 223700458 971997486 94189082 64715263 929412924 594462103 688009179 819420704 239906929 550754040 139660913 20451909 806637435 774175363 317056120 861609027 851017645 55083562 903974153 121310831 716439839 393199230 364845715 884139238 153692447 715113519 241684397 52279769 34514534 674758550 266347764 943614155 594851875 579132371 240234700 139073788 102495633 798341794 203324265 649942200 878539647 240678442 93792462 653393014 150469819 782077142 994629235 250760056 836495779 711986169 181743820 648956795 734994175 484190148 910450113 309541866 351681262 279519993 192806185 181340641 486796671 316221847 986410529 4313055 352520299 509429722 14652686 114247737 172899251 943541751 643639659 398740519 221727882 950313259 674026405 212657606 969876131 207415425 240895897 755108931 357734048 35804339 433684061 797309048 234803252 45315240 515570150 221342275 9487685 486202739 178274924 657190443 917873980 218648644 771837656 369508059 710656538 415920795 367476260 638519761 304409627 340758659 160701617 681436498 651328370 305563878 980305467 198932640 28258692 260429019 457991379 5589739 204719199 16183790 613675718 536992000 111414152 823798997 678091399 744854447 282487659 345268542 121226984 796838333 962073898 661972116 830761424 221897404 991505830 287280715 632649108 567029069 597184652 21600154 776447761 82887146 803091894 69561372 424405332 208230934 96784185 437404119 332355323 833310314 309355233 1071666 448779306 89749282 641713335 839728775 1986081 510019845 849584347 628569473 82350902 554965571 931621782 589220452 214211251 422870883 30701944 471481569 226148401 797136666 838580264 828503374 749602089 945100374 297100502 918936887 249238859 473323615 475601716 49028208 970355063 220322757 928563187 15083421 281733802 994301882 467228797 55383530 52193273 278821663 652505163 210702650 307096428 212693790 601985604 459650647 661946204 5374358 344369892 900225541 839870449 807067115 50052080 261891408 694006468 635222176 398641574 782027209 535878252 884176593 191983236 52823082 509955932 424317696 367834989 771425845 458616106 272077825 310803141 268937659 230641345 472743356 564586174 702645175 76215784 236738060 451091065 976339170 948950189 713879935 399939283 548101785 754110629 560859424 111685674 641965132 548833736 399741155 930093402 461582046 385202394 530230131 205132565 941458709 788437192 711796368 155871745 654949470 65816146 72655914 172617101 309491555 390686077 260327517 330511659 161607746 16023193 784865859 539322673 970200422 618342069 849224055 989728261 816628519 339546298 980529596 540740411 373409489 738298839 22766265 595999346 324043802 965497396 841618537 716289410 712384239 202216942 908194242 626370565 34314736 954860467 499219645 86994521 957371220 177229096 93278762 925814010 981655860 569230207 317766459 847959385 893090930 672712754 533048499 795586439 769220618 851373841 930003783 445404712 216424863 580680389 46640513 294726019 815875282 461355763 580004212 82970571 691405354 915092899 56424672 651449421 802534753 634466685 321651234 160082038 544436714 132860873 283687951 90061249 640795481 589995045 259366608 830994281 837090763 720767298 950140268 109070226 193861130 82617146 938361975 371968159 798486786 911782001 62231137 500658571 484854037 622479822 11007622 498452770 631082805 227597509 995295566 662814793 915899631 740183001 341505951 409127733 564082799 257767811 551417175 253750751 481393560 336198813 687747420 108520712 976139947 679178090 942708978 238517536 82855783 672302925 527267862 252661471 794974738 606080664 87778680 506319732 318475748 616790405 323496034 821892427 315996823 212771892 682059977 248485870 375899595 737804673 674767546 146861850 141767800 805361079 438218838 923227410 369211605 905691122 80911908 471190062 563700140 521482126 143475242 889817886 268296534 198596009 282822869 496793701 241730990 188049413 222069513 841870406 823620263 195933736 890601079 484801051 408015521 375532966 928274712 980423903 424337151 16804829 457799443 824410706 672536808 525414062 754879500 117306869 34462385 115490975 882106975 751723142 751507354 308319403 515187960 475689222 499761252 777628498 613790453 477363651 416195557 953223763 757499960 519609108 189153046 579991977 11809417 906972343 600683919 456713780 990189020 356148280 19546775 599285796 390198838 441398989 146501612 338276705 911046672 932094757 70490941 778390694 218163844 307933337 449102466 536681771 336894986 764512000 519117734 379466216 430717674 627651733 358846541 310196442 759185834 1866624 206718348 507545559 327585782 310762445 202638694 717639472 8867570 713453931 521144611 160863339 713345855 793559764 330838370 196280987 96649723 320749130 396145530 75934763 390134719 235781433 605966170 376265267 342675587 275622350 146352561 700383013 25635525 359595381 699976125 587149453 500540177 710323614 335961113 465686494 776442985 886617488 28306325 275176857 731314234 841604158 810770173 848340655 641726149 520910161 10027320 256038034 551058630 187765056 282012285 477401242 546735679 314719554 164045184 767953510 860931479 269789765 923448511 976925371 398406477 967343019 362504773 590320073 472840194 364772126 570420102 54768006 254978446 2561438 472839233 868644010 190222236 88334209 363345973 857611745 445982579 99542715 992982248 904756564 291888220 241526547 487278758 598800520 185746381 552939981 310090386 708285739 944293105 865539944 555884300 408639471 950050764 104762103 178686090 598087796 597292008 576463111 244745134 703450056 306319793 719877139 11962197 813302163 960753345 659791377 634842424 753764077 977487943 924549980 367787037 949591700 344225593 366226935 206989591 530680320 836665581 559924847 68351667 822170711 899358577 777922953 983564202 237479429 28119023 193536111 720294127 603226413 38198598 833293615 764658673 81666343 329693024 216159893 935462564 393477997 72305657 740857549 282840128 107019568 346649232 212356906 700866979 652127274 497051791 9480263 894504989 688181649 853167824 200455411 896914839 620053113 254683875 423424152 519151098 979293624 709232107 505170533 846360528 580173987 121342633 175372013 953765644 663093330 678750856 148891488 289980430 656369216 241545162 625117072 830861421 907523918 661193371 744258837 313140552 287942807 996242389 300837095 858280862 242149858 192940312 670420403 138680614 383723574 547412727 284449918 999792580 758206412 503074274 933080219 2426442 885623803 717445819 203705791 227108475 671431371 695977362 657944669 225752516 28265412 719230090 450488897 592695069 3674013 365504776 220819402 476188845 190166812 685060838 63643692 483351554 763271862 175964102 430024216 541157716 963976764 322322557 762418433 173362572 798037070 558957343 774977288 736907108 156629019 238018530 89963228 609350470 504245693 446908485 840480368 857640457 460487664 470763981 163312055 971642554 338518206 904432205 594454957 802876371 845401728 369905485 249621321 521079291 988144522 555925496 285700595 731333759 940383364 472401450 907025188 576297279 756390951 905265575 902406910 915784840 377678064 74456907 886263712 160761860 913229711 387234769 744122759 868919764 802883024 531826619 733539771 914447477 566638754 637527891 955799621 7791426 801432344 426997376 166621856 952103389 366120158 920200333 858140261 734771651 3066015 131412236 92771804 281200846 769244460 203091841 369287680 326989370 656272984 284202258 757541352 476784190 256254002 371265645 461837647 394641508 799183253 535457383 559454472 630052449 790382088 482694938 243708286 245663546 618411883 751881154 752696686 849837970 492824487 181754372 737416744 532541842 481540555 970421711 609886928 170072487 932904880 722204169 715323268 720329818 509303292 190393349 476641032 769738534 551254610 876440424 202493151 773107832 146788940 805008519 987433133 76232321 460739428 964153705 939987195 619382487 57892120 424314593 34121951 487378784 200377550 914331136 57811373 359908528 589327911 837918879 635459812 610182267 695936143 899725064 372283117 773025149 282520874 922156851 360406695 752611352 233112176 403008261 116029176 551249354 600140553 74875991 696175891 717023181 220206089 681447044 288078141 920643412 978523764 896552560 332288641 320160646 429873441 768946633 102688129 161691309 235521947 185072240 969427778 344341340 859633093 465457554 194347311 376599737 653938633 290535161 257415767 285020677 5862039 815725095 582455941 198343185 964140819 387362760 834453427 811285669 847033678 473155627 155279923 82414470 91313014 201738370 365144097 835352124 166704899 846519381 528216969 659291226 169077275 643862915 522273630 353369808 334051239 9727473 872324915 222327909 751478749 77490685 773417717 328361318 668641912 312474313 633158305 300984065 419901655 584255497 701733293 769496994 179279532 538302449 404435844 436166317 964949506 607138203 446184387 595612279 534196399 149197285 131076365 893227864 764103915 973844311 267343809 46940905 918958309 979502748 170097843 891358814 418572523 839189653 610567889 368281929 822133930 86139680 589848660 981958069 774598989 813707323 994340189 398522833 706266151 384468673 150236561 371063345 647690427 22253840 196678059 344104876 348611452 223813179 517708634 607840588 137080696 901639129 669289915 110538075 393560544 991703578 317400791 224277044 579109370 117154820 870866997 786745922 423962948 281257918 234344515 640401085 869537260 174083746 568525018 974264705 924061279 3804034 324476777 643755 965485810 418164685 885095107 496255092 935557622 664125766 499653837 495774844 152672507 653624697 601340590 124436097 393794210 320363777 524477068 996147866 726852787 891781932 482444046 997761386 786449553 93530425 68795522 839410729 429672058 905025967 161163809 374273981 508631025 281963264 931966483 660929989 847785873 971924923 403426572 268324618 973192551 485921769 797142322 445781344 580399469 72415418 448467998 773517491 853228055 943977884 551633406 605627594 983371616 998959290 57851161 310714682 499532706 60430732 247011562 891108001 394396484 874665531 904591272 203482291 467767105 467838289 342742424 358862677 998079415 205545818 41746710 400262055 89445197 300463971 737133833 83194641 543291461 803382511 609896425 463650341 926976849 833591397 392555600 180634094 610972071 877784711 206333776 375561093 786288526 31809026 298342948 94285934 241371615 694539578 238299739 90796785 942235187 992991301 68329839 936174861 576029166 173393556 349640871 35320696 998430538 353205170 563120349 645942588 834653098 725106656 62032475 816608366 931551998 158132684 557454185 996878811 716976989 687724766 268559074 505407970 224207067 714892137 795780791 790730435 527295404 239719645 144950240 182102214 99761853 954569883 225681484 21145829 11193517 734746328 413662111 339364950 45101181 627847120 314456341 525860614 306218183 915390431 105320215 231348229 487622134 962225314 103391390 667069471 598630178 710136227 237187843 905604691 460704251 359543929 130880002 892701802 825790119 958144319 888118645 732393991 55671073 464784916 912502401 296783865 193973598 966650909 940339778 596112919 268263666 732006689 550911012 892821418 657200790 824861313 194894793 554319869 872951271 426816290 778533545 395086889 889580281 505689996 265113452 167276009 573689739 186295751 318699198 384278739 333504629 860212122 914258492 537621323 544557095 523976097 895514236 679295571 573786553 63899476 136962593 581511319 603008113 140718053 189469539 993935118 41771064 251671686 830713652 563995729 825517955 729397445 87950903 878847504 282919588 380275335 837151201 620060234 659297829 709827670 169635393 84022951 660197190 862785843 548052255 236793901 117030444 866182798 49401710 41221937 754270954 301596332 906648801 119498052 369686094 793330787 41359231 954057019 546239249 732779469 27503430 522185188 501381044 733832745 720765642 803439838 84269967 138385073 392181406 98467048 870423656 92921660 138379839 532246263 325520458 441748105 608497926 327815887 411530541 135654636 664583237 276468665 956114640 890599651 302587842 348715773 579273357 883299432 599276051 648646109 576465926 973346553 307879248 82928685 360817029 267238425 538027098 941567662 541732557 837882319 566981666 885748912 195583211 426753456 172664908 269942243 810834038 292653567 873967816 785635086 395194750 493205570 749062123 705827623 616403515 254347878 157106894 145111128 118670659 677784714 429020431 380978614 406085412 669296440 690150208 852025094 428115276 619659193 327852156 67475449 105470942 18232256 681662940 805204883 959833693 251515775 732826382 441456324 616304955 745457647 353444880 990184755 461188124 228736798 965304071 919525827 240217991 590708416 702580974 530460533 7988242 834993608 736943988 269873678 742384119 131143225 68556433 852846533 649402345 810100358 420218673 566012141 639836967 791362269 671697531 97764399 653783477 608377849 37772861 583824219 98118008 234386363 400865529 874337854 646716674 401198193 690592584 763848470 231604141 304655511 628800246 88450836 29069236 918126904 126282782 921213632 131372892 5781245 829495417 997343974 959094436 462602512 98518905 332678532 377458565 506163631 779624108 123367382 326471630 799781906 830340295 220306884 765517716 388251160 948419806 818564451 88466674 111506721 355842456 460458018 581263039 934351626 164430280 690460673 621810928 359773165 311986129 688388324 616499169 628210594 366444304 954146700 956160961 882971731 609232316 870990102 708997466 69260238 292479322 483776530 631810058 416045830 564622057 994361713 574804731 90744786 826530058 216942812 671729731 860352496 74983700 880840106 276279065 995584109 165867362 519265091 73270856 312233775 241978809 18622036 922803720 51243358 719775603 863980669 652920369 707718489 194621516 464752048 995080381 931773763 202392924 912402353 418877424 874498681 236716060 425566898 746387892 613932390 183542013 59698496 124634550 129270630 863199268 536435951 465868796 369941676 738332899 821051199 214055039 937466780 302316553 962580333 919160666 534591604 2673700 668066050 116266151 301928174 150618942 939986526 999424199 634180895 59123385 790645989 658312681 796395683 824685120 721326318 342944716 369698771 519579009 119082956 12319504 717329769 149532320 258026721 465976623 919932148 4371403 670880951 505068401 729569036 861162470 988668297 144688349 692092944 991796374 379831804 843364953 95779350 802003084 573014535 539237507 428007906 214803095 47534391 188865821 912758085 80227180 984428975 330894892 630760267 609267411 930590057 723609895 794009134 355795777 371945091 234978536 146211424 175810708 452887984 640250559 295015902 785441837 194860032 626091961 732176607 42395795 490851779 566135837 54700848 88101112 603022679 562581858 579131534 613528388 432561055 783104430 674445521 728610721 114144184 500158929 758705209 444230734 3704582 855326966 72065485 275403175 480931709 145415858 172243556 667095356 768211926 185098216 484139871 805305779 176909531 243465415 991769052 137766664 563091144 941124390 915043701 978267808 746766368 489345916 805027301 772454056 218505577 375313525 459830585 603532427 284672853 77020697 945398060 828181551 20476665 654046712 613603468 435830413 500556342 70814536 873540374 418494693 116818430 871167475 225687824 752679360 863654153 435725091 375701503 104209578 828211413 955842510 865008508 188294886 177521788 918749474 409056481 80528517 294477363 826295743 890761687 468922273 851033332 552874663 575071158 831189399 358453876 148796479 525505473 435113785 482863532 560294065 153088120 762980714 185666692 413011644 842404042 847807479 877662587 65719065 440206201 75258978 847436440 773401174 81787058 463254289 17668795 523629697 699233526 771531142 953413289 499075718 505251897 921870268 484751677 183909065 194645297 198452247 457049593 51123276 73263993 506476402 69551056 252313471 185333754 106989500 154120271 405987965 238567220 875324889 101485577 346330646 282357199 965262299 834180905 554945911 223113193 891707384 2181686 146512472 147622855 431746051 494602412 999914498 631113197 311445500 653962279 285161221 639555354 19775089 996531442 492107540 219283462 670130756 16996776 249845617 983257486 880273586 511932538 1608910 608918813 170969116 350712312 698679483 220171628 873966663 317060398 51996981 526596878 500965301 377222971 162522063 110220042 469517376 360036385 348930685 647202728 516684806 303382427 829473571 8227701 652448547 350607864 181491151 470121629 608613315 466741135 361423536 823969324 413421615 245940644 263019313 602511344 536989410 687080600 38228481 648130081 477405862 891024422 282706683 113505489 910917157 856003565 851837423 624388807 565925275 161548679 892477637 696816228 273660597 487222585 72802576 573317499 777270253 608967083 751309657 361608632 131935083 756918751 556753663 322292114 472641848 992117364 497780331 542782763 628687437 277286755 543846856 491683826 254989728 9498681 907902471 780432204 336683768 668248870 74750055 981018409 938978414 651768791 128987656 763494580 596492852 940615821 463000453 377863619 47681283 112913678 211037404 353358452 533607454 499758214 246920151 403200280 715596657 1175029 345138811 640906592 485566613 723686397 907936840 29718510 731627022 549751144 705410507 251050747 624090258 572516021 443672644 491695270 946318224 948171361 562073131 228943313 952711269 153215370 996576250 337362345 103057948 431684209 967172219 389518097 740177354 332327328 630075468 314042070 402288716 417199238 207208358 961810145 502695882 912453441 760093142 517364597 729427806 578718234 799164578 526102415 191420658 630521383 594352463 263809801 900411729 311021794 978466558 364267159 129028715 723010127 337221041 744063342 717765886 463272544 705959695 351823126 289860264 911106881 217054562 745761043 165915794 792795017 948849555 115030192 670573150 814357548 717356304 810459816 436975360 217085738 688607615 663821950 844695312 917516856 886000359 857067279 549072230 255077136 962727540 23993014 300564040 323870898 720395952 684221490 35394026 444470253 223654363 987975121 805300571 198986637 947604792 517031646 721471657 309301301 862831226 634066635 235883467 216602281 222944742 806310941 787602480 913727632 766541510 901616076 52183201 908937886 460925292 829557897 409437687 24963665 993409622 687581295 147422874 123147965 275599193 419231583 134962084 43240829 356654066 93581219 749697622 776937211 559919509 908536445 780900645 752400763 940238904 796479063 30006984 970111348 335486497 22735839 831902674 3802132 364866811 752077955 585843526 90351495 140607911 320838432 291959536 364643818 410256805 679095735 481560746 398952308 75398676 6716579 55970820 858328905 581228588 940692829 811393544 187364838 507503517 136381641 37799074 590612292 276640663 794621345 869650898 643371118 518023118 824215902 655395616 252321962 395474639 96678464 17983727 936629033 755604713 290405889 535198000 230790503 284770275 513411006 600263909 968132984 814456748 613020134 850227817 896780579 446734911 858779781 977356649 616986978 852497443 704061116 704177927 512311396 584774976 511427437 608313395 531994274 72083242 167922139 427124237 151196949 802598631 827916501 934606713 946354103 669276198 589703719 751484034 389803392 115535712 695628 367677601 96235391 113032006 852780130 897202393 533081345 703024520 418904584 289459437 503853446 825750464 733024565 819601933 138544983 593496274 812031060 965544149 382758588 967409751 504078331 880720096 298356195 427539817 643564675 973865443 722277057 75620977 181314783 92131648 503469978 212109361 473199728 900753169 152504624 542293967 315802922 923349928 759419505 457701326 364462158 223840152 679899805 879200151 398977443 146036795 357038598 287385278 892408045 437259761 70936867 401321497 954445573 975812118 80616391 858321367 576774725 88108963 847164271 626905093 155272566 937776964 317116381 118952243 473721406 625075435 845087435 231030048 940546649 674705798 394038335 250224735 900198793 873747657 754738706 414983280 138963414 264396318 232612306 931632515 267235501 674231327 826783535 699487004 148024880 463147323 940689381 866518856 145334758 46468393 479780511 738522079 168321169 337400836 278202013 965448167 158465671 108948486 634509805 640881107 134538719 17580766 278814655 722837899 644083597 236701689 980293738 922755382 527716030 371796456 642053956 416769232 784120248 394964002 385942515 10908237 993704520 617772291 930776483 54207157 926238615 154676827 325688243 750427309 604314833 70747862 398339965 77221130 433076199 249399873 880434526 948867120 969365346 584765656 360733260 107672368 564746937 198283903 399915474 714847525 328282846 775672520 567339871 833450713 925685168 880318042 96748423 931404625 793761330 43823792 25008447 989062167 907990729 654859428 684492605 516689124 714911512 806871049 656583620 76095704 537504880 167093706 602623425 703740404 283429191 844669334 459886232 376290798 959457762 870653539 75202557 477515226 633761189 987416319 471560408 23417397 830088277 227416210 131242577 915033438 50158944 207347201 748976589 266825605 786983877 566227280 932983880 208529945 424027825 784668845 116785087 611910777 706974045 872194983 230250630 504293260 677136087 535456585 173331228 811748272 283321251 139065327 135888848 213093850 315283910 353656607 68814119 95413092 393923723 128682787 933653186 954781445 302547972 934964692 6794793 13713508 761383012 941717660 686776523 669851446 857708500 574520857 270162214 289721028 177742646 231923288 394340502 986404194 309456355 836743847 283003408 615328723 263707587 35326541 423021606 900168049 84937850 793335640 91255250 895673223 941602484 196698229 967974338 603365538 692900657 787197108 225086334 598193839 998791108 302811503 509078427 909231967 913844449 469594940 417784417 561859031 221444947 239341575 159736863 274570213 665387445 678200374 206750378 185888650 351201638 154546824 102032427 445044260 581764567 456281366 58898547 759041688 798802148 496684325 573529368 36363926 852577006 24806070 570075319 602256636 635550661 884875068 209603675 868835927 896818894 647631221 437293371 115132535 705726062 541951279 469332513 228070799 795713596 587436574 788595099 973242507 817364513 843021105 247735977 901438701 63779972 674599825 139061914 965336494 300464827 503387699 737045961 827917371 970155596 438025069 322654241 653679463 549849836 211720594 701632654 776968869 78098964 206388936 659941038 656313351 249311733 135972507 273409815 209207118 230701058 286014742 516437973 494532407 6838386 89995565 389296367 493716300 386103300 346322121 558349533 290923106 430386242 996336221 703609386 665783005 582203381 283587152 529745317 290843628 54487655 537108487 991457173 666905989 600414240 851632096 137483138 595662607 372040727 645231934 961428653 406439872 326898215 164778559 738513300 167062542 305477071 803122720 388449974 107797638 78359631 598130627 876783598 553254082 60233139 396101833 929739919 257533453 226187284 781649128 44776897 125629937 446644346 30747616 914429498 167575172 728708067 666362569 929342604 95762802 816099774 990725081 30119467 132667544 650717992 39572371 942231024 131573923 64193886 70044495 106271872 331508353 319414507 494105723 800149199 697958570 250608282 61419111 428294807 128356152 177071845 369537670 224478034 450125626 422684720 174869473 496474156 700535301 627460096 958130966 227790375 528373242 768110520 442513566 996724417 236644700 47940030 970787723 418636581 886463792 890920547 252312788 721076016 55659805 83857708 866434115 355700538 447312336 160299185 417658332 286368778 817217913 222653514 640875306 355070266 127958575 270434411 713392108 940447752 38880194 672790875 412416579 534489725 780581092 272449212 525539620 192284417 111545790 820035980 241190895 367040318 529356275 424605631 55245909 939452399 14450540 893175317 952459213 360992977 155739143 515307170 125083191 160196847 709923830 958482727 45222330 458032507 144099928 364066342 986323710 37723649 990851743 355667342 793624127 188931843 330727988 96831125 129574845 359963986 781167269 633122255 858284210 686090539 127789332 347945072 148076733 886509461 969683293 740182440 666422732 712252331 469473141 300567743 343210624 861393459 930466253 159237087 301207076 401412511 485443772 346030756 603189251 508813235 115137982 390329231 159924153 194523878 569154111 609200075 279193294 325380788 14006658 846977247 101161204 982324895 940795142 580083533 648938804 840330357 389293603 778238193 512768216 958577992 838712728 989721464 624430382 801723040 729264459 649866363 596023646 796345681 692030518 354629897 889983810 305933366 378681123 79322223 803918071 940085862 887417827 987085387 699083765 532123096 988958094 918540990 986523826 425865285 670408170 287667450 453087552 570216135 674904752 965210546 390961734 153763871 199588363 240788609 648302462 98903940 280986029 282768619 26130738 36004172 895017989 834058689 251136420 306281249 10852168 420593501 339857832 689649901 666293396 539191049 503412023 559783770 659208305 85955373 885650089 955069440 68740792 668459777 221858094 852274088 862235205 454617261 655486845 342180291 404197628 927722874 510231783 766949966 15566916 520403845 536496861 552684916 562310245 359578300 393919160 954643764 506212406 993000243 192372138 341851070 250217117 953659919 828780667 835264139 382445056 509493588 704321043 360972331 635439219 312775138 788765209 82343814 463638653 753900182 146913031 199428066 246460857 457867736 652644080 201953817 770964422 184143222 83609738 611339310 779498390 258717947 619825698 508955111 66694473 844051120 790822989 414533047 531114553 949119761 491470550 784959975 547636127 585331577 354590938 526796485 118812690 280731701 146962553 426834386 301494784 996644913 815859981 947044835 108544612 790087507 336950440 694951394 311584190 454730927 682883262 868417357 7201290 456993995 815723015 887340166 465364089 961029625 251235055 262144616 353726908 713146943 75403077 425670609 784417323 83853745 624455158 117688232 799791676 810919755 1247803 394874364 218432601 109745763 567788416 59981115 882493894 513920410 932461824 821739852 142546933 478579967 368176716 182711501 272075253 657459579 856106465 179907420 556906663 121322948 302588164 265653723 996992993 245523484 690515667 59958339 474769348 581147112 376588745 325682159 238366766 702938830 129358453 525396236 501285993 645125103 631265380 26999990 973742445 111457709 627388079 790991425 710646103 800782832 765483689 610313426 511298459 24579868 675152472 888391324 543158254 120306562 378654663 543140871 588890878 680214746 911775326 203982674 3475284 742627082 133790750 632192332 970297401 246150321 35599259 524768972 89466812 996896888 326123150 5412912 716127693 557078009 99705982 683510995 596432259 965482384 335568444 134616737 870122212 42159207 989007971 994231618 224802069 218645959 237263679 334673098 62957621 314173157 807592294 84520393 25387407 213310911 440461898 872448905 177632544 536177255 114269066 471117043 615830909 591508531 744233283 575329024 470663061 875821501 690084471 718286589 656034824 544214799 652035535 861550013 841587102 12473586 377103866 85552808 848492313 787394834 350075208 901291525 62955655 605302205 693477760 486185422 597530746 354498116 7889918 593476324 231856487 284402469 92374052 743304342 38849134 572655066 966995444 156074817 515709006 314130698 184571893 828570658 320160744 426920232 927728716 803972080 184255318 190480106 801333695 514512371 635975319 976091917 541185379 989527782 601752545 15337539 923835071 563067576 77307864 731957911 275968364 737085601 312648409 22223508 916069317 871603397 355448301 917995220 202864797 28666753 369998941 501979843 914550486 49451048 164031908 876093224 947206950 22129795 149726057 49795434 189463260 9634808 326201193 494451361 753670162 124198171 213515126 92410442 928421134 941518551 901489016 88963157 699956389 418932658 785328902 927535944 221126208 692575439 122765084 236110516 575184035 250252861 321185690 508708621 447483914 326850168 388070209 611871979 436854284 729164655 405857815 946264837 815885512 542199924 29556952 410543032 44993627 181865013 737905993 440721576 823038067 877792891 367840911 388125204 38731943 452567685 64956210 531008874 408431065 300512294 201843676 552901808 448527550 276800034 135406713 77556210 356964657 782579067 290808372 302301509 270353390 753193977 376260049 733520481 904342521 409923878 621223414 972288731 624691922 951598861 559330088 585028356 630274269 400393090 94882302 437589727 682667774 971141744 360571288 375368173 508039520 24040367 26162292 684210392 236493086 693962871 322157769 549862186 382696323 935589815 758383406 518951446 381746097 815936028 245657668 964549027 942188340 698981026 691163573 648006589 481184110 781354024 418597544 703254760 135939410 194938964 573498611 859813372 841373713 881282653 730614267 693745960 24313486 648970558 580607577 286745139 998544728 585019818 122935269 796800167 217989618 677497370 510559699 669148878 995822188 992604645 808800198 874766072 845627977 294146284 804181602 374068758 297456179 258871574 303236348 166660642 585240631 428987070 90608625 888189901 197498952 428001434 302689679 55165923 87794031 908331261 889333676 446779104 313913131 180689222 524902442 518336424 828975397 438125907 142864476 28581683 848588939 420921630 2367323 605097663 240525119 612204577 503906273 501764358 311863812 788068349 313995611 863647678 731522166 589509493 612594543 21057079 84365320 504768943 676320728 291452146 39826822 937954329 924796174 372170176 283248316 45326598 472586436 395130007 870737041 320845210 443290249 307150918 134014294 822422831 317652724 212320464 242520727 530331208 181305505 575180330 924644520 276508467 557532941 37799829 240629595 919209906 109997322 618370222 961730780 884678385 565851732 616844543 305763972 364167015 510993161 868586395 373670938 107686612 979552283 929171592 305310139 594822567 469653649 129952309 898962939 684609483 845494769 913512809 998233110 720816509 757752101 100235047 737506923 46595268 272026457 501383957 908787459 354675126 341682031 605624785 486737949 720445430 1481149 222768321 457484320 234138269 365110957 274787518 124385608 954930767 819343983 469740653 228911143 585869553 1674493 477512976 383445640 242940214 81734607 242824288 495549484 120877832 554036144 674125401 925191576 668162174 18821362 364617505 498107109 389055450 220364011 234677627 373502152 808993186 730445740 751406217 958008986 950612169 270434260 524741339 996368760 826101500 604310031 291269481 167508020 538363536 353723784 417628651 888806606 645021424 581103839 807603025 509419725 107953428 651516798 924408491 292007210 13305658 290914129 168187407 677053302 624394624 658705853 806129121 350436250 713534444 71537539 833016792 60298943 906355392 239999531 439715717 359823093 874032311 605121268 455413144 282881636 186886919 719453901 538331162 698621450 27629010 811746967 373815320 830891757 197672973 494741605 193004470 26704944 632303620 459736368 401639301 907911830 741417442 26554799 467127834 973553311 608296821 403617660 469573465 586487373 323582524 607382305 510670988 729675591 567819211 647184656 633505431 48676224 952843440 776088251 362257677 778385512 228014265 401313283 844324221 561662514 132930034 511956846 240671730 992404537 932265990 290645562 46240574 681747954 234552184 960949526 606995012 210127966 219109951 888177539 541873316 265606266 109733956 419187368 806125013 374369709 128367080 83773909 253594320 506603742 140400504 30322718 343767101 219163797 502800135 677904390 882666083 584646065 809987222 612084130 716538430 603731458 247601232 265337630 805618633 383431829 57062189 877403091 778729534 545798302 655621180 24989950 303643086 933433652 976327716 396573942 976114454 45236765 994261925 444197378 756938354 889551895 778203236 22893897 465173613 515477954 398889947 939024889 261826583 46915855 657149474 643628745 634454390 806950766 381286035 436899197 49652291 838088748 55821880 76809918 615091919 348055674 341990428 463576560 332395958 733570789 570333215 181254674 510331089 865570173 245874370 649453803 173422801 890580524 117982951 303235040 819179919 81568673 196385454 841976108 534199599 629240790 735360823 108773581 983341227 965815485 460884170 668692459 691687819 793680694 919969541 705706252 12764985 411462704 503414396 822040119 965964447 213760835 554849950 355075199 819734102 403907736 174257819 900807032 369483607 270739671 31200437 903433009 60986324 815308096 397006221 891336689 877696428 908642504 210018730 954207697 641962004 201449137 261330307 898739431 403970806 878445317 336198782 61124950 468687487 2664630 719221700 690560141 247066921 847420152 132216453 408260604 548133729 244208868 209442168 384504367 907690129 293767970 327198113 359947138 48630594 302660059 492928725 102305875 607888654 343489616 164184493 20355662 394181502 773896769 956640429 138563622 777282633 796655198 272103408 979734309 365281738 228968972 463448084 180616805 271844650 774434124 84979268 118326257 635904948 504818944 603411434 888610936 653852318 924702319 172999804 753340407 932982627 273447868 695016602 694002634 182511444 15684781 655507286 488808120 115766669 774346937 238062036 421319333 546089356 18183719 608282348 702110837 602827057 418235957 188399868 457614742 33502049 738689903 998137555 196547650 380947633 282464884 830043052 233789136 301300729 408781667 84914693 264204888 770273476 815002390 739703017 359694208 811625272 683846919 44245943 735537367 176583035 780556269 222206701 476503850 668787356 527355981 999880446 835758746 760250779 791643540 354167932 762423612 696603551 955606219 257054925 534110064 142154167 536431350 324067552 821365557 811353368 106533941 864731616 120955986 619206776 933963201 392005554 763224217 553357409 297292099 820731234 305474929 287628766 870660618 407503609 645019334 701530209 416627082 759090436 46839932 915359110 251068938 506836253 321151153 634137416 583284687 584015601 487315762 452966099 785505516 724632802 515462162 354476899 680049305 547729543 779665786 297421114 832757470 852222056 41724896 163396476 149984579 111668728 975588999 367249245 519938038 154525875 237881275 485020597 715099191 366474452 664241293 566807060 584948682 129721842 84867584 89944576 521117297 880164665 648572604 158928624 326029541 84434148 262938083 483687921 613315566 878153841 70241624 825362392 464142837 588237522 934032063 755893420 268668057 43024655 414685714 97902879 187309034 843142902 140893092 688017636 40406206 538151374 572183357 982425719 970236905 432337745 791210376 701693895 100980366 876354542 945682596 110778875 467679752 282762398 682217476 374235382 287860268 334972090 327941087 779100026 139565547 679217933 678279952 440439564 599374063 350564205 339757842 56814826 963320571 206639629 153287720 110658008 847240077 229149578 156618552 215318444 191583393 436882083 280587900 490166914 775065519 859425830 598881200 584969959 265262597 895082112 370339850 312574249 87991092 437829517 715016952 242397548 518187953 24094337 263171815 787828705 409987964 853187403 806623890 220919809 470521762 146053009 827448920 379597172 228094492 716261580 326855946 671898992 749642282 356143581 535135082 82011232 353755127 630584091 334680943 839814317 132150154 278338301 483751520 104802745 521016856 332175381 297246877 612015490 230333087 848573484 397856478 440378155 563555820 109391471 868465280 460993665 863004393 637917288 720997046 127370240 100877465 452123740 198531701 562658837 222002876 890544395 406811844 892397657 721448201 483126100 521864212 203729182 681019151 49634471 640366470 486716044 43642453 205769577 552320110 306937843 895506259 475739595 474828185 648798292 325085768 237311788 349201189 172579778 833295496 152822904 336472239 163710728 443124549 462086300 290484699 910572986 308055586 369787997 281160234 392662402 783454823 969938908 756927306 960544251 626102503 480973385 903534749 309979466 909899140 687958339 793465224 872252166 278409419 166500548 894606553 158950814 546688306 773554123 292676544 268897431 138925268 363396443 334508350 879690205 277495225 10365211 516179914 666258201 663855548 399880402 605445967 953990285 273857862 705807168 238355402 489364150 951495640 855819617 977611603 446767197 319243614 473545375 955776167 64697162 862284464 99045023 290962007 837288431 351547968 936076212 735850848 459992314 969106104 603398469 625021939 903900318 103966208 965690694 192605476 491086789 686213309 810991006 726079988 465905864 458489977 458484415 652801467 240736880 212397566 955944724 317853919 618485525 394232121 297501466 537901996 343210555 835824710 120284336 919600319 48172236 287680061 932525611 666717353 947715240 916330952 725318150 265434631 432795439 654789590 595023870 717190209 809839080 551655669 508784134 665032637 466259153 926991926 385459377 799172756 897195601 939735850 641048206 717588198 321757470 142241009 118412533 470983875 690598108 318031422 899505855 288300887 672100689 452462876 715006156 709830118 937866665 286738367 380404106 116393719 435799847 387955217 419834215 965453563 246692560 189648953 633411387 488773815 172919873 581271417 217814726 757120073 505236451 593780894 331490651 1735539 816737870 403570325 116999387 458962090 486876321 134621704 126689104 792884842 648516296 15113008 314873290 330201697 385040172 308786760 529015430 514234614 975116597 899468826 993483507 363526301 176888290 206792821 480297433 775648267 203662789 563756671 458019248 155075477 18177243 301906515 681929235 23178654 102894323 186610668 338489669 643993234 49769921 827585420 211482815 9743999 690126870 750251727 341758864 867852195 53597542 929087426 764118179 419778233 229862414 366064752 252772168 592297002 290337730 45018140 739422357 146618099 63617811 344126477 253446302 111051118 471135875 210425777 792534795 71061783 868976244 641973645 897353919 399701979 730687108 830252455 897323450 706386241 989417222 467355200 138152306 140649239 633183416 762901434 393752321 906228577 716888437 129343231 989165438 672398239 272802050 105362500 637915565 965706859 39791454 718687510 283064094 41725340 841394665 643261842 412676772 296751343 429440820 520551390 786621369 475180050 131781894 771535878 898306792 878412818 743776488 637127819 485827814 163965647 523775558 313163638 371018964 2103850 68889479 222525498 951053215 319651642 682082638 339809976 211830949 902226314 212535038 668073078 875545480 949253989 644614004 607277850 355501596 254603403 728007572 282518204 498334168 392703394 826322196 468652304 716153226 935833890 514604315 753332787 510530630 668939215 297423338 197900479 389106267 734915905 812589718 816554391 253773217 903456074 986748268 480323755 628457312 619957570 309361569 693148287 787393676 736806599 968018468 451816331 207578106 752418815 928232988 862905607 28801641 442318367 456306960 229341529 636802411 502018072 12011970 545535494 267640393 77243140 143540794 85474167 853035786 180179464 118632723 606998456 292164362 888077961 334988788 851378785 850232431 306965172 522869433 284185971 315175567 37810249 585791689 650445262 307059523 138198988 898066169 600706303 71612127 980081069 613608100 471323225 844877592 451959522 601598934 667414777 301733606 925289099 564264512 509711732 687654613 125022531 328298111 665600128 412071893 968302675 13297201 684916207 619873412 608999134 590873122 684486955 975676908 857123659 704740067 919416524 576966101 122800290 309560749 378712170 313138917 540167653 330803849 453469971 16121135 356542727 58650557 642298558 230577861 123336448 261188530 509699481 881151419 756148499 842492206 970956697 818181745 739687676 479373231 205680434 846536418 410775339 526030814 453667764 732120283 496054686 37945519 10400406 960447381 199339014 708011606 719216695 822355906 997025597 291277181 847797680 175030364 386721016 267672816 396359297 820411852 975969750 991919328 565304474 317264951 598826668 846919550 738184737 707907321 94873148 867266195 859352053 457886919 639154146 638471101 460923206 176505164 976270848 729160314 815768366 142492542 911215527 521857677 700351795 143352156 464811430 928179435 597741899 560798927 472459625 723537377 297883355 46416923 707844276 258733509 612264119 467270178 67605487 117659283 677664844 658422058 668771442 582143026 532012805 915985062 612729128 771812866 411603840 778643077 157226272 985033284 352161865 992653248 797415465 38182088 797860285 779397256 516481849 435000157 131681853 231087530 110579780 280647298 208873230 216512317 415000881 810174748 775168800 228516334 993629210 766912945 335291744 640710301 972799327 46323390 189536252 331010656 94869370 643676029 98773665 908422009 437885156 713148553 968242806 260062111 359105731 660595486 882254909 516487041 458975391 545768654 265258961 367460617 576705698 610031700 890791103 9694542 144743286 71577694 206759281 831536617 659729360 169194217 131131999 213324995 502267421 792059379 170670483 569165249 670799321 891467098 167308188 341245470 548680118 578570540 267023963 354955993 381577946 47268746 754188335 535385458 937645350 789674245 736197539 30129670 59646264 559485226 326085251 70004972 64502856 837317594 412079290 327449088 159105137 118330058 407447292 820301577 865676371 965900465 753995336 31519983 539391927 297950534 39651239 518138896 985408395 473220366 324296516 252339581 452277172 294455253 551698295 607654835 799638511 822940139 84371250 526691169 662572432 210580339 312676777 699343839 394590128 928471484 214125494 361216133 491826970 79350998 566852278 813587378 192561672 552951278 580331365 125520479 79367098 486366842 774203875 629464459 144609766 451915072 817282198 998774243 702733897 636716232 895121228 240475030 203409621 881970783 635681434 73119315 842984031 780929991 295461233 214344386 751890779 114118354 302661108 120915419 509835051 808131183 641113851 894294169 425011310 446450194 206982654 529640954 772995780 416593652 41223366 580009983 724266722 161569981 318082173 447527975 636711110 77805359 43920059 309406874 612230533 174745106 291765718 793138223 405407913 950718949 275957074 668853912 200862320 652905741 222306947 880461817 828332660 506845548 456529019 25552928 819719190 719652573 906662824 229476779 940451784 547561774 32599920 98959687 642907713 656216475 768494055 296986942 734652333 719191725 215962268 65363361 108263387 686919463 56164167 967530871 660914403 874803666 499687306 610353269 895365608 334411135 970788451 791131505 661291364 266873052 701178093 834893637 966705095 691213511 715168956 385672972 705316634 493291440 18937874 644332179 939072762 760245830 98756070 412008508 561959378 945463521 654611398 973685629 917625923 719544279 220612986 304660734 669571690 534776893 958303130 970150941 511221185 763315121 170942090 561623997 47670289 458457235 51956741 356750463 778411696 779986960 108974225 307597068 245669486 64191442 440887109 565432541 194016184 56710949 515060679 344570708 771526148 783015333 210945466 729222970 955030548 146597057 484343959 491204839 643214881 413966801 487911783 108007946 765930988 770419986 790360865 381083272 377998623 462834922 980132429 786773943 126148430 162917441 327495684 766316341 173636816 191637899 368288926 818265829 899494760 583601345 535561749 533372600 124239384 43165728 649822652 567830561 165620351 350551121 512133683 692282357 556773100 267703044 186486593 153925401 42242655 641565074 253798647 472484785 522641671 233543115 815082778 187441323 726184165 578038719 820969403 780080798 157286363 685610822 223219127 394768705 691889831 359016606 640934213 815559596 463320894 911197729 144502597 127268065 228377670 39629475 53883569 394712655 958387466 757354351 541683059 898839084 953171656 153975190 18984962 454030402 731154035 581053630 895957970 70706601 660428005 874558179 67215582 85473430 857005799 804135836 162242028 782185802 874283159 239942354 574991157 864079323 322979135 379414809 535354249 705285019 595370235 793197562 818908479 567797067 918090314 276478617 149348653 908819972 643327880 632660859 784882047 500812651 179274464 680182105 771245766 48487665 504275354 397703947 510238762 665983704 82016494 409107674 97243450 140404909 433376972 581934639 13674571 519048224 987838834 75485237 461466532 517503488 240014250 319861017 138474023 726074032 436894096 638566627 441753462 325558971 559616555 718369277 44586662 684814624 666683214 988193961 779980735 202517709 84383426 658368491 971436472 471197330 602561717 602770849 230928693 812850309 200818206 264323020 278458905 839897511 112164482 117427385 345873466 410683361 276297720 9364509 804868078 852737013 373762026 590419458 42699527 799837590 519137104 30251978 737055344 310689308 529229865 63647689 401015394 4706879 581946237 485381867 317417643 285654169 90753452 550039700 399085410 996868304 581523471 173852043 835819911 761059332 137437016 919606386 696625110 38165295 236348162 925899865 308959519 396223123 535906107 569229075 866075243 886515622 289358981 118887066 198403877 557050529 281525578 355794376 707605850 688049136 550041202 269183272 32392738 914909779 982633840 632726732 346037447 916476625 232470316 353399192 484695309 393357579 449579738 360477079 248206455 285771277 333827135 434511167 373256095 70035133 171115377 754948005 658230972 380634898 27897818 16073742 569154713 926963050 809334545 129328484 121243654 826512691 214200388 528811053 400409925 924764422 546961717 775856271 572566461 457557578 137336562 715687686 300864631 936513638 747799740 121054937 751003094 824899534 643871050 234933710 350277024 557317996 93202863 455286302 242771683 388588920 982857402 717431038 889398740 401610491 613907037 37034507 98642764 19873989 229543912 279996401 806209312 811236547 507533402 24564221 612897290 237473549 331094650 789321626 334892964 856504418 42429316 928572735 244357819 933688793 718407778 854467616 552641025 823207774 968943825 424409589 558762826 650330208 638157055 384784213 663166800 348368589 551651085 915239366 306085096 938212910 313731256 503435137 635116551 191958617 265769843 17763458 276385837 827369292 997121834 174679502 828424100 971825714 223265569 362760894 992091626 103206613 545263555 632011375 67010703 473337174 9812780 827547930 102761837 269160656 332967034 403419115 182690768 843705797 19627179 313471057 241218144 176314854 86020769 827707779 336110427 811352218 669282178 719393745 425647107 951015655 281812854 30980178 947896885 234512567 187350017 676412077 842602515 870585258 278330691 832946820 494298589 253174003 795142230 289310703 185586431 998797095 245954069 162433121 909784063 964195777 388149235 364047884 525771327 498534564 855673288 378827802 880904843 414858937 93630633 488944467 100891705 56376616 309059792 630063797 624393489 760986114 720169758 874095152 964607436 212665789 283491615 808282078 39645152 451668530 807868300 797408027 504336589 342988495 274045197 573232090 355032785 225206736 862418954 143882574 318250686 949220185 43329398 562513443 221362334 331543461 314036378 14776001 790033496 649865440 671752046 621147428 996808246 122072766 845289417 862840325 223969934 443752679 443056289 787334542 106113480 117232379 498260880 637189241 335810920 248801203 896838226 62770760 974456283 500910219 428380250 115928740 871580302 184584585 960674500 820539889 533482274 743021580 378348482 934383740 477986448 665287936 26335927 858970832 746601097 286422703 709921722 622654804 649314763 695953940 26257119 113610969 446790317 416466038 686588392 148921666 416137506 456438965 868679315 706537179 403406705 910199489 104836588 368119968 316361945 237285364 933341515 28945805 357893604 908856430 880256732 945449011 519249297 981892797 429568308 235614589 513490454 874287564 971356790 829397192 927132395 911592870 826955122 937783170 723563268 857672275 427417686 735867851 488410619 285362536 490847531 217875455 9282580 745293078 762347305 23719673 540235708 212350962 955647919 229712060 831019509 488226884 99175797 3905813 654247370 878020075 23302978 926281631 234857972 661945039 120756237 874064955 737949391 362885720 760821813 668529780 52599249 492582272 433718199 216498920 26519574 314456167 874704188 771934926 911178351 612802467 784604361 659916025 912872462 112513914 329381416 272381388 831538310 896123199 553455853 367179287 403854512 809869079 597594335 737455850 64472746 975898726 318113575 628281720 377674540 487017617 829870918 266433868 367774431 343902774 691823449 379497943 468143340 561597904 741303396 956879920 821127938 689701028 807692618 993659390 798881307 621962209 266844581 719722685 832479500 232679479 923563280 226891082 666787130 288799865 360289850 817021600 439146222 328488782 625292836 935019948 576573199 929787142 793323217 184894397 798870936 200617419 996888011 814462875 211291660 267825195 748488700 974917469 777240094 903818085 631829582 312631734 276093508 583883522 687519437 509769650 210063343 931383908 647764859 317579302 594169469 244999902 438473381 101383877 468173696 756656626 250807829 703036457 58066056 279919614 191592751 506098669 401267768 987420471 783268246 442108125 585508905 55823497 249394790 440601694 697087688 67152794 40996657 775652318 970802337 722261381 200673857 380306086 925067473 349760007 986328986 793851717 197126570 669200221 858979987 525572765 868146710 884099294 760063028 529534176 888369345 606765469 772841112 811826470 947832682 252071461 886820262 515688638 405762621 953771167 530920593 202570703 143150104 580571926 26137546 938067433 702964503 462606488 690319290 827100117 733894197 338283815 613268327 881657052 478261420 163021 184085488 751589750 261027543 372768184 242743345 708082197 696002864 367709476 35847767 57555519 473797499 808403681 408338964 208850596 208384089 904282655 378899912 709515767 178773119 967762578 138287996 590474547 302121432 803473947 540367889 782502165 926081357 43414826 857657464 747947496 650501213 102350153 307471099 401227591 790182773 889554852 510262650 304531007 179271786 817679396 295991108 400696595 149800887 106543396 899111239 396035601 155745359 188238249 612667813 970308536 233849377 970910416 382321679 356059835 63209854 229771559 289014469 700167192 137391106 777392898 758299397 322645158 279622978 791239367 484201266 341559778 258918815 515257648 634937848 121431927 313304483 224655391 424809677 632498934 85355648 688430427 55127067 517292277 50328201 455979398 161128804 292747138 16245494 783598181 272523169 621012927 615022128 942937442 91139637 356756875 407800662 447173823 321280289 412070828 806659160 169374652 47218009 320295981 102523872 35722330 132019745 22472465 290451364 366352499 375936589 355742315 48592097 56288728 857582462 730417180 506791706 741107420 635368160 359444495 78840628 692784176 78240777 791238164 599285392 416241888 989358038 288885050 741427777 491577577 415295610 609785923 424060522 194817453 22113668 16115314 46639592 520158465 364616009 186802209 199297115 222109959 703398470 278055383 516851908 954354786 830380932 174672243 46558868 879331877 295706850 873857741 151569876 494940074 252847890 680975342 391993923 700113994 563112138 827311835 631342642 912853382 534922180 326280222 366658001 47795909 380807102 683745357 450044033 509452192 396565738 988013704 75103715 472385643 81966300 269523960 438539614 746188319 980190862 457920434 183416901 826199048 351727527 409068985 483425225 141853085 615317894 115670984 122636359 813888137 230499634 853759637 592212118 814425365 443740495 231206952 118485125 596114643 623350161 557978172 362810629 221433777 333140739 605600298 303725852 908918326 737647440 47584699 863632943 220892399 337171817 532909309 230550719 415726809 858538704 164366205 816924878 638479064 625545349 790545794 151529816 680683209 22410067 836276392 606600380 789180043 915567394 386379274 813130143 826532060 597220934 448429395 444692094 370513596 869739202 751646670 566240133 514948385 990681902 45711587 888460547 122071734 119494558 652817824 255266807 21669245 244081780 262989440 180382139 411671443 906623423 802945436 409137707 164409534 228042300 362839799 655724120 440482412 947328351 468211616 731864369 720469354 315068823 379051765 925056178 748737176 6214632 310032378 543557037 418860082 637189661 447509779 678132450 676971962 651705944 554524125 487746205 431578069 441108121 130452867 88212867 29724261 766737766 320485352 202541472 389312027 573314214 695542408 46123253 246460024 95581469 153853377 919164923 663884444 898360476 687215429 531714107 63270455 3600853 851593796 587054085 344714869 763209677 757854783 567509962 454771113 219382738 49540241 27825035 591733331 849461551 618777636 790274714 664394235 860592976 268457848 95120397 244643329 245333596 771703881 860114044 875044856 227238711 688947150 639222629 564188930 798915313 429387742 123054077 464999652 610825830 385262464 341438435 288468861 718673742 726659078 211956088 859949516 31969352 849396370 455625225 395453713 386665319 38003545 501003926 669776552 529132386 672142657 351550446 675368132 649161481 912273358 777629130 711529775 285695824 39571292 513055249 756317521 787495546 335483381 67777613 342154612 864479190 926345462 916214417 618980436 29349095 173403722 909703550 478780149 600428536 611043339 71734326 976538349 469973677 199021166 78402021 231119059 265743606 890789518 797662546 690614736 564524978 477990341 953131247 897759930 798466286 210391409 123880588 14731543 985691009 877901437 80711802 836177792 474960423 588065984 207107035 461650990 531694400 901222835 887163553 168045383 317500032 613145371 393764442 901523491 991665592 562106652 232195555 266828453 74062830 287798343 815445927 584322143 999065358 762453132 876680068 825148435 172565745 554369581 457210022 564189381 263898772 348207150 423678367 590477092 339835616 305516955 958764199 930063977 328696396 421091344 909034722 458272550 518173371 586683598 369909783 858087511 207969287 51143450 145450874 673209750 584112975 851391642 1456438 367907003 132328410 515019644 182284829 150263084 394394735 644862004 11958201 157003060 813315409 243410942 272824220 531718594 636320061 510580530 434986876 562763216 133944392 348342974 435556307 664903228 671339345 167395410 103595365 189090879 776357766 813512259 913169344 361420359 416437293 580135734 940429900 284688124 536949388 268414467 312672247 510740462 178710881 187697368 796965846 639521639 919281917 276316982 652876742 390710796 689578605 665415238 53629432 685461899 969316822 86283052 690859014 867219423 729247235 762927304 854375569 955281749 302719384 977920324 421657055 600578820 337084218 855560263 582722860 757953353 529185216 659929621 339451112 35182701 499352729 426629497 817329846 79195027 973101665 127121996 408200548 723562055 652072340 648793619 523981592 434357952 603893762 208268371 527815004 165519313 140255184 332817475 341936200 755401902 463031254 84292751 162171827 338041123 863745236 119689545 177461304 30727002 928296771 776243390 895500533 394406805 879968229 988940909 440631015 387872831 369671811 769745341 106461718 40706674 687542326 13659436 70698768 371348678 653170820 723171026 25715915 168278838 977111765 379439146 92105290 202709542 758263539 961794706 23863732 763024717 435096388 124877024 382873411 511202702 464924495 530685029 993291898 940713988 815047798 940912487 814628719 683549515 943182140 679570976 274619717 891636895 441530213 320836074 943300288 36684180 150153664 709380006 962249406 869172302 15996621 459010402 187974238 71401706 223698892 700865919 946300151 336181978 127623256 397828880 17864180 279630908 54499503 590351109 919716076 152699916 169520031 807683532 18451640 639305273 622590867 809427099 349575087 976919134 856598720 478383735 955652565 222701061 923991059 379323855 907566153 565364370 628074282 413542577 752853961 33610133 649149711 608327161 633662905 978866251 963051033 968987202 249019730 496569058 790723875 748722643 523056676 802764457 861321024 669278136 565117923 778732873 61910416 221370252 703736133 724851582 676978721 458278588 281423866 228353233 716596517 311322014 746150592 141415885 881815169 624481213 778219750 669420191 999504755 715428276 333100304 226747687 76266056 948197712 216014037 409094044 298111897 132752894 803002538 810566853 185249951 995625353 101759691 263300912 531341608 147888429 119797624 995760768 118916556 126674777 139020324 940114002 996117804 686512961 897527523 895022738 4060452 16176175 122161192 6592409 546035604 385015409 304294974 688638507 386194302 819459091 795373164 699436518 413757593 670232354 24971141 984704307 650576657 180397795 740644617 158755866 45561881 903866034 667526862 44536424 73538869 753115299 258608644 847528615 543002684 157529983 207760493 773325338 208535015 474880643 158301269 839900548 457694032 636818860 393653415 729192098 729929472 620704762 980942057 579511633 30018661 597559048 970461003 736235426 102502408 315495336 183744586 810866995 867779703 118553018 438696674 108255017 430314816 426445798 216686491 870291433 435023486 610101840 46265855 479104579 307601980 493956367 125024532 757075895 239986999 966972921 737502003 954517443 880093081 957420982 703232944 947002634 340795162 559895968 38216947 722829586 863334479 240066761 326967195 292047964 659621894 257430115 108705297 971451483 315760471 501703882 220151103 713475423 43976134 704390798 191146813 335139244 550776173 552255575 916256662 187873228 841213625 207513937 967770736 186968457 760987850 329323656 11136606 927538613 973894277 735405228 189506106 85222359 6065707 36042962 600188678 585211948 149432372 140547019 421693862 639555731 568463766 467676464 186954835 216601540 481646997 840667517 495424728 537112994 704345121 444197471 525043851 157363609 595231259 156750699 604424275 622370114 942172712 55012983 383754893 825663491 654446228 280309421 931954328 165410397 425106310 99674927 371136921 894477343 505984884 841043157 243936040 155679758 609778302 836047563 552887599 825330182 411051002 30438334 195417108 910377684 313731399 598766408 544032847 263749312 125705624 391788075 958188571 198417380 173104309 316564008 16463801 723790240 67611777 337917428 845242695 736422485 166882115 779532657 825939922 997236045 245949374 286818521 429865912 440086248 210245484 506121128 981529511 712192209 599931934 624781931 876649951 127227978 11070010 84897646 570598700 824265981 203023120 26774517 143153772 872526581 411957331 23145517 59219808 935356709 140701279 64328764 569048682 161544520 884179034 944638281 544677326 639761556 640524570 922670646 448317540 580438422 784228618 359770152 950588130 381162727 272783797 376238012 311929859 477608393 882065856 276631522 401981004 73892580 664311246 276519754 832750688 709196382 692902928 977204747 666618120 247391029 63858091 895291807 742359212 629167260 580975222 157550355 267633180 289299886 475112969 746904604 862480783 786733294 527803034 942189490 998401549 538754642 454064047 279858602 923796342 298326398 595870951 452405819 827367259 339599320 5941950 900634485 907479693 370994639 46712348 684133584 960086081 668649177 995260282 544487675 143284 110669429 67587395 410045612 281974291 474810524 90890224 508216701 471230725 495089242 311997264 549001351 716400724 657517284 462014750 821544009 248020288 987944871 859622605 890704644 838511022 898890983 487351992 834870713 286603058 850573536 12708436 940185770 111218555 476148601 915507471 814638882 957535893 959408033 426310915 517581407 416497895 978558203 490143760 28626596 480775070 986540157 952592416 444661221 369077263 56477670 347687910 161784020 8746517 588439631 887578066 406199999 693541959 114821808 250526310 921739016 275597895 64163507 883661730 466226714 502119935 36654563 888096799 752115445 93306302 71179739 265556187 603846166 956094195 105051291 441457728 367378097 733942701 220365179 113303371 160208176 894962435 436439824 662832652 136056098 598784548 274306210 569546495 438173584 792128574 205634441 733644282 147633407 893326268 975015060 839675313 163632836 364663350 923734097 55602744 248453850 197540292 868088710 981460372 403868589 388548601 689290136 928113236 635661236 989546152 240753135 318596334 76094187 110063953 450966511 229116023 650495503 421652198 895307286 856142943 32429315 383042868 858716472 166842483 860291413 946521358 281688168 347698795 604217121 885192732 550381811 648717221 462707910 681449736 17544212 734040118 439332914 55829295 667856481 230503178 255859754 604919137 877664998 840753215 218825736 660556414 611225027 756387268 9423566 173252113 862225554 555685323 311894769 5691728 645703842 265738296 84245913 419585097 450057569 60520957 80682621 506092437 107788384 890142078 148176853 792947107 459292897 997625123 597037082 834087789 554451142 549233192 911552647 721779165 715890882 98608805 373256082 231989056 453491325 857451163 986922349 868293036 766076412 356397049 948965391 39060892 202902954 461054995 809705875 752976792 684614584 921875136 662605875 365827656 965459637 293064612 947063155 616697368 88169872 54420891 454774456 959453608 527459316 701935978 605304655 107056564 382511237 452679847 639860884 874612717 68355389 589731958 411393411 349432146 713411321 302669060 977420381 299716224 92689134 61338349 304099518 67232553 762360140 708279234 191605272 651662272 346502671 444802509 498881175 479563178 104721317 10333452 705796948 643933466 544204236 157887632 12864783 160052612 332363374 95752279 976853952 981430639 713046377 153135377 568703833 505781235 934999026 255365677 897323190 736545806 119123049 448197985 768330376 655331221 273036860 753307380 724838252 228986649 880258820 142239314 324619363 494234865 255642220 393818886 655116281 140483870 170876910 362486037 80625766 668169688 670896242 79770904 305260762 484839338 17166367 890478520 527434805 368435161 200730340 563274278 213812940 249080774 641286149 154207912 722577310 473113983 337053452 130568443 689946236 123958825 768538091 634961935 929510947 997224317 202473794 590961001 717830877 911323393 988468650 176755476 136089798 204448943 569703868 652346160 689932329 238649557 694117422 983892775 532295575 134705047 615540517 397840829 548684052 796275399 604764063 701916138 862684348 454897935 31240667 300614479 498160555 743816256 412732461 443632100 56554151 927379180 767562650 91869566 366442127 65157809 262622644 197790313 1951650 338603211 539719650 737234066 11655381 546760202 293197049 94380424 470794153 339234174 305853404 684352472 131655721 55115951 787203046 363997905 203278616 157605394 747209757 441394173 933706784 597434670 651261405 566814820 175768871 585083456 452269370 439287268 769422962 526348823 309830826 666748020 210928233 42039396 153074002 10616568 999489505 541564546 702370493 444760851 449200751 687185722 264077709 504277394 355732867 658760098 758455458 999490373 338695457 270353793 979714013 128680208 37162496 145873477 734436855 893900225 785371513 732832169 373067774 600702371 677845430 273932402 986542251 678549017 521066380 694363469 350124852 709381039 787523591 424618045 9322439 643694460 89691383 429296911 859431354 273884946 778884918 350366737 920114946 555026226 358383923 853888461 880223328 985185922 123716456 641031703 900476304 440748013 568296956 775217896 506297043 140229920 12157396 823119276 207392144 282239317 26701530 21422261 296028056 90783280 47288761 195928769 547261180 115733874 730769011 107163650 122038837 698450619 792361682 880717151 998324985 47107799 205898613 804421049 307058031 159290448 849624285 600007587 400489461 396328159 613362832 416911491 368805236 573824454 23283296 818032451 710684666 953557015 340387211 486360616 307661437 861421693 136847395 426170313 668175129 680045848 867375506 200540672 350531446 197241850 786418154 417909746 360598699 585781414 662867178 164380203 756928398 673808332 526321772 602792874 703062412 919792068 96493688 721306343 851506308 123517962 525814166 538056370 623985776 317567948 373349336 789561927 45389205 117980173 556471030 637519372 76572030 620504717 913512001 502389960 470229789 678294323 666247218 182141137 821443932 75172545 711389667 444084428 574055848 950088527 217491015 266641285 529434389 362111165 396148163 68419466 971037030 305425070 101639046 66291717 257187832 642563765 620713615 849740709 984283765 256574843 95746905 179356660 402160839 461552238 283375600 315314128 526935752 18996860 176048633 970031271 149758077 377653190 399572814 1384462 344136760 480896943 391526005 657381494 489605742 204628798 70208524 425725701 89480098 734449822 391103065 946354777 490792435 786550665 324172870 215672494 11945861 772395155 368929127 426510129 628481787 15083436 109709419 42115152 958871682 549304825 433497591 23151525 978126802 368648163 184149444 200679410 463673261 841183748 407895564 438027167 465636984 948960940 283774340 975694702 349413171 594195635 187662315 237702971 519599804 79800938 723249480 467126392 878263575 458435321 651098972 989406836 765187194 985323641 874631550 755101708 355542994 443427755 348400100 895131542 936460953 984652618 296520651 919045496 773518519 674850503 955474771 635654853 162760018 729669050 592448417 621630416 468131643 666554899 621389382 76893520 853723373 929051996 215014725 435077121 182318258 604273177 519574817 415250944 932236146 878551200 445341036 962003553 400233169 477810140 645578584 963397471 999074506 158300515 171698344 283013692 339317314 617096972 165794965 484869586 756946663 115582754 223566713 536343048 971719524 508623124 294245365 276643221 647406128 751004577 334791063 326990496 328104089 239203062 401493272 500843619 190198858 834059134 736490670 470209376 525431468 11069591 387305807 393090649 234471302 212561718 617374209 119992575 386504675 835142598 690046124 504140244 170014910 956143030 977270312 317213160 38616503 420456763 300051173 971514814 330978131 102655217 160850417 788171165 594697825 274437165 492331171 186623749 247767836 413641707 918367946 844309275 676721090 688429292 64366511 107834431 619161077 747431930 623499731 491379588 539679354 458948470 417305675 336969688 38222639 503666372 408997414 840013004 301823499 464172125 534404761 69907108 159805664 60844208 67786853 681823357 717665102 932088210 380141732 387083166 665649061 618541071 421133775 723949323 318786594 251109936 899624834 750125085 334968307 924483808 200443683 422379065 766497074 276673109 231868682 786007815 51520605 775646593 363445881 540093948 690885918 174742950 323281068 295184692 966227321 472221428 230048602 958797959 915955742 782187945 397276069 973791461 858145952 176657651 373904171 353168377 631879842 773041169 115700521 888030539 889092496 807094251 19048994 56539465 190113300 533294502 180646942 926310310 558889040 259272074 650309820 898296674 836051661 212175471 94217328 529447794 13350725 783097775 663403015 856955362 936853764 283082088 646070162 560650165 368282463 798420837 112880622 731070280 551924486 573797476 49288876 80467985 155495111 982697954 614442925 722502018 124039966 453328653 858072842 175943369 883173639 807062635 686666278 170331250 655007986 206763316 395805215 981846933 245130952 110860198 798561618 970189944 498799745 566268642 876421906 637153881 928632413 981664252 994639576 446002204 109292570 974806077 509450375 953650169 799914576 447446404 761475320 391521239 434954331 702358416 672845219 503283016 216610336 111256779 635493855 546638212 658647530 98593865 681933050 913152506 318679043 797792480 251768824 250021859 896477899 268752734 77573298 361912538 18944300 169261773 30854982 862096454 837842048 988212303 590757403 515825000 781687487 555839312 380267682 426708302 244107907 257787475 595405241 109959438 765164549 773737924 420876371 979352659 950297358 92581847 928917309 403073561 879084314 486916318 53647372 973234253 981163535 341369674 983047816 804538528 753042865 603454278 378317220 532228686 72681360 468848703 46756268 839521080 563442680 587529322 717919250 797010097 163217018 260684151 328761003 841622435 535235078 414506451 925478390 32690982 227212446 312282152 560168334 384537538 310192645 918918207 517599492 264862361 411105081 951933553 406901336 759349470 577887649 115699548 54283765 683046618 486882396 696363277 795042821 364825539 279105321 329597829 873121740 884912998 146257936 137638318 884109791 152248838 881224936 943000463 295732339 632912647 403352549 439513763 717642092 938200217 492686890 690177935 204083974 963678718 113244321 676633350 933816473 910887222 503158994 460036315 214658133 94315867 941957579 377342671 670723128 509133205 188787185 442712499 301112314 69264390 585581533 221064581 559172913 347238270 223623147 993928610 887524008 277421610 544021705 17805377 511339749 174660797 153800927 798103851 928317385 925234110 561836782 158562817 934515834 934993262 521133660 778351512 194755284 832616366 116307767 722356654 204507128 481417319 137842004 689930908 396901698 182394010 232735006 556057060 394269291 510091674 607159118 503290201 176288053 184160233 439047222 595086708 948648539 240203715 816625786 571085663 315457686 3734666 200162029 862702580 700451418 412881432 182575400 787449896 575838815 195479905 197080083 130413241 182107976 341988585 330044766 881984350 783979091 382745997 770609969 864410082 160756044 435907756 201649499 500009374 878949398 253713424 179742678 357626273 802401995 185356597 868715041 853454267 788877961 823576330 358018713 923836879 904986044 646245159 250418792 764529342 904000897 497720092 908810866 741125587 405510281 486850060 135449002 90265250 87987745 339763803 818243397 417060357 605678874 299198269 614805229 140042440 202895754 852567044 386464017 890438269 148873295 676207068 648559828 916624783 42742356 463224087 152516038 209238167 420664765 751008934 484436585 232271145 788817157 168406169 767324936 246361092 970604193 875092057 8696006 26730850 55145219 854319339 758522513 521038415 14181252 210527640 538199762 635147035 994228998 733816966 363649133 556174804 768245759 320130007 932165517 298097740 215431541 283893298 899902000 466874128 303136064 226225719 776142734 802117936 659349104 525331810 459249513 812123763 962483069 164422492 720498804 10446422 1135090 536965659 820344474 585304920 676285026 876787842 712318314 181281068 536115337 570106709 869874251 755111433 856799717 600502777 847271919 873801370 117461389 517020295 537362562 963930356 347657891 487665653 709757378 77656024 900812926 735154447 331941142 165115092 636505726 505468069 494787032 890747708 379226211 814163443 912620497 209556485 452677120 639220028 560383280 389586111 694865893 256486442 916849205 444824762 376046803 118524067 475576839 186196646 518310439 655409802 434173295 675386547 101834147 114092639 460243534 723979266 969065532 230292066 531912688 126252338 656420047 35688263 503665671 884263082 49453999 480639938 457719309 741954369 561278748 777093519 541733817 164570762 751602307 108385161 662347810 830774849 574952077 408529629 526580310 339593231 795609885 810490516 231314404 353612139 640175966 564714604 548645791 235055410 833469090 738428896 367761952 505575750 263136558 116241127 360799431 103655817 440317551 895385806 3674915 932600103 200805543 172618986 106096012 794154698 917502978 53878065 39213508 290557094 302498614 852822453 710521580 665689537 179540441 58123478 317317860 700663884 254560429 377700820 370090883 898507111 110333852 176104658 620275913 494666732 333835105 672597256 461129859 700843990 151133454 284977634 196227349 110215096 160715808 924408248 356521333 983724830 256719613 361252407 913341584 93953948 122345919 261378070 664735568 697126373 136142204 542470354 773846799 128896731 937450446 458727781 771953375 384147408 30196448 182785150 589044884 721766569 625938294 956714848 92629778 543380734 971529496 174909910 814782465 229757445 280286982 196737931 26193920 998005214 133187440 946097169 110254757 855901652 378077304 753215482 489575067 186081527 575483719 771451587 600634533 68226509 357943253 187565498 345120451 687649949 292176904 893903602 822770765 249388974 566200718 119078666 904563396 749972754 583852288 274771437 217867925 575809200 999842272 286572147 520799927 517654462 474902913 994208077 48026901 414336556 390660388 639196587 134350856 516085015 978661172 691875823 447950436 827429812 64730257 542281828 954461766 497618984 926386366 448423950 57544052 375067783 903296012 294618189 884849688 181630995 563989714 492833872 986529386 549751015 729766423 435517012 354108635 267252862 595301953 727980690 107628691 270604241 371418021 601224171 822431087 246640768 84159339 724028895 954525842 114319031 826359154 442761598 448687132 43686981 831477512 99205960 756181343 504835387 367357324 302966966 876783827 277134365 321273654 660128435 328516417 822902540 79929551 309269224 133863226 58801628 268330433 766832839 617970428 523414748 822282124 415077942 790382126 661936937 942265698 944448928 891675261 141904021 509750433 201185045 203883920 900923312 847589417 663907128 781169963 953001082 423059142 617073903 281381199 296741410 361957341 146390699 739066483 592053552 20280213 392753848 336892630 320566220 933250207 572185543 950980732 682179238 70913979 197797372 477494234 677334446 979746903 290304267 792440261 926357570 293703851 469152347 281524353 197900350 553214745 129489613 157882988 787495325 575676033 887629204 763151673 760463926 375547465 87526474 775569989 878515839 187214165 335829656 122000145 643100939 350018293 980746300 666716688 410474460 621805758 417409189 817853418 113400468 38798162 11148158 730443632 105367556 855302176 752254888 479218065 444783923 932582119 482811259 567105129 998323630 484631270 225564510 368574116 731862880 736422960 878412188 322715642 438412098 40101026 562932075 344906815 170318623 538020132 324102119 512222263 439771625 864968156 55712763 170405616 896196398 883190908 130309414 606932125 640474873 328161725 178806148 981319881 470884730 147110268 218686266 503297451 794896242 210321001 272065220 100408570 157984604 21927161 334209108 815376747 112274188 397760645 335188927 738689012 807956666 177795022 190032089 98979977 847722591 681966634 7719377 608626469 178633873 695713411 843246113 144820684 377800357 595051109 484197061 247448998 515476937 192806519 346764228 66333217 739447032 995576958 169118703 210642553 429417601 841319339 735055189 583417645 379417538 361951683 121985781 361994356 531817478 80969466 68389877 599257142 964149509 513678622 348062610 297631032 97727631 331155717 141279019 98704569 148968325 596112965 478660183 64952832 244998791 986410503 288576279 536401008 74574643 587183210 474271487 486962851 426613656 475645826 661283092 792561057 491354401 142576022 17516402 770710367 72720755 86133344 670051310 144042535 473801011 253262607 325808622 234787100 823043272 733750295 890554533 170259926 843292583 173000710 40773168 931329795 885721959 401873819 972367500 95685227 272486968 668612132 307046965 55051032 165070739 644679250 344214710 521233985 539964284 538893583 370561451 521122802 870550139 224974625 571540952 173153318 609322925 616147388 905394274 481648496 674769577 673081534 396643735 511161830 996945274 749754661 555172123 749206567 639906559 638053856 11978881 699877474 463170977 862517443 173560703 852017209 707705320 690042111 687396747 185273723 773930650 758371385 63225337 491941318 513232094 600405777 221148387 183998784 871465314 545666255 449917516 735716347 528120443 391600254 848667853 761972362 590728317 897981465 230096121 189837012 313266211 238571741 149228290 738576304 393851456 66255150 824619145 648799408 745742084 608380890 890426220 18476215 863769454 535852281 997428408 383698093 299020345 670022825 554708735 526110704 304945640 722600499 851239009 427354953 603633223 869148659 282792405 730231900 65306634 316959789 362044418 367228456 415529621 880686924 679494760 793779965 857377138 907759016 288458609 461864259 16281216 804870334 216052320 725710571 334930327 277146579 328560692 508629743 613915376 507737923 876661941 607517071 420597280 108165302 186580784 630846126 429222518 454319914 337323212 251847216 145858406 762843731 115599397 928806627 579862818 109068019 754627761 323792719 863476397 797118148 429223956 70481476 494550873 457704342 851850062 685615053 4085791 732223586 406381167 35402607 903047857 925888117 244389514 144189547 893920975 755316454 600030753 792520228 812944352 295204936 854282028 797736513 988234360 677718954 461324154 524541161 932860380 49705309 819859260 148523552 828014591 700381838 304978173 202784190 261795364 837586530 551461651 716028202 235657477 230522800 17578376 296223435 974200662 217233606 499421308 691927149 287097938 787124435 100169783 234373291 887482235 682106944 473549038 774560382 84314003 38708027 735748162 117846631 759048859 627015711 925389794 976936279 81453382 110287608 217874074 932906793 905764859 74943240 36780129 701777425 649592797 101135591 408847375 574873981 415920894 292102909 823650713 758283793 626902750 985802472 30361024 418585414 159303269 488353290 100520251 851031932 541772896 171408297 110869155 154416490 647197536 695494982 767848240 716090125 860526115 79332341 890622827 316619956 244070557 409548443 652589319 106240077 977462370 33080262 850528607 892907061 281136698 699005525 120487822 612583851 82192957 714038142 122290876 33464468 524221121 167083823 113203990 163623324 113734203 223611264 653587100 461819732 162522060 178470772 115562845 729026650 670477108 74944925 427289780 20039259 694682198 4648253 969653134 193404297 405649787 370951547 794658501 796034423 363789553 141994829 134833273 743799805 48794622 984521454 222018552 131008950 439665335 529395301 994691873 602431062 308257383 600329884 576853773 534196016 94468745 329895793 386949379 506243845 154236296 249205054 808222369 932734769 419744260 260156580 459650730 73356852 806456110 965250064 392105683 218144584 637292917 456020654 328263315 794598255 176311417 182799727 803167504 973507034 251623635 703083846 620276190 157696215 831653130 578348440 595289018 240086356 99474206 200916415 745447549 107988809 146583906 972044211 41428535 695045132 823871778 454965299 790334458 864007781 897208379 146362711 853727388 122810992 22251923 214658467 434480590 888614232 857754626 653786514 318961700 779604042 792710851 998866476 515530749 744995608 137791233 872641514 601305875 845475420 407777157 309618396 306979130 908531666 407317401 976930101 23495226 252609151 314183173 102649126 516024365 613156090 124929712 139294812 556144980 69990023 125987427 622617464 673855030 168507467 772073168 44636624 973567556 55723971 271760234 209796319 974083525 437114738 370580123 104925831 514181820 513870338 614200600 921611766 579880270 620268426 11834194 104799002 230293342 784059995 373402558 482447651 612837090 581894056 774746100 602005538 635646869 627992623 637582793 410897963 594247437 928807544 992184288 277420759 211153115 516243224 9167144 208065680 655185964 576587932 672448892 602526671 277877173 890299336 412404281 436279846 927177155 747362477 438634042 79515052 20063201 982996627 930347948 948658947 228681677 872902524 513295872 267930172 162000943 574835975 746398456 174444953 608662524 567140250 892551420 338975060 740938473 171079789 699577286 46367749 445133582 552200685 867965595 455245074 455548981 678070021 594702483 742469647 348966721 159325133 915859806 239572718 141835855 606857391 527956589 55630776 755245678 854547397 778674308 231505650 530206617 918184736 386560070 936072774 239305878 576163016 361352164 413720784 319830463 195004784 491549886 907947507 880033964 53224593 809629322 498385113 596434268 375202951 627915495 928919509 618247426 677835915 455814283 735504251 4405896 898700213 112188575 284329689 923226772 662370346 710763006 435197823 990709845 589243002 181935752 558955911 561500795 525828594 998709779 892853604 935366258 542355579 868458082 52909119 503501444 432522518 963595005 811330297 40877509 462343652 928291764 977052988 285107317 237240714 496098194 91251941 471340017 482983157 164816195 251890023 685284617 878859024 83295628 270971355 146437806 451904736 113165424 590553927 686331081 415341073 806873849 229396471 138278907 94773384 568009362 788716580 149917044 639465946 703106147 550900764 15402243 752469901 648263979 53138972 285094179 497811277 780185296 43656176 745637247 865159010 162014697 112964171 578671510 865270518 680590001 528084610 65746597 457120116 886959312 583172800 376752467 608061515 101987497 501891735 486609723 499204926 937434817 569019260 566090299 551416905 664628634 81021304 325482915 545884367 664033995 958644675 33620189 75758740 623010551 65783952 68327354 584425872 762557579 797075359 862763829 625991335 956131355 113889711 583786432 966456617 421569940 670405237 699514175 525723006 990994506 502298569 585831059 293426988 854526982 724453002 707266979 269545320 685751407 96697935 402543793 428358655 2548715 93563727 172404409 266597270 860883128 941795810 365103232 758379942 131041602 609811856 603660 683399580 976895733 400255711 366379029 547506521 492793818 967468889 852462960 371197306 870153165 118866924 822559809 987158686 400345462 681636988 424387710 305569010 512838955 619442143 213251771 718114598 830801646 478767006 248516817 430605147 586902069 548654970 506462905 864315042 789979133 311740125 256280292 538726911 75414341 984353109 174680966 107957899 614534104 990409267 870029844 837933297 704779265 452705732 657681987 555278886 216127143 949273021 744291965 440818985 159873991 109648888 609027584 346861947 882300030 324686943 329520271 662848899 432189969 219141088 178909221 936874513 532070365 200564243 44657697 198663692 417759803 923414775 896133321 721300380 732106116 102194187 520583706 395255841 89670325 22745649 295999652 552451291 418326183 350913447 593113972 27592025 522683553 852421625 580022762 159548256 965758783 286511947 703572564 968140444 186882285 649949325 871956984 57877128 950852594 871192861 399536429 882901979 370743280 931411852 643563616 445942052 669411118 239765103 178201592 839330861 100917324 640712051 695392816 711730895 198579171 365063944 436725566 187990160 444480386 767394844 343650022 270228666 510266691 827261984 750495564 739652549 558786610 105493027 247587650 340595217 353465476 426783041 832288059 390917196 927996130 658335272 354628782 468475002 933773608 212929941 180447689 509098145 582178362 729254394 671301707 500569823 763735164 204689303 152372838 443835986 452067721 777977615 994928582 871830928 508653761 37601780 769183298 15007555 440002514 797525307 468011224 258869452 415458623 486388918 792370579 102105275 961787714 170529541 685760989 177973363 335030969 267878191 180423528 825457813 340323673 655777914 974851612 192198399 745902204 730957253 253278933 298903394 803892827 706634831 139102077 323984954 429450128 620468911 500955522 2099186 366756499 279268603 449223233 380906348 805547370 838153895 268577168 367379256 650307278 620038890 388671740 308481131 994785085 973749663 567269759 759647902 949851878 786703897 155624974 44926313 827180957 156585217 620334746 473784253 108316191 847526412 404883845 603953327 845272205 912188703 578531503 903756680 947754817 396644528 705033241 195794896 471003438 830584480 371757146 428500349 149642458 385963479 946733664 848859369 692739756 380917682 340684420 394264082 711616684 947974228 167226924 57026920 650192726 440470329 741592876 694092548 714066834 944935470 976524785 336606133 651033949 41164518 346720451 432455536 736640332 783640225 304050588 860077959 968657090 400423583 145891738 437732536 676416338 337678014 767489949 23078808 990451203 666911652 959716702 420569065 534561059 361547995 189288738 897087758 617172685 577551924 703823159 635255766 533027222 255708930 641351458 486723287 567064905 850449380 873140987 741203759 623912742 463671027 50918103 518842272 6538074 90492008 631963124 494729551 445640723 157136266 426903794 783450910 84891702 128952584 719354749 202552223 70595698 662981229 148009189 18192358 906369033 144035246 40893803 783127565 746712762 622314889 221346479 658714554 553869731 718130130 792395957 162615994 828760453 527859700 117406692 745886579 845959094 665166194 712113889 321609979 844887141 906452648 407714 271662131 73036033 438642323 130743950 323427639 539356988 63055193 45598158 209674590 702364402 217705468 651640070 872758363 932353697 96493829 752795222 393836791 992277026 942977053 343878431 509947032 930968105 687306348 54504052 275821792 462566488 751768431 306756671 719647138 861407968 678934545 862747570 632513919 499900737 134534017 298807847 936779929 230254289 228404566 952683574 860526491 419050444 308597554 871811617 849533716 304466644 981208858 519290793 33128119 809195237 13041357 994598902 693523524 614773010 830393641 904826309 545218 44642891 573241905 484048591 916763473 246481967 576689649 12247165 462875789 845248038 689928621 480243886 669503228 635174566 313661601 540595617 232344182 498905176 913468411 561846453 718702614 965770710 280840602 221184835 512703017 49771914 822665580 350308703 306290571 743326461 41192184 920680896 829286202 589117471 282014294 852317298 730526795 548398546 340881275 430266964 265069285 703365826 163476364 556918277 258059569 393204243 507529321 964090075 102772979 166975967 801516806 6596523 785846120 110684536 663632024 342308524 324718752 632111662 160427433 613702585 885329671 352457104 268326673 964896270 257184485 687663073 235761902 736017505 981469868 559238180 345503759 398526173 778644495 911476274 390949033 151641361 108508574 72455751 994948362 851069752 495705130 627098854 806323399 684504337 794504755 560342446 165961114 814126467 250204132 796163503 390938541 343410713 513732661 514327379 914134341 669861204 147783225 992090368 947909992 806468287 598779990 508967124 658291166 467567418 534263350 274934297 161511133 447264269 499012310 769398500 619666510 124951651 780178707 91388966 653733340 518279300 761367539 550539070 517125968 924261475 65792091 764301787 79051544 32964031 957971902 480944155 795592047 291863594 658562598 462944590 277959238 118116759 219520055 873735397 624296319 235007525 939379244 887943897 911263538 966195546 170501188 360318197 124465271 428511313 82153438 403315023 267621954 525395072 627855218 241472840 936967490 11190399 475284568 244096326 650256501 340414928 606623458 550861416 490618741 499912110 241185425 332512349 615352339 954244972 382107469 969721786 718713465 593278089 417963250 231631697 483357443 474163101 336420567 965423303 947971555 774741789 148177514 171381940 626661056 848215859 3589927 961377662 555622366 735022851 598781823 690367946 277375530 294020729 16796680 948915086 422925431 343221800 474539548 450111017 431092610 743466116 21968396 979031237 895484847 563066095 82316696 800307218 676894260 430239790 733935776 724211804 899469436 756689660 197828980 582809915 769976079 715703142 402986612 973306708 277504485 121185641 305798427 372973348 418186408 80999570 112087547 697533388 762495433 194361210 588081692 23748803 120151907 415136027 398496297 260916775 438541628 861288449 464200631 748707525 5102666 779875150 125762620 235544814 195819413 114657985 288046031 614965215 17303720 396467462 141891765 634750305 625597256 378684531 16188840 102470379 657934404 910351820 675885014 17938160 190411542 553440290 111549692 739365751 28525517 726577375 545615988 520712101 105386513 884305115 485746301 298822351 424562484 9159896 160518858 997885531 23869240 55994360 57464779 683445812 868193350 218921425 579117288 97346472 644667154 940297779 451968145 433107877 266128120 932672784 405337934 102634012 118903213 453349268 637807390 232678913 426128161 719216015 247548586 180284457 177531478 393084705 208023566 9849332 721881835 824227342 100405905 400885230 475404494 533322731 856950434 681876090 139810387 416898062 439793945 993125684 226128572 847230074 543564081 814281362 657960270 163702525 95592112 980306583 718072553 279646583 628850694 342881880 554579754 396135879 584206324 902121537 31581262 115435277 137593971 897297343 291423334 764994414 692560366 656338297 990276453 505661244 827661489 2473152 411444412 645043887 378744757 471303888 81231470 523873648 236322572 40672086 223887484 673170147 911436704 92041004 438789447 168454334 172676936 364697598 986024400 280013903 129721266 594245369 430706597 582552114 875603392 713675212 210900288 869623878 663925236 327151721 218541825 766348468 819236458 703522013 601150686 788555421 462080026 709593479 219841416 120336285 105175559 211460879 711629831 907298798 361596603 60987270 161272273 483840804 946440323 24980990 964543081 993943403 770288358 512879190 708517645 920974808 589885778 209888232 946457310 245093506 612525979 263924173 774569423 212725777 20063699 701923694 688156187 518400963 874250906 119488307 267581696 720372642 729048658 303814978 863741572 766885151 492836031 232122265 72994486 298541587 583541608 665244654 824680480 502893505 808679729 74751588 60722773 161229500 155763740 600030942 492854390 377754224 90743754 382401492 277690418 526191840 45310092 252267307 836153549 449711375 113210230 167161044 350114312 938431487 798173667 676213531 250808711 65995029 432046338 900979486 661317195 851928091 598251454 558372651 749209296 780008594 574619260 244268116 290440568 682024493 838339563 816372779 287919855 229985734 718170731 345505584 27905049 493049713 15326290 385397998 418162973 26840472 188322828 113796141 280042387 920558791 105187711 940659767 808995587 833742424 116480663 625312981 860833899 563953348 17106700 88028932 372709926 416814833 242792258 557514104 714179403 242197159 3681395 395166318 170042528 601752067 643864269 901825984 5828860 653977067 345712634 935040032 462522925 916977804 223795044 562034891 737553905 306239039 964212692 278296481 986724496 252334792 394521555 303920597 332698914 661944869 201697574 146365251 696081000 460888385 143934375 623337108 974736824 55992938 112888824 872485324 174702629 997144117 177342802 861514719 627540659 684680613 883137218 829617933 636973103 485668918 922629208 832043347 259689770 209184708 198215616 541601613 469246134 703044939 118779013 862165717 883699927 948232301 292133200 763554099 493411930 840084894 816532384 36817862 223062137 978142628 33419239 898565545 172075345 521768514 196506931 331450378 991047079 869430121 314340254 72253032 607529587 972306927 465735686 493128148 605729013 121491361 917294161 545411990 767321326 287813864 923464451 496942028 856402398 78730956 321294020 380498394 536703088 568756175 710185394 133337587 604426765 856443663 715203351 426452128 556759066 584262805 573196698 31982164 754210795 165769893 641654539 235042809 806989613 507182429 967366217 522649726 315078926 745495181 668306935 457533664 228486766 246285084 289626658 795650921 591280615 44210007 411362241 730724389 634147734 127283736 787256860 269700392 949890333 872963429 388499840 729180652 25399775 148574714 930843841 83958065 237264122 54319456 834929377 351950313 969668329 442037460 176191375 79453512 17199389 373484664 469860083 807681729 265188613 399879486 56436670 629471934 256106471 633727127 707864450 935064742 704826012 820941675 574008410 273499147 918641171 868017672 376319625 442910535 521630586 727439706 441736108 687122941 309209673 938337109 270124499 448787451 2263731 70834569 296765204 71665387 185627692 397028999 748953494 652055662 26633951 924784973 588599118 162325979 918431598 26671012 766673115 806635739 325369602 694284250 79067845 843515902 568054671 865076619 263765136 202481552 144718594 722771607 759818575 891863181 454286606 660112014 221665252 266419018 473830955 271435204 675345606 420144034 106004031 150713857 804292849 577120317 487220696 675221214 203608609 362226594 12263109 730229833 152593705 128815655 355695389 838702165 540981674 752814496 177005874 356705896 621823360 412878032 649836211 781509722 122157308 847901729 966163970 685180304 180857270 500577410 704668142 672319077 231240375 393624185 3709317 198558044 797650349 261985281 462246398 442092252 566385414 717077914 326308479 283419528 788416188 218425374 645321499 448749728 213664323 637021453 480249128 581374275 522010456 502097106 138892427 273015381 540082405 289248609 367160263 314201094 734389609 84184818 494382071 60580513 388813672 66178578 892788063 42448508 622728381 990033158 766285444 56379069 672045947 842386319 687361886 276387458 298794481 600912872 701033028 487157064 664780859 838602423 287917144 158169979 839017404 552274354 813242734 429733599 965704554 356325301 460427485 819099459 730256082 257925689 489987139 857867022 668493915 748704307 774627423 744733533 497834683 318090112 554606734 426488280 454769356 469675502 923584164 152080897 324846739 522611070 394163131 696686552 384131307 822407867 609497674 233962570 62780157 386025596 757216850 608902851 812046066 951456991 28714013 378061868 56206301 673827742 259427548 578610491 364306077 657032792 316842521 510273407 877001114 301627243 306897420 389865774 123189521 962373129 30123798 341799769 604908440 257642307 290618862 248761910 328408324 569920395 382181369 570122143 528716339 488776520 5807626 778215648 189994781 744839231 838429823 431300445 111859548 456953143 784411494 206781322 223913097 715413228 696757574 133672727 686774540 666882681 585900387 895646528 324658632 842633977 402673462 310409245 217020425 697241201 284074425 287848848 191391212 674542124 422187897 601322458 556092802 788581665 880136328 151484117 149669949 746272549 379737095 198056597 879585050 562627752 351804514 98949778 553939605 5600593 222341619 10198592 363395985 470752197 517958315 527281866 262569323 966730989 321464806 975884037 23687678 144095249 675181321 539367797 235740751 12538443 960416730 637899293 482209816 413906349 384658666 428032599 820100728 218611767 754155553 712128260 232551144 637239181 308069193 125841440 465826637 600363070 229809613 4390607 162751988 253220474 848088875 791314406 796314878 437519011 386741926 207638261 345808261 507145800 418049674 53961242 767062703 625537924 392480150 861892449 798383114 325241135 878948284 724071697 857090693 925445233 827617347 760989935 207300359 657415808 791187316 700575403 752314367 701664357 330654982 645395977 535402645 234869391 54091411 425213488 619813708 20790138 595233098 960628693 646231274 877097537 415323868 122207035 981100685 122267534 348357398 709974740 553032282 869400380 971265310 944864686 566112450 856576928 700352601 514452833 759919317 934914367 350003154 696913642 334671194 54787141 767405069 736189371 210438463 700914546 874737282 469037348 297552201 941188759 132115206 8227645 227935681 93728906 456636156 734377006 363153872 901766469 780483225 586962976 799394837 564733947 957074747 88674061 801867329 618050084 801877760 927565405 602473778 507350715 612808007 226938206 629588675 762657250 516005258 387683803 511533207 853219839 655097387 611329449 532577044 905610144 675618868 403360686 548924341 404579760 196069767 698589803 294138832 843213548 439447938 371855649 304760010 983207773 614695690 791950544 290249836 750351840 660998286 879024516 164469529 747295859 258247439 623613914 816618006 381469474 690126312 418865272 736246059 757721369 701372366 495060799 582217391 369231263 148861629 469614802 49664555 531851786 496217295 223595728 440700133 511658449 266050352 699105254 756500234 864387007 177440691 164734464 153853762 570710660 111567878 30710559 470393526 374877248 873298074 139125457 838496366 771496509 906396410 793456828 367683688 436439085 612055386 500041513 185167944 857007479 646997255 300184373 276553663 569273364 606137099 670980468 669343988 211034697 674975023 107391700 781285186 654470943 857179915 830425895 541870224 270992393 102285780 36347830 298558282 655119985 264873653 523145332 188591991 792257904 3051841 263152574 208807582 170845071 30048538 404533068 793198949 866985871 351895743 114952415 609165688 556179015 733458895 550729869 893067830 729226249 717445364 202400599 20794958 26566835 822378635 746128343 916988845 505802059 641418776 305291840 276398215 494996120 847328159 3269882 700249102 350742878 461913557 873720328 546106044 321220680 200812074 623082599 876613431 898382233 602089434 691672052 113615087 977589817 142179177 412708621 282152 593849093 663117683 612887160 775470643 184549673 558327932 170504665 246640413 64925452 455043288 797005045 143143907 588560040 24264831 41222407 965172689 70458465 977447172 442061277 852614066 53670947 365417921 127142140 343021221 594361600 273286976 572109100 565036316 640942924 237413119 760052451 792123601 498734869 284567892 149588358 323467815 755717089 991340926 638139127 662916201 694772845 813785203 533706164 407349073 993183743 567330885 648998156 120893334 966976682 904997007 896334661 362117609 546436783 466400087 501024148 888631307 49291106 654139764 363865624 376514450 201612627 268599491 366674143 372249285 748884570 834316210 591722525 782200680 649106785 717974565 277705925 648897758 729132206 313612633 984178557 887149086 843822304 138596187 255044410 258909664 864449734 293425760 890251216 825146921 722251285 628551726 448570953 430601237 631483749 607831423 950386502 284084131 190097198 221227571 220907854 217033914 690079173 965771132 534607253 704885841 828278455 722949428 360031655 272841593 966767365 19586791 414531902 913348565 164172715 137695721 469073121 133645190 442184986 915557899 653462974 551180383 791125716 316820333 207452644 357554544 576158542 685881234 892185633 325276446 436789280 959663614 206939781 982139023 278766849 732677081 911416119 182126619 51334554 766875370 773228116 946045195 214852339 250382161 477307972 907783129 628314307 527462991 197643585 178757789 763991877 347784846 748895587 163558523 639779584 15482823 451280070 196763764 946779123 962101226 437974092 208707416 683307626 145563484 171515605 129854213 406091608 149421064 661502928 361824268 58175626 396969664 949665953 793061305 432999596 881618433 537033372 227221200 534804638 239008315 397741370 972436372 273695143 363724664 521179336 120014154 232386975 527664524 332709019 793848373 921771317 289463316 361226690 913412724 979668401 176380471 341243538 211241428 92569903 519810202 5918921 578010985 192265235 484994713 814706004 573059779 234261943 474376591 773440490 783024061 994420009 721354760 407427505 524735750 44981995 80949419 39321295 750706713 376464454 82310646 291721882 347083791 543142911 702291445 65555367 435797321 648451569 463790514 16765509 588394689 934699316 453662440 538900178 23566469 760166122 820850570 46342338 598172582 525043872 995724624 794098372 958667134 862290924 912499568 315479749 799169587 967062510 139239774 402986386 702302319 218632510 141093893 214018967 623759909 713996151 386165890 244274220 828787955 426365195 66463970 319063727 37425426 100020825 132131980 603713916 292543912 170841450 72058344 19162175 868507622 677619755 511554214 181275406 39979648 770036231 499360780 17100313 683395962 715452344 749984458 517425265 892614476 397634609 265845079 200746256 260490013 432968338 107269869 597662950 691150984 86295652 716162752 206758879 610721553 531949314 539816393 199504341 280111381 636893146 172488277 800244783 307859608 908968303 310912391 3766876 4962405 21184271 490048737 15568756 616244660 931551724 836109855 504588186 781561570 340378394 489539915 248916751 99654143 394714468 487351884 72211794 983543380 705730470 489897568 338344456 16035517 830273186 864040375 237291158 697727332 156036408 850486249 333229354 363741735 746919335 417675822 770050681 246003067 860845893 915285899 71499752 624148653 524799577 89963855 316183210 235272216 372816987 820621517 213555439 887607164 884837035 397588526 768741883 419682663 456359606 376092367 949666243 976269520 47887055 957971571 124637260 152485030 612773756 312507751 623323360 805309938 359921596 515379058 708133217 582990126 523009545 112749509 430214389 61875310 506550097 57018125 854524000 220035161 983759317 187935619 706689290 918186779 870182679 38021263 808668458 868549780 98231130 37582000 763219478 115269152 114450715 86234024 674510320 737210891 850711878 236134036 24685708 151368989 83636953 172984174 752276900 723771449 89424444 752288933 251549283 371570707 269390312 993361281 800793739 481144101 644359904 293746464 323658900 996155426 530635331 878956646 828688175 124167204 409849228 761661461 868294100 677681536 449582554 369322018 727317544 721279830 215071327 476151037 936797157 371161287 604720261 71665769 895149185 752230799 6863650 981499773 732862568 122165814 918168304 329920410 616125898 642690110 200925886 303227944 774811031 756571290 491969142 648607848 958347815 568196370 932638704 695719356 562140367 655802245 551959898 516943471 73909262 65233233 616283734 493015091 661733681 49127872 624098716 60021488 94743854 883122138 605604233 222517036 28539030 83181120 571676225 657036817 294542315 261721885 685479373 547369470 515374817 499101638 919040644 540520323 586980469 736200494 779615246 353603482 832452205 47717639 841014216 908960126 439151459 699283234 813081288 237328223 703057240 856733222 98342239 262870139 113709741 863151887 652666575 328256930 278178829 113792655 480454242 615631447 245254765 223212146 270155895 754380080 160742515 671707172 261158695 570403570 829256008 247984283 540895762 238815768 675632801 447558282 644720596 318235324 390983681 372215489 222239639 321557230 6298435 692289014 90197014 880929558 640760675 787939185 856911622 834727744 782618251 738212870 97863052 828959962 121469419 150360055 940115184 692321088 675247070 780579756 423736902 156789847 517475681 584293707 462683945 666362911 189373870 583687398 282244037 921695870 706607727 374154259 600896457 788187306 935474471 180191254 478116147 101661911 754735154 593079870 757726869 553644901 959230718 801604522 998116018 383341529 64589081 462426352 398055754 833821371 904789395 576506433 985611647 738634141 976080642 957296499 316026217 648444269 947582206 498535503 136612301 543292658 523273039 156766536 18513353 105466506 821822748 306061964 133718950 728790924 154864981 163451052 550048983 761363026 49166611 705588054 922299086 82690585 70119235 76519443 371327650 583551621 226207161 931375622 125391667 745705367 744767941 958020171 572151931 483789551 44794684 886124891 676300302 232235619 488950634 955999121 583572173 659568807 30533460 868166034 144488093 86163967 259150602 224017603 987089903 892244034 838598032 860561125 334291583 785614450 991766909 415288370 399064612 507008986 653132908 988505724 218783982 105726458 451266758 15379842 831698216 624796731 517147817 171007393 948192860 761912100 147630721 98077098 60715409 932553287 420425833 181501984 520090945 95907074 873237298 287270327 383452792 442107258 754311650 63479300 697295588 63859059 50636172 714641453 771890227 554081635 365979216 36686227 689458906 107801550 214938222 528117026 296899393 935649749 354477398 618944882 401582303 25773060 50863513 634550269 825917121 15750750 144487504 861266595 722799706 522244195 307555752 563059239 210493348 295759735 481932087 585373303 328339947 33757323 566394096 12546169 660683424 416891767 116260023 351447122 795255665 694290644 914388404 847425597 82383222 697686693 420228731 649165770 340186542 484487876 119059329 208152630 441280624 446205956 164919609 758924327 585228303 768499780 911395561 500142989 373769709 730047414 855895984 889910032 315394436 552949405 147696363 338982544 620677269 315003446 785762682 232763289 852903120 475334115 504190079 315222163 576781306 20598882 492165813 864897395 843034836 880794964 318378805 786747706 647427905 823617256 146170750 191132971 653955933 527132833 639450313 314940713 967941436 901182547 973142440 709793099 97036978 968098888 980597505 12223697 857674115 973276486 324994773 322211288 403444871 795846856 275626377 38017262 135105080 507762281 476496581 461209359 268972262 481096071 428849117 685418857 258543009 968046178 524810906 316345874 953569581 589909633 190227713 481681786 522687079 692254017 279679176 467758191 812158239 217431837 235070398 4730359 71126294 799264369 606135912 738732469 459498768 678434781 304427472 846415052 242070488 467578695 703245789 199597176 34636973 537091549 392817437 544968417 965291945 235063393 405660082 962569249 577638812 859452558 347998739 861568030 724785641 8305013 6010116 849890266 290607282 480218469 900614731 507182814 927097996 869046091 463358475 932516361 436751863 325425167 522430625 376563025 53393692 991636286 497426189 499247268 841579441 256918140 694119330 472255304 858307764 20758727 846280260 604092050 702494072 530551669 705338222 657880740 52373571 329992031 936952199 522054986 635129301 987991869 758125833 729149733 996888184 397359041 136057416 683381402 150294273 231489576 718120879 866374564 647143717 652524924 213186685 182389362 637608846 502824913 974238305 46885703 836918749 212882740 10701963 677596880 381576225 766182070 348966822 170260632 30007614 69338718 576121 379662218 527183717 659929900 42417045 329552404 215114974 678105805 713595028 380110947 754765252 16806734 529463958 708168863 501480429 514506507 308077535 931398796 162991912 338683481 109663909 768823454 816855086 210007033 562603634 408812892 502863590 236023321 371350276 771510486 231966178 390865317 274528642 528973101 45065919 128085230 454003695 807878644 181161259 670293905 499480887 836166386 852051498 80641708 133843687 733094420 584288669 237479100 914707103 462243063 987730567 502953972 776871327 761093893 976716632 770989757 547460272 312681718 781024751 866635186 931212619 616339564 453820625 726754199 158079523 866934623 498738269 222819497 62301403 504961571 697816159 317377908 916908605 842264974 649868224 397675062 317309203 220320888 822155219 749108481 584057231 176844291 265689512 875073436 821947875 435476515 547027511 202839025 250247674 978293725 595060187 779845019 546997109 985390836 506180709 70069488 496730702 238924072 775042748 826318288 16905376 829072022 113115663 413525431 682888302 444136548 893399888 466768683 265900449 301051251 647009696 712527149 553571478 720103007 842450114 826248185 901022367 636226030 327236071 165915405 641249654 309017096 444765021 377950333 841588173 904630387 434165837 719516124 387990762 46374637 711772624 346442746 149662495 26966317 997589247 603892342 953847244 795957863 266438274 235141579 53076660 751053760 5988240 62817968 139483570 937222345 140384062 339213515 76245945 640979944 909607829 688803402 86004975 581135152 830493500 78227128 551066214 959663279 642350441 84135142 824245594 254544732 83897833 566510838 698087064 311430839 248761890 105328401 931574352 729309188 396521379 868511006 101872732 473239284 614451193 615614538 671569061 72186183 577792918 895637142 32828443 25208138 451992655 485969593 578879867 979545128 383285568 291071532 965181252 420872285 534924962 523794711 327931771 766698744 8801207 888966783 278286843 116612849 339623385 511965784 702865329 164717983 620261755 52305462 191939069 231009425 130913682 655651229 310976208 489609648 62545722 906540442 32060517 746178049 38409643 85840821 140428136 487701352 519859253 947816827 929711817 190922538 686841209 655192678 619405716 153654215 371872375 496627573 346554513 342703625 366358594 285958704 120729058 782661028 294329 44086844 764177711 825583343 426409296 111494135 433081926 417230547 112664236 205413178 674714022 737813480 779407400 113134516 889693764 395222129 981436961 127532931 471313905 352356879 981499645 46722046 151545971 969110208 621618278 147819513 309417134 529618802 590656890 413252316 801526842 452722996 46778203 646380590 166666163 617263887 600515887 243179550 741583721 611354029 238866579 795242502 234913284 634463901 693262718 803807387 350829810 187848413 328225418 804762578 653229049 709788821 210346362 975458514 840595061 918354435 462440200 781565112 472604480 512590151 171802345 187336991 431843187 905833609 536597822 792306964 597864104 876488824 699744413 604560270 343866411 346494895 637642198 595817982 843215159 474097094 39037736 651690714 440897327 403219584 684988493 561711218 725383022 361016743 775892338 551988381 6050873 680747984 471913452 873967617 977721728 630217019 479167019 703462551 127166754 37735875 272798895 588389559 176140226 445838100 676468565 702855782 501421304 697186330 890939758 505447300 852653862 330506801 665681472 619962000 559614886 83554154 652611083 428695471 4226706 101587393 107622332 590019597 204964197 844287469 93986727 89616546 988117162 123957690 653099037 992496514 170767018 322867950 388855827 325122428 687580004 382737196 174779523 524932958 896008569 702284745 635075910 233976337 391055159 727576244 750743211 506516781 958669886 515014636 454811684 221068084 365425389 348821592 13151264 967606118 153357219 154961379 91686816 732163296 909833446 878572496 781811912 747545302 856987221 678775314 51222885 210919481 858512567 842247377 428806903 920707713 333625228 837638047 886308110 773013296 562747680 948490926 586741032 323399153 831698997 106875851 457432093 880570800 667007655 479112371 762302165 50811880 771530661 760331950 37985976 346287417 859399842 763184215 777932987 169144449 124701452 282578293 993226929 432601230 65831313 436683246 692742573 306626339 552104669 906386429 965764751 583918925 587269415 316706446 197200946 495839295 863105830 354494491 193921796 155776593 379918723 475054440 977246895 764336540 864180327 779845058 570772657 756479814 321769767 583926529 654583910 571003315 17660071 670814619 17028278 199656486 37090908 369754629 357601417 95818851 551712726 898393691 953829331 905712640 964379830 110752360 506405277 227907459 566379492 944723187 77950286 858715995 153984289 818778921 973680386 234253367 930426889 542833634 73032412 169789799 626806253 990010967 669156111 242478308 407904356 660789173 353913109 555090176 301136375 517857099 801411991 129679489 867279947 412186566 951626781 286976643 942832397 479604024 5342113 176167742 402313212 584053194 415757192 34098557 632550405 233899705 251161026 463640468 208765724 520626663 710462425 319488261 886552018 562883973 278727069 323414418 630960768 817581908 175955717 695092402 867883452 665473295 59233507 490692965 891623033 448559281 854478579 239349556 185105739 532644936 561592371 631322213 478107357 91076752 86999276 111357569 954526460 761186218 357858833 356631585 429932050 963125600 64291796 482573117 97108695 448152298 546613679 822081181 814287237 140322282 824472186 866639905 386632432 509542776 958532451 653029988 170952027 630765152 166740089 749015586 881168002 155051970 92358265 501147927 296429621 603698266 441075149 259243554 965321591 33872145 725165586 341520481 338824354 730322847 911860247 252687762 140369416 5955049 508609589 619915996 506248462 330993649 77095482 583331084 123787938 105627337 671709152 691665575 46849580 902177199 154940964 744557997 857419812 133621889 30180297 929846202 840248749 663371117 362080041 720124975 48332128 700196733 763195971 948742340 693423764 485956526 794669326 805689886 777833799 924018767 812979803 300281433 979270335 974345876 192995071 280413057 970636676 454329528 992948739 3999079 198773584 117726960 599088251 483900208 441581969 881414536 936733868 993175976 931830773 69393906 754444707 642359271 798362413 226521091 894872103 956098811 558937636 850493269 801454800 667659199 499692918 14497168 564666053 398607260 567859421 121276296 270284384 861341908 7789929 799635752 964765606 95366116 132174548 367278411 448079049 314226673 30072889 696991265 495877650 45180158 757695573 248505201 122405495 527744632 257486948 363766333 935789784 418344942 591918001 26003350 448105578 833697882 252939411 545202551 646901984 307794013 191266044 188982836 927180651 891228433 215538151 193628503 545150967 374927381 797107961 219793671 645800902 226898279 167390987 731675508 244466706 161172156 115384847 374923747 522179817 615979263 222100564 168554642 980840032 680945037 568956975 723135910 322514164 102118754 250294330 810394386 833742215 124570902 57395590 722160927 21537267 321292662 698340800 767581245 260230966 52776597 118086577 29345629 661675310 184924974 866662808 766930379 116093809 304731582 306749898 662405453 333133935 459597684 407248105 423434449 303093848 875261390 243637288 264490561 258235693 256554687 392676540 597672616 45738210 254695056 571831349 158591 75885065 571229643 170406577 517186309 17376649 84149868 262935173 489216796 593448174 280220656 958715847 199807126 665091769 458945104 331365811 657587682 560557526 860494410 52568093 262619524 581522191 465117725 457076909 264161991 657071716 737082277 248724552 363495461 945890724 730291472 325170960 378218323 383292329 873672036 399143574 977101222 710617389 525139868 981294720 408598596 415596757 77484398 821985346 598797591 301139646 947045587 887555554 549142798 148527775 380783872 164738530 297398278 801529184 349575216 945446818 182895855 539705543 130491543 84565093 823811127 406277041 438879916 584183926 770254449 601768067 231230849 791284818 685619046 923618413 428422547 613131487 549408214 550075779 286846578 596576924 206873565 953404535 691616608 347336035 934213033 710220517 244119576 335852515 647917266 330690301 524286758 931074699 32242816 686747331 531362621 370942651 14617118 545875028 477124188 140347021 206841209 865315178 48929400 197197690 991521615 799964329 449540115 178086965 716897317 904372954 292932940 509669565 62879487 945075683 553990427 360715717 768702565 35882587 508254929 607721789 288371562 209075825 356301331 318375143 903488746 766187192 814165593 67626515 405686686 948700359 353556222 338461471 902768996 118294511 698725493 218391050 968432348 707050877 321538873 421275335 426166842 575917595 126351729 34977314 404532687 456678628 201709303 646966726 764736447 522673777 698086669 24694477 368750859 499986186 764849901 354930413 707145528 480338017 399231955 313563527 11536049 182689189 120866691 434498380 522883373 722410405 689383111 38423818 672405052 658227037 520045654 333423198 907578094 836848097 804816696 120171112 578428243 705484116 306397558 151339518 496273188 176539771 312494074 771211037 543231175 486146278 3768245 79790173 155229415 805088089 644162685 156983544 502005619 417160534 427576832 136825613 748113876 358237713 72093482 152170791 428926018 319077708 350903896 623576218 11834885 584566286 869047873 275640910 104627290 778608391 793177713 926587436 794626717 120972408 614705733 371647462 993607525 581960564 467231624 871063370 506935151 975408384 370741309 808965969 635740948 324779866 135086454 731501470 556316215 179480880 331607738 850299613 408323548 434397274 92696145 466528920 988165999 745425871 423479035 113369576 595344841 361767489 5350036 520837555 228252108 831426367 453431752 833147550 86664525 739967382 440238340 858267281 13140307 756092867 534016881 60725042 925854255 680210486 911743325 976860226 496174387 855063163 522358591 869648746 257217153 205961326 354212978 478759777 212407508 902534362 497644733 138871056 996330795 991026936 206585821 460777511 330582359 945692923 39112563 825607300 496637926 763454982 194153722 883778295 111547160 639934582 178168858 583385818 578770024 463829671 723512796 739169342 794173337 496171614 893780355 629750208 369851089 318833787 862964878 251581125 144039762 51209883 550776587 362286885 136483782 716303299 763556731 395758963 688983538 864733272 673916159 197972438 523263247 286125565 736113089 96963218 700730437 281715393 647130730 85831795 723760594 634359852 819581292 798080993 558466227 568332980 430712190 75441227 170990567 854572141 655870321 583682605 833959545 721527346 593762188 803745469 643380049 945303279 564858800 855411106 768361584 253884067 424093068 999612020 915883846 251247152 698089219 880884433 506734900 291894284 827279799 497628108 263185501 825411846 813300693 539268513 334176247 312920010 625876942 60492113 784971315 709077167 1783359 687242923 328349088 109555568 201310526 954330784 281060093 680032287 895718301 265338534 656006810 669787354 507449329 557638564 658369699 516149849 806857339 761421314 976379530 788769653 196350284 818769327 383572912 997986653 169303540 239181966 868408668 551564284 112637626 775471227 834790162 481716151 71224968 42322035 391554356 380215701 765342526 118863033 340172335 281062569 635614177 595667842 964037739 421440991 290855209 95210832 886388118 396813517 912111836 135861463 254853817 268066112 466308575 751202378 257869346 253596240 317377206 743901912 32623386 879796008 652033978 385262449 476976727 861921856 226239626 208736843 277481474 35163509 963545545 168292062 777846420 824207512 131161077 906349596 30974140 699387241 955363144 514442711 955842090 6272159 129147174 284585542 9061222 792887812 131157406 489002480 46958818 911178791 781589872 672807834 560878188 701805969 759972995 684853911 132047482 90678755 897945248 641769195 710762061 366876971 474362093 497632365 285457898 898483169 504484032 194327112 220272705 511095671 937035175 637492422 235911887 405279825 236118635 739717047 135974170 443563866 304198864 569963978 698384976 713774014 502817934 49397769 417680865 166458345 239467491 851184630 99158839 980722026 263235673 693010008 921961716 766045174 147778333 974396903 378825140 833125862 404644540 506078343 278301151 235263055 511364671 436809984 491240170 669085304 201905224 478387577 581240347 840137772 919971725 953482873 593561230 664196055 940769 265953602 511728240 598518529 70236539 210876550 157902295 561982506 243821161 744625556 339971331 622033344 543152794 767182451 135255582 16684182 288425548 390744239 768695032 260922304 567846525 160089522 437847682 926277768 175388860 859947824 343609450 828712103 612502398 514561527 60392113 560185040 742205096 541513755 300864417 489439086 993489094 156523853 138375057 636110756 465984338 908496100 192192229 900702822 801514804 509314308 418521339 45308044 119987622 612249431 983352063 465842147 780189086 772614419 393452313 926346315 169681868 508471382 806565227 328197466 565923226 130725223 627674341 612485364 780504725 408418649 7289935 537552219 897568891 952605603 550688791 974860653 552566010 368756559 378135111 302122874 344430374 641246312 579669091 906528686 647433999 6878082 802944415 952334641 763567055 174750544 118478841 531553930 818734183 155492096 560748129 262131110 220298757 540458032 100683501 438409750 351267799 758777070 969604175 485148469 831421707 968384785 356198301 771577054 324294515 548557951 486848319 430841877 608861236 23796340 373185010 105237367 596103486 153966798 43763025 318708082 224076810 174601240 533236739 168860558 2693548 105617946 12845339 472780476 336018810 911807273 531378925 554264337 718777948 912086942 407268401 751593693 700231837 276356160 963519912 676883098 174083494 634258858 918196488 469861891 266342430 253766576 66213268 734504113 426548979 190086687 665325168 914199181 734748156 687644225 954003009 244549434 700441247 519270243 121392354 673305994 676085902 382527999 529776694 850119722 88830959 464828012 759654592 310402424 983363630 780415851 216635249 227408374 787191241 934018587 53812090 332971028 356196069 156209654 216412445 74362845 158254285 506281495 810617161 618434492 303705654 710984814 84392917 24691542 782353161 383683236 953158144 459165689 429629962 552821887 797413515 597344754 648044558 718473292 988624372 613180544 507051467 411449461 536021658 961972642 712074215 393313862 455648540 517369378 95071074 995762487 903165969 818239966 994169232 989722168 278959448 578115336 136297981 319593841 964330338 929229312 512016552 439705214 991502468 516012977 466116108 96790882 491262748 183325798 934592871 604722253 138728325 316863085 867184571 39925471 765820561 683233337 520608646 778698588 165555792 499336191 901095628 925840399 939827777 634227946 362630384 771475731 734546733 240284261 455868157 256377169 520924463 713927904 466074858 97065324 532642792 314085363 642437373 550096597 247195008 997354171 255219870 425583221 228758142 715557681 874131452 232252103 591840512 75765796 793893588 915025168 163702758 390866425 19703623 911446267 110777875 196333511 771625066 21989037 2411497 73435260 375557732 591521614 287046231 898620262 764859314 30843199 391191668 631403949 759510796 803677991 454819259 177739060 947876605 17244138 339921834 137031247 736881499 8244142 363933596 265496336 850983889 705223136 164248227 396535497 425019541 120104846 447362791 256945312 461855064 655279464 183418676 396467048 232940513 300575406 603408972 682426117 253118636 539144686 461511286 51172984 57409838 772816235 478490644 249069139 508983929 957794327 390169827 415792278 468292790 66175855 649712065 192535905 224171008 628271662 202327483 359181670 892407340 536629593 794485027 708190921 413644276 913887961 530560482 100697289 792599292 836395981 40616796 37118934 183453870 370734499 198470267 386065809 822345152 694982877 213433519 844377614 101082626 252001247 529258987 157282578 948566605 693607698 764946162 627757189 323191870 944551078 545152340 648226569 284299886 706310642 11575407 198137159 23993869 647131748 672920740 502162902 659048206 472256691 477020733 756470554 398385794 35641931 154450593 954761262 275939358 703107451 41223014 200686532 352975050 498991239 436480433 922552362 100193250 21541321 634260624 946407049 579752687 73611693 65108623 221995184 505697540 797480460 555879987 7394258 397803898 511444561 146016008 957221769 340326001 641202987 436961919 282340701 891543296 391912140 6304094 985905054 338308398 901395874 372631490 833634376 918434304 300498292 411645121 585505600 652676336 600361037 745219050 693779321 570853939 679785577 294514088 174817053 270352218 162656695 44630433 333622717 220719953 164986290 267665010 47033638 232282855 88263956 830972471 823787202 488022483 157007245 765186292 871915472 641591350 252459512 135716474 301602131 71192510 577612327 858851198 462732976 398754268 585429776 132713634 452396529 240286594 469416049 798677133 330103954 834899883 721110816 6504267 60312507 239274137 937334089 152646777 957979657 657175843 464216620 376797815 961199376 872481948 443512606 617095252 31768397 673171809 256993044 63569811 374834786 63046865 709613619 528571589 521897290 38449921 323691123 824784933 299008954 661908821 558490594 821408379 216642687 73162352 562884673 45485376 728563155 92620236 133526931 875235591 680297881 276379108 751024894 824587530 273769199 319071470 981990063 781236342 847405299 621630962 643808386 460945504 273325679 157134362 502861303 235508538 357629470 984390445 610854804 240856411 588546487 886304145 508049229 276820717 117524953 43851152 344566086 278207462 482811177 654006319 431958074 657799135 123773657 167256620 26878445 846904569 538679447 101537890 908068988 982784680 342452876 507764632 823819824 164209104 559359446 637728884 690346913 162207226 360585361 665744935 841494894 213445022 221144333 250961199 207922562 818944520 354636444 150628668 187631398 165335509 850158650 553322542 396498140 36529935 952746377 901349723 280557257 768769565 179521057 837309742 48250558 334108008 543617668 661684998 173308265 296018937 954417284 759972248 441746936 568857573 488852517 542120646 49276709 942404056 870873092 941616414 643890183 337296969 927425418 771780696 221357590 738453086 917570249 863732002 471360242 743761184 335244860 104000292 748552284 983570497 87209500 623774931 938731872 853822131 244077063 955677789 64602881 561542550 260205456 88313829 792610175 405809293 207392807 895513505 470469758 886060268 164903112 540042088 983846375 625279658 418167147 606778498 166539710 559511722 346697392 589136339 773786783 110257852 267860907 463146970 831002869 176627497 348689520 166153871 101335297 692236617 485040166 691736646 220456678 159538253 200681004 92326249 865128408 104469939 825527902 959906325 101995103 990560520 802788556 907563079 906374115 586648350 889401817 313797489 731192992 953289083 794117380 876710805 944326957 605414482 849788388 323556920 154863781 834593595 377586170 697347048 415873647 501667592 399830859 778202393 764251083 451058295 820035125 372080718 330226503 799762113 762387337 116578774 323554181 94444377 30620400 774231429 448944006 37234858 999654922 829457670 274430107 663126129 570284496 215771147 340829528 974950666 150930598 937996031 139369709 888922835 186077282 875623687 686702139 120838258 577183552 724675160 657114202 407307173 66566479 919974844 249403900 562871535 669645808 317853964 536242 462840267 619892918 290160594 843751921 778938577 528932103 747832770 519620675 90936282 626969409 265631173 188217702 992312647 209959846 567860445 727400709 561716828 718020088 58199251 105924247 749913459 242788127 280823405 653941516 735658959 533585187 461962880 144563524 224945052 42145002 842307118 228040766 795710785 244101795 278176073 471904710 89768135 682970914 616635351 462919049 544473594 660107387 452309098 822457388 185758514 473921046 299084621 920881500 951834528 875848383 693110317 742077808 516117985 924354404 374305303 527200622 995812587 477132281 868249441 648434217 118057770 636391319 950679179 185973327 556468069 794701025 78098976 782459809 980922585 701643327 180329481 725855989 77303280 906719990 695345660 172491374 723511387 923710378 114263923 332248198 797070030 780120193 857414781 573614863 961649266 125429459 976722652 480271380 714819094 390406967 134791873 3362806 257654399 429557222 325441630 618566576 755381406 365710963 19961764 186708410 333824446 859395912 706645416 72811381 518790395 615666065 121030390 427673571 549273444 954359028 283011988 569614072 712935902 839619649 680676785 256712101 753149351 752233955 523591104 591394026 142199944 141012919 160178421 994602003 107418404 712562044 502963741 339411504 790725645 234401446 914178960 200908178 11694368 678529803 990452120 360012132 212136176 376401422 170201279 327824282 839737212 527177008 562814483 598187876 200551603 55639436 304787497 504924824 809744002 566544612 145895945 41773129 62968256 787700117 72826439 593189129 806521090 202007783 207234374 986455769 675191538 773067457 430977890 425709770 667844871 740018550 794714627 159040235 960447356 958176562 196215041 991806974 441084753 661741831 479182210 703056081 395879150 120394477 662694866 174578232 418058554 55358917 919175201 916516803 85378148 969365727 300276173 802359832 286578241 306574423 856862931 451475881 826942011 813884521 34795502 612898605 316349329 67679682 499037648 904297188 250323523 653371405 897818226 19356307 613786077 314094971 879043540 19968772 372103543 352318137 296845099 80352969 331335859 964501948 759176452 851007747 987347267 472305878 357137028 694741072 347154649 351744049 887968083 992157518 89007501 986173573 132605401 661240006 271684907 277113204 986604936 439860686 523069676 706375594 578226554 551022051 653190119 218816716 112574543 290057249 28507221 173592301 976964220 928100992 441504472 976974429 141241377 823683993 183608008 249938009 54874584 465018067 312202997 237526938 213735900 987734346 762320379 575333555 534522350 631548861 419764038 10130756 930771024 970544430 705793746 323395700 207092955 635805591 617193513 791794719 871194348 568680403 813963946 268291860 659202683 444212439 173150841 211954679 953676006 622554403 153082115 525204906 203864646 476935845 63796470 620498753 695752324 49445449 503098093 937325342 527950438 268190297 984256142 648271913 965229338 28718628 528453029 682612051 635430706 487701903 331181853 140359385 380287772 668987538 504945590 136145171 719214081 790620103 627500085 807312865 906639409 264067343 108690093 909219448 306113718 713886542 838501353 575054405 973196818 360406379 385454665 805882482 400877681 109873594 958810625 135445157 14585818 109109320 725094952 981707654 296691944 451449305 162086306 324283543 582312815 165271187 98743959 241908951 709518075 28584972 947250307 760026077 246534792 357255751 207028361 916159249 725832223 128586920 309794267 813605042 968491723 943210546 643124228 848721468 26448336 912366190 298276532 908027834 903387404 986948740 800038765 575368604 424868831 423488397 68255484 785531211 346878682 546576307 826748894 752053273 900454383 531322688 141046994 668233935 105883520 730516173 52754291 737789792 602070686 659676234 86994233 401853321 147060996 803683033 61375452 646398420 89422526 233429663 228760732 529154811 524154657 228009328 282895770 458760043 248060321 523210275 126854932 933760042 967222868 432260897 474349283 280269498 480054813 329470257 416888031 699328710 85233865 330963016 618196058 290636066 235178571 134641600 860522944 852927058 99154002 619850077 531466704 407516985 182333980 284401116 80674222 406028864 539581376 681285101 771040508 431480694 242445271 302981611 200018132 591809098 35419982 498385508 550292482 44582060 928620270 189472667 411839508 737078979 411700680 378717942 727403907 719602782 294526029 439791909 679549187 87707395 494908259 735325372 738736768 39666294 935238828 55207276 963996021 2409588 996637374 951866469 736810741 481912960 289880537 443797608 211730729 189030610 241849612 759835428 777235208 399061802 175521048 646830115 106400853 63328785 24408167 457707178 123775375 984881387 540405044 120531421 805111133 299552396 550796966 787481537 890902800 102572104 975153651 768495450 880326297 24037120 637211134 85781227 569150185 230304149 910412233 484674017 83309689 516087024 869040144 381713515 302460960 310655729 35970069 640134723 5928016 144666671 538123805 619101425 402003822 308875822 941223718 391147910 2857422 911819746 983959424 319972749 787659425 86645552 711709123 521224353 546715600 684688634 326444919 602018921 890168452 477679226 672702859 147515856 179313590 622108675 296392022 294645757 486520719 26876128 139787742 706639566 143571915 395969391 54291569 25408779 403503636 42093507 753437680 611539968 634532738 301456845 400532455 522851312 240930589 75233941 947064430 530814127 122244863 317067590 83828223 605336984 941227295 572793704 750448311 704951440 262731182 466235007 256141250 100780983 439450303 755936211 659650783 70596899 724468015 299839092 944505503 78891280 659936246 270901630 679461618 887730136 147276942 669505219 849616211 986195887 822985187 614264050 281874262 347198729 784029187 711065228 434071663 463847615 303321668 503929445 165474414 751863868 936524442 288723646 424336381 568930380 968538897 979829798 263434840 208961583 658852342 316058952 841989669 370407360 481098632 303808685 923966995 117114707 125633108 156419643 631194137 902091559 454806997 999599673 206443980 241367100 627681981 160553836 216864838 19508977 504271488 415992071 293784179 788685199 217019808 224142001 617195585 578260845 626853131 436019094 507394441 909850348 641323432 862989596 340809000 5784142 439789383 271030239 585479342 874372418 413806754 392803076 151804819 602749228 562621121 96253277 349628063 107521502 42433587 515135189 703943723 414152763 684580070 767249367 477241621 9697066 831143803 448182199 813444026 222686159 95442052 828373019 473754957 809653617 409535254 562371108 702908972 40470544 859871616 945420828 60536463 838951224 779513486 704168794 455676230 785429881 514714492 677538281 547011642 635382132 345280068 914516213 782070811 777740940 589494698 438568689 383068172 918268847 213192937 745908516 73046505 782012126 731132177 746802098 448116217 97609838 748203102 154897693 534966051 581294548 891764144 771907378 720495744 863580502 454960920 963312596 421831662 332992156 843886680 2228251 857533630 761036754 133290951 901128803 414119126 488750265 951427231 896203071 58591437 75627793 877227512 181185697 95053881 439950365 716491103 654696122 712599322 981497087 526867954 470845807 895968890 961052366 439139448 68528591 675436912 103499418 430513463 756226413 722785305 786456211 731411130 28708391 829110806 23474504 843234407 674309671 757297196 527467554 527804619 324001365 735783901 954946534 778469615 318682400 154053562 996776693 400460926 574658791 334869735 481240997 154840455 37310114 969929316 924589121 659678586 648366535 681277794 38682778 952765036 517840356 404799963 928108474 250516265 229489219 388519795 894123778 209035795 725392625 768855348 891172478 897942898 765968520 730416090 367200025 522047625 854244398 758843813 812092517 95258774 698212431 83224495 969568622 622326928 966599964 100552930 17774138 345521238 943003518 362158773 893298129 342310184 869786392 837747519 226570385 207705660 723352673 82195028 53729005 124952421 153464027 841442012 351373086 586020350 601921082 15678701 114693431 647251437 118213113 299316683 887099538 246636329 604036068 961567522 983527011 642863411 269003605 107494143 971807076 430332305 223352937 532849598 627395476 933618489 338743499 803859975 893702529 256231604 25418999 161671017 599992782 874591188 428044143 330852865 731060072 957501538 616462696 683220666 627995522 55804520 324225402 120621349 434822667 448996329 403090159 404948528 80039817 310182356 656189438 158095577 920358901 228266707 482359741 532742297 986507002 366069243 537708187 826403483 208239639 559159616 874286573 657047911 998831713 742049357 826584418 179410433 598658006 341964842 504620030 619625738 777190055 233616216 896853438 754116713 38394373 90817952 34118106 661040718 577077033 107284560 531769776 861004330 729011784 428024383 374893640 565243915 577012334 332553088 353866376 355341237 296542812 913807852 1978320 108242859 478980102 967885958 78485002 456688012 123830752 656979524 552504311 8124005 294445541 96624196 325513029 710756772 972454360 893422469 882227900 356929381 463150507 813308737 206341920 885232685 5221120 252354649 976434379 890506669 504496490 928950095 79700164 578826237 480955212 113119871 389780126 498852351 402889397 569324788 486133360 257679515 763087984 839456640 47563909 694863288 682341299 562678529 37890248 25120484 946786093 971257348 909296271 31433652 639797688 691000855 405877760 922853333 370790994 107504994 65371259 174520079 228461299 802662175 347954336 208748633 238884608 773320208 599668954 781374983 457723469 456395579 231537612 16373652 647004188 821418770 779717013 177204287 823189465 965415394 253650747 537597618 674521359 678929416 777227247 791741035 385507486 654330435 426913576 398476983 702268237 240659018 439105549 917853868 831724792 118990333 16305221 294054413 250179240 819238407 322921735 100335414 531113296 224898222 815162513 847313588 439673216 359710609 744268826 521628949 762205989 720967147 63768084 93354527 715301725 584942304 931922252 122480505 328565200 783953588 216744997 969352047 181117161 562702049 179037352 535574642 281415758 567610975 679703258 401002900 855987656 796880084 70445237 613323186 790796250 642334675 890168534 609231400 120428045 561767417 675614276 468766931 618652897 218012469 890492419 93921301 163388379 801578987 871856757 57368696 457317252 272431663 513917375 849575556 284515016 207139537 495845407 278952083 347077423 286682671 775548609 252654714 31883315 191022205 724586208 566153775 964620632 615330817 920345016 613268639 381093394 951691237 130963549 951594945 382884271 812859298 358965453 159682277 186317626 242185660 868073737 934296485 173366155 760069076 817074692 169833652 912849858 401125648 159163977 885636198 554431181 439564354 149411046 147668049 161823696 88426599 736069195 613464581 112666009 687392276 987132361 752866991 772327700 47429297 992431698 796753396 553179600 751519527 945078772 487340149 276363655 327605303 897258631 228023053 509041827 570911887 636351041 49363532 557578563 572198620 572012388 450809256 605186904 306185532 38026030 801255916 329793091 769348776 700460519 645129327 304735523 412447863 225641538 953557234 535340643 156116333 372742464 778522135 192397152 441105621 935052332 954536476 291924158 66222882 137076659 106664143 682147270 904790178 591453959 334375094 169588835 781812999 81196769 273542128 182763648 364748311 759080073 895001486 68982273 711150637 117826607 612710954 176224525 349969156 332202469 556261821 2342558 62134314 521395762 981111195 107970113 522575001 537402944 784102984 255033290 465203307 810180638 396104611 215565110 550928270 87286161 621095808 691117915 4970386 700668024 366627922 633755292 902048346 762281336 559246230 94199084 379052369 379355623 265253018 57541563 238811934 275808313 430188267 859897981 334440563 94927298 996794932 937328263 173090187 283880759 88377435 211091526 965592836 146089799 836079893 927063005 183288982 906320697 836376651 331329925 561195839 439582437 329220671 688379895 747071438 541958307 261015931 774222809 740870587 101066185 683367205 202317071 788468408 900486772 472369540 257016266 579826771 27447037 145862780 827144851 73398252 221349900 637250360 622047378 83450859 645111722 890795562 371126307 19969765 372944627 833115622 905162490 256235287 307159194 715992553 215866908 140776332 48752948 571221260 463493511 577682487 787898490 830211347 579370053 241109752 602177197 923606588 310311941 675557168 167765148 604496918 746749559 33535549 754730227 450786349 816399129 159031877 974595687 911423862 517677697 460374177 692025222 265706965 203058300 543537498 785430187 541313654 670930098 849304901 803075859 84448515 531505717 218175670 7976334 347869045 338011188 915689777 411771977 281037047 614498963 120097692 692113568 373439268 920003789 631344768 549753993 505954905 525719837 794329610 576429959 406406023 362333609 260666236 309568442 706640988 141169257 296776022 296688678 376443435 652541125 744334077 823003124 801836231 587404324 329416563 341649533 263601119 323457721 202531653 884524119 384189388 155706685 912812757 55356856 115857322 880406283 623228163 125282316 501625544 113563910 535490942 453522908 503968921 896227944 118808269 156307183 475849854 801406526 574180738 851803754 362762342 885891370 95923848 855633986 589859808 587600700 62861061 214846538 365602150 831257314 97339913 848178517 840286475 284045459 140185286 848778434 346488637 478957644 473899963 397617718 478913968 743556533 511253001 528683328 727370526 913115028 24266446 215061926 493563400 879104508 200140993 689185554 970808228 986109587 63792517 242860736 460802123 62157702 884316349 121824940 218650959 327131576 856536487 116460301 956957623 116238417 213703737 330285035 794548390 284529437 52316704 868741436 750273248 616863257 163497947 881192161 657508736 524022413 87284099 533103023 84313129 561073346 964768637 271216721 726519726 17912872 783935966 137935296 993447263 520411270 354415018 136019199 638437355 301318360 696727137 563542750 920871209 698412682 437401862 507169897 495435990 457599053 638283672 903599996 433333134 219363219 118294274 946461234 845311745 255501535 102071001 604343614 878265546 258414273 720922722 70657553 431122455 465672137 782054107 504756009 874510241 734183035 160928558 915814639 497955138 976034179 131893315 232139326 871728049 621800018 57409051 62783544 412916236 448829442 641216107 425152746 367072938 27312569 880602284 543596941 673599355 995538604 545733669 485481484 160041883 940345199 279898325 261817392 341359361 605644400 840569716 324655714 433967794 214150860 708464223 306099872 250027848 571055693 748066494 9480221 240367922 326032979 770413565 307087899 306085923 987844323 163986570 845972487 988456262 543188808 665515868 315650644 320586515 423730108 814683197 867921704 270313955 628890188 987508347 13232294 945688228 234636303 583833154 637990220 168397753 943245297 32695259 474720158 972450748 310028795 13957798 421778167 925953484 249386891 349676024 553107450 817815684 946474658 772508545 184911146 934458970 147478431 922845355 31190810 357883918 474603608 244536135 551038411 827930638 349949946 123019859 516624930 657274102 949314190 200525014 524556746 312251116 525286788 15583771 790553386 606642032 513746949 797893233 342046528 754907929 959090054 991167876 450088465 721926749 72181523 360304998 17098969 61112567 174044945 520298552 131009714 47073582 705896725 745906837 292106005 797398064 757927336 740006788 362570927 317903596 996522793 513311539 663010110 303202607 59899189 732126572 962241674 68421505 122148700 695353021 631959856 727416955 744968062 92842957 925130384 879162813 194136455 148406915 615487229 358633381 270130036 276778678 474563259 77548919 484624906 4423087 321000563 520586183 387912565 800570458 73345439 22630327 468287584 748422916 715477402 805027636 691151944 701811538 245851907 636549283 927028201 688565375 246639139 98611652 292490519 329575459 481475028 892726540 490552646 464698843 896258901 999611662 435210125 283506858 860460714 199008934 844308861 327733726 242260759 209248143 925218302 411057487 905103141 296899510 505919905 779919115 225389911 632904699 101002592 820345254 996380912 216092243 162494795 879171399 349625709 5599302 13326885 321204032 612257196 654518534 427190959 371946602 499809363 283990371 79078763 414965730 991969540 242473552 19664735 523376135 460555259 71070525 532479568 652126046 637945604 444329013 965732426 226298161 660677740 431163161 397806366 243203216 971798505 820763897 985487456 651166210 739682632 436170879 34668113 988469924 369062387 520287294 816455320 203418094 993833627 415405498 384826433 581554099 570369855 380156948 603337903 484123159 869168161 669325389 798911657 270699834 48141427 142116812 857670181 714779950 197934142 574233776 552405003 684604413 90920444 197608222 943425770 629142618 823003595 265116344 530523254 13719793 667437013 143473693 316919646 316706470 472582405 273674313 856489700 516803129 70978521 23186530 819703922 327182932 860225986 406531824 684140211 508520669 362598135 969899314 573457340 689611767 59633454 175715708 306564565 498075463 225203012 585496808 465344161 399532044 217964470 590294196 743364137 885462599 349782047 73188726 944302293 360096859 637281602 724995659 558034504 276377128 178581876 782295765 12172197 431032897 71254730 207431198 644019326 343454468 95514323 159726509 919144768 32351589 253505777 589503530 219495430 269606351 214369234 403792140 589998879 494707621 499910992 280975190 460056957 707171698 912185594 861175227 774734648 923561832 565253190 50095909 654584963 69988418 200015234 955783619 607824695 980271336 991164228 277177325 805672894 392237153 660496106 803510919 862964659 224648254 510148790 768248077 960726317 518554672 657631977 791740699 732097938 365052478 695517130 455207571 529467406 504099611 766394261 453953984 975966004 371707340 361279380 91562061 537117576 878397944 914858725 176917295 938223051 700160716 836099772 583372055 841690049 769411272 183544842 571346748 941285685 306581650 690721995 106596312 236584742 817761978 590937729 993333776 350045114 708062717 315653644 730901229 273410913 285098094 354159636 422174438 806618672 516272712 310749528 174599279 781169612 800977504 336850509 95520252 115321836 143313372 925350212 861025142 734524367 959917872 635265917 726466663 906070039 270242996 730285962 239215724 162149359 858464396 772149636 768527935 334936740 521480769 731614756 953634744 407699229 88311586 352697912 975083784 623672647 969606148 775566338 448010433 38972874 463898766 101655823 965212061 506818908 852192235 44467609 494100109 679641808 164300779 326723387 922801888 822649203 19703276 282032694 172060779 503684675 459142522 176977402 98108766 345866732 302909545 898866087 21758769 99970625 749076810 554455865 262354627 994583489 351288919 847019013 282080417 904689131 943688707 588422437 689414264 478843106 306644738 35323147 455190687 313527720 462481338 862627794 549578189 311001338 24224276 884137173 554009453 951065207 694551278 391225836 322959047 425228295 778993088 749572063 593725262 345231716 571552820 7480372 332260196 608906325 333917443 286683958 405021111 859995275 914183704 605147162 1451292 9201312 112021449 697059806 366938209 744955122 2077428 790905399 66709867 464619110 251667346 389955562 809156890 213381464 814404902 25143572 26937771 900113588 781285544 897952152 397808289 343317806 888186221 312683463 801207025 586910575 959458577 987427491 33073209 67323405 815150229 981600977 602342677 901672069 438268165 356534720 913316203 625757504 689299420 842355572 583763261 215505739 217929401 653362025 778651627 896490094 254250305 974457716 264466355 291745732 961186159 292706488 274392479 942139390 477449142 248138762 812065614 252877494 885680524 230041044 712739133 103574164 573802799 462486529 582385890 432503829 618102817 565005809 884803163 714687018 640791164 646246488 125846807 235495125 338044579 456498358 297753973 976275522 222189506 924866869 276790988 524189342 779433699 386560552 106916972 43098445 905221115 3709181 734338196 802092347 89916153 937697196 594594437 157882049 591572754 901468786 78549790 195563358 376266959 884387376 393431786 369863110 246759951 990356706 308490107 532484223 639215122 567663422 390533852 711717278 237249480 949452721 701359070 252745524 4486964 445324507 800612131 758994111 835210195 516262103 814897511 748768095 485139143 618003537 896092305 10081641 855055163 970369443 462130101 25316202 166091946 509018147 70155307 273596859 494142353 95698421 81358113 115381266 121745885 452030808 529948137 523391221 47161858 334554363 482349315 937858688 512851424 98388212 176887059 318103440 244612940 67639038 828094181 237996498 779377244 610480063 8963216 902280554 554888238 901447702 780370222 92718050 243712947 996365265 34740533 673509459 35611310 747595509 781944293 351546013 599695167 407781705 382221630 501257015 691619588 411521947 467934032 657847200 751044404 534865286 614805742 735526641 27599564 84913675 105457108 370303328 471710695 613344738 174873962 677551794 666988259 183457309 833360100 237958690 786382147 748217545 432823958 771599283 327619469 175563572 821045262 296509803 947346715 10217198 754875046 117990467 330622877 657379939 549580630 302691251 615239139 688330796 381541145 227805061 224284187 93266382 278524354 437176981 239554273 897024958 731659037 527252344 558214501 222719988 113502460 362374798 428747485 172916679 634810736 29740542 385720242 547106415 937779867 211944576 627508435 269696832 526545640 817236770 880521809 110402741 960539060 539314923 688580154 315471608 811569956 326445968 983123385 459895717 138703160 917255049 742779086 771614045 462659822 585969896 728618838 986323523 375493133 634193578 650865475 917793343 444983294 115528156 714429433 28998483 306102515 350757867 752127143 849095830 212893272 384957288 573515058 179647723 694077978 225113424 772081646 355102672 367600880 691981356 392691382 491987591 838422026 280352643 218495361 174394230 264138085 206308273 596031681 684363249 614659768 470558653 890500585 786488181 657776029 185377434 69291063 949406684 777875016 849061918 941684071 646261842 790988854 428059463 763343933 146741967 180019332 607159778 539514188 709070503 364474023 237357179 422084192 735857579 903701205 793898018 745923659 577093912 528066102 883823331 659795319 505051743 413641545 956906760 254121498 9347062 609606284 933188339 468833362 891786214 574983581 981036032 853864146 166599424 288613172 6526617 198266898 392384960 622597351 854430512 35324180 827879534 303873045 483108563 124491288 252659750 211324487 8205287 231227264 627552790 834580071 133589089 235308183 807238209 144268809 154293302 177641688 275640712 94225679 48144360 964361813 765102444 539116091 398723109 766029461 641592188 362727359 712289385 268162813 187482801 612073626 727058232 832233848 618006588 58932000 329994722 419836901 833053162 10594751 581540863 448142051 576091036 341907342 520810755 987484863 839857783 196435724 561281980 348598832 117811060 725245451 586593758 38918606 924887698 924187757 10831690 220927744 748586100 741785368 148893768 220139326 36230710 453429076 424471123 875803432 397709535 371919225 122847565 518578526 631229709 812061232 987239206 896974520 506460712 108938446 643313832 375261195 371006890 81928295 610357185 737271965 950594356 895979639 8056061 926703004 538969136 372207811 420608159 87473258 480839500 357234750 888938148 166183892 865041952 987658090 787886316 733114106 286635933 169188815 85173528 175700887 796579102 275770191 421633314 673722840 922452047 621223094 331407962 137383102 27473357 632331453 875963039 939169997 397012228 683717399 328376954 322558220 713611750 616879027 146266304 282013150 19717029 615439193 479921120 661333570 594023933 62597762 185687709 81944635 949244352 230032719 178021982 682233013 585543026 114931993 882045260 851727115 717775816 955388266 246066054 732032071 399611551 228089849 111930545 4950169 913432128 25938147 76869103 772097750 247958822 357680298 376414882 805197152 371601983 673283660 116408155 312066716 540494437 826053446 129552078 493978917 739522636 871815448 193515379 910408656 39313540 17746431 499634953 33289258 629140751 247566942 57472380 944134278 768752668 132416247 314473942 441396553 509063342 691029001 80517354 927953135 312026291 660757436 497336181 988525869 447163897 724354669 968188693 847055074 415777692 323948300 666830917 716177743 314837066 528308575 551786653 880409024 858565880 789015699 787106712 775153830 111047775 452979783 932864228 205560928 155812829 493505455 614020899 992145913 635264715 218540663 325766222 419800129 782527956 245031947 288922177 243806348 408643986 111432631 530245769 733351832 931054478 929841758 298561197 712118302 901347589 666222382 249596525 558565085 546152636 566438208 642798529 139563923 417922590 908521169 187186097 434904897 112950407 612802553 704449830 557118549 879535553 562025545 141363555 644225780 675123355 51372878 509999097 376357659 536383393 940936197 589388481 287603059 264573838 734191803 620042430 765708455 841751305 349959745 169125825 95525452 341364613 188811647 390023353 441325462 750689007 880086114 595284767 318958962 984406751 939019137 658311369 219337027 623030997 415163189 323757477 466714343 133390565 65499402 266275827 500372895 659229662 743928138 373257416 533917363 514203808 325373665 786464830 980833610 405774730 200074387 229280701 941463958 526083934 562294573 38871429 254828792 722797490 239932283 99966540 82132755 724922461 913203539 572342192 938498538 15743537 31538413 472566844 387471673 837570974 704158925 794095919 218969171 887320960 990818480 436690730 26137406 614390766 249809028 192280603 660723009 994917818 2810406 700153318 254508715 857597244 610243533 252056320 439241949 118259509 163146683 206293403 533833859 719571526 836113127 445148640 692437727 555147713 626494507 289534645 552618125 664849643 742720077 443470198 276799031 629875519 83658804 284697900 437489708 986315369 479907575 45281466 136155309 104678477 609049632 468550355 430941792 333626568 553072154 315983393 408913709 286843479 434408185 359326737 847292463 116074938 575093481 492642123 887151043 229839931 402972392 268697682 943628834 441235141 948604998 338176939 344914634 103834299 124444110 48887440 129768456 57643915 361433642 164416195 720845809 373192071 484743989 694492251 420930802 203716285 913747709 315530358 462176319 127701530 44690379 826928864 192011567 959483549 449360260 628234576 411484799 797941303 109561402 729377897 398748493 647762229 670534773 949344237 28240691 514142957 595555451 859038918 429292035 12129450 275489641 92469888 462485721 639684989 579655970 387985982 875362372 536565500 424397001 742874529 239379057 779055789 834968957 385534070 915338894 403582035 626122349 866603994 698724893 3754969 615280762 40915007 438766382 156010653 19216754 651485510 638886798 381949075 938021896 700891951 972307372 297579269 784691870 782783313 379985503 499448334 322985755 527792596 674417909 207955781 23960962 326254702 238754576 214303423 721325581 257840680 341097580 290833459 7826814 809490780 815094972 325269318 651295523 122605551 994374494 860739385 506925374 55968963 906460620 835741410 757077966 647629635 353414217 405623070 903169950 967816311 207465729 964965707 364060146 853865995 471957532 895698137 631035519 388073386 25365014 22015978 813326253 643626645 340203080 770228530 993525388 928749394 482881973 261137836 983987156 228349907 591605645 581506963 787762665 447235248 980217898 279025960 378537169 525799945 631040886 426624008 788115644 1315293 5317201 652865122 649301622 131359863 55423335 759728796 902325704 904094869 650988495 929406755 530305212 412513950 517924094 728119250 365845699 771155213 629189174 605644419 661085296 812700462 137971369 360702324 192099285 463379847 225786760 244403911 191851192 851309995 209469878 952943341 123280001 530181865 750941829 650035783 605553248 336701635 34396797 698185829 852808799 780574352 710728532 784535112 843290575 933554278 991433777 693807010 804473224 843178786 583770274 143236817 562431282 475911884 166440013 708730835 177427607 177859650 933609895 310868572 418236287 49525377 618529877 456607870 846210535 112923353 102763911 897553430 955813713 250426430 733149431 754473164 423136006 977560186 987143689 49528158 656196018 941531157 629441768 601383318 918659958 18507212 439143060 379173047 649504891 785181075 650669751 143844674 764296621 870782967 417044323 790887293 752581445 324466754 312199821 884797935 958102971 351105636 524432337 30609130 374070498 438996206 686928873 836279207 719634827 842207934 714705348 613687762 604207226 730499144 833429325 866410924 90653733 937082361 490863256 144057390 925257194 395314479 648899125 192837779 137786605 862105297 257747910 140333792 791414318 966433235 89244502 294166675 40261012 487754801 437558536 72125957 387160215 61519818 959035747 328827173 884317609 624389051 262257846 365123159 433455300 735505509 228541497 550718257 606332962 684752120 348030816 285549814 917606188 879109938 608460703 574725342 248074716 272795386 81854722 285526071 319218988 320028167 805725555 764543674 563619886 711663272 563909143 84820635 483666170 744802057 266750542 280231020 383010162 695525105 863988902 443182644 441069257 318969426 258335258 801516500 166564651 805636820 688469023 199840672 966045486 429718520 459161271 241222252 921094598 725962424 632431754 406070688 131136344 106467651 647867331 273770074 549704090 887509964 312407423 255329673 803998941 951647545 46666732 235367634 416963531 175191471 589619981 394829644 290862387 97874541 945167311 479685716 734741704 987629642 999141769 64181211 424651253 129673496 675035612 801717589 317239852 801755482 230107322 930855274 748624373 199611906 177924583 183004860 896605076 885773588 543905518 388329288 681432155 181759850 849898751 598923564 324187970 898677813 490444879 636672579 563993684 76451043 966656977 578171683 685799971 957090584 913200895 40429884 955336201 284891192 663319756 716526349 492789485 484192834 664889593 611042920 410875370 979632007 634520690 481370759 457391230 550478674 862126329 552360695 676993826 358593647 540112870 768228484 725707924 637833541 96256258 31749326 304265387 64178847 590136439 63346971 757495341 860862929 334824889 5997567 889950486 190317109 855337175 848921611 900887765 531210231 970593097 346905516 298631976 70516479 16168316 632065341 572789624 288758327 574140178 433138866 775588256 380936641 19436942 778981634 130749849 600221184 250731935 124065740 689067721 301112034 94696397 202219458 823859057 82182678 588617917 802765386 662414401 516900285 450917133 672399898 513170462 822654479 526147782 633062092 120328004 378740635 560273139 231614250 218776493 360544632 38285688 89459423 927361979 589286159 494037500 590057648 887909472 680199311 715747017 659617166 165421741 399162931 484191810 75319431 846244893 419469047 469853735 487628041 498731490 795821773 973305920 367208034 740699217 304375486 319337928 450392306 938607903 660585924 652600832 174654365 652830841 22181876 535011271 196658342 462536332 400681939 68848642 899820884 97136336 773952356 119524300 304605861 206576678 185811717 418428231 128161817 543125714 432638843 92693279 373062285 324139017 196135848 525464181 235768630 109119345 681431077 750288574 332481187 32489164 441944890 453624670 81456439 948853551 608018950 256581947 887794340 319608528 677415086 488859199 161686434 932020426 409593361 436590459 440718356 766823033 380813365 503630654 418456021 18245935 602384324 56824850 542978389 218649059 888679703 172795902 141002487 387340468 41535839 483972237 537585270 151794988 822769935 576898028 324605305 871335732 704345546 355660826 213620280 489350846 805389701 343752612 696493848 70327475 355084722 414822961 342866719 274437945 150654882 780984874 884294238 766745580 227889165 758009548 589749844 817116064 975571434 187587170 386454676 745198848 822947955 645410616 630662053 439856749 152577276 461385971 735492839 120550480 783583739 530877472 265142531 626422873 407878190 417594283 802489693 639758455 663189705 469232253 569451829 282520420 144752806 825002128 235210604 665013869 531082742 522927501 284770684 791824509 521003934 280998893 3899596 418536572 318369929 568886610 601087917 501197669 749691913 554588227 331600459 950456951 984941470 190876515 332315190 174173868 688439791 106349097 323602967 146312127 806267776 954010112 167268855 512558104 327339800 441607679 575262474 649464481 185240219 773812280 252964688 48713845 943452757 661089398 472864052 432116158 212951566 46910907 761142640 272236120 916713332 78322538 16881428 347888274 733467439 65993113 97251656 899622976 491073302 883121829 121411413 589395439 314089543 834498965 678755890 491233104 585222276 675815694 865275730 834849201 524883708 375369123 624366429 256709503 567995971 400319798 825561420 169789583 59493247 256506220 807175946 819148100 775843017 840765335 909015838 141428682 148636224 157388505 328586881 228339216 954168870 203761170 798613592 878606810 744667959 100270438 864861042 799683264 9301015 583674839 456040775 317972777 488517516 479649917 437295091 299066031 588018046 316401637 389959612 82856066 819166058 984396055 625758812 443364605 905015437 319188023 264987199 859915764 961963380 573757811 328439135 353653826 588685720 175901156 475482643 299469580 958807155 812388144 159790992 315789386 210747047 298813041 157362813 312318208 932678414 194710230 731048052 504382475 643053222 137436735 650810181 970931858 489665307 128242791 311521251 70141805 244821501 656803096 161749199 667720809 10181119 573270733 566832884 241681563 529662804 859183412 328908458 596664481 385960299 945757743 116893402 342781437 515362504 771564661 884922884 144268813 30967611 861834458 564659280 697056707 629407899 380484219 392867486 750996514 896199460 120029825 391366752 15444282 82347387 125539004 837990448 659762196 165649719 593110939 450626438 513713999 318361657 585390831 331084730 26257717 213864452 415693252 910654778 707928480 370527333 611448558 16513116 260397174 696361687 491865774 318207712 631570236 160753939 545211552 320315706 406031758 787059893 323558364 677685714 824613035 481685469 413980701 352655851 30725133 909736840 138992121 970048810 45741417 933208324 277457698 478027067 647898721 292684078 198308686 135394587 991639391 158927013 675904563 149337032 307117245 126370583 998751711 436519027 791123282 545003664 475457498 722610077 851330911 315770729 826094430 707619899 412812634 208767184 935480252 893567059 820545524 158600051 951161104 819551767 373061371 170026776 935360024 577397811 6656921 890092057 394977743 934425255 56404094 92959470 226452822 793174378 281110451 266431266 129322074 564437728 507063499 535055921 174191720 603475035 512036628 998754672 372704505 692353426 128733630 915675312 977534737 436648317 171373661 185194980 745969795 847308337 749500898 937996977 839828799 183746324 6500522 16735044 573893269 223307211 386231886 270575280 491652424 713069449 213296719 735022655 405290006 437621003 519793485 837550001 401426590 245702034 635332029 119079028 792417096 275468214 36107014 493017762 471423576 633418970 322264529 44034139 459904974 711821396 658612499 205897793 860065799 64397583 176075895 134875162 479613927 415056441 414723112 617472675 86331088 824044082 437213045 243529956 485442660 859301332 831279649 422858632 37559896 35295984 926655476 465792445 28433789 369708193 697892601 185174070 518410728 710055063 81947421 962811519 840046206 661912344 986853177 24306704 984912431 845262699 103231193 434210646 345200782 239744125 189831677 393364916 641816947 404500881 938258487 773324466 628741408 197318755 723349260 681460404 646383129 522055839 457009947 668268873 16375833 356379710 879327016 72915849 378550645 912974181 319931482 452500256 278665227 369967543 263962483 227053429 150502633 638747899 533376952 827108190 688326242 502369044 958141018 443741078 310112309 758753267 595948975 254619947 674442506 726249276 760424607 709737128 462988296 696272934 866427294 828029629 311185900 204984686 432263551 947032001 905868869 142121048 26207230 332483493 953165372 146248402 785857923 100639895 466208701 152640688 178309689 140622051 73873134 913350193 967988297 249682129 818718699 59799806 648455037 512589195 616627340 212863451 122912055 677941421 983830923 101617594 605390853 834377699 562101057 830279389 870406411 956152315 861927141 704413271 270543921 268252253 376388498 64820888 422292399 36780369 275527053 818645028 40486092 442720765 688969397 905149672 529508919 986016356 190301737 901361174 560126632 268601185 305348670 273966728 826175880 117449327 354175261 135965624 967781871 990067616 755787067 89311936 399653578 900584810 361856505 982914331 384668413 78378592 921184069 966596823 850299493 820874625 15117073 144333874 740252261 467204687 618831878 602310665 367844068 569436390 308397808 333445333 368540000 982558347 790917299 220620730 150203120 283065492 506764054 813342659 501069740 760498066 580223351 863744360 838304103 359355100 302336403 580306070 651374182 191907952 205108608 726556178 478025926 213774516 470400338 57590411 775320018 773475577 595802394 85376259 203801796 995012873 503585394 391484342 861209785 281517571 37304960 472947047 910494236 303573154 458929278 669091090 771510086 196483709 639316593 538054585 533377840 527759387 726307887 123411378 352354379 110087865 606103340 654411592 188848347 625620212 329231519 476111495 925538213 739345104 148718703 505059665 145164091 958930588 550419704 483821715 380512490 242817979 574139734 351522454 243797278 495855465 750140371 491894520 765394422 490464479 125164107 525560715 732157322 710241467 443319733 220348444 928113140 660061486 844408775 439276679 773972994 784268815 438956381 789461761 140330326 883533117 328805502 763661786 483965968 98340114 205661387 503863683 696235531 857502930 343679782 568912202 741885852 474661730 295618937 868703859 944567614 632407547 636236339 136400388 57555122 746708494 56492476 138525639 96502121 978584469 688430634 678657308 355126166 95373870 658766137 890090249 937897921 553320686 439238526 128477843 584654222 120363353 967478018 676874887 952331781 915222830 976655486 131084982 852513860 426415733 320666870 371097482 4178701 409229492 633775948 252585787 38238170 13286569 720787089 626960626 436524127 651694838 444184738 382478279 566298889 115208343 251717910 367288025 567011223 951607578 623631940 603484325 677843599 703241273 558276768 195937986 433949207 369585122 469000604 196303051 791371586 14160366 557265954 521087360 299039912 656029149 963408678 60550743 391856710 103408837 603060236 448206525 710641779 479858798 968354313 650135805 671067420 535068028 160931611 155160680 543884995 735528597 231896751 68614168 111866359 269992958 181149189 259287698 411762298 356705167 117628195 255384106 341861151 759431889 693283184 604945241 184314309 704130599 648792815 70770623 124539667 613605800 436972825 54409524 446836425 259131665 22416324 650966533 344240915 405775505 281344234 496312905 568018828 236626365 372125447 37565153 634760842 317065447 586576420 833869292 540962244 590872329 837056434 667347201 981155809 371450294 673022538 925176446 961493758 811873939 871256893 663734755 363423835 270064227 81047209 411832207 820539461 187359527 707810881 44533588 910763792 817004968 964070828 642888719 303330642 329645235 230958852 165447237 673505189 154657569 148540425 520666158 451694597 492794354 148716954 941949166 841743747 911406388 851701273 93706649 710819570 834992357 920076037 827098674 749778918 589451593 333301408 987364105 752392132 296881767 334054722 615600101 536584572 843653835 560050013 440955728 218864844 806676652 354487771 815150439 938825983 352678414 290698910 182808800 195051687 256814255 625073175 831405507 224129985 917982984 737020860 893917776 788039155 90939932 15006158 220917747 667576529 670732477 35107913 817307073 804970736 604802695 926424215 689175136 921930307 412874271 416862414 732310404 354656212 826952177 286163847 847632549 560112430 796313223 48923654 354140683 320258166 77749596 520161302 104717730 480536898 673127773 422672962 718280855 972110382 774667251 605399251 508387062 817401468 459793700 191231536 662075450 449540176 872717703 596281610 973127745 623998400 501403429 103315705 655056866 477944926 383414802 111884917 20637245 93214412 845767559 814750787 473804757 865251334 989545289 984251139 682379428 203272094 51171002 415532625 337304094 366603736 81902694 83888116 506601500 739058947 688517162 451551192 889509164 773702771 137304645 896216090 68247556 392406897 602926991 412048156 318458135 731948000 141540294 404435857 29438469 999462305 513942958 304189973 142424537 441805098 196262217 152748935 719801748 251556238 594584725 81630187 779181021 604649839 602603625 313639218 477251681 80695932 117443807 855479482 585300737 836716191 893284657 540477250 506236916 867498441 908407299 832833129 290466594 264332291 419615831 348987839 985644772 244927534 765989500 895594416 814497385 905094816 812351960 354063805 452779824 185863610 249501564 807083261 550538281 433330344 415204780 820896495 634159155 466218231 860164643 987605525 686268443 700815288 948122450 573561110 185859364 387292986 618873828 963535026 258708070 248834436 562897105 892685513 592560135 730262371 803807028 671460961 865188179 247101851 286102622 746023834 514951573 83109915 38576569 889518196 756688732 353019657 252453633 152262873 889855688 3374577 618232169 746087166 741178849 940144920 792804149 536002982 310607769 106983518 559053721 777298850 534902812 908486496 529220993 43538216 168675600 755177022 227431763 319871726 889765693 492455645 245381940 207003114 616408640 540265465 578617959 910718737 451949124 484650019 132790031 250324731 633951040 28955457 466186680 631418628 578457373 953296571 389303039 508775583 618094564 953553096 459960669 582904834 923772653 504681535 735942811 631772705 366086924 551287914 457081448 960302180 41318716 989131707 575852668 580012300 498795162 187644269 190023439 144545331 640381647 673210769 119791027 516223314 173981045 630857476 432550202 372473388 736640172 178696732 684586598 139301965 739663711 662172427 409826196 223480715 999167147 693002190 43861751 237194183 320093900 654501229 931513537 717723448 442324107 820160054 23419205 341499398 426966499 182264390 788921153 92839956 938141761 449370542 498296346 915338720 556512139 102799308 266728078 358942329 553607021 433411873 130089914 129706058 109463512 116206271 718176306 662125294 382971574 719752949 790841221 16018892 314414902 757605086 52752412 304724311 98834272 658890659 55963995 711262717 750944752 752566132 182677543 980619946 628777198 606887786 38493637 765373839 851600228 486026896 889741457 411777790 937025128 849235621 380130374 883071779 562211971 21371328 942904480 613187437 430714131 656835317 818089228 723541381 79203057 136144193 311813008 981376430 357063731 749082943 717393997 166830672 612651269 786566434 660672283 557100610 464495528 685042295 625382081 186906107 315185775 322720158 443291524 574813442 448487421 101483709 506600889 907096671 339939807 316452561 365869921 516926117 813459374 392451435 253354644 97472139 441741262 736424862 508123827 699873112 956674071 436123332 908039458 861275269 754311607 383551075 15658680 91386720 372535193 100097325 630647563 558176750 611465185 360691691 53909906 952342100 771538634 864335473 714591305 521725323 520470515 837078262 988615025 444552558 765066711 126763099 310408131 622068311 797520517 444938230 440057649 831617987 89296225 83392743 358746865 684697094 298436947 541488613 832606819 168875783 209443352 993509617 395240152 543534698 581466058 873902116 219103520 467727946 732234052 837202309 625180501 178859404 651624336 807484262 293740142 205978756 316257658 829205696 176179896 35808949 962377070 141316685 333663943 622562461 418436015 612975308 216517500 347933163 114022179 515885207 495139271 126936612 137577063 812431616 772203218 577350855 463543629 631263501 970359866 32413808 869646892 642958324 492476976 208911620 960449303 269498938 909483983 287820575 540202260 330516190 114186759 316529169 766826244 218440514 389608510 61535720 308839323 556956744 918740904 637962870 142633887 327271802 335532471 121177469 766446566 641050757 601435621 65582882 345611950 746542061 451331438 220143070 871419204 36774193 266457211 331717607 172047561 424003753 261036164 789231384 679853525 927514788 236099487 795971676 710853038 279913158 241839653 567430400 964640937 569195116 663891915 206038690 256949580 265073938 185596482 890374126 157174417 359688607 538243403 703930233 970838622 606932954 198868626 394829673 954338587 747680604 797673565 141459744 269632605 208286027 839431228 831177619 852699775 317410978 402589699 434905712 138620480 198057487 705834250 744326265 776653087 856962393 739673810 336747609 902834487 122499832 461641633 341341271 928756012 797294346 573249030 219541774 905579167 684739357 991435168 976052411 384990492 939390752 257122152 281977270 557751210 117143523 617296951 642411866 506417649 180510481 259022752 455754234 735308095 692291623 66018847 550992491 177426501 944250928 154371012 242951723 354506210 606588017 97782472 68374037 545573231 613875036 93209208 6501880 296165258 898449190 882078813 199279981 665793301 186638934 678921920 223826543 816293956 471498878 767953894 593453702 12668939 808008608 949540043 264374815 699117194 670009169 846368884 48625342 387243628 547595284 206985267 787972388 585695747 663559150 464134742 541597308 126954449 251117646 753741472 123733927 629363046 838394573 522466155 352713504 824236598 497326841 560119558 931845063 26596365 557617451 48746513 761957980 511305057 778195735 605134550 183069126 519168725 428216220 533991021 292264578 602837569 125386186 186020952 390809279 920297427 531545379 428777175 430937051 304919850 172976843 618212257 518752048 457108147 724115612 660149831 554842345 965418607 187172698 950819608 465821230 309740127 985189277 492608958 47777286 174828980 387649661 826629319 855686887 182566911 104628056 422757710 200448601 279772465 331994729 596199086 10004181 485885632 114433917 750478576 956660914 888075644 140528150 556424160 234400343 292393657 198313474 197052933 473835554 501608084 404686882 821247310 14312719 450997300 68948670 762026506 23092440 915607764 383915064 323558079 931399074 502212204 796596405 4614283 61073183 998912953 863150437 233358023 105326696 350610496 854495522 457081154 745679834 737303558 541581802 28647894 569945055 70218542 410782376 44121201 518240980 151957267 958309179 111772087 940345900 525280491 694902302 142859293 658437440 557720642 888968828 172076376 974895306 256349340 930235614 233324659 658939549 208305302 641458994 158546524 574305666 933404928 516198745 376126139 852076956 462186360 9444547 890151002 214480021 541038980 956364641 577055406 617520734 413685978 767386306 38042462 254893848 727147612 699293278 719626864 85172254 524306006 775120121 10445378 929994574 12998395 805026404 124461594 71212301 419206389 556132859 449611792 559110441 762687812 554159286 947696878 404751033 940902877 468957868 275609764 484125715 356903340 664955397 833245205 305866404 850160928 117264663 741878210 63050897 463188974 934214257 63543446 246264320 636488593 52256316 496082642 932555678 479812679 58705212 631489453 561346998 549011704 115264173 720831498 447118302 170780548 743401722 84016436 225877710 372524236 822471046 279976725 862787615 110679246 431320329 438232684 432536079 783205611 144006557 236177891 517209447 303539008 91454227 405560931 683237514 592439221 657917063 943682460 573668380 66284716 632761690 771360624 387401118 492660344 544554892 165213798 186619084 423215637 412398903 342856880 325356930 171549049 791753325 995289786 872419125 146355547 837109521 188798942 769191284 800287847 435105316 723886955 683154695 817342207 954920409 836945850 755226845 321706745 388239279 465973454 327928419 173444608 864446119 857897071 20606000 985693771 824573903 160418178 716275777 211351336 697192481 914279380 145024805 997745817 414278464 710854068 708965344 542249676 154617356 274065249 569438278 847225719 190721222 510512288 547296322 357099628 736106269 830872157 233449834 383303059 971645514 429335752 827964221 777254571 175028980 706525047 660103060 81609254 495885457 53671265 319005362 41245523 736290198 323496454 369684160 986704046 150524538 379385319 831088872 187005189 103301775 539309693 686003372 526042502 519358489 870820521 885537946 975829482 264828549 559828918 891652817 472660774 726136622 355696044 704239628 157285595 730668172 139497059 506452316 57079449 636801149 351688963 612247669 18273676 5380300 165930786 726936958 247834968 849726910 484858164 553518079 363477921 44623114 319079853 545623029 433937702 849301748 190651812 875453156 988068679 653419558 839942491 835238705 793337207 956315524 50716289 742199980 995088031 294769477 595970528 63158295 268181305 53736686 372126933 128600169 953122808 200857465 964998015 910986703 551834747 968895517 517189404 392105821 77330918 297242283 307763258 236991322 612913502 548216474 999825465 975077621 698842316 484919673 874626472 566527827 32346421 653227660 327299590 436560799 579266030 76358671 229550400 296373682 213953947 790525890 166401218 860781344 796508680 181661213 732493817 724143562 967941537 616882411 478905508 55953742 25906187 361187050 139617768 685140728 104239205 434190683 996478646 890144026 495936512 307333568 863678483 276620730 743246094 872564765 887196189 464149803 303188890 769938882 767961067 941033612 288355108 401602189 698500889 588552451 82183786 301263919 166406720 484004898 239822060 986037471 596796187 236917770 447689160 276683667 515603540 945755218 156466361 300566357 77091343 180179007 714207886 789432570 10068147 464429168 404369762 461078286 890083951 58646330 144089161 236774249 306018664 369672174 987214694 746441349 890989105 675539283 248891017 72870725 428867846 363989095 39454631 132248319 229081607 816752523 757986154 64170838 236934106 646372083 623368444 426015721 581145336 497325840 812002524 195364161 680136746 552952825 362165223 924820513 611308806 237230431 664850434 715280911 729820035 24070710 72627082 147046595 12387577 373662933 866752484 8017579 861741446 446423258 4703586 96395379 6628048 152401421 112595071 1131336 199389134 682210362 864083171 188911129 905543102 687360704 653065577 389250027 468252838 950870312 240716183 408717080 653953308 76233103 847163286 793096715 812352626 713915076 345067022 49578432 924375589 572095796 493728406 781038443 244162779 170023931 235697444 472204621 510562142 72753214 424850465 49464894 265343268 147983096 568788193 596990093 238366888 693851330 632712195 166090381 52123393 792524331 115011163 311819543 192844387 977149747 280496937 257352950 260914999 16519261 269892689 715194372 585588257 15439481 242453059 379746177 238736340 833986165 463370571 566801815 630763852 375640044 934939301 727635068 968582652 961932412 97060772 261055100 483693768 764201499 944224458 94415684 335373565 109968855 353594215 582679745 175911753 714096995 775754611 290284887 163121205 979838418 746219960 287852428 695804899 586723215 240012883 321238986 597231512 6885539 97343316 918569772 494927515 145214676 140665007 927615508 173025604 729193444 429482229 37031404 395146233 525783663 819417919 881927845 400470800 179910752 702536021 392715862 552786641 210287214 973448566 448778837 279085114 175073277 141648841 236316543 979945852 546095195 434432721 123041684 567717822 555410890 448637997 372651954 665378346 805013661 995136084 349715648 308525520 946049826 59142997 255980589 584687473 576536646 716859393 21518985 396726240 687067894 932309066 17361570 319421853 787397367 841638667 35484517 909895414 579682906 773758614 886226307 358064688 796516719 25804122 437470490 384218979 915890996 693304322 955142137 981733199 546817148 862788258 543264595 455887002 453784605 888739824 138259366 332641962 101171896 379321373 130026206 365048377 588460190 109717972 247880817 789831892 560742823 283433109 100624235 480675519 173774795 402647974 576264208 137572220 138373685 166438518 467702982 231468482 832509900 985460622 867793256 483899918 568821571 145400185 830090772 162714750 811343667 630821707 131637533 305429631 421403648 709641237 535158751 572155846 17835899 239121814 364772834 612908257 98704267 247389498 459333530 125257722 698327794 373371295 583335412 468198836 229285649 309300317 334391378 146432451 830742412 361237648 493330247 47025982 28228837 306545982 453548092 738601372 705303794 598346937 111355692 969348549 71129952 895206417 224014276 759390615 836171087 143071413 481353753 871728664 939953346 262042367 207896332 738858978 97929326 675249174 570881539 447929385 347526925 509257069 641460673 271086184 952812774 721079053 181571952 730156530 93041652 71525600 453300260 745308561 202874878 969215547 30568132 966519998 471318249 311791127 849849887 421638675 594040461 432465606 334045214 548873437 511139141 625516574 669316786 794216460 125681996 518213091 317273651 168860214 780589394 590275120 52552667 197827116 775480998 533205247 345997137 851698861 694529263 972166101 328324336 114033595 672034607 726120433 734210499 18410030 186755507 584863538 821241285 216343040 699216264 44086021 513159830 924492626 717151262 565065198 576779328 452667123 71971842 153410357 661624003 398417967 111399664 48365483 961964059 810469028 815063348 442017974 391795976 324447457 982587528 750240226 153735324 786972866 189172331 674467016 170729910 398219754 49964353 814866964 219046846 614009948 921883924 739125663 490903442 548153988 401518632 772842865 241217925 360552307 73277170 782151435 208205852 66925888 945932979 793185413 119734598 664860206 290901486 687389901 336375972 616647107 59571050 602598633 389270278 424911738 39420170 622050209 196356112 190489135 648981945 955018839 556876305 873578850 800583991 232808590 837576653 689736161 419062228 792045385 242230957 826359095 474593769 908143160 85965714 879901998 76055918 565373735 216783480 731605392 809109432 880050686 897641625 61765282 443513081 413604228 983393003 481610016 164803543 838534656 334890779 35263498 839584540 594065685 144473415 26076406 311860297 852336946 561419257 975592038 530388075 438996590 181378656 482322098 792589949 942357449 903304871 430326378 183714444 171927147 175051116 673352430 523264882 973166026 512397709 47409406 477123459 90034040 904123126 678258495 804942046 45211795 567038575 771916889 572666492 198351151 409917232 934685485 547649936 573865697 156047854 934079574 702412155 793198862 316605412 948091544 137530617 217342068 112301593 195629041 64971272 332258866 121443731 111312126 593232756 971884622 150141095 28696623 486102610 735805656 951874271 423370800 327821391 344570763 895853969 71383807 658514026 697697991 397662051 628693438 940668305 876255669 841933919 183984932 36059838 634084319 995447926 583610101 853378899 508930247 647883580 271605434 94896233 986555423 94257194 534344085 783491751 373061477 524379029 913601415 369598862 854305483 939625947 872194644 889121419 751700598 50054218 783244211 33810249 587210055 275501937 22636229 315913464 470238702 155231917 628785870 740117424 336503353 858692657 953747729 455026356 207140432 417352298 838401574 209715434 771824743 513071909 147632235 965428833 768948922 953680088 604347657 490473732 985459403 719130145 240592941 720886760 669133296 65696629 895678334 719741855 597694200 400466935 97050600 808445428 735794291 252458610 462984582 602536955 936663462 75684311 863166563 403167205 223493068 381950470 587195624 198666602 591760848 135343241 670041710 160969994 85928100 234504075 895579133 243381119 553809720 448042938 654554943 216625828 983077886 456171417 114150468 692491309 423718327 18219139 647594280 115353261 421829184 585329884 441581707 713346437 477195647 442822806 710329220 623911741 356142286 125640141 523984946 334016524 217090290 508550820 306858476 57296861 345222843 57281945 77385413 813034089 538843345 46323489 774028431 442649522 427894380 953576633 642288955 95790447 373901263 904885844 794015388 300202092 657441171 121718972 252399356 46545022 823875246 63767939 242589710 416719637 944255647 144270550 731633828 474935228 841895248 542696434 21681531 55747463 293635670 524258873 640585 541208919 55966155 438516761 967555123 470324314 400853790 174935403 861858245 385462383 692064037 768783123 573471420 109818513 277867858 406894651 3857978 855140227 244747829 392605223 932057129 268286256 615814685 150541045 783016395 754344271 670036053 16163047 787748407 461770211 492356887 245490245 283527259 679608004 805659851 800641279 187168364 780597240 201975234 204984834 293227837 537615852 290118849 727908008 91889190 531999938 754750709 79863055 742856588 927871200 170291654 428275256 888669558 704357930 636816538 607371565 771489638 959314831 990056225 3380883 179217214 931206572 454931630 673426288 124007743 938933609 246911211 638041022 250330193 761904384 692242267 482395098 368444883 495555297 93440449 73911835 624037990 887597430 271989514 233344622 899407340 182357936 998720074 27796666 430934537 837531478 381038664 64577556 325351144 730599229 73939155 780411792 703881881 149577605 935927509 845391994 698970653 771000298 896356791 969275405 256174953 956514646 886505125 588769129 718328373 236223823 742866991 342690951 514686548 659508615 918782547 943004504 504225583 570359726 402049873 642268614 381620734 111026052 131567417 691514841 639204448 532166276 539322503 384854413 426186232 925461293 214424380 488801005 466131665 274702998 171474264 48389980 120530823 500875206 436819669 360095120 762421218 790575845 876966090 305331221 65215280 161585791 409489145 36169578 941457056 511728299 614022701 363995866 903408295 81032375 424747846 289702108 881920720 196265679 938371798 402490832 19462508 888000344 623096833 521951362 165929221 346610540 141297286 313145546 848403688 501848839 762820785 688692000 532641884 395758200 798724908 518631613 975337534 797290114 154712514 193428298 476772085 414234925 555346671 478127940 326230326 274090124 580898916 52789748 526041608 7101318 744046118 660660643 526574225 501332049 59330543 858330298 988139531 191071137 703378846 825213330 382759590 609163482 48466129 952250828 326493511 7667068 583238258 902080542 791142484 395377431 596968272 478367487 607820800 781007211 548125037 985369655 665000001 821954295 23328664 220266066 837458734 489894114 186866117 665575184 930782174 924844143 372352949 783626139 537720162 775586190 789037823 961529156 351416019 176816380 324025958 128635055 283185269 75819051 833761643 319507837 469268882 583198580 763454731 207964640 201765958 681750653 209101423 515139129 771968127 655516350 565039324 319996724 57932938 331890715 472399494 301584770 99979763 456914195 743303324 674509796 642947228 352161305 466171730 199699484 638801622 443800343 173485873 520103987 796344428 48610497 327163568 372159543 507531685 701098117 324881161 271549597 327834928 484534417 880596777 144320970 806797097 201411463 656881957 40687658 388672088 716481014 761825759 655115246 658213899 864194564 538363690 367419829 866621754 588765745 901071800 201424378 916307522 60519534 743393669 617929890 572724602 725797984 666262395 979780124 474857173 859378694 228016166 61260961 549418236 169325495 4719738 819966956 259932408 112670551 839266104 832720282 298550577 215901733 512126567 47546994 781975056 501023096 706089094 643555749 53754721 51651999 531141678 348133927 129279050 181286515 163045094 283669568 72998213 861914367 285389756 161129843 241786186 836488492 835971245 715965431 947292049 514720733 931664049 499067310 738414543 922588916 594132374 25874253 364861132 895411165 466930220 317059374 399082920 529894393 15201031 238072808 494791713 163877071 381229074 613524961 742844983 195761663 867302350 134213500 163247512 533590176 133736363 799083260 304903444 367629019 568149114 105706803 188859611 651216342 882038686 59102892 888091667 235725781 267028489 152720254 269057967 772877567 186860278 965212980 278265222 358333646 209995692 263598846 886784609 96163053 143755521 392656590 363995370 45879204 159706035 572846985 303727886 30298058 161202693 6617663 430196756 403785860 15887061 920201388 423479915 496469284 450737102 46559992 480959703 694796854 719777954 717791481 651874680 923225046 419255632 970324472 766259931 279270152 680680065 18316270 794443310 447911455 379800190 582962842 440681400 74242728 316988278 114544272 466806427 777639646 589385015 41434437 274523699 897014181 444783166 326002153 442923305 138176479 48745751 815704710 981457190 675636871 999704143 213623212 221187809 913063768 203738148 463299837 421324884 651675690 813049597 653979785 930755830 7246749 261878243 446000783 106466156 995223888 796238063 300128172 367790152 601370650 748082413 391715120 253574748 661498122 889042729 798012071 849204627 978033130 356677956 102996578 745388922 54480459 762965390 292589104 602556102 527921099 316843801 704542435 174647786 71825188 67140116 608950309 246207530 273098425 583891273 588162106 726541054 990108080 266435418 685297998 510217844 311612487 430272986 513130106 202512912 972566014 426137181 493048853 677715640 2194083 951299540 411588167 469423082 570601876 557699901 505406047 643020343 563507831 527905619 870404680 796656993 895764855 200195462 314000904 373913431 991725436 137108579 425288204 956027561 627380490 796034016 579804865 758131574 137809109 827620266 437643304 363773979 393929022 840354613 36303635 687666616 657060046 726361449 822511095 642437581 759031878 989030159 315720374 200478778 935345572 393966947 140519188 633553804 916287153 945581450 227631227 658083433 43332378 115613654 729565494 218411077 75244388 262509921 127692492 936874736 523200709 6674970 561261658 861143202 339635952 502289538 887141876 319748290 341662848 345159242 11581629 418876685 623121980 441504186 655835293 926032335 965458072 315628101 180482011 513491269 269292781 126680720 522726631 379867834 11771170 465063100 27984565 881639714 113879059 826531560 957036314 384958521 845729430 743527107 783617034 741367209 106397975 809642052 704417506 429282727 687477331 626908224 356916033 206852100 921329260 218849846 635206851 344378090 286353681 290099141 67241704 469672601 545194130 44031822 247097252 778724036 572950061 426244729 868570092 139553008 54037490 356800039 61718376 961000480 639911618 220295779 792976232 883007267 753415685 364043978 663391727 410826947 986917564 979917680 769209621 445752349 713773508 288712150 34824626 908717825 132649592 601562034 646856215 401252718 498561121 671851480 487259493 544857209 550797920 835736965 683549574 851528467 56799873 427904263 976650829 893675639 257799166 793914638 684283155 624989523 358135180 718326246 77399365 112115544 294383106 416179401 889385281 487095290 497941602 259680814 489933403 286856698 218914816 429863932 433598405 827321335 949385976 140291089 211410960 651819002 909749932 565354357 907127524 411504638 298176091 939100785 488371671 918539106 955007860 378655216 724197643 19291961 92376690 301907511 20762282 176443983 163013018 821258044 759459148 712335722 571982351 534988523 28654452 65847403 18857405 487139550 90512717 850760920 723595307 211690349 763280629 512771817 929695366 780737292 856745247 191870346 655251098 122043658 873653202 931523174 107581043 58398728 736818544 294061599 949261442 544011866 139018184 566066203 309686632 208414578 388189664 666080483 921154510 725258894 904245045 450168395 173398938 916727032 80257186 328382487 156612854 518803398 904062909 979041126 396554791 363182364 924812824 49849949 727077052 447137722 803225331 479248059 915919287 181827850 313442781 87546838 420574511 615323884 867473566 539181261 596307689 457694196 836647828 229676887 489632311 629449707 484719115 926693918 903826393 291501380 235709593 640800657 70382745 267300200 998854353 538367874 531907955 737056640 924935843 673300637 341821358 466564353 872910271 789331516 296731321 82085699 920258482 149279943 312659451 516357813 834866542 405524782 573319321 827173596 892697405 698462376 589145431 940596493 507435403 431876752 930612531 942915852 578791456 498546482 653905608 697286568 892454874 573900554 35603709 540167265 681780992 622266468 579387850 227133057 873332778 592034695 767104033 341279682 259058783 63251287 254501389 579028475 988558786 897227834 915337099 612597855 560091049 986267812 178460331 916382583 495379775 576156116 255421777 919827249 497437265 357417815 694182606 681669781 696110291 627858045 589322304 745402982 4131383 633698098 239556150 821864243 326537383 422892199 893688865 210841657 414444979 682442613 480388654 217219549 808007421 817479154 447773687 200319529 809948308 69643341 180070997 944490575 350700759 760306789 827427679 834575286 735028859 543203238 533903044 565935942 613195995 369933440 598622022 243806363 978800883 559125121 909381815 304177983 125204213 28370041 28894004 105563965 533588297 130305076 18445971 282029904 765744574 636934522 115365536 732574078 770596540 106233212 463690373 121692778 382586523 134772335 756476252 716300141 711249722 765345588 673774171 693817531 762243333 878565022 359197357 637461082 967380846 565763677 619929289 359215668 206226179 465339780 834072874 822018826 84926642 37708109 244095012 573084614 961452265 290432872 801891613 45317169 591115747 148331002 364774471 849466441 817234736 194778421 799089195 267063967 249416519 35691750 489876790 447078998 53306596 548251046 313370174 509385653 685597835 287415572 402051161 887095298 1824256 744713058 740949632 475265036 787346315 682833235 860492418 571790478 557425272 451016214 882268034 933867296 475881313 967544644 186191004 543543239 924259786 889696407 786340850 64768326 482971071 13798823 288208704 722658038 836325010 221977806 339675251 330098270 265737014 356611868 721286817 919666362 629283133 710771706 645463935 689283299 611689754 983256053 558252532 467586157 778121133 82005400 474135205 942737339 720889331 744940518 153992 58537177 437123146 932502998 405751062 958520890 659141709 782842645 915634763 924318181 365996963 650228359 769259241 334681984 917374560 423403894 357708583 348292957 67233890 329541458 819183497 200786463 737588428 540431895 267482396 77995689 50630730 612385341 758830279 753543556 87136295 589962825 892856689 773493459 861988970 106289648 211038392 511674977 234392349 879783694 697631196 705230724 48090562 409704317 447677250 348590068 846448876 928018018 370754457 453109757 264845901 988226530 384760189 587651224 181334373 188748851 403426952 256212312 148849015 634194366 329851544 103292018 308887234 55977775 68099614 337087594 729098051 662572387 146772076 511464347 33045198 809484570 19788450 906396047 128425769 233996208 851460711 989419890 890692153 714742620 93541966 807792192 596672132 539762656 260225888 361806161 360676375 321945192 514747655 583341025 220981813 59193810 916197808 54237215 560352766 227758240 765330576 200917212 300933006 237201378 453777313 134569262 815743497 835551110 860149485 267031999 18181948 473273770 142138542 210570113 148352268 541485316 717262687 968334769 937637419 15849953 747128622 468622681 210087372 87907929 600588748 678463805 28723729 100217200 83700817 439093221 168951778 766672618 840437973 906559163 908539103 436284544 69903528 577190763 306127651 379384623 703019287 251576924 989412347 832921315 964956890 288436269 320291003 194515472 604613854 479635218 422550223 398291695 172161043 467354865 842793077 785245133 814601926 862186127 472654078 263791194 401164677 770261562 58327440 422753184 858695478 708915735 398316418 773360046 313166388 796785939 784857694 760882105 883046273 672102418 408481118 934083627 965173646 216987997 543133714 130467856 708236767 559780593 856777828 951933862 944754319 746152291 685200567 75997536 839678772 881337067 815878664 505796335 719932152 456868606 667666782 780481406 189136982 382450717 373363073 415100505 309091292 950313337 636597619 321081807 880895598 942473399 809435553 931863704 466556817 729897470 10505611 50705668 600937637 421606552 728125689 703918963 699189227 34641781 994362690 998487471 243809399 498211049 323580893 901602008 667278574 970440060 343089269 865350034 147372363 685095408 600220013 771310638 311404102 281979119 709605586 420754083 811445276 681144206 748518982 677587233 451698624 10769360 571719090 503707321 415141227 166737925 243284037 41057513 601351511 928688138 876493717 902445197 376064570 376117732 993616155 638705879 643577597 809021132 759727540 967856972 256360036 765675488 213141800 813577861 851067085 501603094 812773435 921861373 79141433 691379395 713878585 809425708 456468710 697768876 238012979 695748925 401423042 825222142 733978729 393182520 709835767 72622909 574101085 148798682 454850916 240578834 273990975 206778214 976522529 492004102 79342972 708938126 305353434 987888401 244495944 157291561 76474034 852919655 576181228 210447433 857601313 836337459 445143045 511725890 710457903 188830030 818767465 299288026 859637449 622115394 808286018 506861081 690707586 486392236 125019656 985273578 750868407 630541943 89284861 113105598 669047793 703909982 786339534 765667555 860610919 629563205 152789037 739350011 634512711 557561094 551925638 340294830 879991501 548276245 841028889 593907597 864116123 791194316 60714201 432131501 677741469 665002236 945277728 524276744 287893902 485561492 70471463 790389313 354132468 982910557 142559679 929555138 206614760 624870134 593595070 586899718 214491779 211025887 373527055 186739808 517754129 318342496 112068882 845513224 314267686 301803621 620062517 57570433 870021136 400901399 713221367 342453953 306566421 451589085 316234846 721142967 235707113 208436955 268373753 380338076 957950064 154536252 991085589 601141283 874458544 28947415 221477 28451056 221695855 121245066 755226877 601070752 858846909 778416569 290951549 5702418 999879430 219576763 774610711 261724630 915300946 312916860 398911673 76383231 577456258 4505159 644805140 738021597 399301895 774472026 169162035 1538121 113435730 888333577 371196105 948676793 420563042 841877501 446611898 940304092 657138967 360324640 641705595 46014748 560277865 70236023 273533950 645419077 286983554 438789456 438809371 885799615 565369117 118411962 595877819 638561993 410111120 925197240 903893084 773492919 742522033 251210158 221254553 889785863 463435383 156558742 996029347 252695648 556229944 563507933 512135326 842124723 153601936 164572498 365927335 594646519 450364424 592995960 789829136 527425990 890938742 817340659 83111152 802824347 513848891 104838469 64940956 229101355 737502742 327521289 377637324 282016654 27702934 138957736 883268979 422523897 267223241 123658184 932786739 126144846 529667583 722312023 571585784 587335393 881168549 423390339 771257025 738000910 435726379 811751702 868545436 807603336 755735987 514388459 292314550 162240038 407044168 162157900 278368604 633347979 403384230 772243096 210714314 735280197 839025358 866905753 367399803 990753546 233545838 463816104 474071351 700343527 770992425 823537529 796133316 237544440 818825017 848853179 504656810 275342438 299287401 153613 384241977 74966516 928579299 959865980 482967761 580476034 810065734 388158876 879914356 92461241 929597614 854595924 469235133 310598226 488574981 786260613 85472358 384224675 533139459 418459158 3656392 526680613 602290110 650931254 500918977 378546501 695987811 37902848 771499065 376338072 250340364 985615897 877152105 535456181 395361242 555106064 770233206 523939901 714468498 773204288 613065610 374956266 761239328 15559386 249218356 143839509 334618980 532822424 698109239 371283603 204175247 282074057 976466555 69102507 933581109 305542700 630632239 425952319 656212192 747074613 714311189 683870459 109873044 362258373 47687718 740845534 459281229 780419040 448324386 699225044 229979659 363105872 923270012 582843364 208002788 474836957 690623532 279040876 947921818 93160662 550990771 698550682 407084079 130943302 646052918 974695079 761524164 258504226 340177302 948965987 254591801 988182105 937323132 458900592 836892400 216774133 629930786 824166994 54647372 285933326 647901931 678935580 851227338 400743208 225719345 630775745 256727036 15648187 353636801 27792396 59590237 847044952 365719274 629712268 351517925 805640478 109837577 969612949 74069541 479869280 340026084 284795004 519108268 828375910 5829212 463540987 493973525 546386350 891702635 64747129 993084873 586973368 124027670 223633819 131049404 927370679 774917017 584242305 330682091 580491553 679336760 840318932 384666808 447191153 681395038 707436457 40510169 215835335 386753327 510991585 866799363 982999740 19158993 351411333 656532483 817855428 309779467 17619582 584984193 713781855 254794420 63984788 623112130 552336207 132208412 124446693 498784386 515116058 461463007 202812601 814496012 49428717 721456757 61980671 558233997 809278929 934848015 866102509 931207264 29792527 429888960 363629405 560480640 471366782 573629263 938377504 830939435 302477355 274372114 624141958 306509002 100821355 925353046 975853889 319515165 402200406 553965319 621441313 708178577 81202063 244341150 949611598 242585549 177633527 23740818 958430168 573311622 854538840 733122514 802762564 949076987 556468274 644193106 458971163 242750019 968309860 225735479 206259189 76398621 41773470 917744469 218277439 268989252 914471473 514158027 522454155 631991825 413545175 704080439 436422365 21228833 207577617 497403157 347378505 663843310 496900846 209168347 374853166 227177151 835722955 650183914 816505103 143278355 486026401 634671022 881100631 219775947 862804310 411342217 121350588 749186378 531805170 57316716 416079342 779719842 556956187 793560204 478266712 324004832 334737558 848328596 859996713 198321702 602919196 25740624 216973659 898119319 472172626 6195510 619148398 591946999 483973750 920291960 68403639 739329089 442521717 271929149 832589469 652070708 700582452 401699866 618473886 281049219 546477665 641940066 269829737 19697415 334629720 962753017 421519100 559211761 695934844 706786177 705008715 793636607 884748764 126713348 631330342 407295783 916677125 727862149 997055856 446104807 339567416 245013092 127309066 618145868 195818756 414841836 402310320 524865398 35009911 957443915 704854873 625967106 598425636 200193707 234773483 922510423 599047456 410263317 904522366 343725270 565385281 398560674 349168859 35910551 964886535 83556413 318497819 486846963 342564149 577755181 680661785 638922075 677382582 673081694 813190534 828174867 495053386 509768909 593674123 375973085 778296437 83160689 92126695 834532208 97756231 198682680 661448019 73239202 728284421 735736559 392793044 286782047 595778207 65281454 602300309 961461539 831585466 827204318 814706984 669514709 291205692 4927642 872704521 868685762 255025824 558972026 235617884 73570238 965310673 356962574 207946748 51770777 960822518 270471275 96933645 19594863 420330166 709203206 472965334 426722614 383420763 385490602 152873744 401461556 719622636 238197968 16182613 939395094 543255210 161326128 458081120 188335402 845200788 675088654 11879337 637704244 231616938 32267201 662851007 568385683 304959236 165553282 532687859 244464559 360828819 833908269 884677446 521656624 826833729 588992149 181971396 419343338 976632989 866552753 586982267 347563858 720463001 241158394 109944738 537274071 772759197 766088758 578571800 762629654 216996775 728579181 401010000 378676073 155981906 388268778 634667343 185298037 416120799 154696428 417504733 502199498 413033942 805284296 810180882 28932144 213512436 448003499 601982513 656858244 454015815 503942599 761911534 827604918 609057076 509182383 49241165 28706236 363266469 208386843 757591305 316672100 284971457 563421308 113924463 532463418 655308748 923999633 57795748 623735338 167632798 551730613 916402429 793956315 920360269 60567430 68520203 609061657 305967571 788911242 104064772 565403542 46737915 825636933 791403893 928788547 136332632 595958933 388298377 94403626 636384891 981433764 395434809 121852143 763129777 470396687 837474457 305950472 418349026 852103307 156385401 462275889 145275478 120440591 482185335 517566485 843494558 431719839 423555684 84414602 657015219 685150117 558560604 864735115 40806844 322635983 74964000 513785936 552637618 179427035 724283657 932251958 549702683 558223494 193145912 678689391 444949178 996959282 516323583 240235768 766245783 180225086 485007752 76734885 194757881 899990957 616431474 943100323 828269196 334219763 780727430 452247855 656524985 100977673 289275787 600700563 209846011 520294375 115393109 511651205 723253841 364856022 14050721 190869050 238321252 842037811 556713369 624641676 217138590 620725836 924514360 180905737 362337289 221273270 57954394 822453193 27016768 609684510 720595321 690950975 382479947 117830451 509245620 414715360 923254579 957451268 840585849 104208264 307727159 836264003 961472707 941565302 798510163 960541953 492361174 890712155 544737347 83863769 691009976 875477023 788449719 167604334 504006029 368176675 936493373 717698400 452168425 970838919 168979765 128525669 379421653 384188878 602158926 19364930 160391905 344233333 981183383 160758890 385605000 423857838 695929161 862639673 667487309 477645041 101429976 150961375 86949574 321899735 410567866 320844863 636056626 797753084 436953720 912496095 865840744 472022568 993263952 221592087 809680482 929025085 207358290 438914227 292762534 750146210 592836677 480922012 473143495 648118124 108605570 852427063 151107613 271677373 858618219 842451589 646016768 916259724 998510569 215336903 164861277 537424658 723924767 435001682 397883615 224827349 165718827 366652398 495109999 770953377 560770196 566859001 512732833 717825709 517944626 397527041 454033377 621317995 980763750 677403549 979924064 307940697 435958914 693788577 605312330 53645236 781609772 31959063 72247932 758421503 666391592 762990766 247916026 218280403 80015756 845791059 742284045 701087779 103524848 371295814 542985476 720551411 229386763 660430366 940669459 276581600 578386567 926254058 435947229 767695397 576658725 335315482 12119546 502682650 992414072 197555710 602684367 861160039 58280 297978646 394097880 417008679 662398479 940812412 96131140 851617287 405679229 102397805 873884266 801199415 143574964 665726357 123148150 988776718 157844116 741123479 491625480 742719191 940830779 886493252 562707303 438747071 908303332 369351890 139302434 335199411 817306085 571766648 629089158 470553187 371433217 152073715 913909855 256106730 525953415 889268142 909142305 415829298 747037711 966108840 559354947 139791131 416655446 677376335 95194026 684422693 969928217 707330321 495293809 393083404 1990430 99252228 75834926 747847638 707425425 8594042 845693985 781623750 1433397 169828065 990228316 231268999 539495847 700756624 708430744 877238896 761031928 974099526 104455127 119292528 512153047 465153905 521236586 726967180 812314974 916068728 362242006 24262807 637517585 944921243 380161779 955905803 547854999 757765418 823207260 138987581 891616221 692979845 707645201 877749802 184905369 926723862 916555597 804138365 710303672 850349718 338965320 121523683 120224895 766852170 259166760 849204395 627772720 48469996 557772053 891361545 424149990 6847361 482303582 960193163 500319230 764131719 492829058 378337388 708333833 982712087 522693604 695038482 260115071 846757944 688149813 662307270 941551315 424704651 221130460 802814760 642711066 658029805 850939173 393579371 774180174 324621600 54373973 748197627 564613036 767844667 674477801 650149721 371921510 126559164 595366918 780392608 844169120 728729698 891585184 245597726 276107121 922822019 842929957 736725397 444886273 98395452 630823410 421859158 384721733 208522527 277358527 449079641 997518544 108092849 431131270 348794730 996838811 692306068 18013809 575417815 452986358 82578351 45120119 92083934 571429077 414478991 99045048 628776159 151176706 962722789 170719533 174128722 261740463 401605241 627181605 579114193 693010557 156257138 156678941 12243903 798355754 6308607 704736956 421512002 628323130 672533404 159274051 139389412 45497820 202156738 142197882 971977909 838797808 200412962 256124895 543681656 147295376 543299781 731049512 675089200 508555305 859428560 361483973 697128200 387016736 880493517 230024826 919858966 852153390 149596699 810998222 173819846 968923259 119859832 611401111 675155338 134805340 313149130 928801496 561002175 958502745 496454536 769325793 17898598 246571332 363802460 217078963 309791228 112820373 305600421 36467666 368365209 110313995 927854324 233303058 716122848 163635551 83805039 462690129 915737364 289294490 394123072 225506297 482817627 187367855 124027355 259811869 426258305 859686621 292110700 498089821 697842598 664151922 383298470 320399753 139065510 192332498 538796054 392971664 816496513 519337210 784905851 82958260 796216515 347029101 999614276 105959912 685589854 310606503 532017793 32135695 363789117 193984364 893785484 131201237 495242708 771274637 910601945 927656975 29817080 497927128 963983367 916111987 454026454 941710256 914417799 272142358 285549134 663546316 141648818 389087123 745994864 541313720 338129601 781042323 596126656 815492730 259990626 505553771 192303286 16698472 108227680 327362792 203936139 911847412 230755401 483463685 89652307 875808662 815041495 559420788 352601816 61935422 85768335 637386049 912856296 613432906 322765491 910580612 54373893 232192385 618929086 920060420 239728437 80841977 303738852 826551586 608329668 164247080 36809532 90720373 10686269 30943065 832119752 827111255 885519044 769265246 804749416 243104328 643061199 873767556 155932520 126455910 575680953 292039279 530053882 891395330 801284483 895883911 41574301 687668416 304515367 858882416 252024728 963627513 888984229 172650329 327278256 266418951 468402103 758109271 66977305 253859763 609466143 762759094 701453232 167700985 848115042 483051871 986003153 986731375 92260438 878364889 149972041 456232197 967372383 462445026 850039097 777804826 251065470 219148146 252464621 131863983 468733701 727353031 243667861 127880413 656665820 421950952 339256489 675944676 400457338 221576803 30767328 604740910 484478179 332658675 860032627 192258672 723365857 978330121 165199607 133602966 686467252 7655582 121159049 963974966 257219143 548595235 25354984 810583162 309263485 46300748 211722253 221499570 869969654 639958272 542345830 420213236 492119253 944300705 476628404 497758467 564045635 159348109 350128328 656639134 685581023 418298968 701614974 46299305 698009445 264978784 832797853 940188677 23901759 985784810 500609836 55292717 115350983 925254781 95483581 660143546 945431910 783160856 967939558 890867577 953112849 254198468 476361980 457456993 208111860 514249531 160481358 441862060 444781623 56392729 682769818 307690589 962150171 741718066 285164799 250395871 501091403 614221023 86500378 696504227 929228107 806949086 96078995 35238072 616850204 274480521 551989320 567726063 275307804 86494276 788573054 528819827 122435705 537149992 496399653 292267047 211278345 489072891 6884109 482506596 815110672 513592316 479957446 368395391 630390969 701008092 709710395 741203270 407881510 667679249 749747695 173575909 59166692 786346296 106948445 680904064 450123714 597541663 102369635 178838090 208603164 660281998 891568059 944602174 590371010 338868544 447324409 540139817 345289669 62168600 964742160 655076890 562943292 104693626 883112882 981196065 981709284 195629899 723649778 708902161 617604154 282667272 140521774 29232538 613302970 600636348 351268457 795771425 788675222 437473990 47833868 300431387 727129371 685663920 589441070 870013341 385554312 808455027 928830567 593639647 649438261 256341219 965932862 17906591 954017772 492449491 997195246 721240626 321961279 38853357 107679424 2664098 723688298 999480592 725392714 229666730 253629112 715192352 863171580 82521710 694522155 622065602 917372608 423693488 770226435 760898717 19534841 523133031 61473792 200687873 153952694 308745739 196466088 802623534 549344626 963938778 742025827 467260609 527477763 744103957 561076216 764954961 491320770 710994561 323776095 817981683 351083043 468786276 463365559 138952511 263826358 721183948 740075313 718482219 789646665 170509035 913723607 369783571 601905751 687394298 521127468 87971324 686413506 978588059 458716790 578985316 362876785 402190763 984795745 427646355 26479922 996659260 251372022 496161265 283772239 167103688 951660077 800390593 167836757 333405113 797061075 911622632 723581654 752316010 752449985 362135354 847963159 25876218 857818099 565914591 547088660 616116260 832631816 300553362 12876993 603606912 252047362 706549088 690671763 82423937 514718576 913017249 386634905 52936468 211041603 942874687 448326414 537556685 705375368 139041605 780214457 773886403 51142445 681529420 42122230 345388631 938242653 205656132 531474760 317638421 559219483 445803441 81940400 742884537 742509350 169501151 361638054 553652782 520764498 794995768 546197785 576594023 292341145 514258339 404220942 293723094 391952836 518711272 564929480 29113077 761138734 579335859 256554676 86295805 196079708 500892859 663615649 658590309 365146063 652468190 280024905 475409121 762870529 885791919 656276259 331237508 735750975 128993147 729323571 338260319 242088971 964366443 857130915 493813754 944462723 946690340 376356259 210296360 35131593 289611025 263864258 449198573 211876046 940595987 845383044 12479852 739719686 128046986 984058240 532521633 870164494 507326305 568782746 630507830 179521900 330775924 479092575 66144638 815404733 767127730 120006600 123319351 424092478 704994904 231792776 849947721 706487279 47543928 100655897 817454798 811739510 630926988 134735128 562766377 948225962 325036587 25256913 391665159 648879985 898790577 861886924 112278914 183479126 593597418 410490194 76882229 529658272 379643949 685610822 921450491 922834662 759858791 479541423 743530923 696760207 585095366 580174197 776946508 220787410 642868177 599222168 420272887 377962630 445807743 818248326 254813786 645134857 793100957 752949178 605767832 673108377 14303518 575135462 972933111 76436276 53302246 776688769 577029580 559019013 732573884 937543079 598646083 22922775 961460954 896209108 637273809 211769502 421323190 361595251 5725039 713296825 232164134 348555394 13154262 482400016 267503877 296469342 991180072 187951878 699959171 320239040 899602664 828799299 981478997 229976894 7119595 297163069 186667374 831927792 500064719 464628751 342716059 685043849 427458246 559313611 805618707 212809258 123108160 577014895 417019145 529932149 898494637 862077841 884509793 675750323 957699690 196972009 172793192 229952958 304532876 24408305 300327208 239514792 813544651 140843501 597598235 166816903 627488103 453625992 461031228 199758817 375819502 213425577 265338846 809324822 503301163 323220750 969875091 901914395 866561671 24888579 228225811 436750735 259342926 432267452 443951515 437336472 325759751 798392622 311276560 969321386 825468120 676389998 366052052 993698405 37103554 360822522 125289467 393973936 455791547 57491435 703329417 446556218 866166188 758326811 721906117 995415896 553082961 291780638 921158083 437122160 817095495 809834488 837411547 222295750 800977133 794731295 2498489 481865168 323235714 416438668 26988945 634703629 79747601 705385614 934628811 215352662 567513956 166408877 493980273 49507864 418473651 798431365 956423921 998834796 649264070 15987834 903313284 931560123 867039895 953747540 864587540 105226822 958207792 612019363 480865134 496792085 549098198 722516305 61716425 655164149 803538851 811217144 27779391 360393268 245829266 516281887 200759705 650632511 727612122 457061413 112850167 590551297 772998229 543143544 360449843 942276456 889791539 487618212 78521870 645397258 814690507 585571949 270314847 18186995 311386979 211059180 629037795 521338231 756149271 415678418 992549652 851515065 958042683 754140133 75351971 797601156 867647221 16969621 140930741 598893940 261793327 811428610 620638956 425969407 160304247 354670536 316790880 555401202 209315358 277250198 284135646 426878629 788527702 147350228 643395439 464718283 933607053 10774955 344674773 516867131 652739846 114149342 9553529 320925821 336454897 255558453 417431442 854113282 1339077 237450586 96384746 341927961 904924040 532144218 857289073 368190907 814009674 290471657 325098151 550413233 743915042 271237144 391044937 741616696 708785733 603647869 287687503 440083920 394069242 812163515 532961588 195031309 312861689 211520392 201782874 663719896 8209008 833318437 327991676 436001749 889600741 780212689 157740639 327411984 319915576 613119753 859287493 899537055 757006623 692691320 304242103 283332194 780601354 456412041 625792741 542153224 879565515 985410808 983882959 528548244 271127800 232951105 311966606 367705655 793323620 422556791 804068632 255048469 487098561 297645922 311625626 546479218 487117201 613655975 60085372 373829188 778561629 391596591 728551627 577008937 631525854 211464014 524825845 903771683 629541300 77740007 201420022 660708621 14008349 545843126 93943512 842297726 94012310 60280425 113423137 336705049 2986989 212348822 430324687 372808639 145694726 551026406 708730958 189924440 727630092 566684064 721835510 608528301 358635715 607080284 323400217 764482819 742764966 333828516 303632157 182139978 691638414 262802417 97919051 157966396 229398537 270471249 221116294 129107395 981440332 708628240 936627052 790900531 866486174 184261602 665537052 371075734 625051338 672054365 793293634 304242529 414012998 818801373 97383904 171964649 482652481 70458568 254989361 497886463 34198130 962956928 393721117 991089671 43025692 438488191 879501448 110826577 325178293 37449678 25235684 306491307 788605592 629140874 263788005 919093067 273922211 975238764 936577064 820210974 644400976 565159990 481484285 885440146 631249225 242604468 184071383 564369761 240815277 888417118 429107843 289221892 404949993 304837798 519104568 876387381 877880803 465332727 843926336 861998931 381763566 75273491 406974472 392928133 29114503 672856028 757809261 45069411 214414920 306566370 430039030 328042622 231612720 253349545 988823795 4174950 92865299 820844716 354631423 363907459 860525966 439561294 298506100 993736470 941277437 993310067 26479691 982618137 249857693 94451470 162793825 211188090 878252436 331144216 365289435 990049718 595818968 20756847 301381300 378297308 263060021 182530895 236471035 822695050 150943405 788748578 477170208 963241841 202931665 12003984 627023706 544340564 544162726 84068770 431253064 496475506 220259493 807030637 61559665 63334745 312078107 895036568 249988717 591084411 347027713 357431012 556234289 175570853 648112349 162833848 179314427 885783527 362853592 271814215 256822293 813107982 135064086 867915678 928912968 937591448 688016056 161091588 29003446 608829918 293522879 998536212 343035813 992530239 705854043 492498462 529082717 292863798 637615753 111450906 319854182 476074382 16335308 485739789 869046486 948430808 619415078 988940207 276627189 684550786 713784109 522124516 482413388 622389285 638163179 23524012 476916960 358915402 844452901 601061656 127978138 889314987 52235521 633060081 402701409 105896280 481036470 335925354 811097518 756830180 391753393 193316971 427682586 597977135 991959142 535347175 132194798 952107339 146149396 102024230 771441753 910673776 396668808 502354705 543608014 885489374 734964649 957850713 110240600 492632523 973249215 387574230 541073710 350530455 159038119 632356308 876678067 1779302 492341081 235401901 28023980 332669098 172015083 437975241 358694317 324826416 406305398 371303327 868153616 890620628 152984536 440098925 624557613 505138639 253036972 158896653 166707068 773703928 525354257 206154504 314719661 798473682 51213566 736808019 460067485 895373169 468190652 508032239 13500616 958755385 336953924 347804045 399440266 210906495 644770445 625441916 350139937 791329786 552249455 959590079 882489003 767176142 534684158 794490552 926199399 728835095 166884950 171110971 608542843 414961058 857348543 586603966 129593209 875259917 856801196 631634220 72047651 961654875 750624076 587019628 125249568 521940536 256171707 651598531 846643818 926524349 536409379 337658747 441993157 912141102 623026354 401761603 317957542 29447944 753874594 210960341 23509446 422030824 411611894 306357913 377349928 893332330 969979124 309054386 367114380 127756051 886686793 171017160 385504242 999951088 817584550 453062422 354037851 963610666 694059052 596798583 890922640 242235962 133554793 67073040 455301515 730838770 676914978 141291632 497234277 828453406 764643547 37305297 297940562 374874838 476602434 785344928 805360001 719355017 309085502 967523785 702695711 614760067 99716104 251362308 867662473 266847228 153736922 954905639 281490226 391318757 612631751 142600660 165280389 149997843 512074627 615216312 53508547 753088093 762254130 930804609 542101483 726408411 975332119 504614970 454009409 318272582 691696042 630307082 135132811 263319106 286683553 751632084 311428286 122731213 571916860 998970414 913412310 736114413 178661672 919207606 536663838 700703921 35296349 504648049 732630674 753740167 161668491 440269665 83594063 789033257 419726488 897836847 300067088 582922443 345840504 612390582 563488832 34780879 133473021 880650684 670388124 405010808 355758637 54778934 603406288 635502449 135202586 691810289 407378173 41242598 694703331 670715584 15553016 327704355 433076347 398715649 327899656 425592636 436405838 811802928 7335903 611641654 78205837 505117357 814439712 387686358 414722309 934140849 88276891 89426359 466181185 610143913 702666962 37383575 864955051 941230946 642592818 495032070 730919093 250419752 390054798 669305696 796559512 708422650 48550620 582422386 795600940 774192543 516194368 336071490 682957158 127391785 205116941 787203138 700975105 35219515 836910227 356593545 431562807 136754002 391313980 988422063 336671186 254538785 62362869 550771980 143483471 702817206 276033207 217472136 842686492 884284877 157302554 995596830 375009677 529424940 209252987 766107182 976692594 217133540 322930080 73874923 78968304 503044097 387365838 381908603 781673114 764251644 805145416 446118506 317281653 938705328 679779949 750914423 317819525 349006617 339802471 702675837 697791892 402455708 608882631 275818779 55625460 880958091 49771495 567411304 139730569 893911218 522467706 680310244 158873357 672557924 306649477 211976263 637457041 80376408 460227249 286124969 720825163 501563562 132027119 123264921 100545114 920082508 593267083 423424036 550594841 252688658 266571555 780443560 232942796 94267219 401337711 358491656 245830418 990574877 318452090 794307099 402622523 723173893 541685594 467327454 502380441 5769764 307266576 205600055 257647747 203314476 657135918 833394461 654086646 643453597 250826200 81596792 397106127 970578031 129037533 287862377 199349895 338871541 949790031 935332750 948911484 59406705 238867056 361533684 816716976 773242637 854569637 742915275 825885235 952494797 394926627 307651899 482094493 642274633 172658563 630817945 642944109 637600384 347992092 625840140 666701157 138817295 901059700 972204965 110677896 621919500 222750725 160965841 482113257 169513537 411990846 67947298 64503864 933372834 990810353 688740958 302931763 396107549 699291082 439627153 356171101 185797593 130023261 472453944 305103575 619038178 462808558 823656998 507699297 515278104 819624345 995445149 829442675 415078274 679391546 670794598 559252747 622230384 719823028 646523787 510905126 490877700 910613488 679571340 70522830 983573922 793214653 401274961 671975469 232453234 365479062 695506261 535491454 601275840 874384697 634245671 505898492 707638105 522307181 217912648 167738999 883568994 705132395 757747180 178340497 206727070 801681133 183757991 693869158 479627964 233592484 892959919 203437998 47200179 150340377 809588530 528828439 524658190 186106367 970456059 769314083 968929062 823605926 472310103 745556426 322361387 292087616 960800587 63479634 822904506 924226754 810722524 709870840 695228598 119354907 423320405 669358450 405032752 216126539 477951419 167847562 254651452 948084176 357216159 436270239 37411507 247187202 738128616 948002516 873140794 356733898 701243681 4076337 521597651 13834759 712495280 504580189 228093582 210007291 425403672 194493077 737637298 385776914 633008659 741335008 507113426 360757546 686274248 547047810 953317270 882966850 7329993 394842787 325387669 439558272 591193568 163145925 298240468 590063579 638527995 885962894 772897874 768919952 542539920 326614761 833109746 336793606 771365051 297470787 710911155 745306247 441610314 186431397 354398865 748554117 767906341 673082473 751849746 995922851 919736175 424232651 106078626 206481542 757503394 646030724 50963977 766976447 573769838 125299924 907479378 479306499 668440428 911324069 453536251 146391573 544303391 281186901 481873047 807412933 310801018 825043123 878487943 437841744 764901289 697249715 272005233 975842114 827491719 503291554 288029583 362743558 980035774 43109366 58769322 312954872 358340883 906030196 804767914 544066024 715529705 43379505 484196894 38628331 753914417 235131314 965320613 846235589 206621327 716000476 526186891 417578247 181501810 995661820 865460762 631687191 298827482 461234304 3721357 679302383 939734746 791917770 662018421 744228659 674348188 167278562 937629208 764642521 411970054 318555751 631378895 711631746 337313666 28592779 75173001 134044391 214717894 802327802 18406926 178805467 482548456 201603639 635749504 510542118 608550303 244895495 964100104 51811722 538854367 106629062 438650593 259034030 344201672 477876782 897924731 820220534 617616159 268153265 59342340 675800285 342792494 97355467 560317216 295044736 915950011 50924801 550236808 118979814 229528263 926574577 91084287 576576599 486107074 879305302 624434868 189083531 450835731 274308368 558373374 544053045 747145755 501755514 992687760 643732252 593236653 962372202 968871238 668328004 58123962 652161873 154038727 8543448 152694348 896469347 57213734 474957176 123560346 894827571 430671805 396313734 92738031 794757218 765126975 104135982 967148889 90444888 538463614 562685853 332607890 875246913 282647097 346044853 749964581 353732345 59139796 624616896 744798139 16343501 122539839 151888441 620492535 775964642 239396514 380202342 607215486 775627297 416177506 844347274 99366120 634348380 362522338 135084761 460378316 404673725 755838152 235856403 898303501 16176556 841016869 751709223 743834520 681581863 876208947 111308001 484161514 480493736 100091904 280928859 474951932 174677156 376465969 327457769 610388448 46956455 352551797 290478556 666119443 118687099 258356268 12887896 262168742 10703641 151656646 85827262 411792309 371287108 274670258 96603214 287323612 982271010 2135295 244691724 684362832 330051921 291887670 409519509 632901705 315198182 290358685 132472180 724116925 416337532 746921678 684855663 99681560 325162773 205066323 698107872 448151718 937335619 79743574 357329116 684858498 379258616 375102295 534744956 191468152 95317803 431062599 236748503 377744021 377847536 326602411 781059995 850892779 843169811 459678568 657608463 935274641 293618076 238972140 5015279 33054428 627212297 988277978 855534737 146389374 544681726 935728934 196117913 35041188 868710542 791461434 196102719 339446685 650915443 163167815 235168978 96510546 433073096 173345421 151859172 53904874 674580315 211269593 439652398 12259753 133363601 176188091 570476022 595249436 515779048 666810822 406625524 465155309 164335210 300703245 834336323 140833929 746204147 947880521 428799365 404715853 202719052 435484565 10252494 315463653 7514956 556539182 837512056 521289770 649271733 421111475 414201174 946802008 844855900 516045940 698463500 406318886 74921835 98721400 839394176 182082001 797899341 398301904 171376485 778994723 464673321 957308285 540442913 112526090 218711647 842757952 210467082 920304013 578743744 464240907 791556825 61796961 719291443 724789647 110534406 626870942 500879786 220074416 58654069 375282167 508266839 281138176 41509820 865219047 75764304 798512426 687027088 219787642 727480423 54771868 339631661 530830594 211946239 399550553 526381102 321902905 828428653 662014913 380411714 839025616 626720312 121712102 112457823 659341691 377410171 946125181 250344344 572533082 256736143 632235122 556224777 5433998 696037754 436051731 891138459 998487415 691811243 392241807 287572845 954995756 46537821 78555924 412151949 835458134 352769736 694555525 292388921 395855325 38238846 209118481 575415793 275752689 929890427 736600094 638929955 109486254 948729110 641150 428999720 201454783 477309455 19765217 50031387 987943412 753276740 629451816 485606661 793580317 158075611 993603170 176137907 172139115 544345352 292401684 285827882 475604800 897370148 827210713 155062178 372505920 256952873 387176160 305999375 58132039 945373481 941541190 458775719 292525663 734013110 652789599 132798252 782146433 387259905 70059603 509279642 503632387 322164632 109950271 837093407 992274502 651651427 965354421 741831686 580920209 47391970 282331169 615465246 76781503 485179746 792797172 772346733 442647825 439050922 357477052 50031966 920217122 618931827 627094150 657157361 281536194 489463490 473078008 852761740 981009378 148723748 385425006 37534666 641260803 342416988 486764685 794600887 850471081 926068358 528992173 71025118 209948965 4631061 890524448 833506060 32005676 174765397 488074874 851233396 491676154 388299801 663686188 198655815 90974831 937277133 505196498 836203328 61310477 362589623 541313879 817063280 918991141 242642769 702629218 375821894 942530497 648108202 813708003 280421460 179860098 54199267 184451755 562946061 906888570 681708568 108978957 280414707 117736200 314817909 178877484 507403695 118200159 300292969 958071167 958877296 899817794 954756849 36234836 790320038 249225127 314479866 441992992 87701591 855658238 860823538 669977873 277010401 810585189 331309731 487696877 403990856 807217329 110559317 127080015 889053327 713327764 154887574 801521163 567878667 860033728 838504696 643303348 828491664 67622070 465716977 183052212 693359778 286464985 672390421 365852383 3999271 703948619 507546780 815437757 977351906 39902472 236781039 27341061 565505116 756783768 242266451 312194669 142015249 801726087 56993910 261258420 685357522 507988869 714452864 210247292 604874959 91570693 406288288 611893183 675277988 737854652 673873223 490070432 502809209 719500315 48791813 688326495 830568631 989572561 369643162 827025052 928495889 203475738 273790929 701492246 180688203 913604917 522727918 431261165 858233497 348116743 414139318 275464899 968070831 314705909 978381014 582913307 387740373 550080144 600146215 660178316 431109196 859974064 852731363 533140359 771091813 503501374 960171580 766576111 821966856 345646041 176191391 8363100 470874233 67231285 972580645 40085161 134743006 298465713 43328804 935559800 15552133 574632674 891190776 86438746 601279530 191939922 879803669 247717523 393623605 39667075 779577240 119946752 181167752 911530789 346953660 905144956 445142119 840262940 445876682 362146401 826463460 370727132 367176619 955542379 408102247 60345116 784793173 541831762 989104189 65668689 374247295 677830220 34392153 803191825 287443942 660925033 30663104 938954465 674942958 119553216 824296169 81675118 385329419 31832994 155244875 255817373 600845245 111881815 498797064 7254296 985143689 973102340 519723511 279281974 927214692 509144187 949532 320822154 780095824 715378543 607097234 717003676 444540452 572096805 197710529 61066877 677866443 979059594 397031360 297591786 345946935 482293709 675175895 605199083 701567933 35790273 695833656 248626175 813792196 796595523 412537502 525059877 404665594 473013963 424437382 215214809 223840794 203078840 150043667 313398921 535709714 923558235 676880138 840365999 621030518 548822196 545443961 403027325 448593296 333004954 8639823 950865724 236240106 898605103 734961577 596887468 804171232 611529643 272442365 705779277 711000755 273107408 12518888 802964372 939823456 352433102 544142546 774346584 520075474 191763534 909427498 297005546 361446309 732195274 22572478 787602040 188243809 145089956 978907001 931717277 66768344 891020457 895878568 271787609 784396854 597909284 707967093 276591151 565646523 743430733 573081249 588067442 410689146 650494484 443249034 82277821 199693191 857674853 976836290 378581215 185451099 876285091 740636623 320228771 446901054 155147475 1301632 931949394 777656269 486293753 21381291 197856111 812740995 851267702 743668073 628084099 232037083 545442468 893075950 14443074 5556436 714865865 137339551 291800139 731069061 658682155 147604652 152731297 752668137 220294038 759509191 10425511 356563112 525760096 811815165 926885916 416577551 931071344 529489945 395153929 728789356 291920603 209471442 896584747 453492319 938798990 449463942 718735654 111926610 721275763 121441992 649562646 970886560 174082303 582166333 273495739 980309009 755888630 274726087 399021057 771568995 644864696 54010871 967788419 561949964 116020954 118769505 632243348 549309783 908772686 221912165 400955796 341868454 4651907 610501795 72516188 61129723 245963618 600814512 826508893 63771653 537038368 460097856 129472287 344619087 774554592 34485906 237374480 274773003 664469585 912403307 202844710 493474882 596957304 139644924 958190913 348346322 701640006 58094845 140758999 245215903 593762202 453024065 737789438 150116550 212321984 566729452 4794267 713388261 616860823 831013905 123128891 256782966 408918159 584609263 13053480 362397462 926778943 677979957 527520062 749224558 976407757 178519954 397515462 869647082 956907806 801305308 392331247 574821333 799487227 778427113 590047217 892808509 655733118 552133594 146830804 515781230 536172692 965545087 177894214 271001074 533679918 494868418 283280793 735088016 747253433 341085724 219023101 644542278 357662783 318889917 871282649 888689105 972388394 12560666 734542752 948053945 524101229 406065227 741443713 186312333 675758283 678559187 375008971 136903850 97368201 224759897 286381095 326973074 213874893 831237119 365146289 954506125 74828103 289038676 225465208 424117186 664277623 648929398 708281064 278371959 125284386 531997201 672458024 858772828 566840964 74432983 401453476 346787245 687503176 572357858 505563912 766463696 695173512 819167793 492620180 265809909 197792006 247902242 713817952 966404839 715952348 184775015 203946129 831859458 141534033 117936355 254260035 507834222 652257280 694754838 214478902 966384846 695389929 308366179 903924097 43706615 287596874 926221918 873664803 196944106 969127026 815859553 264213656 715550140 603050732 966995860 224468746 204608053 368259683 14278226 527653459 752518767 303984897 719933277 698309499 480419726 630939195 638681723 399026452 689869811 283444678 413138352 42330909 392433073 157011723 406814167 348686700 332989418 110517754 534190653 848089224 205130070 238141736 846848041 994486542 544927485 163895872 383233482 91598111 537750046 346071060 144170692 638755193 636897501 340249183 42738084 128989347 878701080 311352860 902224802 801816615 867049674 345739532 887576352 712190699 568380370 463807802 326992871 976453758 643284578 375237822 731353823 615090974 141896147 71696737 444496391 327824509 613388170 506241145 480981588 36841302 800013850 864138928 417753788 816614364 829530327 949239071 994596479 490066063 178644401 522251904 670159845 501477901 9372072 976001391 893488872 329386369 213635213 808262630 802562695 23594189 936185028 127933506 338213118 618539918 310475962 551411445 158829404 530965137 828307594 64326766 50750709 175884861 837031353 733708396 650956229 967925346 618246980 118188837 99709738 559680792 759645567 383217380 381285111 423578498 970049282 858394202 940185082 738162773 59706904 91895453 915588781 446180795 48977393 487887216 235671656 363410611 1490899 576411460 881440873 827639513 866937978 319926202 467867370 359518871 5568651 467288801 125757239 437456653 771920064 683135871 54695237 894063924 657953257 501227058 68925096 668830997 358144126 983275330 693886199 249872841 363292523 717109658 300752430 823035570 643085046 70859309 219002724 832749470 368221180 453276758 169840564 399235707 832496715 970982551 980011868 229940147 788351069 850067976 726766893 594591689 528866092 492980088 498894579 925851356 6827718 215576212 45279600 611170003 310361252 146113064 615592245 538411703 263988444 995815602 743352474 302890825 872946733 896684553 277341772 504669935 280447934 475435714 630836322 946446255 236783403 163860577 498000709 258046811 824142856 164979343 991590806 40252330 714051110 373448374 171530619 878191293 904596373 289450124 118563709 789567186 997103399 661537103 566937400 563936246 911272895 99524011 205419063 763149077 347621747 839482388 466228969 307573684 296203230 248514431 835105304 777569584 550448481 692412975 321480200 633010601 569932639 928039025 994507213 597783652 974567506 254856955 572958654 398481461 282998776 167982040 168833127 748470141 223032150 237148656 901642310 890910010 607741096 592237848 631958372 668987147 597702908 501741333 991773318 798798764 983389260 364671136 862606007 819153922 846309431 136807262 205410467 501108798 64853591 893793071 826998170 377441767 160495982 734884107 475807253 218883248 356095981 950833988 180289706 783495717 651449493 428526863 828972534 775347686 69197383 39814460 900349322 416077636 842397383 458233692 300775036 699276672 426109544 890530469 589408778 311585389 417668271 821369000 503816889 740208490 318445179 244781660 569802992 474975674 194990231 649598933 697540281 664148426 510983537 69373714 452463918 416591600 861669856 584003659 37699995 753284607 652832843 446510160 795841571 176881988 640251124 198515163 497833264 379814336 728704924 267967887 304858924 535604283 794615212 74979151 866545502 77775895 720965223 455055504 298124515 273538586 192106794 4932086 424612415 153868699 613302299 145712374 327697868 871998109 120247904 901632724 947654917 871006569 492821871 606638954 85742493 120636730 519290865 313925868 144452348 369746110 90933886 632643252 952487086 700306091 990155312 330822286 519565750 794981819 864496349 627733168 894522009 944794777 719251472 647944305 986797851 772809829 379906031 302586926 972082474 590410491 282454887 768330165 683710382 775373391 642219123 444734138 502108904 669824168 747179392 371688948 852175253 944104830 779270213 325000597 350631763 753521788 126634015 369177752 518939566 198330175 313308936 215563959 486605865 745484755 841901760 815049620 420980665 756726049 965782088 836712748 392471748 429084656 316561786 555187331 271327212 741645556 567810789 904458591 497936898 422755045 406813930 876364716 404918941 541273699 163552063 38212076 869860214 462826832 333480592 954472075 772152764 110698287 529655769 181366607 343148681 975261689 967174504 70185590 469872048 942750466 961061328 272467222 893328145 236277927 334348433 428070522 52030642 486114952 119874220 33778903 470043524 472882291 370310868 677743144 334077602 577269325 334177241 880883388 119973169 947070695 244033624 857387190 168324006 307975161 741928819 378472607 765030349 142476065 717160252 259530074 605439646 284736696 913297420 627623539 443059626 532019067 901514081 226157724 323678719 703399473 372253301 80679545 618243104 99607027 464484572 965107059 151416362 480857342 790132669 864734747 553099765 414838734 710243074 403684340 131977317 56275908 412895443 292718990 965540707 87594108 856010598 904145125 941396575 696169486 66361940 503343655 582662438 153900769 463883358 863525639 567106856 732510168 87697780 921159980 63633392 867628928 26995306 929411216 597958426 62890478 884027287 110822509 677830081 687068042 694585156 135463737 233794866 234835362 138001262 45863792 952729045 104805512 735728782 446134758 682613233 963791028 595481663 132058285 498171896 701508108 589740614 415195030 715685132 402799555 932740092 398904501 793527038 401154918 5087735 86623866 231263099 121982858 385787353 802573370 887594801 809378161 3221583 954669884 700497822 826350783 782537722 712695292 300198440 550417284 446737255 248347298 844566158 351861290 923133530 574616428 961357007 720522691 476940807 651343767 518169415 546847855 918506933 102174584 146923114 310018550 552412984 218159055 779547758 566368890 722805037 811675262 521067732 821455120 790460767 3163265 714908171 904220988 577289134 914175910 790691499 81552369 115089225 797021880 874431731 339560026 323317389 232931739 748876463 931878582 631804058 337128509 422274683 494590372 306944113 303484228 48075481 521816608 125752713 88046361 440670297 906213556 946505745 924596309 363386835 463303040 164916322 308992324 377329850 696586845 222450747 254856959 347107571 543175319 849440848 83961262 352084609 564838323 280579218 170046642 191567498 668323965 872253859 389158084 929290982 475026389 334514138 690773517 106278744 998537262 577300006 10388396 301635418 295655169 123330560 452026837 166506320 216524561 679970016 513899665 372101486 261378406 443651699 561552420 669254956 495666367 34822215 762305997 289929617 506116326 741869104 637906583 295707024 445056915 274198985 884783554 430097274 134993371 859025860 870169807 396243549 807796742 153066083 359121593 274484776 282860919 152381993 454386876 281135174 378707621 797618569 50266364 314436616 325861227 638239359 441535848 472252145 140315101 668870756 841576616 109868020 441372145 286732856 764054204 814550768 483145359 251573394 908599045 765980472 80375414 166801796 52751111 139088074 375717068 554369252 558353162 510405606 191078519 852265869 673855210 159571562 317499062 239010746 874218082 775361421 953517234 928474808 810503148 214788709 795590210 141958625 958610535 994921301 464473532 283218066 982077557 148638699 636731018 666015934 535227600 983824361 228549123 910382421 662150734 77479118 297530147 551026334 907355920 745095963 649651222 666112530 576583201 648139885 705334 303540892 483923150 783262064 287518967 218550747 573742370 756515100 865168514 84372639 299319104 535507086 991514868 317802035 848678876 789185167 992547842 15484234 351274605 935462708 861076256 252734373 390883546 174777603 636162107 512255007 20583435 796549244 710691740 488162069 392169209 359271312 571026867 681070251 584806740 634610446 843483718 460741703 567023782 47911164 65176718 280696810 93425185 58906490 244915752 8771534 446188428 271778117 742063343 453638913 112173167 16964228 88688623 450890662 527556897 863116415 802730791 845536612 382007926 123893568 95343354 778717414 705193097 704904513 155682820 877064029 216788073 508743074 108561577 682182818 965915149 611351770 219294674 532322925 988960353 243366566 973783641 262343383 617728472 829728518 452765560 63003505 93890047 934301012 420281851 167614737 615378693 131417736 204623720 45002925 810960721 232779789 521624588 354291044 968695792 998051141 512055689 928579211 874987999 668534940 29514839 509789072 200023436 481881062 324782807 243688321 620988951 171638611 646998532 54286198 882830976 946285838 410016371 252977195 528575970 786688989 864587331 289001571 98917655 798235565 872718717 542046634 691603996 821341808 663895719 232701064 554962904 561414910 935580797 624111010 944365118 414696135 645452705 907621372 359085358 893443296 647104805 476031879 323275715 189563267 515874479 393940805 221528460 136885038 583248184 845670484 129841314 210043907 834029835 494584630 728608337 911286197 921040993 684650158 105343778 932843682 286365947 167251779 315310251 464327748 357213987 509130533 865636457 88965000 259864504 709466746 219443193 997432164 205052916 571824218 889857604 261033681 283917222 36355366 63191279 409961183 958441495 796276659 122290293 293817182 410909564 147831664 117029144 460189654 581871840 720595984 485841392 158656631 800023832 241796749 600531701 201905247 321227978 105342196 939693844 686526547 822082914 316508255 654213265 479286564 33926990 553427542 621733533 918998990 991545710 575645905 148512393 52869137 410989355 573865220 14066180 983266323 861339666 216177145 895902522 924767439 252568385 436722148 847828067 894721292 849756287 404615782 898817273 731664670 602428806 811158943 135618557 263290132 637965192 858273619 517561761 434715978 154387897 210182020 550341660 478299362 223100514 99402932 440329216 349252049 497925877 367280524 629644616 108319254 566634429 150852506 618063754 465932736 312956492 485886204 723329722 958131221 357506300 953009065 767346225 797245004 263113128 135517746 71524904 842329433 995302820 353196408 930152000 313023360 523434081 219541145 219327274 839505041 271987671 42195869 353625794 572512642 256855877 814299995 685394740 966830219 661550182 835433529 147109909 523816837 201327523 570177387 189683747 205164909 404070860 292826086 35310190 706731136 249337432 650984543 22451148 366563868 454810148 659027013 362026935 665359435 877235720 979284822 671774124 23447149 209394785 697410614 281299958 488416311 212303719 801913710 292801787 888184292 4489693 995719760 130750836 21984763 594920740 403234869 85226076 346054590 98307749 873715857 195650603 153299626 559339221 125099183 191431311 737427867 602077400 78923804 596981464 671602310 662901193 889830180 280365762 516970858 276016922 284791504 183868365 823482070 56431489 769499477 581155414 793234986 90561867 205660749 740026793 628036104 751820440 527284234 778208043 963419306 6890077 530294155 740094051 873333623 871858419 450292386 903169045 116511628 493069675 237792528 733146814 810904679 433367658 561222937 265631818 799890406 317596671 837073159 939427333 834235098 971563500 880158687 242598748 566845499 370391789 475508251 819231449 164662256 414660407 674933943 586398322 608659567 645763309 592971344 363212945 271589114 125034450 856343174 146116285 908843418 830008383 871972346 279796902 531813216 120260930 31466245 421187044 632095628 998992133 72664081 935390709 163899980 47760735 960744425 765383861 964713878 963563502 846415712 577444144 204972197 855107536 192137918 96662069 864677047 239676419 996787798 810160831 349178789 101975485 688495733 164414016 87583633 273521219 338547211 941232073 30079850 70299017 822756044 388390414 762356415 182503205 811511825 113368581 209641632 936117728 688709113 576076289 319379384 741451803 138229448 528963082 875230581 542288077 777517340 688720573 133020393 176778359 720034099 730248135 287272729 6356114 536774279 723367760 16799308 148820003 876332059 968503897 55995309 804088291 421976049 482334577 664409012 6398130 945357931 501228119 749392407 126177727 681303491 103091918 557632810 591821986 724246395 616337051 890416177 819748032 613676566 323755517 474219120 720565842 397609413 535818207 638760232 390030373 189833273 617811882 760468699 368174390 637168114 984618406 188826280 678700173 734707935 763083478 25151087 318258364 200502498 147486149 80348397 699131748 141047963 371606038 319415107 346522725 179332808 112337095 196916908 145226723 949269989 719962578 74988046 378749150 828710686 803523926 258575329 323782037 313731632 481316756 679958989 661076496 182843882 612901745 636956370 620619244 334544893 823281361 539500087 148408064 50564952 733192396 132079429 399411453 212635896 855711601 880327044 18682864 938914486 11915175 786989858 575152856 986498043 391770738 427155224 11927208 725058777 824652778 39616039 121107908 689719169 825322678 691593574 6181354 967472771 809982799 556781163 256506571 544535871 567748986 466076739 767492573 618655694 622038384 955487154 328316653 273881303 186665135 888100950 162693419 949503994 357519992 841582132 173280645 844606785 683425819 17086973 215043390 229601225 948096768 733093315 413991902 825561684 724584312 873314079 773099094 680817941 323565579 390873543 588243776 663398980 686993569 423856247 419513975 388366482 660927546 591934431 425993678 884750143 643019731 967449286 491944137 491470709 855397595 367704238 832614009 259468070 658021793 898096159 747144499 387698553 761224286 557319788 245111754 310733838 137828253 365664777 177554553 721605169 106145427 998721712 510966350 697478359 911442653 21853935 413411274 798467541 754125477 773704613 338388505 105230613 532161435 285876720 478761514 617855426 67422902 985110730 614610510 443748402 419193715 412607936 803219794 744740051 610352110 61289920 572660059 283881010 843217675 895266524 23777589 425227173 845959137 767154132 566325944 259135937 499987921 446330 641991425 852297963 404927660 702963530 649094857 205247358 162718766 445271461 861000149 546428274 270066690 325061339 740449535 974169084 608632379 506235556 237293915 446732797 521770125 714661781 577671110 133774440 261410012 63830872 527773751 338409792 456267532 849349398 111219304 389909095 258364386 800698023 858661288 831923463 854952852 595195660 695884761 379983302 706245122 302689780 795722667 327816492 732906015 472191890 639253877 830808126 393292242 183682974 307172198 477665400 760334382 622430039 850380993 526846377 799849040 844825470 127939855 510563722 414703539 448757920 418250698 967767875 42381539 559502350 474866860 658079486 313380113 156091450 55474871 214391134 442114035 474560017 670101624 120038254 46152579 386482004 292330252 533745100 166358619 862336791 935633204 375255273 612639156 193184327 492286189 863692472 437581437 767332022 680131440 22860415 784087406 943347045 467553197 65138019 723342681 600506503 485648911 11095462 493561763 708326265 701657649 757156749 577700785 890243386 52859532 340569298 667932501 156231287 575343712 582323856 884960223 621447146 657231862 139392305 766375744 557158112 176121161 102271096 299419802 352782202 350446208 767498164 260604197 167618130 271853165 745951417 735738415 731604327 727134361 788500174 251546545 236013047 675931700 30596031 402585039 355521995 108663747 672431563 327465585 204426716 524673356 20186399 521310337 541022370 739487912 502017815 469404845 629116520 638568774 394680209 37731956 932086527 92060076 337544079 404768708 29605626 489600365 154725447 815692959 447290177 126818450 760117715 321603595 83926369 275068578 153160714 88021141 607054691 887737558 749735221 352119629 158183145 172066930 777535770 496690692 572564773 28094708 606982993 24256844 641582627 383261640 152435761 153786527 109052398 955833779 947448808 644208476 91736090 118449592 541292665 25919996 275584630 915068924 710905143 993222081 816832818 235991016 610110415 871898575 39045430 46307741 474381252 687437417 318758034 975694982 515770682 100545258 759630630 543785241 241683986 503468650 615953498 34927273 118065225 1119210 239813972 638727732 402851400 638548088 395927890 642971572 87781803 779333799 169486793 524327728 370061079 804285618 919681776 733694754 176800282 170309573 461675642 840996939 901446161 881844713 814940551 104504582 434990939 180004996 663371898 798687244 346622196 915868492 741930732 9457942 265190910 853958193 212112537 977769326 466474978 502242756 616709610 605639764 297046027 171630520 192106497 248987044 597657138 643355912 71537258 407165178 395224455 361920685 138821788 203207235 818269181 83852276 578358808 462524406 237176147 12911947 278070778 638486672 830051617 176181941 107760512 562748606 766039205 609358961 795345038 390713671 760837450 490234308 943030201 361437411 784285826 48163472 323942108 708322898 748845570 188943523 278988186 523460387 747201673 427553790 528767792 248403065 74345576 27916301 86851008 933906958 604275529 405950315 833470463 909997095 199440368 361404695 34260999 526364284 178580766 283830934 468724900 305288963 665623031 986904195 725967400 259875472 140170935 223076002 364023496 158473741 279623184 199509127 778220570 951981264 742970416 650917452 880880273 873846414 827710217 467655006 50488794 728803666 1497853 267482160 400651132 75376337 486200930 223064017 670801361 306766011 2233030 522675299 368677347 351287819 788476939 58125795 159285125 903237311 832302700 516234375 507367209 15863489 139051043 486953575 9918984 415734828 986034939 909656645 619314299 170017436 783424882 414908938 850325386 108722453 691172953 833451386 699867829 527114275 483342363 273398768 858526357 204378579 630432219 700450866 779870372 75991394 767148777 374281217 630534025 958282228 303303566 798039178 883664140 300552656 471482463 170670301 924661170 613373482 729407965 326857848 372653031 533831181 542932692 450426849 444791081 758607477 369783934 711588066 485029624 752667818 40406265 226400303 298224700 397353128 561696811 371225300 992668551 171252287 224252003 343501250 358258831 963713455 253989795 672358802 689869740 217213464 777030114 804781099 619305494 856583576 539778653 293785591 542320844 101996713 937675271 950314360 52502831 253392516 401149112 272474469 494957625 476026345 326331389 520152041 372728144 618624427 171664666 694333178 813354508 649418497 572348108 47048013 635168018 608642373 266954555 540049858 772623487 545124650 857062834 783131471 489614473 655765908 791930596 131380909 419859071 323777170 62937307 39051499 621172928 51989631 86001280 497467149 845460986 269345562 582007860 482390709 752499530 125254917 393676499 519844144 800702087 913791372 841294259 289349792 984990706 220491291 910186815 510538546 997541848 661248808 832268847 627821567 931159487 520876443 640415651 554354864 965748033 666122920 252621953 194095552 412052015 98581766 818455951 681021171 371577095 480091257 454701866 438263801 281930464 956689507 527643366 111564636 557555865 43442813 768311644 183663331 257294829 706958649 201480764 920299412 873310895 503567331 323273055 788617095 564226097 850108829 172460549 433733873 560415591 680789961 847598055 31568921 60689405 629124082 907044623 823668853 490309105 44622152 453036242 619726642 298840299 631100035 860437986 165614553 625185496 478536499 900589859 245411490 712725320 560399541 562498024 373577412 695150312 385331624 955055186 561365525 400397411 772011784 154521493 472995166 522208424 539545313 793435312 370915229 530049571 580232636 728994161 190048517 246056271 334352225 582241958 604770875 408465832 149643173 486576095 18780167 681232207 516504530 304143648 493934098 744992610 807586257 951829494 761979053 646414732 659481220 389757118 283173770 471284359 507026216 644646951 832663361 317786031 326433386 489356346 384038026 208270370 294095954 676264008 272450612 650095395 955380428 100949325 730190186 206566400 766641233 318744560 335367085 207999911 495130458 522203692 289741261 482762977 939810312 877156736 862669730 863650066 184198845 618702245 914614381 16867915 848168860 763576416 539116833 561569635 808503120 980881904 598333520 11997425 429618493 4313292 871286520 457223080 235664747 36006167 893818066 469314718 624259961 981341003 185185534 349571467 389610231 950564306 209731464 682388534 272837631 179913137 497495317 291954784 685085698 734122624 860438678 31824416 174609423 484310474 744716416 864250258 576654459 979552481 114381572 731924391 436531353 316000488 627985044 118904135 141925392 235151005 97582280 148195370 720347516 847306653 775000308 918481769 634080409 388919327 925497401 637273813 919549322 339057610 483981865 570553143 359989712 857985402 62400334 572635683 14280147 689079509 778045561 777814099 979121257 852175381 916655687 563811906 742062113 207235284 70860286 168364308 531957095 873404777 653276566 694822885 549742713 495331232 701233177 494946719 985942069 528538420 882550851 507182257 760906556 874585845 9350650 975413080 717844178 280004777 145587757 41193678 400204025 728371460 765221339 92714619 568802155 493793642 203302871 196907874 14293390 731803705 360400125 120856896 20473632 976030351 194301095 626176675 454438549 587400538 413948045 838065506 222561610 232449787 364563012 470971772 252556027 555250641 82093807 463715173 821766221 735577006 489765189 732492297 356020750 559172654 473684598 855080488 425694443 854040210 665186119 972909256 361646082 312435867 706607559 747572400 145154636 872401014 480735721 182952686 332531306 746658750 449796802 602585647 206608527 469653224 519231378 553623522 352807479 289235623 931680684 589118652 621770684 298909312 275358734 764381043 111780045 188531799 225764434 975584011 996761884 822384524 195275536 541633023 349261874 644362959 672351473 540124014 899300974 530997538 623044766 320314251 54955739 592485756 304146176 928018786 475663441 375276675 23722433 552894395 673631722 654390625 208131101 138306886 182093040 802802096 6931505 741900218 498400136 309272134 892211136 816535717 919858950 254190701 710207536 253585324 822433965 452225698 439379368 42324308 1244434 172158112 726358420 485374608 940607815 509986705 980717130 755124096 630137597 737077647 436348157 539792662 578467106 659236176 734764845 341909961 561103867 894250072 645141050 935211059 353021926 951480744 860775718 812178918 760368130 604198581 536653853 983011397 691387970 2025135 158816572 946142566 344190196 718634198 912762522 675103911 108724111 470242508 618790048 242040632 38148563 832727406 156933375 780996484 795308681 315471968 591922695 748052790 386958697 627650787 71679752 485207565 717070424 459666814 451413741 477340296 603966334 559749162 381418434 627845593 863441338 82821493 305303883 873422017 740609820 859026904 484304933 288968715 749939972 427205040 886664692 426759468 8405793 671662602 437892874 346830919 308398408 251244934 1396306 461828949 518321322 895197370 876548967 658272710 989950255 732130053 222721049 40814040 430180035 972008995 894171390 213283601 833093584 649129193 993530581 151245518 939720073 414893341 909774201 186143430 614305432 836390883 93134241 518408948 16744461 192259302 337636441 336384708 898831111 435449755 218025481 70243679 630664909 868335652 991503044 688727247 598377350 417820960 584851011 60194253 374020756 870850477 760130240 953592084 661686938 684530833 151253811 648540359 820349826 423169808 730458355 231474553 93678866 310052755 669773410 448080405 716355771 471855534 376341869 711343817 151754752 978283159 79110907 205446404 962489351 911806146 920813712 492652025 928906917 261720496 80647812 989492246 239284187 161498493 631014153 760424827 495334355 681951631 146718977 910001274 769183326 120261766 706891216 938633604 92792351 279934031 473775145 669016600 137004722 934289290 478003050 488859035 216854951 876953037 698276851 84525551 395476650 161992432 603799802 295463160 900209769 269565371 879222145 158422818 824950068 989373615 743531001 415189260 112693911 458546096 938258457 674423421 723435708 937189942 185430377 113012545 733057996 345023988 685694327 930027015 58736562 890350398 878001035 320900188 812920973 508717936 912515419 731241833 283093391 505146548 675848765 206821142 333943233 687867867 830359592 271367624 496959949 519099754 789801867 660526358 781178029 900626334 533474048 996891233 361726892 828425092 843217497 866996405 191535555 802724211 966916202 79517388 974529409 246931784 992574876 108864775 346477990 293835618 635127670 251890592 507730325 213742338 719718101 424854668 914873991 352527742 509596680 474042960 239441393 263335970 453485984 276362293 766084993 169359673 26167824 448010928 485451022 265277034 148302258 35465366 750314228 242498346 747841881 744831692 866018982 731731969 486670772 81033781 152676986 769652927 50525409 881502229 32544355 636282182 858353704 873459633 963951889 862288747 965303507 238262139 685286478 681576942 769942395 590601417 873892094 872827257 768602174 628395038 150859672 189619483 143365635 417252426 416174179 75525494 511787889 445720644 494947754 883917371 998082165 250763054 383543663 236406288 867612390 203544798 33016726 535160184 94207936 68728377 790133551 927933292 831385147 966923888 473595631 970875281 830798092 725186012 265401814 468443034 198679950 141144698 464188659 949633652 569396462 502696391 44305908 808118180 779149615 700506806 598723284 349620901 963869356 170511332 488639839 122076796 128372552 683872725 31685479 435054197 973079243 325011614 485042684 720296822 130177293 384091906 55456809 197625975 391816553 687432240 449181773 145401052 944335961 941966138 911277827 548021840 478614241 622901256 245378965 769217460 804330028 767344322 690236142 88209626 570628566 568943293 253216605 145904112 585735227 448313117 142840657 463392239 360491723 519757199 615928851 420268113 784943595 288947847 9258821 308174600 691383581 639154471 896149527 46861433 443259808 986297097 241450239 276119875 753774199 986754227 947255241 726176841 754157511 983004145 236724577 251928605 887704455 710529295 515069710 777333878 64358826 782502211 811017877 655849048 402899985 949530879 541561525 957373165 704757711 6819519 593172994 477734409 561790118 336420040 683102528 236535380 637651640 30173484 147381485 37188897 181228730 843030956 290348616 26533176 642533724 140509392 265649410 592352684 718411178 659154550 753313951 938518193 304193881 699639967 394606339 880987363 440381688 854518724 361339201 555383936 997507737 503335171 65063870 220295548 337889910 411398166 983798173 224963352 841074325 303683351 346248215 118788969 817563898 884048184 393552460 753912162 498253580 84965194 931259313 32724501 649163775 24338434 662545254 686457813 258550572 832763586 469166831 88329550 592297916 689537954 81839177 611668954 72588873 546385811 553407282 157050385 186217862 764088358 762034114 232886462 326766732 10969582 477730416 804859332 849170564 179030877 510184553 96394959 933625438 456928349 547657305 222390519 705942792 821869354 483417826 799137626 447765096 902731733 87298457 624223625 756068422 524225813 360036684 654400571 223721297 368559131 557308986 285237504 670440664 628646131 776362154 406554058 362848279 35044380 536070422 721532125 138703964 191203325 451891074 962572406 33827046 58197333 797645293 39776453 317680966 479326488 761308538 239405910 453864271 457636508 135414028 178624918 170449917 206967030 223775102 77383030 368863389 421343680 807620156 451859632 420424931 991427457 143066671 748306194 734332673 148383558 298764153 319239780 247739867 672688171 414417459 709431109 100619711 332218172 744298685 553210423 107470227 559567981 510425846 86071442 489833915 507119127 403916505 15290940 658663200 408644326 99379707 243175006 893021311 239025792 23581893 679091843 253175256 466937384 501361243 892945648 534209361 17737561 696880853 710048011 113193035 514031841 581845208 868688607 494981301 45255194 219766120 211367366 491567167 284778705 702816693 873813029 258090359 153291406 432705965 517362812 894393713 648902566 295802912 521837948 577488782 704238905 330660033 720339055 113552251 258040733 9735802 642855801 796131616 971562603 67953817 591217598 347079166 655569145 911267976 286602458 198703452 917271309 88116284 510396272 656604010 259388184 709835935 184675225 627013532 173272087 955886211 179267241 317210487 430832746 278515061 15713766 590189504 671011410 110101404 656808264 460599741 607409421 287693748 583299221 812268946 13397028 861187313 622692057 192958202 876163616 912197004 179560778 178368188 639311398 727649950 798652585 406600828 748453802 884139404 672871948 675013456 158019490 47323592 843257844 886852600 200771787 596734738 145444763 657674572 816490360 447883547 381795014 62079030 750717151 278010597 263403478 737156270 936366997 808749120 940744127 82443523 992149609 186884628 381815476 452482264 514806122 727781347 134424529 191546011 769730134 275784902 198249784 904715469 805077684 810769555 402905301 431704156 597201583 581001582 815073838 229835301 390996313 642313847 189381997 560551603 413118681 789194823 970675318 917736843 526418456 910618105 831898808 309311379 764222126 291657559 618890319 971069984 773979851 654368666 93103246 813359496 38497540 935508965 27261241 107965656 780041358 667602377 809279407 360528179 696758782 842324051 490075430 563951524 659532950 664377933 811819633 460247888 122526695 556944755 444048013 263690927 17068335 505736487 300312509 182570866 572209191 936302195 423237549 747662115 665742542 97102796 718530116 417036867 308585843 247673739 710803507 826427003 180908798 265869026 14108245 921543767 469014031 154705880 938128613 194916875 462872138 242333992 500411245 385405113 654645688 413684492 50032978 350348369 38829846 225696296 343431423 381326503 397685250 995300900 780496290 83479471 803830660 780349033 684430866 343102288 508124772 21836115 189429926 467249926 439154680 590687868 107497174 898918463 386360321 256912369 898527086 44187292 100068925 373173005 217053226 446179969 470165524 286774272 707738107 888804069 886304976 743091317 157224664 485158543 685794678 751284086 628445401 958843319 362968289 782393481 538747592 668102247 486722546 253236910 596017135 867900850 442976604 489644747 489392147 971315806 637908985 123568082 46157769 509611063 594650860 340423039 929400109 218661991 638302008 117786999 380806368 770012792 11223359 962044397 703859915 267335323 132352102 268318326 482570019 548665523 206526345 678305801 735745376 740523721 169491896 501535005 136417942 317165236 458002204 548318757 585109927 70559003 429235056 265075084 46242067 953689807 38228446 495686295 85875970 422083808 360812918 31636355 945910973 817444022 968512781 252181891 472206892 973477711 331719913 956207918 171438292 474094795 552846861 313862833 457185094 769609401 342917216 898843972 601797502 735598682 730268684 445362036 67245291 467496173 852834025 283717493 728885502 761749746 744873315 512189893 270306039 89842196 912340344 335412126 517362068 325710285 295948072 444420380 87941020 159720558 252838945 772892606 29813005 307437712 674511780 978278384 315636480 748863113 534712880 753391680 975704756 527843195 263177193 412727443 68113141 521726016 53394357 154244317 237012314 543077829 163588236 852773591 390566128 236939552 779439415 870026361 11900398 311450901 115897360 85135135 521869205 920891415 654436285 910916305 578670211 222253068 489439420 44768064 436820884 280476884 335655591 352012947 440792378 385758417 644530758 979080588 963593785 241835501 85714716 280753564 111454936 553536251 331390164 385875026 763006297 484708267 723160936 934144103 967565878 365760175 191960625 864478137 639859975 911473052 693850132 52206714 147237925 313390273 356077964 578063796 386331861 780274563 335070060 313755920 443893689 828544596 763738896 394319897 842579707 508398459 214578124 662018631 326320244 754992567 780922093 322533329 749152427 10162939 78984094 913977965 638552019 75562090 222933647 613773787 371461859 128873659 527271203 432897846 615227901 960667899 941403463 7983021 872562264 676647950 6540516 157767936 106633776 284473899 543615748 923993648 959455310 372898047 188727262 178342441 531433355 613155041 953906836 145950430 824154916 687430154 154354753 141069713 970803852 669116319 718472016 578236743 701004000 998581689 888975110 350134544 415198213 186711436 558947906 132079457 188094887 300054563 717902707 157599217 712458172 739094294 958854825 628324810 897914557 583208585 886917890 103605076 439828759 562758343 412976363 42225828 722777801 141524454 973316845 948099510 909862040 60558445 640443689 635558281 13964462 204879110 51130238 468284550 462596906 403712186 625232890 134102672 644657010 747211123 160715179 958564265 717856949 940217137 743375408 934854268 256373026 719230849 365677350 698597902 913083244 358408300 194958566 80489530 976935912 353255235 783979760 855950940 317866775 651449386 811885262 619562163 995318010 974061163 913308818 282119316 789064964 181376924 880587242 398412741 126276082 752572134 190066122 402863165 680973620 907750877 341399479 556984851 696456844 742241707 745952013 315413996 739154793 950515356 160160450 559083950 656663228 907705582 449322306 305947409 997257086 368082400 934615392 240680569 853546685 214390019 968030237 573074870 183679960 676213692 794046127 618012006 907618688 8878694 145787527 397442054 347756579 806610397 947888268 457503272 753992997 336096429 746153785 818292258 578202629 810063562 605036809 219506962 279406733 787115478 444157360 113750146 396778745 556927595 306015205 688044392 885300008 810870996 846608873 679211848 646973699 824054030 841018467 345226907 457513217 165140878 700007889 205759355 176325570 7539352 562425096 212904415 122635433 873429626 171904686 266844356 959929471 24018860 293141793 824726610 717809695 320901676 264816009 952269631 772721926 793609649 732266032 816057556 67739025 98971061 700038923 97676946 147812117 509944337 196435874 440623319 860992952 499456200 267116912 241970809 484034396 554512852 996334303 793131826 369483346 32427624 929188093 28902946 458365017 989966902 327594026 457112053 508926326 382805729 806317070 565696617 944726889 896615831 231571479 187710593 434233445 873115352 236040229 706717517 721219248 851959406 562239338 164640699 687394018 515305429 955861683 728794585 627496603 93199849 650106115 622122698 231343149 241974732 935101838 56001500 641842728 231255812 473809957 694005067 652943195 217800483 828468570 694440872 986604100 394991991 9482918 326788459 634087996 616147631 636353956 865432065 168410022 481641995 678837541 49468540 921255040 914291163 891863711 335077007 815686912 730659810 395032379 559051710 374525142 555719934 652172278 486881324 366650044 80102020 90094977 62912555 734454810 659938801 686838162 747380282 167231217 526015017 962579993 455689692 531797894 586878258 740701162 87713869 853922919 747902435 363448691 559567433 986659133 313806371 531928268 946430214 845517594 561329334 10586276 725011612 803083372 523738043 624199811 114090391 753104647 987249967 126138473 380104295 651046552 637100708 196971190 936885913 139417870 185374507 208815834 868561465 827186283 88150970 612884087 182711380 548125396 876639271 924728352 472859414 142588567 588921826 425008010 864167882 811897823 190309727 936658537 668964278 967744885 81749637 269636272 529577828 341364923 520344566 450849207 440762341 26281312 639613267 902190196 254283028 171084303 499295865 132509013 124408899 386280299 975778740 451996452 556948489 523288497 112771820 816213595 655545501 26787770 182908340 464624420 24711791 10241990 48092710 897967277 399888016 592787074 485876418 305110551 341840960 133123499 919935133 423272440 544196680 822758137 323880823 541757902 603859536 795302880 240316424 740126885 884852351 789691656 563031239 538409242 426382181 134031332 169498324 701295129 517520014 197599908 133238291 976734791 884145023 870567612 682798479 708932319 959960859 608583504 381690134 905573652 516131604 573308977 974371605 422593693 553647550 367265834 923707305 856399095 510125577 235668536 340044134 359597694 153705497 122882084 621681239 148906470 836559765 52817335 447424717 879881144 309115704 550348032 390489012 555072441 686491709 830971168 133861495 366877292 534465315 546323029 524980938 182526912 759864816 743369560 28272555 71785197 894804170 226709985 693877226 267568979 240745135 399196003 45811186 311998599 933521131 740400981 558144143 740851224 94687645 596870580 481631031 854525292 259841254 447538798 645110955 483237183 928813657 855326649 116963548 740394485 631325330 953937917 746292681 32627773 20203009 667612668 528860173 980101417 937668548 912572405 783747805 796666291 782044394 338951411 942680100 801939595 350341835 970958414 235800243 623562680 697926617 798166239 807242845 430006571 189089177 730116948 288692513 128311531 586941641 284559443 355858172 657897647 882233119 587263786 582467825 69431426 213607967 869588907 55642515 981110724 931882547 541380652 537212217 766841435 132258661 770450951 556497544 259739854 412596177 886528687 925793379 925668833 815617950 140741745 69227055 78720483 603813813 209540333 763048786 574261384 304805672 468825540 362337722 7744197 403619610 636155669 71635178 507336371 987760261 728960875 61550421 455529924 73407829 543266843 454412761 76378824 310160167 451588710 535940648 264560136 979876846 621127757 155623725 881656633 594124375 442343779 315280573 55596884 54782251 114825694 479516797 583585939 573076314 621762137 58809154 374605490 327357975 66038330 118622048 998115791 776721205 817684185 528097984 781207121 118705279 944211891 166571447 591209682 636956155 355271788 603987447 573041518 710613495 217028163 740586497 336260014 74396142 764392516 16240106 654761663 582847193 749013905 664987686 959808838 117347384 624359933 331227598 941269186 383753197 61251104 487665566 78816626 257109942 942301104 481115432 371699190 994831120 800710168 77324544 220877196 317950626 263697030 660194829 579679368 694571424 161183069 298560876 156296686 907186843 495483355 633284519 981337908 234838946 247828754 832473169 195260898 51997997 573983700 143201156 51157134 542118347 391047354 715892082 584219494 699236393 860196512 311916697 6632831 129857649 485329194 141601474 482978900 202108071 438497927 198228178 823807655 581194866 14934807 543513875 497372685 340732323 190768006 850815025 735941045 877841878 600029033 485095738 321281727 516122482 866041349 655879178 444547543 623710448 272760151 497892687 583669288 402693898 83976890 889613217 377716995 162325553 808924946 663237241 231289274 581240627 31482330 621274619 312298661 901095745 200493636 960910008 947737870 238852715 144638227 365992869 543065900 202715199 858383807 821799239 633861099 575733053 46782188 668921965 343668283 419491371 468715742 893237479 706267613 218999082 233711610 389076807 503325001 330114421 222574795 741229842 934658390 668286921 475754354 912084681 375554855 15857537 453751182 51493213 866456113 2034775 754571263 438918590 528615977 680674837 324394068 98071330 462349102 452566511 943202203 893166636 71389957 535301984 364600382 363129593 296042759 556298585 326200665 956685189 697910774 788467658 471686081 875825220 571235444 422839461 384072386 493651757 977584138 680602891 261572147 269618686 551873048 362377996 863956074 661983240 911087085 619015863 454672564 532043643 136838007 340320806 78699779 425707086 200924681 68182938 983945160 254099349 564834588 805781423 576454662 949450935 681935649 489139246 594035113 818601440 24177054 810493830 611171777 146680894 626311716 446029422 256166331 415545721 16134374 954114999 859479602 55018391 465030053 774716436 150009927 822719621 260222213 511977033 240805081 552500787 354712674 353700081 679010334 313749357 401873985 310086041 480921478 145395164 601907964 994774565 603623674 558966387 544039284 772557794 388043331 147749839 484404610 136373919 908071722 744511516 914013275 550558594 727939287 353177714 40828745 586787233 412311372 4434137 113417705 2906558 556177303 63624327 98671398 869745947 84996385 657895575 164864761 148991587 634067689 593127145 691247455 40683384 681763266 602342311 599026000 279172235 868162804 119747081 82504517 488564016 828724318 673101689 789050004 589039271 59406039 952954969 379043635 31423882 478924025 180485151 515305069 301329965 833913160 145563565 642337696 786929482 522007087 682845417 757405785 475140443 394705904 35363592 244031764 326481078 747201586 980746114 309578196 878028727 347622812 735665677 349772027 895742103 876354013 655936336 146528973 753213075 635783562 597194122 512879469 614171196 439745488 982492519 762293139 40235318 667247928 682097196 229487542 826486584 381612626 664800550 897394616 3086997 321825081 643586852 936274097 589214823 881488067 882000240 934572307 868813176 289335959 227178825 37751754 205924816 816041717 219014641 311371830 90629150 6692258 482549022 11026035 254528788 113569629 290657764 428584347 149589 478790057 286939852 226235750 343860562 746729698 242252003 44061829 134671118 788590863 704777666 84509072 304404098 309828196 233867127 694670096 284801753 691002483 422258687 930678567 538688090 81036025 910380788 517891184 23593569 993296577 686638813 419673632 847676041 217734082 67124449 754781368 810481051 90481273 485630555 352804621 888815262 656024529 319852253 982788079 11170651 879008658 146180412 23618011 812096779 775221044 997375531 897737819 94409664 627923409 247904526 948770806 3236218 580229022 71620592 192226621 317694896 818680866 30640398 229096180 902721996 362597162 687213066 431091985 817268957 619882152 371797091 495049209 51360785 631191180 316799307 8914995 253412342 133819786 298326578 635697679 189179026 823943233 16328099 491300536 496777742 945202982 677707834 87126676 287094950 765867497 692885870 305947473 67682309 173700528 148111476 537407527 395673370 894996595 959472609 578752194 308170690 335752185 895309034 762123008 155374123 704028953 226411941 98608141 966041426 987102141 76100862 393632819 866281094 37384507 1187083 68176435 13940093 599724053 789807201 930756938 271149906 759422023 530679518 662854483 123514519 169961546 705271596 663816767 414884189 214729031 254111623 343022314 79951181 398133507 573074128 257391270 304415530 620428275 535328702 113296649 882446375 524846298 225704052 418763750 114919301 593893038 223657690 9976086 788374244 383790449 445850220 334862728 637122030 75251257 124896574 13943621 540511184 625650181 734299018 982469620 972629174 941574609 721128957 252057186 514603543 858468729 770848342 670080871 312729316 414524866 640564328 22339633 492660377 165797228 249706854 553186380 38117279 357580972 680430039 781402213 667320679 541075373 668239712 105000680 180296316 476428658 761643772 196590710 451634974 690230639 78057790 798696219 37378426 6143607 756285036 474989723 111890309 270609198 950672162 226528814 959745338 583246559 84023543 200309098 576983201 101438315 891268681 8101925 681216352 596508552 601728148 463932858 175477573 6966180 655043048 785854827 637365260 477335742 784244028 725347117 490130987 759925840 789915293 835172765 754813108 154168716 617479630 278061585 192679588 553008757 577394286 21183137 589776508 377084554 973923597 433794912 677595296 38912728 691227779 174852503 690029883 933336540 193855119 745454269 4851729 569125555 821761199 483828013 310322247 939716710 85509400 40701658 600958687 484404815 127235347 989556290 285433686 97573962 13420556 386712723 824591444 702916636 892293539 110310485 50739900 986414559 383496752 725984204 835663937 493666785 591557598 202529800 786666444 29264698 946775358 551234796 650478551 517803944 49075573 374263595 440000345 897609188 280034306 410335162 983585272 772613800 920212586 105841368 606766410 923806 251826752 720489540 501830136 864337317 469741683 70089416 505198758 674140156 706794449 563111755 927657168 140140307 251103615 98727746 322185815 293247551 775096348 898552806 834669428 165713933 909950426 122682843 858071300 225890609 654870808 216620030 336562401 27120706 354271535 590855803 788133253 945026906 273668016 68976726 664434153 272979279 693588482 269268537 824475477 597983459 983698026 445301443 870558444 48462270 687013345 614754346 158858387 522526116 72289592 355109627 853719754 203472922 23908800 957920106 468925040 270843867 790707192 993245925 778865971 607737103 138697557 163036691 395775630 689665044 850176723 121911257 799070683 827238577 71031938 932418629 209049496 729847134 867064266 908709735 648020041 594676215 546652871 301089310 352975971 833817107 288143267 751994310 73293679 662535307 803845957 447449143 979080228 853637123 216565744 392369766 81160584 567163677 749562424 517531334 816511623 328003583 73627454 210922384 239199070 645866895 146149345 780210029 674578846 94942825 806306874 45816112 713522662 4974260 221562700 59289241 244933705 425523861 957032923 690260561 163138910 753195737 149073111 175372027 676378083 517041564 841768580 746304751 81367756 603913589 556808171 18094682 390443010 667129446 774006835 855651703 831213189 454350064 511519030 636637191 172717163 289464662 698290335 891906641 679639640 133671123 248112584 490997963 96131121 674821559 39412629 999839081 114814670 792972718 918032595 210285993 364829570 702851460 660827368 507390848 202668972 152832216 82736875 538294770 648953776 74479001 657197914 242634755 494577142 608072093 409491371 718547209 264651458 305810398 631504635 121219249 424489287 283028486 988987100 268269700 136378025 130459330 667660654 247873794 79117852 455932975 404371552 810459489 455459332 247531764 390942160 672564743 622220194 903592460 489854541 901913996 396320049 984371952 384072918 701046668 613445365 2133079 74287420 899364189 649646165 909136652 594128308 258375064 207238647 549743120 720729852 670432192 577197305 423088845 81484855 162746886 194476237 425087297 599974354 964906860 747403151 762666869 908061431 149557977 529934975 279353778 307276488 689239912 217991629 492632655 487176164 250187475 938293081 830344453 866080030 855855066 989856267 882237902 133667387 835702936 859050576 165975311 85891375 89497380 555824329 24141539 788916801 459999353 993572265 707553805 356788729 260983873 393242250 188161923 160355109 181930424 629423453 732097292 794034137 594062040 379860881 657627640 449850001 437901374 373382652 860862032 963555814 519527427 544100423 442378781 451587897 992488250 433945206 223274719 427842244 906265593 810655831 672283045 424573364 232146865 667736485 596853615 193436764 618318549 787981446 503534419 862594544 153431647 495517023 430294689 129289835 589624751 173426749 432143929 179823630 613602457 753555496 530479233 315063913 453231256 881721919 209082571 545040361 20815425 664810967 891081003 598118189 726732839 288884442 289741268 853167654 392672905 190944212 985228332 725718498 409126384 330349250 97195579 14343110 390101709 855188700 340363151 545930364 78005453 153633773 103898573 282107144 851393628 775858389 272128266 434379579 738093503 83690041 686752814 88099029 873656628 261714991 600790091 790357754 259202254 481228687 153334213 864334472 876887577 880691727 832900336 193963677 821211499 444511344 255064728 540786895 648799933 331970436 971783393 868663540 252866232 136135207 979064459 671858883 156428463 918605646 724592379 693123956 85767549 80541715 645708459 529688196 382914741 696991321 717250943 35150320 591772006 86854693 335381919 189978171 347781883 554413037 727789426 144493705 85489438 157321347 492602750 774981051 660042703 49107526 807963223 81958422 424058422 65214994 103614461 591497339 211638350 130280111 592629671 564562416 773565914 660911976 936303999 490797298 321524149 680200438 122150042 423612375 482678690 30080278 985128837 746022509 304328657 439591400 512897639 30401563 222008390 208920934 639507461 277747338 732169672 7285106 572987668 554715934 740762968 415138115 119877429 316897005 111899361 91210859 504269520 374175387 121431796 885676633 975274690 476145606 922711278 410656792 719829932 987699602 363920026 382353955 623828710 629951317 765036441 207522943 730429331 715882768 571130053 664660244 319882539 169039872 206804009 852257683 656617730 980890445 738839482 447921151 798259943 744951465 71957216 964194165 432641290 849688634 19367695 550088050 382757076 480497278 496112879 869984491 101328628 151126319 899535118 649055169 313706213 430458004 251310039 293774190 558216078 297326430 693864867 323790890 391988372 564663909 318712676 484563970 433551868 719919130 502635616 909219169 417165864 20454737 821761523 946717136 482857708 745711610 520716298 500543926 766010745 158142245 988397013 575212916 450354707 253518700 940815762 674909052 343567855 143890982 257854359 86814659 204531960 675770925 830825122 298709197 873517239 416508213 172110530 627487651 491385006 591635535 349875591 126168288 961629609 820239892 571289928 899079072 223289668 395583226 772269091 504091706 776907773 905641792 356951184 410587163 3847782 69774647 343515562 561023780 785705092 802519425 534958918 519874322 46788476 907972293 402909288 756895190 773972643 746683714 980835022 560609571 716794184 654880921 907566850 643440785 587997420 349027219 638542606 133164100 647690173 183610411 18000868 10034226 298920604 314329510 293150466 465033387 884854607 99852719 185673018 116449915 911920037 938470152 278536420 968492315 732008113 783415742 738051758 255323135 285082446 197264773 641121365 546835754 684255309 950011543 111678216 757644633 52293194 889420156 23266441 706052839 45213927 951412249 855365509 860113311 183662096 271398940 141786346 847249326 817880384 622915561 987667570 244156635 717529310 998927922 432419334 103569885 247407184 18524664 601563099 899413639 909250973 627852994 6587242 700991083 453536692 645840017 991105484 273009583 616198579 851322059 811295274 450309433 932368982 651428123 830563120 497810300 114966474 24502952 556803877 329760039 547118857 945008942 776020120 736550909 566676227 319476226 333153378 906939928 998403178 589270056 268440345 3973468 96640349 696869169 260116955 296648486 566757580 803231639 606037392 915494798 339948277 873150964 173568300 216576936 881153221 153381657 364115607 830681739 880833026 410259758 893470773 523818265 746727899 276321863 395112436 164467849 471245316 825720965 934986942 179662231 270396859 205545242 245972692 121333176 218338098 814817213 578479851 608030026 551953980 245680966 972161258 483858344 125340613 667287889 550680429 753428058 291528619 47187819 740817100 441267744 217366375 920714487 37143421 891678433 654971550 807089082 707620869 729798551 912464429 494507750 379215341 167784740 3952517 756604985 245430501 669857847 1299511 952207383 30090528 771231383 637940910 400688603 599535047 270092732 589521485 269274383 448161863 353939612 158919780 862506739 353417232 622289187 62802387 142488803 801915889 309799332 909502779 23980578 382213739 541828292 555763445 130604694 598856170 987968804 822112252 986616167 529546100 822204141 977938573 89334566 283089283 642606713 961819613 402695350 894591105 986574246 961727223 973110550 365401477 854435361 252273525 211650936 562490823 342776223 48092319 503662374 208423590 498621692 622850759 137995032 246639767 596639298 400517849 142483234 859324185 56659444 805055965 73833516 354980107 710247163 300143144 9436494 928075520 720052470 496369240 446905665 320144899 517785936 931474942 937007476 148242262 120483461 85748230 378664621 844501484 659103905 459706351 764114838 36470195 494869675 939250694 904957872 489238340 272364400 331334820 864686994 154814591 572602079 172271501 513126674 248504623 894026016 494760675 549440518 310776415 236915550 529806834 632970995 405058819 995018914 644273896 634673137 672968846 588973834 435001073 686614501 19160507 211591837 826990174 84239589 535919750 680074331 427151144 64620152 768570340 137549824 647615384 403908081 821223837 754189835 426739576 203836812 915076818 557282693 943276155 283685491 898117420 969380250 341292850 73220921 294158672 78729686 712630653 274042980 299481717 697027236 631312062 663689544 608382137 58373176 656133188 963303308 682932508 377246845 149020329 570751068 398567146 722332371 905991101 123720798 633898977 546956196 703087972 660929872 861513254 47972661 485832923 970983792 763524030 824362650 896023718 143324073 519100226 157285252 842693881 55701367 404828653 23785938 449511923 738952160 617582715 237416857 460122141 651971954 472919428 780652945 374588779 861845833 236170670 232981150 616019276 963184534 836694966 40491676 69211534 614752939 925604419 307687402 694723271 270628410 147194855 403569189 13254999 95361307 240745491 268748726 894782914 57350941 162032445 64333427 692608190 428003642 807919817 430835152 875510878 316626787 616065976 973874097 833511784 390642741 44321770 754438495 304217082 779575427 913832089 754512121 258829466 439763612 2291485 750428078 524559280 670212558 28415224 289881337 662565932 546860186 730230478 37331023 687940709 488855073 560060084 460563899 271942074 695245997 80314092 23137609 536396502 21479390 27539958 726477873 420054284 33652513 682084288 185587597 903832256 607263402 597135599 639529736 672451980 297163338 242321217 318875965 253042727 517353338 722171678 376741849 967115032 574766280 130573500 717172057 271165740 537355735 466337190 278140820 854079637 854482956 751803187 151474734 326257311 402767986 975680292 732163523 785716338 932491052 997951945 641697591 610713929 872543125 885425055 840376442 385292578 415370598 963833225 591659877 770191087 348676258 118692479 690204026 530678625 288056072 15117129 61100103 71406271 237375058 847407593 69319803 50173298 735745926 822145773 751607190 82749750 706462122 88254737 657038 804323895 432245726 325498896 793340348 463042039 999005096 249599675 573932042 131484304 182842015 621489822 598735271 742716524 940529282 998629980 599669296 81002464 85491059 507888997 349429483 850244332 683349856 520014816 720226124 896818862 192343396 69841494 105034724 712801011 823609653 951002073 685536880 634120881 466264673 263562311 791077932 678868964 993094231 707445924 610552443 577246065 516917269 154621758 658398199 839954768 908712142 920559878 567871507 871699018 669763298 822383342 246027727 847016568 269333739 696128564 431110838 529533575 342668210 245359208 783393105 691140920 276161081 874894129 922713995 699936241 358750051 169619193 279822062 451657907 530455905 784382807 501151724 36315538 764927537 206303169 444477181 560658439 678711831 515955091 571504411 804077535 650301945 473834846 7330324 145271852 998522753 864578966 225670387 992317339 141685139 276601150 574685089 894897837 97932717 290236934 615327817 690701936 803628129 876336357 556149992 770488320 589779181 281694774 30774868 237696935 318729688 979691875 19662852 294880052 959179068 115655505 902491411 450943704 277475776 973246769 531005363 778750639 702099798 68322893 393003939 910756395 605301182 857367447 333397788 112252551 913613946 692064244 291251895 489459358 157881534 572837018 53352331 72525806 405049585 551651939 987016273 215867093 616935346 106067527 640338849 424768842 460222991 764454826 26337205 608867385 342927644 554736638 835680022 57894113 808969498 283792179 386746812 819324666 223850104 637337971 898071223 313509419 344620352 702006424 231763184 883526947 399069567 359403629 292527700 697282454 152989074 437578797 485004017 974148731 776284088 774065321 119474137 328351009 452665443 280212780 893227227 536845048 798010367 715679920 978687292 582183538 162150697 713797237 238365802 597437068 716043441 2441942 878796380 922788571 467750923 36742956 969420111 536822746 772760773 377976677 946369654 213958555 76915791 922138208 457326430 740145871 536484434 927938944 16387038 14680128 168966480 668663740 502322784 701113624 288653132 292812648 681593295 247250526 63590207 898383527 99176865 659289473 787559905 393060728 906827722 172641333 899943117 45248471 956472194 156408920 916853582 924152554 982787940 610786821 246947150 946088222 298801110 667247767 454777910 232783787 344986269 559184694 43750576 902069890 75282337 510300196 164250329 356529712 2439815 115163370 914070119 310330848 12525913 201052642 710997858 402588953 455083092 543146443 918068429 32400165 957956605 278384582 232822460 23285633 837737830 295011254 628171972 276311635 532935805 619043041 756803617 238500566 874130514 530337835 515452115 800063360 677192541 693317325 864353726 972924064 916297463 251169808 340346623 497300883 32486152 133622072 79254895 39974969 392895486 184963333 884235411 135037164 784058938 293895685 171454111 76620944 606597383 767809888 763073011 903131857 327044998 621750498 82702295 786495521 336208924 986011042 434704026 466201804 229074962 923177670 312291830 243827632 786062245 20783208 377646418 578775833 927475205 156754997 949266926 992597247 365902344 670097148 659112199 699983822 986346333 266755539 220942785 472485101 145029818 897592546 561626615 541462616 610371609 944202442 259317435 991051506 774126856 79763356 248828966 516881168 769061472 169207242 922924584 109097381 190467560 777293029 733206817 771323567 149533841 843523337 123255388 583925559 7313439 339940648 823742911 698420809 894291576 527916 989726688 440801571 264952754 994740336 987060746 762398520 15381792 554302230 61218585 873179069 543014533 45951542 484336440 175113646 774837546 567325541 863602082 373589597 246997135 649935512 736233619 641455712 113720497 548871335 495983221 904680841 736708378 638689800 956790939 699933065 91946087 108579876 971113643 118735783 764479975 641478809 292798013 277148527 66217750 554921880 859008935 201442143 568831649 475518956 828249849 341901887 29845047 828114272 797065896 568478586 737146323 685484312 225998894 207448841 260674032 843777586 731575264 366973320 965171308 670168445 975898971 578003042 560098864 259121565 298491142 890575730 121372165 812383519 961881532 917787713 276312688 13246954 87709194 987795877 430773763 370197777 14742781 244791644 529122596 737079199 373957725 310237246 695388885 540446354 774815139 447094049 703824431 877540098 427612821 136169396 245836893 545144908 876097353 699297426 218682994 634466367 713975438 805860315 41554641 478506194 590761797 974941447 894784998 873349808 95707246 766674310 786223315 276989286 715381666 108289625 609576911 414094295 366563180 6893464 623549676 981687581 692608089 986453046 403036191 582615965 18862718 133909418 492267503 720445113 145270348 832686083 939856143 594063876 706830498 468158826 148841456 247852828 336389113 941550909 456458434 4195957 523471553 443087563 190755745 253168892 82038469 827142497 652267471 679236010 109704172 272711745 40923972 92799240 633790668 318828775 439812689 433497548 475463665 445683099 1165203 502960391 560205691 262157850 80227922 639711531 581462327 495763593 2591326 243835754 82346213 714868139 259228340 372267977 914331408 28257730 389284478 678090988 487855231 339032778 509819416 983146904 449660084 467415272 462036135 110375347 439071464 272147191 426830871 175568762 192753386 223134321 535592304 69465393 158512491 390816699 351881616 280217782 211810418 113306922 458054120 298651836 23552134 104412453 907306024 230771194 626703576 855587794 455830563 269314033 423185385 317477317 108936542 300440860 972306505 756537622 617527037 783956060 957181368 830332179 424943883 74876847 429641204 783586590 557730368 401678995 147885612 722227083 33123042 838503065 320471584 748742163 389033298 589293876 447318047 9147830 503116366 807939433 245432164 731137955 333913641 278106949 646768486 388533898 466251133 490239424 195269657 404267184 873304697 263199636 813663797 110067840 380321027 974805047 689207841 271415452 251954858 264765131 823237598 102013762 987478757 223994230 363675649 701311583 429333015 735078999 881388273 440840417 317817772 703071524 535147185 728562428 100926210 475595026 735212 522948567 179250778 118759539 764318051 330171422 441973689 138862450 229568360 708322084 249656709 493231371 941974557 60577072 724477834 489792351 219519796 552610743 741386141 990827548 632259721 42693982 52212741 693336909 157066556 966112452 469292649 71559704 953051310 975775677 336311617 932169615 950488795 972095316 160420538 537510259 236201031 928042717 66695179 455455717 363817483 532726291 879851290 634345361 361926703 354315854 251804820 484755299 419911814 3630428 811069439 247307160 335629130 55087586 571258410 669811992 14188877 226013029 585806760 908084535 402245284 253006096 944203378 924710721 536891142 782309000 236896510 549399220 453486758 10526910 337355640 811507666 334262106 463647413 194191636 340711287 596701455 881709737 254576091 246174981 218768662 622802248 638952881 342334018 965682217 993888644 776013993 958919234 574009199 27945509 965336864 681555900 242313384 65969318 379080695 205502254 760496859 179404556 356382984 9040438 799692734 306205904 472342767 758907367 562930117 868958024 313992513 803651871 109828107 379042764 357028358 726987076 15156668 132028264 444964262 486890179 118133028 612704058 368135454 458873417 659608767 546475384 990514230 513461404 855174054 239207699 867973577 372877041 199938987 212431930 282149529 549294369 68854383 745094212 760137850 856048168 633821098 750285781 808296273 362818739 652034082 160168843 135675625 574393293 77261025 401807419 654499099 308079597 876841623 968579140 88482211 357472662 163113043 581557679 672163980 260056197 721121164 673746311 79671720 806214664 544937273 338483295 62170509 777142620 699101852 795701256 780457810 819830166 795100578 910213927 273513702 156806422 877565700 663100358 690160067 277293418 607108241 432505806 168206169 92519068 664215766 508293489 974299112 169697134 440531049 755326584 354296207 110152337 155140758 579034183 891371636 963145416 929781260 666924312 729870639 286270105 196587314 313944367 488299248 427021535 308954028 680785179 270784293 115895153 412009898 263063202 982290003 184507082 519762258 8736240 758327262 155893693 797517851 372265739 539028102 704368617 903020189 21552316 769087180 183267867 280466699 669346388 669964610 381172657 412997180 855890555 299291416 113673751 817771969 182019737 596481245 708242002 327631079 532024080 41386211 257473777 241928097 872477083 198298143 238810946 742354875 44057248 445018048 210066464 65145668 301604086 697018564 932855638 373897643 40849400 376284045 26703619 514710973 147131545 660401193 608343853 354540276 369395155 899366325 965227644 772009670 879360232 158996912 210133817 838091565 195290227 299838711 608104038 122434490 374661229 268188722 969102283 355817379 696206131 667410197 24573282 138726329 307996711 758955413 720782591 320523178 903458401 874034076 957130478 661683446 350668409 748593278 18130371 377878752 876536577 807420083 619364870 11441963 499119906 483039413 656695738 954843460 261973101 987549123 613806452 282056844 799216692 888105965 253689004 752800494 4725074 498720747 540087731 856885625 862713397 396613706 843261571 539396164 975407162 426422938 241636611 612096996 207730871 638226001 319497929 662720943 435824153 293501091 56613825 771836143 750629316 537525783 104962430 169164103 326395994 873483773 566829454 155517502 65544512 266108180 495755389 172948204 725769883 897498910 700211 265252808 201332509 623377735 410266219 174532362 803600888 680645039 855480010 901444955 835612155 966586506 248989449 492057276 401978671 257608919 731281182 684701107 444297884 50643355 325831838 859771749 974216087 970580173 47787004 579684784 612443001 169202876 570244199 673627405 604277652 956163218 552437244 387922417 242880726 461276574 648114970 716504102 796977090 2389787 917974735 862054218 453287653 345086718 591780065 953780565 133701810 671069449 306184997 892006339 575340034 37789885 91304095 583434562 480554258 255971941 823325765 566694110 264543779 594078934 23887643 604287037 462326998 250791910 245708162 51845406 272456408 286362698 65953243 891775374 853702907 248862783 342515344 149022879 240030940 295714200 199682011 897826383 482188718 45539429 327260218 619587792 886290980 394085860 350934604 799445585 724898763 35974400 365236364 764989535 415484245 246846301 711186633 824398429 854819836 194533482 320253949 822566906 451055963 728795358 34613919 109999438 994769959 921398697 721377783 616808072 653320915 720051196 399084975 589106520 348783917 550244184 622771122 82071646 918924113 515509935 340609738 367122372 882821349 534411982 583008100 789820291 921944789 809850297 177593484 826261882 543422834 48312244 356772672 608597918 630034476 977017534 631735816 818636566 997446611 70973884 895463497 377025402 596499479 410871428 113769593 270806001 468450151 603357224 674415737 827785864 544175681 109449251 507183761 129572606 781784603 921587988 547760306 416885194 388280205 549862 230929083 429202558 220578174 346204495 891974978 715443820 972436646 193830282 871849048 115782984 445163363 97104551 183643189 827508635 11180586 792953010 490918158 180528035 101836740 35174069 497631720 467175392 23872318 489692408 327349707 794941477 801553584 480454910 826644006 612606738 153675399 403757721 936087694 586597664 456528415 922220635 287767544 112770448 348276052 927904008 456721586 692699628 440137506 571928827 251941745 678051819 430341837 690540903 162058149 597017979 227598656 143389016 924067525 79294056 413848510 550863259 821544997 493707450 966681213 453413551 11227513 349658216 928651622 604210082 666967505 145967121 915684177 279986154 210909994 153554293 190243929 470572041 148192632 555378775 964417206 928652017 916635048 474606290 469863710 771610780 985295093 252227319 512397972 984588843 266425714 177830690 673216596 407035043 953085444 829330964 853354214 75827191 120006911 960639777 86249003 371210078 954760070 384322264 288799454 319633 521592953 487653969 740975065 469568051 88413668 958052937 161174746 90372696 558913941 509933434 481645397 188841127 470160238 288612433 462779675 314506554 251504945 153005193 854170079 819063899 696817134 240739455 828957123 697012430 74462286 855259487 358875874 496417166 17469393 288985309 191238022 643971797 869351587 572418847 988089553 498507270 802878397 985560424 337333210 702781044 531218162 168502456 208411767 922015544 978435598 839029447 673304454 524857132 784855508 644919683 427412287 221974209 244579552 596380305 893782959 307083247 46046820 379661824 751246218 225522069 188986871 151029052 789856291 424422700 489988493 395529576 738788149 146404604 588981371 265179289 292879941 562984710 81742082 432348516 942315408 209430292 169617005 890838500 8764183 615791084 641647157 679621868 310097321 161597151 675387821 401151089 310475087 10207072 457365260 681129191 155755821 211836724 480751314 434302857 991915307 33839174 578062533 744625904 937438246 502393058 359922257 807609870 214493734 522545718 987804690 185695421 96805886 188325048 65452487 911698350 757265362 30249191 61724788 307456641 372614523 212473044 51665843 428043760 622879658 193184742 997735544 316622214 145924637 338422112 539566401 803382930 870072651 966896803 399118883 674671404 10445212 746480400 234885435 714505171 854586392 718497562 481183509 872333887 211888727 858529212 365112908 897171896 75182223 3792875 851489099 840704116 620946171 21043691 400572645 389050265 429085644 7461752 638102730 77572575 843404299 671342980 356824971 543773734 931972266 467186695 80312105 386087077 420124563 801675200 911237401 670772756 503425293 87599899 330313727 428713258 467521247 58715659 671666801 670570161 882026003 276374922 818544980 358164249 431493211 216641350 168907983 636751866 143164183 504907429 472833963 983065668 927237444 266587980 730001667 690269598 564088586 471328303 720643945 633782015 418809523 831737137 150595833 377811525 522287952 791925088 567050762 675121326 477555444 323773115 577828941 614298660 166075575 163519170 642479191 816604161 217288148 140480957 367706453 508529238 381572521 38999130 676481984 283700452 851767320 981524373 813909183 499220303 216347533 248797359 723472603 38778362 118142371 193421856 920950765 892368746 54567502 119055569 622877085 234471583 302192437 70559358 649942091 932250607 536441641 545522067 185464659 535801255 428538363 564985917 420884896 836255392 608665892 153249102 57723615 289530957 989548524 156679472 550929238 1838556 9561218 950271453 334013952 807266216 434694993 469261264 180655468 880632269 919901429 23620159 990233279 881632255 243968592 607378196 908036340 687368887 222550592 705859254 402997558 638736479 98164492 456696597 174748482 718702437 17857834 91073644 220214945 535648324 534661975 543846615 629942239 356501505 531014051 627510461 872334882 498930313 796000556 254226944 94632688 458608635 156075252 901349287 792938734 659458613 570411893 816259975 936269034 344150377 574447364 279064657 377771002 485477402 689027878 344103526 173182485 296362543 390233913 175753154 395520758 658116055 349869983 488524988 220296096 427849929 695398866 29549869 38092098 32982243 399072364 777012937 385724208 703748308 853798597 770293499 95553878 970571907 652441666 749883482 793524619 668179073 189192608 484165016 706438660 612452768 718803364 932097642 975964895 621204698 95180426 975721180 354424822 950074325 101909335 791128655 211180944 852042437 66038220 841730742 505276543 521428638 121212381 918050977 955191072 487897469 181408688 743509756 731959499 463241939 538408980 340945885 489923997 270730397 654931511 46697513 505835668 804770702 919068295 40180818 808552905 514387739 154694996 964711193 659699339 195804135 719200923 429417441 837717660 644788981 179819783 156761454 555010418 839339370 335976489 107100851 580446123 278454589 339631862 276402229 540627791 401133816 540406040 695378596 631223709 821415872 572695870 728814126 942718471 604057501 167117198 775387455 46179340 691245126 298536961 640996704 399828432 576793555 709049908 549242362 862225058 278161636 519379591 940653639 98509925 760676449 158236373 494758117 692861176 116482899 205553159 123502438 406626132 704286785 613029428 616871071 988763838 100353232 922029392 260337250 366734640 336830905 807800109 935441664 527145602 315782243 194131159 799718126 842846283 675968432 960147625 761111681 55580305 336529554 609753843 543312439 134335813 547118194 150491630 933725746 948873789 11084967 696851164 189479362 971703871 674982843 395173423 929568808 983344653 329110539 296101915 909115003 524841708 549243939 530441246 9243826 788431181 185752216 565388086 317654969 859280633 410306631 768557552 439582600 537877992 956413737 307307387 798894321 856399997 834702309 608225922 413848259 238252411 793325970 38289155 192961238 607793761 831732986 264986543 998903637 495826970 206715250 251533512 834878103 552966997 930401056 265546270 571159942 707487196 413530419 517995817 656306360 108193818 108968108 592227081 745852662 190451437 611440673 740458768 569942967 611231006 895873358 159696833 69011255 370627040 762882693 916652388 824330417 583225174 923270037 997929425 860637569 669893862 999757152 597189945 344312415 285868355 729212921 800957119 117889603 498632636 633351555 434725876 383624016 747820644 700264667 370648830 362468468 297748433 526350137 618141927 869027459 307865322 220223704 192192938 962768276 286879697 162599548 269815960 864001483 606900729 398650546 649416501 930732803 660031124 906604678 212528268 911940118 931046022 764185201 419393220 391213017 830358523 92889196 859287447 974214331 242674275 770038440 90853463 804869879 637691272 355712775 479547899 837776762 943814822 896739064 638013134 710422366 53480066 318256272 716659433 843527322 527965563 93832715 54825798 319181251 602583762 237739824 227084819 9688634 139537830 8287693 388363568 960333558 567657227 24033691 1092225 152057482 40037941 796865743 449527301 511818748 551021949 14888694 959360892 968761048 299378032 370166553 870456313 618367906 924161755 909876025 396972871 482279730 548783777 535606428 889566379 512496223 3866983 746616653 510144580 945043266 16462398 480469591 319403552 778169869 932585657 875775848 27193375 401332990 614126759 139088641 7864569 165473883 192006341 297053804 664840145 14913990 393903113 416473069 317872728 222591665 544161167 723849947 442244972 221362286 698615433 752177121 433286020 688276967 194208604 262019052 614149640 813679044 621698958 203572079 283359405 290996474 107408140 377301778 231220208 267454128 997400770 659648049 885832240 371761992 417926932 140873553 226966001 410441616 614299870 951432926 547618130 378960983 288197929 690310757 528490111 627931119 215783862 23959272 495031382 403468899 512994098 343669082 967033643 244460309 871685662 941676407 382226656 34691725 787091756 165310301 426419733 622200582 236225074 550230765 200633355 879539806 928008433 70572762 724974514 115671027 23075076 555528789 580800464 183774535 550560555 55982441 131617830 498981121 392390921 173726794 799407666 437165670 646025543 578961125 918355970 184538220 42270683 445914065 331555616 246960368 824158804 811864253 417894605 788043242 793342784 171847623 785224111 961485446 518036727 255993299 486328291 421149216 633733450 737246244 154708848 52320603 759709980 82354134 171421041 168627437 470913191 810027590 477137688 547831202 961173222 61039690 222510484 171166211 576209293 516825367 226121360 101885363 924568176 421076954 624148771 19982651 722390654 803135463 537299868 71314667 956837676 192804369 52435386 435310986 687444958 183242101 708729986 331700552 554593942 317448945 775742688 723125621 18535312 870443457 981084803 342176545 38190229 596868061 321331886 644553115 919658134 96557328 186072556 286047525 983280089 553172064 627247489 336558814 702256270 883763250 953838449 844781570 167157757 559888169 787360421 250078124 254826607 351214037 902025068 39649573 873381368 976811879 264558940 269140283 420192389 943254791 420887963 968967290 717334960 615023439 882652749 6397627 9507617 676709788 410272689 227416180 920512162 463434358 979880376 784627938 561476483 375688242 938571438 891181775 661129506 585535681 641498744 379354945 256532048 348570448 455646823 737175906 754810461 741293903 213567782 309559942 552647874 6920243 519168171 430741572 887914402 250246459 294956761 372384350 856235032 231612666 822931601 432933884 506500641 25435647 74562925 977792481 510537438 14295627 227238694 274193015 460911306 32849612 602900513 631358386 458110963 159117846 732511719 815451805 218818614 994454652 670966088 263952694 91048054 317600710 54601542 759046953 789172592 486093314 241527823 577237937 216399515 558702760 860518270 879636830 562979192 582071234 189716119 510834846 269008110 703955826 356442811 326396418 56767733 507723402 470315495 315372011 423307693 206558166 787667046 594097471 413069907 936733594 3503622 968219219 202523832 717889890 957273575 32747360 7553141 34360465 92867502 207847904 722660582 702891859 132286979 347023970 426536371 368097677 380199506 829607160 5900548 783369846 310619717 412632121 710074362 487278742 501103413 583032332 193073184 29472534 94809230 815717740 442980090 83352435 415210994 200027189 717310628 695174026 842895429 643945546 903821786 136915910 753954817 954198183 976468055 805796011 715014606 310638206 752957974 301742179 329461019 487409103 149715872 522176976 983074654 875095018 917982885 987707535 85590899 933797068 690876632 382294222 180043895 348719400 258794330 656112811 667138764 988391402 726351552 653739604 976585051 471904528 633818100 172742003 4898917 224473665 703751770 577834678 603874700 221396471 4184594 946118969 644891880 316123680 396275877 298937069 854292655 871182833 898492101 277522478 700413614 754939633 217024596 592731368 478258267 389809119 361195389 961386118 590448001 786573503 648370237 789847858 494660957 714987549 62282041 219362933 395964597 195579744 981538256 465135241 470658327 787389990 114956877 779056807 905341777 409635420 412007675 718586499 355982891 912229240 140808518 390837855 845969005 802911299 494224208 232880260 271678357 217979531 108101513 553458881 362272937 523278235 659655996 736860171 75438667 507467402 180954388 150121459 741639677 142724774 295571640 759227995 332926423 65035673 419290129 564359226 528213199 126373966 336614397 697231711 481067417 331122919 656813477 627981261 975588167 898476904 920051184 582718409 340674378 343836437 755762674 813613199 821649661 108726111 662334481 942797230 539581841 880971900 592088353 788898765 509774322 751133938 191079547 757379071 497624774 383189605 251680345 144730205 529095989 183827223 752815530 292897162 127225518 21450492 466280504 23565590 690162316 546036592 213747872 293592657 724592932 693656849 776622508 829310759 712001788 119577966 31452463 524398645 385900201 149683651 921503824 864973596 36844878 219165518 165351171 872679174 667610765 354728835 472308719 17332231 941226404 1892061 107701934 854753248 249675376 599327583 13893691 65297881 415975024 301746967 34862406 620502616 688747063 523925596 53814746 16817397 251032518 398942281 686903572 241905029 666125277 262130157 693827849 920183793 701782253 591025580 541799511 513685468 335693567 86666691 560791070 110519007 611959402 783020062 931421534 366787106 238784128 845713730 619919552 814764624 336878669 781946240 355779623 916125336 219670454 1421806 648763867 443091019 593788218 199709440 777396631 887661201 125263282 222806667 581472704 192077354 534927068 184581235 281193220 122967772 427541027 46947477 110263558 125369269 234168291 32654200 644435266 481002334 207725112 68098875 853637824 734470886 923134147 784605119 740300706 933653519 161999594 865399812 260340786 207078873 533695531 599334913 297752519 757061563 996890823 56261245 51263213 379050319 804104232 913915093 824725831 969522939 715821292 366077151 318812435 479212324 334616250 178085772 159526982 353321353 268482569 503606089 78274773 989421763 285106516 198698844 322955658 207930547 154473753 449213731 76190682 901336134 987504706 210507019 606016585 337621350 173369541 382993785 83962969 541654215 869790332 697519571 1541426 363127674 526107402 385530831 20137935 180995947 66169076 598195300 70247519 667243235 399261912 759239737 161709518 410608255 42387987 16304491 493867644 764399285 840125084 810710289 778675428 201177844 832395130 19364028 930878381 847502656 826129233 69028083 956756506 165028291 443002489 458687456 282618892 870815237 548839090 83894540 356670682 677940217 634984668 903512691 781408182 393846578 264513286 514392642 484083299 820674584 84635772 565657459 383762871 819240367 604962690 883641579 903714280 964029069 314189412 434581809 429348591 934682437 278339932 972680637 912318945 824809168 95134368 196129156 87779355 185044230 958766595 223326140 711110946 482900325 822805121 921824574 848079912 366419577 404600971 611883937 949533659 117226960 361169766 911850557 746088214 986310773 965761779 154154231 606311588 199751877 415283835 522401068 999481944 546458309 726391483 994258801 673946116 147349592 483487621 574131271 848018763 389836606 648680009 227641940 482792705 650077644 329853765 78763634 801548076 972870381 258996970 353716624 321372722 193478524 630305359 401572303 692288029 633428637 89648630 614765260 802638309 299958617 601092085 848861457 529160410 841770777 139735376 12828404 594683797 325127822 958457712 554983883 9001856 744574648 798180933 241994561 293280855 991597841 810354594 587801452 773498065 278906475 848004197 187320933 942851492 93981208 464714780 404942595 23250248 955764417 463848175 888432005 25077234 306781199 454957235 363553977 25031603 491820667 512368257 142201681 507094246 732474420 86456391 592741627 575209700 956299563 145864385 580874513 961720224 98486706 177902811 313368853 221441181 787854393 509515979 373345472 542237718 246474901 132248350 7708475 45760757 200876890 879140353 337652335 106282313 790218320 199076056 500651541 176815887 510679599 808763769 541005326 898510210 245260316 742609310 77543403 121403248 981833231 794115051 170116816 451122612 282107576 237908064 17921795 215262847 896816835 112178786 654440525 532232586 114300185 80701779 778334349 177418179 42663693 668945396 316333763 987266462 612245547 101031120 969971872 961999383 652423927 585598689 52309220 452633682 390104063 779020752 441454558 481225439 698028774 822823159 803442127 433434677 825139440 920241709 261603880 257885532 964602174 472294211 981738784 375834874 387165266 434653028 367368980 427800119 578145642 823581188 92253772 492142933 308749065 203388254 977264030 816083008 630938923 20174904 427192456 750519956 850644136 786156849 939769787 659250473 946834796 485371028 76372430 907080055 598185560 105688681 7279589 1052111 801873328 753918998 100123121 779187752 264312121 662026852 231582830 549126862 277658026 354481200 414585242 385355568 724009151 27445569 863436308 976459493 804421779 215024195 883705104 909118504 233127222 824351809 95700059 753178150 266558925 315119333 409337276 823406635 774112048 55677158 856350021 528690700 617681649 5767738 432108812 517370682 558083779 547921434 908898328 615352698 36816360 589790223 888096033 171485699 328670535 324060527 241953902 154448872 343883795 837599403 930942319 840069451 35629463 64631353 818967916 5670064 400641720 657516492 345895150 913865696 815388872 557764909 957239167 69746508 578701698 305911736 364345723 672727185 216584571 164810246 722994599 730903270 290533555 919140604 701198873 976422015 121455434 767026572 850331544 463414019 373398778 416104878 869738295 120804804 368321118 293577141 523723122 84523200 337419148 110175657 481916039 30342309 804364966 437387237 582358007 22243102 759905328 544595980 134588904 132794556 482277558 287409553 569640724 425339020 327661487 814331531 7846227 946905854 779347213 588245657 653952687 29988386 177332664 10412805 304487093 777415043 758508325 962415717 171492462 459675753 148416217 843627499 527872621 500414441 168941149 305040088 869239239 499175358 921154705 941103518 307895738 286777813 355585706 367733372 129373354 285138683 279945614 746255517 120842041 921841092 751693202 643985624 109233107 749839087 208163477 253715708 237064381 841153462 403999696 728745928 997042634 559093192 440330532 686018609 18923294 383801611 215696743 129838154 680034741 812803132 755533151 559131137 388660518 274637665 158239383 899140915 187006938 134408438 791607279 543555364 445623736 624066992 896268976 226674379 758832717 986781556 283262708 419071279 744206867 160895506 901510859 131627795 129436088 390545594 260730446 813414838 547008710 668832872 16464627 493037283 509614581 410718401 64250670 891729084 486239207 551447851 603522645 605394758 698392352 381918842 384766208 408043789 156694179 661760901 910225539 441981254 238810509 385324088 951327826 106840255 849925149 335394186 203734962 569269044 862635900 924928233 605893801 91364642 595823502 845171049 242533382 60871615 387832135 584761147 649429221 618216107 839077785 824748673 349085769 407720647 225146780 215768603 190191561 109313783 23244280 270095641 853219248 915255322 809316877 346521985 967972720 554137219 550293140 971937265 786718095 735942219 448845743 757442519 628291276 872507080 866839438 883878408 942448188 559744709 448368254 655257234 750211637 57288359 649497104 999175733 473039791 100506325 134788570 250242031 39709743 515010277 303730995 18427185 228045644 794318776 956448674 116094212 854009822 337757830 674466169 899488955 480018910 320461748 752984895 508933169 458744320 710483059 221510491 825209538 550630004 881642637 719745901 828320678 177891483 988691919 871999728 311640953 667809234 453635813 902880685 845445997 792254871 327217150 76120128 769314974 905765791 217220529 163272236 861695515 49091751 101695521 529410057 589473233 260377934 943501511 330513016 836896766 84817397 831119205 883103967 730543593 637575151 195118494 792925691 236101195 506409321 637026300 926600540 491275632 223341120 448115897 18840814 762625502 261154704 717075744 615345148 613533151 817954082 321647855 305112307 342546039 508218907 427053287 356415336 485741246 42472203 142841462 676820574 607023423 830336249 601128691 405049838 578274754 579631079 249460321 133235462 999801171 707467094 55736735 934496641 584645042 415771868 215879130 271025966 708045518 292335950 447178495 254371833 367520504 365681925 939626554 688624675 780570501 707015486 183865746 816467018 618811118 339146279 603222032 806987673 862410577 764771006 825538309 648470533 656550565 171361215 250581303 462846271 773201704 672202445 360264719 656001665 251018240 344369845 802179402 989722726 557595579 970386620 996309516 461175627 194132033 689325468 838900417 856102519 795219220 621414122 182216233 409027217 411058049 917398338 621465805 705025461 812555294 271321960 567218775 321795378 922583981 923327633 883194705 944948421 383553648 735958389 883079515 324717155 412266137 450691466 417868869 217911114 502239477 841775132 135104155 430126766 953122567 63563736 817502248 930549997 277401804 360799710 609860860 323033257 689664134 878968538 989512488 805199407 524813451 315038615 963953545 697962700 705313896 687922317 537016323 455162452 911901164 556201346 741855731 841556174 325215093 47523018 44341306 813309536 324760184 954211270 579852292 75363989 46601412 166752697 670622982 439099611 214883948 742053307 510135390 903480998 340152165 853021600 428475541 806112249 981705795 343298143 165803774 675301148 354630927 8271 12550499 308901709 834149825 688664592 831250108 5106395 222450950 109384742 449896522 904878960 291379087 754927015 468567123 674756391 706218913 899498233 635370473 21242434 569023953 528753417 362230775 123905276 14304278 188873877 849957053 405725784 298085411 916453303 928390642 528798232 107702829 985225881 99398718 474345725 110674805 681855630 482170051 432415868 298958176 546936195 955808309 558173183 367342176 220830138 665773873 786765360 277040329 176497191 746961263 138156834 517739542 482826558 442108722 15681660 607951439 699742308 451587219 934511050 9495450 353260769 2086795 504376628 849017787 263960724 984891953 551840334 899695812 359701184 62213484 142861985 785136455 672445652 528740450 189492068 388360283 639042128 960896723 946543783 400110804 517486140 8929892 194103320 182475965 521763695 306287510 539483813 969706599 211502472 836955776 859159652 441163762 885160334 393980244 487378118 696077573 360873226 551601452 81601023 757006394 375966340 539890735 494389390 653209110 238251257 890507422 586440158 904261496 720441489 853189875 995992660 299123194 698661588 616980085 920213188 146872371 459167527 453864552 108670624 891894306 346470821 719553016 462322698 341117195 145269955 305746154 683362073 878206426 320226726 426295662 435259827 104204071 41192411 400670143 991916255 939792721 970354518 826705920 49382246 529892630 478616113 513168688 827781256 688813980 689584186 792851255 584862411 123639693 389049660 42997989 219683424 792850568 998007683 143344658 517335585 97235346 723044843 255961707 792794082 765680318 152957474 530117823 210505073 279257723 506182370 592936812 579451404 960806885 623214897 457133554 423134052 661596778 934873966 493460095 160623949 886728088 102717414 828608136 258708552 784882254 773074673 528632144 69806552 193900526 633986153 869643905 578930302 909384123 247997080 811772212 820926425 385392005 12219088 270866668 258862308 384827255 159455552 64744543 187857383 384351115 246423017 683370942 954799939 225324200 993113006 959929566 708113086 645581417 477029268 53568189 993144970 951182796 707580574 662329027 952659308 538641229 871966842 100332130 29817125 888010371 263043097 300593328 369167845 433256447 929283255 913260370 96356819 68783903 647139483 940211032 50901628 206833186 645976372 192871877 294111464 914902082 372515582 419937915 32785483 99257085 342205536 385601154 777021133 85000691 393783446 343468937 831297911 849867943 770738358 540592160 329874252 872106501 676212418 987765878 116466431 8081876 221178187 14066192 20780270 172725484 317132899 221728053 26383598 74835105 747138128 928858088 862335085 488999586 495762974 674977325 500412724 499382231 587915174 288438881 162861477 609499663 789916803 379361089 277144122 14686381 263264956 301772267 933294623 669896750 871897725 110614432 756040363 125956414 96008030 858368783 286606779 100066644 78712840 684970529 414893219 219415593 299716781 419119666 828884434 114436614 33316782 787687664 82838613 238922163 265048632 237256700 139329997 168205612 504220301 451983767 800870969 491570077 325518422 474711077 248098751 338615252 822314967 380728570 899992241 775842109 357332322 963828318 520611906 922795509 33745546 534300449 567279518 576923489 234726188 554282514 799428814 655036597 662389070 720984382 366633727 53103511 22571252 547912831 809317846 801764256 671362690 931631463 224892617 226983494 679152055 459692578 961216077 22263154 504201025 629157877 158563274 879302589 337360759 720772333 817563035 998402205 944341105 810209692 504553898 237953832 634143610 471155222 589918007 179327058 940817065 373979467 137194987 225257550 671796780 352026256 737914187 403065552 416522698 654365299 491221645 34586964 636418872 351109213 145057608 636833015 106372485 353548033 433404699 585353553 962306677 242641427 846384821 910953691 577242030 418657444 825736108 535054308 55478994 572713139 484412116 583066732 458207008 690282322 872402071 795241389 992689915 391797447 598108190 715931188 608192608 755405276 680706517 875481515 655789874 192990920 79753682 798172556 10607916 558351394 372494163 440132224 744718423 492537878 623441238 790246462 600942504 473119011 678316759 198299356 22989768 50120583 520510477 736737096 733085428 597701143 122949708 672686681 691597358 681584228 569656449 564963651 44635012 809099655 15051029 183296090 666131460 440486906 204160875 640246982 113156248 272231301 248102581 962209971 46164277 184701347 415193226 775702989 800452391 666598556 201519441 732377553 543429530 47377639 804740568 481533233 890814533 651890331 49303087 164870432 616118187 368415090 673616133 248841040 818047489 714876820 189402004 919900209 179472747 526565879 86086014 499598319 891347952 130573801 944082000 510311927 645515552 17801978 299306790 142066042 267435641 663917533 848869208 139301418 633029283 239661181 610673906 949392346 784730123 663130376 491458931 481493500 898483381 204544592 491814696 577122533 363226741 875595650 876448724 703642931 605842569 626680201 639679876 807956941 139113136 868233558 247280406 104666811 689118695 64944806 498364023 840738835 202972928 713307518 644092146 515591863 292659075 697806682 639857705 888488937 214626098 35572706 612555742 760169501 267732444 556742582 331425177 315425170 986893814 921476489 944529431 13603276 712494485 100067856 922071577 140993490 484626560 578133328 678793736 566878802 768514225 246167225 232821591 136096849 480156292 449789173 620336717 796267679 423746139 523222107 734085305 673590140 811698207 482756446 799070262 452958969 629822909 504055117 595163197 918680451 755201522 42121797 611474637 652035162 218537245 450150444 599200773 985296381 786759914 320862391 945638685 679820 303591041 79579298 63324415 209156198 620004280 162444703 20330314 895770340 878967682 75897176 452181493 14251786 750134092 262668458 214872669 28271601 301892829 124046037 327979434 805575229 136225800 802092786 836219494 680742849 240389676 94340486 387917093 527029237 492203725 618295258 425534382 218108119 341732841 948129305 44133575 516623635 892777470 218441525 527679079 755060320 364958476 359192136 562395947 708541076 462830448 550015856 213712946 407585135 902054526 891832698 570532468 507739568 562365329 830144571 34840378 407531770 108541815 343808383 472367817 721813527 874494993 801556686 361501415 630317489 6201678 955437879 268099858 697882539 739772715 694688375 940496697 568433423 904090328 388872799 871644290 15207998 907616535 700254726 730872330 82329769 759787324 640928384 521779768 270499320 859091060 547321176 167678864 965062452 522622272 216875766 364387152 750585923 376992889 427681867 49774236 669348432 287936376 283597335 637520987 755912205 820190810 429709464 257447094 813018121 57670652 224765695 443354756 40348192 709827785 838373473 425791807 987500882 438938500 426511139 698359243 478176185 350615671 430019761 37365389 56017152 69304 230931117 860357208 992026588 620335215 609475773 950402478 566434430 993223788 863530864 252290006 578244116 864349682 359584390 480274246 526130702 647260570 204897297 505615148 844098336 64950709 281017007 239361796 344730387 960001423 430461018 6942915 196614930 65237927 580986869 947090052 676608083 817209320 672279597 872218902 227674488 415720163 141484910 833125167 624490825 743711876 534926141 582334777 258189885 146944348 968997822 244356459 48990638 602430285 64230682 497494633 509319287 268276544 325699529 620880427 515343362 935412956 551844790 612240415 680232555 80237499 774241994 140443208 470991971 206418607 565106602 917265386 614528804 844409391 742685320 245209066 795986531 811222726 893680163 951726340 780226770 563000386 356603594 503993692 54484236 506791923 233719287 3847283 402626645 725566105 369123266 63769388 522901477 481463399 755954256 249929086 51871159 768952142 623243918 414588405 894900894 645318137 61647085 251192001 694359395 359375744 860233750 792299584 61963796 82871093 86327830 126436532 801319916 357962092 903704363 388174533 466554049 657721217 112130284 565462780 557666135 463375633 189579085 500935437 497502785 290123302 349021918 377891423 193073137 810872376 671945573 857391527 766834138 814381067 369078644 953161019 346912452 587840277 841302421 183875393 455386540 651140935 659536253 687683052 818137814 112258420 782029157 538854823 308169873 349961754 966713257 271706115 732387465 854065619 338174275 137412644 303845943 975223650 439928577 454629145 842409390 668253931 675269388 44137141 493007380 691898305 188060455 491469327 900627031 323837669 496732496 504576274 898895442 779415337 818968579 214731412 101377167 125322041 118372760 733885018 818012102 891688063 332705947 920347985 244618657 263581375 666596764 210573313 259031529 211677742 697274072 758846733 224153254 958631953 938659837 358251281 717220122 374993025 133194183 83661220 498217494 263486034 637147040 891155041 162909184 954152349 251810196 668110899 200241005 993272520 405067582 996943132 55296360 639653823 432315442 131731847 185843690 808118184 702570264 321314745 298247547 628883423 76226485 90199280 76847962 517083305 658064880 251890335 56764857 81358593 498781841 810164443 527146294 772224676 454083824 148831181 995320338 429696801 103139439 620903098 389673201 895375998 776965306 517865991 421611124 426374801 533655495 620237483 146194797 88882939 261816562 329977364 60561491 150882254 166110347 904075542 279945721 937125747 129042898 6128393 571532581 563598951 818450080 620533915 864070507 798344441 649738449 503955537 471290759 133521505 170632866 913623233 585007846 745955068 745703568 340055643 281985225 529160036 396710665 819047996 130447733 178773687 598492820 477994453 657803766 865383355 13817035 782620820 526077652 309366719 959284208 116328214 689805432 168463561 307123221 316781848 933121210 943509256 415081351 517469558 418732886 807609868 553225734 182835743 788536240 898911812 290073049 491443813 237550040 352190580 252548332 213872471 103921723 60739467 179115277 304642562 770216203 444641005 99941246 10361858 496507408 414652197 71921514 938759484 995212190 133613714 750272582 528481729 612995112 781182121 236569276 806441238 599771744 517111497 59111209 106685783 325428051 20063340 757722407 240382633 438766270 260944153 276878061 475866352 846126043 788202914 357119599 358142767 249759641 673040830 122986499 645688232 266436336 4773396 252185770 230750738 554895970 319107687 532161549 300575165 813399443 319522169 114340118 347227123 767590655 483921119 125663620 287488289 245866684 975725908 656354953 265151571 7487028 830134831 643301673 332231924 934364468 696534977 983277253 897617433 694279562 376840203 866050438 357507068 569319403 214183195 16290348 274104504 376230239 546361690 489832595 251220403 281543566 243637660 774278188 845532202 603301192 118252921 506893216 257931735 322700004 333503396 512378611 893779442 966947611 105881596 520262663 173481688 477828085 423649616 59383629 102750473 861715545 461720884 441497211 428216520 116284393 926226381 366159727 96463336 930946012 375690108 359486115 942258484 998787857 60380233 673621371 791422879 786738036 583250730 468516256 544923268 643090791 419533815 432499006 438373192 548955105 444748492 987810880 434255177 682090863 322898311 382544143 952948534 407709623 906588568 873881043 747416565 599095140 415730282 93687634 262063745 751244165 875179907 11645892 637513528 683462637 8244072 102275905 844351421 384376677 315535578 681977156 868157236 407858510 781393769 200695925 533891010 920249719 969695393 236099893 411059977 851399610 353697441 759467120 946493807 567661787 386267782 138880672 666344865 624885009 928672464 741079526 695778871 37516447 15082478 935247259 555187299 809704125 440696969 191300833 603500133 492304166 525603195 403840747 395143269 813226907 480356343 954566386 92810719 625265303 977015069 394997624 741922626 176911716 589988470 651392819 444379692 625310911 184779129 649540102 381008582 150092351 489611226 789283543 725711027 817449340 472622395 705912032 761417551 134315462 415789065 446619769 351869788 617549197 690755395 228521639 207868447 604385147 230588159 972283391 477263441 407138801 611638553 634275934 96854250 812971189 526495871 648648743 666908789 917027698 457043561 474882720 180801701 139816926 67563895 432803497 224746811 743782452 440038565 818485755 624650126 312272618 50744826 256177743 848372249 333311818 769766367 303159108 62393757 469979018 262828137 34369294 849679858 701875813 218329576 302766664 43041650 1473669 905765203 32499673 670261909 746587066 737136787 211840654 146867154 388413749 560219810 869077721 918268436 609673305 252110936 439470811 193689078 824450041 591375017 727534598 739675731 441020664 231464634 680827621 643164343 972626698 703429458 811042609 30519025 875914977 948249416 704940549 296622210 730062026 952803921 80432550 524410296 697951370 245614529 189647530 273084470 177219628 542276794 940384242 498828180 962932665 785319170 862209010 469048026 626993075 248141244 805638167 419867441 477077737 133055401 484121320 179024285 928424143 358556840 508745330 498552832 995907557 542460789 459318371 316022019 566071495 463743456 364855308 491473100 348117531 578415125 735844999 880643897 994304444 923179278 877792236 666457962 979414399 258820188 235699933 847229239 430837263 21345279 821455594 434972313 320093825 42910749 811708308 888204854 141521357 586290588 833463909 151851064 122489210 177880420 340763863 38864228 171885449 230508431 895902231 110904355 596328829 453836942 46050423 17615270 272655499 373410920 495830153 889942661 960777497 168390398 599093423 444498207 751039584 698824834 121932146 283835700 257218696 728331388 153312156 89219459 868148092 608878050 752496325 800051924 242818973 581738781 370033404 806105520 510946642 72069565 980271031 179443386 744529431 130149779 719644181 5292941 931071694 99489546 994687043 679715496 121362709 687971454 484643172 476826719 721442756 429386932 973442472 966298837 895527931 632194353 704806376 823697140 618876629 515832781 222142688 505025359 547814810 922360061 435294177 866894933 2015264 404606159 267380003 832285884 458217209 957684510 141720132 98736804 77737832 173312744 498980902 532058567 692535831 348999473 726097445 80410366 472196317 400301269 351454926 339162563 152458833 972892846 283529837 393805237 661310740 50541654 516018621 708944883 741183233 656602508 945139708 864595891 362290769 863061453 562016612 440633178 356374867 995640779 983471189 586943322 738397435 659221420 355916360 263561188 452758054 914988359 448199176 245640907 317455324 678401856 779969999 884434401 134768587 931434012 251745734 212406250 857239896 941947986 960108478 408275240 495437058 272875816 104722927 854769396 212969034 923895148 966604495 922824587 715593772 573408860 964417737 314642677 201588207 253297654 204639555 135526247 177510743 385937672 781788209 602428221 859040037 8809739 873249201 91882569 381377998 801189294 543228427 753584446 771699374 423957055 621410998 488591002 430760139 998955832 427811240 973483128 295784473 773003243 944178788 830163711 850021047 577492852 538884875 429390897 655730725 710002668 947228330 396454472 986654232 438198579 385742482 808650243 973433175 175279342 236613101 626537251 79562923 872979519 170826838 107271209 657509849 234545623 179361424 619161821 584870612 645074229 869757580 953633817 690937308 461456277 516992996 596479779 190307030 841837491 442227070 711568268 508680602 114264863 71067534 339290944 668524597 570212078 829076872 634329521 603562576 523197364 162927772 413440205 322408329 509589653 810079249 452299367 139398681 884790967 791228431 193355756 173498880 604711351 96358633 907496947 977255634 554297417 845833780 306728666 253827873 857428283 492548751 529144864 948636451 353438883 586700267 796121446 744372271 853095758 153528407 741922741 391756241 665849301 626703997 133387859 487550148 86876376 54783237 691023586 153106098 481472069 638611316 607457977 17957655 443600967 508453850 125619266 69958425 574242030 984938129 678274103 70847078 99683710 606510209 821831969 104702907 588768865 539156765 702972455 224979332 380251885 420446368 646540087 583074962 992640990 893091518 421840937 822779176 541613230 7471442 369802198 349923393 242547795 870701824 244410379 774610623 386564167 616997676 97841949 713438093 246057076 682129172 488809905 687313460 926988554 40943685 825836357 433504062 132677414 61342556 823748372 201420339 977498690 396223075 967384767 216626032 736532153 278664268 422377103 17668954 394258161 774142905 320849834 91387062 475744892 98674294 592540171 268937633 631750192 718110078 728968734 624529342 778296587 46999111 477628605 100445902 284276980 569269543 934382885 183001560 898507537 518292425 523827075 793677860 369628452 153756516 504624026 474701962 278872852 846577356 891681280 622581407 978479207 762317551 622416538 435333810 793748558 611313863 766802780 612080160 392785663 135722360 537182153 201774072 56380688 194693579 868014941 44979236 180092006 489899786 642186349 40110217 737895749 786002588 777253059 865945339 584431446 352229798 72925170 77146125 618266859 893107052 262152207 742003518 784720795 928382549 695026324 826498081 653410803 366304443 956081341 165344427 473980265 336725303 93552602 167825873 268094228 869498537 307617349 557593770 361683935 664578578 523044211 10295754 778346337 567666676 915092190 897756480 445622843 367021201 95388611 495644303 400730856 970123700 138424740 889724132 937944221 191555569 467909849 160219833 148219018 366831956 112180052 354428952 586308846 144144058 757372406 42683280 554901172 800549531 171811981 718771444 412884163 601531251 22635676 900591577 425484463 858646140 709140907 340650655 373937833 397572075 381265241 760700738 154691434 77857839 354447880 338756318 282031134 334510881 220459301 399860597 238145691 529576049 842555208 309323909 130353836 728326594 353036312 955269540 266949598 706981802 684545815 618652638 86036682 181607289 982644194 91582993 936141079 160061629 338290928 157596341 757961381 321676148 834478988 996704418 933575333 295650658 645738248 966979754 609754045 871306954 912843396 307813303 102061112 903898582 795118572 263092532 800723574 282020840 27015071 431573898 26828161 222821322 879553768 947950426 453716300 968462230 368108242 128057136 547171966 847659798 410071450 364061110 502593952 354374927 108000088 52343141 427720499 204952896 523361834 935753200 792890809 980444602 185054830 197174651 618263045 33604893 804752417 919349012 172370578 675088814 583336942 208048184 468159414 142400981 213630467 302057847 188449458 855939949 182309419 264500339 346814616 325160713 428987829 734139036 697299535 507659805 849043427 159134823 565994218 521474036 260795595 691089154 63454404 678138571 661482492 346300605 50652464 472021823 368125587 18401033 239854900 584255987 995675094 920668869 849117134 877472490 125113382 765163928 722536283 28520202 17779728 114405056 739283703 957916553 416015761 152495876 982719381 574215757 734345892 125887146 788273548 44059633 226354547 246094692 725513905 703257224 656061739 607040802 519590135 171730159 665886575 468016296 209952367 504547182 20953266 74897091 654868684 256790189 554589838 539957047 182139822 907878566 602768059 846512595 362724231 255758072 557435049 275294397 536870322 904357250 2792461 254972721 798206625 436968018 866875517 419143429 145615141 378762024 974471171 873134599 554376616 727384790 303313179 488298902 42921162 500064729 92553959 86132934 660863419 816275187 562056573 826230759 908011813 41631050 252086532 901704568 671559233 739420031 227734803 4833752 34286073 273539408 448169299 229471576 580903434 595977623 199671891 253535494 576576465 28841440 656295769 759731724 422871600 918192554 158006243 397130879 793688016 745081364 731543423 587185381 793077921 864447947 778099245 877740782 898478040 248577260 689548754 435600280 640040179 409536136 149172583 824967030 36271653 582955163 9741993 293454870 718386346 729051323 115430401 184818952 265526914 268818795 882651810 864143406 322899833 53164239 88161984 234220844 520131123 440399713 102583972 156786829 825156163 849157542 166349994 7750515 729178419 13572968 412766420 754374044 949804745 451302053 89938644 344684231 897354590 335685751 739183341 734487773 2756404 174906865 838743943 123955177 412915012 449729527 941124598 373654292 120806715 675963227 405923649 633774439 861624415 191337005 698795918 710031374 473167399 180066199 109744901 320001112 669177360 552465544 851323828 839913344 43581953 764755181 448644344 335401343 607515296 16994820 355130167 404078551 573956864 384765273 898678325 853495470 537712141 155831857 718312691 691061087 815176752 827280160 328007219 566839240 606964908 298552936 854448760 139145107 151144933 651864783 306057383 21414829 116002320 181981592 509556838 682465652 305676901 421413693 580723200 522294053 9682854 398235369 535199342 987418269 534944351 384855193 115483421 991598652 724624409 297018766 234233396 709320515 421788863 602833002 645001383 623850185 708842155 951993012 908872231 288550879 318023822 765008135 661396948 330246462 149104292 392660024 635297721 918897386 486892764 390528829 122562806 706691440 861764623 546569880 103501194 351779352 285451469 273175225 270285160 450101999 39092371 786438100 918523473 620780907 806325446 135999978 765431646 160661160 761011128 464256809 775508262 484586699 822483629 364171598 912247100 934301744 6618254 989095432 144821709 698359503 346607203 750423038 388861080 373422199 833605595 388094741 643994841 72547087 551223046 863561289 469661861 795957498 922725263 979436418 887782036 514320157 33208683 938810345 216048707 919133169 347105065 608397709 382858568 289199162 883333547 977411144 738943271 793335380 932959738 869506478 186269387 830871878 889626975 259031863 878566150 898779874 132893074 921263217 351464657 204729407 97367532 72964103 223595431 751897193 246058047 120701173 806451178 319139977 52702711 904037162 405627455 435259002 28025209 443998759 456217906 350815698 939243775 681374386 648338265 226488277 248949249 863470255 929258497 883098496 909566740 691589203 281964836 345565252 34035022 279161198 859752893 731185939 592380063 222613311 238641348 520511281 525451171 538740167 901095731 233370339 108639476 320475034 849862405 715860899 13982020 249121732 282099261 501613752 692783064 343824794 407571960 488572444 51880851 556371362 156581368 224781009 731567488 257936779 891996429 471672025 632314953 325038607 971840091 704853801 304795342 289373045 64162347 101592548 900552084 639156780 100422662 870729577 582346827 82018321 360228812 744791261 481673524 792646117 536661954 636889552 71237080 994047782 943762397 967867250 817725302 706247058 295511010 536166149 827403290 392097345 626964467 672840257 990099950 279890638 246086594 417054093 177025981 757961831 395489198 806735109 374173987 766619390 954490326 611221673 876784069 551839991 494074517 110944077 649058796 616176703 214093655 358113946 860154019 805746716 983203245 552078520 854556633 5876023 308422007 195789873 444691238 327027261 484081009 116346787 309096113 137088794 278428822 345374237 15831150 69024684 722084763 609006219 56036212 745967097 307087257 351622919 166022832 485975715 969767871 237616742 780608888 112259124 990908066 535089677 881522734 800946336 431021101 237663733 617126230 44253776 331349984 715987967 621427697 457793845 878896955 103390022 670633676 773063564 201139131 434020752 632706126 209970193 148971243 777392973 680523504 447869075 174675423 414545763 132150526 360020793 984379062 116723157 702372717 323383790 7407879 678240320 956425693 467103904 163420455 278062418 762698184 804105107 436543205 585813119 971075631 223926940 723102157 725699822 366972238 835812081 605285984 302425131 649644399 774519907 865224880 219949610 413771486 577889322 377524206 772803171 133104646 443439046 223834830 761896686 506132507 97351143 91260936 87433321 233881608 798073364 347173877 814331127 79222049 851885482 29822180 33494463 719147296 169369648 899038835 539905240 502061961 968845239 849383707 731811471 830547961 259508983 44132608 230085965 651997479 314565000 538858698 228241217 887088868 867908951 877661583 113285183 371955469 458014349 287141275 659528158 719937111 316289408 42460342 919161396 697357258 963920788 892626605 15381351 134974133 278148295 202551602 463564309 238729500 746354103 946512992 348765608 580503054 500819167 854460378 920254330 80596996 849450875 432311809 288480225 860740820 295097578 26634515 352519599 176858547 810354742 881366397 909804714 368010645 922428610 190735377 188136830 916928801 401457840 84829604 352471409 965295062 278969779 804629149 597662532 959719395 602248226 222431120 421694815 165296063 514403369 71695376 31597044 751149868 424781104 897330741 740821980 592736825 190892811 373227155 739659027 356426881 865345412 739189865 435671332 5734451 416480074 682290324 862637326 727246781 509687222 677756318 946309119 233053085 735620411 715694074 838396877 474183728 309561711 104983192 760030473 914024032 196780911 328735124 941116945 388237576 737102681 2277816 287180145 520253070 363943366 64200742 472780256 638744458 932818647 970909889 290819002 544002891 973591591 521200908 515369413 514199970 810305623 79033805 180681544 131105084 309376841 296863096 398444407 959677211 902758437 762801215 857519981 980668056 95975314 24638315 967776605 842837062 512213501 321299463 577204526 138973882 806362898 124098128 745101105 771571827 689248443 821695244 932018683 921373298 858871410 587718336 109203079 151559600 437900694 187143018 871973535 363012082 677873287 824307676 52935321 710011273 134058731 327517641 621740531 947455241 381442064 481344741 142965417 664660346 808970642 915461150 879490245 642668460 355158623 582217058 953701832 955551798 499904291 877612085 368557727 610902100 29076422 625055042 826969815 798215987 936570793 599010286 567242484 988137321 941541072 307061514 840352951 56563975 480760395 555790377 834931867 912075382 343354213 901356177 896576436 529572278 335789111 182080786 969133539 111646200 96636397 747876909 673740325 448301554 657008250 614900985 434459419 74129388 982679162 907909656 648217920 433024093 608783373 465436206 77420595 279788498 528430870 716180418 964264572 713892898 630028672 625553751 528243358 204075638 771551992 480683056 445649988 902893125 351830995 142035904 505294482 215867948 58793967 853701561 807616961 763319161 200582574 285375845 217496672 183632763 790323390 219307899 370782040 974967180 524208437 295661012 375108928 770271784 427829592 147116435 634511350 894802525 701375348 831444948 110282218 14428712 70179254 174422637 570586328 674458755 726446221 750620555 280007553 497632675 600227238 921480333 314989344 334630202 795335222 924870517 306567383 367361552 542792832 970671637 217496445 19138982 766058538 951318193 348303587 735670630 364414121 527000505 825299254 835732629 95745146 620412912 916391364 330307979 206934161 63573565 891552638 485621646 925030392 665288847 232150683 822046868 728788880 98592899 772922533 59547634 669195962 835143981 642182064 21459751 525922893 357530077 2131302 197175200 224697484 37243405 944812236 222583343 24807721 431934260 893646654 33331213 67151222 769896334 516724579 772023797 853732344 455160717 598064651 788880954 183163882 985384999 655852040 382549793 653948956 512372650 633273371 255864596 109624602 784760810 775914232 403984491 880178141 770234596 862756043 285780710 378593053 679419803 147197657 599745474 358915788 75691064 743746395 197831096 173247233 622369778 21650655 508363927 401252248 530184570 7058009 96566063 377026217 427274529 301451277 292356642 687156904 148228838 343434002 63301406 694944132 279312367 264424390 153089796 786861310 746289804 595424786 353317617 951756468 394658285 656311054 219556656 509555444 54059960 581180861 73953138 186864506 734136848 649615007 277904998 71000341 806735868 667475178 817441030 216717159 250637092 708177520 242412744 40121012 190585196 462081749 962842808 682750933 257150257 83837914 635244612 338839651 519770146 292685968 954120722 144725650 444256808 702977144 58895958 879351851 696928531 816889012 241018691 233802065 33844096 449987487 147299827 673632221 439060336 584435571 404717491 182018605 728586515 958331230 516680152 248084106 257359276 728520829 602590664 933278748 343159393 299370546 861317908 511869590 827633174 797056211 48084267 392260652 16301114 997220804 312373582 19534730 241301675 876441268 967070632 116977841 550966506 77972233 698502772 334979993 772197490 538132788 326702498 555520106 848571116 513889930 971467956 910888523 953414102 984673909 321823333 634976589 966907176 761925213 63421740 743107272 31951667 999779717 704378600 5354212 826826023 175363302 415465380 543944659 290705110 489941282 546612590 46363146 635533907 975283189 309540120 252468220 196631850 117561197 653990880 161628562 104269490 15483442 630608582 150485352 391454353 831830653 408448201 908080271 39549125 363900016 34449485 676207062 513060866 551136094 520752100 176163289 976606994 517904915 528569529 780514281 595087620 573005525 683747640 267056302 842682846 161392248 634658476 888465606 466868368 600805618 920770843 968041037 140247608 413525140 721725670 363612206 56282491 874690384 827881091 615181765 865870269 974444993 339726486 159611250 392531151 31608366 890087825 516395226 659146063 953644417 865944279 777587566 171435048 361064995 103184041 926733245 671085862 49996166 549490502 302950962 656771300 860948280 720097371 503803625 391890633 771672429 108528375 299358360 577039458 71844078 861362196 657088469 202699541 577885187 314532184 853726393 110263068 885952136 50013315 637711276 201993140 475949250 415071326 433182767 349756662 318383860 918212075 636256517 799605893 321662940 189331146 776678597 972326463 183352750 528205886 469216230 200219852 255889767 606776715 876553889 798682293 39297787 104957305 161557217 205408039 94384651 118080829 827513966 310168977 351700643 525303658 44936782 129727561 258897308 376985414 740073030 220009388 321347350 742451693 235302790 714592995 18866395 913540524 748065396 958500645 53254602 720468359 553652454 579994123 951882068 99034481 992706222 761845485 731197573 949779607 985594692 816899178 297822091 948588059 917255454 421516361 105202961 296119004 669932 437416309 710054214 402557001 419336826 775475065 849212967 303956816 260428901 243302080 615088844 618193543 300878491 880495645 202269281 164340969 303281506 638679385 87320849 260239519 462512114 391866870 360583982 92911905 125871697 723532230 784800038 731445830 36246900 709349584 934153216 898394263 878807210 223720049 59554554 882927992 762963402 880889006 648081863 209613557 214287109 571549384 713368778 820206284 663481860 779481678 631745942 252267558 332267765 85878267 347057787 255166674 134824378 468936648 597764101 34337969 168265132 685125474 617170567 401413647 668446229 776197480 46426464 20062896 50088784 699620108 975507676 98072541 470058414 994334739 158712096 690490156 700532527 236352593 2765137 557444905 967567842 71706461 79047954 697883090 108835221 561599873 203762734 632127205 995647761 808941265 637363865 65898618 674053972 584244623 505121987 736716781 641245328 60635297 973935359 676972693 752973690 485208278 802843519 519014534 196716083 45067671 382635885 679294799 292459580 583537256 469358830 151785193 275760586 139331381 810056229 406039452 23081734 461168814 994135333 770424190 800779774 450457949 509697677 232195056 107989195 760482544 471557930 814155492 757087169 951124027 522333055 454197475 801246884 566736198 886370087 198075837 546272247 707899174 295374356 779688038 594319502 134981880 533495787 276375565 425385106 557118612 486701702 188127615 946928664 773036395 797771969 624320377 285746905 305935660 675437835 375254069 760285866 670162163 739253698 883021988 95225583 941775345 925544733 100758103 472678184 758703240 373341911 387161726 30808173 708297336 643263122 2002811 643366710 380261360 182164661 895010853 768929180 626510767 286871316 346874138 216019925 992797428 820971180 436837413 806648015 177990568 152216846 885355759 591712819 702359133 905213787 666641518 480224544 881898727 849780812 859096454 923114428 38029558 784632992 266356452 984390371 4952324 738070472 748491335 389100463 135720044 664007534 838083186 734985651 103992103 653455813 239296743 355852128 880860153 170270042 274706081 371790086 229392684 698920606 116171223 748238348 789245384 979170023 927957875 139858446 348997434 835283687 7424855 213154962 984789418 347042191 365650808 475768985 966164471 907034598 501990898 286521550 16700639 797727315 851040180 397734992 376297435 355036289 39438260 935180587 15410404 572201525 544479900 16612211 377781999 134534142 653827280 889699285 740829360 264286276 76375576 854499248 731363339 840267746 237976391 213759137 416750641 756375657 946038403 567223116 109871322 320366800 168276894 555473318 944029371 306717629 47795996 844476566 156160466 88725185 792814670 50600527 302813319 596968328 770095623 814769930 129136089 995063500 373417219 908348600 43552092 206108019 656457135 50174259 39417419 484590910 618158982 629182783 907828352 74955740 373145918 860703825 967171203 563190183 410447397 348598498 626010953 716115197 583825153 628653586 875055319 206199452 560802238 865665278 315278840 331758303 143097992 968492948 349158261 648104728 486001852 707931679 653034218 778929382 85193987 857121620 380243490 56218451 980604574 630879062 472308777 5819970 153077773 429898379 694242920 447823809 27253053 978717570 752727582 656591915 351879447 313170179 391376501 733458566 821927980 6505204 124252467 598999405 794678985 757041529 236704377 81276711 537057491 186209383 744690959 265661564 32192776 132919861 327592448 423453437 571852186 561173731 54787512 640844130 7025668 797724990 229171514 584017128 159893152 685418832 275151826 134377998 600501833 529595812 465991924 179314837 67010353 80421778 416082352 570407729 220053296 870556290 35053517 65911679 883312354 489686067 298660708 83242103 869592086 478886185 796190310 902016008 411859382 837354252 102586222 219411580 211880568 876885571 45851741 344944767 585713354 904768786 819132677 183123668 949308498 201699924 606740798 155869033 103316031 709391907 665619526 463045999 548677623 757291430 347862875 934105125 452014600 885487139 543978648 396347540 876344706 468431823 688474016 487664994 893135733 227033997 845320609 480399210 505239673 128349210 945175057 171008949 823617825 270763913 538442704 419109627 231963637 42804843 6883520 961461443 772377162 276401044 448307392 856160805 189625693 929188581 574749015 716711052 207473420 436352579 795461815 455440093 417019436 528973930 424307082 239258621 278302388 937899028 623843020 474916935 43762576 492021254 78147148 492025183 783315582 384116201 614732564 156566486 405008288 390461779 107550891 460388355 508627886 816947423 473742276 679235545 512350054 884158239 423020714 791165953 16154573 806610109 743348656 62775836 589981590 95622023 593420933 270081377 597592130 713648011 808231100 809373689 525559068 410984516 589950290 810671031 990683001 823170325 786776134 503176278 135672550 210450853 930914305 790098577 319491350 937035676 809047441 606353075 299524264 866935637 762257668 599591332 8834425 719581157 399410801 842349902 408659249 413719081 726607379 831159162 349704472 713199328 661738843 35579451 244395924 727279784 993478282 810106717 283239622 866466716 210077331 637365424 979736855 775148155 359635795 248005348 68239049 162335114 830505284 265312431 231420760 353998627 284114381 99944582 470107603 826726698 137221521 65679393 774797098 437970901 217274299 364776497 832302293 746673591 726490993 271940850 586031755 978956951 914508655 137722348 939239871 356868093 779440058 571860528 97030320 789791688 460514909 130207607 12161001 630991432 405277706 962697319 212363629 341424252 901549777 224562481 532182565 41081283 409591299 812030772 675219494 603600146 164858220 976165380 120747539 195399421 121613435 327164525 457083999 118079040 514398423 746355424 849264005 130985060 436883627 152414433 691264443 488492003 157005219 529646207 519971255 935491675 560107832 841978165 221235986 995462904 826335085 475483576 722904595 628025589 549065560 973647629 437578103 95783847 524222460 286474923 714658870 42457885 72194069 692011597 344487586 213455427 82333793 520723206 387673053 51797953 590813312 966417383 427468466 678406278 728200945 531309947 852204786 253171329 434441783 281310696 293555959 846944775 607171569 460205987 571551272 75031182 27816632 366769077 76896425 326284414 758067511 664406167 256193228 914632426 544200869 251907436 597340839 853922330 740618899 247254038 337694861 232397298 652086923 118858544 528828862 45603765 183011793 345365864 824772141 772038847 383806109 618334344 345207836 253481213 374850451 299564284 447046756 239748418 3335808 190477650 732102710 816819567 118184227 622897876 998102544 853181039 514706569 34156604 319071052 264439621 403702219 245840654 118397246 241394567 344740357 707503808 922910866 738080045 17654566 667584803 636499339 951479388 746516253 670654950 263136301 875610866 442890601 569269628 440941808 898092132 817824029 505215854 424117108 524297256 58177486 112267438 823394002 269505960 971896013 538028912 774395909 518403420 530512899 719940305 877137843 483781854 227145234 2589877 962200739 534789595 997581030 893910443 837423939 297512041 886847856 6328319 922062026 589040021 301409438 307155042 745890141 133839829 697297709 283126394 780867839 200841200 307017144 288679188 260631956 621258147 658004999 234182913 83051241 626690938 493889242 696825008 372091481 867912191 829609444 206212690 77606621 280124733 716936770 242077487 995390744 105519967 501570832 5861994 594139586 103173255 893292051 455504409 641416481 24867590 855703869 910520496 665564920 864511117 377464198 117144252 42999384 746914896 669679778 598454804 80976268 741912056 266338669 256204126 754696970 960346780 286534879 994556015 36496448 267846624 496969145 411738722 866626285 162224628 617397723 80079648 147858295 253967107 856479939 657810803 917467189 504496364 459517327 217485706 307347636 831782318 165360013 665307422 291557944 686031292 614919554 538754399 543144996 452608186 946388419 553590321 74604440 587406179 649413559 21039512 844158601 858142205 513049700 955590777 997802861 531856091 342841571 670975589 232605650 68897371 800960953 971462351 725653773 896821742 110294215 219426366 804787788 866600382 763571208 34660853 374742760 926709924 970188363 135460138 991878716 825115694 504926546 406555835 91523597 505292247 598430026 310302433 75103666 916808673 238112665 277162889 216385420 987406404 354207004 905383962 890633095 942529227 767794000 828245175 236395505 940902112 487948420 144330875 269655244 202909153 804100730 961577154 454391875 352932390 825677580 111853559 472148727 909372788 455345566 924926767 346823304 596603591 678898084 647441901 289908326 794002428 26025927 495521716 653001403 46973316 92289796 650461881 863918015 162595941 518928749 635860982 398258399 583924291 131371980 437647328 420418447 704625675 693303248 432587583 175170859 80393446 2997655 804081799 781572376 891870487 5351123 18820211 687495453 581359324 632330138 392393260 965416599 199671340 71431012 462532436 511589546 969307453 739224341 597421022 855568254 943720455 701156775 907813203 850828907 547678034 585465913 597886321 910734400 367886857 384158256 351575532 933111854 255383168 920623944 632402787 488034263 860515468 13785449 962769643 821702774 42749812 84479965 516730517 929397003 985893253 930488529 410984677 491951545 74308932 980833948 647403401 395636404 285031808 51531868 775788624 758518130 84182747 495994257 27866885 613633764 306077493 824909054 161232372 447827155 114390361 606810146 264008138 332016067 70727039 359792776 783158508 783410504 502021765 486114450 414884757 751072035 359018337 921039117 229507540 427285200 731221576 636359824 143177793 570280538 83023863 33266791 306495197 416635218 10937969 457283970 564562750 131219093 595949244 942123692 693696302 756268954 983859014 457585576 918043506 696149746 115332401 553263203 825901775 105032237 961003036 955113175 675760800 839012039 997784666 310064272 152260595 193878174 673454233 550529221 381312746 821051029 945988253 858824012 653222931 799168411 228693504 482375658 658014501 96578909 985272141 488832849 446479660 216156463 367993683 478912290 652844014 53235212 332967929 126542380 711380785 833444909 167099135 187762249 256678959 445784352 191599530 672358981 624671445 976143200 646900277 493687739 663516245 879041265 606718648 769916694 873632654 963176634 942582430 239752977 58462485 463084223 540444991 94145440 759743518 575543311 78143026 517773168 451046651 539905708 257292739 30882929 364651968 382774982 752037161 377433962 335991604 308650040 852916973 126787205 446144532 482513439 665297497 12699874 428207689 376043794 595974024 342135105 308170214 70572618 862894742 52782654 14438575 156937613 851330577 989115695 757311526 826094811 341505547 853594795 22672005 148321188 79525287 298451792 301997836 358520726 898928923 353156518 549137775 111859499 749259406 618590686 966770217 10418100 948724481 716612803 603367010 878860302 604082930 862351205 37114585 254478209 347227395 569908728 706046162 124389802 158994971 784795490 274599846 596641666 379126473 653180610 764575659 892387543 84069326 83199674 560256796 114523157 750466171 82825790 284656620 593453764 850721074 266726750 295763175 228387858 33542227 46288164 247010007 250242486 389577020 29295694 828511305 436846505 520791364 389021491 191390330 233965538 293674596 925908802 676167382 480773277 425151703 205133219 214238957 884286850 952180427 471623533 319558926 487098792 303201562 658394173 829358922 668074973 404239490 556805964 121463147 833128493 996456673 464216029 156458663 327520443 261520063 404804803 748012242 489448589 976669650 413604068 160408487 449012552 826247539 515796753 841567807 93792401 821685673 802287040 145504578 341416455 294537982 753171274 347902081 104821392 185510459 793174121 999798810 660438489 949009079 59273253 947922732 815207249 30508219 862808473 21646946 82666255 649020479 244419324 44771782 685117567 811992419 822299000 269015413 492647592 696717770 397403266 179295436 930436881 610302168 273008080 29727054 369871003 767168966 395119373 562776939 843831843 289466516 968003702 587435216 874193821 982116658 5570842 474288157 853896347 483149485 213018022 140856179 265259637 735296970 147714731 331190789 328123623 298714992 837479703 608007032 371916772 890006884 299759868 320987178 892577575 979583879 275981273 611397754 62532835 147478317 526748185 897066191 231906266 545998351 393951736 619363635 269435793 955486107 937694422 377445983 938697568 164527535 772652730 546186995 296228144 166900608 67618528 918772797 875756990 339290743 648658019 504004322 859751133 670092598 636904395 837442679 576506295 158934159 298210932 860748025 709617873 173483176 184824904 471238119 704323720 369355519 442653319 76878493 388675222 339283997 806961846 693197710 424649908 359550824 491327263 90270046 87172593 293947552 688182620 846033267 390801465 362704048 91215782 865883549 649987393 642652009 755178544 907849209 634817051 329729238 896557041 55656353 510242027 237855294 790505158 464245631 463903168 882615228 8542082 385268272 250462644 200583540 720678236 763724054 959450914 637382400 942364563 100470904 393723489 791060267 599456421 987100817 457132134 213942868 882834758 60116276 540133488 144388096 26006008 199585349 634702007 964939322 211243630 828604243 106080709 253742226 156745151 345322379 123787056 97237780 304706604 282950505 226050541 435559506 284259910 344897540 202526338 301087329 63188441 39132258 712328110 644222317 346952476 741369050 399635603 882626482 189899105 549917732 673731319 146276660 964359236 260390302 144723316 917451791 69001518 977129579 132931203 781263345 286264784 81726817 271525682 312267945 81011676 34948053 123827972 445417892 886245930 790094575 204259045 844081955 960745331 889617261 922800005 460866362 247233308 603321224 216178190 483325852 822710967 93347631 573536833 330733695 386856722 821570316 519615887 220607915 286178441 373357702 517956102 584004945 769054218 761413156 59626343 154946385 367600259 314778789 723732536 309508913 824689927 443273329 278125828 625232896 685561518 116312061 326402931 195991283 584152890 45840875 886605478 989986239 164917026 524796648 384379593 575822572 291072697 843806580 397914896 364246293 201065023 457345571 552512655 49781547 326351076 705339760 428310317 779319750 926383424 92521637 912775424 569658361 92037853 835155573 928357889 526142230 251148998 87292392 172654022 735178488 462119706 769197198 905205251 394749512 890786069 170636546 846436517 416072666 893683961 809887844 977056332 450290091 233340682 479054130 364728327 730477912 504687420 492574603 117003246 8461219 901333008 43404914 654673114 505767204 52271070 860143024 330356640 993655705 530236123 540445633 764537667 477813137 986180893 764211071 754532477 96058417 647130936 137249152 976321693 191287966 768561105 31373880 976882958 971972775 371655690 62344031 210961966 479080547 59351357 209143221 333916899 39711370 987192061 16910739 194304276 856374459 775689656 187559975 47370947 49609861 281399689 865516392 661001204 797702267 822721847 593934051 520255804 747133389 956451056 40891887 946678654 256544731 574059756 99113502 874932287 397353511 793166355 213888870 868706413 582803788 974951706 575274280 288910000 289590443 30075518 673217594 977326398 252474127 111490300 883826556 701001721 472605680 782088945 911547872 763751158 389875469 295505352 398169309 898513387 689494215 193717995 851568780 311973838 421577490 546053328 882069112 968534078 575445206 608939175 384109911 88983423 232491158 371958741 976272912 391457956 295384505 884666167 717350711 102224267 823815103 448864764 642499509 161782433 731786851 666344273 271292645 485539533 371860914 128608976 268424791 234517164 562606299 852007158 702300868 706379029 460059133 900966502 362006829 554720225 48751614 52886106 879789296 788915758 866974893 372734270 637999519 209066110 400404721 993070068 721607162 397301129 250479352 530446302 149000523 858799681 625751954 197308217 559310457 711693926 668329748 816296380 409303808 669535627 763139100 392948638 835195393 933443809 887008785 530796482 383282656 1303033 546973080 833639485 116934565 623297958 728664383 972746959 997463987 598717697 493161255 580863974 753122323 578716700 953440651 493971905 247721711 912073968 489901230 345668974 79919423 606968374 690817705 646162911 331355893 183134265 986996702 115311930 114788135 44666189 363999558 464475591 643365048 777458898 764257246 771133601 625501182 463525285 463074631 225040550 811408592 494511839 766260953 252632098 933359248 9384341 938609981 893869977 245543435 241438310 898116799 907968577 216466185 155321723 990712580 439371530 668307120 668794970 140469502 338305044 744904032 632335964 379686960 362931886 728640925 314569746 165885470 468490314 993060748 727034058 559135996 945102680 767156117 307876342 904349130 202909228 966743605 293183831 743796410 408976154 44485356 177033728 712128357 581017770 288495980 560557925 16775270 475554822 816418132 826420015 319959309 392159856 655947525 132548219 576864942 538290387 426154545 215492290 861780673 804553151 69546003 607708995 22492282 514335326 512552256 974497849 337140757 17391112 634991996 650186258 266862988 174728338 197482325 683599560 790501588 812644422 843127217 805020653 905208793 798737796 789920348 772507371 60691290 958070774 327777270 705368485 140284230 73770437 187079693 665858116 198021926 990934647 366328027 148180569 493857630 497531572 37907615 475281558 249519080 649959339 147374406 640634523 7046609 945326828 123937463 53216953 834685724 645682410 392055899 88998077 131048332 970080077 334984660 420773988 547131283 595965537 18668145 970741102 638226463 466409898 854142314 74658671 162215467 93860738 680504203 509123646 711529634 295344284 758479839 585367303 698706642 393523490 171896487 273520694 63629380 764305553 179190057 667456980 56108514 30150967 871110778 64998546 366605274 670600188 166932993 25645247 773280828 866034853 421245744 744153886 622543169 639307629 957231861 347194046 304726835 910201382 124053515 55488089 46934965 634985830 496298581 831390702 597439698 52870766 167885802 103335948 405984938 13691103 483967918 905148861 13221306 547000400 859092621 647676733 311409831 561140558 376899209 951023965 678670340 808271151 718818230 305384850 369014078 947755984 582655919 354542379 834387159 62181701 424978363 148515914 553941910 441346980 991464134 435104682 976099433 378513841 923001942 137162495 93451030 577146002 130015160 700596650 299541402 121240749 297217670 409677651 838091862 815283074 203157690 262618911 788175771 448305667 999867469 7446481 366318768 107620705 950800339 737263674 587288292 649632650 645584047 320514655 650946259 999053234 462382821 835560805 264155282 990985595 237065784 694656230 864842272 189219938 576399864 570383487 679009017 247664948 786703281 457684795 201322903 494484664 599953433 801701033 581580008 801382786 806995237 120542707 813053350 615035181 756930920 685488705 337235807 930091658 550336150 994295302 654626522 948976200 990300612 625231659 82546050 111341867 79278587 249130844 564252613 479158154 953512195 279896506 467042654 952004198 62702540 677032712 225391537 110129800 696970959 343675267 49696003 39351331 632398527 45849497 725092240 878050909 854964390 533231691 883875936 302042660 48075909 121036025 288349837 484538877 903658573 415491086 648549635 555393688 991753613 244292649 819580328 704496665 250971096 462665269 230535520 652569597 150442141 164580983 497528818 572834650 725797298 112088676 905960257 577742960 257249451 426302655 173031478 38930940 561195380 786890389 596238425 552321728 22800747 675184702 49027147 952313337 665559064 84809613 630257522 973228518 127377285 924856817 344415837 30200065 831812484 375915376 618418623 205091320 561964972 323972289 315782919 583628600 464504320 126026379 83419195 287736860 280870060 11801626 215959838 793821686 275333203 234623181 860002536 973966400 585515237 55403354 307929995 310222824 81296761 392830570 776419422 276373296 168096702 465262456 921869923 27195177 637058665 353057522 664311087 311901545 517302152 423161497 256056775 694563998 206256246 321228558 177713751 102722368 567449348 733497009 652902889 914689690 414713053 228989909 331119396 386503140 931686755 349146589 398688555 547515158 259330281 71979629 286171041 472509973 524034317 624114551 475412792 137178316 26924524 754052473 154240842 11810774 443831731 470101804 280700768 72736829 858875801 747852303 616686495 873080542 482703390 177755866 296898417 846912372 593349128 797778863 448001974 508217265 826049705 901023624 438035693 16012426 383067295 737243758 402726369 627027504 495071379 443522825 583707358 923756897 454840965 921574786 763981959 41198822 810426595 965875033 584880358 860087259 823412524 939395223 902542684 858047558 678631887 796730773 902495004 483286189 943765919 561559404 936191387 434880639 302989772 41697093 37543915 777957934 257956911 357578058 786349641 777011641 555435562 547120900 57223272 548411671 883464493 580148422 688797043 479491270 33323460 24866308 399667306 227984019 638869961 640877616 859944435 145436716 650334457 910557827 938754301 540707635 181761390 184160745 991569869 258040323 435852245 544156649 470737728 710246732 987100831 74659831 822719684 900307146 159119362 324570223 45030033 910089536 712265138 148142841 277156937 820237281 96183597 790749769 262316719 195835087 482320355 884541093 463914862 632962419 791305227 739330516 801210773 350547239 565506426 817252840 697264239 775697948 203786957 146957964 635636269 429672585 82666930 257332744 969153137 400288682 424365390 716262647 912362923 784318456 123003525 924727058 853753656 926118445 648796060 467867912 491637324 772772561 814195543 123162385 637548576 2994470 972375109 244884377 402774784 610388917 30556234 161437757 478835383 618221991 626657145 530006386 901723243 214560480 627371687 974579293 695917514 17681079 922430382 314264959 209419828 332525858 22043662 983972800 501632023 908492119 712984809 870046950 395062834 709418972 115179567 218840044 629874692 699200172 393782660 590296782 241848801 980782118 456999317 945087113 719808769 387409002 301741381 269711860 190313567 31273473 319857283 144173170 698995664 87181113 6104974 350917474 569600128 869042922 682425752 93039010 715515069 237142575 709437146 416839763 317829310 569037488 547979876 725581780 371982947 706620615 776784439 248871854 62051124 728001848 411756680 230970396 880776876 753672508 66076031 59784354 33399539 427888009 817557643 519595308 288732372 717742182 615066054 593122352 852670523 452156092 944093403 23020701 566729928 485504873 203785986 548194691 486989873 894198714 638935216 294389310 972723060 494219572 858288284 999134986 90631440 522345141 486322959 395414258 349590038 56804401 529849281 602895683 272486578 230258655 615739571 354942694 37346363 240715839 453078071 320459259 328503907 451352238 524496068 161888780 507950369 335483783 382546919 879354460 72394125 239962459 324552488 370841290 845471584 221511683 512893743 565449475 290407478 55321815 14963176 475020011 712493308 58628087 882321844 308713248 516647870 405799824 998398207 620495352 920405980 589026256 119221151 8073923 444496100 430993571 743136345 457420328 835586050 572000435 4263712 454456230 564144045 397091835 8302503 431367673 707114993 274075291 217602174 232250789 682052748 589541425 255653773 959630128 161411537 742274448 40829085 779302004 949344680 935499367 727223740 471989039 531205048 576096792 302831373 628277845 221388869 263556160 185328058 415574351 727220892 895806246 313490680 760545360 350713668 504278552 593578449 220607796 726643286 674404312 97530928 958371682 670920827 136812457 417505218 696723717 730652700 966161500 222363440 960876270 695427617 383045960 97060915 325937233 455421481 573626471 702013379 372608732 305192299 603799335 622641688 922217727 181638189 714204589 179895079 899546826 271083919 910453507 305446453 485530991 346753192 554520647 663408152 503465279 640067342 996499796 134206 382464790 159614461 664063337 5248953 249982455 752743196 490046898 727889037 932638531 627938663 169156889 262359944 100907100 809850489 965181556 464690675 640533542 622105050 331800501 877556829 102497 538729605 858325480 644734778 2057533 217523562 488492094 783088729 181324577 668509603 51914232 981956053 486495578 612235763 306400484 168392156 847275782 251834724 872415778 630279535 540170652 901546685 954388666 941842888 593508813 126338848 711670109 373076011 282938393 495544269 536649582 287121110 156561012 648226721 254802741 830775860 577314580 669409219 189990698 911666919 117932098 637272772 216887404 384607547 614969182 234635270 826950010 128789600 525798356 723611656 70110705 423161848 769705850 520807768 924888152 501567245 490507795 639538738 481934649 308491359 177010866 537450931 575607307 253743100 654616976 768886668 313775534 482948229 443317614 397283714 698964490 921846411 4965981 220546729 528809988 733886856 176927651 143727920 191952157 946028196 749330187 495350972 265037274 651739310 501688954 618778045 633203673 809394664 550382001 399421050 16454511 837327365 355188055 307880445 598917454 18793568 809149652 531276158 255471034 143431237 353580058 860216871 838671292 168262443 877380040 431346376 716861212 362192512 361127075 613235684 402418902 387624286 723548398 83052051 695000768 786440308 826260836 177835448 992802194 536705532 113010276 102538541 380540506 287906670 170470521 859135973 974797871 900320955 574494042 674970226 493168775 703256910 256120900 538607049 893011060 705296218 549581437 842051606 821444776 36994605 803617835 269401401 555031580 232644468 957093444 564878156 839618191 764780952 495982784 449257477 696007428 637321488 776236593 189977048 221058557 655606970 136969719 697484120 124394299 661579787 236185625 364561327 453491412 503617554 60381487 859281476 574297362 516584123 756234620 470969583 456117510 449086600 153407346 633719553 866000281 912914346 39056529 138812884 353609434 853104112 359071606 884850421 118829662 616595427 583868799 239079703 667045014 213114783 33033293 535074872 232203301 231515967 65521769 768238601 575480579 878571718 620086743 279738362 46732044 703128466 507827212 82629140 885026799 766649169 836924102 589215537 386457420 49350191 402610507 6266493 685862808 637653198 870340303 878571879 245666009 900252169 840464425 297794924 651006545 46601413 564768046 729675488 740854169 331150942 271013708 595131639 389404156 879720226 375942814 821906477 719898386 866663835 156306763 689071043 228387023 408246463 758983421 169067582 305237401 107148445 30998540 404822276 714490650 616435641 125762889 167299659 773397309 521339493 273844192 802199587 861878991 144411067 350632320 951543116 349349558 133530154 657395493 805013991 56539176 903205744 749076453 216399891 333634040 420680766 950457968 303256870 618303837 404224619 958459102 327312429 398069422 266603958 118930161 161920643 703547325 994181074 557511914 210036533 263807427 84730325 662755906 631422716 370102517 888915374 556653649 221625052 437020075 413379963 813818245 634651295 194060636 906938574 272697881 411364475 957357567 588893055 242496701 371703538 118260935 536090743 399297007 367661383 493100352 422620641 897876907 274248647 261549887 719664902 899951167 466004478 12551235 463427967 276096390 377096058 940976050 511549388 833519721 71060134 488022108 6757282 34021464 653984764 629058702 988934793 828903672 540390806 954322415 237679685 71175159 596725642 633243476 543090615 239128349 534753308 663450613 719698114 586005779 331508227 894715047 448428257 706946771 199826710 484165879 929540433 133877483 676941641 688955758 526349368 761353246 215840212 667053898 601725843 954684112 937914826 185349925 802811564 438331932 306212075 668548175 263465339 771227595 388566646 39850944 232179081 210203104 630068097 942948544 699065274 67481260 773130769 512622202 261367889 692935665 593507844 980770262 126637279 735401915 462570950 613900661 434347449 568514377 299061362 605854834 484382135 539899827 203692238 377102061 493391051 902614967 31975727 474933015 134281751 845497706 465113408 210973291 553339731 611936810 725732290 651669913 846758802 379963597 820939346 809962661 620092621 172638274 166786323 177230490 268561397 863092918 107933790 56877893 344514655 16627704 388949617 671852928 336936150 714018778 762361921 833352343 765655283 836660287 796461178 896426846 315370330 237237453 919493623 27219613 284855431 760761445 264860532 213511923 389841842 572626330 179899915 479435371 807334580 10556832 854560176 193908035 904341919 436573392 510514750 533638843 457904569 158229797 862108070 526957545 120234848 518083285 826518600 89576934 258934496 906174243 370511387 489131011 619742631 990930172 481976389 268179596 802019958 725165746 809756452 535073565 558887274 90972986 823157895 454215268 191050311 381921620 867887817 31900652 734339989 15947864 75720178 670675342 268540211 758452790 682030303 646091125 919370356 374267628 86492593 205272334 770338071 768800120 310540741 112946466 496449744 461759083 594768248 578351607 149692669 198575294 108824888 4779306 400991002 924832996 532929813 997229286 727145019 392314740 122995559 904597593 781800883 723495574 40459474 868265407 428014394 287238173 201330617 826373865 392359958 107340491 227332299 575828497 942449044 60926328 360634495 614178195 868371572 61241859 892315785 596131943 993761965 658670398 988599375 740127163 74407430 715058629 654602049 624834228 109175358 515686621 292579062 374204255 842729573 935366553 817545381 865408404 968024961 505823897 284519413 602664933 569732100 4822583 669663502 422440462 716807314 278699411 130087160 955568979 74904813 837010904 331672449 678206590 550931089 81164184 7359990 46665497 496040341 965632213 949322594 740912975 844352730 921423987 175281769 412162112 975005121 708480470 273508016 736799838 608414499 143099245 246475764 789644376 761056586 115474776 491538093 619986200 971026105 749055550 521453395 696874474 980466873 496572602 506850669 281835221 15837990 381133657 913176468 44366305 950733321 973999430 497875710 807420600 247485551 33841459 852466242 477462614 892456480 605141741 761050103 234004966 681490828 149537999 329249748 310766687 243647154 437073368 4621706 976633309 698898118 592920739 859412872 81913532 285988653 306121354 914776235 878515300 264680293 76124270 876929473 992360184 125516276 5268741 833205821 93431681 514028156 309081280 894294629 289517561 971781754 543071936 43925757 231276079 937725086 832507188 249489376 418374995 90834238 682744199 434130327 297577284 48932479 856860738 888295139 950271725 530448696 980315098 603774009 224981618 570583529 941418457 2359321 570174026 689957797 883957436 612821676 179337568 687494878 759103925 446316471 37050655 372652838 62614235 178996770 122325463 546789621 833301412 786822028 246600432 289833519 896684386 300716863 520771741 945276737 106933070 533225594 337996306 702148814 981397049 501009345 692907665 149596504 419874453 439288250 716133247 717676750 534790979 947277198 619520680 561138650 524446551 210126774 531196894 705696379 237851047 727070498 935237596 717535570 313481417 781941042 840563839 956047396 899497748 132094756 173001007 62133516 640962474 436330375 408353400 399109982 384363906 700476846 761741360 951885534 99156519 684921165 64137011 199731275 219128725 337989845 829724828 983179145 18246948 442978055 158281514 560843884 834093220 65999129 301165231 423937745 206524441 330958959 96494716 274243758 128976786 129168915 969379783 646490878 439411144 618668794 691292673 5018095 524886958 510202382 570455042 45215607 631157101 268751817 846673983 598728485 421229931 825163788 283175205 356095446 98892873 987886229 895518485 966245587 822295616 477034098 636199822 957934507 701829551 446143598 740371765 802466486 749424492 395151219 845702839 845170268 472689842 700667843 998188580 380154704 934524245 405213887 235012121 335028961 961441886 905447802 5957346 919976951 700821248 20256538 436825774 464401361 176925519 554337117 196594922 477270039 477830968 357685605 44759934 246912745 324611109 523070294 114992186 279765798 700532055 268070570 146373251 234138272 14521847 176358655 635898100 255085501 126208257 24279992 206056459 76979515 491965810 787636245 444976046 898708820 176606597 960976248 706376526 578689548 355806978 222549957 20789779 334316080 330506338 77100351 929624256 879065126 470672737 435327570 129100719 605354873 95685659 327587069 634501963 459223560 925243985 685780175 74487572 350602431 216665111 473915861 985607683 73059890 686041425 836341251 185798751 41011657 789960696 488843190 981944728 386125476 103853467 572231117 352949769 380825064 948710097 400024298 529896821 287251751 475371288 87736073 120700301 636706024 943722316 691526638 856942185 973251404 883027231 990883626 164159665 860620406 850724799 210569842 337942557 807899090 89602331 715618879 431358671 279014932 36175201 346075724 913693797 434732457 29083553 946653930 444040757 405122660 550009671 225469435 136864159 555808338 414027657 615191465 660443023 329064006 720088242 659374832 92005774 871158957 260391282 630922968 916845541 998916928 935108698 561548003 419946831 135560766 168951096 677770217 774862667 453491584 836595323 884443940 946166386 463726652 723961007 286865878 874849686 535310985 568094419 864940031 753476767 921336442 682933540 934441385 947143490 128239230 801340409 458716849 548478595 180072702 456879917 657845322 161259360 512200363 457519581 429075483 109263567 949006677 932792719 773340841 400720635 981902061 818633562 425703103 838689460 511253298 692435890 614336521 254838997 484099236 222514331 16751503 584895021 390702317 281312252 932724105 887316207 425274932 610224564 279770749 728993112 548948113 35777636 69745932 878344998 617669896 232716918 890358820 965841696 666736982 344668001 370452449 598010337 378332828 793655735 421919786 982909851 30142300 691661782 960765200 949526273 259817928 816522790 526901667 540743384 994743137 347916126 888308951 139104164 538762099 240255277 942308766 598869430 68115771 666591488 549130790 581186144 69441664 750946000 660538248 820447629 866716499 436316384 115449288 135291114 552437153 11483046 451244289 584858005 921562945 459628746 161792556 446726629 317306856 241750550 220314638 813579738 970678140 485776536 225155178 835368601 503819114 385731340 236059792 837244122 197999188 516144766 416874956 628738867 908812096 917222720 20442841 694065174 782099631 937249675 830246109 680113097 258275937 636512941 853272981 308557484 135861730 913842502 853967270 256578157 620573259 452171416 895465896 574110531 966096707 588346402 729930156 303973500 585231206 362375577 741553899 41571238 634502932 721473729 539041482 387421404 884860876 951673798 348342618 773304983 221010508 830460236 299297397 211970355 595400666 240257339 306885205 666699597 505359122 583681377 716385492 687844521 707042955 560130812 897511524 472138975 968912652 448678433 774507907 382257513 559296204 219322169 26328953 317208049 173358956 170956423 676134958 979413350 328977287 644916204 927707795 1342692 202344005 578154493 451797891 292768322 717889053 459951616 677814653 645576297 641095772 440150500 515062397 565562924 96819313 743561797 764315862 774968758 414478698 47705406 41265217 288141515 924073449 835847405 558942428 487407854 830518133 900127187 248341163 752968961 832141386 543498450 421882566 298950689 977012923 447813247 15870129 838071906 57996471 885664306 451472641 91346959 527891294 117343620 559766886 376357092 29292907 489347702 323946454 305820706 521228901 251222012 348445163 618438065 364781980 572472162 696654602 336254821 847908049 45844273 919798891 740887482 981769865 958873665 952136369 484354276 690688320 235622235 662395881 996930349 832625954 786660718 163611193 486657986 944949699 961097524 564021440 544465580 445102022 78710758 130328251 697206678 335277804 448868013 829789198 99396651 281517078 180170135 599349918 217406049 849500038 812213347 7659581 377390099 261839022 905327160 793519486 995549318 844620435 390796034 212733977 76892710 11899241 421064844 755508506 699983920 637168220 502187837 695041657 347007398 824649446 598536528 803714350 74105669 493421395 100694061 615667468 857937767 909640674 182907971 527707235 602682611 719470317 276683729 772502859 268584705 103037512 843683100 706102678 29883099 135285259 280494407 589172911 188395851 773358611 627640688 440770559 338821342 55685191 970832310 388147518 329184630 925150507 400231843 626332582 688142668 702493512 932858852 404807140 968310174 87151907 232223009 565888700 316716650 533836936 327480537 862865377 667763894 904192022 480479410 822715815 524516673 805392062 824233984 424002450 760281024 894806335 847455582 888804056 840007622 294305252 932132154 806097519 161495473 493187436 50597945 323908454 773555200 250396129 972262663 958410987 977381956 466328574 886435464 517190207 928620620 587220115 813721502 230066448 305586999 481859962 982056510 350281091 792883866 891244188 6106487 970470378 731034245 942375305 700899695 666262377 518930897 738919532 781246032 951711996 76615245 598503490 113240909 840225009 276845370 863436256 975014719 774341350 369105954 81295268 957221388 223073785 396273345 498967097 221640907 664324690 47415759 877206737 641961027 970060177 521894053 600442568 145624212 54254467 316531473 167006627 408057341 331818494 658850454 199470289 78300044 124801775 320196280 496180389 674946090 425425626 260013162 562223613 639772838 489322651 758719078 240195621 471629678 383520217 679627944 973444815 404028257 226819256 343993141 398930227 723683485 516852092 839940419 816069028 674016486 46904319 858296101 740465627 442951622 964316708 498215448 809431548 425584029 114851045 728773033 415293546 847445684 802249838 546984168 306629460 955923927 663035380 576354031 5976288 119662930 161292178 186811008 403921264 344212527 995417677 468242861 515334179 611901511 15219759 593083727 490962396 803354014 891238022 48947205 992098939 183584861 448034242 845988470 222079473 124989771 560060075 11188766 798965889 746979467 1357625 146954877 166340611 16017628 678994448 964312036 226321743 938503047 135854297 929355118 838763065 612250763 493094543 533097614 563231414 450065240 332266790 602046849 943980957 286756358 820635837 335689330 560215090 868556466 4218760 734819308 24883456 787549057 145990805 845914011 911994987 398244060 768744757 357040348 680214837 970578812 718519965 606310303 17794592 894021409 703791696 877174012 505890593 647835298 664474988 322554094 465103231 112631229 188469613 881698875 21688378 204429908 251605538 804034264 567050529 390545445 417325239 974589960 8435161 247731985 773958422 312975915 805984863 631439910 356146815 489625326 725915811 326406263 392948557 175320454 892056349 652220863 845325551 958953875 86289516 271001644 801910293 510430522 335653123 182951064 110823823 462085916 41021239 450190874 223851656 180394203 110266178 180726012 65466441 492474498 108950486 663341505 515389204 587343944 879637941 234180746 485847748 347513681 850797260 24603580 142002150 943759374 930265156 630327606 297752024 326182308 421394056 752137275 624890433 313162846 332649598 912811884 294108459 898257362 552604003 683635938 566415797 316960278 812475292 601908109 657248562 993747789 406074050 681551692 741318804 69448165 922859814 936570943 142195589 329294576 478059903 897616437 384146707 690715465 154118199 242278747 148662578 558605983 221688045 632851055 133747474 793800699 706408533 696192130 929331614 174608194 875991469 373605250 938554389 868501883 307508741 867866020 413137748 672118696 985438093 488085882 162260638 645852581 126631432 558220159 82459054 697952064 910199913 261608781 858896399 207566060 908708259 741930413 724637060 303972382 872358788 760293607 177938301 749147452 491564593 658039093 985908500 324965211 325217461 147411551 289177263 315281119 660654615 615053679 937028002 847169744 588109409 859893515 411328203 80722656 732225093 161140868 327711461 976211761 930506262 810432989 364754586 993115269 61071531 940538597 472414303 626140954 84973407 25729321 862983081 135768429 857192579 196689228 111956404 674895898 491311707 94713980 142999555 753271878 10126423 640789822 324990868 533932983 6560963 34749897 30605897 450697705 199342791 10767922 761083998 398521550 161609704 91779966 265245463 804107568 703347932 865140449 934883985 129671607 242947185 35156364 278791306 768767876 187610003 774350927 555124505 778122586 656698770 534091095 883846303 239497321 978734119 404957659 282649842 103637590 214063276 913771689 702242106 274762373 512377877 257121576 505163831 480936499 443801308 286141724 607111508 432738324 718782655 786809000 331667546 707392082 628922315 685472273 82233777 556713263 116603943 971250307 27291095 51761579 167861445 590678785 567484988 2365741 793073364 305270474 459065159 304509629 138635797 65442756 24987917 372133719 318787092 73639210 261931726 260783039 273897251 425263997 742940140 173065883 956961564 846641446 815398146 640271907 483188896 349342104 876991092 963748467 97428761 706511586 881745607 195985478 712271098 68489447 31944854 619633875 131770468 269937476 210624028 253821217 238353839 813513938 896497822 348413833 605719931 77541791 946887146 761044381 388659670 984877935 740590508 315493854 719677357 391486911 340215544 269024183 579862117 395210755 617317162 590805856 819041216 62546501 718471550 468353824 838271891 637402763 112807352 584223688 757621467 43653425 73568896 895670105 284083852 38849051 398772610 398804485 564645042 72168642 861696093 90703807 589773483 158391306 968161851 357783286 988649672 281442144 864626624 984163874 590577530 143700140 788457160 802728134 501416649 690842758 375748921 163094017 720350049 488038717 203925952 145122074 90740891 71703922 169788393 427211459 44140245 565668301 665702880 468221962 592053233 224793535 563228874 349454802 58384922 690804211 819651819 337749037 75202669 227881720 830295682 819497290 735265173 814047292 626616305 69507175 394141027 293602010 473017167 993531277 899473869 239909970 616294389 69508200 641113723 425898853 659070508 301199246 549175430 101106655 969220652 205050896 123183089 860797934 678088517 216703145 846955314 629543763 566054921 380378361 583597711 226663111 313820581 202820992 610134228 389908357 524222406 114634625 182755644 384022625 701201047 756277046 373693684 573082296 125416868 893070449 495298060 48952933 322418166 270431560 10879638 863250738 542983699 430561261 713680038 956001365 466154836 695612157 697718117 256215173 711981196 854577736 874738770 104400516 184314434 744287698 107218793 950679404 924597844 7075962 353205948 254605438 820586060 494978810 973777814 980675916 444659876 296568484 801635291 671233882 496061033 992219792 130520124 439962387 866991906 542797943 144001303 620741044 668279021 529958345 679480009 625632130 59483836 9884704 723822817 222860384 80391769 56120427 3953069 256794649 141775789 736292691 168265581 214776710 193993747 879022868 749957914 331494208 883802995 32736743 663673994 572889219 514423858 743768355 936640376 925608288 601484528 543169757 929760247 914367917 331640125 961805395 158056161 955169743 120110950 19365909 207863389 730453475 92736424 948960468 983485562 164642158 96477255 778492675 674989464 87993483 554017797 287269141 386922774 211330631 268897370 676071714 173469639 415976348 555764421 574143281 826378733 412657822 711848371 154471509 628750372 293177543 536420490 228863096 336787651 832285970 711910746 171941631 507031632 292097013 122086809 617417745 234700005 997339095 334491427 913482709 87211273 859142735 688967097 61354440 673896623 991044168 328051367 409540147 695211725 813302949 664151447 804259862 859117527 500743785 206589131 292920395 673011584 619813208 836030362 947515169 470455610 115537661 870295338 632952780 974267570 542675894 866994279 460900410 326002389 73867482 221777780 852115291 953701230 547104265 625289596 235867245 3328751 6561742 816707583 928017432 72058092 91462216 896979108 390409214 334952631 142019865 864393315 211265348 284444092 871037562 800745660 439264648 524585907 351984760 677609287 188537476 758535340 789944703 818702863 516188205 528512470 838682770 199276255 99593996 741144164 218567692 964930427 278658776 745433449 198215662 194736632 59708772 905114055 770064489 820672383 393743695 719737137 693858407 423195303 62158068 418489914 322257242 913618867 145456518 644966872 730824125 641119908 880583715 983869130 153832954 663778923 517729605 616483581 378320726 519023941 851645776 682049177 405088817 475517081 607705425 630299161 277675637 60697899 483729242 678626390 52647610 518872409 284144876 470520985 928400801 179700106 177728872 717115055 749991224 325026917 845008219 37432894 976146150 262734879 907596069 242687163 641872631 531373812 783457003 620746850 783982217 202787856 163738170 99317203 237725441 279531177 870855603 684774439 202109488 829726906 623244480 657818008 519061649 208440345 62383082 495865625 311105518 739706787 236895069 817313793 386530333 152881784 114161537 518756926 809573252 510207959 61486661 228309160 137444779 747551629 46692015 989191037 73264067 880151739 897892311 884051547 281242993 450855068 583085771 998163038 163834451 44749693 696108292 571113097 727022883 331945196 69093413 61639839 5374836 636731601 830890777 96368736 369308379 258161755 563828028 873804640 824312527 102286530 882546482 599727300 324273929 319212077 468411786 204511964 45716980 436516999 750357342 140497509 601173261 841270332 845185652 997180895 929712557 322251905 530687485 154809799 462333041 416327638 626857899 470749579 313281224 862442306 415182319 76176060 649295522 726864644 831017739 401288991 852557510 225190524 710392553 335331788 119201205 853817568 999865528 751712277 639961479 235658541 4455303 411880234 893428857 94645072 866422569 704422521 632854169 171023405 719575441 746753676 925219338 545603189 884625312 563370163 916296421 565479584 741539540 764490707 427611618 685685608 398003354 617436521 437551249 880297063 761214345 153055459 680117653 580345269 957948444 443759603 396440629 227473209 102910601 981183707 506144475 978347891 103782993 853313414 501190339 4617949 572213090 710083973 65589652 807724219 588777392 401447776 134607649 304729566 527716794 2610659 652924670 221084807 399972330 725068118 554181428 46877649 769641179 177432723 608751247 952165826 720664547 889443226 855704652 991053944 174619334 832878714 838516146 394068854 980150640 256088538 605499863 255882285 956974919 506625267 446357520 444335514 286051489 452325340 811600283 306491473 604374205 641086033 908034083 557240932 560455007 113492730 693723901 755676356 628248169 875971482 810196804 356077964 936898178 497117948 418501461 616215878 962566006 819744612 624221457 975443194 783058800 910277536 860083265 867724028 238829215 463009428 634726119 210042670 535579625 465739764 709603230 286139609 908644405 305884433 388949991 528800910 60970973 495454963 12444599 34758367 208355481 46648373 578536096 148513467 996036735 206256684 364699005 3545374 990385453 110398215 466665041 171885994 178830812 773568681 88773549 285879712 333350856 993867908 711856269 140616127 78504897 73751895 704692560 480575191 557994950 383783147 99539428 635528695 725196936 101029966 416580917 328453314 147579896 907033643 844069161 714312263 402209133 409343781 779568042 599718048 12838875 315094193 648619686 350726132 802887050 301501110 273619430 437898630 289795695 87869265 759711117 816861726 698277120 628482427 85225410 756234545 721257565 938314098 993691108 929617587 253059439 542787919 290216918 83991776 166781541 977487406 101523248 960031359 786738338 920049869 704051392 929331097 801160607 668734310 772042845 446834292 10449470 778042844 625067848 800959328 941710543 497185357 956805128 562489438 779083035 356624749 455925689 882763892 111329356 823509721 59287238 322974617 458295967 939229803 919890277 416117371 50939118 642080885 405451788 410762976 25300466 177128514 653934938 660320749 790432988 21069598 98389556 793957039 184193126 558150806 353660706 197723583 513846766 262517658 529208428 887315818 954582223 659757631 721575352 124917809 916107567 151556755 303632153 445113936 914435785 419854028 786880047 878251300 308872868 976523124 113167652 38608147 240028342 189211918 783754227 35213586 803996861 497847463 937548360 673511658 438846494 703326030 4258496 820387502 954280048 949145244 187581990 455228900 701262424 493100710 522461771 419932215 208502875 914442793 198646311 595148961 494737847 385594574 29172482 87197057 891945408 138399944 281306097 128664794 919870811 559454548 125661584 261899649 210644068 642120688 234727784 309104702 411301188 743972412 18384605 968012783 495930506 385163740 3694336 447992091 661937087 534622960 479599863 232797608 118872044 19106385 337306404 738122087 145479539 544046989 496976184 456017551 302570598 755317590 169127476 396760629 60478662 638840936 274858847 262683814 841304961 5721638 387409152 359175399 955470065 212893148 459285087 443775066 187946689 295941862 303174363 587821159 585116738 806385246 914626661 75080740 95542138 180744357 276544284 510941447 26089625 573905912 841162370 916947894 527178625 512480527 197640623 50604666 928343776 74554295 107208195 585114420 377092988 37631455 209026832 491987101 490218672 223213790 745518321 908153911 576560446 915648106 846567124 713559430 234108259 213643598 72027030 235890749 987597207 689815894 438984021 40420601 3496860 928137637 447735901 158800891 695991753 894393079 46003525 635739544 263787524 563086327 847431181 74986717 341597920 430299543 161601520 829645220 641493225 38689969 865421483 672727534 821883561 851812230 545513914 114091970 80238582 456065986 26353551 263877600 640505018 706657484 297989852 209404280 54408923 595299282 672943578 420804074 292374326 955570461 759911033 208894856 317307729 304536710 658945711 685454683 59632793 495302283 12307317 657241277 516424508 806088742 598325790 420276326 776861846 64695233 194225125 247709306 545744408 709949560 915848251 695584768 85281112 659172266 291738700 335720847 85559607 284557377 531218938 239683832 621745066 142348550 391782231 934021324 74193011 144640534 526911922 235381626 937769764 621982985 104332334 566029066 97187464 614932248 166333796 473650411 233733774 437078947 30721486 415847637 384351547 43994544 319507380 508600812 397279691 630707426 856387677 892674659 349014070 536803510 36852670 380405437 924441276 602795411 565376281 457557069 124805533 475830301 674025734 741573135 376865553 836835426 590331082 929447036 876743258 907066488 89564515 916115502 995263832 409587546 765417486 76838131 136387342 531961448 733950301 778090393 943329111 503762173 869830707 43479441 599368924 760834020 489755243 490182610 479633458 870305219 696680710 438540216 697646269 535509078 242179587 5914765 698765583 389136448 536734457 45019325 581249565 503577746 98591752 608025686 970933519 746305508 620434229 793434261 583639017 560949330 310244787 252351070 948525752 541061728 67682551 341113322 760041909 866273072 510238452 591424833 537640142 623054582 837889567 749514798 468663141 999250845 273693549 694716333 915441856 847843098 656766723 102624879 45758216 989132511 520342538 166700551 306989319 159962757 663710045 263131353 106825924 732514699 306823251 149386837 951331382 69621770 541414197 404144930 510269921 950246158 418488157 339878317 644165654 136002368 600060768 879795473 272973839 243401219 576625160 520064127 745093745 935382332 210798888 630028574 489880881 313101629 900756424 470769464 191793513 520188059 673636041 633278782 785942044 299777154 746166350 593469263 514724683 117108513 590598938 32900741 799812191 244078028 623671916 471996838 423027452 155449874 723234920 373743576 537930026 285057363 67091658 275702760 593190745 891704608 398071103 587056831 194261307 819343821 751641393 56093614 541967644 453184739 290322619 510982212 963741792 149153866 552742984 40328969 442332302 925298291 856555917 238489690 700051527 928912458 284949047 531669724 793762732 511979569 153436295 135893033 324631800 164286092 323530355 124586673 250299735 945083844 495703151 224660599 122359172 588352519 6972261 379344562 100039442 384760065 304931908 112620795 758317706 192511904 375894266 676127 660458396 523531620 526915428 976505373 668039272 770392510 903400571 10656993 869939546 993874282 272099321 722892414 858291357 452601460 646110920 419605196 332015193 609499027 417861383 351111982 706688368 788451477 39855610 126655564 370287577 279556837 229063534 490455000 72243435 615289425 762078893 199257676 730122297 927245504 16296392 769694015 351877885 519113579 490803022 682822818 808063552 6085324 429249138 483080141 663539241 703948647 45401780 450997522 333518237 906051037 231326296 787915976 881321474 870552392 457449601 394393052 243844650 443748768 876734305 459749814 391753311 645473172 645139338 499707446 164992516 32611458 78398183 870153356 282066836 82478081 744368189 135163403 256274844 872840710 179185229 907000411 731364785 107490566 156964128 762270358 302242443 391976411 869478803 749719307 160921796 123461331 69085775 517169685 752996909 526504719 451623071 921963145 277682534 335669921 730789060 224122985 645944819 806622177 52565702 158653234 799563713 108013846 332763139 852262401 340721118 95525473 783977045 291802228 860712369 665015864 751295732 217698266 301712358 476341406 264466355 513112599 236523902 451608500 163786157 283570493 998949815 327082447 444250000 17983881 720219881 749983657 679706585 365955683 492529992 566158126 375083465 895700076 35490674 532540395 347971523 836576402 74659082 438087121 126055317 892273229 545751253 353457724 945708095 273851399 928770608 940238236 981726101 169034403 592742628 895255578 386902097 61090711 345648503 734343516 131115584 672086588 831182409 146736341 763236048 950966095 758371839 196403274 789079846 852618953 240716687 845603214 62441725 950700580 315608835 879072706 84902295 501570608 383449002 895276833 395169412 693810415 595040050 66984577 510201519 988441743 256681016 811502948 391807726 649758548 67431941 186582281 524132774 766452903 868777599 888601613 999095404 660963278 410105818 824930641 416422134 437991352 691003759 644712577 649261758 256071131 927619696 155121507 767492691 539024973 397737642 960778381 852500487 167041359 213898812 38875716 806143585 644845166 771412379 751117310 927835844 552070824 52255714 998349263 929338647 446942830 221833678 640421444 248109320 501007852 704898916 55567468 170634564 971267715 915603405 474808041 847535296 74292875 856921637 639424247 710702249 64944091 773168768 193934656 294016615 364240697 556655258 122578212 606662684 847619973 236246835 790448406 955809680 902828154 852347555 763816748 551882427 714674898 325409449 293077264 42688459 474489079 594613361 317238699 267375445 796722381 259925071 227906608 398688705 287259306 547162797 276194813 754374385 929753220 768591922 144380282 551803756 383355089 942181458 777098496 373286720 908379077 177554599 47016992 188272746 866935605 280005476 307349271 852804415 612910545 222338076 427344880 396771374 349169779 9654239 400759238 586016607 483380974 867106807 180404682 367325535 748883100 776457807 139989000 445011081 200286843 932341673 12005505 148951919 139872584 365557965 796084756 822907276 990429220 918346142 185143162 54675788 763693247 372283194 955942025 983626533 196215782 974129762 694305295 548027651 426554249 460803805 70998952 816794215 431252933 885281524 338331383 887204609 341829239 247330572 94936654 487723001 647033450 732261692 39826638 457358086 404344852 590275841 452405259 165589212 133388741 776391736 20753352 739779286 15212072 872891088 107527246 125695467 538970608 833169077 209481901 465718485 884052510 540043057 122762877 116764984 666605763 782393713 608694828 671500689 32903384 917255012 240876829 61881016 13643386 476027514 191108980 909390914 808165030 134445674 654008442 835057749 622413314 443596403 670279522 197035561 77927980 637531155 426278388 400710697 945827575 110586230 634912679 428436741 742325800 347054911 463255993 238293569 478520395 543154541 15187701 406426783 195143011 25301706 294623134 711507473 149063751 92112243 172944095 172916448 277682143 84369693 90831906 71569378 901550256 386867281 361538934 823450431 346599270 230296809 65711557 196799288 311784764 44002238 6062626 31128793 644139258 417934824 113597379 842319036 264838426 980521141 978529007 257874472 226600324 858028830 225335174 888064286 420440095 857740439 442716091 684908814 888837867 156228042 211406778 167630445 682124620 215408214 257407449 378866638 448330869 693736168 708741993 997780487 936461126 326527601 888693860 744562312 570328034 695445524 879294076 487518563 451417382 981696354 658224993 366237934 212225342 9543104 420428586 45480668 151191455 861539930 958415504 544419384 435841398 942776300 652361954 364210264 103903060 121422200 286141707 181027687 574785288 298609101 258739623 780367177 9705266 75489877 321267491 366536021 806038054 506498025 230106765 355069260 330076620 735342381 456579885 892239750 609505330 880726717 534986580 769102345 103840161 919996470 734337178 242288422 397135575 175234498 194094492 935926862 655299521 82483973 285888288 232204868 884389508 383910818 575574653 627312459 81348265 146958071 148928070 199258725 383198350 672204542 538853109 72758622 607961866 673280029 623131766 256527021 898334770 716342902 649988881 899138395 319552153 477138639 237705226 775055262 111447622 791474497 390495811 377468891 169333165 227967987 971177321 267849784 463790924 636516030 130214071 39820107 368604452 63218479 284712706 962950489 918932512 971428972 756324708 996715702 282002809 156537290 847663307 859749565 202724783 850883287 527979507 225261408 837967830 931035113 225060055 444652102 989370236 188646100 837115729 117565729 164219718 677032662 470272091 27505165 95386494 220574144 210050757 944512537 715940818 781934550 370430099 165532213 939861523 800101842 506852024 976744553 653160325 840680125 655505965 577466778 196885662 628542051 853968033 156791574 473001663 333482146 634740608 857113758 841075758 275765674 279049967 86014918 371264531 217315395 693523923 659469120 377079286 8095065 803295974 506375978 915983720 189244310 27599294 222360197 151408775 541390372 449453600 79373441 621772764 989898328 845990473 521630436 575479973 411111383 807130752 417642490 250760186 575100952 70779215 748346277 560223757 512526480 868369741 299122430 692785893 5523869 481954099 469082634 563729315 973732440 73630529 105180320 299321181 154276107 131807316 845616096 399327251 51314381 234290358 762447907 628512679 879857671 621856575 425097134 182258700 43860446 604581513 863454022 138472923 894428540 673875829 812161353 55784345 176886968 35358639 741589013 486918877 410126110 876833132 467606766 275479199 977171001 299604373 860487112 144027439 62965625 185954512 490913160 788713058 331088723 674670265 693607482 16414099 89891613 667767239 491493247 468652668 751458680 371640009 321981783 382867461 210897192 333142604 628719641 636183241 759590124 860046020 876541557 325012319 997650151 137763737 85158531 441576554 268697467 328014160 113736676 920139257 379768240 351239309 281386275 809401191 555995476 311700088 602917310 355748467 328370993 522171749 662790615 400162018 218687025 274698307 289126753 713725697 97283855 822726589 580366296 291738691 930918972 619410570 884255305 556641373 976744751 157985885 957315017 605681040 91803409 111811551 701872553 77470702 374371903 133363728 436794398 520532664 927127517 437284006 816118261 86253529 472633561 542163413 65033939 707059127 270044521 367752462 827497621 966370977 253801983 900585411 956568928 909373343 471867796 613254968 327932357 189774598 129567950 641995159 465377119 438459744 416441025 348294864 408726967 690120585 675740463 580192633 224547220 334612105 856873994 535047489 31739400 772365155 715124782 176074832 14270476 264911776 151653606 391284147 115002928 21608538 677081703 26231820 851059122 101929243 231843788 651188225 884891123 771592274 725007054 202157516 449784680 659128181 476337741 579103600 581777980 273886221 318393526 318708341 939018568 284698896 424264245 571936352 737319511 926875701 383056280 630606036 710399797 308905674 66913486 205604384 415097860 482038398 169259573 335054423 29397986 245757712 632953971 452035415 324995755 416293990 422871093 339958983 249355385 157602952 721585472 997248047 515126792 718735235 52496772 948079140 590006504 619403631 236366778 463788279 494453362 200954044 906869370 755581338 469631877 386423212 882264666 584869317 195004530 80883387 299504979 506781400 281171713 51053124 16868490 635740673 21984044 134025927 715200491 578395454 496974436 709811645 263351776 297935343 462338727 110316478 970183049 976629644 33744728 437604271 462657065 498483154 518082505 162762018 938390515 117581941 305716799 841190382 356393926 266868171 863648220 6112676 947715183 981033055 996027324 775084571 711634070 370230464 859107042 356382778 655297072 968177933 918261753 617496348 469285928 624165969 965277309 333564514 59034550 457477345 103523433 754326534 576163176 346735315 810343898 48266540 649323328 441696580 246995490 618675067 222017716 233311394 98924934 28482226 890883640 279707413 494153885 141092040 67100869 720862389 57490034 682413415 542982934 16456960 351919779 653527225 372819712 381476879 688711407 643396748 514141122 605235306 67393574 802085061 536400072 847331745 879669926 77110969 339092268 848760163 143661265 769974245 674641300 842602809 698220158 446973118 228822196 475688466 271017781 189141710 473155682 280267905 677705556 511031911 938070314 752210665 222911190 243436391 306913803 878895730 698364010 110789106 952826432 564305368 807721597 905993894 410914629 502845786 895449679 651688622 738308869 79628274 746583980 322643505 729309569 772625682 705249029 827561443 45170168 545937730 370424822 21402005 438834283 259861412 291827400 833193713 628952104 880601385 181450055 776327251 13209672 600488272 58520049 355508800 16869394 332474040 782706700 481228323 772134096 38275910 43453190 22888190 399758592 701455384 322588457 25413819 146912438 896932838 2621446 876836937 25338111 708385771 167828061 552976908 839174899 656481205 105300161 7421734 422412901 914543432 589896565 332175154 974317458 841411929 152870516 888834324 725288000 532988577 519082202 946150671 556961748 552038144 595720156 542949701 314405443 605738434 342864785 345364665 234335701 547188414 976598333 41141969 337166374 188774108 325487358 186990497 244180095 883347243 358890964 702424146 124310226 828730161 83998380 623125965 892665589 956148962 426827511 209967746 118480995 633843809 161614785 725369448 922746210 671489401 761174799 224721760 113423653 572057382 637619765 312355537 370617733 792849639 159256405 997746753 707862803 305930003 839727526 8262693 481596169 548212135 189498599 626476335 501108707 628111755 801206054 236297508 680628097 500276058 16583600 216200234 542494843 737975771 335143508 210713573 512468900 352727006 216788805 211698086 103687299 58570359 617059173 248908806 581930559 821169451 764707875 458118823 224641921 351798413 861336835 25580141 914303695 40571864 92107084 140077234 375951811 356129937 323824164 96606827 153371217 678934856 967795123 408906114 342697433 732715599 414507041 24152633 292014563 608475082 454445199 81233067 625380166 586302638 126495945 347426107 113869720 536912809 476565840 329441105 619400746 37024604 122977244 293887 95356621 673589177 841298938 310762455 224658347 664318785 957356255 945056835 440240663 72744790 784763310 859100744 220463569 550526883 983000861 588305322 801599681 340408477 828464593 82084721 871571335 233245863 706004202 617456982 567004302 572173518 912701348 847186051 319709052 865811683 242661636 230798978 133321382 538487618 520066770 981040682 515263536 841900088 330880741 248780373 235632331 959631033 749750703 904357222 929171212 812936319 742152951 49302931 204662648 930273314 726528070 72713177 308573810 385680910 536374244 282240140 944672518 543212067 775514361 874715064 293264998 761296201 302203224 904049858 390693326 77319273 347038101 242633893 607754689 806234744 367264172 131203435 349272796 386691089 850773353 910982595 627524157 890532613 175016144 371421879 219769446 69678045 23702082 187037231 673199533 889247095 56487634 107180860 400003671 641214013 190769693 330410474 9900122 163709642 412601090 242777955 455848968 333892297 677979967 974842442 726954869 699665397 498830729 852785140 169324343 840544577 639741352 420914281 300302706 834602878 187873143 349507035 277529520 140826903 715696814 210881721 186765784 393840923 827754339 313308062 387090025 724589201 690955379 998551911 319885960 859493620 592830624 685508893 734174199 163273447 560552168 394567306 482349474 609704624 845696904 150284816 437447138 125853852 861989741 139761451 59843672 781829092 52366785 706093854 950004939 58761807 794214613 238461467 323144452 945570313 745223672 271292078 681656542 412036437 111096639 669661169 454735576 124169583 889077093 484842539 131614846 447581319 959186535 97856790 893290258 728650957 314453216 314021887 944281322 984114397 608170699 591503422 591257721 471519204 736558108 57643334 894512865 346651932 779797825 355961848 385483698 1934269 81037675 39901837 933778763 803664766 547149545 44268833 1038507 539768736 432408928 875555395 350043416 36460482 236713410 28699223 590528213 850444600 889280624 164119479 792897808 660761307 938965332 263129504 345796848 146782742 398588273 815371485 895344219 185145715 418895357 490737969 117254351 688883054 608047074 254153173 393591738 642143176 959452191 27490271 991588966 541304209 967464757 975640395 530315582 160595964 534599880 124944535 232711490 930705850 423936748 329894506 228122450 537095183 226917833 630596446 218721761 48312260 617259438 514265341 718074051 702362439 105545312 677678881 770155816 761861590 56939013 981905237 693573522 270668439 511252046 118693319 65903278 66215308 642039464 476875216 274065334 874645680 685371887 789795403 815915246 205710424 985872196 782686648 599245813 568532719 228395359 79196563 174657969 823121565 594163949 842030155 901405327 293382721 695648399 931691366 439745196 714705582 951407125 872458292 866450991 20856676 690107681 736066368 330084094 548134112 465534856 277563055 68449083 123944921 433028735 135738811 491376109 18259088 846242290 589687863 457557957 210521958 945832133 688863410 790261180 901418422 59746123 842036927 21866903 983321974 790989298 860783841 163200966 15344898 19885442 517170224 216334535 288679173 665953067 960459480 274402540 685175679 516630296 304246903 545718507 860115814 49957800 904610083 369665836 817310379 698582497 276591344 595944331 461702259 116055317 286633453 343106248 833050089 978283266 166493472 341207705 717562815 287096065 412693053 124819894 823181643 933552458 35673808 129967768 555603638 94774526 956913935 809869855 503221124 276532361 40965749 329916745 975774689 571816621 825972084 191139514 306239120 662707103 273615424 50999872 260937807 899122785 362748932 742080529 49794944 364237033 287882552 320148072 312302277 264195519 915677706 110856400 146569066 787493700 729164297 377324410 159531124 464696122 604744644 959851400 628346965 411399807 395022929 520813955 221108038 526114079 264273712 375623973 18811273 224616783 12874778 648595718 911611686 791052439 577548679 215290538 454771549 327876600 75408874 286331316 579630405 974792482 666475729 777837190 633916506 261026945 724090381 652378902 452280926 730889245 739187946 816805846 497594544 462663189 74986448 478004887 156763218 892306755 221505582 547936145 976037415 996337796 633884353 993908603 410911984 574279173 575268198 488143936 299371457 347718850 529206616 77335921 694966445 324819679 508495449 775222680 842890898 199881596 712367095 881553432 918494658 669816262 128838081 757266605 647737264 965090612 392568229 198814366 263799772 884287029 221464952 257642881 257113762 798970886 271209857 937289594 776725205 599215408 510611000 581188852 575475758 886630566 291706051 284855011 543876565 468405588 561665100 352783355 713313979 63458416 294488345 371661440 590350267 291546905 408399625 642265505 212911634 902816371 280305295 457476444 994857733 502490602 838990175 375860561 378051044 651278123 148239950 728610009 241163366 661561946 154130772 532672819 946105648 810317377 706345019 634876860 242250336 926616527 568638234 43475335 687088799 759940239 745280887 619655551 832579137 655360003 703137137 202285063 48522200 727223187 898895285 198768436 740546478 74173884 36503613 627181296 891821982 990409096 874977735 313941585 305939378 904994159 363414804 861042011 934858849 946504741 877222836 380855487 846128974 229198820 280387525 77095322 332863234 35193560 822821089 723551177 859629636 237778038 179855211 609574444 899324885 245725388 662723422 392302007 747449179 23913758 872689353 496970843 869625031 886253743 255430719 4319281 668845209 79831399 875047020 113291941 522959343 220916426 623123055 453428560 647975559 659913174 384085571 199567418 473675646 410983842 575489506 192145729 806570265 388959002 671742125 328282823 204282960 616532756 529276531 858661676 525205486 112592702 615432324 200187345 941079834 548606622 689355166 923951161 214089457 122915227 679117238 110827204 870163000 485702385 75243531 699095646 705153538 920627756 842941078 282170940 896665790 629956198 966656963 100382837 712794501 959537798 83243893 672318979 403519989 266142772 885560150 429312159 61847680 488577919 245661669 415027953 485994537 254072321 627748624 410671057 847188391 604517895 171790174 673856444 803250814 579812949 93018562 826279346 794400675 888815065 100540317 775779079 616944143 370448068 72194330 14504123 220841015 255797108 362573371 836704813 709518569 436552884 476736743 505726460 534714033 591289127 354945598 330131267 980010980 868800496 777111001 952275536 910245109 537995633 666832251 761692156 185886162 842119411 887531269 432736573 177351610 100858304 783842627 799181657 843411602 601688715 113850386 440758264 433800070 596157845 429110512 51059042 985127692 730698635 165459319 246817004 523683858 238783279 912198855 16202035 557685865 824618242 44436707 557815071 828560463 167367176 199500516 357246835 657991638 547475030 672307134 860395207 608522582 171926117 42162176 417577838 872214272 395046778 584972297 42938846 544070140 197449847 428290556 257440619 208236150 892790413 823784309 537370773 117358312 942986824 43831702 524461349 608441059 66467959 239010077 858862577 454468159 752453615 54939925 934444308 929325327 19487527 3330027 125563988 286917938 875327029 944162821 461473579 96627828 559761417 114532270 658664538 562064458 276131966 159682506 550427772 82221571 548550286 703395286 152092035 952867100 326850139 326131888 926975998 616691939 640466920 508986859 566961003 421078221 937653465 350696428 362864623 336023485 535500595 542129180 791269566 700371885 693982253 684393309 254479185 235450446 821280912 669233059 770580594 152806648 93427364 287234710 889113158 469624799 158228550 48846145 569112663 329456039 725414804 566927276 830461728 15987729 145449675 288423273 199191104 242955755 939748870 920782973 701684498 260458895 191859719 576284413 314255438 860875340 97767096 160389138 4746018 206305787 304855378 647285650 373385727 822507471 249166512 895808780 635230492 147550485 818907433 249757377 402422127 199018704 751715446 329691932 940579210 26720853 780728731 438407929 495437920 728011939 549047885 906917079 569645916 47799751 551407805 134317779 792739870 929060156 707712802 466408106 985571349 691204524 876700750 557960738 146081501 527983752 826612203 534170710 299678022 370280444 691112635 760751353 114734632 351058107 914550634 979437918 256725989 132927058 939930841 982201016 327025878 274627285 877463746 245050012 573436104 114711006 440885856 479211952 846851126 721863044 286577902 935448363 523976453 969767930 533906918 605437129 695235430 669470664 872483469 729047816 374905851 899685990 14648157 556038932 631562878 299447911 422283655 337974350 649560281 127094167 881310504 419473317 13109165 293689362 443545073 155492681 753991923 794386472 188009627 459166031 886301242 859206697 905654326 61408 703047015 1308085 138547900 417586940 715541351 948357962 65006362 583022215 590371401 703104588 648704475 543914491 630197185 70164986 109131465 50748325 168388416 921836854 905710107 6514009 471627875 320555825 452135652 142018334 400521012 600916209 813282773 605604765 138915050 822911986 175828862 415474775 95121810 425349783 181756523 413762369 847773922 994959489 469404353 708854654 31835721 932034902 914905609 94957954 865295903 675186181 854519412 520103393 208239141 356954675 712622939 351454291 364248273 347334297 730024319 328547856 758720915 607096398 873006544 369336339 540596230 907077849 909696160 819272555 572647885 795198452 922417684 995831470 721344316 638528873 894853160 289290438 91323535 835792568 620646867 743839412 10451001 914603459 681690978 248580957 252167625 225401885 392820392 442521215 867921381 648942855 326586871 965173956 364761877 723231152 287061216 906426319 278523605 183856002 278888888 148059581 236763611 832788983 680258652 983649851 49065778 613143052 433435349 361719322 260429865 532567495 669033926 957720862 390664078 421521352 36590992 157992871 285435437 406281648 806828818 410427030 526066598 208906563 490601302 556746776 479290841 677713984 594245081 245547192 449225932 385745006 572944670 156925831 129142352 153709956 319464018 31396392 950912541 96807061 990640380 317744704 955515266 980933153 359521311 679293171 718705018 84854611 71356620 206258127 984173111 230845398 838031826 297275131 362437954 616150658 334424729 608721410 901550404 361383742 326016970 44806700 147773990 158587258 634399388 342727116 322250649 931565541 552054189 683483937 910483036 821575993 452607977 575493777 191012672 946440277 899744341 788635268 249755150 897066577 556233607 741101602 548850244 402410314 830947192 153251492 215664119 869251137 444097065 262202497 871534725 820807181 578798900 877860850 760772033 533806717 76310462 445621649 83781252 707497423 760148767 607782827 732977398 183864970 25769590 204193396 643261520 778149475 325344637 228573407 734426458 780360594 814111166 903760056 958011432 968766979 428856228 8568111 69813045 926218192 832701544 792068013 303818614 246424486 852935219 725693689 48221663 145162951 402559262 452435133 351300672 556871201 904517903 667408336 334975817 326730446 30986506 227249546 579642883 519528279 681674707 54138554 858794577 194365994 609890681 418679294 8620414 189988876 275559359 453375982 520644263 825900639 315300265 788210556 81529976 422340612 368725906 765478117 476818389 300373450 311019168 153055921 751376664 265633484 572988197 977650166 956716668 661363143 577982761 980944551 437340160 42585862 635686008 438561147 479763126 442004150 301129520 663843887 405857035 805592392 290270130 323908188 428750905 933210988 824245315 723475963 619737206 422686842 547565183 299708857 975914913 841146945 323399742 58715662 813614490 376293212 999895963 917812972 512782037 160444093 651848779 255868027 343798104 191526124 685590341 299475264 737739735 170804943 981601565 889158266 786302745 291953800 668168646 995418668 650477326 778490636 630671020 221818232 504761018 40550972 439505501 159752511 986867868 929518429 225340708 329832579 495972421 152055226 286423489 404524666 795195375 46495119 19399225 732570757 305896197 732789921 688429953 905083753 487134254 52214550 562391506 290017155 415542264 1281399 53618299 817416184 761582787 397397449 597800815 571417377 417757202 511784094 858635209 794752247 797315582 273134689 825633785 556022192 283068404 110766557 227057444 456892877 817507593 555301644 158696278 267886040 758727703 179808752 778443176 924503713 254260904 408845626 227853026 676015728 286363486 284718651 68260591 509235587 197685918 390627258 883557565 697136526 412945747 563376306 528957731 394187957 355500165 636143884 62033140 9690648 751151471 393277881 452250531 967301481 77926543 87575205 206376665 417649002 264637829 1718435 239480163 435418554 690690611 930250261 369562222 328969693 181451779 510602260 867188972 194271001 272777071 146422899 328709320 498388944 104749637 151992277 530447664 619870113 733559353 175644482 149504367 410839307 900827728 87719538 785457258 401214999 447389758 995025769 103381384 56649784 911199091 141573966 153900207 125974046 403491891 981364884 790818258 117766844 711214064 244206485 494035236 229737694 8862841 451441365 602269345 775306089 705787438 384645785 755392056 788696510 491656005 976127818 114746586 462358927 606848181 542331912 843945321 705379613 208596389 997433513 732094547 365001775 703789652 717917868 60133576 599032209 97802619 145481958 940917790 624476695 506926247 978881415 422344479 195185778 84470004 877844150 433481745 865077354 445997944 162584451 844062801 496317647 811946496 398564794 871712858 503360857 454548169 407340446 485365456 999137256 629523502 48959502 696405300 368706393 169443506 531652413 391136044 570265023 619340819 65624626 731415662 932554394 379434461 542725750 870860661 487846765 950547500 361043192 64580568 253407346 664467255 359379290 368704517 1720383 125462080 388390280 110887349 303607070 172932282 50488962 7868241 529556572 20417199 681074892 40967332 497478392 146087761 770555673 246959997 61293440 226993302 965816598 845418956 429582535 220356892 471783942 443338429 698404141 8635207 216189870 148573823 175387845 794042398 460566045 619367823 649094197 51411808 855063833 91801398 603753462 799172178 486045075 236818112 728773166 889310735 651874572 391804165 586226941 513197740 131135369 65190564 890802942 972353435 84515141 502667455 705248037 432491940 267519386 653048680 875023456 760180378 785900990 667341552 314158584 529788509 212607630 236461625 860130297 606190275 348511214 278832394 615948353 261099493 397082144 605625425 127235198 168622853 754315316 733424580 961900078 641559504 975431024 662505706 809075681 322830968 355193593 639881155 582779859 263249406 776257728 378619146 230203237 777599983 660217902 557358150 92482707 918804143 702692133 449460486 105624424 896861787 14904663 697897027 749619582 459333763 588780425 542322719 133797017 841368870 607454375 931238501 401514346 261144738 51840948 316006297 119358867 479872686 455821496 184456443 522753179 462419456 154062983 555783539 309946043 469087987 276927004 620563254 825842848 279203379 12007804 77838911 158330566 489567091 479899640 457515893 583978019 109478320 440244036 653938434 811766149 226106667 460552197 105543165 988810832 443899723 27577476 542560991 744934832 30291335 720826743 163136333 733587290 177636055 627877691 968475259 825147363 263063981 391795576 500142673 510373434 949005302 502312275 568725037 712753903 482850477 150308189 656583404 468361742 533472781 678898909 458750840 945845873 731172249 413467247 752772315 894632782 563199862 689099110 887932152 209707484 998833764 168397993 695341852 379736236 372547718 742574152 68500443 747245842 991252522 580074527 849272953 972912484 702107334 928502670 49653699 330372259 370149600 261768703 682305067 765325871 926738238 731184883 395369239 834792302 32038303 298346733 771356372 416847866 740221763 857543349 642813199 400442678 314819244 346602121 280143236 867690899 758030192 971162604 544920293 135929354 286720109 992629512 96714024 473924870 920459335 520747226 327943460 716205266 832229208 632744547 388464912 149292484 938787648 275754009 884548189 613649460 360353036 172012900 477081341 731825383 269520726 840710408 512709443 569749108 840198613 887385702 612791546 389712865 79131217 682150695 428832277 879710637 574556636 140579379 476517333 602552918 910864751 13833696 30461157 149630267 563193057 860678569 18867267 530852417 961494000 307994075 310827628 656156173 517580624 937051476 176534328 222703479 740286273 940930936 535725489 583664893 183464511 126569172 305409121 236515245 725583338 345015781 62815266 432793029 704785300 173286305 767182918 117219803 977478988 873935379 614400732 816581528 864402069 158496121 510362955 43865722 573841702 298426010 480555846 97712977 492473741 535180779 678539738 890514388 270106621 318571290 190304512 767545941 870100017 364151971 387065419 437013972 771584799 392429020 481746526 906276514 46838019 9212329 737808255 270440088 911113031 904775553 637655995 398119960 735734059 95445664 435963147 703137844 409001695 959111354 439336169 885213645 371694076 832239117 582836727 606173690 669643011 888833043 926155970 7667077 813804536 436094076 6076932 706112886 508016913 306702784 195936248 795277730 512685307 999884458 921370195 178185298 410843393 994427179 182924441 551204772 835419800 658100399 641340578 137682665 338086476 269649781 689852613 649556293 983074016 101492255 65584799 698593854 329999127 999834187 972821462 158759536 738208858 206467685 625502617 640838636 218597487 252276982 631897728 55001806 181747996 503738370 391455376 819847734 238004010 211688773 466609443 932138587 652583648 926989610 47687527 938932846 629514151 935204184 623550283 906898398 609340451 463059211 163513535 184282354 479935851 785111744 669494942 324132491 858571419 197310091 494806958 783447627 86003956 943970323 991371129 303093114 916542080 316707636 963554515 502022502 544960225 944128087 525616274 788396080 401262527 915599778 650753016 28692064 575617964 103170601 753791756 105850460 274479405 312643874 838354805 398502420 504388479 539272767 603389262 73099595 669275377 349685522 838090122 757196891 772206982 937466336 226862564 237940401 378458260 451998228 250591725 418433367 86275646 320298912 810392834 794705210 521377035 179378275 961128448 300635320 130558187 91359638 574182273 760540603 338933902 101428581 405850923 244979871 877581537 114592089 773005385 162934297 463665699 159858936 426023294 171940087 357902067 939797531 767851642 796486138 433265110 634742503 574241652 357027416 336739752 167876303 628408057 706988229 638993908 309306706 757664962 841829077 306368009 987232856 805188876 319058320 820805238 793027899 284620603 834092358 49094835 95792057 49125497 182514167 929585455 835843043 319070162 975065030 352115507 576795056 439638051 324575561 889741146 975659926 815150757 868534285 77725183 668685931 109195658 806364946 266794543 836172408 971541735 129979932 69818667 974421512 20233842 522869183 179950022 291330709 382127885 286712540 191103209 690055447 154335550 815281277 886300023 975970057 165621178 206780793 163018432 697990905 764336652 210290588 877279378 474420961 922650404 21193488 103472636 119076608 237885466 160208223 843308049 361662620 486463513 868575607 231009706 311231312 807268408 257602809 795016991 687488563 729121557 17208376 750485932 739163942 376549830 512645523 158572322 384460816 650799538 395950724 265633479 840847060 821843303 300654469 91447919 369316033 231067005 323284022 246748245 96075032 378290110 145256039 93025445 442851567 898078409 980509308 203252835 36807327 181766670 57482502 25241743 44202165 247626311 555762963 273128731 93421424 551070038 828046073 404128932 771243262 370699312 263251497 385746682 813014434 660115137 12821297 654833788 700012076 149490126 204854806 49688524 582382029 772346101 388592603 343103256 910729490 711718330 620487729 482507564 323327032 90525294 943370519 675673319 276958755 940361638 12861498 661025688 166265405 586778227 195483741 980290721 794256283 21975043 833731254 929825137 751497244 391082415 59195028 495786512 156732597 620659779 221675690 428922357 137602695 467057998 724683610 112420886 905231951 885243315 95733123 793860434 895203898 60113587 440088736 606427213 604982291 292054314 684406615 610473225 201717402 504365796 604784259 892430627 228430582 255698163 102161592 564064350 501948763 731309296 985041538 465728622 452772307 63166497 567409045 128618029 602292567 339700710 32385477 262373115 388066543 385849051 522878590 148082785 229708251 26350328 637163704 464600055 468820158 762685055 173388989 245892374 567112930 346886473 465121324 11256174 902670711 223235234 882029434 643043250 557879718 312797686 739575348 884081919 750400083 640857274 842537354 418919400 802730931 115754915 42782655 317940675 337115142 68730804 617218542 465939247 303963480 108152638 915083562 404243091 468188006 199949377 706370611 430059387 466667370 305856429 92098828 567863663 531775443 378015886 339785210 992456557 478684419 224487759 346161784 571386926 62329704 162399458 77766788 273607964 771484746 633662772 275890395 309086413 999063912 77939032 503093826 887769735 959388748 395735167 164238800 560950061 647542518 34005070 623824245 527866900 283375633 949127272 761528478 264201381 475755458 530161535 211422110 757404984 588136463 333264074 832203558 191623280 726486452 511969474 9694016 522518444 414267986 946084020 940350527 556965973 464861565 606759870 954813629 794296615 64722542 272214417 759338251 122732655 621110008 613085062 404191722 578734592 964802197 47482305 554810462 335904263 389493474 921285833 591308757 385683968 687185386 33788289 635212282 298858260 28820787 754043659 450953045 863129588 26996933 446132810 559710969 434770948 462988065 140084301 713395122 401848584 752260406 397703220 521304758 387100530 215603058 252452421 684056370 442214475 218978179 23371974 783371798 265871597 188552112 471241402 698033152 986781361 28543957 957527234 393738399 669704010 44602232 194259947 941637195 838054040 494651632 218842177 800100707 293188174 949201269 881017415 304279614 268717950 28511714 640786890 749538824 479199214 603523721 404515083 118208509 408515587 885275916 250257712 126380092 422699896 777577383 412911865 601804438 620847482 70329720 242274531 100792156 524452870 874434892 604218769 924037449 618338669 394844234 395090868 922189822 747352322 110544774 909988906 439158265 611130126 523066682 439975474 513450468 924217938 432681630 359819878 119601609 626366256 636169422 487050360 300750659 524856331 161839097 329312052 684389455 829195882 225706713 235297162 689854458 284623924 30742652 623669462 221951229 535434166 253756658 841296526 617096052 746709471 214440393 800815645 971098263 803180363 203869227 182404000 952997986 483477997 319886532 847731764 577408580 276490765 176424289 782297014 513943573 494592172 757211034 73967242 671428830 790994459 694236422 641705425 961310638 13737603 493289866 601496448 239917078 184299505 815621763 157909550 921949232 19214144 20136307 111498795 56328209 934274354 103606263 453352296 207070948 150360199 194765572 400555815 356766092 249233919 114314614 594795602 581787236 786925229 925891032 630650559 459488962 33692601 632063374 501546139 479947493 865094828 939948745 156355157 856188765 415438029 865628318 315562919 108359679 54223037 470857597 486318865 392009580 539109457 568370146 166875022 608269594 27872648 920935880 805413693 529511889 999708826 586213229 896010879 817766827 981676417 529323034 8477449 451564914 551199556 160086423 132061455 470635256 39720424 535140188 472419874 840651893 581621968 566764606 585537501 390315052 387884111 369737483 447836145 815571720 946669479 965047186 899288788 506782906 8093034 115892063 174270948 38165147 787936733 829133734 668870219 849710277 406199160 617298967 912571105 946958179 105447477 811231267 475159327 925915317 406365037 25908287 349083547 873108533 813630470 782710566 339349658 631829544 568116854 72830510 596906047 101706040 792860471 275704667 920587446 726061306 476149471 358453815 715455531 868427032 951187490 74308445 867963875 18934991 330721962 344138740 157170439 901597163 698607216 762877683 857806360 863375769 710689390 542550120 823915718 903341027 962349512 520410167 339616771 510891233 546611364 53866663 41716643 300171671 671141689 880104354 846765421 322154678 671053425 483102642 668551407 318756887 826156176 194739794 536251930 403521491 488937430 442025463 387171315 937485166 476692345 574257715 812267697 341753221 427504576 598052121 193014839 922654131 283394450 692373827 696168334 948838047 594324864 534069371 965587579 627686915 679640957 857366801 415765037 146281384 495947972 423567892 907017667 720293598 728559560 210386538 35982529 978851996 362788922 201090845 362526335 239506435 800909271 157204250 841994897 819745325 115509920 482230927 708850589 131711697 376629617 8399546 114374177 609517824 613205055 324829825 903945128 188111552 655814031 895206605 146188602 573615803 640426170 554120417 795893547 406749910 140736208 44288328 346138092 674718204 252221288 588203825 190424280 16304420 118172453 692450399 329609487 823280884 697171246 971415374 85214761 762127023 603682766 686991351 958660556 460675078 510602931 479382844 514957789 448265259 280172590 707359079 8281911 468772782 340664319 404270500 99137047 477776985 534607794 195327743 363222778 857702272 441443238 780244208 357102541 388367115 233261359 264728677 636481077 546636167 775437572 797943449 281773828 809463239 10839233 295785695 680872946 787228118 591052317 391915635 52623632 38431900 284246800 844915385 111312332 950336652 448313808 246571469 766549442 411524988 522036278 210226054 626699043 145351297 560663091 84089471 243474392 206721812 651862644 138257886 248959507 392669916 598118681 281474285 114751351 811889771 851195995 650800899 575698712 646816875 335238058 622599120 203871872 815534235 171872224 912534219 478045982 890631304 609938107 294265398 429745721 142893055 291249666 389799763 401206367 129314566 57245095 529340244 270435212 212328158 363889930 356862091 384297276 562057353 734132812 228808035 753638852 554812510 502760586 211850763 273523937 659325363 664459517 199553251 954541880 275534394 644432706 93647895 483478058 407228180 558797335 585367558 438489712 245618327 793189025 913723100 754424438 132948649 249472658 162193250 8403386 247049151 667441114 333555047 408212018 444772954 659149664 698457107 861735512 530100249 923595125 321754456 924148335 272225312 606112696 868496317 326795746 961434059 520094663 477702497 770716549 1513708 168993998 846828679 478357059 864921214 550591914 590925903 393170208 776328591 905449460 632542666 630855322 141781695 472086950 182919068 475875987 809001122 310069661 824084778 572236724 421045354 987612861 620821264 15361670 412995016 727649299 783775934 833746429 915793907 278379686 843222198 462699087 712694492 790720393 484492509 347349504 582517135 824198387 580972469 77861582 375302986 523243928 62692991 921060408 955815426 281606010 921977909 953472419 488071640 393079301 787087836 201598720 341381488 748175790 154628722 750287127 90658366 980226381 306710882 145331730 415747152 969391572 831034330 501886900 490674561 485193227 137179463 412945006 471353413 794426583 172379586 506013959 137125040 244036147 459460244 378381663 252168309 542719569 937189852 990313471 977111699 830180911 613297326 463982943 282954682 959530834 713947088 834448007 854307476 46435996 845732969 472360906 505161222 256098876 683702692 547570403 274182489 235882961 236300658 767212072 839348642 811909714 764117786 610541523 575822215 621215009 257320950 102972166 665918414 776396669 509074943 563010694 800732311 846836710 802560523 684905076 882477398 313030673 382625662 169611571 217150668 549631660 678197444 939081976 656060417 273221527 302460098 99068293 405314918 967870872 422741120 99679831 591210868 120317982 679752367 229081014 591322063 727908819 686066626 778662761 933468489 902518968 962430025 371947984 165461106 809475398 299709282 980197235 283438619 962420976 759860289 856138516 39887081 608456277 385060649 318712640 957540135 992244216 537578553 165946777 826934022 196515457 797530048 225434351 458993716 554604901 270663301 82023940 252871130 433003387 183304982 689638219 438415184 209538827 744493044 945789511 446357974 34068892 645478559 463673374 669447207 372773726 788914330 839814899 485881954 770422323 446448133 46939579 934406321 719059114 913141070 328066977 330521950 598018899 811003618 749361042 100660673 431660619 479976756 66355071 774511756 579322377 104501435 399639451 201957166 982056045 493424055 33942434 453405689 73029324 819995330 733218487 399496470 689460269 707185773 157513809 359523652 903837480 691588248 357249415 306874710 709304268 370830610 343533880 336121778 754585436 511152458 87955579 554412744 858963470 550889225 582615582 308048030 450489147 668718560 227846606 883169926 203422896 590140992 212593015 890517884 461696524 70319374 311890051 650064191 410055644 67721629 637791168 224153037 555466396 23518271 509684403 196665065 5509576 971061460 783642637 902468349 338458357 392609397 963485803 123813139 471178517 620341372 954660723 325106166 183693663 856279783 72683354 320395332 758780232 975100042 477884072 562124532 121923250 287486983 875191281 411286679 335248178 840001167 349781727 765252554 780886095 971954984 710387245 495731302 174768992 825859799 432578563 837917738 862118150 288448385 464190695 952497923 668519789 713821379 737895412 986002689 638801485 8971248 763717128 846463664 395926944 501667393 183792896 339445188 494053801 218019912 875029451 447684211 415203263 164483388 675371040 828688022 840418785 776993252 331892069 213590654 190242311 576486861 743415699 340532111 5778817 65263003 942201766 427098722 914849656 965501387 865588274 428540847 672127432 113548852 823201715 269125548 503807846 720154425 860352637 889925412 874445040 282134413 479212716 670448000 179546180 74044017 315297895 385890005 269990455 847878523 175898013 349844830 673024928 910434982 701188794 60415183 772878118 824563153 791764465 271353921 637508976 905986860 436885457 130773877 158940666 947400505 832190198 645205399 916078133 672893053 223095362 39001788 757317305 804533888 594545340 858127354 877938734 155784891 78532155 287553571 446932280 417849140 154132412 437191402 425091462 445796048 554844165 299049612 342178175 257139768 111750610 687003995 157895864 965061592 507866774 392273952 394948444 263654514 693187615 482086841 76297917 957062276 8509740 386679570 306821678 79715577 199629401 436475027 940041567 472209058 859227849 174974113 324095110 581407933 551627644 611861326 602485636 457440573 684037197 254664239 539340627 469451312 772023527 748245534 337185123 802549889 957740759 689523264 264510714 527011738 238014597 715835379 667739925 158619104 123617970 525003087 372555028 801577406 175589649 85738405 94577803 340834643 928253341 886794996 730719140 602221217 208653233 474092130 934860640 316295573 166124077 943061472 249927768 119482255 72452709 513598487 83111267 390074470 513273010 99327193 517193804 195963801 681119274 818970405 978660477 389576092 493185494 488995284 706861101 204297315 389767834 913240973 114033498 181059407 583792942 812839194 285030969 141314569 249815997 993103452 317594922 739090505 790976541 432266365 714987289 1987013 693315492 622946650 681501854 541648529 894184905 263415784 927724220 631389569 293222981 578700405 254395364 517754164 299303180 399766669 634444084 603523151 771102821 439845144 316947552 831409438 244946873 63173281 53216761 193603204 103825787 981619619 770959450 871598294 213405223 991149540 984264216 563377289 338825378 468386814 489710701 542871070 269516426 498904710 391577600 801721687 395245574 290115112 114679331 27612350 643276644 633092499 162041543 425120973 751010967 763636641 719078577 620103862 4592715 873869716 303255028 62458137 229010891 240017474 479745553 537997648 904634066 905130019 115497066 883635098 168862505 770358257 263645575 74129717 514371677 602975384 88405156 798382247 36769418 959957149 532519290 39461170 472127817 684830116 537741636 922447172 590892447 179873894 302655277 637678544 431839404 197239644 468963921 158645196 980683215 395780960 112333044 491543841 410215430 856258296 564797643 660299555 686853146 937530470 928988914 914769861 59305166 717314633 524664331 85279540 172190673 68678554 132460818 569086225 376426596 477898787 641584116 578944035 332023602 391846448 342201 565332535 228294857 886574295 237191779 146904379 197845880 733430939 692155545 292189952 235516098 223828709 839779149 850819299 7116748 712815056 818944436 112985048 18913506 294732716 323823443 460674370 243591662 343358085 546644339 179626636 108016928 626465016 133463085 785738508 628290985 128003625 582968626 597606436 131058762 226817795 448891302 84786850 404304499 876367542 153679540 930007843 814696435 425446252 414195730 307745502 568141574 468638175 350136700 476879905 907042543 860548429 899705819 288869172 668333415 660426924 701418525 911151927 631338226 843618741 425297564 947544064 230342390 523991663 484240542 282727774 431773511 715999076 81116686 306120513 401308102 334699950 902935186 897085678 207821561 392549103 713179186 366511689 979362049 171874490 567773724 39802136 809374377 437032538 610855106 133287116 941439033 533624246 301841691 397190061 203526361 906513845 306796650 899785398 267983230 652770592 796412679 735356616 377265368 31903313 310415275 322498729 301846304 880118451 906748861 47629129 719528352 335721426 360419133 565688130 84050061 228328974 337817961 822885317 422836708 984458892 352453172 402631140 5495317 455540109 234224335 977768191 697486684 934091644 775307375 489527657 701005407 647631224 521324895 697434942 286992789 272326184 890647780 595597075 403618224 204280913 723152325 267819131 320016618 829593887 333962201 679012913 849448747 642037283 984210319 995877313 71004801 252795942 208624091 206043843 388914973 498425672 647707553 718364615 152384921 959475186 403866444 629237334 522228416 432947349 108366243 988549166 61230197 689560668 484939236 700787643 378078388 614996408 981874660 220189001 789611343 691279616 321626557 798509054 736785291 411975638 426029065 425073551 338351930 79294956 414032447 536281235 386658451 160435903 335391895 884139168 528612847 457605175 654423804 940267211 817687596 730045894 657180998 492394216 454594935 645377731 515160303 403725353 430928231 136974057 98055052 679754800 369089691 544574089 432082601 988024719 604824408 487360515 717524667 663687272 639692184 30063304 168099561 709921137 939334573 740593669 678287334 77981031 346103292 991564367 7965634 820557200 712803631 131922787 37721961 341791345 922269207 750012083 774677826 318510137 151979544 702703414 7556476 376107644 847780952 254668405 105632412 598819314 903215112 351841206 601971001 287149442 60070639 702789607 60040474 764070856 101741854 918689098 693715048 186242664 486943363 57333705 144042365 469699217 3487398 250055488 651402413 801824197 388679927 478642933 395423610 220256704 645656971 784112940 818139383 351489307 814465997 921985217 762216245 441228270 267724775 417768381 100559755 313347119 287702884 674362130 994025111 780363825 994649635 92632944 598840680 843079316 840730083 745238121 413592072 213624890 168483734 668236027 7440147 410722280 204212613 851503084 102443098 380738838 350794575 793289168 769579656 171107414 512084221 664023662 876286188 664504852 379170858 822687847 290670813 498497640 103023134 696153484 237812936 264331860 154030722 729876291 963609616 424277632 69871353 669587768 934740576 908952001 880559997 325564224 200593775 489785165 71533750 654654716 43126397 567619877 959498325 637358520 355359920 484888278 936330598 688404744 414802615 151386183 284768587 602979007 242362928 473770339 155262429 671873264 185624193 551876394 856352384 255975645 405113700 659223979 485773190 882465531 896822540 564076120 725394414 614235787 147092493 848488731 612975998 901721281 383268350 57346131 393059722 371517835 927746197 699947673 317899653 928200080 718897817 328110123 162820917 563245584 178401856 257846813 858502307 290749641 797305068 777208598 532050067 130543330 366947865 920973660 926635572 724477608 946870630 458975049 869425833 805714684 721529748 878528526 784605804 382059314 659060205 549907364 221124516 758464830 593611733 229115262 674118825 549779314 659954570 255864569 513445426 975567549 68151388 987506725 437994258 789133121 24873023 490139772 967862503 318151240 472541108 770649792 326600362 30603121 415060744 353355332 682259589 432099880 802718889 149151294 906128543 690314467 586071501 479038184 947129439 670765551 334918611 987992540 139355704 814257372 299768480 552784900 70734686 336755743 450151286 276681222 162989628 34179021 643973325 652602234 706856271 817701840 138030244 413933659 745400011 261121221 43162729 355857598 690433415 919188836 721623139 251240067 356506598 757690589 445362888 712023648 270539503 225296491 547398022 103993354 642940416 838098123 480580044 699896695 388889645 14733339 545534260 172155239 497291897 80196390 223209616 288367179 930112161 976559924 426024104 812618649 373368215 89318652 527167866 897389484 683700972 798803718 319111241 571308808 336654046 205498352 670186106 340676140 2102081 343930336 23699329 174585852 405546928 55234941 136276862 608237511 596521405 359643564 240161330 166950828 428726243 30034938 55468533 983054333 53877804 776713055 845068557 264585611 434933489 833854847 694836831 606415568 613831832 438070200 266806076 864639527 519494875 382479181 912534141 328408674 523113739 50275035 871111291 913095493 404821452 63430049 921624598 136613474 273066375 911858442 507148004 551352266 615130493 995472722 837000310 854524044 873024216 444021527 512674697 192723853 11198085 934603692 757938067 966342539 154746951 595144375 756080763 875017311 359014533 997909378 196207595 167708563 360436519 984121111 401750411 495504332 707922015 567790161 14548114 153598713 276330409 588754486 821270954 734253081 728143767 921074223 698175721 669125423 3508299 453484370 826153536 239560147 994902432 843610599 273073937 395276494 554960798 776064870 124822781 64520324 321776809 883463863 262269691 721494094 140375060 327912898 729079569 930645023 551679253 726409718 889260910 32335926 622747144 69251554 353688883 207006221 370711246 31547988 114507047 693997654 811890800 829708475 307266577 939249530 106150150 847949668 822350659 832685880 295962897 40530249 484131853 839764181 917524359 165369673 903814372 952756526 353531793 52233621 595968529 447128154 103629885 416371507 547065070 643025138 280488425 576104666 200125998 601834139 785547956 401946660 792947017 858522560 298908137 270587829 970503568 233505949 168957396 343003733 944311000 802650787 283607523 119779967 45314436 370569769 954803597 379186381 607032965 364727608 712923052 299753810 297706524 932326365 982930642 503750623 726742118 325613163 44681843 406394737 899748828 185658938 951120710 980937522 535887209 758311766 917992591 776379993 723736348 31285137 147796246 76447849 593982434 667541170 361791360 805293283 257848567 777632695 224134017 992259506 620712622 474764790 779653850 551278600 81430797 558244295 73708381 769006893 868151664 554683102 572977130 994569657 304735748 746519347 434214529 194799561 201191561 615237355 904854326 731756629 223060364 342558906 639146302 774662885 535123407 211299407 245866970 178489172 795044333 116320499 67095490 621390723 238358499 886097718 367693475 539687535 331656148 595593078 619883129 833158264 608500176 533218648 83771880 996818651 455721348 118643678 335416998 826769926 867916318 311436559 564661021 428161298 720524330 210627065 378448451 823313595 964004044 880253251 41890481 922165683 267864219 661240714 825970364 214208840 292732692 174306946 954213608 28442548 855908428 39806771 92213452 233327345 509038620 114253933 137391696 318346908 697092497 79739898 305207176 768639105 771484358 995563709 110989319 88987387 625592510 661276362 696253455 584183733 205386226 258728428 975097650 69592711 176355680 944486582 956523914 182288564 811748626 976069177 192252030 409889460 918122673 427532011 870070436 991419272 950203427 874912962 185520481 311969121 632256446 426338940 967605163 389925622 756778667 214135744 235635858 104372822 241835858 642441160 679776527 9521487 28698458 683366867 474857356 857650059 7011761 452834201 98754467 546448030 464055439 89342170 417101532 592856818 383542134 793088442 627614280 242840809 56400747 480144210 41054169 216029059 254100118 591988912 561979500 656584220 506867472 120866667 106817944 440363438 618409154 889226913 527921556 198749600 244359320 227161406 954779996 220886902 864020601 39104867 88587192 895725457 515272383 905327193 319650104 266489688 889246787 33179061 529530436 927338933 664271173 310986836 805160441 602963672 288003183 278430737 974576218 201876889 693092592 737858998 545306205 446865902 136915404 418380915 432643987 888826806 56716230 561468255 758274135 987390269 910503428 465724641 852499622 802931161 137191886 869913734 126810418 58467354 104630514 22340723 141170840 303887900 489954793 540388164 442202642 283733052 650550104 497690118 168124556 55923189 887848363 712615865 876533657 665736666 739380595 644862732 215872029 119636602 297884513 590356574 261301829 344712820 201521908 989055495 56700045 287868235 573888083 567037220 979405131 835471388 281832732 896008760 774931614 528646919 20501510 927416153 278540384 639786336 772031411 785615205 899007377 600424598 109623040 634334423 573206299 13065820 967393803 607714347 836717746 909602123 425534078 395902957 799482763 589431864 353451632 570625745 982444483 413360539 905390564 239000231 277403211 162395725 507306509 686069812 710131006 883198681 654105702 551037149 839027721 328553468 651511083 970663203 533889398 610317609 914546998 313560198 218791540 399437044 804968857 675835052 714199917 227390625 624365986 409168567 122687619 597467870 67325887 116300475 973005595 964429508 619296097 177813671 560649622 267258943 131999526 253565606 589865137 573673004 593693437 46520966 619419505 734663366 96636474 903403505 923098778 476611096 905464588 368883704 620836086 300076457 450302232 361929107 114021124 987803201 470901754 579857345 116615017 788766012 803334864 815591671 228836565 249915005 392183086 755388640 23233485 472852323 929672993 614589482 402689472 228520619 770297788 892914001 712993888 636025244 858261456 316941094 617004928 125000667 57686871 187372892 224878334 721834579 907089840 901764248 85841659 69309415 524055967 525217653 733717286 837276777 65164940 676964564 536854286 866488226 260108956 641443003 921114537 482003493 678391524 527482576 404898159 699389076 73877750 503546994 132860789 258566837 613116141 167069342 399210219 846763232 162934501 878049263 565806706 689081826 620192179 414670619 457709450 262934247 122071486 963736735 823448752 550694081 584759430 355549189 259781269 123852629 117784633 745722210 546191918 846185861 764837388 772634789 667410757 235882345 145359359 134105168 800664143 736514475 39362625 167067909 774858304 613378234 580064332 320812501 384951602 184756292 576709536 223503909 729293388 958787973 237123921 889658967 350373329 332855175 135964630 398898236 471464955 827751235 860407784 683854209 166582455 815162276 731999361 565524403 90010757 445477936 155923299 599396985 863677239 695905125 791121001 776769957 303921249 340462358 282743881 639607417 271687186 297314900 119084142 936647408 330157782 93848156 860182266 957847839 628757795 662075345 498138039 429269069 106134585 239567096 172423967 870021542 611107022 555590896 532423449 673316017 564618705 867229829 903838001 207766024 854815591 830379574 548234983 213704787 277733931 416094167 670751301 24082472 655240504 982395455 993699981 403888067 145987691 903277959 37064467 799927881 560796290 182181854 879026835 356604873 201188809 952875256 254064944 283419479 106656483 770798179 94303477 540176543 558994839 851792859 423426347 623954349 390919705 31677391 958166995 629372355 946935720 766867225 409014179 20276892 272057829 812614020 530383707 952913851 304169185 679779453 722427942 278817180 839705879 734802511 633003026 679043513 810931740 264154949 162129956 889903195 205289492 417578757 164312852 961638302 272529946 260727873 327515505 320367507 479938212 30423664 451945542 556424597 141026658 531698887 845662219 623415056 584758435 434971675 935026949 835897417 794589433 381327416 859966683 955010227 916865851 467001696 336059789 396753894 636796075 777577966 459404332 316408832 792528788 270486537 590433424 615332559 452111563 696764999 435948956 681988665 655765850 863447068 425592841 128454318 836053613 559821246 15062564 518736359 278531838 6717192 507376028 853941232 881855259 482477509 521031912 488360463 918142065 264107029 157012998 636937330 882813286 932834873 514124472 293939480 255780497 24040461 754996388 937735949 558992016 32327706 373713574 658766364 378132214 274205369 651377602 644460291 840822932 539519498 184426583 687729584 876582139 620126117 671674288 121190449 854624012 379003386 352101136 806146995 873502269 936437825 796028718 320582718 241535126 904563507 100720693 651037033 141513815 391116819 8450738 944138834 957951080 240184216 452901891 302723434 246885866 635149390 155030540 228558846 451401184 97413941 233408639 911737761 482990639 863003249 894417298 274126599 826985585 689125330 12454614 20047742 709819853 198447308 402418484 478530844 720871619 240207645 725494965 284668493 455014709 931500504 505849168 108364816 374284760 835179174 283064799 197670353 251460096 614435673 858767578 111264267 136183481 768950349 561432152 722853378 155000479 77638089 661446058 353624977 506947400 520281346 579215501 258891019 906855196 872806257 434686872 750816534 406954282 963574722 436811219 133651851 841967040 303986594 954187274 209531541 608650513 513197879 252143419 852551746 863022431 669805627 260045505 239148798 556212538 845109459 57604650 431720282 389567806 912152819 621262655 146902684 11426 514020497 90356594 332741477 25033757 739276537 962314132 556003292 520143962 603058249 34610673 872758958 908749161 637039047 121745670 241972713 234221579 298605175 933885352 432665220 154955443 194462680 810363359 483435935 650626873 347270295 665239808 500191245 846274588 226653625 367522529 754257981 745355802 11543766 653730869 518905724 993627428 900587872 573709666 639010499 749142519 178835417 639849365 599463870 487194244 884958717 951897922 745729593 428273494 685066302 810983627 683695806 420538666 801307096 900030401 672108686 78857181 805299142 558620931 160385913 844547710 42570877 724943751 82521039 742791099 835557103 500388216 294972701 344437538 64182488 963269799 977790658 608974526 623834712 45142847 562430637 377374832 840688058 628930409 674088832 579545526 34401102 636987933 429107659 13080989 529692381 446892424 899248458 109270921 204344504 296397002 742033938 142443149 270534055 770062694 177323584 297605012 394629881 739465154 962483294 312669779 882761538 819002715 844239045 58498120 862938726 664115121 488605361 498428114 973886712 481021076 445941711 255156813 652729469 899154078 248047879 197162724 329666337 976934830 773207902 317929349 426185912 406681560 119063265 962737523 450228261 250243912 944280939 862945872 467772446 183654260 773648257 144634809 115728196 958441580 843770924 251142319 23130521 284864150 153496350 295971716 714206056 707101109 227608857 273354066 3656106 42329860 480674067 729437708 986633389 592419833 946358534 61955741 223344060 155089471 665563342 392296275 266580602 178737096 438604129 817555662 984526695 592246499 523149815 423289002 597185801 355645381 449098414 236745069 196621551 400553436 879798509 155777696 570910350 496953632 864392870 901113863 293630366 630479322 162581888 236010598 262022565 804027366 119740337 549044398 901104512 866803189 684201386 804607135 664545466 904158288 166207691 561001533 833637987 267431237 684541808 504813506 945551504 15227199 241035259 853949205 720424534 19672989 622568880 418652437 900062976 263377659 241784186 148548783 104679387 974597349 703640616 312553624 805289635 778726558 875151570 668067365 942369480 519119540 198567336 68229133 395532977 541806208 654977066 105159681 763842412 553571617 233732105 436024581 193584584 590224390 442909569 285754805 511975219 487847864 503871202 569626988 977405310 581158717 439344534 639517205 331922709 285582110 744322079 970161847 930356114 830732576 368214947 152831264 997534990 52425561 44079099 55443953 272659923 748230159 330799643 851663097 122475074 750027510 762859125 499603546 390808327 246371265 152477749 683750317 566127935 491042577 419815252 438632877 893941768 447713746 976144130 587947950 534800921 603960716 970972339 341834459 226274482 383771689 102572498 105485352 665615792 92075488 863735067 674702717 904442477 275181481 958631417 233966299 844099369 976422801 558730119 54640840 515714736 181076983 327807861 206868906 985813742 976615550 63387047 475029137 283153368 84461649 391829758 400264310 810353050 357127394 761987401 936698371 804383562 17775158 268481987 429715949 767829485 58190479 70680334 989318028 296406298 152115942 659157882 403595180 983294354 371170503 661482077 820604689 304062805 803220676 989419021 767568587 283937736 373088191 393624596 326707814 200775014 737006918 215766950 125096736 684100550 900050958 524438801 126562025 61200168 702497849 761019559 574379225 18853996 364904918 645111484 845277287 788120049 142647116 637841285 274960772 641979377 755717845 753860559 700371187 209866204 249159093 878285443 393684970 506943919 944575246 958585133 638108238 29041773 199970375 752380928 993990067 877076474 606199730 783511212 553312972 756089323 542725196 519687718 424922553 485372160 512915327 967235608 764968517 510708934 645885983 442878512 10490502 199089966 593897518 480384079 265460124 456064697 184635965 717163370 982349191 633389480 713862308 391778846 552639116 821445429 880555811 301258688 440698530 441006555 897862181 301774435 986504662 77351901 287902247 233621871 190575501 43004032 202588431 19543072 981408419 471764192 450673201 811000279 268588693 999007477 335239843 237743577 405892197 237074011 991193412 39004865 91739480 109009786 719331011 304730023 630047930 572315703 267241481 695338080 616071901 943059925 438609541 864617658 606811298 603697565 39197265 822528976 819647414 634802300 124565849 500760478 18909040 152830471 850396950 690570375 90083855 623813278 250295233 966774858 465601446 379259288 452165226 360305943 522570493 490248169 113410077 974138557 482389644 659218050 990188905 160065362 9053774 363369644 828546008 293541715 220916299 379270653 578174501 88565895 258840784 60544568 345949785 588399336 163906529 610316458 878099117 753799931 995639955 599992926 956953471 914281200 19015101 337185802 381988100 426753307 140336193 758467014 770062820 928145444 819800673 564638095 288710960 996860713 635787183 208462408 997336365 164519739 358538504 825973623 454883095 145214841 791788850 423546243 361452744 376714150 392870241 666005222 901263679 614877019 866105807 288763186 771224934 460705971 807061036 145038234 242670266 216170822 134085180 582978850 26398996 181074919 119337310 834301240 2132328 151546207 70431806 886930858 836724432 674774682 369804457 41681990 487179776 602929339 752430830 643180219 101344389 567246952 544107157 43012345 205505608 440516706 566324184 91242373 75648174 57007992 714043496 685582685 907699986 159806270 218809733 299380179 981859127 471801043 209151692 164068463 387326538 744845082 767402187 643279058 135838093 562780960 251906087 303784189 605784769 317401444 907824605 374612511 340880176 449658369 830950082 778210746 891058249 367092170 428515278 624121938 936933752 710754918 84532860 478165933 496302176 55690565 209692758 18321737 509345504 386965726 617892990 598795851 162088634 138420406 475794039 682539704 526713745 774937661 258227048 220383091 981938911 456165679 281640487 526796144 507954368 597743544 700563145 756628482 567806605 161696066 930602223 293730401 398006987 605313151 447541443 195588790 220201075 959583086 754266019 98846569 691219671 257671673 382666229 274305416 491600277 211667792 468456255 173528947 776823647 517679478 812760383 747104338 502093796 150324874 151405615 502927478 310242107 748210230 386480788 345158421 797234557 44292341 473020616 760625531 839748546 975933360 100971099 671761329 801886026 395311870 888997310 814728500 573752078 650635716 580381025 644801162 805023344 705597666 77074820 825053830 598540667 611802962 218594913 848039283 538696793 805972137 61466783 699961631 534231013 472320865 290795307 673492059 693108337 423371340 23960922 152875015 350054889 897989438 232186800 455563702 953378798 275124767 808625426 333169276 392438628 898554733 757993116 118486823 455736714 196481342 311524010 191133729 676291077 196073890 725397638 165081974 736862476 988231393 145189646 743871701 118079265 862135997 361733500 399957343 339291199 568743652 395692416 179944444 834383147 796022934 642884817 111102962 864424837 62118926 855334180 836404268 412130456 366492639 124714052 79144071 491836290 188731169 739985185 711017906 257541747 801993084 19343287 942779918 832868846 235719060 418470851 275182191 714867833 87565781 523580458 765194101 713899565 602352208 467055369 707598530 871827352 390118877 761719645 664701540 224830017 509797846 650842148 186758204 515394225 233221938 954135746 756348589 130961069 625700564 98037223 676859322 656870497 659948572 538874977 571646887 737256546 120576834 354850695 56595109 441157355 82677002 562204098 391624882 433357532 582466215 198643070 609471892 363284376 691312972 77155544 572585328 545136387 821011967 294534658 816073920 94976222 663481116 547226991 246937581 477127576 651520585 240864973 70657030 77306020 910737016 644971423 495221707 947661178 455041713 279877052 652250977 201776568 660723441 710096472 799539670 777078238 506520967 565500431 598779733 701566753 170501917 641647969 923704691 556753366 247963627 529897409 747429017 800108542 99856502 348760555 928552458 179814231 722733745 489312171 870890856 553428559 507040673 730780767 419299730 753948266 358303928 945813771 19731253 744500260 515933947 778473520 111547069 34932125 631526832 534567916 957752385 599249980 464650550 438934067 64966135 857038208 368910767 468220999 579494817 623610400 840835730 902561821 724849469 435933274 966500630 852649260 649463988 465373058 528221206 636902640 600634961 554147911 950526790 147053638 174428310 944622598 612278750 410360367 977182209 942491623 956204295 24922404 172186442 471942887 251886603 33879527 558568422 580068052 445710594 318445020 494106477 663853496 554847575 755657314 119976900 627128403 670810615 351709981 744437541 418084003 914149446 191644824 536024697 153366606 824091357 467362543 814922236 421878578 22133574 910422308 556610836 705468310 625041437 672006547 259190078 221528773 877760415 900084775 518380359 485773555 471573907 731561251 897128850 496009395 475087288 803438383 168809763 201454846 245470145 542575098 951045921 352115223 455394637 786911530 571765750 58454698 45903546 278983738 483831629 485847577 97973333 600548021 475314149 810086912 859803485 966375188 79863059 4999301 788835776 95173928 887948021 298078903 376147209 815199853 14260845 698673916 58313666 102828803 97026669 516589886 294017470 703381816 848240265 613857088 497282255 734042502 561079846 563178499 962878998 468273908 415016884 858257702 76750786 51317968 412111735 363348644 883340841 19088060 937988781 79410079 589357997 70818700 135904824 443246073 425026265 328276236 650394240 872582710 598039412 124639820 104563988 201432317 410149352 75530472 682427959 287121448 158535421 133007256 733320020 23986107 467819190 299840067 219877253 530169979 994670669 300629873 648744313 82797146 182480679 296327337 179958395 908119388 581562625 12232683 66247922 359955347 57928359 221135764 797204418 379913576 468199254 384492241 722556667 353160874 551978444 449494560 661983866 827186822 861532673 923612806 590842768 895500541 766562819 888948803 122304423 508543426 363751791 125908973 302905046 957731558 156551777 287044317 606146957 759562023 742481597 509468517 240109705 94325433 603897594 621913589 437919187 692512236 52427087 109069135 874558846 844658699 157240837 984078012 987847081 169331462 234941353 242770711 244737878 561460305 960104754 983309060 139382100 204872155 395501680 242820172 805693500 934046512 902032411 164664255 715767159 384621800 138417942 960519074 995588811 391678196 884851557 668135599 502314120 187316055 414943856 886657437 111441850 818186811 833312650 804349123 752323487 279852245 573602694 718521455 305064940 606663066 363905465 724142229 635915932 542101039 565524148 408381312 117850430 989718520 618647654 291022224 896012586 587421065 968223051 238722359 609481333 202444648 495291525 374489504 15314215 798139141 92816285 795132690 924378663 493923232 907566586 255300203 385785886 303980610 917690384 246632100 735909766 792708506 766448882 782630801 760467045 707936507 211516856 732586016 802983437 960413306 209215178 389048819 995955304 601656878 233923110 330058441 527858425 405151570 735587180 898496878 838485935 613144147 766397243 240724252 589202176 832860339 28899258 230590645 68662703 394450998 985302706 479706153 842741980 711325670 220601423 730932014 889724886 480086072 632184532 887258545 99389740 688094223 626146477 336042443 53962246 440054117 188405488 9104134 10654054 531851658 201916466 158266434 515369248 279853222 770829766 348319962 440006780 918089519 86030162 686783684 294821487 78761363 741412562 288832101 400895418 299584033 222945137 999082549 981899349 10421322 241250875 553151147 15835728 633644274 951241177 19610297 261929840 292064754 542988767 643817178 529066644 23017678 898776541 769406060 373135608 65236229 738713415 353217311 218003773 799325429 406218332 749676328 719935332 602322470 910971352 193992086 377573926 314869607 594353308 644357847 903633240 873251657 42508232 974733372 10396670 988721604 793741418 418456506 777523424 149572117 834967154 781257705 359940557 559961989 216839127 936904872 578150139 388846707 474836217 863662599 672057309 121732919 348013628 832561010 116195492 703733410 543512955 196659520 755328428 649251474 212803639 242090071 477949302 762244367 71528832 44934456 252506643 182028897 6727619 643607032 380148276 719711651 355358323 712342409 690333 398605925 852056671 240769876 796064950 674533409 508236340 292693334 544555989 43085021 65467433 72263254 856187279 805628299 598240398 796585432 986199450 246549408 451904269 356277975 488689361 142766874 957914422 936888085 488186524 861861428 529801956 802848811 770380659 951927432 961930835 137344318 470710798 442629093 695762772 70356290 711688262 427593934 530556822 252477178 583845082 647562531 939116996 529739397 959826404 498567903 102548447 635180379 641853704 402678603 295183371 273934586 487262575 13769245 76915249 386076369 695597542 190875008 413670368 135592583 228815798 799542941 775703619 865799301 475752151 808442522 298142651 713906486 256678562 133833973 542785681 259309312 904483628 791381210 616165222 247219796 549732840 315314992 936012997 126876427 191686459 925869217 887590092 291732558 401548548 468114999 66946290 297786677 879103974 720978774 209106751 113683365 177837823 867106353 916090273 379259300 643721460 118691616 361460554 449043301 455770392 361930165 278870232 207030495 51500318 655245930 984546065 309605079 532846694 498010442 413048165 833186188 172242133 298418408 978817217 654419426 936038489 28207031 279346894 458607218 816458966 176142592 711694823 933517569 600956176 980585454 304408886 469096848 890679653 412449206 670412378 167919169 79062145 249358040 234640522 131436477 215767322 257681269 602048574 784401424 829243237 660348312 316672825 33350036 853343111 241327479 569973360 178175058 76838539 396052072 239264380 816292205 848993809 299687210 353240721 879108861 306030161 301636859 528698423 971843053 263180177 611471087 541246855 590349263 416698973 997651009 210134591 181144764 806790616 859901827 345078075 720578481 979685588 226904812 5784499 215220486 591895695 707414593 269989725 612504154 185205500 843423672 361466523 668604328 64373212 837650453 261626146 61277361 462078569 395108950 601809511 215291446 444775301 485695775 241811932 874947570 129494424 19851810 122381678 992345615 369331440 656161810 804547318 957979390 161408495 494117235 71290577 188338417 572464553 585664990 929269597 929551326 696940239 66533458 986873691 81037112 199926973 447555250 724325897 622433127 570627211 889205590 17151696 19273825 345256605 500111738 196170138 800744089 465852691 801130024 36370810 690242529 237957451 842558824 575561400 988232944 352042837 75910173 972644633 747984689 801476703 679587880 304599142 409495297 725148876 597324048 237487088 603738691 45883890 77731768 585038256 92113105 246149069 798249661 476948047 845916611 599798341 204119751 412170812 117995141 568828396 343143367 196072881 361882598 859441539 58142124 849190497 615578371 6339101 408207871 412359557 102702 982593314 44180349 898978097 446425719 483119530 416453696 654169795 283752380 86129604 924254416 159063392 605854345 94660662 499211882 485875429 401620575 667410693 911938858 980957140 145486654 309730866 121335238 255251926 750966856 68864356 593052295 599408079 498929938 337953761 96121767 998134650 214549214 107231085 638882177 605876801 233727423 58634346 659933071 256335463 892703982 659550337 107129538 773414392 98753685 4266628 19911958 756512482 258581557 67368836 664658111 821929166 273348811 577181823 734092902 513952152 804167205 340060329 111045874 285201725 939317827 831473688 113714193 285247273 982226614 525104602 13439408 156879728 639153696 160681438 239445149 25738818 245032458 167212651 319553484 48841137 577432986 6316281 842691318 584747750 462386668 929899885 56183847 784540073 211324420 110256037 308088814 945656592 166329694 852160422 397642790 730493584 101854165 532841245 265888679 586066032 27252215 717437395 515577437 688801091 733364274 73741603 126199258 211070071 900808033 590252479 345849556 619368998 474937868 642329751 34572122 722248899 590374678 403105402 580895002 338709606 492167324 770136960 830888116 485351683 6766121 634158928 572317558 190958998 17315225 728787602 162975629 356823861 239376593 253453563 628027041 65246795 824054606 784977574 773412822 692294137 700277496 343827938 936541993 778342961 562941799 296294366 253043412 776280067 161771149 599036515 922273279 98487219 296506464 375112998 234668903 605494743 533163018 716190615 665375221 857432753 803870796 544948963 448244995 973655832 951555268 782209192 476491857 491885555 614165989 312025670 212167650 629067993 8100262 758498472 40949502 962974841 497360386 766021075 987602389 157831098 995183928 157934698 49667712 16183290 480956159 2408223 694917875 146786717 672563788 858293641 942240304 696217872 819256004 730151836 251122758 27935763 374039560 323378939 894881698 317788465 692081008 984486398 394059347 821814546 662692854 526986749 912263910 605755940 448576359 464405176 18761893 357340598 230895765 246136119 899932626 500283488 989749006 577047953 119006139 260133062 432268034 734707455 301271959 224397750 779144047 724032813 20562281 752900204 129834451 559179050 547068270 581071639 627430203 272473939 329277421 866952736 252963760 538081964 713079835 552605846 685893720 428607964 893974295 661055607 619998505 958577678 86619051 447870716 210895250 754519876 355186815 872073317 490556370 17459384 661582454 88933620 560984107 430403852 888795384 960182847 112818082 209169314 418053931 578893215 807195948 142641665 136521227 617318777 756566764 584634800 80560487 413437560 137490303 550285769 951090682 568320937 375933215 28111930 887456706 761664629 673041867 725834383 788867278 240949545 696793678 839081587 776351014 184710845 181067815 759028342 50823999 330847449 9660960 841171009 211430806 269025947 684952510 326925566 338075003 459975558 437353215 852359594 420024194 622648801 283118855 843089825 765794388 492330456 911731489 508748309 316167860 718340197 987928846 509419943 885772749 191597724 719838711 14884282 921930306 729755362 659140903 204696644 785891249 111253137 806511377 707783922 723380086 873375256 107161804 814730719 342844029 929464972 597257886 621120241 546489008 394726220 545107492 662669288 25515083 414247233 891889784 309336132 482784768 879467920 173545787 964305515 28904773 408896066 760352694 436888421 724736474 41265318 860430805 23137567 594016887 265203900 447143516 628884708 73701067 190870318 61484533 996014527 74480 771586790 891360892 792031366 391762892 163583902 220132535 481387244 829473521 791779630 160342321 874009199 60986528 454826912 99049116 868858331 487453214 230394729 866106678 545884165 572357636 415372868 831330818 481844627 352963327 42015478 139152987 144644317 949545339 815377821 687478227 873111463 338272164 679381491 231970493 82072701 298803814 512494535 55161400 918360635 322993777 460930978 656661071 333915036 10125 150250466 337844052 737812296 912485171 471771162 218237342 661592493 25123563 855514527 155261178 262228537 560302901 880010119 915462471 69029522 632618502 232996307 266622398 256545728 310328179 847644232 573932730 669900301 383699600 708724308 580394017 321146549 602918432 963106348 162015897 17695935 162647034 183736554 897892768 100437669 820773462 623165523 67829899 899655785 424878326 838554138 884163157 217053840 258703243 582657760 955924510 694557790 722174301 178748939 963474805 949718080 864506879 780583316 73874327 192061840 723788984 216890915 355284350 437666787 766915453 920518213 960715818 722420878 401691539 506340395 239757123 978425982 869601673 585955419 519385936 128021830 782756912 900897996 748906603 446928125 454003098 110330162 183552512 127081314 336636375 902573507 342557483 31322315 350880067 766917890 859928010 700245419 739847503 742829768 807515454 197938825 102974448 744070284 343087861 11545302 616908899 575663815 232429466 774363631 765118317 959517001 101390488 487871059 713552233 952648198 698979827 143697801 932621697 396283129 584161369 957049988 80358281 587960635 950952187 646148790 922524412 970130465 411792625 251403928 601240692 376320755 199866206 867994813 474201093 705099970 810862858 569574192 195245581 678073097 594363122 728608599 219961219 836583579 98626903 402274815 528004132 869955259 37581914 594402873 639545121 489713304 586580547 616303176 263163127 446630881 321813791 565943758 905035858 359246791 150777461 900587189 74838923 913586600 192974498 481609178 777400744 770347055 815861550 798546926 40737720 714548036 800674086 168211538 507248185 286481658 413997474 676600255 984845689 370126461 518248604 968807555 691506021 238956777 123489260 669635169 854040961 271785465 918598748 675588930 809508019 168592767 449486120 658478405 817717023 501348151 780349575 348246750 126194495 35202637 724199586 990367410 75088099 387131954 504638710 749085377 518494423 257052580 739875996 647285860 854664135 790608730 860097143 921349020 135567819 383258925 352660699 397379254 616141142 740782338 510999044 456346223 340404806 349047781 239497620 958624556 127692566 3386453 789447555 122239817 788903710 882538319 524234558 933170380 332813099 401524287 924936082 603297569 888611412 193895892 604528037 436745314 667889523 135398532 603427500 205206438 599155181 88903086 187098088 634625507 289092259 188077131 564274353 564198870 635533954 652638318 221217081 27315008 462198137 415612452 94995754 480865721 474781338 421409769 327937207 219741397 126751115 319494299 830351646 232178874 379998730 515523910 311803672 170594162 145163965 358124760 181626504 244089304 288410897 854747323 989773377 108000475 293345826 894029505 58859097 269925531 857172251 903408251 863810894 454084143 563918492 15107322 938197524 278044606 873996799 425483163 895939561 601737138 61369787 481675093 142565281 951278567 825698770 731890136 936691632 11173717 423370835 480016757 750451352 881393576 152227954 854258622 746059573 511197922 659950196 11886891 836506332 146332764 624577532 48508754 854987680 910889110 657725062 571611586 338115530 812851230 135781778 617046897 745841255 22092047 22094771 582602547 899981356 353438163 945443760 984751379 17575487 995317865 811391942 550920893 266779065 338253588 630629377 691010317 267795386 164156466 966649259 448438281 530110020 745147202 152893334 542128965 398402814 807914636 944476876 655049896 292242112 21822943 457261704 621288495 611354743 514106522 534151997 142639286 539570569 985875304 694596953 11194842 627867852 311553456 535508676 987521186 279277497 910757583 884900642 518043949 990724824 23683476 467244352 804399696 556392696 452048706 654580003 227775988 406675737 254226988 624955686 327383239 92161063 778089559 251619573 124396066 423173887 327589115 196395554 805412833 862346132 234694746 580636681 41262145 901889899 893771235 683238812 70671610 385979291 67298921 686655321 217922949 194593558 916825091 798804411 957452810 432071692 32484503 361141253 623216439 638300274 367276253 303514729 90284779 185870767 292600613 126181662 40130748 599734973 381011715 298814898 970980585 376944883 217298348 124252591 497595166 267915749 158372523 810843918 925164202 329452810 655714571 585218882 508768627 223591238 389648708 78902860 481723934 611510825 716858839 138186568 764343712 377088824 275552832 99770849 633934592 172414657 627956219 725715237 64473208 693630550 258398315 870251649 295662929 597543106 235922284 83435941 865359589 480853028 325568258 459195930 172040340 76639929 229255955 245043581 990117267 937966306 513687020 778058467 596708247 407289305 610404684 254872572 985129597 570960775 218391241 443983898 949444287 667553854 570169729 733294836 232783424 396464002 465331392 543272364 461780523 270671758 801599912 921164372 105516729 816591387 391078970 200263962 181515548 697065007 831780560 480528294 991367752 578054340 899785460 80670955 328777285 737475753 134172407 585345472 880984687 359713808 437734406 152015032 296230312 608813761 444158606 548932511 777038159 883616929 436709490 588404753 339012958 158323873 728879921 715312069 209730978 921503046 350879893 603381261 495711181 987221778 125461641 429193300 828015775 851735273 695536738 993368744 589227684 72743973 491678372 620794894 697914215 588308263 518301268 989072648 206856970 359521118 99136524 814903692 834161031 53248448 149024970 92754994 40892276 289589340 28720070 375891269 480877315 361018730 992720356 76977617 608577770 631040618 956055810 721199873 886671148 358603505 872651360 949237562 876746591 948541472 260036274 567045304 444394484 830782972 405975645 70883411 680691219 151546215 652970579 216342886 222366833 394127576 76047751 901295826 813203583 643791260 904907235 337615790 848466076 508202822 858245706 40283018 281980721 347740497 555638228 973930144 650510960 833464240 698501679 612664210 47184357 613257693 800317274 652227235 565614971 310181426 24794992 348487053 670311053 63558943 94414549 473045330 420523848 468981967 645570959 726907503 690671070 795029176 301306682 558164394 967147525 496897978 102566107 237182664 221640133 135271259 567876412 484084673 292041759 552420372 637946331 754117542 705137085 415347107 683106383 340764872 404379601 741198021 549664695 27056920 286368327 602928690 188816911 346855331 926768009 464177358 813423873 936561704 324468586 947156420 669670062 717688632 640296353 643946836 679315615 825369244 73690877 976716065 496212396 16214301 505574659 404351723 442484869 238782818 956896531 471023627 154225029 248703716 491585786 325162741 603476409 946206872 589409983 325347452 62092789 570523286 883179403 563906360 398319991 168009638 224037953 288854639 266794666 266798535 751305492 911102508 683348496 992321967 494037239 963396794 586306183 167184237 905466759 895085414 796077509 7207556 766068947 775696834 270661324 43364500 553364055 113691065 183803044 85166844 668817025 890197492 812922977 2056718 53697597 806909869 839552604 563944581 266766560 901078642 992666565 248803913 711665790 812884268 647479663 180404533 522010133 120669533 919022304 994389479 843117770 850722166 714814280 759762374 144760587 35739209 215104578 335724098 642005230 414915660 377232616 109427376 319331363 839755536 637828629 385267395 105009822 588720954 534399725 150601658 387993258 456392684 365710763 879481466 54701072 939479690 343721101 24590184 106040433 116321637 531607498 859301620 217759886 97942498 752289965 805759508 109380387 949664482 39353035 30232966 946540634 154384719 835034298 331192683 519692668 985602683 603098189 859656212 194653035 440658226 118637882 407098088 166855786 64538387 544244473 689524383 981785486 320091637 150621911 991743911 671082844 887081470 466500781 627545384 841696134 634927939 149154436 18476549 152431002 141366633 80983023 135754135 555005665 83996526 943300888 288110178 239803053 37818119 308298081 139052165 962460903 720018903 412863085 935000915 387396254 45172252 800936255 187274313 304565415 212420730 80680181 835985452 798448385 686077032 589428880 729348400 507266514 106994546 345768650 719600564 10449760 68511560 425595623 411231704 594439414 180199181 455537431 252256329 813605072 30646605 43259076 110649398 451622039 727077856 918072155 613301299 535736858 787866541 406014401 34047622 41120558 724948949 15980532 346838400 443556563 726144036 965187336 861670827 362446476 974326351 830741537 239962310 555577152 109755871 977116333 687880407 815543271 13076392 773150866 713530901 508871241 248268697 158973352 762188577 34046239 650278691 600022479 938742287 632146365 144558441 220376926 354222017 438188689 290292843 74739539 932555214 504938791 212391753 817591840 764793108 973185299 558246918 445465294 196920892 97899437 973071637 440686963 151826219 161710462 303849103 243111484 227118676 257451399 207523997 405873416 962919097 725357129 423795144 339939486 425519167 958060653 650098322 191467802 418664042 948837486 475704656 270548912 670536350 881226349 384556338 187090440 260721320 659755852 877025986 551227099 52194367 873636856 18396981 357754500 312342783 564398227 323892947 793048660 37120044 265441152 669935208 918269711 492899942 681177311 441623642 805158718 54499369 143360053 302115986 421048910 958155699 234510601 904542493 177662863 364019790 567423270 328774858 27609545 962615219 955311443 204693663 729110613 747884826 758372649 310002314 363224078 327283924 384248402 796738415 607336076 419684481 958081873 632771675 82284881 993483561 469332511 152077793 23021760 792523331 247293306 835229711 749731869 152707929 560840637 251186414 88687098 806830834 170011414 794914492 609518665 873935051 867647417 18345899 692357820 18119408 675844644 794334171 349494219 381583781 639890807 666426274 930758921 505673614 733734060 171558645 38454616 943102493 606704328 201170934 143552132 262611210 725566155 516834379 290948071 820268208 415075189 735759585 789862995 827612360 218628553 260329782 474299019 854383449 424983518 396523370 950876134 936410080 925235616 967792044 223105236 475755142 644782500 796211624 448863251 696026892 143029213 865837523 850652013 925811015 836672220 294875954 851278960 462788440 931434479 842122817 777944159 509562143 113373673 850925100 671415255 1533562 663689500 75742166 670187661 208923227 793790388 48665352 391866467 613715261 923489141 245357743 966837201 503908939 182820038 503671301 170168196 404723066 428518863 504274665 683414999 143623171 967028943 647281575 636438465 104610309 363491130 960110505 699188873 61423268 955914475 917878249 87184863 647742983 104433769 874041379 374722787 464681074 240872129 423697955 455142452 760556476 404397538 985430749 906763723 903762230 338640867 103659197 126614998 793031966 447806680 902354235 196552943 777903101 855152725 347454139 853469023 162627300 928243766 429435505 705386258 563604695 326112830 32064568 480111836 538207795 388225180 340824194 571167900 204989507 799295754 353633039 468520500 211715235 711131812 632274243 316457477 885951616 369400967 12553023 123006574 778149784 191218561 663849995 905462369 482251530 260940680 788029249 548717783 967675386 244924441 906671232 546153128 969034649 617743609 200017287 603033739 672417064 977508245 36030161 530606750 170839538 983930520 82583787 191597915 434292049 83302896 345418749 282424333 301391549 764560562 497542822 716284732 368728020 654881379 320414195 181426819 431642301 892982688 643734006 42972503 15047303 668475138 519836269 709761509 83329037 540519273 74252848 175331973 62819116 531034435 606280052 158570227 112314895 389497163 595025650 472080211 246147723 648823733 997396591 61956961 853654859 975749759 18049089 321742628 77456529 355360325 508684659 779540482 228162616 76094476 929140407 674075356 319841217 687774750 931931054 338389286 709285658 188533522 765539480 164662945 180884092 38454236 223126154 619222309 671619968 362223490 514680959 583648110 516921719 714802838 798215510 531453972 842646720 25216326 200363459 870853537 965535302 634649912 93191137 29671373 813300243 863762345 675779057 483562480 80265308 247609334 514084946 217415756 214564954 919737238 172783632 274687419 488572307 10619522 674115859 940985867 312731939 947735257 515631369 398381526 302582632 165798227 293925261 229337959 864881972 93442789 591153056 130531941 335206769 594506402 131915378 750460772 256800753 538776141 272779829 522540435 176865838 53513330 466348568 553244808 235931665 465182103 64636971 667479574 826153160 26638737 715879072 632146804 274212362 607791581 688413949 873461787 875739269 413888742 28496463 782936055 123538918 753948221 756807393 41174148 3639978 588016828 818213657 95074347 528466014 198523144 232221088 621176904 511728268 500719189 857672612 267931768 723282769 617106837 437356828 47553959 525243878 627960754 837122573 436609886 769352048 625226358 167883579 437984292 854320741 886423252 863074240 111493250 811071983 746784758 352976634 52317177 409142375 162022939 188902460 106038274 971188436 188896177 317193623 358210794 657186095 312793384 830398680 154503122 158864764 187136821 485442661 686775890 898768085 324904300 352834805 898620038 8733826 100684000 866495132 576014340 955510519 200221795 486627014 52848511 704052573 177457503 20283163 642147189 305580245 746366782 623162960 695464840 356131205 30395358 637579417 913457337 947256354 769277107 65036904 589610205 751115009 881716305 789412102 380671357 892898575 495819916 657087634 136582644 152697093 781780891 783314841 707389304 843384023 279792466 803019941 27056461 555405434 582594762 664396152 944965605 677211952 489095963 637654175 398504136 666006178 718628691 368061095 388700857 839200293 505713786 930423908 49882732 590029572 769441633 394652015 593648080 931432911 77132057 560153235 544756579 572243092 663977896 407677377 219868026 832610232 156045829 876928340 562525352 327526148 613060899 669777707 699176890 425311753 384043194 791911898 425515342 704289855 882539114 257050545 368198987 38178478 965986156 879495947 612449558 650318200 626286595 629617733 603122845 172521020 54159533 490691099 19789908 245078558 147634701 636115049 510541160 243876635 71350815 558953084 984994319 227834769 965882389 394081210 12013592 519757623 33128320 626889872 257022929 992827143 100840595 819655206 33257244 130806912 70762538 894209945 252533945 257339753 202754690 912297438 394173502 250990245 957275715 728800271 380452181 823743661 487491106 346695149 597977312 683531515 256575692 432964683 168586241 412700024 899212758 86185319 87451558 307911814 697339095 399348205 252574985 441126753 611375191 875046564 109352219 107270979 546107391 953273289 354333177 928574320 53187671 965070247 17479788 704049409 723229036 335328789 527182712 199572220 17270138 480421429 988684509 310471471 887904965 224032688 864301579 834718474 881309017 502208855 244893916 969914812 650359007 146385593 614080097 398720437 305233883 899100437 36562716 318769941 593518905 406434485 633032821 214790645 270425514 343390543 452431844 471315923 177994935 2123635 119144666 621183645 174496328 87649437 217159096 395768514 746853 713830385 186504316 220540755 922976960 508566238 238602823 581059508 186121976 182727821 577229348 747918248 675620414 713813815 513042623 387074519 246448233 164466576 105731578 994186279 794252938 35479602 708589914 63282302 115994377 583495156 520498301 276329357 750244743 935522422 761773207 308553453 754406242 72183985 182926321 59611840 870438728 205711374 483727983 652719352 70027476 670049022 172216802 694428245 103407742 432855722 161638331 781139548 510868394 228549252 324535121 747016618 505631288 923069778 253164002 907580195 225512597 867218419 394044069 86244068 890192747 89594927 255797512 345041167 755973613 354059472 85385409 948131552 229328775 360314917 168335328 701125001 445205253 23188587 94451090 867583563 468511401 242896006 559189176 771665080 603753910 303989587 777148824 241337230 41081662 811687926 224023066 632614665 898566087 179964833 301223341 284762673 732607680 464891585 172572181 740631221 781226473 187719322 539833186 274330446 394213706 554221909 216208255 605393996 635821987 521455034 750395824 650409420 80422720 639680878 705130746 883726110 83297002 752834495 547901952 548083957 466294030 880150016 968776477 581443727 301106638 135396985 783411861 517655222 469204681 12140842 480561958 718210741 395271937 367196622 733655664 133673755 497919539 832864932 697208311 56643516 139515266 16179471 257287606 694395294 608500146 892125053 619081612 400006681 523559968 145481164 546552153 868527475 729259251 683471050 101526294 476714939 978230972 183586338 645547312 617702450 390352627 999009089 376471399 543807855 423063194 645351606 345744434 58202865 351248575 879128242 917657431 213644618 692324487 372406662 184391496 391663732 777567064 460891548 837591992 703657604 25528139 47434605 171888266 753101829 629931569 687363295 771379380 579701816 19159888 408040700 848622531 55736529 400450503 990465297 616707884 700055416 421068266 57136996 950171034 594865887 883205149 143572289 414706067 640080415 187774013 49227383 778163614 910954077 425157242 353347756 326518066 120760440 103766944 590313276 664223350 205723196 641194489 412779672 318237114 856061855 965602722 702765131 609380962 942466558 908051182 825172619 462533516 678740697 295176744 357425378 677826863 937271795 503918327 888535210 545285241 443925560 101979502 804345108 914203089 384675010 975994674 699330356 319388761 865993363 489135404 331334429 825740769 783607528 443937406 806565293 115670706 811350029 221760409 979313288 837375395 669167426 368386429 942012504 16816627 205107970 264014320 105047373 372524483 997368956 785167543 740579923 624090577 730301144 540164995 451973792 941709491 999089624 984088548 511868357 400999717 861045223 656531064 783139284 796434433 70739038 97253017 28751184 66613878 914678332 191906372 332386997 444060322 533525487 240878929 179171608 522031941 11991771 43493486 829985268 973101603 461790785 736209118 497317460 693232049 798036226 422404261 725450151 860094762 17495937 483868127 717717972 570459066 860644671 963682916 568093885 835346766 962067733 974986960 424043499 324012687 847479502 30217270 113404405 847939848 259393029 955288083 814961539 12674482 305745050 653924866 175612254 96032792 113637775 947083067 71473537 212603322 426296240 47183569 672808276 318205451 299986190 911382279 724097790 495077068 977030987 621779449 416374489 668051596 385192761 792213943 74922286 665703505 243695663 5307942 91958698 979691826 905466082 125524679 766938586 606112547 767380815 249274240 198954679 162767776 228512844 639944498 615293217 154507248 966392044 979378132 54051087 210293227 365838100 766435069 191240030 46643328 92439065 119297059 907527612 745250742 34174994 839414397 704035099 616737806 536368264 602757188 701218232 815159337 212139667 6174355 390458594 233805680 401642720 464657158 696259628 444077420 294463052 971454795 510110725 471001830 810864233 927399184 458390197 591831702 439315706 36219767 516007289 299512606 10562079 873800230 351967658 270337761 107111682 54713757 958970606 298635348 499078562 432576018 151655033 706446125 930333277 950070588 593931010 119151294 500265801 729688733 451066589 221653499 741999905 168608913 566619033 186605527 976084955 604098293 797476483 269318950 594249370 432379216 111896634 142413311 511431287 677392602 494909885 258055852 515154094 195566848 830202206 628308285 719913067 144029473 961157515 688846800 835079126 853304144 188305929 676851884 359758573 308418643 346345035 742610597 580741509 320390779 744745345 475109771 102175277 747206209 786670918 165225856 233598084 977465353 156380848 411571902 581167362 632847914 19795037 728352201 446427402 234084671 416018515 892708987 168353973 615097427 286198136 522882771 152019775 726022806 640028794 319501673 740126475 450101097 121819065 54172457 152296422 365522355 889773303 119591447 347082669 171641172 213840050 13595794 229624649 750516951 278869999 347694481 435224072 702787420 757224167 48507360 738413968 53987638 527361942 273340323 93499101 916861824 699987402 17939345 734813392 976627787 667299187 747099510 508010565 249802983 244875745 782070875 977954564 371836675 333021763 604149308 641067898 848652768 691037093 24667994 958270120 961268743 751540974 340461431 805115812 926973207 790582929 474623440 992141971 405729352 215014998 521782415 298857850 319216398 371523220 590675350 687178907 556086295 634952214 717858225 255487324 664600301 955285549 609424373 97718880 168833353 361175818 767110 502657015 682526593 968845715 34240774 477786626 26596643 465007061 663359741 125355936 22570225 824740069 880791125 164109875 63573830 505813653 86139715 961610854 999877924 497232150 979552452 168788608 786231654 268769594 163460947 355373441 886732248 129834775 841910855 506598914 422013042 112070189 76497309 189502297 484405096 342134311 768631864 4106552 832961851 775890566 545233236 172858715 610242725 939104754 405862502 28863196 264343506 234969891 710063923 482403070 307815873 934384139 173486935 239059938 637584943 337561508 59227540 137185800 285866366 358234681 234059364 608772713 738906577 851202950 405185913 84474828 635373536 821479255 331186745 346245380 884583822 399509491 223443964 921600488 193322492 965718266 357071599 356408609 161475641 906841168 619830869 501645025 84713720 278875260 8142546 72052026 320175090 987654232 455749854 993550752 178704745 453526004 898010684 57775845 816716526 861375811 22718102 46866238 509896265 899601923 232324780 968628710 546107796 15068966 965958653 671185774 316592694 536764715 289702126 267832498 970002741 341124105 566489064 539564300 108057507 277660206 637971530 794733196 339089105 839517092 885991773 668860992 31388699 433397776 965710565 783211091 375137334 266183015 77012898 264346503 977094904 467202996 301012117 510005314 10934586 297132770 247126384 336419802 601019099 366576514 985238125 950698160 173716134 948416140 7173416 329370566 869113641 267160483 510365797 525608143 618238897 517778626 748000165 587540623 218040471 858315172 838601820 51432966 492917980 123401679 475346054 144088713 571418299 84949028 272822399 759138018 814012195 661904919 475396023 443157373 278695985 29074657 359231379 962390190 992653144 309598884 761572595 26086145 8883571 662726350 390822549 183960977 904133015 795894265 25204138 827879366 187975169 274193359 574262322 387806165 250349281 807006076 448395788 114881517 229454313 236652863 395531931 735346688 839240313 867611904 315523790 774587423 257588333 679401620 272102832 770932649 583812527 589905809 561894686 462154624 206218470 941314083 99559566 141883854 581241962 476006428 132994219 369387735 84737505 410557464 804910548 867664214 506584412 326810853 12171804 513351761 105222082 687811572 89430820 430202703 890612077 699624559 456585170 739979849 238196663 832016167 120117245 37746801 837944819 2858813 870184948 933062429 899185337 181147597 336075367 968091982 720078654 619794110 714521189 859984578 758986706 95729161 960973492 163175634 102403915 967626264 562200114 148342407 213534546 616997920 609385309 210775200 275633043 159358149 800394 251740758 985633800 575632472 902256648 189735613 298972802 350893735 813141771 889766297 895315095 790150899 789968780 324523449 180599707 568096293 367565399 822695005 167967883 411349306 742356893 85825893 535001688 538307965 398085935 665035480 83760868 137279942 23543622 166536891 490687497 119211156 48789781 175051836 492470580 746486517 432257145 786073672 392449335 912920235 804434193 156003539 716302560 660028165 513911025 247744152 677902584 164995900 345612945 818731888 628724492 448724335 6228771 207551321 987710586 455550709 748819422 255660055 762035742 957976408 331253316 397909896 200117389 946749084 977300802 7688757 126090125 176879946 476401963 316331736 413494852 702752210 429867602 219515595 304335082 781583519 57566876 85600255 237155525 865041052 707721010 268005760 141043116 612273321 679252889 286788334 321708545 648613464 449252604 947547481 345695313 4847031 704672076 743513417 787412826 599675975 179573609 209014063 513038187 198934992 948124267 358005591 467213978 482540173 68472026 256376798 680517130 531133844 489258845 10126771 837932447 307075754 68805090 560750682 385696520 341833852 264196493 351895539 600455299 738367826 703837469 868884761 724109596 321207352 651120726 970748923 375369697 776883169 995617140 800404292 278330864 582607034 338756551 333357626 670066895 927245003 263282164 451800802 226343622 389039613 185063230 145150961 376052322 644686831 979203856 265477499 255928320 397967589 823087734 173715487 489531378 386448744 830098575 987409554 632473371 828125058 25420622 391716956 918687776 659149945 584825337 771444965 974728504 513865795 151105606 582587338 47932875 409143283 485456357 477400743 108881865 652908278 588249285 579997567 577607811 878061255 587508479 669191367 226099002 316799609 708672925 916887384 291458021 631042733 179279964 369510016 928406353 720849629 288214788 667104428 187805872 267803117 408533829 778760119 707011193 395793256 199255086 723727188 204194824 706976479 479235750 633500147 564577262 234117020 920922330 336122744 534726598 299251523 860856897 434315840 968674216 302058629 418827551 415014549 692406768 973861907 378240336 96060009 303005849 279841344 712091542 361210336 572164109 549473942 953983607 144345056 415638945 390956575 450264095 186730249 986497800 142255763 839994792 402467606 672021289 14684269 340500754 178750271 459704911 496803829 961107176 693309245 218771873 159900192 53131179 307555646 563201931 363818071 750061138 890328586 534093751 496909441 903798829 469173552 552138269 816212516 273067062 988261790 856765306 840792434 896034946 358379039 405157355 580239524 286911072 517321549 948882133 820800701 758898811 805201515 818507742 660931698 644655303 708619475 150813614 622585153 959945593 294115902 418553058 416234165 913752912 292805225 399806696 893238129 532028629 578417182 930039022 872996225 638305998 917500533 118098826 573723715 335869807 19609772 792741190 301993211 81647127 405152567 259597061 166516862 623178102 889361937 515132548 526803251 910509739 806993389 649741776 585496499 895661863 103135382 483759454 281407385 477407737 754031545 758894694 427694954 65801050 482739059 797953108 79627861 351447681 78856788 835895923 920489898 63312534 115407106 10691964 465485622 540412077 975742088 974429689 706946359 845444475 560236418 772237583 925101275 618521783 855886563 10048453 495344493 471471473 724266747 887348136 682890301 923931112 506755411 954655787 668818693 927262878 855866147 844125405 816840450 224015627 754142528 825191538 389555573 71644924 217615428 874752934 252368028 508048389 267147671 460853723 452067670 567178127 319622354 935206502 260237638 331120087 149542764 602051958 252256517 598617211 800097393 419487703 91320202 721120882 266695451 173230578 893508912 375917969 529753585 559902933 219359212 248500252 600101697 847085551 399659821 213703021 176278755 869474925 136516929 652451021 566739579 649527304 779491865 690265708 681831034 618187277 876067547 425511625 133842652 151860308 174347330 13453541 244590529 385253378 93173013 97555493 844872533 621617630 765995351 590975589 966710664 850709474 817545826 373556989 858763223 299072031 602856395 872606152 696653005 778793896 94016710 630135378 699483792 822745113 887948490 245720933 581793165 860153657 938842029 831404353 820215307 76430125 430420491 101313884 910836996 233045694 900854967 277762459 536027320 589866824 865522892 651680404 532019518 183263726 377628886 172972612 661190161 49919558 83991218 600953854 632080502 931966444 438419617 643067863 634701904 682846509 814293979 623108098 412802382 377453530 834181880 755358900 365289393 235025183 514928973 702640510 218628317 818211134 538407865 910482094 704621677 94570002 674313301 776572937 358731624 450057737 107694559 956992701 314213726 309503231 189582140 845601956 323387605 830726660 561734230 357457225 405789476 631405004 351492475 21215983 696869640 613386153 665504616 142890588 200925079 801636699 84180506 136911447 932967798 524367744 910907964 977965832 465586375 160321165 765827243 309789975 930051660 512805093 635118610 44640516 641532019 499837184 437617195 445207612 571221813 621208634 143176368 565754560 66132054 136758336 950128933 170022797 483451285 73439303 588136424 561619148 635121907 556551147 980388298 840253623 382041641 402721526 158909997 546361914 520110021 593825239 219230046 438245012 373752015 338168243 714406760 569431285 392056341 630564738 287056409 266998786 321933877 13671566 286586135 961355983 633216895 643344356 69195682 983371872 389037702 996625610 781814557 384682095 951482001 907711650 578259057 323081119 565022710 379468964 147781257 284977016 237570694 853419019 264117962 859288898 830576540 655299780 613739796 303189288 771653390 650435028 864485342 98098900 936690666 770327796 123848244 883767523 958866425 643699340 204960337 96052932 413793285 956845026 789011143 403711072 277084242 448608216 349530053 16348155 586808950 967447649 598093106 352146213 941975837 647649932 219270449 54475270 693219787 300150162 961165906 473620587 482804787 374660497 839853969 424308186 871292903 645009305 67754322 718764652 897234474 556471410 417342706 769216140 711340839 531402652 893409188 481142769 143259471 429560681 692722279 423620220 435062151 169484659 3841929 590470020 706957623 604911798 153104115 213682373 904906913 32321726 352816811 188312231 473214867 949747967 12298308 86495599 351227908 670889171 732488870 323782695 361193188 146567239 525553202 410886528 44676838 957182377 493782497 794384619 774363287 94694389 353076349 690829925 30668394 816699686 411598603 891041680 609305781 205369860 908207059 316193502 362635499 173951174 482388811 692746156 782051428 970150326 506036709 950286742 461714924 751441254 879219102 726489455 952359123 588084184 805115381 513167976 639530706 181137551 697602165 839154284 433026663 631348236 67618700 344196759 197893153 79181032 912448139 552975501 274914260 257274556 165697234 382201358 736044788 51892697 188670620 688436065 493466371 823532327 638367406 709023519 306707768 127977160 786836815 208277100 430344046 768016603 335143328 931055057 523888526 431628560 216382998 880118297 701431531 273717171 643768940 545020996 130655424 55403862 244959207 520694518 869086972 55353138 334866791 946025980 240224572 93908563 254429244 606333080 397476918 865090920 136323319 355011328 579057973 326373544 569817490 448825429 752801742 200167521 32525883 65419249 181829599 775952249 425996437 507857611 53581071 196190777 636309056 698904779 171579771 77458502 686134179 742365433 685144039 696016895 371756324 625340002 222015470 990276412 241892478 550739783 84404635 806983066 424345970 500394265 199335376 663692035 298832143 432251240 392561527 670764920 691461477 149027344 650527478 329190773 957014378 466172559 480345145 777893216 241056938 557457411 43902510 771413553 952097008 967294303 247760739 11176401 86709528 963039366 949980013 489485582 550350100 452703625 863846038 773174180 940955775 318448774 195456392 299178084 940474388 427309796 62590244 699098844 794741221 653281531 939160433 937015739 837690849 830666154 561329906 915424358 948486827 667444580 555674022 475635216 565043623 476371730 320441771 203678812 310232899 345435197 861234840 96160257 129001404 756560229 515494445 780177274 199538970 336929418 573388445 460124550 602033839 25164902 408584027 421815642 459213296 923519495 513096119 289895842 652303552 485476476 122137333 107348749 964554328 908132927 673131003 951895248 167724069 375713523 128387792 222362456 340451234 114665648 923558742 486959700 154086723 469155863 183539216 410987817 461687322 376503556 992090452 750521859 801817930 550545139 296565285 748948254 176502747 710233522 825004400 325277950 652234543 301795642 831445258 140716390 697092793 168243030 21602219 18225112 840700821 147987956 554491883 681588128 329153288 748376693 461497861 183984629 20206399 286312070 841319742 563137427 383068235 165881608 150292137 15340498 105311724 329579978 461528557 450405363 317136030 869868061 319350363 207745840 898081242 850889817 591768434 883175589 41416669 366572738 291710180 773392360 350801247 768746511 177990395 407666342 972462133 10118442 34141402 997825321 442315768 566703250 323333611 177722832 361861426 632588405 198254134 900311629 825669815 350639404 817295469 557510057 197047815 214801714 379439494 451280847 302202236 380625698 923962470 844556931 469816834 733042347 950400526 482503836 120214429 522034683 723789699 773108610 377221620 118616433 311955221 728354508 240257179 576667013 170307431 786939643 146799873 117809154 382835680 776695482 796547550 476326198 695977969 322173956 505487781 96752707 185724602 591346217 721467494 172897586 23527647 595343584 933815120 1809311 200076539 170142175 529137288 431306312 599769478 103700747 201422380 358983336 976913683 656810207 781852590 948534589 854837331 495525243 334124674 139932745 45210704 729280993 664927952 193335053 775766158 819420930 453566727 276282247 336162452 329142957 756624359 504540145 458132730 764217727 858510379 821820848 606454297 770490665 904049152 880236014 608838148 863934577 435977311 121983941 295494932 588450635 423369133 723091178 9936075 857515417 318900060 684004254 356186052 867425736 643924615 607264501 481402610 511166949 588576549 911878033 873034574 884252745 131095926 499327733 792162025 488829474 639908626 808398379 249375365 787069674 273524081 738647430 877524494 333702430 361469759 943720697 6238170 497439852 892403711 776310418 471501861 682874805 968779144 936624291 346869691 336431928 794400654 816833886 342903336 347973195 904114639 802859803 65047603 778421505 938701149 908359717 115805269 482603869 782378319 975190306 550872566 712339649 885465167 971948870 125715160 367228786 500046568 340647960 300940403 463817134 945062201 531581824 444634163 327480968 616131863 820954784 872839054 506299868 314760803 889725495 92916179 883238698 364486187 501663475 28610209 536306017 33804903 289981114 105999714 424620402 992217057 288163583 198683645 681546877 681345419 727743313 243627098 650835517 101628999 576049911 680433211 152478667 632950735 594744073 186612893 382464460 584838183 887838271 910399185 782926166 973025358 700776628 911071056 894076529 331416373 126444539 524216898 314857131 855313264 837331042 762405177 908333135 474263248 532245907 450641058 684425500 685208858 396056146 550602488 213103195 316426792 342399205 603238393 968282905 462889205 980707668 752319425 704471365 785955682 263416101 52717133 457804222 937679748 457026667 965126163 575091640 931447222 240277330 843598127 484413776 593632688 944564139 109275975 100068227 990536727 436021714 683471096 393956628 515497680 916961929 426795121 161512516 48337014 19382138 258449642 896693412 500064470 67322989 558589502 332592248 502540696 766055761 448937655 909552188 891534567 543952422 554368467 780591470 678524262 525486217 592302754 705955281 767506482 869782699 500270027 669518265 367224167 719096439 316858840 545677959 471114389 962308869 735434595 737141004 381383457 303543287 985119265 728788219 232355868 382783334 177317054 789692518 118986191 378850043 508213629 466341456 165966811 353524066 881418433 985581658 653783900 399475737 206320701 70499241 655745113 701768030 993072160 228171970 787723692 561289818 313991684 774848129 619844646 73080151 686850456 146169166 531151871 718896917 193904857 693059258 294002014 338088266 630658511 250359308 827171598 124526323 777339456 448416640 40887394 348344303 971503104 16168187 503591756 216103866 781659811 944618066 899525837 313517957 359955092 47272863 71338742 39699917 693210709 701473232 514624204 834487962 590398841 30974565 664047118 420829977 504890733 47254866 297424234 81435920 410931577 481430042 833640103 255337369 919967898 4539818 558372967 358366910 774650015 357341484 237475692 476789996 615440144 582447412 586552049 189439748 7647133 578994816 941494499 575473951 148102050 344091405 325979049 709140466 111530537 171777627 624215691 428405082 327852276 719404385 843528903 548276264 932848901 61224659 618397158 551680987 196861916 410238508 543210400 696871604 66319790 770729848 236117038 655192117 593611734 915585408 686710394 948579296 395453287 883929958 870678491 863732499 382970184 376689438 644226131 171824660 866363804 862835084 400669460 148071375 306160313 483038979 689384837 840904829 902183649 141062253 963069987 897746997 606677530 272815573 818848719 551327046 292024109 155176295 281241813 76776870 288052666 627375099 576333434 53890472 70401283 306858825 787998053 231919250 469275717 230151665 353729662 36903068 83692662 969858375 128056069 749344200 443755447 301925820 55954978 52634954 351406660 681370292 229966015 285239967 845104504 886180689 57249142 954940416 515346991 240191490 792637390 408020460 307947251 288898501 600266553 336646159 363123402 647425438 250440568 226662765 252883255 243227797 606302812 240394244 919117843 446054829 22852210 595068737 707648000 785138698 396846691 909378704 265582771 606101114 9381452 896125007 331673089 230062766 618386174 892318847 917883390 815271685 572499339 504358289 55134299 313009523 874032892 160637303 86482448 444572305 90433898 78630584 624157152 400093368 685879907 230385842 902900363 287190867 901875607 899479641 68349042 950397861 887958742 469181241 341969909 278985108 211798012 665373091 744093582 699728279 36352864 473959976 784893487 42798023 624454870 802181907 499975718 272746923 907136825 101176848 625953041 449412154 941793394 986918199 681113014 257105273 721929501 691585094 504282049 387147398 945207040 959433034 718297772 141736901 464147015 508511460 364815422 685647818 338405487 608408702 791975033 765768665 896448066 58551251 828778865 454197078 565152077 84196798 721657892 785841265 647318104 501111400 266034314 884933564 383857668 904737958 263768453 697815667 628934778 826981882 288336010 519933729 536771751 908590310 296869690 748971658 976147638 262239872 301317124 635974991 61152392 410250553 322563567 432715454 667821885 843518588 605695269 458941896 378796448 922199170 442696256 260817831 369194927 280104434 28238213 187654653 402422269 772429785 823680206 528478733 931172742 168838949 516119300 836758109 361393271 688494187 573863555 963706591 777179561 682761967 59975094 155660539 162271785 466708387 309519909 130468427 136459594 281252811 582461007 585467351 708254747 236564677 125817251 171992638 67411398 634302384 745282517 429366092 77994013 351055171 228564619 663212051 792970676 214547688 179188859 34691103 787512912 548747332 440769222 807365234 457233146 780185278 3097777 317831058 682397611 655331533 305262826 903609837 566908530 994824970 938975439 959668416 397338840 87256886 443802149 5942795 949446454 979440210 778350338 255506523 699942019 930513023 777747829 897604377 574947595 674233683 203342384 702644576 605110246 809862644 581411196 302463193 95640543 434059778 731449518 203772545 242116395 739678241 722828398 558649131 523692212 301085586 946655499 36985151 655320689 356202818 478275426 12003700 393568695 502307836 155312738 426814242 969242803 671182222 478036677 752703709 134767091 415591041 509708409 528192804 684037324 505257956 817128364 622168976 30726613 247062777 72621680 124453084 103651303 381510194 48072611 761366283 525990011 184793150 264649979 162407750 598304587 606363164 272199320 364567940 267789714 146525840 44055230 738536525 696730764 177142614 257753874 518982771 135508677 245299873 298015395 738093178 594129029 89904130 991637588 575001584 218527553 376591177 702320228 591945427 500280875 91025691 407084041 13704737 899949200 369262182 672995052 567451871 688885611 46161143 330524072 936158810 295199189 753363417 648081427 127444231 61776290 446168161 313989198 183578227 265648709 488995471 868753777 31096343 56122511 95173479 139793593 97148975 14113602 39836727 941778145 826472888 554352711 856609419 492110492 617883169 197377112 745475446 502569375 497706160 147107196 983938430 800225220 427964618 293924552 539760930 122921896 535418220 780542035 734556580 458548494 772320277 697948440 158152413 449207039 724631662 25810875 214979799 235378219 906822905 313625679 462494666 437867561 104797796 679514598 266606826 74971045 319700946 527241855 462247722 716529539 838840084 100942956 773134103 19859352 691769823 305799624 492507619 757289666 274655136 165900005 174481032 52802114 219497025 973895411 760776366 619058312 20326628 800386374 483848874 867922445 253447191 73922415 211697707 825206644 165949430 193447882 778577095 554158042 412040240 682743036 497021880 349454092 994374628 85912411 94768559 719414966 451714112 823249381 615998830 254818811 431746893 359680951 276960163 745586688 504651756 746248710 305968683 930996122 347843995 261468560 149928706 998768256 540853432 339005147 369389149 981056635 568565155 767959546 119832518 659719975 399185031 12371357 870916248 528356637 377980944 54956702 261335244 54948231 565592504 382973793 507960582 906420408 726837353 901442145 994561815 984123166 342751649 146325137 515927162 278473661 558086124 735499928 371906607 859015814 821463164 654000494 374003845 958603275 751176185 277832554 718534848 751027385 138433148 960337872 362078566 814441652 522437341 666996539 149523206 37789069 325335619 402847719 561714045 424064859 544829528 667404279 427966455 400731669 847934983 102209133 87011268 52196916 779097100 677100942 839757936 793679638 412100151 58100962 789794163 821638254 891367603 319557822 531453632 775852407 436890007 458170977 917076496 554371263 322014889 334404158 74561196 677102168 91185128 611542203 331691101 749519879 973954371 30045499 531342725 511676089 142701607 986859722 469492659 508772516 408913650 841421345 125707316 844070929 740440326 336387231 6872215 669826411 484364930 354222995 934704992 574810054 138397535 231359076 566191784 822547815 755250252 390848252 127765343 43897126 277505173 174851338 231917875 325209662 35704363 342945886 14941006 382741458 369391205 725290600 919075107 885769259 233632957 347117499 67043004 495621737 630650104 905740271 995461298 858618237 2165383 201542942 131481188 171754856 101722197 216533206 486408679 715080974 62101975 416103691 606089345 413070257 2541486 978190214 165528308 358168993 932073059 913121697 643416120 932018078 514700678 798897192 665419862 968620670 774075766 61630334 441525022 591639133 689205801 536840771 370277443 850074964 851293874 816930713 568321261 200660235 596204929 733161881 143186146 737933622 409559169 309221729 504487310 486568068 813546571 711621744 857476215 949381668 266797012 885838021 271202609 341989927 748109331 227134932 114991879 873938349 19107439 873321241 373855823 106040770 530323769 585222542 619329749 151906118 953188365 697782920 194695947 512524157 74445302 408526383 151088786 593744341 297545113 341731634 679660688 463295408 849616786 497109967 302458919 801177166 373296683 219157660 768865088 275642763 315856650 160484629 332235382 721330600 406903897 20244081 839877668 610673723 478856275 199423594 853724914 749066395 200912301 75321027 128572688 788487351 59982460 459841305 637833894 770487123 254662701 770209767 549854607 997715301 35555278 218634156 650009273 529795724 132168243 480531612 587086693 315375829 60254709 37666927 126162658 886776109 231469451 758981387 851197878 797316753 856511704 579796572 730926096 147619811 260287945 710545480 97848085 210430373 604201286 289106055 681378586 275043530 522384811 408043215 1672624 181319913 989192060 929738719 79464025 54294471 209788227 803597379 906591253 93007915 831167921 801203168 257502724 268824855 140215824 207347377 171577052 83936151 619255005 51951689 648435080 653686211 741401918 429527849 49254393 234596442 893249158 316980901 90197684 704182031 195782991 808671380 228809022 557820900 693957076 209600430 899614611 245900408 560288788 916095469 95379683 652768623 397831978 503510443 924877883 201071108 855909989 241109849 607903418 773937705 901884983 316007622 432255564 898843644 885085515 646889038 797051227 733481856 810463990 860685967 731147416 429573976 437790889 29437705 163478779 477563724 401133864 58245165 698072806 560374950 486043562 206345413 987794152 914449157 840931269 839014161 640536538 257355353 297340281 919483785 590738871 897040538 599617975 7167590 921951009 352702951 548373733 460856762 118511332 978136205 729790462 894194750 497371602 668588760 954375550 501994187 353852461 352198199 223079392 128988219 381996697 648978051 962857266 352448860 249710954 851968005 280655323 929406059 548062943 462580413 715285875 13740066 2154410 461913708 720650682 129716554 465347626 812967115 356138352 456203813 890646297 291988879 905324593 204934516 439947445 541519914 724346082 255110671 289447151 296065572 202678096 999749894 839810153 798370050 147332267 67395150 865643817 865819022 677140623 11429724 482380568 15500132 793690994 649854247 238523554 140988539 579168878 780716245 286671135 615508442 712437945 823693175 502952129 499495886 768726663 556175611 406999335 540330180 31083792 971728236 325289526 421283860 426476845 293317954 427454013 521122446 923477962 667341120 982461975 984838236 399902186 173913249 696121552 636633587 468422776 925854274 823900900 584342934 474166693 32533409 40885801 682463325 934100454 829015828 160345125 250280730 995162417 810748028 334968439 823826034 911693217 438292478 644526227 352517705 223882315 870660984 743946391 424108799 270201265 194086925 474562705 223746709 826979272 761025068 475002957 669501380 543778614 748609401 891964872 883503215 319497153 866141608 693492080 46914222 209872881 892921210 368079157 249076774 967426186 110579360 986159035 648441559 731443372 117078929 663882696 689954478 244339220 721209336 117166585 252643342 714009798 624838326 162055441 783596887 340369994 760829438 795804763 845535872 41912686 580879707 301497554 557612943 312721732 578070016 995877533 833264988 110221448 528248346 193907592 854938091 430305638 149705893 545056501 413094038 623558498 357154999 765240905 76443111 184473509 205503882 943783249 753872034 844186031 207703543 361321500 924777704 772223826 900530868 430585790 197545182 213189099 995639545 15604970 632383992 274483609 367965047 673947968 548691117 147652715 951309400 603180530 297594609 123667157 386743102 719475367 206320033 976292272 673197324 564082465 445336845 685157412 88625993 163960485 795577912 991708433 245295767 851586793 673185100 988418702 542721939 832627418 147984018 848778397 464491609 985988410 38407809 968845827 185597188 571985496 859743753 288112008 701241999 647796541 163874007 895344341 184057818 504204943 114332702 140001783 670701642 469969616 424206181 974169486 627039641 753985324 308380820 758185535 550495489 378234773 516621396 27988377 729348426 618830795 834279182 409204114 565133968 181843855 212055647 72214751 496107390 793045475 1453421 451840835 908326413 166114951 975475688 429060455 417188206 356639952 426425028 11342204 222704874 791943126 517592162 348147354 453540627 30392640 831572905 46049187 765746785 716729929 922671800 517173866 448163696 295447849 94148326 959483928 809367021 986727827 114373817 271644898 632966392 34169032 737274410 808970600 252682112 606148212 910892730 799072137 579631039 670738774 309314408 500860399 2420757 973277340 149652492 489551950 629154751 893076225 466100931 454398406 746121246 240920438 978881852 686453417 54802707 42988990 905568960 247165204 910118436 994577466 134130577 477259316 909453767 557638411 806593936 405087619 80141619 721193531 127850530 10672281 549624743 205832909 436172460 106471869 763077618 539351390 7058298 915139373 418840971 916471896 457036244 991439587 827959258 193903806 874521134 89370311 455486875 413944286 333427073 375379077 146199407 638369516 869679782 69475059 312775791 720330303 140794414 894335141 448931138 504043980 452225059 953131283 595310691 787382826 583638132 239997148 397765423 786406587 448857075 28786333 233293033 123106946 278473921 871086277 66089122 719246615 503251231 571775578 114348018 843630111 440419580 842273432 775501408 118484010 172670855 880393262 706228506 125836857 763973961 622759703 286935513 660833166 393963332 451511968 311066309 536821510 219833819 472779823 355622641 929557131 908658966 782661629 54114146 831049333 185909964 40918497 703820875 405960183 194957748 474683036 246872927 471035084 946683747 515797088 26625081 537552680 666953258 166695976 818978966 642646236 764271076 578685077 157724302 636138312 308850810 75223086 468561379 578606796 638303433 845976275 213679149 854652368 521842153 836088485 466680042 192971834 434952768 953700551 369573492 29873318 13216944 944962496 884813344 727772648 139397109 160987639 482906491 980199488 256716521 455470819 966218125 507098414 852830985 743927945 120484511 891506711 635060067 985027879 858399083 892728689 665546580 800072331 924942153 215141425 376087176 766172525 939869772 11680912 991973372 640601626 773122257 241725577 361283494 642158308 948289525 17129082 193150745 137811242 802828789 977664509 671025626 570770998 247006725 606418445 939736051 478274640 784376475 563818835 693318456 902332649 327019911 514222680 356728273 882608440 408187519 528988744 606539887 785633799 629726351 737591493 303189432 398781552 958324104 889631144 202882042 974431747 481301362 760341952 811844528 113555365 67137784 783492491 606679202 171627501 738947734 188844973 271877469 830094416 510563458 974333175 505729490 947394087 159230178 186406728 245177321 831742232 513282795 308101079 493406208 241366327 789499998 503485519 143374051 524445546 342960057 30912655 171089572 188008536 109001113 980068269 667988090 535448939 124911638 625702327 703197039 876996229 188939128 821931757 50165573 442747502 559967506 273444637 877527785 802803088 589001918 178825104 942210297 984111616 314180791 78535362 71328382 901094738 574509803 750042355 506019930 161517650 638155869 416949898 22180534 638952508 214959207 816812236 231536786 577024459 596176313 146975411 691114276 966924645 370165332 247766332 40115540 27737608 256050967 683005200 863297677 475015155 94836665 579220057 227294778 47704153 961652790 365041746 877006457 771682871 999503594 225813266 319277781 435705687 487773440 555422303 552003810 931416418 563542093 123347226 885807522 24672733 709094962 285829123 451422789 626542887 519661922 789592360 775191086 656551975 635284545 903257834 688639263 272134443 206494042 681381515 406724804 79977316 790211549 830024730 722175262 288267034 42116171 476988770 332109059 312726901 588306992 389736131 380107728 838466844 639549610 256490575 794824985 131764317 874761466 683950753 502566380 411240334 489363947 491001705 901382587 723473120 9439944 686061174 764897032 683320369 22528752 532043365 74152929 554159941 721494713 467412755 886937044 502058300 592882954 264844653 7000820 75236708 99198298 252941283 33869948 865837758 792948827 551295416 117381390 126733460 665642578 933594688 211993611 850038337 151531800 403570241 405172189 575783864 948811995 913982298 88210344 993702422 104712772 896091396 743167392 185067874 171587178 662132656 295556856 297218863 918081927 80865280 541577960 624001582 196315865 753939638 999405991 359438302 527628756 342432445 148388939 713155417 505863579 343352316 774016131 237128408 547337068 784601888 768392548 531713381 600626938 797449574 880266448 524226010 111698460 342424872 547311484 541049114 4820790 603380859 267112311 26811571 628038718 989769348 602525257 715246233 903179704 281749567 197473835 789164034 825880884 411716642 328048955 563444355 589892418 472640808 460337550 202194620 995539602 693037385 353328591 827569611 566352121 9787546 793900787 79076881 998357299 398241776 785945674 870786857 853312396 439355440 786599076 39296126 409883803 876465174 923593804 941425034 37912777 426073036 220643434 963676873 521384641 89521123 499572767 523403107 146839638 777961571 889854089 136907075 772209260 96428147 581758315 964492671 151585405 717732562 608573260 170034411 575582542 341609477 194641981 990812615 561587739 347048709 425232151 217123210 117939119 534128080 462747573 119247768 253139142 703196994 224397019 899827903 755974537 667072937 907954930 508800909 151462702 916766639 448714047 872952426 396585612 393850391 266121734 290302255 505095729 559033303 123018192 600010635 366982916 276034995 130787430 48490880 679990535 29568562 337682448 585564249 148159683 211637800 987422254 238902197 29694437 753774514 758702234 729380455 667598118 221808312 384911184 933386339 906618718 253139238 912601049 159150346 636802371 410228776 974794439 197909220 951321988 975080451 698305345 360727337 339599467 556754889 215413206 786774881 795918254 309348440 11187599 57502233 155710257 381319662 162361420 309790611 57014047 899287915 979572648 103719384 18083743 720157901 227381326 681641948 11838778 148397659 245951647 147826473 160782306 450653391 741973400 607767723 548625451 620405424 584432218 742798611 264260056 353645703 451471258 164290608 959848038 157942602 482039129 2367224 390726025 913587392 398905126 131243210 293299541 596485691 720686391 76671463 986526964 506056125 848938673 79492725 761079180 509334779 606326651 124667177 814729147 984688092 672691691 667508596 748445177 968478996 114399727 657858097 517603901 221270688 783555608 678729193 253297890 785304799 255094207 111316990 98898436 985913103 111809772 322962887 347388045 681455239 554469747 435618462 921167493 509248357 425969112 255286431 637800624 864692149 220925421 115722432 816099435 810808875 676020294 125128165 355048342 812584485 877885435 562392039 949040484 115510975 760302021 530959396 513918365 539659016 487210474 515316125 824173185 262549486 406317828 882233065 582198859 364042981 847254676 130447058 551682521 171619254 201172872 560188642 793148606 95785530 790989490 112179041 160412250 940376048 896670023 306923879 568677061 91400973 485263285 320050960 929907337 766707663 949016524 149258990 682595067 472582353 785361523 923783566 326783117 214163352 305087816 545265485 785392130 297831782 86199810 694798369 381309753 443177064 795750340 98264822 856192841 69108663 1762106 83445883 320473064 691752082 702327814 488315987 35956628 884556089 144639658 119587754 111694129 265016730 335873712 794960921 371963265 807791580 719285829 46646343 139536410 204348471 313547739 973245292 328408363 376145710 160455672 787229875 348172531 895828900 705479957 450211566 178733893 792891524 905519188 910627554 123176078 475114025 147765025 950607116 551326947 342407141 156659656 335461786 548604749 440268066 740372307 301703714 661116964 88441876 517161850 145866007 709803218 324189542 825979519 285373921 717598338 65971296 81546419 447766197 245594279 925346221 834478270 570260739 407517075 950022421 26897323 681425757 776549121 346865749 955271610 873760983 138827197 558509777 109072577 748299699 347573220 429798567 431967459 794021133 281046216 756886135 836160389 923064896 861058578 363918388 244624092 858977370 524739667 712993112 382553305 477454380 827224283 393186506 291195766 275572922 635742723 91502289 245227249 594188151 506331282 343998813 842570284 190711884 103999425 30753323 504014920 225145908 370500217 475021840 478437214 39386787 559561336 782909790 190365898 648061291 614481962 895086707 436038290 954662155 423122960 664864832 128714383 194852213 68349093 692763268 948239177 490487092 476308936 968273621 885722844 970420942 715827236 589516103 618852069 401472335 50559187 506100279 831793052 997994453 975288651 771997830 42861601 254605933 175700736 839303246 585106815 992418733 159370065 226458850 812272039 974137546 300431972 295198884 195605350 81195897 917890791 300366985 604386859 94560338 507456911 50920906 791043621 585833464 296735610 317665049 534322514 754024001 299535767 651428143 416768698 352224955 413679214 470011081 73280132 825615449 353969013 571941856 790267189 447368870 487567835 67604000 949022874 533281496 529869698 511676002 984803459 906920068 987681121 143117658 954208095 110151405 290879768 452435671 313528108 443026350 561031895 724416220 556370475 814959517 330304248 480667052 419837843 68436593 317766879 348435330 628333573 786851862 59882517 458669886 307203343 142591692 629180164 92061076 265991729 715154172 67337653 798590547 480520531 509695228 340802379 293768771 898252367 92459105 257007035 942626886 347370147 327408978 206194112 148016561 944061290 597116326 496147552 133512955 234719305 641726761 746730787 296937068 116577248 746439336 37886242 599375103 679221983 290314995 535833204 405335452 690524646 323570103 179200310 832921038 13724895 694795145 523298927 878867582 751309130 100939505 712374325 867762136 685870681 617483181 548024981 443578977 941715554 328779619 657631161 673919007 131162311 189580881 90211986 438367410 577701679 673718061 249968373 813475248 118812908 849795730 388870634 74925927 643761331 996084530 689232297 705205028 633079920 851446253 789514299 101339082 269036151 96839788 335660162 79431882 825803856 370551870 702722304 747895168 429713002 280166212 933248089 579959854 532315207 458085638 184629366 796950276 425617318 429994892 891671554 439365681 517427570 325193434 353999397 151108312 369632744 766780588 974144890 872650945 627804539 561497792 142715286 351728693 690341090 100997856 624877828 412345999 116050538 230780781 555968455 222144777 444354032 737431053 196659879 448237524 960343762 342435178 10868242 839102434 11105117 885496739 97945014 516696608 15302718 802518228 676341910 399545802 511241416 949777997 432563302 190572307 354662686 711927133 31702942 576696476 121773461 838974494 401996920 381713869 314315054 650534016 6737653 473010478 848203597 742908620 831263817 469629021 235365216 226481363 887410923 787096751 575975483 97372423 588211207 563506634 197459923 319975503 25291170 453909074 324840759 858796495 207962859 395061217 717867710 436852210 531110983 682418846 176536569 301950262 220452496 419937 179532353 810027512 83350782 350524363 262599949 841440489 119401833 73615297 404379545 438289519 14195263 742678730 523699172 704953132 134433846 307847219 499374238 566477823 357277958 386101804 757243190 243639331 413065626 989075408 373620742 978576624 451995272 674960915 489700131 201798173 286375769 516707412 471651765 111650411 499873054 55770529 987801027 51097959 269056582 634033689 843557882 202929145 669468318 281528208 873236080 265849080 749850549 452925755 3954480 432230076 703583955 785649024 722398735 925082626 731817300 761452916 814769334 807109674 511521161 268815433 566508101 587610750 622943515 75940578 339212660 98907314 100004208 905860252 435800016 201583967 799351224 764078765 483531265 411466691 32862477 102834344 396855164 555385349 749561857 239746572 867047580 198848002 832978210 728861713 232595303 237039673 118053884 855200574 291020936 289763909 573528738 967227452 989225203 232139244 167939640 813208277 104355648 81330150 865742250 387747811 211646835 723756334 483388410 906763742 571461460 868748945 312775109 342366245 616013254 76939056 467719370 868701360 43034263 718533608 444236521 341926317 480949460 104164991 318879555 160784717 441924076 717758512 976804914 861210824 875937671 681836923 115916366 770539498 246196232 348370258 505883179 789816857 986003103 311873562 497711465 156423796 80462494 260999330 160774642 851143647 813377602 245082215 881186742 863740903 777669908 101099288 780848616 759641051 149190372 28153194 355167124 399210444 19142514 427776554 452825581 513698867 565893350 701930377 556623390 459121762 433206277 396721796 366544081 119995546 702293107 365052441 153437396 615151024 405744982 946172322 689836793 726087255 522165393 677245750 50782526 957638734 874258860 240451597 86339379 51980689 763592511 536600415 668704458 192653082 855020244 178590133 188032347 459855862 519391875 275192918 534031879 252223237 499507385 32308451 567820618 750421520 925789653 192324905 314468379 945725963 845641981 74991965 494958429 162580138 604263345 81558533 304881393 402794841 905965465 12015180 476607267 234907228 517179219 397130497 835170472 358561089 979833826 421056946 648018607 585478804 89066164 802887650 459250949 336082606 51716262 80577155 763619154 50008274 267556181 748265191 575406931 923647223 255059989 112031530 401198562 75055335 180912065 131866090 844870965 318299466 751088118 146535664 384380059 369816222 198747664 938329700 906043656 119136508 850851156 793931412 529375664 390081087 675137106 481123956 1794908 380475716 724780163 17923973 684486895 557407684 575890981 810813197 668074626 541093630 524632993 952874969 761781048 19902002 175220723 155910077 59227451 906635719 309123536 146030106 675087456 987871245 415544075 69232859 666491198 883597947 691942849 119058970 591489718 593194217 82351461 945506939 513314508 353903275 437086968 684265316 252436841 4604888 871805957 275730116 49423385 105613023 441658593 411904928 746812982 120424054 761379977 435420150 837957667 198802210 285481124 116487718 760631094 775647871 671258794 668797481 64870500 445713904 858688503 499244861 358416472 984234898 290503686 552617288 593300339 269235218 939948148 99121284 663262726 155183970 742216921 464030279 393036387 688836380 651341963 741347630 201708788 523611676 876908189 829620777 968397829 235839041 220564689 280661951 184206008 431261965 177017138 723076494 489334612 627954751 694617205 142185024 871788076 564904196 356985285 27185732 625169322 76840883 379666498 978923010 659593021 820542480 962548079 478583214 377422859 259718621 180424857 931916630 356960463 289345454 664331978 915653989 350161671 138387667 631913764 520540015 867642047 261556452 320579647 353007312 596461694 897088542 804385942 564629393 614271795 827283348 27740508 234986016 27717294 759104243 677779347 165798169 906067901 226484541 44694265 441969192 492655757 817254112 340234425 978241475 637069657 566826639 655080549 576471445 510431516 652632606 210982345 894225634 969995768 422714848 893746858 61892309 732471065 779686714 666507377 588301436 5268986 856715186 410891959 158444223 857737581 128388482 524376057 568950541 419181696 953956574 78792989 79572511 360123462 800141449 818287212 813328570 167825445 671763520 858199385 212935651 930717047 887642900 139178575 270651549 333914611 335139981 170705922 819589790 604747083 387648365 913413286 843787564 371809967 672767123 571722180 672891205 486929699 739958859 676799709 456376158 117547412 852631711 72573391 811480196 445935438 70189462 705075368 703181103 200438282 918875060 724713116 243831615 765134006 604543495 649721999 382526354 604175407 9851713 224147490 437821130 51120376 762164026 110596488 545978555 553687975 377190393 416223703 360609935 749018542 815653611 968561224 233047079 443902909 564397210 148585549 291106228 65277647 402945489 235986216 386837005 634369135 621992490 816136120 526340201 995105278 574611526 652259995 958403326 210366273 449769950 382539462 124359299 296410066 593234678 444051727 68739838 905103918 72515077 706622413 318683040 908400230 7103498 279839217 234146627 672465107 148692007 196813680 147540998 222169880 773870342 90872834 800104061 579244200 315266097 75290857 105435655 85555969 231331845 862442030 715984553 926941258 519397833 747257698 156474826 208146554 257066359 851225646 348040805 279748974 491676537 569207167 145672295 869093486 529111242 911052530 93484841 22425027 290158335 748228735 624112099 30872074 521010962 610570086 420584683 680787216 805131956 333760255 454229984 486695163 227692656 817577204 898063891 786425839 852199616 782104375 305195947 447319503 189914469 390550180 437989433 888569275 775595851 573744889 916644440 560961782 161414372 45022804 435422247 296094544 314299662 695086300 688688657 336176251 374743209 960464523 195947392 830434101 674149340 148802192 993808748 440745469 476189354 72830547 688517837 513073896 507259901 249023231 829641361 465425934 487320887 230409752 977340711 640944209 179290193 820206245 125717366 954982848 723467694 676273159 332333550 665734415 746624558 464452759 314655813 997092524 440502599 76951145 800021939 301142438 687287816 508939747 791128622 24258293 522221919 94971921 166441405 758087337 873263485 493895947 47476374 531652988 679984462 732536179 90132037 970600391 894624132 477193749 201937335 964021217 193687723 695520422 819314536 502690371 827318093 435561032 236288383 903557305 515822485 246239859 687163159 448805377 433876909 631508486 57242458 292084443 405311403 240636198 466460691 862513261 724559470 78110922 837513158 711323496 613561252 707502708 45710956 749262759 638275403 762602063 219234280 145896176 556770133 299053273 715324174 853473939 604557177 821093785 268275021 190999393 880596719 550471553 885184387 568956615 673579393 336884143 175741712 822424645 10591739 97550126 635450128 50975026 286709002 815290569 275151714 540300026 45026922 60291846 690035213 609882059 215508485 507395973 518233900 748614819 705850126 304726896 354349961 682786459 839573964 191979676 412215826 474857545 366700291 839392425 295745298 130624906 828626736 840315194 506260600 261721801 69403646 329423645 458157613 410754333 472567606 294602118 991309119 347082226 477321237 628578298 578139860 349455535 964596342 41006821 903834708 317775342 867317143 451494701 11802525 485711123 744542595 787501173 422726479 541570445 578691257 241402734 396068138 770096533 495870264 125216939 989516125 463461788 171352422 188693343 779762611 897933149 949619846 133315076 161901478 961205989 468358751 103299583 309579041 351527829 33955561 316846205 876297435 527032006 614325854 932176412 832854910 481179534 727602125 410194076 423020448 775000418 709201263 109379286 529491922 402767836 810567240 872099511 298904701 488785876 329479657 5610725 881302743 887667090 212972302 27977329 553457401 913459678 318546520 825258150 206927184 232169482 772073274 948750950 373041076 440531677 289345742 115819038 931371315 791411133 443984320 828640559 137370724 908095793 30410722 928814642 233348437 665932120 184651249 585925744 694755618 218028980 913848426 755793656 504985538 343732588 148176792 617377949 559979079 788539052 63432601 277972776 534049671 44884896 517141998 612751355 859253862 380620036 654971844 713043453 609956242 714087121 414702008 639106404 430352451 217335269 906725495 353793986 630015390 393000934 713667066 762556932 703210826 775213358 143297412 905203384 450412265 569333269 801430442 6966181 656754523 727806649 413251234 985924675 60093716 361212825 724593710 266549361 778103316 811602721 878685366 930176149 858944089 79529777 930163500 772970628 699950305 422160364 252193466 658754737 896761059 758316060 107569918 980854715 652429374 264685984 884636725 343105061 905734783 322765096 386703669 259277204 437549158 57370726 693999700 40127830 381625514 390079045 269586392 890100301 697135119 116913856 618999815 698608579 542059247 344577011 314111397 63263004 281188625 655507898 436728598 136909894 69075067 615674506 942621930 953411587 109412920 776316033 623247336 68300133 318081543 222880718 565689165 310330642 440284096 699519982 817321671 174111684 753403153 162349632 469752442 141421133 55594429 160117391 462418522 304609489 215416575 988574422 369549902 199169443 505897008 876272986 678634500 130904013 737182999 95706352 531817196 614758189 58519863 331045404 368172470 46644421 523479571 935762445 610012781 132565682 468465814 661435170 833552951 876343594 908243055 354896076 215010401 395741486 933175200 90199134 551493939 559320445 719824843 389891066 364993867 785301932 32754644 282688645 514003459 403111538 806134367 876917894 352825154 666593114 731680508 499687746 339247456 965338001 842485747 572180140 729127797 44934963 94813927 851525771 690374590 547420952 129067838 96612001 489201233 938319170 54732873 257040431 843901283 606357785 522080383 808663342 424906412 303556273 629873991 668863533 140063914 996863204 443671628 873684648 906863657 134248718 371860302 314732106 265261812 642647590 939719039 209293552 363918069 651483732 113858866 526728026 96545077 929889976 172020678 720115030 868189388 124353636 72554009 1791139 451668362 100754160 966426071 827170472 89605989 402462084 155030482 419895925 936801814 772043146 17281731 177941615 271644336 384389416 707491396 11430247 613804390 36013267 675648348 290877206 398348213 699648290 25246799 270276446 151176325 641608177 918435190 480195786 77800601 183516046 435037816 943452570 265508736 787113824 610287156 993240444 344638965 948599243 199008301 815104992 595739657 324092310 987980912 368345919 158063018 90317733 715766694 203586402 450239487 167722610 301638488 547609806 149426352 982465811 804348677 969943902 21201977 301911455 14427358 483278030 518998240 695989832 652810994 47950795 977291664 716260056 488829281 552576301 220837222 426877542 758438843 354106815 375132727 131489768 266172648 120344736 394806448 501631061 851971374 502657996 44983229 641834497 590109936 103225149 989769725 196319874 768280831 224537505 602173697 677437841 578902105 120635511 88878231 807079474 85633511 345502571 1032364 835246204 556317024 946891680 733313901 810500095 969502777 529939463 996448217 724011279 721449019 492763559 67693651 488838064 380974924 785882095 946249060 346295535 243203033 941948338 397925659 580555954 982247978 886003472 658975555 779758429 303463726 779190183 136483915 945407365 96306718 51836978 699355270 717816018 152199131 579961251 632020726 838603419 87195215 141005829 23776577 824946431 908950006 265480579 383798652 547936321 651878068 47802007 979846039 223641639 972281521 804415535 858904436 816331949 348882977 391302298 515772416 743548318 424305310 586554359 884038469 91003976 512659927 448927176 749181942 668436803 665586232 286670684 1366615 203653807 41789357 284945255 653994076 143113548 987270829 636445958 221201710 575442930 745035104 549972948 871061528 671408649 277816428 402367879 937145373 256606400 948511238 300196709 622530713 129839956 483041995 436321961 154334703 378066809 514155657 661541002 586524000 941641257 652625637 517380478 803146547 991641709 588552043 100006316 399951093 485810962 116439996 146735938 663172686 47128032 755077614 993591779 253468132 273347788 446920974 180216035 171902504 373867055 638345695 695102904 545217967 407812843 35226040 329050532 992866858 705480100 951813927 657813721 34692019 625447067 861322725 150554888 257915292 861110705 626085850 123357416 740600576 625227901 570767538 955250729 175476091 277658083 230924965 794246039 116962539 744409789 18634714 238845604 829216674 994444091 94868771 51981913 986493818 4592225 288764666 986668944 780194884 345687703 869332359 799008870 348602885 133113191 763790411 62851336 443901298 929402224 465279437 678200560 614529668 790179828 526753990 514136384 456496450 783697401 133173088 937366663 679386831 273600673 433338612 326264580 80840576 239026779 186880058 756242489 440499845 544649042 2371569 740612278 427376000 86634086 820092834 874034076 389532673 739638063 296521731 787430643 797317854 900820902 516452087 555120584 779382858 598809684 592348309 51972315 520665755 964245714 843078486 672437452 957154501 664810345 501170804 819180791 230140988 713039025 299983042 676365744 670108974 961927884 718326189 462590435 131168271 415001356 947379955 384045684 643941086 653118247 316230798 983667162 334173020 271714476 483567607 281756633 995283989 673250168 950255781 374707017 337274640 596870972 531273576 469654166 922930399 923958436 438199125 725379876 396965977 156914472 538352010 243475351 195218023 686014605 651294916 297998301 327828933 115316463 1766375 996648214 178879072 975661811 147765044 847448803 835677474 943627463 378708944 601472199 868619322 680307075 838990425 427459592 753380341 416261538 666879782 205179736 867980451 379849535 200525676 356764779 789879584 431674554 957551041 285440228 929899360 789530580 883131399 801146319 410217399 729396781 242680185 498471486 459184595 472641926 688219037 962867145 852243359 398055080 224825416 207520738 375569036 829552322 218198447 369259198 448379510 813089634 846477808 716182552 755174481 748221625 626502783 407815405 700138689 189533881 522665642 61851310 582479778 142645288 457575588 450186607 540738625 573823334 231562296 921165105 717794753 786519419 987675649 616128281 753442551 327191169 759975222 49232672 749960596 667437489 369558312 651437818 652735104 971489373 790397100 8771071 916730036 408035665 663971544 873655281 843933137 36760672 509329011 790234914 814532179 377592498 606166329 649068990 702970833 27562166 755987573 801983426 758137555 694447892 912280156 763370395 111732398 945190159 630702274 889989277 982226959 719803914 682745312 784255384 371004709 722002709 720163886 246905011 952044930 583130594 466521773 120697764 579654159 259206351 70106908 360270569 242004261 494131184 474536890 320854148 410505791 723751822 48672379 313924406 94495684 726990141 438998319 956218644 74309792 347374559 183658150 338863367 184769903 197143205 583217038 457627835 355714485 972152996 418739913 284200297 1555932 931917955 182793472 493595387 340225657 712978959 723379077 82643425 591055378 104391743 477374680 890534355 533617046 212298734 330805649 274550383 488759348 116633098 519872703 141653285 122797846 529260770 441309849 519061749 273141650 156280838 278663913 348841410 281114487 959843894 686040963 203228027 835030541 981468048 339323433 813274717 11713310 538561561 226072095 398130742 167387824 804840153 68871292 338402135 6452561 683365524 349248016 542882755 542628507 866163600 218959455 180360572 886605273 386513874 479039766 984294708 926050467 476716393 742159933 25167423 511292056 590311961 535275367 349706029 85592043 60815112 459554473 935843664 945093131 683961275 589939194 139783772 609827503 349416145 495763455 93570219 117958475 866601229 757365308 730282076 55636416 251077849 875426380 519924820 277996521 492990191 106718671 583272638 246480071 618892212 384765867 950933278 242602230 871204391 589528135 516367334 180093480 644365009 183474827 480500606 879941157 245876159 838746187 794130878 160735479 56750217 231505407 556647643 163726254 429972044 103319784 109027698 71733669 7663881 734862854 760442854 101016660 899176665 186244612 579322912 405978409 458515744 251266024 557191359 764700965 775596268 392513157 130751680 193752576 930369511 294748378 409469222 445457336 440985291 685962981 153030713 611446301 395582085 657256747 534936314 43395596 973062881 524669316 565742128 356156691 200188715 153693991 549170811 738992208 472117084 531733910 770099290 248101088 430531007 260121423 629951791 798343551 878709892 925414639 225614468 396825414 577019519 31015451 360943067 450779743 148170707 351309156 862246576 505386798 45128327 483383366 584228261 933669072 154357483 290660218 757814517 557398372 736356878 91596700 126838403 651508450 258985925 396898547 482231458 373701637 356502491 973664460 533742992 341131249 75347297 350358296 255623069 398506131 243106580 5267738 280840027 610024557 262868637 776377895 554513934 965058855 457984639 857969480 518475248 928818355 856856199 337339162 137668717 744558448 422478293 682827622 396461753 520353638 684278081 632800193 278852441 875254859 364633396 364745768 115809327 921904877 865456241 751646955 724015160 93496129 292872055 362733936 616965484 318167721 745857077 317722139 963258126 849148952 965271198 627430030 453377722 176076307 71927574 447839876 686701973 919212422 90679904 327285648 734542983 268107562 802657865 334861547 860801113 165599048 142703086 750622171 915208833 218252414 858814917 826120010 902199055 568608704 911868564 284061314 936361212 40003879 252448746 368418984 153911665 714079588 287132744 186018427 550163512 444886525 327942870 539617662 180822965 411901906 759896818 531459012 948204404 808916036 31906840 775286824 343958096 461083093 495319364 444405687 48120262 713975985 412107881 112591767 58578543 690338406 8081038 322716342 225689505 773724278 710915515 575813019 437572086 761534844 830328779 678915886 916122656 343526513 999336954 466336102 819452184 315956351 478094298 841912103 723981705 328203521 380192432 723651451 879618801 532652059 41867291 950929768 378034308 704329319 425519267 684116042 917099706 865924410 780554568 224828402 197707036 12924547 367720795 289783482 973490026 154303896 233135815 528132313 438303999 803457110 362497965 882468216 985018215 426848088 532331292 378428914 845366416 698108484 655717868 937179740 396619498 883935208 997600775 176237308 314686684 85878588 159643899 979323132 241256216 116149834 588630158 658486078 364893447 370100378 741874239 560357515 669291474 721627079 138741267 369533273 444318643 215687718 286193029 949460903 429696729 584513902 342264981 454093509 925383501 493951880 587227517 970486579 268413915 687788188 711809937 487428023 500478632 598521223 49580214 56241983 412269896 480666491 111696926 21571936 412505263 519270813 784610452 237540513 230609499 467977517 545806715 459997353 641852658 659813429 504020713 962538468 659469019 448918167 132386238 603248199 727534323 402491963 94489171 951227621 432973721 663927440 284520241 577586836 7725603 784972074 323134854 471016539 649762690 66049716 4245689 632853774 336669761 149128311 382055718 134719168 326296992 216246798 512981025 67294135 73607037 879795992 198016442 889983939 536867456 990656489 627812322 999417979 1484320 41041062 247379506 495042606 789525022 106361692 138002566 256042573 433229 824661843 857109997 84267956 765915287 565395672 792639139 783704908 142667820 950038212 579535608 556789390 588246855 980671811 253465743 61873332 548306544 233868831 887742139 947364369 968941132 209216658 798155520 294439013 468164026 476292303 612745274 32217013 963221443 9334412 777524485 57577202 658068294 723002476 653670997 770394257 243505157 693177654 354473193 502565870 757949242 78800341 599179206 582878837 379797162 4265480 177315936 203429174 875729966 124234800 909434484 406519573 86455351 710559853 723318040 567635221 890584462 330724480 501691748 65610664 912452180 880690509 58391033 101687911 714734960 141026078 39158785 601448280 240454178 463700106 137880279 759694546 888084980 812813161 366188390 214085498 227497604 322094290 468838363 81471766 896424000 207687682 220283153 36913313 558101137 31582133 198193684 332393199 209019484 315752228 689261994 318894733 518961001 666912291 922816810 854183014 237576403 967638912 7339764 811046910 132758425 709970034 35751990 68306963 579042262 62542225 253398334 788931338 525300497 179179053 31831758 928485893 311347575 930744664 167359620 286089630 558933536 440387132 629577348 622923365 360885433 159334115 423235288 643204134 927389762 660218811 583932750 526705711 172056962 851893121 439058430 718232520 204864574 767289316 859999089 908074222 476832772 204653336 322273951 535008838 660550109 711614174 155432208 215646468 265275789 228478055 459206793 206771298 277683448 788113207 413398712 946748581 957190667 510419249 58012140 460440073 771616864 356444490 185425277 304825157 848335549 6106948 277375178 143637011 456072888 384499998 858272409 42728962 126245934 900062466 910702927 984188383 668124814 210527845 802016790 551079273 321707546 300761806 849498350 763677652 647972062 133850768 282224598 181681068 210008906 336366633 283803094 703540688 891220938 240784089 569292652 266079545 399330429 461902598 156699514 249210273 563256309 773752523 566097499 847878667 974528322 402183735 63040031 745524849 451909513 147826296 977233231 877661311 311735098 530286792 489377704 942318597 712232804 494093655 621467778 451108174 903768307 447133958 105725714 227275273 713868343 219538406 323106723 105045553 452484255 766433471 306477319 8253982 619419336 963590975 485346125 185247827 337056216 387635485 499562549 699269650 230151491 992277264 365502932 538358984 646955750 116063303 342699201 36660024 393475093 814630448 376551493 718291105 335593995 833548974 952479530 930922054 882410155 279045185 587924137 851507529 651847956 845471899 634560991 582491144 746690074 451200674 937941455 907638777 547125508 806854244 389908750 39038626 196353441 24849332 437569782 170642155 644339719 869472268 137235494 55175716 610439299 623508632 955631000 517960185 652637724 133904772 259937848 142535182 88640348 686372935 899275915 249075699 618498476 718840637 842217284 627592322 448460468 829549880 656909045 392328609 390871044 909924837 131376934 94318183 588126533 280973484 909605565 724219058 28093156 277022904 605770161 164824364 666517922 514320890 945797755 250833347 728759071 662212288 505798705 804399780 660349960 921638331 307369617 850879930 485147411 131897656 467857751 450292485 457608349 337574655 523937764 482045284 456266198 379706808 11525533 616041336 250534645 141756829 274623733 410129475 278855122 597561657 162602936 306040143 329076229 826484908 789913834 736955058 697988477 438942581 483137794 216765199 425491396 531105763 867234434 72990167 261586241 760006470 943313437 374028749 61307841 589913198 757945807 11875244 316827055 22177366 84101307 379428696 397225095 335679679 983357703 406661913 15835274 975589571 949399400 936201480 558693783 897791390 122561025 733288340 174122723 66917202 490427962 41220728 84619923 385175146 23699636 648255502 848758594 842360854 840090276 503893049 498295128 646941836 996782732 694778892 548014766 695162996 217416282 194598025 826945690 895194622 377124840 757423881 342818605 782803532 25651915 191423942 844978928 770250491 348030185 119617436 855784807 781798061 945518120 257263900 426017447 156607788 391848255 766164010 435138013 761044244 431047444 212361623 659631080 7592 498805209 428455846 720432881 419481781 542424662 212360993 848314058 120116947 807491411 202959669 781746735 576964231 49769516 345486751 492580343 424142367 406175930 682466462 177759118 490434397 677425691 165970947 450463137 806181315 388412200 58876502 467833778 761640791 137780936 141404993 171147534 162667991 82308473 501422888 750447163 761054219 514684447 622801306 476815320 927171976 76220183 199741913 186711058 459722620 435024455 621842595 650752367 925318730 56125320 973114107 298996307 316058249 556327879 41051866 452081132 477912029 874010554 248007485 501957541 691715544 169563619 660609131 379367359 169797847 664242065 52248801 116324670 96981570 508855772 140887364 609941847 689451172 731038893 843902069 369549837 286671364 665981121 357656034 221490551 926187052 627549821 268513517 158897516 86570564 854252065 881801956 840855351 674504393 358782485 258584977 835566471 362673907 780538892 566789908 13315384 518559850 748336445 518089656 722840958 346370985 422309837 536254182 832849906 366815067 660189959 891844810 782896564 438260644 41253861 796970760 368020711 651184739 927218953 811485580 497205480 789703393 241647341 572536567 926732694 208946749 578448831 695535317 952450887 353239209 559117100 607792359 19893245 391450051 929207942 502220694 583287068 238982052 337396320 116884099 210864659 560668321 805969685 380560775 361451303 556550938 377850438 601944521 429122947 594553118 711525558 812284755 392341658 135990898 527800852 666037732 558413513 160012493 533711073 49720409 224391183 166657345 599379770 821794478 437917011 217861259 934769309 55559932 6699228 937710202 710300262 382768251 699572112 515758571 222790248 86324478 711452578 494953208 436451247 801895194 622127275 334857056 373951675 359688515 686662966 221064010 156090754 946200793 109735083 100215093 220131818 361632584 91084299 78591869 833782221 666706381 740740120 521318361 625487619 877150795 916535909 55645251 165251100 624069043 231093478 497216304 919895800 738883910 365056566 1314458 81663484 106555071 799951013 950319565 563482380 180133675 320817431 462886814 69912802 325496093 326103250 761832516 500609573 929696208 412258017 629682464 321146018 536872431 119590733 383441838 157174042 125977784 568735891 617402994 728963280 461562400 204457052 810910142 982357559 872605669 400091302 554024749 164887789 960125561 755940002 968632493 378800347 130908382 104003144 810028522 29779048 178097964 313827783 251224722 837007788 997247471 773920218 892692065 149694265 331287510 998520493 950868403 316875065 700951041 451092208 473597478 756952392 16986188 376497087 464894054 790310029 504038462 334632309 969273474 633800240 963523479 352070534 434772776 453645154 626191727 967524699 18593824 474404415 609017312 977874707 823647791 959674309 582344473 326480793 937725512 506638736 547710109 906854718 954009588 81662074 857572199 695512446 650221461 324477399 791756225 453808745 705447895 776367066 295081059 413140173 749526206 224741312 162430479 298166115 469973199 103214206 722450438 21197237 551031730 984395751 242395534 500415709 853061912 577788396 139075971 433268315 510223585 577628679 644376388 909631948 924772232 128009621 612360081 882134028 284489177 75342194 83847804 280448566 564207662 513914148 867903928 236808372 942226920 384847644 243639846 11501343 402973604 545013225 689152574 886217224 862837763 131489318 10153995 577737094 337590330 859491172 345448758 371936647 199240673 65972270 847181900 831886121 161358062 515795512 909960053 161512075 564531134 691521726 981621073 925304636 839427105 888758951 698832042 970482380 752454641 488675735 705728900 291552393 144033821 585214040 796229031 414599741 883546177 775669286 354911035 931304169 918536335 59622766 607626319 202273272 420860691 228078766 872190789 351340936 295963330 167390766 740635587 612575945 878539161 33067073 628586065 822841306 963824746 308437475 937332407 968128537 513187277 244723751 92771045 558383664 838443892 162259042 29650878 832202714 290892894 466692751 89197389 270105626 519643787 245933326 405814760 137857499 471002931 639025573 47991587 826402554 188251884 97782111 264162814 785161993 506939748 429759897 941102346 495289222 471375237 13602813 55189781 836317536 3866611 656482269 523090859 403989844 605993956 117701898 962641877 318926567 310283558 463196718 68179263 587313323 400362323 473580037 446693584 589848940 214796597 70781213 22696930 600222616 193786573 942433314 551127100 250330597 269292770 177322615 9354205 514389293 496076404 890495867 960261933 980357728 234080553 960189124 152029272 663465662 467872906 615462235 159700603 942664134 462492809 188975381 784255766 226701284 167159560 94690103 297349925 94878747 775031021 292575338 995873222 77457238 790716261 22368558 545682377 311548774 900371395 922762282 193556333 463840042 356927128 462722136 52713707 668147782 496202115 723056156 773050954 520048047 663666552 273706349 287332637 366768270 926778810 787602092 605269059 218200268 175567652 5799276 374423360 842698911 844104664 795757957 655580719 299415214 63133391 962363841 273951415 498040023 490448150 626965678 930173656 147178875 620414659 816878023 293734382 671579936 258717414 356500349 327040023 260952708 798160088 560458276 230361502 482565366 15574192 99495968 861494098 220827625 994376337 450323767 636339067 233450604 198274152 611559753 568589863 744978865 364499539 660977509 313284230 441123877 236436704 861797344 30917181 840508765 937135049 183162936 160903568 935763270 643846109 818271354 536695215 320975792 992993619 770681454 108219968 900364139 620544886 399234010 614919874 477797755 209933363 238281383 395365602 682454085 730961891 551703213 141221311 987715591 854890528 871224842 120121999 12186371 900411638 722689911 822286647 216529751 942828163 962237760 816448945 914243455 715696287 454791331 536013132 211781244 130837006 960640656 235215728 322481437 460818744 391180544 563466039 368614836 731395822 158434792 213431140 226770432 701568690 348171435 754469028 495228761 320994289 623325430 11181423 645930019 131850441 499826290 200881343 779321270 122733907 889302521 967767509 231990581 681485388 148548032 899843451 37607201 95922996 92669953 646725851 575913603 731083221 820651565 259799970 406276886 485599423 543428827 186223995 946241481 928382900 963192872 981049969 314259904 652515932 219509791 556196117 890885180 35214463 855355888 658068020 323172939 626748876 535198011 267425594 202433446 811107013 722473704 15630682 884795745 887146799 60775463 848378695 194015059 191305324 229504004 188932709 425347866 868734486 608758579 811358297 362443949 434685630 228547704 65819783 190161524 86748014 35066359 414192799 421723029 25510476 720358499 469517330 689116566 529291918 61516049 619645766 329995555 174900104 823098400 57426506 830491923 974184347 30678135 740063899 819133721 894020535 892908172 94933511 257620869 996284844 146476903 376274635 71821434 823561713 489678252 394817612 590949425 281688645 779847445 975001499 197696177 60815487 409843744 583806319 707193667 631789884 543405520 22140318 259322565 350043101 895781877 303461309 750234997 36302805 929065394 26610140 297603687 869223269 771550224 498793835 298380911 640063261 88468443 786014503 71552542 964953975 167657993 82368372 68070713 323937428 922464740 518278408 94153745 905975373 554181783 926098686 806283237 819171737 317784314 747507716 991237176 223289655 43482304 889103322 815216813 672337478 762901841 799664307 716555591 629826794 942043918 420057154 887719395 243694003 350435884 894047813 518975474 354081766 169344978 254444425 722480582 763450046 932944713 927810613 793624262 387889380 143525242 173354979 223058183 250729764 997029950 940307826 366513674 916336743 862869124 47874596 410870152 657275730 160752887 324765963 802673426 271894084 722616728 843051007 745302390 654486922 489464727 497652479 455611371 993590426 187229751 983330364 89797547 197332645 928491856 127806445 602584775 916825961 179287537 695932109 94687982 665479730 497401057 894810849 557679326 211075899 83427382 989804026 919570566 666531810 351054333 30857503 188450030 72709572 933675374 338239091 286605817 928965801 823597834 268019320 471295966 62363985 838755103 530210348 336733118 624622623 98377813 572102870 873247588 639897074 896972908 416452076 354894080 549585638 481381831 39141727 781969916 75168034 831960078 69959129 567891080 184881902 666002740 821288302 271413527 203525950 698681344 824389917 933667386 103716726 801271654 354649529 89387272 212796412 556703071 589240128 783526916 298614482 931422771 714367981 439861001 46062928 364854958 665609089 524149393 861021709 960977295 674243756 673246480 807718433 462268540 719114561 876031851 490234817 733382290 921430235 987831756 300541762 502813164 691102453 116909974 511416702 740886409 388915207 48378149 494316949 372899431 100401357 517344177 61196072 853641409 678953199 59628348 728130686 722151442 150658865 521872277 212555485 51130401 911105124 545283293 889196517 398927219 557114688 15823714 276152116 384602883 772789093 633597262 163993 354433527 693616538 674676630 853111123 326255417 914077807 521058957 288722334 603826750 589422330 715018728 896561145 476610992 301184870 23866206 223558798 850601254 775578026 990815222 593636822 57172951 587530786 79507744 513772898 265017334 435615619 495109726 193874474 886619942 479798365 375778949 624713435 639009085 356386528 180265727 375800849 232673524 951154097 95122059 666220066 460677222 71358303 447181637 310693529 464971526 600798018 564517304 532302559 301754212 340652616 469052109 415635576 438987918 259933228 796421033 413159738 870016611 814049890 730444316 267038676 940080706 570775776 291643576 785137467 433414270 618444034 833956915 242659227 311100678 408748462 498519945 71405378 404443761 187296275 284943656 383009362 151528473 21870189 809982515 475152918 988283186 89032788 276872149 843671874 934400363 427848503 516737766 139738813 280563255 676106527 751924139 339650005 971182614 163218356 793967074 588893914 391093730 265490303 40306710 332232198 508833562 272288846 178557008 501701234 880079520 773288670 458872903 769415004 63839868 267609671 908651923 91632023 975283676 69096447 580809895 596118047 190839453 906605071 627049415 704925867 3814698 809437966 81991703 420425945 875535658 855298723 362637167 268320265 56915766 213465886 832104997 321465209 595307445 242791583 520658443 889452590 180573269 95329882 155293934 872798974 51367804 980865731 934963170 222722618 56996444 969779052 384881835 763600480 233707228 833714986 952815879 361767683 729148853 261581634 743220609 992576068 944607003 299231337 692722035 750691043 375169708 343838161 118219954 793419441 81986969 478054808 981812127 178524234 463486763 904718930 252719550 404375417 430772237 506246970 966539205 283343203 362252733 798735769 991765675 904480234 668305507 126834457 677787571 840485613 766486127 517487407 53663197 523234363 357703897 26876661 505482358 316197665 906702634 430632866 149110309 105941057 889334203 651511228 496111702 997836332 618900094 197648723 101211317 113477802 57524602 100397367 859700669 630283176 504971346 744702556 577402088 833064045 638235649 175291349 573052682 304747670 275283679 361885047 24176386 423505651 907520506 207747757 238441184 219529296 75288029 607200210 75067734 291278616 371909271 498831640 978475000 392227616 151383833 964832926 866346205 240028551 523379964 651865125 436887552 969876429 502050575 456054356 789858143 186683870 870732427 831647475 501657915 883715723 479829731 780591476 324456611 59096032 469733342 369767368 509835284 937602608 399895401 372601028 672839635 972508979 152161351 169062366 678924038 890289897 30574872 733068076 802162439 887782131 71581956 799230684 154057210 405938587 457332540 305489422 376984024 983910821 500171298 200521485 773383309 443749174 246323971 572334863 165140023 823223747 514697639 15584878 491601628 448702838 421993760 341743552 894268642 886181969 573226204 168034668 870525765 776697168 620701093 538488554 555309332 166689980 296444182 914919197 152649773 597826908 29471435 425176197 63835751 556356349 173572115 934970856 36366503 285624486 838112712 948965810 14291339 231936212 401912168 271115644 819926062 650680006 78148117 286579448 763830944 899107976 345834869 813252696 290173832 148086596 685860840 341908352 187647794 867547035 712341503 391998521 968798571 249083017 630829173 662901942 135858992 750561330 603681424 846067719 252811343 25902189 629795055 13610031 416506472 416316124 495488991 64422765 849580880 40472473 704240050 261513479 395347925 91819355 260271772 268037813 979385090 695457333 623768916 135066893 335428519 331934122 687853036 262738721 345235269 16068903 938215424 300239217 644893035 986149981 211488334 749988860 51282155 562437961 904743885 683739653 849533003 182570871 385654570 793953492 523208387 563211448 333786587 273692180 291963215 352867790 57827255 320061837 155346860 435575560 664544848 451229205 322349418 583811706 346572949 466108997 367805260 182510770 376179067 691305707 512164122 146669308 31353918 397393449 437524204 408832103 884124896 642652440 385207359 194387020 867784498 94898617 165041951 122221537 486255518 680441631 46364985 232152371 244812666 295659237 960933696 494109891 637105757 351479240 586651842 214371621 940039030 874111456 237348273 278496044 226714755 383707382 463516653 922307656 533712016 227033200 756467691 952586281 710827322 130131069 607953302 927032509 301348970 651385385 564885576 637926865 18457331 716483111 258621962 707552552 384924423 569079418 478761879 438238712 499473660 311009364 582976861 348829133 454825205 820891517 754521324 354828028 576513585 848391698 668137906 476173149 10037384 759839672 402906172 378572879 466506603 775308805 88540013 381453482 85577845 556192088 997790867 441044479 854941720 417051732 674317772 855753413 500619639 797728901 759146615 619526255 417449192 820880222 514409126 613995708 41331069 543858542 729692410 178808031 68897058 530144938 409380604 346883143 533909474 415909006 582388011 318192363 399931851 90813987 424690789 828666208 571951366 679089371 353580033 213839546 79706465 490845231 930187838 62783460 956436176 111579948 955297777 623173992 47691969 445964403 902488895 682391289 671511176 104873139 198495482 33547897 420566360 38694364 424382436 658202848 806572919 504749147 362005764 495431478 257372300 848406832 641118084 734364864 534923026 222764957 418634370 204784903 681179036 484596406 629906912 731252746 303533815 873187654 942640835 883194447 250710035 678453267 52932694 521000798 888705781 582735291 563464916 443464962 616639438 976631596 184951059 895583892 620275751 219459611 774447901 577282307 726556923 420418341 778468637 316877779 349450008 743225374 26668398 82905143 546540304 104695681 356710746 497658655 433379686 380056449 250401292 792728573 24335892 96901292 453439097 421852067 978106807 984256771 684952411 308613502 142373593 29321753 963209404 668452413 31605381 236271602 209914015 914953931 533568462 870560590 18825294 422449203 147872741 71002470 921845652 322570369 615491539 228906844 30879201 394157516 909365204 613363412 652948392 693349554 769733168 741798369 672590205 18503684 826111590 499742749 198344000 418529327 463494607 570123653 636135133 471825192 223221940 139791196 540539152 522878869 670908177 292007050 490515945 789446193 15469774 134329221 579195744 738139929 313201985 664617697 822780025 695707315 710295080 892481161 811980040 481175999 680359505 638174473 723293261 71818502 490701272 302194473 686309934 873248464 75678956 900684085 819571014 857753697 6735205 100566543 520821779 27953488 23847377 518924085 894746287 183321504 871358388 723787509 201323157 123674946 137005455 933664363 436504950 708584420 118342746 855689819 292822132 986718055 974682346 961245404 385954320 143836076 24282297 761858881 830021384 691470571 236145873 503136427 133914945 312021475 489295565 215314249 93993577 463937260 556460784 515738153 992213943 751594212 404622015 367580455 40291796 203032653 27702280 773552764 687862878 652308546 750898176 836816508 355366039 150718296 554495312 696317625 929975825 963022080 155534879 349298095 854563804 69384896 834598078 785646587 968019796 83867574 852413123 880416643 132823820 550625339 812701680 594280556 863019189 215814785 448052001 741262068 251682557 28344221 246276248 741898855 140519058 648517028 291552213 550776802 252053650 654193485 413440294 507072683 577501994 186661133 341802974 326537856 2934070 405525645 181135749 271041184 278076959 201776827 981618581 66182757 748116942 20204177 392291287 459353518 720813641 367365920 806715023 604868517 671489924 150951429 914542504 265867470 279134345 886085516 264297720 580303308 34923341 166893755 691104407 883203098 345636745 457456530 672002549 675760572 17053798 953185241 48121009 269482984 915503789 752464608 55914389 77344335 731906774 96757836 184738879 121274264 125324394 716300391 435014867 968903738 779335357 136022500 677559176 494354527 568482353 948111991 718261988 510792336 308536374 568967381 145490111 648938650 207165451 905141986 427702925 653641511 586476093 938166055 939465636 211305036 992955309 352893336 47618073 610313335 536645988 712542347 642933560 269476036 646989731 190067774 112013252 929414952 257667313 300831904 71737863 78982224 62803058 240237460 609941725 729946008 275305055 510777288 747946902 491488334 891615693 804012338 443140537 600357083 582858763 350672117 548536676 387676851 916349069 727726768 34596490 287495788 926602119 873722890 81503672 659954023 999641162 994539238 12467843 841173567 44937553 693484905 567552371 453568851 51730651 974047268 268191502 136468974 101957570 588935221 708879151 333952313 220148097 907217342 140201169 33405283 969763025 389702287 390774936 398903317 709847204 121895389 437612236 689887320 85784041 144871250 686888252 610376770 916734395 770232838 426349536 832427971 846097647 885120157 841993489 697586103 411543424 96377434 674072401 974146170 548380717 692192036 496878548 375676451 967516539 644560283 59558934 535028106 136055396 958223387 570887155 195825121 91620907 554063148 603549618 673829660 788424397 223080739 374392914 403913340 521618768 296007417 509943765 414553887 125972632 434728411 182975620 327473483 887188049 39419207 854451522 339150449 463587177 159218771 941131743 606919790 726544734 767750500 40941855 293694774 354690863 967128872 124027666 605595505 563379065 978720682 502540351 848615516 103094560 584515884 429719641 971800527 119384369 486434378 345262320 510873908 819877852 619321926 842740280 170452887 35424160 811246256 371869615 469555737 4647350 351936931 934700780 554549533 508002871 355379888 44152205 125298803 399500771 366758732 950753335 676767143 820279194 97044496 768273637 621843115 165842424 657256644 159170767 956827923 394155461 128183004 764259202 503230865 685667884 263953034 657869661 360183328 88957977 418460992 793020996 281207148 475423151 130657159 540619897 982848648 715855601 475905744 599555480 703028352 972194431 52228930 662408912 311901376 253488816 283963580 889129735 266904926 753488841 937826867 902917710 383220714 190730346 608842505 518132993 656786294 13133063 811264539 479431251 151959740 952068638 168308872 668017637 314226838 11334396 766129841 556009070 320268808 405322239 708933764 274957374 379087132 272496504 334737691 187350539 941718433 982154894 739690793 720197777 649229860 586449014 280945944 794593678 762839598 185654599 949753741 199111954 775981455 560047010 780047624 49069964 918859212 385678208 945901243 337415892 635888999 288189902 330299289 17271093 810936256 592957086 872135890 102955917 851906013 946893457 976346132 477649711 201045814 842552774 302156419 418538027 385415265 576717875 553593372 321222774 458672256 193843758 813515501 800664251 164826259 900494960 643278829 666721011 217101744 693716307 469920905 925102823 429096519 38163895 956511305 543090338 250735510 642176794 368055432 155928738 561501892 150600019 889753113 730941647 136456459 416603640 924990486 298704118 833133068 998762898 200056253 679826148 207467606 281700005 524558608 98291579 351528819 376702860 747111975 104685934 82042479 886686920 360196631 118364071 695502380 933521124 780956706 296229430 6305625 406494154 315653088 960514009 588669445 199864441 928051560 567120724 548133004 695461659 621130789 745717812 262552017 214894417 794439451 842146217 89020061 382794760 751223377 880860096 409451856 525243925 808979600 670018159 360469663 72583819 97598388 440683799 407877729 793951404 729261538 869703171 945620231 123588317 982022953 796801672 713474811 83855497 9579790 739036020 817504517 187999956 974806841 701521126 245451995 593276181 918122508 792052430 942548968 180244462 381010073 114061394 729988846 528167862 526734341 493444090 191210957 551832803 649361770 654421629 722298229 156890633 929393973 491909974 988660218 25392227 323568972 578451105 734989987 488227649 353160068 529659996 244208869 859038712 435488485 15528651 445677878 670162961 735484750 15701030 225253702 415505070 444011005 686316574 471073699 472625652 453178201 378321439 59650110 391135013 810247290 674380960 103717610 64083855 540820861 647424317 18353983 297765373 361340449 589052886 961777504 278170929 420201403 776474572 512828167 806365279 242832684 307645744 933108740 51894206 110955152 886447249 214052178 836689838 374294277 223680005 351289907 373543126 64978238 733816020 598730931 993047612 723030281 718335412 916176864 783524947 601260729 490432279 451320740 93947917 893754872 420799182 113821595 512515256 982286445 153606829 270895248 16633916 370120567 83168629 789929103 489672394 144202600 48959504 66815945 913691643 222779719 898135368 204751093 150541720 732464188 673083538 316723346 817879392 376559605 200104625 275989700 136738241 863361349 238243252 326065654 629884903 810388448 878704397 47329059 945984614 501083557 243659695 685701036 268765982 344121050 959800029 580588572 148785381 14926601 156973641 139618575 430406293 133939037 178182773 705931027 855835138 912447461 892011895 772258598 163807924 887722959 797750789 458140248 667147740 677659233 437002928 555206628 629657033 53958467 900563062 136992858 243971247 601649203 335109411 623864429 516447361 894642837 104128275 708387357 487283772 314060358 303259976 759349661 386494139 581157698 38665102 916085192 446239041 869688065 997572323 65988108 685289943 979597048 580416888 573699432 211875391 487811251 485954952 745767084 779910178 741439261 988577316 615451222 886482531 447429889 575311543 520648184 227111250 367412377 168371106 997137680 965044391 221139232 168155054 722355983 709513626 674522051 5084143 331675710 33167620 989370043 877959248 505228369 184841434 125564809 363892023 718420223 201460073 538101263 911962158 580123470 734174535 113201197 266954300 963919892 352812956 882157180 329919103 163059193 520955228 986887845 854928827 630839148 420732200 743168690 802118382 330625453 209734029 120954905 547138682 974598974 530359478 441736826 271366366 249132149 973379586 523217656 715656460 622433838 106772924 353971579 811968627 402854127 10560551 133362355 654535668 135442043 190362241 655767077 151184508 917507967 658183959 839575160 701419982 778183346 142180473 49025759 295582717 496391939 560845586 149516228 667283869 811164052 594442586 283183723 172573614 122619457 639552156 875097831 596651936 465990140 415046954 396297245 347927368 832974821 251878768 531061746 131879385 915379720 9682269 940197284 172181788 164398881 608073434 683011417 642075381 350351089 971151077 772964382 619996233 723641815 455168505 147645912 192772446 594550541 897046428 320680290 424457936 428518327 967285988 601031643 730266947 493003568 723685938 531008505 51796144 719377134 661821940 428083418 152254922 363933984 199359433 122941155 178061520 911015833 714949347 29852826 702848233 494522864 787323061 167165940 727060960 749416425 588629774 284317786 842420720 880689069 572773136 715943028 180603571 134166352 644693674 882152737 468539839 908044974 190409233 698154843 381286144 323530159 676136624 818931765 492122832 785339024 586333708 199367953 852543298 381889887 362786485 445143748 872937436 255715763 533683331 758642746 170185473 131877335 690341113 136914927 482159249 115808966 200264384 406725258 191072220 669645910 770072279 59190549 41497353 148630923 913157137 116351005 575986277 463973157 751613305 935252094 876162401 721785186 187782881 386854558 754148386 497344666 15124824 481516918 126990673 729410592 168849281 565290607 204489525 620477678 793992601 305633001 830392260 317876283 533766354 361485739 712152123 18993233 421117048 917753572 408056636 47200795 394097590 34987327 486719798 225551022 65060162 823976608 765437923 996146976 899261858 720571836 865818299 696830245 778885647 210788752 335519441 974368069 885609693 377967584 752408421 448358967 755981857 727286475 302166283 771468414 679655297 729253626 611608177 220288703 59836674 982826156 241095259 300467630 866303221 146060956 669102500 947795487 551754760 287808704 361024013 279866518 119453642 666709688 285141993 305468408 186062741 320220889 940404293 237990903 676383570 694173734 332693727 23001329 666267222 952360285 586457312 127206279 508715680 29971388 501857545 79727275 793907053 420530044 777938434 581644965 929878912 400090979 25379533 899664860 662577080 88943812 722859858 19584192 10971605 748227061 89093586 586597719 447666957 832175774 828871542 61519151 848954501 417778728 344595798 414218575 308108953 319800382 504917677 69761751 655110271 588917530 128050374 756650675 994307098 239655705 370346695 927862288 190127381 888101971 391255087 320021933 14229831 554846459 196276359 622474942 200302198 23086133 207978817 109811548 235303774 824728648 687094459 536835881 89634970 930380504 886105515 34524698 128880896 553194325 920998824 758349699 884439333 660383541 376264909 482634899 739535452 782939959 681479734 953107342 864855557 45113695 294380780 453133413 393339675 399284579 304632896 237915973 440737106 84164456 474097762 247157219 65636688 867747161 316900279 661328349 503171649 515128315 813210719 533027431 506991381 878073560 105085984 896381928 670508527 726071890 192581526 336784346 662930916 873425870 648975676 168466722 146998034 854643499 482200439 40429118 617844864 444832134 838697449 659452561 234201185 679206898 829089999 206202693 256326752 982943893 188494662 224596293 463933401 96714703 349840340 255105861 302303952 688751243 855978958 754560400 451115032 514258472 523934575 841804628 892410917 463184090 925855093 438606668 271316040 568872082 907014366 99624189 301953488 107315458 719037080 928205777 742216046 156091105 273485184 450603858 571893865 789090969 482337755 493518203 430952962 363268525 296715139 742707214 110371522 96534612 960868199 513668678 390667502 669529789 297271153 755815357 849621229 536309507 515280178 532584742 499689181 966681741 797414260 541558897 861663444 981196671 759750461 432075884 253403410 48748761 216116458 966320161 233726764 70364760 871739044 206287346 217663585 515038873 956392767 812014264 485233062 672175222 82602229 481835164 809251150 315867481 69082001 397521574 642427529 934704614 466352861 476217746 29944388 467592296 78100631 899253745 198804628 252785659 987241035 411317862 404661106 724376825 469856498 7590971 499184589 620668702 47401740 199297010 868870728 699775796 647417210 980888413 770473469 420555505 381809678 49916877 511785262 923883126 556872363 863368803 546136400 204139647 888925310 360270686 528600713 913496360 865625217 839685985 677433641 273428471 447579502 59247183 257700096 194935862 748910585 605030914 767470987 46525003 383723851 44302758 98570378 175783021 948591513 245050135 785883477 289995433 489710119 37438368 834909456 942634254 179578250 967727013 242901097 838100878 312224152 761158529 231317378 722551150 461070004 363051537 120147237 784553059 183491048 621242627 330669166 410151353 919102199 583310784 933569931 887363204 760228850 252290186 936855637 45804238 430101234 772945710 78584881 703566822 722834623 506048821 288682280 363544847 910253911 29752814 437785662 583220106 520134563 29375228 589992883 202452290 99275447 967234756 812488598 798759786 203068116 733249455 365075435 113942728 887888169 48254386 690498970 975892515 54531753 546585927 181975942 261758961 890088092 146541169 827450164 165919770 260125171 336438071 63404396 880961840 88560363 276076536 987717168 438721422 619538184 393850455 506426248 954822314 375314888 189564200 514833129 882073259 266900631 879231055 668961613 132202482 109977080 682587764 645745190 173826803 502487898 814972898 837755025 402346173 384895228 844000183 778102648 754064840 633025306 824010071 456988221 923986381 115529391 913614366 694788726 316734573 312682153 597809887 495229055 875461959 330617715 382053760 451878089 779798553 174950335 599062253 860350138 295784469 644579420 730858810 200616539 138963385 727811791 816089640 529294193 39068285 350893672 561590814 64588218 101485927 710722516 463550460 206777984 409133392 720345889 561174825 875799158 597989919 146876318 419287585 103144520 36931590 718918198 620785236 418590225 698610029 125148454 237392952 759833821 199243531 357084233 410784522 203580148 913739783 832555403 837997057 471484744 460509462 700467543 543796247 599184352 425862650 839175351 325442870 213616760 928749508 6590240 256550164 284810427 853094528 298763843 908941414 402764450 477908529 367417399 992254534 702621337 506855307 632141718 623201216 954771884 257755959 561157319 756835917 805180938 4918836 972515295 22167357 906913234 913074520 401970423 837098639 584741635 617547360 987531728 540532596 668763117 809502707 759824552 517862862 727352945 40797070 731452391 478022701 956122271 472764391 206003283 806226142 161696809 5451252 838189457 359316931 531411473 516731421 140120091 54250281 340785342 288455609 594774059 279707028 185353708 469296339 835532477 390518863 901744620 977338183 49193301 798999056 849397395 37864250 248110342 581219121 759500350 216538445 128663619 777089098 19012122 145924601 959523678 206865123 658149136 470772248 268912211 958168527 660706707 909232167 521760640 200548595 3622227 38298593 388277506 854061560 119002292 869473447 179256682 708157437 765737967 389009036 694108363 74399614 761221961 675886651 800243914 791979040 992142933 962170333 436378960 31995195 427602915 814653056 430367429 709513951 508879433 505694411 372867086 987075623 403895930 271318878 556870721 627436698 461543675 439487845 774673684 709778515 480829670 338990765 53630207 735976798 565943792 251044639 494724838 537479088 93565699 248876343 231975508 103437402 791631599 599662363 315997058 400159159 13085089 451598843 555373624 696900097 649498825 839743851 285125314 983216370 561906706 450248909 327022993 950080382 524801393 66538594 106710423 75680027 98125589 36148521 558638533 529401726 514213732 118104602 587121716 518948241 790594480 684258773 585256502 100754254 680326089 782462318 989972608 573952205 831434777 242554970 812188724 986901955 289749534 747094180 186787546 503012999 871756016 587035077 384174083 532559770 64076498 333095915 8461128 100482276 377769635 95103794 702539680 584666550 67527400 225997957 112808293 387397292 26737402 877894643 741246886 671022309 133641055 881237097 392869624 927656669 720604627 317879313 249854527 160580078 586051273 569813292 435879733 894409464 444053651 280708604 451178601 819245968 383944238 304541742 963627742 816766826 282582416 899875580 110065065 27965329 312906422 31008464 522309140 989370163 550162370 597622212 397915626 89233762 656758136 989169778 52398877 324580528 65993123 8326997 290409530 875030028 178495236 487668287 714570185 836365650 119955702 873843003 330348191 810015378 66395107 718416465 214819167 631523531 171936612 133692569 535948328 429032938 413937158 727481367 323530760 599602267 152743251 267549521 373347591 744519873 999527575 683915178 360825018 683347657 690331912 859558684 382124381 945454330 733146715 496368517 183492667 117770482 362528113 404838461 128224093 934171107 36088472 184341024 906764118 951334834 178063050 696363616 476481330 450133838 296114637 172553282 513654869 51256607 873457281 378249310 962642144 117322216 392823203 309647048 75982063 356352247 444002152 220322893 949348953 852927916 427041409 176972150 999120439 497074255 229237135 521918261 473888816 457433598 915439956 113978302 378667031 702917322 613721486 922186709 595981331 778823492 108097736 933117384 895861797 424017799 148115195 769923314 324403582 447246162 552848174 470719916 327736174 90998164 161811805 648846740 535008956 37402776 609955745 798776360 892379966 78354848 391042980 678751351 630812415 529793094 55471160 824250278 339673294 191742564 503918428 498011948 276130934 166835758 233082293 995456439 566025125 244403516 249770338 671862831 864832998 237120378 621385506 778786200 402150018 102255616 102837300 726200755 817413826 958164424 898480111 688512195 827195292 473421410 567410040 390665108 599718240 421941028 410621075 840857270 657446922 938166490 349729299 337251350 150250300 942783083 133802657 406781873 200519190 275001418 445239941 48989489 468691639 668202044 785751154 629637060 421681379 756971825 26225963 289526361 943774785 983000323 406607578 871978954 110128046 437951923 917725738 307198091 5103890 315770967 301337147 268934698 716153235 631143214 779306019 756683509 476946807 571487799 187795945 787686452 625499054 170733088 335427319 561633315 42092793 401384816 164322607 982406954 997386057 538365099 117947640 329406702 113360142 49762817 170019220 232959362 534698628 186631198 67731901 596903792 734996775 265726862 911467475 69084903 715016674 67435707 22481903 885930940 997610146 916080468 442870797 805911910 454185993 609818071 531708477 6070339 635817036 854328421 183527506 189091785 653921213 149286806 194673511 213674646 120169043 140320327 21878791 806975501 383111551 619278419 492067947 430180688 343849913 379523785 285767603 12466677 172990271 642607941 844245109 566315832 599371152 128727262 721806749 438783655 442961832 89128468 337346428 281632555 909767865 340175131 588103897 270918504 271346236 186984813 342736885 705973558 61236860 108663307 402361555 138809934 872188418 358964599 893734348 304633768 88650192 757020963 533650143 987709052 938978971 648095252 357246154 286114011 247554306 432286476 14651112 51204840 506885298 204236598 148742579 942216281 594691142 918204703 469005397 503037364 141947543 662639943 70047969 702206134 215658696 964907964 598521453 485422056 325307386 843068588 812454054 912125010 13293127 42241516 908818745 555788648 63145342 559191867 161220480 486003923 202476198 942370556 2502548 985182026 704970224 404045116 74930558 540518347 40605036 157588009 969323073 377486256 380451622 161557053 433721416 897942044 986573520 964415761 35870142 665000473 608107154 844740839 617847741 902522302 695295154 551366283 984047625 925902945 987332633 645713436 194552345 91035436 749587287 997664498 324499638 926997656 399162882 133221290 481125911 429304254 45122666 294478990 949016109 168534747 642664315 956760273 84476112 225474679 921649006 964708290 399120006 496460064 703056805 214934083 705068332 3669729 651420927 944890885 751673704 622297640 736534459 684634914 732940794 772346857 475575348 422829850 72458057 657154008 667835473 528942681 354725112 582905076 382140515 111750468 193243544 675979474 665557449 80902670 434775460 709033314 740806623 988676341 286881234 721820886 522969553 66327381 739034502 287903157 745046593 48960040 70249212 944056077 754082720 237262487 655133001 203926494 682065790 737480848 140386370 27982784 902110 828127023 439489601 849416187 867911751 958270981 700971980 867227159 952282830 86001995 417607072 277599963 887649484 436223645 534622936 392827177 672632259 774246797 576656551 541109178 923589222 413380811 948183677 341129647 547450838 959366679 425769255 711947331 706950535 359439031 784425763 361565889 489004394 399354090 887329589 163702465 365664735 720853259 449947802 838874971 494827322 872052571 869285733 484201379 36875962 425509852 3152685 42175454 931690883 465033962 39585802 326565641 169620243 252179762 572168785 707760245 714950715 80968768 818912276 639409162 676970643 693416357 373703784 429784066 95329642 467894645 37819534 955388959 833482729 971695819 698754673 78507418 108703860 767220870 510634410 474567555 848138179 581571863 466590351 406370025 569805032 277527498 10606825 449162378 527770282 126742305 847960071 96234671 109076298 660938398 830309182 864055216 542659556 59578237 119575097 744007123 471228076 978254735 440375065 961454830 26312884 855103251 835861642 850753373 770975065 34362113 647538989 188658365 878289580 317900095 892123715 253224095 325955462 348624243 213516340 418677698 493551029 86077940 382563478 930459907 865711796 294051505 404775369 372743755 450842373 75180237 635033672 522227486 293344416 145122679 572641058 482337382 674590565 815135192 953673502 378278754 753839689 835328065 209867886 879549376 93161873 150353590 914871581 389983921 57929609 803513963 157085146 140612282 454362916 436729010 174382304 599170036 300098024 416452014 125944358 692702419 365105480 315685090 860096807 557229396 285829042 451621069 633741445 577601543 149856845 839263528 426337922 352790197 119544625 629832131 399631871 804858902 285966828 150326612 332851527 947519094 979961961 189173421 60515580 424250808 650648356 498785015 251379938 115914752 397422204 161760369 84728556 983469038 48892550 456882297 362915244 584854371 477261842 109124978 221194616 940425589 267702288 305025315 984098558 935847749 162030390 927080393 902261090 884281247 422793239 899474713 634646704 455773186 772854025 949081415 882622916 933169642 245723194 662877729 759502421 90280873 30016143 307124005 434920617 639849331 643547661 819791107 662735030 159306482 447043988 910694659 799342545 95682046 756437366 621972339 588423107 295141703 783571431 287584568 553175882 290311195 669876846 787063694 55279959 500064421 405663960 13040137 497897020 175654692 382875429 710294300 984860949 850752346 616733604 423603609 629460067 414020722 428356964 725997707 198544518 854329277 690891346 928725562 23185360 267756835 255408429 336660924 993655402 523372314 135406336 941505841 743562673 926494172 966098307 853589038 389778927 28990568 313221410 337296570 491645024 840737121 627419906 842903612 798961333 248432596 506484166 88765444 394324044 838978553 676810493 378148969 809091086 47039788 61799250 155934640 229542221 966651179 748453294 136201534 709382672 788509458 196849772 450774261 383395935 112939341 147014788 137902753 190274122 940821592 366022594 667291182 668102525 976677730 125561533 600245988 736705432 300281737 558227595 524448514 344932621 451761410 626678072 351656183 961103572 673235957 367273491 480427410 171745920 634522408 575077684 115737948 929367676 849827254 246777298 452507767 262487385 852638888 56634136 804180575 851516158 547262384 370663136 160824096 595234656 514638153 246955336 569333178 349633576 438097054 269969265 848328005 579794111 576030074 23302387 869653777 218541262 651322235 983317428 938208980 487020370 16098728 380984532 986596789 423416800 128147693 576114593 232044357 10624103 828642708 369755022 474785081 63626864 53245070 529147474 821131516 649238650 206877850 128959259 944888822 540668462 823946900 518244857 189126 972122570 576535049 805592471 825711757 476183786 873712034 686390142 226950930 288124912 665348314 335020552 13342564 325121089 12925372 260629495 677502348 161657407 50104165 892135871 981495481 287181761 440254573 124512697 674029403 809719760 970916871 931837730 561400587 356148433 378713794 562119203 282631308 446203533 723661658 583989353 855808649 719032659 102113040 59668650 510902379 46307281 288931693 43864913 920961855 770777410 637335513 343689306 366111795 315254859 307050540 311777858 20368561 895111723 37314406 569652206 665140818 998366590 210095936 858785213 955823647 746669043 991869852 881884634 208763635 907439955 966818552 892873259 297650433 328389832 355435170 895853336 652533082 710910358 830080858 125010395 742640208 235488500 259876476 780532702 245283907 272001789 111978825 267467294 178874593 338778806 855299407 79402403 814484363 148523111 938272178 82941060 686301186 382532090 576504377 69008949 5624855 763977647 341802807 968879444 955712936 357714515 731670405 955757454 827203873 810504861 701533417 79955271 178827497 228672676 635646101 56442896 765788303 170683825 873450158 679983961 357418852 725416201 585804816 907889895 917480037 972266349 415647564 21780874 660521944 130750643 382360478 741204182 590809477 937579437 165698762 496283420 921580007 49565771 570798848 527023062 959974912 189841531 1467647 316147729 886850668 837725774 479646776 291165629 580674964 286893606 654464966 460611806 364569368 365206991 578511472 719561556 678400128 515629958 705816369 104806737 808929522 150360958 528425816 39184487 382008785 738276791 766431513 277396127 126793859 205766646 470491480 512592106 298347961 178300237 107359569 78926290 860235536 364987225 606489489 401083354 448181901 107534758 147166026 420343911 781120558 580591674 785271124 316628734 680923324 98883316 381662177 910794271 131958057 554524342 943452833 858322785 805290768 518556661 440540186 398170556 298145565 618811654 131358247 682947787 965529626 838721746 715583582 231866845 807290087 717096292 654570731 985026479 652558787 375783626 981300472 108141163 85468196 680030894 334218100 972744456 172514991 996592592 206212674 727076652 70958524 826740992 241150065 164064795 39418819 492969771 173572078 175964733 710516158 880043484 215958289 224094511 776920434 872998789 323016971 965653661 788274007 38188111 893646978 789319480 98942593 845899662 139259787 893146227 936330544 698571672 495202359 797399030 682315456 522051517 285888547 968558059 498679398 255269027 86923453 998284411 768484003 734638767 70924164 642488574 145018959 196450551 55743050 980833287 494810622 725196150 672065713 116053163 936064012 366677352 783947709 440115462 331074018 650206777 278477918 408145604 563651475 374800055 704341849 506717382 485791703 422029109 622421062 53889706 155460694 401748624 461402208 37050587 267683640 419085688 51425611 175366936 65518453 622812562 382343284 290362177 393708428 562466145 125458831 615787396 431035017 305654924 644037023 406924246 350598629 890886909 668645067 426780876 217808076 463013210 638965370 88353888 823661113 268793184 711213014 878276604 554589730 133866464 676320074 59502171 616496922 834816037 835040690 195498543 412445508 482745596 565471752 54492788 847740688 841214400 609255182 261368067 63835507 421329858 638138214 131182990 753042038 763556767 116787485 694618577 316758993 731728246 931719103 71111661 574484406 849219482 877485710 539602169 42236081 181530880 286510879 218551799 412162230 803289507 838148491 436564977 528925420 889053115 563465006 915556999 574155062 138229199 700710895 497725265 343117654 930113241 43037124 95785870 208551531 252115803 141117486 594226409 652943653 862086017 636216487 133977899 631035206 811776014 176327244 635080380 18415565 770143061 736632654 270382123 922535897 250681914 417636362 238711403 680937997 574476719 559439491 543475761 254257422 739634784 389423072 410242182 486587526 676181694 867580913 175548374 347436976 195621779 612130977 130136989 799745644 112611311 288788031 17956014 647349023 702411363 453710048 397976693 310008250 24340735 806230993 44358602 782733519 341195796 75069553 836212035 171980722 870289980 822377406 861621370 286043245 908532561 369485456 633471719 468426806 538733928 728748780 860109192 570145302 901235181 702395680 737494508 162361535 576879019 496891635 498361672 979461755 533170748 409332499 223146202 600774684 970511880 476668241 607132299 177217575 742161190 363696904 501423441 216023009 429063133 544605676 362132653 572677135 950141507 813115673 652566464 655511099 367469038 826239630 589818385 432537156 311927281 36705861 228799198 363882115 331113435 552231020 821125509 638734347 179960101 922883954 652333729 884928606 841814920 785916864 592404571 604387940 674068776 727251481 495032100 868970720 952513193 986297612 547848320 175405484 52524980 903773776 864461817 366121282 804299475 424329993 387187209 412063461 325639682 62714730 942548332 367352227 2107616 64472824 142840663 757743025 298431361 75439189 379496859 845171406 80317496 27433827 525651230 108935145 807795269 104764478 910646983 480240893 893784899 562040428 444663467 858059791 464569502 758420710 928111810 577758282 775182019 262900694 346604776 372643156 497120139 677729737 441464048 284673375 716517388 684960582 744169079 332396533 931609025 151922920 324851053 209029112 981788982 326914180 483809802 493926683 846821711 261282408 444925148 353962641 630240588 523136754 256547729 846080399 412149429 569174106 450342493 673778915 411920412 443487924 832027334 464049072 128886800 861489534 475689902 649240243 100818686 310483568 538242542 839653104 850666167 465403886 890147119 121271838 960885738 733099157 340315631 211465758 439888194 703518368 454266528 521741594 759770356 618078112 897256336 436515276 522860699 43231083 972540368 230664671 120258695 824740972 485481511 355220334 71397639 37640488 556614064 153906566 957946628 903095351 862781917 825590946 776875021 68189961 105032507 313445551 792491740 510488072 546682399 102051855 926877114 712749999 105456972 14068120 861234585 742663522 452145356 651724144 208006180 116120763 854939375 547461917 588557699 463279722 494662268 976445874 42351042 488867759 681066724 156007574 213020244 649414806 243109026 350387729 535081466 57730426 157960489 103646683 24744433 480162700 144563031 958257685 995995510 256482213 158236630 516207517 835211038 221018316 987149355 101553872 608711442 426511500 235619818 521840021 529256501 157097386 582436012 388960164 936432445 407331919 329740922 711932461 970873734 290659027 282882477 675070562 287586742 53216280 530527398 294814595 262931466 557709313 460419330 705824029 887870734 176769388 858592649 27463503 536943811 184993811 969690451 779151542 905308928 508535632 582357922 812903154 43602696 662275951 667493339 661506736 965282573 918424031 690329063 32701307 112039284 686503611 428161704 871269023 511348966 766052708 423887298 957423018 539535717 968441082 129497909 139960435 59114238 347136656 442482508 393327177 856359632 854146723 12286094 850852235 80603875 599742790 457092278 954012839 352031636 871826959 125949648 998978814 163912155 723372190 45953703 344832474 425544932 254448750 220674770 410622817 348496645 652060173 673116013 954011635 70048530 826542970 128300204 822278587 772600878 796901032 997151008 767378319 792302895 515573698 285993374 197479058 497699362 957297622 232627731 436919829 493359037 997204622 999376687 334978914 135323150 229653990 759357045 252511205 138152684 50816490 167720585 272108510 186173714 675226317 600661287 585906078 865264113 892040229 731619436 924624214 202184092 554223634 565519996 92927511 708390099 379190769 201069211 17587637 620472626 610470679 385597891 924060664 412130970 83672734 93292089 121669540 705077947 996940780 946037637 205629444 131744989 326821117 788642239 313154272 498898170 211895174 390481713 586599193 277368811 229817296 108800888 518119476 52219985 612074764 514891928 94768294 982212918 750209452 419362191 170176691 726091333 11740120 740055725 542253853 283194864 859357404 505921243 708964418 288848351 860746661 551319359 782966670 815050226 676298579 819320972 236313523 387145538 776329678 438524325 738990546 515878743 736504785 741853428 289695510 819511304 143257723 159649325 136163366 267154904 710883880 6579998 509723805 573646229 242144651 366967813 850759017 977819207 107945751 41242257 982826295 122918478 714668982 934042265 376806593 668293758 518153166 255966676 967343618 276979458 58890880 424311132 133341522 213790131 584593383 490126730 929342237 477740945 86190728 359633650 327043604 273151444 293503334 599506044 654635791 309812467 768575293 18235099 8947049 300391107 312704676 360559588 968415301 56709135 230520088 192162745 622513383 112496712 359396213 293491631 460418955 872415906 471302186 41994299 43476 190014638 637040589 440839216 584131526 822361109 521867718 168842823 336838368 417452556 48578706 924057251 340315125 304853698 668584586 611425245 985975410 989942297 694733374 458765945 597403232 887304657 25694138 724944748 34498009 544231450 521757942 348630937 406359574 749087706 463295925 323862085 868791624 62690613 663842657 308422473 113691930 53665838 781426294 138721604 916528359 419732688 165729414 67148177 591527992 445513880 333811854 853463692 841839393 277041798 667535325 233214895 698340385 216096438 216867651 336665059 879928578 534301149 676571883 628389937 1714194 515825614 281595112 940510995 191150380 358431526 841991042 223152140 542379783 184337723 176646159 51264763 517841837 613667473 986739723 846624980 732473277 294044917 518638206 917474472 255632452 257585472 903082473 138559318 672442657 276705148 213914903 726524783 364027318 937545892 421467230 722917917 483995241 765498782 79473143 351225714 671916406 198138848 806769653 998633229 852536587 158817287 933452802 534819919 181386157 7423683 394822764 766089194 507190893 710721576 876053904 262862162 575640737 835526513 156532630 869492595 165372506 720612221 691736905 275243272 456857339 49817431 820416018 321290736 421248771 673677835 793835931 810426764 312355535 772392340 927129793 771041113 979666703 917236969 674041265 582940316 526318355 529702493 687949944 664055842 542704421 401741643 179302985 222186210 232264913 807251851 281396665 823912006 721437452 850344599 190048086 166639821 250323695 584702992 755023589 16203577 308101237 403173338 585847414 217644386 741721167 887517191 508364028 745054817 790007481 684761410 184518816 18464117 393755638 984616543 531365470 935528173 864619353 373992829 572113416 846397207 278285500 193981083 870386569 942591297 66757825 150710941 178500613 440422548 789908297 488945691 897932062 406275641 794765632 142413486 467285938 91030657 165284167 757851236 839992584 375779807 784055138 701977717 727601265 817510359 219607445 475232539 752559605 685942566 865975405 337292998 33519338 459253380 550187537 160625107 529858672 272008044 790261104 988795190 742843759 310704411 858840734 738145991 484028914 623146240 181912866 721750041 823112949 288026931 467152886 689434872 10209809 781141751 988834290 988251686 316398913 910766408 81893595 176045578 28362057 215875037 966126615 384751699 21595543 801286877 169264401 836797264 386409609 530114984 795579555 654983358 912671345 220557521 859395333 39157145 646012551 318510509 688010213 818540571 541318863 321116067 391988636 284099504 632685477 216651516 65188334 29787781 884501392 426037940 116154883 454339390 483866716 245408310 932168391 465244128 35444227 65332215 534421929 164234867 499640340 771825019 520405997 503687424 532990248 682779684 846274554 607146311 163116872 272919282 691467833 868524092 961878121 457906785 132373973 463481726 103912547 528911654 370710562 156322590 214843720 620638605 287867052 952034558 142394808 593739743 781984868 508720620 69637670 763660885 809299080 939935114 766486920 224796056 869157019 957805424 304088618 554833589 773212716 907609425 530684673 827266290 829397452 843775690 496435330 789721289 475393068 206005660 77819748 510535702 282606632 780749118 209822300 210129826 502105354 527912436 848376330 83955158 112937147 623659946 706307261 222933117 198409483 509130588 444176113 452804080 690825084 620204349 579338583 411857961 907602696 831745710 276355981 23626416 463139189 312988074 697030337 270286563 900451494 355081660 763363562 867232736 413676579 636485231 656604563 103243863 699273125 148716614 53239610 456060834 62065513 710644812 449587981 696365766 902494457 875996632 382783307 833084801 381359194 846322865 214631587 731219848 875872276 138757919 661056476 664930827 949542738 259889456 14672404 437415353 747321905 99150337 240195060 875089418 201271727 49258783 909231742 850049935 354571331 576573777 153098326 507047263 150949183 5514215 569075311 917920379 842912761 557969862 438260351 656487196 527624 137857773 846342900 147768720 443287623 122180364 707361877 649876219 417759629 620096289 196023189 942694176 752314374 587702828 365310964 507127901 362360727 171023249 583205898 517430719 50146305 488346285 614663189 664837237 629382970 229699496 470128930 841737441 894382027 598473068 713529572 491331276 352307087 463107818 202533174 991814059 218419218 654760873 324812857 789507574 594167596 445727559 582405907 388780840 321178618 84341230 352098752 663820987 237920098 414034421 591256672 17735387 903849696 299746842 868545877 388369478 891840928 926214173 614521686 556656790 428632169 562959403 118348517 107728226 206846289 944077893 711289092 46287594 764904941 194461555 586579105 575174773 393104733 754901039 271926567 249234490 983256846 93526239 587162569 795210884 770666914 931333353 465509433 823411393 565619083 260351726 262463088 577437116 306845389 612116132 496526372 425212872 257894960 474329094 221455599 112633594 183905795 11051361 567460104 470003488 368716621 416121924 363837176 715774525 519307887 736717201 777468537 449345770 718005343 712345776 238259451 606136888 415839672 811455292 374181436 637757456 465099736 466590158 171305047 403087750 421738260 504583532 83358389 268593062 873886243 827474736 331298560 199124812 593953392 156910586 739829793 36231481 170538104 437197546 366544942 361964591 3674270 659251187 517853951 582273141 620032390 599107754 956517270 732959722 461446688 965892274 945558699 77978795 131579314 208147645 252770732 55229016 264517837 832131128 626251412 473826982 395685355 252146190 535046942 608234538 350266577 505433536 770370360 624557473 175088323 321075489 685090157 242280126 595145510 940629803 649844646 881129483 964290738 82287191 240083836 90241562 219415951 39743387 874057641 399166623 866713927 272904916 446206326 42905088 322660137 199408214 136038796 449501558 370868952 564975590 673921720 876869619 556965427 335451710 88800782 484803014 556553657 676550048 114462278 217935106 670230578 587528502 296847741 952668557 258444995 554404702 24950413 942904332 609508851 778407719 716012463 208161659 22069379 777141686 501802188 81748805 672601091 361403443 155541696 105568026 595308957 653168272 251031600 160348375 423931052 517114806 360564457 126015089 83788181 456571181 21532327 689106105 353989186 881738011 516856781 241110649 207042813 524273400 179982950 430655245 87567782 961312298 339933506 46735495 666020233 595873552 88721094 14024381 965862820 928708799 948552702 276307179 156786369 799514355 955093193 611711506 150313701 418874384 917561290 546552207 555791471 436944461 412208080 375350762 88012136 762853475 18778935 261029182 988592749 257695735 90471721 467584315 544567755 883614070 546805706 269588106 821663886 353604732 200624604 31720948 133076981 479023649 78438719 978128860 380175980 237916505 554315319 636161498 839436413 536481252 276580707 486142072 973840505 181300076 32264463 814963563 748949200 158652929 238324972 190015453 854292485 92150631 424057925 994538870 877577538 306538650 103541712 977670853 400773621 22691662 24667176 44556350 632241366 406488637 781987453 322643193 394728683 592955746 684542469 177956622 404756173 901671576 456115864 626804471 45764158 324903556 169752042 468917554 265103726 255443451 160398710 121198281 977883456 904648687 980973877 214444318 429143157 995465836 939724085 157033538 672122161 843290247 308810057 880032337 514374608 162844347 955391829 832242179 137047698 569544798 102785361 547344849 240804764 704313857 170534016 403144409 232162788 76600681 748313891 479836968 693667399 774005390 130139258 460691955 359452812 194531505 626353244 285186625 119123234 701577470 936130652 58820661 329229402 943708831 714596668 208659059 911657648 662779354 938916034 284461540 157531835 928262847 310099513 975840978 943016786 588668936 784728961 508277657 703344509 136189295 375016355 811223075 934269657 390258956 356362744 809193286 481819097 29005488 757520733 11927029 668027427 145280247 428249481 850068505 296199653 264940439 355683624 746935580 576197120 77264707 120629099 21954481 217640844 702152919 129531147 415323917 537230959 796606398 713590938 182542715 842616803 916347546 935232383 196358021 621448023 962713291 806522897 952843815 265674391 237116246 869356652 533269331 583403936 868196169 852891913 748317122 259089002 635473336 407353039 633351606 458610174 267711045 461843840 361901566 792743349 302304565 270876722 969704327 363176330 361077649 813634380 655827202 994314672 958599511 833620531 673105523 710732110 129047435 387666256 712664569 424972366 823060008 224083791 5483663 911106427 769214228 112716715 350471849 326522164 297620580 972316239 895177309 637928098 788072905 470669429 109081377 432548233 103339225 231153792 710940226 985574473 388875633 9064844 639112839 406125855 644714239 716325421 784216840 489203191 604130324 14999179 825256505 166299038 439326517 297089666 191374177 730672319 887481488 8140647 837915334 674413023 624885018 930886215 567645731 924538425 904633503 863503583 835268611 397291207 674650636 814805834 176323822 265321178 474969545 34831462 278227142 49010226 61929377 469868738 5862833 230816054 547905639 80544075 691848547 929418222 518406222 424826076 63807737 965529425 77299682 866997990 438354831 714254239 795559715 493668810 838714677 292932624 439731378 908929148 730786528 431348149 749898001 637053367 619014157 703641526 471966243 360961370 54147468 904723678 554484726 680426339 797381918 327878560 146190512 516016124 424870744 659406096 541171780 58622401 337741656 981968682 382924755 867669732 761141695 839835702 297169833 676900175 304253599 46429267 40304534 826166913 196224633 503872833 409943823 256680389 589039399 235124732 379779901 153185801 733257191 572518177 691103166 186655757 233967688 151298573 23658743 464708290 890926329 826926881 705719539 654871661 985669409 605670183 85357229 107358099 626700377 258514504 453319267 642584149 779412394 689584313 981905772 459037199 328623054 454120250 478054480 402000917 210279754 853460490 411201683 565403004 419027983 253525043 306417201 812685045 784481620 995762098 643368783 91063778 503677034 181673956 630453699 741422359 975220931 630489613 466639823 819804343 401131600 730060379 502164746 28201585 904924825 924845611 507841906 31930614 633243629 567050993 471888123 326758524 379787616 99442707 921824050 878940324 213594973 589441165 409083883 198484654 807527631 963806518 732078790 905180429 434365262 773055354 209449717 206315562 406684871 480396378 122627807 70159691 261175111 33548751 900466307 408834992 435055622 807593862 709397757 500366197 985999179 902782461 119857003 74291088 421728497 446806429 964127674 7703923 217442619 862661005 160930875 278493455 233266546 669724211 887962169 188220079 448375264 299197687 109518918 172739169 733010490 751256906 938912869 407172116 308832334 236257577 367164851 867803134 109168446 558182315 982081772 617186409 536515085 758829766 827761371 909493779 544943414 189179188 474156069 212865223 237674116 427673640 842697483 660768906 22922771 365513399 628286666 900737308 772542453 722155944 506900972 183742299 253806931 987109018 518013071 170365259 454269939 964752081 23038197 110103915 906910348 252104054 510081219 974510367 688670237 904154833 744500683 536259656 797291857 928197762 884453675 813679228 257980746 943275159 860098621 145021003 804400665 194126637 884537754 85918153 422546630 709976586 14734249 233834720 533113124 643860376 121882162 232344166 560440828 33770848 399863515 307714612 714328185 255145387 901552651 574484339 281579458 372733611 900313952 216900915 858015147 241512610 598873897 854389056 811900622 433829888 655574694 262238664 623357420 963437029 497405465 838228040 268636471 423091509 440601027 850298540 53991590 827388044 418345927 67159015 53717975 734810290 151967533 585519827 245852208 751657043 380438883 233395349 689285850 247130428 957259365 23797555 809375304 673613002 13063905 75893985 613448349 163902760 786481837 79803966 852488565 514479664 661593195 699444704 813500210 1509641 806248490 842482846 838271580 83926398 669317743 11493898 4402773 796943581 505169945 405586728 177814687 578870031 180260973 236719876 182804965 251624657 66582080 262280691 462360387 773614247 181348689 801715035 207308265 703461485 264310184 865815549 736894705 918764330 982646723 416945823 723439011 868258656 692546637 799060240 576339440 467866699 11340301 193030396 908292726 271124268 774743402 458886189 394789489 83669060 793385878 350132722 711150408 183072516 139532954 471489670 646391877 250265152 870595607 337171765 318414586 209664664 115696304 929118059 3998441 825527959 877510824 491211514 783590065 281691757 698879865 229395192 475758411 796675749 113955449 946260567 786249170 707694864 187962710 798964204 764386444 844611032 925544985 497242006 202862610 221968010 46132601 639591753 70747202 547706513 876301691 157875042 393974075 503524430 586758678 778357486 82982968 792265383 29162985 879935063 611275038 372515756 256241626 656923200 148729713 403845493 57783687 708406313 618320795 643962866 625515231 498607452 409658554 391278406 694195708 126342702 174084784 866560360 134664175 398379682 378071691 139413512 58535881 577871398 995731779 901921460 479074337 520054559 417433614 863886999 368655250 646973673 76145580 492617927 830153604 683005406 489561470 352825988 572863605 899295342 42020383 559000103 46106598 941209691 494520805 789519854 637245067 734481916 194442884 561500044 969298370 689558922 564675159 179596149 166992580 992182838 692914559 667605417 637595779 349246951 381742353 826529931 667138772 952949211 116614348 191159644 839579758 34791485 657967513 711632493 561269625 772300511 169037092 457053794 690954822 504112790 866222207 720889195 901504031 139839900 850759274 63845402 105218828 187942477 343760046 263890131 906107457 935713511 117499748 866232236 826848908 848913749 732073229 631764635 179243404 128956094 223210115 672712737 21501693 502576120 557716159 742470446 671454930 35986569 830567204 952539803 831728743 105637970 419318894 221110080 198560026 186063986 283767629 274854648 694432497 586809368 902758960 442487558 700726752 29585775 31138601 280021400 469465169 58979383 808916566 113680995 288383431 249483333 103919191 280690559 302586292 212821780 637517981 995588741 518329478 386918555 260522800 737110253 755267281 999665812 781309824 936466267 397398270 619029618 37262631 588044823 335558941 595652181 607536676 974274749 144714054 341374672 337579059 84373727 750814733 728722942 562707787 37305687 192331565 131630112 744710170 186371062 912356908 84611927 538426783 630411436 904381761 887598939 831011053 472339870 331761879 112913925 88434306 641447367 555294024 53157736 79665565 43259825 622825623 634269181 860584337 321517468 74744322 8455603 546415056 349753381 801319883 218025461 350363898 653478251 752584628 317793217 932563753 8686215 5265616 89315462 281759328 475916459 353736032 648653749 627078572 549167987 257628639 15409572 196403917 664206661 77905825 974014118 488292757 953140571 91938378 890772674 964614778 119710886 867062472 663575782 233552540 787659231 657528993 329905191 762663682 617083419 286747668 255702332 741807161 689532410 932122142 11334506 353484627 392865597 590081173 984293875 500037283 790134279 108981234 129390369 321248021 258374497 506134783 280393953 260108155 69246343 616390442 494357280 744103106 314574469 670191503 832656043 464249763 940146469 192191179 494591774 544571886 754604100 828756103 877245675 14832971 117191044 508219865 222014243 390897570 595562278 46572481 734170360 78848296 171557055 903092467 629591684 86839988 658829109 322206487 590549662 645728640 295657486 534036884 129857684 540123405 110653468 692296585 138330874 157698940 458327102 250143628 105189237 699797611 777734815 181487468 396982977 718059574 544778389 479712436 214023192 950744434 436396479 765071484 874712373 28131014 597974900 298357863 146751714 299359094 358973498 808728657 152898613 483786770 37386597 387074715 609183854 913022369 596982977 862975023 744603391 982892403 876451450 316501547 214309999 161375214 727504798 333336547 472467750 184100293 924017742 788713622 384072427 940644691 4045918 627640168 804245585 735286797 461915911 806986188 467245383 51677437 878173834 203134073 366470077 46634930 908292513 812101948 439068888 143917650 540887368 958164461 213999293 15252665 134006485 446191455 384247645 332494586 928460840 412411936 284174846 121994737 455758699 855242079 160167164 69737935 681133164 724029932 402982950 333143545 829636375 857735940 272559627 266021165 881952582 681978846 744136437 800867684 564117716 388312138 654216690 23953204 583349156 609136177 450503272 868770521 4511903 608447973 400634501 254956532 324752687 63554936 917643501 317593750 204352788 197469229 355168133 532996849 494564723 594487621 256979151 614527095 63248614 599618985 628231131 108561769 386237375 675011769 701950073 918571922 664205673 504734524 796554796 62140789 222081265 606205156 821790355 64025448 5497086 563374711 734712776 858731848 523780535 151191012 626336315 386761450 559558283 44859763 709309883 961313917 337936003 245096355 836521760 828820820 281510223 932266315 756522103 251321360 465973910 283064808 264710456 313204328 291458695 624395557 615371414 46336638 108018252 991382469 626481840 677170413 157248820 950300487 290978159 555161918 596394938 381095188 875930682 375670414 35219979 257106571 582391997 28588552 867971946 639012080 271293775 201775600 219002332 66463799 423919397 348238146 758094755 557758323 528275603 524991579 530523458 608599833 135292510 836541915 449264461 51583308 989467250 747005439 309182477 387702824 948540421 81532195 162437518 249245723 751016222 912623843 394428123 265880335 203197511 785583203 371817114 189789665 567276510 973349635 552051683 93362902 762892056 647049330 695018637 417918965 428895972 562987814 864966560 758499482 837084497 338540344 927771792 874993137 408904866 57816593 677359260 234442641 676634737 877676501 619814845 299351348 262315836 735581637 298228356 1420261 622068167 879229847 529223121 618342459 661415826 130871623 842385691 169209296 125209987 612603095 743080051 398054882 320418096 153419929 55712256 201345982 608539022 594485291 117504068 258017704 842274411 847636437 555192214 875632833 779551144 626441316 863401635 950962331 975745533 282538751 157487745 906518953 891554780 609385623 78566008 138736873 745912601 390835484 77856407 696101641 695654406 920108801 893888600 199338398 82307677 297959178 150159911 397793273 647329810 90658495 912302559 25926268 363808199 496109380 325157302 355374868 412969381 264043219 167111867 131880613 840693446 836205267 92179545 542124467 122913849 376385903 393646512 939623548 751700748 56534048 58288511 900236159 718674714 302508292 543963320 711341151 21471628 463816412 644209598 823587559 540182784 809982925 912679903 707012990 223620873 751937311 690913471 471627955 550341222 302091802 434019901 36925217 485654108 905058255 128882376 847280635 50451773 949384718 853637618 197097810 406683005 477961425 631718837 660010087 50851117 960301949 692258547 795200433 30469081 521301059 891089676 617843845 835899263 439936206 341981716 574084576 532230426 987360496 935630122 267989068 574655297 707481964 438817424 487073700 25270439 451594477 649634362 596718432 594275313 580236702 263638272 56865068 662558637 728621713 348683301 91147875 221196692 835993398 697348697 570943752 310083044 890455285 130969981 506142492 872461518 960173281 802412760 601344534 25114104 442881983 954921986 965992934 802822160 826220678 569827683 552871722 471516867 981163618 805566662 197933150 29599137 309543442 974554645 89381858 992212858 762336685 239117695 788709684 608000568 224296128 125891465 110350880 703283051 950140938 371310730 871323963 934279446 888792677 938771657 783943855 938519832 273710793 653416673 638671321 950119089 120378468 636013321 72909651 778047978 749919016 330530386 692699230 124938311 267450008 302117192 868049841 997078393 444456273 550874755 628000257 4167747 2538491 34696451 710046238 822903549 282052802 371406105 209674916 324344860 873628734 490079118 794299454 245615125 849268839 884294960 96683114 863974211 707649595 735232738 67442914 485137338 40825612 318325446 294855178 796738328 82437909 709741642 392043286 865152979 62033669 147537119 745272563 520620575 431868988 160684753 624664491 293983765 359213119 900039939 416918115 642984836 329845354 845260959 799321115 225545063 257433863 201992728 404637838 595644378 478386607 789001803 365352715 801942791 966784206 966701462 450511014 662360247 742239141 832231497 150612792 56642739 801692102 716371892 240798493 649231172 273095500 663510893 50168682 782199742 725903134 407855304 908858119 730222409 460993997 899616428 665648749 876034013 832611481 897120557 327734184 655715355 431682491 86322082 422563298 935660952 854235348 218394990 560083843 245898766 851916296 448394295 320341126 863102240 345026082 722547912 202230282 821769387 341841966 690852427 293713302 330840506 267236764 110901680 906690510 828972593 82009851 193466497 82656557 959746885 84374099 271142759 387212055 977506015 51084950 85731990 598254534 840597995 146541317 828275007 896877953 352770762 867190876 104109182 444529288 532509828 126957911 580238821 577861395 721711481 907757295 787887557 141628325 18657354 830575497 841748582 219600992 943948281 237554024 956910662 528182418 174455778 360538593 163397864 618751850 505624286 630584571 70035062 264122183 549052617 111963726 900820841 642328825 914533122 587206079 120739205 977686157 101097927 892111963 373858905 469945875 2938076 807659280 499225940 559097219 902188194 667897542 62029686 482569125 975118223 769328774 567116168 828169682 871750357 652390207 42325718 754457315 892823117 619942049 623915318 981950269 459172459 790473699 552646843 234182601 416335008 980965597 918533494 956220229 281890601 755196514 633799929 577615681 380904089 519906024 171043369 331472467 488093780 58316604 126866541 824593878 750575724 374970583 15834432 614898048 846807245 127457635 624257421 840757091 161804736 782549286 965475150 816769097 158401773 247138725 340824271 950879894 962908796 320747017 55997097 920657306 773270310 712579806 406457866 875015336 733187020 223077025 324286742 556679601 180811778 572099743 420943337 358541029 284619121 258106561 748074774 988646615 816801854 750638585 687277484 966313842 210450050 559618493 602095356 643830576 869055248 125543621 290175559 444714582 414912308 386763320 578139728 693408932 992828457 618283778 753921570 376145598 697881210 963779476 839446021 547065020 141233686 941720473 92327167 254811818 80175266 338226921 463762488 305302415 259552913 383698415 813038468 62475013 711751311 18982426 798647119 80992133 808790883 500796450 172788108 145646490 571803152 480134121 945572520 770069821 871460361 204081024 10823427 124895705 5297681 148713646 290859184 202408563 231602179 996327701 590298998 239170009 171835037 824172060 354243630 195015265 504648109 400886254 37289352 657585674 113561410 51835231 273987699 792873406 725267727 249882669 19408487 455744654 500902627 15987435 403844751 506171570 220566305 758188162 636858679 723711203 88975047 752304653 497009091 924742095 651789351 283757705 858362210 349448537 330674607 947929183 973053793 585018999 78941536 68268264 946447510 645698760 197049027 697328535 357109809 859115406 729492039 692454119 688138793 977917563 905735499 57949469 107488481 458539209 62363422 320676961 272733617 483959689 562027764 669598339 233063472 123662183 698843778 665703370 600757175 413576408 50109259 988784149 378635576 421494474 94639378 30521372 253137554 199542586 380664870 859342708 224728565 196790636 525436282 219735108 886306639 988961010 516253251 256414417 980884774 169600735 13364516 106329470 615444053 127742841 340134489 84098356 895069077 682820773 852255633 442415072 989052247 613110987 201551640 242601125 603644352 615235534 733116311 21507715 455251661 759517048 403460781 451170059 85657965 660954011 749507853 993854537 188338639 324444301 882866937 311944440 78614146 330043756 692369808 251937413 215629134 479690163 609630665 411203883 265775813 28195567 382590271 478514352 974228861 686558743 179609145 384939361 654361385 520397497 25479774 190189461 548911988 279443929 107110685 310638222 159288129 724627881 848409694 41130947 672534224 993919460 461386384 519959343 532218878 203346230 642404302 748101923 568148662 125112428 549115530 452462863 523531487 494833502 641936028 406639848 695198050 310102016 522809419 502409201 218425246 421396229 168481999 596595855 478508730 700701605 539279929 237806924 960619296 613737536 705607482 146519667 56377748 53579321 663225815 342329071 812837137 506825296 901309629 912447183 919176995 529405932 956909027 758107119 750720267 91926748 675322746 894656803 111827607 841463321 547551632 486838104 891560295 290429597 193257932 674626101 254912996 612412865 408841737 138276489 950441730 512780196 219755558 691627517 60659808 2391826 36907521 244370674 115077575 484564726 51044703 920681812 496462443 596780739 612203127 139430530 927689887 863998705 723190840 720760408 885334446 645141478 8974584 337887813 788108132 815739096 354657881 450041703 652176413 435954470 652538108 368752078 862916515 924749461 584127901 1021603 713435228 707271779 167747288 56644174 391663920 813403305 246285265 86492607 317234726 618739688 691859812 199567229 616271915 2702448 63509160 105019429 474572880 158297077 982254034 869623379 68774565 561036459 829214507 974196708 863774584 555138483 206069078 880864650 284619908 982473395 40165510 260966608 155104901 670011969 536647808 246639986 296346613 465911920 715372114 473725436 970536632 270228370 279687486 916703593 933345878 579885855 745488705 846891053 989028428 976099327 348855645 340107209 637534890 63809739 547184380 397873933 424280369 246238492 807686301 524437780 665349144 43100222 648322883 590643394 604687969 396730711 813328351 956797139 481681826 45198625 317097273 40758066 458588935 800965233 736575426 306982443 581742587 583137172 562440739 912629282 777248500 766917123 194313827 35987390 11830753 855874383 367782176 353057303 578946079 150918562 202124173 33706087 215465128 72066857 695088524 571301766 872729001 133834051 78894952 246978700 417401804 421666899 673530274 683000491 180159532 125998876 233715499 755618357 274472718 104581361 178688043 745881097 485141548 655969569 983157871 76683070 437428051 286730937 377323277 817613903 877954526 819555505 238204585 247204946 965977754 921331933 696766051 262194846 252565102 738479516 958898135 682247611 263688143 304718667 236421012 908597470 383743887 211418323 426454179 588644016 635549552 795855226 937956572 959530609 90533542 532975772 384607639 960056051 988882057 816341783 237306423 522894090 559670552 304237341 270355554 636059702 803001651 912277308 924807397 961765475 347951685 574526528 844567067 373803452 75067897 184488663 303964999 898269480 641173989 960127901 65825195 900879656 139595135 922404189 348879001 756458981 296881103 31251992 932950542 510593013 719647562 136503189 668729970 438325826 833337527 497726659 836541500 718824869 513611608 813152086 379007482 145218556 776794819 736884540 342691822 513004386 645553472 668894975 666799656 315585947 538930277 705612919 257995413 456142540 818155386 893683101 5303424 342322483 233685822 697796026 306005888 120696615 547153348 415384468 877717741 581797200 775004962 804371062 808175117 574781603 228580654 161184728 456715151 257760987 202319608 332914620 127840496 71915098 463535078 613139901 737519085 619893553 120566230 919593291 491575521 229153764 270594726 876713729 652453311 627361845 701969102 396069556 675628632 808197117 909325090 641745981 340619155 231639040 368278135 64164247 892790507 794907410 516257674 278267048 524637653 751150669 602852192 477772435 453383479 371219774 978534855 837146343 537194127 923917440 758982387 876525350 728461310 625578544 234689024 811451952 650764023 896909382 356353393 302963431 509533468 747980765 491748558 539873549 719047576 752407746 985197925 585508337 449409226 110190941 855008747 682569634 974533341 177703510 265282314 647840068 853425465 988751263 318513192 284235196 158983836 304305574 935757478 778334414 545402308 252205735 277824735 726098424 385597704 464578591 93601833 846358473 968297928 375271365 95524668 478712706 123240394 132540737 202388182 744843729 854759534 925338561 358735353 552917286 373204825 228019848 163579718 149963142 747539629 848180746 655347939 472931747 445914353 389311059 847194882 702703344 461381494 654040060 857529827 682222364 919313647 497596924 519370386 419796178 960132303 136936563 649957854 416348028 427020662 911050825 430405808 937512831 462809721 133537830 359336140 658275579 232679767 951668487 958680520 456030325 879463928 563498799 835393855 487871225 843222607 548826244 426427853 397392353 80821884 582490358 684034914 299398003 165534999 915231992 692305268 645951011 545219063 980660318 73368697 913906289 935216033 38132641 29827123 394358774 734759890 459745179 857283525 13847391 376931177 853248141 711817921 102187721 102130880 73803889 943361708 414507856 582511565 994018671 751152279 309999347 770234907 826742915 489210753 590222578 33674235 771029943 939730009 171600191 142530136 662963443 840644881 545235772 662113476 228345104 976009788 544032835 682858732 837832387 978378542 198044542 722076497 556276561 284932763 18861958 811181081 697245592 331907315 653360434 511640183 234849452 749404185 843815400 972234412 602697630 842504575 324869965 223139905 715301996 252442818 269970019 440078362 658940101 697011060 199808542 815808162 854210040 696826583 869665398 409737563 221075429 944358986 351509866 682637525 444577865 374396681 116277995 112490058 93857349 166472244 674478916 992321140 317097897 438862328 933629615 814474430 932722185 13156922 847509571 129868521 882148289 701329139 39214358 920258482 1848563 357548323 111625635 47198057 561943973 531127890 18182608 202202934 853961131 535408029 157527327 698388980 771575417 559203729 189477700 760314823 124451892 483616871 587888685 246268326 650742842 730704613 464363876 797051308 508221558 103180985 179789114 145999736 771164172 325147268 350648295 716335878 277121773 209409344 68725211 649371222 830611927 233840806 895125456 179787198 611506932 879559235 551062784 590461353 443686612 478032560 427298522 792774633 119204129 58569446 193469267 245762808 501587750 506861488 303797506 905298748 263520634 104849949 922772618 710567070 804627885 485665636 331179733 675662409 875713144 798229895 158219841 519512637 163873663 776681421 143908699 799191068 893021021 598768 507191593 700711551 556725857 653902955 937079614 901472157 111173903 317888958 394348827 587671510 675505538 158686044 887464273 76917943 944629685 149772976 936330634 309085948 127358836 317815265 554725567 425822504 105218766 71869802 8784250 550261586 733702868 631201308 399430917 138670034 307565517 101164802 41484684 944869393 740140395 323938778 18748530 789650007 301811709 88283288 956315269 521169241 510929582 409992012 444163043 43444 887430342 362527067 546439430 440074002 105516594 890943965 468740990 809981959 617764163 765856713 214478446 721316943 168156131 314406001 99376662 56011905 200062459 956226815 769260942 429026719 237517921 930781142 489739986 858168322 419433297 138799090 869968227 299893395 646136987 880038490 140386399 882853049 281523564 898638501 691777344 675924720 804191154 82949486 796011291 955932307 968619261 372321809 152214906 425246369 416168526 457634675 82686275 14945277 258833726 268075899 361651546 90529099 829563166 374998772 221883503 994734467 801120975 35159546 367773155 92284336 340203363 121386787 847254095 161221664 563204623 638226852 764513750 573979450 431630168 274608743 991368268 443670821 599393037 452979803 854125612 464724893 754880033 756446412 107496456 459962774 89050029 533512916 582570239 636875765 487609894 602159544 188229869 789031771 816832420 409712116 952124366 544142567 597170664 635218471 8293795 971256656 453313870 219599400 205928718 688565623 515933759 170026366 278819790 628194772 242756023 497629307 311707743 887855015 840325028 306305447 678723564 78198855 415321704 826465116 661905676 16431394 418036477 742608517 974386281 673326131 653580519 121131551 405642043 254992169 114020405 100336892 735540522 699073021 712792654 737388439 108109207 308411698 763151255 729749998 400514392 843937258 540380239 599605913 405217946 106559204 616247976 238932174 52875272 629147143 826669136 261013685 291738451 607833874 349079152 597421247 537906174 837927599 815891589 517103529 683492654 947038305 740685099 397590480 207443846 758739506 128215727 256536193 965593223 241015914 338151744 477648682 962163190 994296094 149840730 351856601 651103815 297171537 334664621 602425051 387908601 202760557 925504784 18375082 607173942 402291687 111299022 419931673 120522132 971172070 836922072 771312079 679547433 676210684 24206138 815277654 915079531 977616353 172823728 511425941 983534192 758412747 271256280 463576434 933800814 651436462 523478866 410360907 963358683 112216182 515829774 41537033 999608498 904536424 136482990 529110502 81281168 454325633 296823058 412459193 905967481 22850758 837844 921830509 559508801 564712424 974568103 72917519 242092132 537889698 284238492 885087482 986260538 513471319 370498241 11571396 508155114 113442123 132175223 674706121 597713598 354166508 546234573 198153948 540145010 533089954 924103332 266982414 250643357 227953905 874883654 499447226 577960765 583600855 944162149 399661035 902923284 485361426 83451474 758915579 307234778 780015250 617712192 913739294 174290698 942127048 221332521 906142252 485074825 139155292 933818278 138585951 448826712 84053092 599136079 139494660 852104559 459362519 95577833 378866093 416835328 575090260 353900012 32547666 955825579 682455988 870991053 183904454 391254641 923659877 110204708 433801300 43699777 897530970 623368727 283196292 329060743 411423670 39380230 492159704 269446519 405383851 894584283 337095707 702302601 884912263 755137616 294517254 162536960 554950221 209281274 187621889 839116220 623999136 901980501 761803521 113835648 319712163 177302492 262039391 566558939 513541968 916159930 122487427 14093718 951100441 649379430 964900241 850018680 488526464 969417045 617652976 982553765 747228291 633317221 820148113 513781698 215537812 22434947 277803901 362872088 454738735 898467785 130175904 549465796 150315948 651723400 443116656 153041843 94002283 197574431 27987580 738781472 454166292 726202706 767340697 963643236 430718411 191353241 79205654 961831354 166450381 184347077 457421296 107916980 952718302 565604826 338074527 740148995 695849002 456140332 931714946 539131979 788297245 644673145 392850532 174342532 594058001 978052025 252974370 250694050 543830101 995142334 368286658 588259996 378738895 893575066 655568617 468294191 128141149 122496547 425093641 461248010 703789315 197555208 125653873 236428697 758636727 664929339 572318330 64249693 192498893 134886563 929729144 665961167 582109043 172976436 331906488 920386435 521997712 364622825 57560552 676583808 712323942 509176030 35554917 418370449 752955305 85789222 320939379 775685577 476990027 749015722 876578622 643161320 623828337 950878640 673157186 680338181 891557506 146462971 973867077 375160563 570102708 673146428 765015113 701998207 925674019 547000704 153732521 289116320 22303260 931325323 30132095 357311095 351538929 396010038 973177833 872858370 80508892 531758833 195692143 537759910 564498291 609328399 549925695 874306531 562568599 457770563 644740166 934168848 488705430 909332399 98450182 749092578 134499420 438031614 304804101 983285754 859665124 173324290 771084449 147563063 970561931 933203235 944601553 330398073 354375985 393948120 494951466 504286052 284903834 509144378 337025535 660807786 583345572 17093941 854757855 442298144 712122177 702287867 847527847 515502282 829008245 135851604 484498707 532507648 99221496 860762593 435509735 525716618 576102047 171371161 176255028 162360090 317736352 794123898 923032403 598133568 213330283 27210465 677648969 741237857 184026687 724573029 531851488 287565660 165358756 75854822 498114707 409611721 677352518 169993420 983678695 791151548 143672821 541185817 845194902 764660045 318116838 370800538 938134896 566686851 815230636 947329683 118027323 42743467 392046066 575137132 855111240 258416436 472998334 351826424 45519740 408080294 481232697 520962658 989109745 785561742 989282953 71280322 314691340 385320785 46769797 823885903 758875543 343966726 648735480 905577337 915034994 598413930 768019462 121518828 609476295 24264890 475042737 431065386 120935362 792692287 211075234 732799013 389554471 11724102 470762026 163583390 523170508 506454242 239187796 208867930 19647115 950854659 205516766 474985641 413784471 485883170 297311947 40235981 375922762 801454634 405352223 512901383 789086279 602100678 74572583 194322486 456457400 613352255 764450199 925965847 716495090 958021297 401658425 316305305 368712287 714446291 939254148 92182480 531831614 271356165 69247289 237256371 623745182 263925837 68359549 857359127 345186082 432188610 311783026 326614406 543065575 604932278 321754600 93059818 980634516 239224159 463154696 936719252 756966444 778412497 108926730 412852060 978225264 803840653 398448356 994562367 251701244 411457682 596201537 896068684 943263048 668210086 675064886 728955915 525900707 694796660 95188708 222590436 62836526 724602725 618992363 244399789 826626943 74708147 965077230 521316415 591448261 685479399 460908982 64557148 195169449 996994217 879285217 243973448 499492097 108164299 663546631 94081921 106465367 828966426 488672387 703638754 636157541 10350396 595173477 166963837 189547675 996452038 120396813 869058920 41692552 489681530 332497057 222262960 578913723 436754406 658288050 937653291 100200548 932719461 160385427 565766189 138331189 178016577 211003465 518711371 466246134 315499277 233263014 66467171 200382307 294647801 320074179 607144635 230141559 58799907 779123358 123187197 812502050 179534270 26498767 652575827 754139856 790573383 111038246 70416722 380005255 169183217 778462397 45397706 797335325 384962637 604435036 316566833 224125382 573690139 539850783 563988219 112367287 730001631 33258044 75198562 675002014 891476023 58482801 241133840 907346471 460123476 431169460 494263874 947077088 188022002 533164309 763285639 954123721 977257390 916184605 187980749 18451779 499838391 918718760 327105853 367441248 518647239 835581935 374416705 263587479 492072572 131154675 80273998 710427550 378249953 120674011 734575055 480949564 133472506 300942053 175097565 993807365 31114359 679331011 611235694 462971023 532921557 678291624 571863899 700694459 153016118 770006648 921290517 564996630 709252392 860357373 420825383 463627177 78522777 134110001 318779916 660895588 521262503 200871463 260128777 56701648 238452943 425990358 202645848 763140488 448050357 853180230 43951859 34577132 250126618 240212254 952995332 914203084 880338114 333262436 492735887 880338860 206248560 204568510 279170217 63147057 723882943 24380491 77011526 238910540 43766532 64738181 735565282 464479962 939431554 342390107 14623530 957481236 899866454 827995364 638954862 196271790 403912665 896244321 287491172 81071986 964536818 576978694 686118621 735649532 760904592 229320409 215056702 636613956 469153696 852238605 379904552 891541511 796162134 613471003 550759448 543056154 722459331 135985497 705698316 582503119 546518422 111313181 568671369 280650927 671029568 615416273 330375958 783182987 378256426 194056017 942853888 538626519 912587023 789836750 252745825 657748541 620486204 245469259 248124224 672672720 551398616 180358740 319565091 825209341 722058778 701865367 122104112 915046094 388715281 890773094 7107474 906199744 658291357 130045559 564444935 50269271 940134734 654388955 773227950 706350841 639051540 218308695 643898771 67442528 264139328 123651692 437757967 193291351 347248554 893865224 453907583 878025343 538367181 307525108 508961190 688458569 432050143 542823849 975187081 604318058 665484525 521506144 159726340 270396100 286758326 924125167 754699619 923249333 862769322 334901595 706512516 332898027 635388372 815193551 941990219 98482316 984338322 520985273 2038067 627714050 992048051 922919672 457292264 972482333 429516501 721660851 464149494 423567887 871727363 437931641 785646272 936174234 710618752 145494456 265016580 648493915 738653147 331053244 512993708 966983082 850109706 699369053 257969335 451505435 166195289 379085925 861227514 423789496 502328700 515825818 494073142 188366635 559811674 936974563 372517832 766868674 395371638 917562612 658495065 531005876 690863094 331457468 996636072 128276701 574753844 549371730 947498307 481796824 982365032 26879440 848490771 961768648 275408546 739273756 113700798 624863234 847064709 770450692 51493573 895999936 106394519 737925340 526716280 178942269 577132773 185565685 968639376 747286241 545729661 132895528 828512258 344567593 408988242 966073662 746326101 821082883 997722712 807338580 620066292 829795067 222617364 692133102 208357120 962026085 574620506 389791181 464377719 813430501 660955854 193028874 957740387 510863021 799672599 35133993 636548704 190684711 552260556 974711766 994913624 885715376 718446340 205457977 973708975 579522625 530618857 844240385 257910932 827907924 448558230 763148149 435012341 806787478 912272539 109387889 852061522 712557477 279080417 883807996 326533489 331888840 179741640 834849592 524725252 817233383 141791053 909795860 51655982 996649329 853529156 431057886 712708988 160877761 797625293 4119558 720092539 494650711 645360714 291766559 490353951 655101229 871418825 192562414 446388683 463966076 758163127 846131623 304879033 452863642 150786045 572960187 390300535 542722665 704371326 527196185 689468146 846128933 852213843 477772767 579681191 72411679 864040984 635595534 117878962 80403661 200458318 480808845 593045124 649262596 245317674 842448046 365471104 884364940 231926333 118488301 781546145 97874868 986575681 58814493 255577296 935890337 156470283 656031389 744980277 215178547 198892517 925930004 253346184 117244389 817973666 87613125 168283186 304477415 224227075 327411848 121526365 840780146 964745456 602700112 762367539 68768174 532077421 208969526 423292085 350277721 364342810 803310705 101128947 500677387 224937123 948553321 596097341 533676276 749040813 938971907 19417470 40389004 251219957 810527848 265319158 744742639 220317357 497608679 320979325 357571514 449127389 769874020 121074341 758524701 167040471 115546101 98624513 929409578 967311295 135990366 931266762 772113649 544301554 203952153 402495652 550932369 123319168 681165391 112708365 504413888 979731817 629550884 462130653 21989355 310012182 847823236 146091795 102895153 271974814 717122860 832366110 68246159 763363631 154075376 794624204 554936994 120290353 451393065 830246367 588705270 763145971 111239201 102813443 162721301 410479155 506223487 467123727 356902030 125032875 384912514 428080044 263025578 884342826 57608295 965638921 485339831 914800641 55392973 277437725 269394875 420364381 822038177 524853087 314803673 707456566 804169127 8503240 999559404 747297059 653437542 374037658 672651414 840340922 137253307 175184413 409240312 411753795 15391439 811959848 573402914 75279819 227721774 992428881 685964244 624787589 562458353 724156736 164862781 25195466 406899579 951707986 639092363 869451601 914503884 25112639 133206662 655282991 313669926 946368482 576915789 709420742 250204663 802117246 494344407 26731173 419484156 215650600 791860680 359690052 39856424 265234098 3386551 754916806 184367294 494091723 428012994 766226634 88718536 235763946 772169495 368159475 728023025 840731844 888144170 833729143 520229265 564742617 520141217 210096689 832806513 996665065 490124848 517466360 22036540 705672138 615415938 626732148 673495246 138500379 995017963 801316070 519168321 3453105 684141576 884809715 104186816 159522502 706584644 742629634 732464689 797767631 318732706 576986402 165159558 734578105 898896295 492312711 82115978 451916839 565691932 428800752 837498324 403014235 428986705 892201109 225668301 791243177 119850756 610424691 856477350 563378310 841545421 763328591 875585789 8508101 79354719 197654960 932696234 269708339 127370670 636790495 625261706 983389222 635455585 293002004 534422004 678415694 871985525 43685206 849438007 804902550 69177295 127661747 993323600 540476843 82642765 720379161 761356385 953527303 25047162 866630378 507620250 606223166 136047300 225545825 367354176 757808880 751528837 910898594 963101870 395308422 73360371 252506656 708137327 673115446 892577769 527349785 214503924 760154465 631236074 700516803 418612641 557195199 391211089 269486558 569677058 277513544 325987345 302589032 344643760 696628772 136628675 908313390 990083735 907435819 907036212 426972205 668925294 981965495 78302916 904699939 585875769 181418539 780143414 367346315 855785423 195319509 824464671 987515371 404823001 31570120 328094272 763081486 535021754 830283784 349391515 35755123 849545141 234690468 798872715 197278312 520731213 972424446 114359723 561657527 776237586 732797124 756170487 358809068 306821426 363199589 438021722 373813826 180907469 506964474 813156279 535517709 200067614 163968975 274806712 698407335 738945704 797003214 202644134 997430020 72436021 2311697 717996039 249342292 710482569 484563709 397838593 15526940 704123350 649907320 216473494 851656838 900619226 851609097 212493595 114982719 119065168 415179058 373791733 264220267 396426435 504694331 328695351 219584266 108511580 255203040 835683252 943721427 738931248 482994277 742513036 643834188 920063773 756340739 616695249 976537534 888445789 514629074 939458794 673838872 855642058 847280774 213187977 178921890 618431705 641258138 423505023 593974114 622369234 603559377 817727023 317721768 64373899 874722566 450818174 621483978 893214066 549554866 409757724 396975108 48840670 603859790 604202481 468950589 678841633 852655340 840174452 191316254 713051623 371131385 860171578 331943939 307922048 681501028 586384631 51529756 975084597 325066939 224870137 288072612 219646778 63892962 894396445 848340279 6852580 193192621 594714139 967501907 793877417 784500808 250751025 664210069 82508388 839447182 701425907 963031817 530455638 398784340 815588326 143280970 645214418 961902304 213380724 380584168 855487127 25984117 500113729 434505780 437948930 805634351 59600637 707870421 949570852 142665070 659080182 116039400 31966604 49088610 201372582 337356770 430228648 229458304 444581933 985021010 232196699 956348961 910704685 715798915 275339134 964443831 46795161 809521990 717440828 336928749 147884996 581036337 189133504 848390587 324947853 114322737 276221196 596420566 455587718 510494864 980098676 865660563 360785228 611546624 933577325 957959424 98590568 72407341 57678510 968932668 943620134 739480924 712551952 65458791 451073302 666365161 174093969 998266141 843020772 797954008 198031973 694353803 446793906 666520718 883435319 159691838 244985514 974939083 790335394 720112560 31954887 190763459 264823982 84150607 447584210 245026707 559797052 541704354 125247129 77016190 913804644 941004691 713329825 795608467 578789392 617277557 100257896 977741946 958342447 749073281 619542720 57555734 386115070 785823839 55145424 424307733 425260882 92572274 889012002 454740878 908158831 91705220 172397762 740312991 322795673 181548624 149030819 775860908 305705274 838212678 960809864 408250746 193995485 102223610 744846124 958614955 933647598 991780317 954612713 737411845 454783942 915303348 76880937 917680234 8984087 113828149 673344452 540408774 139227122 396146726 81847530 696698818 697280658 556120686 23941635 392665136 343423074 218890600 63348778 288531396 194972547 953516443 991400126 382643920 620016719 26949190 397325601 52078547 28144419 379918643 490691451 963787227 176949252 891993365 79989989 843433772 986388436 134452041 779966958 934797547 995405148 226123809 500773852 312908839 581407015 715986757 105103146 662738625 351637380 26076003 2808284 24612967 820354671 859987834 246237335 594444503 101039276 523018162 848588822 185604028 484028236 320949149 535373629 84615297 104855298 464284156 967833139 390557595 52735057 852670659 804814979 259324788 896180191 991587548 151150166 108654071 241898783 166179674 140812728 204810676 797718614 978222743 585746577 361220340 709750658 819337129 568075831 764676991 626992982 115010303 702280822 962452631 938308365 168638831 748506145 140390791 220416185 198222141 919905222 330852193 209121634 378100220 612416204 209552140 891257504 698669041 371788332 424285021 932419178 226373355 414080720 981453320 566018346 990830662 174462770 11469188 536020275 802139294 484124413 187623583 506753223 751385919 740134288 621478064 31361128 590248399 984801473 603436115 343232037 767042752 612122817 283803158 9409310 309928572 744523324 466684682 490859939 786377714 922126857 700059852 72023711 795493074 869510615 856459494 544261127 212051980 631426423 902803456 144352821 552098429 240709426 204743999 389055760 848918740 406380548 246984284 222634536 645584821 860453062 496599854 265100668 489479821 486974686 211920963 969693755 72403376 947107402 984011800 818611778 6692155 829645130 404798099 817371338 423120947 836427960 338900312 811919234 608551338 75375527 297704265 719842196 405429311 85222147 68842470 979384411 764206770 315078304 166437907 134099683 77446700 121054398 499199427 417016921 789702304 22475703 362247661 103068713 906001377 175697431 771685388 589467507 98190672 494076083 114129549 978962034 459833166 75619673 485078563 633201303 865407790 794467142 849139677 849507900 193460302 356334199 498666722 54103314 59182853 709372858 927273965 705542790 422559794 527916380 1417850 713166631 366400488 288760990 64592394 836106310 930419636 290309725 828757165 628420836 250986653 978621784 536693619 750746355 406561996 999247119 213113473 195761010 805433727 93646238 677601129 962682942 449987856 872710860 157356276 363647797 799756523 7961797 98958986 183192873 411566700 329939638 685829224 34686407 630565472 712369653 251857600 326811732 100392426 69641903 682046878 803975726 91715492 772949755 262867440 675242168 893791843 262782316 371746790 795298578 948790799 403697678 18563619 799168229 400218674 216081714 190842131 712094006 497125819 898814672 876344695 293486795 473995694 880945038 398820239 509556511 631297844 881268888 38225261 104091431 813752083 372233330 193197165 737239822 256949402 55442735 550393979 917288354 561901285 611686866 790321211 951340212 829748801 671375741 914288610 410927489 486475537 915486755 599779533 623821612 626970293 364207597 983689371 11565226 119380548 414709629 13553302 600565427 245564957 567854429 426629677 186394896 959765321 190880635 897697185 263264283 440826666 22826384 248749675 602947418 254431764 254840656 120072634 342023491 226124071 819833380 499310373 28032249 592931267 547429270 248609628 622185118 299932417 471234997 685077236 942368513 957282319 467857830 274447325 947374656 968912661 793209062 245278662 934861817 261367552 720746586 963194469 418215443 472768171 288524768 781834982 475029298 876762592 353707740 713451861 124657502 493878172 950333669 334420102 586093536 806713455 621087767 624608479 137316729 226371026 798686143 56196928 648034052 849382570 398504542 183528647 438211668 450348790 563479591 98697994 999886187 948487426 45475018 773703930 833770313 36976740 85716400 399637036 310201381 566262448 128606077 153050960 938411143 228212069 933418526 596158622 173152764 549085212 105402789 542204433 647585075 344832234 252996952 995626682 453113226 660144847 635641151 38201406 527968400 447688547 665065557 409537518 478290620 942945253 356050181 991056313 317687709 316509129 31818250 691847440 564979742 514428592 481495413 896714803 925327050 559846945 870536956 502896604 621223727 540868733 101040161 230290861 40284630 513222233 873958522 103298528 869821567 471082625 855375741 226298897 841437303 645658441 580094538 850563613 320195016 908840822 807288207 915997269 362126506 560305211 143498684 891035648 915436632 391113145 840762987 535522618 406727214 346936805 219295188 302167147 819567500 172387895 742213780 237928629 643189602 536628626 226305372 192942798 721238603 196190841 687665169 444782575 144285145 870441397 928680460 445569100 78413713 207808440 205539027 220932222 306938681 15934739 831894903 850706953 484836492 746570084 189505206 42419876 55875803 608593097 168262393 384798064 419679513 730135288 906743849 938351085 326052781 372259475 256009176 680605339 919072000 445462965 609712314 790285365 662180951 206604804 415784711 715695170 239740549 249647631 567692110 849522047 235942434 883744082 206650150 137561569 716426963 721683411 531018692 617961446 276908581 921893387 655579914 848751838 793081372 724383059 626833809 73157788 98032145 978567896 156004348 774941287 712886199 65563598 129455563 401805461 792542744 369008274 192533590 935704234 453632750 476046604 429498962 76384013 701662096 71887546 408572686 879363323 12741535 803661812 407981872 208100786 283036372 789120824 127086986 291876897 548761034 569631346 282923077 381789173 388050223 574727593 195975137 863105443 878002114 61312415 504939679 743267008 421075285 892305185 823382424 236096003 442628773 658621221 642253556 450573501 955126651 608351469 722837461 403585584 286939657 27001505 182728800 183853237 944070264 19228185 736598498 964936081 724822086 165185625 669932062 6654006 945347637 128014361 206140319 683323381 532499698 640273330 885119500 491290840 514804871 350974227 374670661 339291010 745079033 471655506 706619107 100840204 197619945 934969530 892701069 752654913 756829455 504560436 975756795 759328259 275578248 86344310 576436712 360298611 100677660 265844191 193313782 926287222 703262891 308645332 860437575 221991145 938773185 454302322 130711376 668403817 594773347 375054083 44273192 391704876 224360015 762682116 342554872 127097450 930363185 600240865 854562219 673943781 32821253 454273670 662336685 499438122 659857194 356364860 678631460 867766205 123789169 569397698 735458479 755419939 760623959 11447541 853952275 350260929 89009521 661732992 868710730 794588020 223375969 278080953 754409063 252341367 139300184 296358980 381532780 306824379 202288568 363459389 675121232 943341849 648321745 50310142 951316810 187583574 370748348 359180179 416707780 62675984 731873868 873766873 92301903 500479740 348440050 86883576 439158976 267059233 918606740 75546010 101379048 464604480 328351544 304703268 776216095 685384682 122276095 466652722 364754045 874427928 984939259 976086560 468711053 382643095 578438618 180157295 606898389 475663052 966411597 196697511 143032744 487759223 674740724 72384941 177407724 389654555 363456875 867179910 421216028 128761762 195060064 604783699 384166560 221909362 680786521 117505636 378718419 70353085 119599495 400090335 500955470 549517250 587939683 982722377 133517550 890366777 4168273 364270812 468099271 58247311 223626837 43111619 951600937 453215864 684459691 914077904 206324800 868682148 415801096 436668974 467860957 46252470 308539035 827422101 950978550 966869598 415811443 657149116 270679297 455420059 334776646 959408482 544482610 514251459 66754261 861630328 213022226 706357709 307580366 910876074 965508449 977529571 874251794 307392324 834837990 651266747 795485198 941305577 826259153 214444591 923910134 825632468 606393900 926247161 171992136 496860026 576545933 284773368 121730497 235187130 524231758 684669446 178342200 173382490 926270410 961731907 597561602 964646684 328962518 119282560 108796291 957570643 403409061 605038857 368129427 981066619 571701061 453167594 246983649 842423578 706359044 496999612 322691289 982996702 888924708 457271274 560300838 73518786 448525658 780928200 910652224 923719793 695326461 372201207 103478885 646922351 513813958 832044510 189804324 596872255 6786307 863126852 230699113 691693364 516100805 454739487 449546800 477834306 75316961 813990856 155659307 355900952 743273675 362122989 62625933 670855133 968131766 476961557 907383280 396793520 782154496 196713962 13204333 162946800 576132908 607113256 303621643 188799891 375130283 215901308 149314491 715236028 116700696 864439558 20554768 963475285 87328118 514660637 886896895 758832251 821463880 616166772 620065054 401815050 438574832 591056239 179125104 944661060 528502241 410186728 562953509 558641694 370874639 418153089 780405907 333334459 280290 604523378 760146620 942574352 30598927 401050747 805469355 374302966 425445970 719935930 665241689 719592581 93770284 31711256 605701922 630444313 939427314 232152736 112790735 248693332 335403687 786166247 292845513 186397802 79799305 867631483 25684674 235867378 272027258 998164251 17967309 867199021 370966331 190248511 761276526 192033974 53192764 298402383 641312839 147443470 10093620 65871352 677614265 933977883 691632293 179743000 439803664 312712198 135673889 283706107 653430277 887217258 177210886 858716145 735915333 820000735 627781826 678263224 994623290 845647265 699807557 810638966 268379937 78694547 476572080 464501070 602369587 249963492 256148086 560095049 510512257 246528321 180693411 66486451 988737631 783795116 339455694 965378571 273673981 205717864 836169817 267770537 293188141 333557921 113235792 919788155 977140344 175064171 575686777 505989306 593151219 162150041 775928594 436116833 23495098 933557354 256702051 920433342 385852829 429948139 843912500 648888688 865602935 618343078 278925378 130367809 788399965 967802097 784497510 471530935 519990143 711893194 457808013 833234069 60449851 117583636 850186057 389840057 682507507 546613973 522403569 471332478 671319428 62424243 696070151 153070898 279058442 41530366 94261325 380717914 653721323 167154961 597068216 179373751 93058210 55070628 232871243 936392041 502888462 105978316 868594206 298527265 529267368 256650847 697537194 409143971 27227170 521817570 509964684 779818215 483770173 451137546 529987896 462570179 359619389 676680095 99261341 956722451 649487125 126009950 496686757 526452230 746497968 905855551 146086432 391754086 329775690 938965080 480720291 351806267 570588839 446957734 13505472 768753452 864593094 301202496 302948902 34657076 786599409 776605700 520950999 572051926 15309674 562781963 665546577 158515315 908816554 862197703 329968463 247194047 471426240 541603108 435813073 81591101 243736649 619553953 685210356 832452515 285903296 673785621 614193431 445579114 739553275 502148740 739042382 73498844 842525782 314443545 354675125 677749157 310296235 191378601 783356673 904447215 231246820 814122188 220012514 162070521 655409294 29141608 751260931 146470590 817563778 38837256 276293222 12237373 647690071 486783976 902814676 582894518 892295143 144212494 624726046 246836171 78144966 673797940 817773684 159546375 279644381 16926536 256338143 660809871 212266908 866577709 40012665 405735438 740626490 992872917 698094946 362229490 927960233 538464285 560453344 231826256 346448582 51018997 34950107 973292266 986896399 630207477 552946914 728709296 581996332 732902816 71666099 76157111 491676905 745573273 571904756 155667825 469367692 395366192 529833866 687149442 330171265 991228546 97621562 959184537 737551916 317836510 18415405 353349697 527008246 594383156 944010950 527298882 896570754 281932009 657372502 549465812 844097425 191941066 756002938 724140996 88469982 215744672 464063636 493836317 529610229 461046391 37874460 865990629 610866346 646958522 275659320 456348785 26924610 102246724 484570764 842888740 408630430 874510759 278427729 716208468 447178041 613573279 278291415 483789025 271215446 765628049 484384689 180738577 349299478 312965164 75666811 736252915 973203411 113217277 533192225 577544154 567541163 771841655 498187224 954885668 409906738 18364043 800538872 13130626 888662490 111913292 963406176 485622607 211499063 841805613 162104049 816598898 940825325 963863133 987280880 661506136 640177348 630273611 628818509 214563192 938195838 520927842 632068755 275634832 22385638 885841826 337954051 608013217 48506503 274544869 964488545 691132766 484421997 169666992 701905027 250928879 416630349 558931512 284155115 390957633 722635173 975012813 304143122 341192432 263724835 725224586 32215670 860718143 841684191 88621778 350511888 413951372 234103584 863960483 331730820 639612387 917321520 323580625 609179384 89975730 943588764 604577220 129790333 662833260 971916938 224544719 443147827 559322542 731302287 271217215 239331078 457595736 120364332 311064191 570539772 237086188 839788850 159082392 75336324 406742698 138273265 830470457 877300971 605637470 832608659 250481822 316796506 450490829 949421800 408346007 666089712 52982498 230022490 828922224 952950150 726048160 519031319 264006130 664720805 863232124 699968009 152458638 639477785 336620313 164584299 908813667 919569905 318915318 126326794 668636794 531803885 563082790 362955208 222283141 229831319 647498075 276571869 141641442 468136496 563117704 694324659 275918791 828298827 616808632 700327355 700635318 387767325 478195633 931491995 428259284 846277303 915308940 478278077 960842355 235402639 924799528 216453358 375923452 393119957 735505406 221663259 649849384 365550499 534626137 598057536 435973406 696187498 919600914 824034913 96949098 124327089 558269632 537303011 348501248 311437674 57584772 391129622 74003314 307405398 998979796 179957239 379927069 292606948 858782242 491236855 253458628 868417660 573478162 576680729 795316219 477264358 667155282 522184865 785350822 494777203 543085111 437652363 696407168 329090008 682464966 661670105 660637527 731672253 820000740 895990396 14048012 514308418 801927544 17520844 349133914 597310460 596447006 64853987 96100437 81888883 979286338 514796658 509367762 791037085 776905741 559884025 49373592 84490037 947769443 353295901 572625355 842803678 235702510 322440724 522088398 854544295 534667589 830824381 17991284 250203862 407057061 212495757 46414919 768346966 270895523 546979239 811359785 579840560 969339586 346946435 636175836 213064599 914670536 759787706 954937749 580867468 233016074 887783975 121242566 491774912 677480946 227661980 891808462 877789600 557815000 962881666 244807365 109827518 802822795 872574645 255020048 538494071 215112319 377463943 656908398 990732557 836079533 993817447 703623981 759369894 812542802 38428368 891573900 912411519 240980840 518265647 730286973 769909589 720716115 488311914 391131074 758042760 1555028 691499816 974327097 65644285 213618207 182248238 179120584 183874644 698931972 424871521 984973423 621007841 708651301 290738945 185835747 161273457 808754205 845539043 603289878 175179679 553465636 329914542 754656674 995725313 866222915 270188836 315748989 281206715 763916742 632924524 894022018 156540122 613999702 914027697 748300714 883798680 394145487 454694230 990692587 280665162 865562218 85231440 188004406 488557724 852780027 21635096 137819166 22603257 248852195 840795441 401190924 413157088 951402874 969427053 243562485 381139197 2690546 208465588 468697025 320482072 532179564 677772293 39910107 411251039 126808991 688061162 588979707 98625265 860992668 388883326 311090142 473243316 762721096 119452356 787371278 136474202 539239463 537245851 813805152 227497871 251015293 25184273 809113501 167345202 54295699 126316189 817320254 275959712 291427063 538135578 168464460 608983505 554411982 332742251 632446614 947428305 90578713 622791753 986543808 76478240 360694865 892462694 552914973 961647890 629111974 921511614 642088230 482476291 305966650 934341322 208473748 457700751 699717847 528656914 299577791 643826852 715734795 601941934 335371364 490540357 211165667 993548832 183777402 780957547 89929604 523579190 955053950 434241375 696628519 435618275 433171768 467046820 250983726 624521856 54504394 735000055 572943593 683059205 292155885 948952105 422033795 374055188 901916502 975938036 683407171 536631868 886262618 598387503 424287525 730503287 26332352 913554229 462564372 904489988 911407350 60933472 615294816 456811738 199899260 86748012 650451316 384006559 550146551 762932654 387190323 221823438 223995474 893798677 593793398 438736861 694801611 496510298 619615226 887616242 299694706 160694427 973257837 646618347 12556179 551167529 384984916 729823982 888473673 782974926 349796929 749087454 311512824 184805334 63884228 73765218 419123454 926870233 297746987 1492371 957828725 97523095 133164081 491954632 191958323 577131357 501527509 305485665 23272998 18663208 950650998 207597300 834916225 698228119 384996346 167461097 445198735 846457190 109815515 148420084 926805619 925789449 248716691 384036532 775275699 277085945 852663935 22047736 475950527 174698794 861836642 750887319 411546123 111984304 885973039 470769015 498951796 95086383 762324613 419675800 767994874 327015008 962502445 154974496 446827202 893731931 807107282 546553525 27180198 696356646 287659406 677963011 675534299 69132831 796376423 689083245 305087364 824974893 389771634 707950253 73442884 828910620 229101043 473794051 102347808 866800667 394266157 100286582 131254056 859139376 947514183 297671342 654219846 54909413 465973951 21231734 112617108 630202435 410133892 592637860 161314134 321533041 15363561 347654963 689941721 562864739 108174976 940590910 846073344 933124693 531700353 127035838 346936410 754462850 96560449 655955089 785780466 626781568 62231501 23528405 491408365 994457601 735252753 379960609 907082530 640771682 188926786 718602205 937798015 323286776 524563259 627470506 531031455 467054797 995386032 894902791 90318461 602464352 53713245 578360207 334002232 684800383 427419684 429540098 837645074 247211813 18492525 256761671 697145042 389629804 288544117 161881576 505435121 739858325 493091319 686536809 794927886 105151953 477901931 452297960 697501305 927735290 172135707 775768905 205081541 846501133 766240509 337766314 601624660 593984073 728410842 375472392 916846519 319171461 593054755 592460813 161271772 881822882 936748125 839726132 463814816 311350754 974366124 272376032 358573221 639639055 127933380 377564180 617310327 385721939 28752657 505608004 872462464 295429164 842525451 167464218 141226686 621164727 116734564 427593883 602239836 718578933 949210854 316450698 748627498 273675406 365986902 642913106 108965026 790210322 651266794 873938795 902266612 162497759 55150486 762378945 711858844 910383154 121809181 679188304 684167029 710319787 244437325 772362165 587322894 875290796 436501247 798955539 129722346 827604419 8769175 444556223 683279335 447163857 836948943 880412403 453918484 211088487 170556883 927543000 327424086 105855086 512849162 768898044 148387755 872261289 818311719 766539670 412601582 357818891 298678109 960614715 508739263 13718112 373639165 641494234 178506747 770221725 546289378 555274501 495407876 9813956 387623853 479737077 939967225 62674638 174237973 7849024 147036565 642746613 52787812 244787121 970209938 5852033 317970795 588302122 368582286 105155808 849442870 197841128 44641729 116033297 731353255 876993098 93487436 153563766 181654341 888119629 97318735 337663593 498514781 122402244 318196988 211561477 116398924 237263616 161952992 406370664 62293971 74117667 298194970 991272221 645787771 224858209 29911308 901803974 695706309 845664777 131060456 815342105 475829215 32351803 73609521 908984904 563883727 40988535 977376099 718268838 308822949 556572592 926330251 552364473 942487346 204937495 129171812 377260132 493084569 971434783 722237163 450226687 317007710 96093068 604317048 153507536 423064194 782975477 553718565 130174190 54832089 494144460 549409280 609304193 367792664 457804772 676082507 286003772 161752068 748495927 821611634 240711135 188250991 689669590 784253049 409161001 979678838 307263642 821027297 367419109 764908580 695343994 938800548 564238704 896115540 285977768 980714209 510386145 428712874 566960338 391912409 452790609 949901793 842650906 322559048 157476673 53432001 779533058 14181909 362588426 955762816 944856894 598828745 946094764 315054191 441105926 244511495 718196647 916357087 440585443 167925156 368068223 170193879 175169544 346209935 786407785 190524377 449818915 583986946 313679447 748487644 836392346 399369597 273647249 455041281 122697161 723078933 866415733 630024460 605453473 141410429 385659220 62640803 91756982 933444867 621883232 188088418 568332933 722001962 523231245 844646050 446402260 416928523 441049420 183267416 503432363 761939882 641657074 457757979 789825074 493958030 592122577 530297522 934291562 927344817 518427073 146794287 576773410 955567251 70772159 759197498 540130247 828782955 680982932 235527527 911643475 343469722 855347405 54809051 97085235 89638663 569685643 575409005 20703851 202835632 83146855 497450860 194817729 286366707 964003768 482371858 789303553 657683318 785269094 575413675 451885378 276584042 746202088 937617899 947210654 935864044 922234598 978515794 195098044 541290683 252181741 230328709 156719751 391290350 770688208 7921580 37864848 502230377 276677731 800629860 905447677 351676662 526949764 577845 589448099 483020940 980266318 808940082 474854672 189601921 309664934 97903621 255192717 746331557 139101206 594555570 13811752 572456885 222481769 173207787 320387542 904439244 950461019 165254315 12177102 10453468 754912460 945634197 955779898 542961895 820845296 965935858 670220942 230629165 820718900 89515372 885150824 438102877 354908306 603387013 491382373 10687739 693577054 746772039 358241750 725642032 574992677 496879288 66902551 422792413 285258155 452822376 380480361 881527074 464804529 423923509 337282226 704262489 784857321 610201808 914138253 295588420 359552052 550905140 378414042 606193305 989564409 294185709 664150187 572278654 858047944 665642341 671322024 452912849 907840002 520882751 873594672 96452991 763853370 213849112 332507967 868371767 179573179 242762364 770517650 275734867 664064559 230282059 152183834 439603308 638272791 959882859 519262406 219403900 439097808 547431648 235662140 845183672 324144864 168255994 58777840 101071124 772157285 568612710 815283985 435570079 429603596 863304595 521619520 942619608 34366352 403364802 51206144 682005845 461563256 618457878 870678656 171673566 905445746 58423186 483490747 796535172 484675953 626528062 226011557 464194556 887510590 455437707 342188759 186920694 410084198 842877308 190030016 890491725 253790286 402085426 260825479 956070396 33185117 934348095 894849030 521810101 257621339 510171700 325595176 849587269 593753180 913898334 385497429 700092339 273154243 935343800 179336634 372753672 83311998 89057162 466385796 551032730 293381976 160596632 852723131 301967945 38819180 641613147 54370137 391118041 866515007 867015170 195183098 489405279 769713671 671115315 203146996 161569358 972703314 580020543 385413672 858893810 783653140 815753495 251114799 951651547 44619728 310280689 529692479 770260746 710966272 682390447 189716844 280833828 800011983 907877551 998476676 895250892 472779166 240469943 860461705 566265150 159680270 90880952 916655693 25113184 264096445 670116034 799289858 203120038 163165490 726280823 943404406 690959874 644100664 355009023 540778458 331681266 142744544 165773143 495568791 226312669 352871589 826183110 749811266 208967107 336100461 795892991 931455143 173286549 543488042 717329594 359805465 715720861 33555934 157035924 648147914 842485676 82022082 35834200 396803351 347020842 405186976 186326781 157475758 268118834 10547370 838974046 174923579 296970231 213955885 916542732 189836458 80952921 571436690 761462756 462447583 972135930 9557062 50948189 895230228 260818956 673242545 646627909 583319148 261600219 139660786 842365214 748865783 982909153 523269558 380030876 555235165 498946555 861546303 612677567 239079427 841599771 853714355 994957237 817578895 538225375 421687820 855099030 151788991 722134554 36717488 911074886 845349985 679155923 3003353 202510217 505962327 202598053 410492676 565168840 977777819 609555833 777595564 189350138 873323099 228331523 488083678 381314307 910640321 684139315 310090516 142320966 724609071 736694027 232843486 765421122 90005953 644129469 387683502 742725473 461586571 816064075 27558179 759376740 921797527 244318025 145238328 476742787 110880492 27502882 744632958 111012781 911566529 97330279 139729440 984245839 11875568 597484226 155233195 831445303 298789458 730468170 850686301 355118900 549444956 888275257 632269236 213549120 898795834 397389669 257457366 184265189 847808891 598839717 49614721 846292660 768580570 806025600 396006845 768905251 52033783 387068367 108449017 963747072 131989066 84475456 859894234 629406675 475482643 156019847 411706396 609708149 101390586 598092501 336961552 449052260 978511706 553015573 436738923 336187427 372431740 134502369 897979596 912990857 633731358 177312658 660290645 849725658 92072822 384872535 47163427 748444191 517868432 235089414 763834273 721754879 371025137 848431465 637483959 231884262 488773101 32485675 997382071 527511993 555444083 656494108 457242616 584794623 421530829 524693921 697282088 708322097 9809878 865942839 200884247 919417611 251253759 392776354 950793747 192348104 392070051 808119432 458125512 129459242 750296068 93348210 144772963 334360190 396167864 740968817 402192093 290187175 521241418 997371266 337936878 839434108 565361447 63639845 626994168 383207795 899405395 292942027 375605763 978194546 396170522 769916490 231949384 371671378 589731325 419535778 742120678 576879673 643677999 547821037 893020703 773301725 588321211 47568984 497098391 840005882 247691566 262516311 32802789 769632519 969263512 273805860 136108020 861123050 799463233 282882983 540074917 289671819 450646381 242610068 507644480 901929864 141767848 722217431 286091444 111325639 911926593 746349678 898982476 123301437 983973831 91555469 834483152 633019514 313714466 618054616 731957088 289665358 964563458 863155981 254201095 366439397 434635155 689053767 293946286 936966563 33747754 918178541 699568951 998614969 166508687 753189962 945601125 959096637 556287863 18523868 322697782 559720590 362087423 174083839 424839056 738550716 443191907 500369966 852764342 432610284 483463521 97472189 836885703 739769325 407286846 471147006 297902140 635549231 951381851 806181325 268552786 557426282 720845906 280313961 297314581 836716866 149757223 151951446 415745457 432373192 519218023 613784917 837809774 250845219 600347879 965391365 407418006 916634081 662738318 491947908 462211354 929046004 474470611 601544617 400990474 467340205 222843133 893215992 166778698 970403150 551359215 482524226 370380105 245035936 477200758 722508324 853434629 791786294 795998239 612529218 296897030 901251694 308251645 931009429 126992280 526092953 171221293 607599772 33518509 15961149 464660967 208695784 598534842 228452707 128054037 246874550 795780740 379023864 810421695 311815889 121714857 33799668 316042054 269390851 648347924 888730234 406307002 309518887 788106639 421882788 682898046 282397956 838514922 615023660 594651206 549764026 305921602 460379797 436277119 751723734 751963566 524603650 132601598 211050402 105157418 447046161 932124794 468415068 257035567 367642617 551469752 956180669 232020604 227565616 638254846 296225386 610130909 656095058 482948960 576292623 129633038 871016266 598232559 160514068 419541942 548373906 870180783 481445581 847129538 121483224 608606632 378799372 359759075 526892945 766521566 671724259 245335878 621259234 260218035 77942940 875994238 502834346 328666037 241746855 160396987 4794630 409234264 149331328 782980484 946151151 320444187 654119517 145117554 622511944 260230101 93808750 518533783 67243445 847473468 556299710 515852775 926249360 347839769 300352869 915985847 782166754 449111477 603317753 832155961 937748930 665206780 193558845 394836691 73119758 177241518 495005251 386919761 898833264 123248849 939038144 876472210 320325059 343630026 626486240 333163727 875952700 697652025 486380680 825277123 662365796 157072533 797502980 427865421 942691638 149610316 78843005 905866412 730798796 435201756 171213050 33910057 204510378 751777981 516950692 174771500 685849563 636362231 431451509 991761268 646873459 723505195 199927061 883761760 978867936 667674738 201085058 729691709 117768002 634020369 882974178 224272476 517183461 517667982 977419891 764507777 726767728 387314133 434580417 193484737 721990566 392440654 768664813 942332161 631780328 108518971 368790890 61369784 814652326 599648292 790343463 762184603 56409064 769774012 508381698 964512359 237214365 28216888 393572080 556194538 61480276 107317786 623993936 113998978 731715596 3461840 531715192 481961162 407752077 660882862 186730625 132687963 554119993 387892229 324313649 576538699 911421968 647178143 836396188 454454450 702320278 697489975 433167931 797718880 476359031 835618674 179275242 819041372 505503136 370275290 471156126 513703616 890567336 144323014 1620802 737804003 533420552 859946036 883280968 322534266 673318643 868376831 587173133 961013351 812766830 562878853 526053020 759004864 982894128 351013949 79366976 563404376 552249836 220411049 435984140 84736803 30154140 972677554 294935140 322826099 824046606 272176816 509975584 526077433 216826301 349743706 476629617 990396301 286345340 600484655 446265112 47026281 275558520 430683469 516608146 575581067 625314505 29086794 83191900 787164461 317806649 633980925 344733222 164400250 98150288 817507932 431414116 542898819 529292733 170787602 115192677 256206677 346462168 36156009 307365562 942534410 557080419 938191417 718959062 107843843 879025932 282123114 287948591 920601059 55001557 913924698 523091091 208106711 411222442 496728406 173449571 267538740 31811344 11728680 177906993 277298502 112148339 327267579 294809660 523937818 650003029 421891676 489318989 996768119 704247010 428230866 484415493 136429729 953259426 723855765 980753022 550948948 702083148 639148856 680095465 599010392 104694778 897231951 888852984 453593850 948327974 331800612 444265809 897107800 466716830 689433024 873554433 257112610 298707897 517346748 637948040 220742594 22845155 239208848 945078710 357879625 660305473 667883073 654304717 246296039 251158336 493153869 398577727 549626383 18051841 704125011 77780254 551599040 26388628 901682441 52310636 565382305 961661191 524382530 350704290 401382548 387125261 638686894 175734492 450133495 828870005 475887940 793606480 683735383 646943616 943284249 705813689 477957728 921098247 351331666 828177907 313308194 384136637 65347929 697678750 902730230 33403274 88113723 571361051 881933794 842252333 630917097 354430992 745243383 505336445 920417399 214768184 895966419 237356065 207788642 896166120 549577088 449589352 114239361 225662894 115290197 936149743 269847165 528745013 718486004 675074065 957011342 989034525 586476008 263834186 868069907 209190989 129846694 288264541 834450171 960910555 61961592 890904382 261791171 467534696 541371628 188802618 517192082 735675597 341317525 358932602 622682175 931856567 956546685 623729576 353332041 138245959 947547022 537212782 214687061 157805587 700891031 585664647 978456727 696190140 187246770 887369718 827258601 829782623 437834064 457992368 499004790 701271544 222480916 763099918 546884092 147830460 309988930 701535314 21188559 559412509 812451375 312410024 136301514 987173465 718493182 364447554 251177107 220291341 106387994 910660155 433733685 102371883 907937484 299316480 156875809 788102438 449323515 824976089 441204319 501965314 889212016 254891519 805184890 131583957 507244456 67264966 994221119 932820234 352634640 283963246 990498988 564562220 637605413 776273971 962822838 563159854 859280406 10537656 290483790 405191321 970140911 750126425 912226185 504350781 614098726 351499756 333687605 23447030 716045194 188322881 158111043 911085656 376388734 176536790 33244152 455095551 47557207 396812195 911582501 912687901 535232606 787553514 838472073 884624628 164854809 746018572 751434367 90617916 439682656 256772286 400471134 475634740 488880481 406072931 966128056 902011816 727894987 444100659 686372899 274886542 617435212 6604571 653075856 497222310 708464843 555455178 290479581 149344357 628090847 785665907 998809717 524527384 278788377 991249597 489752174 702537259 821152521 497086801 366042554 167776295 71005780 541520647 741055880 889362065 616314873 271245735 751747878 726834514 410533859 425943823 428874602 872356696 582423599 961152979 121750445 352430821 316364081 317001496 219143823 99391026 552178732 923518938 506237973 422132515 13609417 211098166 537896917 100354298 89763775 519468405 993616596 318735126 934341161 628127488 980207958 284967119 857384112 815737560 799590879 946097107 798627636 65761909 907293696 58532206 594190765 894824272 626776724 1718824 662625944 616991164 53219218 898413956 133539186 493350862 393834714 723847453 585482626 403621675 539075473 312067909 542551116 525592462 681806969 798503005 861036772 477798871 15654678 527884157 920584686 376152594 729352042 999797697 768714381 303823187 613921340 454458118 851404435 751333139 395033950 369402518 339707151 549786150 148106503 160800969 471710015 116681228 30163577 253642405 296174540 460593527 983959687 971302280 799815220 639220681 209332354 899717478 60067128 336016141 833610425 281904699 435886107 912006302 324156093 440925499 818180740 23205854 345767202 329904228 656881113 362224785 775726864 203499936 863529261 321468245 291935439 84127861 452173778 194687661 827584724 130154133 186037532 713355129 630728542 542908818 673659748 970422881 926535666 945645217 921139912 536180865 885231844 986738091 622164449 849974136 400858559 657449744 461282707 42195526 682020713 406106247 163726934 437152724 743888811 721156481 498330863 21338242 497798915 802251304 666647919 366443440 727739957 794411091 674379461 622125872 51896987 410845608 163474508 220911960 718821271 413291050 570908128 569626701 779758922 17053867 583833208 940338755 700439801 302981203 735279087 30133473 437689461 826842164 552659994 924342638 507629956 904720996 700419641 177569594 426297831 189261497 500981699 620491280 472521494 801723780 97183894 993585983 594249507 930987124 147426068 830635092 839254175 976586139 760933996 288274061 907319614 473086595 241444080 580115436 341001134 49129385 206697600 803521704 533549476 639959496 324608561 136112181 34434810 122586428 505822463 403099486 534868637 370632344 77191781 322516 416503385 530396340 718640647 30577942 565747577 780543553 903910004 728805193 463683101 785284533 865452845 866931855 411921062 943131857 543139126 535056120 245110829 116507761 880724433 66621726 604651511 654009586 957200392 959600370 878261784 31416816 420371568 194328482 790021986 429958406 773855867 489522420 854105178 462097250 485382197 339309113 151741499 246587753 732454076 465963973 771726908 371024811 242063988 463025470 413991796 896054270 967837295 251815389 700473202 929115796 658798798 621670706 301916759 861525012 307738278 836228819 326784725 676572635 293105404 161310037 179698508 781559081 226493408 49805733 724185653 775787196 556826029 838606478 293927598 566073569 788968524 294727333 516487408 753506725 515605563 224900721 638023343 29289215 875091206 176806713 558100449 852900174 59099095 321432293 1998154 715702296 375148757 52401000 56084424 667356845 864485182 277769479 595140329 579294709 184349919 843372500 87891671 828278615 791394359 462684426 111592914 127103232 772938592 276993458 306876536 767649771 783580247 753594347 332000661 807828576 141694990 894986971 107901952 48828125 346523065 869840102 302109892 207253786 479736454 398491417 729143193 674140282 927982098 416636101 337493917 323041603 201143501 998592385 10579785 338314081 771801277 180665446 770653952 553337070 953729907 28866961 519704226 868064586 388383528 964739683 207061568 433188607 119794958 880098663 611162277 999691251 75032232 71125921 899727310 371980714 859657686 907176870 442240802 940900825 199896587 821266250 704979805 583711551 619449341 182051211 518692646 319500786 732723206 580467042 559296284 108030468 58351301 572057028 101347626 255689285 663030468 383301375 628520784 915156744 435536473 194163886 896125294 976398634 896633114 652909642 957232384 668423434 868521638 678271571 961965498 237923393 867982568 336652744 196132111 326096735 645830773 350324885 132313313 685107514 572661655 343246013 611553051 320947309 405886670 351445457 707257006 541365454 750246150 612497415 885851180 846294518 234896548 603353769 164101583 19186088 746182625 930579039 149396159 581184790 829818770 173503308 436249730 303431154 907998017 344537636 831840088 689521134 455339839 574140998 789191849 799311131 550862566 183926731 820163989 344988236 697938132 635351474 403967425 297115138 2596842 663163468 988637557 576234560 776994165 625158952 740944395 710371364 232764750 688351618 130227848 612467086 933613627 481460054 280109349 681557742 553509122 855114220 564312358 661271263 504728530 807097190 196182806 830163102 307014260 914489360 470310440 715318232 525829728 587386751 719727140 922591013 698659752 831084357 131717920 256888044 631136031 276939744 348151543 680092283 812885396 929143785 462580591 837623107 729611642 204385752 777597350 546488207 396387698 385610183 983089900 830621546 374298716 23143596 852915149 362723821 248783933 989630980 808015742 530404321 320233034 185399592 756486458 991104995 889444721 33844830 699729610 732072622 399132932 856557649 435464133 921351159 404438559 412250323 678010927 370575599 825668708 97900522 55225738 760937473 332290199 115398841 561191055 203736307 798150702 67830066 318901202 917629015 209876420 917051313 729914718 537658360 977255894 370389462 532856599 277985481 973454478 962456390 703153888 537098744 781305824 546157923 935210273 572014346 487654437 7310182 688274254 163770982 398966459 549248862 341412892 103025838 140273913 763628351 583229420 45184916 47364754 107233614 126221305 514291398 525279554 700747405 362819019 671020238 94766746 469955568 22137020 58695072 775940092 265352401 525139684 781213550 47037167 346854344 527446366 477054203 813906273 182864606 606608872 603768500 710002514 937626074 92590222 475528086 87226803 285102890 271855718 156159989 980266180 228094316 102079765 42099493 44320430 594461292 686630838 507926189 529237631 625209152 913567472 39274927 331259699 748545232 913833855 351750362 938513267 506438089 982896670 38965664 685619149 270534647 175632585 200889322 381042363 690598223 18967997 957681754 333547587 533626894 238697579 483453890 173085591 625202016 211388607 714662615 980356423 374682329 641147084 876303783 457914909 887800247 965803940 502831495 312579725 91725481 279270033 293654993 194073940 801822018 644564598 415250728 260791187 755900127 620659620 220672907 975748851 480596961 996671620 594307556 660567536 828940324 902745248 457316242 725892999 125597360 2979749 287551537 932014010 791987485 368687252 58884078 798918574 304189108 124373439 380397977 819511820 409533576 281415692 279698411 781038718 417880175 221259821 250238933 331819228 771568477 868263490 157222086 716992278 295663473 608584233 386548041 860996404 743806169 936151530 467779216 421747646 668035913 755072422 647841094 622737807 876761185 551441374 272895524 708690522 23376518 121224434 460125191 790040554 654780719 937942256 374979625 189633800 329137108 420024054 946774743 734406854 781706751 949416677 836568897 379043879 166434406 134186417 704003162 944257214 767523190 216214470 306133051 382630734 660108760 816732498 69791555 355788877 405580810 461007561 248869414 800674823 699756481 698114928 320491325 300134245 597403782 680383915 992279959 157140249 932530032 652774900 237850160 518299583 907718263 713722789 550901993 42251576 990454357 74387857 135398369 767281209 644632273 972443329 131318473 107673639 670102332 499577899 445159070 677180815 255131414 959376116 11819724 467356373 257078618 73703402 668037195 282017963 656780181 175156315 77272409 257333186 625478496 152344998 491886469 925485930 188140241 443291869 60258630 847996190 344551642 731829028 687121569 435407347 423781249 319498997 99185904 994630908 959682989 930895275 591554413 451631926 925490510 322543916 230795307 854954599 112716736 561310969 984611754 705850644 571949093 749518682 537247126 849071587 988504052 457326615 451133543 87049546 262236655 81851816 759084915 114895412 614216097 333778918 108290632 149972310 127128317 242269477 810209997 456287707 602621993 249134879 575224413 155402429 735052794 663847037 743803680 427548098 710164240 325564411 242617051 207162129 928164040 947734754 627461341 428880045 561515671 219432224 806334131 607110287 419415026 246647281 645355774 892066299 956305699 295645969 427035462 737789962 713666162 981244040 228791999 545521063 732843014 173982968 983980887 736750992 463647516 794842515 322435474 224634315 88277322 332427224 672447601 176791535 748867678 293786717 952813965 825411929 130536272 15228369 758499070 66987026 68598091 848741767 203625832 801977871 864541700 30222526 484122584 684727427 489215006 532870235 339003241 613178608 53078330 489419193 586589863 244429163 906599634 306158290 508004241 926607727 642150667 544918136 10715532 324280659 382690375 430965024 573700302 87005568 583593542 917261156 127888978 883408789 306793527 945455004 864847357 995423663 580526443 862959150 22780138 359382712 275591383 771478955 493431224 677905510 962623485 170567535 128230058 734447287 960819966 860102829 917675571 701979958 634976765 271579599 636880937 326183281 202367281 972656891 817724309 841363865 268846631 518317663 624321042 23301422 644571992 773421489 189703876 175954093 525669540 825369469 892290997 204237808 503868037 488785224 992338637 690179162 553310124 642403954 45240496 781174737 839897982 91822120 361694913 438380072 644639571 251923458 162896430 846021132 966762716 87694135 72008385 22291003 979958664 763127315 183189034 722417521 812021882 463168826 793701066 200574869 481149951 358256303 989721502 900627626 912514341 697292303 884003980 142134757 294837261 920723256 887764487 748387276 544939635 718271010 515950651 503553187 118093100 205503784 406486518 360625014 763142674 689740550 348669915 854423970 267910533 256747416 929385215 525292318 487481264 771078656 264462718 683377931 653258818 583658845 540463537 24929756 622018985 591063259 532017610 95763161 985423323 248680472 459140111 339844379 558762453 958557587 309685107 267671991 533062349 813911001 909034232 411717000 180116795 964895491 423942713 853696309 3105604 348450693 118164070 577091299 563552344 988164508 449605096 332443754 712471192 388951072 709996379 209624164 540493827 932556877 657090561 32686112 192987897 766868242 418022659 975606782 753811726 257782275 882914915 601492181 650102214 998128799 129337742 91469414 473956158 685441710 527247178 225752195 427527283 781288801 167450573 496883471 900839487 719104803 245734212 885009552 314818003 217385261 666015391 600938002 228773058 973839597 170868798 323260301 262769910 559137893 619407621 263061919 290034891 421353492 229993198 442606595 244558306 241127694 938160611 644569650 902411148 44506490 992298438 767822855 407367813 732157237 197382010 859752202 517187113 145737737 641006509 612186433 922154486 594301886 501546675 319222666 34181581 133228033 494994606 525313403 513706493 344094693 77171837 129174441 628509766 306001078 253631017 773992665 211191338 106563857 925636584 740295808 241265871 604849489 139841860 62077950 299871518 88155072 140658363 422726902 292788417 526122651 851630779 759621748 761291182 157496368 592200635 681956640 929271178 87301253 966008574 314307224 888258726 674363751 909002772 422854128 147510638 58487410 893949699 958821477 757960021 847055643 875426908 259619859 33603513 388703102 631560046 229741597 924731986 101398811 773241733 671210071 726445798 799459066 395648183 277378317 696634691 98464153 730797126 232745168 429821721 324797223 247451025 566138902 139384052 521298581 843883994 977308535 506355389 977859396 762299852 650498423 759111834 598005392 481129739 947843699 475685922 105552391 174736655 82250918 590974777 765805570 560058729 26343158 691660762 799068967 422425280 636798813 987768341 991247124 510808386 59686470 709498104 206722619 626975128 956938454 24217597 172842749 688576350 164308703 436828276 97336888 79664677 288197410 126781842 577410203 320716685 799300026 923029710 911796634 457933606 300704068 471954620 165178242 18621606 574129595 461051161 499390620 848375700 693776362 223138893 536401684 634393548 94428612 57393191 392841496 736212300 102766358 290238893 555435212 365830976 797895080 196925804 694202379 951122858 773744065 227938542 168959296 479499922 155797947 914757803 597118177 427204293 428056544 435791603 285483689 207916714 992486555 438442560 658678801 550221265 327610650 6745085 334098398 250655778 737284175 672569393 961353903 27638956 306354037 28301974 415354342 113408505 74209398 285296791 219683184 509087517 860695179 247893954 597246607 683941750 125379605 436084724 424789270 682461352 382270914 585888048 54172331 621891342 5600901 632395868 942764406 517076785 619084016 504658263 900144666 474378333 63281160 768117390 700722362 240632827 280905840 494647624 63094680 413521416 153512213 792366090 389943294 717804350 52986840 440833117 623002203 844118324 90455787 221605743 368513772 720612821 404499880 734716479 729050924 710075468 372366245 435108021 932377054 727298124 609905791 11398508 28066087 407117406 454704320 452893425 281683227 746385663 794456469 785209442 667081109 471338969 827756857 226210846 521102324 486549138 524013773 906325535 407529621 558936133 969341921 602901228 342122620 140545979 707159648 904945073 602297601 468751437 13246820 531493811 885540654 246493051 20127615 436994620 670205755 443290144 236673621 196111083 465642499 829772775 552269865 808371637 151879716 182292121 68410178 366189042 614110396 959378886 302533498 975065888 962063603 726583354 573369372 475862044 61723230 290830209 333791429 668004383 865276299 693102080 132428623 744477867 608081990 780770318 809343842 787352026 283049063 515818895 762895159 929832663 246842934 189861059 904143372 369040977 398775112 509610935 192670621 206779485 693604099 126582551 280404047 637478121 648799900 49643242 335596659 429613174 712353460 46432404 73483508 325303249 744798340 443348716 759005442 678114650 985037052 59616270 662735461 419876116 9068010 458219375 19708085 23926047 869315758 295114259 935121047 112219305 663880985 390023807 233870341 915745294 286629240 932051213 667463047 93018809 305619729 507173722 546586141 506570728 966782717 765268555 389000836 969788594 843841760 160714082 763166445 814675396 285493835 565653172 576595103 364260119 334923603 18736199 547640569 949199769 129563954 288223889 435228581 549138323 339701550 897962264 842369750 86601880 812380875 988668233 248420235 862573531 795234364 511701238 98793989 957229150 584203611 956631461 829118495 404790703 609266839 501014871 951807306 669405384 539993901 432148674 177436760 103270990 356768742 945656557 357762527 451358590 39661931 612801865 158758247 203063640 807202610 462117977 826128800 116235897 376270767 860054029 290559962 443668577 809974512 730368917 346013148 839241169 914198408 280312310 681408114 124354551 563810414 960685703 214495610 671418728 889983170 619489307 905269740 47541202 95966036 254436281 429398382 73657528 726569586 740312325 767378582 578693608 640625529 342944309 974654941 756450422 602362020 702854817 747707605 592843923 760140830 564362018 171502823 900252502 12505662 717658971 192877311 455735494 146063674 509985699 618726576 176722201 306446917 856654980 993695946 361393229 817979516 303539517 294320130 158361084 649820356 932975902 159890765 671303960 31291961 80770013 970914135 950645053 392845929 275458456 496349793 298113523 371146797 701346952 449408423 165398880 654079434 940035410 637537838 261232374 912143295 93887135 726858249 88268664 988050605 682120004 90946269 364303560 192838419 377255441 223118279 422000850 793748213 606483895 234786150 990310723 478998886 722449318 928354080 448355999 232369948 322459475 899701815 556448150 688081605 522346165 193273610 952678541 36786742 345323528 514697646 439170352 170603552 192935462 450477006 877017485 485682190 998177891 723213817 339976860 204487198 514712860 813479910 807107671 620001954 596016080 886796017 750980137 58105822 621817927 858395517 812434907 914996479 6377810 238965895 160839636 671964746 49917564 302901747 675951771 622730999 903535216 626369260 424653778 204444693 413379998 908032350 9616207 17115962 914605356 603657508 475549464 379709862 456518994 466836100 314293599 817241227 545335312 480372231 816385213 897915987 215845753 748861058 838943694 423314841 937014566 26639088 49291074 752952853 478013162 761832208 20558442 658469420 373649990 991669043 541245467 368815700 669257991 321392163 743243496 538967919 248744615 5920960 402940108 5862137 968348722 839941482 409528677 112674475 264340811 343488853 907146237 562912551 80047094 56802617 249356467 240553656 157139211 414749100 473276903 498698450 36149987 646616084 298094218 870679528 483088735 455121382 204200428 47082841 659991763 614938169 629411628 992397174 815412482 650566451 590825027 319920027 132288159 912098574 850682843 511642559 917561655 762101892 901595360 48176516 185842416 112184938 457146314 905219092 376853622 543682961 555040253 209578299 399257817 626416284 82954167 984105453 137288766 298974923 103630557 670160057 132838507 670462915 576348231 930515708 190525185 869388286 435898546 785702179 547115296 855765238 436210199 308874226 465623244 494891786 986808437 961427105 922570550 164436324 671170910 454308128 64159085 653889224 221714721 313364679 599903894 41351783 224135020 172494975 956531971 609019497 560249658 158386841 643852496 195215734 18709616 558936527 888814971 494273789 398079608 52528921 966661736 723908654 971323788 323678868 55002115 787480140 161371698 226605785 815114599 537680174 473940301 700424113 687897868 20995674 208967623 314806667 53208234 354227480 593060299 549682172 908392088 874054152 377119980 268682228 587508657 791805999 703667589 755670124 517739903 589035286 854245950 408333587 903772818 321545841 658002275 505041415 319436083 411242225 732466169 451275422 446355675 160711642 187914202 87734415 220726674 560940597 523891442 379400222 666392720 878585544 533885691 611149123 464436188 14218232 386248973 113165919 134091717 473830090 459590214 735341806 904969697 225776088 303410985 769122871 454193323 700970546 41155963 740411320 995550831 284474088 337636695 598879291 587371710 552870212 428293389 203931058 333309864 20534731 147763546 665686210 714757669 965336048 530789531 66661876 538668718 648076918 61482267 43067946 66472054 921811054 520653586 291133831 896731976 684094886 816066949 338414821 311469969 532164433 918300651 522603286 531314033 868154113 180825258 947261977 183464976 450894246 605296263 745898375 846763153 420507267 577945959 912361534 8082029 946555480 670892029 527618178 783923807 137990661 877172314 438963501 202256763 659854329 703108121 994018676 870998825 608332368 20948613 497884824 641747332 564249448 608101989 250024039 692086580 790175252 556132399 474763418 882177 647140178 279224815 226165950 955135400 485096888 579959120 154407643 402707987 707683885 78127094 637272073 967709599 448025120 85297081 67228220 760808322 486196339 757720329 502356763 469622510 366623090 473152613 414921956 613966403 412225023 619475495 771673898 439121192 820424855 615183334 705208761 28167358 160180576 54270173 180950791 39298542 176949125 84894611 333940435 923243384 32571895 526320431 591867545 886507238 153319847 693253884 404187311 968992936 774548721 726966834 634724106 549344914 396062042 832024711 153316909 126379914 608170095 313607098 501598435 278469449 574918248 802131473 198134832 857800510 119879168 315496189 599845363 906475082 58129949 396007625 374097892 624411046 145781120 630813702 810841186 354178447 602970882 979277784 813849102 981368692 857231357 284765908 965059878 718860402 991125086 816710037 692663919 906954751 196583132 644592068 147914680 100008365 664552130 471359107 97224051 881613814 448268867 72396971 626961526 135823722 596379820 450443286 450140586 233312775 314103768 314143952 611599945 494840763 489745649 471821117 606605301 97220117 543309848 649905770 760057999 657617085 614131877 748933022 577546812 731274157 972127226 693603092 764543889 116608153 567390100 218133169 252750457 691481482 161432661 679056011 493437468 997075480 280314467 278739545 750159767 721012819 234875609 578328400 359043729 202410259 543098625 537878860 22256319 87070392 642851541 553740587 154891334 6895759 273846019 907693925 596046429 52300661 604004185 323009851 150561756 979252787 524535824 462004508 222810518 254744622 168131711 744806331 622150013 215649466 387523770 473614263 335235911 852560199 438780939 260637700 994601597 140076864 40853904 351285170 505221014 878453303 727521651 928933905 914480587 70298995 367221765 298833805 19509216 497994982 816695941 340345533 537289751 382308413 657029998 280895152 277305135 621556790 611958884 858834850 703887298 149359955 223297806 437230654 542187985 328412414 681568323 208010037 570571256 927852849 947864817 368086845 897959803 71356469 809447641 501095997 560483329 123575096 899775017 56382719 710788354 454637277 451754162 47365040 68974392 851955519 832434606 342970012 314318845 363410740 220138111 589101160 884251807 200637010 442799256 651680697 109031969 361403086 334955044 638877344 377751149 781967683 79644781 8929152 670152999 111415458 992100149 339787944 566848727 682504169 531159411 614147376 3255371 722131181 416590388 450828829 112929804 756673578 140576694 48130935 289135384 709668228 976230512 891761095 431557640 902618996 369976224 311064073 85636934 688266226 313042865 62941054 456803711 797780591 614030680 144938409 635018252 249357187 20446802 332414530 557532934 856040331 279776648 83907244 31660645 103934118 814442959 897431617 998231856 71944825 552550282 95424325 778361696 55371716 331277594 147335542 247162394 455911057 928635852 949781616 457700711 990309837 325771796 812271748 27885527 995416511 355517682 317335852 782308985 407327130 203691509 391080736 726369324 121965075 879189743 685403649 561790232 26794814 91307450 886027420 222103344 306404982 933823316 196838069 184669100 517566481 781682662 233342885 76745132 646298433 680967291 397873170 288615985 647634375 850221380 460860425 836898280 255285014 621716683 757658978 432286705 690946946 541438660 547952543 299790815 401264210 21716208 661575920 532546531 555079914 133118093 371370357 733370023 459130154 862706438 157201051 922030624 800748007 155625618 983228450 920460243 138490734 631511180 723151425 814488902 231847826 214540447 450289210 377545185 372698444 734797623 726336636 329124601 997082100 486540221 524184296 448822094 892947369 645302177 61935427 280358145 598925442 577099690 329886755 198531905 632507704 309865262 299024839 552156045 294995067 867691422 123255948 83657633 253399138 415052146 406582573 923581921 329711772 916822879 144834658 157787178 9873675 726704537 583095871 678954376 735424561 186887277 501022309 334939147 105395854 790386688 322023523 270685509 584251275 402459140 986289942 841588955 162437610 702858801 281580248 659995342 600542225 956466282 999505725 742808148 551204321 755000788 218972890 519376051 840723771 495897668 953632091 18883278 152377325 448060707 444511913 153150745 807907789 990641238 977812236 276704463 980123002 779140822 411512156 134184670 670919899 946559985 578577067 264785685 318289662 422639117 93483800 378066098 580785107 854463743 71316296 276326722 984116767 101267195 300539948 972354167 409090537 647787942 326085084 667151320 608618566 624335678 99088592 731490766 240049687 583731644 815320019 569119774 800926400 549664191 434000460 70304507 907109286 789110903 81897049 513324053 386282093 853091986 211609663 120927602 765059916 633373200 26677072 602161596 512402180 388211353 966521790 105042911 576085775 341663969 467972600 956556824 324744808 332024849 415989965 296107261 696035822 164310528 282532937 35379985 764762030 447222447 274149075 708748873 685196065 743789559 83078325 790294197 189000826 353651639 776705272 630773860 321882923 961282754 435505173 628353195 60997584 371309245 919992138 83958015 338249133 610067767 134441653 937827323 246060212 270351993 662878038 136625887 607264499 877490794 933369650 183196874 863466314 343381106 719699466 205284498 28401152 889470989 693408191 307844109 659286320 841800397 778947590 751556370 674515150 111415427 518703110 997110090 815070171 337272628 835714975 970155959 422481240 952936961 114774150 980524780 117489239 429026771 146601807 515323096 263522538 5690401 74675232 6274513 920738488 80915903 133458942 279536899 550581993 437550170 310740676 981441893 626503804 616937539 345561208 346134763 859052336 674144323 943641829 921805783 146199362 698871890 466554682 741780527 271423345 6538677 212504112 457403793 932057303 466366048 357027607 149065930 851203915 304940469 83399641 144450939 385430812 112897156 663980785 768181985 517815832 252379035 341948229 148683217 471559532 927304042 576456282 154254778 847892280 414298382 904520843 797772585 992426936 659182946 1659414 403896970 578847948 508977786 129005322 946476727 527077666 182199113 663672179 605083906 24601958 577570834 209348031 642810845 967142257 837583337 890052270 876073468 48487065 587769040 306398094 922561944 101811909 743825145 545021138 118975040 535075178 831681814 770524451 877467454 995164736 757192140 873307541 646875341 700047046 333315532 669338361 414337563 221440025 443396063 734650069 471679565 85421280 702201524 46233196 730292989 380400764 938982082 298078159 200675396 424909050 503469283 352376290 465195153 509254330 383314719 548833727 519254722 666329101 973493300 238387635 885220518 947703681 953333588 851776476 995311087 637930231 218543550 117142636 303105291 856305938 982101350 861202514 14126614 921159657 269602724 782594411 679998666 875930730 596623544 685052250 372613155 158962642 394662696 94696459 22914896 59556980 443572715 334439676 993175693 517220317 982441330 361623214 638956067 105616575 372520383 309729252 208317325 391857918 182977035 76435460 351040413 794804960 902344749 727023834 73068736 838608614 224770686 199432517 555962794 110429436 355542082 938524065 29668720 572013899 329446741 216902732 57592265 806847649 703476345 381047617 79635862 437607956 366672437 308628266 386801017 561290710 391104102 395298215 856731537 374943641 297190472 677388236 352338482 934885319 243255688 854887822 9785649 83467214 98370254 972539869 14890982 924225319 53768746 87584427 365976261 610902889 773998402 26484603 549572577 173159690 573127114 728397642 829676300 435409614 253615788 389624666 108803403 363146252 224829215 680362154 25904031 590932756 24410922 802374812 672485059 128628810 557766091 906367836 896944769 316742559 852114591 722265189 14974572 968965955 315740885 774060600 730772860 208085563 20307247 962275439 839314676 288867306 55041575 638057957 232108583 465889595 770578986 383771684 631134841 645566640 949698066 314197923 365405068 472669285 83357308 185861389 93011805 365066614 621879076 668223245 85300387 32946829 216321786 935041237 150773252 343310613 22464997 348603759 521344347 330319992 681040817 318197635 955311175 906422034 127184644 104038829 43012844 614398609 97472680 339585280 323357638 501992524 862699440 849516737 291063926 655067374 301328779 5816157 51070087 211965936 488506790 360907385 174484794 331224716 208568676 472053255 248029533 225876471 559622224 218986664 77617934 445343848 356438157 413797927 689578717 373153316 194281777 822112179 345301790 76216754 639549946 767440534 142075721 193867555 146174495 98066272 404830624 51320494 226623321 298370868 746722251 159607407 70880885 936274085 214920471 419504187 983542747 348443441 171191740 135845690 68785306 796245569 638371504 648325440 672147373 577245848 113652137 976120943 216618617 216237590 288887970 742941100 8111870 826543427 767968442 89849070 158015214 317366289 563285394 9592676 208994001 401862361 708125795 289970023 15271186 200843996 848460865 657247141 541497263 71920339 227296294 381922592 831117128 400747026 147778542 818051113 987003611 67784357 971373224 491454535 888725127 512047496 300754468 716000590 163180710 504611820 278468128 791963597 439388700 851752440 188961101 513840489 935221175 339598323 958067369 7630045 705235754 164310094 821890275 222409420 314902204 557646350 828846511 511436605 522187052 84701968 575404071 511331253 549419660 181079472 738084771 112653916 817827172 284281682 679773148 714878269 110494331 551747403 184522004 550682683 804653305 619610742 208490985 484548124 838773540 466667613 537953317 804593862 668334265 65501513 85111812 314190718 402705189 748562823 624605525 919141571 464063526 546129284 731544740 136810902 732992988 378315151 149309170 297189903 86184442 234538927 141811342 116605239 220581300 541960854 883794192 942082732 207541346 307505687 900829588 53189614 476981620 824917625 608310898 828890805 863636561 276583676 560654063 669784485 348368352 827607511 31733202 166183375 178556164 946344472 308349500 199441141 184806761 998873830 741434633 809238772 790459018 836152555 425051136 847464395 61612708 696614720 686450200 254731156 508664502 664201325 924397041 251778058 869416007 551449278 773863361 811799075 89221979 942106827 454107319 571240796 381372083 570814605 882722570 605034096 858242500 938679223 801479265 901737804 291098499 827403018 654223318 104998578 522999322 129199141 52886160 790740087 430039245 600197760 412187319 291744377 392246334 509289686 462902101 339513062 521859515 414447894 263945984 79149870 856160965 120763840 605629032 604887734 402167183 715169143 384537818 883989813 175988020 315939058 809787170 943857891 942105314 677607779 527622253 748442330 771812653 654425008 958188708 825059593 108692730 828351036 708543595 520104128 315969046 913470234 665902368 819765536 393312994 514732848 871813005 729265768 982708994 118069000 733171518 48148144 247438318 418596251 821140283 369218138 768252522 426616471 929923554 30564922 465030469 784967725 445003761 99375257 127026003 831999036 801190598 24827348 528951166 762320762 976909526 741985270 717981435 207637466 420403713 971701130 15869980 489579816 820894966 336551844 105100424 251554827 814734503 869303 690174931 313991895 897411235 209527140 62636765 676500959 259805494 736921405 45347166 258727742 821595434 635534945 132060294 213302862 948573684 25265398 202417779 919543600 816992944 138987919 52592775 947147064 7400841 365997280 336715425 525917210 718363682 351038989 827631130 887424514 944288017 231876175 392949780 376315617 812253096 938079503 359606169 485510735 220191765 322486898 134149239 454304666 904223864 575360964 121636976 419311806 332979414 705385286 555774977 554244400 854593462 120226353 955432448 115472340 786832805 913190473 101048149 644190983 257422068 844295407 121923388 993483175 148293120 277783839 39324816 170522423 896591723 799617858 538473817 624026597 309165530 637125099 313117622 305056244 828510154 723228164 601605576 887887229 568724947 736754826 232916824 400122245 734325032 839913409 621583468 799781900 349776047 509462654 934559816 795678818 722042779 76356542 60700729 882233334 650546142 42827108 754512301 460096415 992812958 785652495 903545186 592973488 288142206 286728023 715218752 631374658 382244682 789061006 792060696 487158375 453799460 396904372 821026141 463166345 557789731 535267417 771633911 827936006 24718565 615898090 543427490 916086891 245490673 594186933 292528079 397332977 638261167 591355721 739725133 106682344 209050126 765016407 562554822 760150313 427343874 175770591 445244091 713861421 810930267 592500471 268143804 221628888 791153062 164062980 529163190 151789820 742273816 97322699 327531843 417368825 221131847 705640699 697415541 506168673 772795770 773279725 173680910 459648075 783323407 151453081 75129119 856204399 633883445 201008251 986724882 904595042 725878322 544387238 547132487 965446686 829457981 401844531 761898271 935955573 632502991 615875714 218491352 194828344 313859532 549276273 681777044 881852303 436364129 378999178 981982647 247891902 325868805 357443384 974942392 476874669 100693681 702143360 391843215 526812627 592079615 998669996 80514726 783135775 592303322 917145009 932772248 181600293 268705656 340236028 993987740 119474011 448014420 976418714 616239523 883938347 457929502 340573976 779070437 510024507 92706407 46948131 187756441 807622776 296135115 144118691 89112659 916058050 291956784 669437693 684843261 888534470 910909533 224748186 922164391 616469373 168685478 451464219 945910263 285129403 11432175 675232737 282841752 338212244 728872900 920391880 75709917 493117111 150404290 114833235 11378012 284873528 666362719 43725367 377547444 280202712 280241066 195672707 921987308 122816516 646623574 151883395 188876242 190914063 784174920 618296384 606864528 530747964 258623266 69746065 480585100 501942323 324413301 651151375 849650937 990118485 497540140 291692137 895103692 475690784 84039080 718382532 982643198 299231716 799667461 328716144 139142399 930836557 21193541 418893104 381292858 190453138 481907426 473399113 275691826 734620122 911948070 447344149 790480973 137487752 996623416 85785501 612989134 706228854 625914812 222216331 218569472 547686309 593875413 88786713 260884790 605107069 248522476 570436464 63526376 714848455 296914673 312084741 573287244 862819043 113959835 535922343 773151047 522200881 380612714 218003282 890281328 817701085 148392127 355716493 80637319 216195720 93309507 808628214 114572940 243256018 852404656 289396788 993333306 703177572 201734343 459638120 606825016 807872165 436068431 56850976 29314028 264727854 350817445 50590250 326974200 518881262 908374598 181860591 364653653 633610960 555372032 26801466 340331407 593801926 166119830 756935500 80801139 755473776 125464090 950509709 863821425 223669687 324005457 847584485 916993712 710669898 423316904 998980849 526874581 228324750 154958458 646250004 460443817 817114518 32552796 53738054 782615519 770010857 896975958 493298508 444117299 983063552 160170566 86033494 665649595 216394941 431270444 202911564 993856473 674708254 552975942 73772290 858287454 944532170 429823118 432003099 500389636 184412665 859355443 49394645 169416725 292142944 225012584 339800659 694643114 275083101 95160195 535923491 766828639 705439948 101445001 434981463 276984291 600406792 359820760 20494196 868473000 898634124 554881103 991216533 5078302 319350071 290004107 519548335 919399315 656246926 572645724 114887583 602374521 565210409 435344305 255620015 519089156 976653543 274821142 635263593 120553379 994418494 235114118 463305367 313482703 248868269 214987454 936481301 912166273 274962790 721921809 842447081 951301429 245347558 906008713 352611503 837727249 294491002 629728106 192875418 897113581 879186270 679061894 887266324 983049668 60195541 197097919 950251398 830204559 853495328 400685574 131901583 407398737 16347693 328227403 149083305 137961822 18316753 395933085 796763460 292324016 853747899 472157341 616206248 833956064 953518643 604344771 594502571 477540278 989522676 818714272 625280369 963935168 141071616 609596532 232555591 454833664 581571543 47428593 323771536 683822867 586149268 118105375 871179455 945395705 44603466 181518759 30905509 293344737 539288005 629450065 981679410 499849281 401020282 131323501 588903211 219703876 503878105 607698047 281574784 591579834 264958808 115818307 626608239 105246871 908343518 365897074 910798164 129058439 608130847 741722062 549430639 746522846 852238238 149322912 408753840 185775542 600971975 633439907 37799816 202735335 286776966 552074762 110470322 44380205 976469056 614467244 173074443 901533001 662173639 606594243 397470211 89739375 828503214 499697162 201889749 30604990 572693764 532827904 129570350 167329626 137543254 913724278 741087548 683287662 752843941 15402338 486099049 430827112 929586940 193819819 654203725 428110414 313731836 92914308 150181566 39525500 74789580 457217386 611340936 464086164 268187462 964771851 367533767 608192953 937837262 860121303 564218881 513846108 829800224 578679608 8428460 549870894 806541706 214403591 136148898 930644905 433090357 567688846 965789643 481939693 764028679 266454408 164504499 19271696 761174876 582392419 155761106 268119680 257712531 890523351 722717979 665074964 969855665 935760319 571932299 845506536 530728714 262299038 607331945 903478602 443112269 272016483 818318983 563318675 481250081 732982009 250864795 9823597 241308765 8978184 933771934 361294590 937253673 202858664 130270709 53471756 981604080 516934808 236395642 352133556 77802926 745943402 991828089 679846595 439891703 689036402 599773817 504528547 609584803 940376210 428201319 269332962 415932205 885604236 455641297 11350889 228388545 331458321 446841322 295903159 47384548 108662407 464569258 651880338 211399634 74887775 896495587 177238102 271224538 207640197 382331203 562788572 699122736 229083457 294438441 585832689 457837088 886715269 522176630 680624367 780630605 420415877 225337732 521242149 808583864 839043444 871442471 571595835 701987680 515405025 234032943 96404603 511047749 149484406 934856385 360352977 771627035 996408684 150147493 825516308 854489611 738929670 306334442 460747974 135491999 724399416 69673596 723879395 118490899 312813375 333368060 957174358 928956944 500479606 678732372 893965278 788912234 302332577 917548009 126482788 141455857 24642222 347633495 417437489 772201115 471576709 104841291 539226699 181164208 642724507 59948590 324558980 104902938 555014930 667161634 627165691 504129289 824188612 982767819 841710203 495641877 347738193 455826233 303780655 292317117 170122254 532514357 819312765 4407985 982150080 116227807 76963309 629677209 920913714 952198026 708684422 732288549 476179280 730749290 570870210 279521587 980815252 734678988 847816564 495147032 745199422 405588771 407976647 459332350 95318407 740475373 170802373 296034967 226700553 987557749 692667633 860088426 696982524 389643329 130898843 504940354 950541875 787784178 975963361 477388257 746207873 101023337 433745791 322059662 369407661 800757845 450014205 663172044 579551574 573457888 592126643 732548024 72050400 718264487 344322760 463174859 52866190 823218140 905488995 315078985 702713189 593329000 804362570 886404403 15683416 293194159 316652422 600441115 905123274 959595314 444447823 534888883 617549094 882310277 467437168 512843282 734382639 644170807 837278076 498137848 940776119 746988009 696503861 328428050 366535186 340192519 231861581 76581481 725277991 622446897 722497272 896811438 628267716 471445739 563848305 694504092 996614490 872183391 121767896 212860022 923815539 266022116 808625423 498629041 41417965 318412273 21140213 152472366 552979957 596303064 854427905 975231804 336151929 563134426 846626105 741977486 395238440 691524792 150561983 133493746 355723817 856387812 462450129 63289008 267781769 539885049 810808501 361932340 985265500 291410915 10573063 684872670 808916630 809293608 697432919 531029629 507377073 691979627 35884578 541556916 874598563 559896563 206696680 182170943 631079213 465798298 848040087 967599533 702168092 851251519 594284670 747265619 528042688 274686348 349371417 872714747 715818976 153851883 949938461 110479816 768247558 553524499 962828062 900779806 687135264 206163754 324909192 929283235 280883641 405392251 41553219 289725567 44410734 908424593 848704303 184749523 148659596 609562977 474269423 276475712 716219412 216078196 431468250 285012967 17602852 941954932 445421012 980784833 761818717 525664110 500057336 892635698 933467908 169109137 376452969 613964316 737188358 753429934 825133966 494246257 879550961 447240437 232534062 968231475 318409488 207207 275772269 139922497 609049145 686293808 759898254 985279289 818829313 63768416 190361460 38073307 429429065 502552988 526612488 584996745 979849097 669526890 583769077 105029706 677589492 97430794 715653376 255563992 758474013 260687387 641365827 228850019 605197024 685746202 625680645 211065310 708353613 478094241 828232068 204846015 157285485 920083465 692451256 603473536 381182929 322065030 719395911 263416505 948041588 745288714 725171913 63163421 685448074 557560539 845492136 640260353 453045139 365272657 44528412 492821815 351363011 865612638 878180041 203090790 684699687 980546574 316173147 712514998 431806871 287779623 845777076 459140644 264262736 249482241 840881101 347136899 173078153 246103989 22710525 793761642 787519480 767468560 406175616 664907170 193950942 435556940 667502148 68684605 503881544 275560532 679095367 934786498 941781472 623152333 282173434 808868529 186607518 629052260 525442462 919260254 978912210 225070201 458440675 197131260 90250688 333160329 184471201 898267955 631501781 498870909 469457166 632773916 508316244 876363961 760230345 991812171 297652694 415122286 923898728 42118447 530620435 667892196 162861754 619915452 533128224 787829600 162314128 251802626 287065580 545280177 640123362 843715617 600147358 966506446 990185629 725480449 868077726 448880974 621373810 550308378 965122665 88745801 978473740 953978230 885021475 842790422 382089774 743128564 179173241 827735995 733509109 28920676 377495666 383040708 390408399 760210538 803211689 287481923 460947368 747452606 749404104 27006585 1954678 344259380 351133768 514273934 880476734 372952435 8359724 566660358 837923390 313557218 534999522 96306152 725378065 55202266 641294631 249960803 283070017 136186360 405886416 360179760 111450639 819856501 150006295 27013625 471959663 586601698 950818999 940280659 715835409 254363188 443643822 847715071 486956547 809850032 288624982 105228854 830749848 887662170 243327144 899740741 307062521 731771565 853060024 815737450 911193307 849186935 200375135 352985630 960566590 42068666 915748621 963240783 134996427 801668030 784956225 11899811 948953755 507299967 45334550 368814888 605984980 506336759 293938797 852497780 124286595 683267443 556871305 23217858 438333011 435032498 977942068 716152140 582138845 524079732 18468994 526613401 569071057 671867854 308911843 12514514 82936412 449900302 269019681 334223592 329401290 754814866 392727939 376603480 58632484 675721805 910343364 800406373 423748335 492522395 186101673 168415323 510860132 327475409 428720419 80218167 688670604 965052571 858030015 269271888 28766281 754816575 821142566 15656942 888968517 779318180 872360883 935795245 346353161 398802239 762707696 893081881 231701471 858910982 389059847 888515255 309428974 503980772 807972474 316823611 228392262 343180966 799765692 100077363 202815994 909100353 723244965 618763635 211946510 886071749 156092659 91355363 734789543 782503226 886663748 14568263 377294379 6042136 964050730 579097121 859694277 939301783 392535856 732301656 721717350 319960011 520588051 208685993 503525083 955474502 47663762 370202794 10569859 475108718 952750796 870140705 280144258 967559708 599900845 353455500 2191118 707903133 94708804 533963516 549124656 831719720 872679855 24501089 540990090 367892076 344371540 361127614 723913679 231832986 885272114 330636366 934041267 23928541 44533209 635958184 629511866 845518400 764090917 647789402 606685376 353448814 378870506 675872145 805534374 89744676 514775257 677447232 776006455 603258588 166819069 515085304 601533572 766898216 86047612 725352053 13453284 605451754 633037298 534826941 41534633 843367544 615105690 946523373 720547540 110873353 982694311 734429548 766837366 680667509 903074263 74854830 317929063 393402838 711129331 86294404 354651185 617418393 589904645 372616688 535577738 778005264 43791313 859376124 973446690 288503292 578230452 774919677 568732776 440326000 129407986 891817894 945105757 763617348 549697273 104525702 361169000 397396980 432794345 275085282 846967509 676045206 233658246 694039366 85775421 100200980 75683224 429552183 126853571 349520371 140629372 566869777 839960776 295659774 863984376 743098760 11608525 940756116 453062003 437721753 517837376 606007577 902880867 388900339 191917453 118753973 864722942 755068386 634276468 145303010 852208916 991319288 148046855 180809620 600551981 419095523 530828038 676072871 139949262 568956470 376269888 221022747 581390253 814596537 186556048 953205804 67027758 683790130 990539897 241041675 786487221 305003590 819234523 98364031 413371301 130919442 429506533 912590207 325284770 208827998 820353120 814512845 501840795 975207274 907507308 169901358 604145682 968337806 485581443 135454426 538887920 757695630 821415935 85238839 743026638 537636037 810975650 860108880 716625589 96810490 942244796 30116366 883167221 314175778 703513400 748488830 123556776 196317523 651831976 80687721 29709208 665455994 717274636 590003004 928547079 884694841 439466099 228990309 960923177 957038386 23614256 690442102 214604554 640778417 218949374 684816999 58671326 341788931 2215795 180203129 935362182 529883886 183681915 240025343 496104582 267562943 608182978 149709396 934105204 476666433 535505956 159449145 179526909 707711489 701135370 708615771 17161578 106718504 881435386 894132136 619804131 300491944 929979699 150213161 505505328 144747389 686827909 35163554 347128527 38542284 871339548 372350616 290232507 874999185 527992901 372216179 22625721 512575437 414979953 254872298 916216392 97003934 790499523 770654120 88155367 303772165 401399763 389621355 996526475 4673849 227429054 951408066 708833432 575850425 123034291 648496913 531811766 760252809 125999607 848030363 205750293 242861454 746982956 489175937 605768915 516723064 514560022 952606931 632123016 325176324 56159451 42071304 620413161 790306783 497489007 601549646 998851009 579820941 55443494 748925426 205037922 768008495 806697849 945233920 981725148 860158984 361698834 852422881 386013425 678366795 594762535 846105232 720105395 529739436 566438233 207116913 861122192 237306058 724224947 818869687 652991329 258974330 621175004 470180690 518362822 777020833 8218348 248070298 830612835 983393273 528933891 435927476 785466135 794826006 210551030 818893166 366490464 315425112 64807767 43566600 76690452 580649016 631782791 728040319 350422792 248118453 358958840 593074809 168525757 431577716 307583922 508109501 274957072 902562695 843832775 639624641 927684238 948775124 633012335 950504341 553831863 240772846 390030924 900349505 248379478 729400380 681771800 635619697 416178678 465155273 400364036 150154982 107339493 958655424 281484347 893171800 784029904 112810259 677017112 52510624 142329018 781796464 26430388 151068149 948970923 439389943 253219148 460804597 85425071 735971838 459512426 428010509 215129952 962809024 45816607 732593483 832000942 765117617 386414778 502242066 164158403 64201865 679100052 936847673 480765245 418408731 904496490 165635777 889095258 362156391 47082848 319360106 758350615 159565707 364354700 170956467 84974285 13313977 322584700 296318406 203055320 635770020 776658154 815703687 277720627 791973338 810804786 323324582 9494572 239525810 501601174 760880985 474579929 408219846 188560786 219863975 680520343 947640351 257406038 114153536 55963154 492510090 187882550 166255192 632435460 68307741 398082258 623505772 3869365 200528420 601866581 571801817 375469954 54760875 769221537 543035677 923469051 573317147 962191996 614156965 768981051 297774209 394118005 288227158 282161763 579768989 295558096 183290287 393678739 875787284 995666816 267766925 26412323 244848932 760778273 403941279 96485361 59250666 111832090 846569229 123872943 446667398 875791859 37445619 85965121 180390633 194767092 849049644 938786941 759820090 356654957 560221265 907855445 301866826 336992490 488795936 658293328 438230222 993395241 3565982 941179477 151012212 209774809 862925000 282658333 894601996 574384399 924909951 901110149 905686594 863780403 10856923 188467617 781729401 221422337 850168656 443254186 511523817 772098772 267799848 284410444 952678569 74334367 806009616 555679220 73991048 960075502 830831132 331791630 829022927 36696017 395809116 376736390 724680043 984916813 175512322 350688751 819274528 571160788 349802347 971611549 313256936 610119542 41667777 655009860 662341771 401071086 794398501 698107424 657290210 921761391 747186436 893356084 945700720 554764115 659755679 933598999 945288837 205297294 232804980 542025540 289522104 272647317 775366708 670630920 621476450 802225201 212186577 547232036 144609316 631008491 448601987 851938678 873336325 683009275 390149084 221467238 792930268 722429166 256419827 277971221 723729244 334172334 511258292 631168708 265750267 870415439 242036224 511389793 269849099 103370749 913836309 876235885 306856716 23658416 274147460 528655629 536112834 172831949 327708272 360563966 11926801 430883556 364378799 175961296 914989826 95874007 824487328 738957530 783017254 946697395 898552545 281966873 840217669 762558559 927212816 667665050 305310398 698739516 693001070 774755301 588327883 472998286 580848520 558362129 73021329 161986860 662301638 926187002 155710819 908443668 315848456 564766386 277805860 530066977 249918960 861119352 197851831 347415517 541374335 94698960 865192102 96927368 808459249 837633918 866950221 605819970 520249382 142969805 382022659 360220913 125857723 463292345 883777501 577183187 636099728 424343945 324592035 189570925 919739703 155952567 126596359 550817184 644796815 560651129 909214026 834419863 77076784 681438419 977918412 864110458 224002356 889101424 81607574 937126105 857310428 14897967 477778529 762229011 997611880 308622160 191368773 956780520 90964683 534931084 13869562 725065735 122883554 866326717 192172359 301255886 147351148 960171281 161024254 322348514 265765365 861262393 398823700 787643142 843533684 172204588 721366271 81533585 543432967 610404049 428831269 251506768 197907428 681752919 351658684 244422848 745693484 414576837 392289529 178333773 490305064 124753994 131590577 630250639 964057629 424501715 93416945 758517317 405580997 375398483 629521540 889252476 479392467 176583849 389532753 962645932 865872226 626536858 174584955 221997772 592930011 450001060 687491718 12318855 909669033 234601716 859357351 520406607 761275707 485409320 20315929 317715128 304157417 663830644 433063241 373257878 305486121 123423944 47043695 120372795 543215329 763784281 962415060 868777680 432160071 323779006 423186013 574948907 871960228 863810616 141049406 332824197 427068038 267009420 1380022 821421703 837441421 350370036 934833890 251858892 622087495 929175327 980278315 301591111 460358433 65955086 75971746 749212768 323475742 712749548 906220597 968552581 149047616 557745067 481753222 828289976 509759441 372367539 391835080 306101347 784450431 700606145 413897287 125997979 463957031 798063346 719122215 927816133 467315637 297868286 634154963 967192298 190096997 4263837 792337885 962407179 495952094 671180727 802386429 86129095 762888906 965548004 15482898 494567403 365464340 79732575 641442324 640726872 483745103 357545931 521528007 54438040 502868740 599105532 38477694 321469142 662272477 637149503 262755611 532332187 46981841 191788700 799523108 692261820 2509244 152277354 683050211 984231331 541244409 931041220 434226947 604773412 736956314 685395504 346051285 88202563 75611809 134893062 428055577 690253148 837141327 48104051 971734811 668888493 973022982 798645162 509368407 616493194 787792407 101872967 432681996 4609234 870977876 423803046 285772427 531695497 493646957 857003636 23603467 482721696 349415245 751913703 796197512 756330158 711588424 595364695 948966196 570805422 738428105 223886527 946454045 79321357 733141525 388126512 22036132 533216008 423123745 286598327 518995806 540742909 804679395 216285898 577169978 910970784 385183978 504113928 504933697 872894890 876062100 514441277 556896869 429830727 392509054 897244934 988091041 680167262 931360628 302776617 609421213 764561140 186063212 415920198 678378374 277521923 159277933 939750225 216010699 874618260 916622416 919422070 742151475 620129046 139287618 230057457 372354482 243461293 427012102 228940720 460903687 509280255 696145969 51872130 599281846 156344454 887254545 563208972 488114219 780861250 797660418 765456973 825810770 419774906 236324226 750352043 560872305 127903322 230314268 92606332 785864920 512559732 526620941 264437068 647022230 374816134 317879827 926807376 236858392 312191163 531972580 681806935 636748481 109332786 74131982 929792724 914789603 16627624 930743005 904160987 422763359 181870512 930975984 676480232 540749887 547369239 940101589 261506394 730721329 456622403 56475652 159773696 272137196 868088259 104468879 242121059 934674834 673246260 743229512 459559658 566726883 460243544 526419736 208821029 664651042 179861607 406223568 852305448 967619939 548798288 79054716 249461730 826670405 161204136 533283690 577245280 109728615 724538499 520198009 3436497 238428073 383905739 442107467 266689517 616533582 649753871 27689928 21510782 484506785 88157123 994228503 644742764 538129164 183436367 220602104 206990836 966273297 221267239 749119242 7582577 447893208 177529683 75029418 823169455 896965891 481214103 208706806 659639811 313545301 562928553 124335832 835517395 222238892 341449081 652582134 1364765 442766157 525818242 844192954 850824903 408822178 236797272 998128431 936281032 9791198 807151025 823059581 482097214 209204988 56245063 86185248 61970617 585529680 388577349 8053031 697975624 977397513 156847018 388989335 262550199 108310355 568192228 604026054 379156891 777210717 272651377 757054108 988326306 556911952 634796668 920188051 633553994 910192212 971569870 389615312 561023548 426979774 435722386 291818881 635668810 703951053 512993471 805082198 184702816 629115064 420542048 59672420 355961637 456102727 701036407 878015103 692343022 501667753 349485552 610993350 13277381 713824976 989751370 600267202 793544595 633364865 301204215 405413405 216631356 718604570 167058486 623779241 32080504 234377864 459761549 300350185 548333446 392038992 104966435 863738775 510184292 795760949 540502043 188413818 591578740 406149419 771031592 345079205 73982931 556032625 840229309 213528903 826021437 911536740 683248091 205512995 380012981 626648180 5738040 796589640 500513138 185191478 685526507 654707888 14181336 994725672 30116327 451561248 500006181 914031302 172824778 600565114 559228056 935846962 825049534 643914295 114381678 689336082 919491637 991696470 269797971 272287475 997104198 588880042 81876854 639577313 740414297 736625301 816399472 539475513 33482284 732478309 888234858 957761126 681463326 462347219 286044537 83627214 64527805 289525066 82626982 267506849 599794823 121523729 79738477 820213267 619389921 553726956 677332042 808318828 174622898 462336014 187399024 933145376 593018925 680809132 327883321 806543614 467630108 707495353 516381579 805280458 568583697 344722101 702914668 19942584 429160108 123457374 900344980 784066066 958327225 739035710 744227693 317865999 615843835 765709717 158332085 431978082 679771153 108075041 39157697 818658246 819509755 87127260 706525236 398807159 508893253 445213613 181937817 15585287 102974486 497268306 188486170 463231327 435909028 990491830 879769924 474650706 608543907 237131123 207969439 589578325 131897521 352349998 719634397 697144803 345676620 773413999 866547923 683966921 693216736 568454531 231980399 493375009 707903671 447325084 330102250 259271450 392451570 474737544 290823477 770318850 774559010 735447890 783184003 253582156 6888453 332360500 573831833 985290368 711874418 391263056 830026120 903202990 277052249 76760686 53785097 877183993 910056834 497999112 802574063 204435311 161315654 282488869 519698689 729923038 298026378 959783428 457558708 5702103 508690659 592290986 845697271 336905650 614594442 278138131 340686540 572608826 493265532 623894273 603144111 158032028 855272501 708651313 579103558 334553878 951526586 533091011 998503130 611375904 115607745 365232814 48091079 128575257 57624284 338875319 621084714 844334750 948814225 390282166 730264807 611006221 622448438 467345738 609009473 959589007 906854807 714527295 966871328 667607144 246937688 847622815 174397334 659773422 287340910 800224692 422529427 523901394 53713894 934402225 599578237 942919610 648331003 626513167 790986803 998374329 683215520 981872481 584140269 512528870 924201677 239854788 821136640 546951204 293172195 544537481 559619157 618170538 119042209 341739615 289621078 607988884 406596462 535492164 31716682 510476416 892118040 979197890 693306759 892888747 353607758 358973420 568438150 415438534 165233991 679136870 816332730 355043040 953810851 620576982 258546419 850837476 661238486 323945128 882572488 73611516 551827477 707111213 494639736 771793811 772748034 925167103 57786554 325629033 122204181 20455255 377571154 653581993 197721253 367262946 696632698 717088836 557005353 830047655 88194813 488383763 997625130 106840258 340671189 874591287 375487187 721240252 454589465 320929704 652128326 205699404 914078683 892722233 272923906 410090784 283853351 751109379 713968762 829928063 657798445 169835027 449782282 182022293 119247786 863607923 546669470 619493112 242415058 735365433 108844084 360226617 765973951 148233291 761886880 319002950 96470477 524637288 120484010 44920801 185329668 60379160 953421379 149594229 180935963 671339611 970735451 660239388 670335015 882981476 666969671 836561158 511775978 167227757 300816664 917070903 695146700 42090816 417181060 655917028 391503396 918721114 619254300 133916490 675043492 86072078 404090835 297726347 48977979 355198475 73619085 700052165 761824619 510901660 282916998 88469616 218217583 19117899 332015363 600469331 261596236 373837152 631995726 484721227 617863881 160578340 970620930 777174326 588569143 267116587 432275212 592704656 784657381 697827465 378434030 945574540 988239774 921404804 861259865 157500821 877588336 551235922 899998091 212497519 5401020 16146011 5765599 574808275 229569167 816261959 341443383 725927158 811335900 560207455 855266801 610558214 857254855 594998063 733485020 565714356 301741150 920624490 18649880 167804779 352518336 907617680 141043163 61692770 224765708 476715751 619331510 733072831 784294603 405029362 324734936 387650865 699565177 121330655 501595515 559074334 415590958 248083604 661934338 371324643 141031722 249849538 345595998 986134859 793426795 856711327 40471275 765139849 569075516 521302354 89363446 202817464 97053397 813827050 502744248 549459127 349683860 494101239 415362161 844161274 497138969 849943225 434072797 990733512 305407706 419314496 650274970 908685587 132067313 101717234 250449253 131793762 795641175 504673044 379777316 793114457 860877470 504415145 205629637 595371398 270389968 906380705 85158889 205522843 731028418 84139631 220366929 975477275 636653836 806945664 691030834 792797369 149599580 263196634 806778628 935288310 909766505 53756664 232686762 841769167 742671246 258874101 417135937 630611602 882118570 315309002 681232985 81373736 504406227 64146876 634356628 394340764 388438933 457844354 572398059 812980074 839382588 452336945 728474011 196625162 577043015 990563653 785280899 155229955 659015328 717536805 837534789 164096157 668838304 645193663 605976934 227580161 291619047 674669091 25562362 407710406 190694417 553528219 163613882 593822684 983959017 135692807 935215155 852072762 465114980 883839890 976729038 179844376 769749491 559970041 215094 230805476 991120186 797637529 582766469 658640934 911365870 30007834 977709448 296810477 309656334 287428272 394591927 784377369 453729761 159927564 654910668 542757958 185819441 565976892 967055127 138735196 197581476 261770619 771386553 244869425 641057527 850766358 432930659 269694639 819052340 994422828 403824724 113862091 444238493 731435059 555423850 84194659 488515097 44763120 736325430 275704726 331821413 2388376 203759687 106315482 944214495 821772182 622809262 668388477 640757758 104754923 667459043 79338748 81522612 877608049 777008232 335299281 184933768 17460052 941965141 394396957 248146651 80356744 193461162 651690367 344689251 676719274 407206489 900176848 691507909 393599576 201187694 239091359 581076484 177251899 715618723 928979635 58588856 682406475 448491679 83964782 780405462 203576858 666281209 689529121 460845980 188868030 456042490 305167245 688094194 442725144 373870230 54229961 617993888 360714353 280317253 973460548 297127547 825860961 664961680 411821659 947656248 33121212 512422122 826079702 739431691 140791722 679814735 874928696 139443001 957001407 483973719 805914749 675297251 227539544 552143457 924412049 598089913 985716612 806601555 741093024 24390460 340833358 146743721 134886195 983007286 161530070 693964347 715461043 90046081 221364613 601942804 873473499 263987620 815709257 248777343 147737389 779049361 375402387 124904400 57873348 144352641 316005921 871104404 172426573 105406619 408618153 346357729 54027787 731785512 444496846 412283126 965275050 851231992 523077629 566641169 376297697 989290229 915964577 309876174 13506185 392279851 575173518 588556096 94813254 491275444 876137414 706126669 685922783 828561112 100728558 369960588 705867180 573255759 784982480 735585428 750641117 838432859 762287614 28732354 149399870 112075727 533508353 399617002 487572438 480700675 254952792 954604843 597254284 976373318 206561001 587514869 88378160 583795573 662593497 492473014 968598681 626904484 965514439 745216918 102544211 634922802 965524281 364976149 776337117 616019099 808866055 263691557 448196674 377032175 222578090 667226957 148583217 834910137 705565912 78518429 261647776 191632592 30635418 108456934 914495720 128645097 186376380 310551604 458996385 970180864 918908138 953623300 334668695 515676487 945754193 685936864 701236304 390845966 654603572 156795377 437557523 593246885 68140658 203924866 895344336 292589111 573696059 393295086 577086299 727172603 830816842 271737739 330017768 908622816 831792672 798046978 628811561 399601507 315829421 861384915 344067202 640877641 919557672 424838022 899275050 291797102 656611488 43571835 839383900 207634831 749987203 390455342 251998986 263662581 465977738 65317924 466136447 712841749 106277192 103034035 338183110 909239146 781683110 325706522 883169437 636400338 295667738 327959067 721323375 22034802 690031863 963846504 363537272 223587716 397533138 881609046 87756865 793658232 980386175 596552270 642105751 563748209 23264142 35192014 285109450 427565800 56231725 691285470 476580247 37064402 992719703 985257196 365531574 653743827 66415752 996334398 242097736 906321498 665722961 627228203 880769376 463707556 813692591 977198639 859945782 446909283 32526751 865870044 424305728 609117882 981040158 885814590 228840893 810294296 772280304 835364216 164102411 986740333 651676081 612982917 337027540 693860160 194730235 455985435 233231967 930624467 928873358 758547093 694304720 141144910 944774880 485275490 862551698 371490342 189944482 884343106 199385550 588929695 376992561 135588657 149599550 578481608 172339960 700970937 675109861 376430321 860351286 879512402 292984807 51279780 636238681 512123451 335836820 941354261 373394450 701198657 239646112 439282474 29255125 485765807 120921950 457219188 712977199 592541329 123285316 781433905 446919906 221413496 517722295 662646570 198825793 172951242 346435559 266840539 354174536 916776576 252034924 135290945 962134143 176837524 133502848 444950588 721890943 361058045 513334763 902756284 66572327 766303562 548714746 526767153 365718420 945258084 440276423 895872290 606849148 443785731 406567804 261863143 549513380 448348036 169184444 258706736 624743370 31407866 175500107 120328899 362490867 588953845 435614771 975615305 485297234 421608563 911778379 77775000 68812106 520900188 954084471 877553541 135152340 970917865 339623163 958308266 26343295 653625279 750505622 582866342 605548733 626258025 785944559 208392933 950510959 530932466 967359204 478711539 703239524 49241599 346011308 329408797 712068823 805500853 647621852 362909835 254835730 76946531 14461783 39178146 615320139 87436985 989902018 978310289 237743667 78994393 640784316 104368676 874653422 219080596 492050276 611044714 872913880 325231358 652459426 751667225 805594910 64393681 698171309 459489342 816829253 794254280 451666293 463626912 919326265 255920366 421903583 556733455 934591060 32897371 300672156 98120265 473014171 959501516 474999173 528043224 213359800 587121530 443455809 297198019 236839311 943216573 590217032 180645840 248764246 425056075 968328074 281409485 273113615 676343041 39847265 236584439 234712381 523707663 139434812 948132400 851416950 432054261 270450937 793289162 711793905 930936314 837971299 684156817 441687820 524076493 594239308 669838539 857646504 243952524 994493501 74624576 218240611 555488094 380547875 375505667 430479074 294216937 186852614 493703743 19762516 972374437 968374974 90563847 746595594 527792305 577477071 878605825 46905630 469823787 117239247 131726289 415298112 312729567 475910572 213919250 293869218 315701091 699644967 425738995 704598543 989686957 780268055 321757308 272535267 910467439 474992773 563890767 323374831 661653027 294312151 223768907 608781250 674202688 755856139 721577978 563898040 500899592 475200288 640319675 709492979 647743947 653695493 129748394 578153906 367377453 676956590 658537962 106619014 950741284 495565869 192704526 234423858 253408721 325772674 685854187 20341009 877112520 505240114 524243312 557644169 269474367 706554928 660617352 151407762 274996112 988920168 129774130 396000250 16564150 480096162 572541866 492889223 910058887 902465156 144799134 337472623 709053719 383508390 686857639 229264826 944680551 224528712 304476098 880936616 296234511 917668638 825158671 928968064 138851522 870837524 589585310 439075916 760125635 289879765 700754467 322327642 767817430 136623712 381070581 938399540 361289616 626580269 9221683 997682697 288875444 140497934 433256975 357254414 546570166 289510202 51513006 95712326 840103286 978917124 58769934 83400474 730042906 200761703 743250287 314065198 952497833 910329566 42254809 166529726 715589697 751180285 876636746 881673035 310787973 69972843 298407079 809453474 619810534 224719349 579182494 849536985 299749999 240465492 954867465 817303268 441764783 977755702 959605283 472623463 206743628 153983335 401442806 41402105 320675125 118051603 478643202 741593363 250138558 260274014 232433137 761506699 970827450 558436107 110229288 472305069 946502517 921222596 565353681 466594764 650941935 636649222 396423928 451610317 138665431 150039800 515445812 497743413 68406656 797804965 51454113 957408317 492157708 720400767 395645071 424897755 4883235 666072268 628865701 685703883 716109288 871623197 550218806 114040877 482144350 40585267 574356715 637722330 108876969 47993516 363081165 557817389 573472668 906041182 202035155 482997551 260819602 154685369 337607590 314949429 517970941 998434993 624557417 282658485 78030375 620881677 732182489 740848906 410534966 717736450 561239141 918722410 680308526 573846532 556313129 848710231 646328296 743438979 784419897 537916337 82981763 854214427 649750230 495334317 112349215 564493549 843067069 255288178 213731334 907084037 67056630 28696143 540414895 838407391 826403340 297866700 530702742 929756874 905983203 41817857 414399253 611352080 946624767 367058486 477565656 258128633 345206914 662014259 771402519 753200671 737073299 432595831 118346802 52888466 745500346 884514330 904243487 365882014 270395891 594118850 47743910 179049974 194121753 688128692 14869975 202090175 865417468 160693527 368410204 156731274 766121495 48755519 962152969 670498652 869559936 821963533 517241910 669006694 405812464 996326425 209660088 622593484 860020903 406552731 679741351 82405601 355151429 153708568 551777678 815195506 512439812 184479312 838618255 759536739 756956473 814760049 836669671 337815915 541644796 921454113 287490754 401923421 832852833 432292728 952797316 202625373 418007562 804645589 812143519 740779576 272766555 524832650 913318944 137563773 505360370 331993217 893464671 280595699 958221469 864449871 939171100 500523670 597868581 243860486 321711730 399903261 167019532 69375051 823823216 36321512 901566504 893452978 963311433 125532693 330014788 51329091 382335785 320586147 629129365 632732775 514181312 487074568 297427827 611712429 593832653 482538326 562296079 158197424 635926561 269330224 233070830 926088226 644991106 292416258 454700985 92419030 245625924 222651947 331045122 129864927 139240871 965859430 907049846 894399867 2859216 51609377 332636583 899032536 483885213 337935858 164276166 935222669 73100565 564755168 518455934 382048847 809629448 659715516 664479824 938790047 133768204 424960061 6164552 565865958 558961253 346707305 879138285 342419230 481884457 149277810 279748346 850186558 998090836 197322538 687725353 424528667 662778470 694104874 392857813 359364985 610613196 331141143 690693207 123361106 584586792 56293832 36366157 790050923 420037270 593481768 862983638 198005580 347969458 363736838 573722125 122093741 417673425 679195 654005986 420871206 838995698 420350417 221667429 423442558 271041850 328129715 717999256 267681164 185747360 667033070 461999872 800310580 637953620 819710828 226042157 252278545 521769587 998514484 600596072 347624453 486613450 830641265 280394379 976000426 329118403 92750634 621787527 872910958 957919104 248911573 557531785 95864458 764158875 441818540 623455523 391744039 389463498 678468903 90749104 327878928 16890401 633399058 35178979 88039620 528589234 432336397 680572978 221435778 130937836 989144586 621854943 952913525 963530599 432287469 58439144 685488972 905162942 899714942 725751813 982672324 303259155 78250951 538038183 782351193 321232958 483565446 431095161 240684748 713181476 605474600 417891849 397634998 380576517 554358138 483155410 891387394 819527453 745965622 84639844 345728615 654513496 10564878 226053870 471268702 254213367 109688350 496479085 185899304 310009601 608896983 756495002 545818141 502465451 529502895 82574786 69917482 408341954 211659596 484940372 269907620 372060886 213814623 840013999 318509297 272417188 589883639 699547910 38587960 965402744 428427830 652010403 969680742 639190964 167770676 726640034 373244888 249732759 324627180 31433398 799144073 98165665 566215021 781348136 187018032 522346638 697010603 925020329 339074611 490095913 917536453 938544287 707667785 679129332 813427213 323376170 121065385 977709928 718281416 101250234 680600373 23284444 432181424 796340080 952368077 108503998 941108787 384692457 505625529 695576198 35235936 686428016 888566769 218844323 33102341 877897159 911230400 97099431 862290801 405158514 741279639 268619632 950785626 861348512 172603534 121606851 851776165 426449990 81358804 725465545 3928508 313416938 98039465 856769247 129497667 494433752 54969537 458707193 206574764 245351977 163762072 16488173 842887493 689996363 757335080 954966070 998299192 74856095 669262410 85879477 484993939 616271315 882093224 438304633 839526669 754675401 131567837 35072331 733452563 996104315 386707989 189825663 70123554 580451267 562310618 218681649 658267745 258106538 756828270 807426512 453708255 797821720 432392296 789522995 718873078 860245671 431887295 319681555 698285921 71499222 158365882 808240274 290455731 39459374 643591260 960785676 380367453 609403234 63857209 420684372 713774864 694796125 276566824 975268651 474546158 446294372 572503793 832448573 928692316 993651604 737536682 574102569 555641602 151397112 624219758 523794225 932681477 243035125 79465973 128302508 569838114 720284210 863301255 453755253 947123625 604149006 681500266 132508996 446989712 554837544 296923837 433118891 234665051 937861831 445238500 464280130 235960686 488966201 434498091 1406001 800086704 880457369 777321101 681765309 641013612 672967215 462499836 239900664 591548099 407366323 585985061 205508680 51240775 393903576 275936642 813470682 584115488 160155375 923855682 758791015 922641097 899995909 830382600 634818126 865852145 457846849 841862715 838931070 680942994 215155359 655931056 917241991 170427722 947871081 584947329 586418331 869048148 311721544 421624644 518671974 818789395 250436371 66237445 337836379 515280140 164989689 426293554 259433450 583599818 471105266 904210453 654167971 131619511 5543760 766391566 375849724 13773486 654155 805035522 241895930 110082749 426970421 459873049 81385386 315536452 310991543 865998544 479336215 127914270 907347263 162991519 478788572 942879283 121085923 410466700 255758371 932983091 438229384 288570917 522143214 744130124 765664140 40509411 522526602 269052885 188942190 218941472 816781089 411487324 995956717 94592948 102075653 718620666 755364763 196032573 970768763 816076638 986600445 898029371 369945146 815937170 958513123 255370274 892801786 68714489 88130309 716723781 160877467 103873348 438613517 742928032 982000063 537967326 361239035 244655413 132946376 184094920 745879801 364620339 851212846 78472753 485838703 749020861 544215345 61441060 871840446 880257138 333527373 238191805 535156899 847235839 567925041 6067361 792144474 632227420 186299713 132914099 488641330 358877383 960747462 774762331 838807053 651347753 230854199 765912193 876657816 181543421 625363115 722020669 3941923 580056012 923346714 47674470 93367317 882002861 897385680 17203592 407243889 211167402 146745867 607784189 574295543 202693896 13051001 787516485 197415100 117271253 794263057 436663896 629118576 548518464 190132557 42596273 370226619 962891565 62695154 642715145 315848980 501278840 964760963 782232836 541068360 5156520 733776137 232853450 364949280 376572893 270202762 783383731 979954358 141893133 666461330 274911752 184058474 182875861 57825014 601682661 330656854 228238239 177464650 949233720 538199801 939014586 549377664 960726254 925897909 231976499 674819348 162833530 483047058 188424988 361752039 994784761 135597449 83243258 892196205 926015207 39215844 408051249 533280969 326464572 335119635 246775684 466125293 416227991 683829567 436490917 243584238 960457667 292660624 372036030 990839435 289142909 308005357 730570234 595272776 964966751 580369680 235924998 260254459 324481289 871890938 748458825 745438811 606475024 559436331 836880356 131838972 875420034 293943000 984155398 15710366 922807611 282522090 520905440 756807881 670723829 914496393 157864663 660686755 421437738 764258671 217187330 667671434 90769946 411544368 22378476 772322300 605906308 719098949 825040132 256527656 393938254 188155640 427450437 287299219 826140004 222866825 672210714 278375130 304208499 485857213 832988830 681150124 783358434 850975282 402172263 759739672 872527221 340683814 875454725 657093151 354238143 833631930 111581450 58930471 660363749 452140920 433408967 526571018 917964932 608749825 973230504 542545017 152205553 134247052 907535295 776807220 963771496 237414673 888354894 773170968 636912060 200495301 103955650 698295003 957841767 600262066 604072769 531796064 646150745 115989086 823723705 941459848 593043662 835450383 725095251 558800930 564143515 185318959 587922385 285043540 848843644 984571917 735822301 238647601 972623022 301208993 91074136 739354424 310158287 375718918 718245216 149550467 428600309 725359334 68977736 663912771 368447575 476932020 381446745 830596153 769267231 351489330 941386325 641288252 930775003 295438448 633864337 519721750 292986356 95707963 477064736 716267482 89972496 594621527 452884784 192080608 789564404 389853012 451126450 596699480 694029496 102788910 177761794 402647223 546774087 798514470 376687277 63997326 8443796 112799093 26523353 57604836 178422025 70322192 263930520 962091956 767401310 316812864 177829274 631262362 251687049 868315788 384344556 641008104 112352253 571584031 601220972 433536724 962933959 573904112 538457277 288650861 623840716 966014991 54806401 330979688 972286384 909676600 665219111 682087114 601627198 171804502 594364362 326596665 438632822 44388073 315889695 325113896 761243502 879030375 844806409 867186828 221209065 591900211 675784903 131367662 239447390 343674452 86442959 794319810 297099202 89715004 197178007 514788352 97923191 71733973 660964510 963185941 414861338 653404389 778705426 159136887 631436569 910603104 421824070 165475925 935169323 970544637 125353389 448604978 94127996 152404405 794312190 638509754 169247500 473733415 245529110 678068733 793100820 583939937 827758001 444609629 804887023 726722962 854112007 850258452 255564982 966108774 625011301 304128341 586183806 741029895 411644217 374181796 32961555 132899798 175744032 747638059 309841120 807664462 718793153 775814626 829792950 962982830 775400773 141659265 746788954 832517046 478542884 944051331 367209356 320820636 596506204 631396981 548267097 175991208 256770872 316510320 485208272 113538023 108288976 957086626 535564627 45830421 625157763 364558774 900407490 281350166 300994707 665476562 56767674 371547828 442220752 912538847 778058111 276419614 111922623 3596177 414964307 227693984 906461020 414362854 667129498 27909573 296417460 162274301 140770004 570804652 585116451 380019735 117252815 226572863 341944889 665098341 76905847 895213967 945821696 192553613 828941446 344535985 598756466 672274515 105676396 730617808 671176651 869111265 113915481 589122070 368289335 549443854 800668401 557723499 452627889 238200846 648112756 635783323 183803137 304931639 263608841 814605553 540986 995730236 570616004 606603449 963229911 250269756 301295422 802631891 432928954 898413668 645451124 143160029 723274739 9382041 594648493 125934637 235905528 868417786 895373853 444195166 503029974 811942754 145447010 697580616 72952285 432103444 934690211 414470460 643374931 875245200 621750774 364571002 549254674 164939082 188312250 774165250 103781560 59760982 824890722 707629042 138106590 338708825 195395011 295961222 144632167 689247959 473606466 801716873 240646362 88804090 679070939 883138604 845288965 744806134 241368898 947134425 779759313 376949164 863621636 537496692 379929354 788923973 592816550 159369470 283136567 83595282 962447628 764442565 707303788 744548609 494441552 719111571 580170716 404721950 317122092 984257973 387524684 718788882 652222828 650682440 932247513 255550274 132447647 968343522 619995869 636542792 985646008 513965835 924116663 903780290 424121229 737841963 668069535 181805256 498205553 281442182 857885224 372836044 542499326 974241669 480089641 171467263 659833145 929050255 629634205 540756478 492054760 528277273 880482887 696946054 400018936 166913983 808496369 984154482 823973354 488041741 810785054 144094403 91100124 97491574 422769504 375402035 206559623 299972052 107853955 295191938 215150383 950641803 663167093 328764369 170977422 656778946 268084139 219351404 589767870 253412795 271050225 204412534 708290675 675212100 345730027 673041549 982491877 609735904 183490037 654774825 973298064 338612107 292378193 726460044 994137134 443540329 595129354 991560612 385432743 626103703 44753026 968631837 790798232 595646738 235360303 342428579 814519202 356377050 308239917 333015218 300218318 637765409 727876976 16782979 958394721 728892561 580272929 337905352 48820186 6813414 252214460 950261701 362544060 562457910 414397831 785235677 698885886 472098995 513052546 172186228 673137126 49263481 125090842 609146676 884168888 539837001 319600511 688976308 23382254 866871899 558030470 724255300 459679666 227684971 432156198 663891500 908256154 566725645 748116850 489417962 805842234 20307782 118744236 362526955 73657760 255600795 898684375 529375655 375413813 46702231 290667284 425819020 804786876 732161745 81709682 614650575 792738820 864886324 988742630 933678272 809382773 527401009 325841314 310974275 835826131 72184037 483873735 935251040 455458209 819767052 490510576 345356407 924596677 387526315 297277513 816475501 555270232 262304949 505963331 864012787 576824512 980760507 741330137 399644682 842651815 5823381 120279730 79417375 520993769 559290379 86267666 602546345 134282191 473523750 794679808 655824930 528505539 3176016 836843353 422716355 701479650 881045457 857540367 135106039 826716504 176099421 332500602 671753689 273859241 680325195 805190308 310960871 905448004 478049752 707298453 826428285 295240724 957861966 224458888 989771816 528188674 555700308 593963706 685222002 682210667 668315980 652516658 311886273 81824437 865757117 278139652 237614662 197284367 178524001 229381185 505502789 773374497 514197879 696014670 496488984 637636142 356332688 596261046 999820187 779086933 436453088 10894671 288807160 366808400 13460251 879184805 503520091 222602815 714519538 102408200 564076385 17583192 581588898 742890966 423127378 566645158 734967639 943670520 149819956 642155622 382866975 289928075 85293739 267286560 27365033 635580300 262847177 445803455 768234775 772056414 231697153 569442079 646620475 890183148 220394549 616790807 537848177 300635203 64022135 155445664 922548443 962589548 606492793 916523334 728340280 202150263 336603841 937714782 299503042 304141796 893422694 122294815 490454308 161643974 699216895 249942025 211322793 140736564 103512796 388442049 75533168 479529465 93386252 185445421 937529477 796570067 894059089 386285909 645696927 805365205 623852881 599274800 16537304 90823135 150024371 285989933 728695630 356669699 760468354 393194076 101248404 527744485 758204899 904331083 222478139 749415369 322044875 253037527 795686504 801259547 683253931 609992671 514500337 337804092 38330481 110270042 381374032 30297335 430515055 181825286 564737953 164054806 543250787 741044136 233290969 217793948 497247461 716813772 965222690 443029105 901786712 594556745 520776591 73824439 392311910 512303224 946449844 456458248 874559400 32481237 303628796 492931549 824436274 906261195 947731324 598670974 666525273 703044432 17333054 297930759 60269478 725186362 643100911 695594449 413807518 738443714 865095349 168194452 472624534 695064667 297322858 243112254 521708520 588958208 286348526 869409971 822639931 322557913 619234936 521083328 299943 929695895 469652145 633383648 642698833 70467432 194334897 830001446 931698933 300275089 594879908 526868472 867573915 388964227 29350483 631793067 745767153 502657095 598907154 922178478 584447433 230448415 855794342 195208887 31237039 111409663 642574729 117263399 931800397 160843520 866293987 78411114 928596744 711394409 571501914 974948939 635861749 153570069 70079736 323901769 257788180 792668559 98291717 436397837 70782014 280697675 206352675 378858816 525307097 465727171 479930573 756718020 927481233 32084237 903498383 617828159 119704512 788820758 376062206 832155099 670313056 175988130 431319061 502916294 996726348 407850207 268090202 372600353 319815735 218508324 324862643 925875574 837300730 28610624 309984491 724921256 17695206 698692825 914701125 398318240 699352734 667855709 107856527 739279445 549772912 838537346 751669831 94361842 882634939 742604032 342611456 348984069 471858150 557127460 414682741 455759631 648052631 120225594 625464716 615413812 364216369 534441259 333258492 287917826 943782847 485584001 935616307 793433173 473647822 468284038 840863087 823584445 462843831 551373995 999702430 753838916 482916026 260127918 502173002 520300013 46804044 697039404 176379191 354236124 987318666 681514777 895363300 460679702 784664307 130894715 488591712 109133920 409898264 783042585 925969326 534684488 693135971 700850482 81234149 74784653 152046004 950543926 521104605 498162493 475065384 364814494 152712652 303607730 159159513 926816670 375809333 394458989 748283297 513785506 31745114 16209346 975862539 285342658 267487940 198978520 588452323 675108654 357846560 411082207 546820181 785820327 37920975 190417234 64785745 917820466 547259420 661982226 347934104 31460801 697556144 433385354 208579213 252611153 658878703 609592551 947385067 629081709 777235361 232245029 307296600 419564655 77487042 919359650 664902810 856738383 156073439 145949903 878158913 178125371 467425703 316187173 711095098 684698154 456876840 471543790 574252120 909362924 364225359 184133218 182758102 489766432 924525450 213896848 106724610 321011988 386889613 164802942 104136218 23454866 238830367 783813229 522683228 750781234 291476112 345278783 369636860 839351257 820419047 264610979 970591436 735120981 314943947 803090855 322308534 297520863 246491229 325801872 765251436 841823839 400362650 31052850 560653664 378602933 814297575 728454310 790160631 586153075 270580686 784932026 920834478 849826773 782601493 571118715 932508960 612523013 156815015 774184244 576616458 794490124 471332844 635158040 695486178 217655132 35454160 970884200 503076503 14263386 984979008 278473352 874379878 988893464 829243879 952133462 739142574 126525034 182604798 310844136 898140879 368951970 824427329 948538504 331925843 91867980 83228459 30205527 200071528 159707080 860630647 402198758 806864786 677293567 789865087 8565428 496660755 391855511 866777282 49531072 892485524 78458194 623288032 419747635 559889263 295633889 57959661 512336612 864004134 215141513 83589194 97589487 836988721 138313307 863410545 686706141 836153106 382359343 809079255 60668310 488443911 353422857 877524314 631276840 398579573 575345836 86758193 275049152 388779502 571990477 537148720 588894968 4758198 771236019 524648341 584199379 934931762 23179351 201136123 423617962 223210576 125815653 292596009 618602727 778941332 135595020 47197376 355778216 383707586 918350083 530276252 750226720 57924792 919189239 541526722 834403625 287521686 690869355 823300311 628247655 724659195 185004106 281793175 581492583 637473444 587538249 255075410 509203909 244411073 560027512 105639513 224312104 885041897 332085091 257087393 154909951 826905634 465927343 358982293 494269884 645144023 911327929 452105395 858960463 37832789 795046970 47949086 307470979 517804367 22013800 991353122 103807976 45481290 478471011 689929498 341407295 481948702 814051316 367701672 255707674 174862109 930011113 542839569 575603897 48532944 999423192 741460349 929399603 263743416 425760878 936061527 881614507 384587907 176552736 195312182 993757211 524631912 955894328 502218941 478399248 989048392 751234432 64171819 818056981 150005295 37603189 980820431 249268597 470154021 332035209 624318121 134550013 286020079 472363573 218420448 27973567 904490134 140736671 230924652 361195000 892532194 749289266 329959791 612172025 748187784 55337208 359832175 509444345 372905832 883806664 923649594 340342822 703855569 682770212 961369759 406317991 641323283 351569013 164838454 708662466 701162199 706056112 601919802 357040093 158494095 633091030 388776884 82964332 100105134 891155547 782360657 6057845 725748027 225235788 455381456 795416041 998907170 745339402 30383726 844403727 857220908 406283570 309617959 247081413 523651661 855489628 444297638 184055182 33481210 705699800 334655174 875692723 95783937 686024778 881827844 664665946 756317620 489201140 647508790 923841009 538908289 61337957 202531447 198878612 847460812 672953798 618185678 684098092 903068550 15296673 289182127 644869911 784726825 830919844 413485437 286620386 519055448 154436665 393336593 107680937 93403287 79069098 894042827 858420928 623194015 958431102 947523777 362093672 292185471 959227069 90685908 52513782 535923056 773964023 325048876 215460055 864385258 168103709 940612793 861666259 510845210 122535492 603933502 834354353 962385292 42129312 919020303 720374242 388767060 512513495 599257265 100150246 432848542 903028298 18106176 605316645 820271381 379684931 909647761 273432232 263875892 988007468 430556415 302993449 448837919 82898260 75884595 606745671 54709114 952156538 226009110 342389479 231566905 888264150 22599703 151116846 220582665 890884338 48289324 229133825 282921833 909072494 890840497 1322707 2726497 417836006 487728530 582947321 325044262 355624040 257911311 666956285 869029905 366321988 592394925 533019259 295995797 994031894 998944029 335581052 401322305 444687930 847524266 92946138 780346761 603306670 132217689 502201503 308280154 421407386 422759331 958462449 513640101 897876 105503098 520366082 280103607 546723521 172403889 7311113 125929723 601496192 894794484 8528865 955209234 963317906 266106972 94363860 349047436 480587557 113099720 271763566 159042907 831152654 206278178 516592096 936893128 713611878 102952984 505798811 408959469 807467275 249117021 606791443 561416135 927097670 28717999 347524457 407855620 219186656 877669282 27525050 267305660 989415648 516662052 699114462 678485267 495566469 324149960 203782975 835838556 642673285 990682104 546469429 339561456 995005335 818749410 930398962 828386447 683801676 244175965 905737989 761977393 523965840 978952240 51498958 32515494 429622498 661757504 462526032 632311453 627942313 837505669 146394862 431273193 475307934 837790458 901345280 695144595 596350507 336337887 746792824 992662696 805657721 968535946 676189969 561358227 168672214 376234569 892598085 576887618 608563745 608996434 285107931 3895539 843550544 320053014 979544777 193126859 267761950 104150603 610960470 319099890 730793370 268980512 605613528 256029112 433607221 48510649 783129755 132468844 354772114 261150089 107880894 167094932 214540537 767937755 904614023 465256276 896319102 993648843 605635858 538909477 605922418 341778434 632548079 789032118 826796023 775643281 543073462 928499699 980508774 210064810 126892660 980879039 570550064 427017726 153798223 155841698 569290262 165688340 968296959 739227436 524987265 583509231 25905490 539280763 684012250 86889628 544408863 583016876 2091253 342407803 704520368 618184145 378054777 632748210 608732521 126212982 426754315 555353276 193900813 774557946 463362831 797342074 400467773 255843381 391650014 591333522 471172539 871643759 741167625 227501462 570438764 99827511 377864087 4146246 300792622 311257153 898386565 301702543 347971204 842180396 910146648 698256632 596701038 13653833 303829860 347640601 164782034 35147049 292138989 193381754 903769100 600600487 451031041 952230692 244208998 788543597 104810402 457754952 301059369 172979293 369316589 479178672 302347912 986774665 837729367 999015062 819717513 394453291 302125482 899281520 897468439 8649039 717767506 832635795 66807738 249734072 95664453 592270815 658625883 299096280 211249 601919010 801579986 118346864 844180842 398652571 818366014 263450338 814791129 921176872 837175681 869438374 91461637 467000275 970331457 652392419 824398494 126552634 720019144 317168702 97526989 661168545 60877404 527333778 832472757 502788495 253341363 265343339 30517393 230598971 640994298 49639347 84844044 612214525 790437674 810871773 327313432 238023289 559363612 227963123 145385200 805163824 274563660 49958064 934333599 479712624 332749133 973095698 481616490 13668217 883722879 396353546 905468720 5152731 61349097 668872344 532202299 182465992 590471273 691855284 203434445 686836169 285307478 926197581 61580802 384156071 464515946 393695150 78984902 910304174 750950701 193222861 802714725 31953949 200444557 483202149 999605338 213293385 325003546 236261287 99841576 9302985 768876043 451212248 201628500 470206118 83041232 579476837 132365816 352647652 930333535 913504995 804548694 58962467 296959678 854063319 174986941 970332782 642806860 473751872 891359352 886705006 227413929 135585590 569905284 673900997 116462438 156877855 82076181 841302513 468947546 184788470 704309465 953243649 768324716 568880242 290540199 528976721 443427486 668829859 735172037 181573659 241123269 425449211 343369941 333218168 827460981 239554949 554032523 577333840 60290308 677666136 70262816 417180792 503812847 709010452 707577384 744785914 212994182 904072271 905551709 674292226 153360246 285401156 966570720 125091885 486251387 636505498 21946003 707383243 230968165 967611800 432502766 351235329 721103970 472400039 955731084 537927817 86985846 785332187 905262613 302254048 913620951 479888687 748924740 366173891 968634672 573171167 162156767 845133510 670160070 863998107 489100945 873689641 566719103 186461297 664505479 738057714 813797284 45100794 440308608 746488437 534797453 574379134 73241819 730995230 666607976 949286863 171223863 251337655 895200782 103356936 495633214 73860177 257141632 511274754 736999481 572479076 137733588 263519555 454433566 794956708 893599094 442924399 3330927 859903766 962491248 357113915 129140122 185928691 475619480 220536138 662972782 941422957 768910132 946972158 285552964 548897071 155050527 156980041 428038669 761958901 240952975 916436916 103836334 836232945 939900216 330646531 904256921 77814309 649803794 269494071 403629364 927134372 154734775 835156068 726205786 241226329 245314393 940110234 237763703 15622777 914433077 256911106 799856139 17442280 848633590 572599926 555692113 584334305 20680050 189776093 349472977 360725098 857676845 527371715 981028667 613021661 485892293 242294696 525453826 233244568 325235671 314893810 868255102 463843758 981171401 330443414 858765813 22489589 488086727 32864161 887865432 935882645 602280868 129489941 490171260 312293844 246702641 594154096 844667884 657388480 32650107 991044776 220616568 634598008 583210343 923106327 103875995 476427114 528967386 609856513 54274850 945661173 268282134 176618912 975367278 188676392 954949679 330413854 534021433 196906606 732188599 745199928 380397714 562430349 243833473 909750458 487806733 524708572 104764191 152056714 619897811 311779565 456912822 665307962 9142445 137736004 112717354 775280547 63089545 69752424 664081153 487187217 802950317 861725141 294713871 487799878 358708517 909233261 708310854 406205957 469990348 977591662 892556192 371529868 274338800 166623877 71476986 665483305 635279066 165017221 346592671 484498753 252019644 37513863 992647533 21141945 675830054 883092893 398136191 755497590 939325877 912484047 339626861 727297102 894031671 80295879 416924631 67194393 65275925 268431026 757081776 630968340 724646320 830718878 797121187 240329099 119344840 99192872 160995337 891495046 934613047 33994830 447616160 473156041 555348552 693858743 17376338 773500844 547531064 204974472 721025309 338034789 554248155 282636050 579174825 383329118 104706480 959054310 650544501 201559787 960933619 687391808 516837502 41118858 234663982 677064365 565723026 503007363 478367919 279061241 838711628 252273798 558708416 269070111 929449485 605789158 86521320 612790323 144075434 539437744 790690470 307775521 174282168 774580929 280153332 242339865 392013676 429556072 393886955 624487417 791912342 762615624 762415941 939531224 419518658 918026454 773908701 305797367 88060992 282625671 883405896 909213337 191549168 197641156 767658646 794122916 319320766 811318495 706576268 185202153 302252788 590599947 792541163 202115706 174872842 846289336 807195562 871444050 214746730 15391610 916867701 627904765 978603984 767230261 464842279 432884237 31011481 521497065 804000608 685154534 566863571 537072658 265639829 960104182 163940258 569744913 309962555 409663400 455475427 830010186 389165751 993015820 76383689 673334736 356790356 488350115 721876645 825905108 613840065 61095852 769412319 434962706 508582457 268951291 780804330 784105773 930945563 971566938 161229874 161832267 396801518 539062429 627708569 990713250 983043078 348357334 729123504 111595812 342170837 187959604 237278388 627309955 758451864 613948505 4527077 946072872 138718348 884596508 99766586 688044964 617507781 898956809 556877999 59222061 222520429 687799714 3735060 376134572 895168375 298231741 698718922 749570886 287350464 972096353 572081654 487110432 699576977 891006433 154015873 358922522 317790613 60084723 924003219 621205093 607600397 58295395 176017819 380117545 228285952 101214394 400866215 235787784 222815049 154688979 463770296 5157722 811461980 931648979 971444283 110688238 977847285 8045864 180699630 110727676 934904244 471087343 688776644 598170937 60507720 429026633 803435523 149321747 362549666 628621954 264295470 961858140 204358663 394007557 841997009 135028724 106612773 799468672 129041018 520193618 580634701 998021171 78755668 923815896 165952278 719035756 127407566 750195335 181561041 609693227 349705471 233049341 810483998 37524939 904694967 242422914 562160797 813802038 485450042 854086315 513999703 484388254 61245483 644816422 47236593 690638308 332727069 584808006 736783302 412798813 283850422 491346334 309717774 759796176 967004655 371281486 873568927 193434597 8854797 245447053 158218616 311056978 303428449 164225120 251137970 14003625 565543459 434541752 61293602 837454627 815694130 144050786 57980328 47771029 429078137 994713731 177601003 239960119 151689223 737314259 9631425 233215795 533288943 812791556 235908323 446494994 775548860 454873440 722494060 479598844 475897672 869028356 280159270 779393887 360486619 330854122 400091488 629312358 724820429 913918441 219151786 464531979 918398377 162253589 733081314 122698095 665427961 732739388 310103215 248564054 622520604 779917798 22236410 531886664 578813504 445434179 240875736 523226067 436901618 249168502 25622502 407880922 452000084 345765264 661413960 547805870 448714243 582461085 377825804 566772439 362199733 975455407 54533888 981140270 170678249 597540177 695798370 429199420 618572677 381231861 433619681 258384082 654253198 877397969 316749745 171240466 177625348 387456619 707815844 550375688 828883495 373327224 709518016 428413004 622490990 507091315 82767293 36951518 144251096 508929442 536253290 506227793 600784927 914719979 687868025 57269940 147900907 397032051 946804587 806745204 228052659 386382828 789340617 29472561 461904343 992041098 669668715 918164453 352518861 965900935 940314671 20812392 99998367 622084821 62742231 807333685 711652286 23153279 303560780 268245792 493736658 666146466 582257910 41513138 651526305 83762149 820046232 500052828 722316639 897693081 741578960 511087004 504234752 176254364 998122745 993546367 893095606 78047511 600370350 414549973 565329887 849860829 521905893 625717907 377053717 95581886 301924587 128935427 585721626 769299196 264525170 636599348 906816292 606872107 421840784 237175786 302020363 203905833 794332578 814166679 509866545 594393757 152941065 319032667 570505194 639128053 553294608 743863731 984944674 167714148 747456959 475731891 237576459 172151457 538947198 285619941 399810351 503931251 209206089 392769238 430942617 672921109 65354781 248751794 101777486 331225114 848921011 788481503 231375252 77496803 7741471 302049715 301053508 44068850 11033321 874617631 766139414 125046696 425494383 523168233 591524614 970778387 614042457 120842730 199380895 493084059 477348681 289666763 971424294 908319950 450359254 329895985 549361078 113777924 33263582 207008666 522288168 200701802 70279057 516379165 757008413 50980373 916346208 171706655 30200828 203389179 306641393 987502059 560088906 108581789 535279691 654891963 519912621 808506717 891755276 160536885 995207248 709873448 551729370 66250610 318406891 927124688 629248505 602111830 76610462 431427274 831235871 371218325 848072031 756370169 620439946 400012224 158764971 491214778 315423251 87348932 456125598 525347052 125693497 605162138 964651762 715974645 423622714 339955051 726798330 819757718 554875245 61513425 852064592 279132786 612769906 22822368 335893476 304668713 980407827 220901833 816954684 354269845 782535560 218143367 213136917 807999587 341843017 349892484 920178194 739896967 842782800 371835674 566524616 699399867 35429485 690067449 799517775 814036643 956887207 754042937 235217584 33532099 663492957 228565978 550216252 131828110 479749293 396173729 569128626 993489339 832821738 350936532 435662644 578673156 320785693 473610939 197833486 470021443 691087099 699326819 981053883 407644464 436263595 480519739 730009054 851466812 575261648 672197432 446811120 704729222 734985806 777894235 599341941 767028084 354001998 278834685 33488012 407672721 360992056 868432520 294411735 690285538 456890365 853709886 221792345 883910013 746213100 755269618 153607948 339877585 548874307 16220600 480185256 620200278 744848066 630469735 940208621 725899631 73675799 443566399 781694250 389311109 45695092 226436579 953179136 530052719 880607880 814015207 465456882 736559168 301077774 615061389 396427393 354900086 925352238 544705121 632946732 955234378 691308903 596896097 997809870 180311591 374753369 71821624 209973679 782587763 656144647 444392676 566364780 147889888 147773416 348962397 279703805 514806611 388444637 988028294 889346438 373054103 254930474 803871355 906729401 187317446 399711668 487308729 455029822 265053869 403560313 359747028 702647370 732653118 938025514 176802910 267237621 328071980 680394805 540160810 191670940 335122825 547037194 13112935 151282847 772579805 42200966 408534317 54751630 649993262 121761138 861635804 431885120 774405250 219841936 678112535 472971512 603651926 565175120 943138943 18394401 743185003 822128934 48633904 58469670 546140974 885940101 250481283 278470880 942950312 26651026 934744654 911436563 915196150 903839453 775240987 227104644 776608867 353020546 12437955 393051471 633374409 151951605 758384483 449541430 14612962 693816842 252381404 607835402 632934998 374623442 692634727 826727430 374690775 671853676 753628396 1057921 367642092 685067853 827848074 477146208 659218176 143392542 698708011 602736451 594625446 548791688 829750048 12245976 617129640 646220297 770573009 353542830 277785273 892878846 878363140 798417367 498545507 262308881 895043526 335256466 931810858 688928202 376326111 293072895 947700575 241993541 399433911 110753566 707306000 715048186 109971852 54874533 203562717 231591052 907008816 35626389 319371419 979553706 385982090 380956814 791650398 537221591 584932481 357528564 71927919 287012456 111323486 124721546 592579894 737005456 287349145 849218779 251706714 569260666 254929583 223140487 199215248 549959515 629925357 333827917 858241001 589881102 204496200 624477077 221002244 157817245 400516732 759619732 495041410 366601195 457654358 461461922 269890036 49890819 351129145 168029090 809753980 49709647 727044563 267458171 237617954 549474832 276773964 386617935 289359927 197010633 747031206 200301875 479511503 810090378 897490265 649985900 131767690 68124040 841186114 426305352 685959391 766659773 58438077 760669363 292772361 855626165 119225416 528589355 635088813 274550929 290111342 885521854 175864240 865260643 239627450 240522276 40184139 1691996 177135570 749706708 697560971 858141589 154545194 473865817 252868373 134998746 379930889 162727531 937127059 254548356 615435407 259743404 265505931 443184036 5096215 33275077 383423675 729047643 472380105 721964105 106134353 768402491 100774546 866921117 962422313 637276705 28861159 5100084 817428285 840146318 292686428 238402138 654213060 61689782 632218670 567956113 633376260 217842932 920832566 389729477 683297424 415103033 612721032 276933154 790621386 911321507 808591819 356009438 971542287 945807247 431932275 109346790 443447 803549400 639093893 985840133 996008904 623436049 502877439 395896871 269248290 656084607 977020029 524358650 83548102 128444738 659393198 326811668 885387056 431635131 835400363 262601855 572100882 920011856 804301824 517827978 231923336 588790644 262777941 933587871 40240886 754060121 754212548 135890233 119276482 533061732 919249000 513339536 632099472 271266603 234681500 163831615 777885036 616928567 372490585 856139247 199029044 177675773 93558259 243608977 997129831 656928312 694515751 936402650 548423215 846301941 390962921 466962749 336470102 858074649 137156159 268129572 329865702 909578863 2744949 703465718 443651493 360527125 341589363 925133629 611341448 606094672 57511620 652407788 280717603 698605753 395742200 490736395 95378617 892724554 762803376 107230826 811156094 238157455 452160996 626628386 968012460 677454384 876379655 95078157 843507057 980983765 373068348 75936801 114557113 700569079 406656935 463392753 142751395 85298835 67569851 183226085 907863740 696270879 831334483 993039724 351415048 840179240 544142464 713669162 115678513 659450551 111078405 135328472 191440836 832669267 661010485 729649682 524170201 291335788 588783432 971489930 563324161 727962858 52529303 107246515 715704705 687789508 720363469 391291126 345744614 982294127 624523850 687353933 827103501 577187834 690424298 586776595 345527458 70840362 442980293 960077133 71999978 250516159 385493234 310705879 280290117 400821315 961633513 952180208 488626001 216563185 828459772 173800985 348656192 905214730 861347991 859654824 220988949 415608437 120965803 415521894 151823695 2757757 667153807 923415120 882156427 704191289 879800061 589475428 625156710 365475612 808924775 809629518 524435515 586507002 813371847 584880529 925619870 671011136 208966053 256787581 285153243 439966821 942308335 319164844 325886680 136986677 274123785 141700141 105741123 292486149 60019262 920724204 453374995 142678932 620774140 367788225 816526493 912473224 626968787 485295209 519692236 407482017 570632119 586759883 7320745 728033567 46137024 968622576 761072633 585316232 270216544 349548453 565098204 185805579 159677719 794001202 479651554 641011625 912040032 654181951 651321125 145826863 631810305 367430814 264412060 495804226 448940050 470301618 723686274 474318600 826538465 307670231 337489595 295453643 625671826 102936333 460146024 796541498 61032399 414269277 948554153 31574474 511963054 37083318 933899548 480246356 457803058 169509801 524460387 397861903 626762866 619185939 376969806 464573427 185681822 598496915 709788772 109118258 536801494 796356907 346975548 869302198 891072765 387574613 78376270 374036677 158849546 66126943 545085636 404554911 280083996 475683376 233809239 272650560 299027471 75816916 530977231 815370302 606077148 362595137 768040573 347677686 191375948 762884732 260375001 383960492 659521067 703667797 290702125 933793872 311663652 896582671 754986589 751441340 938392717 793933438 579057928 859546518 495144588 363951233 455837888 780872889 787847232 990667160 347571381 21461535 755060206 312864824 733840201 162371910 777463506 59116720 975649104 69759240 602766400 591978217 702161321 651637966 590982309 266714466 128317719 700313221 141010431 620819225 113712881 753411545 809226637 271024793 738555140 851383487 831298686 647364550 273884116 301894680 871373748 690013046 845321881 247511980 118164015 593714390 968465499 52496818 334610559 421364731 17331267 831890338 355118620 151059377 942200574 243304595 520377575 733801662 920171437 279346373 753662648 319524491 153662878 579785162 127357842 863799290 985289329 261308786 623178444 177215828 336448923 100697885 786694635 814302554 882549241 375156240 528606534 140493512 330981352 420203871 33717157 367134130 22422839 826407712 178357236 687521650 73127506 24806845 791881743 826705778 161115960 769552238 79331680 180708213 480707871 542872440 136610175 47658136 596902308 636282910 19825866 796122695 371757981 983061949 78328028 956470449 463596883 100754154 324104999 647789007 689058659 774578794 524065956 197355288 285507788 103547132 206377204 225662017 910610116 827169524 248859754 837301380 226941459 620266808 929181276 533199720 188098640 658140674 525648055 576936860 285918262 193922124 238074441 280380078 441105417 15870733 924169016 785406367 590500001 680540994 548492800 440636074 839599339 926228775 272184590 405295380 781959448 639219105 585322879 78065165 973869734 76109234 414790145 417209661 957927093 219626141 278387532 64758783 861383603 438980731 108179442 772102853 76320004 104291208 852928893 288537560 882116322 157743509 822569693 668688945 656563854 458264396 717782035 754641712 960685957 188402399 274256425 160683054 581301278 297711100 679980188 264403872 306791465 184540798 603788004 401751310 505798793 60286895 278559544 753928708 171391835 80235968 69458269 391048497 342665739 463903033 305436095 401181244 562945110 797737236 70363217 29787612 893329930 36227091 813181641 631655641 59231624 731561356 159640878 781800258 811723665 92404110 154436110 621931181 541434075 850151372 152059898 425815600 392915189 776158435 692224680 336127886 888970905 825904295 131976584 343478389 805198971 67271279 710574365 689194945 405700039 18450991 553949857 323654398 654149760 464845343 647866261 211845104 856784877 717621434 265032146 643382092 146316976 358427736 941494816 656295646 891301803 819356792 130994091 398692625 307933072 796129079 905199178 371405044 160787331 571908551 553869869 379235004 873031742 276459389 305735973 209429590 583658076 737278600 558268903 246050463 175554860 597059725 552532269 781939185 917151928 894607940 531423621 61429843 398571511 368522097 927595034 536452426 520454693 123194897 213304967 392633831 49346200 550568529 470050445 383627796 725389413 464871650 64411794 457361908 721581302 318566636 961958057 634332799 914263457 691510255 419859391 147652413 9704819 473132002 686734923 515430210 528023054 543691054 319614159 413274133 147579474 652931975 539091609 784727462 482517299 210051083 134883450 54216431 295025584 748170487 290176983 397644858 605471316 342662535 778463606 155195551 241168902 718685967 220862093 684766927 335073837 861084200 680290190 120492333 392862425 317391842 89946721 568419447 805769519 300910102 118976217 673613650 376016787 489256888 824044361 953396157 591055542 359803171 81933644 465355468 546177860 496725195 702462337 191703701 420510860 136800067 717136344 801130673 486397413 730551339 379241290 24299303 154322055 762166568 847697207 230242963 582761189 394070568 804861877 162503464 790765479 291773009 394787590 293391095 184858144 400109785 114367256 999280978 631398779 553162783 416731181 680056280 920427852 921986672 388772591 25028898 145311928 789407436 138424956 414672100 184695329 182556185 494502669 452868968 855644297 338337923 870514265 780896446 633724483 398948234 288502019 84367701 203734915 861699899 114297429 512726960 742740819 658533522 78405694 792691709 20420621 572436496 45124882 101524218 512637392 826313757 594284598 333123088 206412018 912332295 763746873 653810414 481209557 340496185 844333962 795884550 426442351 827518237 279251973 162795600 681318803 932695838 603056927 880695866 731057979 69485289 952516869 173336985 166674543 740368849 141120257 269921529 768372760 371134708 384955126 988761948 471831521 129411785 904743455 302952181 507679079 370125934 916728254 495164735 681021332 809901662 89523108 308765046 11831453 542122937 108120702 721241750 397979417 987536107 426940836 357769345 891972014 205412430 839934474 608711596 326960238 813375151 477257204 304172066 391780734 463293982 851652961 418261039 864389628 735731114 253189878 617295940 598365426 929207069 851833714 116737384 753941472 951308283 868685265 132129344 790717888 712869933 110625835 112896837 648751355 634409774 967942087 567331296 295046183 36953793 183191702 262878556 635363018 632334833 740558474 343424790 660594528 638352345 311891429 360571472 439376149 343340770 963974007 135966291 536334091 460133712 349281509 668929029 108419181 119307808 956262847 717131461 288267727 470120621 373274297 418019826 417689749 189521580 113154341 605629597 817031524 837655587 634211486 486244520 900705321 906366057 185786566 119756254 600409037 920241889 624365508 106721354 226972642 356445247 249584114 797422148 724746648 307462710 501164465 711679596 194265374 838869290 792465719 424656299 127350400 239208647 659520435 338208129 416047975 868356117 727506740 940252224 129567702 348286424 291924343 561583359 167869914 164861131 277199541 191914420 536482468 561759523 283456596 496045542 46510597 932546454 120777297 736059 475068372 225091252 130938778 601238999 368079945 558618 859712382 40002445 147369650 95716201 552504931 373279187 121732867 285999496 856867469 474147949 611557996 960257967 356870942 285561051 871272777 502267826 146952911 888888481 422821755 811343834 330091789 86941254 895160601 372601143 974783418 995378947 227219776 33615322 727177296 582361449 219264164 395454135 182960706 709740166 432347761 294692608 417700887 912583347 246945687 436586909 412626962 604187968 956589893 917781327 468210368 366677071 115924381 125036103 583763399 880401283 620361484 5861538 627399866 642615768 544676156 451502241 743065332 36801421 436419764 986005603 236531086 80518038 954696483 890218173 539988955 32503730 486182643 544571723 228806352 44924028 3540011 915878122 218452017 171003265 435989416 85251052 312205447 724628828 672346752 963413089 53746844 310534809 771851995 136360308 116551284 786071676 437746523 120533977 799058415 331937255 303867659 417741863 89605511 334626551 891463424 767022901 785080955 257512700 540804998 286315499 170544937 424107357 434412669 271904696 57952330 671843599 232067514 721521717 105251447 168250281 656236920 993415660 294770926 764207253 185791828 897746356 793401876 319495676 853774285 409231947 675614818 572202100 423530996 215564111 129637957 330066156 388502223 302896682 306420221 268918126 401414780 832627956 336041910 73527579 163627540 460189950 880703833 947175951 380011607 702644160 494405327 774283293 966860387 692592120 903294451 799300732 9266681 268017524 561795483 668890835 208474772 581286255 757831059 488836222 502771082 47887852 236425770 906238053 477651109 891211492 230370937 199256994 818100034 769025119 840206774 582569103 964503323 427675861 508595810 714136996 354833258 667366576 226338933 82272010 198436485 362090534 800900169 256876235 156101030 761895999 906987082 643564547 764967527 600492549 873917942 204969451 120943423 405833556 946209028 107251194 279680106 271638071 293889400 757118980 332984141 344431050 147667242 230812236 894332604 959758069 376085055 234551977 612424657 374042828 727882195 365948635 906920448 852044386 927355790 675970319 418375953 995892285 649929149 604555316 759647861 958797237 955185726 277819305 35547166 64153255 566810492 131790947 528059919 543590561 344067672 245134894 939037820 676645002 503971830 972574490 356386212 502788682 496791238 578190941 948991924 780815691 349777429 60679431 421337020 354303972 407469740 896398505 205229937 307753137 196779616 275048864 322184083 277991868 685908913 474895691 885618710 99429498 87883434 126486302 634278200 328842851 205934326 218004683 88960601 301587684 793902367 866653322 452968787 652872641 79049729 524767535 457851625 628507993 705599873 966754716 982039031 96761408 658901306 979841452 998418595 888444493 762999340 280794894 159218141 222970567 553347813 572372507 889871157 313578604 703228937 211497362 717596814 576540188 934643765 387782841 938409980 780578333 459316273 270157587 900499859 709805622 420374491 806836193 229541220 669216842 883933097 147765721 705955963 691670594 914120091 137352303 117682003 341037165 486623884 827465015 64645659 148574597 747486776 421605506 611016740 521357615 282273041 914499555 104797935 280814989 389262919 615753148 677027236 761851509 782147087 191178163 585904858 786086705 637682524 160296394 332460286 85332304 988172220 999505033 692797623 590985219 702644457 682082410 334456696 635733795 879642117 85929120 647407329 921858160 151270371 708541776 174344682 912877884 219931347 722090780 713301854 565185248 706784057 702929399 734436580 375315763 569777276 785793800 280001234 444884926 831150976 109634730 769597313 512634076 427450572 946249825 436470667 121280344 770151347 237973614 66492395 495511942 387822841 321408561 605679801 738864987 775314186 939028214 470491775 682484593 980584830 195785196 214798074 133345029 779570538 15924830 367483884 442091622 661400124 477788462 894535730 30252948 317180619 575626659 750419310 440850819 648048694 538947155 717781891 219983975 907618361 893887044 640074773 714768688 91713883 343209995 299095962 129654356 622103923 956780209 970828581 245726138 510765485 924790989 990328299 214138818 260420180 949170857 718014181 814962647 223575718 364884184 347698337 245767107 342273803 396596891 677422889 711693 312820127 741244351 424013455 524751238 817011514 696890169 897088853 668288501 698005301 643147116 967577978 848270478 348078701 195232827 47615674 934309745 353120623 114891392 853793708 192466898 874478082 151232678 22970945 832515756 8877460 131286125 446728281 97845852 410609287 549233155 961704192 605190860 548443747 741433474 252663824 55868303 641383841 696379666 26281174 717621450 984133093 13015174 937214079 141860543 78886413 429773675 290454473 753388138 948451774 287669904 952607155 368721610 419483196 71703607 316201823 404531975 60003417 692847068 709764379 169344944 472722732 525912436 280109777 441761226 824835439 174290451 210216789 179425404 344355089 379768071 610835996 654114374 819224207 243742525 744856630 258656473 683881170 661962650 463955473 532081903 130265718 292561838 705017432 760765501 565661959 729605742 384401514 53384406 235707550 287840776 188423117 80032320 638159714 292957420 770622382 462138133 456189238 906980573 558465726 388947438 796883728 350960633 680827442 473588583 107569128 978803458 3065180 546018993 164514618 413302885 919595258 312544304 297690606 461562281 787688691 156424214 102703842 873807009 55381162 79111993 810824885 785091418 14104034 358264236 813081658 828848480 460583919 223497400 68873770 780434343 584696223 759562813 119318219 568960898 805991620 73041233 950374187 287695003 63209903 446524005 626202369 901395472 745802799 436704858 927646653 80192798 287522673 465294494 243337812 599625973 545202776 870600778 907787101 794952514 313009369 3297587 352306890 876269424 551384983 422601027 993561475 193666135 400130493 835172186 225235238 636582225 384621450 276315758 324343306 614478369 17273524 718613650 637280971 255966127 874462138 742534479 902752455 71909405 856959876 341068444 242934538 991764985 8164127 205257200 407208971 402520219 25396227 462503017 62793609 483271207 768118682 486052485 548800213 415160902 47792292 343584866 62897204 730668554 706788777 585459337 291020209 861134171 397350816 862115369 447195916 477330639 359553635 980590058 35236619 121031983 457766083 635019550 752108385 829959632 271886111 959468237 188624817 799635877 524138210 634150269 288154152 736893034 190439776 180017109 747278841 476765700 420418249 692236852 524409404 237653389 271851123 260801970 726695805 699132043 352055406 369981743 281686285 405447637 888552669 939215621 821121349 563456186 652792750 293033651 68233248 329675024 483467789 309993795 791441358 337724358 583690927 921416589 477624003 139926665 657222586 644625617 621129735 38715468 922935239 804599163 141199556 311650860 127436772 637611623 844346151 264053983 695496186 225672638 364604607 943309118 10371093 669206461 313686729 23498022 395053378 65230152 748156011 241162021 262021154 693679703 645107328 604702486 536843551 301652478 343988114 164334268 276475190 68705236 266021171 943397660 706878259 706556313 741053127 263962809 434063591 595496730 948428185 229573662 678407241 721468776 418986415 361972812 677655496 507461061 409469366 123856115 899408268 596917148 229946825 683351317 152852173 430072299 336134905 976885481 418686386 869156288 128369413 588114993 448237824 147600840 469024035 669071681 428407462 798790748 234908169 567129674 57002486 714841921 136460562 84425719 506211158 892079255 478310198 657531383 576154794 168111215 173811461 597176914 643299507 885021423 477573952 982316792 736341900 675528485 516967100 867089928 950926520 918702288 829371451 670742763 927709142 956699755 764053504 603865212 37476246 414924701 289969360 282941251 130224632 765168888 26443231 254926424 146946997 506031906 868104313 663079192 953086886 85727597 516507549 588848310 152862166 122371240 867571279 425559477 439073599 836111756 684581571 371680594 684541441 39470460 424378716 211069685 553337821 938064850 778069461 135620409 203245076 932928371 80983725 374076746 32123915 193066667 48044720 387392344 616572574 440239612 269203197 8153710 282221722 963070901 262639019 811231903 134562663 641327901 733960754 542994252 166016989 867138228 923718774 275861470 750073774 625969074 264474653 24349126 404434353 15947613 767110124 277130981 505421279 475140205 261073943 446034043 706096428 6332929 869618534 519561773 504009294 219446904 876467488 661706055 539286310 490152582 216982995 163968082 235394514 549498489 614276237 452107889 155374574 415510650 75416587 131127894 513865007 387427248 609190523 490832133 779165578 48394710 609113840 122290957 914916198 670762254 62045651 634288413 125578352 176155854 770072953 516441540 276835439 643180203 382694315 159142217 478395259 124324337 350317745 598364369 355539745 80785500 283870104 785750597 353663043 986030019 278684076 609416068 202954382 377444837 848024359 291937726 133800685 622440183 597460920 697238593 96363682 80845645 800239553 545083395 766649845 82196737 24532101 187934764 950224465 446400080 566615553 802268416 956297708 204240639 65302188 239862482 25288660 563672085 397541632 282477617 153922608 525543863 546357826 790628398 537304803 927388254 386303221 735542540 853497617 933694572 643103994 527841157 782040497 879983055 195578060 356941114 608995713 658828760 643475634 458443438 816480148 173770589 785364399 677496767 91175929 363117639 988229352 487456634 322084398 309706453 584250847 223702294 431632641 503575357 931695221 111361041 315366894 56305811 273437525 987311348 69416262 981884562 925645945 113266894 137953842 81716734 542100766 986910094 225318245 209878206 408577631 991144548 970227547 205349563 453895681 638771471 728233498 28099836 880127779 695419587 753357157 454228369 538098057 254103553 440864561 647189129 604413296 65258330 80042794 845145506 175934981 185031458 225029275 832507178 569538841 361465684 350400619 390913822 243076718 730225787 431535184 399877502 883422270 529532418 455720398 857481354 482165599 286084818 302888 865477770 742851907 799469115 391854426 445062676 796756790 18325439 750604801 554785228 677205268 221468028 658211400 800696813 134493292 805101001 643082895 516528220 332406306 594991209 5905882 625142440 211085566 780181816 133286881 63023284 91211675 473696183 789860652 760221313 618449000 229630790 726591512 78630626 942691263 268073745 486897209 196131036 630976880 127007509 920995512 826792629 644765692 765764901 998891109 42506467 990690034 831727802 61500439 691478537 21961635 693210850 89797885 158943424 523585640 801304181 310479303 555295696 273937888 996124288 274398826 730524416 736245584 576470964 409849621 912739798 195510302 607675945 817693260 348603736 384906036 25825609 654627451 779578160 407700213 751071550 32089174 80579555 580693950 494272934 171480907 913208578 114416061 507935385 478965748 282754342 772060919 391227699 943434813 453757464 322959741 658979424 684549837 291897370 594393811 547628634 83701080 689537745 632037617 752488593 793827396 293716267 593881674 311530567 350216892 511729102 561441252 704707767 682444360 556977927 464559246 148756878 798126264 434135390 403874813 938933099 820992587 898320145 870708900 264587886 961791609 256399018 388953926 914204401 267253262 123154426 484126154 112556637 189251863 903729745 560535582 122043631 268305770 684943565 765149750 76585694 855332159 691614684 853522293 455590063 446519476 836019299 667498191 544484124 714133219 796071757 183955344 466226849 234360342 661881710 180785524 913933140 36707370 335464195 484141527 851930433 395772166 413347673 573915841 483011182 537998750 489238357 128738064 334040069 171319794 243430344 934446517 569110904 822764063 727161328 826373020 877137432 682088793 780489167 29414334 567125462 514560038 102087971 68427251 3486685 236685674 315952835 385703605 276627415 312004057 368403191 964871735 448357413 183067447 392275092 203556834 767430230 45266744 712545845 892234874 727143004 966429216 690836449 525602989 679638573 460233845 504191108 665582521 544124367 172685842 639149133 733287639 465229751 142027115 108182556 886059647 736551279 141368518 18847957 685336022 380037399 645472401 781143982 393655405 457993165 859147434 641051668 231722802 263574373 521360076 971467496 142915006 917926603 359217097 695512853 8998099 280750534 6317359 459891391 982336080 507074242 301169150 223739770 890691640 61765326 404071052 191185335 449220235 46808087 500630752 658853111 758469498 873523745 552028162 94897665 932199918 18069451 972952081 770115935 728175119 400028896 617158548 274533844 345447195 568073197 304408593 258303857 734898477 187463704 334569037 396726093 964083867 698623787 276898773 792094805 566970772 726236810 384140248 311071767 655389513 81579381 18840566 390301560 294763323 416689122 79894444 298806538 935798316 777562203 756858558 385905572 575003270 20606975 604526888 608191086 370186947 261253207 712563515 373778557 768149245 938146378 645875657 53467031 671967656 180055846 636450412 796170822 505685441 415968525 184450731 5573653 779656574 488525289 562266229 629372607 287694325 500108302 966235267 22439308 966105299 405314849 617192789 596546452 831638398 415204840 572839129 821160872 525587235 532219054 767381905 621928850 125198525 507986743 936015056 699716646 371060044 58095945 193692455 311411472 837588665 803155603 239901890 700384841 545244899 116786450 526409501 636369515 393406188 81026317 72934219 114445141 779134438 359203383 58144559 612540627 604587568 724829121 652106426 936218283 143973913 174389 646168178 52875101 161676150 894083132 829931698 127800255 488754834 617250182 344324846 294578126 355037612 448057339 788754304 382764958 144239545 5577854 482110183 587161285 173614390 210224227 205256247 851277110 437066705 844696305 369768405 95985387 699586214 374235470 557563981 961451953 424505561 596416537 550571949 357154840 760058216 382060804 585539443 435114036 214975630 203177644 222741402 55938264 932003570 741385335 560403675 659289267 145119721 255232391 395156300 623116844 546951164 689592758 181348389 990944722 766021606 379921733 199693818 201220233 118731980 553665886 495337076 48228517 132807983 549864125 831481462 539870546 820115647 621185990 729941213 932219106 411523219 872280588 152907643 994806606 116372579 597440808 630765462 847321430 857371662 385753577 296375951 914772890 144514903 768147105 358452447 881708351 704173098 338460660 575469498 67549615 358669265 601607242 869022121 554262880 945862996 273359427 636583868 213174181 477888970 2555010 879662534 474961033 139085319 961970975 868262965 333289233 319775493 242721518 245951752 624330702 919790585 707120769 845262823 152110365 810233902 434165275 985148336 802084837 852959512 564586739 492324928 635472470 306990486 774566596 16525305 357790056 599801784 226791289 862882755 187358992 295591136 863769280 364803451 545351870 74365951 383454546 597131210 842448696 716391294 924909430 614911461 137539526 886592290 20857070 456322409 459800775 496255938 103578350 936272354 448210704 148190708 769837948 507934561 743806738 375785781 392057172 407252765 173600121 341802235 693773659 488480145 867530365 78362128 601725049 93842545 375073092 34052509 135522962 45949934 865243391 564181452 155997725 41508937 351187668 931743073 50526182 782764332 104901356 430903609 532432606 5872513 878512269 478345414 298182124 696610946 527753310 263895681 914439400 933045959 145877793 24465272 111778804 35564366 262403853 960826207 908544881 287005146 759042167 185341685 319385849 194961824 291456810 995143613 195415572 594755958 746814838 474674376 616587191 135732983 318879237 181022787 297243244 519530571 432850982 807229326 572355958 421662623 347979371 548752343 720222058 650933962 116470836 650251406 282325352 116489811 390522400 132543074 811000466 267612544 529301502 717834979 501713502 444982947 144815272 984352388 95602203 580730007 5658363 104991679 246986161 834379169 60407105 798081215 189174715 687038557 897424955 38076566 900730429 124603699 217616641 763787705 391436467 211782370 248681517 336464167 348213755 554517235 12561699 994575889 468923481 279030248 303835920 32422788 502154632 791470994 519776348 676161065 386810295 557217326 579763218 687976780 255702636 327146269 949466988 750145547 866013143 39361401 350423907 769057088 431160312 575615669 508900308 76984271 856291175 105245382 165157886 298881974 940688697 454032509 521990386 902336176 213021005 802449839 737915950 565952794 711968671 643088194 215643603 822462327 414233126 752294807 375099246 614762176 654610087 699357603 77207501 240147895 279292740 200412362 563088358 356387995 513013768 425208950 321744773 641461737 443062717 376072777 735440071 524028812 969619922 887720432 580598847 751831607 594184159 119775962 344752236 11002251 12779350 969413007 616372550 671812708 934192035 877591873 85838545 769537520 344842381 4376308 466395564 228205096 197899812 441838021 741116304 183183786 29458003 875051797 667578172 341358627 418993388 804456279 451302016 334233329 451812760 231404751 412410814 15156247 32924718 48033974 507250203 388342208 511704280 696309845 808948054 84049369 83863260 191102618 462516310 458956309 189108587 63005768 560892761 398421366 307592514 643562304 907438978 506904183 247838564 183202995 309019256 200424567 50272778 46991135 809033299 187840981 101521567 96740806 570203365 32153612 315122874 563136679 100362212 450487841 801340742 132626292 77379595 472363961 503304767 742109591 445630067 699382885 469263747 700136591 448273235 207916959 394403326 71611017 513903464 802078826 940276799 87099513 266558599 367151860 441676492 543657802 717746392 888118338 770940575 332538946 831398289 441938960 468156572 631510087 317074477 743280946 217949024 736232210 854467951 326033680 269460294 143794411 662474392 284678665 596674439 61313557 743444122 340579090 185484741 718603006 61557228 714907295 111456012 542378172 79145361 644784298 66909157 654409365 965924309 803907906 917473629 683885324 195106816 300507956 617204922 111230522 459037019 340502895 36761020 948674529 264637492 641597856 677193188 257687610 826787599 758926321 844324760 506447366 134905515 325787983 356130307 878934740 628168411 226670816 405278035 85210302 422583557 208656798 659533259 458671313 582689598 832958151 197414055 777503351 884334760 956682098 560106090 591468592 5550684 112586543 590346266 850105267 768957310 930541344 730429168 698379930 102157600 305408686 256377962 791462742 397999004 832921839 341178778 639849122 58234323 693117232 906192310 676073530 442325988 832459857 566450626 764513887 161090437 10874747 457917802 591070138 136736319 927949701 728694478 496007647 453982306 519825406 790688127 978223083 340822544 833412690 911481404 181327675 617059550 587164950 21176436 581483677 786796659 14551888 242788185 798551074 961876451 409116174 193637316 223210410 170047499 7522970 362081010 170766374 507077583 799696416 898475897 597154780 343665898 25812454 192854644 276528491 180826354 974171342 976327317 228108477 485068706 659660175 666724387 767366852 813586860 7478570 83419507 908604781 569322585 40243068 45516593 871496919 173296598 868001977 217030979 803292770 979781951 414419936 209401927 406690139 336986665 934520217 393268622 644498247 84826450 376444178 816756249 401009812 759093207 736999734 280445184 743348 275718346 460217659 103331958 923238964 897435397 358624618 871667140 182642810 537129093 129887475 244290944 600868038 547203095 549781249 634287030 716498170 798548159 400548346 259622042 217677783 2852145 140055311 302914375 290852087 397141429 522046733 56737630 660989252 538390480 49794938 288983462 776798828 405658495 634923263 207859902 611075677 76213572 116951013 575496458 42574410 452662584 776654286 573336977 323746088 451956572 345296661 27145729 338613104 274552047 389662583 343925674 254816292 615493728 452704600 161115342 409289312 371262341 855040610 90868028 983726763 522958615 593905312 254159936 782261399 574108971 994866541 842347446 552725340 200803971 45204509 117336500 818122498 100477238 75364496 636048776 434279441 575391147 916829000 962565710 749888855 699663318 87904445 996825478 141411822 472159521 576527949 557901588 964500679 264779120 356062952 73906510 896042684 621613317 581889164 602600856 431295358 200011499 591356247 90263328 558757 645173024 316688611 440163040 711132789 183424884 163975016 898151707 346843978 480524262 476265573 769315416 995341504 49706300 15041738 697500207 42792269 121692828 451754086 862201706 952902981 96723494 162105839 616856349 38095768 846375837 546774040 469044219 234180674 4180576 788264616 570687261 478120235 785056114 520196020 523542823 362249690 844906992 894626228 291815292 431831807 832394903 179827107 429059226 916142644 730692278 240118240 170019004 31930093 162524372 739668604 863058907 610444782 729663536 555192112 257346779 24690670 949243457 887091268 220368957 789596102 17345906 502235907 961225624 700739519 153032325 781360897 927640864 748454891 941568537 338393666 603661591 76454923 834349217 86468346 455053132 920077217 896125781 263143830 368963110 9904973 272876608 784640773 914207453 535255184 655007593 558492327 324938146 116543667 554480970 470217594 978136477 410357206 956645489 683969862 346804267 282906544 591147668 817720745 215243142 835623382 888101091 678021441 708759682 766777467 695837543 277462006 988777848 946085988 720041690 882427290 739292822 266568321 48366467 225910831 657906530 624049884 833919835 905677834 799079365 438783021 21071400 562329171 520293696 801995723 669365113 708369802 331076513 241801388 374047073 321380756 31974195 28152821 9716800 192490979 696141714 424623369 542602274 451798198 786147614 386525083 987526934 93408169 381790471 709775826 924386407 501927651 639262229 137837969 401151143 502115559 19594983 169844426 995364825 806168653 305811741 4123629 120841561 440545169 372630557 871885158 293554275 939500253 831569901 423341713 987195651 59166803 57447443 355121927 692394202 626958605 791050058 179048789 49727722 392157437 148932665 515485197 95540234 645139496 671696973 764384736 542518270 170678005 277841410 562250053 672906923 815648738 4234057 251883941 512827990 622104922 642604486 513172130 346577100 892758078 470336910 318568582 892097408 393394255 467675631 70871108 425057622 694207930 988760251 963936108 721934604 528731054 986959636 25680270 668075636 30244738 52947325 841207139 272533957 810545020 207099100 968394176 728546819 698194740 845919507 558466028 31197105 725707856 129133976 982234378 229552252 262122705 87581710 647166238 314499465 190105783 763348892 860642179 624431044 578289586 211509762 590429207 181412582 19508414 971061280 647560077 759008771 285924619 50755505 337657542 602780592 553418258 269259227 265198289 347029301 82993779 381455187 81978151 607460586 244137312 705560133 918919332 58155415 515591918 324316635 76903736 912585702 347569618 538597293 735978963 741319405 256427005 314905288 755122023 6318872 338354796 450842102 217383079 764576545 303132162 602553385 820843381 70845227 813507718 990228006 372600538 459401769 78109751 746554713 415072341 143587644 851710301 81267804 34910643 748672762 598462937 56934678 100606873 155130690 455696887 135145483 85706588 422369157 60952645 772433127 61205355 321156328 757294605 402565447 382805357 92539017 485008664 321701396 132883804 52086727 635469310 251134813 896606655 613913690 821260353 961250497 842038656 72805237 639318915 970509372 280967289 289677397 455015624 496519747 233756841 895910549 415409022 841525945 151292301 313077960 424625475 895310385 231337454 280609699 780625719 900732151 261358137 703158092 335694546 634570964 663523265 975179936 326329140 860894547 152559249 519929746 744623018 468921153 565102446 937189267 234932908 612886628 695055938 919648311 741695571 400465277 598610041 663711261 595092990 514982649 835461583 815743755 473536235 636738045 59914209 855908336 523509418 195717864 957378588 10280413 920414422 119880844 860546178 734938718 455921341 295847358 366297144 879591639 254715135 766786775 694898713 314746914 1517693 372872982 545813541 673745301 485671153 29227379 323100820 976690436 610457738 864237145 335791741 980384853 822843942 831863577 932493015 541418083 850075527 823758070 403395244 39947641 658849641 142417151 301586292 989575145 813483014 367953192 169660411 229884837 324928205 904990070 819954018 304698456 982462971 72816372 475096223 780494169 635763459 222689363 848019487 105971381 767029726 829300737 718735273 313080684 789180380 842163082 187757037 232918127 214619761 983017400 97197519 76149889 970951332 239026006 836633851 408264450 819597456 343642919 985139258 29044406 67473813 766081349 301744626 607670322 728264341 606290947 195957951 792143261 694217427 67921272 597023337 25286189 692395628 222586331 98968184 122949456 256178959 728909029 235514569 848356051 310115963 966249974 219388938 396246842 864888213 963416553 135942217 379795313 547680415 149527008 17524006 133089880 755731115 74030310 406732561 235691583 319087544 15062658 862325180 236576319 22498651 894072394 291200664 856279246 39126937 175234587 440733196 256097480 172835556 563994561 55908850 958188341 851183981 976235634 196160245 7932449 220659180 285162014 43281004 961508289 415844213 316478170 192688525 794081682 996918011 161322319 950064626 61086273 187617478 980400939 983109564 390334500 10699405 251596657 355688833 145294985 772803720 894603241 278875094 297962451 406609451 702285752 876168267 753146128 225101420 63468729 260401604 878239663 277165747 881443160 597947922 888820381 433121044 477029732 283599511 539083824 241637565 178536501 586101988 989542685 952005422 135205957 569619428 939927261 631643437 998686752 638014088 104063572 195295383 768485160 500427146 665071759 478971496 49043691 481445082 365976500 205972808 743682055 182193111 518018029 174569266 47749715 960337506 367935291 856000974 719238103 372243431 436628878 469741239 938436058 402252459 951043881 480021113 700147970 968841512 45114659 454705084 727002600 308016771 860458869 359131591 87227772 84234839 614938631 387643735 437801578 31171167 132096676 609165474 168798961 653754604 604161242 362801422 87195009 317395588 599472698 960234082 714457372 842527781 691806568 289729344 262556132 960881960 372198670 621424960 408836828 81604949 700952734 429856463 596770701 204103511 41263241 371139988 364104132 381054661 348848303 790523318 987972958 344277693 165919789 668219617 863530289 361425380 875814462 152535383 348080607 272016746 500237168 664475379 582997420 988318483 516813457 690723492 632955142 283152212 506889841 476398885 421476135 946403435 341004523 61187593 253416898 933516780 836646458 186077002 656926189 769365686 866418656 240563718 723068772 783416524 505769285 812715945 509779561 901097111 212634304 30070257 371599857 681591492 458398810 586074465 227491513 168884581 778032803 102088279 103920456 475538435 115277420 410258306 59654166 256039052 950299513 866968786 258508854 710933368 805226588 736340919 858903494 5219592 809010840 504748270 535239839 997902161 28908580 865044012 134373609 197343265 132208040 9839718 534900886 748609460 80137921 254904049 607386613 913395091 367874853 82455840 569637049 517730909 70781898 785542795 456430347 416430667 178683395 454242120 773985637 889526661 290275004 194748729 869496851 85503677 577756807 714392376 573592966 450191659 15209849 652449153 492530768 268571870 101447905 488770014 717650661 47024333 360825291 28815639 705271663 198919992 2171 237760920 242988895 654882217 78031977 228233213 580554199 864548400 23662845 204397382 822955466 554642308 969512089 216759753 770676314 582896130 543305537 90065509 11677060 502670673 337990003 293850749 305125976 829127929 394361890 460395982 254869643 435806571 842741281 218639832 58164340 515686183 453884868 124220022 966373607 350116918 477191351 46868509 946997294 435343368 681299996 640023385 541345815 557645218 971077093 795747822 454125557 823589135 307972870 251807580 354634439 503520966 768000400 834511911 12697449 595914446 167097425 249510163 502016829 430147706 341617033 351387187 897605761 274166717 85346827 844732798 514249682 490252014 149288172 376151895 720724627 405510628 950910345 918859994 506608675 605509756 234647806 958439988 250005717 127451322 860478861 56499293 314113380 916895068 48244956 956001681 249420752 731299519 187555037 400405291 310015276 81027261 875560065 451561484 443007093 65774267 640307106 225269509 45956684 616006057 575530127 658248209 308361657 747874828 165846965 286043260 561972267 137298959 911525202 253043128 78734898 97450577 496995740 994643315 858962209 877413370 545346308 336905638 149860989 858292912 422638472 296533674 868533375 622626384 343056608 213518832 116937116 331014836 32159155 388104873 648220767 211123298 394511483 827010809 154621213 957239131 98357897 213279466 277709965 256527361 467307976 371745556 401430973 747400977 898737001 822080149 875881150 670222503 610078985 883870299 495834235 810708602 616469370 571931541 482491445 634642955 488948781 912608139 694744618 891709107 933972748 140102528 527257048 435507868 963062636 379304142 108314847 743513051 356120359 898054965 946239101 497850293 11558491 569132519 962556031 844034599 8022064 693157358 963119816 750027134 540047246 12856519 359072347 744633133 980218769 162460317 183488437 889972250 758596105 48891173 103720327 791939108 460506845 781104896 286789423 906602596 487128624 463911136 813569967 196478848 557454620 148948093 932988260 389607782 267997602 230315072 470732859 582539294 468700981 20582698 315049602 222980128 858218109 548434399 474947995 562820731 903364956 753963171 62500270 866854184 144024170 602544456 390709264 522876007 842645788 570207710 403824321 238971449 452316990 407096169 563519909 703051882 843404846 725851457 440552962 587304651 378762003 730618216 811876259 911359018 217625385 392063040 571174085 782310610 172601723 409432469 209607259 840274940 80300600 98032225 96029489 128572464 76261766 255359706 463158561 272139890 477071041 165712024 143715555 263583709 762408203 378282382 266646123 966048139 444995875 412500583 699008085 939406448 195989852 389838115 393809175 794295268 981576958 445089254 252750806 580645735 105041019 59895835 980232829 402473736 498456910 696544855 919078225 862942662 252248220 405139935 946476286 74349999 621469862 833014250 703349453 340339155 653566343 907356716 598378822 55668676 494663486 433303210 703744089 680838358 241326136 663521851 231407894 110372433 532245667 388778541 64566684 492816719 770167220 697484487 259748722 276811628 816418015 339772299 237753683 920635912 64970596 76527985 213330037 973304421 799499248 944564419 835492758 82232882 657813422 235851332 132157568 795563353 552809055 447035652 767712377 520643855 792708785 773284620 48561623 79259320 151905285 305838740 718803485 456376868 76381782 155910655 373424977 159640987 709092462 882223623 366773720 279668178 197137279 835047963 746389562 515692212 545789120 961802470 335017346 154958222 689123295 644709917 216956485 407835827 840990636 717858866 869116401 797219231 626018189 709683843 324560733 717390077 666004335 169645112 988887060 961396398 92681536 710627408 65888412 698483362 841174278 149747127 980066072 867630929 569604349 970094922 669554844 994943280 680068929 433139088 877482197 172414229 404574198 583662823 770652722 980645288 480784734 488505902 662246481 225749882 984443662 300717524 96747630 525123475 752864999 302755465 975521042 871385358 255507038 713440053 7324549 586580128 98526598 533832489 403359430 318317883 225978616 52375288 695112474 442799813 176817372 365273223 666822277 160194535 277006203 704534240 919886688 931268664 573147960 265042911 570795854 91215567 853498191 603318725 373528134 527531381 282438376 573948863 10209468 626623347 461433888 468143373 125020171 235483239 463676313 523909237 361943061 728005523 17211242 285801847 755096417 137585159 921884338 351193806 758213043 499655661 318752945 500160766 954287977 247906435 429133765 444482951 701258006 959929853 251382559 364116150 559745081 279105142 536433913 355886512 289479578 373866467 424225961 44048120 794848828 786669800 552114361 422899568 349390005 194055702 964089939 573013839 856024442 319687170 740724891 934863037 834283797 262758715 903750049 385951895 329723280 440358563 523078252 269361064 873270377 810447655 180222020 756770912 903797155 899006198 896252530 113216613 661838749 46259556 636186112 307555329 581011732 648869693 103740244 324547706 671022053 329696938 675104436 996559205 510075325 605440395 556070685 85703328 608363527 241066927 581168403 179183599 8034887 555671782 606448917 886339971 76336992 329574279 530818343 509792865 977053062 238889811 860953929 501118836 599433171 178775877 285253268 997812071 542046626 92207882 230921703 167588106 436797872 88539132 444020948 404989478 713884960 824223124 52424934 310359595 447455366 192355683 766309771 79193258 577246772 579347418 410869092 848488202 423548481 295894693 846945077 576423869 340444123 101595338 640878583 181817102 642342139 77430050 502698710 169871243 485016135 487132451 130284556 722263282 153128824 546524332 815848844 857346671 123694604 267199344 978194040 83438497 655084065 187732757 923706542 788362897 259523074 262627995 504069854 202549999 517607823 969269102 368793315 411427859 921000178 249234371 674197333 780124350 46466019 492838656 749772205 623435153 733122835 902741419 943380686 333137671 456271437 848133976 301409303 299049754 348416410 641090600 462906180 657594856 140801167 413401587 645429133 933035808 970192323 767478750 235235948 61022071 855036754 862671078 462219753 464592192 288833008 755913715 193899465 184751890 22641365 187612998 945122463 791973620 124013860 536514541 887140736 546797460 642402469 979145838 131198140 319377748 777659549 118902080 795770192 286371344 460095559 879126732 155622604 741836070 272582729 49816399 321267195 81736798 972556199 894357148 583429226 843205462 811773886 397914239 102032392 995852489 564662289 375706336 11935327 419052771 524948824 886860665 442863192 748611544 551346454 488326342 155004633 2072897 699481699 246083120 872352607 672385136 921625705 749315891 986160578 999683426 734606379 565646220 429026977 914994207 825962096 470531732 70964928 367325578 49495513 598368318 887279022 531999305 347765003 396220664 585441600 687030740 670156938 518255349 145744950 821154226 144975864 941845687 845116846 825620826 102603370 2132261 149904907 168938160 856249950 896429438 180941052 392096300 89332820 422704770 249141118 40708128 683737275 501158879 462158599 179449758 531947811 350713209 632331368 345702634 877849260 414391216 679188084 507012880 31522128 898382851 119257838 65048600 650336512 324237207 115789554 563378418 598220232 717810133 178451741 366300063 878212682 814075702 508658996 766488642 553353956 352387510 620919731 964237181 826455904 774645458 949092313 726744935 315912565 891878284 261640196 468046035 2044888 354298831 769347496 803984117 487493994 614686773 514202869 683230756 286528063 737570950 145395679 308616626 671869792 73700662 936650005 393334489 435529689 999479260 21621227 284081076 35725536 873330056 301067007 813682080 435875896 654748926 874687433 648526294 952391883 401256118 325750286 473398922 678263317 941741936 856234330 970939057 432552528 490793922 308125532 818661256 673200292 175052669 353640878 25081709 473272373 786623884 171382208 989608224 622370499 904466627 463984319 770257528 128218941 130191011 198306041 660132993 424990179 524716665 386479195 562156356 334958334 89959136 472558846 161010026 204635963 816506233 841959778 856633412 231422653 253570121 659907611 985720504 867312657 861068293 626376072 534313295 172409104 774180279 365604556 77743970 765583071 681701068 169884610 484847481 44751118 38895285 607629465 604254371 161993701 874213883 73440884 979467125 587961791 819478887 397103586 592860715 713728504 478997570 553089859 641768137 35471533 60092200 47382858 205464424 438823559 245066508 403373217 214770483 659141306 908180731 324979463 321726016 624716807 234650165 311203090 849594052 424700904 617581183 289746765 505368729 306813897 373558031 154941495 76988620 265454852 71294789 311008621 61273109 903830561 746977620 227583060 573139053 410358777 177737858 699104426 432868479 230101832 880482625 574937669 200520950 923705748 241741364 891029161 385647556 688648294 282422105 12271593 364812748 339520159 440973730 331302925 478577784 528475378 250625730 454253263 821033309 168945694 128598717 852874639 488238644 863791446 602821256 62853080 186405856 246957453 282928171 673457172 441583565 354178294 71246580 225556084 405379262 610873685 259218281 182342719 185848541 168221655 334592450 27263727 333231164 347356157 230134169 616177583 991538684 815896734 611710327 103400035 409630690 565493402 423038360 452933463 290645437 69952531 944944880 561936963 184907639 140507039 59651289 672125977 119061703 771092095 974073003 970317866 207270731 666203146 237383319 134088082 95161451 684481259 147816171 107490927 48017291 804990145 571041114 56028051 493636691 501067210 908747940 354512992 505229167 758545740 548211461 218528415 772571223 87943872 936923233 8801127 771608775 840849232 794305434 917693142 836569621 455693567 797769970 603974200 587167626 493266693 505169758 176227822 772435534 288648571 229873917 43449622 460113277 969635954 180557249 669490147 231486789 147004131 205170228 478246363 611262161 670038764 506712842 524741602 802653150 102714171 729246034 769425169 748411214 346383482 633330750 731061073 906364504 855881870 278711008 559193040 332285527 142524089 442516543 181999094 427016282 650774980 83950279 362747282 452513282 779888365 556882016 856630571 544832927 990474812 497510545 515160110 732534522 688071067 213435609 940216250 598605470 28288756 487916096 271820463 1898054 737432589 282314803 95587175 791596315 412213457 545980928 837528781 947669239 11273521 780125980 651796929 945322626 286515654 414051025 513478399 443238039 166039233 950988607 339292597 297889920 875796549 625946460 446852649 546967337 256800108 119325434 165578122 889896085 766365469 534313932 260501939 212787507 901381758 552710005 506061426 921084275 7121156 80678159 160735333 559071842 981412164 802257641 753581066 395640634 527953272 673041920 786588378 234023310 609148559 411015497 258280665 88948040 461852381 508200214 552085740 937842845 525207869 728229154 933288754 344922740 220657194 668645362 9208688 373423975 509939401 33625203 227032098 698880855 639668135 370023979 889631950 241120925 618648929 465786916 420601793 810540895 63078903 480307445 419746319 458050286 930858186 97478373 947640681 761175589 772195730 573975748 315802972 549890222 280918035 167444039 212533017 558961595 313345986 553077253 452566991 412830952 740264379 899718269 503806731 760485546 835235287 264169087 855608465 974631851 21132069 42435765 693532590 648276713 585650474 396702532 624407798 291643744 204200316 608192575 517144681 893601187 722439062 827090085 67471997 87123416 640406481 649167462 68577606 35010325 831801943 540932738 777817990 754057785 870753002 799288719 730486124 382812416 975665988 809340693 12027452 421711437 452468082 210083291 946285271 855109357 555419143 625213286 637103857 992070028 998815102 777321017 603262761 187187267 783316220 574763468 127207583 440950294 166350365 887958004 953511730 18943538 901646285 278807138 158557081 860285934 30820748 582451313 848032180 142402049 644883039 291920519 839113929 334826584 456774636 114374971 371534149 447403409 185120415 184715153 354636770 864031092 231749189 870062093 538925599 190787870 531574380 40139695 556251147 756843215 354378627 92762715 222509942 326303844 923983272 348740738 401169884 995148715 894229563 337810291 497847747 472784098 166489972 200463579 280615442 510469127 670013137 858389269 969470488 324070705 550433700 210797498 557746912 920603273 441507110 481099067 42858806 675621640 847262906 2861209 377928841 866304517 228454153 505470813 448194888 217093600 744671145 175917165 822514246 85508481 676494726 848711469 786471945 679376107 96045631 600543257 814030529 293914678 76346861 210470876 642764881 932821291 676581413 279576819 170726941 637349680 476157986 833261033 322240795 110983240 823227248 628595162 801480007 157031027 494212483 477001615 265138672 196059910 471572542 52120398 555605366 239636786 964188654 948158464 542116487 342190443 989106090 938981690 628232231 212357739 224317282 720778572 891017859 524692724 14012141 995866397 744280927 414643958 146170274 335031623 719256225 5564810 316134041 551425914 53115 172924415 864748357 73055696 29172927 279529998 578165788 708587818 786937112 414080689 530033877 807461889 927523740 254102517 174767025 785008380 684841437 533843563 849068890 271311606 656336095 778524666 805041421 487749685 781515078 303508384 274528474 307705618 305154944 947420716 325035839 4254736 590439142 820509152 510851306 981858047 387854412 86212756 454136645 812324040 680457792 666938705 371598930 145103468 383736374 847903854 627231544 910654377 943391316 304908561 162662021 666722893 582590577 448406023 641564508 185993333 40916645 759986132 249160261 61254389 480862489 212951365 517779259 878428213 131933104 40800361 638006355 15719435 442615829 859068671 522522632 885146741 879745808 157715865 535242644 480207884 577982749 71184513 608482080 32302256 158603495 665866104 916184898 313353774 72978653 37795872 433940352 197557927 727248617 498978094 695560542 847261378 582025382 666361341 474698657 998241452 275766833 228352434 793798436 504816467 270886342 514454200 885121661 235983097 141894947 96418790 911380539 914300662 559311292 212269987 39502997 875560025 300103841 973597770 9990624 990027202 582708664 826942442 635501994 81257709 49525912 840897674 836466868 559349943 322857842 896854054 995478670 607027818 207909697 845479391 903898030 449596661 328129747 726596003 125820556 485299983 713064652 670424795 923222920 125121516 718689471 400813780 632502703 761782938 774562934 67956845 668655324 705362067 433771297 753073630 505048116 213519939 195775529 753723142 916425301 690770512 135407650 127818441 92116675 774500574 11816170 134312988 362168102 662153839 642827291 564576435 31799400 509831843 716626085 511761887 179223063 694535688 653210045 941645501 86326371 799020190 665470299 956003027 461714702 248975779 308452044 59150772 143772100 354332723 26423813 498482698 742481219 977249476 816702073 223641680 275001192 361714871 293738134 360423477 440091606 100915020 79038072 713753226 552607902 33441686 233834804 486639856 645241537 928627228 716846220 575941802 427396306 978878913 940246278 162982030 162917409 373764785 314172488 369481472 419356615 334828251 934349323 546592804 468514110 821620633 736833550 801627909 571116282 306629373 430831374 840502980 21429419 481944416 553798785 283031963 1540773 899436582 250470265 87674151 265926405 754241553 181868994 979792595 372755889 660600638 707977720 571201692 770257155 576040329 539512322 720174775 511362752 37748849 90140684 903196874 417589842 764433472 691118484 320420641 62726161 556091594 947568160 466923522 491953473 339719096 959311782 685010005 496147366 774459182 753951876 939413702 209736574 803402375 524753300 777448708 875209309 242728419 398155744 578532512 84749330 70677843 94400487 607611575 391336193 801205265 843788220 581303334 48250894 410529353 174755613 123518703 319731893 387791043 73866729 568752132 898311713 796977886 395855259 121560811 317409113 871794938 222886045 691326136 119130523 874743721 709547007 696530481 863010251 915232915 772014692 35357909 539369296 995384833 893121675 759734390 985165682 553959117 932760217 540616718 774021106 167284516 376064121 78521188 939992977 222111469 133371706 937101292 23257600 496801304 398122811 640651315 124104175 37743805 811795582 830997077 83442248 730648999 371450397 894029178 161226135 230820647 647709177 365210726 182348548 147736067 818053604 704941812 729180324 217848723 120244645 132421364 983650556 355311611 603268941 985579171 817835778 566942244 676245115 880415127 881876723 227640825 786518135 982851754 969575272 515944945 927383127 623883476 300047091 9316734 451467267 96495572 864884801 986497812 64520689 849555424 572688391 971286662 297154765 482190007 744231210 134319326 696932265 209949242 978928711 277094286 773645259 394670648 80025025 710286612 404511362 174356303 56429692 512722615 432210075 717552787 333116896 100756300 81083680 419317884 178327782 390860650 192658158 119113965 67586867 263286393 852127778 751745839 679236736 829304511 960535899 941028507 344371765 35389645 530405275 964600279 767653604 47469168 126632441 951457764 478112703 233879637 785009041 878552084 231242497 735042510 927067995 575347286 192882028 131924946 464243141 729225131 782504059 419023324 628403429 449746569 450029518 968838333 694133796 765080258 301923838 238313803 204193239 688326913 308741143 772152349 694730615 906083492 154168339 603787943 545162433 342923906 656850747 697652309 804237492 154190415 38305207 373316544 147581293 494561242 542786292 115707103 191885433 182185889 734819914 745261551 111513875 678024194 813753151 97135869 415785761 9439891 276927423 547641995 889636067 416190355 801035399 817195393 62373721 75587554 370089753 751501039 225828218 668226689 492640629 495415115 280883172 837302323 750438212 546982491 723016533 270860148 632856444 651234544 407762164 802737953 119338161 818083076 910197851 914804536 992461310 494050706 617679258 491039505 631477971 102334741 269609695 187462968 453508531 454908559 201632209 677917162 797654485 365947424 65739196 521823880 512901241 572691779 337457629 471099235 427467450 251066584 949230057 523423363 927833120 138307788 629967950 103048356 624591694 305312451 189860109 729159485 181787530 311740245 654100338 504999874 540000241 243419003 939656056 498039893 354722749 109880243 546320182 574208444 790638848 992702733 257889432 271846138 596972999 460791892 842252910 459762590 846600365 871331830 187060791 85002206 822829903 474070977 213511862 924532825 395022260 217588150 726479943 193380987 116980804 294980518 962078331 759170785 546907589 858536939 653709820 467095612 551378123 925038466 878546911 866693222 558071175 175948778 536595125 615315107 365303871 6046247 123338087 596782267 981877610 972984125 664840747 361265171 874179082 795410949 556485439 329210169 326642315 501700280 481958034 564408351 157433309 980046061 661728637 814736855 843947067 330684505 654179508 13565452 32824213 860008164 715350620 477762328 814074257 381798815 411585285 297462668 781765151 655138122 85560388 937175344 252403096 918458840 299338103 582994083 887411437 29190826 787112060 316299898 227361531 425189608 724902327 3254560 474124917 54029252 362023779 265802383 340544238 633278674 914136585 293357415 887941045 441461584 505159987 405256914 666552500 711731825 568318702 789863881 731633315 316288492 261897129 518536292 28485600 910298869 46535913 65203582 754699901 25640214 403544031 6593105 780716441 637063456 673433638 447614787 599939994 255542834 38975168 97800147 575141810 968728201 765272050 272623693 887694028 316983457 38021366 424851821 752953266 165165216 771029338 320232943 779220206 545802814 474783275 26413424 829378330 575025094 727106571 259278400 831904546 958520884 965481193 916527272 48345119 980224173 720617928 423875521 150884683 243741007 5461431 164196217 742591914 53755754 629401679 185765289 220428469 255754210 804566780 679261599 373470134 126994266 222663112 645201581 533260313 270609436 92782825 90907783 34587881 720707726 809730878 599765002 812248263 740301875 576132916 644201217 295971946 932905723 951256160 262196034 269117079 229204626 884325184 119177767 819947161 753343571 370363989 700199188 774658304 572236098 370011796 903012107 166372807 465486151 92049783 726404548 879414383 132692683 541751466 739195291 996663226 246815054 154520219 34660106 165849554 499081100 696313941 905713654 188604455 759741892 264360864 429419891 909518115 526772694 89288285 649324020 461936372 547257524 715812305 155935528 42118343 530458452 565439421 796651767 11425553 7110982 461908705 60435444 612973573 326327296 28006850 845661334 22245303 977062071 533897438 690304633 970554772 989627707 35660074 210846087 841359927 605573748 19106279 618905248 130263950 448373568 952710642 356424179 986677115 667105178 906188603 148701701 207289829 903387202 502678547 131723807 4557012 83851384 581375881 686311583 338609665 136302860 348583632 129119633 687759700 259173935 544402845 359569263 575996999 514766483 385079947 960042353 104076671 102066955 804327994 999456618 293969181 146872720 816577247 521923497 59429345 45572152 202388493 358406403 574345355 76344796 972749007 165773919 752653863 684291319 428372716 787959139 785207195 898735213 544999745 649267895 614199526 894791259 334260350 805676063 486805168 508467284 652171711 773555239 299793099 53551294 637742862 775273014 859490635 662837142 919667554 110255640 261898993 233423450 164123139 645583720 889434343 71674165 283737811 359426823 882416561 589330686 897948582 53800269 668353224 310367791 311776943 407652815 98273831 101779674 833906610 580964583 435954207 323066109 337832663 890009141 721802247 164950734 56967919 683114600 329678329 312614278 742228674 617159942 34985988 182868675 371440124 153559544 757575049 176759364 74520225 505137262 902482376 721512367 251934616 506106946 8546927 415151550 896361630 824400351 879501741 936488309 435561926 501077071 526320762 974832568 576081895 860193845 601581352 258404480 975735691 511245033 585813361 843200316 250880264 981495602 479933768 235238460 141489249 627213060 207520442 606181678 595447558 585279862 294905681 552040043 126249001 72834668 862852067 309143260 800478890 555484713 643459765 612281896 867478409 362974774 383871482 954744211 413614919 958247678 588183604 380121505 553572988 511995836 952955621 493690376 398546483 797528220 967459993 993192470 739767458 787384404 49870840 700589007 828146681 12735979 283171502 925684849 241028062 831194009 52456091 525394039 671941610 985229264 789930895 171413714 770516848 485703431 966998976 926195060 821472045 170746397 820475571 458769576 923826079 963528171 205630777 378607619 992367925 557667882 530796107 346160574 779740906 520124197 494348655 283906170 547894269 853148511 901408623 611760065 509966211 2054008 713822549 828595386 56156543 598663560 335309691 844079802 261251547 230542908 551836018 788943165 40153820 926972488 401727702 152618230 945340385 191084956 152671939 981470274 989428073 919980965 858286131 625910087 209625838 628480938 194851325 46848687 835776122 375193035 354032132 713789993 190553472 67759574 141159962 380159986 482908342 771500662 778130697 384529463 887887132 523404361 423613274 99635244 327308151 214071949 800529424 730031375 903364526 113415863 822639113 857524211 242309073 930778616 274566566 23876668 399664864 566940661 469591271 200790463 954327544 334994474 307419846 205819878 145493167 624080207 561476578 695124024 92839964 395602015 121243685 108086403 581040977 184575068 144921549 248024724 180173148 212929301 662274145 845872326 119890541 889149516 198704640 208039779 779460918 248373467 18491506 219581888 792209439 78900787 859911510 694534000 942787802 835787756 969908145 882725247 989248880 678067973 778778151 741271825 138212433 245919306 709900843 187395446 763548910 182269559 532524716 356660623 943864134 797875352 598971906 83097033 174292513 524876193 971139645 833075973 204343136 210575005 415300977 292231700 878014898 280231059 344182 734825260 182080337 111046093 238527943 79525481 194767548 271162732 948056290 788564979 468937230 141640017 54731365 385514942 725072935 120410328 104400456 503471905 253264088 231571968 182718669 298554371 705176116 123790694 12812336 475799 815955730 677788252 302183395 434849901 413122790 893305199 395587689 567240059 610891582 341238249 962959066 449414644 905092327 284297045 633915067 750915865 190640359 453653524 904427055 237787644 480306415 282127193 886115509 858403519 70127441 562086805 596548481 308456618 643105162 671239326 595317269 829289222 847928550 148495612 581924820 2431533 732221795 741995335 943509540 193443330 741877886 624795859 934954678 529222871 629773731 123096728 970779667 4553485 751272326 500218892 603406464 981508932 233625089 167276369 810897439 631530948 790404400 349845911 389662333 885623119 621993439 337174567 315010776 70274974 442531103 532595962 132143766 590005644 724268809 79067129 730350552 451701309 354723514 554503434 62088538 500622602 671550264 209723245 202246455 300348286 653210084 310995996 500928595 214234800 23003734 62534561 833730110 111066717 456249592 985687957 313747103 549974583 777287154 3407585 553215891 696906923 294976839 553094077 320138896 615693247 282739900 547858983 922966102 15617765 679211284 120767923 28809802 357664130 574155450 88867912 582760933 113263565 825386886 817203857 216169131 649952549 200373022 352743649 87026751 220454800 446612237 219845851 66834886 814749373 169889393 984155952 137873821 750658075 215795760 454101197 407214417 482201341 992816726 800209325 540023263 613985578 101831267 690365083 183560454 94971082 386241916 841550649 293987169 450898262 261779944 265698819 381996807 842375639 625627078 679856965 813981358 105282324 190667279 423753014 946800303 499178231 786292823 968800546 715342772 742435227 562149058 237999817 748527112 966513898 412904446 425575858 442819554 248878051 500447865 664632628 552218617 228557092 883646207 117578210 773978238 200440024 318786571 471206767 618079393 838189720 784621032 723832098 619753458 2924376 894465661 191426041 11481459 599216770 338561993 290622870 131396592 859297442 850991579 792453498 542280521 710273491 416155309 525837060 851044096 514068520 370826797 430533272 848915023 720869385 614719606 436870055 391939728 840438606 13701336 905809718 964207650 681307384 291335865 285050364 799087448 386844587 83391415 667566118 441324882 332423689 15906277 573373272 968574276 292482518 853749878 634593781 594474839 935393070 116118040 880679247 745643340 350295807 841322169 991601269 354626143 497535637 441236747 315808495 789953721 340631212 714621918 585225777 390003786 789134410 333499955 881355665 828214670 811055113 371478529 591246338 704095457 183420015 862537068 768204745 477151842 141321690 823391081 139038291 586384104 224743174 624027261 244546949 497182870 182651839 175963798 215053547 474446333 992342457 152606661 713156894 760873962 49006545 276588404 882775033 952510178 965861029 607595878 548113581 39346112 387850785 398772397 710082648 862945454 592068116 50287192 829718835 575938076 210780941 671060173 353401730 124791886 178548782 156744465 815180213 416711436 950785274 793560746 586391924 743324605 643381259 980525993 568713577 307303368 673046543 365446361 269063780 575290721 178858510 618185438 962176518 327727731 975441244 564121376 77595556 104159429 197662000 254119260 58272808 115137746 135898335 991694845 584244527 635326204 215838291 28002339 443192344 696487494 289776417 540044777 918469380 640573647 537477494 141711686 268594036 516671085 658108599 150704392 504109731 784173369 640033694 620514546 810823336 772554849 525881551 651747852 671567119 228257061 27539894 731212148 842445533 866433904 235617727 570110356 822720642 614223012 147107659 653310681 681755386 133590459 448438488 267977839 47895683 88946377 571884819 409599977 43449648 752349141 320723732 412768891 376246429 196945444 253063077 515976432 468573307 238657552 127294909 324945357 87774739 906426419 731605786 565435026 386581993 488417559 763424201 948064065 677976721 110265065 439802248 162031433 490664370 683454631 820828610 125940074 616713348 629123902 290060787 966142179 467239954 564780453 470851231 976418766 338146602 754806785 600840922 749217347 731148673 387453544 248666985 37631491 345042758 203344698 159642994 850983640 41267270 106911038 893918825 392586936 904690183 539697746 151817669 694632277 771128275 198723700 77656302 950318269 286067344 964785421 922579751 887351485 963853200 764913309 129539429 67962331 897070906 20116404 735079301 224272328 663533521 746114259 610301869 761100592 545368777 946910246 879695923 130309402 489753113 193914463 349262407 398040260 201756215 389163924 511609728 985365275 200798973 410477468 378490095 786245995 473029304 441263109 501310192 425049776 419587548 503096778 745940565 764569662 849758901 716727329 587537267 615311239 117265493 712343033 793895569 230309927 147989218 871276052 350358491 234578255 299207774 240921872 893057752 107416173 882693488 846113173 641402631 960972258 912836718 757145247 939314673 561821287 663755233 747368462 851116060 319863372 180389475 338955285 930266050 562670801 702061179 444560104 788915345 186533529 732319790 776219134 790275784 111442572 312989230 728453413 212124992 785101050 783087759 967437675 777254756 793487782 864397971 999733941 627458756 523999023 932245598 344617611 862409739 854144041 455242208 193972126 973398896 687147774 916724152 200564601 236864382 291339187 26211471 467987125 864900732 448631837 655517332 614242403 355604777 492393002 353920086 161762588 895456285 774231410 539358127 299551283 802052863 522837067 592413903 321948430 104397782 730407091 352023613 944851444 52962752 723981236 239217571 479710622 340651373 292448868 476906798 611019088 111646956 578647391 716074841 929468817 147254366 215864525 612225750 77967185 139256431 312710790 462188677 59081485 609771428 908973746 898314274 13184540 761643550 272765161 131703361 782717164 302349743 57958466 746911866 804212714 819243613 573430407 163472541 293906936 47990695 129230247 834093026 404909297 44481402 932415792 516763980 536786613 713921643 670187810 278756264 468643422 678172745 727433713 620862229 32314660 380870923 652819524 528808108 959166093 611451851 629782855 594443669 967115950 161052890 705335856 470816672 196902327 691068085 100521997 990968630 367538869 216324068 487797361 214355852 88757071 170215885 970823148 88162946 852494590 734808246 444267998 280422669 3049834 86690572 646650486 476673397 97747711 581188962 517175568 261043363 698732906 811840308 764599679 108818324 826038470 743602756 760411128 734209204 493603920 677233022 188081077 223528482 997677228 438412637 88397823 354454429 148917971 933782510 404487293 258764943 221342588 195553622 89272647 219760645 266481209 818679229 650971583 701882339 265557462 525843147 628488697 980331322 81208957 765415494 436103137 40602069 986159585 36701900 385568421 529972493 557590726 367869079 851707452 841611283 703128956 349816554 124549401 655068895 382870840 247841035 416405733 582486704 525922752 191375452 451847730 72548533 283773626 343825100 43563345 232147379 123602541 903874523 43624163 396716709 525155914 642525580 77064768 247496346 682563595 560802495 990413156 330584618 253722631 432524243 322046985 409097952 457119020 115597496 187238519 578768853 578507185 575052336 564052473 301174253 186667068 346757671 849748862 286658217 685398846 75633177 186417947 642368014 919273220 967326956 219350152 499321193 443841354 112593281 757295532 334164124 601090240 521537355 353856576 901530311 622230741 955349303 152128100 702936824 123148734 807086997 352798905 274919286 791201025 68611409 171421821 787486541 286358205 929796267 531277810 411750170 815577207 187695136 120040526 170301287 556425966 902065610 602487845 940624806 645704049 818266330 421442778 970979713 203201873 62028520 617278905 750105353 543305395 812268934 650414658 139014202 466887042 728562521 113262381 871220215 473963151 92207574 400739374 281680649 82474645 49763165 293445918 108097482 978328835 167615076 351927078 704105960 75462089 103591872 407456787 943326491 476206835 802047330 678101797 252077617 934661558 44623687 265650631 505585875 379760196 515247787 755428705 461337445 7942086 847616587 539786995 486637059 854564492 180375365 381920958 864457842 261294763 690005122 67689958 850373849 169561628 782028419 417269674 727126609 560526544 150378969 855749958 183470659 888930612 74617979 788201564 961297232 198469669 355775757 636601267 797318492 74469696 700337695 232506404 710976109 473133241 529083145 99672256 599163621 162641364 878158596 236914755 463407972 71297838 315243747 520518372 403974351 808230242 631347799 154993658 343366092 763049986 338068223 252146025 8545753 924960907 874703222 726131768 127056697 952554050 610864003 371003337 228565072 654328624 419538940 976314592 225633171 969564121 271137181 926954099 845126814 886391534 139799558 226669246 393653477 448291182 378155269 11881679 29111953 732861551 390091526 817904267 128688059 429915963 385376351 71530918 249679156 995964661 662879402 208945394 774598664 452195315 972996486 744837116 420678569 450779746 832440890 937643400 454883043 128251428 291101237 896628303 892542801 622106500 885230998 583105324 859582261 487140501 411746936 948838984 108831493 730270331 430587291 791630824 71445014 865829880 503661786 914270870 444096469 469483099 470622864 981190251 543435251 4023220 475881554 459405822 797419590 251884352 732219285 910919125 450250956 983035772 668667775 747190188 169871575 688043537 274607556 931957535 201790435 898527444 796907303 625381220 850776896 449080413 766566870 649131908 766630305 873437472 41785264 309216738 98896647 163915162 114111955 832662058 104659988 795499736 438437005 769355841 948152866 233950420 59318867 705158257 759905829 190415465 111930182 737421216 673544986 681152963 233987928 599098732 84569115 891015292 172032062 209039166 167541036 70067632 253063037 232170989 94552939 565814674 159739835 31569940 997132854 684538949 692446856 82927688 225989729 563765859 266530169 226194769 857171411 738034722 876038301 206789694 687950111 853936169 430071296 597569720 615571478 388093132 153020996 710119442 609144639 878725307 741586408 338233623 707331077 797155934 123096052 652067523 943686765 645349689 25529227 969851758 276068700 782559632 187465421 922866531 81928117 618777560 799678361 318814602 559713908 668972660 700101430 422095273 251419512 309225929 296282470 266852768 938941174 867069306 374858977 506736171 266462784 124621525 18620983 717640992 912355190 792060636 60301470 303264266 853063860 635925513 869188312 338934566 219826356 266851838 235172699 321003690 781464068 816507572 514051629 761267712 36041816 526243224 788609096 960338723 871189937 499456379 694265350 572460149 86619768 730048782 374252880 514194816 84356390 360530075 902243472 65952735 296071525 517431797 299192183 568557236 685093274 970692590 887684932 694792063 931993597 989341751 935759547 63297069 90869915 613064075 625403258 66211090 399995838 537685361 562626602 193516532 783085373 442011807 339525569 215782341 514214299 99958153 831738772 858039049 231471553 556516576 34758065 765038505 997577952 992460934 737268294 213085576 731117683 63139304 17586392 350013069 445945482 999612163 921557205 859514229 808087632 312772552 170044549 904629001 522347045 614305341 813510004 245421834 35544534 394703759 664477241 364488853 408152331 924699425 320677209 349884374 544712071 673194039 634619286 610893676 268668338 321989056 86047499 302236955 569963115 679364990 957844245 219339455 546076075 330243969 386428343 721384872 802569403 600892474 601029319 367559851 122923682 413389797 918301896 776424201 390450495 10876202 12311602 227654229 61584769 656311848 966066089 459589239 641247714 555808471 825552595 979850068 748028758 951591771 806286600 891210664 51801115 748121407 624876021 636192918 274635063 652402140 817100321 878621207 528190781 299374095 233183479 114494582 955566390 58883769 701284616 107892651 764155190 172426122 663174824 700016629 751166068 761430694 500211105 574379549 994809963 582113167 861918906 463370961 110509147 508425697 150118006 208378100 191825153 456656912 179865271 793965464 728953157 924501733 205391055 823076980 796225097 546876802 273997089 961554582 12324292 670722065 179496318 382691655 748536168 523513719 357893628 461342178 704297937 803373163 201279301 484219675 323248182 455331044 856504323 864031393 158372520 275232385 416518737 277834650 553187227 139516185 462877888 271652736 871150242 691594800 74543667 554704750 266711554 164413691 364212954 719494398 425180818 825311191 856812122 630995716 778991076 725724868 927981163 286518012 717812743 398282893 625604652 365239257 120295230 527362003 898037010 876552209 401173290 235694 199619811 271010400 688158686 72925911 934734754 691860165 729859716 671260797 913525613 495114501 945104371 38818267 455467221 294261741 948839692 761298088 53235529 553937009 32132349 249005818 404810586 721512595 730435777 357129334 424121524 742973466 321952857 141844463 302242386 835416075 797395316 590326760 519237442 879655664 406983465 428079879 321309854 529287089 184987701 480019901 438077305 970626570 122011158 588232530 21253753 238644171 292878673 314829311 621562959 148714974 458813648 911373287 960069065 376341999 377247364 718279986 684233516 891199994 467112974 387952198 617499761 306522304 699777751 776388944 596848093 819857876 666387660 57070048 270332138 668720053 781547118 55059651 723777323 257104086 585174281 653523854 994164160 940763785 510929543 100533837 798632635 239224608 383881832 511071755 85656982 176264341 889533416 441123170 230502756 943962130 93388273 711671806 446137285 765522604 700409972 836679793 248848005 191612097 692837917 250256111 544122924 70113532 72417132 972000405 69646440 142600122 426805932 727359628 690312610 284171247 972470298 674899361 982146809 424436471 60933498 928098112 966644824 889994033 476620264 220979087 151574731 222949639 851156859 377543904 424048060 849564507 865538442 333797642 555883758 749181643 525936352 823157085 98434294 463024823 567507350 748806068 409197324 689724100 399306956 713381694 528278715 896458111 929750289 554950968 162970836 273882001 67917416 88063386 568734158 299982889 115589183 288368839 62165428 760508521 182148956 697564757 352295178 223852936 330555467 655158945 986044105 377340562 297043234 372874777 669469484 270773949 524623281 994698785 839895249 146772704 338916634 281806804 907261228 681593323 712109032 137063298 648194313 107021976 379436479 901159097 221668934 310358417 639324012 475656122 15302295 140928828 105998423 662443206 575410834 307231103 720237900 804449238 888626156 982381216 791319726 685631463 144820192 828497913 264990726 156574547 846031936 3901330 139582226 155101104 88324680 586334919 527469520 507782702 652919239 615764753 803800683 491973177 742879582 910667445 149800022 514768331 879741500 722019531 745603676 493812273 946370142 827174685 53047833 432751699 479547115 570513310 54355542 743745585 940957195 82209597 318509802 276326312 778811831 55652578 862221848 543739880 273161376 459697296 491414101 795612360 815635086 592616355 240608788 359375023 891943523 733555369 69619906 706353262 485131001 88774285 899039962 264848056 804451878 350298912 862784678 262035383 239025396 840247855 819650264 726322772 225613864 529156763 289115272 319812667 398370576 721592653 231307079 777396835 123298360 163974881 768089826 622275961 748039599 278077606 522999437 285080964 11419796 375886437 263996298 772609883 983865445 611325198 274872260 173341117 611874628 640641110 447107229 839762363 758636679 523160214 793718873 996730722 361416880 252622669 984947305 767049244 335250231 472202502 506339733 557592302 236415191 614178812 901219812 972771124 638103309 2043220 123604272 42284562 711233628 333973332 605217923 800799223 915416811 340918004 447560334 685642571 204745570 324449949 767056908 366733371 841651701 740865938 139471509 928064646 504019624 308086194 696725384 915461396 910406675 162147526 881389001 313604846 32004760 632809203 809810107 829859346 989124913 918350728 820545303 500442115 739244976 6005687 315029173 254285276 987621406 581943195 222487006 553751628 427182804 954714344 823387573 486572268 685833751 389162922 73431409 855319663 712804358 394623251 906148965 101583328 420835950 152161651 915072646 672323497 625390547 347813607 456756100 844970208 946146042 884498243 158117845 551135926 355374096 643793361 478259398 405650498 749066368 357571464 762514209 401006001 594941709 465804227 818796582 851041266 2889514 295421439 625163805 997254113 9077008 683029440 54860980 492515177 103772692 75211838 88489786 748032251 893604953 883043266 697105244 777526754 922162951 862210776 710816664 256210415 770272730 921645560 952989578 289698567 883835623 384289400 867313778 680584385 792538384 7540024 536534073 325825152 175711908 250697860 235752238 655686021 71370054 87573514 150736494 697718964 273373996 325246395 611071980 163577291 394712981 654698276 597157472 279759143 804853004 610016749 71441185 334895044 647899654 792276950 7606849 393218095 513844879 429191011 682912190 73408295 412435593 962504343 633851433 379064640 232334545 937310628 606774359 234082773 678246093 419588617 378551992 665011226 226251430 52630393 609225946 743648014 909239208 793295819 742774134 603913820 145528327 894618511 413770073 105782522 539115634 236762184 623939763 67870364 22243898 135047328 607808486 197639794 263449835 851621647 339530965 321484494 368511523 970721570 800843540 766960168 539742232 981266936 379990371 9555061 678168496 905665326 852693914 219857826 85714836 898271003 751018731 492081829 255728314 935987754 543276805 806869765 24777601 970051720 905683178 181316165 233931347 853494459 978958692 46353742 22661479 864178249 354650539 733119653 281376561 280408532 307754289 274023427 844027120 762782880 436542133 165312970 393220415 6944741 77915718 868371269 433427295 71174638 301856514 824895736 371170667 507801829 738424543 637989137 889945968 720040253 553554536 827818015 336909226 552229622 356491755 527167654 65889587 947363012 627988572 206054855 614415357 172364418 878666465 341386396 116402954 916033355 900534675 854830252 87622254 574117755 884178302 923047853 584345582 466408490 48902533 964555108 651540157 524553787 710891817 997299767 104884392 945052454 779772427 27514307 694962435 355447705 77289887 182035348 173519101 6779708 202399786 436248204 692349831 130107972 800738234 815225176 471521662 190955630 680754508 724011538 265242579 231868213 70264216 168989375 444112777 997743488 995062918 251797520 216819760 908159935 366958422 183555177 969063607 225042033 681828027 747377896 12357714 553187082 646645302 837134245 271493919 476332755 307626364 466997733 581221184 495198855 939675938 318298521 684112923 716505284 385112237 883695727 480070529 942967374 735220477 583820503 245807823 881492009 186043215 852806798 904710417 697401446 766676791 715896060 846094906 110120707 690134012 888808721 581093432 699432292 726129090 345497549 100288823 162166689 182452066 201682091 278424349 538879667 573740579 26550413 728895546 373372076 180849094 747227766 755406672 356847646 827476578 559919207 610890212 501585838 316483264 259627322 307621365 480941498 972849987 565422903 420112560 339519854 848228769 250237249 980122761 221576812 467945337 732411264 926803642 66915666 857968581 772497726 986491407 765416828 878315076 288396972 281285440 782345600 222425638 761345473 112294854 548653738 766157506 454987041 135949742 837681025 555680858 78690953 843134471 367737494 806070459 132569728 701616846 482432460 500008517 685058887 155859814 828665992 187179780 148738651 725768894 909591978 456183052 677220619 886206220 665750819 989814342 391249171 171881545 237108690 850048370 436207491 826013757 444354953 921522151 42066785 667250467 418142062 663971325 641913790 848692965 306101286 415797867 446941685 646149866 954096257 777487740 833640455 783586701 38886715 576002047 6311705 925662095 309079323 375924824 990973528 926079697 523396283 963016259 206616593 255591954 925225209 893939941 427765415 610476308 267221260 636076637 413494625 148271136 78467452 521829685 850049817 736158502 616800990 736805845 430527862 806302351 526888009 720848091 197593764 257760492 806615143 140434538 689765088 466719341 753522157 622106813 447995247 522063797 820253200 421724268 90266790 10006383 760798617 624582290 64133065 686143127 896428634 52547795 358788863 563809506 963262413 464382246 827610888 372758041 761902096 176638226 893894258 636316625 172919822 292083355 624518393 520618849 966746943 967555440 242970656 531637514 169903709 706550964 698786442 441381116 478660210 160790013 46250792 850123036 599241023 386327953 609248496 203409156 506260039 635193255 32307352 556204993 56687452 955559322 130892451 87129936 399838250 26338455 639910718 523174270 774582266 35493841 548040701 540175533 550197610 284076599 362754613 959983111 643341081 742150208 939506724 696625499 454807919 171990995 489983568 975227066 741380312 418055539 541380022 569223097 187596390 469454692 418818721 640783313 33850004 498621558 465728663 395908812 954041419 113603975 495232962 624594681 242320503 541655134 655687358 795246443 807974247 902545875 719015092 199703319 740148757 705505683 448334737 547813223 569269762 944840215 714384638 388058780 247759482 970826544 919003126 842996991 708135281 459253128 437783613 890212752 745387698 856556494 90675812 208692302 653073291 890689628 787103133 608984626 20502028 931931795 219961984 80097902 598050060 404520056 57625870 129666593 98739636 542659231 407653436 442458862 91354055 342972537 424846134 717159815 162310535 68312238 314277618 209691666 167544131 295375143 799701288 993122873 331585886 813230119 711914012 561653665 427970941 223060487 936100786 263866017 89303451 559326778 462747593 316119788 481527673 688945548 252850405 14367705 355821418 57342504 490051670 26390404 455004694 772790655 849281810 493915661 26318450 596106030 699500294 269998314 327049582 328823050 382429067 675802987 443069338 50273301 293308515 463635863 448876315 369823427 524634690 564721064 473873855 51643652 369105907 330109070 694529587 553964662 957862084 446416245 497117509 31257960 340760298 728933740 774012378 256245501 944010231 356287295 280989273 163868809 100065312 755017236 147206336 507402626 982518933 421617318 356012144 550878661 52873868 619644 252815831 355027182 310753381 210308023 73051052 43409307 809926725 337169284 379149423 469705649 669304905 985892050 488671430 843568168 950520541 366058374 99394324 826951659 492867282 474436523 273151233 989234796 171842800 179380424 910113074 940835302 32949481 22210813 950532558 337327076 768233002 338344565 611439241 969305196 664988088 966961802 624874792 26577685 460003035 772715546 347365201 198420186 40589624 417957942 896187274 497890785 135272789 195332500 955935396 281779119 794466717 520602548 161292620 615487420 472572553 796331457 202988286 529020900 222124392 752402825 655016187 111301078 845434772 98146390 443957565 179681402 314262651 494909732 476823320 815011590 620531203 417391330 110809792 5217746 916361377 43615718 953749745 867549700 831551696 901771647 408299005 294660570 802950088 385395921 744651426 327025145 829988863 868958438 825573757 740559737 170768985 265154850 685105900 125945996 478095178 478364229 728003158 425919994 540669251 140120969 514323240 391075988 29022964 627777984 852467186 796754080 831547771 448004850 403299441 990409659 689403539 125493709 545713244 620354268 397942770 258563004 462827299 784278223 553090686 878021388 800647894 590774253 27175163 842052013 442217750 571332396 924031836 662220856 240439615 510269536 569083225 797094160 113567198 86871682 405908602 224269998 261256837 38405809 949821963 284381442 387796468 77056754 599898276 585666267 98779369 994996771 353237182 241437244 395186021 885395273 563483567 575642164 344027570 137638914 580026437 922190626 65296922 428713233 873930481 19865095 960374334 228769992 35443726 854076539 96432773 37518748 318991801 675343367 750399975 492202889 175746458 826521419 55062059 82634296 878276206 1262431 66007223 290220966 370746728 89107321 192353143 631667946 286469553 604699250 107873314 442890185 71397195 579847957 293087065 342308530 153950322 601274169 570064552 860429174 72880972 519586249 431359905 580826150 43282008 832796860 738745070 374940380 794760237 140640397 271015813 809325947 877805673 138827919 660443750 735527048 763191040 325877735 677298423 90329198 458860527 284077541 348610618 654487248 492232766 172079485 333130453 361711193 205014132 50129680 662983677 291025847 827754941 407148830 318448220 838705854 6500154 416456934 40651787 407796853 784995692 36622 309673285 104949603 234251481 957798352 551241295 527993055 469100520 722672823 935553167 977374498 521461914 798231763 61491311 450876023 922101370 104824551 541288354 494719217 991198428 731823818 628867990 825341259 763551288 994168260 555461730 154796059 465896076 454198389 223299708 456359443 294854111 290392098 746291776 666523455 316779964 577288515 519212743 148298567 16048186 411772047 438913979 199400390 462891761 937450023 243021695 874900032 914649729 438468355 852469072 647812047 452928168 596419408 899979334 470522678 271107043 441105776 108258489 789192276 764378988 304842650 913403866 503468729 430490124 352376485 622171024 879312085 359896765 392577141 613773062 570502733 312061121 968029391 199502175 596576223 428400481 448116542 409199456 108554445 725527914 649223492 911473677 468923176 711295735 462423082 172409067 180733193 633880017 959103036 880543859 799206843 753124050 794593470 803006354 940325548 35312503 148108846 153691606 623883236 414525492 828425792 235220759 594378475 294960975 677902820 304165974 293606008 598724834 849501787 14417338 407514968 386800723 12110222 461804489 647105539 79510078 446346779 401199211 596161775 251856061 515199216 368562086 102615822 803420036 820058982 259042847 942892893 343900303 950189540 747622534 947571215 538232230 771452900 251936732 317275838 454100164 123064699 255793017 602516991 809719643 483014943 820051183 958210428 550889900 5456370 576683601 295027550 356205804 719048539 603592015 511483261 459891396 610396567 93339126 560481490 750555374 160434410 916876182 232562316 856104890 630126512 989844259 992440715 916500660 920990375 317741979 989613417 304782202 785184532 635740206 279160377 1107880 404790008 64117180 494069049 810351787 306388885 793597139 541423726 288163005 660953599 696780426 696267742 735225045 124907931 803044286 974718594 210601555 111162306 537122369 929325957 183846988 881923658 952511979 604654426 867373898 944433979 949662093 614317968 879721313 712658017 807019236 699305653 660741207 297951185 996942941 435751156 55211149 291235012 529577309 492746904 109229336 67641235 396654220 690474333 316879144 845570120 64053318 140338130 498515970 507214529 831074401 571576578 60662913 792672363 880086073 997491070 642557061 137708144 71621175 918782685 272594677 491878066 37478562 496977994 655440209 521620171 368037992 448328669 635793184 997905030 566087596 222539554 250228310 470723509 466881808 222282725 471993239 527925525 805092046 451272504 318563682 860185337 444585732 669980755 564592660 766674877 36699303 847581771 857601179 561405647 956626682 757702138 378529209 53549228 265159179 538447207 140121534 337288646 112815571 116530294 537418092 764439774 961543858 276600909 355631018 133758123 984151003 698409204 954005391 93303922 377943422 901871283 872873395 708781533 231686152 981814475 915388946 895120393 431402667 915266061 815478392 363788757 253266730 512127 116473835 831779368 729473319 581575858 802576213 284119197 172604581 998900305 950273674 770342716 973200749 187889649 405604236 736611483 944454165 423156233 926736058 598683088 726722535 172435424 640659436 992819668 927704966 98661332 230077243 257904036 322501406 414111177 128473239 640714188 171136367 380836866 734382457 505916827 674839990 913045756 901716201 95218650 212727897 914489626 6594999 829692839 784758172 190874071 79304473 554760465 736427457 878977204 781864183 966540538 538705056 112138681 457502742 997257587 796419607 681596548 673195330 488773483 807530677 256668197 56242774 99317838 316289082 36784650 314461853 538024390 158721782 722183063 711914567 144958536 224663318 580478208 317799664 269570077 205578 998978872 993862186 612505967 302788473 401252906 366843719 471822033 584183855 774564871 342178045 202115206 482672393 296212165 310433239 803032935 465174831 955755316 397553044 862039948 381385019 896094952 382282556 972357144 641016371 672831147 303837120 21113948 180127440 550787740 512465665 723047011 105353346 567038534 274365064 242691338 94173766 153213466 247039598 261177614 948522267 719497291 409168614 141927766 969867081 172781555 238085677 713362714 722564956 624755013 284141338 12988888 389566030 495921771 946746440 884734469 598908940 777049311 112590575 441760775 341592048 283442494 979433513 589400049 531947112 897416831 94991687 54245405 281393495 219907551 479998061 680186183 791570579 242721567 20989067 798497469 601242158 348888549 356438417 232979750 135355748 114485105 668685880 900033990 646446067 427576821 153216019 728728161 394795802 588377820 286111645 459181759 823093686 587610964 699923093 6988819 30256921 500008450 684555538 596005430 560580916 406386246 887788839 801986481 262664169 914884405 435334815 918508282 56263498 902500987 525182295 206877406 477106580 54912668 740028141 743849978 541111297 124516698 698859812 409989286 611744709 891857969 201363731 629316012 237564565 963004037 366766772 368391506 14282401 876459277 148361364 819818215 173971517 680226725 445724907 475132446 46545865 14997853 306704194 993516774 629780494 63091516 443507795 569097913 807573420 171564043 574215640 912854438 808418919 22670746 395553109 261297362 414694337 528862721 17237905 652464905 7999662 600181877 679591923 517715682 966896860 468784345 893781443 301021347 278465444 169519050 173543953 826779524 383791704 818158172 379703221 753530860 957597470 294913725 754001551 138789026 919636309 951018318 408619497 162321916 872772360 874444675 163764492 113954895 722820902 208222650 793431200 471749274 594746827 476862475 695882266 226158497 351302005 909652025 311108025 658695870 56828036 312426645 193548619 416468277 95804824 233245450 448154975 629136185 894829437 750100807 593801862 471999113 734247653 20154829 36059198 738822374 675785015 724131753 912040304 808025442 62777902 477150823 314707633 504122887 698382995 552943602 381959018 842875161 886906345 681445384 506043628 668628698 102534751 375064410 71107412 442642182 445996529 731980763 11091075 985577269 481827850 665443924 283448423 136132659 850255318 999590918 111048152 24824432 898365790 79061552 810389100 766428235 763182101 978145132 225868091 920885509 142216985 377639270 410896178 348946483 603280259 773432864 59183964 498889239 166150299 464534418 603339435 532305044 915285617 681514146 593438739 532119022 235782668 357391904 732065530 722371095 389640099 563997856 53596430 333164746 120067982 788233779 633360685 474379134 721088528 347255115 535526389 826196911 297059374 80629430 481116117 186166983 813823595 497487768 163737153 300881546 55599056 302849862 415175744 985217163 547934393 577548250 474305281 270434576 218197615 543739203 135618856 21375982 843075993 896738383 1215868 41032005 183667184 555075669 480429614 895356920 220591623 906714139 780523695 591425503 580105371 538117009 911920684 811309932 511460080 783679315 437833513 759535398 227826022 534228043 91518732 435992775 891698928 654895450 209442559 241086163 217716767 71682368 883026627 426612779 614522715 474754581 222892904 207636073 758966510 516277526 426472827 682692328 755737101 894588755 117037982 677424034 748759929 644778356 166784910 26456387 890597804 617875576 346229218 948751870 672031108 628113368 136023504 376097106 575684367 335960376 244535996 896955774 73965336 378665383 566338877 309665625 734473362 315964675 311820740 840297546 437921613 386974331 980557503 311622075 448155839 820107463 310318635 18473280 224556351 532823138 65912332 897295673 643442352 200704878 784881971 230166294 829888010 464969852 168762167 119789326 803918408 657673380 127526750 216492002 904394173 397570941 793099522 3579928 458361034 673332320 611625727 955648697 371490027 688645655 612418846 340929631 827932793 570385741 617324899 747322097 484217591 667641481 305247255 435804270 526618815 490659054 219412718 679758989 548688215 210638655 682745438 767326686 225641956 992212387 598382120 860027594 83564171 635064488 413720363 46143228 812270152 249080714 432774268 923019471 804682046 890931532 162590232 929806003 237013679 78329393 729448977 259198144 602784434 168848259 113108043 498789707 985681335 346360398 498252920 689043233 427548816 612491936 615354033 568049249 892567565 425801544 695439122 325883905 260982389 467728236 526823615 297981035 205124696 565645760 617715604 23852471 263184772 904823089 698706863 898372220 154917266 737187191 216838823 678756200 108147623 373714504 820663218 88271147 882841647 407618701 475138527 522232038 278843966 778338219 363531552 841517720 718546957 460815024 744873263 135508907 778949957 419194333 888900792 910358747 748181006 306990761 329167407 738386452 190301438 463959059 761151114 617038920 888732068 840315487 353353184 341071270 52229134 373341166 351039743 96354310 814901411 917805810 689052541 737831204 433669384 658629224 631353351 882098836 800809597 166195259 525860681 697756357 763280279 374824033 725976756 879598858 983244117 84773304 27694963 24293361 673505182 713009842 762508978 122493163 470000119 181914190 650435749 335701720 424638358 109221451 236747541 432170898 605431123 782298348 559019714 876895862 953750969 619433100 461362716 246219449 40255910 503635509 583413278 804671468 952828877 162908984 197237439 639739758 577020460 50076280 344481237 214359272 433357685 198929873 929010279 253413290 303024791 952185504 439944460 170478228 677996812 645850703 453338942 331962727 374186746 770369048 398367697 30144467 477438032 343602421 119887211 154228949 6350186 270388853 309045886 273445428 634735697 290599566 244773579 369747329 653886281 963920388 632905548 612781814 124459149 729956538 81161384 265007823 912896643 257477939 977332009 367566061 882637023 958978622 452744286 121979081 115676653 453944669 287180190 41207023 108365269 840967603 45067505 330839740 51030422 925358884 958492572 749696701 450286740 52470852 62963970 124199105 874650379 864321436 871927332 468004428 503758587 599372568 461182636 861295883 153987227 790733196 37475047 716419273 834668349 980459185 131707831 152482706 783989355 568806179 161725419 514117 439537243 852864304 425810551 752129662 589262712 739336553 372840599 672552638 124570288 543461930 17098710 259856844 714594743 430087322 513063742 898929697 137812904 487840381 322781935 688838599 278198822 690457964 540454692 132540463 65517942 225373728 310000126 422390940 108972420 701356325 431587330 271595440 847229298 614391992 26524136 596483057 104176509 862415044 313556805 572252346 259064037 581173911 910713738 713121578 129559947 231317828 410363418 863542650 277401750 445107188 203662635 772397824 205311981 707337510 3618436 54219069 202556939 292225680 95653895 263089725 125663481 866488276 669008939 218556566 976550188 135093916 674977385 993808799 415575913 843243789 317321846 492039109 615284397 844374009 113882725 746525315 392784195 269315809 977618960 94606775 595930599 939496082 970212860 492999401 155467198 108680909 926717701 198818546 738506792 471957844 227293964 840972121 782913459 921926930 773071159 488925251 180793077 220651364 973324983 982655054 939212882 497391605 202338161 154251982 380313562 129880148 655785599 743007498 164316550 30431896 303270413 101955251 260429745 542507851 566580734 731094064 401926482 582255674 249573431 931011708 44294115 359894044 583335926 966450126 369889606 825606162 206472899 296535301 779806712 130458563 840381079 15649748 509511885 539479980 563118152 217757220 90601939 302016966 152613733 564999760 758581135 622054321 398214544 501682062 607752570 656405730 44964951 142125113 323186615 4466638 130897954 873586652 79581678 719098765 746783327 179221583 210034217 639584642 585692945 633896734 165361293 953311979 181814639 743364958 524869495 86762480 119862497 737804847 301057112 523189452 734149873 719027268 444118649 123133974 691408906 748087265 858563071 302395258 51197569 110015673 55998904 288149769 117760389 160128431 504196622 605959384 444765097 361523936 805391458 427928026 81271110 523876721 431869413 342597926 752533759 660065349 717207886 335261357 811810656 631030663 250105160 469209116 913759041 663081546 205816658 504271047 439436777 780524538 303313186 794411824 376209224 777861988 419473294 939086174 861617178 923832659 358782873 502296781 475616775 207694188 30277424 288347290 739300472 496665962 956034590 501717425 269816145 573279859 890437161 507821632 696983965 19529419 153641990 496551351 548953585 498107727 586530987 703759603 891659449 33898898 797687537 118256524 129804322 872432391 439718692 264572737 347942025 89531414 960229493 170913984 965746859 885688680 360005882 877537857 700981426 23931207 721039390 125896768 606864428 642697877 573253638 830840211 824038191 452702000 327531221 197979431 469109284 491611882 385291536 400611196 62666394 710588093 13510887 866950073 877204999 562978017 522579970 911466952 662709603 522703341 756361271 19696177 238081821 325098354 140932178 875286499 309818959 902918068 539691759 854752450 578732810 88577365 356195963 112867063 937965923 26399264 567236782 188153292 910835942 674089968 630398570 106885000 623863574 126537360 989594888 975935578 469682593 976972211 331912111 68423137 955679937 943110510 177211699 215112251 355656022 97611579 785856884 112746987 52447206 216299427 848845179 848131335 202679931 590342372 858288300 546419009 979548008 57157095 452808213 129414533 509422753 684225023 570000638 352411549 454031877 490550689 979876068 556834622 821344011 562891881 560252811 262003739 418652078 753799380 347144211 638723642 717165789 651774604 665024311 14371898 715611415 274577234 292844063 342117538 526532521 824679493 390231204 518873875 564033504 215588463 548886397 675585449 778951154 209430044 392991337 681415838 690622556 375518903 734267083 100429742 65235756 413863907 493858445 101586381 305568011 14114599 696779151 169610596 914983545 606240990 916962612 2649124 793372831 34250853 3762115 817662872 657406226 311618219 927322582 524049953 738797281 855322762 95166072 377672623 330858636 441021522 350098415 93052982 937750100 443544727 137496475 384692870 174416194 428624889 792312454 975331226 880462822 860053382 991653695 938854538 726929305 622491249 347431184 390010858 689078782 389378987 817291986 853413171 850041023 255103146 19086071 587374110 522626116 852191249 346541293 987623345 780103512 325933326 43109444 54129814 493251606 463192972 167269403 757504785 784709816 810348751 195657001 986316460 4952728 244660189 265507032 628936262 103469773 35487665 486129119 460018850 810784583 420467958 645363656 549785221 330258586 139228762 284534436 175736717 993529423 706748480 617678655 653903695 404904309 954185997 959791591 747357163 192698790 362063108 960560126 576536794 878446778 681669429 850922420 553638449 925281141 75698581 909297118 73455574 611015244 745227891 415317327 342708428 404291298 688861868 175422671 366833085 952584330 763540968 908202172 562334575 712029394 387837418 474950387 617564452 420906866 793662672 66152695 140134117 462051630 815516566 803959630 628580580 52498292 361165087 719038675 309962840 530852119 209425148 204669621 22773349 72718494 331420570 664968787 553177136 765230376 599496394 815770703 424456548 194698555 55854820 184298814 14232065 455900968 366207636 272148423 526038009 983258585 762369931 214711618 464367983 632604467 787626239 975816637 264766652 434318025 539165808 491446299 86916846 336085213 920577490 695682956 975415377 475650871 85734850 498547825 825001399 918334902 441873254 821531536 32051428 509308051 364657086 270496654 643135243 735692374 759778151 131369076 440861130 367744430 523414277 487866371 544805261 571989195 491946620 36635192 882889899 700986100 465244250 281628468 463401643 894805546 820330935 892706403 497138218 659494531 483521621 224358553 622916903 150690958 295275260 847776123 669502781 17123104 244247982 544294457 260257087 989707690 150228622 888947134 556719793 327318822 203780644 973467805 867323140 988340104 678625226 784372652 978849920 539932121 301402321 741039680 911196722 272266057 182282009 461815962 123912018 470445289 806320909 156256607 344347188 84745182 284787066 873247475 82109871 844186965 162598643 413046521 644962020 990781825 831213924 819639825 705063816 344036551 143693690 6473579 507682329 342197698 215321865 967620327 985389251 891624953 634294653 650600288 115855539 422345971 923849603 275416692 528430502 14197548 194175475 219729312 176935396 783361793 173819910 226388219 605996686 658479835 244873506 259607371 984658134 756100979 857880053 462789904 858478166 360756963 119652720 649441749 87619827 851076961 362456613 754046090 591206758 813904339 352629345 788279878 627092771 386669499 15809395 649326569 931477998 17377895 186695823 955180830 914605134 988237317 425702959 762836247 517969808 623492440 647324964 553362597 109983027 175960904 978594460 803317022 52894388 931134758 275011005 164754232 687429504 254491475 741290525 20055765 894274351 762991798 336040895 159004418 612066000 459545015 497153535 173107368 710123876 388955613 316321007 464190357 181547837 955495089 472647655 871020809 510013806 890473175 39757077 728908944 586352096 719525628 970576129 772018224 870731143 185696382 14556283 494599301 119651685 736541217 424148924 146454466 207802384 660141536 343719985 276161309 390561162 975869835 496202152 168658071 142506387 690522791 531198130 740601046 443500134 923972669 869808153 1914239 520050450 576085349 844312926 66491214 593051310 830118811 51561183 452973513 89939486 515946827 352370233 833861183 17062051 28193629 959641429 398140963 91496286 712293068 756427935 467404399 965684325 956655474 532574317 587731344 240061583 377999493 181689729 312766681 508358454 460163965 415911056 89009825 961464220 459221928 798273371 980248955 775693295 322438062 975474007 805171187 528260767 159861720 529800363 330623842 901891156 829723387 420873667 329348487 477549474 811155399 815285609 518849616 742873461 173160652 471121442 527127024 666874156 551368960 302589958 413202670 176720794 162894448 990572744 779524937 534978409 325245601 177791798 276011094 912614495 345405542 515409245 493613689 407099535 605501971 485969116 225934815 506968452 762920755 175448913 774277057 998210290 265465382 946092781 393759546 535919036 595942414 194465308 473446428 493042606 19730844 7992893 545308346 498428976 214851947 605745571 370035336 663176142 182702315 868875808 900074590 90546751 107232968 200220103 648892511 208993417 520863302 204095294 854059280 416831335 115407773 495982883 924994759 904373753 927738269 400054601 721003304 624108661 594559999 778891323 411122815 821861443 417876799 547911072 315587143 269046923 331326441 902464257 646660626 390373107 753725276 790978704 135355618 334968261 677686406 269695182 1827908 959263406 156021348 111882384 537411526 868352947 358803875 514381804 486592061 23471322 417876779 591329922 780736019 434282854 386877793 684891738 544863337 145375155 23840428 536299780 877823589 367801317 980648480 729851778 766543039 806241873 501038549 733676728 528870209 96765393 927115940 522563384 999256309 865644597 434960837 772737378 204119037 10328259 386275678 896613146 23220504 619163614 304938354 680719306 921482900 175126486 705088975 476265179 855577285 335332745 837410591 901858050 533233943 879522889 680141921 850464734 876279030 764737013 284388866 159472646 780926138 256043648 743552670 490870587 865010927 886316435 46688284 820081328 91183309 381758476 86470201 778057292 824297332 650613611 533655363 715569783 262830394 975174854 671091678 899181165 150768491 727856167 414201587 298212863 252937575 838380560 755670041 710972472 835603660 204326929 720638225 639852279 405211501 893450092 618894540 649063997 652684370 859918904 168254206 339591873 116359092 662885264 353079756 347823228 87255159 969547014 250710994 48816602 826005066 251428341 716436585 997894987 706476918 617673097 838966194 665109330 974938523 577830603 160726064 495795329 507973945 141033245 594320261 552220451 231620144 975496351 405599536 144310391 671241270 19647354 848590574 95714897 357190224 913311188 139798322 484723304 392557394 522387902 667621066 754446412 346607372 67277767 481789185 990957700 345318309 213570097 588008332 965331018 345207287 855617722 502988285 516616835 516474502 868168722 224951982 819134995 940718651 665319496 103545878 966976039 456819352 616881650 570534242 186249812 50817315 205259991 585449096 422334292 934581701 723167301 858108848 731043036 844143491 477405075 602152884 821045940 336637536 980773719 746799098 121316264 930628701 494511048 707741137 198908619 32325128 256284399 348144244 827229200 315076256 566302174 586748048 18042698 71952425 885637299 194175642 842280492 907936497 686816965 280712339 993560950 391007073 441751809 944779279 140694703 357695699 435905147 116816116 977189009 330621480 863174591 86424227 441091533 665658541 258574921 337611825 886923192 700733209 946726255 945314485 16298159 460157080 808234747 999384787 267127206 2832330 835847886 560900169 833194569 727040673 470711060 735781221 575427436 598431136 525385516 42210636 52027756 767458102 232920995 241149418 747189393 682310629 714835644 989782420 34402361 899453681 638638969 471657968 165211610 391214692 397699242 147483405 582212505 8451028 409202992 552171888 176860856 571052928 524944779 789535676 957364717 965289285 343140162 86006076 975425598 222431838 984811034 288854961 764112062 267012424 73187058 588210528 476546182 150070890 8764969 893121418 342889060 595183205 469558125 642512597 916819350 76221155 64033195 296537460 184023425 551276545 370452894 998107915 209970664 96674092 650941554 973470914 366262822 620959949 677347922 26718079 928546518 315031929 734111671 705679738 329649731 521586461 483555210 118039074 666476960 457441370 633289673 761976118 661213701 888447035 273394907 823315567 675295382 433479334 423097343 324926612 839433255 782873074 37757564 963449455 631449244 771196355 367899555 473707088 599562668 499524790 427502049 12637025 484906883 883632635 610778353 92412964 272821886 341913906 140153617 380658472 203387053 550622090 716797909 389303773 957724068 900080592 533102319 531011898 885965948 733739692 316701297 755692227 702553047 439395761 167670613 991257484 938673570 587130644 289962689 573799406 990894672 480875194 935725129 10983585 5762321 132895545 332644467 710782381 172285918 865009143 770328928 521478857 959678856 800697750 944450564 652777116 421997246 982498191 988527540 918738224 590905611 954626794 230845011 154560416 333379450 101519064 804872996 637341092 973035321 158941593 805226248 744791838 693528919 935116358 101875166 185563552 708280040 485461432 452301295 810896248 868336806 325357708 747380901 348381513 601839645 87173982 929501951 606749422 207494609 899037849 539833877 254486547 3512256 914519419 655906137 927560339 312458639 943111062 802168950 10429159 84417399 417246130 587035654 317631106 158267557 53869352 916971983 59747006 538575218 155775457 906152253 345562059 190242285 168179807 121088394 146681048 790330584 458844158 444920529 392492235 313929894 138509869 604495944 234494018 589193668 258693376 430648932 524180004 213876987 926935849 842139999 34148346 55547528 399777540 141069507 858950736 579252468 426944662 107718747 398698873 269565976 545300539 425748737 898890271 829545396 470319192 337219456 688794273 936551987 766482059 459499048 223215329 459155783 72349676 52938946 653635645 214525311 779517428 666437527 615552763 54197743 337897704 91227421 765765132 869910812 78983768 558289778 451530841 849772712 707183158 327216684 776644358 209048197 381428375 471062268 200512407 679094144 347265428 920449752 696617755 222823400 717013534 680137818 185789519 525128575 446252696 530579508 255705045 203768951 406607360 824838241 754182053 657050986 324364855 576915637 936607133 849391709 675165941 512800851 107803333 416811036 610483393 83319915 669837077 747610436 213938682 274077924 374196978 673892222 689768787 252187802 102971824 306276052 682692983 233602906 612404887 115587061 524228015 943529530 682596543 392367758 390263185 535366595 567875142 978859107 471373019 813284586 792882237 713551832 572065637 838372954 613265734 684278206 517300458 590258922 828470929 705854250 672146938 512816979 231446213 290526257 983084296 649655406 591621205 240510748 263653545 380908973 973836703 472575297 701201587 383999096 826370857 164412252 775405313 838063547 673995702 486582190 102145559 876634489 115970666 790786091 927995499 233994947 987749049 170332333 367098682 999057409 876987680 451883549 97657883 802255159 833267865 931629163 173193714 599319134 218776457 647859246 776889761 95849468 579668250 917678390 632619645 558044714 766682359 790504847 969074298 511663827 82782684 678752722 167104286 69878691 552707441 249810146 950298589 854853610 77582506 207903162 982878127 373983710 430359950 730174928 971212821 174003499 802173525 737751235 152609774 880956321 421748730 439605739 377177131 351013887 247810025 76971178 929039301 232158475 788755049 570271749 134236347 533996600 539406753 870915425 749450733 936620207 335364593 239520514 827635379 929764917 765986529 591425130 248631885 972107057 891628320 549059256 51236357 660216498 522907139 696667620 972960594 805132245 683765551 523360360 767757132 751206484 637025041 966086752 141367991 226911229 681094852 901879748 97195449 857688470 53865270 678836508 329999395 763861244 418849024 54980217 423056803 993167266 215658570 949605581 601846666 115383889 78614392 473575553 426506683 299995022 828785346 181199454 700663884 481127702 710311234 76193328 157742298 278937029 45612179 557777377 152498299 999935667 426859632 664782352 512788636 709789419 522578266 715775037 806877344 491827832 866925756 685195082 429475538 306287029 538532720 656861920 683138846 163546305 246459153 305645461 802204093 80403263 810284484 841202398 191753433 925660922 626086110 499621341 520908558 841059997 574354098 768497221 39925052 437562803 428163970 124052330 696925996 171348637 626895054 163475376 685592172 945721448 487573480 503866059 160205265 583378438 632327288 936045610 648673456 915649765 268310844 322903547 415784280 586589482 350322111 379298195 175945850 692458800 649311776 30790369 338371330 411427946 264936042 827484788 913337164 487711231 149754832 312254653 558576749 372192078 917911717 285307709 979113400 501380285 581269765 319809066 547334248 327607571 12194205 537799919 671047775 942252341 820621303 82209271 273520571 129681453 626713345 567370504 373809263 789728439 299573209 168551079 68273882 243833105 499804320 886688856 616172647 604421217 855797813 547631262 130942081 233171065 810329995 267673567 957852111 680613395 578784933 459082331 504317751 734887571 878804838 233927633 943869209 15970814 399766764 112237864 322292554 225204112 579576737 66079868 160941165 41430970 822834733 80452758 284249188 140183689 11625594 473972778 690251010 983130269 661357640 290838125 977703125 662963243 170551245 666654793 62114529 806179884 187290253 372203244 593433752 338880764 746619886 440126956 130260940 255935069 940320432 266060313 734268296 593042659 409250776 525400081 150879676 686133984 69379652 799274569 650623189 478961395 475233681 3506112 764328812 97763637 880371955 750490525 85436278 749056441 722807597 490131260 769010038 363485964 211796689 433448353 736022878 921638350 823963164 348815380 161291426 687873015 199415972 282458178 50849051 548965579 117574367 140150846 429442040 646048981 409838442 100730634 953179684 981540667 135353515 856862994 334478602 908503092 64275495 619857378 520181360 782732255 892221365 962883572 971604310 257162742 815893896 160424568 61995174 329648017 946304006 991608362 390559649 251998249 892669423 617311975 215912119 477042756 550633377 889764471 517076503 152724057 594414528 290567432 45270434 430268066 76686778 393452684 880469179 418900214 256274961 237671575 320730608 582211853 512747190 275509144 568908202 306019297 704904801 923072440 329661874 761913378 870287861 942821831 705236158 115804154 987404503 32576291 402540735 915476807 577844594 452624078 146082148 473888270 722193252 612342608 53527773 419169804 803523088 182360099 715979488 223253381 996907665 613512306 572549561 960808688 766567956 254707004 345160825 704881559 693214777 151018947 548493695 888447193 534289768 789555157 20582514 946108450 863765843 249144557 106224541 516264940 449225802 469583660 901983522 807425335 256230371 36957937 537882520 208909478 302209781 640210116 784120399 84283846 447197653 876820408 287187270 832847405 862747700 247151531 406776023 21383381 274030686 763218931 301067395 227591348 355185744 932170128 262885048 709236314 982791991 544263254 824490109 739201656 467536938 39572414 453181281 684380997 545856424 676346 326970111 424978342 515158410 306843740 56312591 173364593 265307548 57970937 228780806 374637052 601338737 894954909 47230391 68092244 323713003 786606478 645860297 733859332 663901388 366946817 565485655 448413171 110227896 971694687 55583254 852888742 980249871 192879046 219792754 141271966 57054291 359697717 448700174 998655781 81031855 902455366 355285428 643561082 531581621 643929294 92835130 158577317 397445268 254483727 455497954 728154369 881844349 337249925 484257832 593786848 861132334 921915401 774543045 700168413 898110881 714613638 733014747 382730395 281211021 583181365 493518818 944999181 744427402 357716454 396850217 704312085 854317782 275688590 852710895 73719563 61900775 606786950 656179238 861884302 146805536 14614041 240171153 603797788 156154329 851822732 634204555 927592894 507183419 370711380 102440426 376361761 231866708 668780274 766668336 16637351 32241776 329422915 353115775 780291986 385498227 647689332 455731270 11518199 786727318 746336658 874847438 619843730 802550028 26981253 752911434 170493677 393930250 747546393 601419324 616951209 49165658 776968849 791225002 778259885 102602992 146171654 592513395 439360766 747942470 219747125 567534579 368262065 158337583 396706570 140076369 249866590 87165828 763221657 429771842 333181347 481010954 992743784 756918359 298342727 528705410 768980986 461099258 857045641 606626945 784647268 204574039 297782663 659574703 511712617 807736844 853229302 339310819 413424123 379872333 441049050 78252682 676742813 821849608 963335177 495705194 137096658 801903382 526785855 899133197 364106965 924990535 869235022 277407782 323518475 38663559 203734182 675941147 332609144 998433247 693035231 619500055 339284720 530282880 389977569 584411284 65291648 628837526 900374336 476901377 168625036 260484884 236307690 841211207 59888179 592796366 80666356 131620376 45998612 681766844 351091293 168009847 676782889 618290758 360902279 841758614 678233787 393765795 185503606 35265808 608911203 777352350 195073004 780547135 22106066 18939381 309926437 578857513 247047799 164457724 332173986 957902020 318105333 487243371 102526562 837841415 523042795 218317752 289911103 28450241 772251415 578521122 950226495 605027619 967239494 297757271 131667818 956598000 445579866 964585209 262323275 126538837 556540791 38886333 934618160 222663651 584687534 695300621 367184201 68447177 691181141 847260369 207193212 502704117 730776315 744586947 809038273 650473026 81469291 310055152 546936512 185846133 912472948 92483994 447582556 440521545 472976055 193229824 859283555 898254619 641792494 354734241 569351229 43626373 955242299 547917852 949042778 765526402 301410635 50079554 857727489 928989596 587529808 420403426 695766036 68449439 341198292 839662437 263202225 848516892 84001279 772227465 47948169 202808825 76106149 922285914 810993312 535572521 60112456 595831018 40561387 630866956 512298444 533863129 146559577 923920394 171235922 786752899 500937489 888864675 641001001 391944421 799501085 304239866 775601536 337649814 867438691 350129099 900552967 42632629 14843447 267864494 818695633 265260706 205318684 784361717 460060212 639944395 840468068 472909012 314988403 405537809 98446055 194638963 22645400 282811675 756478745 764305552 183879545 721905253 891412494 480103182 900168823 723748852 138695197 250269054 569801552 744376393 402216706 250984395 972011226 697520010 102904991 458570542 309273239 788410255 214397171 477236675 824823970 449081609 165021101 362480050 266805462 85940236 293530538 99456285 56783317 933575107 124393118 995441706 459016817 270095139 871264362 505285727 580461761 334186535 593846271 841885718 548823772 779017327 205748678 288862759 573640579 203138968 574218812 265134085 461467602 51556069 851685863 741585614 136628921 117939208 470843682 814528200 762620560 528971058 656985289 114227787 762233185 125369249 130143776 816625943 952931911 298382548 579927960 511502837 862213840 177091467 743045821 836973053 509249150 610537163 662449876 858369485 653502401 48966645 77894249 29939112 803193621 422066610 686317245 528521443 886877483 291271233 457450047 935860856 445658222 115905025 736724392 477262744 553310324 311347390 178328650 132351951 456869301 365610155 794769930 490968429 87694282 124100899 861061623 529783445 531671716 666229816 411218944 776080883 608842226 759790651 741238979 347252697 74425138 887321858 713929680 471505063 534951494 682966891 32466511 59789539 326231978 101676408 965969518 855662219 79164149 842407280 715808798 606382416 182893186 274242769 635214901 883961753 797422572 187249641 681908000 541822841 78101548 627492637 974328821 163326680 604018768 475548123 426166516 431219064 386847865 947813533 741183222 607344502 462708880 219330795 291365942 557348919 215172897 926417631 867005259 548600250 236420762 816360794 858544189 146612949 372893614 512804761 204679043 432390192 646400614 606890844 169205024 286867976 438124759 669518182 218225887 618464998 271402985 433940874 405342383 362434704 668405146 692530595 511982407 216001809 594305798 543353382 844213105 21163594 925493793 470681769 50122766 299626184 637086241 69626324 80562049 192850312 959566045 469575670 376679431 560620755 777782059 987996183 492361588 888110887 571798542 233665978 221918842 158032898 595373138 97328898 202052109 128885765 526178321 725360873 831350546 154349974 579700521 151911295 386028466 175024723 995277265 375733080 362594724 991104048 92019815 260520267 351166232 902786391 497491644 297943691 3780496 823845770 630647615 809651637 555208487 311678986 820231565 899934096 777954176 637975716 304429723 971544560 770307468 434824362 916694141 949196350 660404222 43739301 596970362 924828351 291848586 932034741 433871719 474525805 817656431 748929224 645517585 143499404 732445004 95505416 224380537 389596290 793798283 60170891 452827182 226388728 693577047 121835616 733920387 76018118 420464221 905299863 475328072 584034123 1927392 770046501 7756202 351470409 7294732 525810128 243900512 545356851 687922803 707105451 837589547 647570443 873934398 805092232 168840206 561142185 411112206 330304404 597470951 306380255 907450044 371811610 104940595 281583875 503354278 72138337 303710451 557783376 206619505 950541523 535886883 683100858 737177731 843371506 29412439 539377584 199993761 290452296 406351231 841135867 106789280 198444363 849781325 453893889 661562861 834054373 364383027 640511962 908359384 779429142 514400170 722614378 656118452 364919666 84054621 437017740 794187136 377914457 928323061 521937537 33312301 448633724 167513946 799535991 285923877 675418091 749196276 322751657 241332618 651250999 811407717 338918683 529821870 359403289 447618437 184788599 214627413 234688808 458533534 847109591 855477140 420694978 894540305 171715717 458616414 31285253 567575579 494974591 245392610 671941898 426689745 127920938 757003048 119999156 462891603 515585462 344800216 237358734 234431725 662503483 581767312 666713388 667758019 691337928 535974604 11308612 782476717 212192486 51980979 516789264 182264242 852101165 123709224 822173997 645960858 965819793 553992339 834452793 697288171 629680380 420325919 845780064 578547967 685331346 608042880 577054940 593460934 501523212 949544084 351289427 397577747 928417180 735328649 715150211 314278490 942181112 953999748 946936408 399993130 950161199 828581855 337772129 489103604 808913424 545767441 611808594 325664822 777465260 808694987 685176813 207757676 714959314 486148728 434564870 387488210 675750828 821958681 822024305 951443304 79730189 145948517 641238060 569412923 532312657 153592671 402432321 74284019 550974048 383287880 755313251 686748281 488489249 230416862 378252954 797572878 434813983 768412903 325218811 400453865 380249911 154062571 353015659 384009516 45851960 355479894 774265175 957433735 381686604 82541887 75101681 701277361 666240692 646986300 550233316 902677621 645903875 130065083 928606677 404651877 181959252 45395422 555503612 641052584 148048120 374624256 284476670 367242917 819619295 461416518 521708287 860869983 550868084 471172113 645131814 578876864 202360513 604488203 804791167 777410664 769110100 295738218 671643793 252974942 848285871 132280930 665786643 943553816 329665484 865018692 376334993 881914834 248019048 668648867 178643657 965647515 559426563 941430732 785852996 539715581 498418049 170506410 93716079 217888135 225373789 255183334 673283577 456923079 288408217 508380749 842012114 636696744 585923863 262644252 184612168 90823064 38603855 467032445 844718633 597264643 552162305 393322558 556895264 102939207 134085980 748742532 440134348 894115416 254681935 470491132 621662280 236699744 784663881 924320906 822305048 35488576 980060024 222244942 180250512 703655405 246022163 830109054 321969400 647225917 878438092 349168723 328629421 903325996 483831408 803642234 119259554 617629363 408475089 938411094 685639407 786846928 565055057 814489043 537001137 640716669 412625550 906041910 695275974 184922348 28478340 62959636 394008797 712994011 618304644 269489577 9415655 683275989 712701553 874946209 209220996 335141169 185602938 472943794 919018323 99420300 412571885 484222236 590117154 821065225 978664083 498902443 213843039 454997730 335630834 984756926 678246855 546305364 956088776 671885745 266126615 691726435 639672867 358280497 828894580 737830733 705587414 208031498 564345308 67934055 28402178 49958174 566740456 519120382 670268387 209499350 536227090 387604152 824672373 709712375 923828876 97377773 564598496 724839565 486958671 528651236 875521887 895881960 756049904 274194187 222638503 93530013 721646243 512111701 679218645 322077146 600747966 938427305 218701268 880865726 372045592 374421786 554625873 163335971 88692676 497399104 556591692 818542658 497832424 721993394 487007514 511807179 617253359 796008819 779858124 67997363 206253046 794798214 933933448 20409243 771182411 724981885 20538344 724400702 937043315 936513345 986619936 628228616 778779876 14289240 518493514 248439667 576840599 264928119 183241348 678008430 915231784 835841737 440558301 649404402 335625301 632036595 633150019 843910418 907601863 853567140 290963415 146828289 866070584 890474988 420765644 691042962 477195675 333360550 387602452 216254244 578438250 508929910 437467511 71500430 29110862 433872722 617647511 390737438 11880224 361740656 790446194 64744369 218722836 236329076 250210566 760221974 798083762 939589372 602579793 405177980 53879403 502629702 637449534 681320476 418475568 510245550 88956902 861439607 263375259 240226789 417604993 822093433 541249752 483837651 18952985 487776793 796036257 69652204 93569468 93771049 57313526 743476160 86879740 332108766 930233334 664670888 844973073 155166318 398864803 412667016 269067744 957632730 563562739 443072829 92020597 846261649 94296560 479577126 194491605 161027103 175411527 873943068 61110483 717169959 264580034 228341040 883244005 442236584 217539016 21797779 879103 28541327 43648919 613020924 11686316 837191499 324147073 35126538 751745187 699848773 901963419 253912694 398658059 319215782 829546892 943692934 864288342 159656814 93462854 533885094 312382004 634235684 621914034 645520374 200424192 737098417 121029998 161215084 566233351 985031677 895383692 87158842 745846675 161325055 251785751 109897150 249435297 857985690 268686455 166345034 702703457 761043031 765478945 242640774 985649395 202363748 634980721 618368856 638705703 112407152 721805562 768251154 719388275 550536796 884790705 336717456 58718122 258546256 484831033 837847080 109131107 489811455 647737296 339200938 605378113 720451468 762476208 613782064 60958790 124997382 917176869 931928337 843085720 756130400 238175964 97155713 698774749 261518633 173396114 35499161 693320558 5691514 470775873 206062655 606862269 307014208 965099847 90204515 422460067 997523289 772504318 868519930 115760857 169417213 478611092 646694940 646461033 917430958 43847732 844889338 206999893 488251358 571410784 815580474 349342814 766227205 433590251 907784636 102887957 759486580 85095370 950769323 988150246 891734381 448588606 162253818 649600857 717957256 241259127 749934109 464461450 706386648 721248556 585757389 967779028 214944018 964306026 460450699 430270450 606357569 879907285 153653441 940136600 859299258 989789915 110621088 480449610 224634141 955686251 301225104 872348634 765877899 990241760 453577593 315592964 54948036 87012806 843919079 982753934 178738333 692309712 155665266 104825176 732528007 300220669 761616467 207642386 838817842 612797603 266562375 586617029 777415564 355196763 892483892 253019383 574198278 524116405 51489219 739887913 208376287 37515598 147946744 17419301 464193879 963577840 264840253 81303008 772399316 34099009 261245657 738565989 318992716 779759288 96765025 105031509 338784251 581206492 253443999 502948867 800678873 394079249 145001191 163410074 582285839 532391079 442619750 197444501 260429958 455970895 264609976 203852837 782210767 687525764 195756510 282463183 821844868 483291951 81692325 984417610 324420597 361277916 596375433 780686401 546391507 897341669 404527947 561017676 1663242 115386752 986367683 174718817 276440847 775050263 607260426 556134407 142691036 237876013 36163283 254242220 677634738 386395964 570828393 862472108 395515656 912522691 307749753 574517746 188098860 218337872 147908532 853776165 220977245 628623680 787367176 461921922 340307784 402681929 148924712 122600668 521005651 231793890 123388563 998292261 4520395 110910812 256533702 627948018 225338391 838981784 683598762 841646532 257857778 284196948 42488303 676539722 499857148 243241249 636563473 553439437 625284763 592673728 641191780 151384210 786713697 274225195 581886296 111889795 932137023 399592708 94514246 485750078 105792228 834206257 588044120 553853285 895597108 512604386 739748416 273673511 733063313 783714165 120968818 602379038 61094392 347063829 652438380 579440629 572038304 140538404 158023611 119770484 155719542 954171547 508602860 74290531 210075012 536691280 802519806 897518022 406870032 357134857 756723080 66845023 683680740 265311136 77214695 553935308 903184188 70576771 493609852 755514336 3729563 735576124 418428333 932761046 410359003 428471404 677898582 602157607 682776205 203797304 388936024 481955871 342391127 837089032 427983135 479657291 699793538 513389341 964942984 399456777 351988376 303053553 915946518 677015251 648854721 947184484 138353164 257966820 547197197 850899017 326524799 929926420 373914203 176619712 37658025 592701769 988928312 12209472 784040349 446287904 737341793 465347872 478977480 241450402 631755810 450081888 121674732 948895813 997908971 974840438 453174435 181060633 665031240 125224196 128440617 212216554 523606997 717059428 279353628 394149879 435101603 246677006 310305058 606357806 91530940 317166652 32985521 798848857 787280903 555583713 973741365 909442002 614326179 204574850 352265724 913510053 812784674 567036948 907305295 415961070 205512964 958292326 375694989 348062046 901746761 583275473 711186883 497400948 662023495 445520330 946079270 385392626 666257275 693193065 750083539 4804217 50095075 905097422 104437456 539814432 497305989 302693687 608808910 625429116 94561781 5833519 661035561 921547562 196231645 176681023 189307337 305581643 956017898 731507860 706272010 713565453 564154476 114520735 441386383 171326064 132579699 54636965 177405462 283609288 615732352 61616895 835260750 500543447 420577372 749818633 845373086 7718793 54389224 858904043 709137883 931833434 243949054 587830553 438757160 183318224 392804412 255152710 787272070 999983610 850340735 446204622 546899830 184554908 62849483 413439380 293712286 156438314 217187296 348110893 509184169 202813935 451104893 810198609 893017980 652617419 44364697 79664929 343331316 617884458 481013751 351893387 45829690 219328211 572493919 393913852 143419558 146348779 326198133 943937199 99897427 137287973 40292729 990872695 207313514 974530519 492822369 773638062 468922820 110514380 87646219 518188452 843535804 572134269 181973875 997697938 198600979 171705599 689922306 426141598 791651119 121300007 423392907 842002514 152417452 297888702 787159276 383114143 988138858 16377522 656177140 888543239 406133852 446242635 916058721 554461757 952286451 108616144 79111304 782726930 841018761 408783046 40996540 8242487 949602067 367850579 611217835 947110907 325852493 359291974 88560847 607689054 227644579 663299798 82064949 262185667 105556092 969161655 844144349 810685331 799767723 535956723 837909516 210635618 285713242 119096318 842859075 12755717 50789329 301314439 307140976 716469105 471893098 545196391 906470112 502649462 451126708 840898997 500434854 382424257 463748175 66895330 894808856 338961004 518303874 508745210 440109003 999379605 712719749 187629069 456952731 57546444 196584233 772365289 327858736 629183888 306966453 910852617 427210507 701146443 111896903 209854720 321179701 438590257 599705100 226953141 506105292 434378665 87464837 373282192 569084737 768673545 790964649 498188186 96306514 836266174 123884017 985046229 18435455 89312878 578995894 578692287 231007587 726752525 240971077 601282649 222128436 51159535 52184115 380064873 344690299 791415914 251843513 161120746 878255613 224519863 900362362 486166277 673829672 985622080 162933229 6385038 245787160 620250426 733723132 153736798 181383076 534631618 181158383 128112700 40831250 219944256 470572208 983572448 524445413 980006746 844803322 186106299 42837081 833312059 174663685 680202690 400345983 335710089 868147727 49750083 196243752 118057725 789480865 362577509 932594618 976636011 207924483 9359721 325191237 593156591 554796969 217545091 250252542 568138061 947627328 114475570 279538410 431713737 404075911 531611450 746678168 911367040 406260880 729996397 648948359 770122518 972617974 881600115 248069119 777059870 761000939 586282298 13325597 194732128 346648249 246715169 40350436 564607826 998078477 378023545 447438824 195625409 208605334 42460971 287822539 721473933 162519577 946614661 123302900 228684475 878366731 150369716 129652876 162953012 241120498 210537942 680159849 178260179 159418328 69161189 552747492 223415055 419017123 37962305 883257914 129698630 187832780 26095531 324737915 297837636 925577344 264707899 445104050 145984621 715978332 364687511 809140890 852988004 871232698 58217428 689966947 817122183 649023369 45844612 591273967 573829776 744725224 924186621 72891458 130721463 261125976 197075674 160167196 933213384 286065662 66891371 805291750 971416658 946351710 539182740 608084542 966311144 252640152 881736339 222244278 271421790 969627582 794271313 326179871 609379762 775195070 856476216 726493087 282485728 627025843 325919481 857327453 394115333 832032983 352841145 95734814 218986822 915471979 572008834 531678705 554225294 685042687 198518480 616094622 448932875 899791568 639298925 671193220 207377707 592255408 458580042 40846302 858632445 506584906 651232787 623475011 588857768 519538068 548053772 78260068 329513192 414861558 21852112 291807761 397750798 244297906 455325254 21318817 924495254 504913871 390046213 317559028 937897708 808124153 591641260 658469941 88778549 141860382 242121727 832020522 705757628 717498978 386476141 393808044 257933993 766042873 644824740 127633084 404142555 809011680 995992178 673373112 46481259 202227790 506647800 403315596 532922116 607972631 683286438 693533877 755762100 991273739 601952253 167779289 409306467 610866670 579323817 973685925 620735852 729632364 639555301 499686794 826261787 422418326 893923519 155513797 223820851 581108450 140337463 360315984 120660847 986676644 748181195 486750039 410891685 917457802 28156143 507565102 758318529 926148777 191105346 362406526 923120670 846242207 830789640 276373378 602930400 892701249 975647895 402939902 692806475 67742496 229547914 980526346 371515874 825889156 306513633 221318738 371450933 20839993 86758271 664548971 245319095 384906844 201408155 425210685 222170114 83443352 777020169 36483800 309635825 913916024 825838244 830299807 564754797 5776574 356263086 967279258 507604792 684096500 344457701 574905459 95779145 979855392 749756299 640951106 569823326 222732639 963129462 173002262 287462108 965886788 943510704 593408640 483393337 40553934 733427379 490721658 855739018 192103884 143735671 556832460 248782544 828807563 850888134 427326844 288079898 2440969 166462992 957199791 73390847 863583435 913037101 879750922 927817687 155510234 509624759 538607323 766769209 566419974 640644635 251777215 408390351 562941002 617888168 503722871 359156537 303163906 545491493 823569633 412928988 357025645 788723484 972404776 865236791 635829979 305255091 503327573 117299433 125394649 506587977 873190965 303174148 81771400 671774374 403824373 733580272 794798964 877622566 230248214 644652820 420439697 218740227 810072311 866671309 236782245 951249576 144703722 18313673 548607337 102633414 82881051 641296292 163353767 792513783 543042424 447728283 631755902 876750245 651849602 954812234 580329043 801330150 400989177 924945599 60645210 863828803 274596625 141193312 461218804 633316576 825389094 859004619 771048330 21012632 29758737 677867360 55962443 234073101 952225863 196208967 973856756 892239426 222988948 551016817 206947914 120962785 138507132 584219724 807431292 687332079 567813688 232948972 779954321 287727549 84903039 515025309 496826443 387561705 184239443 692055404 630837328 522624258 607760288 941271737 768065894 231011831 122864792 126069557 571202121 935990617 959421244 574766348 13777366 242279098 249488585 270109638 419684473 814051617 756406332 198411420 841952616 185184800 113475691 708836759 63130192 682945175 130760081 220794461 841701997 791599996 150910796 536710250 699178226 905912075 263263689 30540829 886110135 691457336 865722628 692270116 264317889 926709792 118071466 628037302 105678051 844915103 497005087 748524353 318430004 881893647 186366371 99023594 954433240 455124736 166908843 591130604 396312349 53101927 264511272 931610216 283849924 865827587 774598802 290486123 128265224 186285638 961606231 964833079 282820950 415999974 262689626 389645031 82880121 219309974 540564164 878511749 540875197 298066116 951276246 112433713 54425302 660573094 224576966 715558200 849384577 154229251 890501633 245928547 408801966 253163799 512068685 439467019 871892104 335580457 512187747 484606600 309016140 762588152 757537599 412467603 583898421 577973761 386744304 934783287 651834630 963925102 403730913 888925892 35724403 799756574 296292238 337736804 633020109 455216578 723781869 264224584 715012349 109221217 914065567 220757165 153062109 486087494 259266996 191273175 834231993 214998913 379858407 90952940 963001570 183033885 369376985 343220979 336402090 715623928 291989520 114707568 128881351 105436992 572905389 792322388 345738862 454760205 733941039 293336277 806841055 323755248 20165712 678368039 552261813 376053871 758998405 534849502 643286102 285217154 140448746 965462494 354753112 724772921 566446574 922339357 522326002 91169832 264627689 502737332 758990926 977097343 975455608 98798202 323502163 406517664 512171984 316271861 511512325 334053528 371121238 80202129 157817712 824386752 369994654 545058418 982951758 965963716 219954744 130436699 928656674 305526758 392380106 674338519 78198340 755063810 871405217 60972444 122778598 337789811 480531764 332620586 566744966 920133317 541676177 633483049 273103837 380249578 823688272 194541149 894624421 53340388 256884006 576944843 608090845 482205394 686342913 798645555 413927028 296106354 915768727 185228220 321147765 271967358 621773516 493757891 128656510 143328712 674415450 262407617 927336959 483402872 571937166 176288628 322216772 186298980 505802724 181195566 673667568 77810647 606782007 888778941 167604478 735835279 179651509 501993918 389850495 886136730 863842449 862898350 56427838 695519590 138704942 49210900 589686159 612611335 325000431 556570426 94675467 403072602 763627184 823902598 939674054 514164378 559190402 395171115 838518388 316073867 448684222 859378776 310006276 742044209 55345862 918052862 950288449 299611197 630644834 768761611 482418409 844007227 871551854 104352317 639651728 168476987 380579526 36612045 399510174 585797319 522311046 624469730 741829867 31836621 229088284 349148048 512995439 954644317 227534351 265420673 689850546 568539158 393637572 197303717 679133978 558889445 814969789 16555961 575777205 791766667 119730106 119380547 480305139 723405875 840249148 911036023 923153153 568281404 846612155 71051697 387153080 466550964 486477551 570689156 752232630 464018734 933483408 534184218 560313622 240016776 995795634 970143465 411328265 924640132 11977410 96880220 69769860 220038002 622051572 886598558 987335353 943188038 887355314 377771715 620750992 495270906 888036536 456508729 14816505 526285498 769992713 327810755 487914899 403423134 444970372 515574618 651959008 3758954 653989893 609662850 268539861 856414825 901371371 132303559 186131885 120740169 343308010 401654536 722732790 192887797 962331574 79297618 180322225 42164138 895441987 845611114 556051735 807990502 357464780 83367682 371889106 7285780 181876635 221849985 368809120 885021560 897090788 679519576 799911320 638132638 200441743 927135394 387599023 735166235 872362924 85473878 754892897 473897161 748612590 57201246 445395593 244055752 855869155 762776159 691304217 531433844 518138583 310097934 798168470 899031130 632783871 906367694 162806064 560652028 426256911 470023875 304233213 571605774 737805982 656786013 957482223 765125513 571970535 344833071 264689533 500943097 740561287 256932453 5113308 36877457 398803308 337033453 898303152 533678562 194965090 621833264 465421123 720611591 972565127 25251329 522322087 105794583 981039022 107679325 498704691 93456083 277038595 398559436 363090668 44053301 833193574 443830507 556213190 624911873 623259984 176433443 388451085 772992756 271160457 729347404 926879631 827247213 794983888 336709110 486524848 902653897 424767841 228708192 686016372 411476675 523325615 713667230 802102778 875881112 644943173 294640888 225141183 644273704 731090808 257595927 599015471 775003428 72383435 962228142 23050032 388845183 200699768 962802105 112314695 289772125 580881115 119300048 797891365 167059800 161556110 576375787 38725181 137173673 703986480 639201730 373996573 955396203 187061844 893700253 136331756 930211179 146715179 349643651 808773969 930796430 204129051 761935759 89609601 126524622 425928726 823048283 870842864 428924266 126248621 165442706 955792522 189094338 233621946 638593270 132609380 775004783 241187156 470213290 956208336 195893082 440028849 965324824 483722149 820055978 975001241 33713992 758535691 86274561 210852502 334225023 10472493 88339332 410976850 669031336 360887275 62300358 868658465 175158661 857034443 701708879 471075732 421073200 824312916 178768971 132765127 150917586 791528745 202573559 316516674 789860365 862069397 686118737 751863684 753395115 442144743 314911280 698987748 13096171 52042028 256035253 995992236 864337902 887177734 254601907 660631050 296943647 877588304 603143656 191378606 471711861 758429403 40354069 68829543 270299323 968894769 352512377 886639161 872113534 8339756 331320551 16784370 106895502 627367592 646958867 106961598 884248964 330174885 552081621 736238767 73680069 873412921 109410718 969927550 944281458 156221106 352879287 957689998 777342207 748775276 690920950 365715958 122930706 303286812 567155686 431362864 131413034 538944752 372166113 836310498 284916608 38649564 77547016 451989386 329975328 302485834 478890621 849501197 359389393 182832375 996176808 20952463 453109893 450500804 643460010 518696767 294630272 459633964 892459494 933373627 482666497 390041940 319065610 871382651 304837613 622226725 321488097 537671005 451596143 15303335 584236712 372188696 687625412 231204890 563007546 930370223 751903190 489656108 298531371 652206399 261204271 100294776 712070305 593766985 545845884 91496645 882916601 170142148 153888766 788199724 614770619 914642015 599762576 150519415 578861748 474531922 160889321 698024025 660964798 853594583 770054163 163999325 597407421 516292067 514723428 634008300 308917439 977867788 588464140 211152008 389078545 290183054 64611813 227391135 965626598 970152422 144936564 660892344 469289681 92940388 368256873 401421745 991818456 683905576 618145757 432361805 387762690 36263146 530233792 107121686 196415503 974887813 541960595 311546375 400892774 255417645 108808474 856817264 979604547 844945841 71149556 26448375 256669841 434564601 265680192 938130978 859115191 975811446 152564557 613336468 506900281 11018463 959558846 215885873 912782670 692382039 310074283 349813371 640837210 895370433 83756039 865969505 57973197 662471723 706604532 340713220 71804156 720162410 41720136 415743352 52721354 333813861 291356417 155946029 528270951 541963870 771782119 522489237 242528189 513260179 525291944 578852560 837648689 583612286 673827679 818261972 45886213 810047175 868476035 643325061 947899215 788345271 343070044 785555687 838976434 686415780 139260845 666758727 367826789 18164675 326395126 333647195 739547613 587252505 413504305 983787097 957547911 115240372 984690146 236214287 666818407 564178122 394506530 315755803 498275263 289000352 760634078 995934337 214488006 490763624 493072045 146199148 794420953 589578807 818365603 130271659 840650333 407313155 555872061 369549482 582204965 91905779 133610566 631910215 691996148 72585624 1287472 441104936 19936917 354213503 684414122 823805795 686170936 743771095 957178660 940033596 50928056 730315518 962861356 970003763 793705190 400393354 460425126 365816218 371758099 504428982 438147683 797135777 155855791 537097311 82693723 717283723 812760855 114058869 529659150 37037976 796353086 561856389 409716646 944105249 98948083 295521484 530248495 150216380 299238590 507676900 730568908 838034977 460376769 678376035 472527418 864686982 542233977 556696971 437907921 518178520 733516333 657951279 175457153 425314025 278392748 281168127 319297811 324714874 253135044 259301848 383738526 125056662 995254927 830738995 828316542 215411305 385770250 552346627 637900168 833941574 513448628 197836017 596070395 431872696 431179292 814812586 964269312 867192617 542497427 221641661 274191771 697450565 249332452 386175449 558402614 990614552 698503689 733795957 421709629 426618273 290191185 389226474 325097861 404798094 508052252 977457579 839887858 144563824 695688929 501037687 357064593 24243537 466381660 61954767 360623762 302820896 369092362 291129761 453592347 592823920 630050540 825999634 654576200 201080281 877569003 645631495 8050572 878540718 489016396 662771440 562996980 694074295 196619454 545162708 435476653 634188642 226483610 933037853 201557678 499615182 963151871 911694348 86322521 338814542 736277954 536950451 784750121 113940501 528401966 391467242 2100944 805777750 304226902 658677378 976928246 345800373 915351895 233635980 937160987 698392742 198630131 618920662 818586931 690412159 911122100 895920465 72447733 799570102 211132151 965273891 56898442 734381630 798368024 320696550 168324432 883760403 435395490 144318042 119469052 325199261 282139584 431543433 557451226 821784680 736812146 539660854 307191540 460211428 109369792 368227492 636773517 272625403 647479702 47338511 492200921 628161645 943724043 389105807 12523236 990542033 293562925 35121472 731315015 19335216 691618311 749751146 869731094 311031480 947398322 183177334 191796821 643430554 446889312 625084720 554969416 74217545 495387460 796273660 216168960 571960283 488248018 981119060 212142106 59741356 683327772 865789271 807460745 686165835 647476541 70672112 226302364 743428827 534208226 73681931 778204801 591441575 90012474 53571205 565506243 714639053 298206558 573252100 894945560 372848153 696591284 189191199 299987352 359379537 233976149 437973420 287737574 379931488 250516543 714306570 371516818 338142912 256304611 400606035 765514814 300481730 970553902 525142580 4546303 392596082 314294153 339576915 980853876 797497644 39499857 954249642 594639147 820367130 995902450 465465766 640186269 230747199 241446340 386470811 202858463 114286273 832168813 790572886 83940157 200804455 347862916 335800870 825220338 201425943 191751507 514621744 803894588 899846081 298362203 274340061 589917016 198794253 93609939 112600187 771903583 36444665 332437110 415602131 396444409 658586080 206639829 110243563 363410388 719736922 433305496 831215701 959574198 673507656 904939683 121988298 284129358 889255230 717386282 387396560 243880609 31824007 164722628 989825064 697922033 673840595 211993829 397083753 139937800 725068016 258398572 545463230 202846070 224435894 340178614 170186808 12105690 276784607 606749804 320109213 951854092 707975658 78608220 503587033 941653973 466736246 530690179 278823386 69451378 778794501 978665510 687581468 676143220 370282916 113006406 748944084 899458245 137475700 572044858 84254029 101570160 917827279 455833767 319625365 776575378 108367226 905011569 294212998 322145891 134585442 847646216 438652529 123671789 704366901 245996384 687750389 276734984 51295886 396566838 672289919 476511871 803740999 291758410 819969393 552630648 665960604 282046607 624535770 695787050 52989745 754108999 50013730 373288661 876965797 39946494 274903636 814341972 884620762 798459314 617259871 347075789 390387139 471262176 945663672 424827350 45291406 651009273 148327184 475196597 498265832 639319159 583739681 59684056 630851885 893411985 737404733 11814777 284936306 813807131 157972003 371122634 735673530 351585752 131387400 765730370 713930745 300506379 92929776 200752178 504283996 998725246 845752226 306341868 76206011 232356176 809701566 597974736 196418508 613245851 246885717 354161626 841509819 951738762 673582777 15445796 274558673 948567856 798500577 897408010 736673161 695132555 75049075 326391914 452870980 531249584 802410056 706172550 656308795 317566170 143617115 820590306 825105808 188433484 460556599 418606245 654419901 32770016 638930889 438757685 934630509 470367318 984835369 125138261 27818450 962676021 475947903 674787757 515589315 650458388 808407044 124788551 327955616 429250550 235613550 753556933 908040250 739741668 702996869 480674322 813035129 873088218 500853412 200387327 437542898 472149184 525022423 256983501 889505415 868409283 842613736 468164177 33172211 377762635 234854317 447513322 529517224 205527283 28682519 670099551 316171753 947737459 943038618 412305213 232949154 268863242 342655810 647005597 672329371 118980981 649768027 376714304 872587553 188171020 413955628 214344501 474515785 160094292 795400722 925523673 941709988 199778640 404343017 496117373 508922141 739780653 395314725 509775920 406963558 564762235 678655112 356079306 351197349 103378543 304286733 746786727 901405958 811455542 111108155 434924288 634155201 847387348 378944646 37735115 38223287 268963866 467111908 494404480 831406130 655396150 107740282 931416302 472521491 668900718 753264774 403518916 996269223 391557616 144195893 807598540 840167865 380759685 901402681 538595576 389647923 800655927 251489652 479988872 753039829 679381336 468321940 469458206 691579097 83706772 236323001 871105493 622651332 542409869 986344033 237026915 90099578 383386147 846761718 101113535 795913590 61139967 538770964 501803742 468743883 652926530 919086445 612451848 304651222 376326370 676621472 511886080 327869104 989894675 53784370 632030523 442872527 370808082 517088191 335195020 887029646 918469261 333212437 44885738 971783379 975476885 545994964 217236202 127423334 197971016 410134542 35025117 261535587 935353077 715848677 274326043 3865384 410898855 826753901 146751812 410018874 218149155 47035866 891734703 59279662 410753775 800773666 616032233 871592837 828858506 782841888 84174017 651582032 986674716 169834239 718975690 589504553 572810514 148632621 550585475 601758602 20030216 629648974 88173293 503465124 955273100 503791265 847332844 316894822 242700477 352188426 977505760 385372706 47710839 630828494 993054287 758487471 260648837 842307215 149862334 112971747 522852718 371691340 52948729 935604818 298391717 172494029 165468389 294665978 181162276 252036236 312350004 7206818 362754764 951905593 365529375 615605601 241304804 765063003 654236740 689690199 390171802 651745889 388994699 795072694 851085104 678995437 573525104 710478834 900379949 753212108 419910264 846255330 433199931 132315267 441471868 162138177 802809616 685663844 420648709 347273486 829537897 402704250 306354008 49210988 784319030 181810572 29190418 446638661 811405492 759512790 297780455 895200989 746989205 641954155 210885020 757691303 707716759 535381848 13181490 931010669 693069024 211115259 680603263 709140988 227104100 206730519 59423663 826874323 863130165 668930405 40757778 979295391 38841018 885863695 508157419 300946300 87985561 875176823 518897705 520612707 539602081 816254744 558448506 999128782 463604903 748549906 928662372 630556602 943166111 725934998 87520123 699698999 750230692 898397572 350786492 982027400 841946474 921342817 779759538 741223689 545720640 632008938 616521913 132708228 928559885 192258960 238032595 793888248 796829811 811142423 583257749 951866541 708358265 105400207 499862012 529215055 401923730 295936723 795739645 826454881 792751181 707707071 150617171 454465128 504674072 728875012 918953804 426335226 479415486 993787157 557766147 698579786 268802562 457562932 657366914 509363014 499652741 820460987 343420430 326395446 970784694 127368389 208397619 161981297 664353654 66989091 279478833 821377539 730620208 213839774 909596517 932856722 363253994 468099532 78433184 357702642 590375 835341530 835903070 152221732 21798309 133914131 309647154 125014871 285028804 452311984 445604594 711049753 319294860 513043046 491924015 87808802 832487604 161204258 447913059 997960873 236396531 964639876 158033008 306564945 243234110 660433509 656137725 6861199 509319929 85466483 410515049 841833059 753917828 981416349 470540662 331752679 533369877 604731282 246642253 861783832 877143162 306438911 221824361 796623427 993303636 44066394 599269623 142827299 942560559 682706696 678467612 902687885 874918241 547420413 124561478 336530089 910232221 245147446 902964350 617283533 540049440 552169598 991546431 379087482 124949927 220632727 650603596 139051768 56959282 317773530 871723098 838793542 952269787 156778276 144776981 724850217 387757347 100311050 807531638 860637719 877407371 318092770 103075284 462630986 304945915 326990809 76172302 93624056 421572863 837763678 134972825 918266611 489491396 125325747 289654632 237716000 334410466 816175110 693442875 732549547 294483193 855476383 671266185 6921703 614502094 681884704 537588612 680747412 910603370 305591780 69727255 600437460 666289019 150064963 558560677 969527107 49853980 89640700 264622238 60202563 787354921 103045268 910307109 526057544 861854431 846156330 384402861 28161215 454431870 302108288 648497583 453614537 346119936 245545814 733644514 509236714 633983661 721486766 405587975 831247428 262083254 254164610 787120100 170282542 778953943 104000413 351530168 421608819 285760698 581771013 999013501 710380421 485436708 764010187 528893089 604997029 816559109 955602945 122681044 546107610 942160328 179202450 693433054 65750041 191028595 484498820 939232652 147175384 778912991 415020005 356983763 354339752 561814171 153124721 379571392 436784484 519860768 204635982 583441658 528395225 841490265 150689350 102897835 455979020 780766043 210912957 481274011 543235642 774070441 164954623 359538224 301439188 209758437 409336731 474708631 103001941 429783789 208624527 204633883 536748937 360969537 880559848 788759692 935919333 270939130 178836351 967645688 87590542 486613330 999177476 891247535 768564099 233511259 416567805 2606846 908450908 682520392 934962999 380289010 780496872 15096711 715397015 463199707 411303475 145348786 232254518 426936606 315411942 837828637 346961312 80511038 748187153 723919984 378603838 887492697 541774989 541804632 738519851 930003515 200413398 200729395 926050125 940391960 281958230 807913075 67028801 667575043 385461603 964075388 318081693 546064083 711752940 113233918 476417004 244898232 235307978 603168589 501202267 446229103 655263427 923001911 268880134 656180055 499374491 796543900 380994523 371688809 607691216 755904103 137102883 422227989 408258729 396944317 7554624 372604547 302721021 372066213 486510861 200123858 306996682 892633825 244109258 291429306 444068197 312812000 612391474 3223988 679516987 647739901 527185159 245123573 600309684 539368965 28749646 275822725 315599562 473340199 695060883 618876385 864192087 425306367 215560489 702681409 898752484 744408104 420847089 571466205 91283594 757720310 545358933 718965213 935790365 808100713 22343306 18074460 578806052 737471061 947037944 853179714 793615725 477641233 680404190 351845823 191707815 362472920 517792531 79174198 289618658 251607356 429310531 916356829 804344495 607728511 924526667 372250634 117510377 362957082 608223714 781486153 856227692 342783772 561952228 881778106 462221596 79211447 718338985 130298210 322100259 995931942 99895828 928779922 546232283 642343787 380752259 469002447 308049369 437493571 3981971 115015255 97298559 572399808 313955315 618379364 270094995 381465777 104064766 795352737 122526671 260237348 578356290 358439509 170769631 645425891 947651463 898659652 8023237 465400594 71884848 393379169 830906681 295757519 150904888 757610482 453565706 126193015 757064257 201033405 417582955 529672859 404486327 916796351 535182931 9614021 912228260 326059078 139780118 535447204 736242294 159279111 932453435 540246477 601809519 217694185 787123364 396094364 62334895 207356354 985065104 290559967 333355669 310835722 854671974 942306088 875078614 415449478 696618901 190466425 674076867 814643989 852748756 259955399 48488238 670518743 234694717 594638884 160945616 835867269 511171434 130762704 979740332 272351653 330569073 584553242 687662812 159135483 970745707 16504040 159392968 533358894 238576688 76344726 693822913 259310956 987346892 427428762 275069399 488359565 306353253 206911342 755195431 665665968 28713593 359115059 311672600 323305986 792489917 788796020 307629519 657266382 667750777 728781318 280155966 729948450 119433666 748586453 916744077 666252181 161170357 294189498 157824273 360271997 464499579 936118085 575344203 576434012 138008116 630773424 594195839 466849278 471744803 351561284 219482167 511358490 327802645 1162214 111280349 363554329 686510917 874252457 20840084 392701535 161301395 663127378 57261561 438403740 678509385 632911751 779756021 937795722 648961805 686232494 859725457 79460016 457340651 619159717 563408853 107861897 20529044 485905040 562782147 16129187 135901407 179593656 174577493 120560016 5665764 446106310 808669379 611670419 559650925 399481954 674589340 34527459 526058483 976132206 936350884 812942568 565803154 392574153 363831193 514484771 264037476 756389816 757883746 955840262 462063680 51262789 998527723 1804641 191281325 545462990 725924532 414518863 678046281 125566868 382700415 413524888 360761284 596706568 954412684 397037915 550531563 896967449 301550010 191539545 193868615 944137965 298399911 773765838 17737024 204223938 451499171 179299892 85082458 999703602 306476402 902362729 946178552 73890697 434968552 901758872 220659261 721081763 807777639 627917858 630014819 274515929 923425571 292965014 378935370 670183541 930917400 300616684 231970120 870885181 330248072 882611595 704356026 48324198 536008673 683047201 699219558 72487958 799358084 164434553 432924729 164144922 519200449 19728435 574143106 302607150 811629653 366083554 827284230 48670278 816634074 706436977 621683436 890917400 110444463 651757308 982813500 239718183 846003102 418420949 442568743 755557187 203199909 696331142 511615807 965393864 978377725 264488529 111396324 331942262 50124413 976637402 265630293 468215384 631722386 417814692 594819876 192211857 279402656 146830041 139934116 231566139 816685582 849238572 925223646 944249033 355343830 621102777 872903657 745254497 729286990 657479177 615785374 149443305 385236061 157771599 811786217 352309494 101240295 86867856 587965213 681284021 47876828 689261270 283897577 584567897 630437281 974197357 677577016 740699145 8304223 546862660 529037677 699892989 563941118 331187276 47565243 117801661 249942034 972691170 520001944 693844717 520840713 309453758 605457756 596743379 600443430 808601390 445481555 789797184 928407229 366001263 80532720 464677797 182983643 7748203 415034172 489822608 168172381 233116968 666190105 361153893 451455311 662958395 197382690 689269116 11969016 483176155 424748476 717253739 9767715 774827996 987068248 833626398 533321732 394804437 936279613 433711514 146726929 606985722 664233115 857618817 532676202 700178582 848737603 591493426 920070072 294594689 889922901 238760216 637404799 155375908 844200190 956730017 267027202 613487438 63958224 519910419 857539370 976205504 461391354 406042409 344235303 514794762 301682240 115593433 987872373 596570154 860696123 860342745 157676835 370494755 511525856 293848331 704047320 633182847 53804446 843138087 352803877 582468511 264679377 479064875 119116272 910623614 922750063 428839148 193363682 897299803 750991925 904575298 569326472 667160473 143249945 371226891 718373777 816193869 82653071 450439084 108312775 87315480 99616922 695390676 788976514 955175163 347573243 655904727 112515837 840313218 27238868 659570264 37978563 181410694 590491463 253378534 683212281 381891930 514996894 781855923 148971177 854046366 239303434 638871984 12540599 318489970 586554468 391501208 325843410 984853800 661473429 281520317 375082054 87688614 819224223 659944225 482122872 772057117 261240616 850444709 415511848 553065599 370317345 322083941 233035198 414742658 681420064 633787776 731393151 510008362 174953210 423591583 288261706 321889630 966113914 934488070 442838790 757140625 246650515 509071367 959903639 253145494 287800450 304226527 737766537 666335107 102717067 495800685 150972755 89186786 707050701 457981556 93809858 506906680 535736543 325005697 552147457 923389265 940512706 716153325 603668531 965655015 669617126 526727991 169103327 673830012 311039109 824008706 362835585 221507847 398704042 390869719 455274185 89940955 100361629 881444402 354319549 88921833 506487931 708895126 377447944 248930891 470515787 25863177 405378492 386550374 477724505 737751370 738555211 109937009 997562026 201730237 32281832 163284574 232109181 389912055 901295682 845131823 307556600 72947960 314192938 893508243 462287513 759891568 292485486 934349748 601303154 230089993 43787220 717963597 84711658 166366118 804706524 297554628 877366791 118756964 748389547 333154292 265132154 824571820 884545240 624887984 645332408 157274356 70465599 891751066 46818105 45691476 949147869 761699130 889121031 574060025 84526445 844487035 857649057 810345033 999759473 33404428 457234270 285803697 494078260 481316516 433852224 268955362 388254690 231579746 751252196 580342367 922920436 467419572 431299195 515940292 856264109 199774436 496569280 350026674 441551352 822552759 515683563 695137993 333870720 132099974 890876612 496127636 851129576 992221894 605643815 924379469 49065275 149302615 754212648 522459084 310208778 918323316 605485445 37000318 994326245 544652913 490050638 249135950 191802227 279200279 887383482 358598163 966633743 753483771 450693831 514207794 165870972 469584335 391343952 766940992 703385584 9043851 828494719 582320529 293585650 805531335 281651259 199763685 147370307 298159509 420962419 320746825 27336737 875999420 648158902 382976189 284538730 332827377 903902672 383276878 531097933 868103985 736584121 886470261 27536458 670089582 334824954 431723075 246330624 578967210 421824987 626878149 34474526 558580665 105112321 682492961 857048227 949570909 160467151 436815784 659311163 271148127 879640678 961260919 169040992 295018920 938949844 350946662 68249016 906284418 176646006 837356312 110267693 329863936 277810263 108538087 825135002 782761558 13554394 793413751 410044971 447235041 321549223 974837173 689750498 859190605 936427323 711215293 476570327 375799290 562786250 623319371 383891977 184996055 618415723 841615339 576182543 978891087 798811991 611293700 746972595 553111676 16032093 672639665 188069260 930549682 348816208 178997446 814278912 539191040 465466443 260012459 995800569 537524493 399428033 414489169 480124920 150716055 82101532 253728810 766953031 783422452 984372345 679497812 175801538 286225265 596191878 482494556 313292526 627239783 927765046 747940881 980732648 29368772 898095391 73465407 239482091 940495640 596473255 908363479 704321850 310576907 189704513 95045577 706010280 184441478 806543969 217285326 197730106 973008365 2294335 174853792 931810204 770324312 724557880 862474579 609280192 256776549 130604959 130830994 964372656 724635700 588240395 688715158 507109303 810571773 784606484 905814172 441443735 190804480 80536663 997089602 571580748 236638279 759129682 197488590 799103362 634453356 5342222 167880713 282141872 485610227 421061013 628857058 719597305 857453262 539009669 244202096 148821376 997843136 916260499 881485429 414311631 477245870 6731430 621798022 110999114 285521235 736284411 283924885 912978552 194143349 771803798 758689781 251917184 898822271 348577267 988787430 114743685 66368349 906648239 570932127 975348922 52444008 884045851 598032092 64348886 353358193 950883754 749168769 961978401 430249277 860785731 137538373 364724396 559112668 698631197 747036665 928287138 902258271 476035632 206337087 412500838 367467345 313035955 46152992 894743149 315221167 318232211 137716232 999206538 894756247 551243896 958875201 850377006 323143959 863010439 544441419 972717023 571649457 446769688 813627199 563725437 862083834 965484627 548087411 275326908 962884287 811148437 622956990 45290299 416246613 149128697 940229677 551478816 776177863 769405834 419515333 278608457 812745772 258655593 463246021 135510419 916057203 170497143 515953687 171572696 670105732 30291551 677597217 917531213 421537764 401413905 542639795 897026452 115979063 707263217 846971946 249141344 252766626 962232592 735892034 88733002 780464262 555463815 354434391 971425718 628516788 980384447 856682209 773399712 918563244 223855469 244632452 754737032 164004279 546300746 304946419 749942591 697221154 580133123 781323069 355593743 75867320 148931117 260552769 357492859 564558684 515472291 509464355 789278198 808525165 759033914 475692284 333876403 746088544 127560873 285033588 835045814 353967943 629718469 115229595 980560050 57723098 286175447 684520368 73716931 668408474 457319102 390840618 122483254 768409207 370137711 747467648 806150578 60729263 348099769 538568548 313524547 665241339 848360009 246017222 279227061 869416795 238020174 618788487 771268327 184584331 741500093 134770341 319579754 991665317 780852259 279052042 637537173 579528205 550284231 585415157 366895289 127879994 581784574 971081927 680116233 526811808 86613975 525827136 757966550 174044770 405159240 463228515 232125311 746864794 503459886 502185460 576437267 397193199 557869389 632417672 760383630 586503654 325900758 657493773 465544071 26813642 760396389 787713441 581171765 138108161 386941941 893206930 148272687 812018701 72581081 11229486 800514121 401273958 754147684 856602014 548820515 257153591 716765614 385909229 731432042 727203589 909700870 744308651 612433781 502329097 71580509 824382743 351912348 300320008 692600134 834629403 259152532 904053369 108822240 227080393 852454362 506822681 840758137 337732249 438195139 177073804 967285538 187413945 818096901 504072319 884626678 645386504 32100986 248458842 713603708 407999195 718759141 943901340 867083991 550200512 863154679 952892853 451693372 323179992 397422352 901813456 169384598 93616046 879094238 940114917 544261253 509217937 296745601 340625000 231442308 849204586 296397280 261681915 693426028 120687188 11343143 137392515 500926761 61032802 347936610 827690980 397647681 215062040 586344849 489723984 695324565 776324155 436516736 103838594 986303546 876145618 47129161 655682704 397062211 310778274 20206685 989959456 287236888 534605499 823766049 708608353 143126488 885920658 505268775 199514612 869814830 852318698 598848049 539707888 581229842 757036683 828011504 801538850 999040633 730980791 31437947 974020398 4390321 101622901 729215295 14134756 336623818 180665413 961236204 959800805 914833195 740537009 541425647 330987970 978898720 100908131 380568819 472866597 355894840 989598125 624807133 365513219 189278899 131115203 223599799 795735508 877209489 828734611 722979109 738284189 269407468 785727341 788665563 767720420 3240010 149461970 209971227 90525376 190854055 609222311 622947973 865371348 888522362 913246499 102255548 545577400 755387118 95188997 419500440 608283499 524894795 633675587 649822224 852631588 766131727 849158611 641493707 958383218 749747343 805529841 387154400 88668795 529757154 101026416 472930759 438469365 276773613 134276319 715833021 814310701 272105997 987347462 402668763 792905595 488605938 585200755 788412241 300889347 511064587 829828417 374300928 225354714 760669406 177347575 185787088 320575926 429661262 296468095 205494083 895018155 82193546 286581310 296197031 220407972 815443405 506034238 581296817 320567539 377288470 268972980 193901921 574065459 689705745 625049136 250544678 593921732 494864177 618279947 360485266 687589217 22800041 257771079 913563274 699375703 575803144 988638444 844187205 5720615 142309674 329430611 909303145 877249355 681513625 934598951 35311233 661197204 655120100 871626402 827584920 286957190 589555986 292207369 794904937 260654175 972753138 907122972 144562481 499733219 789837845 726737720 126423647 726681178 161781200 332135251 703389722 249396039 1813828 690673231 876344179 239620926 9554086 32483022 975555244 613975588 810077855 383280104 582957545 640411664 448390164 623865420 322980809 368525029 872360745 631223433 362667579 692296512 983040245 710783000 398222677 297022727 312866963 425168607 188100304 183056712 853698677 916923609 866579661 240006979 709564324 106095971 267911268 907539480 118529457 779264173 259640863 516561385 544782907 193274800 570243309 999349029 857045713 906102474 378776611 359083688 440852877 154395184 24496062 525014810 148998454 755405464 860230071 359202061 619573816 559749107 52265471 969018410 920505334 425631247 779163753 439807212 955281970 867402605 454810869 445179326 165479999 476089232 630409650 287023861 482511534 277855398 109053043 469183529 656159663 235130160 618159648 698284095 626281173 331007592 116992535 767388193 813582490 305388900 200458145 814890645 680242369 479833619 769015311 923190356 333722970 576536870 941728734 761372924 720990116 629010618 125900416 654880750 218549171 301858845 431095446 20110262 225281317 718187013 31306342 831622795 889917083 5262814 735141491 282415597 214719604 643753907 4822049 311154646 361531665 784293957 871406445 943297867 698006043 709306003 410142396 905996359 769493878 920027080 681648122 427442221 653369196 473612986 974395138 424190411 213324259 344903753 309266815 83862308 175449683 928040820 274986679 964262379 535209642 580968889 446732873 319198127 738163781 984986421 293771119 566669371 656187432 681711813 33417832 977133082 718378659 351530911 617708038 148981376 570168231 583774864 369547392 611142211 199822460 394830489 131820035 317621064 907173781 967607905 444323226 165731766 607263758 590349238 312067098 921429282 619632219 925618781 424270086 375272452 886189487 14162244 693749663 291309358 136616441 649672891 7660892 601303012 179778604 283548270 910561114 994859593 183306457 680738842 991615024 196205952 851816010 760256310 760158318 928415681 590262899 527958707 274814223 784680901 3888793 410501113 209557157 759150663 269599546 359986546 121697264 707256847 307789729 324623794 289871282 603806948 101976235 153470051 228018387 62786187 526673853 784552792 708045406 858657907 304047728 197964989 330453023 874143447 685672082 985938704 142810909 871814661 102390163 823125159 972276453 775742587 578815572 37138177 535577927 273763121 650578794 939930204 840386361 452346731 64184459 298034841 196049603 293295233 14318208 309673549 111198990 115262602 62197086 649341023 329738279 475169184 864375216 450757999 903437811 180566341 468846420 98285793 237263957 729769244 919911437 898485221 488955078 532609669 734600588 257754098 924485841 322442640 574290053 992038630 499519189 907459999 673862942 649268688 779363238 177417681 910917151 670457191 665383602 585851015 520055102 235649557 328684026 876398178 983755355 833219504 998485872 786843950 997111287 433493963 666947775 613967251 903523798 820488487 852367910 606184872 591706973 477624452 843054738 490103249 998390327 678094679 103935044 344298816 156747213 783480939 36293522 785881599 847337618 508363103 293876450 766052935 534093669 587669206 200723507 324772227 766347089 920473897 928241279 113993474 787782210 541827155 263926198 284918414 349255437 691970912 123120648 364002600 974424130 420583438 234147169 3920844 67906723 630394855 278454293 92405327 992116276 53015487 852325727 260497889 378649540 41835000 486184846 398934447 354785234 558680202 603753997 240167032 161153006 552926799 939454890 200801796 425625578 488539790 657053046 578090668 750929790 451712320 84766601 539244390 298889039 479274995 842591840 461120645 620357733 726260964 602777915 719697948 39399741 803724412 410811314 390199311 578013457 780712904 803407532 220318825 309725419 525503412 263316590 366708594 993341643 715865447 73819568 790737348 327236863 42338134 855242520 48970996 738304775 566225831 133580187 814457667 339115061 225067732 181762749 213251900 98065213 239921721 683943905 260048469 16342951 851303997 682033438 888521926 175727021 935043443 426418653 114154568 707692488 946724301 588311523 713785039 715423435 933493832 919479511 671056541 70821374 830417027 220863661 867825280 707395638 909937054 129665825 900702273 219141288 879787033 468322407 148107362 698670748 755080665 984912129 604004771 154871517 346843263 925335277 487725967 58933146 149908511 862572513 840627456 974847512 280088409 558208872 902941702 43469867 714973464 249180154 92871657 385881816 924429716 861685034 729612789 350659421 49583121 800277457 395865472 776393497 272688822 637220078 19197955 42701783 845341128 158755302 714602542 492177448 740560571 376171402 358485674 124527422 40360376 741380553 744088311 791382713 42489577 632804903 158692819 740462624 620912098 360260327 947250587 108174762 120705292 881534192 158116519 973849951 937141154 39840356 515383882 346224480 677337541 623115780 441943215 493483470 312224654 425580525 822776872 441710992 779949182 21926864 471605786 936785699 499929108 779383663 636916660 241747026 72064720 802267873 397425241 166050700 440022305 677885998 548623981 362051099 737824024 211016176 419586134 310949840 90661316 453188248 334897607 695044994 950318137 418029400 991723899 975350187 378368570 965786350 996603156 893997158 936535721 940200736 29129132 503515882 396052216 562357823 601314115 842144633 750349847 593372950 786343174 66444659 464327891 192535939 879830759 478146493 637120185 539370949 176853840 423222291 273471904 260078281 214422125 81851322 511254290 116366486 608497701 357452924 239515587 330285972 733105366 175161267 857506890 303697416 645455668 109446019 610705055 74116250 593490978 486177537 142260989 391295404 448600037 623941684 723925309 159548008 16535318 518933010 678600928 838313709 297172144 893879611 26570496 861917688 963170611 313659058 17531646 324542282 133378980 691711650 429010781 949153643 536540193 658505345 318063261 491252947 31901401 728419073 665047900 511034876 794407896 233041943 465788508 737577312 375321977 49137180 539598888 726296129 813663579 339031984 592712330 637760665 576591823 763165246 597125109 597555237 407398194 223234266 662063573 903531166 15154701 193499415 904672177 272785639 498006308 383207141 41358499 52047418 922026352 288349216 69105014 329196373 95367099 618191856 116207676 71459241 832544219 115817812 637432450 941865364 419098459 680315198 79002097 882009514 589994954 341335856 87804779 364552412 794522657 940698423 7463204 999301532 202547943 594680441 346776889 155903779 455994657 290738956 451584036 50005623 94774750 623665334 770402812 9292079 614949306 389723524 251686281 445334024 650442969 369501768 717723671 287634071 923198487 935264973 8607486 695917700 459418036 374790500 829996527 483831447 484619836 673558263 778921796 699904938 201637935 400097272 112637189 120489324 960389700 908063670 473974637 559420999 974254186 981024405 990214681 919726460 649976968 661520873 67284815 191937606 717808391 776078189 357659977 421261949 10601316 806209309 979650186 23162449 90673129 594843634 190720721 36287922 861861475 480400650 106217724 27775856 164686608 388773111 99898747 945782867 651576536 164768865 465582276 129872647 273754855 251468284 166210609 781686825 173976857 157429998 89460687 683465308 684016185 278093712 275714878 140075264 621007453 572565003 534912183 435850403 152640799 522905131 951740887 898315428 187987787 912663381 631116834 696561887 552200556 68479057 626266089 169901043 478477843 290940247 460302040 377011690 809146083 940138663 319753465 210395515 420997796 362100463 177608787 343157189 956986246 416788865 65669259 447267666 495979001 604433162 759640896 324736265 396539186 717218571 791415174 293332010 126323644 582235352 667732701 35322842 487444191 283051602 490645608 400302458 696979074 92766769 951991899 817119124 153013954 512701311 901576628 396906590 516140852 241437512 444590654 785410260 939117795 243436910 541521448 708073283 505584179 545447309 447288467 381989538 781980565 976686005 990164374 156217990 319393379 284528712 121234107 530814738 676883034 965422623 408023560 644955620 123121602 573084423 691949913 358255912 299745654 861750409 498704962 719878708 862145484 577276864 504897906 983546354 432713902 507421723 135026855 913298887 486943851 455487450 913472385 51000081 892457521 522624695 172443684 142144398 538839798 195597387 482943338 368425943 88218441 860068515 635779586 552048357 804967933 426803199 309903435 57531316 958303766 722143708 670675884 670932417 735308576 653523783 809627548 993566626 996238765 268520288 773056662 636396386 285953285 172692530 223968816 894376527 424586999 790501822 546330549 834139742 199296190 844596113 754973303 443566797 585609354 890813424 457888579 612465913 26681177 50313077 112755592 589416448 811641642 103546406 441171093 584506643 334906583 216936610 958311973 645890247 976877752 202301184 406593518 837539072 457212210 134257433 346764088 886194778 718324831 369569361 101748747 517267680 447558670 787420389 355493465 936457144 551634614 498453240 299446721 633438309 348963367 170828380 807952435 125783721 565528416 858119290 525400150 835252027 607673901 564152574 183286465 972949703 645649132 470490579 143147114 687728797 314054829 107977452 552097450 304175319 762021654 426083816 210868542 588099631 101403150 420175671 583996537 221287823 704410749 898629482 568568477 124060829 959187459 833768019 634510228 305726429 48013113 235282630 536376376 685943039 761584073 43698014 179249012 373446021 171263468 725659728 306501596 16848040 518986437 519925754 208984660 860027515 889564792 442505830 103929627 960384844 661326801 741973916 337515495 677775646 676558943 543608165 788014849 38841143 226968960 403724659 623978358 514178629 336152443 78862932 363778253 979610424 318024126 332068061 517416553 282533217 372807150 549142390 699885015 631068027 254636277 614296275 918496336 729317113 218743183 960078966 877958649 173567676 270861824 134306893 511700291 374159423 117804330 341006871 948714340 932549272 561089670 955071104 995704130 367429290 493011583 695481645 52384378 658723953 658779548 942994073 652513168 224209120 984971552 474210137 116004787 682451329 733664253 577543359 404405202 307191835 804824243 625597453 317655002 883951517 145319922 697644406 522277312 36111221 78387086 89422567 491971614 530987532 66681242 129344943 423434263 623448395 123493508 602317289 346249276 549491320 891718827 596992024 796807654 779305289 973870551 469790976 82690113 90873788 267978074 856924949 47541616 440908154 469243026 570641923 37268148 630063359 681333517 916447798 277305877 763199277 822749866 175642434 86945654 842368546 696350080 245208916 75796285 925351436 88404529 624585016 997299622 191630631 430640781 773071447 402991816 272495520 247584102 969114140 890317301 597006026 750347580 711040529 692647003 911625440 345624656 569112098 991782578 668189378 354671012 835008063 474444961 178414097 163467067 183847374 428214841 840190423 703847656 291628331 83830578 801202155 539820624 608082132 671848784 317010999 391253778 793490067 910662480 809937798 413302579 908897061 24457548 403519508 454361526 786892675 826686798 768911985 486717163 795783629 980807718 370002749 59283413 826094361 127032113 504528829 409783040 631906847 25901980 426383619 24796543 544136400 30204252 365739975 238039773 945471924 178368778 817190073 552478408 684351973 169517080 316850399 809493982 766483227 904338604 229288241 722511398 616250258 4084494 211924628 40592757 506795642 439490555 444057696 827454585 569728250 932637108 179257278 632718800 330124315 611786810 680051755 339331220 869592309 171975673 75753597 265474254 974068045 698846706 673170754 394856084 445562010 343979927 631058601 892530417 232782351 951842031 329435225 221387761 263592640 926096620 182601209 695090244 892791930 785712755 769370359 989544088 150914545 540498917 775309522 772081328 776815278 50443506 926736967 24271987 353831920 329709001 502396866 678638281 808902021 160634088 826078495 462252951 62276944 267802846 931609991 195236619 186969079 231725114 816484064 52434632 510665259 325031649 895330179 512259368 996290045 450182169 898916076 150487132 437720523 111524299 43731028 561403076 687530637 43047352 940932830 661449869 812034339 637519997 347806574 728531733 987148865 760525991 732465466 408100846 146942220 894487663 894010751 769177814 190173597 235849585 164694901 659590407 635142235 933685107 835533623 131819356 24797080 36048114 724700748 601618287 955746037 993433434 420365688 406607451 177837587 879936357 501058601 342953725 64157916 487751657 572194458 900236504 893557917 37194090 176384204 156321408 514507784 574610919 927650743 773028148 497657985 769776002 219480408 1660618 824009383 967481379 372829396 143928491 223367957 800390634 250384322 521829325 347844789 311292989 611743073 892226873 472353855 92880174 400502907 207190954 961949280 319582022 50567129 538485758 828747433 174136807 737449994 315665231 4143480 324313340 452981516 556826554 271419976 353550288 388008072 299891626 269451166 751003427 230325106 296414402 744689170 232340873 770423972 872021934 12539282 2364940 228637157 613790510 880952701 331991294 526264878 125086117 675670085 370596128 226453553 929309794 546741639 833885316 165441438 804808278 690085101 546778675 149893007 384742268 66323475 77593667 343712350 130485390 915989122 774870304 507245777 263224799 167551001 308883194 178537907 754079936 117778199 750021947 790538874 45090183 394452674 859939732 94450726 604456317 15732229 453642730 478843524 552362888 296251972 504350867 949210816 247781746 221166180 492322566 531151020 998748360 580692480 281864275 784328888 696899897 121187469 464836722 792590912 399099410 242630253 581157843 342466715 519436534 580610537 34101355 287412599 605087377 66891861 550245080 248118855 762063090 785790914 288211109 225731438 345289918 718655172 46488227 819075598 18590457 126744849 104941300 434379958 520841759 764215037 347223359 34021579 700361208 142048481 784049585 442971412 954361446 527515915 549669196 854170066 15663743 45446052 610114855 138353133 444102714 818095174 58871648 590221989 628525461 869462760 372948339 913901689 24265926 37913771 470102076 483697086 404034523 957462805 378319266 743510968 120429155 753447908 497638014 841975113 593089930 552501929 807184000 52989605 627542592 499897708 177133685 653697790 984236680 607989308 635221430 787871528 736633166 37236331 896564062 990167119 935176453 445696161 377852606 57974547 892300434 356512300 76645883 766064105 205537332 777925976 189080425 312304623 111780169 36673066 7234250 632679623 33804049 505462343 396903157 677287509 853780246 298516290 299646328 727659829 330714223 86302340 710834107 446149539 644080839 525627718 62638840 199473002 598722655 475159486 654602672 285612775 85203333 856249030 228744137 243268415 449263152 611811592 148302085 638748996 67064615 521229729 493232387 376731912 796169898 149194876 642716975 341902158 774708982 688728148 515396478 261077752 100806406 25510149 401304651 704504503 890160724 686753616 761788324 391073870 398068987 185344517 282196828 884612569 687899392 569732995 552081439 351109636 319694953 289792899 38792508 554497414 753878064 868791840 656535813 306160237 258581842 902713299 214809911 699085400 632998047 226508030 176357305 655872759 950826672 807236573 136666275 690951508 836990649 647846034 880198333 468200689 43936319 197558718 642706021 18200233 364637639 474183878 915430002 576615129 674049827 91130017 585543814 72204529 151678094 189707524 534495007 783721608 607028864 489575359 350341418 892540171 894407675 978772373 343560042 572111943 768313507 107243302 627623393 771143112 12946642 547681288 836211964 423184596 246013570 794336298 872181554 328553167 96060039 883345884 388388831 183672267 801021353 633227410 973795133 388516828 20490708 378923646 744580631 333785304 562723178 273145966 919327129 909291693 839290103 5926419 748999685 989351716 833789176 403896059 24919025 67177817 217283533 461622256 737789653 854075820 479572834 484743709 571015848 498393285 306427409 494040895 535456322 850975912 497719395 901489317 637093730 213333659 580496734 398005856 281279189 623635569 241880503 518087115 329363950 968811481 132878540 795187955 110875224 365342622 303437840 877301713 840973217 107746222 757930804 967415006 822409477 471108854 193954510 407130188 21837627 345656086 489041724 82515576 69224721 494711860 756161418 569193865 985585283 395454058 284675805 965045155 117549819 908952259 709156752 455404433 691403213 932279804 335433882 73234597 926580500 297796301 201239756 533041101 406327591 481902980 818191025 293832841 958190322 962382591 385588596 295059927 321709763 715999832 739072692 946416493 24447918 480227530 291130477 514047137 989667403 951175463 388253100 873943784 183968668 373455353 63564454 50363042 625258059 275521972 561227647 880205481 776796904 577035483 537762515 715747386 300315432 917580589 629555738 873008063 117447822 453497727 374639381 511650287 653494620 746585657 195445718 125394029 375270820 688050792 324934336 133867122 744472241 436687203 825498724 224805393 805051404 809235967 86397457 114799067 825094869 244481823 487590403 632234438 492669025 275806012 956812486 644136992 84032287 325204243 920049173 630458755 661716294 730938165 15712780 320995254 425378104 995576545 237944620 941925659 482068804 684617894 73503431 549134641 343073503 150291411 294009802 354302795 39006192 28504494 881760892 355251343 665505132 693285433 203521275 978302871 997668601 176171666 460405465 19847566 303977699 687465673 111348452 178597687 719304799 432390236 828654931 843348234 840783570 295668694 405838839 978259439 345601131 8792490 157506069 865718717 177760867 234341538 247046069 147244185 465574276 674004358 354131072 656129714 270564563 176072168 813339520 800860188 716611602 813556904 231005784 197672090 295887760 424900562 403683849 763391933 946614712 248793818 624882997 317206405 83594679 301856475 547047507 205968872 519576877 115849962 829926628 523241709 743967696 823317339 210576531 326699906 188750249 202665366 491083989 571597197 960429582 952604265 104996563 269444908 938413344 707927417 8756922 300011423 523350454 797511296 722759146 209850769 931161955 776124820 895065709 902139362 373067127 533082413 803931480 928711034 995725456 869600457 868590127 433550709 249980046 96389763 956811579 139026404 882036686 907383390 341432518 361885363 406257581 505030565 285787795 354418497 444700696 682404256 103522095 706791028 885052411 204925217 13474792 900813493 491250770 523125675 266342924 110212355 375229962 962631098 42249089 215727518 18220003 96135345 646549780 359764598 824071311 709210987 439409520 663138168 76538318 212447866 490308613 397865990 519140873 255374484 206820495 74452051 436160071 961707161 680375719 696748361 408348941 664864217 580807284 121360880 703096892 220832301 76873438 821505008 73858127 447584498 133538851 513883681 646365030 945369316 343793453 805200563 630196367 523234207 543279484 935745885 121379832 112860778 987753998 984595309 478056381 949594175 188255236 984257652 152965215 340778973 431304086 594189901 468686320 934999113 194415280 329835888 410856560 656496676 577842391 884656948 936096797 318716646 610859101 874325774 159602982 693400289 337307250 134586922 474622921 160623513 160740247 454252446 809981971 571442918 489214100 43252647 100395193 242944252 852932008 692232652 172765472 306974262 559346690 188658459 524653291 647038773 921416866 330688638 123962432 449650675 394071726 707163410 273952556 559232158 934686788 675470635 930364115 508160587 553605898 293769658 246997546 501313711 842387527 757345042 61757583 337402060 876425148 199616253 932558653 956802097 577898493 806890220 768702325 978021753 325239325 596648837 849604267 977518356 667455083 523379396 377768340 45004041 346067142 855653133 317470415 672844900 12199825 859809281 26325462 414083185 288302013 967520585 110102418 105356674 587446938 173804915 137705403 327140973 25919685 22809205 532566039 187553425 580294326 620641024 849507988 447453050 675132124 997167832 575438797 272669982 164973356 687334492 304455522 995866640 796044632 376963735 262253470 625233990 239741512 102621095 826774507 572711049 773600641 327079537 288709945 715253562 153884299 245470052 475302086 159183553 408166695 833018153 805746395 47470070 843899997 399429452 792954821 608858920 513246302 920498694 961051356 967104155 878318345 82560703 336718893 638793795 166736519 995758738 869335878 256439672 613433975 502084116 168208479 247966641 766753122 27104918 760013173 522691146 531440308 764095049 371412224 13966061 645618759 813772644 979795882 157224358 380861604 818500039 509071865 806243532 481699926 102699214 170818547 28824176 208592297 340134125 54405460 364671396 562404232 779802476 460230111 64253110 31224424 972185519 733584283 964157223 449516645 801979111 758290187 757731686 358953824 440010346 789776609 355265201 303999266 220632172 401404347 503454255 696377299 418234991 20385380 914146498 899297933 561795897 693150254 171235038 391883996 396603335 638866242 406570584 650315449 999308345 258081945 942402722 417082408 412751682 543022191 942897656 552231850 871219744 533797103 759137078 732664361 451196335 326376973 268696939 252991815 134172658 263021417 561394895 174222738 805442920 425389887 935286332 594307900 623142946 247127652 778340207 881344246 974914796 134538629 791774602 607024342 297232751 241115119 449854500 16680291 824960048 571111555 36746341 690336017 300133698 85304108 705595753 77661927 396360104 487592496 548197561 363068416 640595769 480052824 230303180 26137849 499626437 32879637 585154397 224718366 513957188 501267105 633485941 895241020 185610944 474568803 118152453 284312088 315942067 621240701 675863427 554264882 152680026 638251588 611324211 502569857 942550833 307605754 790071600 146880655 641076400 981551322 776998631 590511491 376362332 938581633 301879935 588583935 653164572 253045332 410206505 66047053 942449514 496468178 528041355 167188332 680521385 941935280 923600530 400465916 183954563 318123263 523038870 834826311 199147916 986594500 811293623 386514926 623487465 220033239 682289910 71116410 594481675 710003194 402036807 495446685 536854123 864382454 142763809 880783051 690157208 354146144 527476661 153362440 17298720 989398968 207379957 223950608 94730789 336674362 227481968 494852010 124224089 648153994 367234512 951948136 375808511 134209625 45246081 255705788 551645375 399520838 793818380 290487143 711073998 78783746 620340322 372563600 187687671 334551820 971285198 717081321 530230645 930183148 258460002 342600843 246331315 640117535 360917250 806052444 592573083 488517366 467436508 274588627 607153781 268326309 197679325 208343210 465117564 226600679 607514395 959446264 165929793 612613994 176638872 679238224 319392016 701246969 71531581 503538849 709549601 92860464 309186933 305573438 89417179 728668989 694904289 224122723 641127628 427761380 772399600 623730581 262357736 874873399 339040794 818195849 852027472 738972163 824979141 773451175 152684834 331490257 820839480 577422811 828127846 761104805 42343514 269415106 567884647 574775233 292201580 578309648 418566355 119766240 336182397 426537339 673931775 938835369 419614299 798502944 640119747 308925957 140066207 396688625 93546287 71421800 465258751 603593036 610812715 138253327 330311796 954242199 375745093 207904235 573932495 116436030 864960318 87758105 950618321 239936752 614371019 292373795 149758957 418671617 642015859 521332784 244257897 860429412 686175225 956595597 278208387 907085865 173963100 934363317 989427642 46757924 402897386 829540365 54524337 161239773 568589343 109385593 37468015 932607882 891844674 792407874 960045708 74819816 607116911 685618477 564079366 963260426 63475563 694366568 749592724 283433881 417540385 876730671 742577960 353516101 966659182 374976800 530476638 764561591 282252718 520804428 408828900 226341972 117350554 462561959 391705871 612973540 169796373 493374431 950119678 825155256 240642233 537175739 741923777 200360426 159959885 243564350 683007550 206613140 242801947 510565857 522569722 76470305 156583223 917091168 429277612 807848748 605091943 776993255 459072465 267648122 908395138 698577758 894188890 636365487 155257354 387338006 536034519 63628109 390801897 714760740 67711819 772209714 153683222 835215042 25649711 420697653 816797666 151567199 773913493 439533529 56386037 220389359 913521279 850262076 464319926 898009120 709776887 498725657 749876877 172094728 516719082 85169061 996379887 169336263 688085125 16711468 658273445 409755660 112484871 698570277 889387698 773869403 977590030 381915247 587329350 247450172 127822305 153318097 786154582 816977158 619915878 870332463 157634780 188387449 935539197 966327274 131645606 315888017 689695321 936669461 918339233 561481916 480616482 513771649 934471739 187316550 249209106 668506294 532515990 795843396 595244884 436700698 61570016 372069924 132694203 102597306 57371159 207173033 916717099 116752864 471218082 753804410 851095701 91071815 518041854 40808058 69114874 366125715 379581898 628558640 476438902 35455582 797877824 10288421 842043827 210066199 684347811 902257922 357486759 245758212 865195798 176317874 742489921 696829225 845947459 70034164 940843418 73272839 77964378 390667569 465914524 230960147 360664561 761687046 256651880 965183154 774997735 953869609 278638138 347293920 423110683 32392165 575035771 22481874 346959966 809347831 362106128 164952262 195276618 904526684 521867121 845903348 594297281 963955739 660854071 914215858 954946228 651557021 28474752 150985591 47093373 486504180 565291300 753241003 394499165 416992015 952583476 16089665 570354652 307154777 92409949 231047889 579393744 316255646 38229031 70031037 410754231 964361555 553446057 822100244 225078768 930106420 432225667 366787867 364786336 193116744 474638335 530922521 926999274 494812020 577755303 805281652 428371844 549752454 152663401 192184777 190609664 56241548 887643497 735363165 344856869 219542948 408029096 731924593 522040652 994310083 210168247 786046074 497863396 85688123 299442909 886652713 981748950 47053520 280558764 404661446 233999909 279659963 274225478 669579212 41187104 786971699 619001996 708210093 192574605 998287358 790235970 225765618 260904932 444146397 53365995 700722743 802166001 962872019 25153520 983856058 620537748 15154318 883080103 711341345 731401303 817022750 476612107 285507425 995040850 889962669 123571111 655436291 373762514 314399108 894741666 98582841 611071847 973178666 553143353 561700356 78995319 879790269 17375169 241538360 952142235 407848735 193248603 161340651 241554105 553824939 176143887 452749267 229642722 28809213 259281606 442722634 653651867 217584908 833435398 170805655 240067002 997869146 145191335 953818752 708421523 213706156 382696660 320061023 876269584 485069262 925886652 730685868 370394809 816568936 73653917 354143492 421525105 138494031 428823951 918959890 687114917 835710424 349563347 102690462 253325155 897143868 174159489 517642388 769145562 848347340 301664600 347253925 681057095 527494814 525235670 520354297 909369269 776213838 754431914 128022619 592629040 496981047 610085903 887720232 937148428 421472376 767869430 97961428 118591727 339701009 909764825 307423747 935942095 520861093 484004333 663177729 890756773 343199452 256682484 122867872 404385411 156666658 385374038 278782867 985754148 981450231 605604778 514491064 658785917 716053455 21731688 946757056 794861836 132830576 105773187 766284717 240683586 352764867 180536482 531070882 515013234 366098207 983919512 154308123 602903957 261129323 420621529 97496467 968927470 571469982 483895152 46413165 561833100 824616529 307153804 782109521 209207373 494602683 991188981 958506687 830718942 819136612 123914207 502218771 221860606 724428798 309023251 784854480 477267592 780997904 179173676 250656190 330810279 390993022 171221578 864955401 549206798 125915922 916301687 596691725 78696233 592821166 579697171 472166766 217177997 252244698 378721045 904837953 541036877 571591765 483470811 152087635 900542337 780684319 670963602 77220969 433647241 977000117 581894988 278440992 710695609 629788164 276145657 437675505 437833939 139377415 126896417 367247065 309522388 905791825 254204272 433083406 402670250 242811274 336226699 18057098 576317644 549062838 507858139 340276180 248302752 749814125 850563210 958841746 669810194 742109078 8539573 465672455 41782372 671667299 981393117 8408731 434073242 607706653 20924405 757858518 847516625 380659330 902179002 157231850 309619712 581424789 366163398 328291583 484092253 947058891 321641443 628249607 661083137 874655735 947689114 372719055 801892925 543130538 467302059 982330649 11672370 290635725 56572737 280712426 875616970 663661825 239921593 852996940 863877335 464527655 363597103 251066830 756064277 794867512 422699734 294948197 290946594 257756366 136356640 328455434 279429666 52012689 906761715 878430144 604786533 643577906 405528844 846221328 241541571 967581000 719528972 109738990 671944945 912745724 460475703 338408923 372113098 926940322 716317359 353591002 402570014 981124435 815052722 563659178 4497443 161293330 152652731 733934501 890525739 907815407 562032385 106993748 209202988 315205846 704478547 552449057 465051851 287497876 554450980 774756239 676395110 756568550 487757143 264861421 743088622 35482528 384934897 966569868 251020916 305545107 632753151 862034474 848029224 233153681 3942485 696765895 178001591 860443939 300611295 985107617 304241212 459863234 443164315 467093117 384813243 419865558 207752915 70783440 644961098 844421103 442250762 738063134 768138151 451076560 66512210 791522592 678207772 94665888 171168885 128634070 563677745 797222316 891471447 638343407 368228197 299084099 970104537 699440435 630489387 991514800 112347870 409046325 610780606 524959951 127566364 167293515 906674754 778026617 300399464 259460074 459112689 49755888 510852145 215683108 581106438 200715819 12941483 29144861 200561404 711442026 750911597 355717164 854159653 138846491 742596526 973912329 780559232 608865532 703098129 655701693 348822475 31142059 279906573 408606578 850373758 231445957 927605121 804506947 736709819 368738729 305910441 264320402 577232871 607227736 24954934 40133344 254503785 251281703 98324333 388963168 624485549 889635106 933012832 443376231 688247375 706821093 464583621 245149680 762513906 173689964 48475525 131960145 683359510 461503234 886616234 240326435 133301872 241023077 543703203 878509695 2187297 578991307 212837344 386108451 450965591 426603643 569400803 907247478 299773937 408330092 138440342 602267109 171398188 490666017 527691276 789707741 471716300 634110554 667298652 389796103 448012260 994299978 542386192 130759566 629426571 880732245 529749936 475554502 176655002 924887678 445870163 266297260 150264929 405791102 635793406 223401135 256414560 325688920 272314195 856470120 676589876 998690601 166115667 966679357 30253547 623943325 982305478 244047233 894738802 134782942 906649715 598156198 126131783 726709192 783840514 896368951 842100707 25087539 476540809 724249720 43908702 859492378 427998950 214707640 852101989 205196590 187274881 132980794 721197508 233546310 77717662 861385543 647235884 190337590 336410494 698258627 128127216 382894360 515834321 909511929 916093124 496822357 381688687 890374331 954779547 724080588 904226298 508432953 475230766 650289596 750783459 880501838 772915485 921749298 7373994 610150032 598445009 48164971 676575419 443486727 90841615 30945167 557837579 952409071 520421343 16956389 283020961 471531526 549961962 125849470 951041116 460823851 497283354 666998130 781376287 372957372 412288220 625519572 752454168 937086600 204826380 546003780 207075833 478544833 664089983 489354397 57575037 22761934 445527317 236225010 451126820 880480874 531200085 333464138 72680698 191376020 511372751 153167167 755881753 608252464 435186315 387805719 143359169 907343792 530674341 472979340 35441367 410166310 259102165 290180695 869938637 738953642 171645951 765332241 140834297 109917168 425618378 189616844 451661638 184781242 447393510 39058136 660487385 720707493 111140210 383970845 595929110 881442541 160116692 534035378 312501923 336179860 388099514 160497513 618555352 669728156 914236550 102430864 308510201 655073273 383241165 358632255 46746196 877521737 662852858 163790460 990609986 703546068 732728149 364065896 348569471 611032912 413125239 72549021 27842930 709882868 666181715 551194793 521748142 957623965 411384977 685724715 304937801 286853235 228859690 617069476 38366406 755151033 810361191 448079518 380463303 546496637 403312617 1166371 603197606 59549496 861284734 709368006 851519567 409159544 851510398 862443104 225736139 319564272 373103174 817800985 484472124 399018428 577474942 169224837 257542714 854859426 421820606 319025590 499993882 130204152 839317567 547247781 295551514 827644063 143766641 490925009 424102573 840163282 837810337 724682194 134871761 318948668 787578719 835967848 717379339 409991005 364292528 111486802 172271502 534605855 66084770 42301789 174391970 169083040 909544523 519918931 292602382 544349994 88734024 418431867 601825224 645775582 588288826 996681782 112372620 205083562 695991847 814502874 371989485 926073651 218602672 475566255 326735960 450650505 648739192 501015337 406694040 305041601 653853342 849505516 865314443 902254164 151901409 837074049 197543965 622615901 934147783 805565676 400390895 964772225 127505926 696142490 308823271 826495399 571435721 210473467 31795697 316713625 337702174 124666490 529031589 128299336 713855428 982204949 282944522 397921647 280796344 361127516 909240731 356640896 892285143 986094264 837650450 205015128 188732345 491576416 649289760 122339446 774996802 947599905 860201283 971485349 924407931 228885991 767411677 355975000 90907029 191404597 712878229 405123842 846805254 425161399 508334881 102022319 150528346 97448082 685336667 440032922 976020343 833807133 396734262 551092532 977997747 228752232 306237177 895610583 789774143 112210472 331724919 987035711 704374564 895508116 871902664 892234668 943838228 72436365 167450322 111572300 387035721 198282305 384833788 838182235 385576719 726091862 614849446 489491615 390256331 394278198 963347793 313540216 796107532 866361252 868017824 81896724 294394071 552992290 427355409 545647529 107167271 765265446 834346373 858851132 194651598 440032488 949056458 334908959 510226965 125474217 955889375 843828005 369271492 24623084 357711 556943532 996112267 356964991 328341187 6744057 411205075 506214605 496593145 197051235 469837941 463391928 506790629 26718231 124850405 565440195 706943627 386012961 7795544 500876324 574670672 828546705 8396920 701428460 59865358 383834249 516557744 933239444 943097642 58360693 848209498 117176541 265140290 635799421 750399746 648044978 734508164 507455362 383445836 441561727 287280851 12872933 853000625 87652278 139389545 253493808 363304809 627945422 835807717 597563690 66062116 918298562 282174517 15387335 777034124 565919932 755796147 619029632 830047249 765994481 356057689 92123112 2370394 146815657 670227828 3831388 511836236 423205344 618955353 780586574 363348326 148001930 673645382 604999791 7803258 830897337 970370741 884481330 841323799 534674590 626450545 192645099 266409582 198969850 28843201 707719887 576048582 338314916 903051188 277791858 422168783 313017154 73906193 84978484 848825117 5814178 155866339 735198855 419951512 617883806 208647844 422664423 845622425 803477394 885365601 341034687 12697144 787252213 178579196 284717268 834232290 798037723 728877107 553598043 766623102 563081503 845726831 985280697 518326837 338644214 228898791 556035470 648401203 48458376 955055940 513182849 972228873 190295803 545559161 833250757 511659199 593831385 778792872 902746600 494495552 946490427 624688295 997613775 224378771 887588544 499783012 241083424 841399764 830043754 888847810 170102794 258321036 539978033 127448939 551327223 270510348 243786856 61744369 725649976 392394288 242172670 546933858 376014333 544584437 686368341 83425823 484045723 104892219 329418931 681407770 521381551 951707376 398853774 19350270 218371815 126244895 413790555 78461306 711197835 125848788 258660243 619279337 630034926 866233691 448984192 37873094 867762295 493995597 360083003 328341333 139720278 210622461 268436137 664208791 874394010 611300764 227556231 871238076 589426214 903101612 863058495 378104985 493071228 225915592 166780736 689160728 345755207 145276142 962984478 95501162 840625152 762428892 892558302 272709240 382307554 634605595 111988094 143101584 384818365 469321807 808781207 637144645 496708319 906350152 879428419 440792388 711852952 893424706 65550997 837400617 363893194 945994603 527048279 607211928 550287022 47138083 419674846 398382927 954040579 860834180 510356708 529566649 591667 758221207 717882659 232951385 625018951 737814834 846955177 219376959 262533848 51096614 262656036 686344773 608670637 23890514 834254534 362719732 796503293 701418717 393467018 630279647 120248352 249651844 380462063 491990573 258237517 723330006 584169643 354853184 238285408 805146590 729715712 492554778 596920611 110703437 73985896 481582263 307236081 16928138 374672433 454070692 897941857 297319955 245907423 565042709 336588808 126538131 119633078 781891888 790506765 614212497 283345643 652550718 8507489 515070331 261159905 33737681 274789527 181974698 286468411 470280281 258122858 987190395 152809383 544089763 868233334 942470271 146009440 627720707 775798569 524860662 732382768 559170482 810181476 648513959 518876025 539765796 542097762 335211707 177537840 342397302 316606204 340031004 528633846 511138229 739213018 447220919 814743727 61736061 509943197 259806088 796955108 742675331 226322263 797335917 314419955 301937858 261986029 120361368 300366647 153980503 132482198 219702401 326900301 812393084 891810056 334383349 128506466 470787013 354237168 882236724 427802483 230614271 354981798 575600324 659065905 953061032 913454639 835311763 6495300 226026792 489810362 182291062 337370590 948341307 3090735 81002094 206873878 141474387 312596025 595331769 199405893 516745879 904018160 500272270 692174780 233481576 257779470 731196184 575545031 590031605 640397624 742497979 621013263 336527816 606849304 269419844 58837899 664369061 298439275 655611138 748213938 335861807 490266509 970132734 930089751 995465235 613578701 201587166 79892676 534093129 331347418 204950897 914102322 943896565 77362135 332242032 329591004 379814463 763993103 152661260 855489227 975090972 834644354 879474477 16731756 632491018 537425926 379577790 958832191 279709035 603335880 455771785 210759272 54937497 390133305 513388441 779392032 216169242 226443382 300937558 924165486 4000058 655130700 630235922 442787741 595758410 24279625 248610076 553574243 575494003 911062951 145564732 264131659 796833965 380198777 189752323 594754170 768039450 75918334 41382084 348287815 27779290 409528012 806732767 805773569 665201369 96897223 523882382 480157951 188540776 509800026 853694682 374306214 648515620 848267582 964445768 856816084 835655530 28062649 828064572 479965524 528227253 581917550 648896436 948249482 788006327 696959802 435526597 700407383 764148497 794689613 124176181 197793890 49130721 738621374 289758387 230705149 420607298 74340448 149929704 180109163 89554187 433328833 669337926 777612916 88347493 79157735 261685562 434983192 157550671 184482031 42113595 106334575 105613191 876068377 854119588 864518991 871130901 739993546 796300038 358417595 657770370 433443841 368677356 397271613 243746913 505007815 833360046 625032761 159602142 545707616 47232416 392570598 723963435 250198771 791103565 966745134 542292259 416908262 366762112 713528226 333516002 491900475 122096304 881929044 475645912 770651724 256417972 576417177 640747446 380744805 471953604 883942860 64114532 379540282 930574301 414398064 792250967 645786892 342325875 164968864 261812967 886098626 117282831 925726378 91572853 781472856 869271226 441216718 414545408 228982733 692305988 43302668 529263841 202438855 513627226 531413151 492191447 794459858 326876336 362258324 410677318 645324853 911616629 292142584 81829426 969866189 428621826 921792207 910964357 195347287 19876650 634238225 983840287 659367444 140787796 456613363 881812085 697300246 683940115 858589603 501588276 566736887 998481032 343705742 57582426 40624815 542353170 564379239 876896413 188904815 594763488 387241455 791896117 934016389 856078344 45244593 556815984 423494935 16706568 416118210 990667772 623764510 522267856 778043905 694999028 416623247 370791710 826751668 761984838 573303082 498151274 39593094 93262675 370901238 109108191 974131498 734362370 393131268 841638314 826141595 833403852 27591861 272782804 889262826 372808486 287450614 709038679 29013633 24869517 964502773 412400262 931180904 578287500 412490415 570060584 887384122 706328916 584879373 192718874 557058870 309291543 264045587 990238932 666723175 586496551 208673620 296855960 130730229 568537249 80902866 413346321 882485320 422478835 677831929 5430596 922549945 420425869 726193447 410290070 310667731 763030064 598287559 421923972 318723905 269152627 482168329 576763618 480587188 319306111 855163784 531403292 930849000 541400647 308458291 872149195 332646784 749908711 352174574 63711173 747705893 53034172 453821325 8364508 933190139 464621013 619824468 244050411 822361968 15201354 747276528 472516466 670629821 322025972 361783242 921392964 806451954 949488567 123328108 125400659 598210764 344179707 691589971 736477114 617696083 597788121 470932295 824989091 142610143 872550447 402758325 62541940 104105597 498103450 567312609 667088276 72207464 491266340 546085407 416517963 890983217 711598269 224644551 348897881 744800360 859436411 390706187 91576464 468177542 50578693 695711440 621456859 430429415 135752604 574333481 770119396 582975969 668908417 204382902 407455053 477432300 465370823 206887547 640773389 792861901 668157193 45364596 791919208 444618966 536753317 591802179 72321921 896004160 120168257 220453435 384194372 414065450 209811691 877423656 658571681 221154901 840652576 791886781 37597968 195710695 407508998 936084362 908973961 637610528 164968743 964568663 416104723 10125460 772503185 75506485 988318031 880829092 603043444 358926789 932342939 396764968 305721930 926903653 631045174 548976799 182494279 677925814 49675308 62305979 49655975 262459720 605207704 756262579 347750142 148170220 19255314 983238105 737325898 875643639 975998936 169968850 913676758 224938352 896079168 886421556 459467633 311919827 784333286 421333621 853965440 926299800 736053640 912002705 936050955 894145497 431011440 723575558 29070755 566226553 267484519 945445588 798067503 585456196 615275323 276454583 675410337 760692424 97890070 881286094 246713948 708897037 393703923 477494671 124976526 181095889 498485826 125215109 723179952 428873013 570900779 668028890 689816938 33366208 722190057 949441618 147083014 761813178 701819461 533733181 59344023 499577609 149595338 860062262 801210295 771130789 994060037 732221371 96882488 548995046 357121188 853089394 427325344 157202642 150732376 699103848 631677121 487661893 118573515 298139673 334348441 166545969 798710483 835572639 701819498 89261444 339820541 335623015 630201425 194328959 56365737 358082641 695867898 596689147 439457958 903212474 247910169 236943082 140456510 612638961 288554028 646080973 649996619 9956847 57313312 244984912 591077773 410660427 668631204 320111272 772702514 761863559 988896459 26223223 17542434 678425655 60657829 648258843 742779692 478820142 427797084 845876810 971535118 439975554 860169139 137103724 519966503 938991746 757438334 784891669 418244492 904663419 51816950 235557019 710089784 662786556 826715912 428791222 482635981 63972501 996883978 187320675 112845859 704897672 535942542 348367127 5403423 13589606 669389676 563343055 674661277 834847215 889632913 948927442 577245605 214171710 783718259 457149002 607513964 592132688 471809195 373593174 233170902 45062848 942268290 239628468 593547015 932056583 713472620 620074642 669104360 332346417 681543672 783681551 26818029 31009069 583349507 10960212 758975469 488123504 646237685 114150723 584376543 273863695 490778367 545332823 211494577 28509927 481116354 57798339 283289456 914991431 110962878 204740877 549824876 290486346 494429164 52866796 308441107 985401694 130879588 490130277 948883035 798100592 436051954 753492912 229142928 272920022 874444725 674511147 247905869 687357701 235683235 296518418 955489234 940799209 658790808 520484047 680773405 651942554 321447722 752865324 62038994 963322870 595307989 250800852 125962594 436964313 869646932 20819022 955983855 951756857 779682192 607789237 137293373 736388585 564531352 77256977 414304784 226421990 933621894 187538624 444243920 298287887 553784905 509649430 604773281 441057929 567216543 736551305 259807490 211942142 390414169 125025378 403655580 11116846 351462932 301212634 597586397 976022656 526327004 481104215 959662586 757187405 68625049 903180869 912546942 995261607 718738898 31438055 143147233 72275233 247175149 678618576 405944467 611111875 383646815 702021132 534233011 271330578 560640550 968322187 56088197 942515817 433447526 452001362 445547662 545718001 385677141 304070758 48246617 740645579 844733234 185142344 182406058 879589687 552093782 223626258 470415321 916270567 497363054 558047431 944994994 572406557 374596293 573874961 403889588 552943231 692175198 648361319 204413886 910787279 587684653 921942109 53682426 189246521 266706452 966794387 238503961 59080506 382921770 614137602 596723938 17104294 273165005 150241295 527626704 843452826 779305103 810943301 394745159 155381401 427266634 83934761 460537096 879379817 429113067 309768025 76374751 634260992 21485364 703220247 455472956 947200885 740949391 34822978 559296462 208921787 352099327 517147310 166605068 92268241 849099573 810278947 630571698 228223889 687279641 746589588 223295916 303921576 230447161 915105292 98771305 906079060 648698942 20497837 106025041 98575888 753028522 686782666 798894965 294841621 330141848 735860751 915219523 281372370 990993777 700313269 837269058 894689816 222644946 101851944 348711933 144022404 114838163 972595709 927963598 796226220 742929922 616661004 915649443 160629947 502055900 202020895 250773206 23012606 396246947 880125612 236906826 27559957 714321955 957673946 821909023 252171911 911257982 771680277 799107506 124933129 777630986 255810255 73538021 662261352 278638171 2731799 542761220 502572147 323188921 115284676 776984092 472742886 735129752 16321702 847411140 314590405 349634863 671992815 300289922 683933391 108466676 479042035 410966174 539289888 689099612 100673281 452513857 734857117 86739071 355653209 300152894 192735572 473471489 611258008 7056391 20905758 679349183 693855641 651542411 550809024 324801597 249694046 987287117 535791849 975340795 316098816 491982636 178442686 512920684 580344179 934446394 431744343 3180231 492392983 37606301 977511160 348482996 140070615 841845445 57204359 787472663 731427112 297929639 336647808 162717898 145289047 459656274 356433429 599640327 767088137 274612462 448798999 245433890 944480747 147920710 902546964 520385449 379711764 219576407 721604082 750028491 500843786 845458199 194723585 442169882 887568795 704747241 217091165 614155512 963336871 407561786 427026858 740167969 433688500 441383489 449582715 594041860 269330828 55839758 833299694 878869535 609628249 275009286 649947936 673685221 189955456 166995055 250802729 680633501 49673650 805094566 755938143 74453214 107016598 33628403 980666589 949011760 862433606 888397789 69759094 613421300 527681887 761848499 120157639 702303661 874057533 52917582 261242111 808578082 854864277 367760341 130143258 300628461 582076010 397375686 734380748 646921581 195714678 879216385 52197907 703038707 159288749 991715153 648143933 62985861 748799574 331328082 948483943 192474453 122834831 105878708 395066422 583883245 324560154 365022980 861997353 344503677 518077144 31487740 742609293 304292800 153128659 270048071 104644117 238546127 138242717 487178350 500337092 712791267 663624310 311291459 237316501 618824818 111117408 429541430 280762074 550509034 398150672 130348731 646724083 695275065 407528474 94916225 404383011 324598964 355253848 216732797 652725061 359557059 383058425 319133085 485572015 730319194 629552732 119411009 653370426 388123604 996880768 668182422 132237570 661104242 981830226 986446498 155203318 625467071 743277714 729422057 52318707 730136683 565174904 472203777 754873383 974499675 810612764 881941940 209873959 689664504 323552734 316037463 273868665 768416528 564559705 546602991 160564295 526781428 233717259 830263121 395775961 736747088 269000920 682037253 414536520 155369026 673558205 102686727 76032664 837896832 247804178 665846875 107450412 519205826 146912569 334232984 962315943 63291408 998855743 872894798 171233785 743520496 420497992 36778424 449113858 437675342 225285451 715576960 859234964 45114170 828841023 752704530 755600843 119428722 628000475 312318323 687420680 855375845 21170528 439969705 437114316 465876833 441228641 995686071 652242956 663177099 490792128 195817911 403056194 3396555 836959483 613417511 777530009 228329164 680525174 795068434 860454384 648014209 712976940 449774580 5989842 885160617 510745324 410039975 186594847 432593596 645514271 651646747 803383783 603058195 476098291 514218393 269204661 876068694 363231056 570569981 690122540 680209816 971944743 121812239 861219296 225994777 67894626 304499098 963855066 104435429 671944386 640765830 449028668 828151632 666914373 5892496 795583691 37475196 345871487 858984098 517557098 370498178 658749453 73011061 754494351 274968377 864181128 44044736 661133153 670737329 966039797 78578675 793888819 289162102 920209042 672686773 739369439 485931716 888579550 895742329 41990783 531500298 214156482 850805199 22620373 314652243 514094076 966244497 925105270 131303436 658801990 918554775 70644714 267081915 415465522 784019 56191120 597080719 50956998 470957872 62613339 122483416 388843431 243103724 499333562 323569653 857343634 645800738 473987409 665760140 337979798 438145219 131850997 445828225 784490198 415512475 372538446 705538796 204499563 325701351 487549863 991507050 690617407 752288226 929979582 537457466 131392439 520154974 444608787 204472667 951796131 156690036 404261500 514021709 758058603 489293858 340466690 769979056 15416922 64395794 79038687 215145614 527943445 688356202 941681481 395403080 126170651 930694505 876695253 59304808 460294174 826926901 212969165 373302453 216398106 189120610 963460556 589425291 855057744 240129002 184441277 306825303 258470063 950678444 882056942 182024557 631446617 29172075 195579108 572504282 971290297 650754918 712150044 157604163 937996374 661978761 486953343 802180415 987883091 879567367 644258657 72254258 141700177 449727366 563034416 362875499 344983858 284121799 234732468 132651263 946866982 134320854 906414544 111273449 475583628 208360092 132576657 331489809 17534838 453464866 817472163 691512427 369745881 343660437 409357345 22774210 210406761 254356159 541764260 560214769 314781335 607156981 673093650 656849418 280076918 422780671 530420237 250984668 416475383 295044075 322893665 395289010 398254260 711593976 348130010 475554231 311608942 536284918 860106454 748999006 375770120 343846383 723840384 728863369 796634743 423620153 220513850 764687007 324540886 105963949 484959635 817219974 298478586 488374306 657784614 420614173 638953770 270249363 277131343 364984098 970100980 738669737 926920056 174109219 927957526 279204951 812212223 5937244 50526053 603683460 224973541 848585125 703995339 739366517 193022435 845130426 722169958 859949852 124427433 968581236 875079121 196889830 712711176 858926361 43821572 89508582 493558665 728487943 691807899 470163360 723944986 730917415 985115948 384476008 262927691 571265589 729998328 575078717 919242318 371226691 866086004 714547635 251204633 351040659 286637054 540166310 996064802 251337412 171377569 451620700 709474184 270544599 27117325 662391980 98028531 887859277 619546374 155697586 348985007 351860508 69399484 792791287 957476973 204102143 669018762 430306539 942034713 231876122 727721195 96678386 113856833 868964746 530983716 618067604 487415371 148914496 653536976 916106026 263817335 329454725 572626824 527783781 278088495 634741508 964843155 800706294 214809909 754412534 183059701 42296139 358585834 942515556 385970390 676167574 470435414 239684342 237400077 634553267 18047842 650555232 491615174 811110102 861710279 562889011 209153872 413638845 378266078 54443449 907654392 7967210 378032047 923429081 466010598 590523499 522755539 739359171 6534164 538150774 774423720 712924216 95139361 265981224 628054553 864337854 213567973 695329235 84735650 841223951 440476498 243875259 631580529 793569764 997746817 918382974 617681346 830665433 983127280 541827966 202272849 618893129 692246998 314377485 338153294 27239637 64359129 499618160 613790239 102194963 204886626 270939576 516778421 725233000 811830432 755741131 783157975 816925265 757181705 567061355 644904076 819019036 549241906 752764955 729891852 862221090 894608472 931702099 514411370 281127352 934387830 530995325 308583308 289402599 646932469 399683604 976214770 776868127 781902837 760796163 574442196 292717189 21695883 488173536 768093445 466155736 936014605 704354195 167254934 447263916 588342849 212735421 323959845 671406867 641774137 315868320 996002374 424172351 323326256 196585412 578276586 801696432 691026787 118945364 871108574 979806465 386009667 624937638 124332220 796755174 550270673 787392622 81376845 802453663 818334897 268181814 814764678 620604306 472252660 657825580 956868402 767954401 517964372 705389099 149023849 89464834 795501211 436492162 629837448 815904673 15408005 367310981 772142038 192813261 336400278 6833179 157696990 453719497 248645196 372682627 171333513 392986905 197000257 716322375 504758084 677381094 425852568 770857138 680749657 823018162 947908847 813744528 407124254 963852562 61726175 77911267 52760325 558312752 391281463 348726112 67215104 587567482 378066093 955598722 931123778 111079392 601052623 271569382 769223698 470946118 370736601 8662445 38875431 580825915 449525582 201948189 119721541 883974541 426497374 820911871 697695500 600778295 616430983 382848684 864928268 560928878 847196645 912934522 47015314 815909551 120224948 257065991 261469264 766765556 815910072 935474292 800709753 405439339 636402960 461719062 746339088 601178247 630461174 776823878 404896109 620207451 318701035 495793550 154062062 147346285 393587726 675005038 680089278 5994416 212888846 285669907 126002419 666659544 473207678 283457716 552420257 901701329 445488713 764881548 952801567 179618871 332752820 798728590 166748826 473825890 746492904 816602293 527211646 330714595 936296146 811862879 170993986 229496773 292922313 442019478 381385745 271657606 588787921 715010405 900261398 821564084 639400327 571150348 994635573 432058534 852035692 527055186 877291386 714878554 225333296 110021089 479702966 183774970 894834881 887765597 319408841 559007715 908670650 834841085 940862735 88985729 232542557 362586467 27154770 944931997 507743446 706199938 60139271 100085074 963059236 150676872 955140080 524318550 445766222 993727946 339851411 786757224 698859193 207439572 605993769 866242155 810880528 256692057 182628427 417647394 37367081 264094380 866208892 840814918 270490017 19468486 496452683 744940045 181822365 345401688 154258896 709556288 748029735 806138374 594002795 248088355 418241471 212477147 522601396 878808933 638650060 232666636 916239519 256804010 59367049 49242832 464094786 508176256 494276410 339434734 854985724 582801197 888923450 150250530 815868660 64154641 170736106 548094232 647089123 339641501 65668572 186430385 219601023 857162901 80269619 490349267 402287365 11061691 792064890 377401652 850959490 841855719 941867724 115614058 887423036 801608719 354819183 62689311 340141699 303702962 159637196 516399340 299100216 528416914 909165647 110948196 825205306 175419345 596984754 528040000 452735772 629955357 855337270 801689955 337564251 225373365 352484403 164761671 945541515 531194185 112445193 210479698 324525921 181760538 439668544 689143795 635951884 921940951 789299232 207574039 250413142 400094255 939728018 978280534 692571875 818852883 825698672 334234033 402864363 131599756 74396955 367589488 736754253 644385564 341602597 893567004 934975699 364443335 937582295 494257581 254819152 877913787 733842104 840096139 844532450 36684097 479153851 315388816 36367026 210179421 152497688 495706711 495027388 140238637 507826586 369763416 837054073 612100931 740063284 441468272 466424902 410321002 747003584 590663421 437067285 672239769 956249848 660181305 256140179 517407852 415688185 699801202 581718877 221021518 655432152 415578309 512921884 317039966 912529670 434893443 238947513 696256646 300122127 823590894 711639202 789742752 963525023 489029729 703220251 526465000 946488305 879903776 293607490 707131164 642659924 155864403 800283240 950892007 264497837 725238621 10381081 64488021 1570864 597034388 557861459 427452444 947249745 107209995 43163681 827414091 849338081 457769860 189635006 378876455 139951007 45807196 531224329 634664480 864010281 107311486 198120912 604006114 171567060 401188333 999366008 262467637 343926891 863986666 422704514 90203011 774731210 798323959 109237042 277228001 142569601 429521637 262984380 155327982 433640717 121018509 50769599 342793000 72193626 912569122 450345589 826427010 864035353 835423642 383747532 399354427 475700848 608087245 596591478 933782608 940801853 454008903 570944734 579385414 939903411 772636608 455995680 700416652 39317288 717205148 550502493 255801246 556878802 340268747 379156746 674733076 146940225 929491109 526821253 220228988 772503817 786581723 119785878 926865021 658318694 82428951 905128303 421904278 458823360 453076466 926041080 400439420 248030329 439037257 393672127 630754713 72334711 434548270 999056485 468174248 834050402 871519018 919346895 877788682 13425106 209239696 934797240 983968538 459398884 926959217 682895414 177995810 677621226 768017086 684435403 59680741 116163755 722295461 559312902 914154065 417767857 108132492 162128568 638905371 513724446 822974437 629306787 715671969 957134096 477831640 399503592 492023282 573354861 618651384 720183136 427822248 15123602 398752766 371100842 378874309 736711520 799051965 251765991 309505597 220734887 925934127 967007956 825208333 825459064 913401907 404193663 567288822 876928642 900068086 712829788 510700372 924094469 405107594 492840003 142211929 358109424 181843117 873845914 333392579 323559694 386171293 356541589 135897090 347957134 783547723 664895079 313604236 602903263 577876637 428121222 509619877 699153035 49379304 124206866 428645822 14570656 783376858 192725777 146672060 459554738 942964802 176945384 154443997 470300353 582947756 745643336 926710937 436657803 334843965 343947462 966798487 798784955 448969075 750975764 33704674 181807744 847348216 5159114 894659529 934459809 620552889 808806703 911477492 388364954 43004437 672631616 850591027 52774562 804347012 287729350 98795004 647470075 622933692 336625370 349639816 550416566 321594315 118212134 871822078 969538514 513956030 161909429 995137897 318146892 974216414 757518733 173550158 121087261 273086488 14479942 655278472 774139355 83391096 699618205 4980671 476505938 989026285 43350855 242527465 656324701 179679878 42982585 28527321 829904755 534440191 182125437 459525781 932985644 146347503 18755691 735297802 704646082 859454389 46228895 990394608 57744391 465335703 664549862 588766039 868513638 666128368 804030854 482657217 670382242 614090618 484147901 335309969 223615949 627425786 701446736 936431999 325547032 307198940 452134736 891965017 809401300 979466214 16271796 444241317 871415089 491670260 395355352 478413204 565188523 519137417 690526451 542135514 272640098 133271489 703990583 93536810 35250834 228635638 614750646 223544142 525651111 856322811 408947838 565939172 723625038 150625907 969656091 841519572 370059540 415273258 563442556 963978474 930643538 880282919 486191660 940419721 587281178 821040584 586549621 778600220 545927082 955604514 467449560 229977912 31731323 461667839 82433437 807266904 516472372 150526142 520122886 295888066 611438087 920587249 840865460 374527707 99249593 141016597 122128643 853705869 684132336 952244289 933433441 749900278 678497845 963217986 605113218 263595662 495660206 609948635 606602488 323722038 254321130 576313291 138342374 488618621 228444684 55741818 691183414 221270436 177776514 880705637 920978635 389650642 29643945 123972339 985693987 718491640 755834768 682707678 323763288 439595244 474871297 993036805 387470833 326182903 462391935 180053257 721567302 606520386 337914986 633676533 414892745 949207131 938272746 39250764 246240507 460487836 429603005 300595575 589081527 703554795 303688689 725899396 904106051 62146223 962746312 690493432 841818155 318607778 298027526 346332415 755111187 623604746 366215285 698491519 249370307 348362107 964847932 711398281 940669082 671779294 264916634 446631140 519923490 890575555 771550366 629421088 625389707 248239634 432962454 46060604 48046897 661635263 21505803 387910873 801338866 621745185 51113609 230818801 7358410 647047392 981636528 639624397 204571305 676089648 631522951 647633120 43793856 75847388 798063026 228698350 460708319 993183826 877862874 915744048 150115940 163801719 578980081 623567454 811731307 745178963 798270214 350617357 157311767 86245158 82418030 666818049 673483189 227107447 24044875 437014248 638021783 707192060 881418389 447937819 724579487 369679200 344328393 336035337 255357403 5583050 182857908 331651330 924577875 477292290 193619841 99153754 714536930 758538437 587293441 73387829 480521088 726590803 503885242 230306269 180562946 95874925 189520989 609646715 73612615 205259651 977754308 263511251 293863008 899849649 431473839 999952086 710054156 341862844 218440289 778481138 652129637 587904480 178535210 555337381 207971927 751952558 191202669 253189206 150175993 826444879 241788214 295785865 112729423 859915219 834704819 305237347 866602911 174396476 933538039 481937074 709250312 770695903 7091047 453898876 967799612 554809188 993879090 769596578 142340377 996629466 64583405 273615810 291098724 344403209 26801310 804864209 553583306 295926969 300982947 828468767 481651963 413439828 565160334 749389682 270007247 226160857 287184881 993701064 652424572 969286748 247875839 765822426 274418455 317308774 612875402 228902194 124916975 230249883 95918179 363085870 324909163 627356337 584829499 123633811 413130058 923907001 560642038 840746407 231587684 890505909 376074304 263266200 193809066 308897549 76751450 239128142 334201896 489460581 570638177 29655456 674193026 558514806 313066994 646830858 605266120 137474254 243211333 565044307 803473581 435974957 324455119 423429238 923565981 574972955 723419732 497951436 535428366 476481361 745651653 786901833 817768168 986983087 675174406 541222230 14118771 57328685 566071471 337095503 433148704 982623868 560362633 320833739 107677693 482213985 287805568 830118217 904313490 312740895 230779720 2510173 237347473 925531343 599656283 240711314 687858851 325147356 424183441 295002596 656918529 4792156 299118320 411334015 913492792 824396114 321477874 42328940 486340555 725122904 503437995 325803016 515929809 740178708 150730090 726602104 577412644 578086136 361576751 665843522 591211923 254886149 886503393 145471555 135116642 89191669 624820859 360371678 471637595 22864289 453109162 777907189 215307330 483037639 547848933 287094716 698466589 731726550 866891564 893294825 916438104 220459683 469535051 905278449 178565956 792991244 211648344 121039027 343338749 421817198 363439431 851585372 153679705 174024185 760138294 501261663 446873166 379671163 112256936 196673771 230121617 428724119 483555360 70024088 496786825 637142472 368300274 790601768 504025193 223024930 754308566 660140203 16415222 141732907 895890081 407056600 908884951 69352265 978546049 528937055 86731244 205942255 661015113 145996731 986686416 835927341 641474601 66845832 493963266 736449366 560094394 332747691 410320625 985441619 328561282 744466795 439210609 157085734 545164062 727925276 184360975 9755592 902842877 732631189 951738264 866304638 695342770 372652351 114179620 286390214 10460316 203837298 535533384 236981770 378855496 586353226 673158282 625722074 658805681 676679379 382667958 244979516 411162493 198944131 624099982 574747623 18013081 514487390 975763246 590769296 96893643 135114773 404236824 290121677 147320905 510477023 253058007 942334957 610930332 937553735 647011328 948095253 811034570 152727347 971844042 631566724 618069063 772943553 989388009 431138062 709980804 766996113 945377382 952368997 621980078 874699532 701397576 987645396 53363895 491130123 104304908 978348745 352621436 338034989 486731708 909137332 692438730 293324002 349684462 664905542 254520551 976675967 827162976 782807526 641616710 960025438 50632154 19638346 881383318 714284227 396199598 926878276 244235359 146994937 133667788 976229646 699257746 131502980 992001810 949505840 994573889 199767569 329820573 736653121 351202531 858664382 296511086 574141755 841784312 712601858 25489923 853878199 65805103 772821415 281270227 40067307 475345423 379315089 267840490 511468609 365345204 322373399 566247651 978461074 165452259 424731594 315580278 385268918 500814842 234604299 488781712 945930713 754805708 851690770 422398411 145350729 925500874 291577315 324929329 583008292 343381982 379213506 823625258 781222146 950323928 811778345 457543963 337152107 990026781 15100108 943476966 172175620 453599823 389439092 35936077 991995420 791745130 351557239 429921577 771789310 171279172 123965919 265173076 317257341 122355498 7112404 18157666 33877292 893145107 818726952 60912983 199976757 229903052 14229375 4503838 706367590 636568308 703844421 488187037 259200151 167838123 561611667 332798657 195290766 72534799 733015713 344616591 156187452 656080375 510012006 60468852 806270645 94102734 457471541 107791925 55938032 651553942 738641436 655346125 99162645 375773961 611544114 691665363 375568281 712344761 855167775 233507102 541782616 222846658 630063221 287388749 93119604 64361320 406400129 965984082 289744620 277215193 684832509 551119114 657033030 266440149 259148864 242797517 171864952 781725944 931249382 337820784 897811402 590436364 907730047 482933722 416323541 801648201 997044029 511642424 481082331 513888915 171295050 761317890 930316224 741355812 827843493 716304040 738346342 550474578 674437235 783094779 325610521 77233458 362172688 725313118 295926007 59644542 422517147 29493591 890702917 293590136 853848651 583793494 120989975 256894404 658752040 522805756 559041499 669047104 699622186 987650688 956955776 801343828 627568918 595104219 340002954 614363341 812233912 412972796 917608506 118085727 641348192 322932104 418127606 835140182 75782385 987129849 586172487 502392796 106143346 206495917 131056821 420901275 73256049 304459713 233745137 987657864 408207971 850357971 318869591 672865992 260001725 676374501 675789313 552563017 147172990 822322062 864376409 644324726 850750088 886203805 124011969 102983603 277155661 442017988 994684990 718058848 328079696 660846418 743102662 691666571 149995880 496784724 967099410 959948503 985746762 581492614 527425894 463735209 726237282 365888645 116426418 467285550 706089478 594970420 345795245 855243435 420767081 17312722 66627638 26076873 858007029 866215245 265520107 627247303 59910183 998982968 545927160 247629055 972289628 300915206 5658138 322057489 212533520 941500799 204044113 424621846 265197292 130759941 487058807 156819747 666604640 216698492 665031896 154415878 770028868 294322003 209760968 671607914 690235788 582051666 242729349 730626371 695691349 795567320 759830331 124014990 15536 339178022 192887083 374190117 51370067 570998842 629443241 19335049 917260291 362047742 898390173 749268060 679523377 803330889 476303113 830620760 477175773 988794705 956976513 121497967 292006064 274642733 705006077 767059007 843169519 183292075 327871755 714238522 933530593 657332276 98192570 41259464 857314828 358735377 203571789 837303954 342753769 152095431 128390850 40798868 820453299 528918391 188433879 420253784 880339658 722219484 980602062 230800491 809643194 367407284 507129433 200629394 189290476 837515990 301666683 351189322 982327318 786242050 298476202 40607437 405137172 229125616 499416170 688413393 102281481 310191415 505735306 385334880 793275901 898367690 515133648 776358615 145069452 895990062 556843917 832795090 503910871 70586499 155463451 115997032 883469148 526502344 755283217 46280044 876243187 976163218 518263283 167820195 746144784 434643532 535569916 531186958 901408155 282651104 326777194 353752518 728670822 740358387 95645950 262861175 846792114 669612408 670214078 909506822 137948655 69859375 959921659 571510355 8258565 692390246 442250438 477029136 789294708 170633314 941150838 447566524 505504762 598085317 782484847 556594356 611306986 734700042 170575276 34540458 733225125 230312161 152748273 214491920 666182429 76251158 36253028 36427593 885890471 916556620 159651818 759683719 487160377 571745482 26081608 712012516 901143386 396569557 552852456 477582328 454120529 818628404 155001620 294977880 713516472 636400723 419486832 555156423 177850292 214915885 900874492 216990854 86341363 931109587 991855256 485876814 335682165 543817065 939257063 320987833 849973937 951599259 520036743 342842554 442123548 105291909 729799222 638634914 209526260 706641678 37397851 689845552 848391428 186439652 550558873 245619251 739399125 324576781 296507933 514944811 725496030 97298560 457250586 807126406 702629720 591683263 143639138 48208948 72410195 430496294 857776678 783769564 485125324 222888507 761549711 480544890 178088342 269489376 166103888 798663944 391238255 802188350 231771554 537275824 933251154 309385809 741341024 551386726 484915516 645598480 707673063 310184487 70157582 352331344 466578324 586703982 860472428 27082142 206567340 219281950 918594057 454791723 578366382 637075975 214306001 978203857 388295991 518795309 819246492 465308010 929865368 604780913 196636982 714476256 191622707 553543021 171714686 498603041 238933626 243692957 161037969 304318136 339015329 994254652 705159602 97044903 604377043 694680673 948823886 926209319 538484528 338351292 335637159 206454868 923924037 822690679 140791942 681157236 121950196 125229986 736755041 444951607 683782346 229210184 469896759 923364545 652071354 392091780 134913972 388511569 878373457 897814618 210306905 8889770 177084813 829425846 869396903 533201276 425229061 952297939 155730394 489911323 487328211 933921949 772859949 218252664 365792161 689623213 731783745 10462881 130671895 724855183 656916591 805511187 326111334 886486543 451298946 862497273 905918362 169253998 950379438 60761298 245915086 597157464 500333816 899736039 345665603 262920246 874599629 424574888 411162134 221420639 391458544 152842681 690881382 21046091 372856689 381701947 326725296 741086132 116893735 487006912 13049233 559206617 110983590 658310004 917292705 686681326 882469391 579885039 612387769 474192115 640973598 737599816 419975007 555453476 61609080 193321028 728266388 619435445 45587153 356837625 259529621 465865411 292909941 469825099 216064884 322358785 776102719 320806898 289669056 859312432 149003608 815362924 842789117 749407510 633853104 937131550 183444343 92213365 452374500 840716663 827064017 427799599 835635198 434372041 241693181 961615124 378007313 164486211 917219904 650577558 728320117 834984523 737242800 47720511 513417195 976342515 969468630 492986857 727888855 868890454 514421652 530677080 301891082 283650084 260688661 312133854 939399338 93999723 951692033 337856797 37648343 728853502 75478484 245803122 653143029 233503493 926077615 135462018 708797022 448453686 50637062 291506038 852480819 916627451 937627378 402185652 660614924 400425862 531266766 901193193 440606166 270238154 833138024 107965394 499929840 961956432 342954180 708858899 226276273 406713919 421157021 665812470 36931616 782436222 41833933 88280214 21152969 67389309 863900097 871232230 816153143 60654006 130915893 905898166 205554488 48619859 249277652 60165036 414195571 766845907 251665457 226764755 198506798 708942544 874812000 804748663 834428891 185018835 142280526 437701154 305439802 815110500 864150594 410203713 427020585 545105036 893453224 17044770 907066055 963313843 843108717 702244027 380520479 408065563 651702834 222744211 787699708 944343012 29517339 525847954 32594679 229617253 177039388 893358088 135768511 138115868 137608349 312860999 468671981 495707840 114829844 644212219 406163572 647782336 517622640 465565483 535816948 993209430 769976393 732924913 56608483 458744137 674194101 828385569 616342621 544128265 61043610 456534827 78404818 820721470 271900748 600683974 131813417 157985720 6549353 806586812 69892796 116665898 716862002 226866921 358150239 596373539 831799736 614658669 527065567 285126280 414290700 837827865 796674046 795745635 969902979 292406526 98298294 806058635 642901911 750128676 302993947 138874107 312074163 364280592 479458882 196092881 280256155 104408781 525754409 879373943 102655014 331940012 103038381 561122429 688236626 580373887 340050805 798310632 273000472 293457430 888785384 236175445 95736104 35224272 909070830 118497432 163357152 649766525 265382145 453050985 761879003 898851 258799875 830633138 745100218 381324047 959941133 174052755 101715958 634566955 240298634 681675586 88872390 221924350 506844126 616085151 486565889 222523713 279101481 672140809 462019331 658665061 467469872 612889694 491353740 870033716 581394356 537089368 942713788 53781320 909539329 791885474 635325759 960712876 895655964 557397151 783863488 18756016 925005426 126456937 265670061 289458682 726948562 141224915 428712533 703901702 380147887 437689333 591062669 63875017 25889629 56675708 681765458 914776091 126552204 764969110 107590070 604336437 902457578 532967981 304043384 894731012 278939871 184521509 421262284 371616846 75993291 178990867 66410129 701455360 63605978 564883350 715720585 749387528 915427361 332961017 628792519 931402794 529833475 894806730 501791989 326491847 323524069 470244096 545197616 532647127 110908754 985715087 169094917 731759677 200127022 391278842 991629757 240709558 946206471 887008602 483190201 127742001 314629607 56110057 350120446 329377588 359529277 703758397 789202586 643251251 100065687 956882184 47051261 340885260 340530281 647666656 845622028 208851284 754965183 48545011 602989288 301781591 240524350 634839787 718539964 990078453 223823621 649103381 936138984 9619188 237059350 679454592 145868306 55082743 205250485 200786750 700830673 996390953 196355721 350757180 908388778 657439187 575065356 627694520 417631267 793064997 943762897 849958781 899088913 189963663 972138968 937806347 386516853 292206465 505973396 644485536 386755343 860397870 86684946 704722411 530787094 972397531 123790422 109421810 828103258 63654109 584326844 679341737 81701727 293838337 796134253 919662824 402542848 776434389 89293340 738423426 160983091 831903300 896668044 816091393 174706911 24661661 751599014 19968489 477747057 516521524 923700762 689169293 918569539 551340728 503858261 628877072 98887651 940555923 936913152 625629968 56108156 162817994 801478945 109438362 637874271 48065435 408067236 59435751 954019298 525428653 53814896 692579614 810188888 526965024 806057631 693699155 926917932 995816643 413631485 312183501 761750679 704317603 392963048 988746866 679504565 557993567 760192744 884860820 823014154 341031714 240583193 678719649 210738162 508807447 159392784 705846667 532933197 497269952 885439700 708731204 786236335 333473553 421739320 946747488 12228159 877163181 550009657 827679251 17418273 376316532 179281069 505368863 416594261 669117802 664661329 302563481 402371172 499800885 547806466 769329842 952771273 984200662 125460144 539108768 188652564 716847137 993598416 429271403 115809464 755697130 117200711 765025966 259556424 353157502 119755692 878404668 236713622 120028164 688811875 951200299 871448924 812903062 674219990 917741626 454309763 131037097 452832984 617826178 757843756 572653696 430130967 337529975 278268612 720291135 821158055 805772692 401203049 907556514 955191635 790571139 829133818 872745441 916993870 915192357 834641461 725132944 447015444 98115741 127152290 597793818 923391551 897702086 190753046 686175685 439775949 85132905 816063403 587790752 320149040 772387337 50725455 231034531 338773956 372781687 990705259 429725584 278153153 833088645 525671824 477467342 290293259 897123060 620128957 188388282 351081610 923251928 479264570 415621101 462480325 735287674 364525939 788041538 852122035 509391320 649701729 288821488 908364310 682945088 854298749 689013207 84284585 294854536 143255113 821037656 462949551 324346533 690985124 330978965 448771025 919112933 674890809 157508109 781761235 946004595 932457042 824706188 658948692 362191435 170500033 737476094 836009387 671117415 361283445 465773643 805822342 569680238 43356094 325734198 229072491 933495607 74823024 272695390 819533706 842186494 156965895 466805323 924083914 357900683 919353898 561614623 524203643 765265058 315851338 194917512 400566756 828363094 341525944 771940155 317148089 368681435 538427667 906235599 361844253 207253112 356342861 299486759 406109796 688581932 526918971 674841448 902208351 776621101 103183153 933707525 171934438 960285094 632432488 684354071 605955175 979069220 579077415 547208788 684415642 206409765 288828748 1003363 995727200 134776469 668455595 313194935 829872180 539386870 631092318 382531757 495279533 96437745 994351426 364772280 50879849 484834598 562153746 875860174 807592458 525882410 771553635 531479226 648463688 895860761 646769291 77420117 225603705 31474898 279508336 904697768 226860857 85191387 68004786 417883246 192013286 621787249 313656156 886040175 865600730 19205370 819068784 39661864 159048755 316599511 942300400 634387359 580147601 783106004 399164964 229094515 531310206 87133748 641696367 46576372 234495211 76026119 524880781 833502978 761767406 229824190 589877243 27786380 400845402 235579266 754235376 561309875 657575221 919739729 84515942 300287714 426421486 42300741 127750861 852713139 14405188 721775125 896408746 938332493 799009524 346092366 315801589 424151254 128515668 941136557 12494931 95204399 300673593 89196140 681762600 303734022 819627357 702317672 631678915 444398609 667122475 720251755 148537189 385221038 445233286 491365562 979338095 772795912 306053842 614069314 65955828 720106688 146547865 917048207 51469387 704776925 388143943 159042468 130619867 879720327 849068742 539796948 377615488 884287448 54008886 572022574 600922275 504728293 66223591 88454 168311754 734091061 38036650 478879200 115533609 926242990 829025109 60362065 146984624 22345082 487346689 957256764 558381822 649783706 974495061 485915886 788331772 110162590 26761544 520110304 236598809 470613045 950527602 357230880 288305332 487078471 375294447 459364508 908067106 208742618 532658040 900821833 101217834 823244199 658919007 857135366 923655378 308607391 243465022 70156122 164953701 915878504 393863163 229829306 564115274 554391603 969260935 811805882 518023388 388623026 560939157 66241818 401628233 876654207 86337437 714820541 387989061 655240755 27129065 886662336 694075771 836396561 278551244 692530143 229101123 557354480 124332248 22203303 457293152 816682249 633718411 892886043 402113844 407729453 580383202 513466954 537176074 293909638 248473163 63548417 304252241 524423503 217162324 260238136 836186706 634945983 330074435 170893210 532726398 19522312 342184674 173705090 939791342 815776587 347739031 459521778 549530639 605759190 555317718 578192833 115989614 332356619 386473700 717015854 810291532 614654129 118514964 21778500 964202386 139540665 117585079 640265894 527430044 681383052 180343954 926866217 812512877 467372638 531489009 817087886 915632576 548661385 449459926 362780935 780044796 182427465 619871794 37126438 903487136 351289564 875436847 302333796 126302755 18253244 402485618 984400160 182325045 54831702 476948201 981615292 20211098 713203661 219867288 576605371 559405190 569453958 460939924 325446700 123515466 224208885 756150733 415957266 55609343 164881531 375689001 304149934 71487604 691277711 839406442 950053129 922140465 423003166 577971660 749363367 913337396 61604511 567169758 928625482 89330222 678131922 126961341 619774472 924409642 149017504 765008388 610052337 144938870 816355632 358262206 635036577 453428667 252104280 144413261 640868848 156452471 600399743 656845995 695332600 724847242 350107205 518454798 323117925 842289337 121142144 884423191 703729706 613943212 757044122 571666066 71597226 613244117 865295817 142887739 53491955 102589369 936000594 204400482 254072508 976689560 469907552 193561720 569004927 481407579 726287299 725500027 970353683 199349634 146854606 593525262 484490825 408828104 273646724 131664153 445776556 38910587 949471013 57515021 440327688 164924254 758828464 8305025 184967034 169747950 313832523 225792072 586628376 967657235 358853378 877429579 916612883 663876777 580485792 725714 260606607 637721811 236024391 156395857 661262839 517331675 975062969 325312088 441014294 2855798 344944115 954503189 531216770 534694921 960422819 211357728 608942698 258921154 894751083 962471743 342772079 334665024 887904966 42257528 661096675 783495165 448003289 728061284 373034407 14463278 372361246 655676614 452115243 799058848 923786181 576996332 548449599 930083287 714686406 62006594 548999615 720516635 587832418 690468642 718617570 55864111 273811758 565175463 83219689 685082775 528275480 880752883 199607062 832146034 513181142 957210307 367687012 648075010 694207693 260222382 28872609 549440752 97257292 300847916 6335198 697674849 53806673 845641969 941364014 631907323 63683809 929804266 310844281 82274660 600458909 240746617 220499393 24362806 620412086 275145013 234077732 104542652 589154308 767342252 354900760 816319998 197226021 865747086 926529092 485209660 844167905 322211848 45838082 223768706 233145288 493636609 907024289 300238948 16451055 306768373 805506798 577812715 87490778 6463817 597196116 568301203 231397008 883095599 638067629 821606227 289117878 160963771 208315364 322997443 110108151 595282095 750434936 94565143 347077284 253367364 602902496 824398385 473215753 50799308 437535665 906744990 342676984 412527853 774473690 201169876 540133734 304945553 173715638 598928239 236482004 166158005 230214745 883538842 295528604 665575600 921935067 728318273 327243231 614706236 944248542 48000132 853340309 737226411 357224108 741541403 757628086 761685609 541082446 580830068 104131751 973425106 868572724 631642194 584362719 914526638 189890867 490175352 615043778 710812391 169840878 456561690 947535387 470598150 366886935 219892734 485989472 426712527 898837002 148277556 157144127 721461336 279396473 389191033 119426764 692095507 325745851 870707094 157398221 756699094 492452838 430159940 331650673 332808554 329337715 921766963 200089320 322758661 490937793 814766782 762544091 965977195 82891800 622340012 868129840 699015401 370072480 747143658 62368754 722397020 220750726 1450854 424506520 599713845 122614851 844360940 950160862 776546243 264502161 346571013 606045336 848337031 940426851 361160200 851180536 640096499 807283352 594925275 124221137 204794603 143218108 547702597 633816678 825859988 489041045 994822229 293965076 985873205 873267438 101814847 827660653 742348291 474778527 568382698 754945380 869247439 768505459 658461008 337047515 860293788 256982131 619327549 991383904 135801414 144665392 930996047 77690358 373583580 66004985 242249568 578829606 756083336 219307003 184562760 630446613 226701444 591513828 152799241 117645300 979895221 673162863 100842162 327622805 831041734 222998719 882641008 980759461 446658367 147032272 27739641 534340011 271613508 415926527 456481044 81668279 433579694 934121434 911724144 483325321 544346537 127170224 620933587 260599052 985546897 666314244 902046096 758462591 506135787 242545740 139254754 625859045 872497963 933486651 110497094 52802455 406769634 249757469 10753158 813265282 614736914 577378236 696372240 339157967 223809977 591824767 23216234 770507428 165621100 280330360 120306430 163225489 612411787 962884145 906138931 718806772 280104919 605555205 83383462 92544448 649129734 234135885 396512537 873845828 820567016 325516935 23705554 523935316 69755343 783606918 323830564 402918601 779138850 314142081 810728786 326500553 333917670 858345087 561320704 322691115 545409665 394162135 161361111 387475293 319759820 507821498 706527374 676226587 724377119 723168164 281383021 773630528 790659027 868212578 512237743 891511193 756587871 721621490 962048077 9974127 461776361 591397122 925469756 834404822 756456187 581699412 31934304 827733881 347262551 939944727 144384729 160350606 913955496 273917776 604133769 452492704 389797404 181361947 186266971 739741858 116018667 196323197 724585877 399962252 166647600 549639962 349275237 6091989 963335260 572117366 809242249 434091609 943635980 970370557 356168703 356607924 496572279 27828045 335932513 794622229 703851978 649106189 652859149 416395702 840738735 32201021 475848587 184445262 934342310 961774066 187767568 362678986 677008212 815911997 412309922 479953947 950088266 556765445 822873488 587453779 206500378 142504316 376134123 626785158 788713088 332276099 921876738 935117526 239138173 142192160 15540999 813595202 114671292 27105565 944737828 16155852 640807354 761751905 217466563 825186417 531697262 897807230 503800665 428524445 815607715 778906885 729640994 980116605 218425236 849154379 976607285 150453800 730457282 556242982 339004288 261108732 750835137 842192143 702263488 608531866 502242837 207446507 871786521 562753225 696013819 149035561 767327751 426103626 744897398 676931129 735875289 24161419 746523096 252389595 176754868 357874514 71169696 366071578 644946551 993337072 731316965 247761442 594695450 817194271 739632068 635801890 690232826 40712359 506257182 881801734 260666937 155553194 422921035 934957635 235993309 291206458 969299113 826613382 852761845 527593305 236400919 100187118 81077290 900517514 813351219 2640120 406948399 639352625 371520917 927427057 24674028 623028956 691120098 253089889 478773637 878320025 943184113 299464674 976626461 978627760 541963364 406308860 104501889 228062184 288155804 961551255 652605329 222731147 281782825 899847866 766697666 541652435 17782022 569440886 568002178 609292767 810412704 389280754 862516073 642418485 506474885 225394626 743386568 266012593 893982372 855577673 415513183 289680241 443237582 219216829 362288956 180837772 582871727 104679194 637096824 87631827 420666828 495771680 395446945 771791925 569706019 426294812 188989810 567012723 429008375 492883098 731194931 986724915 930579081 882426097 112026220 455370500 564962640 748952096 33933652 828215926 756611887 102712004 161700979 388549755 241082889 102038365 587683257 290532434 609434856 806829930 450339233 166311281 377258884 678841885 618949360 402540794 374245734 952633621 933267868 836221521 790356686 114495862 192598683 722244713 993207797 325668833 431887033 520883110 663359382 450694928 551475031 762097062 339905212 877336403 964885328 652916383 456907717 478007175 107469320 692260701 471981156 398045030 217360855 393498129 618288194 578004039 965406443 794921357 66746832 166773686 5069790 22824802 616255900 147129934 477962246 738513128 947402274 785327551 75254907 558555898 931742799 115095129 914080510 808436157 986440403 244852281 672574632 613726783 379053906 749236879 187314388 490595182 711056722 886582478 750493232 348367632 973744274 25302191 496247323 645830431 273665249 327909614 173682594 761677973 516157211 262112036 738159999 669818487 822390943 120654284 376740251 240176659 644529307 594504 617137789 406184051 969331091 759996125 36651154 105665045 734007729 892172934 294694339 214821743 164079513 448695552 619885720 408144893 42501595 825707276 952758009 171686139 812485428 878209999 334075020 682880546 328821878 289876119 966261585 708960545 577901415 246026368 272704304 712587330 504958861 98733398 47819868 650480325 58554975 383298038 59259165 711892799 483455353 389979310 497581510 61389769 63104741 175032809 547603519 492062468 105555040 222413621 575701781 809320815 802408859 97445740 497170643 64969146 331393336 537684604 397956552 869859176 368162517 223567389 747281771 174694758 412658606 448462438 34727074 636490254 869190037 592332566 802645820 319477605 2473702 832680632 751019476 953331805 66059378 293931552 648167598 963069493 806575288 934336387 305642813 333025188 495573938 374639465 717588836 543599210 885909365 657031028 761323296 145091384 911606117 403775782 524159816 507272728 986763533 467459659 424747009 561136010 846265091 580340470 568730737 343938680 523295180 684549042 313177041 273158271 159800185 833385816 867369009 744753721 438413419 107619171 612997738 810207575 45378981 891065230 593531070 647719951 7043245 124305936 476393326 48939187 90563952 525726740 192556847 374852719 889658197 292985380 940076062 271749913 832769448 890505868 345211093 651274035 763825226 459673901 654999957 505821203 117377553 669031077 262687565 468131498 964163129 898298011 993388827 821588461 133508601 390591262 118745335 947879293 76300037 425330459 604533544 661250275 672436090 546706495 231747193 534202574 728562572 194265078 344734794 658132603 574007218 818892127 20256543 208172492 39762682 108906725 303960406 421750955 219581503 40451700 585707108 98246297 328528367 940464838 234835556 648274059 450513633 832926888 256914691 812892324 614396533 181616123 94168733 810099659 432933372 351488721 270518626 354217144 74725652 482517645 316219262 714796555 786207926 967676541 412814430 721161765 222601363 897443274 134044340 207554189 342337193 821413338 727030091 787904119 115076135 999562098 403320373 86528470 630606164 251816205 556997798 592400547 771045771 221878346 293963986 145812323 227426500 187006588 676160928 612952165 774479924 258804382 879941572 246697313 101188970 92415839 629272986 567264159 643636962 612462531 121629782 3749455 560205010 197260842 836362701 93921942 513231408 145161404 223903067 627734617 670341034 585121759 579001315 356648587 739837199 865891803 602693821 598440641 376825014 527180832 202866090 965717149 620107712 146837107 713497287 968246106 704066684 680626104 792254336 698282318 30558172 100741125 866536819 425287448 404840031 543509579 900835341 493277127 957446013 798573948 86438914 884838520 697236681 822594043 238726614 534044446 254956099 429738196 433614373 318978179 660531045 623392412 568200509 966775359 705079420 793671549 813981224 682670122 836808925 844116272 829191763 336704778 185514640 647121118 585639162 671895236 923831197 189527584 278896804 641209625 630066579 271127551 158334367 494588051 851000990 533203981 52457874 164840060 956347998 736631563 933567314 250574285 221191128 537585537 576101581 64384531 418983029 262545074 745445397 174200241 777387129 915896582 460480761 747398592 80375208 430416705 562962522 797866944 278276438 312713100 770900829 931206449 842497928 691460996 587173459 455054565 547194051 182911924 127436576 952215236 398404072 655817132 792865201 364018163 760366047 715337651 143265694 713181143 837996989 392088391 949695629 967941248 381630687 622410983 913714944 173463001 618077935 132222640 392917319 409440349 508672174 604730599 671952755 510273445 893127838 859391107 17608433 520966103 434683452 362310812 976325053 88133523 747989808 492470505 354889857 396733444 75581389 884944042 738635886 965201722 283236453 494109592 111334510 333607136 805810316 558004737 125164009 381152999 667431308 205440460 301122310 77374820 185685139 970126323 718929368 97132044 210999555 469449270 213810853 244687344 692301295 571362282 281915901 883620087 457704519 407972703 778897351 65063553 511453764 234122261 375583594 181029217 762786942 141627351 411505134 547696766 564455336 858391226 556869227 769325750 749895666 463496539 781056036 26407652 415548330 110763787 41971945 420044417 234639774 699785112 344768819 729791268 220655898 981198289 824122872 157328368 786092121 256918911 645176116 20179050 861098357 811978428 989821457 463883787 136846538 589302441 882866737 490380975 699398788 467817780 772001829 136858163 364018388 141274810 583792790 545745958 115208772 655662327 896217775 63586372 104993253 881328192 806582208 338959636 520414725 902008740 926240677 792550697 667470831 606644554 18549870 923977041 432868073 224999901 488413672 880481303 927815377 560437499 937169649 289068030 105890855 949565758 376809570 892982814 477903684 458437029 790941176 927605419 227848121 68509037 202045940 895623873 552702029 38020305 561299775 433501920 686576421 425435684 556051299 511413962 467545906 336469319 661633452 785122359 901410480 886726862 30192064 826414066 968070665 843046830 761010943 858519386 612771643 786542096 197307280 277679397 917347961 45037744 614909666 972117447 328693975 324342287 123136576 532264396 687488829 895644122 658666329 716993694 467487380 826857593 244686871 645660813 434948859 935709213 299320645 460851995 475579667 412415999 907378228 559485645 708803244 308164272 221694353 872454300 584383202 767783069 135893123 849844221 137951524 37815277 943599507 604949443 737007419 882367221 808622526 74698121 409798980 796668359 416712279 140744950 261888818 876841627 798664380 959291101 834039823 787116944 861919609 653370722 572426079 808330999 497839382 749315529 425007511 231400388 610099047 246369137 589004321 650777669 788059791 796671225 851406396 634606004 909946015 687882979 964394323 747320653 891058265 765219112 30865949 718435817 485749179 332315282 287602517 81285111 770372854 517229221 96817705 659950885 151292322 438462678 802436911 485664599 651326568 931503201 245240698 341896327 465293614 628629881 560670223 842450046 817652615 100109148 898583147 438577343 433047158 376740708 551612556 994603973 952409460 257266007 132636711 548728309 20808331 605586983 654679322 776145627 325786791 687522468 225340997 956088970 26350518 348705753 593994811 533294827 619298700 168777010 10162885 856993842 606360307 958977489 969962679 909347354 926424241 868212968 713198458 855076886 559953217 996392230 31045722 607754592 761240639 347126790 984924766 947479827 507456399 583985248 7985846 617738289 776598256 381453668 63883052 701261293 442108399 547427575 892926296 156741829 385530290 40416485 817173971 354204353 183038703 430516784 480277097 107161596 453717635 673187555 181093999 800217769 100443180 150224316 302955697 954946253 380823998 407159872 391892483 664242175 5213838 382595889 955993831 150688265 185023486 982887979 197891663 523984109 328759435 929258311 509475296 38645932 265297834 70749161 881089566 502089244 588357339 441914142 249859601 227876456 607153036 396633962 792166567 152296863 220562008 202583554 957399486 413464644 60275615 292322349 516658289 143173496 923847893 267888258 299716486 353215873 877389703 383082631 663927685 815179043 507325139 528239209 602558419 720700861 863502474 643628587 571398331 470000630 815383606 910667543 128092896 219131680 162787484 729546623 605571348 969612307 395640947 283274617 921482384 974492181 954444754 380381358 291516085 388612576 239995774 869397154 35589778 129286999 613721758 883737983 23990591 333557839 382816082 110590620 374443790 562790117 358944615 412639756 264317399 178024266 707383901 648603817 381754672 563806516 729868120 110872532 240261200 429171740 470282124 968760227 40955112 594872011 601699643 691292552 747707962 207207815 137072008 274916890 474793181 288101340 968461923 933620143 779774251 163244079 723758128 893668397 162661300 423278549 16225230 430690120 214497896 84353999 461006360 372101979 802852955 235420166 837828808 250815439 574969908 502523217 858208207 160663425 847871605 913722264 126535631 616437154 356754835 708622492 812829279 334858090 235014666 321216473 66171241 774657724 147862583 737924895 206923614 203056735 619258337 212072501 628073487 172434032 432799975 95510580 992494828 652376911 484576524 653310959 389727072 906198184 735056946 857764975 455496135 394338085 6157398 730946547 343694980 281677441 504110070 498789334 872137627 84820228 959616043 291987577 293015799 396227502 148486672 39342146 17041941 813741565 416173273 192767708 342718637 333320892 123171630 63624508 119920641 331783080 858063296 874668464 561479337 14126121 605323370 920701937 45594997 9703425 440683743 400640730 395229407 798294408 859166628 561322636 866065236 405814000 28507001 353239829 359036657 770220054 533899734 404292246 767259588 205777060 203368511 675192131 831221040 353421677 169820644 272171787 565355586 711892815 834099360 434464647 462438738 365245249 899948102 88674693 802105732 754479295 619512076 821677382 650566895 296763955 406016901 43702248 561330360 466566433 581060874 399541096 796452386 795334818 225737802 350631072 651184135 907545614 619143723 789802663 445194514 122395200 2762492 683160808 360721631 488156641 253279797 424920817 30080454 180347376 38475639 847200356 585360587 388578463 744542206 980566817 35600953 705868770 459633152 450357685 224019237 7752529 787554729 949961360 190833842 247039710 466385674 448044652 280818295 39835694 526691102 60716215 321115455 179361282 580319757 397747997 95938734 259902801 489943885 937405001 365670477 889139748 556778642 141817448 755195911 645409028 784453817 768874309 434089221 185232621 406288095 848983166 54839292 520908634 427155614 296705280 4414180 954677400 997266048 569130502 890920908 671627200 814000579 695024783 684790389 324141583 579192285 325236685 981098561 515208927 210429990 34928852 155381287 101849606 97010916 570267553 485452474 498363916 365409024 688595999 325317652 756565424 958686255 447390085 171438896 730282294 750158331 212292253 953679961 907225409 883890491 337441821 753602045 121382508 647622885 843378671 104932801 404664160 252938475 605041039 875457665 78597052 554389470 405700806 952391143 668911572 991405996 880985199 891128778 399865120 251424394 4606745 464986360 686882556 81147974 31120380 524728856 700580595 824639144 633272655 483913221 490253709 154584862 509047988 32594387 41288684 246890924 612232885 115769859 44334742 226978310 824907574 41810102 38633108 821563646 497996430 925129499 363467919 723130968 859817110 883653036 840605125 388557629 918325989 953028195 366348741 687111490 12038404 813812936 560435813 799545060 340781570 944865439 221568795 761097607 598933354 960748814 455850275 321540562 873143675 34908638 13639687 126758112 424888134 9268092 350333584 635829352 694765879 240706637 117702417 236450546 726044823 269338236 197881935 241736598 133305925 214292570 331568022 544148276 324535936 437961357 804779239 918384475 710046685 945248322 300621231 217849531 164539353 940070066 872912276 163839591 873225642 323047390 956421234 789296900 224815996 25558326 890065667 374417467 797120047 542820207 273641145 832715409 958933149 874421602 400664344 465793086 363130639 234128504 942175770 370223274 422951507 623233157 686315576 222905398 416272303 680479851 866991052 274030020 552637314 183097267 351447387 485730064 919926920 523439572 924388962 800072089 175426900 682090713 498584468 729052750 413543284 18380190 670245905 89675078 51644055 384947078 106866323 830793460 789645403 989105164 761317124 762927997 632027373 457950057 51475117 92919793 272175912 451824037 159663587 540875259 930166901 955408102 913679770 932374888 337312273 332980971 865878709 919319384 278689678 27605442 288730186 813646124 442845393 106500726 788126786 951419261 101518612 453110186 350201454 472938648 167727921 643382537 984708483 555227363 972334554 31466682 23884393 931835063 178090934 960763391 639734635 91700214 745611141 806220880 414236177 792850311 23406658 128823669 994083607 941696591 777724691 225594452 142247328 573456872 209305516 733402527 379327283 682902917 743355567 493543241 116534777 356927482 313755114 688048013 605786919 946973053 349552936 270037211 186666158 558853104 290247568 188286687 753559883 768287818 878365801 310635230 274227913 202968520 344693458 228413063 649789096 887035964 910702732 530831543 915867181 981365960 228252622 472255184 665821609 205669796 413470990 498396707 350869856 349638007 5972789 19960354 207100176 580917329 55084653 582393830 775039397 926207158 184565778 201323016 660596763 628485826 904932178 736072637 92846875 441817801 219777322 477293254 647885392 191265749 542402002 790712695 714675783 465461692 880999660 721538475 302415353 853035227 370427938 81811827 359167856 950754793 149120717 643819022 644323920 228670522 492865972 923569654 885785106 515215257 264758731 473913386 931430775 17723775 894300836 548108958 587889878 258970662 881754016 84332350 199527863 35242550 165304776 739436754 72703027 252752346 829547039 34202215 712473110 794701462 559168465 637653729 284747468 951520487 192560588 661476223 710367344 725303944 520962976 591330414 146353179 858929130 86554955 440839204 159865014 786090843 645487178 643967983 114133224 613932233 55643860 321314979 834217904 739903051 329184913 10911502 755938425 150135503 78298014 687610733 82023000 46875573 311749792 159268492 589925682 139378484 499864847 353125407 899309750 340364655 616083777 497365006 78319158 726420130 1846724 583449164 762836586 29251482 357524007 126064608 779437972 284116860 305930804 736086824 912251306 692599323 428121147 914145775 204420376 663589919 390543533 498765263 320325329 499115671 670191567 967746840 104789034 885566129 504494590 723342874 486661473 614246611 562975650 735101703 96095684 273149870 286532793 463883142 304274237 633404493 624825094 892998420 356612464 980845471 595521679 95417222 29831588 827795236 490851280 768892887 394392142 52406230 996964761 131062964 542609846 940320630 177358162 431078029 140223500 810943777 751797261 860592038 637574659 585584317 22062414 686632027 445703800 660862617 945577987 637554285 804396213 872695980 769445442 93748584 401903556 422178389 49128379 156252359 641784927 160777262 561911850 999415471 326556777 282968292 739690185 41694843 378681199 448414281 542044808 345866683 539812573 140886631 474019502 998415528 747463299 127129445 992653929 994026642 471552911 16751242 642245672 591883035 571252712 157846646 835756497 802797124 718309043 250911898 309426740 810374713 908549310 847243199 720439778 996992725 584629580 760193473 684672110 142051925 954986531 704840993 585780551 41602729 394137438 955613917 640862982 359872953 525268247 814874754 551577584 933062686 973120111 645235372 360243271 76586316 321167583 623057477 306175900 488205276 49424967 24600580 680929747 251304846 555937308 223742746 367383464 469918294 571223100 901781125 200003627 26869970 432022941 726512108 635372847 891794080 841983963 920571766 232780312 869794462 807990911 290096924 458572273 950380712 176654198 826399196 487370743 609072347 803642804 566102833 634839022 545285038 625297431 985817617 700544964 87638079 695003194 242226504 130936528 275865700 118190732 994226068 232955292 599471368 898483220 640073320 500240994 117246019 551597696 305078029 974389371 676100943 421864198 553666653 441817536 358463 83989359 784278649 704385970 834634358 28887577 303011714 361040076 174467403 676114813 992276820 989205899 122659900 878578139 711376324 886587160 965959881 666498864 913026545 500093967 923439528 585538587 720051768 659688033 283158599 136808064 423700126 978665597 895147823 926659937 647951769 907502354 146333627 969448389 597976780 682014039 201802296 967300753 823200100 254461017 893781975 4646315 410313645 606681482 331645331 491827890 317191401 983573666 95722113 975812573 48004207 244024843 619896116 110112282 510080976 315462417 991377231 911430063 212036778 169735295 262442214 61504766 911620456 38425641 618742801 344299883 344856630 834545548 551343937 207024295 663267114 856785149 23000324 757595643 548947481 912784654 886265577 156095709 779585734 212655820 752493265 823069248 193032310 408074004 86808980 941920737 277709948 411645765 309642498 198860988 918379904 688237716 160443410 929699654 597094873 545697563 389427111 999957790 606164426 944803438 870959686 635823183 342670964 8076296 689728121 79418637 385824960 183134370 716664726 782169079 304448449 403126075 295667587 954927976 206019112 921304993 872419028 751064873 906908583 757828523 533825447 63293609 836317992 743987903 532950153 488277288 387698904 54295656 449045798 795308708 92039168 698500477 217840261 66457687 927818464 749263344 848976928 4353828 26534265 13102210 640522017 463718616 591992379 681016470 817530291 214327329 709981803 564500724 448095526 145090064 726918966 568509831 262438538 830642141 596038549 724011885 552621089 968806230 475982545 382886807 502741471 711755504 312706137 115168644 413911704 858809947 718600918 827428165 746756602 477239313 829386941 36707833 927374891 805100747 352823476 732707858 445309321 9027815 603419444 161454420 172736356 651775947 337158724 258944987 684131764 661484719 685194503 590036378 364463889 320971159 18895953 240284181 414693162 60780119 635559870 335789124 747952550 487900384 684471004 335500181 65264696 471741674 67060308 14284437 468088061 565870034 324800035 544942176 855361287 493700568 137766103 900817952 968438119 637385950 549833122 258329203 388079298 754290864 101594886 942562058 164137637 839859724 182028034 776011700 688599748 906676949 895324111 93438586 590575556 734138476 40024863 887272997 664392657 523294322 243479694 303369856 60586432 165713106 509868366 385415626 704085347 267134184 269443628 788433683 184009888 424194174 464732901 807095946 189921520 414247944 763701047 211321272 899651578 882593357 113134792 370202586 693991804 47538765 482496289 654867478 327653731 701815364 213004347 582813330 912369633 859040559 183991610 421000543 151944577 647016271 472580992 303375850 583711675 814214434 922157084 949140583 384447936 329932302 776897408 308936435 850565676 766118809 398964471 160897423 512012671 315796827 752540944 850069452 279697428 815149116 13455358 996340632 857338851 597059178 488262281 287649344 684069307 368661513 888456666 209110677 700527597 253582916 343016088 691599941 244977531 805126079 146846650 663533266 881821507 916835772 618530186 423621552 333328054 712339341 983103387 169179185 454291498 606127717 635748907 118153616 282889216 702123571 197202304 405913065 426965180 893455552 167553569 617778768 720920971 854544196 698227835 280288429 408767041 689331169 969861476 164208836 437902495 281774088 977044531 866646681 905964085 421226612 795897020 124303601 713497572 920787333 87358644 511533949 729144367 588617342 926394343 650572969 159865462 334488216 472080279 58289820 863740334 733942507 601284934 363204173 742696381 297894737 15114609 238301568 992349031 324490916 214066632 156145958 880964949 88469696 500282466 701967286 809985156 882135561 465879491 406795406 706350855 680992109 153506607 946504454 16812579 346155763 952941752 934223038 388045301 835798946 737742421 205756153 585009140 52515959 102309557 546039633 108706029 383905233 962805528 432200265 64137343 88248680 640184365 126651896 894880549 670905036 500876848 121181073 387477173 56907008 410528511 238220050 667238404 482689393 394542509 686299391 537101851 530624465 610997223 439040823 4645368 852536764 429523920 676869753 621353022 698397213 233276801 825400552 13227290 427710441 269448265 5803974 996433898 402814791 440025548 689687285 116708696 526962215 477770035 665173621 57170026 973778724 808912829 781099850 365481674 963922479 31013502 261169078 972749746 933240055 614222863 11334534 992998190 745626523 838098499 116366487 376097920 117872594 194545356 38882272 93722822 973666152 695818755 399724318 641292760 226024278 749981750 553236360 407650697 648066801 990057776 643626245 88056083 354913699 159382629 887577713 623833764 144107791 605506527 922464585 555709773 119576778 14420896 951718643 518363399 814373151 812223765 550852011 944510429 680333060 100076401 335456726 867805710 475619831 594726254 277180612 633490908 177547507 607475763 87182764 891904487 872542901 193383303 779752267 5858160 509649297 731486296 630863927 418064600 309707715 54405366 197401288 624084082 163709768 379802681 783133678 352583367 540880790 400600975 257868077 667163040 558334355 297827054 254060974 207834985 675359470 806590557 47130124 681056970 808881369 381206848 316523479 836949625 430159692 376772874 726869668 860615635 481496716 333790309 688636509 682938909 462655846 158856199 936883987 727131233 73760660 601139248 818596240 188740174 392555521 140179337 62617228 231099876 993053866 550940590 111705934 953701364 844504045 714357673 793726302 300003388 391413310 887139958 221208928 848573119 123140425 853223478 693897411 694029162 32044962 17098010 8223499 97150501 764572092 72567462 55156240 922026798 433583792 232446749 509955679 600141968 332156837 275248643 724984186 830092090 89446839 969399333 673544259 815356896 577758249 698794209 783555682 864648522 96734753 613594534 267680984 662013727 663010856 757912131 831300288 53394895 628949800 779878550 591795161 145618318 914478796 76340377 636281709 257679625 780274925 150461889 910855514 172615405 126876585 913951988 546500478 850105222 286967711 205108863 234330122 899119019 534545573 780234954 737604628 575151683 287003723 726702001 439029531 428293903 555148071 471726839 192640698 423123864 131009170 316403053 370246958 931273113 669615202 750206091 543223461 88411582 685659444 234179570 170306555 343251254 152645292 475475386 268406261 600559182 508044477 604661610 465308945 376296601 819586730 891825097 530938253 720677401 716672840 953457348 439864610 611900860 794119506 895764190 853442488 753596697 525468636 486719632 990095269 289826070 696211459 612038955 625417913 234724341 925187277 645400831 577918678 634359841 218397521 950150692 435132882 31365576 669770522 448191624 460928556 245220940 81814043 198219338 15258669 527954543 866064186 779223511 918612773 636550139 235862523 463456582 395372249 891179784 871428212 821976945 931208958 952986519 897402240 590377293 583614627 842987467 931801487 270242757 15694286 286042415 830191882 615472461 607740178 73017986 555722694 653075424 909741885 771231994 113757741 695352476 619758070 119922686 531767285 13055654 231063912 484673193 918335060 389929917 968691032 699136504 423328449 254178613 147546289 845004535 972211227 668031083 143270399 627665493 406503537 42945500 324012632 11252050 44975504 418763942 290815166 666037196 542461819 880251132 409428244 177183149 561934111 856701170 541770409 110466616 237024352 384954403 826107225 343142423 669938903 212442575 870399010 891377555 329748317 166097285 801228656 230808577 195571222 403381979 923135792 735462453 745044619 621099014 232076313 847683449 854711728 775164622 67137964 448269808 234823779 688029956 943515081 458859055 275881636 497602606 917506857 50183285 687571798 671933607 736819313 505900080 767521016 148143847 466278468 834992538 461968826 663788338 609209177 87196151 654675657 540233092 363657869 472950371 520734092 462824565 43870306 817028366 17145179 263906563 435352029 259971138 139924652 593414644 175628967 907451539 819757222 170306787 584689717 664144184 772887827 376943568 507048814 414564491 33768558 588284752 324470955 597016265 260910341 187608034 804754803 800267056 770002813 872090043 746051451 337574299 824721133 192365253 100743588 553928628 220814745 193774309 872501461 848668108 621610300 789539462 316193180 698579287 254721058 251699271 822695246 591914805 812300506 431293080 767366843 708167610 801131484 276598287 511910782 694998101 186800926 84196531 54754358 82862770 311533029 923102033 637811825 890713155 631724389 310676902 9405002 118942862 266223411 53853121 100980616 969359067 147857419 64062052 728662499 190316712 364283076 751047146 851908142 686646289 112759596 904021893 205581433 183601863 246556990 318978380 337699585 449615710 166343083 221456522 768140351 444962581 442447619 676208469 538046859 869879337 849019734 418276656 936985451 371973098 460154479 657044627 388215247 118467718 489754433 745379283 331741589 125006449 936251754 708865196 846528830 395407570 650034562 28549749 782675511 372029824 806021270 660794524 935606738 876375843 816487103 950177206 651083929 338873599 318520973 680893935 879441772 680465872 682183531 36883191 308226326 778691941 40549085 546219920 755079912 689377011 695590557 194158619 220878633 463125821 520798236 588275177 498990537 13949957 379646713 369832311 347972309 789776297 4057782 125247897 843192252 684062294 74765157 61989889 161433352 15166857 118727632 777645497 584008368 514549274 288420934 531110642 432655083 449835256 794600747 347938516 399915434 943447836 999543446 708504142 748810880 147388162 598371394 951325660 53993646 223836804 263398264 147298824 818365430 878707086 259145983 565908005 846058215 25691266 388197399 751700755 597458210 646190171 478204820 698112966 4143424 580202345 855497544 831395980 558586175 516590079 188656460 146994802 680226716 437096334 174381314 900863813 662351030 681500318 408807403 961689561 401285584 138662956 324058860 836809767 423160145 654467278 489083465 309110198 650534930 985496342 410203839 20469090 797456706 869063261 74105231 305248172 895493865 597374929 553874076 547694610 973562796 597393148 488170123 92346064 56181758 198698193 558670139 778812218 712427314 774902214 881560754 275625942 516297411 894575037 745722687 968223326 717916583 281346681 545773708 964599853 58613006 285479183 497917352 696678718 348571092 391520188 177713922 934626572 230711162 771007873 920991685 407283570 982793932 976148399 103347346 139059213 298617418 168882643 155526164 36746858 284898776 730287938 393544785 564547854 177444346 958910823 65209898 992236174 722337402 247917392 214144222 952727394 807976969 166905593 652613135 887272604 358186548 131382325 71698406 835381315 374033987 16050187 984423840 643657783 686115860 382918077 482400760 537285496 799915679 160800986 25555478 301584275 757228976 513077837 685138637 884936058 401981961 805783910 669780821 979612005 464510044 715052847 450088380 235392009 50456774 664397242 225061738 618996223 397166993 930779846 273047348 450378405 634560487 820918239 958084340 401790832 242053750 877130464 573772043 322633565 677188440 83485744 802325884 183582304 97323356 915816030 828972785 756400902 506612530 7501564 45637911 399103329 262124977 141947396 442824444 722132865 768431187 356922265 681865587 44624116 185179985 389046495 535899448 279639907 887195888 998121560 958161600 413882461 928074769 192926573 882591522 908550042 790629929 115754240 808456330 717432264 272893724 695093646 157975931 246591856 911459165 237703356 527498489 568184808 442542572 257925067 531609136 246257751 693078399 533529787 799008916 770701242 162134890 45389321 821930320 117703724 361277850 459902064 542921823 498631027 891167026 363218757 872990242 293869367 921159859 343281249 292580807 988785160 650339362 290952341 13978845 472181340 59437600 472942729 667454338 115366281 254476666 327597588 324982760 9615317 798326240 314700678 135872238 107907692 773312893 334744658 537702947 660334373 141245776 624039640 847880605 763141442 212061046 527500618 393365794 64787021 467992948 875406239 318114070 511038975 560454660 594982472 420967273 183439215 333973732 48982746 93167786 296460258 681598092 711070367 862595619 384440203 456038469 101521111 10237227 824441023 9690721 494994765 267771625 382729699 302800794 513019729 710400195 584466529 875302916 147297630 15111546 940567886 753514182 82491935 942126441 145958690 799525064 94952515 594463053 30845823 713420235 307144439 759070482 225460774 253170321 102228601 438099025 385461090 172946866 621077720 519415095 750352472 598970209 316940837 229884260 441297687 273764937 611430902 829214599 424040752 519279931 133277865 660295904 195222644 105652476 735064917 763597840 111314197 204013770 723965924 346595141 869845190 729474671 305472333 655849408 804338319 965525351 37419962 267091058 727799950 616640304 281811408 405697661 935608031 841742073 788674490 491227025 540853735 746573932 272447188 12175591 417214627 880856374 987137241 442880930 985660533 640366774 930626344 206680381 866506605 598452640 242248121 758681256 4402779 328663867 504131423 973626416 691768152 940695083 93810155 387660475 477285984 589123020 748979124 830393342 452041308 686716053 929924219 307967033 90934146 374240985 260307792 206077667 20925068 934155911 359828521 806791163 776377494 800477766 595554797 488165569 278110097 883926113 548936744 437036781 536651953 561126334 425557993 95792243 555148609 392315783 896640999 70726183 329560766 202296008 961872001 969542396 305911072 122964067 578477925 377520471 796968923 841250601 684464396 81543701 34730002 892328426 223832670 745635813 288146274 261981648 561069033 9442504 891398115 844735435 45297142 730756745 433360023 456215190 52868458 126038091 143750636 552686195 92915945 860128941 565175568 512265068 755008325 223469343 452094859 468011168 916045568 266170470 196392040 427295023 655220224 374054571 242673571 631461413 226254052 572966259 137815972 271583929 124922355 763002312 72067128 803983969 625010736 912563920 745705440 14032473 924106484 109925015 392204854 333923658 594099300 570289589 192029570 242269733 543488922 594210017 195829288 526375016 878633704 911486133 592086765 752980621 227470856 82515343 482067405 893849333 63570991 76344985 423839526 715892011 653842978 144099537 169578893 796503691 728297030 219802308 477512019 123538131 893372411 267866604 290028033 320976429 32109301 483202166 870044323 147131667 223765829 34439741 862402100 485779159 188739905 427378269 472513787 612525314 759354170 133755383 549417526 418353769 587931443 496095260 211822515 673285423 637843565 375897807 850546892 269113130 833937831 188381997 811163753 966987748 588391088 288744629 315520044 108232640 270114790 720190057 697026115 508842640 27549380 958626254 597152771 661763042 603735472 707113530 12491208 280138407 592271410 342431017 613258501 187538311 349066093 431533596 705133059 526607866 689500328 970049095 183089006 39384920 517780384 226258344 648220032 773556482 904454283 733926475 315182806 39692009 455995531 897543875 160931376 443203720 971868347 370230921 807476263 501720807 323713648 147714537 915938351 305272375 953673527 533033573 377641022 420429059 799518100 97590041 307322846 741758229 720397119 474786767 102087966 943561992 213090025 787846350 752049833 188581640 856212105 498402089 766257833 451087016 252302938 232109120 24050810 9747543 445725218 827927262 377943248 578670132 424794848 730244097 484421838 170825682 81472975 190466179 603633950 122278480 169529926 731737875 415239923 673533417 174125310 930987780 38694923 241955174 932925681 959493047 886834011 174089358 490852997 254444700 469753814 541104478 82998396 505683346 76043317 540904071 266789460 862327229 638896740 138313902 403420276 869824011 744753940 716725893 273447467 917463934 819950498 537405625 566060012 86695744 16518057 740813260 322938692 409528193 767548473 124692032 244120802 904914008 812360158 351963018 979712583 78622171 277361742 266622549 483609317 200047969 643280184 988458402 379945202 771402840 296984297 326080319 445516718 937973906 380397781 378284696 221907476 343302792 259231714 408180491 590974250 852104310 39156778 501476976 853065855 129072354 129023637 527723693 869842128 650712235 371941559 41146365 204683501 485272624 941856622 67932821 334422187 558099208 254378319 821808931 667831509 132303217 845012668 110247667 839410818 989983675 692633312 544890057 726965887 410908158 322216845 562157235 993488010 323203032 915572992 34038742 599899076 677670976 135002269 102318922 846751914 60446260 199229873 556654591 725053191 358945716 69531680 551915818 22743233 656541570 664552998 951375554 9096913 938177391 62633644 822607844 561346240 234574008 294967858 561498924 189015931 358012635 789242901 767361779 332278164 978712314 635417146 650236857 622881152 511184844 14477371 356382294 950027563 125368750 424718187 187880379 272986351 527649813 507047639 995926582 37658833 192657374 816890934 312808703 652225046 345299459 102547652 967615199 314564324 187454277 185381279 575559024 853214421 889914858 752547620 958171639 170995306 69751833 538340941 189747304 861410388 728330417 897433921 280277982 465781599 20896966 374959400 431560301 717503852 424523905 934099324 503496797 848886338 294831370 297635384 603926588 934840525 328530123 982954628 299722515 699747957 116885702 185657349 897587665 264656860 262124880 897272687 626817918 119765332 199866715 714804 980484539 264637256 179358155 49352495 793534067 434859222 775522472 122776419 510372226 253221870 555451744 74209713 463023783 559291714 229661742 966954557 350339959 601629863 143181113 73786946 282654150 862712096 567976884 256323169 152143952 771866680 276780265 853806518 683624194 82806179 862404118 90694812 562089797 15454743 157449389 471806828 468204453 150204502 720939423 248458141 757304921 467347153 731169803 763119869 959343457 360496849 230729576 44482904 47913327 291419127 311300541 767181389 975197716 529134705 880054360 873348884 551360803 599814760 704169884 509206103 156550691 860540191 631539603 419354567 656994277 242975776 667154407 93613253 907300090 248804399 832454758 25148987 682923068 980481313 272727989 812955030 900791410 608156497 169290152 840579472 807847632 932455094 631548087 629241515 46997106 106387116 528271230 724005067 394589359 268075277 647453507 378927368 956432042 379379508 963749271 588650873 98636514 681156118 927915988 567974399 699872486 351457959 317167398 433889461 171106688 919774038 163094283 642415004 126634680 820472778 778339341 990235011 854775978 353484248 110590455 990925120 26560448 51692657 593584962 888634106 74193452 356156414 443354077 789038942 746232651 1014397 290488958 482419223 603173268 672952944 170885433 276227770 853449965 221596694 23086426 988373062 22267186 700306610 909921311 750717294 935753759 905634677 596219905 569190207 632618963 260684238 611554229 846980778 288587515 955079884 370326779 487606346 184810982 886272616 435005927 387284374 206106003 997071751 241160932 2500362 530330171 383361288 129195582 127207916 404211134 260962145 317473663 331296407 821130768 941146258 391407419 189017047 9865278 941603661 250430489 350676211 618761318 450721592 405179040 782298926 50401565 313409265 388307278 481772012 270012466 473618369 51294167 993368736 679106284 458938034 791240243 745625446 429054235 176277239 383635456 465838435 726877093 283425043 844106529 567894835 989155123 352514039 220820313 185180811 182416244 68593840 811184175 93220495 964521374 760877442 720028279 335797100 545964135 284669186 388249536 570532985 434848992 344001137 881615772 653127312 47552277 914595994 13995154 482122125 100023611 346779373 540871366 943417414 56531049 883577486 545144296 587796734 333505137 539796538 135293289 658534708 846298902 229554042 995049303 336290023 257035885 699514995 195669267 806035056 267206323 779777840 392293955 109222438 678009392 351835843 123093370 192530006 926586420 745264235 647039966 865042518 153113193 466007552 784509493 587900115 246002328 189079470 371450999 341020140 382732173 197450219 352239205 149916063 486320322 637164382 695295931 20498182 43578071 58488680 94404442 180349965 641278523 937073051 837990413 683837120 584840123 992768411 922686307 966976980 217664444 987532148 794258901 676056545 80868764 589886269 279752119 661158490 555849593 467929923 752401855 664301535 991482549 956251132 258570222 636650034 170697554 42832629 619911087 710337151 872523656 109492464 516239652 821047129 902168413 158575642 689041808 304077860 746186031 900905092 767987113 735303136 260814003 333353616 60666515 635628418 847475809 254837627 659431441 933610153 449686265 360025821 195468608 294113437 312535396 893886879 969400756 530391364 57682734 767176711 691800914 794513782 102169844 459279617 336525187 932660619 521078185 22001848 139900989 255196147 403025218 263776466 503154792 258924320 357124237 686763446 5018842 78417357 866437552 551467574 211102191 635074877 417534034 25388895 177993105 110965778 63671288 49346436 973752721 250612938 241823681 840002226 477188303 421972811 202796993 429928851 267517748 664404283 427373887 477336883 94167711 976311793 528529028 350674054 979430884 28964489 33537959 104356490 346779167 186331917 835643050 657200113 235361703 969057011 66987733 116756675 53806468 459717263 667269866 29739974 758448883 422893111 699517118 422396170 912397597 770962172 927902631 474301777 387003205 104230263 941832460 655960745 995415928 244576387 958576420 364343426 281431742 108815745 858389551 721565439 212300050 837955882 431146408 945071494 822228264 220177923 805812672 496433976 168890296 679255997 390011071 34856658 294876085 857650063 818272487 882251062 431152038 504309243 751812038 471198015 690868889 766249149 655834612 701249062 969109847 647057899 698101066 814718177 289287973 304371021 641092835 239924847 15942025 482482869 902353837 707719095 649646458 248788849 121858031 370743300 409313300 505454554 632699085 280366294 159743762 544665388 431150351 967643196 827729364 515083034 981184814 908386839 645653281 668854436 71975040 933833008 350797297 518522460 132509664 934875709 203623851 117996641 726600879 40294419 404041090 34477957 515635672 21326624 131941042 845613231 9350496 870939528 267089903 951300054 933629334 201158153 473917216 440019110 289022646 179513890 45724334 13081750 477349249 814427506 719829882 87726056 71948167 778174266 4006017 647174599 850097583 157485621 932957718 562129122 850605070 392156096 994184269 926170780 52094483 307257101 696680470 408417526 552893441 191041467 85989650 684252577 94165240 708724186 887734713 449816842 718539356 7940778 507531230 341140226 431148157 398191073 295143850 163616145 860894686 542309840 792425906 811395047 309212292 511418972 32627968 267048060 879752863 319241074 102898852 135570194 733175370 786011922 983489486 359624171 561935807 712789521 503573436 286573153 905674178 876222018 953062031 574522137 15142686 973735535 166550483 332887832 327181576 585519566 736577833 89277403 660439105 351785050 791923182 554499361 152899389 943531025 976136556 610888995 975875923 427884520 218041891 845522011 180863776 794682875 352101335 521679015 719844884 81955149 904004727 550834877 599642209 261244867 422387982 278150693 372563056 952346288 129756738 736407377 956519587 686308269 366009039 664945195 255629935 880944202 147957624 475590458 145685694 685188879 949225069 774676591 555891941 601812764 949324485 98551337 926039497 467197556 862155477 276490796 272657388 431137117 785102424 18728027 118373932 735284847 851104080 868208591 28257068 2338231 699094464 984832354 201331117 945379020 373107567 179327971 859538369 961296203 241661553 398857253 113549471 513815996 350933803 446906594 600224241 765432815 340678110 469102631 202540291 312452782 626112803 573352136 191140597 289502068 672910374 891618795 245265637 639354387 670925360 986949631 861667113 616759727 540156916 688479993 544147090 598789657 107073254 12422877 965112646 542183563 774516620 346201779 203618313 883452670 939127609 404730683 380928213 36556678 627771378 420778308 651243244 554643524 7356134 209368064 595265207 32037948 416475674 438662853 691754522 89532672 9839426 668691657 593251780 546056363 107843002 26405322 37787104 450686837 866713003 449706734 886839641 674598961 480471815 71775271 796477434 55991155 58804436 735524536 598692580 244467148 363386627 800807845 796879317 589908649 628032396 54308025 87680370 313293116 847877898 183526514 23098732 389862404 848677699 257701477 215941913 605537872 695411040 913340717 445140014 105455018 331203417 400610304 66729966 20700974 648736604 766119890 86015405 199662193 444634377 523129757 726040164 975009877 720703355 864797105 654235216 442216377 222357189 569165164 717344297 201310873 932571802 374861294 894957819 868512503 905254645 237119744 619112262 851463443 616703978 59831235 987858632 998618380 958606353 535133268 960815770 832654309 499005480 706893027 424121833 658632067 600156808 910366767 961792008 872767114 692734572 566332740 180182199 272108592 216784105 34080713 92281936 544533945 96358861 346844713 251428735 836303871 910506716 767068312 765724686 64503696 628607742 815333582 98020804 166142111 122715764 770672757 370032956 340144096 296368951 428765008 878049041 824228513 355188885 795154697 426151064 649139203 651837679 155688660 62963768 125215518 334941183 597951017 505529912 478162549 290271287 128798689 676910932 381989507 269086787 231193909 50914964 185394992 27853462 253504978 854132471 447732 894712766 693353082 180861158 646757095 778837678 428443455 297632701 688590345 289414061 973547013 939616667 555880004 12925221 382790577 479028560 362265330 563288169 508882841 538059842 220674761 426673724 404662365 545969562 480891489 53816468 775884992 96814114 252849835 880344760 981843970 691731107 286742786 624263305 690887851 608085575 733913815 243715902 778018912 955903017 77104377 678692205 334295971 79921827 772473077 860646493 533907074 418151984 717639975 597130375 676059296 979355139 49557907 846694996 22307676 662864961 655255419 227546633 299594895 250026576 168133411 365343233 965773495 200194365 87021426 112680401 48288974 43274997 642098407 319563143 851881908 600808193 217670117 781391427 502317907 98001354 149181446 661353110 710716071 40241720 528146237 127245363 754897540 515827406 667815626 935879640 343543690 783552255 410374076 369046586 332480701 543605164 499606983 939480486 720138352 57818087 625492102 436301609 528487491 381789078 352229111 255292368 131504109 227891548 531477919 804700012 638976163 271908477 353460738 117778931 132158629 210266525 653587591 324978897 393410890 383683543 224282420 827681270 985783476 496903091 717800344 774063530 798650858 292713266 924239598 148157621 845196686 461542919 583239983 59175685 667078916 733043790 954663094 621092587 906975443 720038977 631128495 857529641 86795481 967105384 424404242 643416463 245660164 161137607 639597609 743784805 578362801 705610702 236734954 215235134 87730943 804282429 962331408 57751788 169205647 302775907 883310848 250001010 330148016 46605793 499937077 357254414 861260238 385699271 41703342 778897010 867578608 178451399 209309267 797828656 738061217 532326358 168195434 279120522 738988222 413593983 517197239 759082157 494172465 650667780 132486291 903378612 439727666 889225601 217478845 68587313 318449485 382779938 312097967 826411718 587631860 643883924 277227909 486734015 842671715 793918950 895036856 79699270 132257048 814501754 821926630 265990592 169578853 468424147 256404850 432175190 616882778 515222842 810679679 628720016 903559016 297109142 975081655 157125543 570819551 643210406 80653662 633510846 563820388 931258551 421946943 888577792 819264147 366760955 236664592 595707497 490349483 583603548 417279988 40497413 224079278 93163991 943102656 277299861 581486919 531263640 123300534 755619048 244982732 542556255 222392085 607770506 729102109 210877532 230602284 282901804 314013847 685905313 915097373 639312907 902567821 205623990 614533064 565212938 937570677 277173623 450903318 369403363 198850386 951949697 900321671 26144659 996908785 541441058 663250783 177922828 876839225 902878859 204882418 845807667 416444023 728680163 68057459 893057692 869393776 734220320 751992248 962720349 593907967 568496989 25991299 632959441 412176987 409449635 981989009 872873708 748630418 444733188 901705806 779011768 782653804 98946254 588162216 37007751 973497995 804847388 319548922 913985488 587650504 300670091 693653639 810985985 878978875 496173637 433922015 296198100 452845669 518286760 318407025 509059962 156381853 251807526 773574185 201101925 246555764 714060245 208527417 849262320 268800254 95225194 975677836 328528472 345285193 813324048 336726592 762670954 703510329 450356397 326001172 268721539 533734263 495822591 504952597 878759220 830137441 937738051 613180477 461288150 636943182 314449108 954175885 788107822 589711028 188653964 392975634 376277550 581301066 786897126 275876720 289764957 907054419 715434147 942156191 463888661 140529367 267388475 843004316 707848597 816221846 627033193 256581744 563892120 67560960 570441552 196273405 971253038 897436941 817213290 71914757 512736660 35283588 123357809 176161048 622822659 748099642 960805103 118393280 999747996 751994906 653112816 751192574 14412397 167638960 584850280 828726465 840146886 746929186 600853865 541674818 190194044 755233710 14527256 851994934 176106511 623219172 10293189 226233322 309753377 851872375 926078909 980340425 740800008 110658200 411305289 949473525 195484541 295038365 76676803 580870943 470718799 450516185 817235007 384692716 479168587 752612279 837932978 968386483 834151712 909699807 976051080 489507254 533391755 333460147 304376768 821658051 102142125 393516900 250416185 349688534 519825524 113157210 309058737 113943280 576241836 686146010 193843863 476130650 820661604 584040180 54781103 190062502 18354430 968090823 366599758 757538427 78549677 293285962 260237427 508129509 47025515 535153365 287938351 461454519 137266430 200051577 965524802 225733049 501482888 462213141 553544679 633142622 90925785 566526299 275239981 579883535 477775933 69075595 611026386 547177581 120196573 656762595 745510268 963990053 276631636 966948650 804845636 790100134 934684583 670251400 683346405 349111989 417345411 636622996 795774009 22216246 991434197 388124937 580764486 996777206 565582528 849659372 799708681 835323601 397576080 472627823 981017282 708412573 205118565 518984814 877962631 115888141 376649708 265221813 303635373 556950776 591771418 530075043 960200652 750301887 609254403 478941982 796842284 483087675 632027262 621238067 867766905 265270812 29358997 979828851 76914779 455851261 356062623 115954429 978146976 163459193 214648175 149138425 955710157 964324974 295013075 667971963 965795335 607818569 991695758 349974269 382824851 989764684 563233695 711080343 131888412 382001980 447390640 436636604 951351184 150920365 748283951 843535908 278562807 468024912 103160311 43711187 262665207 278431692 218318344 369291822 86789503 935776504 324285553 596452679 117133659 876877506 103209241 437839537 630142576 457624990 224248434 229892293 902585272 680395238 217378618 6396674 830647860 642617757 618387441 979337120 754958825 500023946 744182730 407337466 991042743 195076162 642931466 220237281 827323193 862281586 324248114 625749501 821285730 989448239 559860487 544900881 379146583 64610753 716491124 549541473 336404871 991307755 137034369 73462958 864122478 676293961 870983670 92678145 743843205 630845557 479633448 147605592 841545251 630452626 395286321 37897608 199508804 23827169 714754081 868394264 324263903 329100856 998382113 63483156 114109488 751376928 379549829 294791050 648900607 414554410 377003037 825509497 60632785 382721929 416328533 900098244 466814488 981340484 499888456 908948957 822379067 77620288 621161246 448425372 741293066 117588248 338845353 3295390 208328761 460127936 514707160 151316733 597879241 97957181 917817659 83854248 675617428 418407622 366142646 700365130 283838093 668880496 540938307 923469784 474218559 909285131 888695211 36342996 196869228 978536441 482171570 627901774 512095208 726042400 253006796 287761671 386535366 81370019 342627899 695593800 469022782 126349707 931403702 302577299 695703194 524163307 822039213 879806775 218701822 771101588 805473000 156769613 79512927 241368264 503436948 627691043 956431221 73829381 635963445 856862768 960190398 802540073 221565 29491772 170386013 609769664 112101161 147891188 407555225 68161980 388026824 828605723 24773501 851292239 579485061 435580988 224775771 818264687 82705398 355342309 923396257 320229017 64120378 944708081 373183676 728399721 596665699 639294858 505856941 987404710 588474130 713839261 61236993 579533203 721240792 59069660 607650988 928045831 470491296 202212347 302651688 405264414 275383845 358307860 563891595 229240461 527881614 657681899 721098985 525258828 2155194 435753440 359771477 294474562 829867255 105243335 232952494 627029832 591223483 79502184 483904293 268168983 449481480 758255204 362922804 990169257 229760078 597058580 797759471 170610656 12959351 950994786 952608351 235899431 17812122 740014535 259965727 890058168 889303864 211774040 440399238 907295347 614433702 132489592 273207259 311763060 256101817 134562949 666529408 519653387 326721232 442998452 194077880 635974200 122903599 34571816 783633066 845953690 88024026 205240301 920711048 293841030 438382288 98582543 142077951 915355522 810673439 625046207 930736177 263651682 291011198 458902634 323639443 736942574 525208709 368069082 265003728 890284781 64467026 967253505 962509694 381278629 686815704 57789438 371714746 491016523 607314824 768088639 386954571 707100492 581835794 869362900 742709305 532731867 344726216 574899378 737167412 662996112 142729864 235847796 188132064 948737523 799563375 934563093 617224168 147094527 529331859 570393019 324872859 585353191 357417771 40614442 872964557 155815256 747399075 757989120 510762544 371797512 561053250 654022270 630789998 153974877 804217729 490666617 725803887 470275875 40483687 674643209 341059620 788124750 646677797 870399871 720090642 99280570 943152804 263875431 675580185 161241975 523373774 967652252 900748089 450719127 574942061 295732399 305083711 59461789 514919243 292078722 707713984 192933637 741369891 204485503 49542843 753742605 765637182 278041135 35164900 448953485 82039517 857557024 287414717 220499110 771060501 287641153 704067378 47148270 844109757 909978728 939602741 17196145 595417226 226509576 778275963 768342834 528507321 735080372 540542765 287316538 281606383 570290499 961640695 834320088 835691440 989196252 329787644 352164189 228646830 302968620 609419018 646756168 931360930 907173843 750165410 338058690 660180980 530193885 363920664 887105301 782790482 53418574 258696834 913197950 452869390 111449885 979293851 164352614 967341101 447669617 10601233 110137755 759830415 114619348 956084578 144815543 926848353 653909907 968538923 791805096 782427438 39112573 399139278 108882166 51272360 423878522 929396882 208986719 665463008 170018703 178122994 437599927 244893412 149767501 964496656 399723761 386852789 183558680 924600306 860984176 131052369 651767940 10747547 156145200 772451165 431312288 191840904 786578200 766089399 502682671 823798418 323530948 508663316 967114005 22410359 204291004 979856896 519451548 712433805 3044773 147328947 964092159 881477899 45018410 648713365 283401044 519097724 644388386 284816688 827719611 649023537 226481305 709571720 51186698 782215341 535704620 578667491 686124005 9552802 600425407 474386994 287839609 121942517 63913950 960301159 988481598 78856572 591638141 552833973 768208000 875052316 501277040 37949458 843035125 272704660 117842639 852550606 838828532 431040034 918947466 187309190 583295943 888900941 386006385 613443081 436043160 318079015 826100158 98202041 776897398 915391224 344512097 52520628 916135769 743462277 432173938 668979517 384097309 129040900 753870289 918550576 135756354 66979911 544421573 894347111 785402499 330091720 575052883 685866968 501999490 972231916 204424255 762487932 29206003 575934740 99871267 236016998 550033403 788632446 48163218 282454481 647797662 441299446 482032588 64023634 258977136 410738652 300713587 453875239 64738607 49285886 519489760 622060186 646075696 409567351 810351359 710358064 651632643 15516943 494983207 248414547 733574088 620003105 283530235 642579112 972017402 337829644 186468587 100036676 690034686 263830984 333621304 436473016 387819848 153310437 713636946 763379768 923307556 889390641 416007036 686253284 655550425 242921175 457992899 227997417 613182226 996267076 425761470 861211683 981521976 491321985 670435934 408867950 264556050 44536845 506380380 578811459 7509611 396974976 496406591 819120277 407705580 864045625 501716671 765890366 848045411 15666835 52595310 823064819 573382633 126501751 457276202 651959083 830267174 212320961 437066412 970252396 376624253 984643139 296528513 649048559 757899227 496284757 714837380 481271519 306484483 636737417 376733024 933350930 878000023 924583182 278680851 942076974 288894352 191184261 960471873 366977015 847006078 949047635 615436813 800260577 172244360 922597965 828893715 545025063 148350636 869956617 516875689 395534464 637319061 102468224 820943008 443369670 342783547 164759559 52445533 576930839 729870817 5149234 88152936 339055421 535359553 779745760 979911828 657770326 681254072 615768738 371196578 103514 480186511 738392118 785147118 937970821 989098073 403545065 775197876 692637283 557408046 606881870 926378927 302947790 312905752 983298876 669901558 594661447 973308303 668503698 483394005 405916352 451063111 482855235 675637813 309754334 808981320 896912963 346058170 232124856 402373049 572242065 710025283 251777248 754972883 31695610 815531557 685519147 367236753 309859697 345233814 101409606 138966916 482315447 836088245 81207283 846587393 604116930 220741324 214258338 729685254 861989446 116365667 203595192 149175185 160323703 64819198 832608846 386557201 993978367 972014587 487571441 818791930 105033953 60471153 552279715 639517697 550031050 656696423 390626406 21027237 944912993 77064726 857516135 796170877 300431401 650249452 91293182 401455201 484462469 644169167 563906583 210175002 652829027 954121470 949541009 996895758 748132782 945753771 850397802 110750446 852802082 972554791 663070157 668075944 872374521 723781913 252811556 994629143 639230603 331437870 896326755 340258983 144313051 925579237 771670904 20228907 11979500 98205650 716473967 348475924 19477554 257842719 422382065 521609425 60371692 922840880 83623158 758430722 769731773 348557455 935454926 835565855 414815557 180333422 417872037 300355794 32580645 670904649 416107978 911679327 994851637 81135430 585567232 405147262 961842273 352225851 603913052 820121723 796762393 590074734 612544054 826847957 63360289 818511169 187739632 367461522 585621729 415811911 508575100 713522507 972604468 854809308 28759111 343367840 873945420 720776958 121767985 186722696 15038436 598775253 325796412 647703972 350972494 236694662 818586142 891175908 682909050 854154407 323809027 218435153 742723574 247340065 331357519 657238054 579436814 283144929 404470771 138393723 602117448 210920239 683113818 172083330 400356198 179893052 175223173 814551263 604390457 955139321 897083808 358356696 530218869 250482270 427746017 114309939 679914212 777815084 473332701 584950102 709123038 929280586 620065617 962463374 932773155 169733199 294620967 614471637 13928610 30574629 760655679 864728878 926867181 588630784 418742352 839768307 198253548 393244852 321453158 421946742 172707271 47750853 589341672 862021938 381539395 734410199 824116607 283198687 390567848 649531270 881266248 942012116 248108618 654265292 494096573 745923597 983483310 238165403 491305319 86272576 283508671 111502368 874573271 60771408 146183965 782157724 941639826 90068799 688381760 972290456 14626565 639432096 15326367 521333131 47280103 705979446 588492017 350230944 108663145 655093038 407360634 677711302 848164942 243818586 118328191 329899090 244605917 669076830 693735716 160332312 469651758 819896839 327112218 344985563 729286586 693415920 46504078 2409313 907030088 14798846 275394840 250454363 353779598 353685050 95389540 407577598 362603788 657178480 408491021 874847004 970941251 441158269 295602966 549848586 906456193 403836689 749853751 390540285 339771898 972008268 548620808 266327277 482366396 409148765 578936971 298623606 555779132 231221390 35247806 29704135 249812043 437792985 662905034 646270778 662751222 87533419 233687456 430263372 624467106 333937342 894236883 624700459 411441515 966467811 336035189 828963796 960927482 488764213 87071385 459010473 910455111 467373638 429170685 352569955 722470574 385593628 739765274 618666290 139755335 712774927 511957028 610366711 860230381 900411536 634281132 996603479 858626736 448016549 260421505 163479599 888660787 535272627 518309945 400275789 756689314 606812084 26084668 70149021 950775951 759924760 507774888 612309505 48799938 108838769 302223003 454610094 132398217 84785335 15052202 198527727 366615517 847249159 180974343 44927944 627006468 84016190 233155522 215154292 688704090 129237353 896642939 950503500 874397337 475342377 318803795 747774308 863555405 405044392 170504438 372023319 842693160 312495165 498015964 296698009 162002442 836477731 23842316 760616490 335426846 913371655 998643500 469862578 216279894 169007918 1043849 397652271 192301167 642836973 318080176 827659754 889628883 666289933 433240580 122170530 866173881 578498361 14390159 278535859 702174742 841010869 2045347 517571178 708223125 772025955 219809144 873841721 538452447 479151969 641777941 508546701 682755727 350327818 466175656 503106894 226419812 419045583 225110880 654364601 968333058 379454145 19424364 56544352 673442759 192432906 563447918 69384809 516116752 250206154 998733426 399740414 163930694 24761716 552062642 816243712 318770639 30259229 366402545 581702981 187215891 16526238 706675256 704273284 239133742 443445427 895814124 300845371 726296037 981836882 172000278 471743014 737119543 55943156 774090437 663967538 111021840 112655530 144594894 276731790 601528778 709019811 498771129 45639210 311288290 26649009 485079712 827236120 413162355 144030618 946150755 138541759 728283646 745951972 146539863 333477074 179150662 808172369 420228239 659408802 648654623 490449926 407774212 277201842 66577520 109160982 949135835 632977458 45093115 275536380 409191050 963677055 636678219 381812289 855966997 901625976 530403655 599560729 888821644 966876980 460532032 763525749 303437877 987198243 536670863 925110363 619716318 963189459 795493921 501284929 446908228 8660949 308204527 145995545 914019008 874552866 597384863 462181977 908931351 495980406 822737720 118420652 809062435 440913040 707031788 636743085 147411134 908105067 336847038 184932891 357094192 154580858 328186479 504655150 731074891 935085159 393441826 859008984 384728153 825255651 397316215 896734311 114784238 813001032 314776523 817272438 370501579 295550668 304414094 524310125 248745648 8007355 443201075 276324630 571222434 359115734 19943459 264545694 55578976 307153653 396740054 820722382 550939716 373762770 491903194 580253374 866805010 681400789 670364874 508236181 518858796 208693033 112096449 160425128 901804591 658838199 482258651 488929956 224712241 312256001 761974974 13744726 281753991 484674034 495534480 308749673 200524440 672332087 23520819 901647559 571053583 199675971 259555906 703616283 14861216 105798146 575215475 820843543 211673255 562284940 20706207 327398703 61894013 543181764 451803639 31464135 484123321 321758513 945504684 164552524 497399018 194842120 218621721 236659687 759790944 369851657 664610018 125093413 897323753 379670634 930632801 907791693 120656596 870922614 62625967 634648570 849283438 412412599 839742922 577283597 898789630 660230744 478825241 480348090 691629672 475001327 101810700 182581681 843568421 90372985 586573683 720060670 400456667 129306044 951924687 41146425 601486150 903402293 248714494 720372319 115839882 343184179 973874122 853554669 817710473 727702501 526112260 560125310 894614511 163889312 772223739 404036594 538988479 472192277 853545822 603344808 5253756 407380073 354405201 436582018 422819361 729880451 265653635 271432269 49469857 596094366 190126570 983592195 100343980 359458784 594763008 490814076 931636417 956502101 792105479 631533675 629869399 914964873 984043186 741647766 603032310 188462089 599655116 44802285 525689208 250065717 182155254 467204565 927482963 166229716 709198495 458414695 381964703 112746747 210502106 313202323 102754491 876497672 86564254 123898565 487768685 706393563 161885561 273404785 300060223 671587283 666272632 377632718 238701196 395050739 307014492 840461725 954087862 121469577 355214132 87979273 864764222 682120221 285612951 241266924 678370986 368222854 984028262 91722861 980751400 751207652 168943573 659541026 756373490 752358705 262819467 552574247 632240714 470542703 231437035 825163718 359633228 182402359 837066830 473127615 913170615 828949701 789495837 550101494 65597230 652092836 61425758 94324437 619870698 65480687 567596713 405884526 523117770 896431852 226401341 953563955 880907399 518679047 801229111 84208735 476520300 737675121 397602149 252807802 35462450 326385172 817455146 681188400 800050458 91017702 976754127 580153943 338719514 261588874 380155975 504124629 282186914 904162405 941129432 385360928 787029628 395702828 395726753 515654570 587948370 940428708 918332359 402993508 794426814 779721814 563588291 431380589 334347829 18758490 987130491 560018578 496484781 680632860 541363482 716242588 2116439 533733966 382751138 410313837 414826364 11897984 810580981 263294295 252614302 484699141 20327221 25703481 998508903 465432233 977458671 638723051 226336288 697952219 288232950 338360027 726524858 812193458 18276004 312011816 424445500 532788932 55250960 367637189 150715053 218207070 955609224 277819988 631330594 809963335 196257275 253801657 749826491 693385080 239784165 594565609 940947806 839799961 660296859 37304739 81265224 837410003 464306540 462779534 706138483 86538952 234736941 313750178 822248534 839987839 411373121 295671875 208890967 394046084 778144551 679827059 649128872 539156456 814298100 61342724 277541310 863577266 904295021 823162015 652496341 570896563 152705701 306146991 909605843 443807446 722167652 49298568 19277282 972655501 839194280 817912475 798990249 27393516 22906626 148150017 649066614 468127091 747625094 10904853 67631393 175775898 598048232 106303499 82905779 231670555 561452024 494887918 608750003 366516822 709205376 833030352 295418062 962081141 71591340 910966685 213286002 923539671 103585684 370243415 132074610 230638386 754340337 161288593 272223052 688876794 395317188 471512480 504490675 308466911 436665148 779675124 579297391 76840332 572075595 191831182 235154897 612749249 770283361 824086339 813523298 643960230 740834347 47227716 936146395 874405745 419221887 103136729 949035373 427491721 64294849 316686489 789076347 70539857 4403727 687817964 630839575 925640421 740787912 138296134 997435719 760413815 459860181 828771563 929241508 23352454 308016878 790365674 245527752 869845767 658778828 439557401 937393336 711588566 410372180 47256391 843527884 57384154 107077360 238046404 928382714 423553800 407176895 251004828 821745445 727350458 910989606 859017318 450917982 223112136 866493818 323902169 707527966 643101859 50132829 141093958 220600257 489547770 784470907 860455323 890329832 805625482 265493289 208841363 384776818 583583276 700537197 559699600 349273613 240664233 740496579 969324404 298420657 23397668 464973034 438906587 272933818 638701073 956844452 314132464 922722715 611176098 971545102 929971902 737007163 84507743 428100235 341006996 182752290 38924746 196063144 921710331 808372806 539274611 422235559 800896093 544732556 726013385 243168583 460513672 938007725 314045868 368883047 680449401 241804681 498150135 612310564 531489473 536463624 209274344 858157680 186002877 425622711 606273809 838890217 870021915 918818793 502427000 191466466 919644917 445401011 781092778 981266836 839106973 36642950 981972998 809790670 877395903 619751394 373188258 708211339 1888836 441207836 921708708 901464369 725762313 380590577 389320924 886384319 200008637 905519638 130904919 934963978 647095019 313621709 26851935 952578255 447717518 829923102 267231989 83014682 901930894 931367370 526887291 485136641 23806870 482193665 765765172 476459781 213747629 332704090 996815552 814975960 426077468 74529764 684482806 253462354 645554491 729510875 248271733 229325092 982534305 872684831 794047328 202333991 994553793 724173850 905052918 67196354 893821053 806989851 462252179 177977250 26425516 698538400 33689917 955195792 742003981 750832844 262697107 593902136 771823369 288835919 944480042 380514490 366335713 95488773 328786852 776339643 422196084 478088038 815807526 842443444 557689596 747545148 280701108 16704379 387865056 302113676 874473026 634808534 743260180 975251680 283530055 190443518 77285315 590643110 552770713 464027835 485647261 277005224 213077683 58919251 633079939 611176614 150331248 219611250 487533282 916300326 182642195 543833579 954971784 754483831 664496584 72633267 842771539 547409515 750604759 450207896 323562976 945333751 597673504 672707029 271572205 891400647 994826495 87893589 329813726 107838093 865424097 683296976 531372161 912629092 12538604 246251128 355489670 899188731 94662065 440089872 48064470 295664000 529269475 696086079 787072315 298672149 175020601 216414376 270941342 829776832 9132550 327258454 724937209 205962406 253538889 667977891 298696114 251935899 500180183 355999751 359102614 526052671 848879480 571447798 847620696 278461274 769211414 198959262 19475911 478683418 154456839 897700656 845214056 590881969 95108882 824140425 426661108 728358471 800995034 635267096 375346527 485307192 363157427 723093919 599963623 873503441 330187728 420942976 325544754 924694474 538669914 152734886 758962488 843183021 224703935 262159983 682048225 219710465 741223897 400624664 339062658 45109980 847249842 683854404 798057365 602991039 580372267 481421937 108501857 914948738 905543871 812353120 398959763 185771658 717634595 598848747 560912745 299521932 166701947 751969869 679768720 752435461 885542281 999802070 995520796 443566595 627192509 801769068 165655173 568591779 737615707 514203678 683031849 40408054 785454048 555805488 643445500 933572231 97567099 888940296 882665398 347437200 595299430 851680862 475988971 984463129 751148668 723494174 369063413 767469338 446879409 624250304 152175761 206890156 470999616 706837865 931237416 12595894 319040048 431951664 483016721 356519328 86553672 800301073 225619850 999410317 800586161 709658631 425203932 952522785 231616758 856490683 669229643 842487748 136970983 606165770 480580993 985101231 236633522 833185718 366832957 692150481 830613328 5047901 486277652 195347787 47773173 372304405 344728270 631214850 908549088 764697918 379755146 449722460 513342624 250637840 409716505 815361783 382559433 62929081 382541953 887613020 564872294 812972154 153435231 460116287 989426610 558963686 640246516 285301545 659599850 333741006 875869802 781201341 896968561 464502977 472300642 113589419 522291436 174070862 861687599 502868744 160203344 521265355 880934536 292196612 527700645 913423944 957833384 668554004 914965994 668907188 82043389 360556791 927110718 338576559 473091059 6344135 786270010 204718828 90458576 660984608 937435299 382973355 988297900 965579263 710637243 87812872 702865739 477570964 14654129 167488878 19962749 653330944 399373527 227075954 224639899 232181118 69514949 22392000 62526672 879773336 500239183 688691787 452609090 288009247 526579958 187219218 583627126 501016142 559919137 356836276 787755015 203923888 726311852 894545561 136435609 402987646 806521140 75941257 399073415 309565853 215695217 99250836 605724045 167095742 255437098 309811236 183338892 469077161 99903811 123554145 592967278 8421550 956020497 676377950 222734286 120811512 242826332 401304252 654282367 531987166 330623305 219687168 322164062 739302502 565582359 808853413 484191151 955064176 14611150 269469908 687591017 430414763 247502083 273375784 484832488 924452684 640770437 85961070 482534006 713610786 581015206 525275351 228338305 214352634 594389410 228976359 885643212 33542043 769047830 154615238 755688408 923506221 183800618 419899956 742624444 756568041 57220450 834083531 846104587 341518799 58694976 411891438 590299556 538635908 55257256 344545958 730300729 907715334 295273847 893671926 562118176 454211636 641495380 568072025 349908767 695487776 396830166 416413313 557771813 755962538 923731701 213136059 854663963 546515435 173727702 400453888 838676534 238071215 250173555 743435534 529536724 931736457 126112836 350785006 817542563 607695440 315226428 447472217 432285098 599095730 235223596 24892 952017767 180784739 718345674 939184369 74075218 243158386 166615884 585885851 954329176 739927603 939624883 432487960 16006498 642483908 885016531 32809809 267858486 162742735 272251213 370877029 712292461 324167733 748914074 60020217 831510304 857068150 787141276 850238941 464642755 137516665 135472049 122715987 287493271 619250117 998652038 696148552 519778661 801420730 40519203 412758515 362457382 643367237 167580607 233866824 118909481 839604127 412642465 141193547 840562657 582805237 444354582 373121853 423105568 611529751 811630081 797700647 395652351 664527766 570532616 177762978 469192798 299410609 526819019 754082711 872651866 919471313 106622244 664977738 102844582 744022563 946098998 128965280 513137364 886833440 191930423 176887101 487917190 973891646 568179074 860100401 490373905 890133603 994676492 910591080 497535090 189738622 869060616 349029061 503400484 802820416 490182042 323956395 12858709 587402046 574668932 295114142 79054934 235566670 171601399 597737561 666177250 940208296 738782278 508073721 139133249 112215732 711680830 526622391 988202621 104074700 97341904 30051976 684180057 606082188 353143652 351149747 505826248 598736402 800386222 736474540 504724212 447739381 783326457 757875585 603238713 185528214 608980077 75590860 711154509 434992943 627149561 333599301 489667371 722640763 185049374 121636643 998603973 311274911 929883331 953120403 471106348 955129511 918726134 206750636 600584079 537499038 981858463 977565817 424261635 332866769 878019496 63252468 140170415 954942461 4847365 136086423 413167960 438556912 863777171 314526803 395730831 904251034 767764400 75808809 329976659 188396632 915601872 399841254 179931616 222517897 545668298 45376395 116711902 658364413 111321498 892916462 440051029 402233721 785110477 117826029 793686868 436132110 63021715 836549579 115194246 478871790 319820418 329670735 901748084 68858627 980048677 445320261 792374896 657543647 860623046 688359890 986848690 583730714 458506565 68366276 830444669 895172094 818443701 175819997 232043664 335193350 160716654 792336589 518521965 256643771 209532255 55592414 344658282 753319583 808911911 696863387 426576481 967958462 192841371 378653644 708696483 88740233 557002901 572861689 429758012 669532700 345432624 805747421 910645790 238455468 934825117 603913410 232915525 61566688 247896018 348439154 483534262 980277250 416355099 938677751 275444932 664837371 490978440 156957627 597714778 553105237 693904683 752251121 242949370 306530315 255214006 166235258 682922687 695403846 972924749 945148960 504914153 490515234 391945719 374676990 939647330 841345600 79534815 83085535 598881929 786717702 932368574 955471268 13272281 902464551 870386665 391915621 715576005 640840882 154327196 578711549 384308161 332115758 206378760 969593142 708929887 582068496 42867558 330316332 558741794 695055410 318768094 88580094 666443088 634827885 687416311 113122259 37879175 852258876 10739122 751761099 484664507 809428874 160071958 827594324 86638801 937539845 322405559 925729644 867993456 954102655 788892396 936662876 311541180 767407047 95528155 192310622 924090163 774723751 434023790 649568209 505856904 681028459 848163317 687871387 240210621 756561649 761962808 761504211 15180219 803180566 381524529 502042318 640356456 79386549 372214356 410657510 699009206 899011147 704070202 424365413 875741717 709623707 767524919 636076436 64277740 468408416 594229564 118850727 979643121 866516172 759126879 450557618 956343300 807603440 323971289 911596739 431604030 736740973 118343958 169928488 711155898 574849300 145942416 925244569 94760654 616333615 164978617 651250089 681433881 21361824 41435215 402181621 929998386 181809289 698241347 700242074 842582994 95702021 578689581 490091437 664749876 232297834 387222521 343096175 646744906 207583893 236024991 163149313 894729384 873127190 680182256 867635012 711361684 724554894 684817486 289719368 935001290 720621310 654624790 378858182 529414826 913866561 396460048 386840873 866460542 790811436 481210072 95595976 242494515 262662001 679405849 772879272 632170099 750835220 475982204 294220641 923119262 896191350 724357022 190967165 975844148 463264049 772046111 546489201 114828044 490439699 805119810 396370905 957084870 116023002 571474724 777602935 888945947 827638710 725643642 694519603 426904578 49384136 153058720 612770950 481407922 768986872 102774923 281133388 966039732 137093377 885048719 936713942 801615375 483586949 678998317 593662794 298617039 99744408 652155713 468395495 311266759 815541867 16676098 796354950 830277815 408085886 238794178 871021249 298620786 601295219 283975712 210349009 294410052 705210974 777467762 184676559 597518921 98060204 897195688 399646865 826007034 640250215 760082132 703186841 781952373 184211368 613504055 165698180 737936680 715671011 228817610 939767924 982843386 61889001 849405357 392837563 38697655 155487487 350156491 560599343 220770222 232374876 248520940 324995072 139204374 579541961 505947426 389138992 187394343 521969994 711786703 186049788 794902298 697690299 651621717 515508277 799991558 539225667 135421066 246165660 729004556 482145639 872223634 70142147 499059177 981132476 655915983 653338409 88816592 914916970 981825524 212008116 368567686 327252557 291590202 441393533 543685964 524004327 748987143 995298892 983792121 722712566 781127748 514651902 950111385 859684276 567123981 535153761 838469077 471001650 999191987 723472242 399331472 882207154 433375567 354464963 23274399 65462839 62964056 839928910 591981794 514867076 78025300 288402211 127767790 903881978 11547608 647532914 723870103 525428930 134713993 241137150 586262821 418839071 855554301 576019774 236062606 383946327 7743424 327790902 865563051 12687503 778073544 699892384 138652244 485686605 213649387 797791152 227687516 394665060 992963627 482584361 104376152 881245458 301611720 207781822 539654377 303058222 235577299 325660532 684462810 110006313 582057250 82084761 873434361 310861003 569216811 545593479 546421769 889195805 387230828 867357921 65760507 757297677 701785849 609586427 576193045 550844935 898673532 641328982 488470861 231934437 161550479 670502052 700455612 790420462 892286654 340387531 480919084 739802796 395366252 234491119 836802846 703692213 774150323 827538567 947726614 258405737 45602956 702915188 937453483 13817244 26188898 450607023 187310933 360112467 801476224 939399691 974642789 964381716 428780439 908006049 566117736 897298855 719579254 126353684 408102687 48219908 85712191 231540397 639638215 28328394 120657292 563160132 534960911 152166419 449879547 620695902 988176834 672421159 947491179 883352764 920857330 212841722 619463201 701884152 809563906 749323384 108177263 437960415 809156914 593985037 387011264 680425028 871670833 620358580 224267961 734073516 521786063 180770905 143795152 535999309 833906184 855654468 71048273 602692151 90098186 507100112 778655264 974245813 31392154 727819314 431442843 536230413 238320785 853047705 443898073 678917698 405194801 41613145 202707239 453599966 727155016 823170058 377691251 252219957 883529132 638859712 366026159 396038142 792280308 154400889 822163892 102949012 762993438 602603461 9573152 228745591 211569510 323888274 207743421 643051286 537051912 424138202 408388223 520458929 686311188 9181686 262289034 488409095 181305910 615947832 577155351 631016872 595093483 648838100 460260580 990109974 805083440 64916918 563942595 122663877 382861883 837427524 622714140 473918098 606441991 719816849 679640242 929153797 930824761 718561357 234597354 689413996 866081233 964374289 796240837 876738339 104904096 552510330 182096383 964914695 894748843 905349373 118021389 874664400 171505063 951809644 525140428 952872469 511157575 966042377 785013739 987886894 434655947 495907153 814290976 884714493 266559145 364385982 544511023 383010212 298723176 110187056 466503109 15701822 833279471 548107533 417375154 875507800 621284991 688357372 425150796 253212163 246559488 365633097 306233145 40136708 232429654 518608231 785625035 828125707 462197046 815543638 520499336 704141177 714540595 643370000 427444175 414256943 658114936 915731391 131494644 15040519 813229142 415854045 529090114 946503116 712336688 929287908 210738864 341776358 58037094 892379583 304746056 502438452 125001213 444637487 305534541 455280232 288980407 631636412 26647710 795704848 131049480 896191831 44731797 629771062 920431241 259355801 339556351 659370834 732686964 79465271 795288489 625895151 394784191 244643139 235982565 732318590 523816713 992908760 958401138 892364837 948874210 97345090 890844098 408878947 781468753 725002836 700885040 352133085 781006501 621523433 950469851 597085527 271115946 841301444 459772139 155968356 111389196 719289290 363622081 27153427 972351248 753771875 492970767 303607730 36528059 620601774 156213167 943609868 563733399 48356409 318214328 848883782 326139576 72902160 640232928 705917717 493216291 805435440 593443193 860174447 312032653 525558302 373981775 355400513 372456335 399011494 769582786 576961679 209893477 604199395 764929206 721572353 260093428 40621018 417375901 315921845 278644298 386314396 542699402 608690215 902423605 338380436 76227871 178652678 499342792 54310878 755433430 395163322 889726091 535987720 372275723 179966082 230508236 937060452 517907393 949458729 851835003 963381118 846357044 985094229 49748525 267482494 892522925 366821915 554152436 435507807 484225796 90813294 276748057 476862796 136965369 578725981 97123853 399553248 547747645 685897376 61965901 896206642 101346066 880815779 201185123 90645890 605596432 157136489 480795388 377062308 898804460 197113492 668903491 618077311 401229410 365872363 432677537 765227772 826581582 528411094 598738211 813539854 93463866 713296111 981564482 66518905 898577754 375564922 855437479 595266087 82155466 541913543 797889130 713885751 34319861 662507523 812600234 170379417 560458137 221002747 556679825 250196142 160205996 670280033 352238427 346550931 969067950 756556180 927021937 136696715 347016790 498010039 253372411 771529068 687974761 56855998 4764278 164678414 384567563 828238973 456717219 91856378 251546576 96413475 67382968 239008125 851039043 743120995 948034767 484823287 945503906 775399747 977253597 272986037 236571322 961915603 962995529 751753472 410053100 848644256 149645162 229425297 30366289 665866771 289131558 227544532 219295309 858252638 889153671 993265654 405083228 178254488 524879125 178463197 443682122 638712462 403879707 860674812 676565293 950568043 175653484 185622334 130456022 893867918 235828727 332961143 570802420 747260224 467614261 195765858 641059356 746453343 703646514 407553961 167966197 66627972 35184203 711877588 938966263 454196248 63387505 421678831 340306040 28627714 121419742 401942323 885751515 245572364 335006373 590392107 108531714 839954515 898006903 948522261 749745091 405331529 120282233 767250528 78119846 74684241 96080777 896550320 608975662 90569826 371506882 506576040 118307154 960823173 705663979 196951126 382552816 404551470 735610000 75703471 637753079 652277102 800553822 39892081 56355277 657577589 325821907 20659563 19139403 858740118 962258647 82294280 703515591 663859816 275495762 373466739 919222513 148196469 365985778 865075191 1675265 777745971 416112771 772364377 462365593 15054383 862964595 671001637 348220797 875162398 931156587 82467516 680961128 462494577 737508423 984041581 817928254 38200454 578240367 915204219 124038572 898363174 139237439 4389196 592467191 670266230 9365846 831536319 836686177 534338463 651318075 470138166 265677829 840281548 494559271 904528849 195217763 129916681 444370337 736483846 905768327 27709889 106169466 465988771 263867087 851813193 822057739 515385800 858535529 680317619 291106192 226223477 632206669 476260169 747397041 403295422 9273287 847034810 971996000 792182935 71042805 898481871 988706176 531468736 247590058 326140562 194326885 6103785 94072364 408115536 620932789 174623393 808630730 614603726 134245716 61980478 555969755 252210764 260932308 183647827 459908506 755286556 66276763 636637231 773251300 757249915 163486739 321509559 963003437 896737759 860056934 186883131 594203829 79442895 357647804 742581926 281265267 205635622 927866542 785258869 276807394 219126588 327035576 507967055 835443322 119797922 153667339 99955332 370613882 570950252 251519097 667435466 831084418 551692277 726024300 915237638 360239665 370494587 462668997 72305626 231818748 75754254 241413677 493485916 484374853 64900927 958193345 772330927 650994309 548030644 764010051 89635126 621776352 115237686 302079985 441511665 898993074 415828107 434096600 706995549 236975353 510215650 381642728 949548001 515261089 648665823 563236094 192484437 619396471 484683306 30340892 302447228 722952893 137498313 391166340 647520660 730307828 955071941 370544582 140614335 689196224 556001191 337907581 402829417 517672758 295339930 929413731 817968478 178902467 545379497 482004848 859056745 252240800 646819277 117050392 108483939 162952552 758447527 740351912 635052015 162467597 826580803 399235510 538691293 886897170 43301821 37919134 586434710 543622105 820180117 733578793 723072042 704908501 732132899 619070584 980588771 341290193 659941398 309119511 318004312 187504521 978015581 187171984 694437755 284167730 321397997 179064859 527377738 664904803 730451621 432524194 893544812 794984872 975300493 491257245 978761351 162674108 578016245 858906002 786675178 893199693 883171759 391864662 252099557 569942322 108810938 707490643 930584170 74161414 682903823 231279302 650178741 796290963 552346511 309642062 949739436 883746849 465161401 635800013 79863757 15945895 733447839 224649894 27507580 332247790 71570983 875627255 251123050 635564735 218996987 937175213 369462711 488457930 822670504 47804602 242663757 806111400 874654433 777979294 256335557 353588082 332975015 328329085 964371380 643276822 680361178 6428825 499484801 750400075 267224273 135048143 832427004 329157490 370757694 394997803 556642314 642944224 799014039 771642354 983661933 364849351 48519808 741094769 948211316 647150682 251639711 562552093 524338732 625446026 303753817 113408023 904663214 765151727 158356373 401688000 740076394 782219189 531479377 106090545 231799881 850332538 42137215 618439363 699163113 562227184 752888091 98550807 773986206 85325928 386007274 856971792 812944657 729189861 495321744 889015104 332300195 445753717 325407987 975151626 439562626 395832038 394935348 46107525 256129859 136860561 55913893 136090157 455775611 288826933 740340611 347815303 619449511 733514248 57066655 192243517 559949691 936841010 299626703 541315676 343201402 140093440 198952717 505914044 517569043 293532751 129484512 5451581 705726427 885458616 918054436 990446531 13849649 577172489 685317841 80310680 420325417 374180150 529418867 738507897 974982396 878153173 680259730 142034919 236890231 644008690 746175881 486756399 66576930 611574292 875424207 33788794 661081381 129967968 830685802 706198083 854089981 281635271 858431236 474727428 719438057 918119870 489429267 840953300 507589028 228413454 112856723 351239427 33980887 270769331 812529386 307340976 405678900 875409103 909703077 427367455 964553723 746012212 894445484 650379921 791672252 484254960 162440734 656032149 276783916 160563380 621163787 122934039 115163523 613030950 319790198 995398550 652345747 608669854 962702942 223321545 239216788 461077793 697364321 523182196 759665990 948866737 197614301 582803125 965314814 604370241 521303624 530714397 896973891 855741993 444520335 904043930 125678043 607970638 175615077 819123185 234265490 878932589 107947419 699686948 433276587 283887666 628975672 121474439 627678887 457307159 986886853 219636556 173152096 428763636 604696 606860643 32704880 846821931 158422329 923958839 344042378 399046149 779335963 97719196 434970845 382246436 658125770 743782220 783033488 585131921 629660397 125695323 139434411 626539609 447751404 999375329 677191253 163640581 649453301 389110982 17804568 447048323 770917069 80322962 425454071 943956712 518807974 681115118 620428458 293365283 581705587 880952574 434026360 862961811 96253714 81672321 983570815 407085384 829461419 157632411 164905773 154422694 636486591 708824027 358853156 311443636 902425750 570520977 174178632 659102494 922060837 247055034 688412012 415602212 755034646 823918078 889821428 991859193 934886024 392449851 924476767 283955725 628437255 481724672 441912253 569707458 768960821 202031976 935822660 404267338 297137950 415338562 137837050 266168508 747442819 744251024 380248523 512991979 469069865 950312075 126981407 248461410 369049188 732024950 324499174 6928344 368318866 468010300 826743535 762414279 698334113 688971326 540265125 928071099 918213516 543790017 445214454 870525649 311227683 448427434 286500458 372432582 460182491 849820596 543036469 21021797 999266401 585197949 951943779 806541703 781347081 293173206 258995303 402997304 735976704 676971154 287811556 582764615 22473753 288552517 907653727 70694378 515933400 125955060 845846884 592788325 737943983 670863970 97119280 115452489 151118976 127851135 370590258 690512236 381846162 37696278 996797472 265464038 288032729 223817718 987196337 168568689 469027319 620519334 712199213 764182648 536862301 369775624 588797666 78564198 325065799 232852521 710692403 822796489 348386249 864709719 867807189 344265097 319480756 231567384 412872746 65204269 253181181 540417061 294537589 794266627 325927726 267183409 452933038 136186506 63215867 522079848 692722176 35401510 185623122 912709584 352604078 222150161 542808329 680157607 254274214 373367570 57565613 63752504 40601071 512405560 833810990 688201778 59824223 149218936 882386701 447715689 431406107 153398122 894417717 339884058 596265557 230412908 524859156 640763467 441464448 20665806 969484545 432420841 868625506 341001005 747308231 663107361 948150537 344910360 520654112 52569675 230150511 806781273 635770754 338337185 239983250 547482304 14410581 12887670 999038517 150012278 201026229 117938481 656262368 699305662 358318702 689047463 140474491 848933714 557587851 438166091 78936500 530886333 312208482 573576745 358604443 474556382 76628665 374675605 403557795 917354555 400365727 127236653 911358171 837751623 329840290 13902117 316865283 889060373 19490267 557620743 201869136 589484257 522161399 512056776 265017645 596680820 444643064 16019528 591755369 859187875 504499561 364570588 699127034 218492452 626846701 439077922 369954411 948616565 451062832 588856383 699145454 821581006 650322128 136270252 13741711 147238816 562074008 465031991 279533960 888435141 894498454 178279749 86464123 382281359 563571078 658985510 366025940 220896411 618133830 566490261 556698992 982390753 400134571 67948611 45894118 555075269 394575116 394306835 190165960 628790782 980167599 605676810 308917408 494361489 82434967 589934188 810537638 378180837 360157441 772033439 155956754 500700830 808117056 771942676 592748171 306544879 535517859 843674677 941308846 3378114 974544651 452534812 676048527 714552826 709280602 99672782 929160030 150531341 465789347 166247531 918036085 631149843 784254160 341400154 37717759 691144078 369862649 966386651 354622832 29866115 184805401 507934201 94386604 29823177 972848926 86708027 669537846 765466661 730922834 734654746 177010462 550627155 205759198 185111994 554820011 843705515 161782918 441280771 292014954 17261931 426827765 541493578 519697028 298566989 383002931 119814460 844041478 823877858 516717991 803927126 734135743 890928021 269181193 66464694 483293747 455033353 383302309 549560374 41595571 588516625 741434031 319997089 318503822 384434299 59360500 701868126 992248044 520000817 501605365 482242374 53806508 257833821 67095465 631957212 638750979 890241046 648352847 175097267 188376219 537703770 611147006 270951074 904422032 58516435 372021891 559706512 462836546 739302044 960953759 669431109 587010979 482664499 765071878 213696573 129715932 242302338 948277972 226118224 34932999 240313955 158197748 38435057 719666625 334272388 424632284 56807622 500767661 111949967 958319417 571270302 515237968 314007976 286785027 127498542 990525142 684797457 706102541 107146846 432760334 533252179 609907863 467270829 158588644 394185299 401369459 5652366 319272391 722620413 899931146 578341241 562884507 555331511 581096280 601728294 831535498 178227456 624096964 573415930 262423636 265294981 538410015 56415824 596717157 917091374 746104593 407962262 958983705 741336460 844694633 14573816 915263648 677656181 193186154 687375566 512366443 557382827 28558168 601167026 886584551 486767320 534713019 552620134 151723819 445130756 421549524 231388816 406756616 54155149 155393388 326667836 197511100 993822563 284873270 298756469 462565317 881149942 655110758 962047466 182940920 481011 993398784 657585818 610260297 101577244 646828614 232547025 311685751 406749068 965849922 281205473 194666321 94061242 323471989 890909336 224149858 46228624 748554595 453747880 753560798 613719230 969153079 531608504 264949245 654991401 373633272 183278541 173649953 874723805 691846529 941591071 346539549 366621545 172208801 41111295 210898784 180787428 895531856 646532826 623172351 472870917 768626299 413583910 639672288 648599496 1741177 839315448 841291277 637377793 924438264 535549683 18921998 209142048 545777330 362440768 19983134 406607835 846327101 132908095 226609310 678701157 999640977 969163169 282344821 165060618 324081066 80654696 507577456 426517213 357959471 251311809 345874084 881102537 572016318 648643307 116268519 504358333 5004503 813116862 850122951 968042925 490968010 604157820 864766677 438128074 2564922 194379452 89126543 799675901 845811316 756154141 393798971 578193905 370191034 649331258 220372925 319561309 53189597 985623277 558361607 593829149 430266125 669897587 213707475 451393358 921523448 201571974 217551054 509997055 603769393 774974281 657670205 873775447 567641894 407451280 578752600 420266836 731255757 435975275 906826845 142979471 391575546 89250094 314304279 41033703 854856850 364460237 862148417 700921344 180711315 270477271 567898588 629863147 907232047 724580725 890678817 311614210 309102657 161509048 540963777 204070446 432899047 447485165 371725429 535228662 348009600 171303795 994704935 723583980 645139098 991114992 600462762 401876431 291575226 881492335 113970990 340867486 787526945 666735502 473131644 214787292 271867969 566570401 580119590 399200365 665964887 754175389 594875151 255669003 109065702 575353417 10648854 442104891 551211141 537147707 925905171 603081345 686044818 271671773 355300115 833124706 602324647 742054078 292005617 782299608 320887513 573041494 589156644 907202683 880245092 775651453 237716198 971570985 35154816 268845587 914116583 549101711 680084192 585845689 937344805 367629229 219631985 555031574 455953404 467341917 948168465 846361021 829011487 65247838 119973818 618558702 152870253 211543390 61076960 595240314 59628778 35808700 258047675 60630268 718478493 933266795 971021552 57748869 411453746 993955965 748444140 899035744 584067125 488797772 628188100 973410147 349308782 282023336 648273917 187261429 157572011 964325097 572249227 37760963 800710690 127146814 623755334 144758186 691710267 648940742 742282299 517618098 834026616 715646078 782882992 686686321 979074101 8142769 580152997 749260028 865882027 598236195 284864519 845896560 499141937 568057688 286871262 479544282 406238444 481053434 218606406 104032930 471463722 887264137 219874271 468750048 804801947 417517431 10694694 106951696 715691510 559626912 861265441 723403236 789248292 587569712 197328046 636188227 169324041 891913538 491342977 167460955 683062896 774096962 891903707 285447990 691817349 50837164 20460504 297564002 505248902 536932038 890258717 259458091 609678087 87130476 774809318 98093536 149257210 858033232 508710888 912003017 708041527 967601402 574804127 27177092 815596464 73254881 398858295 635476345 640362103 963049316 414391887 540765350 756088286 588935723 232071720 840952441 435985249 477483240 712288495 306915391 746291358 869872971 350596794 496987501 266681024 571248639 614699153 267578629 609456753 741152716 809865341 183431950 523267661 527913987 510293345 938092005 371251457 23399229 705576524 552016958 380045649 263538270 207586657 377164364 955319570 851576210 46446168 670183548 53068809 373799075 527851087 59950122 850691358 157869184 520223230 34756235 294240749 768465937 131040360 95859054 931219136 830390747 713101737 317125785 458216789 41550918 279105569 534712876 74366417 26729523 488589875 962505989 826044807 41675993 439492661 64922152 402782575 89662544 86824628 904928215 369035191 242802112 490155799 486940634 53820048 608962525 801872654 211379067 168176411 239993266 341501352 173140587 971656258 200528249 648088485 991197577 238138622 441859026 53002216 781822552 836087105 952797568 33920981 316120680 229557717 754718748 699543900 860459711 35950100 528787807 759272228 145058261 582786768 501668917 292111313 173407507 764784078 518546335 181899715 522796418 648192118 351303399 252418249 787642275 738188983 32023762 222425993 270612508 520177752 211142176 2962809 963211261 809407383 637324004 613789908 909800557 423035794 730495033 874391381 986625462 618579054 139164389 484907453 594010769 952954753 684825113 275288675 386014267 555238793 837281923 724411204 365135621 206903457 872863037 750286486 517920026 356994358 946124656 538161913 252344181 725945093 240085523 928663319 830076217 198079461 178890543 456106146 589677516 20602855 945345491 967623560 929610411 279066371 264308795 363926460 350856213 611687656 699287941 508163894 628443516 525668509 911718617 678320078 5441304 190222088 156927167 127959807 714239458 662013778 805588760 226820554 926935089 984353959 319972215 54091083 392137495 423207538 656460323 835943358 388168561 346475192 720810171 250376947 752901248 832570877 108418527 138968831 686327975 155030018 695752075 271238664 638531814 903853394 28301617 43795886 674647451 401623590 59616239 688015388 420010374 40267164 690239690 235842144 204479337 821240609 94255513 615342446 255704557 350835285 875115208 38289484 43203892 816387035 212241691 302339972 413273424 65872587 620684216 831596069 890821122 716608257 662698789 693347497 590864113 864994352 373332523 645814545 395670994 475909066 114517512 441028971 132066095 361934418 158662779 96776033 608339005 103857838 53790951 117049936 998322781 176372816 865857451 681242238 333175357 645605345 176828287 891161567 208544300 621593147 293180411 437198485 807412569 352499393 487965307 585804693 766192235 478298191 765717344 52960152 982484369 683664122 369614290 520279949 250915486 98300438 418714802 469274752 868812748 413504042 490997709 518973733 791554298 775281733 253528441 801917103 468585928 473181466 493818103 564153140 141463430 208790169 436213302 499869083 823210414 256823105 191721264 285584223 635831945 625306002 863410400 983097781 360870550 544107403 87288505 668655088 25571953 516848243 401735049 541099362 978710339 146576713 732642709 229228348 152484509 921342196 317615070 136789819 22158241 141955127 439944787 289359465 961648881 281879503 450763939 825929371 419307065 595616172 484065012 363309956 392095346 386303189 740192774 23440997 408412000 413194920 707256264 399335210 244862068 216291207 635616725 826575283 310000714 52195750 571214132 883334769 176204586 557613680 9196039 274145769 107722282 47000625 292288759 655310028 852420981 407457946 829890064 230842942 376685474 833641704 336198044 17787414 945514444 170369841 435443778 718067474 916301899 32220138 170997493 565602760 314228689 847058926 944315947 399114985 854867856 458541274 904005907 405414922 404554311 604161616 212946980 223207207 918915507 546062587 761700773 308325579 417629464 235307046 173728187 768631959 105799754 384743627 618794519 938770228 769179929 322758870 264967417 742024826 804633940 939491651 674460849 964027935 175939932 81612243 549770432 953017005 746441933 510941261 91660957 541967760 141232174 966160539 599059042 502575904 441268614 837318558 764382853 735718427 440892174 743348245 72995338 434287393 660036901 595816871 431628116 444547379 32003245 23469952 786226013 955916720 299679088 556823687 194732660 180088658 691257846 697708158 145933866 302185513 87016191 658675503 486508634 933494306 70041990 80790967 90788092 734901262 318863205 756129314 385298838 330615558 888596134 848874878 97494429 677951364 274315670 21093607 534160559 755440467 214003960 633252240 150644248 410308709 465820881 58623623 851519965 929987729 13293883 411777824 220903962 525741797 755597447 140421061 433636573 397877776 859215602 532395448 689208387 939960424 346341201 921043869 950964312 704708971 814628280 911526972 442928538 413687442 533935870 996233056 44040104 252900971 713251841 976475635 519454440 376232142 454117102 208171500 904541434 376210015 636771975 274149781 467036180 357468174 116817159 643992278 123908759 192485290 887679978 351666795 330018689 899771936 109635236 19526928 497946021 104814787 621135817 166907869 974798363 297383083 212648468 161656004 114135114 609872513 368123861 350435864 922150176 400184112 802266245 907494727 907544561 312979725 575054452 109764888 349206078 372299625 994582948 150865386 459981256 431804227 344943271 894225947 14372203 349118788 410016617 292166733 127103602 737138021 405822008 379806310 578174679 283602437 139638813 352668585 198308164 73434120 170619813 702168558 239974187 449136706 532609504 469157752 276120770 20134070 30915527 509550441 996122779 762157015 58129496 108047870 333650281 70143291 146921610 551015130 282197517 439243801 43914304 338998612 267434510 13281058 573341379 866404398 700250911 397623130 633268104 951868759 274581365 409549649 471042622 661308773 587754142 558942270 400460736 973762475 829483830 873097091 939770733 979814925 323383599 83986106 516435852 930891157 123219171 878647515 4322943 44878311 657475324 615144256 304368336 710466477 755096164 416173267 62905743 379514966 230132693 482269793 676546180 350818191 327532111 754809987 792568525 655867741 33904329 541064485 978596172 937322913 899038248 374117936 375118911 582500014 800894161 258829107 721806590 603708101 254628861 184815507 900507464 34279827 953645552 52841856 947861115 641711193 680617708 248665923 63326426 317347124 885717613 964352138 804277945 84929741 18882043 201500887 114586457 533101627 240487068 588898619 845690176 96943192 901005282 335789709 932626526 126196298 416629383 485561549 154758954 149591322 267863635 364873430 153874929 186100204 542709757 708151103 490663236 37051656 488626896 840684156 419784753 872276264 353683169 533374770 577244589 360870048 963179613 328786961 717605059 969698733 881036123 581499206 229108006 245888621 998945537 913471627 632982710 542178520 83136895 903734635 979983678 824981683 107140195 420462841 985085158 980745027 900906730 128673353 722299150 756663711 721400224 778298366 360179809 474319731 335208175 806626571 571401819 731611027 716577994 113017042 271176297 873131997 445785271 492581409 874939997 255709524 879525100 416869071 318286903 148106774 228033973 391999105 977854408 253147670 242614162 247350531 831349965 416444897 576030728 502491792 520953625 530234541 202606206 784204321 1768309 219277927 681392349 118573101 300005892 301224751 844372523 102608306 847816328 151958589 854678561 954622460 22436475 718610395 697063205 34127642 458232327 843361350 31857147 297294038 746451666 13313220 276251826 707168377 202698760 492763136 773320982 562637338 708024104 889465808 409770372 103492779 638397252 511975283 140751618 677321459 646706809 926837585 137243288 598916862 735726887 364522372 861874280 579940116 680845874 520713717 611521308 476392800 463968580 220757493 286450980 215620518 138288343 75813271 210926910 361456682 418172614 568495593 205576046 512352922 812804090 380995731 476443889 931657443 381951532 453822584 474461920 415357708 999081969 930308692 220471373 208796555 69695800 128401667 74809029 980451064 396997326 753906788 149271695 647358491 532638448 900845896 303419891 534533703 936150160 855392657 114214738 27731129 412497290 987309783 92231623 697063923 493125085 818079420 999728309 161406514 953772845 154159206 847063860 820996852 891310887 116030111 34094373 930972104 174340790 303956590 81016873 840926399 931135275 762892102 487016760 815032043 905804584 831865629 439623894 138457482 166132945 220899513 682661269 600881864 303517615 424798866 207710884 834501848 513631494 871465135 481989308 64574549 373168402 215094269 976787472 164870103 240493502 595148474 120526501 621067602 853137086 549725891 931501780 286844681 488357988 614418808 995486131 677655054 391105278 669567653 419867044 341093561 718415460 622384499 407416846 210871202 55381565 876017617 386274725 17612882 154307776 709793740 948577512 431329283 965961970 851284576 938577896 787572690 279617924 623744718 395200413 582954555 144646787 120620599 159328624 759633196 395971864 284444063 190098800 741960174 798643479 150501271 423523984 679459524 513220411 572258324 962049549 494115639 295309747 576428001 816022792 752008620 410031902 692523255 138119786 917904456 599366292 137197285 115160653 450453989 365858767 620287819 397447000 18612756 428758839 598513061 320952023 814495284 447523726 183182716 588567056 740263992 405214873 527443202 926339210 971009336 737426314 430691623 208023297 633330103 863860684 753817120 579101702 401040854 224477412 277799087 303692360 218985638 313747396 193549056 409005131 637912830 136671503 632663031 755371175 455699186 227860178 936214950 550062238 477369556 251252650 321104908 619551572 980277656 105223146 951297205 307699146 11736701 579422351 287317351 198156319 666839881 916789057 378700217 775844143 832128777 501368793 224964020 155409820 694523483 669091870 939088813 202334476 409829554 633586570 111095257 677196194 140033512 680888636 910121493 255462955 858598804 554130972 427026922 565713140 768717402 389802672 704787941 320388495 773576211 417221442 63541463 988915680 851770045 420149691 193318130 222725254 965510177 169916309 270475041 41755896 541355465 608777449 582414452 963725433 70819216 983453861 342149515 822221368 189677906 609025049 112500902 350054979 727263806 88504406 903914647 269082201 764771087 284355192 236699063 372145255 763999850 691459146 337617675 421317631 588627689 327416936 140497197 94479387 152752670 57758988 561328147 806879574 171223846 400800571 290118334 223757065 740661626 507306676 611322885 357887698 563395929 667140173 55611735 154558659 86381146 243420432 317422633 253542745 542387979 198662059 875368726 882563608 185301443 553332081 833667496 425017440 144935590 338468347 316428091 20690232 665257604 314964678 712127201 286199199 701816513 964627247 991816774 882014125 287856204 430223989 183894023 347874647 112419819 413612311 531154027 743781832 983466107 742045692 525870832 183047178 661762967 533195874 754720753 826765506 1192213 557959988 624658316 797227431 152073032 557654064 146747138 602559547 333613320 31595745 228853412 375028157 602963152 926714305 607307595 721664334 627901543 803079812 866118170 158500482 164053883 709357559 870992149 327840197 39512480 468413860 864841985 781814148 711657414 989152595 733529578 679303930 437167758 938794886 775470404 662061568 772232583 735330609 476098265 876948144 213611651 865574487 288067755 507185574 206308543 781085298 675740561 689004634 606493301 868013248 65029673 382781879 329033793 688461272 333399810 187752726 303097207 910060882 258545575 892175500 899365401 403053949 48719262 775840482 924739362 575652218 510105450 47557394 429117609 168728444 932372703 674450223 436167836 677604256 920742145 229375078 121997376 407368361 224564106 883694865 178569196 827059171 867737786 196360779 650095794 574378098 31371047 939795371 530069296 259506687 302718541 941108637 11420287 793218643 433882232 646481735 478887040 838627398 939674852 945697279 616016996 937844890 174399452 933234341 886622171 747421830 529203179 658787971 292406617 819328512 175836549 38477273 787992704 959369104 280441006 632833095 379150402 229344833 725938629 875697294 352144537 506543024 747030416 445466315 642509940 855487858 931793449 524634308 286358439 136331834 844704910 73431964 271293332 140646716 648597462 994268368 44643631 872481199 273445417 336863712 68868195 446913339 100332850 71616442 159767949 345945547 890174673 645660230 969790293 19552956 316936796 740648783 161644023 933420481 93868819 872153753 542642227 435767354 221636825 987798759 781713536 575618805 545547170 756592453 290609485 743375194 961763060 377754742 26761577 789806954 520745681 923351144 234672812 237882242 752731051 416518457 823922225 752394064 701722666 62450380 545645379 306817351 302676080 389793092 882023556 417845509 859540809 242303079 934696018 813795587 980701803 779861323 538204890 692192195 962610409 14866789 405238429 311406143 52500210 641737075 143973549 749106885 691857166 470003163 126944783 57983533 92960961 461660948 943520712 596967083 150181275 753448853 460329537 626873274 349576770 493653590 51909492 724165008 285459285 80706319 714151316 38150072 698407101 636470082 349037991 444701780 621844551 144845153 333410255 729994419 720334290 575303417 665166637 920003441 474992809 617775339 839552937 416871280 722034576 923872972 972316606 115261765 956963131 67214247 46001778 442983467 429757888 113779584 629513951 859725942 970315312 122481498 437310135 627431195 814050826 899214664 921851161 847361167 615669311 165723034 46833725 650086394 888748298 183764722 720177611 90716097 493046553 326034458 277151224 705819447 920605579 894721369 571138201 350839978 334597493 63916116 173063168 345123137 474856347 563341383 544366488 461230737 882843678 563729996 578160311 524869068 36038667 823988184 676754504 792160868 646125996 18868160 160857707 681891123 527253267 170506127 256229867 209440197 378183206 205248457 891003294 687717019 572504144 873853617 945199863 318641580 860459616 594164666 894722519 352688584 302935333 239346608 331205188 138003985 143318301 716273704 520244360 172639594 242363808 657021230 275455679 436376611 765866968 954591030 908736124 883937844 793396964 178188029 925806672 185533394 911121269 871093038 793008494 382729048 635099673 216396985 730106634 344750727 540286372 439629599 932714600 242076902 290153967 358812552 186561872 661585626 798182705 439570759 911053828 170130689 891325306 299931640 284099822 262167796 34078234 642704195 301094917 321705713 807977048 585921868 177108501 313654501 493380095 150057260 739848847 57324531 280933970 549883300 297728984 446105225 247144898 214447153 926357535 272922425 876893932 922258109 29796879 506813150 183826270 103930821 475620141 530255124 248093986 528843467 415024396 454189664 395523638 934947444 880184612 784228143 925580900 647118246 775778345 588786517 755990109 569423143 550972999 140620386 538935458 678224540 413022668 951345852 149599006 438805111 905947633 548008378 911619756 94533927 196193016 832033897 547976163 361361781 41348110 584219071 331173190 275492220 984923577 56281087 626627691 324021754 724698246 15152819 256602992 635283098 467137293 479837350 779252030 691364296 17931313 939433199 79684183 863542392 360253973 899639350 344010168 367158517 187420855 792808054 802864163 954857436 89897185 894845150 864602670 207802483 685141786 651957840 195745278 350698928 869578619 794511119 767161296 482561287 734721572 9828221 169099304 446983407 561471482 284220232 878974716 341963584 758641218 358202687 325212835 957876620 471945095 694150339 942588185 411374354 887469495 174534036 418175668 73554760 394909307 687953794 705436207 692030454 582830920 5788998 500500676 769284360 18468117 333458205 523749971 953978878 91637687 25758729 917038403 748614505 412907025 805035366 831619696 837580843 585960309 304435019 858116368 545994357 512401869 120202505 414716144 34103967 256183229 258199751 648173060 25838235 127669846 613156061 294185784 404102736 748168801 260768372 324509655 917802450 819831923 360040440 633832179 559166801 459115070 385768799 146316628 733797920 474275147 131276920 548131302 89797927 279026876 570985447 283805715 369102403 287347090 9973037 257705188 985025406 643572209 962699786 483553435 19390911 614703681 90723089 135530699 572637975 316766462 415744619 739047781 752221538 359229367 359261058 379630500 812020046 752335176 832865026 392744144 533499170 386945198 835929991 17874063 28826278 573895176 681321604 84965515 662811380 454875370 518223851 804891640 394508112 431751904 918251973 202117248 527256722 324913434 758227403 829829940 963328007 295485631 352165180 429835739 334512146 149344506 137689972 641670401 608474843 944601371 28024883 973005754 186475860 111298676 504198502 489417893 704071563 775899280 51913604 733234193 916378637 653436910 905059535 979947734 363446239 73251151 441414900 145223655 47289922 639280306 446911293 765800773 617649728 531824773 826421920 358620599 502957565 836655706 825684961 534172612 650756201 866994085 693555826 308789155 62916507 786954672 614120845 851378164 425464495 495034933 154321760 136921122 915775783 196254590 43950304 476834272 306621485 675581310 108471495 572164802 162438971 573520489 37760462 211968613 525545791 708179422 665202949 386271839 863150913 448731683 965289990 183561405 482909276 548064366 856250264 150607243 854019895 220999125 589797263 216711532 385489915 534799153 865438837 861485296 666980432 685943754 302059686 555372902 742563690 77862034 926900340 439298906 447768004 162108922 829455930 974782917 411752299 798774888 451978758 522927840 809518504 233953383 799900832 849905784 703891918 420014003 783523710 353465156 206581333 884496986 766664339 647059804 109637662 106736773 966477855 745762812 334043707 728462745 39881474 786916537 151281464 135219055 639751747 358313951 153648806 557459498 378785947 924545783 682586406 396956293 353806465 489536894 853286782 984426022 371516860 693479275 236187899 6454853 518825068 594900311 25329113 432496254 636169888 623888890 389699316 709105194 504908649 912135002 263291778 327899575 582973028 185034853 481235131 883543670 677664039 204996062 275704672 927917735 671065704 550802566 682718465 99753407 44038323 772518230 222694228 9755254 410711501 247728355 327108393 241986320 55497508 816154487 142966614 524681404 224352617 528335653 342325594 634768002 273662257 509307688 476449318 153253433 482256751 48995891 326376329 150764072 775038862 697651498 491476505 587404196 555328263 262305013 646184062 486989317 997073561 172731465 499277535 750340959 51011954 144036105 157394266 84924739 57825342 812738895 98371978 107622227 933115824 863068225 415514279 610785043 966568147 13808701 224027431 74260623 56565512 812624339 309099274 397809816 645841134 42666968 466157260 772147708 369359029 943774520 393969736 9488556 715259796 437578528 41241901 885552133 531501126 226382951 375227232 571669199 950553251 111988143 557033958 598048446 834360657 392091333 140693705 152396236 488337338 779333027 293245466 175865647 999720952 607600689 968308831 564917488 620395929 118051576 991119190 69433143 865461058 749283034 780281566 571237540 532487650 635511815 427672153 149250221 467504191 779938291 366566985 6443380 203526169 357046552 644833593 21063111 807201884 651843613 845428565 802423409 242026013 29740362 210334849 118724935 138526628 349628491 305351654 972592624 672846415 61641602 414060515 373864691 959148869 427741773 660321536 112026423 639633974 948834824 180278361 935569022 263233229 765544182 322846566 673521831 801028703 13012022 272868736 984244257 54456289 798583205 552185864 794212207 378347846 870247817 154915515 953469163 163739116 457364419 521300407 967562723 425117432 178367636 222418666 856583230 502918578 633457930 538320164 460731558 595415941 838083762 719593717 960500111 277615854 941133292 284786550 984773400 448500618 266159937 833527784 242241352 660616256 641636863 403210794 32272243 561564331 678816082 550635672 859423149 196063306 222859011 451527488 342318443 894783722 995550806 880522021 411027879 169519738 606381128 566003377 124357246 241306937 763886306 236701187 463700089 782340206 307717860 466803520 953147490 754812437 982636045 68629644 762307002 65957874 356392182 487067687 85628897 789534032 401271213 900302063 770766085 245280858 765621667 715170849 764780538 884685267 832323525 329599993 331329515 495727514 128569878 503775351 28169870 916250145 428038459 792716126 643882477 389992621 569590829 792649335 80739673 348441298 537181425 865995840 879107548 36601016 599824122 997250213 830696864 366012885 158732191 325813158 338966163 580349999 195230410 363408368 727253758 164918299 481184403 156039290 362829173 576382842 386771338 705223411 669537958 898634620 198066146 706107937 245111309 583123014 499238313 553281420 182200758 910452149 889735598 681102629 245600527 570941767 289577610 966104015 652805815 54781404 779600029 526424379 434090168 238590495 989994445 698713124 856312556 862261976 313344938 1279899 46599836 20571178 522607673 486372621 847087239 17168268 625717424 523055723 356842004 852332419 605817941 627736811 724994165 468241976 281458694 246045051 470889246 404495432 845482006 889993432 842393089 170631812 531714844 379308183 493858491 255098162 999797813 756427447 545681029 478733546 565653483 579768811 764890625 575378015 336297086 447802073 1753059 855610278 93168269 306610277 959174557 925975110 451782736 456430091 766896359 65636930 548118079 233074480 162696652 212130749 807318071 140795572 412403776 613509792 995822036 390249031 547285567 212508332 262728111 213697831 457264126 448899345 325607532 988221277 339794761 791919805 269870602 13333669 285338325 280265052 557508960 798654765 909390684 704013072 386500696 910806594 993112307 621524398 261705611 463528213 728496223 870017490 297726653 451871999 367415210 407010110 980023958 783956132 21532214 694850963 110295100 234151014 122955374 852917480 207467005 567980418 391852262 334216815 150219171 604677760 526497839 436858437 305998109 573718672 642885896 169430127 957447302 986323352 714985676 701849467 641580659 642951949 133743856 461986719 751174242 269448815 926309343 225724548 133226617 623274643 258441222 706836456 18387377 879256244 511855767 348010896 627979970 878512458 55790826 942222284 802893108 712774004 984506982 112474688 827155453 43895859 906968676 825973706 666136704 90705352 521952196 524801321 876649954 62156959 635924205 201334198 506983244 468215363 998645174 148999415 552156938 248364064 643199610 894592255 676385513 382412523 710839969 853812888 258470371 604562817 277202638 714911555 106773390 926590151 38566666 143332070 636032535 215497931 477635775 693560309 834771040 914101869 967768268 121709798 201293671 768910852 709958136 312942875 580932047 307851962 3653150 56140237 679989269 443737788 435318193 880025987 868489306 802375 317010943 139504145 842715016 240956961 505750957 832699082 240350506 913755036 656708417 326141496 759132203 935740054 77213257 201054366 606333826 228743354 474478791 537108021 508473283 739407902 435447509 41198681 169420619 600496621 322639424 261730212 467618662 895052171 499557961 847435070 631859880 744549221 445504818 525247971 325992018 336387209 468366243 614102120 236791451 11037257 946718103 746586507 176102798 170472703 923908828 342245173 582869879 634664507 734044717 308751047 702075121 416346695 149267283 906871222 676006930 234262150 255327509 597857982 994857022 381670235 526100174 941245128 780594415 127653211 241473165 90011428 543157862 535939995 15523409 240719768 371007169 22287759 942687372 137561200 592704113 961619561 491152193 169103047 35788475 378754052 855393775 414215741 665011023 135838101 645159373 332712743 243818334 686545619 171176817 588381185 825711260 873224169 691341530 830272183 313843456 820703897 43158377 705807321 414240959 689036437 556689309 920770534 949679509 836393192 101609084 388333125 212282367 269676856 383628693 258735725 938191657 42240924 666090481 124946734 206107571 1771025 55976604 913791444 544035412 674975713 708990213 618648035 747292755 361803022 849680546 23380303 853256231 279612873 731044446 189903339 743723882 503280395 696114140 159599862 460359168 385761061 374411427 885505546 835003633 571080941 12577546 652023928 810598581 298811259 843118842 759183713 945582557 685855712 301174233 75268698 561458707 289586606 787141658 875064198 158857574 751951784 685310197 642733676 216452381 152375362 698756781 951107405 704856739 710799792 857188026 915449648 444306230 715196257 294060005 766208646 952855543 664801887 336621456 25400828 634800047 246383917 793122836 503403392 98697474 743336604 623124197 723410518 197804648 791989522 415191187 873222425 956854000 702725603 627364938 802298920 337673707 852342743 714777727 278850701 519085449 724940493 5200597 322697345 526044446 251546125 994974873 662606135 90302585 739794970 239514562 941801923 942817884 254105225 720846036 760902643 367289085 550896087 569749578 373859505 899319887 160805530 830949008 812057541 978985367 492066131 21615984 88341153 416922574 251574403 398708280 199571954 59210586 325696145 993722355 795842419 97648620 619962370 563221069 412319610 542522996 416180613 37286370 79250248 478917939 381391028 830385783 784337185 907461926 873665424 292379758 84548020 714519616 47246723 902950252 359124996 57350792 765271590 216922965 506161400 444449659 898615967 988906354 505319923 328085667 138567543 778010729 724309512 573719008 749274974 205736632 798655384 515886662 807628056 611313269 949942500 433968299 289773569 935736786 224109666 558632058 734419635 742388163 292626624 561455118 795323892 975045750 415228347 446957696 158670651 454064504 657415979 464566960 683436749 448725844 188464922 772500755 842828522 603195367 173723545 442223799 713934921 453188835 829022513 55328182 860154569 423072358 887507782 827492926 622825862 841901752 221859655 308668445 694628203 731173853 393480790 819696233 517895718 961690303 666014831 794167735 546168028 22446501 397136794 67767571 645501576 260811562 246841906 985664540 712346064 403587060 315334869 498391364 536442967 14964732 967010269 7078803 566959586 334054051 466448179 549773461 61964740 917937492 607450761 945716952 358383014 128908092 111663005 546889897 521380844 553306552 551170468 922525318 436807153 682941129 147562115 330762266 224855670 334728030 663202455 494973798 157726063 725590448 899796373 762360776 602050961 317899707 265578884 211339983 299024708 914551796 905992773 351208641 138961882 588512613 767166924 70952934 186647093 216968120 489248727 920198699 725602419 240577437 16326768 541392173 338465139 670726607 562459907 537872485 696309155 719443830 135514048 934221861 676533161 5797470 104945540 259242219 944159202 532446643 149647914 755716247 462707961 892839456 63506962 177935452 934602115 508926891 803575411 67876532 417556849 128915400 629616145 854358888 722833366 213467860 449132386 614736068 821746261 484103690 247966553 733261908 844001581 161831203 651798130 67022739 641789508 454120120 131440012 665284066 466364309 501761500 477105684 580606790 612325246 990816770 644892264 352107092 740395027 828223508 487814543 427881049 613705798 314216865 410759330 129294082 140272762 923708055 782082446 892661061 278434873 770605559 714000016 696236562 112131724 593105276 436628292 693130626 251473199 396003500 730967737 596946394 268456920 645001670 431864547 862221588 618099959 449435927 599202231 925501941 736354216 91635517 50750207 960243745 10280315 998976272 571030678 738708897 176902252 803077845 798009465 912001151 194562568 282634237 723567305 311475163 988925 227217207 990780238 592683765 595721097 120445350 877722431 828605642 539907002 23566827 870144492 376116821 23516154 928964083 576353689 663966886 278685729 378731775 211555210 192314726 302361015 852805649 649776112 649789096 621199410 617216897 163599825 40526223 25084704 505013647 531166773 780498955 258846600 995853613 926804217 79510718 870943015 935810324 859927078 164465019 77806978 110045239 385460532 405571722 513334190 623369248 865699106 654224756 436110431 448838021 768041810 54889375 288736782 506702628 491872858 180124654 184224489 87974528 477337380 293356188 534511048 904994240 975809978 969654320 630881601 552966148 951088894 442620117 290370719 923462219 182923809 766307054 959090437 260161681 494195826 28690149 763364893 876102848 490890826 733301064 482988549 115527345 388490096 509423287 216009103 388358661 713093878 180176924 537872145 331724198 287728840 490014855 135504123 468058827 934369413 343648312 418133693 960114789 227515628 770838378 153139328 46214166 789765366 325552875 768706872 279350970 469808612 879220155 735180611 876956704 526418998 605825348 58627584 407238355 308748356 967777667 178468505 489971880 665479204 613367070 227895895 701094217 75466984 871194167 512244538 947984646 231411964 539002336 234949969 140222324 999521601 68908427 547682750 795695435 869195803 174311155 778148918 822762762 635529094 491878565 777756099 847485833 273824764 777986838 818059158 275818713 975750851 820830606 917236667 652607744 423076655 79580466 95404531 464468730 941520111 87513558 933155775 361415711 23996308 914619303 889815606 603320399 215892650 638775741 290343648 710270974 691088441 567261031 280769573 241967674 923156764 860423393 933730052 76733423 350829092 702224732 10884743 89121544 722315900 404471526 891054353 14501452 815741696 980737797 865728531 709145905 939184166 499409523 897468225 142778075 185702423 489125480 82996705 633306187 202052178 273981895 734104643 673376658 385878702 265151152 307430804 297711911 891679911 782536285 108595755 806796935 268506732 502040821 213785067 579743771 3728686 545203664 261831180 369676266 237508301 201091635 494315164 407758581 486788504 490355775 605757451 531683430 114329999 737732882 675204951 477377237 743876364 847782669 522447554 491721926 835737062 962277269 509774745 861559022 912654803 114956646 925846457 617392250 803371037 430312491 745882512 40178485 774022396 425887540 39876688 341592790 177936609 660757647 300984207 899498720 965310564 560855941 532760775 496074306 184806122 708750825 842443960 657663946 825141830 800794571 702170217 31754827 263040741 413426423 462759487 18477985 684068112 795720700 491615517 479877249 509217172 146708970 805357621 421491833 639857574 929062119 373977967 911297848 332014692 900867212 45458580 464524857 429848145 632133027 639430918 541779998 593308098 129146813 259586418 599532634 702382262 141271535 942319774 992267887 831568041 954729260 470188763 519693406 547735067 480642586 447496403 522437815 155363393 370534546 836440194 903368673 222231116 740528902 184760048 787482050 971026393 363930454 943700457 785773670 109063146 732072738 988434122 573041672 92572894 767679489 140225230 600067914 567145870 330612437 581580572 670408464 794579030 844547356 861307724 49455295 309418172 919576522 903129859 15476981 931125147 958171256 171604582 816199386 885642162 751713431 684221055 733057898 287366397 524918440 12560974 274144257 821526260 386342537 944542086 546736 115337350 829042766 511169118 68085135 909771457 702788508 207590233 556182985 710221971 57650408 835135645 510353085 274991241 987273055 941476125 560936911 237651673 237848667 961343787 538319799 255793030 463640939 17777152 143115026 64008498 870797813 273430268 143116815 378728549 429248743 564773345 78687163 374851149 532084564 878749620 889674079 946976445 56360782 407082276 973270449 263723386 203380345 669073594 131829555 959430320 843735521 388115141 614114335 106696535 70564829 743647550 660552566 214089277 873709953 561601552 744445933 352274913 739678499 539456992 726215054 896426796 65817484 320393993 187227507 40955606 918537892 720358448 36093655 878380633 877598610 906240380 677162703 464257200 308295580 451238512 734157058 678307509 681257115 640085317 459116844 979205445 427167440 804260764 766715038 91973406 505169296 284416865 480609699 15584737 392016247 410211971 436628043 474713331 891580243 240425636 894435391 877212317 467627843 292769401 912233224 372182204 973420781 51636530 406238796 280811510 455078483 570126266 17487067 380032166 163276800 41560864 851531477 867598345 561207896 8809425 840424933 195402215 143799536 98667599 151642923 864252435 754712160 731325992 734799664 776693941 515654613 3986777 85452314 988280953 514503330 167892568 755817772 613471326 125803102 924769982 68422090 262873179 816013324 220191655 625392145 119227156 578919965 931643717 373421364 322173916 890647986 743991622 166795513 107701819 23981785 501504842 528803964 459525933 832069412 271945300 433954050 490581498 584232270 770625412 969107431 370522425 902903066 466760962 936867181 791791815 816633300 682991158 453859326 986751494 64370276 97498783 395502927 794786193 752655853 78482326 934357159 101342550 815746806 387056035 590677867 88931563 324478050 940876926 498007709 771677674 814979068 990778109 798926094 993452891 502004034 433431061 354330432 507941132 595277739 931514347 327990091 895230905 278243866 287381490 740659745 258513867 971434113 373157679 22031019 797711918 939413485 805251682 984712567 59016492 750451810 981426344 900431056 798407630 468054071 482816643 65170904 574713990 359334075 632256595 774497801 374884665 30855997 447630302 187564080 13116739 405194958 695654192 190906447 172704970 575266623 589503510 577379739 353982002 486784253 6711810 406061210 594089974 624952108 802484501 192548014 649110286 659717678 230462311 834866600 49176267 232454609 848603056 543370907 687190797 447705274 211132398 507049277 105121496 187622939 241837370 516765375 85448590 375089438 300960557 588574570 182621477 133694486 134317426 513973900 151821842 706238207 445426840 669805740 260878296 22597164 419169907 490585025 378706688 956106773 537886136 933307396 867532652 998590840 957138650 440068940 473797607 293909747 881332675 213179200 784174002 273902863 152063827 935408691 113086549 436708522 826465754 182049484 948152560 113070354 373186689 67063673 112326234 160545669 388007296 229351204 449474628 346670289 36754119 254653935 552315949 272460126 591914027 660061643 33566677 662064387 177944779 830182589 725426975 557986032 370539522 35284926 712566114 423908745 460005956 690208635 472590105 307134277 932388146 882022673 323785392 315427496 914125040 596240693 813021313 452374275 797745213 288601577 591638345 67926993 805117102 594643816 703955064 139874132 975451656 863705746 231417177 396080941 985611126 777827571 24489102 462571834 359054318 662059799 249445936 45568942 591017302 512163355 742658601 450916618 108974383 476199180 350566369 354475804 512399371 657725244 898905998 923840753 758617379 294116726 953777497 635802224 773198537 882245047 971702768 269833070 281989969 111952188 761372360 580045865 952331301 384481387 857816275 120905468 423423553 681534090 826050547 361775904 859859140 933946231 60861172 986347987 38629292 464288336 702511698 629077871 745308854 306956658 977796755 506512069 662289528 417171923 851877966 551239575 847772897 589474655 16390937 910779002 806121941 942992116 511866531 841805815 314945126 788880051 91873739 988700511 871232683 83444481 153535166 170141011 702091075 921595203 16549409 95778788 946454691 97410737 6564730 652739566 971867650 251864799 448138228 30058795 984377422 830728656 746204445 931517119 413561426 348443880 449983608 289021652 344671619 968858110 267132893 969129935 419290966 485397673 115915188 459263582 693696953 570376711 397205305 133401547 368648441 624725162 527022405 66271847 275949068 438172592 301206623 294180042 230674959 929544905 454922404 432724687 933366041 114392387 74470025 929143828 272848917 55790796 610468557 58717244 509830175 33868530 618799875 48514170 675342070 87635894 287101626 495802010 725251436 146519349 676364473 594641377 882711669 150839118 615121021 314332703 726178397 438723072 127308821 380604842 617893211 577860589 521268479 237372022 552350996 963639080 662117082 517216786 286166520 102687033 608824676 393532667 67043843 167468168 83637412 502736952 426708935 41309067 55195038 953985244 515731111 628246618 147233814 385708047 512477833 157478148 839416356 344388412 505540603 532111314 784794064 424006542 877805167 491473398 337252372 875207494 982886374 817258761 871787387 333285987 321116833 840897250 202253290 505246376 487817507 249826797 756217793 276575681 153378765 776090156 897701894 916681296 539925752 323308800 176392117 590625094 461210128 549443161 623633408 180625550 94535607 791758418 544541090 635949038 557408557 567010344 584953713 784795034 506858096 60357044 654899218 425812559 186585586 507349243 851148971 921105357 429477474 383909745 879071278 846126751 105883930 688898616 802111536 550690210 271796295 533002272 974721715 440122410 909720798 510323295 330026604 104176298 699409872 183171115 943280720 652045190 40697475 419350600 135583480 634760008 497289276 154525131 492374849 4943014 40890811 760596543 48999264 932318346 805236820 961708981 260789392 767333534 948368334 379328600 536964846 881718455 516274159 421492721 720835620 760925364 619564995 554975552 648750750 203475158 586496685 996224005 972740494 369532182 395115640 59337213 951584602 563262084 126763653 428975892 403144482 71031998 176974329 777355796 961427668 865482906 650477882 254494655 495834578 782132748 648994206 494077403 590981244 536169433 712589891 916869144 111155656 416874099 77857812 579523418 19849001 945893651 373752604 922185500 601380212 466237269 935878226 740838219 768602069 794572291 818827947 935073428 396346603 565164291 634493003 859266801 875657107 807035851 135795333 543895144 472694045 276465933 747909484 608775881 311805277 901773277 968868959 976779067 152361414 251255977 645523300 611479593 937491335 422953027 545344399 476942261 997818159 949241120 686884168 801795434 127538412 21617490 800750270 973452920 170847468 884872239 903651259 441696399 952575807 455577316 508092837 487180007 191460031 565352681 310016755 588236415 357781536 867107065 710723314 693107206 593587892 920439617 691947215 641843456 948189297 374557488 388888961 110739521 385677146 830699266 556893688 207334784 480713718 215712477 992725631 379359886 180517748 143142350 14769951 374402452 550228075 895260108 931261338 917364725 199422917 600155851 117572493 847519239 396224485 171226858 811259199 747101439 988040114 818109853 211540070 310988074 476971934 144903006 353543368 878592422 517529829 308174903 495880802 532965642 974702420 891644384 302118998 277401875 456527069 24486344 910951257 849369916 58114250 479665874 960793259 651175167 895018513 608312991 735927292 644297169 486801850 87069426 308969886 397370922 400935023 45417690 639430406 715065631 735867188 707298158 513135631 945839044 155556346 898030830 159396955 469765376 583716467 174750361 520646339 40924858 212387335 747011312 300900171 261348337 115760695 893402155 558640920 247063750 964639801 573487495 498855978 348718525 277764018 532329580 883487186 905946279 864677341 172815606 533967602 813231916 100381928 181208596 35818412 791978821 719439854 411857370 989603843 152365537 382951885 423986986 458808055 595672084 991729842 322819501 231014244 768091188 308551875 443728623 765747454 1671137 743115738 104745547 749816345 305283515 830862144 162469640 15468198 789188337 735261599 339661977 413727751 742352119 318147874 676349022 26579946 191120278 238366890 753739209 971820108 312613439 777500695 32848999 500082094 696888915 990464771 137522014 366396666 861655231 883536798 343900026 335255855 442788615 829055956 261818902 328156781 444025173 406167099 336315915 264322795 770477909 766261918 95042348 57768379 378211629 210880620 965634989 406118629 85999850 631280159 79293854 289889884 586339269 531527033 164029499 829882920 3200260 490460146 785615842 911698805 612303419 607231982 291462250 840090038 267928775 306068532 942154105 584865602 349782873 495272847 234413774 104249718 973732996 929777636 702061192 406557494 885682365 139095623 728619735 59166026 334984411 319578487 841595499 146325472 328497280 578279930 704787734 433987476 671680972 108982095 473189551 762592456 465060433 333173543 8426074 197974897 68283814 519431481 163175335 446441098 247926948 141608863 673909622 882324694 197094781 649368660 122343238 96478378 150646793 286262719 843513374 366971960 467924436 492265577 546311381 857746539 851962484 286821660 18929913 972561226 690755185 862331673 286088171 886684759 240135170 597967693 500981868 929853259 217391205 528696742 115351763 10682782 140635956 360951924 892235942 835374748 775791599 957669335 663585536 795333928 332539873 43545686 596395114 336119620 281671611 260187550 996242923 874599107 623581616 96783589 248964583 684553384 37623529 348809668 105611812 524167469 727183290 551887273 233047380 15634231 324012845 246374211 503251141 572096387 135970912 326109482 22556516 516990685 344426731 781943249 910249732 397935048 856077676 655222139 283441455 1642154 417064248 777999377 636087745 523296326 917901750 854941397 749890750 437357029 713644766 771277257 402641285 769504709 912342469 654883237 316340794 418873804 882910076 684527250 951515778 609167061 558814413 466715602 286163912 669752636 815998005 240557015 395745256 611863117 773525505 942568007 496215842 169678483 342390362 792110586 630377490 364295721 734154663 177530269 249166614 569402462 535648946 5716816 523042309 138451137 255288178 821681078 276914971 377008700 786482384 648382402 356266411 270543999 847228780 608121409 560002116 757189400 554137770 833287342 552893341 818972866 667340095 168680029 866715896 298673879 919524240 769766806 681306957 448870339 355006805 957574214 338598131 903031961 61005211 375326942 577346189 365781406 356738632 77626849 563576002 864558417 899411804 576196346 396178075 705688858 608096318 861189294 761632237 338929245 856122921 342156395 891909555 33929986 135880659 116587726 279735726 329419753 777363217 465636275 23164616 385894662 740576448 719327639 926214916 846265509 419636846 342898354 385219496 802593200 983585127 28387437 532413102 211828265 829140112 496387827 923216237 724850097 77887219 693207068 938817703 969014081 500872665 854756769 634439488 415394501 618076803 711506499 396076610 448578884 621263844 677205577 777834072 919728943 835622805 64097302 334147226 422017863 719991167 399235089 402795096 412956228 792578337 853258743 319889306 65443640 198553432 968198898 512673444 810048185 514946095 544626170 868177322 368788716 784772893 321438009 112159081 142823399 509064836 324059333 128405081 102138983 924843636 656153426 644261549 501277505 506413905 84459530 630537629 586659227 845072509 424824102 899640043 133329304 443886065 453007048 780787742 457509424 48986784 167806667 292972339 850910279 810681687 207290838 454967692 85702183 317091172 166616329 746923298 373981305 820305113 593702326 776160778 913752297 470330862 259182732 226779808 376535511 934413806 684836998 158182526 76102946 860224677 778289690 184853129 318997553 296770247 161073291 18547964 534977730 769039380 529655656 10928663 396000115 682772016 879890796 884199548 245340442 835345791 506892198 913239178 714040055 523023828 542720622 226140839 297629476 242392918 225796457 81882851 105648909 546619108 905052135 44279910 507308106 634274182 202858706 525676626 749064867 236843921 831470812 453168512 214002370 799258861 382343433 89704104 296979665 943822302 640896546 11383924 59085011 106920471 779083660 627843289 929394569 288271039 462561698 476871308 417041124 823192168 750976255 117092200 688950187 366344017 358561439 680558290 279616284 416799377 585317400 139648766 11132016 897120799 387726795 374406436 353672487 748198405 83795588 443811583 656665943 879801871 613757630 540670442 956788059 626299361 361307313 408233457 88170407 101855911 165787058 323398393 976571225 504799898 421321825 699826878 97861609 352008594 588170088 573078967 606765169 862522728 555420962 508321884 931564670 984902879 432833989 369355738 482785181 917698600 538654738 888536870 302184060 767593827 574620360 206749139 578313679 10933697 903324032 744664860 586199506 907511145 314445413 680736805 319144917 496654094 364145612 803071993 180038346 258623281 997479222 226099842 26924763 530198728 137135487 101819592 874739814 901357228 280560013 584401157 13975506 286106737 154195533 264905390 965516523 890124319 792951290 846540633 207804605 935931122 365131629 734734618 800661925 998481367 108718502 832647300 14596442 263742721 946313233 655847479 724353364 488218923 598240299 914420883 72094878 432023429 676450192 543597470 249411988 749916045 325292046 579773070 874954897 491571758 704095136 595810801 472990524 662486922 573174627 431560109 836421390 750824763 648511081 933407005 795505293 610862828 232519567 575590969 28262572 989836699 87783511 174390388 677373256 263168403 181866749 30129561 151755733 961957282 812837597 145055932 380760308 497958345 771310302 108717739 410166129 530462048 692675222 875670994 527807288 317452917 951008259 185082840 161554779 715318573 822717068 832512187 581487167 342728377 998384523 747412659 304111738 491290903 535353523 611460402 454799493 740869704 754939492 410229723 940289315 719902894 516452204 860822269 88626628 395718348 83382919 863890366 508558408 456329555 44113111 394089861 991357544 361021064 84395728 236077680 502390763 332378084 513426269 561432884 631146172 979799853 532121704 51785314 695057479 904174935 367751734 561295751 223376330 328803693 534557337 206029206 850055938 28397801 710225061 89152767 570821064 13200736 701994986 71939504 617427033 969143353 997530598 610364640 864699046 247263526 515038579 42279148 714408045 567845678 674037397 571822921 19429018 756390407 728621571 934322275 836403457 665291378 940806141 751191362 929189474 22513304 484682810 63434809 911302349 83124296 746679926 912147067 337330003 167430044 371679110 267560250 596723688 509178702 127258806 221219238 785469718 832415795 633078620 184329262 87661950 124138831 256157506 934171325 794994332 666056560 841747386 476530254 115650123 831745299 537815673 335023112 677064339 806526942 866802402 750601220 676533934 973680227 761129534 256501321 730201329 773322605 251953864 281967253 414223391 432809834 86601902 419992799 985726725 202858763 368851153 382371619 185413956 751042567 710444777 254549099 607352128 926240081 614513175 798305496 692996099 295047918 61148511 877527856 986626088 431044115 291359395 789221540 14294572 606295714 397030870 805602133 306813266 693577460 941839857 137895611 757822296 47359094 180743156 288127752 132802262 215699736 914098966 755986207 667168923 879161605 75698904 162080239 144601186 318220960 422920273 202267316 380998010 868141245 159306224 732861092 973878014 293635722 954920486 550400588 582198092 222056869 621067242 236632667 566658541 954982218 180996103 421330853 480770795 23932082 119241760 855615190 586896491 874567946 125111171 26035999 81598299 727139552 884997406 639602994 839446400 47320002 457817564 793929213 379126559 333718987 184237528 293705843 890823465 535636606 48404304 906221344 459666656 14576291 547446102 332935983 908584374 433848261 668706592 332224092 867805214 227018355 154128371 764010763 221712290 987600170 590003316 279799481 884281685 127223592 499996479 717847440 525308374 874506807 383620587 859942690 499324640 361563572 650152622 527694190 431422405 849148393 887695838 163009100 138472113 893422029 675672720 351007879 989581685 15110790 419485698 904720439 809807241 356349871 436805946 212447211 742133942 590556135 294768775 458871617 537854242 306864892 938273741 547139171 716429630 957870723 147480588 659787391 962443525 969542831 745175936 857855100 791914783 335757485 308268444 994268461 602534811 39526027 936424154 684101648 65480651 564564471 437836815 122068455 444044331 933999123 112636450 276013278 849818470 206833898 67720280 315095474 195763812 457117726 815827641 66185799 389089231 281537079 211841902 241892151 121708756 216754225 844580958 179959480 168596201 115867193 171740982 746209773 212197935 118801938 246253423 443739795 96719573 679612434 212714554 812672908 234502352 60315843 262448778 956758673 528483564 522317153 475906492 882559233 491480413 388454067 63948574 650045418 685021771 716262461 441135759 918256789 141473801 478369158 419498516 988528718 888818529 338858740 547522254 627599320 686568314 467932551 145873918 607184769 883602138 560447360 1646786 389673567 493991766 454814921 819632696 80469853 394369415 555434043 607257916 883444286 550251910 354856982 596503387 449594528 557208853 877164108 619878625 902083885 83530860 144254036 502080243 781856458 444609935 912978370 971168630 335415371 760796721 936881592 878946688 581845201 485485979 377293155 258635389 504503678 567858313 487681905 255553513 791541295 310030218 764365887 575950143 814021922 46697540 940784422 601210069 159826253 122984886 919582301 440288286 830315646 80197545 792646939 242173586 521623586 131038924 973064508 276650433 550235321 934681406 889023171 257401879 325692166 261082143 422934087 640246145 206053359 658152555 43200104 936901993 623719920 247010320 454336824 862561439 747440178 461157200 163449298 143484284 756554486 291096302 666497662 366564291 18217216 500735946 584771669 74689356 826743638 76179754 209185004 691086472 654316888 493583219 418146322 107957389 336719642 344864015 171276327 551495586 455009685 72166193 238709279 801592600 301857636 923361746 903617997 850591671 470319492 407557491 189983436 526321615 953294367 244588119 909555064 740081350 432388802 446840266 342138144 510761770 813946652 844432765 703621138 669586326 904991460 168426939 246723448 184112346 354029221 484375965 631166934 360814788 396892788 594572156 219564086 130114138 700178136 573723501 843091969 711982118 615640084 468895142 657229880 636978512 453519594 996711268 52560083 751787436 674782090 780010077 312209955 544833042 298460484 736746087 323654677 73803186 290787999 357285435 515696979 545373157 699897427 810698243 431159503 599705709 982727900 556932123 169536343 325516790 471449398 110993625 173000646 551678712 480058915 46029876 749584636 183797074 611910524 910057754 388049594 71929916 5097755 342430830 925505023 111757880 482295139 924735885 934113231 357121999 57371376 514221716 970373970 162757974 973831359 781820055 215823429 910813748 776800681 775044283 45474343 158430091 226937923 347376470 248110129 761758499 553181220 152288170 584118017 720269885 460016510 845604071 545310420 675634908 664207062 627656346 126340720 687809077 227972498 17797934 301872291 628708018 715140456 302606704 965214739 492470297 488167179 78434869 223712812 544014419 208166397 163422852 759358195 47043666 634531247 341640388 617024240 553906788 415445797 475797589 354020481 278719455 21994229 81221789 960256856 483354603 576955591 101198961 431119321 77111311 975961648 989406217 274379169 460203949 888111409 850516886 33611068 500477839 500568405 178584788 152565368 478758851 139507494 200682288 657210704 512837097 188412087 689491200 272624769 551751111 311129115 353910258 33328800 847091871 892594366 5595781 985467445 839674091 152987934 842617468 549414125 863817883 360814908 993892610 697531987 862693296 442485718 914061808 954083207 108696316 545100188 965743400 109335317 15801128 7798250 818709344 951794727 500050687 250785136 649155187 438033236 119683501 518544629 766911710 5925350 358405975 725201745 308085328 311065460 221031132 545914907 455860741 67137257 337817317 995266187 647108761 994650636 506822440 617078590 856747870 970205545 692671771 456141400 77075868 977909371 319040886 316286471 14854274 262571629 223841173 431917619 3473527 134262882 840103197 934528267 212077973 43667364 721047629 904132599 305053781 746605353 635978642 182390462 885529710 626702320 405981645 606733523 121096421 81834871 189078355 218496474 968386552 471625834 838563764 67778947 315683458 379562465 268847943 474098599 384504219 440148736 76329552 479827825 440129700 42106840 750934462 262298207 884816769 959609636 8932608 435750728 296610586 457236017 42971917 536740535 849926407 622850857 20180007 759194648 264703569 297677796 842437163 737730019 33490836 986109257 879782676 160367758 873611138 112365808 63019081 246406755 219661434 238269361 693875450 243521962 800649684 969962615 928047359 769007888 569212262 565820920 922835147 661436731 9848690 1318427 964203692 355396908 764434485 547982922 604477771 92460834 407243600 491630775 788461237 507905683 335076431 917713883 708747698 836014519 674204846 924488809 144150643 832473702 954388151 811362595 274923581 197024120 14665996 310763195 374794076 946145676 63366526 863647952 682526214 314563972 490054252 37376443 73254857 105256655 62631669 960973740 835458342 470743164 155819313 982895820 781997478 482069890 286623870 972957046 106003363 378970554 653266768 870869433 55002974 677436005 215173433 273523411 951922133 272944093 794339459 366303390 836606134 994449441 149107058 431901422 402166608 623374555 310967141 445488467 730902785 795400781 812538151 178982478 34400734 106208785 770251882 307153450 923028225 26567955 519149320 273838385 835382653 556248734 125502555 71043489 83058205 799599631 517562647 742420752 241305949 639168500 328904514 933466013 17424179 465079516 504112667 689467590 279570431 468455181 453681249 686963775 754429287 486215629 156065849 923780065 84511759 544904133 810669622 150846302 573521740 532694465 349866334 507092091 571521119 748215616 498974700 191428264 977837262 523606301 202991810 734998365 238945560 925957743 112375825 87795200 114871110 193167267 43518052 712618640 131996521 448284250 30036261 524814153 174507105 328654486 173066219 830552678 973682374 426776956 371194514 61732928 468824092 176417934 49892040 348022669 617901873 338067953 124393639 737769628 598207543 683151132 770998449 472267735 997286564 794286491 152172554 501838673 389899236 693368650 505003544 19483544 250477105 884303670 145258821 352212492 667379978 675945431 131732020 676957667 368741985 975986054 70150579 941985134 75043571 153083868 826012560 342641164 515576997 545250445 225691349 483647578 139250229 465392657 69195316 617559889 419331274 190342454 428172791 691402390 239037625 848470133 200234043 624885924 638927044 380897988 232314776 876177387 278228704 947615300 194490180 852106506 616188854 182691539 706780499 614391594 124465793 430152058 989241611 285126980 919292899 489231177 96962915 598510555 852594409 954655019 907898506 112967715 822930900 69143756 787446642 149215215 879163022 230002709 618323866 879302494 562511186 555900149 648838961 663834771 924217054 987027158 370473072 204533096 979505300 523194095 295734427 880582549 320088968 112278457 559116366 573664022 639104926 796600393 798357064 370737197 915786026 882395254 274070045 825652904 154726798 593324679 285253373 942254986 702708865 442823401 109099505 332139033 222959612 565297639 878451732 490412867 770924151 652132231 395238506 751385656 182946717 434380210 674250535 973042636 545895815 176818508 19076661 175320642 900306624 194964926 623462767 142438952 991250173 929314378 207932372 25429478 751361822 455051521 516167107 799911036 912518881 445926932 976946129 459676678 873196475 262318999 647811527 743412881 536598814 476389183 964685757 879742716 451546395 629460042 401194732 775037883 488887696 328642548 843570991 400368460 123630310 185194254 423873205 523412951 961105270 5593206 919456146 473029345 485095524 581049519 475567426 878418393 931520678 624922010 587508095 367665406 976176490 727358258 999347031 867555040 241600996 877949676 775820521 692952719 553092772 595875941 792384717 188591428 997241349 627147769 441043597 760342011 544217163 414530109 92433985 213768662 952129949 214167615 498146656 553266174 263622104 27270573 37664674 404060799 803763588 543930471 694019772 255042897 812815361 182409791 184030370 598915286 504548949 532594449 210240276 441205123 52969733 34828569 988097507 681611276 674843633 517517452 471723851 746021770 862592259 640168726 597585367 64615535 211100357 941360938 825593715 649756716 130605964 920576870 132369052 147765926 213217808 137934845 72236316 905520122 842290706 975099731 443045023 389749030 45159339 708794315 296498371 629081885 509454936 385249647 493587683 445951756 299964906 242545322 440638328 783548870 187281460 56092097 629154856 873009510 423484055 421552884 124780677 489051811 265465623 607860372 299479611 18333152 116688910 862585034 481121815 336910217 407642653 46703287 92651848 212842208 921674129 464610243 166291113 248700564 667765980 220111503 410543429 462902546 5493751 363576546 131786877 692755768 160476039 948149718 590448153 272486765 762917731 732854919 224996283 299945585 293213757 420318818 434863069 622331504 396347602 375357204 741662886 263656885 40916505 457749101 333504392 278217656 148684915 130651519 137670658 235044677 824139859 250226092 779625870 865866930 251818870 99874740 655741910 96651076 824430572 728179110 81245221 356902908 930534235 535021564 368082616 142175869 876718519 729944746 401011609 349959766 579351885 536998010 471828659 288541364 656666999 399320348 267911842 892348624 857127649 166103783 229801430 477222361 853669927 306039283 24245344 245490728 445663246 891579628 521676286 575411990 780560824 631273039 914907437 47501056 648105071 720103777 984205562 849810224 332985619 37022421 239500305 791493733 90517142 561226990 793590592 354526668 345137900 595251817 585892832 894889805 700681 646834197 48425054 133025721 706951635 487879902 506859926 799431444 222272124 502251111 3417301 538051121 431980578 351950724 408753897 733366279 122965585 375229861 406318460 952240796 518367302 587035452 800266956 554746843 388010273 519015720 653165869 490539443 530460416 745295159 660665108 592307066 750306486 232513813 150205300 483214957 951988267 859829904 291909569 701436873 762108987 528393424 139561125 157681659 725183460 743209667 520235211 432894640 494913298 635885802 242818370 731676555 792885638 901766604 74315208 862552177 228818053 687238221 289850843 44579631 772336496 448597051 567408151 811316734 125255761 993729529 830819192 427158367 37088397 475678493 754460337 903889434 605868275 970775204 435944574 241577689 611556982 364640090 103116180 343586733 652747667 768184774 378996667 317195121 190043514 616672292 533594441 135479938 384018835 411693328 579491347 399238797 250467587 688503717 536772960 960245853 292901627 187927990 685587313 56462814 489283911 152213228 834595259 205366832 129145476 55624161 316777371 635961594 727334883 545339953 716215140 547053626 353397831 259989963 139099809 498181333 36877506 723381907 805977592 526308019 84564428 913397561 411681538 305409850 953816655 744495006 414988477 739249670 11018288 471495694 443123688 487903581 877695986 473185716 691851341 449600878 588963909 536368946 26814319 629863846 330638371 591893422 570653728 137110858 444342599 437556714 864789589 498366510 187763671 876834084 688067282 587899130 571326798 466046485 268740208 868541976 307164254 442666918 729785624 326404818 207055998 676476694 443336817 405959680 805168592 981222998 40099858 69731865 566133262 813572558 193710125 787023711 59844424 107159005 307376471 986475824 979319223 37656146 834778783 302270121 300409891 590627802 551871657 168297865 869452955 693897461 834976619 595877404 419562060 100295378 711781205 623642022 601556720 684964837 975804379 196577700 817290124 787220593 210795686 576216871 518429416 636083561 867507550 227338582 455050021 958408350 718865191 843257793 702759424 1082836 857858348 488722281 874512567 16707092 706047822 22316774 624865325 314227293 519158988 794801703 777887362 414737260 730661408 193512713 97662039 225553278 783178091 848894101 584472977 590422892 653183044 149701817 248965770 246004312 339098570 209678834 643666611 484796370 117084026 87395097 555297045 612545780 940532024 313512219 347559924 820122751 262796972 34205986 653775564 993108884 280450342 627439695 719937335 688832509 698111034 879257410 889607035 969398920 751194809 321446005 783616639 239130447 477393595 392043106 202421922 440645834 901125084 254973424 257817720 769179873 48172532 5428906 293178807 985571661 837126743 350575668 604801933 365701115 145403084 626241343 414497305 117001641 753354505 25699751 795742349 278639202 680971162 42611661 310846890 893891253 915674269 628237397 983951167 177246001 2394886 10639680 86618639 819313522 695411974 782560322 486675150 221389263 948788117 261230166 690953581 597463644 950404454 129808953 687735921 118512222 464716178 111773644 223970257 188161968 943880443 534620938 213856692 294682535 830804014 220738688 710557388 967917541 615384597 178586479 893541843 223102749 53926366 654458955 239234464 213835667 891973305 389075276 102637216 10321410 190237286 603137283 944604666 525235839 35441261 221537226 994091179 748847787 276255874 613069454 257911020 912077207 910303407 596871390 593555596 625582709 214012857 184194475 927401537 656577615 67460795 731771788 175712517 874787846 83302093 764041674 967858376 64614862 764969839 312653865 204913211 430393251 342325396 800710997 452492173 112177580 878046316 577559834 684556788 206703001 114615559 306440636 107384734 896608290 812513008 752779484 325218226 526209776 969151036 53426496 557051868 969743679 155133539 195409325 470389447 505014393 892425350 641552402 955269380 616204013 217680848 386794188 307361048 536978418 123976411 882117587 309332490 524630275 333289380 951059570 668649273 187789431 104402727 130368911 865331342 507755262 975502966 671830691 68906997 158840581 198991216 610695725 208789920 826764294 904948307 490838538 336729893 706564464 23060170 450436172 445568919 51263329 126425128 128922954 28635170 66346152 148797681 435536177 109317017 645384890 616738048 410248210 261992729 49288159 680963671 224649849 727781096 353289887 64369630 813399058 892133591 239289706 733920839 4953579 815545119 735453734 242965344 877395655 132748242 168924823 170630074 194483052 365087059 844937691 271595315 295491400 689705866 829227646 712821278 956609888 876917242 254814640 150365615 429733999 244284103 762821239 379664594 401034541 928175799 336703598 115532077 281816991 192816296 105470835 26801520 580213264 156474435 613165419 875572955 750336389 146563290 566409166 974165951 380620756 753748470 975531279 433129378 614987321 639202883 866615556 542981210 383682062 973387742 171022684 521423675 901021463 768092784 279186396 452279858 32307467 453078916 190021480 406477994 194162125 626831335 106977092 93376082 262035271 106807771 795845206 979577127 152883828 669486620 886013018 983438823 224832467 982027015 405236685 272312433 983187132 953224702 227282381 591273031 650783275 855792624 441104921 569543829 880249415 623273049 368157007 274725520 411482888 947735154 142484161 926505820 883679913 618415907 215335987 41073277 144049294 532529479 537972332 140780165 894466933 579542948 274211695 775286031 243564728 283813379 843191239 5936917 95090230 69373925 837936807 863585915 576475067 757559829 339913885 164477320 782727601 422916237 428319424 113169757 949069117 888317533 958956996 665442132 391451115 846038500 109694284 8729919 732391326 254156279 563215112 430596297 477693668 608541952 579148798 336093082 191214594 465195416 471711243 62119671 469835796 210502430 288355458 37835124 123000506 901872242 124810519 765320219 423877984 761841283 610445184 675761446 937661103 160252503 304155854 677454921 239163768 193429966 353561523 199835848 395794806 379990169 802514170 900869996 19780390 424525509 407783932 539969284 786905417 999383519 899878524 673739093 211939411 602931650 627713927 865088260 740699924 749067901 630140034 318556875 782939188 213141796 942586313 237688329 357919592 335805957 206407248 429729170 133476247 49041437 519172758 284715033 475844423 567204755 538193665 175509650 415512983 22989034 106319101 176184180 872321832 155178708 869461532 247001545 858378877 811681520 779674077 697748490 75987391 394649896 398512079 373490460 419263470 807719068 178119705 311034587 572529160 665255221 816984871 307954716 577474055 88141338 72298273 656316928 454825106 159198231 727725005 865947088 205418234 966254665 691558050 221610394 278584370 39087357 166617248 764336847 214053625 18372032 692595383 6000504 74601462 356117308 424040566 928132108 958004252 507648593 328069756 646925045 197727710 920496239 599625862 366668207 115530315 548819471 457698511 469882311 885907524 765640590 492425636 884760956 373590161 567791220 991317593 918178180 810465021 216458330 601132545 566773266 688278107 148454525 631207681 648208872 757625460 792245725 323565823 689792743 546100222 528334818 572685221 784101469 95367110 981416547 556038184 333416347 242762153 479991 465678483 217711555 569515051 123257715 181154782 337450630 582996221 747751860 951683062 195423501 261225066 393332793 942622484 135479875 731366817 740083859 777060240 47507012 797904890 20970202 49631412 360689722 197814752 564972121 176993817 872835557 246652781 638279436 744858519 912310673 153065250 965497034 444874919 563198094 862621592 420394752 801504907 684650634 446047357 551276091 425263715 530287052 931863577 416571697 448222016 629858774 922119134 774505240 246368176 14199473 255595938 336956924 794493428 449915319 957546138 359922371 60676714 933836798 226504922 406091357 970231586 492705016 954691654 595415722 636714497 767575733 467996268 574014281 794309714 507644757 329624866 696444226 260726179 485251196 839496366 407194948 674738670 909475681 758812841 758317203 109461151 355803665 284116884 714838886 325138880 783959640 552608959 431116175 713257454 699128681 701913334 4145986 907593838 139752303 117917413 59629472 933279716 727926687 239814998 559226339 177169617 989032813 341106270 71876524 717025937 237240038 625361157 485374259 751663652 157275789 682709094 146524500 655858036 41737516 631055019 366590933 966751077 61883166 25713127 291416263 177425305 396120833 925383207 75631859 226369772 939555851 82562633 472612726 425018545 223971395 108592935 507123527 21509403 326064249 893679944 103106514 274136893 171195416 398323653 15747045 110573180 949171830 713395949 464870880 423345045 242760384 912709483 83918844 665082759 961522077 771406368 518245930 262212623 468587909 206615157 236825196 458898545 441691685 29748199 39228461 150861378 95522436 473854424 154397856 207638401 953334614 687334500 680881003 49065220 853348332 578160125 426712219 215681421 935106106 513705340 17633077 230224320 574068067 758426600 166438486 583392811 509004406 545437262 585132668 735515667 704167683 473646059 10413048 477123002 340409672 972713322 287092048 890465990 13740013 298260148 68189415 664126700 818187240 187595713 635389996 22984730 408329011 728098749 509722261 851677006 920046546 35653748 215330891 851190382 333484554 90175735 325765372 332514744 568884354 325369353 453505242 223523418 441570091 879021753 25721261 693198361 663915512 474700980 432729204 577292174 500515159 986978903 330470360 273082862 489647152 180222249 754040840 730299122 717306863 288936489 749611727 184911001 837920848 907813180 597861931 893417863 559878413 55513967 466736268 73270820 131280950 122154081 683673569 655919822 702424997 915143479 796714172 233043670 17181461 369508391 235158928 80326665 441714931 382328630 529441380 93808745 443211278 187200680 102308352 989361069 513427010 434223697 347438468 468361092 54657877 744618837 644339703 538624594 432592308 556954841 981997509 613728434 410621043 287798870 324328596 761137750 761201698 364879639 853520203 775974988 268003456 418629341 427316055 556555574 854846578 868116344 816288536 34012690 269018960 746788674 547226673 215033686 876555404 704825455 819038183 6463663 682623934 508750746 740729089 367786008 705101393 730046265 67497531 807881528 358405422 958559713 506504523 791047484 200930241 323950751 109742634 601133927 74033647 167732282 490288027 905984356 990520888 610387514 952998958 921907712 364650146 9189959 992529135 369932907 926418298 219289107 2557254 508586952 669932248 115969554 269748363 311660395 817629800 241205811 43615805 6492736 931130991 475226139 942012045 574633403 956301398 269518440 556156826 322197174 612441591 540632053 843130970 548420684 360896098 594840966 757413438 157388198 99127831 681452921 899987932 262649514 698942969 571067886 788966840 149782132 620499342 795986331 633869323 906499001 635776683 523404951 74877387 86828138 307998458 350054899 452803219 820391753 909789524 591215804 758005561 723654433 221319060 540087990 105113967 826213229 905224612 137682275 973907002 867099497 86365617 797912361 106753680 148911769 734407518 608770436 535439762 343204256 244513328 443025325 893418234 475786245 720066804 467362630 175145337 776650542 89739175 835621943 654350069 982542463 724326796 481689409 95932857 243744191 12937569 225151159 207787151 875214180 315149693 446973592 438284329 874620477 16955066 919185891 29998136 354100127 418371410 247631170 17726487 86933658 884997274 773517772 886502051 536446846 61862408 8848668 404406132 445707270 827827220 114153089 416007464 793581446 774884473 503602812 121342353 614974611 275575745 904890507 483238259 915043832 857148411 142016660 429544393 254437693 593748757 472267705 898268338 845996029 639135533 746583352 170495895 485004647 330465929 156747484 786551629 551017418 484834703 783014481 529038060 185636027 515034054 884187354 76855793 708783806 862487681 570490986 107465102 971156202 152811425 904872375 458103052 544341291 899936215 536985940 185352698 515428782 319845832 455244671 544424183 98829795 495770356 713014209 863844263 345782505 200519304 547087990 793200381 302836216 221549293 566581626 341925286 788124080 947790012 387704915 106649513 529809573 448750787 816253752 205128720 907201922 751419107 992255922 803828368 64753920 8704835 196849867 463672844 790711079 169268033 605458409 803747406 166942062 523176731 383387830 779643348 212516536 906761040 544648814 33323577 671899457 70523177 42199346 374024611 946069139 914835965 329068778 978504458 229920256 847076548 918028433 848746278 254361068 615666507 944545460 302581361 974353902 933521731 618375227 854061645 673706779 441445425 377384109 879548952 75364280 931374721 500666403 872731881 967863255 494275920 409374323 353291792 440147975 587957788 926342403 857182035 14368201 821807657 591682996 359960268 263816795 880855537 464385478 740629020 561537401 38546739 121374399 788030961 331006357 256567166 995714319 736756262 313870704 606260466 240609869 785508423 342776434 233408040 292484888 849874351 543993213 809223098 37956962 653391715 632776273 647843257 356169125 50166732 607867299 704430511 619230488 335861138 925548171 996457993 829245761 283108728 540978857 915946261 667095643 59635536 336419887 695164218 253520620 489114414 146946143 732257057 162865036 124911503 890759788 595399263 893137361 889845598 222703764 390769745 296570272 564822400 271123010 267220015 411755551 646111385 486414103 877937971 428689787 884161835 490575714 409456783 60879035 499242196 545522284 471879962 121532032 248738093 421379222 919759634 339390975 574540597 577322725 237322534 641203755 261042652 582938905 862975303 474694500 457299029 300848925 591523534 431049402 795123456 198820888 131416985 888792428 286626952 647160098 747540023 610797977 173740131 862526751 223903926 753141451 370515329 345532216 6655860 743294603 401159883 678467704 871089675 778560824 906432901 767228579 241756192 594748619 956710207 244265724 535778939 295357925 147821588 265945954 968294941 809873215 21183350 858055108 295293140 258036784 527357892 152620443 940193334 751793315 77210251 10201803 683141866 803441655 783437142 563783055 395573442 308579226 806603269 410869589 320503153 27062677 46531900 718033712 571475839 833307853 686819089 147578029 189990003 33043682 809747337 628564964 347292321 526115584 454416551 913223844 590318098 765252325 385493312 924365174 922914606 996706293 276366429 37449629 922393550 71436303 334095888 750924897 431974039 861190470 687505863 90547533 301451919 168195654 857653488 808604259 849215238 402986649 735560536 463200474 460093817 290559416 659683461 837065385 292209028 107654804 207543740 826394089 128146651 661045325 463996709 643321121 113959632 657248746 547294612 124752518 389064601 941202002 736419206 936605336 195729713 316458481 989194138 846780425 314896882 846046556 156259228 305440368 272862978 857164913 472221301 820826458 113672677 716025366 793599128 956818892 752936382 859165151 510688041 523834525 188636449 553536352 108614951 626099790 987248206 887187103 349506896 882626524 53522780 648069187 493145969 821274857 263865867 358595666 658119017 38597813 195622462 464436538 749336975 582204450 842975310 35923988 239261912 474670605 305067014 220892576 997893807 476919491 542631835 100850081 1895116 337349312 570796800 785861661 992296729 839908668 666207245 972162372 556780898 574638506 471922116 403833107 260528149 844184522 287325719 819423180 660298345 242593304 939395137 12802148 669102176 419341787 252066581 685611352 300033123 360112882 603132806 493731256 655478900 535060727 46276088 452507108 485643385 383813161 908354974 6127013 783957411 747647616 991156546 156680686 701736340 574728470 650424833 347119119 67956511 731798581 732886082 715376549 98399265 287428185 362633478 532065417 293727189 646113653 976444090 366206418 603360956 867026296 48798671 290548429 359460928 805814200 381835491 584036494 701671255 35321597 659183029 827698359 121619032 483884275 507852304 619865514 540932371 627192667 369409093 889254231 410034132 654347463 579595638 896389748 742585640 480235551 466368189 627649877 385605882 529708068 866732769 804709376 981870828 756534246 715798599 216525366 302080591 647996826 87217109 904925918 84277799 841920123 103535910 475675201 366790547 646061926 210818601 685990613 61926097 667527100 365167985 447144127 223549598 679646189 936929046 336659614 421715714 871884075 959127807 706262267 88952172 798829813 814597967 848681989 484173717 803711720 319213177 504784537 414718399 111544487 468263840 627804451 934860435 303378990 523692190 681491570 650365929 6081005 176009554 547585337 637583062 207491482 647929349 796503217 616586957 389290066 962934652 752716927 175519885 902751158 397994422 539125405 620420801 920802966 197872139 894659133 48129642 712388181 125249051 873174701 415296738 747806835 515310252 301683791 553267129 880765391 485346299 692485700 326818440 302542540 519070827 665166061 296012691 45303447 666488809 414095839 287963250 63870551 317267735 845682482 202731955 937154104 966389408 145756142 527209067 875137279 387575956 334937029 1763256 106749568 211396755 924504389 684186875 380826090 824999319 496940553 515960072 810093263 309831182 466623130 850707843 102829947 697965066 596657381 903717121 549949866 326473712 206892782 590267264 131450659 698893227 451248653 825140198 389347958 399601714 979709731 777147886 883740939 757719400 961647375 740237690 612244096 952607127 726041382 869025382 313278496 96799226 285703957 841231718 356886345 778958575 762779201 516407799 201573670 934979797 232497589 199164223 829180301 315735229 257613415 503656192 83517226 503687096 343929607 391125348 441228404 810337069 209672773 866226058 993041617 188789103 121115247 226099111 348349975 180461397 546134861 486630006 7541360 536992901 832726764 609992793 360801424 348577134 340277394 364759548 244754181 722067273 433685957 73752491 479374556 776342806 34025871 93096750 482495180 231970831 820050078 979874809 220248380 352135499 220823160 221539859 15619606 310295904 537887244 224997832 304340869 52604118 482083887 42081945 619719874 816991640 65818272 745610183 531208071 27527776 156883857 255103790 920127565 578386329 251677273 926323221 530266454 318523048 365099130 748725783 311058975 254181491 922005709 963354559 879669671 502894035 476340566 336565629 55182995 449334251 254360563 971556935 562551781 569001350 954876382 288389486 377500953 410078828 79277307 172957507 730637069 508418734 133387437 909927701 757949201 894812868 832674642 559088484 737082444 50244543 34003093 537467504 721948440 593000292 737003580 633227661 44809141 903287595 606575273 716555924 222316861 933878160 347210367 333811990 104423720 59870007 662705163 350800007 181795189 26964017 705253545 845747140 448370536 497064225 369704507 101770516 909811330 762164479 451243541 630645136 909465915 493388779 579866105 167030639 481079827 828057864 718279263 921847050 514915899 412732771 340467591 511773029 784793446 439232728 849671291 858728288 912250263 539728101 522094440 227293846 911366957 29096528 860111306 475004226 162296589 184280729 593969306 101870071 370387590 705320387 270190313 807223538 493330239 356541061 998571947 548510148 902678203 387265861 205802006 379088312 690623215 270424515 963400604 376510247 798216164 273014599 168438823 817880283 641702728 494444758 577828052 961799416 108713201 921792243 623666053 857988294 456176360 484891815 937011799 972300093 260460936 343615734 873287913 970602684 897582992 726826371 531614919 773555114 565538235 427071391 553106899 28790321 633013507 811460366 231245971 722058474 579911720 526139139 364028084 465874280 457716367 958355353 750483327 721706844 339824040 141610624 13492876 672361751 2313701 114578706 741533765 798072530 705362073 872169696 209526105 245694187 264681877 290956459 204970369 63659332 516062706 876081362 17280318 453068661 525471151 954745838 554045544 306063623 564800122 103095076 495286059 644856447 786823385 153987096 517054510 616376844 951195727 505687350 634575820 332933969 302480363 633945523 675561393 208264555 539377139 602429768 23505830 489146659 465989063 614911486 877941660 682702911 528223177 389374056 794053622 103849702 688256052 937583957 970143657 610602819 26856433 354067757 111137785 816687736 515856399 104059152 486452280 625438678 306068958 536053082 933411777 906982962 357919384 988265940 748581570 918956745 518166963 748132033 168420096 727907679 428784585 190839642 912760554 234902424 658746855 504995929 682806399 385614260 503754231 25405063 709800695 948134048 210701233 346449171 44435521 479729609 55717124 947936749 959277607 635263670 725858728 325442852 692798491 860855153 757617672 687411584 633212459 677887131 617660252 104556711 277634491 659139869 488708220 205811930 27244324 24109802 643149285 797566062 497878174 26717293 647248280 495094227 978368924 679034999 714842971 301606320 232765276 963794180 84888618 78719712 985385809 386652451 118569469 373606350 606720489 400598154 442981532 656257337 92827322 665634660 420155841 845026163 951417413 457234123 953965184 174295852 991747877 941133834 666525029 861042083 630099710 124639163 535622413 36640151 416644097 889463329 890252166 560011456 531353613 231909013 442862509 275273731 808677837 93020096 820484119 604316019 787005652 708911381 832457887 817148952 459597298 332598780 209988399 55837594 966849551 471773283 176002340 782977359 283814086 144092126 10910814 448230938 539566355 637310433 375924046 7070312 774520435 143453387 320690218 861032525 996189551 639921017 865185618 395474274 368929251 134772672 916742627 670238853 695425397 510244944 856585334 645412618 563806008 119333193 320967337 938096675 619483808 583455228 362578571 551506828 810106554 129205774 22743195 174693672 701523850 670436943 480926617 726080034 592507312 225736801 887481361 86314279 585408514 640456051 131695424 768300715 722928338 972721122 847336060 343694338 759107561 800507096 275619105 377687077 183668884 146700305 81869158 689997426 992794733 127714355 918064275 524742667 466322186 10905250 652707103 544709781 915289789 655016525 867004426 910053854 252671680 722056185 410503750 452773683 651062529 385765330 517577268 392561080 224731179 930336051 165446929 140806524 964157458 217280938 453956139 490887045 915360870 466101515 333998607 446729395 194469532 686961592 766000964 892457949 743359161 757992302 420354030 635127157 623937709 643519470 101888329 533761209 312825404 204439905 516439748 437628588 494425454 329722373 522182228 682864546 484471462 185864782 76866782 683124656 86209607 168033812 470516373 119180513 474362979 847638250 477411676 662183556 326941491 284337471 807242960 804672633 525823473 716640760 606108736 30998366 5570382 790133726 92371720 692434192 53960499 779622512 913770119 46322762 339314423 861088838 393813320 688094854 897222545 168620326 492200375 420224129 58414195 338129493 43443478 770130789 625644132 923521437 598719369 351517986 470294360 897799000 322421162 80130462 900608897 950002512 312422958 720328327 473908037 953778561 586538184 510456990 157460397 658131414 513267150 652424098 280955897 373033383 165669429 269350393 33071414 873836482 985065823 693848233 268872887 273261572 815824956 167667823 940774594 561002522 971987071 681519458 925061872 114340908 338692386 470333694 155969385 498452708 150503883 999584932 52581847 791465532 764810542 80695121 875841409 246123684 797208051 590410298 867138712 921194207 840352220 368027672 468788673 279873802 295841215 174471731 360265243 689529687 574068552 330207291 34324978 531103193 13408398 971901755 668286084 236813474 722532423 464037205 214820327 623958935 701533223 652050448 462985358 436141911 587892148 604460418 512567556 419792441 267086468 326271624 753466707 657172534 394830865 620067563 815962516 872802711 182549172 45998123 832695688 911534468 773672550 675200084 784911997 706784777 270502399 175147473 608166027 789116462 614496125 411636736 937714619 413722900 709670162 391394347 233017587 320880247 104721229 86885574 183095443 169390553 459838842 280898940 473141541 833401311 462282655 853076374 778839232 183745215 595907820 735746627 633889927 806580760 781017768 309657929 224937528 193546981 26500861 981377678 956225277 412557981 228450424 451574451 723475952 778409970 871121778 384930882 720160351 239804173 100815974 554418070 825587784 7513228 965613292 426960771 290357291 270377414 635543720 128522540 683246338 658463054 38122215 769990705 739767393 622186405 601599905 132117070 371881772 763713632 852016382 431293317 38127824 635674185 572846744 439457753 376811978 962490850 986954580 803961524 914509933 104548595 70092998 571320589 472279648 185724120 107649810 344089185 375588782 221649386 611906509 252074685 472394739 111579338 335975812 392958715 539781461 709900452 363824410 930350211 821114654 631160207 106247917 9538747 730922447 192960479 788946330 47948023 681456733 8201514 294474467 194444967 779428886 579676630 27644216 44466125 638315548 223827213 449799525 842954793 339801141 832865508 352263079 977709221 435843587 225143479 927679958 844293780 954787596 412026999 610757714 536882456 665931896 607001785 112799646 564728634 225269701 184244160 856732604 603914729 52623102 667627018 495136421 335179491 935034993 385025649 401960977 263951222 347125355 976122716 374193166 448505193 311179404 516569838 155480736 456063011 783213961 169743282 355945342 278448327 448415915 843227481 531445688 641402653 944392786 539831322 765256885 250720031 549871570 307978432 705652549 612037301 917234150 249635594 227368464 865076518 142910941 122141370 853128298 782879839 540938756 615617128 560074497 316754520 146890640 634736737 862597816 225094828 900808031 94822046 803909784 8459544 826606761 529657116 934924261 37377477 24378985 594803640 430666915 564684156 769598221 235601045 730387073 429854741 376519289 679176046 179960854 964985409 561838607 828997770 625892311 429675186 285566075 632013764 254887748 616071783 943617367 254923487 148745913 198871595 103214485 156903000 604386401 292723767 385098799 401506659 612922129 488674102 435418915 509058932 714048640 454717084 827431622 887247829 731601692 200116512 286450716 289348159 954388899 899541106 493849156 555708080 305842958 238048591 938439050 154077035 385523204 284088508 84767263 234873565 786609010 861185430 661673339 517587560 612822345 990924694 961902073 746938462 901534913 378255192 809021659 352332620 617705429 841737420 415948560 349957059 762002691 238181495 271888256 641099990 579907919 493252588 613734225 48469407 109627658 528390953 499022998 409952673 33632937 164163114 843527134 107592128 692910342 573277852 576043577 484759636 922698818 765584352 268192400 394868974 184602456 840961362 171515323 1460830 220106807 828059568 90701865 896702152 143577670 317304907 862680939 935898565 18568432 99216725 478225947 63904556 398179121 63976042 805573448 571181258 982924255 369902848 839758999 237290375 523699157 140826211 390108500 210498471 865692729 491886311 863739207 604540651 419305473 995166344 476076961 908722817 418762908 484948469 32184225 246443397 19111302 94940385 271265546 71979485 599842602 787400575 443277793 253523474 331349432 897067396 739759875 912852291 234312033 105713729 299729508 107796779 459858505 854611887 708557429 971033908 903761115 995534230 782841152 558227345 25385303 347814781 420724827 299935324 914164813 986676638 376359963 146001502 612890138 760910541 977282017 461471126 404279087 38823176 356824862 589303534 480960481 330113522 890218530 748195266 901537739 955544550 912122699 180950939 538905451 174366242 28240633 12868155 597466697 238178906 361495288 541132481 35915972 192723921 250304148 16019558 929958497 993718274 78570502 700249268 905425274 772151328 423695312 453677551 710973746 443046440 464526911 983248713 640184755 172936251 215782879 694287159 75660759 426700104 728436122 342454355 912916582 742176926 562572166 815064072 425530016 800472234 627273203 137004186 353149130 45178581 739444666 370421603 592239300 957473415 9534650 549951483 564778140 433676083 387018238 48328032 486366413 934547466 518139468 243504184 451052203 592414297 710941867 428259094 968467583 318341864 981381187 125142004 588244831 231429243 745201260 820747773 730738281 299357474 446186643 86781826 544260290 672961754 16535166 555722961 321462392 341442237 27231768 858211686 341408908 167115361 466928585 248511749 948611167 95668639 472145982 781666858 632156270 876603245 510269733 53859527 648374562 804361956 6798780 173629770 254727735 910566323 260794399 749971462 305249008 481970767 160822686 853598579 77546335 855075823 572345344 289223452 667175898 619934348 388247706 286308662 628310012 818253754 79872678 503821388 658568521 299065628 533668505 59035366 892997969 833993433 92155020 849588772 927019902 933960083 826480245 358144411 664067952 531028392 176796968 823825429 551498917 638829570 365464399 101524174 360265116 708909044 550501013 704783152 829587529 874830555 331731080 504145932 605383384 88416153 660820627 279888195 561672766 272165192 960909836 203592555 132148186 269544366 162068862 791688352 230662397 156366781 669708141 600681766 565260479 950810720 167282003 280879312 731874472 564095297 414995243 744284230 407568263 324786678 97953983 701075852 468325202 520390203 134099064 71483823 563226041 712208134 744550450 257762193 789924704 56298213 869148132 133972823 650809556 747102626 589503398 145293777 262235135 13781874 255162259 34113181 104059075 49305010 200049988 694404536 618909676 932137468 126936550 196774788 122293013 31771719 195821045 80622591 800625884 714830403 606826303 190481905 816703568 268012463 291940340 813083636 487210346 870164865 827049510 424542929 494818929 997625208 690182803 43901950 509664158 59011201 302097177 819827915 326454501 934599826 2774139 773291090 618178051 177976929 965942644 396094287 178857585 422788176 750755799 889635728 291512005 985608165 791676757 919058063 842526497 169204604 837011596 122030078 493365015 717277521 591661822 887668096 199396611 658829736 673939929 276700950 465118449 851978133 108958921 434968610 204182983 612365355 719358417 977259738 639489754 656139392 246461541 310971463 25667788 727238601 449930850 870830755 849544816 148921312 181153542 733336546 965754423 941344 372379310 696566770 425250333 483914696 442201336 816772455 88735626 21953512 458615705 171749972 66160205 237206383 995790589 882957662 326571286 378069005 16176380 885932131 640982596 124130140 926758059 255484861 370937232 253777727 543987916 27663200 926365258 914732083 182860585 954299318 807612968 854372160 619619259 504572036 621562500 911790999 368535787 782231052 132725594 527845199 620663374 997618467 594264043 2981558 633194657 254417939 910587309 840325343 708582080 913800331 94275278 328125453 538089471 802636968 622337629 359873216 978138546 891719688 572600073 142234208 371720990 105609141 690572278 796193147 427672822 129788853 22895998 688871533 102177659 500468703 159813557 780950915 192921486 452853303 836663415 835910274 504147664 902524219 527134006 177165214 481006459 518991648 670192048 659785484 163584300 623236436 115815098 492570715 747717236 491819431 438274302 333524034 130580101 798512504 780541362 517801885 310137331 611565453 851910369 491213249 72311233 775530940 20998232 265686196 105779687 2581129 703448874 596374778 913806902 509818100 437501492 487208139 822382458 958205156 101086147 601765952 566618472 39747507 181331441 509766739 566458392 353301346 550281977 638499689 288676622 549486682 771541610 15071313 840581815 682397639 828100006 532843355 843591780 810734306 294684523 957995500 47971334 899082461 923193685 698302302 248983726 622253527 762681944 14492038 534013057 765873245 158045833 648936932 878518409 200899039 504650600 737359324 579048678 615091102 126790372 449829831 396070214 88602458 373004470 374086795 725828214 507807591 525814414 304628722 863583406 913897838 336592492 231163939 845873713 354802607 217466813 371350658 972471908 667637976 413833676 251963130 937635128 66434178 400698566 598184577 641803822 157333739 235252711 510817823 482957803 393608053 803152708 63585409 596578844 563952152 344543565 889115538 649622288 605742049 921116262 916688781 478009079 439750687 37479040 427137845 428702016 912106704 98276392 613871270 631845491 74819641 787701435 244221714 261373787 793832885 28793455 250664040 526439129 758091269 688798889 598859817 741253451 812974781 400306881 167398310 476440128 947370374 981232119 880686861 116241453 487652112 372220036 716102541 41494105 921366902 933061254 507019968 990875167 430564515 382447301 380444993 24660966 919418459 752355133 184857794 32637192 504284795 541684751 323010164 744313431 420083369 920872437 380547051 505077685 202786989 721482345 244031895 683128973 672683796 948896825 577170381 508275606 849101927 93344413 695303069 917802847 282388706 618744124 921588637 753564560 605383741 390809343 223352362 31370059 301792650 356536020 310941447 717965754 832842510 644156212 60501402 602176306 195785258 2714396 116300112 157893505 255725318 374064710 107373161 857358676 853903723 573443457 234451603 511338472 470636406 258225954 513455149 812303588 697971766 505614786 461651262 603108122 946165562 486475001 531289307 457868769 950438867 149421228 773334697 539520511 976825558 523264356 724366478 427214448 970099609 100154672 738951782 891205747 671672019 68066089 337241160 931643880 601473504 371579428 841163286 509487532 649001356 139566416 224954250 280408914 606789726 293941098 313856545 631567262 55033910 845329880 727535834 664799837 664851619 875237153 421996103 47400560 558614068 564978122 872505805 732575650 539882355 12691059 872032226 866287664 906994532 264445849 985789189 886608193 556977147 768240280 6452242 75335708 823800273 593776149 184138162 660285037 44155114 275060045 792734008 438497290 523725450 549586149 100691000 390094498 703787433 806918243 332700876 229548954 751337539 769044972 921784656 654180673 43998411 404614245 988714098 216534362 131553319 683110439 672884790 345374890 855059935 110212241 769384667 200243953 727848809 780215977 24327954 386811964 936486493 155451465 863331890 132112603 355484475 467204988 326362373 471677591 249136795 143376564 794922559 172607338 780302763 572764616 811987675 790164963 847917733 314028516 732382103 263138357 513902825 98851692 747577359 413433441 108817068 972118042 255771518 304561227 117651691 714859152 342873489 601354191 65427926 365109507 422572083 948774797 448855226 750597891 897599954 105867008 20180341 517237758 845624255 761768377 274355118 469043045 463649554 730571113 933953004 437434641 339974066 564441616 555109835 709382900 126361586 547473365 374472817 801825045 996173379 401793440 80288296 743192824 819657737 377243642 343556144 404877871 271198665 67473787 463120010 471473005 25870433 345346124 316524014 118893076 599826945 582609223 455830659 406771 401361733 505914860 165833910 883754008 775566241 826382827 259015702 386061019 256998626 183894951 810644706 765473459 890768826 614986092 607940969 297988753 601062374 538362015 488423901 394582975 930563050 499133580 520279621 349049262 194331428 301120461 765569733 756420779 937451087 71981646 27192965 16494470 192403966 825317046 376883591 568713474 37530026 986987801 321312633 119973577 651828870 974431545 652260571 925213298 153691668 30745427 744382383 244008850 190179260 814464846 135836305 515923790 908672290 760611180 1496302 884205324 263020115 873014696 120445791 97534827 459207333 221328025 541300193 687583501 722978354 787612793 761117560 254398564 265012761 520423254 3952564 504106621 245144674 861534854 495170460 523991966 203270598 183532708 521263802 68876539 881222955 188942878 546199739 69891015 352794676 658449554 169454825 578306944 40562570 374789889 66083172 985423976 595538834 5311758 55503043 431375235 517341102 10349671 488662112 877556161 745444081 335406587 185001530 259692410 5062240 382828061 506264729 320088519 270672274 55767519 436468380 699414538 521534375 921196582 259213924 483140474 741705969 761077470 451549175 740783155 392711290 598375890 906118178 355998331 303109907 458945082 693367489 857382410 649468873 516538107 692047790 428185562 971998951 918253710 290043152 647028329 411380660 691303222 431083668 999783407 670562376 268748784 423848125 588191849 517795972 147560046 746205839 804060560 418336122 193970288 427636395 838251844 334967803 23398788 603041271 524309213 327933874 755005951 254813013 995747725 463633462 716057359 318933328 298043140 805312937 357098118 676517025 182284373 141189810 252345533 502238460 14650630 581568593 820824387 52929743 497178696 781522467 838899976 203944844 836625051 842486991 868080828 901020324 409518212 339794823 815818114 281877054 342592472 9662106 689842325 769340247 362908947 536868218 732567182 880884488 713080371 382406579 972687912 101693667 625592311 168880536 190863838 550776209 278882925 744486625 112141324 37892288 244857765 420827425 743030532 199699677 529374326 299486388 684654408 545587667 222879620 682227761 266355175 867495487 225996692 403006068 916458291 752693717 949574631 293593724 254735442 587698027 3587130 479405700 99650149 678942096 717371881 239150627 816144869 252975540 497163532 585658550 615092755 851576597 70081061 675989 208227314 711451051 488091540 896481143 478163661 780610976 717986314 328018297 673571684 241173796 435569736 672365358 920447264 914757567 228449771 693959634 327511277 542875781 604995287 450592781 664870662 362205601 505992412 563205419 653197946 764631472 55374565 26085449 407557910 918239153 532753956 885511944 357153412 391495816 516133677 361974832 215104255 374347298 329704658 52730713 979580647 812028289 920081621 530864644 95335704 693725685 455654077 468397481 603025853 737184947 511974145 495908116 309691191 591394117 135863276 954789960 669843992 490264979 542082584 641005329 778225517 92576656 799118853 391280399 494529334 759133430 674677644 494405008 471902592 570469045 984023821 233057190 58020608 811328518 640974622 402362346 12171864 433433348 544875726 534135058 784324687 947520804 928404339 563928365 30110244 670354270 738408183 470800244 298730791 59316277 571531398 650161923 758948856 819613941 42146270 619068539 81467156 243210991 191509490 595347343 199131022 433194432 173201291 383095338 690410394 813816289 431599400 19757613 244903583 951044139 93000012 579859512 786125004 617217392 285000930 455916127 616887883 115893638 507169531 182950303 568930890 201530573 865017728 507411592 328621708 335618036 122941226 777608304 856754588 900532746 169476495 786330175 540424864 235055767 965879661 89353025 194986533 638521504 805439526 431661865 630159576 433349509 574676337 702236720 306556202 110251359 564344211 628161980 947953268 994562601 691638012 26098989 360298716 748290588 572702911 676859970 964279432 40465742 664875130 9798223 791440679 791133088 380188559 235351706 841919970 103045878 735146150 814786277 286655159 386225006 475565587 81541565 38813938 726552871 161023585 669661957 791532756 762887734 756223308 67823159 975161458 751952273 339802984 417586568 151306580 140158172 149703697 617301858 643808580 438304106 37472205 476549214 337945363 622205376 35811785 629551874 371461915 519350200 548453289 649462646 6001048 376832939 452146616 32269760 579728731 135982144 283825915 35937679 711087107 560994899 204392192 534933978 929589592 157506372 360814600 459838181 457902714 149096387 895564303 697359606 724198495 900455890 274270984 576103324 703428037 697111848 417807847 989725754 469601024 829783671 705146855 576924006 61587303 490713472 19125861 226941519 298006795 370078670 776452919 865929267 668272156 124769661 531886164 167971077 59013421 820700502 375951446 280337884 272366528 626075219 856250173 959958052 985078763 659185118 751108619 614424949 888554541 40257802 904920060 416273108 338254566 432154775 327030597 530242123 859561857 95348824 972295167 597918019 37263794 960063644 183924631 775524676 782479153 147877299 341675435 421293573 717175673 74622573 632288319 812334614 984600463 999041337 386803546 286343226 554809425 71321451 647522135 117941277 850732122 744809338 830473183 586073648 45305012 186304390 696920058 18097445 871241653 325101516 914853925 592130467 892011399 11091313 313428362 829402932 835784931 388374323 646495781 266725047 11088919 255083301 976448797 546758900 983274205 838664930 109371691 289990748 927217891 530168251 64616026 276378430 935420078 244903601 796370493 878251655 784291168 42862735 54803142 188015861 133739901 463980805 834137873 791602511 546361335 437641181 837020270 72591806 832317013 448502982 425831590 423760243 698280071 788447625 222885573 744905703 939004377 10499350 179250961 356309887 41573745 648063368 184935717 470545711 225232354 383054444 645714860 873242694 124824165 317971789 42355723 440119096 204665249 997285303 91866224 932642169 352748358 550309082 801131754 576517819 38228820 462675339 427172027 689260504 124507280 994854416 695626839 369620903 344161483 92247732 130794032 782119442 862616980 578838387 424914118 135054604 41097426 300158587 817422073 748101313 807437097 676346602 879015548 108550652 231510126 169201229 546572968 406672117 392619181 772659187 822051036 386640149 916688691 935875868 566793752 332086946 676465167 527444031 750810609 624817975 131069992 502605544 471181262 242372918 221555453 707604588 374297468 112814580 885246200 685342484 137104464 224579317 382408435 147918324 11972830 558729628 311031717 488055519 238625990 139059204 81767123 480963115 472669168 962669024 127291712 7381013 418254884 411125834 128954269 682325027 654944910 231555526 97418180 113301701 809359725 795968492 955785538 291990192 826207032 504713670 274605650 703386768 434958413 374347534 106051578 179157797 808556950 212028007 66512761 676392603 230376239 372512144 887826610 951756140 601006745 570737285 200093816 135213205 574268253 283433454 345494828 872708654 606166913 607131448 429219046 287209990 675182425 310314721 347849935 856853186 471740438 571942492 384792881 434308987 718889576 136284011 467761254 739276688 66878405 922590764 775118109 711073666 82999258 398463143 992605005 988480255 711621490 734357318 530468547 48450091 118879190 128645894 297227391 172464225 801546602 506792621 102731861 238818054 43078640 221026081 362972153 920597915 259812496 896071489 607675261 282620265 184497593 425368716 612362891 425589747 802537978 686474480 155637086 991649915 890664432 801783882 641620968 392655823 288596248 536462304 686723811 668114675 843393866 584681024 432615678 21771080 825725651 188681839 592968499 422523808 904181960 308113082 251205253 549135100 598769918 305812167 789514569 484577281 896909150 599027341 987816824 319310763 160104263 831097799 927065950 160970166 953585510 937270913 739487835 453600999 89017394 232558186 667374924 903859006 748814420 452971292 724654582 170657596 562909616 212054221 186952936 634076104 334959742 336853530 92228905 190678414 724074280 511001379 195586935 507432726 52592595 640420569 410975615 252817198 132300535 943849914 296727087 189325964 225682428 927494384 736803587 420548730 5876838 263949726 96952093 569175233 638338505 633879621 423525943 224744917 307939699 528961557 493533585 499301977 281296872 866281194 354487123 445279713 494126634 335909340 975922618 235085997 774549075 268419452 867999464 679642292 375179384 985722195 451428343 801712627 433257653 198727765 818278692 665957253 882037510 465105506 88412477 5522582 188581743 87322910 706875789 623619624 962594830 496054135 928942325 368811096 202442705 561535850 518376076 306501637 875940122 855828948 116419327 343071992 132694337 618741474 186104404 664422897 320707001 237890873 121340188 913603542 405377020 473887023 259230576 614581944 294412969 326567718 562682015 975814797 361655876 582121077 100187169 262123250 836978041 501615320 935585848 362708737 790436167 585419477 801665395 745763252 292056069 207530350 658115112 75150890 758573719 568131457 252937588 177018520 535893509 735492522 88904143 195964083 286474214 622846934 294492643 773550185 816488671 152221263 911887686 496294309 764095069 320443582 669561204 48793331 609997913 670686801 993689538 193122339 643345079 228702094 884635933 991624213 119704597 457767708 916385892 197805231 989491450 959820208 298038319 122771474 350450052 273656145 331534542 490606398 811394000 321575870 517272880 452883503 490029135 981359945 89971190 438502438 769750616 39303310 382408012 192053553 883466385 374531623 994766233 976105342 693003163 994871398 671695306 818335006 711127060 228915003 937282308 867462440 449406104 385610686 449722728 209088252 97599317 724724122 911255135 818285645 943400207 493153549 602352619 324370330 31196203 743662557 55240411 5669622 13694970 894509042 243086418 856272258 712436126 488923397 232583652 17459015 369710908 32735762 424072891 764616750 630063006 912899284 849246931 460468653 582773139 730790079 526239321 749182395 763359008 96829555 19685664 13337838 242818620 544389253 20865193 380983512 415784675 790075937 89613758 305049081 649054003 321108349 497250302 15148686 67469459 482750313 860684190 759879956 620569378 997014472 49492378 294954042 691850375 217235307 635617253 465290180 220351777 949282763 832420356 170463873 689698279 907603547 727896485 819227838 544646451 624469277 841673614 41960991 403390952 665446336 164908622 169596726 237172709 882115065 181978732 686761377 693684185 420939867 317557245 129018003 822316223 448929919 852673353 330223141 120364028 73460856 274247639 183330183 295678329 658434794 344105227 256782939 252131663 119214768 536281706 420470679 348046392 72504862 56403388 952244593 493431708 297025264 620194481 476718965 615750959 500908580 620259110 903238961 958122342 743985887 178836392 952691916 28577108 497699740 620867592 449033232 463480514 669699690 522012392 744262130 979094838 766355653 553122416 917444365 508455360 796020353 887269717 373698820 511316341 424043864 430884318 627912001 646903197 945547408 544885004 44038664 641144275 901049137 804215580 847099464 313196149 807015777 454812995 391344360 960161047 191169824 273680873 728000419 753861496 198504546 336137612 140451334 762051516 535927318 752071319 9089570 559240560 813685684 960049069 543280993 681018611 8341312 315032640 500272587 192660252 405627993 568750898 208337842 216644570 295466950 974186155 691556918 98145524 931311769 628636439 857428187 67726554 379118811 15067334 439716517 2187027 53210748 861934100 210072350 90537154 221475454 788062283 876003343 407958504 23964409 334087667 720156865 456277359 276767291 375973835 679712376 794219168 559423758 451914943 485026326 634407124 968517608 609715923 536285721 928785889 843694362 559345451 241137290 208060084 674360550 489354449 907792445 452459585 372205189 12458927 88841365 848921917 659654389 375012505 960441510 562295496 806469029 104897719 71676092 297021962 32076889 40047421 141431450 478423284 95444783 530753267 812828849 101424883 208053208 651020443 33767097 438859108 835881780 122386968 313256805 40066578 210833836 42069032 715920959 384237659 237870262 222924858 809269621 220112302 512631230 806474987 398921343 803062533 979206343 943805023 296313191 705362835 142273109 382526040 696169350 358755694 190323698 170782135 528511554 705481724 685065937 111391355 660380439 499672708 554039227 997982100 699772559 506268112 148562132 713327950 603913979 440496991 860631614 272005711 764861801 290935565 982439834 532584076 827252410 850682837 828320231 441059968 609164408 578213621 25786173 697752522 471757772 186888093 967487469 902129820 402962583 622297292 620293895 67482385 45195759 227158053 833118443 448553832 475648386 783736622 455693829 133768994 634127761 488065626 576918255 388636355 555612660 793446916 354675694 596385195 718167396 656542782 599743586 836564906 996416161 314314993 2052356 396878196 193606320 512554978 471046526 763643042 875287666 673911136 743986836 151013128 511465539 814669505 362505903 284515179 532563885 306596404 254292920 753015778 362847147 431895372 576464226 779635733 191360759 529995390 978622841 570712911 829701491 505340953 237478826 753628983 68136549 799353842 381075180 401931291 675335734 180090044 804077364 438834057 557274922 64444646 200989759 478805014 83375736 292523497 553783597 586980386 888294498 30718906 51658664 417188667 425178376 673132381 601558026 535344364 491084508 63205421 906527225 633528988 28604429 425771533 677110869 747289317 168587393 540255148 644825408 994969205 158164348 252176274 70270301 487452572 169002309 361097912 984622520 712780515 48137075 917995261 291494922 809494101 718540957 154241070 818283930 266572347 525503756 35129965 290877649 41080954 858379441 317594654 591235858 311054903 402276188 88614505 634434188 669559530 140482956 422861373 895485638 936579581 695584464 585138959 845537758 579592533 135035638 135267317 956695843 257095515 628408837 349557892 363610018 849017541 42135789 214592501 499374925 673970421 690400727 580466217 250984491 174290543 639471540 180507149 51068087 261213128 800562229 462944167 591415525 308933932 183142331 381216621 756579330 670327325 295531277 89909170 609685731 230548901 899348204 40260125 103886403 80109928 379520014 16149586 661798144 635877235 275616506 807518323 733310403 405139160 66106588 36979963 730853992 365742130 851268039 915043087 537630069 735564029 184122297 838704794 411485481 755076135 884050358 187705087 138072424 971426992 487502937 210584060 884397964 101166217 845333645 848245753 741433703 672864634 353930477 969867303 788917579 935255111 839332074 159343065 249883900 441640232 920317229 376425000 104117010 335792467 704973225 445983071 188874162 885985141 715096677 323328208 512292457 657711671 231950274 877529987 614235238 528505516 276700312 382867989 705514636 882211568 251427069 437006758 949382291 897207786 633486540 763948985 249142441 198845004 48405318 882785763 136235665 310192269 922641362 998014010 451092143 96678745 741657044 20663990 454770597 224377445 589043130 510296712 867279055 173089524 56674467 522106476 651396736 19925246 790398303 187104217 283106875 187556943 275181878 613234201 391759117 206366336 655455069 698790137 916877138 34217986 970057634 402687118 392990840 153353460 851690503 461433062 406617319 787037871 323459718 207427796 367904972 284813841 356982365 629494517 629312963 836971293 235471064 209676799 21908577 184568777 669066535 436519705 152527523 923855660 440889358 854555016 60339696 238106179 465619744 254097652 572553844 424789709 843527654 194719771 821853764 573950356 908062676 500609283 806267954 696600549 973756766 640511463 280620420 307964629 898168752 526208411 995138331 418940298 78327405 249139285 772662909 318667725 246833099 409964589 171638280 659072952 363827968 66970395 308115087 837168361 464356363 980078339 184938302 352073232 243661474 899748802 31637738 280121663 267387569 472116664 296273069 341899757 247860844 63392391 813676423 19004372 283024428 672319036 795474108 924599004 817218160 492687628 542524374 972315905 867187887 964105623 997893660 114150834 386790235 53642302 697273394 150193031 13889708 801287518 263375146 589418578 407613559 134260936 471776949 915870544 528629673 390241379 456589310 375742650 772025111 58324157 384223602 113233322 780517828 367275793 589589388 343245533 661910197 663482717 619128641 140397866 382177337 628044703 464782160 596202586 684820949 772584982 547410480 551590428 238276398 932590396 709629864 653575178 974987658 702578845 455754579 870805601 230803967 53569002 794490892 138579694 858841110 579363634 275405011 156854971 296182269 629988569 353307725 496249427 919524620 590006194 412846348 33680908 231605182 663980111 934495607 21054279 168781528 920906034 409516016 425745226 891614310 928326793 924805583 264795400 217430465 76186405 934904601 387007230 240997925 937765545 468616948 535053878 993242403 526520967 252529381 111043581 318026307 589036244 636131124 55485836 888374598 765372407 699894435 95340849 538410186 396284273 964936487 911094356 165866387 574109723 897914433 14567611 840390909 876801605 950990995 975718748 657701887 956422966 425345269 66890648 608657688 30386128 844934802 597423788 524720767 942255602 486723747 643221882 233894015 908268785 533562736 159755214 402729665 515135814 739681010 651837659 600619721 760485422 283912907 391391206 158327929 491473681 188853988 509401387 489107098 666312046 3451385 481764752 555558942 443415208 162526882 258713645 997246455 515719555 460415802 814194323 325579601 483293275 997936398 137007057 867784567 553853796 731641267 231072539 87670670 515339705 776076189 531759416 403302840 881013662 943853231 256571478 165304337 557939579 47980393 352757095 652029019 975470837 286686104 833292587 306185053 467688749 790144255 355098697 377228863 594897192 430805014 414144490 699598754 102710139 947788983 972466958 840741835 556639029 17386120 414877258 344520768 786596539 75249987 728871815 428167233 35294530 439569303 965498824 746916908 357500741 39867881 121720347 661114381 285599496 424830110 769452741 765239401 749682952 364428932 403915127 381238560 655633958 742079487 520660842 580455037 511489178 995442308 614041202 775729744 266295086 888035981 237747378 462958432 261493157 961756921 514190605 186318502 755765217 137775482 492068200 115546437 850614286 497044264 125957298 970527243 554520248 222859343 913175955 154923701 701018880 285703957 586410905 123731932 613216400 614861066 678486920 361926514 530179344 105941319 794337034 18119790 413734700 240572525 545785202 116840152 385362905 620568138 77235849 259682682 657388799 35545536 923077462 560041379 253369285 636229010 594638495 850849225 707128519 746240303 856693367 23307813 373686093 598155218 820044325 167020844 343176022 261560669 487455545 763174439 496022249 123191516 17751792 174162611 295459327 892814056 122357900 252971275 338282347 865678360 459621439 778780320 161774341 280262141 515486063 526552288 86014519 681060131 793463444 529605667 258072374 516992359 531135218 131199023 457267124 918723377 298367655 872851767 995801654 710040380 63575618 983266637 648019800 757082257 77922959 854748012 924322920 616507639 364327828 338377020 239282914 712624414 864515491 790449183 256670620 386936421 140662774 122053592 291360456 788605607 215993477 52838315 619549626 908757922 832976321 301584255 571367258 56585647 1002935 264906832 702889401 362569858 573747831 954491472 124947273 949054310 859812679 4477851 981910819 760045971 949388440 502884534 56714323 688827525 326115007 905916926 196051747 37324984 629035304 117297739 607177310 114267070 434705384 954220302 45696698 649940003 830782034 258224940 747778251 2804787 227811007 89240707 807190948 859298936 934378492 454597346 721644823 120862154 329206482 456408500 9198028 117728635 664404171 167643977 744943994 747487270 301128076 395007844 147785090 706155179 858386212 801969370 859438947 902649308 464460404 772723740 170930041 268088982 167833635 368602164 101333060 303735039 519559443 73577751 732814949 996374578 90073534 618109605 194632179 288543596 237312239 424931870 294716645 898160399 838437749 111184597 35301400 577883623 288720144 686920196 512079184 621157684 791758732 555676092 773097170 397886302 999006781 136008713 637619355 507077158 458622470 867840625 866838699 299446679 635395995 827846625 216824146 111031228 982662449 596274731 860306737 869660410 986420703 397385433 302038323 876782138 45741140 712800058 271044303 383762466 816582557 511045778 357808140 978575273 123524122 654422818 643217274 683981810 311386313 289955677 785656047 940300491 252186145 434925749 804883518 452448271 205673751 977495362 854223461 835869035 845343037 478604429 595656777 229434562 656411287 56840705 993982334 615084787 458686037 16258986 913490863 611637360 972990770 837646819 414190969 214891620 414144362 406671652 573311101 57147451 299890138 7360472 167321291 865614800 300496875 121773656 982419691 573416692 715680087 411468987 725723587 553495505 596056910 902451388 585078174 933138036 828146053 627092010 909299584 314774497 497977702 56645331 242292338 841903368 234660995 956191241 952125212 376193904 582552492 135799132 717789480 43083667 614651584 123525175 266424267 868044033 750307977 672724175 924189630 997266165 343707311 957710242 212844584 939536306 463120046 271680304 713835993 795957947 233589633 548219983 700204095 820428755 487551910 474859583 951603935 185011494 442466238 342516943 574533712 787758043 973607996 438134588 609268027 977979219 189426861 551365089 135681283 363786756 161048315 577726931 445862658 605156132 984987550 620455090 219993600 461369145 332132009 164890357 63932495 618588231 972031153 182835032 64090174 367132530 609575165 989665345 868623232 208018655 209179398 378722920 954377496 596097022 780040238 223123739 627614592 589511545 600110364 846201056 234322126 561470696 438375155 784944698 917537677 325887308 983114721 311614794 293698886 789398350 707871406 468545227 970984187 430974939 191544795 830093531 363356191 149847245 590767254 765012463 865881832 9268772 120315478 498909477 254739424 659246401 143742789 59181187 886281490 490279574 182775798 167563081 472790982 697484962 841551369 80077423 742187072 774650404 275176387 794331553 123635788 109294877 154680226 387306542 803878113 774966302 729196658 504789943 162338501 557360459 699251052 410921784 142253585 535424601 336703902 392950600 53074281 727329540 218076605 337616304 969896888 374403728 445608922 856073285 259281032 159512259 210374791 256634988 304260017 756370954 924551388 861715647 627639211 347401833 153514288 555615790 41275142 408102896 334046059 562062298 997204173 223760716 606068621 491504622 460679530 491397704 409817518 54500807 231625248 494813059 700704565 971964688 899665280 449629194 943471223 47385888 379924230 741761040 30611055 429296108 571208375 569967197 100000709 477201281 356576012 884710146 352697384 397979476 604176152 876415025 597649568 993296032 73257712 979967397 925433640 957205120 611720471 239356425 808397149 872356052 602402696 493933243 742038120 737250691 21658337 754479721 591439566 26652358 154814432 672079567 138582390 822375957 234207410 756309117 471272949 50204231 859645532 227901085 305965696 531396513 956629706 713595928 333938034 754210646 808434720 554776316 949410021 206140968 873585856 911661847 173331677 368789856 124838644 524148395 841478290 56368236 60467495 178245467 649879796 337672612 828655544 866801576 923972007 524209033 985055111 192132488 600181250 849534226 141546074 181896149 86975631 770551219 439882686 585133649 273806265 757950282 986467537 2645502 761538109 355657961 944104506 364541624 29794528 389982102 343173400 235260695 314039784 252948968 551828742 937744541 688855947 854216311 243319824 32698603 881550876 983690964 351067049 430156924 69578976 673931483 733476123 218768392 6358288 979091489 562431768 427674671 466900381 567935095 380934140 859197044 986009454 839263256 451144486 199575001 200368588 815744232 961691101 290295488 845548617 455238375 380703162 97633724 397614650 449533833 576693998 533631956 848964674 168234302 654436940 642507212 983088121 363669898 937500332 867900666 961248250 431057577 58814443 572812870 826098999 880878414 462538598 390246179 408591857 445984177 399483579 276490532 884843329 297365656 466382184 526319863 349536399 843931434 999749891 144813683 302088467 980800976 547184151 605960038 50437607 711014860 942082910 496566138 56038579 437041166 824653466 242483585 727121081 519959497 684433021 883901916 488613656 263111330 68253834 748835281 344982412 194204386 378599273 946826013 678472951 904744611 668640449 264842873 967974781 986594766 531019771 641075055 369470172 897805300 761212223 377123247 412360118 763295611 778805850 80339443 926247047 449308849 322490913 301773838 291505946 106415002 685406054 154411589 230755105 365892659 373382187 606101973 444837538 495183274 176629770 649040161 163158569 317102443 923930693 847926845 991950547 736329589 271161171 519944624 367363286 201416464 762098335 638055256 255912613 208329591 577438887 748754783 426187176 3373300 934636619 894142441 212753207 638431675 639282851 779725979 785899121 919455919 317658833 169887668 768590235 217858819 71480332 979884939 900063616 293582229 14751308 311106081 708450723 552336773 935189129 617378682 191878597 563682845 371661212 433859005 967893493 677277398 667023744 974498169 298975757 936317032 10025828 124382036 799200219 485463749 122142212 309071970 50811084 657272219 876957455 456667637 761260221 310051334 524349414 111473271 371053824 679907958 808129319 214317034 822665089 435726583 864752221 469091005 613495397 790831502 822341090 837326088 179687343 530122683 94758940 876742098 354743682 497065357 99148436 788647478 505976198 411020298 807864692 892193830 85090152 819597252 32719245 222278559 980700692 269588749 250725840 723636004 477326943 197794249 956935271 364972414 52822502 330022962 297028368 630434925 485777183 190303366 746507043 575046015 153607039 646680546 809713380 505791190 569300282 38735741 782979142 245382622 494582267 420584940 203022078 170570361 778551946 684545956 426007971 452589934 683074706 514578529 810271805 65013408 270744337 220960670 707024384 125837460 35798026 827607473 91000259 482187884 388172824 583659479 827891076 729782276 691404715 222709706 274507773 98976813 675199884 672171706 220685720 647379366 146560096 824375644 275346903 711830124 332629640 502064677 950451274 264759990 582923595 904498665 415706389 45311820 529071952 890462195 365112080 390732700 406354186 796956869 726108986 179292279 876258124 766680048 791065303 997645288 641136027 777504563 411905742 891357469 54331419 649812619 88409528 284325539 748619011 824870623 72503983 440808585 831469178 273756647 625950807 856535845 657499800 960445978 557013684 773937243 240008190 773107446 259520432 88459533 864123709 84740395 368897586 321750248 668021196 564643358 361315487 670276531 184065912 156755840 423273834 263222574 48853421 317010419 350213114 946845660 49729178 85840651 417898633 685697073 130996240 828480188 493737825 903656277 48842057 652902690 293233616 602118081 157051676 553107260 840475506 429608039 931305973 518098999 776472363 482086845 371326505 712089844 345440437 26410794 61864524 898007985 58355264 207755424 812224092 409913643 904779782 408981678 41538594 714262718 996322227 427408507 841621961 656873265 384331065 712120201 747652138 144087278 129489900 541718285 483906410 970963985 607400863 691451279 531501954 679475432 244269754 327532487 154770621 100764107 601983966 273895199 743792415 729981799 189729785 507169610 387481216 529414625 244738081 330806935 10645039 502776676 320788681 742981597 680790102 859995118 130438730 236634650 919628098 785023583 578272187 526605121 743398823 43902101 755134344 665153614 633572130 598220271 544615798 382945245 416889938 890238299 723748513 6121292 879663749 149215607 30218438 307454393 757341928 535702220 506914691 216434211 524593232 138751362 961280851 720268497 243800118 8230989 305243159 321948539 538573017 773159314 791138947 50304211 220055123 386061688 814685074 176339204 321644567 188079544 319430143 908640779 118923078 976112346 235721389 248666870 332167199 747760776 716787040 781292982 354843281 589536811 550082688 355051704 96597572 847102175 495047150 303836064 107798103 632093306 524172817 312073123 61063746 988198107 736381669 255983349 950972795 788805896 587836260 886914230 902250833 662515191 516493766 980637179 38198117 551198368 680474575 574694055 925233298 139451668 773256908 395761526 90145099 588784674 418020614 242976317 927592363 877472375 496166050 41930748 890803914 174950269 578384364 127219851 320525205 795190322 489663525 104042744 939322091 519366722 574453555 512140780 562369413 34008618 433479290 290912727 331837611 782976337 944193681 408110795 931603413 286500010 615593168 457791240 937389050 961780699 611087175 247337199 25053499 985834188 50966408 847197907 742170082 329623032 477462234 251030299 573321708 810149767 957056070 553489022 162017331 552961433 544777470 791809268 130183177 751937250 455905882 205300115 796259907 356104035 734292004 185220846 547059647 219111340 620655202 88567821 837498821 740845405 184878360 77418069 253679806 758204331 285586284 39527285 449350263 486244360 707424451 644513479 438117341 905169803 554995423 613473074 498207144 901446502 767337372 162903028 760292318 247721988 604538056 305050436 114213569 281476460 817331180 64147098 359017544 512253805 123579784 429743066 561270340 330372619 680094300 143422213 248787591 112070362 147705857 521106278 976323652 957648677 324779935 72493985 927599783 260930691 154166287 405191249 741305046 899907788 220751707 42130033 986499083 302757187 338878511 467836470 402282141 20469183 538431901 167089151 227364795 565149175 399332393 102180984 681191515 237537586 816602027 831955662 462534374 752251115 552218545 306630697 373173266 29666219 469894180 139063846 91147892 603958885 885537888 797729697 395866039 371333583 240096418 206940925 555413926 218617231 921674145 625182854 460611570 372213497 84468558 632602429 882556787 781655664 787150989 266545659 811418600 689633542 471911900 895682609 773268832 382054684 421604482 563689494 447612145 368391691 875299596 758895490 782995284 896228296 390075248 77793974 662795396 545753270 209159597 101664619 857401070 397772793 804598873 597789330 122600942 413381759 830476662 296894494 704675774 137298829 315193945 36499503 214227216 106273643 933791388 419328200 586827540 682080020 841145851 383702570 599460157 433653120 813249093 847985606 728523124 352368208 263360995 488409172 739350975 692913079 852274923 121609441 537224947 637596361 591230013 986057354 882680120 994386500 242537390 340971520 363952033 931902289 225228246 144687116 213767300 347100471 977344363 521376155 202728859 766294088 939507847 319546711 792516239 975856542 462590771 596474950 543281841 17836936 224096006 594024529 976362658 640160446 627542412 701363588 249242305 610887177 235080587 641461737 219466800 67698224 498575073 785803376 424066280 290706586 6700440 863388972 345232248 583337370 682241123 815049871 582489512 100703511 692837006 527953578 454147959 417256954 157941903 428530229 656002553 343179433 111758671 224348562 282142169 729598033 881936877 854245605 701343466 222660353 517681330 345678972 245505879 637357704 507516961 560347032 139085182 167846024 775830369 363594324 469258628 111030631 493623751 647073710 514468769 983355195 688800541 358359084 717310239 137330760 858284078 727144737 514959526 993414625 948889992 899337037 137997405 457700951 537915066 984188813 260332160 593779000 981468039 347610343 589028229 644336136 756182504 694568831 995967662 574179226 360567167 41783839 905979983 841894863 69455180 209957977 934419418 304827285 164676032 953281107 49570537 215829029 406616308 368657587 871582652 329108707 721882160 962482757 573104060 305090010 597479908 204322502 380034615 294106922 20160577 676013084 736113590 682799779 398135927 817456094 956711571 114457006 892818776 32320190 951234459 121162356 235272742 724485149 174256875 440778147 516421390 213348582 491325807 155370427 279403338 767190151 273960667 427905388 797069544 186780374 279111927 807831506 43617677 221523653 369992560 629880060 624867217 267188716 393666925 677342334 813142044 179342756 939447258 426549029 149107144 972435617 170381482 704590361 783343100 897374236 304983147 660619302 434217321 236098565 948349316 133062156 895165563 923148578 582278903 181776231 731565553 704616831 479683231 751552803 521607018 269726868 651801400 940638282 418113475 773052533 444143224 172064835 928507070 48795573 556547071 677998841 343135334 193354205 918967083 650267150 511519928 331503703 191728777 352228559 330959820 362870693 130891264 88402348 972058419 944785695 246070186 774446255 344586850 711886132 540092159 292963365 420429956 918077410 316429769 149788082 21870005 668091115 876718015 140573397 77920603 456828719 77070815 269585240 821439816 668160688 741552270 798055423 601865678 951760399 11968800 497839413 292870583 581051477 426034405 864717236 108144376 445324826 536024095 935863582 50319081 407823143 662967329 3467218 56764731 280069048 760490844 980658740 223318878 780180977 318151496 850820536 112751367 188120494 827529149 138264889 361602507 260216333 465061618 119389613 849411937 318128139 341339394 320046882 19261887 690583422 781880704 477531220 503731957 229805101 261436809 237341314 559622551 344833840 529721241 920500297 959962905 32118455 412339059 684845265 726900378 72117160 883987582 614995848 875485354 127036344 967508872 961828096 977298270 456260066 945704333 877468867 299643948 571479488 272491681 484368820 619670314 82477222 515620515 476642649 803112075 950907031 780042069 492413725 21363536 784597687 204033498 120789444 81485102 10817332 728424849 846460420 949880864 495519340 157616867 736730951 289098843 305381811 543251246 240207654 390878040 990381440 869482671 687919749 830873451 282783393 436764022 334442394 528002215 32036259 203770599 494664478 32643346 634742667 735403257 640488175 490788503 276794056 227750470 214452413 265666211 706037053 512836717 920512845 439830011 461609772 639305065 523702288 811976592 31317785 942145794 773148701 228498500 460844013 243963755 607589338 432832643 252971 256365670 43377271 349573452 33744913 948419736 450889155 855342060 972743769 463017957 536131759 629215928 114106682 377888930 5389998 832687831 239616061 33571750 724329955 16692478 13331241 446610441 28897459 791521464 776158867 33860595 921229822 496553086 831959615 40584738 361392043 997125873 541671184 164084568 330861096 691263092 20137992 654316050 152414157 99998976 101585977 521638737 499342685 509637130 314132181 89649202 309148469 926476586 361706027 965824910 571030673 417469253 482780402 595962609 776076735 72743932 230580234 902066815 500401586 856875794 272997339 932112394 244709719 596246637 295244304 306255701 224788772 181308944 185384794 216822453 56882617 220884461 61659557 232326021 852873091 392042424 189381507 734804678 340743456 916499386 714131033 895313313 520113832 55099233 414003789 824234156 87010710 314245309 822902890 948160874 31390870 578588826 937934395 667879536 765533498 443282495 425966795 142358657 860401141 225636238 101279309 438969290 873038119 121262865 470348092 993074814 887613402 724302009 708073219 752062634 219436354 673437109 465476041 56907876 284972695 196852549 830631181 897452730 37810678 990637599 121646385 273164941 413592906 826393620 784833422 615345589 322321682 191741532 515063536 454801943 840958018 195084447 227742763 467092280 893215043 742087761 705706395 474288464 241374789 37182529 367127650 747582608 698768540 676213675 249088679 100536632 493961160 358991140 717251847 255608773 501463061 809245764 928776870 731468156 129384250 37431826 46707009 667568114 450061230 617816573 589929632 141834222 37000144 733039055 240757431 965225750 208498140 443309979 996950335 769665367 247063783 625683519 106547468 159171369 337594048 608551243 261914006 142692309 315521743 772622185 536601933 261508012 507372142 980538842 928516182 745236553 83324508 414818388 607242767 917269912 715115822 999283932 290323874 726114794 943701847 205945558 613245607 951493873 189896836 708905794 105031623 814949152 104245523 438296157 989075849 19517622 870716145 810747914 959457027 790847205 251081285 544722983 823126131 346515935 968468857 291013109 357182559 722729361 998481443 174951859 308293312 503189640 152576975 209796053 984341601 532082872 435254226 584148540 720964055 599319575 414691294 778288620 174795136 25629172 86822995 382424044 222534666 836245796 232282509 597137095 964231765 999353064 229518684 179925279 715986799 906969678 924604619 404018977 70379701 154695665 122300754 55605659 722959611 748456493 450358628 197299985 325760433 119772202 942653931 230574373 503452611 968130459 4463871 239128583 497290969 609665458 412279183 704037700 548633006 37836988 14822537 209667803 720947344 773883855 384227710 21758411 302892656 296379349 538275509 886424593 921718255 505235935 614255230 128160832 455791593 423789270 814626912 479395081 705624640 793451854 913505460 880387397 55282662 658891571 139982554 959116210 570469431 745034780 628532299 833367667 303569621 257095866 195709076 386087989 121283757 904476842 545985986 20757989 871098380 108100023 736633220 507532410 347127525 247682197 868061530 986273526 793467875 512724892 400552653 543413473 456032798 135189787 622121573 338944239 859356452 201701774 183220763 272907059 760027722 284159170 96596787 678277424 529939481 508141245 632379037 578032461 335105928 907496693 452429757 632638123 312268152 743828318 849536266 579562912 865053691 702222386 849080680 270898635 25435695 426575617 859336659 566679059 516879232 357838525 4253735 616990722 182292755 639997031 530932308 802575966 731716630 877091293 966928716 525647042 5324714 469853600 874544720 309819184 304138294 946642564 559542985 241450375 973241240 54171939 350902477 843457270 572339071 980834790 237149402 711960662 356091751 285169137 83504201 669716323 498482449 692537587 552432092 390607122 690968146 253146335 307690447 781215245 347994515 991723564 918378516 263334092 838967824 713374883 991067210 264462089 25322369 591784806 130185848 553678259 264705379 148498101 276408547 453908249 430803726 809546040 995469893 571977248 558442531 574982515 340539775 927771508 440942 693416415 537551304 619506735 190489957 842791934 903453111 584039315 630672442 890698220 815632170 218364632 6465865 659843888 139243322 437222950 304732616 957452453 81764970 164841095 681516374 741596021 857853323 373231212 133884208 921612615 890783152 950681406 403884203 114763630 486260999 423617351 8463519 240004336 265709577 584572220 196641135 130957658 721690419 110156755 169167446 179688106 728242541 731310240 555882596 774449665 259933600 103709979 571398925 382963363 558263835 934870131 505437515 578317420 135163900 786252367 596775985 884532444 390906972 834889273 680247893 226613625 710292398 489136823 706113103 145170625 562258793 965712482 138497433 914058289 145884127 521049441 689018450 442237501 96160432 277785058 283546943 865005896 505781721 121371059 431135096 97879819 701359203 198826612 987826696 259058075 298031152 82851739 564373171 799924015 137371925 437268630 883817441 44928595 638269489 698437968 810244789 40681739 331867778 861459251 161858230 12760211 781430664 143991769 965896968 68237886 442027811 825072637 965292840 131262319 384987149 771821572 657100193 715620597 106853651 771193494 455123911 699739179 395421784 980535482 489748608 23936521 199133129 147480718 429913256 667766267 887047474 812788695 829134616 200838399 580262156 448961823 295750263 714435030 358827163 164926467 596585655 690084475 917665330 605583169 391872755 397452469 581728906 997387691 403329336 879022470 263841804 775813531 280587029 145813539 892161264 687143744 282783257 833886926 483740880 594716948 948055029 100216946 932197532 545221382 903117003 130052875 585579939 681528056 861780698 363746386 529028515 79586644 107710564 607986981 802736135 752475401 13832123 105294609 340135897 169827245 531177500 906777487 413790511 76773427 206515212 562216298 54410542 128318543 98289602 753267833 27598805 489717171 69685488 848368688 589405885 725812378 841879657 125485019 485359785 316546008 550396973 433697548 526041850 42908896 802022517 987455950 329054330 262329362 707354373 647433245 276851581 322982546 837159046 696294151 667827339 214401900 968597359 387385515 842068365 527019150 707987266 828038448 22478694 491374262 315921394 36771905 919274074 501330826 429441812 843527007 316566214 385291802 36981561 338938763 8860256 645959329 730260582 563702349 892321991 103006128 90314500 853546693 388812705 793685152 466997172 735011800 161739274 121704621 460284875 655014271 867235685 301884728 117703869 921657480 72005513 686936786 920730005 524748606 145949275 489515011 40570410 198807320 300798845 617498425 313250863 616274036 785676868 838431742 569649728 468247859 956560453 825836544 402147574 478234401 910060910 823876933 331993053 982629907 812602952 113785375 340924947 177923521 353511134 523364953 959275821 899384831 143939501 535931771 273907536 474599648 53228878 605536449 870884704 849988015 95179539 463150894 838078267 152175786 762745949 438723952 246133767 508047411 33576065 644773213 264163120 114108914 526752840 767364227 254361578 856362947 707500559 236348659 799200831 247286635 678754973 173861953 358867881 864834580 919456089 239594436 286546459 479600135 69903831 12524792 203663756 515370226 976824510 163324252 714722348 31190137 19436628 655237763 546474400 387831041 176851556 845687129 925084592 299794884 229513259 764696607 20938175 895910038 743574324 321720544 854522384 485399041 603163969 613204460 191353399 912257361 711467060 676464825 615020152 410331503 363830728 624977784 617098495 562967753 356640602 810651905 222848404 74400852 531307851 381055156 424486413 155164463 592154355 761582572 820456625 203222640 611990008 699958982 383862969 458802297 241270777 672296641 205115984 395393240 388996238 153178208 194183673 690108083 816139774 993948079 184262868 758722076 644641315 375298894 748454412 371098079 716977254 407636014 30365491 961117004 7911453 316121178 186627421 42603288 498667044 144601951 516271542 347172066 421619124 395169559 187791569 495857833 874502415 250571297 739303097 32110749 888152096 169380555 657083159 291085556 748078649 894066832 611002609 283728034 999265208 562718814 645828085 88224795 780195232 905400866 309409800 18498475 116511219 357866282 540380872 790905957 728455809 711387274 537830123 716525694 945350108 167106987 725644548 793817850 178219024 693142768 156257426 312860445 439324714 434988650 129559039 908198027 690625388 279545315 235638181 729905063 294276128 43724720 93189716 576272358 296065930 178827852 354983663 525389078 640478815 108612284 860596539 626057644 131809014 953966819 823608790 395142169 697133118 319490095 745665357 286069644 71237883 368964721 277727181 688664211 659778453 478704050 399192916 951135605 500366767 371196840 477902749 617620833 36087326 319926697 627943790 191998301 1218078 874054676 814862406 188399013 550139054 924254100 38981008 105155903 355123927 873095361 671811578 264939701 830292798 389318170 630631679 902812112 730372899 482544507 856700958 867628250 48654306 542082696 648697619 687621385 952664501 927619989 511543794 652576976 981064547 179780597 471196990 636344056 426371577 109352886 474601880 868328222 716794297 331918428 361788239 473874521 317614419 222573621 77813005 265998721 879453767 968487466 992874839 721780779 364518235 640939593 337645912 562384662 271704739 80744597 575667468 229251481 731603005 800686411 69269584 613569937 486195556 45451915 865386566 235574578 462439029 336175707 492230508 855334976 825910572 784908183 871878323 564042496 611585149 633751809 660463884 792643128 419506398 804904759 670257308 615591965 70788379 782958516 839660173 663189462 803908732 922276153 516658133 121479937 284507829 448569659 251847900 267052841 612288362 971310485 465624918 337678597 423775024 263213235 331696838 443855701 43423439 470016097 482890649 961400889 343620889 705651942 351907591 137837565 232425157 863980975 862360991 807372923 110745603 553164002 358919761 204063091 516797924 9123141 621856692 522172293 772422573 469147931 566916947 896001119 130093048 339469313 90226412 256975193 878089892 60408709 282029019 237676772 802425440 757985981 642068521 494411881 837254243 393102510 337549176 479243321 211819227 387516279 81735265 226871997 280766088 480503467 699712000 485611324 367959838 213387431 190516589 392366355 732673102 36531010 919284754 762632276 74894114 711372264 515179783 826169613 263760426 397980217 599834550 375134143 99621049 107959823 391122971 242347940 104486074 619419189 552106687 549162753 726907765 877665940 862642370 831424369 711826605 264168169 683003765 155662567 401783904 422150306 193219068 164026529 166388435 926365200 862237970 504536999 977156315 342959676 363576791 367829000 159636067 615026077 741007969 703286669 468264117 676535902 955735779 530470548 455819429 513294572 558009947 139822192 636478520 134026209 141379543 495107335 389187028 786422540 453057192 227573374 579390554 182659013 101718906 39201876 24064199 544934235 205937611 318694206 922616340 921157064 206328164 292908457 469634169 167437058 954503165 142793003 638886909 25004740 219098809 603843851 435377229 621424362 441173399 346039260 461266255 392870957 36271996 285712739 355195371 641601288 103492637 391680945 451191959 276613937 498208305 46969384 819005769 524110112 234663959 770839238 286705555 316390266 981616512 461646008 403039079 605415281 989712523 552917933 421493612 558916917 879194254 517908267 686521153 231099518 809775549 84971442 564733140 348340283 239489533 450545849 585675035 325641018 875756653 864117572 775911771 793124683 938003808 323243570 606165860 22016430 259837290 712316483 164016986 153776223 162515997 433412966 256356753 542591491 206980217 296626971 693268455 77154092 596421934 131733841 467177694 945450045 430840455 902205975 137167824 983437666 924826370 786842051 611058152 720707000 283044926 618152015 836742200 448009954 410267751 719723069 243586771 535750300 603379374 233338179 545631326 638859586 227926038 378859004 724888167 380121990 861269315 410101754 608139015 158135225 394604376 850963025 349844196 729721065 504960787 602006410 37911680 264089264 299804228 788825535 882178765 316199001 12609099 892402302 559473409 727992184 587364520 100791279 44603149 311487260 70239204 682542364 863797072 832614514 55572674 760800993 560673017 467450433 417157401 811066854 419951281 932994229 25006199 992853657 448403064 719449698 522503243 587981821 495899226 729125258 554149611 719049551 603437821 999270634 845850923 264846830 736369412 480892362 728580663 497767619 484402934 336595031 43007496 960435232 741683734 74783993 35814939 721809371 826509268 167769636 556556258 687270509 970914815 665128509 707152379 294853907 717967797 137543776 606735587 529713498 419405586 303873081 995590703 601061574 985690773 342037842 454260374 524802107 750005165 607922293 858844461 242908081 517060768 774472821 317136384 604853541 361741443 228792767 651270225 301225340 31975131 620681122 323899508 896878437 235911788 326569235 807780574 870574185 595052035 702296002 813851316 705765086 734101177 779278651 209365411 507092584 271677243 346050822 407344632 131043834 518829984 29055327 892503184 63109952 622063659 899670585 99259517 10485658 396714025 592776545 90232329 792955570 462079959 12516928 653945406 392718068 109022691 11162887 727105740 365662693 683522918 771847956 773824605 277252601 948707698 754232660 509722435 120540591 70467215 388729268 68593180 51380346 360045785 543048724 128891012 469832018 150967213 130475952 936456399 371390407 415568752 231069917 909149969 260130434 545723456 312881322 437294781 989653999 24491614 127337532 676191533 570389890 594617997 528945426 154497393 507056297 22948634 330413228 922051149 92360319 63414713 831332698 606694218 893172569 178962585 241140109 334450760 910724907 207063671 382239732 803887676 193503330 423353402 392066290 422432146 71627159 62528716 156305200 825565077 263326045 177166005 961838227 51022664 908861061 418501758 100766857 610330471 850160864 930909355 390883242 545872493 878297873 596973501 52811748 428917493 569432892 1774179 57227484 48036299 810906566 990344820 555047345 774167249 814751958 852048508 939740164 142494537 405361878 224262138 510329418 593767502 347032037 983014211 742379445 998951848 576444414 426285816 791914861 307469651 831554599 202565442 922069349 34261854 444379580 736258578 819361684 860732147 893320501 368889574 720085235 601580946 170585524 235445299 396971939 609570217 567075181 143913553 878429062 397593577 336123479 944620904 336168929 508720327 662936944 150437146 115627609 396206472 88269242 633727755 340898633 51235502 814199484 529821692 538685266 705610668 553849525 706008952 374831343 454816924 526906059 461450089 562254098 669836253 155708397 299016106 465800618 80470116 110894862 318404077 939852993 312101462 230624059 154473646 769283867 824715233 846115655 51977724 450572707 272712862 403693027 148322130 425223253 120331721 347548724 696060701 156213049 379195002 680534257 763805833 400537746 248376667 169676441 296973 506835463 325825 330963580 881339839 95157738 520975886 690262499 643070984 670657613 916669271 520619185 550685569 772877128 337573428 774703004 470150902 254901266 900222914 322483274 213607210 673172714 543959067 555901200 73324668 214708504 482653350 86089378 650961355 327350115 659030484 773663674 93802438 469837514 781545663 203507825 248140917 670447229 704190891 781815073 527992825 677530309 190010262 86710837 425792227 688188940 656409422 237641593 830986381 405291655 160577517 654703505 78082283 168920986 272389755 945055071 219703406 270343874 614339436 136022911 414108458 341074789 980113060 126837782 575549231 299217585 979219835 160293039 615111804 135737062 231801054 845735825 840597979 499144790 479873968 470484484 847270283 811925837 446095021 467655484 895741508 981113556 270411493 94049901 768763620 189509633 380169296 877944316 620640873 72320592 417967583 405435602 445047262 133430252 732111841 69202267 580005398 347500608 21886705 572411789 667017781 894171039 790466549 346456645 929206841 517489200 199147083 601566827 705936606 199103830 609344821 462293294 822305428 160663972 462833121 241379689 792680999 615622285 691474659 164881740 699973139 317695697 604895889 852046352 418147922 935964484 227609251 525937236 965007543 698614557 830777533 749652924 502998666 157223403 6601741 891318569 725213446 765566401 507533936 329455277 203888644 581145494 329742412 584159478 688282186 648935629 482394979 61066894 949441386 874106000 3918861 483935073 451182212 183622426 427750524 172665430 616854021 836389285 727927373 669566155 982930183 66833389 529481972 82608472 590839675 127373569 350752203 405064618 942321334 666991557 298059825 519744272 928558723 5628822 750129313 359849270 116873112 436079312 17580551 832350916 225597600 254863684 12961622 800194461 538993725 920361070 137371186 768565734 450251798 592374101 546492470 76945664 568557184 834447302 654151717 189531246 360702293 134179807 259818408 547499298 206623598 895521177 661722440 961731302 21979326 455078970 399196281 4921821 286965441 365562987 450032462 39020777 869621936 570047405 923872314 461820743 105022365 67572409 40558519 66060749 957436037 541030273 504587599 451500181 962141428 443113790 160175136 254164346 99801180 206413731 574973030 873927853 145147286 528313119 44436765 904040209 888043712 195904576 437544912 634631386 60478306 357179424 6942095 679230376 85350885 4435014 516662546 84908675 690948508 445701561 272488640 827749251 532558796 243860703 14327930 786900353 675268060 282727178 218772005 867762978 224987560 504242145 716063053 937113415 601625004 88327823 774582665 7041254 43130261 597265177 76234721 585717991 702528203 912143154 548044754 204392335 93538458 655685495 319586721 70506164 839582485 913716102 559837614 272340590 307675609 998840148 132877999 687608238 620769180 439675677 442252054 436848051 857579770 501262901 994488617 545980278 861584954 913513483 316092890 156069155 133946347 726358242 471225162 669029095 953730651 804837509 892625347 432628395 419405806 470549620 13214894 349922441 797804846 879249547 551929248 1523677 143500676 96096581 582431068 727787589 724802534 174631567 930334285 405320649 168926992 170854884 706211131 65326272 873717490 887305658 267848223 902298821 766478014 787615428 217557619 781872001 828544007 823333420 855395629 954940127 351419099 648753732 487673903 325661652 333856455 180097932 518301466 636779524 848368323 758016496 699321239 444687794 957335203 242894575 786060805 670815142 816855196 188709525 566067552 487391793 691536359 39397932 189408747 700177694 490158850 400220803 709987579 900022900 267613950 644662154 181887923 427627200 443159367 650093013 324347185 245350461 918481793 881433960 323965623 597057033 546506974 302283280 512610458 949988488 201484716 394334950 38038402 579871288 76484587 710904401 444055964 148914422 498225122 974973594 708745942 345916133 266977383 589566664 18933519 514879663 28444054 239370906 335656658 633943207 40849512 17848633 712277881 514766998 793841995 499473217 159892544 11278301 717523082 790069565 818978628 187865970 218609771 427119275 679098060 517737309 462094112 502785474 828224093 263028590 53516528 3368303 35204524 964551726 536728880 100897434 23604760 580778759 485764536 972278810 249802543 724322483 364550523 921293210 167177216 137688365 461714116 834864087 300145899 973675870 12554589 287177352 202298523 795725806 713865487 219538178 718525295 563256701 102494066 938581276 130835590 920033894 456280980 723155770 32033452 747617175 858805254 439779818 503593029 196624537 133740347 508692104 449174234 459449901 847242015 816847574 768046755 517761287 904087242 814767939 188252606 335520790 957371436 503063845 852996174 47093340 301565146 243198896 832409473 386017775 974475913 888463265 537246851 887031803 837412545 247634330 404156029 981126535 948977256 878669297 100567635 723821069 556821904 760898207 231035550 737195979 692749007 6265173 123289408 897361505 99758003 171814536 383886015 500757347 26417534 399171650 236545115 732861308 282980072 421692228 515115090 386413070 123308666 64747067 11769303 182806312 142580079 182860922 34884739 288922279 498489448 808445569 482926956 890058298 577915500 404391154 573914290 989402291 421888302 293179262 976639133 536031855 337512203 322713845 923132676 804081473 982315850 211530142 157650972 185675946 532275457 408447369 513144381 974685066 110395729 244830156 731773909 838420772 924608176 574251238 155111363 244378885 335985418 408461936 840771475 557776963 980662646 268861043 388728571 594021459 835996624 308033610 454027972 100065502 745393877 75537985 992112154 907270334 659228746 610137933 549286359 944495619 146278365 892372744 391812580 291495572 537441733 172111365 836503964 645768558 170875101 566302406 910906995 687187354 108091934 350897265 591843916 214143421 75245132 568464039 690531892 579034901 632553216 876379124 197984970 61433204 462365755 440913103 529345501 700492031 385963868 643654544 360389335 366195065 485179483 788243483 319203483 455812295 208358080 463791909 788647616 234590507 554890211 144869919 922826854 966166901 241337328 306990433 331880718 668132799 462262129 115604408 861600444 958901353 293032322 947292266 832425914 242622122 256181804 252023703 52214689 322271704 340244520 888280971 350458988 839568777 437862829 265571173 920054318 40706948 994744774 664506551 997251533 131513699 80102585 39086093 596735542 669128514 609900502 756714493 322512969 127029318 802454627 728933823 494601309 322631189 108064458 358833369 848289685 898370359 966021092 934307515 596459237 651792137 280032867 647454624 123592282 259922472 927289808 862495270 136347656 317263172 582563334 152696672 917094192 552638767 355122286 643720777 871844369 201128582 903458507 403946456 769211775 113823102 944241205 29808140 836386182 552883694 282316593 740791885 691364436 362251736 861494825 633294576 361825471 57938896 635965231 370878374 373494337 522465850 222654979 129497469 898131931 708627522 683373965 898676297 274471378 206275482 9513353 70253316 884270480 545596371 879058044 993439431 860899917 689203494 376453412 899689456 929895324 310433613 525409881 433501953 794249026 419085975 61083385 150301198 468724107 377912864 822667744 102251137 494483438 217767360 571842853 806659620 472248601 387570884 849547700 541734058 501125479 888862398 309577895 530020353 403869571 223664291 786999394 595639118 557933726 239191748 412782284 312703740 180073083 595392033 969817577 59455132 252248934 399600790 722563932 686902933 414404115 330537797 589228964 139516064 553646267 647622461 691919118 452118358 101504707 991530708 643729957 333230212 344906049 603559363 668515468 745914609 833241524 270827535 295671314 210081034 605508798 342878227 810515056 474061204 738781236 115911270 65908485 864264804 590066071 354644505 215084732 919520424 614427994 382238539 175390434 978840500 516279786 313421753 173892057 294551126 249798278 472834531 874470908 558124256 982797495 31239552 172286335 33134274 94030675 94574582 503790671 795283820 952069554 132620454 331695818 579036128 263526591 626231832 309031580 831308644 613921801 689242528 249166700 955983585 547682679 524067250 324479767 799295519 376358557 471751772 237253319 407596795 912150580 534812189 80078316 30622671 337591799 587133520 869704612 320134931 400985904 295668421 186110036 3055661 341894778 358879832 38914032 154744395 130422487 788405389 238257902 701182309 341781306 958051600 417332375 310034615 860289185 756472335 284383903 506650528 777319479 556129783 42791297 980247561 127512442 768806388 106499760 314828327 949635757 295215673 550445584 178319529 867261789 348220337 464275205 765471044 656911998 356489566 479955085 781558083 352440676 843640253 168439972 784508409 800566633 891447157 960795302 275428188 550765525 643125432 214536228 991307044 981460735 183746503 307641963 538800682 876764219 593974528 442507011 644973006 866118221 876743107 633322448 851959468 101073779 194505916 329659143 937087165 603712481 145764119 360287654 567921954 826939006 725945848 546117781 188683494 481873879 975068254 779466737 479157545 170142939 267270869 956441324 876581155 188412524 147959030 276509942 258201676 121052444 701243832 20618522 553614874 640688282 979791644 473540738 22139689 671127443 421273830 78390161 493158656 15681328 389762952 288401416 654738293 92552658 176653496 541975542 945558530 313770289 397529717 246811237 181611691 438717511 235363383 212866740 347416520 460430435 33831167 41919641 707315792 49275482 129641827 473658796 36146376 497845798 965015136 32355906 269154656 312269882 26487541 622086533 718523023 515429965 376160057 802435858 773214280 672115707 109994442 269437947 394304225 688222380 9037746 788363363 156000984 45969054 848632516 794008260 77740964 344971 611622713 181679225 749597878 213700884 508543114 960991190 677658380 97560784 434857726 926771550 199368604 119639307 491020781 739159165 912789025 45532547 872257426 931094950 736054792 273921997 699617237 84787408 596317106 512709031 80428928 891946239 851051550 648811389 44368102 806892979 706688914 25521610 998717836 929486305 181406096 33710901 57937088 183853820 887361302 789673429 787476732 491885932 277903436 221436146 443283751 460681506 129585425 364002755 538256139 231703123 647367855 766068800 552348372 172135340 664885383 949007380 474003888 654221702 648727938 903826850 621643454 468862445 122788272 330856480 450624717 463265183 949609606 165301966 9529387 86764219 501057926 337787191 342066260 107921901 527163548 100933855 298356385 580637856 596118518 759124124 281049026 982114040 242395215 447922410 794317272 701976855 430289775 184569840 457126836 796235842 489906315 229593572 67363691 303332697 472047855 811582668 712597108 229223504 854243179 882344363 651124954 468048289 830146131 287077703 262404829 288446371 668590810 453041365 917803228 745438925 741847450 958589972 641158000 369970630 724164829 125922112 898685196 672333652 923809158 283805524 508324242 188866950 880725364 288679839 497867825 396766075 260308205 941711141 493075828 93365667 902862662 738080379 82732031 268945264 181232787 328824603 50210814 197087961 826600715 899581248 973044056 749156432 623464803 374370145 751730162 366508452 721660691 5196276 405474352 233697293 604673669 199892423 563274502 725333307 995576008 755154017 391581998 655288390 287420229 929728140 560730730 428440454 209983784 940212747 364116812 407149437 688039785 588057894 597810849 141536674 983054022 172011674 849423071 599917749 534592564 200112789 200838246 252185323 140899312 743327977 542776223 446285413 337515371 229280076 693046113 524296827 744260583 865365017 569926108 740640410 658996114 384540609 194020916 31869218 716817358 326278532 288423060 836176944 310596021 912718682 271544654 465022355 456857286 235439205 917701823 486137365 392838937 169851567 609742344 453918601 616859674 943319634 380058067 380878057 452296751 413624515 619444382 506741557 613819368 390805546 210595253 339035873 830567975 670465100 400112665 797547212 120114539 986395143 672203258 553545012 623954681 223977671 181398185 15332182 100144407 172004435 504486318 698648161 69296279 576917149 49337338 70358526 768598383 573710975 479244473 422965582 46186954 505842709 655155291 676131298 659560963 399735736 596493442 460836164 984191677 435944424 696592285 21267166 219756900 584709778 444888061 849064418 768620599 715959219 109759331 46958114 800518149 84171777 765521528 381029421 827543063 14423610 214961408 548898298 198776312 561359675 502688337 324083013 809138891 235315282 698874447 512913859 468604957 146422759 838843913 803972901 358943787 131114866 798768682 985601788 556310164 717874770 762091739 461122929 437205323 34524906 672043527 809407565 276754970 582845616 203796040 209422982 590128388 514043440 170667599 971299443 903105878 199675965 640489912 986282924 85446665 46502429 905245212 545233252 430688845 369822010 939941946 516795072 355174162 816054838 454632908 53269669 198508498 344936905 645057061 805923306 750153282 152916791 945758327 404205292 225893908 698143774 667635208 926517949 677916789 232768678 771975117 463864485 509750310 679811981 43719535 793892813 231252014 608389303 22979729 612526707 161888660 880149747 211208222 48983228 719927567 299039114 575926725 178543737 662009432 196254130 123404860 568173951 575632678 625014304 592697650 109628951 145917255 923893601 849905422 578677471 879409872 404421499 796033726 845849286 225726590 35115031 665103158 189694673 491495929 340805111 460195320 691659809 928087388 674303411 999144113 25682643 533617676 181265116 434441586 455350777 478226307 963809179 457279690 124125298 178873912 371286631 587652628 462413213 528926514 345768142 500725003 231925337 758933670 770761004 44460565 982246839 355930669 728808193 136824198 836177640 487336237 949592256 569989795 890659288 835214939 959540252 831522371 69953598 29243003 226811360 363233584 172234043 488306181 944226421 168547549 853107993 588525666 177343190 746902817 926266741 774683740 102038390 186272852 965910082 856325824 593744132 432647612 721123782 731402477 484303883 523309784 649413348 113704194 455846181 569849952 649645034 395986842 166459943 654115565 662028092 449011374 601848634 24039021 219202098 33318589 961373112 667225885 183792570 609678958 758979265 829339772 523179334 593791238 180918854 833359007 164693366 162448082 459882838 970600783 954175884 506881645 495933736 102630628 816125749 658084498 3100478 596795908 687986822 393958201 392728797 564785460 223441909 985663727 308864962 353668926 744534010 468316566 210141233 729670182 640857121 407843726 494204323 419262693 631720432 773236612 938240330 351090391 285515087 852112458 994288066 825878823 523061403 619014297 665495701 602337494 992746002 709453730 307692167 866526370 244663966 704006061 450842764 259535982 572571008 79705658 364639201 123104486 860450309 452439463 969693128 87833903 828839410 152382024 919626911 980516487 96041650 339116353 558267620 217359894 335925187 774676841 480262388 480783208 259864408 731287517 244057650 351311678 636194635 682225820 702528948 361293801 105289215 680018308 565275234 526877004 362380742 257259453 209699549 610664480 728780149 447340298 538601491 121484466 954713733 583054991 452584713 414372766 894570391 669778468 672305239 609081529 275778196 941403237 897946173 848203786 694555899 641443172 146303691 543313359 896719005 935319418 539308775 767669925 16043613 204913406 757313142 487156798 511677713 326026852 172609768 396170036 494910652 778155366 100926976 719931596 720522636 749914149 908111634 628304253 555621316 664151076 848203628 675971551 712288778 373042472 196075724 664557255 908193753 773701555 221376644 547578491 789734731 19033487 516307727 271408410 221845027 562983851 835621866 612372522 827886657 362289110 950196608 506130264 91094646 711994056 436375305 928228637 871238954 27371612 386877271 333728836 133346269 688843413 999193167 399253765 695160820 656575872 979146264 320921925 726841464 917189755 995228797 347670953 848219341 101718303 820766110 481861447 919096873 794423438 214693934 227850186 707137436 258255838 176049943 622948614 348736658 70817570 221155960 157263817 826786102 572668145 705207920 469780624 149862882 859623241 388769459 556345793 61248339 869053012 650606070 823382110 804922949 610176381 198970779 446155543 94911051 282209304 16582764 495921064 44818193 578683103 425836026 214528369 824535470 595383441 328258575 714956991 923922570 347512881 741437313 49725232 167681852 189986036 73608243 976457483 151841649 73646703 110336689 235665970 170180274 464437695 828444833 398991241 169428774 808724849 573238762 30831743 341474636 583016757 294450806 215417726 405587578 345183342 741244486 285567853 216850210 487049531 41701515 18054833 552733770 272171414 411240091 535306235 358559286 768573774 200888296 817126140 180656253 787150489 721484024 110053446 729458587 402321664 466484547 612054940 917571459 446449224 245102537 290687706 605618326 120989746 55532764 637223685 411280368 381281267 698916048 540101064 712123970 667262385 367602301 799710839 958293112 871382807 931700937 4500438 340628804 934687109 984661254 822367246 21875683 197968190 736546139 874455947 728509220 61984933 521041185 130748616 988556068 195679176 628438994 311231746 339275439 285389770 848844842 276531287 972421355 668988375 460577087 979869336 268780862 739120834 42306345 749991877 677367463 539732095 588492843 831463093 276609216 296902253 801200163 972095420 310070188 424311299 192868254 76212666 13428353 410990439 19340391 42055354 629322788 308395421 241440537 893415378 166675466 507327173 761614613 443230390 167814235 998803433 610398806 451922172 194194268 840249466 531486562 140094863 468975373 584108651 688864913 877097728 601345792 2517538 880751844 795349038 885849831 96272016 353724612 58089213 841366610 366450723 57281661 346893675 926695102 534985288 165804821 665943702 720890569 100643490 45306619 710836265 631182897 912017908 37689877 122471649 312131231 357922108 390726251 773331774 634220263 424344737 528299521 203488757 519375593 666743975 755598884 366276122 6893337 279871756 199169822 416704900 14964887 220539713 954648164 746365689 556599005 505431138 702587477 676794786 724393500 31024991 481026765 663220688 171162281 52256828 494871674 866177658 7702326 552156766 168211510 437229772 317390634 983657149 118707653 144758782 308875763 520906369 871561082 648015312 676663400 508341467 974606527 946520042 299413456 906336802 432678550 885055043 179157884 212530872 877528317 510591491 831976812 241176319 581090670 165389717 773609406 706889291 186185341 861347808 750817762 890290169 136087512 416557267 402236768 856658722 157920090 933353548 520854092 825117524 451341236 682786691 90322037 598992183 241864548 607309755 816103110 765005740 200329158 464516904 195762476 630706076 263485573 691649007 887686272 779605268 671627162 356059373 308547756 686901401 592789151 713154943 728811940 482645488 782548336 921569858 592575324 54705509 567996149 756754174 227068936 809212303 967397078 686101851 162422928 928130503 505835189 551259502 845710922 373801125 215480274 977767459 861531097 755239324 984777197 664389194 679523301 78820420 682566050 940262603 201689006 313639854 33092897 149296745 11538578 956762522 571300919 734272274 889518351 791895369 635799006 382258674 816489418 266839522 369340045 508190122 992399376 449960357 312046709 426998793 447581200 407706359 579880657 149513875 42819943 502100260 799328728 924306655 795184740 653238982 778347418 136211983 890075266 372355099 321053807 795086381 212967653 431292756 688516543 389191289 998034352 22356231 769381812 916248124 926567614 153235046 50555808 400900432 995893566 734927150 420296308 341878039 58166010 627797697 410307362 3978222 76112451 339707739 551032806 317861604 936142633 902484155 980100249 55035103 852041154 900422511 707746499 533706853 695813627 463673706 514193864 884012212 240450670 545564031 580250337 757205 199800010 715510200 160850968 117050831 496834662 402277126 631090908 739383498 584655738 877776396 22673367 415923911 48768835 942267826 867702487 981248491 262461934 535648692 811227 896215872 411861122 95515049 594211736 391307595 309992980 823226709 623045574 704547977 560667235 905866344 343732501 815442158 748721572 558689882 70026997 159966677 94506773 281392385 411348544 771661112 275747261 100742809 481211250 37190754 375261363 761324313 671393775 318859920 561159740 386226138 797974449 622897734 197087480 670536360 217637974 508715953 781641081 761559281 967412494 187747158 651119036 595613429 624811713 143477375 977027737 659459959 800404941 808855692 93809234 862452166 752914194 521381028 996377516 301280625 956502557 493276710 723160947 26301977 441943023 420079497 277501146 559082387 534159093 607319828 961047782 543195518 548399184 141261494 141499374 581118790 713616799 152592131 344721529 747923863 831832795 859881436 738845243 56397579 511699211 279114790 614779586 156569411 310513407 657961915 985710873 119476389 69439494 944209421 857345945 462622421 239868410 858690531 297546340 838222944 702449480 49472085 568748297 744140941 136978791 27613424 471530494 467750579 900380643 985263262 907064040 533637686 878243167 867001392 806689658 341414621 562152026 737711821 172534157 516149452 559159958 407883636 170292386 451071716 774050418 539087895 802245793 9995656 686830093 191451486 58635905 345466803 942338958 929306082 982501133 861890455 641635994 943728608 695617195 769812241 74488686 395963135 869964361 646647184 874501417 118965075 124160614 307797605 656522611 708191015 185413731 491921784 838849986 64150078 159473508 369833750 561218040 472899018 106479696 608894573 270573537 766579072 596445941 476033147 105619625 151548229 492819682 674586381 405919621 722841628 913983444 989204385 461932779 654455434 644757938 98371174 356483295 478833154 215758004 832488701 989264710 810695201 601406504 915637696 687529497 875711449 741107562 625899773 404591631 624916872 380606689 403420927 6163896 707920772 328841582 464126288 285349403 408720881 961243482 834266320 262026734 38864101 695587354 944636505 874527768 635084970 276949936 217606286 537459229 93489554 624536856 344977909 579334674 977067883 291056018 542050558 593944389 446606452 667516873 398664270 266359949 305485324 197034108 226126539 327385645 275763350 354572217 627751380 51414469 424282436 755252776 437004925 466659653 370578205 438981612 356809016 646168884 942271168 921584795 499777454 66426575 55638729 360819743 954907716 649431104 411341481 995054634 661945105 621357873 256037493 41501072 75124160 212203642 722182818 716647148 988494224 849983524 665550851 114982197 71608612 988484348 523394615 771485196 586367731 168154637 996821628 124112745 323936384 336386084 3491012 977506408 633052149 503406075 312420134 353240209 653657640 457110388 687414859 97795688 202837841 302216493 252394855 533504850 95674427 411244802 157904137 77445693 860754570 369024510 444954120 556919261 33009772 770103167 622184129 113787199 477161642 149383638 434600197 439965757 126786026 694324572 582955023 824240909 864704749 791870665 734207759 469381211 150872081 794024830 678960467 502932258 191313256 710463101 33141120 885706096 11849982 106626333 589697910 71785257 493790297 267487801 546222933 890219153 91520574 764368651 942412277 723260080 100270642 361242082 909398009 703776649 885434228 988062670 282404345 243882323 403272500 221438142 600846665 287849677 85354734 907631650 49854093 397758388 763868689 421700441 998108829 266843738 128733386 751974869 334257130 204501387 350260526 947768916 688564222 548553716 55759314 496470009 730835370 533557395 157744999 24409741 481919531 256162738 550950399 549367710 742344076 577936073 800362516 294189676 114384246 944339669 898098653 224870705 829371739 859882571 196744039 599031782 435936861 773504076 475521417 154629220 96584156 879944252 770857383 848913726 823388464 933007836 470224169 730899967 618198648 677946843 68447315 699990398 705281593 432650879 47837936 265552102 365924383 255331352 747110048 732686446 11568900 684683683 91902974 292033384 838046470 901875627 321367746 830484374 142794787 145792624 721036681 43053551 245807458 713333055 990313506 661103759 513426662 426634197 616026026 15403179 732573993 3886059 859214006 268851428 660993840 6421167 644779930 982198007 525915217 64715207 935489443 661977532 131608892 917160526 322142913 825449997 990277549 591164876 616911572 426409514 303486474 892335873 432502799 449272896 268503081 542793435 831647868 494152332 377398471 130475779 434317275 88256498 720619851 600064008 438057889 38451037 315496019 322989746 960705506 398296716 850264481 200356368 436652931 613110503 535804635 615316925 779653301 635137565 565176246 910693283 425765077 503017009 432270119 187482213 940678142 628426942 878642895 678765320 233290260 785848913 492391900 986913706 158013336 71654654 807746116 410467372 450775974 139519048 748584600 760488662 104966399 913401058 647325093 205664195 375954000 641433227 52235393 264656775 229913888 339504477 452257282 128499518 178536501 465812652 174771382 312910217 977119949 380462333 455798879 125075268 274972170 259111641 526808028 263653993 699903121 103254769 495465374 237253153 467996489 598584333 854243233 293311285 567172121 474926282 950726034 665067524 228540930 123058167 883426037 413594507 662906625 426884306 655085020 141155129 349569129 674079281 436682261 486728668 225288752 657586694 39513190 279113899 617946487 734155947 450097020 647105018 315282982 467014876 924040230 793799512 984048359 795556409 316923454 90632262 549041376 789511154 919679444 448841053 48484725 537436753 510094239 149131807 553641082 853895808 771401543 851934115 441446926 592562003 269419618 179599939 699368758 875915356 685138797 927322636 197477293 148918060 259892362 5913164 229420979 31939072 412189631 766556566 571264914 561626301 751098563 72494675 735777830 434554280 386897243 231676374 507552010 32240911 448260291 962756158 861385203 527269243 631581692 45660460 678199080 763787610 256310299 585181131 192434171 675882200 850234214 903874488 207493886 864101870 384807016 774584784 326050796 724592584 623267215 901827327 84352180 174119768 431977131 293745400 62526366 809497391 702058424 539105336 719547752 296720977 393145496 160708916 944671012 202500027 433669715 87831555 194265568 557452392 775645662 201422457 373015612 628214206 876105459 185078949 63196807 244692743 152724158 252080147 936030604 87808814 446228955 210136177 42315110 108964154 165439452 385499266 282340941 153851533 900684952 42409701 266489316 975381052 323009320 750340288 266379404 778425038 469798924 677803999 905849953 738172722 587861127 651141554 9029257 449227093 184773886 128116037 707830809 193140089 101728364 301924128 112639555 833999761 803684549 219313400 596273544 259908938 295729427 43156027 121438952 161024339 350257257 542324598 935778422 662123687 339128245 629353621 83110487 833242659 86586328 838669896 207664830 273973083 472896092 240446007 474724704 961097329 731358521 839614355 638345855 263132501 551628599 588634175 203428641 331151847 444006292 496658185 31056785 71074495 186748632 659259352 37638530 401530213 833560680 840048666 785750856 172935183 447682815 698771293 623641242 130397248 454320092 551381496 741936459 460379200 718163210 644494651 158275388 895912592 67628099 222743122 404111759 544996635 348675196 998799936 65317097 481170160 654617470 933920935 767797761 597120761 153467759 65395093 568680333 546697538 654984561 833420130 678229607 101308106 142051889 378121929 818462880 277210102 756629501 781369730 349007258 471913717 772462017 498992027 419824591 833293265 699846980 666227777 178143089 604479902 922006962 70084317 989852181 166818600 466546187 669581469 882276329 445515572 202235834 583948150 328991000 355299257 146810051 510851892 77165749 531767094 31427480 94436877 331146488 207008533 192572612 165501451 804917316 931340988 381799781 489904750 510358228 974973121 590880955 593665083 246729281 731299711 737476521 503166253 234416236 936831526 591682107 117101009 857313680 371782696 722877321 372782459 706743713 475577874 944558301 391325766 872169297 978084235 432206031 630372226 750478644 89551515 737225487 534255708 71385517 300435465 116286313 380712594 399676197 404962702 250614088 889053059 4923601 813708601 190987916 47995885 652146412 138028838 800463235 382165460 359556404 908221725 272319925 916655778 812968444 969249808 493969946 810953433 139593875 338335481 761378860 510478633 943446848 384836925 50464619 187110212 111870467 529240474 412524723 237257839 595538528 822296549 257409181 391233413 184190933 619294766 138692831 373767711 998317255 123765604 953003769 128213232 388118943 631839529 746484912 776148924 961122705 85986178 167284950 817878537 813614935 448112521 232361313 784445087 94438308 858665619 770073863 970002285 588024272 751609224 158994812 485407545 14318964 982273012 842633377 820105521 82687130 451069959 471659071 588465687 596039667 500837432 324246333 294408508 110043256 913637728 355956919 75016555 114595480 925668929 33574530 237818293 758939340 412956694 799047111 422844298 316792626 831049420 757182585 314918314 477624810 740621176 759463061 653915878 123842338 392219007 641053823 519496663 926285266 352464931 757203048 71039930 435762353 35583522 143979713 122944199 530221465 214038772 682171115 683735619 869347552 711272125 701360199 388316241 611450599 761454912 116221303 12125823 166699566 32646193 4526139 211449685 154415803 926002705 820854922 926636994 401181962 118672758 409828918 710587056 9321501 723319559 816190014 879984132 120457041 494339305 405604039 278360634 63556176 8776859 52820896 547526105 940298711 770443176 289896848 282115188 962319314 240521648 87886785 263383219 229639088 42973350 75917224 36950041 579785250 944151267 955528657 266373811 326057910 918065480 12365 418039111 199890671 190905854 405549550 401381418 543525904 676574786 452463878 663401867 446991799 352751219 470410338 202201693 709483492 664563238 326042101 762905889 364886679 496800281 151671910 555763808 752593230 721738218 394388343 926582924 509753235 649990343 668267178 780330192 832455051 895286025 520666911 421810752 988712450 644404807 998849998 329995874 205236648 208238632 784185582 871262793 650522638 447405462 701710597 650466606 92190669 312998283 33499163 181707398 721683579 824716374 902607428 893759842 352493056 519442876 623978365 74739296 936581745 744194085 764163801 282499017 854082262 654999676 757066526 693701892 297284318 503304333 630915075 411008480 663502025 786213324 507226941 74577982 644183273 187411615 130222442 740769533 502088673 521893828 702676113 424743515 177290550 53190354 136934311 122824883 230861570 638766958 212128027 694636745 215148110 4714466 147998240 973020810 371952599 768559661 86965958 462321729 357472012 641499042 798999197 667685400 804336998 740806237 596754139 311375692 414202661 767815562 508075631 852354973 480321492 317341467 178559418 946456529 297583831 834955067 820207811 909800368 420820833 310380411 337648321 912318610 694781029 91601083 437780847 900362367 205216253 751953141 796599972 893746791 637442979 944384852 246073108 109073596 671421697 478284155 238723562 214626188 558039423 675640910 32803834 553624938 455340556 799988710 475124622 61335168 507899063 745963182 722648684 607132313 468297985 457383637 517670728 237007634 628878418 392955979 836953681 127352601 516862052 81415421 128483582 965136831 47636072 157154474 461229563 514072862 526706818 297691324 678155743 674827295 155180993 190408607 56147618 163562472 757111263 161935849 114286529 330677536 762768225 199070114 208912127 257522558 478968953 287311503 685944925 329912526 212615765 108585209 72823064 582226224 84955861 35284097 945190323 642393993 308455279 323229976 17784155 777267430 651059477 808500733 917210305 817151110 876335344 604549544 652434882 634417495 719136137 622637424 299169072 954623410 786252185 858755590 301047422 502643986 135535074 32070414 581717403 433985177 601641354 936882416 961866268 148557070 746708301 731941266 309884402 573523805 696015464 525147865 202519018 788022968 384425146 674967792 790553485 684291911 84310374 11291452 961519434 78777379 863518002 836153684 741844823 901393171 777071920 197952312 230956054 685672158 615751341 422964149 845283406 307943305 70909615 328928253 944245448 290068239 411850420 901507983 900987367 312894132 825821897 520288915 765290270 766144046 598876665 376506433 818651322 173145677 358311070 769172363 761691945 167872074 651397267 907219759 723179250 388653580 817789050 751961356 237732488 477393896 369168322 10952456 605066962 861617835 646312914 335489879 968949581 154628490 880527678 608329030 945933257 284928092 545432030 934674879 177155376 789841838 445426653 470124352 362365159 847263209 567416622 528681104 781230045 70931820 291273083 634883965 494310920 88187418 571915573 564684444 106384906 56358241 729003727 630962774 575594946 394806057 486287352 144968879 774563121 800495467 518655125 829233120 747102139 992146136 790741040 633435581 228280340 951834533 600973482 267567971 279065364 802307119 344419604 96092065 11261157 253966139 42731681 399864115 64475788 813641058 63016018 550164507 904817769 78339513 889664205 842460380 982623409 116916260 709750064 239398251 770964399 970045948 670142610 842931361 641559880 31262443 643659423 871126235 636748519 722855781 823029696 926008432 848328405 260342682 298115717 178284121 392932957 97622505 212804197 778616000 731687714 191004130 539405154 998550238 872351108 827841396 542114352 705697237 380884332 485673472 725445646 23725111 695845408 784324459 629850006 369781664 37270143 491813622 163091726 654932114 260968303 141367695 875122678 878462660 581305413 199527608 511810591 969297485 71725494 623817967 526119454 205191678 168293992 966500175 553335085 712214976 688318637 327673936 742242753 608459937 748916006 111311158 87164426 530794108 656061390 214086756 655125801 512880534 974449893 163664252 446911217 547843295 313675493 936757854 390657515 575159043 203575162 290013792 390815237 788635963 688277299 424085580 651413480 273267196 515151898 391863884 911383092 153406173 456450934 996372566 857393518 924715245 737137198 449201981 257417387 716182142 639804764 47311776 426574006 190709694 549067144 780576080 962014945 541226319 944557988 246769006 397762081 812377379 131452360 999672623 16062296 44028380 942530138 210540750 88872164 210187442 950992193 740451463 968026844 969046548 394120695 397253911 963582061 504988708 455521996 903688027 380876455 758945756 485843099 103518030 594826710 439743947 714388452 814131888 126670014 51625808 60984992 685125436 842546084 226476498 918677683 70550806 404397401 670405153 553085221 842617540 334513590 686499945 20971230 146995403 136936026 407004360 789891192 815887977 721259313 986799964 359213971 870107421 718675857 161471612 954185620 193530126 788660747 831022979 868509316 395425102 398722306 366589395 9680048 220790195 169280567 404770337 658061542 682015303 932317232 621826770 732419456 382795738 280567671 554634188 859554826 204306550 228617028 555334442 69252400 434371235 484560216 621461082 933468332 85631896 149010604 980772631 766812441 345711544 925432758 695628307 555817339 654294282 622210715 650099240 926222114 794881311 596528273 481562353 832206607 439510315 779843231 130911020 487682144 661104738 880155093 693991316 259752339 366594567 641345185 225109356 722745018 473691237 213230539 115607 537394094 586977994 437983181 745510502 680969180 91903349 269875420 83365039 382367409 185148943 495356178 622405020 419783562 106205376 311033992 156326681 691650380 276868820 568276031 644225806 458989292 343169809 104459467 785630974 130800771 782804255 940738573 845141338 363331258 54447726 645930038 600614020 366523308 586304185 4249051 200643450 587291623 28690811 350903875 696844543 447062481 824921663 811164468 381129873 283866434 824241025 548033954 857070643 110528336 698407154 543740921 176926158 673488984 133987061 908828863 70273638 23362444 906175701 894574761 227664008 568885346 208884006 833273291 938601197 925306329 740920001 529899934 753906657 752700428 365632938 497353806 549225139 868463911 66305621 153537175 390988524 823293712 891681883 610399842 657574317 978880886 127038532 188782723 157185821 240709411 493970217 653191012 993253578 277054164 883823533 961066288 721408521 254116854 275217289 654353585 961337937 403177467 375994952 200644884 404687381 334011314 7071692 411232553 66350339 723587031 436560286 902144448 370162266 673881502 837215951 929413885 533277120 503997960 110091361 942586843 26402926 25205635 318554844 218589795 436645013 274019008 900284010 370694744 358581873 415695873 762784586 534560262 967000445 582234016 83740565 416308719 79830794 685806621 798807973 648404571 985325785 383999193 178483517 525094697 121838735 612707842 401866114 376344660 21266479 719829083 151164660 110191005 745472854 779915944 258735928 938435258 816249860 88214878 91924687 744231936 742436148 371903538 497092794 707905616 109291348 737078130 647105130 232618286 604170381 401109209 62052336 573464495 807301808 584120719 583599272 686296417 847096664 342610987 183001292 42306351 174862583 60490753 275970762 923838535 293445415 266260541 244780672 232317100 472645674 460386630 187519042 251920124 108820499 314882737 369038590 700699700 634362371 376939461 847781152 784351610 35215010 761684654 838221330 59507245 433444476 525608206 941190251 58957264 336247626 822634776 642787394 938219125 694136069 264733934 746543176 314055483 510825340 831260472 789334587 686981990 193598779 967887620 285404807 148800410 235507391 790748765 146236072 80464386 97348879 391346401 595922333 331021436 795104837 214131383 404142564 910669267 16509436 265918068 351327317 680122890 425375990 728666366 841580312 403560825 32357742 15442158 241217234 962029957 115240041 136174669 376740436 910641765 507137183 519221078 401292219 108962517 568230263 408792450 620240830 123721383 129987780 904176344 886035353 517168027 228145646 422329640 789243989 485953037 517959482 929297887 670885233 249984964 422927229 397498984 560591368 492100688 58219284 706413427 801259915 886391286 59641455 471764023 745144784 110835979 918843514 571932323 166666526 863165922 69300354 652049975 334132375 907438852 897987815 896996610 946580465 783852797 269743534 903528144 445415819 220088956 699666863 790437584 818597833 927006659 712525859 236842628 536683947 892731873 195044135 597990210 213146776 851290619 258595553 809477967 804292468 757377613 277415209 531449624 272370180 372372785 360028468 74658932 412568145 183765149 119304481 721716402 772011953 577433527 49417686 773057297 265882885 119338184 414445952 811468050 876551314 733567231 529315635 540044984 470755896 7851881 489199695 358656341 288722543 826595576 720132888 49822959 612821149 40166112 734428611 131765004 642244763 397047366 657689147 27513152 786591035 959114564 278341855 731863975 476100759 726558159 527050574 5391401 888916041 143161931 48717153 742384154 486049675 666075516 371323161 141525287 757194007 532054300 807347098 31986086 245472384 36503195 968965918 239315667 242873198 187786115 772514774 611426673 267423768 758868119 376051022 565623297 12879391 42158691 779045953 786677578 469230004 901145646 100094039 204782558 968657697 472716741 717296265 82193591 889331030 169277864 23987025 345176323 546946653 863329447 316416700 495669346 23532707 259293638 510265777 694845990 126513437 887393813 476996826 440331971 397436849 199610875 978877508 375949180 187039085 737102510 866085330 678545504 797831196 771214286 752848795 326816921 95417337 709622338 605060041 111067974 819836733 103505257 465466252 22811557 945855417 477896866 949322752 773814234 949422461 261573076 444916666 27525287 610849027 255189288 738149053 732106318 904945767 684225790 788307697 489948283 368526643 199205610 911453201 577725353 870459812 378397870 339079865 777992250 543442814 790259345 22800256 241559105 622013633 547951832 437396277 83654800 657104112 651699664 473442082 396016435 889015025 27809205 439044784 161931637 133601011 511122079 244390311 896831807 238212193 351885937 411158919 726028098 946776480 868055245 596040357 530089247 121213804 409464562 51338239 783726648 162380280 159435882 142999775 403875236 863241502 985252240 760202269 957807340 654295081 173037326 341310925 739313113 97732429 190658533 12273801 78354985 855773628 877027134 386655642 2566525 399633490 988671982 82904161 270370274 934313965 338549948 971310792 504975574 341140246 278509786 961166413 259308578 112850002 561725426 20572514 254052372 192035372 508045421 282071313 747682854 792579260 87976273 975897927 998797074 193913073 578235989 554927092 682369563 199135903 154258054 119888076 542262971 902423138 682127581 447299034 237088146 56145909 915522527 158301189 214964750 951083392 926936077 30003772 972426586 461353924 958761817 198048052 914834958 52434536 974798556 277544635 199759088 879222553 198986675 475094374 985221875 810830052 976991601 883280489 484694208 110998802 623670110 713636363 438678037 968911115 426180825 193044317 77958705 788650486 689941439 84556275 387133999 153798332 758496962 627749269 80090823 183250182 16777103 296551105 301655743 945200864 574060841 537877927 334857492 173234912 277551670 408157373 44907023 35695293 544803760 497541924 298454694 596544383 260216161 136365728 825340115 103096026 711564565 628563647 850252059 960792168 334239193 258452913 399024587 530599203 714599049 368448386 496787606 326058846 151741906 24011727 572326175 100327144 488582859 801345729 330824030 941823313 540548169 689588239 557497756 349292711 123443478 739285532 403354155 289369598 25822948 620149152 525194557 224564337 140221427 487358621 693213362 726807344 363369999 621668270 756508272 414215927 226147703 896277936 665083671 668866271 452243384 693965902 295445635 365521787 239967776 936857170 339963456 531350336 357975758 356560465 256427851 46875498 487433611 374823795 301430490 876907508 831579091 938613899 276264318 113921558 554986927 58364711 961784320 692964021 82727212 490566074 578385429 494511149 197873863 332667392 833367067 111573078 618992325 875540710 260976434 46231734 923216147 389675386 360462942 967865738 146611156 240885799 816311310 121594569 980732656 104457528 471332045 409964789 239358030 560091869 83731716 725901948 616685668 71768015 577864328 104839197 474791537 975995119 263960890 987230896 831170567 497216802 288640922 642483219 558297258 266834219 797970824 868610876 407725766 808746955 163989850 30828006 209870872 603327907 401362842 47660362 62808615 161401827 958725977 697600764 466585503 181659503 127402815 418499139 235821243 175284275 666351108 567956239 596175077 821743969 800415144 189561722 255860055 786949083 955065196 209791232 983780912 89088137 572141789 71503944 69325225 373113920 1868469 371615196 490665848 757924804 55229051 818332845 352918865 649955935 118485556 573831891 487803910 614647822 155345111 175966661 384167261 867226718 569591928 470820643 302195042 208719416 610372336 927743296 837924921 377304064 663247815 425986637 147422821 168180093 410854799 204263807 464468090 268146161 613998856 997205544 78190058 71374055 708240569 770062161 676463018 768542584 228120065 938672200 709386131 844504753 318317351 863590606 142519480 867587404 733773721 284220025 167717051 608910133 10089830 706558830 272911822 996270075 659334150 866063506 190025199 289868307 430226975 815728387 106547354 127410764 178365128 448177537 6571125 119895392 490836597 628556960 217612019 805202388 397278427 351679911 656878924 924221889 68071472 521087078 288374219 994870936 35092030 430838438 795214 518695666 269875344 353051845 962571418 388100406 560169721 348481775 828222737 58776026 68121632 725112461 158384794 866248662 729195066 440502459 95345778 295526189 327059077 927797201 78820976 78811752 975768698 803892369 301288739 214475931 535515378 509713713 604537277 977504151 209879841 538350792 194912356 467551751 782652213 474449314 288795834 16009688 258813341 325725472 22375496 402689499 679080164 632308248 669324600 885048537 689783664 441699310 148532468 754474257 675416022 164965803 196374391 457025569 198012939 298765455 574473809 722696243 641917434 919192449 999368297 891964213 15137070 337956033 118689753 526656208 533403578 70466777 914518132 375808113 977998586 354154802 867628338 145725565 138851159 953298047 788311666 637372974 123884971 422734078 177495958 36244702 397299939 247502816 621693899 136363829 542493960 527037954 479507134 320910106 634695933 801880570 978244890 901890999 123695300 915239434 727676515 615188722 954300276 641970121 192354198 632637051 598824683 730691687 556494190 345298644 222613771 288715278 281749662 89905584 260478869 265377402 870444981 32733939 935870830 821145155 921921612 169234397 774039574 988512865 826683438 344490797 240123843 336972820 255353909 652648778 655841395 21430654 427704130 308862321 832849765 98340740 498412694 371996217 50303479 99237687 407307238 750423642 704143894 662821713 320652689 430864676 170281237 468027979 846008361 234858811 891133010 645555285 429228541 826962987 1018429 678247229 390477652 539312555 256441264 712181004 171001265 118321060 815005036 106502886 476823076 698603448 216278339 523897824 727436400 252487230 115504467 357121930 429838392 238610019 581362950 188414502 211271908 558553699 690744913 500388647 247548511 416205553 982483011 884351723 164950693 462328900 169938211 622718064 593472699 125539704 254918268 836880297 487452875 979112572 743017106 799989514 112811669 137458223 886555932 98152680 31836192 945874337 177783856 404497757 79218867 265059184 651801840 876262140 562199339 776416962 390343871 999947104 908544943 886601751 525760097 172504007 645996402 903344219 17988603 738718858 843780639 819955296 561395108 464638646 250740731 492935337 31278429 549401248 595879932 33550953 143944836 268788198 255078412 929408576 426735748 556558213 669765370 17797564 193768881 425782771 784308131 973119169 270676470 695265661 761739977 12817435 398492616 925213777 349808243 482083492 915546352 589246400 223271882 106831791 975419588 551585609 890010406 938596428 536937911 555352784 304983207 499327330 580797398 674372690 548222489 934250118 85648194 183205696 353149560 632068932 796296499 501269600 529098255 775658082 968845455 644712068 131533192 644277800 678060675 109694403 250929916 796778202 996436110 100756266 214050083 19048166 890751049 74032534 537968671 220118569 980741430 235567982 303219308 165436196 218428249 357156441 975390828 700849948 908313759 787247708 847773427 574254891 765488654 908953830 917297335 13555143 845259002 673207219 634549513 469959250 219694944 134843825 119441005 245813113 581664559 340947173 642281946 78816758 755225565 447539210 698460772 743328182 88932831 393923645 150707133 901632980 112051407 457278303 899721669 248793153 736974912 11092257 519158690 774511005 204359431 977775070 314357054 809846355 588322763 891994695 225028146 225418173 874766196 938143405 639186783 49796905 718941551 529117269 436545775 903710509 882065967 304762705 13876339 689756448 507907893 525081190 855652392 549048733 296971749 72566654 391364015 981671113 877601747 667087008 512504237 436526330 299006010 945001416 413720074 32494516 545004411 817204801 812344705 599793131 628482324 115298372 448457532 226808363 812446548 973574525 165590112 936464041 677271484 498866125 400583505 736848562 133941042 714905150 466594848 473836374 961579235 147523257 941309376 782481 289767972 154607324 86394732 8030952 655363711 237117864 292337030 701569518 429292670 97604988 182243881 651632370 626010745 26656964 935324034 501954376 47457282 806384011 711575955 99558537 651020015 330176712 308910291 675302669 106357027 958137691 136586083 482908573 419754836 290144969 475212739 437814201 346824191 693719583 141316459 863996850 326682948 432145617 78663655 528999593 359677973 250775775 934521460 842681191 900794348 855376736 82577259 445245780 975004989 487578482 801256127 45891840 83158660 397728310 541088089 776169267 174230655 468469079 621006771 649428302 353458329 681061286 820054448 882683159 273821385 724203259 465056679 569651568 349578216 900502384 406904758 737162664 749810226 611971362 528658415 966878862 597815015 442952969 350061259 185678589 948926997 563464368 435611304 601448751 207389179 270859991 282917169 380384338 245301004 675820431 664744312 944011016 868794891 510845019 142991472 65566998 427313361 5251071 306464098 124305894 328286092 962553045 885000845 941720891 759229059 676104921 595399356 979336340 6644137 192897707 995872394 347470612 324997155 651248993 506267954 324999881 506147719 224988979 134122029 525111775 176554773 142703345 348994721 343018451 530728690 770223807 976979665 872023873 71338668 370315956 948743676 449109530 16015464 634540472 658836780 608916868 531084879 549703555 45173496 257401604 787987365 382362998 760859447 76193538 836261545 746888726 340178216 1281836 516860565 224384158 243116339 16813455 127846518 922394292 419641399 694778673 314624122 419845918 511418535 453479285 542269170 424341405 574186721 250156488 874700345 976752729 928377043 372838338 755313344 658935119 311169461 631876399 985417799 293584378 580718287 378016648 307656704 47548780 129955421 382265666 100987564 991303023 922323789 344212633 112395125 918420271 723688181 152225433 799119876 378818381 818263110 639513150 63540249 737151917 432154934 20494902 208457024 934037300 853211273 187396039 643982313 844011545 644722867 517509026 546315019 762089140 592003693 478982853 919457476 562099615 231568986 529260020 860892814 849307791 626668403 450953256 80715897 522256379 477237163 135674032 983490041 206000173 390746003 334307426 68915051 156701015 995135240 578644671 5002236 608389292 514233438 188082184 748482351 377256428 628868375 245959150 157422623 415287841 677306930 351791141 655561597 938563269 872426699 320369485 730479114 7438507 230181990 757448160 55617098 979355312 484414334 474231619 605547358 633731324 917622780 348523347 768217752 123620269 448019942 770477674 875616232 35201438 772062454 738569276 389420461 684759369 546392524 608755627 948274928 171821248 502325456 686200439 95420409 548850110 646935508 478888315 881006594 118923878 414959224 768641037 303453812 560176276 139896113 693054111 855192950 948118190 297832249 941668741 210551524 895111777 114198306 710246132 545447334 435874503 741332696 436792306 985926759 162519586 421759190 129677427 55057198 510774738 893010420 867080918 375212633 426945472 726328366 310689325 941371175 841183089 14388617 487801000 849414835 221729276 32273742 896452504 38176184 390206609 989325368 494504201 773718796 887948770 391118304 194655049 892869146 422347839 840115456 394864484 196305323 535203381 788993096 722904657 642428319 465140185 288730895 256571173 207746919 81615143 244046305 522522180 471192136 47218314 953334848 735635319 241308832 332236869 205489277 280719164 347546148 481820213 326773113 400242307 592911665 685187560 970131695 338564375 502383709 679106825 482424642 159948602 592610764 217620825 517836260 467901477 387350943 758869650 756620545 729274247 971211265 530295599 628327055 863433291 736541252 661902876 172616791 423330094 663103109 232292925 686956998 305061743 509214494 507209362 945817966 761922003 637715133 168211863 817923706 388870337 322332391 650448163 239175088 218795224 835967146 305590220 857918085 473088269 254878658 832959077 365036565 258458545 525790164 769543232 576381483 561837273 338514247 635036283 418107257 738996822 848730189 178333316 662085392 486746710 992242693 104079211 800974663 972203654 525054110 403879616 941811678 391787602 826738675 175341887 21499356 201124296 323601084 648337879 691438119 472952491 195702913 436365140 457551131 232844034 510553025 107755965 913766069 271162768 32957902 744691834 25204731 450518042 843354738 648478793 728498547 210472812 904453585 13028568 682000856 175124355 248018869 972673795 301040930 248336685 82371289 697922271 540723996 439680641 366572467 309650091 330600207 583811803 578299894 492471834 15555607 781718240 924409916 7855221 593596732 936289833 869715969 894736147 692422631 435561414 829896742 325525085 413374015 370429226 940196991 823517985 779799849 200694276 673965209 263911392 188348851 655041330 328010081 565975105 823144224 811500403 247680085 415488832 510688836 404031589 819927695 279638588 400242576 487062782 830794449 360772513 619043023 939338215 929537201 666365045 25644792 184781322 710555634 634978250 447430138 418577895 80695737 217622184 878650703 706830701 146299182 640045756 287779225 150527826 981052529 634214778 182500703 419351995 412260108 890914836 383721236 435497299 882835087 291364202 469695175 381297187 777043969 971755503 652724307 297948134 39595960 573041372 646043270 23633472 444719329 294984696 387670528 85849257 747103943 712756269 316236253 894362971 746732765 810384949 25383078 884726144 185241904 477460492 507406174 32377572 142144928 2320857 769980878 906862430 804633426 723799131 787543103 860105203 57440728 140369474 840620570 967636284 447688548 210874509 356749215 637965940 884364416 525055642 742454939 340594818 476325574 322887650 170018581 8670057 482043354 301049867 729811255 638415227 673993386 697877965 237932168 528917236 847692780 847589306 515237121 615852972 89506965 854454266 830719960 378996503 942072385 469813644 25774343 22707678 35680543 823567705 727148805 902350524 491046886 162766770 21065112 890968915 863575587 305212552 632176934 233871002 533272980 483957080 679662509 797474537 697790787 880280871 488525908 367557386 440328910 819143332 587674387 268029064 842637883 400747705 576913599 252912210 848714160 364760713 136187013 764943512 875396703 621653240 336701375 885297326 285150803 74075227 272316456 691391537 638551307 535107314 913074811 690608654 55056445 575553628 226327197 218058643 282960912 559270174 663848125 573122805 219911996 244453631 137473608 618046289 505648666 140106501 820015450 378552946 608750328 512022880 418382797 403338814 415753475 208971606 74435449 201357242 357649107 380661930 750416890 585127347 671611342 136270804 954369070 423702676 125521056 450347616 370291623 211323381 799543898 327817786 718409005 180095365 515448595 578207334 208069985 821860940 263102090 262244108 212529827 867623895 262114180 583919923 964273571 109243483 485502649 627307253 46174504 393892141 248846036 913226527 512121289 557838915 327320126 634452556 770174535 986764130 545091776 401069355 641852186 855691877 799276489 852539670 901969401 815481237 811001868 941424527 416826495 385993982 211846677 80271190 436925059 674658671 385325013 788970734 773088573 713840109 877852586 109588277 315353433 68296594 396496729 635253486 449331314 128667290 133975975 262053564 198660933 791344277 674929436 662874811 908294885 532955680 268898473 252290507 710206604 518230776 233998676 659420515 226408691 391833424 653605212 693356469 308854589 987334644 850159204 314973242 259115290 494764783 262321699 637009755 621264607 330359757 27045592 533283700 51461027 410113966 951862458 570758542 688869993 545366782 213867659 201112054 996771224 34977242 67662240 678514662 333294669 572122315 687067366 798848597 725663600 144743281 788634830 514721514 481924056 685587598 301288018 17800940 989217236 749372162 336500929 27933108 716444439 922575188 660889455 51014921 938398814 142918634 492006327 771319434 851046280 116922819 777884389 550261681 918541924 735582311 606686711 907298598 671146845 98905912 490198489 377056352 895560107 299693034 790816667 826318485 880123866 965914546 670885484 187735279 668384709 366995274 33570062 652949362 560389691 80228894 998023844 906854547 160176440 53280688 543366656 253378711 181489367 528356553 832919972 838387965 410462023 416148300 737722023 581537270 800847752 787551426 498838724 740583717 796460259 68625205 388589443 365468557 791685416 634963418 678001772 433695273 208384989 346315017 717292953 546998894 780606240 696610552 144215824 462969308 326334763 205957586 308026371 87126760 334240795 99335644 710176760 342327174 754155292 309444490 246882146 559612291 934216813 858946233 612939874 697944609 43232634 948281386 677599776 18928055 477884955 34350055 839462507 545921022 340782076 575805473 337641985 893931496 947843632 856839403 378083806 896885601 191293186 698463185 113997050 975228004 226346472 945053347 557120984 433821870 59309219 102469449 485399187 256772256 462796605 558489955 32281456 36102140 93332071 647362576 834575905 980525760 383136860 354618309 603815155 405356934 638481423 738502971 72891652 146284476 872665111 60890266 152104422 459071696 476231037 445340703 85324610 865038227 584072500 816372100 708987725 266112439 447386264 915836610 962933296 223206930 508613892 844453102 852998219 512489338 354835218 301820518 380229803 590242330 25150700 351037287 181531871 897585301 948723940 568628158 898073724 733892123 910945218 132283779 790668968 804428043 329395719 409200147 315116492 782521972 771187101 78371889 73823685 324515499 433233533 331376935 669420463 986504655 509094824 959731837 573125283 927051864 499021595 307681658 354522848 948535768 931225086 179016404 836396657 941106211 879274245 155371228 435882827 353432338 850647714 809259763 183438541 553831053 93766150 973662870 960218494 762873367 565790224 309240410 407218221 416211091 520714757 340853171 147424687 411560063 932012042 391451143 836886915 485339566 167255766 793490941 130769592 108009432 490183353 381845567 53636261 793028658 534449282 434005986 159403703 447642874 160426137 35018553 770551898 920805966 196948246 28775423 388574990 558676918 609730349 576382204 440770192 652057493 171373979 877236831 911922743 529245026 808558686 455250529 579047883 243175752 716534039 264044280 283566280 206413204 168800752 18687276 57892935 597078116 151091643 437527917 461339107 199160845 126820992 40767218 689355689 528435981 222111034 33788302 433152602 973802142 672864186 865690702 323306199 850760342 786213698 859641054 752923010 755524980 393674070 381380102 922569349 337520023 932433086 38421153 274372159 909209583 41032415 873013789 145781402 159332191 388154968 498032200 269787685 697822001 139004055 753714346 246308971 854600947 914928487 147419231 525707898 755808392 672572803 529290431 764321317 533273532 445492598 770436068 414450686 786319600 618581122 689067960 3918611 252702924 421583039 855432750 291928182 541325411 293727513 949756770 749367136 243010307 763296379 817784451 528133262 434275975 907165315 42189550 297678144 193657950 645503512 938486709 250181680 45412696 803837634 524998242 328123583 550329294 958327429 215422302 793967268 54552489 543030913 649801951 691044406 192982960 497394770 733326343 108800893 26898715 507418852 282479531 87828809 421788784 363039302 639338045 681621169 637507179 85622058 316119387 794494830 501904653 238118039 811231097 916064260 306048506 63278795 403202372 348666252 220397559 186908848 491757937 895466396 492133362 303739985 352240469 730366999 941552975 679212158 156684875 10913764 946114929 806629034 438213500 344944957 688849350 537649646 248685035 97349083 573619901 428607326 979057153 695690636 652938679 954843614 104296917 927709945 733328316 395947621 69693284 623030508 378316834 754301316 622994956 491414148 977437439 986849530 991349473 656990871 269048722 454943624 206219004 239170551 917401197 988164223 712357692 418100742 978641423 301030524 321576155 589084022 608189091 320292688 277010114 36173277 660654009 833227909 571197463 740228961 374271962 392346336 998508921 235997722 394790574 942988785 942096963 714022917 438558741 770613417 55772131 570659886 677599458 235146008 552702436 83658074 122400684 40060037 183515933 648510882 356138561 176642415 445156705 350329383 44827959 216840407 317666796 565371872 610978778 105498451 624111049 92635924 162663747 63712970 430568940 63826815 136475584 548457457 392699460 11782374 748472212 337263068 235656218 192550961 29010494 816918512 651139629 922570566 978378672 644139074 707186087 418661548 397961856 867270250 475374608 933905264 912606464 444035137 90730257 805290506 528705298 592074950 288855761 218977091 559574110 181978045 589049216 30427467 140024737 726040954 701275443 441513536 133029519 667053689 893264020 725602642 132225735 983448239 105121434 146286554 409903562 465211087 897751535 369669343 951982672 862545223 888745451 843957854 468471657 953518998 564559455 405211807 616012672 916378337 710060229 508602886 880957237 887373661 398898345 973696372 546568750 216376106 941755287 56926715 556556725 32892486 163549272 796957001 486007693 369009767 275430756 541186200 955131891 565987940 608695953 445286185 850391368 387685517 613381044 368162302 91309703 893002355 709050764 799165863 9070915 451715968 693124302 705946740 319931230 168091740 939293393 930342701 335009953 129815770 756994804 991453824 38578446 181032648 429462099 225740629 603552693 84373981 933849444 39886664 69575545 225826685 117277355 848958457 314261416 931514298 20545356 513402484 237913802 181396012 650377215 714743300 764085571 888314481 209940683 15343658 875114890 276845492 582612210 400470244 445101789 479643552 381824625 712179585 320092800 292255757 183630015 629888216 259921479 149944852 19607391 759543071 666031306 258533340 529862339 316990275 874120716 129849676 135462065 661420220 346014785 452928992 565309745 650473284 997933157 200433370 745862913 548300494 410496683 593616821 336554932 856618374 788168945 683048663 740373417 377825850 752907773 9941714 306092686 543512808 847639018 471413947 667203399 286782926 657582968 359472257 5958202 582319599 667957386 490883396 212903488 535007944 20215879 890555156 876815404 745005282 128404951 322830224 20264985 882235458 148568376 138874443 363111478 462091701 891454867 66426291 253838858 267049236 502564409 815832102 261537186 145818111 379511316 270765078 284549933 314651830 529906456 41983170 155914426 283905234 809639188 975661686 871211927 71269373 458412475 986729935 885708186 462734661 6275148 540016734 534500388 185715011 132929208 530302288 623085770 519485554 982160841 511191418 128735020 644603724 955434088 522187975 293475119 270305771 207545512 317814493 524563590 981483916 260782382 761251334 571865782 100965541 333913578 847683406 637459941 595901435 363722728 259946851 20461535 120282394 593790767 585772226 381469571 76730390 979231705 643054253 19047302 442266236 934310273 395535234 666113987 896441780 186651654 731479753 368432873 705472283 747390013 134971480 156150690 19666052 856047814 944588579 609700328 600204781 141531112 850544869 695153342 991174538 768560470 173568086 168464826 531515748 615795688 132155754 24829380 191404723 359829191 206725776 794764553 764332535 858381184 107554052 484811674 202849476 8790182 85239576 495022703 438276140 392296959 218001389 237371194 46991880 813691086 529663464 509773547 909539266 135845484 878835601 135876471 936919150 860053062 726022242 684315435 39936382 696344809 676407654 875610084 852056878 911562963 961495919 251090178 320317098 665574796 172866249 771124751 948988228 691401824 88126985 488335089 857162356 531029044 955198676 144926463 466749908 328898907 43205745 750207813 317717669 639229958 305315414 791846971 555226952 131122306 437998776 820975544 518027999 166897733 121507665 840412953 586104971 865269387 750959299 760762197 932270148 445144344 357644091 405171744 717524998 713595415 746098435 159089541 85577350 880495216 68476290 156692195 743872997 859786794 123644768 821808661 785611974 212097775 144426047 430534307 804390769 316890895 941985564 872441988 110298409 40640083 217562089 350725555 598671892 30086533 422239913 262190370 379285301 389418666 372413808 875408639 696465284 471162406 198958330 903789399 433782713 14155665 630799864 413823477 101566484 548841178 446840424 607368238 192699601 294219614 241633349 523314125 51809615 195977147 962175090 888393361 831424436 723033638 221248022 122990174 705539309 303794402 38738838 462898907 614339380 487617495 228913716 933813390 104625312 364781630 982628777 931103818 209892751 156458699 374185971 932185989 586840202 278910909 600607538 546666415 650715524 940510335 445410035 371699208 721849244 693120293 894554255 672354369 251829013 475913188 595066128 912095317 981985013 566155618 716802833 638875020 923389897 291971933 302488563 170193779 657713696 761032740 952525156 851607062 786650970 594049900 674771831 954451561 383163580 751643136 113328854 461572122 937480114 539381278 691298358 190909787 84748149 46103235 700672939 584488303 673808 364714885 88285665 768857956 14300550 871437419 426141269 105704572 15327139 865321705 109491667 958428618 335199906 715392482 74088077 265151111 359371215 727717094 715969381 309359699 233688025 336338414 520953942 219302502 842069914 576221469 181926739 576667068 699024465 917856676 622358457 10832575 212082007 277195571 18034811 833457448 110255240 712239811 465977303 368888571 258493364 491936550 191097258 730023360 855494684 727034763 168876269 515156850 814261088 76246153 825112951 414032261 420330636 736921180 960778403 158999571 832358909 572281491 464239330 797137812 809613750 789833506 287930715 39879482 84561838 680859799 647748610 814924506 236893011 391941581 384725683 31320605 981203423 661897602 868014709 49541422 604151147 804419156 819421197 894234894 86763307 340802319 842199788 250101574 389272698 784076456 983945832 914499508 762059298 440283409 967124998 908774649 710254896 371503378 759044422 149283403 721745062 137709870 701436363 115819318 491691219 401668056 14743966 356405 368295166 654011051 680680742 506112967 58372566 573738606 473879322 751345452 269989383 838300546 482047511 581811717 992445142 613544344 943636506 339752974 941424203 912517689 516424895 405086245 70643763 358542503 917556161 40020336 942199894 851768073 48326724 378115813 532152154 886765762 775891488 519911954 126229559 810440569 809614420 273418648 33599129 149577782 856819426 510062536 327237166 189423830 773888209 853337458 324930570 833043613 991881972 342988747 415344444 117693813 867955031 693030061 289673229 55219159 867814379 842505903 9657530 684115382 32386767 749357212 753008686 298170927 381845142 854005104 428783386 964918081 723777131 312301658 945672896 533487579 497642161 872848733 174889374 639583286 612951769 944172381 281758745 645718058 827006717 231221839 236810188 506685436 347835216 409677037 879002201 937163867 199644271 54648284 546095554 6724294 688978271 790501555 328396153 10757954 262855731 344689122 834500853 480170488 868348778 681090331 944607516 697322092 550945359 746237256 649114892 653566547 956623674 450941432 39747710 401822476 557797197 716490370 400087461 595512838 620856054 176969769 433547106 404117248 7693392 245599689 25369826 202996348 351188700 836869621 192042330 234371431 482560974 385392880 556463508 124489402 489110657 547485321 73761260 479405781 852208808 647616449 504367574 944862483 948765711 832826996 637211760 427281255 926710882 148588449 258342469 760426344 272899365 134668732 5361734 432568909 127981123 431150217 144351266 194830649 172405184 994133843 389678716 54804234 241703661 596043770 602010140 54794477 475106957 897071724 566338617 860612397 615822584 133732741 139763305 107034305 500391299 856950043 650798418 934716088 107624719 879969662 61476625 486575809 723197678 922464127 903790318 225352033 61365190 950197619 564337730 290170666 319653244 613978328 258713912 338286214 517836703 738906405 561032387 63695326 289128958 416149571 994460795 79235339 459349118 698033599 336950713 23818123 877407768 806207481 532297069 130464973 863326013 52434442 446205757 41481273 530097337 5638365 836014557 168995603 288856447 569881992 344547989 196767652 893067857 636144395 577683979 349432424 784902905 273467693 258275225 938911933 742123931 424252618 108787326 722099163 401387168 944407820 64979764 540580798 589959567 450243528 272958298 48538271 337314248 135534049 239787609 148539224 959723125 845826718 842738841 699233409 221846641 679737611 11304649 619951712 655171867 830325264 428792308 64677576 369107101 246621993 664468742 927012801 254402153 235984267 912099652 162136852 204295965 163818787 437434892 817678447 677462146 95121157 9401007 491946736 950431221 500018799 645740124 202230062 405383485 574471160 129623897 715746704 312672857 867325477 966352831 31737796 521273442 286986831 192697311 953216241 346135620 639198773 959927100 157533923 768094032 918509190 694348514 103785552 460915863 528766421 14805434 683011875 428091559 533419821 346058135 664848766 530261901 925480355 66782803 449172283 582451639 844408544 273944657 926527025 875497319 856640319 6626412 628094224 431870493 737723228 25361610 199574822 473642177 230699233 931135558 122878592 816647503 873503810 120245826 957085518 520484240 540979562 904098061 326052217 928678115 4567674 30904278 878390336 954906547 338325694 874659883 866134833 425855055 218848983 233541850 869076218 906881687 335299854 517812880 143676995 15967534 51406481 884200603 140743274 74651989 712016073 642642817 417274399 733039513 888519376 778829265 461253279 9481990 224716034 447558522 257734911 546118619 351451944 281977844 605876873 273886442 819425745 297547072 151062546 598165046 375149626 242660413 282183679 855506240 298131713 421792127 992232118 887138873 342923251 794877545 557442889 516149902 807338654 87104117 210885649 300996969 751654911 948347891 207169081 456238734 906646148 629238007 182853182 361905442 228176481 914622946 805389406 583312956 37171342 57493841 658236758 757189985 815860337 644463035 684340449 211948076 777468985 93912292 809261939 849864046 243568676 957173427 805037123 324033607 785028867 921061387 516891473 502170577 68989376 485682138 473543642 491151618 927246474 404587800 642505872 501020702 981037469 648810439 161778318 596377161 800468512 441302903 755200309 855078279 681737186 605910661 648159053 100236767 450798861 69022786 753902712 587412281 960687925 579353186 637618458 288340093 381190774 566471190 979856273 165181946 20382022 147100778 277012459 276237996 575953835 860694833 801006570 591321224 475150549 21825535 863027422 869642806 884037385 20019636 780276084 632617923 919974779 101318904 519486419 837212240 642703856 24998875 836182560 355326804 379611439 542770729 838014374 923504711 458378265 510380236 95064187 639842605 27557200 328572402 160012570 930607537 748396365 856221125 171015805 953221256 673003329 863557526 621686165 192362493 144160821 479411319 945302014 647990633 106066272 190127653 402031457 692328567 567158454 573726255 369308625 486975849 823658590 380105888 215850196 404054633 96304808 41448562 525138991 649387003 185309829 253506633 75832842 589290492 824799450 105761358 896656208 310075572 994120576 193196664 694225918 312388585 94642200 548865801 959336452 373088217 85259832 518285603 533089529 243499151 727032208 332577254 923612456 480320355 525684340 831012994 194339298 779648922 607461622 724225838 307793960 972727797 613581337 878497856 874529082 807206212 587459929 152915199 501765413 520412972 478412050 575066551 77406648 947858463 337155142 105436993 553107737 876170598 218428399 129795004 459225037 123897324 332624326 634711297 179272379 171130308 768407322 481604853 657901187 659776308 414317407 46806872 646232311 813722591 70630339 476783138 776919959 376446599 956372100 354662860 26909596 540003608 816655032 779259155 105143006 22255405 927414131 247054684 834703369 881384433 902191994 673522430 318121582 313316816 76470648 805635851 148901652 131442940 612398963 105537064 502027807 453888946 991281360 66693489 656496237 769878552 933044680 479408716 435247728 246598521 479625738 789987838 240924376 665891322 751315772 753976563 81159040 997723739 183503824 982527246 68242155 643992635 204543377 278619804 113712426 471160991 87693071 265420783 719771658 662027970 579613602 592124769 252393359 85106742 889854483 847447000 147987831 639258208 439192751 145842423 370289148 84130170 382153256 536125511 723320814 813966315 344496118 921555481 331059945 655656996 957812017 872960201 263687450 963223929 81566282 825425143 637620833 270318559 237777982 387953159 690761771 872385366 849607504 380484788 20326232 262225447 536395042 980344872 823797615 80764611 835857040 319280871 336742555 284151035 55816159 601492659 808276518 10609020 754755971 508238582 455895386 446542595 319393750 366148505 630159365 629298638 579652380 209514309 656829570 414733977 138789729 419052645 271289607 311327689 140340404 703172082 114854513 401039169 248538056 996961999 409103206 925231070 138151349 722845424 882886621 99287343 928363829 699962900 135692485 165095099 152535727 984024854 693229370 772562486 893094703 979558514 337747592 693029291 691370307 675399848 222166093 361887474 419839626 974269529 144569620 232325402 360204089 93622651 999498147 742210320 282157979 80769118 132775688 565324496 182513407 398975317 264456393 544133178 804925500 803689182 467612977 781642973 31392358 868778535 365917728 672477221 697766822 151331923 317222345 3168843 336584532 759338819 115127474 146354618 27617967 627158082 206065301 40089632 332051032 301360318 613261725 552234840 725471900 228377217 123849686 799564609 605083106 362665143 189454844 338623977 985756417 989997014 574651574 473689559 254547991 298751535 885323424 292637377 686626739 30728200 998297981 400608727 847588108 620905229 654334922 9895696 102029932 988586437 720546449 718901321 444580908 964720479 782758574 714724251 204049679 563983912 902344486 441468203 855928307 457973345 492249073 699202179 960203076 653943010 782777838 546857055 44905818 402448749 473644106 762566795 674873857 579307799 775274023 769286575 336006706 195041351 252190674 522703759 622074753 11796432 802400125 7502947 714318225 249723105 841430154 32593420 523864179 151571414 332990535 615349207 155483710 674668253 255745435 291299265 982015560 693000038 823037563 447868073 622225452 541391403 258542434 382605754 969620496 479944368 823773460 579924111 569697696 745082586 747357052 591601234 527426612 715125978 636001322 954200941 912709163 184104294 657628137 767604454 675542627 220701147 83022368 552552294 220024797 282250968 158974282 623934287 116568887 857818389 856783149 852940227 206224073 196933977 765365619 558137978 186597159 354215695 923437309 395762831 703702498 683031864 390236822 980955986 557617689 553269945 716686311 540073230 542483242 826511941 501546555 689042043 470547221 675597917 848217572 18164097 639242312 911484496 819329745 649028334 584387164 55199517 422118683 421952246 325870262 904151528 20458159 235666718 780217055 909083562 754615440 288790900 371102730 887555615 739955289 693982501 677155344 481018643 720212261 567883815 931129005 344656730 482723990 470437773 295350068 294931079 92531525 490256989 465747542 376112194 151763728 328370073 304300060 39174401 958874131 910733326 451735613 707926399 420342278 526516327 41488166 863208904 445525360 626761746 449600113 722015051 106507255 412893910 837293823 105499202 556786795 672869061 531551922 450873554 509611193 145447016 331919640 434772955 709539879 845711970 357405791 102727710 441421554 289088459 768020551 855290918 313261282 542385830 123352709 900791127 592879694 900236323 476082710 890715862 482520928 936303823 331491993 421952900 47984291 203495499 101376763 296698529 519174208 506008527 581802998 530741409 10805502 136391430 351123029 99277089 415085408 565635099 811170669 622159503 955648854 405732642 679798805 970581468 767426177 7682144 184175533 167492380 252117951 706137897 930977542 721395415 79630548 73684467 226503986 267037406 184976110 229758864 30211531 597047970 901417203 578985556 464547774 155452967 553191649 452751998 213099844 835844830 691143925 160428157 799117314 91548439 315192332 868057102 313446215 715189133 241095366 274137658 502614326 474736004 195170485 400834774 140912236 627791986 129431475 440255973 567660484 722118484 189795885 870040514 599517924 741378523 662785532 569725350 914298410 173620627 488791039 439800020 379005646 114522385 671647881 491006837 386994036 921863565 895163887 825342604 210596490 3993168 448664720 612781039 834727698 652559638 233152186 569696138 866777571 158386535 522392992 557389318 157878462 17732972 588200360 68813626 67454578 842392186 660667535 724872636 973487162 794742898 621472527 260625250 486593331 579511660 495199312 394404704 42121906 575505854 387470347 888056274 458746879 342799364 565347693 700588713 383546906 209695371 222726463 13445201 70345666 627300465 120891637 834042885 523242828 723413339 548198512 92518206 614269063 407256880 367833287 519902857 378800272 236321324 947038926 27892453 325643279 763764390 270800619 27154310 317810924 101201568 477954751 482688875 304667910 627711731 493017515 637891653 942867461 678546204 207577645 319651051 447539561 598888966 379593685 766393946 4331483 912902402 385362246 941414908 863483086 612511968 862625011 489542258 159189996 32065368 466402336 913778472 72079309 508331097 923889224 570854006 987096100 946849032 628198719 567056516 257775856 784745694 205461693 793717454 325282073 55759339 695466664 210244370 479178444 646494477 239098255 765846472 289355157 644753769 141320322 752445348 863015130 391144050 975313877 929739769 549492359 162859032 898524347 973701545 248140497 489303844 565411259 286243935 625815070 264305513 877093734 209961024 298543957 377429966 363407071 819170979 377172371 627063163 38527112 378454632 39218240 189265617 399331762 754762707 851781023 23429360 96027688 320619168 651487465 321119236 233674960 389089647 76422371 640365657 902625819 51824141 772228310 351269758 73466181 968752919 773085902 192975841 252423412 695493601 123454718 919225296 122680051 847864279 805098866 709710474 754230244 539023958 603955621 47214909 278694476 199552929 395740992 782917728 623426324 26889927 361819119 619207845 633049125 839663300 55681940 143288272 783116911 588537409 908812881 130517408 871094773 449515570 727091237 227795084 848380304 70804680 225574720 856616895 908973554 962123829 449067092 551691074 201712308 664772640 453661450 884900070 134544675 893096385 69747161 892153431 178905677 392576438 306800751 629106955 983000516 424650248 860487261 860746321 213344685 155596509 285254308 90931227 145288374 485509965 702016438 143626053 76092793 854918325 200748537 893343188 871400882 477914471 352132344 843510913 806721321 887015633 995278897 180025648 439088270 307420310 333225150 125282288 737100006 592493840 489783986 634535016 668427564 774538226 889207950 595082792 202350981 644680582 774105185 349768264 218994038 820856860 196332685 42050384 40957900 843823517 742918056 280340823 940718398 430257349 901318450 520226934 328875542 380809454 480736192 207077104 859559047 702921227 647406811 591931478 524677108 548368864 736492753 255032843 790444213 409083041 144043682 166919527 672533701 274219858 979832098 509184091 855816595 512800 941352427 15302319 712240869 85916147 712594102 291194847 695236221 914393368 117455968 319876161 733883950 255379120 802749356 464753390 189746867 992519659 460531573 745381043 78274921 768238526 781846147 229176054 579474310 237721082 417445976 670029705 666597009 671538809 435376626 702617785 26113639 728878062 745810316 551791039 517043502 459381749 603789483 243429252 811143844 64834578 525529334 766739230 548332751 426836537 452532583 123567359 336258250 699167819 681801684 257315880 672999971 226576692 992359745 629563104 920741065 598805500 807271875 887490902 406425821 946609646 97277366 339921959 207831276 179612226 59204674 622136810 639781980 32118472 356397775 472798561 667370360 169798014 412161152 742809814 46815913 170181727 985824832 13438555 488771527 803540255 615727480 439794635 967502486 202316852 982558371 552134326 343983131 386010740 691782917 485385386 659878245 210117509 172705073 801716494 175287214 1517271 188065392 845353095 668896296 203914063 472823161 656972024 783765020 553351119 727084385 134097318 913166924 117271551 92701934 662655203 694213807 554874145 162621138 201215313 161061738 75537466 805859616 957725591 105478750 97847667 276428521 700309938 965098168 783545192 123203408 581150160 740780740 158181601 646276956 858442985 623583187 673042797 85678196 835639983 240799049 497346189 126319528 392818634 471138581 637338415 57744763 98196068 20743431 207403819 12781133 453788294 625144810 838827119 438053045 559470999 351162909 627197388 411691097 343497617 641508468 420195567 355747324 275298863 535002728 557769953 497390750 300252608 251366293 89739894 574428913 387059901 257178797 847130115 650854138 448598805 857411318 843526184 380568932 878824241 526184715 316174470 12231658 867322348 227661957 183546369 591277686 505962964 248215745 324658823 259320398 565783334 536201053 883291650 479342092 553168323 727229354 489334287 877078471 929475758 934860398 264542132 367577931 692430280 750461083 35696364 988582718 176343000 272143534 153954619 790772750 488324396 239927946 79728819 494036354 93006776 711036063 493224921 756786434 334384546 863242806 727521546 699981668 770783462 677108360 670318039 923093233 485084653 963158516 755113864 936963558 972040064 419513022 279679285 927837435 483797772 511661232 996108713 737366997 738318577 177232546 873169955 104815230 616716497 576401127 463678116 460191786 321974481 451133246 205695346 776755518 605086648 142005778 883084409 432765189 537498668 123941759 749299393 859991491 830071220 222594493 607820286 275388155 889014634 924709817 530592017 672983357 516276518 585513702 266814156 211856254 720638619 445104630 856601839 973545660 946846920 873725426 60367793 934869677 969858562 178451285 253767504 220907865 386121740 357873482 694408614 393294719 546208699 379738731 225083306 60911664 761682825 850319000 106507566 255295627 956094636 174736209 504468180 916375256 447596982 244602158 717118689 170853140 834011102 389998566 691850177 388213563 237314076 118644934 930809803 818152745 292170954 429422469 318794834 235972451 985993741 70896263 512834232 900399872 510155854 922207069 56476204 465864940 911366893 16947907 410694624 403523203 240105617 475909664 389381807 597843966 425445327 296616157 43957153 523012454 146589505 521170298 696137021 633288084 52438134 466275298 913016796 207729280 27364553 943167028 345017200 311080396 269310940 910264406 335296048 880824079 127649820 129044431 224687152 251340185 678556723 920100094 795131621 251502472 69574688 96803843 273983547 963141088 558218530 771026183 229477321 948061164 547303335 902311837 947543495 528441225 723326410 536436082 743026321 977424996 438938720 965299232 44730695 889571164 860332981 848107469 195423358 419667686 716490971 237597853 547126224 803720614 725733463 231566361 381945913 405844305 370409932 73311119 867038494 352393490 846020617 545298496 443602750 718590933 937086089 961908156 146236104 760703218 470831543 29183037 264234913 45751452 707667722 605958290 265258985 903983054 502749175 427104628 963909072 981493814 481465819 991814910 789084833 80808344 814937215 833753899 95139892 733834622 921759070 925767045 629300918 821442946 883837552 947095228 717334737 131608852 810172104 429380220 103315803 973071029 779187575 455903407 514378050 320596161 706156823 165637131 147059012 416928084 873461321 841765103 356268552 287422985 587301947 257725643 489329070 164819389 991717947 662373669 562986369 318742567 205388291 522673894 405385819 672133055 168311251 701388687 496431471 439914260 378614888 443433468 756231896 299369087 621300361 512548434 696110786 188916211 220202870 30738158 559542313 198920403 871167521 102539008 910313120 213630930 935266224 998941520 926827483 194466159 772036267 456754095 979893754 848694840 193115041 220423195 105013909 588489513 842355896 315217075 804752878 455458584 517949733 967051164 263981093 38294934 310415924 757622408 157789231 536965866 342067937 419605456 602565316 692411726 595502985 136980263 944134458 627274694 27854347 824832821 847060252 672412080 489259450 34976454 930648604 410989202 961510366 417438588 538070663 852895269 94820162 636221824 529281100 467488902 126347336 260543461 698289218 289904638 377686339 557025610 482522498 112115905 881648986 218478489 160377778 779052342 485592302 595225953 809632798 110834865 578671926 61025623 45265674 439062886 889308114 821954553 884829708 295943468 394534044 488483995 148179542 812062542 295736381 787015256 512394788 302027522 208148483 987718114 169597489 62090461 802063838 172407190 828945902 294737555 484118802 256943778 5947438 390188723 24275254 156790192 825526908 757903259 113337187 948522432 179719411 161357132 386137436 449325509 432578996 868295637 140233802 852604150 926549430 547475335 416280211 375959927 382182010 106261679 232354102 438658519 737657893 991969219 684739343 341749507 309695333 855542548 712670388 628995206 818542629 210498386 209869350 817713959 441191554 696043344 392755257 120135369 88328228 676640725 265365949 10447761 377860146 859703178 253166568 630636443 736163727 62968232 317117613 786683898 755727949 440484975 364335270 281361008 770701610 907344023 134196502 962993751 398121449 658725675 458469953 445730019 632962258 411447486 113566341 769098819 640490296 30362344 919949328 864010019 962456833 359694320 812056227 810255509 502512197 651358985 974668543 32110070 626560900 542391406 790706879 109856654 234244682 999881722 19654153 282726023 405266143 706388722 478559310 869430659 531874590 159608352 257157743 199231722 218393111 782575711 574259638 11470368 43361389 189508715 449995422 753474284 816084110 410937344 805999816 659199077 261621465 366448987 968409568 257989847 767736825 368396266 402170613 216377177 437546086 628553652 502432962 975974146 205582841 21557137 896688858 33810505 237894723 588648442 553728668 26090468 434940683 590625444 357898231 207988273 993289670 997755210 438876506 433889934 438846924 891224132 306468848 31882111 686250727 162333932 202492892 387412886 575388483 318494946 924719490 141378844 569423881 993387522 689918923 108839465 71436934 939978557 759791013 522833843 148368228 170154691 641063423 830311634 418227558 668642120 942388342 7241218 775444479 945795578 757134536 216667478 546722309 423202483 190080585 228241207 192266820 704975823 963116853 496626020 177635665 307820307 44865173 369324724 278991941 145121287 823494401 837158856 180111827 248401940 651847153 168874788 45921663 257825547 477714530 623436081 621051512 961738696 203239579 212063451 376193636 637279536 925374835 42441253 394680357 397548028 308441027 808291055 739763564 596292860 595955887 919362371 829089168 952629427 110031678 21421066 823072933 900448534 318382834 791457085 847671201 653910828 205093042 880128522 848278437 908417700 701354939 516012829 479558850 532158698 868910194 671844692 651580593 208005114 300884467 80770136 65520117 266037802 636989898 818480047 933651068 571396570 183554413 627200254 990028718 953758835 114071683 586601590 189928576 337671145 531814990 718230304 779915048 439071965 522955131 394370907 930854073 405303600 856904731 976237543 452310326 60652954 448847685 285739359 727282635 206711909 286686459 803435698 529928639 398592779 758719051 886915904 331472556 78385278 963599448 520868121 777217619 52587486 463364139 563380795 440414861 74995269 836521777 796290837 981247806 983601115 240297505 42737238 164367750 226665078 336783179 21453289 796056882 734910121 674039750 180030147 403207177 264940191 262627516 850549048 468461609 115351606 254110401 3211746 209348509 838910061 861406047 497931667 815229608 213794411 223445870 386733725 952910310 333077608 314129053 20853019 502869176 423316164 94817259 720910713 211155166 433657855 888509705 824783653 824487012 295042065 975966289 78427704 427714423 749512132 408699065 299245233 377667140 918410153 237734416 994981121 46102968 553568450 277418530 823092687 993955821 64123625 405081147 295296332 367038026 868039838 405239650 494249801 974357809 538051987 885840713 231417895 22629421 149725413 388729646 614893909 290239688 46352014 974625299 401030294 607492521 44534227 412311234 904147200 231046036 156956116 948251757 555259751 76550179 22462823 22824900 562347137 320276461 35286962 818941816 469252093 744270847 170205534 44337774 839299596 873067442 128453130 949766656 537212592 761869907 895045357 963842167 649671483 102769807 757015241 72566521 136058486 689051887 587996330 736714904 625759468 429032564 491076316 391747463 391631300 546101692 469903223 321971600 557918999 92081182 630857511 102956669 610181768 368696283 980001288 712987759 950383817 342917524 669022287 529697045 312060666 474152794 783779270 641225929 422154936 148228678 661701390 305634747 767402956 771433974 575208821 888053851 460224449 714638127 517592278 726904146 516607661 195499018 4801518 883282431 734597020 564553391 205663531 265590015 551651759 440892217 517223635 678958884 987451365 438885685 534667325 608874016 648069342 314881249 135948657 854210959 714209903 488286379 684651387 541612618 290636131 886866582 163751126 704247287 89514832 329413350 398802208 510095487 458062882 46045340 430613675 408013095 670939711 487244087 387144487 552443279 948908271 442647508 499012146 482862469 776470109 704156395 426749051 170081266 551639369 934292520 31787150 352140568 232269289 451118943 120662952 755088072 436021686 63834096 643392286 16902345 116135476 370293012 119389903 183669714 39563384 744172784 607761239 519427503 30381826 798617348 30730434 966275449 126137804 462121908 771216769 891396037 87591968 859955083 319436645 702421049 431523938 230410211 640137670 747413451 463140598 57559782 4310225 683802911 760529488 148496196 590362946 937141147 388959204 141474369 460497944 360017761 506171901 6145882 393214583 902298916 35013797 503645739 146473677 637301046 311899164 619952279 219035300 432135746 422254439 719576822 983151461 356722179 1577108 521490528 75976498 697082282 64609299 610509390 427833443 618636372 732821608 932414631 835917676 608809942 504609807 859254552 141293496 864903720 304043950 200218327 197786634 766449156 208637946 485918054 695715220 743191760 383787765 824178165 286554175 800543926 63866475 250349553 205108804 429910712 979517525 140527673 731785393 458676525 936938004 842802102 994046072 238416709 390587915 687325399 273679168 299134329 87961639 656130757 444769802 693895849 393209723 112241538 122969263 592195674 854500435 439970636 259513503 133445427 852505963 782285308 602155294 147734491 850198151 729603664 420262101 171448252 891582946 758980752 986430479 653769410 330761580 141910968 45204065 145184625 653148803 289695136 746635300 119807618 675527903 909569429 419695549 100264909 706674832 483222979 565361164 296781560 760560265 574511546 870847889 650981393 82797931 837098443 973234043 962331833 918380891 164589491 241054856 172276105 825745818 254569847 815127114 25533981 516970860 448329879 798877812 640930099 982161630 984039499 9703632 404563728 574100449 666917969 89708993 271027901 595332490 84355896 327872643 216528467 415188144 800545972 123016316 249940362 871063789 601973717 177634604 714527195 755569184 684024013 251847442 429122877 54731937 48277092 591952485 748592901 257319453 924171282 667510101 195344911 46758880 195142675 169822782 718714562 589290655 888680818 875983730 773976944 506030794 925535164 508673451 161510990 530996313 937235868 846774553 122396099 618979784 925187360 181902108 525007760 406002515 526705754 452512817 173184597 249485076 76350046 115381270 69528856 228338212 298073726 655640059 288841666 193840679 973751396 165917827 103270024 685527047 115857367 122622799 284933241 822600854 888919552 208277386 63875186 523974948 59403981 89993165 567809725 31774459 23544675 970709906 696925959 443672243 116441072 57319715 112753974 749000070 24928327 185279699 281739810 506081678 416266469 972179801 209621544 659683537 849002700 297131320 328137513 927326281 255660152 310584583 445969953 628814486 54222116 795070578 453238354 562122097 989815770 872011495 694466113 444151097 297631318 513223435 8542621 822804380 216503724 389959569 913221350 733240981 26669559 921229521 268213300 621157147 741935375 128337663 831428695 16755261 579803997 425984483 999814428 448844275 670656700 566059608 885960079 431464301 238499986 602234653 335811422 247210950 916023423 95670095 476084459 425949240 189322862 486149091 687607501 478979712 221081483 551305278 196509371 781790219 308921219 69564658 141482918 462070550 916627636 527483346 359782292 105631631 918998770 296800958 28583251 752540764 429332078 611437743 861724954 404958583 958754024 414182634 899606638 616797202 608785133 653070301 4575419 887491375 600571645 816830014 751669416 539289885 517302148 188963629 175211805 469679496 346419892 262264036 847272558 207345657 462984003 313858810 218822975 236372630 609075449 48761154 547677198 148165578 895908273 705501555 745386381 250439247 674245153 156239989 573339467 116020927 191849040 69534009 617244292 482369998 586678886 800611276 673566297 791356494 966133864 747360565 959291923 536200128 785524598 244238294 961983 263973823 750779912 363215881 470309124 49328010 39417753 938055308 727489177 793750950 192593738 68901146 947992341 410306099 166326332 78282524 264620426 404803835 756244635 585582056 675554250 232197920 20703970 16481885 505335425 668773471 243462908 765052595 188903963 500413067 267716320 208551488 376516585 443391884 942594628 196291283 852536953 462397713 862516055 347971905 960006894 569403162 49791090 342335168 754946711 724412733 249619042 18978102 342093093 153825547 49177505 468467968 343273642 593761666 413598077 38045324 831175453 944112603 107445889 684371643 180067992 973299200 940175394 983577519 325568916 706563856 889449622 28668919 78728489 660009836 680224347 252962244 988279765 427288862 644115926 676900711 77067756 368787172 558942670 539712445 245695307 968734977 113378388 522813964 579916030 926276020 552509837 74132349 371353899 15276905 808360306 874822912 675704366 615327052 941637700 294605942 724184808 476307335 914946893 123846504 953581640 459748738 483700763 705717863 402214014 597682932 588837176 336884666 378926199 668718020 680626093 415018801 175813113 149743631 506024628 562521632 586062290 291559915 348820220 159695870 531332793 521175847 592278930 576878226 944591892 340032751 322715855 950478399 926152374 171304579 253328827 330274528 36423883 760916647 294467545 389595659 975135805 761755363 510028669 490126386 584845076 756933318 845783866 542539453 902338565 827189171 268173673 270038828 533533087 178122414 855433499 499894907 433020459 723512997 51494606 536971756 524155233 77601458 894579832 557460611 735859937 551637178 351227909 214531267 93641602 647745780 193652322 361351587 856131245 152356899 199779908 439650226 151109254 44755827 640164664 16169307 187792358 595681023 129483342 55619946 622679239 194651007 111024462 29008691 187034417 80258575 963782049 135376154 652888970 379982415 61438712 825224855 843685663 618355925 228201573 368245388 507787502 449223019 327741993 583407721 635610899 876993236 76093965 435972023 748975346 628493440 126357579 51284198 65092908 680923483 494756603 437617677 571126647 630022772 846881668 101452611 159040 793531455 702434148 716769116 944026427 348857581 374907812 915963730 356187031 514083002 387424681 832976676 118658019 837836200 601292637 805951137 393282571 88768911 933831504 819722504 266967758 199414713 353845960 876583000 22875762 603736957 643416081 114210149 824344304 36691909 80676126 632358980 108841794 955445707 338007064 724648639 998892333 163383707 351697812 88657517 395811546 865689985 397468187 566324367 67508237 36060242 708896770 275381412 818684285 606927593 148366589 785377614 875425027 868510342 272548936 973319726 583817786 116873709 405180814 352777315 701390429 129628558 129793928 188260360 41645639 337326954 82034304 593431921 516495063 149749908 714720484 33115475 128895555 890329110 183954846 716339384 556198263 459004363 497120675 885606124 843307637 41387038 302002169 205623235 1985717 223523638 132825218 856541251 141479601 835431020 286938142 737445560 745258242 666964583 255302499 256647873 889754956 511338063 128377071 728615050 657819328 646919847 476962348 515263 63823608 57452407 507407928 948066299 483066918 252593181 193132117 261267507 354867227 435874759 154561970 33214189 17459523 77597610 834404337 316569899 844370051 878679248 151025736 326309912 355514287 644729329 268539207 48858388 569974683 437661244 794988406 191210509 255756179 755980633 157774684 842050139 242771035 13588656 38544165 353977120 395439315 639271835 223095090 826476554 86775300 29871394 876120405 585560281 504178383 183157143 497230080 823491966 581046013 40465658 5934541 943876331 704036176 419450718 270095259 187640237 161388642 329261948 562891001 40784915 110032420 628655270 489394940 471983398 822323652 273017505 199315829 944965160 739660758 59568300 847396518 981131844 77151192 851609261 841559359 165902808 440104644 673617735 86660933 916360141 523986911 701574328 340118389 727681664 971622889 280112472 337788819 170264133 350768328 977118117 531138345 231059974 188192768 646384005 129843950 679002684 870910552 488672998 486080671 956607692 47230080 69264348 591392310 24196834 689596170 934550370 21810151 585787709 519151219 620897047 808024121 641030421 422757712 997194120 337917143 601186975 526921460 560818850 477398654 560832840 223791391 21859259 614670520 502754985 996490588 229532529 522625241 561723299 318024540 184112601 855957559 584267341 803305524 176963962 629547713 721318455 612096926 239197762 802465654 774368715 327783846 90164884 196197210 949863614 840312854 616626286 938646159 643940311 414284468 44578577 415199019 420755248 371490304 615369005 676351605 128075857 858839000 324873743 259735301 390546939 24665635 303367593 580491070 406372489 591474272 687156236 15027616 396081726 648648726 596893886 828689871 307127666 428853702 289921839 136524247 35010853 680002702 967466930 606522785 550336167 781669471 624946364 483985646 838366556 95945671 687668349 637691024 620196353 210086354 85974849 61860941 225746328 938212515 886823691 769631602 909646901 320288272 195422463 239585168 644510043 35565705 429154529 267665011 381984812 500041810 892954830 607166451 481266261 221554583 82932408 740079810 819441757 215935935 877512360 12276202 610419208 630857386 777033409 687985306 281086983 797070146 480244346 296881487 669345924 937912611 531805524 188832392 10674303 629456063 754422479 393938341 900425185 41338163 745788032 529395791 631949233 700465496 109089299 425179546 820938707 953344618 488481037 321786784 778550087 328333753 38609101 812024779 407464961 334282562 369800834 274738332 633862209 864425917 303861927 687632456 767307225 612347067 469799437 152550175 273408423 859163865 779491096 914082177 245571175 497438202 895278971 62311587 952864735 821426931 770364519 167672566 456933969 244668776 101621194 696113269 91815566 490277911 321438608 691232112 941150894 957566236 385734114 808687606 394435602 956745567 87793153 105190577 510379366 760942568 552666775 321392772 38920415 472301309 217188429 551437206 658493494 749646915 159028895 457120862 261702278 984306215 522708358 534010550 599356990 268958645 171033654 663461545 892280662 584385487 930536851 271246612 180382565 222938085 668021149 234880328 271514390 815593238 58162588 383257327 240336666 691498519 516743978 213820551 497033142 579968543 715273539 369803078 636520139 490293917 316094714 179870299 182823178 102445912 931235358 73804389 529393582 783698115 943937531 825467174 153548147 397120995 315796793 805531148 333191960 542441276 143896733 159944794 235269890 922178907 26216809 543263529 270960163 43187081 560023886 314417774 255923802 190335077 499998685 152204844 775341700 598673979 667034213 103521027 425870732 412564752 108818201 509857406 419838627 410672747 225561895 868033945 638947638 503244713 796199806 117680688 926845205 642058717 313910083 557018739 459996862 10634524 783262002 811664104 134580763 60921748 508226566 231001660 653847580 646665459 919341743 482683066 185348064 341103834 662971702 820572659 925965733 909687263 741824486 507768741 450248109 372324328 598664580 667885579 763341187 632982258 777176025 763766256 825241640 315079603 994168044 924066121 396458207 881265476 159450919 60802458 626717728 233267586 816014655 21116716 746910128 679402345 602314139 226017795 147456339 577899838 192180050 16133037 963890454 468801758 537811631 32136656 937653165 526497266 328346805 224897950 792085278 724679613 326192216 831898372 544522892 973060490 561915431 477899767 68872709 184236763 679514780 830813783 498748971 948583730 278093192 281247033 8050236 79992151 551034262 281592842 407406419 678889195 124802516 200343284 763086615 15118744 974792194 693535539 846632279 496814185 423756120 256286578 636583590 698165501 316882009 731703945 934906621 361581224 713248119 336196067 648581701 170673312 129171109 554761698 684209972 747447972 969158704 801506322 79676064 788665768 192270076 945028187 134029481 576008822 506858287 360597426 22571534 89780002 520402073 796870936 602657094 253592130 464823131 135594729 924538603 880055131 785387846 284988853 520374192 254169779 198927621 947569482 328654856 793713236 856543022 681996821 899249751 624962771 42002688 253404241 349459290 13840474 497165754 267346309 899940606 43927800 192870903 161494710 113428911 965278800 489241704 569595251 65014224 21161204 246680222 751638640 644875626 912729095 678337573 40135029 871643253 45830078 628037711 55354912 228110501 454799515 439944226 411286311 73303811 953743890 592135580 194999053 546816433 180754228 51013788 308944431 855366453 974217943 275501939 182322719 357054815 409317875 987357539 194030200 954210535 795602952 288729791 594775367 622123659 741916781 823979066 584308871 732136547 809375946 485452848 309784619 719871698 372132671 66274466 38844988 559565430 220068672 380130634 697263747 232555166 797060172 872094997 630328478 457534650 432412637 668865280 586263794 582323919 705710625 36537890 502696971 815452752 78380427 905480547 474780787 62075411 437075145 9209380 672834525 275656425 352056733 786005675 945136532 202954865 641522400 535524888 250805729 445742250 84881167 250473168 626212652 491294154 858673444 133581103 867819194 421538681 243391373 69426548 564092363 927353815 117670456 995638277 819382174 703629506 840291156 515877466 66100552 907937859 669478761 290440040 73807580 289908635 790587792 802225110 827450532 582345691 869082968 386789299 776042425 845883632 944779373 6048671 429249024 328607117 631146189 88301523 312447667 815144579 493372213 628778335 869579601 291587264 5071056 905654668 794249045 874955217 263591965 570047750 322663835 247222065 961279669 418329878 380622331 596268363 510620780 188741290 464180743 112410149 735265306 989545438 535481214 596616715 666484932 126403901 489525823 83464267 581005969 505826724 709837143 947004750 695912421 946441475 361248289 443208253 308385658 266286507 641630177 841620570 712909478 801060949 923710935 494148570 262388192 394935894 308191251 744048982 940896398 954363158 386672848 771731541 420591916 918513720 700683373 110974517 557382260 952744446 392178676 752174092 570272840 181063093 249473087 119283315 252686702 952113941 544340514 15822257 260549562 628447716 959471253 483864374 179967861 151060278 419139477 382662208 741227217 744453290 140171155 389533466 831126403 233879072 76853668 16288343 338264558 917882431 570219093 148697678 859767820 143277234 679200132 743842111 542768010 941792098 913323057 661055516 114455999 264053291 308231186 747769174 232737737 94584764 886778083 444844649 217765264 692730778 177021600 592684773 485414486 668382886 929307956 893113397 690491367 691795125 604865181 589258559 133095628 737495617 849928899 676539400 787151996 652341623 611794965 574424163 170654586 318371382 76402477 489331012 381195627 528045040 70185650 836327942 551694644 838441460 45995978 731334541 405138857 917631619 373406679 981143272 795169321 459369244 19255098 495174215 461794942 216497282 834603014 301025775 966353424 657936039 146676811 988436921 952432599 472768592 535282184 495021663 668434295 179756494 485450177 274189063 469784312 842834743 352387976 470901898 850198950 438783484 47749276 808777466 623901625 941389508 830872163 701629851 230850961 245928958 374724798 474485522 208887479 421752147 709596546 459340740 855491766 507874772 999054192 946571518 711773616 601586738 730548780 134719064 507594669 944366803 191771218 376618703 458182030 124429935 579945946 854205479 899825726 825424272 194147365 385227126 928500142 215145179 515315421 466012696 933065807 287723236 312083276 639889409 20860233 465499267 707019280 997601417 692991560 555105337 876742955 985634678 49623742 404613857 728056834 708315 178437767 864395324 514236609 716880149 822175991 426661739 228751418 323236665 505712241 732214222 219061443 222884265 695899370 223706557 481485227 567530214 492069750 828742116 979958928 885850305 910101843 122815836 91919829 522381803 447628083 491223866 82533496 284339744 889589126 482797698 828696170 867691669 470902802 284288689 391950934 754984109 179615886 505665364 824798708 270734622 963326047 403461815 264462551 830269495 40278519 132094787 270496362 967973102 247457456 942551493 929575818 162579393 448448608 96093606 291001290 187048055 570846512 233409126 940596338 206407758 802324174 756451495 272315127 2299723 27617871 755500526 17906439 819034881 579711839 21104351 720056498 504899439 662320883 2175474 777145639 130730457 634955908 706599145 808013118 522169055 567941021 340584831 136380389 562522393 172331184 278746858 194807645 559813102 417946305 438570525 919376217 941184999 438094297 714349733 44847017 894771580 269101393 626248419 252357166 918586880 384227781 165004075 107350488 553977832 901874326 733351488 288072093 662439202 731273473 310333776 452508362 413993914 524415665 532637495 674122729 727422344 10333448 448852798 790479742 875085665 752494312 992540673 735144670 628891627 139275172 790163889 526923429 778795210 407621092 994918728 126222108 655286636 146351544 446190251 997142731 629775134 23046131 630037317 537451769 126789478 852135626 969310775 702612511 506098847 878583432 489227630 563922828 120242795 468719325 139562542 35560766 511673318 848412163 541633640 622783899 795892472 907079686 922025039 292857296 715472139 560781493 901287407 218679920 79971850 264096915 474746208 524020312 577835148 173647223 169045163 406178512 419477222 661770277 344765962 206628004 66935612 267304 589182197 899663101 947383376 127248070 7743368 851009073 137601804 585107764 257862785 300734672 761647919 877707628 884670709 901242157 122471810 70211220 574435930 794416229 349278177 558894074 786388352 94057521 671896305 438744271 682280863 251142327 954165253 527394694 317656924 366181282 553511524 787473741 754284656 71516401 835523499 297134853 995630437 579393708 660088245 938940512 112237427 836557462 387377550 386198917 488594080 885835286 780149032 59186810 649798363 152159598 659410483 165305096 243941060 340532562 782288589 179865677 465539901 648526591 177754783 993681096 430785868 405863259 155379651 478952016 747922204 122556626 334596679 510283358 724866835 884805129 122219667 996208327 2342406 202587922 144855366 661941163 252334236 665283342 443694445 889228444 591470341 288622442 931119544 486652278 885428577 828723480 516253479 594665712 330622262 934393288 42519701 69257020 221526776 179963505 5203746 14660387 146956053 928049560 437684539 304413473 124451724 414736521 634529464 852647389 596806254 970329371 280046922 817020919 315764072 535287623 629256264 788623707 663766810 496653269 10980441 497286302 909494689 801365178 95807097 864111835 769197140 538692409 839745223 343782574 232739912 232059456 879043838 25357045 382164002 521516862 704094871 148331204 23595053 662492457 737969109 446409730 662308606 242812460 762893304 249708563 813712716 123220373 444418454 116952403 290635853 310539680 396643927 546212208 631321429 49812391 359516298 507209695 861475799 451552407 241846162 573905556 198562793 903759124 84306884 772897891 155161664 564374334 510209940 715056710 795435238 602213695 149784630 814034154 235823846 456964934 307071536 5331709 223976741 432625002 692105082 733638752 890997038 903268520 191858494 534027262 378302728 663394486 203096985 162165262 695766142 969522569 6380669 533336576 748445309 237451581 444749911 806711620 233255852 694946183 942194339 194242080 473623661 556157365 431954808 45592830 974817510 463680896 584037218 407183672 520456890 582286807 390497341 801871660 532328769 599185058 732233218 300272969 252144217 65620093 869792412 847186914 767525154 326509723 782913778 522413199 950167988 710728622 178621675 443103526 495789822 946475738 660031063 125948110 23082732 215984935 918906556 811309754 111664064 975861519 746984997 817445641 930418032 340523260 415576091 671156276 457298820 7099572 832365045 629575782 249179235 80981682 713787996 854294309 294893257 661088542 605432841 108041385 214961694 369455641 399757036 323670448 886841484 274886641 471873980 551534315 303512194 631468878 736094726 934500624 100682710 747709099 675557484 383790677 715432904 767355945 385977532 746255824 264586613 634800937 921443568 700621999 301498794 526025182 538498620 62295936 593991928 951655960 494727626 615747542 276530189 280517113 937370288 780891859 54168500 956197729 717986740 482993231 461822419 234428505 96795901 216273092 67244600 47729468 13067950 604153986 946515611 424909145 905630873 462114828 87804347 134516391 129834819 335122372 490306401 308785986 81808474 556884186 449602357 732472288 143637023 906687969 860651345 403799548 781564541 510312469 209137773 177493686 193822459 403639921 264886765 514934401 77039711 280897853 257466771 792941474 29678989 262353288 302258037 770610663 434437436 873695267 36094493 197513572 819154154 323057190 621303879 322095233 762782795 868577408 829097766 435941854 535468972 148706722 880165323 825351695 462081358 608276696 554539200 205233207 167930047 265465659 381706305 561842280 426825373 773097326 459262837 286494251 946167936 536213163 253014033 213088343 906274084 578187456 409069384 950530561 710381912 611652210 360688298 346768177 697087403 820878379 354636401 236242322 160683893 868133138 522202360 915034148 743421688 871744837 750523742 786914911 134708484 268572187 46197840 99159111 486203045 303084413 83451455 806379791 643032756 859696989 761103638 713888920 200166419 172944182 422349602 440123036 117431804 121469651 704196598 576684345 957868571 332406846 961681629 365058689 661757591 788978679 340681938 934090336 11137127 416282524 93536439 507381377 799887709 320804502 364502008 211567467 892546438 727121860 634953879 908467598 504717227 912345446 778577897 207399418 488431169 748452413 775871701 984151657 630061907 870897019 85290642 263755424 512111883 617045387 782366794 96086016 44703138 366114841 756024647 94217113 105487928 556755398 938993356 280660244 597383959 337971005 349820852 42519571 448619248 19157799 432972973 459285064 579115259 922959095 236541886 52162091 796651065 618755575 951675233 86076345 21002781 20889969 676803913 566332865 263254796 554335244 399417748 541128123 126528119 538713049 346833551 120948511 656083816 153731443 910231577 49845955 270557320 5612587 996610253 343167208 816190909 4517626 647130780 65099049 295072741 586670364 266683434 548107410 367423413 620064967 280173682 366643701 355176679 562755308 826422666 4995098 866408163 241287994 748145295 856788911 846389657 565253199 427708509 685058737 629228187 877182186 898030445 284954503 264770028 745729021 373517066 247519250 658136727 519782013 293053814 809752447 66107280 717764493 290808191 156796660 395123479 462178160 696879753 307352457 288728348 765989696 273508392 954224293 190374529 76103518 96968629 714593677 280539440 278385147 698559894 614840738 586179623 136452382 715679016 627440834 71677329 867754045 442087485 410369024 18842981 885912874 626702750 939428365 848122228 577624059 317203322 776408852 964965431 747016158 771266673 222621943 311856510 493811964 920746831 534479108 320771185 501869882 356467545 376111192 101307037 715726770 402364420 612763491 295223916 452432051 641745384 24051719 442463093 144356546 776714868 805760286 584847639 431970354 387710803 549470827 130429806 427270838 541963685 955938539 781677071 877511435 58108702 869284337 698055725 337678245 819692441 760641449 62332573 836646019 126304502 239513839 489405226 713555531 817720648 854286026 294950271 443183577 975183369 625540148 314555900 142144805 502628783 295817484 293313764 59178496 27550160 681273510 275162091 545045013 311839612 807263808 43242089 709054713 263089920 674050361 359610291 66335225 598384048 606741299 938869080 618209911 58024367 971148346 746203847 820076382 461733110 362550168 579837221 458657299 552505106 311318442 14279630 301651512 916715625 518661301 579051500 28545950 47677105 18132036 60445909 908727743 605954452 787243221 695157898 393837155 151236862 31358681 211682061 505997476 675994199 310580960 885461350 466914538 472125171 222663113 155111276 907210048 896999002 816604939 44950492 608863454 751493286 855056573 70504269 332981223 412666029 190387571 335960779 311781346 367262268 412560172 226741975 179174518 80199139 536386312 669083536 101313951 857423428 589844372 643416527 678133220 878697136 485235559 728735819 548454534 260070357 937635944 915328634 648484003 625040349 748620009 754554436 470072416 464940400 138505435 25860624 570180927 348378379 391112736 854420149 390777134 710546330 175281639 70065417 967494951 850402374 894145567 525442527 198086092 677759370 625996166 426377251 951790188 440158863 229473467 112630089 4589862 711319223 757302300 540454357 862725854 608916929 854563911 392743682 442315280 507603404 23326788 788605566 636884764 192738469 82894650 193748435 909352317 3514917 211487722 813896713 900966412 345357333 418820210 824155256 103398764 108966031 617978582 803109515 986749424 223182402 306212364 425599000 974318787 608852190 510475557 448709983 801851589 311178681 799578090 986017025 98715301 738354925 944006539 375334967 955460236 550802756 627674385 244107852 536064142 349664879 4901842 909227731 149508021 705190273 678669866 90334561 594909511 486712955 138525849 161532086 643575696 972430034 542265239 171231910 421910204 119240276 105114589 397695464 352020879 825847323 355677494 118825024 594337012 776484720 481177903 406929361 701440813 379709057 663771779 477339740 431454246 497233917 570680593 546953777 348637127 897178821 633013624 139179141 726060019 140191074 748530460 467817407 686303062 372542216 566156708 51969040 94905928 786526057 586946746 133361789 520856730 836020789 190407007 745182467 835636353 839172140 723096061 628592466 905006806 923192685 577457048 899176968 710558184 209253728 483531798 611789076 825405272 347537074 272224898 921952958 50506138 211385942 598215647 776951319 212408762 805789226 375447709 495288234 201672901 901092016 424103817 386264458 829193418 846069292 479458024 891214398 752210118 707839250 14810626 605462981 285505084 51362551 103252361 995401096 975000577 776714423 330945099 344331129 760159327 39641270 757798041 360227103 900337211 974961106 631941643 127117058 992720766 988626855 401919279 984543568 605524798 737247376 102080690 886229641 103549327 291965675 979371236 858357560 581058536 719374170 561728349 806786619 750825833 898382429 700309377 525645813 883370554 900735309 276976839 143796118 251998887 472170585 32062546 270355517 358225806 350034076 119364827 107290863 263802630 857848533 960214548 95287220 138041315 801428246 928649870 458054738 738594357 552369076 728334986 767929937 65521177 287745616 415707404 886835601 394123316 350104681 167511207 514391169 188282419 987455160 691467654 173184754 606853179 678003360 619565849 684774156 388004230 279988366 825483630 941556720 203776760 139656434 819780462 860106645 589665785 928637672 272649605 488748825 452546674 337830696 975008710 129501546 343749416 892608189 286389576 638621349 471411952 661139802 159734492 258739983 683498540 343124876 510555147 630723044 64641636 395740679 264855415 457018208 254734431 640013703 54113090 877467630 246208097 288400859 466593304 246933373 859426231 269630325 697943979 732595618 954115931 585630313 292683604 675396206 969141094 728392425 293092779 908661358 701066520 799110608 647435492 992289 440162478 128051676 165385752 362799662 738797293 685309129 23196389 117191410 87499175 154430016 30817952 961217261 930426767 568195288 15333910 359688516 818365577 875055807 675508492 823614563 720463465 900516385 232359629 470045474 958596878 96544655 688205100 551888412 383574285 403764670 113996542 128602567 743754357 411342515 872059557 84244432 980934716 273597871 814549203 632315175 901027555 626936068 255570162 990155732 581927419 871856398 824564632 437116629 544797588 900124942 729357728 362298501 638984849 945210364 722899866 182364791 325324483 27513169 353492343 720624648 87755193 186892962 182877638 646953793 59689496 906081241 897517890 524214983 861418198 407604330 837954300 902922008 853258387 77238040 219920767 578113538 749355504 880113978 190493347 581282458 671287958 573306985 63134132 496509387 821113602 107565771 59870754 853764138 211847329 832102435 977845647 444665875 734854618 490447816 156860242 900784174 414400292 512720289 722857106 955774139 86662321 703052433 910376562 585063235 903214213 711642470 606279406 127153578 189761482 527217187 659516546 915898538 262679986 619260114 236627103 488241678 58299326 985073310 101644550 584798635 991476327 838418065 891595359 40903615 78741649 975915720 424780239 979018976 281610554 448544839 241727760 655063312 233108428 239146462 589847286 377334096 252536079 791587570 551721910 31588325 406357477 559281010 879568155 602641354 732765415 887704388 94749562 683855885 796297796 494243341 999078986 323159401 826619710 447434057 981563152 428172751 266129200 548336874 439446923 735522993 668265664 582100254 306043766 493494923 750966567 468965482 288457556 313390069 654340885 572235247 984585819 622673738 142633287 537451199 453843740 302073608 237670323 735719009 691164405 345082204 321688697 601148059 261844876 180389934 753983733 341247986 769749649 160534157 792553110 778695070 532276120 43767959 207736941 553025835 495264879 278706871 916033892 114344621 116993357 622571557 797969247 11933181 617732771 231894252 364863998 139843633 915359463 766198160 809360691 453600331 8477461 217889759 929077906 434458045 343432173 671134235 758503260 118304491 48163916 667736391 192598578 413240837 902721093 367790657 421210106 993654936 185805015 780018020 416268071 859896969 11418582 919741794 668157006 736883544 289898719 801409905 966431264 788505613 265733380 951505729 290290076 231039004 642533188 529355139 786260526 939034836 842544702 757176488 921815884 177264122 126947058 466980058 426850163 905412028 205488626 389302652 648351732 913206651 345204071 338134123 81759249 698392159 614053834 918603611 747301838 387642334 654625108 263803260 74860115 214114916 313886231 370749613 405402043 994344614 121997672 133030251 246525077 724274778 486872546 221146675 398512000 165494711 844861411 203936190 244362044 207662280 857071767 118754425 59006516 512992632 189411937 805763004 263322593 354594540 26096249 244943889 357689024 540095526 686174218 299069786 908271322 1380687 608867005 53009062 184039471 407938842 922919315 74255951 66091951 147194460 285667355 944100928 120936695 1575024 11467852 355215912 884125670 517120687 838522418 264067627 236950184 151190917 21266673 261580593 37536519 652265730 129154517 504809547 316331097 719609250 877014305 442927663 176284204 803660796 657743966 447762334 858484868 902567884 267874784 971681189 881653112 324554331 748692958 199176678 185945423 628146638 908856660 854320070 965752267 988349009 535432484 70794094 650032456 677427171 79913442 377814090 731689473 737651939 91483743 65172191 4681160 540005338 427851666 4452277 510313391 719895866 586075527 173696174 96314323 414387657 194951650 991212646 594177623 5053829 534377416 5077262 403809746 885128437 76922287 766567740 406257983 24579345 151242913 628117478 865631490 751191879 23200316 363851943 677798570 991377626 63353612 205943626 570055556 654157769 734208957 920520030 554965259 894352228 703567939 986138826 246890088 802763914 436328444 308785127 818073835 717180301 833845330 796926408 18253221 221995122 493075704 2809687 660485326 307327786 213182107 904774900 268538633 417580621 258600317 985622599 202155937 483684415 99819665 476821908 101939965 185544540 324780765 204506135 877204144 827329597 298746259 725086920 636136611 463872287 312928757 106669289 978862123 551821073 402695212 652698135 963681301 173663839 814712643 964260971 883627435 972167084 742478333 611366441 768134534 17714725 959199318 713564170 881125280 398303965 992928335 71404880 42430471 75699756 792632195 775979483 990243160 500387005 851920903 413437224 577206805 815415037 550065447 117620334 849202666 164605292 363870268 672865795 211627312 295347370 647732282 773662598 78370919 84788631 563089859 220702022 130279922 210116099 867817464 829105625 997672195 236076397 443927350 600497267 165492141 985467040 457333905 810096446 613674240 262293482 558458884 461231368 135033697 359273692 777803016 177900671 690880961 520687125 13743643 226144919 130523047 54209906 589775573 591753241 449919201 328727939 881786432 602886155 254686104 620334858 479908234 195103352 978500038 52542526 405974758 542534126 62778711 249334999 41830374 171235401 80747979 132814204 564721203 573869136 843496472 505434086 820028482 159518956 958540395 791019242 748884957 401377083 759123645 430264327 407710333 162389365 149273704 927985765 474454572 839028189 12791588 794165778 916981213 616691401 13696486 308366931 240752586 565035859 951246158 115365770 619964673 972572657 8238392 249885813 139625556 24728544 331925420 691250312 227474259 485416048 529602358 874438649 100162611 209075213 709769198 163183666 828200938 951658984 477193073 400208779 369112394 278961165 243830489 321852842 881964585 220486594 700343950 162392665 927602215 861838118 697974375 981577891 251255413 886350953 769596547 263463151 553182105 740728093 742427965 1470614 510376049 335038375 822486436 544716578 603463695 54457516 533080030 517035454 194426777 667421677 859117051 109329745 947085469 311204569 682621013 94302970 832094231 896689144 334096950 447935417 635275088 524192401 325016230 17335694 796113051 245609388 231711485 9335030 239029001 947998913 156717654 132435010 212156647 317886415 718170211 766515865 928214097 250106050 138569461 863406369 177817782 216638068 459634211 859643371 451679768 137959486 957229520 903763607 710298274 805732387 827692846 739899692 978627337 117884749 77862410 303394369 583275399 804618998 577762937 525881934 333755465 454012825 465287960 788604352 234464018 991146127 803444107 374959306 532913544 970406761 385271702 647566808 815137123 556404118 784833071 509514308 945204403 918831952 56704507 39863205 428419641 905638842 295815336 319941477 403772065 271910775 164095946 128811936 181924001 853089401 92026244 195338410 915712606 694648022 99934255 722770990 558437132 670794794 652402070 608892825 968471058 251483361 335299369 353300576 902158098 498318067 583888035 378643331 981754716 102300907 242156724 24009098 432014552 662285315 742867334 184354644 122668539 330703103 789450073 944538897 575753638 435146195 921342942 13653679 266950654 838571755 587278268 141994506 29015428 677930359 629259266 676240671 331373124 702376828 19147354 475964378 993035975 119104084 492889431 176741973 536534423 705481602 646805284 632257875 289556084 619490999 841208866 174894726 65982084 860518158 242211473 483992236 374785446 658852074 448737485 29336068 193322858 139702057 759039940 497683269 67376744 266315132 731958455 947535629 697693272 430576018 126315525 129395499 573582731 923123554 76296279 381588455 149127946 147462741 70864810 93939837 762848100 339091832 114318487 970634008 35298 755439496 885653449 816780980 87479873 434656484 41501477 697271738 658271896 550643544 653258069 59897799 309618691 361868116 584739181 273039525 384445149 955491110 682922139 981964498 878297099 419426424 929450575 519030634 857532420 502819648 175730118 508317550 508584647 263970633 218998694 48666840 988789699 933219390 956152346 731035594 173919633 154220336 335629104 730295853 414092706 810459929 381990331 131006083 298368968 432612575 793702204 983167061 263296222 213349009 879499815 852506016 264905025 587622637 815844687 525088435 868657828 762707368 360563848 632460032 792935338 470033583 342500536 669718809 571703954 134513096 63868253 988584580 761622410 154190152 14617640 618820515 290825172 486229633 561098299 841873623 64334076 903724822 967537571 865633742 500364180 423692792 861828353 603539429 832423648 974325 203948061 644785202 367979472 890365098 656164258 858513854 187999069 279647407 796894447 100175502 774996342 588688900 64617268 259985532 782567449 548313128 492703354 342756552 637284183 203332923 847209797 592776568 156848475 429805027 292345872 862722146 773143264 56620116 83884244 467186184 299740893 20597738 93057691 131778500 933145901 13871688 397760764 405738095 931063663 949773375 939462670 749998897 54369906 587341921 779972321 448717723 973384436 613268038 94058842 724834663 421555199 203968209 414353581 584905096 886408751 203366510 229271986 984768763 870362561 672942551 287385678 533566521 136969141 689532562 76275166 472705743 353966271 203716348 947852116 746280368 86002843 874674965 98131639 248748683 192316281 17648865 360895931 703920685 633491358 899626917 854043555 684283510 751111988 45441476 831669933 15262127 838272968 452022820 894464064 682311897 725468935 8561615 667732840 113313045 258296943 365527296 169064678 497291302 611047883 382997621 316058962 47870172 540740506 495116225 558935982 351856482 554036071 165467957 908438996 61790677 922952474 517865839 603521429 177447179 939847019 338782764 807593440 123441466 896201174 922311373 468098296 260186218 305773739 973631878 24530412 608701405 419448752 874935096 659554764 407396416 130566885 358430236 698487531 545675212 469183722 147107123 592685757 822324862 717898347 78583430 611689282 147546805 194323475 917619427 528602363 481935168 115422688 941776386 521139252 404572272 774842007 777896004 698039578 24940223 763514458 147484317 182629132 194051677 306597698 606380180 962516197 224815761 821684793 693769534 177151298 808089392 528532352 406574489 501907772 642238622 82340900 813843593 305283060 557289121 951650923 507148653 264267050 524049437 945200834 599194281 970933374 505305840 280859798 417567841 594168869 869157277 218810345 23533785 300513489 489786848 584939042 422448248 808630812 956042607 395761499 37009276 489534633 856219187 726773807 395907324 799151129 177518555 596989628 672636595 204973671 195085674 288758158 677722461 631993636 455382560 137496641 187812181 894310858 821026284 174164440 498810856 348716158 696903900 949948956 850854507 719939055 724741689 895060779 914424785 399014359 649270674 599474584 40366521 735838745 485871104 778824503 598507667 218440181 691599332 186461751 451891299 574633186 994670153 782279935 14480441 310365809 969509238 309683976 30459374 649536769 520928875 954723664 634857758 908167182 301546023 883172415 999015911 711281464 697791320 211694320 522547200 960321593 500663648 418607072 250182683 111261323 357706246 100804184 235608235 687822468 721014240 237185018 781479926 616171226 919197325 439352609 963305754 201263547 60004039 704439933 783201985 700878524 229405394 512927385 204767936 847106454 346814377 773939647 646533778 555070899 310321019 378150147 303471009 138122661 683016373 773658155 580889844 241349198 846768815 764489454 481991553 353014350 454702467 780466549 28070367 128935263 80969424 392835066 711639939 458127810 41482285 224142632 618103187 790255169 746563444 703121600 337335436 883880866 269109001 925993462 924409315 251417722 572398978 823276382 35982579 929508027 786619440 779128066 992722817 163638297 629357338 404632262 971754124 310009987 340901146 411044179 197647541 989303728 842595939 586041550 999903115 523533969 610460158 387162022 454238803 532018315 741000532 913754529 342469404 395711112 120656369 727635950 696356337 756805818 352185905 559045964 494392913 147642911 658666884 432392680 913436123 752334267 905552238 169765456 467282961 21019006 346845342 466059774 536494607 616192590 322677836 295786605 273513200 462663879 110985736 225826430 165224450 686152890 705701570 165118161 789529606 561620457 728207395 983844979 776645112 904113867 945473422 270099822 670867150 405199859 129646236 419488326 161950774 9030608 442502665 380831421 37042351 150655346 725827844 209647177 790193819 970370780 349880932 184724289 339861267 361875234 403300467 943377242 286516833 301658579 182292650 271248607 590307307 957228852 807818054 140066662 487195601 884384690 579223512 249574479 391039878 409134534 676162698 625889028 862453228 577627250 108194020 90560491 591450354 610050628 932629006 269070951 58769131 833509029 126352958 733797839 139726759 209860154 966742371 700968444 841195038 949363692 775375552 465419847 848042714 255789878 166549896 181152828 289993276 920105086 350429835 148806363 214825439 936375442 313409530 985536876 401494344 893689782 802815440 405205803 740517416 599499103 165106940 193166356 415669024 737803440 463317689 628160739 839384188 177857196 266381794 216112912 260863227 918936435 638140685 313803718 966602504 558401698 202345378 395228267 511734759 422273812 288842788 128702676 766383320 229113496 897806273 55056568 36852912 253693055 261188991 643507120 825410701 934499970 124488426 270659291 773629929 918280254 353193429 256230612 356752841 250681972 547607651 996341475 23274072 357417717 786272754 568027416 751219653 672914562 846903393 894007235 54848974 250861576 426264527 697432712 132652949 504170443 213000860 598573431 703496944 221463881 230167879 331862105 532145798 800649889 160818804 659114702 711332576 83614189 477780032 961673972 354197981 3538330 217991454 607780098 867158236 269190078 192322852 523254869 599453596 799427732 874588782 58044372 127921761 799651213 324938240 293578689 348643551 115395747 59048786 880332983 127394859 714250867 216221983 612468693 84998711 525717000 633373998 769316294 818291204 366465485 744611956 527622739 240003269 748170247 287485579 138251116 93026194 842377810 440710654 732604467 555212176 72554154 422685752 530874793 533186235 646564232 954982132 823544613 250339348 169051668 831583125 529717319 969558726 611327064 52201782 955067407 348152970 877196657 906483055 841562313 374422642 716409765 680682892 461811457 799339517 193793522 391496935 979288112 741441621 660235272 563121264 101838508 68599313 704425022 294912345 425268004 35369947 622071917 912228385 812709745 284679359 8925154 205776051 164425684 46063394 711672459 319890660 578022546 70186826 775854522 728400126 186570532 249547123 978005831 630927741 926697342 790827005 545917095 464981668 558779533 648974769 765707021 729604358 167767906 348153205 665560509 113943512 429950257 672289806 789678822 915970151 693129602 89072070 452684238 438943151 882404769 394760914 96384449 920971219 334832170 721456127 350339197 233605247 473341657 952416879 853488720 116940720 251679586 888563620 528387163 641116895 796742011 722653683 478677440 886626661 942200745 33129643 206162184 557518516 284526921 280534124 348413571 778182558 236741547 904091578 622848710 535960572 304918150 997645228 204030988 829810701 200219831 357961393 792936670 50904014 129531209 729618098 82281658 255501073 402677771 872514951 727915726 788938401 867564037 886754467 976546556 829868545 879030024 79415854 65851510 715270956 976436400 233615224 154432171 392595721 404263500 733721066 884037125 223573100 53956494 258249219 604542476 447406322 704038106 562921521 58029654 706609017 509302176 441699775 680933016 462763276 265692706 207101855 96710545 797183384 960183394 128366055 449522528 624865086 319584823 995918046 595618162 575030664 142543061 427930016 277747314 202348709 665635903 890703315 476013647 650081938 563440041 939855670 79111889 819167206 805453042 510572179 505382030 863803629 111459948 604708757 184472429 740373297 832613006 536159859 650576407 702594582 672639006 335585572 907682512 675434453 44773528 948745704 343968122 274475275 339505659 265923164 180736407 533757116 455971209 698785164 83708543 669831280 46447475 544238278 40002373 95484481 913577423 112894603 881107563 160451200 252260686 420674177 750191292 709129299 923662708 340290381 985565861 635300716 158525528 38743773 82941828 448466712 809064714 574325894 211337593 572450597 447936783 238349706 193957250 587993484 60774467 714705922 94665000 883600748 207017390 993982195 832683623 266059372 503666096 425402026 554676060 509084812 914173730 594146380 337631847 326667676 897460932 722325859 632865045 202138384 635679564 297679912 673237938 445858274 428028606 698600733 37922147 394629079 903816728 850605778 307693003 422898472 649930210 996573231 352679852 348295253 478529919 765693026 969416067 565745540 901944580 415305871 56501542 797200942 928033296 979933544 334722240 193972105 401038419 593244073 237619731 588431701 88358532 271161073 555277969 423647948 207318084 485149931 991968029 490844834 797428699 128281125 590007935 110964476 21699811 303255394 33711365 530728369 602666437 879359295 751239582 673551325 370122396 386008180 527851849 53429589 743641293 850616660 67867833 732193235 676917252 262124561 810323791 661122970 264633358 626409133 519720755 233917826 277066111 132189682 641087857 955683601 92132141 787635089 747433624 211028183 639850249 866731065 147517105 706095841 129160911 115529683 921841758 541902925 109551391 150875702 190501585 608296225 750996527 806072490 935214251 192294211 200807103 971619546 570260066 373288331 477598054 659181540 981318099 994787676 285991306 112531256 417401034 65784616 473575227 536397330 944045077 367973233 8246682 907314475 178921694 72328521 903405992 33184995 259432007 394944012 143361775 850795294 187954298 59793563 435382592 561554548 264440372 869307705 754536815 8134639 901239731 143739245 65049453 243992576 594135897 268538593 18156419 240614878 945010585 999929268 358499769 863550296 890786179 35297362 665503683 135331063 742320848 850304555 883380274 641710576 675993891 998868501 517157528 327520212 686699143 905157283 395951844 42364788 584449788 227281788 511447691 773308995 585677146 327153008 321667624 854223372 119234585 946141279 602323251 373418883 600351002 489662513 418221219 142491372 272473344 364484816 292995102 528184489 507179539 499197943 109928710 628521908 515527053 40954229 371651287 558678902 268195695 208342421 8221649 249671985 949133738 15021651 74840714 810897650 573832523 882036011 24675191 111069986 445481732 166859471 114737760 456130129 498740421 402247790 19972771 384734550 630942155 905896425 645602400 296727591 551958723 241848967 636636651 829769064 324846825 111861139 223794342 294010675 232329634 683948129 153819918 172329516 164616316 724163187 695525011 339651282 694133794 479101291 614901100 674061853 678529626 91901707 278148734 6114283 284471311 509943098 619898031 145296813 299758333 931116337 32317222 221994079 879819674 576770792 71773412 902696396 51402623 726072599 489110799 98054625 879200432 184134498 19280495 685124134 597533758 450134937 304792193 905568420 453300798 942469438 762787367 456858329 221653105 939704805 569901462 483819441 25634184 339950694 278432310 632170566 442712922 503140008 468768623 516196040 730183283 872927042 96622166 65531783 872319907 124146223 200049626 787941928 646661044 561954571 103533174 476881491 190703930 627917794 426533126 981683396 444740427 314874082 740010890 873474760 647156263 384425109 769408276 875365874 369030605 78016263 801831130 137248070 55096801 394604441 213726945 866260021 617037430 402852880 556641055 784154638 692451451 607505505 208170176 827110375 79987248 821716616 554082597 664707372 288451410 213964709 382283915 714639011 773795301 191521633 323156992 202393472 581312322 6043065 454353217 225606427 226704722 670502620 659307529 773464976 100882268 813035125 26778990 662850996 456475480 977928253 567992232 206184087 491452101 75216755 193142566 71538628 452740777 472337233 715016563 725540110 75095162 842519856 284570710 196746072 957295208 540092071 315245475 258666284 855335492 128107889 846354410 210040346 838648935 451402632 692579476 993258561 804167633 421110451 241906141 697657906 599686710 536783071 409177693 668929008 936068824 377524153 434654695 771077327 103315396 898059569 483122624 573852124 228172180 170372121 943462762 854336433 827384151 454574766 945284806 2526444 263830279 506396269 456657765 758827246 605283047 696275218 128700069 969943142 453845149 895605409 353127691 949778217 582521690 356645839 176770879 605281169 331961212 419611036 222910313 759623902 743856224 174920223 129133382 811675837 237441065 966050253 132714770 457191788 172429474 905262973 131072803 183408359 78202665 979840105 926173659 658513710 889335124 347095874 659788682 338113368 695414498 769550289 936971918 809732901 632548839 222985246 333876258 867612030 750093509 319628535 232259909 542665534 232515224 525887063 342923974 636017085 553788826 923343754 299904379 231044732 831582568 936157239 917874502 132350061 734671729 89554042 21722330 589217951 211385891 312010074 302171899 304213336 664955482 697198687 533200820 20934216 532729500 119670251 549738565 418217691 664231380 3277151 634309956 546175673 343526962 179142559 868856742 270524840 252328817 529991585 718320418 892480881 43970735 824548747 115013779 140184649 668677890 975443695 617885506 55208970 935276357 954377735 48085988 147613828 754541740 678462531 901880602 762233655 615912932 990685247 670011129 387862294 651995691 10189972 293659281 80650920 219102594 639637362 963680572 97536346 190594985 818018243 298821824 131448059 285106874 163641933 825133307 833516902 396835427 190592799 873235364 729022187 313626739 319323855 467539524 138050426 581097264 164748200 785074954 94791634 359921668 995055750 737564766 452392316 685825400 117482612 3542685 820445232 6248068 588770606 313853042 509495162 270206286 518864142 232866658 332392943 230965667 35048448 818713786 70741353 105991509 953985593 193052416 629177885 985377778 857894893 352953988 925392713 225709051 825589927 222372296 371396813 131620050 744980038 63839919 955781916 799206629 907130328 67742336 587910872 717739819 317994026 400025065 221629191 159088418 29785546 861015252 309436575 986306355 33095627 863422273 927135145 370044369 230137434 77677929 233807820 142702788 440241898 718824744 819360488 484675710 569410485 387486846 346391001 547412693 280234149 470750647 178810372 893246166 272332166 521379578 277578133 119508250 136940997 147371230 74346709 827402957 910814608 536721854 552808769 143169050 784982740 33109879 668955694 636473754 400925570 728289012 345556236 827211343 964170479 363836383 655975201 626142699 820261127 544278306 411774459 406134701 631671399 369283065 644939458 798785974 923294925 503701869 294812540 762461808 651255685 698915480 111056800 551395099 2195763 338794144 153389984 387773752 825430919 40308546 731955023 855109331 545534890 285023170 759243141 416353611 848180085 568650975 390436662 269344342 954371055 330226914 646163225 353724778 855489720 724271377 131629785 570812074 6930035 40854568 194029357 735308699 423883354 51203097 974456411 590594711 440746015 252047702 252864117 827390147 239109474 623847437 798582399 573051557 373991728 153562068 422522164 505398316 62448184 989950925 871185007 567525084 906317619 774236436 633331298 576658073 678939164 57423550 895112721 805680416 890492400 438658536 159228451 377664920 675907504 439730636 814751750 714319757 758124828 590520258 408343212 858100858 204842883 897226227 378422377 783717463 891673159 416845796 839367815 86919042 434557315 145581986 906124073 652276464 648570323 705075793 930239548 536436249 474259055 433866975 542402963 666998256 44101240 575566767 665163509 621481596 807116973 918539868 604055750 568396709 793076535 248242212 450698978 672192763 205283323 368343214 731763071 181849944 649196286 571998261 580546143 136136137 53408535 877963136 369133438 719275334 134709826 595767319 369718703 508112631 182799167 468064639 490763219 865136439 723576343 608708146 134788705 755936150 66798772 174869711 121754605 257409579 202298890 213364214 805364307 713837846 424283812 178199091 135732985 220958280 506134752 188561201 568065520 945397092 537910329 871195302 889348670 319791267 581086651 755612880 382513283 198972480 385167511 40819096 121181260 139232756 230672161 151763029 293862407 635147327 791926209 533413510 482191869 671521548 320188904 627382965 932683129 970896759 841285127 78351111 826118942 572090525 297463174 939342886 154926111 1989794 151141796 926011946 764445304 214615715 368702822 524645149 440396902 129370268 108188071 523537059 488633895 492669142 423449041 562482489 472420430 99685879 612556338 514654394 713567923 380111707 164805026 311348572 780555943 80653972 760421446 205958125 287272431 691448178 559487994 502831964 357540988 655482898 695088789 801416057 333568006 837256581 843628109 339217824 720057470 397082865 422969453 587421610 575775774 395934487 764860538 802084308 933452366 315760877 645090369 235863374 167363565 965812690 129475789 478816571 502550364 550482273 66696072 830589415 394743158 872980078 720500263 217129461 446355892 769791302 368982745 935184243 727339324 892073633 142835530 470723715 441485926 3979283 228588812 476698389 928091235 775811736 624954343 983776231 505690762 566068249 947064907 430361354 604322880 705907169 212190692 258438892 274453407 4724236 359117451 967819533 346958097 628195239 258360602 321044756 905460004 194153106 756494191 116417679 449911296 936184561 270407690 907150597 57645776 199760027 659691764 687280082 183725547 310264790 159289073 292263337 683194928 983192796 552140051 505485600 150717787 124313954 164387995 187043045 518263990 617465433 689678104 891485043 523143864 677178649 217147152 308352262 635014327 125350260 648520310 818746962 995805137 704797192 138886454 287341224 18183921 305832830 493743991 135074570 677108630 49277973 243006137 357479717 539612962 869989628 602758885 7346795 875039760 333737970 312476062 748318441 827687372 535363874 804943925 139200733 753183957 877616545 112159490 12872195 786229174 809288809 249133735 204982615 385940408 749629270 80503957 450243206 512457130 149923294 976445515 808300262 773480158 937402374 697734393 166206681 310244463 61894517 652365517 579295470 201529902 75251755 493693277 481398295 605186812 168764425 474945316 405912998 371943862 212167542 8158294 988960430 992337360 893321848 347388591 67623850 33103280 506883804 845704489 597053893 305507578 261418568 439550511 459757562 155132155 620064971 504090561 105868423 253294214 556847160 899440932 316281372 688735254 251119145 336103008 585626395 964636445 554254064 256160185 480599126 898488591 222787459 732413743 773742696 148658163 890368741 621008256 358298827 536476305 230947191 332094533 4135315 263677370 741597610 665316842 863033928 420873401 131345597 567741420 874618403 584512544 946356023 753459796 241851869 937671034 526445458 801217079 489193652 620340534 200023858 504800214 551852865 831182581 381489670 839154057 669469498 949855285 827565202 649145864 27370624 558614764 149242150 695487117 210742226 442422898 658653274 881290398 707608721 251662249 458695429 481822974 940294670 531586370 645043674 780017074 810843541 931619651 671406221 101153315 694300217 963934070 372358432 805117633 589397820 564842076 471099282 858279964 298076497 276954610 167260461 561575181 845868184 237028826 993845085 619090503 315546947 197510071 155714558 156595135 112752254 533882126 759110711 825689659 713377192 79474338 958010982 272074897 789489734 733195104 248223690 48751592 953460911 31894535 868156166 778280337 59413575 99619432 791539471 739820914 45224986 705877074 816746276 111187634 16233361 785691662 615288325 773667161 361556520 759051636 593084617 988289905 145194172 117489798 760928343 160475258 784206725 87113433 908581000 283744249 111695436 587550231 340903234 535983091 100070286 692684334 433888861 113545556 134485524 941855695 981308728 453162880 871131213 402627889 499817724 195228314 811594794 256222218 810616360 110015220 308780765 173871654 279497752 435890656 772318941 254442646 257730698 274859766 23046797 755621546 369603043 913405754 325893165 33678853 198679093 910248573 287823769 857004197 60039618 441699325 716146016 583717797 80005705 783433171 64592838 148448792 595942196 464417103 11749583 557842141 70669815 107203958 43563463 853887281 323344894 45678400 624211590 987404325 150997250 182644088 43710262 488048223 569151059 144751279 212117558 478252205 798535444 974101550 787731687 813164017 868982430 322064267 960640505 612042081 768964353 123773865 606845967 477928290 860884375 609708190 337314525 270793966 707738654 697635866 698461909 765561318 451710043 348324966 923066962 689159775 672356479 937073585 746948185 640491017 531168830 194291466 150632640 711421467 818584281 64270122 247812821 532862817 755569393 670810171 982278794 990183034 260258767 992451609 70748260 542373429 466570884 319285919 927816423 378030159 647025366 99192734 424113974 718622970 510275013 157845577 438226785 733108833 142900559 928205733 322593801 16296385 644831771 843510997 655326475 535430938 128822319 929054691 191961297 339043392 597035395 461435767 210006641 767376830 255670729 685332702 156774140 231542010 328466652 126077801 58927996 278990518 145331858 491940048 112621657 276700383 275829135 446718191 144891166 959716108 183153377 380615882 7846353 363296683 718843247 827378945 312761202 789656438 587751698 265711466 270801331 231980469 15447274 473724663 196620593 863313743 27463048 994700780 861266833 734831342 990226423 15303260 595892118 787202345 156536571 698288810 688106438 959257519 640198965 498845470 512932094 610026462 444644244 94865718 728744963 464702797 430389241 971039022 846577066 337847852 326148302 647040295 753611440 436207011 737158608 383651823 663943561 152469632 983285149 675197838 948971109 804419230 156946909 297136739 737233348 456248512 596047121 324047032 983177495 323897307 688153198 577192818 174318412 529915265 824539548 790657133 306289819 337651858 891574933 289652209 539569262 340599407 189683387 696072667 733489772 336245180 988708721 245874713 502017581 182433760 22391399 500844065 412186089 866876942 323086141 802993060 935245086 999557754 949624494 948864090 322426694 647618836 738758018 30027916 278718674 42060572 428919395 951248574 678010796 240156123 889363948 589889298 872035880 632126877 564264882 231099816 249353960 287744323 964949710 936028848 107219784 917973625 51029893 769108122 703024838 112828416 368294830 520666258 424647041 651904302 658036497 96355363 212342025 259840746 516415860 252708524 455393853 361966867 62363896 618358968 221948010 885703236 818621462 832862164 759174980 818190024 602268282 200032724 566082243 829390438 216041698 224242433 786640770 768631312 112733998 780298804 746232367 699968294 312462683 279186701 387413218 695410085 626537973 200590761 799934051 957195079 286653823 990596039 76687128 56691836 811694611 80615913 856034336 415709832 876688225 32571054 946122468 86819719 147274202 129271251 467450749 883767167 859392600 565062290 336372771 611317768 855909405 15506156 342757788 524191933 465632655 137469617 615765809 252798255 300453591 684660592 882806120 988226979 463989876 437059997 686914426 390130029 955443377 499287459 500786380 724166315 689391534 951449112 742314952 216960299 117900124 901773196 132639228 83289531 50315873 980565683 233627709 349723265 401581824 428625749 182218559 842648510 866786788 218195610 863408772 921900580 943382531 114121078 992493881 354321835 496064221 816659432 72711357 967383845 64169578 904407448 834937099 418198274 791501307 863852266 9146865 498634919 758910395 400270041 199093680 669220317 175842502 660164 222602844 603888315 342666302 653199298 915476032 328811226 574942839 411994342 360611963 627796312 453683145 843266452 405411063 787577272 488349725 857095664 883539888 704672943 826605819 778775849 825112873 311455363 745978605 872919792 116383869 878398830 218292581 247319351 700808451 270478408 36457688 413266756 122298776 852418442 32023550 219683333 885508421 892772389 560777523 923361986 431787908 419617643 171199641 275142675 794917490 288725992 601495148 897596046 626148142 896065936 598630921 84786714 452876460 848008627 506662174 843824277 806509463 339888923 793075479 737442349 390577614 505254607 355902145 610306887 678562209 313453017 366654304 670288370 896096670 468086580 362409445 560007774 827669849 474300972 790310242 194872663 14245195 78121485 977387166 170743970 182388004 583161450 34976450 715285363 879900842 188934662 743153680 585689337 93409295 620509665 180418005 790554245 179604410 102689161 118330250 894702048 903748107 753818895 419276337 322638816 959637532 812507934 662063768 482566772 985228720 474520695 335651430 734511091 325471211 127629042 420645108 278731035 257745748 262101779 551143629 110306892 854588661 844730841 664966207 297105303 185763446 644674729 820656155 835410110 472043712 200487988 587655711 755057003 583276438 828919734 426515130 120726072 292515691 857565005 509685457 268398629 147991332 311190171 721199675 67999187 976320064 638644573 37816498 360473560 198432394 789127765 49856089 384738253 748217026 547932911 669012746 817844536 665981296 810960108 844171154 642190427 819601026 508009806 967248026 829167180 212257775 324123797 811881090 967729285 229158157 58566775 14403803 5091543 419001706 324117440 119231351 865128808 795626058 663755703 558171181 726141670 93193941 350323076 417220379 203110612 682073810 472047262 223014043 169149464 346234375 397162754 472478948 872104090 126879567 344288531 747831342 585927343 465502093 576003123 551605108 879988903 9581398 745846496 252933118 442556412 219928966 195177997 362108334 270488688 53893514 218059966 509208123 7088870 767251084 262545460 800124187 459406718 77838369 253151448 337633869 212566538 618098779 727277263 867479534 82213286 512476520 618808866 849828537 678901329 293731691 323509966 18938254 105881801 675454577 958881137 537500415 789519587 627988226 409178733 145118339 556491246 321401618 282318412 677577870 924209459 625400318 371885376 678156924 442260739 628598282 739063695 339100405 773684624 124087480 435787330 809926206 145758108 959602239 358780304 250674643 194239508 990784541 456047176 335836945 857250333 947029489 264097255 951250517 790182448 274665201 387215145 494227492 113303551 875696654 904568836 861796052 333842412 10795888 334618236 260282516 639359460 354111671 689161806 538876819 238419683 988206450 82781004 909261901 246144490 655997639 50351914 581408507 306024788 786909231 10889127 682618615 482178976 132717098 957994845 109586728 539968533 912355601 897241778 592852245 200033160 592197345 492524999 204652134 589556311 902403831 588446211 942409418 534507764 93490967 380848115 22549452 794502818 379731700 152328250 213452253 171728692 869203646 492045843 893593208 882544316 770516025 883894507 800430342 450543706 350416025 482930375 748010853 794806849 711906542 391725410 434767044 621482178 469098609 611510115 64143351 4657269 553017022 274916842 783760411 502012351 417565306 386881809 170843405 980109930 958735858 285671605 817015845 758962516 959963548 340607242 240269299 847620055 641435534 121231423 213404979 340731737 923479829 664730900 16458583 604721023 88932962 353153140 393501485 914962742 770698998 521429804 869214967 653609001 52166274 101242064 935554101 987912963 971063038 395452715 971973621 927701750 852293160 213628768 31325993 17826546 874902437 368692144 80416618 864838572 951942867 291591881 609413328 168277020 952512274 428995958 790942840 407994421 505945650 113536612 146910043 458563747 300412705 519743525 892473144 615612324 62070816 62416743 442609102 816278472 948490391 932861718 886128808 687184859 599556070 238625833 515915783 48280326 542681363 391303093 795889049 542695353 530200658 990039097 847500253 768554480 254201851 735154238 479961062 719579849 801449554 340664659 7325575 803643233 802818839 162962464 307057214 566799352 573563365 980829608 3638711 34210399 918445543 169630452 862778750 933493597 250567587 741687406 537353567 161922962 913237979 735682232 341087441 51189306 202445301 641140919 535335260 476456272 53221725 581281870 676374185 748323026 395678043 707111592 703299156 72995178 262717146 514929700 868315776 734835038 128473924 461856635 662550059 240279028 261137624 279232217 412334678 128991134 164576944 180032240 601959658 423268997 483944313 134714433 155991300 835624669 162177775 413861139 498763887 994217710 99139898 19997865 780168849 321273454 360288291 417806990 432811208 351113405 653941774 138413062 386157646 146765312 564764958 575999105 246181247 958914066 573105150 286122706 6048352 651686305 591636898 45035835 917028383 985085040 800699459 603223642 303484428 927138292 634134007 87739215 979968288 534645752 733171347 342180987 134558382 798938376 37236515 250693423 601041016 85078582 752097538 381348165 621426776 41980782 159290830 91787965 838502446 494405803 57043236 742547188 149428484 603265091 898771263 482260458 339560057 917988242 852434450 143640605 45464704 566556403 485797632 565341235 816536933 128283426 527507680 897887852 935107162 887129975 947823668 561607569 268082436 888483414 346396336 444374983 526942945 542939249 515545653 821747796 764406580 935589630 309711953 455250372 584653989 821032190 243879609 380329189 251690486 689888352 764818649 5778651 165708349 462369967 913688013 531518767 338255067 227789494 111075678 505928857 102819457 425088111 22879080 446320001 57012225 290970753 484503227 609146136 118193632 779008850 845706350 70933891 752692641 549934977 434184908 606761286 891442643 201466249 158619341 697805270 711187461 135090923 396842904 27110568 135173320 545258892 252708043 57061097 549902997 643522793 17283250 995551680 749111813 557597551 357986357 943210711 374356665 496385433 962888097 160703353 338082071 622899137 614485695 745224441 956497865 379886471 777018761 304315534 145839660 967005913 433802576 495915452 845405438 373344397 324752532 569053554 28978295 618448661 610361904 625203494 210699518 94033675 877230522 805425644 759365716 55599708 231684853 293690327 366716909 783431373 714055648 258188894 996551324 413339083 676240636 255540329 175499367 801813843 449130317 765562552 209605267 753470144 829182074 622578131 222775641 899520265 829162330 680024673 820556803 526774548 299390509 537099132 546414286 288798311 538176168 386735867 954445124 711003113 602376954 840005289 908516965 112537808 757175320 500899400 738115458 37899499 843729196 228194316 852767283 943255466 665873033 412709053 486018466 123714185 206186300 901420026 57736561 848047467 364823813 708048337 713985207 604672799 660654788 918024446 487930218 198046394 341713638 688404199 903128511 693179607 775693572 304977004 479515869 214116546 289525746 893226494 304974883 592645148 771839023 134256521 155930777 145502088 174307562 867536709 815961394 219847299 879050394 159565637 170603046 425928077 964542158 650674758 704065560 484366354 363718359 569914052 320892975 239247723 806448470 466875371 553526446 963992364 863640876 344171383 957329885 347776372 928697262 848712770 310363235 883528051 946133694 783226685 663198060 16135737 849651078 32096398 815852722 882772494 496426263 353810178 948605209 899826226 363420805 975634609 967741102 224142417 823528040 108865114 43793175 546935214 360263633 539263931 978332178 205758550 658679709 793860714 721309592 553963434 287185204 580843156 753497506 442877135 918220806 423548787 354543188 288716341 175793809 939857761 266151263 728083624 10756342 44899584 327865023 751430868 612203694 299443736 86104999 241357335 717579220 557900802 285104908 659704248 720207993 977441919 611521072 27968727 85300623 524324452 730207175 34492431 412503226 150504422 820841391 436053507 429329309 610347443 777606473 620733775 811450999 461699944 114699522 793798823 240164392 407468609 815416126 586384933 47301692 297838955 798467566 389922582 938461793 425242995 594118801 918880397 565248329 259072265 147401049 671129524 871664149 820516244 948611138 80714964 251061613 24400751 772406240 462907376 937131611 950132506 957863198 365487589 504068512 911527015 82867374 352300806 143110252 442315094 165630315 664075892 590428837 984067592 423859946 989809237 459666991 139085669 951644043 94936399 584429151 5896673 941224602 516728284 183380969 797028863 925830336 970748579 737667776 393954308 586702545 593092543 109736664 412401645 183231159 833638043 34486623 100991474 552482115 996855548 914775824 858358483 478433866 872206840 625003635 759660853 996305042 287508870 622059751 197896777 981513392 551392687 360004157 85407247 830421602 326836885 581938853 569894710 831545814 299779348 159852236 87620568 919275019 681678044 430884970 24795023 875030010 739242945 111952349 84755662 905160464 953223015 829232450 648935613 970359523 148700088 858991481 494097864 267212854 972913349 477471561 871448977 280640703 690149967 946035177 549725325 969955965 252111900 154864129 559942042 896996443 444227570 834006991 246316882 349721800 631610400 145694787 228771512 921879404 594285977 59182115 850403097 125510499 799564717 123169943 508650012 307952913 623444015 497917309 137715220 67594091 589068303 873593862 838444790 382343143 267548672 238376567 173719544 64544424 896621882 785796970 664409092 460408440 127007081 130640746 816105616 688004425 347319662 664159130 262452690 238055815 113219360 156922869 350445603 221013760 324198749 972737577 67260817 649678388 895041900 474459301 423176355 609262752 843321899 449872652 959200005 462666913 181387670 919672118 423080501 784064169 517380502 536133739 969722400 741646695 987840207 535749389 728960648 359546952 275449429 215122453 257892926 461790433 733286083 840300438 869920200 685154544 541724939 687108651 678260603 772791073 356937835 350865542 800448081 647612429 961385771 969189687 183938592 508962394 589423466 973421883 174409428 92080810 911899788 323456405 904286186 897631489 95822366 736886191 596885651 153778753 534471461 642076612 661444898 657189216 733130534 490048426 499671931 774802741 68449610 867243848 661530513 808821404 365349809 649049419 292270996 937025482 504201016 823746336 420322048 70946390 696683627 238537033 147196232 154433371 424922159 344866635 25740767 877866911 978920417 560526300 274505120 48223508 148389772 353375267 132018986 179823488 84294346 968577390 672682436 328012084 722858152 238059976 735483299 912244209 140542138 437708202 122106651 819771949 984563478 814246529 213576680 950626400 973946475 896134082 606812856 747053400 273299572 595507227 12031172 737806162 22794989 712678068 645089413 553716660 48530967 78701219 874018712 529077121 341346887 692381072 856773512 541015388 863871784 190829222 465852193 858310146 345805579 509100175 492826468 171188787 706703902 167191537 832732231 827055484 338592354 723283828 267418227 68090517 554708476 579102620 135026536 31502028 481822895 662135876 414437418 519421942 667373132 271490523 886556322 401576842 98527123 581575603 792307408 288247763 138512968 380227634 299203672 735299558 268539243 46167298 294681832 294196793 905008483 328580508 504627785 803114602 969378887 582536636 419152004 400076774 371345625 143795600 644774751 174534213 731436665 701513502 109148570 543174505 421202784 439736245 243867415 279865701 820607332 74565841 423485026 8317846 100221236 173831818 529378371 301899090 563893916 275022745 850690891 37576867 791902623 457360002 127896774 924152533 203063665 369418199 425880307 298283678 518588392 454630156 749664572 692806670 90091087 206913118 683665903 773756936 267985515 722166117 988155088 63648288 361659845 809248690 566268776 993965244 641794539 501719709 342698887 326758512 575245024 830895363 929675074 838225638 187328762 349112899 49574527 814601025 717090643 326053466 670767972 645490995 293089551 38252211 518347784 137693727 335332996 570208975 941044086 86957487 651167198 737325928 172481304 478597979 66944719 277064991 285116704 147482993 713083287 637520014 563158745 553062 147162983 226191832 864977807 709923944 390637648 813105421 562290306 999573798 687978710 146571003 799205625 950997731 441821102 789149705 712359416 591763783 915523534 251649719 670251871 926206115 570803663 418200031 285932176 430576250 424611066 856481856 25166952 590605711 26274037 156509578 526469874 459720365 736989918 943963682 757649232 71359450 811110563 625922046 406595807 146897723 320096212 130725827 441080185 498933638 85402265 380174759 752568494 316830518 8242796 450525654 489992569 822017462 480649627 274268169 53078323 594880073 686696551 185228770 319972110 478624945 197741743 697172412 218786157 786702760 746049653 984900895 57376492 499212161 683757397 298502908 554095119 462220324 963416294 497218812 913799671 788827284 508393127 915100586 369939172 818272260 797659195 845627238 770010469 76114481 928944656 750952392 291892763 341289185 624760510 130085257 135173528 436321815 183004256 305069438 134850967 516868935 664341979 292528574 46532219 684367636 955130925 560294202 853713870 713764849 461787859 33613298 898782704 298837441 362832590 438923604 842334187 241847374 455088934 421813109 551153089 790619571 455630050 461089578 684402359 611941087 566508450 50467082 692824241 488047734 817123733 71399655 870850204 974001153 380437141 836814323 964091710 323247823 831240332 205261930 22405409 204463208 1205077 619932112 609853832 861841160 911579601 519555143 700414946 146265888 479640445 173885204 547298072 315257593 346187025 817960499 616605366 618872399 338776861 773635055 130272449 140029329 294838946 921423757 493913676 415573299 894221994 447625195 961667750 240096616 262137022 732821820 274344718 664104268 50102562 250666748 574375576 319455170 568112417 108181265 743868946 156897080 468796332 674564447 315870796 36368902 270158891 807381009 342732343 736745438 360541106 70135313 635358199 833448451 458503740 784688655 572426874 534476584 146100078 213278456 734062335 340015368 543190609 885565649 276836050 497501860 205389998 566541714 168633061 838706486 408803481 5272596 200097366 768048276 849923290 722494653 701075037 353193217 645182404 61874688 310901735 922863579 581192623 597816167 362482152 413103449 38786636 388944968 103438408 611847325 940500258 750886170 176551865 783413528 338325420 125867840 331006490 128905766 575256175 951340488 463751859 508230565 296114318 734601604 873941552 535029869 141552595 966965006 224666897 470353996 581470104 575192981 935421912 321881994 457199512 374089836 722150649 738403112 670015270 867975223 260949672 728113479 321231047 605543384 608579867 232330911 104240612 597330146 489883211 38720917 738157092 501689220 308814419 855794728 804854794 620782145 749245754 75637546 80945776 400953114 177301291 929843421 736567769 269521768 699136592 596964319 946669315 35432744 199383212 755129800 492658630 609814309 161556717 482244443 142614855 860484962 204058956 295803072 532894508 124458217 951826475 975108969 934457115 87719198 349302339 557478487 336805330 407457944 865253914 991672771 607479929 869287666 488776850 57669593 626943060 775485465 912173734 328093630 890408639 354012771 371337866 344911448 883244941 516326694 602755731 227649960 456459950 39614785 295392416 540164530 66248721 201760284 388875050 263933303 587448478 768861022 377135330 420355285 338201355 993519343 360351398 513306280 116748143 378949219 843254634 645732204 725712921 597541877 526488015 904873575 410338492 860332631 976282617 388481306 646838914 75794878 341386217 859580463 334148972 749453380 54251595 372460931 666400872 601306008 287139546 267407444 754667220 260381571 960557050 908899637 727406418 286222588 851937917 688478698 165765582 513380146 750962161 119468283 695924106 334491996 695687863 438620450 576114833 983823799 825457025 624177575 142738843 148936646 412661315 634653136 649803698 803169226 312882045 457047650 482811965 268905406 77319803 900825469 495059070 189559320 466745328 230063378 626857989 681323284 98594412 489216557 636503785 389912764 888771068 961103979 641600437 183918414 842238774 373421062 891207429 949435153 259383056 151380725 266970218 543257484 204597188 25353140 890265866 552499658 637736007 361466676 917822402 344587070 97569615 466674265 771319441 210688723 795599770 431930875 397659908 645640572 468522691 733123701 96346926 198697689 74612685 606667231 130373251 80980434 872268788 567050359 274175007 622340411 399537706 479099813 315050459 776723621 71654312 759704372 584396301 296673758 447500580 418378972 630277529 110153912 148733819 426805489 304903887 861101174 546481497 177751341 439799418 855259900 381791830 436846541 427540831 831400756 71010523 399165005 96078393 295208564 145321569 466010346 802026192 671431010 315386431 560446452 566166438 535577324 133157450 16794673 842981222 276036934 636575505 687838372 810226893 112065648 766632208 564552434 26340576 116548183 605595714 557319808 892987581 17290231 747258292 201195327 999035638 829389869 681015139 958890463 139851436 206180095 492663157 380335548 299779927 796653315 762315031 895910749 939649997 639171789 809531865 873149638 926146781 36265292 575812726 974479724 320652168 8830837 758010004 410484589 683083115 502559305 108638843 58245405 132385729 202120105 304621097 161791981 702343027 308449145 592891899 204730442 3495822 743167 545454445 721971362 965344106 865562394 429440069 56040013 669945003 864914943 273798496 181073049 883388252 809907047 188605539 656961510 203839745 272741299 920509792 723757286 34112983 838664586 904117694 751564394 277103204 581032483 346531830 318113766 898597446 394969025 846876956 517017758 5997830 677887040 739844259 412563160 571056439 521272947 826779080 694274683 915561134 462847456 594361613 569653070 410159769 920030674 485475412 479556684 502611504 827870774 445134167 243805295 914974352 965529777 619679231 667396040 836116315 488334076 6938755 645321801 574226161 625292901 430644562 638774973 3565854 911820943 634692947 389299340 429518190 463600265 883072456 376232106 188372395 310464488 863653308 411862965 419169246 655860201 950690001 220220161 13325011 917720383 303927771 407847059 674470129 416192311 929266458 145185976 826725021 10185072 170047778 651365894 16518880 395536496 421336903 622438059 869967793 417888059 612166889 454815639 195230384 267155782 685194758 127781496 399620591 245539830 524693963 913772490 201240336 190332310 28338191 964178912 644883008 125328728 482905756 355879057 445091049 518186773 110455053 60378423 528790709 716451862 32806529 107533493 468028859 305551722 336538434 945990933 630271691 607832109 470646962 841589147 520920043 808564643 989611405 817926479 746936071 384824536 292123435 171026906 731300369 732921845 744661565 810255762 36403641 578040925 657156592 467099150 52330497 991699189 443046288 698547277 824627528 175259103 218495047 977822938 545512530 614165613 580409467 449555331 41536702 509935219 507449067 926448191 18261927 345682744 785683411 972442399 343519763 52138869 411611837 86372804 628284211 255449536 587253330 147400126 752893431 440069961 557445633 805215505 698396957 844817878 878112499 876359125 944820294 617035887 437968196 374420625 942964494 423645747 159850618 532810733 200745937 744111445 596001389 946149996 154586775 757634182 343390253 28403635 802139603 501874835 524082289 707953180 781822976 802564218 628252024 12417596 692539803 329612974 565892301 509035592 447004577 336565812 64460395 575236206 81629464 611116058 901026940 634931896 91754050 44901460 228926307 4125566 517893821 875283317 487867818 453386916 470873240 377786157 668808103 517392952 898833116 297181145 621502661 52396120 81664336 387873003 94111651 704248383 383551669 693644085 673928931 8688152 203179354 976330008 539987774 967710695 838607230 506415327 185524012 696562573 76380993 469127027 787584969 910853173 121334518 8013556 588852212 763516190 734255330 185804037 970057134 466809222 300582362 925127406 502887256 267215239 796401274 330362595 945351898 821642755 474558354 841096306 708445507 767872648 283689248 900628749 70555597 117843738 227710687 392188091 206854244 970329922 643985910 820210838 686562318 725890048 910034135 349080356 620276307 575853560 686469490 17327645 835564597 258763594 508318931 297686022 21818238 800649484 47379697 360964971 42674614 13117097 915320464 463807000 82154017 957209260 364431601 454404371 48363993 912175080 569867460 935489118 168339429 306995814 232632389 802785638 371836204 687257762 871185100 875749048 775258106 677819609 875808097 821442005 207776506 432815301 859285326 760652105 504162722 690070479 181827667 876843575 322775929 468870933 347773279 922649621 989688974 330599084 703773298 732826192 200872290 78941992 815596020 131496113 212120003 865450547 809401575 630610362 690949990 759018545 808059302 235131423 215578576 783751419 759056218 969835225 155132714 565966541 65802121 514123076 386211115 871601089 64132825 877991475 432993974 156951288 664826220 655790413 262497188 183033562 756977542 118062938 462349246 380423896 780197060 91198464 549962579 748270276 210262601 140319572 680077288 440318595 924325007 659286064 490448257 667110946 226846284 701568470 314812328 310018680 696952909 828564621 417002304 143911646 544880137 749864793 960967877 889406929 785292691 80664970 915583831 376272125 625410640 559996923 286742182 686256208 367122389 448642813 517125986 651385495 270181374 177767037 228454525 28194367 812533361 733974009 241316104 666085868 439696650 419379509 431939765 37901996 682989439 636986291 800221565 76449588 965706737 683753976 308903120 853862036 719573179 191922878 255505575 398528661 288126815 992456957 652464437 955610889 870636480 109613307 589340178 927854431 804279243 64993453 717328778 980909177 476377849 789933434 802085274 172031464 2060299 65879017 787404420 772511057 759666130 670587520 207788840 837187274 635898347 486668764 51777530 690454601 24561190 74178684 225201876 610498457 105184879 580005277 670175738 283928033 347591747 766132757 535801286 455848147 841973613 954228429 489464999 605355755 690440704 631316372 70657972 737495270 539228882 861612217 896494915 597145389 626623643 581732920 290701856 605661759 337581238 402060325 479314087 213086660 553004089 688463086 517525491 133793666 357831117 259145501 788699273 44725880 836109003 983172613 356915715 743818104 69173938 980044225 507350324 814015528 111044817 784628353 62767536 168887053 283419333 662853935 115025988 115254522 280910985 214487623 734716867 136554885 754375651 633918498 151831472 791430294 17441169 29738763 714056984 521276055 218948353 781620089 162612840 453907513 911707859 619138781 320977605 486845490 376818365 610631872 940814813 657244493 893098366 191649377 346199154 207921565 691848056 290958486 484063136 424331531 392871086 789273776 113111740 883636594 647353500 960750768 821207696 148478033 299073095 322472899 713313340 859178882 491686657 925279093 532725079 615962825 713387272 97279463 431701785 344395466 56132087 258940567 357011069 738529616 423015232 323633218 720317785 651691432 536467332 512815411 563751538 277725702 239448739 299927851 496804393 289511814 564415242 640024812 193350703 936598707 245166286 835704520 724952054 867531779 809605594 786651523 290984232 802000611 932180774 610511987 549583576 380747871 830851680 325659652 546805538 197373530 291738166 973247515 114827735 797847334 161853615 996694306 782206646 807783346 174163812 472633317 79160783 667784093 62949507 25094292 894629276 628039649 7838386 593900507 948336876 264251537 396041484 426148872 123609110 594955209 952589613 477915497 477280060 461040820 875101638 839657804 336488862 7306966 668377218 426266240 953145114 473895120 263675961 248675194 567442139 198512049 602338710 735580383 34872647 178444698 897548039 576772706 931135061 99056785 954416910 125153559 39978075 861111980 837425293 35954047 339597719 392528392 868149989 483833069 934990139 544591755 398263318 654339002 608733770 703506134 213271940 766662126 718955840 955810114 341057802 122581070 97537019 401722717 592140671 526155192 474265919 454493252 764646404 860434310 61327227 382832409 221100488 538708553 773431273 770738494 637939770 736484133 897742090 527172522 866800230 757067840 545352756 967477668 660783939 18480559 788240126 640532425 607072287 912437405 43872472 841924689 697357008 196930524 65024045 845369926 439413771 57257878 148682724 637657331 600469662 262145691 295525076 991052613 651809600 720803569 429974503 484772008 259864908 384792270 111972524 910319906 174282313 540041005 229132445 96026081 908293140 490168905 286147223 573604667 303947985 171836531 245493379 714733218 340678305 690636778 385351639 722819770 10096513 942744289 207353030 437938266 38848158 502331707 633844357 838856317 796858449 62835383 985985940 937680736 473615514 222469240 933426196 145574056 440514631 218382689 637601017 376478588 11376370 978248530 121591454 226963922 857846719 296238160 686801711 845558535 468014360 450556294 187493985 122491369 25567 962196580 51583946 534791693 607929096 416784535 894347539 730543457 487471765 870814795 318074826 793852402 375316849 138658302 371585182 448114929 568474878 165834726 260280821 43813607 92988381 474305235 672938610 178983839 777009562 309791474 916373968 102102066 486530929 159836918 756769394 839019495 438073211 272417615 954789977 289163959 558139863 75023496 915444595 221769979 355664344 201378977 944309695 992041163 230523695 581542488 161984326 191265778 675848491 641466108 235458978 619790815 721723999 762215368 7972920 286990295 802061321 645938591 797056076 883836606 978574890 454254662 464160390 511675861 442807389 738727827 935133253 193349270 819492929 488730478 235617323 477347605 343241086 463468419 944503191 805065249 326261378 794979308 250520220 861254271 184910426 12286559 433851853 928718775 816253162 930897746 304150478 30246499 407186080 962122103 423120371 67837231 508167090 929575086 262756145 627573509 790975323 604310795 71756064 707946355 637524624 503795120 352803370 931920950 166300885 460980989 840711903 828406923 427152311 634441619 575779603 476348469 278649146 172388712 992100275 94734435 680074337 589553212 374065228 553944478 893061630 66631290 780569128 727985540 186601304 712962611 961783303 686939696 707073669 646872300 72092277 19731716 99691168 241510793 653568701 570988404 913329382 754108138 929297364 396616440 943569270 87045358 47896772 970421234 849594535 473170452 637167040 906997169 980195704 114974069 778664961 925572794 803731651 622027491 372005448 141261983 760102707 894425500 734730551 168246690 193699301 591635175 971992874 140764487 119685691 531707012 159433333 448642645 387517487 999504822 462421777 804917521 887510492 877527534 536506034 366177462 531367326 341330951 190782676 374886814 965001006 543141591 626203882 914006247 50505193 636000163 828179203 58304649 918210937 229204130 989190401 924253389 204475159 372787719 645383252 922361724 470114276 911066938 99872560 190498896 317820170 10602982 760473874 146578315 407926892 359345499 714192966 291061791 312808858 489487438 472733364 623594770 312328360 931952847 356407051 923292395 999048116 395875644 429684763 306140492 957733919 585746002 332829625 917800320 691990604 154892067 529319223 671334162 940519522 582403955 250283214 806686758 93243076 267277279 524015186 931658537 957399162 781669035 165923904 347202472 525244550 568241033 314121902 545878096 834158944 83477731 352564104 705963068 774627568 570629590 693721491 665378324 361002981 249937388 204729155 827937042 334893143 853977141 477686758 313537374 298997562 87693474 865932706 685834707 38548505 127950912 725639715 798971186 498891038 608721595 819135623 546180717 742016585 852918303 446722138 51738604 524051311 733280469 888769875 896777625 447816377 921262794 276079916 12539209 515476316 319331114 878573313 715174858 888510800 145238803 972724688 507900558 192462958 414210488 163703495 813512576 526542551 61018504 755656050 158565586 744192372 515064255 931713621 301338326 480322208 232614564 962812556 7556730 660396318 374237420 888273478 693439588 209493862 612513539 193901747 64186227 35430083 981589581 33254209 657735313 896932007 930292955 2338244 961800869 522635718 679959405 484505183 538137292 342283645 311920595 262628113 971821514 271454616 180313482 877933509 486905529 678518362 657445887 578024841 433277231 760203028 255519918 772239492 595281477 485642406 271320582 67395619 495768235 863614711 240026687 967701832 598625554 510385567 741620849 909189439 909263546 836805873 444657333 425609282 105702180 451971462 137429991 768468634 673332473 440493988 695288710 824470057 633399280 771024333 680315622 108519792 452316053 43958786 897819033 29960122 7825099 46152102 841980489 338761102 194798299 255561475 545774716 364847579 864160977 767656987 820046653 570340435 478342875 162630113 774025270 719141980 763532358 143689261 8842466 35084166 583493995 597873306 497571953 756844451 847371436 611517652 676794399 941275626 38053201 161842539 163080604 307608922 690423328 893770792 695131021 9130639 651648279 690239820 461679952 242234574 978822850 862037316 734602218 303929071 850362511 897437189 233643936 888600252 553348079 471749415 454453095 748826306 407343977 212477394 268949485 281055329 933129907 506032849 881675666 397349379 59917863 448584759 323080721 40722522 689706240 138807705 523420589 749372816 839838466 896365942 725790199 668012971 896801457 440091467 699369836 361835399 436638 668730649 462695117 592388591 818304751 405481595 411587203 565933386 40952427 427351584 130616368 689674603 890685286 646053831 270794192 880399443 477138009 272854107 305987589 928494543 30327675 113077418 539663860 546563148 137581093 275088788 523981918 355493192 784874842 25102686 439123161 359209891 523754055 9391918 649334958 202093361 220453816 248706946 198783227 154580594 811548629 650296224 433681832 574497198 564510831 253860450 606397199 830585430 98452309 687325981 529079335 664552860 372530640 633522025 929099984 427371802 815579372 335452983 400655218 268864822 89463831 255218380 269177323 667742390 846865227 452325979 657626386 403164133 664322759 163498351 311379448 311658672 205048108 175090545 623750685 208878611 975221897 921852815 319637730 109367454 142744375 278178352 478606621 781498914 849187001 407732833 511933601 127528149 467496026 790170786 444989305 778716625 255460833 429139148 556065735 603851484 391461798 943245931 86209359 389243803 921450530 681674177 87149135 475417264 840875274 823084480 594347819 485827742 509413641 769224686 489089383 648454001 885573446 916738915 171779002 263634586 687479903 48326246 716385841 592136283 733294962 556471636 819379640 955743159 272331714 407277495 218616941 586519839 593927000 227108806 300345083 425356719 936929589 633356367 539492804 213009699 632963454 661719627 444913559 658925308 252327987 760066907 714364775 809099493 478766442 237943966 300073677 501271375 989818221 667460111 865041932 631592076 569695995 639679492 569533787 141226223 806348315 585574129 460407098 37431328 724909508 884239391 646589318 539585604 706339028 539150618 912646196 441185233 111034251 447107119 183872885 465644324 713366330 923545835 957102045 194247383 458232170 412105504 135182372 449962896 604260497 642387723 581314350 530807311 971835582 348411306 472867751 856151327 18450775 548549943 435220781 501682467 774230360 282049811 621156226 242413242 516317448 852594628 71829990 451605308 986668493 476098506 345280465 98592193 437072173 899846725 533054786 313093374 143823587 437433055 93525220 995891839 392093981 474661244 435950225 733579132 125650209 670208438 897478431 346426858 803318149 177181359 518508961 372540115 774395471 271012669 379457978 699182320 124811760 702151466 962601952 612312748 424827901 801993469 358968315 517475418 220600315 269361474 337912614 497656830 300651420 332017306 983138231 941319925 444560624 834733553 358925174 751910515 548310762 849042491 79467698 852243141 422415669 152693484 545250570 370727700 155537850 182915106 655941308 288072554 223651757 60814863 945348082 10759721 547157290 27337794 989375837 677537126 107726062 315643695 497339681 820443041 95362720 6136730 122778547 385742799 150580333 686612332 942072937 1889628 181698628 133762025 68403526 43296717 729056591 953218350 548830261 704843933 497559304 465720638 279592344 230422227 138772341 316515021 608700356 29883032 131013688 679873820 337634992 112462398 206313228 219526055 259692641 939067339 951141849 421772753 574837796 390995443 58254193 716250759 512742056 734301089 916161999 465899684 28879452 220030227 682199579 71002638 491043321 543454020 271859284 746723289 358110040 413843564 526094762 425989444 760919975 553493335 474140921 637157662 11362095 438245632 956024165 292931136 813878439 481356301 615290652 774588218 297135604 766689546 270164075 737352668 47644958 432907082 74227181 897187481 180943213 645655666 765109035 934865175 695405441 142072915 269421585 62052795 255139887 813130986 225669866 937591149 24824041 758375312 307598414 362857491 808228868 263177828 600121251 448885201 788372940 473041784 871351218 172767944 798297216 80129575 453139562 179507507 840342438 286863275 599455601 131818270 51044719 560820121 733191164 350511795 94837724 662084132 513109825 868021038 374671520 935199641 726077607 533185372 670410716 389968612 290018730 571599948 934567160 276401147 229798145 792300404 779872017 895040217 812349860 97409345 888186022 841965886 969998101 794385955 366271729 537843172 574481749 652475716 813790014 464308920 522285385 979841484 586508499 199687575 721051662 284625528 387978468 703908698 872282819 358290955 471369618 670258663 330683586 539577310 28824647 787316716 83584317 976384484 583706910 51530070 947917589 164040970 303715103 716809781 544712068 711138172 199115030 299596003 725929547 348506129 591662704 520901887 755444585 969141038 775728351 895170169 103342110 240749554 119660774 620293461 589124288 578994617 103007170 285155935 796195778 981654639 526052411 669255196 815162895 574431704 107065868 606060795 733926910 885677193 205909706 918158092 858980586 458132579 565506321 186108759 931073317 965345112 701185551 514221898 429937851 506388044 423055992 653255918 201515858 53953110 709692566 95529117 3523316 348645866 286200333 381076826 371603253 100841977 34379302 772270550 729332506 281132556 258450727 773284230 440975915 227332742 710562580 676688856 357995187 792931661 812054658 500709119 390040864 816548584 510837049 10605267 342381237 969856833 670710282 690523892 302159136 985183223 54881255 734064966 49526459 701832461 607717984 327153825 640768972 588209667 716497097 687285651 642477414 310172410 696038234 108755931 92807146 132243208 874059679 973931310 801474839 48338217 32255596 180239691 555056743 202300045 627255430 339328909 796431394 895757010 631327517 969833876 226661800 653983084 494945502 840858250 465462027 586674536 467137129 701362452 554271488 227760762 980856979 933934255 12715100 26483181 353757029 39932584 712164774 921021205 922866141 719245718 452007390 321853733 180046191 295398185 57547692 243631486 28102158 274753687 312512370 679875002 418575295 744201691 991359706 449261248 732355090 767999695 756764824 135737828 354543702 379524426 31538645 289104909 907007309 913205369 222588851 870344550 268574896 340262771 549179083 12649400 813674315 782659033 726848582 447383445 159191005 103188748 578333891 879383896 946722473 27610262 971443122 247440481 71090132 97615007 175440781 156149165 408051026 475808390 818801424 504863107 727422120 859616331 349000934 145333067 7674097 725507607 550885247 377215249 81555930 811525262 976474398 165057109 399033030 889551887 986458723 202037727 69573722 645882397 638406930 458948636 146180320 983337060 984295387 797754032 696003100 542813306 280528616 873293685 514852157 829391436 200577105 247644447 56226989 617678728 819832215 800026065 643708432 472083684 487881212 714097871 385735592 227019582 271856704 55924163 179218823 877562360 361455709 172113724 882921807 581649395 881415532 678072857 674500599 823055051 270790763 473825767 314891235 229560906 969610739 880380685 982161117 201120470 320978526 879008516 974162275 878975939 836061036 843748105 82322629 652460405 639405895 775946200 445690442 448894282 530301084 363832446 448519193 778392993 810797032 882389210 87364996 497260096 390568108 915204516 531075623 88222523 981138956 690559230 166130476 106412156 896352391 547569849 655899411 89038625 902435253 532754761 668064115 568694616 758129916 797584429 631751306 54137756 424659692 93485342 959952737 897493660 226793130 805543641 888991686 393601168 739972278 25500646 731578945 814670085 559564091 215927576 625553712 356890136 779906950 33006480 956555375 773754804 422299325 333008674 667848462 564752861 286006143 439115639 481766584 37732606 638268342 838887279 680290311 90203121 707203049 615464514 186985021 331785483 980161927 555718507 135136945 494032895 299724357 345259503 210652908 702291312 461769404 599456579 106251880 699017133 72067329 323239271 837091736 990134777 220024776 849318133 32780957 508825870 475908831 660201384 338386201 707098479 642692867 154642932 778223251 913008187 9070210 612057707 954289178 496716880 668484470 617309770 25606150 683922515 837281640 143962213 65738519 793171391 989986540 50480474 271985827 750332369 167233011 135326918 671367187 389681957 418195690 23424457 118995447 360870672 178604683 986474909 151805094 472089297 835200635 38015903 901391612 212435823 481281866 635926164 722524837 13174350 51715835 478290282 505984638 906545226 817426561 646793045 791275249 31357709 3232281 125159882 140790035 408826687 41866454 564990624 922814072 281774093 235670624 245288169 328589594 835077499 291869550 371309450 727950213 182654626 884043595 854915693 687001549 463145869 144750853 709061465 315055878 730731102 982207785 415021083 280438923 324817199 121732029 169232438 290619082 819509172 458935252 723237597 817464031 614460402 728867329 522387346 809347729 787100753 169383749 555619158 533014578 130393922 953606479 510259891 741027025 537909915 19293381 762139683 480039310 224711122 207796620 146466967 135589940 590668035 983085569 876937117 247376864 553823053 717249873 248667748 933400728 449833338 299731860 119542306 402176006 506591708 344378131 341047792 107040640 205833531 647888510 78464322 507211438 102283149 682087546 834101258 627079466 993050970 611318192 211790390 324826412 693769341 274362406 209868915 916860342 789370001 415875089 360265299 626118889 251926200 911173649 997670125 624014413 803488429 491109117 717975443 562555474 367214746 606023253 646890205 709626738 255445499 456835429 701908772 498419547 910362288 788094362 860203511 721524366 477514933 655488818 341815418 167676577 582851191 690920759 952533235 598094148 140576884 814346819 572532230 402315539 381791836 280831251 867249256 418654577 105277011 358045484 481149292 707167746 768547108 213259445 61666706 130023677 884863449 650597262 697831135 706325085 886758586 364321493 633257406 173260801 293555231 126534674 693682514 534203612 6012133 791910774 502302599 315001542 533534850 146082121 349185090 606441296 235886234 512515853 132516582 175741199 927581259 737615960 540572034 213516197 514404428 669026026 877681697 564397140 78532539 733694288 396782831 356386772 712656811 774708995 44974187 201355622 525666611 431947867 875865237 64556350 343879020 187512908 919660762 31299277 520824975 956957607 951180723 437137369 32946817 407663173 831795631 278766644 310526715 300533742 643905490 205801834 775217329 947096719 807445687 636191437 518065927 389124869 509636125 711936505 661780933 332009619 684580060 988074252 561606471 181891021 784008437 861992544 519471130 116408651 790404413 447370274 322651555 855911674 681364834 813725264 54842202 223979665 797190595 97314864 431749011 314753358 535210916 33780 366585515 286756845 162104658 612236603 354207993 772742211 642553527 888966623 565646392 738724303 743676110 118819075 624429360 858737009 16361191 365238970 403886930 201371472 982178052 853338417 219727337 223630943 11477031 43901991 376078921 623708393 302936552 86138281 462271984 106897398 988065831 690058524 816895747 131116349 249853286 539796052 151006762 932636743 391853475 139303466 675663921 889666860 327737279 997371504 987987040 203814975 495104969 391482646 653484361 503058216 621021815 494880005 936461767 335989575 590621670 655421467 902138374 620201340 484615878 364387527 227378533 697379989 889234583 806590995 838941251 697102494 302098739 643045232 102340878 319562127 179557774 28316759 230179370 189932925 365794662 582956401 846027169 413842021 659070490 31887095 347360119 633971886 812401312 296495730 161189626 796578308 739725775 583767975 877360530 156006355 114526605 245605494 130281456 1075247 365400492 852333701 496464834 907186035 916934832 799682474 9038219 984326973 893285464 316716493 395275162 47347914 927096284 266263615 146620418 901242184 197870886 79877517 659182340 594168812 789066802 4116724 323866 194405318 85635758 500616630 546176867 619666494 893256637 889796025 303519642 166628631 201204999 384655772 985749872 858401370 374437731 852198897 641947877 285890576 400299795 694065384 647363275 825333215 926336233 458579745 440091593 65247917 367827287 146688721 69952377 793165673 55047045 805019105 310632382 64046002 480138189 829486605 194440956 534391776 353469833 336117364 803687327 168833660 563355891 422919470 185748763 493745898 830158891 42064685 977744488 813838074 798252786 193833824 221522707 591741917 415115801 527108587 726940409 879810849 802165047 36858274 389897191 49497901 121149364 70813151 887207668 719405740 586651352 623327943 544227139 934347503 994476592 11666705 327724314 362371115 23232613 243141475 872836049 174591179 55220179 843245436 418772617 302753749 214814860 422883445 334929879 869244596 548337420 511585749 565107858 177890146 198820123 478709842 442975841 691255580 18833155 349714835 11433095 2161438 656081107 450305107 368547097 115666748 601267399 405103572 227846269 819375540 639838402 386815930 992430321 250300120 307794450 404230757 310875811 191774812 530910413 409304271 327409451 483499941 226894067 447946324 438030400 642642416 149087645 669272417 140095913 296694398 55189388 119744961 474224612 714975528 889839792 919430709 549485551 562091003 302925503 52497326 351441902 375814197 616104219 996317405 510827500 363943415 407275572 678915213 842863128 952538545 176705065 121142813 992449263 97544244 139781830 851299610 361488421 984366400 84804198 370042851 225314231 304007460 507980560 92305855 654768495 978474944 551384356 698040611 436914230 237499459 68463805 972950155 120127215 570698565 812785153 725770691 313680956 463603569 523932073 235479072 64937327 402608904 334736560 878578948 226134206 843722567 463407974 430775167 39722695 603700512 422300496 322896859 688042096 346260180 361067188 472196566 225882179 578428008 428821684 447500875 195120147 188295989 628637400 735854469 805595482 922122632 779817748 552856856 640633163 906368146 958617986 574722707 188803565 814684050 667811320 413338500 973082867 588479701 38753535 300553279 355735042 759584931 325888174 441315462 39949133 2820210 775975677 631825223 59586346 685296027 880854629 109934450 747898387 520583825 558993220 325119357 224919591 248094552 560431189 89545649 85402546 948826392 229327683 388735840 269742969 6640888 570275807 746054025 171014740 67378986 37219041 189122869 554698282 458576276 459754502 938641689 845016251 674886065 556547103 166678781 118468796 865066743 944593295 954659805 732208478 20082563 291319721 546913434 209261487 181185650 442721200 550910051 94493479 614352196 81627571 144159682 158441057 215856828 458519731 956443867 512292440 894471434 805070651 613853032 970081627 162555407 506660115 923126174 785619629 40933537 715217422 535879506 147596647 4554964 934882334 500425433 375669352 821846394 91850890 128069264 167218822 681557323 46450503 129445946 463089150 340638771 511419843 928235843 785276830 968544439 773159641 893979048 743862201 152585626 432762058 456150875 311117892 260791923 2733225 629397881 735543075 713614132 744398719 438525413 91433123 186932080 378448060 40967407 73266737 420378584 406101787 113131372 839833370 158893764 934776238 521332200 714780041 655062845 683807084 108263583 933946694 431722274 783163627 198447067 834070757 227763636 332790139 245676800 288187697 709545119 343217397 231430506 548882722 787496741 414005615 424113030 274799173 960292032 42228674 368295075 210762678 528805556 564217035 354630475 3932908 344014390 50116095 834127342 353472206 553197307 262795865 912286470 273908130 107278177 962363029 112230643 758031127 520052223 684001944 21181149 818435484 802990085 520189153 800958361 329424679 794715242 272127193 828999977 381110073 244846494 500320891 259020922 656224493 608213127 59765766 781008779 848956354 85535118 252560872 691973362 8122798 863243087 572413611 800218278 195676514 313045736 944110143 930741908 478598883 238447035 352523251 556231649 739767841 902753200 450785020 612196304 747175912 333810663 753333480 618440018 66618891 589766599 518024803 923232882 23233645 113864635 985110543 349331205 979734706 386343538 532170632 905722800 884241898 806945057 376111908 44801521 878348207 259510685 62528513 331794854 411842066 309428419 819112527 219143572 367510085 612825547 323126608 716365433 511653255 554013122 364790196 529593736 808623232 555808227 399383967 357001103 940113537 436441436 728233191 534516041 389073029 546687077 197817025 387367435 868617604 744440518 197574287 424842752 441582758 356175762 298990345 892732654 30946034 403447979 96640136 160418573 847713357 420938082 658352923 121272766 638942800 662360646 341218208 434797008 538592758 66859083 319574682 710976124 598473540 220195768 708472980 621939578 870949159 571644187 920432091 614760887 613826179 781714628 515477530 838713456 732164107 666904361 935521721 989985412 117451473 923608076 432087223 798925111 652385077 66274507 775397844 878315436 252485008 366234822 248462294 930555607 618787157 80010674 128104550 964116000 899150933 706347101 109278188 443529285 243951003 891654080 582124277 306975326 744860842 651255386 500372272 897890005 455797771 347019388 901546932 454303655 184747407 21785503 767687904 128312037 245501966 803278055 558034396 73052842 633323522 755259585 616024390 112126197 726298894 802125206 817359245 881820611 61018305 94790192 488421868 402188447 599526292 276128222 123432330 220906932 147865211 761920919 983150340 974243050 917820116 626399173 568326595 525160718 698585850 936685301 387089449 370332736 548320932 994167926 576565758 299294828 684472910 364576847 660946374 953907867 706027416 408870918 807024353 473935935 529120697 487803960 338803986 542069074 59355756 653862104 104704441 56268462 801622276 736940444 908812468 988901803 351162000 778698243 839122245 430206389 420774506 202003583 820841804 521183704 517265765 64638420 855554218 291034002 344141212 170875811 833383690 974959634 897525552 89522390 7477998 942554918 527503683 400416486 170888116 206263829 359623543 354278820 613127564 50921340 251770168 678802178 212133597 780814044 404981144 368492589 189460076 62890097 75809699 13870275 415988741 475106844 123416566 891534693 42826943 332883212 900431062 568611443 728533749 875061538 6162882 341296771 281909467 39019924 444640398 603951612 396006847 851212776 856278580 519590527 55343574 950071564 453449446 483259788 120204047 162737330 808819543 961061612 684367085 473290231 994740707 317458339 426059983 462931016 69381137 721328985 51359558 388555199 261077765 618137129 315477940 99149464 562689119 267062223 564108450 90335692 523414199 498029199 870781638 613997515 596179830 657186350 710122698 399872155 327114797 159757958 351952176 566564459 127765798 363406088 777461891 124425381 475476645 654542864 755045802 151174883 608259229 552162702 367473454 504835636 141246708 360228357 333412672 408878606 71303033 6106398 305778369 714378224 108451921 409402214 476105278 926394226 886851752 951089812 954852482 239918353 133386546 577767300 808807339 154118186 627431850 870280616 174687475 514208991 107015804 134407374 610037858 793219506 619123116 504044205 251886816 736186575 359466247 268577257 131192679 297217061 593020137 724830042 729709214 399013602 538041720 721165 626066833 141514045 419579110 205293037 255460799 903895970 521312792 200425330 409545041 879310828 404377628 480013272 939858480 894829720 450587555 13902454 308050394 949635453 116047361 877750782 171249779 101190162 499606400 376860807 952223433 313967870 392872532 994315795 264981867 974547867 230111450 523997253 110033572 66364628 452104425 149084550 72814812 945677950 154011503 461190058 966780597 588874302 55692774 673138051 658868103 760865874 656842658 750314245 37424977 570138604 708612976 200133162 873330772 52691885 140081366 506024452 684392650 596376861 633070901 56784991 997510851 859925126 382980821 667646452 20919520 252409598 418749183 43782776 324971373 18540553 458826186 367613400 809847897 86298179 506424731 439731190 169888349 875498227 852780217 914929016 731953171 372713821 717222526 832823808 778442149 347294444 133543135 837754482 310007676 713637385 782961764 359733522 268738322 78635999 4432908 231386964 532055503 346979618 938834484 864239960 762706390 659943924 381198627 376936503 548029493 960447402 947801043 935812580 852610200 156361488 596815016 310008390 839926767 984490874 144752123 449112890 603988389 73148154 824938097 199445350 64554305 807417917 155829421 676161676 761281774 744635960 115560731 807084732 961079127 605268212 839656951 518586590 387563499 951834711 832982349 84513384 823747950 930666854 909951445 912635389 387079113 92763694 528577267 28686499 189062660 382560211 706690587 125491554 913834954 614473268 630997624 136578304 442981117 680869479 395575041 271172765 443085091 887260047 4446413 197575548 277818423 422605921 561296636 480290074 161836098 682956378 48474961 129738594 276661370 734433079 816235449 945910643 809876971 236281602 542672063 37457158 643870338 808049855 336670791 26787808 20876347 997633133 126849016 918379831 606803670 472560594 341892932 629363174 978733480 581109603 755009430 412740624 618705639 371937963 681835930 262847475 810527812 630292072 529608767 444988974 821889121 908975808 506758293 573178590 582144365 84425263 879215732 457668297 651821747 544253929 993547644 199255761 141939846 380308774 545907802 150066092 409936395 977378311 828507879 658936085 866614720 954678173 101597510 546423299 17195297 392499566 219602854 82198183 182453511 721381279 421819587 207740744 234896844 577951848 67876913 28856122 680354456 404794487 340152414 730778193 296967502 320039684 703936279 443360669 495859422 941794652 246229812 649577781 708080661 979913121 474978695 209198943 969108216 461916141 887951358 971189773 380649802 174531958 661475450 471717539 251180224 774200517 41883369 977790551 167793846 740169347 95899211 536577939 238163005 326406566 482536403 58047434 436136517 596991241 384103943 284937891 432628787 797695434 793921875 634653255 703982224 856685811 999107909 893915618 519345594 543417783 736126852 785029354 918028687 711243048 934117918 794048874 449576570 720524749 927798606 107402543 606614697 379880339 343012348 954311715 842120898 302799688 171737974 243953299 627901979 420395952 133980201 420074185 552556364 187079922 893708499 653971570 790457204 853117693 528690968 398262885 315745800 816444261 641679319 263669455 267978580 912148505 184565685 545611568 600867145 577144853 490340397 288852224 704224204 252782650 509248106 658867530 118163517 335297280 186942172 126927986 322861541 886504967 624601824 36138846 965952855 47465858 46510534 77054460 607203483 36525099 854529140 581194015 456105146 255463609 150378671 347656110 714667152 495781567 65995547 613949514 41702822 584758700 519099253 321462765 314470116 567829498 199677834 489139705 559473723 606418569 408623561 174669978 348150722 256696376 159000165 310248186 744865874 374391006 309458776 746301890 535942696 417971792 954650672 193829061 532402439 367364968 286865807 304385315 616873951 279252780 785608129 621090986 838804201 968349706 276535223 295478442 197281587 234366382 342562209 584037352 798895254 895164962 136652975 725062889 432642945 633575873 752619301 388275721 578467978 623437297 408318637 120662662 833762318 485356619 352392423 859488484 166555106 549660219 244712917 240770076 188811989 226136625 54100963 675919870 932250015 710980655 97073720 200612726 302933299 408544847 99470513 950400245 645373078 807197572 690407751 186903626 123860505 755934788 684279883 868243815 91859355 352009330 447549776 34718122 420162986 334083301 602228505 383552517 925746298 793440844 689019400 701689827 499001318 147161328 96617875 474562701 870004737 356473438 296871975 662361209 304433224 118106593 890590798 825921231 665508775 813445492 956694776 326603711 335042045 740611891 756979085 6718850 458291373 457915824 316555458 776746364 977093800 715773069 351707146 886707492 809947383 69976535 526902314 246291284 155457712 456482422 321200354 138838531 637778853 880735506 501126701 826618871 835216159 479633911 242854399 438446277 165106617 676270536 506473105 759369515 87539956 850123560 6406112 947379072 465067104 648213819 410510788 315765562 680167887 426553217 829700609 361601960 986465008 95534219 80382543 623459642 229081351 191519479 674817415 755118458 316769592 151143496 611488852 239895105 713634035 969092428 597074836 959071562 981444333 911068287 42546623 389739943 370210554 472403282 716808455 676337673 348348843 528506333 925398652 32463968 921513026 868300012 823580083 165074696 393921164 598787952 176751980 572552540 622068820 854547739 663858952 510593508 963156455 678903399 695500657 118600795 669378934 222425174 501548440 420596618 928996481 445158549 26608278 670471263 774886644 863872081 758614392 11206127 990707701 55974105 88550358 777235992 844262166 220679302 840554461 721372690 162387909 693240748 662717455 629514058 542811633 660895568 540315902 313570068 295671930 504758772 680445890 831653464 897700154 115614936 136865526 777320090 734103053 147160165 55476519 706392437 518240099 73414352 289504030 355876146 948457791 460067329 866181463 901941980 953162035 702246965 715182065 501488769 852430305 515582543 68554076 86573070 912301054 737747335 528316038 923891343 704066408 750367935 739988117 124963216 942406442 997626263 792621945 698619606 247563317 160040831 395701285 823344730 309880295 715320368 49350808 590612385 493074899 305432942 686051710 880373952 636738415 184881246 862174877 209521832 749546420 535986854 305524928 215982492 823477897 275541057 633571837 280266363 42930908 603546075 461953845 546961581 847776989 542033671 35238157 939237545 145588978 704785116 865477702 96037751 702977872 137397241 632870804 619339424 404413664 997021533 787209416 34654303 197673221 269985138 261695941 527037148 632918317 451469901 948361550 296434321 365334172 948346927 506413327 728661531 788211141 477503360 631455564 737754134 470208122 234069744 773016489 394145157 326643348 507474682 7351087 148522552 119429704 265637968 6461467 584140670 8350819 289516942 342658308 117244627 353361004 960037500 587305048 224601927 868095843 342175968 579477200 552738031 415836815 169664349 965033270 722496210 609752520 534771787 135417356 925885841 793059201 899884015 629238291 97013448 570618768 286982383 125238614 811522597 150781294 105275322 841006492 239822385 883711067 760812866 331461345 347817710 723729544 842250793 446528150 915885785 367856116 878720511 919169735 902742201 42350357 507522027 630616085 7828840 688594748 208260946 123817740 844162138 22805360 500741271 898913337 74695323 451888465 189476341 939702189 68494721 291944477 128269030 493969179 967003262 847425287 281760762 671982329 371713116 789983383 757294864 487443919 262772778 315840364 219223743 918266902 682320693 23971054 428189417 172701923 459004332 717895332 836782721 38613769 155342559 525640965 604880099 16070359 251668525 836349101 352141769 973518961 976653970 375555469 103896993 803498168 66046389 979886849 25657244 435238060 128788298 401075523 245840028 967268355 734591079 620068269 570659659 509419594 249529295 938557426 361075988 863197019 374741472 495933382 677731437 54314071 130470090 745980428 860255830 865925775 693485508 8105393 711753201 14038586 24915906 677264051 136925567 632067097 73505638 752259810 535283286 323304767 672255570 326755319 566574039 13725941 18251551 429131244 835084436 385627590 215186437 476888472 151586408 417945191 324119386 510160275 610768147 458502902 736055822 110854131 294105166 853180626 497633440 659504522 591826777 126697527 47588972 220745471 456367362 4338955 990464833 531775823 431523787 179561182 425736810 922674611 591680103 125970677 218483627 213569424 428356203 603139080 500419566 379506394 682169831 706023335 664345512 906470609 42126093 116886766 196985635 330595303 949637075 16334714 312396660 279812487 384057507 554458654 882965174 252648881 799664558 952018711 50472348 589177367 418345665 152443575 6905922 728334435 83074253 911421732 537978862 778905925 796432993 635566769 958600783 110417415 419087278 654523485 454518417 774652161 464528238 479003130 292739954 394310796 351818227 570688541 209080103 994765140 340592442 711822823 392160543 614537695 933645748 6749786 10593182 777180456 80394675 412399503 941415801 588558272 580472395 196096259 957274609 674694406 672871535 658604662 663586921 699384769 598889249 409642017 367212523 776267158 432832150 691823173 764899560 715523487 249498681 325350457 575559286 653084121 368194590 62245638 215525703 552827424 51972412 52793584 382889951 424101937 777422506 559018270 284790937 659653013 945525011 894859516 746750796 903778839 306991407 224613700 379468812 913197511 674277649 247994753 407441485 807223384 978220915 325352843 437804625 687544873 404389490 917180383 798269589 526738896 698421283 760600979 271347677 145038575 130149319 891064927 297360799 861137625 281135114 982664333 322922846 513836367 85905443 65365256 391363981 504663409 756092680 723455258 564447858 909188351 56691219 625014160 172027457 938195789 427843907 167390432 471195108 173031481 745388658 860293772 690115681 597097080 795017279 426906713 520683001 565187190 551816387 229768634 546792134 921792907 660823503 729354024 784439741 598838758 788306307 437948462 690349171 413792184 650043385 998259037 26771357 217736175 214517561 456272180 784179766 398055710 424454876 59338254 298985464 680263237 341521973 230653746 803646459 706383895 887318106 785999104 887536432 158758110 694275521 30750609 506100731 410285445 293598115 539402881 898448778 723876273 431102248 803031742 153721161 790313320 918223626 561080487 524358684 941297449 211489569 993583921 447018630 354534962 912083414 473015228 373265341 307518958 358794453 168203856 84287156 664370128 452952112 839344654 785837897 936648649 317020041 916115329 542353676 525668447 595607903 699216150 986174317 96535956 540519296 624982236 321608804 280112522 149721983 188535667 375606216 316076455 246770752 91748851 693890607 204805500 910176223 237520546 571266497 817637512 863846384 777948097 856765525 831433843 326343180 708924025 793060069 914731686 463710435 53125631 17709984 712227985 654764949 285324327 757781132 215765946 165707396 509288802 647225425 245638463 190275452 566147115 275457192 269302438 420658893 364608190 272808850 467513614 84175075 328655865 246459561 993346209 800352158 402562000 751517974 594017980 446022652 341720806 879133705 323304099 996176099 103706406 667360695 752732539 450767158 967134195 848261422 359363735 41374814 554977096 69356787 899973711 106644213 43498709 422678280 885171073 110616881 354401543 718339647 67939556 892743700 842367087 983183666 178958481 974343105 223315522 276551890 967118554 819250905 615024191 117584619 696738557 344322773 558149497 837162065 798689804 966022208 910849675 986326048 481827294 142832080 125351735 55477565 79554448 688718650 115467467 848721729 477374069 36843239 711139958 677017820 87855032 723887052 982333739 984190153 893760865 481324572 842365820 356591700 594821956 930787582 123676239 732181581 459810976 158345411 586546280 171843191 64489163 299696852 563546032 760415198 315058229 756986545 612302363 28357643 501448564 151457077 29680358 806634204 928207554 634037828 804094068 557650795 53348682 528624733 821887925 574123174 953453956 544247276 296456737 126354719 766527880 347327020 901285790 186883301 106937528 647638914 501801982 670192214 724440861 810633778 216737675 947762978 489066594 305876381 918679437 862616970 377349954 791736305 836349441 136734373 467914083 592943751 875224921 700392777 226524669 887722963 598777288 559421078 382179280 831561597 843184133 987003074 414927412 761388143 174696262 647246190 122156257 857579759 160151826 48873741 95031996 561232355 308924981 823337259 205949454 911517475 716250673 297127277 872124316 584484394 553486047 711481372 113003706 409772965 364545825 100114557 376123613 79769210 281824561 174305277 940062540 547721779 588595992 200739066 755233056 644962578 170551773 858091776 784429606 530776359 211915217 229961992 563348023 558728781 774012228 782295702 8440590 323126672 24019283 692542518 257228646 540193395 572792357 621279348 494515000 960203287 483325011 239479492 336572174 838266057 39922448 791569747 44101847 182707852 461520182 316629440 596420423 807182115 104537010 804705105 598725968 80797056 908977946 454965374 512965075 474933143 906513671 90634379 134667394 116453116 224676741 669239428 792748598 940864113 164316646 69026405 287225360 866635578 745876733 389235351 459587091 365887089 763082288 556412584 584385554 239663508 814193357 735014558 205177703 765282367 121674933 372188494 662550173 384167481 557152271 24336302 489757360 199120483 619105439 294539175 58087685 671668933 192176639 574917825 259519397 744108968 663282346 966196495 694326014 696838077 31309706 118643159 757851156 446546382 722453214 267412736 767369579 872850226 652435746 547033517 602094943 110885463 846195227 565361209 567672105 50647538 276961636 699991310 387886490 351563715 869446864 907679261 683876111 227018721 779751525 281238614 435511817 405426906 879960553 618314712 980599056 338075769 459002966 704552753 479735838 869141228 905159181 113292026 16676418 927538734 899305951 683011973 191137498 149705705 755822741 268662817 926808098 951683926 929893578 870796659 292949782 446311681 643307821 482670092 21331451 695191490 547554330 791529941 404228403 790175081 59068953 757619441 582554574 465612309 319589006 412266427 895550780 120063583 51818121 651005114 34946044 81043391 774979136 547506395 685668137 898607642 804597751 148951197 744380927 654670276 268313081 966551200 641495770 134195987 438606381 661598970 246841507 593774021 448824443 618904577 120056572 903862664 624672533 351481115 143189281 275351957 453289379 852255045 337507139 567932677 724565581 902942907 253579412 337848170 877359935 609204942 801623047 567876860 544492804 71367870 795176304 986817004 164925923 849820736 365283402 365094400 804109369 158605388 40337954 811078312 424288047 331243671 388038973 92253983 946841394 869224908 675822397 296807041 495090928 830306526 776765758 415922897 229379277 11158267 622946036 401952175 501167271 806126575 119678180 727747219 380701778 557056994 782018957 643845629 712651670 78441850 610566937 145113045 35488968 982337404 164451784 470812426 411345647 593011737 651053155 458250792 11012978 886999416 635636241 380361354 503541793 162482919 716264972 201199972 546765862 85472102 301879213 277698779 334670400 404722422 940144793 579223518 892771412 894121057 698179704 488372170 863023597 600789517 968452923 737751815 317172522 908366324 908531858 886682722 971876677 829959226 421345726 823112937 840237838 189002583 485927973 62174243 129344118 225666554 677404713 334675124 798102433 139713401 311424232 512440539 948402236 149046690 572691612 780636227 667974832 12811755 337908121 873878455 218872088 639177103 568728236 142709861 233156943 909893217 746634570 397004723 151602707 709129628 383402226 899868625 643370975 875817773 204252120 189527699 590423432 405723567 535254092 12320290 175414560 38900962 866385615 255236082 32169352 359835169 577109551 791998936 636242188 860854674 621961429 678611687 765357818 36687448 413523572 526249758 491843924 7386807 91833909 386925879 373984830 278426419 300947093 888756419 215989643 904740706 168539734 490046689 184659681 597731669 903673827 563416832 70773426 871920558 838537006 983784107 378748012 638119686 317306330 876828610 290748625 452439058 556544906 769117485 65298257 89821352 515368857 918768754 730706488 764224720 588023714 579781252 814303711 237287174 286851171 56868292 123757114 255690435 116619320 17482593 266635748 218793052 403168923 956410818 454116286 373809326 809508312 218426355 187367535 171927709 996704754 473132340 10542889 545709771 237178642 400853671 288289435 962166081 375681587 144176924 348890685 47283230 137536237 578017536 123255757 640100206 712422571 937988027 193799723 675255371 225736050 933621826 241755628 46065671 547569942 249621576 558048968 284921473 895985902 19128973 852722799 716913631 69055858 59373561 292569139 555248509 610441342 547077163 213204707 918669892 720671898 266454861 624331929 36592293 483327919 35464134 325914543 156264132 802163054 70189817 22679433 505264082 919015965 926014179 706734365 294000496 237694804 679073318 710915289 729976767 781965686 146511507 130331289 398842885 62934382 153824250 658462340 336936046 148085929 154169781 145228886 285605833 288463750 856654065 479627067 916135084 978350066 375120847 47352448 428860582 101889569 171565544 254854497 902412625 673060874 219621575 895270339 513313543 452842886 631867391 825104434 105995505 865600417 219222859 820195912 953683942 108335278 654829557 155561272 670850484 848181406 478132524 283882099 843584436 300133949 274352193 26115032 310844287 974453485 109627060 694885069 768776772 745788205 501359341 758720676 49021766 804537658 713940564 727647082 830651463 276290602 754450250 786478638 712160858 995107196 754231315 366307103 234283184 122100996 76991430 309792853 938641268 515298459 786218867 656225283 182948871 549403282 596736861 884294222 490566486 556376238 400487540 296702807 451252708 467582320 11789315 81672314 753772615 759201947 722901982 574411803 251483274 44389616 156934680 146587514 185046774 987757254 974046010 968521750 722425997 323874002 223619577 396399760 315622551 967409860 48575560 738756473 937388276 773900597 32081815 552042281 127231191 926960442 479095250 391154024 185193749 946783689 63056863 163586918 629166008 468632652 186325747 871699237 404435255 134194638 988791854 981822958 179358485 190528263 617525564 561932561 674237951 919871214 467530800 71817749 19891589 565364706 711643720 914219745 867917274 882423921 324115885 185851519 848168445 374702361 100439975 132112122 99413190 993014225 108016261 466174839 396348259 262727186 581312164 577615737 800442200 845313816 55878651 690669769 662720476 573523163 752144696 676758708 270939319 921466361 722113928 930284329 375087779 952913305 449967852 476828138 944092902 379021591 910416613 722000628 763982548 277787557 865223886 750079679 544920613 268408688 723058616 347959780 459633577 520526920 378399862 113161083 825064359 634865776 599149147 953950656 895116844 352334472 645677237 689632540 473438989 399046925 66754451 230753166 993323584 874163880 142814533 189991458 527454786 690337649 780317633 840496103 623993938 206077509 133881622 453510835 215530005 399597197 995928582 174476988 558953093 955392160 262470424 19987871 369248103 337775049 574365718 227222125 314776508 413245801 3638551 551017971 337903288 672378761 424402309 537132700 16797449 652843204 814360607 339406180 910240393 384636394 120040924 99750523 631816767 208230337 66025424 995333644 681211661 717183809 680683107 943502708 263481484 819867716 765682343 371203586 231659056 198521666 273274734 843897758 553345098 968599194 248320608 525471283 707444683 546878913 351387240 538207444 121380527 689304107 555136571 366586570 281597593 52872424 546275918 428903450 612904268 90884646 704355175 571448710 63896115 684039188 279906656 362194149 437502032 78172588 250152999 348762427 390044395 997729384 166241304 92621688 481131139 186244559 691335873 808121618 587441917 972226203 947049366 109388579 210178991 973879214 909134397 629501851 901212480 110151605 16420887 632117509 619368996 892671101 804241438 774213250 754107720 286111946 813187182 867087925 177507330 33137867 55594222 209922607 958112940 212310020 798809156 479526005 864660451 847514253 372061425 744632003 742745983 299987352 668902370 747873818 661464491 152805805 840843304 628688290 12051675 231355891 112123774 20651152 713562094 748845593 782279518 205423187 348844992 545177924 275864435 694313112 424965397 250914315 716850654 78116819 420699174 912200572 202384436 274301442 178469678 371120724 874794315 194077669 333001238 931455502 400909369 234898339 45447595 228095630 890163536 703430535 309076472 303195491 489202286 218030667 516662301 601947656 497069016 601287547 782883882 309194681 69940108 905036310 184686425 300654554 214781075 112713204 107098193 848227154 681139686 921234956 284968738 443371861 323624440 740834938 115712648 812404894 520263828 928101171 597092461 935728317 403775583 18976793 395893504 316555989 262289876 453395198 93052556 364604867 795966995 342342326 98038263 951423593 347392002 335712530 668249332 536899540 366187451 544711582 895136609 538079632 721100813 684026120 514972279 165127536 133806955 199745694 761077976 656884448 350104230 878762280 138174416 769020278 697849273 846040567 580170385 377107087 15178883 415255640 341212060 982284415 271110360 635586239 350065813 203373760 521920527 993380605 812357567 631212172 828417871 420782844 816555580 513472480 928382600 935307206 44416887 674298898 360481106 818341066 306089130 270964908 455907096 645336108 894679874 611827810 615019059 755897069 503013441 858688906 696911044 141466432 588564968 671553596 935787966 706344369 109904378 823924616 133500062 378898942 580455957 401670475 848032769 204193031 845596042 26156600 895293816 905502631 937223721 631964251 378921467 914957976 645785017 501795227 139911837 704447870 294458718 991527429 983716927 368144558 109730102 701829565 844487209 451510687 104565812 618194296 273625060 920788406 844742218 645902330 713118873 5680564 880956825 795071093 700186528 650018199 725971419 916501266 987682889 489958114 973696235 890904189 919999800 656438067 758018114 647312768 146863128 430141395 113907357 386379769 387416920 43906207 752643515 338049300 580205763 486254883 671973955 893229270 181820731 900611857 242607430 418976056 659633437 60316106 679688730 825119343 427994213 771669532 70633758 546693994 431831557 817953993 317075264 924461325 895164070 448065005 871520264 973906409 548074729 177865960 611871003 299395828 427558607 67157349 919845971 890984883 419433706 198061256 951220266 42055 618682307 909808017 676453261 617593274 962322750 429669038 578765906 724787468 599015252 762241822 352752455 90075122 188341531 475162320 3989567 238168112 297683181 840861507 75248255 770037444 444196042 110861937 452698991 686233416 103483152 579615356 41114645 524409035 214045057 847862730 5515912 651813177 27172677 248039101 968378908 153751420 388406437 354232391 664578340 760117430 114849297 710313936 164881847 800144635 289641206 152057284 277285015 746103624 577952722 859395039 475277543 909830796 99222100 251529506 905734471 265065431 332285415 33457651 359557834 981064458 239656927 133895946 773007517 204167746 905902590 300045030 973234392 854314170 215761762 336820138 212862512 653847530 841919192 715442622 785591600 288349952 997579304 850333564 732941363 242760898 892005590 805553059 524980768 296603183 713292052 950918294 992191484 176117623 820735135 369047359 69481406 777210299 711769832 341259196 326825091 164503171 761819383 617112679 215393932 149509775 579458792 387067463 813146772 715117028 564782185 991206534 555821173 884040420 304367387 890858113 321394300 884408576 846717785 679603681 256984854 2250497 745270025 49181120 127476634 468033752 738055266 20437175 558427250 318968664 492884044 72140295 992051753 550903305 789096290 824193388 839333966 698100720 52942379 723333530 345465581 848089714 857200031 736365542 706055895 650791054 76278640 377809234 680893895 38817862 119673051 140039171 457077487 268323062 801053302 86977325 942284867 177677604 471447512 166239897 60850558 145450052 735832549 609890335 872410058 485655359 986205421 626866963 176855113 374561524 702448249 156157852 636299263 36576210 414195926 717970849 584566865 760459035 531718212 23684754 209132810 525866721 919714784 632284360 245202798 937271329 827323882 826642728 263220478 618873689 437806860 106327547 497125418 809826562 243876932 536281111 726855817 674891938 791543756 709442603 102568401 690186114 392647197 746815096 111521470 428651080 54720376 366758278 126225579 318443514 69394410 108039923 371954117 592132177 89643198 146996823 616651004 331631224 172977104 889233475 778836957 94573558 865428902 627353859 314513879 965527168 900569608 836013072 482089081 982828542 49926284 824770072 265801456 673302595 500482629 886263450 152492490 574520452 803456352 999041801 603069797 681696908 558867829 8409284 194544256 992276426 2267299 241308834 49060471 86132803 367150580 22839190 701689826 971273789 99539476 538843698 600456208 480712391 526366573 834825427 691533261 642342170 104238636 646131848 937509998 187193696 528449619 966687895 348745059 985331283 124494361 590686296 698326328 925898861 586883400 442499324 109699938 747302412 951101218 333958890 887785409 919397589 325770149 156702003 813299490 79678404 417566642 148092067 541824674 698990759 146648550 574295910 532457111 877136481 449246690 993043738 492843396 882983645 105052881 574934954 864823594 376442276 184752262 701899310 71255403 263963594 621955861 401002797 279739588 498991102 466148092 238475993 56637242 903912840 273772614 570824259 357560226 835633875 234994678 818583375 259320470 975100260 935214878 949614918 405538353 768433325 367939960 586499092 347323425 10446209 489547934 720450138 915145171 700983899 55147712 834857998 876052138 974603263 955172213 242801247 843837459 443835201 967808961 704521725 325667415 338896732 600890287 554950615 116447106 744779799 552960585 350937720 311760386 370750764 438754935 910508232 91678128 445444714 516726013 142384089 865361244 582222137 892300187 928494584 89830848 810012639 723982060 690384102 236141482 156496983 125485277 965324198 998565178 898805861 941666888 514718278 922823656 401418299 468701893 976642294 984915633 409763001 356998093 908417817 318547443 964070485 208221071 429609810 578442151 338937634 960465548 240902301 154987497 986081360 30048484 448021020 608069977 451362734 3577338 349090838 304100046 337691794 559588307 865388416 794951687 389360940 605275812 851271156 738998856 104675007 601322368 57057421 625602972 702527651 874531860 933839176 543373640 412156532 351905806 988437222 879631793 669983562 274919570 956146243 383668554 941016019 890023131 98354986 988414361 719757642 786974846 874727141 63027905 230632263 940007448 598776016 35531602 544926981 732057309 359322239 62951601 696911215 810466329 844307664 980174261 518290855 214929984 883359949 409735845 889433401 837628862 684741968 761920189 86177525 586867 217361712 97198054 735146530 527386979 306392101 962387796 696806104 164151157 118540478 647983056 318216362 312422115 195580345 121649534 964017754 473341434 185923044 167871202 387280917 289366303 521113225 521793837 754157225 283176819 666479183 744487347 49321974 759546795 808536950 38754272 120764518 223763227 912890710 937979858 820231533 142081098 546370503 614023498 36513493 248741170 970667695 675320633 678389824 879158951 812148660 949595891 462179550 901320075 892075913 275707378 12020858 411574476 370044316 596509223 174868691 199695957 223879885 881354990 958714892 975396360 433505474 591051501 201081660 362895367 532197197 506370528 243929441 667164027 46069086 899982822 551212894 899978159 279772521 69742386 286831055 320426690 155780087 507824434 169999238 371766432 960687478 40268811 397115508 714179659 609026998 381169378 733500118 537199186 595750532 792902049 469398813 139695921 418648617 195877592 135166077 606065221 145748189 537474092 194987740 245802508 32936801 521746121 245850255 40231046 595683618 222809076 33477700 456135867 117794494 95744286 400609007 543073461 753295759 647224120 123120106 244973792 605243395 348042657 100973560 503081051 685511384 787210109 737419201 601015435 820181593 821073387 512484193 745508247 742037407 566528311 136459471 956884369 965877086 919331337 298639192 667540178 181924336 304392440 888076366 70491108 141332011 285825361 644196492 425881244 696076249 653190421 862854360 474559595 159722844 713801891 726146562 274485181 636664903 979165683 200948115 162131884 864995954 130053377 868817970 797019370 873578145 129887849 5707567 445839030 969508827 736206404 561593419 160043284 975844051 163444661 986678590 413907867 411433880 202800798 883250471 796020456 946710961 623225602 467720153 545760708 795384186 55672175 559600404 358690727 91176058 47908280 622100208 704603814 151067559 24348107 105284215 352530387 777280264 715575346 994023071 521908463 204161807 947794389 866167352 896277714 611830183 730100906 745231889 437909255 102288125 255208090 491883077 737061866 122973276 470581614 687097060 333687013 12107518 760993907 490816820 791194185 749653542 345862707 480852964 153343059 793058210 798895596 864976165 2275172 904333217 203635398 470958887 74036275 369348985 243628518 715683628 478854897 962863065 928979779 1901783 824564068 393364792 640867344 735267458 474899958 193344621 745828637 156173378 135775448 179581480 712120548 419683279 705365465 110694382 7425851 586442884 647286349 522689604 602266374 597013890 86378630 615375519 283480783 815687039 773700051 492433236 743016719 701117967 267303190 124425791 559580958 635579020 199527365 179564239 411806643 352734596 648302846 977616377 566934191 853571218 677774053 131214408 562999474 10097515 557902667 904374836 589884487 722553168 564425324 615929175 489903213 802902901 19693145 459210533 784988153 318894574 591707780 133441765 497763423 585335444 567187912 389654162 537634851 148994427 58555214 296346422 480085851 777354283 365084374 406227175 303493439 715349142 660622219 30514359 122685008 759002099 999036235 49713823 844344589 868378332 542287012 712949755 789431015 578720914 637129132 158527997 957298890 272820689 831469111 648758261 481133847 11253852 584271547 23960454 571599375 646112336 436303733 627559889 770283168 23524875 700624052 864151860 18535893 883014856 153143343 750179720 131099226 996537050 263775514 426653069 669758543 434416289 678208241 507475529 768721500 738929903 653558675 136830606 114295583 601695560 349028560 489776390 791545620 257650606 793935333 914138397 987393509 133782283 45390338 615289846 489014188 221218166 634205424 881347357 222969432 894937330 36360637 469286321 507061626 941307589 206195040 105177538 185090015 875016467 686196354 358050216 771458843 514294899 296364819 158408140 515860062 895340713 72806407 953313866 211053763 31172081 185366329 389934318 684309045 545392563 199788476 526926194 942924070 480096668 321397032 760888115 69527258 84574977 416319938 912255055 42132461 730819312 371409676 884479048 381278492 493339787 58409537 608005908 37825334 842305694 822299439 179250143 882321960 883270981 684233968 642021426 920504987 853376089 207391462 703865757 584422478 535559706 883346364 425930425 475812255 298684489 422089775 694408048 748321025 316115952 595348037 988354877 52549617 273366103 245118894 647780772 243548441 589758720 468983183 427445166 450144356 405183333 237065904 667331533 365840189 816148498 138278644 180283612 408999851 387367096 961202616 324229511 234673377 609146212 999627567 209268109 742869810 498967056 210944091 702252456 55776063 867394595 801929217 850626235 565189153 572380152 95279259 563859365 79207430 92987110 710050818 688660204 365081935 948133729 479132492 284452403 477937030 667138216 531938529 632586399 52377817 192018371 628656867 509363752 44112665 393240932 732309707 668496220 184947583 477489496 716850424 599612152 999122149 699682233 80381985 782655096 730967379 211831036 142558725 377308808 234687825 516509333 99920440 837815064 864030080 136798280 865057357 432235424 181973110 265676414 443342036 614379200 379320492 253989488 668652893 396812295 663473660 495332960 269995330 681788307 494854843 489909167 661203596 41342415 248268915 634878272 365462987 597949448 34549849 420111095 197360421 944577868 176354880 556082509 792614891 494446444 390499023 669463067 733859998 355986522 750495683 970717767 565718412 960349273 400355502 472687009 371805808 568224864 879374387 909056543 27683590 227973156 683291999 114899772 976456753 82753567 928366436 621387904 121864411 674036859 263978505 338443754 31099744 474107019 678514624 67876214 406834881 223181309 875514305 877427725 108021450 422020692 53177877 46874420 683920602 473227169 935274029 278984774 451067486 279737759 150031586 870880468 847278768 370593400 504688409 632112853 860944764 646709893 648782909 604052545 923068658 212695071 446779447 660495861 700978668 412147259 434225441 167914830 44517117 965330449 823508461 740234977 133566928 852291091 749633237 672886238 541690551 840811333 701817730 895812538 180548159 163288432 700960700 468141281 894214382 890215382 142201443 179760193 573298862 632821207 952262042 70608423 5463251 478366212 938104377 683693848 832659313 338168700 936515700 870776622 622080496 872117836 264296028 305846073 152220866 197499777 349066339 875579513 783100131 564971942 965465812 395465181 334899460 396077536 509488231 720818290 190022060 510610132 797362610 623531847 994776526 250661215 701483141 5546267 668371737 724655595 804893727 955567031 880531155 803628502 766228953 272643613 833916502 197359065 157749615 381391517 420971506 558171266 732818195 465034408 837654386 692474898 232129453 292134148 753073309 100382308 884386554 851502826 407959580 955622866 252551307 686692685 89979011 77427378 682981565 356218663 924443364 265742454 573876653 810755767 212792249 174380897 66262007 228058031 139754390 360377997 623416605 563949029 71469824 537471164 683914189 113009168 629334440 451063293 21951552 295879775 193864660 781961009 131929752 840301430 390546490 686884019 845896044 975609665 559055207 418995502 654801968 329437309 461746327 26553977 163970394 41223355 26006742 435852492 511635091 275132516 220530627 829438766 79774112 708984257 256096496 75480479 319827203 797555563 236310074 472206844 167595256 117682659 285194634 741768514 513756910 752786741 51062382 1482386 655825027 903775440 800970706 672447680 333951502 937871074 907746093 413222996 199673300 88281452 757345101 818905605 399130825 784731236 608340423 565380650 680124704 603171360 214107087 740151844 236878865 36886417 292190967 857270321 956729610 237282783 595346310 992770352 764233245 824609128 898392585 928798399 930447803 932623744 824603060 267956821 854804994 383149474 692316133 56528354 778923509 293441610 333158361 22839129 376471236 532357431 473750249 801630368 552189775 716122739 295069487 500064650 891894144 770409395 258385722 916979609 331584516 30994431 745672810 142987450 747705261 4518887 578063177 202798266 794387478 203612813 863321216 561174581 865756284 809694796 778280775 936791941 8252516 676777395 410451472 909681886 935442545 141903466 460528492 130915485 747850556 519117354 26483639 324053331 810824396 81024585 823305926 678612808 43708746 955128958 419557872 92619155 787940677 250335847 87609646 114610400 919196315 23359761 949902531 895477281 877996342 283974551 736903919 377209306 625985821 884829212 591843172 263518680 369861095 440077951 491840369 189309668 661306270 714104568 590402932 264130683 145491512 481137959 699826710 930236807 666774740 52558970 721235457 21392127 43804867 496717465 749935149 509237565 820979261 291158281 469414585 409466845 283703610 714437998 340377940 726583732 809597064 793313376 493586010 36430260 505559451 373734827 770078757 755604754 162256487 892462452 610368138 201226228 47958950 579151850 550442558 299133005 300192196 485889308 803734026 880669127 72296141 934038603 169907915 699697497 781804795 733413633 4050497 383880130 416320119 332501590 947993557 933717794 257604714 340457052 150643086 46516626 772697546 130800540 672195068 214856365 58744830 588787993 851428964 774774474 876671941 303881881 200401930 264440401 681728928 248139163 378277507 532678522 312905292 126473980 460651004 260898539 300605568 399203826 142581371 21119410 414805147 457368868 588747653 299374198 610975882 215399451 667111209 746090303 71301242 33620104 347847385 795681752 999285442 531005025 318753091 810256141 67250665 157589860 312180578 25618011 158420434 535624992 780329825 859824182 710228820 985419097 132924398 660038471 433542804 636464865 786750943 483187886 541035136 838726330 529295707 148743173 74421706 345621120 551025594 149421501 562537330 139761444 598216548 851867238 354413184 511643205 117706025 286789842 314046451 702575126 214192648 543880434 222970249 987487105 270864334 171405013 804260897 295477251 737943099 952129975 511625720 637276813 589818630 821418957 430458540 188816149 399344089 403292148 277498207 645907224 37142682 593207964 86787929 447122832 39384355 955844748 362946917 721076799 903478507 382697711 809719503 770066470 40560548 724672505 982172332 93300846 370935750 985453447 651414670 679848663 849520514 325145450 137513439 499349949 3074443 981723710 384750498 492547520 384453015 79617508 118278862 845132886 594760388 856400273 566278451 756622371 283884472 995296329 468215178 543765941 372872666 132778952 664171210 561428869 779780572 900629852 873167118 528314645 581207335 597006192 96918755 494040927 609139522 775092555 990792329 487522955 904423842 634785383 266161217 61708460 598979777 227275286 85432177 70148401 533091582 131002580 345305354 729779235 973966140 399119390 850774303 847612193 848808846 250154419 182680558 746676847 717885846 723967362 523138191 961773906 304085480 294793187 699276238 446566982 905778083 416309655 544716679 877422844 716982740 697398864 329225915 724696357 37377091 262889360 932981144 580701712 444628407 672086444 227775653 321930722 866631487 497848450 660041738 866083492 930169554 71365599 267123687 906314458 491530312 20338764 638076030 42177551 737484315 237003996 404913676 709904811 428365839 61014158 106968921 920905119 783447412 982299253 519070083 428002047 563146006 898089177 705631775 900207489 612176080 749834936 757450361 716664030 884026264 955602493 574546614 427599709 415059191 535332895 506804168 420276669 123421009 680871841 406421243 25182654 390037712 839031502 237763325 991116743 602901945 343727596 405643641 584403551 707776911 521006865 996965100 813266605 35481565 130571681 511796991 235226565 36528403 879145544 582703217 193799536 635924281 36376147 959884836 712350308 43776344 466216489 792393124 338403620 21089041 878163267 728839803 812013331 386929336 869230514 213070994 958781360 442706673 657480147 52853842 278192251 951504411 837392525 983850305 493971081 877782066 841845501 861022710 171361935 482943367 45394347 74668868 444560245 673768436 467910894 69399207 130683679 455405114 154866965 352702691 568644309 623772052 298631046 235235701 186324819 371321125 432286207 129033133 737603815 581693438 626499106 457537008 530609716 735709303 302606462 635554430 82290561 256833642 975267019 854874088 199240995 430682880 704213494 369189605 299933666 651891547 671362434 37430729 145661920 773982834 997393383 873278669 228507072 747742485 238732116 698786559 828771138 476406890 849726337 949800028 380732316 904538044 311171562 246393238 244547867 509936670 343864495 961369933 666760132 444367867 794491568 467566345 914812724 276369227 758566432 200069378 187515254 857551850 932294570 889566079 906722202 865306351 137663987 336909830 640296105 838409438 710665562 430348286 566145456 721886326 241633825 618364282 602023054 637056509 873582368 164982669 294901386 257834733 463866951 453569645 206243201 43421642 750516215 942215268 190544510 528314229 394857345 545850103 932467243 651021338 462247683 355890134 198542055 36222592 632619366 189560406 581046062 141699056 769685600 785389848 474724456 481976565 401243608 463102729 273549649 538873339 151196892 828974663 165813682 120374413 312510424 812212066 103123798 683291673 474910229 799496026 704107607 289156269 573586654 725703312 259802543 132951756 975800349 246016915 103677611 913951054 443458388 110868619 598071109 230163131 767776123 886145356 973057719 892669468 861305195 521993454 732364116 774603971 317104092 497696492 526743026 561214563 138785419 620117436 824606392 815423254 342691273 598608066 991832512 154506832 195413633 468457645 773776234 91176504 724548897 446800202 341370536 702753500 615613019 260047917 61224411 842889125 920561991 41700443 546827967 409981771 50598413 860718921 403436268 567156717 524501042 905965265 281473772 565092403 844599034 974299664 286245012 484085850 114610270 102001285 656774823 991767690 845070489 186498142 281097712 247474933 783465369 466585547 870528281 200066135 842979252 751678736 687902698 90725057 543309225 887364401 978970115 433452387 610894333 94053491 798052396 675082627 965694688 142112477 427447171 735866320 855941901 609330537 377005297 575365105 214065658 293565873 713018009 344365947 786692518 148673403 37048567 826728841 655840996 916974246 215562113 81947284 343084626 878693207 426769194 880703738 132174777 41408198 563810176 159879789 410571161 990159022 163565398 843002247 864619115 174740895 194182421 679021312 573481587 796550452 760144230 693339950 495334478 453992590 929356355 149608652 517332156 261465417 981566342 327836700 590110034 820191054 626181394 355723812 222443419 689006554 30562748 881404792 527740186 279243442 409014597 705295438 532473031 566405722 907518273 191493258 366336850 489851361 870886196 224262325 793422653 393952008 614995904 206595212 31890851 446220672 119033937 644505294 442527788 294509205 449267569 770872818 780797581 497729588 345172248 334337512 485870513 416685927 554572444 246375867 884734910 586953991 857592315 267003714 166251372 469487407 925836213 142208682 196062761 374602519 678225384 110555433 928496667 866702529 349159350 443784005 590783883 706103315 539223425 899005435 298151234 187466857 623071747 803559703 787178602 299632792 716628689 612346005 289912415 500233669 798458264 698343223 925207854 873071169 287685439 860989458 422798797 111701782 869925572 376307541 28157493 310975199 557362207 231266921 77281685 471322182 525132655 306014694 130814271 792219043 957614775 539819813 571135935 639688992 408898967 368498982 639691215 174098998 936791228 127085283 632000545 561810001 510723545 582420697 510391675 981384011 326902189 138373473 447879596 120660482 332130738 167015083 141858098 515213257 365842645 488529271 695352272 50124454 141754137 912942251 22042291 651916149 124192903 41586416 994793202 239402065 644146727 833023059 2070349 123620254 75650379 116115247 341149809 714857256 723785072 210795323 370874787 731021665 396611565 153358164 402270671 960083450 815890894 34549703 107234742 741153110 118694938 648263039 182640924 351888145 789840153 958390255 671323429 611585301 96080698 418554881 72274427 745728196 592998865 919326085 403506423 683054581 384583786 15261832 550192766 326665194 162391182 258340737 465164815 492834137 951251220 229721482 339986942 745763817 485329793 259098596 858744368 347085255 329433131 510984201 924512557 992040677 588743482 686743317 526498604 45522618 192962045 74698467 147946024 869734767 302155061 597298025 269556967 486536187 446242014 981855950 595387212 234094442 293974938 483610398 546962190 807569801 165198976 87761009 866866246 77851621 631223025 601196130 577201355 358790576 199901462 856610255 864198890 777052876 834344156 637229867 640568161 355965860 112959986 215973056 773784673 19116531 276076036 450086017 999657261 628953007 224803056 858069448 848356149 510223397 822746096 92064760 606166536 990320884 630978099 165964857 550159479 425580253 487520945 766007260 981610025 483524459 625046342 931431221 373718776 171846951 933836559 247996505 778951961 876077868 928816775 727100097 100382932 508145188 383799796 871652128 902706659 703590533 829930520 636449563 903602491 871754071 814610279 564391101 866266360 524423011 543012796 612395718 871596192 66732186 342748829 749379108 307369111 658687585 599885017 268133381 231945818 286708403 497218657 104040899 29736760 593126305 461443275 361198905 625538128 908504554 844498381 998718335 936720880 941810985 929597053 479680542 528426948 960882841 540260345 511161088 557232910 121472932 599442947 713676183 791785540 982186530 581884741 736258180 535412668 312342827 34800668 939405779 59642996 504092468 826422944 342259014 855487339 935630062 74643242 115095618 688913699 946274744 603597621 325207718 703945226 188486727 690321242 532897276 743289219 414533008 745995918 952117577 728998622 300593888 458583019 571901609 404601505 263437491 226715874 777850483 905777834 489433946 302148226 483512201 327374864 326178954 327050799 168133496 653575575 760250945 307250216 304491449 844259703 361186139 802118535 529072400 32087259 343293689 716136006 747530159 263094693 623390081 94451162 718857261 753646963 518831533 266739839 253171115 489902063 63533499 385158628 461821226 521277131 968503672 801412080 705816518 988559453 679068967 173474455 305728038 234744340 717185084 184128044 868040339 479446787 156936938 733017247 951391549 524149288 953753884 816585388 779126433 928679825 296723530 676138666 641636122 589670007 678503162 85415271 983528681 125626968 255921977 503247894 32873690 132756541 779501465 547262212 35345941 584250005 874271340 127123665 421105329 244446382 797374539 542328889 67362453 363642713 385451069 770644093 580339892 110711565 138858672 264214375 193517768 53354903 792272131 911571381 982020447 914726037 752314056 782642705 454514516 150976081 663414881 369358 327762847 198232178 472417804 77796127 194663650 925640212 996806963 947150114 790925969 570314042 964661053 242549100 343077629 860842070 893311378 156543299 98405608 587546598 146876737 517699017 411851256 37103511 592816427 245869334 695987675 121395986 433051514 355291952 711374952 94950949 823112079 125705537 882760196 174034044 200225741 720049779 150617999 352366614 947624276 856941676 67715284 972638505 210204375 263470170 953476153 623624608 622184233 399243648 793051534 406718426 615275790 164019742 126989904 927059435 711589626 574672617 562044219 947978895 723550485 450659764 235178375 141725585 33760213 112296569 912360926 679067303 477680541 563614872 777175860 684277410 391972166 317210204 590358704 412684896 638624633 588332743 146437472 727126398 987747392 213656123 944013770 536062607 951882872 881926757 901388766 935684306 724365178 872004115 620841242 777613984 234519348 704391365 118462445 528235804 436876917 979933604 927079126 688984497 50302670 495256795 388684297 261566207 451179186 630421021 153712525 612334010 409649784 655993550 30420020 347555440 141299269 945672937 502527309 412458131 19392065 152900083 668119606 66373601 580143244 885929990 926295321 675464061 151993180 807148939 552230128 738836442 385337167 679857423 552426498 920473672 990232 851866828 319628946 660270085 242453755 870732243 684543208 893468049 514314412 750597853 77455547 152393861 59715685 301210697 543776240 71994009 762984875 324068567 284648501 393299459 198447237 656961012 758599706 413769377 459337618 239081751 454031372 274896292 605661956 715098893 769390577 694272170 720641537 259112558 969235511 676509157 919289666 117226885 349990235 520727956 559467776 593312923 429790742 515041459 260839701 408830043 375475219 741072195 279557313 865992883 260031581 488184324 516199545 779231017 717898000 287010673 538708128 667444110 644236862 338126104 371536024 518840664 425134802 46842744 613087112 665538358 982908861 195822475 474960084 141994123 905583916 469622868 616662768 156914166 215569978 95671658 133522577 495652431 177552374 483104718 139538270 73991608 264758753 142867435 440541853 959799052 357266924 957790351 19796707 843611024 482046521 633819116 521143920 736942265 10764569 186271618 377566876 203313843 577877960 497390528 944162465 666587619 391294011 890166890 341878516 581610964 813158101 675039262 169848611 856141607 811982517 328307753 91381639 757052314 986735877 221122328 796490948 294155363 412570770 741525130 621143578 727964922 301419941 235741609 241978618 398969180 592646341 153649066 542253019 473234001 708431592 154652770 889399112 425585864 212327600 599523003 748695356 586339303 771029097 129505688 828394959 750790026 275466052 473326112 561709840 524001959 931082116 627652544 723063792 831490819 803606580 287536245 228128214 321539384 355569240 679809318 706778312 963222000 320499108 393707787 333676482 331806572 787952789 510968050 274610932 79912123 344074137 634609856 849833718 905285030 638479535 406887002 459832280 445666602 946376580 742671585 507078069 824919710 610193121 472752174 872723007 998601409 801559987 595984619 877804349 611679046 402487139 489218727 88452896 400969607 616813888 422515195 280729564 842142340 190627709 907463611 144728847 873777033 800087878 773325845 915201464 119541387 493931888 298780340 624520379 601700721 370219483 159303081 596155286 521268874 108129855 13749613 111328868 683200157 822588074 967945552 948703413 89433337 776537419 463396798 716831395 159755663 132509038 826468995 989676958 675456924 164918891 447414449 892343557 565834342 249031919 308743815 892917848 686884484 626140372 510964224 996656620 21565020 61731885 487577851 267481126 395565437 513263372 222111629 831334399 774264221 661781385 639111647 942455919 766741338 604117584 973086261 443148675 351918014 317117303 882140638 671756280 800091694 440245734 37497476 685416815 906933142 567079580 215783654 796427027 618030210 998498275 650362321 51834993 490365082 679627367 438882686 124766621 33736377 575773503 840251917 926052138 256765689 792942931 52599234 860966655 588599664 327372680 313248168 203354550 405154343 561650913 501029681 708611477 3747933 756881065 274740327 609026210 750126659 23490229 998884735 639098479 748812988 849958020 708861108 685865312 314211734 150682264 295848006 310177937 728811104 488902984 379842180 16603330 876312358 316564971 850227984 353806504 749209628 227566206 253708995 670237409 898169033 875828058 750464807 540819288 461825355 381396434 381985030 566030094 545463889 937176624 903479303 498430499 673341958 916264805 798049124 19738173 99206338 440071106 220494762 127667237 405105833 456831115 263045875 513161259 327368940 583074677 183549381 153846651 288166761 488496816 165741409 827925981 392730412 893699704 307619754 200081134 237130148 723279401 233421984 382670340 117053486 321234145 783249657 802686952 381831278 644848313 46686502 505985329 563309588 965447587 309532828 413825594 791716808 416209213 523546369 893948771 4857085 581648490 423170109 674318316 621992718 809160 614113430 641975785 82521444 81023406 886139848 923949827 732272522 877581725 145525724 693907223 765430902 630241263 188363310 406896826 539813694 838344184 216802457 59153577 49482183 701789599 835682304 162209861 785889849 935944804 212277070 398507007 742259613 830419292 512220564 913655406 771346913 554115760 193655672 24044607 575700053 39593669 875875409 113371480 809588012 476090573 897302265 214113333 420698982 920065404 489676700 539591391 133261082 624844777 354616051 246569078 604449925 744585474 255211665 994700729 960416540 88090374 793010521 497847513 992011881 990696389 789728770 491709294 928960992 664551831 500815172 796593296 257069785 517955217 305228573 142869058 526639622 595443122 755619525 693170683 828643172 541006026 290646755 238726574 359287276 13282320 986337440 548357019 943428309 11354629 228700296 254201441 432775393 156202040 148233491 870349594 891866791 606774607 465129574 421979695 592789043 901295953 953856432 238735218 218813600 524051487 211830994 583934887 299426814 409638355 765855000 889329593 120140399 696120439 622346571 963395195 353681439 715213764 372320386 808870628 36281168 758276650 504156117 828602866 60917913 168703047 583194619 155089734 768855462 767732972 900032451 445493600 483590967 969087663 761226151 598676732 575274855 318942644 665457921 412525424 192295971 73138578 842791114 694341945 990687493 466780749 806905487 713604119 558595240 752051082 85524226 256942338 788276454 217952804 919877981 964498450 452116962 113282347 716684727 626258048 263933110 376766871 976891433 369168840 166501249 633256675 253366141 783123305 942604541 620616758 427115256 211789729 942028872 135895051 998201410 289141466 390230156 857416837 569244621 94489792 88071677 905315628 785715826 121236539 554769708 365264070 610157274 251284069 954281864 781553909 228092113 32384417 173783553 761085477 632792142 541671895 476881799 344890262 193375170 534588610 995463977 966469474 816563281 69269336 622233289 992472549 766283351 273353052 944797982 636331219 478762018 374784221 995404040 872582402 75838958 525382395 786160172 341379016 360896091 262510681 515331910 940728283 230083112 78824757 397046963 82976396 290827266 674499674 130965125 892634044 384514741 365970738 633829736 329186162 918524284 834794242 332430725 313861521 466710252 205381859 343450044 311506785 42726228 200461548 55011772 247119388 451905960 55375939 103072776 411607663 319996867 847951624 956933122 355550498 277998224 749352673 837461938 554844965 298095553 680846580 412227114 839782614 393404848 153783967 414225724 428222107 764152335 771483547 626542134 132919403 128351733 687767719 97586191 348189304 904325974 270181834 887080123 214828289 944131638 185417923 76252621 161883895 456814872 130386437 673106470 732254104 392708002 416794796 908674517 310344119 832971478 107255194 585397906 644198197 18631589 398356576 783472263 656712372 738465636 962260130 160080658 550208402 917632174 663681941 930911215 994790175 882064678 943227279 437675404 861864692 798216485 562807674 983966550 441870211 459912941 773666442 508683511 587919235 582052140 227905680 973979753 126875953 407387407 587226581 252087144 306756940 283658137 785056452 863998573 526239882 93320672 679080427 18591901 853363409 407971475 460831820 582883291 127365101 100059158 744100101 452554414 602353714 714527920 172732642 254299651 786131633 589941690 629971749 304626480 224436478 573523703 588741787 924156551 491162616 336784094 956267260 806089959 929246123 497989748 923940730 743291583 583926301 227132058 588422307 574800437 200215526 545108516 807032499 737778435 163127102 390105150 629294365 739318769 876699025 306596051 126020562 779886029 151213071 794926323 714357747 964783015 543774263 279191467 505467801 128188333 351310582 370552332 472211156 440050998 908189990 785762946 893340519 986398341 655936712 46536680 932990780 634186291 435099280 962985752 8659888 217930330 511754030 637231527 881018303 429191489 614409949 813681207 578947365 211199122 403306245 158541540 591089294 316599825 89977066 512070759 431897310 334114589 633648482 675026562 897569379 921333467 724841798 448362303 996194413 334895667 76862005 247267240 371481534 835641553 636166421 489324209 702570475 131343893 796173853 544219770 138598179 778930984 711072749 608958791 657867252 856482786 793709031 752897420 100101725 13241932 577028340 219074595 950175109 808910631 191797634 690043557 239027682 643903920 229438591 661261832 171345071 351429088 903467243 929936434 470182493 345764991 713283944 205724441 467443506 435990559 290130157 698274196 695094357 458165900 545057534 77965286 907529775 385926953 561518565 367322564 927839997 586036583 58706360 713618811 22494857 632587977 490693191 775293176 509034816 752246619 621706911 180975287 548497195 682935052 932764361 92607597 911075125 77157605 268985774 124794529 698387076 28580004 457381349 600567793 586398521 216798754 847838141 790355805 652599729 222165453 54679813 801719276 279736590 286687578 767505619 50239524 373633328 431871568 378859637 550267133 618927148 856148139 507408190 758592119 151555812 615295257 397335485 886600667 885668782 305271898 575003842 344115371 56519296 664891943 808137166 596271254 285473069 92068434 783406265 174651035 283390354 989506470 916519389 5797892 172353808 752329166 839271459 711918192 862746563 827511412 894189390 244452000 997947981 715130467 601357266 589915395 297610182 200307586 28973738 665100214 860657888 263283030 942251408 908678306 859543948 469774225 922735386 298242454 375245811 769111569 230924273 534658352 592262516 622134317 763496118 77541492 948271767 957784411 980943871 742902593 797474129 177438806 705375629 151489134 394145587 173586511 519962936 315853133 899717520 193393788 598671815 560653167 944835601 50570843 379340756 732601397 258506543 583031229 57519768 881865921 434674608 882612853 859445309 443073667 934010481 299896892 388581215 75370294 443222101 272968915 6762707 48865493 742167845 735167956 261907449 276251603 170292398 182629233 917252004 190190446 888896361 800254122 556165612 507008449 405915050 798089936 343459213 753640045 942629914 958561310 845106686 804476017 919244165 918297492 522064697 522605506 154620 690078563 146406134 436068038 331218808 421863647 150592670 18081282 921809607 53855919 391984887 743830098 625014397 582614325 326545332 128292299 804400021 635829098 175247955 359658379 270751057 926095408 572864998 99052157 469804502 949098978 179863516 16512414 430485083 260289294 108517082 40101146 715382143 224442275 67486092 420549143 203651100 876999298 434175060 616446864 229568660 172924033 872189497 783959510 572676536 944553450 383521912 976116375 860728496 770539241 193493163 229254839 958399384 243821790 293504619 852074887 739611442 927050674 512276878 132353264 674330392 961115723 929071288 660768662 554433540 515794159 926514165 1201024 216266794 2050407 775645020 614620669 119710285 216510587 334349265 171056182 815999015 890106899 117441400 796784443 922047844 688008829 823085635 969312380 331411135 65325734 347220148 719640489 278698016 143635280 267459639 470694707 84544957 790159976 489639707 498940172 735543936 714988882 674893262 225199418 497469862 289123547 346109256 289179325 451527935 757925863 737168149 947478039 235841977 519381880 134695668 847060319 584140809 257842327 361908279 397782950 326497550 491294099 682052184 178784961 354308069 824593367 880953141 999645480 879146848 82798687 309549401 818308326 101599646 80582406 8516144 897505767 606752569 537853603 831483733 646490750 325748377 690400632 47042822 107531985 977671805 525927363 371479179 724147344 826904175 834967862 831699574 174973164 217420704 824895003 69124348 115402861 877762013 349307545 400256101 507006314 226690761 604859461 700637190 319051448 910256718 220253146 481800114 415482541 787171869 775672266 477681299 592243374 496490603 545613081 444706693 89292010 789133649 938582385 810175953 939041611 179802382 391145952 89138097 530005760 752840441 233602921 196015863 780647001 413206708 758969469 741418971 665393064 22357782 808549059 915595200 698129456 25436485 350328778 401439197 441584031 863813137 643404138 778704502 579272942 280231384 340152932 319717485 683512235 420834669 139458950 349844823 646056955 684925309 740946456 419927712 60783278 274859399 111486776 575763535 853332783 925816641 784737602 163725460 102317497 457489259 550544039 609164718 255145869 948866896 293458024 965367156 897834804 726479957 748880290 721884566 214094223 943535711 945145184 371968416 687576511 857265014 41449317 651182385 666609639 996134747 75395783 838003246 21604396 84950316 875747006 105875267 292163476 787311969 979438835 500141592 854348257 917077713 751708874 616765542 913191126 350399914 272618254 730494714 994106922 876536360 368435366 42282515 337523752 191490909 33614209 736636630 893007306 900966101 421172374 487441010 251275667 111528161 246100862 107483024 991797632 58148041 990536755 781944347 874788174 704612888 509004263 387740279 700060194 253960911 316439401 831239346 901350272 264173645 809707085 17453018 159540815 233562770 420351218 763185508 621880976 228269317 201170338 332915208 361842471 783579035 848040203 615497539 905704350 776765626 440400884 885739819 573926266 55002489 199550209 446012348 339603992 388722142 815163932 953198532 121291476 396148001 12240088 287768783 494073224 163938746 438817269 175070519 687700505 435150148 32468227 500233751 609529737 327336208 168085243 911285004 668064915 928613926 807238499 466207237 384974128 252306290 856499106 634735420 736775513 565103804 753644947 647927831 688613283 111238958 516216259 775290039 204033860 159886322 524751266 790053510 29456431 381784685 212699683 764383166 269997819 335975715 647305157 825189141 378498992 565502201 244042649 455588842 539948680 85260728 67848277 608596391 344987310 652983414 425869321 438987662 660105207 651755897 135572328 429402927 765933554 404286862 205020420 29543424 801199024 20755985 48538924 851793839 395872769 546677503 884739619 196118273 71940610 67219749 767848138 353928226 494784644 889132442 978589609 536629789 101718891 577370899 131913107 843492135 842848238 7728780 727264672 137719464 370470116 750760906 746701185 867909658 97595235 826562540 514161686 628941004 772407079 147578234 268605677 636546151 319690602 650151153 221893075 850327224 788121250 893034086 984007432 148655725 615084705 718611696 45729015 623440151 371432167 737690093 18683018 443381376 122206323 727010668 682460512 521196162 528648882 190404509 99367376 995828038 507980781 586325974 735614047 516537726 349318173 635591428 404889749 910668213 588010246 142279628 395948144 933436353 606257004 859638754 401398707 97083188 801303028 298493313 791878789 769953440 295327026 185981466 920064648 20478811 494139839 261276651 654260880 107507457 438365829 956562181 113126959 804664683 980934312 156371824 507328087 890575705 851637756 114838973 76894707 642094923 493279741 215742670 336934378 97102116 120776379 977743369 699889061 771054169 200318035 912781064 551233102 514407957 903397433 146806668 494607730 100498406 474676598 306172055 232930959 460008508 783472637 234071639 275777915 259102718 382138551 649569943 794092495 612999019 862822729 979816523 78657621 443890697 61205924 801296644 17547653 819667922 580269957 115562995 953949104 649614552 910634968 982735081 460023898 645850789 920299700 327093361 84681983 197297918 346785377 769817705 696718524 337357640 944586822 54616494 569371762 391422152 157699131 484573607 69390137 634934309 869553424 151239120 531013337 588433278 642145765 958095579 611173750 598081700 564604489 583877747 606559091 510200772 349261714 331347259 636718358 217811403 888738681 302799102 213351085 294192928 585918119 83377278 602843598 227195258 378568126 816967637 100725958 601024931 25447909 245870813 387803628 389756190 851861588 865420413 270490942 617056912 968237670 331399121 643620062 768938432 610686965 201939975 655731226 637470034 231232176 975963502 312810564 26307611 355825776 963594155 503863795 666971602 705232821 120527029 226226019 554490509 656045758 163806508 865181719 36345000 767783896 25953918 238968841 579260486 40048353 935836673 143473509 233453983 160281829 4132368 946489165 581719878 363255563 617119448 772577529 422322872 272371211 599575299 104494595 403822654 62858370 802944033 934096198 638477838 855569065 303301882 477379563 635968464 384761896 133893183 788220895 87911811 629440676 35069120 271928933 653360497 897760128 909031863 519759208 361374331 103906495 330728023 125497521 910064199 738629452 243420979 403897077 90673493 524550332 410571610 134941882 498861801 222858119 655126545 379300133 177449789 326486107 658340630 364957325 292315816 339126824 19762950 822239449 637563501 305910356 452356708 912010900 326967164 860298361 380453815 490088785 695008711 219737226 149523094 767290738 233653508 715671659 974486494 637968509 354090091 648677548 497595472 546550563 790580674 231112693 742186884 457601654 244908358 841661284 254969352 134288652 873076547 811770393 483927708 212177424 660572054 697431802 746448506 678517067 153892991 493272054 747342238 871557316 172377824 182687507 772519833 54233266 738977315 728747025 826666193 670709391 625114437 229574160 474836470 404652178 620247044 649481930 666221334 629252072 759053658 927906953 213482224 861115983 546848344 239203373 449352191 326534467 559436798 737929276 617439357 354583791 67132160 231751581 276546347 615173698 949311873 814943389 288893591 813323008 802015336 415984793 494380556 243740921 912661847 858116462 424316939 275689154 853310582 703608466 833449736 829119162 823181480 466235315 298364726 21094763 753386921 601150278 869073964 271442667 771180691 14781427 413856542 914036111 628890717 873670310 759929621 81790241 436785825 765775127 524721710 731728801 584767080 449464743 507744779 920044351 885528898 196541205 127919294 510083127 790261656 740498943 115275637 136499891 287450861 800113432 418662807 26952926 64407028 5050082 779010149 136615006 75122610 671270110 717078973 673718489 74921941 501092780 709964359 963096786 16821770 432908483 391592173 256325565 512492333 142265622 280184042 482985217 181701346 989065042 306074283 490164357 788070030 787566498 388997304 818342282 706633692 676019493 345806367 216868981 640902939 781407934 210561845 284581031 300274464 465940345 740396684 315369981 727116974 225512585 684673609 672102525 324483361 794642705 738989551 453261187 560148099 873132005 55586053 808543158 783182464 595205987 487380658 834180840 77706929 214391905 452108667 373779530 697196418 278504667 523222905 174280579 64479656 364040863 398077458 165586358 139887489 679410741 763695830 377676276 976014752 349615689 557373429 885642888 213720852 664335445 889039642 519447031 676080206 626370556 575973095 702036666 844603158 168542388 122218941 489433787 915284589 706162669 3943379 779131517 371830039 32395635 744647337 615521326 29390105 281829191 34713263 829660941 614375885 375717524 88487438 133946281 158427317 179275916 968479005 151128005 662877445 548716830 671269925 640268613 202872914 430220108 334063559 802458430 492800797 456233176 368456364 785599535 17141499 945478129 640511730 622225877 420687496 667853650 513225030 502813872 41089661 597554310 385219600 542086209 107617360 221661340 478343742 525133526 629834811 697532902 22512557 861220412 574159093 377849062 20137514 152861448 143063799 575792680 647509706 919650474 593277185 517907475 369237494 813571703 776701767 14399477 103004600 374335874 638630558 765286979 116815707 221955801 803569415 659953765 926684529 630016088 414898867 454458893 599839008 847468096 473043242 50629261 118270796 885837119 324582838 297918883 472851587 437829020 796106935 836510049 60186879 51814821 551864318 282179326 336460582 690976593 599682296 566870507 277627721 403793142 809628152 628685278 652174421 692304305 943828260 967419450 166210956 698563622 522814361 36404521 514724973 206698614 326462219 606592944 649163771 820477512 533181803 524037259 815340667 26514604 62363792 301155315 169401090 522082238 383307907 57273474 44247051 901481942 956176683 728430500 194032762 73230930 547687413 288027463 972897444 719646475 922668799 25087638 722674395 139682861 846689720 50938886 309233399 28777366 971707794 202761206 964591076 430092662 192616035 481687280 489830542 998562080 782295314 611986559 346091224 5794807 688684222 465405928 155905111 542016376 336437606 574892242 177064578 161200111 762689294 230651022 770449727 531783335 758355262 101760165 695175397 555281080 861447056 102520652 243903874 857554730 868466851 300665249 152477695 197795800 224140821 399724215 103926195 540090268 655459580 469952438 414236101 366606958 411628404 318105542 315400017 576573023 754348676 134261591 681291776 806033198 206409391 941815014 453527236 789392384 24948048 460865791 101379814 136793295 69383831 93716942 231367047 45796660 767533572 913883351 981807595 224991713 471774496 61819393 377109358 97820361 114754797 225506524 554286876 901719881 74714902 863810761 656810695 118962467 85950735 630599906 902306246 955004194 957192587 159376568 516920602 817337474 18611447 150649110 718679950 811715139 234790053 849283277 86713261 917569116 537422607 206580783 472310904 85080658 735541820 805711896 819247689 571355109 643141225 799096829 612137920 120287587 38874681 228726962 708430271 174826816 173104246 909303398 3362109 858825430 372347658 839718431 943487120 720162323 757192856 554067514 909178806 312092057 187643806 353037312 793509159 127663705 829416710 591568769 184541750 835900735 449288205 328444537 883571048 606511776 538239222 257440744 952412549 265270373 265264239 27649335 63072496 881888416 616345797 320702535 7036674 542229969 361845270 695326471 785220035 40737511 297082718 744352185 301749759 743500428 546153005 91707735 458815073 121452980 826465766 634738215 881321257 339329175 131027625 206338761 75723183 29525310 856611949 693212091 450098388 96746521 672646039 388735858 336308647 940413920 14684197 694830478 979140462 129647239 225386123 439136634 482883634 897290833 841407917 131513032 44840203 216355128 444732143 233739675 268023649 476431732 348665899 673752149 335537034 254751461 708319226 857407374 823747832 901822276 843920115 217071465 537056355 46302323 428155936 555816086 440832296 267990919 444984174 84492917 360285844 323368382 44276154 142408477 231967940 5393670 625093356 201470569 902975437 838563893 377040797 523881849 427922323 869431082 661148626 925066007 322195434 179586628 656397158 68188285 499141068 709809053 213477658 406081397 651264452 972455677 458607087 893441242 311356456 310237678 725036239 811733280 259589640 237980956 223123583 561117605 877863370 224913816 923089809 145724611 292377475 796616999 177655611 334331481 75832091 245650136 391109204 236241924 525887724 715572148 232750685 612148060 210366000 152766629 91506293 838110772 401097211 605596687 41387467 931236073 505805669 308185796 235596008 602140686 143423018 867833880 765601751 697780364 178392995 770341278 460653051 202412785 428437829 32615031 989161638 739434770 557944940 303336085 72163335 496371704 980498679 439550779 529812900 309401936 834228894 278241544 648686416 678804614 260114434 881498151 386081433 580660847 162454540 677727760 491440364 227017276 449438502 263039330 161997328 636325238 891741636 204893094 130468547 446201419 131440694 986228279 518891145 637952771 799125459 709057945 342225689 125995103 461426999 335226919 145343544 831052093 355782271 53477517 56313468 634147352 621566166 132345481 916710729 239234942 831891993 383400540 607453045 503195372 569344529 305641249 179084358 104001008 148508826 6807791 916627869 401447406 678253110 629857682 840893080 868184157 575712314 91256456 763722233 787680856 72664287 940934614 105940416 361188765 865394767 449264949 156592034 601398611 74015354 244066682 365623358 557174945 869149662 723441614 121225722 688422177 257052256 963958111 118166134 461102695 680391895 842274430 294471093 108222042 945111228 592816876 147212431 11861683 823130310 81681691 836351738 412506354 520314732 980588236 794772317 651277056 797981062 60188768 508180533 321514727 31734663 39739739 485730399 113782791 967337050 694933448 738013837 883463205 408378068 630707857 980041526 780132813 104726289 532293767 718531656 832669410 811280640 277785287 815542184 152608080 226019167 328921673 365768804 8131941 521113801 96762265 242644038 934853225 369402710 892811959 411598795 112025970 89376522 936451644 454481061 900529145 313514907 420940209 481494524 309219121 751468729 996378971 311604899 582849514 188942267 546271117 226492080 552320758 115536210 761959637 333533330 133961583 269928060 848886199 33479152 58866281 299023749 722209699 3547960 192786696 711595044 691191081 218774897 979238499 302750323 786962230 16653166 183867825 871633137 161416710 97107196 224690507 480577144 321664917 51781705 127401587 772487298 2986671 411931398 934866652 604147435 893952665 66697418 166265531 243979744 196053464 237697973 364299269 505284712 754333994 21195220 788195162 544093284 485886965 752229076 767314482 858053638 493292691 846881221 990912273 678346641 765315881 350488414 777309409 854849541 18707145 788242030 311900398 900374202 626192089 400820537 926358216 26192158 358573870 362123925 834702998 806788428 26066857 660904610 577156165 910409300 585487470 96479718 578702639 771479267 746740968 230975173 840136474 841679979 676631433 596294094 975472908 181777528 311014500 820279383 942345724 513862422 144754159 337647032 973383966 523305486 49212195 111058364 206546248 602705837 845231680 169761709 309662169 506307736 737837822 686928638 810196128 933503125 209493788 192385838 758339061 167522088 643472525 547236663 805042362 727626711 969840290 319119999 744760591 712765838 892940720 61565723 54201632 507088907 694576305 110086380 313287043 552866214 488615053 801327147 136736476 13660454 607668786 968372533 377487513 275662576 889632788 182351219 463624408 301247871 129687422 418357491 824088245 344478128 276784270 345478854 916269315 526982151 978513406 236410953 91491940 460086240 57383770 167650043 408053578 568955967 195649177 675817143 111388507 255584243 580567470 993183858 217374376 36581843 991210633 887881743 117519500 596205484 668030997 293761008 477980601 267655959 537539121 321078425 723354252 797766570 903732987 652627554 314742819 287370384 57992610 257649024 483033345 720882738 469458242 907336734 379985665 148081704 190992222 283934430 215527426 792003748 686373978 730500615 714879104 421851214 962050818 749398051 627325052 60770904 826208332 615817941 503955787 622462467 957664309 617599857 378853006 46076303 279360059 600632427 582080006 79594203 919870294 943184070 711406646 755340621 388182124 843202463 212130890 189330078 205484495 851533410 268115242 5988306 88607335 144782418 597048958 766921406 344352127 986372338 946576435 717516343 471422508 387109529 117210788 231453350 34333112 135895798 190891276 435021087 153055623 239421265 484537856 446557750 328557361 148706924 235878195 296262111 804712601 910980591 334464949 410126813 168275208 889663273 882010444 581638510 15660878 677238893 330870674 477799498 8482544 900524348 908033190 770552088 969011515 79617547 280032775 49469051 12695914 625346558 287806841 735477332 706705130 622601784 518365301 472110264 594812718 64637851 667646581 473616191 489000258 258179470 927097824 308927376 384328222 420037137 80110159 422058714 465707911 256455249 491804630 120757966 813339762 748375194 426919309 239245352 656778099 562369478 584208222 757626905 504791992 316157089 105579011 691804673 56023049 756146215 727687942 638169812 581334486 409145603 592486267 296671559 932386050 307263274 576364717 791436483 372924761 779789189 408259659 388123780 212681778 591023615 944281865 731159665 33771016 170540084 448730058 81306331 343042345 29139981 819343388 390130328 226426580 902336490 8331436 878212935 915355441 95525596 628346028 219445990 395969330 73468966 676317337 171632421 832621079 680551913 946144195 645271439 291831695 404643986 779889478 753583463 603294928 567042796 128429944 933433492 212454770 321085956 324755152 644268352 577317499 833365801 873153419 209658107 676685410 805093461 868956012 860761049 320277754 216551417 869634008 151164359 220352438 284650587 129047405 508015018 655868793 427206616 859723693 959750542 452676850 908392162 406801535 609905625 518781297 527123574 153998306 27192202 235639446 156916021 562523197 50924368 684836370 407020631 696612187 533441662 395474572 757680180 718764174 832436070 997053593 886686718 158902197 262986861 273809586 804836816 649661147 279858264 330189543 501054090 995432199 244825087 629163086 830667902 41708727 793213674 601109486 399648095 250821873 971826064 315935692 472798582 645503323 123378459 45045337 375349921 883104983 573414436 73035910 699759558 740126648 693910106 464077876 337209768 255077981 946366293 456680959 457862391 206525717 364471671 608250433 300787589 230110379 201332298 733172117 610042091 160255826 989986701 742814497 394563903 520739658 117596648 834925065 195879442 577526504 993436089 297595614 941850734 300810229 457465153 134535610 172623701 811459955 956512849 512156141 570459017 714482148 257926496 132463139 455839256 122626404 599641165 480373159 856698031 525875263 621265749 364198901 457291642 342601561 180118225 846308676 24608546 696991242 516791578 150968374 800468294 515099558 279223473 514578215 951318395 111392760 350035649 156849274 827266093 450638134 962753417 681130009 258666792 246995379 560099592 274907943 681145399 612673563 233972241 191261824 510821485 239708262 19883036 697433128 801667322 773612409 234239065 173733931 534393440 41893638 468551942 815683597 246294704 334036390 992354858 265754249 500875208 607019247 343703946 623868699 798917632 241591611 14808798 465713544 392434311 256142277 250269283 498505539 467813073 60648961 610980593 927681149 408386755 435796077 110501896 867783881 873630308 365595465 605609311 5727216 414980120 315521630 167631090 803886892 27428286 598633894 692006814 317040972 715673233 502747977 536677154 37280687 239975011 3149580 59023553 717526438 387371644 248225102 804847806 10544114 658170003 100178241 62444787 295130152 71185539 200259083 727652641 146794429 368095246 791580631 635724917 166146491 510015098 268001421 821756499 42252728 344098480 433281851 100252990 387440680 822817443 407839372 917287809 406347241 553526365 105528631 528687517 134843997 422632041 399494630 64804233 222031012 550436345 450418323 487578238 187697160 221736028 895064573 50106855 798894786 8527536 969840349 381542775 975437348 304309319 955882702 975333844 472996087 579939127 840364183 312602560 376393647 586855528 263506345 201305834 610833881 327752113 390664476 816409227 308561116 973527399 138819391 693166777 995676720 600259262 883213015 141075709 839551035 514079532 415345993 384793524 301472755 381783319 338402036 261137970 560424711 733052799 559148601 342881005 47077006 190235281 884734824 480830578 408132724 986214167 329373260 330325036 6566949 674637661 964099048 551705317 300040986 490701997 243808086 653499455 302610564 793990682 294644140 185531220 802275877 884483055 939527422 792611388 563818635 449446318 326623086 873733667 521650524 156228307 998141863 772073769 765611331 877152797 888940291 519092436 158913273 837081685 816464880 367628027 340179454 530104568 259468380 589518019 792793464 192277627 674808920 436532771 473062594 205575827 97464589 912217654 959700376 619011076 504717449 55026498 413842820 815033020 710406489 724508798 445307395 605663489 74883809 319999628 157397725 976077206 863215802 369867179 173714675 286453773 423794542 747983361 883139393 954685462 645394096 187835275 765533638 965365666 917059251 182294117 739775837 929427001 162105976 52330257 599359624 38426020 431690983 297078678 928905943 26502532 662074541 502339373 630710558 527743295 167066715 73447945 885673247 962772359 877326476 954901349 435081074 582015544 420329116 55504576 702047741 23721153 975454677 372519766 207087782 822022549 830325749 89855998 940397809 16380159 928281289 825545411 165771152 612318850 274095171 499414889 133268771 105512329 511145664 635308824 345914903 740264646 50876381 24099622 969783521 298881590 398674584 288999657 808227740 172784537 367791142 592111293 667614826 408251342 913747103 80905606 15260934 839463217 401028521 567116717 650447510 335343760 76079511 308825313 208120754 11448638 294040469 469632143 102597698 967098561 325682643 743807780 63388759 692616743 166132567 115411718 975560643 239708759 991946087 391024008 56313036 504263142 660249791 733865273 519801822 120835076 840159188 294467777 180344754 771131384 978412534 390411774 538659438 86672846 44461942 816539042 486513709 867436186 692996103 74874615 785695099 181907285 550737456 397121614 653871693 396054586 332109196 647442013 257089507 487678090 407998457 307190114 344180642 91892144 194155695 400392919 828892244 368764471 225926657 531332318 963062554 174575991 425001729 993137407 205025038 839740910 230365884 923406097 442130468 801631560 836319278 269760067 811997937 51449938 669423466 714400323 252908527 546947183 530402406 84077685 677340600 711883345 978123934 253037789 981409311 433839650 369869148 826815743 442292871 638974983 176993842 293035077 929517221 271625674 348562299 430129806 284635566 151726528 716471809 622698110 277110138 683677232 680808556 522017791 721985970 379309724 864594064 171513258 102050444 184693977 776020529 544352130 58287624 595880793 957267521 942431425 22797549 274232623 858903731 968953664 487909409 423144793 452520711 111758304 201153045 955388682 677933000 283675930 414646498 941435570 61315155 94315891 201014702 188979248 304198500 982938393 425930555 645169880 155591519 329820803 681660434 949363085 949383185 682986309 502807560 904469581 925552611 962084777 809339364 637598372 513802616 609684768 527769472 875213261 693255423 307955349 657447633 865426949 862320883 8942682 742431362 934127782 456800544 796603674 212541887 419479787 330744588 657157192 663773217 200108205 113432228 98880202 245311335 92228232 977682307 522212575 937647489 167982296 948296124 185164308 897414526 35027005 441673943 433971219 146814291 317785996 308976269 369306296 67091152 197296317 441587537 614104879 179220442 753507763 529304676 35821826 729865293 649618995 514997264 884527039 368025800 785091103 511085090 237494170 956417681 706531535 568894523 363090375 579537309 231664266 731272720 245493664 914187262 547566702 145377783 648696837 767823223 5415612 330863445 6156252 773066905 63785087 156066563 28510491 958689492 246211345 469511378 230987923 762483496 419647321 36184181 559390546 860687263 18934861 956943593 623493380 756335223 655775176 481092133 789771194 110437795 447276045 508723128 56640515 938584122 268009336 945578815 165575602 406291774 918925891 685134586 3174707 679568253 787225060 333018470 445568255 403332687 337732470 514361251 739469442 90357921 538226350 508556132 110266445 88399448 675871872 482521584 648165442 127305329 338539316 131136107 805810571 665611813 255400567 549467708 819468435 349988802 225318722 651231508 764794888 725909322 244648080 818044350 896898103 941654875 790148545 924274595 545703298 384553729 92824447 767160952 765031205 775035218 577381060 580481053 883638019 867936395 547632497 580315800 579322240 148252210 873240850 540579551 114047199 760032858 690193985 466954344 117354159 853454747 441683705 119425507 473716132 666669018 214361506 713034074 955558897 680986945 329048708 420908988 500867502 327636969 284675714 735293255 769940957 547277700 147293931 74928956 770021410 307084186 539158592 662854238 664786568 373697390 604782373 238190188 307481844 722516426 436251061 526615677 97847201 931075160 495339963 149409388 606678444 742327988 428195701 251369446 770547566 289672811 809392385 66488204 216003147 939312333 882550814 842628178 969256203 635648180 599609479 578350039 94781106 631575977 376660565 479760985 229540790 478490124 239872870 225223932 212486945 10110835 68068681 976314262 873677547 449868208 681447264 609749411 671620485 739635931 193159713 465730187 851568363 85499336 646026264 829734601 771516037 81344472 759585344 191923535 529481320 888907924 157795455 493503372 701029332 127688834 223080101 974134992 418797071 3380202 703328110 332513145 950455957 230763553 184086317 528636813 295995211 598573586 674592386 922207015 691663781 645708356 176502357 944639469 657797617 311459904 960140966 781241821 541852719 606709010 238798960 90804119 90415519 253429000 537673040 65479948 188631697 545569615 387494837 179916279 706735110 1064191 695050430 120683306 780177584 29007623 962323661 889505274 430703386 599806748 508527900 177356918 760857880 757585064 504093586 975934607 561603555 792153115 615742575 40927411 592895395 7437183 842055896 205520901 455908765 5881622 969185563 738873632 208252933 938456293 662105035 927118036 504800850 837328390 683952788 634155680 713764922 730865680 659754600 285790933 172728835 489355069 621793119 768538700 650136720 367788018 327257688 820553776 655911994 660472247 668797776 823072645 107151850 786560271 817353876 325274607 260840170 583887674 719626100 962335894 585803278 554484845 114562624 84337167 67760158 131810816 686432446 424803205 505467728 692786631 828978636 250974737 830464032 782029704 401713661 301439270 465541218 975059170 313430351 571217774 452277798 506232999 402960066 382327358 729235438 451981567 383039442 501536296 754083164 964656240 55499277 580811588 921083068 374953485 658183901 336191425 71641657 210651510 311304082 365714959 32442091 106253829 481768207 264074170 561458420 234160246 47526598 804349564 9691804 543193307 856415592 250459515 800494722 882714224 362210373 481916960 73667149 217034244 206583151 420349865 617459259 915544828 3120285 883565958 42527092 695745433 643961701 878799753 438942189 266297962 321829844 864727884 204240575 210593777 762942124 462777679 660515135 685387839 290245827 335188476 938192945 862695638 874192345 474917588 102286531 289718411 759307103 921231554 835191969 683982773 302400060 411875616 157784140 240785903 509336640 8310604 129569044 212543098 713753191 65129358 680155794 738365625 971859593 310708039 961316927 926620013 39055405 716349953 487971353 701435228 586549534 841926540 306711201 290900953 678067071 297667363 435153984 924533566 591465088 654366418 964189996 230045373 605657087 827920572 559815400 898590554 776018979 849066182 687366332 548964292 635167461 306929888 871406171 803396623 565042543 429513045 906511833 189828804 506568412 779527635 364314818 459601104 672312364 883868712 194285732 876757226 818344772 283052393 234041591 887494419 975503437 403789499 914067214 646441052 227454062 417516849 506182991 837191483 105047673 59006945 736657549 883745870 274817194 502436494 49473970 847053582 655404376 638007931 848294711 101823232 545554436 898349844 620266845 993920863 463898019 936390677 98748143 251929510 509860814 588800704 915043239 38093047 794608081 857234079 557666559 879622657 928349400 375418619 500390574 386423358 327435383 785398415 317843637 488768927 645979913 748110165 162419613 2910617 559536363 203631776 320531128 331613511 843144015 120076436 606485113 116827094 514828567 388595134 604984900 689047551 481041315 859029789 636338672 161890868 633365575 587692772 788181371 236666071 641995415 113062507 931432521 417955807 826868755 755702297 774001028 995715896 722809102 119902076 490217599 656934026 710807822 648091881 974477338 214591620 565503313 451211032 676136267 979980842 879807044 439390688 897231442 136000168 719898009 627342269 445626424 471824884 856637269 593296278 243786305 801321222 846110609 425642045 139038556 31432960 720665262 719546102 487330558 794820876 448252694 931869913 365501860 146193806 170917604 602440352 276366438 424419495 742426086 978994058 355668593 136672540 726344568 516099509 430379474 628038934 708722176 785002783 526194524 883653817 855446999 118372756 670027642 496068316 284786349 460387463 127306752 797015158 329545857 285414628 698172419 898758485 105296525 411836593 263008462 61726279 7730516 375016189 414796519 222825629 402718233 873728992 103456481 902994291 899805424 685547108 999864764 539131840 57017727 897786858 62237801 624489833 948302698 578165789 268644173 750672497 220809607 760091976 41520895 182642320 763166613 781300577 620303091 641995569 158710138 970443719 241856914 101279247 565656784 873584701 188197846 927244351 876628256 914537721 909216397 583840432 580386998 809451547 478002016 769325321 652338691 134948279 130752895 894208516 948816542 374648867 287155546 503646297 915175797 470455241 741350398 273078643 755655196 149003251 334190738 104589493 106796718 389766571 854543338 960927243 621714186 971652485 368171166 651719571 713610386 859206492 197088043 42388992 218044853 856034553 395799011 766762148 609039341 969957884 354020903 527228744 341195761 634467633 990457468 230775046 465804627 331692857 319986836 22628281 423081561 77989196 710318662 698151878 770566376 487787353 853011733 742500985 999579433 678789247 604831639 217941882 985816078 693531116 162315680 347569326 190385805 910097907 9374939 78652899 168316728 8936934 955668997 507210145 595849741 141279555 44452623 595313653 112470735 854119559 103075594 471853146 971829501 511628255 36337900 136819921 437642972 653664202 781330775 137538833 364978595 532823481 584368423 241693170 726806669 965598221 244216202 204071394 124831126 700548948 493580412 202444644 964661572 469835944 649378679 652095670 711036866 220666077 6818329 742169405 242983148 933797472 553546838 504788784 110410089 316977699 696857523 903999073 823188817 322517221 420802844 324865148 440795909 911156648 199802052 250372994 381202266 889463637 270295028 181062918 950338576 109211830 347208692 916306762 897163714 556292962 243870592 305013038 33169286 252550117 341842960 163805637 459230420 689026258 413531217 561740633 688937122 407550181 246337934 412420073 839802619 944008607 453830495 679808645 876640599 862128541 666167664 317225388 759366229 78149013 182008205 773116744 120315201 372349237 5544166 998314810 940617866 584861930 190457390 391438965 597716880 915293932 980499206 297865267 863329797 767668829 646299708 343756115 859609504 609252614 796804309 206218324 42436837 422860229 143816119 862059083 703640769 653590764 586701236 812130079 995466755 660484316 501854109 2578399 109786524 849416321 890368089 255708270 488588377 896285096 659630633 861865414 749508801 584207240 543314200 553086414 484575588 291740729 27055437 233450916 280102704 849173965 671014921 339079768 810963448 346047682 656638085 24159948 224075374 550565614 751815769 539093555 778014575 796817925 287264014 90377833 760449050 279548819 788407460 245016255 975190248 84669943 141488952 633551929 191275111 731538391 176551023 959842231 983392410 572502688 481685699 344853803 406301775 197572114 279664507 707142471 918077623 623131146 717814857 102710230 89268548 925581132 668982695 90044546 92832660 401098082 590011350 964357407 595384534 390960584 217955216 373172863 335390557 687719838 396760148 938781800 502559989 393630686 109403277 775771940 711066271 951628363 114654938 540813808 269063595 522457065 84907554 595378235 451605855 788762300 639249471 987688933 103445975 272405019 7953496 767598700 301249220 103126232 712737816 888486239 559090548 392235978 394230999 631039237 684786354 502015973 555748882 96270055 679645835 85277677 454245230 806832333 966941706 170533054 384328296 359420675 347839105 643614217 416412692 379384628 769349250 333184011 467982723 344633956 930777348 303588803 42253410 239195739 476036424 710506607 629473757 338504999 527017041 477348964 620748763 291950043 141953965 511699530 763932202 671326046 30778507 712738541 264747038 151753987 752382196 379742286 83167507 408759377 851640507 426449495 443281918 309245615 138655045 11692358 901028702 833735 848113815 17258423 506379848 828342175 939170014 753512516 372232988 616244873 546393181 227270267 920448776 511601553 874141530 786172741 868554130 539430257 794755220 663413862 133333997 225888141 986363625 382670156 130721430 465304876 322147451 532180841 270555785 729132060 42604331 874936020 201308982 548962540 948005862 384228491 521958122 885868218 269512199 229045124 943212194 453916209 83889969 177720371 366935726 934575297 838178835 43342854 714927523 300975625 800919477 81796934 427054316 378798858 349611916 111293412 148934373 168600271 826721474 19396347 612450909 215323878 207718362 688428520 547264775 3496534 350198491 973502418 703326874 993046889 986831755 466184054 986234859 170673091 124309317 908962412 501163336 59850166 956713253 583605021 194657020 812631862 695804616 993163199 653038585 589733028 463303341 885114036 115223500 510751869 694230054 830672718 207573575 857155457 553133264 356774 669863167 284428948 737392567 958572845 442551467 415382954 923750083 402222646 204323693 732187772 9144757 122442436 609771672 795793445 561751318 921200939 165145755 678266673 736468846 90679338 961395125 927717567 722272450 491748760 996493906 793709175 425821874 196946760 303986980 127308692 877599455 682847384 379606165 252107555 415632958 852729781 651259051 655531884 407930916 966073301 827922283 139474252 692021343 500817170 757339303 957446851 499035867 370667055 190075392 496499505 451343554 537347914 621587025 997954648 2488294 378963624 749618620 597540017 604013952 472027152 601317659 101291903 997728521 876548446 370824990 685210810 267964493 139873244 62115409 582513301 959700095 134759178 613208537 943264650 467920244 239941150 82458069 397239513 105201814 158392470 590704826 793452209 127797823 177172753 763101334 454980723 83684322 935660771 736809811 879807799 329068211 854448947 836525444 888497630 658585899 373695344 46846912 373118969 336907543 209638245 624917927 965542730 978822125 472708329 819172589 353206166 865100255 347250093 885227655 1144924 167716588 80664377 644342057 638293544 579311705 866456819 905435909 449549913 355126970 92227036 229584198 962502452 831100662 180385669 450176912 261921993 172750134 846638934 710666073 386120714 462301983 55549235 356223631 28457608 136977591 266734022 997520610 415108930 823846458 917639821 956752182 152843895 497087081 523350133 136263909 883440692 31835718 99842393 832018697 112566923 727575389 889902899 500415332 565622223 482018992 586537261 765780705 230717037 357726722 602436511 966746789 258234602 502122651 145873237 544741594 231550116 351285620 790940047 562507264 388048431 428053038 745573548 762395569 766119317 317564247 650063318 386955089 135229382 232287890 651795341 52673580 392362020 81770581 377015569 984355922 535637789 817481387 813327321 664776309 754942496 328778543 608714300 522554392 304944547 560502449 538008246 78527951 240552944 111162133 643595336 668343482 985178633 97116068 277658777 934907269 79829827 852135262 785467675 661541709 596370223 394539100 739742378 586207722 920819800 935154294 30598734 973294761 347124687 202370684 371067005 889152135 163391292 871028363 156256303 238646835 162536123 929254656 165940720 423927680 754411587 657601514 5253022 990217850 754773194 73255185 38479054 406047746 586729824 381618481 598318893 224435661 281305576 760156891 243367012 400235862 790772856 792768149 542668372 452967208 640975619 766838670 546026698 941340382 195751750 846576455 946906767 545073766 621061564 441855562 523408929 734409770 36152413 98090610 798374014 872931726 451073286 189241943 952130744 38722008 798293666 598860942 861819151 344271058 540463705 671849455 285119986 547365002 484335523 394837764 917037063 237563382 399142392 413372087 921530137 855869943 478739104 752607594 967734844 78685298 1718187 142419437 76997809 647189435 245363765 786380301 21573956 461817542 603711873 217718402 28077480 292114102 922792132 530460985 709992814 160835404 40214190 34166542 647530822 31906039 374107205 873648513 952561864 527668749 526848536 949445039 429897008 29488519 931907661 403233929 692861803 174407354 897735067 28435842 748391926 461928042 745402138 475018275 918474511 153411149 410263996 526877013 351149028 390022572 557014231 432025747 965883255 524556032 163366301 903561105 67666490 838559156 440331578 666467594 380356493 923624610 578405962 282162393 985719024 887416122 982200661 642448681 953248516 250117397 122539874 927500728 400697379 842722191 17599455 80573061 367532465 654265071 741593437 737420724 198622670 639904365 647711118 231016740 865347016 315523376 232085246 185554293 742373934 258724908 900142362 302729949 569699840 288749406 804343181 332955522 963778131 539465490 531726068 651604608 27134607 462960476 408184944 662152792 610713352 603922350 249368614 702214742 302767962 243536325 357780300 202271614 483070293 641840251 282665371 249335868 636154707 789967901 700342203 809099764 294626238 894208274 374288773 634794676 626727567 613405353 260253356 605023665 809754499 838008600 233532736 680366959 451904433 902613553 495639005 310075376 453085338 157401478 513812932 557261599 75848793 252334097 382180640 413982357 792367555 664230417 396625430 481407337 748534955 347971754 907536853 812352001 758997342 220556705 906393648 304578722 293865776 110402273 885570965 791623698 145205352 326353081 685843941 640362212 79692928 679572671 592208268 924834304 40961256 21937029 596769910 41166801 195680166 152809256 669776645 713782106 65504062 749831142 787338950 737919534 253841399 705595971 361303146 778543577 582569710 811689427 897976666 784241665 729698462 845561137 350940072 524725575 309558751 158226100 323107472 34430084 777733184 404494056 208952963 819083054 568912038 292966591 115429195 700842740 257473918 843421674 881167097 917382475 704604422 346886791 7609234 622049671 791193877 296476470 961469101 73982857 948356407 311839437 454466614 686815040 555269041 369466774 376447315 178679920 526429414 249701919 250613443 377787735 853525994 934624619 855918612 940214559 859031477 283097599 397495694 197635926 820508802 353595477 826224464 364865622 994784048 759886958 256779826 955801686 552244930 85498425 903328886 190278096 319904926 306590820 532613567 416526014 357579748 477058829 535665268 181185552 865103113 170470727 151075216 865928206 256594026 37351380 241603454 634129212 532541205 36421589 690943030 902293829 828809808 508698259 586934608 768819036 415345816 796873052 985313526 665718723 542026174 407057491 924166656 603063513 898875424 57640008 829455283 602408844 25376968 788573834 452206309 927363526 868928231 655780829 158930182 408652983 500442158 100614274 236083515 640240743 357031173 426112369 161260126 853242803 789817008 955071782 735325407 193578090 211611894 111317478 950914884 708314672 893100056 479414573 338504121 448651065 43564980 589240133 553388786 665428397 272260268 942758203 76633906 74322981 583708914 820030167 269491684 83470345 81068392 574060025 763540285 429788103 29749081 966827672 129550416 695758922 284578417 60258140 345667763 846856072 139694770 789625826 398676179 333382372 350933570 586191267 969880249 601799453 599300363 197748919 548997406 619061546 642976350 741008869 1894762 25251700 13302344 615701377 242637377 548823288 887782354 125858194 967037151 454480274 213524280 654819481 764151864 607802921 363395298 29643089 670424660 224130123 766327940 452203127 804155317 688725718 323330205 619128593 162636906 468439257 75954850 995423536 512087317 589579516 730237191 838521708 303135526 276269739 919122769 605758224 849394235 532181281 122483431 517762273 345725993 114259396 474387607 990716948 773430235 288884362 322344365 820714592 993840169 871336580 846795291 169148361 740366803 193700217 954142961 889041506 413049621 364905231 274952507 101998921 2275551 263566279 37900975 258197444 781174002 754311567 515560744 772907783 523814235 816408698 984329759 554422761 997859724 178173191 762697757 748517494 955865161 327663567 931791584 776459277 636868783 314141822 524937643 499262964 443018819 445194010 235266132 160320791 684735996 836493170 247318767 282268303 960029802 413997424 143791264 427303602 7211120 420869274 912518818 349039718 694975402 245893433 411323749 443761381 189826378 880533587 447481066 545438087 882498818 15150408 359659438 773621746 298369904 464154345 969799760 527717764 449877198 735876521 106390768 217530061 40610358 571425912 396388226 221615476 458378442 256565346 526260939 220645595 288925743 82233320 537960527 842698761 669881473 239305476 813317763 436906337 832081302 744750717 10646061 721954675 493224502 434317407 191509191 618820569 250845505 770932444 812367311 201341911 364506938 983309162 181270544 554822537 636523616 631691509 461644315 131596662 324225346 215971526 417697682 681025500 581533440 862644799 952702521 542050276 6926529 968538353 697565253 625527921 532594474 860395341 350285119 388372020 158267106 132231355 357672611 45216895 479118748 621929026 375982184 232021629 727590534 866503675 325107903 379105195 527205835 326106073 504708814 564986371 78806574 85440029 217650604 518400607 929113866 764516345 974890145 565553272 939662140 59664268 14358838 710285589 774658161 865970435 138054695 626374790 853265132 205883950 574827646 319841014 291302753 357511129 844173881 54531057 202178035 354483252 694562027 575334009 381055863 866268631 731131824 119148503 990893997 701292305 217418667 894645362 998205077 267023378 501771466 213924022 525974670 776348619 657969173 870933601 541893803 337635337 198319815 753533841 982244723 844623609 543653136 589533194 976052073 972322211 308359786 624981193 814193840 225548323 191763292 464906138 126313170 986428966 176619422 720597414 249011548 316409220 434576404 949499927 702659242 143263841 910991858 848845223 78986615 104584459 760416883 195600732 100519251 377448476 536827827 9699285 708414993 470413127 708244295 706422782 667160631 509770552 869548411 297770936 67097069 881097053 44562653 598999098 382578290 791417251 219582614 6072033 631062174 639343210 440184049 792318022 66935605 217302161 930271773 726740343 103091924 218577738 679683839 640838391 959272684 429501024 651780775 57238661 573309519 742562368 40332419 315271006 897120842 251552054 345205086 314722810 360134147 332516686 829554530 788993835 76408974 959392360 755998160 764036494 291317231 472453502 423182805 12216203 964617689 839268263 939183956 602432409 550104461 531890242 390303984 859018836 756456340 431981738 561968655 959395709 549965619 471509941 502186425 862405563 389901898 236725185 181311872 98416966 821510031 76330003 148831019 228034580 60481024 337328618 865796948 552154530 183429247 545912686 884880418 949019929 235748154 433001912 304290865 344789649 277091080 904487605 617804183 913569543 276237418 232961733 280768167 899567486 403561779 117720751 722425738 111821035 498969461 761102066 777383882 364064692 669675195 356220775 228357654 452744155 190604086 436849065 904934401 209005507 379785958 381541612 301964649 662757656 797549255 752597306 900280678 58354758 750797646 199536959 902883679 643203322 224888291 170884954 176302073 115223778 369378813 398370513 747601324 94647881 349706332 147673146 6917801 646626477 345518335 700892947 609535399 770323266 108085360 825564662 825522342 217401029 402995146 374622350 120100192 143299216 615592009 79072226 76382392 820211006 25642027 376556415 822024586 536594086 972314756 829532520 210861090 634205718 957936084 220284600 906633456 467594679 398641012 88161758 972608157 207377739 499602489 899511748 122096196 322583763 422045620 411826410 491158576 120992532 595765757 489354530 215745338 899391691 105585294 253365729 135514701 330038080 121745427 738363547 847427629 424346064 714564840 327162937 359277738 70818974 67048466 943389151 479666734 922890803 854168220 355484545 678056392 200490813 325193472 564814002 801284456 439508424 893257139 697623741 762854936 10745929 523824935 689765602 643827433 924299534 812661275 226145449 397984906 108875800 609809068 541995794 907661898 625071205 633720878 384339989 985463043 631147855 153112720 614792570 688340311 5850473 813276456 620035713 253280052 251899723 462540328 870689480 10936447 849620581 612690304 667036804 364514801 874065378 271735741 208917548 261124481 942306569 961789969 887673617 602156590 265723103 83658385 532043244 195755367 703085623 768895561 960396896 380688160 371133123 961663361 84291541 773150442 478508378 627390430 811560725 18438425 392684341 260992646 577380459 288031891 884336983 689255105 936494760 419186912 911416427 572073091 524911765 51160853 333553669 657499942 913228530 610489168 124908358 406722531 963582138 886013786 574131981 238479679 744023801 508250017 79269122 532174760 939101208 78819294 455314317 782953269 163725142 407903522 241575046 515734829 488497102 555322734 877286960 556223050 525472577 518823835 408764949 67089940 575738450 523984708 426545350 110404173 446902732 533579253 5299907 16163607 713907488 335632755 981231636 306758095 366584059 942338548 354782636 149018980 459322568 453441229 332468155 298302789 198435653 101756643 802052934 887897833 393085019 230588699 372946095 344784729 402599473 683430693 537189363 34508945 566396410 111819596 23520161 958542806 992512414 166783355 800607400 433226659 36812916 522845721 563746269 441737567 974960351 431183255 67576979 965063425 547453472 806291590 887165154 718886468 322279102 426451742 649767090 452127454 53335723 749393944 765562175 863568087 320052481 563109640 337878410 311391704 634230477 419105263 430469964 549721114 11445549 607040622 358354753 511856502 516812703 732401569 792407913 160897534 858001391 828076053 841518815 343917486 330456779 93947331 74201199 535756425 196281637 597989806 158194372 665446938 227783163 707482857 753921310 518694277 189174264 720377754 529468663 832289123 924030460 984204912 257298 268618773 920433186 273922430 919130522 441748361 492660571 172161559 951909593 959986810 472953894 58072954 72850235 311625367 157038976 395973683 44172990 935169554 335034349 189808905 507952638 100866745 35927380 729853425 728784539 515400809 272071894 479230028 526492987 944050976 494676814 584030033 956542899 338077092 397694259 654578753 304896738 662160300 582293681 767731592 801042930 314777396 511182715 589048656 997989493 749728833 744317291 372047590 816480358 608975291 718995053 319683832 196974282 591001699 499450770 453151174 965548929 536990383 115865581 806218699 807429823 218158283 895310436 148019328 989700745 545545066 197743181 353869658 766363614 58890292 204897725 277737632 889022510 70087398 667583000 66212661 158947859 61013436 957432153 750985963 728505511 775619827 583686461 277605972 119277430 623394996 137391873 483985911 68026373 878589149 498687300 593470449 956247592 853303060 317959992 492441593 965474952 778885643 400273108 964717445 870436211 689033674 747635073 502311969 720722680 866446 454661784 660340206 747097998 553662219 758124979 630185850 389990320 951562503 510253712 530735517 286404329 375871263 474955523 762313546 43045660 44233429 120023141 607548703 489104394 77730089 727823364 908080241 159197352 932617806 972882583 298782572 158914794 716880249 649706006 554575159 547158547 355155556 560261538 840247613 443520779 553037383 919583658 532524075 219822465 429089630 754753160 166015059 370155347 141831274 429663319 650446415 101509585 234098847 789799629 202286474 172585232 747369548 638001596 248492147 809715386 611326132 890552899 351023328 928496344 876513239 566075646 385787107 610878493 517816128 496236909 565770673 941975215 99076097 527596582 413524583 184481781 687907508 896787074 360571679 263728883 87310538 561649424 504666588 747985018 952628257 67718630 503446380 470542790 808724507 423606396 311444595 167499351 13097676 965213781 355535241 770407753 452990696 579705005 944999754 417775096 82233978 602013185 992832197 813101403 300804707 86602719 308861613 356396640 951873089 636523273 737437530 429332540 980403499 404580381 304098998 501574676 491180480 682682327 330157443 199502816 658572590 30028059 427135285 454201186 717108540 582072232 127648753 659260512 429566037 237541572 129799997 253618354 431346945 936012579 852383431 767852504 248319518 212113419 975934436 406183881 384920593 810519411 944282305 222545850 659520888 661074559 150202278 266461442 281120351 871617556 919464277 413209630 720508176 23515409 584129674 842957994 360998234 58557360 13796948 503428629 738065702 207845790 848685518 31049200 135115098 814732282 547906250 461939809 679909752 39153106 608689169 216314157 216687867 590077670 833377887 237242361 248877351 453012622 485235019 855621813 806650674 928345439 421138386 54067026 269820042 819042598 408941517 499629286 436708420 12313109 4960916 663975116 921287007 913142587 430374840 697791724 173770989 85598961 200746782 683530924 575447828 773480133 689686209 561453092 478358883 92794993 482661531 249924355 306481934 330773675 272956450 216884915 670304557 327729467 33971138 553143802 340421025 402405134 517460436 191414575 981271927 804943323 94921741 434762314 145205463 911694737 142936559 653972053 843714210 80788353 234090043 318839195 730562111 216869079 747085088 58222443 73852788 490926435 883817720 256280780 990896482 92295417 290919252 463831765 541157766 301786498 338609011 88978048 435524508 341103834 634674425 702364063 30656096 306872691 294005440 502799487 121825456 949700112 208583782 176704058 935256646 581113891 568587618 461038955 95561648 936406537 172700014 736513190 259171591 968748556 781958002 490597967 325382767 5658744 369300946 829815159 255138682 648763200 390425019 884952344 789750449 658612573 643154299 896291328 170630939 185642012 63306740 288060453 243377838 54243669 667815003 166134020 200726911 5120727 97718956 903203135 238724289 290807877 924108408 576420406 483970056 764517503 342026672 891662375 340669760 391338559 512979511 492604202 603093834 90254738 463880766 353037909 265099095 339672000 996068658 8516935 279905251 427125764 883959716 467256105 87238632 943260686 31018751 38392699 941830294 949789207 472004426 712715560 627140834 775412857 561193547 390844901 5405823 979814658 171059448 753762218 689776893 860890332 832536845 812142375 939893037 667914134 795453286 324263583 904782787 504054880 625412951 443825661 867747696 526837400 991260306 533178590 760355326 938587373 300256923 487191394 411191793 581419589 440955956 123700904 165861667 250278315 344567486 427039840 916240065 821408326 269937812 993724976 173006628 232435936 329682574 265118884 901203120 298772817 237566605 260095267 400125286 446172692 640595231 207950781 184143584 481604290 596797791 131346198 637847898 409389149 962789966 972198194 411852433 882586040 659983630 771042391 767252046 436867108 217644353 160697238 794474129 501114760 756940662 158962640 788408369 576575944 375671063 342303364 593410809 149967001 115482584 387742168 186907234 788040585 595237807 304976678 487807450 559584778 878951917 640336392 54629378 113720295 677618042 562290655 387766758 926159365 832772190 804927896 323655996 53019579 112135276 598932992 483250244 250577747 964762443 277014226 681324652 536753662 661004752 711271179 101110784 828896235 24953088 723848189 550823972 201615627 741991475 456018038 297228005 446003095 147215414 74455896 147701544 494533936 164489067 802144847 734066960 14138249 322729160 19095694 789643686 586221476 892999571 250114554 997952400 648435635 778261497 238311459 846389231 578410813 497981850 326029723 397355044 557782215 904715977 840983342 386594055 569942477 948934212 179678132 545915664 756568034 856016786 375564309 143554428 138727490 518112114 948335992 685082734 829232896 796752235 652322201 128124689 518184001 423261375 946902890 350258981 567654627 109271689 797699004 415889699 37223871 445184953 376125712 960009768 506915123 172647204 57920269 353632528 844503638 290240538 954694826 467188441 468936075 129017025 135034714 27858670 504646788 100523656 442743698 844277072 17531095 541855240 679135412 127589890 804458 145479249 483975891 128868697 924351721 770768469 364637865 937094346 490398380 272688611 839792126 630802431 779800154 440390299 613347883 593080871 482709763 196069440 217609137 391613693 684872956 950652385 571477610 444164416 66818928 481406848 665836154 620810429 947434833 476474852 765639629 496643985 546850298 960236459 475358730 680318035 593251436 949367949 305325223 521254734 965709731 516591413 218953579 372040388 486961682 542683665 407980962 34200541 268035583 773052624 236598013 984525827 174388629 782944160 55867993 2335507 462861476 929533296 168699866 1801005 209297270 10098811 753694088 581803076 905877465 306712910 511489401 350182753 388454110 778296392 182205797 885360966 200408004 162482456 347487312 84617238 384054715 584450441 925268756 779221488 801727079 967222816 183639361 325981871 343895480 791671056 199169480 680480558 575028520 373622044 767040317 903933761 163598082 721221190 266749183 84677389 294132469 117698364 584449235 371218418 188312104 252283876 432010102 380222671 267276657 70839092 556693340 453822760 249587953 557926489 283981348 178280771 307885794 18517107 205042113 355787844 116075857 792197924 394411109 360044417 426190006 704478343 98508160 549175120 880704786 748126550 907539421 203385730 174579897 217661127 252967566 526300184 529138005 478923568 666752615 699364248 830812878 966932379 190987251 855509254 147055888 763733871 649161513 280166951 174265615 999101147 728891422 298947465 228010231 489344694 330270423 92193276 730006368 731765963 704331420 715820500 27085569 465893495 791296658 750956400 538062221 269354151 766728891 260191615 150773318 270577168 121993518 705221001 346286762 11093027 812866275 967105658 856952889 61971400 575514257 971395531 395591084 637784414 604040206 883037281 77071628 65148995 279708430 15659438 780488145 982507699 969368173 298804826 845780514 743138685 560681434 191437514 853415645 371551186 314332342 150545332 975031461 529976347 955371767 110573978 63599755 704653606 230441099 748506051 612460644 628863189 963245035 65129186 52924179 765867844 124336800 753646728 189012989 428939372 358274945 485749428 806021398 144882630 710190569 45031592 788406880 283121372 363533579 991865185 579257700 218144548 309429995 674332785 634627005 650443080 85434486 521222088 460276861 622363440 56268452 148868057 722504707 917332597 935227993 837017653 322465790 356579102 257865873 819775497 935431072 64789387 193966960 95384030 188347220 349150992 656224614 881677811 159248521 851663828 502172609 881816526 100531202 279381432 919293679 252129403 342724321 289422334 684837968 282896932 564106408 667272176 763519321 78861601 556803246 840172636 571485690 444190623 290242495 627461093 289811767 266798423 590385984 67261377 403074743 472596974 436534299 304750052 253635379 124238019 659886407 255007648 461323776 114607725 590959300 588067568 645250668 430899097 864808546 921807375 564367201 20361059 283908447 242205652 516751298 134193855 806743305 499845848 159254040 275667920 609711278 983822142 779710647 6994980 235013019 255523765 125523811 527230870 649426662 150346609 635883878 715608856 92379610 921621161 735857253 602364981 860918886 888818647 420650226 731324871 226057328 835766594 476956178 302123288 131362186 388256290 76502631 616827881 798488528 952465061 938530380 253482978 674039376 334052507 878598804 71203400 277901932 139841905 659391661 362104691 776304645 318419460 992031068 29755485 253916836 345967423 502221073 791657978 848501839 536022607 598318150 139910778 113242904 365775090 80326636 416454968 284463959 39902044 851995620 72094550 211807560 788977908 769041226 600477935 654461468 513031084 353652468 656656172 986402141 755841663 117020900 555510159 669589978 591304696 366124375 946666304 27684845 991393606 966107639 616451789 198588847 271197673 78563454 163529497 493755759 965079779 158015452 275291483 670372632 527313744 392625645 797154428 494265132 989955793 369123095 713199857 713011648 812870309 158798218 624931097 110189042 487796542 281053868 142192269 640979203 23036042 376680543 541218318 985672541 49002468 12594215 188839316 123739273 114881383 850361466 304742366 687726882 495066977 944466038 352958639 548909216 223908916 470511530 808948994 709126685 64990207 342839907 976930833 896790611 324283559 216669823 555773716 34057753 917698983 113552242 591990877 375415628 603026726 920860503 739749350 295849128 895775291 648731886 298849565 907894864 465252836 947660605 209046487 777884953 242419659 838226040 539091782 68736565 329873054 693445315 372086879 515373204 715113729 701728055 22074324 893154597 713592147 625367316 477720022 245227779 908395671 439501227 937723664 724060605 827707730 466211207 503021571 993426209 387273924 780600422 882031745 110927336 221018266 404940988 684386665 46080658 894007445 449325697 733994107 637955354 703125448 193540867 909819237 185344363 979160294 321149766 677778603 735398860 886010510 890792327 987321832 615481589 639238009 922635083 788256912 420728923 426231865 65539022 550535267 714314449 491785404 693531317 912071681 267753450 46573361 163867029 269589377 472592933 965287884 722882640 316274209 432895221 868260518 348249769 747623823 820507726 178085969 600465875 951273794 501897493 274611056 970024596 56701846 856745860 410677053 438471814 102101611 727991773 329925365 363388605 523127368 249702606 277252554 937313860 60479871 587328167 733705428 112296489 323584072 899563940 78455815 324410826 51751162 127347840 923365288 25520421 952797554 109359399 907306674 38904520 783086980 2420088 177736381 936371634 731073199 419897916 909920715 296797785 695560197 97248464 135708506 668553531 660993819 102288974 103879387 605935881 948618301 245236932 317790242 137678146 798599624 492357531 516255742 723982718 755494222 542903697 340775110 238801253 559908842 760773202 571877136 446441639 807306299 462875564 697567744 813100149 632920700 125600025 131108858 229326020 836927860 842298648 154890110 157704732 528784301 966446143 34759782 417010806 979437308 183998274 747456114 746201903 763368159 494862070 698800617 29169908 277379133 286954137 837254401 475385769 399267296 75404129 614230566 192016084 126957127 185639075 978533665 784956661 554188988 386364616 108381182 179435437 715701770 795249644 226234159 156000001 125728278 742882841 139742341 822059388 216325752 90225324 480486533 572061613 716740911 964234306 654804101 121951753 754717937 424635836 258505627 296820535 946760578 279777541 270538685 621744568 859284754 85377404 597152731 320477567 282552121 38142059 932307172 949669435 23590271 626067563 720096250 765845327 818312003 345884608 507799419 754819825 703911253 18270087 65801049 796567206 624992212 378679559 928731369 153764503 730724420 225137539 279651299 360555217 83034901 167971254 139959892 678121477 68305831 22130703 609587032 63312529 647504514 568349010 271040160 184166308 769348795 741396656 617810289 20369519 460789350 834256743 149862926 855810271 425316422 796799408 156475404 962736902 375950227 670395633 235380719 948152104 387957198 213450119 94745656 844117986 901548279 460270718 749532070 785526006 341233356 246936641 487885562 482773596 791786170 87584425 553016148 229939327 260442486 65773811 268676850 570200729 896975267 449701089 492670642 471366616 487303374 535318238 186334615 82982947 596631041 707305934 409384070 7221669 438984371 307092614 985537996 483959536 575269261 821509965 669000251 48760560 105236689 450157077 904368285 707601412 59465833 896492961 792316617 853748423 215065797 406838837 287997294 360387652 576240452 131270252 940734274 208283393 998779275 572696734 528432417 903548589 714930856 271254242 672875259 787524212 92054004 509685074 987921872 426627598 793428344 161623112 743388580 851155642 764495377 775832671 469927877 226052518 554926556 233986711 197606521 752895747 209443347 453151720 715765341 636038194 936924714 323403582 127505858 431834113 567839163 495266229 560425203 703548117 130006673 524878603 188932168 776385661 492496835 834089243 662076572 90879753 636539053 642782490 408559915 460845297 429681830 407865253 984569378 936315638 419228502 537650456 481023741 937323272 120919459 971119326 338499410 710314005 510334017 331620446 853307115 170129967 950035285 881855712 153829852 596980660 884027037 850001683 436769077 828337620 59554559 817318674 734869715 8023102 170673970 905626711 841013061 470478636 879904620 499533711 773841965 485050468 597572561 286800835 845609027 895398722 633329823 223656360 951043696 927430302 719729685 42584466 556177510 45896031 527774772 724680667 657628750 803165755 761838306 228494694 395111983 118518540 659581499 997339878 7609363 104747285 197702653 471285529 416636370 995763603 564956818 304683188 168883132 563625183 673599766 798181056 217276444 226542214 429494935 540755874 492148602 501979006 148698561 611843983 224852173 23194233 195553640 11698544 866127812 607886682 613015283 995981611 634438686 981262071 34634404 834722768 840874573 122308466 29972445 252729291 423911026 339645579 528952335 244631402 666763186 27927140 359047697 500952918 136991922 912612058 823107367 61507863 21074006 30546041 482364610 667559476 723401949 564575073 290555510 344765699 534396559 610801387 344777880 29790855 463436547 781440090 817970655 985022961 892413904 691185512 141358448 678165850 300369797 124418305 574879500 687064582 135321659 694983935 549995936 883958814 145081962 721018698 682507764 341284801 721729120 688157694 422544798 414984229 914527091 581882168 367754582 509838005 515078885 620849775 739051464 24010667 552406786 844618555 648356131 827112264 53486590 797182047 889011740 254222543 374502824 690490106 554459546 138205355 519822517 96525886 971592928 54490864 395133454 145665208 199668934 247599719 863763711 575432980 611434131 516189188 974229173 279099930 274436035 130054696 565139694 337972810 685777976 30271426 961042899 66340768 422128193 628096045 64298307 45424948 969604459 982572830 688131434 264350327 765138112 914305451 500481143 11640841 339817157 825219627 868364733 848725924 466389373 531893074 562479457 84115554 834142090 714826208 237744249 895475815 123531654 196760259 723712361 898402150 175236379 453981048 136181908 981733218 613913306 423669139 804013194 141079641 209905396 560883758 372433244 270717409 147649424 188432621 688707304 283918679 881265442 535733733 824526026 959050032 254796973 227012400 88689011 363964112 371019146 759084613 483472250 596544998 722962735 541186676 601123032 631120479 909627032 534690313 851088681 193105303 983743625 778728001 723367995 17247994 667383804 791255740 643936680 521696034 638855949 831470024 567851856 173337812 291715335 258860926 397070760 541014114 261118803 920586411 804282676 846013416 666605489 729025434 107749054 841960607 467698921 732631288 718844595 826426599 362622031 602311624 109611773 214443151 664094910 413164914 204657868 728574457 111565484 521673634 264205907 349722259 709272053 894886792 447464576 785482832 745590629 822868407 756713143 236698098 974225698 790566587 67359975 404418120 960995753 427370993 295824799 959926862 440242763 43022622 88282203 273733402 567727723 877075120 660860018 936816142 941132957 736389891 106899237 439543645 462222436 872949712 221250956 836196715 951056629 8058572 996740131 227776923 810949556 964180552 809803562 887237904 195325114 214168141 371597625 61303965 747942501 603637712 296423474 125475013 536680249 989958443 804030027 97759325 542933612 216545371 106373605 437562663 498518662 580597552 834338974 50274503 637642805 873428899 172952193 49455829 945998629 390576062 599927543 625228181 309433689 720018288 455673178 326016124 604432809 14805956 8578797 849925710 555468122 247807548 585033284 379328901 844783897 178305121 544109558 552181858 368552417 396656754 528072224 20310797 12069794 475627868 429231840 417095869 793888473 121134765 550046812 97415817 306043133 93481014 330702522 611647407 203103834 276690324 14642966 469712836 393115325 978151292 436565817 922678067 630468834 625628177 544037912 443797423 964729037 745528231 928170792 877696423 468747515 831335247 597653884 101308426 940249558 385561001 297944810 359404759 56416428 795285589 779275324 680705966 192154404 299813329 889903056 165835450 49183150 302136661 862839067 187124708 450086510 949097499 266848984 637628553 167092876 951308806 552731975 705200852 246921679 723916261 333740448 702899752 20685930 711372199 193513603 593376303 479885360 931248024 688785023 215156055 311943244 35527807 867988267 26657833 444599619 250818589 313162234 683720847 491924403 393961760 427255384 54253977 895610367 415124816 250019985 517227060 349976348 705754845 212308068 545339452 233995814 351524424 344332386 846941232 433311826 343695 323552340 256645914 287500446 402619598 159013872 235500295 90966606 549497756 929170241 253854391 634122732 156009012 444216368 755117034 634958656 141702558 632856679 514160377 791983971 794255421 833528516 915299207 581243962 866711704 457099954 837506730 939871512 295586828 925389607 607369633 213669805 570715296 987161704 140845282 246611575 593450577 749783458 712666715 257979242 786233415 852041106 959080492 597529470 38712876 687915532 678851106 570117703 896636206 483403777 6366530 844106754 981698724 864892427 804881210 111437 911971318 358816230 255833060 918435240 323437333 192284220 392180504 355572132 14839820 15415303 559688888 340862506 790865171 391117402 70666211 827207034 356408188 604123785 453387147 580755493 880547380 6583500 859870037 533272333 857299525 403880575 243519286 968911440 6906260 797512178 241648843 948247620 744043215 550582496 442237407 294927667 230080835 475487900 392038829 574602723 326570163 811966625 18430018 388896409 115381347 582017886 580447227 732715568 318390233 273177160 222117237 775499686 472618216 9700010 28119701 484847553 769183660 49664278 676064049 412313918 730051894 22197343 278014354 752315665 364223671 454637361 110979097 192341737 149027468 377751145 501839591 438976112 744683928 595989772 132889347 106174011 236106867 969398402 801245054 65741495 863057032 135815111 511317706 636640001 29791326 535131970 231185915 590949915 463920434 144065253 157981063 305474230 616378060 354739067 330754638 43165558 261428228 157188984 529602940 477424649 192100263 376058349 173972582 637602138 985288624 453290647 102528057 904189475 568829661 72370323 516866792 531107073 719674175 991477719 739108101 519944244 206440045 899654756 900103801 674923951 627128568 324598948 630660869 705208313 942394568 497757997 658452082 701428616 490270120 931309639 176015137 855055841 170222739 451437607 411522221 351146742 863916750 55608870 296199812 169038309 229686633 640093324 242061892 623046432 63319465 940262340 131428210 112152183 698001401 988296857 409850247 453843745 80972460 78172476 47328842 898669381 221945388 805625125 365480122 263003761 107786841 623032633 462576695 422004504 223589128 248426526 541670707 241309365 635534166 369107319 925855872 164872451 880810566 980844364 843217562 995351094 695454045 580440927 5627601 373024963 41829188 771522617 840703019 670502865 295556925 483112283 744954296 554706176 899923871 910739316 134159013 513905909 751312108 29550332 98189452 277312818 859887408 78716467 803713147 299363697 139207180 236043346 447530250 133335154 607618207 586292536 639398604 197321357 646326877 835721426 354675280 894409179 735939643 268899615 434268042 687268805 203234354 12109461 595576644 454995114 856513463 425997277 282476701 481294473 314337279 420975108 518056712 118425611 176766457 387454650 480428608 928710541 595694567 807746769 873520680 30805116 866294096 573521203 302734020 34528638 220270335 944446567 510303322 517224583 384164745 940224903 455751895 410154071 453199862 648216984 994762228 812216302 350393470 876978571 541994570 942714902 794207593 329742534 208478957 120612531 729785400 683230238 380362331 896280181 410872720 439455517 307266108 80205796 549402886 627140684 68139382 497972342 342941197 871985486 440304833 28718486 792840674 642630426 712669366 168639895 427481134 471594380 578257588 37930825 911513253 916165685 81561433 601676348 748357641 964553154 960224205 658845265 748456423 133783145 165125816 198167085 520513870 510184362 407056624 141901203 391531516 120393852 521293069 171617614 409357532 648127175 592021628 299968280 953207934 840912624 257654629 351336845 628163551 686669872 631205477 357300322 272316916 992716041 663891760 926926106 81063801 806288563 722283230 763966390 458215387 853782776 390429508 51686165 218431380 337818690 652506235 425865011 713126525 149269520 627673768 273187670 511602434 723131591 144591986 142388195 32701103 979792057 647111522 587021792 85749398 882263945 721571513 331514456 904204777 837267784 94645966 800052209 310393398 514578401 707549760 403954717 905772040 150947952 851462663 782383206 811332626 563667372 378640974 144453773 220068588 23097665 627264201 739800088 552486867 466887770 625526386 242175622 706703366 616249551 422557848 897928135 625511059 508846844 939035032 815168543 943984557 490311699 550652096 882864486 609610097 605160873 612835826 724239392 710864641 818226002 778415410 85142554 516869909 888245827 146299074 487685418 240852074 503105725 422808788 549223287 904675013 413670898 533588259 920580108 565021344 973753439 567793008 720269914 726040156 674962822 424710693 448789224 525048036 195930275 677431588 866783890 966283589 697174446 69437528 929596653 89750592 314989320 441113476 134258520 93651675 656261159 631044918 458495982 124767482 784918749 57657529 969455404 53707052 413033129 309898656 650546432 961512989 361178035 321653292 23836721 607485168 771983963 880375687 981988171 354733233 233013006 907888346 579897363 14038987 765653287 569957883 648164559 794085810 749891600 776783909 364117679 465097899 936499434 10538454 935981809 632472615 655835443 888184423 334485236 378688813 626590497 159021677 840299807 589025090 321141105 849710536 835002198 463369103 938814932 497848161 453442976 711935828 958063534 140783384 864024664 536377553 362107243 591088317 646833823 462728021 617672826 168668944 100991740 999923628 186228774 575615287 203789410 621548293 744226547 31430086 230350940 935512554 714941585 901074983 996978712 202897548 692739864 940375885 398860358 407405645 113612394 85029104 19687897 366604726 680562845 579359164 213039606 859940704 975991535 197764694 809120450 958874890 542176232 325024936 707454882 888015123 742800254 158639271 995787979 4418528 432781179 355171787 521187489 795606080 662850575 592076098 699332376 251642920 348360172 47116200 935459151 46579222 602856812 269656247 543082234 3555272 84297119 538180702 323641725 862122598 190213900 878202501 945751625 217429553 766811915 836804614 204010519 89815429 306923007 159416311 918918050 213721947 15817719 176601206 504923071 11782890 369641465 816331645 687456230 264636467 398713192 208115570 711907177 66745454 281806703 589470533 614918850 487572810 48520684 23092582 272406993 675797042 667198111 982179529 101643252 500155872 403261841 34470779 559562707 570856191 507489392 436123847 839332884 791267341 81880754 101959643 357530626 12581603 94391391 508613929 705002996 25097355 859013548 128283536 9748400 109011683 308853365 408177681 522753337 696182016 988803469 432300317 508135016 342990073 684800207 398097260 554424966 184130305 987145689 583924094 591155820 760118326 85641935 766070209 704151689 351163856 44380702 868104482 498234407 661341267 693572250 380945422 614290000 244953109 960415999 482232509 494869174 602397429 289932546 333601472 608219415 687861079 703266461 324412122 176647702 592617968 273059529 71902654 597489922 780691011 127129711 17685494 554143984 946140365 433982817 496312361 938914756 692871176 437240236 534490779 369951397 767487580 833043650 495459717 823858955 780653446 4084557 801159276 17009551 467708474 682454713 273652532 785307635 956890454 266116795 685679796 954777695 520498652 791317650 453057298 430411955 674445474 460860686 637163788 920732125 241427400 610743131 950512023 866089210 529066206 865511338 864965701 574253242 939615065 888902649 547046746 194888222 170971419 815117155 171235871 324703114 364680156 309122097 752663591 770569237 581390437 56179609 150976130 949760497 844659457 932846388 965639374 849856680 287035589 171798474 143774009 895432376 639077348 259852236 430059559 345098532 543947268 791859845 283656021 605526120 846118543 636147568 609178382 65903690 525053673 741323240 762722189 484596925 880506597 329447107 318351072 546861061 982349123 34193311 673467083 682400301 781018078 641076967 307205968 244468260 215379025 853883254 912569347 858904342 292687286 488369279 245987366 5021856 281152525 222634568 781767156 57761434 519427493 696346742 158018980 491688995 82230733 646837630 252885185 221671357 556740803 696887573 284891942 625308699 225482735 105138914 580095690 961333966 681806000 914366714 813600369 882857806 824315729 154676007 984054936 325368302 762601001 260966342 499205299 47745027 376458359 207777341 160397307 855404537 532458168 62074721 599546193 1024463 202826420 98151941 224810788 134693203 349194847 22510746 623990136 742293346 895732268 470431535 569255402 748340329 869120615 903006709 199657297 472308889 141829358 558999851 58147863 463895914 428831340 383382992 67521936 803600739 774063834 397857589 146239665 96388404 152893616 449512424 610002395 859882066 981669366 237496939 376806700 666652130 343803298 163527881 268276358 414263737 740292474 161127390 616430698 574675750 425163855 105323460 325701765 469804498 636398539 204602193 201421356 204315194 484100150 455437045 785574173 856877946 783810341 771892753 496906172 955197707 13046029 303539245 607796105 859452827 144519311 855453559 276965349 21489295 872089751 20662816 507045116 244385246 762400429 340549844 909909639 566934322 559523180 155980518 566543185 24084193 226643100 517697305 999532811 1355656 962980823 73151883 904654220 432009333 729956041 471448193 741715337 66170232 237018343 748066962 114907228 786914324 286304520 165512194 327642506 186165791 798972997 738808740 771386461 299606603 801780932 555807642 164694277 236890763 143290540 578122373 389355382 799909633 720834078 154389487 987443924 914293934 306150085 521426491 484274984 71952298 72175070 752420248 70474585 477113266 275851040 855249319 347761533 812608731 304596347 746855219 491823952 942518277 283656812 184991014 851017561 696236507 375372485 852870601 168775888 547631760 182675168 526722719 990320161 997697965 305200358 579856534 903206963 349139098 750525666 159195134 318484383 846068836 653486646 657298402 542849969 157807480 439819518 954012634 349124728 943945953 73660773 663643921 80758731 11411164 725815182 414411536 927046335 162725099 79047869 538709355 711353819 719881445 728325872 563307627 246536857 489703649 974008665 512095338 957302218 40002467 599819473 235302415 753859263 898024828 229675302 523988797 737495652 187656506 70982623 192502832 874349918 256264271 900467958 66494534 591788327 214191307 434812206 782211308 976099472 345409327 814783117 426822733 799608677 963620432 381974805 267816312 717177667 915307801 165689921 898238755 933864834 408205209 825779722 86975076 487307679 254813176 492539513 633271062 970849550 915490350 548582152 186671551 669384836 859413793 409662393 511659862 462967300 704010017 679463796 628307376 498212611 861828222 296129526 53529032 484714078 702629397 720312445 517329410 729383127 204886176 918454655 699011250 257882416 167816629 80851378 909487749 568705496 193291041 350198785 226187101 755070072 233911398 234541501 966363041 882475322 300098098 429428041 607948754 851033556 69215407 204687821 613642526 548489279 452445389 382745726 549776739 503891294 522559553 675874813 515882012 467448075 772754840 537790779 778183779 250377745 39572243 784889394 152909477 764026874 745603390 537685087 313678634 441371019 450509989 196588204 368324996 941441838 195449543 524824178 665193607 71335090 423990575 420166876 402698079 98410483 371798510 520657033 43592486 190422371 207572026 663279010 592872087 738044704 875491947 243150053 813109756 921838651 180985643 537461144 59976997 371410768 975592094 454566321 684896510 403122267 169758283 156075154 155737351 103507146 549036671 332121352 401352218 905068818 351964057 771958112 155117294 786074444 613917454 880285831 487597095 921834575 938092752 86706420 258941677 697921085 689738055 207041493 121725039 693644137 113713628 988355955 903428373 186914004 619817230 17421408 929092760 983984693 693573386 297776445 805370373 522763765 268977307 867481067 199756234 336636778 337496936 877126162 7217519 258370517 832035114 123595324 196343759 599337890 378269419 402322782 333796677 920227050 137532459 931320040 377071611 482046601 793919755 885586805 753793662 923534965 988423253 559271936 190784862 132193167 486667601 86978065 861915717 792676175 131914359 868817690 894736366 889980537 673784758 948352232 338057400 998578680 96358863 181404973 61712240 633722370 243599598 419116057 307204854 286933873 657308033 970882892 857550052 168950726 911645092 748628247 130592624 672873072 616429954 397859911 479716527 168192906 313976709 134848590 483435065 140790157 560264088 323010314 30430743 60379 452000060 300218982 59056137 586599633 185081489 596011158 518284815 311047380 778621876 282739116 628008038 601480502 363550731 263319520 183857332 133643252 535360172 444102536 263480967 632072482 690029724 419356096 59046204 940295157 902898370 539853274 297827784 895841663 166773106 947939119 526558765 308974894 279872320 356238370 858727924 137635835 215101121 518972972 607078542 244528394 418297319 620579434 501119568 285048621 481823518 561005776 569871665 76732308 715486749 104184751 705077691 922119343 201068807 378350676 92775080 954841165 491479507 16500116 698479006 6231202 136638522 786125823 70230001 47747135 787497309 347137258 998310308 188826367 831299393 648513213 88933527 575721087 370926471 868223494 932702637 204769378 124683815 566003657 142023002 363152691 497847382 743605288 359622502 716495163 653549000 560739849 680807971 616238392 986850983 853630141 5973792 853403363 219917693 331268442 548449681 894013119 904390902 977568563 561981737 933555471 574892383 783946955 574249908 271454083 936609060 877653677 115811484 531113542 930358086 134270604 747695322 841762866 158678139 766402646 785131315 825404619 373163899 318195862 454957156 457538762 665012904 376436284 820704747 420792277 91950129 144197767 875972357 179987488 476325152 13387409 479750163 568734010 341354999 228366115 926845960 250250151 762382196 9646321 38752636 359782718 996962051 511459658 155898112 263622942 627191736 102444137 465025208 628191174 898621340 728063428 30622783 724233537 285150027 30573426 951882738 854934640 847033015 486912737 890628998 187387584 278359046 840399781 213634393 347193147 521837739 217952062 738408629 434718646 52968754 3176009 843199782 258489344 405633865 980521177 127946114 871734681 227693585 663253777 539454768 496966525 573482052 144155317 431760412 160009956 905311583 219299065 301755095 305715043 378580005 513996181 535976157 595787598 283361409 899794688 458966309 146716419 48895879 674613345 987750615 978046166 41950720 795546249 936934498 572286457 797728071 406129461 459619479 794617065 207412026 239429392 671013379 328570869 2966502 824646176 57828407 65124466 97640517 439901365 819038553 34341153 379611576 320785224 202065763 53593398 236015426 570230919 184136756 255296780 819167538 46688934 919537365 401710280 825853389 803947640 934657208 69697178 654293874 864695784 790402837 509741399 32845968 825743380 10226531 150357201 34729947 437970559 903429293 575980334 65918316 588144907 748435703 531087133 867353857 586472261 218846676 721057860 250836501 168415610 20142891 292777754 196473339 640227638 833131524 783134933 830796604 50840142 196108056 151105241 999103129 238349657 415822686 930288843 178955551 713399231 145494020 397669412 560554274 727791950 735215783 44770905 926939793 598322610 708276505 608755666 905276800 992283420 997860409 905791142 981040272 916630037 253118626 421746 813690151 89389664 680508310 17675836 912039683 958064695 694316875 410919316 423008255 5515505 336752563 487701010 322317352 357880274 903187461 923920125 326738846 295551131 479754837 619849855 11403212 282513183 212970249 161155265 840809075 672264407 137408957 506869430 479451755 583597857 44275012 667314503 897183107 513354631 344351297 450547164 150499019 387038121 941426416 995192220 583717038 979337679 397349293 199512958 264676741 724633481 176993426 848749682 451863933 167415023 701990651 726077714 155118451 68495078 993229711 718452717 472909326 696080356 100354590 665858149 457616656 28690406 316651831 942138634 993931984 673251277 964126247 584323566 105219475 198497400 613490793 738232128 752176932 642433297 596074237 392329376 188664509 92044798 55980722 925957262 705613113 327236284 774501872 110929157 635995715 935605423 640678110 510510003 901358586 415859392 936486015 34484841 993126635 363094619 762073893 783791577 191097219 878029307 25466845 747015716 327936156 603069885 430675513 485221933 595311303 879797106 895929826 162661320 720351877 939762952 791452185 167733458 954769804 218332942 168614216 278672458 38960454 435523215 559025802 546365478 327971829 895730975 369291074 757287929 889532147 946787649 399003065 295739692 429802906 818751570 235475149 892184892 150032198 66751039 264252659 921473473 669498344 820772490 676610648 5666508 532025624 770938780 54993378 851486617 279772931 490525386 880640216 527896761 397298044 423855297 454733861 367789894 271706126 51980111 371615156 458261001 927541584 886982232 580582589 701519375 666654751 536655553 319708044 273806076 995261023 122515673 235746188 146212888 726025629 730382475 226006496 129325564 165107509 48372264 460927332 604384386 464012388 513049877 853928318 674048189 769244576 365563953 62102603 312023299 118010818 272415145 391764332 410135897 456060356 1663637 843905114 996442390 23915680 560598319 198282614 166919337 346538569 850266559 244965209 385529101 820451618 221118255 662084544 956919063 359076028 493905468 716237537 465146155 870216132 697561048 389221059 552632029 919241299 331844790 613451232 942851402 582590900 701012515 435374473 189461301 214667178 759969414 557925363 647873145 178156256 268423852 612104107 206179490 522198953 907928072 113254970 170472356 624286757 835828711 802509576 870412307 469143913 128570382 730332365 494450264 169322966 130449831 451125942 116770817 865410390 919980477 135115866 71518642 554057048 973442582 443580637 901080354 720508456 580234337 842184100 667775968 742648394 452608095 487891221 706877641 702449126 991386442 270105793 691689855 149133816 337839936 192044474 553895357 545790484 266301087 256388838 755821526 505059264 222747918 816149603 939271434 792501868 310056546 983712025 999570406 253698234 896619525 114420851 769350270 684201025 273069331 265789905 59391463 329068951 576196030 206098735 724528548 534711918 195965824 228071315 911656684 859106195 491333394 919517404 429405092 649321775 635036346 235038941 938241947 659991255 279798801 711163222 175114290 956717261 939791278 38646262 117292934 957051846 46684084 66786065 663258365 510255813 189664891 847975702 405382269 162976484 303076734 115581849 755683898 231745220 355730127 780249286 155455400 55068514 937924662 983082292 502712074 686272380 514058318 433275572 260045088 522158098 772888790 990738382 35387083 394120574 882994411 154550039 149454262 314713084 963723183 144697266 149233415 899935732 458095894 157998680 665911736 922389461 466026001 418137324 352631819 988199713 968840241 134658937 362984650 313461044 408418070 522648163 194145590 985260543 522488 41081339 731587023 822488462 905195067 152839622 853868765 87917989 958994165 121027170 115595516 267276635 330338314 795442930 418980427 227946020 218104591 24455041 917402319 852969512 20724879 402079180 591186976 507606147 891492730 138028181 646539934 185024418 325102546 60810343 555043665 3106996 916484861 99607062 658823417 736071659 418118982 920618999 808413066 750733468 452176621 931734861 403128133 513226465 15116218 716401796 442392516 251831800 93127061 377779481 287204936 546058622 311724000 529974590 25406301 339979768 668589992 585746519 260109841 273763425 564237471 51943466 88955524 954485387 332431137 284348736 523268890 784492102 226629226 178087199 150743062 475538233 655389444 260837689 187100485 898176225 988383279 239786565 406150105 445092222 532135776 346097456 723377719 214932462 538748574 465360665 317273102 703893480 741623350 998327437 664522029 136166835 736374334 359520187 632275361 153137649 842283583 489872393 64970273 9241470 965067129 125603106 151516785 863173107 203104565 927983959 30199051 221784666 464647568 288668033 220445805 114121065 618207369 722856120 772882237 728018881 502917930 249037309 994896829 950475628 404022179 423980018 287209443 949627164 566108617 757860799 425293448 30132523 598480026 694350594 818037966 141292738 955814395 521975856 984532647 803115015 641316221 601314371 300581323 956268007 954479209 497436977 610189830 779813628 335095103 902224889 639816307 185304399 364255751 868802960 362597028 587994267 651083854 522432994 21672747 410117346 268162638 209230776 355591647 757299267 362358833 237195007 701316820 973300752 643919367 287409919 106558487 495012042 211804328 982364880 387127670 371920959 300271302 754074832 668543027 959513135 59190183 844120730 530160650 922403179 109726969 563301435 911995979 935895778 387780443 803726627 345872072 107293116 346132564 363596713 904005328 555967804 819915179 161171141 48352669 665973786 422844154 705380402 955147512 531433357 381577602 525128325 959945640 804634802 727342773 738831623 492068605 401627493 67596874 626156000 967737191 695408690 280162162 38672372 794460662 786597437 48787114 105369627 815633998 947499111 831366442 161656356 95008203 79925372 885616035 271828856 566807755 632014396 129139347 484037300 86265008 608785471 512774237 737512491 406093629 334783200 651882007 324466998 165738216 15627175 154567866 130772319 339735975 463256185 45855267 753047640 145886428 541234094 695715657 418179698 332735542 845748609 371431540 146861076 42180992 335038025 637952504 944699563 264941679 731045283 734700695 257572571 372063052 624507132 856782055 552687950 292698688 80485333 390438804 829034616 862277869 139810559 482520115 469169557 508230418 245105117 517952346 757168518 404727706 280238292 130830224 499075493 703665128 187964391 359000797 609453268 968206817 463429623 67006630 491991437 174295536 434490539 30645886 326755455 996455496 704497001 705434704 455400354 26148790 425369307 698678089 485061205 259706794 936345498 321080042 760033364 98619550 430161701 238005683 174489242 944277238 999845508 132446596 598847972 494770200 388369796 761060743 228934722 216110712 373258088 515953045 909156449 915435239 693141052 272501212 397713122 998170311 566749599 51704781 425502057 130518389 644064278 499149431 122245899 985294467 625200775 936035230 787727328 144736253 335165213 990847420 131211702 781971246 400183310 756218592 863283860 668244776 614948154 434928836 193193820 284401179 278775816 593619444 580069288 657154636 866163892 776015269 368321048 545769275 841712381 18954812 775935954 528013876 56495651 820238047 404832193 208422677 816566922 205117112 241346643 38876109 458114000 145012263 920255968 637453703 244001694 568181368 685960640 584899840 437198881 446203923 566482444 209481798 609939108 118579528 560214856 4131392 527576034 754122958 129001066 386519137 705239815 291318701 200733097 592727601 851873182 758212599 835916672 101429720 598494179 40451669 214520332 27996046 833889676 577190639 509715562 11707221 119601629 509086511 344902231 658797088 834841753 122084016 370661164 137788451 117009359 52582138 742702220 805301114 433871112 607462939 626555339 225511535 741686782 862294466 60520254 539023777 437973227 14918711 312585065 942268075 285827233 23645398 876601357 226358051 694965683 836422448 66952487 907801493 327386994 129775246 380296515 296722532 920489637 531319449 93396345 796497954 114994520 193230150 382873837 345427556 594113479 183397814 363408512 659763331 277228173 175193346 157757620 428464236 507806093 492935997 411215042 570308277 818303660 17332837 948376035 894935619 224187969 169356522 320264967 128617201 961133783 854221044 199963376 971265407 349523117 558008835 338895767 212862789 821210695 707215288 861448953 374496224 602232593 97685656 616427046 345334528 615313877 808707077 139509945 652188693 557437747 989315974 796448986 863567280 134410568 5366589 899944190 801141206 854661330 994709943 869386597 907334490 84398525 867456403 618923980 371555950 336972966 442152057 28868217 477912532 419326824 533597354 309106296 218641029 622514246 376438312 699888844 77025538 7201561 961316142 652859418 405633176 218839008 741352269 703306508 521736426 516284164 4832706 662398152 32949661 263882788 735002325 193992780 468808180 685468381 542291868 175500604 99120571 197670279 948343407 362905942 617915612 936906374 272744883 532210846 637001830 721938920 274604262 78854455 604028890 767483815 908652230 833580938 390650261 264081593 251940411 446057659 867558188 257458955 257453218 42656632 642580402 48949658 853830457 353197843 532052554 157749888 109094899 794094018 402423748 188278035 511479409 361698497 974293685 811911216 302548505 614820188 229550903 505196742 324770647 17547207 191380785 118303048 710216730 556486587 711691280 45197665 256733273 361443425 83094477 222898325 490530079 230604874 149816358 646055387 139170114 858771404 58952105 586577085 569356978 665433234 779828162 434503602 390571240 378954638 765454448 96902471 678295228 510658091 168125137 193162345 398613945 675060665 798920434 679190323 707345170 775628516 46148137 13673563 809631316 33618510 685118807 47830164 107841639 125358895 766608423 497428209 827167436 937195394 647367973 749786581 255857393 210670774 19741271 922940080 103024819 110983809 466387426 898559194 896701041 649882995 727735965 733303364 743167393 327456484 614646751 331706295 1767045 473789302 20686497 991442659 405436299 550839473 306613444 188857281 453188516 490084075 753408302 193672064 798226318 666183035 162478582 825469441 951186623 249770348 675425413 850073862 77939160 507181142 466704176 252541668 158374942 593523033 911729150 320428429 811408700 939087665 839138923 216085237 970888906 751378963 234775786 842634647 191901432 76589680 882218913 834328641 850554102 618803453 889691637 461311645 97724941 152810903 833581916 912635960 634747901 841846138 974318473 552285347 736526954 511243442 531834996 631659924 922160892 280203536 179556462 886247515 58903223 994799144 638786413 908762313 78795059 114920390 75056839 607815364 343615458 777105646 58917241 707013910 491785569 279105272 907523620 457700700 508997702 409615578 349238088 14867195 37229948 157417861 354689844 649973030 813394852 253170440 552296443 930514010 47527587 680035320 892586340 394389173 210472719 87092076 185320356 284677250 695318252 394203998 236705159 315783333 129175580 902142972 169475349 719140508 387604594 69146157 476388513 837140342 942930327 826173312 397263720 32468081 736248020 715596267 922262022 754412942 308755805 942263135 480203898 66318849 802225623 13199685 664980664 745840570 744928853 606745534 991974953 514301589 152054008 343477585 159652212 799053721 76637957 566849191 57368559 676612638 900170179 460029632 916411593 728468949 368373109 864173852 250267475 480296424 449427137 875136955 997317298 742146211 141040728 467481572 998463354 197383554 911939075 491226634 757489769 22221100 903118234 566254094 884321491 928800301 206243428 814315516 869436202 295898250 80702392 409918002 504393467 105125082 713022488 421234194 556666656 143880998 555479005 35075597 331652981 646506242 560485980 638614310 250404263 254926845 905226029 99960960 603183260 402541130 540436306 48900860 61813877 636634376 407052286 133606173 246540346 267774094 232865403 815578549 18238610 34717408 436888581 410950772 496307580 481867929 314447093 458006327 229289169 523364968 446970732 288518306 216040053 105477999 530070509 473471601 168616871 932997383 547829387 222785009 943457683 933004963 915285052 603080057 319382491 750241937 550695502 752239579 634892918 620487770 959388603 341142665 962927068 757294194 281340548 154294688 979085591 752016088 613125656 427920689 16493671 639038314 227262368 581189656 798481168 437212966 394845020 3214511 302837244 124833233 347423269 384490132 983617221 658554059 242906380 99609988 551849905 50388881 550988628 590938405 458419425 123661823 70826017 524037072 426784916 755464799 448638950 631500868 832645277 446745986 945410358 891623548 778963421 230708206 22019241 219129969 263139378 939809035 468998395 924949788 513498404 662418295 727644149 456132614 58532062 54529117 3209370 834768917 109999477 262484819 574353628 223435483 387886981 390365632 361989622 666279171 354951866 929711334 138742893 892198772 657932069 815910839 873851421 493343443 337531509 104764795 156716362 23495471 200326237 595525586 369695467 12676625 900057668 545869170 42458988 369593517 503612784 782524074 963855760 515395708 525844471 241010033 63630469 671108823 431782613 240227733 582997358 562145820 480390918 909179997 903613174 189187009 36782258 400011550 10508834 712548160 527564467 631036739 192529833 812440458 693747815 922414734 394651376 342782911 279906726 860966237 344159846 203083388 603167423 810200177 414272487 836175605 470798377 939133653 847177832 562619843 14675563 12402225 517017218 585578935 48341129 395224338 59730218 439020519 463850112 525750423 690947147 789341758 306763281 545183358 949104537 624543172 355298508 102074167 817868332 12305019 430164637 164496314 638364708 688241032 435686839 79564952 850560257 259749642 642815367 188731039 28116250 147728200 252287467 274042296 559259571 230683113 869482048 803936576 857716880 819952298 511745939 327695573 959008099 245246576 554728779 234097010 757844247 909079559 68072447 783648879 633337536 837304580 695749093 473864858 322639068 514011212 160011538 659363075 351983986 100598186 157912508 795326448 173781973 375828111 472767698 969869392 659705336 829395954 759415904 684143056 808092929 298401059 325182400 831639129 933797812 309354138 416630074 20760226 276975590 742097608 480935992 381447654 176288816 365167850 737315988 20033054 4568690 595501830 684471722 198518477 584359827 382712439 451534601 187597038 609844658 985587938 800084692 89805664 983295567 940482712 117442842 803007777 119753987 861038306 971861531 974308001 380141262 99056133 721010043 818690988 412248818 671961498 780219035 892617298 454122709 534775807 955202872 774191181 799610850 423254306 385989521 478114235 956130480 850183289 3613561 131444617 884043721 448359192 328681144 807870758 793461499 989129900 258239204 326111608 768648125 454735225 935573284 662822979 656008319 46650667 111033392 124319976 255894550 963535061 992207456 726604561 150712814 53561960 342634560 905925902 379553438 467660560 186267549 185335980 131109307 58163688 441444028 583515975 864204801 531265241 19644583 671224838 831393925 214064550 200506465 870128963 770078634 317106634 924627723 231141912 254160391 501680727 579489006 872808096 15553844 316253700 127640477 643232917 210252164 662546745 709436825 946134958 217944271 740460745 342477157 838445124 341809278 459756549 681835681 952413481 593407460 392059934 570978541 962131410 634978857 816106768 673101927 880930685 62792426 536650071 698017339 389224392 491820517 142609018 70613442 67761380 533929674 485375280 543700883 140057607 37779288 2556403 673435400 175388018 836807398 9021430 799256608 810952135 579107266 585467978 168073612 446306174 561581083 652912024 833885349 233137842 515496572 802359165 94779093 860577789 854618732 563424110 806721506 630217180 569593199 219486331 700864886 969578732 600335292 591678704 931945261 603114788 888256197 130473498 560829814 646074517 418246098 770475058 164469413 7396978 298829599 450925753 468465041 572557644 617463455 254487532 369267573 756112812 635818398 59800092 981160568 863995064 38670570 913001193 839780049 117319928 959440955 362109629 420211148 55257366 63817474 527101471 156829427 468843948 701385573 621489196 762840098 726903795 526425089 228353512 750323802 191276447 760291872 720372153 353911166 573655592 906165034 36929884 381787121 44815078 317792595 864491108 933357624 225883803 951023220 922828106 42306645 885671368 825731977 415568505 60874307 478356523 757724484 110305858 293757924 614349666 199344783 315869673 457749430 373443716 403858326 549663148 696071316 284163818 499096836 841551596 124045929 872982213 254300516 937145357 927978491 503398070 645409176 674968089 455470382 689544448 850773504 77141198 864942826 994306611 25654524 749351021 984571248 800728474 172569390 283699530 577400789 926084104 8337801 323305121 127621790 354405220 40967132 89545786 422377285 167345853 913088609 87908664 543464437 732974944 129430689 847943101 504571526 334054621 895847552 128955310 272657681 981792446 244951446 696550653 275989627 599759805 651365168 48839713 838625118 964651544 761537167 857713071 374656387 164592430 259009704 973071982 818007885 390669802 668418086 573176872 728432967 308545179 297969042 909356861 36557236 179684177 199675904 947313119 317384273 328985355 77077757 919371452 613905796 156918649 748385182 341875817 387965122 47896677 635102571 812630846 96600493 380984654 613859609 357042120 519301507 158364074 179034413 955382457 888351000 934217972 793371257 636379812 568154415 637819080 291138774 484892525 220396752 294812797 188087393 372659159 383053064 514308843 712022018 290486615 595631489 979107906 80641959 618664949 545540836 29246108 400548507 475559558 901271202 108714042 833515879 877394096 916369254 155959278 157705 827639459 387282304 911612100 881417551 792075274 29029536 58257862 885950472 917855422 613473095 111689530 840885692 553791448 996996395 886790123 524123324 353292177 937521726 547111770 886172063 175384797 404747671 979090603 822285738 972206649 666213461 864064804 210874001 415679823 317079198 735647456 894457037 230473240 86206594 379018812 389690842 367880394 591002956 458695241 338909351 331918450 398769287 66612638 98182118 192731094 136722137 444527761 970264142 474811175 934988356 537268266 10926133 200701657 653431723 407055514 272098141 497480221 252627293 253572471 368684614 234714957 313406048 822902629 794539132 616436673 704273 920524633 132415594 773150092 317771082 342315861 907281604 27577151 939998837 855578557 437357244 302482674 966799143 726597158 272742694 892187350 341630058 978730411 282284022 592005975 710074984 21982457 904988960 623928026 599999524 918061618 395743926 872924724 501117813 979121308 564540762 252930518 899004055 126536472 38159814 488523214 742391957 148211084 511418278 948660201 583580132 901097672 306221712 691555700 371020616 999394684 170646114 431748845 762476312 207191210 37905418 820049225 170771420 71906076 688164959 188474160 853804285 312990360 719061456 294207804 128114715 539941266 848350910 454338310 881620408 425632800 219674220 76265212 874761493 371047571 65191742 622936484 526453231 527322966 383540169 800463938 81198995 989107659 397819053 669977468 620601137 838019179 526631243 280573349 713399331 633800662 291796582 271438755 81035219 996274960 223805188 272673481 484575976 186016916 417292609 513759674 596835704 556857772 133160231 715147344 221878815 334700977 932892519 188683308 171772212 676387372 702460647 408198605 262610263 924344791 68539682 400130930 995922562 910585748 89710122 659143348 160915137 843626038 91637018 422260547 313347664 193832972 179909640 100046182 461753158 612036546 666612532 23330364 838968870 730981572 923948281 488548122 107961638 900144842 933647909 247688959 142650218 985683982 403608823 10651391 594591129 314500575 653121083 434291541 869500388 899838288 183423695 615531979 610820373 308281346 617062717 442416744 169563994 641060232 343116520 806088170 852265757 243559157 663024731 866938811 343025849 516457127 418838894 621595959 711698312 497271756 809261471 889881635 459256000 301827885 554351968 482070495 413821763 584189461 968089840 383137268 411640813 463034715 379046089 452469738 663275669 200419043 244916054 224989566 479576775 642363135 62318253 710908473 608722301 277267920 33666438 668176411 752828657 562984096 201668814 479073528 54372459 754169968 202843193 545272845 184782874 911729288 502755986 103824973 852045982 10145432 822114750 265605314 597680836 329541015 859016513 39694868 474047095 56570757 377073249 900005881 155013125 733177350 665459933 232269547 38221154 400643417 202507892 606570594 674527700 445671758 754938022 860537998 787644915 679508874 148928066 123318204 745062954 536614386 413748561 578611225 360330057 394184865 31427188 55354435 827335901 404006382 906082184 139063293 944741399 120076142 835017556 362554221 132818529 902358194 307320888 876892681 129595971 125344147 260359781 559377473 487570086 763828343 312869092 700776895 910535678 855481125 162252770 910540575 475258976 975331268 487376044 865058560 19614308 725736233 267175018 334718133 679128752 201401064 327544888 469349982 224339394 661976251 264480270 15749075 957535010 428599294 179659341 223094544 630727095 954034447 195076570 402603165 681591657 30113680 231133564 719330176 67887458 94535314 235434079 693795043 481793359 962573124 452130769 913931215 413833626 23007436 318953254 760225078 71393895 649879214 507889397 838898001 548875474 754964935 538140665 481288249 395119082 248260894 2982327 528965774 821569806 763088783 838084322 527836441 151175513 827329173 556032035 523897052 401574548 94164717 811653419 554507731 224560540 951985595 500859528 23023370 296860313 188325489 757112876 362767425 408698407 296676676 377494756 852927015 627939270 731976832 717417940 377524491 542695507 975990496 743719031 391919978 593506976 725157579 283187433 648857034 949847983 233341766 770493913 480556273 419140033 145759851 490856868 321946079 995141027 502421727 80054030 668686632 836628768 756632596 219386886 700380434 802042474 388054807 952576018 539898088 751684379 479533118 628056194 498522971 763863227 864057055 582201278 117930998 5087399 25820550 501393079 259587316 98016070 681792502 941248478 668479592 46887378 924051187 963813212 892574919 512173763 51426604 170355108 650218844 28341413 587166728 157906703 304202242 752394928 861902456 601047088 16569704 839724066 141019627 273946445 464973319 954842102 263312353 752962316 536374646 825114737 203641840 507950494 188002159 91788039 888578771 635082447 535988545 157616581 404576452 678467081 483749896 318456131 114703872 779367287 94818986 457398759 382100778 477366066 429980583 178053221 571134666 710282195 806416632 581464224 306642326 244722898 67619317 954262927 467114728 139661569 141418158 406903978 262337858 468586732 984828240 75753232 255045271 882584024 506183524 548680736 31940309 27231812 996578978 904362269 673430933 532049967 706979638 181370236 486630376 738166808 664116818 683373866 78991819 380123151 760748499 545214814 90410227 521659502 522131469 976159009 38814352 47194877 194032915 548204570 402110005 317913967 519683408 827246216 196482780 785474542 302227757 145705131 563923110 702405533 346852022 774498579 441225649 243130574 476238747 149828747 443038320 708326656 987183051 991673446 308167410 468506202 868841692 732415811 428309066 605278541 129983666 932238793 846171654 744270715 207119564 459865943 90076463 280072460 841939299 709064771 563253156 285858304 200805621 965236509 173173413 756011085 655550441 675900713 66977237 811173665 584553104 813607635 538415684 394400229 923393493 709186410 893415630 12699422 623049913 8019759 708679847 226569521 900307575 743357098 408789864 117658010 663179721 562243030 312621448 626110769 915010786 832572147 418092331 594971469 969407682 765460653 992363761 540074477 922373474 537404846 489412249 348001582 514640405 135126991 562619854 621440303 903692049 839218957 375402937 65392527 730572528 381678923 603555391 962069888 97878249 439805026 300095228 87626442 963464760 526709199 848257251 514129220 805210380 878151428 272188996 922925448 149126542 719732156 300885671 19238055 878160207 517307194 616261127 239681929 393606309 708500416 533898661 430979629 450393603 433579890 489616811 68652571 736023675 257769800 745097914 861380215 237902090 664082419 340510321 34211957 102548637 786093490 862836162 434960553 228452238 814235490 255225490 226465851 127439608 981161912 382755554 809756428 41672039 71831805 921594415 228866179 329890712 336639032 980817164 566026864 258618851 645467915 119920288 813808554 931419220 586355191 897468220 75995290 972370200 83973847 941385066 548030310 536332555 749237533 877611161 105471876 266415515 237575460 396214874 474206640 536587708 552870618 639611227 815330037 334229865 502674648 80562283 975030054 602559381 243093592 469660894 829229815 568306687 149042766 388447762 274914838 915815887 604940162 290937694 997685335 179488348 651300310 982371643 289919569 915250624 549872158 396854801 827673036 812950756 392994655 648421587 924423262 202464758 923476187 949584463 985559548 767012527 807982887 628524294 139389705 408714261 436442126 409416234 229837398 526820676 221436518 358161764 251279360 108660195 380319869 967413971 476073054 645723663 129892055 99629182 143741776 278423606 739733423 845627268 836198695 696016885 963849933 89825973 538511371 218086971 69720917 742163078 720092653 420618040 8284821 391888822 892511305 339566468 536278244 723904607 356344780 45172086 363726310 365766662 360108506 832062533 510483838 528871322 229938797 903299145 289452341 848246105 795264969 574517436 419751877 804522091 359230508 807456981 176587344 624584358 780190873 650337847 250167234 162135021 978166281 802611501 195254743 496685289 604424360 49648337 2768939 468082666 149632092 855564058 34771906 175390327 965603069 742615884 823679707 432345015 191033534 285397972 245727983 216390776 378868686 518131570 521268902 456168872 957850415 628935592 289700055 138977499 868099191 489897849 23473583 530477851 226919016 316403541 492489300 411916578 854847558 591960354 201466366 208847826 852942296 3407581 598770734 118589016 463549033 817631840 34957450 130780990 936701800 228754268 58566621 178735064 658690850 215812175 874560872 542306945 431607650 608521523 603622502 953573717 409619853 901903794 937273348 406245392 755852691 120989754 347932261 703178592 841803336 217830678 137372181 799128879 863919760 397570911 531110563 187812277 150549944 449570270 219237536 729279650 600729517 641090728 724845163 428884703 208963692 244413076 139483960 997836924 801021075 457096525 287411264 309986852 654753138 550076163 265591959 953356250 35716294 359760880 961297883 195062064 77057335 703479714 538923370 273680183 175029837 859077835 483786255 670547467 362977689 859676611 956097807 443276124 549620763 411775808 615325581 18173687 599783745 528485524 290718342 845951083 603910047 858834077 838896667 108367287 890791202 764462184 375485340 436882935 543681673 451714374 554633165 612540759 476998192 96808634 980859192 628267035 422282113 279959848 280459228 26468349 112062587 43708525 751365911 5034092 408661506 889498223 460798888 139556001 107687496 19088089 923153074 975040983 122349986 803204759 469410044 491622976 512861995 726142152 599451781 597935985 87804054 268774400 991255735 585300550 297823417 295279596 448012886 178723298 588338386 33290620 859353005 438397132 862291489 276172975 117102978 757625789 935394508 327961981 798689859 5372952 41687974 962857156 632583302 566689807 290895002 262902784 267901457 32800216 421241165 678265642 491073083 862397804 267416749 957882026 195873521 331819272 278827854 986797564 275078919 967089421 213686359 536875465 24017694 274833055 452250255 91273063 866513445 796586821 318481874 19964936 506726153 666340258 562312444 64030609 912932787 705678467 782140925 911662582 439845790 187280046 659395285 307928133 741393789 662567296 49981195 275062317 185771575 28616749 881745338 198526942 85974815 648803544 172563939 753649924 259738549 997935125 761765772 527289648 921122913 719701479 542717909 3944682 91508954 847250150 945168435 804514406 587083893 73257736 684570892 129053245 647352256 5357917 947976859 310967317 1059961 943683957 778266126 17057039 384890119 963627748 395862611 805368798 191129528 930689547 571767464 70792726 742101277 167267045 440795935 638744146 938340763 905629606 949222398 552834628 720365693 534748935 940626302 982341785 428326865 56220457 210923622 812967799 716909683 642362764 443345477 169351279 224777805 773449560 972548026 170732629 570854615 899613288 693858974 322671843 753441313 937372099 674064647 72395597 893980852 906750756 572298570 820945896 969087203 540529491 212940585 361380950 689263537 883255747 825445757 666986905 275898950 374242176 325797277 173223564 749488066 145000713 76652497 939436396 54827921 639790621 470825589 896295674 448960477 208222313 158659959 62811557 936845589 948334399 184184617 987585235 237246025 75582274 353454700 562220584 189190755 534948987 377619243 994980626 512347670 762334768 782794698 798489204 818337086 879175171 404471030 70204296 724827629 368208455 343305109 358601600 937310796 105545448 713586043 879867501 385351128 870047221 927406511 44942708 454659988 784507514 22583773 266610582 948216717 600507034 993919771 260952150 490257116 780638887 708073822 787456030 637328494 176136414 398997332 935233505 825563266 720746376 736907936 254347422 599676112 733892542 493002760 167994155 132006555 861575467 960863043 420673009 364744019 630069855 316857868 458820934 991710198 221450673 326663377 267031525 2915288 166663111 75024889 454871003 888464520 296915990 661964732 194639280 925812654 3458070 135026488 345335099 907808230 339606422 729099410 596993702 941412043 950680336 320543653 444698086 976254936 6181774 153988169 570110812 948191424 915066668 659612738 987591473 667715110 672064408 830327457 766712926 962805296 499972449 971208653 244622976 905632851 176814067 847200692 567855565 429138229 306747872 681222871 896865225 346058165 755772010 972775131 94075644 398264454 413612206 159093402 784481236 859902857 231633503 649533959 996600368 938427563 147708063 736893578 595016284 836389908 37537170 288820574 509275398 832866850 9099628 163541160 673695258 393128652 507473288 519570609 939713471 339974155 434166506 903132938 744892918 705488406 381065459 780044893 579364922 715551242 778454992 729187731 375964743 744644499 71353606 530343967 393480335 791361462 495392217 670997153 825630849 596721024 367135501 835883050 366501702 565064327 64751196 618410541 847035925 979873057 465933363 830426216 284158073 999317793 57054602 573861775 967283248 607976430 791041099 86588854 409499911 863850935 562855494 981479493 648574211 762990623 757618095 983779751 60078917 548344946 586933441 106487600 563516125 680867057 595754130 578127400 262130183 353289958 315611915 824081100 100027670 599888446 925135636 993273507 779339072 952112051 694730589 73897198 59186175 899232810 818643372 965453154 243451561 542085929 704086919 580080027 672369087 811639860 932829642 110625045 629854363 211874553 868845671 898821696 337674822 321834154 786353753 981089992 919020885 427953713 606530772 246111422 772099256 917832059 486173298 433063673 37232831 858730154 557942192 749907 764015630 959054364 607375576 136739892 271432458 151061239 990697822 675844871 951750044 687343794 902055887 141338172 259499440 480612225 383639229 134610034 312790506 224858225 775689002 553051860 801826151 507967410 740810111 713784877 45685137 851995098 357700268 122059064 438767042 989281037 648162403 821511656 446556793 192156640 146949488 573106195 970445168 666685285 701915013 909871079 545310691 76005464 430798881 545843161 137194231 775203523 112704484 411060567 548857035 151636833 463138900 577775793 167333965 828853699 884093635 180160719 790756451 56721304 996357247 73273974 951758389 825538646 528191001 642006661 928757458 775837621 257643261 58413057 684658125 725885162 43787982 866771657 574785952 806714725 527340239 147095017 160003129 943251537 497213763 731431825 224668697 216028134 67009428 510341847 982274325 577455147 742976068 141771494 277643850 830923818 197648732 484050188 917337587 220556578 823187145 557511639 566505362 799508551 448101525 79452583 242500764 304222967 513227053 958431388 261172149 912385618 249418023 458591595 412582317 542647966 786208782 660411325 645661241 777351609 360999208 940590018 615198041 776471912 420264065 453947200 635381069 254971238 121806379 88485980 161299381 670300107 200775207 847345968 675537938 169657893 555706522 865552848 326598923 505934556 876804394 971152691 875141055 26975226 96504154 816918534 780286377 922725043 544898391 30510360 871172845 403286317 915089274 805151083 729682796 807302254 203580669 106069034 901190857 273159580 631931084 500765347 261119097 238704574 308780977 322023355 438149475 295459637 217700637 432425587 272202473 388377817 427242171 470219420 357389572 855933257 304439357 450614977 714643029 877962207 985668705 222395917 103606395 99969982 703329582 639767635 875472705 988357000 887357202 748271101 574845382 406145059 169194741 188110564 279903755 332053693 361876818 908806522 702340868 710164095 800824037 841401678 18388990 357068023 841715786 656896515 467146709 56307816 906281798 743713806 624339014 352833578 654185079 183608910 241269281 823177513 341145848 557197421 938959555 316415445 669293239 303781771 253363674 883146741 60361545 282382388 34521270 150250318 389232590 641054178 460829818 146909246 899852935 40190498 492524943 361586867 230448148 945268594 709820630 932172770 60364145 605949217 153853686 405725810 61024393 706402209 940187280 749297456 543578529 101992512 905145978 120336731 923843234 48691223 172779657 815460380 822167232 706587631 51761447 464984542 904844768 941858190 806255377 397600031 711486797 870708069 779454432 289901252 409381961 591326528 747632033 787820483 681228822 726992651 502189134 29948830 449635114 976327877 487965389 257310995 976349101 344884028 158449579 946405796 298989476 171648154 912183765 370728144 459226687 420120419 815050752 125164360 846473296 951426470 218380125 827780973 171214192 315646793 121599237 450646429 607229413 185917079 223572860 162884377 873883502 740761861 796911351 939946175 823291796 448615926 298576587 327974343 519543545 828044960 811808939 397397210 803046954 364343573 496077605 617455573 286295245 667610654 679602328 19813934 293834186 809788055 306349081 40745406 109932340 703125534 851036889 298669521 414430239 595596853 540334945 41284826 440425823 652797580 68148017 259682940 131130756 712757279 215212556 137688832 173355997 11632717 619197475 534286748 311022503 107084199 432163027 678960086 251536927 136731261 213322603 310428891 474595493 294420678 652304902 387828016 623443322 864618785 776403160 544812021 824386566 956696271 118202957 613228610 725347010 221937182 616998521 24780870 902725324 573463627 891087437 645774344 914407661 524276833 154021181 206688765 323126484 183737132 189164836 629912677 284600719 436276332 624307182 588139172 766951807 967053022 197834171 346957567 683114553 789950963 255967162 601308212 770917289 410350379 274170578 490686363 55253417 14315697 217827809 459457495 811715510 743572440 853811542 778682513 676644576 275124001 140164364 979786980 304194722 879372427 610489601 67102431 737339881 868319829 54101931 117682347 643456379 257383804 225168483 274668525 460679444 949509304 659648412 86602614 91563772 594684062 905659246 822624900 229893542 135223061 176188946 183289512 507382464 227439948 911435685 820291617 946520574 5999431 14958343 122890516 94360707 943640384 367998737 590740631 891716204 404348153 724670258 375199606 189938048 858614229 121841831 891163521 854083508 879795006 668446386 641576532 334633997 784838449 923011406 262234388 880599796 553305039 146586578 954584150 294430310 797281510 920369476 429899722 184325159 564095755 980754079 59696986 576055809 955262783 630539461 538582096 231409667 645401746 43435346 404583162 449605229 710088326 902064472 218031920 24545640 707302357 399799975 175235153 965571752 481155180 149110269 460703885 695369091 832793094 631472913 934714609 870860062 764690888 573544367 135325806 128916384 966772789 889630046 634938169 581227738 603811387 712357418 880353300 46631063 843846447 981948256 837471789 291929202 213295107 26546052 688019879 596484173 740672780 685577427 209129710 351034772 238218859 584276393 518657158 997964726 783677963 270641009 715348861 9655911 571835898 56714923 151736988 909288847 887869349 601382724 139658100 81190911 521125487 448187817 176570785 934296869 558041185 70421892 319487514 114750692 626318442 936151107 163434466 997754104 381969837 737056715 704966066 780636423 564679677 390141774 701170536 551692023 231073558 707498895 123364526 743224416 945326497 960704872 500147169 474992625 721019716 711287394 4629944 851226959 142122546 801183508 154963342 907334519 547176722 289161815 675459278 135485431 929256254 408510604 398637373 657431210 673094312 992743985 670387995 797259708 606069754 670734330 397609139 578048940 623781501 732512993 29204677 540999990 69302312 419525520 131052075 219082829 872799162 309152273 81243951 631039720 69229773 387032903 891924715 487688325 506881374 196997335 912825128 387355773 164021485 409867554 806642721 517390038 904195783 575726714 147153182 836182920 907167614 462125276 924983291 538002310 413839303 703874852 111680339 894390970 109548593 77725284 973564789 251381011 361057760 890847519 551431756 661792760 336670387 208001744 676843972 703477 971577661 454234826 929484854 179955127 136422572 971453589 254918679 874591489 895292449 466160498 398693879 547023055 152971481 448749357 496757946 686972412 105155256 669820092 337414435 793634915 421968002 357312099 449984110 892627608 804510782 870847358 796585389 954364185 324119000 101156189 855312107 684833588 238754167 966349605 755803406 206017335 913849086 374481872 523223553 743498573 80585228 514231265 758598977 839987948 774327206 539019298 385432001 435538334 636482592 322530623 773749770 339653702 572030164 326157110 251790437 85146175 684275174 884157539 802550552 182463824 412935719 395645291 283318047 420419906 632328960 111802682 348825474 151933476 158035406 750982262 249102296 831113895 149648097 468724890 585760554 988676956 588397680 9980703 813711384 171773220 296590355 302137025 213916795 555868165 575237576 178983855 123917408 611289116 953801026 443285539 658819071 607959257 5269305 969263186 696942008 947097484 505041190 33118411 791072287 936301958 377231922 11933432 3603340 412012056 41471471 198167123 709550502 472291542 879801353 78060325 153897436 792984331 330846257 149333847 968265072 743176816 932773810 737714801 543033436 70439044 444015842 836731604 754136594 761901837 498421536 308161129 892967505 759694169 773531814 834342149 35544277 971701783 875442690 240068577 483975470 664179849 846813470 830807922 294910473 478176608 891484759 926737171 507339392 642732418 897893204 956505646 880944738 753893927 977465655 63240129 499343387 780142208 311833459 880902834 474772641 349755983 695966084 749371353 322612690 444062133 872629624 212431704 350216160 342278861 170754009 146158596 247957708 430343138 634972169 5004219 701659486 200113309 518808651 386075988 934552841 307735747 347150831 565028748 712828763 804850678 835883045 47103432 876857304 340013582 259732669 235039360 447272329 969727506 189390751 211014421 295340888 234907903 466604356 266678871 967694390 243651041 155689098 932815054 981658788 385761677 330619293 116157811 903591056 238026999 892736573 351771863 726924825 902526101 401548285 214758947 294520552 911788375 761631658 948769932 446295193 408560892 34365308 708736182 387225235 903555547 282922243 829164556 53284551 551707587 987281258 957084992 495322561 759421964 879360381 374061657 335411276 733773995 18995514 874106701 697514960 531625977 122924883 941561845 941174378 694280315 363805831 54895920 532564482 339038996 99206214 586711211 752964679 299656797 537203962 622433527 136213968 445351409 303713105 627096817 315544083 542486321 219218307 172257129 545461604 599441931 242176767 48969203 886290273 481421810 601136460 57006415 96566055 476445538 164151646 709703982 61147854 714864015 42409494 197484081 4497815 662011090 868563737 51912649 422280892 936791263 245847260 528661511 598131335 196902988 54975505 302226984 187359525 594703988 704025240 164627648 682188042 442970418 961865867 510823993 654325466 798870205 56945767 833380518 31486841 821778950 333345450 80530021 425810586 556644928 141372217 672949260 81171575 524117765 16706202 433691652 450597439 514304759 859293426 908706062 452025857 983664046 393366727 721200615 781581114 323173890 349767260 938176748 362509345 271198483 180550368 62528190 182097088 134589361 273269061 893987525 447979321 213330383 284205952 478847443 587765886 231909728 14724151 829502384 963671425 858910234 483164988 50817453 531386033 769609598 408845515 760777525 655343663 310274213 687424996 81982927 388985561 312637849 626933573 776654016 193875142 844649054 563476576 492312787 690945841 174067091 803384545 92367543 562892542 139671852 440445039 717312198 12977615 545777597 54954914 375689839 111553511 317459262 527586846 579005754 48307147 297662085 703966428 718841301 483750735 887987286 414644404 451882906 509225030 667746058 61363203 39640547 488529160 184036320 534079263 753516930 396434343 700036119 180555304 900603638 814918645 694863309 31440568 443734203 788511183 644738994 895370714 205234815 97972297 696970030 490387607 881153193 856848494 591705859 463622865 942608699 373861394 174830232 843835072 291781914 268133655 350203268 760035572 693277131 872976099 602370682 363487667 460217400 222880795 324840752 900671851 630272209 335832032 856774482 726863306 839144650 890142006 956826078 300657614 587616340 382822237 215120280 564186343 612493916 731769034 859462674 291340059 887829609 554835433 256733384 177313290 80427935 222532400 547388088 46322723 301292955 338540536 529565075 341377974 162578851 930844233 985743328 395970135 39118479 269200295 838295747 46034433 644976866 5461432 364001920 314632248 785027634 509090652 973765758 928588001 300961003 968976455 277495137 759085529 328686276 32490445 485358599 103314080 727123478 177243915 831316918 820466836 267541025 659595435 941072214 945518346 708584065 950495326 775580581 81268397 846584079 189924462 928136243 290084466 727209967 382625757 649737779 319027520 328382322 228865560 132957091 524428939 830578565 626426950 943352759 756142285 918577442 763247123 165924935 472107000 208245503 167720591 828197393 53659821 297028352 642039863 681873103 904339413 930564778 512765048 882846648 818387777 453669008 772898171 780675245 105930259 739062278 155389807 268215286 907902112 893835956 548438144 954624775 475074438 617452154 44945790 293324610 863578709 608944453 928597753 662979220 622112644 220268667 568998728 210437837 789826844 989397609 927444570 238132368 188064057 972256069 954259387 763606446 832293579 461651739 540962175 982093943 429476337 487275236 27266796 950090728 301192702 386501856 236890873 906839282 728200967 144950592 355659652 132276391 894163323 531290805 794143128 188568146 877352860 411227853 477643639 976206788 431835233 41544376 193362314 541736102 447386486 281239806 160727167 298747768 86974305 524492727 345843869 678830760 77634860 145679365 421499249 447744430 72633479 387466206 4541910 67516236 555078134 321795218 433022962 225499842 116248711 307627064 450540034 400647464 20892207 300269632 727697594 721174019 486001168 453519035 256555790 691920915 382512414 316558004 824751309 999373077 239718943 273042472 379180940 294584194 576942161 532032378 477287820 104812859 942110293 246462002 7891901 676319986 403078600 724626004 729437596 406623985 212380130 390857473 536908822 373697450 356968156 551533266 932200844 492550265 259712554 252660193 933229618 631119286 438815140 883413103 966611615 781958579 355263142 228704019 401443423 112408750 780172461 996679280 878979251 416722430 486021222 627710805 868388169 223805540 989839518 358003380 849436382 956234930 861507378 355467512 987259506 650463341 608276578 895429016 593103335 694179047 481870103 140795862 810448106 523866797 903200653 607221074 757976300 190362580 624479497 871872622 356156204 323147021 541691756 361577821 983205017 933908422 273976454 940241586 738478281 569183618 830640987 612387333 608421096 251498055 98594715 941358339 358661706 395946402 803967699 818782516 519730947 832957056 298664040 957258450 579408631 823881928 329190826 219507356 425547809 56372596 480485142 741152311 829395459 909672036 633681042 115300102 640323814 119816181 102319892 999280924 975552758 372689534 188957943 368945927 847764362 773049298 464549436 853734508 268877694 339410999 597439443 277927750 968199465 972045455 645879050 557190796 790403228 57638809 144306030 641208536 496684727 110046337 380679604 693240649 22147116 923409646 777014328 284274967 900595975 477121859 125578774 454226724 75020294 201134436 9315598 444941094 329413082 180127292 789495380 144379322 642252647 622360840 555363304 711302833 472039602 453986065 483696158 140778201 883675826 432945332 365006674 866156638 475964159 30822211 725860321 570245556 685103308 63690011 29410091 121135837 741064286 603399565 57245054 59066458 681438421 150990987 791747395 984913026 200669904 324734582 482310667 828619292 78373854 208452057 112129284 744829636 779998672 536459177 443931299 431373954 872160948 638391201 275577606 140720150 220741338 397238597 779434677 589878440 924393568 282051530 275514722 484851509 885879821 849979012 313316807 450560696 322234534 910758943 167579192 319857166 180451305 463257681 140489975 723312407 36600234 670104375 325967884 117975266 581331809 715796858 689934575 260812867 431433579 107630633 530940184 520771710 834673554 770746098 691565927 596695511 381715179 7680930 482232858 529577220 42396591 490263037 138191714 52156991 371403822 956095681 102177714 479961658 840771685 187842638 704693872 211317449 79353888 978814765 122376037 494340139 532419458 150077328 870209698 163330157 413499430 930444860 839302188 120385872 168601830 883745015 430657588 642062089 249115684 755048023 83892960 637531041 311946919 781860913 680218449 774384385 906765453 303567719 327262254 160903393 792264328 360533463 433709876 626870794 799854330 509305397 947016635 497942244 865428590 831680884 362605729 819746572 687421992 879092912 345961738 916897000 758456513 370842327 100303509 412703862 890994656 751947640 617137278 421152464 775391817 921612459 932841579 548351936 270583825 515531222 390291683 763472151 461598409 333725760 983732451 675887262 230716488 67121995 663699076 152069635 551678993 398403893 28986522 406479035 962137376 123066152 810843573 391558903 140040442 622646695 145244565 476213666 64148148 60034368 372172055 71059841 813438597 297162705 992872769 326916332 96560304 831091366 471041486 753454955 209035088 50880049 477298494 366075845 264708603 849659795 881371699 908815854 821460211 472050684 331757803 293126091 528337827 382192503 387218858 345530540 708991319 357477080 484511729 696751613 292513804 626213794 949867067 810652429 567736567 469090506 824968514 528043598 543829679 212353735 698560659 945648727 833444110 5091575 901605382 339008160 912293155 62784798 831085680 665341416 108492001 62240682 248033603 842318815 839523141 354904201 134877452 831582621 943963290 524690741 683225098 870002603 531854960 759229055 676383517 334385722 664644970 566692665 425046647 774207193 918079163 237080835 140560849 248378428 210465360 322977790 841058149 77946065 625988675 779186898 717575538 525458110 428571022 464113439 59666824 986348450 495344491 274517071 601311944 873415779 671343966 718386471 831786402 361025765 625169249 203694205 936179037 448981335 55198950 162810303 308008625 421505210 35473936 693823039 698224696 319505899 105965709 253188897 717929563 917904097 536374463 502000788 316119795 726174283 86650745 312615276 721648333 69398998 26621736 611741019 3967641 601417721 57939023 226860869 6658625 149523929 68531242 437049379 461002007 961864498 646709536 169149836 175218695 115862852 970352680 399386106 283012129 203524770 412951040 540255957 270713290 9219131 266292453 168917605 457091645 627700823 179616701 652914518 249221941 840023430 707564054 754701833 525525882 617078118 172206859 595251204 85092476 31549041 210973293 140532237 508517836 325349917 942875053 715068799 765987783 910874053 173563632 125916054 2239504 303996859 566053138 721672548 240161897 772799569 618188391 602957312 329048049 814199418 166542177 965762917 972118148 167725717 952040504 845855190 751149404 385712563 823536007 810079244 157818812 830375468 524941059 822281390 943452467 920391619 632345815 442544715 708601748 941659593 483456400 558468104 935712103 777711841 11689474 171052043 46714482 398785997 641268915 758821605 287562588 29200545 276931405 658893633 573799996 794933582 38184935 863271492 56240814 703336397 263428023 962881020 180538683 413883016 761746227 360468464 580508255 414765416 378558924 335372917 736457272 829832768 186473803 183031363 595580699 703844254 540716332 651618357 250190530 718885551 550657948 678036679 489716933 384093667 91332800 569777364 163461175 390528022 801486168 725759518 725970660 432347546 790792865 323732741 545576469 431731342 732564043 526733294 255024487 411140255 518994784 521569088 33136202 121148008 903370260 577385681 259188587 482377677 73892382 686809456 430322265 888755833 510939525 621271678 544908078 254838177 740137316 732856510 644917117 290234907 904885998 937589843 799147711 478173050 822168671 228828282 663009475 312641439 449605221 760094702 605652384 56001548 37773495 59931028 756301857 449119719 814621414 739006852 486553000 586583028 23240107 222691199 705227104 140957079 739828851 803699399 287016233 427701197 798901496 777778872 934419432 56009704 883210020 103806698 735229261 143155993 261692137 306104116 975052728 724090316 959231138 879169832 249435317 752652035 563157407 999622567 816810024 737686677 925908271 113194317 113486647 997272465 988878439 83351739 129392881 191509532 572061216 504144662 240160439 498299494 558546573 625732283 892331120 877607273 984638901 870541913 844403981 770211064 712765571 372804589 548129644 849263740 246929910 906754523 900162092 853654184 726151589 459368639 623140502 977636351 328645751 414588289 95074475 715782915 245361079 338283207 996082989 589799789 193380035 7137785 771940882 104366873 514424447 43654880 851712669 232058504 125889938 728236720 922334872 856380333 152354820 377393230 336506332 519288771 73005199 649932138 55299991 390737920 657606633 276617656 588022853 961430917 935135376 19193936 714980982 570585015 495973644 267091988 438689326 690001053 738682022 397774621 380665364 530894208 968119788 371287752 352262358 342131737 336834226 442557697 872173307 127426889 659616954 671763014 9247098 336670653 225167784 768598675 155645540 542551537 993756062 290775846 866129818 660977512 643534285 552943813 510861016 321093387 632079041 953423291 473434354 175015216 518851270 260691684 937928967 574260480 407673675 7726619 996941947 126464420 508360486 910669618 482942327 494109615 345483397 46618428 706786322 62445140 881765372 519648701 27252937 393558100 163164708 975873962 657799081 457606759 170825270 916186362 629064817 35145305 742315963 368983374 449596782 374507736 234422347 302397646 109832616 395587850 567873240 884725950 166932115 676485436 838774716 161594235 545924259 321254374 647739606 748665733 662156600 678612383 916462539 15083511 550897231 196730002 642536060 218816291 993468889 474877278 949802190 906334236 840866536 608344144 623730928 836202978 682674152 365621344 385263442 706777037 480581824 600742227 89262524 564111463 827181113 507970855 640496242 864389815 157651883 187395084 502536980 704812637 177400713 991779322 642351980 802676884 214749294 110300218 277878121 118856262 114276869 282041405 350682240 428534089 271572519 150591234 427881165 400890237 318577583 765440597 314791547 380064413 672714149 860153037 639499885 407690072 763977605 213645921 202786232 437281048 574707842 409500407 699170214 135554349 638321133 669843269 509640176 510192619 117682290 121224286 976439865 730615902 136821344 105938367 305224402 437066992 87280611 664707977 579819953 546925836 343557792 472903539 453009812 882709874 30655707 75168257 220918743 263071545 653103105 879601295 51813401 672974683 256627132 764942140 152969384 127679010 104641644 132662385 436190665 881130682 922125594 36332263 17573199 154779801 406584685 960120538 224600126 955434068 879180148 286084945 123742690 793666912 930183503 827801809 115220601 153260309 897245482 683769977 288708594 991624027 91111825 185120208 37828408 564446653 873181562 762929211 947689962 444574578 109258742 848303748 770176031 697017197 821154014 324112431 20350571 959291472 746887742 390103692 697982801 890031706 112953123 814029597 522791889 165871358 188564430 550269103 987653372 866244818 979274115 276887067 422341450 104912777 655706201 668245804 525076266 467893058 374330882 434891287 950902936 500471240 625524163 787106526 412525442 109264121 127343806 227499342 964749802 196199080 410785130 413563413 187984518 93493418 909063124 306546856 759043355 220835446 633496238 612660819 4084972 90633987 528978330 698115491 7314660 370143054 899727322 626125551 897572614 110744203 891940822 595144927 194905118 884240092 639612724 776228888 302006576 386476198 671574266 862320759 778321013 657734201 852824673 674523462 610569222 483463252 236084413 565841131 562391391 158808991 44596937 207462254 139485887 563828682 155604058 987123811 791291674 405627615 557330464 798893804 778987790 168692897 907383063 422671463 887154014 478421309 245344220 124320334 439125798 777561797 533535095 790263069 241493671 329127937 331982224 592350226 679236892 677202118 790643647 20575153 232164691 861778996 332147818 446686820 210754431 451306517 94567771 727963676 241869893 818278839 691611091 798828495 467885313 313193791 590814514 11882416 176619560 191528063 668268162 279795753 941703994 901618683 336007912 376888516 139738894 22100059 274066172 769146870 403213872 571924623 58381489 930956705 654697351 204219468 259923799 85333297 645588219 573869835 142213831 519032520 292466799 504798976 51345482 681412341 769576729 878173862 145115161 370411380 799808515 250005609 203485540 742092849 780468226 728716148 761697512 267606500 774587938 882531961 501892208 735294158 385662203 815478001 421551418 744860980 375344896 748888690 457445578 627371704 259561 546719403 573783903 1455160 967194921 840448345 196361063 225141582 544487894 99357323 680885833 957545831 972592548 786597539 556212738 970707960 405206029 441886712 410443750 180378453 21117113 248257184 948148540 185492199 999606473 12997011 794317524 848394524 326590711 491526463 969082650 488222451 446567775 335083299 721949994 291252393 444009165 739457276 865765222 150529678 508385859 266067559 205030209 86931933 316269127 817038388 53443014 403576109 672849996 448121040 752879997 346267129 634081956 881845172 988774879 598292135 236175298 725071845 323401165 479628437 3434304 899978454 71972194 268503659 430506060 75356590 287484302 466257449 437460509 526670606 989361931 631865612 534097151 64917496 289493928 13020333 337754259 555525824 654105504 995828697 628019345 3628123 87020444 448059936 600819481 486762197 572915089 686638840 378993584 1606747 985994852 682137499 797391709 424638270 64864700 233266521 448225229 676522787 942846284 639331403 922880251 944282834 449765432 730175464 387307324 907111330 850699882 876831790 964854435 174319769 817877607 479448598 296030165 58654776 306168897 383322119 964441576 965102031 96896556 485206217 157318064 200347263 29866593 860105925 880258372 416318729 290733413 491972420 442605251 562311592 411599583 674036305 701265076 323522201 680298230 725833366 678783518 770068125 665939871 965077856 141514831 851310442 108856825 650095854 522399761 450613580 418450156 533695969 341818669 850702280 221095860 969726332 154807875 996510418 318459612 311323969 891038778 790586925 897991838 180738145 969207946 765281674 707132721 651047974 558124755 830603480 54917159 849183274 538826371 787005612 669733652 21591103 403998206 385215794 647661247 480174777 294224885 791136863 498708182 963627014 421265586 59474495 570305993 327091815 141197254 304477443 88874215 528946392 456841196 674131154 845615063 395978121 19670470 406018872 964306736 332871367 185641163 202829053 423069813 393260191 429916938 614243254 433796555 115433683 725688082 188449789 439674410 606291054 558954088 285610607 504109018 8488877 82125685 562181553 831655526 319156948 170567338 241776881 561788878 945779920 522495121 553837033 278243741 347960953 390592694 302869103 124412013 250752924 919622043 906214378 417525288 140880764 638153885 558055244 767196137 766934628 507332392 823087009 932195267 685925733 569905790 91279008 447594496 163933523 191291671 688086327 114152654 104534221 503818638 193227154 195251448 520366094 1892391 892162093 531662674 409284237 250930533 10430295 964055701 448751327 530369877 867063182 496058316 465710730 659453564 804649751 945919993 960153691 616954007 658622249 373173206 467319585 757092280 131904561 211054754 695621302 898752479 743101667 638701965 414664905 733606232 414873740 431235143 187721187 564675792 204769232 514422224 825138244 221889188 775166880 82190947 370777424 379302173 666201194 253666959 617555279 319085314 506946542 426338186 137839919 162361620 51115969 577932149 352481431 600972795 874775066 399176620 38788505 91423692 587447466 515508013 746721096 930371814 779629296 137766916 2768384 228886109 879558556 217709263 706861167 963103065 557726342 312049556 626386443 357978007 266434240 770080091 744873845 813717558 186348063 892583091 280970046 595426268 859720148 963666441 673655642 747095916 456380578 825514730 340284569 883625699 176516832 289897437 126660962 959485615 474237965 754288072 890813684 158792098 363738137 867915547 731890988 889160540 960380993 442078098 484145061 414883369 886065530 180099890 147815858 217693869 675592689 897530968 845882372 806506280 277683144 531932222 971847724 31665912 660523045 835432411 864751715 15309650 218489546 526884984 632680923 868608011 425052438 988107392 410700115 369070265 203938034 163329460 434178064 539224057 150831344 626407238 389605124 345088742 571436617 733649711 115724659 878090602 428479000 62739746 918920971 166227695 397124872 130687858 394197155 572190497 611470757 143623715 464038753 931224498 804006561 655905799 799324275 186299882 39374128 296304146 763722773 578552058 127789430 930838397 683377125 441673028 183296711 482916191 184847328 760457336 733083856 534713598 423988888 507936769 877471379 980318988 603151448 899326670 179211739 89127476 823721464 285613645 647332677 827568288 582366972 285920194 7512502 192406867 44939140 461452086 157626923 405254839 719647765 127939143 873776120 649488832 143176403 78850699 512859038 734502016 236070993 643957193 92801968 69974962 333056505 591508006 814051477 828642559 569346273 84232734 365146285 676850510 414229484 188802405 832597480 919275333 292769616 66085608 271358881 139138651 973660572 327087405 431161321 645940049 183758124 642640428 725834671 374751870 888652267 399252363 456420939 446563269 276152055 228964532 378543465 874739546 909323476 351309054 904287118 30113698 761637954 853430774 798551590 939523306 418314787 452828153 791868508 545615521 483521945 375403900 351805402 652045780 528382366 858379810 860654341 266574567 225532978 688577805 777732815 527268892 415414014 570553628 329148606 307571973 710592785 17452569 708442810 375508914 552019520 780726657 60642846 951090182 575010914 966860620 390808807 777477245 584243322 166231007 981032521 918902025 297670462 562402252 608966663 427842880 87356677 395981684 941113298 570061615 107689616 97020439 145849401 646288920 617509302 149456888 111960920 678198799 986567208 423025389 658786609 229764501 113628599 855548501 558036203 637271527 935028868 892655553 119181627 928347325 322071292 36973569 30906047 815948648 503477553 875698877 223229993 405628445 514805064 119448202 603772593 310058196 752698469 983335394 818838971 211712213 494586177 791369753 672834366 450578223 579751099 878929744 737583481 420706113 352932009 293259817 565343566 29051329 232368032 298479473 44938787 175482884 363908576 439703001 645857248 15638400 225506617 472409585 879561143 396187098 274656553 453767697 849582796 952515140 71112867 620453076 332520618 181484978 194276824 473708833 203474247 506989138 527418519 331385689 254202406 738353388 575366634 524427003 952842579 267174883 632419095 355663214 402604566 975826992 494651669 505438465 658645777 322204464 377192722 75431101 699254208 393988203 302048738 829045758 467674796 477851333 777116807 476920572 110874242 514833399 739640116 319403115 585610207 910535364 897935686 821214034 65575771 346396626 893009712 673477930 390683190 860391119 560949389 355937295 273100174 843732174 689019017 874991881 977357683 660547506 790449977 774876819 795540516 318681625 514196150 346840867 790506636 84528029 642753101 571826669 542320321 765223721 208272020 861672780 36815070 903481528 505120239 25163372 764364429 539277274 421395382 236161578 234274002 805711464 5013511 556452038 157650976 640013414 498301214 903003384 3653405 784218411 107586387 213404624 830664228 165165853 53116643 953370550 243748118 501946803 639482907 390644376 120501002 343545052 40331839 776913508 62461299 495337598 339099529 385579758 643563465 210273020 830996118 793583460 232975548 2127383 97488250 56088741 34552398 939436872 507483297 345613547 309586994 771031835 788869683 325666578 973893853 816102442 622897588 422820026 206596855 863034760 311209692 656425682 549215359 462766456 918718644 651142614 781697539 421971399 886057662 118538317 163296573 143090621 982199466 73945249 530311662 212223103 514375990 864560673 469974179 15912664 74873614 914700909 698413906 190497814 314518519 763068625 963283074 925099386 786162139 270039574 181641424 738672731 351094537 705279270 875570397 741615547 926792997 608724806 372510759 82751033 640725525 891634122 650735905 433327802 987837545 364198564 163433690 283423910 222887514 301800717 837774464 591202184 707404711 364812411 685041633 713143376 482428099 125357030 755350150 378040396 745737899 343803969 733208590 388892720 759794965 671405447 194690160 545759704 208756695 711984615 231033476 237418435 721399764 162028998 708982197 698586416 547075364 831058678 867579511 764470351 74463765 779031979 829882365 343486493 343056799 449142290 351708853 986483182 682056678 579444711 884869768 747336195 667168203 988331211 797130513 641365142 258957662 680887458 843832290 833451815 30331992 32060534 275650666 742928642 355646967 449636188 492097746 823463658 683425009 523626351 412186009 374158 558834639 650106691 585830843 402499473 484619038 964372404 361413539 966882711 423231659 27305377 477127558 654980081 712711125 2746154 202360126 732252188 405021077 767873604 302541164 692248498 381146561 32338215 391240256 34502887 451480110 471793867 979300494 886503902 126110372 544047624 693737040 738977745 654489341 96833477 906195434 771771094 82256229 488881371 776619189 116478433 823675887 14624448 804966521 186241353 556224196 554858510 353565215 992294498 246699704 525322548 739679766 243571720 605936229 307450528 770178768 379247196 169028093 923455240 378880847 316588809 354719497 348102432 116566923 437846607 807589827 199501582 966053955 725823686 833195759 450303639 559771324 3656219 38220982 329266604 736148417 603446192 201572009 722345923 838474667 963307309 661160900 266256555 821231693 782527649 140425676 241440891 780349102 211662134 776720024 833145936 970977046 881735710 355782045 733575907 718608846 786179892 870757916 748968995 883854399 381468408 431679806 740372310 492564518 786181007 975909646 413804449 397935831 473717009 680856667 881659378 301480171 500399343 949211322 895485653 201662890 821115899 320705209 848023356 133367377 569509277 512088879 384180371 166935642 994307650 971569854 851242996 727621312 478600407 656633879 462834248 221310102 215558621 467663639 595212451 753717151 544195921 152516681 375504999 947712186 508231446 933028459 400482065 442251490 197152776 23050560 4677797 729496489 621272972 635668490 46021183 744515426 159867208 329260007 982038983 233630615 541638175 637923028 511797184 939059692 396222582 757863074 958358279 317339747 237959040 402411873 426579484 379063988 986873557 394234829 658608767 476077023 870036756 971350348 623344990 426293047 793916694 473190446 766592598 537199004 852685390 110487466 362257446 318117456 933254638 783406338 37088884 996305746 536534148 8207423 15077147 707032064 813930816 545108334 988528471 135120606 544158873 407601328 443255407 43241784 73066769 719720641 559481667 690123407 611190829 848914408 629271337 932953166 856586643 857868251 193842922 666406992 867987016 106535822 423809120 528529401 631921784 242326258 817492271 287508966 999073353 355584583 323940671 798587487 341427767 162885447 710887449 815116871 645639034 685631692 478416531 635356132 392362437 845510881 476961646 99076590 183792501 889955168 69144384 612656490 38010718 922037837 421669908 238613380 341897717 212388411 15930587 823103336 231992500 862977297 521850633 864423061 279928499 190422996 8402008 402907294 327704813 848015273 548652809 574590863 248865645 614156462 983385092 576063459 298554621 28711820 981355218 761620582 340792314 815926224 978613367 340517056 617282275 225983091 307399227 633363191 156337342 470618737 971085837 888543730 332235308 565963082 493853037 401915552 583398775 180383511 401678391 765809467 150006950 527119211 993910004 365255858 674642887 399747850 973587849 760409741 531668039 890533092 118225071 113796698 373409467 378192012 659539320 736550254 520616972 924961394 974736479 598345418 331602462 31887451 964056173 65572322 403413525 131750246 641070440 629602110 838526333 656007172 313602237 118323838 213595695 683741821 653872932 503223076 210617533 591133049 237249154 733732727 436091399 931624529 46141129 813596791 482534757 123978876 411979834 301519701 659428879 402878087 473027235 186082217 969898652 552403333 331029825 309483485 394107277 437444727 39060456 347146771 907120119 143298108 546392415 265596981 107966929 336565104 233615061 545669759 48350941 321539467 746299845 506703098 827125054 409151753 597864935 829813544 952336952 704252982 761811925 256668674 211574747 574337823 383398854 464264130 614401271 625803166 577109418 256108810 989715387 524071315 998972466 61934041 271986554 706340036 342653674 550690852 131032640 215161567 798791108 428690833 890694506 627227661 153603263 97870312 276830050 341487038 983139080 254907350 333509489 443860996 96024425 354876749 545764286 692121942 379850077 803682482 178287737 719202257 866537737 69382528 596029570 512054402 63448897 573299729 561915209 879298362 870502410 940579810 837725666 128771585 5841640 36534159 900854967 203113850 272053440 357212242 941625242 405410201 47425746 486291221 585007156 439437167 246099144 266673972 412606501 500926042 492715956 864537653 226477415 137371834 827372843 260783997 415362390 541335848 907234035 193707472 244395408 340234738 973838328 948158981 803301822 930940762 149638476 300300475 532776244 243585026 801330801 862327536 180783065 450715965 183722095 834346297 545905967 73247856 860232992 45937533 373591233 791383225 507842856 590260386 521712731 1611728 792253399 607081496 37593108 467882765 80569044 390341801 139594563 144089954 333686338 612503129 645294190 630371114 923589951 853269517 916828407 144521121 789677331 732640392 903189364 172657988 822245892 207913344 873403081 991231062 466167589 499404709 487877469 431779929 515023863 37430645 412493767 117627670 680088181 356699613 726938613 339148563 490773904 230642670 101271854 664607058 781852033 485289573 73402614 833738400 112109243 801612932 293251862 305056006 812821403 528281922 964054575 540529730 96717789 462797995 432856806 23673266 913382750 158808242 374563330 222895348 661946785 705584243 244951623 672675091 473087369 871016040 425512574 925967883 608413531 988247408 197927993 35553931 180857386 606373928 595285188 529926123 456975156 874527630 807159818 276547459 773081984 618246283 755060233 227998370 479234085 489664772 945454632 534791659 745350089 765783310 512729598 855617864 699849904 70992675 536407086 333371710 675283000 674248516 270838889 357748264 349651784 530564194 182572157 956293348 799536244 747290810 757337411 921494150 658103143 641436060 717266599 16109315 356330880 201420867 723113418 686634115 819954668 850642263 774771953 732576128 71396721 813147808 718182622 195378020 406776472 900669853 416934530 602000602 613530480 313533499 103994311 381020896 617500275 994000247 987551378 297816322 334133698 192939093 249937750 95541594 893625520 905839313 733329797 722515621 389241771 947392543 122765920 484900705 372656058 583089718 680354251 318623696 715754142 988416466 758405655 693616115 61801487 616780502 258171986 958878225 147689334 88715280 736109017 98973329 226524871 636741006 457514897 434112663 615457909 81882995 958518828 576421013 194109778 913550437 446588097 851865170 505084730 306582585 298917108 779047979 638617621 998043145 79000579 563282943 547197026 20063142 810538068 148322138 605466726 793965880 477075757 35042522 81191863 310614424 836711948 864563717 915596433 167370164 769510037 763275956 493303482 154891467 981889121 841252110 709903775 86109870 624855355 947675950 889133980 400192840 594709026 753792798 908309756 805145329 40586712 213813952 498785005 386650196 864673366 272338058 737857486 545933295 359143134 603013280 36565094 966299122 751409316 632674120 838442112 541087016 858005977 425866665 449859686 319083312 936393062 231519302 942056135 274220732 122027876 38973330 436534188 554077463 94234892 974714029 154434162 19531068 124743422 839214791 977349998 172018174 672917443 910559503 429948392 598219889 245372312 243476383 102609283 775795453 355937784 336164712 734897012 447261612 522051787 569396155 399845385 123298063 194794739 851996801 465336095 41002841 295345443 937051134 550203271 744871861 220845604 794792946 984712131 339013672 745162015 593102979 24613103 962093274 130937078 610456355 536591810 136778918 423464727 434022299 876887966 953157828 480893420 269665945 86314819 969603058 580494996 769017573 560749599 222397444 503402379 181593564 849599214 558010416 285082954 183441012 722581891 607936148 779047180 859620564 81106477 117992462 473453932 94311115 766130499 678387908 88293375 835803846 252129497 35322081 577293922 750975238 53305613 306828783 444049458 490351577 96438438 946170898 363078128 819107681 956138521 405112090 549805657 576416182 103558589 24336837 938458360 340303686 43312393 828409092 86018849 455722093 291979543 416645314 664917512 536278428 687092858 722031060 588771849 448183656 43464600 291167989 876774903 717397194 231011020 413123033 649606566 272626841 809156196 496470551 303445015 193098998 266072629 373400772 979219672 138042626 42791423 752837530 306709400 413254860 542848520 23202115 832574257 637788650 407280616 27173861 154020370 46863725 98055608 173973473 172773269 101343437 258573189 593119081 782079400 387363488 485066359 218967606 441930462 566585626 915189509 648677543 583170777 909989267 903859723 992218036 496774962 523111326 212323778 618607372 85239551 800221071 48220944 727285752 377295675 766228102 55484655 321306816 683428666 301284730 15963408 860011220 921374587 637621745 595115356 460033458 589052329 500390935 241050056 238425710 369475572 714749037 22182619 500467919 522182231 428359454 458535445 223097468 849710618 512158115 534296156 794854432 386237823 619367824 850332999 772902646 111900058 171998454 678062607 493039160 993723166 14953444 389443983 955837951 922251480 313302908 696188580 677799556 704307680 446713057 447073045 472734830 455687689 204305126 523825276 581060342 167435737 680795840 926004489 800078248 84879919 907833311 861083037 76662956 993286253 156674089 321974651 264785469 515153685 24886753 59630025 335447207 31641340 376588227 611424560 135877896 219929610 829732897 995649081 962322912 3451946 544285829 838045385 689142786 992535559 735522388 197735142 364676318 660096757 975952219 522333320 561494087 458233454 764991666 747514573 858080860 31140687 286482290 843000690 875143024 992370223 194191868 809138108 13899801 346208703 641458044 553618834 666199643 340497689 671001591 292896361 634106772 555979020 815046860 368518292 492787964 499242086 976592375 458385296 243945297 708029904 762281890 90100134 211155361 763628541 644070910 181884674 484787233 359290983 443795690 834734906 505317741 871548287 402466839 286091605 282504614 876308192 901823133 203584578 826403724 437038506 9013665 590807019 785099838 341390081 376892260 644679167 284733106 788969544 701857308 737015068 318645858 637797441 468848257 679759800 923971155 732499373 261759940 975679288 643476847 495248546 221951472 355388808 941413130 559957993 787004510 936509416 352741020 868986945 854886734 942816172 820130839 933789543 576002670 97309207 467841838 186975401 245925118 357346272 786857397 638633319 634120532 726437507 215592190 218790157 467065214 974496310 264694414 230846271 980845510 784580762 710788505 862264846 547375686 527830549 632326814 878149667 161599270 722932498 97021492 223544509 368432985 870701679 924652299 635678864 993983940 99711027 811861054 466769433 990278528 781783651 25377026 461474674 646870166 510500378 622920178 839206697 195854207 812647206 91312099 236701062 35781696 69554711 608826862 334523100 829427886 297644359 385998887 81063548 661612346 946474378 58528524 586283976 472262767 440253921 150277888 731889900 433527779 793498038 906942117 185014261 841525840 912687650 683221165 671131870 44891692 602353 419857795 882454492 533642672 640889360 515818044 514014325 386319483 466999423 298239415 211761293 265245507 421278671 82854469 367851594 122207807 122511677 339119563 836001989 675183131 727309304 23402546 889848134 155421462 653403503 572882482 23877009 337887623 11079760 786876317 795090825 64468634 24734287 683690498 286988810 281351709 302547051 533823391 632351856 745974560 115375695 262172486 365770836 602540479 51971901 932211016 407519798 868408466 81534712 263314847 796422412 893421875 324209273 368375874 741448797 380018783 42736099 309935586 449389233 781901556 879216223 91067466 170609456 507931485 189775144 377373670 13431981 510768838 976338271 18545508 355201264 516450380 251522204 215676556 102726414 384156899 511417992 490243554 608599240 926028232 995199353 301088290 228485915 673722560 799254549 570849335 155257285 216560483 50878631 981778323 342665334 986057167 633551156 291889713 320568176 789652041 912497118 879908386 539149416 729858572 542818540 990626044 253255666 56035990 765899037 724153933 250630941 764954428 417245789 937844353 717018307 569643925 116435000 293115296 950679073 524800367 442703167 757073183 137142849 496446343 236123153 674530446 244004546 768873072 406522415 990414969 866244246 114602644 853995585 684361555 78437447 860766368 712908460 886027095 358969111 932205310 203550541 669276614 659761552 940237724 37430685 916906386 636229461 543335072 772990705 586437528 477465191 227033478 121135689 352763532 327308370 351281025 797467188 33524949 306769518 795446243 539197238 643662411 43421974 162391552 64457740 565767461 977257460 759874612 735999800 374156621 578533899 324565448 328565986 235626350 83612368 517703284 893810978 253888012 326318937 94343146 53149357 518884286 507461629 697730439 600143770 269791187 283400027 160615986 753881618 621496150 989136683 944773101 342656346 370654471 565041028 801688898 732866772 159667326 66167824 331036450 669538462 483778732 327390472 554202628 128326101 556892475 438440932 678322714 237449893 36568092 474639410 843873418 477081496 796001813 823084020 792490295 227823417 848853220 336001786 109811841 424262111 993029170 228275201 406363319 455402568 906806347 998961951 439219577 113328357 825626072 136494280 869040182 476377996 451622347 800014039 222519014 358138700 17173907 266022054 476273250 567304815 819993103 719062353 592728952 452973737 22554943 583097852 417151872 235076739 11393746 53387749 908381468 488349601 272855657 899294617 504464639 315002783 762136525 826855378 925270469 450185325 124984027 104543699 804937113 889036764 348741005 179177170 555262272 281752804 208239128 282732947 149989899 485004144 467848244 733711162 187807319 30124619 849262494 337354035 817195975 294580424 266403917 472771665 189137026 694013600 560290801 895431656 32338607 386792863 637843396 437676695 596016374 859670810 570619857 648589643 666517360 549342085 727579410 848934911 752930827 391950561 305185523 950872611 195628499 160780464 419882558 189248972 426186978 523819735 792969413 50150667 175392535 255741739 689662921 829100008 151921247 51358281 830042868 597046825 742207201 289675700 845409726 841874571 599600954 963119101 448473045 755536328 870393812 493692806 607603339 893590646 417602105 165477316 252337764 511855175 260477287 229566680 710890282 852685706 104711619 692109732 71766329 5462582 39976205 29875697 109680481 670147178 54398622 811617906 206946313 171682569 564503262 210174107 37130667 686076170 593263463 471841547 356978377 651959091 421913900 197787084 254816890 931598077 323728322 857627894 222471194 303637283 94135549 472558371 592941931 271728380 151273141 426643701 826567138 672785040 971056199 608805182 579557329 485984984 961138229 578156223 730133722 816177036 563902531 813990394 244366061 947557957 465478186 766161761 966285182 399497423 56541210 100258038 35769477 475934301 588672312 856211062 493310001 724832138 131350202 871876421 969486399 513096202 447718081 467777710 985980646 486656994 465084383 5550549 47508306 872428742 698167246 588778658 188953975 5472434 741866186 19308878 629418799 900505092 974208946 953009766 41361110 260895168 171524145 76509108 957314106 174662905 711096982 180571991 285350330 539255837 869518945 768720568 571836969 289518796 381073391 450424043 399151094 560575654 55945791 988116087 432335038 721846928 201372363 870258390 471688463 17195936 823184474 419670851 171122587 619986549 27532272 427518905 15553502 681708428 565324761 250235857 825927924 163321375 459553533 135607693 914021824 286605638 536294419 635392698 971745490 576741399 687498574 35559585 808990767 888926896 728077969 985762056 466362325 898704722 175694098 558296031 537552994 380944111 723851578 605180384 788219538 286131602 314676971 978324744 294716089 674475880 922686201 251317848 286556638 405439652 601086057 844533851 557335171 342065227 819614213 841522387 13493564 228182984 834906596 95676144 892783122 127899427 209892923 472772156 644171550 46320047 505691038 847301631 966971783 473800503 539189050 977838685 169252341 136542085 549567699 763910585 415850134 782830864 67732856 617476256 992812280 108557491 856285133 645749405 432700919 278745343 412111803 192377705 411702940 570124615 224715820 182860235 237692439 247459269 506743344 450997771 249725148 259420895 84114924 840616791 304264838 779448165 175744054 625733806 362307978 426853098 63183256 312173208 16711646 748095373 71716114 690214370 442460948 157152322 241112292 653837218 468249613 830794368 257393475 491585365 328565949 189836198 729477979 774065377 745586320 884532904 770369999 923849843 725674957 693369261 192257526 291816824 507407097 535384675 993442456 282196773 782964148 122567405 774951203 359610409 347829215 864885971 830203838 917600858 294040922 614826625 177092110 233064769 490339366 787551461 698995736 133030199 221040839 202296859 449267191 249642022 186756431 623794437 62483618 873554940 663544922 951703529 919773871 878535572 367152883 354570866 259580291 541769221 501132371 824139944 301479814 861737381 433470407 126456321 4476727 566807085 158781986 206383257 623130913 892717301 482541114 283375534 446944739 598427698 709106477 608512360 990410702 217517976 334828468 372956455 5008660 282884173 145203351 264366995 165113712 138171570 962781103 551544262 381300878 611319165 913366203 721021780 620659485 84110501 970112631 120840059 22023282 537054228 752949509 446331935 713507751 602261961 258057638 96721263 349939867 961752609 684710192 565740391 199154212 251142184 620705750 499764499 777665964 576543080 426717585 272503333 337125876 925760807 24457703 455057801 899850644 630353244 847291907 880488110 856550001 262664441 55675171 944088385 481469834 602330732 661834825 487225616 947722456 444584564 769162390 980720510 459927924 927975652 35381917 22574318 677835336 526415075 323162898 292424638 468367880 783960557 647865126 868448458 591951662 317058121 631106318 210498541 926386714 626226354 984926730 173348737 529571520 419323897 646815558 109795507 85999852 997848167 758573107 628653770 556356392 520706089 849901786 919926603 368032180 710725675 962499695 988852217 596541197 807264177 672436848 648812891 863762434 662633880 128111827 754004537 113562024 495046093 421929413 565684887 525364108 334801499 694290677 513350299 120425185 529949717 334436979 658005894 930326638 79970275 803479327 653767533 338083073 95713187 736245225 898512869 289827067 390645155 448721329 782390493 410262699 834923682 884037276 214395025 364830185 288188536 287337629 709903924 259119045 88925183 246575245 821415271 688567388 53126431 137303847 996019063 768202016 612494662 358804767 258194090 18034900 398787681 122353925 180321820 482657087 613402799 569421570 559631798 517996270 458627445 227727362 765571762 37395485 327328891 758000729 763085413 697063796 18424253 931035356 568427419 567653546 929389888 355302217 183957590 425121846 355160602 370168638 692028050 926756463 232898911 404364898 915052012 873786465 805026618 806060860 351921758 632675992 13203768 995502948 530708953 951688605 759899373 105059957 343000375 878569053 15679466 719789076 328885385 564937093 206556493 495608776 432832288 410191211 229896367 485822188 963435962 442915286 859618993 809792988 303058261 964324433 473165157 397112022 541663225 139087915 560415509 653762861 489966522 780711890 993072847 186960689 927987753 61610186 110174620 568585979 141020948 216665814 793458235 624435102 994833956 633260106 3951657 733295648 778597880 315394506 857048277 177314945 825696007 644497467 865720435 282715072 315515419 592415480 476554554 690315591 187349822 826835729 876748939 870758911 784522971 842942884 478961799 542744571 46078387 971030692 782849255 851922984 262523416 940753304 167937987 499313398 497896625 774236601 457513863 815040639 662568283 884254674 635336473 196776940 34387884 80720288 933449252 603004004 40661599 549743749 977913542 809156741 305271756 267691702 692574402 957348864 35445760 859391435 222740836 365033231 206389108 616404407 670104907 946845085 636964238 914828344 241321013 152142495 792747782 773597519 662877995 70438979 175149593 469539993 684719963 130326879 95593177 3582555 216940213 115321967 593542882 471885625 929004993 226676655 568513655 311323595 735684849 475912463 975491711 870915876 171778491 276917729 578054351 769691525 716367671 261763386 948960756 464534306 898174208 397399333 298090122 975542552 896440827 164966643 128012173 369001603 582182182 673613677 88523476 223168965 602114796 759728971 508773142 231940580 968691136 652494632 730845338 225553372 99910699 769929444 20698573 269647540 607947578 663029677 653418962 910309488 311253217 540219937 811220808 520503118 356241516 814442467 420043638 755563484 737080099 136510386 880843097 760981859 727834553 992121142 75333433 724526356 718605490 708154576 474925723 366457904 917888864 711699561 539506127 130400891 463105169 68544978 273661591 755585444 63783092 35872070 404244335 466675535 410303554 948434561 244431087 370836928 655742198 880104893 797301997 763971345 469170289 123629499 367082203 535267910 26138619 852073934 839441919 481706688 825406206 491110763 342364297 161574030 866875236 368823756 636548658 916728159 131662473 929191693 963825212 843880114 105927417 781582158 463642491 536190419 690369016 724668370 191610246 962570070 797581381 392378889 702588450 585329258 671075941 723014628 98885669 345592719 132182470 958815038 710141596 662213789 590636236 709854325 598067109 636444949 603859538 268285914 894460443 316649787 408761269 176108134 405476399 749471147 169420585 570800305 41241339 583753682 574557831 278188666 771654171 313421801 771900418 884060272 721104507 316387282 666265768 914738791 754842598 232790797 474511653 466406998 937097618 504669402 615861118 16692383 691476923 816357325 233012505 934552185 11439565 775491076 561695967 485950046 401126931 807377279 301783031 487765335 481399382 229579896 509602876 937812897 538615470 343081247 898319500 925863704 665608577 696863792 26226285 315048188 132993362 896224028 744384784 260197212 266017561 540129500 368378844 506288810 60264160 913287928 965970136 922519595 372776265 98974489 121350506 597049674 58450321 844144786 185396612 118635938 442983909 623267926 654809269 773502187 910880791 942929712 752293752 819469906 34526822 976134748 995819016 362054188 170677540 238015990 500604810 673952021 388080247 276150838 529008409 60679567 448087827 176936401 724302759 552244415 811973167 256493291 993518341 617420835 675810811 229803110 581539299 943272233 735798390 184328777 39348841 228209444 485008849 582149382 135087208 893287845 62418356 866107607 401057242 890668198 663609418 288569628 160561577 407445663 354658768 414027712 984030961 423004742 783696582 797255513 824771976 221573624 894177486 229993826 64704105 176778217 986802984 323741264 492987028 163608015 207826367 993702500 565082613 748262166 638386109 92837610 528247700 742081234 576712149 977429014 661885083 359306465 843885955 466750932 3281324 994024091 477765889 902272775 333067596 534130681 238172500 744572350 749932224 367304319 545676817 128534017 521760366 774139687 392837543 783514018 339218803 905069090 872605963 965710396 394915177 63101750 668886768 738245108 577604978 263813459 165738566 905800902 900570608 914188455 995964532 23264325 132368271 17829682 345594405 395408680 710433030 913732647 820105528 892471406 652665512 461055283 435383880 697220256 357806636 131835039 328445662 745073167 994594001 459595814 650288091 223043007 723401434 750363907 936420934 512213874 663620741 301422463 612925934 383721462 603217857 212660532 354600870 306719026 404627987 16501602 382402847 816363557 422894505 635069796 12334373 606680884 621569072 338895351 459922580 926802130 915603558 978285342 803877905 455688704 366872018 241223387 964042176 593407971 206640721 468911322 876060832 456219004 861747806 547135475 215059899 381936490 143651130 152020216 155121233 307417805 169270235 558108074 247569427 767139954 837981844 216118166 47675510 436331667 105331202 929792885 9069815 586882551 54078819 112720306 83192122 466813294 25977902 635998398 420633891 198276673 590921951 723366438 156852509 608173942 753435996 523361142 575021988 892583813 121881231 511810936 896134479 243285186 61783522 979288065 726997385 431574677 870599830 896959562 772792010 988731018 429337442 354225258 736581733 491751199 794978624 731831966 453645359 631507741 935736357 122549705 493302478 541442811 414787684 784894518 906396436 107843570 857287487 521876895 227805452 556495694 254482630 951659668 36577171 369038427 132723665 310462100 620150852 499674123 368051216 374426310 846234103 88569935 912409102 530843918 594295692 892332586 933139339 712928841 590175309 903479674 218902262 795017699 396106311 12056569 403568594 289892432 594199121 230273279 546143783 36317821 5544637 95036043 223883698 420792960 155436207 4267402 179430957 734808749 909268619 892336644 482693316 111442297 193570995 646574417 768916637 954005047 40467220 604597803 604034791 12201106 161715854 409269299 269758291 6005598 344238698 6219071 663914118 261866641 605617324 567619243 193936323 376120598 377816358 237414109 425414872 475465546 237075052 991712120 643754081 909391428 352473974 165601610 459418999 999884154 188833902 37279394 830626527 481915627 737552354 77598975 870536328 773591504 379169890 125403129 127308681 301831139 895821663 727828354 854200818 356879920 325196969 771754458 723241659 448000374 867042105 66481154 145211414 283360553 831244683 412279607 852583357 50603246 197609739 513413820 636173377 177708107 680270935 233965508 450127004 462058318 209809943 467053097 740031069 247194389 865852276 952147564 180231762 136250064 610919092 559980212 750605745 328867399 187951905 813160581 323580033 426664868 556044948 298512908 243097857 820707070 791298921 809138388 795311210 148387466 177414620 659663855 942613056 416682668 906724521 127253935 860227265 781228597 472059371 355646150 73493708 29862023 380902569 94759355 402735323 688415061 910418044 708774073 826647579 909683913 791315076 78034615 104628184 155242049 1411217 105663342 68622328 28993738 572909638 659882765 712712858 26635706 505364479 89467272 840438335 683467610 943915136 66451292 258502846 478401943 777145301 964823977 635899860 532769496 775992365 993494695 667698924 33413912 134976090 130518495 763775071 483117168 867909461 661882234 61909758 676519509 12496298 730823047 735448371 652555136 457893607 327140051 186275179 657328567 603519038 764373577 223922811 750606043 940829059 746864020 909678509 927946390 945313968 955434693 916912191 395732112 890607944 756682526 210207031 219001996 451969080 200653076 836666616 881443469 137965306 51515716 382366650 162261758 418411723 25547915 588559882 954294149 369273582 481959284 34183349 741439646 807045803 856638819 973302227 173898026 439704108 230680405 856379878 59981390 631153919 711253966 744912211 260242930 151679426 237002899 103328866 232899728 800938983 695641562 584352129 781493245 806640505 269798603 675406312 143817510 431936296 335766501 234152079 825636169 434224329 541222157 80216494 331275819 366559111 949548847 653843412 865778883 765330971 961566219 232218792 154510173 929851584 829866825 686495902 195060920 99117431 276789311 477634576 918268204 783397752 28912455 149431757 801429651 392870166 319957628 745941693 603317053 519668088 678317902 841500338 160673885 726695763 903645882 585492413 364285939 714493805 782284242 346992340 338518010 350488305 697443383 949172617 17104779 664030027 556644355 665670152 911153628 546472912 886633808 196014066 758526976 135216332 968408591 115469002 91609533 186797616 303025319 824083574 442248913 521653575 51912056 671509409 204007248 577460768 498149833 998066350 206587220 773279545 929080339 336032267 78867781 377770668 296973119 241428642 818190493 835234710 707835600 980402437 84673969 928562947 85913444 84573806 887171367 973652349 354895206 974650307 508773412 535459992 316059973 720030007 761484287 872802160 217359005 964770092 247601905 372669067 41539162 112208026 601894160 578047240 94247630 845372035 792689592 846009929 170491395 535751682 482415280 456929223 258577539 848794886 612530896 512918619 21070801 480164033 564448154 383766865 10796545 674208205 723544400 477086737 564684753 77446118 106176007 842181403 285897251 664374542 323381507 259435333 722172727 148332060 5451259 119727062 503401893 29042898 179545321 502636625 805941410 458290885 339909231 713127748 852349778 376047284 60968045 818636290 222519297 99686744 808536141 945740741 516533353 279452953 375425837 494641077 75800382 562570554 598571842 574543386 435498796 400260773 834689062 442537823 672045701 879281588 822181548 983972664 928180926 438246735 756617095 112246457 314009630 232589043 418851630 202098823 349019235 199276537 695755385 125708571 463036995 313630562 487049819 157992365 435528781 223850454 323625191 900656491 295539873 412535544 609257142 789358920 102921707 110261821 882735124 772129445 759524677 424744523 317378716 165890530 471769005 585969740 969519308 132613941 18115075 351255149 745663585 219389775 335962689 824185204 3192308 600158689 778722514 370697780 502329808 171865065 781269089 628975859 631239028 384438970 52223092 636294064 725221684 646433837 981153247 414237843 554906480 569652347 583874239 626490902 287435609 331637863 637828424 534078818 930675269 907782006 653566071 364660856 289669728 559913305 585120195 487834455 528909466 43438843 351396688 256543211 781994575 774660342 470971839 565721126 633794502 19449389 562270907 808119635 773920186 374347305 388046006 236846775 545495646 393013126 822038936 479042706 827712423 801301839 650671279 811103058 165127209 629089440 288480211 356733394 504248539 684205160 118927718 679496451 665772437 616882 788950439 955799788 440790653 340611719 333880171 717749450 375528121 867703235 733484084 501101137 427048885 110878700 613884762 829197058 909414144 572799639 711355411 619321589 611957010 108607958 468655553 131766438 564700813 164721773 956646640 724386193 29660900 473375613 718718762 961536534 783193828 897684895 598579098 234753287 654008576 459754313 423475063 208790155 694348232 379157351 129440079 677294713 92084593 923694860 990208957 315273013 932884859 881190641 475230758 746135226 304934537 813863208 100005403 613386365 572040810 148412247 374420373 499263003 944422767 461831285 300793097 724174601 740724306 384805058 604630129 313947747 773724374 583615188 378174536 233971905 290692587 281109615 993485920 559612736 659814729 46749725 316568374 802991418 43110788 243498841 582182285 698073357 348336360 365315970 329435597 943482517 736870193 276231635 540597588 815666685 322218102 170779948 58371180 121610033 940135026 676516872 935762320 324835800 109017831 55220983 70056576 552610241 34720389 620153709 159634719 974629866 447502234 157650974 738449200 379543178 206739066 589948595 800496684 765445745 429358898 790168732 473715585 982237317 721880518 685237973 552475997 642470480 602478268 127276050 230276285 533664907 361841026 992749909 406256287 510770556 401206069 860582551 131148930 351260854 356600839 69203927 635863405 345849945 307862596 176706958 739803900 930760661 196396413 267068110 157356192 210398852 217276562 857405631 175677579 235242469 89946903 174156179 385827865 420517636 780115214 147253169 403076616 714739363 561911952 496555959 815876782 994155033 839985349 257074151 326656458 535291822 117562022 278533096 182801225 918067218 88276975 92004120 757837456 344316219 160007748 624888120 783534195 269018015 108385761 689635545 984535676 363420187 439552670 42561053 964158300 835528536 275982610 659566385 307586718 126728148 811883243 598634272 600592650 936331761 90257998 46380565 303556640 878404103 821846029 644480081 553600223 854878247 113450008 444565645 715552761 704029182 397058005 29306250 461856113 854798279 170337654 519072769 441203174 509068924 869848876 722275071 180640847 498191036 178280925 993308806 141675288 607192002 203346469 187558546 346148455 120468357 769560850 186669502 470276461 752239540 308418885 366925380 800309719 494072645 168876844 204201702 69238233 900871863 854096963 554133705 766622973 149956539 918616300 125004997 440846372 104507362 389617136 496388180 756477115 805876819 411530477 148765641 30389029 891869237 963730486 701833695 402656382 795807682 322588734 183733495 70795778 94378098 424601770 4667579 551190932 870204320 602013654 309891404 211893071 580049344 370833360 499075558 493908244 31871756 84032156 145574033 207346039 696643916 847468989 260604146 288121696 239449956 272376027 855312173 943957505 193752392 899263408 718291753 986617819 79986736 379669799 358369197 527265908 906429105 467083387 804035546 731813297 359526854 456891681 483562690 457978119 199860180 613217051 674458516 743646569 834438069 807797498 401478311 130025254 432482778 9891426 16652385 539762261 935523072 578716437 464537754 723023811 215492859 166460834 586271507 168191131 106036156 787327436 754445088 39400750 525183653 187529991 150789619 521987432 71908724 579062500 583394615 507046432 930974077 713080255 340598824 67377003 735593357 689778423 603908451 167185790 762476024 871130978 376623033 754617116 271458616 357175597 567025426 75081045 349068169 87503773 485965435 34652551 870886666 679404980 446569444 101978581 203574278 935950019 579022192 104346597 730417734 182902069 129007349 806201663 931651115 264062108 963993677 60903214 316123618 175512093 655876556 826849641 893632432 697453098 575902937 331400239 603645918 330306999 643366039 746765244 308982633 165413851 867724868 34363467 312293974 571010289 783033012 783179143 204219999 134808697 162335787 112266376 646356449 202551345 437935756 102516932 746082589 401878767 509633591 277953355 94987963 674242717 595385605 955147733 171412722 406497828 816499249 444377042 12629290 500051492 701432040 951705598 109269820 255900075 86910158 318243066 288549434 778031390 619348496 971535313 532476894 745901069 429478235 861991690 397611470 229349165 676704845 294677122 653797855 418133991 312610563 276485572 747119036 8276263 296886168 1336178 500228915 639409078 411605551 982044413 36267935 627327115 481652446 130074377 861905838 364590450 792781660 810815907 373376200 698074747 287404197 140618114 569975066 368501043 25381774 705644104 318482154 215877997 75523046 358268693 932402485 58456658 368817866 578799037 82335402 852183114 258852339 76166242 72441996 28850622 18631883 854389068 370753513 523300118 417671412 989757323 846881432 228337757 571655950 933137583 625573603 959792526 583402690 683104581 886644791 325090814 301197157 490070645 256593182 671726584 32530779 652007272 636751841 78877942 31326171 664969784 468688114 549231373 356138439 310421197 783997464 21599192 916822343 515800342 42590940 12837942 177689463 379226404 676053773 844397506 476799442 630690378 805597715 744102392 513587230 949286083 26626558 404248358 297820423 896133350 749418394 311059425 225539172 870522085 274559178 460561015 698458516 488196779 916927570 879384717 523319982 63157399 84535615 237237955 92103505 952692817 310442479 518138876 46370219 545778089 413391711 167642248 842630134 807098763 340796589 790672955 106526232 210910841 985892872 278735805 693967111 183075581 713700017 343116955 722832698 721725377 544078894 239364338 825014038 798399012 253333519 216470825 81632519 591808579 967127335 654377897 49710729 705390571 169533900 807608333 526561362 470403089 457644125 546399995 262593112 226609461 454997550 79400008 799377930 520941459 987568830 853003513 707057840 482614600 756364639 902888539 773153528 239146664 779961578 938107858 713081965 466874134 530313932 812460904 226433682 803306279 787752655 452339110 649510979 525564897 115235925 931744560 481923549 680337756 714001124 282292192 440528562 270200101 133501143 405022267 80271933 111628207 206826265 310172194 232767047 826660963 820984173 696423396 61108380 536854736 164871196 372738979 846169611 840651626 723758463 808871241 682515037 628322723 341359078 809886807 703420833 501166026 456852641 911128550 770164569 526700702 310572765 321458837 629950534 765583578 702137917 236804901 770545507 797537659 992652458 959074010 4408916 110588026 770392714 207277297 4556727 461746407 384945706 197879523 515072457 98743609 221822994 803023897 510558157 247263030 173290634 944984608 745867359 848856699 344631740 195238027 187143519 484002366 621274715 709366933 1884435 223105923 432958654 940295358 813008061 99715622 868811622 528851817 212605885 75240184 818116483 182572092 438309441 420708350 999816851 515296222 185472265 334795055 643903703 958547092 217582759 144263865 113635929 44128953 280529349 921936922 794647744 152985084 743743453 528420800 321247173 629760242 294914780 329190893 841890942 600369419 829627317 128414484 460350421 523798905 316917320 63289677 449760055 553382356 525713850 135117769 648769733 240205815 944086832 10424870 353432074 66621784 727705164 251846034 88719892 955254088 889174775 853009620 594635927 211534047 547620106 8768580 254853432 847917782 683038027 788616442 436199293 115708615 295827091 402218210 128133200 201573805 624635840 963316656 704146850 818617813 507884276 451176047 94812128 862788061 632812920 850860142 785908477 733389011 739830652 691628587 895617250 544485190 878898678 847041299 592387460 753140016 39515829 65632221 506663164 215951230 295839698 853274937 428668199 300210479 289154794 32211312 21857868 706866550 62714288 296317901 36225603 320078724 793717454 888108071 418431438 14010685 759596122 404048496 518836284 760058666 587300847 305877962 855271451 974353395 570112441 292794263 960295557 630179426 816247969 542063502 706003815 6308313 563716745 375425675 494340729 731756160 119467717 86055749 182371257 118425095 572688473 992473470 363845200 344108305 554019470 139385575 704911121 686654758 409937874 103842317 300500186 847711822 194900611 8396666 128389403 658323320 296594239 601980459 516923152 29653867 80861999 960697875 216932905 585983246 837625775 979516099 735560786 76054563 990627110 73873751 111713149 705503595 38484802 31107090 662939854 245594155 20919683 828275014 258215634 769702885 4676830 964041643 922618846 950638360 13469435 893388146 706753310 868662642 875637003 650611904 161531547 123401780 857598963 737553170 751300149 620525387 602457677 352071547 169680563 610018140 112215023 286803354 424438842 391111764 33448992 741857 817845382 59341889 864039135 832166261 651548899 945348855 734571613 251575669 846506180 215196956 942832564 207586851 899727521 790986886 611955910 901382043 970442476 170705809 962693142 556715045 531606064 590387809 636950471 739883416 687264859 113844565 687090591 733540484 517104468 729174311 454305601 445526038 986172926 220166758 486073064 881767940 607843868 670712666 418147253 818338348 263452832 691489884 624189957 797166706 9820862 711264074 806062780 767654836 376433454 592038144 750824504 653722302 611336354 158949971 916008168 628502782 857821519 496866293 467135984 721880205 569885144 617696074 177781646 162977716 860755375 68601160 107511882 174766825 813695647 596371076 56221491 77897121 476453556 253573202 505786497 349863069 939171554 831001750 507700007 640666990 148981697 888172324 674413839 196992660 141909232 234570036 591727313 136071962 185391219 877630372 592888325 968030406 48880012 976224010 557825672 675898530 982245076 412408967 18072669 476569172 516044791 891320882 436822017 60062874 625494026 260116884 248224105 344023839 316091665 26712694 620818165 11452391 477444926 202374953 296081493 428891536 613285511 559033071 309240982 901626739 284971057 317113281 96883726 158322084 940030853 88464431 467307221 163609676 390422639 261937829 643928820 25951651 244637031 857030970 635584839 563802380 740129294 62835492 298464162 360452669 254842065 301227127 852046608 787490366 251426174 289847960 978792212 501709317 585191625 174129892 627980943 831623087 12663769 334094650 36586452 129819468 969620337 229558020 297434293 468460346 521439513 262071538 9214510 217684342 886720911 299108293 127826115 321628230 677235736 805290576 325294093 694915362 826448800 311844758 267952291 533063199 148477600 317457943 396517048 610145839 940675691 338029133 388166555 563624641 937899225 711316854 516894782 845303188 776465554 912470820 108909976 690071207 527517740 381719344 941477879 717024792 343400590 277045066 9334587 39419047 864358061 550506549 131541805 532464797 200713001 787387471 136178027 827580181 529165004 210819052 928517511 499942520 770351714 405433603 365616440 358832822 378244081 498155367 267716651 911625365 762991020 700505216 809160569 331556696 665399740 669477263 708792407 981748380 235602754 303592546 326852191 419579269 114588903 470438829 996543680 556251421 407293235 163666887 517669269 87006916 288478744 342060627 608510155 837153985 129490462 429532758 918307973 703517758 953771406 481120292 439773158 858790160 13817932 638393089 515323131 878847499 496486402 937644737 249875840 879921310 167091610 960934369 319443334 87434444 77166621 695147764 165697474 193866653 255424626 782287259 192959911 82027777 215856643 924623095 850122877 949301769 466908067 705770586 829450232 405041557 632372298 503370957 495950090 731589513 30717419 941063128 679208591 744610421 762271035 637663818 642577493 952824221 754448270 233117153 25714485 603676006 420734326 933048581 468574520 408746941 374053604 694351230 510315888 6298680 774476124 933741620 186151881 569389976 734803665 17248239 860799207 409140418 771870631 204084430 750024355 579842413 18998222 180873369 378521701 692839652 570744965 636934027 187199981 933184751 834321438 758111204 691670646 268853040 255378853 378416768 954401556 987885657 279724014 31845878 636871744 327364036 462325777 108348687 598843376 563875043 568346840 67551525 934478921 344681859 815597866 674976970 865771805 64317114 889654874 943871533 464847676 663944783 530703814 500905414 914965008 371143093 755707985 809991238 952210826 243706298 663926612 48663888 392819922 704238022 523158146 572829708 668976663 177402909 988663456 732477357 717119155 923682191 162126001 420879342 740636855 420729473 243393516 600336505 42824698 301240493 382865721 988738599 784854867 308826206 54543595 871393835 385084932 630713419 181696821 350216364 899215545 825742592 619984672 614265754 214441786 355513855 279276828 432163853 796259327 336828825 774172320 867727243 370448564 440828025 743005339 550241704 495953321 582708064 627661203 667269582 473238501 282260764 479068866 725486006 77794910 134738483 13073671 710222068 231910908 585054331 932136267 700403817 946674599 248391300 54309003 544390308 740400583 970034033 349861913 587896893 547054424 830580562 757410680 874133021 868766340 76374525 163698927 914937366 842838030 50226285 533353885 905067515 146091234 133340089 335646523 954596725 69469640 2589781 365564776 192178066 196052323 653278735 91650564 225242192 638342143 573850068 9831324 805633217 949584337 839264641 143467427 200258926 22136407 111546548 517103807 658646424 329422486 950175015 400574850 762137256 7599735 453335309 890441627 300896207 45353302 985183573 585951286 136945960 29742406 819339664 992455177 155948035 443304262 465880253 828831361 921669900 532588979 526198834 896361551 127055263 683224086 711843212 811926781 227259672 605727406 223069230 525602833 600163206 865138983 602153829 754346522 705380181 399738463 201571596 642507282 917747135 986397570 171233879 821896918 544119124 113214574 754972009 803183557 275561924 450681643 134767769 383196549 973374608 404712135 791190577 185296863 492753099 377376625 139611589 130116658 132567507 944220960 370587653 546781665 832486303 663655672 430727622 696955955 353972992 612429918 823140267 486372736 943376293 742282827 878895278 506208134 308400264 138470262 657210544 989108074 910688418 510671597 395240630 284850449 725815506 691935749 233225404 587192002 615695551 293616030 763921915 852029971 435962913 459115385 826634355 342328557 588596984 194248109 828936558 44156320 307874309 706304768 435963266 224239857 112044125 192061656 694366239 771566892 970052 394658257 51590721 499359910 409527683 547566780 735414344 981367940 533064202 801338991 815313607 644362188 968819727 840186692 729623981 114506693 533487081 609920659 590335021 219562477 44190369 875973976 262536474 265459667 778986899 758258926 302982623 299540076 942619943 49275581 425757070 542735804 379973129 829237664 171139874 179395178 69147528 99740040 603134050 651362814 418801082 24610280 62680943 304587574 976026049 47340113 961773973 275454375 833455990 314110311 473413638 891601075 934331683 924072576 706020165 396100272 632164635 503525443 212153943 854568611 473405445 430186024 151312346 735938006 107405049 664585416 641456231 185788515 888679118 89921797 643219476 251572873 527732329 853489484 274342439 342063986 87237943 320790081 496956022 884022962 525945849 901994814 942808793 897513126 803955862 268878983 420121050 109794577 870582159 437983021 69434933 708561190 672190157 762838669 213757582 982203154 707959461 792031462 986199736 595752778 629604814 340545920 491921484 1656612 406972802 557073528 10568273 576755110 221918849 123206721 259806072 862776694 569786850 140590309 688342914 422576359 55439955 701336158 912039908 534105117 304244926 908600526 317631623 540566279 948394426 830775491 22220560 695632210 763504115 119442810 504326050 131739038 688176836 248241716 660335510 537387211 852745968 708377296 325180644 22089070 59159386 156474677 787201104 969851021 967377215 996957012 678265403 255300470 7870202 961170665 45024321 387589315 92250181 123350557 793072013 863158120 156503205 311215288 239457606 408822757 443325074 297499165 747314515 222396505 538088216 600354750 393777119 457553203 838125199 567873633 624815113 693966033 708619823 453382530 148126324 371241220 727053756 844489798 716933295 1531138 719079240 717191274 433116998 329813103 936106345 101431463 733445857 880233430 943559440 797462121 551886949 625944756 222528790 391223928 788956851 349191062 727587270 498905187 56026611 835471246 904289854 884163052 574677810 964156344 1063488 354859927 155824707 623138793 173175691 627186254 989956471 957217582 837100769 116813343 457290578 463421872 107412502 505734228 492937831 423493586 78366380 872283640 281353350 305759330 404377813 711406369 803477914 131590766 192797252 745791517 301339649 810844273 427079128 407620500 761982283 461532528 834247352 199046044 260627684 778143106 414983166 641683804 937182666 882569562 153093491 345068568 526407226 691280281 736482608 733161147 143589780 531773545 737843450 202139638 426135132 161083794 892514538 239898755 537430927 88951290 289902935 479172982 627150438 713661741 130786203 399450861 83999551 819679390 220763198 160312789 73069584 627279387 139723006 518253117 283925210 241437344 281555732 270270153 893789994 595998969 641343954 289497200 484735419 235267909 238085135 246111501 504896374 384414828 476690419 196401252 546411791 777766337 14206747 41314841 192493956 972477140 632531756 189574968 607456841 552235766 582236351 401620291 741630958 362714470 798323941 932651863 633445179 853365929 133688459 584809898 457611365 269653402 192846996 670723087 210137834 602217792 601607031 386537176 794626460 5973352 683814326 819364342 849631632 975100653 801544887 161939144 655241089 510172892 904637773 916034345 102463062 8781264 672867741 923451099 876096990 802244315 106492197 809477464 385901809 781034180 277262125 647665882 281227471 907569877 127903467 678027436 760489987 705443776 885313574 903582548 592043218 841988104 809191364 666315807 618404453 914068188 468191643 310325542 681833797 706365090 508510966 395713326 659182645 590247773 193375713 797491498 142027443 267118312 664462926 658646207 52099993 719294201 481921527 763578600 332840833 580129923 224355415 680303347 904093522 687453200 556668875 678524450 391520972 557012522 680575681 950657492 744248707 526150266 93019068 470665247 116000075 49981495 439399140 51691267 285892410 380473520 512814843 16974313 387813537 387331976 130127621 591232033 107379553 841422148 812417270 592259166 692479555 278447610 367948958 33306489 816546298 273320900 302396637 574563389 499407062 199797939 653779674 907272656 444152993 352777656 407812820 577773552 846101756 343672129 919873471 890962764 890032428 761918456 486073970 483913110 935740163 377721356 380121247 542796306 915627660 680216256 251445568 293390414 772044243 667181164 105010291 203542355 36745881 734876131 204350850 773642437 648400668 45511631 607817016 467114058 643288656 39899525 486366521 992882103 622847530 23187931 540869214 343651775 11443140 973246112 778868722 256212673 688409631 759765778 140948491 460292101 885365196 889676166 881523948 196970134 399825418 559631496 230617800 571537367 4682049 51436553 961678145 997644151 537091644 966817525 456073081 117698015 992246444 824049027 290039688 52812976 78622827 297391073 39292998 723878410 211149288 221476453 251602300 743391281 101983816 692916994 287281753 781644103 460883005 682855851 418987459 553043904 836016300 350368008 783134299 898815045 105320076 427607784 555616015 774827824 896258252 941079408 200918109 174784329 940931477 35334641 573871645 969685213 844952283 753066492 112863217 704862316 28473415 751766293 744032663 135818511 708997260 742864733 689827343 386022431 720483396 231158014 252455075 381400528 84019490 467650566 80047155 496711351 214858644 124058802 725872822 176441150 636022825 536652806 670103358 464184692 405500437 731411385 312268864 509384468 871772677 626542564 252072424 162214827 413726803 475260119 895165948 127878134 296910041 292210917 781804854 58077029 407329997 517019555 475917324 168395247 734786627 258681735 778647694 524525666 969491546 537594560 157052612 704159001 275972583 30372439 620776189 93516868 555439463 485341141 672211539 44274133 139017107 236754502 332052077 296526650 768288796 234615493 849207984 564683925 100488936 905262673 318828445 477127782 926071123 285664292 681841039 862771491 97990525 266797316 124956062 780433432 642832773 236181374 753814693 576776353 448630557 328332101 777858565 173155073 950388192 101246539 644626828 769160154 122531190 278343226 708672804 499688379 704034481 292182479 522024361 815335811 309089970 373294589 676604491 896142307 187345891 383204551 569640978 567538683 598667325 380442220 277174976 475611482 487135177 75818186 970884817 326858175 64063939 226561188 698717384 964578678 29100669 761051487 330504995 680415147 232821625 536523141 30124343 635339704 809447670 455703185 552771110 53354571 514112687 397000121 112103563 55093710 161547755 40881321 193698118 285280840 653517934 584093711 241214712 911731329 622389072 893829510 139149818 321755411 87673804 601102176 908060929 251881906 41771015 271311581 784223433 246945584 831382322 164802102 477944197 254632138 853498030 816158037 397656540 260649173 124905465 431485323 18181850 381295048 751134977 67546110 669511797 147229362 628426287 899889458 316927707 579832438 51987733 112056219 968655395 588345391 98582758 203591639 70605517 616484220 886951188 513290575 990851198 385866963 59438652 784932732 532542622 233252190 550941452 64245611 621372198 839117904 728845216 298765768 799249459 885413134 760664311 196697752 574745276 913212581 407445451 120627909 745484067 486444321 570648622 529869963 961283503 296340436 504948080 210777203 328421927 764709369 349438250 169986769 191374606 137414146 612018313 703193884 813353865 52538378 431575957 209050626 4442766 722884916 357666605 51708475 466412121 906780000 347722055 123394855 195094657 218136427 614887529 307761187 118792172 608635476 940553631 915553744 807667785 956682274 301538183 755408776 220392282 118970741 241611216 910342466 118612147 67906997 378542129 825106692 465142126 61489685 336463150 165732547 905720250 541545310 509726218 969826731 58561511 65496414 118425030 69768488 731996114 81642197 271364698 413860699 436538041 302297555 550781872 680032734 816472225 531167195 681817722 635638822 780065538 652420080 280003100 487300573 45943362 626315379 629331902 409305305 953573098 438974563 949622860 8319145 829961340 473371662 443071618 932085078 131166491 28767820 165471576 337555571 341211763 284611910 521409207 483088963 421768149 187967706 171854577 788799478 396116411 289746521 241574866 407798929 769175494 148137813 779735959 277981138 408461310 878365911 117634837 411040960 783910488 841472837 64353261 226521761 198570652 737925264 785356425 371063868 58410984 176335681 810958467 28521913 41905212 318835058 627394371 273638131 725072873 565288512 163201501 491836001 894224778 466431709 485982494 439395290 396464476 718558810 392792316 241685052 588702200 869999723 643314895 139420620 628748065 401818466 859987707 184127202 940646644 523097764 202822101 687524629 207294478 178553685 157067824 319560792 306027551 866814080 288687817 774999939 173907720 192583230 162497264 495398917 434083714 551860683 120908811 241890529 3189789 306114542 845506453 604190797 272645456 104338029 701788359 699662692 691690813 420230343 236094336 825436043 593356456 892864353 455339385 157839568 809483010 20343552 536456031 162802515 811549525 979660338 525007516 568596986 850797765 486995399 325451517 526315891 301953224 469323497 61434580 826088591 398968825 378430935 561426000 555536933 189255493 347359726 594390661 680325004 600624998 586314962 488651499 614689119 751262690 370123328 251937604 696752710 81684316 366374301 964750865 8704846 720911649 186170991 238153203 818427792 442963959 929121078 938790620 976283403 465107099 574295126 788681522 895234308 46927202 422820029 251381125 560950526 188003865 175050252 100737229 33954267 52038356 855320128 802736138 772313121 642741632 973409079 608760821 667070064 501049045 444216081 106638646 61049760 583049448 630531295 111373390 455861080 118262860 677414773 99209118 289040503 833011656 421965158 405358049 189950096 853759481 288789334 895832965 453284435 263692070 342714815 709419882 391213256 569427067 451233424 602216552 880819387 530505478 694887516 87975020 104257632 860875963 696444940 726499657 200678019 214119185 775766414 175810172 990278065 252721099 944674459 981083659 834584013 175575980 675724764 538047822 4820472 973236302 361304374 831599697 530553752 954178215 725083967 325617489 589917309 305337487 301495781 900600673 954900232 339371894 435922019 248912723 279372459 244220546 330201577 839962585 623134131 852715361 190952039 235158225 804103453 301272534 959635409 364948142 51580151 914514281 764929012 784180567 709487567 159809962 887390079 183226844 169018003 145194331 918679536 287062833 790633582 694574196 721729256 6367480 523723697 884901381 964505081 860058782 93935050 258788777 622127894 766639559 908354156 397694542 942801613 588521120 915179654 433493229 758328655 295845411 224773764 876823474 877819571 335600631 941211841 493273811 885857282 455315661 374721686 79237614 501912714 329169386 86239975 297223868 439250943 843079386 399629626 329885594 54967665 500394589 146573972 255877776 480798557 881244393 900842005 386056052 35225576 307343220 509429730 352959736 148945152 861666371 149160907 150252713 509968103 464507314 683232200 293443758 62181091 193587311 942962529 354821033 245181979 501720287 968265392 117094957 885021264 57850442 874527778 906026990 516885304 274754712 493566953 333708691 100378212 799365055 797040543 577106932 551494424 66994943 393334979 640058113 726649485 832504431 904676803 102245507 229156240 970901378 424688070 178798859 999369526 905950369 942608909 636507480 153203701 28534335 856377880 715416700 625419173 711636027 860418458 285218240 939565325 468607237 494931492 196374438 47116281 959650431 32325114 199223766 383508263 58247452 772734210 45208918 453218357 595737813 675288973 153902097 629766502 776382926 683220849 393483506 662854792 406922327 434158514 340735727 588054680 546177990 224850772 94236295 308546604 99928956 411322964 151465632 394869040 320465084 539281296 19201670 810837535 233753478 7939310 330902538 404589467 1086808 158219823 202523425 703880361 733293527 331692572 654976681 11551832 448627099 39509970 761183266 482209842 977958564 552565526 585261274 491968302 715885662 272375242 308263394 558329625 314046855 962534379 280299978 218200020 228512784 997159284 551568616 343774073 262172257 694529951 389991841 665564579 967456287 792712716 159291575 560872502 577941865 584957406 897975276 473446772 442143847 446812628 60160071 148866441 606650877 209403555 338943468 18233 189876225 871047843 771238573 924444309 239247739 337182631 872943947 533311101 912311064 270210467 683680762 129740171 603692778 627032793 544799471 535491339 877910036 497310933 173801637 989148052 842036378 765223039 795304518 905749223 891391221 636182945 162350124 278458866 341988085 578019060 308424574 788837474 251361017 597970871 930671216 740073530 873545860 999055574 78864242 213927652 924047369 197332321 310910887 141363906 423643029 565581152 749358980 825676174 229216834 753810806 417578079 6452743 635630075 254899192 254400092 775180827 694860210 649169025 60791808 194082035 850623126 617514428 435826867 799476826 541116498 911865096 583636256 472414649 846376995 895516843 850047222 621909868 511034808 223939337 197966651 614715725 273933563 336567187 172941567 314002580 718130415 868654289 405828223 227721236 945787221 859459506 791839534 68229392 81078091 455586283 118653871 760346666 953736745 124661166 434296356 39565007 217297860 708228184 948870281 701597717 864327217 36483703 973614948 927264592 438460020 487457532 808144830 267360789 539318030 623972993 47356354 558328621 535457032 486758523 698881872 544108363 550144406 776674840 307496516 108465185 893511558 13469933 953869860 302228975 812384027 23504379 882147441 586740265 921669562 494165115 287878673 290015222 196278726 451255151 531875195 887784898 195913636 673707482 786328835 320823660 990863752 469484702 725267852 237682599 118136394 801401778 274821613 167661526 104330776 4289165 949088453 661636898 148273035 223052887 523438710 396590947 200981506 366632003 59918182 515892118 107032310 196024817 794548367 850689786 150818107 733120760 225370240 163571459 586190779 820812888 834151262 575096543 21926048 614818366 520355993 335888260 900756834 186595749 400576954 535621451 940379211 844179623 56181291 566613287 470624836 603795704 754268332 749375558 173430015 653945994 546318288 421331147 372533977 405891247 784700297 293614363 257391614 46064639 835168586 316505719 28707413 520952360 209630235 90866576 15321057 822017342 624680115 281907163 790227176 573746759 279098787 372870737 310282330 122198598 78081034 728062054 462894585 447428865 413250222 79880170 879751290 823021800 628652914 519882344 921822858 423020751 881533677 368126885 609662169 842703368 960273810 689469753 16751635 627557927 654782956 464430096 675788777 585067338 713965557 908872647 586102748 548571957 757611508 858439450 792942456 763578266 993738291 967228564 194336005 76431951 395796184 334704833 410575172 715415083 18693304 445566344 318921142 358906689 968050309 39782535 287763318 106261220 739505196 531501099 927389705 764425977 810794283 167954587 148556385 633938971 670349728 348177165 882408815 678337403 934159903 336172473 655189196 128438706 718004904 855289226 360475766 915242021 118963530 232099967 744327565 38239463 366796895 359247305 614238006 457853170 737150984 454982847 811437378 418880584 198006949 296007995 118651298 712910880 132059716 371535093 175200684 708135864 498457494 56615672 627324732 606549731 783486802 5696938 297877358 488740 809812175 412995284 756738706 960976790 66639422 571755574 147902753 558760401 564924418 658262891 928883111 782519562 561482101 944060630 385617999 565628701 744930848 668886056 303103149 269951530 22176645 929320842 342749847 16169286 897354597 52770878 335864209 264055601 827612596 750526128 179050997 869513291 909487198 213301453 803399924 493053143 490308683 356201420 998007434 325666629 152399610 658430262 306308040 866800975 703122766 687688499 609343322 456386727 916611709 145116308 422984193 252461041 735314466 779325453 797328506 486699633 472900115 817050587 731639458 358657955 460330292 774154251 318564427 812065702 663883950 153568306 56172420 960871459 316092959 242560977 922791730 519627524 655925984 693808401 960944369 55985370 544493340 83156329 838709588 814152723 821219819 461103343 582427181 793326520 646531129 508644615 984843887 161651425 8715939 202547611 548650944 33631769 802634464 482823366 172399784 850245894 987000136 213111198 140835042 212618806 484385177 999416895 91563318 140930136 940681877 57422166 842343576 975605007 436665152 277343835 542903609 684805286 844454709 635411284 565979809 514527149 43977762 398222024 754989081 522899200 566620759 983182179 682097815 238228898 195250452 511533608 810004364 274795922 856579109 142440025 310232775 348214490 24641794 877878950 669984554 661660849 406261105 989132452 701524310 130144359 897344044 881471975 828128419 158496531 121078755 369404815 581515046 281634211 70737285 230227988 892412974 585523934 262735630 70531845 435415515 229017470 542131446 514214280 742318551 724171140 46495908 181065661 810579562 461058723 946713912 515304660 260341255 573489652 257171048 692712255 303410826 635046203 93969507 499502036 966485602 889600882 399685958 240726340 803230138 354372238 333722581 630069050 208717518 223609591 995743975 499788761 779921712 176267267 753154611 256834709 59344542 281329544 139793062 170816540 539845521 597189729 870438553 120375835 883331057 373006864 211114881 671174566 859697335 237357532 999545304 494609707 829957196 921379455 912577482 131851832 755781037 181280993 684445318 498260050 359736379 640062925 843093150 407736563 94551547 98715642 374067318 16697308 389255735 894783799 70801332 939933684 212363479 594561994 642629733 477429339 830777913 982110835 76821926 839281543 828006773 402310472 230478284 240980934 201747397 62680493 410565275 921648903 340985654 478570181 181966605 7559015 79908283 77760926 729449869 265494426 727097411 65216719 552440719 22201112 553280618 718409767 787912901 805634066 944468988 682672381 337569860 854891234 713641881 900834671 225376104 680592961 504262913 322840415 771505003 500734999 174887586 735862969 737218994 402570037 637298316 641854646 750050579 513733573 206708656 658659496 726023401 421367774 147769816 653977445 401065799 934697483 622764932 373029981 201056591 920506811 567233453 305564662 438808609 66745933 422344595 731532823 833810070 302101376 566851355 570787734 689144799 197938568 374409430 402298193 180806903 587971606 976989744 866144556 647023035 145240819 188044044 56996532 712375983 385594584 464575265 202672433 696898318 549840367 745604352 286836667 8552588 425164910 511064075 73519298 221725751 294202651 792104789 181356355 621314952 935866462 489353901 954538534 68223462 470254437 914033074 92931911 658465256 780128212 756117434 799946116 26816972 735584863 105570228 152394739 586552887 523264082 725314327 681727529 370585088 32722525 273081304 943317974 926825468 465038509 274631152 192446219 71771456 216125638 939317609 438168370 267240440 967129495 44379589 306186517 702499615 827410645 718907511 792693037 719564858 546257583 23965945 809633185 346129206 48849409 496535823 346192695 613484946 548456299 891015206 481915432 612437850 799161380 793191720 685620524 365625290 584140986 666555403 210871581 361041542 939298127 945848493 205225021 524543195 264465661 454889104 497786132 273997392 148555883 390690424 391459189 78104091 102617320 268332857 19122245 13033240 781931491 236757549 633680553 998023829 132718459 676916647 804794625 402019871 586501538 46513626 140439041 507890526 598106596 792576284 134297401 345863187 992880295 127333472 721787897 43040344 394669601 86137480 773340186 176267578 723967545 549428616 522739133 824813045 289778595 299921466 523488863 529003785 339534703 744580234 422212051 945359931 725423326 559467823 956771303 473643133 907772328 752649263 578905733 999109440 655522103 549032232 900716313 317617625 997224813 399263627 391635964 441101082 655976312 118871759 327942482 620320319 74879149 565073599 917608152 150679713 972299133 681594500 364174478 407723419 471617919 110579813 145256603 9821854 59463199 513158793 825950511 857007259 630771216 404078221 173970555 428136764 676686893 717646155 902266472 207215990 500831961 35990488 569400803 149068152 368392404 457677118 540246829 65818931 877755458 17820494 311960599 367500194 483212163 877557736 3535548 427464596 24815935 800933235 485653537 372778463 59607682 58605833 56374146 790211001 675106344 268624067 508863310 337146269 67332524 924883644 611521977 696875383 208310388 48452035 276454792 100808439 681931771 312505782 297322250 939056550 111385155 117347754 483390615 6374774 53695951 908213106 837266734 556690949 522671781 274894829 762431300 947808798 344990625 654591494 70118523 36837476 719577226 490547863 149009148 7657841 905245123 977066817 433312094 425577794 899481475 669014275 351980854 224762534 637975452 125187605 16529837 300378944 358280591 909089688 199825816 205885456 39435871 680628188 224657489 356066778 575524984 325026092 780302567 741025072 286302872 693565543 142187223 371246616 686832391 445586146 803699242 58924175 446535152 678383275 181778937 912422034 397423975 877691194 585841922 839516000 749904205 361341103 542468168 461473262 641970043 383772593 924831321 527568949 432079156 219314378 340928895 433555705 996274346 644704038 747290220 429888474 76191057 164718218 848384011 224265739 625728958 761844441 744377345 429145424 440340017 142692070 684573150 912318746 881312473 197437273 870948849 82857455 339245637 422917964 523093978 572167963 292019066 456502024 77936269 272712254 853847240 231967351 277384527 2308410 974264365 827320731 514838454 105247094 222059573 603255320 680805943 361444807 656286880 523660059 636947648 679666937 66170162 703170067 305100999 190564883 247114886 998635696 33739308 234311153 702030160 203230135 175082103 288070824 447904996 3417696 838705053 880465862 707123668 614328353 7781479 16862464 983683658 341376463 976255975 241898539 300223868 377162651 168348937 444934993 700047242 755213121 21622141 949628190 336427125 39685273 754068588 460225681 354811998 968446897 583830237 627990517 429914590 730401800 423374364 733301377 365160127 647140289 499963073 824523635 509269774 662734689 726793067 694285004 438243086 194235665 212462059 912761867 402845409 836952130 676324465 220119807 847538167 61671227 757927900 48353140 470442233 791927639 814598915 139023353 989085952 657274638 700974995 522096630 974723427 1110913 935395659 913517357 664899760 812272364 284345344 726488496 644727848 210899211 397820698 75547433 996764550 471140927 415653290 520301001 736369235 905487650 359452034 27916281 178699854 629689981 759875049 985852251 396741582 56295504 871386129 870410814 616859420 760472528 115623648 301507986 461667430 870938318 623831045 793238330 302783705 136280977 105140285 732484581 475823726 68963048 931591218 405888391 127931942 55638917 483065614 80189649 566774497 992428482 415434185 923674425 238459475 847944960 66942795 18754185 937936936 445777974 401410454 385181157 597697650 761047863 760985808 657407556 667974879 720219464 210322556 458396944 420861739 339771577 717810329 59806256 975865653 615328144 93409849 769444844 11594402 953881572 499709751 23724052 318840882 246697333 753143579 220224659 373051829 399259164 577547732 842327378 876665169 715355365 37675053 325680247 415348609 409274310 37655951 21584947 191206430 979600793 337015777 344893006 908160372 967601626 240883991 95614989 798714907 485054163 812037532 959744719 803871926 623793483 239566826 232418573 114178753 383108058 921157402 335584961 631043473 929923516 461646727 999807804 928252082 123457483 757689055 138316924 247433911 949145123 983597725 923442853 441831094 384327377 548203041 264609300 873334291 437515943 165387909 922216081 840548235 742354115 103377727 767831655 630303484 713024413 157589013 264982572 349861578 51853232 358804279 35133171 130957833 209786069 476482767 724306140 339051964 893885509 244218933 716910312 944949651 483267747 999014674 641968988 707321183 856645895 61271430 115738183 793888708 895719212 757579337 264258344 846760483 821986468 250240719 735256445 955428012 556422046 569863106 116941868 219935815 98335953 414608718 591107525 10779153 538772135 424788466 900243149 36465062 435760937 653816335 635196856 199699275 320761194 639736082 193932977 317846782 518627711 126376283 387606951 93745636 869973657 205445041 889170770 607392754 737402340 462511654 463552632 883819312 179470793 622494471 930399630 751001515 191632750 103429815 834308525 480377079 964186869 833315625 420665501 47608598 690276721 217338787 929336992 419682995 170805137 692063419 258395148 107959417 663003204 974418677 471710145 768221096 535891438 417482542 349747588 957861627 64490010 676601136 806581949 145304941 584479126 424635685 353692211 841571304 767092324 910957667 871335879 288928686 808206513 569573134 69920803 158941970 831160113 499984608 667919382 273593152 43771691 459769300 53765522 782742954 738947340 208028381 743264487 797482748 43969590 199150940 430289036 669482566 88392218 83628814 401934923 760847262 574563591 201293837 311850733 893939195 594620699 959635519 931108314 574863432 662945913 16175390 63143751 887227362 57792205 482174159 830198361 948754513 245949684 954521962 664592399 438680890 949737758 170945077 314310437 571597177 457929833 979034585 273961107 535040410 133927521 633009963 222470290 18177335 428009527 972626369 559275212 837398584 369424873 210960552 604885392 802011454 787944705 428717058 981401700 211855354 817172670 722421936 207645057 683029702 813809712 227674296 285481195 458137802 988409285 524926673 518875071 751438905 353231297 883594136 657170625 218808698 443988119 531087627 795103351 837289479 144535484 483352798 962222958 223748834 239340483 60589261 39347441 562114061 774231185 389749453 308920937 327478624 82611400 436363604 35568960 984531676 794046202 744771524 800326920 893768662 997760202 386532273 276797890 164228900 964797124 32988972 492067328 947695012 808149430 582021894 505498945 943947045 329318101 170542525 121153816 846011476 293600717 443095735 662540672 22515151 782308565 438254543 566072753 573343736 522409412 636796800 758280456 164411072 408996423 759183447 786607957 156280346 59416174 872205753 624479005 519686598 596769006 46270812 684336835 187263855 831208441 882426278 826487744 431808548 506498823 154859367 222973868 692544960 816909747 284149514 359448007 563811564 888990237 424747720 658929865 994896064 104857924 988105978 558995054 217118220 540586500 406082663 636627019 586879384 146390189 901531308 964552393 413783011 955226903 865367786 587048511 50419609 316253871 49139779 403038293 91487174 983950927 270934229 630278413 749657767 18395666 154181680 517057649 630509322 273364674 821668249 469922400 833575536 188265103 805959552 243045563 709487472 869414190 813870176 491394852 246641970 527845547 621552196 671093860 820766604 409859070 571433692 315115694 54822336 917581713 972273013 581357446 601731682 316193279 88176436 635195812 254849500 305712370 37310256 666748875 508588140 861703396 153408683 760208242 928317407 63823669 302986939 223521751 383599691 304255988 189974742 591780503 446891964 938330745 303815034 624815027 915802656 508374727 21111085 422072133 572470121 394631820 539487490 795467672 87083664 421846452 46940552 180717211 507189483 520465839 840844197 523291364 172148137 341137535 40146409 537697011 254751739 192466969 784915891 733404813 451747136 462490626 614479953 209880420 520364527 568403446 618068712 6240251 883648474 873354258 574576529 601142867 424125320 308073536 836476328 255400393 865324837 770511144 512299685 556150889 722495577 766448867 880282679 763929901 113982177 50920908 74929665 994671661 120797564 750390276 500416476 56475291 492396719 344098398 490907721 657346508 156253858 352722597 508122980 618948341 238023208 202574971 949391180 502204968 940589884 115382562 689332714 157341665 356673653 993249221 814529714 360505448 721742785 614278081 432760285 318180112 104946804 960425434 364318327 617218335 316245315 837710669 860211407 223531457 619406305 544552416 332706281 610814573 853028408 642458176 282291546 243220615 554998951 96506353 430020542 644813895 721459544 425644315 94689476 798305783 500285249 536219373 9834729 333052560 133930005 631856608 408710968 799649150 322306799 662506783 313920670 77007791 598381945 471053610 838253425 773607761 235799096 726041326 723830067 206265147 96717619 20632289 396067149 162445463 484830603 621243529 107903761 683200898 678826443 314496597 985155983 434243152 755028780 389818584 782158572 371492275 977361724 661118064 950839286 540622334 449277254 777910121 686424298 52523133 565501547 869531702 129311393 428332990 304425693 499981531 477952516 234533693 884167120 377654801 561062649 220356839 26650504 410615115 643124184 983856850 191245134 628693572 653411144 379404006 25352234 811007165 961886261 785141895 643961760 383576062 511383577 804064227 81782520 626797059 211810737 572989904 745096518 11633250 338146466 149036807 69387704 646322330 390512512 207592220 186104022 381540881 521955997 15676916 499515267 851547524 9669550 521580532 414867281 812773574 686727730 852748846 562190205 845741317 632643782 846756227 536767741 110318347 215798294 872647023 698541200 559306673 406999326 129421250 126301640 825926513 510886 972251194 359171259 960651432 419934160 206139993 136660530 244567046 220816269 580482812 471653680 79260478 619977259 179403195 757372899 502687769 375173664 382842487 378644203 179641240 204273766 441058685 344323497 776939291 981870462 543049913 75770043 799870980 529416535 616074196 496017905 885372861 286394304 689937507 662901200 299965021 837163449 35799430 934489300 367189132 932329544 756876071 949317252 914875979 90296456 354463387 932467644 617148175 563049976 799558798 600456287 740147061 604139830 204234761 707033978 648054117 11262596 806193936 74968118 448567814 773597726 112414669 120381613 188769045 280160776 841031314 370076673 696919167 514505059 297535809 565724514 746607304 236570083 320862676 563428285 506115767 541541196 794457865 229679120 668273275 673428487 864796818 558157651 511551766 556303753 573528724 274867968 456801063 690916712 425704710 619748922 817842396 93811333 695555186 799279894 979876559 30201667 888679663 157953140 293482177 447283518 561427894 25103103 655851965 438833767 246977719 352348568 765639432 307244025 996358544 750171846 852682001 887994533 395106106 47516260 287283564 309428727 592306996 745409564 35805801 487464381 332192694 964736917 836052669 883647551 532440492 154993107 24373802 828630862 955763132 694407563 821878360 539833515 103175672 13267139 848114229 3415748 245050945 873894982 31281680 37688231 673353805 357509610 27305468 380799 736579505 925701508 713840173 294067408 933255479 553835234 450216962 211834226 910743757 437455649 166427037 717233095 151460135 437588522 29489497 2242706 167704391 747618058 775794498 991335220 485403991 120801829 221956661 938642264 694560280 944617897 774944112 691869758 695248948 690155692 685522257 743497534 736689526 114244208 558423511 130194409 143586428 887667192 359625426 873915903 465701778 775505815 70538817 424774434 299330 879555079 399764781 86856474 178621593 960684454 802887569 911667414 33412430 598076000 490366148 237069280 470352410 274322629 896678567 207345046 673336776 831574607 391972824 23414025 958055053 52080122 48228493 387071630 971116494 376635185 306329507 414158905 838638411 149026827 776268497 807322023 101904794 254030131 612663882 25098475 464156561 733051649 551476702 623762935 683592468 985432199 165779186 257914960 348562859 756281977 752438195 989245633 763010299 743292746 699378414 430120068 633159741 204856460 457248492 686036202 227673157 935357788 361278687 798637894 659935370 275599450 173875822 212663753 253849364 623719488 535741848 352725450 552227369 588412574 652172040 385894269 507856612 323359113 151548472 272831156 861606527 529675730 955043482 82013195 181974503 895253011 89310025 906775835 506141908 410035746 941969654 827073930 927590835 617758921 924815853 267297931 625683270 134482239 836856933 59102342 241876369 75195948 188457936 32519840 545735108 486455337 380893457 197842632 387481339 23435769 305148044 555860270 855416919 662052230 228943113 572891636 321780345 817836750 603673400 114611077 592177864 579843611 262558723 421668190 640119477 885209918 922104830 209685429 133831115 343931569 48318060 355862823 116670311 190644753 723043690 562669284 854200311 869767777 599489177 557788790 634429483 176106311 923696110 712804623 498612802 541827435 704331557 742006987 121843997 588685285 617996327 225964101 211654844 507699103 332820027 470480997 457744546 194022026 570527463 654969625 24261310 190551284 538994976 182968554 273234393 496630197 717179237 60783837 950314076 176436806 683277857 440042700 737195277 191713604 272408105 758886272 392585887 206711607 280486220 559697446 832847043 335085030 486318370 58520653 930689112 995598702 587622059 305716619 897935943 994415061 878782561 977105594 21317331 79349130 130561288 125973830 45428093 555703788 721116540 661315527 670554816 374410786 669972855 264156784 610468733 751368663 764137205 464200620 50385559 14075051 707270220 309794448 875820006 270102334 660826955 734902385 955171375 695815393 246250592 377746419 756876466 185642765 345954899 746480083 765121519 248594097 265274553 570364906 169372488 145381838 399319805 260643469 401004156 303852307 610672871 707375914 865901485 606196508 955988175 609910104 228471793 677515559 366697514 604318575 161354780 109863999 914718001 560443076 658756615 447943676 147802813 415030746 426577154 558201161 44366442 318995170 782834917 23657467 970181369 355448453 591762275 834109115 214044565 796782668 154493223 752140493 847945797 946732863 832339795 617555480 353183016 867443029 963219316 583783678 792334613 652270653 440882607 394783731 707871514 175907559 219985946 909916422 822066400 210390966 391958492 271845180 278852422 775698886 883388357 435697214 669649222 13988103 304899758 263423170 559408457 873553634 25033665 701675806 601280110 685653301 783861922 702491970 440217218 79928835 326141107 829487727 121375340 505846747 623215705 153686459 166856619 628781093 898465520 806021159 473290158 379558966 460212644 395321689 286480819 526138550 333089226 318643013 866267517 664852114 129556538 268137110 228496773 856564431 134766087 687351181 296200010 934593366 55572786 815574158 180351863 588495562 581306041 792322821 922078728 922579321 745454629 394067086 947697375 788496333 648946714 269663755 859785962 810386849 399494905 749273679 430425368 932311511 119381720 649190363 301769652 71304326 476284881 138541654 407896920 460118521 606442396 856444962 568934774 695759642 221439257 877082211 13122398 184988956 823014474 491617182 21740916 544553775 847686012 190613570 742672310 161738137 678760559 896636267 821004018 347310409 251604317 268839958 9419928 624418513 560880612 603893818 608612118 108478374 236485494 756776738 507037648 354142020 280341303 868691222 696741430 71073494 23764044 225060302 414454536 755911935 142539873 175066522 426631154 748668246 752649551 173671027 452616689 551381971 681388605 171385630 601191815 513032740 988691799 97432406 973180573 721377204 330031962 966792933 52744224 182479017 995757663 153059668 397131369 831628754 577785573 717174514 111556863 880328007 491214758 752089148 940032903 439673982 476785336 95589897 306394860 298168484 432947637 80762077 292458828 332399882 159770462 377672246 777205975 24552870 552467895 449253029 362833996 589949329 554428091 738933801 657539959 272995656 906809678 674582071 537745481 691715842 377250851 185802192 897885909 623727911 672180633 778715332 971155187 339837065 120579139 16664069 210421372 906641862 776522796 921745713 198297990 618340950 984254573 993415598 137101199 802119848 646583247 814962925 407525669 988970600 413733355 289450349 440364473 912764281 367883724 150375009 976363210 331819737 746354936 316945535 538691851 592662928 556218430 341377503 159900648 177892121 727375861 933533164 15084829 619840164 650314595 577841132 986690363 680650556 387273137 871700540 911744264 233141960 357758701 533524449 53239973 436289208 581801031 132351494 812005997 643631371 642895580 163687640 362357223 403204276 384444924 210605151 75200983 520664427 415253063 443292811 585507660 165502313 129615034 101349453 245587635 745441462 442085444 197158583 417715444 677496948 653314147 366293630 235741113 228608595 99632201 930996125 291584620 110317571 125562733 135437335 757599933 280055003 710169238 78548895 606495871 273863098 938732865 238260976 382403625 548750505 969277663 790161510 142462761 385696300 932987006 254773450 35424673 418490926 697083261 356822695 779724349 347867340 436683265 713011723 984480324 704887401 155965242 972524514 104497663 160937608 263186538 997007351 544897385 563843849 146572489 987970428 146950630 998807009 270425807 903235127 171349771 805625047 33384630 95280981 375694785 125773217 991180688 657568068 592397951 952086776 691056102 456699804 865260455 124064303 404356087 219851441 950416420 46919836 318998424 304298072 323974014 976639506 779119741 609350972 422350851 333750547 592001041 158725813 590827578 89576219 354867449 15111645 488941981 534377473 304173088 809855956 832495988 367852417 804366263 994810184 356554605 399904982 575589945 864661773 802344951 93318922 89425895 943510266 559688006 167590915 103284591 135610163 677081213 565610861 537835204 108903950 647337291 504160798 528140679 60909877 307703380 598433671 793955005 848904853 724979203 984281187 648747576 909967881 21419342 411593650 51078935 837413519 137615627 431694504 27851662 190955231 676099082 788228630 451157803 139812387 867191945 979963685 924404636 693449574 155996240 727495085 349165542 629934246 562098001 53639422 956077396 572530905 726028755 18563254 277576312 493350379 614647955 97039597 37557513 472197553 301743564 624041101 200320526 754079728 91873236 200439097 671241192 28181598 92972870 891290537 60118375 602082748 349548357 760292432 666335267 628476246 151284899 562301258 962665919 253766233 794869816 368366773 180035603 182678651 713730750 621122317 52105891 813790685 85720267 991739975 851112284 648434073 175645346 64857746 85215954 609011201 638754579 397312131 768018883 879603902 297948916 883487502 830614588 535904654 849627634 414783922 903585130 353328493 275340548 698965761 207829538 496382174 932252142 524264980 73359540 823793610 476992695 768177659 12343149 908858936 444239380 283726655 394179014 48479964 366496996 846070047 980659557 437877733 630978698 706740236 916182172 231815867 484615986 549595941 853323752 352985056 420833769 342002921 249941942 485870349 223923681 706288653 270617601 238960526 910540474 765770642 407497070 715492227 233857761 15363244 709759404 781134428 405196820 209675601 625816845 14783714 202937367 692357342 361434266 76062214 302065043 282651269 308656220 745505281 126051980 289977825 965553711 907300885 973314710 772298756 522357170 218770265 835078388 193656615 988645663 188652319 779576807 502075056 604171337 357566850 534922298 964453967 649721119 128039508 913554709 851042928 534747935 972467627 149735345 599537838 471706302 408885521 655506628 61332358 812339553 25670785 511648980 966441219 235574209 852258161 870562962 633392405 241488164 748117265 767109454 943481482 937616792 776566280 804516033 385744333 326662782 958035931 392877474 804736264 319234531 947961113 436664099 884375078 848677750 417068414 501075686 689953775 399264727 558702115 713949268 326828708 779609235 115062288 572562680 800736773 566835050 431206455 900859040 818452759 900170831 415570948 17827563 614340554 63842120 713136521 336139611 740504607 456594413 496655038 241096340 697934898 730826509 284614576 832101795 244439561 938677356 101357739 789949670 726979199 705322849 765421876 603240336 850623000 558086934 401903810 209421212 471670962 255308826 857684745 715369187 122078598 359792812 193054144 747244255 16610421 242691110 193523312 516805808 422304015 984466325 391293924 13553648 318973837 386236118 533446918 726986225 319134876 433244194 327029543 189766193 492327082 419744351 136815236 358761855 643771894 210680668 73257886 639633569 78840738 366048013 394094093 415310769 293010270 965424133 549595822 392691776 185018647 476319274 509930307 835197034 487767198 226445823 480094546 719136608 299174268 868281442 865363571 133112101 946614284 196170869 685570855 780738553 649000975 70293121 879518628 884448223 783887598 934827588 122076669 318478013 997150 723382312 470902239 674373064 947134732 893543138 756260443 43738110 915748250 118441132 534208075 546384412 567881370 566141581 914037812 525379004 292527304 687917057 759124221 887888107 781967552 771386879 50117908 577625742 436699501 430480076 484151199 818491694 230797108 420392340 210904308 900286117 985681288 601710462 542364306 889368753 455698867 809438532 664165371 973309578 16328132 790415208 527009080 386621747 624933352 821774624 75061615 292494818 443384207 197400366 163526547 316376794 52641905 135309072 953010506 947311658 353310443 113406295 606603259 617181491 957223212 420256631 411900034 580033253 792700805 707739163 566898414 181342955 828374883 65115467 757728175 469885643 274553577 536385974 901113229 456628328 99199225 317658563 529379917 251250195 236674900 424057954 969065345 918469004 353018330 248347339 676520655 94916787 254082286 164848452 365213535 99657272 369894055 766113503 983154807 762396431 18770320 164031965 729458285 233863405 437468871 669064179 934469654 174748284 483376090 78357362 784055329 676905479 906983687 655306237 41525957 727333049 677062999 935295387 95952820 54430888 760318004 475615660 533322381 585522418 714377916 504156827 438254320 953563576 81661232 300941831 481392284 594682581 836530253 412094854 259528139 505054781 135299482 100683123 657740086 107849867 608379826 559198605 40234716 898997150 777094180 874219667 724395948 835062950 505935296 53457540 492428357 406445695 52310838 929696761 955451650 491332895 267938812 584295986 256569265 27171654 35846961 179355553 884499367 400122453 618581368 905501783 641430316 814708954 418482937 632765400 562097292 851075759 300147638 355895494 638253946 342086051 808516929 459405550 202798068 678400931 111303527 89517307 833032423 754080989 537710316 638559564 795456929 369032360 781458187 764884748 16262545 520717653 23551728 826630422 53538793 413878926 927597641 517146450 82662260 13411114 142476277 318270172 805671644 711051737 905222761 78778256 924096380 240470103 170769518 989158170 263856328 433087265 708130181 598143999 609152691 13690766 609027442 290868461 1619794 268926977 613486947 243808136 260120087 887344306 379306035 857332931 519124806 783149040 893958508 519136890 204930794 177395475 865874541 653791698 728137925 52614614 106454558 128734270 920331062 652123699 524843338 793515602 124315135 296191593 725276740 612478795 566673343 162057146 562433797 695462700 238175772 227139764 451098986 406028036 177737900 524253394 207345822 639362639 386268720 512218992 583574210 960778218 987639888 659130239 868086124 205246257 10656054 398710300 881742178 85814427 159285603 152273708 104423970 279357462 663921055 510634166 918273944 954261092 95820681 967685731 129416434 889612566 866365095 929580393 243130467 520991756 233631473 877531679 819269975 721009366 317513174 289983721 978667047 127590433 461860778 275940296 213829374 578357810 121860511 368399171 211388148 533787571 133464118 932778682 215830853 691873410 658704709 17438186 797950123 166217390 969886433 522396583 310565330 689865356 225180892 90564432 843323912 15406873 751413262 124464765 426026772 37991973 661961105 435348427 517450232 412950063 234615028 339661347 930044837 683628579 431198785 17507254 195016628 693448763 834585197 273627849 565210047 469139978 29870785 47381174 591737091 49760014 657045477 295597120 604733516 946942153 709241103 2236591 882506495 718944534 782930465 534874870 471182880 657851902 395502715 91865943 676194456 75585897 287747929 981427315 155678274 526310306 436375115 456647079 158930040 586581421 448188573 84429451 948019455 939406978 20901607 626929964 31259582 889896126 419627168 800145677 298984361 434257844 848119012 527868540 572289050 40757203 706151678 969246554 126224928 585627789 747594057 38797007 737769699 412890126 330037269 388534646 334013597 610130307 210000181 75241666 170456385 995932841 701110557 304925565 654328629 791906270 284027588 483121031 203437343 811263447 983043724 502068882 217921956 278221416 208071489 537404554 639186647 311723767 641462645 372116654 132115535 249713970 709767569 789041179 403811302 732207915 909193863 531840705 91775481 46759490 558340482 484469100 149000991 690087074 781371970 825258056 139582553 947228488 683522077 677224018 854961397 197824053 939582643 495661798 630570538 285315223 763031990 744619640 100250473 516690399 719128398 752830095 632645088 11140542 938396707 311426186 172823463 7335422 298286059 886572802 923126321 138345466 462251441 529631126 654431355 67759903 827199982 668073504 30505630 132178055 410804450 499630878 153069128 521293701 899872889 452117323 578612927 404288230 804336359 898573885 964034624 124407265 783406081 835748673 698741084 836025674 551806129 83847593 70627404 645557282 997476808 422382963 584538530 780465566 862887630 835920548 743044836 916644358 440747123 775605878 468718563 779016341 390433941 434658805 754067057 270186058 569444096 18497852 276192171 176462245 144433106 788382960 696365722 338011207 21233853 13923354 12623241 644384765 810769218 982797109 631430953 977665493 628417386 816153822 974822799 520385098 846050083 732336669 61738034 934609497 824690116 771860312 317965024 984686394 355747740 409271108 4889389 250612046 827251529 465751305 1624037 920280133 425059317 408169113 317819606 796992406 349590838 318295130 767806586 295708801 348949910 333909821 626382533 135497500 914753865 488824928 76792104 26935348 137757344 898993351 634326949 744167237 703275896 68176278 673776972 907880438 863626305 755180115 208116646 704376404 436689692 177209696 180857518 83519449 856329985 748885321 3046749 127772325 205327221 530469987 42752213 645374390 902319544 413843910 917388926 705357722 103199500 544409445 826367378 613734488 319480530 846742312 897658707 822030080 889731174 948715380 843834598 569956854 743627231 748269238 282667039 151508802 467062558 80828820 807345831 579474191 421834251 71221982 610537329 943357985 403730849 980524024 907559762 918831477 764356642 768251217 42275865 847144344 798709921 839031291 672037628 274110068 63998281 326836216 851626989 57220992 726405569 98417486 954550091 152378168 58404341 197192488 500244434 881189757 860952364 602072971 849566709 835187804 789523618 674093291 420711598 712325048 693891963 497905897 152878887 626808454 129355037 781011768 381553645 348054537 350342986 608864384 117762865 280196484 906394424 711583203 807257865 441091087 393814224 971988181 582632838 865326025 432388649 898613319 108254268 375759298 60162082 481950305 588153049 964547832 206369662 933971139 515103012 556995376 156286639 514279278 233066467 489628371 590557589 959533999 558478867 385368600 963699658 375065233 561034141 950423904 58791246 948380206 786259074 425332814 857486391 161526855 329583115 84125419 257591924 887466842 903898873 839389756 590118879 957821131 616760840 875800718 143357296 191052461 900047332 476661271 929738608 723059084 348249554 971497098 105525249 503494336 13391325 374201074 774867350 490784822 163975813 305884177 244231130 73544780 744226325 957640656 590298272 453459923 911435428 966844217 905544185 493709754 864698681 411683883 485898658 304713759 774414121 184397392 588352529 478217020 7588233 172562333 213948468 85046773 867286338 707692463 680911154 102813585 382382428 694408424 171974998 990512747 315406901 375063373 989857891 469649054 872548997 69815552 376241221 634226823 866782631 762962216 739729992 484691854 405213413 167767750 453655276 207747237 943846258 971028594 782739435 45953765 158898077 683026507 759440479 961330600 173726799 993296786 907145111 592834524 412361014 101111092 178070026 672442148 261393276 954531564 895142500 799829684 539079448 542369952 143473936 222196199 760815843 581230899 272557908 975128542 719709912 331119541 287610578 14294489 326800774 970062735 582170062 569789396 213239613 279772371 227741750 711894991 439821767 274550774 642905225 523558602 663284823 608857764 371271919 468103160 594929091 986205422 657275875 920945841 453800021 867983310 569831375 528994165 59765464 480942735 771664345 99746613 821308374 605064954 534785704 417855768 464373065 739448564 753435052 226826303 168119764 114868383 873375815 810979062 275357419 946642418 436595482 119548232 646619091 393136333 43938680 578632056 304452885 655168859 880978079 745227047 295274351 945109159 210652560 270926206 669244742 539535333 684323172 487353388 128072969 953154316 715461306 327049505 379917201 627634088 524946936 745593273 554332132 102905312 907731951 961661815 479335944 313578558 563221172 870972236 86959350 296767531 29353262 621360590 549718780 757828960 123634200 754522332 734189290 970847817 890096967 286667098 991642255 633960660 430395062 987300588 649916772 480576524 146346094 881659927 759980571 576918806 976619028 335418846 729986726 549485406 366826227 696477067 238639243 518185696 713207455 317674164 917710405 640791910 774242085 654259468 559116467 871408769 134078894 724919788 930924366 732363515 260784572 505538287 489640140 292999380 755895352 350593857 931476052 311365575 448864562 247149734 638969234 211781980 87416177 109395664 585649685 388449330 28360315 719322080 671016296 750647187 879997620 75790447 927202777 353215779 769981004 881350260 31631981 14650184 863393885 286933807 265175896 69956970 564958905 237571218 120780489 535764114 648632375 607517397 15024563 967113989 39547744 917530383 931987558 534900831 536140942 252064720 319932926 988759854 12228350 647763444 21084147 605969140 270579988 417482816 269846460 4660059 117617878 335631099 788867405 102100062 504305921 586787801 698393022 254560827 472191342 349381065 579294801 978193949 453864598 898232385 370523071 361078858 512721709 875167396 213819911 398256750 761902320 896753362 384467442 792179919 263032257 448582711 316986956 794431940 442081639 761700842 287019135 571081705 471002740 721871369 602711263 75812519 924495497 216104566 13066504 804899817 595062812 259202594 30030057 572661292 850843486 55708069 999984921 891880111 963376365 817681321 830992814 652083014 464081519 167721899 260194962 7664124 254900345 771629909 247210032 629008476 236379918 165187682 309734874 521045263 553226155 611680657 361017248 237087548 63749488 123362492 634889253 144398396 755883652 308363103 370997512 235781773 485310530 31464166 809204245 966371604 564308384 563431548 213386375 133060876 164426707 289272228 425274078 268724021 235148751 489092990 692350809 262393377 858081135 947611364 370828677 359321659 323769305 146323725 798477380 988304637 999709002 462919210 781245715 832783914 840257020 601150663 406100143 563936847 107649106 26930182 144253490 326031336 60844854 359488276 820446944 615141998 508947032 418086977 331466994 926001646 256961538 354784481 699576806 909299269 417350391 589870976 748131046 44030440 397556536 162711589 588120520 920460825 467067611 648775090 625951133 752481296 383233871 594840005 322627793 287454346 106789439 949534233 41462124 748654397 726368814 483931530 831913087 777700028 835131254 370578631 736668543 712488872 119656429 902844739 894955822 424161193 578311493 346796882 71202798 766731936 183844638 199685921 531744136 191065439 318780317 367781453 491309972 737221624 644499091 242563052 984737077 365323566 276138078 600677314 939537872 567865410 169281578 399964349 410471685 520347904 445574579 988326916 464216571 34995051 286802462 911830707 855130171 446297890 13750583 884713963 842340909 925987647 804791976 524793902 50613671 207598653 762381175 789271020 458233652 351285104 78024857 955587177 852397252 41924250 466507465 957923882 454419756 469406212 163766435 435206909 115374196 515502678 49504486 869567426 432310580 177804386 813007975 61986591 518602015 906619669 456116612 925530445 145507945 316287584 77043996 467776251 688939946 645318561 228942358 342229897 493051643 301086516 374967076 743739822 912441236 498479939 412550675 833150374 718922393 352481232 360480419 32159146 261898460 77505166 773557806 164762247 280705773 582038206 559528159 576447681 803766194 540947222 554370920 535553403 687190694 247468871 440523868 955279074 455666523 650769215 287745253 696457540 50252401 892565259 688935560 255909721 570774565 229801981 143502209 76336547 694646135 942418531 976188982 262057366 532429361 2338389 631650911 89519445 718405529 840266825 634792240 498726149 430109353 117789162 456937091 839598435 222908907 19650199 93368421 471320681 456860642 49237883 660062214 806473050 437875478 485961064 772731049 212527471 691637624 89243861 453825982 504386253 654493137 613399855 669665954 103316231 564559896 825093520 246105749 257526967 318935933 113158603 916109296 264312838 737871186 529192793 275509778 24200121 727536942 360563117 293443958 290597851 602862330 994867397 862565455 907623946 733843962 112491266 603376378 731572133 617126703 746261865 373701720 220209732 444762760 552316042 82565514 411311142 667466380 274610870 860210069 501513767 911959187 504829933 568154606 334369512 203418953 670249057 388086255 432645151 258147750 567652426 96096841 492640248 833539372 602745551 754574058 485219653 775693647 980160103 165301326 116069358 135143173 991040952 123692218 752456610 515167348 11782950 995877049 647859417 985834256 510267320 197009170 46306131 726137193 809264018 496031283 181774701 464908629 444755904 296129023 559434909 411052481 399207802 592730086 495328365 221658735 382496277 566416086 67387756 209460020 203763058 98444126 549530003 749573916 520386502 355517471 837849442 721976949 471516413 252144087 181025858 444414099 250423072 539716741 570047095 860004417 248890149 119817912 605977750 282281232 523799867 878572325 213491455 700201117 127332357 737614578 856241404 724729897 846496549 525039989 550907952 500450832 999727153 256845852 229399043 339414554 206169523 482741411 772701839 819115952 24659375 355211827 460629890 938907811 844553650 828985688 451071594 861145995 932630819 468374080 905789640 321441939 266541386 55946582 860540820 641592881 74681897 813805430 745069826 207262019 849809381 894490938 685626545 847812602 345697171 636738481 670202389 854790666 1991169 397527348 771574101 217048422 580233631 491616678 274485809 826158176 948145034 78833563 210928116 885395530 507335702 67232372 996586757 808382554 558060942 251731810 996790218 124158334 288745097 946280075 854373687 366624153 608711796 839261347 432784935 649809861 498397389 932074318 480592900 406772963 697467143 642324702 710835350 284015098 674903462 344419399 170422121 713392529 412706824 597100138 471122662 312983889 746558603 494446846 915880454 311504560 868801059 154510367 554877383 839803197 155141508 388597103 609428617 524453057 370211838 176284200 954538244 343305801 139114545 671455657 381449093 908916569 746556171 397229467 999183153 775562160 476234812 232812074 945089814 862941458 549694703 856218062 157941191 209159108 706376794 981178253 721106969 931648805 870218378 488552611 869172147 869254187 44021688 553245975 261061987 785189067 574266127 659427405 209638720 264419483 778386787 933688924 315685305 948929876 622413713 202759429 63551940 164715402 902345272 493956649 610612613 748776051 553321487 354247330 657307704 534713222 50286162 169723623 363419775 479278724 829541071 775978898 506473626 298561811 271658516 654415514 994240120 175574225 171691398 917873186 37114051 940857571 716849829 214283790 697882147 804068446 198638982 716184193 241895687 683421371 791093537 939916505 322533923 118355085 607641384 306550599 777289674 506397227 209305290 460981638 733950749 685653396 833808090 548236605 1935183 137720312 826237310 296767881 520805168 789782075 456004887 297294575 790735327 853954422 360466565 766045249 796129625 129717793 843239426 633564357 46263916 541347108 509821567 803592980 624310979 284074536 98788067 631812141 428039034 551082443 137300840 325141232 134292798 711035219 911663127 194575298 467862384 167531136 200819273 121506876 372807686 671051954 46353122 357988567 733573956 823479319 192657639 18020976 457954619 267606933 487717386 188033743 816486201 618056204 393767923 225477177 854210914 523027485 132755296 931367597 875914536 114075813 408570199 178018694 528207561 130952015 951198774 324432149 657649573 966965356 464284256 104832524 244099613 742291262 59272638 815367368 577691526 223110276 837050526 360762191 631328755 641641319 137395524 859052263 637730139 896812892 355990261 216631545 906690671 650360411 618050829 111782097 855927237 399445440 380021838 344857014 962026497 165680489 76576034 354263779 173838867 993180926 892935371 353742409 503430387 486472652 421519395 202239897 915197008 909617703 782039146 120635849 769126724 763271397 811675862 514333627 463384869 442904885 16582237 70963306 487573343 997618873 628870117 503357857 491520637 254921621 709320430 291414849 276236547 183444990 520578589 734458196 488386753 838916487 269649911 906347082 996470548 270245898 944840731 297366449 301665818 627610303 754051042 159733300 613478741 117263504 294992227 325382183 779166136 718456265 969469218 923116517 319429557 34501255 45271538 125768199 268419403 528686224 912040291 264131699 754207337 423891008 317479728 983273658 438365135 289946999 176411473 949615234 321681032 903956123 793043620 711683059 493527860 101697136 475140880 8615824 143893000 231593470 647363779 111678754 585845943 434050916 615369132 564943889 273071929 149549402 105762249 761231060 415619226 296352338 614830056 325888277 983025909 663053231 873640008 750403851 794851268 90545811 816696978 616044507 257922338 516381490 383018925 754724 894177509 422621358 338932753 192012441 52070011 192991815 172469773 931858681 42989748 775519745 131835534 597256107 318824757 594048656 436655795 74379226 574884883 480842616 817844113 557380797 374384676 853761914 312667600 767700521 8884139 510674531 859242430 846104951 209809810 209118863 343669980 142367355 416454953 635472271 295136262 753696442 904085050 314536978 821379834 737752640 949473581 736072066 775947997 696532501 82986108 324538854 561419254 201225087 706394327 367901850 524012374 618573694 234801489 450817510 34825491 566051226 274857451 633752093 534355339 577633588 140501674 203223399 834984876 950542494 859437479 418481846 238919610 541562944 376974928 201948917 697340795 63443923 563653682 850331530 168429949 886942352 702677554 836766470 162503815 639156880 212057539 599876288 986847548 789436055 652707480 966255927 681713658 659609902 502836457 913874262 674296311 276355177 710749777 443029321 389158257 971789292 943206482 622862734 747402583 98199185 279954949 191346231 281499185 196141673 685651571 334509834 893798813 139231877 787856049 275129318 629820440 785108701 204563031 250345807 800459867 257890719 463550350 295116116 702557844 964146902 791276861 411169208 704000535 835144280 961486580 805645824 245366236 594362668 176528683 748991968 884119950 857817720 191996420 379011803 761458961 769777122 116868408 925064365 381544466 692199399 555889706 571067900 610281248 943396383 971853737 369596297 830379622 500736054 252162466 65015293 806656991 488013297 454489966 488953028 465237562 105312213 780823906 882822301 132541772 968216734 129896172 156743213 187592 198475546 981636807 986887586 55613428 780226736 346249329 37139789 847190478 257239582 9573424 438701794 858750360 244800049 747863288 86262465 474576408 774198087 713277670 94033964 996824699 67100776 176445175 121809978 304711021 25625580 439309590 556172201 811542030 334037668 33134427 145980863 34028912 633843534 234900330 363322086 257307011 657748956 751798236 559457442 15090923 752630181 967616154 216953574 42235022 368729236 869697729 418956484 493561135 581848680 377981149 571412839 978674852 688122399 824646930 613503825 101887810 545891637 847135168 968862185 67218829 2271253 804043134 80381470 993075282 845551788 500588183 340769128 575699896 944053894 887546711 346075897 495810931 126910032 503429096 291069187 624593802 829045646 132965373 487485654 436827255 668886523 784032120 837650450 581392755 436268428 349267804 266477260 420761686 61557584 572309881 564795631 520454637 827211228 579779581 493806130 1491437 899343167 74620874 759923542 881374321 206480003 492286853 368665617 642911511 600754352 525624398 897820712 599081709 841713839 570369171 295565373 274208155 82985830 807135456 93377042 236134565 300369943 538522020 969882119 44452542 268562448 947936643 347696588 159668498 46845187 210650905 737109879 756991935 924395389 750445520 960342002 737800441 23104481 152644415 853642401 788544418 678880133 376898784 291904141 421966601 307760964 776536152 154967798 293555089 992562701 266221258 929560856 944237201 119662782 810166475 761416084 979554896 544259372 981541878 841699772 338367603 774644848 144691419 958335209 496472684 273015071 773230351 564057132 580509430 570086519 676885107 145015412 22847812 985459981 239264224 144319139 20930385 724306244 338629587 691135509 290612002 231736167 133794184 798147947 857774280 976987291 612575618 620126631 525609404 777709284 578439463 570913611 725160518 195816978 912593131 391117349 758962415 787896307 934422292 866269019 947490563 494673774 507650967 866026575 227082275 437621296 566223475 877738887 950421101 883634168 913265239 131583824 667055372 530856139 230590324 569910397 738570471 923358788 14695311 263912558 325203995 803058191 446455926 210014006 487578814 710279614 22714041 157342447 339415407 367353135 88538340 708878728 893264344 481676681 682100268 177217952 742011558 993158024 347019962 321777650 655634836 434487073 470993680 139263443 485881066 409843166 136916087 993107657 196143351 547247950 829268645 398913699 290791683 247713084 684340338 121515838 197028004 453137637 806828914 230649020 317877018 130578966 968769200 28462634 89093792 155582167 878602713 583370045 256415974 445970475 218139921 149048237 58168375 732698135 659015716 771697965 277217205 121367943 165367466 548330770 958198060 526396723 89149047 740136372 220712140 326872864 986976753 587196316 148625752 202075494 197229284 331052210 720136630 31338752 263533430 164935959 179894730 795337195 169890300 842810713 356487514 669566522 13349956 568700244 824831392 291615434 623726396 735849081 56075660 767795684 443325686 367223452 222541318 763224990 791651535 128201199 748240036 282089391 861759504 526625627 977724127 609914451 646196609 743127031 628695057 91331499 888535184 934156844 33991415 791558836 887824043 797699972 928244436 664858560 714214335 234449695 169708238 721725010 806428443 669696676 781906765 213870927 775846164 819649048 999503974 477212997 799647296 914384208 207763579 284998218 852796212 720474525 210802816 38572550 980729085 464283003 138920564 256349549 779271377 633847788 583894657 732087524 771162982 967166816 958225967 898479813 2755363 755082975 338546813 536544022 732822722 250388463 50026187 386346416 541377043 769825950 783889633 928155526 96322510 847459185 609653765 89678615 328202792 756661084 735258011 80206018 532038283 920135523 780708251 424523908 338214442 677849624 430712780 788227391 512244381 165164332 625032394 141448206 744492236 785745631 685804404 233687154 952501819 869405574 918430300 58762898 702729652 9689661 943656219 76695901 502320527 830327864 508702433 305682135 431120852 204175437 757260356 343008670 708965791 900367113 820971669 828794698 838879236 886181765 109445398 47607609 133799444 561736828 949699000 650476391 95975328 156764539 555784979 291049640 555815456 211882155 955096867 239575439 798549679 823244977 851162064 385452765 985556001 645571935 167077912 31575036 459041819 709853468 350148536 782127315 208678742 72116988 444756350 589660815 760255045 12577329 731878848 947010397 825734892 763136643 663033255 305002661 14771542 512361574 112211531 867674614 846309377 739889280 712043739 858761648 74178386 973195719 7308076 829995548 545026779 82471355 361016532 67132928 36438234 192926131 97376230 523458626 555818558 673157474 548110158 669116869 740799210 116751891 483069544 73381703 511562053 656875130 638326861 25733074 516392631 767088241 852140581 919626906 688135918 671830534 49050642 998798027 75908108 845683649 471627841 631996489 121999344 198515459 717574315 560669904 112135016 983973091 395365098 306073671 986124236 701830914 558657687 737723501 863273012 378112619 616959334 372408980 352974790 421712916 277959333 46459654 338393175 782180706 413071882 984258108 760243316 692139608 539805759 954399420 42147572 298938531 661078995 930015987 117884708 454007255 751931225 262928206 851849922 8258101 761344771 599790579 71584655 622551187 142696889 356941244 570317770 290627471 65172435 286966088 726690181 354344844 651728641 162845357 815993512 650059223 369867712 394268987 621253271 66045078 893954245 714374194 512702276 184922516 782169424 128643068 495661213 631811074 572916922 177817425 481792134 948739036 644146581 513249211 132447603 446948406 1870914 947765464 848313545 999238401 364554662 354174152 978989998 640188228 887631349 358923543 989320957 574648090 447081884 377777297 308935122 553963526 811619785 537724499 738315286 674383973 729423388 324594111 396779484 666977786 556039500 917940591 524496372 333457444 70372659 928309536 315677392 884894068 449916556 846706233 268692919 50057423 42206972 208697344 323856307 357708010 729748128 432257662 762992419 479701834 422372866 581109118 143912228 568797767 586258620 384881581 269278827 102037920 699339559 803518910 380344308 170374020 558785166 438566250 696918487 399991325 734882524 696704492 107011404 665819316 447174202 557335131 578231205 157100724 672360755 967016649 226886264 647292121 862054209 297826149 814625760 779965558 236365383 531095871 789128102 246231771 77260306 896044805 93804079 452532837 209868265 286747489 834196232 497020890 722616495 596825491 790274160 966573048 508920948 941299045 675869884 514885882 884402504 420016767 725929298 605121299 572593052 532186823 323679081 47969752 359540561 249407083 642811727 142060155 37877445 839050520 394836842 525108972 793383919 590863827 439361396 675880377 638537614 498540422 698969627 363612117 969992299 939429999 717654857 799685125 517737145 661345390 933321352 741413572 999222006 459046782 316033944 538250631 745154795 653191291 106261632 856299765 841380529 994722679 237104445 775357956 527801823 528602586 845835161 20431894 148016696 891352150 827586866 611118232 300203547 22865831 837670514 519557056 806783077 296909841 290321867 424817065 111604947 622376993 46122961 615765497 798820849 484121816 799784067 384992916 219242013 964582544 204234815 132918723 293184114 863236539 617126714 902034749 20988231 698176313 230510587 697638915 292709186 467726175 482217508 344750479 380905858 378365496 962968478 139933445 893870777 929880863 426575392 215837759 352992893 442091263 50085604 276704510 764417139 382351152 25582901 196982679 594744200 823745817 927530501 361129489 71385452 929193169 270309201 123697148 655630565 934435558 921855216 362947120 541798218 728759709 535422705 834966610 696846302 993617812 721165901 540654924 31064495 42546113 918433995 180078371 629719761 213978057 670457566 438870747 380318502 876367678 372957299 306774219 864365517 178300462 815934457 106504668 234855542 389882987 534700564 927761426 136714642 741016160 424875887 730996471 577758293 713317312 945386635 364935510 801121916 561749890 132793487 496345261 911115037 518006445 340324621 384748973 744958147 807028471 659424861 757916441 515241323 471583704 714418601 872171247 138812091 231846394 379468015 367587579 336291154 385799812 75164198 61692544 817267942 805735441 743506266 208705336 274974550 871432770 198256347 305145279 822122704 400994927 491528706 728489067 372144037 64546040 121433098 156093242 320750042 641758023 865574150 306933014 614762250 935007240 555604695 561637323 601344082 778340986 695506343 494835453 8431139 703070586 544447593 544802978 726007085 276612426 399944846 7596738 530649948 65614040 745752703 833344925 151750574 898103765 351915057 504528341 500947143 716471156 175176225 197759434 291209022 607686397 22730569 322497753 621862763 939630746 93952104 188291061 427991040 667573175 459307664 166663293 801107564 4814856 116463407 374579802 543677545 47537590 710717719 597008359 898294837 15484827 205364559 473308269 78235172 277432566 171045363 909493027 883227111 227973559 853069053 739907207 951335857 271380720 36480730 932432197 939873253 483676666 63085679 910302307 545064922 750225067 740391242 964455119 175824997 605194457 340349657 288322172 975571755 669935651 703574487 104783908 582888194 528898547 270106567 470705253 913209746 702118218 530340486 176079857 551972763 48010092 250501509 784473308 898449475 3017640 297426750 404244387 746786707 326831118 499864808 552555670 414204745 878285554 878710255 347756759 857560440 191164767 61806974 330598326 609823476 508572036 823053915 911752255 376250603 339265462 102429225 916954765 24429786 297149005 302868424 472309167 774290141 873886189 563263587 95230740 10362828 662361512 402600738 574361718 820503542 911742915 835141372 247712824 776858313 9253291 766331707 441169053 653174273 255403928 693843386 529802647 87606557 110698096 802007748 634323237 812652428 687047444 846327848 510715161 502514834 917398874 221240427 977281917 808221686 739087041 137133093 656584129 471256858 771008567 36957515 746994277 952254913 911876110 746932315 221145553 166307198 323678697 627502397 239410341 974247929 916561892 793436497 793923326 679543474 783016921 144136492 218925457 63353858 229286467 52398106 865532754 535232866 680552697 622422894 574717009 744694756 644272921 703148926 203822916 91811600 154397410 516989394 929509508 111992473 336080230 812243021 313850001 421887707 66371594 212117860 695114118 309076208 179289610 859617588 925720832 188273998 392218734 845157127 617748878 945904340 649951408 912791617 948482553 519344630 624732018 737904992 5933399 938630146 642676461 223303034 940001909 316582876 335869625 404552287 448110156 406720835 884522244 984309652 6421141 813452363 34665378 535598913 199016609 187573579 183450758 431195393 66931908 394566988 375017329 407263642 61381906 898612776 315036619 874716070 236870315 768502577 902630137 330304489 848570281 624449665 441044512 848295971 989637599 662194349 659387674 622400836 44554939 627616466 879166030 39340006 394593830 752634153 79951728 354460456 948420681 888697726 818261263 480603521 80379948 85032217 227780846 970352712 893146087 389535285 4427487 745467064 384339446 543201070 88677655 195464456 893587525 675216618 469177986 37246612 844216669 46741740 998080300 330443936 645389627 111282568 134676962 419482224 144015648 168947311 513634698 860813669 874661401 427897236 377395488 69831830 563993702 712295920 186322930 322656065 797572523 244863279 740225885 769565101 85686758 781224381 175146807 664159908 381504220 836094961 771780169 505651559 183872667 844649844 427028402 318513701 447176196 251217422 691465904 482707636 657943792 329274944 43165381 78588103 832732757 423139664 189186924 376973415 418368455 30744752 775035212 377306356 629590601 35322863 441615225 29937907 124935780 126720343 591349551 618115763 676282084 956792631 109057129 796969884 441705498 263646341 304043735 640832342 112983061 772861961 950453355 521094625 512749253 186782688 755046486 236642381 52320596 514267837 335195519 467529313 303466670 683348047 975843487 186358858 846540425 705504855 527298771 568223983 263081814 952475057 374977428 31396837 759537695 448926226 84236683 642038266 62080468 913652517 49269869 551917236 594103593 784839751 601719126 928888929 241106887 493703359 52261039 298542226 306771017 697942133 514862513 612405135 748434613 336927 601631443 935118598 582588377 213131640 887594958 121541382 39034420 45220446 442321788 229907456 28625727 199650221 622196311 778397790 497718032 890005312 281443845 150958038 146080966 307557214 352128881 296650613 178796149 340051173 185962861 400124195 74709171 2921018 804044599 357830117 638675586 988247793 129818713 616036692 271530407 258963724 25272521 986643344 678037390 636263887 782171728 836582879 168909082 700281915 439237048 635135315 834012745 358358919 487656600 784948410 504552890 813513993 51006764 476202287 847872949 508217764 429953080 426088786 633299714 438076941 471808218 306614628 258486634 257683063 489566346 880815157 834043518 815798938 117996276 579700899 173824763 616040600 105127825 875053311 603387969 711685974 531220913 780105440 811309176 531641646 932664741 613360922 906009555 955302101 311775407 349538736 960718221 499890408 173688502 684682514 35945954 831494006 926689528 581770234 539091343 879752061 894829534 777496769 533700852 371541470 778578810 711443609 598682561 237950123 428384956 230108115 829945806 976516995 303399080 305907711 203624852 591523857 722179546 627310500 63773434 504202819 45834141 743803840 381212966 295165109 76280023 485488711 559696620 13530660 678715744 950226406 695873243 367381713 404083620 975111211 236756489 430059999 399995697 909407555 376911394 318790996 493976690 503649432 223528611 351779203 512942830 908386479 456866399 687147660 223862698 214554284 595394912 337983480 228780563 890683302 36538336 488547687 731744479 470277258 639958312 561695659 352542410 236495088 638782718 637583773 542750803 985559530 377612709 371201418 61998074 56465601 440625437 142870127 371648327 267421463 992699446 397029664 681428242 180188510 694717927 920819241 921859670 468724030 902845765 862207407 838765956 918647489 990364049 892557567 253441350 79413536 940503867 822419678 616995080 690286360 830137347 49996418 407542588 901552701 128657982 982884743 698853706 255193083 974309530 615046107 401036994 343310095 281766941 396003325 524017132 294564388 639100245 885101247 925163618 211365118 58003510 390013244 489476380 986184626 846738121 443329215 90209879 947024764 39591947 394531285 360664021 981170866 157638044 891852604 311918079 714480763 137426869 549400367 657880666 992344301 913918608 89924863 329103531 924343319 28598922 66089671 227788101 909443554 282805916 178145213 393332895 297477544 837362537 705463584 847039256 484212401 691268852 559363313 592502028 611499034 80376099 698808718 756916471 353105351 91032042 231523114 397384347 132391842 143399250 639302634 961956653 299185689 962443482 452775709 115097524 788728892 410552228 720624463 580216209 210554508 467911985 776965470 361155215 718916361 759908470 187015536 314224955 632104806 520896455 481927562 549445689 414878352 865004026 118944940 250195233 326419954 966461064 949290560 400138286 371028475 874900845 252665814 540905472 77069815 926130491 231121522 474831824 974262381 200781767 852167211 696656840 75355296 941196831 503890532 707985971 766395279 45222774 291902490 395469431 843776569 457991284 875342244 762982076 293527090 525551811 210918590 642033063 266886018 339550659 352907380 238362477 512412249 932522219 111010979 129694470 679418008 370853123 35760070 632612314 204592343 329770212 751545236 943232546 75326465 724320006 123099349 854559239 231541642 852931222 59631198 806708865 530433641 389283498 554778049 520219728 760219524 67082815 156151618 98284856 773923806 48027526 776212281 361838623 658923238 947455760 140816911 339356354 763487319 621755345 701950429 847326485 139915681 433907852 916926050 883819667 312611044 681058705 811069697 487850535 840939963 208270 803755726 159243471 347349046 32622369 668861069 254007552 383201612 791085263 937977189 706866737 72645775 897650986 302163938 115189728 727085117 48275956 156918605 671788052 801614471 150615696 953991133 682861429 186136702 387808046 224619350 582985516 161629841 194409318 10570851 602830203 737839604 587226696 195566232 651917861 833954975 304650586 13961829 931349132 474954790 190935154 412902548 43694625 602309151 360631589 135962911 10274606 993268086 843907589 200536911 271333736 590255805 899412907 710415172 193607009 602849590 35860661 229785066 58582182 786233992 735330584 824455286 520443712 541139274 252319393 972671640 697184165 260853644 422885259 291588724 855724844 271546052 3799889 461685608 155956124 256228216 414756826 668023816 902904406 196574849 562998531 136626595 718683629 867794429 197556072 991349025 68038989 285021732 420637701 786605264 422909658 226915491 412297078 63093747 660136502 679432053 331190942 842632905 576927402 128628473 560701111 665945526 610871874 396451930 358979205 60887805 279634590 703824593 332774744 923917644 160388464 261117552 845836710 652077201 234145875 251339049 991200563 67564143 596233644 624700955 93143922 596001814 99121523 351744602 991509900 425294237 35185042 980391388 884825851 274758389 932642208 558534066 982215275 90551775 394803975 608736327 336183775 998633686 709458982 914307983 59290348 609734723 184350240 55545430 752958530 290871460 933908160 726539104 612521580 6257645 298578277 843521168 141782282 849036616 3510722 232339937 719793903 48233446 136774313 27436334 753234466 957996050 296335594 847007249 347310923 603404983 784739563 308791925 179711608 205596410 433972581 566110493 683139927 919590529 509000883 159614547 352205452 600943116 126647963 994199882 799758388 737395751 380103039 144560323 864718136 340116541 385335874 51707809 618195212 935931045 916444564 64668079 382529886 891381126 79575467 476839185 163581764 37873333 323795058 666776357 58847081 179021271 22359958 438058837 678832950 517502491 433705289 191336323 726704780 593877220 878360362 571308451 44161505 572375528 195767181 238752330 452005270 67277447 88701017 491268048 947194482 53593967 435787123 332062661 296900895 771248823 532904327 48032756 175670756 261464197 76089195 114916950 717131616 242969020 110025967 40691682 820334217 585963687 575552576 125334794 627612265 436118202 807496086 500135343 645687088 609747229 615401225 6678112 114817977 854224585 502731423 302569358 577827115 320753170 54549957 252706882 967985583 587849470 868483509 356527318 444760902 313112111 394484506 385868266 459425531 436612829 486997967 628089838 324903758 349825417 494655434 561470103 211297874 285248327 916156620 264322444 619942064 847970892 530153811 727193118 280999340 48428054 142696015 506028566 983041539 92633074 194787473 518456948 351773635 882973766 111909918 411286572 975433981 475118841 49190322 924911023 742151857 757641770 450743156 396466026 232169822 65483766 222328341 822364508 762759132 553119572 649769014 500182709 344296518 630794856 487728404 649426125 755390295 568433320 847133756 584227341 265118543 170664613 97618548 251816617 966596833 451370297 827563383 936078113 911390861 169075942 205848755 551466728 623231842 971722528 731054275 773089810 632986181 873616939 13992499 464242189 732443907 439341837 991562982 22900835 550795430 780296185 576535473 993424727 475528633 771505900 322597116 821994448 240556025 737339370 72831108 976516566 520912362 457245456 286158621 478749936 174846777 631096711 535334083 478599662 318237427 840318491 41369339 772109085 598031195 144001530 361936458 634383052 196066515 691067510 340482934 241261436 283317620 454928649 947546772 285202043 845938956 171658572 611411420 397372700 258963801 134746207 939462510 82949183 268169671 947402692 832619321 946563504 341761172 782041325 633509728 981775536 124996443 924886532 946547315 922629594 33033881 803138800 850906661 59110367 211465272 516912021 859148662 691820432 162391010 144017391 36871121 837263753 151723968 753927008 348149480 984739736 554559880 533277445 633672586 892397238 194060507 863638952 489419695 888470628 517691967 105213800 82624625 303615512 826335229 58053148 932670842 585023819 447638678 701812895 252825011 502365533 969695115 605803165 641009093 950981941 20794615 640686781 307157113 165657017 557922103 120279379 775892717 897165783 533338673 472417118 872545176 860829180 761659786 947238643 326801569 373945735 377510781 172970641 534157630 466595528 223989481 853543872 250987083 581088813 67532022 317589343 612739406 539076252 747655944 138883528 178205042 945024173 945191548 290440388 896750648 340776845 327746295 120097464 400255831 963359121 468649724 998585545 938038214 534230031 341866092 928351384 233167407 336886096 821003355 322967922 123434945 522943525 447134456 687072641 264721369 143119032 638110801 82379227 856872052 218411261 872775720 877221128 568922835 282762882 520403486 457301996 495816223 317710346 151120100 226016081 499498183 485490233 460864441 764204599 769836982 857667474 544150856 887950663 4294768 2743391 818000948 412535563 217786420 953500103 899185829 28926764 124266731 650366660 533516322 505851852 211336955 274932543 268586306 472553501 809441523 878826789 642758582 944030467 464247448 310446027 883894740 877852658 981233490 238633894 907068475 368408924 544210751 21398895 401016772 755406076 384883774 175253719 680570271 397985811 368290800 501155077 269790538 817953264 582821265 239303982 703287883 942918959 707933804 38503137 781421587 733783668 389803164 382009569 575257038 937076300 70417145 7846541 890201780 719422156 83251004 714617001 212200805 315223828 26072193 552312112 430355415 730744924 850549691 643283481 42879321 726786414 142614599 145862789 918440108 923193242 949751648 724957662 787675466 170779881 970614979 394224797 484125681 531001870 854769097 810009646 193971836 381836681 333267591 778023663 99002704 449323101 123712004 922942265 773028592 150121410 607359992 251192479 873551463 364198156 132542080 373966323 772568138 664508555 850866947 893751283 893280966 48479745 851710344 186451624 974221288 92760355 367546270 745436325 670134669 576876469 116446227 406286019 443644304 450027330 317535169 865539891 2752931 897143712 842561029 949877873 72842038 963418856 909880921 934558752 384757820 748579791 728983369 241791294 946902514 803441457 707439266 542336189 669195150 512248635 167190933 107657128 372501640 7720450 969373729 579201933 158467009 128135230 441828107 201651925 928079582 566792352 911234475 714517229 400048774 819323528 800063757 5519864 791398500 433015369 748446737 250804635 422405666 404703419 259627145 509134122 911261651 343814900 213967871 610952628 466430011 598724588 615953571 757618371 825347665 648834856 264528347 435207632 682053808 930424841 26325209 883842774 801921285 158971928 615532901 677721006 125884256 626449602 302382908 86062669 385058795 87522340 965923708 473398232 945908556 964267108 147997757 720883618 34107840 951908990 45103530 312549958 56208340 853360690 995696182 494813137 186968204 82971165 112480486 140297129 913224398 451818461 72559384 656127694 118932118 282574988 146863965 432796416 894756125 826782080 341774077 682181285 203264581 185242300 573392226 127046204 731472686 439471930 556495683 256823094 80364175 503298241 64612576 164220402 206857200 620619 531523404 635210658 827505353 414906300 33356132 295297071 895055576 867626609 17660190 137323052 510728034 285853261 498180708 799984111 993592355 351488547 287683931 454034952 138062526 670195065 442752578 807979815 176437313 588782975 969104186 29287427 295409951 496109576 19460748 613416052 335669554 291616752 542958669 349996323 731331079 175521063 172363895 982666158 303026321 136940005 919347198 160838799 506930593 943437786 769236477 506290932 610779905 979198095 679042160 210586493 983825553 188605340 141382798 125186719 633986267 276622192 664674851 113414705 19061306 37006444 247631600 777318430 617934411 202827557 353420327 96642405 961732264 566604116 235685769 820211772 734897436 358211576 731273538 477396615 322084979 700875563 43824673 440398386 47201440 388660626 540932731 500469959 583855550 662537845 885078280 439617259 969654883 47374356 757022320 262260861 729430795 36121877 572434582 613689276 435908829 867942730 71770644 55246185 243330066 31891036 466876864 775526238 16586336 221028489 891220941 624082298 286938091 227615288 135273470 471142559 349574325 396002437 835616945 121414189 714584212 249203222 846390286 313651232 205395188 1334410 630622584 21551314 380330285 632704550 530353292 543162317 183781851 537634101 42614548 960272768 241200793 997192205 402960473 971200029 719110333 548302461 653099904 920866524 767285380 340468103 197389225 309276680 828437394 318174587 515158854 373153653 928924780 74445761 323042820 125360592 138257236 682113402 137907889 861669455 435671027 643382418 678344619 538225462 241049933 195440121 543134860 604485235 146797298 58296101 413342732 457506493 500607001 719822970 791690898 227230226 574789437 492746284 193431618 913223312 275843378 403135436 304256701 705579790 669409617 834451584 628006765 122852227 317852946 971182874 11019228 181755397 76914787 346183165 855023196 318377354 265546135 166141045 85589320 409507091 229018098 695886983 216581018 77625569 313168922 549779624 372549861 747086442 594594413 955930839 182817793 510900145 421730323 343620835 599754620 788229676 363572559 328546880 358459815 673037126 421152535 923566851 261795410 729530660 111321594 495767700 190378716 227183823 723063788 954484818 284459781 782917295 961750536 451007241 231476114 271517303 770895766 350526696 568043626 181453403 311775738 994290230 291287156 937838571 306463032 315346803 801023651 610835442 806612721 820740095 625098796 757682698 886370743 443209210 400154897 843278498 324387959 876173981 873903916 376668598 424848644 176439434 735900326 146687139 332032414 580495234 246340845 642940206 594986317 649414935 145478348 634894987 359272356 103496913 149468908 975550163 466452444 44528307 495787529 238277334 116298979 797960120 34145451 762586516 951534838 580171480 578022280 273537841 415050823 559368643 112556498 679004930 40956654 433314268 634133547 993504450 456692905 486109139 998133758 648673273 365548056 770106707 530967084 717125016 662424742 612566493 595954672 953435773 567805617 565912875 333948504 894932749 478415248 593846585 74657816 437551976 264450871 936475933 613780681 620359207 903485362 622392036 484799750 14400849 192593145 367809010 26879240 759277999 648914886 513663427 320781837 439989977 896053253 503932055 227985134 44511494 204872513 573764111 381281242 884691733 361825259 569092604 920369902 551741760 51500282 314940010 790654826 229186845 474383735 274794972 339937317 986329734 418212144 773360237 194723021 269664962 695979897 213579156 272715681 912019385 741391625 389907295 434798693 258532345 27099476 208048165 38745378 439756781 855474953 400231038 626673679 453657431 969990956 752163135 729968143 144256703 857668167 144701465 873423527 285913265 597654289 910336291 131321084 758997101 232227962 325594159 568306717 702656413 272437943 655580133 171939411 778326148 593698364 622439089 922998767 696411229 304121547 985356693 937024291 75279057 147345375 924422884 964149026 504831477 440351954 536158647 812467709 373458041 558844359 364911817 244727825 710542349 67321054 845915613 975681664 699582476 988201764 444677411 231801008 80994205 189691541 214339906 686750367 481331749 901401886 153044075 58754432 848617483 531793157 388579192 515409649 630604432 349466440 304749490 310336586 803044169 259480742 366905799 43202895 742085079 337895603 864341839 591465140 316990496 150486479 164760134 27116278 175751055 126495794 267272332 29126336 207337172 713220321 895338199 764921682 256279033 861882733 568248049 346655451 815666385 340292866 336065255 710876011 241960981 248500498 989374489 900119410 540391380 653147229 162852016 433364162 761681265 40582349 760476052 68878446 166370695 352080428 203035923 218407589 79826090 676769340 770625659 354166077 762733636 751489724 812225275 748450580 748223649 631608796 925744555 340735799 733728770 446479196 976479206 364633967 905273998 678851236 928449882 15923727 53783171 721855385 908211063 378314060 244611056 625867272 999740134 161549415 728573365 481068219 200295295 64181137 276225367 113892610 223244411 263403600 109225333 434941995 295498487 442355907 158648623 69188194 230295590 711434365 26213428 340156632 849007426 885970681 118307815 32348293 890805485 682471465 627717396 496081415 757216944 616670899 304165098 402940309 211103917 328718797 639195204 56243695 860463975 685569207 356364367 478790029 277766490 908223785 144627204 483249515 464994489 676047929 727725334 993074375 217757668 131590979 728133256 932856695 500388426 143643437 929592937 875955018 131520415 889021492 135156124 737080905 727656873 370135611 76500084 908039271 779951963 550176010 627208911 858484150 774915816 119317273 306808349 239259105 445918295 424905605 301596826 478968905 888729839 693588994 542801463 406447180 136772000 888055497 147044878 306578942 987806150 469833980 749430619 649541475 20895217 282398752 605403231 975504870 420633048 358953578 32074561 749738663 592792189 141965918 630228918 84972264 401058422 608532599 844952964 475248962 289982352 738768247 727377533 16291301 642562786 106942803 212130674 117588486 595223278 398178896 688720857 478792302 465474312 21202602 551355929 225447453 397254881 353500079 50945917 432750470 255302006 694790523 223443348 825347776 169701580 538046128 156171652 732370249 99985027 329499138 370795324 490349199 777542706 759241571 375321139 353399950 701689907 689704343 949793284 491677668 792439496 388575602 869376787 821596350 948716187 740837794 525415539 73996203 535178480 72036632 9307699 525937864 715019199 9685056 622690969 22633251 561780711 881921076 318490235 840102661 152607729 663351847 275262024 62907498 981687538 947252934 372459380 317778097 947698605 159306199 425249170 112794083 715024822 311410675 553314852 674840936 933473680 384103680 109645957 241158744 290661186 744764342 794404757 892047946 230949925 555662607 869104118 39773120 483947840 111493883 426719638 999060611 332966359 805666129 571114111 514170956 660005279 165996489 992094033 474754935 469780271 561702945 680010963 717135581 106016101 375025358 70223099 725462015 709662287 151491099 419467540 782240305 115602553 694799455 270041661 206849945 519802273 854704407 236157752 447230530 171268699 380025592 679700876 364329234 455147565 548276079 638607127 841827911 490438861 132031461 600685807 146894055 2058679 822679790 717927941 385823097 766886624 501855075 906521783 517385283 219163221 175433874 272100473 112930020 252452422 544716680 937579905 340921184 835347731 476376080 400447088 622830328 67664529 908563471 608408603 170495618 456030469 804712525 333496011 38947958 657284369 348925939 264113827 571886031 863534431 762911142 42818547 65268171 832222779 593147734 395948919 469933551 593001426 970744702 191680519 206540823 804432965 593300649 588979537 141857506 536642292 348039799 764341268 947284461 814842796 673889985 804548754 980888729 280183470 93472986 693492903 324567047 25052408 553949904 132614758 835753572 171188568 953847111 14464407 857376489 870985050 829715151 993132605 565121380 89580830 458316908 924284723 235764981 418985328 891118364 475033772 205910201 393822358 741914731 663937026 390189272 177503825 4357298 925488929 868976425 417063856 62231416 98298820 818688647 819889532 719101866 176747678 820890460 174104126 848288837 410754496 642468428 961367417 41975067 788901398 898655826 655431503 197217118 785533594 403287986 944107987 698105421 988327053 858031752 383886345 783669503 714468817 247563064 733196839 561251679 734695033 284083397 74018920 9634976 178507918 56389077 767344382 830971735 101701034 273212132 495190888 145649659 127157767 274009163 13232366 913314744 647650741 439748406 590162877 469188930 268836426 256993868 188000656 262649112 138229997 292057535 13132808 414333062 954144670 275148391 879628806 508313370 935952666 368826087 425422869 283960433 861835088 249543080 109953232 783967260 447436890 393774263 220879572 539491346 165372192 528106595 810728061 382348841 200932641 581416002 27481790 204780343 607340003 633876997 960547019 375642895 97981943 788236755 305676950 685420862 698002502 473648094 225803140 370074481 847589458 141594216 543296029 174401358 260802354 857685095 647534949 934673259 258725261 152815997 793881824 725456934 639594998 892830109 229789486 534248471 894482232 155128827 147991656 161308474 616219362 823503988 907770963 142285878 757372122 408604139 295925393 191809325 322407677 174889666 708306403 410320098 116500319 2418383 36005680 229374013 982843327 457057091 262898841 346485297 307909397 774019550 12977322 789159436 131278161 640717514 782088698 499089846 238116680 31731598 641532924 374806442 372985109 529255229 730598594 945635170 311333868 396267755 139767797 332645278 262151737 179902415 49555932 261888109 115967542 129644835 795325708 199818245 214011519 810456877 15347242 256865167 265252078 776237718 644024236 848660243 101651928 599291640 456305743 57482718 700942417 115518888 633093520 705579106 160905543 962653372 188290271 212973557 139749368 580024615 986462052 465505617 766758363 308261957 570146996 378000340 936325269 238955704 57813750 216927900 255149762 701536399 814159154 179988617 703294740 194175545 663067685 916658287 418831580 844038869 443973839 113746203 531163822 972537050 330501691 173783805 959719442 556398944 499899358 67857348 108666288 826198492 116360983 282753585 728055945 972785380 512766304 477177074 728160055 567500538 475220502 603281634 892958927 971417904 54758925 152084900 821380276 275731148 470637534 651976612 84870336 487900996 911028376 103366366 323281481 188580569 649743185 262775492 533951218 853326490 911744668 813416967 320218280 449404226 251004564 729633134 573709768 190460500 181764571 605318186 817051900 398774846 952936971 393727193 453479624 528166982 163395798 981645742 390449608 274527307 600047112 67207510 102095701 154821174 554665409 437122605 713410645 675818869 189058604 810716946 918152275 593121026 656971438 725741975 645525066 547603108 571576644 716153822 230737421 750415076 604478347 393282846 384880779 138701984 253385235 813715620 799450294 371572511 333763023 836996309 547923435 486697644 801551217 647002982 885620457 250967742 31036614 590438405 897917795 949172782 77994627 508996490 173397088 850003718 355102421 968116256 664706266 899900460 213360158 262908395 693521429 748510151 56841617 581616035 996286289 353156206 67660355 573382364 871652982 490191222 489571155 312695900 930814236 44243318 5156396 737674434 756087005 229108346 577337647 544230128 287492176 8969889 358423134 150602705 355664790 994864179 433377885 196067225 580664415 83113975 692382133 740820929 483058395 96993282 269170246 769593828 693072313 561230462 499953389 886811493 664461216 302386664 59716022 81178662 112270966 45221946 475264683 662569623 400019201 632380517 400398411 244133241 53389717 601622538 46607533 540502114 612559934 210236748 232057716 171833676 493310390 773870626 620381811 841331488 710166134 142361937 14421544 734403797 160952698 512637239 840750637 13754079 496420483 106930017 208969170 862538282 241727516 489992402 556557889 719768547 227646928 925704273 494999046 24332295 867855619 654790916 294452703 404075100 231373993 340062782 116612455 551617426 54564520 657457279 978486775 579343986 572407199 973941723 162141871 816426604 437299691 898676478 286074822 308413266 854211041 410880788 854238742 564829030 912777807 434557719 152107221 59213447 978270048 796020149 62109736 203625433 722134477 469210287 228496633 717472404 880868658 219824591 438166863 20831841 916941543 281798695 967634000 146771326 144568631 293589396 618997124 216861393 267972708 15685140 312461707 695516927 531388907 756140716 218139900 919687813 207965516 947614507 880210040 436033018 540091974 469840086 282762127 364671425 8154594 945971702 848024421 361040915 904353475 810988398 641790816 753545607 962249286 832215810 587707873 237691044 654396573 748839359 134005364 416868591 234170094 211882460 635746988 333901083 367160116 585957730 354877646 686965038 763788857 701960299 836566596 834556547 88199334 265774574 455909961 817422261 683602783 555714747 255201229 520699169 72681659 866415871 797077588 451035277 351331157 155958729 232525839 113555134 772234411 458015259 384711244 866126947 344907018 917783492 54173145 144210757 323923750 38000708 175191530 449849704 451126254 779307979 888451648 266203603 159862367 498111563 692462008 605392922 907053681 509271088 4481912 81350401 773993381 959235239 915513192 478640284 366769252 627448201 364545629 110859852 584348111 291857122 4410238 348098413 512109862 13665182 736062951 880994910 70907882 97147642 499848310 704135421 49114255 370777041 827496296 954418661 579466399 971469066 556905528 63621860 56111670 355050782 354258937 680335884 208710886 23071123 886171717 583884792 909063284 591563059 969272273 360142167 23733349 834222195 134738097 747109134 598550011 572436615 437542603 926124330 217968754 712612056 931416543 22199847 511502399 547157598 149131826 659212608 369091167 322261757 314436728 831669629 61301410 170103588 997389756 519539955 70631198 537958141 321590131 105304603 964030383 817425122 290539121 715047460 275270127 450905724 254040832 837327341 846731765 896164717 406662473 116294011 171096193 774464137 122445583 143437901 653570955 342855051 480632700 546935187 838197653 779678167 613089295 920557250 989891824 966107828 702383642 309643780 16778069 137603482 899176078 407268791 660729302 502546598 109178134 650869650 395316981 427618419 732154212 115092286 277428034 705598515 106994716 345408856 986276523 469757253 95703710 795690820 309443283 61486465 77410663 296197397 422875535 949639882 120013566 211329663 782681734 953404808 318202870 55914549 829561031 652846647 720112575 259502580 713342403 534626696 260218172 199729981 140379928 983205964 62463210 815294944 846015899 987283209 359015269 575647411 154777363 444112245 791750360 237967947 23506180 940717482 431397019 746606039 42571898 956317695 522885542 48086048 452143975 630683345 766764467 130338069 259390499 698978162 214785360 907889952 180815862 949028342 31132029 564634447 451533740 843082330 465102732 918955810 977953189 882090651 608589616 456343573 181865648 421358443 314711249 460897021 716821662 58143346 921234821 752984850 140013940 352939373 921264099 456059841 876973128 119869256 278920685 725175280 107179980 253884713 256793121 258589940 452840173 291540472 128455076 160623614 205023316 471328232 223325456 409276817 888385042 876436811 786897347 449454326 549763707 136552485 792386143 369633991 579407844 659032186 689229484 276736481 426386382 235831131 827871337 617906613 564153522 686209112 909198770 344976338 174031875 936616704 993956571 764473206 976265211 681801480 852173218 129592522 382626409 465805064 133451633 70446893 554219442 947488285 860061675 422917419 616764032 263537141 250470239 746459375 965427635 128477659 957686464 373704535 456816116 161337297 858914804 724998613 336429963 19104745 727757080 483460506 396440800 781047846 764596760 207437100 630143203 681171649 9342953 822196803 430836853 819621841 862301120 537859764 93429116 886385806 256638630 848215967 63152437 820388092 533801687 30134386 868312954 953969654 923339109 405140474 559653075 124197214 159226262 561778519 232305650 80042906 545861614 481060379 284780656 480969516 156838208 847554790 891439720 415352703 688660273 892451573 107045600 709410856 378476274 711827213 606883480 585759545 264498749 228895230 923768964 676749102 647058293 320364188 357412736 576499261 156285241 597807640 256922059 65377452 85315425 402367380 55748113 560169122 908690525 654030146 66484140 272803334 869176248 784067441 722732560 35342874 489769764 700434261 233733157 848903851 849549483 341028456 428727183 191993915 276267272 836870247 703096914 645747306 738902181 494631613 840219526 514232273 247253465 657882950 394308586 125851256 769381707 340830970 507271306 234777774 361184254 674611582 413826510 126713633 670804066 231031167 780598444 4787763 351525196 258736920 729326519 112318095 57245046 36141552 555520880 343004543 102972924 654891630 285980356 370472144 172880970 863193184 876643952 741709038 514869102 440124947 672639814 752668557 986151283 71325715 261745085 16189570 901910944 360663018 137873516 511234835 517431663 713376803 784820911 911419253 623699647 295126287 543548929 580326102 344668554 284818969 882071385 261314984 646018661 227819344 853622380 84574342 775985364 13723927 642191399 724952055 644291339 939664755 20873107 673463177 402911112 136976551 71874970 241759543 234945834 228019069 820497491 393313322 681603321 526506065 233981348 253059082 736450796 330643951 91371301 485008119 338730034 672763136 336719783 660274981 679702933 366277118 154102498 482549108 866992603 497561723 329982417 100589625 586224139 153631581 835911722 368247483 752683398 926308677 537632364 96386963 975535662 475068536 37251070 682757501 632225529 423618177 447643442 662205908 162413580 700731883 40825347 459243334 347067045 39061009 676686720 604599999 654207437 979039739 976281305 954984962 218564505 396185504 840476007 529212765 47615352 824031603 556784914 212294156 171970249 376858233 726835388 972141417 390344703 263490008 90400205 991598535 95653066 22531965 986425862 63427771 570345819 442292433 666052418 119943672 928457841 437797055 517685418 696506948 577963846 78595153 298426288 428075426 769399077 374369444 21948739 3913085 194272385 981326830 773092896 371227179 445979165 580869029 34397997 838356246 17187941 839496518 241602109 118076889 129571073 376992377 658006824 687861484 992668107 790804572 831221680 689491786 688397852 810191868 689789312 777569587 372262060 633274603 916940773 696746592 733199030 5606865 902264128 82113842 232396058 902263206 783965417 720666415 236978087 566417021 958512237 41769250 47979349 955336176 784025585 389151804 241433757 627317975 121296791 386068563 830659030 612026869 587316416 598031112 297440809 98398596 2229123 114606216 827925746 911014542 212099135 406351451 678110670 737742053 349075786 387919076 525273827 130777136 768758301 221529888 370040389 47086319 406497634 854629817 318232352 811812623 949767385 727038669 390285163 25534512 590972603 749438217 26250209 134439895 780545597 986295322 508874264 918081198 910279565 847490689 456185603 277918378 82821448 393210077 369757257 471776853 90393785 734566815 750180655 874300105 503448675 120071837 990713856 805014922 825186634 520203530 804108133 715161939 72249595 337925161 383276520 470608732 929649988 411287618 746793971 337570027 284072208 213509308 699854980 468563554 256427696 95556648 694454006 401153905 877092103 937653500 300552239 64177302 836413649 89324186 382983042 325579109 723766069 348765030 486928928 885548198 564277925 868843803 947629693 434434538 962150655 460460600 668545377 79100553 89492959 825393073 668105709 947697578 310573057 384415350 471950037 562678760 634708997 189488348 634104546 744775090 822277291 425030973 83739247 334851372 728427549 572949369 777460001 561176077 78309994 542051296 704669042 969267753 930833942 247978366 113670626 534724937 317527946 392980711 222113313 672840930 370661025 105363273 343826101 328616963 180586273 432577807 171124077 794704431 531781398 45727481 172361770 33369783 143669129 848119671 996029685 140198140 362764485 209653630 71230094 647351477 880814801 716361449 611525028 671209701 412958501 376165005 471592643 30288675 878993569 273288592 687885381 346259490 960070037 104782623 551231159 284034217 730403462 533409283 118642666 746686815 345354613 413708917 267068790 639908322 696305274 421116839 928902097 345983553 623396804 356054198 526636900 699649907 29405396 884666040 263644472 401919131 758578531 404040027 27624888 942500899 873404004 212236357 421450529 455826692 410392589 736016466 725877180 661890882 291334186 3130292 758496224 341536642 780489756 488918317 232222215 707433500 620369458 44435301 708250104 524667342 701232013 34701035 367845903 428194042 476866826 461701356 892567361 854333984 654161339 82240955 38444121 126382185 456563107 873528252 57092390 214840481 364551128 36637522 67207011 476592787 759007626 6102165 735659171 138979845 180152885 504480182 8056114 965309836 292729829 163034883 636306603 509134610 33138671 551405869 134466228 829247290 171141873 517645289 346951846 516229336 752867332 25438596 561170876 925160980 383340390 947171688 233627139 389755589 185870889 890075387 675006344 412946136 885053160 301427371 692779052 403015002 601493054 198909341 504898326 165569144 224113046 613061622 280830962 653288951 126054166 571110048 443184654 593087334 911538816 315943108 881158230 36605654 539646557 176982696 736236477 366002434 970905381 875754849 175692652 791600138 796155143 701649198 504117922 547027038 142772116 310459483 771360543 360754119 268834387 39522465 200729539 421749175 631040519 228091818 829794779 979976188 712554596 251146071 398068766 675480846 677595092 150283620 963710049 43883706 61302565 551564223 925524938 292079427 205422088 88594536 598506118 908651367 991026642 985149445 287898931 330317238 414467171 306559591 857929910 492770177 892998474 467668188 810606951 487009779 333766897 546704549 163298307 748179244 255485666 409197456 762664902 117341666 305745858 934201738 580629868 351147136 263675370 930083487 338083537 701695614 928393289 347125805 458665615 472737017 18484234 598231072 586196883 465322332 204032578 463638307 34978660 844589965 992122016 276655703 778453425 790872967 71819722 794669496 157348309 805626686 827740108 762909418 497337580 435699147 213928432 360231497 794885698 510776353 168258256 490705407 420883436 195715451 950910288 106046464 225448021 301743896 587413662 184753262 546573209 885714114 638689124 898346250 806516037 599610403 87198226 891358791 911476839 11116982 594807386 717019212 376092640 860692395 809861477 967934428 406348690 891990053 129473414 348571094 994872993 598768452 344199533 727458660 349426585 463253268 59320983 883648078 651128111 999414304 185466778 245278136 465920062 780096517 533770747 786882565 763236465 417270932 804719677 873777586 987841006 515269389 413061793 8908803 105367444 632425161 978645733 275848697 837013713 574289325 963044568 605962280 883533800 504704721 437244981 907263120 333943527 467388785 313687582 145939351 794464876 455175114 407908765 414450205 628823808 783433664 114831819 577280400 198805086 33947955 969991974 986445754 57205899 705154867 724348511 729760140 426313650 945234724 920085267 986535007 34751533 355094227 784963942 845006726 86261721 180337799 138033123 806745527 473164155 40952131 838125410 306409380 11684374 979841953 659964397 403495430 593151101 145405012 337512104 234784438 128696363 210484781 54414308 805633912 764452221 112902550 274719462 219277696 264707479 78845268 75873139 285814379 284376832 763938259 834381848 532800305 177227859 694631889 841490506 929909701 490209203 473641522 806833053 160263573 52385198 114640181 3815943 431525615 668918232 55163775 84807511 977961866 544187511 979686388 809389055 128702639 240248233 719997160 489593067 278275942 683429475 442113281 794147585 112290363 79418718 719293750 630279158 600333021 218057931 601314090 274546995 603093210 125327745 316081678 32665518 463409265 346944534 225706162 789177659 381000237 999516841 493786471 521405291 558458348 869769967 246342069 432305000 5277953 200423132 545263025 739788599 869426355 989546499 563880132 979504881 672301501 745846983 744625419 781036612 252371342 188999041 877327868 973453784 810344226 103218546 335399098 390320181 82999650 619370942 42043063 364824102 959751904 862083157 476004074 343257439 679658332 94624223 121592211 650703892 110130016 132493471 948712916 225312789 144640325 836581818 280156496 23248983 335758805 549542474 88871247 259925335 426352685 885152931 426988592 229901986 581598117 498334396 653791901 810528690 789882522 987356587 748410507 676811878 98862341 450024444 474713421 415223501 366195427 557442892 195449697 870971612 187182163 487249304 688786530 330903444 762781565 383333786 959664933 687430181 596582555 462020806 940619868 113993973 994027928 878496707 87628222 397329322 321658782 391516384 711670031 775510697 492533311 904993033 223628624 912221741 577991282 524873347 145725172 308447717 503582834 604807465 138794713 797376114 870503751 981884303 911098626 60476995 724734366 825203815 513723271 412020354 69662346 601875866 435198389 95386045 962710211 946626425 882627115 165218660 646076448 239535062 952540234 668191681 997169188 800931987 848197364 933146725 318240430 247932890 157442405 554338778 917487044 170662708 537472478 435072006 870009162 268066924 704675501 635519765 181612446 489459417 324394470 29191177 86377417 278636432 307723472 813341765 306207607 348181573 942730975 703287515 956544124 350290783 574053519 912298835 50937326 262682459 722325366 877286532 294395131 953354109 98685723 365298331 112147258 786611915 912149149 502504323 428453559 24833257 537185856 866549676 86761317 547162982 477431245 218469141 350342043 978349845 416574979 563231361 100195607 910918417 864985895 625478027 141734252 6805240 971941657 809955604 990226788 342986238 867319294 762073244 671668271 897259459 850693166 473270186 66998586 427671130 762497533 617267326 11910514 313400277 93905950 359161929 438069361 390552238 983236898 5687441 527182850 943537041 572108045 159433574 160581491 663042807 834805102 77601585 701430279 503919673 367352351 730472835 757532035 21280793 399129462 423091071 882821758 573585226 86819006 875503998 663363743 806628105 701928340 204021433 261801897 240450686 459651264 349701004 528870697 309993239 553847861 748944727 264924471 503190325 438493348 13960192 545174309 250846552 329686174 483211417 228686105 303878074 74288792 366765506 521088759 735056838 898542006 961171311 612942850 649570303 443327465 289556489 710744310 135147284 134826915 897796238 316313165 369110580 73456976 8466528 777527413 713411161 29220925 371430957 901585388 5701093 274630623 487849768 277608177 538870110 178809377 186873546 117721350 921702074 574065411 210362629 584690264 391489006 740584200 688070215 911967473 395493843 587584202 496003036 3148394 992025508 381836553 981619730 109553723 667971141 483236894 293707568 151942799 484125393 162377055 162298487 679108956 531149970 714273425 610836896 471061649 925940440 899342633 143498978 790825891 814564443 867260599 436417009 702266273 869295603 818208059 90378088 550878287 50228176 582784453 758890318 85403724 667661908 13381000 876619276 412074303 694416349 259128652 735719050 834432840 362713196 586280555 713404555 314149912 758131317 592444231 806732330 805309411 689666992 762626760 995006827 925348944 667374706 921957398 739051892 231529434 449726451 428719502 88906089 480083045 24818625 741676391 101997513 292630942 549752152 372775548 831349738 884397395 651365316 858077992 801737506 110199578 185032203 789858559 688501483 6480642 973008406 661819841 537765994 470776096 783327838 728402033 191947836 563748877 524889078 314242911 819372773 183695089 568500130 42873868 219819779 584428449 734448673 297870959 271660053 190919920 575296833 580436329 579934469 209087548 36558196 73803521 92771108 39683902 78160794 626837269 447368335 771970217 462461905 284933025 355791882 720824053 106378563 476770610 622430579 599046727 483740487 434788027 495101202 554963045 528262881 804157542 563708018 395817877 924726276 105636583 718715738 597163638 828567824 387663503 954226263 910490715 745849429 660066388 362532597 332396541 869521344 113689293 693042415 517024488 279356465 460408794 465215396 655495834 492007895 263892489 721341556 486659115 150247557 79298623 452806003 553440054 372778570 659636799 144190488 563472673 372345377 600165435 591759952 844571467 940226710 666790765 740235115 410562723 314490656 291111159 41330621 782007730 75600333 211421942 536266813 376652292 950622215 646602673 155838533 645627726 99675017 494985302 799681668 94868755 333361965 742883059 161589995 523704504 156863454 489720995 737149244 146496945 464153038 699637320 552425556 854519784 473907552 472050563 147163919 997899539 272634826 215629670 473643868 280864711 15030336 341842656 448060528 680581116 306514747 234386787 11777428 868778250 694231967 344674183 319599569 977262551 356495827 673692568 914928717 226473568 851992826 949813280 132955893 116758826 572544157 114165403 347830158 466977523 973299705 612865349 632735710 589482431 868803416 384802677 114976303 916943699 674401222 706706019 300722104 337970399 526042543 356886642 423842505 972431255 602478606 517631595 551310750 341920176 648620383 870076139 446458736 328085733 781356323 332547342 470703334 412169099 944480934 474550783 106379070 714930046 467291035 374575675 105464019 423448686 478496967 533518241 804097836 685473773 166947974 549466765 317370388 138471373 341946564 643279417 858509264 141938630 210651214 97985644 823586808 35151974 721852930 502195810 642691697 238284787 799311865 121894692 73176447 580546929 646382252 423311191 626433552 980784378 37801309 537562711 980570931 178325215 520181887 271580974 593012056 111994808 40243035 469487069 871846522 170042111 381772743 444387971 686538012 999653972 566763774 221201640 802717441 676590157 35279783 515673217 4953313 532968465 55700748 159888168 202789685 103390797 20479745 581598829 346201228 611898460 174231426 796731631 18531018 806457603 203629438 156098742 810578394 956723806 932378543 676483693 673518921 603069194 644660441 55054987 572552662 977190765 515041875 930715659 162318131 813871278 205230735 504132761 191107389 29773679 278467522 277063011 18462899 376878471 575631294 822768621 704910670 94536872 741824743 674364457 407767047 903598364 100152798 944158785 533656071 701446145 690676213 686979767 475424925 587059864 262333122 26495310 708052750 975052745 586888699 434267934 60040911 474320926 921077104 243122378 551509988 727348225 630604353 143111210 546415675 745627629 314781416 641859886 444977233 659577564 674619565 532523170 287813965 99987331 479058488 282348098 815396773 135108002 878583953 708123912 737225041 450673019 883111056 802768453 29068935 545506551 196246741 846366815 866769380 42635988 101754505 920948347 672793561 307653892 858258454 75884752 233939574 467455033 181649869 19536937 406788697 538471096 979951419 226642676 148177568 416906454 872462319 141113927 42376663 703988500 617693750 973914824 926162029 378768200 355813072 836259771 615565936 585328392 667021696 207683019 365876541 767683881 960043644 418702658 956524438 606625218 120518850 748444828 558097115 880066994 550465688 9583594 352083694 364762811 597661075 748794051 254550744 484652608 47243271 890451737 715040996 149269613 599670140 552981494 385181019 427732838 638687209 868478585 990478955 685404574 212164781 959599157 484570942 293446586 18682050 62731473 32533452 889270406 178675571 537778207 170995635 769811862 824223629 122278784 56598402 348999937 375503814 51444883 648259481 646587485 90179718 649485234 896951200 233667068 59062819 64496860 557839443 499120029 301435114 256233078 893397581 271576408 504929622 655977846 44839860 570800076 237783403 640345782 974208369 807722884 326292984 65756170 880308894 139313406 511244285 202354760 355532022 409224044 377411935 665951045 186790377 525232376 768253666 74290612 305142639 370133627 524625049 982309440 855637422 545089452 628619645 635334208 534332208 605661258 233406468 17449679 709483922 244320322 951152782 508433501 198780429 352751596 195527281 269995379 173087201 338355790 905617807 438522022 113498623 76685800 257777130 521293030 362236830 932275264 453566883 297811786 171035275 48753504 572579833 297907834 940106916 433226090 396222563 645634231 463538362 851516664 820577872 90938527 527199694 603817143 858447417 101563790 696045366 780576371 187980465 122830321 441614666 769853782 396278788 882338047 681273963 797530516 95192626 328642107 354828848 521175901 890180458 423981927 971964836 441759533 754563083 302067102 736001811 676880840 490873428 127673270 950430363 625345169 553489217 518741206 815517525 851860348 823721308 906971239 268984707 834782963 156706237 704466024 178102364 999720014 471666862 178766141 271764643 384443768 144743777 432425850 849259551 59533245 988860283 422301528 726479742 112103238 310326246 730919131 631886541 204171357 158818912 142433188 359193014 949011533 910920339 609181261 620241483 758299164 433140393 928973965 919097991 66340620 80143901 206299516 873173339 639796987 664970449 964294496 812347444 524203223 817688927 134299010 518832193 973568662 310725125 387695848 367896286 253463058 954152022 821459650 766506493 109533822 576792096 580316030 733028463 601399147 27754076 168422309 759468412 183453986 432158998 591936557 407049830 801348323 686969410 834096548 211941210 864927832 718866898 483702394 167704932 143382548 952305313 742171064 998547589 803243981 294783164 881874681 6632362 259826476 401581688 942581664 546840705 936346982 730827564 293267573 289871514 394653243 934565323 776216853 239314040 72905524 162451748 349193085 389071962 292426435 416147472 20017211 736767787 334611467 278739693 167068369 911697802 992605710 806303358 463797161 560284183 841634793 649840841 483124571 480852946 28490024 303352711 924912937 347785038 84721732 740942119 425466649 63898856 580537830 463730495 573504707 475754073 79818573 462551444 557647416 858859429 818194102 228828478 483071268 771300560 761350104 312930249 48429428 534960329 896466020 610334707 26113476 713844148 649289773 561726294 767151498 404952711 533367184 550022456 809506248 237114815 756544447 543451428 580627240 775675612 962545040 893133086 219700081 875867362 213285927 720053492 766858605 556026330 587445516 179520883 508990304 141401883 468628172 824618675 625924884 272265748 25669051 526173207 740074585 647910654 221453077 355125527 840711690 428368831 494027627 988859892 875664811 815228163 446994242 1192883 717522675 881537218 304347424 587627572 516283012 230484134 927489186 432931043 252410207 917315930 737872769 308286493 459524076 62530666 814371062 820229117 641259762 794738560 859312364 174951435 258035355 938220053 192446235 475629817 801923032 340400156 479076640 871315207 888333278 976974345 916861523 687227351 501312470 486636898 717950649 580292402 588339959 580232931 377408071 838483467 325650848 402450190 17582968 489421338 640244305 807579110 525050266 580556350 920393767 118989950 106504535 639430205 502396797 228772991 11122969 204846413 542322238 485122480 542683684 217350272 408073916 202963610 168506638 551064701 825032977 993807565 552654581 179327132 556044195 746656169 891168463 682339626 136412059 788212972 811354106 58450566 301058419 707100478 554902603 778935339 551284364 559154364 798643237 236235573 927255931 764639792 181786205 559047957 935235528 397323653 741689041 343921903 575502812 100438993 693090463 146562806 468032121 26299149 631593609 981592413 427368535 932670542 193841788 541400890 647738504 844780306 325508990 241494909 438728367 490702138 485452 768899376 636752185 870222265 787312098 300596134 35147021 720234740 538287863 368720696 946904094 856147731 293804519 747430193 212497173 56434966 513167869 855441373 477645684 363231383 293469611 939714708 596231586 255340518 973265516 462075135 450032628 816666233 7875495 304699372 259697482 13047365 504940237 365610241 494219243 694339423 174088121 688877029 621450347 340089758 927141440 785350692 188664917 165577262 532547764 834333016 632920708 566746564 295419998 561007915 608886019 765998703 606247091 379651460 699171865 793455543 186090105 863335684 308664619 241504067 179773625 107892980 310917931 357654816 530644912 593892206 705337386 498831866 644531471 972095714 909517013 998760412 837577423 72374053 111817693 21617767 299231548 780260786 369466902 848666209 91263593 992534510 545569850 268474244 331477957 150043007 999215990 41442656 780317698 900424437 225627146 540228409 292717609 587893415 218491875 49051279 343057306 440962269 823398814 844111370 24270081 509463457 342124614 292349268 461885131 341452628 824154647 814930990 397755847 537987098 463682768 69713916 92433356 656415512 172963642 341865432 825810849 798980383 613889700 25808878 538214093 957555837 695534254 463132254 709918935 319916432 779443349 711980168 474002632 537419397 519373286 954436963 175437088 223096027 467340261 792791851 365335135 956355381 347693430 934325094 978728680 141487613 1034928 531462406 377137906 194885058 365003490 203054793 305071033 242979900 840309384 980726240 210227066 271101373 407535696 444331034 480571518 190222990 398101282 475137373 316909677 575074235 997744723 365142952 36988253 792310540 374218757 727129650 480314467 537276136 944584390 327790451 160620939 963056309 804942485 433783097 577011152 176524499 28676461 217171310 45509649 914077030 749206428 468457319 330141805 426379378 166847381 656715054 342826536 453246960 221226371 119880015 103570046 582490784 480796762 358580280 660661078 939077682 72437258 716434594 527873059 760639519 545813015 47190124 816477119 617403957 749453323 624748089 57115981 700593582 760909376 587140152 732015291 750621609 599054073 734257562 627076461 109851728 778862504 238517551 541707624 16007202 175134241 751477381 631434398 32122457 83891768 959967438 480091193 377052808 641135080 23736711 991066114 223799067 123712529 795771425 782360976 147663952 426278217 853520021 159368179 184102839 978363348 517033647 130944412 348677757 189399377 940443827 380642821 188484676 973254064 793264372 34296609 798471420 159381627 607436882 503399078 264780794 904894440 928512107 654727925 823441874 346552199 210821429 462161291 360033955 386982430 331227053 170683946 231079494 27604494 299704084 967217984 723338780 605053792 582617958 156903785 33254573 487666538 280122914 314278491 479891597 495130887 155679760 11463365 184005273 750478842 68501504 956887642 379211558 910957065 723452805 537872594 547666462 715912866 291004086 820988451 731837935 423072497 289397166 297815420 199886080 680882793 134048122 660198904 364109811 210885978 468207970 473089667 179422449 427376892 106444568 735230189 637084169 389239029 879164891 222198103 337611607 727645449 665237073 930175192 589423941 760166703 817703075 948241190 212488136 699079498 316270640 36627785 792223879 752427570 160039937 324291145 218984373 572117306 103518357 362453869 133433742 561870132 252228731 515987453 295254228 691482174 67200560 867437911 908892874 498664226 953956225 964262304 732839969 972111363 514101295 60249373 343236764 545447601 270608776 335312969 317650355 288194272 412436192 219470715 113107232 196669261 72012358 278142954 9145219 676315459 134647083 40368454 946456681 405963935 278358443 220393861 477190005 970662015 570582517 227619689 536640543 73178032 813492441 984953009 499810412 952013702 149948850 174035674 315456796 736685799 447464347 193010218 410773649 766435577 545368512 304448240 994668350 293063539 217096391 688859840 570278322 77423040 463187035 960504561 182067856 712397418 835853294 267656494 961921338 261236866 907319954 761924777 365701907 598227880 880489782 582497816 471859329 174813393 489399123 529151719 433148689 190046808 304140801 824226780 318472280 350999536 654730944 546532334 187193907 400613578 420581646 174530556 177084178 645272008 50391755 281585256 949194781 383786456 607100571 333250649 808238534 276369185 971063148 98739376 659700566 600455587 856513340 663320323 41447566 592643377 369323478 857074372 968093844 453335046 634888985 914736445 332646321 187517965 808120286 503544141 696632453 612540974 85153546 584797145 350442797 493803445 927500017 961143810 909285724 91246601 240590179 35366806 960122600 584829897 230114541 238672377 623289464 247166061 294179261 409355276 140596921 751605797 994313643 933641121 483846333 623359276 222805932 380510703 359852569 987029232 434803157 818474714 403983285 907982642 788636314 94545145 592852714 15674014 724174822 480976239 274570549 372772384 577809235 606351536 683456366 951669855 738849891 342832998 301754238 929052113 206516797 991609524 288095582 790112585 815758701 573097753 800615868 799830545 574062850 234451037 39307474 520698193 107920168 574163507 106700978 674684792 125709677 696069918 492897903 441742612 596352171 910973207 380306210 79866042 506800225 732159831 359405047 19864824 702674141 685396146 579131156 211890241 32721747 674306291 93190975 679348318 307340845 117442244 92249091 61728202 34879378 822692528 758886059 873489121 723538006 701914663 917553578 478704858 619102004 809259175 446205004 73848163 12837133 372422327 552252915 972830234 794167806 740393444 964789615 360012591 332805595 356263899 147347547 5741080 410317040 416376160 878498519 286777178 904821719 685961385 901964223 360663883 943461 616149096 711790999 261366012 200298883 725840392 432725599 846480254 418696277 730210678 938594029 481549724 595257513 149716965 557571630 436894844 560733764 603771852 199050664 560870337 182141989 165974189 596162506 361152252 358261645 690397307 535305268 924681438 616243821 791030061 994684893 883536924 38490135 138880494 812237688 162344038 75920563 464728058 291817222 282726344 502727927 895452452 808268412 870284271 559586324 66585796 7062663 708439049 870691287 354777105 124592870 234001409 661144501 978212098 55169145 621913574 174322902 395957967 802045016 198830657 452761629 980090479 178850364 27772154 291847229 772847299 29622973 717807937 551791735 742028313 226662820 45537217 950750834 950139059 932961407 817249768 772150951 648741385 231144202 777685219 11044893 407889020 147414287 889004685 361820122 869494653 649122446 321598869 900523636 415171007 738519358 200760582 993580733 666491080 511118282 248671104 552028135 440559219 420656529 167473655 252353478 252005663 778945128 902841503 455472449 709861042 481375506 59354359 565074941 301780783 367179120 964367166 43890385 607848681 80650985 723705901 524607537 543920836 946373080 869880319 682814555 47020791 239085461 292915812 585050256 821659129 930805708 482061282 591946432 13201919 205758555 777355870 65183444 556315639 133318313 414832098 892063283 759661132 207599559 341557119 940395907 979642946 553258144 942346490 502737846 702190011 780882514 964871652 756401689 265227054 571949652 678569205 975837298 725334051 513590810 364598679 694356926 621490111 452685054 890475706 802817545 326517069 508436282 646860712 455596118 592785205 215910477 746098944 544599943 40673386 921405130 879738697 311046144 27296138 493071975 139166158 89613531 377730186 863871458 695198822 538528998 204735740 737188031 589059385 128785621 891386062 323225597 422377264 103965124 150107182 387433997 985070684 320579496 926105376 814504008 468231948 708070294 536519430 372789274 945973786 101483332 427733882 702274545 653445772 955411226 488014026 936830664 66897971 28361820 658549341 706456962 900151313 917095896 574026441 86154800 826170754 94498391 736560125 842157622 566866290 618269910 847303099 932303470 223679893 565631102 917056471 268479412 52602637 915672033 242648218 420157434 748440865 486990202 319142883 500363752 591552456 476079084 66167750 148394207 739016628 239177788 166415344 466816957 882460266 570483232 909076631 846024073 380450708 914990028 579273034 877536521 629172978 838220521 343665953 726400260 560065524 333851945 224229596 42996177 966522427 850950738 66375270 136672390 942204126 486074318 595287224 791468420 856024059 175904403 416571371 280388949 480043653 38683471 768238464 899200065 186914681 451132070 167959970 951192105 464923886 303664943 35930340 55604127 741807127 747965287 661018418 846558238 277416366 811297511 10809809 578646002 582019907 347279195 954284026 302724473 638703220 675109689 218249074 755637940 45033572 117179296 401842040 548922065 544976049 455335166 643312578 519056590 823707084 4111520 948083218 599944048 665812603 625071555 217391458 281696 274806467 1044549 444670641 857661581 891058420 735646125 208408800 366310713 947327918 307987195 527408047 664233962 71590957 484690139 291961786 102809288 784725100 390812958 6580534 457784591 497262595 349373329 796436142 568428453 91463020 178891049 640870882 792976379 796425162 34842323 24355626 765751761 314184758 230799057 700284162 622371811 359415656 439389337 673234479 16551851 917716585 520950850 233417845 291904042 685577615 168366025 977290259 491946259 887650399 581812891 420145765 872018277 61068963 842905951 903553310 738897374 601272704 744120082 17304448 382373757 466345739 322608662 637498027 201205573 934721040 658384932 644014437 883154729 65273439 24544222 366508209 113954720 233560445 5714182 712482576 583735563 531431574 480845866 669667152 277869216 129138904 306279173 831971628 911540156 824373271 838107100 149853391 916588773 817127101 773561167 158181012 615084455 236959273 495161802 749884629 690039901 138665684 906480617 220088945 793132985 516243563 795622861 561351795 508285777 444812777 189369465 369138770 281868323 305216142 668525944 161465885 350438793 589690380 143853534 742712123 435274641 343810275 734557414 281341638 772129284 90800752 639835543 267518158 355887227 655581908 641620000 204087012 837016603 80701883 559848915 147957968 19179506 784716006 307666698 152069387 922993044 120510564 460635042 968588279 65215481 950756473 597025783 339648484 857784931 688380861 972015468 118933335 853523618 564108995 756269185 347345012 168255754 461386677 536629821 779538683 700301515 171816211 500175055 634876385 678593640 408535738 2139165 446537909 608606556 833670383 112911257 304893635 461250203 132150449 543320643 818831097 483995531 222036471 691859609 499893160 838534836 468862992 776648431 469175219 407907227 563771170 165002749 695567635 753505899 946957533 589757759 842253582 479060064 932434758 909092046 903866001 928366355 230118494 652931032 154364446 775177097 804531114 845638184 569904021 646828484 78291477 757630149 940905381 233932731 475613121 421513318 483804031 542260416 183853875 881283966 86734443 452844653 503053226 998646458 627014869 577423167 456134583 324330242 349703304 381755624 284227159 801625635 472810776 61314736 751376180 248513405 982824179 367978939 436602050 185230181 401156189 69139486 676780008 452963544 724227814 349841065 339318978 339657941 148409577 254773401 942276732 749292780 874738959 599024004 246713939 911071729 400906915 324049664 769565603 452031431 323902160 173483043 557257468 471091090 407053871 383454127 85123610 23560023 460421120 815251715 586220923 293164167 539983116 408922488 51172734 484833400 654114209 658475319 561640898 378088066 624583798 38118909 413926159 794937765 610711742 262442525 556965001 774616481 792693535 492286542 212588121 630624865 1863470 467426174 740977804 421965760 96262536 151878990 390771037 628101360 591786935 836600262 322702882 76896265 675547670 926293970 388289375 883780797 907861401 225390708 455940804 530588839 501134812 835312638 810113292 955083913 771889355 882003463 32832936 175239964 9193954 935355853 888735860 719835596 383168492 821709416 890387873 56182016 67690467 814448294 778822261 367163035 971587655 303309531 763577076 612093777 795261155 385413197 930274030 831104661 400562414 104347020 140394110 8517534 152825137 961102556 843664078 190525287 978143787 95628791 34804217 748606407 872305754 270193382 439568502 931018748 617397664 564593450 651909668 102323342 325375841 369038339 661697728 830141544 605415070 534947211 542137085 979553558 151314105 107906408 394022349 601617850 715456393 608806208 497188394 61372868 903170053 467677932 175660785 363509211 906062137 382317516 419119358 597038501 316912774 637192023 112151922 599601370 968767474 284608719 671669047 974607325 558480112 171246840 879463641 622359777 247198898 995354223 237519055 292615266 313304902 572721144 89502958 147508127 569502489 82626624 735861618 134203958 351084923 865000145 881660401 384756167 582777416 346425088 431768339 593571173 881893368 308687851 376164802 378134276 718661670 166425893 68165565 798916398 883388523 614495516 36451567 427626717 207477523 495272138 658390106 798361788 300665161 76045847 726456412 693471241 844131039 849511478 803197013 90989730 786164018 844728892 412401070 646320361 34567916 703304683 827559385 730421074 771149751 580103961 953971893 962119732 863169533 977667411 7800700 132424251 693477407 830733585 761977603 10596833 911036238 824310602 23518267 996772999 318151967 446329142 132555836 395378877 147880534 566959963 370526195 242819761 586409055 560957541 504109708 723965103 619440584 645100793 966948319 235230226 442774636 5403434 878974874 212106024 414893117 374639638 455750851 76335311 296386249 245391983 865501934 811586561 840773923 186986283 528371383 512061954 830389677 978454606 456605490 829477971 675926669 246486105 769439569 80281188 236037098 680869240 800547545 889930041 787616624 689272862 978092110 509687624 526835387 196806725 606275089 11739617 497431148 65363928 896918126 600832135 47230016 356642326 145040547 614194483 312167040 354110615 53367046 822985418 231517094 248345241 21064069 220804806 178552595 212147431 567696988 105351869 881676171 289923356 501066107 983574570 685640564 61136041 688315061 763006804 500403401 377639350 372188071 415166422 893798843 852580665 7714084 945338009 612494045 724922998 965534458 298310952 219524718 730487151 911238848 811526441 971201870 452830159 794291246 849263890 419207832 529194846 29439902 499075733 638914300 60585307 971989630 498815477 75128172 373684297 706981188 441591893 823132313 852037834 926569723 621254034 285264505 900565926 57748311 301096683 544726370 79736281 905007741 332224900 423502426 644514219 365563407 816674359 563863031 762797900 163122501 238312797 194273523 31197076 724552546 590912289 599290630 610158817 144585090 929570227 876728190 327848056 801219777 328252003 570845562 758166249 707980069 670881316 75600483 632637074 958745326 997919004 989541682 609090903 401594054 190455776 555901588 577523798 344283767 451307515 553506601 295465492 854949537 592084945 396833078 11661938 729343508 474006453 200024021 106760917 469974343 197887452 602953596 568808123 76004351 455215925 439545933 329892980 924290364 214024840 633871464 400736341 89676006 731039798 636726414 808643635 655423097 882412689 220407614 598836515 606858582 246153808 64553812 926725978 447378502 165826732 761486182 224466551 900913597 658556023 70739035 372406870 928581569 339352509 589513272 66082823 894025955 408714538 112510343 356629662 413024537 464244856 289672053 141137455 367691555 956465086 886095844 157312838 714919647 172884013 329479751 336576059 354977096 786636832 663045489 633441506 432997836 679033734 558174208 549606461 385190931 852464481 946580991 543095736 517064157 108274265 42994166 301811784 179695718 483965047 934828450 845678762 526656946 90229221 507885318 827801 252806722 637356245 393409135 537764771 9437274 817720083 585288804 349523502 927201889 358339984 509384937 856135279 274416578 202100591 643108356 472871198 496496265 476748258 495326968 134060448 48074718 272741249 623515734 847515968 845482280 650117477 886027822 455358154 246816679 698346912 596667605 132532433 17596277 889823542 788693261 763778200 499759480 29316698 364006859 289462197 221014374 225320128 451214112 783494663 446219031 158332365 945798076 431375101 60116752 414155585 460682634 489510528 175614742 432805107 941488046 284318091 902914030 725410787 648376799 707835602 16930449 612175511 58821358 848648494 594419014 148428418 420072763 587974233 221341580 837905015 806911823 204374734 567218652 295425640 478863383 251350018 833194769 643693942 792856853 416744300 175781627 195262149 635362431 670830201 335101832 406756679 497439272 980265787 728547447 39795071 757133520 406356653 150668897 889001799 925309764 489953217 49611904 308847444 277020443 402018084 665178205 847343903 487386358 466568705 463693033 569965124 316951036 127607746 545328381 637972788 644034891 447197092 893332867 419416893 171303932 181937258 548928440 630855857 643835589 90269720 844459578 820895954 271585352 97578021 43391862 386496008 568893972 485172227 227577925 545197232 340877274 138173007 534483375 17574682 549733298 178784633 996715806 85602032 241299893 829425688 993387711 123503409 437360959 637549421 453595548 299346890 492144178 970895553 972735093 256580810 422024458 452955600 675841426 418650654 148548063 154402159 506286908 821709240 404873180 346065324 768937780 798975331 409076255 637339907 664613116 970697376 274797490 168083671 181720772 591176870 959648683 504019625 89247026 395906399 352938238 795289867 931838512 587424523 53324306 525022989 567777474 543055608 180056526 990110114 431451685 39183283 957128217 4539465 604508375 725016687 751082233 89543992 426311449 724067232 821516613 608372717 336981598 202963276 90228942 599472242 188491443 188630530 464643992 540945270 713242044 498623269 323083183 289091208 952417897 593984274 178642474 293571524 218969387 183939956 90699978 440347050 439682786 463150532 354416647 371381273 866610365 401304083 924289588 290594864 787432507 830504848 537042789 203048878 43578133 329325853 143791295 552614587 873869554 968212848 196897148 82636864 488661904 845236352 198445879 149913079 206559210 298382036 153200479 300508686 748442466 683076556 72434192 442563834 905146547 655983112 341950942 2164872 575258999 189273883 988989867 23771115 480864766 230294933 658755166 319554348 248440293 492074712 201242313 42344081 964184272 452889093 699037360 311828656 246467234 833968435 954474582 622440824 995888724 621430253 213055236 525235549 885495379 764253270 436029927 146662357 416702587 776608696 582343028 321954039 538432833 460398214 404563275 752466686 88405064 649047834 867953533 641169271 340433838 801539419 688235308 849013157 265511026 882817085 538796787 524626575 722378321 639726188 690718085 178173695 921870434 811751144 246477029 532759212 537166490 625580331 142212102 458851076 315425983 748970072 967566669 926673122 90753235 187608897 877807128 47368493 855360855 365355217 94472164 997517016 811835130 637447510 439635441 165349807 881261925 21439578 288735428 502998363 363349059 138442923 102142116 974409411 353903642 623148646 49844490 889123170 752773150 203492241 706050613 392760556 366405668 397065824 176916608 335190277 740238581 110582978 667444464 369802674 537942102 68914512 862358707 752449523 450069672 708653407 414477844 325429281 51081386 367991371 67992266 655356415 541044374 411948728 421367461 834851681 406622967 232790676 622996509 780816797 918298244 812170275 360840348 506504336 438525975 214356618 964194451 817384261 927644665 595724803 60358471 371796756 578402369 880792485 799649328 988447330 533039814 151022750 912906568 901636565 214539083 361900693 144967359 76490247 526804202 898649838 898891546 522852901 242155137 431271179 511117937 980946354 1732912 985426523 521481174 30852405 516199861 907169691 726214721 756640854 45994796 194648809 274722289 394284170 866126180 639133559 500769821 898287738 4568843 490363136 111326805 481068110 464089518 580998483 495681934 226023715 736903128 930433404 361870356 863405621 757799368 97177140 629792327 976098936 543892735 168020274 131818209 507060070 173612883 970131593 617562212 640496947 643032681 32422488 652825040 348289290 873591861 156717799 6676187 49834715 716518176 378437365 857880308 960565313 668824983 809293813 740025455 627473473 974597209 477624414 219288914 471301836 709153213 518997667 949851150 173169353 962951529 648955346 627904760 634513024 568443596 604891752 902004521 218560339 997581232 330299080 942643912 38323888 837721443 251568744 851350145 46346000 786105552 796120527 74279384 656635035 686894424 223407433 815907742 877583348 826157639 604014288 489878151 133911327 327316215 27885494 993832336 551700718 53958131 218741386 733366105 345819390 837969623 88294798 679376437 164376402 129199083 975028959 24786489 721014445 228753715 802371399 735160522 756277403 505118841 649789359 852141559 250383839 51848221 815967396 43084768 135846092 335796682 234079550 866053088 960038571 678874438 178327960 714505120 923182771 986884839 302307787 540620741 353356931 662231765 757533707 959614733 56876974 995802629 948369694 379963535 786743335 375149700 292685548 359025900 850656081 430532296 493273848 501743213 398722380 266849946 169243432 854424595 805669743 51828044 469678368 547113158 722307181 372949717 533626114 637359719 370529360 644797450 561933585 400568818 520671228 510409225 655340298 916057777 62577518 319032037 63342762 155060366 847488228 97527470 315545106 330599145 420750418 250270902 991462702 552922626 805667807 241248770 237796682 337745687 325607328 932698787 436647136 382014026 480664071 134489758 211980401 285988533 963000893 140511594 36234249 832880402 774184516 521759698 940061317 388612548 276290013 919444715 721650201 559909043 55380203 493345903 510135798 427152601 596560664 61669025 425322634 293961190 83453323 119108756 969561758 625670178 922352317 606812318 118875528 262007020 604930239 394845990 83180884 666405108 5716309 134890622 310602127 200136087 711070642 317005225 174411192 843960726 55295676 92565187 553567831 548430058 701865520 633549948 845826912 506095392 71564778 786190088 716526108 705820208 81138009 315454931 582235025 940232005 373387471 209850589 99423114 896590535 968805061 722919211 879485865 467679451 39420171 399022853 674745020 996656312 304001611 438157942 510996769 456413823 12998616 476677650 17449365 317654574 175263796 846842746 703695001 102904362 697669220 295429022 357938132 479389549 414746393 163140440 217846519 99221012 884122656 282891882 59850903 768861566 662184955 759886026 904937675 973329698 908072175 635825921 225072737 776579679 544541060 652102568 825870161 752745553 693423456 32213606 330987942 633471947 307605145 276695565 178813289 670899794 210728581 580241309 491830866 338896285 952840207 89762059 447189357 921601064 408688503 999001342 404706345 231902464 588997101 263313375 342328967 475176634 763969257 22510380 858504646 848052997 25773356 353038438 186055784 501434025 958122944 131074424 428871234 819876377 660366148 654469697 522410216 332374586 963109099 255079887 359161611 234265844 804974057 545375572 816784580 721469495 543871442 896167236 869197156 933946006 290094842 612227146 348460773 448283493 785387099 440300833 741757947 391712772 673697495 245663416 945231022 474381057 796642996 771078192 137878362 892543450 272509156 247014651 945819257 548960123 811209583 279335519 206328451 31258834 545872290 831289417 36120128 651755607 149195711 889529802 634979109 520848111 791592343 797793741 347485225 889187994 657973458 405132509 541276347 827544242 972142558 459201315 875819660 368378701 647021370 688288671 426784146 375328767 483464097 326783546 837367299 830378419 974121722 667987566 365268295 72839294 927593107 502431411 633634463 86734276 812142977 875866623 428832091 537913824 584779105 962619209 173272800 764299946 166963818 79757740 483603926 23100998 246512724 644131616 234870581 851803485 627096151 570201058 425494609 858557194 503727358 141581838 644319881 331486382 837603487 336955728 262513700 821198040 174037206 301510773 651605486 672507867 391967254 261488411 697824777 203073581 923021255 382299127 754747664 656810992 916747893 376870461 224432864 802005677 672265405 240760269 223273942 304962881 819480382 876622119 757048603 212368705 948375576 45060334 600277551 308692369 557830806 723440694 356291339 490545940 395938654 198677552 255508765 902775052 601708988 913185259 609569051 133064212 706921882 736096456 30159627 170460758 234470903 569344702 273907092 952065760 369067356 635110773 806717136 420509921 811010011 422507344 563097680 482446051 160118692 451847544 120753944 130591275 504198557 471919796 321540096 272335518 477709950 14297404 579471230 541993148 196920964 458495017 897600218 271271995 880359010 689382516 353696206 208877956 370237920 341418280 338513079 908711796 57716462 902492371 415120237 928055878 73891396 808525130 202305762 444668696 93973317 264702288 437579848 975381441 953699524 231700280 420824901 185379230 579239328 266670801 604836964 850391542 32576336 254887810 811423240 198713922 771412331 92698517 601488987 916497801 290013318 77439306 201661603 70601205 133478021 88437552 557442979 846898555 51230519 692263123 448363971 649561878 741286339 551226328 150435621 378376141 58733887 322916429 607429092 565539003 843756585 397034661 957387116 180683306 787980271 952530978 330971876 896905226 247990926 299423623 301136638 129543382 841458621 690481313 667495183 662201648 769633238 762695504 303686227 761331495 35900650 118851106 186242970 953094758 230116510 235921549 133611498 31092838 639675515 70231139 141421266 696299028 483284391 372086387 170876012 779659115 695448994 623340416 647241094 743207495 123684581 770182045 688242269 469743268 255319669 691889758 555097328 571749207 454381807 489751474 752963500 928003861 816690408 973297204 215391070 394474083 163870037 141061680 115753977 361693967 429270623 773254556 250317498 351868516 877113256 791783762 949622921 402927745 38046536 997835328 30852977 706390362 190768106 268717204 50645352 198517966 908045515 609726004 647493569 932293709 457182054 563683272 775758089 627854910 753711826 665807468 535748010 187990551 105276937 965117675 559127040 226830333 549249765 998438762 307756176 524282446 308226557 303302066 561643294 33418401 608867551 280299156 650573888 962504132 512373860 846680596 278857376 261246185 916965344 110746943 50223603 584167556 517637856 168722313 581215011 711596149 111164177 752535701 839997093 537857132 304939673 767857364 500074227 797640262 669704675 409080185 476091000 202324669 67175109 640069688 105838571 682211465 460554824 468324174 402453747 982650 743286952 879997248 553525790 283471844 744159654 845078192 287747842 686237439 204572639 747689649 355853685 643388673 162556806 657356940 571624642 978898762 213637339 946697230 777716924 873028850 152778274 620102605 18966204 990476544 299713149 674286005 511644154 53049985 311925437 859509373 508263055 393123681 298275474 550516678 218139103 941632736 270410796 909971075 520978311 780015517 681941825 710293017 233238432 684168470 694657657 676553228 146668094 82189536 281218845 969978986 5985405 729079103 195480501 546754655 65450070 70173834 521528351 225724453 64722404 834557610 445782800 137040189 160475907 367495858 681918573 404477191 453203345 627411138 414394278 50055791 446802438 432542565 699083381 108179310 359046906 341638709 379512937 791024730 483664721 18058257 981234680 849895755 820417319 583379326 360781855 238032165 898349876 233255403 519090281 271369610 547000288 990785308 585900894 656681239 153264325 756671439 19603546 637273351 955160457 813344339 906049349 622506126 392400000 801811527 849642913 509957804 172440982 934845347 826193770 779794409 884228857 843878367 867025112 850813892 698580802 544667285 204538931 782261858 712050123 255405264 839382104 479485723 402913667 68266400 716938464 568280191 943921090 171926525 486762936 377098279 783310820 967555461 525022262 127403354 107582879 35792438 827112462 570605935 356831322 479563152 395049832 661743392 522549431 207528298 121368242 642249089 644158545 731653506 282836229 887136734 675342341 285310170 585935833 266956414 863814 704035276 83248803 447238921 787315035 203135066 564495551 248471760 630385511 47580828 249609715 58581087 446225891 804654732 852228407 240725408 938278224 938334790 352971560 606830856 454368784 798748230 37577001 170898803 977298111 266308772 697746597 664116933 627434219 731911165 193404228 90484272 135398928 312106111 155415172 722609532 740713265 88137310 552407615 901484025 713446220 277456322 747111867 187995384 512958951 385834624 114610712 673588180 287558751 297041617 630500356 319072096 530891995 831377312 348887872 677433589 414444194 105199736 597424131 260703143 730512241 57853910 420020335 856264567 837364139 389389847 993775967 125600355 401920815 659113873 73591488 126135801 688013857 586246693 959017331 63628282 396146395 922559653 315235616 265467798 888267813 498557990 106307014 240103538 121606226 479633162 179268060 552861250 862383358 991684911 303144883 552114698 18494243 439344750 479559290 719576098 352431488 58823570 949913819 849422098 557533145 779556875 504566246 799574574 856491812 455990631 879803644 182428317 640115505 478543798 294179081 335830587 834360800 113584151 406761326 327926410 928588678 862355301 808703541 17636834 737307594 785532438 29838326 69665023 567908916 46508600 644677552 669185185 109726473 983508104 349480604 198137514 172560930 506283203 908029869 761059073 843245123 928419629 785449015 595698823 94552582 766323902 16597107 409846923 857495685 462330882 517240103 229931665 130958161 735770052 555563431 739072608 409333508 546366139 539695127 447778295 920845333 600791183 681096572 348392105 417517117 839502846 586474855 793855992 802253367 770002191 874714091 172972873 202336394 991221201 374705773 623448638 128242421 915454960 34563940 518393110 558967898 369019746 879002413 827551952 660071999 87254240 91689539 131912604 442021591 332279623 275586178 927365294 639522989 164904577 429174337 396641520 256448880 181907138 346436135 534047147 35959659 408560244 33608568 931576598 791469981 848364714 267331657 421411901 860345567 528247819 80753733 401650253 105607086 116935811 864368382 295388329 456028914 718706347 196464085 241142101 722645350 521948380 365152502 910972632 563111613 452131782 341899471 240746393 125771691 359651486 162327633 926009665 342691975 66817508 195184862 324090467 100894244 134123108 889454688 343033913 352349042 446671291 429926276 509672541 121469610 485782371 918697067 926716282 459001219 459302187 32639953 366007909 801350270 232083736 431942314 801284672 449275421 859215759 195020727 446592324 564994385 289571702 274706308 266241513 393057438 891238564 308143192 250526106 761262499 274247640 40290528 536358714 869313261 583230267 871489885 475976677 431995248 822878843 956366606 324640856 960148953 394661588 76486175 345155613 369203927 28482809 130485555 970834121 283190117 59303290 404262012 351392759 374905946 381265132 478367034 514142975 19741885 814173910 600954649 897563162 205192982 433971065 56722886 377365092 752958256 416804032 792639902 408410129 528463511 131544075 429489903 33088771 302944273 52757344 72326791 893506031 119816642 296993197 960503281 830034697 540970612 22042193 149311393 842521644 814231496 103885430 907633473 902614549 763164660 114245499 923492386 165410528 47399548 838164770 591847425 240911924 838281354 840649738 481260684 650867586 772262797 203391942 74557868 531459763 142799486 845389798 698469357 250868287 257599332 709944381 127907420 101647991 901631811 413545400 79299016 680241429 256612564 121460221 663614339 646983499 415862693 66526169 331770249 137249352 199156474 127005405 22135000 703233002 91901526 512553737 324583098 172130304 534175959 145838684 224590265 381971579 11220630 487646193 881971439 851096039 868755577 361914813 817341764 502603016 246596573 860101547 684904582 200207580 903834429 677343626 55532189 42049854 130464098 631583879 807919153 484031819 659531181 636812583 87087681 914166497 232212178 680917820 582857240 711098372 543141727 520150937 200210505 625909467 667252904 419371311 651087721 388816667 85698690 986779724 154971391 800011501 88691486 460596229 229576201 596127692 887331357 501708281 156096977 906696154 487782599 537356002 180063458 237291558 461365246 833365702 717137942 305626826 46811184 675324458 867151553 284698475 790125927 126159187 959831469 96108455 799471071 718622207 138460368 771307690 609728972 621504112 556263826 928046438 8061634 817687765 568006960 96074641 836960961 418943173 630093749 576815593 452313233 627677212 163704571 347920717 784768254 544756928 408556298 948700261 595883104 426603809 91526710 842369437 355230216 512662192 663160577 788816364 457842551 76618697 574041581 697630032 903884424 972554396 774816059 2530084 525383731 234825687 648435653 796695175 439504924 675801905 436539432 208454617 913669925 805594215 469720941 949434990 52601596 480851752 846740176 665957835 425496629 953246889 795760939 378326768 930436226 48029085 117941977 418325156 960881243 307754644 275633344 485751159 446481415 378600049 38231215 303457541 463893057 170643856 411381654 769780004 877687887 134637024 858255823 593633180 619129502 969776650 754415060 839246344 280476538 482502381 470482522 776464673 828868611 207335912 372455351 952228995 705195567 470322196 760252368 652401848 100827812 89108102 534981055 838333149 908500426 551896241 423619890 208452841 295707047 715317283 758839892 361134309 519700546 654881266 720948494 184269307 709964850 40797005 463959122 786031783 336648955 136002234 670219723 892110970 914420284 413362248 815090687 304590833 424483442 753935481 209937075 72762847 399767545 658296660 283442448 263886267 890738800 275674537 625769098 132785718 992888193 68719181 245515718 618928361 809869727 625563174 369782483 258527312 64319719 579757798 54364785 84864043 582847510 287376500 311626547 465591730 498842739 320208196 90398873 755961306 554524463 768391884 63393887 386958448 761022509 894682518 865589 716549901 874849085 880081195 271333003 665862060 545305709 590398989 242574168 207850770 264176970 864116163 53201109 588318744 270733908 526149325 206485015 75137188 585575738 292538251 681226337 476459214 524523355 946544985 484978988 458452532 820567532 817013498 244701393 777362215 657921844 861723698 381362274 783190616 106433374 453997109 502794768 411097455 261091630 603406159 788501303 919782920 390832867 731909987 959238768 536803832 519856968 938860855 714282554 275372528 155462131 992413221 929433091 978248214 969153584 467654340 385299896 170722281 104968513 540347384 85640314 115352118 27611374 769958541 448850042 358600152 897040090 966054980 104034191 659667787 802462958 376855560 396435710 357524734 897365148 97439791 649987685 518925182 601241909 258151252 664044897 817671569 337975513 636908284 422286864 896831271 619855496 101876600 200323700 405690542 938081338 229137559 405897455 569003832 937138905 46454744 350301556 540169809 130517687 370546077 130275205 453429527 386646459 215213 949937513 813136777 261600242 633973845 909712022 22282385 720102972 385742159 72954439 296720319 974332375 444522739 933604810 171348875 693267943 986212480 752339281 917545723 26741904 948785453 838943202 197910147 899346188 591139365 824831280 609310781 66086781 374188749 712948837 876767956 711254923 711572111 798408292 885574359 393074534 52165243 235139284 532980377 761035714 971452866 736309745 418719026 1487778 601035934 99618918 407417996 36183837 604234529 574181788 935750874 238954136 610970957 302833732 401836827 519365348 25631944 437229389 998391293 197373235 129039139 299627911 256705902 358749961 598850503 835220011 85615783 858546505 457654485 696738633 914390001 730633444 686839811 868740120 232613814 921509900 525510575 479098972 569880917 793944978 704562820 515639071 145425077 790088672 983744619 887789848 625208908 787816893 793485397 702998949 53823151 923187827 196484861 594615104 111445959 622746544 824083143 217510193 425423007 652137914 951359892 425194994 326883318 722484641 986702764 692390888 526447267 599966507 434067292 991383047 327852306 792122565 472830215 200812973 625208264 502420256 15794269 927840571 936231834 766488959 572692443 823583061 298453279 186923238 358704681 965147638 42300358 96868837 395940860 141698764 228797793 463566178 793899198 292424628 14859802 604648191 751329659 361779785 790021671 837265553 99059707 201916791 286069426 367360796 107384381 535226031 187721843 314048170 286513565 272062609 883282508 796814103 105895218 657232754 365180811 883544036 751218069 704791685 638158789 855555300 798968141 556681947 504692839 896177998 272606732 803458154 860101363 985684688 427956688 311301844 981986960 685895755 432590361 633820281 592628784 148985991 911166016 682372913 517136241 561272897 448140015 373859867 384301711 875901321 62559538 199976714 246280656 406367410 706448059 901262849 592078083 302191464 894340971 2588041 952646697 127188745 860547029 374878164 552950198 836684697 334725904 790995619 794948126 126495460 86575021 316436551 167123101 405528713 851182354 710007763 209359838 189960978 729692523 434412541 286743264 701328744 947882868 245839045 40861002 263328010 798163604 430090790 123913433 351647978 554283494 635937023 937276706 606123892 896224772 927452892 48892102 618868502 444363109 744905062 645716228 46967651 484021742 490713401 922323123 554751749 803663215 640682851 158154421 99739301 969440092 750497091 751832207 699037159 142823043 285855530 934464919 954299967 727979268 868771505 822238832 582119584 271808447 903761969 552434188 261967851 731690544 279503576 922757300 996607978 107454619 892985100 61881163 373340454 384913268 223293389 735811072 270227246 425532226 260319870 773912048 891697319 512229864 84014582 409563156 808348704 326571267 748255166 373206467 418246620 984301046 961474616 868722513 165737607 51825159 581390777 88856602 145911951 944744489 841094194 186397858 419847050 396643095 204833994 815682537 596514024 39004179 372887296 181143795 907763191 671057455 68991151 765667003 226326674 815818184 152785543 797506814 843145181 762565052 129771183 862706642 289319810 352939948 657947039 813421282 322775626 100317 355000690 606704440 637636900 396117392 506340465 730347824 309112828 381031534 236582393 449628364 975876968 506911110 144254011 499679982 329260403 179688329 625407195 848799077 769828737 986270262 199330169 386363634 248983883 209849829 339028042 729860743 388473327 182327410 784733136 903937696 993705374 998798670 358330599 185320640 232072915 266780204 515395499 593076531 794906796 789197865 510776186 629424432 808241483 84283379 801028553 176991367 730593576 893235714 559844165 247029651 387685912 978432417 650485282 422428055 53793673 421073854 782238176 615549006 728448592 758292112 783935884 235956986 712455976 173404175 7334471 153377241 512752559 324508043 284509752 922645751 294632639 405701561 948411115 960675207 524088691 606981653 314388925 193932064 733655637 22540028 372952034 650879283 117126078 490206475 958996381 708557460 552738295 640491186 761230911 241656594 239468023 772831518 398746237 601053313 402440035 333601380 798235043 538331695 933255244 893682361 651723785 519192618 150739981 78942172 468486336 797040863 442525301 520232998 312186710 283362630 72025753 947294174 670110155 770936077 774822289 417314727 31722211 926696019 501657776 80675825 226965874 978760607 436130298 965049643 832475325 723375539 445213140 374831494 266803514 932388620 511816806 495390434 195345995 616481142 889557010 858398802 319868369 265073886 286090477 607555011 18485287 715019890 981045447 352476730 817342619 866457723 555119320 596481348 87558631 682868495 557083812 927295043 637482088 392322203 829810876 81933886 533463214 588021806 383996908 220598244 3441333 168763526 292862834 247007786 922261613 819497583 980690638 306521857 785735370 149963069 565713155 689500393 612632486 785920135 213919231 474400384 30065468 934667634 122302699 690366105 193899228 65744894 54229456 558328701 697975132 576504407 282573694 850752970 503510161 817073420 986424487 298077721 192639355 620088724 987859702 737497903 115966289 777523717 515658834 886619496 692697569 855003891 39717020 399772316 867262357 289035282 770801107 505237424 255758470 183766816 615481849 793055222 123420186 660904151 472655271 300094663 46665574 593228994 874279501 619143588 186469649 133784707 301962966 656328879 978834756 479555780 494414298 618142172 758279545 961135838 569987923 775033311 709097295 346545338 985018222 541500363 103593427 431924595 984145245 49549970 223229763 180262376 836812107 533023907 92339502 139442602 763766745 130635385 227901276 410636615 505939982 451265744 879492994 909005722 147060535 606135398 631658986 919897353 654410147 565406288 414488092 9036210 323882345 89336890 276742691 682514156 81537611 17895381 408311676 879905034 157559296 871667618 149329027 249474440 352433967 966855282 338847240 801702546 82489255 648383657 390086229 573467782 804949911 255287092 754276108 817522246 157979075 734806201 539431505 906078888 757593386 314639670 148521791 259311362 173900440 149127210 424505886 568030192 613056179 666175250 686630055 756490097 283664191 873634969 40172608 908867328 612704511 296690517 682552042 463603978 290380967 432593287 407885095 359257438 457527073 525630168 16382521 443219580 881856867 556618868 568305366 163310013 320448985 493720504 387273794 20267286 531683399 511876010 449843020 736182021 77609625 71292060 595997420 165377466 21507772 730557073 90411313 939508355 952052346 721203555 651601941 218711261 224371224 53369601 744662166 543095764 851319570 701996009 574840585 99097084 506417911 319647648 248915270 608911558 603785777 667007179 448405822 361378171 532951170 773958532 373119298 777616210 502224664 450992844 499259356 860790931 76775722 412271910 158255505 870425600 100933192 54897513 991464740 783364221 147212741 91623878 576415720 168565910 966389229 145138831 571880264 454873628 81665141 241197829 160295870 572405804 533780195 495796760 395033950 986894962 118385790 856367345 667396307 260095448 389217238 233878506 858328543 19678620 191303983 649427216 9864968 622395712 792472340 240160162 317765114 421520075 558099004 75705804 22219541 678987705 831625107 137619935 595535712 294826158 635321229 113573502 748484891 82799287 335682574 706517429 799951288 78746009 168508177 946316298 186207682 238020699 985460174 930848476 185508333 886865327 862829794 959040817 395192252 886935017 897680584 937453983 44683378 969154163 26831197 609592926 220436586 381676093 226715558 327311879 470736788 236197389 258144945 11547235 277232524 674079234 940935446 791001142 177034183 920182163 459986260 568466240 410752791 251862515 572418457 92311209 132102365 699969818 427816307 733559974 298333542 349686626 912644446 489567647 121261024 888839822 664553046 643059453 687048016 65817617 419459715 580809535 553832720 767825649 17542855 423975182 121268095 280751973 872594168 663042821 976339660 681298452 148030019 698899428 564789669 678689641 681211644 436051164 556591455 219293220 252532252 413772475 972510974 779665080 438367666 879356824 791930278 814814766 315538459 488674812 487894653 130985301 467235183 421822945 787727906 976729860 740018920 101967589 22114358 422683665 755135692 666075639 418908983 640424849 853871431 78099708 660701650 471477712 527436402 441834571 762489998 904995200 649986475 27729615 50141393 404376298 927236573 404528210 336461567 883460007 277363675 433816728 789327553 101972170 357553072 458189455 369867911 227210907 757691165 8482222 993296099 360557219 955256366 233088211 251527838 315436096 435142062 121584386 263556480 371406579 180196991 746198381 366734063 328429417 963144601 835156420 765867419 464753891 166182913 209424641 674150309 115149479 445347872 296905582 693784469 39243573 235897759 678151137 276295478 210792158 747828681 365908058 532227288 309338780 776937885 865147016 526053814 337083560 223999414 516452320 155737894 340701609 371959816 488861190 846427436 698508094 824823431 851809186 8405458 90885023 124463044 353714800 746185322 968601585 332558328 573973793 748472790 741639967 195036534 482797784 830381499 805898148 333046276 852121901 972405353 260494466 679547663 644699008 525816149 189780685 772019397 68693547 544512589 607956678 419318896 372292453 937310955 211407731 140435022 562128109 516485195 508471344 924848210 413773057 430819514 730496278 889225323 855734602 395419200 56148768 759697378 651682398 849289315 810394665 3752237 778242325 754830949 118232256 549331388 234871019 410449878 873083294 50170261 185613446 376708176 591646902 393186667 686785555 444429755 743063952 84940815 887205757 850790668 930553347 781590450 800695912 18402101 151439198 367999363 780249937 518706617 812787077 803695798 427390776 680931981 9367008 595693406 306209098 968319967 23051364 203096021 116366652 636339690 683077366 938897151 397410536 820390758 448913035 145547992 961294444 542875057 877352637 918265588 214562484 349717979 710475286 95526422 25042628 105003900 839663161 536834553 66506587 683895008 722386278 170334690 605615523 21220598 26514957 474289418 507955067 656101937 142832715 103554304 250808076 855628662 593177761 666359280 259564511 146035290 472031857 844989335 171268288 656787903 344009216 818126825 435079516 962007259 930320901 43995669 1306521 770406952 340735616 942649106 880298399 638950423 954539890 178346022 911588804 609807328 892244825 521610742 516243489 692172137 995009767 198512302 674086999 464062235 691300011 753428638 668994388 256207377 608902432 304712344 187430186 898695899 633669096 309661709 378365370 493175028 698351008 959747755 283303653 480740935 213798689 193617426 592129999 926513481 330591403 442234999 507659206 186903646 793197794 69598023 159508479 143680357 779276022 557545042 119427149 734574051 869033200 656614637 424452847 64187723 75254617 574118398 251959076 296391706 21930397 295693961 944500981 366085724 966955623 444190973 4044816 39074399 65013594 919360529 683351242 578738548 403221568 720869966 70459698 662772823 726173166 321362175 35826287 885774898 43339035 993646069 366577994 413015699 560234326 861650909 907898684 257443283 278257795 658134065 581203285 114739219 783457846 551328489 699201754 233107437 697229437 980129054 177778141 272476453 52578503 881786206 675405205 695837758 505393563 591495207 215443596 868004548 249560369 715738657 568103424 769558579 196844104 490546019 196771188 899414281 84222744 675201659 584226614 912323700 154708778 641085719 962415858 796997064 573545074 358500445 581754924 144135473 384285299 93176197 442484775 919377762 793264915 45005413 777585720 869032333 170558168 719382887 83173438 57064220 538356483 980095211 47491507 472864742 158650202 406273874 298314501 278062532 227133860 359448488 360384159 894934661 935983705 349997552 695656516 527345806 23856183 698393631 871373990 758137778 364298571 173192317 141701160 685082367 257450454 968786167 729316603 340801863 425468485 603280249 681835766 297891723 914950165 216055367 774403056 348400083 497830408 341912991 555564908 974717298 327885653 561030925 456569280 652500497 449637450 661626810 388084581 927051475 313176529 848971143 515318647 984002412 318299195 344025455 762945353 543375461 23852524 761804894 537212633 801096319 539968833 26009641 820583069 208047383 573663006 841517365 994754417 182204953 25342159 819462667 350284662 17674454 115559114 762162393 745709151 932478879 207882099 75556078 672216730 400292631 688263919 381133789 834794471 557739647 697357695 376992791 219678218 846846133 779783605 548746325 315192293 35808826 90210958 406344466 345165095 984377237 828912179 300391774 861030489 519270696 897034604 514210840 493348971 424724607 130669251 597333382 627841970 681339215 306691694 946335314 95500129 790520625 111478423 550488789 262196829 968639693 94912544 842050822 156075175 368022116 323065316 438393564 972769677 840781914 633265374 969068647 374905455 733245298 980616868 824713157 777077625 213252405 837736767 154456516 132982871 262360361 720327386 995320124 893791158 718745689 475281372 694108619 785017579 724787445 624821476 475593894 325194018 363405268 103314195 253624814 391198723 181291418 134293788 367876107 45055458 161543831 753620859 639247185 610640786 687698322 901343848 80250198 334166842 566011193 926480986 970597153 161221727 338812374 627021155 336448980 535906956 456089863 919618147 701571029 269773294 896561366 909468195 403426994 318059432 53493079 918982954 204817886 327242842 463492321 151568827 841906055 464507076 666243841 366296465 961939968 759568961 519240449 107068741 281158464 164218099 861328506 697347750 144307404 796508521 784629091 95292883 772887916 579246549 142310442 400432586 488215579 258621982 266604849 700191118 584310423 272587715 666756237 819171935 603473495 370107775 846331642 734070330 392169561 877077176 280351028 861043060 858674623 452731507 53524061 613654640 60204780 83136686 434983796 183699919 100802795 109748855 12884061 563580804 138465266 953206295 783509539 932604996 780270177 165279144 547366164 662519540 309284994 793696648 821512447 940317933 81679368 396368505 536015893 606614462 848569315 898341212 882619965 238313806 634287813 440527277 476455121 597008955 871575499 613684108 130323787 469411154 887817402 926740310 745475657 517943576 326676942 254475977 40318902 466625691 360136119 118770093 287088061 293585834 293945892 986476122 968964002 523936156 694609346 139443906 635082161 418549999 380525000 139353894 18191113 272051098 743469206 578606036 610417152 160638961 708325343 597072953 627588182 740534316 346902431 684074715 138096882 183308314 464976331 701202315 961280412 331146963 62272201 478910293 162458527 913719928 394037365 143801829 275394405 700017359 810172919 574292965 122415799 180074341 697951699 87611037 599089703 217330549 223219654 356104363 663587430 273885640 877532679 462846674 14462838 229596134 797327336 685174275 736910833 813615433 149642006 384423035 645794440 340182009 15528292 289873889 973076277 659024940 742358114 87793549 649071165 38440602 734081664 121475268 607077592 262139354 483367963 442989932 220962334 544822122 932261490 80363933 531499996 182219368 794437393 18225380 389367288 37540257 811514715 316159874 102321208 991217052 448027167 262191704 175605405 857795690 877744687 687022632 539790195 203653520 934329261 459694880 725906878 952833026 827713272 387195034 684863422 220636684 201591079 538039609 307621780 210975832 330106169 557579614 135357001 83658206 100075828 14590323 726478158 286243699 765977809 444007896 557013988 146490975 974267899 822167253 424334859 631414154 291226287 30806520 150136102 737714256 223369537 988361197 636908631 518545173 924331389 945084840 297781732 206683531 696555238 266228340 742005780 180157012 247333890 740458256 428638550 90404452 93004334 764583106 321057740 979806238 643209463 260095476 962840628 563191200 190139026 949110410 594233452 497114248 675737268 759580820 441246006 642488786 533380922 831619361 53009681 513454930 36053718 307387444 795911741 963728232 991524340 250617374 251507893 278064109 842881482 97350456 765787869 643502513 186018666 325708061 911198939 648648560 693879595 984104523 634149127 267600959 795719344 362460539 584240722 420720879 868413725 663072788 602829534 846207328 151636326 582384340 221474563 556976955 871163531 830297093 324895469 826584722 409812661 817537181 721428696 807596283 567898443 764877858 74346828 239230137 886064687 872252261 31112864 382368941 811418346 743951417 167016404 385236443 59788533 727460384 305348152 127026303 717720196 436684767 804984454 341756781 597386782 701061680 576552341 379127537 508485235 235979361 695882343 117585667 685539349 292309938 930788643 649515778 161598567 810356878 420934439 977141254 516306236 42126775 978281310 499408017 93160493 478600062 444134734 30109721 607974138 446623264 984730520 63930239 496445863 950524662 955270869 216305986 770719876 300470077 844791473 969089141 157247181 779885122 614762615 13263452 231440533 177851906 426171337 136389631 563734588 922459478 940761840 80645707 514054444 907592720 530175818 54691668 185861549 43960936 133500040 965197627 15341225 142930699 710142849 800596867 527483052 715674238 16115859 74817108 287251054 658133847 838914386 740458614 260069774 696567654 401360741 870701269 731308141 732576455 138052593 241397697 335631636 383644511 114141191 9105302 732682911 833949921 90694540 934292725 360682221 945576737 494026667 483026893 781500347 700612246 323442239 36220160 232905018 507167691 93833229 993074804 514609457 323365619 554218942 439627890 7791193 81957947 805158282 468802467 425331113 120891452 397542959 966466957 412004267 346792397 838272881 569061175 345226645 736035613 214331961 722904683 757897489 192919333 29390941 293351031 485438751 294539829 240435950 784893610 111350780 627309299 353209789 615133954 157733169 877593244 662619844 99431226 378101906 860989780 87470684 586870865 724309959 987287800 854795273 370817256 781406808 460305967 312243539 910426139 6905554 574453980 533206218 756188537 521794191 512689859 161208052 150735182 899191401 485070759 22932087 184665574 535177977 266296422 56991096 447472166 405645683 465320715 175257058 854828508 603308362 856024541 222364512 183133695 152298746 238418597 109334769 587063267 118673015 321093853 46629132 595365970 276444776 861192934 635840222 68579210 536367039 147638132 256060222 431239552 900714069 573620967 288320920 180341399 187963877 49799656 407312497 196320417 822864186 894447765 464709873 298516296 783452913 281936150 503252976 708644391 128842524 797941968 936744822 706049050 144725928 414849556 590661129 200174736 76450897 665789918 160098664 780148170 967182598 638203903 434066232 293279510 181454636 270051130 229742954 175695754 624758700 99968389 307048600 959813522 74829438 488272974 175511547 337933575 673456738 648133181 318367052 144365543 729401439 641349526 30666569 864542756 571663603 179223083 841972373 814606371 496704505 944869872 672161713 529506022 581057027 274618946 288286892 893716633 228481842 968406857 527710845 293132726 96162580 241754813 572314187 271823280 145173016 359291263 492605536 772968511 296907363 161855643 856406096 228126833 757017602 94511766 790800284 110059541 137932586 467086321 278366756 375323084 468708088 177516002 613883263 251205784 320923580 374756979 359275141 109445811 601866239 725705536 145979713 202872157 5356440 419831333 829538143 906216236 249225818 573686517 617706576 409759069 756040334 650294400 673050977 995224315 132384068 526673440 861992304 593718454 725763542 515576044 233438028 333729929 994840934 869096961 859924088 557472232 744415676 149335421 447369791 772917108 749120833 952422651 50000005 12998390 299392673 927132274 39694771 240582233 598671407 666181912 871932284 978860105 489857508 624627002 497823408 773615259 432350623 78107275 300403307 93551829 702013808 130717958 255276904 415880516 959347855 301999953 870798524 545757539 982516413 474319982 67774079 623624741 633550901 443124402 865803914 902936916 7767283 669163811 188975359 137783559 706800518 851342225 547686436 279753313 700410696 880269393 470168717 322832523 104730208 874156438 721016885 78988949 151039355 440653490 220763948 394408883 961969340 364212727 454720332 175133459 276215673 927794322 310176707 163475900 853716543 180817520 349638079 238075540 386016779 696681556 497449396 881974798 580377831 931828313 837374804 110647371 761515579 778676881 31888200 641516437 908932355 195327054 326556010 130342435 52430670 71958690 173856025 530321664 578639449 703962571 815019966 961939272 244289301 706667822 945402035 596538454 822466154 682851836 175634655 624786906 511606837 905184147 827910722 147708309 190904701 503717435 233114950 782809677 340479399 649163061 957028302 706245895 538455664 265209978 931669917 709869350 368430682 831276932 273734940 322755004 532606645 625117987 93891881 937766519 235289378 214935267 217881816 859419187 93251091 484734351 250797081 86353303 780558501 121786637 971673417 914497340 820210702 517875049 221657092 460471760 661807047 428434176 383971128 3352617 140673028 274938850 345902569 313669400 751644700 122280644 842269570 306557718 356500304 652581885 437992377 655888610 598238281 31006388 678229230 98751768 441346778 664345248 442798541 783954172 708296089 86990780 498759609 236980433 124806225 859413469 144071804 643329890 281151268 551039187 971524017 411665305 332139181 867727918 587555070 896440934 472859778 191618763 461139761 656364133 826050458 973623507 650925488 925554442 371719726 925033974 591099134 183974520 328909819 166737313 818785916 310278301 805187654 273192481 17026668 518918834 632450035 901480673 771824530 679125652 832772804 758700196 613550348 707752139 804210839 722234391 782796965 962478520 280689352 733594085 209600095 27682101 760630577 186664390 320974081 64462844 733515658 200988145 340936601 757522306 424292736 502702162 840295985 114574315 776304806 305614241 607842870 100072211 315976266 13188239 906681826 764017933 144523003 903634340 597853896 540945509 486355055 821021883 570299691 279441764 40271820 451158382 177962494 158139740 763553450 466548388 459363180 211855854 453836932 206318813 504086433 550170673 968830988 800875580 279061939 496196177 279358187 341297300 467471228 903956970 273401527 158657808 248592007 822731597 717661134 938173468 759241574 505425697 575436610 903582843 281484332 884630855 86968747 74637968 678599750 213093251 409685836 61909240 56374902 990929821 23910498 229871052 600267099 450808980 67542226 228778390 682633103 206559346 815613033 705491946 801929767 239175147 187608974 311975373 383172931 110603143 568395461 48733995 445352844 392231335 421592050 695303483 679240713 627152636 719891017 832533814 402669800 83446263 244335500 540159718 413489043 103310235 508303883 945395741 557615192 763118361 633507637 104850315 858450167 873114899 402172875 971039793 876332495 763732295 796862962 944864371 242613817 945826411 498479482 838182169 299037766 325517118 357411743 366254886 52797945 114795775 956582099 219104770 168145745 929559691 430014505 278139156 83241745 350890883 78231371 493698371 199759141 304754301 230728968 507178732 879212432 2505772 295725003 375194570 10780309 402296982 954607319 701947715 34233655 916899256 697467709 124028102 65762523 380632860 477223747 665758029 674664264 17277508 114400073 576325924 412502333 901508875 262768528 68978783 529363902 936041881 633590806 962011896 143440336 226216679 70444073 571916122 146408403 944849623 338741540 585997928 547710470 831026229 225490597 400579032 542234030 725948304 191155734 733595778 149772004 217766902 852146427 620915229 919519761 392112973 501098793 556589692 390128583 463423133 745956654 454181997 784210188 877054349 216207190 604995426 283074481 972430033 57060627 731023696 454872222 832901493 332593854 861003763 600945195 893038302 25103577 165528716 531356621 598713714 515236168 286758008 361421559 702437679 496113779 142193362 921068053 221301048 975699276 890573882 540247571 117849570 40857222 219722957 898075242 136164882 384735876 60573791 728085241 525397270 590334258 259255298 48307834 202846270 819568100 506118733 104754953 883100883 140606256 897397084 311437912 121198336 31717097 782560767 703653054 482828100 894577869 931318752 489871537 207676397 986737154 728694732 688602250 74579089 133237822 210680914 129169336 195768111 969565937 288360533 615817331 154521629 198369742 289275709 854403585 394232193 610615163 541211182 647917607 709832903 781664535 149630010 247582242 39606316 884516309 685034758 929295595 754939706 268184257 842602060 628092823 728107113 751330410 67990788 971222495 583692935 536314839 519990644 319505147 526474150 275732156 374537213 636395399 951168297 412741096 57727024 364307330 270028048 33078553 29663732 888875237 32922048 53908034 977617762 704683757 265329891 357288190 672770641 507156449 8113612 483999587 566631814 568019035 3243181 853851080 641060628 959920534 846062069 843973656 298637982 307136692 988450575 647103871 812775053 460462831 421269111 352234099 983167835 999929078 591485751 30320049 465883906 598069418 281087681 281948819 192088113 609063938 331149165 280138230 386584987 597936711 322919453 660793728 96087451 744216914 375634947 848506079 8232635 137761151 909172344 493155416 934324027 856004681 43532939 246275208 206951243 623553375 249534709 354907542 870500629 633199658 521548293 120170526 443608581 941139787 678093473 442820133 539113314 874707626 202358280 573490793 392365855 216251116 21448772 320140603 226812380 839963670 353594886 443844803 412535241 35911462 907565623 232060650 786158599 81523029 209117245 77016500 111356632 929245321 191954553 647827026 241434468 386383116 609022066 88399430 461966234 429960915 832548074 553767548 933755923 572934991 960594101 263389439 259321215 867620578 411942263 43107838 113804172 463400431 550689356 68074871 332860078 240499185 431474554 601932680 675131097 228314471 445348093 360119806 586809773 227585773 542785832 133673706 55754050 749779676 856194379 416590438 642993090 34681818 368245831 868149794 216238534 877201543 101073743 418538903 108690857 814425604 144947897 426805720 588903606 92677475 541758323 367548894 602824628 596422619 624576797 916986841 352191799 863425478 103515756 25006722 910673540 692564897 247504805 608207361 81381034 978734355 708093685 254442078 973308952 785924451 81010738 938252944 447712108 743652890 33255743 625500349 274968491 362597055 660385560 179210466 725391036 766139373 71517325 410998702 990119967 894341849 420678828 736661334 511688915 163548569 814056431 102313936 416984537 840608809 616631121 133243911 538870583 62466137 635129700 427731406 498361314 675396507 582543233 112167458 537344435 706909866 361656169 593863347 952967794 438616772 909344327 373575728 975186969 796860827 283522283 635604042 954944172 107534265 337663784 768158739 644257789 263835223 402505230 48450900 590708895 387337677 773701447 527475966 141431960 528652398 642396419 52673585 926303718 438851393 364283464 515400589 536272798 468470000 969809191 87174790 717624052 458386982 393744612 582990208 944156331 171620530 147177025 824598738 27993196 884357251 446904701 99288277 211793849 979076207 158278629 923704314 307230523 660893120 611782390 484460557 395227163 206229446 403020708 683328716 925281564 554749231 698256814 954205400 351239571 496370739 429034577 506329536 506408943 656108049 91169470 106462382 341874346 486883344 818297631 176947971 15269570 916945854 950506142 158992900 124576691 315512897 497824539 28770242 52829653 804793268 120710085 161682430 199775304 582294029 165034814 271977117 179475751 902166434 410971923 79765311 573989772 206184344 107049358 865272722 382966785 800947272 353654219 954867812 745836105 837567600 16512864 820366298 455465112 639940064 652767558 317283397 729781596 46085743 668104725 887224275 883210361 592762234 706064129 519408596 60334517 526660101 993905292 232282465 258414895 16531895 283744141 97465976 87491709 711927211 704570255 836136230 939159377 791559754 837952616 852880091 75583470 327042270 355836954 24085053 292616051 737846524 992091130 943619958 542531532 426959173 660507252 427007195 842419401 581842589 581983539 914163215 441287473 409074151 88801879 48493732 504260856 619435738 395507014 861921959 861334212 916954716 802917654 370866481 933038685 223852107 389970734 247691048 657345823 629079044 856546486 922460071 859288115 743610418 477888701 321968035 295269029 109700793 534471602 9932142 4195348 200303476 566485182 647570119 336074797 85873023 134846775 944252264 78313616 116881340 675418330 339113047 422728684 239150234 591185530 451754707 407326428 242046576 742702641 308728737 472784593 364653201 596124928 186892165 871710100 741872017 793461625 444659503 392459274 572918502 41361305 748162881 313982467 477059641 151756453 424452590 985322305 344798348 183784906 165590087 816437623 367145562 727533972 392233625 482132925 350020919 691418994 147579697 797065879 511045284 105781757 820005937 527072652 468539021 979763669 498888321 244814539 315984676 950968581 603619442 383816097 498081772 565228198 599070881 433460810 149289683 739105139 692289884 411591872 574292087 33608374 325981891 99908163 821653848 166199681 86711167 501334931 445667604 875919835 907532057 181779787 874464227 859665745 891960781 609037376 911085288 857047205 108724223 763124440 506257014 227163104 829769206 846368939 622201339 114340631 6521696 806236423 260038050 425492408 390182044 765006050 532078497 449321708 934488240 956152862 294460726 136125175 575307030 697608873 795308585 227583677 219373089 126712838 731364565 47945855 312373879 363448344 205430237 340469799 242096279 655845938 696325053 622809237 466753534 621113236 888794371 255544297 729016486 325468052 170763860 802147513 618721911 267873669 616950119 900345480 525863482 897631052 502958023 552215265 624199321 285279771 111465519 117208138 906989035 49502195 626557363 861524596 943909437 952112482 832211744 736971431 137576944 355172915 900386801 984442998 747204870 656650647 478164020 139128176 981701300 800715411 227885497 794022098 780884912 342019284 944591404 854815125 236425332 989137003 663883044 187653390 13612295 648724064 601121931 560888326 802994820 374777085 974376202 312395384 315457856 761884059 525396311 31945281 98457364 134726381 146886866 720266644 596608567 894733799 46150465 100825731 795483093 691365186 149767793 521947622 826664354 451920300 211014210 381708110 142059070 43699135 87416421 928154630 952018086 950173604 241327502 657896635 123845360 515317298 221408103 177596464 128284085 174652872 579523913 820333249 10733087 683235552 377359485 362760260 738618479 608717980 589390710 718873296 867255064 433101764 406201087 169526251 338651106 579690445 983482148 500328960 920941813 173956606 32643472 276367424 609821751 56544737 658588409 850660488 331622267 584194324 999354836 770761103 434379959 722552443 425473301 958264225 350998511 161603501 764897143 353089541 88822882 112129855 459720267 974637907 100861758 164384486 427445595 359889184 729610101 925419748 489065746 766656942 321108352 679757976 33727371 962320673 525302840 111455301 256190476 766035627 806642581 455538979 973193295 913340626 895757844 950347783 533887270 754573955 491569975 10130586 311506527 441407257 885589239 737715246 731620167 4251238 357007424 226834034 674349308 236909783 831184535 132883166 360977907 842476294 821870934 461704197 64721766 630792956 784485081 766419522 94681724 858259461 447140899 452390609 849249198 15071396 489675348 678224363 221991617 692055661 607561814 878719940 264192673 63575077 596873487 750015408 832953217 868619924 810377863 430625493 29099839 740203972 324320027 298705332 900985369 772552850 251103330 418550334 600551398 103787533 115228958 66264821 985080939 647417171 747834995 848208951 414154349 242417989 32048171 342843255 18573908 579203461 966908847 45149662 907963563 527347171 439752426 217173273 876500589 451626528 156207389 843051292 848741568 175689516 490586804 603801130 652635588 264283647 278785709 136729974 940876745 660159401 574018345 164776967 77141773 733670455 764300828 808398061 810576326 115855444 7552476 908812251 143679846 377420961 476657765 586939442 124324299 107117776 655294484 700636681 454417527 689668992 390614558 41074686 962156071 1333265 75173843 9936970 836173537 295870787 725832764 117359724 381361513 340983591 204937578 212925933 185272971 410349856 129986082 171878383 921852494 768243079 145875482 505783600 257176215 299410221 731880582 766917176 553812584 458941983 532055693 447727812 987607334 366547297 463691816 31095790 587243026 29391274 349351339 667193870 890889845 874233137 564541525 552022134 239289636 44760946 663020213 781239833 193717181 763644029 471454811 612771093 25938053 552548859 695352481 477308868 952838607 770681582 226360302 548857912 542047910 404450032 246469839 558903792 998846451 827130242 247207795 266693939 17660346 174461978 445232487 727366060 521170191 960683708 454814202 284202626 28631005 24640980 248837314 426620543 840113491 113035968 74452590 272201432 113023524 172822247 816821260 865975600 778955415 72706934 822269163 156287421 631260207 437473585 622353700 174348285 168145228 694973713 41774252 467765923 818225932 706150043 962613001 207042288 79446282 738686295 567394959 863538917 260627715 273566568 846549501 494462149 168331852 446675218 114829311 663915234 602113192 983092709 21070611 48756921 95636579 476136288 754394416 978439534 358690748 572667195 138911645 856538570 442558222 443286649 727751617 194300630 991684798 169643385 857763610 457839208 875931611 164867627 28414644 503334563 361332016 915498370 742853549 209946549 906385374 73900852 568962753 681621812 15925958 112344409 491872542 675163966 367683110 278013608 935625248 891091972 267917238 1077687 693796534 402417739 333703396 27926894 671524480 394670552 475402381 217465630 949095946 743741620 185791710 532787174 912182272 386161169 748116187 737608940 37433257 945271543 339021133 108707992 865880286 840845213 958739065 395116174 341387310 739565958 90108074 568489408 961673011 147707070 1537925 148074553 596362309 615009804 477717377 628745580 433450099 445350605 98411531 869362609 47355689 451182156 753332222 333776648 447370006 711156269 866931506 738993721 159713967 768484430 851355322 38667745 686293122 541351085 163948514 122300340 787314922 183743796 130586328 705628767 942153445 870090507 448458435 728792018 710375860 640867822 256994047 304181100 374102181 21346885 177214634 347938002 203091155 331582176 460566510 154351744 782345598 597494646 663879392 896749151 227907266 904302509 802147660 696686673 409091939 76254260 87263289 18580339 478600566 220242253 27367151 122962896 715749107 18930921 703474124 185409525 515262071 248996211 314485562 168302198 247137558 972635639 262304952 330465661 39619539 318018078 360396935 674732882 477683201 969588928 128848970 656391952 227652632 65675613 394034680 708859562 506648161 953916240 665980261 178534767 684000067 729380559 469427898 458702669 143191463 746443208 113167956 131949094 974082082 885817716 421003511 32503704 459802313 773664467 89829262 956561794 677685680 176802503 880471614 899790798 74275976 808824289 159351622 235431871 120532741 511469269 359850305 113311298 629078339 223900288 577797100 958213099 650091945 857047119 44610717 346911993 780217273 487554539 578390684 856391851 640485916 72576154 811420763 905108833 148989585 115810843 805961105 570528289 598527818 170565276 497366624 653805577 871814073 514865448 432556827 55950840 900469698 366450423 470553601 217098124 901726490 865192123 700816620 299175269 655374819 759135510 987013041 875756846 535499656 742384756 519299894 166483862 36802718 728517054 652189367 357874481 605470901 847861809 694137892 723531986 775480591 68443029 573686410 954261936 858967749 149757813 758670383 247774980 806725869 886626494 15002433 56405885 18285176 907018460 255458046 842083122 944290418 795646973 410698615 765209833 360161849 498029414 451465845 846932880 272545981 695564236 327858130 454930635 87998386 898717505 132261559 528610984 896042903 134876674 674214555 192486612 250757418 508176067 385851098 588811625 345598408 755391205 998497461 307628259 468404709 476283793 771882019 12788474 334109693 684409352 302863383 114711470 780548217 28272211 402494703 797604100 81794946 598820602 880623808 426796321 485096329 621924392 11205119 669109232 976919643 849033417 753179217 478121256 947169024 206864836 812917155 485022851 40165795 117529128 505799990 753157055 717798488 446315112 252047244 297254957 638313020 608952693 695118820 992756855 614020472 412227877 555212125 649555144 216151800 67032740 325801735 598577418 490549669 653046774 19791607 593079293 913216609 325039746 2731573 824495057 651636981 985301816 938747373 285857666 568687981 299607908 872705297 237668545 393836882 321854742 493868167 43357326 901073577 490623338 163941612 563849989 137175865 827334727 845894070 101291149 268315722 398330662 350917455 607541560 443533819 275406851 204916547 735594640 516782209 266333326 688416107 499720538 579206106 722441176 563473378 832225215 798702718 469382264 935047655 21455104 824014986 701723130 605052567 927790247 284687703 817811209 152014450 128742278 384726414 470592783 580687053 123791621 457702451 903312313 937117198 700625647 540004876 111348029 742084519 42619492 364759022 716302998 976671747 382321388 275564844 156762583 37760117 621602252 951387150 112254422 785588940 521540996 91259989 435530481 956886709 981788360 774986773 735697088 805490398 195886268 974951363 388063894 614187666 807162269 950707264 830923413 943161996 611643040 821721895 785233810 605897543 658316177 472909485 443103521 120939397 210553803 670732959 243198109 255219253 426592345 868352802 969382471 933525902 288800439 629143950 357343044 904351235 251256112 333070839 602133279 137318166 637991661 980072544 569930604 674984533 933083326 553192051 188551666 130708524 337445354 476180371 405976708 592174100 406560547 445163302 895831439 467042194 450316720 94475477 547956532 611317265 956224536 92568923 212838169 805042541 647827077 406358478 855519047 160234366 38293753 300268712 665335774 583169775 24443677 771238099 325394017 778623687 967736900 202325122 113456246 611524368 228122045 586613915 878536768 643222073 110275222 579865251 52232395 356788815 288226805 966928570 714000096 51910883 466505511 653600881 498644373 760969104 835439554 854606894 26211979 801438434 644921679 554470887 302733132 957949363 558525581 658629185 379577861 989760418 757018106 464150876 205650006 277777847 882907712 724305108 121122973 378831595 95996625 397081927 464040831 617030866 940828372 173251347 831422089 925490676 237417881 206081541 294532386 59806099 192934645 558703221 721972812 53099309 383922900 79611216 146890127 204095705 428865887 919624693 925740826 682553023 342118616 93220532 880875921 333740723 719960506 983751214 698840097 459081579 96604206 822461848 834455393 305652667 334679827 433347313 878604071 68615838 272171693 667595410 456203592 962243110 693288270 904162156 37018322 26905908 151204602 549755992 43470188 420430387 149198928 168692463 777547078 992904430 984759228 343413695 130285095 845907129 363286376 962903603 641239347 585148287 723224086 734762919 157307930 222354733 833827588 547910798 335218407 170072372 287859490 931891727 749127903 696755619 345832985 278527202 152919360 668578985 588091145 323405171 56578264 105608216 268929398 119323890 651749203 30416668 136039925 764890751 697635955 639959819 616516270 844743894 104866529 908828816 916745409 679550366 386096258 494609591 357665941 416081867 675037580 725104100 338737492 681751621 67944244 718419926 994840485 695848417 991825558 383852927 136311349 533302474 781306440 175303361 203322636 440395819 984949132 206527173 151642993 722247607 340872505 135123918 130573949 458410908 528488659 681086867 14802581 668778208 766758225 382063265 839884237 606612699 739881663 470042747 299904241 188776596 583971311 423571415 837225835 53633160 807898893 11047558 278335211 755573124 484430687 219777747 434140923 626792744 415156382 954744891 244464699 312202800 723551857 177752384 493077955 958370568 731166835 966720017 379183825 482042301 123223329 407632991 502826118 841764303 551265562 538415513 499790205 824950266 361995741 87805799 269167552 181730805 741234315 235534482 604562897 233630176 905829541 616606552 658640198 77073570 96509464 155798194 945267918 563590217 637661037 503417005 299732082 601785000 369873692 519399468 230382 792541317 45919722 415017843 61236036 515447541 332080888 85610227 709582290 72717452 791488574 978269193 34481911 543542533 799263816 803821236 128701754 629173403 734588215 397457323 475215602 936303176 908375889 941063343 660512197 377874886 511925813 718692582 46465994 514053521 324007110 837123798 703867418 519404104 467931469 489669666 43249052 37131215 98904511 631049359 772758446 846576245 782865722 157600590 651433527 610198301 537441174 890003868 69274827 502815041 338904850 601618246 45794243 574596523 359694594 73116915 978493984 462842124 414659350 820156329 173917506 6095603 563351793 180142801 533754530 100387876 789244750 641873142 90963942 262451302 416943921 445342936 804167399 150636813 321401497 826851093 165912595 988011800 481133849 251767203 690009704 249414834 840786984 371836880 545413610 888493742 581805626 204228736 535251130 808344324 55419727 261589680 552276248 60926113 780414294 288828553 534036443 982791819 825519457 393764698 61941441 546942085 336567711 323391708 566629390 621571471 270225333 443713521 538789877 247146679 422818593 797404450 235379552 319614688 48374717 604247598 598556055 654681363 557463054 618817156 795104143 273128935 690367813 953518284 99432329 24001961 801994038 535677136 223695311 54321699 472431163 67147789 970031423 456181168 391620857 116745749 804030537 84366199 127452310 983045878 14366887 952215706 219290817 538905725 619048005 31930991 515234450 953176934 868399322 141116558 272087693 994205755 667944124 371252960 91813793 809686379 241845812 429417731 452994272 373956349 30620738 574608561 978258967 865244904 260955609 612166496 659196669 360163509 363241550 36388324 806151084 873130228 46949852 750564163 431042386 604435125 905293049 731302357 311867285 484542755 233741496 519426849 654352295 957931072 295338010 656164109 560971661 997462061 425166684 434381051 238600602 165455570 298100011 551679314 818015638 229979142 768518496 157022258 318280584 928883870 746006075 676840176 674596686 694159063 385166755 523436973 923274136 398844568 680680374 702648422 882722800 885667108 87424242 453312395 6447063 690617209 473203142 194825517 741057476 987619436 417629510 806957133 286356503 272003179 978878503 627164042 692034485 71102529 780768647 397958845 513495997 345080895 159263082 46599551 225025415 730821882 796158623 294377743 427258604 51267389 397079068 831232269 217063182 682156920 652034763 40932421 98290535 283919395 27542162 492868396 91116791 228378640 207294141 510341809 968954946 68773668 129940725 572345822 352846913 628131720 299696424 2438979 430021913 744095517 27039708 741724524 612901374 955639812 356602032 139708145 496811458 872173982 121577425 153999612 747725940 140869983 852677137 262239823 108693479 785492180 149713614 805498653 369995630 890426658 198638860 486925494 909756345 638287150 730991634 253014670 432812446 768135349 805394331 572867077 354087365 182409889 564293798 311454743 786614189 653163647 635237420 563186328 115367875 125544001 111430188 794039592 944280827 870553700 926137856 296838863 573768050 970740741 997895375 889270005 423829312 856505232 435128264 914034013 868387260 250649032 447017003 37702654 153174090 776859809 429419383 616202746 202292418 926093465 160798125 745343390 571556778 71974598 643261531 247746968 812598180 627418070 887811011 427157273 810832991 607237707 315799864 395333566 964522943 36447464 894170014 219390717 305327791 457430008 433585715 316607555 953283921 729877953 202572149 475404787 17222522 797499272 361461696 632223991 268314447 816943051 859450652 802746297 717854609 636911962 201988038 349092370 429093558 147272219 768667192 257552906 812033885 669496255 181718019 479063764 813663125 888807513 717922499 507534330 879192220 42370588 407871959 722658081 756408892 700278190 737573855 690481115 307400176 400868628 840090770 821748855 745321556 932505908 252258724 432382219 634256334 909358074 646285617 842979308 863820673 392461302 857366250 921750006 390834327 981072586 572826457 708344868 254587508 12986279 188137646 599541480 78202196 773440267 551906449 71756741 206770401 408797389 285501220 143966561 827171012 67888629 56672421 580154730 625334266 110270396 373318918 644838132 45286527 541364858 992766229 957003241 230861384 120270883 232975522 811600148 830125206 125088993 284256384 287812615 432113676 243165001 648379094 873638680 500567132 451187108 100539073 309480476 376342523 599063823 765725940 619033094 543853264 687838081 187473949 166815882 982268157 73916791 217096593 218937462 307318345 124438216 101816817 32542375 126593580 62258566 88316730 260959052 180951952 908980944 223591345 611942385 572898813 509512723 387016726 472424714 915186079 970319166 843904156 20162707 196214043 55462207 403676146 885669455 770169721 783087671 249062612 214409349 480578390 104311616 911181291 678641893 349070260 314399125 349928297 931517084 263871590 134279217 207488365 47225680 692088914 770227557 495121406 810922061 394240686 117805112 59088370 355892132 563857775 136171043 155590546 95456394 528306412 795883287 821369514 418686564 261339578 21523967 913253338 59868948 920470691 515795776 253080363 840972401 630742169 725263801 937132449 786100334 201026827 435154547 356831575 91961084 600781117 353051517 337575052 619173355 618541177 535204934 696659898 489966278 353790987 344189560 722045971 482555785 43224048 196748106 248006763 642797924 876503591 588458424 370031431 556946711 577431064 484945583 680941354 880615952 842399701 380160783 733513685 231925265 958098869 433150234 947570176 410720738 671497355 142594840 538689375 188916317 657235665 251028830 342973855 604187226 845655737 659502084 906397275 900000250 405329604 486861482 847133699 429594062 53208471 590159099 211929586 464072016 127150652 858923927 90120650 341699531 390193944 83664284 927163845 52551266 41141945 616308911 74980306 322717078 872387647 215164922 319853641 291346814 656898144 432731435 18754015 861535387 547679161 817221697 882239890 811692510 874931583 93183453 152164016 291060987 254155096 217925721 851052138 815515750 242011090 512426017 26619511 704906421 570390052 208979671 145016328 892043617 626557373 27087529 722772147 578696682 515816282 590261236 406597150 324136994 887662722 461876006 619218188 221693311 92918543 779265827 720588802 419196051 817885292 590933707 506490843 777691651 953397805 580238543 299617350 288271479 92180171 59146693 658801951 812414341 737563785 901636733 320591025 770792998 615714446 454630329 363519541 78578614 221348750 636466504 587013683 344128833 767709758 675774643 194361101 864444848 598681445 814933339 306209132 120085933 36283068 339450241 462949842 549801381 674280314 435672991 341049804 362996930 547852361 729138556 929038160 216949526 8234920 630987197 694508942 297418446 483393766 530352613 675800718 444790969 12563300 344319420 481432472 147650354 792221409 793491002 478974426 850436029 907037138 86356911 9229683 863988622 187894404 330608091 587482122 646736576 135902697 981871585 70213943 330733055 986949607 704620858 381890642 243062551 331589225 763354469 813910667 781508109 985071698 548289633 633668749 644618169 644396926 856385818 71437971 404616879 662084109 268866343 523920071 577498087 908498292 927819377 542390222 190532055 311751951 64100077 922530529 997495194 947893230 759736229 84852767 595250082 432296991 274238825 861534883 893472565 778834382 280661095 780687124 293179971 66217006 756807861 921764163 108222280 960450004 560414924 940534667 995582006 227529360 867290965 16289130 639970981 357743328 371450996 715022799 695449300 781791848 243048699 77984189 620624406 923268056 770605279 22097360 837622545 406793653 9266507 365124128 631879746 420017549 844195068 10249632 913513617 280554617 814644259 615919570 535719740 276931953 870346100 864872309 733198782 513677858 552733852 528142125 595151670 61288751 335422625 699569539 15112298 482820940 965008791 566562960 217021690 703550974 849448328 87939154 347365084 381626880 183989794 54583132 914971917 758298282 194530507 951230994 49733773 181867322 611847717 106532516 193928608 679824207 690073318 210665011 280384583 714437857 82699223 31433273 189038017 27018158 52191167 164329650 722083699 213684989 587692309 531745463 104001972 311501951 741008275 986873924 949392998 610858907 343401837 164472389 41249028 610585733 666860372 899055542 3457320 235899355 910384814 30576961 786078370 763244154 360596110 241180472 225659515 944623597 167692128 821965017 396877996 896134719 146545749 599361878 796511258 719977810 563887740 644689284 68897264 833766285 842960077 738928095 505926558 947789598 326943082 43907995 574419926 428008428 471881008 883292535 604709827 242006143 731260982 680363471 155141231 767462575 461958649 832607995 189727086 59297364 920094043 579996775 119487637 130771093 836107467 76202852 719569508 640306470 857527730 776889008 372294516 348351000 753560390 8912833 720620782 193939316 386812909 673513427 511755789 486152867 38907868 599809812 323846309 799673553 28801638 505189130 264478831 625378977 531383710 407429848 129940205 113384731 803775407 458863867 979717883 815885767 994246739 77794654 990812559 80392795 436462202 754974996 27380912 262818130 305114471 806911564 46224791 963220896 257412789 135365943 926216021 343054547 847004535 316609774 710738153 521112813 528371034 318680826 659793414 463685965 982940017 730189353 848066681 343512089 921571817 896204615 132676884 755838243 352918992 276419503 957322816 115484639 396322052 792399506 200519551 500091640 63031028 785401501 987175526 275855387 897826259 799927690 421503099 595380429 191820589 630757828 522290898 730929536 319546482 436110037 169326996 635261385 420419919 451524276 716412613 343660681 792732407 911078831 824220949 647976401 23135856 319092474 772343341 936863538 788423501 494664646 837294842 265488787 737336528 819857119 92191657 783774418 553470981 699004891 572836508 229673120 172401395 419676389 854000656 672123650 823079287 633187401 389077094 33306624 278405315 95475338 251435432 277568619 628569184 247137921 661412277 540525334 425534763 948889211 685249673 276947130 77146895 270604857 899537785 798373328 48883514 239258855 864472143 600623061 93877923 141980660 413740356 189140569 744402386 643629739 253761747 614161682 341251289 541772700 694270982 777384928 243886288 956587462 664948733 919990422 288901528 374739952 688799710 706936793 239318558 221735649 149020866 206665711 670327232 358021572 447668767 311970497 930477754 274509352 258902376 959038540 574411654 638541081 28452242 640133797 259808036 56658513 125702309 602035578 757169843 515562270 263783196 709197018 194956631 162211561 780706752 146475911 875647960 831398884 736992868 611376704 663404236 706216723 487236301 327590897 851725311 680513049 885134905 246536983 917082440 429879500 279382968 394277438 38987042 831287732 165624409 645321549 147012721 618213496 944303468 942450094 83555334 793328442 166978720 739631767 272611454 375680070 259255972 937682319 825502811 667852873 326767457 811299577 995801282 211765822 308422006 175879220 644120667 185986792 178083263 90778378 406534061 619866296 861864095 104468173 817147024 624691702 37432513 928018168 469843946 347558402 841361219 519274410 149065611 377687183 549304320 577856184 570232391 352779168 589488292 196466047 207869976 5952491 524650091 106338257 698853203 570215680 581281896 457796748 676452211 775723251 960483145 441381409 917824221 152978833 442645431 95632940 476527933 818879945 552753015 833531713 481550417 800768330 111567473 319820998 181032219 870438255 167586602 744088688 953918930 740479690 50310488 114608120 949206870 279176272 975701192 990774621 286059233 885491664 884802592 548392386 464570635 726907689 103969981 844675682 636386791 320924322 651253552 656192983 795149403 896044129 456545356 255199228 885192862 253327819 751441620 539595425 130797331 385584052 409654796 562411378 634475175 107791085 830572643 642569980 248444521 64430799 266100031 22355426 660663945 556392738 788538530 88699919 266767078 230266199 801852659 354340286 886868821 388108942 492153180 580599240 392973387 987154793 371003668 596025252 70593885 730827199 213538495 249872566 224830390 186815082 561389988 600390165 685311448 111020769 481073533 747405872 586416839 778706501 49553380 67199658 413821422 783609668 949786525 661625577 135749885 962436117 38489240 773741158 99319428 715509153 380603862 297388741 884317817 377741619 205076694 621847485 611068341 844906586 581677988 743198082 60663099 861812532 941357328 142388935 647365703 353371672 121376856 580719237 945577726 414221393 284672273 636765727 918882759 6389950 216445669 870370319 738717939 459372598 982600459 80182005 933043752 789070315 494013559 864836391 962023144 206121858 596883712 278913629 755403325 182260581 538816302 270717363 561526429 443183560 892207122 112566089 236098280 555789766 360064199 740012050 452590106 492881883 380602014 868874380 866274617 805182185 15299030 193373615 729181916 717494117 741700488 539082358 437062367 839245928 889202139 570441084 325166233 494651967 895169717 727508527 485043951 258290090 808301107 793166250 276674853 644571841 974704374 249581082 314597355 750509876 552970787 681175482 60637733 653737218 912906095 863089822 646959689 182759257 238908710 9223302 673856614 52839947 31169519 395207746 980304190 880444942 737496817 187560363 181353545 692775566 534744300 760927208 77460525 125384217 759886687 339465312 125653481 837156322 264722841 656461365 723730769 415961302 934292159 224803946 251329166 802150102 835966597 148751522 212008733 133698809 122704292 772586772 638149786 713916768 145765696 118823125 578261024 553492518 286464024 567412732 238752601 25709661 446706281 469722904 42174157 962923927 433588948 109629023 317076546 257754613 752388086 984221500 731726922 764347488 888498044 397957745 802901477 973872561 524407154 280512310 930330498 442993021 280097238 478294154 612900696 971032649 315965630 120514019 972785410 526741974 111476239 683562269 613963532 384510112 543372789 213879900 424740235 328686382 559187347 372958839 507838907 314347135 794824822 5988407 919944818 320692770 689804603 727730449 548846693 662949468 445957259 402457645 681837933 507906931 367835497 377599368 360712845 786607309 819617670 232069937 653522174 230224820 459959284 507834508 740176984 569518381 686822425 690330310 237868904 982861204 919508970 670772097 619256129 447282085 330229278 559750199 57791285 330239552 887319442 777552404 679938815 272193271 806764045 260634630 589245918 631488043 166951684 568961501 467759444 387145982 413215533 360688355 378121221 828341675 265098187 513941413 820537556 407002596 234347903 91130772 124042399 948938330 615325310 902851384 833434285 62016750 306884015 849736631 790146532 217414694 58114931 242560102 733810806 568003139 819019050 402673458 333135445 192109925 75789236 413949737 599174357 947162882 290839540 270481684 584567591 551385490 241252122 931224654 661577486 968015828 517378072 644672888 926009192 345248584 69533935 610458597 485501551 933010035 403591378 442356077 365487097 201292377 463750235 665017039 27847749 271630728 744184172 532172243 388703181 628137723 285322656 629562790 278592662 65966571 770148314 283671837 672788808 524658663 757365747 774939026 833948623 86451286 691056919 989148848 878909061 435919840 984460581 525524056 125356213 517743708 444088280 369584511 885524363 750029262 66366532 741929178 389412757 255328379 287920262 587884202 526030501 313716036 882579859 938355849 87958226 668519637 473806801 737074687 846481375 965474163 673874193 926337860 864876279 864406701 676144387 381997895 137402765 642646802 169700585 651435153 55892246 369930615 537700488 874418273 853166543 458972839 50580086 483784882 528172598 783081872 267720289 465910832 843401873 6783793 700279461 888138805 275265233 943472147 513345997 755738325 101205740 576955654 235077019 353733855 322867276 368564850 401798572 859882307 952457549 973793387 517057764 319986593 901791987 479838825 120939261 305896991 308416324 690699172 138009436 187755878 196629214 178459635 94361761 546993562 46812665 289035085 359246762 314051274 745469486 393496847 389056105 912389185 917787971 57614852 112032791 550694465 898922125 894781097 223817830 894910369 682145984 980541328 951845252 111309269 877417145 874469640 548733673 719353271 619433994 573034245 376292566 241478676 111725607 432862031 544322713 661504962 238165822 697332332 378763234 788807376 588477266 947593040 106471412 83873434 136746215 47202951 731765793 929686566 503149389 454833297 621364326 358249151 955886112 915534997 709354580 635172500 501708607 166957347 506495348 762850924 334590404 959453890 1196270 424969511 179631557 686999326 843803027 748662838 517079109 748592945 195077008 514052759 439322460 695276396 28086241 963148834 723307941 691005447 416448491 393331740 673412422 399822696 304843285 29430708 29867288 61499402 699808127 841768441 329467255 315303296 13727203 58532547 436281659 159233362 10987722 578926483 940082103 472479180 490121561 33936404 831713386 593895719 192695007 972570269 574416878 934076631 720137795 694160494 211858302 513921411 302603267 410585807 457104941 699735593 333122361 952983050 663261092 363827373 442296356 692679716 35229071 835856335 460523027 777511636 968612487 182679579 156273153 188461123 28563717 881507833 587262718 438086144 809733908 290921986 94290827 967203382 505356520 49827198 212772150 66058436 526447225 374124453 243745178 73248464 555728755 459227939 293268647 373932383 951174193 111535210 756949650 935767414 60517053 902074760 406146232 494740521 692357361 616742548 924412243 217599165 893210806 165093564 470471806 106664233 282050091 114834310 955273989 313682079 987926098 10612199 591586609 221256305 627368172 973875098 806522459 557117855 670380719 59485759 83309419 46971447 82685566 112835773 184358501 267684810 459965306 473794367 18129719 284771629 449064259 93074900 685885917 904951213 755517031 711311187 121827002 802841028 942987005 685369388 170831885 868932422 197715105 984617784 415482416 357682242 637258873 206333106 391883045 565624075 108117114 14840815 789961574 148692718 265283475 231701802 78806811 415761758 426902029 943036960 889360094 172675314 197987611 717765921 8636016 574528895 301919925 512344927 268775983 166052063 280219365 747387118 196218703 518263390 427838793 346927045 7517349 705793454 638534061 130662982 965295644 977366972 469442745 721651609 444487885 90367791 914366005 432827474 673560541 345934094 559347936 491550081 465950482 773839341 720262396 75624236 908258275 560138202 492900605 932395678 842223217 745067250 765682747 464112182 473262899 257910402 623322548 810156120 170967061 795197494 8151672 595702019 690945614 107512001 787249081 349580097 678913544 162987784 348308659 509979224 219390095 495562808 461560082 577388762 745365252 684382255 699120368 566621552 129400027 531971729 382895762 900833521 505829027 189112199 347953853 688581241 393666524 917147469 713289829 744456055 263801455 505873106 538512945 351948994 253169852 683449208 30279639 216525646 736449337 36183893 31765571 580762115 675284118 146962577 590143994 713145309 529695366 831841934 231892270 491652486 587211367 870502059 476214309 695357362 30532020 871520213 191193105 907389788 695022173 896578222 980554200 219531537 507793775 857315341 829303165 439773005 196316387 392273872 551349911 405552931 74860825 528748157 612421902 470182816 990082694 269918118 216940234 615888116 549352748 324479234 252380402 28968233 933642384 229881102 254221051 653352734 913789682 632392902 512283679 168419002 70471715 263174439 350880618 364299865 12444505 223532333 802300024 296401524 606588219 266674280 958835782 442939784 721946015 39285746 967992584 135257103 391007669 180828415 122865901 900335106 565493408 454545479 503468360 786375996 737305959 109143354 867266644 235786664 286823351 149393180 959227151 445630007 515857677 494630284 948849514 705731282 892649467 686944034 273432134 922850784 813111129 411812852 562610343 455961080 269628737 344178178 12832111 332307584 392086561 449531656 634828965 144177439 360150886 452647246 165112324 5468066 343507175 214554644 83467813 308942882 639122084 176663440 625632172 814786948 373802621 492002624 910745143 692248656 69555019 535883318 887296982 603413437 580113204 441464654 927865640 293500113 403437102 107259670 95451669 488082158 997487697 10432412 117619204 653832875 808035682 220526111 150685589 650781541 789072877 687565103 575587369 41116895 782179422 230457116 913383311 14664732 320607001 443669076 163585097 349236512 693205609 441402984 148357839 462596796 989536596 655357262 394332822 727811594 256748619 790105587 944308040 917654881 517752356 701975912 131613366 874197581 690423189 767124184 63799715 444235795 626148233 740633838 746272016 128999973 313820356 669475439 451659535 159282874 526863471 845900332 253971841 601335106 349497578 87263733 857594495 607900432 375701064 336269368 651180483 643649441 365918735 153110355 14810790 726077690 1845204 930314183 867258649 742654181 342425104 495166896 141183368 458932413 901781397 811933529 728765066 452453872 618000842 919499383 340760865 951342224 56471463 962995986 522713852 632131828 9273447 550969103 923641701 97984712 990543511 761832652 17493597 874822175 575658593 689024912 688047190 697735584 234041157 509063708 330533402 133640115 481816521 918633168 937143173 167501625 677484502 89998638 941270996 787969760 326592736 874628092 966354947 574537387 734890538 961633515 319054236 561344133 399146205 343563929 564342910 559248368 696363024 765582666 930345646 638023475 976630076 17558852 862948420 765803129 160934774 500610915 793535412 386928589 536927082 36940434 821167409 319675685 172265854 392608595 790106198 742163916 285257516 344411610 122055067 524396862 946137550 702255711 623921894 753548948 569256319 341988169 648009447 777265791 952861730 933323631 247822276 914336077 849767802 649096241 649846766 632127165 179247691 160809651 749219421 6218317 471293481 375009071 595390526 908935126 798699967 391050339 157309258 930035578 698048957 693620178 565266248 837153491 94707717 107887371 289476931 439279104 681827687 303266158 108371955 2613057 762193896 908545332 592543768 918400009 805919111 277861317 738604850 457438780 588959908 867902866 735261712 938301798 605936791 705328059 113606187 294864719 862919388 405781487 213187794 154723682 851545570 569353327 777340263 668852638 194497664 145821061 317826768 642359441 202310224 71226288 652504075 449915661 334281433 369547797 284358611 933796397 392079994 805578605 780738622 605328358 559260389 952282945 377429787 802901177 314854913 858972085 611026902 537108409 584946923 109680678 14082881 703929663 130831832 899428498 991956675 224551095 247046990 364058508 855567488 897732485 966532151 304054021 303789893 322740 190192839 441710991 209710066 199107650 364763788 307200004 50764935 879523820 26627874 277088123 858220840 172386044 424509446 728279488 599275727 196510166 272811930 103413942 744763328 311742833 263756383 135944230 424202048 86347914 299851432 146969823 226995412 665706502 994642949 690664261 333801118 57162423 132888705 316727642 728359288 308175898 871515716 631022560 270006012 723413053 737538958 777447583 362150476 44451070 367914618 673443023 328527385 607557619 675563764 673854126 50737792 711458907 947916594 209440938 337425225 67110451 878300463 5581201 427979433 931504130 785245716 652365403 534045985 359929559 684705169 415911536 864530394 847333463 354145003 115133890 287070696 543721533 693189380 51852115 659308613 486047211 255255865 174577442 490160129 70429339 424716339 114979499 932751342 562041339 285771566 691084505 75442486 26814303 752135829 180101770 24492971 697215494 972432392 246390771 479692122 407555101 811296749 266696256 433639263 834961994 544937441 11560472 485838995 15376754 860248731 355660120 64417940 763373728 686949550 964841691 294863285 485964875 43592850 424056807 596485483 558840117 571635159 478559123 417901608 435408145 270155088 651659496 588659666 144264473 799038286 248299122 489862263 737573313 33098394 131421728 921892826 272007661 399487547 777703658 980488023 967985073 71450770 582786711 794447440 126883987 874137501 370592508 475118450 407666717 431861863 212685011 579818213 433644561 966789749 756691171 703936621 803701649 56254124 299319017 466656562 51874317 425788186 191427101 626241366 590140667 339268927 763103609 904020450 519059874 136579644 690375392 621624735 82239594 80918536 44331779 779496073 736582585 831537315 944165551 562596696 114238369 18114037 195522794 461145961 544721904 505548601 235304593 372903245 506613014 587019939 44134641 353147936 381091703 65561842 913465239 147241346 146165180 291279710 846631354 416549672 50351027 189525528 209043259 734804355 239483546 960746137 633675769 993689731 852096990 764371009 953661937 584178256 259279829 936213395 803917954 354279219 236349595 932549511 6161730 983808508 526888755 756954670 228431382 516365880 153508282 173010259 650142803 829270770 222330300 751690559 62549660 343899250 865116 204560412 796561605 601397907 235629955 886643894 87812630 951866247 382288580 163402445 420957387 305981985 506513767 404041479 432441176 523003277 864561339 40709859 66397951 80583345 720715516 830716068 31334404 883451937 704452093 794830723 64395633 288160141 771860325 640733798 214345295 490335337 892306221 694007559 35632527 633483536 924876716 448714246 141471312 828841046 998026182 754419326 38253815 988956983 893747527 983628310 451930384 947689271 237450481 790175298 597145081 174271107 383901221 530226216 306869312 829703084 374812296 956060787 126722813 913721494 484504203 525972116 971065539 328375081 673966895 886418706 536222858 184971615 255867966 870059551 318048002 280697600 164706026 739385139 848388881 529477656 324728874 89283235 9126112 722103124 964015922 337625779 709527525 560202994 372004811 722970895 761706471 383452783 491922351 162557289 856156061 866393780 801233771 354545455 616601703 522264133 697464125 369801447 301651337 945242438 127738816 337225467 744710490 861393529 683421246 400132922 747366051 391406077 329503764 719357967 368762707 778045084 169231780 47797462 410620884 708994752 150205819 816363344 245661455 139559738 769904858 32353166 201435914 281803823 532297860 310329832 696236358 430804163 872610061 148326804 160304860 937324989 388120891 909528456 964912087 247175721 604861789 400536616 74055062 245460221 753476574 18931614 387897669 364222845 910850124 305936659 603068592 503616614 677114075 233528949 746087099 669972818 234314710 379011675 338806770 661346775 359833856 56697750 164096315 412373773 252477220 443218137 989322641 369983306 71128543 679918095 830833500 577356103 277921637 93000334 295521993 127787339 171458952 76159418 315221787 908458340 604237239 544385014 260499913 341517019 335573133 918808071 864589680 622271206 883818786 739073378 7474027 689132046 695156900 377715400 865679045 23267193 535740588 747410241 121301580 772219232 907948642 116265338 466230597 20930269 267273253 354515208 583416415 40582840 573139739 863629962 382639261 672468735 806502360 19297925 613784270 992818982 700108788 959247877 69999877 336340100 136844698 688706620 40967322 122155214 421967587 2090657 851978207 505531879 817190066 54643161 854684426 377785749 700475384 846752829 968318044 395166330 243025820 664309894 899369010 53003177 89280759 124350541 861343060 452228843 661489102 452240958 281346628 105005750 497598597 976088773 264155437 436299359 805170940 955380354 365245750 884663391 582365747 731267309 756326246 624975557 539778130 721570559 315096970 391111206 482584660 183607463 232963451 415126687 826788176 541428880 794413054 251277070 117719851 837888915 231936789 983518198 206318306 344858962 331015606 712694128 268567135 728944724 40077459 545467328 153877775 756530808 281032446 222133572 932277110 447326585 342446486 254579364 990849500 477130598 392253012 926106349 241388475 380570925 800379401 907263562 760856417 670696612 217185786 262035701 819908766 431236591 863898000 147754247 612839258 399435915 607271238 34231178 817476732 9125800 892630315 817646780 353955802 209446294 874716889 972285953 459525919 581108429 409852693 413801885 48659914 942068413 428770473 99981455 514339338 661410038 182358484 753741941 904052755 846603984 417161374 654748946 338473647 697266662 892040659 46800015 876952864 43914916 315191979 175511987 103611181 633724849 575027420 335541318 697001569 552298631 619573772 398452353 659194889 952805798 947191895 184450884 177858408 842367218 134658969 109865282 958654264 313508841 921386112 854932677 218316034 921579068 346671181 533280240 490232211 346204464 497938603 177405779 773914942 824811981 552259909 329770926 992332310 844576997 401932846 265558123 639578800 336157590 724531502 560859825 174726175 51446334 639388916 614386901 302078934 161088885 900555722 697444510 602384777 648941414 313382632 504249510 343166769 421395944 686747382 863516021 611371718 952081052 39101232 245190162 823940331 910470908 201634422 159681745 151057054 612905022 968102761 759896786 395433231 722352243 278888415 302972327 965530775 370854129 866904248 490534707 126102519 44496427 66676 895779615 86448230 981142971 237403781 510375420 455687340 207928605 624488897 968084860 199600933 48256120 814527019 113995571 607879630 530818483 491158854 939566961 738560968 401965313 14161415 835855879 774514237 36864529 934385610 284507482 60686233 259973133 723745319 218170715 508182402 557751972 430726734 794148950 656023043 461275363 329095349 685394987 296001467 891877418 479677817 594145067 141689906 169262477 652440975 609248596 58450395 204622897 284919372 346108188 75151106 22979048 421201019 686365044 483142166 382901196 658321313 104528498 322231845 268571026 720646087 963020282 586895607 143556344 785252308 187462094 857798141 458448407 461767049 266067551 678369169 868274132 647777677 707139603 967853401 996324547 609025383 190243430 389008319 346208826 686414451 842376391 663735364 699222495 341210471 25307575 187855423 889472915 952943630 571147824 920144346 352272689 659950725 272498022 671989982 312784759 220388144 952442340 147477502 915963135 542849212 364726824 779111548 66833327 941906137 20341842 337732519 69732451 34464595 639641924 558524960 290767773 189421136 525032659 793104616 617696271 719438222 693242490 883477850 538916593 575119326 516500415 368353386 410633785 753709145 404383886 506427024 321608405 996289757 591585472 567212892 141222288 621230275 105816657 146917071 659609987 61288616 660304271 751865568 609121462 869978353 601525471 724203263 786217620 836483885 845090422 866281841 192714385 979265233 769274992 124649679 907379220 39859205 141279850 711458738 775430615 190442695 426562137 409893219 669804721 115508093 555266144 354563356 476076866 37410031 753150572 353637261 80996986 601685227 26127405 634475687 292439000 47363450 355231780 153937214 638187109 522347920 675094271 91972435 396162756 60227389 643442361 700675359 943111430 498009849 278502615 185791078 291644924 934854580 300524972 580215959 837660651 197428917 650488307 288458405 465697286 401518035 252958871 164455353 520929656 803749899 264773478 355666779 813954852 885149813 930487089 872418961 950549004 517603137 346532949 431136346 426422948 188664396 483210470 901288868 239541072 840030346 600413922 426305911 506147492 640567195 996788776 511927035 483157527 814825579 598957198 267372162 521325781 573938969 713978282 36273116 243923701 46222925 424886226 913685368 388808920 653759271 467750134 644354097 26953552 204616763 660357600 654819831 213924385 262482010 788111738 996607779 215672540 745532680 842776385 857616164 701543300 213760507 613622662 485736952 711270687 243564029 80975628 828654579 290572420 732619996 32078111 624566952 793501211 111341556 275118574 154571569 591382490 493803863 105607775 225067530 275059314 855789725 595964095 804919856 8503782 938109871 441953710 753165651 910272769 322619949 136082110 345704490 764578956 710239438 625992550 424817373 837491675 98596531 919602674 640859989 343271124 326710034 937299299 436254822 320743947 303284172 350020407 388536330 134555663 431796452 230356228 312975562 112599408 815969733 628848541 719582537 288926876 570954872 860186741 570315924 498685200 84845497 756977092 139270530 499074705 80828985 861238130 915600406 95474911 288704162 929389290 73118812 113300879 195386484 230503156 180887065 351105134 113813693 175680119 898631039 690798158 566907498 150360315 673795722 57400012 190980044 924950496 149095973 214471179 883949849 654969452 799626267 114562023 536021452 64418848 545136807 627055039 900445142 148626526 663794830 698494960 162141058 914082829 797943553 281089657 828868541 295696875 425775966 31763387 835392320 362577863 150532382 919186533 741935655 589885453 17193609 76768670 538937109 371004644 198461990 200548266 65294895 530739088 87044611 846000808 366133653 449861553 978838964 21422606 669613953 647319544 714037307 432292123 523993991 100378684 854786620 950074111 595273469 817696932 666700724 918183200 739445160 580363183 856998112 668155093 977576123 523753397 735467956 344166641 209243253 411165674 979788301 609559516 325179766 131418686 189772080 504614207 694761660 924488362 140745768 71388168 6432512 699923683 374516716 798648235 126389118 261522540 529757085 476774858 958282956 783949421 3816908 275877096 73145766 410330435 585228224 989215697 848600585 834376855 836509258 893390363 495382906 959903309 462024370 953579698 103148736 716326121 265546357 974421414 896201296 868592661 487048223 396498468 615293655 35716517 710372685 439184683 10201779 312242308 713768113 479288082 656316931 207166178 907894396 999839610 257796615 17593161 172400500 547102591 95470135 346296444 530776365 278050172 670140332 826088730 312172719 430671555 416748388 486069791 255605714 27346822 495038350 281769758 780482479 63985632 605142616 737584818 663487958 664059599 21832569 142353996 587746170 230077341 167852515 229075642 705533659 265590386 423984806 815936985 163546176 600552752 689670376 417989362 833283529 477863915 608884482 526255039 241896095 948416943 489641306 802024468 915380484 93616158 562837078 950540822 313268583 179751217 886924641 224057258 124429649 98627371 96005782 324651681 886028014 659181009 81978467 409865805 506862203 484244122 839654262 419132079 326854694 200325455 376618651 553111970 152846175 122061261 330680410 213367094 540602793 516432837 500031848 131423311 921252162 574866942 229090402 916979070 918280306 180782314 694056926 640878435 378849743 390816873 751688746 29656425 934009221 566197852 874410807 787784008 615065371 269999674 244412024 885930787 193750180 738858648 757937610 953921008 684001953 574697317 950227811 250562173 255853093 901207893 899384140 760757817 866324663 979696550 433993977 182780147 483917785 825456899 258224180 736896151 358977886 700054199 163188974 851071660 939963988 258197631 720211388 349809978 217206333 577033278 954848596 187461059 819639937 783090178 535595096 281338320 577515275 650432831 270659550 530452461 939647833 939637534 862763159 275467304 660608252 442439115 788719015 454729097 653668970 787140769 813676259 917984857 672289598 513873382 391391856 972615159 811338601 4980902 694400584 673408322 734065965 271264910 886335048 418032626 698896027 988311957 630262058 330528292 872540352 518272439 584077097 39311774 195479944 563835795 479992464 888088745 143245261 635854255 9950472 944762076 637526060 967983419 675942126 153818082 708813813 332179006 363359762 586147366 700242223 623755560 220123228 113406329 17834073 213914853 950301563 537479160 349644854 995946478 25660893 250003001 184880230 146116535 176837628 369100987 419029093 474690632 710434068 597798648 4780907 874970557 929959647 39958221 568796682 302987051 453897115 987151868 67467096 457248723 133567513 918858025 138566244 900990248 768894992 410643750 553686271 359443448 738332209 503136690 329136590 943705287 452970128 739221799 583295435 135162877 894887413 345966819 337020057 729667770 547306238 510098445 940410098 136273031 727687798 609727826 759734491 485281482 351704571 474648160 57421831 851803859 669598178 895348612 203916888 252087754 834510375 775408026 624266763 938266734 164638688 365426249 96972168 622931951 573704044 688382773 570357512 524229259 117980128 484775875 665929196 934786258 212210862 28956421 38647287 973781080 537548681 988257811 417528706 944275528 358285126 849880661 586371788 130891458 400912692 118327732 771350564 279361803 915492153 636436599 119108110 340082569 464651995 888172130 859531758 548255448 161913230 411413480 708444027 455935381 211278761 633227944 16059402 152761395 321054080 461869406 641856543 959047821 162363742 879508051 290981701 853718408 866549573 432937435 19140856 914339660 343449928 479565415 698095203 403460937 740717527 149934982 109636636 538687784 46627280 425499574 235023437 105812007 331436129 395777239 702802718 976403397 590525973 457458029 797813597 541580227 399388734 298304742 225749047 828253968 2796113 909507358 474044907 909694342 589075642 387971000 89618003 383992245 273927401 984968570 857988614 278116496 530238389 466236244 242443104 36142216 620324148 502535924 565408011 805109861 525837305 15866271 625974806 725326355 139793980 680881048 279968754 158641725 645385006 356015891 382092614 234138057 881708377 950488031 392347811 101204774 728397621 421530329 246920036 523525403 100754354 65665333 136613756 679135779 873727757 936296756 433738543 545390215 336956065 556566215 898935183 753726581 718728408 616743879 934201616 710771577 659025060 133623775 336737645 120116938 339506870 853808865 934800562 621249229 447504933 308429146 799203106 824216975 796719094 85739967 969268443 884300133 262676887 295610174 577414456 798710786 44845340 795757809 698214845 392210635 547237514 12282467 21000570 109942408 803531388 773776769 951471064 480756854 942604848 504997532 369623216 269455642 118056884 167420498 800884118 567940850 394370967 481173796 136329891 823771935 573367377 665747600 922646424 166051963 785715494 800556453 443792544 555392861 632499456 153144459 281166756 357622437 805177242 476063616 988784583 940288996 312333671 848515945 40433856 871465673 605699569 490634514 135920871 359860942 222819879 339784185 626804790 757082014 22811343 190817421 318095269 267396847 43463478 193564629 986289917 491971915 257138616 88620778 791393209 125113357 52880142 233633290 228012105 810310307 374610710 344175770 791948109 153095553 552718892 303897104 629085030 842251988 698191928 161406677 629800559 879469532 453047283 444413691 293139670 90259743 155744300 564168078 798033411 595843673 403965717 338616578 373864404 258899638 895730716 168717267 454954089 573192721 514810995 47902768 176580364 580226784 960300979 205071148 266819527 406263150 454087949 125702195 265885187 982644170 466746363 742695466 135169823 577555142 233576469 606665426 190920890 36566213 332974128 118841314 802373717 807728454 116619844 209364123 129077270 184036314 198242980 791395030 491046829 983432073 592648092 365484932 203706124 939134590 490462467 112479386 846125001 202705173 687484449 719458340 119466305 771033707 120732787 738586487 762276692 889895781 295006927 390351514 835682494 232641719 571842312 416265175 593510241 420235505 389572505 53688994 574755508 686172860 157979790 245303554 950720164 195236006 96297753 478578107 589265337 879421166 877527785 911708390 462757295 152542689 850128755 485468164 883188217 799976699 586008166 476744294 668318177 317291679 986733299 227682945 75794495 993103838 442190943 582051675 766232482 484759214 377101488 886796792 818142231 756629473 856313187 474743467 828421520 871366560 391856966 192147416 601427542 313129432 750070978 653427686 255412898 554149238 258359833 591846355 752956617 966711983 29710320 691424322 671938345 51057686 44700939 385614287 519221314 904070331 428605824 784627675 122771560 18992215 231847139 499131241 897016653 749337444 895748877 82315141 396708576 86680701 23291322 28017220 697138596 251697826 322832102 614406992 541604795 788996395 953708630 452739144 121036645 984935664 470709504 621636337 918082885 17285435 561176647 90987229 790217508 696539403 452679549 242522027 182709907 126334813 483273749 511514383 240860446 761548988 167872267 460872716 502918962 986987948 189007258 427913507 34502981 274110263 255755456 673000148 424978626 23826392 454254321 280280294 682313692 399928994 683959844 931383786 928493320 930086799 877230434 564982680 49967879 352568689 301366866 632133209 252761675 593356692 245311132 795530572 831283657 533578608 183837150 912606712 106892262 758239527 772721287 240282643 727848087 429123348 362494797 872737272 808328156 829707557 105769564 219429774 186764886 697931616 197443972 870675119 845939161 775857420 38253607 838176031 768066626 599332572 362411854 704287375 649114490 716187885 185818756 156949495 294482734 962421351 573876231 955494610 891004123 661429919 5519859 206828709 321390343 434694402 49182491 497988735 400348087 505814832 437683213 965045614 142464185 997105147 331701345 57408641 578957583 654868377 128031571 156084568 161436555 481493408 78618265 880753635 313573894 168476432 916552974 675975443 42092676 816311030 920318852 83227540 891301828 896527031 915786670 759148555 719346411 817813049 685125901 247272949 482725278 760642831 518190824 186416388 29786783 882051338 106351071 50552364 545684490 210885418 182625450 533322228 775084721 700499565 534845284 149328685 22907331 160215369 547120422 198914816 176955756 769956413 964926389 349561561 595736786 116450260 717989000 388445707 735294498 687007794 381051291 269901973 205813511 309665108 439589029 510548428 801093339 542517476 479309065 128319796 668144834 636331101 345744537 98188758 346857800 538145385 54489630 980316034 625564151 234146950 33363457 402557639 352364376 895297115 934492093 493482221 794734327 790997089 979796725 502316648 908530619 749782352 137931241 495689682 232881613 118442476 156746278 93694543 366162659 525480397 677056060 384691413 669725485 876633093 967820606 313650670 828482360 18945901 351616436 986153431 15104302 247674832 515879574 114113032 860725637 321591412 279489094 775422576 816742253 517543351 350539368 962641505 331206158 944380667 784022652 312056094 26956737 296552000 763709746 720144067 983031528 845201611 983543696 960591522 611156672 214709417 204700049 662828277 441809668 996497901 35878945 235473626 221318149 962051044 304487356 236583775 297736461 849521797 271840532 289176756 238637105 120696215 658472667 445775789 92992903 79168458 171933415 378267558 60332254 341057275 520507458 752764478 409539412 654500833 860520772 326563973 21889148 572578542 10149777 611756624 141488862 503556103 874395003 149209971 513555455 665475305 802800893 142348355 787939746 588628438 966525984 332100409 909368608 391324018 237874322 279266522 652746085 884171380 497029784 336114907 961674373 878882429 555323248 342851843 561202357 528007343 13363257 28453163 281738867 991230366 170292696 954606456 121697470 74700085 597047039 271601875 947786700 840616888 281544151 19642649 38772334 396095893 148811262 104782107 97006852 865530756 965016357 489055421 505529199 68543467 171332079 797062796 757964844 465591974 843699407 579436932 227684877 598048 533199318 648511761 773387516 62892686 450779702 870092700 8839981 777239711 71463115 122792947 175256538 22710353 171782568 488713945 196032271 283137520 92268012 393266659 525796462 539127126 905626543 181487429 977337341 661991254 75367446 101766208 462122110 415685978 539418169 699544053 304764485 610917024 12195427 369822914 643522664 174753358 401321334 731587950 268486254 133858585 837665918 15020950 938714998 764629375 422792288 375171364 719631527 470131627 627788183 315008969 347263099 362991339 604312215 830611955 76679 206760224 399288787 171322730 70928224 890177864 197267761 99881767 888176861 239124670 310357014 736382939 923970639 320140926 88513380 449725942 576522607 642876683 90991931 570932994 105017950 195727577 183212558 243245420 36407456 726981262 867037847 619555414 370323349 696418949 64233211 996686677 363229269 494340163 744490868 277082676 854285534 142002467 821151347 822950421 282585753 660950201 439199814 611155848 51848417 800893491 602535740 440546719 232167358 471820913 347336702 974024118 413137222 986742305 318346252 621224890 199866830 131683199 851444359 28652376 357823953 267264078 654124674 856347326 201366197 635114561 970771794 965043467 547139112 44167246 538161190 728509912 227326450 836018667 332646235 423314737 587435059 108668744 726331821 311300289 207030588 52806558 985713797 751769903 848360029 880421694 239123578 187883352 535126580 129172826 227266345 864442535 517071303 78704165 361117256 22894391 373372827 478818563 516612259 785978647 654015701 861698553 663256967 881929128 140712101 941490858 701344899 813605802 618314308 756680219 924389216 37949705 263212282 779591024 415810753 245802327 287043386 791583005 681923786 899046199 814488329 237725291 878293489 9793025 729697748 716595941 144459346 42877860 243231205 704070904 228215399 986321831 64075216 412620647 375580973 523982306 167608205 769442638 331163932 763124628 768105526 455900234 167658827 764786720 903528434 39424141 188035507 796542894 65499471 584705355 287631686 606376048 731684204 534650901 857778323 423151941 320467304 15559603 838552697 389049534 807271376 140606260 909856149 306843060 725307976 261699915 109437076 478198094 149674869 864373647 803684562 180281844 294302829 850747093 500714294 593895877 281289588 136975586 846960150 329301465 360222847 459639431 900024658 828527022 937818973 389154773 444045960 125600840 201797578 937919630 369214884 469463470 993518689 830987773 256058634 596421504 493128693 797407966 665715619 227410419 175698832 539989452 855506989 442034526 742543538 178236551 635437881 961882312 823062143 608194283 890975119 637319181 804795116 610373189 298362680 152863588 32288919 93992758 315550449 397635260 935127519 761993815 57499680 93268784 113059233 464389569 973524535 627376528 272142834 931814475 666843266 602957124 343972510 163142405 859454768 404787689 177928668 861305467 670261082 665263393 919531867 906966141 242299008 594643384 227089873 494891028 869432244 96929771 383441892 79842394 902397353 164281125 715044175 8601956 576138447 524734499 488490524 653899152 25212097 355797890 435174419 703214365 354844204 389024691 865686582 145010602 613982301 414137422 207203801 96883330 142032935 341840092 227483799 984366707 545824934 128305973 969731016 56217483 204520207 530216067 280074615 573766566 73826442 551637915 255201922 391547305 761362962 132398561 587139692 326166322 68765634 659065764 174010703 709989039 606627678 468503629 795280130 958614931 301687195 741447847 511923309 983016824 661116692 741530254 286876734 446124761 28236356 768755016 560228751 743140539 456640913 573079917 482165519 722182086 350003162 808553960 295886539 606264768 215863028 776004157 396178555 512440952 980981733 868971998 860316179 64611137 492756043 59373865 354440374 31213451 51247503 506139617 18598312 627841510 939024609 891433744 914350367 430500083 770544498 825989004 770948752 919049049 930283350 125908543 292607800 556268024 638914089 247809787 25135297 995209359 968796094 319335786 813802553 579372320 675339403 263908146 992276251 970756618 530541431 678469368 996881245 229841221 149425572 692042192 55383611 167409971 720554521 432280932 259015319 650169969 178702881 177745066 218315303 511564243 773085151 726080498 693279500 413088108 797302935 139485695 934736574 482534194 298713762 737591414 76740827 833322851 671934172 470704934 160852265 590571905 299565401 324324066 531597296 253706058 594800754 255797794 259009373 162584680 828336120 973374425 622052544 7625788 467325507 440114604 176859392 736985169 933353 745247223 771591765 852589316 191273500 965166718 462719002 709525303 661191 240862520 178188862 429597475 566323624 599970636 761177782 752178814 129282764 130746431 42649804 51774338 695283037 682908200 314768885 875789789 964643740 324706612 329122521 128807646 312067301 773478032 119477164 803640557 348841141 846209579 747540358 916417501 529674141 557862708 348001216 606623677 616201266 391338377 575301388 564657717 281935498 551263758 473686161 996269267 644565848 313914393 777399874 68554105 14301199 417147433 57483109 939549851 211174899 458444926 880657217 364782386 784719588 637263732 56573155 980975620 896316285 750770421 236065770 508553244 672713849 69162187 175479952 120198863 121362061 347886230 740739320 324240801 958819255 517796325 669035173 21122061 921707236 907407599 798168401 927880412 328485299 722052212 385422093 698422334 493426651 35172437 189973174 269406488 326312221 113593048 704749011 709224560 753238429 754061781 243042640 11863174 701063834 793886747 500224087 661059601 298813117 437123625 539650928 619513683 746546465 883455036 662844410 526266093 691329136 721108822 369974569 907300361 977902843 953153637 749675834 334798345 122667968 457766639 23245862 512069504 103877236 555442999 57023638 703871936 152628320 1686015 437711039 178141093 573846093 616310493 406090952 580664157 892109355 185573097 354175882 734320034 839845278 191623294 707658970 913825087 775753651 890038801 819477205 71062692 15251953 473600907 874975297 342923245 919626894 827160184 800106330 624644046 926152582 804622419 287137456 906237808 823354544 840348290 926740944 872911702 132963685 277205454 531515212 216171938 568824167 145098120 574983987 170357210 399683897 915754663 40710453 963901857 177128544 534653862 334121636 594930463 212043455 376150956 675473698 259872175 384345244 807124806 961798165 424199089 918623282 606130815 95645082 8173760 732660601 914946158 70965459 777631962 956535056 475288756 798967646 13535431 785959359 181060348 98507866 882484670 622644886 542652167 707333880 202929545 649505193 118088077 720161309 375584095 71146190 225280247 883222474 329451453 625095264 792981020 62824563 992256944 252014658 920077775 210030075 208895427 886276399 982379099 605466826 139362589 230763948 343352305 665384789 125756887 967483232 227502340 909961341 500517665 877661918 108920211 163789182 795054770 183341272 196992313 164081044 87700986 20535039 154286499 728121642 144405640 720696029 798600664 397166541 955826828 32384352 356546033 71333323 679022715 192045832 65799484 171489607 71837542 69555663 876383076 603985502 536323319 998128212 626820017 802556265 742824610 889243674 145055322 921836280 964550809 689601404 764840347 326737734 302075723 958751543 659287484 742787955 124996798 421281396 29182304 85264240 517392227 186666480 481329918 505930592 166409772 240514515 101526475 770318656 776594370 943341298 811744892 66045251 530729169 813907932 982592133 844544324 498160946 16694232 501702649 492428046 961251956 812994026 55651295 287977384 511716450 819073952 241910426 980557150 760451193 627547940 812027161 249403939 853738350 780449332 840739051 196370796 190961946 328827684 374455384 616803508 496344592 354352098 353250793 875765056 36629799 451682793 866136859 803361928 859978051 620656802 596125817 942359652 269356203 729409350 559054533 969158374 243323298 58414111 974120198 904496299 778467759 814798670 158027424 788980403 62037489 8397205 873739502 557865513 198687346 556334025 583107757 561840352 179006713 248310189 440397128 765639527 254293628 250510201 806540298 604234508 533053546 739569932 387127511 503837660 931184931 955140865 881565740 886177203 575144412 904825146 991865965 713775927 743866781 731223868 914435294 829135627 195509844 605318336 908673741 590693937 73616604 839047481 784827815 184112879 332210002 728496280 377648453 825579286 969225413 935690458 564178423 690313902 579088686 987967889 699941219 635643292 280289525 884912587 536273016 402218808 648893894 690450918 874173623 424798146 495662930 50754114 23763567 418641570 660045087 237411174 615433985 543002131 953351315 642819325 375834490 373983942 209572616 14775667 552954039 506692854 82071863 61193510 900169718 232887548 310875269 447585320 162283059 158183285 208178948 696512158 387417232 10621038 231809212 602476791 148029580 702844146 619861335 670187154 875598994 730718145 64329327 324380741 462110277 745336051 795190666 531798519 279791561 639517702 369097672 206197543 398351302 797044086 85245797 534716463 83965044 646441492 564438998 710309858 892713238 942266956 108188930 832712449 321597528 418413919 224402948 404016685 349881653 838200134 494758489 544457325 734683960 640627052 317668979 992001152 596028666 508973254 880849986 99186142 545108942 460956635 805325665 952734103 565848915 310459386 720528964 15791179 839093912 308198294 483442060 556265894 77064672 579400604 880521853 304757863 364772000 336159761 914268709 346100715 794190094 557175193 793562238 117450411 344985895 666749765 839082419 701720532 352480720 169661667 306730087 907834002 494202196 946926674 743256864 845015041 555230566 973375631 452714562 889803741 346114435 958709418 606052707 690883772 814729655 434423718 560346528 545787251 137071089 442106398 943949991 658846501 532571729 539855095 95398879 977814506 801912799 657908020 278169313 447155447 270366514 373139124 41419690 653495405 878585350 241052035 715119961 762585762 773692815 749531050 307829343 709557198 931733527 774360222 664180514 194619917 691504287 284393515 991995299 336155956 955989286 34985472 144591031 666462318 526367873 101974335 179385067 173436520 107210629 343398159 131680600 957833984 724014133 158460999 368486363 797397 221400571 20907708 797250571 322048936 852517837 757899119 284645966 995275614 210939635 780197349 267661006 823472692 789848028 435358614 372887480 347344277 139916625 26428408 812380703 294795962 492816149 333996721 358090252 763364809 647525011 231380056 716568202 856880076 318153231 289067689 389452817 362862234 600308267 678822641 224432662 701655678 911664591 214124940 933717680 222820794 274284351 843866368 237905860 981672985 168664124 712544818 334635539 561202207 315491690 416336879 103835308 903396849 266556825 338037967 280015603 307553132 599710691 518291707 895861071 651586715 740288390 863722318 794927947 311751194 592615755 610314646 870584166 173822395 215707564 663568490 751562076 229241537 266356589 900134341 129397954 964396309 999635958 964173793 830223793 847470200 725012198 761230483 349032934 173735323 830627985 791701473 320347825 919256653 834649556 46501920 513797462 626262166 109302550 717996185 468960634 208922916 580942549 253439958 921930809 406560082 48532009 106869156 471193468 860767280 549919931 267820846 169288734 799619114 752281649 808485304 924536850 891412506 269094062 959416347 268309235 441751702 981386193 214362942 860406924 309824184 602340424 918787298 259475298 873800868 362680942 80610079 124540096 47332191 981114907 539232514 701037241 932694305 881997003 484432394 953660524 434291177 791341618 851698068 312691373 710147346 503257945 721759065 491895787 578001658 903378694 480878466 857411350 437655070 372394678 9373307 532056365 343253975 675638527 14424564 410416672 807748305 58677235 743507099 831702603 231577402 565378051 48191298 433095164 732950885 61713322 840105849 342497722 836155081 274396577 832070514 676345411 746290289 982212402 643919716 607665947 801195807 90739659 205786661 49770365 182859296 346621774 541235599 611473629 835639434 196683594 888738214 421996312 18596517 464510920 618956859 587259224 926267879 957559762 650315697 758787828 885374668 630009787 450089745 637161486 133582237 132842657 327087910 793129661 694604801 644640643 351974693 891819961 36398281 875379505 279102875 754251059 79939706 925004445 526650535 776049870 25545404 622235091 166426256 658531073 23225483 327817224 589901328 695198674 558198088 822711271 512825262 730852497 11452067 240336179 414952806 147252884 413792990 589298295 13203129 889899510 475802608 184875464 221609768 210381903 75072592 750093802 276033291 604672175 429550414 625580617 604625571 104212456 221287467 308878211 992523785 161740706 922755829 19037194 545065623 384075442 542217466 434784367 427345203 181948439 509180925 321625884 25125530 322561426 289232217 488356740 285254224 574582333 107072320 731156178 904960266 407023398 168821364 839430956 269869227 704844890 203277176 962636613 272097681 827323590 962181659 193599362 541899889 863321357 91385586 493591689 83876644 459187763 193353984 541702079 685253775 757806485 252399345 27154437 478364747 290505956 933578312 876445226 799364043 417116925 868695713 364894795 970225687 37118758 70525295 901160988 969009591 903795346 844135063 402850838 831575914 636673083 67087075 699996514 235180191 441203455 305299854 830762891 425571762 944564744 551471959 795222029 765193752 992496954 690228167 952637620 329745102 703707729 529472977 903250814 208814874 550776031 215708103 590189941 565423314 822494481 158006161 507298440 662350584 201556382 836425114 77715531 967541381 692348863 63805935 768699447 765135390 575393791 190740737 474101227 704278622 828959240 863589105 772116508 657369187 349998158 393304040 593102278 914110514 480177519 28474297 628047332 934045350 697670966 207849692 2960124 990761453 609559348 948822897 99558009 322391592 709277494 858592346 476329156 239089913 48038076 779511150 138067277 737030845 759123324 579088996 703886478 655727259 286312874 136751359 956014866 740319055 420334915 8035845 216856982 413428539 477562638 89834551 449757094 719930893 146485991 445736393 414122477 85214579 207711421 146874795 955369949 881730633 953480167 289917324 824145925 121782865 131592535 815916802 762815089 505550365 680969969 454725631 114407989 166941075 969286646 954220845 576542358 503218417 197002417 821701010 373982280 973055651 172598879 94502189 369966310 65090071 139423580 512927918 119382071 195338662 722916785 254922862 750245248 56656107 13513843 649725578 106433006 978837551 173431381 458045817 393049000 659656965 202243571 134476270 496033808 369061038 580209639 963267922 435854682 147191034 315819257 506196356 935284281 968606268 423748161 569996990 502021035 736391397 967873723 130671811 655510112 970039330 269921284 100397103 630922940 894057893 394913400 67691801 685762295 354332470 620961964 722628924 296767796 541147729 511803338 561457936 425930604 903509381 107133209 330591493 797454664 976433141 660527951 584698626 793018590 648706961 454558563 433657218 630269981 953336589 746031950 782341074 668831741 816000753 374724107 64746752 818042657 226101081 484341175 445218289 930606494 661132012 589281036 760999709 776355562 359588359 208845468 901651812 582004033 502643269 510714765 730625769 631643004 524713416 10962091 981494593 235987966 323544015 498612385 589792663 237953482 531596355 231582608 737833798 776186818 866785311 198496727 418402812 994213975 322772871 706577852 512780865 137823260 854515483 378496259 708962450 484881996 222597898 764437122 441644407 178575440 376771751 433393887 121101164 934043859 583887716 666861781 478294578 819926322 216236754 646100762 810827532 758652650 86023996 287864018 687836833 719066083 406508668 591444861 729950952 361483454 280768094 498460526 896491113 773587337 246884561 852287337 193257457 484594555 397726979 205238519 51180556 509883374 311659127 265180407 353123948 945567248 240111481 449340579 508853803 869642998 536300633 962825909 545835387 283851705 963450825 884871668 553325665 709156387 103407599 910599310 438745935 693555449 438070564 186106463 862977871 437617415 497043431 73073207 361911745 677315911 214533046 561805111 23143539 898748781 236243304 228578601 255806918 987134231 538340889 695915739 183033729 936652023 544697248 787333000 779902562 574753177 534488111 492739985 695808617 474229022 771556092 357835582 113941832 26942360 595135675 216195053 261488444 951747842 142422771 258923391 949949364 902794596 935926958 71564424 745366967 851206836 584988285 806055160 909902807 583501150 598992676 384070759 458334054 45889296 624489489 855068519 334777293 408225957 646863040 917560798 847004011 81449342 735566335 360703447 69239871 517341599 969432637 348441700 694014444 640426894 860754509 195376986 924416245 148391992 385456573 402411132 354885202 279687023 583187690 635008156 509858076 43763303 244440066 902594760 226628631 714970756 261542216 81223949 187042556 211819039 561292450 317188902 525009174 332450805 873474777 67625022 762316016 32284964 157646144 758137842 786395151 123450963 848445104 989120876 700815744 516302909 883530846 741663695 409870963 117896845 260095636 480720323 661177204 463051570 280897904 454949146 907848801 208300475 407466104 412924272 752218382 271586628 800796517 351183560 227737106 422769137 320899977 820082044 413685245 652129505 736492079 474902159 135795879 285749811 638141185 527234923 238232180 698538405 999360848 218057046 373924597 386093377 12394547 257520759 196620611 141512097 96331213 556908654 990624394 947394974 754683006 903147231 850503569 126941218 376956815 684298029 344290222 384788526 49366364 804032506 86727319 269715664 271900883 455629725 873438670 530035 938836015 601213585 177439831 270845533 613120863 987770781 266411229 490036454 616603090 287316508 992357391 176760008 733308949 652999279 746965215 767062583 352064150 373696551 971023816 999920556 746035044 229541215 210814946 632941273 979658953 832589939 214223655 705563603 793756553 834075961 147030793 242612439 211952298 912079813 331023791 875975305 925827049 687381266 612957215 932880339 324915875 128915390 599492580 281415077 550838218 25949353 864421315 590776556 697040375 579967645 786233590 401808793 414502489 289515376 365003569 929562640 397463494 546070988 12752428 471713159 618263123 253330886 830811374 49420957 72042433 490491791 428541614 387649120 81112451 306073093 6375189 386892408 836640763 239828156 93484707 12478566 230753524 581509030 129373186 151520694 413488681 786472303 7117652 52484923 966125453 377698031 164548976 642199830 754617049 630976346 687184788 992098324 640372170 655767140 276900726 809037906 554176226 963331823 379884740 442564675 890133761 226617625 445745755 446173221 362098266 827635376 458986812 501703858 409274945 98045181 166842234 89162072 422829862 535082883 588658719 392054967 656415655 271207058 739464548 853013693 135694934 53125247 320727304 792475471 812355595 620578840 809702366 632834600 675521603 322751050 514602613 107408131 278176680 499645204 36236524 264235316 441305741 764850598 580729916 863410995 815398084 236208570 220339105 59137291 263304060 889151118 111882847 326097697 938687802 22772128 369910616 704190802 395408627 752218534 955580973 585051358 751257354 379877511 661330966 992974412 753850696 318451202 392443787 560346668 685758469 580840121 238542953 949601065 106196075 170770821 880521633 834159358 913974384 790348375 744579977 690375005 432688923 884897954 803597600 135090173 477591680 70552820 334557095 964511509 19647190 787142597 128985525 354289623 472545845 58691300 6702999 192777033 437327373 978453316 828370446 608720477 760477758 252767470 746513480 131520019 173760987 34251354 415048536 397298740 162852539 598233552 341496289 427916521 790609132 899014323 127360140 531971555 933725415 863031468 609670196 187490791 113370869 15061663 670315309 784896841 641579275 608190114 688081029 425039042 576017460 616235462 51845888 845504057 925745043 443562245 385485053 616766417 7659443 627281389 122962986 654041271 807526245 492022713 610808413 792398834 760803766 192096890 914732493 107770959 93384914 49169604 773481886 523014012 704940987 925893172 68187940 667092141 195139223 944756374 256293532 5598261 96002341 597038346 445435502 908066926 40005260 598011619 376659894 213081254 966206288 152653846 262642904 954935761 310221114 121600622 154728705 891142537 90783717 767040073 563118015 146690318 910684970 146536225 465639618 918298148 354682683 586653173 429403550 97010568 250703489 835781051 568153512 542488149 775898589 745297915 517129477 912359820 924023841 828975336 572440586 701048943 539167709 996231844 599339213 837456932 929362990 508333028 330717139 490118251 396146574 540400734 389993582 389365247 171063598 983775383 648378848 504321154 806760229 344599461 617241171 74227044 406099739 366289864 531369863 818245571 219288661 862157085 541100258 757419639 475856929 986701016 685572400 718590480 526813751 785460135 344552485 273047177 846032991 685665070 132946716 125124424 190194750 925440322 940424878 300340156 22175504 533729986 623237407 368612859 394600847 354778806 418700781 262856001 690542775 209495917 329602999 308850132 337104322 573301830 513743417 907027857 353473254 139367520 811743462 550749416 535300324 465188514 24727644 53961833 196637465 713621719 607419509 945919755 495111914 523564532 996652931 373546951 182407096 173066648 235778589 888388934 911163803 295078519 173933906 470108424 57675301 625407341 177199056 511106684 335635371 627094203 807823820 902297696 561169850 672130934 851505181 60740335 449331056 477521073 799327901 318526751 264654079 791996716 8749455 414734671 782906162 819546875 875229154 196780085 704381200 451124138 803400153 974322604 480521596 700315732 902198780 474853547 648258928 58492408 292930807 688779735 30633736 613007863 622908449 505426300 80374373 872247247 382913675 104149120 188941625 287052828 389030915 356781743 943375472 985554849 411289951 435768058 990586919 734561775 147950602 210113290 23312056 893580765 571460347 543614787 263337387 463400509 998175270 379034174 515328130 679165525 697189875 892751014 855911155 808566143 620857623 802015216 785225369 14237804 463252299 439274081 826359725 829810406 125952641 421407871 294107867 198428153 576056023 620746804 639789832 164014880 511885201 572186213 219930364 623947075 22440961 271996823 141611128 776182778 227050078 7431806 483347536 745075215 297114558 786640472 614660323 679239141 602024873 969473526 274314829 855698534 368890778 364707714 533234814 748425539 359458292 454784393 47483217 480833717 939959886 689537103 148283915 643096617 100693002 894583683 952070425 96771623 968442499 884276284 314858730 225414454 140778090 787064014 730298716 650864621 46310923 281468579 30381381 916883251 732292393 276985402 618726325 720943040 594733104 604174623 471467107 318215770 93736145 380212029 454038676 364365567 967650458 415357877 227072758 331501357 386769752 83227704 93412468 329420814 790245450 996033707 965582151 606511475 565921129 95324641 655663346 89492992 205182852 112152508 836191630 344068610 828359490 445673279 729642496 414235483 18641022 230148334 195969229 596544680 455426399 696114501 819011471 707149326 247110017 872110919 368722851 820034288 992615614 146263033 968718029 452716847 953909990 829121784 134559885 904034760 326483157 317386874 425271566 2597102 65193384 759333656 869438326 407110368 243447855 80149264 121912059 338071721 395651134 644199408 549230117 127181028 149243611 146611575 460201736 560965854 714632309 356683384 204132528 283311575 545151778 491346032 796412342 391031866 583132505 389367441 594053051 369872274 734059774 844451273 908858178 105991118 525025816 799008633 62598868 240988768 786029820 918986000 46978207 86980590 469432869 26106271 373647023 835425848 493770501 578809992 891472928 739061616 571970648 208903987 367688695 86662945 473058999 512820396 831913073 439875019 871453658 859516559 976064712 290473849 10488345 77265016 453927475 813044220 276452304 439268546 590070702 36678461 902060519 653401164 872094462 150845462 363307585 236702281 460675934 641214473 399903395 838869537 575656829 372018045 715899973 620815183 890436254 963261240 567408612 639800395 271331362 300104359 242142226 728967784 667531875 918501225 803686594 821073332 978640945 557922820 312745120 727657575 526379259 360693134 802071292 333767634 437641687 665328469 2441220 827529722 808084006 702091553 378831573 167765707 837871329 97904212 602849897 502053559 399659095 58638644 452784351 934978098 287235155 636129805 44315109 205476354 252819930 476639721 993639641 140172669 59855744 639986417 132717602 681157199 955878490 494694976 645551730 299567004 404750748 793719578 285479169 998133361 714586517 690533240 641636301 530708437 12339027 829085149 684369437 850912273 645705830 121125275 924012189 807037759 208206299 308668637 150948314 17797746 247014291 449396328 791556909 7373986 726529276 71150031 892508227 682591894 417788898 105233503 599287054 681610825 456630892 109071217 517635928 362229303 370537753 216739813 779496785 835180894 478370354 553781889 835233158 471766630 451628411 618834804 221722060 370872719 735673131 579990768 326001548 342714963 534134489 470490670 574217152 42529749 261458321 799715266 472277006 205599020 364566880 130819781 145325568 152745103 378230609 152862543 879231591 745644976 730241784 719488540 520790735 961576068 961248796 137108132 533093132 11473429 726308761 444188221 249942125 922267466 325374305 826765602 795254019 127871072 912255736 713117763 711700438 228316675 311146389 234389723 709543590 29599854 603235336 241736686 561608908 354049070 764845617 936799242 287635634 685585781 180943946 535492389 386738700 2751665 918324401 793048584 953082474 139882131 533344970 203460313 692090016 443896719 452553258 101452495 712584821 155312279 938628104 514078423 552882269 49645580 189045050 711154047 846542108 585667207 168530578 446876590 892440917 277302702 698018410 166376245 611464823 200331017 28152415 773727330 647522327 607704418 222712016 175530894 737036936 866411084 837861391 34337212 355146944 548239508 738702957 813923938 312485006 670810862 246611158 919367391 425478533 624800998 421599002 274448297 970564358 470668901 217762261 123574964 323356227 579777278 672639979 708105093 248923865 641462350 569235404 386576676 26429994 361640334 41409152 685842003 802137224 619824997 844435253 676825671 593563382 20655724 925137377 161541681 161092659 244406567 375289258 662254677 480423640 991933843 913016610 676271302 785971153 781319009 256716388 23518975 490499413 40534912 241014045 712466663 745606310 502729780 876818439 166944768 901739458 773197258 244678873 508693300 279254371 93877202 775315292 999668493 328975782 139079562 784705561 324467740 393948899 830349624 538425767 342645947 705523388 244455869 756566980 307881650 556340602 526032015 847740207 800392351 23206907 114758765 693554760 293337365 608853883 719394164 141529131 798331308 302226557 261628800 684235038 360371396 814958661 671590905 198683151 456248510 131015817 394787801 659401105 745336959 733856973 944398668 728196976 636042615 590477584 134862406 751525944 122337903 701919861 579139194 87742788 466993214 789976614 312047612 779516090 328803479 305779340 381475505 287912238 130121747 715528873 181462154 510068847 373627809 283446531 593410871 237572701 749335767 832716554 710022028 38119915 450516256 503299987 735581800 186394136 424292511 390056771 895572119 48188991 21945685 777084638 49041596 510788247 920617362 531286569 657937380 184112336 862270229 332341654 978970354 468188161 383021447 974166825 670492640 658417630 674752273 280326238 465768404 335860681 412881518 912499400 358610326 856304914 225689655 171400782 876727046 565250550 41394237 641002076 278176219 956018393 812790500 723717955 716194642 192044408 635252569 337834486 97591113 743595458 23781213 637623538 923880049 881590853 950520332 289802679 600161829 759729661 827837612 643544030 631304467 926481610 790813078 785451454 280416418 799631844 793747055 147445356 323173069 856835563 573573483 53765068 699333884 989406109 259330514 243668898 488320615 760357928 563567628 831545416 184373330 886391141 137115824 173759865 869956365 301660833 789803920 572445643 436553570 655218513 86942423 528218818 331222363 52949075 573476411 798617967 511490765 482698754 370376052 450995593 381162007 935088608 836198362 429049684 969070172 266325203 716357759 46619626 411915751 717882995 141059947 366149346 788356406 603001562 179038264 194590062 533083384 60031579 65404408 863451248 503446295 210528381 156963558 128468784 808887837 797619602 368138183 665213482 465261294 696068873 367436887 446101992 836755433 791838501 828838894 256822318 157922132 59035949 6709615 555548657 287772599 170585402 139649875 554623784 335665804 180505575 908278085 71415822 55652972 337871183 984049970 164863523 55787125 202330993 139142566 563205543 691764470 207778582 434230316 391620006 829397412 527494408 80738573 756499342 122744634 812347151 798671669 917475963 166109014 775222658 460457621 537199680 486192108 751221817 983892556 457350457 973445558 447226133 471405438 897816463 160990056 161404201 852529151 578360677 349140281 4194370 511442856 688560155 769642921 5775050 523954634 413441435 691828975 270175004 77190912 451329181 875947383 570221499 175667996 640960284 936639147 41444681 350928555 211653509 836809024 257838869 869029247 828937595 349447060 897638891 757850897 639753719 401364549 138849647 813344991 27533360 91045297 587240871 333263950 81813303 990991827 371383555 409079432 989110453 344407241 238689676 430554934 852697737 973713122 960966305 240378656 179925074 510959923 336612175 560069356 240893264 418318767 206240821 714001769 798550826 574669556 37144027 234538293 952304185 536268717 477454115 799201776 829064073 422150894 24472465 644574639 992566203 165683548 436593515 291216802 389206906 320931873 315184935 923007738 374712822 28260436 776458152 937537936 99033167 454980572 285413038 793528201 741092348 840842051 806598673 937679902 678370618 606719876 582597534 51693488 157434922 102735409 210977836 772515871 629260666 676778971 930607574 297945821 4451465 101895953 315380241 864994452 701431348 485837682 899475211 221764986 435453237 431744713 211801700 723788092 289561667 229299288 374025723 715213881 337755824 177658625 327051540 456312915 375836203 593848409 495852513 247115415 102717018 875885743 788204917 274668393 912210781 708735866 928838569 209045397 359174826 788624141 260781537 9564751 646182206 525861642 515618945 538878068 315028168 536277764 557776656 967189468 74840836 591156790 507022612 655794236 836384457 959263438 561350067 922417293 236890500 163389172 766713840 639621681 837230018 18720568 548117128 449863477 355022182 13808223 276219187 28065062 530807424 276797904 470024553 992473078 356645770 126304981 498760621 483318228 337817187 756535591 856758516 173496115 539250484 546901649 363157473 192621799 173475950 44191046 314347909 821899474 785859412 197332192 922855269 128493275 264095231 395662531 837351584 332025427 357052862 866615150 67896126 172028960 977840866 851483575 715700181 619071803 561843876 209837474 757446091 122269769 39460445 796949505 603712396 342583989 400751407 238386032 737892653 725000250 97225271 906810397 815774317 40935269 745975103 774254367 571658582 696844306 226363218 210258350 375934987 864941053 266842576 256312197 167212099 138434314 291663309 314377741 899049537 21959072 789419498 729548424 711180629 995361913 391715097 603355750 466768855 164713261 894470811 359290963 553798012 257755389 33823643 56679166 545563899 425780898 710440424 200309315 902013433 471230790 928842096 641908086 908730319 613859735 626244760 933521763 171309927 301433017 856633276 818743251 497477053 218728496 915475107 106085639 396310726 923417331 339018090 341461736 508647770 308853268 520724262 143808214 316382805 550767918 126772285 552936121 139413193 28946750 37398846 721772303 247231547 699291994 617202635 249124124 953671888 502624572 720067995 659977461 721355115 672523468 142564805 401165946 499815902 559125981 821040425 299183049 233859493 294213728 442154327 410053750 734011591 738036377 314290982 821619444 599385985 704604892 589724749 245056006 173392513 582982950 112629043 393637295 628967632 179359301 881898173 23474149 621265445 476158027 475577805 863631192 721911687 156221838 585664895 566613422 495829947 134669083 830557541 112126156 434572097 404060963 819929846 398805567 55555023 253405356 11488705 772349761 119742309 632674442 397507610 956364380 518190964 554929078 159361132 225989259 873929677 860148915 83480441 210717919 156673171 228633607 223127132 250786784 473317600 430365453 884348502 527442138 292252729 447279173 450297840 152272584 878602285 667537498 337806969 926212027 870723462 128411862 614190266 728296411 949538611 292025446 286241035 948351136 325722069 463250739 549444554 269079614 400860730 319812503 98063334 834579232 387363107 607735283 733061939 444029504 719903977 832934342 910196566 527256208 940125974 952030810 787658067 444914620 492772728 122060880 665347070 721066925 396246765 4748703 484839365 603312583 947050980 939810057 560161315 636739353 531979377 538225352 269501786 469233389 654171513 59937762 341651318 527065602 525404442 726418492 17798486 32224819 897927051 35260771 598426124 887928449 267025095 921919530 485206308 940412445 179058612 953115501 959018072 912600303 713625006 782422642 152117110 783273669 204151089 657351009 791907865 271609644 98982037 346990944 350231620 261622541 416078392 844540568 951924341 412013999 633692112 507516995 846038200 543266698 314298412 656904365 584798096 550552771 201025350 330412049 578335785 866708854 705486578 929341386 916260717 179466292 603200030 283471496 270119532 202532917 995808844 945715136 223147395 404614159 304854819 190976336 823358226 337776242 499964127 539100069 34735473 856561408 1726066 410895476 908023564 112570634 235746051 352883161 333103963 730652598 587201927 8287994 649577091 84617483 63913128 273747236 479064646 793111882 124202532 360814337 272706287 285027562 852636019 691579848 663475648 113525314 408935392 982870994 809383811 405665094 548614002 249280077 840706665 234285768 223602749 865257869 3418944 798654276 477104922 445874648 304712805 791738636 381090223 364261469 659443547 795442692 720528352 86362967 269867448 140741756 435269382 444257157 852381326 686439629 483157683 327375307 460067732 535125342 172299920 495265359 588440752 145936520 383090970 767864066 631528105 636779991 436410632 235043732 848090624 676416948 430715811 910209348 667081392 692844353 805748266 851235410 346408221 528242431 147965021 42400144 170305413 837530743 974016231 820040735 967246252 126969696 715974167 4872237 222247962 800191009 408876984 157280625 992843736 990457364 479161911 357795774 278140694 950250990 428814146 435927574 259949196 165959745 821420264 130017096 166756903 326187350 448201714 130697127 318581635 457109652 628295139 736154724 220671391 844610088 531035662 337778467 643123241 188286081 644192757 960935939 970896040 97609495 300326242 934230123 198324776 468852088 748223101 931161009 31804445 459377435 598651610 627858191 798414785 805228171 988072339 744378763 775771359 186772180 287542491 308364753 991265749 722515876 929176830 715436238 232978937 760313610 804421326 183655791 887726257 706719962 230934186 677563275 763777873 135198051 830502264 525509495 704096383 779106507 192818069 915233027 546260590 67470452 74742076 417029293 236331044 626924993 176259737 648993263 73160726 925836019 342411298 70222669 866270650 522170165 910160618 22476160 75289131 976212740 621472667 300443707 911679595 165085425 348089427 21472011 607567820 29339224 252655403 809700357 530067101 791979236 920229874 129483339 920037363 120344162 904740159 65542487 167353443 328239557 478052272 178773186 37430186 835743547 808447240 67571586 996668665 508333653 667012335 758035535 910036909 893997671 118374032 716599599 934812236 576821015 407657469 636808782 3906065 833572884 414790769 860452655 48022388 795065063 311833807 125781742 469871487 667451455 182974086 465524432 492237178 270729179 328018275 592429103 602107546 861416046 197929181 155898917 872879087 659091375 366444516 352265250 211286558 864935089 117011032 861003585 686822205 299404341 425588317 143351104 197047005 84700017 135102829 508535516 285748833 553768428 330333958 131014512 481700045 961239482 365733462 722790530 828917957 766124519 654441290 968675267 1359530 454050975 839524005 307167663 208941873 152304092 369413888 355817864 257705504 635491513 994616136 814179182 83911821 338939713 863982735 424537621 490821069 863486748 264957059 63272707 81820073 612882186 238859518 3564410 414201515 745393138 828890226 718913081 339092475 449007847 784469812 290367193 598886380 763122075 453045636 109945728 515926169 531553135 60043741 454894772 228124387 590931642 78222043 292202076 347804251 404485582 295618099 427192832 913169016 712898255 83600482 707930930 559359472 832381218 36481610 480824752 676893330 248960186 308863324 458608315 562418368 487731052 338430150 81426303 202503511 712327129 615347419 421444174 672332333 794066243 924524157 790826886 983473857 656233025 570843096 408718197 406788373 875371437 273064430 835372086 625117981 421392511 850565402 151741922 849556253 31268664 773305206 822856319 916489851 607738355 698542522 362746050 321431821 40188670 992082757 580010426 251836141 711005709 305933617 177108957 110153473 935550335 68273925 806366489 987095397 522689827 378325997 59027004 23734746 965909818 654681006 982022858 899678555 272036178 226118758 690229902 320892017 698406682 917907129 543544024 812481455 175541065 350215058 258275330 573444786 460356749 275677759 150547902 26658041 182265957 508606464 566829559 37641378 648359066 493109188 82380965 274939201 56949027 640546900 326818420 284104549 841981422 327895269 472361315 275767430 473072018 409248492 934607310 980784694 128049147 971613779 144524138 361007543 536073221 506492425 729226044 406513998 340060527 566013874 845945268 841563094 657720199 265449394 696664444 426683576 145812048 912061757 157467685 413445648 217534576 913977100 497134807 467318100 677053326 741976193 430921438 938583154 290739369 111562348 914200298 414310159 587582166 645460848 321035837 206982486 724061430 66653115 854527198 365430655 355334044 480262577 489494013 477257439 607277114 282516101 952679178 728566551 859851240 857333899 224872316 901866431 872382746 128243977 80762025 322447411 650804800 610635858 411914088 265330230 521507791 694754295 236126683 475871842 245678283 850620792 339422179 433211706 118853321 840371894 335756821 647565129 820232126 118740355 280297344 592305815 690968719 514328581 148439149 474375092 269786641 774544141 715414398 29203102 808023967 940754023 276405395 773914960 582688731 36152728 353272714 590094838 877912929 810114224 977962734 478618462 872602482 145273949 436919404 870622664 478329628 203417793 328378050 382353632 814355108 583709836 104754347 538409253 612764990 297816487 425756509 426901703 736990495 439550345 976708158 95381100 972827673 570806337 103308372 898600377 715366532 139762123 408124479 49251482 916436340 526635780 134856803 647228014 739493843 577127788 160360391 868538645 425045600 739470454 963724034 991946281 760980856 927430641 546019041 639859336 575067797 927905184 328452683 9190241 892835743 628363364 52364904 868914334 540329693 726952352 898846103 573164461 913864964 243823569 691991041 161279135 962011597 966408985 219777763 397047207 526259202 819168394 97372560 755248337 35994096 449483084 636315831 230504981 293067324 636146901 892362528 21030045 922742168 466258832 986263241 137709974 537030311 936716995 682750193 807181690 514450645 334615608 305225141 7368992 980939846 720426675 493075281 431882926 866948965 361780395 868819524 846901271 940173965 491570436 263331434 37010018 622730112 780923803 286932830 989134323 379466508 116150490 50892777 716999837 326299374 888887756 253191026 255525998 104685243 395085264 820050273 783090649 734967760 202345759 948483143 77371388 181467071 852759676 336941805 171399037 841471530 709267014 678452500 726266505 237316815 518627918 571577155 899277248 985272778 65844857 808085885 368547948 873346585 440982317 567419416 529441131 337049160 800209189 539041834 397351707 660316089 122211231 130778811 129407951 786569177 643390686 195307975 515216124 952778376 569623963 729868333 215807582 906440669 403262965 548837604 952018490 864986153 38398995 330118266 948218509 155645474 771957139 491584086 395421365 594968914 587674729 947993704 51597097 517150337 678764062 776114036 136441276 350077863 121468310 927660664 810130922 751488645 731991301 652631029 474174052 65438657 651631950 442608205 292670663 757812823 110204078 820615023 10754556 724423410 749354065 842998731 118657719 577258828 544565419 181833095 559443047 241795299 861520291 859963068 217209249 951908546 107846693 926390311 783340534 608059414 211649188 635206864 800731088 834747766 473173772 532206288 230733296 55489887 980164788 670772958 677386945 422910798 976180711 156709242 840504734 294689262 55296612 133663934 587291001 153485180 595689252 405124319 349057846 64807745 2786026 716648818 608692735 784504448 525249452 771256276 779505944 546203304 890670031 742239969 46008747 55260613 725999007 299323902 101839412 344170535 577110923 586789137 525095577 849066763 550219461 959721341 375563931 795955015 677172842 650732975 829865809 42519826 107666285 463151065 403352846 431467068 843479143 638332319 457098229 780881014 934790803 526136970 679168309 350778592 612227717 804077403 212296138 387907316 781434672 942600895 954098085 400116625 913915326 830843749 398156952 535179253 256646368 68336216 237322770 763428973 702591155 421688364 420546831 848150672 796277337 142998163 367339648 905441397 518241456 43463018 819786131 548059339 350228272 819742253 546421193 56580633 283845368 708747627 62233777 555209464 350189136 217747940 962719105 643840170 408362606 994791681 554562906 580443424 854606353 725096104 354672699 588914953 874494273 503050206 982754423 76555170 542734964 337692143 574361616 496431953 887565273 829482813 56084113 236080469 576435474 965118258 708812877 106583401 787142986 601621478 653731454 298326054 339161595 722140232 621531803 730486366 958867525 512714577 344838031 374128446 450553595 13866657 57138954 181690408 320358909 445057322 858830002 744782097 170113122 131261020 511966306 354207674 469354298 790007666 174692961 117362535 919481608 231651610 120784035 320000419 247518865 918761878 286576662 483299022 709532374 215499201 855952930 221502172 932470572 197370139 804062736 652961726 593039613 273069846 675451777 450480169 992619819 44269079 346305522 687853175 143937014 607920427 113655925 797110744 401819711 205715133 751826989 938879804 33135399 644618167 275414582 461403210 966297423 215937764 119044966 865324087 308770718 132504290 252041979 71609381 375614865 610884908 660396776 562196462 365333964 303485711 336918246 934655133 27920745 281674681 489354255 265882358 712520592 184740174 191714508 409581596 911341546 804311155 887507892 429947491 489711469 607793066 41339417 679242543 447961913 244884310 709127697 448502802 312574663 87270174 641325740 268545582 689053491 151524873 528283841 148651932 770485010 836908155 306076485 954403606 147455832 846000525 512154064 460065721 434589745 5368414 731151003 351740609 346060944 118037165 416484784 542079677 131556472 473511520 632074775 716973615 250512865 426516473 839418764 106701186 847438351 169420303 653108346 819368545 988966135 568089811 568881431 907606918 397712965 979743142 685482073 42573836 373273496 790074423 991170012 559570071 355486054 393508533 454792416 595993246 564519770 528712684 600856078 568265442 63705710 524253915 723585569 193043843 558252011 878187133 894286292 7329066 195358578 505187674 91623478 877401879 919263504 344034025 953709343 471105006 563025352 201056240 720162350 236366611 306078421 407262318 18822088 441802413 681787816 870055939 997482090 487534430 513541943 688012577 197371283 425446985 829238938 116748486 350849334 99955012 596662719 279418275 693297076 797251999 83083019 707896482 281926932 218759340 289406461 783745074 738465220 362868556 658086848 207380530 405462762 987392145 761969132 929294181 61714180 27230391 598900168 856559316 145911277 301470093 836301407 882066115 620719208 674299866 261767561 226382204 685100524 265467662 893951687 538214532 299881775 57550422 238745125 816264261 577863779 935232512 233838659 329269681 98361599 836922872 862181878 720383630 569026683 408364872 203324617 611223819 512669228 294882815 463382491 259764457 713838540 619968388 290259937 943426273 871035958 545621414 774094980 591886918 740322706 318132739 270580180 121148832 553073681 736197501 109947060 468875433 737355676 120990901 626294913 593866147 23799734 443272962 367328066 58596528 445287716 819905030 453011699 1540590 860755013 892299423 564079345 872186365 59308005 661736908 135751954 912243396 444687730 526191462 908531441 784068362 573921868 789265706 747873638 972880388 36651547 222769758 579632251 982054476 850285940 213902097 409856255 582859458 509130542 94581945 847206893 255459259 187695623 932971215 652685430 975058362 870769141 390908796 752698004 179295161 374030891 856419630 542759771 767740824 694495279 766208301 356921695 644718722 130031326 99162708 488083039 735197321 494320363 296044320 215510825 341663781 670596628 339394357 355456764 409502884 988333012 355930625 14279312 497093116 650042375 172697978 821220274 411279246 31024587 456457533 611813238 537037159 820510794 800424172 411354959 417209666 353924792 699793598 380628001 275456030 102973257 185476799 462244568 972695346 51025801 662752172 703596383 980243825 971885425 477395435 423503768 846420111 296205185 757316632 459710165 922731359 382556365 933245735 394394541 142406320 170562677 27649249 823801390 142542932 257841172 780872957 419032955 296395583 325017496 170024300 763865871 654990882 619249013 3342960 320796039 876372284 634123495 132185865 745042265 905338359 222221968 183138396 609717313 560701669 633653821 493310056 533232261 386423163 855574515 247174808 214077974 575942336 974646467 53534000 636951826 712815471 714587117 768739612 837308208 382073179 292242041 229169020 263248842 518712238 766305667 842632989 589003725 740254588 863976427 96708042 834935585 373397794 86181786 486730477 792454674 631310955 303044697 644674842 744639799 596607279 150643979 996845536 489540585 998805476 67029754 769260501 386533634 15842003 222719173 317718067 836124120 725150637 703538934 158400654 78913368 343271816 441909446 644890578 678202695 235190206 837092490 33682524 894362644 782070610 492616179 457467714 603317631 833089111 672242549 833977869 291424977 520247368 516839344 65964096 896625845 811967348 225906839 30260302 139918423 457259030 94438381 594825505 110044414 322343929 203516162 981072217 530733466 994660730 593417462 681076453 805806312 996296875 679618790 482628633 634857292 826011563 783853234 852805369 483902859 677585981 794115204 58598951 852190114 509130057 748682974 258956493 975351248 829994868 908588508 205987538 221264457 727463998 419231521 842718673 916774582 243355722 811911020 994021840 130613559 414936274 78252479 361564900 535618497 765517002 395087070 49125263 761582330 49268784 285150171 571153663 321067999 836675120 454530273 519406493 121186480 916956370 122579842 961988379 808728209 625617961 277771366 323152939 638313323 283754843 860900354 694684258 555204354 485715440 286598824 80846427 939578803 4710625 801247241 928626613 594979310 208059777 88116626 756801660 93788067 338391392 319223283 960410778 162413346 574359189 933051567 293532978 983936446 413216417 360593515 656781015 648212398 102308996 934186253 454688169 281349849 962597967 994485665 281403732 635641800 974838482 53463309 200653094 537629032 426338299 538110029 534624246 459146922 691614429 737094255 120390476 586785076 128729515 522608952 142271315 545281508 345636925 484731072 897609533 948663103 581118840 304101155 208904869 124107287 726537436 734698025 512312817 681674171 859590150 419703271 467852406 702278988 932524727 588714873 273921167 551388787 352897617 84365256 203093571 617414920 976064266 755028968 136927318 459838535 305018492 167856436 42382872 594186720 554026059 312074909 624570608 188826059 204496244 333510618 847316581 552400337 455480133 233490980 229882350 292539976 612362598 276877687 796043027 22399343 636192232 89867897 646290913 928702991 372949059 169026737 682553654 186643368 444237250 461177696 532770732 983448671 432003918 900701725 862357751 665382814 884804775 963246530 985937846 91692023 332408162 913533629 239077288 162956266 439541605 996553206 96031628 588968821 754720112 459062427 950236644 955463095 327686294 435045257 430412239 980869987 203623642 198194360 846153078 76427112 342062789 684594125 26037254 151214992 188813468 493374989 273508033 889707832 456551229 848435957 749092209 659942471 775297035 52447184 335559382 565011366 258674343 604906372 351068408 463892141 644595200 92931692 283069307 644975679 958079699 572561519 249559850 219764790 156690674 462260531 644920365 829038648 264136485 298300989 954167449 41642589 12927498 674217148 311377377 411739478 421935427 640884219 174683390 927440667 845680623 120690443 16673206 776087848 466929705 541178648 134478444 270913579 768477742 468609019 719567856 424926951 640955774 983285022 30377798 705566425 865343689 514616941 140068731 371421244 325388456 964552803 738377129 90662972 836530302 756031647 186267371 868471173 991063246 419792816 339918642 985030180 868479262 284744741 303329967 132961491 76182255 266758389 981919822 316902358 377134494 521704023 908593289 829432200 309857028 813860019 466508126 348662086 465289400 144115377 209001048 396408284 825346218 233559432 182512662 717937648 153394392 589643694 543080016 609248188 976192209 767828524 761270397 444780351 975197445 859411825 720492586 539158950 227562844 538490555 46935104 528491912 96219523 702438460 382535015 777710321 283149951 574337069 23652678 801686599 372970680 777399783 776798628 122819842 995363932 787430036 249271806 793286997 51039053 849214587 785997575 997025575 748965849 597623592 223658053 957721813 254829041 940550200 475516836 299678372 247783493 158139462 774233165 448603172 667974975 551432155 718530671 270263761 719118930 535475951 265256815 758580488 394510082 640769299 201811738 41804306 272173074 593230543 825572580 654006994 161481531 979480910 860139036 348883773 658885953 642128295 961259632 866029868 365299428 553754249 329518826 826896898 572306001 173897156 457143887 962772600 280212898 212673722 779879567 186965917 197450078 285565116 418884494 882133446 136751853 402319185 302307805 107615520 133610101 282247682 912959877 483880842 487132715 780801689 542798705 20917395 397799931 682926302 121177994 670895023 353569008 447809875 269290126 111479522 65934849 442798342 829175223 711166559 152061835 821511390 567493632 831690546 875440031 221363913 337694536 549600544 67231510 762410361 332695609 145994628 125939301 862775013 595496365 733346250 637113070 845583452 993084523 379524771 397240655 155691585 375759829 653596029 739304773 440281811 427453827 753086521 572448305 418523330 849438620 873114605 473390653 983219407 140723300 756851046 365478148 290645776 285232445 245515054 355332948 878134360 798522147 105198911 263686156 891589471 712884713 561665812 785240680 276884940 588877085 306148404 65112272 810533531 694894257 658583273 430414112 552376938 706834085 247179706 69957645 507371879 644603305 231717011 297738267 893844927 774397261 872186935 13472514 750711578 743581350 249836679 849409069 497617716 141463852 855303160 884494500 349778493 201612903 345660566 518701932 255266399 895567837 128277549 257583451 358369585 155554126 842274510 323523317 22824857 947148442 882236620 235418245 645186400 723236657 250990209 194388224 366504684 370692904 765383951 136936196 788809829 675215925 525452291 169090572 805658638 176422052 668815228 910239857 892122766 442264052 560320662 694611968 714812329 194151443 624229794 600098535 500354275 538499317 675964518 523107962 888480416 548261006 337598717 995228144 438909496 296399536 608788148 485260712 741328763 148512270 501560331 412920421 564487126 805158481 819917038 968789792 775047181 925962873 410838716 930962045 855887780 241568681 406487560 753295927 36497436 54999759 107451350 179131902 830588086 334994147 529583405 402109132 234361483 643183388 215653639 848313054 218966711 492662446 377518572 635076486 27060123 814514776 190179768 619961001 974258888 756240612 188873830 772263802 249983615 737938432 483392623 400727346 43944414 862315251 522744551 303472957 937215652 383732541 200980878 170035205 668854165 408566315 694764594 449221341 671150037 526554378 897087446 299285185 85751117 647216550 365237007 852127851 282325794 306489975 962871547 20060024 514794213 533784626 781190968 866333084 462860411 531631375 185340287 885520658 968511418 476672025 139234114 632945093 905765333 131956704 226355857 897234220 174349194 563199088 896892974 677671118 475210154 122463930 521835350 820708110 276809842 407601704 73887327 28136205 563172382 638371885 595914760 188812722 164805556 859274366 636259465 597127331 704221435 112991700 136433296 868340126 779654808 347913201 532133616 196505880 524606364 251523738 591862437 72537270 275098987 205304203 724662286 304447115 360743075 333303793 775962536 163932978 940157361 309871428 450962826 106905281 708201832 735750183 605898183 901903170 910999007 503036143 137721103 499848799 824445320 12455383 591274108 727282067 924787744 987773970 864488147 792540747 424948244 700582856 707533872 951851829 563350550 133723195 457399933 967986575 339378796 197458755 326962585 584195156 151279301 479083061 710538874 848284329 85541466 233635152 853945176 88411031 382545656 984514199 716308906 114022384 332427535 276703798 357127109 261064671 470598937 146526954 876068609 267091490 461193071 308566833 27182670 321086903 973692598 425261134 827077705 40708659 237866582 425476252 174934115 543775522 620243387 584720715 757226773 801710383 584986965 649937949 922208094 176693020 284098867 282144105 929564620 285507025 345929868 404186395 894303899 864994025 515112321 315997275 891399303 608623558 462948278 345846438 744713318 83549809 231697024 286270037 646896673 983139779 186891882 840111974 891712449 569069657 91103445 920054877 989355411 859594641 900036632 477571675 882918483 5951716 399506181 118433239 598055508 415867518 598698725 117145432 128704202 257817022 209147634 398720613 270136272 140143629 242745970 705107960 37470359 374422897 765523230 261337848 203403336 132783728 665428196 325066893 651528915 982835565 750384998 979953916 916776905 255480884 491834285 610476240 409865413 61752624 789891016 255057406 149195590 332507276 837095880 904172719 154309613 278676907 382825284 788452680 844124411 968510319 982074994 189400215 919135944 254627640 612667234 776867884 136156777 509172979 212673160 180776516 330623108 215356933 726703357 428409133 441208989 985911654 137639768 504715056 982464982 301841159 946252914 195021000 600213489 754212601 839230228 802441313 863208885 635902930 315428078 578051993 744384558 852257908 607705943 341554746 889842143 119603144 166875898 860112804 488570366 608901912 341257106 946097639 658784083 293067279 874559750 780511783 481600773 698819252 763269712 824729168 544799734 92757457 963316033 761809937 295173216 193334339 345858011 601352518 273976176 735763936 505008384 203533452 437191614 423104540 629614311 915405036 77744887 46136575 899123805 931750939 591487068 24698044 503697708 760717684 576533262 27568246 822812462 201154553 139727068 485892850 417266457 692032717 813572965 155404494 490711009 431166631 182831817 352578633 6091569 263399387 850260720 806352713 152572036 600169470 58178193 793504770 266658013 890790258 133225706 221626641 92359215 495092439 134648297 358876993 393631354 841484098 735556301 105810036 822990142 401945724 895733133 434240652 166636677 16736242 464008894 894647269 922251952 784108494 177999413 24559117 506260317 745532468 856084577 447425766 546469065 335031484 83487482 95091765 48557049 968418483 447461505 632047421 256006419 213696610 624476484 402778088 528753607 563184055 604738124 140716891 435876348 619365198 636952363 753930648 115840857 362227478 657715679 337958359 257353853 842351553 131890506 800951084 962373089 485206362 413870144 688069734 839903232 897476797 712097007 102471685 919229000 227073205 48482271 628390764 232445848 759302646 187534485 741096305 547097616 734304271 715786116 999396160 142461049 996894103 649630105 507840694 111789055 134349403 462224055 663017843 193084498 136056455 234697927 813143436 730676313 655979589 608251988 419865318 393930556 625415363 826721900 997404981 974936604 568982141 733283320 953730815 680855233 355323271 806467363 696600753 38358884 790033381 6444163 782120760 713070046 251936957 551010018 817553628 531118921 55046052 171969756 930518533 252972933 570739290 617217582 966835852 201383612 185818051 918545897 921706132 381337128 101931583 33771448 26164599 156051254 723316876 165508438 960661317 210838134 127658601 284605605 822023493 276402157 229535504 194536614 401836032 507617153 567016359 68529340 840347 289189065 907320801 336086721 77821387 856409945 559129841 614377817 749875212 885266919 416092269 180558118 612091831 228197532 820391521 973846247 366394279 631620312 518831349 242880872 798945213 179037831 507024456 483893157 132670574 57768509 751514118 301022151 892946425 375961845 536237078 644344220 700368992 825992808 556698262 849954864 467369410 742148008 442123234 986568429 365606225 869047112 136904099 991289640 491484190 19530284 458197857 613819284 95220764 40375784 998799702 179569405 283584835 180435087 959325559 557624973 651242389 957050393 778325450 108794148 938422299 523338427 370490324 719148806 329011629 699048484 42062742 21159183 632151483 291761763 946041680 491168992 353228591 798848879 834733669 953277416 854728218 838359071 428752919 284213328 383411397 243040685 364345113 837009148 291500144 721934947 702175012 982815767 598990380 24410333 463826632 629590741 410850295 600676907 216621324 292831249 651913702 262312974 45781580 305705610 901499900 981264086 928694891 120870520 760584716 306629107 146796711 463686748 911971443 847317024 430683475 920665255 782656087 121253393 609014118 442823539 439390719 710036804 187234934 865449967 933322345 604829959 177924176 926657579 899929347 164042769 646702144 186475496 14009440 821628491 351674429 488878336 535520911 901700383 680548531 257919235 205781318 291946868 298916529 944551476 880577687 201210432 953295745 259124798 131432821 191710015 966729708 452629679 470724733 521653005 128299262 782914612 43825382 319028593 643834275 139687426 425394684 507357663 237842463 259101198 57293786 493014721 901123451 997912929 719114212 90300925 200485031 830462774 150136170 439333350 313854254 543236482 780464849 539586791 337604131 988595233 560117814 771280810 716544102 288808905 209414592 890695826 224862149 510110413 430149963 506226982 176696293 415781408 568407835 346639427 504090526 904426712 978144168 925718689 938057270 10893076 530134566 308907995 294576824 540205838 196393737 600724708 437593411 745134288 148284979 56521402 14002594 583630265 60222117 756793072 211534125 62257733 865209061 732827587 399233280 955131439 376811912 126131719 569965964 337665291 591723709 170231727 40300217 737245944 396774452 60116766 979629464 149178163 557385863 132948905 903903198 130296537 528110450 291693152 506784811 316419234 2555348 934707948 856462607 803789218 476309449 974119353 508973012 749452489 229098084 487328176 16118013 547184040 595012654 896645331 560644481 891679086 243555982 751902408 594286586 239937338 788392992 451965567 325891088 826149104 98499138 373019767 665522530 535909160 125294413 696802090 882554739 161742223 760464385 980878804 300807416 466156729 246643430 552334335 953679171 248749751 229568311 227387790 311121196 580685955 902195588 143883195 462295326 470332917 321789995 869911722 519043998 90443395 250473321 151593927 562062171 805568192 610347195 833642049 749431126 255006621 661045576 339664997 70734221 699159484 934672159 155700068 880897244 198846008 791702054 926907441 34723914 571236256 87932329 90961360 471760089 121075785 763441846 34809263 780600262 749228685 558913517 427552891 368074090 176379915 846875888 709701666 675496497 940051590 563056786 835464141 889995905 11567296 906037313 803490604 58726582 604276055 577635117 116281793 941525952 312673245 789028291 221786713 345533129 596797255 101924145 494580594 488461489 281896039 24514195 916346079 786319748 785882175 265143538 571914733 496700553 619364006 943447615 144700346 102704915 301634630 213433083 462835928 761916099 157068903 71743622 446881756 827922567 50469561 688051335 765414172 219042307 84605895 862615095 476640536 323006250 563430267 847210288 553004913 193023135 998162380 912953414 273054499 509939156 19605330 820958438 306052245 806129142 742672687 601310439 766167075 859766040 70367695 700537621 809752780 156266085 889938207 682980638 527299352 760483526 805823070 904772794 161749121 800794951 658057519 330098429 650860099 887124489 743389730 613740020 973170771 666271994 854334991 908447585 363600599 6847510 925018497 180966419 709928131 275620271 220129043 520716616 730045299 362462283 340536465 837617644 668942708 111494216 556542241 477177121 251221521 961427953 784110409 904795104 410255639 9860890 577081626 241131423 36091191 163818250 650437475 757767413 643611745 938388694 38800520 199116763 320411671 635666642 442848392 432803006 569850195 352548891 128845108 965923969 72161266 113714147 478339301 590421246 346755662 444683431 384277225 784066294 375730324 90861192 519452690 884348696 424905315 378052831 234786979 566016116 61775389 984017981 897014320 807553739 720036685 74957001 81938026 38731604 339547635 397731202 434450614 670452876 317765603 666778146 872209015 244833197 224241583 460421197 581793076 136457949 379747824 95840531 688655556 368651836 834929920 415889091 390028410 944722518 429163052 260684549 59815390 229403480 595349278 590204918 107489088 859847451 503956269 971986959 666263219 489427860 389294398 500938557 262303785 32887652 323130164 633639087 199103928 873186296 703819798 119642425 839140104 888698897 32174427 535674160 316389075 984884513 483856192 765657925 71483459 910363293 355239718 796004619 627686443 313262770 853541530 11907449 519020880 686849272 220698622 427171971 547941484 138796556 270238947 194113394 420039076 281711944 748708776 747752145 371745602 799222548 47221726 974479748 915184976 707793768 367120912 422074914 912231576 874710232 243237896 211586563 734160683 993000905 813833752 753056957 762124563 621209230 542149741 251818463 824824811 172147656 128621346 819948201 843169113 761136167 295121004 159723195 438831307 872455655 442979466 811278218 860089890 37321342 423869315 647816006 813663479 303309977 514109910 907480408 318920181 876940162 147370774 840620045 347284655 974236858 665237220 305853662 490187989 401777908 737282474 886020686 248592699 817990079 183543768 656654036 336125093 382182038 983491809 63346292 98330463 273269733 581654152 928325061 203657708 109377176 160625247 885843966 483888603 127844031 226300258 693160971 657013803 947180213 468055140 953527536 797922963 439368205 667824814 37725745 300330152 153430318 950095271 678793459 183038777 501880183 102149773 742648518 482354400 789563912 805707210 421392321 825048673 642670754 526735247 975192282 755947174 767864906 725966415 67545046 304521765 7916110 519948150 13526958 690683669 509405828 488593278 649373264 955958659 88910435 617784597 669780884 884043966 622971092 711848573 508227106 789459284 838988603 104210817 959033209 19994932 680217650 246728298 972151979 873825097 525980018 302928617 144371807 531194041 308548978 450096335 694189059 317419119 645266043 177929632 971231323 410057067 962132899 142068590 598812358 581203806 686677360 482621559 744248481 53386224 503578789 661374773 539367118 130315814 852832197 239426916 573144234 617974567 144937896 763428371 770611203 197502033 907958041 197441519 350663014 485187470 394038009 354793300 995316345 758112245 861775298 94964261 404290095 779076160 583848472 40382008 560692428 1323627 336762345 314651242 220593342 755172119 640009591 625449143 345485656 983155662 23356001 1014852 237909067 165331462 176702173 610387698 23448637 734973829 343080070 191559557 88873440 747518340 713881292 319174602 556277605 312426626 895636277 794772340 298235110 108310776 644553244 98242836 79942790 75296664 844474624 913602436 883362613 628831457 152800298 135113664 922841996 42490990 426740016 761799085 973431157 109293178 530008557 345640535 64989837 494203921 114701417 243263722 122018052 208332906 513068045 274558252 920773456 737800024 702373835 18560872 850656458 100304327 142316089 7194402 967658955 143079774 471347986 111364525 652603240 616933202 354295933 161346386 555487507 681633742 138074191 378732021 53236370 664977987 311939889 336956007 3503522 934395703 222563912 506626094 323459654 337001254 17881776 796820703 658613962 544768740 705852263 415055585 873921173 770368842 65769098 310739810 146951437 512294987 552851772 628368191 420874216 24197154 713977906 586631751 960428388 549284910 146096247 791220850 818823392 895728194 454576816 963259083 530127005 341313038 586837015 406272090 343496231 287375546 633266984 57494931 963711885 257764027 466518611 281327683 7721022 579348397 678061492 777644691 847724988 378667265 124675669 382131706 481658060 719751369 920721941 481499050 136526403 676855357 112274052 835394579 276036113 632263077 935787602 801445542 690393645 381927500 259025982 464631606 627027450 212192882 163587556 302275667 450555409 774075650 940633432 468129280 174978170 345431446 397362071 644094880 332500364 396763239 577372747 121844693 27645105 586040444 482063427 924900643 441888934 765458553 95315063 717491944 337771761 238620208 324323527 501635253 563959341 896411206 795219270 115549147 542486986 152511172 902361449 795558801 79466021 62941533 732873442 321482125 591883459 928274908 628055312 582601968 935795297 801621466 408945720 947770048 492145435 414259676 901867132 746262725 408544748 494036743 848214629 241629262 480334155 837387974 269762582 88787211 219142976 84082410 425373074 255180986 903115304 475349079 572292435 572248661 918829769 857941172 984760492 354867750 681728160 938830604 308945321 626494785 215376741 601620390 152165113 221805001 193890997 501129957 74462435 666914467 928305663 668106168 841074472 39757271 136607193 355901808 428244016 893742766 667805948 345029782 254816157 403248823 656345899 798966395 457231944 234919395 409401932 690499941 401309019 962841664 411408860 758892581 338838897 933441760 137729309 395807367 765156073 297404661 903002470 515905718 188811831 678580684 607525602 815998541 927882567 351046614 788868514 191439476 649574489 343490652 280531467 646665539 910228891 777947391 10462771 649813730 549538752 670370657 494958041 851203183 197750986 918353203 546211320 723460870 199486351 760386411 747568764 613471542 200017392 560729614 910103996 891729740 269957501 22938860 241018612 522844103 381528845 373389851 966728552 512862207 159091334 263834862 806713250 921957963 990385793 366181763 601043475 197403956 462814361 676142034 195064124 960777768 506947143 418168687 99745119 360017222 41157768 687316014 674238894 346732960 62733933 915273365 394853598 686532481 962725651 349866717 968678006 299222114 209937824 174993268 38666038 185514153 437529513 426556064 144266547 857343015 644227053 173974898 65140637 452092693 236029489 252755510 616779588 94891717 722378864 188487286 137899728 649448897 830161366 611079979 666378361 488777572 913911198 648711832 765294103 455153143 275416487 914648792 97200313 372159756 801755550 177784602 506541816 488816229 564903063 581545617 946251389 221265359 193212639 842280574 220191681 136799485 776378406 103051375 809251944 324283268 729356730 760113127 397763130 306496153 520028182 903411355 635272058 599032005 571713820 636665982 955264251 308395618 926646690 199287427 769410581 513062112 536153523 166330027 342337143 905401706 925316971 310556754 10746845 887205180 344362543 60933128 740497405 767774506 797138762 577888803 895849042 60316015 524394098 610161426 427027484 824610159 571336548 406992164 820433961 25235347 303784516 329318824 503137939 642943984 855446339 517885903 568476708 973363311 675582423 833800327 829388772 332938899 407545476 312189185 519301412 993413190 954561899 835693938 63869675 750373695 910986871 66343680 585799582 880403327 850253412 144814278 913231285 768006641 185892106 318600224 889939349 721696140 785936765 131066487 309765409 577631908 284098073 509712811 761340689 163304686 936878891 272564306 846118299 69814859 207834364 612902988 911992848 437051288 852813651 877320587 141673833 336814308 828052064 492555527 758042278 398351913 664172081 605996977 423737085 864050781 842474088 499999299 89310430 837338877 707387392 937396213 311567807 175131611 456432660 688943184 976026055 659430426 912956330 617712348 526989332 627301842 533571414 208873568 940027256 968211106 772040040 27048051 774958975 951200326 862560490 350410122 222790888 853158377 233263057 161341281 269710449 235875741 225248298 424223729 388534818 7616369 59573368 849723452 569963277 861101215 573740548 169472213 389163941 572828249 616685311 469444806 66485816 680321022 673077733 592720717 834613983 303902898 522223711 513395733 375146828 24149455 609954182 935533576 92410094 871129676 213005929 801634702 508513379 881181137 798973010 713737064 737055845 561995524 856430716 417765016 452135304 627444829 926844086 990841029 182159346 483356931 377138357 424699249 138973586 177122714 728029529 974553175 569163642 519766316 117899292 785706153 246973663 152786478 419165814 739072389 937477772 10920452 963623773 631696947 265944795 933580639 67103351 924582600 196101604 830392643 744040973 335773977 678523849 463146910 924183843 202165450 983955513 516291026 245074563 886684727 904659526 385312905 152606752 980995629 124224647 571561069 788505244 131408981 111556639 336529963 583431422 591328068 150839555 328985274 114365504 790450507 1759744 747296648 557359764 195080943 80097179 801492644 560947454 787338942 837478050 978250401 277248952 207402422 866638249 199970325 911025364 898686990 118775530 797973540 517223443 859645549 904009639 387296262 22487510 99975834 27240215 611577365 348698120 859578862 560685023 919605336 710602088 290870002 385943918 24766698 216341 959493103 722343286 375985574 773245615 228403833 722156081 444424881 49238434 931204152 262661440 580450872 937892583 339148056 181731967 651654148 387598499 947258318 83192294 304791911 580047834 767802344 665867799 52276869 375717841 459265985 378339107 709194420 210554360 360111886 225797697 155228650 258375485 7399817 737505391 675393493 583124416 41115362 559322627 245734227 95703886 134774086 868091376 547550838 140537636 135451592 763408962 596463859 469690230 367092682 694035001 223774880 231924965 270204962 701982601 228133735 328533123 275670005 475521761 536641410 16194542 810132499 631792018 914868739 437149022 817073076 37129409 850639646 366036619 637973539 797858319 10495709 46472717 146932719 918191369 957042635 884221050 739792978 471534593 542257871 81136542 720282733 591758710 418231699 833984537 543520190 46539381 324614865 623965346 62676504 535262831 501009524 390646708 432178378 415307181 916265537 820613569 517221764 266766286 510474843 907114584 981258756 479631576 786909996 172771928 465733666 167149567 633306416 350215702 616293909 941532118 557086442 992477459 859054768 340874539 833462006 113372115 332409959 980659885 847484269 505469932 210497678 566223803 92265531 477688910 756315915 490239916 714449198 413978751 549051709 50662352 291386615 208284789 76034654 128511348 220874171 589506273 578342475 610891962 321030129 21437672 36746115 447054782 937195907 255721085 852053786 787894354 325610741 415623034 107656510 608673678 570787778 832656513 4887465 920269183 599738698 221330934 69680271 860169483 659623860 572853142 829720201 669998128 662181262 344593754 453112437 237985353 322135419 570782881 105850356 342237363 599966350 539886137 110779741 598790821 711464794 795677831 58852062 429641850 550908057 237133254 857038724 922053553 701478740 66329947 363321357 637656494 528142246 345815575 180641686 203602627 261127726 143980640 580368395 159748364 254627237 847155601 988980543 132545837 293658169 993974268 763741748 47020944 836755473 270921648 179622354 99463041 502197264 775838596 403887354 427860991 507162357 929646215 19989581 542719868 529423211 714152568 385910186 803303545 652978130 995274570 596469990 313826383 511523136 989371880 17203232 291040783 935812401 755805872 815913879 167752654 239913642 385749008 948144799 394328103 768351168 530205729 5288430 760985893 438193071 43411948 190746435 922651852 746199570 274494408 197229133 458878039 601895077 754846501 605437645 413851507 244578339 684731273 417727137 5870010 772010529 751336048 286905121 587145979 305394300 251631166 142880987 458690273 967738705 256706693 981493649 184343557 99547957 35998492 966980619 198584501 833494918 956724637 357012331 220118147 701807845 42268583 540873607 126804323 20275081 831255828 782857364 218930718 763095165 447219008 569903668 337055116 324414124 311301745 352081176 67479737 369485991 975999176 218068519 291444224 535819113 255106541 401860488 48346794 505654350 995012714 116021827 175564133 488294210 441556792 919604381 663108683 94604248 461124219 506371643 920201544 287504802 334153443 14569091 766303624 218741886 901524183 890185466 700180783 354357125 473062419 348849362 552873869 961486471 776609345 360937137 650089602 815067900 876477927 857220811 387945837 735322801 201594699 122966746 992735949 835273206 765549372 604075854 250337719 410330490 479789893 660516922 750045291 977127857 663083177 785590632 367739570 933045401 188921527 965274468 431795949 291742474 206581564 344406449 933248285 444697373 224690789 60875393 470780881 951066043 484798211 337725146 805453677 764965740 270019014 509953713 323517259 985404671 425182819 649181360 179757140 911451432 832752313 17809260 178567555 732040127 851839757 170746252 162984832 236621251 886304043 904847069 316186069 860786219 216718135 789706662 53557604 935952576 523797465 512271667 348669886 613069191 91217596 36700971 555520986 227756751 8732246 381891130 781010756 153651513 717559109 288953751 369021294 694113020 721463225 746299289 821167509 870912952 697512209 988287296 33709942 376631484 896864238 809975202 379135090 841094007 23918113 316205403 945042823 945053895 469866812 203829144 225813706 10703907 233157414 760706844 57235577 529901633 547416283 225255868 542914585 370189704 280127035 243558977 264165859 214506635 622894735 91692106 682569872 90410884 798962077 718697263 651689551 969540606 828365436 302318129 42631040 271154010 353298195 8012254 594475958 613595251 619562063 587238750 607336510 822815044 320187066 464923815 91970622 431380182 416807020 533951396 9975486 465707035 33068794 128099210 222874932 487723262 219285354 33235328 106629237 38418809 390042465 789168220 378341873 499921829 905733131 417578111 993834648 954628350 882138100 698920059 213784397 796628517 284797095 819938768 146316612 283345168 320478164 66911646 611705955 612153485 57505840 611530399 638848573 894022740 851470659 608091349 73148398 231321865 663133986 978098636 454342126 868893808 430320881 316474937 926277166 259034355 915993551 825783353 981208871 15148652 237832632 416085451 383622164 286458265 393056967 697877035 312276982 143444725 456642861 207585299 321839114 106565366 683364501 91135336 749559475 959457071 219503941 533568988 205646177 431292600 829891248 443430211 149164931 326201849 948064173 735169407 966978896 884532052 694157515 894698769 220566146 829890806 529430086 361331154 822475089 547395651 227121623 73706183 329065309 715214659 837076958 89996846 524941787 607901099 591058450 63035274 686139795 424711934 883866311 646667892 993388675 658933327 555316988 150895595 725475664 701719990 919138567 12595696 120509513 411101871 222458142 499546385 134668183 154160387 330883932 549322472 66984140 735229113 383923809 625611114 230273436 189059780 402898150 505210627 780617651 416283395 241171044 972213009 735890962 815083662 553857029 986074779 155850566 902442797 926274563 46835032 680440945 38747925 970886096 166127047 2335959 115907533 231045458 819763360 700434513 111134800 304058250 63955487 252302841 23803335 287826984 232804632 925455526 80336001 158740659 353772068 165805762 419133391 163562199 764401979 882831589 520551704 713238738 791053148 865561797 583815946 84314381 970281043 245701248 761464595 899432932 458456235 593173042 503692320 75528410 500859201 771602939 458791929 411694814 698149906 371709310 449626056 934412098 229856233 5910337 864687926 330299426 436332638 330028191 8174520 226702919 504306431 765147612 451822129 693240060 974092433 653212398 495617679 768705569 547870368 918584219 197325023 407549598 117017431 779643483 44980827 479582526 456758156 443072802 847471856 317958184 876841365 273443574 37977730 367507839 421422755 976688130 223339689 205969135 316756653 47800858 45676034 366629314 100011786 869072499 856121002 234609506 98044618 69929052 614313219 469674552 841545084 883538979 867845829 909870215 137458590 757725151 722575824 946612216 35089092 477232297 405818100 416615578 250146668 603235733 23335419 401198983 866071247 431910150 429084816 218982498 530693752 981172768 393948912 868932719 114025511 298687368 564197010 453367587 416782333 196389315 231478643 389483008 717199364 944630252 941778829 644881817 478957737 682266275 716838001 556222228 669934036 277688032 744635272 171535360 249764300 32810343 468060148 218125080 107611713 862911688 909156299 475792849 233461695 303159492 133217385 405469065 307867913 210733271 903508558 910890683 143787159 593441135 945083046 464601754 375640913 438861779 915149953 429582683 502952503 574571515 367728209 396417729 333617310 810166310 686972979 409137140 246458803 536459070 947420185 2297370 151899142 908719219 928994062 135370386 992582595 911895016 135433300 111104972 625938577 817617794 355421696 630758507 893465002 795154626 114120527 490399929 387404520 418353952 761987022 238366311 264558436 522233868 365702336 310445979 964985836 624234519 163483013 838070942 578164163 229310196 502512263 977424839 801650770 250475301 888323180 450868971 965493420 477214127 792144202 198842268 220946643 177124020 198045315 615304937 808228228 313113614 981296310 797318513 432442897 263854742 107505275 562392230 361279735 797550312 265155900 663185714 164349755 461633458 745659813 326544684 536441178 625412574 811272096 714424776 287003540 430866039 709573261 644367597 139417880 78537831 617042579 49610190 829617267 175212862 37546498 603650868 614342330 984478761 64252758 643753631 827141290 457166521 547932849 894462173 259019972 57296080 678014450 466837019 199264051 136990371 270550017 393110296 934322340 422546481 759009328 334876354 389509048 722441487 435539384 632403473 148109282 33055891 421794252 379770558 857875930 556677537 355625869 843829399 958287096 188688614 185283409 259417379 665366048 317353084 130275252 395273444 255434495 557211230 403499454 483283551 395946950 988719713 371629174 249396082 487708193 358424576 560123303 561821876 744234386 241537532 908689730 602909459 211081045 648364534 313303187 133280920 242028780 416481564 193516540 14188122 905339019 732029994 940521980 585469970 694914894 598312620 502370232 564041638 644411308 490730541 503157787 327475672 600549861 186706572 889794428 129556789 577805331 941252221 513241529 791754158 426858549 557011898 664017596 946386874 664221854 488116352 45444050 728130148 545338120 686119212 883149707 741340217 436325318 41545791 226001746 644718304 84477820 952498603 294614779 849642773 549147308 567451624 570819862 855474723 364241076 661147566 32203513 914446680 919907286 463708896 972178910 7022143 264456268 536664732 780437170 829074720 695500920 941210095 331884608 768092194 227902150 581060904 740046332 535363121 273996991 201169157 93045399 568942687 23553460 263355366 684045116 336086119 175376794 293848380 85186749 273770266 905795945 843890987 559782383 193623494 129685273 596431193 404242710 826044602 235080984 654156396 701404421 12208144 424926349 604046324 272687427 163309086 660527252 635232276 109141373 717861672 308238757 950273193 975458332 808056301 623491376 320476145 697416800 309989987 147420316 556833905 133844816 160237723 67100417 530546587 267273461 190541789 110183960 76208544 387631158 576149691 847581741 99714923 823157021 598573223 432317151 325484041 879953410 822990377 806920997 883088162 303729178 146871460 126382089 955518296 121166486 50797208 630479052 717470020 211699470 472537139 397420451 878293592 857032453 82960333 692368265 211512291 922033227 779539955 433590766 634245565 808569676 421233889 83101467 316050211 753264484 331412603 836148157 674251247 968266055 365265477 529064295 225914103 452325151 161348938 388851038 873801028 272349026 486477162 170658648 171424539 39921282 560836498 241680966 549733195 760699641 461636246 415464917 361283318 384338920 191396397 760590085 13824492 709163771 611120230 884010983 130485492 72866532 787491097 556972859 188319632 693854403 213389798 73196201 76816996 22458302 950807723 519144491 223872287 780071266 784957926 202048183 977116364 15307422 60954869 969269119 110372473 887768406 1457775 756707021 218697252 752747559 578772003 977758801 93902422 293901260 990216049 493961860 744428760 724102897 175517743 668860108 880959600 910470528 576579548 176638816 803206501 892989967 967431748 216862550 139330043 780312329 596835491 144510680 560249687 345732040 779925423 507643437 677373539 40000886 822351684 432526956 76552196 47277685 805991771 177081283 879164782 448534285 603966163 937219127 531567405 921995061 855274843 135446456 967926534 432150124 335778678 781933394 228483588 862694333 588776295 73185904 925188072 341411775 411182328 998649095 367220754 782253108 944322197 89131227 694466268 399127050 281330819 590452425 855213292 870285081 460016001 737163580 661916560 137659922 561513747 521156817 581115878 716773159 587430143 73558014 756999398 69482200 750723843 772881426 432565641 232738951 304444835 573029792 615092410 18801829 269922814 265153248 309065469 600964221 468191863 367726805 519977899 178472573 112375519 192975337 198905421 663700870 560219534 114369256 140914059 25587572 104199616 504860655 591967057 542710952 481908741 256296022 400118854 347721251 452487003 163396485 497468336 254493487 711875221 697121971 471978008 689789239 993932810 616673680 219852913 348776240 778573879 424969527 308094698 998806945 845383942 44630945 732611976 68502173 719525066 537134416 349501263 294079388 490129760 597179431 380936230 416040594 822331544 982843886 708472484 247436822 679053132 350218810 675384285 802748358 678296112 465772964 795199024 148228812 652767691 799883217 46809381 402358474 931273698 631729509 353519455 525938354 676833801 182074580 412973860 914536529 517755475 599153229 521814378 562589537 304987277 62505723 714162516 40250978 352081013 671627752 841088738 17852666 608928593 237240354 837581065 732473954 723110056 541085174 691786530 891694444 654241777 268310894 762984599 967533525 439160974 408371491 642167929 364846262 267892021 826284962 925145473 157010369 974210672 972025691 350937164 642978834 386209042 108798133 792373371 986579522 24985383 314428628 463880708 276059103 34309496 582548292 600580910 207786265 651035259 384100243 259039652 325415502 589168127 786793233 628268504 706474050 864157138 798871411 816819756 629711058 887280414 927086202 370774083 476002840 540218851 925710649 487797860 368135504 618288575 368350655 43134147 854038766 125526243 985777997 903819260 546107303 486987462 27561753 198656200 726837793 571145157 60268916 632735623 286575058 394873082 355804080 686358017 91212951 813396591 135816050 734000945 531679070 820046526 768658026 33829723 114789982 978549744 86587172 532529294 133519127 34043925 118368999 312737382 703782137 956819759 155924205 357809719 106602826 652778890 839210748 245963178 833861680 869470441 507660892 564147555 514675717 596245974 418947945 836712166 154401557 452360020 339547628 72235024 92040253 637182978 900037956 991738401 142756313 135616304 640516632 574985060 515134632 653989028 866024406 787479616 138755324 969813036 218976404 905303048 139610285 541120122 667656451 367191168 364018788 230302713 964745667 621219650 353975970 300906216 209900772 745745142 274571487 524425468 131310986 103512380 940312526 178463980 785926869 482517390 948716760 960357747 993601565 188911828 363486332 637437242 31122008 685458118 594475769 786690894 551391163 451615592 23993528 280722634 681466040 140676085 789307787 15795649 608213940 539053928 348425026 518954826 443931454 205495348 540337702 688069120 592155542 295542781 429646117 71389833 271661107 191361408 475700465 45001129 390921538 663100249 130574966 709980515 308692405 110447932 42079028 962698380 599182655 843703815 160019459 101746464 949220917 553081921 822853521 618452778 788174392 420398990 663217603 367068806 553266627 805848458 624254112 430479438 287859896 486128526 303371309 714961102 158900511 884840085 970895659 511067599 806842560 902655591 747431260 107468720 247467654 927060701 636061581 814486732 40010690 807599827 547394755 878727616 757683483 950317317 202231842 368665879 813242826 654289081 12054748 525354429 647954294 224726783 534172398 487501738 677789554 455298527 856787214 683743158 893097385 244450892 668412361 881100154 937757035 980472145 660245322 474927560 91973763 730123279 254485118 958068545 186478775 883639270 24918486 980993989 237354301 98636707 608090219 995492005 96164695 147403163 422574646 660391214 56806607 264737004 350561965 678407458 437995163 951420251 112169921 860120123 806034761 405620986 54210623 896415056 912272424 679410565 420085451 298187461 518387260 897389933 283369502 464967774 648902117 116330059 723031736 759545853 57109037 771821549 460020108 583138264 762150672 404010080 245632313 79791328 594595190 404739475 620902350 589421125 869339104 82157656 263357586 393565266 902815159 960297172 778312683 696855353 976657580 289558788 443576603 57485936 801484102 92085221 463514849 92656838 834810812 598499220 583440324 513382450 144614261 350777228 718788536 310128574 339405238 255631776 431707819 351281141 824533731 909700360 433552464 156373783 136150838 318871147 489136498 95437829 982985868 590372909 531082130 669294803 328508006 797513017 120508034 760079296 783691738 842944342 553597259 30850400 75846071 824749922 425491914 94065611 444499441 353147127 994197542 974421329 207965996 820751588 711530589 26987033 150616021 679316364 712078426 654379447 238549832 897571138 478495368 87213415 571887906 846836133 520370823 725045233 139121730 155334162 918529397 118855578 556156250 643299568 950993587 635173104 984324857 218850043 376040837 657473262 479734284 100051998 542310264 72990339 252111690 379206353 145664608 556714692 66588944 641869535 598037226 552294226 849105601 326827037 305165613 621320374 997071001 265602748 80537278 145109546 645202347 550391463 304256310 890127892 733367025 897016906 761855227 758378608 691094099 509596127 438735103 628506894 246349363 998982703 335442713 450909440 388428474 481178673 806355004 340757128 410864819 896678713 753759638 887129410 756383360 984807553 610807647 474344192 336357847 200831791 435461547 6350144 883416334 740381917 164440395 184783403 348608583 278019557 699096708 885091089 631039057 59365761 581120489 801128229 621531915 339841102 512087572 469902522 259464411 586928396 340254614 998108540 399394259 206889457 205017621 832695826 344565209 427504569 346282323 843374238 468205804 659227272 295351090 316329167 21256385 97546875 254189898 529934321 861970423 493901679 805183367 588447563 713255443 974489129 716514431 568797078 20792208 506287075 581808269 248190201 863029116 246237772 449073544 472822255 625411750 67757811 275894128 730947940 961707260 271226383 64145523 95986882 516407243 174758701 216142691 550047855 406128167 523883002 571941537 191664975 13669379 35396715 139697703 992314343 779309201 169036089 492812544 727303742 433979117 95453276 489339457 969766009 201765998 215229019 377744358 526561148 529288721 903846715 838233386 306338086 656427427 954158914 611940299 854164590 49148343 344795270 346069573 355532318 276795753 44934789 890884734 503971085 955785041 915961308 247808067 972933778 924477414 713340342 313058338 126426735 722546301 366217711 903611656 208340170 28362736 589898828 657830298 599838669 567713807 264634887 638199855 692435923 224401635 717921448 424972217 244031898 201394060 947918906 906592935 814299639 118614369 791662459 707491300 58991074 158120639 724367733 911032 84083561 160579548 338176407 585551630 597737333 316594738 940567126 710825642 526010622 786795344 81044554 67913030 30013337 980727250 515949193 624814639 734463487 848394869 118256253 494861956 579580211 819712848 968530550 520207546 482777386 99854721 104350523 851213948 373762050 747704126 100338271 848318688 418460585 772940436 25381513 9545632 927720265 524635020 915317579 91493354 727529212 141961469 896284274 376703302 814734594 904185806 424364180 45217528 411445607 261311241 117015203 644447884 856775976 570348940 88092887 778360676 253841137 501034462 671700400 470714896 105770476 398646630 787014109 46586434 404582885 954161188 524167483 555894083 741383489 36225327 92800502 269992551 38737633 396121465 363268430 435475520 158426064 680978021 700446238 210489424 407205280 732765960 624546841 544659277 400067201 59949052 81503560 248329479 581733667 948124034 662789191 783713691 994198422 943063872 106868214 853070963 522497762 755837496 599696890 803001889 194423737 103534963 817215712 123541704 671527413 54087535 191615875 455736168 532733873 771309355 836108839 580746084 717349791 708688314 748151270 741230011 636042566 11202617 444016459 38491170 852917383 39119529 154951497 804176758 672337470 858898467 260563448 522496798 20843209 965560510 328497143 133003570 789866296 657357174 580023192 957972043 284773955 79908436 862639094 450344256 614021105 477042990 146842747 288543586 183336261 393036863 779324141 419137493 192014471 58344113 603925054 863475333 904717622 467615135 815486510 141529694 332582992 426754541 369982190 670324227 291782620 451245605 436794708 673742956 610859435 956442806 663208286 336525985 645761992 893102046 811012238 477055902 24913279 698737829 541255272 702076237 242507553 695156287 730843959 868696241 248648030 75589103 957216380 541521200 673486875 290803880 222206599 38642641 612816370 846045545 319597555 463404208 700691579 990144966 683174305 769571740 918703356 442241182 401216755 750788670 147503010 768205134 828704894 260736420 265025720 538772636 155723407 206283381 493349022 422954441 639169328 575292280 595480027 945572601 806159650 552378733 652183390 490500338 172824556 265058073 688242732 905487730 297485679 539391854 773430225 567991009 933167891 54851828 509632837 671163620 380507530 516607981 5234115 72581856 374220107 203130671 660420940 883685513 17537488 118302547 479504054 948079112 7246314 342761881 205298714 291379276 65288032 921932451 803766383 104434612 410245531 310714208 931086117 885951491 40697909 909478737 825264572 863118078 400905010 312814629 371089080 91711651 703596696 894320327 180952426 284382229 821975213 932395076 396622959 23851151 807345467 730251516 732133343 450488372 636750438 287671461 366177586 122887411 275119837 668547468 342037824 370540650 735060505 532040953 822951613 958676952 229823495 438302411 839046402 266952827 988160630 980114287 858960657 159318315 369438875 177916052 866038784 830231448 803570699 69628719 903515783 601747914 631530653 639193557 684076007 42042525 954585093 632208117 293522767 715988497 617509740 275607246 32932672 62300831 508788804 379488111 718010987 839825406 954404487 9180610 239057194 219696954 401460144 956756624 41664049 57871961 575237782 812123158 216533038 603756649 809187975 678008562 506989886 350154393 890917006 620960483 186354483 642572385 747600773 11700962 378971129 381646671 190241993 456946114 319227203 177549192 429445837 879732944 163700939 98439746 918691598 664847784 790660789 399766653 665411752 849983044 465024943 257411033 178145896 763107466 114946164 72874803 751949295 863791494 92149925 779854572 34898174 768164457 312962598 694197477 918604415 112186976 826049378 905429119 579485398 501010386 560033368 82489021 72868121 642320082 213806229 321899329 551360163 579164473 312873753 739653386 584487223 203648756 495597053 611227902 599562045 742575595 523052493 448815045 582221052 948947810 770782413 155394210 493677029 985955442 246682248 912083686 18505196 844267954 472640054 697512751 464930328 475338747 28487291 972498304 311123363 600906855 215221138 263420650 378691059 555147246 343509507 756025908 761900980 80172785 667231033 893302872 91737535 273658763 454341060 370906825 932219633 572076465 799255444 220035577 33467278 540221760 331048466 962800349 169449393 850952122 447284249 605519401 976407815 287808013 726727456 346427603 376815600 123372019 235168492 503052128 616290015 474550801 497401012 101913788 128570836 163920648 19838639 668879217 542083082 622134542 152171342 54133493 172769525 587736866 849201310 895267009 670658377 124320576 528598340 142791564 382763817 120673609 967738070 551789203 387915431 32159036 760195039 102863148 548962799 536919192 489710688 250612294 109298719 149104104 43015677 685504429 725408469 668502701 305356488 450537446 146532189 592255957 663371673 337660504 32038015 178314907 149825716 854761208 190158945 69053828 821622880 535765014 852158217 146967308 110756534 800243512 931436214 42585040 125527592 542016281 240928269 781443515 154093247 266532080 235252739 179308645 389107647 349997022 422153236 241746955 20030998 525624317 588034315 92137169 213320273 558210833 623161469 660583834 934479181 652251982 494647813 784532571 444270271 631487506 327063565 492866452 334398960 235278720 342903779 110983371 3106768 663998424 95648707 720742514 809794029 484129105 225563537 196801056 757882562 614569850 101681197 401880479 23869550 219419156 627077565 889104096 572882442 842467640 960905879 583666590 26248446 393856709 83671947 592288972 736426173 991375979 220391360 818785733 164425728 568050831 570289736 983938691 46335672 164950468 501887740 289185409 203693957 161237646 504633697 144471815 380605349 737136668 609635068 526758777 178665129 738006555 438339074 496965155 765609164 300770290 843418639 135137625 75068800 688759784 427591961 368209526 283662433 826082942 238764990 758785042 466371674 660679508 967161703 890508837 685584725 410334916 431598530 401230258 155421963 987837898 186853906 29690917 595304677 608568793 609070410 225643701 459735516 624821766 274212306 812156736 422407979 762971995 770524129 253736362 961559417 324323298 827897795 129697661 457100961 741677618 693958818 433368424 908044998 146331453 676306862 800849021 37064135 531873461 426074107 115450651 837278541 808552284 135659005 249099536 200394018 117640558 590046798 764878129 491150710 383385446 426946125 577026634 119700021 682345610 250915003 892387599 826148923 381564884 848758903 622212465 375208668 670960232 573756090 269683300 401033034 573533262 249515058 798894279 508974346 987670011 61950520 945634053 824820322 437785682 600124964 459949566 315625862 44166313 266460145 340267899 736974456 643884063 21526873 199893993 954771099 959129174 148040256 128559520 577791515 982531234 550282724 813985200 305640389 846501512 328198617 626386885 999923692 166438169 40812869 429982339 894485642 920265460 136025050 845633617 459878888 534977461 33376191 76414821 320487831 961730440 276370493 808846243 588137200 238989149 884666515 43029747 454287977 144451438 608214091 301444765 513280956 890735052 153811107 542038788 559528218 707452310 579560245 901372351 956493021 872090564 288182319 783662215 958493667 337823009 154843802 594183393 830689510 216790760 532881625 557628981 52103240 669768966 938334819 7937981 509708843 347985250 943500574 332319675 4709138 455845912 904481815 976203956 75542549 642397982 753124416 413693312 89640520 384078296 773955680 333762888 727401690 213077113 411841088 247274662 743794186 434872375 381707611 104419295 461137482 50497063 859853880 448705565 400262630 682411501 942767166 281850695 538446114 270752975 123450740 886355247 193961772 949274864 277673233 308658236 501219320 520666469 963225819 403565269 441169493 249472996 8261035 192600285 73294637 659816205 172004963 200394866 386016635 468135437 779155744 216709123 35802975 746575045 479758402 445604743 411340294 934970067 784359345 826980766 969407083 714479585 88394992 326392194 668269735 479363688 240044098 844903632 656392045 452598381 427932558 540702537 297923548 201740780 257404468 296308207 667738994 959945657 177670778 52988406 790951981 840041811 299669209 775567081 380996849 663856970 59831456 390998777 957851767 816979375 481064309 449479980 17620558 899437381 429805111 889810369 570933729 885950930 356401980 577903488 292036026 933838700 336193032 901394394 379629675 372722659 346740600 86040876 66532559 645102350 237045687 547460102 139269185 261246607 262046015 176808177 256434909 282912873 379218889 143235135 475783963 27727354 359923941 799384758 616305972 988271524 61737237 147043403 310657851 4213172 749640494 420836788 178338615 266782055 424469980 224390505 332094994 906840167 376404726 911263335 411157828 555584219 929411633 693195796 60352496 698090674 171186770 737725547 57854527 458694109 636555693 587834172 628768292 410150415 455547504 705699065 475891106 791088891 860820344 460630550 68768055 197279966 684298815 232655715 848969772 474611845 902510405 43648227 217579777 31175474 839941073 233735601 881707121 467745547 508396396 555369832 645522242 767764958 957761028 197701548 127269431 683568004 368613334 946698877 698426752 443545307 940354683 639012017 731818003 733167904 362165511 762744630 265981830 581117232 5486287 119781628 788455410 706978778 615282971 630117137 644830678 746154020 151695358 569933012 408713773 627053615 252652417 761765203 64056772 75376197 380425036 257037922 475311275 91697163 663143075 690987546 333473605 840523866 343155251 812948334 524004037 976866974 139056124 515233418 479593557 8916642 885412260 141654734 986464801 480159971 689239842 672877866 350322140 823803494 497643639 278345536 735166217 123323374 831284770 97336520 15061234 928997360 372168004 882932337 183471312 796262912 826873337 932973511 829110754 364828566 670965416 790867900 33579598 480662951 39318713 643171823 403737012 371704063 894455878 31459695 175988847 916351561 436199245 116915698 352191358 194123945 927889456 73463226 226949879 528819809 681561428 635700465 311072665 334410997 763719064 459121645 570144698 155710269 653932866 775134691 81912344 733858322 46149929 88942330 879456640 578740612 567276167 611521333 609267086 884015560 713503995 556412659 462982629 704423900 466419781 252433156 206411616 670172510 420411814 490909116 313094603 80854542 878326750 181461750 51269542 257396663 278052656 638455629 741198448 916411687 535138540 860639573 670524352 302094062 545456482 867573357 113078301 388109956 425315896 2397439 220578640 727465600 111889564 506883905 237208054 779086011 829377445 814214239 747392929 222737453 109852135 867732582 200978229 923080334 276335363 1847231 978478372 973563484 980589879 785144129 645738391 597325692 54002434 20691559 231251548 508860233 560421494 84861874 870508823 350633567 835358018 867840329 883674347 123999283 124912052 256702606 253462178 241911120 256985285 108495529 739022371 810667872 865999011 127637804 5380327 321394414 86593072 615001676 264029802 439225364 239295020 321726107 797916791 87580222 858623482 343866503 774451279 150850756 89083115 86865183 385521192 280716795 910367870 381334395 503725346 281070324 989033868 80208299 100752736 912329936 385833513 673201518 957853519 778522783 727393504 736643896 246596283 592930272 225571414 806912375 454657540 668163620 920192720 500531235 836827297 670358929 809128943 820228141 772159087 188434907 275671632 53689353 527319196 180543909 724773666 705851996 543026906 12091850 550129442 616057217 927931080 586333955 979042760 601046384 291387488 756202040 43421077 82181871 117275262 10481482 712898979 179114763 164562162 732210376 240066104 591661526 606518590 595307796 577676240 698673998 420115450 459288341 155701980 528075762 215716580 545400182 698187196 449130427 226917802 313730069 198628746 878480926 749584932 722404528 109451530 719551822 547888679 554249139 556833076 185594573 739089409 809760004 213274353 39195552 856320078 399088278 654441645 554738042 904786085 952691625 348911185 795963403 581690998 166012596 218574411 739535329 19611373 118913219 494003157 93286264 525830726 912038133 212572570 432842120 11816496 93773461 266463346 20906429 917245578 121437299 166621793 510525431 509884446 960093813 801802801 553118524 336195539 295461642 797158041 846516508 805975952 160547355 802862329 696845963 254852850 41020188 179744033 80760780 724826951 812590953 827531443 123036686 450186017 907831929 5295504 627693245 207123017 489094907 467578458 571821369 601031989 211432299 593544422 436151007 14825186 143003170 661439506 277870764 241961481 482217666 215338714 648437679 238154808 259996641 522721144 358365646 835650235 500667419 430855220 429590420 606523973 37608848 530830968 38216595 141664913 998509131 28492707 305211668 907112229 228789390 627360760 452707265 572352840 794869137 75179433 660035846 671006291 219013971 596492003 218093439 722972359 386640614 532097952 156054553 713669575 911847320 358929019 532265162 228580993 555353702 85318382 491895962 582304600 538446590 832999235 211160902 697667748 945543817 803697565 367387172 361608246 969831858 39325217 590393367 448071788 344224484 536458894 382341934 190407983 719900374 215525934 449838161 255479896 461799253 695406556 40082645 162673464 542208680 368905862 57645366 339062382 29045198 484300731 543354865 12492692 874653435 494991736 581669350 980846627 843657231 149531152 678422959 612669532 230331699 315564966 521938187 288367308 890821572 417516365 976155713 334240983 954575373 470729181 558750414 457464513 350459773 453669203 937219839 470183618 630637158 247988228 494147677 317564530 501969510 135060388 49328337 484283289 328225103 93408547 80136971 390549397 390293851 970987690 373695649 426311333 647648609 291887878 180777941 115519420 817398711 687211007 18380926 231986506 575282094 690650795 28906170 791600795 420616948 245326733 968162135 423737590 841065142 508817793 67819869 762649549 500284072 789177898 740975024 586486457 137418688 336135853 86333815 249703403 381932306 531566640 72534318 129853397 612347688 347046315 440763704 994214139 712981619 638380141 745206197 730302302 784350642 53483437 483804890 404489520 881573206 829599633 961642634 319476522 485771040 507848526 203440973 961565643 774161207 324477842 240290429 878883013 671854211 400791766 12564655 18021654 870093989 512287103 534371224 169975971 240748566 725507935 302189865 149044501 132720002 955547237 870225043 646323905 258779392 841420489 161396161 720469592 336144613 339722906 811217868 276026229 472851793 636996138 443805890 173000253 428483940 93664346 205663772 296996249 277088854 400282492 630559180 919851783 857426373 769307924 667630070 56319295 226724516 555745195 226801846 559555734 67947068 321770898 635505667 734306565 155468685 483052488 797286374 262858256 30568888 505207043 567506951 5706414 54823282 830848860 886295584 881834128 799353224 266675974 11880457 102115652 503835999 499873544 220547602 50789610 336265219 546413520 249221005 615290236 273482869 350613521 77888525 606921324 54145537 13383418 935116149 509651317 927187451 286994561 167014050 2836483 322734759 265384366 654035123 796697875 564453452 702255149 116146467 556925158 510522484 785959819 676151980 221972527 393489789 976067233 820391798 395218036 915568364 699178156 767012490 136743101 936851559 688641383 255927445 673838272 788986178 663846946 366686943 26554311 526648668 128645952 726704418 880591506 522746695 961288732 417756581 126252718 993600353 203613816 571943733 398607845 187433988 749557947 366624557 155069550 445590289 913701538 565760227 97634281 41370100 538623616 836312112 213435064 507591397 18221303 137298798 169511758 435325125 522983941 881965768 99763323 484906239 644520920 212182334 425843765 878378777 967338595 371980886 504702537 276275338 118142559 563210141 703450203 210520517 602503360 270213818 662574349 45522349 157213165 30628051 564731407 80121030 26227640 954619320 984960472 55225397 408930124 510351966 888979792 699239952 639480929 589553587 241309802 250145214 549642971 412674539 50165972 413636519 797221012 69078139 224904728 484354232 794182993 428915520 827205285 126477187 454153147 716121882 575721683 554561979 872115666 507037288 453122613 170025978 487023001 50320909 451198209 83699946 658318161 792448869 740944297 375175319 330091194 444505835 230735014 440800096 263602129 865085046 135022494 214713469 241336138 644016538 725349154 14555163 241531092 435513499 255029764 569626872 859437958 233066126 940587992 216205678 747620102 698742099 457680168 792745563 998869262 978621164 302237768 668221457 737540943 298835416 38233949 688781071 275760507 293462416 780279622 610089856 338249262 184358205 380959148 17077887 426833981 825761797 833297320 158852241 567415315 620234526 55781528 724214756 549746750 947687230 27297921 903995248 557931194 346784770 748488671 679503696 231935966 471729948 845464157 555137040 797387444 29510482 10271312 533723447 877309778 683524463 24629733 962013608 965919316 364642609 335335279 884671991 332414792 633735310 598992692 358073988 865190041 273355172 984940607 565260145 18590864 850820194 463419911 444974696 451144486 610710827 786774702 747117339 328227064 785811890 971295547 108977829 190641127 774641255 865538360 415935003 2027256 287384386 44261568 666317497 76552055 536982958 630489743 137836752 523542753 752603815 939736397 924190895 730003927 370154517 103087462 408453524 156865477 90193265 126758882 929334195 724859249 857423366 151203657 36582179 630060862 924930692 548219816 772534073 534473404 85794397 10871315 828238842 923232042 845138124 859793820 916436619 451960683 793472909 958053722 26826637 573696555 66599255 772773580 162631357 362583985 144027161 905964096 20509910 230528190 737645233 358094976 149990440 692138156 697323154 409890239 31532001 335420769 326375106 37897954 135851983 525261029 149499935 233966966 305758128 330828791 214412647 477371191 51037095 186955760 650687345 107943879 988865221 813119905 311447868 727122543 642639844 770588018 556178494 820027391 242229000 442753948 764730067 629790190 524933544 361203023 653935945 483085668 192032542 185902152 103667080 62231951 40500432 494195342 965083750 87268601 25344746 870946165 97838336 16579916 316946348 456023536 901141551 379121973 501204272 495934157 797028689 592568036 44786230 624590633 364876019 205397833 499957951 465089683 61675779 200751737 854137095 768070060 542585088 123598836 993640154 512989181 305090713 306036386 792269598 853474900 285204807 987802308 547136436 807397400 270146814 899793983 222365307 146738685 759365117 881293108 638436576 124447304 95384410 934807689 586413438 676971714 848536519 124462228 806960544 332354186 149369918 682144810 710789387 632850861 886526902 502253830 230920409 772456570 776721209 952032353 281092971 873910709 411823589 728298759 61067160 96012817 273386822 211396486 904338435 918883721 959124413 834259552 897526635 417072795 128062538 57912267 639994900 330676557 156681762 581425994 415530334 920956000 187719385 130304901 633876013 58846794 247144081 591032480 781834379 214738935 46875352 190291346 977478711 182443198 408716735 380208797 739097124 21084703 454142562 3201244 297294089 56265381 7233691 6059962 222352802 768821513 228326160 560755724 485747965 28330318 750221629 880343727 962436786 773732416 899090812 960154198 963027150 762275028 87077529 883334148 736201111 420556521 47619260 262206298 788852128 338722779 741011934 481092469 44891342 255125566 863106054 11048018 961245770 656193780 235111374 459274169 620751587 650806494 575940223 179516247 648288116 135689894 239583883 683921270 607307504 774958688 162514643 48442846 488570569 261420996 281585421 670920811 673552651 534532605 85597112 571462756 858426236 463473105 449813495 427301259 208889345 609425401 509716935 205966750 367812330 546649683 837867845 222660845 456103169 713240877 198998560 103998463 179961552 336833735 877659429 504403618 494537535 879272775 641727628 16713856 414112338 173972345 270466221 140431382 312359794 424935689 948597346 37025740 485185149 902296607 734390705 321716837 498862225 858361571 430961863 542571848 570735147 445029307 706888701 72420011 736863457 982165259 193068245 697923268 796667747 259928308 767103620 211522730 512734755 749369290 420741237 292770518 778534991 388192150 606967056 95821201 721559612 424866118 408963781 681370105 330988242 946263764 696554378 308781075 963532550 581163 151080391 760958569 444411053 898835121 738277907 10729716 233886347 914837329 595375113 90981721 564571037 683817106 109428191 403123586 790087625 686874434 48897061 73899870 27581595 671701188 513157665 875989145 116217124 920791994 189712290 692818331 699631535 477925483 62060902 120734308 227664945 597458217 638034276 186426779 509311098 905778403 451395537 9831343 942212895 550592443 244242664 679654592 525718019 316443117 541700313 700144744 357185 37872695 520592515 408515645 857464616 276922990 976304541 76378114 964869522 108972095 953903997 90845139 867778027 351941073 917556755 846808165 858254986 573637900 720214737 866577360 466540620 41236330 634506161 893285890 466455481 36563275 76672546 198254745 671820493 287202892 704196591 81624567 324992952 94217890 387495360 356761908 17614742 604205249 812279487 957981014 956706447 439838302 635252578 366910512 501307967 542716790 783590706 894002032 803518344 191857255 27261252 480582182 811920159 487896132 328509782 270123271 185672534 729536858 622647902 958689845 441837890 966422660 16334298 847490109 864241107 902276344 980913528 207593795 19440372 574059799 282273869 207232195 323129741 320455967 522741285 893494763 465121928 131496919 552211137 326130591 874208827 474040949 688089989 754410559 806460830 540404203 212098537 34805151 820818342 798899327 71341849 509298657 609895273 161934848 872056076 908545991 316066849 379302307 215642232 22074506 416662453 283463160 965931795 494928119 149539402 879895423 955123833 512606014 336995262 435579567 961954406 783218761 534846647 227058236 231836588 692403883 590186940 32126875 620236771 388188468 295164775 113452874 325818452 609923329 911916022 840956628 443832662 541351680 114085971 622632327 84473026 427507900 309552249 901162759 80178319 848477111 810503106 98097974 224247164 746780467 499499437 838797472 635617052 452681405 139778817 514602813 365684870 126465217 435247860 59140766 930400233 644472067 82399035 965055131 244819358 606687576 115731400 23294792 888333613 705770921 718395917 402501453 441444021 545751252 968510145 410092307 921145271 901609708 400089025 47799775 284305059 132787621 510812758 850092904 468746592 435643049 993912847 425908790 525469887 497887866 265062284 242217626 809305539 509489046 879901615 586023709 962206945 956973179 632772434 809278366 98034652 933588506 777656769 771297394 276841422 415920070 831839643 562448785 430419486 815384256 1387498 385159218 773737679 225445265 914101870 694542623 42085050 853246518 638343389 706029000 488447813 69992152 281295505 116154792 889518508 33725884 998423872 588389303 778801800 178801837 86085635 580592841 785333679 748032476 446279841 110585781 423401605 570302064 414423128 886064573 46167159 835912514 431873850 170059987 47695828 885256106 763021824 937637595 592038355 46422575 628151625 764974072 396363062 18760914 863313057 368560586 62459403 932788032 736918025 100219913 351023364 771219159 247492434 62217302 106029044 984473424 90893418 865869506 168583338 854589616 129303483 139644360 648354655 433382413 725917492 58152892 656793833 549894022 433890492 279608400 377868263 958519513 552167643 899976768 917912256 32262643 693843446 634874586 733937950 334852462 411995850 59132657 772848914 710259353 94727209 547752779 399011144 422424781 467315402 217178809 658296503 406914036 189759391 261592660 772595639 84787886 852797465 496820797 676633110 337847444 605904880 383335364 298714491 103042223 883445986 411732804 748800113 9978217 925505149 257507558 252748584 448231514 270656090 878232029 537143394 49522499 932642869 22523515 446014561 85669269 415668559 760054810 318215739 857714658 678726055 530741973 122818942 700160313 179386638 839588902 712286874 445528443 934763693 472740792 494760291 254938671 201598246 217628245 722200209 952977319 823755905 799527235 767266202 317572791 624593663 264360454 202373679 701235180 321077911 991357478 488022224 597952077 248898665 289537659 946487790 31986488 553023207 133911858 984869806 7380838 198624896 583251758 631245979 794459024 489785788 568359847 375693382 50570745 824680068 819928246 179343624 62117502 563366746 150339392 91880047 654041254 833610251 471342082 175131013 40418786 929514887 546370600 44600532 778924527 307877491 657930148 553636513 972085254 768668265 644018176 993368195 339077273 206452662 919169496 650838595 724321993 765412742 637462736 150208032 840271039 177417734 244266762 369621813 133837669 577122966 789519406 652244421 707774922 376258453 393375387 978802487 296430714 133443728 144469179 752634997 773409578 326207199 448753679 332579357 899868241 925985997 493646085 707151468 233886122 402314154 969751061 711393310 698630116 849974572 515185922 963317740 675222912 609769479 632519983 535095477 314947708 363125898 924297284 332592049 282487674 773130608 19800824 165167944 713544847 417397072 96870498 561065435 705312865 581283194 790973481 220740273 962601411 66471571 162514968 490016095 481836284 967999156 757473129 328180073 321779529 941654787 567769455 84535488 1717513 226858546 881746413 741129147 683235625 53965789 664657066 397754016 330166979 497890156 582880160 999826413 914756280 134344498 826779187 56503709 633191969 986703959 131843291 625601824 861743126 387844123 448088802 590102489 570087143 477847440 217305058 210295410 121268754 125130201 541587335 930679838 494105200 680429789 831541061 427556702 493617910 964022286 490568436 912376565 288425350 169261403 379631479 955867477 369450862 719234570 233676529 447170086 634478177 199597129 97804094 208476788 324389273 521116965 667152759 203873758 378515197 469646153 128227092 175132989 386505071 894251007 745387472 884224167 298422965 21298807 824395825 2812126 906340895 450405388 645304511 991028432 231114869 728674055 45951029 309033680 117590159 507393474 826607005 758885962 109911111 332513414 587147990 896727644 340933106 369454989 691293308 471370701 57640110 627701617 794033115 104497199 699230134 28279890 423933493 108586706 897742821 517495391 693522661 388702980 997728323 519494691 588599276 566106226 860903709 355129124 563037536 831260270 746422529 995112419 883116514 379325463 397218189 696572442 879031587 939871549 5700439 387109468 24935707 299636595 27827038 556058042 297040409 138445564 757373262 421223779 893882218 92100445 48828251 51484164 79687506 779014662 883250792 264255350 397786837 912034487 530225080 469069095 419920701 532634195 942606374 809522959 812578306 941089318 525540094 183885901 51925618 582899333 240659303 518928802 822077253 912454324 451881732 638918707 381454832 897154241 188691377 494666024 688716223 50278799 786476434 399062202 290941281 93922048 615904294 748733955 452944089 209975669 621779998 776996235 389255070 800476351 669187884 361172713 101793045 45372822 688114519 594295532 122731733 165622149 612284593 379877248 803598102 162302129 20450269 319350230 303616977 844823098 889702101 984030927 680241756 276637048 274402873 248034994 312656086 561959374 63650364 719619376 225788484 291841964 995300777 96055428 543344866 839623934 665554336 946148920 449145554 804112365 170753246 150401084 570823817 336780745 212359584 187862746 53450791 600935397 955767671 699162873 802980595 937098379 862110318 555019278 416363393 954979998 175262333 67022134 534644695 380676466 349358693 15024326 474447007 753448139 327280647 178474900 675311671 388296039 66858504 346166883 946523828 951684852 933505405 168826816 849752768 642541657 50777115 466744303 482511981 103390017 439739044 859955574 309431982 59664444 693183999 257911643 792638748 447713840 939211522 261253079 93650462 28267693 841507389 655966756 89621070 541508994 664589289 7525364 477731465 667164096 242590258 80552368 792821685 23791401 654122930 711740013 245032223 133195128 331408329 453801194 201046818 252628894 748727664 932864050 584494532 191720411 547243230 826226254 819336920 265092424 313976271 895125184 279327277 253014111 181976632 125263577 965674009 317683274 54419498 885464658 689904865 217940381 146013675 36874980 522325334 744334591 292395258 840988950 735078966 837234692 745523226 686804510 909872584 898064565 715862693 96221756 909314812 541053201 813110985 214377020 895684298 480789675 530276040 715074743 265520941 452183805 202461695 141939031 271736814 845479335 610660610 827301302 977842310 159011138 341419596 722854347 712008517 667011781 520745697 407716488 81390469 263723989 247335562 731701131 185163947 351377307 856180784 534705028 358650544 480632111 97745410 205849791 617929736 86939304 536913385 606934756 847842030 936734687 678201866 357096558 52780843 223194998 504645085 971706735 745630601 766146960 243659666 827292030 698742040 860552577 868254010 80337955 282681912 976138515 995057697 991282544 322594837 394836343 878620736 625740994 924775163 346643037 778732880 999599867 320038016 495285544 611701003 425280212 951167971 878111223 723432207 822715672 596384815 466496543 454097842 900865987 360150430 854128055 524595935 641408739 61519827 733984274 494811583 191454309 675279740 506168866 895749775 610134666 692797370 755697314 30954880 335542102 964510922 610046762 63334276 861165455 521578020 255061839 378701393 168478400 231992901 328425830 660981276 145410709 170101013 530517591 829130283 669920390 404183724 954076652 391025152 112682711 913448750 479572663 343009070 886584724 868326545 745282375 641311454 830341104 672038777 179520625 439742936 703316039 942097181 533653727 301522009 451364039 182603221 790474732 16946725 954227475 244502312 59968096 746073978 458184986 369451165 639397290 161642392 286448400 879697776 652115665 330071548 122529475 528765471 549137264 552235737 540706964 657411845 951582060 754286991 852707416 753008191 158081718 72349220 39415270 24444238 368324419 822246376 288984691 456148143 97631534 770641063 863761846 472989403 233695259 213055384 75709599 887768307 306668136 328523390 43892611 39227050 816280204 913341909 780860335 174186469 343048716 142906853 452516069 144987188 722630553 697764234 222998083 613849761 683405896 834969060 549888522 863114214 476937602 811289939 47270243 714560031 2045468 713792234 589901799 197518828 770091383 859059834 919403966 897591896 514443474 876768483 721866351 81484760 284169870 608592652 249788149 721176522 84050012 468478845 6487052 859546763 178990634 200441691 54977517 156867197 163469237 545713259 1679888 231210776 1957307 325164255 985370359 227004173 438795280 418472344 921579366 453593799 322351682 267586906 784279880 111271208 483750873 433878107 108299555 90574248 445682140 929294462 316639222 937749316 116898676 65590026 285710261 816392444 202488979 192003601 22058557 565229015 629923111 670662326 451645527 280400452 80325121 652530065 546430585 652446560 803986065 246770333 809679588 3182749 228147877 797795179 395605740 907266800 903533462 353185697 208378249 84934569 4712307 434613999 884590778 401716504 847313300 658797781 427254636 797455669 897281897 74893475 508626159 522124208 351543407 922341899 123258469 115451671 857227828 708664894 124695988 290074642 856691704 373526919 340155180 348014173 940351232 512397414 260301376 663068142 843835591 223032900 791787718 768349130 722125202 292625557 812307936 257439428 711195067 432585671 43930216 709488479 710824555 709753903 400404142 139570911 657477273 918785702 599192059 682466241 6658763 215038383 729303834 400448209 24944959 76201098 470448298 866119877 480947458 923604907 102038501 564046031 402558150 384047454 395539275 449097071 220368459 283637185 72241243 775593902 722138378 311442685 63020566 750892008 34130309 993703014 513766494 881146958 602689824 613156571 997726690 677963869 598850363 263734946 389937678 630718763 39025523 112777806 327456262 369345906 648437716 153894284 632116579 961193123 164136156 390932238 287528657 220923961 603792399 528397386 957010953 849409705 52388380 153984935 615862668 932283384 207453241 128281310 311442540 172860416 678560424 25942917 902500673 278454268 368122484 128586071 305668703 320129226 278879403 150560351 836500290 527610479 828176947 523671123 867641617 929312739 513950838 481879316 444921846 175996883 57484234 374711467 986491382 178091432 172837463 758820989 88445291 227930134 462872235 870630537 833801467 551798125 243521676 117762964 133379200 767792098 774022230 720683040 981535880 718769616 277226421 169819857 667430087 912845443 263451182 370230117 565145232 863067829 82827904 843097546 913925414 535118580 250967056 872521392 849338745 518303036 757905289 704277683 963008227 442073192 504438837 69538910 40070788 248254193 996853425 905394842 222112427 870721819 274785039 15847767 906529384 464872611 556077297 965690813 962016736 22229102 673122825 21860205 79436326 946905580 302821953 124649171 384672728 750660472 884157410 902270545 14694639 537657921 488162476 416972852 41821968 190358205 804433215 437607359 215991090 89092594 491081091 701645623 725734897 826403760 334610137 908900232 125316409 747645615 378871759 456617728 710489655 726149670 208657759 837970725 404667658 819319017 241655000 217534055 476631982 286277073 130076286 778769337 464524517 375335966 352216637 448634942 424548019 13607325 71870351 313990031 138083516 84500685 472605060 902606378 390174432 883971832 780555732 197106446 587796734 487852251 596860298 855123784 408575531 733314953 763618052 128187445 505680019 927987886 805687817 573411551 224116850 979667426 791383764 714511454 398632675 792525405 543545756 721733821 46646742 531895835 145339230 529469986 26140176 407130862 867495767 384025617 17465821 679200006 85864469 972023633 436606899 629403519 112103774 972352412 608351794 426413029 242942342 580583057 333475268 297949516 773209856 580543021 465761972 581128388 354216222 151098090 626942877 15427821 56026050 748936900 30402455 902624521 383623013 981862140 300588237 566886416 964373081 470954542 877027655 656580676 439804553 396210345 740932989 50428493 512854989 524358519 764460136 844812754 684428779 712626449 98085238 374809995 233868966 527073050 634800461 663353188 756651630 737649511 467554868 81794320 734160163 575126450 884744624 441979651 432916768 892215986 330216597 578726815 214327580 938961957 640724045 154049093 728496658 18178329 719299523 304361305 337771492 581117063 18012893 912035351 87679772 440584588 157451711 788245892 556399122 660755299 51279153 717476524 298817091 605853084 191966959 661391627 236403215 547744069 460129701 637395784 605681030 448204675 68967015 252151474 889326197 679888843 898587634 804290588 245064216 827074372 407889186 605710367 593318911 415232358 433400143 836182588 772071891 356623964 741154374 502390426 422511834 858045241 285859823 314601525 730522788 848086823 867224596 448248878 752359295 222275266 497415054 506431594 931578497 374783694 564739345 824253733 246995427 995048391 782556461 649141875 895405413 331119841 137910480 410070770 482075361 625470684 731556733 482578084 43468416 879898417 427684545 238361687 26586621 803943017 266659480 988827597 666254699 544915391 69940974 408842487 135133488 545203707 943420666 981487137 566650535 286128049 402148984 888297820 787596466 427695834 219843691 861911921 85680312 214415753 327300278 255984434 636735401 937732531 641655454 235195049 45564726 121378608 354861973 999289692 96191194 524321410 305321571 81227361 73041199 894888615 511815781 396213311 969934387 330496933 534472713 745226990 927704529 279015927 185414553 44823366 629901930 201953407 719644928 477521037 664487382 962488924 968581541 932848204 709911761 215497447 464727726 917836491 397086240 378090452 777285195 139671373 28024288 821477556 992741349 719880832 894614002 377663523 91920621 708782466 371125974 247981732 320199219 658540554 441243771 518135188 985936952 335537589 507543317 894857747 992999632 460255046 938045500 948734949 337064770 632514868 96457602 28655331 442026246 922288615 2929475 161610023 720149097 405639055 112499186 795581332 744033711 274598051 363865155 22056 140927145 445719438 43945526 67305371 713139236 252497258 263279591 774974387 684017539 583479265 553352319 69589572 252823825 612233184 970776594 171807247 264761190 994391409 961027999 942422353 12698297 553822696 105020027 323586720 651586177 314515274 113867022 676770373 740755125 796969567 460335885 722591007 488235675 685097609 564414705 140051174 384625660 651494503 384658095 43175886 92449309 72306491 830744739 579555146 943383935 415205375 766562494 608913370 21325326 917888940 757020667 666389851 68691959 756356359 981129449 744540017 756955169 41741499 168370180 753059483 862528155 631468879 604685917 81419050 849216217 397164032 682901006 561901430 354470330 444068653 649728965 564214219 68687819 791895138 97721382 146274985 912032200 940165994 117236806 729454568 782303386 24832407 52421365 25732324 114098527 500811216 536826070 411156565 78686480 300368612 784743445 939395803 999008369 449518108 956025114 347211124 848150334 579508967 961667865 496258385 342610758 259556013 610314094 953459042 736960827 132099788 718825866 223655915 409907111 208370216 337656777 891035624 516554290 317209170 27560825 21659828 395310929 488098203 972455986 668165800 409657872 12096278 565175598 190878174 149374206 455212560 394597191 843274637 183716884 53666767 485856438 762432409 54065910 34543195 505422714 968265934 314369988 46944609 943765138 589352135 522798924 284108336 439733944 567950964 725030047 239922364 689191416 649744459 328577090 813516436 732935183 633431274 487097209 898512128 982548835 898278317 104578964 137108302 616052939 990464235 769606074 996838816 597951848 913341614 123651573 391530081 662839617 123384641 9696144 273822500 713901808 628443340 99677796 808564947 518191790 947291953 746215939 632924261 751799091 309078208 715977611 414873842 960587592 984634360 322906912 676821100 270875457 346417320 633797449 558228591 894277539 448089215 61334199 557308603 331907047 303770516 798886681 736616195 782020879 759866039 182451921 657708701 707489036 513196421 535117851 788160978 360629577 384728444 77516673 995531600 97195046 678256885 648355250 858927913 889254351 272876766 382626009 867436625 661215717 726727745 917852823 149134913 750254602 413162323 800957484 348201816 668002089 173124564 988689266 864126892 451058800 564149462 308339249 750006387 752697833 819600571 421402422 259046137 557998444 524094411 785955874 869363331 199279502 334342020 534040778 328042320 184723003 55206033 999487741 237486736 540569722 862544559 650118361 679851759 731506762 45997231 331483348 826959197 510725224 759759215 301697831 322384348 609167309 970837752 890191813 720760642 479005749 32679962 44494394 129519862 885139104 90104715 27691616 826135564 603865392 321939380 233845568 281843858 749612790 151596838 371078087 261451984 816473742 373733255 237545814 476113907 198169589 632097528 738898702 823039193 536449961 662032197 920232682 786308723 471547211 36132237 209672574 49445319 714792492 180343167 573269138 832552557 806715118 721205213 958205655 701051314 604498407 710246045 899157405 438369543 602851904 488187811 211756805 306762825 400116798 424735845 698414392 360595963 461465674 586405424 236500477 40869631 783871447 46777749 971489829 127581782 614598034 393124598 53082557 221852338 994396834 401600210 36878038 526363887 807008622 716634440 338607200 828189489 989857120 397496980 676837427 731780069 594304367 245311484 205541329 500550489 386705755 596304649 825968575 573585123 489976021 310544205 695957769 888880680 893452169 731177970 317272277 849808905 322212652 554739005 527301941 868864970 610024923 487419920 139847368 283976346 693172129 354555369 487804300 650279716 819181177 218890508 53465382 115009456 309376281 202910564 124779830 642109318 228189156 527737473 132522023 819529562 452837897 166084952 575639742 474945408 422680239 813479991 565969233 319281338 852702907 64827505 476585509 633333614 82642134 178840435 414477847 589273337 510763562 12295203 500321791 967820100 288083739 637431414 835142410 653556191 28461692 287319752 249162760 272394223 609464216 721853375 482444128 978076616 230993164 85054056 926066166 101571263 390859544 420294092 463685365 69832351 800868474 411416021 737815663 809753226 561938649 764888837 851394697 200220113 257791123 884347966 689569177 931755250 791593313 889127178 551754275 741295700 736470320 697173089 772578849 818257822 763442757 541064173 180065573 179849153 513237000 592728809 920856260 81410011 684458545 45121333 208439153 526632850 915346147 510964784 501602256 324750059 143544233 524753098 738197066 146985573 5691157 928052118 148579024 907310155 126572592 626111834 877109815 862461722 924447329 535111807 870035426 604473185 417826074 991042036 323740232 552364040 268361556 519342660 421671304 315736332 928957019 676296219 975230688 355069039 241362296 223599617 272760766 560789391 896796896 693418597 159566053 118197707 89659806 462071397 245925146 499645999 100444684 85410835 330237991 76202217 653287178 67510670 988980373 67916479 520562929 8145909 694737532 906471238 689693545 847619161 256454971 885261456 292122017 404852239 167763260 989201730 60347925 682445729 984527100 577997140 361856510 255308609 219820666 584374248 702309268 331696301 669829297 474678100 482648356 518018670 215393319 364261784 918678781 802386811 66992498 370095483 244226043 161650791 431664469 973655870 902659671 373536381 745563290 358710139 215266862 674074606 969814511 490534185 406878440 94024998 237083119 765481276 689760329 356304605 943379233 690339319 404282405 443139858 450492299 771119346 828832012 987617910 181790196 66471184 900113498 778348423 379542521 104367802 696419766 642349455 946700659 207746366 318938339 102357826 273257080 939343842 902028867 628533385 164190673 422883409 274316652 119310616 651431161 648898286 208288459 338364577 861600827 873983893 242099206 167855160 627284459 62120310 768095582 850254091 133670376 409232769 338159462 280686737 458345074 296658101 210244456 224777705 731867160 248993370 758995238 523676401 882283838 595265585 794116264 156704239 947591029 236345256 980459522 277431445 660385781 455279972 657342772 377905686 493336433 963587613 464123926 329775414 867653257 496843906 698003252 922995211 747583964 139144702 939264853 96192129 37764918 434946193 461971754 385479498 482212588 176905619 688189989 501486974 202541378 927686129 165145469 562704995 611413892 902552098 539766390 639411961 575384098 729072130 541649976 137845827 865748971 845523704 876197261 241236629 171134106 381338327 974099966 65513087 476326521 609052873 95145730 335880111 902287754 694478667 46324446 978263701 216828057 258289177 185388546 639573816 848379302 580196403 338474309 992161222 450913969 996031590 802972309 105813409 590067231 564619852 538004191 509728976 399205801 591047475 721644718 793607251 658140626 692968190 184046066 286402894 439197203 711111290 122340820 923409162 324203085 922342871 930004612 276210782 122922045 518796658 388901204 206607547 632145434 945214316 515184477 522241174 182571130 747339202 318687378 752391422 32966111 184833948 386123899 932588756 393784940 444971984 94093690 795348285 521949308 566280923 133215285 673799919 346487786 576637195 180589353 119114176 94931280 461481063 107131970 410797035 649206371 67713332 363942588 395914734 69444957 490536185 370471167 752363961 297714124 537294441 520850231 543671552 72377397 980134493 451192476 827065247 718016296 621640501 60940906 837322954 125736765 210776476 319826754 923149035 323924220 709769328 361183436 916980015 5205561 867040463 240489868 888125763 438753681 437557865 23197148 256136933 557793348 866450585 461092112 378227323 204074574 42863077 708051153 634234479 178035689 918105380 443523602 526273257 501995269 562073527 305346807 471587444 342511409 436449426 51778265 156274940 815717662 514862881 847150143 722921660 408201689 890873833 942100454 722765840 956060232 145396357 7115954 388700953 204253478 253272499 60701220 438412763 851597285 877901287 227969636 440264815 991427491 398882931 359215732 912541885 18323174 469467419 681556595 727916952 89325214 961725287 858710644 462602662 524619186 309903957 957154762 636879935 481286914 146498702 804271844 714129426 29529696 578034136 700944080 446778323 806719098 724971149 311785579 3193004 606497345 408021586 343565160 586303790 711227345 997816747 362410567 429815067 49462481 981882554 3727969 676053841 154314482 434362778 426751680 145507685 892812969 889373721 332901383 840645042 32627530 44155380 301342257 144390581 516767788 195176671 14749247 163043682 54984450 441259092 63410568 548703771 667958958 892224702 282219259 420589194 358581824 553686844 808409720 889758093 746265268 36158490 98032841 810324223 498982119 545919267 111073262 63253796 287813680 155838035 634812230 764913362 732954021 675953212 406267745 947551443 562202656 481574190 719169062 596912059 301881434 349582671 118674514 70548862 491089046 374590554 324304241 779453469 832421812 958184311 143109767 997232383 204774549 711477715 842560249 98368308 904703211 629970951 300357611 823330837 930663384 562677932 663902289 746935739 586533282 652856640 620632169 22876333 664333582 671407522 501594516 71981179 806721168 694764009 998800575 131851811 276196296 658076083 383574614 774837654 93552177 231435011 168338363 87682684 992676450 732537744 896986890 986322361 260000245 790078456 13476760 641642406 928667535 211965449 855504211 676495832 344862589 208605941 793658927 799576843 791490861 240221642 623384354 889484639 638332358 821938546 907575558 543084446 454699424 366104576 738441290 466540800 56543649 242880145 312867802 330937506 48757290 502349345 424018559 401554620 911676813 25713022 675141431 606241745 426188468 673047784 461445353 729832995 506141988 981156941 809109590 463056267 260237018 409993455 998137633 792324706 423380925 960547981 995269245 195285433 311427019 589328393 355339792 322549639 401168234 785343404 205914887 816178521 85306746 156329947 155273215 797126197 192744149 511561737 36870903 328252946 591884079 479585642 267556586 516827586 400634019 617055803 361650395 33546117 490059643 38242261 112497684 813128870 136737991 879471610 998729629 358940729 472659025 798441191 520394125 806836440 560184588 590157741 321942268 326755014 542734441 54087541 819108329 625275631 726208400 547111370 914309778 933076307 929273912 257635206 457764048 581470999 35269619 886018404 945877795 930570851 738938411 601453448 149652695 961638237 753556944 120167567 660386136 659341226 432782986 150274121 356113147 994217944 226888024 327566492 449729858 846959576 891465472 642164176 783158275 430954282 748611965 799859131 263513015 258198187 481106682 385687291 221276069 577752449 490431912 635757165 449049414 772498829 555880323 304901626 242963411 481949445 937900822 441611092 125836287 498785700 895020124 127844495 632179573 253624264 10495945 249082309 890758111 17581262 333208202 888095894 426376189 405559398 616386260 257185559 765331067 45738669 450304657 61074480 217910053 319146699 648687573 39490905 281510454 571755026 10178451 389005943 467718729 985443666 345024984 788054658 446149919 115407343 190393477 332994418 222201625 392687021 484101606 792630139 217452761 731672625 849578901 71949012 470398761 925345674 924524689 693412009 99064115 26124569 57951883 991471661 252406105 643551251 998360831 689094619 915385969 447141737 69244397 449555389 159845072 233400360 771827960 999138117 785236258 426408253 624506335 65109444 358660059 820531795 195344938 165880631 592059281 838403021 695607866 837033573 593294503 560545420 660628279 362507083 107962417 10662781 411579484 321943610 597273741 350066236 224728257 998375003 141248435 326416042 132974671 287664289 964711882 552404720 665844669 507611513 16029545 231329438 662870729 704383830 162330617 638338086 534885948 208085103 831886002 295252743 580761566 742987107 643983273 258800487 893365827 487703183 398873184 526478485 705897080 49649380 816196288 311908871 857751885 475063454 186525604 785991167 579942808 697076360 159831233 53757016 270556284 994108125 131741664 276264557 401934916 570688300 525041548 489382841 286998714 163475607 730908164 387200051 368291575 770548090 138207346 33612703 977526794 49366289 67757778 411063422 74158199 276270237 316747703 369783242 359605848 244159655 529322761 816990429 377954582 27977204 297570257 924784960 796347619 389587093 729722282 371144696 153783001 273175912 407888119 911687954 599757441 44443818 370795495 503275173 538778518 283100575 519854196 527378411 460928438 30727662 146927709 18330187 167460857 593315062 732321392 881765974 542777368 989333889 506609659 628565264 101707471 339615566 867857985 513167105 838624089 996897735 419935662 509804801 732887183 844579676 71223840 952812311 913893538 323660487 223144306 30086317 737003831 499626827 608135481 201652417 641075477 169870697 821259393 332644515 359275844 772363448 872484236 146218403 897853131 397228276 982881465 413318618 298544623 253301560 430977111 944542491 284037599 549977738 163844450 104322219 225707308 481730601 663383456 555890362 255741019 309728814 118400888 6668928 867078939 97650156 800448292 450833127 649099520 767183712 150800768 538148514 143095318 603619547 21510149 459419283 259707594 759815829 297773723 504200543 257211711 26173298 241835743 963233427 785604547 369113154 275733271 97776805 422838840 27087255 681048241 344344695 968321521 488962063 685684328 735292437 215537684 299534573 396870374 130032706 630382072 389082231 532778017 453577018 148991965 157562349 809016766 399949736 202559139 494257572 339623427 588654236 745174617 89572854 614304973 45260583 469620175 274238751 700269076 960219571 552229789 988859863 810229672 920150428 987336464 411090223 927259862 996070649 152834643 924817714 401378195 952950431 814352808 177508048 6780178 232496138 483530712 31021563 441799046 747951494 378489411 160250675 467016818 258665829 230012106 422221859 475323624 621672395 243229137 518984103 856820864 622620745 501411231 25363199 352783824 672245425 156832676 836454401 128992783 266808744 746718305 606185278 1757513 794381968 774868658 560192249 630202334 938215665 481299910 694183399 61150550 673130683 654377512 717305735 615245519 77406321 468132576 209267948 549354092 786784582 393861288 376127329 772384420 606469083 414718212 493966018 530930969 91170889 480461790 454907343 296865512 623115683 593428447 388786091 412344364 155341281 125292725 875073713 220979442 557792041 400473238 340883082 284508290 787276442 846896000 653726813 192819461 661599167 742325775 375372071 112648018 664949736 63777998 966284455 695150189 709325630 244099977 53162433 683048029 977490576 674069871 281350447 885941802 363027939 914282573 970830746 542153773 389496487 657314372 854917062 896123502 948355404 785152726 410866348 882982087 628636931 664452125 627090289 816519288 619917728 468293009 548084506 683690840 422875121 573794409 212985007 517370201 991152730 439127680 367189946 384537600 113135266 114149601 135155918 739007283 112553643 768594227 144492780 289950214 600599590 484311560 434838210 622918391 412961759 809808938 682235143 188858306 991851515 336754304 685097907 859784010 161515186 215870010 284761574 321788257 851406520 721290313 358629668 436295467 308810413 637587960 668462351 274625982 767708353 252657097 221825087 644083241 890970195 824485232 675991214 386076807 250085050 339462644 758634962 947574653 230870901 164093706 637800792 511925591 382742610 91763409 846424014 641945384 346906118 203000061 391559246 666407042 152940386 695892891 177922759 199313012 932568259 713848199 456272342 165510728 801352551 547686820 44907140 773340824 611446561 110404267 586345775 797410268 657928698 984971425 488743961 174036955 185722046 179207995 806397110 837480994 338902094 39243061 803259132 765162314 107707617 493909871 981509558 526814374 957808435 810092766 9920467 705071605 575094865 253683639 105223910 559166679 903257512 576139394 246862733 343644546 979287837 251716918 563699476 415532218 203926507 886163431 216700874 272443617 291915514 51084150 619359251 349543883 373295603 951305358 806649490 390890296 328171822 878085939 791167696 118751548 959744030 877376989 178883624 371546003 678935444 987025893 645467310 552261350 551075620 883300202 56165880 9087638 349165360 417559636 685530437 276366162 995780647 705013855 660276702 566110885 826098663 410708764 161438484 607369126 951206917 965152885 906765114 526975959 249086182 218407851 864692113 737320970 448310822 41960068 501932185 6955314 132317067 832952613 595589046 83459996 502512979 497792190 400721750 777485605 682449634 47628383 488102681 295929389 125914118 973113899 848389096 161364263 593052247 84457793 640523402 409957574 926321572 162767558 661392954 901433764 382325216 997099859 246296235 601014257 757138465 929860125 184942943 602211849 540983648 579322349 146586055 534454284 217107747 844586941 71149289 771101564 790092496 830974992 842521854 590983514 149044000 237201284 396579486 158460078 482392607 742141813 751485284 114425824 105685856 275889247 590504432 137769427 954236543 914996843 985902354 495784759 255346170 865165309 323535719 740063686 890481870 975376194 63578525 773764609 945809290 895238368 712234009 569178556 941612981 774237082 594955577 978063300 816080527 485837494 537277428 74179547 655563490 237606660 561058542 568435666 349057367 32403496 803508097 193344387 974541579 705903450 983678502 17396415 838397227 571811121 72306798 371090055 109761357 329801601 540641425 563239738 489979395 975429192 301536052 702740087 232328325 622086883 32886326 40516551 869055691 704593985 740410381 285168165 497956133 317076705 441415140 980441501 670731649 603793907 254554791 347657011 567428155 425930420 24823942 184065627 72340104 155156205 777417442 369386375 531998710 549660041 420445607 781848678 881426699 864678099 876826260 540277186 603551261 307836526 458040116 876833916 576654651 172545819 807729507 193153936 898840105 555017387 423770501 232085796 979662892 737209439 770613955 508237563 11660677 165476013 381924320 11057182 191463496 481868989 532012445 901966262 945176857 232980707 904324996 7774752 847112751 996140681 282838310 530793694 327931897 991205432 260283593 380951151 54044980 774674865 432046036 712300126 401099800 803194540 228251525 54551541 87902349 124896722 23022305 679545462 492513371 897353057 552585985 689743979 535744242 630372885 176102776 340893036 928829818 354851144 804281031 386387447 633032475 814730684 754632503 838573338 232183074 268816327 191161415 166253391 682272454 524705883 406198003 925758528 189474146 213994873 726052945 641566239 321443219 641675931 51436859 331343249 457234358 612716224 165011540 71697288 914717544 31695185 489008148 713863564 543709509 343178588 471949040 704359340 356193135 264460608 424671756 402253083 891336880 358996571 580595593 846683294 707099337 73648240 659299663 320235526 529298844 870244724 466361717 339079613 971798787 76238978 897601885 547880093 14286926 885575408 631945650 777593922 195574178 2828437 824154234 320917929 276101159 598511034 175563137 428810020 363944916 765006395 448726764 605535732 612129252 157866377 829206628 803958825 526587873 917007330 877824862 354248563 328783489 664728779 970012737 831987905 745130998 62188177 374769630 68596257 825570520 463194264 958374042 765091185 746704760 710562781 130568790 836209809 829233460 380770451 831486830 899103652 642571365 193926076 646282027 531895514 105332721 32724417 112141064 268154012 96246828 508053028 644412971 109336000 35765218 534821505 554335830 276028424 685071767 598138169 193332626 370487331 983953364 848205241 268794323 982565381 478322085 104387319 176733814 509477134 73573374 879025440 151980007 816882549 62586307 288770379 435218840 378133997 283333115 195839474 662572941 30153364 16645017 999388501 697315988 420596203 674615464 301777748 740294709 956767975 308702427 79216132 280682266 76807014 720731038 689595554 583313651 57265679 372306735 986619194 893246405 224605796 477606578 231624426 392407769 19437715 559982516 751795399 167458721 508696885 392124401 685044133 693898455 973081222 879725680 206902444 96654683 589648517 3725220 594366088 408973309 607195293 856081323 346471912 588535486 922716359 271329854 564624352 623722504 360232414 661257727 110241232 285656391 473106268 413560306 286590381 638728194 659938806 813268266 470281548 768148968 62745980 984237983 51612334 489035797 189730542 23247639 335927243 767498800 878265086 847108942 599097258 874863002 683397849 421865409 457346182 344824214 876158387 691796412 202428820 264618883 644591621 868121588 961777177 924693737 191556276 746519626 703549633 494243383 41299085 984315820 691970482 917292497 112456355 808039820 373753053 331913013 910612728 168345702 81754876 185013067 924610690 84429212 992256799 681367225 828064902 619358261 470590944 486799887 588653073 580916708 539972938 999166335 464304343 396598706 649521957 540238830 159805693 484053819 576574887 514067050 382444486 10671421 641224580 305120085 996458827 60955760 19966869 711665986 740976655 730634001 635865514 19687030 542395695 456014069 867156913 563439015 739323024 962270227 562413618 456197718 299861215 112609470 466190118 105019624 362956104 301536508 172342822 613177450 293438421 101567252 818864987 52265061 954992653 291015692 591509068 230964105 464150189 354994880 991183903 606160345 183255779 208624557 658507661 685190492 697776543 423822042 825504873 324664755 722637734 827479137 348044920 765799343 40565532 439425206 589838066 468809260 157523163 526730478 771345336 647843321 38939725 271225727 390335835 980587759 289815816 474570200 577119509 3672718 580472700 692283621 526040127 86267324 466468497 154646653 620313823 617387951 651031184 858819155 781754473 712207918 966045818 933438833 633293960 155116143 745531321 229346066 877066959 610484362 552612669 753526544 892754293 963054388 67973266 340506514 69028126 219903241 530887824 450510269 6043297 65071916 308555515 112044415 639815738 784007266 428359371 186500329 955456564 192469821 373478426 309490743 334949839 856044025 763228655 714383675 821136865 656360931 862154109 987326074 330951033 945451861 344337235 149320386 530820054 294197 6659562 774889301 997038283 874948959 626984824 197429418 77486698 422332167 305500286 687716678 146578688 368469593 560244980 897407775 91280988 338809556 889134478 990801944 965783240 15891472 114564440 614780637 547926217 798011525 626289272 877484895 762004459 725642214 929791673 337887935 716544798 812980405 988842062 624275893 211243421 584659966 828135873 609201360 792869468 534386636 286178045 484169028 31404244 586893373 282037506 403149776 17058655 610278412 57150903 972921030 829875792 313528355 480616355 227550610 263385735 91637754 904059312 550307217 762649552 902703080 789911165 837549943 794486954 13614484 413573026 777738275 754734929 415824572 579458207 426152390 453964413 134615868 222195533 10315339 473496874 270427796 359346070 251123257 725990742 32551040 205272738 22864456 604744779 535253258 571399205 999475334 987448963 44855687 482400588 298743535 779313071 559741955 662640359 900892210 138254161 567812995 951135816 151300734 993416130 260512963 679198304 856855704 143174289 23452527 765006939 704964058 122424576 672316362 862405308 685516619 743268724 293771941 154470486 409643526 256446645 285418017 14650331 806184137 721405749 696381136 252756553 74112616 391462405 59997524 785445806 995095995 963554350 510409258 787985926 910536688 596443132 598954175 142296010 289654817 627805937 355059238 202834525 464056391 258917545 421840357 679036301 107678875 673033292 560981947 695693814 998664340 264654845 13086344 503105233 394206214 590320686 959468790 94381219 297033575 738678069 227870976 447081989 208287326 635890130 571495534 131772982 208467979 283767549 910336563 39612035 884629729 273784152 943517456 337904453 191258434 384316134 236919542 236520032 385044169 123224821 549617985 753038271 412910291 972995277 748636713 103694980 954815269 389493533 851186067 63011403 38674674 358971108 394033823 648913174 513625106 804142338 116133775 766179439 192153050 148975555 332776568 435003857 203963057 76697146 105165010 306576855 719948973 695425147 826754247 587953362 219525846 318218670 969790485 954574758 12373503 96304353 920721225 167776504 790254888 19744572 930444967 562125976 308473992 241232721 434776347 587019098 320487387 777195598 114929005 269331025 264503865 305384805 618900828 772048255 737051303 450954237 680494810 696224258 131803583 513238043 675058930 331261624 379441324 170119570 104584368 492175743 940078519 242114633 41516432 768507570 704505255 832005397 262956829 936798383 596125012 339107136 276517903 649501836 323198212 91106960 779177447 509238307 360031712 730594840 596099591 993446422 15406125 937741395 241682956 65581569 316003260 755564821 42033761 534445955 852455392 100960308 125696236 216140958 685541149 847032409 171253711 61193233 965933863 916640961 782745794 776008869 441118766 401988852 663522505 624730232 226952773 890446589 538165315 192496851 318765316 652977227 476714145 32604253 448793086 47369292 839447515 1048487 120972179 981254639 86333721 264094277 221407193 219264662 491108138 457771122 672464108 215375336 412834885 669059193 339834256 626404906 167426734 48945593 336294941 415501006 498990326 802551025 405829013 812589439 974334901 71556064 175556909 267672668 693059965 25119553 651181165 726631199 841610830 413127230 783802433 761392068 633022349 991402988 794917891 402170473 211666457 823438161 894242476 32591187 861712214 666840747 327170063 498331572 150258623 8943922 39087590 82547954 794839847 569996933 269062060 882218545 905765399 952732794 71060508 185817294 6513327 920602885 277727433 201084431 774545703 393399431 496764616 32205336 950715714 222232578 728870375 894526425 867060260 911757672 469993553 403723306 952950818 224262168 697503722 324931229 38427318 902895991 725818696 660416861 530539390 438888014 656518796 193487543 221109241 368781748 109215668 204745824 57053590 513422223 54652658 340599900 110493832 81452690 58571175 164709921 178295327 482538401 867127351 305270810 568971126 324117540 893481928 404655655 202782539 761810476 207574684 296975268 64111570 376696477 505503313 887622570 234234457 271152468 157458024 945409436 871014989 222611981 592246874 726033563 679855945 928780500 815174652 568351444 534148486 446746557 964203511 820465687 934202778 242618354 339941270 545618983 219048860 965608 122158941 570148397 702092706 613106516 257281360 876618886 1031960 921281204 905411589 502658186 333713769 150507896 234681979 507076745 486566564 595110612 275641476 374065273 401209185 791648762 356233950 697728041 850628587 357267818 242790508 186587169 751897223 338049283 659336024 667062815 442918436 205077587 205636193 616815205 146740933 406962517 742514505 783567686 301188008 655393147 357218029 771138458 467334230 343886632 172340472 767805947 481485511 368157428 270398120 898968610 641338357 565797139 653110854 274473883 873803216 855819105 306334241 106803077 296400239 592640252 975241490 56498682 615462869 636022184 797623595 338273961 812292428 27996763 142981951 130321179 484788027 396073599 54945504 357802750 135943248 143286468 633440935 517447061 506071587 396076778 775850238 312163678 800692081 985505897 744556129 181878377 615361159 265457716 875837272 740792809 950902703 581608811 912100644 530758016 910680451 771977653 299258773 309608983 840176222 252991750 479010268 623829005 42452164 870640565 723805796 971516716 907496126 961635331 240038913 117916555 427644840 113442344 847438133 574076805 67512526 794214809 399073410 20514147 842443736 538853383 521578327 190752276 37946959 430645479 621860063 909918324 472083666 249720315 697720916 643004734 386222640 445255463 494463117 517454222 369050591 157861332 863808034 683831678 345679903 803167050 558107244 415915026 758911221 98073035 262652991 770305816 418287594 759516986 416775591 25074005 565503867 117036265 420280944 491974361 666495702 39989478 98400059 668650558 599311942 623606665 61328369 671684315 163402717 514420331 380583762 949955543 811737802 407803185 983383706 688224828 84813015 982053263 793540262 788971955 706842287 258910885 634293954 474122951 599491246 394710491 823976116 895019072 990489197 553381375 297871375 299638339 648485436 551665242 955873855 978926678 811069638 518070898 207417094 107982463 800001803 851977992 545211043 986076528 694001311 197205293 56811187 134073339 424515963 88999619 829182450 295393725 325309660 778397971 266680102 294020916 750448734 42012990 933970341 112732539 32780950 31894866 513371631 550692482 113170181 798925546 408171643 562634581 908204253 915709037 174863481 926547973 254261124 34555112 160075143 667582271 878201314 528819250 346027985 402109887 552656368 862227876 8032949 833394194 662708112 861520076 962181855 261767077 233731432 761803355 667383324 709423257 60425130 135675676 559110188 962505329 860210917 477967084 693602836 393268352 105177822 713059045 10690459 212164155 749121734 830154607 126573134 91227924 514551939 992301806 177074993 387189561 828122543 301714336 402929806 189071825 828744746 810811130 221692599 639361157 340860345 436266780 65306619 579914875 750253154 309155299 855874221 976898140 679465252 800419425 763039983 454399285 498047899 791708830 4847851 995447985 188189541 352862998 365198425 368952640 89241618 806782557 242844679 12698685 193970857 534292592 8158155 11120361 970251968 397361080 399586827 424558740 911329076 620557063 102538592 709090620 485111170 891647813 191301986 511516293 246977688 566943315 194381463 75373408 434292997 168607691 550955033 981024666 273790333 759126817 44264897 4397296 377983429 456925009 592960353 879347068 768376526 450953277 936816955 452512082 250940949 267580483 731253135 389829585 642869270 36171544 299334508 376560976 431838860 285922093 297842024 541787432 718124723 120913115 871966061 711333080 99418071 263771799 998251882 742153472 154053693 714303453 498816528 946480523 192623830 125855905 424616330 724704474 862110069 38161817 2422328 161016658 766930574 690147697 108641478 885308570 31327139 574038777 134746459 705592601 692233229 109175778 112985374 621416863 687956093 98567189 56596644 238207446 184934792 702371108 761989926 492497354 657465381 623516556 714547124 364351993 320399802 946948798 931616156 662264318 441319311 626929622 732262255 717139840 648040991 325486158 228873735 678229258 904031045 648709376 342415202 398272508 758521910 6123208 536034021 716082677 208027106 86763114 871846547 631522502 111401498 981149629 28057075 122190740 70407923 728062351 215352731 705197166 835540702 92310252 82260724 501779139 420321973 76200436 840717218 457170371 219935188 33858480 804603073 436659620 981281376 849068300 3609106 568978368 515230915 872049078 665496172 754409289 200988343 730560120 853580512 132325010 9009215 629357778 381465099 731528390 148658323 340995778 539815681 127256888 792258731 712395459 571912565 492020743 390644303 842831223 834414942 949110322 599097580 448279225 73680076 924509862 36026388 571489746 389662226 580923203 166355975 576569261 565744646 496606781 366851581 937856763 53124871 713564551 759748519 506233657 10866724 67089448 877553782 562948367 341630771 715121309 620886291 971534983 594134935 554325710 140416482 544421740 383957221 768167513 373311915 162966179 833452672 684071595 68860583 981311002 135803990 70396880 359949123 940397910 206547454 858414712 223666742 473359491 396895989 127151680 820697915 787805969 483670299 747255307 624936838 597479348 913724623 469276617 867152558 43410974 342218076 371052190 28327403 291341915 755203440 783539406 2155412 906967945 611642439 705371292 713314839 497849682 408935229 371347234 916107669 135159076 601935704 620695135 617597077 471770096 974893345 314724388 1408214 268542986 67883219 94112810 662625688 222393833 629017839 337008883 846253481 242357741 999651535 492695388 307532126 335025217 760239396 241831704 898355528 464765298 835387474 446813091 66597621 562977766 448696194 257557290 386286157 48189171 778292345 434362364 631063918 142560481 441333893 1925786 836820410 492908131 699684087 385111878 181047 644569522 180470975 583754208 388207602 746416288 675873146 775212509 578212765 323746260 415625267 18137027 942943993 518767582 548411024 369892605 361933704 489163023 358555042 104270820 493632913 697965312 87764734 534218991 241729450 780543933 397128428 451321260 739645833 369942859 872603009 989226544 179048701 664168452 148772919 831156675 922830879 554138420 158936481 799461547 979165240 858519596 983893985 831290969 801392745 834598105 779480959 402909046 671908670 436632696 790166541 658155332 882675593 279644197 981675619 257792221 501444653 510576771 214919902 937406027 888137106 251542008 569033199 309735315 908522685 274413962 188448113 948100088 675076917 2943270 902679096 500305973 658106791 560898819 190278168 243064801 773112986 534956895 554489982 637275647 33209936 32262709 828952076 688651028 788053914 423979776 392982687 389719520 369219780 955651422 85094953 495533744 543785959 716233081 422853749 325020822 337928501 340688273 906500612 826532319 440226509 864140130 809001562 111570721 84411247 338395665 1803749 723163508 677467558 202554988 21581916 811103958 417864924 863747784 765079234 770042362 573133816 380386546 974274654 183811727 764947030 25141660 528426270 59587496 632920595 945992907 539321330 337830300 164696271 711942334 178962704 514216983 919162813 350008580 168990865 697775400 438080557 336972705 234989823 84449625 369091318 439785771 673450916 331840198 777550231 56989346 507157882 11601618 451560063 500754407 48771785 156636322 454177230 38078745 525007629 491619115 448041528 562304226 752024226 263749852 308762005 175373941 338673941 207907872 417834798 478309385 230622260 7140896 96067084 543367525 647467407 239377691 251335555 525158295 501736498 734969627 19740429 45124761 546005520 166046209 709418375 149250575 495767562 748562055 70706239 944955385 806618701 109597683 396794082 216100208 877693304 403667444 443203990 112958587 696023903 248481892 900077258 456104844 682137375 228566115 767693015 681852671 67838769 838356091 333637696 866815107 547678639 664165701 769792126 607001628 93883941 639694788 136789922 985481307 495610226 858196603 409566983 382227300 471627837 942101137 898044780 765778163 771781525 648593405 35200884 242326228 845333791 60460674 505552625 153391414 304496802 502414729 112480517 453359591 306424991 106103820 731335575 867982473 23062971 159109379 865564734 915002533 754912190 8029107 863564928 578579903 69771582 563464347 820869167 942417094 105668114 200969071 139168346 965611673 289666859 245455292 820886997 838607396 221122030 312216815 383870574 643125221 811998115 59761986 336964204 571294755 111135543 141104995 58501102 20108863 401662810 444658287 323476576 661273545 454602013 291998361 97810326 803880967 996351547 95345092 446147190 655643091 483788468 976644996 692837809 280757475 519080216 706117588 900198386 2178916 246665611 164458016 800600448 858956161 322035980 799349800 349383462 533626810 135865167 897803411 855950959 643361758 124109595 736212451 912985627 813440601 845478571 692503200 99044987 490106972 917768762 328642431 469638514 754855134 300106073 412221102 364640067 883518384 800384732 511599401 193577271 125767913 671324684 142113558 500561419 267533138 715924683 862441926 896338619 17686630 444986251 712416124 444787422 408412502 103453159 180757108 523240467 759306777 39461299 237235408 291928772 643012084 911324365 844175203 118353501 260454756 160540406 641655984 911615769 946775754 443815452 485101551 502566401 283342219 239625540 887099450 522496313 519929087 931041222 161318132 822365602 963381385 10358515 489093199 722387300 196670366 461323756 471380931 759518185 537785440 618918859 910658940 785472733 115191935 144512096 968600572 174769855 863916240 421116924 467025534 448708274 565243936 456944717 852722205 663408427 262340710 427216377 820171079 349996544 268619520 44186288 389140535 953664685 939481634 590416073 115955957 768687183 364181444 348722193 278475674 855798083 210637309 951468146 866789176 187105216 584138481 337971692 154108825 256369697 793802077 135564443 197082965 725104027 129608349 918211246 360520941 577921756 54095181 943258435 574146014 794877530 36128134 840886429 78793614 867186104 804509686 350769801 762951756 453174070 753547336 765288434 731617406 534438942 837399968 50313233 866929302 967983845 544115085 558540144 941372038 383029000 629022590 665558023 220786423 952932231 81249422 552869932 789500947 686632796 906832913 649467346 814934032 936563926 558381863 211276363 743997599 964381215 281017429 881005671 262717629 718162490 210317540 338880815 86504672 447958987 863386680 929819421 251772736 452842081 118979709 987087047 672233739 785533001 959726378 982254800 82881380 438016647 365523074 836874844 570123410 773361482 951402833 323388635 828943754 483516264 880433825 1469955 811803023 93260050 757932403 564059385 980256117 674650584 353782470 347343492 842426712 129187030 856171261 462490575 149924231 923590938 958535937 770333227 615895613 759630978 783981166 65933863 984302094 930014096 666058397 845125831 785319573 935239528 947611742 36359443 712910771 259739303 859144112 552812486 1887419 885492633 418392329 55537877 806687921 903179993 13905207 193134107 357808412 956679916 977981578 460538617 14216806 912564171 412616147 173375229 626775222 921717378 530194100 144852668 167876935 549087713 807292232 17740065 906274208 63106550 279740938 841144819 464809679 68140573 694990841 571208640 843189808 11715280 501445734 909424915 528485836 204480847 699479133 725887402 739164416 139229096 10367937 536665148 176159870 817901658 55184949 781424808 879312529 553280316 779061543 441900406 50726097 114118687 362039723 708000515 221853454 82645786 789462914 463329022 76186977 475047637 117819643 658760936 429457099 419890252 79922471 57532863 336198913 39270609 434111294 21013593 457469637 738421626 549165641 846082171 793892404 835059612 262116339 661683474 370175817 950264707 705777701 194668882 451351015 71258869 913267696 411828453 100785920 438754733 6572203 23197511 868835280 508079253 835399360 67707138 96472605 198846879 697956473 825087608 660595701 947250719 111651405 421761959 764248449 823288449 490421041 659244475 474662596 256257791 12414273 955550653 414419820 397426535 379674525 670447800 363851506 682047159 93450111 753006788 270167896 672365381 45965822 647266598 776888198 280271481 74881473 899033276 673496137 268923899 665092275 437365331 818350250 471300999 324776217 174380977 12747722 357584057 834870606 759873946 987780065 857573217 336409737 810015922 28053551 417980865 328141023 727740386 768967646 540742333 202338508 966714461 593752880 872507158 127913779 590942109 579835380 245949160 145195257 116922767 377937263 228339718 528907886 835392479 602810320 647956230 477258102 829610313 233341506 704146940 87612862 989593143 916864883 414791909 718186081 134481126 437533795 19291866 627412914 201501957 392269297 868096616 36376438 74633658 892347322 78640926 97383362 407506955 664808302 309180588 422850322 286699252 919399265 226570208 568308352 586723870 539340934 118580658 198833292 352682804 978958487 537179163 821555699 804639913 443945801 697587621 333414905 160600989 629816865 809573427 155194383 255843105 828360128 295784237 91682989 859113086 928894919 732108554 232188906 286483284 389849696 756386018 658155471 921729506 159866614 829102499 518711617 840477301 110327023 652768170 484087300 476473219 243196621 432370786 995926950 909604317 198007594 141163902 58646415 41734381 685564678 293471334 379507154 580485288 64109596 960634491 793875743 747912225 360436643 734431080 735891778 613074267 758461198 58375647 406694036 399381709 73962317 93144292 324392380 235529979 817181088 27406436 421992922 762581736 796262635 798383490 290393883 733009275 281420454 356920959 149574596 869337994 299055871 130972037 598767008 196659511 612712916 513830762 801925395 350000437 335222271 915623185 376100522 848590132 133479607 878836091 472522551 237745097 962661703 635820915 641840987 232340224 117804981 216798663 690691627 719824168 894590024 422000416 171663499 115303670 159773910 990106139 964061878 31351181 668178312 983171142 592889236 819433147 747482198 405051602 549206726 749106831 302809135 413383049 833260564 255646793 282524395 383839703 189657064 456132148 804803215 48737760 668687926 906441365 26481669 808890149 620004637 261919327 30267617 892232266 223041402 989259450 178705490 574497031 150965489 569741420 258345145 548293265 162863931 332799938 620468889 886194439 780543705 871032349 104430226 875916085 35051675 148564154 798041264 735526745 926194260 918791141 271660585 74570796 433237301 999814417 125017816 472087830 38886661 317059582 295791052 47702585 431194285 792809271 303562580 668925753 483027369 862633065 141028577 569493414 308128488 39088355 395724758 273733953 211462375 161066833 984370837 368050978 85591325 567998937 275125809 913730010 367422391 157931804 398784068 609702747 397430267 624815633 323269684 132458054 315670084 174319936 976663131 673856984 159279822 423082125 445505505 349988499 922514137 138286826 71972915 315997141 99444113 605884111 737938145 407709765 57139060 696592410 316395071 946655784 125251904 455241083 634050201 238592739 620501642 105622439 355919281 461282153 515147242 218116994 699795197 60157304 521290576 747565301 592541622 95472772 453704114 619050692 43751878 862824072 489476299 40873575 773857573 278406334 758186251 69749607 5602067 10682188 836619834 239739081 806009509 623032624 83602634 242975656 396293166 698717852 119655632 626199348 468625134 133609422 361123637 634323008 426406047 999895019 450925099 428903852 523492623 929075950 946321707 151507674 995772982 42425227 804101425 828381672 233375005 699559870 184541137 44954203 598471344 970789183 997964359 524462167 613980231 410732183 814946826 772745966 351949375 9308670 354836743 542747340 728387782 62377072 7056321 19287845 400398698 693480476 893141027 141811372 988942427 400087622 107611300 84227038 791992521 619531088 987297487 704077446 177141979 703090466 635694166 240526606 409735373 667300849 382413884 303493472 586089867 537351404 994205390 542178832 294405195 124356183 575253482 215932526 169352358 588355581 68781505 521022746 756391945 928790231 467659470 697797217 691260103 83431827 126007836 359134564 945654542 879446746 620244429 767712223 173265156 91910756 924858368 835874080 218267700 230171988 729327792 909239952 568472425 155024261 98056065 660672073 846651442 66406589 124337784 473060282 272315772 899490487 747058688 19051030 355649883 130390645 375846239 938437786 370716881 885224902 596260162 338375071 562607494 717804516 271346340 352716647 466232103 530691222 334512744 494849694 958488476 257685518 928660040 391913681 6836684 307031291 706628575 84513438 117953472 701778784 923186476 351974691 34211292 563762760 437889515 56029481 229741461 764263864 944428988 283122498 28773963 191113798 366866115 446651182 76876738 268578431 251512058 33494225 181415901 140840813 774332294 735958093 94117085 551357489 167485150 466854783 413003519 535269516 315488403 802396350 889406574 665751643 446939457 554919850 329399878 489235129 116200242 56549445 400159828 31400210 700148547 17310845 935466985 883387907 349405762 796003960 817808965 131515786 530698574 630551494 150796662 655956554 739329432 889073205 249196325 221653120 976950686 724067389 726274519 480104735 605104546 942020600 335614192 88366297 311561091 75032853 467221153 357130362 431990612 869381166 775663371 591624718 547860291 714245651 842905114 399436307 67939270 160624343 606150967 559353794 156732642 375151381 537940470 246118916 648766449 658782969 186616390 231094802 762443195 502347264 382301806 724876173 419944437 856357785 519483343 97740444 684597373 860353842 158995976 899010364 858238796 945958236 137623634 457633110 581556489 577547451 441264497 505651989 214967321 631050375 301049756 853993259 337349373 726650768 248718928 695269155 918474916 923724921 516935105 904580129 296931079 874792138 89261457 263775557 861131533 389366633 474751379 390004271 86953594 218208646 770853528 621566503 361497301 756605229 247080148 925799585 33312848 917702367 298156631 542418235 528793940 992283430 809613695 482134344 993669242 912084413 664627131 524001198 463675046 462986547 981512907 717902140 69883304 859285730 305963149 443482842 572810330 634540638 912489549 273210756 306697789 669932727 90062269 556209148 872378762 584152662 530315048 554565824 543646764 886780015 498081148 462000770 385153733 325187128 10771679 515050663 752081413 180432221 54089295 440171896 260300350 685642948 545688457 60284558 261367057 462653323 116284991 237004067 990205648 212568133 638246137 502642993 381684231 158768923 958297524 712612054 167790975 583246485 197846529 824415589 439650171 871336032 477994303 798939582 675926223 218956315 382397428 352554219 750766902 694956651 432574382 868112755 835874710 220018745 781620383 51295743 680987656 232661890 160096988 414023503 689399372 866516534 574494994 326095472 300188934 963945456 837494940 482091144 64107844 32908829 208016659 95184724 456322612 874697222 18511672 94168593 544056332 631915937 223144631 56684573 872766886 795289668 860602294 339901007 140062258 837982273 56021662 452403578 525874814 274565808 923423525 229350130 290856691 926199534 190096658 713573221 283202547 938098935 595461869 470058539 536225369 660913040 15301701 928875391 797365812 294453381 123058645 242661476 650493156 554127857 707910795 984146560 279353377 736336044 970318934 292151922 609284939 882129242 513782843 606803908 461602742 290177732 66270161 849333014 476627363 725331674 212687170 553551247 468395945 569898302 36761870 272806460 599641154 601909180 77403249 115529183 451858523 293975257 547711453 851169001 285052695 999501379 917083766 686727821 812534772 860484578 6893925 629431341 921127771 996897844 697596799 51526585 167536164 621091699 771147658 913099612 704407078 280800562 838149010 41714067 746933907 495881834 639692028 199663937 783595265 812985040 363829653 385907372 280008750 800986807 630952961 490085805 690110300 997715425 829089333 464971172 243732896 820054656 680208060 674639333 876870803 183306871 70189972 808448503 988947679 17217532 741682036 681424735 177343755 100998483 104148559 932766090 397116487 56318200 602582946 884218121 6969011 176614729 203733913 383036025 741817445 102499711 216895153 150771411 490353069 371718469 857057276 469373013 987323033 745179034 210648469 31826159 237239943 896305322 881543063 218139735 373572925 285245972 256454255 958103117 997239364 929979040 769849958 674272729 880067963 293007823 540358183 375448523 262787535 109885809 443938458 876501471 288119990 550938996 875681269 375681561 282612935 840278847 175418042 819563777 719364089 777213608 645296994 614590291 930149993 457865255 232226009 19189307 494724763 120934686 55866273 343299724 836144479 896186786 556843410 228547739 544755386 88919749 961102983 896828146 61715453 970962779 711576320 874581896 867138015 513760289 826079805 317340785 6161998 680487543 827394338 44398401 704453784 846546001 958497246 162422811 862947077 491249365 578878803 631813369 382921972 622511298 334058026 822846958 219609379 796453250 55454146 161800958 174195485 315061190 665472901 469374936 959344575 478791969 699699029 899159092 409516874 157180449 243746843 127684818 783730794 267322313 283817346 133217759 972247093 623153222 948671234 227159482 529728593 139783652 600668610 918323509 380391495 748739134 902518086 515632721 253233158 550386666 916541462 665673949 490556831 405275341 666407554 866611321 625149362 931011978 495611265 153083019 271225006 288990809 626691263 460670866 715537380 692197694 79197471 243192239 711630647 936885464 698395085 37384470 981336562 464323056 24162605 780070073 299772516 347445073 27200673 278490226 73871284 70541597 141350387 280726441 182057171 303425801 963012501 966360160 761031030 222547670 3158739 559015314 125210141 283306690 26586738 626369928 318913153 942142505 839149859 200901839 511195835 849147341 662454851 477191067 619950093 336293356 662996981 593128530 952680902 563011196 363838797 637917277 730526256 651846969 279911656 756666274 755562796 936214374 964569003 681586210 350783123 30547359 406463854 192756200 601848656 252481351 843945241 615857952 365356248 714680414 896059593 585764042 189687470 866423057 949276121 704399294 203110078 552823208 168346479 866607516 576442116 781261589 434604901 821052389 317165268 178880973 770270915 959182535 778725566 863072348 161527871 755937935 503324091 765739334 606310186 964162796 17254635 703236593 443258999 538130341 626271484 617635618 568260210 116232654 144863943 127420309 637332394 734681301 320352667 200381707 327411668 395660519 373768104 118779758 311304794 826152149 587766100 592603153 103970013 30697936 345221090 892930485 306144650 480896439 399994276 233683715 642300746 137496208 798235170 510332172 242995089 908350638 379597538 707855891 6828739 476243192 232293998 981829612 645139755 345641515 422695366 72980074 759349854 880510952 872807605 473394000 44606980 698096592 278429498 349943809 50445403 906236260 358543685 660843188 663035505 645140308 236991569 334887140 141073158 396338762 355115886 815904886 204632876 159677959 352085695 750385102 601806024 517025006 891836926 87886592 200940718 659869797 506678851 39817714 498875996 395204478 822470830 384692825 559887929 137314618 418529423 18409153 630054697 349226839 187583648 822173578 81603820 736090234 29779630 639181693 742139500 398784972 808025810 778870981 202507857 669704178 652077827 248087229 606921961 829168595 37531173 153184067 987987150 631251222 172807828 753888450 933248489 447407946 300894642 469546085 224765800 431548851 731517321 260518077 34599151 188100051 133748317 625671311 227445828 700994518 271710826 516958224 689297434 453057639 123122657 181846300 867722284 861228615 65295237 476199566 858940673 814230406 564655456 95081174 659634597 491286340 180676906 780867810 948894407 206146447 755112710 380209048 623848149 782605570 750160069 670469556 708574911 285593295 95549268 101919224 900661595 233965311 369822636 345653755 715642087 829303965 16758389 78193377 943729538 730721135 875430531 934874569 699770199 105914663 548644433 556984024 736071352 19779427 188634099 207897313 72625867 48258609 293438076 869865229 247159868 573901460 67695115 445996439 362382561 131479332 198747552 316068854 303691546 637734868 359628715 91367397 848442708 535363053 916289191 407274389 170137113 314990628 632328172 495994760 215351563 870404615 969408655 270926650 924888764 419679644 365239611 594372599 89229691 377040566 333398650 275296350 624181579 30768769 56773183 164501079 722301296 335836381 415191173 580231038 166880243 839803823 922417348 912968886 891291159 441513858 682188929 293545662 677059931 440525082 945099934 553698096 187785244 20164057 372036558 917411761 167707055 451239609 623124423 911661763 327183277 558910163 423744822 53726159 723270924 818637567 914395856 189131698 573351877 627746574 815889008 312782827 736339133 40312484 888451095 543566260 343797722 32330180 825007321 83672843 856229647 567904639 517912891 537675835 73791324 839557799 695197583 427577494 305290704 663371008 62463290 216403038 422472156 729109170 936359830 375610822 336981999 368468500 309587396 336162675 211520962 814479487 775468224 834879293 710139414 105364938 804245640 870222778 966635030 617024816 210799222 793990671 198579679 716456789 658745419 781632120 978277633 755712303 333182234 786664457 439966805 184027176 874547139 663042599 388635353 788876947 958333114 799391453 441154907 52882675 420791925 949011512 203015372 987529484 183232619 899608632 899436218 405545720 626606161 365051130 37191055 670484958 458771891 728308601 66462253 194213542 43848626 566750884 181439800 106322509 580566424 952300755 607349939 863711153 532786734 179189678 157463779 542369638 15103267 29433996 272207953 125103171 373080897 452174177 103714407 359849507 66464465 126685016 32336002 124380627 183333776 807247531 866797336 429548862 226889628 610665942 888269123 811735088 581467397 297076333 634274891 322276883 942572631 297932179 974426520 331679941 624504525 877264573 45854877 662373637 963086534 833747594 53393346 372729411 963342018 952296920 367357532 744341606 923104186 821103873 744658781 78483419 776938394 351988476 294435152 410931073 687965544 526685763 721106319 526076122 907753626 427915973 533901909 514122502 966112918 590859653 592784937 438758408 141206324 894347809 169924877 764884185 959652057 51105227 870048194 649219181 716476740 801152576 717123036 134092386 715314511 637738097 5015000 119998870 519135861 142056869 769691231 616415235 784551018 608462834 163516817 540295400 511345257 86859545 260553211 7833609 539130475 636713737 417762357 291712194 217439213 677673622 157561539 231092657 242501220 604917298 946659037 542767976 158623596 500776912 432434087 723624411 329036338 636499970 261261768 123958895 243022939 691704086 264490619 451244590 171197406 524421013 390301815 333049236 987791345 984145662 623071529 657664873 971088544 186562615 404053174 649603464 77284214 436755493 408979250 161124198 227187354 287106450 245013042 589875169 285772582 856596808 861562784 107400430 488007795 954898830 161079408 42156342 999989233 843327487 938383967 619980280 929384490 770866446 346415139 345812506 857123641 131142960 256124713 366378027 480397255 480637569 598479786 188788341 41331723 184408660 747883001 44127787 457218929 445116480 467615381 363969866 274889018 228032198 728802541 964420177 60733426 479368878 668310180 734114813 47665098 317252268 465715065 771642585 892105821 700891147 220624623 192298759 726656065 491805208 631453674 202482685 571835473 337796869 269035607 891890028 844764326 430258168 522614737 76806859 142882678 332429010 866329660 367784233 484494570 503195297 713990484 40348827 934256867 5730160 346845473 25994674 630621888 532674024 520876345 513855018 203281428 632244309 724930258 238961112 343651912 887065843 696433217 459980059 796332770 363458332 3779588 878858028 67403402 422397238 215584677 486023535 576545814 508046458 881577511 157726703 876264317 293247543 330040670 25633822 555959207 990107623 964144952 34314755 636073996 876866232 37551729 371326370 15063990 143625174 256497879 522239681 419111852 655560468 527587676 373331260 102320632 246299528 427006120 349994096 707264883 962959209 228622573 267316495 994903416 715757657 831267095 766703524 20627603 341917364 73246564 710519451 157867949 203642861 526367575 798482325 563530744 498613865 721812395 425991847 835515793 448006292 823338139 363179282 48293129 909890683 683535223 948458802 702729771 870568642 164416408 653897626 246101395 626368768 375443097 675886225 266464306 906689730 408123511 667843236 77974174 556558222 280410678 416775273 629790864 148204981 698933974 245116880 874200006 229677290 328992682 246127139 684552581 666527881 137230716 380050146 824391272 703129959 809830735 498681138 761811660 24588079 299622797 77469661 751450355 112164139 686822372 347514842 859433501 470132112 321902098 86754964 473863301 602107201 464361853 66750310 373630367 396558270 593440615 29442381 359315671 333917722 731846380 337994639 494443696 974011486 9606093 176511328 397531429 136370373 406448954 987380035 946735646 997217444 445096642 963841183 601257506 377152236 928339839 176836934 986606702 415430739 158363581 144389549 60769359 244147848 741433918 37715354 960760751 111704775 595109534 605377859 794925865 802826195 32066861 796539182 10837461 74155316 785205205 405543444 194608436 472538813 32373816 212748320 428940685 756593686 233699333 618946388 546505029 555786527 922850080 141066269 990512713 430718070 146702507 140926235 976217844 328595512 255484483 171264692 936621010 34005812 327182734 251071591 506457005 190631010 464431989 910123694 146018106 776272093 780072761 36571095 916058617 876204662 403890312 119955753 907809336 437861751 989700022 576634192 977229044 325790131 572319183 134258957 892920 678453390 580310955 77370547 860409861 673761462 348080617 26344671 252844634 428189653 693481995 103985515 129406289 576727857 229499463 207087453 657765606 869177946 734029134 681644274 686036989 840804989 656433850 768940480 975709864 584962798 511642559 887704776 975391694 725287640 415841284 65007855 6435427 184347776 236881936 468966277 95180966 349339972 338321582 246225310 108659290 986606652 964660914 194962671 891636959 433247888 563578258 535650566 305363256 113182870 470404336 735601235 211825250 907467878 216285152 861886185 677906272 659258276 471933650 802574488 888855271 816749639 92993945 450055375 566938785 172403802 144589913 369569654 50964699 432032405 339578358 297312578 56872363 49329424 774299 485729527 943790309 233413922 840023586 897602579 863638267 606771899 568613307 411405810 9646474 3464563 457397356 889733321 634377453 861346613 832305915 797284803 976785510 40730753 247592881 686543370 72942464 230260860 880633838 139200865 910138708 446823123 801958036 123172367 257743127 185424674 631196605 732704119 731376502 80479479 90084991 78164391 453602144 810987027 942755545 439498202 582849338 131824136 395655949 651097094 925418 361691138 227978306 787483692 308635724 484825814 631083317 288500244 527145843 715394561 81963054 354472756 558567773 362972380 328236884 822049308 155689447 854158181 691103415 445612074 192359758 654323102 598905790 930689934 872405336 663982332 203340228 123899835 438011044 274110931 289493536 513780838 609724831 753961903 308770156 22527553 72585888 625322237 717322322 344404267 738672494 439234184 918722388 891152744 99351140 347824929 823160685 708918993 414023079 457833160 293512849 314025264 352146092 215658409 102661668 129346040 738072901 510317030 569728500 217501688 398154982 599813451 970841485 802127744 270562858 261671794 754347905 67555224 770752087 589125081 111544061 571565967 414898059 933268832 280668529 832909069 859568751 159219499 897382692 319229664 646326024 731090064 982075482 486513790 49790686 907190442 316596814 237062178 267138182 314903867 288976489 120940504 513189627 511495430 141231122 186799267 739613738 270663292 952159131 700270936 523723998 502783409 235589468 604702796 181333995 513893758 74226460 464298524 637930455 998371294 229399518 748397665 252449432 940107460 527292115 731542270 75276464 762555524 342757066 433805153 17586768 408749400 5601001 963810519 940310885 731025961 745341004 822202366 676322976 38514692 110732244 505931024 133543259 818893006 633659650 996798752 338414482 313146457 388981124 477686624 769488298 426731069 105914927 337930249 799143090 799316167 624155330 784676322 126158604 988452384 909850179 908561035 108383710 422663918 95190368 82883813 707116398 207250033 574360590 786700787 173889395 92658207 209697754 890240642 252893883 882184350 612152965 50820119 97102725 939796799 730981597 844462115 403621012 861064715 684119023 766586646 225905943 591719117 517603208 971958688 753697532 603726001 48931560 810021628 89783014 531535282 551166638 281244055 753527503 85768016 800980708 199032219 491251208 210169412 860452314 672674805 391969494 618546468 772442965 396542103 815473425 569989057 333965128 666430490 682830572 87052354 327463128 57563451 112345588 12952246 562043289 633657227 381677409 347609825 835351635 725151525 369099241 603787258 202076455 46240114 289158367 285771242 964714195 857510485 323137029 995802395 437594706 119823787 919248503 118960707 367771122 792948178 939057365 311528228 956070838 256405570 908963960 928843119 249999939 46191391 218101415 183844190 348494826 104939593 90632467 456284164 805452039 343916404 390416894 323569851 497465694 595794755 46842887 85802262 468213380 487125999 326821813 910140746 395516139 653594815 726237867 541784305 899548244 847537148 475445639 954577298 672968261 945422342 168710155 441895994 900356661 685630929 888195151 282779085 815502966 699756512 327371730 553972130 921592659 19134458 393409811 676452008 811970653 553041782 242635348 282061158 777737073 350950798 731864381 775724108 255026247 91127937 567657057 98729668 922112224 640003527 82047453 785050046 607098303 646901839 614780580 101125244 365833723 487054675 714295610 866558867 714192866 191614883 664464694 306907189 188567590 616527969 14807289 914274873 797312577 541046147 580579083 614262749 191929312 784193311 67981941 975307673 936542645 207100099 29262744 701771602 477969111 22319935 705097349 803472894 123037564 548027188 318419571 33248212 699582088 885958464 805277956 607054155 259693804 865647127 750846492 265824526 167531685 883813416 68459741 833204207 64121152 646358118 541947005 284050339 928551545 633667837 928129804 362670058 820344316 120792173 71393765 639899704 569239867 947794032 801519173 336977928 867548304 718404824 578245484 315843662 260889473 991993803 335135502 610459332 251136527 346821988 461424788 569922923 506847508 502384338 10390293 175726451 880851851 173863716 944851648 111393918 989732061 660824478 573934314 409351131 860373466 937401407 189821269 227880692 962316042 859473857 179078978 522163050 674292262 270428645 544425831 137632569 8539150 543222216 76402219 391540610 103287848 401788308 911764088 616812801 246740741 231681919 441117772 692783604 564970680 332600307 252674944 914082270 533368070 550978870 158107343 249940690 835510235 532081832 366704101 532815522 772187922 814184538 746228566 432836867 96884244 467563151 186249961 118537809 201343125 776676224 938130893 918158701 69224788 887222242 120020316 174758403 420132881 678180792 276386456 230121366 971076522 692785822 704697226 6065168 887853732 50064506 782578992 276695133 753378143 406863011 289739634 865372173 352271536 582416481 451685418 345275467 604302631 375187395 765094466 237087854 642300106 718417980 731077133 114470288 127141356 777548014 678402829 511855914 874542437 211298741 879875528 574405505 391691112 120810133 954195309 318242904 575700259 373254695 192347428 210259709 463176294 949432014 876859129 267518060 892126313 111387094 681093924 13041707 426530631 320117817 129586783 747539610 392006643 147533724 136118957 565285472 409815235 890990298 635982571 87603054 29801834 495499815 874184380 599465651 38280260 96465623 12129781 203492495 271513249 378083752 810814339 20984944 256302635 358051819 767675771 490288439 800223496 232881763 824203974 457270425 394324909 109797936 91876128 785672276 250097727 569734921 500128886 137857921 575116207 475645126 203288673 356072934 961815743 147850123 542774275 462018317 26322228 241773984 51359711 644091828 202340064 849155473 242748314 46171944 821768090 302666046 589590759 962098078 200302644 89083634 156139168 830576356 563436500 672245540 596717096 633959307 606698319 439203073 257498806 782006308 771145523 797736430 340970638 686319305 425040811 904753222 268714049 525738025 509104995 517100641 21078398 955433873 983523372 40657976 55839342 796692582 372792598 888483351 207780898 268600614 991319763 232246329 671224145 371350173 234291365 127360543 32486615 183208482 999119480 15716710 124449885 303785945 56033302 867208391 139439413 871253842 61697298 317012665 325827886 592506613 624650024 194764863 563046285 430936590 743977540 319785107 760065504 666803654 666448592 535740863 391131771 408317003 861291449 650809629 91637650 170702588 201859329 359162769 160967164 999502045 908960028 722724820 785549085 350638076 914420080 876310603 833297702 876391602 945403535 55818856 670341649 762837698 797369697 560246753 229658223 661975913 492943198 757595676 88490991 170711496 671234427 479450021 682531125 815438100 99001380 921387533 608907670 879047458 807299551 375504237 972534759 169371473 420237499 962027103 978792454 855239490 614461994 820865720 457195419 681493103 703666084 924522643 331209230 685045329 45741011 893731367 597961811 579864557 716014206 160985687 668245031 109568528 94446145 617164221 197496362 835746388 321389665 698548598 583933443 34816095 875325504 895801820 758865047 986001047 805188353 35525335 252405863 814347398 627755041 336310463 465896039 853075263 749878920 63350246 541426026 114924701 406762247 248011849 563460623 986990600 845271020 754991758 921361422 955881041 69866575 202730775 240648740 668270959 100084417 404818668 92027603 836506383 193609147 679848048 811028900 705245192 374453002 37411766 472893984 995081436 207484522 648061721 238464320 815043217 345451242 226685541 583456959 27037002 886311558 202154324 597446832 193498286 275917919 807806227 856579169 357875670 755550556 211341560 443255894 863335512 86225891 470367200 20727759 448191495 235213575 555112025 294009204 760861007 251337898 467033705 24632825 985935623 890603834 652684976 443771541 246489390 767744337 905379338 665315184 230869945 855575417 286210923 294216652 589526462 780533951 59614592 443910749 39515279 396426455 393143243 220815513 528189767 251357142 601132304 656311823 615728523 669328765 941037217 363451805 413981430 801429120 342582056 128976005 672935906 617162035 719165375 425346258 706202164 853541743 659354196 629557726 604758368 137602266 204254274 785810180 669323482 249420930 472730256 913789449 980642054 364004913 829966773 767065240 228008632 97311958 469636895 976205699 511496020 231520996 934700212 131452434 689353212 474079862 946219645 807112106 645620068 167975775 276467754 150049066 579027287 16980669 492377487 358146727 198595913 374268249 32817600 721655753 197812956 668617634 599352776 372489158 406636601 286008506 696845308 437203253 430648194 935134198 798045799 192474617 737607663 512200477 982691971 907368752 572606742 395871700 895369863 453460663 220923830 365796736 780693467 675895837 303214286 126286670 801469032 306116458 565734033 766014722 165430179 20369362 23196465 78442296 762269623 574837851 144425908 866199917 848572315 654843527 314799265 53466613 661265767 465266907 230361475 498727205 160628430 739913791 84313664 906971914 812354301 901073831 332593059 802449519 308505985 566800263 53282051 432295155 70810446 577712466 435723607 131819738 543661404 957531946 502384097 487638610 510058466 678644002 480860607 77166595 971230580 832529943 664865293 316712735 806187652 161246349 382175062 541411201 114794339 753949385 722259297 358477184 389534904 314648293 639791448 485822667 641771836 947857441 725352920 510914026 917899214 644800434 950572982 54855812 309759348 378096364 829621614 533421312 675232926 617172373 229947059 88390810 9004141 23750744 872889855 970824892 552938869 771645075 281810754 517591619 51907826 386432600 482130805 140260080 527506522 711844031 101682318 114969645 90678887 331839031 386945541 672111846 948973136 222168006 132248116 949638307 182785423 186835319 239519302 825126449 60248313 308962666 812992315 616188500 908186472 968231844 936372614 355645238 543808926 192146171 812039473 814587528 374167016 89505865 680403942 263412213 765467699 731080080 50155504 370403988 550263978 779544571 876071968 416401267 918967430 817654825 560666763 652022779 521211535 648171344 660043881 139635390 912412110 869418003 70347246 709547683 953004522 45914703 110146966 71744546 31262885 338606474 357062240 655795505 915377007 378962559 438733470 326207659 295428510 466826870 318833554 757772086 7282798 117139691 651199183 718665923 832812224 269848980 884640320 792300702 509190747 113360671 668862772 167304453 206812267 71744184 864035588 787965087 514910913 426054775 454897829 196245044 839648507 109040458 132185678 938177043 535904092 454824331 696779786 118548526 795644497 874359135 699043003 752524992 303897244 869496920 904840412 575591725 651548682 587064944 489654687 456141741 715475919 950371405 463634901 531385368 966265803 74872466 227864895 507371391 561053965 406740066 32133448 888746812 423582881 4303723 925158150 949859091 642587097 14488384 663665816 825727589 704150358 955793729 477921468 959123357 409121300 960466654 532754346 11841727 740786675 535491241 712448182 816593588 969232665 733190257 548651631 319251737 237669216 268592711 834874472 315412246 576841172 701978327 479467156 71599654 932228077 104022517 173562939 414691226 851932318 609211796 270590832 336512535 912357200 147263153 511805921 270721356 972745633 43070969 106089166 881274292 405840346 778244868 123380650 72242479 637191710 340592452 847352099 843505909 794124981 694193315 2596043 841242384 493763755 302993271 828376966 943099343 150580311 649887053 970130951 283151748 90414350 579831938 678324367 655185440 504103017 212431211 384652655 182204461 274713540 565071204 952013544 856923108 817296414 44828540 619004344 26312522 340162698 813392756 781086667 637957584 267031453 24875697 355209745 216836261 175561742 121050840 597417899 514678809 755044119 539095907 744251828 13710756 415515646 113253047 706443444 223949821 275713525 972460683 713016816 676503850 516071026 361726044 355896771 904243435 539009282 787370348 274390697 804193320 998634730 441509237 686554506 135421780 932152321 983432451 37084018 416625604 899982521 908980737 676148133 309120770 718154611 36819846 326078420 143519783 692939495 741866783 615420465 908482440 252224729 471962387 319633865 632839426 106024388 532275784 404652059 131391409 968099356 622126970 139741584 891565569 102943208 357988499 993866386 539102659 711501936 100147452 175792654 652161460 860178596 837929698 125059877 594517534 327917316 963425294 701416201 291915203 120400590 371229418 24816919 471862166 717010621 321241192 444705868 891308618 75208686 316291415 746248744 505232095 824183334 618278698 745839483 131798681 443353252 351950157 127103306 188593552 122379251 582538012 761312392 284732953 612860986 148809970 138524037 46999434 257461051 630363294 681774798 726706516 415835455 821740769 326174664 610244893 339287626 494619692 429684421 771456970 104273967 349451815 672684050 452859961 193138295 892232393 120516047 135650991 724645996 501398741 989357350 56341538 330835331 476545722 850698085 240148971 113370644 788879504 586388317 679786069 155172850 382728943 185197912 110024926 992612521 759068446 145068303 862960439 378187082 824069893 703343373 984894497 905453718 444706675 374358492 935853073 820107855 537809136 689544745 726560427 652474381 121579012 995659843 737666445 110858588 503344034 205587459 918518161 750890837 5181437 260840194 297409324 151965678 926164629 855308396 863707521 78664219 837534623 145462437 126970046 56763056 482751781 17057633 200035881 142787708 840229766 50488220 280965851 362575220 91192581 91809520 3261366 443190194 161541796 734418450 679209342 311082329 422809755 6521478 929544462 59777024 168064679 459933585 18914755 1591529 378959707 332740328 197056786 297930548 499972515 546260222 307747022 626528045 746995601 129901399 185999463 381822868 119274785 990998979 188711920 205532853 643557345 844812640 305239205 318689745 37225354 978462428 276427696 398406018 205915652 189889348 430821975 573764505 925189146 712380837 468273141 835956508 930338098 414598678 285717653 275239639 282829400 826024867 249355618 692721028 877098846 798375922 785346698 765773849 94790644 866785247 902301706 621498616 631169341 592767914 181035594 677852107 900704893 471063542 318573758 386578972 384993130 915871833 73362198 629882024 619814197 923491240 195852266 946138702 441209721 228007996 618159682 109726114 247837990 207247694 848474720 489792805 161606374 322386622 110326407 155065889 393068058 670070758 577469602 633331212 592021510 416885394 714796229 822425332 445543101 672330102 203709697 349411572 402431048 114306103 564919876 379535855 4880339 33738800 373343797 737188074 853326462 991093328 210975642 961444844 760727099 256600259 838000072 357522390 365585804 697158548 728746675 400859728 317938816 655410220 829801322 843158998 574417443 312745992 886321520 325626407 133338588 883737471 298504140 954813059 496792169 251408214 12886425 434031508 364503932 200112185 473568795 333169213 82785928 445135931 348289591 708712958 402075763 180374521 599978220 577664447 385876558 350530845 122420389 852713348 130126658 414588998 277694379 18548338 672994540 308309997 805429726 735305866 172252639 503390220 664910225 419927774 865264560 324213974 156427114 680818587 647139614 974304075 710363352 980006803 227636047 177598776 45672679 865330425 530576269 479398339 307544207 330261258 3523040 754368826 962872131 754822677 74093614 897525897 204523362 748073930 208091175 221616876 484540191 454013754 686840984 704881039 91297697 165993837 86463739 353467498 183561266 921264309 799621435 409311358 800744966 971207745 327987327 743657964 872697281 119588797 69680169 931519041 838451994 179786130 971150741 221259677 971784483 345050198 452545288 510487730 271458377 183176447 379441011 512124380 842649660 698506031 165338498 69962907 158342996 690296733 202380769 6097952 858067344 207201959 117492486 846216837 457684943 542398097 891100904 166232998 128090761 466248379 119231083 991730384 610940141 24476528 62498519 184816831 247402121 223759461 425077320 773381959 45712350 423472311 364852351 389888863 689119019 995709754 330960448 952863175 888113874 190053276 94882100 581517765 573214717 393115503 851709136 128914918 139435974 208885651 981801550 301369649 431477005 401585812 473959166 414248077 501413591 132701537 511405275 540464358 146329502 457962298 57056265 387114897 813041753 878864757 839544804 507070618 839824726 252983150 83589522 779165854 619516312 106726086 535516062 940508210 805831967 772115570 461818917 395877379 53082709 410001344 293787035 325901959 562369315 833814812 386085434 804741435 985544575 424776607 89671336 306326238 981768332 305852077 297594728 525426860 883707879 715572180 200684907 318311731 451481334 282063163 178118465 411862524 742512717 776773816 308695911 552671894 987991568 915206464 275833303 86933241 367065167 670240088 247232735 715700312 968067974 334117318 491431904 302268653 349276913 547315411 96040127 420471025 935592392 815116588 416909848 403582545 928934698 413965247 630769143 7743154 524483838 638613328 16724481 568690400 63925258 335727144 925925997 654334649 249976018 186325169 534973655 476423443 137132653 527082501 98310520 402573314 585420434 103880977 62271689 710770865 249435382 87666595 627486080 940121952 477871335 6046398 107874789 640275259 297096711 193012523 814462215 355326535 416514083 938023410 568092422 466620196 769937575 869810326 162585658 152308 310809633 427268491 658479186 466270048 384055010 801010001 598828569 579866742 250427537 558592619 469184791 863532222 877603500 452923820 527070962 74692237 220025934 609258337 593658189 427608961 795114194 118554941 675323285 40433367 533822599 98197467 191636401 861695765 796023315 224559696 413905755 632411977 833083887 374779295 391148568 914865128 634050383 101669807 779873199 226286619 83911943 689944377 857573216 253534382 303589135 510650788 179938162 91067051 100791528 403754507 572694346 428218652 125204053 672700959 270337138 658751188 137136334 708536276 511622184 83048004 776931196 853853224 247085373 167046519 206646010 5586855 926265289 506692946 996320004 467915712 322819894 271164897 823115163 850950191 9061918 177265040 152856671 226346205 398257716 906369100 565528292 914147921 52044596 639420104 500606590 103950528 263904713 23690519 689395339 259761314 478552121 396376398 892210782 629252861 692335114 556471698 223988550 689541006 339166816 603870550 324366189 838178152 931558301 448602705 586509455 950793756 278219295 541403997 925355044 754359178 56390520 213825875 420372220 629273023 581271107 926335275 513893286 245682234 807353448 52370155 599326313 869099023 403901995 467403005 579836765 119411018 98642266 205974724 812301695 521437889 892266441 10479842 176559908 979584124 268886819 555789469 618068214 840353916 601227432 888709767 638596035 758904353 993334051 898320948 151370469 298389215 961365942 629763028 392512006 707241220 362763490 514934917 838623881 904343701 210568271 649510179 999019073 590660675 223392802 130783831 54433074 368904831 249413271 66877010 533018001 931940072 761539827 130700581 344987274 467474607 769781717 57741934 602745884 315033992 186317295 755023480 746519764 917414531 948153559 581177928 92915438 519180010 232645762 989669742 835125078 694037927 440392061 512344657 901299876 516461744 267314512 60157897 720250403 121276839 921436486 360463243 506138079 351699554 782756104 101648690 78239616 336474559 794834374 416336534 853087639 934171406 210626996 434074586 894819354 751784899 779174552 702165738 895241856 172952 935560455 843010047 876013340 543886287 445669071 992304072 758881290 575251835 180949023 863400146 348749686 418838254 389273590 767147927 361450436 880783560 338078058 165842316 735155011 445937903 174532749 819294475 27476874 676353579 951647498 428522176 99034892 43375030 915375823 827121544 789516568 552274721 253546374 440635378 383729001 582448571 544993925 454383551 667445559 289363873 402632154 206056922 146910182 652593973 30608795 922982893 84098079 563263377 187099010 486288935 655409520 699180401 610812287 678081140 400758954 170828458 804670487 892398771 92339561 76970462 231437987 691424751 865361415 796167031 453495168 473082627 781335232 291418529 355671390 371586703 22741098 877875343 441125397 881444444 409848857 801555302 677791360 532347787 93123711 110784640 133479331 48828507 679529167 958138851 140286452 630974398 362739192 385476210 122906795 411419055 821820290 216393893 780651069 784323568 920545674 475073465 605516488 32036026 858345729 808096460 832454040 128517156 534984915 73982849 476034356 904769897 164146612 416123976 644035291 694701598 701738935 797550840 555633990 929880195 63210871 892455605 548715752 538459241 407621168 656511925 691264595 200735518 788260553 122260615 317195080 822464314 561458907 777252752 228699509 451422368 700000837 181458183 866794530 26637814 100552495 613306856 447162814 906364250 816812307 790898332 980028355 783991883 699581888 307212375 703910112 257770962 140195565 586881170 64722953 931248220 7099729 757220513 245532863 621271092 550150713 14514650 200784248 4126485 891959430 631297225 837532245 693893969 131811027 339521947 563243911 829684745 864190420 645573589 924517723 424084501 163681896 445132201 873045194 383983457 577184723 380350117 891684067 83601945 559887974 537918294 520986348 152362012 881540490 879838014 67835701 154849449 434223355 606688751 59334205 935484112 435885554 864142488 625630707 552504686 282869803 399900907 406546414 473929671 705675505 145566091 123367064 837490638 723408200 700875826 647333005 50017192 637450307 279091207 108163242 355451274 935537764 108975360 66392962 766937987 462167441 39715695 973063773 639036163 555817572 670772274 100883198 562671151 458777322 522849666 361775756 448337574 59247477 640717573 38204431 398793362 615089622 404167820 417039463 939458054 932978092 632193122 449458932 414238490 197907660 106831380 523150777 539201870 692741622 58075777 610288239 211283528 391325902 707383018 14446108 44799301 174647905 191335867 327884782 522031250 15532620 205197706 513551943 223868569 356888624 907385691 860410131 977919642 39677427 863135009 1747721 206083119 529586256 442740251 284785111 822820268 144903210 379533684 300155543 251195017 122019533 186157871 756279802 231563058 604722226 349191076 676384158 128608736 12036326 975236135 164212953 464063725 24635958 24673745 463920618 977086784 942880944 371754120 531120297 628236297 5218759 577955483 913387883 532923362 514503024 119595642 836495478 406589806 194222833 349305549 684161533 868313107 31897166 723916100 158716406 503032550 970361075 947924076 121651369 468496737 278703675 957110022 344426051 923125043 642551155 895072909 707748398 241721275 631881463 651996485 560745855 93532425 701839878 132661729 78888883 178252422 795881991 925263300 212246235 948068841 840196349 792213949 547435658 279901623 422270534 752418539 513371120 603600626 643612506 845964319 343454005 328130267 653787155 517571830 534304301 940102689 641552823 283971646 596704041 936436035 778657445 29830972 228431998 556021189 194274111 73358888 580387080 197337420 3284705 517718539 561459202 93957824 122700094 248307260 358140355 943574669 883959477 24857549 538957311 652874835 917836176 578268068 876883962 854179092 123531100 959138102 728641517 50416956 168459009 196898460 641247255 736258014 341357933 208447580 336225749 654635089 219613092 751389890 835214918 638220267 946057973 652599725 954154517 405863470 219583388 958016078 728365839 932603991 163373923 931650685 368561887 879647452 46176552 741822046 340570662 756189789 716739801 222394113 266215804 738414552 768620527 247806499 118103720 66303163 715308500 935875331 696342356 361742340 105736953 839854271 408481899 335327316 425505486 856799185 964967941 625104674 608974165 779388874 60173228 531277590 618716798 635335242 372317018 382569534 755105310 985121214 629152122 19688736 658649255 499051148 44540682 598656157 271618110 473961215 654612171 793495590 640594673 95090283 430861845 812418464 828398023 113280149 774330646 55858408 32303078 86269875 266602577 517704865 981800694 24465855 305686990 585813063 14780325 274313020 230792564 184276026 733470321 143431800 157301971 188631579 378398752 269411602 610848830 707370143 426842884 604966975 129959009 879168973 15953973 410896367 872207977 886872533 599819803 681927445 823776792 195444241 160983447 24000282 924741491 754273390 379230494 929033310 755107855 3030093 521063617 458953247 637154551 180813204 406735949 734767396 556642095 776164052 66608571 967578639 57385211 534902192 487787619 62652961 298524878 574572652 546331980 683195493 266456825 837290367 322087927 344476321 481768178 142292741 832006374 40323259 668153857 502338005 355107418 901288922 209814953 580700485 967530568 658782381 541349804 900224338 501101608 830264408 896266205 145650525 344560071 712186111 358670424 36113194 965070111 360103848 57282655 873245286 14920461 347139823 33004660 989057474 539091138 822898518 313063126 579760183 954237565 913157757 279849985 337333330 812859264 752682640 678053775 239517772 512081537 583960608 13841106 211735795 944283630 686371110 772464225 647358365 326770148 589339679 234068411 70598518 286385746 789319120 737639962 878151877 654783990 975786279 350847881 775656008 226480814 629266571 285922285 814038769 571566494 901317162 697703082 506950224 521657614 473621805 929763280 922015101 780729574 456982779 268941568 29027290 4712269 272073538 54883107 658041202 210655080 147934871 126675335 802246736 773542947 213119345 111998900 129475360 936799957 585257505 895256700 629828460 307910081 660848080 187500165 240970390 68329554 794368251 4443275 128896868 273134062 66116430 896294676 586258807 120528100 542199370 173889417 815740195 406073053 774625990 589782285 313369782 42097210 15767186 725966111 3904078 624135474 643084973 839814498 743477795 390070740 426910182 354222043 589904331 144514154 153450751 429653734 603716689 483492078 843518668 222003303 990713839 983577555 325731916 801837987 466883712 85153592 192628647 271510570 508864220 775217784 901275284 582487085 905329859 13970281 129493481 370373738 881447145 812938586 801810765 767567641 939975919 137238646 411235609 733065747 895138912 199618185 942379303 914965334 753655803 860808141 851528820 92134429 763000244 301527930 983407802 772213087 814792309 353927867 380196265 605477497 155148458 918523221 329449429 195585892 686318969 844208821 663737742 50487249 442799422 600557093 128021549 381235519 497782 864518280 670565179 939901277 719933216 232752917 924159506 420283207 497446365 992721797 426459845 427174524 871138510 685468711 890431582 666694691 837872139 129423561 104028814 778685209 875846353 722877555 504632720 552528943 439461181 868416216 128605453 533422285 122457943 970755145 855651336 430933823 231108156 34555019 933611026 25804452 959436941 293559942 602254455 730825140 36934855 956464092 364882842 992305173 616191086 821386558 508474577 834045397 400857315 293734424 264807369 550975629 723339213 530242499 470043194 391624245 271874456 563900750 790673693 644424154 463563267 296567331 190073850 10885646 436470259 219654789 334913512 770421722 238390734 857975567 726692599 64986049 407340221 413233293 567133284 614474583 377871486 218251832 590997304 564206848 901646016 965907209 351841297 349284111 854033524 669792930 643166670 884931788 840787008 152790429 428036928 217930614 375087880 963297049 837019383 504759029 426593677 900421768 584595009 39981862 11597265 229711099 249436027 549193237 487363675 450950221 420932373 514797244 170541587 166843686 175914428 899770996 528476041 703619196 601460285 647300008 296246216 494234436 186522146 981682135 245149444 264866081 439848942 873634137 253858588 490013969 798695610 932258192 173086239 266163871 819454980 800900026 420089981 944028223 791431668 729555861 532532603 690370592 606365632 369094164 709985225 595840655 137963085 972359786 358466004 293719212 317630534 558484672 204458776 311752944 771822828 628895983 569140460 40074138 687843402 859727594 454110625 198648748 958485281 823721118 567874405 726641559 678392660 463362936 954033818 107995769 595332491 199529622 163577554 839511991 399559844 37810041 658124334 511028286 794821291 700873712 156910943 65040176 870694412 13511588 292398487 959843812 177607802 142821554 535839906 756643928 243340003 667967536 80553501 200578341 122099781 358567953 429087889 274163 567091448 480529812 966663217 345897686 171142016 950555763 220723549 143448722 470442595 178021089 635084302 340987600 20271344 802554929 196961454 855058991 718833934 891341654 727172083 787347924 182187946 476120712 907491145 762345538 198323973 578605892 731423422 309107973 139204704 957335582 546122600 794533835 65339956 113393912 821526978 389256848 919269475 681281306 744949014 309372032 104670441 822616173 933245480 587111746 492450664 385317065 32711747 312747567 340275281 712523251 152291483 402532667 177583106 909266060 71594088 958344457 746692465 929283781 534221988 650921640 121592753 562155422 204411166 229988755 990503347 176501538 37398430 960348798 722242352 881149182 799107948 175534420 6141670 281061516 665940623 138143213 496784323 521030585 332062444 407158400 317711011 875811955 671602938 265063885 217214312 172188978 258289950 77066650 55038143 616337283 373649032 971487766 76206914 708585369 618027396 613135659 785040704 120860679 671091667 878421495 973622037 801669035 375296193 986774981 238495368 87632663 960526871 170852888 519979956 434486478 219348869 372457551 185443784 470563786 402891764 937114889 318178655 278812444 762145579 27431260 207733730 895976831 719734486 203718389 795513040 782287458 124794665 552366257 769158203 555065529 888422164 673529337 126014734 516031500 385937045 652760461 988055281 498674892 584791969 212143618 445406630 447723800 777597105 721515436 159666046 174981830 430773892 394021392 129746646 500101085 461412023 665078458 192664732 465598927 367067741 312498177 842857746 224514321 469262169 487977695 230006442 555098120 568724572 785940883 979714301 406639100 483480739 674851068 389215821 617894386 595403170 284536595 691779332 153168998 812784215 682898479 948496714 168725260 273948992 478488583 135561442 58890871 908520398 142998093 564628328 856424137 934660642 823033692 713078617 579285805 623063612 601017720 697617098 867354761 580141651 304971321 49848289 147209190 9195387 683396603 360235731 933001655 33710484 565023715 678244441 663104100 996608632 673244260 450532483 310019434 237385826 363193255 224203069 466035881 115214537 724090178 351793180 876240368 209464554 110499053 102861711 90335923 231789331 971315747 161819754 696988842 259001232 490689633 159570473 133278351 498376366 68778402 828149637 470753119 887644040 980161461 751761277 100388220 517399279 573607383 476247153 916222411 809631055 896609820 243645380 967084154 892718161 395976646 245065314 293130394 486733576 537821133 374911988 629971820 425026096 685945429 645218567 835103723 601318692 713824197 898262065 877614169 126315973 952643945 487515471 621602590 649710821 267289265 209597192 431257177 290263342 462941674 387379284 135208590 364468014 264346184 200881820 611890682 55194401 104787438 689505364 10879742 248697234 372336038 159934870 988182244 702517214 413533485 544178128 318887823 782299067 588710788 683927002 197380168 356100625 891777578 594311393 797442422 362625969 529396309 651627000 47911789 587079392 721888287 591357801 594539834 571422535 895373132 242375928 977259180 905088876 893088084 701497702 866904393 417730647 220776477 396563190 992820522 533983141 92459733 422700356 250612675 429684227 168924241 466021765 922465570 400322877 26537812 311208895 916077759 392941698 371452598 156877491 481132737 888349986 182617891 888727157 713714933 421581747 286228223 279343803 65363337 804558865 798365933 234749276 954372216 471629168 345367025 54890784 864523023 222435325 754881015 942665910 910219438 155013838 398031728 674232355 117600877 804434906 522917285 125308052 158729741 324143120 349385642 147964163 315958543 362201812 931802742 676017481 426196503 846613038 640261092 896767970 868955845 248333012 397126561 93285244 794955701 482270766 281751706 660464652 55671956 50508904 885610341 684871870 954906967 978839739 567134910 719006894 902749681 95347934 983423234 37955232 570854507 224436948 351985402 577400308 597641045 466716610 517319792 80425411 198272565 546741404 222184441 62662504 271065173 545492066 579421053 635400733 924001839 166659421 290823230 553688796 830883671 879391394 729260428 626566659 469850667 379416107 29311501 394436957 993156605 399402152 659499974 201962082 254187422 640552035 248492379 44058133 368356218 699963711 499776241 887655441 902236908 865800615 816510563 676126260 263214264 364651085 344814928 778053489 999366660 754315526 634484544 961672072 627392256 263501130 700813374 308582763 808603094 528316421 831286006 327946254 615096812 60151592 822982025 110312689 669207699 624711260 881267831 865516997 664701245 708606391 698926553 800387887 211854786 302494733 629216024 820242207 410192156 887482181 527347817 988395319 395781672 340728966 483391604 611444226 790708402 732149579 368895920 178611847 154172603 886252644 368916872 633825641 894018820 870257926 98021089 532134390 694164424 307884252 678600077 627001343 343737274 544115176 849698262 31506280 84694222 546704168 211366769 837960145 758219834 888579448 759755448 707011729 269996211 501317306 801381355 277372549 559961150 709237526 157349364 373153612 240097884 908609105 963613645 821297278 143662719 84331642 381176972 42523351 787329542 479438870 130371137 25394971 971817120 749591085 95221307 248752487 919763073 891292024 854387582 388515933 994817749 863967937 880311388 259334459 197757061 404178860 455848827 818322107 665158723 718061846 947816356 431510611 187123698 566368660 420705728 397512361 553423480 756684815 737322327 6654922 233935164 520549748 357385848 600115193 477102758 580906286 113148396 253570162 274679960 586689307 218520014 386353373 7860766 999583708 578277233 326669863 552694112 850319593 583613563 817518594 942458609 225269776 286769149 351916167 922350379 738109958 446331681 730685747 428579607 523324698 658838881 679253365 728465799 544230415 834292633 216495873 799692441 872496599 847262598 258540203 104544112 292124009 283828723 806662054 612031685 458759568 802770705 420079200 883125840 385299322 626571795 22163407 613514468 483242006 727167289 743894721 39026400 704286369 766636736 116461117 427795394 992451425 998337998 921995694 157787578 931046612 256930362 800862645 254659389 288283703 207329997 699389086 432128894 522865955 529464725 348581438 665333643 784147966 530542308 380197938 195492359 651718701 405186156 398342112 171359057 543909646 876001189 764822064 616384456 172268316 969862773 121651634 738113654 468075602 336679932 630370144 757210144 122072004 943195181 511023192 695012243 128204395 415766500 653659948 594323717 6062985 48872922 55055487 464081923 366096564 475837018 446792218 572205524 961119254 115247356 381197216 743375431 665817128 541734411 994655375 337059886 553735712 385834816 939770132 494219150 363690336 432244269 949504579 690584279 446349958 103715924 58471648 563548250 101559966 864459474 408873447 937408025 979730927 94054261 351767888 263690609 201159061 899807034 82133456 45927113 137390395 568785053 413136081 473222956 754920146 373408337 208729806 333074648 264199064 701355789 626565911 209154679 759988466 573904359 219045433 223710891 281580698 812276527 715867761 382748370 934794472 174521736 275961947 66709197 625722672 978956503 56793040 951825073 930282166 328187493 913306481 540584923 468682554 783118471 365660417 511938889 550042817 8910190 528339284 655535850 711976219 112259944 444553660 151798116 230346809 832879229 294904311 54573867 426477209 285771426 344618037 220745699 552608393 711252658 638118861 180591308 285437877 53445788 790026864 361637587 42003550 946033261 25748268 458412878 697489998 747102910 278153683 114281560 397096146 60024648 539883786 514492734 459206931 860148874 118995496 257152737 668825734 472732053 168543869 738045161 246905288 248189973 225333771 895650025 304022904 504841454 520079109 124933580 875217467 746393908 949930942 143765963 102540926 224649722 410399915 707947328 226576444 269182042 805929661 780352015 642171233 419687349 277432730 515422497 59165092 846992727 679170296 304376112 254207953 560576130 235731910 149817691 189685860 898125919 425944452 909305605 360858798 394207323 774132662 794598884 18044969 843032224 166683370 868605602 768339391 545869834 246736472 376921447 37748406 918072275 777723797 408134118 709782199 83440289 834894898 669940484 404227435 518877268 470017049 834985173 501085631 876662697 78152727 174826198 272914208 198605896 613330758 44160226 974689447 384140364 46974285 242256601 45339244 726850359 617842448 523034740 870417738 454258539 173737732 613660002 954229347 670874326 430365821 109921942 612983308 259180924 571769222 692479351 591539911 852318368 956741781 428020087 309565073 487673537 722062032 150037970 187678420 970871061 235534894 292664298 725518988 617263602 301617059 58996370 329046682 710484424 988143923 242073593 802056080 598701934 504363598 616344280 103985097 345689333 204677868 260034628 797685356 859804094 55970454 240558706 146965789 759684942 404199514 229054872 83449470 796059461 256665639 405478112 466757246 412302657 683558059 493491521 553089980 98126878 491613798 749888929 473856286 489916188 682674403 307536491 308806190 610612307 16332674 69596865 837277167 953632884 564494595 432332716 79644324 521272439 284188382 361918929 696346059 149680072 449565377 579400915 738927107 55053593 557542897 252103335 442364253 609715557 835619413 38483990 509693553 739330579 819517562 162470105 425646028 119186410 997943358 894611555 271287255 430891377 161440375 623689920 48027724 450140756 312627484 183559215 971705817 426170702 819385626 630687995 496307346 57180651 26460856 872664472 27618998 872069275 535756551 976968854 909100729 239886125 899661315 964612626 543515020 774443433 748415285 331395513 313075997 222226241 5315313 721304471 626876911 170605564 922841045 983730190 620478132 847301203 842300200 566614847 811194534 771158009 330053980 553623912 11350079 876567734 866943351 411720043 980456425 63081329 661976527 5358018 137341787 452096086 323448324 892357020 264777093 705469793 219228791 656562395 729374348 978240558 930564273 423769049 950983042 259617279 872335663 709414872 326261454 910462106 975582000 43542260 471393803 729100074 713022700 515064191 165071767 807322716 505273399 441758212 559896819 950324904 13387264 413951776 46183114 60025133 183707441 267503119 525493255 70361585 550403985 275479280 411052472 675320254 657418382 539678718 707030007 919565205 232795594 848660830 319413505 454293908 916706733 655157383 816000112 875546052 233547764 12158524 914719450 912486586 922407195 349564888 774019911 990349319 636905190 757594922 771955285 136417739 204751768 336755717 483995840 759633187 7753421 661795448 386091222 845761282 880912364 102615299 218167873 67571955 617767430 918313 257828616 332981654 455443510 857112394 630592766 559996464 601958134 726781157 855668439 369143304 178003791 938876461 274447766 560893707 566037538 311544105 40119229 141811995 590538035 322188483 507179227 781329552 727967765 138593995 241682318 486459820 279726059 761553823 789573581 869974531 246305110 605502687 902184396 796775734 626382378 929353354 958061088 912720377 732120470 635516356 5081315 158321926 192266152 596556846 426508900 243046176 19743268 450455552 358586262 365780228 105121711 332061220 882640797 548192382 856363827 670801552 804370231 905537605 679070840 560496027 136802816 433140383 303221807 301969013 718963095 768111260 480837442 842336274 779321255 262668280 677686967 152997836 396485444 420148504 772946633 333918708 192238674 652887910 455436592 560284682 570098114 353517811 730840236 980196882 58990725 35427633 294861656 232054153 344746771 126067946 415330511 653637724 806833599 612844860 645155825 209391073 539116369 932640807 91877549 762851342 250415503 185670677 315965241 999573392 829697609 846301621 246718543 319591352 705166187 395300663 785247317 496060930 688726069 567046657 500617163 624208180 939646213 393690606 66593907 731200273 442905116 912508922 757427049 958805024 678012012 176054299 610396929 544205915 618331207 557589026 368339044 304741265 825864076 283644351 93866865 334814502 267405647 637328397 328466084 396665062 455343139 453495929 621094061 719024964 414313775 457252603 324097605 509101880 89272690 950867696 972648472 535611483 10330921 25291564 388890766 931366292 450488747 309144509 787941817 331963930 187629631 500490587 507387098 798521689 617899141 986290666 424246296 336455625 799981610 886551466 968220559 141947941 292693854 729320800 641181181 891787529 360828999 304845347 505919609 899324537 724848358 959674362 50929006 214052177 701307967 959180187 622846227 233849819 503242908 450521281 721572885 389456271 881931691 615304283 914276894 955090773 992761997 715679172 442780389 441012136 586646938 706403071 50606928 449486028 606057505 522218233 814630207 468627565 284226799 825516557 844083401 779361183 888709561 743136625 790026780 276460061 297814223 159551825 754316053 597437687 787412664 563684191 150447764 899863258 552364643 937622175 35267750 568729875 409315505 640469131 53513034 535246651 442593828 7983101 256787736 898559486 453391549 918234533 260537170 970303401 685760972 26523044 4465729 414632331 211110144 475768339 702405209 377885901 944373213 731351345 485282220 658756340 298240282 635425852 220259340 137965384 109809046 5252480 604875525 882637871 224632379 206893553 163771786 48020644 468850334 811035462 763921678 33725085 562826750 697306668 258820742 57110254 166687655 144687401 921792683 974659666 8972572 474358726 275037214 311796095 956102933 950721974 90886759 668943088 487547369 771428914 26471332 479340238 789295699 600463043 708792146 532660794 219486406 741215778 424149422 571140496 127771403 304702604 273818810 528465651 544867972 315185087 65433289 691144747 702195366 875680010 789775632 961284912 910881257 815267067 552058417 611537706 417687196 608276911 955700022 685992241 540194893 464644124 636940974 695157757 22986087 983977958 904416968 462961923 503294149 115306429 848691632 896760220 59175622 400761139 144611945 791727390 137611760 636135139 531410571 876877751 614391847 902914892 747590030 133557807 53219235 330442482 231881552 645616215 924665727 903733800 393705146 18331858 122872959 915651234 622222503 701167110 15206454 694185675 365431162 449604263 965778548 643068043 614115785 528763028 685005373 343512487 559217317 838678052 529694837 916635328 546649112 737216477 404812027 322298928 788736146 813790754 855702300 588249828 207989025 946085100 500425560 895058974 503623844 914913526 110118788 524177026 540570802 294470457 492660638 266840046 321519247 824423973 541152695 341482539 805459957 98755350 720432951 254888868 978947611 203016635 782165827 272163470 581583856 390166709 458258088 945741969 874994681 595509334 180367414 414627594 448861183 252843005 840537031 492571099 308110541 97879260 499963003 691109810 521379855 997730250 662223847 421648405 257498049 94198056 675499255 849667468 560939699 729086547 394123383 455686381 285202468 971238995 386462726 437745095 348040527 612211581 584647124 805326103 678640123 968300636 540610502 687678603 297006598 255933513 69754344 272440249 269457280 899674287 237707396 642908853 358794751 888096473 296998344 217351567 904939706 984956164 146940968 202632997 288569635 682644764 880457426 779034340 185030205 305780889 607788180 376262551 488402752 846812450 708810072 756733516 15858569 931721477 226400589 705372538 182685302 79045098 541595851 959991439 353449345 174625505 823994774 475265049 853738141 231843608 373347375 504934849 482004160 126679176 140259077 383152516 214055362 377928139 809067051 925670140 606511667 243276633 197102414 254628792 968052764 453437376 634817223 365843916 864619562 304363444 272793123 301521816 503491305 68192909 425927243 482254749 930236897 805160464 887987080 930703820 64120475 530122856 727020716 572475031 32423373 318186842 410865884 465511781 493071882 834826554 686051022 392169771 969041724 486412453 615473391 279200764 804171604 927452022 224396558 132289969 271398434 988416072 746881127 81770530 736034829 187324130 196274124 466650089 837651819 703864843 799736148 22936913 90901741 788946913 634093082 270345163 285653465 469547926 864300341 29870313 906571571 549879092 323213863 957477936 785287942 695011485 187593182 34878280 834413759 126307884 6169161 765870267 996330243 750931748 358629328 318828206 467725958 762648233 945030548 691213673 806498422 933905068 756256843 892699268 588803281 614608173 470512014 248774571 77930178 190782177 424686241 887116757 605784129 512879967 864536077 428545718 691387376 309700599 64603225 87866926 489112220 848280626 757750570 420832519 385310940 545401934 135382839 595778658 145571665 291421985 247481833 853256840 694156830 559329341 191531820 692215990 378074037 872993561 757246759 459041759 980998730 902057813 478763308 349688262 427574334 563642973 339569056 995675931 838790427 332661814 397006564 242239575 591156220 208061261 194298163 820482941 521234469 670145481 268570382 151811199 730784513 819553157 865993275 27344096 539446563 532160280 877499659 714741396 908121201 459442683 943068450 270025812 302564713 461870755 883262321 113057396 200064438 133642605 621921654 193621026 219742696 334958050 510239619 270924232 997490038 698435245 888450617 124227483 398390472 972289177 864550660 337662299 933709271 599912054 435407051 320033202 470450832 258946974 471891576 824369768 69359381 80290072 949640617 217424742 348772310 538178203 395130991 962077517 631851152 880852884 945077884 186922118 396835353 594523364 733699900 785369817 667012417 460781059 146767077 848760919 844982905 756582495 983650142 87471496 632402902 131984075 534182568 524965499 238083236 421648204 697572885 887367262 744173833 61264692 379471946 540995990 145505765 631757359 263400637 371554719 260453218 86963326 135242192 211696173 342274282 180549530 186153164 631918025 842633470 826491810 312804762 982403738 93594077 167817966 333067144 510321397 745229757 184652073 257772463 696088593 189421373 363032180 660420874 929621139 323851960 554457598 733175130 552355553 745067921 927340249 526393704 918016969 142679141 106989560 625727737 615832254 532185546 424164961 604180820 190571003 269040773 620672197 768167101 681452754 258333876 261360034 792368797 339411114 28561016 930506249 966704565 928429384 311823289 992840905 107091622 537433759 529816407 252761528 877128552 305511529 779466066 325688307 663213948 264562318 361876100 302479168 897659862 357163597 485746107 716507845 170670060 76751961 279466719 820098612 853850805 352724026 255705314 824450485 296817533 780836812 70703043 189625253 507207950 920847454 747044147 545003901 805676602 781839994 163277702 214541361 108939409 145216379 120006244 995592714 823114740 426339839 991715153 401962160 688365063 663516115 199249801 636348098 62846317 152226512 725000125 916776080 885640848 791768763 401384441 247948389 431356195 476951512 174252135 472103403 196074590 268565409 434591120 325834428 520134534 547480561 3436363 796702587 829379163 621203034 149185738 797442618 588869615 968587969 600552549 962188935 325954283 688944129 68843785 893802074 739928749 433888272 163976026 103847084 492920547 639425537 418778817 375978306 458483106 654616706 890738184 941724275 276875443 416788989 421741566 610623461 123870748 797952547 285156694 484173169 762774815 851808593 723547404 775607203 993036403 986876932 653212566 989778515 672422899 351613211 226208792 847200248 292133357 498966790 620475796 217975801 435868562 170341751 166994042 961550501 170667898 100927670 901197510 711500740 400406736 415135685 437679197 293380991 544233702 48597798 497356986 131270262 614958686 749112314 287843377 419566466 795316331 868592220 345483577 235779867 438804885 544748210 365717507 927957402 95017341 703941152 607091261 615086402 378446244 256935133 906695335 968332322 744104752 725982664 172976951 567359221 711668897 973290013 535952400 108241557 505235234 617474572 84130299 260128612 960572084 512730642 467849294 596350687 944620934 462572380 41128108 256869926 148380311 794884197 730566154 68389223 175441513 878996694 556682889 612808153 421149514 653541869 573730367 224423592 292523417 609526247 497112983 124852032 331301770 418837573 467214057 204009283 169617112 496918182 900536636 93373727 965108108 752623501 97544414 326840922 744056614 951135130 598523308 928197728 106868332 236557469 662197610 997394594 808745880 839045995 255496500 661754440 989486277 839087192 667609052 287442231 779805384 505253395 167315950 143343285 818960037 815379221 872405708 160133275 373426580 266877990 272258441 366604730 656409478 371498633 657730858 474200522 706658943 19910270 750518085 210435700 853315512 153390980 200518086 157363646 634780537 720659426 789766616 132374293 323091102 436312640 170116854 933394893 444751504 162468117 778652104 518625724 171545875 416015806 244361957 715847163 217791478 471758656 282881883 307121413 448548116 964081041 369636309 112078944 836828192 480535378 247901821 972688878 372896538 549577495 561888124 965921319 990805993 978151675 560761629 158212953 378603104 423458433 819108085 418076427 856405617 90142715 827407071 93946846 837159942 336256120 500159910 375376340 240654605 602973801 590395191 817215240 469075914 390798609 800560887 99642903 558561146 113929092 446027807 413558086 340540300 131713853 825845762 425046846 909603439 789736024 712338425 837447442 859254530 521406613 728912361 671943002 84609266 978067044 650441123 89139619 137486511 101160775 245002564 926272113 258359403 162533319 948456375 725820565 535038200 932265061 325360589 674999297 834129364 48082946 321253622 536855041 622119840 8705912 124356254 437265557 239963061 426327794 526277890 94351466 930746662 824596308 50891034 830638986 202367710 642823969 101024739 578887727 650880137 378590758 477841946 434328899 666275549 716001476 582539643 63948740 377284674 47060593 958030037 797558875 129009296 942362733 636742077 14358497 590108035 272739865 115606216 399557545 713041654 918945014 344029729 412267823 706712854 925922801 538840746 933300745 610268814 935670073 900174286 386896481 412523364 907279405 159684880 563756564 545538905 495690656 606069149 49144430 579170605 137391222 937877242 351974800 112031488 428781391 163981757 829884824 674390347 462973480 855615481 835008419 551501466 191503606 130048450 30021739 362540820 151613003 936765034 930187911 799682694 192517721 929474728 892409957 815631822 472393728 514433384 607676069 637469457 535910551 315716529 395258585 184056883 6211360 271349883 435159613 630617474 84625464 781148693 122271296 283681330 895603109 186302551 211006881 704753246 791762198 618518899 457336189 917527349 108155236 646388790 732233242 150327321 401238750 965723715 374179384 184697265 928220555 841740860 530574427 918563443 256076369 295160122 841490989 620317087 203222841 173486079 82946874 366872069 882296118 790221709 619256337 416996405 928538627 680269807 173159369 395563301 806656300 580257060 477849193 830998782 595003526 536338272 370458158 815918831 235294718 150713732 943314167 471445303 207099012 784240182 102001653 315769375 117956107 736887618 387234389 954511656 83911791 812506894 45557291 587209347 830498717 393022969 910554288 225651734 98290604 275674060 96873842 558702933 401033474 745229860 843712915 746839077 235129505 503891784 31121721 455351253 272880903 424240890 460823190 205709664 438652193 276837426 996847349 933194563 632883808 600863857 827767105 264784770 384123933 403678395 460663998 519787300 533878301 276348118 227878535 643077698 94924173 57791483 222966555 950370503 586544660 647721253 789712291 354228922 739768990 18270531 667352709 672226438 964140050 665419659 504118599 855679986 785603382 245442979 632433176 273440165 855082352 33751183 116120765 138481583 473444645 24144298 700642128 996491832 850117629 740320611 200172296 382490565 529999119 139005797 547348578 863253517 313306645 201166263 866449622 508338271 120070511 157765350 119567448 52985070 999206991 273099349 671421107 941627462 91287704 112767064 498519388 109675971 8630856 266753177 228328450 923290810 134960636 310925566 21857525 491132688 53476659 907375180 211832393 206526753 881300277 530089089 385676052 638276166 119650322 338596854 893659948 389738491 499174867 684746924 692005276 872265808 399221350 513442776 654634994 380420071 236447496 65850996 764130400 577608991 710909455 917747654 422991609 548143451 756839686 510558024 27054390 70036819 961712 83077119 49957986 541942613 254531178 942011521 411765572 375302262 851151875 781702196 188431412 767013085 403411947 416657619 957338481 574837777 814210015 422334718 145561603 701868362 399292610 493482224 822154708 578583809 110164026 555650233 652992421 763430871 843817778 569237428 31951593 899769647 655914330 845785786 271931975 572670925 125254751 927632498 608206681 41678774 459951741 321836822 824500528 477245730 277202385 817608343 814918080 704642630 735824454 715562299 828397698 967164831 343726991 105411660 575696765 71765144 479384774 309794433 164705290 129196761 748247907 172557903 361678087 909608530 1946386 805804399 755158607 993785061 147618401 534632633 860952574 490119153 400003984 421800181 923664559 66354438 884533294 347882944 562880825 564398177 932952329 252726889 316874867 274275897 699925945 268822180 257403295 995042637 805213749 663817726 835498212 45117418 28033923 326572729 731296526 335440446 57429653 87427532 354953511 597247864 897794961 996883519 367641674 268197732 725892720 497092345 373854647 772141686 126264636 53609748 33136606 132954603 462543259 210871104 928628538 437671367 494977927 453717874 688097697 572273977 589533936 487991188 253767699 373436743 75401504 318618723 578607134 509561026 598863419 241339170 560426170 540777038 21803676 59489771 440579098 302637189 20595595 286275904 519162799 902614863 122956992 373500733 770568909 436146262 409541979 250388480 306135958 527028786 67508545 414116551 784779473 473489297 768694382 598844635 260223414 143522897 664671002 363862351 855639542 68713753 844428512 653678443 896291079 986276442 178757288 326201973 598292132 66192586 730463666 427632862 972932315 682893218 578956359 444538701 198082245 352588046 811564979 667859128 376343622 886882482 410388353 669718763 888690095 672528819 79196323 235263799 786228552 74613739 581927015 532000066 714956693 214463733 547169920 640969069 521527041 296403661 594332940 927434741 199812210 923143779 748230990 56317820 390798223 718036640 456319307 181578738 372995688 715230915 833130033 455440404 716344563 412170229 557708898 515323555 889306324 209363049 639911622 168426580 351441775 282885644 518215595 116147097 849372673 81810603 613614793 424450500 732343926 736507640 349917883 754153237 467394832 155882338 650110004 732894833 911961616 573534658 916486763 54283183 681639461 280565973 358581365 49397528 225433198 827046639 406510918 751689367 121995193 439050224 659784555 297989153 689278564 42196220 801664432 419664621 88124847 67714166 548784201 523859424 620325357 844231502 348940961 869632314 502587983 593921480 946836975 8756253 386051334 598912820 412510866 112997533 818831216 298490191 704369208 288272479 990275274 651732273 508813719 396563028 708020751 426816459 802625587 659137750 978242503 381346235 962290781 328745163 243931026 786652359 498058480 394750897 942839724 545931045 773119506 220975415 19592752 954970613 286232321 627348952 584171707 266822840 159248553 162008823 786132239 995578864 298589824 797925870 711625797 145959765 953123792 320086773 431391262 514587240 683038297 806595598 54874332 55634423 581469821 832223398 50928803 554788300 290633515 67043262 429726774 933238598 973235423 161165915 698415782 1141738 655971525 774006323 890105456 627200072 817582810 14230653 114984950 844019338 842617760 74771344 607173879 725623474 199742473 673362993 648125656 153548552 971678218 979960918 71789133 169830086 93941462 622960216 765559176 247693978 577883745 654006985 747816467 290076110 615283741 218279050 385713229 724409287 404142689 551391525 753306550 901156698 738713068 71876275 545218164 32348955 556835948 543745365 478332275 93241813 725982793 866326090 775399367 700728953 302079624 901875552 334126717 889343334 352965802 791705858 965538583 552588041 381092468 748892279 930207486 1893408 435796236 72831865 217172573 76946392 992067101 888512257 687056566 445673553 457280752 648250922 709314239 630489188 619436536 435140288 103635812 630670745 624107444 673155848 326537543 939662435 315753931 258258369 875939237 345957770 932815804 380463852 534213073 660812696 482842908 542901809 663253521 515324757 426604080 520274885 136297119 901275177 285080744 697040913 666606847 899478379 834786676 887822727 543005459 368816052 543744295 192669909 388323648 255222398 146910200 864765195 180934712 252398482 433310420 591306470 886238687 197593925 288386519 134987548 677691086 888324278 291595351 622897348 986532550 459010359 287864507 419861891 923842803 925433565 622200171 613730388 58800135 836736520 554868087 500055849 685648427 906282496 203590363 32103887 956667462 629512355 758232082 426886440 811886020 580354539 163332635 341482618 402891409 645317873 405804717 250109484 56421732 677454778 390367265 782310503 659444036 505229213 278224296 908974216 93536102 907911351 801541257 153523879 268877794 809892867 785240223 847279709 813633293 642501065 898405883 374583598 863896368 131003951 472678222 219855124 382146768 171563033 494555142 26596913 345946164 392306710 617378709 592438991 658940917 340522487 647035267 748664402 476415115 759493070 149961331 949730629 680731321 957573318 266708977 347138590 836002064 400260130 89362794 730305565 45286245 616894501 428563633 218287270 621672809 354272555 206346009 943925274 853859840 113805500 609401510 597968734 568341089 498166947 612748871 791149571 302523759 889677031 530110103 751957449 883724793 215970334 257861642 118443158 594606542 278613793 341156317 794213512 438419651 245377903 388900915 394809786 258980443 796201571 830870756 519089264 946149567 915667562 549389648 387585918 445664156 346018352 55484463 766537942 528520528 14907071 472300566 87047497 109620549 785801696 41183038 886999287 458964192 304372879 356856995 281990706 223562636 944163956 788512131 488164599 43907606 974887151 591558469 22614358 735727728 705583115 402117496 825990215 747705297 241730145 16114372 880521867 121231561 456948868 479920414 70162555 307543850 431006175 967813286 356360996 521261515 657604716 848744770 213517909 606165130 355510850 907068956 521457576 118485931 901341803 16361228 699385719 20666556 119112455 607019591 881706166 348597177 321978781 468155307 6230807 126494688 219103758 733174392 409286019 617324328 25404598 897947039 242226106 949639967 851988128 971178961 12315920 442088184 956671080 385169547 340064880 292534195 781937775 763537043 640457071 563648949 730164091 25926279 349662647 132172489 672419013 411395573 171681568 113031147 682370822 733934909 13032425 801182193 667210747 994401116 772239290 281560280 899973199 73028260 116854296 832759552 176047669 17408692 782432897 477893607 217636442 663788402 364666343 726726713 416027227 980085192 235582414 888924212 276466026 929719007 899105889 946457444 336129271 860064885 535676953 124659916 502716849 943736636 237120086 603802629 696494995 473486579 341165491 857088642 774398460 524122520 574654315 383432111 14440536 713038241 360714609 80113736 194250253 862595826 637127484 853681350 360959711 375753235 698275276 360975523 637331244 891385614 525368441 705498683 346150330 376895585 504907622 343825744 240212846 313006748 30016305 306787834 750198958 3877990 85227155 795505520 578575437 985122877 831446034 656567091 724836059 558030753 10340151 784338058 309758185 244899249 954634732 478139345 539115733 93331598 920994361 162942285 708200584 909502285 821330030 755170090 91725176 770342857 936853359 503210840 76674174 660270379 458977282 140191157 1881607 585016541 938662018 96611914 282006309 479038507 510082534 652573471 514954929 688525502 844940610 382509730 938704836 489241144 47861589 869697920 538359418 769277885 133631839 241096371 866535472 406155755 606839096 271903931 130450595 672112870 323584769 607631955 408712443 265953874 196948346 343640702 696924923 34333020 744448290 484012613 763339788 360944877 510355176 245427497 466000047 35051424 853040792 864931130 563178667 1096701 496661009 477572235 273830055 561153456 586465204 189603954 573270849 966053822 114630539 391806205 565986551 722470264 116191330 459458424 80106765 929811719 465328964 651206940 935272425 96350766 545198716 322863043 699176863 819561494 874280289 10892183 910177983 297757071 637045594 867372161 247478562 708361590 528830995 424972296 107420422 339292957 951832280 384512627 126503413 842799137 748413625 665873611 403221204 348852238 994346216 899911548 634438505 418712910 404604715 287643138 133716780 336596294 92893728 157650542 750859961 631602091 451711258 932338468 885199776 827713498 97232543 630804244 360891028 88122286 819383875 397676089 766868185 8543958 34103541 677413247 253912558 528380708 764763661 951019814 450377119 88725739 242531466 574051726 533743535 455402343 527831608 237745695 756693879 239078468 859162019 523347703 118789233 940505580 25933658 603513483 968923526 7890742 619339102 374468163 569863787 798916172 84866171 783478052 839363351 740941926 593955334 50768950 132947732 497370968 331866696 640528431 260495906 300721051 937090670 450494029 126051345 414766809 882259571 159764932 201404923 524502719 310500975 660329117 842324727 308903295 515910809 633333373 426479537 135336105 409325090 960988589 772853000 476258046 14049987 420457970 210971900 271839444 713555964 731329204 251195216 687301153 216743490 485954907 969358358 498992505 608575163 975767574 36206367 102063100 519515785 905032706 921643731 578377137 710279305 881912582 492159207 790956238 302043667 353989461 78599383 599453760 10222020 276537027 24592651 750786025 352420610 577422258 516242405 575095113 898284961 706815785 341248823 76363977 62187736 301691462 636312462 823487314 352682971 361420999 803605821 82053992 919881793 627338910 455539750 421991420 995534097 189337416 200720445 654774959 979596507 879762938 527726611 681406365 716011898 278849412 990811443 246323935 281224858 872998744 937939210 934147589 418125971 815578053 230803021 534508477 172371254 147276297 480779507 574151946 874243971 841314426 682205054 338988214 180904630 240331644 417291424 83553453 686436026 958706655 501636634 690264831 365468991 950840223 610779299 247110327 249941794 162270224 204723805 977871685 919803339 803529369 994001559 663008790 955902770 963909449 506515627 398895569 705433481 294486357 675957008 49553130 710883912 158792661 912115760 43647292 624911986 848568368 967828303 862088952 371715536 54206128 947547025 290863804 800582293 736323691 928621509 532128200 555944749 472021040 638515501 130420247 138415469 772388919 921469564 477042189 261020880 808825581 966536287 231708322 402928100 163341648 988240252 574693388 543807317 676634073 704460969 947377294 613464949 477519664 225145234 593303538 493272606 232065120 830029926 205285683 719704512 907429714 5974274 584875862 482741372 191576417 906155889 469414488 11517624 378775154 371732832 984078716 672395626 796132274 846480176 401407009 22333866 902136068 347218942 303679548 343645497 998065412 656532588 689570489 324405202 136115635 512890171 109381415 69288404 587343988 690040750 368827919 240173424 106837315 785189315 61446553 435002668 666155576 429671059 680823900 738861807 629188497 299523488 624769478 564940237 450312117 553900544 982630612 790932973 611302220 949979516 786861261 86826784 637984436 311166963 666071794 569095108 578129043 17395025 192053157 260270844 647046431 577835473 842814480 409068707 551993864 370923196 254884363 278270227 949739985 471786809 982604221 704759335 100862620 629573536 276649691 986718776 180012076 206266655 53731605 821110961 610729600 354783216 280797390 623172688 590479979 569087470 35740917 953770652 214225558 313865708 939157374 902055908 426034140 695491780 620354562 817866870 223434805 554432134 373387727 614709257 833076545 985756127 657319500 504519196 230776301 620795131 550928236 397572 538024181 447040252 830890805 439214354 360228483 345660094 512440634 675054978 441856484 282019524 216040400 4006148 248544995 299101405 666958513 259277829 667035132 944817863 987457603 506466738 202006469 575302343 16694666 566231498 476652991 558451399 399829939 91846718 2908872 590307682 964160668 913301841 985340433 344382316 985282235 780743927 27266713 775523382 76417957 323373318 672136797 801268400 310430994 841554126 478444469 637981337 390508708 910237566 950849619 224641297 177545522 506869493 37739614 914974377 932341006 382819498 947999046 263361482 840032754 882450943 518115717 6564879 837095388 180705651 349438577 77042275 314556085 723220140 788392643 27620577 249175998 836515230 385291511 400309160 768516087 623074083 396441555 639013750 475336355 629998522 286719625 200974677 82251382 204371350 141367195 635796230 407571230 769722099 763024366 436384415 772017336 744843024 785187652 668288336 81813278 510867862 425602657 646066095 985572971 182820519 417180309 9956663 172270528 678843706 79943180 523370647 783513098 858305551 337859726 209286948 391148671 186030319 404090645 441192663 816143079 931091165 388544900 218129084 471164344 212511278 907314904 809928511 732447636 330141535 694798525 248081657 882182202 583662656 376923593 795024345 775728460 530614170 908884702 880565997 936612233 439201036 384746450 571474510 433167483 82142398 747460745 213126785 337382062 574274627 51826444 189609054 259486668 402819492 565644909 642097679 400954212 34257919 295867359 80172805 650960474 970322864 491425090 442425797 394715393 353848695 458034321 360176944 766203269 504998556 118966508 864416783 202325440 898695181 426791164 651590552 412860771 67700365 664296269 21204557 866996127 196415217 648379552 878054978 241225174 201263057 776041478 286884703 614492422 931070457 196881225 409977759 118576272 774683064 985148239 573047660 45968103 717148663 885582863 168115482 924437565 448141155 953475385 395134542 760775480 468746979 855987725 723856173 610547491 757081489 365073411 916273251 228249697 874825163 6336298 349196271 824039393 904089130 542334255 279630856 930528413 392654070 229810866 413142254 172451503 800621694 635022863 281842057 82688582 861681259 994910808 950445161 717898087 863837710 598814014 109777979 22197257 11178906 778946794 558961374 249698568 668571436 827245027 278958638 874496103 785349808 308001639 830418645 267856126 350302057 75568997 118036810 304088530 730969902 316244208 992061534 675991980 855049862 451698391 276157297 624244279 317587327 306965952 853612837 912743706 973625355 606858014 19275458 818417833 434637974 299742864 899921664 410017595 200969432 350704036 508216427 348190079 254492376 973867162 229756959 613887249 804199189 89995226 923186602 495875103 376015644 211671959 290505022 290172926 105557611 527644694 835198528 903324001 41632002 937922291 636968393 37729968 894748530 384624147 760099665 754359083 311458354 892059778 146834659 157474963 154154238 1039069 806809190 87165725 675748438 681400092 62584258 619840927 65592540 595077170 777855089 281061235 848698859 597594855 671384264 688981586 89454460 826745761 607253463 304094705 91738123 467118050 246831300 847569998 507240116 83979533 302776483 110430263 32714388 864921046 79744325 155105477 320569128 517862796 445176277 365333090 105458645 278950112 5908334 900189930 489153283 408755890 264017521 357404151 138445322 983078378 622620384 161096381 595172402 890910596 836726454 514703547 555956393 888623520 734273888 588203566 508589327 426564442 27957609 954454616 136228259 554079898 48383333 542273890 729779337 307359617 316401325 872987613 586433228 864828057 232882486 83869689 445390869 998276698 240772432 33389789 291405250 675519779 722146282 728106487 640836588 550981824 219887964 71877424 126095335 682388769 23248927 310447159 721151534 178196826 171576649 342983733 979065095 941266279 295745593 232728548 525567933 880023490 708732887 467993920 715892419 114080579 416319228 240106283 525075058 112119424 50733343 41295687 298366863 243047328 169467270 255488993 307442057 235733881 136474419 414558445 26862958 80665027 131840054 317066559 16961906 448869009 606312421 500052071 315661507 626915436 625326871 822042470 945446202 963183597 551896483 699440549 755856900 807692801 123622716 399356550 893096584 604288614 700252267 213251391 149159079 997930252 214104099 524374068 598161128 341602657 726373383 675803494 592417367 470102892 309122828 980502509 675172275 495892955 417853671 34705337 336953130 460372631 571451675 928134291 744280679 853763429 776292651 384760333 216676521 245967121 756349704 161083990 632907290 558641069 928881549 204089309 930051465 569992022 447926151 787845184 55656157 186740423 572657215 14774217 593525957 897882972 875831145 911616475 78636691 305293275 89402602 682550037 778747387 944351782 525625497 739515281 908500039 786521236 383499585 201659589 820982409 721307668 568823064 354182392 614559770 571158865 100838225 645316828 233701449 717392094 853923100 555610411 477670117 867358252 886174099 360787557 14097951 236708205 131415837 363741040 255525600 371504871 570696673 157373686 649554624 145297177 806266916 665764372 446339059 819665372 309198978 196426698 932618286 600031199 723381709 811774003 347017863 355366882 653550535 59192847 771500383 520817818 242341616 353510836 980387456 845669082 307643953 352066386 367295737 613060277 33678356 373126921 88119706 498176773 244923100 756479702 327890294 846937764 542496068 307668046 531142836 878346433 634798651 497909029 46356445 234592187 755958296 885204256 687723528 197958829 942983308 371932497 202932281 984479757 827074687 827152912 452499625 676000624 540571233 922722620 282350717 695662829 406561411 799462609 762759462 782924483 93708440 863498928 932259151 200287777 406624467 958424885 90065859 310862149 968796480 587672577 565592992 622632963 905867561 943984910 808283035 744832772 262209695 145822934 944662776 933991118 305734763 43132927 745664944 892113234 349279839 685364708 46236150 707715550 479538984 712150012 529783568 406857392 853197782 777061064 828248426 9448897 502492841 228724626 27871972 301550336 912952915 225027749 500206589 400404373 809240026 955862019 325353196 611850805 131860920 320637150 897119967 493831790 586224578 266856263 294705906 914696235 11457920 913615019 732959980 389212670 2053655 416961457 880398782 149175556 348662867 74398538 723589072 445949659 896924311 789872547 39734843 576793552 444411697 372756444 904316848 580602083 898319298 219127321 517054791 144179099 159120680 556818626 413075971 785743412 651923147 256445152 73223921 520754645 982700582 459621077 355734203 616362057 304371295 834847590 672374678 667302664 126459088 999913047 757596434 481465414 72144737 857183204 269023399 605584397 799748414 292351991 33563193 287057448 78146592 740440290 723431759 475667615 464799788 188271172 667252955 564182365 160825806 937862072 355251114 637342142 610201915 884702400 582803770 781884300 623063196 998625655 97931584 579794175 375811078 571778101 249821583 781518223 530834275 824757024 446196016 109035160 576581328 852959871 410313963 41871064 625912493 131616319 117043844 655706432 554601791 124460647 879687734 131883481 324773961 184101907 657791578 203080105 475758479 758470907 621572916 897609539 575745509 34451978 990531570 380086782 81870329 526787207 879166108 780005996 83337843 371796391 649935351 193898484 327641417 360418490 604544713 571846962 357452778 561253416 301852769 960062685 514761471 252125048 80533242 513006900 337799419 136320959 533160911 538845287 671673110 26080688 656404219 614347844 447774412 934642143 175710326 798894420 185780126 510567114 281774523 921795499 801784382 219787867 976706901 896374757 223013186 915170870 265201264 147022139 127928924 893257412 705182138 136604123 1971600 778411817 747063996 582044995 861034219 777562840 362521517 693925752 992016571 83538972 232776956 660307084 33549119 336858985 810771243 589062560 674901941 930325237 100583655 208082465 223467072 707512053 302016998 381655176 400590236 22151459 749562942 992758391 265197849 483780080 112333693 205016580 257931818 599037304 900385495 822799407 596087008 284421343 62143822 996136083 637470864 363100439 924585332 899071014 404401342 343586641 733671856 79360615 496042203 461580110 239191147 644682449 97719116 683973129 181000304 659495338 616642929 880059606 357372081 743561361 640783466 678400434 363400170 396487413 923118613 216872142 805123931 132837618 440402704 914271536 194918973 900971307 671619712 283339684 388570235 694676881 97459590 410835703 662960477 340918880 601030484 772747783 831182055 36733233 120974821 605658900 743756795 419365678 132552125 968766956 419320624 305816177 134919432 230704753 881051322 190159925 128031808 632259188 153019110 872025995 533045715 503819347 627441916 742850639 520933835 425848935 201541895 717084064 304675168 517627829 856600266 29056688 945196215 519827287 808444870 35406604 702122055 639676425 888115548 47481519 777443532 182477158 773584984 920143854 808021079 515919256 737713448 276816893 280259784 74213496 11724204 50599500 459214258 526382648 929270392 189774599 20537780 303336151 270592515 347525679 931399635 469653813 243030510 186330101 626204124 191162158 351762604 719312860 701833201 909529589 32527000 525201575 816202265 930622112 71326317 115941889 113639119 739689822 428718936 548845245 353763761 110023083 242785152 286640767 164467687 109020390 759788950 100572583 957538462 991127637 115894205 425848335 831026995 787499337 878905382 3135782 316473412 809657427 236877989 414064627 720866672 232485824 604308910 239483017 944993367 942124675 229031341 89163476 141822334 472593592 619399849 288201252 591997438 172897860 806243348 663817823 829199739 365311133 525643179 799433222 390106581 19069202 886985651 645315885 683255483 582500425 591865589 560318471 582837302 743400293 429151425 910371864 351878194 861094221 141486073 13326997 665936502 245827392 292932569 773741066 902692016 933118818 611654477 412030951 292417568 484453499 103816359 832786858 893243814 337953041 994998934 116576539 672278390 872396848 855688525 799265313 665043073 557144723 166306825 597905135 268545841 397739484 383044150 877751958 890441694 702219075 352296352 824831673 746064945 9625741 769950593 352453289 47515010 985572918 464617250 974109735 635498106 259675947 804738222 18429389 599807547 704981491 772867726 880443891 880996118 344506413 5966649 513524187 717865571 877214785 328250394 488717371 891690428 47777341 689602659 179565126 200404044 750503532 472468745 703134215 647877257 125408490 713463205 993599991 39879622 837196905 184428982 612410731 281011845 482980236 144586395 98571990 756331536 833329726 705077239 986744800 190186634 635750398 634686239 802663373 610575540 412253058 999114918 599729485 819828932 978217352 746298679 855739667 811310991 83753697 542906880 269537491 126184632 122032841 466418919 713425571 363357137 78600654 694810567 909792310 224895386 899239933 120016039 945244261 157025779 328635995 894356280 991512154 923789686 173348405 755726781 977731210 914359863 375144818 439803565 793232176 315961688 88096271 923180812 984310997 614478427 406011129 731925950 176568035 852478539 156500031 30097684 775163681 97134153 696801349 42477363 517325366 262172590 200498143 709383813 297190239 594565970 282120025 907468756 377055730 220762546 258364992 319237772 486303463 407475978 496187927 511843026 836745076 687891978 586105774 173177260 778503776 375511462 121682748 270798953 780373481 67397927 658462643 633165394 485295301 320975268 985094170 200992105 383941867 528987137 517440185 121078975 860220247 348266764 280273446 457678968 436516827 990364940 953510527 662472537 276408947 778114068 750463733 526063087 508533579 472531774 547859650 553102937 294985447 426148395 217968313 559712627 370913188 215265534 237899154 161640141 965146895 630715342 437455651 7002219 753793696 848179913 540089858 531725799 451176935 603402451 541781588 567238126 630390941 510952996 652979982 524151818 894707233 454617595 728492488 863717424 452761943 63361986 43493790 114035230 597715712 502394223 470079837 676797156 651903573 597085053 602755860 255380801 944214397 270926963 438014350 183549966 605574508 826681711 289002063 382450849 551412534 37401645 871372938 601475563 257509474 470977695 716400984 184373063 279524375 436476913 45768802 617455361 464981122 694315106 619046446 723878652 66126206 357516436 45910641 481174582 771087135 196014589 231977012 770811219 407111114 808592836 360264305 228303188 344558636 57671270 366003445 442945524 768371237 310583989 381767517 413060333 269804231 767805533 791640769 30480261 842963650 524870357 193283679 479520603 562572961 154378495 120734776 150978051 335328605 48176673 533154379 450576213 41153450 638177734 97239645 254937804 782233090 143247275 863741858 335880438 359876364 497233384 166552768 621399692 702470990 26551181 811307032 988098761 635313430 236920466 832548210 610032531 207964046 329945398 699792058 960401129 955256904 450991374 763329225 465784747 515872607 573847468 202475076 593577059 201702511 418084093 471432825 570768226 621199552 236157542 885613011 129182742 78813416 763260212 730083070 247165024 350266437 389509664 706172083 802973166 806317535 49648337 948727023 73683811 231858095 390974057 309876276 884201330 278839785 682543451 582500989 466027466 880397978 494739248 52389209 296260591 958235417 424898668 474334365 511341188 962034645 153420463 752452233 500310182 234056245 531024077 952879093 907690799 405976072 430460377 489229811 655975240 794200747 166818849 907377309 357783980 772092233 389508723 110831431 110855923 771517160 29594930 698566115 4064127 11560743 861171901 224661893 516456487 981000764 285387862 463185630 933655506 335673460 572164112 911697839 623898309 519866123 299174251 962704405 488063388 609535407 103329796 547719267 580525299 882435165 604098044 546361705 396128418 821046658 485798884 914894755 181585093 465310688 501655313 321876427 349437193 997745889 239267563 624221538 925254552 474702825 524436481 953620950 976457956 376996892 489779841 247790344 255942164 682519093 617032011 595042095 541599582 813008554 97063213 280290990 588057218 975136706 323834821 571015812 494632348 147971955 700405668 696323965 12735407 662526596 887375322 952505741 803496630 667542720 898079662 947377165 515699515 121833474 124933449 440683000 265721378 89363235 138850769 642715947 835681195 981219530 648917781 364199546 348901270 982843869 394534241 211905738 722937667 923840017 723962176 387301832 762042248 455891211 878468848 114544442 555445371 420875540 918052684 20654406 312799903 572984070 599311350 757939335 632265265 493720593 668810670 541105243 344846002 995082239 70389596 880590512 241600192 343771425 82662838 375570939 227966917 509416893 351765991 884112806 167636769 80009919 883680151 475248224 118686977 539868297 769651358 239211563 601828281 856918642 858538594 313912089 477233666 660446671 410751475 659656872 884891832 193441011 24539205 760200710 793957220 433577725 117493755 659075116 728900042 957177887 808122901 663754444 446780033 964784675 599437508 115938200 315782313 919294917 64561832 121711718 515222838 70118847 716846253 910289121 44955443 170841399 46555773 836724376 85111974 776582576 737102796 778080118 954313150 907381686 601873150 835869860 989566076 879714672 116103270 883494973 684450225 172305309 467433407 514285070 984759176 485716033 487948367 78493765 492516394 72527276 179493073 760819357 261677990 190050572 195753799 871564681 691613529 426490809 866244782 854518959 79137065 837267811 680731315 140762336 852556500 622353965 594136940 351862575 612363975 959072562 572620075 102277224 674738017 492954965 486197263 147591443 845697647 616912026 104249136 484470208 650282600 728230429 630675395 60117354 613780874 592321078 978118012 581387377 162158402 445311004 840825901 683353575 23177688 415706605 702046326 131207606 978077684 430433839 485702573 276056834 160267123 469749819 775099558 554230345 203879028 738721711 424418930 250944927 163181801 789416587 889869559 120068208 464773584 273204604 637021322 628336618 515092755 822496683 240344206 189377007 137213181 568751573 850655758 588638234 848721709 895693521 823405026 801937349 930825642 122000553 470840339 424548053 621318836 625458755 862332754 718340388 555261854 338297639 13137979 896221309 239081522 889175872 916941625 46786861 764879679 977407576 557508853 397664784 984075369 880522869 348824017 827554690 556141916 895553426 733704881 580420041 596702036 591456129 965640422 954544986 545468762 709003095 672797430 288710581 555334013 165153143 517283357 760460225 651175859 107206962 318312950 537899781 66628769 506909218 571808744 745216286 649663603 987535758 361579425 432924118 712135234 948666864 549946259 989793954 502712463 481295386 558576367 82418385 631880726 903743420 243205200 291478107 501280324 979212837 314921326 165669577 355109491 105906964 981405695 10746488 507220001 626597485 187609094 209481105 823560952 42763926 548156207 661228337 489390315 697973013 221998360 333224266 79783590 607689671 857239425 709871395 591876742 83659590 857895338 415093419 169956488 550611040 636827707 22205339 848326477 594982128 498826911 337439436 940574043 174080106 370611105 973361714 734957677 358859467 204378629 300609906 349571128 26521396 177729295 733401927 45282537 773351964 203351867 889249183 31201038 53695324 622002233 414874020 386049091 27816667 768716675 818527291 490852319 143049107 129076203 757924283 675459995 126848610 86108557 456930624 472388816 646305918 402694806 233719675 196423991 53818366 55891901 333492500 424900785 374546699 510930841 688671595 311294838 263062265 800430779 912125187 599628735 648523601 665538063 382874016 557796297 962772015 746817503 620503481 171087378 658130497 333459775 774234380 772707462 885749541 398678564 528790255 260158480 581125811 677943505 394371849 440459237 389592343 333430951 315390405 891185616 668422645 173796322 124497505 704579726 740883487 877189149 838822900 877354926 163498022 408619055 830129284 358771934 42226773 218055845 765584698 599576474 808282820 185126270 862267489 103344687 718544644 540470711 851263809 324136459 909961213 466277971 633892207 887531577 112693775 113222483 974790000 101703755 297913574 759563272 191645699 648671211 910996444 941933718 359666211 620275790 851193892 755781631 180713691 615394058 683971732 949414677 342246162 751070051 781367635 865113015 219461128 661833726 393852227 958079336 90886677 281942 721167255 435520596 568133066 547883855 903477907 754746236 338756458 199096761 458786530 159141968 37701469 234146739 508252582 268652727 976765732 812391547 297520794 752407606 844025062 726429710 330678497 160905954 385605604 960883685 417349780 925621273 994589462 774226602 807789364 909251722 848190373 478544958 937907674 214961268 784751613 220370185 319736447 374611381 283487215 757257402 514813128 489097595 809420327 124974436 938426326 9503567 559364584 178001160 688384897 612992382 609800269 746740844 317748136 549451497 642162020 119551597 793341309 986718952 818105950 610955630 670391389 530036588 843496601 787275492 256606716 440455171 403918751 167636879 309888378 302547650 636962456 763592498 888958039 523038795 875014600 687531550 16849974 557610579 8319480 35840482 247363569 143401338 173999978 244124439 319150871 483884206 209675308 765708907 93477468 539635000 654799973 976586167 782371795 599992054 92928945 902546003 965304146 262398282 852171479 954227999 384727571 381545443 488359802 305062924 669485878 285282480 763455026 22171053 310108069 728897883 902973447 319463605 555280987 797640411 606529063 869971403 506320214 19803186 262987128 166296366 348228967 45310027 631183282 134717192 683255933 159518354 789927750 804035889 318346429 555535440 472425944 665849511 59153066 697853893 743833828 401087424 567204227 246339492 860812119 660288770 874781943 738977863 551124260 848908217 22500604 502413314 132780685 141552254 477020536 818816646 160671646 209294402 329414290 814824123 92966534 792299700 853488151 905013298 229961567 960495190 629258049 201730780 663312894 316973141 145538967 844566712 633040323 900208211 704943745 317033419 109421879 399211901 655789377 149701848 70021565 425234805 67367021 912625887 703020963 230930861 661538081 999685140 951097672 274491105 820936983 560267670 935910662 335368253 223417265 742779421 84566882 430818922 122941458 173050128 235978646 157640735 743137315 83640594 79028490 211968112 822146412 138626361 69299619 294321744 523778874 347418116 826046314 439773323 650968821 165523565 58686426 754535418 208535643 91030730 840618937 538720373 847904467 419505512 92935995 538116857 408656992 685751917 982638596 765043531 16732734 77904450 84887664 801193042 958624894 14569225 640815489 350474472 498663123 970659466 367049165 813174676 279347079 39072938 319648150 243898216 945109928 855222265 988639324 659934677 42465178 331046687 146976524 60139670 475591681 896773324 376914664 900369709 42371671 611290857 145042326 94064615 150127251 197464965 911819196 218877874 523493043 74400545 739869795 788566856 378573817 323387329 85890090 942216877 358562382 505144635 822074872 104812540 723780760 342142884 796550308 83414703 81616044 510447211 922409382 78792033 298304731 560424270 869959259 35985877 717522519 486322832 707573087 692242607 935816310 281577598 249551224 718942185 40281772 515057982 267585743 195203305 201871160 655923707 334287410 328182261 258519190 868303123 465833070 700159928 248979745 344149739 534344807 934664337 441298620 270647685 940271824 351783236 852520101 807115245 966531982 759279904 458042358 107502763 559861543 964071952 801419664 19274347 57874094 616041561 669885331 293980742 87074515 298319798 534707632 959351660 461505462 619115156 604130495 16188321 735376909 709514904 791249037 284839776 44597365 91324204 76322521 724410917 399195986 425789529 170642809 266905679 766676214 527306751 777650577 851810326 707293509 88664870 877741447 106468034 803450447 549196047 578221418 779766045 418705548 353517137 707629205 526388062 825456374 105453049 591157136 114716967 887834680 210789563 780997014 273131859 216168925 378266398 390319700 778376894 699583570 148901080 736104434 793897694 835700857 581578058 692693946 699671470 233817455 306493971 311984445 929693781 762104127 354000083 355430203 879687159 69986922 123416061 447208829 607507688 390551351 584690154 688787189 561919284 12404177 92075155 243017126 348959942 869256899 64480020 546273111 421816654 595737146 255366277 587276335 128535502 151200431 909552360 873586961 55914842 368194521 703871548 197536477 989791541 716805259 569267695 358403123 542623666 739724877 736341514 658714053 977671231 178861085 632597043 973757717 968038656 54750291 47642305 220786742 767170818 475231892 533354582 897475396 745515167 645678970 371089842 216739125 925071917 805880141 25722416 530824834 813893573 449836515 563711257 618684723 855759222 579402471 223931722 398890499 226368923 477887610 996853299 946622931 381363211 659813471 255525985 27387234 657144475 437927898 602875941 416008608 989327053 570250441 888341274 976463322 225739682 817223253 521729081 683372057 603389724 364194650 431386301 478617350 670267694 773766950 210599763 325353530 137730456 91922191 273074972 652037429 393393193 695424093 604575475 637072495 876064049 836054529 437664427 945733231 194174805 546466233 394869413 209741178 917218874 433168085 56451929 780823856 648345106 32973124 675477950 471788514 667467277 635860340 109449877 602708987 897702593 352440246 489567522 506143543 522821469 885774445 449683698 381746577 951758293 865244968 176245217 1219878 238242920 759640269 82896929 69897240 769877226 735280808 708778578 884103921 795320091 298518454 438889062 328627241 763243179 770074614 229897015 768837561 861267777 335245791 748853363 685228774 170643119 772713813 508725707 440891915 657105824 214053182 571924588 893095066 344710853 353551067 112142168 792540235 168513375 575199588 970293592 337973618 959455175 721284322 231061051 583901008 463463175 983616989 73693076 460518483 119579478 701162990 719885511 198969215 938509443 399208588 116610069 370028704 43170234 801618283 757266209 733744198 841248309 927454262 507985740 593272279 5037488 224947860 810523298 452262498 683523265 260459382 398083916 117979595 671160004 647509604 37184415 324120301 881718589 106000390 138580742 190454080 182601901 81161240 12197539 235206222 27885104 528261219 956833920 381164814 569733908 464998283 108964982 919626833 302314864 382395615 424111452 448246897 59573980 96365581 535946590 484984168 860120616 588995336 574111571 141461376 2592212 556157520 103099726 127271906 448656905 828430536 520512374 427625132 247184705 627299309 384135271 653782635 206329775 603916085 938683258 799577433 364122835 978216380 614426648 918420514 644177052 564584090 224304677 572389416 486782611 887703703 856683780 724396260 869668868 312495427 369465494 695070406 351973645 656966167 956390396 340367704 471283730 200569823 908784859 504292332 356928284 636446990 923785079 467581701 55712237 704809321 68830906 670600173 199570502 643110008 699374578 921296864 870786624 85645643 587427132 320050602 78038782 14535461 891929177 699141905 614768869 399790348 248506664 995385587 908604021 112131645 488168368 496186993 137145211 640987715 713127154 878276321 115375070 610354523 90656893 971258201 172667399 968864260 237141837 478205155 196109196 219338394 731773481 643225901 481823702 638827031 242098434 518924498 195225635 651436709 486343218 397638646 870643538 880096626 459550157 155397100 869951609 970284489 946239593 646970142 988677578 78905490 947771089 524225132 698660721 713124771 917858586 869299960 776281509 591106991 758273682 295773477 365642485 757320331 611469383 718002722 575923763 199191861 472441937 538787498 718274050 337808284 314328335 787493724 754000380 844234 124839943 453062004 488872145 825863788 281869391 228516515 447964225 801702623 679426409 873106828 979143683 464852214 285450681 263313066 485963486 789836760 311838564 288419221 971554767 173660505 523064855 276696110 86050398 212463275 793186955 158744953 630231605 604014108 555533644 879440100 982832381 870697143 248569589 224915988 264115199 650701137 29463476 141534152 599625884 41385666 65935241 89222745 922305690 245952602 549237725 752269643 338676729 392948204 340822051 323777072 797197744 422799212 114547710 607433099 204478040 961988525 841911659 934166907 27293515 682272902 900349649 112393683 719194436 869353201 729553845 995477846 443496874 728145287 566214460 98608334 899539367 336172465 110513449 517023879 762600713 739889349 643492527 526880863 745206464 787983329 986683300 486196623 419990208 826192892 981008148 759031607 566594402 523482920 223080111 994523230 743106839 511180494 472145595 671284886 903776022 281796937 570999697 897781839 810791993 490067588 471102936 765391133 308019210 586525392 572514912 378963696 47470818 176063603 317999989 391946941 688844982 918119082 641441910 560624759 946108416 69449121 240050613 476560373 187121076 889976259 392187246 308906317 113235945 514632689 399323845 807823567 306018819 325153069 768166181 508070098 395481820 874512900 894811185 377635571 135038141 383095915 123162359 297579983 709786431 434542713 998264626 79759031 594973938 626746514 553605559 529366729 505057746 835062265 564962030 190499898 851525896 499068228 278270091 178280491 111962250 163943621 680110014 534387701 838412639 396016328 581625353 737146615 298141741 775653006 752363800 426224520 694008025 655683742 891712485 337828246 229295314 366471823 700370230 874090344 43694290 596279754 912317322 194191775 722417646 312019319 461511790 753297414 193890824 717778669 354128354 513027603 785774045 310663524 381741644 949929469 461410636 482377796 742543768 506855312 778730712 830729398 419032698 889333541 804818341 784467709 72692411 713166474 742744894 118367012 206554373 91855973 920311550 944357206 886172344 147206467 868212804 965883843 615222165 216342518 705270987 774001725 117334429 202089652 668747515 253891883 401765102 765587835 352501803 617570431 664123585 761983594 560958630 856930635 238881654 506658740 239252739 208434236 26272529 510690647 149823060 987679283 431690124 719683804 655996554 441799590 958421855 115491862 206849571 12269804 603388057 5656898 881604598 250166770 130065248 216606709 291380809 743312199 487322555 686002991 874517822 472476653 193303321 929117064 416272378 833441189 198462309 241824063 695460620 786902508 256798943 454393184 352198021 324907912 608688564 747672140 496901081 421762094 501786950 52097930 428401130 957431819 212530874 928691661 336057394 388416659 619268299 635130614 848406368 219875841 771219363 52960115 506844580 405572595 774958556 414218894 579909881 799929341 610649630 909564010 522563247 249065919 971869058 485664376 503212623 99722402 493933373 590849788 889442914 906246030 568143071 297765634 679864414 433722222 633818683 539158674 462528102 290130265 443267928 517179989 851706873 282908428 357601369 885621574 391914380 910796060 878674570 796712147 474775401 66911354 637787009 112973929 712848945 94575083 707579651 838635973 811458219 822288228 96582121 174815141 498303943 558328147 780183997 189518847 52367214 374250289 939193353 687586530 966404607 200096872 432295780 518757550 574130850 909079573 526893357 107947717 625100129 27262020 488997491 232180568 629864090 475914703 238325484 140029741 81154353 33332436 345522423 980440053 560330355 82194784 648185392 432664095 601318043 248104574 135160513 29916756 583774215 801726175 833821565 784796761 822903633 219753828 501955999 98972337 331083009 749333694 962634922 359498889 699339167 99602110 119021779 796806881 648244340 487502383 534767694 653939176 843830283 333177217 976408643 946339337 840204827 241499138 108172349 177477187 7234326 812667651 968831347 428472506 375001293 425107187 695679458 331578683 220751113 938474430 680326731 766503016 51454665 507461104 618063958 589714329 716947181 717166229 316220620 612919576 721679742 172105097 382986282 66787372 817872365 427372694 255768875 445083031 188597715 525624200 170382334 937162086 940998000 770638522 350359847 705119687 7363091 406310148 810421678 593324791 559388455 251949604 447832029 708746990 344227958 157384054 531258492 456855750 917081233 908182048 718834500 517916159 818904761 753328980 551012880 314308632 895701604 471874811 486691934 466936623 939283364 406820928 652720056 186973220 758676330 951820471 490827357 204662900 687450891 755272610 529004896 212730015 680360315 899016321 580638962 92062820 158103523 696555926 872367473 852232588 434038236 683431920 638706005 387627425 893241629 366129356 424777335 547722247 966578070 214766318 714420860 602069866 141146259 856030048 964730124 652814472 427959469 987749843 629296194 607724756 191500749 459039323 293809225 394810920 561873664 280137242 428681772 900444159 217151061 85613336 788477598 156568833 455489819 377240408 424995387 121366016 512637927 89744918 901497417 844920547 828838703 96460248 106533516 684020305 425053969 268977009 636971541 154578621 539722770 7146799 116024207 231622156 302027013 831430222 725845051 787988265 395304090 615116421 301976562 988099943 450042984 283106918 476707215 952188569 701187084 644996481 267219132 460841702 548575608 686705324 59305534 230223514 104087195 22858794 222618703 940274152 423211036 671893007 205817749 914448502 818343285 57276506 114346628 918803434 709651219 711760300 779003345 527420662 632520022 142541335 857151924 573206511 268223033 399814 504679697 970208733 613400522 426027726 809826974 923518425 676354063 327735187 852629794 534599743 589689982 620118649 855264266 683857414 278270121 275492605 584867201 227011902 575802986 561118373 504872377 224058541 180976320 411183842 403070520 241316988 361067792 203595837 489806310 850629919 731338445 933669918 698963948 482456531 305755105 578500926 847987500 891933464 246433534 428764125 598032725 711062177 700789139 967292303 66950469 837381466 545290865 901013050 576413756 650469858 317261234 907999146 826621434 312617780 464576795 342155561 262690651 967485656 307118635 527260336 908397223 52507397 196737065 104506362 963801157 717018740 710025758 246712895 551210025 590576551 935740626 622859311 160202967 656143587 260658392 110403467 962796185 719819297 579640566 123927514 961766272 875028217 971799074 178897549 514162279 242995674 960408766 883754538 361855987 186537631 145368272 633701274 267344443 899690574 703969992 193243295 897704095 580809169 949786751 566427530 120136567 495654493 286985294 641539551 847859678 964714977 390372807 383451014 927757215 415587144 54849512 406099342 8010874 376591002 430190471 509894542 907667028 562711653 7441277 760860352 729147621 294820284 10364730 973836948 72148697 685000745 232657644 917049694 959714668 295796601 184372686 526240230 209708929 672391265 136444346 663190375 793377987 914388189 531103708 192662186 818479286 369711149 469681428 213211020 562932466 88392470 575514786 747414653 600086233 300436774 254905708 618713808 772086884 983283993 133252213 494335715 196667524 684922465 879009235 301925914 374090034 858219909 876923815 858022860 211974821 301488629 282251297 693008996 626010258 604754430 770865708 482023126 358975444 821845059 920265300 414754029 906819332 121960485 175563133 931062649 605017280 502007711 545710722 546059047 37406376 655495247 835526786 345000794 288213123 657659029 748897607 511299443 48245666 849821544 683470478 144676049 223339974 347758761 785721634 416947425 981587473 465227734 291558002 44769896 353749996 437253055 941412710 785386935 362462843 207160743 884481676 652487545 64749973 302889067 357428613 77267222 433050029 8468919 633522084 997861854 994811238 452573216 71238388 689805845 571716290 545158828 678348447 139274370 483005588 312788883 939359621 159969156 509996119 339295904 475093517 71556574 766072017 303728923 428892611 783366483 232366430 697772920 271605637 986412468 859276128 895561562 908901079 809728063 821631359 82414720 784274909 929203387 638092009 456077289 917616001 283774037 907406836 167302301 470116209 629953412 219672794 713689955 225153138 709852945 719145817 461962733 175146870 535590840 442604932 867602142 868131765 983543450 25246709 912929737 994030472 977845462 423398181 23269414 900538146 180984707 927870474 919720045 917007975 643671593 2566838 74632149 910222691 410787474 258127928 629666623 348242300 19830839 497283292 638918147 223725342 15952647 877147418 420169372 100548981 596545021 635710722 304148824 286631326 955728310 962043704 203884254 393470980 930448106 325097279 237822274 714894547 858117926 10568005 137896791 648527923 351929948 691668143 863802717 103938308 223821596 364072256 43373220 745917737 725378220 990593857 926811410 436675664 535580918 198978083 670810524 468698315 224170222 785647740 121288362 38618830 295627527 739480158 497010148 361386524 115131228 55403479 169457944 770149443 462777187 809940030 956020206 554829339 392686830 741998532 501162456 418058043 687557976 691611693 852088968 851214397 861241840 433303611 781061792 21565130 913051175 80576694 295947994 434340066 332164635 251293635 685604697 950721099 384104356 975971830 253722484 617983059 717110776 855927274 166872943 259260722 3349222 855708508 950886727 470043524 968702706 122096613 1757916 539760733 122000041 665138160 182612309 387933025 425679685 279346904 491932555 809462696 255769271 879531819 389484065 983289164 311270992 876516382 606487739 167749852 151429311 139809717 782554773 896036673 458884179 710273963 168615293 694056455 32405487 396219333 696208169 12803604 960559990 733082183 705276702 728919379 278082055 845602733 682040813 36070377 700613287 882469110 140676694 870873471 524685651 634148925 163349648 124764671 246161287 486300423 389471256 779877910 270580212 921700004 72485316 893784562 745210477 462705969 996258758 418830354 314537785 362501404 301714159 276916873 32831168 295590657 947701200 605199103 2616902 32726011 438399392 397866496 831018448 752567902 921314278 929601176 179371179 488020052 773180634 206538382 655175538 191715241 138780156 546796786 977808902 488381700 875887611 15106828 867295526 318580279 890856605 765876703 817174840 245818398 29327616 567759828 150663110 421255057 940204210 324733351 525324826 874437667 407800062 483820843 355168167 530195159 387922124 937166398 148306025 159023726 679536931 962980185 501136699 328718400 191027521 657848286 204009305 992206415 297491345 135881532 392533507 604372985 114547896 671726285 13461804 517027289 729721573 142364702 582217498 55508568 610258823 112796448 487908778 952605214 733959486 953343809 431952055 581182622 479757804 261554155 897165304 682718660 934677519 214679155 8302554 224116663 391357061 707014497 26404062 104622846 82396047 688668184 92951169 515297053 70590659 44139002 580069349 128182774 753535698 629829825 723286900 354177825 709440755 164168557 432000576 771443979 126911226 753744917 800281112 81343228 296573426 923725870 620133475 370163454 74284704 558330089 994575425 350315676 580143978 538050134 824341526 795564651 177056955 832596077 44505668 371202444 895058533 540861148 194110552 236771448 70940165 957447852 867573725 2838593 635693761 931748330 109948977 341944754 533875302 581889100 865881638 417642416 746009162 525273260 901888858 701537769 343299218 350744499 374205123 188043673 236620051 163802839 282351444 555224742 478463789 394584830 935326552 816824812 837930685 935872592 856022033 852150624 656985641 130906703 916177857 774164931 599132184 10621896 361850408 473870375 935524753 430447711 310621114 193826027 917988800 104415220 277327053 732749843 729275474 984537855 262769835 66308051 658600258 521560404 137116966 926079104 698294382 433011247 54220900 34350684 677044062 714380737 189233632 142471439 810731263 510410187 432078190 459854384 679449584 461338609 89222555 585172272 470386387 166298091 574581681 139312350 480585001 710831506 18152386 779750828 337519680 280937328 712282357 56498939 66213473 109345420 366790002 274808164 206205787 542028845 384203374 973892574 226768700 844378189 308706661 887860825 57264115 996576457 846225716 189992885 35983065 3947101 776889110 9444714 507378915 138967767 359710119 580234478 103130596 202552321 307967701 421328930 401887951 421733415 485569259 226370299 754394212 438011010 974807689 996196784 725678357 574970220 591758677 584097044 877456587 650879803 710670486 470615153 440492388 924783008 442303624 514718624 935568424 301456946 204635801 463023255 501459025 524157573 534188773 13008746 283023477 131141750 956407172 25921037 387448623 528351371 869747033 336535270 289813189 569889479 521529496 937339385 644019335 19180788 403528113 922675946 771575664 213697454 29378848 13092316 906298656 510560235 83214080 997842188 419659576 309941988 606741129 986310692 295748113 393533997 798585081 951722576 353453463 525230764 420436032 954782011 88259588 967773354 259162198 978561670 97442299 460798410 246842246 101699316 319383154 460980909 546417882 62990872 166346689 222825409 895833604 657725198 274011551 608669983 845195914 494693490 233471816 358306743 13061204 394480140 469012700 202023483 836652848 719720637 756521344 950484973 10912609 263387398 123008036 848901226 904466759 611439159 557338442 183176335 138603176 603816244 878915992 841924274 974795170 706608351 496214900 694953290 805352238 892757132 705334764 79145565 594772039 184374777 355006842 428761142 92070209 426432444 435475177 603309094 776917412 30935001 375011388 196072482 371487761 127016669 451473883 895860847 137017600 521252338 750932784 548555110 671971749 14761856 454058922 767954982 435281078 176553402 552454209 659040096 899649903 144068405 908126458 671687485 544096119 11509672 51074100 53134171 371495228 109787375 364171043 588212217 122342921 274226584 393703175 7143081 939442343 885036778 206381548 544448015 729694690 542575659 183171087 117688692 224277229 660436730 199472200 962852689 273071822 912229398 717901324 619858367 800674768 200983462 376490471 264979565 206533634 334965244 575488301 627230413 439647547 986906057 157851123 131465173 140253633 278517471 920047146 825982781 23876736 902026863 204061947 834676370 626729646 353650444 866906258 274438562 1688800 537281980 822854680 356044663 970575323 362696787 807701894 970592818 626385811 498706912 221364563 801771385 671726382 16589346 800292528 503631983 18659013 775505129 219814702 381928245 723747354 863464332 483199007 614033110 465749881 266188494 577681658 757890933 185944260 993776466 643788482 64512541 998160811 144651769 226539905 593329710 665005560 210246375 613712252 960740078 926994918 939683332 651328328 926974466 907880353 942246819 85195492 332156859 675011996 760664708 829620081 796042282 157656050 979074694 747207580 285828934 648981831 126927481 781489141 641860338 672091421 731514836 987466382 629973317 853190180 814939758 601742599 106849508 160468631 472953124 753648341 861627701 784159150 432502891 736128462 957568502 430201397 663533427 541860987 997200538 656149463 504674788 669931034 938157660 656801511 28134032 159729623 286730083 652515863 577377251 152187679 721769870 934577116 375485758 968490552 568507689 97294103 264759700 485902790 548121653 357222126 157996849 430189319 431487748 616726270 881138957 688624260 406387287 481606647 957902850 138022207 936569830 987402289 801638948 462113399 634871250 300499796 628459383 315430840 549579664 529119483 327820945 753481321 83040176 533305112 351452096 385034887 936134399 40594678 617154610 318426165 33406035 749620247 95957905 585958757 50766993 800041225 335882316 595020232 628595198 27406917 656543154 988605736 130104397 302676408 171680824 505381205 341021099 202209275 162565207 582185305 611517046 424669057 785722383 395879210 218670358 753331 35836855 477960667 536394983 381727227 647834326 663486404 887175378 616656694 452143735 946271915 893004264 865648275 894710830 196283308 1947169 769632464 202249411 758897499 712556118 807906078 790094218 75605708 699382569 636135846 39800120 214425579 220293324 940344767 187466733 779716393 76293760 238570055 615122536 613157616 812308405 774213201 391896765 316953272 278850908 674050156 499722612 679630745 116388640 751627978 898387499 655885754 99103398 802695936 268139417 583255817 937071888 583860955 414683865 755826553 661778423 10282126 195459271 340057900 25843911 914678882 388855167 575764850 520203143 321872286 572989758 143740804 735748374 813395721 187924499 402594033 640137713 738056683 89075916 113102913 960228716 710588366 891899057 226780437 558701414 635314753 249623131 340465294 437608078 857748375 277277090 638882156 587793282 359231966 435894075 513198168 556591140 963110838 134282948 157417950 502319934 242047161 429097099 14429195 220376692 558796343 196518563 938702175 250423748 25065890 92560293 436705851 459423751 802728225 865186706 815534033 443454362 961569019 832939258 61145531 477942960 3124018 363772354 793937486 755348307 471541635 161010969 231925520 644821339 998777647 925038181 515853250 982867619 976417757 281613471 68799116 444147824 55231526 49366346 566145255 675021815 823825025 201583230 55293705 390637183 559058323 659970154 216545363 224152297 621125005 317576841 665441384 336748841 871487256 758990150 467276565 975685981 120731353 556571712 915478454 404733451 535529002 714319457 422662513 888705245 630671589 461031999 933764615 287159876 344630817 923544151 968247997 377919938 420556689 799964433 184554441 943030792 68458264 71136056 259185362 742638801 397371559 543836858 210695136 400051501 417002398 79026424 841176312 609597664 545659791 312620776 624389408 549322263 791631884 718947630 165985835 862357871 785790093 421701564 485358644 494232531 692727515 409662107 975357853 801818051 835984184 334610574 393110204 371954414 275070951 720923167 677990528 938122965 256738444 403867411 669491440 820496774 398057450 739248379 730326887 620111623 327637657 235286409 325484816 308217000 461516973 966858599 449327469 740151054 176272778 668637535 270674483 513403269 180168202 146453371 423363854 459415345 98097794 720139196 745382065 236856133 962542585 397422279 687473674 504815847 915208131 965617552 37174152 74625578 124256697 662522116 979645918 78058880 857053830 542076879 802790174 71791340 207840485 863216213 461755062 343198436 421323590 690216864 740995683 459328181 17142899 278648871 97118778 368367503 917180467 988698129 310222631 624470017 638709 922960015 500230690 406632653 676218905 957551763 925140135 442452505 307628639 701302533 190121398 490136531 825965643 46684056 119591501 667937563 69910429 998392200 937367695 853557444 78142153 274217796 842534132 391956468 783201222 306810358 584134533 500929721 182106400 858519556 331406425 310116248 157846419 779997070 189815309 325284909 935830690 191241463 361635356 722084551 877853850 549159083 748872272 297590666 964136512 201397843 656945929 609727376 443892830 255699480 514731564 929537548 751804269 907038730 827847683 297129564 293610678 541730702 501653800 135482098 28878419 897116742 317644830 611000876 685407904 370064556 694187541 466654364 555750435 628964530 643771309 656020158 492790919 528556756 178747058 124994701 795419041 48395939 328263761 321112229 644027706 189266308 246252743 913731764 398841915 135326668 623662184 495639944 929338272 295931304 684872925 290087323 206899839 837983678 486497024 231153048 99943840 779230679 254251114 729239837 241377872 906910889 611314829 33646251 513366094 726142460 714264125 958334136 918249135 279069040 754408646 305445132 513142116 492533718 486625052 346346789 237916902 769538026 781861568 693747229 770482756 479865565 532156847 796607456 188109192 667939904 702935999 359310653 84187649 270660950 391228857 368136837 676578706 175321575 46910468 831984281 750126374 302216003 965468325 363621268 985018836 375953472 315030341 864328773 681249921 148012676 827494064 328316977 408323351 831989446 429759559 260395617 456948060 407242564 889368536 440496111 123747020 169467785 524222892 14616048 703679737 329645666 20134319 80872347 643018403 816017224 44310037 500842561 654392452 436213254 945751225 625922156 72923449 906381213 652128872 259510580 272194720 774330028 745593215 674155114 38829729 471514229 924798039 652879345 861705773 570718254 395080443 837723676 550379082 456968762 932794306 143056506 862224501 554918421 70603504 740077452 698386377 986744462 108696921 883192316 93999306 85674262 833259824 491867309 801884319 169449435 189384221 481357853 929184431 619334218 674950841 884232543 590533655 352779858 844997851 725022002 309461777 48077659 548836333 722776382 373316503 654549383 900400054 745950286 106676187 880674472 927131430 794035922 226997207 560318064 868318945 948666643 434187019 941127560 180437747 682240618 18244374 300676122 702924975 818397068 253496795 937140935 979273190 691723559 803193169 181745364 469126133 481454345 860087603 464699441 43995769 785099192 434108830 657300538 672932807 241285418 704217094 287721020 547326868 730530776 179158277 923456530 984585713 219936035 729615297 685341524 292004374 10909543 459747776 864906925 14884445 777042429 974743008 434377053 26343655 746428990 151023398 377990777 65030882 243659605 754042398 857455125 707744302 28491272 789423056 789097123 761358415 521227874 317196660 8145639 610372501 147960570 444335813 326235423 974615866 275339117 786963639 361154788 500593841 881563383 698169637 910442589 290261936 644022200 525427986 604284664 832159658 496450641 53456272 464003310 298652595 842339589 162585288 965430241 566343513 722933053 167779482 239922226 112933935 263942068 907779324 334963413 683125315 742888324 411276612 19655390 133449608 914555090 489764280 955262775 180151534 386798447 789182617 791137302 853875980 733411360 457224367 503576819 836789821 699594529 628116177 533200889 371304136 274631127 750104633 893036364 930446524 889486960 512740159 188494395 230813293 178592490 535991196 296898918 227329791 355451547 604603507 225601813 50135379 52782468 404410717 167260458 187609993 136040061 987693144 720494665 281940665 753496008 219573042 707999814 962273973 108514896 963293553 563895697 645284634 120593737 936786579 144215230 945981070 448582598 189995311 894675726 878324896 635471822 1482485 527613798 664488030 556988976 81434465 911599620 274466817 326647096 429284491 424537696 857995177 765380235 835094858 516038091 554296977 219778729 513900485 491354716 847267347 926926734 191126495 464136523 942267125 780035656 41999115 367019485 762607941 544094559 582508481 172661090 558065836 620420927 484414421 147865508 963148159 624212133 104518780 838203850 555057775 827492760 940828895 914806197 360843181 358939451 438012349 474966888 365682182 170616810 882923922 131855591 732505220 904112992 369415946 302350649 5099552 443132081 613372053 297767678 718787340 843037038 711039285 479783999 243495659 173830168 364429962 237119065 548436908 228814920 67290496 708543505 920055537 10842146 597407739 311646806 934302119 9466462 731462825 875162813 972089630 716200127 786852757 754159984 865924200 777778231 629872253 455828877 112638897 862782846 718005577 274539179 485209892 753719253 583280076 682344206 880961699 284953696 634363916 560377001 587835530 589727930 734676890 821415497 742577484 960948554 155321718 660601566 484759018 113389012 371897405 488302586 446245953 641703782 495516351 770465329 710467013 285135145 229026141 803191665 419879034 927740618 305332022 286873477 156203412 107404147 917654583 153878450 653853598 869049687 716803552 405733910 340366576 708624953 813144435 221946693 440115806 107279602 797963874 888490739 826003863 670588212 108564265 23918632 277521098 196070230 38601652 918400994 282799955 376079836 382595426 465874885 942214166 144967329 303032080 475056297 529019631 85506680 533321329 904020615 517003305 83313369 737813577 968396700 766333447 942507022 384543049 635729779 541944332 261801133 931461970 790815020 311752637 300148736 560175197 48243410 898678094 927550898 37892978 189578772 916440895 160792301 330914995 639784468 33648305 323494844 109609939 978774720 318333357 423619853 216861996 458110496 916858143 907776153 208097329 166516035 773256643 695217454 409511013 538675962 452339337 124773863 299348683 922377886 643778566 273672901 203188986 834662905 579707622 258430102 816037803 383441387 80746156 965770285 554546031 667582913 312858132 832156326 175555135 539885724 256865162 504474820 698892667 747459353 505186196 909600524 95460952 392844862 255175557 704662393 244153792 346806252 354384805 223542505 171664216 654952535 329503881 357752860 890325553 997535123 704592717 975926410 28357661 294783822 689220002 323457784 217730736 304863662 431689069 401439645 476742261 493927389 205645322 278467384 514518126 788589746 163313502 484656334 847759893 743521048 840406196 77984291 893262344 390550547 779124695 476920058 534374466 842296595 265365095 654434185 867651871 138742509 74483710 897025129 852991343 528299749 22808834 416715133 196144103 693515534 821905634 909945267 772026809 166106875 459811786 583045118 507423127 66799980 782161725 148889297 161448300 202974848 882483243 241490784 885665840 600903412 673913135 74778687 95040308 925702005 929154167 606519108 580526249 929225855 474011780 857072075 630546764 501162251 52728942 554916141 252287410 284221037 177001093 608604668 838942773 618154786 426626634 375458353 402665661 208515298 264874317 867105129 999074124 306538931 388155371 471064309 963111268 138176995 436429511 94083942 381163538 20661777 75815454 776875438 374697022 570064039 624699706 936951752 381658006 129411322 248994664 172483672 423325202 432206521 529832563 371061763 520551948 32071815 899864213 298886332 956360894 605842 381908092 235229027 447520542 568548616 594158336 940068555 189955955 211903685 89731588 550244812 104940705 427505043 794461452 653370115 984223482 684894697 333991962 394915057 757665235 43664703 776543155 47695974 359105441 153249128 924505992 113216937 963736541 560045792 620881120 328037672 245980815 997118356 336393870 40263659 592340336 542051217 220961404 310638710 656174829 674065552 398906880 353510304 57734915 109083025 41695993 799666677 573491974 3389493 607243865 803926847 312105447 299192302 103008119 47418045 111419600 637630425 569692566 85811941 855364379 936345004 555971290 561248339 683424401 835450126 249811512 449399195 213636642 898210252 458413389 47613660 624915435 71620059 909672448 137895866 787678710 561588694 24082481 919930878 287218689 963282633 616956920 181733515 107551444 557666260 450962630 245850083 269869094 648094075 310360513 993170886 401790621 544958322 170794308 611397230 587385429 85369630 137626646 807298907 235857914 835427454 141995876 758303803 376387497 551187340 780329668 367334957 171096789 239874535 381015978 773650624 801376141 638939065 809492347 752786075 530184806 634909854 743131 792766833 534949202 789720670 340646024 449745412 834146536 132609285 401360719 325253773 669142974 212987409 752158272 809709530 268752140 727142 518561189 784395381 321514472 180046287 167834085 504265792 875793562 50952405 511845192 612150798 678264182 399851973 419809560 709289527 252732986 148168458 764429493 474346850 300851964 398073473 845548962 535966580 865464459 838209290 766452655 151558711 983762128 80397104 640622441 662775022 259974672 720017620 612397627 571174303 307528474 103940540 635490313 844080376 327188286 500796689 289042706 534640042 385394473 707747358 954257262 736565654 37996582 299446575 693911980 804380243 912735 300924886 211235275 31265685 127529643 396785454 52868112 982782034 271366288 332406384 59458658 104498985 44105831 393729844 48673396 686992681 193131321 463651690 496301290 163573943 499302112 197794439 954646282 625415784 273497651 982879286 574796009 253575740 261344311 590124381 663085275 25356403 568366595 297106315 643693707 724293485 280427896 105850245 360628268 950326332 481241609 428421873 117425201 71492716 598664202 318121249 417016711 421059066 412220529 587782077 690485818 625089274 339086694 887450958 64890746 700195280 714031535 984165798 57483339 459462138 248813798 576779917 709856165 861394499 6289802 478564784 38557428 282901208 169822788 568246525 145771999 796048777 299135523 732210010 10003641 285213135 870642687 807515032 264082238 439700251 746262034 664923351 59792491 641723417 610218954 992733642 158172815 393379662 172048472 699009396 66787388 190683233 69110998 928585087 172259901 883981752 867003840 122327537 73776096 755635941 852439484 604667393 626625204 968258079 566780644 383749292 472856455 216708953 443406747 109291009 453629687 241195930 611212317 532533681 564973050 728463386 267077510 954263342 687720251 98028799 465557494 341321883 330117772 239033029 167768414 160540669 410998768 145162576 974616680 598740185 203621748 124074010 655051576 117019743 836700023 654682590 878248011 395767067 466157983 219357821 511196620 998348954 374659324 506197097 376425926 477218519 717492205 744632452 649542080 765697326 41021619 449808326 486656568 748986944 965203742 960387563 707082028 424113136 137607235 513937396 651928247 20341825 933941277 778573062 499300069 494507497 957361282 978232112 604392842 903665949 206007958 474894000 515674501 589250403 841536337 97279591 853696473 481529186 790603122 700899474 508843996 146753709 356988225 302108906 849466441 843198420 63581263 544109100 662444564 596762009 592613765 530906205 701920313 758161038 643147904 762515078 595439998 355790337 928823470 366404288 616036763 307166996 902028831 445840135 30418990 814242815 607733972 964833020 890618846 717241627 715865753 507260299 430748782 789281613 113461430 685983381 514365364 29569258 16803919 182701569 195297314 24646260 461021524 113545544 912620532 926769835 843996841 242321554 80385567 622030326 656580341 952446563 317475450 499362111 571008808 35089916 846083052 222059918 736148402 463888935 469961147 248664978 567016385 422752565 925377141 850009660 208092990 348203906 389781413 128923941 109077281 274695128 619371246 986706809 848147608 343181452 583164818 492800201 885839152 465589546 490849288 268043943 313011701 860037499 403786211 41423117 409965608 791258033 276432648 976413978 652252147 454847018 876387435 222597659 376085564 585727114 803809321 266128695 288344762 445544628 507114152 687372150 532942722 730957923 243053198 883624770 520946635 779703759 173221987 402322826 784505917 811414484 649410062 925978699 408274978 69553640 241632289 402277997 923225074 142056962 202139005 800877531 379812177 298121510 797378614 6249088 231894192 147113063 774349219 132087096 429731063 844843729 734043488 863581806 991036618 106172881 652954816 43810814 845125793 205084998 932811493 740654550 673501437 495402577 873445921 880766970 373946571 544840589 388088983 690905919 446856806 189222899 569972842 66078869 55217111 433650887 222741762 364855757 669534908 603881644 375987718 887016099 327275794 511078511 791552532 848333430 390958241 591471033 396355357 87335400 232433096 549052717 798654762 787482827 199951307 50404439 785805538 54633769 670668797 34056896 257367133 12175830 632073370 36218706 249695879 781833251 810859866 422296022 93623911 817997273 435336100 215190898 724001338 850929739 651080796 226255010 101652330 537830671 85077193 97169018 225074822 538165381 122711871 389805424 831253686 359475958 105499426 768566915 926389353 686236905 116988102 488526363 815406727 252181847 722313467 733153922 865035886 138026399 149351159 553238446 606936300 409574399 820284233 29936136 350197001 323160326 24653207 315573545 170847870 579995954 829180667 386284175 479101405 930724384 949459760 305936041 333666561 556400297 732184661 217797227 885453238 661258565 727334855 211035681 7587737 338784897 304371556 918175141 395975220 567668258 128696765 36002349 321715377 765439234 204213124 281245853 649464233 398960482 244335048 767237509 291758722 428676560 309480068 721039889 786846783 489545266 562867038 452289665 719184576 75815691 211935600 127071647 556125442 247656873 934423294 80756190 197902370 637104819 265640720 613820654 123476629 652416669 215401783 125556008 716848024 89119498 977594697 364218304 790570722 404338761 11788907 766648171 437900331 379594468 414188498 618843572 40850709 27690630 202558293 302719671 74048158 81239020 895940819 123986657 719769448 844587952 310321203 479788862 74901464 143474884 213192408 185010924 607799419 974995966 199573945 618393980 870708673 200420582 269117553 318075159 373302361 59818418 429727154 464041197 9245524 22569953 819372760 447450619 740689925 777846450 179039185 911691087 737448351 900977258 490997310 886423545 40479753 442813035 531904437 7028157 2891582 496855702 474458768 956467511 931368116 625002518 105166575 705826750 980339316 171239250 51816823 295341599 598316038 150603924 416067181 258226203 65175013 486402328 938317846 470822044 371790448 881521365 511611862 660823291 286259652 243985891 903096549 336052063 404313630 172393254 216533028 660184661 535171498 928020476 218458028 6381046 641938243 455990883 502159723 860574047 880282522 345064127 787815387 164253733 44041734 978053235 40495467 171705184 627357110 124003591 451137411 176924943 274844697 374511913 52663747 313452863 850819962 295423659 961526844 694612799 984727267 124318612 797257235 359333286 699991707 815141214 903881619 905516095 724296629 786915478 541009794 454194295 97599495 334582170 53091474 395501408 572180219 652721528 149912251 120214410 891816079 739432002 626793171 721705088 179714152 448232100 30243970 86314486 864929147 714957869 834010958 647496127 371362394 179425171 519202948 51762352 260774768 570640642 817111824 704247291 500250808 206758642 601076012 79492283 538849138 463943866 583712685 923953573 931500560 378563427 648042417 290936413 899228249 860874495 25595564 973805921 642527648 61695237 431402152 778986072 422733503 33817263 687965173 728396812 50312386 158245500 574850097 789991501 874433449 837395394 803989627 516641979 944439860 100503750 383109364 572582415 746652783 496113147 685732364 545322251 381111464 929673324 15046557 721783537 52664482 10384673 555986044 11514943 856087194 936652971 391046068 19037758 900407208 908824128 2257679 250944836 847313213 451004374 116400613 780964284 586842829 874507767 392988008 867169129 725695149 797929901 522471539 200675413 818486002 280901215 810157139 636020625 856978969 197060282 639887721 843370802 72445999 44369212 414990822 355599689 85344416 386579095 819173210 447394123 736637671 837238519 556630760 486856678 68002844 199828923 262604896 918301675 313755095 615712567 787695438 969402517 544580169 1917075 770942842 550295478 634325356 199991171 656846155 145932880 529679355 25249233 520337178 765142145 335116284 30823447 168532389 323158325 779802412 932705663 756069303 198117860 237260538 800342915 36036572 755733753 625905542 424398616 700799968 460618229 472032494 109837852 799644935 654998994 530794205 685347994 373923496 152600791 567108031 377383100 538845675 14324753 826509519 112669479 844606865 462056931 778953797 907237467 8994376 50212222 110772215 709198969 35327672 971107829 828828285 601807767 931148105 928661146 177769958 779900694 325434986 714792056 539503393 444606644 305635087 628625300 244448050 251452291 128669462 915931321 19356692 732109052 908040074 852908758 554593660 280524112 930045048 172631057 526051721 168471738 947444932 797082031 664839436 765552786 285516121 855731119 409808578 83027595 255947503 366440942 426686125 983117911 148100451 205032722 29937064 672478547 686393272 792894455 766740848 762250087 118182021 656097589 283878668 463528777 307449626 439015752 308623163 614671969 268841498 469299175 312071227 733785571 548933409 956204377 54883240 847722650 487074157 32445361 347352817 436004719 138413798 890885035 880394566 503933967 930679866 287448773 263914113 16287822 217810873 856203515 450759344 819704976 264973619 339732226 337012990 145351011 463059666 175559346 312092246 483704817 388941828 138827302 468985345 262497942 467643421 632039273 581568733 741319883 350178034 432606686 161216117 534230888 53810984 883376824 853980806 51231275 740572207 846326045 380527739 325862979 726194101 467296395 974377535 607040504 899137653 365974590 959419394 326972313 751019248 431669674 116731333 625017607 544645994 289693559 126319339 314033725 734249245 114898884 262914282 789638975 199360998 993765172 466382044 100861651 274248658 479651083 520913171 568809453 170110234 794573548 633100028 727606552 75095166 452344786 461969990 277662137 557342459 375358831 953595457 219324257 443503022 592593573 113970733 609668940 841596114 378689908 810223375 774980252 658716302 270964638 546158358 643047041 897459484 474818185 596923749 255171421 62196850 458324800 554821895 276418566 708054830 610879931 469884979 955479160 856056693 37159567 103461809 294557511 34760247 646406499 816853132 310714701 371185690 411733524 5292635 157882707 93437070 21821203 955861321 420513514 972555055 422312543 46721193 992027658 484756055 773970735 192666276 889904655 153656608 793684869 401166310 658365882 626223906 424569915 735948574 664706488 269600837 615612243 82508069 36955337 475065545 240867518 234276906 174281882 510560158 828350983 820760749 776064415 896138694 769486123 31876069 288700429 769025127 247471853 614413222 967820007 933722405 649463345 20983318 887302354 695625101 311175631 624323168 426407888 874590867 796353960 726142074 407397495 625901215 765648884 556729630 900571218 940502538 978833181 301783460 848627780 999572008 556993365 188284456 62901424 239388732 406326150 408990666 964113372 59009218 237366934 564070333 614201038 781884262 265206917 48786482 198593541 153596043 637598924 694095001 843300643 283537335 879128782 358276470 99813923 343832661 987097030 70784918 229201017 978987240 142083094 886081255 879117200 949339851 631909351 746085834 438599484 859675740 857298290 924153236 102333860 292466631 213922570 48567217 700708095 731655659 689960375 509732548 462866441 263669317 482474877 514214129 485538802 897524678 985299291 714631787 952574752 858955643 186760581 986732652 311279923 685121826 362689853 901986636 534622074 400689754 867705269 578444154 453733130 403211618 580332990 209687804 408001029 437465638 481230905 858373926 159144081 386053966 675130371 793510702 309735299 575744111 82390424 883326702 38349544 746606752 616524697 720807509 801263764 213164090 293666533 566705107 762762610 264041517 390152192 197148008 675743109 214951579 555978173 857527756 249561403 630283064 244652447 631628862 69992365 571589726 456193809 219798619 466092705 657157055 271406641 108675767 586276962 679436308 356278810 439321411 586726715 87308608 118687578 515632399 289517781 814184834 330205699 188031331 608162895 405753862 9436145 588571884 485903949 734964438 388947536 332673475 82173665 685951522 201920791 567692144 631919493 345823084 141560154 178327170 359989849 941019410 796480245 330686573 688091061 255597389 281354653 839394270 319050495 890710865 770919140 64719784 633553148 592178879 691039390 565564243 143297995 951809851 547176147 405093385 392463998 722418343 729260340 971990115 952889016 242045006 598114488 298437108 267337620 988308999 43917938 563235715 947352047 320807213 610720352 827623394 920777465 694081302 869094641 423366920 353205311 384574615 566459906 808990763 382121152 102661195 175830858 942091733 947768074 623430025 211756386 23840981 960470369 103111661 323967559 898445445 425906541 154730698 74279918 99156975 502289112 924834630 154543357 210494006 785736338 57118380 164449661 838008182 723019916 314594510 500087544 922482256 293569344 833880866 959139425 916245165 380847839 230712180 297537357 784660761 165668037 318897810 670946706 753252174 31541423 739066185 511972084 976694647 155385160 141133126 461986317 826523396 185255355 921806582 276684124 598167068 92303811 397518398 804928131 698171896 749699954 718857992 473916566 596113047 687882744 709281981 22529160 976967727 329953901 317110969 133402574 90978435 977848149 760735748 280487554 742252917 243314851 661829804 491371193 512823692 206640363 481634439 241842681 379611772 915400829 929424820 364205565 981834704 387169504 82812484 204718284 446500427 325594234 453437833 179888295 691644389 876626879 137895731 560687279 683450571 47521987 614105733 945542570 102887683 998213553 732983059 441121281 568323645 6602821 334009948 454340743 984128911 694827972 752795358 924210792 771043944 43566309 365204247 236720325 961991967 823273059 857475924 907050188 395283442 323400769 671139936 416053504 953147241 114992809 74531145 417793025 832306381 621549184 803576505 41453193 194548692 35001811 775222731 618358141 469967230 695753119 263221114 607283334 593599704 85704359 292787623 80080323 406727661 567478170 953609447 498079476 79701287 818932405 22389344 608204966 78259948 965232549 920806512 212340990 468761240 760849139 41784932 884096840 704228666 465918262 478281083 703094294 536962777 348989262 554924811 145344062 930313514 535871244 911934236 587463385 424779597 894935387 841806854 629260536 230920252 148537639 99590510 646965084 643296662 252648594 822835235 476512685 146635183 734990048 318282306 544650904 819261027 920247260 651989463 566500746 329237092 589444333 672935329 471776973 575774223 186078439 477308414 50187792 325832736 246997873 731664360 68655369 982089194 443527201 117170285 650973334 818585672 175680665 381958419 345511080 581433024 953115929 382898048 535848846 502691601 628936476 275786775 774196639 782260695 200997192 488957842 312600639 96038554 862252393 784724232 272435383 349703090 504924624 359518978 476899426 426611025 283282181 988822175 892072878 410519383 188350225 58864352 316056211 90104798 109246787 510448578 912985364 670341203 871224287 949809218 281485237 345485148 7043780 842571561 517693019 755602303 435534708 422954957 784510548 402077840 582045425 696411954 956855365 404187001 700086021 335517173 589536048 286377037 299619440 647033410 844628818 766303533 979127926 116431170 601979595 920112452 217664495 679515978 899756461 460063622 596826074 142060012 474860978 790448548 431582137 90473223 694870358 205605859 770909632 309003576 461140143 621101777 770989085 22254291 758227100 194164082 558767081 558123755 555975032 674056593 445186176 938154255 847309433 60732531 387172240 827312804 997669755 56579632 297302130 354957705 77003019 428688997 159522084 458609752 162804581 317323677 979209547 21097444 121376267 656263672 232296629 347596884 967142450 581105322 657728320 589479153 638731165 671005742 638525784 627669511 912066674 115641506 994647481 84106245 275548291 461859726 217536520 103960804 868374874 301404963 958693470 302664340 894797367 47874586 369207651 51397219 416079778 945878397 298634632 679776279 505220851 51145420 810831037 84115622 450416317 538794464 549210472 589801382 477514122 285013677 951887901 578964691 680606760 570989371 870419137 707374094 48368354 887217984 207591170 35463184 652034139 683320838 44840524 214969743 890089343 882571096 650919471 90997837 223333701 647641640 134200526 677808395 422774717 271182287 828441312 265121668 736220598 483741456 491316277 572659822 419101693 951596975 630890874 211882932 719078009 841213839 308032586 230040823 521961679 42720286 864254930 370521885 982548020 433370910 211868069 677953449 146197414 93522254 380199205 758108204 57954236 632494921 203514591 16066293 276172922 374190735 552781618 290035554 151426610 164690504 738461986 626835528 717424973 111323450 234317731 333977857 678398282 613576009 783692777 221728889 862238242 26275140 22384447 673396739 864286694 640640881 514782550 972331746 875348286 282527605 322516870 360417725 706324394 127928284 698741738 45668163 651782437 400983785 568728631 848372547 183086608 154218403 519937310 534806188 426709191 286003760 247451694 386378957 185415213 287750916 355993888 833634255 231733564 853481285 887157658 518084837 78147426 612494884 142337729 652107694 321850948 422166300 554447408 658389750 31882889 645063966 557127758 933246898 327747335 640572303 834853505 598917726 737154238 355286322 706925093 611135978 885106832 820963377 876532237 925307434 348668925 217523849 453431786 945707203 180598515 499266473 258269095 592072054 41220172 677126785 279968032 311693980 641957065 357808737 789132873 554600150 478691146 398792168 55442603 853151413 625302007 444267412 204966144 878574906 531713096 145929862 536925162 935490032 125099778 190591727 451483696 19443199 50359815 417564696 802160019 840905734 926450795 69104182 537467675 123926609 138368846 758506507 645397843 338006156 489021866 81276959 621229148 381885793 709162934 279464137 33525603 29252521 723255537 673886605 572708902 835477043 139318265 547212337 135971721 277917251 442321536 680280528 343094274 847513657 16232471 520594606 967834668 950688376 615844002 904319647 10513681 844853819 770356801 895222584 72553753 209110726 310970299 606358760 455922401 277733873 729447838 449056637 169002557 854769768 634237173 914613822 909928209 834252063 464317993 681034555 263834992 481457349 310687277 479539983 490340194 784957276 396787988 846043529 318474869 361265326 939342127 197415424 37185972 598784732 443430031 780184287 170027231 103183666 760422571 129575230 856539926 197884742 255190145 58484567 385074703 665530527 160875070 735677209 662347973 622460753 262328446 685564015 264926021 261432614 669158836 813043811 61564722 485857576 380044998 193892760 482755830 33623142 717172463 182729696 727525285 288859871 997621871 877734779 531328336 652410728 262985837 727797736 87655569 167257184 816605275 833381784 368433403 908284523 243020296 396713006 774067952 324544823 609471568 156002353 571003740 164823092 232261196 429062039 575472127 310804370 784135644 149693521 580764282 245960506 176684840 825536894 271172241 381828900 198499572 413533956 949865624 910915486 769902495 318426095 352335738 267243774 307311207 764852170 885987508 616213969 925702178 418862819 468033595 802351090 183565762 814396191 184830419 342659692 451863628 905586181 185323729 768295597 493819433 593089139 552023840 881865193 795041962 873891270 295798154 552912478 590118648 819171439 199806996 143470150 717698108 799919989 903367214 817088341 815536413 657781462 924399193 904383650 735771071 978761857 379654771 207730707 10904826 718177989 575755524 663323945 994124614 175553914 81137479 791184688 723823487 825521123 524828908 841831878 513810343 288900597 83428282 606414421 513828583 428598233 924735163 674291001 566630121 347638277 34435366 482293160 898060995 839033356 350820688 850569759 892296021 331806389 32981677 779401623 51658970 956521137 393082949 973280933 685711423 318599149 809672925 144414976 55208242 91756947 213556202 12529022 265365782 835591495 21210809 253409780 401622923 260683736 247215745 156111147 293870404 711029658 385497114 836390328 622971918 194447741 245529680 335063076 674814948 380527229 560352838 720916629 216568826 736653086 981186982 945267842 684818916 957070278 133274536 271875706 563627095 368254379 82491011 36768834 116427781 679096237 845606211 107814283 653289472 651156667 551732619 354141072 846935157 194005312 365635375 689077043 797678517 839453961 415686385 367162554 686470712 665519932 597131553 476127281 52155298 531741764 274434128 898482068 198560127 615031780 916515213 853523383 122646203 996785780 258796287 581765569 569436670 476205964 310608822 615171437 295417791 135185285 983101044 480459970 221362884 656542606 899372718 869164594 930996281 264026528 134341024 403943579 833206713 523676723 330681262 204292317 339997149 400217300 820747089 847772446 146779934 105282203 723350081 957549679 958233199 597440350 252860663 423081866 314054929 499941979 599797709 666611694 795165068 80685941 990463183 968459793 482284193 275541455 499713675 241244845 925019153 292661234 460939655 682028344 207738199 277013950 138543340 69499832 616508911 372020542 131298940 121783750 640959292 538977057 266383010 81511176 236221944 67693925 889963993 928653703 239039017 278787777 506923486 995379294 394663091 795424296 533322769 308224139 533425049 367964664 121158670 267771111 263553532 941512842 277388949 170045465 912634500 600008389 832498874 98176482 773668685 523819711 305313634 346340171 55882521 741858609 251627600 768355148 352371650 865628770 973204183 292457989 336303504 880621575 96367685 575387979 465323689 569103873 357600823 886948877 885460632 816428798 403585716 364255419 464816414 113857935 83865957 105393198 970577297 263360477 927744695 668604472 304541088 476053144 395955423 723593011 683643045 772774684 316553422 918634267 688726309 833618582 955141380 203630159 527109489 686752970 836741849 763528078 501432075 498520163 377504692 288767334 294462084 501214354 466052673 438807641 655788526 967076904 413847762 970970577 962773384 995736365 177376797 88451970 327557 802444317 890205195 406641963 548862206 283151279 527156645 538008623 547512564 765881033 809485330 247456523 841760419 689242926 376596306 919167454 28380241 252243337 37230419 589239720 974263474 928240672 284340963 523172351 709361863 801578286 706897817 538915180 910772294 264108000 299150562 93043357 35872691 906377403 811722823 725587217 73730149 57115888 183691156 334613568 561394680 961543158 400530590 450516378 709211676 270554007 48801820 112812132 380623927 177443256 587460542 879906203 150446120 814094026 398801281 543101488 858751393 208340205 632517552 732574388 715832198 742086998 361904168 368509666 547198119 351828910 706916211 620233860 450855660 360607941 98523020 741720893 573084427 604693568 668002552 731972869 731145325 712763146 429443317 615643100 794355631 602453743 394692080 860247753 105384913 255474138 1254674 620799635 441524350 813480433 808571453 526932900 858259593 238065101 664118988 970327993 216038294 737718693 686043109 77668713 560841021 187237133 167573022 180192720 892927765 237419673 396844156 423581607 521869929 605315020 49359618 2877919 232442992 921316462 687447674 940262741 143115057 750243920 174812118 300332583 17816047 890944748 99069949 155034800 387461894 959655836 677931286 983127704 945023924 72127652 888170931 762805456 658846514 13887818 577830250 247167075 442775770 697633009 260728642 180798713 221059630 736605750 248952534 248482908 759030628 773540247 647342478 958454722 967209311 686795907 208115346 930938899 899694995 141835063 302118494 621846378 928342265 103650292 469979909 830941404 14169101 667095749 727138486 310107444 314396782 603862269 913968828 559500589 530308617 474372572 369562388 799450385 147384886 299397934 168008315 859747646 597729042 976152375 902438610 124289693 59654979 305492602 50055658 397807000 495943259 851721970 447556855 144684642 48724571 629788668 717361876 337526103 714195671 422453727 4591711 442431372 369247550 492158587 51817070 918347474 969884072 320483048 28365633 712109492 861508979 725060916 859791426 795662036 943285231 129894913 428732391 91266716 660406052 942855380 500178895 46753082 225830968 719923916 103874598 420640338 585514857 963994039 738186018 724551803 433812342 911551713 959000458 572819776 6580863 761204351 922298265 794085731 828002171 26450453 251582352 13221120 329353735 365540283 584526199 857568507 620283185 740266792 47992822 622096529 302517012 174584513 809164260 222370567 780998531 111344698 540879880 352390542 304586648 115016223 912360772 229741438 578045204 928589085 524101593 779986981 324629626 985741271 676891509 370700530 975360236 945832079 79857549 166022182 918382067 620066540 593406881 553345944 411338493 444851263 388662919 121470483 944096741 624893688 794557606 121205377 199126426 747997654 129984583 151760001 364160887 23223501 238593970 423676999 964930463 68958463 319637171 887125491 419056171 679696410 349193508 762656555 976718172 758367052 871312250 262099216 121530472 762261394 33907887 712658899 724110909 450452636 649198513 529303744 525371446 124288322 626693365 319265925 48329295 982719609 607538538 787777200 724339779 480063312 264444993 415290335 190683386 706517276 357272050 186877288 875296782 500059359 933177309 698548854 906016015 567482179 756733276 336389837 564124874 120613525 824595104 807018410 132428139 305960033 112611236 220042666 281112196 544791672 622597629 790167402 298249761 396420596 156284389 948767208 746384533 203317480 803815379 359771522 333566632 807005402 388129989 895706668 735117262 422818919 176085433 583470175 658452747 187630280 193090885 792727146 24927692 22039852 588218297 357893794 857217435 150332500 152538371 635371644 859405556 625582568 527249794 722977903 177774751 566990777 47625375 74135860 548253661 716249240 416030730 442633344 363150178 49347821 995413455 244960219 531518200 209204008 592653394 65766457 22906728 461327836 426531317 674295032 859386992 526750894 614966449 777055230 485352395 206783976 693958210 219494660 730976085 631065607 219508825 595078063 798550942 291673100 761669718 198086129 438850294 973612617 153494042 611071809 458396934 779970303 507018014 412665301 48945418 463702739 39349654 474838078 76841528 476059760 737020194 385141848 511756718 869733692 281095935 933174819 878450804 701436717 11335170 958320665 857530160 36334045 274268759 628479989 806184634 750010924 213946519 969324970 533966456 877293906 745320570 775406943 167693460 121796100 438019140 913205147 43031669 157027606 532528899 884288315 821427912 291055441 101117549 367698682 591968400 957734033 481749146 235775441 81392939 72379075 228359280 411869086 186834449 156245953 422863994 904049082 981846864 317370927 598791018 868292417 239659155 736559956 981002726 450748019 549979308 582763936 194842978 355705151 643358373 570318952 934316292 922900446 968442331 779480895 512543788 26171209 166927415 10483876 542058003 205321122 985387621 130036600 287561223 671802773 645830953 48190853 881110021 985028775 628275250 46322873 385785647 12413149 963083206 807586506 854489877 288767450 163360305 361522432 941461428 603392987 70296272 244608812 917192598 402286457 283298991 356808408 415613313 959725481 264895878 461225704 315308744 721796478 484458094 836798426 742597167 324841649 672866171 778597359 40925733 231238555 600918437 362697137 465033255 73769009 78299299 882332372 983374855 585695899 38904087 788190835 114441218 433264654 638263810 604570631 354864974 584616507 819265757 627755453 433511201 961767390 647590140 825469299 66872259 66003765 413428549 595081605 169275681 537751539 7613442 188022658 385371632 580140411 458788357 374582338 710419013 880803237 172869857 299330337 526839198 138670742 226010579 690859114 374080161 201084397 211263570 306158385 709976978 260385223 257980147 226226026 907458532 733387709 683671808 538178621 945400032 957818443 591702680 731640436 154306356 336214121 691752560 413579150 956468640 201687994 387722367 991911033 865394313 228557730 267860089 24507744 862680081 28435515 493847263 333608713 496022678 102506063 256642026 817556836 703547903 93251007 420808636 535731554 739860308 135117308 374640831 644544752 277969864 164399331 772319551 579506659 472088615 635666743 31121236 789943398 756413275 410040563 303066491 799989804 693243152 38352031 319405925 573699631 859108526 419655084 22858456 341985038 630696767 399808741 330028795 222535475 170245996 594342669 236150612 838657930 556229354 245246803 365192580 505916606 8423184 160360748 347527723 604210682 951174121 638470445 506305538 459038331 722144832 923356897 400539410 39409114 23796312 749217276 994095278 475961441 268003859 151609183 672486675 524320449 842210164 388642957 131235673 734879132 592290994 869016242 42380202 441357972 867671858 566382481 978771695 52755911 414433828 335383111 888610789 780671118 278974076 166954814 717227592 418474791 924392195 933945064 27464059 505730700 858267431 10469615 496156168 379161803 286713747 496450283 894975980 911238791 193206776 576869286 854502578 575902144 495510118 802235902 92815383 642470706 365468812 267662991 550399340 443367757 454234026 583893320 432226359 250108049 332992745 483787481 950428905 972279836 696372379 357459008 272610305 1619023 929509920 738002637 465160839 550885931 587927527 604994757 688994652 183652902 896326240 586275825 865825224 118407825 374218585 726424885 460871189 214734885 174175190 679362797 863665836 802294100 293687426 880577771 3508262 645571231 659077477 381247328 890388522 404459894 602489583 542954180 299980208 567343431 493180036 784328589 881429021 781763946 151124108 944466808 59948389 182752832 799642509 793548499 250521288 257691848 675904952 711649685 979069884 423866403 876549126 242815618 982090030 545636216 852709413 6164344 468686935 544964332 844909203 89268612 941167041 315558108 631115217 552479048 928988794 965500022 189458806 705980111 448472035 11429202 721094351 180449205 499220939 867861266 516551397 152307993 120398714 397520630 955306705 481683902 950557749 606364010 411856382 92985780 661118997 109884246 494646662 510471010 667693619 344530131 556261827 286934585 869281893 477706017 380672779 668143429 537421690 711654202 200746736 810143094 832966532 774562823 58367725 889187543 236362006 284316156 123123418 621433079 669450621 916232997 480865949 602147675 911154594 759560744 970160303 145907103 968707011 733919302 137454468 825296421 124295484 613317455 698237788 803865703 566099969 32030048 441526060 603640032 565880974 75802871 954222849 545422472 262167371 66540753 950373118 453133442 576933852 506500613 698095161 183637051 113953719 137469998 614136390 299084728 661972330 312168853 697417790 777007742 427731255 69707856 7615886 382817147 887419964 715195350 964503103 874964454 875836634 624338754 516792207 900714505 193218472 67542232 303084939 539036582 734659598 996837576 82409213 626791763 982345964 156780807 36802071 902677907 871794474 320098498 377594244 731411547 422056518 521372621 73375250 992317942 640976793 147963405 500855523 116036201 733455564 407024877 268212133 56790429 510932792 900751693 438467317 73387935 277003387 875735680 90191539 179668998 541513886 680146521 591062108 742114231 881660678 758052960 59273306 519183829 887084254 145708039 264577857 95462678 98478247 477977544 232292542 592951694 472748725 941116467 150346362 234900390 605786869 908544594 533465538 589529377 78511089 84071915 537204049 881384343 272298450 213465829 318998921 167131134 451318210 352219087 297840901 258053414 864816822 796697146 805389565 111496126 762634606 174400184 740412852 360074115 10496557 486880192 595441857 307409855 631219981 935663889 428300622 138859032 556140544 761882791 621543920 111504320 69828597 351737172 678351876 591872289 548867860 315787941 758040228 803548830 705027106 727060647 953218509 195569266 930128737 22334367 859499820 154287971 983283386 497716527 653192571 397821663 802814316 116218121 314508894 67795997 182907574 57409949 613520934 389198781 40723773 511352269 552576028 942330918 249690864 564228364 31821141 125225423 727417968 57858689 641844910 623924251 96136233 34531716 338630839 242580831 670670392 210601919 801100202 456357419 468593438 945062197 417397532 345448063 724924354 863969907 139417477 959437 963902754 122323709 351598450 652169757 743619831 127422916 484439809 220477541 973763653 770765996 224226180 462561557 453859231 150738670 219611898 620398629 713743460 276839604 747176901 90417224 33058783 40791116 953320806 573725736 636498895 187357271 729565716 427196935 386445037 924638280 564857426 190265897 31111283 843957688 266048170 684866417 385987876 70567061 363954072 552772514 668884077 943228616 241859007 476790476 472698640 65208418 719030143 929821046 360802074 42490640 114121858 63824053 726260324 374092463 874078509 289274707 440515072 43024282 746190477 318737931 147803099 412138450 983578592 442844367 368956793 919592753 903561384 991064243 207154208 871879670 293667544 851181877 3904101 859569456 654671116 81462740 604040865 660448619 132705796 216547787 292815553 411424400 950820609 939742868 450660941 659181192 633724837 774571565 136801724 780206047 548312898 428921642 339664084 898592760 594251716 212417092 633306954 91189103 790807782 569816805 884556708 37074992 282337781 747580494 68631773 21041732 941962531 489278067 343883793 486455851 14711057 198106971 935433604 626509910 539969493 541587153 114458754 219977879 560047936 56276553 54896154 301104616 236729820 351651960 938655704 548929577 486323903 178696286 482272917 732442516 695571507 812806348 312865109 455188286 132235894 603391439 897610660 281399851 445223674 697095266 172945360 530190007 885140532 31958590 313178218 152685352 353967586 248022024 438223451 461753706 188455253 186313239 335974977 973331526 886420288 346699415 525948845 289680426 435637767 713501677 824148058 553078637 72824829 991292416 217812548 430634264 677891103 349656283 804141789 838580731 307627694 827298382 900136210 292593600 688074436 146664308 374225645 743731632 715594662 770180207 753581303 765633311 524891436 997582736 824131044 810668283 926425633 427489486 353693663 349511154 560825053 774099804 755774973 502953122 141961745 345471139 920116727 613997321 621684969 399816298 88471122 564628411 717461879 225952031 390243315 992653035 814019671 602167681 941482077 551436290 253110258 416322356 458328536 735625583 967413134 960476858 135339825 652067340 170647737 420496122 576929646 474451200 91854954 797100601 591702715 385877601 725162466 63149342 469926571 460077454 73996937 264710191 616236336 9932993 727917641 223079433 890365243 921843598 511932533 178280352 302257592 95339903 725480307 30755739 793222157 658653517 766371244 325829254 261145701 327311460 900278716 533155474 170750106 787688071 846450803 838664434 454179337 117292802 159442054 725413650 845021878 873503978 532048215 591692072 644271662 273074638 30965260 447369872 789902327 367084031 324000370 206487377 548626235 208391979 169470509 820865317 39188420 464338183 447921660 635873779 498408202 813783872 703106412 353793088 521710692 615155052 83188714 509437388 312164562 200777056 817454317 417516091 833954846 485206730 530324784 170618592 424047356 301261514 245204066 887624453 567136171 685041482 436574328 923009230 442820675 64145104 991565576 535668185 65194182 420726670 738756598 525673328 27368544 837008374 802791402 431480126 508445986 187540238 309232652 525736835 377638322 592878865 898011418 29866689 84430854 141619678 323748264 978323439 703652852 371086031 702949651 532361354 352473209 93480041 347861890 835039607 216356266 173507972 261710772 15131962 710510218 619879955 807100428 733814367 870112084 700155557 558932190 466795806 536364761 604061703 687564592 460317040 758051572 883631396 308027526 856837723 900851759 532309333 591463127 776193906 195530402 488741966 745678538 196747416 624981830 148942400 75213319 567034086 906662823 298266462 51478840 73232111 338193335 56771558 629073396 187175544 221201456 979812062 723666818 183677277 222832138 14483944 788915549 489764075 967422887 507254226 394056293 835537169 574332081 482904508 224322053 865314779 86773623 765069563 241452480 717784987 241305026 168831610 992453780 535083298 739595576 532060671 780780447 358253791 657993348 807830476 945684837 488610784 747990830 170398034 558180157 787350760 484388510 862096852 612107195 164400134 904089792 874705150 125504917 237091194 374521420 326970548 41554096 798464511 864961301 998889446 577258754 983459656 591811441 65134845 734563004 838909179 265248003 494274270 966214996 15142051 372586130 702300161 893742531 160481598 620392989 415409492 695532788 101471742 669273497 343151914 271928265 142244939 520066736 738945747 648537778 67528300 627272453 249153820 629602476 649864834 948572787 357740612 543817887 511051109 669056540 506390552 761044782 950605193 87504288 196241972 651345405 992143845 77637808 240990558 53737137 586657898 797813613 591849429 680224218 818712573 203144613 371426903 423289996 698907933 646372937 439626263 865923164 765985808 467327147 833451310 105468503 616437859 771397710 491124955 486674871 501056586 115104270 712047880 27484487 214750337 75324565 947827401 107245802 182631835 605232236 958692712 627916496 347638285 995098525 701564686 965484339 257176687 461885782 441665875 316108102 773805751 915101924 227835863 312414489 198925162 854323321 34315862 725920554 316301080 540267497 169285359 739139434 879206910 291731174 328957058 421739444 693961129 810110475 190566508 637341016 898855550 931685603 87653320 771913481 978481746 175460279 497452829 280349518 127701927 239375293 789492277 651113372 769442406 471976592 755851965 111176475 144772364 119263868 593592382 256873902 167205056 756550881 90155432 273828932 365800297 939132264 842790633 781572588 469345506 750523928 517938035 291072237 922562845 195199484 173307785 411758828 98780769 177336548 352234711 276534484 616751865 870191178 508737446 627872195 898621554 155300362 698017235 169916999 249805785 551913239 972829400 68873487 68462138 281047119 384013898 478963272 349974381 977638715 338434129 899101503 924235867 674181803 832684174 31122558 705410459 32171752 930536824 28385432 865647355 167729255 976859908 568031840 212928801 219147647 903205695 560015264 634178999 817545452 734569100 593804153 45383815 129023941 647772431 178966325 110035080 261600797 619862223 80127273 712119554 58346343 258849961 476677546 585731599 872452676 789883002 564436635 951589125 705735616 491731024 59732925 864252264 462748076 198524585 129919911 419573910 271602488 453782749 551450139 518987499 19346803 297176498 947339932 495653150 889272097 736550656 362946355 436861373 560565175 501780161 445258312 910256472 132397708 327373242 308888882 58807571 513176999 484640565 15584424 792466710 457025549 556125941 513770712 83208876 220530923 760209156 764407137 604370550 206672441 55931886 926190921 734546644 445455654 518779742 180706110 292467244 259207923 312705600 513908955 116732384 888286704 749665218 782126710 919251836 263175154 184010919 653391084 11148817 329850921 73614972 68974721 23499927 106508795 37181947 276558042 415232662 228724695 496880107 846701197 756874647 662165077 366956342 35634896 810913898 811274719 366225048 2202353 411888287 624788038 706697470 93076339 346827880 156447525 83983006 346844475 215018893 625781341 193136464 31791520 15194730 940472111 171755069 104709667 99587236 726496988 742787935 123466506 535517303 875053723 122101582 54253867 669620874 349273762 417141498 673821023 93467016 155677375 52274445 67806121 709495958 391576893 883439398 139799551 455283621 838098976 493527411 639068284 810948402 962745987 634722825 93816422 686536875 2046593 119860819 905336392 199770999 857558141 641659563 984169452 512256101 133798341 902687727 266445409 554324230 750473234 668763619 272366497 401892071 897275502 788370323 723325668 45387021 124816423 552802891 935362081 464164834 622755723 960608567 99948921 669768874 103244556 465694913 204894060 500060344 692729177 875520891 505740714 787273125 987048552 246190036 663184606 626418385 287962229 580381410 314470758 180765887 118764451 56345706 332765397 249113044 739812361 732745727 336309545 639883595 930752229 52891472 474645652 163010656 834823959 815686054 824241676 339091278 564612586 132422742 406605342 180099050 409744346 891109973 254674262 477815568 340816009 911027403 474070232 661615336 924213177 545596032 985643962 230482748 531337667 133025254 58687494 374655555 181306223 980931458 275386549 537146722 580394712 666894190 634393936 974698350 657702596 880841480 956597101 735165921 997841455 745141433 540093207 700613420 117308697 17972089 389086115 765730586 896830158 420054492 613759121 495716986 705413605 904031445 506605106 105091514 523268297 103692840 982297291 183553105 858489157 812664153 883108723 635300442 352206066 365425490 646249987 399463565 281957172 477687849 516291597 770501309 114909570 217322567 229777887 449084746 113088893 235680228 301342881 943363154 622696533 618282718 886556469 134862139 350298964 116202110 535883858 751931913 401077451 864596267 442639992 975932691 982100331 269693547 682768156 652732014 560777275 907415408 94939826 285536835 63752598 189240881 963357414 941208780 214496866 51326733 603796359 19882510 703223349 647105388 187289913 136483635 33161291 451110867 358395858 875374573 189519380 256047681 772072304 364833284 39592506 171737645 996913509 236346300 643292218 561556026 62847687 351375610 980827460 680713537 53186258 868361051 962637491 968867836 991685594 188845481 843858487 33085964 937616738 757396820 643228520 749974786 174432375 79895837 721384573 572128538 720194896 538927591 654948942 521223346 323508082 35339285 207754825 295485655 231341735 408223446 348114664 930433113 843195774 507956074 113798474 231293676 725389854 968627219 165451521 120935196 237288015 147376750 541693034 942327058 92400043 879051534 609602381 465434548 506220557 840947883 561458439 573857224 779570291 264685175 449114491 636304308 356911380 776095851 372396144 200083361 870942419 721962407 328845835 432205107 708632372 255884766 675578442 561622007 840112660 608024962 463320682 272964622 572814059 160123764 675839545 412406332 93512674 720368018 213498678 586174497 262633762 106236984 931435253 221602509 40976954 169408135 439052831 665285797 197443673 218270655 62599866 606025593 998979164 685290047 341280669 855147048 185833390 552316651 867834396 34448536 398647489 697905936 137147365 68279374 368702029 470639048 343173880 882499330 706426104 166920645 221036590 140110318 919408456 692933822 35575748 279447103 872089308 367842864 183524323 638444885 956540002 766663775 121274363 139064553 848253977 908304445 989422411 702251856 323928320 477280625 657808103 953393722 698303975 659400650 581110413 997897565 247991376 4839689 295602407 368792602 319681127 862455512 201093209 341147177 774265552 299593141 654944337 427183063 410468934 307638513 951106400 721732594 613412154 940893984 222448312 434527526 397065412 434766246 959602915 984803547 856109460 436737885 801218119 598150549 185836992 239700094 42238989 69965672 291734224 12693980 73519827 734769700 209963825 495920408 28805117 274920083 400849847 470268407 960194978 400884824 774820546 623960961 958129465 136014699 892805918 334969640 887814811 633162769 761638794 61368666 294175417 819864467 601717619 859399385 768168762 157903715 875501570 21289241 904321889 146500888 18022334 385119882 269761088 812533299 345177933 370473887 853372114 97803284 995006406 221450435 236738630 19847164 591377564 837905954 348562214 75252957 360936681 751510653 503385479 302815834 815499575 148201267 572906344 673054146 351740484 349823856 683570693 464110548 962793584 631300336 538721371 182362772 78787450 232440561 5854984 54175013 965407586 446078754 218079405 736690089 465223552 416742789 165643882 157201663 199243656 973790170 374377912 983833710 896592808 729875233 554657745 536455933 913733603 449718303 822275331 990608983 547964729 614803762 586448242 126115460 334253515 129224596 989109492 469514451 744176869 71829222 486313346 256480106 66230146 814445950 405903744 246270546 958652339 932847549 1328807 137254070 656049109 53142514 342071119 198078789 218949584 473452098 961600426 660583110 798373086 379701977 921914874 735138118 812938468 745925894 759735941 350700535 903987344 827377191 505243274 666628058 753896187 523701414 223711931 844275698 290096585 447986774 620015884 241889514 811811181 56408685 179845090 40164941 436397036 484984231 63693819 498086487 953656108 602660070 127009818 367209619 474699500 981179305 769697091 610110668 605890105 472484645 683363620 558485422 171825527 759952892 665323740 742827138 729256008 312650729 333521832 318421859 263794972 812774398 276796147 319002095 782528306 442072991 997667065 895060869 575257442 157044646 423148097 248248671 220949551 315825476 743119619 922570445 587631419 947102798 37524402 122042887 390721379 559961781 906444979 873059055 85959385 445608826 408133505 264674825 165846330 867997920 441860425 638914490 61854027 561149342 334966687 393175104 949559795 405075576 210423024 616409921 277504219 491919105 988583077 972627529 65177977 785890949 850794318 957630051 220262789 610401863 692126041 443565800 957701626 372770414 88120893 370991724 911751359 279964721 987579796 629018978 145796019 772626912 65564869 96413069 618806393 312546171 103213118 546331991 440500038 687043019 70686705 428909166 25199048 526417717 428245762 237822804 931870047 463401547 22362624 127303744 877549543 357211342 562098413 698641319 560618072 171679507 162778299 672892647 27144608 435894017 147487790 27469960 268356620 516145978 102148697 458795580 329298915 252635787 284759115 10649149 989700126 573834578 500037632 182705398 50115682 684493447 468253636 141947060 384760654 618375300 3858941 701851710 507269884 952532270 887065603 285231490 944628141 34812183 797034748 199193517 151287502 50330189 333711362 380174917 453887203 169931493 860016631 763603010 703284117 852511408 76268649 634339533 540807267 462773268 334312274 459379231 771122349 305804022 678141167 946100427 84792515 848679462 86333985 331849016 400052932 679491007 402657262 678142735 696649647 316978353 367744040 260708251 852825030 445978368 81797441 312337893 593503128 600931200 681668191 888307287 899527523 271328587 918079530 425480149 196128061 191701763 446984297 539080494 429391015 958507328 350460742 190762008 973004750 640834323 250833079 179686612 679792006 247415124 187141181 86645845 989422618 698054214 744596821 908932988 843373495 86898294 551369960 146390214 328913429 143703253 112862292 813292806 228939843 998994665 23035653 702502219 987584441 361390356 464862814 382412078 508785724 987486829 263307402 593578429 806136387 972769574 591982047 206256211 785953718 831338023 889988748 609814835 227676424 945809488 127111947 789065743 410386828 291067822 764644898 575301677 480875430 892865153 223412685 830076170 307677620 872202317 359246573 536389986 60613332 586766772 622088025 842309249 971044998 10654053 959390801 21527842 800495616 222620718 214221337 555193946 613968611 746691611 741955795 649366396 329876527 350755503 4689725 134102558 748975886 671249948 105291981 510361072 284274322 964128108 896090244 977880537 456146054 474315913 232586978 793042292 547439220 534071886 358751884 452700303 712006817 305271044 549708737 936016738 752033687 186949012 171704148 126937713 254678668 442593391 157880647 884325220 620905186 966273388 59839137 766724971 429819480 821847121 24081280 909014588 274619142 615701024 74467286 291141227 840698169 716473891 109634616 344861440 888671651 715665900 473659261 50713873 90788193 7827600 798004861 626006104 413850400 190243760 189909903 982804539 332873748 234042540 922598246 108369436 336581951 57431527 953453851 433602153 382503398 728816448 186378168 673835058 98021984 499671212 197802171 20945150 718776547 391896484 259579565 370266021 869660306 4410681 504539393 637180690 88108899 814060954 487564669 383717631 719159551 343644827 383596795 227180454 724496478 115724575 969773687 524631380 629917297 65300238 201861882 904755332 209751652 149045967 610258173 186993260 418829891 584409268 411769879 320232601 693441858 417168719 686518743 711190747 970435401 856754036 183703149 380867440 815923633 463660089 351500648 841340644 726459453 799686282 659100258 138254655 593880272 734693516 600211596 834574790 955642937 463648516 947803475 466899380 483881860 891261501 396494547 726047002 8575611 57668935 4951396 261025774 753250762 937671410 562231994 505576194 557642143 276966416 332237077 998893320 719325210 865149353 300780244 519853605 657631832 112129438 790142393 369860623 252020417 102194408 19218709 808621018 975488462 251481864 672457861 429324415 317366400 192802148 785266790 979113867 743864400 842739519 906069231 37871881 85257870 341419143 759890351 598374649 75493435 632526475 671869386 984030568 84484042 408011969 570606702 28371332 461966942 680221066 302547304 663514239 14667098 184443174 79063578 954480838 749637271 41489162 675594176 364144522 424984441 487151328 360672202 280015135 979659288 199320363 564988437 629316753 960575186 958114852 227764418 778706925 998024730 507173050 242968555 461747664 156210477 271210502 199592140 306623597 963112455 961037907 880217596 665191978 934298105 483855821 33652848 425927570 507215697 540630427 313581029 344320029 523128883 968248033 635052104 210454682 494654316 404853976 750234254 857676936 449309867 904577840 422340366 149289346 655715253 378714870 490466381 978234122 274701039 361848855 158196202 516479217 541502504 978417318 74917824 72089194 437946017 498267065 305569022 624512530 532437421 86158722 21501124 829480626 725399785 531958320 58200849 455288591 751569714 935853309 637921291 137498238 395030563 296099807 158596043 606992845 898316882 95871714 526752611 748715206 721141366 248661301 959562220 900925620 902055437 932663680 976955951 217783535 347569464 929747823 816872697 693236813 907343188 68782865 352374023 381294442 801013221 904723313 996186517 815003836 628099323 488918391 913624001 138515493 57519834 834080148 276804728 457498471 125055028 457719435 569096458 22645421 908106221 256266725 193515063 73958505 303572410 693295741 761063982 424550973 409566432 193538067 102535456 686924519 386186963 140917949 430266474 52978249 119155491 144058693 936899583 122742148 359145269 992214884 327185507 216515244 141111347 920500680 518957689 926756893 13155829 26552759 70957318 736281383 658325191 805230708 20650810 348917671 429656236 776410839 645654659 181038920 77750078 775590691 938296027 17947379 348019129 579717641 372118237 375582222 83423801 525906778 352116997 330343822 8233201 144377780 362849778 62607814 234400921 378440919 654418569 232476241 313223386 695645912 119913885 972848647 418820898 727475327 413920091 689582354 704706009 839033224 932801580 309510601 173675163 617715242 358052417 365346775 895747222 863387397 873234703 992853537 669133589 588068137 199869449 948838779 321757332 854982798 65048164 721242835 460774599 237755621 787763043 44787162 493059525 307252727 138425826 160139985 399239287 673376255 945013004 936061745 73003894 41502835 62737727 376527533 454076340 965167830 293680849 530676519 815577064 545792470 969726546 606061008 697771335 650262269 513021743 15121380 574735572 679045480 934540866 212849225 321654209 228490777 213431990 407400796 414338038 183247585 659292631 294760090 395407454 438291192 571241650 999667164 888759638 8534081 637381623 278289694 795564170 14331677 458750467 690287951 829377027 180950176 34771789 479105025 772772080 986405310 488340567 588053198 861751529 867574875 803191697 251527233 50813675 639522848 36159396 780547461 785325991 45033248 674692636 725754650 741078526 443777465 20788787 351182426 915440491 490898459 372089779 681878596 203575847 155023136 736175204 267483158 22931754 701744361 739044371 416992538 384161308 238482810 209241921 313294218 749623518 446226446 948014896 985506574 926754809 565539010 129283573 300815079 214324561 477837856 976913514 203787294 264490534 155479205 292624852 299047122 586766683 919123963 553736620 772823760 671690658 962895101 517956291 710795201 501326046 175097449 682440979 662887018 645855656 19466413 680955148 976212231 461343899 902966807 625896117 932610924 283241681 393735498 97007713 654055767 895978882 639366819 496071063 519764598 494808065 37767739 904602906 432693302 252529955 272805198 513347409 502313848 702018611 113637738 455233538 127163024 303517069 608471903 481681278 570988789 571727878 677632495 979896009 427928264 912991492 105803685 944079224 539591636 833433386 441805044 407565834 870056449 570294923 562433912 343775961 942528572 785377388 577125833 232369226 102739666 203415950 631283295 719509334 433145687 897305347 319582865 321463543 410603956 688625135 506738869 981902884 832926788 206262159 581425507 83962392 796636784 965665070 232942441 672824032 137193138 751063574 588391381 725520652 41714209 492874470 989133037 493735305 351105782 182054989 829460959 775850005 882011400 503458923 119989921 824289140 935267974 995440151 868793780 96716134 380834087 382810806 94480120 20916841 1589871 336460316 119480438 640837273 118575635 421466325 689668508 162065406 986096716 213300057 518768647 507786149 305026688 568636607 974101270 569882904 283710118 809390151 493711592 809220331 332641732 960208796 54311346 132298362 125428367 660991596 519078172 15957036 217981 451751614 602772281 370904806 379117364 828573353 889656234 909469848 524660815 728033365 524559658 533358515 631897987 755725132 283237148 639399054 967704040 988607245 881929660 994005522 107526091 625625204 448515534 15198000 842123523 496484671 98471269 359718552 28252217 209210860 518677434 791358488 848911088 872845010 312743994 437902747 119397857 939865648 814988102 629041754 349872527 112564902 78878182 503844881 57256372 274647245 309586966 30374354 141228763 399201515 776987972 840667156 161373954 394384101 531186243 411248795 124524000 473566999 547873121 525122734 618938589 667953080 131586766 834705438 245467049 965836005 813180189 159594533 681438224 867397005 36721790 683883063 503712020 684026931 524952173 311394136 955208012 609124702 524346505 377671789 84688580 115063307 618682547 21665098 208776923 292023912 370074703 920038808 774183993 292158187 204706002 617164166 433038801 590863901 742411573 24292527 150757415 123715818 300573534 644738105 267481703 659940190 33882494 930757340 485259319 68329079 553699182 665198739 758800293 997844433 487725129 392259323 110989424 795321501 15819187 882014668 933346814 905001695 978510521 430209411 688287159 812137118 442505380 966093356 67072896 492151625 713996563 665610626 473222687 360582825 548028510 674835511 152775929 181881217 76333700 975259090 466993097 469409816 41376451 464110517 965136781 664215197 709602263 849176253 254104542 711987585 981225056 436531970 995766143 725867837 146241796 507021468 89884074 486739520 743763170 876406189 156671507 991730816 607176661 36602699 830861711 835800329 442671692 113318564 229171421 873715194 268756604 337205152 662566367 166653879 843301153 506634257 926649381 246390588 171545564 820670485 991299803 183450880 215689057 611806620 918352577 613374071 540342610 784499515 77696513 751798371 382932793 550422156 807852930 578886061 18812044 459660065 332973766 939425960 232865757 100745156 392742339 149883525 430360204 930983780 856625450 797580984 62442665 186839812 280611138 77259759 433520014 21068402 685867968 966630027 529386218 117247903 508014954 335138027 988029074 959777672 745641451 113284956 298558552 469419975 117735814 420873683 849125094 113878296 464986223 647632648 420041624 829784951 212826554 660415395 104794201 229447812 138114671 526511123 15536425 661885066 174930548 140521940 114334629 764433958 530629137 721388978 332282836 15046266 923304148 744942361 303425397 783065295 103058432 417651178 329238129 328495631 704744218 306155990 606284784 589881890 257389429 4327493 976009155 299625961 947622544 87803887 670379530 374063599 702895927 968643453 454550626 213556767 548192363 474566778 884675770 932767371 40716901 758084490 160852189 479854534 436864970 426406218 74367029 123343808 572267827 591901815 981999485 352557802 371414667 206005220 154872089 594678627 136194858 210370843 310430985 847382769 317747643 538180470 952335225 511363036 37386403 598347540 867863084 842622443 578994557 624863199 910950763 959130204 382357641 851739490 784605204 668536768 437384530 771460937 213000946 595192711 278596177 367845604 314316434 569733502 135191239 634013349 138786739 543166970 82213426 968806475 715332012 106150075 608272126 403589053 932527706 148197211 916805715 635032020 492048234 76604101 783450863 14204388 53022631 559642715 290501398 585692726 431624654 848450682 958943655 405878127 572396514 692545726 941954870 403174403 109160800 355892643 869100589 461403436 492725350 409967928 525041553 580913785 741791076 527858867 961516724 465675393 423518532 915226458 912821131 231549479 72382942 330940156 287461574 522482603 475611866 357339053 38593831 512460906 939493089 810645860 868989546 760576059 730205967 92464403 566895764 661992634 450088846 783801545 37444667 220651045 516927259 578726360 221875639 115387095 730490009 911808955 131003984 875355419 291873617 188452182 120220350 35186274 169848076 245586308 234537548 552977486 816283251 761834290 664053422 723723156 945604589 261848141 817670588 601239525 183503196 157356050 34926055 881598276 290437295 843632062 785260940 807029771 907784960 425422387 936308248 417407394 19334695 926831761 21424052 169321839 15213532 216507895 148833102 82328654 563037402 407478347 991042085 682433644 678558869 607413490 41254072 701229196 725718025 273687035 991550528 446851623 41729105 466427198 585368385 919329099 974417182 597190409 467681100 274818664 665279379 435596083 444481877 525036464 407580376 161528387 875921447 704201203 51632143 927064870 138475884 365231024 522752095 10147004 780435603 774573189 113891117 975411035 581241498 988878533 634586050 442365452 52572063 597319095 291380163 398349887 105834792 666763625 780770539 493980608 380587207 562016207 457930055 741301161 750241628 994914687 434406885 203005253 329645932 606772344 225110934 634204264 403802496 520286741 523176991 164930395 341882807 504400570 873543078 724554156 185314610 737971849 424285856 671645147 463689529 446288609 716630059 831974117 917906259 627423533 749587301 778878595 823323488 526010477 38074383 983999977 760661477 490979484 825415262 554448878 543674143 752967500 332174668 737581602 60830278 120793830 510238620 61985195 37681154 811622521 910920962 141439315 432200957 636631264 240051101 647601585 447785677 161563823 384243650 111872711 57967791 432913005 444573579 225955332 858599816 272687712 743853726 829214130 281290995 82865362 118229555 927010249 478598877 534765024 876649236 681827625 555693243 328203005 533430203 596408072 678106617 76122849 297114239 806121508 107818858 89425282 301891295 404505371 404624894 645537107 285727346 632324978 333915173 367523967 256042079 847559750 327243586 930516965 371187038 325708329 580047637 347538012 830216380 741738922 271077753 360533562 505341467 188065179 756418412 26596380 211837304 934280404 156496623 649317557 969972056 771900735 261306735 55606457 746773565 132526146 371571748 231391910 247974466 192561002 740466904 139759387 928770031 460988606 32055163 721237236 691230717 270517006 845319294 709269174 308620235 324720179 407121141 509416937 694725599 884050246 587612552 992482796 934940536 926593235 694784526 658073605 394576395 802915318 276547993 113500640 950056221 264605015 645843639 138118099 829776589 282179593 213571520 327905142 965222388 330357216 389643312 237917506 609124118 331476002 171906019 532250098 156112712 639260960 461698838 354423713 155514834 780546201 999817409 69796729 252476509 330947033 547334555 277526938 526133057 367124480 112541733 831855277 136052923 342437144 135461704 211111434 885672712 706635948 992851090 748980676 740906613 143750893 773532487 125610948 426008655 65733850 752819176 302685054 376168639 374542476 793276622 578668582 988929331 657558262 288479824 344444024 175386589 349719409 244153913 638817901 210438350 332043909 39096066 283095873 693962929 415546321 22893071 566897866 550283196 317542415 428455281 193977379 912139634 922389934 44648294 323529855 678260278 845173520 836077907 356205606 243723460 698350773 603065605 638810728 885171068 163014185 486262751 305885216 833409971 554160329 909318387 17099149 241171409 767784232 485366322 958261433 268901909 2528366 757325250 425965860 921975148 757889662 322151842 9046098 301991770 275826884 10247157 58977680 579144171 300393371 570914505 649116799 968845839 660512127 75979213 863989254 222076301 911228119 461662088 778131300 603568636 558142034 821074408 487297435 667351555 135701817 894970961 764046166 908560772 244797244 348448344 961923848 826772599 873946339 398024123 454859328 412566889 54214601 628048277 380936350 925042731 203267976 208745164 263716170 187410447 424224760 314712775 59246772 143824154 569050779 290061039 78788410 201236110 931769832 348485101 856531878 746064396 788289060 906203165 649152647 283375039 970972191 191862779 350751149 365128136 449205077 441804662 692950845 736668750 777059429 395413153 355452470 285880429 914006524 459993601 881231063 640683195 465441929 116978231 829189384 380931078 771548128 254628371 226058276 763974910 711596855 189982866 399437140 186268699 363653685 811013989 384372016 670489785 846762229 106490848 472867915 150187678 380504151 825075671 145049394 251315363 307513003 482381188 342375284 401765046 288442444 942807953 948532570 42257842 234186396 731926361 467745885 256084779 519695685 908986761 848243756 537855670 422757268 871313072 147098278 396624712 907145751 725335057 752297416 388910180 717740355 635184938 555282269 368563526 68220843 468317702 588007062 811100091 167872177 650739699 644957691 283019826 859570604 349480615 356519884 168950935 690722678 451091242 671575271 949547641 696417048 895159980 521661920 104973832 634647283 5109429 893388668 938295879 140260848 867149268 317009201 595337105 347365211 556683202 247232468 348441400 515488045 345189098 548328436 164135947 885321457 275606890 214598801 124483559 371263611 422815657 937983865 274968094 490368972 70334296 466489973 243915902 964229788 388009827 234057866 228834628 148128792 545222310 278007542 55127623 709381220 206068056 420618580 629096160 511659300 665583215 271898788 327188839 4821681 294237686 2824735 93963926 986128803 18803810 922570419 98250527 269331947 55731053 417013801 817511826 257757053 718456452 760366302 958729996 425616425 75022144 808641331 947516636 217063820 529390133 734481558 50700971 649326525 680068609 774495277 940188757 33859071 987307049 683020035 843262585 797279710 71820504 324676467 559899950 747780546 23875682 478309145 223947462 859076203 987428780 146074362 819310229 326701526 159646166 412622076 32383129 264823842 705349734 838621247 30155447 899361037 63447187 584230101 161676731 790213777 35608421 400981129 234222699 512285112 70213639 385306175 912572519 293316542 229970792 237034750 523081125 184716078 548046571 626270474 647647995 282715294 166304418 91352639 77208618 612022128 98643296 697643719 306105359 547488342 464271591 234836792 536538561 964489686 877700215 319103573 199597331 45052615 239345728 735314355 528656229 903812870 907510343 105691262 601185233 926211728 757212132 49226324 583573707 113990930 881382515 897573861 745767521 789872600 973089000 571579134 425607016 379191604 514714459 220509518 124097766 412360294 678358090 625164870 691667642 242402298 476492210 900782837 528613449 143838759 633863256 417396354 869983941 698432570 584276903 700510318 857098598 754199680 804390847 583904302 4438748 282616576 256962165 104104163 218505449 433450084 501109065 128959506 645932661 740722692 887309994 210402946 277257025 54401268 86313714 756975031 274906709 593004894 853922582 107933213 121891053 689476251 136931817 43666473 666433984 214827856 79101088 931645006 278866660 712575546 534465967 538087566 913016058 670831787 196055310 533854344 645134899 626714484 374767882 469491036 334983554 412939903 239508330 972576357 91592507 622833775 942448779 695588669 992162406 981129534 131885988 523957391 606889139 242485287 981461928 921384778 379381551 585651492 935026228 522955226 561675926 377380887 487219921 872913010 530338713 710901307 987766220 416837221 255374105 456705716 19117905 237881238 905671841 892887891 199685759 185519896 177508918 980469106 983514782 357855560 10592708 931510778 836465256 999274838 752889723 5592371 847605690 5891670 527731621 720779345 765910299 777809030 425564329 520732804 487599222 354131063 376413749 981939430 334493964 386560476 616694495 314991846 110907386 999847060 151359974 496611085 289825788 366338850 541534537 698593996 590158759 44001416 456323251 643786681 170743960 597178207 927116837 62928595 921466419 325197961 280992438 47306105 268208507 921591046 115416602 479780382 691139814 199998036 847827359 125659639 330065070 12811842 228485251 622811866 6148002 470049242 595845394 467549389 693920911 798576448 762370159 479528332 662076587 421420279 594518668 842052968 205297159 217856975 133309275 185935393 709610249 348954002 853708384 269306212 282048738 703036837 595498900 855570042 846589366 882211403 192226682 81894859 969193556 693949732 935742971 266751271 684913429 648728978 706723031 265264087 415534905 926979138 627408120 309663938 664105801 466204835 991464013 159087058 956983077 461516162 680217792 298717232 904555926 671132801 219723520 96752670 520774598 610493079 387047401 309755868 465767236 439411456 175672771 820924446 387917657 235464289 228092837 127418353 304643764 989078338 65536443 844544927 367161262 157263875 895684422 369905826 782488019 955094010 514052228 52072618 568924935 857637364 181648416 517364647 360178691 915634000 771677558 567856144 714962080 949773287 569017360 131691977 552877905 439833035 93224850 346529061 146803630 786613577 651259676 646193190 656032152 851083154 372488515 459254521 172582386 870672036 653260148 111483132 490644652 938188843 776464218 782383294 156537258 128922589 709765643 119502290 476019870 799665413 705275984 528173049 589575963 698150841 431717977 39882802 852347835 754643156 859890610 337588875 707880598 314440165 534202166 942722054 551791032 278200329 167772626 953020065 29370007 481331071 547636772 211665315 636989489 796434240 81238998 247167369 311054334 555353904 551618848 937500797 421160632 449167615 930353252 984555089 154752300 302800945 899934700 199417081 683517317 886577740 726923703 938386938 164749700 557331794 27134278 891154858 475331171 933216426 99465176 843897095 766218806 764173111 292081376 235055170 942572650 245549615 952220248 197056917 740784929 280455966 944157218 357112298 486321865 401656651 432691986 254219888 599751912 409644233 204345843 268011281 206955474 309922352 129172371 518092556 285169648 146071779 231185495 533308467 375391221 708299781 997354644 479752033 135067781 502124769 953626851 450240338 766819135 175588961 210695440 986892701 615360263 952648028 380616535 35989664 873787923 576696748 671606947 529810801 16593302 201471756 818044377 685576653 603434548 99920819 115493329 991302087 597106294 874803788 245098730 354633107 999155983 53461112 630057900 634345153 851500904 7097193 105955180 484910468 284196841 956297392 600216481 600421451 1576267 102915689 247387747 242366070 677493047 226577137 115505993 547985385 188763713 708386141 29336443 420720861 249076511 219688402 281838862 978457260 165902898 968215204 479350475 439148449 504863474 621096582 41482814 194512948 363928399 156520325 322919399 689171742 178535455 385271448 678453008 118360907 749214318 207991808 139833249 380184820 512907370 410466235 355053726 86410253 65648548 708523991 539400745 796228245 133288329 174008122 550189350 301720346 800943107 966356438 377965740 126347726 172603974 682270336 494766709 745839259 299989571 915599920 331405495 393900120 278355217 966405571 8627637 190873016 673544463 811308470 672103301 134250670 244809743 925929611 512560854 520669094 273384739 932217262 510003732 372252311 467332338 294811657 109745299 17495777 980134296 499733714 867371139 962297766 435788293 926199524 115768911 754740258 551337657 45672290 258208483 242243542 884315679 61379548 30828056 331611567 136876059 874838908 180784645 744582743 647896728 768356368 632804784 541482013 105895376 147131138 575260306 772322500 742723484 727292118 137977520 293817488 36146405 506380429 83482472 694922876 833116673 511923677 169587649 55241221 436526348 482940738 337113878 279405550 603368090 357367082 172318775 795399772 697448478 993723250 773767170 799063507 445480569 102008587 432683724 859292527 906758453 941517535 403598678 330756917 93608680 188620877 376464551 292597224 252662255 859529375 150391911 145942580 488484788 515092706 110324468 239924228 651790650 977752761 924879869 624385140 698848335 116800788 33752502 132919468 851333532 816164513 135530770 449841069 234216300 603812336 153181318 758728113 665090287 497084369 164645055 639006965 886708615 589741585 768820124 628595064 551387152 293135991 814154379 787705055 700719391 212340519 862380270 616580556 73526451 674964620 535117786 402204844 40042463 662621214 490509465 122561374 575389597 532370901 986945140 876349330 911107381 786097598 882397533 253316552 925315070 764572222 906096830 276328504 843588471 161977705 430152000 751999339 904595588 507478399 55874397 562205022 92481117 435637916 588575221 704414939 266271314 530563901 767515649 697878991 465567491 864238833 328370287 52304221 975984074 554322983 996170723 606241884 561053754 847322432 355337295 787467659 133221774 48411950 395161368 105114598 479195249 530741550 438056559 656402987 243894376 866176245 622188532 287904893 755690622 558083762 19117511 97842414 410197144 499616010 530030843 76528905 829796505 476194658 593458974 557601530 482229422 881130717 270847692 938620035 368822081 166990596 62328041 505248051 368694326 75585307 624058609 629406574 543470393 526793981 57010365 421464843 870861791 731739747 637376041 795507275 866250085 318742076 836715680 107701604 384211470 385981728 144821065 386270745 826394765 550769785 934430676 443694145 506368724 999654914 397950646 537706299 115193253 708918696 977295455 606012962 666604931 464091472 808504444 66089971 11852242 974092661 870690592 605374956 744273396 334166738 921387035 900565525 963946847 330482254 174066169 496375256 391753314 342213188 119619500 189915859 461533610 657596324 514572697 438895429 266473509 626485199 106953049 673020953 494320804 220024703 434693094 526712013 855289434 931028140 859526981 843955047 789159595 946177795 453144448 628694944 243225798 646449938 595653980 483306900 714192082 662098714 591780070 222792403 31801178 910639095 600808034 621606204 278404630 870659195 655009380 675581332 783850453 306315793 961942135 705806931 5278895 488220671 993479993 248402504 815266180 554994874 516252925 763768501 821987981 136432205 48939719 298453760 579944975 785568408 65639338 372704158 254072111 55452683 4609715 933603011 914515785 297910595 758275143 386522705 760349844 124592640 844408338 503534320 501447649 377730620 928657012 231711147 974518278 833195401 742577821 324051125 715721540 277461532 871946741 761502540 84248415 56243373 264408027 677837465 440796349 288148417 170143490 508540563 658315484 158351855 522823462 686777770 265521530 732345426 6150971 107914416 399711001 845302279 822902297 706819385 662734854 79672651 426205674 592469265 901988962 935945417 7727927 593968123 407972148 105123853 620713248 232025465 724450130 570613521 956817258 498476736 211684469 784734539 933370368 469780312 761766838 96911509 942187700 492013495 799438862 527394563 339122540 947479879 154580147 10728477 930372894 16757430 784415870 737820321 656030335 164883288 745554760 861590600 92106073 956957076 720464939 29224503 370264233 237435163 539250119 497584811 351909609 361724139 842342695 494593595 891121703 695029805 562556529 694210330 285159785 397337381 728594467 837490996 82157715 660334969 901091702 956132675 176336408 44394426 805946864 167783101 125149375 852986312 597581374 436557897 867998380 2948590 146889611 30884424 790564668 227745983 46749431 994132509 5589028 93828446 367377683 784953885 157406916 365329484 288684644 506495176 21888234 789314465 527293599 649158685 585395945 5259426 46373213 469320953 550774993 173256590 418773389 293168329 385902599 588903617 785467595 804990919 603071842 909445894 251927410 737509917 824432286 625523297 248298293 559610938 486939902 221756773 525642604 293479411 990043350 179624326 906120897 251508703 706931500 409016339 429470818 815920935 208246255 558936142 10693808 569185931 986613216 594024375 509815236 975736890 407314325 87363463 402498466 849001637 267780897 146298196 194405723 183457567 74077984 533812560 353264397 959056268 387704697 341460913 410599270 917587714 704547615 929590458 852025092 44582879 676362471 11788502 832669170 187936364 774779056 959484286 120171801 987960765 827926412 662548403 917114695 597690367 670946960 223497212 857584797 677365050 889221890 524576120 809795440 494142981 499532965 135205366 811944457 44824751 315651305 840672616 902911723 397811737 948330394 383003781 796212608 986213486 639252186 683634882 596287754 801769674 348153243 171958731 543172619 179022661 579861202 861941248 134434208 91413288 598369984 150551696 919550864 626317107 951962344 31370376 675347297 434301087 272726009 523203246 599373025 562019886 32184928 30247448 857110882 187401620 542951328 978334150 91398437 490461757 555403443 279133436 230605001 502739275 31549997 107223834 13019251 536699364 778392415 858776864 314423700 736034530 331422034 584668050 839834781 470821024 110694752 427558125 653066139 395023303 21654416 190856068 501038657 23895960 15640496 691825201 829635147 246322172 617032679 630763926 714910437 444783842 702315591 59733401 345939486 990875351 687884408 604678269 624323812 834109999 320858475 823452546 10769595 230990426 458805490 418882240 620102734 923656798 27117134 581447187 779541604 403993747 175547134 171090016 315973657 155584670 41297700 849860587 609302711 456843040 181673094 432630786 936811 724045434 244508874 824030238 107295910 188403428 322328322 200275703 551748710 731216833 572657121 548200703 818066138 847592054 997372146 396924957 461632905 501146135 746967260 735663978 724662386 635412447 595755765 522007117 264943253 829191966 616305489 439691881 989914465 49113788 182582747 914380336 380945340 107768914 329732946 448709487 762101776 681941452 272187912 369529958 166483114 26147908 82458544 547172278 202495729 331469007 636614185 37257968 989904353 936257870 953576291 22308903 287058868 122789170 888292910 288106893 821797353 47141442 10657299 611051640 861648912 232874800 716909218 372243305 639999421 799741545 960971951 269228919 289935494 107036735 517255158 622120244 852969646 916016033 229824031 377600288 592940697 320485321 814275463 648093805 191084259 368257440 680557063 395987493 775640846 482514665 540058611 259372071 931241821 440011462 118094770 936658727 482184867 44072186 269582833 923713161 352338127 975766841 503907078 491618964 767308481 158135953 644122363 13734642 781203576 431447469 121723471 847494827 606874722 515496648 802594678 291012829 586341693 900531088 824642767 485224902 982480483 944895219 269670970 595939217 283152496 450953168 98199297 30583092 252846612 128580728 902312816 164876494 934284445 17024846 699188067 503211744 636928314 422966162 722783132 44939946 286413510 878122844 667138803 781071788 840906789 238973131 820639634 955139824 412812562 956443331 560396367 315255190 608874032 282458888 836928505 274532162 777894917 813774188 304480132 20506447 446699941 829347014 536066696 867410647 207272435 339104559 655616400 958641031 967644710 531381797 659499744 916463974 104354699 270947782 331057362 991265159 47410443 206767103 593386608 905418096 920771824 575894281 550314158 135057164 454226978 926247468 632389138 925604330 797942889 622732311 763815752 555831074 90516058 456737086 584707289 170353556 42274223 613290520 151547550 114068729 186281751 691885729 438052796 163100098 770778142 73941571 787725649 747046945 348193791 615904623 609153816 272291531 715964702 792146772 308756227 273012444 450055746 921038138 897648590 588992076 94654294 926576425 685586292 100244798 914424741 756023001 216584354 478005350 338565702 327548765 305679040 407253275 301159624 297791742 676505772 24587993 809555779 577676672 839483408 83132150 828811097 447390922 81010601 513644139 302562467 994522786 382179379 170373776 836942318 865292589 634274817 920550977 434536546 852087727 122445027 199702193 358915204 482733909 96098892 751225214 242844582 712940720 115024609 521410204 178510489 784031350 703170645 536559492 892830630 493686496 998127048 113928831 834866654 969775374 181402716 457930376 651028991 430755049 544874953 106048877 953941654 906583179 782454706 566150436 940670457 292016372 979155863 671665322 735146818 145252143 418394264 739694292 260951551 148122873 153269575 562111646 357335773 967733574 507132576 721547989 578251952 199174236 702893543 778931886 434315666 492551740 349945154 499093195 370411564 602424454 452818649 49104278 835213170 504599077 227280039 105591072 6428655 997549189 577788233 930085313 852827946 740834432 610963583 100293766 615152726 331515397 950601324 337273808 833320664 863948013 926967052 458114953 53828611 20175341 169047076 358269851 676094508 63251304 820430269 801776339 709260507 157125770 175398467 206067903 189330190 904396898 322553419 556601142 335332162 440025040 329687339 994882625 993471673 237975584 869291239 901180354 409285287 727635881 819292879 987592816 854029172 925688088 236360017 404683220 770792220 106394220 760940457 263909261 838097289 336343649 159622460 292037173 231693611 701169781 895068713 159168894 383459089 309998453 604389279 131548899 400616326 859920856 371071114 175194850 14309364 931562513 229903423 334647229 668785407 742240248 896927997 436742302 819323211 753518515 740127593 534039875 83444892 410842693 236830687 250944818 451035345 119011006 691264481 461992987 662953580 621984079 232292124 806637330 684756134 48024725 790698220 874487857 646003435 246360675 96910105 834211784 298066471 974478896 455944497 745815396 749984700 997350152 574016495 897740733 635677593 312786377 41729902 395511702 731265006 538327495 833033724 812542861 473977144 392089190 748071982 981378333 531754034 398672844 908114585 28541097 856379329 47170835 16715467 182387535 430196048 730585913 186944805 937676023 96064074 769217855 271083229 471832263 564377149 12611921 459638419 871061993 42533972 513228024 965858359 440012298 424709162 718013623 351493393 897288691 143702988 132274674 326466578 732509394 65031828 151671255 444200262 280291028 504190387 246367954 554440748 105630780 286215739 900168481 68474220 329202626 277638205 123085686 807418104 75135835 450488939 805644488 34332416 381078395 866640727 306656673 760587124 857568444 872291049 114090465 233339569 59557351 337646591 109636468 575674893 590937649 717847180 788919101 314258886 408178936 319341343 433292009 548196213 434812726 592858282 720300389 888216416 385752008 763955249 131721102 617343888 874745955 854770517 750174587 438801887 463485270 77031712 360133771 435649200 665703404 138636764 731645507 531673726 483199727 689294237 420414413 505600240 84734430 49827280 859827478 934882855 520772373 758603116 312908116 29037820 397457428 450709610 947501836 851612873 295010030 733164017 771660208 738722608 559453528 210279788 897632929 796656292 876917812 920656623 355041653 923723449 619964230 119473173 320547498 615505931 167791838 184572927 488486668 489182347 979099348 775148005 735292201 921517994 317964115 699328727 509055352 387875648 821741400 617682311 588260735 64053035 888645878 558309949 176137190 757883727 830879298 308596682 228793786 91291227 340157905 757314010 579560426 189866 248885352 566072622 848286052 775329915 50120497 592487954 756464543 628444046 203427200 952456238 113839693 424619577 345190591 837294714 436326111 129085772 73355899 755384596 693817976 40518776 799138854 372083363 64376716 571272697 505574923 508232409 414442810 811181354 510417850 101958543 538471007 288862021 834918711 578471060 17041555 572388914 169073587 113826209 5852770 805709031 43775826 751695255 657260295 556386196 302328104 906586737 257414755 96912455 502158220 414216835 836820099 217588455 488872749 469611474 591297102 433910269 385258750 995986297 52790890 74234813 65951502 319338155 422400147 823520410 899180682 190987393 32583116 644009435 85724772 953582235 981798363 652505735 461617370 465004060 622353698 221277045 725870422 622470879 702895442 358097149 459712154 836174570 8525874 197119109 15499431 57406490 550360834 431905106 881570192 911415118 22808058 725721560 213138586 172413035 445977543 21227116 794941236 224398938 513979769 960729119 831330980 124568893 517323191 775261556 898025625 161183695 993598567 565805943 392966881 16286733 406467653 953727193 166537826 451312873 544289404 261398167 985067305 380869854 648944408 327485720 317376885 770186905 109818333 49643202 291712276 296513482 670469401 632828506 452817887 146054876 548284558 148574516 779923936 564715525 242834102 988543754 631290949 476047589 409869090 680539292 228311867 84746627 707149443 680692248 331985059 271034747 306041678 219879508 868510805 406956453 314969023 458971079 48715599 809163909 213493059 333676370 711415201 976830645 289081632 937595560 494340771 41011357 194677990 287009518 753294039 886314158 677246150 513650512 616699725 648600522 172266481 66558864 502581420 196272393 218724177 191079891 964301237 97323980 100346776 954676189 563216605 834732979 26217761 16727151 713346433 822850898 190251738 64527150 580400442 858604351 108711740 760091817 400876412 767525567 465675148 950253923 326001896 247548416 985685257 491331239 483282267 740934272 411499068 147355948 13451969 890120980 806741655 153373764 349900231 605847008 675791242 93483716 355420778 497260849 596678539 948662757 883821842 867637058 782168900 207404440 290851785 327537485 628838563 767920789 22579797 169005835 831291648 288899132 47030226 797095320 973509560 618693727 441697297 845531498 748021052 104900560 541561514 683378543 76733096 980320619 855589383 25947715 809759729 597157485 358895031 116357854 353473146 353957787 701507857 384421348 243584984 228178681 257113428 817229590 432695285 777003746 195253164 521216020 275888981 294629099 141905711 289595821 675084946 946668338 938105182 854481624 3697753 276930012 103655844 137943298 448886654 452721033 281084598 724082250 556919001 477358501 669145420 204221387 584750743 399763097 573259003 104866013 11632725 378055480 332177744 10163593 186000697 66365907 115435046 779112709 862790464 461216242 772169377 89829693 438850714 312201031 130941347 219299394 424255476 3522339 761294055 204562162 660961183 16002444 460823594 269017553 346896567 99712773 292527067 463398425 293139445 422624095 204193224 33538625 564803885 670861129 148402347 164455781 418576696 911773676 690289063 634552203 576073827 552832960 668880737 113894500 887076767 402832139 107003424 606658737 504020529 806962833 556806940 308194103 10208624 156734747 32569805 75555131 901001105 108043405 152548528 558184936 284816028 355629691 388585613 809972913 51287488 330715013 146846115 532976378 58973205 364330209 308865176 579985454 696416445 730859047 295724936 710129547 419432542 662394058 622558167 753181040 957231337 389853228 18304179 136119255 409109921 48800538 397983701 325497465 567365844 289197539 523419988 582933689 995676100 345801990 7981834 739586584 801799479 766996136 452725748 35759389 540699645 197079354 225417803 540214743 257087326 632354794 706208775 497872873 817868636 714969000 814660627 904817143 172267421 973074817 141389348 101453790 311770592 887431636 139837551 296019839 300093665 392202222 322206739 479028377 506940327 275030524 133839590 339385621 973047072 927665291 901014147 853879894 726273842 789455229 344596552 191839358 948191753 999758024 123045378 879376962 404269010 587342407 854778686 362596910 2714691 949456592 927407571 311514760 507933196 68709618 245713079 247143099 687604431 703739425 244521300 686070765 173256133 311266376 432042186 587981061 636759519 329105911 839405510 188496775 312345225 330116790 805363454 817420336 890986438 524269091 803007610 486374263 820507863 582274237 238204790 664070158 232393713 859064993 965529456 822909846 323794249 29574883 450803642 255967905 1956651 557158142 255114319 710411388 151481301 491048061 96725761 207233173 584125399 242198111 455146764 908355770 196851669 362510270 236465274 101297036 323676196 384179771 214383195 327349 355558384 585765593 543118896 174622551 933385000 40076785 426632610 709294423 304285146 977094480 175407043 798799162 443067408 614702749 583035416 213585720 681690283 381041205 763648677 666260104 146134866 453498952 740760356 791643421 247517763 793332761 540753186 707486123 62493591 949773318 535540274 704273952 716750262 663303171 337529748 426455613 174175128 866002678 490925492 146183760 139163552 368951953 463375802 746945606 236198320 935205041 52681781 563052101 211327105 729256374 469057886 734837689 622285797 803545679 517655857 498976872 845256601 268741749 163819481 810139472 236574959 173696083 916894931 5832111 809957128 302219517 279349038 451274286 635168532 239933562 566853812 259490721 105103213 168982227 241012052 48502566 932725653 942857878 632026928 687902080 518587323 806613555 526787261 417227069 897959917 910953833 412455477 442656641 30442128 691920647 229550567 582118696 847324802 17116614 459822577 960073619 735492753 481016743 141088111 531455381 571311706 798649003 787018590 340912764 138016926 427149545 62783053 881577001 537975435 421887778 616879385 92637250 101482031 562538477 673038229 203876156 380478001 112747070 405024530 164585804 651436319 523362659 413855434 986717295 293965663 127008715 907185622 620877872 192636591 855305495 295251681 33674390 682982867 932258278 581627255 435183532 710142697 950858364 433581242 235604429 986914255 80479023 169849139 982385497 158664333 765736614 718527418 226142299 195361248 905136157 5889620 898388540 635544978 947401736 851279636 632371645 818819722 154151161 475805191 300736892 377485924 68266918 603469393 956261075 601204549 349571324 179873150 679042619 60208528 623279090 102157979 845346782 203995041 473298816 548301308 50983650 913105688 300054888 355304967 589309667 95652952 639041679 127842011 362829865 986978771 619475228 229202481 347867 101852197 756834570 82475233 874462166 450128856 89531077 330633672 54359731 924562161 974410922 940322800 901724364 540250822 391722897 692485126 935378544 681123742 644911927 578737140 934801276 128943902 766923006 735916872 969552016 278953130 736062307 728678913 251212159 740904616 425381807 432941408 230158146 859066575 535024598 754313953 351574398 377898291 36651892 838331900 897022891 927300151 61161607 643753914 542283564 24548025 322806541 419460720 621064793 356045063 416116679 478669079 246747149 231619463 78407424 617116284 862812664 432138609 464498024 864499516 531350086 898495680 178970156 87491702 133072808 18017943 409361714 737745261 734000323 755009096 497511129 911946213 380027297 6649456 587218183 271515215 45428589 728456886 32686455 377719496 445320213 792072662 169740994 490042951 307758110 996085017 624138150 229958453 882720221 320375458 144742949 546674958 533301047 992014833 131916721 570819452 760773185 791225967 808982659 356104095 417582113 978145521 824060387 205790764 895463779 371823367 493050156 990106241 649553666 245744352 129210083 511185397 81650683 888124594 778642507 184328587 821613852 499236603 659929514 555067079 980821822 992153834 847939224 964907019 112590875 452530136 635986254 438176032 97237517 657258704 954170333 298046173 773808694 614425622 636354589 772366799 985676358 900957393 704647897 929639690 404037249 769242370 884650494 43259506 911487633 577725592 614077071 856388590 414879266 738713326 231338282 441738043 600516878 472510102 197477754 866742355 855910890 759227742 479939613 849239389 818619848 159289722 193639433 609193832 525766810 588162738 114575047 111374773 495947302 91773454 619253675 583132283 171937916 152683212 221559327 982686233 159161532 495219135 944085814 343933780 152394918 200186786 721729343 217788804 857976007 560145241 291782670 44135882 981136485 609391801 613150671 880511260 254929199 558251607 409555499 9270195 854763561 991972101 409475501 374173222 634400065 957036884 114175510 819913824 223414025 414999606 135533 228953954 42668569 650214045 745295117 776513737 556638012 772550172 855086714 302095644 162473002 968821364 19010309 448791667 352409054 250073737 16354181 725907224 732699558 313479997 801679408 194661807 298734644 273230551 417379627 952753698 786534406 690910838 93710638 12307433 699628556 337192433 558870641 725552172 48415474 659264402 136241578 526352011 630129305 306066147 194257232 622166160 1744673 654450403 475095273 341390702 74114378 631153361 369633959 551021379 849575797 916786659 796450734 699522731 657041476 686782699 681049670 589907592 892402917 792754885 204244572 206736643 137117805 964203683 799874720 17693267 321999158 64884904 665438904 882923797 945991146 877111774 189618522 4850002 800836269 775420199 449803602 820363985 797283327 642115195 239580635 78373278 92336968 279277813 419808645 148737312 248369394 104927307 299391168 447374271 45086137 364106863 275052909 58679102 668838383 101482870 295520702 993653407 102315297 263761144 711609428 527729064 654838964 191657543 337521563 548291046 488656317 758488128 530008254 519977925 538587820 230101383 239186038 830838524 510064350 695059692 62054151 70693978 61964454 666754924 677579595 275812485 971299870 114330105 638216096 791689682 592794376 828667225 172171636 727393705 827952888 514742005 971357290 829773304 837753007 796603673 133995306 501161437 444672143 219273847 711749856 797006410 418968380 200331491 590743300 555966264 234756524 594489009 175439067 113566501 479717837 380278018 234071150 165337069 991428282 606354731 15026253 190765348 964219176 95033201 500202207 905987701 838091791 229095684 315650028 69864661 61073679 300315955 516478977 912725189 22541662 894146884 919939399 838130344 130304462 90659988 31804245 861839307 992694758 65537029 753039152 966399315 269097813 992783778 819607727 29546493 151336066 189594389 530170948 476615679 101889210 970988001 947732864 997093154 466233051 876483292 904171346 533751919 178278918 910857456 191875330 346112840 605577190 25660011 399796446 386831055 657115250 8968950 180536599 543311383 450475621 955703423 340965821 3109144 169608284 12836230 530488525 670847299 894581573 33222480 425779440 247527140 394930599 726776923 86703659 77667820 689363448 657656803 539879463 836264894 515916150 792908117 402772540 261665063 272967912 113722512 592636463 211835422 374624539 70753137 61407660 972731744 526305516 568021524 715940999 586594846 207661485 30853216 816364493 795478620 672357857 556810848 653017292 72404468 452830020 681628234 985064540 35888552 311438022 710877264 425878399 478640569 188488749 979289654 441284374 296831223 17899775 429735640 233533121 828716386 257093330 839122630 554997979 839001157 837547835 666658647 732362009 250255712 189420361 225968987 673304147 649665774 98054983 57994875 503268135 134913092 107429159 276029947 354253458 937498458 371364775 80346449 563715907 175526240 943097938 626898726 258513442 394329791 7890362 623994253 985484085 805881493 851888254 103135958 167949775 713024959 296312540 679495940 354874481 65688778 502622398 577342884 470875060 498710424 529435355 39943045 680780099 550276855 803636104 172085135 325100650 75239182 848871256 538922307 891208406 278452698 586211885 560581801 430246957 219111607 325906537 524363361 125106143 594004747 155406436 980374565 657314972 525589951 92796291 442814568 921317767 911741679 84371152 231000652 258044508 702209689 539769348 56677815 226942227 853187026 635790439 367520005 513058470 131707050 252660929 606679807 450738389 872512178 496583271 416718159 796641439 395253892 464127196 764331637 57761331 857644270 153985333 333003815 819494490 955219463 692078724 818524833 918856814 698540580 250395639 645847677 945952035 857928795 349716377 868685605 815309870 989994002 277621460 537685552 900950890 276776317 312582569 963052085 648653651 253925328 536854152 984198821 768797701 103730565 495364582 731791908 573838973 747861599 308056934 117330965 471679177 668741989 792362938 538994510 429976263 468057728 967408473 732577093 445154812 39046275 661765508 159088528 653430881 274702071 573741632 140920023 487326108 957884660 788438727 409838474 493946416 254272158 156855229 441722372 458334602 283303613 909044070 908770312 622397905 831067342 530629041 299529878 961580355 146469394 300848291 570260647 917888218 295858676 977741839 67862765 928285477 835733708 546568305 669282622 67561054 619168282 217985391 786873456 82691462 590913967 180200064 221981241 982807352 587918270 104057030 270469900 542293819 893509425 173210131 871715675 597844739 986899371 892874183 416262962 523921907 502822733 667941035 725427761 260755387 693876947 125124029 931153845 894003910 227640503 331280630 432003856 154961108 529885337 177908591 311584823 795483424 676020064 979124577 745310776 201283904 810018377 495892336 160413434 889105327 231059927 307101793 249043773 332929146 296497113 612273160 409428270 103876737 521543039 62773193 694336177 982067130 70960241 48653948 16274494 798988629 467153680 990063935 952366399 500999380 830917968 826499143 53637607 613012722 954320006 58697254 293801868 279795123 216553265 719228015 162992980 896495771 992975573 727947433 63811091 394492797 962019758 890425421 682540117 469465004 738879470 905993486 106846803 265879676 107662999 422254354 104104508 740430876 657071907 415379453 639913389 337254992 736369994 493554807 547907871 880713371 453195553 6801594 827565509 710963869 612677637 474234334 490052020 13810368 899268225 334160330 405584435 88454225 828395364 557022070 790130015 775117250 216109719 245247880 275270340 874937639 814588665 20869065 738679056 276978068 409340234 283520931 281783230 197182902 342947708 906458909 245708342 125313723 458737039 672662113 436114658 954353726 638213172 816752287 376835111 107144840 396176714 532024998 42842059 603594216 47682465 776569073 970622269 255393415 53904399 44929932 641098192 448625134 766997010 585362741 595730828 473575103 198544150 725808974 716357885 912068559 694289884 495519239 388740051 147292280 732202149 354203381 429252740 504854467 969156856 149537937 26636747 548903537 939460791 107480528 25965599 98856655 451833237 24171901 36879251 999377288 901102980 570592797 345854619 465638089 457579884 89549375 392201087 624170533 341401502 837506909 839555843 93750998 177522763 59081 881346672 760456300 989020339 604978090 244544306 7096235 475553056 66040821 667697792 140946467 772157938 28529424 266467929 645005976 896207443 119714913 48711048 657461247 32769326 179478398 384008958 690454509 417711447 776570256 601267834 451797981 328546005 554966480 34467614 21544163 326543076 619560016 249209045 863687331 305375828 866617902 271487291 977456452 976093841 862553648 494183080 529128752 596608964 194288012 373938394 329644359 806154291 365055075 102513850 376780846 646169917 467227830 418311558 356662720 909062248 593079771 928731880 385539428 233157357 172615603 343341891 150473100 845212043 856703126 193642651 161887575 893188311 685437919 6245239 480353930 559372406 198164318 894123130 226073762 298888018 12176159 298783418 5104200 424144728 491367226 546840545 878235874 175678146 792938374 653967294 161911910 854255833 476098231 855845636 420867624 441899299 305861546 117881724 19076669 286840117 870413684 632540032 666320385 284959839 804269364 362107310 160704379 109077678 188565871 937465242 387180265 984017713 797131390 926163289 171635785 917196747 706897385 597939789 3626544 447288082 895682863 19532061 420514385 97692743 191388507 160134618 782247515 347715570 28756404 282053341 945967979 295250129 973877370 794846744 241086762 389169131 995107458 125512791 406400656 833841147 673045918 639963281 502259078 465164992 422974758 808738071 377794801 823377607 579569001 744043120 469464254 467352155 737512066 943985594 387978714 442847987 644863689 729781857 512399031 121608007 60614607 164347027 298481947 704435199 618544755 716088562 664936021 661872245 219408897 735822642 554759181 990860754 659764468 144211211 467342871 571022019 910994116 425690207 931056772 629303449 113749335 649145844 841715882 507702961 37332845 982066091 973270361 257099614 514324993 64866863 15011668 853153769 831559705 524073746 554204937 602219814 113754565 51062220 804690520 768408960 40155590 744475816 106790090 517694243 168656763 687918427 193723946 680920111 481123390 123593837 436522117 44513505 569537615 914044372 546205717 678183208 190705617 320755903 39834075 325016577 143307235 497038950 365789570 216769331 15822036 120591525 248080228 70560428 988733640 716137297 129783947 306812000 924600763 233077711 992360809 787101318 423744629 542539755 479114019 990120681 347189436 557499174 444640547 379539379 51453960 327960157 967692986 735870408 703456677 615055504 907479810 233186169 700590366 940229584 767747478 832159382 366970245 1939896 740505578 90071998 444603760 193582948 282714667 727768135 473237163 539553852 742618570 56644472 464773385 243732920 501520878 868102036 625183506 426058996 410969288 514969354 658097646 601536394 524422262 28963536 484321150 537430694 405041798 198947557 187252049 453007382 231086374 788783581 895461915 256573134 222150579 589287390 868986516 821494703 378562908 912168807 193277183 25823207 495509661 856107908 948238426 12129277 359676804 665501758 391388585 355595383 598275450 547335178 729904366 620074271 756938038 6130629 448573389 717421150 217247386 950961083 732016579 363021370 932366717 907639012 250273153 974450132 277913379 911826756 278011760 551443484 303824826 966829781 619804926 901767670 578058818 155956308 706512726 874151176 203259205 110534989 736323111 911885952 154188596 429382811 807487230 602225801 780562554 325503252 755052706 125317958 548507852 249041304 717134516 915143316 330721570 412691823 303530637 473841888 471849258 393259951 868915324 916139055 567655257 622433249 48554615 285557596 191733834 785922464 92748451 865946382 782209230 815453392 157391153 323751936 657149747 857119750 45938812 842260597 987047955 190684410 843938429 92919224 293836059 979278819 832522851 472679504 914007181 146357890 806050473 708860667 241081477 317471721 78235843 511183253 646081639 380065426 964079443 646500484 774202912 591362324 503802895 817469540 30411357 660796944 653336380 824991826 271419635 939545175 18911413 683318854 867629360 287503396 611874668 925065687 170671791 313421391 793922157 560258684 385080861 660481476 642243495 461169223 332601973 635588640 957403917 69361839 351395377 164711454 934645073 93849648 31113492 672059378 278207882 785862923 954671497 645338749 511719237 151813102 304577577 936511318 933013928 187957500 225553683 125001437 670464383 932495413 941264214 363781563 404354303 473520685 885761538 387334341 464627360 793645708 225868159 154531868 484551277 589128378 449266707 791500534 357284306 223811504 347357288 70545702 19283779 493509187 352502835 559652501 858825461 70483896 836114336 122550063 514840130 692486538 959885656 101684892 315952977 578055791 239096050 134850102 699811225 818903181 990852251 707735967 465400370 66180655 549286451 30473311 862135198 899615502 855098413 188106541 985864442 175561618 823783145 196311842 226457323 420295205 156836707 613106811 304798876 632796190 850434658 664432741 11418347 630566980 289205389 163571767 311497914 706494005 662222124 527718117 763579216 900853537 197436088 221970701 778922956 776145525 568420797 261385977 423184720 680065791 936027043 31937741 220568246 232993448 526466074 145137435 346338881 801048728 484548636 544338313 109754213 20358342 130761883 285871735 13520170 676080356 126423540 251335787 962800805 385971697 454073512 194435040 388239191 110601191 226697979 502261894 565858381 523806523 353011550 659002977 454989310 524423978 672273319 164700932 550102991 920053485 205355102 286283248 123053299 545974410 34320620 990419772 880434377 340658623 494120566 582692892 364043170 385209568 536869278 16505437 848345000 328030289 129656999 409618430 429582271 653457840 908382202 884345067 913776226 624642490 47249972 78968165 240642352 424750756 128936347 636492795 698090800 461553365 163187271 744167781 999091624 717531419 985657093 897664882 781261135 152801471 280845369 534240635 844239492 772505852 290699573 881119777 644053886 246049148 699653820 894838922 210601884 900411899 648980421 170489068 300859947 153175789 76881499 917521647 435517294 740699485 250266418 247293753 739692775 13565971 976811709 294514338 724545545 400041473 278469658 405560945 180331921 648984078 760576238 565040779 332033489 389629898 544467576 841348866 464559692 845670345 116041008 621389959 230927315 944040929 798982100 634839960 975718209 15495223 228093225 467091952 819716438 667246698 50763888 296016672 628070538 645341231 194264967 669740462 760754715 657266959 538708480 28275517 652645525 136881189 290700131 67078643 866771770 126588373 251342834 803670335 420741886 352333933 521332661 532901514 488908001 123414239 849576304 602628204 167195281 322986540 283261173 670624214 875895605 867807928 68916888 964506775 34979540 449439527 819194775 899034435 503463823 246797545 444963596 338189191 204207317 663070325 687622931 479387599 435953267 628948453 516468348 616980339 638228229 856532605 856838197 966071838 815300861 431436633 599698185 718431102 274151689 925691524 901116867 529660870 137232803 759169279 587634293 506731737 95314009 702244903 175192431 29593245 224510724 990755429 337584895 760123993 82565875 482594091 401269634 99924879 499554544 338506829 787551852 459268828 990677523 801355042 674227499 153128120 946707933 331058942 799066429 914836525 748966052 584652815 606936552 174890881 935483216 613563086 575032932 426041866 532852460 985013119 860169793 909033542 386574786 402805656 731738731 992471949 848732755 878193341 930125567 174236422 170306148 432583035 456185808 196275659 378552989 453322953 988447502 470869658 247776587 127467580 212399 257370758 237990806 373877777 203319568 112319568 689233239 320203096 802791802 466780763 975848620 754231979 139666597 234110618 117333359 483501853 712872216 285064612 311478423 553663100 389888766 494871452 602923636 122168639 244766787 760258033 30665442 165503000 513737362 380414335 624722363 252799751 436576176 109707525 794060231 179049460 709441101 344093836 184812509 161878845 930370546 347437041 984295022 35451308 781219854 125546859 422674153 804065412 408363854 539388015 204626461 904590133 309825274 537606612 816286766 764359619 21515178 713374804 461439680 498076584 713413435 554366067 811256136 58586627 958165132 428666785 446658976 535284692 26845397 682050756 89102621 212797473 258627492 292302365 397012768 700864896 805559375 581943168 372180906 51650700 285604099 545737355 189210888 94922241 726660351 736160503 33628226 545232673 411377433 925931442 109236798 160151055 891205547 832871029 395138030 921187489 469673671 121852813 619152682 759248078 741325754 928177656 869965293 989097072 210127905 754281257 111960501 254949494 379127112 393010383 414573911 409715080 787295365 862731359 459612312 857492500 487923027 674917268 869401689 11519629 627470141 318086949 508552128 788872343 476151603 733349970 948561008 668506128 86794956 803099654 560271719 613670923 652505988 187419965 386732827 684742968 352141646 369164502 719177206 514954179 396040995 105882765 489083552 451618674 303084177 558206192 898051681 342431516 31574788 613077199 918468338 469984751 790305110 466254074 688595120 24946170 432389245 561007053 907006650 837520239 74745381 871152038 380787507 611168212 224985783 289656525 563434897 224033116 273483584 979181454 260524151 221492117 846563122 331585384 547792017 648350749 888968877 570882182 902175996 506349581 546555932 561221371 688558619 790001340 645433683 835570049 893002141 221791357 789470411 456520083 718668530 531459301 461933981 906074792 686878948 494723355 610812039 47555215 158547321 187056837 955253216 855582604 575182534 487069637 114004048 518425229 809923116 722522027 614483892 767557144 499813823 938559093 17284504 174110459 684716122 722280425 305310048 965730922 249856236 774985054 490310124 153251197 401052621 135540489 233892779 503592926 665540379 398421308 777958991 673265239 390202830 263441389 671490101 669751573 194182958 778441662 391893662 790728018 956781469 318673133 389944580 881584645 870656901 240625390 140023155 736472015 617984233 895568959 978781374 208905703 348652734 471814891 731618141 312523716 755206225 171510024 699229168 610678468 282042760 596534838 114688440 998127745 938040427 869180458 47982557 209628511 474122535 476652195 639460758 872702354 559209188 451605503 575692584 480016209 25870166 659300580 153179904 755764403 656964130 729203275 234612793 913253526 304211963 843623774 405512129 684912668 36106651 134553703 833565485 886164296 665770386 719341761 191192303 924290012 993465974 917133500 983748974 910137740 404107692 311162960 895541387 89438761 422399500 945550331 920450133 95752038 530296449 802130041 86767995 22899789 29387566 23695933 27899965 454544555 524356701 702071532 171516214 474521930 437570019 333830907 535494328 147747591 55743685 55051835 261131750 622858959 404716579 995672512 863164509 367620334 461942060 135021243 431062754 268374439 333340202 654529451 201329821 632489495 850689316 47258669 364613693 377000534 729999317 948174217 375970139 711719995 742946937 660417690 178426420 908470931 67763139 632730284 631648704 880251572 768349860 744289075 643993095 95639391 980927829 843423766 658417222 313717420 40670796 636719840 557577154 675557641 341636131 869859458 892508684 800166557 585509885 194794812 722712771 867176486 778617837 907668786 172545023 704310247 938215286 140800478 245789022 837587792 964510517 695211096 197061460 170186299 246915379 76895238 566558834 696388125 683914719 946253374 651413710 619117955 601085130 16889752 51306173 317895801 339077445 422207773 400345372 312929947 963080139 951055926 26016099 386641561 670167517 133032592 12472675 123655191 871765295 703242330 523763168 454360168 307873563 122863882 68420504 914732540 675384925 296602321 816136860 661344113 387745798 106470677 693840466 608499317 17802811 960136208 42797232 958758890 876803052 98701043 386590067 777113384 414832767 133055334 775774120 162065623 95112107 866165533 615240609 841405422 928805725 464591598 791305959 504007321 681362052 763883437 507657746 376829336 510435940 509475366 912391367 8574492 880210493 993366323 746754936 398363002 217811747 33017654 34545851 470930203 555744157 616037890 548707146 780054377 156524886 511417988 210862409 51798610 528400761 849222583 92854080 612082022 965273764 920810344 604831922 641721717 181825791 169242843 838198185 636882895 678533400 537151281 729041263 294266238 269930794 924879189 544939502 981987697 232457581 875840120 95434149 412195506 854974738 748905810 373970351 38944844 310459019 299487056 521091462 586432775 993427215 181107851 337713329 555086481 185204943 71327002 299973533 702220892 879344518 811204061 134315259 642059155 713561771 20917016 469323032 277185281 464901606 885874021 888454275 290199653 400419486 116249695 10370899 418744261 682856290 431909429 286682803 517177480 375151054 608091699 294459090 201300587 199694970 881689963 510276410 640269349 969359542 412760285 146726039 714246535 372775033 298217056 15603414 449285901 640019188 591280808 421832966 718167114 440342740 885099910 538379604 46953967 718358141 797787455 397344354 246335009 544108779 806834658 25703951 564650696 760752108 311938900 632960437 420027150 898672780 884250288 833692241 193948685 448830648 765088592 143894581 381120535 270480688 569322187 254763696 991158725 248158973 215419213 473263027 700400515 528003451 172127218 35246324 480360324 222259317 817493811 321736220 542949271 16131131 758007597 958195904 91895774 694115384 823593658 877290945 421588622 795233393 488658172 31946009 744510129 663114385 605445480 323420652 842707221 837566272 279413 673613558 144739867 855656786 773678151 206995861 104875293 390421944 634394527 100350801 306684131 682620854 492898900 768306417 593547032 497883771 755938137 283949787 780465739 129680240 491560803 277882698 163018969 137388703 258222886 874934525 588809870 212586246 235719338 542198942 17438218 466609065 265231694 194182204 305117288 272602651 475554177 645459615 595479229 489362652 373535020 604238480 433838846 853303630 373310876 38278069 261260374 706482296 419018992 433524668 504211173 159937982 324785278 23106193 826468158 232492117 171405938 425752842 961823816 311241731 394680612 716727013 355167004 556745276 581384748 930548900 831173204 311113795 546497959 143718582 330467262 9227739 115998096 965712717 909606813 590838990 613642138 321084141 907108546 147678740 521426265 740656935 220110119 360650366 891425733 165337042 385432352 219854873 531448557 24993647 201364772 927247286 217174617 615246952 570765205 21012359 678656068 228147586 345707591 482181359 763683090 743641205 226848503 971317621 663463564 968199811 812132499 219409803 570218180 182341411 456052671 145707788 461807628 531786782 967248588 690438667 222534484 776246005 832974604 570075371 371949774 772039419 523229987 568558084 155898364 39341844 717478495 508579239 433671552 807843070 133145859 373268798 423712702 792009265 616963821 197995741 219167006 414384080 64791811 118009887 957073676 704057632 657644012 900471127 497945259 30434684 873345724 306709508 356863235 698306219 164419352 70798106 96201419 987881790 70060743 286957756 774138072 986513456 397567348 127242834 614456579 894554952 689366238 79662876 282969891 891275231 982120854 313263555 816468208 924136392 279036626 989190436 251105726 100076722 468848983 525115333 123539455 691175686 457871918 902476816 761509126 220115798 212612299 23447895 64943272 83558249 141523180 80836681 815309930 793455216 742206094 618413619 496554305 668413860 406427517 658842778 144018394 737490414 463300822 828016557 444867161 920996382 532976932 624638907 461672558 693250007 313528375 515292236 102792312 839945842 930339976 914280741 982487716 199058319 689251529 332319428 397161333 787592557 916451562 807836584 568825936 324868635 303778078 159319193 359898984 692611642 127395582 431058860 61652996 550151559 853302995 18988462 893654855 435312200 822487690 736526322 290963844 451769248 256778403 841310979 753146115 21556180 604245556 626098189 282677590 374979179 183575169 819842883 943435501 792849251 243388125 354917228 991067357 679055120 824110257 631059022 146564384 49055323 750298109 476952670 228174050 149610292 118545465 500805395 464534078 814982414 351507423 935951786 886134044 518637392 866835743 425318406 328701055 771282246 979293950 177081983 740997260 489498216 109802277 207899109 502289482 298626716 121729680 9849780 994114616 350854728 277552880 725503492 398241404 516699028 806369840 994393149 382591373 621046587 398530645 423464140 664542428 404288158 967358228 841914448 549600546 274324689 331522724 612236593 699910642 144054579 821685329 988611970 521127534 927062784 501777963 673907853 664989033 461879526 620636106 945839262 865420858 341152435 899654915 159359902 583898670 481429160 117649721 265486459 714230481 895133369 86016815 835616969 433003666 938971197 775064046 45449194 383465908 359895422 936288124 735993477 370159104 332907894 455072712 283366710 83904036 521067754 564872205 590250693 662524672 177580183 175334391 385218563 736477609 944753017 738132581 964527983 366222673 774493564 350519276 98278908 132917281 265928595 753143650 507983898 511445216 826466075 368147745 867219970 180435303 461689801 788248369 883478936 719387135 890709965 368594271 744477556 446747651 245629928 393458204 971858702 586873626 629414023 631539384 659488808 581271417 894019433 218284823 415157938 288284375 832278386 28257608 710127070 752893240 377121335 753260813 687338769 63684558 284079586 939612450 118979272 127625007 101244836 193182289 200486491 571699556 75715372 882070484 910447080 128688283 253238983 887841313 954684981 593327999 594366264 40076109 345281225 964969958 969906766 767420953 58777760 972578293 54115440 784310871 457823301 962637343 141756119 39085990 581291779 880243888 932342955 102166526 248436309 228850710 955215227 97930094 324600110 268046788 204105019 42856952 105834091 266117319 888408216 868877573 766767280 522535859 946586895 806697185 894128909 338407119 712241035 915592769 452277704 260240269 484316362 944455146 727515191 598745865 97780988 910956304 524712737 319185447 659433106 277240222 179684406 207808703 367621926 238976638 19411019 762735527 648304387 922609124 642238260 457308156 592318087 62606216 399431846 482993302 356717479 286819230 746308486 354221627 162226744 981332609 701984584 850448555 828130775 206004391 729692495 914016860 239527237 766552033 851727828 966613496 915193360 792352611 874382463 13841704 363764357 656327603 574118719 847848229 558609880 623616761 522906488 465378881 321224047 709011938 838098314 911205734 563926811 978949706 880395699 75566445 45288950 142684125 165006701 403363628 946782407 517183340 51705028 869976337 47032167 521112392 853009403 632551494 66480718 982907244 917485918 400933091 826048861 538194628 187045333 215527982 761112426 150706091 49359301 869103958 752561018 772032030 964559907 734242435 94958608 46943604 844599845 309855205 221929856 66691918 398037703 530894859 613682520 787677335 577533643 818033834 424364474 25114669 526259191 421804819 909165690 699512069 568850925 677780518 668023011 651224168 327271929 685135201 725517151 263395170 264278227 479793907 2901420 693374753 914618967 245802113 605962929 547706976 496604970 115209949 329523379 617889789 502984688 84706112 218323526 640896892 665112739 977394800 175658681 631261614 830333713 823058329 446648632 817712564 619896470 93474652 85436312 494651807 47805599 618328257 572000428 778219197 29316620 241982394 299324199 991663325 207114921 460217664 874815628 484196622 252320843 648408574 487706868 333330229 603563479 781361853 241417646 497386755 739756026 422478035 359314746 658891510 92425776 14201408 949834997 67166721 251696081 589024087 514779965 365332440 786230346 162681786 476882998 552735636 790144196 256444478 218784739 689148042 53980713 887351535 351134014 311000858 200961112 811047949 534326461 575561945 558933447 627416735 300133237 961748239 153739106 277273239 895502604 127068748 472511026 562666918 265352045 492301458 948795015 278947079 575611165 992744915 193491401 632966103 916188146 927907958 283098119 512614727 512247828 170883453 231469933 945579541 314767147 292445976 115915508 767588061 25788645 276501972 268911266 639170241 802349845 732843383 874058958 382600011 211953031 297728151 624035395 525268032 328039999 317347189 642333259 309201810 319479572 54022364 366820226 457083689 451766998 972896023 127942554 234605762 285069180 574733555 284590167 860721220 105032245 681680198 546613147 626617570 623842378 730309989 229714411 802667527 143868260 717336160 620919215 313982478 850964697 244279525 780270921 15117623 246680684 354442015 162850355 555504951 785366374 727836299 475842275 293853644 289782740 207480285 397824081 560985311 925399627 589407118 810959479 223835528 636359165 708760536 408059201 290500756 38041795 159455467 336848958 757570428 402411792 747476361 944264148 296537459 765343186 9370884 756745122 179851799 478454508 582991466 424484368 218934796 818960311 797579797 998166936 520041211 522230221 123935970 352505895 996075989 387331550 769099894 828111405 21775196 17178202 17292524 693174662 550569567 127145768 82921214 832378482 483048538 54467595 242193666 204279644 940684345 717382145 775473714 669901907 759297095 564014219 689800611 624261847 142225410 464151395 717769253 725023262 199426558 772587344 587956677 535345516 254014067 886953623 903834298 239496602 583096373 176049731 483906174 297048441 789660283 4080320 623422120 269636140 189278115 39931588 978584127 51606881 217405279 237102331 118649953 856398976 274177752 128246253 984074025 101686824 319073998 4930032 285341664 765374953 168410659 987619667 748008585 323604826 528223548 583342819 891924130 22245821 280942473 799536680 306495743 805211890 846484380 37451429 563822066 468710904 941245972 108980316 945185315 852625815 543424498 330592250 247874771 207675993 491286121 486587843 892603845 516333089 77921800 358743423 606041569 63096393 952371258 198200761 719768187 592047832 979375944 260313854 174195557 881067067 975697632 694599011 473284611 846108387 290049686 257737545 56191332 877188340 719766228 665359607 708960799 443305303 180927985 823397223 944909435 471918740 650099859 791795734 148047411 180293507 332883590 7103676 813748671 251589817 153548084 244614782 155183401 659811009 287603467 26694704 638772329 973263110 157887177 757561729 924851207 59208483 988523699 507836207 283326311 204235108 608935040 395055947 704124732 611490625 791897943 760692803 462775438 448739742 937202996 842668707 698842999 960052284 678028034 338366334 862126051 305055320 813999235 702834349 961931811 652808905 619783238 816620182 780256369 588133620 721770603 451339682 200188933 577932177 582979043 446405674 385359220 12870173 55996574 514701379 502988005 653842438 575054363 757513840 142056583 12183403 188057483 129413564 675262651 159869612 186735765 798738178 174742267 564669777 164987973 311982233 225921017 799301341 521751117 837379890 828464114 546116901 723405292 29072724 947075988 480728003 785879079 964713039 722240415 591718147 649804780 456239752 531465163 751599997 318517083 736848864 183229419 867458730 64046158 463336156 208791254 53983429 814557115 177612403 888487273 610958905 820787464 330056201 874930054 336251843 454288182 833496687 487887589 922271001 61328121 726383246 322118769 156019387 423530185 618977579 542224459 396493539 408060957 887776633 431740464 507227083 750349170 945226830 558865227 618267391 75023052 220929598 306721481 251235936 889008446 541059548 442893089 774808321 691876352 166494525 590005389 940668390 453411494 800155359 233391328 134654716 47468414 166623332 424387840 47286194 269193838 765237898 6994881 211452147 616238486 284949106 893567607 864840241 555947725 866777272 779682502 215282896 515548516 555274307 995046938 797245119 771789440 553447377 743099674 334568308 461351405 156959496 981580039 460891924 38963151 423395701 678678083 63631361 255707484 268243303 181715059 436681208 525853699 126183617 609923435 282121263 656380933 332669972 411761354 665401060 217489106 689112277 387959872 275058567 265144878 943681273 804987641 354770565 98394717 20282163 1063450 987495502 133189139 364351398 594783722 355727837 380056964 481053127 349762987 960497486 751220987 485753005 130336923 24410771 971456797 865809557 960049797 938917683 906064620 501266366 481446563 170706360 836845221 607915580 629465678 284389528 645201506 91396762 768964966 346418529 975823175 926549220 163011862 270687463 489960877 133618617 714042157 546742912 186589071 365669250 492574123 150828655 172565621 682809899 364579512 83108670 71620365 41867648 862720651 288156161 890006521 734303958 925770186 884021176 197781552 326905117 14070623 687042987 177953141 844564419 447320479 342945903 220898562 658228018 42256747 794188339 340621250 231431238 72064742 695427287 897541391 599884363 938946833 643114658 655169430 124519235 835368752 856890574 280093024 82921941 375237050 92931750 529987144 398468137 247417950 174922083 573280331 883308913 412174722 144534798 542304235 754786183 583654494 758406717 175197225 701315312 619468237 453531359 800577295 146815489 28023633 925478810 378341728 511496003 924026572 209761955 284581582 45854817 313284149 706604440 963780503 485678240 610997770 347518313 804070340 550460624 247360939 50404553 517369733 661427259 283167037 343294529 641205353 983776172 7665385 280547629 720407786 533221585 440215159 783095567 775792814 10665139 91164667 486006560 858799476 68899519 748571737 794179799 482999850 43624762 730250453 480479436 174985176 890488748 988863656 708734630 787720736 742457513 358122763 566706917 46243159 920556954 329760328 209971206 793795090 996099937 841074689 859330784 697816072 41870771 476968417 782740818 337710716 804065422 459517439 981289574 826385373 680134033 339629466 883051257 616304179 978306079 424733624 33057778 764195888 910758195 685315175 52912099 788426174 982493112 225137789 336396014 622395110 564721503 337561816 733325951 410666175 368771700 828926547 916385422 882436046 171535812 302402997 277631245 107957342 39891825 463831767 446353997 873827584 334431535 689017141 877132465 181904949 230278309 716388358 381831131 985364864 334496941 160074131 566037462 415891463 416730998 306831350 718725280 230001442 445824476 605133626 319270518 78290090 395414157 847600098 584666430 53205073 462812119 836531637 302300564 432906864 743729774 612923538 814960446 133144208 571190393 798050265 536962782 280331586 978191502 992307162 981107711 824438235 149586346 952097506 445404718 54914227 906552810 860104884 161443858 3749027 959577060 824692522 438251953 363723732 206541225 739568424 351900572 337241020 363116008 213018375 640014902 686760613 594413144 101907308 215437443 596995631 181220211 806141442 883842552 261252451 205274901 943457312 266948801 784148617 451041571 441022189 55870250 472334506 751554832 481169964 919525885 775086438 237492146 985179988 478124092 968404896 679960676 351407095 376664178 221443821 657421039 465358711 427766222 39193056 236883303 909804737 230212656 610205909 783057620 130911291 900538173 64453277 557745161 443517038 293777231 318071964 754592703 455097695 962973422 50143069 177796803 216342846 12773778 353480803 33203933 779185086 634142890 702679704 753625585 841060116 338376852 139680577 505544405 828116393 980933829 140365874 252735591 360864898 579880936 17416088 477342868 670798876 198501156 816466314 833023485 643524427 724994824 105945528 962928587 69549209 723594806 79191839 488526901 177330920 984268504 397206811 769451588 348346494 418112374 376831127 398345972 530371911 804809625 863657071 290390767 855826248 302208718 395242035 860433001 610607815 648915657 316569755 584417583 33226347 868192735 9622824 367773137 894563061 378170702 587056034 290459366 263068103 745667833 610136290 431893748 699380174 623066220 435012044 382346740 259182159 780580360 214345862 483464880 474919184 211551179 764322103 854046406 333875104 573219960 808578834 594976000 452392434 664905158 994185003 860014906 23555738 129983008 605651807 290996869 667610420 795247367 873790419 240168873 737450182 56029279 577685261 178353065 109271273 779480244 350432272 231432890 416959059 860361754 140690263 179549080 271526821 475935161 176916926 532354574 748053423 717660355 204207546 306653590 627439246 743306529 15565406 89107574 982306057 265555718 376659540 323543016 419160421 780298598 98099567 808155569 550577989 192989241 386166211 321494605 786940924 948036571 294924662 622429697 452389099 491690634 609532048 643022179 532800078 379075443 31364271 587199377 995598506 611899133 929896214 95759737 417228760 846591611 279937075 463494940 854142591 343547832 365912524 540835219 442736860 621670615 966148705 704995089 550602883 420384349 184654657 80096195 191730439 605053345 383128791 137841439 870861226 468400881 361209241 809431778 466231970 636154930 290805649 620606491 2807779 541062017 970234587 445503387 122708564 807825202 133999691 908899635 248954000 402528877 412098519 450143725 710887171 64514966 707512710 960085544 588758901 866662087 336491694 853016975 901460980 605220462 412470053 146395267 882563810 718815076 581194941 751983905 214224138 382652313 530371191 484373115 256266225 655278730 560776028 230822591 659378718 767423467 583101690 921032937 533039772 917146517 74885306 670911907 764552027 941807356 175257189 968801518 375472233 737954821 96418708 201716104 915953207 660257047 543428953 596100953 22537568 205121061 7829763 59226795 387142295 765026114 386023370 553378386 7284671 71006397 658995114 207841350 171076230 341208799 893391624 89855428 669719530 139686407 260546392 487068784 908798059 144727536 284932205 976958292 302217347 217830458 219891910 181188402 949641549 311705873 907404913 780648599 552981657 623641421 866237008 459423801 219050930 697984563 905640223 577520232 869544947 459215772 55097014 916771291 81275266 570574253 51118742 908332358 881623967 420016176 92129184 506741478 942227562 155697715 556726283 632718822 328664015 843622825 178970147 131576680 174289812 971039973 8185733 208190037 160951250 846855126 901358737 362155693 910835593 223606912 19239299 605444430 6534566 537932982 465578630 822437256 68464473 944248396 623886728 460750534 737448931 709400641 448414705 136663098 691501629 413249705 579662407 279587641 390033362 711274851 353732265 235999877 996040596 851255488 619363015 899225854 4980478 528915450 21776765 133929953 877764799 135623373 186155275 972422178 876746116 685979878 560959688 171458326 962334109 887675646 393924555 205109776 191105206 806897689 29115505 843569947 469117489 290987261 869290013 356536361 958232962 461427228 338656987 587052044 864507403 80371327 210654336 864611218 726689224 991177477 448135559 258627896 462181373 175635995 288882298 620609887 394557190 326104720 139677546 664832631 661650183 785829327 685654184 231509295 274742251 349277597 555062131 234999995 158896684 938322053 581611140 216608330 967095049 310965463 210780160 358925783 841533980 219097484 916631318 254622480 605900750 340436492 633989567 463358879 568080148 175171360 916719134 595638109 642054945 833878143 404268161 167328266 667558809 603793033 928132136 238280859 705738237 363441919 877589836 571010293 316557456 438594006 186874930 84431016 311791693 352911627 620943646 256272323 106711106 90334666 67916285 581338225 740097433 136112435 951379693 672886815 462790992 557889239 984484530 637168608 485527720 171547985 248446879 439102077 20320037 651686980 812848234 761351462 994909181 771463120 77898775 494019984 982387094 993081405 395186053 258509882 530284443 435918462 346854023 685206403 963686063 340731624 421494516 330614276 844087868 814088668 882853970 925273535 308075699 951534028 492994861 420992222 387372255 135385061 118031241 557363743 106471446 703235580 704133777 753703865 293147710 925521917 266680656 884735842 290449488 391509853 293781412 245810887 581782342 15938272 548788357 338693342 180680780 155873576 608094530 2959816 615087913 118817847 89118384 252509132 271626585 923389140 992791351 208349925 143188413 522968206 935862307 314248207 234715499 410348207 509761024 183997194 179897397 465272430 973555070 81626086 962493862 878682718 630362068 715326445 29413263 587199659 107081300 376350597 818906424 13564115 961531162 655964577 35490977 366475577 201479058 620968247 247911730 665859809 195539856 627531165 654322513 220612318 93968371 456728517 482331959 971773997 534097700 866142222 926885634 63099779 658130104 872510522 31271437 183335164 196964300 232250592 207591563 655968511 341851487 757416512 949661251 46909430 489389354 66132121 981293587 701544460 484772139 367757176 767802082 833721565 454193580 553799407 564905975 553731577 348775961 894934838 203819002 314708880 331922912 363449338 502969723 959467702 437397381 184681045 990682642 6580897 31897474 577803297 351442716 533969591 213577800 293722943 404370040 873130317 918463273 388744853 525231518 831447959 936425798 970079972 206303127 408021374 575526315 645296840 436546482 970402424 810972039 830524565 323171375 766255733 303081192 516061882 502584853 319552747 69336032 536645305 792312646 713122182 866642429 833397458 870610168 201078011 901873509 426684779 803733321 529096682 867039296 968012495 909620096 558711912 917482554 609651291 783100945 363244500 567425776 832890867 820047166 465913983 804299090 453110898 347268436 978463982 362021759 314894666 690877210 746991805 363975560 161429009 889257785 124786202 387426793 821002735 325645784 614811845 179540213 589111936 350858280 869334296 74071243 452461796 698909175 337470478 670907671 192348396 451168538 58491507 317702592 262365760 378904912 540871026 645973700 797907658 742925969 513168888 657019980 647249806 603574874 908911516 489662053 7586665 480285719 453375091 550195952 383687403 778776972 373736960 189538498 761166988 87716228 584569377 133667066 31014619 827410457 870280481 976747968 981949232 815469332 180544647 726885098 465946074 306699073 808859923 488220626 581031527 894389410 974717281 999776088 452740945 391676202 742847150 941782153 380664426 793500188 567538605 655945509 847409820 422839227 59038041 369029303 196043271 318080171 276557294 48349443 639599372 208705762 509360511 365233719 736554010 136541848 82981846 554558442 259674487 983701335 561507885 789274303 889843993 378061819 160232661 677252346 796992203 668681280 21747130 180255357 54216410 314169874 898925494 113949319 471587286 433009808 565526691 991974393 724063074 941427189 816185257 509727561 661556248 975707821 718329799 903578168 415631937 179306782 24122070 424194243 281411307 608365377 408316414 370063148 697184152 412041499 790462042 543125130 910744329 894748928 115695171 903671846 782894837 529589480 316221124 409329145 741984641 675166834 274454031 31071263 102596654 5609467 785858663 859749652 570517668 856314304 795936871 750817952 681453719 143649534 93259200 388755204 275980680 443716602 908751689 58080213 409133170 707412077 776397673 449619249 727422209 401364746 670256693 427646925 723152135 974229370 101226166 676794024 321819028 583401046 635198756 435909000 669014160 306366205 238974862 82286887 729423179 346063045 816289546 201559323 88895858 683131643 364021387 816415882 982667850 568951113 633110745 181509756 213491909 233728486 347325573 927545405 557662801 222674147 322862301 595021759 810950365 466292402 170371518 815605328 665128298 39601783 229915009 674374672 214164829 409955558 808522014 895256581 836600143 862892504 603967759 274744263 726391519 213212465 531297284 262119458 994949632 432403661 408718772 951269804 165992671 23928819 803644556 974475767 171871821 630331824 782828334 845855424 714642612 756341258 891144797 564134194 923260814 913758718 938937058 735098050 102833298 448257239 397988955 456660070 606295520 278429375 531624041 586521789 501990385 626232192 587686825 509678164 639604005 856981316 958148957 28759980 659812353 555572865 518925442 42888336 492599390 743898516 430318317 315548243 932811779 91561471 648995444 581139235 102829812 827582391 272007466 200560204 301153608 833117619 107862734 896728406 931871267 546976294 94376511 210984969 182181593 36649771 111680563 394377913 72341388 857656658 76921075 354650872 833723969 837953433 697016414 287607855 251066086 989165203 675911312 506491778 737989534 813130143 911954150 984431981 532428862 463372047 689803843 952435866 570452254 546927177 406620864 613863851 74983361 331587624 564130960 436140906 530875115 816853192 90464210 114256546 327384061 534994159 430613290 841393606 675396922 950707427 132941837 427068937 796881743 389283160 374894173 650181092 165153019 350877524 203793416 762750157 241033992 458396081 666971826 248138433 619008253 983554353 124238662 859405078 494796134 219135497 796471425 791289063 812797300 106985470 830331332 602273388 855275056 494421344 71255097 295512027 780457370 661297428 798292398 263031448 969903794 185040480 499680548 507829999 664151331 504409861 474044491 469247358 954679017 373128579 347273507 724419871 712088109 931679217 174249533 86080683 520951746 655177166 697265942 241530958 410256379 390806627 95316209 24069257 999748393 485777870 721056392 60938908 724242611 99164623 7311321 419318373 470007311 418795967 140579653 223950356 894403986 519836986 358967413 264644906 933174122 296761690 450394867 562188780 558721482 493750619 907262313 713246051 948561113 202695776 380494642 970477210 761102330 489146702 408307043 209255092 288066868 764792285 196219375 65700064 154069486 367154849 605055822 618505777 145073887 421222501 72653733 99225511 204374399 97861951 533006943 276096979 315537441 21521153 142971404 832482053 99541831 266192463 929052257 22853998 264912738 786710831 250302849 704412962 124140471 767947875 989638631 747694538 447584850 592688296 777392536 744048482 507187907 543369612 126895083 807171930 143282796 838041796 658340473 85963590 717730169 832122197 880914584 933450548 724280822 89729318 965720603 290325060 422314105 175195690 588364220 998736983 283615756 785509381 214454327 428668808 731580803 165898170 224622096 427836325 619436850 209750153 989769791 914910025 641522350 794520655 305380264 943316941 783853863 65883557 40970714 519866292 603707026 438522399 701670149 892636173 636506428 812428979 650472960 642933164 339827481 549269027 824521611 73635202 952149863 878867959 694793362 510693368 831903317 615186912 763828601 530258084 164221370 240303631 184603015 664263348 137195326 528525630 732270141 605429184 493356811 295563807 296847903 226475237 341019445 901823077 635295887 22420555 999539635 55453996 566161011 927807129 63797595 603223796 752631830 346931127 347598690 651946812 3732362 630970877 244553366 675884242 709045388 190457566 893101729 798880142 285925601 317331294 998117525 667079241 208411403 927609609 431904388 587211787 158722387 810564159 781499310 61570660 685434996 243594932 143794005 652754783 644725070 173592078 719114478 554257723 714220922 864190809 913755201 315559394 849718089 828499509 67175133 709797579 702759218 163494500 927954360 38409681 335930046 843834735 417722974 575831562 380425637 57078339 332035994 53587849 771179403 441182944 159079447 716763990 187357046 405629766 454671667 831763953 94273254 859326716 805155622 495289332 431374139 869198721 162812545 21164997 806150131 680084876 15368741 991413010 71090376 911172467 569935496 501432737 749058941 483479041 970119227 325770254 35559127 746968136 759923208 716898702 754429123 702155336 546845276 316405244 923593848 729880766 60601191 440571380 388726058 782138884 274761068 792205355 774044627 725687429 177106651 802282396 112351105 938274525 190240017 262710866 566913205 722628473 74919562 883419573 338011344 67176173 245499923 995040137 665220249 240344610 251008443 663084755 592820805 818215034 696779306 543767882 573760085 204064090 316283983 738703371 571224170 625213473 339804004 966184135 180744775 113336252 455003946 420696128 874766355 804663050 410071606 731291612 940661861 155048047 707714149 177117822 839016981 833389350 248312668 426459662 94050875 810926338 820077681 876581010 414983999 321131635 728700230 684870166 674802450 912276557 236306435 386077117 255388005 687491272 636386995 471238796 316696103 131154846 551871603 378422649 651254785 276244911 88142649 863146595 811490083 564142284 922656846 492437830 148126368 769756040 984691026 467290422 946105500 82495442 668117302 447062841 862508753 131700417 107523273 438069426 680197165 104117176 123068818 980436415 909553227 603140258 250197113 722526527 490429528 134853153 549095713 512814396 395501531 459521693 528190451 486539217 986561816 462643533 633805614 78078024 134587169 765758085 776667786 162295427 968267897 454250986 926508332 124974867 820423435 521771122 197905832 308265594 507053307 529031561 975962125 151713334 74593032 73068 270501770 496292999 10124546 589424353 901969560 47987605 248592577 940693671 524867753 569239135 491254822 549319571 560405136 890715201 387770582 772665269 31634998 469090208 874529890 293912558 33996760 959133178 635709571 509701616 157979713 921584038 776113051 494446992 438934430 901582833 980507445 270772645 103506406 632701030 149807510 847788300 506621168 9148053 873000401 881062652 571363857 25761156 87352056 883906142 189342259 285870360 970197166 110081819 692186850 629003978 459251432 560677042 940666154 24424570 898391551 258492740 876204167 436834982 124796744 607320480 405216088 908645178 979587943 270480031 140806070 289378103 824642196 322784029 581117069 272066935 51166791 288500556 517059771 658676714 760314349 424876668 48048066 980228432 286492385 99192045 662807422 342826043 288018076 142240862 736495703 869921495 959537688 453558454 931932137 389427251 11176586 842772885 619980386 180010824 76392300 117943546 664364737 139619774 130216032 393731448 291533603 132087101 110091987 119053596 743740048 91391656 734435309 326710259 311345600 753896020 966874855 257679444 179280481 957702689 238681282 190799410 267660353 294477592 40457652 451637250 904503092 883883664 858621101 147058691 223903915 43384346 235602862 296147215 27412397 726757187 282554051 448772224 281444504 329098126 922894852 685289904 132635129 859794005 952147304 877418147 850950932 562920508 658027601 523344913 30800978 829446867 650884298 748293214 856597244 796243095 74078334 937102023 743926913 108604891 400287805 611620232 166242466 563861819 313520424 378845875 219820041 279844579 922139976 721984576 287251224 94470696 238117395 535859001 669694256 876222594 608244002 123810903 44212346 495184670 14024027 629478463 364685475 769524474 926008017 415873438 63083186 597660892 982842346 388772809 482205735 662625558 303444843 14654684 145321475 900259481 881928490 365289969 489219260 208173346 44747301 295383043 375519934 910843926 400896965 993674920 695943446 306933694 934740885 502615240 96570622 199481186 936834777 948602129 880194571 867572096 464002803 384304212 931277683 700637677 355052001 171039924 957519841 433588313 994742635 440989750 935063054 962146710 64141898 21325105 292947807 419781301 262004852 553253251 818132010 126094792 43572895 201836086 79449704 387824218 506469853 666028492 213847485 297479047 573714389 619026274 485783651 657816596 628746200 230597598 61492387 467154637 411932029 37948619 904798965 861653036 702598658 638259359 265450414 722000757 918288898 442366858 685567452 381144641 500574524 674811893 795296943 595889204 97860974 392892001 453267311 843201724 358009476 573181904 191728851 858295986 913434900 312423156 319498588 729639375 788541562 36856612 518026304 982764406 903590904 127524324 856643812 656430292 265140588 631568838 525470920 90622572 559425638 777318799 410544168 382769259 616090748 890917290 878588797 760726461 586367890 42279909 482176386 53114365 131844486 529584362 759092946 844948673 509589163 236876860 273946174 563384119 513304984 582704578 955844057 641425040 412237026 745760733 48566108 250901836 687556022 828794446 43601143 680517484 508281372 586045951 25105263 633754636 82368085 395680178 416939206 60753149 132420651 823623334 782343552 399646313 570678686 83724805 530311995 192195534 718752648 918862794 366326213 966272780 500071074 678042605 309794717 542500095 248066848 363184610 121038243 144430649 83916219 958055346 173630540 607980629 677659770 206980957 697706973 629267476 843630594 923259255 224322952 151902914 842203108 2295455 116578946 138277345 355284834 994291623 249440060 570764207 865229155 815192037 244739460 653182241 325052788 228686898 667106735 518270501 337580549 995928533 864773318 853691379 550689551 208057461 583250498 265975972 413540900 886762084 496014824 769543367 251805350 931666098 982260902 853743862 906669532 587550891 290993590 81679347 725445471 816715431 417267341 383185536 806612361 582842113 175837392 64056018 797221947 850263235 85980715 573066648 763776191 341386581 381054215 583215345 284991815 628032413 565458686 699570470 162272163 795571608 630793907 733172059 681165475 289075402 450509450 856814405 911416807 798309717 802289591 748592641 412563704 976542482 41676280 678212214 347122238 309464558 866870590 758354774 480769359 97786556 379111850 640398157 232731963 777425033 797144678 108231598 393465779 427175499 702873346 952222384 357405867 589487443 762285571 902325061 285368361 77489598 249660427 525257972 981203363 99511975 996870225 794859404 990865974 78125279 529853684 963285536 830523021 360516618 492884452 875755743 296175581 720992024 141162454 641115658 199459260 100087965 695811403 24487799 15185771 959675827 35600220 90522196 283741687 406429736 569555607 146581124 809396677 22887178 453541548 780982829 607330929 852634341 868295000 212375155 727670847 376277555 957872751 843371625 445756051 271873137 155358020 647979613 126286299 750524926 315254336 138048277 618651688 137996981 789777550 34598286 324753025 845557896 792666245 915613678 884414382 652529952 647162923 976533301 908130247 977654344 832473851 359757469 158290796 877275982 870304662 74428919 899151069 291245468 725408168 917006808 421392089 299921105 665335416 870929809 481426065 671263446 59582548 764890659 399263059 188253596 879717808 633509296 790038433 489585110 908645837 509391617 667395066 642060581 415049676 228807023 890806754 40983911 927195982 164704069 789605020 204532574 155381297 483430770 871540469 650813880 89666406 849810647 451455053 790247446 821925804 618201803 994714545 565996458 667087709 887932804 688059510 767585436 47618704 945431558 114566847 326770097 807485243 511503822 591604573 445484090 748261290 873900848 717232119 962283501 839878169 147119594 993365581 1681685 868057469 273675501 302306493 188980008 747675061 956036126 669287494 126434287 20516123 129079209 930547349 471096440 940012574 99594662 948805485 68127953 244758752 763784317 18638041 548980405 731561857 697321439 842204642 782972640 725742572 118941649 142127135 182119467 488487445 521676114 772700866 549016462 459217833 581307574 566273814 18441762 505306159 17500712 6158767 306095454 228815625 924082458 271398924 159613212 189450807 924050047 959569818 232512145 157864622 572661489 575091029 688068052 473485677 311486434 822868353 266858249 913703696 203648037 324166192 493234157 747355643 910250642 914702622 368290066 750618504 933339193 775463245 572990903 662173108 132169156 674055624 957972822 606954211 154549026 753237923 871962831 395487279 398081814 963091198 874175265 784582709 156884157 254706882 947090240 251567713 522060911 880371044 171739874 446020038 501959763 896699005 153383821 521544681 781576640 940935164 867413484 634077200 684194577 115709446 27004391 379100643 456474496 842330403 128698335 318918897 507861050 563803276 348508149 821725947 753053481 296758181 552059911 449237768 915175103 882739155 983586381 846696865 67859067 105116769 729182627 97667433 291028994 374737092 182384583 875985541 356968444 18625068 122381862 964465420 252250805 298411362 693426477 87583491 537910238 816728886 737362616 500297823 904385804 61467546 53717852 532020631 714495923 247308234 503208337 929208605 937786431 328205797 715171790 593310763 157443100 233984588 400563646 932690774 696271591 969071082 207292115 204171420 659203189 783600987 632521916 554037850 709468650 253692684 762064680 909616654 590935092 801640745 907963636 455285383 541181603 841996114 879551081 306134702 683115680 22357477 620632920 830833586 532543898 912203633 311695557 29062207 780369118 765501955 322648143 737244625 383679194 629997738 776555090 431328694 221370459 609587552 413313785 884681539 678750289 304579098 217770767 80090324 562246720 393507829 613529265 264170185 195889984 966799358 327306483 201396777 653969354 342365205 150746806 26628899 666050562 17455819 22480956 442408588 12555839 1095560 472395100 91389256 258505987 510381734 488434715 969080177 907649148 711336476 283398099 633289525 751102778 465330435 787016392 258389940 561159727 931354807 160703650 406108602 279835514 212472179 814634047 504890299 776037745 70983824 165642754 370114951 876444362 33956840 904769599 571746698 403583766 600689336 700902169 655798973 456633566 708969264 555464519 666882333 8789300 583507167 776588939 28765909 152125941 367551735 910998533 92848431 763314352 28523627 269943944 400926407 50379274 220744381 85610265 682158572 874194769 370114160 980881015 881764666 554576471 597332080 367894244 329701416 187877502 861993922 970773698 81929250 485787845 159462610 826666172 338019004 541921649 788358671 161731508 844782871 365299798 456611212 710889741 779267824 851867245 51148150 252903860 63676797 467102363 622832509 225589749 574080504 955982313 449915777 368609156 999775997 203378869 611341161 122191264 131214286 599989984 753576665 599825426 460195845 242398487 18964394 911787455 598793883 250409890 193499224 616695349 596980142 935834818 555267143 927449075 167089350 447954839 542697421 235839648 770752649 189500760 282378825 803130250 378407686 507215300 336029751 928234822 170817381 89532679 459112722 308453195 672947820 874805529 594647415 652880480 327094646 184521445 558912792 771590171 98838479 249471381 531503457 219976331 805346253 383867195 393107945 709658172 837890648 672639560 203460451 434131343 14214310 820651479 386787763 749471517 701807369 818175399 882310962 679112310 985638741 236036938 295212782 331016833 423957897 990395417 858363589 729552336 879396859 940904994 14061179 213376753 12453058 920420859 312079053 857067275 573018082 79685396 521793605 940218225 366653595 435912159 128960504 150985515 505375277 637785305 660430247 925950599 741907124 896949047 835678381 504810720 401695452 981639976 586622883 303118235 74356803 802144246 572182965 777902322 292819645 363590650 10608657 889518425 337740012 152764569 612421433 193485224 900537550 193875491 518985418 788365589 133871763 815610085 405117144 100712108 38130727 428223777 810965891 560203341 262513267 991202900 229336069 860227406 734335746 962938885 253095157 10908498 768757192 259081357 365562314 776606773 57946708 374495295 221647339 619949505 818196026 136522987 786378843 466235576 663856188 565003221 638180020 743095992 659381134 483353807 425789464 771936273 58398912 702631492 270211973 127336200 573985057 773693160 594981620 764296154 191173645 50854620 945205689 865903846 889473467 841508015 206186748 892310320 651365107 145807462 785519032 680489265 327034358 170260103 472358479 602745218 466131282 14417397 316601411 630013250 99548151 281948359 23913245 631254227 522532362 892876227 112023808 737997218 219318685 790233221 764035012 653219027 357827976 928388460 738123495 746694150 606820006 592577062 802258442 547271308 613232448 199266790 327561318 703319353 562323337 99885261 932322022 115327376 876339257 176737414 306092668 260531365 514236186 546164959 761133523 823710008 913515054 3848717 969459189 308500376 883787807 583556784 621216534 287702749 996556191 53422673 42566278 563465254 448011420 10087666 276567580 227183847 857134729 779989268 53356386 608171082 95399287 130329203 4354907 595461624 319358502 960339093 102537267 622640049 657101361 202501714 229451738 750993586 391110838 987429303 203658247 225505485 143291981 808640569 563317913 876108522 720731160 774300333 352698207 74613336 604805242 378410422 938127229 73833031 265777939 687121202 317895448 12726676 623591368 104530922 603024920 680563951 193398003 252427452 720369360 348554650 319487669 734239204 969804855 75692513 754766636 384336938 713582136 874588794 630972349 618864893 512231077 487442210 922407059 272630223 92061366 344446950 980661657 809532956 543327929 430064830 104910110 509859633 523677011 744400766 553510995 754474897 441246958 513096832 46765963 247790306 576563893 829292856 971716027 272047846 691181273 370881785 489546345 216069893 479211990 391071912 710556066 578107262 937660727 346436193 411848644 996076417 397107076 582191718 75320780 474748994 23685701 496119153 986306299 562336115 224356509 707625343 335501423 8415956 963463734 562314043 698987369 979987223 876059466 97352829 438004568 808787103 41052362 475967146 341119959 668865379 935761751 204880435 424513973 491555537 956431695 127992429 382958504 767724848 325447219 213311231 530315363 69658731 348236741 625210688 718032101 576798718 535875176 52809176 653283017 286947580 697830870 844172749 742863131 69206676 902550537 897293547 423750044 164165753 200968911 881635411 284758278 248827334 872347988 100057920 745925529 628796199 228332263 136717686 185856797 863517928 170590485 529215305 891890509 309174896 328770900 978829005 210785828 567337163 971730552 383078243 36671667 374720788 604741350 16341685 156940808 9650400 144016420 218467220 873773435 210109236 426653402 282016579 792683349 191003911 968914969 238580071 584337012 755276370 683149002 971971294 703880284 113583616 377121460 975560618 486980647 874890102 914870217 172645358 924551834 827633571 546659566 984924516 925047169 569762694 393932971 512049619 793709539 340297314 685938055 849279672 945453614 214195812 471483742 773272842 583235050 213497694 823820377 664880825 647814081 67418267 922068765 316497036 205293611 22317377 799949386 869069322 421858565 212143935 384114131 908082812 915923210 898962597 604566081 967242555 301535542 542483565 945311987 31792892 547248972 838793372 120707558 170540206 644788559 584143013 181218247 795411738 974433631 906693925 594270745 306088782 262986936 222391651 489681727 905105555 115391838 4676038 930505219 229689798 114964531 789573937 819992451 102229198 215499260 501863472 254795586 161099146 54894256 290733470 144618943 299728916 331419488 218067302 758208544 498327977 259154692 188106174 337679739 324255223 379283703 260011427 759504410 720553390 461740041 954333391 736425142 843167876 732039190 163847836 836395676 488022538 333972897 631151101 5221402 969744080 255222628 733758693 410808651 193609592 411690131 972727407 764090416 770521898 884193934 143414770 910386136 184433462 457876328 404411721 531846784 629987107 198781017 111323489 862601273 835457093 317202031 884760671 791651746 547040209 49784659 808765841 205252053 460942825 515427990 558714577 629137500 957067553 662457479 189620893 357007794 985887194 83728176 142893500 340163921 674746715 933361985 34687472 549941415 327824770 791754930 236054961 555292365 280896722 866097611 336812311 868405918 574996237 670124903 359352505 56044935 38538399 27673405 108320928 501025944 875891160 635837868 557039788 26873844 385095633 926529811 291327666 916009743 705798818 145020189 132812495 32557874 310106935 89526163 148434644 297764695 542556204 181938657 830001539 850775654 162625118 840511204 622086115 643388239 48355875 164894648 57260530 574034770 912230953 754360416 966393383 535290494 251585273 679401880 465178618 888911309 937389669 325650959 161016540 781326131 530938447 628152142 820627175 48247532 725597549 49115990 225927753 94224797 577790882 397176360 551428946 135196779 844204782 198935014 770639082 683514570 392223620 878497523 571315482 176258375 86605688 539580083 161583982 730017336 710746567 860843069 618717521 885104485 901047814 605451672 837128679 980976886 715142197 229056318 899991551 236451404 325368836 405822505 253996904 658642791 428572298 95943972 973522680 93649231 683065817 801186421 19808474 264543424 941797425 958502024 931037018 239510601 215712502 470474003 936839314 82280227 658744780 621698486 73664610 191466922 372358952 429203271 717412206 281559234 335379971 585831585 993269899 28746319 866935362 83450247 350391466 894451302 514222867 540857238 754700403 986784163 978938456 439022853 149034930 297299198 82019265 698215249 4041392 177911023 980231366 804113613 299815137 894350228 132192442 371886263 699468583 90374931 615638674 21345415 755382777 664582277 430443400 806899797 543786195 38002497 939047242 370082148 828866338 695039952 744744909 99424234 853427338 4196644 382003692 16955194 754654407 238369809 993428804 186748027 828471534 196130858 319364339 678114732 526031972 296213317 94299927 142925652 947811967 649142348 273055870 875753548 192422753 949359190 503115998 380369909 934970711 21516091 482325731 981610674 636796490 374719210 521440190 788299367 61260089 350112703 396912219 941217399 624334536 770753552 449382209 698538651 855836936 160287096 364871532 278121736 557880575 931471920 472572233 546442325 582062150 234730968 532906346 313418520 766677236 486081806 283705788 935002682 396254988 355771741 468750324 749427295 233999466 700685130 237920023 211179883 141135679 95218458 68293786 312105294 958256466 277276131 580614348 729455143 926662697 475154993 979912330 584141068 47657947 23572399 75002887 270322932 792473885 991039082 185739131 514467132 404252810 437846614 735435688 728433738 729272973 836544345 557569833 156989023 459421365 178946348 163185421 501167532 663026200 381582024 682111540 880448255 894224891 985046881 832721099 447919091 895867192 867182421 941416558 720476657 552879386 202363867 721264466 522054253 109639057 775093048 623364171 481596721 35364433 153485013 528288714 810469562 299192861 184667768 48740303 312332231 775554565 652578763 281409876 804871925 571499500 620031269 290784356 191562745 180972966 447662663 114405406 995978119 363771223 700559708 372065930 234489110 434494435 754390922 562648098 177551617 791145394 491113231 237499741 16480039 532793577 509104898 422759317 922416907 560642860 585790669 790075667 737371353 700169749 323310985 351966198 942423842 725724108 981072494 120669342 396880400 449259507 618553201 143840471 713151507 746576841 47596480 862423401 39983961 733988202 610300530 368644779 978403600 952550386 102285813 11846471 499388635 284629927 54772317 37744354 789722731 59619062 254669668 336258937 607953279 942955625 390239610 482444864 164852073 309280020 394756391 333351561 193425344 750342460 412012142 473307870 638355788 586858633 300693076 26285033 662242663 149953803 522295069 233440416 284103458 243959086 328695264 639055598 523844332 563100409 107103050 277005105 586357866 546619572 860833586 808272857 181700459 153686137 884942764 552163568 367828302 569615239 37792460 139809631 882353390 930862265 902063520 33484272 847442056 98970225 448898485 416714829 916354496 614061206 364249402 940903744 634146030 460896534 819338959 954618770 729805043 749464834 4934017 735861638 110577933 343786204 934050885 200811227 408417834 589625003 480558706 474330742 695571989 134308617 87461313 606744034 9692664 166031560 463955720 864944903 694539204 100235906 299903458 385425631 962503844 469858760 258047415 645370985 71536222 927348097 563256620 526109649 528468592 165758305 483387751 701686150 576934855 561438672 999359123 621102322 715672975 418157224 481024740 849413719 118588288 352107028 828331421 257494204 340760777 235781525 108595194 41483903 307122124 414863048 574833068 764715093 175994714 123042395 896455979 528828684 595294494 903743946 355347072 998380224 55326108 92335145 790797301 647047220 866436605 427387510 73181252 898835942 84673370 377660991 489920473 450284363 931437025 19770960 447464044 745715856 467857954 705826057 168398121 706858689 111485952 247272271 324986865 706595183 699791555 73483068 872995832 268054870 153208356 417807316 308690463 70930826 517519866 965266126 248417530 800858155 324412911 411543392 899424299 120938016 807274416 651658349 566550676 593759053 338403760 696863284 963513022 355569061 943434890 241095425 380942367 494896276 183406101 435953283 126870181 822517099 464396831 437835850 679147725 264989290 807205088 329891664 464044655 281397094 542746683 149544111 885983035 469094105 422020646 316652083 608317091 391960361 485865786 500860642 355248515 992461534 744695860 864989050 367371518 224499419 844213086 83323617 53778168 783880807 666664717 307608791 219547833 969736925 151528193 257160999 993108669 58842458 425581270 867389885 804913883 379733858 515804683 153237382 947434563 515781356 676714124 892478671 101463498 518427886 542966742 800604538 824484013 566722738 335689635 644495465 175037698 380202917 412504548 120882725 148266751 364702122 287481095 522287682 234337801 708873817 405889610 868245677 589944686 606804606 703534849 270290101 676638304 274377893 955023713 865176267 264019532 694041345 990931821 623978795 286036973 727845305 408551990 248419890 732770189 24135538 831450231 466639573 593131766 851754561 479522389 605139799 323876791 314156858 558293162 356457681 826529025 905909270 219479996 417028083 505293491 372872865 80460630 657461527 187881822 478688269 140392096 704358209 716439108 835461244 38493221 769747312 204057054 698094074 862175002 953100502 456894600 536548673 757510347 381102675 490581104 754489079 434836323 996134781 13690683 850251301 506649007 609769888 227351609 907208294 868812457 787049514 390458050 184217706 930665876 224965297 505798540 527811265 844281297 476500567 564364475 372336459 95491793 943359868 409867355 564157571 730272587 926737881 499305013 981666026 948332910 697156925 986266085 402072813 289841318 947790886 530318538 634560314 649538695 874223318 941131648 558868203 362955714 97952481 256338467 834571766 941817727 984338605 794582602 660351075 229932816 267156296 146970546 982198738 744276671 776710856 24282095 916889579 800489454 940548145 229507651 296101615 738225634 523876280 271644101 382864763 566237362 685086890 532776326 945063670 66913935 868216159 606166016 852970723 683839189 675138317 297096642 229208633 211589512 33814074 189998954 570905841 821908287 806262294 225393619 519927759 74367424 753370222 429744471 98596575 11103334 289402370 53570107 507253194 738074985 394805522 432089861 200738283 923111 474490308 91465062 423696379 255725260 702082210 272280031 356622167 218068593 324558271 505680890 667897575 143408923 3788801 563001072 337850123 891001016 727554837 132008868 111699 323830916 324690619 3205812 618174750 130359847 734925029 639642342 938113875 198306952 462039431 68728365 49228682 775334462 354235356 475830029 871404637 306693151 970365016 265732678 751830807 520093964 186584179 630261458 903929045 193182341 460300821 811811143 213711281 244130641 819766069 662375008 205081955 827117542 557184913 820773736 913274535 144802267 861956718 534097241 506594137 996850173 129693965 771837620 524209354 885342534 718737362 698246771 116549616 550930532 697239494 724654729 336637469 294281869 114461297 65142417 651768820 382368642 632701969 526761874 614205959 363215880 632667111 133343071 280709893 306904306 507495723 482402806 560444050 478911289 7663410 525941593 244418128 880369695 67859433 251234540 713911684 728778205 107535800 285730050 755690236 742265377 133331155 516476875 391063181 124737119 804655681 166622057 268177186 266588890 527541757 446673884 329845914 9877163 480805396 140036560 674582735 286691275 684433010 268493329 586625964 994069870 446981627 446066175 700649975 822801917 811260526 820251846 571472749 930178285 326850801 443910610 690949625 699344971 623124693 556830400 99970327 662606641 731340034 984209433 510233907 650657572 42887687 246462717 130011963 322390788 878504133 31797970 958956959 565021360 893636439 698487000 602947091 216848242 44812685 850180722 317608315 916786709 253269493 23649631 598268992 602505741 304099035 942868758 202999296 781701821 969989743 196808158 510979117 254242730 323973396 8059480 259963505 388754863 557860844 645272024 475379388 168153888 220114139 907420038 689522254 199902681 573398794 681318851 79378365 180964066 647494324 294835772 357250368 89921421 260231010 744315986 4847307 205192631 395995326 645292220 981414893 504952040 985340156 475226257 907260075 608242340 704465075 860589428 224922384 130376326 508042988 421209571 794173437 630124061 273367373 571718829 315117351 810658143 490743434 287001077 160259326 488439127 772860800 201343591 820679065 175533658 160418807 78437079 663847355 922522527 242785109 853714950 297763236 629039569 30983708 834752379 355437759 107320855 59824002 212765158 888285451 113921154 664491095 145186896 760142813 769700823 610609306 387071963 246705050 639566814 314940311 10394966 781477730 628932911 694447606 174697929 617193047 543616824 677275894 231217534 419301068 510022952 47913003 922656192 852677492 620507448 290359885 281101305 48806055 831678642 911824314 344294434 146861795 596140284 544697080 541233999 353241406 641415646 52893397 550248661 860026689 124344760 540770910 831920173 904350212 61099692 666857395 855215719 476279164 404954846 589559151 283097779 954862553 671172640 75776991 552339228 187662312 354411654 277370172 45982979 991484999 848767775 346690522 576757085 847277962 900126546 770628258 623214685 682827559 783646017 603347745 163498336 998195928 468678952 937823797 337514800 205119901 600862364 800963379 696954015 663649330 648261602 509741467 366035089 220736268 589410341 100062816 187564570 452148747 695336202 706656331 525627996 732994095 126285356 239127800 272164080 443845728 452415732 291037985 704780309 198532592 659487977 696257700 19524911 325560628 122224574 761146662 813191445 769016570 386711079 480223277 982276725 930767226 609858054 698539789 758445741 56570650 258436344 569606466 344113345 346600973 864908394 396432136 407890062 452513074 704346013 371447023 269114748 30432550 830935743 562157026 971601551 456242875 516533467 937660517 409111683 932431250 420800091 299440939 56698213 621886830 924607643 482738131 112342736 642565818 570467867 997039534 538880694 546628413 806929554 352897606 649203489 534880526 690857483 591043540 825575390 58008238 604368954 252729738 745354218 193915083 714695276 828509107 841452362 118349640 857627762 696089092 760081392 931927845 961172590 147824208 17106066 113275387 503747270 228044793 973587503 426875332 617965592 298193277 36931678 943775789 453595182 990390898 615517075 822302913 792067866 567319907 441728010 876454248 283005155 804734836 8313024 792080833 711356046 415947400 551768553 16295313 717104753 804026170 310418256 834821218 89267207 45295898 723090253 868945003 370091881 805522847 314461521 521159650 687019835 738530504 518096584 988184964 437269523 778032117 414733193 709698541 8296506 576328824 263340256 805399940 79289200 739484863 619660398 592855572 598332092 329232230 862868924 768177446 4422602 698068491 94624463 216997598 383367880 204382061 640293265 425144758 163258576 331792822 485402802 993032516 849330307 197383880 347050198 203573187 862409472 986748609 803029051 958743193 834773274 33461302 545466497 619141597 305629578 582359975 818347973 649179943 564439871 845126221 322692682 431904556 789732100 244241200 790544193 745502816 786565957 69516416 671009078 230981513 583496412 149124235 707328668 195851710 746193762 516105001 48093912 608897362 361740174 506733305 216147731 350660663 774708716 103080877 23144768 598695199 752613257 160800788 118570345 550903810 468793645 924881390 710711606 982458137 702440487 493532353 964791795 244439701 233562710 309946270 18145132 677688789 805018133 800301457 500268653 208155482 898531379 303785034 639888497 637531418 637047880 160029542 520683858 39284905 92198577 942349139 518585569 789931657 854233183 200672130 720189581 293652140 977786824 243962327 888009845 440258284 239873110 893165868 245068927 25885036 315374136 2447759 932560082 261001669 893331006 598002722 466458359 666385651 319498251 209516476 748162529 944476853 662597599 990024175 143460226 958892354 626217912 767753226 52408236 75157739 476215340 107020693 344612066 109533417 13309505 563816997 634276046 788396488 526351152 560937356 744459886 147862484 79401140 269220755 862974547 216486391 126663447 139804092 356330821 675017599 4341103 273346750 229743073 77279688 336254717 675396491 742375420 385967836 423493650 931107856 24826919 390599366 967660348 741049530 773104369 958985888 533901351 516795546 181472833 542588763 31951258 241984416 725014588 88069121 922946070 377566766 663749660 423612994 780773170 718343640 434897149 883327775 702844191 220463458 476734655 744372483 218325660 530402066 871791144 759676458 10470911 344142146 930556587 770429750 881012411 241706708 760756738 309756491 548873582 649859909 973963253 345417816 994542166 186735923 698910985 131443523 669386487 144662130 47353040 203493090 300679365 475268145 190251128 269299624 824384308 347164052 312130309 944224941 743736646 860798914 181414752 514827571 752181638 414385438 250075771 697694344 134038672 570023839 326052192 799558003 670311201 388337473 643489997 996318375 139173243 30407456 248368939 352198711 751019606 774064187 942369905 986994746 333466108 408810962 305864391 951636444 46273241 554114122 830478925 877644840 40515937 125096168 178165498 382129968 61118445 678576110 112500850 103173046 550014691 757547135 209027950 604745906 495099662 518185696 350427190 288315936 768115433 153732622 201656480 232055982 907927149 939554817 189086505 706265474 343925072 350072306 749120601 190025915 804338869 19758852 742879387 669565324 631207281 222338182 759668032 43016045 583409218 519534375 152055420 379476479 687205427 114040330 341023204 936895391 456645536 322242412 223228137 733765452 967573422 560425960 631833423 882241174 785207348 583959721 699567250 743233654 785395631 553640494 718602731 314554134 253805117 336778045 254218990 588996919 883705274 64271606 895584285 244426724 219724616 719236918 798070598 902530363 836369213 732956141 729310211 870371494 53164154 47452630 439102252 116044519 100646431 778309058 580463791 643957614 647863898 235470430 673156005 855103140 509429078 977063125 665541491 144028634 414545950 780730852 576695185 420737763 337320294 627817239 391094306 295050731 256642444 962429004 975232177 472642859 78841070 882416187 190183349 915275953 216476452 628122369 156882259 850900473 144707172 630320098 676129425 757752371 381462239 350513798 992059635 759091297 596036179 622395478 954426077 18103078 861760637 268692337 741805347 275833228 182854444 233770508 762958235 718060713 506909055 758113155 3461004 14122292 620216832 218070104 166855247 1770306 302934132 808060057 857498248 997146200 890540126 598979220 501927194 247594551 390630554 758545978 357142375 157489442 999493452 858527596 195211561 259753479 586907672 950364722 186422783 578500711 329839341 361652508 395920727 586083871 24442567 908843899 372936077 708108799 834588735 23914021 500273667 785643631 730647657 67436195 534092120 367357329 206262488 62812917 193145603 690165152 146327259 469529594 350920550 604585261 972371617 322255044 523257333 49180659 476923695 453048428 267572953 382285908 80836780 905978655 281827371 29318373 492864086 724167204 503285618 386882381 986442937 860955362 770120238 53747545 761257130 693108829 441196364 934453142 275663930 489750444 689443593 201358881 970123460 280185507 689856526 142953433 956478552 992418907 430730901 63075129 448429182 265662083 467538046 178147710 494970362 246429990 588015848 689457231 320400885 874914501 535560105 614821211 997834426 55527165 253765834 835409956 998249882 405047976 551036674 701836150 887776623 99368496 110357223 716838114 139733415 761754576 528917345 534121634 18133914 461630462 347971840 902002011 931297115 563471979 430438622 56779457 888660935 266745697 285694141 222995902 577908523 641085668 611020802 661231698 406576420 384231266 201910188 789323805 657968777 168343388 682090045 411760780 168385445 508334433 89780934 490522451 798013851 819974932 237458992 297369309 175573923 88290809 97128191 536437069 571283227 731526929 127910261 614114581 30414536 680346799 987700426 195946811 312452109 989552734 572017144 611144397 424755934 151199626 532506736 894555297 154390773 170848250 926888087 853907903 80997080 32299877 350477779 17371584 507829728 792203383 596921488 345832093 833636234 945367988 561058872 993684901 939242236 983932531 166427813 193250498 246212085 672114450 335213613 308173825 300263203 682584933 259654740 453465646 306975898 477554878 42294199 240995832 706298408 406859938 714185173 194489684 913146293 648050813 244373218 596715618 879231384 861365586 497477699 262300522 16734041 73802648 640344428 645023187 739947110 802741795 748999986 675624691 698956549 300942293 368431306 342107737 763004563 336298052 770162263 374576126 553643237 547782406 254905293 65985989 149313480 85046569 117241727 926365962 750274420 434065766 629982651 784689107 550751074 546458326 213337428 556412145 886345748 848117704 889443152 61158145 476966904 940329336 764007502 934518374 467587217 815042335 699459692 393233523 578359555 907609718 424540816 187340310 846371640 960877948 465726202 396183172 5710770 684246904 48042126 753841599 314575106 121490531 425235170 7145450 613240660 714534088 292111754 420711056 555682963 905323098 483797390 675420252 214855939 507218164 623761913 625328085 287619692 218874913 512223769 365987659 845820876 32049361 933508949 912311768 688640515 641311839 287106642 929395436 465635495 818425225 393691934 435136243 889254451 485955993 801035157 954260010 710046086 509848145 488685052 127316319 114281972 121755837 519589902 849237454 72282986 200948010 818549556 126532288 555192892 836202969 307452253 274595477 438621708 359971952 788972989 358868923 299504039 654003937 620850858 353684728 610910807 909855981 531813561 775222230 823947682 560462743 718359090 577020055 65790084 894288692 930789182 240615259 165901612 838930353 691036957 313898413 290176746 281252187 7155582 974257142 649176885 607010849 274468465 402576119 33073008 816186865 296041199 745823477 265131997 37723882 942893139 802911247 362220370 406787002 318091885 527452299 521431454 325002250 8641611 923038199 605686613 87724864 652184524 929820469 937718674 833427871 746499061 735081033 624048153 848565821 432234303 82328318 677758627 169608376 735854220 692651770 602546208 764763461 937405501 453180670 482846905 130235858 934117065 809031312 81207655 339048692 871661803 917100565 32267689 758862349 294427448 118337872 619865967 911483905 317672941 604095656 664172577 380224219 818401065 751217060 205495162 352959972 435951380 790490256 454403247 972571126 427042265 214862071 950329802 651008376 252194308 371811484 552279883 932464857 67085992 540500554 767538076 507334173 435261596 656147366 831858427 411230359 925153327 898480367 352675743 806440599 554236593 149095143 590185849 786069156 456497703 372257297 115137151 969925324 652477531 266246195 711959200 185495593 678643232 802457088 691820775 682851623 653192476 167164772 887788372 278965176 127265404 931144696 798665680 669228576 95481640 614406734 999742586 677023241 304840031 787565524 270347392 735255377 126658619 60005945 533334819 609594916 527589552 871463576 174372566 144101844 350739291 426593852 266714447 709923862 96860365 648320615 466256245 929797994 247273122 881972569 58766091 24898184 388175552 663396593 834098541 564002543 926647090 735688794 731312135 513813174 358598152 405024537 353097302 614297672 482139478 137455077 269965038 465703830 460691012 840540494 700892552 539473436 986206456 636476730 84268763 30932729 608563105 746401603 719371628 806585659 117768393 959145730 315623289 732296965 966128325 304757833 516129485 512319582 957390573 331763132 153743384 103931044 109663680 268821407 858031708 677724545 279982164 560823806 444034684 914566129 875146410 735983278 495289387 97188818 937299599 445751860 738118144 317843757 67642938 824888025 996798299 306891062 263009528 98377345 374711659 757448903 600608119 775612967 509062861 296368295 671296515 240766651 885579965 326737199 391882176 437708418 609545215 120023723 770458654 50107868 526717263 692505481 392927317 273085387 239061388 805038026 189022422 131396670 422478473 225587702 210921228 59341605 667641317 23336726 250383724 826679132 502757449 595680783 49287998 954839654 658663324 536058973 57188882 473894695 825380943 607024825 399683767 55929111 883171190 39794379 408872782 383145394 172549452 294297089 119831375 726050256 999835570 270481346 103234315 561438644 874541366 101567578 978057358 626580115 588078650 165274198 144661121 742549985 671155143 559810998 675043449 348944459 360878923 694345044 842252175 826956775 686860380 839583159 309916290 650345496 544111304 794438631 826789879 751845538 370154684 514077748 934324104 187674214 906273743 777899377 614005950 875483283 228038748 267964515 986876 185608626 960681261 608554959 957834642 297893250 689568069 455118055 452785101 139107972 576823323 191725670 277975629 201163051 645289761 837736005 128199743 98782388 987980324 501488104 482835862 477127927 398105511 550828298 12664333 116045383 804318255 447099955 877470332 273162337 54858035 176262091 386652166 334324338 472630245 775479065 516836627 566539070 135944253 548328745 906073357 484034645 740624570 863305829 710765243 927167986 20136175 997004471 167162656 719128453 666096985 960052737 276761427 660248510 932526835 816924080 80920737 3770460 275262335 697634130 42514900 707637351 315253291 509378268 680096074 725606300 500810134 838690132 511480042 945337645 68026079 106757147 511527481 491482578 637133672 501748772 739888711 313812604 567510725 706833228 605330264 794242999 628667786 43739840 690007294 306952430 442319704 384443456 287124379 904464537 100614013 207468413 463359338 922851137 10191742 710519100 999120118 239611664 235573476 889360479 764843450 429109963 609254988 127845652 8985950 38825376 929851414 197364298 128812553 85713294 706074053 763048738 624608051 766307254 26087482 257646260 278104027 16139259 139522872 774228306 937532846 751782067 958678825 671565620 582829661 758121291 111287349 343863249 618937634 279520335 106094640 93987379 77654310 964633608 523490031 159437927 12933705 52443953 354021508 505785380 801823907 257298460 463784421 358825175 965936173 831964284 463847867 962739450 830058602 864808348 860212577 399110913 307369696 200761078 557254685 837641371 88400181 172333902 47037741 127393665 662989537 98851253 186074673 619214048 539204937 651716988 807805358 707948347 717614459 72233833 61582534 116869676 554386719 293413608 72371641 273061145 264507213 823263953 33503687 279362232 385074988 791763041 848483609 612241407 163620682 294978194 260585765 356422998 581804857 315672648 600519217 547935535 936214437 611704543 61830814 514237344 513619247 229163053 953583797 909229693 340042188 517550525 879980788 287533367 586283456 982074546 772765071 567563645 984657245 666305270 388261521 553242702 979695486 411976901 215060714 824682761 395744741 547001224 876924113 163529877 36124517 103650929 212878892 752803443 421096301 717387105 605433511 989189016 656786096 559720842 235137067 314673414 152869460 494967493 834213976 236444109 46530620 304711205 499951404 326104803 946945099 691362625 445393746 100073543 273506552 454954450 173418968 798002039 60235392 713700249 476715937 282361293 852059775 283399174 655253346 897593479 111172991 448231872 30395813 419696026 270651741 971525499 356898403 567446941 726095517 650753444 192857274 256413766 909613872 268352274 731961838 7703024 777569050 892255798 275160792 262695799 822248640 200135696 90964367 409347580 477533035 879611823 48173367 373324407 285275794 918040264 426631707 15273802 382293209 676175049 285190555 308399618 932556564 383334342 760572397 452574465 524571135 314514635 116636228 116311098 577249652 985193058 965442418 257711329 504273495 405397665 107399346 135070499 410146414 215081671 985520523 534381366 670691394 401657615 812559562 230885052 670363906 800095785 482729397 615131821 715334632 78540089 818084961 546100743 577882196 940235569 853988965 101978172 965936710 243332689 100881745 931295444 680664195 269864033 26399943 295632991 996845300 375134731 654469131 741018123 676212476 221654420 822566841 807420237 176825259 606108523 815204312 186231130 427790857 994095312 84718240 184961922 625519544 46032350 141199054 57265933 387488054 159318066 314843952 263678530 232163215 258838468 240127179 664236152 698602288 533955909 301584841 663114540 968052885 183855352 743555726 848967205 776909683 604666401 840192545 277104489 640509886 332112015 327361155 570466228 764579936 819686746 371867385 607169811 626343743 104528289 61466801 674504281 848569776 791960111 608513699 259693233 587770992 554328528 82678469 967386993 722313992 506148835 131599555 728053082 533732287 193245701 452319280 17967738 213881450 179181910 516191429 634659526 363675381 880951533 624878911 598032562 823281053 192616925 993691111 669730581 430047100 957403153 350536283 849019236 582599246 494121958 539155706 128489716 947932386 918782254 866269808 66558743 49387723 864134342 952230172 375933699 239565139 257619479 361335152 708018755 728772641 31196744 694217811 419004316 894989771 411359526 797808767 649963988 333162167 606178638 945855459 620093495 752211991 301819924 214252117 727953879 698917631 464303966 786446039 156207564 700444850 22528271 599419167 713556650 412785544 130092314 218969527 919567234 397567377 155127294 322265438 9842943 736827379 689024828 954021725 515662618 650245240 321971371 966492676 361672031 573926795 433062700 619389351 813809701 48971907 971520543 691960017 963613691 356995463 826825786 792742177 258773185 771256239 23556053 398462822 425751067 7532320 277293589 507351356 147569988 781099424 982837498 62503389 25724927 364633831 712504796 17103668 532397862 864262860 758543395 571890557 672306046 660841347 999133067 481579535 858912169 264978009 638628381 918361497 979666567 928641664 411888379 283518262 103973317 339977681 342583295 992596407 267911245 466077631 140681806 795804363 226316790 483543912 507242160 722647741 632825041 199907900 414683153 607458395 406551819 372168545 397663595 921329966 175251577 965390385 141181288 353803989 808757846 931957770 347569828 44063450 742274991 871754756 283332292 226497528 936812700 898809534 810334400 760728541 580765075 636743312 605679299 874894963 696568120 642780296 540138215 725964324 93250332 384422820 166766706 455772507 70642094 557730038 385596764 140454387 3340939 7769367 236268008 423404318 70709142 579283231 28346117 721655686 173691932 390742068 438013939 366334928 841685917 530372327 164416165 122629645 243255277 729154518 230511386 254871263 836407977 973982311 724302622 757396499 685769263 210295245 897686750 70200616 852696486 653797901 483058035 582093447 480695915 736035547 479089980 783739424 316263989 444094952 599468364 991506923 334006917 902331999 477497904 85849975 645343030 409357067 687169069 810205367 842377530 2081734 418020065 440847740 277095607 660898763 742428392 343822751 56331164 11578144 335541571 365588870 126531164 834129143 507627841 464573074 13316277 430649167 413943023 537531876 481011526 634127356 478721525 693153996 811747230 324873855 891876426 325652097 681427137 620623349 338992995 18938286 755353773 379047941 513572591 705854385 418937458 222791958 771803386 91139403 583319683 289353838 469974253 139680169 526495805 494765476 773679766 817302180 743240346 234165375 195855267 310378878 468749369 787419134 33826177 665355855 681558341 637382365 507577214 475655521 523524759 881036431 15955901 134979798 334536075 359635943 518039746 896809660 728539118 465114531 456959611 966812850 398673398 547089224 439545563 92568269 940225201 811083854 654416357 571084863 443061526 434329333 216983300 293153383 385413752 731003449 853148645 135580382 389041477 673330933 211148731 12287041 597217349 822738261 824146318 706237105 308771987 365316790 708022527 560106543 808501818 245993366 47722337 829341484 459898920 321649626 11352666 40357385 880730708 997819600 22169388 960669514 948599613 424013722 507682541 673309075 576090246 810466874 156451433 503781182 350930203 291719711 618242964 501625193 965471247 741061804 670536319 328959476 783306968 190120602 907369503 543718623 589628197 566602171 52268609 150314751 816486834 316770351 302933083 934289929 701696725 744428132 469549680 638172604 752930177 202396069 544222420 771470469 828766749 742001899 846305777 186323474 513782097 964232520 660740349 966956901 635829783 876733496 549209321 138294324 389989166 630444856 629106645 786571801 341118287 19773820 591214220 827910205 891100430 769754375 738137151 636798071 164289201 826080677 127433495 663114090 852712024 980797397 561667745 300836236 132282420 109086724 713407225 466160188 104007371 318155778 521839462 837977309 404505106 348639797 564966541 932960206 34498115 204302020 202080253 365101069 541398840 443141610 970709211 365528428 898927116 85952954 256748874 798296325 25382187 800914242 165773199 59172245 395532952 587054152 714803469 445307471 370084483 729421212 390183811 315195608 791163540 539522825 74036874 912175860 451593018 810664120 136028500 562705747 360944378 621642264 884366476 697941894 832480902 228984684 103019510 765698070 513564947 844601865 341599330 260801989 311184619 979029503 315610756 147087275 790218422 121136934 97360276 697254270 792167179 143626473 823232972 793639008 522930253 58679464 187866265 323978087 510827593 125681365 255647365 480294948 805030970 478069593 191149517 737911040 850834845 603196794 493894024 968859967 836315912 953775242 700402654 995285777 286057119 114655264 94716569 893645434 469226140 811109346 886384996 876252712 222835911 405847697 85967924 889514255 825901274 796546730 451047623 327899316 927235464 437623016 660411665 605986988 170244138 343745316 975413172 727144545 609093651 747191984 944064303 538080783 875319739 510131109 451540672 2946791 592181319 357157559 160744658 557215307 465188096 642841924 823775572 304439985 732294625 346688436 690927908 854801890 414952900 309862266 284916986 497210029 719593800 547728064 335412252 506341024 451390533 693114628 712868067 46678765 35482921 587953995 53754372 381617431 247991055 287739686 696938608 651058416 872528851 357264831 386164217 227925911 512486991 992371381 834299842 379848546 331299097 924076025 152426488 381619215 536383662 118178247 558782733 957080064 540665703 416862960 954180107 44229267 880587800 989611432 532196599 236119474 370000829 642717092 605513264 878155676 980681746 742776035 424546352 280367653 789388062 14364807 98924253 558803044 233027024 409659315 385594995 342503262 781334817 443449854 392580812 718626353 248700181 885242223 851006476 814342540 418715067 100203801 167226840 936142496 277488638 876680964 159086993 65898128 399657094 446251558 870266783 767578305 439226459 440256828 111262539 1178029 439299169 253409024 695137329 777130481 587942494 968506741 958552988 753114135 219199626 832596029 6956556 683719448 315555913 245356289 723919805 251025251 187514154 297157919 688503994 448005563 744844305 751948214 49645427 574085651 818633714 924384587 832838067 505689434 245850456 430854709 537261349 640120422 43960958 772461864 438048001 930029433 327793562 461021931 457731029 755495884 236820271 337835325 645634300 543315055 816982524 877685500 603128261 625058290 952080142 612596977 840154663 937854090 813648540 6497756 645570929 970909973 447587430 767049674 252771094 102650243 528692179 222717295 160525102 294873982 17988842 261339692 719603985 608911888 836696126 47808836 737991804 829748126 689172925 681821421 638493841 990733356 904273489 275002582 133579225 320356054 782119881 689424138 986934593 687940783 951694949 433488952 496966217 440731557 536807501 979060993 615393283 620760735 473962051 956396091 310282855 541792636 714802185 299714528 162837358 726183902 644006382 118492016 786505178 84416485 479657455 391303134 235901141 773978099 331351717 536486720 693396464 748604722 432158332 847534341 350390971 883550040 5793597 332247257 264355389 316647444 325473390 589519569 809209103 520512179 218622312 666856435 723972689 728289112 886234031 900162719 102969286 382954043 986554421 705191655 367374155 131604233 262703795 66988160 192416626 669752681 678617073 776747949 465066949 251939931 86264736 574641396 127766216 27253835 554258026 868759621 361016001 922255262 799228554 895697391 437881645 893500861 878121151 593177806 64896227 670989864 320811831 353128360 496201133 128102931 875833529 899892093 691972134 512098976 204691449 676830629 202110790 524185595 466156553 290964594 773270883 129424917 257055575 439978183 700269870 539184190 714892273 954820259 788443031 541122527 840592316 456581243 876952015 594816620 6368262 375840202 252753767 285891020 624776406 328701823 415926244 633663591 45967958 112454142 88070828 587797308 687109212 260206351 525708786 531631114 872791568 1126941 699412747 426492141 593534814 411992168 831906769 457838620 223349081 549983536 219176958 884073447 230527785 904839777 986467904 524595621 241491365 453825370 92104746 636485449 592938535 523597924 958807162 910080849 326092379 677289733 560195369 501463664 512818481 925679378 829354207 672565160 372314238 480284744 59885474 660545949 541606886 559192999 326832212 552465190 799610165 872181390 782645087 826856721 896679260 785247194 430511179 200609427 623522900 713363468 212503953 560278177 510515606 888310404 686559459 5252743 190844980 651862553 369108056 628079688 893600044 821503668 664531583 587129840 403172450 800229295 117516627 632157461 145362240 803117805 903257169 156157248 998432199 630193893 38916845 466363731 335054939 667540734 162503372 153204196 819752741 774686634 72653276 60419728 154391957 708083665 432000254 449904132 302160376 76243021 57295696 679680786 879263040 120454442 123209823 616778567 245429581 257255079 536151107 258798708 492030044 224980242 723791877 317959767 826479358 395503125 225719220 949816682 994759997 347737539 269150732 963397597 390360583 153875908 987434097 171617253 661045516 401706689 29839009 432354628 725756862 504344175 365949776 529761491 744844998 676778105 319694166 988309889 896848890 223162497 222424302 636782328 53694486 578266645 573219810 839893465 524671594 353289922 919228282 48200276 470206344 699052236 337532869 152234145 243926800 75224604 861391539 702728124 877930158 245260309 269744366 602622935 748257519 604407972 385158871 244202706 453433309 38307893 787683348 23413324 549516788 228199191 422026824 308162456 737080505 382010678 946455570 910985013 892173318 285004040 724459554 662281747 119726854 479783964 976725153 193954004 777231202 766134740 933121856 246367223 350998609 958932524 580628278 715601364 499080421 101887806 852252478 244210694 873142529 373606305 517547361 178230280 487281503 893378124 65087204 283343729 594984206 847366803 266292890 801368934 611560672 79218739 317817400 222026453 992450573 861749009 811926004 19989582 50687437 253655371 804996939 938789531 340296031 23958037 69692952 426390065 670159437 69825483 466972640 779139461 137270123 740431089 930318145 62558540 418740237 156269501 384010045 429529964 340551645 756445018 769783833 572643943 955998645 302488187 430104066 369043374 273140064 512699771 856838859 723197216 339682923 882538021 808006535 421797424 441343548 349699237 480936812 846210816 215379096 192779150 743677214 758845453 895678234 938776044 148780843 903877512 850525003 862028848 998452136 405153702 475256478 855029038 717221853 662137429 976903996 502733764 393120739 750482093 469961672 37927893 380823497 976297373 709309819 85146789 93767543 941773907 489076013 660428898 938676172 90805429 430250436 509919304 552510503 898567156 271808192 981440417 778098204 714507916 885715597 360667816 449646093 555447185 775199041 37293396 265661932 605041489 598224082 985567948 911204143 738213155 508346753 152312964 250659916 174213388 726794787 102075820 991648776 282577805 484227848 566400532 644859846 985436851 429348737 533787729 600596443 796877927 361853844 670943586 565357030 210906158 903878476 127564255 922489487 442640332 124060045 81449870 991799825 638215276 836534994 569750206 811429224 402339492 20673170 878842285 775783116 240393320 651725609 608251622 315277752 938495291 180085856 564263274 490810575 170235756 443182202 20307055 119250690 247598558 893453527 378369426 537617193 466342898 447099056 803874230 945163133 959757929 451211408 716841831 77262001 156845499 196891337 486838967 904131081 289271737 335918973 126520755 346960208 147758212 484119962 679485773 912323514 652340135 284687214 78361088 515364950 28741343 320640469 154320433 45584255 541486427 545699297 771306912 168992943 78541777 579770080 623104386 177198377 878410834 177068924 31344504 606937795 388896866 5019037 684801301 967784497 678565858 901113765 983365882 479729058 512201743 653594762 584027898 970038211 326119843 234082396 760227488 387789641 766067166 591675008 723192207 507424878 889261838 184135903 796755293 815639262 633766127 185444546 514954354 52081831 412626359 787635543 268423270 256407694 543639650 110492920 671047021 149238985 939573678 717118653 863100656 32699254 148746662 244670579 938366399 628166204 642774416 413930500 138966664 233253083 295084154 485618219 32761977 897785449 539128251 567792651 123632040 153734031 849189530 363792404 3811861 963901575 574919596 461923990 994996 181379172 52722922 636871775 46800321 642660212 219922009 652317084 646374369 994951604 950429289 280927535 258407879 466403010 766560145 612126657 24946066 233469437 981720571 805193297 49239680 381022354 983297549 727190539 718826380 806056481 62261762 388728826 762151605 906465293 208788829 252741965 614838058 185025710 84285471 76973744 423987306 130923372 90070344 420425806 721254536 618561075 251699228 26248688 374602509 3935458 644763244 390735874 354853348 345461926 57215954 55350673 957373209 763137818 125997823 183537837 244005664 681606829 928519730 919911488 47355325 54571908 915302717 206264334 329493507 189629103 66010259 721081944 986038194 844007030 865184233 421293670 706879997 213544715 931695022 288682483 725353259 399511348 913591560 523121696 201514055 955179009 615133450 345008086 848669722 405496205 337484424 893934749 350620993 506684452 578056451 164983282 949248859 608628584 585067792 948165725 658581002 921229394 455147754 664871364 851480999 778299507 39102870 473327577 816672829 528343990 18100466 48218408 396030569 83020466 747794190 581400724 759569879 766004447 889518268 679079645 191176825 649583871 690158378 307458809 259618958 132887453 538791589 291702085 247851442 279979497 426746177 6105730 264549568 205002262 967487238 719146868 954753485 481002266 242289615 502378122 159711007 89227344 118745370 795445419 405753308 117596543 493692549 317731325 46167538 925242191 589894607 650542204 302857486 162479735 569636814 177101256 659106244 109270282 349791236 810516445 17380238 599657159 741228735 936508695 849729650 153052704 686356320 790480807 611932456 176647599 614944210 11984900 655974180 778791398 824498706 864285574 315308119 758095846 427810824 130912281 941959775 539431083 214339341 601411970 477499892 426576887 448885625 212410616 20031625 935559758 452913252 502025134 702979162 705728095 168778983 909602143 21916400 902032686 798078798 810145597 411010241 796845046 180031767 158423524 883112385 125899501 386316047 903240621 898549205 714807707 392584975 847543196 568454355 273485755 768500067 447177717 669628114 583705351 454387685 800560259 608744317 608893712 415788843 752359839 10027837 646814335 890413887 674900146 386928693 703125114 879420936 273157542 471402688 720933005 428270616 346249595 103063443 315791724 77595164 384092294 759109580 513384636 84286661 564498447 57746754 880469088 75007954 16912260 790961837 789916202 291137177 927618345 342446042 292627743 467398646 13922943 730474378 709607637 397044620 635732507 149173220 684853064 1911306 544263668 461139077 619466938 980949634 20663942 361292336 219293461 163620312 395893600 849711533 413948760 244940860 594558715 975803243 218301816 726800563 868904959 677423056 630763747 615963826 778861198 828284203 367522551 148367315 40692328 683017438 756172860 512330412 424457805 112009939 651159820 30371409 979348434 639367559 877874182 30778614 973907238 799553315 683927324 80340222 725223075 228982157 810645395 490138097 235120524 868679103 609789234 385367879 732890083 80023163 952778628 485922192 479800367 834364496 677761312 669061152 838670845 439898943 892273513 732211582 806971656 154140772 166439979 531819030 516274200 582791921 579520839 926962370 516056198 588852940 396160967 630254082 248392423 577783603 701652392 538012650 359349840 441501028 578909561 34749240 266110244 536115654 883018343 645998241 910646518 681358861 470709179 270036908 337595617 613112606 796836793 822419521 218567963 614791994 597011374 126517575 23949135 796555781 167257867 818597626 387894054 373183663 864872450 649733180 322296121 347494141 591984566 830307909 841099242 598585395 206817693 665064109 504704044 101105627 425618008 891640612 601243575 288960505 38797719 801164599 737488148 140183873 658744828 569116586 823487996 127942032 742136502 644658056 930413511 775788993 15762151 473481310 953240010 276563848 271807462 225700910 257432649 469212304 557402966 773662520 744044028 59786822 938610744 104468802 282296330 514783596 25156898 985601142 309641305 743729348 204575085 404570089 228858068 140401241 625984570 941624993 219314183 476593439 172330960 501266114 937942241 244512900 325086075 851073413 300722620 362867912 555256389 211871635 234956560 560525056 228719157 893021920 422776293 717977318 50008034 951449632 444935144 628232134 827246167 283534075 855918968 690192309 620105396 137458467 862060937 922456507 633727529 157038808 32849674 857864885 123120608 475882902 44527852 839810801 610803009 916482519 860741230 999088335 60486164 640462583 795972520 274532720 422979432 723351741 131917230 427887833 21828863 230464415 717679976 100893098 514944243 290702492 781428422 818725800 742883976 470054365 773414265 18708704 349559805 276523026 863301826 139245066 998185659 307206743 245025749 274478104 146382223 99998726 328965391 953021327 222929733 891386757 423353232 861170016 402322148 889096750 736422895 149570326 640700086 303180006 599372699 378505522 296935013 553520062 203514624 410266720 855900385 292675440 35361657 83834203 545103444 753156929 884291418 884358700 192363353 109051209 108058938 972585675 525033839 836387703 598987670 194738747 686723058 156327276 636045711 39686949 986234281 767484827 465308077 278556109 710223552 805382799 837465635 714845413 92310865 358748202 895497827 351705900 652356030 737424646 668905991 549434843 175344120 83503275 861112348 382168674 115739441 398393090 83967753 809747115 407285683 416140195 736119124 165202091 633094674 903263729 392632509 52481132 496176913 238502612 589066359 125110689 278666673 533792924 369343636 31872171 119300480 900097335 803974730 130424065 679204028 192617421 816568194 341955606 747159749 38770199 431334290 575343534 561250166 216738616 280641331 827667212 300149176 840062249 435740866 657507920 104038027 824695989 936572910 174815426 717993317 376790223 123798246 958758805 110968061 809078364 366778560 257235737 588889108 766285509 969124323 911804938 948382282 849538026 169459434 998744026 229090269 936444635 557218888 879075065 439848071 467173189 425863417 616328205 694014348 851999939 207731030 360600771 638151652 859146746 550125840 128626498 517967838 26856566 447957360 628620424 964322659 570492866 853853503 552957777 385565604 468290421 267929202 207841519 764699713 175885950 930563947 675818213 123067949 666464670 391589138 892141490 52173860 575093122 673093758 314280136 597293715 433674950 272485084 355145210 44125208 781015314 718960912 710484814 700449749 780273171 911025353 148073744 995223299 867172579 922672088 919861265 906164947 785718695 637027804 157199684 354415105 388999384 809733210 693649325 155998059 643419881 389827568 772773279 900985506 884782477 11931746 224112591 297945992 658352599 341025013 815627686 385120519 285968833 421620194 521434115 132363806 252305824 650026955 520057455 685997753 407419377 45780389 944228522 780613300 217482594 800409862 25256283 585418058 977465717 408760429 797702610 553753821 922777563 752382039 404176878 779604232 846374901 98024166 799719835 771245295 389496256 366042655 906835584 87398769 761979563 620718083 170058581 43505937 286792626 629755782 793859950 9356650 778037455 480461427 388654618 738709209 84950841 113924522 466550512 948238048 566816813 265253303 689825032 508849297 530763479 296049987 926423867 222296226 309495633 180817562 649699297 274259256 334189048 319943032 815754785 182728532 70019798 162305991 556821556 124942455 258111885 84845860 702259449 446380028 181722288 377106132 593420100 693222533 521651585 117334677 457232347 120610229 553466150 249976704 634357161 243421950 930655355 344590592 325112524 349087674 451887741 990632622 136753813 696448706 239180691 905125071 731581948 697793758 420696060 626887869 590631514 177283690 697592602 274244197 998885684 865989674 765290325 870297750 939461787 677935924 811331105 321543104 778653636 920595400 489100592 979057560 422857368 279258366 403876518 819118195 671012875 4344877 581712358 718781577 546928244 106424533 610655322 216595316 397602910 43182764 910064109 59862585 26273101 439966905 11616822 659562589 460653228 933401806 395368471 650095085 183529052 77890629 870341933 720754297 473545878 36831330 462581207 694363327 640531635 460308654 953745584 339751342 166822474 552899164 386403554 926449176 832984660 149467657 502182157 968826361 718709579 220713781 154920334 623739672 428207919 611188804 721920825 567036344 804362768 899382043 737021514 149924668 561073815 928266202 376875645 861925473 431120452 772608808 36065074 538774806 313399503 573300964 278655136 668705831 606287945 155252965 63023631 148547644 528251594 431216028 641205299 146466141 578646237 712717705 980260937 956362037 455123093 276766838 569445577 212972587 230954894 803915317 144639761 875888863 481930626 56801270 534435348 190814538 785749592 823698353 691230874 791915158 794249738 622293941 160637147 681784338 696085631 355319697 98423415 983227012 122184186 874962810 555435349 271298090 569672478 70054257 766670477 754178881 422599610 868694672 849476030 473414314 217424219 519089490 519124259 308610252 396444381 840224519 496834710 664786889 497098763 745964011 635686673 579601336 14872773 372244065 482940551 222312434 582676282 335231365 352796371 731126319 958522409 263235628 633135912 211304431 108332996 391973746 761408884 314716461 696057136 92370693 214074307 153991945 451959464 249287378 560534938 697011611 848892862 356369465 703828974 438032213 387697578 389381413 377834021 757826610 319907186 67615510 692505382 544989654 928651939 409484814 736039892 204244533 404702078 389713468 995198468 248516469 158590329 641431667 240192053 437124470 451737008 381583809 613146839 809156241 116469130 288393900 853539744 880021100 313540866 147369250 317604361 263036968 261446093 357492368 540696498 424686756 831586664 331795105 339163189 257821774 35721862 720057958 96848369 344307917 907949971 131675598 545621153 68768338 683283216 798895364 254724490 278733995 375141489 99367013 764023928 375787195 279804871 226645529 272345547 448273653 270472468 797391657 477678743 753598281 399810632 569405906 463417740 574418647 309799240 946930782 317514970 777744289 186378809 657910191 833575676 786380971 219828587 605666517 874945094 486848481 16779837 213746359 514034068 570962883 290120154 721157034 362165765 202213313 678348830 10949630 709140383 781762392 880711129 210937277 37585909 748008093 531413107 251826924 151166721 153094273 237834428 627346942 987449682 885082258 878317663 919903678 757265348 191987681 711660811 776500601 20059196 445984612 887217089 885389215 580867658 838392647 648222373 479135058 626813356 894171038 391271934 18497863 989212673 258219798 913599819 949866533 970908090 882203377 927382796 992782503 215628609 163566338 43889988 390893315 324127410 121394565 549950432 270180065 186898358 317582519 135057693 225615257 936074986 123338582 654515710 875576320 319585271 105441165 859069573 349819332 709309270 343353022 475465377 266683101 903356317 234385557 692209580 398068999 746814273 620810029 956020218 957878657 778271513 526916428 953150008 728203992 462906915 747637585 802015202 400821802 60092412 245523193 598396350 567397750 120855839 504051681 745866 614364914 73798922 986501175 346557027 659359334 384288722 388872217 212722274 273155250 771400872 235196983 167300788 289738172 791153393 268702754 234798209 854063164 386118963 870976891 96794223 198394348 535578415 434610097 234604108 997954444 549856357 277029259 470958593 870642272 199718875 834940519 55628570 776180061 627800687 975074889 572961169 380034400 82950610 281101157 990446474 876425047 80743215 971710749 466625273 398280157 282173455 111067860 188625763 441046878 582391273 573188409 155348778 329683308 87528333 792640329 301215070 665008070 250033269 702534084 700512301 396526156 746523164 651538762 501023520 369005718 299997537 518149111 239511407 298861403 711773551 608264335 721929413 958256393 10310725 367603778 334666310 170388870 794918355 295806920 220074873 323666879 146100957 908814464 364809565 858967346 911054244 880680165 668202403 882919919 249560334 710855939 477222340 696116953 664260136 752019176 157870768 766581436 806801281 426302195 830912455 73320953 432601995 71715395 720137015 100960728 956458969 642124551 406449901 621334186 631582394 577612549 764740828 502908407 270658455 735263323 286956531 899050162 270293735 758050061 12236435 169353110 74691200 231802881 477776704 587603651 300287671 538518454 138113139 103097742 889052167 92165538 331761567 593927947 991533273 819069130 835700478 637330905 858585657 90309673 412472432 100160754 444232945 95515770 420960663 363481578 185448592 574777550 261333674 96909424 583036918 253119970 653884375 314606124 332645561 692462438 251708184 761284282 231592729 942243184 268112237 621792621 863004000 426058099 389456793 331705543 195672390 684716243 888420613 148385521 949159844 186912317 832200476 980152838 839041616 987618865 506102477 360090704 678753966 553768314 715371242 759358948 553699465 284880238 560947031 844201362 229413671 429020419 426888710 105598801 886000868 305065570 742280213 823465174 683400395 279981708 834721261 940742057 796133344 909520839 332086050 973354185 232683969 355264019 623432121 185695256 794349383 870737950 882011971 16299020 690323003 840144289 199923725 467357870 219725044 886868106 383866842 292617875 856724334 910867545 101466520 572373485 129320093 689955014 912936134 311938205 377166020 214914164 349792073 777760160 142981706 405013015 488379312 904370933 739686993 436823954 379194844 348095315 807429384 553431312 324775455 634065312 340056701 144354711 629207552 782827913 455989415 903716981 911922645 223348777 273727595 419296352 783457178 142423355 661704140 156200491 891840838 411364261 97375235 735342609 706613126 464828109 718428863 977530111 932867370 935410616 209948855 571215304 382010940 262061914 802194961 1179054 210951854 25423051 273936673 58918472 105210466 38142421 827643075 912657976 744530913 571838963 208229953 432216278 778911178 181374286 435302523 390325470 791076863 174632457 244248439 812436407 301031227 993723570 969338562 444285537 825538542 483039755 307672089 144819506 983591698 931414389 689063265 62070677 868518903 493057709 120341428 546172436 853690416 790378149 602879369 617001093 335252223 345981542 374676878 374233522 580247931 358914227 880050666 303308678 403822384 150534753 822985343 819041565 374422537 386214247 959917181 100689629 558623845 304001773 684769257 401858541 290883190 577057568 62383855 778142324 674230504 132982930 830044641 943026216 311788627 606941553 510283637 814747724 592198449 944940700 765375071 603532274 261115724 416194098 443101718 179687952 914420283 214234321 753682164 213842368 812002178 889553392 495955334 30290036 84769674 245600977 759737116 898499814 466542076 349186170 169091498 615074716 994798997 711701324 344176533 630587055 706377499 329548945 305939517 415890479 50976152 734897150 244055904 999111485 751089146 812066805 394923729 657908961 637800694 968681102 99063337 919087545 9697648 981855038 485894056 798842446 365218093 240108475 936364814 66976862 576566728 572784338 286028013 785691532 743381602 966165652 41454599 833680424 445633702 624409148 446261935 794402123 194818667 346199885 31757264 474869096 845896305 372796446 889411670 996742325 361740408 313798718 196988971 940915893 841016955 319659161 640184702 156733843 544367669 312985321 363967973 777430400 567597623 976731875 809997605 989350787 213726563 253706261 349591781 666548860 331555092 585717255 563491930 103780141 412718060 870462046 916370498 247137590 843168475 952074548 667321397 427728873 251001377 233477148 779399626 18449663 308482678 866075205 367187458 240377921 346191086 506800380 965484270 465979875 73705829 31764875 435001714 73586494 509194263 852478407 520613832 888021737 507661066 536282408 508499234 233062682 816903444 183907183 252904097 229097557 841480441 842326332 382323785 179444958 753014962 399571508 692993827 226716157 712069542 293522863 17693649 667734807 492624259 838967439 647504366 245196834 681061667 718129715 134034544 591625911 429027749 361635512 520609790 834608246 673115176 973847237 393900092 17346232 780365132 520081975 157588924 115193662 940879323 319452673 101497996 383961870 941764209 334345869 790978859 620971394 925573261 119368281 820969149 817157333 468696562 207274040 481825146 114006380 222011479 976486238 982644833 401076749 405235941 257282832 910184672 630321892 709416656 870652651 732592523 112181327 472415028 983667826 394091002 749026549 578360349 529653115 170143202 904870757 37413929 526111033 885665346 798117221 784026773 734471526 325778591 451005440 319467570 773590974 672639389 935342380 494017406 919608708 446682197 959032617 163991688 847001071 110782780 806608971 254324685 321275811 192999873 292549506 247174235 44297368 983836442 170229021 234327042 740679589 665253898 310941886 760792816 752646088 241396112 623216704 925906140 143844494 419267707 568673757 272547214 476059748 361774523 847732475 360263577 13352804 563354287 175831197 162402436 175320390 737243409 43674876 49939061 318038748 276914851 335016522 407696047 956322737 25487519 79132782 931976402 85948380 766428866 342261325 210348225 45013270 711561539 210248535 75818520 761372324 982588679 207553946 837338008 192072218 998510794 939031994 671110464 34589408 924465281 270966545 441195928 414046339 154855959 561167766 315066251 78588015 84240456 104959156 71271282 25257716 207313382 29491882 781003646 109405355 348729049 111936905 290550990 758202722 266398156 465463954 693818321 323147492 731938578 838643404 728377711 377627921 760301106 281192021 881177759 384103917 93368697 280844006 233040310 102742464 476389230 966530591 674570609 377711632 713175486 397502863 563703459 448130416 131452339 550293819 847871576 933232002 213305071 821376766 65264171 507511083 321043413 608562736 72824989 299737111 190682488 167770999 804458042 953825231 192852455 417669935 288842140 99878327 168768930 537313294 883218959 134960810 907742861 552433088 648949335 647961384 189083641 406119502 854012216 36643168 202129172 531060681 256670812 86584409 324206120 259059057 789111252 47093869 502304898 994418336 962481490 172502116 352119532 361823251 621155109 199840739 258868492 181274365 914401795 53450519 780749618 865315704 2834017 681145179 763667187 912589931 943691818 402072360 937237715 740283217 418515947 322694522 460444614 711520855 412371610 375110453 528813717 823631145 508895603 238833099 932134200 151350845 954560446 426953981 662515100 995700407 27667579 183406060 481442839 924674220 715949187 723645438 422261502 742883094 576203711 248308554 993590736 273598756 862932212 111668854 246321661 655008389 820664357 616311528 550965603 467872978 596195488 745108916 772415710 569063669 313319849 200843209 353051795 825711955 71328128 456703506 406744076 448581849 195886452 61085518 715790908 157995839 796937623 331291920 407478541 650482306 853336441 150074714 758769004 691940826 768364467 67123753 52027800 884058541 526601769 222965068 855155970 435739938 914613495 664296726 950679432 698000387 606740790 374994560 501810799 585529321 384449081 643077112 394718867 970504961 180036371 397419711 968508603 32266780 63386880 513843993 759716881 319551189 776477495 274273760 626586354 677387850 777098672 844661993 779802900 118880680 553058859 91808363 118752669 281915302 518961047 849915974 547243438 605535113 760773295 326022158 267988822 466246358 884590710 372009257 775889025 18823338 691991325 613745071 799721335 767479972 661661243 517938982 949679985 781049763 96436875 759455918 45185926 670235121 920228019 408203868 18732404 241181491 466056841 522252546 32527407 201661126 249041337 509926798 746099409 178532488 569121271 7659259 382212414 35711049 501339137 53332994 872618737 610813951 540122244 467479025 473622262 429083197 721616467 464947822 500250738 915274150 854150070 121815028 663163733 267228797 590161892 141929285 802346012 474325157 534196089 109645922 168030387 638402915 28718409 753694915 320435026 53342245 163312319 528822858 264132532 51079496 147731448 202297567 446709295 966271074 452390654 287759978 845916506 113500821 694008993 742820726 171212977 108685694 830006472 605006175 749780344 303279446 617326882 923069804 4133310 868968766 579314824 815509658 776814767 129269979 582590296 43332427 398721748 34078225 80737393 284238925 734660392 701515561 290613424 223683092 31015627 277131481 63440270 436439472 611005727 183303277 955662006 612006876 946639151 719522710 804794272 596945155 651270545 466805693 741478048 70768313 358938296 241966916 684669210 589348653 422789251 608175343 656117747 581198349 562011955 861044006 230958610 263272309 121574643 959036524 469359151 967921177 759235486 457565340 694744508 934640966 255902509 638415383 556357787 2437915 774043083 85157144 661589098 535658644 440055913 225518115 611456258 973789592 400794152 772118476 779541893 87515933 753213056 953194787 744493726 496292250 108791295 615861712 221403366 961943942 262156845 4718018 972322549 551334636 8068829 429978307 801741434 854724143 856056561 804416321 60879636 52631680 231751433 993594655 822562485 829123089 39498868 432234583 956250023 263146812 342117145 677022686 189500370 600205434 323645872 575006534 129638660 27808135 879805717 225968796 261813039 820056751 280236000 430999528 751938326 471276565 591699232 965083721 287229604 616396154 639190222 120804069 317811800 989217288 679900462 752379797 360413669 364839836 4098576 457524105 372874103 364991420 743072860 798576861 932053653 172845381 797329292 590954188 487349776 526806402 769231458 161097312 153022025 804499071 438795019 393743265 55014414 567395048 751208494 508015992 602423749 528831260 240171354 834634616 442990817 202547717 707233945 132654122 551407559 83655118 141946234 7370503 575353259 583349565 213114694 464143290 40721003 321518631 911665999 948863684 804103021 810184756 291328543 954685787 487192371 244714468 36817654 925102352 723745862 410729839 295009069 349837642 53876763 224684342 751905313 811998160 767019746 144034203 114564717 73318871 612683611 667923359 138043979 783282233 765741996 968283813 800047237 673699550 637890423 830207814 198993814 116008292 897775263 462128338 420517154 248205477 372861926 808149252 524167278 3374330 778725356 63387651 250380027 916198338 109195340 815628352 708216658 733734949 248905543 111125172 898899414 142751896 589479411 898423271 992033980 873749850 586638157 632657653 194009789 519786864 820117956 765904252 798376090 476513108 908549340 242052516 867290219 735684747 917982123 112415842 301760341 792674004 719412132 603970361 968351959 711786039 277560570 203661508 962774737 871864330 883672791 807572268 592677076 184450343 884075080 876684187 106523737 160507873 678201342 443554752 284968383 304836506 661261496 573988599 61842607 491529424 731090519 712592725 845489737 530816340 365304098 467384318 428375902 535868737 7737359 681083141 660886946 672386867 437487946 525373473 426217973 394272366 554821495 63580124 731386900 366722541 292710251 980146850 264348537 604749729 968474195 105499978 780414508 620566096 527257314 588943312 568896245 280105223 27402829 705272124 403842737 250721291 968129851 536581043 33845885 927506912 524102740 826798697 698460534 844044376 593283291 72720082 316694621 658444985 767102758 547603058 3195477 751027288 902174813 689123232 672325061 52942413 174397155 176298169 349473463 961280734 773206930 578952554 274662797 622902274 107894515 431650335 716844798 682076520 334792324 745477508 856096889 203735709 343286722 235757754 586828953 979860875 306281096 186255663 813464428 276525459 518293907 918810093 861065079 119266353 359828322 300394634 399866294 761637690 377781403 999630583 233140142 664520596 758413656 230162103 621739686 522625929 896928732 196198788 177518603 691010179 284156240 294700238 30706616 464821715 247067978 517018573 195675685 895184721 331944024 16317437 558424625 612528088 409606209 4359408 917999157 317276781 944042081 739811847 298189192 801962018 641985628 258203310 401006290 338293211 878962414 941670142 311112353 659642646 930313797 885680159 777915564 532264871 48310634 59899753 535624207 190939435 59396532 310448107 476368460 383856833 636050941 900348231 549914099 393156030 787628448 405889612 149497392 42290502 836213894 436247785 977327284 471471175 693872037 699309321 780765733 568918684 249827288 695271031 127935867 462418739 491642133 864386534 463541264 59047439 805802515 159312458 648713413 603720600 947516155 715600734 149420780 553962900 404856141 390435971 347506195 852856373 943545303 5773874 463513521 971782203 936230775 350844851 395036501 464455711 95526896 959633591 113424191 734253957 252102097 308524560 155477559 803462994 389287614 24117350 403190955 547688967 579253038 875915077 470203987 449770273 414446460 999826430 773038734 658486680 565058606 808757178 350055920 114410764 928033337 326933364 344522123 107310831 982764456 974662472 166909567 261666179 506592912 436975199 592438188 191571350 529773183 959823146 863111717 942138955 44880436 29769713 158863775 200558901 666471530 506624698 303026993 255099011 480870560 910519500 352877444 285396069 842119553 718780377 947190187 242367633 174319900 853138736 988336990 268935605 554691675 567987441 674725003 482941594 271047375 980762863 583544588 629693480 599621615 663248373 332582550 380753867 105953811 832179851 107690919 589465849 553196328 147518366 749369618 315110895 658654981 142115230 735977137 196639109 365645706 993655878 22899676 185956698 779276639 117613071 282878626 165166737 641137347 825109376 284307385 706479834 705495390 28184950 899545712 111649656 934858637 615030473 998419555 724653755 781667475 130772287 186161769 858518165 466020460 14379677 512888708 38317702 219197734 69792004 473651762 292132362 288898719 868852640 803542499 275321620 58195067 698827612 160358135 872318232 949803715 471473785 486273153 807469884 966459255 70944361 320917231 730808623 136960384 485402283 831682454 920025461 428282082 904414209 120278037 914218692 287526051 538301391 972997721 432018607 511115253 619329205 546502405 736403553 829814339 472546230 333338981 380953290 261821450 496923680 913591346 694514643 672730205 939453392 694949737 894515125 720537149 763382725 997332967 784551010 963414522 622711524 576726916 632885536 215175806 537490418 65299745 935078769 763862500 904812281 563602023 223492060 771321528 45521212 936360773 634928776 767523125 764418682 403835000 130527725 255534584 893354534 530611975 497435669 788196527 616980621 218751737 510651315 712646148 864221330 915452168 630001097 781765632 488004779 86475925 523629086 278557254 247379528 418653382 578386954 172936421 989577801 786805898 57800137 700362953 799868190 638708550 12156617 643314868 255098400 78059110 356063273 45965230 774875467 743763743 518535616 955270062 473292604 121834791 962577445 110494307 65553939 202354338 312591638 519590148 562748687 777579459 413865531 792038981 205801174 675175577 107269013 10739005 778655676 642631264 644518911 83083731 348616142 471856667 325221566 734468273 228341811 392677646 484733176 253898227 953978096 929348141 920460696 297865269 64365367 277841501 26045018 491330911 640593318 136637792 729634260 203848030 573564239 867085595 38824998 247167433 187724639 842477250 324434221 564064952 649317843 190215925 626362453 53331297 873439620 38187107 460752281 145652022 28165700 28249979 916298949 730987490 802449584 406859383 623040449 297283048 380517570 545766547 2053708 243687926 231037020 250647017 824537067 396992149 735049889 807064684 535714496 346901586 489269029 353651292 255890917 117232214 765699528 757863693 89489524 290145384 645958438 766582199 706555284 880141560 675628266 299681372 236423289 852311843 10508337 53283527 477119134 79076708 564623659 758842051 871663491 540688299 372966250 775078737 911098734 206814171 246093179 702977767 705808003 606485145 21220688 656754385 617094133 461751977 643777185 927241841 90812143 565084118 743179465 340320835 908960958 806459421 676973430 590005793 78703865 96135597 723892666 359903219 408733004 190332560 899245510 167782765 196792170 625336489 434025495 518072726 353389971 86803197 251014832 81807277 374059272 876087579 721860052 35990275 140315180 308912814 351737729 414412870 424942708 155993647 577479192 618674600 922660225 4418421 276916573 185059513 730298819 9892631 617942286 771611862 232398033 793937741 541137819 84418763 361244159 771497269 956863536 269235454 61651265 825683389 348145234 381380050 17032015 695823918 772012401 113488644 226666038 868751541 297710589 533132386 215262728 38036848 540639434 485536562 923047743 804254379 84027628 723748227 611006492 734474609 588820792 907708267 56199633 318026676 397334232 7868819 660085396 25210530 246400962 891198056 328747301 554200730 341630496 227888408 183004084 186723182 311046123 276101476 136230235 733553415 414440188 357729775 590495703 146727275 785676016 201996062 800920293 256949225 797352178 240645486 332220835 580561388 378725333 45969580 298855744 427066295 491158977 513277880 989845429 3286210 61568606 740107980 557465640 899262457 538233429 493195726 672924173 966818517 726030539 936281661 36482333 799981178 552387707 901281979 683342779 572287820 938989946 948846330 435395286 778360830 637797278 913052475 699291791 644279257 933347074 143807719 221098011 273844034 868204407 658969413 909704518 885904289 144284721 157370074 458518770 745378848 849790977 995561038 818581974 839056286 705257271 237705399 955380489 247730089 908498923 27929778 873268899 695340718 496079175 828197612 287561790 950589857 27747656 131724374 401971218 159180408 616444393 381878075 522622264 354912571 672951549 642995253 576011924 68751821 369321568 447022921 116118925 898881167 382766181 571350460 781989343 9796423 183152078 570796252 290568786 923755043 877443048 601268672 750167917 451930157 828367750 834953220 115234683 295884742 787860509 164598337 565847864 206502834 809784544 349263800 210374773 729745365 535184022 571418772 514085855 203671207 233732881 308057488 322950231 979428514 857915253 415530996 957128215 570113039 948856812 962482307 918372445 354868151 250436894 176731909 123583527 736122884 364192292 390838391 94837605 770905861 170896882 836927379 807364605 444452371 949143056 890905376 337149852 44618873 445779824 748384171 279199173 798685605 49412803 724558529 211075726 342610867 770034310 658036999 629097972 205592519 20070621 269600729 819099083 265809902 944863981 969188996 797527310 750840723 930667069 859775010 575273895 504611419 189318533 824859449 895984605 443148666 419075283 6086537 92616462 887992439 214686204 824160902 420047215 603813154 937228994 292634610 135485400 880661529 227013395 711418505 441808971 661871953 798703368 160993291 623487206 177937366 588644693 111612025 441724868 828184420 225534689 707198139 418130039 195295372 943331045 525888042 772587533 96232212 745690751 150255065 474018325 767927895 928959557 768726778 244645470 237093074 983939213 363300372 242465311 405067803 186941037 124425883 90578588 50119778 415029993 234604370 825233607 305174413 752982170 761452109 831921250 395108853 716475877 343421614 517129921 198286858 707071122 886462674 498538478 199987664 226516360 343051798 129664143 157341338 856824840 355187354 518320172 180870430 752676020 215029660 620530508 551231467 18359303 693049823 290091455 363033719 967761144 943020299 138532231 888234444 149449260 774026731 812140900 723676594 856170901 695965840 137424495 356195053 586739862 258532085 760449941 773380724 794393405 643376959 874879415 525205603 666181085 380708262 277670779 548436891 499684812 455065265 632121761 84532578 634349609 756162428 249572945 758774466 747787913 838113375 107477606 608287760 919535734 352333010 557005100 509958549 278952773 728596602 79080340 576076000 85335016 887802528 554173693 515797970 131320204 795873256 505776057 492366094 227700127 373856863 365077608 660827091 295904501 440865969 257396838 634016453 317716593 810473253 197216593 371150830 896710861 611230649 258573652 612914274 196696251 315366997 669618389 775335603 368455474 852142799 839112930 339251705 216070175 926711384 565089626 184803586 419616109 6662861 847472804 808761836 853752617 50190609 811917216 659289357 709114291 253773383 128447689 997121864 832265650 568734137 582582100 476340041 131009365 714913541 65486963 189356502 465447128 906630856 706901427 13410304 578403685 965540579 654043348 471929565 845216527 314796801 437495609 180628143 471561088 9487003 617836771 476106539 608881454 471097574 945122153 139628837 306656238 356144131 161263703 197838297 216165073 917124344 971146409 17355667 537413988 132197324 654317724 236705581 764695645 362560842 110174583 512321023 112281629 413049611 396132962 194977166 129629741 384158896 327621789 575390944 663751434 818004647 136807182 79734423 515566358 225610964 310882220 300196405 397939201 481498145 16857722 493039962 166004158 243692427 639039064 357690074 61117378 545736445 735416517 551084475 453188411 359002368 129215544 673517810 105728516 43233499 850198118 619041214 160464782 161091058 724155358 723771215 301790078 716505401 808995347 419388665 455317081 722814288 627462752 119753672 444598922 400591490 336249811 634332904 274884959 137748251 648732559 46173909 244417143 845609774 729321018 942060740 8542085 140359787 763492794 476355195 665916482 382266963 545794474 336655875 428060522 566515841 483489660 528368880 619610088 418944347 584096676 181993359 881281498 480852159 433236978 666247814 857305753 722698652 806411407 907103892 179772635 893781287 504193294 246774989 167559143 100253074 570303807 696220877 416440734 560927195 929791897 414481970 615783264 935137165 576557296 472907427 667194594 347614563 974790949 616832430 612085264 191944131 355232801 67052307 91719995 476832065 503873442 297321775 223886190 638371428 672723003 873021416 299987305 751906821 375609089 419067020 657882303 656767931 865890547 65380364 515438378 258916394 885927188 944415300 974633504 101286698 758863993 916167273 207897850 873282075 340207989 606557666 513922776 363872110 773736217 670790599 572341156 957968125 645950671 494180752 870174661 633794044 146853138 965388484 899114749 515398654 690284656 574476145 3299474 952849873 527853506 44328162 187198055 179311563 84707401 478262686 352285371 163080604 197537368 670139889 238753167 602734287 480659715 610419433 772436816 972909773 292207521 947877051 781115978 679432384 868629778 723175157 148469981 538646009 768814617 156379476 75980210 780759696 880223741 598311098 656191780 358711680 915244057 979034319 37070834 246611281 186885200 299204820 408363293 163542263 153307093 942379061 359362804 903264851 979778107 248625521 368106983 186270969 821538754 466644579 924857155 447431480 685049970 909011301 441606267 523404831 604130501 811773159 905918523 491760068 846957539 426604010 808331292 707070309 469182919 601430087 373970521 571191183 973510983 585778681 466396201 193504951 902763421 308696713 792992036 387351785 907770861 299120415 785368772 639619814 237780943 212082121 847498577 589484218 682987370 885257531 807752695 837450689 736408044 56350358 507506023 705067656 574797412 436169022 450886429 146363715 966699961 859729809 245300854 596553244 99333880 485480522 577063012 713415882 185667055 950440242 47205173 372947566 833178362 962679457 80924210 974849745 497408490 668216828 336155962 847422733 426402723 16109568 302186893 143021084 679648290 4969506 424808046 147557338 683877570 360180431 626176026 734226222 599047645 64664445 703842568 923213125 242064261 954252474 545658736 823312714 721996791 501669628 611299997 40843399 404459562 116507700 532571931 353585054 356563190 842570292 716627318 164821608 672003447 86245362 69839012 998056180 839558553 212372621 98196907 617901647 915143916 841069200 503672135 625593660 945872707 931510732 958508404 87367511 753945302 933453291 52232493 623800115 539610682 437678350 570205562 146809149 479804155 891325120 739607472 477277775 146271643 156343437 182419736 920829841 731616155 370962299 988957776 763516953 311310033 572229413 129871660 347571842 284962267 715964829 117622973 596078222 939624758 273368035 931054961 82169033 271257797 318764424 538070123 282209250 942377124 403348615 208731892 329936868 403993367 866645611 36850722 283495862 51182433 683906730 394156043 443830773 904635966 937905499 231687767 802024042 417782505 806421421 401138253 661910314 695895693 661654701 210955457 344082570 130145793 334026178 515254923 339841378 15213354 296522830 191409126 402405441 182489851 975144878 230286164 287159547 605117093 902424784 397895978 945743948 118533969 953883667 773230733 211021029 7896801 880654775 751516208 338867790 660477570 374219174 949062544 389214037 595066768 472552400 440076021 164215597 414220757 38981007 596111739 80542316 971325099 276270913 616024705 635798346 1265355 767249212 303327933 897810601 279085883 297877996 702461806 888534335 403660064 579223068 645831209 783467580 809103895 458651947 662468032 239950361 605888173 9171657 573100762 346644873 892835327 58456229 722845734 567471055 737759599 259843281 347201019 910503778 389032999 312756149 607429341 279820402 354470452 143242053 988091472 446750096 726999781 53962556 402958040 698688224 633174906 627645853 893471529 51130348 579138498 674782669 112537248 671181327 713071444 913100793 899735042 16650351 337217594 851045036 223590836 70780553 643776251 127417021 921417989 497143846 350464255 444523283 332298573 544795994 36747204 20626984 95023053 289876826 625124735 6285184 519515010 743105172 300645187 879303475 817134247 557725554 117001971 426534584 422539553 985665507 901743786 908210937 209385850 370133760 567343066 658171165 295047242 778902303 96652501 735014593 19487880 191653955 985009248 938351256 591654424 653932549 383638270 681041836 817043158 65475565 895667984 32754426 494824465 362353269 406682150 269630744 606428711 144288687 406604032 229677081 315931801 720780889 513524834 136037957 588563702 728113764 806158091 605358575 556572230 511024070 104718693 904345346 629266690 168437001 236046044 716805807 455922528 381254666 716470908 334650333 548943941 161390027 361211232 682459673 719421814 75061484 921786291 231141549 49896300 988113573 846550725 980320564 108993538 346415521 278948262 155462346 582129457 181337527 693615048 475940791 893948389 926599217 605152925 332193260 916174508 461192912 732143061 110431514 589941421 447588580 216469063 489532468 162307065 675088170 601864299 694360489 597676222 440456927 990164683 908156389 373292944 437534101 251411503 616601069 906941198 654192693 258308422 698153098 357701273 455311975 467630077 339506388 956063366 378949191 800813418 512141551 754963536 371702415 539082639 421602221 75587510 954257835 233479499 229324177 461809573 270440836 341345261 968334690 412550853 333762429 250007527 996411876 305329021 542809337 783367346 424342163 124430189 351036366 637826879 983078955 536009671 973250310 475226018 430477059 392886478 448925536 933405292 260730465 362938563 90899566 591181922 233433589 294116776 421380028 597008461 691730227 368905943 461475012 980653334 229610139 816278848 24093800 186104374 847301175 705443433 450651583 457531883 797642131 215205838 468149272 293607313 288365714 626746749 998378327 190777358 106726391 5748993 573454812 453740151 196844981 195702774 27549835 668608277 195657054 114570123 934803010 980985504 972452569 228044559 814751280 369351297 450679685 637368791 88211177 725815539 87545097 906055731 363880516 360167945 568111253 243826807 59621228 271523804 935328470 529003695 408917062 879589620 446379669 47569965 334378328 519845691 721042301 416017405 982950694 206549413 142020257 385379765 14086088 318773527 502120937 859854735 130544544 492375450 996804487 69241389 609106446 971694902 949738532 993420843 993079392 828125216 31249442 417236369 109610333 756629024 613637755 990309132 196192452 4801954 252333559 596980629 567558206 651358148 306515173 708234945 348089670 405663190 401529763 353736098 609550812 307850020 610619676 880661057 669726485 38337756 921838958 28189016 740167982 154511679 51558242 617673582 835600364 446803715 979980966 33662587 518094065 208025626 912266372 503137407 647723048 136395885 42276847 88612348 389657204 351892271 884364161 225730364 725717483 233682000 794813662 171556941 76321668 676888797 173921129 515162614 389673692 933153630 821399276 696988970 482476854 262273895 808354630 796558042 375824441 339836667 877381952 762544117 857129349 138411261 103843502 389077688 902813935 129117236 394826321 220767883 771253485 384758728 760183746 654178126 704347820 215545019 372316933 893965896 219395831 171309631 520919200 636424416 7767326 772483035 958190084 642238108 847977952 688515307 556263916 898112657 850056047 147037922 578191859 601420937 854411832 835633144 327764536 395947905 617953766 968557400 623916694 697086407 650952939 390905182 419911344 689277420 551826983 26507525 988898241 260972844 796294408 305972658 233293737 811284302 810957862 302521491 520367932 159502247 631771535 205541841 264925700 22676101 523583869 435898164 79759464 685954941 816245163 315212268 756678105 18917413 271056070 463094414 247034575 9666678 893606565 622542696 461655520 804651273 180771954 13332672 392591049 270894956 49784931 269278524 758925395 832814166 173943652 407786816 904016142 841796283 82768374 247929340 239904348 113186677 640087904 28202992 413512206 523340607 798469408 431228319 696232955 929577289 791023325 216223310 57079107 992592295 100111264 439323431 181867868 312550174 51616573 551534267 956327442 524368887 164396962 912452541 848223589 474582739 565589363 254461989 996224476 509674448 251066265 487073565 942514245 321679220 215184115 187846052 588908985 139781547 706045307 355172593 264010818 337116136 83025769 864996975 637638193 192708727 25994262 905781130 522473060 170491725 984939188 433322620 616344343 457619101 7352461 804863928 433085766 51001282 905073350 88654509 296937055 383676627 274920912 583415089 601637110 800560708 758745373 92046780 522929664 528427927 538067732 307661698 67233728 409997557 632888516 631426562 771544396 311126360 57574233 620855451 920498554 667147224 525316233 549867972 222160830 59989187 541040929 599297947 562298321 3279353 755441460 832941897 135389536 58991218 21305798 520072940 631836406 432037729 898479720 651092967 341210510 662995076 658745242 343358449 40893668 326064169 427259478 518811889 287433389 629070922 56770642 961588182 907545294 846709564 962885770 51227632 977937539 116448529 699861924 737788706 65053348 735494877 336689112 369572243 695416191 66570537 922158041 295876696 893061006 902925212 250128233 455881960 170712751 444233369 714244120 353648345 689862996 428799925 26631963 477780301 943294305 121931975 261295079 541642145 177594393 622107205 969611913 937660566 237227341 256312158 761805198 58907496 832895824 576219951 154502609 917110923 25738692 678586337 332888636 731227547 104930459 834779595 43227120 32530213 913841007 560084706 198204856 650762812 688955829 538889156 566320376 94425806 818966477 530495550 250683273 354862764 686414180 980767481 955226380 474199014 789136792 839435443 91837397 894864144 799941852 433604233 859124461 607363278 406830352 467846616 779851992 426657768 178235580 89777334 277308845 831971915 870826869 153178944 734560936 279041592 822445774 767921795 584879347 546974536 848353124 219560305 921960888 6452386 231178228 466286609 480561422 104309759 544695680 224586436 493466727 779404908 473860112 652883749 151550743 304520394 257909498 839739408 627576012 210108301 787554491 364911274 318853120 583343097 263448366 59155873 31844895 682666323 940459135 684034806 822421018 636338299 239633100 125113784 519422949 789480546 140826305 50533386 747657003 747713450 325018060 831789650 571432688 424483524 91004578 857663119 886206848 208216157 122390183 612487919 491488300 516619260 187620603 598319628 968724715 614284785 454735692 56467046 573875603 497468852 806789580 594338178 396629536 316596875 591554170 381464088 804604850 209301424 117269181 567507166 922145487 894526201 443005433 243260510 380564180 586411347 456193152 127554833 75560441 787208580 800920026 437108549 535206062 866933780 659620592 731660030 837150516 943321003 579305503 892338618 738859485 91843367 966342442 273330738 391971883 622585739 634615119 676763206 90920008 961038108 395500237 568936268 454433043 533590653 337148296 594768045 343006434 33268762 194176960 818268736 749092937 69488640 250455208 718174763 424643296 882261444 692576611 609234591 120243623 525000996 390862068 805302496 565812527 301631461 985219006 267298615 235289098 229579181 571074831 705306567 200314418 497693228 955666113 239328157 100391541 258038441 983433953 457954955 469911445 611852367 802825213 406928934 617726229 469118918 713452208 704501495 563989765 750035567 275155789 670815379 484061422 920743574 335869174 467046733 201561607 608364447 433511765 806609813 390101971 62180547 175235938 995823023 294018116 724352436 592540311 348912135 90149900 946554000 442891259 837930329 538919504 328702716 649104532 945432137 934419691 211119856 385180720 402615623 23232090 183377771 881901569 965840096 266207366 78905027 635109568 523673511 363167074 83916144 572063254 47379328 671272315 508903495 596141326 977166938 351548329 809912084 211093062 787092487 503845186 273413856 552689571 471317280 483316404 139684366 812309635 301456356 114094549 344684735 643994320 106780382 991417082 965090398 693140792 544122922 141452513 691781680 551643533 973320347 871425051 677014302 179751952 138611250 527953025 397356030 730156562 931562183 748883604 488440763 842044559 526393379 735582046 797788053 534827783 266827489 748419144 840623902 639010018 886059515 775043258 406019260 42669124 606335339 249139173 814520143 558553715 240163210 273344757 870256609 245855614 328345408 799187321 769799311 981704341 324576679 108978478 23667324 806738832 203474487 521147534 906026885 646261493 207089514 14552880 983772115 89938849 57365785 836151208 963672292 658612812 211377778 25741211 746191635 845398947 697400751 300510719 128572824 9566010 461551878 513984792 895545313 401190096 379816765 263842035 754716270 34743515 44335368 229223387 898418203 880963244 769016212 769905089 389366503 380607284 302940672 799577184 898624813 854874568 425764062 928355177 184824368 243829591 401810012 702898633 995405912 367961708 449983446 652213540 64866731 162511685 367157925 147604542 394352389 340728272 31494805 622449494 408236922 151620199 21006679 756810478 767273466 310772105 452491200 242757989 223378599 464234652 392167790 642345217 713353669 441838565 549496569 501107394 962967191 477765021 446359918 957121055 533165271 798645302 800008282 681302095 724614195 743840711 210853135 60637809 299553080 685699816 54046343 567216569 466534336 869974608 785852295 323233526 908421465 698084865 13546161 10105035 834369839 237621320 797836150 810985399 19873542 800691296 882182264 337222314 464318950 395676349 512005729 303856950 82890002 543536771 642096542 662726556 539809773 80626270 429206964 133278212 567191860 57945824 87952707 950961072 950627999 444757431 395953197 795937701 251269885 291854843 827195851 925015824 250883206 994663534 278931943 1933627 867892248 704519948 566938860 987157370 846688140 499672597 189374698 164358641 753741521 285267120 309601448 831656639 138259257 976048355 312341915 582098359 733770827 879699755 775374203 98514930 237023786 775804028 580259961 663655453 973937207 864740912 13365173 385056886 533762853 470340752 772747888 183833545 957740925 766383481 202117727 355124076 706786958 696383712 382743934 566490919 135964107 897315810 811950702 468452890 586376284 400157938 906895020 36825978 576796764 545481188 425406951 46023282 621991782 92913874 538539862 345449131 470103456 344525029 210998583 110699067 307378897 756417417 13863707 815450639 602468759 716744566 268553629 440905673 432270742 220916349 65203389 940585844 505117945 297274065 653002383 332493202 262485409 458261992 497101999 91866513 2695942 277183534 545235516 780230683 197735877 329749356 708996175 760233481 632081890 283085257 154338578 816374610 202049223 841447272 161915930 103213844 129931177 219899014 264356746 800014052 994763098 382869742 681047638 316419352 667439594 805703423 907007070 255174306 942097388 241613630 131136466 860211280 462461578 696426361 756461949 905397918 874427451 348162726 395483750 250466124 971661482 29800978 419652680 973645138 131993603 201774610 661386223 599645887 679060425 916822487 534427689 415987811 393453457 452704802 81074546 128949216 153148748 709172976 314433604 653287520 234014529 743952685 415861638 463062737 712129248 678352367 194554402 523968065 789038986 219283973 184040201 791672556 516167133 147860331 709864513 845567436 192308662 600286277 88851909 88252784 754533268 398373049 392514638 165982761 979203898 206507864 42429527 561041960 321382626 769016057 376793046 791283761 377864783 853420826 213596280 283534080 661293312 401388620 996355115 789409895 44500002 300177981 76836818 346818292 285580269 107382736 290194255 351033264 416882051 722088207 164040237 582467875 513730656 393912090 809292322 996842343 517540141 5762522 730337713 670923368 795674321 676557017 572991686 798570612 344984224 450561010 373530622 753403477 463557877 823610940 358233612 447548023 329163417 656881402 941394704 928410971 591379393 331533896 430246346 709541351 481244490 511825503 318003373 771127311 556801295 404145885 828942317 346609382 133109491 128609478 261929641 948321846 157884903 473652687 111345306 999025940 62115283 223531857 662953110 821437023 666053409 217895044 151714189 902323240 803448406 690972843 905632492 814934928 198143851 40384421 167270117 641611754 454781659 588706067 887228103 198219663 497696733 303515860 97901928 796745070 748007700 515113542 233778017 283067183 875396559 212251080 432907589 192663989 43596026 147964662 443981019 640741214 937945546 601439196 599980731 373801715 992133021 428266816 886635114 875929394 219943177 271072560 481924219 909572281 697563025 79893061 422849842 283478875 826357071 395906538 204260868 262256570 382425509 260562020 740937867 425349412 332392487 295311025 687525076 220350652 834795156 515959952 476443854 424694150 759330298 911585604 595102590 793460722 666369439 345613291 360890705 851527355 101388130 670892657 595407889 769298476 277093122 202371669 185141729 27464519 721546289 741906284 870450359 839145737 679497971 23926918 231888285 577453246 671751655 935540663 652495439 424499235 293198667 381477059 430800607 413444217 131532949 983121553 431586719 767327191 751082608 434921217 642017860 448275939 786555489 835887732 262167853 362381373 435181694 13699085 870484632 295268145 40120357 138691651 314819229 90722124 568967456 969287334 561930103 15592034 253139695 914357484 347288330 987302122 267831284 956568101 357721882 698424422 88959625 633933588 886109767 312848380 286123069 34872559 181948581 324143592 792211419 702428912 906800486 586308116 904802036 472302146 162875728 487618213 225670395 510254809 995005413 12900749 680326751 841233856 986560935 899017403 889231196 558583496 901498508 18236594 919739828 750223100 41749543 633208740 386158028 395386716 296689328 228381726 117917052 928966110 372352681 589534414 597305363 645164134 645394686 392125750 208386638 733146731 885115341 170239011 25854020 260296474 520944872 595874348 192384809 535681951 245963219 167058390 701028505 740270495 85497027 924122121 444057846 932081057 757969599 295472055 704022334 826825728 80675866 647575982 423696244 917840280 881433355 77290494 588940913 902195166 949429749 81205223 43877899 628829788 363239495 190422421 298114174 389357776 125684034 888811567 895755257 923025237 791115443 256514121 988423465 793324312 559548039 596354505 720530506 907990897 269881020 355704458 862765716 402943289 76226910 150689150 879507318 968208821 848183990 586515935 473269957 204664729 335440531 752541011 560770911 374890447 610442388 886716867 144030202 462365597 311657472 176806994 822236455 328795083 136659867 968411147 212392362 196055341 968040830 525221652 116484130 770981411 234323092 992792130 709290793 248792291 616723087 972197993 514727707 444081236 794267437 291065103 533766199 684208878 489321811 786909160 978685206 420038062 271477570 54281827 564127998 902867344 859639224 786010633 741331709 516423541 874360462 632396461 560189968 444531658 467991496 768343427 924044162 146082096 821232019 650200908 32700548 872106021 131094077 23661284 396750418 390946185 399098652 392832604 167746854 682034546 72025005 542551756 676941936 799595291 109635700 716911345 982918900 949109821 533457275 350157914 842523447 372995176 528192469 349182878 632277688 520218164 747705261 952262748 678504610 663172634 30926883 928166323 883377910 529576509 916537926 786897562 468465585 955855472 177396282 225263040 375451011 595044407 180411650 896276388 774902465 315656467 218583105 729425951 620587860 888702862 628674058 123869439 779223194 778677985 385315898 151237200 862322426 941521453 813488126 219978318 916206788 346012635 263283339 594636834 192304398 28702406 6728129 103363157 397918716 282127604 984116214 330924450 418527411 828116229 290176741 933064685 552442984 879221698 504006133 484233199 663577247 361310136 132110036 763795147 949985924 708380597 803158790 797941047 695829661 970910484 787984250 187090029 4413183 228568309 270804794 757648185 565965243 170840138 591131998 925726121 920344652 64079486 86920722 599848078 830307539 642914215 18064556 302901469 142588531 362279697 928120705 232137028 436653004 497985485 292450219 676596963 395115464 667345765 681723937 861189912 736017538 127192217 98006492 350344799 965569102 169783987 74285860 106599069 215436060 232092972 180359134 152056819 784370256 437917257 264047765 615314713 22302409 565307728 573239924 743047497 389042045 75153897 257427592 35420148 44033106 294121438 153771032 319424947 190368542 704201910 113307185 869534644 711225135 972029706 66070903 796490775 904862880 129853981 914531579 385501495 375088897 153955189 38249058 232767765 786403817 4921023 302734722 712826993 97971241 192725910 552666087 757860770 543915145 48761098 26111933 693042009 140893769 311838678 93322517 309497172 964552615 376959274 467134200 625087754 138473048 36553583 778070111 2787215 435872630 483857943 859512105 289611504 793718953 140518636 731674625 291340631 758762357 497707902 688032375 561776127 288354316 274500645 512427653 459607247 179045508 545652636 430683005 728684558 199774719 955223700 906185817 266448197 610311999 912366099 146541262 940543946 172244045 19111479 269681511 546342083 467775453 742151322 268664988 474890632 459382925 721536735 949065139 764609624 947318570 840790364 340957158 323894936 38200098 626737500 77968192 89808800 963295822 935163087 402863691 402674011 529701547 339516507 53835889 721065589 101370737 562493042 956158060 170373493 84580957 773650316 370878214 515487672 937864829 836215005 266966193 739436654 864944012 456230975 721918072 65735640 226995203 442518563 397740206 97072623 660517751 238280950 65658683 983966281 627206190 80813569 512031688 837147309 813289560 434264816 618863055 479921678 960194215 534245044 457091547 249853623 544378412 484424783 397370885 167136764 109201419 412254082 27938656 427954319 5729918 15488723 762899742 392860702 539482015 29309548 807998640 9860467 296978045 250879587 265260561 833083733 425918783 818970036 552014207 888040230 897343813 340267774 422004877 985089728 488892983 972603389 314740311 818280957 208454117 459543786 146572697 105766986 911185801 132530267 671702015 946390996 479187378 790677543 228464630 889273118 555122519 228557585 846296096 494807408 560705243 538122855 958001385 620275692 169138889 963809271 832791515 290310652 556077415 624111315 342728859 158184166 431976333 878356306 647872742 680583611 346429424 66110850 124039485 704080650 334003461 671919926 821052098 168059530 198753735 163925474 370182530 521852796 266526673 821681331 9952153 711902474 208449851 813666009 337567651 153113433 901435225 474731552 214823363 741402789 247938674 674640185 724248505 877242229 175086281 513899020 97859621 310852526 955206328 650211064 416505472 875089180 703491448 513931383 870730951 302743868 785418651 796047431 439924224 157559748 208295273 598421760 342327189 563499038 622750703 518064428 84875414 303335883 811696981 203509318 684469906 718653818 193427020 188809746 51491153 357159833 842978475 215322543 214672195 560752312 739519530 201972856 883771349 518924065 299582573 262904604 867933687 928272942 327716691 764676782 214475785 580753721 197388373 330627010 859378521 344310792 170776027 684747057 835792561 399363302 514785159 163918493 373631314 338655745 869383334 840517287 652748995 698902292 415711588 667448611 293824239 455658367 594735582 182705836 221934064 878981220 378071641 179660919 85374867 116820261 631389294 550478775 594356860 156332234 386228310 708606266 734028908 224805531 207444359 644969734 35924037 893296907 101657508 474271882 441575761 278121847 29366970 4090134 243243407 320935385 419079960 951345222 303968885 142202276 991423190 480157140 809880864 783589965 609755018 140282674 962582126 324765670 934453410 849362328 528927180 288356502 528358628 737989756 993103231 429571967 533090957 879591774 606649999 349199885 60281601 594478012 587947067 408767355 524344914 603740134 697901624 473719665 223470861 696619894 436223654 478109661 402489404 10448490 140780610 196789462 158401989 739870053 650194830 695769212 294345748 182949654 454860879 849046267 371484494 110570197 786826413 19962011 915819579 551634832 986483738 132722316 228085316 345448408 368759436 415219700 484828955 888919102 257951230 355711053 762707471 114592626 780108563 662610675 326059061 575004109 709088412 953686266 726476762 223459306 518467291 209244981 880275592 662260922 62982342 150603250 98582185 168993292 447248638 255628493 202856535 122744374 271791442 267266956 801714919 595954761 868440885 63845165 258729089 319956183 888845151 870245260 316754705 729559895 571524181 384855580 130114793 167590262 127999253 540472931 495396971 700821666 375253293 769939956 127456408 902980630 415852293 229618138 529408266 514913594 86023075 23914150 209704965 654790945 104744265 305157109 966016926 372163553 403371427 758545675 533747137 240995760 459579775 437650843 80546591 318877527 640177597 155533621 785144835 381900996 750664788 466317804 873906827 54043598 524528786 529681323 597265203 815762761 301631277 503239082 376056164 456140906 886162861 422519429 100619835 141333076 398213326 489883821 493750838 837883436 578453111 894516293 710326813 404699874 490834994 132310924 701099135 569602456 81199643 757833544 567287697 185187113 562396864 770443042 212235803 187919524 128138443 41350539 173598140 887603435 557230349 547897789 840099723 852184908 792827407 265933270 489016369 785391727 505038918 807596866 698065595 531820949 490292651 337733190 888710106 874885584 920900124 408507477 671805944 917807227 614072810 960571760 500935257 335090986 455860211 408235678 832772597 303678670 988222644 20834141 214480792 267752925 756663769 423262685 521728003 272600788 705810312 445597524 929245201 344842886 568385905 14798505 51645118 190455153 783262099 932213830 129406916 465621008 284131700 446993063 670339002 58830746 374118184 855281676 633302254 669613892 685930284 247430688 308789671 802774121 86056543 691529778 415810349 32591108 892684550 208163042 150615010 635155466 409245560 790913871 73015898 535447875 630016511 85253960 296616167 210196693 997468965 519997625 114108163 990667407 850737779 705737175 818418725 201594536 119225787 343847321 612012033 298812340 13138227 952320399 552087941 823814600 935286622 66972364 946663591 561113063 308649198 330366631 522532988 550575485 213095529 934578784 336520804 431957540 630860167 294507783 103374230 693842656 818470988 153251890 172075365 10826604 925198924 227183795 240269392 995261033 96440219 636313486 600271864 521148159 164159962 651835197 967037187 585412633 727247666 735193976 702037259 517175931 752385386 853328704 502598512 874807421 544899694 611480350 888025063 930439764 714478247 290569920 945143250 139417921 67363955 737720809 464757203 627451397 997361774 297274008 91773136 678355816 703672302 458288355 901954268 818546183 930103302 551213258 537936832 214876293 359076136 913005037 913697169 156034277 58824658 392522442 827699360 520912166 730005532 735122101 698330229 808732582 240646569 270821412 709824859 760554992 504558808 485910182 306552364 121315698 703988961 524106882 376669991 21302132 740944047 768135392 716532208 730502900 619656117 151234182 832052558 354749983 193758993 61416521 93571524 888646133 521844673 877922715 667926250 457506366 648847230 410768906 218393154 887956206 546705409 970292286 897316714 169884041 248471214 14721343 270285696 644628315 929494730 274146830 550285161 385268400 791656189 634906429 968786235 744031572 162312697 908176183 36424921 859815635 107518029 911384149 763688280 385730450 680500836 692191008 418106145 841592022 634310755 593685655 71079611 437383967 754192313 693055244 643803838 847886797 901046923 608697965 293309152 179193274 814791830 188891090 181844776 601089602 340222550 87406359 515670497 12325572 106699996 73816333 402310795 623836685 595087559 416860288 937921311 924161269 237102515 383321632 506628114 13499329 261851806 598768809 923088279 196109355 287101027 571138210 478357018 564259657 514993044 675670079 965478131 789567175 149224378 424045789 310772429 337590179 700374391 99833911 525317221 984249097 684614134 589823803 849509258 526073032 833035520 566279518 206625127 138962069 657145941 638602686 689743160 406010588 87102029 502316084 662600350 525779229 168134385 209864313 634477764 772704508 334514013 97851071 464232293 399374779 128564053 668824463 980462576 104346442 568411065 97980594 68997773 268206578 449348567 731429401 543254496 254730516 593104782 479194233 595733598 766904017 249102254 690154253 183432637 181315711 803775734 267093111 604385025 44922016 806321862 269344399 742488000 219692252 487020262 951212437 104116016 502246377 420692956 396396657 284976427 96397867 890412115 528448326 875834249 838116923 544197729 952076351 295282562 654436270 365152071 189826306 392614543 410986664 565856898 494325150 913454456 88507845 225410940 426938555 743144841 874167639 464755707 685159995 743018508 642471132 671151933 675637198 113091866 715381332 411639662 899592061 985065120 852957430 116808492 123491192 548419330 826676518 416566619 252227679 600230051 250813269 939984776 885786399 421637712 552134990 420555877 986745095 268327198 97707674 391301600 156920261 601399685 654587853 591967313 891168458 773310232 64282251 438417982 160277841 28032496 963476413 864376560 322580084 326493680 113870075 73843294 720454596 654678899 170602115 768410433 910648516 794448982 305161264 612881156 877724930 560219575 545822707 345189916 747662962 833951101 331073832 645933779 164593439 982191086 924515724 520473491 445027339 131693187 357037181 236365486 928449566 552906264 501835465 976274759 604428941 282906317 328499861 403258285 636361676 297483631 271152506 128303518 426176867 740652120 602283560 111997934 558537224 301853573 795103681 709272871 709912008 160223330 862672706 188650382 398170972 591060564 190284492 413824925 652007421 596320197 752535636 907434840 873244564 178779060 611254666 241499285 556773861 857303469 476367902 415234028 762752574 571505743 779316201 819162470 241171015 795291835 771360903 8013052 23369192 71680348 888742107 883727226 599196310 762280860 569801079 654015875 529682457 182024198 72084919 769441437 302960346 321089831 855346162 475130491 627873841 51539183 490666241 261688918 433909554 397559267 654050483 86764141 854363163 268250219 956860778 950660209 395221496 770372006 191041473 104118395 317777250 916888937 294436093 880492871 224583965 592149667 188032745 679001576 235841800 113284949 64102817 303617270 188057274 252801288 121781672 475123736 755225498 154628800 925134148 487562119 830327034 422240285 611548603 704979732 292354849 168017039 908177325 348716334 925733201 408316491 444793474 576524507 998214874 272739238 978068671 44187164 329960683 950997051 42899612 341409969 418811894 940400273 316784382 538873091 576251626 896521898 194898033 197192988 250285510 818972177 658686280 123504494 106162538 710759629 900501818 272134964 866799228 8096249 50019438 816319572 547431765 354655727 450014185 874839265 407808377 203412206 172763475 746527688 204302183 189923900 797198746 388071467 48577680 498396902 272688043 162231328 984898804 175281775 44443031 416596906 830475714 995006686 546620597 742088649 379222151 477089195 613791175 938312911 788708456 234889053 364241824 697388683 518254909 776550700 316033457 566035104 655809489 310586404 892641468 986548852 941884472 102350885 718659637 1669923 868543408 258147476 513076815 669994710 883273073 156350321 572582291 965216688 320064947 233783245 745350462 143955367 640927695 873781667 312810665 901241215 417985792 464891087 663148136 538618024 431483718 896808296 959859157 760546486 255784864 795869072 626738992 714334513 588710034 578712183 339615931 62467794 413124241 223468425 937538241 685411615 231984543 815023234 368097167 441122434 501966022 827546644 7744734 898288983 855296914 375325528 182682376 512983123 876453097 597551713 981484279 44634360 957265266 391418143 807559410 239018747 532505983 766500302 536993123 106037009 878586953 40307172 950914677 537317349 449484288 497500578 557094006 85406098 736136372 316996170 612219731 196804429 341977609 191012516 100936099 971626799 186503748 115154768 67023938 591717409 629375460 173958630 615659666 260573638 678055121 316312074 38938324 406518387 41047374 99505934 787133460 98573960 586993905 546358267 733741778 198592016 811662082 509824143 540371513 203208754 232932030 150764142 475376772 938019428 829771917 286612948 394221875 529627366 674263326 235293635 269252745 999599284 199861427 422042015 341698852 57376173 11579838 110744562 363845290 201742779 281411083 262865623 494062333 100403247 98325066 315113748 704863947 97123651 660804247 721650638 425622317 533150504 350236103 564015502 806198370 213271696 321730204 383342610 26345837 926927027 471274345 637937933 473804420 906638492 826784660 625128411 247505487 696190119 569722106 427873919 485447397 33412576 95356461 430971481 59149763 938512289 550492117 276848511 329796720 372606803 510003976 677404946 332531925 356882474 963718310 221680783 443788925 232519333 93787922 755636998 273289302 668115237 630128989 500037480 62105994 230947688 423006633 160082336 642437710 661741256 604396041 419972114 493483144 237816128 307746762 296121891 551446609 284128392 688767596 599645192 455971599 167734018 944499895 574587185 87557125 658772862 773612679 665653021 229808844 650249214 176551186 339406556 570290641 206715819 963079378 948225404 499626013 30083490 83146743 942175030 258450401 734800713 625358600 663197313 882231738 502147252 984385788 472426239 759656328 224400766 202115995 724962577 486121856 497007670 746278709 865387862 840430057 239645504 197367464 789156961 195896625 534518027 233083001 905913594 775821430 419579280 291689383 815112880 375570059 182536543 664997465 755275626 106679424 664422216 945247473 487073514 398055173 554752138 927121140 72933912 265135940 322977713 822625027 233787265 678713657 773036261 784365689 485794811 639194873 262855705 851820729 733106398 882247096 578298839 327243847 200658127 131295075 949443942 381276894 616508065 128646212 426005116 243643961 804552489 94744129 585729557 239629540 25280992 281095989 464837337 45853507 925828681 566778388 793834584 456964135 518488543 474887204 52859125 904744633 799475667 291577551 298613450 576729675 868994453 524255408 880161039 160268370 978122025 784420920 507979329 142931091 731565046 194819763 98910926 872747409 279247613 181647369 246284517 443802296 374411193 559195504 933767600 734666922 538942284 799386219 508316329 621399548 583185201 85680249 459777137 552167101 974424252 681242575 501387358 346948547 769045600 705866396 321440879 125732868 7753416 493151088 988110210 31013300 725501416 996897292 435864826 453710840 417210426 458836331 669815065 959857651 913324102 26349510 217143716 187616354 106686428 287477560 618863531 639276486 781760116 872924627 907364219 592099282 128050000 270970945 479464979 152109782 932338057 529802348 509920932 234539456 657718095 435739707 390653253 607980551 15116192 771464482 325791466 758640508 980535795 361309719 938820516 646934181 659885769 762436893 897778815 263267716 481366673 128242779 738695315 243345394 81888061 634763268 450467977 521744989 904544130 252439030 472312156 38229961 838845102 307658875 880555410 770051547 188008643 32023217 840425500 934279961 792326342 759042326 215671882 22305097 565257978 858917969 514996372 587043543 810409214 242945208 894473978 6807828 376007328 767516386 494059000 870223055 288853879 725783251 956174776 678363350 681149316 136567064 464774263 939782667 699539835 20940108 75375144 912854104 223415711 197997070 153673133 619618044 17041143 140826685 583701035 145123206 391021749 541426883 97104842 486764546 282927438 507761703 469993941 94546135 415409756 824200955 898414486 231191354 827627250 755669898 484773467 28152110 48900973 349589253 173739452 337616152 982612676 229943340 721416390 423991593 148184442 436128980 211063269 217520431 903145545 251248353 308197683 377556109 602060430 622170742 366523318 794686456 397071265 754368956 854651684 909705288 315224248 222618396 553868430 369088463 538851026 175579309 285547158 385832298 320236785 583904228 100009093 603547246 647138738 702267997 367983735 928668304 705555639 297781155 434240734 269350196 349822091 193652963 397664985 358122176 917904194 74060806 999968104 248851792 300639146 32649812 840884290 618601159 946334229 773148570 498578245 44220356 943114878 674772232 415881940 228923155 658150816 145380702 973671228 1175650 968783258 188566204 28657512 43679863 595745862 529392601 216947206 353438147 457089393 388583915 903559093 910573256 539123321 910193331 433613459 363027175 946270414 206149073 801599151 519396298 181328163 422520942 923008809 209400978 573624520 979051035 135680852 924511126 51215436 753139627 316091128 821454036 156753132 852223812 22574337 189485434 119253329 7243053 643401342 642570230 860157625 328920908 807198938 755787414 713449409 225908854 384590124 160823341 909103589 411913719 860723667 88914994 315347839 422720736 779501049 611554675 137871488 2415037 521846932 938796552 947838523 967167643 730202238 461346147 961820942 244741400 81146642 679326978 522331799 529916234 379124909 562892894 653822400 445334879 316115889 911582618 259668045 159455873 507929672 707876465 628956788 380527640 834075814 984317812 72738722 219469689 35120749 350549787 941560884 583246300 653493391 435808726 195120314 387754936 590510468 717380718 940363614 520275652 120406215 71061789 465716116 212521629 191117832 982460560 59764130 694127669 962217021 641306260 906978753 134104201 13115571 129054758 7222264 463306862 888530374 432984234 78518181 135887361 153589887 307907945 268434636 669938589 951183581 965291228 193595528 412742790 743089353 517089291 862900848 166858579 452262105 839366618 473998846 856141906 25113800 412609987 969735286 871140548 94646981 619238079 146759814 14944213 488425575 785761053 369916831 860240812 916808939 505984475 501932 620044467 674972076 384240318 719911120 886354393 257781566 203980065 702703256 58676119 537003809 908442899 651110061 579833878 114129067 772873960 265653596 122656474 619928544 860798143 470113245 609062305 432344040 682934978 469045601 653075745 242152825 333201484 535982176 404136317 535920213 888035409 882749841 748492282 244249874 774390370 258404743 579201859 363659972 943260474 713335575 898784762 50272624 29519009 968042870 808807727 404507774 316263234 840362720 973784918 214241560 320979303 110827254 950357455 244661690 339777272 383856382 614504122 151103726 773112965 171333969 638703364 875356090 29684990 206837536 495005357 298415313 237507500 555636426 39203136 233123053 528549569 23805590 356681485 781945226 827082061 880158416 397964540 809900563 542039472 702055358 116700852 983058892 48282077 933120565 655965874 620215590 709928860 920045938 613748707 138382230 193711606 352558233 788497218 300222626 594851177 474293239 822056046 285049069 65697673 398906139 212595898 636089323 375167755 911167323 111715229 14491173 479549885 891082207 639569111 391895277 136147 710024897 844607399 687418631 192119154 982024927 443574519 377054798 769765641 733998671 319766879 200374850 32231529 816898346 381206549 270069643 851043953 925670663 421826275 121661771 605631532 764720070 740931753 362688608 923211061 279353769 820963956 457657038 180540871 399319797 481807997 813992279 785699173 238938479 66163039 515216348 735754749 404082478 548086040 652919919 125220673 965572827 807011444 466753825 266993770 298043916 997286515 246663125 366224216 170647741 79215306 9414668 99802639 737662499 320118534 715627037 165959826 58024501 276077025 2550349 294708428 911481817 710711567 710700671 385476808 704109388 965805219 444744032 62587887 554015209 692337140 54295316 890986032 109876594 236294006 706237645 481125034 223740344 851557658 201500445 51695406 84999075 637156374 913321313 845531171 20042618 826946103 826701791 538820328 461441693 859641271 454541163 37202682 288237081 240245614 120055192 156688646 31202344 128569677 106692140 879164746 235274053 838489847 534055619 990087683 267519277 322956750 769773035 292291330 15684816 84923682 585012121 799908622 770343823 569269729 191356039 530103620 434496205 522593441 424945730 267764848 128686357 253231635 184427662 320135122 149936560 144643449 716355750 710957005 826117602 564304316 708847021 328759415 994991762 357529945 212485015 330723175 552744736 566932447 753284751 65420535 106130960 87572361 247410977 16127334 937040769 65878430 614869098 805599544 88265826 374090650 856837312 437324862 713553570 658902790 857439474 15666672 187613597 719171579 790955746 516219326 320123639 105831105 366274658 601338805 266146916 206635549 96700003 629925728 156498401 997931837 520853151 204028576 27380070 712997980 774951288 589316389 185102112 247092191 73088181 541140099 652057374 396088017 374937744 247981542 640452951 180640610 713174349 932150946 934674794 972308516 254996365 171515811 392109176 614782893 770438200 957528630 90989884 725683805 336498468 611739028 920303708 54720584 613172251 209619793 64097720 3775073 997869851 558952228 183694955 966898960 143678724 548772704 500861348 172255737 781674754 191732405 145251812 583706460 727047978 940177594 390180455 196973013 514398868 766380584 751243284 556181370 865014161 506813114 130008423 115086740 611973165 714166481 27996177 536660978 457703873 225249041 45740084 124921562 923023591 907577152 846595089 158690716 933528978 350938927 142880221 902342457 700142965 679268301 104424318 635378365 878021588 914692670 561413612 90854418 123979599 246462950 232518836 580852836 915091434 584724908 783072495 505121656 449301186 840224311 4011947 635424966 706091720 898030817 537505833 233604267 836839363 495453505 638358437 934552179 8976450 157476235 894425344 670123196 634354895 129946508 331185147 868396946 191253177 805549813 394973409 407399218 67660871 179972579 165269375 326694754 604512197 346886757 884622929 306132874 956511866 254624688 729059596 657549678 306894838 65200750 13081270 719020586 706986352 763624657 345991873 584746866 617621878 830916052 27050038 455470726 905720359 152611757 400949775 24336872 630269672 765617686 308114672 194283117 478091033 531919498 75051458 959266750 11069411 644989177 184624163 520082253 466025830 234942777 554582541 244095620 509652778 104686935 361237053 975652341 1746776 534445197 924296146 331300743 142325280 397149267 754296074 472135145 944237910 866956902 234870925 437984149 25800196 761930771 491988518 502650148 92026078 555584981 393640926 969009593 441655914 351080995 936938951 72141500 548788630 21122751 760695117 544098652 526412497 210619150 552888558 988719406 756823746 86052723 445577131 552975263 694499382 720152057 821572915 24623320 592631138 871512637 948493230 69480104 32610176 108363501 7632817 356150062 211974433 781714725 623179094 665461168 539891545 892391422 66818059 106167890 307134818 471638321 115856300 917686424 312838529 771260036 502834719 199377471 928497348 9193165 839885648 31659294 178835382 286132449 614341604 581280356 504096956 624423092 626924757 218983960 828937197 545847093 869450122 855730808 199009717 184881113 424337055 878753064 767216464 963671483 233767499 865831501 118391317 521433739 839629843 838494574 518422050 228104037 624583858 961587979 411387265 101688538 178251227 360294643 207045798 710051650 686056988 157953994 487608631 982112255 850733703 154882382 385856526 372541221 895629245 408973465 952174037 75257950 686377650 922615627 514679667 981481514 372973311 754931238 394809576 444339478 446648635 115596267 861044719 664375336 345508857 609428952 749610463 768108756 404553278 525035136 108660829 448895143 623957560 299569771 103917907 755404820 608824647 865993463 31755826 7228331 928853674 884844606 781125418 244283475 49854447 478219124 12024774 53563330 131172522 883892383 115535753 768714505 376959931 780587447 94615330 571511983 119482295 726051582 45199006 589347411 461059704 63412317 201561342 309097821 337271343 735730064 903471778 770308343 296987572 268291260 670306845 460837880 73348552 545265351 604867165 595656839 178741107 167268968 773838401 347516372 307345890 347791135 407141549 877467162 176924617 764079640 643551815 856618222 481785396 831503314 186588855 672175853 470979049 816027413 202604716 288758520 143500292 535791151 561210951 270387981 835865016 770980233 315475127 4338572 796449112 754043717 398849576 388785310 750691407 768306767 226673392 463652133 83565658 172852536 395248625 146073307 391338873 883342156 618533313 86068765 75120281 914977577 492914691 881371289 53485515 883475632 385837526 971933195 318185714 246259925 791716667 274778934 758310060 902386862 606938496 255631098 764211155 665502943 300389568 9004955 241466669 866457621 129764361 615108734 449067277 172518357 536945719 428775187 597301075 365081780 990062383 365794616 636544604 871526312 174470015 586270862 863971744 805278631 207411662 595278928 512794253 909821215 397493133 843352760 791159084 877942556 115362117 774387464 990251530 226038837 334818678 59804301 914355585 874726448 663169856 628272766 204985343 377644828 9942332 488415901 462082749 415343026 934323384 546454008 600178493 836063404 888930221 499315224 729257801 953885718 960006326 742147482 286950597 675949534 674772939 174973015 428792320 475468434 960730762 763162676 990428963 655349965 547920169 661019837 635916029 304505917 98669305 31015005 78498617 953366659 175400132 254477059 932035287 835513444 887584296 203822075 75954285 409921411 40905330 872707173 861219777 626915036 817929575 697295054 561170565 577886152 811616185 41284518 36279917 917901673 600538644 162244477 630792879 471944045 253432483 69424246 258250915 410344957 315208280 545061678 804589706 820152710 778048420 719384210 954016286 875659811 232055520 335365279 186077150 730349240 722221717 814409590 804800238 984756008 815753766 320072230 570429418 944236639 62701 950242603 271812436 329018316 287709773 625726972 304789490 514385416 159349792 745536500 418187700 652225873 114603484 952885456 351215909 642446076 188753191 809808507 916404781 674204853 389072320 234892986 657540256 756931710 565970944 637334551 978009991 866679059 879289983 396506359 270973878 383367102 972346429 892940568 204790263 502679439 742144316 510811259 23086190 322325398 281250588 321900184 170838950 425502512 122241793 278472095 787455825 475165391 730536405 169418764 2845147 105931910 948551416 338967244 882024628 763406965 448777427 397644094 887225833 171723422 436610944 852278016 496203387 691909422 337409730 38787507 860223290 969239376 871088170 140889539 924302336 851073864 974759784 921920135 316796587 833233840 901065908 152425956 165069061 949470297 864816139 864526416 343384867 8913982 63743739 398650565 386663967 363684555 257429321 213430900 111014881 722723798 40351121 44440841 666418661 947380774 92662613 224546406 257535032 308024666 638100012 694630137 103081109 475307723 442258165 416433586 344057734 304542671 136533905 392874259 673455565 706009829 852234207 515930640 469491450 410040390 503396235 734883862 289599399 26637105 608535785 15879980 170848493 35707107 108611205 133052758 888274497 921163275 125575321 386564278 466065981 431663382 276070283 939472482 448193891 872254833 350972894 651312849 908823540 872913262 374523526 382088414 768253596 166981737 381582003 133535828 355199445 444911871 15310509 398788802 222954087 411379973 169893880 368045687 493559909 185834289 115860611 408433437 57816261 977216642 108510547 101942327 622376025 672204229 110454514 654330496 687938378 581168034 796642296 178331444 612887789 416727455 583240145 48705102 761942793 90342398 244677070 389096775 800661174 485936640 687697583 898552460 774132090 299428501 611738393 587503584 542407283 762993193 43965803 39088864 118699885 941480954 419875667 48066884 80832718 345263309 755042818 480151616 241143383 364245204 723076156 505817644 78112774 563619718 648545237 842755424 915320925 917610941 132291197 739524092 617095439 584112881 738253648 712956448 969595424 762718690 855250292 254120623 156537492 633278044 815921690 25730610 363107004 208165184 668460927 80283514 670453250 975417672 759658842 556661171 264495441 722176885 132576868 543627247 222906581 55953586 887305156 916970569 132582700 362693277 167666168 56846029 73597939 913017493 763384367 655983091 773615231 277176607 400590231 585574129 297712980 189538731 737651878 331967201 546160909 592354078 627516852 685161797 487447225 401332858 164888149 841089500 259999512 560881340 837907589 336973790 506769913 453391591 572406154 36193296 745713262 212623175 109715210 533195161 155964400 197711155 117359183 821713701 848487963 917782155 405411004 302399017 671749025 770904961 506325376 364160604 975410073 344421169 409677923 583301576 149656038 878395039 238191613 378918465 461237952 105168721 221873389 820590773 519336315 994194152 594543114 520387108 357721914 746209817 368436753 7712521 936858242 281245022 976227246 934042314 670872515 336132752 447207694 860891825 474850574 422860543 367393641 608560660 958621352 654241604 650456982 368139676 995503547 516752546 982681812 300356215 688879233 604341222 381407966 428196111 291859015 666900438 905377997 510890296 168634656 789421534 371118566 832343678 110304154 371656174 193000951 800216953 967407347 406416220 101230351 480059099 811419759 600195882 636759583 689545663 199176170 513873811 915366640 388683746 73868537 537373330 909260690 892269760 751010217 7249699 75541484 303219433 376023322 462881032 822501352 843876774 146409199 895998673 5583668 90513548 713200332 254545061 355235844 318196129 901052316 864562772 738132351 749649084 491311229 813724789 102317586 206734575 601386549 482422939 566370615 633009334 626587453 51346586 991796277 843909142 337427604 819323042 89063578 369781421 953139627 1604489 656015443 744225428 504505703 237936008 701923891 259040099 741262560 476543335 122229654 964631773 768665958 150664902 798193380 479071741 242945881 16357390 348718762 373074030 247565042 788928596 652140219 712526522 467771984 563076629 281448324 9840683 571019810 494081733 594161831 963878758 505887332 15680936 724370780 13241074 133977231 195923446 638695633 107044283 64611526 252237591 197411923 474705952 919583112 608429639 314750203 41791324 341385135 839591916 800127872 759651019 38326615 216896394 551627682 479943977 315727788 525044751 297516504 241296775 594556679 861665471 71160131 348199833 323514 448299545 939575652 972998887 293314245 752690089 900595272 938075178 576141345 771339348 941699703 430441969 16573000 908669616 955451035 750891608 33198205 287818100 982787867 380374912 638184601 588660634 341131441 79561996 558106945 180165624 667878495 546718307 595657529 175362333 833535149 603553089 186049320 352512415 682862545 228192220 308438886 765358531 385102556 805828365 951704581 505972852 797104774 964486306 875612284 46325856 648484224 610889616 323170053 150147717 351416851 761957304 553253751 456647259 603446472 530874990 417038228 605045595 444826141 193292490 805457772 569333920 867697051 528252803 989456713 318184261 89639652 372156140 533891611 562600038 511858442 650545192 11709428 449603902 757774566 941339152 472223490 890693753 626829178 826328859 305277032 423660805 694903321 631274926 74967506 107930694 510482794 578906084 988187942 177036721 402797465 108552913 536034132 962945571 190270564 287009873 288979589 891195625 309870997 449883633 210501235 564129796 654072875 354890250 979488255 604206306 367895516 985201357 411372332 216272840 808643934 387199983 510128419 657438898 10078679 741996304 673951529 494476842 670721662 473193905 644699974 908271462 704430278 953607903 179031977 450601272 33135936 947521944 818952824 118318644 405920445 759561252 955326836 919432064 354937414 446308833 699939643 477256570 792765089 43156649 397838820 376560671 654385456 52638941 691993555 117845817 76047347 20621502 950562786 689739544 821482442 247809084 443203050 670626496 122374306 781662875 194454526 448533930 686560411 28762325 648450904 212629495 130751279 900369806 643138400 152389797 333476908 325395286 598801422 175425685 503244657 974883841 116172958 936592302 490678051 685344795 518047283 897688242 553634385 277658696 674744462 254577749 600165943 951603082 966934863 462241587 155524839 110449230 81619821 375209088 724131862 75909500 916316263 887328402 927339356 209971522 899562505 322794730 185268291 532115058 700735656 415635984 285968717 543536838 268349853 916852510 803534120 363093173 94347168 118076925 63831866 437657057 966772098 279808570 527195196 104069693 359565031 927886711 141853657 824675283 385462069 441744795 407256212 898681330 137280991 988447745 754504320 649285033 208984889 854219801 47138496 193366523 484226230 399947861 166712796 213019539 400126320 48359073 799180215 979429151 368504090 529929003 414371328 921878772 541390816 5259462 536744393 356012347 849103110 979526983 881797547 277783565 480912752 122739432 945637634 329852497 748798096 355073461 530882594 517467250 493442022 516467285 845144887 506055313 744572209 234847597 593244254 488375647 658075627 61890531 46924048 599015818 814865640 31421234 396307555 667683209 519184627 30474622 436210529 153380298 788389339 158759747 557232177 632946018 20786235 288915988 384746922 545550338 357855823 290591905 81305983 956752552 834784017 518956491 523188948 818721943 58013429 959518102 88464080 806874292 783801755 350721909 546063778 169877421 418402150 964094421 738228307 970795215 663722363 63659809 564208614 81442433 632913233 601992807 166605335 198824898 96134337 246438882 716798622 834130545 446508058 881617566 768702188 673168969 255877794 221343479 996945907 269579620 889600476 941178386 47401678 734145460 988266893 34126118 685403303 962128984 716767010 20690500 802860251 885310226 570807288 153874860 339106750 93460136 897856156 279280836 121128396 674243152 435388463 924331595 200657328 81228176 625168110 428212163 134858140 201456363 323825513 367938772 232772075 483348894 737872078 520107375 78497560 432179363 529941930 792607745 556111660 199011374 639225550 264779135 17962678 802970117 977149449 197424962 388645052 475799460 272309291 113680910 258243034 380876310 808684442 934707914 534741415 372753195 672597760 384578437 619200163 164793468 943760636 608620947 906311339 86368007 362373140 211227848 77211774 115534372 112589568 902270984 921994333 668380658 522415904 453885065 167965872 245040901 304249667 845083656 156834497 361652572 751519044 527268168 488931532 618802004 459687360 16700702 376260531 568239736 988805363 85277420 47405534 564183748 826978771 79089585 263414631 583787328 740004050 666298915 708251680 329945599 590348346 555358378 149846954 521794136 495209194 106298496 216133119 618899877 392701344 922631506 986935973 684132076 612245137 353660082 581272241 47172526 315011003 473417892 720165639 539070160 500583527 319266289 454985021 820991015 506595020 946601038 393517047 883834463 750205982 432282395 978863907 322357477 561434130 823326899 359791049 651262136 42784955 429306782 487325247 382355036 223334134 434684822 251394282 365824394 940978615 540378647 198962065 581945127 715347251 160761462 208890277 805828835 217806596 645993067 646121844 431655300 376028731 680087369 634600339 242200722 729309788 84756585 4519507 416151246 800594222 295920648 887379907 987203556 788846123 456647706 23632848 672287320 753487879 963650915 460137657 889333992 494102445 739518242 63917690 479406126 187162194 1316825 558103724 954119524 884934425 56500350 960433133 986946923 63464492 288705463 934320756 415529972 136079754 155961490 498117246 430736643 930416734 644068266 325383095 612476826 787547940 739630159 748363669 174016380 333677352 950034063 228741441 388138520 261590790 510166965 909093105 322861230 916999780 469246738 139008501 700966105 440740909 60429968 813007854 960606116 779802711 152826626 707345519 575782835 444564302 164134312 269065590 97412612 143661334 423822914 601585714 887994808 203966407 34800930 476292978 494644224 27762180 737341980 417233446 137981343 234082531 260859036 196490488 292157671 693432767 950420920 900051957 992649428 772945612 551302885 379741126 795262484 23947065 993871596 114292918 528690044 439485177 83756431 150317149 70173690 160536646 110176350 341301166 195599162 576417773 51495420 364322927 504188987 189709803 171798904 499275738 625456798 444546221 857942503 422043049 929870098 969991624 51166903 153402967 437711641 571992814 376202826 445012205 848827807 958189707 233307029 323176611 866624933 488735884 972204476 19947546 308937424 765244069 421557481 978008309 381597864 20583182 657009027 8176667 254831211 214480413 584981493 28263420 133346415 558930744 546391534 512711363 293367127 708120519 777009127 229795795 517496132 755974427 134820318 158679908 964192049 922132926 178723774 734101524 609577577 834938773 360772483 758001473 951629116 741957980 955373506 200692940 64519817 472365944 421218094 805253170 184648472 83122001 695364665 578005151 995194632 214166427 415391161 401777267 656038450 956017307 748050071 695819105 737895075 155293202 856976179 992421419 840027622 268035634 676879546 399928573 11497134 546593472 308693719 602269108 390614687 968260058 909594271 61032253 381379721 126202223 460982029 106231628 370395815 648839924 816477399 850082299 834389658 774621006 256618837 800301849 231220495 996738249 796082007 27300464 515885535 457722137 156583782 406847262 369939431 46974249 733698282 718244991 584701587 992874306 394510089 214438635 711348871 580467314 158252486 610404453 312744878 863696569 541764546 996479392 871748365 647143622 874546738 699413462 677540248 739223685 865283238 970850454 87672734 247625961 572703154 404568667 211351929 396766493 857875222 953035348 815679586 613246501 593554452 953902220 953487564 99491918 82293768 697068362 210542367 803471494 458835993 159595830 436561046 185495496 202832958 813420168 597363546 110071194 408999334 964380661 274299236 170854422 6470986 393099468 869173894 476026629 602064902 738551020 234402826 888527104 328356446 226886049 419420850 105784075 541182990 468167969 132495944 844799354 194898935 892963168 676537084 253738829 150957930 140391459 715549329 338799002 723924667 655497790 10691592 35960534 853112185 486381259 226059386 756660129 947656143 886803792 245936123 970456265 323129417 887732391 799793948 152106991 328007436 169720955 966341333 623480540 530377433 760631561 931714866 390908349 10305069 205494389 619083895 833565910 544107452 739567527 705786938 72795184 245575127 928599848 946827501 598670109 579607358 156855907 875119727 44397601 754762266 881292044 360253850 298869368 891858889 425663133 110856344 859936038 555100164 752773563 647957599 881352706 488575435 653710947 137155902 217409012 134552020 929158355 639021349 777385921 583080553 261371120 758795049 280675228 342343794 418697028 136255662 429771321 395052606 217267911 569048576 933900578 646887362 697989452 105769307 491968900 424051922 55925302 750883915 991674538 229395306 3729309 303267640 432654660 338333070 302805853 202582566 965797446 156278115 811377931 813787130 186822601 180953313 556090178 310786656 393562838 812113965 141555482 28074392 434730041 908670537 820237395 480850929 41403511 59261917 592453758 677419946 108356826 683545726 230440738 296981874 574041495 712369363 633598706 100642449 92458926 354071839 220240139 186969284 541675075 100701928 904203462 604531037 71560245 523633718 20349599 416595784 892798515 421518671 913659701 307204447 744671283 594104171 974740106 599981700 844261939 729148611 586509130 41019688 48568278 148036360 611054080 82118131 544695131 379082442 433922758 168764752 769121364 876118264 339110411 10831545 284923907 556623426 710784909 200608968 812389118 556819517 698034798 996575943 886384245 389254817 36426596 858688229 639825728 993041231 179954034 243670419 849877688 328078306 448137158 386974104 598091879 636564901 724877488 343781097 182177967 87447692 942369034 58245342 218724281 431751011 669717324 181790962 142210666 272523367 346375559 961321233 456465220 848364692 964770736 390140452 229538911 185095347 250854329 865440508 409289270 654240596 553076223 90927283 847427829 577375960 518458081 461236525 435343763 290563041 762545032 717716857 378732813 855344595 494591461 440596946 654850820 534982123 153611297 422814390 722672238 568119769 110089384 389619493 537322147 83079088 363773944 416326166 338599208 312639091 119621575 475336223 91387481 20814145 103409352 278515078 318649606 404057854 302460073 972135195 499388032 170413026 440457093 92393601 405157589 914460873 125436530 867437030 127203823 416838406 270396941 451174439 567342053 425382494 759940337 207396681 245491677 158399516 89453225 525929928 753646522 815878687 641163457 897145406 29394161 799714508 943562861 818908874 969004377 37636660 266048813 779297869 546767981 820222241 785631158 148981917 715316738 138957481 338159642 153255854 671726252 11455618 148302970 369202859 814657503 251241183 410143020 159671300 33568221 710100673 578877379 487039482 9265479 829101753 605515850 48085256 16434679 446611435 562247288 859000226 235791186 620560780 286245195 899414764 344547249 165812072 12926490 838909011 217976544 310010490 939579471 816202384 488686699 827441452 616927474 492490918 126398453 568856324 712805066 76112796 229945606 587837709 279897493 849851335 719056765 822735416 911353628 264261559 280075439 419301140 479804397 428021300 978970687 999235649 569790224 881853518 836922513 686791510 976214239 490466417 329828511 959888825 240026151 440830008 86519295 10053065 921631001 508716242 389725890 862778620 682552354 561482761 35441835 239038681 255827921 267839354 893751401 70932117 312474321 36583829 84294309 747673868 706633988 976476536 184272441 664788819 928788847 576265724 589443461 325188996 928757286 104306879 953004713 750991765 7051424 631993274 481549154 111023789 662336814 740589791 724332833 666358911 823344826 973438888 194962750 216559916 79177899 422898203 855301747 688218791 927471854 908001095 837663626 855950021 466176547 289373968 406474639 312985521 676133680 505292535 806143417 311471827 459313973 136006009 183009334 54451883 55738914 211166789 867139855 639488413 736122925 79458281 293502464 179588511 912985045 485766419 307344129 422217574 641094931 876402824 732661449 351492082 715222038 797492139 906129318 765293400 681769532 653005246 610842241 131120643 280760224 366820181 48631816 328194399 22518101 640778441 940197623 958352715 765462192 113603309 437030634 560644970 953408255 434842295 143533279 869210922 569190340 408420870 416695168 71471139 865934014 159044848 404568790 580567981 343211236 43964656 353259584 428434846 634550030 724974074 283093007 180660327 395119285 907365711 44126475 488258095 108051309 186936618 451507152 241755445 292184768 181286848 846830411 278629587 452961869 563746077 853624712 318124351 483876550 497703889 634998027 691724705 711305313 895197003 352331226 169642533 808312292 178781469 523530861 471082508 989675068 799369724 410275403 101430554 482945259 147826961 3384296 554193072 997786998 419436681 72946872 599255478 210892199 108468703 348301147 776841976 98621588 151552813 166655738 639597418 762520754 108746741 569447640 695710587 104424263 671656187 2600883 584787098 470701631 343155402 391779418 275018045 326879199 93289614 193599137 821203930 662273991 29961465 59643865 693425721 396323145 943772139 138185541 181610621 135455514 765117498 626009094 442136468 91476660 194774079 388997156 629046242 337501562 17701272 286557231 350649108 628713616 396602705 415741297 462630702 867632706 238090403 910643314 153109022 452476010 919863360 47829567 785630181 379845305 195269011 644720435 916926776 480725148 822920882 563597270 893254199 908923023 133489335 648857443 964159133 360220304 581342611 266444765 587407903 169015118 308949600 418666536 305695683 446237823 835027176 468112091 499427715 721086704 20918592 666943901 292797591 81360239 248019008 654016702 658072836 482344580 393054916 406781238 206500968 715616979 890479155 362439435 406042278 255525781 926840831 22890144 938817867 899837435 17822410 539833617 358298678 624555273 952527343 975177279 654489352 206956353 849057835 685090317 898245198 143955716 209636106 200637176 291247610 62942555 571092595 532062687 614241969 368317221 985968710 479547807 492245441 916185839 407685393 731702431 542796425 649698810 627157671 29495992 632269833 909791338 427334326 478684903 522635900 445242836 710664878 566280405 232219465 133443295 398832561 329086207 706817750 396655294 919123722 24269674 256671032 624464646 952706527 285476113 558289465 667630339 90340207 678425082 719491328 710407109 798877914 443982246 607338700 90165404 757592544 283476882 200650115 389892406 327471326 386349198 696872749 295295743 580016184 860400441 288470681 802972109 658806371 506613474 697848900 845081273 316999420 864385959 825324080 296344510 261691332 966610963 491212371 525695506 763892581 965669558 242346533 336122926 468344871 518900699 705989301 606477717 356108042 797305477 91633124 455099850 180783342 938065385 326091650 872824750 13224880 630756914 11681888 530056584 691663768 133636643 817005484 375589615 222824089 708093141 156522646 281631092 528414089 961373182 410523884 636021357 50611381 680181300 676171918 86724981 669467728 837861952 193955449 281853806 325446283 915986428 298677377 250126734 637278159 172410724 562369822 803877724 828783150 231452869 332024861 746421053 188820403 228705494 360191327 213385511 257001748 735291665 541775567 103699441 765048982 910265953 279021670 680404139 850753832 479811935 260067116 460100147 762437419 13940070 514567606 161554517 292346637 861600942 799160405 271234606 598766982 644057630 60578211 941004039 278587121 763643220 586304167 127946897 275341425 382354258 425085554 950651898 872154240 152376834 903645322 799925513 562196303 536401631 981180059 748262951 309192633 914154412 663949407 275877777 857205377 703452279 314921561 863126010 206921327 621835418 867908840 553256803 475864067 878106683 455631904 466242633 862807489 701987761 797801292 180402620 905428620 392764324 408229888 937370825 133251150 955355485 822123299 310754808 716461561 21561262 53272874 697911022 719072625 680834018 260397456 721509627 60901476 29975112 843838067 103793016 769358475 13772496 656171395 369058841 735763777 750585650 141364088 836817050 436741845 787150903 705883436 113579386 158121803 700700857 743561893 174935721 836530465 325618916 602448585 333082878 182014463 221252005 773426712 544966471 613907753 133125239 56904004 790456183 261400473 121029162 187589260 893436290 640325352 146565428 793097562 444427373 545973727 837682276 465467744 650907097 424112832 471428952 47120256 428951019 456382136 151183093 987008203 335774571 643189304 544362352 606635150 844315192 616104982 312501182 349124646 269106402 314608719 661949672 894276320 222096804 726314610 547426511 387644327 735770686 422199326 955681648 743989939 464432673 222932761 50725902 496861045 583333533 918649182 279875353 379448899 530322494 5331240 751538272 808802044 223919622 688272614 290407090 633130215 804820385 969586645 991322350 361989685 32831103 976877708 925569660 564022769 794379800 363529294 945199741 285791702 972235030 614419932 668363517 876431944 875888860 980232440 688027779 964624581 217591268 96781905 323239536 944536721 745801585 305986092 983145878 184880209 767564951 752180678 948507029 669828386 118324369 994359904 189059714 449029391 427427085 271365512 59266149 229610430 124287404 679738018 797782034 735117691 747867019 804790634 348085396 416260403 869366169 698671506 779628455 529007794 914699651 425334357 87364918 56200189 581930736 71475348 604986798 867251492 876486083 913360335 156920196 441247838 94321627 932522281 57961978 411554033 574660720 254562736 707731048 30228145 211718379 355518086 305099663 207350664 484512363 802683379 489112863 796273185 38199794 768928180 33716155 871503499 371259889 879175037 486782094 30093709 435729126 510245952 166152896 665644885 867100837 260843951 834701743 509170424 589608456 758850921 601305503 384767660 663599452 204664047 363279783 822721106 503417916 290446647 667627929 148097766 417763208 740845723 614463964 311006889 80069253 501772668 573013284 880874594 765337000 541390654 593318820 661433727 642145008 433038415 573913102 684230483 829526337 792861200 943537943 138471515 923105456 830282997 624640220 448572101 36164007 785358649 339563709 135111600 614597951 975851883 278230654 409351164 882662894 478492172 256623808 267082671 552118454 754792397 579087457 74953944 605834131 54707461 108500021 221582976 128020536 20630395 39675215 976139048 91337387 296518649 184985753 253681393 976030473 224758973 629554402 661372451 914489782 757104147 266259664 427154947 998472118 281061580 113599556 598386329 452290244 439077013 715146454 467374751 51442586 677382553 318733682 374445476 802059041 133938308 912050732 140812575 73492392 899354801 452606208 573407384 485667171 120577529 502993858 68093529 810723825 190215305 294692934 68204436 269121036 301408859 953943032 774104278 654936790 178967835 98142899 52788762 477502092 19891345 837493056 573186358 836568152 494584339 937800313 902892544 86693201 817065510 570799309 65794041 147750142 762653124 255051171 617671279 137021652 225623736 794552599 94684226 750516069 747232635 931817579 907325723 356352460 801486164 250800213 879633204 990620459 20804252 577250598 864172538 588191063 224923647 916113119 723610351 64750125 124189577 240336190 404810693 12171470 953299422 885257026 270563000 219796178 821441354 83548635 269771507 170225859 983029807 92728028 816888414 920536455 620948380 610637514 775537315 124071487 201295359 965359014 519694484 181106026 949517277 135439888 341462545 900352020 412812277 989663298 614428409 761765976 882141744 833102357 283626694 712535769 571115780 689695873 936904003 665767068 501098041 813559428 151510896 827827484 131673459 984559002 954242319 405885519 697278965 332951222 404426105 848705678 449727920 646542589 223094339 905337340 405366793 361638710 733933295 37067626 931246045 214834334 956797258 253845681 932776052 406234695 280187956 730773143 10637397 425470529 918744557 81408127 348437815 107898873 237053251 228641749 498480440 624048543 664225176 677852645 572980846 614192303 270469321 959403351 435730459 152381774 423127149 451505166 186122746 478871112 34064159 965724032 244436076 634780106 770977876 682144736 587451243 16585503 931890138 617542803 236583243 993489604 818234432 416489021 419593821 796251723 512086169 642419751 982407814 22152857 991430454 885383654 885281179 137990074 953680837 297667333 698627617 413039223 999501262 413147023 464162425 999728542 247586245 131710524 742625283 620394256 170131875 121163875 480490489 53240030 191216544 931496754 559145448 315871239 34246661 978833645 496855679 377487085 650968889 481189782 316377892 37173657 674937459 527913926 294394181 431938621 305988460 217630668 509161158 752290327 973931310 241402713 591255417 169108170 370861188 780008300 397716741 98206520 664758799 610473068 894981005 307103820 807275972 372862010 218829646 343325327 515944459 802800545 472599259 497193384 337795266 728784699 447590788 538939995 803826945 394121209 243121277 723098361 792448887 890451497 14350182 145499424 844114710 472848405 417748158 332708536 876990345 120130975 486171745 557607092 803655060 251124381 375175773 840990632 86971539 887022092 877336607 148447693 120474245 867294385 711492061 787406790 737059522 313765408 19988423 65547996 912462004 602849383 11023209 138691461 310421841 811388836 256490425 825839526 546208260 834371213 730789542 483656595 930035934 328801611 10966300 112476344 39185810 961339625 130326066 956665462 220913620 478932222 335934763 520408411 547893570 915750359 956166592 854328785 848864979 571938488 672359005 293335102 539004118 818700252 879298278 863428635 993934129 491932295 98752231 747229570 738379456 552089826 501168960 142230214 53637499 222229773 378007978 215852981 481114330 675056724 175116339 706829176 528886525 730931030 730439574 898122500 391291183 427686162 719433094 320071296 271443174 480367859 188549601 403969281 860551133 284368648 770970624 357934070 585401107 938468023 803219746 540476824 392112384 385110612 747818440 248361211 583212729 231490298 422123143 185815685 800231207 877922459 861389987 96852139 824152974 639630544 497030363 404448282 370412447 835155447 158725705 657722367 469854112 123543646 268648690 766922401 728637127 145873912 356185438 756368753 762035259 593623618 111970033 246603834 159327312 63051832 224462053 168253749 629348827 375803621 572673638 904353620 911776642 769603346 937517036 97437652 127540230 113374467 767179502 411353548 117493553 828570891 961581608 331599245 308197038 482735543 386342465 958611129 596608916 502978851 890234764 776238285 243208845 664639456 289978322 228758773 199356506 841887189 981402828 418303417 521790517 52256585 956156325 713911765 711757445 379295966 299656615 388162026 28270867 830158588 388689132 716376888 782391439 53319777 186273695 503799063 696447424 76071382 99001468 684612461 440155205 103342010 997600909 125661559 500950547 597480167 301975613 58370304 750699680 587772515 658170061 793821890 66003382 510741312 278513520 188284243 476133980 566431723 354620184 78110031 17929496 524890597 286806074 49038020 693012264 506243781 511345597 761435522 315141051 249481382 945669696 585766883 994710805 564094802 785974284 533524794 207918227 447300907 627843208 739414227 283440365 369166552 801434015 314893693 805873840 673716724 890250546 674256895 386512175 40592779 485019423 409302192 194317871 542168171 193623890 971028926 260394358 565543792 390730996 840464607 988072435 968619328 814012288 688111328 91421569 759595750 578907017 58699082 79817536 720866439 62084588 217257033 918860639 575102989 968306049 650669168 187436712 956871925 57433245 455566163 543575839 79872405 581267236 474378931 323429741 312044485 32830808 232952490 979634551 400142731 57396596 23851533 370463100 346077589 465265459 402937125 185773826 919643904 819221181 465728618 544079529 775189634 356095926 354403636 634021841 311680077 994517866 825138694 983923294 985098917 980307469 362447271 76189746 56389120 77962081 832402783 455273211 38611477 136472501 86985378 883866194 329275097 812116731 988919295 837540375 581171378 260825068 161915143 230724854 74206278 109643339 899395002 599611164 884755154 474557968 914105648 449214219 260283781 684397351 152679673 443207465 503585205 294095713 451522812 960563190 162386569 604437303 930216053 665453256 878846585 587026976 671678398 652851122 789893905 234514744 414229617 759740236 384855860 153001851 108331967 717148814 746485161 699224514 415679669 395524096 615903995 476606402 728228022 542515480 295572520 429501974 992415244 953539213 447608317 380417481 961941792 984847022 406420704 74344642 434186379 517874104 778249341 364907495 790694970 198689734 627620689 816151976 91031023 173311242 32991572 773680506 474334539 183002096 191972946 840476094 477510162 356128256 362151684 165352023 971669606 790108110 257399602 34362138 323380086 54997687 484130923 830216883 179474856 689770437 320192052 593881547 345207772 725705053 730651739 260298399 503058173 340400909 393934720 247066408 816050533 323347147 824593393 905002511 605973138 998891044 618850097 645216287 542753674 708072034 952402348 265456366 130285063 158851295 967526634 598390011 698826978 52890632 454375128 427706687 356606291 982834942 886248952 386214757 526907835 509240716 879241320 478386767 195234574 877130173 991523581 447631223 968699369 331030970 480088604 495664983 409320240 443034415 621061138 332413917 200026893 340621761 439189862 623014404 337248966 23321763 471828523 523272055 406627883 303975828 348426331 123625302 695234676 742681273 734974165 771860356 350166723 616065852 58492647 109152705 196048298 759114031 917975256 766456892 858603625 353967467 797606092 990315676 53004550 41105582 356306871 399877281 659465325 54171318 182736041 314835686 777114257 562899317 443937473 620722228 633727908 79044416 742679893 815861002 33422953 48775624 150434244 208598255 144797980 791001695 89593197 467721915 45266961 413780513 591748070 947368041 537303771 149291366 155811266 635176685 379232792 338256569 653647870 472020312 680805086 612517046 785694702 621105179 230301706 478342021 742791734 804285388 685663847 827704023 861818774 80269463 349155524 888870404 86446402 367602142 24687282 657901593 882290549 397578472 516065575 202226636 810834036 821240275 525304404 970371223 65381447 192500766 349442871 938916449 596791807 256612982 879463324 838808099 578115079 62534610 450857743 449405102 4149329 384110397 934853529 35167049 566911731 311144004 261437753 281285734 987055909 842777232 842487349 413804608 843366107 438921951 462447715 933515840 309756931 208158170 487147986 732176258 43779057 696401982 734250606 602797839 962787923 663588128 332057660 885264231 305933264 537385689 382045526 739870044 238493704 103658725 961248760 381807854 900790808 951201442 403202057 315614412 953573458 231398596 888141250 171400783 820991101 87651313 330610360 716690023 288893088 86238660 421589410 14693524 502438353 82631341 822122952 285435420 8584790 903368435 80213673 366506574 749634288 685147306 647182245 44655760 76523742 38495811 79059044 985257432 642515116 199815384 79479879 103061047 310092113 737348780 223327068 202268751 596354987 677930706 401717279 701474959 823401376 221264278 722345832 517492727 815273414 85473017 183218055 83835355 544888933 50420364 794354178 271153600 165332031 23731087 211977292 987194220 704684876 351554503 647141756 822046440 159219094 644676251 971809566 76538903 663211282 656631002 575948188 768090834 196291035 394351970 936248154 482835554 938196294 511126709 955706657 577916136 478836394 231309270 634607378 243094743 134525668 39050806 449034449 43167897 74319774 227139470 640133175 254493070 146550516 616373272 175909345 698686067 200538663 142565328 606161990 742393231 236780664 96291272 219736590 376138202 55556946 992223146 199456592 888655747 249411035 2996065 868942134 738377410 262075916 606579957 557522776 819856433 815460778 529296715 978938591 780018627 109888139 104172813 470830420 409246009 884437921 178989716 771909090 1677279 666698014 271126253 970786499 678843278 988616063 128357033 269704514 845618230 773594039 422517585 332075942 809657225 101225711 644334339 808394543 706670223 818553607 360920076 857758934 31903266 608015053 942937130 689242386 713479212 678727243 759086181 796655988 285656997 574569856 170960095 30077659 493705364 461008029 820658682 737050928 675349284 766953335 882956922 901787307 230108002 346896536 771749894 199598821 618623417 745934453 838228326 499436380 880989269 151958568 43867324 851419169 838613648 523142243 905335769 732366557 224512233 488969361 730741630 490728541 260797212 427366174 651121797 265834496 927758785 859200884 136577347 716704607 884359205 770980527 700688079 974316490 334963287 741671925 907209629 952624693 807327175 537033255 899777544 202078466 470704701 111735979 407072376 844672135 777741530 137460850 3275689 998470360 154421430 31079450 558448920 959917956 102550430 332404471 418661504 666354050 887280491 138216764 703782955 971935328 795581293 988410398 231419534 272441758 979519228 42439590 458308494 514482331 407976026 630628075 328055263 691423531 866035764 17457581 729374213 687288081 930182794 793673231 806046102 300197709 258265101 782967988 62287446 40907921 655795710 342551648 588778575 956963634 219023348 111488955 711146166 77482453 481422952 346846696 467677706 481587887 788977376 171361993 986623624 170669309 180815127 784266122 682919495 154065275 937445954 351728266 786244747 587747646 5240646 699610798 864440562 197960400 419826732 38214464 421880267 199688747 170570636 997878233 888993182 240089439 758083026 674491808 755537022 751559940 167155927 64534804 527649088 296369471 206373143 468767603 977890867 418350928 911183924 665786454 557617997 819087012 671983701 932406489 949099048 20081173 436459846 668987553 598959105 166040642 87286107 577337310 394115359 880303542 302270293 660812613 916761872 424899187 486233516 55047547 643905140 490819152 859076442 17642207 440638599 407616258 646716499 653335767 281138923 485618618 327439417 562591915 887456669 804130315 396638137 341143951 421123963 403800313 86779806 880747296 268325852 497909425 293786681 331726515 828044848 995879971 273772937 16520005 402646224 168704508 658576367 858456970 445085442 731907423 453552695 433268332 361751205 641884498 879251844 227127865 473246400 160661717 47970257 768313311 770979469 751569401 376234385 45156940 7032766 605796096 572946777 299023845 673789012 524167776 91614709 734884611 416459150 202553975 378400420 149407554 785501558 794877199 333581668 321796440 275495693 500772530 958937636 839122072 110184816 249130085 220697274 997770037 868788209 52356149 933034431 460322006 702865156 936595895 845980055 745095005 626681147 706848596 878939837 192446689 314569914 425249089 178132637 957634438 238555543 883990312 335762329 877185206 826450832 566101209 344255334 738395577 883192279 110167035 557122584 246922660 978754735 956741497 204804975 304302488 223930527 449070505 286823920 763028523 814377354 586249578 607991571 599476357 314654997 711317227 790723369 939188169 950058920 935825006 466389652 874239435 692433048 745874723 151484506 86590112 562322567 286133860 521521652 38968355 461680562 883606875 418784993 474967699 394769208 748136178 190663294 927350240 54683377 526474180 250052380 797981012 637595125 969957299 248471321 728964118 808631385 963960928 715388975 617477981 468066547 298047605 572870895 691207790 272334018 544717911 781500713 298211176 535078338 553340630 569079815 142917928 100055032 158224050 459216370 955160669 990409468 668101136 606597713 181095730 243345107 624373632 285204830 559197028 40956485 345534430 442962941 532399252 522360075 902770245 717150189 479647731 864839275 52298585 761686994 966044490 151330915 417595487 167829706 16017496 49198158 503391980 395262117 69611250 719494258 837920937 87795038 202162218 510593625 643730648 961607853 846061463 571432058 829141147 58058307 457510739 777108589 704229424 266213049 328763389 56373662 275659265 640797740 892600341 970974080 43844899 796407755 820935767 523265576 376207019 290592109 191272632 252557103 863227123 457618904 53596012 471882954 303972126 712049729 967913738 194747092 920377293 530209671 812455851 848073466 205584457 75440731 73511587 901639451 773899975 931428285 940544490 376128341 127338540 508828373 672241808 630226548 553093592 536022690 23730572 447260200 122079093 679142102 604059960 435546649 611704697 551604119 707596808 965595339 615234895 986178217 819308878 704969070 481602600 223704262 320977250 497672968 470341539 319552197 914999192 283101315 163677962 812648316 582721096 333699711 378563354 575743095 811221153 843621158 85074414 992166977 27736887 609641205 308443282 351805733 547633369 229569832 997996793 937363880 441418139 625176331 488778946 693380872 203475433 325233689 546600965 934309795 108422418 67825870 618048528 398875308 249992712 71326817 510396373 440800210 994670966 954038872 731407700 438916897 762459029 268619502 138136336 731220868 807900383 78924882 616829420 94166036 105198409 113092318 465181762 370195465 654099384 53721017 417079200 809203028 162439961 676818603 709186475 549728661 425442160 737676839 837206321 189868098 142104520 779322957 651246875 602091998 406935267 852585218 792584467 174589182 853385892 300506155 575075437 194350022 408711602 436532454 558036569 535155033 657577774 954839241 142375693 874129799 171589537 987805414 21763766 954321911 992548242 888353532 307187544 274790065 833358442 680212975 635032002 33394835 149242147 587900247 772466505 677847397 720294341 229119631 121103781 339136206 468533383 32514507 248695646 165290082 357324758 386475404 971896960 963795937 618736602 545714938 935350064 71325695 237155059 228806855 721166012 363685701 960035284 692702685 801619111 475420939 624646678 973881884 694342420 548622626 768393079 359691642 280457031 182740909 553094557 549443723 15415331 795505254 133262234 620306242 911013101 692183679 957209648 988240273 271818398 27289718 410692009 948901148 87435250 597471846 293396216 913511376 332366728 921365226 593243773 219909920 193963675 959839177 120685767 755418852 916551131 399964325 293935507 696646404 246580557 854186418 334262224 490832933 122944224 48018369 273073673 772437461 240235623 403278171 954659567 335782359 499283140 686743402 361810039 216074129 104075614 726282115 534628707 762475020 870921292 250053458 488283713 690151868 61247444 403420764 390375533 700523222 609801142 522393194 806830861 921076613 139229752 189743040 895094296 59501489 425953920 658400454 444543451 454604864 511538144 846407829 70810652 773986483 504248496 853361584 145314107 809745578 284877342 298522763 131107311 196447966 465161608 765352907 684931139 588831642 309299149 178743734 406054605 877870725 749665207 905637426 909693932 574144831 708249907 601532382 372934305 811155770 66868300 749510712 979312518 353390334 368532050 67499608 782769945 848834776 794498944 197746728 184190183 81521734 657285363 749733055 283117821 654331990 799714337 770514468 603091413 256972791 894599684 624156971 500525878 269927103 747645184 954964433 409752217 652194808 854504036 263020156 552512839 579357965 170479606 180689627 929479981 488610929 629063983 183422143 120707290 177718807 612217510 457467248 917302965 288401111 690127223 616110100 865871378 170664293 982880043 3259823 690950356 669473846 402184961 701564433 18204323 192199127 238148494 988969265 80683444 877517041 705747671 765120545 793530889 749945936 129178211 293992274 579852304 178084435 521245630 492785862 243489536 8098634 660912591 850108804 6938174 918766344 423812401 127397906 70256209 75533460 713565021 29173093 484165350 968801002 889737888 706734456 680652943 725491986 983659324 780681881 850173333 534186872 171866676 173151234 45451444 102313497 322073348 434106058 594389950 549301747 713723036 182238817 308770648 407948520 795767203 529348719 994433663 936622655 731885046 995341324 238455640 990075556 680932190 840447692 296790696 25890959 68215397 22965940 168745985 6285127 390048476 808788380 542612087 433161657 15856387 403349404 373621414 600532081 503154041 731803328 547049255 631401482 263611051 254333827 63328802 915827838 665071375 448433250 968254595 444508309 927970815 181126635 568267601 58539931 610007376 839511630 31814361 853537789 767386312 390469734 788830058 669397213 557949257 762530016 297998340 566977766 904426591 533650541 268050130 324143824 955563593 521288772 280677462 71526672 958841960 429197396 903419884 866354479 429549019 474285244 499658737 679118902 365090865 912176028 943707496 121042254 619621846 325390706 51440594 51823033 899312760 588645450 698549433 594363895 385385388 401442409 208958949 444662978 350610248 258166778 807410096 970548741 877494319 184035577 318882540 355207473 135337936 83974721 991675966 998348292 820922440 434010519 71054077 912231513 44771391 23681484 341878993 892433113 844676053 888818256 990872602 712961815 188506979 193733923 733988431 558233641 128030867 354494858 191862128 336104522 303105470 458871623 165343771 7651230 627414153 461560873 825399827 262749553 243132623 102674926 265991980 814176127 605542934 304788299 802128285 369008482 495522982 80083586 432360611 713550489 839415027 748078317 986780071 965296200 762590344 111645104 218925817 807393935 316078584 549546593 572707118 967740055 104239177 657005193 559981618 874794259 244993451 170124362 984140625 432445901 137413460 581879209 916608745 932952458 282582651 618946629 931057492 143606378 644827911 234206698 175485009 723837108 322824059 262057541 253405889 612525858 44696965 623912629 252636154 428968509 212363340 985332643 928826992 999368231 350956367 673032187 704322147 435390559 402371255 122346207 208040055 696625966 723925974 958898948 820082599 364733357 526292034 133188388 14349835 950416668 393334409 430213485 91173555 877912747 781361639 317657571 604139856 530044244 71568135 716153602 795279557 387867976 98824678 651047930 550441233 548055720 748276491 565183662 641980642 447585098 480084161 375450995 398228751 475217178 135805219 366227512 999098709 642541838 470655846 786502977 689122209 572454160 747117408 340581093 918485667 308685377 574408732 172556566 404101523 30935812 282681162 732621809 51034774 748123539 490494732 605767380 271186429 184811072 765186405 979606609 335419172 646227654 555541414 46108732 493665202 649312831 109801714 897871550 421178441 338108019 317498256 661786279 118658232 492702532 856258186 662502286 30544241 317476375 411217254 177681136 410519570 335908121 964212339 932205647 192833699 57833674 96299944 389479562 588591375 895528088 179919175 970783348 750932593 632706120 868640402 897872495 159881743 965761925 874165568 418681786 5619675 760438566 165848326 296639528 220069449 371327126 595093481 331448346 407142150 106155595 951928944 226573665 596681210 704128930 600392385 683915394 962350511 140894723 672967658 476101717 567469612 713838392 474978644 745383701 880821992 212368081 72854058 240690721 134353436 166859669 420294259 95012273 632905740 241005560 997605852 758016065 192506 631922418 156015722 786331418 346517190 648485334 467500210 106329803 685876594 754065122 538631907 828178779 25306078 513973309 563054564 931252345 304522429 467159333 948724759 590700517 985586198 453600330 745172139 556503102 247426073 237293118 581789280 380121779 547265777 904045954 295215624 731720217 519651880 377854934 240517646 243577456 789568900 118252623 702941336 507402048 321476167 852338884 565439941 493725997 522399003 539750739 577144495 487946700 362505240 539119825 926176043 297520178 487606440 537678313 175493722 488412637 970270423 258285558 79033861 677757348 624987642 583044591 649820579 547354183 773854552 877583391 465523167 158428731 113812007 156350176 179792838 328999433 599562510 877968349 879890165 775757265 977674559 772553472 606130933 157743315 187584872 387092629 528705210 323875311 288740456 117048959 855568896 755923326 663155377 899855404 374524386 61099885 149458615 944811380 752630926 565554794 194076257 790807338 359060373 495861102 559948678 463388266 734591325 398938363 381315020 761293958 796429270 920395074 777115825 23472198 357484100 348162796 333561662 15872400 331653365 278928109 471558673 434183461 783323610 504192381 770373952 598126014 133075836 13339677 132067820 498951620 694978202 759702529 715662105 328121926 871511214 47049943 212284419 190363894 162284832 507518805 86996605 770278907 690419345 617421060 346487015 495579957 886852038 382786175 551378078 788119232 675676531 580478818 634244212 369815889 971700316 116546626 988843729 357529334 4508799 611223496 299799198 537964531 818357587 853536302 510615174 678477364 669678447 115561036 787544393 701593310 228637321 51851195 224478829 837676483 130162009 205752944 386283346 435424991 602301095 635065456 362682946 55927056 946570211 692454338 383343430 856962431 440875248 710802888 824631262 640025864 474585343 735691680 94988094 477594618 14218661 163272400 537216523 626326553 247930147 334551471 874548757 938209167 577135374 812254474 873726235 502236450 186415606 81481976 312201607 617074325 427482369 664041184 937466729 277352687 582371798 897514417 892733087 958194911 511814748 445718764 84222908 856397187 40923960 75366973 677802352 544355798 543817815 426127475 834768926 563084033 30113385 796495139 691403552 695028714 664332608 291293575 92374371 983034774 100397741 270166954 157978981 568310147 620524808 179180626 248766920 645477379 346425333 411435328 516492755 771524055 606488493 815048892 759415277 315711308 554476734 399383458 244352412 228207501 381459315 111713816 132707444 9408500 824604652 738513676 893945769 599908653 818988159 867196118 113854016 998832261 655853561 92762853 291178027 585645946 758792332 951809230 926202815 39741899 655251666 592874425 634025629 464698292 921299067 216722236 631857540 113890053 441045042 833279924 225671205 213000254 669945216 382610979 273765432 838149674 662098144 754442191 493153402 3738556 20648217 570831557 513965971 504797047 474519357 246536415 867832162 516155308 823374343 528105969 25606400 28694188 999038424 142474798 734613329 711894328 232178508 965977873 987805523 975754635 907637248 974218090 160158972 403387345 403188459 626566603 268010081 922738343 687122393 713789352 569874147 206892519 447775323 688243269 257007550 901936026 251120904 634702397 114601281 67196226 521437698 569576176 35332356 38878321 935813867 854118733 109695687 379096021 281604101 658209014 482335933 207174852 711692900 667640182 512735170 761556535 357138928 886314398 379850904 990069454 662774785 56632342 148901254 268920115 2781372 327359792 458150368 275064894 738223514 333151980 722807570 301873678 171626157 820938044 518163421 746424243 440117664 804210146 591414597 80109021 879565230 265313051 466050149 170601248 533591244 306686562 470710155 106741496 416396854 72625486 158015445 119239340 646567556 966334476 435794734 778337939 515544030 169067923 543668431 993797330 592303585 160072709 325474339 185772708 423949622 188533622 766139098 454927999 362741897 384009068 263379592 689694334 63381760 123978794 526018085 428130746 102524399 290776064 362393891 756276753 241067855 153168431 9177479 149902221 625995393 740786195 937366643 694401562 246642791 440161214 123583834 440467971 706161235 484683027 290903645 949532545 608562123 632817769 392306214 297327671 647851679 536366454 987616754 178325148 737466800 12259190 340732046 186552016 543480436 227859633 102587411 892832335 731253374 2080107 414003843 86984718 931003272 528283407 389658355 34712363 311708070 988979778 182561338 538408047 603119854 445551042 405862347 724076119 134306320 965727685 437648729 834353544 77795050 401710281 731948964 266812682 857717037 584094085 26752115 73034700 518658079 618334299 668964311 379903782 701870927 111618301 466766098 390161608 914181997 500614951 617289479 344886489 459862569 403473941 769996764 894551100 337094996 131895979 575565914 969108954 89541365 237187563 645112726 136371823 731149832 54769798 169775889 527347009 165347270 689420676 255088696 557656181 437117449 929995332 419317192 246446834 966134072 843866383 297535463 711558216 788496413 484022381 850217695 194830656 521517307 845463555 734592934 458014173 6223546 155633678 468541830 337318084 593508801 437726201 857489687 435581880 815209727 549106109 502811544 417804995 245632678 235252312 392861210 523465283 301500255 742609310 667725559 4072160 645241735 739010670 391548621 652460732 254984034 324227461 349522976 476108307 919113247 674440827 742057157 123465602 796239065 879420755 613532307 665033875 377718184 295473437 420039227 145968232 965914260 223383249 503443498 687155647 572652875 643149943 571936220 214949270 708530177 574392434 875333559 114546195 54766690 757720788 420126563 836553908 490438948 267399020 876037864 171384990 694711847 689564304 31869946 48195567 572102341 447807059 25474268 299604781 173381608 249143472 375657763 496674956 667856722 408673495 985863352 581387087 118827348 795643079 260006756 826301150 334312472 819135893 544167002 648094010 825601880 173150252 352703410 726786704 933775584 80509649 660908391 556913314 346973360 709157208 238699283 751905866 335069006 550046023 505318740 331069392 364480053 615427771 261700081 216639912 510517007 955483157 969270354 99050732 437460487 386748630 400524111 667991456 428153225 444805628 56827848 36713775 893357558 631162016 464151491 994469955 930856034 792017708 368803452 313874963 627609024 129096400 757632039 209006881 302707541 197701289 852233859 680445205 353849130 810156706 237998954 632776257 336427475 816147136 531393686 455434321 421245239 602856991 283209817 605501781 736056289 457864203 634785474 100829707 419446978 154589272 170514080 707649195 856799718 374092072 95010015 750744386 119395390 262000733 180197595 134544395 640001633 640891982 554354621 586042885 321577594 200048584 686924592 58809819 660295869 170292752 329245821 17122439 824942176 46082573 492151873 456860090 424408935 727124744 965085733 40174818 219597270 801814947 146252616 684788626 916404742 210056590 982633867 82101831 689609619 511686062 170448399 450753267 662217651 3768656 837264278 321222025 150799806 42734732 802704715 732348381 572048185 925620102 308472698 87423822 272899778 42198250 721000927 902743877 544500923 439674111 665021957 358128684 533289800 679521031 480355540 610941874 137577066 494244715 236497417 70807159 136055908 69916877 746317746 181250794 451363737 299394005 736924826 849155812 207965155 857688880 577947062 853458729 816722172 253882885 268238740 622109949 889199316 670908757 27863338 58574414 914420525 38127179 699186803 610969604 453022342 674768780 72375885 611800731 629215582 326210750 810082654 966401425 981257778 716730920 342751693 622540867 493698573 459571543 469985964 162303254 904873176 325486739 778612314 306080901 997571667 987033401 615481064 843515280 74935508 617838203 603953779 954018780 594979624 638342097 788464145 810169272 144932008 823303403 2363111 976213014 231489847 76700781 373867525 217356718 683490115 249351136 541629898 921941579 771180059 112117183 230428444 819627486 269038620 201884576 626233057 728814123 722885830 622757715 685612948 372755799 655675654 350951351 550708032 800850353 361205159 680632321 216855837 720238304 625892309 781274532 999265054 753930276 463252824 444122125 498336284 234495045 725502267 15400375 50388846 727326263 527046824 108858471 745030130 680512457 37458229 520069317 463991524 487259894 394470691 758210718 248918160 548041165 80948905 469074803 181815169 201943666 208708529 133659442 882189736 912255253 199618359 821830153 678435506 56099835 793207069 882849676 544981574 996669842 8811502 53536851 324598652 107210506 343447484 334867420 173228930 548397413 406899671 749237849 111406368 973486536 328686670 577736237 450210229 923814018 568527436 247792997 697549420 526121114 803465949 858092965 436295180 245388604 687013918 166486445 731788538 352566103 15597410 927463027 493385652 325338838 660813869 943265499 252406848 123348256 640008396 511755171 932056154 679435275 755913148 250693302 654512121 457367199 357779475 659959709 705190613 420238414 191975402 64419481 724174095 512237960 765123889 841669183 177134219 143555449 324386102 443028495 202481873 914367773 338387254 630334736 608939614 108388983 314886514 755434848 207948562 266772773 573464236 796920048 114655602 700291618 903166484 134197799 475926385 138456107 303364385 215392359 2578967 789099521 61317074 392046726 679763098 894817406 120954630 746312825 265985812 490712253 555196859 450762257 385832523 2789959 79650213 415903632 779751256 564802820 617843837 373505628 359158946 310311705 619196402 418058230 397097733 937268983 205396561 440158652 728817471 925330788 241396771 137164174 792339872 539813373 781981843 375884734 944014885 636208808 204288556 415849559 339961482 599287974 737133220 743194340 935638593 683730485 890535898 166888300 497369546 611868940 710776492 901119172 468900708 105915305 940405849 207309420 887697408 747483489 498643021 168174136 452667768 275429491 29809193 711755285 191100939 258434414 767444777 52380472 807832715 510227561 343639711 10802932 685644141 391461930 292846066 674439940 392597545 63601644 852712208 192317190 150188613 786869845 486737543 264091071 32047924 51527429 316396547 906601158 70495086 601842209 211460924 56079666 504360951 482594349 518896818 33980899 243419619 331241266 993524821 260217959 475276353 169864296 464629501 61540305 217557586 881262879 272507024 279820380 350387138 786322676 54010983 839217214 721773095 661726904 72481509 757428191 990938525 757316760 315273349 823964215 53677381 332575355 779345104 145053358 375141892 751656996 836414161 689967729 410575728 601808873 635419405 338521576 634446491 63341986 898657177 226262651 837117513 759962052 211190541 999811745 360866320 648545252 626644746 36469235 203908587 390101784 924488912 899941192 360034786 745777907 396397323 646234501 884645959 959949458 37900939 419015027 287985807 441415997 970210495 527279813 498172747 217652262 647972357 938107716 550394079 19015388 749528101 609878086 560880217 201469630 833470784 63688826 303623073 506876295 565445632 892097405 305899089 7190507 713230861 96545615 13268529 914057698 851339856 539441911 711008578 244059792 244209432 427381206 483811730 232969718 85951722 405757841 84217917 651919137 130782659 621401934 374313700 832732355 174450987 837697995 375910613 468152189 138022330 721862573 427731168 763111243 667029716 334803536 368065245 59921123 98455263 361357064 694884704 781016202 189737649 836200852 411196518 625292449 658370427 449698731 794643881 587518188 84390593 816092363 689293835 827876706 164623543 668066064 9643329 139120942 892878053 107874010 744766904 428993070 724915621 764366647 794999786 131725821 448478176 255200194 10817636 750770028 525722934 965144436 378080486 762241336 154341045 943527653 899195931 40095089 420935784 935977955 89611911 267789622 585404238 621014032 198100572 664709038 945329401 116328290 85758852 693430733 667848728 550988811 252753235 296591583 704100258 310965159 772540602 890039741 452771720 93939653 610249386 329925268 790909568 337675415 850336003 638654958 313129739 822249929 492892583 210120691 959438970 43562970 510485817 217082207 324060831 839010278 940020260 319060769 426195148 532756495 475482097 796067052 224644641 169876302 815280927 921999764 533448779 721969157 53334214 611700204 582112630 429117508 822482189 999341098 924683791 139899030 53373277 365544871 540343160 947413374 305524072 650869813 251734892 4078162 726801661 276866599 316209109 946838713 262226255 998991678 310545913 807136874 948215599 562601842 313847652 866515060 540597450 460837115 814519347 751595622 628771496 664790554 569933599 384194289 528900517 547592449 17001223 306992217 752353591 825701086 769270773 770453999 444932748 369939726 978212539 348039095 847269742 383487453 77073075 804523989 80887268 640918704 58159523 685041579 490725557 200345652 172639199 518844534 245103974 989667939 570611025 507002407 824127110 138904541 915153886 131890273 17795952 611784602 177938571 699124160 455241196 712633156 335070675 279712543 815052383 385600769 842024167 682638231 973991582 666582885 983751874 88170005 361993990 715790632 674658855 738781159 127482703 897630010 307659978 363024653 658559397 916151966 169843211 316127556 520415517 141799848 467528668 82915732 750101525 560227935 517025150 331017368 586883360 869127404 535177760 60400143 257212637 600717510 549337114 122417637 995236628 350424935 230054160 472109684 348556553 662048087 601917502 44047219 234561862 375007388 858051655 791551305 207349467 614883713 720616744 817497059 408318864 208890911 69631599 934303991 437751406 65127033 430810343 994512573 173055038 1741454 710767929 515987512 430633797 649177076 590220976 474094376 775276228 111062146 225691463 525005473 608222510 265521518 307733716 744829779 221214890 239650365 774617242 335305682 126159937 101210076 565708239 663344367 813763529 622746142 193619657 773263896 818482024 870458529 603181048 487364732 464174600 871811900 621533580 427060338 710312811 241835802 551202494 245603325 201386449 529896257 261524318 329655032 780855863 556756539 551152298 736267455 749017505 409933935 227342883 852681778 349132391 71822324 644542466 533183027 57709479 355913069 943108271 883872397 165431929 184180988 862920975 399324870 979912691 587929781 793750685 954049889 158454991 851201210 217521943 499773027 537615244 874826479 225311603 281977039 853044536 295406387 623462749 258307418 408031001 539720113 17527593 854901263 181264240 758861722 689278879 510574620 743313509 447452085 146698168 845686243 363324741 579357517 328241662 358065093 702448532 417499980 801100189 910978895 245104702 214447769 442159166 472732449 143524463 974127691 969130153 259415305 727375475 253428800 460302764 387002898 941687424 671957478 779673464 490830866 31223985 568837045 6072590 772547351 91261207 371885092 272955065 689843228 546191897 566529312 68012700 318020197 89339326 399852826 45067105 226077583 710678282 144799656 947926811 729082576 414903836 136421224 95930179 537735624 622285953 110003526 666536454 774585120 694479012 515699140 475224680 435719523 259750746 190874886 188002626 519957782 120319422 460290455 593923377 329809349 412774763 213563016 615768644 43844377 922898818 669542865 276215010 466107117 213829675 41962383 833371076 436558514 267291938 287306220 426082497 1151095 50033274 90066316 360397496 587289123 904736735 229807701 412100952 429619331 105001671 42111926 61597300 348004643 613080507 438518474 666794521 2120423 647027350 340608392 693997430 996134961 79592407 310557548 719733504 456406113 954081295 134812548 260981910 616486171 719844342 545397240 991031101 382124826 639464303 743063445 763087032 449286428 320741311 124019338 176131194 632010265 631794808 528588977 899858073 601745041 354316352 662604329 50170632 439371732 408935045 70104974 683811098 600672687 382546725 454906447 963784317 837091892 14022188 970912888 679106558 207632460 867164170 447662642 840589640 602618365 211514963 97886860 96152433 964227785 973189740 361760962 637734084 149030619 473499263 545944292 239537373 801285838 55584277 737510612 454311327 190176875 8977501 595826949 634699410 391191630 568403166 246008363 234233830 20583806 697410513 823460739 755472696 442312015 248806783 114973122 530172124 209103335 798037234 679483138 435117703 938915901 619146063 470512209 667493955 658764131 493841088 33095878 372747214 611943131 76157318 229762017 692963868 538365480 725396751 229174723 759333892 909066675 997296183 463053535 160507999 122894380 446945741 715982188 153989917 730531191 106554204 498066312 661407936 327462513 648065850 158931078 601352544 509826556 857160680 757643772 485600417 536234590 166678380 734590728 392429047 896930292 774046209 945432005 86659647 819256755 15159139 422598133 145222711 248902004 172235607 547064368 125449887 942669836 933111443 963888287 59389340 325795704 142281177 428429166 346238924 279295872 555268644 31537708 868708965 435305104 5755904 772999509 2800741 702418332 79510253 819279626 708727860 439315549 628091561 697305762 409860206 897716571 100812259 904217516 161150979 37579895 985181459 801091387 846085107 854380835 786305052 671611628 370996131 533267441 355479415 661658093 456013188 931494512 643130237 323111765 382268706 453278533 882527611 368845229 898578567 572379504 808021952 370978126 93715598 940721450 764763632 1219569 689693162 420921909 21787806 686369926 570432673 584457430 791632440 765461533 935278766 868537590 381290047 294686932 594082915 167650031 483269858 367835986 4619519 365184151 215124312 890628377 384088114 735103736 682036154 732666464 905801041 871275184 152713224 794738642 31037969 172981633 109376946 938375811 541398398 686834400 647425966 170019248 441482772 280344941 767724447 853365978 84488390 158543005 202724181 150312230 32698219 351632837 767588080 250278523 426488821 131094845 380846456 309281883 556253236 97695901 39013474 924272268 842183781 618585245 676591525 357023165 269255679 430019095 371966813 460702912 249324928 904998073 908431301 649672966 178832667 428412006 644918136 54183898 947037298 685958222 606377771 155745980 141679234 532639387 904380946 575281145 863374488 934784253 891910247 64540270 138516685 486934856 425438774 37499355 598141769 577206441 885623523 806149669 55204953 36716837 765097719 210255672 995348434 160176636 435104027 633215410 219989125 492817445 349263075 913288048 407136734 629973206 446251322 597381304 157277963 471646770 102796713 588623160 936459134 592106647 516010565 79478833 60687288 840230114 436345136 764470079 471661443 288100202 892926019 222714331 948202887 987039722 174393717 548449552 629271087 179546133 198633333 868697210 352261251 292604434 624886290 916505452 655916315 291813231 813874470 476644549 625783838 671969142 639198135 813888665 100056678 768593490 691181417 198899597 171136323 681922027 392307722 374336462 220074503 884281294 850123819 349837804 287220870 989185687 93181171 492053862 958340685 547812906 298485153 79868062 313051839 781298473 863288053 35652673 740248447 515539464 498787605 486781106 392235440 747763444 350137095 28657342 406721937 472976852 866351269 494346227 141699477 881565729 736376612 402606063 532893951 42478553 746072789 432204456 189563385 102894401 716897823 806993753 237577988 205880040 876876889 373877559 826682730 622079333 215701297 280629265 768089405 331711627 685646397 843450233 102168939 263772228 246253683 837640634 67046245 184162158 915862164 218127439 385517769 564845450 151298347 100528210 994484933 406424143 409770116 700495215 478132622 946447752 226925494 676072201 326782906 457019762 316369843 694635647 883885388 407517747 20725426 517793271 55570077 34126489 600576081 631535993 425810495 183678963 247172718 644389875 73613094 146590172 86658670 328188032 552060554 747237844 431780001 802081660 488099733 407115559 61283233 531565074 277781309 227005016 767892235 935463151 570109461 911985857 413402141 597291057 510477355 264299149 11618207 553360707 818131920 330225994 986910119 484563105 999764744 131609885 303140905 740138578 638930434 107223157 193019882 266793405 367426906 500290812 991028071 490039546 939290274 937525887 980749196 387214561 705811808 832859110 721262294 55972720 678779252 503661660 893719215 835085666 488745869 804159224 893120548 243229148 173647529 932362177 543022670 788453345 101264924 782121671 132410952 576193369 823322990 884640057 361999559 620574708 591981988 807644877 470423196 40945376 949558595 534158706 788318910 838631526 805131550 197847553 822661626 58158491 589614108 867663694 291636601 695305992 658176196 766138569 118440172 495512035 820643350 88591060 43669652 271495079 93027510 760049440 805863395 802521604 39300411 243586831 547712960 737791082 485089957 251106665 597952689 447585785 37579598 345390675 911547289 96906706 915950698 297768707 895753416 378440560 465194315 81311609 232572296 616293626 878838583 28430149 201182669 981203388 36779102 826441193 306791347 678838451 80541999 967239582 661983502 888718546 379226376 220373533 812408994 341910244 409023792 630174178 922267101 865913669 80941464 406613307 749583528 672890994 340524193 621098259 746893493 784968645 163342579 62082102 755917654 551637109 205214217 169384699 325048658 324088158 974762448 460203406 680165297 158609331 491437964 846000003 545986226 589856119 409043275 207351183 941762449 454824501 325475334 448639422 288247226 575621147 892165249 506677702 208475153 824691898 542338647 801477353 217612416 143108039 577011061 775635031 221084677 542050805 96704933 742502875 848793314 793687919 98649238 339980690 210087595 344772191 767945805 801844275 910135130 378821635 303325 476646931 829664809 235242473 741104050 502991555 263037190 551829434 600034295 250491357 735396791 179886031 608576027 145283521 221477264 793050277 833544043 796706520 429897183 483908738 883810965 579260966 178015304 850460786 111578828 740914957 51283538 942128226 833135457 514207798 832232113 944278544 477754060 352932037 381890330 60500756 621265494 614127801 870629258 13465309 380627232 235808461 436285049 664991878 420021161 400204884 986565341 248914075 521612687 736727565 446335154 768144599 38849663 981157387 233476948 903704670 337979801 831581368 132779826 115442749 129717386 950719683 138860731 181239190 941751647 286150241 567014588 832844529 44771190 719340028 788247367 454233109 766202902 4615391 634261088 628111768 663328979 913384769 825596575 181839752 806299739 53794958 500448802 422353781 339897065 364792460 976817107 938234864 997783811 12130825 875656187 329402012 626769483 451087329 996201324 865560231 192203715 253786589 165201490 876185199 383755188 736364875 984630309 356630363 626480656 113886452 56321749 321178990 45473329 350355053 741602961 41344602 997440144 409809767 311525973 306173336 873443581 27323450 988976546 62974688 168037615 132795614 334139368 477846019 823741399 469447157 589519187 444654771 449268610 873088682 772214602 238088044 61766303 546539521 825516401 293277419 167213007 389019594 530997820 773635084 953338888 539445183 570577304 128729664 997365864 381946480 338590111 738659353 732054148 922644103 820451774 939430133 826855702 44732167 372675948 346152814 893132941 731215998 717111479 907585948 256422757 51711850 294324598 736745222 351012740 458357401 879279054 153329681 119763855 497168764 682780901 903348631 532557831 655305674 346012489 819637899 943190483 170912498 667781282 245563007 914271833 223256199 705350179 130983466 714085363 523184822 280091099 552238555 552222980 372354888 489858913 16257593 878054263 328470619 142889630 847202178 195278649 602254459 186257100 380559875 690083253 328136567 543493021 155648605 786453574 690210077 82271752 861751973 258365222 821544225 627011472 770740679 858084314 939969059 187768291 254211476 521061085 328478927 559167275 371042926 556643818 746807177 491009036 102037264 976965873 489538079 982252295 533800667 550002279 233927333 263614682 869180203 975828497 287019875 237573575 37235109 777321097 617854850 261614107 294179229 41993724 301842308 295007599 336683495 928891134 461050685 804242688 712479450 774140950 122080190 19316891 488831891 839528862 117974941 43938171 307391994 648215544 551491509 378593199 724842500 261592284 611241545 458036107 774653996 535907333 361701074 95307240 625251210 877919543 869659513 173877633 929196682 848615860 94027883 5325293 512337155 872740028 310674070 318173706 402064643 769936490 225469841 879823282 406630502 826500129 419221408 459386824 53049755 9369572 885564433 300413338 71247489 240343706 213932896 878584545 348722719 713035569 748709747 868165878 395562657 865109428 846990330 78555395 104540463 117085723 996760851 79600213 439208971 528141323 687725654 994354865 239435689 662047562 109441348 272569245 87407129 449536035 549519183 555032457 708696285 381648237 365816048 681819494 753463749 119177181 46779001 60960892 168132858 416095438 54902388 529472196 486534176 272058878 46105647 374651686 583964074 889969428 322622861 268626478 242056497 985403247 558210193 29204879 910582232 599461656 272285386 650197996 270157466 565572600 674881977 443670239 99062872 611843783 224646010 537112812 655481956 98090060 68230878 347592049 911910001 466091780 498236345 633113945 505569849 905927278 676660003 652748853 602901506 131493625 788645240 365399430 327517298 335466100 737038393 868192320 948549739 484878622 352461438 344818628 739304405 109459334 974779386 241169686 286778480 988811113 270677935 287570878 284127138 284264826 7612857 645296754 177843192 595723539 541547930 166579840 975265305 449911178 555608820 124467856 998841716 63277508 320158973 561025124 644405106 386234057 804106273 404442389 504690682 364704877 89570843 13789701 628629085 854472085 607175435 335938371 815185818 802610107 130736577 32833050 551163074 609257182 593186360 998305645 455951442 538356631 359831666 620364640 650298018 45778428 945362637 479939899 459501712 965458479 866765937 690747876 275054859 115530812 111326766 210617005 989913201 525196032 101454192 754736117 963625925 344293460 735944381 396544998 86590817 212010636 735929023 78073119 944827243 5177579 226453203 410857801 781373944 599319217 851334550 837547198 278099295 48478197 451974359 307364851 604788642 482515278 341779593 957011182 447943084 892934185 660791179 784584511 598766607 737233828 133839446 212019895 174376161 619206577 547334278 136348067 407228699 593601541 362176460 544774599 716591059 623661149 296142767 659171899 913527323 782089676 33947955 32185883 178168132 225722179 730110284 293230277 122137350 843913047 278236527 413178430 613050507 675177753 313117493 290886775 159750934 722782326 597650319 306220248 653552692 900815766 560765127 156178068 438996649 593516062 33250167 101157976 252093806 405576335 161829276 105589860 328045906 498164180 254750113 170924502 460260330 33501728 67731166 252841912 852351032 700619516 956192773 77398334 782033815 686830926 831629040 89770394 776436912 718299410 337176870 687223326 554673226 654681135 182091931 59883794 228581568 671529665 687166793 998423041 893595919 682933954 766060066 244380888 957268462 704976263 335671191 536759170 718696703 678642457 429754153 262385914 742964530 682318543 4711559 378305821 910417497 646058817 625759612 149923676 118137487 483683474 332551512 202110674 702286904 99462955 724934121 490859504 769493196 852982165 255037234 371820076 895848704 237542077 161339682 445713159 857767110 450354764 625292575 124371631 33845311 389436808 71651467 357535711 530150363 951992619 805804523 683850985 431944648 224512176 124860852 949845718 360100375 824585172 138213093 200094940 90660887 785009589 583817815 707793656 719020339 183202639 192875277 761734486 110828168 212944529 421604808 224208300 842280974 124851427 539037762 993898649 7660264 721748719 288103279 718005721 201928861 292258180 869072106 91776055 148357732 44713360 705016087 87922802 878582388 656788880 755837970 474359684 34775636 655890894 906731191 31142934 257193101 553189695 105104573 160053021 266573622 513969488 532146101 239883229 413072712 903869664 931642412 438694246 549032721 875827182 866751917 956720760 591678899 843341537 777261790 478549304 957412716 206370048 907744282 136520728 298087439 21149240 68654725 380380735 618377694 125840739 917933349 637382374 301868202 66910960 692582432 370141782 287004045 301009546 427509673 350221676 194597433 343597443 442711461 898562454 379237431 854985687 937600308 134807028 637593522 701277029 68658936 320840058 299595912 671095053 946855615 856926195 787148276 424713965 642464284 156963499 823499638 196849972 789443800 342364280 747455493 992706781 275564298 794542721 814843045 206543043 70594031 313700500 265157518 509735636 468171983 677448678 481859746 930976671 655171569 827002821 98110173 288508686 794813201 211236300 856417204 528322742 611974967 624149286 62343589 714513339 163640397 674595930 169323874 370271459 312189455 614617012 142205561 845034849 216126218 826905980 847131079 210764842 153512059 465648780 498047506 81271735 860804434 588875870 726252824 739739499 421285587 341938660 562986312 934639880 539203412 198188268 170069902 2645031 400160487 933204078 300734688 330438944 942158313 134710632 426562225 494984192 1473879 500040771 16528593 136853172 184867142 99684417 758457239 249007128 933942386 564220130 928470645 89766739 571454203 316943967 204026797 909257974 377613028 700792499 645135431 234674721 664357418 62983166 81522536 490227887 356957836 543510677 952956837 901596199 530172369 273824709 907878940 518030806 470356980 890931480 131411112 237663851 303602002 753175085 734784310 169430234 707094568 438231685 177829152 397730635 35412394 383356042 356308821 146228348 615524780 334590093 763842443 779738207 459427794 766261096 637237914 588791008 196939577 800345141 519857761 260984225 702952309 63650925 207706323 992183588 853087920 604065064 922147932 871058062 594692508 596947906 302589213 684109277 246987513 162982818 848402230 908356998 792938725 988036229 601552982 358139497 565015259 219969411 407177398 396111261 964076952 72105211 553132659 423318486 877450917 218039608 74935863 948688497 365583770 559351400 150023168 48689094 102098004 221214808 850696117 506703275 276045654 794750723 774703955 937454755 970589023 720982573 392083473 818905116 862608677 978431678 592401787 941634258 577338489 932798111 399812638 998265503 307383879 10670734 497175393 48013046 2521841 633663540 859671147 382736213 746309898 109869692 934937040 930395805 299888420 895872916 400332839 669702738 76652426 472033905 739211736 530719707 353387888 502961222 75468003 381397503 789845105 605527384 283150451 800988570 344623232 631483409 946060694 552903220 486673174 985334634 509966999 459425726 440717103 665919313 417242248 607747152 928012332 722913352 657671716 439098897 185706842 578017780 599870699 447505036 130150465 302436074 7932676 22928435 977593997 198379702 214094440 718149542 823881454 43882647 172544804 533447056 498979064 257228991 512185314 528622093 160565526 139541924 234076842 105951213 495982856 426635812 282756992 293965718 365959271 312196119 645414284 584371752 184213662 550023602 986788777 4935810 289148177 844015931 143167767 407512774 538045354 341044128 703800038 140408737 673720236 549823179 345003505 875328034 851850695 5109304 119804614 202991530 843702447 139180857 32398433 598873925 245505951 536429446 944367544 636347346 99193959 967659950 347718841 139153678 805622120 385588355 469690434 57855801 439436093 853453182 831823701 680216675 311497328 236524493 961892329 226226557 255713743 809174795 155157542 673163997 960987220 313583877 712380763 35464692 274768695 202289325 474772930 257613432 459004843 656888449 605178081 191560044 81107757 248036156 18493763 21841632 324363380 268780401 402252591 919757996 537297314 52921017 976936296 82130390 625454677 284722018 860914875 540524105 220185633 461509455 805449453 236091026 592578872 68389430 763410879 540790666 185459073 382407110 200203520 828877664 232968677 439762668 626716785 70837980 315786875 680388975 15972152 95878750 682881048 842100008 698691102 233566148 224130483 915332896 554552630 596622445 516288282 676150511 878772752 62564482 50279156 98933019 692576149 720759106 603805875 660634241 957996942 398231329 203568219 866805878 221826943 835100357 944620459 215006728 162069053 676670603 178201384 467088824 853323261 912538386 950525998 287476623 456471526 717986530 344358462 180934018 726910974 347949293 437655785 638616542 677499936 339683109 664444312 616547789 495552090 650530009 24985924 743821555 649810366 40175478 849773144 273438037 156423362 225145407 665795192 359604169 537360638 406429461 759036305 604497856 28732594 912518077 597298297 723474580 920232533 123418875 783301640 921005166 771236711 137663354 598370085 368805219 407704249 469323179 221071708 985886680 326554285 893336334 828404463 434207237 966754884 226393557 955305691 893269181 1114525 592355551 543447667 165816469 975790040 258513973 680936232 305393139 931057022 95027623 16058461 986610425 629457744 251287996 344020884 620121912 829754979 219225467 970261389 958399870 78248078 139690448 86723614 415205238 520940919 6305548 196599689 5997236 452464925 301252294 645745248 694287989 370683745 487158181 385992530 570046963 809403443 687097308 178399273 38002577 397052801 792248457 869790827 85720710 414497759 324724996 839965113 671833887 75789594 494806072 293806219 943589173 314021062 119491888 862341754 558272616 17753795 325814828 30650449 450086166 990647681 730742951 874663308 562827724 809583654 939665084 851268987 267638356 412390603 469679680 301149062 203523885 186675242 980678812 404881947 179109887 851484913 151525984 354651494 206253553 64739396 133859900 325127349 403300760 150997555 575738914 899052200 174656017 292256259 54638861 203415094 803404858 195463217 114787359 652185061 6765669 332493484 953813340 94142758 931603213 904039582 348902233 280231785 8488095 287119783 989608642 318955476 763197189 587555774 846328642 274567636 167440606 240399380 817818402 285554442 61007321 746874137 705801492 527795711 234782811 522734993 143440893 789639323 422857988 840947768 73091815 107975507 162718675 992993384 340190721 801029556 975829118 814454977 708496354 285650861 263022796 891797001 931158680 995414273 929423704 30608092 950445287 316917436 201276259 780165278 212357087 439061475 342276169 788241283 304433859 222214902 266175639 639950827 21469864 264063187 624749642 951974825 796709891 41305700 656970014 535317959 913936772 384260011 321998481 769276628 576719680 740065612 930838167 421968746 262816392 157917483 187594043 241523620 979778739 77799637 293447655 914498406 778106933 256010394 36202721 201754891 352692276 190936986 57622381 585391408 665390670 935481492 456291618 104410586 980315720 47860157 513696749 234208066 554629365 819354356 949802027 165376739 196987867 281372447 592782887 720226087 571426885 132054588 516731130 58137864 554491741 293480190 164912747 919770967 450427992 865403059 891386901 657324064 187564194 239547302 6642236 710508802 507232120 544473324 602629546 123209372 871335962 569430071 361882787 482338005 185732824 947103216 568549713 535180334 658076973 469460990 939753419 521134829 409426258 672595293 886123872 87572756 74932502 492799399 307596633 106581378 35351758 70390634 769910464 810985897 363361095 158601152 662872564 157290235 795248773 582982058 822784191 481523279 573855536 258976659 728978764 514070779 67715330 439678010 717173332 696947028 387149020 161678314 968847974 360451415 769372211 758386150 398882026 307155077 727069930 63540751 251330314 299774451 632050536 734093197 857290419 384433919 812879368 213681591 446951815 662209078 213882224 170272825 748814837 768039836 587442042 425928358 486105781 982599965 641503605 521619855 246528639 73236394 831058099 778661102 142413477 555591109 616397621 203762007 389024626 236403855 651048136 564895504 607739940 168318301 550166346 849159462 579716294 521872254 677599980 957207194 403774881 594437308 665044623 745323075 328940457 671099947 557039279 405570070 128914118 550391497 375251195 676019028 541906091 509102474 274633394 92549572 72561532 847889999 548106391 365777200 204029213 187751404 631314345 240457248 193134762 338215155 31541438 295549949 842268839 421457779 76210900 388794063 455227263 704057769 331879958 306665413 121517026 770246055 298161432 715862285 444749174 606887497 41356904 851305262 859147998 666006229 25570995 904093298 207011440 472781423 288261380 878747658 64445262 552251892 327728601 959131756 665192093 651566978 834497646 92116834 940885532 599162566 380903381 930231397 444161485 454229282 83862676 704634540 574912669 952358110 746886900 883346671 467657855 222450230 557894724 427194497 503318781 950725010 198441321 677168160 233264230 589849962 317297297 427179472 864556734 550306652 678260054 469018799 135740645 378994514 315218064 618859675 665281587 63646997 531631953 568335608 990550612 478850904 775326204 765345302 632129998 865781800 91378529 385733030 820990193 359990625 288394903 750023525 197796440 500907352 291955177 349808475 828767787 839902685 248255156 311700605 627949659 990892492 898149789 165115448 700414491 657839926 69078025 828013556 662811629 485371246 71641437 637103601 429689011 146935412 338346390 465380887 867133783 900986566 818148851 825732562 449272353 81006106 603686939 946892799 576711148 62738208 992248945 353429162 51733579 619731666 205850886 7714516 242524355 28296475 520016752 74979689 651897663 7760663 337597911 835740331 519167167 222806032 597022400 439951585 156384351 496346847 429594558 51672704 361502614 543679281 639575323 845855041 212400835 784101000 33502856 892128302 588328801 194035847 525826098 563110385 286115555 422152285 482444589 692949257 89109041 142841658 751036836 957734779 41924915 135678562 19535124 846305532 770687889 559858235 817847582 993724242 980857463 844486439 187007889 578378143 927625601 490779116 867273729 795601701 354218076 236898035 362253395 591896500 74850042 811160563 306876633 924284398 4634640 852062142 748398196 470991728 316591096 263461964 622205955 986560944 882248799 510843792 486911938 354592970 769094656 449161892 160065191 767716492 966542850 425290525 250539952 393386781 865373680 90034185 59088596 196295355 737208905 699131939 833077478 28690970 747235795 844424412 370764033 985694327 709590535 237850630 711755775 241511756 105029759 272010462 887814946 872835040 596519375 937111198 786184225 437419278 858098158 799753736 68411493 373553234 516847110 671601957 664483147 212121438 738409381 167191182 311225936 242166360 653830529 918426453 214685236 504401131 317951059 236149232 345490131 38316059 764977641 912858529 844655233 605657185 512765109 230663481 786748847 98145440 888109551 314073210 126202795 274949181 75459751 315134906 944364926 271721247 176200184 384222190 593110353 702559649 251248524 116335610 875354276 173432329 409957929 414072831 771861282 361815452 939731258 991208938 483093447 280414105 779108735 304706759 425516344 593544554 940975495 265848008 107494701 323225843 291737588 949874951 88025693 482368767 138588809 651471671 692736340 368230059 266000172 247025902 146287539 331609551 284091409 538650806 564371678 248127591 440874657 887707855 348446654 384804950 156449724 107654995 156023172 620028684 885027630 969747142 11745277 526803066 343227398 500236180 899408625 631845085 181309215 613092071 728634231 289526038 444745865 844449183 303213699 787296153 127770305 21060897 652252202 827798468 296049253 491956112 300697176 857101053 810053266 815974154 768168741 616311634 262242650 758493992 478430911 826624216 911629866 416309136 849840104 646837492 720499532 926383774 715320919 842044977 678423746 161105845 211001180 430470007 621679715 655353175 511861920 962742017 243416824 104742068 573998754 896040397 674136472 976431666 66780916 249885581 957962308 940848306 419563473 691166421 315575488 216639323 597244957 237906010 466736483 914047411 285403740 698024363 161879512 965859854 993819317 355481172 187256147 147750372 102806386 402646296 664574544 269613911 961941432 329235995 225655664 277159525 777698183 996823721 741867247 862805758 29797920 23987847 569542824 850108256 43296626 55429119 61198012 439442090 196091233 854205074 155429344 404775677 67484855 96271656 57494950 59165657 938168353 651919118 111055522 853812112 424585409 182505711 529675494 372499362 84388373 753463830 444812783 614754543 491364765 757640223 466942524 358780510 960127126 627078725 44338747 607686331 591550367 319580568 239724872 250296857 98165732 2293155 731926369 289875469 841247706 163779487 497937177 889793317 525847270 446669963 867607430 774951458 380184929 176595870 880192883 389365203 40521526 28331127 966846231 46811281 516281320 179603477 677368610 273611982 416876585 439819573 913347224 366589252 527052744 122402267 452077009 568277554 636788571 778993354 799851118 124171442 302660154 839288879 874246899 351292454 565773653 547117755 529449490 122770471 949512288 227665962 654837121 579489022 835477533 582298317 792081846 527550536 577080970 557732754 563624652 349818457 639356214 77790204 912219602 322983241 104462857 233379030 772796068 792550106 971677555 666225382 225831883 577240846 593250584 614476921 687644584 676951084 667355388 870403793 911589964 301007680 180219484 446870651 40115404 633413071 541181695 403697001 879934518 278475898 368336964 310413367 976298621 503229426 627891460 538752122 464610825 794933490 482801633 153246988 422628853 881946569 718660617 764800927 70136987 748512158 902477568 546126887 208391869 512827598 144625727 758466681 79808795 439567469 714052981 466889539 916394856 198505045 550538435 330738440 849157370 671764158 689603480 584488201 246962532 395614748 884556154 434698840 342001255 488533981 263751375 430298816 592017818 151089981 596189855 989080117 480060018 575657638 982964516 892901512 211080038 977310932 950815177 150908419 208111536 844007585 307856897 37052095 667403163 532928811 574957689 9564583 937197806 543575691 630104188 841723997 675069368 881191704 733033665 641975190 628418427 427315212 948617035 503368515 23349438 874386733 664615759 675502824 826132268 259499067 657950516 778237365 589255009 286919927 388785177 465456324 802664413 861053213 463864117 437159810 590583253 960579644 530198325 878238216 36904513 343176495 950015636 836340216 519672867 111091215 314504067 151094791 276338373 792327656 373290506 434621644 91798528 282747114 347349538 771501457 623859391 851441520 460250834 952468334 241873457 487688482 786570077 460836821 958966150 246708012 410359698 727023562 567730451 810198632 356252922 586571682 381869586 851085269 978078290 307571797 898718051 64019194 741085355 979554592 874887571 893521693 943586175 749826306 535942658 480540636 49194434 178583632 758087160 181840402 527880978 504484398 696002796 223412984 469459762 725472137 4334616 68470512 796998005 129047494 332025727 129400841 398020396 900297287 249111739 872357586 706145588 450623145 125067136 499981257 121948955 713636150 217248871 993287693 120052190 461071248 153245839 938243257 295538797 313293921 758423568 146478007 739616231 179166409 978269362 478007451 100172425 307065859 288041296 424073186 438783855 815930261 581138520 615392357 589139640 335722701 222491182 693122595 587754186 951663062 509900807 468799368 662633601 517700542 704352691 274578063 514735332 474145153 553832180 160246306 346462464 163846534 162178972 770274592 656278966 626347675 136581962 866672308 290567169 731870004 705282410 554437606 698863321 699202200 53561662 542730833 377918521 932965321 97279642 133817969 8235093 121957429 883307829 758553468 3548839 73945683 181705192 600756779 342017402 535939669 82247863 519830086 205635282 830137233 334285575 438714858 55015282 185470409 983111029 987866654 404772260 731556204 226659687 491454378 175547807 225279935 348132396 787491684 131638776 851098802 656696483 920091112 552955434 931464367 619047094 802852219 356350981 735102493 901136680 730480905 494066170 808858274 351664690 156273770 200455331 666449675 521048305 357425682 724061153 709956387 316260071 54807304 125795536 670595127 280172846 622494412 443888390 141539825 245145751 546246201 433521776 102490246 115336687 13768678 604230616 662053786 619982103 901409717 573226865 108548862 945564503 144965468 72525974 23889742 741918692 474389073 122429849 284681750 425500928 708039360 513368191 44910362 190166953 554156688 299271911 707677152 265811867 888572370 129176163 581322825 903793003 423439933 119983306 321939275 607918896 901240914 411948582 157453603 294924851 788122481 362894913 174164081 436257314 359649877 724482606 411380131 586783545 292181336 616849262 891096596 747623553 760675001 624645744 285554297 390814151 489896872 254231399 821863679 148150167 346936713 472877451 774062321 317080648 252354929 742272470 656793284 336341563 482185007 209059832 511208124 919626423 706240807 334801452 369986680 679125235 876969270 513210116 117493461 215308811 786441218 536590068 246420552 12658603 162161865 539765970 469726259 608547972 708316496 177323547 497931922 220544374 620361232 666972375 714174570 327849246 450922461 371282763 833735411 475878143 613674166 815572263 683751453 301337767 713808836 925417619 818404357 301069156 300673298 889335546 627820594 453319868 511956458 443546078 76491416 789022381 322950186 976944259 290448737 682510413 65022780 603241400 938724375 661713338 37000335 313123996 976798388 439041191 45042578 689852308 746189835 989768037 145665765 148175312 410639050 428495271 800226668 365007567 628541040 810936374 766781187 303175908 331355650 478047808 345260314 151748551 386007307 496047358 653925059 47502665 579657824 435851640 303344381 379201011 12440565 207669217 316185513 322528919 182742354 961003828 773538012 621086384 282717631 88244454 585064513 395643773 106966378 772061540 939727554 899462626 925108176 136962872 825318809 54807942 322315263 115199554 394890960 427016358 263775832 889914954 330279043 844761081 13893247 868473034 948339774 568570865 942531872 623152744 985917655 120995753 244360819 829184929 796575114 631774810 914955284 198435117 479185081 605956692 693095655 403985559 657837116 747726054 504964955 527112055 194988437 863288182 224625135 310239477 127337141 588955298 886331312 184166226 96406566 87497012 798232259 308351656 168273473 336966036 174260472 842100177 762564920 843372180 258569920 754174475 123792400 518826295 521057993 220104925 537390514 945140615 325477453 778303465 360585585 623315491 373406058 206703233 316769291 974326065 679737676 167315841 76936091 172846836 45394216 528321534 224901507 12935801 646647491 89075928 840670929 740087472 724366653 892676128 222621169 719844587 614050509 814954569 693230287 663992411 96937213 857538815 352071472 976185042 93538130 378188761 320118826 250756724 307785814 954632763 452323192 814594868 868645187 333701881 439915772 897176844 820659368 442738969 167946911 113930050 555017835 847166104 443935459 191154868 468040851 145453484 262847 291050466 905254437 855806984 665291470 523910927 680316294 452763529 803764596 746019934 295654152 704362916 529882658 366604034 562590209 397910664 659014822 190017849 678736235 474274031 913670356 359670763 496022485 818493299 920087812 460940177 801823039 779466942 441041254 644094550 449291911 471783498 38990108 978256980 386017818 527990604 690837206 822551166 639129689 812154785 16844847 14038536 272992072 904844898 312073268 440388266 268947871 39563277 26909046 4100529 86631590 574170107 96646417 467520130 130831964 452532314 54245123 208035819 305889524 628279383 415886628 251526779 270812670 414432409 211667033 576620680 683034971 723775037 569280716 689445261 930826631 779164767 744485188 553066793 991589446 473262010 456892496 174037428 81390701 369184139 740749756 218525078 778473954 679101714 695261626 281666929 297611306 691426686 789226658 71801889 715281214 169164621 577369188 609011449 735553111 849028372 183007726 999266173 51353878 231196169 798891541 469411214 187286775 691183051 559503222 76635384 470677079 877247359 436611850 254558777 36804703 770602189 596096471 611451872 227188269 952323445 607413633 370067480 246613676 236167384 334263754 340250149 34433242 498204376 684519645 722396532 358592617 55511752 27470482 303776927 759190793 240649713 502100508 396120397 954533248 174341327 51546390 442057678 646387051 551965955 457221704 157445522 165244938 86986720 937031838 746476307 256812816 780840383 75452076 888502812 58649749 27553408 241459569 107790274 601927214 842895610 255133927 876315111 467692843 877637387 437875415 506193497 829190915 373184789 49746015 335179114 192748562 673107710 837820567 28118127 375692346 182523066 217638315 161597133 127550678 876260720 360800575 761247645 205932277 539284590 86943696 634348763 124423146 52323361 869463983 673522400 710963566 655859207 283128293 461493783 857636641 340859548 957037268 251718539 68511520 166536695 406776907 929824288 318574045 120742702 713073520 703483075 551674714 281815499 742773583 132532314 562396841 407534251 9769694 49487469 695981436 701793849 923852708 852480827 879888968 124298440 759635706 604137635 695730474 867170149 580590023 488129176 114701062 648262702 458013669 593733314 352183694 769809572 407963415 293995270 150164248 124122680 614159364 602616848 901677294 57190076 165290662 32919806 761857133 501488511 830835723 965935566 523143592 884652045 366206534 842803180 581778729 83468443 890251507 548772519 845416562 927927635 924920970 143287781 351320697 674951096 416977298 848580321 839072605 825007027 796574821 431378278 578850243 632341117 416321006 512432688 469293839 863929897 149021446 574564903 390187272 669770840 451874757 748540232 904603807 403966791 556501621 538046779 593475220 808197732 419984193 335755576 530977203 652999340 924533569 574035537 860275323 271679780 808378648 870876785 259269187 369764541 373492569 32602153 655111120 474747866 692732880 912092977 359528688 925151221 979636832 1079153 302648748 824791926 570558640 634370036 982626577 860145404 408980124 554964481 214723809 248282624 124830780 575561694 904481820 146347089 375546949 385426471 342632213 208975177 877002124 970206230 647945195 905540006 399816534 94857157 919497824 51184642 241430026 822146603 404130499 923105676 85727696 907467371 665657703 59536505 821578849 598026945 531859713 502452238 90284744 677146826 570030013 417444956 410288138 719171461 552386283 406724247 220231089 572295237 615230124 431064368 867143126 711070247 15037625 855130679 420820529 452218161 329610581 280998408 740214339 588595944 623063164 245205154 107074595 229127439 862708460 312284772 294834201 967575946 928344985 301316913 452461390 279903742 714226320 253935304 119451667 690898035 61720834 959719404 750016593 118183443 479911111 980351984 987507788 492460441 269760776 612748846 528399546 819213354 968366704 323565022 518793233 344100281 451447279 509131172 380760675 766061879 130240340 638299419 370222949 721729188 642264871 704341898 672228834 450914508 317006801 8224896 305392945 287869275 184982146 609719497 889698116 999744451 379492852 335333666 99492884 723538629 150344647 700099829 349393001 708467883 811219408 981462583 979093531 842989906 135589444 439808976 36623553 159921422 340070902 458253364 182654671 165953202 348136413 283597913 630129882 733184616 572362139 583925260 13677003 679907460 186228311 466914010 289172549 678907673 953417112 730473871 819146692 399859351 271818798 115299445 646438133 699030661 724907987 376667322 958278703 963122498 654363109 129734891 717017538 498246531 254402417 536039133 903811715 215867815 553633322 464737060 945499092 482771083 940909410 96613290 548913541 131281905 336260014 777807394 455054274 451918097 906923599 675363579 476153267 891399829 840034935 913386665 299305229 208654931 105302716 46702311 209852236 665798446 927521821 998682398 986860741 965302510 84218046 206413226 63041244 384770950 119806310 141296812 671096914 30306804 115242188 312602243 261640799 137435982 227566864 281082070 618192603 608856544 976054400 18806944 84206638 159829135 479015936 692987448 525532500 167969781 110199943 982102138 193225734 983185915 514238711 999260815 802014900 229384651 537179361 673403826 432627226 494279570 201729818 944169865 380108677 638746988 920681559 137013744 259275150 481672079 507888886 490458986 262716873 169551672 750537699 63003028 723420696 43810547 994047813 337470750 460741602 137049987 95473368 820163476 452270094 451837683 693799292 127314413 241463228 457460309 769270561 967252613 543430620 503905600 917315667 545603391 673521628 456536616 614308693 901187669 445629848 608796985 291378720 849147138 570025828 111156093 115906946 564177559 257091154 108020410 60795166 610515349 600586457 927431667 41845996 588519979 733558399 752879748 627001208 621730565 738691264 581325509 988580505 296849646 205001114 328231303 140376504 201955611 167093309 236517892 762002358 524925517 318392879 740364308 593421615 821671991 131990095 569545499 620879617 813413644 656494135 233496930 859348542 168597068 988993532 84398514 723251746 128190800 918050641 779791549 668760090 512606628 779893565 85928764 544629158 916026566 789448962 685576476 279214166 588174855 404331120 672085617 602301318 13691295 994364632 512190133 53987625 128478873 930438274 148339284 416949031 962949780 662641966 252851286 711088935 203724476 936221657 618116033 323866988 667208626 169284912 233589436 241798085 620603001 960546647 7341544 723517244 64851520 201505376 166044543 91741843 491433444 530632929 737327809 341003447 766419034 413000470 985894385 222448308 156188235 394664437 725647678 473151805 952386904 983310008 713013026 662346207 798749518 243727793 756496698 680020363 385128569 492316416 492502868 813671644 241566599 143543788 790955572 54967377 23045423 702240309 743910525 665229991 29395511 909922083 561802563 81231649 711852674 165866597 604821131 741202599 377338727 340830695 969250058 191828102 542569464 122896149 95156968 798783715 699882493 200343972 354544663 14448345 611358253 733324365 421840503 167891340 660406298 233580685 929969820 337683477 788502119 477504533 386572728 474802598 669147998 899714056 964306408 363599307 588908809 997006892 778121617 201507694 152667528 423449449 171720212 948682656 320292250 258907054 646729155 632220716 448140668 521124651 477239262 382906041 292977498 310775451 538373884 595880540 367364740 441535895 832598409 367506856 397394745 837216474 943896404 182162017 759057195 322113496 312580029 438788439 389425456 233930902 927492986 887804412 343965245 648488190 548089792 899588636 959593607 753240829 965610157 605492083 431546619 581620548 623672396 554530984 327588979 563772726 60775764 165209698 796591157 923674817 981343027 961762748 697052266 883796518 344494753 118320592 428323493 299906616 233701237 123623170 360516509 484342633 285729151 466025517 228476665 688475049 485550864 112207883 464183793 724490899 464960710 705070171 935359072 195368561 366888719 71892062 852117976 476566531 957555584 704330403 881196596 538603372 505548084 337351736 378870533 118561052 718082990 972163469 973716599 121597010 440505749 953486512 893811832 854052485 599028795 197810145 542046067 159664759 432604960 29921345 328930442 479308792 420928620 679799567 6372609 103749143 790178954 687822789 480984552 656039660 436731965 202044066 293621339 110019681 430066447 188469889 599066453 118433042 225067170 787469212 796504934 429849777 231315554 74452803 524134766 50907097 479718387 1905953 335141345 848011607 202408804 613056440 183725092 716333741 442939654 3520913 128193470 790946772 782174635 709472064 864049393 421252178 905644181 470415030 751680861 785668672 148652356 745170586 328184407 24430964 69220203 246374128 268255929 268997550 26896526 163582641 304317575 2894499 344422304 987364145 274142625 267449726 927523586 552658111 944996713 120862721 319433583 501298592 704795565 293409622 866401762 255005352 631800225 677291268 73456085 980989015 525747082 372829180 711912531 66294797 326226839 630398234 80452917 217013631 250681676 222414114 272694337 631260461 375644824 933183312 63518968 707463353 329386174 357885062 426767408 828288762 7050342 224462379 553225386 693295698 538011445 448493117 451368041 815507433 683690759 698128504 368052215 351911570 158508638 506204140 628340463 107773992 689873521 737247815 307177804 305048671 774124749 896419185 958951751 138236833 133079973 222009048 676710897 470899312 102595647 979433854 291857338 672598545 568356766 921773308 297825354 853095345 9620139 298109928 211191856 950385269 628830421 943996012 122425413 87705035 573612572 653027739 729282123 237284500 653519867 110205851 509499444 335286766 253576278 969470601 899938046 166411667 206398686 19059951 594530847 698740579 241513992 803387703 425510524 667967200 227038238 666391897 8908186 352582847 22398905 52153977 34947503 55702943 520775308 95919171 501553054 311144960 212338119 430730864 723927661 306010389 90122481 309428556 374224092 295659070 897946462 1380473 707566197 777026306 753415125 132008943 216930515 492182651 822024581 738876083 827838530 304777709 166136087 748848390 370293739 774477482 236008700 309008264 203362284 114088900 503657209 736245687 635864965 692106219 937906033 572392883 376946369 270035095 739984132 33200615 88932992 895161634 224326812 756226111 443899571 524921523 893745497 485948004 262149322 55120636 103923532 622323527 142968928 775443631 132497451 800372515 507312612 206507849 421315866 572994780 796649925 287235221 576024863 690219904 481962925 317108847 425284623 500940491 792115857 421411083 918532490 111950807 810437634 146003896 650491712 320268332 685672748 649425253 409013312 536319752 768225297 509499594 497580662 456383800 110524213 709957445 561723371 862820277 596237960 792443539 78286380 114260606 187973085 126549735 754936922 730110239 769956445 483932183 754883589 414709721 414618513 310882529 864346293 261616613 186094647 71296376 894976258 56210276 271624385 595474694 615933983 723870104 158086851 984004764 215452774 484292561 723127746 379979112 222822206 306649195 694023249 385364947 211380801 41510281 970683067 16809807 551505796 810295890 488160046 870901867 505757526 590678277 454807089 198493050 863241214 556989553 672292684 173166722 490246510 699871771 877299538 456157142 811460737 845316554 769539964 80918253 559439434 30123977 468722099 844476067 450768002 734007763 482072819 491977576 677619162 667795312 686438359 205336067 392240394 619669438 225829281 243841248 946464166 584255365 133299392 65249093 948484420 331942754 696477329 426642682 603973303 908061896 362370828 39817036 72677450 564380356 484057183 158156591 310252799 452935414 187515104 742611050 360073801 423471629 232170244 713302196 632897823 567159396 258450938 250185325 711039821 316242626 345308631 793395334 180696685 813037747 716049943 743856805 159422697 176529002 383461317 643283947 584782995 392663200 45516080 144251975 717857704 504000330 411838997 519465450 441363362 174166790 254637260 584669831 249183605 662596291 856107208 453591737 97078819 99515972 76239727 944312434 619432942 301471232 930385821 911484891 875942429 566508364 596128171 731352724 818771153 238514641 56874704 245827988 601648112 50949778 791286714 282251602 188697570 323504583 850216114 130508484 658379082 943866915 939627922 253955423 66356957 976724824 460558937 520183620 329025445 521870813 363184767 53588033 780533186 950513110 429697017 846020291 520281512 31612205 846572684 609785586 964771797 469455421 180125611 635806827 879567993 290323374 640013862 439422509 17253731 341993092 331997516 500046305 247778977 981922731 935992129 677382268 685763100 888134938 577069401 243865074 263684173 904267509 238339597 434411685 699169355 664656947 273233278 520411803 308495272 696126020 222399849 18915798 84432093 653713728 335390095 482137469 977286181 409974839 47990109 46309065 625741120 198839169 871853255 232842542 199420620 644246660 338738384 66468365 530608194 487640321 450517462 302073116 164994546 214131540 331937598 935654098 190114377 625365350 225398227 782231984 792075016 186554635 538474952 511542959 410941987 391514936 204482724 692508635 632010210 166528089 56879052 300738149 100751357 429343285 229494117 787802257 490584350 944372868 493193418 151558613 711158876 184801621 185750172 805705088 510660503 429210249 553796429 177702738 667276098 757436561 267479849 435692779 604071750 582071546 277301956 488832502 791857953 568409032 293269877 492079958 752309681 416911193 159695551 401969479 418989426 258393582 922887465 607527033 816388006 667192641 936881314 784199998 359131137 20983285 100030935 32964867 133875399 714330971 726697044 507444436 561822081 100841729 985834969 933495801 426762615 107093191 389946134 814171589 440368290 887428482 623998720 670066806 657215665 603871668 156845455 281951136 230105943 632548739 941621762 420636673 227888619 470456696 731781181 328059505 48663761 578422611 280680766 719585090 447901956 256984354 229409410 480776375 122962129 142327242 854399510 481493495 947789879 896387782 87127839 536506373 376171663 199412741 328118557 923705108 777696533 256893081 515248341 164504160 928878445 145698290 42618837 47487255 916085107 937423885 642521656 753280254 964058109 253570463 918155386 260960437 77185410 343450183 465355641 521836985 2349995 235381781 974626227 906487616 597271369 233964885 584672393 605477741 522552943 299648449 517731721 516756545 461005218 560166831 958826732 384519786 86320587 296924697 894819754 555223930 463835638 266820835 758958966 17391278 493990822 40916465 230138641 822471318 607230382 454134705 328861269 391182803 50953579 181240456 572671938 339686630 54486204 523526073 714479406 357746409 988521434 386899612 377971761 172611696 176977935 95106019 738866535 912805147 875568224 119513419 552709841 305120147 572088819 375635173 177387888 737302872 324083258 267790735 121003235 978345370 951378165 108217628 854032988 222626501 355982177 752936180 10915864 429865330 267642851 749856730 480780803 691934163 53481390 926803279 767853905 735979020 914630924 850777434 500854369 987146403 659459024 685453504 542987511 492608075 714691258 828653660 928220261 13179823 386248310 23161573 77629229 508155043 796135674 750191751 68514311 252671714 914874154 49791735 923066486 497488409 136110751 600928947 429474467 552472490 234782685 345632861 171370642 185314508 976640106 114444473 955800338 628299932 500474908 789215473 379505464 991005517 313963385 631469206 336432056 44775947 87733183 663880726 591190729 669669933 577153584 404171764 581490581 814010518 338870690 747234135 822281863 484084342 503358407 207803172 676789993 585734375 961528526 901958653 905531117 811272650 961709942 278808159 994309066 52907196 987986012 563682854 409547249 468932902 895334032 165310970 267480526 405708387 46109225 351149722 975437765 979380511 211518936 202014010 621880357 613541236 862451871 528390344 182233864 559965732 329014552 323649896 937314437 120355482 262805651 394765957 488277599 812682814 910308494 146043421 25120250 94747722 782752430 848903013 639007142 901540872 269776282 279699398 911511751 590372489 605845391 251132276 772725647 661269637 89546509 113838878 255746182 916697334 466139799 293710003 851338940 551195912 462599303 221846469 868282342 52306869 182403445 645285882 290466489 843112373 84926601 196122568 914261217 836432744 23017662 154709837 839285301 611003111 226562060 477705604 361135504 210606608 89869186 595611916 8011363 475533409 768800661 103326689 485186802 720933653 951953946 775024788 286311673 403872279 411699060 624153418 497617614 560825544 254518392 397673162 874754988 723773058 185200570 659029123 441751223 871585131 986251461 128961794 937740180 48023977 579477518 686325273 183225789 287324768 873345719 544701500 47901073 836299870 618710924 164769864 179989848 267672580 498599962 793054314 750551357 755990483 424971429 156589787 410272436 119902344 20558617 814132376 17231009 98834635 747288482 147853991 157722605 873767657 657896054 394200974 351332386 43056093 37531355 271555158 631129900 931308222 627637799 369016491 770617985 292410422 50994953 740451304 151365393 850381895 456704926 904534650 507152702 79335793 587019655 688124996 395583321 474206052 69545757 146867903 904066271 41311276 517991415 763002534 756165647 580492169 246055019 872918063 688939979 278009999 981135357 918055735 855017550 443434224 745646006 546394635 508295916 674615560 128140775 642767100 619910593 735440729 802233990 340427128 285884462 498264065 198264524 52445549 548433964 937272506 727772389 620424623 261772702 356420650 31405699 485602235 272284891 91705307 892809512 483819030 332514315 399232435 744990191 408580742 513570337 796161712 843975475 741494788 253435347 464210957 98973825 430045878 770730917 280404221 145674461 926552097 638348231 667892304 613079697 480226235 33215627 878079880 853689009 537965855 781963616 813386066 309023749 146873336 973300833 783259635 199302008 403813300 509528106 592365788 220346811 529949671 855516730 120090297 940893117 693304608 469430419 596380474 390014995 641594665 517580080 508423296 194078237 655092103 171272323 51572980 511607617 585435329 13216045 140589335 27937292 437977858 663396948 888365602 790975912 6090103 525386537 617112754 398778994 898723317 390836982 209308002 780217451 836890692 616767766 781091336 415697393 666602042 711198271 24480836 720997961 333168009 591079847 507447373 953996647 325609827 971932267 432497887 752539977 866655683 811087677 874472138 767930945 217252106 876632481 780516004 229994265 453228813 356250876 918154930 159870099 377481003 770651748 986832787 57800406 32271958 821400603 608595278 819104157 522957673 687397833 541135306 288727840 79359820 724205639 789661618 121416582 446236752 680568658 456822556 638796405 260275633 941878230 957567826 440510602 31432897 795816977 599267857 626392239 853187734 107383064 732524305 595308994 868727167 834257508 521075381 103908746 9673484 512818949 216031269 476034080 291418570 391870384 948220682 603886168 787918846 366749396 980986354 525399981 929189472 944178492 680352292 894376994 521043909 232425811 150933161 846482153 740233934 550207827 115741805 371849029 62560916 495531600 216602456 409540704 374656750 424625234 407626520 44701682 274038052 467445313 121473795 179626571 546703003 40799763 974288005 85320529 27579098 311685780 607571880 35853558 262497141 796093067 946215433 138915435 923213112 586197883 948528555 336397458 714888254 210216022 939345499 513128717 355306471 134923237 6438844 256321785 693417101 363100257 781563791 720207605 492747825 323957378 551736259 928080130 582983913 151083104 516284583 995748095 508398865 506876551 223408321 717232557 213347140 945780603 827989246 395141538 748970263 546059236 758384224 635960195 679338025 301434883 412072552 80665997 22512672 285288065 138542304 830326402 798522252 98319033 157599039 577879114 746479169 258801302 375903717 150780981 36473357 645716225 944461150 70806112 325874635 332928629 180941085 238924969 201890921 701275300 208995646 884842189 616335548 154578910 87064602 477871740 451625327 54463368 478121411 492978338 94286814 862737516 553827816 401125584 291784996 245516912 693423236 272958937 229601084 311903229 665641986 139961060 273447333 298805976 536321618 579584584 771740261 749227865 547359879 152292731 669949972 855699914 928714153 324402427 10984017 402483261 302111273 56078417 799931476 145657486 72171730 141503488 580185389 256233244 732232172 64093467 841138633 799332407 729020752 891901160 320764322 438361760 474253028 111174867 667972215 216292306 993382586 213897687 327634426 247791273 121797871 741027608 821796092 806527311 211419480 199290594 194075051 180312578 512772864 338775080 53008908 183056431 773638023 208521394 922051693 101528268 364815944 861012734 129302074 432754788 108430504 941984116 392693986 750774229 71291381 235764599 126750225 450136335 530698608 792831064 332911540 615072231 904083276 14546917 386185306 361071012 784034867 269813293 942132015 931377099 937489712 744346878 939923289 874586196 278148246 530545696 649749733 950763949 897074735 399240010 741539959 885051209 168428491 592913652 8675356 521307000 38360909 490525760 184135970 694441283 569488398 315380771 49805807 401703706 694331440 694641719 908983259 709890045 528206053 48373231 541754638 616740307 806564025 455302891 967767409 272435414 765948558 965118052 563732663 24758601 337166385 429507256 786423170 550467332 380357360 300670347 879757398 749250893 735048350 968999254 495529934 984639582 784249115 984181490 115250490 332789173 165746977 713474641 970042094 551183861 604706485 399453026 344621555 833302162 589161523 605961742 222556989 140806121 264025771 394796190 392819442 343622840 864047732 151495203 354046399 113797236 549123956 419101459 269166004 976893335 295607199 914277151 234767762 162763552 979630508 321944468 852124293 667807297 855768751 706397821 440438723 215443262 431253547 784292802 691959155 92247211 197329032 971819247 605520233 601360331 182125195 698756272 432308892 258985206 102363618 719184569 83973262 387860748 439542337 579151262 524977858 524756326 426481319 698230050 283773508 222056189 717387702 649345865 662898619 932765485 364253814 732360117 410336562 426505764 820717086 338228849 288851654 608285315 661109878 430545426 274060197 529254404 791831793 720610592 919328229 253766746 793032344 595529591 598445314 734318176 820403357 143384078 633751989 606997515 718925853 770290818 449424129 847504540 295386298 396728296 382394134 601763394 237243616 400910175 25931068 407614480 428886010 44504501 676513921 307776338 24357032 819465406 756825049 566447506 751239968 525262688 805195996 714281471 251572657 331273670 425573091 619005133 505005530 562608344 296351481 798199370 204518619 169707472 690452012 147021344 541143159 477226925 207488365 84402523 687492109 528421963 193874181 578889458 78755924 343866426 963824054 814959141 408867726 596496013 989881802 91722509 752680706 931086069 695199386 880455758 637962184 662874277 751648418 208610523 167589418 532213258 255439337 954941381 812562732 905871247 906347725 534676218 378397433 910825322 693105670 21775087 893415991 125717994 616064551 608148999 559372711 421169144 672488593 523047121 829531943 485499605 485402515 540114146 12700717 925033470 622332889 966320697 430977649 998107823 527923135 719528312 563098751 985434574 88581729 889748819 412310456 146704245 91076703 222187576 330877327 951162469 384936795 711061687 782209724 847117804 319686681 607669965 337620635 831672320 302631483 369960608 440582594 417844346 998850772 824714911 711254143 351423362 579076709 441071087 215013795 862092334 955962039 846149498 16622715 259616639 896934898 120141801 364656952 57727665 636190161 166165794 706318938 626294574 654574518 245309857 665001247 367693196 570330249 791915465 311375669 934534541 593106364 201233920 966296306 204714757 355935876 597608580 503292728 58127504 681782617 301483550 177506578 888761025 569577659 292998407 432155561 58206740 276170681 792615419 434742651 153080302 457902879 390064827 267542474 332564865 912004233 603222315 426293490 800118908 608383184 332101939 960025586 834392026 348309800 2683381 127486852 485605545 366481159 312696634 738822374 333787623 892860876 362054023 90650652 973463174 465049254 217203066 833867693 49427939 161315761 82250877 689998830 812212126 867384773 812357421 206189607 619598280 196922255 959857430 157674648 191301796 924442046 922985183 175547664 120192847 549960291 684110683 311132313 424238498 858569787 614154331 505315846 757769785 385268707 886042505 167034093 809990129 80306966 705971668 874448266 972368199 334423846 233997488 972392605 889043308 598504902 579305542 339312746 38437519 3904056 159331442 42542957 150851016 949526467 964189949 9274828 525856174 952173617 188112915 361612424 882008077 186463656 309571199 519104064 978719905 179848773 123467313 974783486 319075743 749206240 188028296 296476557 85461810 934226641 66726266 631944960 398201717 867582947 110465231 843402519 447369870 857839708 510089004 926591723 479008414 548384287 935965478 850845153 913457737 142438467 180104528 224748722 686840740 172840202 169657415 208896596 560567265 676661064 205272696 31932500 908559076 272437420 639931922 971551401 513826095 113458614 710761495 177033452 111648619 603207581 476661047 505259360 218981236 947610751 760154061 600969636 341958782 793087084 305005594 815118552 843460999 612042656 106428097 518775635 177983441 357432226 161596886 817309567 417564194 496532175 875892602 49314730 267178967 663204966 573428579 127168573 994159114 500485022 724859215 539075197 786418083 765169959 894615985 328189098 520814430 366358893 977201141 192735311 117922430 790696621 205040629 702065051 986072393 480713535 752419289 72926172 860907591 895201628 180307575 309782911 701752419 107991104 257629793 512094448 278832541 807354347 328608428 981312942 374363427 583444729 377158458 975895874 628228546 746757249 290054712 722901178 471999943 851288477 320850635 384936976 161171425 923792609 567655210 656131577 401958689 665133170 789302177 677480047 55485173 305583924 18922365 182076184 620065244 995767942 543729048 938761356 894966001 708591243 43268896 891900302 464869526 229830318 856224678 799927144 109476918 432322691 902506567 513246304 941383729 815465306 390886385 191364616 744785484 894143792 164630248 970107996 662376356 511813204 995045568 213674795 384768063 373029676 67254644 504602172 165539494 273335676 109343771 426149893 851930031 397462150 139464274 517127088 30163284 398443240 20776915 575604565 16369643 211018210 771054062 832664114 216396267 838136298 768424065 95158020 751763766 955976087 997207642 280172255 891528646 203683730 818991564 894459202 244765680 667604246 282991463 975984155 388005902 329462317 898033444 348974009 111791897 285604298 702405075 328268636 259705666 416594022 472779611 840062157 386015565 952349519 432820965 221041652 41154153 871828917 777184332 864424612 872866961 333707481 443577291 678085730 402557453 735199678 122604308 139142146 4861590 962581664 966546380 67003079 272085669 77342617 154122141 77471328 929059995 517521106 651364052 23468917 949721045 999520886 897056201 742070213 954266944 554771291 177941975 858270514 543383866 698424851 384320926 692953287 533447320 451305768 300801845 428563363 66921063 999569093 644188926 64365960 186670758 667123804 490987825 730191962 501497241 230749634 201031402 249903288 319186099 307208652 638521497 832811858 915643800 524735134 689219573 944518112 52505801 92093860 354845177 694495054 959264499 923699542 153318366 21447515 587486585 282225178 9871712 872360666 424217848 820084853 794007573 692408033 424147820 500384337 614956513 66777929 942740369 607799449 14131587 638975993 137429079 782257585 644813989 906198355 441631029 906999741 832486923 321218133 274633739 793119707 909880233 608021360 836465897 18841167 763806215 151930888 566225702 339498203 355672026 355550032 360387281 912927460 918023077 798229001 645415872 348457194 547089281 907021045 915615794 741099331 128200045 828800408 242336177 289307262 359407239 915018267 611095803 950603326 20248519 653127346 330515339 78473698 481272648 397651489 100825971 680989421 42687849 167600118 542793933 195306464 637010108 54839908 251641444 646632743 245348873 616344007 239469959 103377659 520467074 866570573 267773259 418691381 724869930 610180121 282347536 858360681 254844514 979004886 187422354 572323399 781508039 48228872 604572933 105317652 189315978 204927666 90653958 698830992 598568638 23836874 126912458 259750244 173526972 318202993 674369179 853223562 606032513 76074726 208071069 402046231 898347500 675760325 920024176 504913471 437724786 4676019 193483586 400703284 349436146 182907668 417076911 507358801 24482325 887935871 521842777 734346947 631789922 361816655 352125648 927735279 266115044 269356769 710998795 218864564 89268686 448353314 445052225 665503243 105649967 484221446 503874112 975823737 367144897 299661263 886852635 98305266 621633842 859234449 428332015 423515563 233508567 72111865 205694357 563320788 357213266 676256297 99626939 389680168 409340485 953817814 803978415 999107168 853025225 957717552 102393429 497631684 17530508 7012549 91415819 54717633 730558342 531944777 333260231 467686706 865662843 770920025 152325496 292967191 47905885 322727409 889966709 583591330 778688423 157340241 776211773 850519932 693782284 233412966 735267407 26205894 462010597 583055533 493638521 237291686 562668826 794595530 836401046 961042661 819847300 726792744 226974444 247574460 339163330 434079857 273245347 622054598 47624896 52934273 53063287 606941921 350725545 58528055 128127071 290162797 931547502 894814742 534155613 912982940 342229662 330891969 864390479 537628078 33245162 567492264 495262387 842068321 970206926 863317082 86765838 940547318 554543453 701927639 549491799 558818672 955973548 838239632 174315582 960975959 664887125 391772004 838510560 875027823 815355844 400018369 503978427 522074333 544227458 157235223 968844538 274557120 291399975 383949648 779890811 868325978 722785862 285949356 62482244 939861125 457346422 656445377 651755549 826071368 688354015 852955138 619327307 399080379 514756699 942376118 297853766 239982321 665594694 910872018 981435345 482180034 792791758 501444021 609449228 317733567 268419156 849255716 589228923 762958692 582338599 736245353 149071723 422798022 158421608 897981274 451257958 394212860 11428298 482792965 546154960 717799670 815481559 356082690 549609166 293461717 885669810 723262569 402881192 696511681 414811456 927851425 720246084 9584731 273735288 467134242 736641644 361972929 321039483 162632082 272189459 413313582 781718716 265427181 175421522 430293657 901242372 945027188 428702123 556745042 454176959 723660193 933758107 284403692 700177243 668313658 694817597 612048704 404765283 435181578 83206436 980714784 299468198 734521817 766189653 8409913 122565132 226122520 793197123 535309114 317231027 94287191 372859717 330795335 848990089 626629783 713997484 843490760 974273306 108254448 591975665 686692548 384628784 58310157 934668802 960284040 424955832 213203408 386267514 578462745 134284405 720321255 327563417 366766884 772047221 870518903 613269534 598894611 537700888 156457182 208162256 121866895 608616615 600124175 746373220 371305753 40052656 518751798 896236371 323661960 577055342 260545871 501276505 537638374 549070905 152259901 776401520 191319727 214378001 903506945 418857255 906663552 885268139 866441213 642692003 128444286 520148559 829219248 917890055 904489772 762406564 505405012 481973902 117897251 300755365 257818630 896052568 854552761 815768495 252385404 412221550 630296188 729797919 236377655 247484278 750137099 935045699 122143389 709439596 768045250 810693441 103160094 526954240 80354919 421156684 982441859 366603711 437815573 222079325 204577738 796620531 343249400 705563795 738202163 438532801 158851869 595221180 352635706 790157610 395070799 828779858 160811646 243637123 902602469 152023590 323565793 952553603 373216533 150637137 956111360 71637742 336061355 498921365 749540388 258081571 751433358 966732412 726109794 956129364 477567124 165461321 19374450 889976407 191656655 81279642 867329861 96767404 381456282 737954607 554735223 197666257 370388952 996765744 305686033 714023009 171377932 72375968 905316553 16876833 961658058 353033366 763889051 612072935 571811618 621302047 599810963 615468746 994139355 718395268 259237363 794532697 271019094 948845028 432868293 671478678 868146420 147550227 593277222 476939118 897714526 70672710 939838014 650789552 132264843 174167523 105856639 253784135 611806924 795748460 878773072 172516606 953928195 831065658 511253414 144538739 185286449 240462167 602488087 151059160 781023162 277411543 873176345 52983088 959425856 653729690 276924427 586191995 933027077 296912847 397133420 587381343 523819466 537827601 743656298 129745087 67318063 423875531 655640664 404889579 420344957 56287620 634837782 445146511 774934464 866537225 262711471 177466688 34588211 825902861 808622911 954986240 547093802 111864913 204430601 618420125 278192029 446482004 5455420 567345419 812910686 799153722 809765067 962604576 219594379 168398157 831927079 720703031 212724729 238437505 927592438 360498772 327780106 749584745 356926031 383395927 298873879 447117623 958334419 314374846 717679827 628365925 250085216 70563044 586584589 16464303 116558007 952519443 279829238 522487610 15436182 9288493 266980104 185977245 800158428 142872219 112480543 97140323 847374776 17456670 664012959 650006599 237758606 960593905 887649389 289033668 447131421 974127019 809770546 671205182 564719704 829680206 290290516 413840542 943742809 558084635 784656948 143800515 808843187 936524063 741099523 983631349 900340384 761213873 667547572 875712669 131103846 486812349 560010029 141398049 599822352 218477827 257058955 651547180 607177027 886803551 2263670 105253488 521498663 106989929 990647836 885116510 627181344 189998940 341851917 748284179 913860886 618024343 296938405 197091512 684759870 434185865 232642261 760033094 379912944 384205165 624999900 796838746 50711684 601392795 109990422 184220248 115901779 989627050 325894241 220942496 461440708 332304355 117186308 828767481 588124925 630931707 176978367 409517144 353853698 845581019 550316346 287189774 252994394 287067082 66545598 376583798 346634712 999830723 4624357 216310575 703239818 8670200 13566042 827435413 439204609 892435440 915541920 327697838 445821165 238522885 343733118 678226141 592795466 611832115 386904931 847553720 873145605 397773961 874435582 610584416 376546429 612684458 998022235 817915695 169041305 722179105 443854203 142609404 895340249 177959529 363589772 341987363 607648162 870512699 10210912 614794424 50457573 620893897 249540374 515567682 285183292 675241617 870373247 507617171 846448864 249527067 587669935 896976782 647135568 981960168 328370006 646903534 46347821 905768020 109919207 614138985 277102396 430053532 916426680 278872464 757066858 749989874 304697640 160522315 417114893 979905259 91748862 280435617 228102134 449861316 786223023 999569289 250344374 940343448 795836647 841693478 3110549 198634263 686073271 824530390 590418440 979948074 202325572 847754149 698286281 268504401 293815267 148041223 349018082 199308983 346444648 695307394 928123249 231650660 535493964 337113956 751522809 850974896 562262915 227543040 231222286 145067968 506028511 284479373 714054652 373327729 661199364 430085782 539459765 231008777 519770833 733900982 445573397 182511094 370801827 365936163 213579716 275740867 310918097 287669936 43296216 26153610 406889499 999490142 245484133 275388669 749115487 494252469 169182157 808645748 456237079 24948318 585875054 330472383 561924196 173969937 655299898 319482800 196084 955359824 995440295 502636003 316170195 874676426 364713859 633424250 438640286 360170992 677820000 933116587 133074681 739878506 764478844 808236933 784056231 837359704 892209922 894080629 852189677 917757282 205608204 453964404 876534204 121925695 531905231 445462908 731383846 599586624 618854556 8507342 825888503 787328531 634847888 126372674 188749751 135595775 867178424 59942726 679532890 470772042 205034955 436864165 37685139 48977342 56501881 538199702 446926535 609628119 220902934 224331120 359592552 610147538 679063339 392187779 330233967 812988216 303377086 933044233 764281860 592181850 115813892 845407594 846425212 839661527 271706315 539359793 515592118 298500557 461416198 195509575 546249072 920835375 499660669 167799508 184935284 859080396 436057060 608442649 112394906 36611905 850484502 323806507 592936698 402118662 90457299 275724293 455517893 233473748 905932130 793188425 442374432 795985282 286420741 923707690 594587944 334371811 365614495 632696953 151548794 289130389 860369174 193369031 298719911 851213770 590149716 274891367 508703571 400725696 440472120 669685304 530791727 884164874 601470764 947576584 28133439 471724161 431842241 803397818 363179340 664295902 602865033 779719379 371372255 648595483 533618486 982138123 671934624 482633787 921579806 459324431 446171498 199520148 141441055 415600379 572471664 888840104 781088435 504764432 79357175 618664445 660954571 949641627 503165943 746643700 647094981 697998538 469105613 319707490 236688792 900542950 373417167 64543345 24486454 438183990 373042193 7647080 325450405 163201087 479137555 443504464 859114742 653621930 582016270 400082839 847288416 222668048 992650401 511595531 523975331 71335601 282569777 342037371 590655760 874235278 999075374 895082713 602771607 847346300 534922401 621656725 836066659 369992763 489977102 314905957 765932920 390098688 142858914 736046440 568344594 226725065 353349743 982301456 157039482 658906708 753818963 845773736 878607054 17863554 246857366 293568551 588919082 332436991 581651111 474485476 348797530 982048160 941889901 692556935 180696159 27376727 510755884 667893498 148250222 938226728 331784087 625921274 788631067 121926349 283578947 706357406 263076271 567372031 904461091 961797596 742834344 220315342 338358413 317775 614711038 548492334 218863393 553095644 948558750 613985049 872470437 514713193 198879181 681121503 717585360 214475603 349724256 266858632 540605100 138566679 175695460 509138620 770247739 595885934 589569348 954347 110746171 548441078 748288462 358605377 364624490 603263206 269984036 392512330 852336548 944789218 489525863 630055530 928553896 660223407 168777086 395227321 391399779 418853846 893368739 513085433 29106361 245510140 272642350 611458049 658758282 918726223 17755327 700490000 951676499 905493957 415895487 280571895 213644028 213476217 581346655 114079037 406588204 26034221 457057011 526509869 364954117 566250824 512441779 527981707 310225123 103861653 995642776 848323877 114904355 408692873 674519297 361352329 111819208 171466834 427804628 764493520 531602880 579905738 158168002 147077828 9656523 513320018 682299746 310772604 617452095 606593566 472057623 455850027 346516929 215749849 497323560 265227807 444080989 723039335 171114424 34379433 949796692 399235833 349718029 226609499 381147312 485707330 585796102 133773215 385125950 616425043 282241937 143266590 112625164 811014977 57577039 679860485 474139283 353653916 394152102 891989379 238002231 551093922 577182473 500654280 999525102 571721379 59973295 559465563 320953646 827235892 923271338 195585773 515318288 149732493 306683921 74588346 879809245 565668857 815963532 541744998 682773294 450340227 147165030 706791871 717076263 367453889 839875367 823627458 387439838 621249330 603142275 705420865 989004222 917129233 131965427 471770015 17328308 704003987 444814648 465077694 373240658 616257009 309294186 688579988 949470261 417571035 391630973 537154355 666048877 499457223 65241655 731411632 393207854 139343713 379719432 561092222 587359653 848088329 486496980 354430898 252851851 490359481 169763150 91247809 617031648 170513104 960653371 419886109 817640672 784916799 344073455 48780809 873077464 109496491 434357216 778698525 259919250 189710301 407553533 332453111 31174200 404249365 401280178 116381359 586698708 47623389 699457392 653620155 310935953 388875687 927485744 700803431 991387249 970517957 145002453 909912201 101507308 410957113 768871777 726479993 801824603 320562141 51701948 814980781 858370441 8807795 980427518 329070605 911248841 824456496 822672111 874154038 272653586 241140470 984919550 832781956 169060731 317985158 307620507 375805155 340468419 383961160 841127043 37532238 939991310 904054369 764072528 747016858 252740777 100196424 479706609 413941774 550233995 19606825 899502531 338730957 219522846 28074747 236894381 641448292 850751366 58309185 851817636 859189711 127001501 85660657 981025277 387234881 847280505 887989269 928343209 657916879 646669837 42659171 601107583 710274297 142543602 328428788 711395397 893759301 292010367 826979862 657061742 630310989 602631576 667850144 856769112 127065111 462557484 965147748 181985188 840701512 271146212 929929836 387989963 694846177 97696906 951107038 458602808 703647441 424388249 193823443 508089496 673114572 52524705 782990515 194148162 671443098 962468047 574085255 905643019 321619002 64382645 297220265 198220187 382128755 821218177 247689825 867040262 29945095 20031390 636451210 33715124 35330957 628908237 194507602 902299985 452947879 666875985 40115538 740467454 889073572 342008156 617802470 302557432 705849065 946824232 308196673 600537500 51869545 543415673 252525560 914921284 351817431 30641095 589571226 529903683 482058883 504327123 905596027 90649637 299980511 80856987 313956087 626665887 147374815 785027736 805236148 90456679 781322866 859981068 553802362 626040047 148270810 166583479 574978196 933878707 309618849 855428282 582268049 92982115 377903381 502514816 666784496 135876288 62894234 917042325 368999224 634794209 306701724 807825550 72586556 467345609 541779320 151632946 103818156 954616337 55147074 931768046 358104253 246510294 311319915 910101562 859799996 984109625 46066578 691697589 573386922 992976375 824259801 656458376 457771099 666165819 833659197 963681293 377050510 346661950 605274803 302774651 419189791 72337053 724258950 713141957 257097890 780268846 830821380 239005616 938090334 807863976 242858502 107187876 651173566 324422268 291732396 646767183 555397180 303481237 548275123 35612235 302066119 690333511 669605764 147176498 5250413 64482353 764849324 355243471 19283391 58355743 948392013 398484041 820235994 560446950 822738279 353400029 369604975 868457174 663014056 861942168 123112815 822608491 793433337 634839030 416306489 761601864 735138366 745382791 242219387 645162570 134506668 893662832 270491345 901351869 810267088 192253685 211723569 779930085 622996989 184263386 945744146 656359899 289296563 685884625 27240489 606405693 919033020 860083500 498405419 325177891 953777246 577752356 916394159 593607720 438777862 134840979 720390169 969293188 148693249 221132079 403914247 733702611 549585817 710859444 802965615 930103674 570299652 86018693 108862574 189420572 630890083 428920657 740630826 647291406 169908558 761671444 551372577 958823140 618054362 472963447 35522821 719670241 177346966 603476105 248261132 183433816 503297878 410276062 871780251 529138703 687353345 757241446 31845206 970222688 959825788 371834337 897885648 182477240 610886776 298680388 947608831 616773370 20821268 144616419 29145545 889803899 675471728 973142396 325887520 355111132 394158404 689603336 783093364 886322492 767197293 687481143 558183379 150690051 534554006 276105448 36672747 456855900 487809775 791321751 527021723 502136019 331712168 246016548 274758782 792677524 953338868 116329408 748101154 957007376 863353085 710492518 770850809 379488779 401875197 623383704 201217140 942290825 678872546 709497479 891144386 762168364 27923052 95971482 21143685 218047944 667536203 618819948 359306918 142453605 753268160 434164899 790292728 627379458 880082410 999748211 407995564 14235854 799738696 923623127 933371515 694565707 337898052 612639515 252663201 2411042 502088304 475508319 908674022 816022678 820291560 899754670 844981271 930433778 389779301 111514271 582225940 496380016 245474406 407366265 280593023 657915411 857036426 195587291 122035009 536692539 120942535 449118885 27663044 494470609 98769606 683583177 955144582 759826630 386081576 256034749 781983804 758888776 424266348 604700164 681472226 675732515 505630091 797975346 883512641 138154501 832688111 485669931 588792963 683215836 34770705 561663214 346016886 417986642 529995511 890435677 547877179 78665487 694340790 948140418 23579804 503072299 983805445 217603812 412989325 783168194 563684095 117020317 58230752 906071543 547532056 246251715 808774615 825935137 742244879 921513670 7238736 962239257 640823598 969080545 405298269 627653327 542060561 94597936 650595034 185326129 380985435 697396737 299842304 886928207 508170764 790282110 516846234 107702025 223839749 968368376 110818677 197214889 877734774 796442009 711049156 514522293 322497891 836430392 239879114 745789664 921204553 218605009 164927371 838812189 927337786 483215583 800829480 135992804 714366010 815482968 550105476 643877873 393513718 576459572 185824650 960812554 74647872 620051630 711178486 510234226 768024748 299945711 809494814 639721615 586338604 439566009 550969530 747339802 895797864 759931756 647670539 305322113 998849542 200235485 974328764 1966430 659301899 981648794 340845775 176799510 77201911 18105021 482000291 101529571 564367410 629075547 609329424 359280987 566844271 22013382 920365003 603254933 459678787 124825110 541314695 333294037 908285085 625954230 591566181 476629255 76946020 941849744 251181155 18015057 828247531 646230531 193667648 822147486 136562385 99833449 194388193 423996760 86438215 491278734 629430859 149870570 91579146 543201613 838230420 654840814 423698554 91746484 649044372 391237424 25340811 119270657 596205956 481901816 117549439 722549773 232367450 663484884 281795189 249882567 553737578 861456633 220775132 805781777 768849632 257930274 606901180 513664376 779945437 76528637 620105108 6208112 710839517 449144242 830613106 240747210 84387641 939640080 446896129 553119733 407099521 797210738 17735384 934678605 820076788 461151033 535418347 32894949 515840636 313633477 724825904 882452271 183358345 892298994 441659949 310542126 110742595 763652962 157700660 938136093 552972745 749502892 422279338 695780958 462808207 618391346 902146013 835206163 146694000 318778699 675132389 257085436 843768705 418614830 53181410 741527546 140699050 396965949 895740809 875509735 451723588 695170972 920204266 177922764 97352537 537639077 38715695 211673473 81204868 914211037 501955134 928575229 658683015 897646573 762906958 342679718 717747296 859386331 518557794 878127631 513025216 736188705 252637307 970050208 397690891 137628941 861722130 625396437 995598441 441603933 48737351 94100223 25940461 736966696 954359795 487964392 445155289 931556431 66251194 428527730 714462708 555849371 894980203 305641502 591049359 344081296 801727966 862333866 995414415 30327390 172092433 30770522 625367539 90198379 707316165 145534080 799030239 374875763 743735210 813685022 629566549 797165127 327403518 500863020 439338362 469081240 19009544 889394229 430334393 213346050 624080738 214252190 709086094 634018386 315645664 697133410 721554794 213718900 810250307 839258472 165543793 208985165 853948426 824550486 466480877 842696953 357536769 585351715 796736233 901989363 515387142 100686746 250408538 31409179 506234881 614267587 977411555 797143125 840632012 565753996 396892502 768412088 833533534 824956763 401833230 805948628 323061175 123289176 796572656 422868468 770052889 213162596 686040326 776422852 398954298 567408534 928073891 415206367 12386289 495942429 318803431 991719994 544436378 684111051 484048389 267140273 114657169 814380472 54458580 370896589 821743164 2077311 147229960 667021373 849455616 384839646 435337458 396499954 533834090 234746044 879263884 589872578 544256462 821672023 68573657 47183457 292104121 323105308 440120269 638177129 235725662 279844015 5797898 893502673 335319667 634240573 125618649 745329411 27761418 681343969 5372868 629179917 507065965 170409234 890076925 94162494 894553554 330431261 204341115 654040656 857681091 635526531 134478393 513012467 714376243 816509597 630618925 464634261 201455830 503192835 683216276 241843396 665987108 220107305 52491155 955998918 778142457 411380179 13083086 512322707 345558774 345597541 900291679 556826220 842407879 293257458 216501073 332147078 560919015 68985893 295007014 358152126 902691266 83713109 396954798 49295138 140593172 393533333 874560687 719878746 178028711 856351042 923607873 311963006 195161237 593432283 581743151 575548870 539820400 547694853 807729986 683216647 911627173 770687857 526042304 194401529 452735769 476527144 584442027 63650397 822912058 734213900 262843370 264440990 314082394 742238547 183851704 4659352 311610392 646501234 705966429 16061886 667626918 590990381 298470380 826088617 661997756 307218832 580203571 508757809 61296306 311392154 643088497 384400608 510167986 535694577 114067084 612774421 936389127 176528797 854558236 842953156 724241055 450635223 59927339 191508109 234496934 947618797 681437737 925017996 623109783 654176542 517590640 943442658 139625796 88202818 805000248 973516398 762097702 686844234 699529716 936880466 379472138 741447273 487904810 464214871 494056165 660597061 587681137 304527804 355980190 42156014 84476807 996932340 167973035 678502463 987520070 987801309 404873607 40964926 41046973 54394582 930298897 705900714 212885394 62414637 229102493 202651270 347174715 206772935 159843532 467022290 90935192 181911130 989716687 518179009 442399988 863192037 55658251 685753440 487754896 714250824 359832304 885986181 160972881 154243769 684073311 441073453 558977182 993972012 8097795 904066065 472252995 711414458 158353145 426628347 267954089 136050921 929487588 861989453 958043471 935297679 575820464 959545079 836728093 268268689 982786496 640742174 234401030 20774076 341497332 902240517 177839714 523757509 699572312 125854615 540846693 400655809 282185656 926553273 337507816 514622277 477398121 397464214 555000214 124620728 15097651 147314156 242861777 68690921 769839244 447227288 512627859 841491306 917567591 364142496 771793966 214166567 770740593 50876232 647744444 829410184 215141082 764327241 155659792 229198075 594182828 699435097 87454570 781252212 904107075 648420550 630987666 191508938 415679027 842759630 675440183 377643841 646251160 89760763 539543038 432838115 288019748 659041256 731972234 118540092 42469261 816200792 384030557 828097711 43375908 363863588 803177765 66582531 852973427 426669616 388888280 96364945 618753804 69604471 725423063 883292949 89104747 970155459 558839103 447818098 569196542 381773880 342901408 463632381 507301538 60304031 792652488 529686264 576291252 414725402 457229785 968598776 735783531 580029761 213857175 447306339 107994172 912726428 473183024 752657461 9999421 823912949 131000028 366443877 201077009 179725923 639774908 100236329 527019890 48284851 821918970 327562825 922925240 103077717 693341004 637949753 907497543 797724076 918363340 847027654 692274249 921942077 17732124 625487173 424193859 479403328 784473923 876112021 429700164 750433801 139987506 336515964 886326469 353484319 991457026 677252132 405500382 550020679 971313809 320548778 160698039 298210544 997708931 988198186 412439401 450038924 480518941 31967866 342593672 243318474 46856952 366942095 617794691 981254183 21736815 768726484 308968084 856757149 547230356 226456778 238797645 626896996 8373646 758064786 383225725 8243684 512289145 545502722 787514848 48758300 934103992 261471420 485079373 756043921 63862342 718334618 545606880 187292640 504570008 841581902 478740004 298130915 553628061 706066727 405449568 186614897 840204316 714869827 598032557 26670986 267055094 21187994 435425653 855563412 896849755 975536920 61973870 416284293 428474789 776556187 55021584 387922701 98451018 849736795 847806458 618386259 873491485 309301262 725743251 818196441 942335023 778470771 87512967 585224235 890609076 67491726 205300890 879791556 260730313 478829668 725509975 539756245 820493358 518709354 717029750 152949455 359699522 589517547 898498387 668348331 530237345 486861998 576692244 872790076 961760941 726669966 951684134 140290836 18460816 289932148 600700384 719593024 625535565 896041393 179404940 578039684 400147720 768272117 159663270 377774405 704833578 310249515 235822354 477218984 53703256 172058856 105972134 261360450 841779019 767403556 171295541 119015741 38059379 4767462 389958188 202396154 397207567 337218426 867532905 258065183 861304244 851415544 223779764 208885507 17173321 618551667 188522510 982685696 327308560 41141530 160354252 24526484 221178361 58236520 494808557 95727258 974081008 274381656 155780174 493315330 563603374 851708932 836290948 403150736 611275649 76825368 769916992 738399927 458332091 780016319 17963964 33950548 923302047 950164220 631505299 358147810 551289466 4898066 540557805 551799780 509075077 80378732 967598494 588752086 92945886 193280112 152387201 618642572 803716875 539265011 579718985 714941477 572834851 740913895 684958922 893789558 788238212 259281218 536844227 39320428 911395568 725983288 130628052 748988699 741772516 156070362 347929905 92244519 669716741 305025427 549921957 321943301 731080038 676822040 352757185 584592697 525003221 876223360 303026188 351683570 410413778 203758819 777693506 897650300 107967191 139220939 384919948 938143514 779798080 889878906 633049532 797944911 803123812 357172990 60599970 726533535 821906731 125520167 537433644 800059906 958398717 67436403 745324706 54361959 197288147 846003593 898569759 237664898 676659639 404607560 68113550 716864577 725426333 154910176 90023014 950407788 541513403 528500544 4270849 378701458 761879147 7282438 631774563 226119458 14460373 790387398 202673369 61370357 699169997 889969894 623847568 842695650 454133833 197319959 811575030 541626606 619935923 136757453 77589541 236306869 529499167 962962518 636533804 717761443 779755266 280848151 207490613 434831817 431068807 793789496 356533480 493245960 294800498 17384558 136753616 249689862 377025805 331498348 990706748 285445025 572018934 19947369 652986440 337569787 466505043 244840703 562402679 669517021 378865370 601043788 838692952 290340494 77584780 746099489 705334224 221558170 340925469 479851014 421949727 81160112 309851418 780190210 616063365 432864158 454720627 128543362 112558521 214840127 859866070 299142427 692811713 856628643 534219620 787508558 490356301 173006185 301852712 115678226 575005775 255827228 681516277 423447625 230754371 504222253 670038281 431251827 254748092 18128819 597979337 597123886 389475169 804005205 568355294 361619976 380657784 626273416 18536113 272505577 517531952 116344831 796592573 381535559 118794929 260616182 880767831 101057019 984819004 765513829 867703615 774613215 612395800 609192483 489084929 109293008 285989244 619829760 774017039 361226575 627174918 640681978 637255575 543518496 113273845 995896634 768711101 993098929 407894925 753149949 258833124 431635982 73786695 214483006 140963112 609657655 113016483 790695308 439478524 563458367 377355286 364782917 721207781 611551607 990285697 843173739 998976642 313983734 349831735 811023812 586756415 986423628 727616445 649933460 534046935 197573276 339409318 974523556 805356316 992548314 146719235 330811630 502664766 630325535 717167714 682157854 701252286 322686819 748428650 354252563 942875313 399284615 824611840 837994801 801197939 15481332 919257666 40715413 26957208 835702246 46396536 23680051 147807829 507870091 513587150 201988957 878840885 65217019 776126307 976643040 67474770 2290444 818479441 661318424 662456727 534130472 721822461 246494630 959840805 712279142 137304581 760290572 265148370 827316694 85867258 725828375 853622473 549240523 402170831 627360417 612358587 845320870 356081977 533436068 222231789 915437178 464086729 207939831 53591548 777032042 249389126 600285881 836148907 793172326 566483617 310288322 910898960 890001057 321078156 856337174 734368860 996361251 447605677 976765803 435505918 86564676 263583312 410854141 847525515 480451178 781159171 488941276 33914147 800893257 152861694 559552975 902081994 835925426 607564897 880022279 684373631 696959663 657171675 832956842 701285355 705882924 623275708 498963682 460997422 998378860 222415853 837493354 488672599 629393249 460578455 552906537 45139627 408137363 385440727 507358304 370494129 433046932 378619537 605785180 688722639 429152691 353196286 436406727 345985304 787086595 500832470 916191093 267592707 492628999 178115329 286029671 430860685 832343397 52149496 549619085 378266075 562270419 400725542 596850054 658002393 549692359 405310501 808434455 163447687 253443333 184204819 179515059 751013410 828178348 704457620 734513243 165279541 4385785 301522022 211453741 534981693 154362864 167176309 564147057 916693710 195482631 987012834 645500912 261370121 366861006 424631497 814626759 438289004 557738642 412316948 785248816 522316724 321591707 170758456 446452251 899923688 471982640 373768536 414811118 117006279 297386023 802386828 443833250 263229195 175703990 834972414 752332465 716948406 398170634 875072480 50361764 219662803 755147187 648539240 972150555 288960475 175314421 597850955 688884387 400492921 762683896 435705148 318968581 30396627 138403044 200638047 280954141 527009493 526025361 224694936 460732175 953827499 402095788 308446842 315086817 535789611 861894103 824418582 4170722 293065962 558836626 213549152 849627616 307643306 581388722 934451978 266726573 286022338 39123454 410291277 303025744 593520738 372862908 937975205 464219730 406081643 873070683 180079534 965543288 127669420 923031158 283453368 485948308 805875479 89854337 919907107 448632783 192130094 606874572 441036130 909464401 72550589 533942393 856750692 121642279 699834276 224606428 968470886 981666947 88349075 568965348 659640648 769950088 958870909 576452710 735050535 431088263 505419129 64381762 623242181 48269736 21397213 729174677 58696298 938713487 304703127 869659521 682349155 237060511 977519224 84016384 611370813 654262737 830287160 343826686 936720693 471684226 392263779 269137538 330139952 96995359 109620561 608912351 98768448 861438986 985270347 974131217 600646782 788040656 330677710 22737538 973908375 314215034 180698293 65895275 118374329 875039996 664331304 878112364 251526249 569855504 623919834 429990832 290524668 218739741 585110583 227142169 394998240 54990239 281839488 253227422 38068171 116866630 662329655 309710965 828469947 801571543 11430002 57765423 481113295 590208428 420858899 63769947 265367716 664262749 525339465 167809438 778347291 374958754 429261434 543609301 637522520 699605674 316207309 835969888 726147635 162147369 965779707 99625682 789638185 272227306 592046231 652177642 853992930 504086034 368976265 279625832 800876808 882080415 878474340 550908049 527066143 177735576 995006970 242223770 187685750 523727388 292819671 124969566 39894143 100796264 636145314 216709493 376002394 484159817 168554537 568893339 304290997 209810400 417713233 163833461 906067411 482795483 605785219 809521389 972588303 683430560 211835968 945381324 721580488 159813075 317617344 219950313 889741207 369674581 883076098 38828283 740599891 228511035 565657120 681293645 38105627 104846054 790556019 710238363 443435163 653499877 395880112 335325282 69445877 367441868 591003593 672117521 759003153 224404192 162827092 238028664 323633052 607672748 40902289 273448069 990728463 199707256 465521557 458488208 553720029 750970551 61060733 895479564 175485121 533226846 431636668 21305742 271161358 247165602 916995262 732131325 975177796 658523770 780658683 82360577 444430219 744816141 998289173 907329715 798755719 115944878 231063946 919748505 810266406 202513260 851603566 68863382 268933799 346234612 769093009 208707709 189666861 727512822 711034558 302269083 722671764 45925372 912785480 873681381 503571768 577667133 347029642 481466295 129863437 871106598 28024488 160565955 694257126 506017143 864022648 138803229 493002065 816051551 148230384 177303563 251080312 929970322 18956005 862490536 288305410 766977779 297446276 227224716 279558492 325698695 383003872 391604071 837387485 516452866 656327075 782735964 540392775 133096892 346090572 396175837 775493272 927574799 704388280 67208876 835623136 192681376 611182697 991860154 690252845 350554800 190709004 846079503 440075256 400189574 117171237 424625032 600579708 842642888 675152810 436355805 805339969 814331309 723694448 829469964 222189885 941461075 15580209 755360809 597756665 481876954 798800261 361469966 313897637 599677068 616649244 879212662 364377526 203561236 468284258 940454382 123105272 946820761 49644050 617207154 365103653 117233084 715582574 569980521 838363201 246467971 720492354 624683954 206816117 835354246 280198703 141644848 320340193 399074711 195149416 263290714 696653667 124190175 626852253 248871262 732440871 567828454 317748530 908092705 149818656 349029963 463183802 280015126 165632158 75415559 948486554 765332612 291781207 715607041 46762555 106951012 283024819 170081176 780225351 959957100 405725171 31178309 459540777 976620209 861435733 528543844 708800877 956770069 557330878 724879192 711546275 918469550 822045116 742973163 62517890 785020071 881908989 10745805 192440884 249245384 887984733 365274126 584709145 396137777 711311428 381787127 438800924 84627057 318701910 724928507 606720941 812289976 874009582 531288765 797853924 744301413 615727323 898083264 248824209 367968579 547266593 528904256 61364781 844899501 330175516 892882709 726014189 219997654 855345262 612252275 108580934 610317140 794004036 550976394 409217343 802490654 226777285 871141145 997780370 303960922 892626933 979075317 754135933 577742433 294739632 926135835 523503123 720695289 284812275 222424237 820951301 187329531 125541868 642222066 591490685 541164996 201965891 144592081 330266036 530282790 431933312 778294122 404124824 464144672 484575208 158078979 382578386 687212001 368070045 612804374 123296606 198936017 500685485 628130315 858727613 497571572 525152056 584493852 148065196 143933461 615378694 788653459 810684556 812469592 834479866 948315298 320774900 34211447 374940631 187556007 216713088 894301583 311460577 741908854 125608125 564488328 340043315 53043797 915552358 635674326 562284999 615171886 105823247 748341430 986511175 355867589 86307708 40004199 478687024 449654328 519667456 723020487 724273642 12578266 197429958 303918513 597525432 4330356 3367679 948556453 550699814 866262239 969921233 861367727 664581741 854617152 75293888 197539026 781562485 969849289 519963183 425806334 721291110 294641054 277898110 829876788 923868036 140915567 587607763 18386264 300743247 136155354 117459729 826716587 354154128 53144555 145544348 715989984 122798634 72940706 57129716 980570563 780041762 154046001 338802005 568346580 289653831 948335301 327874969 649031936 171427430 342483141 246066860 715800000 33691369 676978417 355530364 850143402 15663054 599356918 816910515 652208984 391835778 439955429 474633541 768335053 517679725 524502228 822246543 126216180 179148336 977876896 864153694 883588013 9201772 236616194 970489045 294598075 910937673 224409102 611140175 805216558 910581181 718031460 683836689 987695043 732871428 306881779 586328581 799917310 802560532 653585252 640986477 568609238 119830260 219365108 419960333 949983009 543803917 704385356 55371880 620650351 557276649 341954086 793697047 275381572 310653752 495039337 237497713 403389200 856135469 864251033 705421231 43597529 528092759 398719493 646673049 879692836 524477153 993597260 510415528 787546467 237981786 285880756 881251988 13674746 766617447 431139431 750386234 985470355 681809921 475453208 425961268 472592840 683991355 163825529 470201141 550499021 733373109 968630256 692741948 7692898 427432277 325155044 964935285 68926528 214813069 498045059 109948423 29742489 689566421 328508479 279745705 213123628 13649460 204928481 545498004 694507117 463181546 803534195 636781789 195992617 865105387 470163028 989345114 224071310 465324171 154208855 266127277 677384542 866495647 677520987 251273157 627033108 745274371 459987079 136028525 908965979 569333755 502705349 636520936 505265348 683849887 551141982 790911665 311888807 571507774 658625294 445165557 712996806 601290913 289879427 971824725 401781773 324381528 772638759 77580652 248297226 384668132 366885951 308730711 168156013 353367515 609952656 428433643 746173314 640637307 280869341 503425757 992193090 309970159 912055170 866570845 352643650 937295537 138777732 952601454 5326997 603057612 334086198 487660755 585488386 741047221 841509339 969531898 4086614 59792480 577620309 163243718 344481321 253259369 447194316 732300540 997101757 955300745 698035780 492307923 834594183 967177818 636925279 306338207 112947826 871278524 762774380 743905671 696565294 329195333 300895764 547756011 436452548 755290539 425721533 162182901 729347019 808643946 359337613 49313928 949055766 831615649 134308824 715391241 225415274 838699529 72575762 543721096 331046609 225182063 631184955 392770382 687262570 126739780 361461259 785943809 159700929 346245497 390970045 592440269 423125505 987714076 428551075 338230745 212211654 8943543 937750980 485709149 390690071 80716479 842298778 867769605 151979728 444812011 220982665 129606617 119286529 330457465 141833320 916748315 673638538 311755131 895164677 902573128 25663983 542208945 202464626 592445551 254373389 798367532 117652888 787347818 183109628 168569607 781136373 585539525 526239169 501322536 272033120 573867357 371323094 233046773 69044300 69673923 55959492 947383436 603842758 950515780 87769509 427848890 114955003 924494612 617131243 831176703 618827592 93719663 331664234 788353050 814537230 742382975 495563442 930299793 150747275 10818896 605469688 697980634 655991578 799174033 499948257 578804349 623701770 794898339 818327243 591236221 907586989 88725830 337803583 25028126 458322154 932476120 275700923 606357776 787700304 270738265 879031009 952084059 252113550 458956858 613329456 433207308 454820733 430919884 972528609 941191696 36214743 180616405 883147210 892839812 623970543 684733672 233766529 683250408 600441831 291495241 207651119 719759520 175752232 559114754 117876539 291570021 449952274 952711833 562500128 575047508 6163612 638639171 687480828 213038554 920621729 471187260 566173631 490600812 291851174 424628626 566211898 636881085 365677486 988519166 122839586 896155366 846309103 569093613 490430220 326907067 441299653 462323454 918255470 462218421 114733345 471800030 198920450 743910575 847343064 629021419 293405575 856515483 612748159 601123902 4930114 91498246 115023248 592908558 723033594 366366561 353882395 711201924 23761018 30237781 638882342 304219985 325568407 745517048 651492566 700873029 644464572 254557087 542877713 878434076 821049141 44318593 703287187 988134780 317603369 516960640 897598540 70393466 392709533 435377086 457556468 508069910 648290161 112005560 57393150 296561785 935162874 668441658 153931135 596591354 804384185 637664810 393354489 89429105 694238715 420799298 401331915 701622656 756875813 700667579 91096121 12627674 708420559 774531387 739654806 602712031 514542251 122650879 530040182 416638254 865418878 715332546 383927453 696233463 627610918 843114978 837507990 810096246 497958273 27774653 961820931 381580628 37821689 802632489 671519722 541516483 987034092 682119837 151675689 903524478 334476147 791503678 85035699 864175970 25880698 426625161 399714323 346081702 951051893 962726488 135154532 142918395 762855589 561382182 900347338 43107209 714399267 371866810 567914027 823962600 371434638 364505402 470976948 429555589 6282783 252476505 747957618 137401068 825121327 454715382 203233922 108618765 17826436 250337990 237047336 354007910 229361401 52521397 48442807 723366726 324672199 886405179 155329346 759669606 71150920 360963532 199555387 592246385 637455698 696104001 894445272 771416558 56888229 377067420 893485348 881632264 239983982 871374578 541346746 821169340 373224808 707469916 409342878 427858041 372522541 819254153 492708081 894465 676005423 457831148 214297421 832736766 68187355 624023724 546646496 74790858 360435567 100587987 943203145 842405707 595443991 286815211 999280161 181147588 118990849 237821002 874496947 196170045 300734613 598725000 522787308 481922549 984599155 13824189 498804626 681836108 652035054 989212730 186514112 301708910 496693362 844489089 392874778 944453704 828782964 188982587 301583581 17385309 930279793 137769194 252215546 432959649 737467925 574074207 318575942 565127344 858499532 799883560 154189253 506381306 229529281 304976047 582920379 848934716 692943072 686320508 589265709 731036905 118469202 990046457 890159215 946148885 61960345 291155001 328880588 361907073 670657217 856069911 102214205 489072497 689997012 403312910 28414161 453497409 208999450 541919326 317312172 795470751 693985791 706311437 645931677 377497616 725919074 623250575 646680487 657744426 207269093 299035587 807225640 553175000 99097360 975140947 686077833 358632630 757904280 280822287 646859158 770670200 747016341 701112667 682127462 562944158 960786245 495927602 669416802 998897204 601541770 480909850 82361826 460241820 882991949 473977685 666413636 232481062 870343131 775407153 309297042 624881 299331817 902825560 537806765 575239514 407089670 393497937 968791862 442708626 948602993 18140968 67625803 613706167 762620522 477810320 651219031 627927731 537333586 734808361 781858341 708596538 211845753 387439240 180284555 697176243 603124587 120198962 241020495 167358245 380692037 237025779 245453105 172832349 180950708 625630730 340010933 351263311 672699380 786655471 447428793 981937680 458690461 874594940 528842318 954557451 429830626 899128502 820416888 416659760 357046875 581610620 547476885 62082825 207755403 712431921 936659802 604692961 802021587 404897891 65456510 169849233 991162380 499435935 614397316 526575806 794644601 643771512 695629382 299229933 60018573 764115289 758148510 264235510 459078066 579521459 261006208 683553649 793165389 292613085 848022610 643344959 454481974 434155961 728006329 941844663 931321650 16326200 81987190 98444724 127502557 915130988 21014860 807029271 530266960 375119200 52777652 79514748 229100185 823556458 90501474 365593268 212807055 206310031 476234324 705066907 840816240 388802990 25014797 385812348 749057316 336995006 820941515 990806078 500266298 401850445 690864418 795921826 126211456 271404703 967742838 461572085 92425227 294780246 358747449 201226534 149861735 79302554 199959050 310766396 638350862 273560522 496992315 671875677 860361254 110390186 347919440 901257135 877179533 683717794 236791024 933498030 87420167 944589018 186830531 8677803 437174778 649591071 736675038 285165726 475655528 30900403 289165769 344911363 70911084 907726217 589757658 16994917 283695988 137352191 519832112 231795487 98059764 707433677 458391627 122447102 129450898 569283029 881357388 83455189 715608462 509953061 299335493 277316869 665285215 586347224 428921165 57308842 924275962 465888629 233315093 226188129 305997386 998849997 553120490 375729810 961274521 574910866 811809015 155408356 145694738 463957950 758708115 410182612 916868168 711857192 882254863 829370135 405101351 750545953 66734005 861126045 574145440 379859422 376617677 175810688 757894678 906547911 724255634 381002005 571911023 451626735 577107259 171864002 500464972 91564302 998409469 662394163 507321590 740040095 819991642 789880673 188343761 390480829 26196586 146285812 184215925 844926031 375103005 492144542 741485297 279489024 148176296 513514059 533411684 495451495 340412449 195002692 96076022 803769999 969681331 345154156 767754895 412655247 124786125 714874593 848080988 837011955 746718508 436385372 491095817 179793764 365476303 882762382 109030077 255002317 758580029 201958087 14058088 95546531 728221777 989841861 300667035 340940587 383310376 140207759 584822312 698853615 272719334 256128323 938123912 281091837 89364932 738674704 953149777 65685893 241464996 955751432 969617206 525165332 930438755 965125360 192509157 111239929 866376982 99436492 486142788 327884820 350256236 511459152 629771303 688130991 173442314 80654012 121924609 492155683 715344032 807270208 947658845 190531397 263449771 39855878 153706953 897631312 141166744 433067817 342701517 445205852 534124190 415640401 976889779 11493302 38529826 432470857 820098856 562836692 752565479 572415571 161763223 324248351 677402139 732306658 387297875 149303756 240913759 687618001 946907419 180897663 600578524 103263950 110101140 648175513 492784954 733557668 138447220 998007450 211221326 557804566 940077332 670897179 30952768 952533612 841701393 431679580 703008582 385207946 464883681 307878011 853332164 278864531 92976095 9050735 402043277 986111706 676374692 478539947 467096541 31875654 985029307 485869661 808077599 80152163 622357395 467311822 608690001 409185526 622728609 216904216 330467406 527043699 118941191 305127351 752496452 873835298 347615522 124548965 888306567 10829532 777407491 323999671 327277638 46018191 115921234 475499330 763571493 299519472 253293365 27241100 400279937 339398614 914313194 22438009 794409292 182146336 561141072 375420166 369159839 760971540 231120809 866589080 314459322 856889855 841671361 385810230 863283201 994033800 139567440 709709495 22444501 442401771 438693091 666856331 695462246 329017345 2926566 634502142 74799601 985375872 289515956 544333614 631348548 554734127 392564937 966709464 469370369 584527689 883255085 99737025 353706803 756809278 809164636 407699114 484933138 742551206 621550810 473722667 9230471 546076468 332290658 453894175 35838714 211871339 159086224 917080752 250968873 927786341 879771934 574070608 286273110 305330524 392521598 186026030 143363551 158130079 10386464 604802450 274758128 615887304 608402442 771220148 975304080 758192948 67915062 291273529 122673881 523654445 449790600 144127900 217238452 34173017 320325129 601558996 276941688 282591643 688907048 420845490 284804073 791445313 920107344 660429133 388934433 324937447 223461238 761535514 116741710 923233834 841732716 411047074 677640261 209227340 700986374 217154733 243793217 927320339 265504326 773752891 911791754 286058793 778303082 491400729 754812844 891564001 283231492 535287135 365853561 872573660 193184636 602378004 626862536 84859467 812507785 575230165 112322948 464459793 251121360 768558760 50299835 474963096 915465676 231722377 827269317 149132838 957771882 746704190 935596061 546562561 986367392 120056136 30406798 675008473 452200334 47147870 599307191 899242587 364357629 707751005 228482525 587276595 472801865 619390174 951473634 781724795 626280067 829028019 408900629 592547176 932081540 90080466 257026004 107648864 770330993 479183550 551328281 158526871 925355566 783604817 471076911 76883169 285838330 126695016 460341591 564460170 994110469 672151526 532224578 406710589 478344341 480463700 990288878 444454182 358932849 429228352 84886535 847693186 429992846 967025301 621753184 662237643 561448913 172314539 24825090 400163357 630946792 623658705 57986049 419341628 775655603 684619131 699014016 843819625 580611551 768308037 293951285 887994028 848089409 236649403 191762717 334767562 910883333 37229315 61132474 857288177 807813974 408759521 181066547 508720993 147894490 635427579 500762734 887002298 920784419 737547111 707765019 906715044 46535584 204344780 996220732 993916106 885256886 294064230 575197955 198060436 917798323 568245361 638720905 842250201 467836320 572121881 2257450 704052958 612248983 818031431 49230131 208360916 673512856 350617801 567498258 851227232 854201407 496604632 990675653 525299767 135760223 844117207 292267696 609367028 432896149 564116476 346086672 383555596 945479991 821947537 937577028 603815263 990524028 813196378 552261359 303787805 144284771 81349268 125581665 725534165 229966828 423526603 537635261 518341636 848364276 852686154 726771993 342198396 176417629 558249080 654353064 782670510 143540600 257561199 191210693 387341959 769363116 160000326 823187764 818632078 614855851 554578362 98234220 518431344 777684726 221049050 346675361 405704463 651644171 480105291 40417116 92813690 462241122 641595729 681547020 304490296 6052938 17873080 262839617 725632525 620923969 326767815 697460832 16723160 524783724 353059708 708066174 933351335 499471670 255691277 664854065 275641087 133553292 272006227 990860652 838606816 929717725 23864975 911602104 457327031 311815384 237945654 569614006 973319850 397416850 13803857 563396689 582563876 80864364 973836785 947710658 555203216 10789358 485622700 633864231 216756782 12121255 439627504 642804138 279737122 599058891 781417828 856435244 424215592 653583384 201126169 759752107 511847954 210128951 676762846 411975355 495633713 306383875 801043333 27443031 233312604 466544322 30699994 531641072 523926385 478960632 831796842 516516629 511121002 441246072 240619662 746201446 498356724 850202387 924017797 865854631 779849018 408743376 212860295 583697036 731418175 993185414 52929766 368438769 780563475 656645516 849037038 260726862 185025570 473132095 659083224 170835415 881749185 436436974 596038807 487575152 365955297 382609861 181858699 905646614 970846184 794660488 819048409 390454822 202274594 25504999 183991214 414783906 373100532 837207512 205009559 526579645 80856756 820100789 110880568 706218499 228211853 15081057 746331121 867717123 508428334 296752386 502746690 949015186 738854598 810905003 963866364 853543411 618803616 123941314 429953984 738894218 9102327 62920729 680093035 543973903 591002885 526279249 682803323 479883306 604774159 40998249 991182769 790442838 789132607 343888029 763233152 332284703 836178030 933260686 713464741 422118421 610943547 189118931 991906217 61290881 377493199 523715162 768411882 548094457 277453831 516236102 430449550 311677763 989112435 18519597 240594682 633584305 355147515 162479424 261196354 478683072 848058551 695411718 556356974 261871185 54427002 939605276 568750130 937019574 792407088 373157261 10165368 334311492 725933400 900750387 324269968 985392884 941412735 460350827 75217463 820993339 41534712 11608213 435488014 620486687 984246510 93309994 694768724 128438657 214471805 39050760 720875588 185970248 171037025 635688311 557245031 597294578 129451658 835994341 674151822 403471740 419273326 200836038 946426115 775261946 738043910 444749077 666704950 8212472 255367351 391595989 141880940 965951412 399703408 82750352 409319213 421008684 943229275 268122242 163205526 844579045 540049402 400155865 218641594 59547616 880198616 633193282 50613832 573144571 927535330 926211553 756916662 281893175 925583331 271730490 678424806 46905404 153610148 593985989 101376068 108718801 959614113 14380790 916040978 470368044 401998848 344289936 614159403 489907751 244565218 825950533 596612916 732500310 356148377 23327712 98165071 485993236 276090929 9448244 961727837 118718761 396417289 442373636 646754009 349304735 921983838 756385525 355657906 561606769 342561549 741431225 174975638 820656447 409491935 360759096 795164685 279591485 251089917 854643508 562463005 521276916 176119436 333766535 592061847 996585035 765924252 584031476 621266278 612297079 644474450 688458640 467393775 885767915 855871938 385147778 152461669 487369891 814270381 810303325 620069383 449783909 878210753 913576072 742998064 188529778 962073966 551365088 884356518 529551412 653728477 213663390 508339266 794387178 361369141 596965350 567915936 614682178 686823991 288459155 299185816 230833493 114298636 764483676 885033750 705049167 613659086 590511410 862414392 146058831 300437338 150597869 257657985 248171232 549681122 951690920 169317947 955362424 574860929 377838902 219851816 992285980 200704290 425086038 692385046 738461262 926424496 184841291 648438032 542730683 709183363 609890018 857834433 487365035 229434318 469245457 754283392 597576702 546641723 659129225 587480443 756560090 379332571 256013922 862324358 791924883 946271599 857931857 185657665 394997016 921142201 7445255 1355566 665401073 8081437 267738492 93481337 25932899 984819197 347680479 170709137 766395845 235704355 486051570 581032238 142926998 999592056 658240844 613456905 434574064 450861716 331243805 724610977 360125876 77549672 136605915 329942637 787411419 549651199 439733573 659170226 851127568 449564786 722455554 159186084 409073278 997343249 913119013 789554292 88313680 762475477 932167409 569179924 100146260 50280689 580745879 874801500 589667969 23402002 220833359 323810696 383882997 835707725 505548057 436852812 151736077 136838665 360974327 401351633 325053963 304030754 700892236 297892473 451067535 757544573 17375979 942977640 639434185 211609233 868038141 853226281 384675057 654233452 239180202 597208675 821071235 278609580 812941588 803183020 941740717 133264439 432182130 908946024 366136200 464788165 754831052 278771838 463900127 276117570 951375402 298967618 123816364 15969668 298526321 47059403 565540367 324534456 139689433 349825542 96947236 302796742 727872185 268502110 22526338 180108282 425315118 679452367 150634347 776857590 440328532 549103289 696838816 905647912 243240520 684945044 323537641 381961023 520533961 294051642 629180675 418611132 12883699 528636600 883462262 14372124 772225900 210216979 398371772 288199573 448297548 946667062 419829767 133242640 414301690 49479511 361919909 810082821 320155352 940223332 73537294 742752186 336369997 89191718 130723234 363910155 195027794 162869049 365248787 87734016 977932413 118040361 475355926 931063956 779621316 232782125 87510674 541904117 221296786 903391881 504094756 258554942 603586951 344296251 313778008 413680971 276783992 808894713 496439011 308514462 759342956 420129420 231162101 75698567 607446315 544090461 902470294 910318782 802029348 879735979 288643384 426634521 743275177 34213679 24315458 205111951 874533562 806919841 333288755 178667898 536545192 317599227 351477479 445837737 607299536 450026685 401045643 356176390 528474230 87892 542678551 390655057 62261907 207595527 969425388 732124760 461748953 551870529 999953712 95534997 722537496 499677553 603970634 593802711 337054126 518799332 984531181 213695832 218283863 269693974 405175732 524165925 873762670 160436120 277391033 984085383 499414204 681829286 966392273 634026774 495101252 650639775 396503308 81296385 550455413 548281420 776598312 31816489 846490385 221633961 738865246 136300555 422854153 224701231 283398527 266394658 20350690 728543101 782019334 934674184 699879985 339507622 219832956 471124518 384949680 164244035 291330520 472755698 445715391 801585429 970655116 535834913 700496439 86495562 728062368 399781767 642616 791057539 995067328 416965578 941103327 579340443 17941948 744979060 763650958 780085894 546766458 293213142 842835776 258433629 463430387 571069168 936188093 280185160 178959885 766430840 549831451 514234905 269865949 220556718 445363736 3359153 857630055 533254166 527316858 68892685 534078173 633612365 397938841 61054101 158887529 976305003 812377289 351986069 661539292 755615399 543870803 170817212 353316312 943856545 384674908 463545060 264913456 989400837 856774996 526439736 392855741 813470961 296360857 385873680 60429521 376358626 314758837 524213549 986472636 841163783 141222878 441087268 50199746 959222509 615964542 696124062 998142361 749673594 943114887 328703639 797132035 7068931 929115586 758208097 307877071 163323317 556761146 5449659 534279291 116303368 824288578 422996463 486711812 963099124 621003063 58984557 580709331 623793131 411790525 394622318 249467820 973347027 848837203 800429058 552434168 544332123 687072856 191705115 728436220 983982275 529299503 542372941 628004168 567210056 809707020 733035228 904847613 264319844 72051146 675692740 104024942 628358059 746265992 118749068 3847530 641040121 824034994 905980537 501100054 386879393 614265678 709111985 747633850 761586780 607302863 572826903 480452301 341296607 630234243 550221474 682928496 566464083 761716590 152933981 628331676 891248008 204977032 364676778 125080294 965739626 401098500 140357990 466194274 18407028 389719758 861676060 431893280 386241079 534451555 464855152 233267827 374729243 15802325 564418801 346770855 620680665 478114272 191213480 138973706 402826077 803800940 579026419 931977983 272574307 275525383 652907417 226859743 85598796 598287189 630178722 914782340 238326205 649410151 823439516 411980633 509743354 732680079 718690599 196093677 989722557 813867269 94660796 740866015 560758150 322615849 513307114 113694798 908823546 200170762 113803511 110572841 987986109 119073652 43622392 933190249 996147289 435690946 563159143 990790934 439772129 669329342 188580459 353826044 416887098 307641921 705030537 877112054 177641394 936893446 391536818 254607857 701200482 377081157 607703790 856795650 479711236 257364994 819753866 53273854 9984912 856490577 968982461 91066756 838251189 31236278 233551336 679135807 988064194 214882311 526964216 778043927 268179798 351608371 615985558 496513689 405551385 537962665 307387224 104778955 425881803 222382518 941351766 405164294 737913115 991370651 967706905 70281372 636905411 129108291 446557561 518388144 642823658 464204377 796239028 895507053 822881765 786936545 962701179 816700894 429159060 382918458 840721547 593661780 207743533 9617430 695625286 685226912 362826532 384236242 150407135 720925533 623672471 692448267 941359122 146970449 692768903 20703325 467518710 31611417 601142913 590585469 794584054 210889928 130664596 926717558 645929525 97526185 600968382 658499192 658400888 580706542 867288692 287132107 961102424 379148915 642300031 673664168 983443403 264942064 572230535 840561380 627758132 584614225 24131939 941339802 430475361 341482407 17775126 564742634 292430457 435247507 329664770 569544464 283293248 758874700 577700504 932910678 766042704 37587597 870043399 586995107 158661066 647748955 226699689 285077881 915699068 620102788 919817035 599552312 230965566 940130594 384662863 666207226 712315771 634771592 546898022 346470248 555952501 162476731 101682154 924735876 631368587 521397357 512516014 653492786 658252614 836626381 359122645 874352356 730953988 429026274 899661636 93049731 94943708 992011276 970435782 377437264 294473260 447381184 318651033 33403147 500213460 738907997 627876003 549377237 920586112 408040624 543023251 814340119 70426781 703697588 694521641 817939884 80703900 431868612 86620550 220943821 957065390 670021636 94815785 906527591 660039041 517034591 692108025 803227409 1764468 459287024 689457916 975339196 68224468 896175118 705907743 337059105 615142434 807936704 423771411 190910851 841295777 60494998 835354376 609589822 949138089 256364096 661942737 84934703 183009708 264751953 166489089 852666610 259993157 907480125 149029729 607027880 247733377 534654497 223318833 654974708 45548767 963883650 253302019 896211086 985984331 804955227 632609532 912396379 809554780 131130628 879366912 108351642 22120729 306473926 116286345 550984020 943555170 105738073 489449089 887262747 37571652 769682734 104528916 323400103 368472073 634209618 421576707 296544279 189847886 595183323 209141115 738448112 228726184 97098164 938179269 103208748 712224489 912559361 622430040 483813335 304916787 726195075 495545390 610148508 439997803 541535720 102333466 535806332 2557105 621803978 810722498 563996651 645238510 973615774 568887862 110086617 700247572 173063297 712758722 257102944 712983279 103065788 773147464 70260121 416823060 913764831 899237831 702239356 264744277 482318780 788102711 285698523 859347991 911905635 444711175 910805777 277737803 578303962 285400538 961568115 470772925 484917716 993714996 120576061 410369710 679858139 754577503 344786657 928831932 436403627 606555329 495167356 280550506 680464536 941589538 152145015 132340708 5844806 659325770 108553950 162215963 346772002 978389795 866455600 634937295 718023568 864722338 799211171 620638286 29053792 284255955 949187782 266859158 770513556 326883233 284210613 605736414 847904279 869856985 440989197 126812886 605129630 962088422 882388497 537905 312853548 700450992 276187191 413581713 575388639 329496166 212233410 499354581 712495042 960377989 800218103 661978048 277743202 942934419 760644993 299872976 891735301 703561479 988578994 856748176 559364038 150907076 749855888 476433884 715878847 322755519 643864548 981520694 411732490 401047069 624656153 15262713 996855697 237257048 15353897 732057083 946265934 947501498 218833287 942399984 132668370 51807600 663565358 536989384 701905233 532977057 482033987 629003746 821700994 425434767 644097058 653507039 766068731 698661771 186160852 129283097 398742489 715160100 143515989 835609933 386815516 365539219 727535941 796298552 451251112 721848815 179684150 962795911 805291068 930311708 925110229 659575603 541812820 615333359 122735454 479846846 668552467 971491054 294925620 756383184 127495442 405732617 255984279 342287880 159229746 447533283 9942501 286055226 242413002 629190628 470451561 233846872 68162808 82956575 371892457 753253087 322539268 607954725 207933443 652365664 583970339 575779454 9390366 782909501 616696921 314409745 759125047 437492068 549725407 187032476 769000179 602243230 906245773 475163933 281968385 24833318 302826941 269474075 921247354 625833278 429783107 52435547 397495880 44776509 226238045 640797325 512233705 406294065 244782854 511961605 679682608 531938934 389456699 225846079 692359011 266926639 414937216 185040821 878525304 432825802 363961278 64162591 78802033 836147560 481218476 883043327 534992286 587417412 377687444 253883484 340648087 940527275 136898912 798051223 380522223 503842162 295172451 972491344 135405265 326641406 936308674 701976131 446781251 918838555 303274005 353533712 258946848 594971982 3468521 195412742 742228230 878657370 36452622 288289103 975347418 359426818 932139017 671318404 412625600 840291582 751301442 33662268 65453589 367610328 461547633 787437537 368791986 664213184 258952312 17967543 81819963 464729345 51972922 32669910 869669398 580859908 664932907 26573991 973250730 380408851 594136989 357228902 852473846 818646133 24748491 283564974 286084713 821947623 52318195 193000194 641158879 993245891 601289602 808390281 338074392 96394503 834422945 803218334 287884440 476893020 423554331 69673064 37131862 805843831 342287824 722605875 740450747 533112178 53895839 583853249 39691317 106704866 933700190 210495140 475684014 137001870 27678571 44435094 553462769 600454886 523076589 445606633 486801748 77316257 188970164 873615375 248717087 764324865 169666286 217385262 952774258 446571377 269682413 31371745 816797148 730351992 374278709 304055494 428414406 481336156 200411077 917004517 325165233 463528527 266355134 652198396 471177989 271993788 880220469 441152361 887684948 27986313 302721801 903669114 620314824 483208571 356217413 833131784 988245331 440292481 920400669 830480473 884116648 292029757 702253189 251725027 649551851 954493736 179861272 175966831 296069184 375880267 889530846 27234725 28300124 281825505 627482686 849842863 520856044 408383278 19133161 236334298 994604750 164382495 789817583 904150068 718339696 435088010 512076567 520275263 515199500 528527563 849725375 444483857 467178506 336200244 78575968 348434627 811067350 181841990 424429227 352306367 973657115 178560745 878400336 170653006 102274372 872244261 91534435 377940368 621075526 196891796 980191552 269592007 365973596 340969731 151507881 700323933 9530745 944173858 358603990 735500382 522030595 815034598 233617523 301736442 468295871 403272470 24591829 961167112 938014750 478965439 475421465 890630497 227873096 193211420 420136787 9713409 824384313 598386900 406530992 794417018 258564697 674272326 672642884 712050905 593883276 131430203 988747219 805181233 331284490 466606624 557151650 813393462 99990551 632090447 941193203 773822003 642561411 8930262 414772171 494942305 701718147 162569688 861430426 180654853 405632272 956728126 562897746 950265560 357199541 150062030 220890819 865336882 121079684 551395703 290488003 435498857 240356317 38238496 578773566 509018432 84766797 338680011 712406527 838457887 888066846 987070163 920990399 289345367 250127550 110288801 84949916 774511059 249801576 913748258 686343313 915942196 850938143 31655631 932670728 911239727 462828589 956429398 136870365 92982822 471251321 788089123 652982715 888013250 661863168 61764770 813007635 221622222 860481370 781285939 362173336 314590721 735202870 180172863 303428316 90669336 117403337 52217552 131179349 577797601 888789887 411998921 788375082 498507724 867873458 935572521 552425731 8001960 772479503 959515863 559952113 485460107 68134404 639268626 155623725 823606158 39321344 516583732 544637721 430077460 155522534 952737605 989523592 126483053 604833066 710074980 929797515 148893854 555377851 414614167 563949764 915511085 685538391 874292321 370916168 443770141 667631906 468361716 494719918 377056053 314694087 95204685 21438798 363470938 716461167 407205693 327633806 481089563 890376514 727860273 463438832 376326884 939879391 95594960 110702211 746449508 384983665 302735360 225487816 749154310 73888202 496361624 241750059 305419723 181455630 391703184 811514005 74741496 219026674 516622626 291432024 443936156 717256659 671347554 159852257 73865387 477670807 499844565 85983912 313577792 504348559 83796612 86556247 451769227 358062530 88606283 91173988 309946591 710639293 604134528 554720152 639687290 49841722 255735397 913099153 466435980 890440175 777436389 822439731 854193941 797661657 343962820 779182128 104566308 793393702 779961051 987297365 385585287 730103460 626819705 99987492 297425583 638004005 92458891 559224805 157094245 116336931 137123097 444255396 313596655 805997252 422985329 140231559 85636219 913484227 183369958 273263621 912310490 53302041 378784909 815597599 656094913 122722149 960343924 590064923 723210464 16708761 833250776 552462328 460116077 969790541 927177511 216434129 270983955 889928293 77015083 921349427 534515125 264589297 571445843 843850750 509043321 949428987 338541874 921850296 360713536 6605425 882440381 593640880 138384297 979142607 292988748 154444018 411481453 573109946 405901419 51118154 54789319 522707246 458141056 71006554 390512567 343710224 978830376 235444210 275466211 965912811 116767995 410767190 610266849 552026617 258809010 491553688 700986835 18334958 894291200 92573723 514738294 40936608 553043170 143166721 845106678 629501153 790083665 417975617 707135651 701566655 832181269 43330003 135697021 581185658 232359645 200872027 856348020 265836246 744533217 981112818 666004294 343668863 366900575 435700589 381245839 410958310 92438396 172269985 42168174 671415190 562980900 435111659 35425443 663555333 199953194 107591850 374961904 311471816 760255102 616185210 875234362 476688401 823991912 655642344 102346862 942258641 215098945 687590841 528290333 382765197 394447369 181344979 205565689 429867995 596341659 728287483 441283586 136315053 581753768 556998729 576092723 663947979 989582168 249261796 873958071 9061897 402125359 499913508 611296948 136412347 157349669 721620183 490373784 437860281 957619305 288973246 328617853 557036354 430307787 896474528 179149137 251178833 412315183 21432188 785572486 423526767 332991778 702537261 593267252 216866778 626567883 695738999 915440897 460144745 377165726 213456203 187416474 427569895 265262377 674296891 767906847 54596572 260936010 172261499 361518828 406204715 857805296 536883436 387942183 362167885 398284648 856576648 167837105 634139612 705281360 595661894 69977241 469236173 651448453 932811121 71262283 864823933 749141278 980814400 716234484 687354464 951770125 650436945 721376824 241063020 838153569 342676376 385531877 725275150 298451398 252898219 715024464 380005092 880627590 319851383 989478444 764598396 944556554 556101918 538824265 931863068 605319111 122230672 553248292 592507417 594562639 333554896 757762740 338412454 503664963 704248184 197310708 382400160 458163788 849490549 811912698 219161036 336931506 335452595 793368016 171433212 206081517 227606851 974544865 259164266 90217376 721503216 360768508 381699373 453340040 579714112 889177794 508914813 771448890 27910071 822005933 875084199 916743772 913839426 340060184 247888825 496697390 895993847 656857064 802521247 132381973 739533032 214451148 464568942 41671335 662495297 351637344 428021513 924964114 761450694 259354475 829767809 307891745 640335004 413303964 431564678 296883631 338554895 823886682 450289572 607592453 460292257 831915152 884386039 782450869 330957838 225640553 8279784 915077909 522910531 323281559 576916291 396055535 102618683 827559804 919231231 651043718 426201405 588145235 190442637 114942907 786401291 501522425 861682671 852356052 252950483 476984096 154618029 100397809 578820653 906078263 295312912 901609772 680659041 836866673 111340303 643190648 379108540 906616044 223774921 199900352 69596153 288103188 295466536 938703622 250374454 298072153 660913427 860936559 749726867 133309676 762199117 432536473 893370798 49787272 540331246 603579194 246253982 351877092 65418274 10139718 497982431 65566002 263987283 936218956 333145113 567713757 137018428 257903829 62363179 148263436 162202476 667303110 634750582 248687477 592198814 943771058 521453968 482264030 327721940 216849141 534633329 556803516 936766669 365246991 210255571 877682157 353954448 933731675 721234992 895570652 301143202 105546973 784224102 628020005 230808329 57135450 93280753 70850366 689382453 314594444 138093432 797013354 634484205 793383607 33729919 5241717 269237778 613751659 619425602 745833876 224383548 728722749 89177648 198123945 951923977 596913839 482267896 363524821 522383707 252653180 468747587 72366452 686808246 272898203 487285072 895776951 837870627 234268948 661463391 848177161 672318525 943524866 605443664 988815604 522812029 194732014 592755924 751145443 397116429 402486572 284268369 456735458 525953745 86737025 314278921 715494754 956870550 229354613 257037562 214064548 598735823 319999159 417065430 873629261 434787426 504479187 34368832 222138658 983030928 139051880 265655178 920644891 927105011 597255630 110595800 457180168 384945885 285712694 181333580 62528610 559418833 121039506 310678634 540743152 351184934 877977952 540689351 907305780 349555037 674234950 496527345 981569364 587434617 635938345 254261730 791395226 866100861 680092424 105169497 928961977 871768596 766274270 78876384 715227615 491113489 839899611 885703484 239171903 982427101 438779474 508054723 380105409 419246416 6382541 152961975 945561354 446757932 230503595 928129274 703943463 166526657 189242200 447199230 2619058 967445944 598336727 146202767 403220412 356675636 243912491 725208410 736651057 390445933 106840848 751446627 846350856 496711129 508276201 113824613 638247694 691419361 541035110 131019747 59231414 484645541 74904785 15485082 365949412 140484929 125443388 573744982 950726092 991806144 599363203 619571631 478026581 34812713 251889258 395877537 825015502 986777956 445647868 781389779 922823736 612593509 613071374 875285870 166000230 959516050 100053033 714586937 216170663 470346108 331943350 949680344 64645118 553333831 999883796 384819740 102515576 282364997 824708384 566197122 692581653 330909129 226076468 718576160 111372815 740208985 151505797 139497214 749512611 25105777 929853866 176029120 234018991 479003877 90594313 941341231 653109680 496506420 411183190 818262005 942978215 47385443 910426404 599477357 939865675 748029933 349279906 173798541 924682829 212699755 90503579 768186741 606047931 36688661 318134806 899623761 531497780 84548989 832779561 752474521 549246474 173918574 800493391 555988182 212440338 35713867 798521664 983689783 534029119 365344330 139785828 502072025 526133781 217142592 865031799 387025473 187548546 772598605 271615839 865204105 729989752 305936872 747109519 850371319 997704230 699335013 647096199 966384623 592570183 701647563 840538300 579906559 118040612 565367902 988957083 886571517 466328177 438917805 267643332 133209026 561526451 879331846 770122047 770698058 749541030 322178292 568328382 290982954 239957246 439534213 169448949 341114212 393558169 785380044 798866075 841136116 747016896 775388895 812708979 520905144 57599287 630781052 422673892 480606395 529468775 972344700 547522650 567561288 829109364 981603895 607043400 51801141 501083200 105237924 39943437 190983628 723629277 466279493 760078915 546337517 163884953 936403596 887197442 823545926 529386391 881914192 680187540 5755988 722126094 342401221 695742196 11435285 822548460 689010251 319929405 987721994 748749218 840839655 487547627 152805731 254954808 81769715 785235581 416174487 698879242 27758784 18042800 330546000 809158363 933989267 182810929 473782286 868512074 478663917 936973750 433185376 719513788 3970831 450804500 977528613 838110674 363819507 975807226 617638608 888837561 902153711 56413758 413673594 488064864 345755636 676658407 313817540 685028375 712717374 430179947 392009558 722166524 641126586 950648637 464283332 960109574 129333356 978399434 788173763 697277197 460126558 329782911 632006671 29554280 731890153 538964119 270249463 303508058 819534407 208534475 985973815 307823448 906621122 519691847 624640479 476418244 652089287 939457077 68881897 950042781 340287696 179405505 872142108 775963480 694708120 4590949 75316948 400997687 978751690 588592830 231944455 752525527 212324574 984445054 955719621 370677034 482483410 185642926 987858015 651957848 925503869 3804757 906746879 584969844 799920138 975356017 29061386 525962750 588315864 676715029 185513315 457050594 216234349 704435905 319584160 62036953 245802096 153132179 140470892 132276841 191607482 889060713 475865890 865443579 54233858 876276599 150483761 870574683 952334168 173258945 593024346 692051051 667744414 885370781 623607961 920788690 999029162 619421511 407026097 39788266 915964427 539179190 196175392 759807283 273868941 143261988 817074503 861829785 13267675 26196584 287548655 720743261 771908988 675562634 345386627 751265622 269774667 742223726 896434238 54559842 95886511 187607833 670071608 322891731 924431985 288444131 656014344 990657991 193124421 76459006 448030547 733453028 976410473 433072234 465403556 816722647 339208617 566039233 389473043 339335056 759159078 690464380 506570170 130986334 130872374 862441872 321310042 937697011 809802048 82020318 917572808 29831600 643946696 223465181 768245784 641041438 395821509 220544190 7819470 308740717 231922705 355738209 95462006 477626009 341955187 719681493 797034598 165459948 391952023 760605251 4677276 640301611 645502814 357117047 357875192 502149008 905408823 580838139 996850341 624720978 100062267 244899574 651559305 23935248 452200411 809378456 283945523 322754590 1727256 633007626 782553301 538337467 994339640 50298094 80202191 354335820 420548478 772166852 230014801 461364929 604619549 615168663 310421985 567993345 375804240 427830311 220539753 25448743 271487966 669924069 693135822 747830691 65599419 11688014 184863360 766743025 336125771 493636409 423279470 550383863 941151560 825460833 663927973 288466570 640052177 721119516 268462790 62588848 107911499 757230123 578084028 146346125 230011555 364997453 801029193 989584827 607590882 729569666 303718475 406086507 718956531 925883069 555579139 678550072 681521487 569435119 87791158 215757787 655190703 877925252 94775361 726080316 872004869 247357771 163223447 956714900 269429872 411541130 971294336 430241312 507096314 822850387 220382820 757416861 593043037 878923649 370316532 193454781 440217294 306229188 939741148 369189320 232990618 968444740 168223227 662472287 504891842 479470181 278027229 767387645 323627860 38060448 304346418 150277613 939273099 462491655 700879924 852079168 975921590 586230585 382294160 256128388 743166646 898928950 911611768 497697957 461134855 232533890 158009625 696233582 984074657 814595632 100938516 954208637 250753331 927548971 955673676 778215456 53996188 291267749 526452459 808674808 864027200 180067351 922885970 183069411 36801189 375446017 942453486 161199687 377729260 690319111 988466916 222789231 733038875 454275851 326706339 723920725 417164394 399332587 900858002 115693396 44173304 782144295 604547837 968399167 215986562 48286193 301834999 719457409 629155668 476562765 787948603 437637401 756047690 200668796 786285314 313942560 496945287 867646888 352638968 563969632 310426681 853319685 357856418 658691731 373547414 696747888 410652682 462965040 472736260 508075517 674783152 545634311 782283127 593462193 20888020 950283269 396548882 723704297 931564150 651310221 843775816 330472990 391007298 374549638 721614179 34877866 873170050 67020509 201736826 155128448 563464527 321551465 236307607 59296208 445815909 746151282 592958640 36086114 435436932 176698493 23054544 674387478 107857464 697598013 910452460 54743613 402743846 356549592 470330685 856788250 77524147 496209556 726015209 961426846 362534862 695176231 621676146 225069660 862804889 932062712 229998848 832424988 358211377 448792977 449666876 511947837 378949745 716988750 188652004 603871586 263760478 347170888 60579040 449657584 28507980 574511868 593230710 417114977 565868198 596082056 233710402 360105477 132788828 684448286 41808994 715388402 708498038 547734601 108052954 400155353 232763884 148003870 593079140 254276403 403187489 861849681 667655075 399733939 398361141 546997670 541379653 856708851 840842456 516592035 664196437 775830414 681609800 420147478 144075535 634592734 54945695 594445123 372135226 107426027 270815903 339245406 386829251 70571099 67817557 417094772 862125793 105375133 390113041 461392733 249318375 829562047 456444842 106722754 199948281 223359827 181331458 641463615 781995337 922448494 974696122 908789569 420113804 210658398 387397995 861788505 438070157 807473792 592224531 486437842 929889576 374013583 777071129 998467642 709610634 961807490 854677471 627574639 546691339 991344806 23652164 953985133 787998701 290548832 675342935 398222024 463751426 889335929 469399307 109457513 578227659 254678726 95206854 969874986 369776966 456737621 946442492 93411135 102524939 596255021 257277762 67017228 110289179 795493908 711752091 55084372 310049729 652776433 929733300 618075052 877541650 300603575 467545852 739733945 897650286 353644088 203268760 78432308 889982266 493289401 966478102 997872889 859543763 788667533 723479475 22296220 809264424 378232556 689726927 898772860 808964033 407214359 709818042 119950425 427636804 91635408 591771625 439825795 765524935 821743459 204381481 421396409 727592860 486737576 89114578 56345477 114024726 903743587 547904035 562865595 108530164 649460365 650743200 320690360 59707301 143906376 296067893 569877816 394613445 842154653 211790234 712982794 570152897 467576500 385547677 160027697 409642475 556559494 550446545 664562538 66074779 988103309 568565556 539298572 395498324 201850489 751466194 570629567 286620959 842095989 172691016 872341977 164390875 161460771 422896940 365355392 982000164 742236410 420393707 275750350 922944549 438150794 101440877 149124082 826201446 904773377 214443996 260128005 381483489 91992227 715454912 76449077 460306500 834143720 157341100 67057335 848542059 212379054 589960207 586965456 720071439 888052260 117895409 800623559 573074948 433469607 635490113 707847219 311686549 387211845 201802280 775567705 866365631 775155030 346148924 539440908 339438708 125705111 402012237 297183556 507326146 387723594 485111183 310448288 57162822 872917220 599552093 150421111 477019666 372815846 197603431 44241886 684789256 282354757 668960958 230644760 343374226 495300792 100000338 161455966 613856173 603643874 843843953 876919443 293689995 819986665 261262632 493306860 95550320 341106223 234781374 390939150 319242631 761667971 661091641 944441485 125133260 948297014 972622578 423936638 270800867 995076148 652945592 364131808 204207170 66168665 275588663 104675418 103620748 870387190 613635493 253359849 896905413 850246456 578156424 972349279 914145810 239876336 103821380 332502387 305946299 135435536 22362115 940217002 434843161 888083714 851000864 224426363 977798272 161570906 74735434 721122161 263771809 466742349 550834302 674727890 833638565 9797877 268772624 357138026 172497978 237626614 437773040 362832532 665935406 74606288 862488789 35729979 241751111 695730572 289644348 145589092 725052323 792514527 773525822 903284982 960877628 32081671 453773787 635060114 993441925 276413632 636402881 104814852 380961446 677828901 825021653 228667373 593923046 577257576 782589470 685303669 622951648 534993046 828646268 664970718 6924102 83536632 648731219 362888982 669005800 962340927 768646791 399765555 865943796 392713998 235229124 358785046 687653484 955925080 279101299 124070203 502097895 539086135 945146749 65670967 761926726 539221621 595081195 979415451 358203916 229878996 867660231 197523434 202376847 312550222 317803692 357365548 879314965 976369139 514423006 94650392 792551079 966701979 268749957 175808771 495626498 681186454 505316445 808522681 67091026 325023615 843022015 325468916 2436735 136754188 515943644 361701426 262976835 380338157 701752669 758776158 450449779 26673423 676161909 538111685 994374027 873192804 332016350 267873437 6704700 456585036 770106678 374952817 829542344 33826622 250655945 771859771 668044437 694684205 971829985 175761787 151871724 570564316 454203161 624973136 356586790 9053690 560330494 594664646 2541974 370067353 446449515 331497465 618035611 649325284 267014163 59450436 232197055 370429955 745709424 992811507 684211061 701687438 185565223 173448900 878431056 553576988 872767719 49293885 691950247 804569224 284592432 960189627 830038563 741025494 211778108 114711445 675967151 785223800 538458915 943468837 119328772 405838444 781847430 176715728 970344018 378777128 11103386 719992447 627352742 747191245 830423756 581934487 198085754 948842578 229744409 306822338 310706407 726254600 422405199 159986651 589297017 461747165 352028516 269339035 799592715 641950213 679644906 484972931 598028193 883509060 433975361 182940516 792516562 857409445 869770084 950569339 819426155 613445143 180138858 115195744 328648812 597221633 889129657 392461807 431617016 361484591 993614678 422234724 19592383 389604327 618359915 709048856 598864088 790957197 982661690 515418972 238169421 555112986 298050755 188758573 195138463 717020975 330974054 990496693 260894245 517386923 265970747 955759868 882742672 948589337 689492824 631238208 814743559 720829329 414576605 516954684 115816455 442396300 247918663 44587221 951133840 620987362 44588957 363863630 10413193 381888072 181584957 897551232 703440087 143202223 687319512 228523803 900877959 855346433 987660516 53064151 753365154 781836086 572927437 789892252 148524639 167046788 870523380 49991051 515013920 588924751 562627002 417290492 215380227 275519132 212734396 741224632 243106077 841089078 767775231 102134932 593554227 806099390 705206593 236724046 55346279 295291041 19020590 535503545 58443290 598780459 281169420 973889936 291814359 151409249 411069847 857320490 373439285 329945754 738250522 654847610 509322168 309420485 317133272 467000696 839031028 519637197 342398366 40521242 840617553 998190765 293765989 828111788 324008453 554296150 744815741 505248913 90893425 885966924 250520133 908403111 660290090 680549825 768907325 49996312 600696262 64014662 20801586 226856296 336944189 462943850 480501240 10449100 541673078 902661589 723675441 851492007 441905833 850273579 546804355 950874414 737272321 867022673 575388212 132774437 961758800 569984450 805037600 17671943 417173306 35995911 769195003 251656140 18988620 549058701 161895305 636877585 512807300 438224198 731454187 395946678 359764079 380397932 324188069 666832130 411691246 46102850 529442627 608341340 192976934 952885618 101868648 834181214 746224085 100526570 1021142 519458754 350356677 111537365 573069372 944930054 895215823 832806826 638117025 7460922 315233041 337394686 655146550 246452369 541391442 621846941 28246775 518182490 480959939 86543425 86032176 187615758 560128220 971115930 397465794 480044216 734864323 321813008 66443285 482932260 71595698 354331925 361993411 532526777 929848386 107502495 365550236 476031732 702517560 88051906 471659325 680774241 61983903 74737365 587768306 194490881 467027289 608597260 762064063 695625825 261497703 919159330 621968920 540988688 914925521 507942040 348004030 660931727 956517185 379467255 545886389 425756349 737843754 703565591 59560500 61559436 118555683 494975230 917712016 400877711 986779641 391187180 529178955 916713872 40276161 619068844 145558662 25372709 330169645 568221843 382014204 48791838 426518565 361776470 211206561 789971496 169240265 29537755 299954275 717959442 155012335 919176473 397664590 378526598 673422869 789120701 120391644 702558732 313509165 154464591 543751458 951627247 258705272 128231297 905545820 716452338 532504464 398748912 530273707 773282861 953674248 262740482 601379519 917231440 696011761 61386217 658797580 137611093 178031382 553101468 956345706 159243882 175787849 755511302 720141433 160643749 985888178 881702230 665423905 569553549 487380779 368253553 721608304 963616876 879791004 482603667 675602359 16949304 561525153 296967300 728959070 274418195 628597440 626891884 849471236 80784185 598248886 115462749 168001224 100586672 629666938 361987399 433456599 984415691 711643195 143787152 177315142 183639761 215013958 96889199 262734073 930285830 228364340 270411813 695882232 739582952 683907555 966485368 672648595 277800767 539332971 612757571 589665727 817351917 790082327 950548983 935196893 125964896 205171858 243649511 141345934 496691672 328777077 306003142 549634477 566408458 223133088 31510765 58330193 3171778 561142498 353530734 675240112 39934463 595684326 800021037 228962492 317646205 268398738 872659994 306932593 517591588 212439149 613253346 125340732 368899619 410293418 732598324 889160558 285378034 854121754 806108402 648511254 459237306 744480293 958850569 476883193 251533935 520626718 584443725 396854616 700105688 938798345 725194802 639648628 535662907 603296914 882449797 34732305 673034093 678107074 676708359 180466237 448012713 882311060 878136372 278493880 569197076 822680314 549374022 68882091 954201044 390181575 177959362 478821577 45773319 37046727 286007700 730851621 488784395 742080626 800725183 41630516 658608654 505654748 410288733 815214860 834564079 838085795 685915311 807256771 49302993 823179068 868616958 393550457 117058340 625340281 991714048 842950819 344026632 545095118 165579348 529560962 744570419 813755358 715689722 398462266 506459031 299578335 623953054 246785359 307963760 610550156 23106020 277893825 792635988 869495284 507762648 242526138 52651226 78156210 543952215 282934451 921570116 966621850 801453812 508246495 412564341 857284500 380723191 723337201 881327489 156107402 633493232 193991799 753364719 566335330 22501765 21346606 630794768 753223759 660863779 738334528 847519778 562440729 552568849 229481842 477254970 354557609 214042480 201257034 16616190 696945770 204371778 811004012 393106028 190117315 345256985 95486266 494328781 140078956 478971857 495023632 988605945 169334373 14953826 621585227 157290188 261726359 450275423 484266964 230157563 349459184 982186926 422048853 583386205 511033117 270671319 902181766 13852887 927709930 538847671 309261912 393969309 778426412 943265826 689053387 424082503 803838944 362769763 303750007 788828053 607019601 390669086 65291678 368173119 559821785 647654708 761524916 970904250 632972902 114537728 158795735 26653869 581780822 241044742 173339167 628357061 778383518 672484620 996673224 661617505 695870090 175515455 346970246 638663693 160430279 108036299 723594905 734261306 764393597 831138234 4015458 549970117 349824538 455752625 612325616 484106607 114113063 234256739 706342836 793154564 149475008 688117780 826583445 560058850 51245642 178811132 342813640 217986100 599949031 41921237 656351495 761918761 808689924 463738814 202006806 679864652 543691954 856706023 951942153 238817315 546985916 870430574 747802222 158848805 106749222 618529246 603263595 485627055 804531873 926281984 416361911 830249344 216306142 410028614 151169585 129100028 873342473 640584831 674465968 918997611 121932710 748777267 338007333 966420680 123092506 467051508 79528074 118826818 162857809 831004244 630819234 261550429 977063440 885135214 280919852 406105278 665757450 260915607 28320709 220520758 310814964 297059406 131137661 727361220 108759369 379654758 994233681 487542909 499418380 564768120 291387766 701099429 178198354 374580339 305082550 882147949 343099657 83869848 997287651 937728940 308362503 483877603 816118078 855369759 3345876 220215907 199721330 466034015 82230749 207946524 258545856 602541236 266275101 18503997 255848244 444972587 559185759 654328074 724405678 113002219 43476659 136454341 932179468 860130732 135559462 331922684 810742928 882505453 823693402 171384245 34893369 207703811 924264361 386187490 142242071 196495524 476722176 536596489 33170210 694071121 761259802 688854611 597235755 101867240 707505859 304435116 22171441 428408803 595503368 459844467 91564721 880152506 986513799 393904324 149910806 106342438 642184981 2863617 860689017 226261006 862828375 152204713 110861661 791722399 389557982 747388565 644762003 385245340 926650849 466381035 29239385 105199897 32664423 13849801 54836579 28378147 431153463 898872589 86225414 448059371 848566861 870080287 149808633 371440593 965666142 63994088 114985630 781538203 511613678 994744022 227431606 707403364 952488684 392493130 973329634 186573880 689275 975990012 12216432 650276647 813403637 302276448 349297590 725869071 120833825 752580535 343774187 661929852 351622539 654331751 1448895 742258348 999050532 204179628 170924432 338065683 33438891 475879715 104535940 737514542 867703271 789198513 401368298 551493421 193309136 527897113 428265983 435635865 109992091 260660523 493647885 379844317 629634422 595299128 700662859 74501376 730389028 659834677 678497473 899097296 54889790 158178065 780124428 84679113 423283707 763448860 556612782 779810474 334221921 175542778 349531146 513656668 456936104 599872755 530158077 332344314 168159550 385308003 866301089 766762530 49051800 217086935 33091084 181784261 351454280 744243196 865959459 82172506 580253529 197852155 468538834 356749354 155851658 109974414 52661335 846594379 9331065 944247836 405946847 225369660 568607269 106571527 876228759 164314850 945535644 322860337 78248682 677570455 523868022 760948302 903457787 422388615 842614542 367244922 891367568 864972745 777650816 445126646 203312424 469925740 210611556 155037137 537201860 391695149 379329694 988254848 525527647 853466249 989378419 251900606 876119135 564033765 355962111 6680582 430491523 501423435 341723194 838424405 840072179 70230854 783281699 453798209 689600077 371142587 779480998 368555360 730776670 45447323 512167000 378293680 476882740 652371393 524134216 995835152 626624253 722668216 664577740 145197062 580336421 413874769 462008845 716395694 52838027 733391076 561814754 493114174 218137445 180092005 929456993 364594654 591164527 804557602 601467315 186038957 74135971 556394990 923971875 620483540 245232367 78040288 635339033 681810256 380075318 284043670 13444005 446603918 813118948 820863629 908778114 600858290 39442748 693313738 495521626 452947673 847433863 780185838 297944610 777198760 764733110 995796926 953836654 117787025 597512072 125538865 470894802 546137944 199433950 854128486 298010855 25243389 583073339 373291753 368772392 425780341 342171407 805252832 894967802 147113374 795852237 840059589 216952742 681391093 711500435 199579996 216531355 62549808 916947071 627968773 778941519 808027092 716987383 667185209 185141174 865038 446421136 988280550 512124588 856031950 372072590 170623224 507078222 920710445 541838798 481658194 660998235 195626291 985202163 337761876 833149494 698726115 709623320 705782503 707656337 935916717 312711019 39026945 516835148 256453729 13855497 853731738 162607145 256447922 100083799 748422668 997184684 202715758 813024503 918243823 56078651 87129916 981244440 591610905 579292600 495644854 913046045 994646067 631106335 881559324 711843982 605881611 653639480 966710144 372813551 707956554 104579296 377846048 869084185 179160579 634729733 217047596 435335596 902998650 935630625 288186860 459897632 649116792 50904438 252113546 401773702 890794185 50157552 602965671 785630187 872113541 481116526 435080636 436425759 923595089 664200981 75281820 705624359 284211181 134634173 607812087 524790645 869722073 408719415 463405584 717805506 336532800 148736544 177033548 119328868 739193157 964227982 348067717 332685941 750717439 584784144 667262319 333423459 375980279 832859997 401531240 71261020 962869383 927549512 417695467 680924828 824088789 128442524 750165550 30179202 790218294 443061033 241214304 278359600 434010620 717945525 722546638 262468627 277986466 109652608 649230333 939648757 88189376 305671057 505770335 136837031 547857155 704144825 193814097 452600155 575841272 470145182 676078810 519577464 455585938 856661012 243871390 705308830 889819551 333413607 630501039 534442155 592306315 277591493 317117550 387942110 709277572 523542383 440898818 759939502 187666662 430197987 714874392 927468735 235937885 17446654 701725655 810305450 266391727 229486219 640065083 938870443 255692742 863933483 679769994 813658193 310344242 440222154 820430326 554836106 185419676 391499948 842522402 466375315 42417728 373463621 814494162 383287706 380678623 510669218 373420926 883287202 293157860 453737669 822902476 618062350 759151431 142166562 826001442 165390269 826382948 530194280 748246345 446260921 329929778 82179403 100462635 686127839 181905721 837679322 241993649 595510401 932280368 267606161 254672547 592547350 604256183 11442090 527124723 350989183 764162219 659483017 824182064 198934550 360073042 851690323 574447416 974974867 400770332 910520519 828847519 112306555 154633580 596110841 444335471 102985205 740098884 900771443 489706945 91802169 632722028 254972695 883351038 722264305 319578150 120401315 807706435 677964417 522200081 263721565 193945973 656885446 145637178 6314212 723664841 136373992 936721060 474134446 233021056 227920349 643442272 543478711 803296700 547793666 832910901 355435422 46646360 282374190 604652705 416002615 546378644 298556387 187721801 932614284 974319146 859390520 311048193 739214318 110769081 736904724 139669005 367339627 853486462 146698943 526143297 999519152 283468686 856230950 75991019 354031431 403810036 316285218 136309658 747355960 825946028 763606039 879850669 321539697 539285243 382988567 908826964 773960465 413081284 493653911 832631569 875622798 76032329 970619722 544297722 46536948 912259377 308071421 748437535 881007193 480925056 600858733 896455806 148724877 367293994 195778087 31250119 495855167 836856770 336116387 929675683 106464457 276909600 972551926 296263067 27756214 816919339 226348351 695261511 206389270 877612556 66459054 481192369 425351343 982539643 409606306 803835776 286640080 520082819 459023463 428919988 910113431 391487775 858089105 62783342 726531502 718576751 321115067 285608673 858557113 7903393 604130280 544356187 793300107 954005771 602485384 246681396 487481431 505641880 126484963 360841838 760978120 984544891 117701489 856320683 835933569 839498821 697623270 876177523 398543687 990348259 641229008 559482447 653820858 910602304 865813326 2524607 668094377 476443210 673099815 108126164 688382705 128955593 996591937 210983075 231180449 627862017 231245036 389403788 519530284 718355220 442589989 800888216 855135450 906558476 784178875 202816753 112139793 448454320 707700740 947882829 971416263 66128839 24497162 55352666 769527179 5788220 39382312 4313511 302654820 656180055 762477947 558510251 696199391 38819651 197522044 791239631 304283202 699006667 539303600 205419507 482395968 742533772 401019519 703120860 428604826 32158564 422049133 961331928 776923975 17624528 311850562 353135931 589565511 238340552 761112973 632190635 378354092 77626127 447517905 84765407 121883076 441644053 741367983 251359235 336924764 482519398 237839622 321587931 766603308 68197756 503673718 155052745 116565573 250680537 409247677 14651011 821969783 775214463 364839215 301502375 937732557 80978076 684900813 160861492 307092120 409261024 957759103 40947048 451961045 591040163 189562992 814783127 365678512 882569907 932225681 972790094 163927928 949006305 663471863 620829490 555793662 157445933 415225556 79230165 412460672 792892127 295616249 350579652 264316167 835015554 485300706 497518723 519198973 131335411 133666217 949369543 96749739 325305259 16650222 79374555 216334900 51715768 576266622 953285484 49959349 492397884 232553778 109194792 68595299 805876961 39322244 764438033 91817055 43663781 483272768 646086776 41312808 537173220 409494149 247965262 722391389 651967832 837646707 273337455 3158154 773318237 305299045 621265868 975362168 602355290 918577211 23829556 190800531 746551688 127271417 772677059 283773358 936253236 166464915 422840021 494471454 203087963 477940715 502933424 249448407 200025345 134017487 304414358 779967314 383151693 85977360 339993751 588958598 341206097 874670178 648705599 521851729 542002191 978145382 143485668 120374508 909118777 123486969 2961324 235628866 977726230 308696529 24009993 245613953 699333798 237427109 287176543 363006173 859573080 35730405 80256146 80222840 278782204 414596062 125913244 944626699 776546942 765725178 112613844 849257416 491771407 380177272 38801626 953703571 906893637 316887112 153664092 926290384 728962240 41714962 61638132 636677152 926657665 394767227 123672862 126524967 68462685 991431228 321956191 284605908 171391611 774787822 62982610 912822543 899843635 280348044 662300488 710170113 714848349 322279635 212022043 307390778 472144861 671602465 746256743 510464096 276382525 539364860 936016778 459860397 746435852 932680837 45821067 511485367 189644320 123583555 41106337 236375725 247244695 478036166 655697778 442939377 178191067 924389462 843374745 656366713 1418692 761010027 853912086 537860761 925808704 902412184 724688357 828553974 415423424 285676107 360976038 536079784 650870276 694423579 496464582 591774663 237239678 117673341 696304205 855522312 737930293 873185315 219610152 893732726 690958277 926561220 306363950 698634977 509565221 980617216 896497067 470364001 498245567 368350587 27538355 16953867 358863433 320642527 51428146 63065499 869146630 744542976 985229561 944534874 125795044 280957541 704092449 711855896 929057059 424818086 957960935 604225496 821461978 896234769 555793687 356082144 501236928 572052823 99721532 848017172 499882873 61694702 545012403 587198105 495088807 373311241 927355264 894219929 442541131 594291739 459054271 524562941 963635063 823468678 494827402 721341265 928895128 23138044 267642515 952670460 491048874 200953864 162893792 979097902 796606997 692900547 423382593 231520877 310630820 164233488 719410172 841100537 870717917 79542005 329729719 601195322 270481947 278588701 526606168 78522038 314616452 24098717 993393954 28332414 728756241 256685683 46455066 616507092 811823316 269440279 463972565 123214735 109890749 306051038 438630767 239971883 461712716 962064315 415780483 48485237 675055121 748912706 540354765 872437808 286128829 210378064 170206876 204755089 745810442 29343486 846289354 387527079 260662944 142368552 609553378 668694329 406991735 923804925 148818248 6375060 559414876 966021646 891339283 443441335 478003650 872458589 331614294 341726215 79313213 943001563 180970500 32083139 252964017 282570022 845636977 661034573 182050865 267816362 734181308 455117483 345524562 605132391 579302701 867992417 430492039 158242052 355575035 400005124 825912175 411231552 313532217 906379831 550189636 632533713 446736147 768331776 806918580 170976738 946701544 486425760 333567290 367178017 494090800 651398891 856493076 653297422 943476719 673104117 85068811 858955890 177257394 497566371 159525654 939911729 297021579 664868261 752864361 721182027 994598100 733861926 893464800 325804862 218461793 947724764 964472926 156319035 33681838 423714255 349379609 399604087 557828047 933584799 37182510 5842333 694198072 55268072 369743936 554486575 391137683 639217051 658212587 951712283 11466104 612872090 940375768 611938574 552988251 125025477 191392353 626856827 794874719 789928352 591530059 482842515 175205792 680749505 83667893 841365806 941089711 212559396 731262848 751572281 450827160 796642956 739215191 415863056 165902965 59060524 610464700 239588126 66474303 344129127 863176878 677200470 209389537 698732931 318383455 444500985 439197753 305331306 628433013 385979749 338597474 548868789 269425599 536237269 245367303 273563053 932422472 557731421 39003156 153659856 242503717 37713650 851792224 843280140 196859828 632024335 173454922 593871317 291565709 116775956 570277473 718193284 601952078 179690680 958903334 217735204 271510854 123271281 580369195 550238084 806421537 466649156 743802620 897145945 21368319 462619628 343124415 951991809 615643256 529946183 543594667 584784728 350122580 391118894 217461146 618309931 41977926 768918603 901930310 317028043 436872309 385795808 468886038 569291742 241647178 924928509 456130486 302085429 746425072 986829377 950039680 690087549 978002033 256003360 741203443 286071768 620253846 918673646 203275427 833920098 727722144 225865403 478915827 783420444 639883518 460183162 252185540 147435673 569709196 60228744 761435272 853194092 587964120 880829846 136716895 911362240 564923646 885874956 555643207 631235564 243510163 566884779 587789512 438515474 541735239 504126315 616097843 990170248 994856744 730001654 500216028 766928326 78895847 728059650 272104975 511645199 352252694 10521967 927452211 122592456 2773452 739466573 237812932 559960056 292043611 146024177 618349983 721175001 334715802 780018488 153382150 358053720 240361597 247294269 936302367 325223777 146894518 994316432 982400990 571477536 80228069 414740845 327085983 254460664 960885978 640059685 178392119 642354191 699302017 714084883 803317051 59806154 526103060 946685714 579952307 540249193 522095160 4520981 104538163 829089781 705898014 362270318 346885853 856617552 697550545 736118020 26220393 198349193 197044950 83543843 527746610 482068149 97031917 950845930 208095665 391918405 424424931 381318146 240094322 703340394 15475615 39163491 578061336 941330584 201654875 925819979 597322543 585444892 404377799 348569649 776519198 264501926 180181308 781276805 817501814 708370437 33259753 918029027 56490986 291522470 370943296 306101187 49255820 93652448 692067826 658020612 543259396 870374427 220077616 298450794 578550923 761144549 941842476 607354863 800238019 6138909 300074604 721564676 184943353 66136796 142106560 481122204 316109773 606259329 229009971 879474307 818378190 851631029 149081960 430923213 596773955 608028388 425834092 62798440 82958159 34533768 212722093 554890048 934859211 174665006 369168022 277386297 39400955 153670416 715653720 402192327 669347524 839064952 419300692 239702629 576133288 13504050 656900251 600435892 543353232 712312987 199702970 795410780 624628099 537970889 150742426 739677392 596558813 718093812 645294955 459261155 352084219 279296345 587748086 429491668 74815439 276071736 54077418 676265827 914024173 769923975 511928848 30621714 367141486 873678905 215112579 895920280 313863297 183274254 970237084 47192205 589439759 315657177 840352895 679746318 938607388 726981298 723624776 977811930 109923858 117396354 122972856 101598802 518564653 942819576 323295258 837106928 933006615 598377858 504853339 264075582 355917299 28392952 804436174 547235934 632729281 244269602 831166305 198249351 391364388 719041302 538290051 856271542 194924878 156630375 41965741 340779491 320000650 866688085 230094899 373227185 158527119 712842143 938762893 912178633 971212060 258161252 411275288 677280972 303848479 787767531 501433512 615324564 124052900 858357030 104133408 647920474 456972958 484785987 989079294 122112605 425988015 2338064 79984253 941644473 547232224 897762630 698503192 969655904 436897469 93716412 587197999 156081145 581178674 585347933 481446241 387786723 670956 25353433 6805140 480884725 644804043 700062781 825914557 208769205 588142582 692479025 244526108 293998270 317217126 392973824 665958036 776092789 837740627 417176857 915735485 464205328 220600840 928166379 285136598 264051060 667198622 934652907 929284008 181368295 787619989 786683723 539978751 576529579 161922324 948957513 966180306 663027995 594487506 280637566 544959738 435771980 658537937 267070700 804004510 438707149 564727026 657922045 616875418 747009960 65289195 575395037 422793910 159854533 205193149 610176757 816562749 286504085 67823592 757152114 951921130 888820207 411728910 93908721 585274872 918112707 828557222 985371484 459654535 68163581 96970622 66511418 125896451 403137978 412967901 15002053 363603302 326258839 437334399 198737259 772068719 304892734 761148807 572174329 57444308 137582498 89196030 393635541 909894516 334792871 157867392 920869949 281573606 382970740 812814094 573327997 769591924 185032024 404154276 273590826 533326836 324365235 744157818 447587599 281555568 84151466 85243184 18989702 660547290 3783988 86364773 331428407 64884763 617926396 205875922 397316010 747303749 923320469 300355233 258107491 287780409 793132733 504806498 75212637 589827182 932070470 487050618 737269015 625487950 213552519 840147327 396411215 62670221 52632208 241314760 163404316 375169854 125108495 942927536 754518227 657247767 973330393 228475043 691338447 294387582 891484284 488079808 778044531 670918362 416883830 505687010 903810641 902182633 834656801 587358546 999839518 490451209 53516394 31117983 709003432 541771476 447892486 673837811 875849445 150819019 18809567 630125769 756404834 211225289 173906348 215128504 672336571 271600985 203456829 790158945 763095433 24375912 667505369 339549940 237457606 577199045 897489844 483987932 294623489 484706505 256975036 484757639 33579557 710352542 569167791 352023130 577052511 310791631 762539183 306092274 22672741 562626214 605296166 213948068 358765135 954543408 150978549 321655508 968756869 588883154 750805163 949979622 259551835 481242018 962480138 476727728 886821737 692705715 38671985 241801784 154047954 109210543 201654298 573237513 17636064 707751949 844002462 914236274 924600240 621787357 49153298 177613106 608059455 636986492 722931846 630914555 799584778 867597109 68527754 636898331 667932385 103546857 932405814 25145252 342822625 226062830 191166925 756632132 200980956 993992360 283677676 779054891 490718348 961093528 155619277 889204426 155796738 538690243 572220755 226712521 753927286 582002018 643269900 433312737 131908527 290871355 988313311 387366923 211997793 378833091 241696133 282674111 182619210 527743671 895874814 790716734 315662681 439492241 527763398 712238702 622219644 33747169 551428588 996041612 799951050 301036947 113104928 653533086 313678225 4771445 99177198 649675166 42385166 415200219 353541462 175748226 479882943 198837042 792277611 517600660 389604192 824282731 434738070 490251512 393753835 519808555 146451453 506668717 321192206 627452251 317612491 362988649 510649785 198337588 714883999 193923509 811444048 634213531 649054231 646229249 741606844 168876497 613652032 382274641 557854209 7242382 615632379 244147832 593372535 686842325 701172355 653936832 954590572 692284047 123969597 246795128 20192394 598638263 207909042 413440432 138761971 982787726 124867012 648622872 500466393 42335768 833532525 870365261 513836567 660180125 358504232 396192262 233871464 737386484 507538997 734535086 429156789 625765073 212541450 533942760 636925235 232323789 775849223 854584368 969644086 408580080 559889136 144242080 513933692 445489761 37288979 468037493 896094195 630572008 273030102 416598412 108762028 487204635 439132577 236675702 178078878 241568011 726543658 869084509 128795066 822196313 89058444 177382740 198316529 380523172 654947572 304864040 834194977 815082271 347692966 60273990 338514067 422906363 793383148 739031052 861780864 241002400 585211136 685692703 474351058 273106933 793270424 66455304 947988347 757715233 996022838 953739499 407898371 145890530 356335348 833067798 797239419 564753548 266359536 628835569 75798669 336776156 116301724 146882410 766665680 809226708 162184847 471725098 524408259 963321917 570184460 818966719 278723577 841985745 858369148 38293181 758899697 377238938 21004188 811018966 707086067 938461458 60330795 267577327 456601978 333445481 473227951 102710818 662452617 668010831 290541433 560633427 322078130 807954945 873627987 543679761 214826918 202812456 295265147 996786052 523893666 788090862 654197804 938577307 78036814 480688246 381009344 258889491 884354814 926431776 63612301 132615518 870415435 470655387 830261917 599185815 19511742 373756356 31231130 324913413 869481975 399639722 594777083 735808936 880643234 163647190 711691814 878833557 732893833 560389968 420999721 884712980 573945578 454456758 781590651 915176518 694406647 537531245 105834774 550364978 567168646 43109604 476157506 274366983 609047821 406925254 402716905 923888519 690555979 219727284 326284945 853896539 977397220 747075185 139396063 215919226 380846461 832713802 599538414 305091016 616190938 296394544 141484165 643326609 246133178 950035314 701412778 233865332 448911585 953846955 505169173 154432371 72764043 201233234 157839757 846690317 627781301 114988750 923395490 476189996 352037685 673011147 674631602 844381937 5599658 489411215 836449077 464060729 954973912 844248776 276054280 194899652 101506030 668346265 630495003 373321426 874539073 663075577 901455471 628151327 674568543 812133467 234627489 217228293 203256445 433701926 19542104 781128341 751058175 344479501 32346699 802352991 767197330 837311553 359963437 923062123 427760028 78630667 381867550 706483853 172968103 497646751 176698412 397541043 640085367 99799566 72726747 367637692 36519070 371023732 589982245 591248274 66946635 434648712 302792212 440737389 778311375 751173719 887988663 360911808 172200863 427120128 521480505 805733077 459833758 388902698 544438496 80760887 575311952 316988380 401763737 758941298 970031634 87919072 840343300 990712442 919543979 461542648 636731613 43791610 96140366 816909908 710089667 569377590 273486817 938226305 278342948 387732147 743317473 500288171 568629772 609581423 996458794 858699014 329151861 372376498 490633540 741014464 388201849 204133773 311483391 870676219 750421258 682749979 750948700 173042944 524952038 871084991 104627309 157528497 239459555 774382841 509474897 800478668 949915679 508224238 347476635 555413226 263697605 882008147 943094422 451383384 943864146 53441603 42471412 117341630 809943037 43918766 389153189 248508397 142019502 200360077 641450678 515425324 434370904 579121557 579410708 191834937 794264454 509967545 238948245 91996356 546466995 226066662 721005057 29687312 826756666 937403168 823214727 384149083 498440283 147474814 875771225 236102420 243494381 45929674 444344234 412036696 154480065 800322899 615919136 508153720 768958500 73520575 232419602 98454441 456436416 636477192 774290835 526155323 897488860 674696110 368215326 88581975 829468539 864194447 83071528 523337459 178447804 736498297 489511249 855599749 985459511 993406157 325663307 61713327 425625755 799005174 307398444 219113783 148468094 958660083 348804656 284850621 571215512 707405709 463362354 16153316 580021808 528939200 79776598 380719255 20035288 181503408 561180362 469889507 44205331 372122215 778772150 723256579 188015618 111217876 296211604 747104381 117571086 508725984 229745056 389788553 746441016 720591759 944870284 476128685 664735002 794331221 76432348 516156022 723932049 581426841 241627968 905889183 558203371 42634528 950038468 167846717 141916976 361890218 418517530 748902549 427483908 298447934 450019569 478405868 184718900 593043451 460947519 398542442 253921462 814742122 48576781 781646842 339087574 822049022 149203322 227989558 133607173 490862643 675778087 522901572 198861154 446347117 606346436 206095693 980230905 896201241 984289804 981785176 348678490 290089022 499755163 425043380 137628404 673583821 233575870 893953525 939072231 77842868 523026763 369467387 406114631 680990505 234166576 735902400 447437442 561304625 97646244 220160098 929783531 307973417 572758461 680010056 128711493 779284993 745675683 772672097 986919664 697813435 326160377 330555839 527349147 665861860 732408071 590828490 252766702 874682701 654633183 170480536 859385167 908051745 305659070 632313817 801414344 627231801 703713706 617277145 655799362 417936695 778222796 722503609 937561878 846687914 654774399 790005388 924577404 870387010 877617813 69931280 377562343 103287131 327089527 475882756 677171326 912311954 749816059 414313044 825974977 940689123 334287253 310516671 684748889 860747819 188829429 178584263 771320283 30433260 966481248 816828271 380803093 172138934 633207406 184811445 829784127 690209089 151695848 767822944 14514383 402107861 693771761 696007521 581243520 931616034 780325784 940685074 104300129 731022525 61730210 387368572 16535268 78403704 957340841 323050731 129920135 113936668 216027463 148345930 468972079 349066521 143732687 643989098 166703534 597242342 753931717 195483720 244213136 68629656 463278849 841550055 562066459 237768549 903521282 709799541 886127849 434117603 62340096 590606966 786160877 311791802 642590201 170326241 299564895 127253608 945798307 751787773 853370101 360801078 224863623 516809664 495492860 772829878 660410239 518644436 678975487 43948846 629781832 846956108 805751161 553969121 499347653 620535232 586816217 640862430 430122540 737144974 746681072 433358651 805985137 775791229 862579946 732142143 171092596 399780479 523897267 929360706 267070512 933796554 364621116 685972726 254038670 539224232 957202056 547475046 589481654 372933317 211558634 222951838 743085526 358639807 953403927 790501184 480805826 792572130 980753524 151433340 929713914 552463191 821558142 95708314 465512903 618766883 183190879 107751983 220359257 77163124 621242420 324057112 185289819 716879427 44270662 827285572 643069535 427785807 951088047 904975010 744146889 307131742 993945039 229604383 218051311 834764822 794034809 602559395 684044656 332087338 29303878 92453629 450274046 649133732 780798894 525618331 242125676 523958482 49898787 95982538 268914699 65706450 18550476 979913450 118354539 602147867 874019006 421382005 869950042 186474735 536578834 435394371 62963018 338838096 839426051 354132101 638144434 300444686 1243704 203550663 825582365 210695223 775497343 206348855 766749599 792496368 776379708 229077890 98219876 509846305 703015056 890167374 787981496 882275429 535362283 852256352 665564535 859568792 438703343 508358809 526408182 318986882 156943002 655753532 803448835 230763466 913927853 863846186 241115725 885774710 577115327 500600830 944138600 524737492 256288681 905414854 654081328 245376839 137801157 436820110 192501421 465470910 215924627 362061258 138754195 98251572 274843293 63701991 512334398 20529379 921511321 455389104 705878157 141946215 552097209 517445301 292649151 175098524 69904221 623822136 454506570 242573320 558869108 740874122 573032582 954837685 788910460 919219078 444651401 176209457 931386490 525834945 17994277 763374860 347239440 657636483 689060325 394344580 645713454 276789843 414347962 808486658 314968556 85266522 702249111 447696746 628650470 493047610 455421280 643291022 666144859 300670584 866084560 772969594 533956348 947634873 83578243 84875669 902018830 808679103 383755037 738956220 183916321 442481094 389706218 644818842 365038108 451758223 147142197 779250046 121150456 594349657 61084867 983511547 620316983 612203235 803282401 829162219 589443382 219054684 435331261 736074530 319257640 721139722 731963986 458455744 973639707 140609438 595924436 376514555 939869398 772448016 89294116 910423765 431758703 260713921 662801916 600638989 783557234 250684035 96882963 410744452 4977525 378827308 496022102 25880284 97820714 399198337 747020984 247037633 473410559 533222427 909781960 128357248 452970486 248212715 128972130 686793381 757660102 479849080 640690666 495604489 612217140 894725726 41692571 66343762 558568727 379719022 394009633 878519664 389681413 688297648 301042200 449040703 931868876 165327150 386006050 188833322 822183400 284090666 787956197 855726571 372937121 355983960 920923890 981308128 270742917 528037765 131108749 335328741 162372459 7143523 974610159 941638379 933242776 396025094 784928124 84735273 692589200 991168007 151259299 310007531 514346188 386356626 780092903 10061416 991881181 236147337 641257664 231081411 127566187 653996039 56232580 979247818 94086478 180070440 342817344 753611610 316279359 431744406 538472503 323128837 609069464 477158346 421660914 794580401 439302030 552896799 976895477 233331401 367940910 989211230 331438158 580636441 678680251 531195625 491588214 777877677 733903909 3837664 836871429 966275190 74418062 742488917 260746330 160323975 559957708 40133189 13398694 611590356 776527562 265742780 370507620 895518424 273182070 786701276 340873885 108743059 456490877 107582362 48538798 405372412 281806154 258881299 44577866 822279103 136191885 701536104 500511781 35965490 351158944 368871031 469329642 850835611 502517118 746930905 19894697 328264488 41458529 633802459 816824512 573326992 175971521 413972095 136724630 875682559 615803832 415468572 598785659 309134627 846583229 414216465 198671236 68731114 125334444 86338243 122039337 607247283 725299885 615689502 896547091 587381950 528605626 802878676 479367705 730145975 943169154 786183020 390445848 668063493 424509241 135553884 666401847 755520110 289111973 1142725 227900669 64577744 810978102 949063197 705407189 77050279 327347503 495530020 342869170 266691633 547636085 715128646 100002278 424252081 452141483 343159793 720418229 249832085 699189991 701660331 128973964 650704650 516148170 818274739 712191258 776955731 705271627 518857637 313321453 265053975 680617275 978187396 436224390 622083624 250947520 782920275 451399297 93230414 751212148 874184557 420933976 358208827 680394606 722164780 498976484 412342738 204886037 44115259 747623839 502793346 545244389 981306938 925891882 52069939 308437164 226137911 609761258 770696 2828901 801952814 665123639 885449043 726650725 932659444 26236491 93463970 616681823 123236925 472601446 90709791 164452368 460944623 755629252 576348599 365133462 659882097 235262300 600375156 765011397 831049843 981003678 114029293 448373702 754443999 890149166 692555713 946808756 682038527 652187566 140645271 987460326 488851717 578006712 79061755 655712258 516692324 701497940 487846022 333156098 946118310 244700877 31263973 113034726 149559591 698077179 474864577 478108474 366134025 53176076 411659430 935045305 213285551 298962795 47515329 318956098 522149210 541257639 765897395 668801769 87756653 588032556 317014679 619797425 740185785 254758708 960165724 649280802 46022005 680103198 339902717 875160938 789923892 468547215 389653941 554556034 831416428 161683077 941024229 80516268 384614843 679803931 334567073 849138105 591086959 541599696 264732671 199927430 298060428 350510516 32110667 145755790 360514838 376636169 235020608 585372607 104777179 424567960 43159100 937680377 208133398 702443999 618458487 7608344 820371527 28558591 672221027 954305820 461513341 344288788 462257983 18497846 183497025 165753582 179756192 515227209 946595370 1118191 546819490 81432540 256847458 788086599 286373265 404757691 580375112 739604108 861277712 765296005 957930296 261087280 462719580 385581452 331184425 884217444 854399544 359508265 100733157 815347665 445731120 868585155 58728841 662877061 65151211 283342132 793489172 973469934 859057394 19835122 670136731 124938424 419379624 271096754 812799729 400343481 977648569 396993686 622148905 510090831 553624992 343061116 278616602 986295955 256973921 657171796 908700198 15153262 716063549 842139742 78123140 460772691 427820113 858588768 615421861 895256549 790975979 645942972 972908377 133056862 942853619 90018479 119497639 786904721 983738217 308657335 473893974 430168828 397876736 158585761 86866 160813041 99875230 838575446 800666007 437129202 116306178 325564673 151207932 822127009 665614566 309202873 806444659 48246896 164969886 421801258 284325735 731991704 36503589 358341834 690296948 782996266 614277353 525812304 486754685 879821876 786621134 489302066 768596880 830714485 483014429 755188116 291883389 304613193 618595564 659788292 227352785 857071338 581037528 416743435 493068310 881337308 778011476 681006409 18789130 945305159 722183515 701363560 172762857 447616261 841106545 971109438 623992581 37526534 324574449 873644393 581815374 729047925 817100868 389934518 459255547 180112544 234384253 926078459 779544120 960909628 88880450 339187814 226982788 364327647 102403184 778127479 50793076 303625644 699616353 542352345 452800756 116396993 528934425 937510280 875547137 570055054 743388994 381707598 533171923 504362873 702777716 166730222 14673166 589874339 841097268 152699040 88121865 69288572 350706846 567710019 595079127 226976426 436512313 492746314 499830214 924659715 1432708 214114713 39519394 311332833 24005901 500236165 205093425 945781053 668110080 116007855 907091059 281452987 794385271 459363767 549799235 800577713 460614660 355607091 471674097 959959429 394316641 77951914 612317333 461595358 115551361 26276751 629887691 794553468 617314988 328074441 824544770 507601772 2133036 427059135 498960863 607527893 707701599 632152541 226627799 347655686 169324718 751453819 31117379 450132237 897625715 669035331 995976862 537745318 914163618 847287776 357301373 910444225 260182686 9019618 325994617 125558201 62603349 414765664 129322201 759190111 3012606 305809959 510586196 608984130 20630999 358860336 205250422 143935292 940209315 576005936 440219525 311982574 506952893 411998938 731490184 38644501 549987762 11852065 549379353 20568921 548593303 736980167 280913931 823460541 247229323 809015530 28209208 858336642 846823857 734376920 738793395 454593332 952826159 398753076 332532891 295972627 89777565 707904392 272851992 459751394 863450679 87912912 310827970 133710121 118797426 565833069 763321074 935276595 829111005 476465098 365542872 391923392 550993813 986439976 227031559 427223254 237852182 209554702 321358602 197667572 861514668 273695251 494707825 421406755 832402705 167421582 843023608 514050665 253855531 502447397 641425409 63018299 82313965 269693934 181125915 161491882 904686719 836791236 613357969 528527324 93673492 679305347 394032328 673611853 85032038 573793685 23787573 648451548 418751414 365983529 504678998 799779717 960288500 726249827 991060532 156530204 392564492 834191370 33558975 717379799 833323061 717197072 114379798 806263908 393908850 251616610 537301215 137316221 396498669 503721032 260397218 509505030 98965174 345702336 236799858 724375092 573438332 431254223 376809507 361418009 781974271 326745956 605883244 430066934 324022358 505666168 182951078 413497557 66288899 794452456 672507838 590103527 594662408 702981913 115037051 156331278 112013381 189642933 768196574 804044365 365443640 393779703 488319852 522460744 855588908 49434294 484770194 387651904 776023349 25579660 278951986 982166173 214721863 24221357 702397481 92815816 930030024 927333194 883357378 812141869 764490945 669200329 130976987 496792967 623181342 798048690 71705853 430598171 576407020 787774652 52727175 944309315 937240353 167090094 760966336 672875811 892516713 732122890 582209889 821672187 820488959 806732004 55428771 71565865 374552475 251298856 388716847 163330357 538927486 115167053 684402617 631729413 833120484 349482357 924610947 306888269 979658744 839030257 932550007 79339561 617426860 9840691 817374012 853414240 379799867 686297112 236187649 181737320 986193704 828364564 871734726 728788631 593740355 513005336 951775597 19445211 744968775 791138606 28354768 288226687 123776969 192068236 53363506 988405824 513299422 243088228 452298479 599013832 741527576 318703049 803753071 451463632 19345448 120353907 653592884 842493858 279816977 315584658 115914457 286706945 654679551 228448720 26095443 625429965 413088836 504782363 211283638 383852948 289118678 449134097 17797591 148651971 635698696 819766965 781970350 559377443 80016182 364770838 674470969 233209667 994629815 57432786 62245373 194454540 294882982 246118 802632757 412254112 739534959 186869537 102099611 115627914 670221260 939670898 927576097 933307764 416555561 54718583 352224501 111730201 80540159 896148870 962925280 353659539 571508839 576847263 223089506 633408223 660201628 235399059 313098171 875765790 960520672 705415800 483587306 108987537 40508727 466288513 83564748 320315355 675456281 193504283 437781242 477929432 24706860 295805483 681928151 122969798 43441569 160937033 507821087 244927220 208343102 562757561 322300579 764997076 197153142 476265579 689965134 514016194 60191215 320303124 803913463 70066666 162189001 312462911 192834333 295392601 983883082 478506290 533746272 498865501 214932238 107720174 129100242 381171596 621421100 596917974 229441798 769860292 432727370 929054244 422176253 528471943 179704169 227355110 528587109 82530967 964210449 637441721 379291879 752389224 753779877 62802828 604565467 115768838 124371633 159590237 750878844 173075281 596234486 520149900 405899351 43021128 488051616 522323965 168705084 904332180 334801247 172598531 281183457 833074813 933675492 960987293 480845235 255292903 219633061 329777724 875609126 664405020 270121608 665122102 987607054 189963042 814190162 751964205 23046530 837499899 289970878 941901872 760995867 632356364 206153566 581519391 20981127 732448248 62827823 868234809 337292801 559314533 641856728 658932542 740380594 879057144 656565485 115169159 190788663 218747424 963174131 685562631 34484935 8290625 161581990 770642971 149407505 48711528 493715794 7289190 638257456 594981972 661377972 9287673 936654054 690371417 338860498 413826091 735319981 734660303 389538972 404505796 163286417 64175294 944383383 437517716 503924430 133644066 208021371 947431491 771317320 425457860 452145800 709798730 824748931 819811721 640054150 580115658 338679054 213276437 60584927 309556628 35499402 903516353 513861406 116463617 866690102 529814716 360595454 617525297 355724861 972402515 271415816 725488864 332926597 936269226 800957659 215730856 242438656 878312230 553825389 136468185 592534202 426732752 669444381 290214611 648397369 278131377 123349949 265876462 53179536 473314738 526899126 911246065 246168009 236169729 773677911 112540775 235714285 360061878 388415356 775403453 940405380 908869462 51406091 17590885 81631856 607785821 177647573 126178388 569147896 71069696 709493162 864402745 518216081 266787530 600237777 565733136 686151620 802764496 684813600 304452664 746858870 455653068 942187098 930772953 140923057 468782068 239439188 189034772 419941182 158189542 213122059 797967472 35941557 428671706 699271800 953367963 353183758 977347542 887147266 603940624 362959834 672734570 566071088 377505956 819994957 574505963 825457150 107928561 588064738 498107204 903147270 329756015 787558907 730207604 400139946 845164234 987697163 328363787 397487722 597711323 188553857 983299227 574732990 697680453 530077185 862414821 299754483 29443038 93353189 17536288 500046396 188248107 405177654 47661941 539993975 611850422 384824076 689133867 743575037 258427793 34636128 880448347 944963555 337420187 63559579 664863498 724088898 593016797 204222007 135085964 229787691 661822993 299736672 931734499 653008168 383738295 518463308 584321359 128798412 547641927 397097222 18534363 816986130 798740626 917150644 54981879 722431670 138225726 237088220 385776115 287862297 909640843 967301477 596145490 644535423 527451793 854327806 128620577 913963545 135521407 413271098 995906767 394598670 826959763 905664817 446374746 806183785 972696608 411330443 663506574 79028786 763011707 963264052 252539270 183644842 991057336 174666318 537182031 285877328 999795093 465189678 998207848 870914361 970723784 623607675 325463781 696338602 668055908 498219659 848836439 30266575 490771891 168039260 790863641 916674001 261383770 485383285 951111609 932188598 124985772 543737629 643542155 822857156 810947897 910519666 806335352 110555462 300459717 1942241 100861274 351392768 188329464 173343003 661104385 417271670 769361609 959443357 895822602 802294506 646531058 736452390 741525205 213394248 168299699 612273778 537661619 619490823 868449734 533847750 893759085 473713231 655551529 173454392 645322966 389736598 109909598 179308885 117391499 865224199 390621049 452967029 836282639 410995663 532776976 743458740 800411721 442733855 133012334 646020198 98387952 923955628 410933028 497109280 580065952 911077717 716607650 445401987 365417494 33745299 214289380 469801401 386951997 798488596 604634045 845699827 781107293 284640522 305019556 59386740 654349138 424951769 987193428 222963723 95179640 21200981 825407310 725952376 995699937 954554357 586540891 753099143 96550527 44879345 703276975 383818304 436023130 61611113 677001639 365106733 275948951 181191776 687576752 86394182 597714232 670411232 971539573 12930036 712020407 888990921 628559114 646854793 852188188 827475211 67976704 691776307 985557126 332933540 489466709 888953806 705918744 78794015 599434858 408860731 235602748 188389416 793456973 911586670 707475695 506579872 207888551 168566028 540254116 632467278 344300415 879108311 250262451 388922849 47330428 320210804 926301526 408343204 425266981 419044354 729855049 679383111 614616592 957123105 910868998 437065143 315731710 823337501 577562453 818490606 273602723 205007667 951343546 845740176 759968163 916144002 421237914 574394825 75708936 256186423 514116457 940477431 298277680 155920104 60623407 256885230 702116366 438599732 895022468 491621189 800735570 901233835 313747953 572332701 594797178 268277554 217947665 471622289 768327491 813371595 969919943 237994511 488887632 697418105 278591963 376955897 435477983 638620656 940879843 432340672 226075737 963618269 816290179 345500952 373608633 48612674 180600258 981494563 630280854 833504695 534612691 246399095 567529222 488240676 513951611 603988802 734920665 60319705 597157436 136578660 785540804 960103093 790344270 253108686 715118196 244150409 527936173 441834545 495976206 90172111 677599353 271684717 650815590 265286232 693308674 50282220 923873129 531439893 250380597 812703658 279607912 922129701 128088031 8290750 7333706 969894946 584254210 972726680 24692036 904479169 772331395 126913481 474251171 456645561 21166722 131606394 37501544 268228770 754954601 393186750 971255582 379653370 674943433 703664423 350516392 311279847 385626836 939998566 338722581 244154101 90483709 11344604 46125847 942994935 492385485 464654682 24435879 241841585 978305635 340653846 747403256 592546600 747552669 477090452 690648067 470332827 811342506 50120303 921194538 243093826 925361530 792248380 958790799 198282075 36385250 264300959 498668827 949877819 243608332 451790357 68457407 565282541 429422767 445989912 624752142 546717086 24395620 53740561 467968692 15027606 199000682 299022540 209844611 624830797 25272754 251806919 411412216 99070574 812474566 858597109 260515241 10258624 314990136 659462326 470972483 519368737 671141148 150125779 304312209 100391817 251744286 758864618 253391235 528309666 719621169 126714281 579235460 188513419 264717876 302767865 407932341 59700786 578029355 156855224 373723579 846057713 623340552 210354615 39544763 273754343 900354031 487058234 627960736 159128577 407907727 32501 992059045 612197147 340713948 726517116 847905343 190282346 780554528 442814648 450692785 818491994 272535356 185878294 337407523 14895380 456092259 679825892 155457699 38214855 940684135 210150353 602860069 296437166 139346506 125383571 336704792 528363865 479160249 703867839 302032658 102887149 271034951 913501470 588206473 648640855 345665506 985579858 296651482 188792258 618360036 417245645 643347630 976022533 219073483 599394878 838275783 525638297 934720011 8829904 332750307 773085705 767383960 667482125 220957251 839112524 203720114 268514673 26844068 897770833 845106203 851730753 267828366 842095248 326917307 601553689 140182256 409038594 309068849 223491589 200983824 495059543 773212528 328573897 301194859 548483725 863333862 345897690 394997767 312855397 993369441 436142546 804879955 159389001 912866427 24128963 197188802 874022679 831369987 614798962 410454772 955740396 892653682 630703810 218274963 400039904 872627541 215721975 879533027 296350149 245194471 205420943 913412011 996856124 194634965 946884365 370228543 47175566 31327073 585841659 416420110 105932081 116898020 777145528 896174046 167610882 301568945 990329676 468708404 417941899 595999111 229672646 49266911 294064024 627672634 563320760 904880698 625372130 704494250 725184953 744060412 457534954 171675334 781500922 765921340 747623680 859048979 319079823 425798616 761930055 680801456 977449454 324949784 606581686 150153566 908602962 979028352 329379982 715467160 558251474 349331429 232762499 546103181 158356023 683411946 480240327 23136902 519106765 528922986 712212091 142256447 396009478 752538289 947999610 1549683 16515642 994860307 495139394 289828929 136965042 417684336 851115422 301849680 82397284 139938938 802291798 606882531 104878584 212976364 359355862 910029237 572961999 851200619 712372174 502222011 761458328 58354816 526193557 594866972 922246591 206601057 145108206 856821509 497950654 577853847 805086310 433732624 26784292 612890408 348973977 785803500 954302222 223900338 552280523 288644090 773755281 556656959 398533906 702677137 719150715 411345691 743185794 400262603 1660628 436403861 756527239 92017134 10747324 487645925 266822043 452271963 919081268 718288326 757223981 270880534 754432300 236484759 388684908 550764915 792117293 203718439 563370904 936653485 202590535 406298419 367343686 294728607 791801524 623243907 413221764 463136487 439126780 748926602 764384988 952935589 380375006 123697239 311809676 163402080 247756208 864393826 825994141 26537730 12762320 742981480 96384185 532011661 906058714 604205180 973893202 218318746 951491492 879036688 177445717 966430922 581091409 713823465 494721619 63585987 580320221 528177307 97471335 598372224 186738506 938783251 796637813 865810639 548704275 341057922 579722786 739791179 124527451 382652305 169109723 253759895 537548318 373475584 895105128 15681792 727308842 430432697 59913299 578695682 150626999 277804525 308449995 862988741 767490910 955230796 771419545 659780512 699897368 619035253 515653188 264634207 61980919 561080042 265434130 571326593 723075943 767572845 259382455 526153940 636684453 995517105 614988341 306986942 383340978 589254092 827491405 87076305 735021235 242899151 379400697 566561873 611959197 774432257 145877810 185890951 483312607 356928496 284512918 862978370 33216014 378116284 919121195 226144942 704057727 291226403 155887766 405281772 310616374 759535876 697251031 526888866 611427042 571316371 757454376 891599342 636277059 983018459 335456630 645039446 505357408 475649194 325384852 256016913 559826587 24777327 338521185 228485334 389977618 287813476 643800477 310937424 754913784 880910225 993870632 209802638 797547233 140748614 375007913 582316713 921905187 119102687 250787993 447999066 977968026 102438912 541255927 338497834 857482164 593260120 657400221 657521775 905443883 780164634 489718843 850485425 792993072 593047174 277927928 457150468 391655190 507712600 863275912 154011927 704818761 561779646 223516958 632746402 409539038 571227478 766230822 686152785 822545488 53680752 605618632 455213494 267524839 553124996 49139068 362948939 147289329 371603119 162944488 312819466 852248035 958171180 598692609 998530564 19484299 791030805 319500748 588591655 568325443 422270716 39976370 312833636 256483784 756377702 305861369 800576274 377908415 73574597 186309085 599767258 747020354 838454062 627885852 48488445 976135420 534804266 659274133 166180149 163775982 847209637 233472477 685421940 625518728 460135403 43088776 107708408 713745727 240897835 503759388 120473861 58165613 92047381 541304201 517206460 886568276 258176081 643136332 254659201 625409884 399669593 888092737 550122652 813855552 938803064 799371104 562380808 693412239 549975569 668493004 249979022 868833664 223489929 676925362 229736842 183516648 840879233 414073476 395275599 343588638 280806156 154749241 23695358 250725605 325989342 943631004 216967187 698890119 399350471 316411866 64446384 961038732 554012090 641589999 217016369 487011399 723915251 34853221 130380506 302294567 243467347 572573647 790210781 176802124 147313847 452860701 722872646 96891880 104263396 515569764 441282218 448378305 122344679 501951919 396587808 832270565 824130349 991197105 354983429 273676691 709527035 345599316 133109853 212159570 448725146 431433528 429994119 342439720 239690482 497442137 869251970 355517245 688137305 739542875 600870126 272232382 977255201 174450973 268102238 932734886 823095552 706584046 700671518 667960655 862693937 227854750 520772928 159336560 321555658 989776050 389511732 267171063 305759804 510062152 783025745 281756564 431602168 222172406 787391853 213762835 416056790 75955076 903593827 197558949 291617625 418411048 453871571 609726176 878426375 322509281 106487008 777852413 116542062 404678500 251978715 635021048 228072289 998400121 973424560 452400029 972625452 225142088 841822047 27790953 256521475 99126309 531797553 199048049 767579605 15152588 373043594 663456079 166238023 980083188 576233944 537382134 193571060 607906741 187579616 553691069 909794861 141229237 352054271 280579572 129924395 779995248 987721795 358507152 453681050 949343202 110944035 112480851 961181742 418646062 58235084 336614753 283689559 552690674 664576661 375664953 735294086 117233361 442428959 800514600 462574509 696753443 260185603 507105375 134914069 605119078 582776082 457688234 673263682 998406044 794443531 189064389 300724496 880519804 650102442 750647459 842890445 300725244 479218156 600403856 290330790 434536614 783862467 78701285 578629375 189140676 984799442 119789915 244195393 87044513 265141419 821153484 901268465 911376303 225693828 707726897 329138154 511712814 87840253 429480498 234256597 355622901 778413549 121122072 286995789 570449341 262903388 407709135 201482461 818740032 24676058 98826586 211307696 137950569 112923243 10819026 66937106 187328356 595100015 779436049 356231407 967733163 573339805 902264527 768596017 476645130 637960017 139650188 68986524 57753309 736129024 307893971 29403383 279527101 629827556 247291580 174388289 77689229 177612020 301440364 498178653 259179532 679268993 309005707 216946945 707481518 160990103 51818041 623753220 77254547 437380583 150652223 798374738 242542441 378533516 69700570 888743994 567266229 970111690 881034446 711511352 250875710 979394105 373178030 28300885 164583546 920138968 403690662 652898554 389252628 657782779 148224766 214260539 840912808 48192210 855509167 305424582 372302176 5726686 624686891 676752218 964809147 727046029 782328571 888078416 854033652 228155391 409055054 16918059 9710579 400239342 738360832 732802359 260894693 356688696 464336603 433750273 921705769 196018182 853481264 101604941 110017787 944431646 684868941 810184488 212052827 382505221 869774173 545542042 793439143 185393107 459399698 203590543 993872694 738352889 119599794 382419599 453809276 536096815 859503558 435907793 130257414 187607466 723082109 56593160 917605692 64407855 566854261 752868767 387775062 163823484 760362220 348027333 608523965 519488723 653682133 165833790 687426168 213304281 126875311 138501147 579767592 702349463 586081278 402908382 250392870 421014689 883250911 820010478 254542187 6328328 34431470 400184980 971287336 43324784 648778160 674784549 580224422 817389408 307313064 615969615 637684808 170202988 208951598 122289181 449347204 668649552 874428964 683107669 12657541 958081160 941614654 601107211 121948634 818497482 535121129 311886327 564705593 651763330 655139514 893742092 451262646 844048437 660199110 188885024 365316039 137782268 485842814 840513422 168176812 868166361 200773801 549142360 222631450 10854856 618622983 985672136 534630296 766345870 581940890 191491080 137753864 780427810 177581236 207953316 38794838 544771160 810768666 96746943 450045244 205105690 72246412 284669756 151636576 105166855 500731193 346634004 814425870 520669109 767844935 466370850 817625916 560237219 700933318 545120120 15638507 880475783 951331019 209809689 854991820 974951647 751022565 644665716 496147983 47621512 341011519 176290483 499404936 950074867 304852941 301419424 824064421 937195832 198152797 827705550 831304784 944661641 856317259 449498783 511665162 534153488 997521722 207426089 290805292 360022346 533021552 173986873 875018126 818038274 462057333 738803509 41260706 963850978 429346465 741572351 382954974 832640201 305904124 380096782 454753038 579442580 609690778 754907912 35830663 432717328 943555014 367640560 790328262 382364652 89662765 916249791 370324084 111793659 18208873 365606183 33516927 293623886 298684681 168878688 132903033 52423454 69087212 910317680 32568191 772049404 14932235 417511430 997801211 581494421 885345985 835680071 184846121 694065807 499091920 379573167 122014547 722733963 921323896 462111101 600787404 965319937 972828625 59731985 395001695 266449659 223261219 848288472 547400633 226890329 249359466 960409805 855980022 767035306 101085366 553277169 977650033 313600582 94424424 741680621 762433518 275048079 223429079 76930207 513461346 819292182 383007000 717288046 679630635 400031474 632532896 410873712 988090484 684766651 520201622 383752431 701580070 670573544 392663522 202609124 551841506 284286725 690658095 577818673 977486556 675333756 828521603 96130116 683435437 960396610 722298146 521252662 912311599 806424882 520098620 530354875 950279001 161805419 161049052 881761222 778500106 66792727 502026175 350661460 540907886 472080428 127064703 748845499 984672990 329687025 962901082 696878747 868087409 182699307 562629339 697072854 320553015 364717112 620801791 658395349 917851346 925027994 59559705 788621722 541835762 88993507 998219712 934544137 396920128 668604825 512468436 119481569 311873690 823186813 305568236 582808267 17790501 267674917 74312378 300613667 97213982 790801443 507106238 800012269 875027505 152244230 799138098 533859288 179009869 583912133 701857296 523450859 744771691 438955582 489392980 299981146 386466168 546152058 846134737 249089114 1919937 40214818 545696340 435070373 249174871 822865867 831344305 885507776 772983256 92213468 325829486 830239790 286055381 656749704 40119831 144673723 484096954 728769927 996841471 372163859 696740608 56391780 982657372 46805851 589944078 320176602 579445462 993369911 456979712 216578974 554541106 171265369 921208705 967226045 28048266 999436684 688813819 307169193 367186155 355124987 443233378 618009874 690681467 410919055 339679211 234533264 489221172 860689792 119432191 774960331 774344195 953471797 629837858 577602144 466817383 263917656 177771746 283163519 818929851 554938443 542263914 393528784 983114646 178642533 807724236 570647634 418332046 113190777 343804958 365616066 577267144 530065234 176905894 541346628 636410534 63408601 219680948 521980339 197176279 136258156 490739322 827921136 975858604 328461736 164504669 806729333 779413817 288850037 35393904 657485868 419772476 61960058 841454351 873863266 522066657 849999215 249841363 472849674 629592892 706552126 49338228 983506619 453006916 507424245 269370929 761169103 781940988 677706086 401821301 690522462 651837855 520490570 121087871 557224901 680311055 377365610 622838612 714710252 636277618 676589763 797131123 947265023 164849408 74870192 139380148 752410203 929238018 896786622 394980701 971366504 701945909 386828380 694321612 917463654 730756918 488645458 53509515 748175269 212194063 354244455 521771967 946514917 570840253 661736710 510815256 425353621 823841830 412271759 945484021 991942944 138171350 812788704 465942121 506329235 860566674 972537738 27732074 180410579 758560987 247305431 35572023 615080178 823813117 775080196 585529813 378583210 402890989 531750048 189835679 608355766 241702600 516657208 777426641 809894540 908937470 805645125 438925762 727187452 166557506 567421143 464950365 30366925 473803188 565536712 241030152 754900618 569067806 440992259 340346319 930121311 45545375 697441947 590052921 462730809 279755089 676291640 85666307 273357861 81296984 755433694 919672273 628728295 351226632 497995135 616713536 418819160 333765383 479806850 745305849 135091706 66282983 780836826 242324729 471824389 246007111 522273167 773786780 884536622 767020395 497378608 924802032 553978252 689106766 421753265 262677115 350320858 761298111 194304585 404257040 12100745 593420289 513529629 19479931 842807747 45980376 476561456 108974390 252519880 567891143 939489929 31810603 619293838 605899318 631953735 470489278 781858867 250716330 423134497 244437528 527007839 888973074 687841571 657411725 610450656 92535106 544245723 868078293 167718675 884077466 908521410 359346298 853451435 464762497 784831651 139263156 663020296 611689818 777641956 353986520 230744092 184626248 899048399 716986559 682017545 101521677 333786860 530138153 113270662 435766308 915980669 104976208 717213569 27180278 486761856 400413008 471588718 952290111 154512141 59848121 598892233 536422971 529642223 524052275 53720692 437480724 478985384 823368834 655888215 583665499 836370585 621682335 319323133 374264424 891648098 390917927 186743181 555509446 173056946 848202221 553164696 585844588 887556467 999953908 720384326 417708418 904071478 87779750 11247923 14766878 742485289 545044600 821024224 533932686 292000418 641723738 732437673 38547362 45071892 616407940 470187814 9719875 819182831 424144434 138395828 430297837 893901321 292883520 804459535 918789917 350588467 726023439 857927579 717268726 126314214 757560130 214757133 481100275 265052816 562698810 991694402 639108556 958025444 803790248 784019687 77608709 939885522 404577612 4578433 330670771 580102759 90542585 499043342 317894390 131514588 207630416 284996338 480355268 636894522 759137231 142818118 25847248 710387613 787360803 124357624 695034242 411807609 734313607 733974881 77845573 396517087 559068045 399844250 373930326 430396425 187897266 859396032 92023465 417136826 200038381 886622783 439539927 782654294 858106900 665228766 777477209 948895287 628283129 871103656 899038658 423753181 376102865 101264501 20612698 90445703 628215071 367958935 150849182 256024989 114313574 477436232 192247180 328889182 445742550 203833249 326956731 899738210 344145322 937815101 17252522 726952286 956742125 537206234 925353907 468039706 921597062 916332721 117131382 829199465 564564944 617025218 504867014 24034040 90896820 884962232 997331605 111749879 342329500 364514618 693031695 301849183 793697424 710324426 701347709 218522115 205654928 960855881 630682056 362067323 947894770 889525944 169725374 939106208 360780002 460448327 732108854 552339934 362381990 377719586 432855540 221042631 407539105 942469664 667962147 394942279 464156373 263293979 665340700 64737526 209546606 254740413 327336477 786975713 124808370 436557212 525451683 911094449 148495428 419334471 850349259 234425284 70759259 842345969 51169896 884985988 146854465 205667589 684101896 863092154 332208395 423207908 433399066 420951249 849396820 933604027 204971354 965302120 560307559 480177601 41021461 856326261 718364581 43095803 160909639 839927889 498152162 270407277 468161016 739646827 381236912 821199726 825740987 254533766 567603959 302361486 374254910 269266222 723268736 785200338 709200639 894825897 67678682 967843810 498699067 295461510 276790231 283918622 120752210 342959442 451387326 411364150 807211685 591091969 821529594 868904238 207039653 317817787 660983345 39637598 84575151 424675241 166671051 578853514 877922786 994330576 214617291 392736948 753274889 211254901 987847386 817992123 592969064 394590078 856924142 713395542 145901634 903814457 816273577 302033036 324172336 944656220 852892273 145226745 148588553 569472150 364937926 475556914 83117854 654937470 459435044 32718006 450219005 756155256 41272277 371585048 207634794 147437180 405017654 986102030 295803135 24820562 861121242 580359862 31521853 739465728 692135422 972094270 237596593 937627201 670919721 19132872 663584634 23965997 187699142 683327299 954607485 152206612 384160979 656579409 768218474 584849630 307254184 452680831 945478440 644362946 391399810 340214762 567954803 801431798 257964654 457664392 543230362 275867346 39395276 831104032 442850226 304686469 277894981 162811845 335107693 518305464 54249077 917100588 68451447 968983333 688760951 59133762 566289403 369350536 557617725 923616874 341435183 645177760 78446441 696483210 959872066 804125905 606101519 516232830 963698610 456994481 34862964 967625877 777511642 234747052 734181270 184342362 671442517 336495775 222456837 84982813 561520391 965534373 936440486 288623912 949656259 644010459 562640724 445191266 260413932 577988679 275215305 606704551 24352009 501583573 681960410 699918148 600729374 879584044 22585767 710856502 486149363 514415393 943237791 361919793 539342323 885011245 139415198 486449482 980380857 346629679 316449372 572461610 418372381 653750523 306473406 229934349 538035982 637330303 73082948 547604778 601542652 894146232 285283226 725017170 320542969 377588956 27280787 729970838 766578540 814756989 578538527 553125747 769354000 997721730 511206982 950450896 870199953 483532223 593632035 915613708 802382419 207765611 67093583 76581347 871518649 713767235 582672283 898409338 710850315 759557091 709514108 990141241 123790196 438090676 354697696 707571302 552450426 955250256 695168081 943574282 909095013 377431010 56907059 64307688 601691499 854167011 167515207 404302676 774145041 333518753 348351796 107896624 3654133 750036286 608448932 203199952 913111416 377421782 62474491 94915972 657976624 822133703 575228719 867141402 903948964 153293590 197738972 283295822 602102753 974073341 816498488 570851769 46725752 225585711 48990366 492142443 100694439 216570311 762962815 135527435 15598287 570239841 814706528 506637722 754150511 738887216 864986256 654531791 476787475 356586515 112721229 431078150 618266997 381005118 205697915 232731344 690901003 786929492 641254159 602664209 599352945 521271447 338919818 662345111 123409398 919379783 286167828 809609804 509221843 35881411 393029692 160871418 350331161 590207650 674388781 416999793 856668173 479784845 25744587 187524774 544250031 712379240 408758910 630498218 959129512 56662608 692195430 728153998 793329248 783103326 124373149 205624139 364426424 324777448 736217120 710658469 243041346 935303114 110832890 73840016 495161688 399259532 837034156 817599968 660224518 271944103 187999269 320687857 899600870 544577356 453567302 74655361 853509833 867480440 273737717 106318346 206514602 282500710 414482159 12219408 687747474 224438923 196201202 187197758 992140261 339039079 363648871 633167131 813424716 243380982 195083571 287176952 716806758 497152950 504200196 825068438 548534032 750791168 865585587 976280212 118753675 676098902 912483041 425446746 199454801 160078670 934024439 59003549 256338567 5241422 325343726 752057004 289065393 18004201 853903701 285695694 111916254 113979830 332446499 574626126 312315727 789332497 381078470 628674562 463358554 260584298 900600943 895573195 929756283 20553424 227571638 450964969 634773927 784174663 895901856 610128519 518614730 280376293 171849308 113204032 502286760 549846048 585488721 104495754 862331144 232525049 299232864 875830863 756623725 396293190 594847751 838791670 89653036 400541111 548283198 707192794 459072554 10937995 983914856 164175955 506804579 761151820 675578872 904302948 415014869 24161545 275472921 924889266 123034852 456019032 747034140 104362818 658694345 362182623 701225432 835362782 384036647 636241084 826555579 147855985 101939975 635189947 993998802 726198215 418468962 40944745 140883005 943700911 841601757 296152550 431670385 956813057 176766607 408083653 627779307 247013917 756475312 213756380 92706312 650671290 100475517 59666795 74616991 133038258 377300962 28025555 524899916 879840587 490149831 25451378 723472649 405977611 411205785 759455512 783756912 444377292 591865304 761172939 975190868 782344012 638856942 607002342 809855081 341452691 794474656 190837316 52526898 669353175 436807606 839887906 164482393 448436467 954358515 983457501 672921561 965463440 520912414 112685853 326662445 690125836 903865860 155819351 786149208 708648312 295348296 375146813 968457381 655110214 756942917 169396455 218921790 477590118 249245139 138144003 195867945 355958476 721907732 610149324 393644436 408320336 521842326 351922270 557126605 5266693 815927973 30035657 394532523 583132906 568458010 577187877 944318367 365663341 476165717 127423147 440182667 661267656 140303247 887818205 689558205 32144921 554576925 575881481 216005481 978479544 660509090 57330851 459998189 632699794 271406979 125543551 849703797 331328136 644231303 34880596 640748197 681087610 683040420 227387405 779048066 404766354 220508110 225244290 477971407 253217153 539416368 311265475 523421356 276466045 205463497 961623879 784051983 465445708 523114158 682091628 114523905 674943485 491663022 24086283 326991478 919407392 419534460 439716688 669918397 843755225 810272779 24904098 777554029 656323028 50146027 129588786 544630946 122556133 941505171 706683124 774420070 526832042 323224803 870155539 241279531 315925939 506957897 593938895 833994240 449312333 490043348 185800778 185019236 947891782 529172936 464813129 583132505 485370432 633430726 650613810 376386705 903009190 432314422 330166936 783779355 645987881 665945732 85779513 489439769 109755202 578802242 427893989 733430782 614619318 902845041 252108674 176131434 651610155 180992843 278650514 337624490 800868334 734933244 28929194 76472928 279911768 760565212 997486400 295772082 432938949 32520206 858545714 315944643 185437637 773955241 725579394 840778696 946915221 65473378 99108282 213485547 147657777 310349095 631342229 499040440 619321098 746714172 176653088 398429927 876860572 706849756 187930006 898428089 997477194 361807400 620576390 811679472 45244782 411128450 282866655 263655478 180428653 126138074 534256966 595398145 332861538 516510817 826954053 11981731 890121487 707624179 320499691 433701578 677457499 4307533 490268101 294995849 906713286 176685167 429442401 780353702 203652766 107430861 646740757 978498829 372585205 116798315 633646931 434933486 309268521 922381189 989840444 275602669 179952844 950010925 356441905 882619050 541041296 225652021 915639187 525174452 841156002 593232157 50305057 398815895 17391203 229353824 409676260 309321533 254785013 222213370 467417338 79813075 200254817 289192629 146386192 496039997 594121393 911238227 835282887 285335775 661085044 903898535 656366154 899471676 462161819 894047539 720372996 878756369 314176668 77393220 422436276 892368683 787707056 731476479 448769130 716202199 262011851 590506915 205351254 529135609 619196747 458592621 460949701 728748694 864499501 47044884 319297198 344508538 895778358 841281369 479506296 913783304 81791082 726614920 399284676 608849481 612443785 354546927 647589519 844965696 800959880 819659071 966011809 939107076 815524964 452779775 388375085 430872343 669935678 128867465 416255724 907558914 621655904 192114087 371961091 729332067 604831768 302376675 637773699 722684990 499359601 995268586 625191144 299924112 541627238 176674430 54865761 141705195 466192268 907781899 619847354 543385258 15474568 135404378 564389581 326339285 83263439 734868772 642341724 768207624 538653835 581015466 598820025 934588876 244120468 771396860 353376600 817800964 776283227 203626615 40672646 916329071 120671870 480303513 840806879 963148467 422033375 18770127 800549183 805418201 343829628 989211129 886246409 309385608 441781475 401914896 536452544 565812602 126746074 258500877 114546859 366272563 648472600 124557810 131435437 643536823 215818954 654017351 716561796 586030637 840921066 165925188 574344499 425684989 425006205 166210884 92685490 811922287 471566103 646704702 875065829 317588219 488996037 918171131 679800995 342127417 254335459 986083942 177523090 485715284 5826940 52042376 23379587 198345746 300450242 767199745 407995103 141764169 442494413 923968924 214632597 429940132 887424640 841197597 619728069 502312685 393319527 892569395 778527892 469160682 435034761 237127189 758619017 98374748 134345033 35158236 19568740 321363875 947429615 291414838 657382556 736590343 650035307 147397205 25075457 301955773 208310371 607340658 761326309 562200324 991841473 956296294 487119427 537977850 344718898 366592321 307332539 885465103 200157500 471074578 758145942 165716900 139575950 167489582 489778503 686935011 829756964 81789932 141592654 168368872 526303267 272444525 335321 256819742 435021661 297772823 339679135 91430353 515961120 560270553 662236877 650835115 621607501 459149468 87202779 590371688 429635000 82204376 29244512 997514349 705512864 916937670 22464696 522263782 545573095 930151757 529173174 823347038 763177399 710143225 138080741 867354367 622623371 133928072 837192118 614942553 714666179 941114797 873569561 782262921 386601470 199894828 167635929 622492205 97931250 743260663 491156653 685845704 169060065 771107236 554027876 872546670 95666690 248594071 631768554 350848044 451325688 663378725 488800645 443254245 658394805 656674013 936004838 317632351 171449235 318127390 251560229 805418379 292887718 247744526 370374974 685161424 383902932 522244663 637499189 136834170 315430237 158642449 578937499 119158579 336539415 299689904 441559785 617004321 478355928 841025453 411712301 317429015 57332693 182508207 894269048 697301691 801154118 20140631 417659947 348249181 775693471 3351877 651623009 445702316 486564908 835989175 457462080 111817034 665136385 575539486 680932103 473066673 454879538 329054271 652999802 120066383 520013521 903604325 209996540 323271966 579743082 888542009 910468651 41399152 739999436 651988059 591505520 877955347 473595643 866387030 180814953 581893731 41142963 869431637 752620833 517278043 643269549 977502839 413270232 744944332 39747647 177371933 178952699 274668441 748085079 524145401 429450857 275179261 364641589 294077585 368679932 248138345 911452322 280955194 160236286 214614149 476851690 996447599 132799357 57688887 802739046 634880378 322456838 816303543 126171675 433544292 285756283 159924690 125021499 840118443 10473435 999604702 369256474 875415056 60754515 850907846 46472096 31539311 863226017 965318445 719049746 312590412 751613510 530617479 848366941 908870155 851874440 746164856 329763558 993022885 953676498 735709916 140440095 289027120 950442885 329395857 814727933 432328975 783415035 695312850 377145287 575393912 208366567 382872843 856403390 483699128 527599949 747958716 269536038 440612030 650705941 201314576 128376721 510170873 941342216 260099520 133638654 756802485 72201354 676378602 439978923 753021385 149525230 976598854 307571235 938399040 695622861 292735004 822006210 182725339 762949266 248189388 271545526 182662139 592124426 486505880 72753423 66881423 686330289 344190978 496333339 572171151 779635113 80528389 732648718 457448525 784456244 526865587 940716635 726119717 513168024 221455145 323577978 83754457 345874936 937681719 864670128 392972034 626257560 53281020 781349799 790986667 657144202 383263493 648671812 911082131 498047350 957615492 830193850 304100247 147348144 58400989 500046087 273591042 77588721 398141302 66748612 310250955 75871002 238270359 695285529 510440567 864165384 777188238 928064245 845059062 823063902 864950468 193568902 927150221 419826204 155845987 369292901 73247378 598019460 997496998 164205065 399715431 644569733 958033585 829018161 327688919 622669887 556889122 54603717 458523866 778601021 419410493 183159092 42558366 171957346 580524468 113026045 352569905 419322406 382696243 64481455 420899708 860336845 633750661 557589894 521673986 44461224 894332538 561014167 929686526 299618446 161883396 465289069 262418584 58129634 35144060 911336548 857911778 325729610 794988039 126324506 334125655 989827886 289404711 433298078 26562314 910921948 591238850 299035467 462485434 487311873 818204741 583143813 175852536 692590785 150533355 351829611 279837969 967607865 331770737 596384843 541141399 549103641 570271776 813337242 629447945 284372257 851940143 79001220 399264154 922641293 847352392 125027566 385154641 752748020 887656540 374151537 850370634 673023227 142038610 181841250 367066575 685357708 493678836 907905419 440275459 982373832 724274490 907450855 712084611 967418270 764290401 346268838 140611607 976870237 607308337 423802833 599526045 264985541 570492142 216981832 624528892 239733649 683834533 105940499 289681611 845662854 556981950 199222010 473539569 661862927 339103151 978006405 747186289 391806801 395790982 160186234 142877311 910449371 149659178 387702405 791265582 917359583 848752941 649328623 558329720 674908879 873750775 10915481 15254491 457482609 211180538 6904648 504387700 732795567 847659944 209090763 249598329 52164019 599470924 156950835 205439451 834501566 150843123 264274656 598445210 873991908 775775149 860821043 489705742 145204154 738657643 262221817 934499702 813187578 603810834 895275339 208452886 590937858 517409049 788468826 204479254 334765696 971930112 607393441 446665573 408703930 906534539 301395411 550181913 879740457 910203737 211346772 527542547 675644852 706668749 853833490 870584020 679853072 152146628 803757035 70678329 983487736 186944709 679878601 566008583 521107568 841302949 373720282 112710051 308595475 616781424 745505770 911680729 673713782 871995827 961990282 75968241 910380732 675095413 621451649 632707900 548696243 523637972 155336242 81583650 603697725 148429493 592394201 495496954 753887881 118117009 522898321 308392132 207801432 391050119 838123153 320975197 167151030 94538200 42268661 325943175 620299757 650583736 101176480 571627505 102380738 280324247 101539661 276053926 668163268 939800104 205818198 539590990 574559707 622217062 649549705 454451488 756686977 453530241 152450791 672867970 743412069 990205082 66524206 290078771 994181970 699293709 107035318 94190836 981199458 799166686 222483866 437296351 43147177 653589445 263823783 24876899 682797710 13388042 96244269 412742633 637154907 431385844 16677416 896604655 400171164 625839711 883220421 723118042 910173239 356586255 693615616 915339069 55460535 347701426 846418878 537581184 491711039 842646333 6997126 587150280 583169303 957057168 735962598 316100522 909362729 396000023 585285368 636130682 211136025 833735882 286817532 15039253 167022192 176990362 458870720 482431307 291170589 601609038 684802125 870156278 37996447 999378903 602136570 156424058 510892982 379173258 797070227 833057322 493762695 136454449 785769387 799700393 701909500 810005353 182497193 770928686 423764717 591970697 963203191 174288870 925300456 921407066 332989190 202487162 860023713 520452844 984706990 268459398 692425829 485883544 717687070 769457078 798687212 614798495 191174496 180252631 189633687 717249413 10500244 18936355 669647318 966829772 104810374 901509319 45296963 37217568 686456812 816185478 451909969 522685436 410202564 735867657 955932240 840372918 207019604 867342037 853410661 857094008 502118712 472822442 372751334 455891918 83800667 596464414 749602460 909567522 49130293 999111278 7248523 818106440 354396423 236896474 345327255 77962805 803238341 10514156 669468477 279397226 253789936 902964398 867829663 81112824 281686651 406939508 914502935 986544068 15512576 724838821 99455385 530088333 726742504 14922655 119211871 803867255 929465656 695531251 913233968 462238980 660168026 106351825 816598996 767678102 348134631 936688349 886287721 342306941 995275243 728538246 771055501 647131590 442145201 58749062 934342313 548477400 30257997 241619629 192844984 14793424 330281730 74516227 320461037 625687161 814061950 79633055 162341574 35123144 848566750 877484351 585176119 679956082 999779938 751125201 366638718 785431145 226404408 151191201 221559034 150504270 291884749 355748458 626931791 323165496 897286239 198063846 894362815 136739686 845260336 574669439 670917369 738870671 339461750 922440973 820640472 103967359 161651683 795190950 994941469 241509586 331289028 131646474 397237199 197569806 78400206 590613215 129467797 538615931 159745223 475846544 544696875 874852093 736476991 182989770 723239446 576956385 633670436 231039979 109105435 194857164 170533913 742919102 14893817 40586563 840020308 992948537 812462649 745788196 762513677 844740747 417804280 513873343 900921597 270007334 428694633 765212962 696686652 219446264 244167275 628814180 955220613 493372930 293052898 94025729 577350026 402605448 375361667 237649409 506916198 395819086 412756671 279676114 18110381 575125404 395640997 357142828 508821833 219259855 75297753 545602951 280374665 684336036 53596916 757212793 313914261 863184916 380330235 403796213 930488154 535407790 35594521 603237682 3916254 827210749 440306253 149770785 746435386 155988043 34559547 851197207 943507648 810640398 863817447 304549801 79246672 257652096 923402852 480577290 135359372 915710239 566130244 727106250 292936992 674460159 370329623 43443950 10619873 545328497 80704619 767032984 815596259 492228645 949573129 781346876 116843463 328912959 537838695 990325297 945574245 638542105 607997829 512271443 283194575 298153620 573629961 628800014 663583047 310299730 76876215 56511343 279339330 142785683 682545994 883305598 540232742 474103174 528479450 370993699 573650797 29737593 625797642 298955802 433307346 498857392 846653956 719119564 187300938 555884438 117771698 946247871 90805521 596589320 702264665 316628088 140629226 758371226 75028974 290861206 991748021 135845723 676891275 664807041 509672652 336362718 361804136 454455267 737948392 717731423 270235378 854181865 266088349 705155149 346018732 281166523 51546113 908613038 491619248 217999296 400783955 440671413 42612527 568797565 750689426 80734239 258384841 997400008 902175290 893746289 847497375 671897337 291310140 288915687 550344695 802164896 922328375 414444977 138830927 100371820 546254070 720797838 956925950 851900871 15014410 920687662 386257122 802106742 613048384 376543861 358250560 552109673 396118377 263172579 916627985 118449005 730967708 629943478 383349025 802022215 155362995 429326444 869147495 60437034 449106989 390389010 734082237 692679066 615659174 532359051 647242958 11390550 160351577 73207095 203459788 555832894 876670777 155774970 91918513 950472070 701421598 707516481 444897352 438183128 219420674 751881620 736397671 371551950 577279112 101358910 316951414 999117448 883193688 988558647 310449894 783728633 291996033 602725795 428765731 531686263 925138169 908351914 533879301 314088539 66949769 645048020 818881727 544491123 337980128 96606407 907198386 9321128 879410075 198372797 268898208 967728563 887246723 944307605 844174537 913652310 916919574 396014094 501732411 718214714 273503373 117388758 61456821 331280043 653376194 153566948 431320886 112542910 168768926 370935877 597308044 492082847 585873788 820812839 57513913 886990323 730794908 453699737 226127808 813484400 382785784 351793098 16634984 817580176 623706064 431790420 470038220 542301814 55279458 678673116 273853356 291844894 324406668 523311738 257291775 819312281 350095611 512574530 482779525 989873234 196639499 729342473 918118149 275233612 79261183 279299315 609983080 481989276 145018268 1841983 270984812 286714005 864797790 661102637 832902714 450853121 312924662 925407579 529746371 616357704 17934002 768398764 866828130 518969093 749296843 221341729 592874547 792171809 458818668 324847525 308637913 176071130 16688384 985379476 801503334 408553918 817773403 453452684 210411070 90293422 346251060 481869472 105697125 323307270 63092206 469835801 374567660 995773973 781083123 622280795 114415840 626569451 655176433 628985571 661602892 383053809 743240462 848755068 328430504 974593443 184933525 223934614 734448409 27924583 113918297 808219544 347697270 995183216 968405090 198133010 800025980 696780417 535022477 890628627 511043833 923711316 984559722 52733352 327976538 483820119 672378807 154634881 96407842 334944802 712824098 212131736 760526596 924632884 381013537 961082733 486704025 801508578 904938160 388898759 50154428 349712059 569746960 534651940 63161481 56857158 516647655 532548962 372919716 697910992 239070353 697119321 207979331 292632283 260558832 102342343 869268007 91083016 426837876 465430677 621329149 900877618 692790239 269582303 276369791 643640862 863809867 48401169 297744877 36941475 188812077 206067872 48354476 241441297 304635428 862977858 679526306 695393370 165402966 464553533 444140860 861910708 103753448 101382128 567440232 667036217 596176519 813855595 777259025 927634309 393985495 334387378 108177513 370660380 845595834 485564726 827217133 466046173 404082493 277766370 280968537 889032530 800848603 399295528 852960469 483886996 114437379 820374864 171380120 937379680 840054744 514067816 533967093 141250283 920697703 748967696 161424194 285600296 392201926 281952178 799332839 8518527 548450677 45917188 712192348 359962302 803022094 196987818 678584569 791632471 492851225 210005523 945102921 646323264 825128014 914429385 275432279 149879842 280921702 39525956 855887714 775631691 503104020 609457266 93550002 766456814 624908339 617453478 182634444 395821495 82123620 472267500 489849652 64221559 434717389 277272769 321990085 220928151 720280733 265106508 892651885 882290859 20914284 587771146 889646973 161277143 510282096 142481474 750429536 470024715 885444240 672343734 448316066 592992104 856847955 32497100 843097293 85335808 595474730 8683589 483297002 256045402 746905105 575322483 541433026 607067083 902270663 923676995 151297070 505565334 676703905 374087105 318419872 635672634 332427036 490313973 313940759 48214314 467172853 991262042 66183386 723905459 463499018 955142711 296470618 443996349 186019369 921207027 45265294 62267724 56666928 839026018 435840040 867495014 397341514 696420104 829963837 557001863 838980636 659017777 448557920 975945613 821094360 740213175 34527240 695283379 470530568 687277800 206064747 866696336 864006823 620368499 403618314 68882091 588441311 852090980 578614968 136343215 983189179 85157143 458488188 494597509 824013829 615291028 961336235 491025799 573678443 681323804 734185838 446175832 993949438 298174780 479054483 721033687 62804146 767270995 529094605 461575141 994722731 240811969 409832014 330502123 527105597 326104299 64917205 654702389 540549046 469897893 934143194 988584437 999018381 783102829 785449231 485830542 344192790 862903012 932304298 245234795 215351011 364332821 874934585 653087441 233084454 285085596 691622122 560747831 599907752 439115748 252725623 432124734 684585071 807284728 518301635 223575938 187708478 198032152 291895471 363125714 113811274 954173565 293614524 59131062 202045223 342437768 796935733 766946447 592137199 171376239 495283810 647585277 486494717 107770545 448895510 112009396 577085366 648986537 881930096 678378895 325622747 813689095 195800487 984161780 398343718 899293926 423082055 373785340 626333731 372039452 325448054 285380094 632545377 101396201 694734786 876954385 143305383 525223601 489431439 834341659 721602304 951226110 117378985 2964358 233187875 718456695 704401618 80755531 897765404 179223615 149511099 927735720 80772728 601218652 393158273 756433576 586988758 850911321 260895828 267884630 18038944 472010554 305587455 737476881 870328063 936813372 197032138 261192660 349193669 584877694 805770614 764146618 836752160 959978530 974586017 617717291 41416189 74339011 852381925 824283207 784258239 944236580 808289839 741048235 600208876 408586510 530747828 746332962 108639664 590197075 556037247 263448213 327252283 127792901 954243014 667112378 722588613 808108273 658507028 75076410 84516362 668223188 450572163 612180276 195119996 157057396 478057045 759381574 139985254 791686542 202164218 77409501 844320997 944738540 124502861 252880337 79258430 804279733 548982111 699639219 669979377 158683796 497327396 2063857 800657137 940591148 480382952 1782522 431011715 572060290 950640532 480660324 760078843 695184243 8107189 152716134 460665320 937397352 754162008 532872630 186909150 961952716 700003341 729502311 706327417 300805262 600066270 327070486 917661897 363053406 113397575 276936581 160888423 92566901 689990347 134322167 55562628 790988330 34049350 640404644 767925065 803027443 104059637 445847764 505993681 664415806 905826307 262663927 517129521 916634775 863164370 995116445 462096507 249992251 860619030 282408328 903327823 647442296 644793245 315511727 267719693 765196842 984049825 738363178 650692247 15043332 600285622 579945865 938242529 987767873 142631830 725589988 55815720 12124130 880851411 212200451 914447842 966873366 47986601 877603308 152715147 922202704 626839250 997820394 48997852 54406010 623681510 696389845 502653923 542869955 200360009 174523923 687399227 355202776 830853 389640553 594051289 155047623 661451606 773121981 490511390 982254386 72445363 81944261 592150302 910727664 768031774 785084646 557695034 938444915 247185336 589038707 805222067 796212408 334864541 120156889 395117899 889352680 693883629 756228493 206988521 167423872 336219451 620820878 782984688 214549930 121947686 27168342 468715186 932795020 652026359 771445805 731009857 260122411 363957433 727171528 70142375 949518713 726506428 162078931 736743447 656491625 360658790 325157793 130411711 893370937 469052042 504646524 666460098 331648856 773065613 185637472 996231042 799961161 571797048 734739520 142500307 428215921 430481396 658967733 175376030 990752396 900917945 510736157 233230704 148042001 701486049 422039034 85628834 191569563 301832295 746934957 306217759 818087588 380298637 655967563 905077565 649365094 44292045 848358536 927625933 653539481 932085179 651028789 809943594 605762617 73030901 171042189 980472365 802407032 591272268 965584854 312453760 859539036 523056513 787354158 860388921 163103770 810519593 109392171 961163504 558358772 675278258 987728734 452504637 666941184 326157199 899560398 447829264 340189923 724909651 313283017 687218919 69235339 116979531 946622848 99693561 123600729 587568594 456602372 636200248 412776842 659358271 789448552 230588515 301878540 876523971 99639787 919890622 157281192 431725618 771343301 49252755 902248845 304157984 432741085 230490383 751646201 386187701 459376018 851605389 971857811 775803984 663778654 355011885 597360944 200166377 835606620 669104243 656406844 355694835 130452969 987624308 17766509 818807103 541706717 970434590 845904590 134187739 732747260 19446222 918087731 860238180 416182067 35802759 780636214 489852936 829579086 235323451 355504637 422955074 668245753 519842050 864167046 397412743 797001557 282822037 126569706 477230131 122225880 819919993 819368351 500266743 561156910 525119314 973081168 94742960 903868873 609333973 374665005 812939720 648823855 476853969 345156502 590135121 531837840 38458848 605944630 102412235 857374004 140013424 358035300 871836863 780132031 174952362 758115358 915368058 11541346 456721213 268957220 125151798 722208972 706171167 582258276 699406971 962204651 844916480 130255202 343288324 347614058 227187758 599180751 283224386 724176402 582200160 432246480 120284685 764395981 171382273 284124249 930350772 131718455 763183087 22909516 701679891 962595469 207002924 497267654 702659187 834230632 812284180 324318316 854999581 193054973 571911741 467263858 509104719 914791083 822503833 992345403 112114962 221972182 925852545 83380470 139668381 605564127 228310085 608222694 63554696 623668093 941862855 281537052 226657748 816749502 238294924 595963982 323835806 900502755 165419336 801903333 571498499 57062144 514515229 321606833 828789036 951939494 612537383 746467520 261393807 823277673 688085958 521167387 844732872 192466332 710665606 141026941 927677288 990622571 932652191 784789151 216456146 663212496 630086676 247179903 667781427 48261193 20645282 314924652 187549085 835338899 345479228 23510859 767704629 181741556 837299422 923858027 243790286 323031147 32844147 838794137 967711655 136046832 191466427 755172461 42904438 839312058 720123908 627526565 455326160 182240482 512292143 747204572 160791263 817828194 113127604 848116714 22675304 117721336 86692022 458945080 626669967 195937323 983302843 77221073 378763800 645566484 595933558 183878860 784575779 503827324 892090321 191165535 708843419 481064254 20952746 845879630 277026882 231918393 988294785 683035300 311988391 139558271 814160465 953234058 998164407 674457321 629019069 748426346 629841484 802066666 713635940 313136657 439179610 197815471 824443459 674142416 255775331 891884982 814991039 834787708 640535034 42613749 703506729 693700722 465654623 963292256 388314163 864490066 292799323 538977996 644186279 435949447 650426866 894916892 390134620 550113826 795042347 595991985 125116673 496120546 986243106 739162855 715614573 645820990 104765010 397037512 285066212 173232852 934090113 645809971 853562609 544810843 683258499 80198116 832149426 905291679 985836480 317855024 192285149 34466115 841551814 401869888 465870103 451740415 696446195 777900111 813625768 878397844 727708570 709706113 521803081 797873875 329935994 796924081 21159016 670412530 296020590 172537893 591895367 24503098 638055483 197009998 544971558 769071714 811605228 599112496 835029488 909262552 856311133 374918002 500769123 54023295 145994541 382041524 300644921 274756370 169805918 863398643 88923134 597031053 425021865 302148370 81752498 483993894 491512364 675357879 315589137 168541277 354494731 135734071 213689017 597149911 977172002 735307454 735769945 683996653 3267574 872038630 539068234 369906851 400371042 257124053 536104668 371185605 501817606 67489510 366911530 567433684 440917716 361118821 585526628 75031084 268418795 211570172 147328927 526443344 514626568 571901775 542232219 251721957 885120817 717690406 576577884 750082345 816306341 886326876 491674980 104261304 740931724 96298804 461102978 227488259 717924736 720512810 828961555 538256440 296144208 612474837 462465390 212641805 620575461 290174555 985448672 163173733 251931500 628900236 175750416 855328942 605211501 531306682 886013964 80893371 805148626 741700863 40619384 76894765 742708590 901634845 556383 58193198 157202966 969981875 540038976 513018482 57610837 85155581 362213079 61730439 138030057 50977492 763591316 400079919 724249756 36245450 267860131 711782840 466699027 20636454 917180870 684965353 772868021 972497345 588828819 838192002 913557844 74054417 505694017 126652075 7704992 345753917 541216970 686318368 419566254 460234797 10644862 991863765 173283675 403454628 109448030 888108870 951806804 946971023 526012396 622327828 80745956 856776638 259326050 797993014 968896410 851717815 697242222 808133732 980473646 71776332 841935432 601608446 55314081 998790114 385928396 395622274 795370032 640035318 107849256 80223491 255993668 864444001 432382278 930702075 7712988 828531035 678224208 870187209 528061206 11848295 900170053 182385690 429585814 41398800 764777305 937983283 578335275 654015512 443350493 586564584 99686539 628115616 643780991 711897564 530103289 868875027 182405326 781398421 586293801 400393937 663574697 588336046 346078558 129339240 300962762 290855062 834039859 989416431 921502681 187623221 550663031 491004443 597729562 58295162 781431005 252348596 669408990 210647340 51021167 79061579 562856139 718343400 434012814 815543218 168143890 433914281 551456626 135550774 786666661 597941754 262412439 212679259 180065363 20800158 421927392 189076298 31478872 743716434 958666355 912906194 155382579 225824244 496434664 418753008 66059947 117808166 566654751 177900571 802922242 69705573 919795877 407513631 61291364 162790149 679986440 607929628 232980284 89719876 964217108 898454353 952075068 948058789 884150004 39989155 401591882 316853923 767059188 442483472 701349463 204046255 602803217 208137174 840192689 836932628 225746218 3424682 910156318 645966688 465102558 177859536 833027546 730090690 800018851 404518680 320520401 710989996 2025289 322240619 568786102 523344793 167044090 352106724 679781452 160771247 790048949 528805311 865103856 93538569 777031833 622743958 11406213 687911995 13283365 341008153 299394294 929461919 232704490 319843836 167960885 127327506 997658274 522729127 187442122 105769717 833165115 55226662 290779137 620283832 349897733 431059696 63611473 901093014 255965886 641746791 4568635 534784476 124161660 165547228 507836249 228943269 472780083 951613217 28833986 593815996 523166077 962428034 802414790 992113860 143672228 59981805 426108613 884623514 662110945 189059598 440604911 77051851 436962990 222986011 77896145 303426442 685891329 500420369 705983493 193962579 344296599 527216542 754207148 884612543 830356157 757112456 437259730 960458179 88147762 272447268 189716094 527139927 504050562 14345930 878939181 174657455 983299021 847753033 706480015 324553712 755534278 760893613 885984477 937746883 559105962 34176338 282321764 459115024 403238271 664699873 999819606 266366432 284041181 753509816 77923448 316744099 262648473 209630393 439206395 991937883 596265954 687313504 508113545 70771216 16823110 970044833 878207215 526045332 977415939 940703573 685759474 285896345 387268924 917742025 560027843 944131984 970521259 342012741 867256234 452356722 149276031 932917563 194265063 155035557 85900462 964092149 585387246 583245748 822339392 16929489 834610175 151921216 760432723 337916156 403925865 298903992 940253421 845280367 684343412 592432583 351250875 87752275 610486275 820325697 586887537 658861175 701873855 823023895 348018935 115522096 377120739 203241393 257079319 412346397 4154949 645586642 458857213 560115362 276113707 87982115 821389622 872910110 825256682 729036356 561127380 641752975 700682089 410322074 138698211 450840524 803549876 312926402 578179570 183728952 224788404 713272710 868198550 305683220 35381268 980624570 346309933 939547125 484394971 937944873 801105894 591032361 317214629 776459186 402522770 929888769 155182487 633707026 729046332 586886203 291727561 87288436 544360348 723328623 19170263 301567271 634146554 487190511 361970103 225259453 866349077 789109626 619687682 670072877 281832974 154469840 824673262 16969482 446995188 796414679 568665879 467130935 210859255 69533434 188850178 950900008 684765755 628542779 550599407 208046367 66055954 485267232 311726339 636004047 536842591 22217127 642235871 301774920 783108341 244680422 474684936 768703312 648403744 588791705 830895809 179168981 178250272 156780895 571701477 541656487 445872277 648939444 562332314 439467959 961483893 341716744 572012174 831584854 596476288 952739115 618483401 219504460 39716063 860677114 638169115 107346536 845668443 590454906 444517015 836630250 856780588 235008621 64191062 194589965 400368973 991666662 904294435 27438229 373793587 961778252 410692230 313033150 757197099 203605567 752054862 851424637 917831139 22270802 288704680 490931279 532937341 60875264 642729294 158332951 484817843 466192004 994526172 394643537 159050767 631869112 63529096 735442727 549473592 843188731 153236579 204723999 310431424 779152230 54005859 713286475 774650733 809360983 4394742 927708470 882504546 713368031 186870593 913413362 317298591 191278726 598642721 608150622 367913779 576882894 377442002 548748307 559576555 565299631 4146088 332259434 937613910 66191295 51906519 100394475 987254946 378161285 140020929 984682991 999120366 200906382 445983792 473284419 554962270 898847673 1648371 39947931 838528287 692924180 29542296 429264169 414686719 729155994 378832560 833996284 977316777 6765283 104720378 982673564 731499344 120463945 373291089 826539282 93200014 796642691 423755473 206931334 37681700 94789501 914268473 772863742 258596074 964593214 216485473 78476604 113363965 62139962 650453994 656854125 899333196 531583294 391625230 420586009 739030085 910925505 736929583 341651548 905743047 718698430 980027720 729813994 37138934 80725292 359501671 164271704 607455029 593912744 749913168 979325431 131520776 910896588 974332037 220235940 20801564 114389065 324830687 472007946 336110485 711601178 55748705 853755287 234079805 148871617 556460467 299037866 825572070 195814104 768925056 296251998 273785419 462110824 898380075 661806553 962465465 87160033 401539482 342379055 759620509 864561347 429318604 235767499 390273185 866912823 51926580 975250615 637581914 848483796 281354764 765327628 758279859 934662396 240601023 720472724 360725425 236065412 60335216 186348888 651495079 635296247 725731776 549879619 108017068 925490738 292371075 820651368 88558738 223498653 224390518 35560929 626141849 927441295 496153269 600817360 603074038 250327828 985693306 156082182 877362811 341249717 309250200 411829730 164711193 734817133 642630633 85758056 602886069 887049955 529555559 542774549 267724681 64841194 708290898 831819259 754081800 582229691 569463026 93227441 254827600 73611463 429169064 714877878 934704589 985665529 740653828 650873861 594227504 759853935 403903520 629520313 665667933 664793417 306011420 850450521 870036442 505236633 37236901 20018481 331558896 945787119 893735300 702148367 785744252 804078890 529812658 497679754 933912723 277399036 465779896 74812009 791108544 131944660 662621874 715924492 205363091 115355429 758979876 275479939 716730551 233372042 371221199 998931183 592204787 455605826 567794963 373855167 478234579 449120867 684964769 757233892 761632665 230803850 932449342 9423947 252506568 932012372 152432299 584623784 60693869 24588417 550800915 491826527 47600262 303550605 288218170 310512411 228318820 532510314 951493248 437570449 157019008 929562567 350222568 428178111 680062079 992626471 759035391 147204523 990550033 85545205 405839228 395998491 985516455 344298326 94331363 353714640 773336769 922353038 421794049 210618717 729418840 842604868 757075674 732250545 186955143 57328833 205824339 240824532 92806087 517711862 875535426 67399150 586813976 487448367 549384830 674519719 986420620 816001588 614728798 773238473 491390357 376739890 951851799 908168583 210434873 199544016 960695727 448280475 494898906 930872407 192334926 648391417 58253841 342571316 359265231 22797338 525517867 74608647 733658377 196929041 705627454 353423405 530431567 280630315 178813614 730592405 765971110 458464053 711190955 353694435 457136669 896556262 46261980 659607596 307387473 15041942 566630317 982036095 294207543 557442615 649574684 602795852 77893383 735466628 217821675 782269494 29079468 408966571 182068493 210199509 864113583 94043063 752342736 33907294 317266065 1517819 596036366 961427001 47469062 538659740 93775322 976537588 767610115 619619077 88031698 93996219 101449053 256650014 580527969 385275139 290751243 815249544 758821168 618358795 775202993 966319646 349263091 252007479 482622121 998731211 156057618 995586626 480372521 79311575 136138339 695192921 438181842 132693776 43837831 564372840 216662081 162168036 374155270 183339933 709786117 6385714 759617290 615438031 591682184 755519821 396258980 204794616 485718752 367378884 920189397 440762204 824667430 533811596 633435886 480277745 36216888 245795162 407024481 818714626 341235028 649024575 246574560 53614919 846899891 170766730 546967270 255148608 777083984 867751449 137876422 633444964 201872758 303654297 755702782 136691664 865901299 664844269 505704860 33138167 134866625 507231802 800765881 528897244 675507176 986960905 680684791 349924205 522378606 557357553 788372174 299955857 136865072 440845063 806840831 869687593 232068858 447393104 854260554 118776134 86622712 172176742 366448012 296130053 471712124 779992255 828933680 999245867 387390857 558277377 183199151 317170481 780732898 721790790 553577722 853946774 858128228 938632180 504171529 482531992 130572486 283281883 926971566 411805043 955352202 646366134 346163133 903091364 856991480 45890721 96124262 149828917 299231002 42468192 711161382 780400995 823145988 333686289 634928796 888270442 869305564 409067839 420650637 16389435 190852849 239755525 125365864 751090507 924247075 67284209 387705681 26293529 612350451 753257795 329081673 344684787 384891392 471073812 175424828 615865954 940910231 170825480 495130167 327505695 705353739 256827184 337257205 605771493 909540417 425580155 19223818 312812744 535920014 831346368 836196003 594534820 250003986 512526079 604441826 156377754 910078727 674575205 6042842 914757492 179651891 207316171 66167026 618063716 848915722 50334749 232177288 992477979 269570896 332939716 471479636 914560517 829095562 908438008 494303561 648307620 691286479 281775047 984491609 913501330 97052910 884269667 193057524 153516578 728385310 275103734 30598161 933898005 420265017 607402409 625329432 858511223 1158915 554399094 406455334 618773345 415259254 392747660 848970829 933065483 873071646 297684611 555644300 444496579 688944207 634261531 973588450 259759524 245535187 19193253 265471514 297289640 112774159 86212986 33983212 573687682 742613488 477732554 679689344 664009715 649752654 980849262 270047994 129309565 145729113 654773326 70127491 284236176 587488289 694316885 794497624 270230175 83310982 685299419 898871708 664309409 767661202 708317388 993081427 820475720 983162253 33003299 186609431 833338391 193677336 531359573 472956544 237558052 841345358 490816776 890488286 799083032 791844373 856867723 879827741 12159071 419477926 991019761 498050172 706985311 768040106 41848900 585966255 442108975 281682843 345405617 94931213 558929646 572059287 50408797 501894342 542277753 62960631 792871079 248807150 50514103 137765350 561423255 430167030 949281756 56089484 287236079 181376815 706239176 224958065 719640076 588517218 683182983 602980757 916081392 242980262 202466275 473930595 212151743 708430537 43630977 628307371 893072397 214132450 896989294 436994133 798820614 679021285 445454067 716020859 311393155 614354129 206555881 275562909 538994359 654605381 306788696 957612326 604784193 34067601 280423634 788304654 669139947 851590476 874840863 506772152 939239566 514480026 884218500 116248507 753074418 779092029 930891947 490988036 543223087 703560743 78246551 931922303 938483721 753314789 411908872 777788514 876157419 278174129 416970749 866501465 710899665 109695745 672258824 984860758 837535258 686405940 672168638 79826284 487210798 789102204 464211747 325989401 830056707 819107856 509407992 903294831 94928794 460429225 163133391 427885362 420809461 536357706 957467084 240646263 385900589 293531803 843254277 608488181 436047659 123890378 719641800 95914493 364803069 142976226 939762276 915603440 757261083 79533168 325802362 510623290 35039175 34909082 914976403 72061960 72778878 134091035 57273751 862657541 780950329 563179256 145428487 416474063 842210278 563532623 661097287 437150132 634398621 256566504 558368603 510419521 965107270 638449528 485183379 322289580 776803070 597408638 570233944 850892749 383745143 146541578 287330442 460769363 733012931 654487810 123701330 301735116 984624693 211300904 759382949 882323196 648676623 155551615 8757363 279233835 725684622 920775486 153597442 459198884 544283872 60607852 483270307 38411803 745535281 160887517 963729945 467477422 122039352 130164660 136848672 876313702 978332060 299584710 781225262 333486316 343648139 386740577 743461775 389780756 783131774 746733760 439181684 638493770 840937268 449298855 50769166 773861656 212949047 304874325 390745182 534692468 843021058 749575250 331238404 905708717 645362196 412626267 362742364 113809388 765695148 562009443 944989086 486350186 899921972 938019340 406370663 66212938 392766533 507692966 739945538 715413455 262216192 270619599 789748089 392174101 311183590 66206704 203864796 505596638 261958668 57442013 731039170 880609654 413222563 423026393 619398407 847327696 619689511 352574150 159551751 954731342 373834140 516617128 744300715 54479037 596329835 857421002 92736005 771310412 801445432 968461462 783809965 310356667 743764778 513801374 557620365 577801078 131652254 685172540 227478055 70726689 266199800 496708903 570329986 201857290 409934982 871207599 842774154 535953792 857223645 24058543 240207849 315631019 56447326 520377453 346345100 380950761 327483528 803730143 267911277 77370918 96135545 205268450 859164119 7600106 804968503 820013918 710542943 139438273 211021794 831984969 161383081 812101207 734686292 933117472 819286731 416619491 538600311 441119550 314273741 311640644 959065559 69907184 983425449 8306135 461838990 474268691 35807941 812408832 335659902 218140492 127195146 985275172 526265105 595463268 310490294 624254937 208621749 642321427 381771786 695024536 285261554 278147192 683541304 987350118 929128718 758506954 276234156 263207166 881178645 927095824 435692502 867543436 95906717 182605253 177339196 61625782 152064894 965085091 241521848 700849312 832080534 999926095 231295090 309298402 793008633 406582546 105581470 808867481 857298415 811769389 64756022 725288190 738699843 782472665 735096300 402782851 658379747 33666853 685479902 673696972 8343793 548475819 265322686 112010671 341344449 961506346 2828603 538519884 898492799 277185154 951054433 484304803 202155905 680311022 539979812 327318160 928040409 345534731 182328193 402108274 296280334 481676819 22777231 606585432 501845428 140116493 648386322 654229992 189775158 427219254 664671670 865942873 118488898 317566133 746853418 502496436 105743347 743131446 976440318 363214480 127405467 941631683 332346479 32643935 560701695 567163688 458445831 861275554 828009448 941940886 343698966 476581640 522302007 669830551 511554839 460627332 712076544 163054531 314419061 437104314 455262900 817793855 93030282 705185866 864877125 456191716 487954105 961978218 112995731 374430986 204823994 851131541 175736887 440014554 689800144 423180877 411075280 739554735 631517912 692569166 789791589 696930494 215213911 633588817 705085405 566915403 884058592 262675997 208872793 845164533 326769587 597635222 753668942 256057620 489074145 190562396 501176716 734750005 21254978 567808056 435107489 284974319 414233192 926964287 192916538 176700853 415264175 466459355 233757769 765834808 788706310 578897808 539826692 275145841 738774085 380767843 244597711 916392100 333955918 923328814 932399219 298083165 731436055 775314260 113561553 433530456 284987309 782741960 282205319 591387021 149698205 235433959 422846584 945390610 375265379 837438965 85713693 946128222 657814631 439234746 299757748 874508011 924215149 510758327 749859215 173895831 561592402 467233184 579345265 198717105 755167155 817840858 10153144 207018907 542101680 187268836 313066552 725689429 67153579 358412983 361817059 525100472 609497543 555897331 448550201 707136053 762804647 937388374 541847636 937129385 835417082 729296458 662956461 495657272 603958416 119364217 254780204 231855650 870636928 398658638 795119006 278514676 162328404 544573574 342625244 933564374 39091953 353226068 756210622 106824733 73577299 518119420 750738263 210888722 111021063 14277720 111245505 82522459 790522654 1046135 25956904 198993838 873880231 738827090 800137151 254343017 722842932 761220556 795367807 912698424 56017397 975625132 509813629 365670280 663513017 108000125 719664416 626078589 617566035 540711568 243429117 210511349 14611442 133660379 398523856 119834573 647851017 627603324 766436885 789514704 703820849 666454891 612890536 396638137 852664712 40972985 808485916 477866223 92922565 792185146 361367231 266533693 341005690 308657480 234213536 256568075 435010612 999075726 259337388 193870568 171396041 247724374 603823822 286047570 187918674 965165266 230556715 550398697 502445360 52622923 207018324 326726187 254360759 546275948 352239577 559682742 814939716 211795030 364166416 287105032 168327338 427766687 239074610 317538400 371073861 577391708 818225145 276781416 223323731 539291656 72473421 251038391 875049933 259372210 406763510 908661050 566813112 93520176 922518840 889788033 367715255 956421735 944590051 188964236 184303589 658910713 758300232 718853829 541834907 390172905 888457626 737730950 485634907 711381462 318591843 479642391 184298623 555805125 630709929 113789296 667255148 751774492 772421409 26717354 774840056 384317481 219307743 791629758 826566588 914203659 546270983 460225957 884029792 231286995 131649395 830431730 57378369 793361620 428061671 776006399 662403637 783949881 467601267 949051845 379471704 761591947 589001444 945220321 305601361 245910517 80505631 73032095 989637881 696290178 631198163 552317555 607719889 379869254 562508112 502788125 980378704 709232073 566979655 8758282 770983609 549052306 414552056 328133148 358334598 477420543 668640257 823776398 209054112 342896075 706032724 47126136 587047437 181662612 542348303 992756092 140727139 825219021 244321336 526201495 682378800 284055712 902359780 311285887 874248285 790546681 758938988 674070046 612453131 407188138 628015341 58789002 7555441 322583128 700314530 538881557 400435660 161381210 788061466 281790927 138104032 894517448 395512864 548973714 600128523 519479602 689653644 75746132 494981701 754350123 224133382 161298782 600237300 902728144 440218084 377032000 883950306 72396483 322082915 869678126 860314665 961955787 842782462 280175233 578489092 605205227 408610911 600279166 618280724 481867387 744915668 261753847 182324800 344719296 175488737 11330837 964989855 760970305 991478142 182939776 334480156 818424215 773979327 869084185 285979185 503743807 354806509 675387415 761169663 891751804 209727162 139165693 688380466 310575356 987784513 320281089 409893004 680097743 872414593 529344670 627091891 766992989 387964604 400619995 903721661 895110507 463721845 379629776 308185678 987187730 452077263 247778530 3990480 574952374 601662287 594377064 219940459 170490472 708866784 409338709 262869609 373910068 870041855 190743361 372996844 497582105 776875621 370706839 542553022 560198228 75374090 410112836 509989460 414925412 917693712 813260688 463479556 793836043 397748590 749536192 658861897 78666833 305709481 889243783 242467375 57638428 750774539 259956673 998066829 12584484 596308522 249794662 561777301 876340667 872980671 566975488 28267523 198708258 336161418 207805806 219322374 731431544 981677936 822258184 529861575 487828422 315211195 841941194 370668380 726914735 258168317 471944448 670649029 168595652 737855664 539338625 967623367 721903118 421152090 979074431 249344392 204242111 477702161 71855427 14814246 492021919 472424579 720276522 57544600 18986128 550584430 465535107 611551011 262543262 528752705 206974472 231637893 57226497 840508803 750585132 548700661 581787828 121564474 372925360 441200953 417356670 162734791 348038289 788378320 646606103 529252638 264714233 239903501 313353392 958923222 286206238 259820956 958963363 480299378 341511715 136035281 420742515 525025198 53964866 583835876 265658416 449472770 877219162 662380692 52603376 543777545 593765320 869001704 325676275 707923380 795755097 924748794 83019851 386167109 999045994 882202250 121740961 933134088 450386322 175661198 35322185 254854660 666259029 203252279 752686665 608240663 368164411 371216497 817870468 170782005 51522028 337435295 723749002 239446750 355015992 528317393 306550022 151874304 577540824 72185188 946484707 681450171 348547097 650370527 431328712 968827402 492798852 756194557 815110149 192222921 372823630 761705116 557634406 310474250 255147254 975043431 663951360 735028198 273496291 399562826 62367127 859734358 340913834 191255872 859625547 741867191 40955505 224775706 716026254 847558141 138080389 546334702 750361568 937809610 525907730 876953858 421210445 508556886 666219917 684208906 418937181 773372140 885551984 703964175 997531168 557966786 657760898 301923151 291879620 599542816 905135316 798791386 820068624 837193648 974550353 588594517 588109703 266667672 694093019 625462076 148773670 883723844 876910263 552952078 485716471 752067494 956895143 139806448 387608300 926930086 331601072 671647383 845538149 722546637 802636463 213962778 951628436 829195378 148014273 531295784 629892954 670377885 833355499 328439119 953777539 960253068 863726277 623002711 432389469 992126230 724541196 470761482 252561230 579129367 771702101 395056221 863128531 153305155 679644237 472538060 271327744 991195069 354335760 437371736 832291137 99255591 95161261 190753115 587638905 625442396 245482577 893058448 376764213 777012812 556762842 12761378 355532130 433024116 861254728 156958844 795484698 174751223 33875531 520202980 594754033 259670331 469716403 712544666 808962663 329923417 30413819 798382753 411522749 123795744 497542941 829358061 915520298 362096072 408057402 823686599 322799305 952107949 53063270 674274127 915811492 208736487 917332891 591253406 72599596 581326860 547919328 490550440 34384697 839349004 837159935 577757467 600254256 213431917 152039483 321276340 841679022 182354545 434801232 76577463 802499241 580442707 316657985 638235365 586247805 514357726 78451552 643271738 776539207 125888623 393749647 870289458 662868312 185659617 207073277 845629975 928200488 816819836 893248671 458125695 252505795 582482637 40121076 18870308 754113426 643777508 363720986 150341854 60811041 763074875 951473385 557681007 21756824 951205600 517239516 439895603 625954726 560830942 568868207 906896128 792557447 927353710 854376319 78492455 791092989 958356749 361984900 308788549 309776071 503319429 41789369 556593748 341256981 650862535 330708000 653364114 101148387 660526594 730846758 654646723 156342815 988905552 352109728 169109215 6344997 826803213 37858530 897460884 139058734 372129263 975135555 501386625 23008149 937656655 833784738 822869076 737224745 527072389 187873877 143610139 46876479 813231511 590227063 993321708 466864381 636859247 887574775 46175889 831105167 407486208 661738216 31249002 411930200 407767685 802170797 966455743 633578071 871101994 309631321 845054359 247184928 807646154 778354338 418938915 763716672 181345579 762447225 495537119 126471120 518163078 528779448 919709961 522734522 419129805 489569049 317830922 155737882 231679416 489642813 127122224 851999031 675251487 229381394 233222147 453387418 557816656 51067085 30822434 330728450 532067808 811836503 640793427 851802234 231864724 878806449 976537615 258897630 955684126 795241199 758961276 823921848 689113076 440085418 59132010 1959604 221903949 210438234 524537879 923861848 361871260 472744605 109794776 502164336 895361590 46303684 913559267 601458592 645246421 438038955 356837837 293499419 38547245 709586020 12768993 725604030 16804575 396676003 989399937 516289374 540132101 86601229 407269237 752343581 206910419 459705176 407203726 990499539 670903902 299819769 502270774 807035369 674275781 543650356 295041353 310608598 929933679 103733732 962742177 20731196 394457568 425415641 541887678 882824201 725365036 21151010 78875385 169335945 111560272 673587313 242415180 377220774 108686036 388789053 620348782 311109196 619285948 964209416 55548416 23493445 830671156 899642176 509206723 572174496 523197445 596782815 442131107 963161322 752111334 644532793 328872822 872088808 825127779 396373330 659000959 732401740 245642843 575054101 977017088 358065925 773291889 687725609 110914857 588434036 711277407 291096842 734119902 586526611 115575817 432468161 754548869 709272398 169378564 41653732 821245068 496224889 872427686 917939412 676066834 359249674 368401276 610146765 207042036 396095005 737782870 477147555 158730923 652064464 136954687 49430512 589914858 996310175 187627295 557201409 2043633 351987015 356087932 452416245 853900367 659863878 137671114 762897491 871796718 893513073 852233972 575151382 78018338 71367431 972636481 587582643 40286116 406246882 876772592 545826024 335149022 682618419 28796552 489602129 625717756 599119519 663409370 678783363 354404062 387155284 562342895 988272510 157444141 342915159 722681520 311479012 229746202 315450079 119621869 956299421 759839102 303478257 642268798 44436577 685406009 514520348 113641448 627171034 748877219 979250741 102411245 490426362 977462909 222377910 549121432 894228290 201491655 204997649 149778737 809001588 880313310 727434567 932952520 114433689 965128593 376246633 788011056 194359634 473384037 542715654 841338047 854702413 265105134 608334249 884567408 598632393 556027435 972774168 387976653 589075086 392517722 833196753 587282404 657032958 302560199 996603158 351117615 202936413 246733551 547792578 45032620 253510956 503680955 369292999 559541836 576977278 886813551 336815038 43058840 380502282 559954106 138449191 811969678 514237809 673376240 585516479 281016353 36454780 147077169 965327889 714011400 367998943 787611307 883009956 311870301 239283168 36013892 739095378 565865416 678575514 802132361 156028214 526578322 585539176 919989042 788446768 614282785 38386811 224275834 926723130 524379396 241936093 537401506 971751577 29106162 790530756 283442344 633550547 129163194 775689747 120772957 708950104 714711285 333442582 797016373 249098290 149694094 246307915 571497985 972591084 553347823 482411385 740302845 324947876 852417249 206577862 255421434 861454568 539900982 818259884 289938739 601428427 548613390 462758076 344371837 584136685 551899416 850867462 675056006 103569207 767888306 608261319 123825501 426859773 259804163 669977926 791807382 339083848 973317537 204735142 997669386 694829305 828998435 427904515 340921200 129828322 461387059 795912423 595399750 752694077 657227988 993180113 623411321 503292838 92748497 907675070 23684199 373136715 300416954 686089478 620638543 771180187 254863006 419408816 700623832 74108246 190442686 66007967 238213076 93295021 336893923 961384203 530807518 130976743 584793545 416423112 241293986 135261110 932611991 709428410 406820721 282968653 656036834 809737421 512745924 724708502 52082983 426754193 759685857 212824689 107216816 817730140 643967420 3170918 519074169 504817647 102085864 834580736 896557570 147790192 2683043 366273026 57455794 522318479 763643378 106212062 738291373 987831804 378477987 7742555 93768596 44354028 695633717 795748299 969887897 628537614 724755648 182738891 738785840 678144556 24639788 157835593 95365212 332813447 583536225 986093109 895488571 708343681 309838902 426847917 44543284 793946217 797991480 751135392 439137688 192257906 50469896 918236683 827588609 437746070 975544486 686487779 419691567 243232541 999982114 946385282 250281803 818134359 502959495 22785238 674669823 472388494 837713612 918767178 867832399 611436385 151202953 839650549 875587796 370091481 686139458 658787851 997308278 32217919 503067449 108092828 554623736 829729540 377634904 310390607 106737594 624933614 82182913 608771167 256724350 992032549 548181731 972896325 872857093 360459865 510531385 151435620 801881527 228235874 401544888 952370909 110166299 983373253 196020621 508875329 363289488 4778232 71150179 877914683 668926075 504955410 613941415 381043765 308117614 832044491 236907824 380213912 568797665 988271461 154849438 512191492 419777763 746250367 767664519 699693984 940108174 484605615 241514425 228070829 866647725 650044000 392606349 280760171 670644923 50649487 555752327 841413517 347339707 168517511 528490962 28096434 390141197 632172127 579893772 275535943 614936299 644795575 276730240 978500182 728034714 245242317 436791972 221964622 989964570 773308297 807254206 69824165 652792853 878628224 4088086 908764825 60207987 901015797 203100912 523190537 779062727 668971772 941580726 337205657 568810919 737522452 61664998 788728891 397512333 791946143 664525266 804733265 772303596 498330329 179796005 351234901 343942188 213627013 351554511 824645385 889113591 83113616 142966749 681857990 348199502 642273661 36893457 271522511 396145008 44931527 957255752 566807187 101249734 683673587 432545129 922878238 961992282 297089841 184058607 208150806 462692804 712491485 913547988 578306436 977738974 717676620 411090849 129737207 768689937 398936607 154224026 481320569 444514452 374953772 331816972 244363734 403402397 537242289 326878335 980826027 594254349 382391342 6923978 905575208 415575678 470375750 690468221 541528024 938478963 995345679 813545563 70999187 837172176 600607370 61648378 105597329 901123368 52779379 436406694 56126021 496754421 361783858 949289214 837005914 686405833 251393790 102187920 661100750 117821916 771529596 753083090 729105701 6773389 569144894 568296307 528731041 970834347 129049985 206692380 487911860 641826248 95872801 281226572 731920681 438855991 986063370 900575367 963972269 715986699 604901695 764966958 395897367 924370400 32800607 854254038 851952825 556814095 275155596 220844659 416310760 926579625 267371573 154636184 671750080 4672454 235105846 516874038 384700824 586864869 423296104 366023569 362454158 530849433 985753885 847188796 773403606 393366111 485719565 710113595 90535569 107924900 798355437 568022084 732933946 664912289 705735578 133132457 318245666 706616785 370074671 256649498 402304287 44888328 534693531 661383550 884980312 305201195 907151333 869108158 720896159 227688481 371548725 976717767 988164380 178196586 497571704 841292796 394260763 863816040 861537006 870602785 393605083 368765605 492264265 564861872 250726814 421493342 75134708 946866208 81591158 609529882 619139378 867636309 653015604 995254616 427426125 955933178 266186607 547374965 519560262 199207211 729193172 220891386 746162134 157080711 665547481 981902895 584866330 995380592 451604243 792388550 462633238 582354430 495786768 818385683 636346122 16264020 320079936 849706245 941824061 117566471 329400664 796579784 849055059 980827729 131120975 970706686 876429044 211694984 839197723 512966342 128384746 914430816 321286717 172676790 768415060 222098044 139159285 395915754 124977102 536520867 183517229 895561648 653005340 124771681 920193698 872151372 452453716 540581579 338191320 834739895 51101845 432053175 24334692 947033073 909118887 281806297 986425264 729969147 47587292 573698802 631015108 724778487 221600262 332684814 974095762 861885942 93708159 847445521 377104456 367576708 284543542 972209821 359110909 491951489 940116214 927492299 108119619 230379555 61896288 746633583 767564093 695960830 909387562 282481843 580116594 905833783 667858428 209847569 281993058 927010694 501836527 213803360 208712187 274805476 9918646 876381623 618546068 747355405 760788302 969706284 222983607 315358752 50822893 376677204 702287213 150230625 289698365 349296777 976315716 172683184 693984287 971263038 52985795 867355052 863366322 376050391 307384813 584063408 29940122 411635266 308263250 146735591 281837555 839828387 267054495 804228221 607964141 902717494 102332103 783396014 171803948 661327001 207286532 84921823 622461251 440068088 135531491 849036789 863488174 303412258 95801924 716005845 433580768 298541237 590405092 835942642 875468378 453949956 434807174 127643696 394864552 663420822 553190304 887634298 358010799 506702017 516007916 510356483 986054769 352982925 353430342 550287409 832968449 111137927 426077018 171018787 244074749 573047808 933899819 78778511 842275268 378060324 363130471 121286121 865414178 973207525 24652744 206993231 414360107 931849808 222623491 100577180 321723090 42869183 399617454 436762083 897618099 715410326 932398797 203313843 770062680 113812325 644873208 533138002 173868141 712684802 762542557 708603429 750146645 10657061 15952128 470421565 144611392 122713023 913666000 663325440 451532258 996729426 946002595 19206983 171870922 280448390 938950217 26004639 144980794 992672782 736853408 897365804 822522569 998328424 732320883 215165520 885085547 690666594 723731860 863556562 394382433 983489038 136437449 156507385 5929675 630102234 36430526 170491120 814634993 592505180 112333157 166815069 954320561 885601148 288771605 413978103 693826659 687399409 810856822 371268405 683054337 209674432 677292371 884355946 676098134 605152999 425905590 485248876 606345558 381471893 399055627 482564103 732994422 832822673 951265819 789448821 456155902 620463363 858083994 453051847 231713004 803431527 622875371 266093204 170591542 144913116 669224400 513012849 936011699 538174958 975791497 920169740 442566833 596428356 946781869 780551031 140256004 650749794 370707837 349286697 515602838 70078398 811534534 782569890 58990097 669264510 904423054 71479963 769822536 479074307 917968005 3366309 111749071 802434211 299222640 571835285 998066400 507094012 87267132 774812171 365872086 851327284 467207163 608411362 515595479 462804521 332715837 661964850 692838040 520161700 583397810 296885432 690102674 43583915 94775903 479937716 145430426 19225836 891128611 4631534 810529061 915370470 89938143 504226203 869689176 28365863 240892018 992784395 488254477 616583077 117016132 103274839 253834265 714454181 161133386 734513820 923792507 233066438 231327864 754190279 872439338 831447273 760830374 646043424 597829816 677336484 559004686 5034143 931262920 654848917 936545082 23165835 958287867 992645959 655999587 364194439 554734082 288825579 471150655 154307513 13859558 186082891 198590678 229938817 407316979 219167047 328098612 799001852 558044910 596849429 534034515 358394660 122001909 500619720 706994091 773646588 323989032 278229035 926201123 315257169 559428059 2830912 960782024 622062355 534189236 47524125 752137504 497067339 103721826 156490624 256804646 670571618 330450696 807094408 320756481 574866087 852379605 398243147 792169562 430195302 352676388 918904246 833542096 639305228 767512094 534272785 73109655 178272413 735812561 848188436 789811616 139329550 563857554 170947063 276691846 952441937 866213694 177251997 855375803 431700514 232274612 904747169 52829286 379523308 684897050 153736598 316573792 582199294 996846937 258379478 489931640 695476103 600104773 832445774 165085646 906331374 596962955 12711874 338997757 628642152 187490507 288430057 658870157 795024064 638709414 69215697 972645752 433324451 576554925 644227457 453030004 911338672 227708287 399360793 261429612 970381828 162071571 334746082 686839304 951749460 924052353 736697438 233378811 757189549 971152448 647371524 650434858 475958522 774047 424740235 429976454 975389818 917335096 713358107 320895263 850980766 924815820 204834556 550532935 422920395 193429089 222783282 817413451 770668355 535725738 416457587 7291434 808435312 862928148 245630852 361297237 545121249 75526900 854987484 365817204 694195215 311384043 210369148 637182 972702071 14422953 395642750 860335212 794197073 678471775 902859295 793121994 361291595 724469152 661493288 397748677 181012792 288763701 181528359 99552517 539218312 438228947 355602368 761051387 588580495 264666746 839983744 75927214 937000906 408757231 653922353 819892618 749399890 415178186 449612786 823803086 32946754 167354398 268507433 132946554 79883924 57560078 79918413 159491662 751428964 449728867 252441973 635623117 746595356 346761711 385298655 572615220 568963165 351911465 336606400 367871889 455947454 740719449 12343340 197507891 464339070 900287323 146715282 243867100 842538385 991219281 18918048 151115710 349763294 209125329 496967316 860738514 554068916 61689453 933841783 757548027 586049106 960068563 694468104 497281808 815400427 104978001 859297501 1960538 227183725 201570912 312274082 44744744 812164162 463159051 798017752 189520231 137065640 154919142 15517144 260363017 65761126 961264592 223562350 714957509 558404316 833214749 545304434 801743607 89428421 390360959 362867246 723143993 108601276 272218409 589360958 61310764 176232806 35948745 434522389 522752033 625485977 966777709 85817538 517086254 441652726 201361653 217845403 836492977 51305226 108430933 623919608 421457016 709702921 277068198 729617273 387557510 698018044 462439074 845261218 334257260 429759297 575321659 311171164 801419051 427685854 705014633 819253532 576216847 375474352 907181669 956682719 238148324 331246606 487810768 999408690 377511720 510946729 564149275 296692973 565275777 888241491 917357477 577342006 813815147 6158968 11147971 814897316 332035496 153839853 849695810 577300437 61368513 856367005 286399480 390197512 897241012 663367067 137497829 762660265 622775137 905853760 703990241 281377252 588640804 211747412 80050207 790179942 662375535 630461869 316197808 625406359 923565201 112905005 280062914 870243474 921935472 250357594 659463903 221993012 789337197 301433802 514199187 260829952 632399676 854152647 497680188 595013919 509252269 290559498 343655760 95922600 347553768 977057750 991124253 78371194 20208637 275617954 886103365 313966578 337387761 555908028 530930808 17545888 870131357 729778834 502707088 414970737 217607294 141717146 528753027 282203764 201693448 802733847 933080060 217019674 712742370 202171609 149566258 321281157 860729776 205510364 277794507 652380607 242307186 796450934 377497850 658219724 101465059 394296480 801182519 114650826 935505433 871098345 461827602 493258102 800973802 693891837 864105220 190047124 422408476 607100527 100232754 496126290 177962862 343047683 734035204 56859227 666265548 792063648 780260212 805531580 621261964 242251261 31020547 938835093 3581723 264170418 420808748 989300759 918076024 405289481 533861646 459125345 863448750 404462213 649801177 541620052 583242437 901011618 595163466 309750469 318897585 715797361 263754059 640157820 330556884 789775428 316084827 700668167 519886383 482584726 577595767 490888475 401608234 218135271 999118932 592611319 92167699 241767423 600270503 945557131 766375819 116617036 297660461 747254041 571851379 623343745 731944190 523978457 538902858 820115895 360705585 480787862 86200736 771821562 308185595 547638453 751412922 39009403 720824491 315810079 773366853 53918440 321787490 640306965 344048223 978130401 429326090 966044109 787633000 376859194 450661983 518030174 172939228 53900889 699051080 447034155 942884286 181512733 320089 619436327 391346975 170619134 409037564 679493710 694716184 497040859 686666434 820795409 619251695 343849032 199174366 235351971 638813783 651367355 184842738 722580663 361155774 218923615 838790107 462242120 373211293 241516333 697997695 487902881 734013687 996503941 44942758 911820789 995471538 33361561 528718147 920631922 796586456 316504689 63173362 717101558 634127835 406612794 262768154 883110873 313152706 462436210 571953144 978994557 791355239 578442167 986176684 22351147 134885476 627913794 563678771 472562223 310536544 78180239 408295940 229944909 701078056 321718951 380514414 279747561 906092881 567493945 386989108 855232720 105448087 229849817 311409149 614966561 785096454 116699071 423104469 348169024 720081555 201933039 469297106 987768286 612304808 435122824 716717965 295372527 450937919 796280138 81845657 216143475 955073740 26839154 514918272 628910006 817343514 309200801 279549759 895041019 83793329 263026280 492855671 228772777 589562992 919442282 926219959 360497016 40861695 205170099 602681663 995681892 2391341 91238570 476755783 163080428 545047434 215287164 996744694 60567981 500249323 45459936 273983540 606542436 359728332 197537892 670253783 116251897 557907995 517175643 971902180 677624838 260077999 823096162 70506820 213631184 994083933 502773677 135134260 150393990 223684009 170767824 983142464 721521620 840658486 162911699 487797537 212106165 275393576 334510560 805884325 796018623 896869764 105821983 850856798 508060768 471448248 907365466 649831747 372859201 967826249 585672900 586517159 394489684 304426168 503832390 986576199 991145719 947707101 199525367 819188410 222542748 716286759 448410774 998119769 76661712 616992742 286148242 525974551 500869581 836132833 84985996 750213784 132855923 425136395 806614148 710994397 965826408 457759903 54971836 971151680 444792463 987366215 790905301 92246560 769036037 163579787 424120446 872092089 77220870 91025299 297082687 814841106 484627852 863835501 462700912 182538782 720070713 986820310 147324613 369240840 907240078 757038493 857948340 236772930 368954780 533342993 969948598 580238821 783658781 931802727 909788893 374977734 915508167 838681875 416076450 696857923 187541799 319741778 265042938 654066549 236908988 111218832 895866734 698236937 936411988 167363358 97272926 610361717 817246404 801606336 70552671 390094803 645774784 831611410 190650786 947144658 296627453 420978491 526558223 772177778 736603810 816586328 56406414 785102934 656462716 852846415 949363833 918847930 360794421 530135609 805773017 905051929 576714353 319478167 113999005 40655503 766018442 440988056 36130909 178214539 118685887 78287840 125985789 749895620 393042071 475402885 160305597 967278217 209817716 865528334 839211833 199332709 332373919 803877292 37580095 874203480 367488825 2850330 370229124 117718034 358957682 406748817 301233285 515071679 689092772 88277287 316461714 655382728 321167182 197548287 465769779 933965773 40210069 940189145 43197605 804085369 569747316 215039435 980455381 518729811 670708810 247129553 607037002 441306911 348437249 994195035 136344523 609234132 690659804 998344956 512928115 599171585 903812423 366201243 379353747 314359420 289296926 810692327 937524827 717277550 857524548 651518556 298743681 24033124 632701983 280723652 356198427 518285369 953361449 43309063 675610106 792086694 694856600 813808624 461036365 518446929 897157204 102134051 951593321 12802315 602360967 862684275 202068769 205971606 543980878 821869441 371583307 315840747 647171529 226588399 843106580 143300967 308961259 972189967 589114245 333083337 569511785 106306908 906068744 55010335 496714622 737148002 380818079 710154583 521175180 412314023 62394727 936148304 705096688 619015756 944434068 962456431 384765375 978668015 31046864 252413139 477327869 585845729 138086104 587870539 418470618 533769873 66822436 439439425 55069168 781405966 479140159 390090949 230637068 818245422 128583519 754090633 689804541 668284071 149354550 927052170 453778775 801315866 929968796 657010866 732233807 340695201 43842859 224354885 733084101 61427241 246155161 754567894 137581830 63625650 772337974 496672873 418819650 445216571 551470155 576762014 487242927 202517776 560058917 141073672 863278020 432649253 775342965 230666713 508616198 746490729 538720391 989458681 389128695 580368673 448336129 178632159 743928780 203787037 184869356 352762308 371452795 379460627 29443211 492039100 357628399 730948770 328925276 334377610 703108492 938890253 465474149 977976674 642083855 56932608 719168285 235386397 179121260 959079264 362618237 228805602 68162768 343494984 671120832 767750157 908319977 580431713 345940025 552790614 514670782 574421350 56245722 896993979 7890578 423597042 996521126 186248410 29110598 632845356 383029674 528791125 312139135 480768658 406751521 499808392 567462777 494080412 38476296 314748186 659366574 261892870 815660019 486795095 717881959 790889696 970142274 320347028 431299037 939119102 45110820 653703618 433620414 912546961 35959801 997308887 422183200 630923041 862198728 21330043 49841216 897634244 593904565 337347451 775252637 348397023 828156077 501419770 174598568 926850513 498139077 524026679 221846429 166796715 7216019 645098995 129986366 147979550 522971369 196806816 251754852 636839639 838338277 607325504 706998398 377828353 788603895 66039940 809494984 377249905 842172466 126359047 788830385 6054780 991553726 496157799 635187813 299143838 671096520 343285927 723015895 29341848 230086660 672720955 241580222 214581909 243764324 864018611 169867549 506932557 241266585 249553640 899302783 19839946 910578414 241966661 674618811 878033341 973196025 838582533 189338034 599532957 715010854 997548650 427767161 623880671 41426621 703159299 423085269 465539834 354531638 262738140 797508226 888222591 981649828 92695355 662363909 230738802 709889101 100985283 963277612 406771682 904450933 154924364 631100258 577824339 62899497 220067817 950169348 917603284 452050698 536732219 776633923 298041721 741383866 238369271 316433215 432563824 106972747 646464255 578342812 640572058 145310366 407147753 97881414 861331956 830471877 415826252 747887261 722312489 937082631 24542642 478260466 655513190 105979189 984981448 234089275 382719817 643559101 322190462 786758335 421228047 75966157 237565100 595907137 912030041 540949564 449935304 729230211 344411359 5386651 379693921 543194767 101947817 70421301 816793460 513417435 883527369 556218002 481676739 239534227 648472189 864077504 215994189 666434509 887239466 695102907 695554877 487577155 993471034 654610853 627732757 716648309 240372248 679067179 62763955 896069465 509036573 710544079 526161190 195177161 657822982 364369422 108222161 51320811 241294557 117162500 993148347 776950469 485185294 670988011 859941689 739480797 936897632 870252305 635877077 324567548 624572971 359060175 703252923 768672064 89324710 286124552 588149858 35458605 261709222 75229510 526434707 975841497 435519293 590339850 344158459 143604425 612001293 480654972 66418124 256887737 488095163 885777948 43334803 983430777 137055569 71745936 817543222 648549687 589556339 378734528 958569564 458078363 148892227 638107748 864524884 872671161 551922306 605154588 243684036 240424531 336370127 263678865 485677780 610934278 75836209 290723371 798121831 85277635 347956784 388208455 330832213 377858728 61096306 967994819 216533431 389923280 962549037 376450897 555601233 649020567 424191003 741437555 495211629 851486214 835604276 50775499 139529673 20771689 553444837 342316750 888174379 588937017 918001225 913292023 682940696 11479521 532844981 374811224 676545623 200630832 941093669 357562798 509245786 545434071 913908124 850720191 453614539 977254940 446221638 546939559 648339339 480894124 391922002 124655068 759125913 714912195 547822125 388038050 271142996 79023926 10365307 879994182 316797599 309027357 607575116 242502205 521775976 637617317 625810020 677356076 220726279 486184179 972909943 985164248 664955073 535700783 665539416 446860431 344219321 422730825 180779238 729703695 180194389 414501899 105388023 534636134 779242151 207672803 380717892 625986607 848516188 543706519 175759614 29009548 488247893 79194595 66926075 403268580 295978739 7785638 911417625 233890252 400912679 853152279 324190689 865051597 451107010 236545378 620872760 260752249 252018970 622510400 561614253 374208910 872000840 748904164 365280147 909571397 522911852 580173354 487251780 926906703 825709320 981892441 160289349 557771154 288644536 773066048 727524451 392456580 967391100 733991941 674530870 36754372 490830218 314841223 556016193 571744864 388547237 41773404 964183020 180661543 398776675 513594072 822278413 639491899 897054876 852935513 852421253 136978512 631095570 768232339 154398037 358624141 403793879 497076055 921264306 172345802 471120015 73910537 302516503 725929738 716260469 124338061 956591822 279285574 883836805 929581502 949102826 508274822 381064198 559061883 873859407 17384782 49797602 333597096 820581117 215338596 253692698 983145730 214502179 840925250 764799556 811934029 922198864 800979371 725496670 919239885 868732533 486128412 395449600 816523936 970649854 608353268 343960654 298546505 137302325 566051769 228507947 28144882 81273203 777892238 718346076 954041114 976841528 286073285 463590208 862346323 849449949 501123183 584112886 704889816 753813053 280024927 117368972 683436207 507258075 116342857 531975967 516809718 532362106 9810779 279675294 364292049 472951303 327697048 582571118 551337739 862975926 536662616 54167361 181188216 600052653 637210150 698144752 892943544 611146049 345088532 550397146 424924923 199898198 889442767 898195006 965461948 382063339 797928448 849744778 914226244 499757265 89957024 521654815 529674722 195622525 70213131 127399559 327214696 856837918 461242191 53120865 123016691 852594530 600171697 646753898 341163521 486565201 933868147 128446610 985190955 786920186 932508538 123932412 272657532 132384523 949266889 563233039 110571822 413354958 730755335 21666830 195637055 190910184 945826230 774254194 987051762 17642217 333084094 294241610 283684144 656775866 685868184 287314641 149786428 484594476 786565072 965895569 159109830 273314662 655890703 622993453 175077018 775505596 4377587 56205191 945638465 869621974 729440825 557622417 861682198 63317447 967063735 621345208 979417378 941391848 646103234 727031309 387794703 964831784 567766967 802329442 531102616 550296295 275308642 432249387 267055572 719829540 231741227 186935795 999621512 357958141 653701339 909881192 379911334 575696060 86130155 689181759 860932087 125972606 37084859 701035767 985303911 19606008 524765355 424972563 595352101 790469995 247563019 47789630 201825790 464754393 90632198 651972217 530399513 787858598 727553945 199123143 928921424 943133456 390072803 776798222 691410945 17811050 373780196 92549703 904478578 412508128 231021676 789430355 139352007 629887369 404042563 319058501 360645591 668973565 842840905 6250002 482528972 499302159 45278589 330295461 229264176 763374240 725013120 636833098 545728606 671885601 460161040 470957308 463325633 721587564 128767631 56236414 992548112 844790091 618983350 398837661 840215425 995195854 786082788 348109928 298208920 436027500 689282180 617490114 60970270 977290635 60767147 309312290 80766530 15814439 282305536 774550499 38001569 345093565 866012514 244923668 800043165 642480217 257263722 169960600 132782040 32383678 26556876 14304015 288447838 940410235 306768354 220681568 692679721 806032001 313829785 634848299 145378992 641713311 746766023 711877410 914941869 444639168 48545328 114598919 586314888 806096608 492514521 285905222 668325263 780828709 549837494 890869564 7661123 50006362 519162506 530274062 797820089 676928407 819427925 369329786 998240688 435786731 645435744 440107147 885800112 455797287 544175372 268722296 780060972 455959259 719068769 97312971 939596312 371383736 785074153 623978377 49773567 583158545 540052171 143912654 958537146 230723028 913410798 582666694 457012781 159705350 552656685 988018439 772085166 20478250 571622151 368773031 162181828 554223986 238466101 234937271 91368925 154524137 579323785 293264728 526143400 306169403 92204978 809823599 351720463 141367195 155239063 894404436 263648483 876384022 348789065 310596160 892588073 601544357 101251857 112142695 103841242 748621323 109487381 197101292 851395651 278509779 343067814 916270559 298384234 214257017 877845187 120975463 83715454 133971857 567843573 313273693 769778031 62859988 977196942 193190895 689983574 797595470 697200320 587560867 103843527 61876171 223764049 469128763 167642288 124097920 238354119 62765054 280759750 901305646 402755632 787206889 43687628 847105202 901205924 636096115 920462351 562883436 228025267 253660144 447123183 952659684 807427751 629040779 234963522 34188952 649973798 406536211 191660932 19629222 420596909 355470317 201103762 706942961 699280781 930651192 340273874 801407282 629853731 59017734 856966318 200126657 761599097 795200157 137672291 306962206 128989731 302460943 70691708 93085176 816673528 763957240 795205994 777203759 653103276 667404867 658301858 507909266 129476213 295322702 821615077 230331958 307607326 640267266 939054658 442267870 692940333 486980647 371621398 381407264 470866175 684813891 72211181 188342816 970005739 438569090 979959248 268286889 965768885 255538120 590361329 742492364 768876264 276956995 194926069 144446909 574950623 468096155 20122252 10954967 684223054 971515428 889075688 906179295 499232001 755214844 171108235 598583611 704004421 136277300 484764147 814148059 514361384 668807037 927685756 765099460 604880624 911801059 896593197 494613659 542191642 604835560 795753721 520333145 89079326 225157388 106324953 395492210 279916686 354657024 492280493 272333313 385404323 764364183 427943636 906809408 274000923 889217642 827873342 975036106 598748795 389710150 793310017 850803346 557387414 965569115 941461250 46252187 142639075 936857503 195846571 879304693 987572509 944435689 726921249 443771654 651108174 613175723 291470930 360747066 592370323 546087533 691225223 651103103 151810234 455569712 684076004 304240931 441797236 869972375 853145346 239417671 832781459 709890387 706333756 583621178 386723960 931179380 522998262 528693277 743415727 265854069 106068493 560618256 128054015 404076439 931539482 267219816 312450374 142899051 690401541 701425788 816141717 536704542 752358121 134145404 815820440 241411939 827005717 358645385 318844146 949269661 893154969 182883787 341640500 409549074 214612055 580241814 317259430 704710188 90701119 388131324 680943764 886736428 100324208 755720128 643338290 494184565 417747731 2614888 510952424 914230127 759593594 160819709 908323482 37032515 228782377 55105982 819048333 934342136 162304397 429504065 942429569 405901815 625342613 277453901 653053544 417461737 696607393 480229107 28159196 398236716 413048033 977502610 790253640 934184548 935952220 324748298 88835621 582878690 100703440 18252151 865243367 819334904 808350509 210984179 124612942 284622939 716234080 30850048 641726389 814676699 707309368 707877116 997047732 492675424 543093510 72431331 718179190 695354624 522799355 919848499 562761980 71780277 835404096 116552240 608375558 903787903 902638064 481230533 95696144 434224842 825931597 718977425 825883617 203496512 681759517 74326203 3149567 401206548 678459298 986777705 918719009 137167666 655680690 497512909 568455911 59228826 575582577 724565945 707356667 94113731 835995078 201687655 736021778 414114426 954930632 638304550 865260532 67675621 148072365 260300807 765480533 73564264 411777762 828708412 29152047 673619404 492592785 511288031 74351609 385877703 986315170 593090512 162363009 698057082 18217824 354807445 422072514 7517020 699401481 503605579 664189930 746217443 491518281 398920334 449665112 268698870 951739393 199719809 608380664 914493705 164236678 269809226 848193628 373259702 371644376 917676365 21989495 964372365 546358128 983468879 759979350 95997106 130841829 830086596 388110949 568953016 502571933 997401626 504539656 698576286 887718243 681886832 66573459 959597994 789605567 69809092 942408601 746378055 494838475 870774295 224145526 12580282 259180399 5270319 778976213 796997038 141587610 203653202 838749825 897421912 297363176 925255860 54318929 331007941 458680833 855128356 763466733 271207192 892211172 730313864 391161662 874868598 71267144 99370820 892903196 195405559 759584390 799407288 594782853 387789261 201628054 136905290 845812225 763274868 494635374 462494409 7990385 631757916 375537372 559852191 777202515 243430110 763470993 768947128 150128113 821027619 754325667 952658288 490974802 397848975 884502095 788608123 231644554 757362046 235092362 326540739 672269620 305682214 813175204 851318852 759359031 340360059 997455523 721361753 873788441 286699867 434284815 532929558 574724001 688651993 393880134 499729685 348789983 405546559 36439434 996671111 550085276 78011292 710093082 922928879 625968385 27765807 595727438 208533533 382184415 765552163 875005973 992841170 304882082 56641025 198175977 492137630 884835715 909022475 152790298 137601786 256157516 227375032 470639803 368132300 338762577 827197719 167894812 224131629 370648783 772751377 572445864 814029292 476723870 628092438 484823514 489563852 543938122 756925538 735791143 717077419 12250840 491266637 950044656 496541936 747332107 554700322 47511938 51082681 40964303 652931257 714530478 720848153 661957978 458193308 57653955 38874314 595400586 744140375 960853533 735338465 359498171 332266100 68899231 878751901 654844998 369975793 416476224 94455627 903682247 480387926 748137463 114753010 342830199 105999728 194489489 34319052 204883200 185282155 180943260 25982275 164736927 724063937 179684813 439445485 572669388 268466244 970328561 366196911 926931383 582422555 764943823 119268141 48412716 908682526 36482937 255082236 158733177 665780651 553473546 822545021 800943369 841415353 744770029 749752939 493883868 811925765 107898046 87695149 22189540 855477498 145520519 98489095 811376795 469295512 592787283 493973146 541711935 581584871 732537476 538260897 75610845 173042388 472652174 493976495 313725196 206327748 608130956 465020072 310435802 575274064 741760330 744631417 841588462 774450932 15885746 518481980 878610958 892266712 748693795 104105721 56598736 878829042 478332360 87267815 381621390 531359256 331144208 928656714 410983877 177815702 596395971 694311724 707569107 737001976 868498178 678868181 225094751 92328275 47954465 23216693 919745507 360477867 228474685 849281088 153696344 861916690 627231569 55868035 249955436 749234316 545965689 204083458 680275331 188565169 792856529 520028050 138437310 511465118 545617938 775553647 933620582 349166646 42475541 718463082 957382203 657324361 379066902 509724809 133643486 687247580 469237965 438347259 494139128 476099517 518761571 799700396 919889500 499268106 262781030 871423770 786096378 327768086 875203677 343483942 773984004 802799966 516228352 299441280 920502938 434126237 621962866 831628576 953736491 270532489 766750941 904420869 790296203 142686321 980413368 33998083 209740776 791821988 143328052 544333714 597929555 951517975 242707772 472295697 439983058 132950008 864785724 59662146 531646601 68588012 53635992 699002716 953442674 971450210 545311114 910085875 634717248 756505745 647539076 633028437 379490352 616751516 876845712 409190862 71653214 621385567 525613657 830350792 799782959 305309752 638908520 361065336 765644288 915528379 757608425 800781575 483955360 201344747 480724812 313296490 105931547 421496237 409745889 981770793 852186976 403709003 637921614 400267982 140668425 508985779 819633656 861893765 394466655 819845868 519425476 65580272 746660376 115572861 263638990 108403385 136900254 201735598 704838587 469505236 47274295 959665106 131759414 117396146 18160852 231025101 823667709 383869024 620835603 61866815 442016422 23017172 412136693 203264336 716382294 249283326 250357913 401124242 105229717 656322445 267790567 148962962 683781635 215541644 262239100 169631561 77599461 789596013 267638314 823655673 862445084 694007695 331734342 891998731 605967840 80063129 785870238 501325224 237280366 853890179 202485399 134170443 572653361 95944823 804121537 813996626 261325025 858862028 695320088 788421971 662051301 115737910 994784678 816919203 83179802 556171068 210745610 642076229 549047817 883164671 505224324 304569257 615989555 15534424 788484840 504599428 98700309 395293431 547078756 277624016 549296227 101362167 586127788 660227691 227017001 555128836 828695284 351671315 620595692 212137998 427237269 507335329 387059353 864528465 394423655 181520906 379731497 473702247 661637168 674354717 506281001 167367643 20518814 565752989 749871601 998221226 309191126 745907382 389136958 156277350 856598789 716449538 265662038 359016863 342454640 824391261 38007303 485739230 504298025 565818737 423194156 385973090 503406878 805827507 444999256 95919567 470516329 511450552 652783523 294669192 743863090 306071653 877392050 877346196 9240706 810638946 994810280 601511674 880477023 996854577 386455457 923385749 48978501 592691884 479207206 725197110 138945653 699692836 984631031 620995870 713829029 544423454 127959287 406385014 178908790 774690798 552444428 299107941 630424208 832020315 626614873 594321098 337852537 737299647 818444793 368082466 123774986 690267229 325278658 335609212 578892350 634732939 322979125 736470612 943765734 178669951 317470114 716099771 10874231 236690482 554776471 375654540 353354343 398570804 755609104 900527041 248934037 749834695 464149806 162111438 384713507 791230537 529887473 439938592 747280780 80888011 525348981 211741122 792510693 753869829 322687567 973298010 341828710 353127536 767937862 353712626 134590876 64562843 643028419 97002743 554301816 36010527 109196028 546733393 62580499 424906153 87966747 603663073 973745985 508192656 671715556 680237538 369144396 393205958 887938598 350518393 417065926 106543792 413295580 889627576 424572029 493583088 13441974 10917640 386354687 527624086 897020158 753827851 223852099 2162723 581717521 434997756 888975325 279468525 618171518 515366496 439792416 312472229 745919437 387856750 929088047 146866841 21145094 170981483 485303314 179618063 928852034 396968925 55110977 441533541 995866660 534452735 877008885 717815963 599080169 291669694 41691589 344667519 253499229 584089859 614086306 500733218 722045513 833205617 928312 307941054 897677038 583046050 961054686 960908805 732517209 681981619 792919059 68420197 577985107 632703139 795458726 716280112 48164635 912480396 74170311 742595734 250679586 760771983 470619333 450590614 652597620 661337430 241874472 918898891 542946490 831395067 918001627 380919862 324544968 615641736 568901226 988276851 18217327 899330519 761350016 453152480 852881547 296862416 962675562 952894138 920888525 547767785 62504886 969099568 771686726 126088770 813341726 781989602 188374758 916844807 309947671 439783572 636236105 446426951 678199259 703223372 115105094 221272256 764250709 753758799 505557560 331124156 461093523 328911215 739639850 78977556 177706448 863645888 947780618 292855174 617709491 908297333 461506444 844280971 133670115 546551645 382390750 451726195 180030277 979815634 10137958 827454112 334350723 724711576 733709284 179248917 31756921 780953914 106833099 204855695 902364598 661468661 36909113 280700778 79528343 566874638 354767795 80231473 503406091 473519705 38175745 34676924 503099911 499590560 886529614 668238928 222844046 895735356 662433426 199647687 316237781 697372584 872377947 853128972 197799199 230028007 278356191 204683343 489619519 16896772 113573838 88589296 174004691 216273681 39922222 913797982 988994247 823156418 484762383 260893399 372309840 238357752 882534804 128393236 693101158 625597413 669078955 610447026 795620211 523172728 508625305 108717257 996455058 993336010 571787431 837075655 952638881 147218883 588678696 874525020 726576116 782056670 703077086 845673917 342708648 244410413 795823831 496191220 410272732 356104698 859222934 982752298 57145869 388441450 206596747 931088396 783243311 951279460 662599113 258197529 795768422 710449396 365479053 505109836 796298838 625128769 804514030 892460620 516143108 458416533 999525690 656985768 177342506 757827829 644796518 293840140 650883403 477301916 610748164 877186443 657869504 982576698 545168763 397975785 181017262 586859780 502542193 387897046 593646269 489390906 448977115 370186226 395178624 700395692 781427769 99718858 32909233 62895312 957512946 597861071 664763801 60597551 808575437 460733854 325486517 410775920 285988913 73106366 529085962 387666815 429210438 154412093 936126474 673198992 347265873 175940761 276692455 813646694 969933275 740277067 637953965 592877829 545782899 328085165 344557297 788474406 338577741 216672211 643720225 887792718 706599088 732265942 39060128 270517533 481504579 741897310 43464801 696150374 845994162 915676912 1825469 318691725 657266062 787555091 165251781 726280330 135929876 973568868 705979472 54518506 707832501 344349989 814653152 530167592 280179693 10699713 514745091 721945696 756105096 594946629 651504097 37575032 576700966 722906541 169905391 308501724 510642680 242501090 92406768 831662836 876231724 353950143 412244241 409727094 735642048 483882288 337567881 234651523 198440178 788584801 814530287 212823722 510718610 419361603 919811084 191318729 166511656 690360403 702598730 806969282 604954896 963812748 317017763 644932672 772992129 856782277 663135002 650854537 56515637 81977648 228004042 971698861 307580948 312812169 810580875 567313276 457540307 89627537 665187483 442572226 977863470 448877584 379820653 125076547 230900651 68059258 827698574 59805570 875682568 644387464 102726165 576453434 818033277 693211089 735473724 628719451 957739884 871100636 413105747 964091325 845855925 529235040 380941017 116108184 308985726 864682875 260631075 451987238 934341135 230187268 995697527 251454391 127521262 781924530 993383457 160788428 21113228 842050816 982821214 642589002 633912824 208413528 250395212 536723673 659153873 463404390 191172411 965753839 723244588 625513967 469571800 443369259 646888258 325480420 606774725 721846043 389814531 358928135 295865918 491552254 639855305 666287076 912619966 164017788 243727729 962167372 870824012 67451271 648401083 21790527 767865024 33058500 892452500 424130161 467542976 50289473 714429464 306486984 285332394 533035498 479392931 330645079 701783024 665826659 379260431 695686418 696419867 475577340 928382250 287132137 835139784 680632230 664793233 689429477 381451365 835614207 754698365 917703125 688452659 750651907 890162587 368683964 999232791 979801769 289061035 373019486 457624943 521523817 478028708 762864588 236501014 768980171 948395279 653763945 668227047 270216414 562471220 706376 371415115 258119300 973099014 564392652 994014156 878725825 676884796 718747120 938350761 185162408 414982509 205081190 796440770 604348067 132769954 104242148 620971383 67681245 901827707 662919362 62026121 720633005 897820617 153783186 912946743 887581313 871586553 61812036 36097541 564323756 971132261 490051477 18319857 674280451 666845755 193899333 166869983 410632811 281546187 408791879 355987466 723733875 806108320 230142199 979384947 391521618 261290274 818203113 524847957 117185576 931127291 733453621 288168652 885321472 946206255 299897803 942618577 413931931 266643219 650623849 118021924 890971295 223227483 217400988 324348812 238216848 495818587 325466460 722301847 900786541 658410642 740345977 738727192 540532797 51924708 345048096 284536144 983591720 768659108 397428316 205611316 525739908 618112608 165691258 174384201 225764837 545121252 572900834 678674730 382413785 60679379 402918810 141042786 658030106 368044901 732157644 742040820 848500241 329136157 30342393 288158833 904337142 377222509 637945 202379640 620972728 351640746 530958676 909034581 412505554 161610832 787497476 160301687 633565782 667595891 18788538 89552771 452024415 35011205 189803938 689168506 182507924 227633850 205009672 396361372 46583832 7584498 783263681 550502245 420153231 669031983 367042295 179671255 579120618 624160135 243384568 82893572 336555610 825369518 182452242 493261318 77724038 110794202 277791834 907323691 697717866 65247664 299703295 389410815 18385769 480918457 848073288 883546619 440007560 581792393 714743965 53225061 514589704 563719595 828568136 152293976 200738516 220936128 987419111 687015686 544775626 975819741 50026573 907183365 790140009 448016154 441771153 917304267 607636370 519598240 239097597 627394188 571376421 727883863 342075064 435455307 560918421 527253493 181938473 560326347 799788626 257820824 727658029 425730225 568650093 61289550 107749516 511104483 350747367 985737410 682750850 800630192 834735958 11315966 610157790 751790089 518267680 772416037 445182651 256070076 189137987 656922035 261833633 653080648 30138373 804615233 139083216 753289741 991376270 941682124 847426290 547211818 983558213 279298642 711256056 929367074 803263538 901968007 627287370 209742061 803496128 94065709 515376723 309594617 297426526 185506817 336205916 96359856 885702603 148599694 838204021 404090337 942527516 132091538 443074924 470686007 543763905 373737211 840384640 750661419 288603835 399208970 734951496 237408818 22491042 829243672 389922798 520116974 672768227 139354521 519250619 189784029 447043576 560721285 238529214 629661120 320378038 969514302 202961240 267512924 332204461 547481244 906912163 997435626 635166869 263227205 851939542 178829507 902774585 373211667 163299050 34177739 930818071 991978267 584367498 901599596 598924922 533992763 209149259 78568389 185281083 54839864 301356612 71099475 361825655 100944701 473392525 430045776 556665700 596618381 91079989 342445968 789147742 557459001 172514292 897669184 914991395 332134198 458332040 520909114 532146727 785260939 51090862 701163683 685375866 5565954 728855328 199948803 837041877 194143378 190950736 993062230 356738911 133227572 436650797 386171695 883857929 74743402 114222353 893049151 540249164 769697255 237839613 2785141 292658035 622366785 297244550 950538380 565396523 771567218 5782012 864489595 611019522 4367168 967937085 205917621 338990253 559091296 131225709 874995558 244298997 850166535 332557883 797294636 85399248 374440089 247396432 516183971 622683639 510133605 798687209 114690942 549172495 437847460 59056131 380994985 941994888 958406178 830550524 858123913 653099862 998718559 207190861 191567741 998458063 819329316 469396397 163631731 968950280 572756813 732105957 560770304 155934667 828922279 671151196 948414734 8561161 924990776 359504930 67386237 849811332 813999083 220510569 623206215 183233383 821246645 600483252 138953133 85259376 78217352 974781084 630790439 792951011 324245096 254430549 580837211 435938645 300131533 605469835 781385145 725947995 373426589 701941624 926474239 439424248 561979960 496875311 525461935 354927322 102521562 717777290 514592421 704770568 670538815 447873444 636300674 356566970 746697790 644419811 499715530 389764546 336810298 953114807 188422534 613297673 657913556 174169821 304281720 911184581 476531429 39816929 713414532 912398100 296872477 919136673 440316505 677613562 584356043 251375623 766224739 870345637 283667852 535401104 973074787 449148235 669645004 819745791 791770288 317878460 552179171 542042422 790195856 835233729 804994151 197633522 766969847 437823325 874508092 655703 591867037 903861559 827801077 986181446 735526520 310311204 394121815 467773890 901950303 663014632 689605337 554554679 213972900 97386940 549153439 648508429 994126010 103045214 30526122 472984220 83076688 12394418 711395973 817975915 601362423 273746721 35656896 572565080 269155251 137764352 897124182 883230089 94763432 838958332 998171595 517387294 155671538 468334351 3303078 137890368 583185605 791243964 99198612 132502159 713019425 848642245 672330942 485941969 228845218 540326664 76568355 668838185 872057727 536944419 626197400 513971731 575307600 263786463 352780449 387741484 653860742 97928342 509725004 769373754 630782792 961012984 421085003 241906683 982418835 801778369 899762953 832945941 596653632 339187256 700862627 367512325 837979070 363773612 823804928 626907796 879473251 695407681 173533728 810561493 612093704 22541386 581095305 984355082 670602135 539439912 547684491 633712339 287072403 553862358 52722056 423899928 674886564 452562599 799626359 751419375 748282634 230623815 567713120 825892672 875457379 761448564 937616409 106641413 346933618 382335660 459546049 774325621 458976883 960285132 431202811 198163307 580687070 300527654 94106313 814085068 631231669 435936156 196972552 738258179 854037258 737507965 255111908 384452987 958364993 747405990 777990703 457658674 809508474 544998093 259997697 27879227 704410423 521952918 941211835 349207671 899479460 581662516 330431058 661101577 877206011 863667770 352660841 301803878 188716714 208436908 119161997 369742654 387343264 186159961 461329417 89939836 895352452 431898916 705473141 238907845 876056677 381241795 21941355 963972082 819758965 283842952 498353717 772359774 892791267 292900253 67970390 417746217 614145848 285725697 727315516 602055123 574088297 966422974 214025957 751541419 376632543 886427661 578432922 130845359 81083128 803490696 340393466 503300944 245724526 591100145 847753158 908639783 304007309 589314763 749646315 878951823 942531052 863235125 546775312 463292233 919589392 416982071 596323280 569669215 500685339 233339324 614475195 971093527 800445651 562418745 922876563 917167995 963747172 386846970 226521861 426929877 790247699 42796458 430078404 184645573 219797829 283159260 494597351 468144596 238155982 83404367 338065420 775557626 2550877 262382857 348428290 971389102 256791867 19122967 489033632 797355801 298524001 249533182 591750746 26235579 983869661 393286067 987866196 482027497 973414293 447600961 978609180 20611703 821599062 371332786 579390097 652139540 604883713 996021550 858716638 915187588 373942390 395578052 423014503 933107251 163935788 948663352 468313813 655069774 864489495 99000754 320037238 739962805 200318740 974376679 256448665 823765537 768715616 767131947 456178875 965750683 845176254 467195765 601239176 928258122 152435786 528527075 136348271 962906102 692132407 641106683 325443789 538611806 709378002 625142578 555579487 974208825 227588768 534831704 792823274 443476307 167397954 741738185 907135186 402595069 19717406 302206931 893996536 401569698 478408239 613158716 425825193 501094013 444105591 785144567 352409924 777355230 914838770 650480178 683061434 230182431 492392323 313147945 461947836 176630276 460455938 639570185 278537696 878613688 901659264 644193889 889541643 114600586 151401102 702188088 238638102 747750515 712670019 459787876 86602880 146936751 857927228 236247289 7016344 969430857 510632428 210073681 700700506 700583139 191034512 886287096 663718260 422408092 696421668 239869339 669905114 313596610 518939300 779988636 763146320 386911924 712382704 194709217 610294664 45512140 448166953 167544691 658540277 156526900 233596127 955158925 701673579 781853800 883661933 884987371 906205873 531987970 974291189 327441225 401058410 276030393 730466072 453419376 675328475 366651450 869849400 556144762 129940232 861172824 283836521 139031506 654142507 584254959 207167674 929332441 496106629 352923394 768494839 454153409 673967983 730096249 956810160 243012794 331669568 36469590 823246336 645296006 444998802 454113875 783624905 185926162 118911403 737162213 863234961 910020736 138430631 535712203 444062163 704430663 470327273 624579740 863068295 541662353 285505919 68233924 799271396 181780018 441015293 659655925 806053213 281565650 502964387 208002646 987944801 315043379 891512997 175764037 699697357 697812621 490478194 49199250 169273603 240530812 284056811 249576592 342197079 24275252 488183898 10659816 328771404 770784783 193656388 239606408 638053662 954308023 27883160 765379204 453939604 388502542 546782249 177937277 10310635 581708152 623013495 695646460 987081399 681867797 801023228 496878819 962542324 676111898 716770103 675770592 114217936 580014071 242195952 142554284 867530752 369581213 305946183 53909557 451759634 663102535 18799785 862090321 413442664 831008191 632343789 889866682 399632801 583922375 829666025 546436085 756787658 16939882 314134280 59269015 30599159 438484097 720296005 199644666 842350171 144765949 782054996 450368072 351982240 815499000 687214169 311482026 626908239 529263443 974088766 599264064 796460414 559442206 506902918 820299530 246071886 17590970 724002112 205342609 725815440 457361891 484444939 984077327 246708425 71358630 356716777 315071469 553477004 476476628 697072387 772245394 452904592 342926725 110068779 984835971 150931445 160444412 189304873 145753678 584375119 801663529 488470056 414437016 971563153 818294453 562214804 812241924 24295504 503678681 81302705 237613702 311410679 300422407 848208920 622221529 46055484 100325985 418731454 84822921 508679519 980625218 695211533 696769365 426029043 820204726 477442998 795945768 799478333 599591713 407526111 225371708 926959242 179104610 215340656 943242091 2410883 70236021 665455458 209529782 54466328 95535618 875756014 142993710 370557111 323607870 790459994 111466861 789125245 934765708 9001527 484523454 288258706 608456762 566381063 276107212 902648945 135800622 132863821 882456997 308575715 82523644 952380314 362530798 818071347 330234408 897755330 856602252 758921911 447551375 392252459 21967412 202880920 986589491 303411851 548832988 272859225 465622933 183132667 358901306 493225192 692818807 345644071 54281108 786497172 566099770 990078866 572800478 357439736 492609831 706819432 722474229 909302901 894114509 922424895 730586184 365754039 152914024 159166343 709797227 829872032 402565283 324602285 723721654 56190269 507978126 473632162 613364080 997560038 342054838 661598946 396502123 568835287 494500882 215192321 960284622 354261880 805418924 218372754 580813394 325633538 841270821 495480302 911580624 137433013 738173002 786104876 487911398 778993726 548591594 323866036 960408047 275181744 468097750 923384137 565659727 984086573 499984937 194209037 685037067 882555242 189591999 288117476 837107978 825958701 56554642 969361446 689931389 848543268 52282873 318009390 771992173 520630049 244473200 687973734 495867374 202369268 668312206 757670905 576252621 527058796 605485169 897357146 346518134 527733634 567035744 539474649 98023080 525405230 467361627 439036288 801089532 709740416 695832880 66857021 734116577 767734218 132484449 971689989 285450825 863316408 304895757 270468107 712358420 498063421 346205539 65168536 537305270 372241803 177906335 166166505 548036016 32299811 61816650 900557300 163736360 353970268 835869735 57925336 489174356 917194051 828990080 98836278 801974932 608299596 133761851 718993762 707032629 96714332 79933656 602511972 218432331 585734424 159330034 752755058 410471308 830906921 265028372 147016248 582335636 709619299 664740813 476617532 806434789 628390517 30730892 212557139 721046778 103732767 130083246 874163121 657727104 649623555 882249308 61398292 640375845 983486275 127955741 961831952 201512908 817279992 533921244 779882352 373786153 837667192 407564320 37597273 263910966 245830293 106002578 56962812 730813974 999743672 736213140 234177426 59090594 877796033 245032220 973810537 24498627 375841319 47919829 815928418 204210290 949447157 517128226 904049636 750025119 287196619 298412357 690667558 419140178 58646551 692537814 969967181 466676213 536644606 500635050 746208743 994071569 298850241 780678899 721477448 655616838 340883151 557413182 745793079 549829865 591111072 213841873 521538443 245522501 654996385 537013596 671234627 920967961 280284754 294440734 714277462 463171702 84848899 384981470 538386989 924681597 824525351 404865756 326660923 293750024 51681823 852763514 93652065 471883296 621902781 659853430 157705001 740774036 723176170 780174100 288596303 675526490 607688275 962904190 893573569 475222282 546703240 392913386 418470929 444969427 13971054 86656970 815771846 973407364 438737645 844303729 838663390 837129355 763816368 652943244 845742964 46277100 164862647 604669109 978523504 522977378 34072058 197643538 955384264 413124513 634030129 708504688 597012256 81740602 459312059 898655704 643554656 303925179 690293921 437036207 32582755 859738601 537269828 371594956 269614850 720495112 733540005 208426624 209156521 783332682 801769108 95427132 846938920 63350827 902366631 638012304 321312435 311080188 750852816 406307275 863402224 207028693 790267350 686727043 479411692 317572312 692243834 144983391 959882662 736902740 513990567 659364124 681716413 326921950 274157459 330848719 231628778 521284594 224514299 643145374 108889434 731837567 975438552 293016906 632335071 638660138 7975836 232098146 37904606 88990780 242333640 870097167 244018617 580140433 321864143 492329415 245294991 998832522 578037291 615800218 954508696 133856148 860917907 988281782 407033640 584865132 282377442 324111832 83569852 782189925 644103206 190151013 391135816 945985134 573269864 951314864 522482974 175948790 978123758 444115974 636598477 947864711 920969081 457845773 408157352 370553153 32330598 249587327 377689904 141331097 885541752 920115623 643767104 242286561 448765816 511491731 86570393 118556452 488472082 989906981 166752003 795372128 703267166 684709551 625359148 405863091 942283348 516453470 847193658 697744470 247033657 32031821 338439625 612052548 586588666 388585752 837363325 48365150 706782260 844789204 876965181 545184121 185257567 527205655 419306671 789220633 812899591 304774720 373041987 354866601 545394581 57776688 220446283 346221946 843627846 364269802 958314849 420286885 925022804 787879065 112695419 116081350 739500539 765583238 636386580 491510920 199272107 21041334 78686161 880726786 250102975 83903476 150765403 999365447 81645347 792109808 626778561 394863888 55637217 658433235 406338690 446135941 9626258 966883777 911529952 380084393 702011881 17412858 868639175 760984556 184757987 931426490 502783062 66031901 643449200 984068111 939348167 259667228 391286288 265168052 769327289 274505404 342037588 303053029 833751289 180074454 286637823 39621346 578146462 894497367 171944188 768707141 187932730 104376464 307582987 228536639 927233802 133551393 107936916 220473496 243507641 595207681 411319622 80800968 114047352 983095105 423918113 341570752 109737995 240756349 749220111 895387355 168033668 294954398 663864315 728945145 151611943 170133148 462067091 714939833 871199902 900929778 397057788 515533730 873007793 851494312 762920715 978861056 199283893 544933110 49064548 305227722 433655181 408262026 643534698 796710056 812543603 781984306 988303288 626261858 815714598 480347852 873219436 185773392 716547776 733562433 680355212 911126965 911341144 182796330 776859597 520712250 719559968 259267683 256393543 451521788 80068413 50762682 609039560 436210088 946353298 318735355 243014077 705416571 206644208 360912999 946435053 589138269 557103202 239528552 862277450 62069788 863269067 148648836 119163728 276748733 886540871 876992589 147242743 827028140 247368916 82497239 454271515 443445411 303046017 399184738 238411102 406130903 417098164 359922064 640353845 274241727 301726772 318585568 333191762 541129085 501555358 754080027 97780501 823278473 264862664 546915832 107008504 307304327 140450829 828739600 379723333 368886809 271112961 852681940 114686650 493210243 731382023 111696215 521563388 336643381 112017151 641367042 877936790 790597574 248112897 223987230 44110037 621433672 761269582 780257931 911134163 863249357 711773951 494517042 668792036 909941629 262484769 189984101 881623064 917654494 80732603 704652094 555876178 16182257 580372713 967988020 58445192 14391770 898221198 616327997 953670467 802265608 389149079 848799877 43704884 924501314 786670755 103667126 987934320 964155371 902928169 30113737 445749061 62762584 879778404 6298064 925929046 920358710 338890359 930240617 823398865 803144070 567554979 203221631 893935191 921183213 15470397 67472980 289389183 119014502 442749862 44145791 354449083 175968346 661539402 718533487 661490375 864585703 957867877 904591129 588780632 631522761 155626720 201003492 959591023 176137668 389168734 512086962 318147488 884451384 27079502 216500561 542684373 192324126 180978281 722066308 747886989 533708641 910960794 446099945 651595042 608563286 600422823 311198092 162479227 422648776 427542938 647880867 58757693 618685093 402277501 760097961 442333687 97467121 688282225 402727343 728838561 647668265 266571462 549734163 561844409 52590008 606114736 15933964 923515993 89655602 712816376 83304276 554518858 685495262 193075201 706948128 552473997 251454417 137151063 53873268 289149921 838398345 589101803 813067866 316981572 551447594 289843744 90609557 415219935 903090793 886445675 334024228 309919616 255124183 356811882 80963296 24288339 540466147 150659035 990633528 536698381 13440024 354456395 856305717 352703749 623452502 547844063 200133389 460576579 711776466 103870857 279338448 815164392 899950150 611379973 321452817 881886729 583379990 950343752 460061692 28239743 416348615 163627059 315694090 255333584 35208541 468191752 835438309 388860401 653268336 504687659 728439332 23749083 120302731 936086755 472301439 462080210 229103911 237495589 736739469 683039506 323830074 985627331 265992953 360102641 322467336 778097320 190481977 709082985 840259533 510292168 710141112 667637285 702994903 171887796 515116302 645323861 693254767 386266040 69333885 443103126 658409392 509767011 505544155 334951980 180037788 313975633 843587743 808749560 859524755 639758915 282180131 689736984 346915210 400248326 241307769 54455070 323272819 261259598 632218128 920935761 869854237 997663335 387071300 881641941 481813414 403113702 310722746 771653054 569772613 20210810 757871230 967865221 187638834 496038300 897662435 417612498 864870813 197666526 386711560 358656416 667469323 577028490 928264715 530544474 922659272 331275696 213682269 905504013 43819958 394861519 518505122 588661003 643816902 868622244 115290399 608234935 981126805 299396799 482473221 575752095 823040811 754443406 846380230 235221728 731029612 609046666 410046219 50992518 512719159 39060541 378185533 907242650 467686529 52695829 957622017 861507159 28454497 72459712 872881764 179549641 383371035 212075530 771501201 371710348 50856900 361302162 728317893 808931411 152932555 833292654 935889657 797674246 85549625 119343890 308979142 320493688 168142461 409968133 273155672 651899312 261346658 142977494 463447059 70508506 813470619 415534648 322804589 758059507 714533135 937773752 944936584 840478696 931175418 240961438 801843802 681822499 975988749 184528037 776446454 385403617 246972209 356689800 746357324 494229163 351693518 371805375 694967920 398686134 602402946 983534796 405909454 459310825 843902815 745967766 70932844 408391614 151170184 485615381 278795724 251136536 466137761 489997749 559550454 547343257 67535142 789102491 402512241 974424552 902925171 543199741 5361243 334725521 433224537 882629193 213619435 366865084 966030567 596897797 359420047 14973682 776993552 582178435 892248318 950138391 679935794 444614490 786644477 57881224 916629682 642953157 263406555 640727711 259739025 290996713 837025147 176278876 986573437 232827900 491412241 640343374 468819989 248507160 753489749 701324132 187483866 459909709 679649804 710741816 579601822 6086402 619393098 209932302 480372702 114278730 831144912 745798483 107577423 496212099 388748674 47115009 536538445 288297359 787272355 499690577 197829747 12773539 358665920 988179560 881564962 62778203 129877069 995625128 657365788 308350635 183327785 847876418 286679564 362249644 79128983 117055708 698110922 89104375 620911020 110377759 769311377 646947106 645110504 145638483 286529858 618855934 965178070 586855367 691968360 46501664 443547342 262106929 191204382 224695771 480275914 485563660 201131968 904612304 282190697 451464497 958582225 947886176 926596086 387517061 920623863 637724204 7533732 678512363 692673099 52359130 274053443 877453599 649086369 604804537 268583320 241098973 857119942 690745657 490759725 105881376 810797355 227452189 696421850 21180822 478206107 171124487 231364398 721122682 23639995 150510427 630035613 59836766 596536599 493187533 515651445 986929089 966077395 961865112 72872560 829467245 57509384 461689087 267412467 744550738 775909773 713099896 428520944 194777550 436770545 642760847 48072198 729583126 748877706 667324175 963469347 943340206 28665448 641951941 732308249 842123657 869590886 178268513 338671895 393482420 803377943 426833222 712888107 262055613 614514700 15588333 69933651 88337610 169172775 601126390 745108398 88633228 780262764 5388570 724330893 485951713 211570447 980573939 114792802 245075565 315762074 654223044 479996951 201507960 543941597 454448520 631286961 543946934 210263728 62620347 855605238 405806798 496164894 5841416 19062085 546041464 483283958 725403000 186472421 450776702 669347493 439460888 488573270 544955025 923453542 980858052 545581824 699409466 466451919 309288980 728904235 313750923 559815148 775948139 988638231 861212367 941948409 596948020 627612172 780698250 2488910 840529208 610569538 434254860 871273367 654142038 534572949 47707834 166573348 778074590 706385277 634485181 651141881 568259554 799964943 405049834 261751561 314205518 100655905 838270285 230947432 229810644 783593789 900059560 980445485 633650877 639629522 110867337 210820207 674586671 721416068 381139650 370928178 164976746 432205152 920600519 606563110 760867516 413353892 319903723 722283342 172676950 427786785 927003402 432499019 539144407 679909794 562174352 596577120 526167972 594949927 611416676 350606035 645456745 435490844 182880695 411747000 588828915 490244745 598559131 812937952 590882533 76928407 367974999 479774697 364044135 358604169 284348076 340651724 697327553 361921911 65331190 558366553 940977597 117131569 365812187 918878667 890316391 92795511 372128016 670566287 627399864 739812165 109069284 849189527 905343891 631483756 120302833 433119600 597477372 438389696 360918806 497850260 955486273 420175882 479572501 321639210 981057846 875719317 83788337 385409497 477529502 112218877 256641679 683781139 519630172 586683588 808475229 973438249 323190839 756763908 247872854 585505537 113121452 106941800 752230330 888344287 796160850 116187288 407256766 877383184 82143747 319339652 172379645 320383757 633958007 416269415 863381970 685807640 347224934 25269236 536238597 372092552 268423547 235386774 513193855 482780796 61952492 1529830 892776985 723189903 705147556 642924170 426568083 846030272 979327689 97258059 758472297 219926869 947388752 842883128 326737700 567140766 975904564 548998808 928482623 295552954 594742678 948169153 748612272 909445583 612538221 553152418 341467101 607192981 22973229 351643580 492266315 20136400 734187558 117972550 101367011 267931186 554603350 486887753 68998940 130440185 213386663 949268499 256111217 629198800 523712107 788692293 227383277 69898734 59527574 885229676 788917193 252489824 983757425 767465083 459049561 311564078 401129626 445334767 842687716 206460209 945100131 751917578 165190569 417119135 21442367 194638700 446565130 790769968 89414004 440523365 778495666 450992523 218707554 737144665 799975116 477275460 527166637 714076435 820335958 702727795 178184832 745057347 949642417 458673393 569403924 222205478 432660270 86602055 62354842 997927038 19617721 772361837 412134977 276813468 340683654 86272040 5778221 910364275 902444734 584543666 414081767 96319004 668143891 227527775 542612574 192260111 126304827 210431851 20126237 487138602 571483043 946657074 671699906 451074876 633436385 145006114 219261182 914861938 771215667 929978245 589162946 283750451 219989147 515503007 447505337 702152045 274278651 586671853 536887177 805684362 945670409 894401911 938597605 57619330 18597607 358419558 563320220 603323536 86781305 363439984 911212812 319397831 861160798 729985905 145947831 177307771 197877856 344058940 230579183 6178761 93058616 664964496 786094483 519725670 358127533 771848078 230331537 295831140 772604947 435845587 826164042 986809112 687538388 794842074 367227436 235134435 764840260 930640597 401966943 341284418 162395008 729622446 335821961 559482910 945539238 179296479 527709484 882819989 403196785 711158114 727771394 52788505 326280421 450485524 98302142 467334115 585543392 187209007 901285543 240726428 538667772 947613104 367628613 264195835 290847256 178983618 917075807 112188827 456293174 554511335 297372386 429242316 979892323 101897629 890868231 757285117 372125095 527132885 895294150 631959012 752717154 265553496 638010737 236366706 290698153 714595446 266591113 723879249 858144810 68849048 279539794 694400944 444055275 982595225 357954828 791066162 840960211 482907572 381170979 680278484 754169120 466367771 89595810 55366557 425391063 781844211 372447694 979574692 903447671 566216552 176479971 885738438 343729144 993169511 248374020 406370987 87383356 538270198 446269332 580248792 796796478 319873348 929418897 486211133 95609218 366398037 404394598 428089505 976224144 902464178 522700134 481767659 261267948 929688170 932132779 26098096 708784493 9998770 656614323 544505840 673020675 672366105 406077659 633159894 46385092 631064557 448255228 762174725 849988047 57381277 523298474 592754707 525413831 249071036 942756282 95915356 838495738 543679646 232006990 270038997 657197967 860072896 579062156 911206182 176237647 928755213 936163630 281906357 55790539 64749096 742981439 179016682 545898501 209832768 847573441 425785425 442521220 848757760 451283020 46479999 63298932 842108794 2251884 426531062 18084999 170267782 874506047 758283356 241844719 884036470 639273010 117976868 802226145 534853953 778609067 32303203 414492109 997466094 948226246 567199180 540703113 158823106 975152253 576997216 526096020 732533786 331599687 842021676 99684064 922123533 656143782 474383604 359786417 800511857 311718132 121637838 753427093 180285399 751287207 642259567 602176833 448096289 874748765 55365028 829908459 755249035 952039403 421981009 355421280 245312591 329849865 514315149 719062987 904955862 3106659 757067986 436063944 551165434 129220242 256224948 960003185 709960904 170729257 292624624 543361916 683932248 485634203 389664875 523196867 359171497 953805514 388587907 517463940 411593035 174584658 636528545 11457728 923903131 971038328 156175486 273518909 915813103 33012870 497274808 2249576 996893089 19601533 800364651 166612307 326574032 826441956 865236026 929521815 168034776 157390439 962253097 926095021 790994496 870959667 169405020 850421388 300760277 422487548 913873493 725065114 185131906 299558088 613811280 327940880 154385174 822947213 518814973 228932239 258972947 719388641 733381490 840785116 233229423 236071795 693687371 207936288 713289354 377038071 674329380 22831140 967176790 439578539 909549218 134298530 331977662 751542165 462482341 150484127 668444107 726725814 569319882 686963730 161203624 399231581 627831936 438036085 990708830 66374757 201344854 218462690 321957597 967079577 560532703 946326955 561961380 724448011 955434328 623284923 867075272 647713170 837072764 255752614 832452735 842475061 46089410 873244440 472836965 584618213 459009748 158876608 420427455 51928149 784872581 527542427 764756907 877793550 330872415 612545405 688248043 617099191 458233095 770242811 255241678 528867312 576021540 285413200 498413887 713058121 280896707 378377229 959409962 418796538 657256321 304481390 31316946 432369839 508289246 896232713 613060811 687131589 609899457 220426036 89730485 982607723 261571326 888556419 580771026 891592466 422462619 249218065 995250490 769861019 726286378 603184754 781197702 677739730 397805187 372588479 873416942 572624386 287149477 884596700 253939235 734411889 221491667 211097100 165493808 932007229 286529849 838961818 858001426 739197623 910084110 313240505 345504319 629330199 990585062 352426183 465055618 142879400 497139901 727953331 38552110 515248306 927061594 987927811 4576208 253814331 779254757 256633580 179577259 477556836 334105787 449958823 547825843 726241417 566690863 912672568 520607740 354640845 461802739 286684600 205002207 310810836 131069291 407459579 365156754 991374755 47042949 479883042 371146739 120149425 317348042 712647782 949826230 119602463 63006148 495046862 939983480 123219028 264041969 150895430 366987974 727222982 852313824 161652538 204673068 722788723 894855308 766265768 759460040 473463795 718292688 623387796 544766963 269433898 5496736 130021784 19274129 979661594 312975076 962863544 430255580 664423317 619577095 37184149 985155141 939585723 210809605 578583362 485096093 568113167 329959141 665006564 337322962 657393442 467466259 925870614 126965782 530558886 745742682 690404261 740717205 121252572 909111342 492143397 501847621 101768672 686804281 111118258 796466916 853744878 49399528 819948725 591107704 219742019 144203985 467758785 179744616 364789736 490944474 711113150 788492229 38598249 957101180 578321726 380107410 390679503 378305634 553610392 540367355 536401262 184860109 841197125 792537993 405149895 867839781 602751055 390638495 2373357 932682839 443284732 737811880 913500517 289157492 646612312 918327699 54880641 743013114 446439757 746064742 911042922 727737066 472955331 731908290 694422171 699872531 303719778 980053669 794121666 751082710 77681142 821380872 703171742 574719636 272182095 345279513 776477440 652566423 967539769 320690568 73935167 123560319 951430976 281616580 846756425 671260637 423217161 600462660 341061496 528924435 589534664 792785471 334298701 491564983 365130707 755138362 445666483 532179636 171620069 488854421 443291902 561519385 791881377 79505456 988541599 609810860 247628840 776704839 637633851 857467061 506191434 94215349 615743177 697783772 971184092 858806961 208404342 17888841 155848007 629644998 168663820 567130455 193412969 10242559 78407763 553159959 51895358 989074081 610140101 937691406 74007959 277193474 884317077 7113598 68113100 98300312 757436075 457866067 716193342 365807527 158303048 660181178 874456639 870051927 505175623 589311567 652310000 85122761 932033135 825690291 753623128 335142052 285426342 392300916 61820321 255292314 640334105 894256511 360444922 153624916 490290070 850127183 419799840 637879496 375989329 693629053 914138733 635305270 711276877 889828721 598729333 100556151 107136563 439763751 900332889 617466270 374728689 105658877 531463841 287500246 713085362 357669424 167588873 409019390 808873826 609015129 783924195 727443851 267593304 153515396 594731664 238717122 802938307 809169459 581886037 647685613 181743562 957651655 901736202 684682549 363202548 804074853 322340857 529040602 579261203 352172274 621495530 315372224 461604824 736462427 888684231 670758797 184374509 774319870 169700139 107052166 687850710 334580923 356334648 783273044 559309193 187254115 506249532 554331951 650156710 342093078 324143396 514296814 879619937 448293890 124719132 827440047 855022654 556691916 239806311 135423469 752767389 886322739 658647436 79071116 791206675 828844795 165296969 244748222 506117289 708384138 462551203 869190670 63307164 883925576 15030621 933624294 192217304 633123472 164966312 650551510 246828387 837111878 539791270 867727572 309258918 662199608 776924554 511881610 586223191 890384261 609695499 563847254 814747612 531896439 135008551 647973908 680912495 23010667 664456307 290028128 854414687 225900565 628725852 422027930 140633665 613408724 332348909 730619187 567432481 332919559 200056491 199423824 177408558 331324160 401983585 513703887 457614831 931700369 554938952 861243408 296419716 755553525 690555647 836835524 262699469 774757243 845005029 45621331 721653795 750082879 532897526 451464003 498801700 63608884 800948909 984931476 865631718 708002108 358414226 699467264 312846043 467161019 661222176 898415963 110130989 36265080 838154912 915172045 169405710 656914797 71343914 994149138 580037894 749614805 802634866 831754122 695486898 105317189 262355299 687504099 433279662 908504678 691671919 629395553 40973138 851912303 467196109 830936286 613890731 864726139 867313682 614500315 8150987 915872448 733352120 997898454 995503339 325485718 539116604 513219745 290633389 37934062 810758760 812270877 197188898 446237030 174226553 592801255 932487950 541146983 269720358 992071751 243708534 433173740 916553174 947718258 41683412 822459764 214657804 693595837 286543713 252355665 869691212 162941423 706474888 297905638 207003359 178793500 620313420 229923427 41063042 953966501 649342433 114032414 858224411 258964121 216269057 74607509 671286063 626322071 651968137 108874373 431144322 785075706 111927625 541442320 386930005 832388783 632530852 604821150 692200475 895511656 97320472 433880409 487165351 669973627 524384165 877282528 651029064 28367919 896011136 843056583 381328336 962414622 538248791 855598955 541413153 827313554 368341871 481872612 976023623 519528382 75620048 235673429 758352944 737388101 26687779 767248441 771460510 266002977 862068455 730742664 792695656 5942409 371956674 629682644 790150273 221072398 497721036 27308470 823317719 181698238 528012143 969802798 128378355 422079050 907589239 84884394 983937982 407603431 184664394 176363273 783520760 420949908 624645809 559608945 400714312 656441361 261242268 461858881 156487698 536469237 923800031 585629152 956610151 144414983 266390422 838443786 490976220 668232026 918352476 825836234 461023986 603815236 810877918 683480954 737851190 57560760 342889195 894708829 986454091 37222291 646227271 546096392 83087507 664960584 252020801 86459771 441995427 978368683 461121035 516108046 214100092 679788262 802276667 531378621 468127139 265343877 268588626 849085642 924311162 547865318 253690609 843320687 257701956 925757101 266822964 214671589 656253610 561715944 50495158 328558566 143476647 384603082 156356051 275896198 952174972 894292160 241858161 719486594 757781466 145425631 477175057 183210319 671850224 441330917 223815989 163851944 729498093 694454879 547361461 803923143 677918173 473871509 588991867 100491181 190642969 71441950 484804436 811023471 185945913 301474934 529602504 178131558 602215791 252313932 843031845 219954901 719901374 267332610 713964214 671718543 469067417 884366350 727168237 249091284 267797464 149310743 177799611 850083904 323780591 474534981 728498731 509055579 413819183 992373478 670402404 224485233 479431888 899829222 858308630 595946643 722042514 39163739 280204867 155058247 842868434 475672424 438415224 977479137 188851155 826183109 189843494 982131346 451615351 554158089 262524695 278973483 372338746 788305333 706095585 430322190 965693721 47600872 921531695 170108880 884350050 675745525 37742527 228469214 355371191 940126319 371569334 944962840 79751254 164387182 427995957 653932461 361987623 307232834 239395663 504943484 538782171 639676295 6121558 559632876 914761890 753536356 940905419 918833947 931814263 704337403 72745367 211819233 127929091 570663764 960640998 97189572 523878357 844306574 729375737 977798887 311580380 754223202 281805205 687985157 637071278 823416545 524270923 190664088 523000803 936239634 315564984 196945962 980565012 617319705 25136002 259447947 202736845 436026945 14305057 934528405 870530044 122798444 226130222 846388910 792063876 548948255 107887089 49648071 845654770 142094014 165013198 16810839 983322585 717245704 594610799 13675516 186148832 23895609 59056194 501373949 452564921 127092593 979113461 862756957 210304698 846523019 882445451 465310355 787460448 761903258 480181660 34224741 552731721 441132443 437893262 151113470 851680783 851102299 537735866 540657301 561054661 797309527 561953312 447497458 640301201 457285459 586874254 347439189 17051191 326820112 644201514 333298964 409695042 962675745 335548916 615169557 853225532 434350874 499150729 644745432 505663847 981718211 671824134 883182151 663390201 835759511 984664939 384518966 311414093 667152947 996328989 416502188 150757681 261288935 13779803 132366651 778538812 446930220 424765787 877986457 171848734 563991936 899752487 825471247 84338 912094102 523741704 930764370 918600274 769613344 498421873 6329078 46015155 368074554 130346807 557682606 444777427 592413895 285522623 333760963 207240658 556009711 785087073 431972509 532457939 430595358 79988905 979139601 256916065 380178348 88688217 897934197 765179359 147751021 299818810 939540870 643982281 52577746 604961684 296048156 647824931 415158886 992984814 90347001 822609566 655103821 438507595 835616799 536715966 790905244 895164607 72246606 207934698 985571604 590852667 206177453 792860680 261569687 737502988 565141990 993525092 127168417 212498811 725060465 995246976 792820831 521447485 523354810 712467158 608183579 731428922 345244124 241079877 481215382 712737849 774687402 207286248 282655552 508968010 830381574 788195684 540483087 239154327 926767218 796049845 441301582 521245450 436298120 93498452 702197711 528420209 610316836 282699758 37586968 525563860 259425047 506396249 358581773 37137399 686726180 578673126 98786034 157727876 281861093 767775895 798854437 704319984 728227621 741745029 226847653 77717798 754165305 147467665 593822792 844369976 42225386 423937294 401452920 800569557 157085022 303751051 321145454 601204449 62778678 827933410 410025144 951627745 153796869 735885186 805031327 361045745 472506473 398925130 664805964 888487659 787265956 852797192 88910198 509024152 862236403 569488346 688654234 521011954 426840091 988763940 824499434 380557769 463811089 294766326 637648101 759484222 692471406 916820317 764452114 220320832 550926712 746677208 278244109 881895616 762772794 508803051 795019767 317357855 768695777 617720936 567887364 90616027 443951872 528270341 599775316 995326959 210630301 841632043 440881701 731264680 162537675 296701449 755319596 333485634 19458878 589607959 605183591 124306440 908092226 659137558 232643469 571751674 940093356 597572632 223502887 711996541 522686614 246816285 289752948 290408632 763172421 876629139 894485810 926751967 329212343 493321144 748801376 615766089 849191012 30493971 520208587 588012763 994342801 911130961 4476537 74030218 593564035 711299695 30219298 379144871 833908253 504744186 380207066 979772148 855030483 107571028 483828563 322307050 617451235 11359932 992924938 606184441 900805934 584001521 761523480 119303281 602993331 101888087 252181857 936534673 885195530 312248671 163838576 872491674 117171255 132124132 236960629 976199452 403920071 292675526 104557370 368110498 434297135 363554790 268009544 304365948 957926137 273633372 455864387 358379915 560898472 58520051 874422943 999133059 375996932 731478230 177570045 402779211 133313735 976953635 12299410 239304984 745900471 500710530 948357285 4345421 695395837 23251748 742693668 446779532 225149259 317394013 399606368 657585393 92313285 840421670 790116824 364018889 834924029 886799952 243961849 736743314 195427809 250003158 642724436 392514223 777288642 563540246 824637689 48342636 939484799 227793000 537407659 80366993 368703759 520798136 368823058 16475785 496501489 465901586 385911985 879907470 756708252 946125092 891830460 768197308 798153982 846116295 588854023 503172837 320744969 98455027 550713855 2529244 211336305 710496010 88171386 118375058 830823597 72570875 549032345 157661700 815888648 629276661 896732409 895730489 596296449 180268020 577979693 629442368 450517894 567445783 271763224 515743055 946689474 89497753 888547182 821989101 203079806 249532188 741190618 554940726 822624085 516936214 92555081 759447437 219345043 948659712 129252510 591761433 474625933 365135289 843759520 582818256 691083735 144968695 944839609 529000436 725471580 881436961 114982511 915894431 260400688 231301815 732853433 352470724 662387966 54823030 118010946 963969437 430156273 584927017 333708075 232123078 562057053 191421973 163347368 682574111 4719788 519895347 589988044 931309124 599045582 935717294 627218338 173986747 795965224 910340877 442221145 253008136 523082374 181936845 362736830 533040104 679059400 902602454 859481214 255243411 191996468 502469868 744910845 616450466 744320388 169462307 793090893 185687477 907877433 619019479 664390548 950618201 112282283 64467956 88395162 317189666 332964810 2567896 426333977 964920057 351792560 887011584 30674540 507776563 366324511 424558129 641057199 769344729 39350950 326762251 936659114 963715018 889457731 718826453 826401097 105508060 782469491 175142786 983101263 70655154 233628073 887584909 596441251 756618939 287631109 222702563 950422065 617259499 648558562 142418085 775994370 153566702 261799656 794973069 998496751 333993187 981193275 33303523 266237161 964057748 746918669 10511476 811107237 151471577 870969193 955403292 230134723 70913426 85338535 373378844 172040324 744782509 60236215 134874169 329129872 597021631 558881760 485282047 37659525 980597933 292763141 769261471 976471558 838458882 164278342 856912778 871777841 293181403 204682722 239197725 506168249 403940327 240838236 296485106 772981334 252993400 162518700 957451406 732331816 188769739 931175767 942275889 254637306 487338633 666377271 351807699 649435383 713139172 414627601 327647586 918970066 679722460 197534694 317130467 366371764 291365047 506117478 659862999 571474667 614488668 174767136 447439684 536973281 186293954 798714016 280225451 587283021 205385896 538911635 68620599 541950461 249478560 907320959 109620636 304634522 634969509 468155910 752440797 404053734 391837737 215171020 618254618 983601839 734744031 977517589 475422339 47924916 543450801 348338994 753147996 1775347 691635291 104375948 916569333 972643995 815893569 977030958 394525636 111058935 808568650 122158809 152049747 429520118 413728587 629620064 739111647 339910831 259441459 604171636 756683573 812917859 888663322 698330312 215264098 187110137 347696654 634938852 567411462 941726661 232992539 112750493 540234057 856206 719028281 163459218 33811241 425877334 873722799 24925737 241024535 136704040 261618135 302572901 562593536 864376011 77803198 429430793 629557089 230320500 46360752 740815835 511974481 968416263 112832117 739240492 654494098 58305457 315336888 900751349 813272971 664865759 21968360 46605154 189611876 642774319 178382602 771164082 929773885 893013258 931584773 954357479 208715979 643667264 86005308 493622646 651292418 926616020 531806813 155606280 305205287 188735857 171488697 423325992 165947394 682770871 612571147 254296597 713965466 812434075 871077481 278918667 158470898 96718973 245090498 935266790 124214300 636309241 803642512 761622952 59466875 738714404 151427461 459974810 159626824 407275358 926728038 756509479 844016047 496832704 141297730 564142015 261459354 622556734 30588044 820365228 941215289 424855093 193031415 48684065 871259752 419709933 309454911 926887819 99805902 914672340 735699642 43929101 714785142 226513533 831304143 699976835 338343051 715970774 872503335 701689962 690933548 354679614 109650403 593611831 854381939 584973052 629799526 482785108 789708575 654141720 986365914 375609137 279929512 738370239 558923125 495940862 695513150 606335931 782736963 267662061 185382777 908653131 216476472 834604736 475823752 439021881 419491028 714051060 828266148 679368668 893845326 836834389 378625008 987556359 545530041 545336901 280947531 974604837 11198964 96243709 586134150 330113743 807433323 955593128 256615846 596122013 429537673 305733937 71143430 967305130 533011698 969118833 49757498 695040799 990850947 901742364 447048712 690101585 284398457 579450862 385552927 832170334 60070563 389474610 612948427 851986957 553083905 777158528 560727626 35802554 651583353 245231141 754716084 88051165 845585975 492799347 393870133 417852323 819873739 434167733 383871862 265685742 965882795 82745678 368903354 697297560 666814022 661816676 957892229 903626142 805936278 987747676 430204053 179790322 261955940 318191218 124313978 708081129 551652920 493450786 116941962 90128773 804600291 84155696 511836190 875277750 76042094 416346353 698013563 563893287 53120832 934959195 169923846 542881548 81337396 658802253 779459329 736437691 570520317 891086072 730028661 975294608 888250458 245145025 40996228 626641650 52922915 221880514 179729112 259347604 380052497 298594856 630390605 929314981 415777021 785290983 607232381 266586726 196794459 918055299 470039212 355259572 61228004 545943296 659561744 516149021 19584006 844413742 632475458 688515810 396964428 212909495 592774608 219722413 627813323 226982616 821363284 512910186 445876468 465923073 705807482 979332435 488368065 675138683 269124558 733329630 4784704 101615343 23688835 641031356 572738314 684726302 37933882 287313936 842235172 864877207 259678110 121613396 509009091 73459166 856904299 290042834 814290524 666879209 288420037 404171788 701800717 861627155 682634974 953695534 590494239 73282718 343703754 81485948 802076102 716923576 667674028 601033973 527973349 695550163 860186077 906305648 895245553 877724174 54328159 95471247 690004136 583088019 993917019 62890796 226644359 645066326 961121205 776315190 456669498 342710197 71401416 859358193 887445874 552028066 219916452 389238936 183033553 115086511 138941924 289709527 312314418 856505603 167325994 243183362 705618552 738608335 616076618 625342999 795714589 654170710 136597055 552831685 469846948 803986663 919626797 619632626 816904403 873948572 108661470 1424020 974311269 443800443 61099267 392461747 49605617 443789585 652029974 805302338 532568073 135635978 9083819 904569282 378572292 124203223 937689656 772072966 242861228 798432638 80941795 479441342 558734129 756347111 976710414 239724060 467462342 117228495 191494927 646977366 439378449 55404454 321032458 638393221 927676467 471521902 647909771 439401288 442815953 8002690 860822848 890280623 289964185 121490671 168702969 235656085 411231325 226667550 944505190 148573685 692135833 639394899 349109001 66531074 697991791 171246555 705617755 783486392 613339127 312684293 775600413 729313205 333187312 707965693 237349310 978068927 803908839 479473802 33620633 513276981 222171131 883979337 128901881 744653941 760640330 706780884 173242844 18584592 933884648 306403322 471218387 973584829 538345236 867318650 207589422 805832144 674601410 207487066 834832070 725252207 608608202 362194543 213929885 470413424 199799001 489583457 783520217 941101877 644661203 458009959 93287818 587365467 255415977 790936327 355272742 286720474 570828611 722444821 941188362 800378461 883437371 734704637 955867516 909162512 938381157 424639582 520299439 672609541 681203778 551890592 964611494 587209489 212192857 650968600 384988018 341971679 597838904 818090255 805321289 362877624 461364785 1383320 395572414 756034963 783161360 575974612 896517055 226879956 760742652 122686412 888265177 208247527 140019367 33546399 732920826 971292428 588864528 487896090 367751560 771287442 404471294 965651174 835315440 509262268 977984926 563246889 235413959 348357051 485607538 584704065 983509893 758032339 532308480 575836254 354606402 818777193 445134612 839736258 961140994 125750327 535221587 106378422 734480363 957260858 235028693 875547267 759623117 576591659 890485221 930544233 550121649 426972332 113265872 656460199 105916659 952542878 54942390 566782319 74807642 180401172 41634712 270839538 84335802 86138863 846379910 922524311 585022580 275230033 760463168 178740781 560735556 592673099 438584596 620668513 780613180 266756256 632437161 173308483 849187628 842443606 773035394 58734921 281753804 367478735 711055339 568504034 892056013 487525230 547283847 552778028 102767255 219435317 752060517 241503491 67078452 757573814 289570885 831285744 528716577 291764825 272412357 9697579 647555328 904601754 896776574 785407181 793321057 598914501 61993427 60601626 185229665 862818033 145746384 441750481 828309191 804050522 799447021 391434304 105669033 55861128 233581674 284917658 355915389 958066805 744418761 112004770 583950054 642444876 307572340 4883081 753396335 558773794 445845530 205719224 384029498 313869876 190359763 441807303 377645952 622898079 49555206 978957427 917067767 194212413 133549008 22157789 699751607 202375964 109247118 7384948 360767738 15030782 719278138 761397558 271891021 656158109 211152017 366229914 311304586 435209644 416401886 57217091 582432274 138047696 87451377 498058873 690774990 635907291 383471119 983556477 513592869 157425788 464259143 62298900 534251022 546175379 986338758 74945102 150018289 779736809 245783636 135402523 897351918 515994853 416645090 291102250 103453434 284465107 810672314 907542816 266609192 386012610 77651375 381945758 882390522 914167416 753121281 831495507 404600891 108593689 484347101 410329627 477298827 662242686 91172270 936956945 189415345 849986983 721818701 159398032 296205512 48467413 576901110 122900241 686297418 860691782 3549258 184460095 686978048 588116603 601129256 591485452 972891940 247676772 211842630 182175923 536633187 629697755 15777220 884695937 633881949 763865205 252492966 738536615 994555495 480823423 722321195 388148285 170275539 834743639 303970805 823467948 846666401 947280519 327544091 986948421 595098646 826766110 905994122 245678690 549893083 861500358 356194421 167045758 912007468 968836675 121994823 257460700 483458828 726446485 557323117 365252969 891113129 734797620 215541545 951002582 198552626 201955038 150816600 685285642 918898916 632321745 641379421 622470038 684438743 472599835 733546083 380110760 828367091 337022604 280297629 285732639 365087468 126055665 324586417 479470677 204517721 990555370 501048642 95785837 738040264 541675728 652726658 928564411 127938400 560590015 143550963 634850911 415374210 749812241 145548698 544504746 50194938 184312996 6729903 89832588 199877638 157402359 312526126 748382333 987373560 406484306 218593047 400321164 497540142 50614030 397212296 965886557 975425313 846597609 597371388 74469100 437299114 227422360 479462233 528425175 749147620 571862703 967963293 936537491 628842242 208196952 720509685 252088250 147586743 461992654 445552135 32312832 70616152 110892925 295647133 713123990 494564182 130659370 322638899 708111593 532306393 571624095 948540773 866992613 62369008 847940665 471492196 722548858 829221523 242649469 264163925 200179430 640581822 12096308 792618396 273386258 89827700 85601559 454718356 450435904 344715048 207407254 475618011 112908505 627431172 302059312 803160692 818135963 954529915 246055594 566768948 785484676 27506544 555651809 685199015 780250872 136312022 790942140 887473016 642388968 796802587 581505453 624523969 948164469 955001792 954035417 536229166 256888689 157818636 308356784 307606368 536753454 646597606 549698009 995944638 825082145 936081524 15273226 176417801 938958177 899965018 940912143 745601605 686348045 614160427 105317047 211909231 512484998 820626411 738190290 766662528 219836304 866333449 174473785 228914101 558633064 106366545 739638791 523413390 142192671 675333021 487879013 881995963 470788020 566406494 31339556 810177191 520473996 258326265 997599917 716259879 531344402 276781596 303630298 614755097 807921582 853413616 980384082 140348720 173708475 487574682 597299071 508633381 471529684 998918820 37135098 837318116 61002865 894029089 105895443 491055004 196226370 510716185 59974365 918304481 278239294 663614319 766444651 15285609 569843434 117268641 734839725 164525020 701878637 350844126 852987257 487331062 208683976 158406376 693720657 976095872 693158914 553557393 590907520 997009402 471211296 433450822 998496557 911266546 372422440 922988462 193646796 59873762 556430319 283110834 390406732 936210665 870972323 322715924 995485132 233945392 833573059 374571950 865605622 407907124 982604472 107595011 39226541 887670387 360440187 985800185 990770615 556894827 555802954 272854951 648360565 761507952 119609841 276098730 616839354 995601425 377008542 364176013 196863943 387880560 828477093 939530537 684067590 4344807 993522863 720540187 94621222 363047356 197193715 952752244 130374412 730998363 897537265 553133634 370565817 937468987 188318488 244533023 116707761 254665644 399780280 821516664 847926383 358306887 388835804 841319382 477201025 662763240 896474579 873430418 621490684 574729943 625888339 638134009 764246214 304042475 251447886 761955499 309214585 941057297 380549212 815412563 583875489 125102558 696989087 296481562 743190000 620870903 486246150 473070689 111932526 473612214 37355628 867438104 437710988 238995792 838814823 87536189 219405047 696382399 615444403 812479540 679817456 577303555 356519661 897502774 660809467 755979107 66129214 616313023 727974022 222192658 311382949 276941379 16005756 932226526 50743016 856701797 934416771 268164132 675278145 567904297 579784632 49587361 364586985 846497176 980860943 393556748 66209634 786514973 673024109 921081418 101866262 342005697 156130714 873222242 197920218 930210625 574730980 716956143 91387915 396150086 426358239 133380105 101874596 570092259 990432202 929548038 237203270 380699134 230801910 730608562 680075920 90768279 70781884 183380782 25214855 215336359 259576905 97445852 22769443 674999972 639433010 639773923 224618928 270412443 803795964 1203052 334784357 162738958 545902283 718453142 277504789 583030975 905087649 65458368 118505943 480389615 438055448 944063715 336005823 824184485 378386924 624625414 401635993 569171944 419206312 917369448 365379121 494621847 865732690 98420026 594683630 460366466 648916110 865053230 88783142 316607705 374414571 887463601 62029448 502175280 1074656 200085366 645846503 938439318 560104784 417723201 829223485 172320451 175217958 791443716 687721741 38154678 951066088 86970228 448119893 586541208 751217829 299291131 775089678 733395210 847877750 331207761 356014099 46529156 807900984 788286130 24212381 676285794 250692195 653217286 210488014 723972275 656872161 107620669 721018960 966659490 655309839 782332779 665695716 118898413 14267373 608685357 489108401 877954609 507578959 236246980 495205781 446329021 222703274 550454902 460029508 690667278 263670838 651885073 993489684 284513215 117653738 443974005 360426010 94051747 661556208 844346318 922952103 871282536 761251316 422110941 363643118 120968758 402771391 790104735 401967683 168389711 6152939 552118820 816357747 381013054 131015628 316178738 588439402 957575178 293996671 217561175 879548917 607358194 499713540 278028982 530947532 507771133 414141949 250590694 926003637 363368438 342609442 995212567 69168765 4521474 400938138 190701393 222142439 773483519 282117325 548235407 997082385 179595931 494308609 124814057 26125326 131574495 794261895 707545423 330373839 450183543 281849500 8967361 57504326 883735261 80131438 604949016 533990478 428709669 567520103 535811704 554349387 776215330 337168288 187847062 968744737 990037665 348089526 476441509 418308611 694119984 358720217 974677519 654184988 449554916 292614467 690685177 992475141 170911159 174029054 519760756 328302535 99417769 763112560 474911893 869063845 918336824 977762942 682555060 705484920 325987034 508592625 91995438 886519732 184840748 412972776 737926644 567922039 922795309 829561131 724763904 964555761 277068244 223111982 429319031 512750809 523518565 600099643 345307017 9593438 201064151 938448599 255146743 618290850 385630551 836104642 832049710 970145901 780185730 717353520 727166624 505803562 221701941 635411264 764148219 305694980 802142247 899435391 116084883 543647165 80593257 123685172 115045995 316466123 718422867 935656803 149238457 369004636 528285500 574386665 417891408 63677836 772750666 232205438 739418130 320235619 361926968 199644611 913051764 344793363 212111599 585950528 689699762 676843233 69150869 424067206 400030413 425242463 546185867 824863266 338187147 15258007 802452163 376116486 244735357 277603326 960034094 941209239 516478411 262374628 577800111 206188586 834901012 573679140 536708441 139755973 134694030 524836633 514178462 217654043 468262991 453012975 25420376 891975595 167400159 774485778 551879056 245709868 821164733 901872655 954592393 911384974 858643007 632859514 904186092 488551780 586770755 258209602 164755969 526834733 303611094 960914198 480216920 961766674 292369837 756638804 507308592 481563699 50589347 969184845 393605330 254760461 921431023 719058459 257326534 119882682 521833426 743629011 39900946 367564681 820939906 912361454 754345357 599980856 511895787 863233471 915473632 739371924 542903273 890772437 576787701 684239764 535475947 785252512 441889991 847323064 688805991 219522372 892677915 876039650 945207198 990659358 291551898 973671994 475939318 45017146 983219437 568512242 673573227 96549280 770056428 924188117 816952398 338702152 289005842 521848202 296576506 964248704 84052365 276215950 683265604 513595189 884705457 529239984 396729500 920169476 815835650 989633986 972753052 595405800 604450813 57462267 470016685 406054214 105818212 221088911 377544524 81289490 899272405 165209660 382558862 398104945 266573111 389005003 164969098 367138764 744538834 931151701 976170222 415428308 743751206 938094262 17743854 860614810 227045657 861518469 538004867 520659064 453358508 622577625 641081253 242545170 762138600 929085827 781545045 728036576 380647386 402454209 867027970 176659402 860207326 623049356 27980387 396400565 262462781 167773353 51314438 704528454 637731922 36154273 184544776 785706669 461349101 350341138 177338212 575493207 192368672 463253022 843576082 102203498 45997541 826453848 602889327 408904623 502224157 603348685 819066645 291652623 605488576 42214372 871846394 463972214 986284258 302175964 994672820 735566248 229613351 584868418 299862547 370005812 271369088 784402283 12414150 962675459 901078728 720789328 532656488 687436754 647796133 668397278 48447987 176189227 784044894 94858556 419031159 464270351 937190678 498522750 228270119 895028153 696377470 92452760 560569885 745129839 251202361 878128211 401335343 261086720 246451427 437425748 545057561 511602443 911436260 168487608 726275940 272506975 159225831 482915519 687027779 949828810 21495395 700950693 833144302 764517194 345860813 619206324 62443806 921690312 11868624 598958120 215302541 315792612 35331496 626489915 901847524 152576453 337301628 849952036 55792817 779097825 675798853 984838096 580145072 930016220 456131009 341567779 208546357 503740436 214110907 291354049 942570513 50444406 859318237 123128796 919425429 536796985 670688916 688764551 84561163 449764140 140922169 359380769 180928542 476140496 499820892 71288305 500436158 340549249 425072129 35994139 436005458 668616499 670854200 947545574 253742941 559535139 488045105 702979215 742851457 122317515 207914237 62137235 693307222 828030843 919112748 912226785 367595717 97537862 593421718 110905153 480933497 81241790 278257346 739739847 102619629 414859430 984008446 124771000 786388647 317732587 12262702 948713525 112231484 898702043 568142629 470590441 99494218 880366993 532003915 244289618 662405930 245148006 364288364 272103232 192924725 462523621 382053682 709597461 717775431 905193559 849600133 805042812 137143094 378941527 404099928 260350677 947162446 313370227 592812631 967689662 936798307 891796798 996719200 306359608 414897229 397803179 444385084 52529149 757368300 747591681 614523536 609353807 8680754 176824899 523977614 659330043 45201690 130460680 106148790 79756327 839026511 802148590 200116333 473189809 89656036 445346969 982259871 900209029 699291122 366885257 173655274 478010231 363766551 56680739 919823586 230242017 102789988 28674244 389482438 664483319 65737689 82126923 947810432 817158501 128064445 317108901 591661203 445426030 653872021 545852989 83019560 661821134 907157142 486612680 222738563 648270873 224486744 872628931 367736262 505542983 367074278 81713018 106134682 661780306 908277396 702898249 543665273 527350468 456008380 92381121 103896231 26853675 670490902 44217228 194900149 608086305 74121505 377119285 119110675 909662190 950434007 517818385 76825009 70285891 475484082 535662144 693140634 75689685 727576973 596179204 952494285 174762139 204065595 191742521 447822563 292055136 638518470 425741015 340201075 923078313 497562424 668084440 845114833 807249524 190898689 631262299 540317207 497770851 518858927 347407515 351048269 618624843 937050735 568497325 395054131 850322331 837681042 408004233 37803817 311394901 368040695 464604840 995574024 17581427 480831295 599168070 937397845 706344530 512615240 917174426 9613216 595428153 782215809 310296978 748253049 134413219 927393915 655547960 513169776 554719949 846561166 922060647 371185557 797440875 289793855 630197756 81886120 983662752 59477705 130760912 90134099 489989794 263918201 526217169 143998011 813423307 865897831 800692956 699073922 767918345 321124527 103980144 697587835 964108459 716400100 334514132 784197802 919637160 337266609 565401627 34142838 252199075 8542605 985013112 746317234 132855891 638094198 176066261 538652488 104883022 576927217 230489830 505150259 578590395 936251303 47105813 222688463 528685312 698619257 711781777 597885789 504723269 414985454 172595370 175953615 13942439 310016599 857238278 243137456 111927880 795489971 706175446 366958172 546498928 202439610 930674213 295386486 607392382 893929892 374546922 488646142 690525063 823788208 775752497 569629932 934245606 366503944 284357428 876748353 512662009 988707163 831735132 859606835 798964989 229175532 714131607 51347511 198389814 801718756 321688538 115085335 616372715 312382732 664251912 833104181 88296470 435427131 336125038 421577333 439764407 748543881 70909600 474616312 723431106 66201715 898914953 796215723 369163828 875717172 113012370 519919846 379359677 268740470 206406761 148841433 600749573 964475129 888564541 18202157 377427622 439692708 921131955 224046430 763305515 786219364 697372773 463200152 549656079 470185885 172033762 570399248 685849094 855145078 692431317 979106687 474773002 194827499 121042700 327254663 38433805 401286218 597395827 193653829 385683392 821094638 135392479 372963466 409546115 833737436 928249959 601455183 391848494 840955458 365284043 961278548 176875104 526139539 818476907 149531015 295258870 629026572 540405405 669904172 819052262 281289067 574933281 231903789 528766601 655042317 755608863 802522134 606151152 175738258 399381675 128099798 959274655 40111129 524213188 100559284 805147011 49592787 114670862 827115571 181902094 99706640 913723243 604428790 185216333 144313821 64980548 170382076 433467635 348874148 186732505 347099317 526211935 893355650 557994754 636239662 184989366 672413576 532453689 962744821 648833220 979629334 623796723 869043869 201765069 513668059 523361199 984051462 177575650 514361028 398022341 189017615 316943987 971843426 486837032 381344311 321574074 185016064 887444268 50979495 659368171 929264368 649066925 805681673 345402114 49802086 737582084 427837911 502873000 198535121 570857363 833018248 669664240 817765103 935495714 804563417 287137679 784499778 547459492 677248678 906604101 236696939 884191355 491876026 130029898 308373061 893321985 685722187 647341498 808629971 713287089 175155870 842741845 822227054 365279949 469899552 863531065 535288994 425798093 490516620 999335212 7065788 317783750 473469239 790347003 212971143 478775008 802437592 777239705 196914334 7695738 420647998 44838142 395442938 107436756 689339727 389551201 443631561 85844546 550889068 30614349 995104587 58062121 315550093 304616754 516684990 133094739 666104876 128542329 300232499 968590768 899150912 441359951 325545826 708759683 574974620 962116570 497544710 644767995 678162207 433789463 373341128 480609189 600369895 527209015 121870059 68049198 177851807 34450791 681233946 467283088 502053456 366562156 114083071 624166438 254341424 698797301 211119749 438568887 384133001 950550498 588764753 847937483 396286123 692727755 961515577 595998506 35824968 749266371 621140880 442473459 942196932 901684588 330167709 274955987 268183385 49821905 945454285 408928982 588136786 940595207 505766392 806877604 475638754 536793975 432320831 315373533 454792329 314406251 798885516 320295070 140743444 38445441 480280317 222015291 814747345 962909683 383706297 403041184 900639529 200139327 649635159 703081739 403671909 169204991 46236592 50692873 672751442 212711173 40548135 349278290 578853107 586066844 489390196 928931393 746013418 284529052 615796703 36262010 834065592 517595724 391592563 191408635 120815698 810284435 689359446 697252055 774806574 37189476 274779132 682747655 931854887 991759234 77813011 217224315 33243462 193369754 791390861 905371569 810754473 411683870 752251046 590029662 655148173 6514313 933488990 126526548 298785111 962400549 261553458 483591355 402758500 401053855 98311832 705410515 258683992 619370406 267305952 260682882 774584483 100491784 9402064 607227341 253101758 32406138 537859106 776100241 898769720 541091390 632566751 722122713 592196270 408913382 195465951 790178443 165728844 389080140 54543611 218427935 801636929 852066687 555749768 391172459 598928411 275312537 237599342 843657325 171458171 289675417 695185406 367102210 253668666 173838550 833954121 933269202 728493407 994165888 132733631 590671436 132827315 204313016 691219083 291557403 185608700 302317491 361934995 538447162 143158579 612639469 281740643 228393071 453839730 24960390 540088615 689255492 803659929 685180560 136231105 540111097 658099936 449635609 540762048 271701438 689311478 682629827 975797236 977539407 903893890 895336685 471138657 357524434 201701887 635254496 476652010 361954582 796294809 820297484 55053 140493601 189377779 381224504 439660897 768680456 741861062 472101098 883099222 413247257 789347654 486104585 961840980 491223908 953766875 569507993 485131831 19653430 456904171 655112849 675021536 315329203 756436867 843588690 895132539 718604574 859371818 708516312 432197180 267202150 56767507 641068139 973575035 897330050 224965793 93264763 988744249 525954528 373641613 873098186 243817276 821948760 359453219 753808736 196480997 924843246 449630392 344613166 66356890 553423857 41184265 716813624 764232791 571503521 952473604 794505891 261064077 324618280 46027716 814207498 313493060 919980397 588037243 809629304 238130702 12180516 972156922 439937383 449045919 574674545 165449569 947174878 661259448 18448537 784794770 216350660 464218277 469271334 470334486 536716173 154050844 533337347 162451281 545685100 390275652 246092884 471192280 531481338 333053568 68795389 345863655 560712989 128190822 181729825 665660511 788562522 455740519 661837769 219987483 643989090 7528421 497904798 507649647 773741097 93329048 755018293 800152777 154925739 425327215 829369549 576902317 310805547 499871142 994158979 82185564 999162105 662126854 715023008 786206121 211968749 799052843 813498598 994327725 441559722 464757172 665621760 10545779 145530125 325855966 702686603 700949207 907426489 628954051 943760087 299155990 218611452 51877837 885335188 758799964 810604947 263721008 202689018 761754255 906233574 651021849 232219864 865328441 220017599 56375869 210132238 567261098 140840527 453050206 995574619 853809299 935131045 286904173 406395579 623719492 262301865 262016831 677564140 488402923 13614423 647643476 371370739 226367064 203295654 328677440 678512327 166919397 317991474 474377380 552738671 62938046 319601250 186821538 767086098 302572847 893399506 641299845 294440110 66717196 204348824 338969416 117652749 491899861 434568868 952360994 640076752 385885048 349112902 48963799 350890109 629368889 272030375 280741474 635921462 391651039 656992215 519615581 93589867 437079325 517947873 110661010 958299967 275424062 305142951 414405591 803601024 192484881 238315838 608625810 772176049 172058767 204066663 816886856 288774457 505964918 286232821 624753226 657558927 689131749 869183050 518372933 169293941 861021917 843047230 966029822 122083250 88350336 808594131 771813259 800198147 185213150 387125019 93984467 666073121 988182762 486162152 61158075 996817204 312103367 987869704 364788120 402537422 955532230 424929453 896144068 483746841 287366304 437921162 89274832 424550666 456880889 822778310 252766392 315825351 260677407 91847254 290829639 735348359 642556987 31007066 912207053 619925913 988370072 603627782 941153866 189786062 588864029 654548807 816114297 220398434 947847652 145671460 698066937 362728803 71124486 413836927 555809386 201861810 560102697 600051121 602754860 331117168 302149692 149243067 861845409 994993809 295142775 737255793 681980113 808386168 724409150 57422670 627483359 884199502 685256645 9406798 674296805 26524681 530758533 940241410 696147103 275742680 208753848 217854574 968982301 357578416 163838283 92524020 600301960 360014085 685171258 935060469 417476476 641942042 787247889 187715285 611556478 192396470 259430406 862367135 277400520 705062429 285206913 459658179 268729367 884357021 368324634 377822061 166508204 373168343 672590740 696330122 818963332 406311784 588732570 199870585 198393490 979680171 584181606 813567005 686821871 775476265 581700332 280949581 943711905 419359300 891074387 451523877 234178633 86053930 876835284 88040144 254697888 469679968 786803759 384777583 871247905 792327558 929685644 339254127 857361052 228139737 859139247 969267855 442005082 801221683 936806907 810952710 167562491 497822386 981468450 481150897 492184190 533944972 384539793 331537650 44253975 334691579 915592356 352789232 378499775 248977913 675821359 372760210 386704052 179675645 339703519 222686573 385405151 207186232 11093918 131264831 515876862 534102953 243267332 893171196 787668374 996254461 105352883 635109090 622414883 696632645 678036737 5617366 288136361 40409284 144309748 276507453 359999390 562495445 680753036 446871214 327382258 597980499 443691085 856739968 89660253 922150155 706471238 210435926 825464938 340574018 996506745 85975260 977586237 650437469 70870781 506281366 684783349 285956054 732723933 620211179 713611463 680227402 876855544 295425594 405046492 857007558 389575099 581019704 231250176 272374620 494470421 161599015 586422590 733376224 804978375 961096870 200011601 358590123 470107823 368184388 275204198 156849016 629429772 271732202 538434811 32843385 721886279 984723250 603721913 254734276 589254746 513364592 387733259 309850218 452418745 600776009 146054416 796835771 777890131 869078481 825076206 718747187 994595127 195334078 214439679 275233701 64145616 782033118 801520482 636395640 179148098 502821677 583000635 366435764 189826389 256867666 552037565 601914060 752935579 486464263 521368130 695007066 39061036 761508954 465582282 216869938 105701560 265696063 73614542 887894703 898217153 643786772 919510111 428205671 930025830 724915528 785317818 866175548 886947406 135597453 112960364 589905753 216818165 152564817 532261319 652339021 909619167 782719808 879160169 139899126 195403679 214731665 82937620 971990842 630934926 435247285 118951435 899598960 979772824 536966395 811536216 353019248 81539506 869706119 418919612 718956808 479744182 240437074 42814299 165095073 321900512 116605342 866634205 741923028 564009 26659496 239965875 629619163 574023651 769731367 291829453 530734476 932623849 822366604 718131725 880163476 223213671 434603111 839935445 573329985 618731932 347835969 673260547 794753448 464195342 10570636 946875147 889202571 858430149 481254500 855949 199572120 318696633 409565006 108437706 831397060 844634763 516993715 501291281 975043844 659762488 818075071 206599297 126354523 772092139 968550456 423439485 629436652 248134527 592127657 536614901 498551254 255146852 249653755 40329315 202645209 609787198 978817755 649340244 765614521 926065849 928448654 154638622 73630635 304331295 274574703 552087169 596533697 223235073 777707489 726693127 865763226 785545385 66660706 29513884 232640496 358218019 808666443 357250982 199231131 495976395 57236585 585680748 601322118 706247013 828141422 563854776 852028378 669441821 742398140 671755842 668262206 144582141 554548770 864740563 407745113 959665729 300489847 661173683 674053165 9539938 404516634 456108363 374489843 435494447 374837700 585006743 43140464 739952786 859117712 912245757 101037874 444645747 889205984 252390986 797076058 788114814 980872067 240609965 339806130 196677040 979755862 284224938 384485921 708592142 693480964 109801905 975169644 858694925 852512944 977409968 188766853 477018882 594716057 245600219 786683899 669251533 396109875 369372497 169213287 147625652 818869206 641941022 132246064 978315478 844360456 69817014 510462533 257012473 872080135 558864611 305544510 268602465 43487512 327204041 664696703 620137750 514150685 434480372 258853396 239646182 590897169 212275601 997481023 564168502 462024055 740466503 150217575 440505415 937599035 770306131 881716148 203127418 435834579 441931027 8213588 953697174 271140393 138958466 803328912 699382294 983786253 994740419 667831585 966909805 531558900 296195857 536174164 386620085 739359276 854697806 82724701 593097358 35562622 334736596 976376092 546181224 401736718 285231437 11314282 718286595 163289599 715373835 85000025 310004774 662022833 210813096 444663271 895658386 542028306 950950710 832699591 957812569 475593999 919399800 779389674 779116028 456821768 723687509 526604286 390882226 562798745 629149255 754000119 173016932 652694082 256179513 396854612 71209714 550100232 16661163 626232608 919256453 411887751 393763329 488971984 83838126 423991923 194284319 708884847 575477656 6988082 647362552 916389533 720756903 896891742 776392961 800546845 29119004 631466012 987101692 426535096 464170585 375406272 298358482 636231835 997312384 196019974 174275456 170589670 493133368 502917964 520011766 77331813 314982223 406040670 840655061 588968319 80629093 561823414 676991370 274602660 151570807 357611288 228420003 796806685 792950403 789534259 302750608 505893112 806468390 416319220 477065191 399803919 144985577 365297341 935257184 914550132 761421206 359678003 694661603 645224359 260327540 897882670 547968394 554296932 494888448 246574171 503606925 426044138 166652877 230307405 827765802 995381378 305234200 680384631 144389266 373017579 83242082 384582245 706585751 598043710 46169138 487078861 827885629 617209916 390208452 832433554 951467714 852193532 400441859 718977065 982229195 150939981 844208567 459916038 910028172 90557098 399596970 942319496 136026308 257028489 514508128 317647438 577551293 472306480 629979679 318504843 220675039 696565047 456736261 805578375 494293019 501594181 538492978 283608502 401307298 215562498 306385756 568968581 426918678 502555038 869040845 133725806 897304183 175829541 792625800 336091216 887469020 514761893 888678686 497200906 423866646 821189459 561215625 426840682 210253444 969299405 742812507 943788609 368330826 41416685 841417311 253119495 374267874 513965916 272950876 403005693 955815368 892999722 177162902 828170467 829783570 673086928 991351404 984266764 156983309 174392276 17089436 81913596 343514336 496606479 438628824 894030946 334974167 935135636 843279318 857554102 385282232 417546116 560635990 673720258 174335737 796255623 283541933 989550250 83047647 219971769 366852463 583199276 882966372 416665103 957283621 793005812 84692804 303997488 451695543 672414268 198606516 970171084 190504526 472258610 27415088 835467908 499006683 476615318 7060484 646236929 27822293 617500135 47062761 326502593 678026971 817819681 125592481 393203729 336806946 845840977 550731870 708488514 117098186 43829587 277313527 740958659 395744045 64273049 199828107 48150869 128592551 581064792 203117882 327835663 850518128 645580112 583938002 706585414 528960764 534359983 923546968 825155235 518369908 404064860 145543481 62175044 212544427 816294451 56884866 110109753 368607183 301756821 834316513 360572194 43503767 636826373 202837542 221275165 667983777 384936110 431480273 363695371 122271457 489105328 243293101 754963313 387280042 733636596 172552332 769266353 621710143 887698883 541058757 937304799 781287155 502399489 911901446 547969591 391839251 467415982 831073116 512888736 63588719 583755423 190589449 403074981 224474007 75237981 563867454 622801904 612721827 433940068 862498481 217461934 76882708 556463663 399961907 539162151 240452672 272299177 227154121 185208610 187138822 482967623 570338947 411075301 980217638 677442771 551850796 715045017 131798279 714232693 865518631 699930378 324845665 21849966 118349125 457186538 152498569 184512707 991588578 962120544 676530394 148686906 598375157 383354414 182975162 986108505 759737838 777368929 594819833 948105646 123140214 748573205 259261308 931392919 875720033 102859504 619224866 997204180 824855096 821550795 763522577 535493628 320528805 708095029 733744083 846239171 409065459 976311289 497167671 806262396 184983996 194634561 962424886 720233765 83474034 616136360 418820122 262499158 468182604 900139891 585085992 815199794 523578188 318965911 730595716 900404912 139190860 884494076 591285659 653320971 157562947 559560349 104985412 900875158 231651460 121287184 99783528 451716717 84063735 194088551 27101817 374596571 719651317 610739601 362285852 219595091 427372423 568782300 583893147 731270749 466128159 103015779 232377397 443665445 627740202 843568394 90195866 51504926 897961649 696393564 162643833 402678791 478445296 956681310 396334313 373582657 314688029 133383710 247999405 244162669 493391144 118096615 577370569 689693183 940944465 852688378 617600421 137904326 442310843 634067749 333207150 513749804 502215845 539583663 272829602 772422523 61071152 886961248 506896184 294682511 326631303 173540794 837157283 938587806 7546636 125158710 764835077 336307482 906085629 409325589 15647229 688439455 899393820 325841859 945948323 697966221 261865334 129813198 194572934 441517802 433533569 620693539 176867511 862013675 196788028 950953162 922812849 474632994 32356001 801240533 557577083 247782377 493141878 525311856 20620349 172434602 641488258 839118013 977591719 371999383 490544913 645572581 25439915 509563840 32029956 325488102 147671760 777561229 795072955 169075785 435419450 348149504 364507228 759245343 225664216 579170419 563029630 168916551 809062851 828588983 713274819 558691235 201985600 417411213 367259771 309736164 269671915 498353815 916194213 274013531 83034969 62597255 211168625 893077659 778977700 36720417 102961070 227305362 386542948 974552958 785119737 390027835 655517383 16541928 42511632 867448697 187010177 302387220 585863030 795541526 565058475 28401290 618562012 878911113 89089350 543640777 243262796 508187638 993722715 929293286 921648638 699994166 40885069 409636703 691095465 208032054 79681654 679039550 441266828 282389587 958462163 561215768 933919669 302742662 666241562 280765719 764420048 10167921 195816742 842762149 812022922 70940205 136314465 925530847 905947388 531621784 103037613 316666279 39708281 169617153 255204371 52049330 868260621 132230999 511882093 411723139 499311608 390384744 718133411 315798851 385884166 760968990 15998301 963985227 544566344 132535298 797273301 547854004 583953319 937030160 405240109 539228387 339616641 836086761 79853925 746399351 686860536 64465501 145173316 217592189 194740812 151465242 203173611 70558338 379486311 483879690 135922426 12728287 345845925 819370073 451080465 94397072 761858034 983374289 957703925 380227498 751194530 307249292 710959154 820442755 918188172 191370403 875164951 236614532 584062774 448046260 476556919 789924320 329551547 541414168 980253461 858841543 867957 129997228 961005900 794826818 774075250 428570808 426661308 909458923 962920256 770671786 15046438 527887262 963280797 165682673 457484661 2252913 442468812 195050282 339376959 647420009 175554473 466991162 953100635 927912787 65470129 724551177 418715717 537666355 62217930 990875123 695036146 127191206 300130448 279243017 794158722 894578863 173143433 188066356 720319564 511743536 198227315 781452013 274692277 341239040 502891407 262786167 970349760 14635765 162969726 160365482 503455103 486058164 792676325 318548082 617322093 34921946 982049624 822852410 125008572 193916221 273428054 599939459 172959559 463631360 962955550 407682767 516146373 338120993 839756047 92451447 485985417 986000093 46270013 961979647 723582150 190829913 370986914 473254172 5966083 35172998 85752560 854850217 892052691 543833014 134191604 436447150 13040499 792682007 463216214 927658258 680541326 123532930 441019423 751385591 144789151 805744052 109122813 64494894 261680215 479072752 438848212 631250756 269913970 82362063 438181458 346095358 331856920 751012623 389784681 108928495 337512681 596723764 466599374 865375974 925546045 970007812 467880669 565943989 47562988 574829716 458340909 551682800 271550044 841960582 281940062 823257180 482111546 220613256 812782495 257535619 517528786 410923298 115524978 94974300 421980787 708246282 759674323 415520633 580419742 712255765 1365541 344908685 395532355 318528550 234682858 676515622 171079008 914686830 842968877 833975887 628767761 343287826 567817558 509059627 552179591 571682267 711195472 984196418 58366957 990713744 971231960 736215772 177077707 929301309 518294931 672241996 170520787 916835631 934021658 965159207 761733356 243803913 887237203 593723839 139511281 906204151 267106197 675124742 305068801 405927244 75950538 48916684 299300829 506543947 484730819 52533950 254852422 821056399 629127940 149449392 980818666 438496988 726784818 4057392 102427396 843953526 870758348 454367190 933781641 583330689 66722545 728334536 846376229 296807847 711269290 546033204 579195191 976960768 632965883 36833817 316183742 465059727 850003633 436270427 41421516 567288257 481416839 268540423 988809977 947045505 469120562 793706394 247263640 212798034 530434874 243602060 418243039 450062315 385263734 36332874 500345049 491713235 759854429 551183954 367679783 919917506 59881381 402796356 331274693 131533237 717571968 250301307 645260434 254803528 167969520 242646356 415661311 917863088 301244092 955852079 668770720 749935904 284103523 783244419 479179084 470327384 398938363 661889703 490935960 790528694 308091403 281919510 998548451 87529120 238897381 898611005 160432532 313628321 844386684 466642850 906765437 746159215 264978101 627557508 296105233 828658032 595841926 700419426 397589678 302240715 481083033 396790470 42304755 118245370 772962237 442703253 383677973 180531680 564053354 735901579 12441090 484755103 716784702 331343326 276750219 58035478 307647742 332883930 75724154 347224289 752974418 367187366 485520154 956168637 587808937 567099345 276084373 364644033 342900399 983082262 892777448 267504439 207914131 810583376 57554429 204800704 368991268 645535103 718003100 532714243 662698177 506363352 707891348 745646267 40543027 821426328 816105572 921404331 966204696 284501980 316076512 732188369 606248225 308428336 692932496 908380019 339722448 464447720 585439931 776915920 322593779 852296004 445471928 621446416 679437337 230143263 820278958 534610410 690221625 392951483 597783732 281115353 581287010 200003672 99043221 385697589 455126001 217173457 514789847 953231321 174468628 399252548 926722713 253023653 525710202 206904933 925429222 89614224 579408799 203441271 770005587 788321602 566924482 933578242 830706954 681868678 503449481 3297498 114328839 184818141 949678283 258280326 143573630 816208542 914128752 418857832 438717778 32298256 556583387 740202823 952077052 990591857 923632387 729878980 758235619 816850334 129996228 990426332 388495380 892819643 283624206 662499637 420836343 372564172 543178783 241034331 912721537 497579607 23953960 63881588 449914420 753144577 988013371 131800388 28206101 650949384 803636569 509028917 794178806 289582657 279242943 763892779 652293556 562517992 576295592 373771057 97816446 501198984 959869739 954195479 199807857 969753932 812170533 395682117 493992218 43473387 838010656 410016595 43718104 943615250 308901101 841502724 569742136 447879052 580831057 247849001 331919061 78262520 706545921 752328392 144700195 369229425 746189916 738203594 598239122 573540624 63645683 47949173 4031483 265937435 141776545 62817480 135227835 28027500 89381664 306371473 803497616 86355912 638919158 144410366 251161273 408108605 473747371 711684011 351174878 859839887 873689262 44489143 829624354 803774377 35521447 79484371 845364959 932046812 10022057 134868830 103307364 545972218 660409888 360217638 26871695 898938343 469135780 990886384 236684215 472584519 514283953 180780267 53870908 866343176 147966301 344441917 721720793 543405540 230813465 268627452 609694560 757954401 779361695 213431315 450041420 919901248 254759487 598619259 646078562 311033620 422222373 603884136 891734465 378512807 624317331 694125876 379448258 361718265 720190981 87950720 148139168 929697496 274734855 6879556 20122729 618071960 104318624 823509124 193405401 138486687 198457066 87621498 764296184 327385938 840904018 511938382 413812275 550016418 705036964 724570345 551758787 828204918 827174672 983130098 352287708 741995721 649234349 628384739 765111646 696607670 147252691 375302998 965056157 334458826 608623396 918705314 548847393 6178306 629712372 514085900 121955270 199299261 657982057 608099473 843848369 550401058 345954432 36306910 364970583 904625505 79372902 644847880 432456709 907984216 276945991 653026032 52598208 291758133 31627701 229592010 262451319 924023357 60416560 921756553 521301311 77707510 969674222 85200710 981445921 821233707 275060045 736810567 63537484 182646960 707794908 679613662 727873143 604147654 425203700 786793230 103293870 989392015 238056868 547825896 949765706 993669501 243386037 33020459 26900872 981282769 736078104 70064418 219904903 12798010 184300562 824137385 501334911 978584589 619251707 797598345 461829523 40567933 253432552 402931187 9334156 556731967 735243517 307454455 114499267 488573366 695187132 714784521 223674075 304786832 878324803 990504887 828047241 541102960 500534280 444548358 792346214 354187979 792098768 840437797 517935113 547056769 119773152 270098126 138360673 615274567 571437103 21949598 292537989 519200211 750802525 59675820 155634050 91543069 828627147 305067081 284506347 911694002 840036045 684544884 445361316 348365229 121277804 454464373 818762705 40861861 801526355 766999555 114472149 74242122 980272305 553311674 182897656 398827417 543002354 884023991 845946568 356009371 564090808 850031677 265383347 158616974 627027685 538874356 30890745 259374697 660071851 922814629 998563145 378144147 892306204 746093938 188218645 685382080 93976223 535199032 918780146 443916342 377747461 264801974 837318858 176694974 16951312 439557620 236959870 803845553 237797651 978259852 118186120 224577313 125761596 685845782 306603638 370184003 748799726 155842469 791915547 951013149 915720517 735582728 512717766 598043237 68779506 745123117 905400703 111403074 598920914 224675064 732182304 795740902 163515208 178062180 140491421 717824704 429908373 943044608 363753475 141059407 737855164 316128936 159963174 787071250 592419677 688304543 147283973 824823369 624541307 570263702 611610705 939356355 443909935 600034989 180852825 522840405 521938338 287412221 505078893 738817927 90451074 699691109 409815860 56330618 785690300 946071020 97824768 168410009 672959559 574003611 203118183 886398308 192911707 799131744 517608071 674878493 679835021 600414732 260301241 566349789 689289644 431565734 710963074 767940536 190734799 327641784 709398244 827032408 732158377 797970895 390424073 720691945 43474738 962551288 688143992 108313029 576475588 97649084 607554458 493353831 898983334 900088583 224865914 938977039 302581058 633884879 977853019 955237159 781884791 475048021 201509430 877410567 938014609 902059175 229441403 117113906 649921155 89495080 683584177 933524776 136062179 152363170 278932331 51551409 335337909 115969196 647325062 687171103 752427988 834365399 427678049 357096319 902542594 724351806 568108429 702398095 221392016 421720427 804030217 250403575 912531141 283935498 854587475 679399796 375202159 894137557 444213476 430140182 368149666 837957116 886004975 326576257 891596523 778154756 851261402 201516820 29364844 179875859 548289857 712188384 152069260 736116769 596045763 490005632 454421074 686272162 878734246 665320262 674433419 342163273 730016450 421724893 565444831 484072679 898170623 407662774 923274925 716363122 154359578 690671818 450514535 611737787 561239015 263282429 494462755 585140579 866618904 367225764 283720598 201899385 597615942 60481411 139862943 280588176 652454009 978094953 805174451 524827937 580285324 700149762 314629082 746168949 192424540 432206367 950261735 953302707 497346493 844983657 286708574 739138098 858083932 447093398 152304627 507126521 840886527 762346138 329351389 253219556 523857983 516260460 658456728 598640473 120768218 196417929 393415188 199781637 860156905 308848251 776295019 620535488 898730363 756296395 246675167 848526147 811244106 105526519 93564552 290099784 41333857 984234381 784194454 28578705 282572471 215129796 555898111 813044780 574298355 372380569 577088894 938409439 346798125 19177702 841344109 231037199 56464141 936379114 943291885 668712281 182211488 328041449 144527329 363180473 179419466 238418124 728557559 617078566 973229494 195934283 73232422 80373035 437494309 359141204 385083786 268403623 398176641 537613917 787402111 362269495 988637091 128225661 88860042 499998356 907889175 666239335 744903013 498242391 184093605 464931737 283211935 853882344 12395467 26915814 30035496 827031645 154980868 707158907 49855735 135409279 537008918 736020915 983060979 392244079 410088190 3699474 763682954 789403430 885847122 32707092 988098227 113272865 403554147 516047545 365058550 189985070 641490481 550725819 186772323 915861859 395808343 293342388 754593982 204910243 20821304 828714338 896266354 427777529 877841694 453631616 728276887 731089257 813397356 51408962 99308984 883795488 638986516 758749245 573128785 4894117 573899652 366133730 419513130 568661080 691593123 237500309 830732541 108404965 13445108 960245210 279822541 191949037 653505750 923711248 204138897 760121275 599307030 640497510 959137565 683886257 718492471 174272344 51495126 743406469 505236283 143465115 971465694 740388207 462471038 976083369 163823381 253663970 962569375 919770306 768247439 916830123 785957698 842431665 257524650 890778809 666153222 176138929 125955345 254678035 933977811 646813585 799217948 888133744 20707417 744363955 199047632 810148145 330187420 475345000 669445345 977142306 509717385 121790444 405959983 192830564 966111941 588969963 983992309 244311776 992451977 430564184 427274829 525464773 994885775 173945606 68587825 109104514 436385468 60818611 936031684 6069156 359094098 449830364 724455169 894932705 658191522 546295941 892401395 58587554 759383326 501665918 354301491 423008244 196840318 737707546 609050291 228561895 567267795 208249067 521671332 468561217 89488323 883000588 613364258 458116271 182914916 968641463 152444606 16843930 966178065 584673458 714445337 341749152 784347247 777346541 910570663 689449382 873013952 106254602 323326349 789590076 506005320 389365970 450355799 804556568 856884989 612599105 162381046 450514251 714674183 442826491 280811217 816052207 497098784 785603699 908261106 66585577 924397128 879077067 97019011 714840016 642577081 434853263 328278901 300162241 459919342 865707559 129041185 854376537 133762153 154888573 670054055 361240590 501405491 657096521 970337695 995810459 171902991 892027801 469145324 678295962 272366376 641360971 137686845 987612015 470480511 658227653 286689386 825482321 186985997 554408591 271902805 365662804 628213404 392460037 64595660 70105664 122989010 671006204 806326679 837737439 799712326 448499470 926670164 574959060 274228489 733717959 711477709 21804942 97171318 125796570 965472639 747827295 913278453 773907481 848636988 605457256 145458472 535251802 907757451 370161148 816881133 695490757 415728830 132796093 232503870 296627940 587041061 473150627 371675865 819887571 783199705 41690465 353913760 769536980 782096521 247909775 162408935 429799290 591927528 382770683 805753710 916095837 378053554 43013910 765431237 896754407 871597428 795434512 976675657 104601409 52089658 695164686 602432252 58607097 986982595 310578392 585646668 687353061 214898876 918127697 357375441 909227684 512994515 71968460 612595751 246421561 743355622 276722204 707802034 819715050 304335599 441382517 6763385 224565275 737294580 866147124 964232863 299790580 975369188 735851165 65332664 675370155 367674263 810534342 860822366 154841213 130503045 491383679 769788910 578485593 133751900 10583304 125248529 515397347 707659567 216470870 442442621 655020132 943193304 414043610 868005584 951907798 739518680 679618617 355031541 149660220 894226507 710607310 647489813 469070655 884737479 384302473 14119203 926247277 466675257 763421928 636540815 475393293 874596137 795776488 787301694 956717304 404554918 768923249 260674885 748274616 285104096 781204340 820334347 183368701 219564239 377040617 513496537 284672627 715491612 143400762 622137806 571675360 591120950 916261392 906012527 124530393 435328788 139908890 122284257 684867128 821422353 96612055 709301169 166803832 288428476 77239067 190214044 415531986 116547103 782356690 176014070 963249708 309480062 783387159 391677196 246837671 804227286 625360372 281957307 620863070 418479845 807607172 424086640 192738324 473052721 816563106 907255001 78250186 859200012 601120839 481578859 658759896 101504550 647608189 565450577 696351781 236789480 414354611 671279243 127802835 127719010 334433930 13920793 851411530 580721745 504811231 726307998 821835662 945455572 572652883 335102679 403951459 930466634 807870631 963375439 311626498 617876780 265641148 705877519 840048292 308826986 864146068 99030986 798958797 259395136 30965016 312270844 794272928 908915745 793786909 779201689 436486414 797778051 7765032 425359338 138093991 583041917 116344908 729332702 205155354 252743346 202708713 819928991 783995224 176542079 543138312 570373906 15938926 608668237 127730354 195216477 502327021 737159911 839189873 820044676 875510544 19420199 774435575 911707548 956066890 887101984 42589097 176702041 828551156 980625974 767110904 255284495 397953145 631668169 368249214 703145903 870578038 733109206 60261701 510907108 697352460 178798968 39576822 440669928 22234464 569505690 67513224 307204386 306599184 348546308 206278169 160817134 146911286 122951579 87038823 422477694 645029151 23733605 421087427 959662751 797767498 47386014 14981513 982328702 567168400 805068818 212846231 795152523 386998276 230095337 773090251 805930088 2632369 181419364 310902597 308522972 753773398 207200533 560319423 843722389 520683424 86149202 393819722 659808558 801086662 904452893 694611663 881456312 467347038 792119561 658208496 820056541 731955117 787056641 358932888 97742401 900515085 773842936 668846450 371635805 85333527 753988188 285801717 315954011 924893832 615939649 213898679 300997676 437827454 903534447 49129422 119215035 321827382 601842455 407260642 406822741 704475033 396897690 665768110 17017860 13340069 902191217 706077308 601394451 778896410 105167377 590873539 236129593 698011292 91483453 583903256 35285791 599998657 432300902 809635519 106236804 776611621 72675109 216626889 393453291 833290043 827738437 770695500 512243034 59282062 434760495 285401659 15666180 996976839 997715611 35965359 557163585 832752794 969491094 116007044 656272584 998720528 686334232 698753252 706031550 914656796 236840623 290622289 431369680 193955909 499312957 314633113 569855975 454594783 379868882 611084303 747008096 248292367 849598046 328184307 97902721 899669993 287409032 192189878 99400341 992306510 130801198 166406436 950505216 465985313 723048646 959976621 972423968 495149286 874300265 782592891 938211089 129106066 8957184 556806978 168499091 750454528 302825918 931580001 676970759 741761721 39309006 340814746 296999312 464266956 329674536 548212962 481518707 487283270 95083002 484756566 775024358 779753960 182929710 361973632 824734801 812782972 555484250 888812134 468966554 884120924 428087124 876303516 714833362 192964217 366653629 616733424 684053482 74607025 499273671 194092644 52590132 310917721 396930633 253432534 603428577 35475743 567947001 953231609 739174517 387390040 563404347 967929657 17330851 98390123 70092742 753506372 745183484 864982337 717068651 799862572 814514213 438743767 409629265 17741240 539044631 393071506 313766679 502888935 793927805 356688306 941338445 414944834 770883224 861080164 630767577 239253491 449808924 489175458 411390702 413708317 927887830 870066817 395955927 915011749 994329362 949363080 185090607 883258271 831944636 250259988 372613837 625795058 457271788 792606960 526858546 472118322 840234721 871923439 447945603 290456164 499160494 875437639 120584607 416952612 2058038 59207216 816658909 33309326 541104676 806038633 968930876 714281495 979840066 726118066 392167524 996486760 366303166 359857363 476290514 613563183 938992716 286923957 449222762 864715060 432441788 223477547 685192217 705596532 476662200 927840159 412100858 890712170 920066573 897116203 905957314 799032889 450958316 334054065 614915218 592584273 670514438 11352142 440087394 216230636 944431063 443867482 973987374 538345175 463828137 216907372 487720386 254634262 133134804 724114230 202281093 927981664 180588034 424445508 13018101 919288141 680342983 74019418 45148301 954969785 655343293 598468783 182197713 940633215 346348974 883521025 493766013 878493387 251566420 877218066 183306007 351127409 948231478 369666494 877334322 120077217 174739476 69907497 432144812 372798180 310375183 493394063 374640130 347240185 654825129 927787911 972565739 753276328 248369100 492699391 474731949 343939018 631051566 66147115 587221822 36915455 614603742 409442838 343356221 402468195 529874924 171524362 72975232 794893373 586216479 327401930 796263335 484290781 525292167 249598630 905994066 803098608 329535013 229547516 277821720 634327030 425901739 355919965 305382047 119265599 911670541 49711786 155287927 866570121 428186109 398244148 68380528 873991099 903182829 16107476 175940833 942641171 897533278 338723381 810095624 115164385 855853669 824669060 77469934 540073993 653989044 647688333 49429818 592706897 370538892 660738681 915218860 994272369 635158278 429750978 407207754 819381830 560210568 984968293 518350370 15759212 255560935 278760110 242260343 238824341 493131355 558130455 691168247 778477853 797390907 109141194 162870091 504453755 796845321 173497099 54234213 408355962 364131923 860904195 99719626 201878637 517101111 337486357 301292893 878478535 612454562 614456710 225204736 231213724 874117950 187938879 566038220 533416772 323909520 776941268 261932825 169070571 200491054 213002798 760771907 518564448 719461225 942688148 387229399 251385073 658615875 281289243 736160936 728630816 872109680 467219287 795852476 560756590 252263024 823040786 590467979 533661841 988126177 735651352 67404171 776814102 227941563 964210583 967025982 484526228 897257380 935857670 969829466 867784090 256707561 147167725 609395332 799214294 811368252 347811955 310442827 108319877 101263153 914076823 802681075 493447544 676450142 234613460 271737519 824834653 220591465 867599066 495472902 58373079 741585935 169322945 644322635 905446369 263270056 351001404 848727926 284597266 713825955 729980346 22416601 843877866 62667087 634402111 507869603 761127349 792815003 421798233 792522093 219327063 806339284 407095277 934122135 797697766 139978610 394219259 409132694 825200409 35547111 329521561 298399357 783179374 903153575 914492478 402000137 554524172 236005660 433127864 958632564 138539842 305472040 633798025 834951918 159044029 32826695 662675300 277814183 956846864 743942722 784854102 37929982 458395530 770185694 508337651 416820040 87298053 637199793 427699563 554723642 418096199 229969571 675694993 178760775 893010437 744682701 97891304 722908055 975090253 364702205 407598331 903149584 428621156 739451675 321195517 734231833 636430603 653312925 608765916 282185556 908927571 474496118 720918297 88717627 774674840 817531754 360446436 387110395 889761520 154128329 693474451 868687120 428992918 85415175 885443768 771505507 755650536 969825525 308541626 398951652 759626844 298123832 891649563 564336031 905134039 997710935 277327503 64961044 451561513 897864185 265772889 667535249 753793573 936956686 907565836 860969403 64195942 942224451 710610372 523955246 334626847 635370337 699812798 775984740 349464139 464647307 661436337 576345539 320002323 530957519 459026696 829645332 122334263 435208124 463196748 622121095 13729186 836217122 70425259 4148481 999129077 92631012 87320009 696554928 149950582 911540603 150921142 124659944 60209641 598457004 522257554 390528244 803449953 351318111 784546813 804474282 73974285 858350505 799660183 483730008 768711520 603580902 220341001 981495658 232122528 616627221 681823542 527141941 311898897 38007341 328815309 27565749 5352534 754314551 370114346 142028936 208232288 159568372 890000722 191043810 370135417 962726981 971210788 174200882 998085603 22242290 884130654 642957503 627146397 620657604 494394772 989379253 884769968 308032006 566887006 719813179 322980850 589913014 462059138 63478036 435704474 302006107 368518080 391352688 709086983 661375257 234173278 675361156 582379799 371384343 373898611 390312202 897209093 785376417 498143350 534693511 861953726 739801060 437243148 919911806 659855506 681563125 554297251 718190998 120585337 742749262 552888874 67946546 980141509 91307031 298857996 849806598 455591875 990232673 595069183 586517146 350382344 283436932 845993315 683407703 463816574 885944866 586707275 199333002 360839820 717963599 221698027 37488272 634411378 6501298 290219477 781103284 896860516 654934547 629860624 197871800 503356205 371186100 640502886 256514896 201150338 888743495 321397484 179590071 615954163 339175951 466436315 806890108 299563529 629862410 92865078 471122367 595747568 97146998 797036768 217387805 704203022 122673640 897562643 558111193 564928006 190019846 17356351 328757818 537815011 73223767 354580191 153118588 223398408 623335280 909040705 260228775 560645523 831319241 206741953 834535751 571262118 59265992 414901027 281311045 818037145 133912439 316518255 673140257 198911617 616252845 341652243 531407232 686845359 951860455 136924763 451245037 401293741 573053762 82095034 291330533 652551222 19540867 334971581 45092120 550725941 811964734 807291979 133479630 421214046 32204311 766155645 797111568 267962300 75252998 644100751 937414579 429327789 659461734 382297576 401512228 120854927 561121046 515536236 481348513 832242335 390180840 708487035 221412190 148178807 880638818 675308737 732396430 743800363 588352094 850839205 209234580 790587339 196834865 957826319 317804896 509911960 709806750 445490605 462276983 307927488 89617411 277517144 28709612 710967317 306420130 878350649 244900742 644322890 906503512 109246480 904115699 357489165 427508511 793610615 779419151 4333475 520858845 3557599 782464982 229910290 231955827 238911520 200024682 911755651 496571179 444499632 137339496 38648343 170207593 131668181 72366737 656162265 33516438 290942241 19853830 712260584 893193777 133457066 821652001 315863084 756066888 975864427 795540304 317308778 689516075 843919058 268502068 258352510 760305387 110733561 726638565 339536683 15381587 699103215 831207590 269846896 207029700 410666378 438365809 660392777 905199568 189892709 45885037 605777947 898669303 633776478 288049623 370855987 786634915 557259381 711819873 753494449 949432549 226461195 690068573 560615071 697048310 290330763 548579091 997097513 612338895 890206292 491171541 693587513 259944671 704056219 205708799 81780762 770953014 760857052 24275542 263767845 601796744 368420793 285338825 168057857 109281069 230819004 449733602 929707361 373895163 473148830 375080896 528268009 196997093 395717288 441582230 248555870 114972916 449227710 290169331 435105917 160698101 688951019 530891715 767738332 279548812 871866463 655463800 59133130 838445501 789863693 172840163 939963120 889501233 720528793 988890396 439239174 324972743 782190618 430198415 831548819 670160460 873103170 296344032 701622623 149488164 730053138 527408927 772924755 389641590 208341519 665270299 369828630 740802944 939929582 238599465 232082282 309177082 635462466 572457386 330312289 592107539 166902243 919832545 586914516 964275378 473277266 562885340 387473769 914020993 14987042 173907515 587206505 991385816 682143805 563427404 587413665 495344932 273109640 205965310 832374504 405026831 121623007 312875499 956021186 185708258 457263892 864227850 63333336 591505931 291482382 924049335 688328647 535039953 409198331 136505082 416103413 792313374 669077336 856608266 276253721 185209136 688269889 483908264 732838839 858111886 139349182 632681063 234621058 777751424 237384265 647611178 983696673 917468688 875578305 73286398 30190440 929341168 714432037 352192118 105626764 831929993 656027729 489637576 698829862 149729119 823936355 895570253 968009880 880168180 330018961 925302841 540194008 607940345 242880440 234510872 223550774 969109749 236992831 30177786 313432910 256752210 243549429 526489102 198967705 665388175 908788797 479394118 661804661 926248023 653784200 691381460 584566492 477219375 647917890 29271994 59284187 852117952 262281881 429154341 288270623 461045939 958085254 685608272 707686296 271066900 506472300 564635556 896289479 865662233 702080949 141667646 380525802 986112058 666879993 777481843 38506673 554653397 534817303 193087714 777096275 83241457 820184801 857225572 978004139 661564727 71682809 708236667 602344294 183821837 732196935 268613194 849355903 71262583 599981037 701625032 349054009 16436404 77105355 538408195 354761164 789573084 789630751 539720209 846267938 165726547 635356315 378637705 310448416 29600500 182753581 903093235 59659764 348531162 705513549 67833261 535487612 875078240 893592804 986135909 487287310 881742169 353194532 567984273 69619726 86390909 909500617 321448881 964802751 605999528 182215042 820157347 800733484 376164820 289524117 989746691 164370945 678976599 920334622 17212242 577756381 703640307 907931840 681146495 60122038 537085358 328734065 258879245 297595747 167995396 943942600 636913758 136251963 694732185 218168915 145322832 383799299 83640742 137946358 517156457 52175218 561426754 223528846 489160596 409544933 159350409 132104513 5183640 389380554 562732238 18044727 937677172 640362750 681726967 327129821 222124121 627632772 727331300 610610569 385490414 783330761 873839036 988854222 700554046 580374860 501381188 931742142 850257099 968265128 36507037 523997155 806266239 867607035 129513380 353191683 398682405 738884757 434680758 140918427 88046690 163371070 662153978 681023340 679494356 862634815 193992995 964165104 315064580 547345127 139408288 307005622 265885688 604607409 957075627 857293199 982253447 36407034 576894699 396608194 993288490 813010290 241382679 9584367 383367386 858287235 469464576 89949202 991084637 724867094 200850924 389608456 671763908 478994384 429356890 875305377 38946054 656818591 913852776 148286812 686374409 623735897 52436172 271243318 612424731 358825758 38702037 993166104 296031423 428110580 616119291 328987895 957409684 342096898 834833278 311445601 200881264 943669734 678895310 354440848 304891500 302869436 527758072 763018713 871681372 645996089 261354344 583508006 84535812 981011094 852030754 441577079 916212188 815916893 725558208 311399114 196448266 994763758 82404823 488257272 146295535 229786127 384534603 263785336 829345698 642818604 479221752 179364533 913565367 393620344 54400474 663099333 103809107 396408770 16212964 823463230 771944438 190021511 149293655 327992589 87492892 246875041 815571379 170905570 967337515 440324493 254928253 524696790 401574542 949109467 865566405 139382031 858085776 944719408 662483220 708271237 317383648 723942199 194233786 767022264 234221908 814542725 303013511 230160004 406346330 741054439 806165902 216411300 650269210 541301446 677179496 9506407 904093369 801147177 161672107 107931263 407065942 529656766 708871093 865143096 737706976 537666918 755008879 772175250 871404500 439932960 177573790 833639579 829955776 779377514 865142130 862133113 938588861 469609205 610022764 405201870 682074802 208454374 612538392 366251265 226971711 575139706 890231888 660277511 604154367 594594097 554456937 177210393 949825159 9773911 838720916 189854560 320636357 608807509 778262563 145681158 863546376 510928467 870320555 474308690 55948016 397439820 208191819 475308934 573685894 103954092 41200209 916529871 463697261 975877103 709978549 672045968 542612022 721948419 690188872 608082547 812004643 252965968 797280371 138674567 244120458 742414323 762255157 87733800 659599006 565219019 751596413 357431653 183803443 506020416 581442399 905214723 361973610 399319874 903862429 405923046 868658992 858231943 735967531 347378484 51339475 129216236 769057137 245942743 615866542 21980660 879028116 763803276 165478485 585888102 800267162 19319011 785907778 772802937 859330781 931917683 562007593 555375759 189272823 843449335 665951030 322756468 108260381 579762724 236784850 733267325 989727249 739988313 54339661 94712134 191396507 419682020 460095693 435299718 809781196 722310192 126464467 628837863 514299627 350145945 241114724 866370766 46718856 314423056 531954014 248582404 329584532 796360685 913796356 638790781 52920999 944115500 101536571 256710 537094857 285960501 251503575 769115651 275252867 813380214 236582453 55302118 333797604 665995779 334519241 375475969 93918042 190267853 226953649 443237937 39968325 576150275 497714767 367153266 983342963 923856958 623503489 968897555 840186696 571488179 400182453 830288312 330957605 974572322 863355391 625997845 366212621 556289460 429641655 376315093 852181576 366196106 641347491 26957863 980618171 998508086 838996379 460395760 439536218 433257952 532138629 725741486 647371738 933810946 103639877 880723791 813732934 724908351 259050037 275125159 220843239 100054827 199390941 164812119 110602067 121530278 48507495 984285279 820129316 904453961 449595573 618562548 358628834 758943755 614225771 472650857 510257564 762588173 739850952 960885085 343255536 994696697 975679561 597031543 41431922 322418130 329556096 78944262 404145113 606221924 802746140 509618685 389567026 475436467 283873168 894736001 20381275 641321341 47415850 491773217 609490789 330616024 938777033 629620344 544083668 793362352 247518208 340880435 409436701 466119961 290822890 904998165 723190663 111683357 471628051 296475492 523720700 838124621 269720069 907655566 283351206 927041892 691837993 945128438 458596221 311840984 130040517 5600754 767348941 657991877 299937183 896267321 686598249 385165192 308247060 89736374 580642578 881079162 875970929 339684907 261342220 940676923 704066953 604536644 229616265 155960528 303205750 163392574 405645303 606795561 577946105 49218080 118715457 92250780 596958792 911327026 731430250 971302441 285846409 232585640 70344277 583453001 893208639 84152557 866715463 203732296 296372989 577150676 557768247 470387728 343037949 252733811 510047396 912207627 20943374 605513091 326659845 984174149 226787114 22058385 989143340 169574980 380029836 973173274 199122931 113884421 123221629 244374086 969595583 864243615 389882857 599132088 565552890 871525203 363768596 303814200 839767266 542995646 793989766 992231503 949491578 526278011 559115104 560237000 241523047 329285431 812050194 463442840 379487572 384374596 433340515 5998913 153477637 965447071 790947360 126138252 454264636 863294994 29467308 97126114 233282601 522259326 42985765 914261554 959792035 211733772 551261538 3518369 742512288 409886983 744871953 673082948 328016640 241660693 106632566 877587136 824678018 204084855 294016666 216159422 705810400 434809436 694240416 486055266 527223283 42730572 230710645 289914588 368927515 587357077 273695110 702056648 432370623 396783862 548298469 807497136 435701949 67185309 965651845 31113934 770431939 808763076 683593334 257765576 160567525 616270325 542108746 232561058 42301535 653244579 366452734 857199078 730374329 164793543 803490678 809640997 471470257 436467610 199386403 284616297 536873286 725061118 366946542 770119828 798241011 548401605 609536305 740108519 683765224 25037698 727236744 15456250 76460016 320553832 842309259 365357416 582099412 705313238 793970388 536646568 400336786 739929903 284922496 104238805 69400419 853741511 931839889 764204136 540664651 807078006 929700304 730737666 673640975 217195195 351222428 390043751 809683861 790213990 752224477 668411587 210090377 28207867 849957731 503588415 552898106 297078658 751135570 181170918 502034030 739229941 85865580 596664797 543070418 251241180 479527095 154331445 54867989 729375237 928634174 910133091 275417955 575045137 764315852 68401633 461135066 688251763 701657044 7965053 794515988 414323933 409301792 515071729 427673792 623796080 687851114 28329892 849292027 454192309 584053848 557143341 284046895 301189028 254237028 91718453 901875435 686840118 46309076 589834004 721535655 92131588 282062403 429102758 663633251 102341455 794284505 476195738 509382564 792391678 283296990 155218863 357755853 336644595 92018798 617557021 84247707 407268214 451855142 900024542 479714037 903418879 36517548 503044115 616869961 80079220 381292405 216180559 362967779 55201507 5451331 955635734 213089002 482029591 740562539 838602231 174710449 334759455 578379205 243268073 338615943 102206585 458040559 441843433 265125167 957160625 638715704 347109616 560560266 409993984 632042232 248460954 787781864 474334919 30614695 424012610 61915452 229129094 916844976 23073251 803400129 676908477 840768985 799754375 282545508 382945314 90681068 983666034 284796195 605936269 477747391 238612032 972854272 127235459 244192859 458536322 835854622 664320377 877269876 86309317 715453239 433176503 748796692 841537611 928916138 882758040 677306969 970316117 595108835 404528851 445675967 521077315 769269742 328259108 172442578 345895405 50405298 231695809 363693501 100010528 885027591 501459642 56470788 995029561 841338080 268591172 348072179 634600127 629823465 378309525 44103368 664447906 513641766 835918622 33764907 926504473 705959544 135532710 721967853 346545928 760493584 614135557 192701048 328236423 338115688 916645762 510477584 52551866 316761012 148540660 213711922 462560923 779638290 430561924 339055763 943052798 419277923 746639249 727893606 507166337 212874299 128242335 713355955 793407435 722089141 935616980 676902508 998594944 28444038 291933191 112762250 249638647 815736087 34655008 333462397 388936094 626943209 687494725 296283898 883815503 550991632 368855793 532146642 744866698 509545372 454215770 429452740 291503876 984669927 342234637 577241531 884500226 905220442 389386476 322562244 3612902 948494138 420638405 482128248 69855206 693557276 467745750 724231256 900456937 175369401 481549094 705985402 831872602 250664748 135637873 403373617 151831743 773922154 138826481 874332561 965164919 843549102 654999167 5868245 709750265 348267005 589904550 738532033 24181264 134122272 53456746 847363959 505995744 490138297 643937765 96395784 170548471 1962998 240180435 57004967 951569283 397168951 538739637 4684767 859071014 510663673 287397132 32583640 477552957 738069203 290773100 1810505 212210338 268307612 988993498 785962792 545389681 392688415 737240654 550815018 41828343 140556546 28077675 503044272 51734178 482530589 23116049 723344373 446481261 757816270 800490127 206434490 661948456 574385703 855479144 709345353 913504687 226982226 625928326 752618916 595678330 769288335 121725186 29163319 659023144 12079640 808310529 790864740 911953134 447183317 747461419 573381970 506273505 75527887 722402033 352763481 858844734 326952864 816815946 573712404 816356727 581959456 778351149 294446962 847830670 944078213 453976707 381006235 983651374 159265836 972315988 894855999 74672539 42436621 699003720 995290545 375736995 885335127 882904816 119220652 43804471 985353671 729648069 933028641 129696322 134132051 556752306 191563520 48657192 865762582 41750844 604809977 869663010 119746638 512676501 848647536 587305833 507367077 494806533 244424745 95592079 528347992 6920971 111080270 12550073 911001313 831226019 702644488 19643474 759405635 714055567 167293032 181897820 41259193 559900481 84062459 410258462 898681967 508792164 7933960 338308318 839444394 968787689 650198258 454442258 400821136 12998371 675689871 685014424 564668207 266275802 885204929 386655163 319092161 599266797 262192585 827946965 534759413 527497171 298365560 848121013 544019837 469516888 739382346 145668402 769914405 239357471 747672320 615740975 551840418 507286902 335490570 70680581 875731786 778420869 402968034 819433054 666348805 939187682 982856806 854096864 62150302 506855983 539413560 909033916 370204314 56705853 357918530 21953395 428271578 705040172 519666930 503810453 719281154 664219705 650275446 249543325 291088607 458254499 353376572 923435058 256285177 990160487 996983930 511090053 37914041 696037909 147278684 854403900 269582484 206357405 475000740 957649230 399961434 667785780 245452605 692598817 269321633 809872849 435923948 474653149 291493880 145838007 217634711 537509843 400427404 510704327 780891274 91210018 210624183 580608924 323532367 797296569 199261713 666445228 775609253 429686510 837034983 424396664 152959890 930637915 933956125 342914733 197512729 380594715 585593763 136804838 178927677 355582769 258217054 795383763 279151188 795530445 920019842 610869485 271684238 277327172 829748402 505503652 566691708 147150767 941264200 577962486 228279409 586768323 28141911 239494199 403195744 238334515 411204629 608548821 424737938 773632996 216775715 530790608 118989400 226339593 206041154 425404060 131614565 136795419 356868864 990961906 217065508 710701152 648617458 502063172 998046108 588053916 121483109 57019961 962571316 499618409 225116188 908588665 217526148 156294285 163281998 64087341 656309296 692702754 823130885 901292064 175668390 109474249 713991831 711956192 277821470 447491284 546450673 246423298 796121345 451905394 533855326 193682598 81066008 616417213 218294966 272112855 863680853 321384987 505506831 224512653 429990089 859571837 943488387 665462402 83280757 687203458 956050647 278024424 826711891 877933184 940954182 400800366 275105410 248011895 997087050 923391225 938137866 585468503 497845738 408904028 728658665 94985367 768918132 406088528 839824784 199221746 66610189 823232540 541687607 347364344 630642903 625810339 957242598 507297851 464789833 562598176 118261288 331920188 846168605 598961534 540204653 521809491 431257445 338554530 996973325 717405895 672230251 130252999 465715770 740697077 196709519 774703307 692354203 571525167 674851087 208280498 917616235 652142329 273344474 303276689 211481211 779192957 39794585 395282105 317104840 503171912 274963721 299321068 844053113 73912012 415089903 884814126 133329895 675259534 174986589 865412377 549429452 696356125 107109688 389069513 607699084 87800782 514632858 374680663 975106760 970621327 71063545 227846966 408008385 145762712 240419232 872376896 453362063 352236502 177445103 111720072 607397266 57470335 499938120 60150337 779419262 869951667 947942880 137722033 677447618 596774880 381282930 911616404 783718395 415764733 755596836 620548078 249511213 754678273 852859248 302652899 549042915 564372657 982815244 409387363 768764949 701296624 774066928 188684769 151757818 696961384 148062506 776864892 216047508 723638060 890392909 745770674 851659693 431513427 132871851 372644094 724196195 386670260 392181329 785640179 657360866 93242034 53680728 678596816 381027324 840606145 980852932 176526267 700088971 948820497 533188447 572558167 209499736 972207804 299998237 869021160 30708045 972084958 187002790 172177367 464412815 590778127 194462903 830007818 309139422 179836182 337183619 548054934 566022366 940377819 175109377 234535788 281512474 839754669 611530 273877092 208217841 669100868 282145212 371171905 836940364 861683429 39794001 450618984 697839495 122605111 65289090 823623475 206960511 328505904 546795297 915744611 654743514 846566024 197470126 285283285 690307517 365278600 442837048 482143669 756105423 368242484 695554279 629137041 608781573 656610375 902830056 450170009 32508046 795981696 263249925 61708108 954555895 336824239 83662357 352390201 678080660 587959995 676905373 152017140 357419457 826083128 101526078 910761337 811134922 576941395 321795900 138155561 669927772 98452255 683934600 157020342 84888866 347665699 147484435 45754861 693044082 49552192 744981763 599894952 498757598 146119357 937967153 663856164 85710581 378955104 883933751 367601082 383334326 219738220 625966708 360160507 240267893 496715192 913151619 255241132 821835682 229984226 682352439 361140533 119600183 872734416 999821182 21196614 918682222 897838341 318387558 536622492 214286699 228196809 269551714 605298755 304208864 182079165 206395498 23825487 816278272 660134733 351681551 349849256 396910175 245792204 415066927 953747361 38078467 490301281 75537934 34285170 794468559 403674945 366590170 941659256 137108599 798753216 480430723 933013117 23724130 260203322 865605960 734047288 331876369 108195683 714412835 139312136 675831349 400873044 720067062 82140235 403201079 961928147 212499297 637436426 629688693 120723628 962997563 612584431 983859431 246276545 220641342 188276128 372077002 310584628 274448848 474160921 389022660 628930935 499740270 916038302 597124926 593766613 137977947 672500255 664717670 630057868 793974038 537015012 18432634 661726558 939790888 970480548 391972646 454319503 565745241 381213736 306422854 154711820 665732299 270438934 876291923 928128554 810133661 926947019 62658582 513074345 503740238 238029689 664897463 927803985 885674857 994973367 651452876 656490291 719405715 785134889 19153713 625030547 570441739 416002198 550560135 824631768 74058786 450305195 116561288 123118287 893391463 540051271 899417785 585789385 846988260 503483856 250951328 21165550 446918187 480975661 230892627 68449533 957607627 688223849 367157057 591933489 83706500 494015371 653683686 339935440 56406297 405836036 280526314 726771545 442480411 838059449 29111787 853711085 5209342 665778814 492102303 688391052 997520396 770348384 474965086 526952680 199492602 411747620 227761533 762208954 395772879 284937074 115684586 833908938 575857533 614140034 922991904 941089282 522393261 592816137 963662385 152910059 828335586 337576156 746655864 54714888 205180767 819175412 746200220 597898420 213892209 63544572 605955431 615687883 791275315 970239330 837864478 765440117 270172025 647256863 957300666 767992626 551141740 928416876 248121529 337595338 556462848 237195297 324615256 941223818 698269955 368459576 11465415 335273158 109111730 655787287 520870240 211651505 620823244 512093311 900899404 554413822 752730158 653025238 159997045 634920134 244449221 698676467 836691350 83971106 756388563 5909865 753898004 262128835 583310011 203014048 975505991 882888346 308531564 952760427 908995145 404091923 283252431 384176814 645304294 201515803 513578102 601073841 409718108 723156116 267086003 128850442 778143342 417968763 494788505 118571220 999820938 265702157 33027981 398972282 458127444 625631341 313804407 931754731 352435940 980172530 835425481 33318646 999566702 237040349 96983197 516732910 621495173 10348433 432961387 352741488 890678176 616771101 506711063 180555933 597391287 100321694 248496043 247497431 2424191 405400259 280644574 533553902 707369618 803511982 870430789 434295431 956386934 491209772 307983531 451316116 68517930 541592011 393391230 442498910 176742194 233646402 9350963 691896036 261902816 141627474 757189342 954684737 443506939 440209218 425132874 703148994 277522135 90518564 945573277 693421170 425616780 249962299 270491140 738960688 105067622 19764963 982360683 25546040 315186854 839829535 404959593 65781685 577062069 758458425 321916302 331039341 704885866 936984921 247163142 87546265 224238148 302032936 676736475 673229593 675680946 510261743 450990816 526083842 598281965 511405211 424647944 786571095 913569884 681339209 699086869 363132830 735636975 126762974 717416462 487652349 523365543 56781263 201268612 920637958 863664552 234433386 281215133 571100468 502258370 131866865 980536349 376263216 484982742 554814213 717985676 592063579 256738060 924915180 755566627 133173886 3393687 683113721 987834681 528185010 85882063 596761631 786131203 808519821 803087867 395157746 299196393 147439123 971201346 770627616 379507543 785894709 364664384 202713313 705393490 922105608 654102513 782014601 776782950 786249209 421639010 932764086 227726217 261144629 945572219 379248879 795680646 93548433 606573053 727566132 342701284 711698053 518575085 357658469 915789869 364686446 368987897 279850257 79330662 739782821 720649666 328060100 413820357 696762596 478008922 929536899 173427517 504649039 283167765 922434629 588414874 321521633 683433138 159386675 63787153 539474025 55376425 654769353 766858047 889744014 290855658 849583077 916639348 517165398 746410098 174885419 316512279 723812843 347539685 753153255 213520236 258767366 244153613 7721890 13366869 309730294 14293069 310871826 208708319 561237881 529028183 797401974 491093567 678366012 771378024 169244987 137096295 878672962 803599231 74419281 350132375 573692254 225996898 441192841 484601597 879741741 580196157 200460247 574962065 23860289 564372956 211250803 601141877 196364139 504494319 380223229 115927116 171033266 25980702 155756548 98659192 771026317 164202384 315542660 726027959 641748013 147816257 567158136 637198461 137522840 650954033 606395708 13903760 125299569 982663169 371823561 596880840 530071960 20563568 605972949 420190090 465330041 520669424 665877408 245630954 876522473 389994184 350192064 885282773 303130340 594471513 275620642 180208103 354378685 324361192 796742401 206020741 600405045 354333898 917743008 433021759 840656834 191637731 749426433 36392232 84388390 973152818 534476903 687530483 216552633 368212621 147142015 42953856 248420743 400327901 447610027 176317359 458856924 963372459 721802414 32400807 953538731 292585145 875379789 439930102 570368568 375003149 887710081 136769895 563930351 904561945 140288071 203409114 528626351 152432696 84086623 35318328 287142291 719639322 469306938 937041177 6847194 981501378 882646113 853528848 934345411 798711486 639667701 966103201 594287616 419980638 74060984 134924573 207347574 825925795 9675534 806050894 347415877 376582850 347082244 444150634 107628308 594422185 981753578 493607458 942360556 984295841 169741785 669804178 358430812 825662373 192685184 180146873 170762484 349064310 205725232 626041673 78969531 251484071 339606845 774323824 127914239 816319842 345922645 607996444 813550950 780967527 980373613 415303541 654113377 621573692 554142098 534086716 474387581 709077614 458392997 465187860 393514307 30086329 103211402 29016283 724618073 658253051 744934620 970304492 258167659 214041074 723484078 964134194 244035349 682727872 851013247 71184155 572806565 803161528 262789351 17733813 641591417 185352794 155813219 345063997 319193915 587684875 314260503 512972809 405294687 23775824 324813062 835281788 870951575 496705872 607036867 605307561 83922493 626276786 155578765 632699194 922355655 776399514 154158929 408990942 844642675 424531263 662095063 585245034 123316402 819679375 414765558 653880725 497739228 342396634 85942578 132643817 60037789 497978508 52583792 87467627 198109137 940451590 979702967 726484575 129638009 731109264 613946378 161460968 725366619 708751190 404021263 208929991 608848140 354753308 399904370 754679995 511133076 156137214 158347972 224350796 795784098 120954692 500558760 63122454 424004316 870499643 122694176 288007938 909115398 342921847 39831223 980268363 714246062 774003364 136194093 302743187 110080365 471270151 688018247 474296251 148700724 487766584 299510272 286623046 969541659 935713947 357690643 13278832 804043377 801402874 947641749 568643445 790290264 319585580 82161813 837175566 473697658 536883544 610367842 842659712 164715351 664734762 345933328 683891621 479155984 811227067 957423242 626659204 15347329 618575466 560953910 465975566 915846206 869212473 874792786 87952484 475171505 4265928 268006509 513513570 160828118 229261139 592672731 111403912 443369048 333773013 321824012 628488214 172051909 339196642 631603554 90699413 353189154 84261825 231335101 56451516 823649384 776652295 972763353 40032217 774921823 729649673 595147335 117245788 967371961 116108682 452683653 336490344 536552077 85270684 505776935 5378778 326274137 48302046 928960189 877022339 955539186 422835320 245873524 689210768 529173054 350378167 916606823 634382341 669768034 237124615 504264899 476050120 496077647 330156573 93738896 856073683 886356143 722275428 647150479 39390578 415320465 163740067 500409344 787006291 347966948 305063896 503370582 823793503 732828804 733584197 139056628 32441286 813724567 613571851 818449488 471446783 871492674 754045936 598002599 476949541 627927919 472967797 423476837 109976718 5471210 782828333 18962923 801836480 464850539 870869871 87859287 388495714 913813860 489097270 919708661 942518511 92058283 30919787 539576656 68773341 672269583 35219296 972893574 247815876 646958563 637096023 566281970 118486340 644254267 502690049 584536929 754793317 241960580 301090853 273620125 681526394 128351102 849360582 869932809 379663835 307742998 429664943 476265481 478675963 533816915 89176612 313319828 911544701 284131055 966360518 875921200 888516563 983541127 242726288 572971438 126834591 657208325 368449144 615545350 653245625 348583497 299447007 878831049 911852557 345897124 413762195 814734239 495967496 413378765 336350082 510785331 346481739 863573643 267100746 5376267 647156222 625882235 63969056 390408494 114286127 834902729 147396826 27579027 857526517 387482110 614311913 154687927 810408332 577008096 547762283 219292465 936206248 838291281 558116152 913344395 884470786 218996644 719161718 407226708 965144092 414745082 917649601 308601811 903913914 86371463 76037289 945368473 298694421 671465026 268080574 769446815 630927837 460789422 645280639 332720173 848085232 141212933 221750928 795287358 498287670 355714760 981618202 365314778 160668158 819920060 714728016 773982042 138857865 43847570 794054902 477164267 100537840 808258512 150081454 649923840 480573684 245777804 275802374 906885599 738406263 526002434 74589045 323864588 710977360 50920758 54570292 850539579 672575191 57298263 173293285 254652699 619750233 842446740 873720386 60979836 843797424 533800993 354688269 832244727 415344538 189870045 505410745 299760242 185579808 711441178 269773720 159442362 671852448 583284822 504759311 658020799 415648597 502353208 86938669 507005079 534310624 104475294 625187397 274113987 926476466 268979312 759659305 715237993 397311457 254432673 25703230 643700682 562378111 334618375 750146992 109628439 689679842 943764895 548566439 127802822 831296046 392565267 557525447 454311821 445516206 679478839 625169570 701157255 103779116 52313909 775691689 731369648 403681382 687939088 307226123 481642359 970615971 494350553 93704805 523270274 767929179 265499895 998031138 894841590 225264437 527207993 154644378 6407871 60201172 37205857 650214075 385877179 537014065 611136409 765115933 228929123 708286887 702421267 847874220 895217486 104812426 195380410 897297538 462051522 343229943 483976147 993629682 187159900 642782362 347184797 407761081 908579427 554849272 979713325 90390573 226471207 889201564 359240532 213428611 143592558 363740145 84033165 794031632 969750192 347642584 189040521 862460278 550185628 914524723 617306517 484854040 342641093 263462986 335282710 586374657 942999742 396117358 511183167 861791146 974184415 243694628 619308713 924148389 253351201 950198151 266134499 2025476 263996288 953651487 648732402 596189363 624839363 515849056 661052476 400850335 991524407 859224450 202105581 50605974 976355067 957016808 53749527 169638751 103137268 925533644 937971415 448482735 201470172 665450700 958777154 516463566 769386828 938148214 104080445 879651088 522697215 973835609 312126975 143947034 373160325 318271825 827197730 289487610 203556307 532825417 396494685 749029171 860915971 89019865 720214783 742487472 794210234 436806385 840270078 327133851 242672000 167251476 127368984 680749982 821067642 353775280 639998825 174371451 258759280 970596638 673084845 19811297 717102420 716324395 951353234 296837441 173615773 772489878 46962496 970290942 378311454 889830166 80577508 333233742 482958679 470408306 346295114 351448517 253126455 41170236 152620147 770903497 782471458 349837079 907113600 754338375 132695190 906564941 978411659 706760516 946032675 448283606 619078491 683019275 339322658 852532764 730663941 764782386 562321878 69045440 57144669 234882420 97771307 860553519 574884567 394067912 522139331 321877485 462816997 293911045 549707876 356104774 670880656 244643048 805863256 219181238 514023146 196099055 423661967 769163938 461707706 324220981 634592762 478397623 923964606 271921200 967348656 172665813 919306825 972327028 4923536 406147516 19368406 881646817 467603122 624891619 438748790 27856009 284888083 543774052 251357719 735564190 464005240 3231959 619605934 380440144 640865983 743283851 696926114 328885726 495115591 443748497 625893737 179890674 869092007 103118629 553007428 698750770 759373308 633147725 887285782 550449689 322039873 160293427 654466584 457990623 640613332 405340902 403634585 70062017 611554925 22857318 372356771 116443025 244063863 126194138 974234085 199988118 196207686 881260274 341776827 669399923 443189284 213222424 91385258 957061954 985429847 905087692 588633782 256245059 877548405 776152018 225340451 141723301 691009790 891137832 299278844 498690730 919749582 121269339 231661477 970561761 598360090 153916905 787182622 45287285 644481686 781527646 533551253 211765907 68000037 701280240 906841257 992896439 146798567 916967632 851815449 884032197 993614043 336609602 189605012 848549161 783931125 775399730 270583438 145564312 386084590 458048044 204841903 116246209 680240812 198454677 358244670 305297458 2702990 514256419 287068946 640825103 571944781 800721458 140665142 435785182 573908529 639086108 933689214 43312707 782313779 484681281 917251506 345170463 640686240 334628328 860524414 5371960 683610177 587989099 361648498 397344816 439346904 596413999 323653898 744757036 571873374 573511033 960918801 685815473 521557660 530600833 85470297 959123122 211709118 803292623 627341173 244689311 43732852 377904236 467849384 851104474 665127528 363358529 114180833 903515676 833740121 11202744 755080416 112310124 711720266 169840274 510883425 308664319 892851791 764796282 195973542 211499292 690090598 521272962 201039037 158741444 887321713 136905788 655135462 615008385 644707169 919736530 226989385 351534664 289194182 781444197 484709682 262292414 664229472 521083728 324141491 472902821 623489401 502889588 710519407 537571463 347958875 855365411 545273707 515610104 43723050 701594442 322580836 624612035 264427536 73484813 989675114 990952824 774953638 57256923 398721617 894776762 466161498 32016325 451728905 990873968 261581771 345463835 99667201 316518887 919502919 213379257 280405216 984866688 171764262 101676544 940422583 348559220 112059729 712952442 837645959 29716942 141983457 417629239 611440821 819205613 737502778 787001082 147850157 636233289 468629391 117743890 786256428 529935719 878141171 254461205 30851188 815112806 440399313 475247278 959366535 45358715 512509245 490015699 244132520 559787212 745298578 154943303 895260617 972787992 832181671 915792370 784547427 273544090 195500314 675012769 642145605 26828517 105677825 685295348 917827420 63470831 298363760 467594827 266757300 834018967 643504745 685340819 16666353 385402980 128317117 870804989 432982204 839067382 360221050 832019031 128183235 496829552 845129633 823736120 173331484 600772467 336034981 98707024 986262486 557447607 233872307 152642858 470029843 172664485 860116647 899666742 619242272 366683514 491842667 457706890 215091955 348119270 794484324 420180624 322332045 610417298 944185924 287311462 53006738 86867553 332685491 999099758 124366359 192206762 43215333 44473870 171631002 760027224 483929788 485678023 679350622 759509890 759114913 607284449 209260499 213524279 921702618 412742187 993083326 627907104 507237724 575953300 169873474 906330321 412211676 337924899 871988699 891952135 622280725 283662205 292355103 30373420 414660157 455208901 312392248 29348490 541507266 337798076 221094855 571071819 139381194 887164552 796944245 410210184 55121986 326070841 800453973 693674541 907403849 153185131 867105008 404495436 608112858 330362941 799525155 99547562 594719897 80512077 174206623 371954982 392833011 785006411 209958118 828873028 209747922 105064548 408978700 346952118 922080335 966082128 35507422 508489901 134859347 102446093 491331871 143919906 449487942 718163323 272612835 727705361 439255910 122296341 254112630 780822538 921598774 537004383 219514983 414792034 441425265 673914447 605340670 874079340 329912982 671270637 516985154 378313810 987725058 673460593 902438669 731927552 64050971 837175491 490910448 448804113 54300034 851690010 556454407 828924004 223256573 185650796 965407756 166550652 179802144 989733426 257100961 679631957 385135764 370361484 907646585 766013715 708249163 492953274 627374559 99517663 736779054 682533628 279981579 157547464 853339940 414842571 802678903 813199564 169385629 102631850 485629910 944819190 869659339 597796961 267834270 966014689 444645036 168129094 159967297 271929293 934328321 446251916 740099259 537024512 246537593 176344576 289003734 87324491 594491657 882066435 117915921 913876699 976608497 665464368 826075319 365615716 617268339 57525124 649236599 407929445 593339328 154628422 138437188 233634990 249992607 870335051 364009782 865258407 527127495 340513147 33432681 455057304 959183292 514878127 828466276 794837847 158231576 860647702 802905988 230482541 458087188 870624680 905630781 114779071 386664297 454120777 751471787 783092012 892922295 56218440 451656233 201660533 286054366 38556655 347606495 932967595 105119706 222809831 116792315 72353543 726197457 709345670 575810139 417889045 902281736 4500967 497900464 372606160 179089741 276124168 541678224 934986189 481646243 547083930 247342057 569337928 417505396 920531488 237482648 880807361 22248743 27782729 301458497 510456900 597591546 99375344 788540093 937251774 938887390 737328589 883716498 575308769 692139211 703178112 642700940 281855826 415501812 667225628 423176611 66859704 377376273 498978881 407028609 185090666 53469226 289460527 270982347 123829064 85465233 281912235 289758375 365441367 748396284 179457378 958333989 16886988 639398043 702730439 255543509 724149429 40928687 464625123 588598523 287741958 111148948 164336212 632580752 62740366 131403938 514884899 18895266 76385941 951166464 575949351 53388604 48743377 76409075 206361275 7261487 141773898 721647258 184475582 90452275 63167524 604963973 281462307 666708193 771610104 199339578 342191275 841236409 966074531 125931362 88592420 877622663 931295510 798244915 977278205 339062439 515588708 25226763 925795849 432167243 615007039 311753518 243221572 659776673 737625296 396058432 641946637 736206729 274585658 45770976 481060699 938382785 923094638 89094807 856500254 62633056 309013992 974755411 131828415 343055776 802696226 499140879 274002084 678624616 15997506 783242089 839608735 171570159 539057003 674666735 351765410 688126042 949962068 847955252 356150080 273683952 101889062 704287299 890202619 765326680 490808714 683606885 353467697 164848636 392852884 583398385 448014722 39974137 207518040 62159521 649246594 179453291 199741305 974516473 17946654 822690337 802149115 758460298 766698712 685270248 32457228 894269730 36993830 983568967 694630923 839896763 500643720 889706864 892896520 564995915 578557484 386054757 950842690 977800415 404103756 892848634 814238920 108166490 889854154 992670081 817845349 827140173 450176969 238615337 95320038 228871118 679440060 810192715 904436032 160813206 630790633 248826650 62645985 881331736 273179663 544431846 815652665 852689542 86879071 465562377 958487545 901103923 563175177 384370901 38819552 52785905 680230700 710811841 773600078 669062942 87806470 674459641 491794254 406677458 415333117 671488931 459304530 703589073 440493243 114679339 993629821 274856126 984041693 851525079 332953871 499633394 855025035 762937866 202681938 522829693 246903020 320252393 755992217 933812961 761344816 173501084 665251356 724502876 152098135 653714898 131457503 102721621 671062319 462872657 504798421 405183473 181625956 103822916 509119962 864871207 985512057 53523753 529048316 16505023 83296876 268278373 731854454 864841908 339493155 251632985 434858695 727100757 868477649 844355315 516044352 964514298 483767496 962306205 852571396 682171355 661716531 454802688 808964896 590017490 638525234 195714546 850922610 793710403 827327854 864632190 778786060 625443010 83390181 848600356 925607048 339016217 702584585 970301647 844613825 386880688 676573598 198834573 563480547 226067239 127743696 907802637 115308269 808304994 27257779 537078415 200031595 130009505 732523825 592452393 492376641 171723533 818384797 722690380 937301039 377170472 279520244 300122074 311620498 996035300 100865844 643814731 987652564 407627582 443375786 354879347 879822817 592456642 306060655 17261619 334246894 253617585 254719407 397280372 38670759 974333380 916293558 698148446 123130436 899691553 564695775 744721199 354445347 48724509 403268061 936727864 836664503 592011447 120283299 917055487 257070920 55703691 690334213 423237439 304847793 128019674 740678876 947097123 253196264 530267401 691299951 725735433 394670572 539556197 616887957 41243010 213339626 773437177 194772644 366538069 699692804 155970158 841121027 72483643 977184276 929709547 752819329 840264604 144902972 456509193 807371885 641765010 24740028 182656420 302052541 371007363 398084541 420205820 133073851 361165389 145055674 481665868 591261121 339161274 749436175 395864414 462260870 37097227 755671400 871840817 970647590 108380446 986126729 515124508 163229813 146951094 620558385 113452597 548998748 532238666 924650934 793418448 312466642 370431517 761454665 390514610 401231533 138527795 79329266 20497375 615449420 789636066 259961936 786885006 578750076 415334846 176772955 951890876 632905841 5032012 925837426 365416471 304604339 523640126 719146290 194374942 987375559 978799416 543445658 339082676 432426091 736870016 204155053 292566427 102255473 606524350 328757725 619770290 381142217 163945771 788800992 589937012 979544963 18387714 216335794 146914498 967871893 964570942 372287126 138675468 937100172 88474329 134549010 745312423 175420856 852699921 589381648 403667472 672639561 707506393 626496618 753024589 506044986 520809086 57120126 154063240 34447812 673970526 369189498 174355683 766216450 424632223 532639099 534112903 483981668 761197840 943081361 294312298 607219886 494796232 999166557 333343267 976576947 711394051 248325466 635753479 351563855 168326302 833886927 879530733 527813709 672845329 160464968 121299493 180798915 857345120 441407290 621751039 563944001 656224277 593510438 99281354 987855578 764018700 885305462 93004717 848167312 699338783 737285083 739963925 747114958 686044582 838618088 137300502 628990402 536322565 431821242 432092368 929231742 436841961 24750093 556778286 76688258 766864353 658578041 407086245 541498667 938247541 640509408 208954119 208711633 795234212 759094565 462275950 131651678 933743020 848024105 208380249 755086209 18892572 622471276 243924834 288003512 740892954 307738489 823791193 500865520 760310171 608820584 85188732 97021678 239642137 214625863 154303841 959388848 821726997 330071086 359937116 774787125 415253096 893645013 882199483 140342729 858930977 307805973 392377866 263254613 341544057 846029235 62867219 292642201 83102868 443035199 245375308 652227863 835551269 824136443 365046203 446296967 379058049 972571695 593287721 573355230 603294487 739880580 363920267 454124886 606094172 424390603 124950006 537743042 524148918 501905262 254975691 9886159 72620413 547324707 661953419 547869076 674523410 783594477 613794062 440601727 579134275 455040201 193993070 216591767 658269222 497443713 941541586 727670603 615445122 152831140 46499634 524095414 319928436 121589156 15400775 619985687 506601420 949400739 792424556 600381378 878995054 557868919 21901483 124441458 466516146 665061630 742626222 344685186 275818035 345871937 816488060 554697493 640932271 924035086 935366478 407840208 513180625 970252104 777787291 140104789 110093241 859609155 137831611 808937503 178062842 858848136 229214584 941591118 822970690 612247002 497116447 15566861 464309359 943990177 353826561 78264131 697466715 506897243 66058797 164680890 423547672 998040012 62915032 731910308 381509136 857633828 426056981 635913683 124465266 496375120 659536875 792688502 70637079 347814106 478536278 89475416 437967022 424116140 709573629 55547484 852391159 212772250 320981956 425110669 371283191 589778489 748724622 954948600 373563362 474776119 911412628 120620040 983955104 835647882 583093390 658988331 333900430 784200436 775106872 226276048 316341940 811728620 526676298 773635433 706054514 953645391 904718247 287201683 7720879 247232698 588686485 214018759 298016154 559984620 176057683 446094104 320514902 166465332 638011313 619139153 32437120 912872901 69349607 590233786 991644440 256208909 78825140 51216512 708632669 10222904 43561532 982309355 317914559 25703557 621189641 710704528 607984816 211040166 33960172 67296910 118761943 199260165 53120057 721302065 105382673 598026738 297037660 803180203 916947532 804872156 842439078 311392598 266174434 109441900 384877708 562731906 351839137 549846135 140561465 449290547 980075487 134538532 837015979 47681161 664471746 333647965 413550516 697735902 143533747 705819910 687957238 40820625 357043837 211529427 930824235 503152092 357306521 437796077 639573991 528401580 68474601 792137734 251904822 809536553 814797239 177294657 932046155 781769284 441710521 495522126 288223255 550884743 213084036 484949295 39630982 934956291 905488490 210739397 573045616 618383860 444443151 227644369 563281651 802323218 74119198 32526810 365658382 953328489 328131441 818900109 427571603 579759835 748098173 237964986 382190527 571049288 729245210 143925540 225212171 405898396 426750388 467940208 454455371 417134967 423595637 661271126 273501867 432119799 45350941 440887197 508478446 836242427 374558100 140424587 187384144 401692810 459762165 485179579 787808234 819118992 890712847 598698104 332954239 164458591 330129149 625337539 928816951 106846570 300276607 601664139 626327127 956039148 367428711 577667641 597115683 883631020 907904945 373255866 982247367 4331464 198527535 288797432 105672981 776236411 302304916 44736898 454100471 210495539 189674206 498743946 587827181 945176085 387342040 366695799 508449121 739923239 587921212 886560921 863566317 57489518 803728149 729246550 320075666 200809198 585113150 435059805 127107189 853697557 640303283 180722866 468580186 359664791 76127261 239067121 650040322 595953633 261780546 5161035 106475979 731109745 738558705 659820205 623124996 170069671 112679350 497209443 459462995 277207297 320187715 43337770 863533940 780995891 814175852 879595339 959436991 523499697 770416652 752243734 427327878 113507743 166034176 175647752 364772770 813953625 15701063 785653567 636805096 544979595 376324566 297206390 995074353 780808224 686218276 911329803 829357149 593371362 598648324 235660766 361801861 919273903 966202796 9241430 993658954 411102073 661330269 644152321 877468800 212057128 990151623 50693057 410349940 909818207 896524308 853171004 166472425 437798034 981674441 960878775 681614286 380927958 663974499 94886853 431781862 940130900 38145789 618407851 704774908 682706262 666927642 179579221 674362084 28298728 382077001 885169938 435430705 235386213 124271323 534282518 367325868 977539164 469612401 537772795 701092160 385046743 69314484 41813654 255460216 713983869 492776515 99711915 732110446 811978125 22886842 139581220 579360256 334976923 350255552 899367018 662648934 863195669 579628723 290319813 990267748 744519275 647969176 652295643 624015757 977232320 769786220 447534895 949459313 669404781 113151013 977655381 627682228 214541367 735067760 964755296 972614286 861750121 707140593 197888605 486936959 890757327 235598705 991132609 351342701 983465154 138125027 811023206 881987055 710061501 861184542 701643204 820064608 551148385 612802041 643204646 889243675 421096966 427960857 100492860 935754852 505180668 15797821 52568215 443027810 329062413 338822158 915434174 966906074 452562479 671002037 319904051 916669453 297265906 953407893 120140917 263593562 458974001 411397252 232177592 357610581 275803785 837968108 192146753 83162691 430803959 387548276 846028199 337924224 882935019 122126002 617894653 435831060 945641064 175302134 626706479 93340101 844716862 765010375 84949827 686058695 762754694 887821836 52836044 598846829 527816383 641160831 308681133 499856629 730044269 532637226 207866652 583985465 902668201 287291934 121490917 299960070 435508630 264702721 702397008 955736673 863112936 670711044 608893751 345524679 965232240 508684926 378414005 4031464 733076145 677452165 798969779 949185394 390858414 51060502 397648658 48974907 477484784 130280152 849771196 415905271 120903188 836950536 211041364 192189094 878653860 465952705 786248817 63140874 989344752 1499267 548610355 172540982 77640852 346965321 222485941 13527170 356998748 785491565 483765608 583241413 289886292 120792945 955616251 954482194 289305896 796029713 542331156 765151597 913769855 963807021 141291697 875194799 741428639 819945506 213373992 176783133 698083701 52766809 217037632 866226767 201648995 478416369 985608637 293862198 266364322 543918916 887024678 379615383 777750225 382816600 551506201 181898848 521641431 184751663 383951149 113453424 48396421 608906967 46991968 400913484 889963326 803406890 690375608 93271517 730404783 690575502 23967542 10142536 817405016 714083823 722393613 501664061 521331792 841937206 921287155 89647778 118301808 785018028 292264161 39918416 636196102 780324963 125034837 134904573 405453421 430413040 773443278 767315344 150636411 346088352 996456285 529658066 483766811 309089668 756503506 980507359 867500509 758694119 787522120 134638157 22412055 893674408 194980306 802699418 991415785 338716651 721079562 697353054 580802376 455934618 243747060 263284510 910324063 683986357 927818055 269827378 526377052 636995385 355625443 755012618 405773234 575788983 744270588 231718687 378488630 893683345 652407806 126773980 279626142 659938783 791363557 245806044 214904883 935081154 170044368 460768077 466883084 181589302 318596694 736284879 454016510 235868636 784909017 395716806 701427125 252009604 394278499 800564941 387496390 100441200 865757178 514091146 112779258 392609572 981870903 596694494 576248260 436354621 166816170 682558151 330915505 149426339 632724298 640607572 211890562 378254263 726368708 450316735 3080339 990111823 91807280 709610084 148122408 127432919 627803419 566126083 541528054 676859858 181373303 174316469 636632384 826356707 709373465 677374255 248842962 594736159 798521323 895394956 260127108 41970520 727801112 997801755 159125434 445054162 557015746 444582877 291488934 855533342 182062805 840699468 495341156 538465869 797037543 284646413 285666056 792663547 607969575 364289442 307060413 316477497 330425495 940704397 162757352 430200910 998763390 265105297 704946553 534469464 94558117 963832722 635443801 183472380 414087260 947368268 666448775 340469699 328481742 517934705 715025020 513508167 352146556 429061229 310751506 753149051 403843613 201383738 184627711 603291354 305787270 369481730 141348315 337116264 578196002 700471270 921806734 314093965 973930410 225012516 582614175 840222204 873646886 337389608 786994634 952350797 477819821 457251765 358879493 4825528 406968452 998928374 164686823 109832551 865261636 892927801 582219797 16511054 398256007 607336067 839666464 660714730 119520738 985964382 927863010 781161520 14319105 190517397 537863754 978265947 709981300 594815813 440394677 60607230 206950524 512171451 678215971 457065756 397762571 44428678 13305819 868652657 718082576 25740660 33807808 44947666 697547795 635268064 119675612 684981665 92950552 200666000 626979067 764877055 115694553 31530737 851850691 775780187 672712370 395430768 676877148 75378333 348217007 129125707 29273957 738284977 754290158 261327319 728549742 204405485 544875093 607352724 731526962 810144261 765078394 920405113 265570093 617455512 471607948 485661436 684020764 201380308 291204148 802302511 669665559 21508618 377367438 286073630 373432755 247942142 433521790 153181926 138956344 801440187 504037875 202255658 244396752 399959100 698094638 937889029 455852505 763011055 474077169 225787673 307345002 696915309 157335735 321649055 963209047 345114855 248346267 328180295 91953514 981044470 306711542 806092636 764919821 429942549 950031056 687910555 96612909 118429286 639913303 217581406 121316302 305892964 695752652 540823080 193610085 674831280 164284747 604665126 854754497 726167708 899471849 890707236 275603197 530913335 141862098 37961385 380823015 840815174 779834168 392560349 575172897 145433781 429213182 273175549 855221767 482649625 271345336 427877923 965591010 947806231 531169846 259870299 176479825 528142765 929952931 945351466 248518301 245800640 207363245 551178791 507087876 91287816 740077002 427586312 895631176 878658922 617596730 894090787 96098981 692327659 110091516 67823252 395202814 239481518 716264796 546916093 922846832 267802421 663926418 468709768 77230253 735560236 621188909 755907393 42908928 625002670 244697340 263451892 412223514 858769801 910758621 369532208 289728498 414032062 575193746 756753428 338064142 624006702 550055562 29931104 481145391 934828305 861008817 792514614 992994042 507678075 249334568 3672411 498218501 104484536 337928765 596732145 404806379 809500294 916170206 509077371 424313796 311568250 874011535 420912306 347309275 575760384 608196469 525818056 631645553 926487991 105428116 451629063 861498656 929836459 918948214 676431493 765937589 269499417 791574875 640137018 76415781 374963500 116704579 35122317 447907309 389310513 966651901 240622689 776201793 403154837 203623378 609356612 257383745 978199368 347376589 162510045 677621395 2372035 877909604 488376033 696464618 613446894 742122822 908839522 283455189 18165629 789008235 588023786 630139963 590490127 680173864 506541137 558741273 672586374 557594768 454298865 762598122 114335137 699322686 357439379 239696082 217052084 123134974 920171011 41323694 308956328 673466133 382291520 137099028 191404089 245629522 901836846 970940173 661059761 903237640 810906402 932776059 278547500 464154007 543361668 27851792 994184347 586724473 302674292 890567034 664240352 833476110 138266172 875573073 140377831 450270305 1643564 933946562 648611683 316243748 22860193 679572396 449028631 820551794 611544795 928888561 193904406 686657330 94853157 221938096 421108816 263490442 612202094 393418836 142553031 552922245 151124935 674960231 672557517 929430501 792785814 687336858 566408200 868478642 315476596 452408754 595156915 306015742 314939123 89395111 522179703 172308441 386994666 203255966 972416487 211671857 577535971 60596112 794344518 271539092 258234312 122432143 231340925 440037634 446771544 205714992 118585592 945013131 201069681 702145049 657087610 105861923 886403479 536936387 302977446 913736401 940554169 323394117 620950775 536796097 581749003 856015345 313525412 827647200 51557390 532502568 455861054 309079724 754937236 289670870 75298980 389225942 4144894 451743976 978464078 190241847 325362181 637968455 962727952 119263392 175645693 31802806 65448223 992655474 987938719 398818248 735642633 629275918 911860515 660535671 598407228 638426626 355574391 271416436 518038969 805798032 451642344 868376991 201174959 831273255 689367242 402319764 285211516 210224273 558325028 762922 611960014 830428820 107545664 27160940 376469691 555364336 13304630 409736381 570988008 627127392 618689040 271988467 722101583 392999743 138585441 609518485 353187937 641917330 604938466 92339819 776910170 286645972 67107068 872525919 959957473 174510546 371059048 75717444 24716841 939848482 562797366 578048955 32177184 339898874 354614612 260380241 909891305 88625379 378171110 525293770 311990572 537992183 578390882 478239899 404051041 650785986 902432484 729115243 101924611 842953713 216532373 659795185 516811885 448778048 740837465 79488205 577794968 810972006 955672930 901627249 309178733 755788451 441797389 401250747 308233982 443330890 466668818 912647944 809593129 28819768 760281892 671338440 467475089 94629554 812495724 975597884 724823616 721718703 301034369 564958792 792497082 156749758 862231531 580679053 555728339 288524459 409371609 799052935 707864276 278153978 308739764 929807900 23363878 974578124 247469342 647232794 417640989 64782745 216048298 964656413 38577621 396069796 215818699 45395971 437821604 254690793 273021942 894060615 703314694 551304148 952881412 945971218 337030389 46489452 924540019 631997 728178056 35068584 662202763 281209506 600294745 537760517 648637814 884043837 748849494 432348101 128205042 948313481 955393142 704815610 473672638 255887697 946973624 716637934 718546603 996714141 591749924 610691974 972589294 334259729 484795476 952804399 737677495 704414593 35218352 102877154 518256573 721847664 867651347 149535971 29830664 278272568 876741727 916114323 914308929 457889345 64779512 169055010 852978174 53980960 846425902 229495084 69185345 270553199 318317249 687917538 592710463 373836498 3845563 880757641 595553149 652453903 207396175 835273916 108126039 784727995 860058054 872229161 902062755 731982773 245024113 858072793 709715279 836337643 346195500 765851809 420755566 900734612 208661689 331091328 756769525 168169108 220574174 69457532 768360000 426565266 249359060 462489982 999234086 142617381 321856684 88966194 75488321 704212877 850871862 716511789 338238945 544022181 192577616 86174844 170119097 779603402 138781494 146929920 568356581 13631950 245699426 882962487 462146110 125919243 980963019 680333516 538228606 916453565 298186999 662221712 203773356 630864853 730637889 87774187 933463001 725065779 977418353 422826489 954762531 850067496 308578264 394514854 462588303 95691491 586484554 425601043 510319742 308248225 968782733 365811290 512580012 741343726 565700032 802765247 330494904 698268576 364328350 735294325 350013293 548031658 57216229 794570036 140212455 176148025 132195070 56407488 467543091 103493125 991024974 101190442 356394278 669921741 251964099 504861903 527393186 707178680 140534133 459957710 282297914 198782118 159184712 38816083 278800931 259987539 840554143 524095782 661144625 995153621 789310220 778392237 554272020 691085234 355065027 508164887 121990912 431010409 863467561 498890135 737628315 382872489 226593059 784307125 193384085 683791963 347177511 721848766 431936062 496950105 10736553 85131104 873152586 199438221 584598089 754464990 231316270 148934754 48825518 429024634 427021078 787235673 854866511 552044290 241111228 921514516 153528933 550187320 599604522 82228971 138494376 455641906 527619897 263669154 858725794 89083543 5053855 585960646 842028352 506390446 92173495 236149465 817465255 976905519 807332227 645731089 287233504 755001009 684709469 435589743 96718739 8518640 388828789 334203888 416892397 789343436 611852866 898127471 522357641 830279718 731026914 288552045 519018963 862487051 418570054 301132510 750351870 894892405 104097721 560669457 510185439 170128258 621753803 530978874 350827858 648568738 477787880 857315313 300511095 714300059 257745467 308263646 48453559 168805889 492588365 826777597 267596449 872902843 967677893 768386561 303165846 733631286 531939231 833481799 526313772 41442010 194490652 135052110 271257028 78465959 113524112 539043628 290875183 522676912 324957760 299396760 902209436 954970164 144552006 352151370 595898933 213314117 292056996 6135549 659876716 560027483 958744234 677447659 569259335 663282255 469555438 497953472 164085175 535556093 975567978 882076424 151344073 950549550 67688540 585184268 660162351 59719077 350937279 907020450 924429484 793839984 155382170 516728528 384764713 124297013 636042064 46982936 520130398 691292797 120490229 77755639 219261818 644067185 801537800 702104583 28338554 392470500 763286296 173009669 878412728 728187927 141400817 539344845 39944315 240367710 70262526 104698202 884425396 867974231 949144517 635463385 505105410 676561957 101551522 330470343 234798213 857161967 101327062 123017123 953785799 737159511 837587439 365178653 904556016 561966709 879384103 192437191 967753459 760015561 620403536 240079709 150525902 574623294 991163452 186753005 682423703 72896194 854931928 799031008 326983977 597620754 803280841 79305692 335835247 647185084 259271737 73471688 614694444 85817311 152578657 257650055 775712270 699501181 176650143 468747027 139617074 404334116 317684855 181961234 728926060 757186999 339303387 900064528 86627014 654966117 838933978 111673240 385089290 141976688 207385477 74874979 421086747 533459338 76394388 108295111 597542055 261031711 812575028 525116371 825547958 231221546 448284504 568941134 650908023 41379110 860590508 698031737 741219637 790368507 103856083 347089668 65701580 783353555 936025334 970220445 541290383 61493749 142014827 205373815 358233016 586088071 210821739 484451486 879108919 107301415 306682697 768526724 904462250 401914797 296721843 705403117 133329192 980567803 337476025 539905053 144503107 134546296 146803926 562870176 33560337 426275561 21404787 37827344 461305054 490135210 1056840 343047196 275237556 233413503 530994482 9489853 298203800 85388727 523658979 354936306 236557923 7585997 774110419 230988630 659573076 606069566 311163500 80834992 831081037 91633790 356414487 727141804 183954018 82352335 770771021 30135168 583405352 583812628 821331238 271681728 292335555 955769705 124837308 660595269 735536134 911042683 108129455 856375394 180675788 871706650 505746231 256436375 90281818 754871775 648117180 448247604 611060500 605251440 864863436 893105449 665274342 895089556 717011078 267007565 441601343 873206952 118908554 779011727 24096080 21379530 930139267 362009238 102551914 999280585 515494956 445598562 755408740 594667509 185121554 568491000 572609366 353079744 263032498 684165395 172429375 588914280 139205642 593784361 760124597 868052932 624835228 442971906 474630457 459934729 589907966 607461150 446931730 892665067 544537891 822356419 491360828 741997704 797238355 189980623 214681288 541443638 647357141 305105630 342628797 33374944 243736249 115877289 30792804 852955071 19005485 40389507 567045967 267963157 393008209 386886219 775815555 694551717 487502769 93777081 500216393 263661567 27241315 777993507 934987688 238629678 354591311 983261275 966898183 909474603 72263727 294376109 128519998 740697717 285923768 61023534 76340749 777924708 733876179 41360881 776788043 871491423 352957956 925647350 350739730 700150928 146142978 263245964 847900582 602698684 832328226 220850332 582381312 38168941 572817807 324724097 110796826 750911776 395938341 53371746 785340116 404845255 285489169 629947990 284836298 239644184 681350107 251375185 943573562 941724575 643350190 560164736 479864037 619863541 413902935 875080850 154235758 750120368 830255356 791958166 446224424 625303062 635794907 382047389 254480500 191676138 375173551 587464863 431710346 44072234 902172717 597668059 198929895 674427072 275393896 88437979 48488126 294325552 244040600 646404051 540189143 411559173 471724413 520224259 718247957 915244946 646031320 436654069 125158180 849783255 562966684 286919450 254724267 355069968 688211416 435815112 901502000 71964388 152479204 229936044 111812160 340683770 126433867 462764504 944755441 244313554 781211575 321810760 681982667 899118478 702689203 66825412 301326214 334403135 121458813 29793888 355019930 705868795 217221727 346585140 677680756 273660108 195775524 284576489 166862605 568139015 831341775 216644606 582923963 509827241 864270539 623180928 797360919 76452825 395448062 834268817 497296596 216323417 278220615 15948323 150204506 127769476 703614882 658343176 954416874 567475039 432002442 861004749 527837611 547821357 450915878 925863957 81744185 459903566 92755071 659707766 705155392 572233752 487753645 887002155 442529823 53935562 102840914 686866510 817076647 25742507 635315988 697390415 458151087 159659968 920927812 403533458 476757394 229331204 408978584 250315384 113514549 630778731 759036741 100359260 832184944 334675064 297467333 983005291 870142264 77331484 124912553 660763297 863174470 288115202 892017653 148830322 521571252 560445554 621724627 584273030 537787128 904654845 856170339 997325128 553606087 207490346 820641852 85932757 576318331 618856630 838082461 997924596 290286063 483171139 373990654 788216708 222350010 525343580 967724598 72986216 836448637 181825519 864427102 391890955 93919223 823434907 515798205 744248252 823081028 111089002 429782111 240860050 354144455 124844475 556405424 289286191 663745734 855706172 410709409 219850007 753405891 680249492 933289460 83940896 625005407 992587446 677625797 275552703 380895145 120192815 479317883 564680709 203718863 620127588 233486341 267252968 352313688 583876947 587476885 182183815 933046820 337501651 138607502 849624471 623371290 995900832 603776482 432047283 108886408 515638605 955650309 160423476 61416389 871660565 294284656 544020416 145715417 777517243 409067893 28979659 87710133 724800865 291951155 479868626 985490455 2634324 605420429 888244743 33714872 627507624 161616993 719221907 72674046 620254468 853119697 17831186 300666742 178254959 236063023 564861106 545491511 306253464 12031431 721425050 441811099 664174020 66205955 446537188 406057201 631709267 33969100 236341016 500328691 325601377 175025673 386789609 930222613 585164526 72729042 740311511 889986221 213903676 708174611 489379915 226861627 849280937 285835690 736706745 425078195 855630735 153797577 259885505 857383803 952510791 621591482 739598608 582819545 486074020 491747458 430276318 334342591 381611239 855061512 489647834 543282081 606727963 122864576 611881606 286505769 460786694 255559772 379486867 627512007 526285804 405674542 478747774 595590326 62627009 62605181 675185252 156280738 640221217 310426945 704562279 698660513 487980994 807090100 873128258 858924078 812490749 934453160 392346737 370614505 25447452 174318553 274877858 266424897 45837246 665136398 979361401 323948218 679681611 175489934 947173811 147370150 861494645 206665182 178163696 497093165 845648622 845598569 776636598 156351832 210552507 64077072 619024547 442823809 551187335 741515303 541774909 683784013 314850740 68902192 511313846 97847407 523321819 469266939 85077525 257659562 357755594 469116609 271434054 668955027 205764680 705778233 997733565 661030366 330470561 528318554 857565359 460111817 441983692 715930665 232756317 384102663 628566293 207020282 331590103 808797730 966974599 198496740 258285406 863574795 472685734 687453588 990404340 600455499 996748895 757801916 647417768 991733840 709600395 554551217 840320651 460700932 277903924 571061718 448414245 114625405 318315178 659253219 672743176 360593131 302309776 410109336 762927238 213224476 55585600 396472697 385614758 584818926 252690070 116882764 726306937 715793635 793521380 46424691 355918780 269380768 261610804 352268178 405306572 532336018 833428860 168669466 542706120 177684007 941315702 958382514 717906802 126128712 700953561 691241331 963642237 920810244 382823480 829306391 249439635 462419437 147199459 372353205 517716658 656004175 153034428 312319413 150376310 611052699 952535165 16836924 692745456 67191280 437252865 87371459 197640525 932409405 676053102 520006590 572069380 622551198 209280845 240168633 854744157 448025144 990122424 95449235 432485541 268109441 256940719 952036444 549967854 201816458 129982445 938958586 636675711 13425862 63103832 69239317 424130144 44006582 140251026 934784699 184037545 894210212 603604959 444385526 969574311 593846465 70240627 604718953 198674595 459694637 933705343 572767218 850470875 693334874 814488536 193601547 815450015 979189420 912923199 266884662 292994102 422421436 401454191 941296768 350347302 546505100 984449504 955672041 204778671 872765940 93963727 985990661 521278925 59272902 139178867 811675743 824911526 935448049 78257989 581970395 430495786 559945095 723555366 748338138 851053821 243622626 393113920 64176579 8700264 178235041 143585034 966482141 813436748 235554800 372126065 777407666 837744193 16560586 261656865 340039487 621974185 565676303 655169031 172023741 273630043 11493004 705555535 361792850 859106930 252365926 253877720 228549340 502974246 169401172 536959249 655070361 209786362 687251466 773668454 649469473 97248531 102530992 601810994 942485475 620875045 31030209 706894604 304633365 591303490 510029155 476750753 392616692 403774499 448200687 18944912 632870236 643879002 695527471 295535437 694293837 828192327 660991723 164009819 143663381 805699474 364489727 686217136 835278942 859002214 316775778 593244957 64821185 381199909 633806843 80993175 190641984 641852933 433473404 475140258 218226536 329600348 224724974 381396691 311093078 5877208 332761641 919943925 611504430 786625111 587106765 939619338 274134406 860738206 864268001 846935154 966199225 798269914 408980670 151464691 336455099 741351879 802071962 203105393 521604380 439783506 67956589 443263253 960571863 895079784 281802397 392958861 903634622 506962279 337898077 715058856 163040869 597659864 605965019 659078608 465041108 633825824 813085125 655705248 637329314 955237270 287954239 225582599 985220475 161115155 683278879 93495881 763444570 656562642 660236099 820081499 330209909 245232402 105175413 202921220 590905952 213587637 33315 510175146 177761334 711420416 785918184 428170652 557533807 309679983 581652807 327770576 150964750 574118498 586085711 631488901 248038241 144085178 130075104 766082804 96463892 641969636 742038824 702431159 595121999 499112300 910025524 684877826 445751586 587579056 686583267 95766137 890220971 827155026 258560619 975027703 763918604 1242931 127632733 825733951 38186694 240270541 73689444 976005269 464031763 529120436 965786714 842441983 601875431 464894312 147563691 139174015 260036894 580070044 88527296 954688124 576472994 727834773 742731848 487620110 228829287 22072942 139377378 703465574 773977381 838697256 141349364 881282003 706881226 350368229 916266545 178736666 144966020 801586412 498773249 360472364 999465072 270043830 772976127 655564946 431919259 566820152 354423135 713997860 76842245 515231663 459143353 108323488 80567924 190220438 793978631 844257515 646124781 301143875 557514015 654806886 430669079 305715565 56309765 335633881 938635895 624437597 867184864 592706039 512643022 763513002 526592805 580475610 27327030 206499412 583859193 283988808 77353774 758850658 383119277 430399066 341978921 693099104 241918017 512366969 793208339 838966136 863779946 779149741 240463541 494335482 464150536 116978510 408685583 812112432 235783432 20177352 761531764 378022744 581317987 922308058 417204569 672142232 247046555 123701616 456517615 616620746 570831728 769454360 203489204 988119616 910776697 152167949 298688855 317230739 24167037 778597305 355221433 22352105 272747149 418906181 541680611 210616055 903408265 624419085 340030573 710386642 241042720 820831465 237062290 888158421 104641424 81171508 411353027 87909386 800121069 397243650 224885743 737235479 362861841 174988682 157432763 344140831 349048887 128264129 776052694 900858107 670616970 952095100 722195816 717333835 248398611 813118333 400214695 976571247 406073150 205989525 413834771 943760921 248899565 897229160 150252453 194688949 499201447 898092859 56460668 654478373 895370636 939032186 766371697 816375075 460132567 759131819 534269189 741818908 140325971 558426850 388019534 425584327 383681108 742948229 827530482 645583960 586682699 251417853 144189170 47311319 173644470 737295409 112162999 720518973 772350374 846795735 548171793 483605013 631327138 509873121 299077416 163016500 281432087 536932990 626155591 59675108 780862692 577536064 206533002 348344448 824592887 200803168 362940752 110853110 844263732 453535871 93016324 294226130 53872001 256829886 907850143 296323647 742207113 538924507 754662854 891579269 69294157 804052960 361929025 497431843 496377661 492105420 885832545 244155797 202169220 836064629 755230696 443943762 501536338 208383616 327295230 671955545 542526345 107336198 917045398 869352955 67130756 108507325 717785604 515905855 283621563 43484034 572022680 740908718 173085400 985720885 742884293 520397139 900545305 106350089 179457154 774291814 388999516 882977928 970259030 62134235 748126355 740737868 884898418 635341978 983464948 744508286 511698259 563577243 939237259 260086215 269251116 704317478 788387079 572075910 140748328 467771715 919069040 303554580 990263516 563092711 842825919 119057575 284295758 339814374 896518816 266578340 591351159 450927215 470920380 619465225 424585886 507718888 175697313 350356849 711038489 715228281 790139814 120609709 450863026 559783438 522441341 575208751 247302969 639616091 118610763 819698029 858074019 372411414 250936432 192079527 535997962 21493652 486176530 677267969 442357266 439710904 326087692 428973877 143814640 470316259 668937860 822259913 869089012 490825342 315929484 470567854 977704302 181898468 987678019 422545122 64453861 270140241 167212677 688371463 572044449 388042737 675033831 161470115 498493712 810979318 696450757 175441090 68842317 539049574 56443695 920900147 619491197 729068951 487856642 260846884 836224993 728625870 187319909 986039959 529020156 673565581 656982652 520363993 27729050 818042934 34126572 225325112 703223278 96823134 404898289 339439120 687766613 495487980 564570373 726391186 918824317 877721088 151363584 509584612 68237645 202066483 867137241 160774539 463645155 701731773 440426492 140872908 39909955 579753989 462911316 815108466 759411402 168862050 360491322 557947503 385293900 206514322 600092242 473192634 805321403 48595698 473423633 197427156 919125543 644447788 341369134 197614297 43027923 92889604 197460632 626550647 23797491 475930369 640562099 956791971 53664002 790757685 475065690 228594243 346817479 183671207 691966891 137860666 26903138 675087541 700473313 342815204 837286303 93552961 375099005 242784948 93038605 708608671 482750675 135016192 368009933 770191760 976276625 617228475 598509742 492887232 792733007 525473867 859512695 485680807 727165018 883144521 957296366 160405089 946721028 186971985 138131681 706799381 634231445 368140563 200052379 916999978 805331297 408615799 896178465 133792125 964042167 989979681 787747110 995056059 817876855 762451110 607701770 336092687 430314723 436443535 536577762 526121185 503803019 897111847 122122961 584883254 129219361 902352686 398479627 779288450 921849290 534040144 782294569 613237929 91971742 100887666 933828294 164720393 337079425 770139371 555497816 842090678 648503905 546261217 134652505 23848777 42913625 769200409 511305751 174056225 964679684 550186452 243470545 469813193 730578106 921644180 313501535 725848564 9362032 886623596 279298284 300080057 422715207 897886682 948129623 131294434 889546883 240747510 826760090 604213290 298241229 765364058 46702362 532838317 937374604 167707428 172668992 733032572 166583306 263213453 371307010 479708146 49508387 282057218 976225270 556859646 432062447 262657101 181227096 955213598 299533908 420842345 603538129 206314151 313081307 849733200 661181127 595830414 276106388 375627971 303624746 670908311 833989406 972163285 658166634 956891247 250706591 30437809 498145189 98234361 840462971 645298559 543600667 42684968 267432436 710010809 967313356 807871449 417977285 508042986 365058557 873955090 377946407 403699859 5407577 779928044 661597806 488141243 510702117 777213409 385408590 740376571 168389461 970964577 112034823 147141367 705009957 355110361 502066036 294223687 718054711 126973491 895014324 915574884 533107508 253266139 777219151 158495426 981308892 557841030 985012846 491980758 745024405 695764255 443540218 359918244 226371114 316954559 459209656 130555438 478892363 976376183 667860993 285651091 946235831 359844654 452838042 925865536 641493621 710009304 671371372 355360410 412716630 992761099 666828183 138018232 648233210 675347945 315936215 492410816 119320494 734850463 878696369 99141301 183124644 890659962 793039347 436877211 652303910 987511380 462159727 438029105 409420218 263518055 776422189 805427417 747317109 554157008 386648039 530965999 88038823 7567774 536659979 605821784 802330510 93269937 91580490 599600656 967907153 237714607 784824561 773946028 891762487 931943754 283968766 963128526 236250260 100213318 599402344 353629041 765073719 447701326 618100844 601202346 14339029 352604599 70404892 858709920 182531416 841658097 227048853 86933751 303211685 867257283 249344881 884606955 755098780 869514492 332486114 86358492 815949453 379189724 353501651 628538710 102694238 798274196 131993362 904014850 763723675 80412604 176269012 357986164 157111377 617473600 185556295 818581776 507762525 260667708 173961585 229189245 20101714 257893585 852863245 498846266 687034943 558644189 175447571 963300603 401476700 906468204 216632325 902854941 738881028 764050905 531383252 53929360 779111019 97761589 214510506 43067941 469220606 192346613 413121708 286894565 367754942 415335618 870339917 591837679 774183674 270647812 465820379 868110411 148092567 669311483 123255428 852025535 719528707 971821399 448224267 864332914 518438105 224572064 521484345 33797764 821497427 287669280 957409384 993344924 314892428 892308311 657863510 751083669 765417823 379244385 14296393 774921511 266381993 237957358 435891272 425993736 828206864 840321983 332108568 385915187 186637920 3012194 519453739 546389105 892459400 198070640 610446411 682851225 227020966 250466363 419489152 930758998 244851426 770937657 753583697 477573393 680242875 229743301 536482125 542458816 971289885 60366061 511779121 379970751 635438766 519719109 446782368 723073507 777553163 944106450 161385582 110697965 298111558 787813440 132694640 341493305 870621364 753024599 745056497 215367807 36869923 808317300 598575229 239938252 839175875 532447821 596174286 87431814 864366273 641480198 208026021 794977894 964760230 246535701 976385782 614169465 664533513 687092605 130928777 982154374 842011884 9783577 207497385 357483796 136637099 930496666 922876723 41172458 635858735 396812900 236327177 294474418 75443681 868425002 818568955 666681432 710139217 549577164 515545956 754759389 703435539 500085491 119524665 917840900 908628480 370636878 662283250 432196480 603532929 806268749 872634236 575651896 508056103 693452719 346052711 495731092 714952290 972657113 594698880 227969261 310504467 953168422 34332997 744538533 294137418 185798974 657549897 65976004 811394514 5440812 35038360 345720630 764911012 262066401 246137873 19324458 260474084 882196953 652850153 479731592 184242920 609090349 491346540 358662086 416963781 315244105 253038235 907094739 608692890 854343948 563763025 799499956 976704017 870495818 435949096 824569494 543095904 469572322 294525761 769271406 380720827 499935495 948363963 821658196 699629630 638211742 806606286 701172426 521988582 980054306 522436952 687218701 602998724 858938267 875211599 243771444 170137332 107472360 232947068 593681898 275564244 442380320 602895347 243188649 874481875 480585613 122645434 861238635 302838291 864494449 394191479 821110309 147941268 427075960 546073718 722936280 280440186 244543818 761048094 401573517 622642559 488570914 345737302 738431919 528385745 979873051 800786530 557836014 142729010 719349077 974096476 481960732 143418705 12184616 437140508 847785879 91753437 779626871 775093799 852808373 969725803 495494228 258290425 660723821 15552922 393730591 371196322 465492789 925738585 87761982 973473975 442888451 659136157 216732401 540717708 295301518 688896534 334031646 231031234 80666994 820317967 976286549 541578835 452687290 944523851 422823355 718993517 705263800 90052975 952486936 195407454 830627905 773770078 221205017 213919127 69209866 902954280 63767990 188667389 610572216 426942125 200788451 891935738 918317218 246616956 669685175 830389876 7457657 767805564 812075216 316717034 225305879 596483190 644384243 81731654 127861305 550680520 279259626 124877543 792891221 748281925 1850988 787612401 26302772 379312312 871007993 342667935 968375233 340659822 282928266 704464357 759501533 561994619 545026743 51436193 595718088 984238732 24730397 388881720 83364574 122390781 91592141 985950539 589227227 553158310 144615079 563292159 386652119 63983865 516630772 70557275 845607588 122343630 897675124 498224141 679594846 788688549 280186578 22430437 425344761 837544631 170083127 393300650 996726210 151174592 954281404 765062833 389547419 303849225 396157559 828853008 204655334 943853411 127344434 148716080 425253528 568290320 726828445 346700851 479218989 556177691 788639983 547615053 607505596 594223044 614348034 265355215 723051873 265485587 13395031 985569122 188714164 694948261 780371657 823824511 219401983 282024026 364582221 387014371 621494239 173499849 733311470 895803941 423260800 213872408 893379311 364253766 856683539 72915014 464990726 520681831 417285190 104208058 430778358 621241085 198784184 882296207 197476215 161689736 184792834 453611540 462381973 436073618 758197973 525587296 505011105 626485104 289360116 15958563 927303428 322902102 267637238 548472178 443388757 725844645 578394350 306190891 454545483 755696381 590640506 302415639 868572905 881582468 397552817 349624523 315768212 180270779 425404568 888517396 920187300 851038060 95139085 446840634 635768226 641155080 569691219 493940104 485788937 364602183 15219919 764951711 889127860 758257150 460453866 444732228 392275789 332140818 342930874 973427322 99597699 538316218 210367241 729162434 690710021 872471930 147521559 484006349 209339321 722493402 395911568 941626547 526763623 614421853 158246884 624538427 42129932 154570946 13398610 948331862 703978061 46957069 493870116 423199587 408230669 984323069 984350622 377400566 878573324 863801876 88337564 4150633 762374559 726438198 397199493 449251068 73212466 445578357 886618120 688486846 605696698 246315084 102712749 59336538 886671785 780965896 184316400 564060867 479515809 778152953 942134718 977522077 705766853 634363102 901528448 400900921 472478004 792782529 427268458 29564218 10139304 829766803 71436974 226413730 734970124 153737957 702878529 907783620 866976884 410607012 258192671 487644504 177389862 982568299 880190724 369231312 665978787 956548159 86503300 449442503 646801598 169487806 766692722 244446766 4738417 232402624 966814438 800420289 393283151 912044724 444677094 695616419 318323171 675972550 354192115 604611606 850933908 120444011 572463 2727781 698716152 317655836 743769432 204887164 89808075 294590087 80250187 952054021 975066210 369017444 714425811 559142261 803200537 890309542 472707711 56735425 118334263 384140275 706818276 61856134 940783141 956809475 2147899 728055483 412090824 352481050 846548023 277044724 70323476 662668303 729609735 98715976 767553870 797588513 516475862 249708948 140426932 119513028 773823316 704826288 263006932 435893475 988362902 903144108 673453894 219724129 168073151 12902838 650009340 344465778 127151565 909085373 150611907 577081167 54388741 772283250 281366936 6075891 638596378 201274203 47016137 360772140 953757707 153039900 81717621 390699800 725501386 476522887 577260614 455450885 359579639 151527457 875513131 183328152 539643523 687563381 191107975 952002498 854432820 228963973 602198065 60769509 834197305 115923945 18017597 636576945 492716180 426440608 500863647 7634968 207867903 45134669 741654543 219394210 345600120 618177002 806769952 375358371 477634863 913008180 401910812 979773866 142682720 5719782 95950248 753294176 642003675 915024869 65516379 503015356 713491982 244047161 978267994 506089129 671822460 812191281 458954038 306556226 781120412 529997666 185132043 340647394 763161102 441475829 904125990 160153585 28079455 787061703 585060290 18267663 267542291 317974029 348025875 485802990 813400070 150814586 409187905 282412002 686382678 492053669 726653598 686985815 926517333 87265582 712747265 223016446 595938644 408800499 993188580 851895726 769283999 320951285 628809127 560944388 720022098 312452096 151585046 197875702 421672408 117030910 27091739 874150876 93987394 934719236 290954699 851566157 519978785 305300827 670669204 520359974 395021932 370692848 177946153 533087148 183660565 224451002 2208789 896429892 859470372 700735679 346219687 528120908 614407725 663672099 760505836 825043394 194129027 9705476 301036824 115452175 225322509 790510098 797965377 382177393 560993885 126176206 470446857 859366572 663075510 472078640 831272402 556061368 195854478 293730370 726041806 973009557 314371324 262955104 975702969 637235339 811812960 464637758 984757937 430277724 867456229 533947517 27755906 910176986 472813099 949340966 981569141 107483914 424042308 711683421 645198321 412287904 499523258 57548120 851030731 752805892 610914726 888770371 655281442 710978838 701730727 184943426 131417369 577875389 561746517 515390117 453303879 641772907 680088455 594985552 892981538 680419412 751855495 166779853 163272103 424828533 677052636 507923066 747680809 963280295 279699988 921911672 641634757 463239687 645896297 505977250 807509195 433025242 735952912 630641513 911845530 900463401 803744088 319978619 231195799 827070152 61489075 215482649 56146690 328047675 180091998 23726878 632800221 657034313 558377930 374638590 850521457 475340426 705521132 574481308 744688487 394567700 676996622 402030275 583558914 723576212 226517438 683887033 528470816 133627659 267574546 132309347 223664907 192863382 835822587 307514339 417980676 365800914 542542968 668347766 649134216 424139676 881702579 505880324 131577287 506424970 570979805 936897949 159355756 396875995 667351765 641597991 383909736 135597055 2706660 389055008 469209362 497641400 94608010 812539894 5756159 214806727 561875833 945553856 816330426 422241030 773919338 519658719 948157973 257870843 272439296 410499052 643930204 596340246 922595821 305808051 219767427 302494806 45646947 383322906 574583134 28477032 19774002 861653375 858919739 66700127 833009904 580552093 915299740 156995337 510157406 456980371 279549287 985181696 886372391 707763435 818757900 165198869 289255169 468070660 265728107 885079650 912934023 709333981 302210115 836748448 304201379 145531669 191703538 770206932 212992728 192063524 808486714 705655687 727076541 856166258 607505420 446571993 183660249 402974719 170252903 898814148 775815158 912694864 174719139 642176093 565367934 483820775 448864408 745974796 721008220 667381444 43398513 462132884 605604962 259125288 684712449 935370502 456201795 868189031 818980874 487595808 635033742 701642542 951200 331806097 734575837 104186044 703740831 299613058 965418657 406426895 638273092 465581958 562682199 490288428 15105285 632514591 17563881 93060612 89453574 3497127 468380302 333895362 21732254 608621563 108778954 115314008 531129784 689476762 540769931 308243074 213350000 114599004 768415345 187222949 876355899 456666598 169360078 718742605 275268509 245171377 77978431 639630877 452006217 46655778 156126943 944037753 114709869 567691288 984420982 604736755 876370330 290365038 762507249 295070655 10464508 985895725 814404063 832387445 462554884 945064374 127369707 303423000 564026274 914720769 953778654 873074770 538890237 171358102 454094759 486237820 46080536 887309185 572209775 9123815 64793628 413407659 578794887 797558212 61572441 7196323 201440487 253475591 949309439 706741536 301610332 409758395 316371930 909116623 235767283 292385948 684280273 417307385 56817322 819196432 725191626 952930963 136582748 21823768 32762131 560520439 85221269 815201925 375468536 82206471 860405254 727881689 472532456 732338391 629110351 571032780 954949203 432310247 280086799 279375964 70060050 507630128 334568558 379859971 448827758 182041489 129625252 601099814 511296352 608899665 927512883 396723650 992589737 945839431 134596265 810045610 663758543 80504517 929427427 783095729 185878970 454440646 737331869 55997848 264839917 246402790 80824189 107115093 184172527 594488755 676485059 333479091 813723777 64393861 970745373 412192660 616942643 521820407 876668837 5283243 747058971 330329875 715502115 167172466 73005727 246280099 761264015 635730295 400571060 959110292 730526202 374600597 81598541 750370102 250129293 269532065 332362892 852196746 349353841 402669766 848460073 696076387 880695615 627806931 54818936 335828722 857485301 196209911 885337380 347999304 632480838 622659015 443811275 231240913 440018036 494818616 679168027 368031001 536596154 75316670 708227695 853946837 879031280 921979501 605001696 564411284 949673860 528864370 286036101 754156666 842910604 257235876 228014234 247487004 415397983 767039562 241437760 455067832 614685199 146864788 667671431 198807394 584382498 602174167 942097607 91438661 194073038 351476589 629962837 132806854 347309010 727743610 770444329 435446353 173289216 603062522 625869943 715115440 660347762 751756312 947063560 688082692 863719473 305571153 213197765 723964878 5702625 148066842 27211145 72872721 686674191 470504051 449295112 68373561 512056916 597591485 182669803 475356572 172151813 969794482 928050662 621706357 73077427 479626817 21154970 442448191 537078573 27977235 368478141 734327339 948073598 888331799 602843664 816976412 221213094 848246942 20062221 308488941 477005237 195556138 222624394 741349479 46391888 442982462 827176590 164612937 548251596 111616225 84676775 502447133 486090671 63859566 958456076 120465064 346264620 469479160 386838076 161900528 925135510 643522027 332451220 740094923 843037955 309822780 26110059 41135632 196297557 756686106 124262316 825415545 357086942 194473353 888668592 759837521 17336974 819948571 141498436 221412205 24680954 155256133 217341485 761742378 941911401 248387635 768250409 558081736 899358436 490936943 303559473 329517546 682861366 163591661 280090390 940314110 30791517 90606500 975358156 395724386 973859962 636737543 394420635 606546342 335858043 157675238 172909114 52357018 144253685 533552717 469688566 241648275 562163088 338338074 822840421 120274261 744536885 505785433 344846119 228042031 798632950 652991970 180920195 117690698 409532348 775207799 392075530 349591406 183894722 736697707 983252527 58597329 748494446 988117267 31795030 134155832 916803909 969208901 47964589 944496461 269390928 664168541 67264753 340335330 705843097 380944539 359578667 36108303 584971642 898806519 238798213 689241606 787473796 287077136 506635889 357350182 138186106 873669000 309487369 581154841 744216597 321555960 654348372 92148976 490001735 402990544 104923470 322914705 473195062 549851690 342187970 727696458 232586181 801150063 102238016 193325023 112833032 289181243 218784963 703671436 458167612 744305335 852740799 923676695 961167207 234719044 739678613 605310742 692256084 98087385 272606198 397036213 327992210 684512594 100060578 263360940 870448275 939935960 772619448 434517992 230508215 404541165 148005536 133145743 367696057 593207965 16475457 110806447 826290681 151952424 598029407 861671841 923178126 453494521 468945111 406876656 936881178 869800267 972869560 177219341 864024394 814225632 338140702 364696142 717061149 339262547 501970711 311584161 566144269 552649462 433590575 375111069 471672461 844502347 496497761 235462720 684480916 695865218 356475416 695862963 133713980 450539308 189546035 949393410 655021625 571573725 620224293 783337114 583594822 67420680 405454877 711390782 781066684 791200565 306504185 165937200 927751254 656747824 657066197 844357121 923147621 929796624 739565875 98639408 847029307 502166151 28140599 221010472 23628927 195467200 784836144 540131656 824316406 432954195 328701159 968228031 274197027 769878361 129044264 727560334 840784932 765300479 423319618 352595523 561675795 126286120 509007803 951671214 65679481 657854471 815648984 107087315 197621229 441747026 592144678 108004257 727650024 846448395 939148141 80745828 367928080 641463399 280961393 852503880 736862756 734649477 87859341 847072653 434645352 819639330 399844382 166612018 870439457 459521899 613431580 227849074 344914142 909448631 170511804 499240392 897968314 328731734 219209065 470496843 6007879 786150816 754922614 38085579 265581738 791737418 452290929 59396815 141213309 299673511 321273372 79543678 332633480 177541549 912566949 219066684 625392212 329585021 608114188 467897277 153636358 465240150 322840993 470479830 763677124 503168026 489082362 209188129 697411508 745140238 84161997 733336880 658513856 718772372 137124056 469788751 285028409 134939295 252396510 860225190 541226540 4047453 916382378 305267263 783374949 131926036 53323445 784750740 116923918 640612946 464558466 691482606 827262614 466046760 12334713 928740854 270480217 320358227 706777266 803315451 373077437 512797735 750609005 987403548 277554447 365778569 345669046 689179092 807491513 491601543 684381170 676420569 311330659 693287818 750615992 79422172 513909275 920714784 454304726 861181923 974816792 765721169 339610745 121799209 697426057 577637334 465110835 396990820 538179118 811231944 8231086 339381973 301807811 999394966 110993871 992812881 21896798 63408916 626263744 528819537 108712038 975818101 392058739 515410352 627103817 110523265 483034448 617484445 82406702 674979924 137677735 384685638 566372782 597674039 862825143 88134741 162164786 793154405 762947434 715629344 196105268 313725418 839644403 641995312 714961174 690132338 885099112 420036186 211112745 242199003 67567444 848095814 527350425 189911360 24371248 349202342 949797168 539763054 434119968 394593706 930786125 335736283 158888499 997015162 638559221 411561688 607427596 700312215 628469511 970907400 489114597 718830618 968233449 707457480 404619605 542631328 245907596 715250144 674842140 83141012 476875712 419057336 108651120 32230004 706369850 277096936 899887724 99018659 520302425 412679261 287007326 450177086 709262769 114799920 11578728 648560962 228173914 552444266 369226064 890055025 533299665 231926717 361262546 885957591 363785034 561884570 27064475 533972877 374066796 288373188 781289596 703155411 446464903 941250481 798790991 67776051 752006282 352217183 402179474 54407737 494639416 998135906 691398399 589642599 566055206 902472662 551743731 156874988 271015571 663916544 5981226 858278536 966707007 76289937 982369462 96078764 269105712 524262791 172841468 922652119 237298705 99500366 112979587 455685730 276125102 526085961 132841880 969325657 15556398 717915038 667349092 105855424 243479483 305693660 632432443 484875023 962120024 633813249 469362847 92622301 496811318 307892159 760936235 764038321 384346752 443191021 575246584 335458342 317402372 590908308 342574604 848705894 201317681 498872575 861309209 278055886 964095208 260696406 766422560 899655681 373679630 557590958 39340846 483506865 783022319 628956527 384826371 863485141 685706623 134697643 148946524 189225472 659572514 98252230 456139475 857102152 495685369 662753294 515331154 654054010 388505709 126729924 151038015 491040450 725466360 15234691 407318166 532131973 450282749 109213141 576522400 739112487 646842515 586811885 769036962 964004450 676141079 568136960 423760212 760063727 296094945 141139101 940954596 748844807 756350284 552124840 118835753 183965818 544243138 234358973 734245566 19328069 616890542 797465197 226223197 242101646 366130080 504505602 758583804 939836024 658709756 438704917 705839787 923843339 581575583 334764956 428261274 296247121 23782720 975240034 555015721 79074339 75980693 425811323 93362743 911076202 791766872 405382533 868505290 265137511 527988685 732812692 287716464 597479021 465813018 43666654 573192364 312502539 430783214 514952061 708342008 392120230 605153012 374267550 628868800 471646207 980076545 829721512 738161056 956317008 653173691 756808539 427662538 661172150 956766328 73619699 941518166 623481002 263566637 690340836 821491745 400456429 746949691 848959900 748155206 866318357 5439345 759777602 706213035 778967590 246898106 158688707 54637933 153961665 155521085 243294906 153950917 962262681 859824032 804320745 122791721 612243481 687432460 622294305 592569827 57349505 864744687 249982926 650834279 650111006 3978499 581815383 445441679 153483825 130800562 127877348 907342455 116587982 454001400 61290562 149724195 570004411 887873817 910870052 344260981 892934039 738251023 620668030 731057928 842880797 643996395 706515701 526551931 784578950 769679301 386420582 224959473 218345142 656958959 985374785 637828095 453737172 672020328 731919461 836864170 996995021 779936945 359344419 931470189 941797013 630121070 496920035 406823519 256431708 106081697 173317716 152785133 226790011 265109462 66894018 163549518 529903365 528123456 463061923 656957407 75174915 794620050 765754788 155372532 586481476 984158116 567219825 899465648 972386975 648200362 659205091 416485094 119278142 376037461 211018901 590486812 119159591 284344518 703676570 338940157 117227090 716858487 35275086 714887444 305820411 851221998 115684529 631158483 459147036 731869018 908651708 306172550 548509386 761289526 444516441 354915040 969628495 527488739 352607702 894427113 943615786 795567593 261799194 24396210 90837243 391091218 41977195 70479350 952361504 905100795 887894205 488491918 334952260 926785724 366466409 412029446 710477232 610710865 330929389 460218563 525286151 636479160 879960767 742269480 400420565 447668342 694514388 579799199 671219054 349675736 793875627 299882137 635642218 119207476 862107374 300572738 111985904 799993851 750264689 800270366 359164922 323374263 640764274 597916485 173979485 917457470 514132293 470126912 696592304 706886018 498234233 213882970 230522195 416984476 467811164 642389562 722877256 955781955 807884756 964557766 808988109 186737174 261500275 355097508 106600074 294433263 993330424 790719889 658370756 449499653 540432456 119876830 269929288 836546501 864426053 511260147 647634848 101104010 226880884 767694349 507395178 721841593 734678126 811852815 722169315 858243829 518680660 949345249 27736793 788575569 349112330 884295428 196006173 80757327 571364406 58651211 834288960 119521843 271496501 815677871 967800367 48794741 583741139 639193733 29571088 6836519 809107279 426549674 488755049 947699625 348502708 219827160 381709138 712308138 98070256 891193104 988109835 390888578 357464288 134788030 428403820 928424589 950094266 754334388 203495128 563165756 192565393 106737980 35683736 28586660 826017991 198042168 360654320 536819664 223528695 951428161 429714773 382778865 880633669 168017131 121579735 687199754 421956998 749126814 212667814 879469727 940820104 508522003 517060605 706822905 581909099 366682255 240969464 243023766 652034859 362458262 203812989 746721354 826954071 23298470 499859344 655300117 658726653 295039345 16904572 176072282 323468725 284682127 862640701 651406808 402658660 149904808 704007213 846902905 606086881 693986278 351889391 31834022 614903208 970104814 974320839 703852063 846431686 615580514 851134975 442385034 231297430 550915738 952859652 528243777 752825209 620619686 815730115 352047219 551234869 61748147 378238779 1364697 370655851 293256529 364706047 25291555 268050636 259035316 989042482 337399662 398862065 968483081 187829081 241375354 165313062 773547885 415446811 642582211 269148839 791558405 17558772 563400772 330746567 140431617 572906531 400408204 376601903 96488421 516785341 194304191 992848810 593114594 376014126 980137308 893198211 426896877 623833120 54569182 84680258 891056233 879941036 423960882 475586383 288375199 903399670 828219815 27066373 95822987 763729754 458662772 815598052 557040046 268253579 585840194 925977601 596822655 173038106 200703276 700475039 613479863 326955043 172184820 573357490 52552984 717860525 768578967 478198827 904770109 493221177 672864186 838668603 506971044 76363588 607708760 236581977 814795707 254202338 744853441 804020499 286686393 562410604 963877426 981331946 84820571 966151285 691727656 451697792 946589971 255837786 586079912 702527258 902325897 642405476 720375934 964867142 449225155 63410146 537860849 234690166 237163948 674797465 514148221 540816804 56999573 52741204 716935980 694280164 607295362 364497670 62347108 697623703 911136827 321195508 980655507 854408366 15039810 652098203 447463363 285321330 108794461 209051904 98929506 510060534 867567686 77357966 450166405 947794413 530664377 591659563 364836064 544815413 551227685 12632835 270966221 695566347 408802779 522694850 545638231 252046965 250001701 145516155 676773785 384328123 594963778 619481626 817016258 791953783 189630180 145570145 855397034 841637480 908774858 387509584 906992783 326211241 984471342 490617978 443300639 400958055 806522093 324068641 962047091 781404953 306286717 29087994 795706769 752090939 757080438 781181053 767451684 859339516 637490522 560291431 257101216 67858913 763548947 139669110 899805913 127716476 701313242 841033183 373408094 827297843 570929140 16508108 504798523 206907769 167213485 14532375 742212957 972996141 990873705 658431373 234943917 929945963 825318580 693724387 754241305 436517826 64330969 363080146 874759020 675034788 318917364 788929188 504946103 460733197 706671834 87610316 375687138 198817140 894455095 692076276 392994871 453083190 585758910 600529965 355944858 51988240 784439340 897096159 186118673 497243895 807565228 652832944 654432148 446326381 781593703 169079945 170029194 617161030 545104285 679565123 396285998 560391997 386213993 737577163 885039874 251563638 49603223 428195752 983307970 336910932 451384402 649369878 502629266 966312330 266154895 937595539 821958852 160092244 130237134 287839733 448132030 352481465 109233748 176037521 198609163 36543357 384145244 310819980 135221848 998616560 833581741 404241997 988082201 893672903 267713315 396595506 109470163 737004849 371409111 291527489 166244349 215601043 366484094 265672256 853149255 160592085 939854770 303109386 796941115 803575205 547620258 777544625 601741280 642330154 955391595 309279339 332048730 491559744 397695047 524217639 595596916 151596044 472402457 699637841 618943209 629500149 885581234 9988215 464021550 685711527 166820777 614546117 852732708 805846799 65777349 924349873 694721095 23061011 602517261 527101814 645195604 164283677 526308139 262571653 410089872 53996309 734354701 70543826 134692610 891095625 794926794 881449802 638073734 960124050 895777151 464864521 840736702 192090584 859573668 284969148 645279847 748505364 999668094 849661439 880213474 288384086 637855432 951758511 687814733 509973998 443092629 577362874 356870616 294457757 884876070 888763587 835499850 786677730 15682553 175000988 464434808 22792100 699051424 64022495 666374397 534465519 149852674 941418185 759557919 988029997 465650370 782648914 22196058 990783280 445349480 44668871 239933114 520687046 131288132 6645552 177731942 753467598 546873498 58516153 837040806 257641673 158350895 377095705 868102225 110641837 613557104 676127213 631567511 461743351 290480402 126379695 918616018 752096066 967451785 201296572 331744378 668146614 760841429 419361586 362921277 870099407 570492210 195282963 897727899 585515064 819208058 677772968 360669686 182377574 832353926 266077548 228705032 452068819 571169354 873610164 904596752 480138325 469719898 858774412 866964442 56029717 631771126 96369464 162259653 721586381 680036986 143330366 682859751 797778811 194946846 431008427 560899169 771994997 164819940 320323625 907366551 368748650 155217971 391016899 355866291 672083884 613186513 763841724 166005663 208888009 400655907 91083578 409466890 166227760 890208379 591593290 614721087 81147101 462458964 140319942 786633960 997178587 394714171 552820106 817049925 551753581 594338886 787767347 773478315 931766439 600471992 76595937 172866475 439560384 575250725 856961189 458025931 767830920 362399169 619762153 982360981 43707234 17744247 493456176 341107375 262388163 358843279 861134676 689935761 791731196 163777395 634099931 625917230 639468964 555959516 648403643 486089190 497845916 362055087 980499143 790784419 114051364 73987402 771877586 356695530 271416013 765736766 714324276 969428681 706134850 47191408 321620766 770058073 240302254 900698583 260026419 627640338 692390618 663357837 463245672 376137693 730199291 871925830 532283810 207222860 732583426 572755118 817418504 749658024 78002359 145125365 237710281 85167560 230423348 465095076 333696015 542758855 453510450 818352134 982466711 877917104 857765690 623607016 897300137 900349953 640115341 94590374 923179621 381489744 690103638 416826379 417792087 355218071 850410230 550370712 988502038 727701583 553703628 220772603 649593060 450680048 77421557 967203015 294335917 268618822 207360899 418936372 387088004 995119410 518019129 278279535 429230742 560142113 424811605 976298471 261488932 48734355 816750599 787807383 764126269 830697688 944116520 211671157 812270502 948472071 607655150 1839840 201858182 356786062 6526873 6986295 653277101 219505608 337891032 788943106 211629402 655945085 150663623 100287928 836419348 686484938 822792252 709295601 165825375 413390720 786544296 5865014 799828867 289400204 847166682 598887603 453317723 926699479 641710690 180565060 897878420 84894555 109974186 637161367 641726612 777103321 31772014 122024824 761105833 256190621 883471727 983735167 974609163 201123909 899492284 415148714 832769035 934469727 514700269 256335379 990486455 130281403 565169227 279120865 610135730 128806690 942527509 234865055 473093531 655778624 725182772 470652544 896454603 308451663 195994981 293118377 417863312 976726437 129209802 897407448 274747440 590501103 850007034 963263997 464471133 26943485 728958168 319055622 479976323 486544399 529376727 450151854 775855582 360978216 51252738 217494671 410712115 651977436 882210143 41159557 955446392 35372784 596121955 337201473 733458664 213875656 961342900 971544748 292018241 671798412 895448935 13561758 943217673 825568864 707198402 253544007 217145533 253407381 999935398 852581928 696706513 742338129 840389854 262243655 668940685 454530375 11671628 738791072 863449158 182778195 186519053 133278491 463627130 13408102 388966630 583288756 549825910 571937166 189019450 431397049 349637110 126380876 99024052 851342420 183724844 393216795 291966170 682536833 185916810 479465671 944763969 946648994 289504173 610094627 888335619 375263625 239726924 370498590 947477206 836449158 425305324 945348874 145493981 305972202 317030883 435719911 224355957 594864380 99633126 802711009 657733333 849334397 25472822 713842394 506215855 742030684 955178036 241588551 581573948 43655799 24782141 447604889 347174138 865682285 554085304 483872519 528946402 165065249 296802954 350125242 122495866 672604536 349542360 764152381 932976605 810606116 479199140 496953389 959467644 63272696 69649232 349375455 530566413 719487321 945512313 931299709 424355284 240123777 965204946 948041803 810638816 527283008 453326999 151418734 857506024 857924219 851634377 94576315 796181140 935533746 125645335 341027943 440558933 400135975 299864234 132191416 527866250 637336 721503948 775566526 746838083 336874235 238646639 739543592 858214243 534436413 86264914 41358905 345888804 299870582 761288554 30132370 690541887 767577995 62434886 801998198 55900598 108463327 425967560 9095043 212788712 80200115 271623021 178868105 146266472 381570104 944596683 687364638 40883776 2784399 566566570 64925234 602898466 787803736 833659881 783724888 432729217 773299131 918993938 913311716 762005535 122708543 768538346 309244407 369298604 83170423 687283744 168775918 74660461 782365273 782340182 724028921 812214254 15167522 62335758 568732696 243305199 357958610 536840647 814072768 600377108 991195050 956632656 551513536 543725288 31143924 453200878 869100515 809704937 352248592 686565821 793183187 219316141 675290404 102431520 293164074 940961251 563192750 840211212 649789524 20186987 88760868 973010492 280230055 741615361 9389864 613360815 414451674 708992889 584238257 73473620 617352248 638909595 165810616 933065447 556417193 536018013 302678394 722003646 632194419 781118682 150331850 612898124 575867042 80033379 33371072 580776833 525668478 83459983 678945147 882292223 352094281 944491705 238323563 603883104 924649958 299082323 169147993 343651285 61106677 237685490 609625483 568059817 463788533 765598661 13678137 59382992 157904808 188641421 937982086 562363853 531396621 268160236 795069799 679543909 826947072 751548820 650888318 833736648 180746867 501992750 883897438 226455597 60763588 673193494 128915232 9982059 20759011 747197650 255260540 11266538 291156251 16422113 400928827 131006580 425311570 199862326 464202547 166362967 968255520 419876338 786712842 791842620 767281512 359439074 836827421 880950639 491216986 318824301 982988203 575244271 233339840 491163918 776850569 369647374 408916911 61292764 622351110 775627641 166449945 617187080 882936206 417180167 258496401 755290706 104503647 733205717 57500372 647474820 919248435 618874806 716744653 38894997 723190195 755839733 586221466 131605855 372190566 513556410 476662664 269246536 38682415 954998873 253133584 486628980 671049415 164417907 305170034 437339250 221326373 20075146 762329211 174281126 574739418 959358553 439884150 455513148 587045390 859099837 16651173 184490298 350357132 793395928 717975804 640462653 558831033 277518039 973349168 326957365 380502189 332198088 593731614 244009236 186083765 681840913 566582913 372373932 809383619 579832243 78466668 721100638 678409625 259178927 155412546 554132569 503580170 824759574 173379866 217794272 190931371 469035371 557589424 31309439 301534958 553557047 57963421 758270625 215604211 396656494 810307062 871271985 663663295 705012320 70312126 967061849 399472816 443244317 53086320 159865743 831434221 699004138 114381811 648297165 253156811 292977011 386608033 885236094 437425605 621797282 25795984 600442485 887721363 660476063 561067251 384600623 783312875 112733806 15490372 469980917 594754542 189129336 973748736 197963624 830293965 570969210 404017277 435848956 361013899 729767760 446038452 54266999 426114552 639328971 746505680 846475431 354995547 156905373 192050120 894447120 5620449 437695192 434596909 859718289 66068807 845620633 987971402 621676082 640401549 469735631 430039041 903974657 600741762 192746252 212839950 810260135 493337080 746440314 937172768 258806117 640831890 748900761 101908983 849617000 52799119 828766654 760616795 556487840 814923742 908084584 685694354 156179656 135239019 39840526 464922103 795768761 378869913 863112185 87430457 801255767 416189985 591102341 684100158 802142717 373145806 245520899 653018439 393472926 221442070 882722357 737235299 309444735 355171938 932105359 19004142 55579444 7440359 755543107 358435028 440024541 915606278 826828848 861487265 583823862 14119198 545320288 712822292 338198740 317743334 278659380 142074893 577379815 396029741 808505085 164722534 516994854 826880265 474110719 498730633 248605460 379571995 391157511 471644745 747787842 580820773 769103204 346457770 234056653 850854445 675570660 382366251 248442875 461752422 774527003 699112734 111778645 591032690 469506699 291948753 13567155 903242297 13217470 250348011 10211479 988698579 295576303 623084111 193418522 695983850 284642700 678327525 163143594 335365237 282581240 736707417 818875388 69370844 44176888 904258967 54967953 36294669 454442977 28602502 63504835 993099024 406906966 259270964 229368039 348230733 533176943 595426506 721463275 420373247 240108468 430045911 519604510 618925017 937384871 300627726 575420716 909743190 646066850 34617244 580321710 972597809 658553759 805818342 570307563 976810584 491930741 12516654 348903875 610938218 589388989 260544296 779081682 389760552 847418058 494283835 209615324 432704562 974785327 865547130 848782129 354878391 726448520 186328555 663538313 212999821 79704003 605933619 21529202 792143381 90163831 700276746 746882750 544949377 724089586 668710587 883651956 428190621 525493596 67735851 945380440 123624858 74173687 569803232 695642162 253918506 876834290 214408347 492575298 479351618 446462522 502278231 601435094 314903593 313491719 559850797 417272789 68990535 141945288 834371502 103411967 676603573 173525077 802886563 295626047 950837984 228483199 739430019 655294865 510260749 995559009 519016744 104190355 836604688 612887810 831277014 875730247 753155126 458302006 321983280 893079911 785470249 57852684 511777530 45378815 455363137 310201385 160658794 309946178 943646249 145794254 668254647 488208819 325681918 91069242 373676213 353124968 320403871 30845200 540505471 87998321 773498530 889868056 737845656 902104583 938078871 623901283 453660342 895025911 604934624 560274478 304798732 851346630 891655008 182406445 135115205 392042518 862637769 555093593 452887251 851269190 172687357 791666222 279029039 388285212 758583509 603744709 832214991 75715235 917168051 939332183 913074815 847600399 594961612 103400266 161249125 82328959 971135097 622788591 858192429 553608988 185148049 808965132 456921967 834728264 470774160 277023200 792182912 280587903 539949785 761701894 415413486 654250767 60377489 576686944 91500992 483646240 784441548 736187950 246102497 478802901 631627942 78126578 735569357 160640779 196927178 125939587 20634847 176614756 995309532 637642963 767879016 904773533 753412907 85386680 318001127 144402768 521252338 424294007 403413014 140789722 56936519 957909895 640891116 402782691 67169008 361089344 569844516 251748362 902694648 308806370 630108980 338536933 250358851 61076982 790197270 824963913 702584039 135931304 727725716 501333485 295910337 599305454 39445258 518388779 111039097 419568381 345635880 398920589 572634364 964757061 205822902 96456777 655869583 56594678 493449354 922260915 595513717 19559238 605265223 269669902 448687517 671912451 725468896 971813570 946206886 288179972 646372507 141484558 466422144 181832943 281244408 421628184 940546097 702793143 862856682 748790030 209356800 294742591 781080507 931334707 95874661 762983242 639585864 786884199 962604885 342711210 920039514 558086537 239150679 214085394 955625958 50503035 512552434 716757165 57704803 634476193 90648801 550171676 903217921 980078172 156070916 811516827 927428677 822470980 832020496 249366616 677624783 948996121 745357674 727354186 58113287 516387458 542513648 527483886 820145321 952482133 940261924 501240340 629578006 465727136 712319190 373676473 886673789 212614787 631653934 362240297 751559862 417958760 431261535 975333605 122480780 722406813 940807902 163305173 819694045 879930960 639146693 278166888 780516335 627997798 30344022 890018177 916756044 531848948 44529094 35620046 218776990 349334433 8640411 206277433 621196032 443479639 104447757 888348151 320558486 264745927 146000382 485232030 894299031 115537652 900741975 795117421 155847900 809946655 634642816 240992557 713676411 206706151 146617229 611918389 844372240 338932881 246671153 896935878 771512544 63258609 970130744 733341920 348557061 356316268 981080347 311738291 58404264 633256473 875229486 253166289 720876412 1289270 631803845 710657425 384978484 270918579 982186776 939968733 513324221 532915658 746973581 704329183 775858023 55828398 47327783 328448042 59854448 238174616 69087020 76760077 688436744 271042356 561315888 83689964 487464266 14393057 386597388 464247609 399512198 600170452 975337234 304205143 503667427 59899368 684066322 903229711 272102545 25292763 73876769 604508347 186095988 820663313 76591905 338618227 649989262 5842869 920175019 953601432 109969226 78080868 653783547 20774802 525905516 471854836 925545805 599149475 961213725 317893305 264213536 916081798 519748183 302558435 722853057 838120556 169287900 67433668 126809645 78442971 732508841 652590180 896526525 432717497 486468331 194244584 559397120 971346927 567437072 255128840 599576910 533677506 763665851 441700773 886895476 58509382 625678148 514249272 971878575 626449996 442397121 153698848 236099871 215284558 974424259 672174352 322380721 561141811 407884656 856920621 163919888 162474149 869326030 69116409 273094468 83319594 637314979 428057257 945405496 367659342 411540328 777991333 982997324 78820784 853410816 857592504 132015067 571551802 543663120 609791687 353337747 457445337 37850011 377657204 508992350 374825853 806872532 15163020 434062552 258256133 806471241 933416325 63298000 402007656 967578967 847793740 987868848 897260207 410809648 508852993 218909425 611551008 31883262 471364996 389218646 677467467 153038056 714866772 984498887 617024190 579892520 624859959 828839365 378614571 859215951 922044014 560377857 153185756 273319405 836553792 855859666 272414856 925698541 58645678 354693171 770272124 580223597 123221053 453702412 150285321 818934364 975205267 6884250 927870506 888639550 100279124 840814958 522436229 552942832 927030978 739761554 262373735 203650743 817550762 285227248 779509282 899012155 430161200 507248932 483412975 277395637 717960850 341089441 852233886 791858709 94686349 106511721 55555408 749695998 294754862 611355865 899949591 603488856 453845584 903006268 362469019 951117153 962412131 311434374 686070012 181179164 125294050 161996699 970943388 845018508 607554607 73749625 34367037 657856971 648757981 680858993 542242399 125692309 895648802 457401498 660925963 652157771 712431056 197810378 727665309 97535630 942520502 893783910 39884522 639010628 13350592 250809631 655768940 329370667 501098718 997310883 44023125 43535119 748492966 701724756 513561633 295451266 472009525 619153267 260921802 406315618 24089852 41603647 323181212 451486019 66376863 925127364 617510764 391371787 433944848 973461499 220330083 444613109 492919748 484238943 398135616 384003960 115532815 738969508 75581148 220526804 190799425 591445556 380768748 569125552 352116826 233495616 896552843 973305264 746417644 91843778 722367275 712221922 384114330 117218504 90832234 776455385 379152646 297988918 938720970 621817550 952659797 767856742 407481979 980974768 495721791 174935661 452306774 582175273 697649945 170874779 169769837 786478214 421375626 802755557 812470992 550414620 228196265 104748263 62119305 791311731 311525883 312470441 375360725 885357533 572363001 871666874 790866385 892054376 37592915 999755090 355757673 53688530 118293921 155712421 187202966 309126874 861622188 28661820 295052063 946238563 648999066 18630957 334133318 538720703 239670639 583742438 679524518 128114263 864688491 293847241 337283747 413879396 595943208 641702920 840028400 879135258 492120440 592007074 395521845 706285670 78802454 266033053 881270538 154937037 265043812 120258652 881773577 979039879 308989397 774844606 203028959 883179776 643284208 282597277 268614430 233649233 963284111 423677971 585952577 757557436 405780912 164567746 662770231 726482922 983080083 730905539 504121429 470246546 674866782 108654683 111131303 297074928 853428170 75236523 165328747 744754831 613479274 683854765 433997271 682704292 222249445 851823775 679444724 729479152 792672645 499564492 368114900 716569791 130161803 506210857 734904241 536854595 238897984 496484636 683444259 784045295 548946396 469511521 740212019 565855337 679371263 489229886 748976568 390081591 791219861 261445901 935972797 303331547 630951928 265482577 988579776 950495305 340155468 906693908 963264428 755792076 718553790 51069066 333590555 573562952 418376196 489295923 825848995 143507320 419220288 599295759 673160238 579873953 863257316 138169254 661161807 705630180 868717068 171034464 173835609 876073109 394432016 478400771 886150801 549027718 849046302 389971423 898802255 596503299 688003061 671543981 590741107 155522743 999772863 782485148 435351443 384339300 25937000 580800016 546082544 147037972 277597287 421047636 420891176 567981114 479007156 515971052 523305209 839652224 262611842 657961160 737211351 526556925 13345109 826442262 684869485 118319349 799895594 863206432 367656614 255836357 319414944 954322157 790977981 565925757 741267053 269572770 471314960 772129387 643095972 626089802 854726214 260239455 552659228 939369509 182250814 173800563 938757727 872296252 705610677 244777476 229610093 449307064 211771129 70282326 815532211 928851353 243504864 743543145 113625021 954191751 34550035 232996270 988840127 198245390 146343792 741573420 916204084 264537224 547634148 499906625 571143381 866644023 853127644 506010325 791903229 936908983 892301407 126535759 912044910 341857969 353510074 253925693 801606515 83197810 351075884 408055524 578718079 916439379 519977404 527907862 536001038 542008267 799115930 682718858 807327849 941758022 665358700 469631041 859721765 336740016 147288226 820703834 672317080 694380062 722742044 603115025 803528521 501918284 171858218 940546460 578168117 399119090 469542748 310805927 743281221 698759735 730291059 909995386 656764736 870822526 216568915 821113337 885386719 742425304 465536761 47779214 742515605 323878002 828833658 723930985 970488418 515335762 320092185 504412955 4941722 5315031 608497551 302571510 832868163 825953641 96472455 616605681 198026955 849002318 439134901 441096406 695739500 758473439 419977556 757776261 295914910 72172120 833558641 755602506 764012794 118251286 530764702 42963479 298806341 208296418 674900901 326319691 83402960 786324363 487188080 564989041 229049723 608632242 850172469 400077300 993386085 479358866 162796289 281526475 968013285 780697292 173750056 267406586 998659134 862693989 446130071 25525779 143637148 807636450 414437441 229912293 55301769 35602669 766009300 12559704 320168291 76973089 188083942 443291059 883612241 521356302 519374936 745482174 313284501 495394166 25156596 157347648 964150018 577089568 55797031 536920256 400531827 43316840 542370502 722069719 827103101 128964196 989552474 281002652 323550112 583051467 509397059 674841833 846019355 185063067 189552664 733682591 826816975 571776344 836366751 200129406 975472692 434019502 241078115 993430175 544282396 957984787 829471783 635776031 218001334 856701938 749925771 864946449 42535039 362128245 706026457 743722523 963938919 389587153 242956940 189257948 304529226 85231747 725062911 535940130 74898134 752821990 688954544 179724406 122794857 962294269 482926416 611494814 952352932 529569442 114189214 948925023 631827971 741049438 197234943 965709250 706306751 93887640 533652965 88635954 460236192 401266980 459369572 470203138 733898674 538651271 722796881 393597911 869217279 187917657 288497451 943741575 517953832 716216862 396065748 698080809 257712881 713055138 298455514 796471104 733132253 421172595 517868022 547848538 656048033 896335753 658368581 188008585 243280666 252327683 941275330 445595002 929702668 89022503 455323997 506927555 972302255 919084156 468741071 103185059 490601686 767452728 565717304 21478897 967217361 178664874 873024371 779474366 481189861 766910769 61704547 623311564 474502435 597751399 639233822 645912439 855968054 656884760 569560661 334710867 436204461 518782605 830824102 363664257 391607170 214833996 19689680 523682588 847381215 954716327 587165617 287300906 860116270 336817854 337925371 921295895 901845486 309803858 732942601 679523801 771156091 284373599 180366971 592622216 597536408 261496035 588098504 133734736 577561860 490309289 979104902 946567089 837910959 585068306 739480269 18786162 443596197 840311349 451766999 298560261 637475753 619664906 577487631 160672756 819863624 779357270 149315853 391705354 828539002 967449236 759100973 695205281 823587842 393772633 850833381 257469180 63030875 719373999 966910212 955588571 749626308 976651904 475343622 140287902 461071136 596554185 938923210 181331920 495058578 204947808 435294536 137961095 545382407 402098506 296957640 461298251 823794205 343694326 128457786 471257971 34618659 697845343 774067382 908648273 822505377 870021269 17621698 637124607 681527476 658989515 370833336 345528219 35061582 172968336 665577774 169927807 434787468 651233491 251752530 755271076 449861791 313283168 73164453 369627937 179805375 272612775 410631239 54866521 313648876 347136264 961732347 230454688 404328918 108665958 14007944 530036931 259408612 545124428 389839949 157171761 313022909 604941980 622930473 541031303 554212224 81501332 438992641 927466512 627533016 348699561 696760909 848636213 928001344 645201630 651257788 979117762 674866806 193154057 345211546 607219108 424463780 433251391 949528456 837616709 461627282 791586147 406744311 785831756 457768455 214032378 775880909 136552317 730834500 377730079 260504597 273931664 356245130 849573688 898529877 649072730 709529788 888504269 273228890 928449075 389174207 45132770 118443988 516474841 236451080 252050510 630592223 130308797 354166342 498056559 198622488 492206159 403021571 765038976 144086679 957111198 641083841 511620890 481964295 623320161 718560513 559265411 971908151 963023979 872126687 666818666 270241047 481449409 197126549 19678630 963380760 277059624 185709038 265373226 152495817 776637053 727044818 807760607 768274407 144897021 982474637 514057596 680417491 291276665 687098133 748339425 1204646 42421312 172554501 390158902 412523627 669471149 798348168 306035148 375098858 890781303 494067361 925851467 233566379 602589846 931824087 740320739 208033056 175349505 97414026 65070892 524340121 217772420 677600756 165177126 245556157 669541135 657484578 188109005 897100018 661000853 416388681 868934272 124131919 144136969 572959591 188702165 741076726 477548633 245479514 166076074 582694202 183207063 69879119 51752915 252933845 859058369 204457261 312911874 402948576 903324401 125933076 302712769 437115605 753196288 747339990 782831979 720103303 260763486 820444197 201206831 434883560 18278794 308400198 818035888 239230577 911035995 478515203 684592286 944564672 143226818 624523561 761367989 263517381 930029796 723399370 312417793 437705154 593852087 418788816 118481498 87100718 766967707 818966145 996247016 914344518 32005895 344715020 128816406 502270079 219444620 469534321 585928520 859885526 253318949 364362801 304420033 573845749 270769003 658150575 299703031 351230133 900166588 69513013 937445583 743326504 402213890 578818118 271775537 823099825 841580368 117593051 540903027 706240852 396651822 125524639 132919713 262529740 240155681 733928559 44083090 636229495 797790782 572462310 156651038 695686709 745729753 594830315 648420426 646151481 974357276 80088367 17684209 293194900 676111687 455814256 29877420 274263280 325713766 183942686 993401901 839331963 619667970 658563653 151464795 32415232 730577518 977266999 854588461 58852828 909272618 176521045 660622286 118235894 94776192 807567589 364736232 843374166 434185756 153312074 983603585 394807965 48505581 771166727 181280814 202893024 520544445 422940235 552725847 134666327 557310459 811458332 198962571 317314303 819045135 93088439 313519158 397276954 638259384 876340705 923353818 289512872 360192240 413003359 632391492 683484701 992522647 637081482 165210411 464363261 588093268 480497698 488228347 452175077 225908279 670148053 773883114 714083216 562546395 911738106 398804083 549622431 370822133 939698571 353524072 98009364 502062827 502070135 723262185 803794953 720848698 529084357 975125968 256662020 568266362 935539590 381767018 84162795 529457964 565151268 550240972 607609175 969616158 553151114 362086825 196955508 856758179 101144133 244000708 872783298 454510934 614898121 542128760 77662337 667850129 955060653 657969124 678594359 820046313 891470977 423836988 364290976 839368502 987013038 953814512 81405091 381623427 671121927 747528682 563419003 544851629 126580073 423689373 783900642 348694114 179125180 572434424 753547347 223927927 819706733 895509613 889420782 374933811 532562738 743410438 215025646 408783759 430672548 757673904 442785105 477239336 631965570 182066729 120828913 159758390 230686394 308856979 977398800 275767951 836599997 72065675 238103937 508430802 14798578 365236598 60730486 353500709 906989099 860374470 801645371 735340174 619142556 982647821 98635584 79143731 376735233 886848741 975617219 482924145 640612301 922177935 233190322 522514025 259514497 677223345 164835538 345650655 390281637 727586008 523471829 588978486 711617396 781177175 325248247 195882743 80324892 674770414 841963594 260052554 23900508 230874945 269482726 812569852 889027972 400128025 385643245 872387182 525662954 955152042 953207308 820923499 723428948 33876137 620751890 268356414 838837694 869349189 958100023 345554001 119043650 439595705 448455828 124386435 379569783 504970555 647727135 249652470 343750049 493770381 857423491 167660499 774715410 8078305 743482074 344521183 394335985 671125676 567358386 690906330 516942315 306133458 403518818 114578356 907102437 641194311 586527959 935188847 25560865 548560601 434309938 905577144 312900764 545515057 428905405 458744614 464160864 953437721 489058765 507702631 831482505 171077139 745088146 465210983 497683873 139515954 968166427 779854199 652930188 400831162 981712887 672355504 444236812 748704965 107701119 451639866 272261784 691917746 979070311 180144544 545143454 928213858 944354605 886429545 172009247 457759043 596347009 99182594 619906075 617727264 534138784 13075107 919220669 749961948 826655674 630584759 806419912 968966375 834778146 343358568 150966287 514112702 991302523 786767757 925454430 511006647 69138136 399818678 798429911 901055908 167877490 922665512 275825323 563235154 749029493 14250299 184413857 395236042 111633020 549264049 582885666 759891938 635284559 358258891 708701678 779650706 811833588 968206897 97475840 466941412 340142838 873716496 932614177 274094072 70393483 567343076 627593595 297966156 545338857 28945470 636170321 278945031 178660863 779591353 422112336 220162729 612082880 928776893 669004536 485240279 66160848 38031216 613060465 314083064 156302345 899304715 965342883 706179576 485435038 522069815 459412544 593159052 844747757 721807397 340065870 57338186 596980971 29867127 224503983 535937951 64119254 559621389 434444794 554829965 620316074 14177527 850540921 963275563 721313983 320352440 648121507 463044078 562038746 707354721 5602303 456951193 287623838 874072562 650282351 954677660 103212091 240523201 629207630 497656869 689270175 940822059 311544305 468027327 549172643 233888730 812592601 704005539 760987739 660671753 254354047 88532624 145347156 633739631 912979882 71756841 950537338 180004206 607036666 712916926 250346908 515814906 684870028 99673522 412699644 685124648 260201099 149544922 683206661 826007701 707605488 91316746 63439123 842445708 812448578 686645059 179506889 783981594 543683253 122199589 401281812 458045991 656239290 438256846 391519003 915943512 184220769 588665770 163917599 937129024 623043138 421338810 767717820 251515896 2617121 896811156 726828009 96216250 376396646 678002104 56278018 862111628 41918504 912105164 494977926 989019974 803766530 958134606 502523919 517857930 908089741 792659911 516557055 87988669 445526299 414615896 757603703 723541846 743293571 701066817 85620337 242605138 241231026 735191689 878716579 462002914 661934880 960636049 90775062 42110817 85736249 760897421 188641901 748514046 864626548 148511379 706242178 310045049 828497627 604948846 710546365 607618711 198669740 463876236 351576608 599023710 591183738 255043598 710151126 763614546 340964096 902374580 131641750 28310465 209442959 770450344 824856532 733174128 602655197 119504338 739784982 913238819 533345861 587364003 420657794 872225605 322193027 955925473 349863773 640049973 644900654 35364946 786227911 302952900 644571847 14131461 132522211 110367332 588685022 290396155 362714042 564942201 740467393 942140022 890105260 87966621 831411726 21632125 110919964 756578792 1617578 594204485 523212799 846413367 387915231 293648150 246154783 248639728 716636464 885095949 387437949 466788093 152907350 753977899 640461294 78176383 426582227 706692728 479284812 912321181 75129709 231296359 167401014 357940940 291084289 36962940 448656301 89315272 727122309 130320617 977267697 735596969 307551628 645767918 520129230 637064663 979284898 541648650 25152204 637520616 494452731 338434057 631181282 951638520 701924510 728316525 497271512 265760373 610927397 289112124 102281195 954227496 509133700 434183888 181619190 944324722 348632953 385667787 646624402 125940604 336289418 745734465 965028256 916208166 364503029 94782872 675862259 415527168 650668608 728734534 699353202 653123509 870017845 378172374 572994171 65988797 83804375 522560881 695187785 372169940 306279841 485796925 226553656 363219745 748741522 13890873 212706472 165768535 626185626 410140318 892786823 213490521 179843139 852555770 927796830 206867852 43079770 108381044 754523777 79234605 737829704 490407633 460602488 758992165 233164495 511044746 443882399 321230252 269315729 849079483 651568613 101832483 852771767 423938829 580056929 386896056 213248534 179193304 157419293 413618181 432761543 607653672 137141135 884764849 411621562 934797864 919434950 756330796 633939717 442846305 376057755 921040518 458097358 698338504 190558283 334117141 929382335 847002091 880850592 94675632 207559300 785561729 62892897 102708502 390234 345087202 746967156 544189842 744394022 797592658 946625287 254569935 684300082 101080371 780776898 747759842 630368438 634710398 55816962 702373891 771622448 284176410 77269798 353656614 740524571 336784874 508796262 704335132 185603285 80997090 110298844 815363902 81072615 389220963 138726166 235375061 942198227 467936925 729473378 774722021 249938626 366025023 796914587 333944449 127011241 741930967 442593114 403045480 378982317 115890685 645242858 758478749 530575431 99389209 815859236 176624765 126240578 604124977 176170642 343232498 89897104 266000141 877973898 995635790 670875322 859153598 807502724 456419844 542237748 717009434 277777568 989378056 355592514 546173210 373013319 54484785 884974353 824511066 594971321 790365257 43193330 909632446 929062313 698144856 814628997 186940607 644326401 860764420 400337831 390911703 34328746 127006247 682938615 775542136 489130056 948544623 181173558 449382426 358073441 301648842 28297092 536476694 620491238 571159311 824857259 198332673 243761545 787696225 392265633 579219666 874269431 512266859 132888901 355465039 586260281 602117087 855101855 467618319 343525199 42358415 147957045 371203326 150505496 995685992 136295466 897955873 588110977 445444834 545021088 160309430 73333002 687509976 450867998 975835569 265285899 720577820 734664762 220279775 687229476 886875924 42008231 682786564 436362261 366919141 814573031 218873620 500266629 351355204 721058500 857944291 518778694 985809428 199337875 628313779 387230533 908733592 727787901 864257536 410366694 633154044 546256290 399148072 371505503 715647891 244195460 466902179 938505559 268733234 389504042 875003226 667066959 241890017 363883105 746271169 700247028 593127861 586934842 210123107 565401427 119284983 70886345 980619369 481185650 176910880 387567058 190359094 571991972 745413336 681051845 565632826 126931214 553803718 741878785 388144115 913269609 550347982 994718380 471160989 711685668 267662389 248681200 679333699 231250929 428444056 148936207 188364117 41902233 799961024 414959830 759289049 708988937 29845664 678938584 284863409 888582180 84079736 993149673 583531438 671579051 701172613 809926005 450157787 93312205 726926088 707923724 774545193 951964777 957080212 850662597 757759292 58669550 983996902 338065030 337399371 368366238 415657280 531981249 314654427 532259110 745897930 815865304 126624194 648742949 713513925 349962528 387847437 926403933 872500718 291029043 377854284 998098352 157116539 619480096 158151388 527655551 927189677 703973372 470117622 562285574 43263392 186883256 869742002 762466176 359430436 345451425 744920769 256154343 191487818 404813310 608316097 368130173 562622819 277688568 918050946 109115969 710686487 631140993 606252514 990243420 989975443 436535535 131325752 506750020 465277858 344729160 984354785 667079437 430066393 536431252 239963317 329536580 344014956 471346415 8498409 522653190 531542004 297761454 622903060 210348191 97853984 513604060 498946816 42826062 627815290 301770729 316283286 731187084 52224058 1721287 874266840 873267523 291293551 526955556 388147170 881512726 899840753 319289475 414400958 102845447 310621560 621165908 139883303 889354946 631062656 447960638 638931237 782213788 697751835 37425507 107042159 35861508 371127080 151025356 830962251 23611246 475364478 278415622 458773117 170174104 944021384 476523967 32843950 561045659 238316103 90417117 375482896 473323130 269974789 376488103 222708147 898072737 585380105 833653988 969712563 491641449 262326075 368330783 765621478 173081544 999002912 106212921 250740239 324246601 697047747 981407556 896134442 297640002 839564085 291651276 537851020 374283715 766633428 621021412 921012757 542301493 64647582 392524091 54820237 818675600 920109025 155852514 50157651 51034368 822821987 797231257 628532879 315704233 806192889 369118153 790958504 910727385 637286079 212069686 920186266 37054272 528203800 887795839 999716502 951270173 425113137 985859257 580459961 595896385 44897513 885081543 427465678 123272286 348439169 738268671 221436426 297657451 162355570 271403762 554201096 635748096 733991518 374214631 466980468 826456554 204020648 563305005 262783056 416054316 682734800 174239817 907437951 589475943 103639659 710518200 985312094 951347011 944342183 527408219 284791652 726070058 340751702 858908567 753464046 131466542 982912129 14873836 561254594 2209996 328783547 42291724 390536440 521816977 767353348 3261052 269507331 189870175 479958444 916492005 834835289 558596635 923361275 591057271 766879159 315080575 690237892 470377661 945105845 220149984 275785542 276282431 356984754 393194711 304473820 593713487 438992552 887298515 683986707 504042323 623131319 700474173 187662092 55072320 666874604 158603032 167772746 935194339 907893815 518270589 428140063 804194627 81236314 673122257 730254655 157105914 471722893 641734518 667441217 371159771 364990383 815205687 148492995 291306431 464801541 674847602 275725530 536724570 962495744 69042526 839034505 301475332 898525343 20800909 11755416 760450587 524666190 773041711 340824549 147238640 896191418 422771536 669157768 864032789 214940763 775657775 698453679 459297516 558329376 419984597 935860257 563409359 204100451 593663430 724689691 254834550 625002163 406616793 672690441 650015197 661636436 255095892 450322683 482394290 620783148 146195113 239723893 483539640 199805220 411547615 693694526 504279709 244829515 579184342 189301679 887567912 867150797 657833474 908182002 112321825 384997293 419584244 817945990 314738751 457171123 971734982 102600001 265918378 831741630 426832998 707216449 547450545 276601200 462493765 87719146 15707521 853940758 87256531 26000403 796691498 725824740 591035073 324467316 836133913 308899443 974802356 809401049 29991274 952238805 938140839 924783670 902539447 583061 428396557 298372893 599997022 343584668 911176919 57355086 539751745 814309165 956134376 772108376 347653365 603741399 507510053 14545965 883578084 82513484 660847021 71392735 737455447 604926413 336922652 58353575 968098344 594258597 707483409 783587582 116631014 106013385 628914657 6653803 308911329 408309642 996255620 298653679 790531699 873660432 792778731 197188675 728147492 760205074 800741970 638842540 296405449 182540823 861502965 820710102 817097812 438369353 52890380 730936589 583151112 231256351 324233968 231172327 371744393 869424994 278753378 575657776 376839222 943352990 564613953 242295225 287741297 639473170 59635195 242305273 993665742 311091759 518465565 392296560 782188860 849262888 883288589 472433515 192900446 845887367 740479282 236705873 188009481 839267617 191815631 629734494 432045935 496506050 390285718 669523669 621709958 897734669 800155287 372207256 420675434 120201004 316985265 78061609 18150506 174296816 597996396 155820560 18869596 87190740 416684744 625208298 827139676 947486056 852024304 300856028 332795944 84028190 959613778 180840992 205478677 342974321 503331733 886422196 822110903 319191719 179441737 105435732 208564751 291926111 699728278 124588060 618488799 448134756 169377981 165821253 587751987 466573018 663634588 987580264 473312307 831237159 955649673 948915745 535087598 269170909 969026909 639394789 208920223 725993419 914750889 322263099 57770554 134494539 150059288 857322154 789244385 428957151 272386283 244936488 42223788 179784112 369022500 782952867 243451285 55387771 142058512 375622954 619879734 277408698 167680150 512000661 130654842 613698709 704517292 570569142 566689344 714733631 61437494 462088502 146117772 688644978 542219295 351942061 97798966 440661436 639948537 599392637 587312406 711553643 504250452 253146020 659315741 70586057 388505786 719867099 620715728 101680627 228484318 629886850 150884034 311511412 758459506 469405613 133545449 334825544 760831904 48761363 891777457 293995120 374261634 660813137 373064923 400648962 366178806 789896105 555049175 772740517 338463367 798905388 321025448 96412429 859877337 828353386 981174736 603435124 451341552 219318990 409759331 56294110 869177622 318309730 455792445 925046184 836217861 982136289 262721400 141527581 918706976 199079571 258162154 356373052 814874473 970257466 349653007 684371954 47377355 765543353 657362629 946048915 339255593 71336415 334874471 655921159 653476786 898122795 574871630 933377685 939443740 635239783 633913124 884244583 899046987 547874353 160933445 574295066 495543159 657734119 471172815 657428226 635149509 531744733 428672029 916142553 940179622 529685786 622542267 901580112 764366729 444459315 557747767 599122857 597855201 784492965 276272524 352509138 88674793 65658146 200608170 164376483 65072801 175783633 493991980 870368327 293010305 931344964 152432407 732835791 228262589 347966981 597087732 970269634 735098851 852811092 197393943 172463812 265857892 854307770 273773571 755475508 15107594 159703123 903426780 72823568 49951438 610032126 113241818 567688758 537209378 661136382 643370582 890187629 677943432 39096872 481109354 870337156 407538013 769526811 915386434 409485774 577454454 515380689 30546000 538515581 936599718 791966395 557487879 8698298 218784838 802742535 54206668 993482761 574278212 680538088 865807259 910561744 862130462 691126737 518618139 944195403 328753967 561767038 156331116 843295855 341708418 29998655 413047336 806554213 753521784 410870728 568041011 395177641 521090905 905586417 572607257 428679955 601569526 857786987 365515054 9644403 474206822 658696956 462833986 916973456 564404489 804594488 406260730 387329235 342804227 453508774 101621089 73053903 393813234 918089028 165172999 746278210 707220099 495514567 104273949 617837645 6181782 755489539 19291904 166839195 988853764 520099928 890275025 845743380 906945073 544320175 716267891 367502796 888712537 110872647 637403887 99982868 244643498 485049196 693283577 491600601 817643578 868705001 920874085 29909837 580625766 623398126 849134838 414956830 444727361 178160979 275195740 679513256 811335646 839919095 239848210 952299748 840087652 69387425 270103716 475316450 412157280 882170757 350591235 601837046 307747534 805821031 726560525 56805119 367467598 57335628 645967377 843390889 533396921 338198834 545626369 279386173 136957021 558163578 737846715 356822041 826451632 656078639 544370088 841730808 815251641 94285019 267049579 853533243 58267131 422870968 562288338 542051084 457384250 944822427 113579195 651870094 201465123 866669169 147713063 71772167 413255750 314310994 759182902 843049744 792886964 431968831 274823207 916701337 486420072 606054224 806012424 862599447 412456577 808770849 57066728 406993488 129764653 536166481 220151212 980287901 648994119 453272405 126268903 948207582 527198266 549992976 785257611 692195267 528593274 513181014 783441928 12937635 143920813 345217200 147430688 940540081 243356855 368843149 787610809 356420857 48503300 713309995 637536151 787508425 803937022 217343609 709727645 38094145 537758301 495972594 33738498 698582636 640784098 348604217 707897116 207931454 552265330 19516755 294957586 222854429 547468703 967651002 437230238 544426167 657314427 577922660 849034874 210709831 969411795 927157791 546948776 982173312 593519662 284808428 482354917 789670933 514487142 656121212 167984749 587517799 56304746 297284398 47431594 557161283 138777222 276156506 236395875 551940089 533692545 80487879 230054983 25262640 468190836 237758229 249676282 862489035 946924826 676653486 707184709 955718511 607742053 952705994 652105651 80225292 325824985 550380502 574875950 385919140 440217100 613315556 772736887 86289013 14694582 559310572 751725246 966311070 227015516 908532368 424009282 763119092 29594582 236161309 476322739 834264913 308189319 361151670 607981677 171392966 552880502 256777772 83944636 419060772 515052507 192217385 182706086 955865 686218109 910567280 653237884 348993813 258194733 289557594 324296169 285562231 151921969 336725079 419990190 746046788 357158101 156692673 615156221 716731868 610559791 939127261 674274365 429574070 484409899 688480195 505748417 371792657 412497823 876698891 685740572 299246535 82405384 572326427 941412264 333649841 659244942 291850084 126149707 724471061 396879287 719767557 815730579 673937753 780330180 816542932 875729364 73939890 861239487 576943738 287224162 140503976 702136728 163621431 289123741 629211175 734796418 867149901 172916685 996591839 707376701 208523293 979358118 883594183 448790001 503351203 15544862 101405148 964180666 711695253 278006838 489295287 82044098 135617378 241951878 136777168 520202186 221088761 142902690 108144269 19103112 628856221 341726594 959690550 324106639 340907387 805356414 407086879 201841710 642890039 664350028 304423275 598533767 576683083 27777237 500569340 441432464 432863834 809267742 454436304 824553716 9296834 127571390 188414112 189627971 866302981 133235936 789851540 685702906 262433379 385619527 73622982 769494789 231285071 865350603 463606818 854984136 482386876 608061860 971324035 846081988 567867752 744701352 786086478 893430130 955341122 85792909 86853789 412521517 968282497 70142637 532757710 368918389 699116363 386206241 565398889 795085862 705830399 134700387 826915726 451546210 594604202 940667265 875440614 923562017 515827009 149321718 51315152 270719676 309103019 107233860 580548113 476836961 474954607 978375727 380098772 842082616 71448312 223140477 656832044 529424740 919405279 910065646 657708878 352569814 910381813 15078995 166095837 99985158 234471721 733085584 288307272 926393375 182785453 447476164 689379107 377675472 846721792 575871042 477579437 409369793 516258336 610432904 427728250 721824690 717606504 14951597 255981118 309284963 922933701 112684304 870053500 417934008 922460899 963965043 930726687 6248578 108084585 101918041 514111932 618291967 540004903 912562927 865639678 456648440 147801634 785970044 252243024 690511380 276339465 823621436 184705674 469634582 412713458 554667932 566777036 556623781 819564867 484968194 101220911 229219143 408688870 975030600 441537590 447277609 209694674 656516928 319225755 994259373 474745342 43387565 151540261 84543880 128544581 754985129 522926674 284476993 652970006 393801254 362985848 664041405 207035685 320056800 740125028 218957591 906431929 410254358 77330008 264387046 699768289 422631845 859418735 936953466 489294893 58896794 595021589 888109510 747438191 676722838 482073022 706137102 604693402 25008441 73076280 364985486 928447896 150861556 883440476 579694639 904252384 484724845 116444174 334156227 98371412 647521538 393108811 557928525 298820011 945574456 365229292 13166900 542001691 722576700 972665967 710058964 709636559 336943468 356780946 4992361 340903985 805037431 405981666 334070286 391268140 33553401 828222208 769339954 284556811 292911018 76683003 268363926 38857095 700657379 308926412 523951541 846369727 121813066 133942167 742398572 832152644 542349166 427125937 616145894 25978461 111264290 893462943 33617574 983522895 734799158 727630227 975146760 103341064 15608969 369514463 363683494 479429089 172214052 336984588 156633528 243390878 914150715 327591863 45236073 820298230 758880256 136938867 710422448 799182875 320632697 995676853 965436772 610022195 569968538 198533908 336584218 917049131 684522384 553688818 294737500 907128005 737387185 915876018 938346049 38617326 284424685 605902788 192812640 989494270 978526641 373601003 335643513 605898408 492829044 13439903 345319748 988731679 257076221 832051384 762161267 592952743 448064702 861993084 374152248 252434397 627295920 688184797 835397357 191178972 294000667 377819302 792110686 242956103 503609716 979824411 95939040 492419252 678718913 447512493 748041424 589388900 822379994 305818002 28480785 713608101 380817983 894717572 723515812 11125964 373584750 514946400 187346614 358257666 518517539 945662968 97205564 296351284 752363895 762880168 492526380 155187445 841098426 405281919 540610333 78818753 507927156 960030014 268245593 645543934 890018378 23511180 54053827 510088743 24372955 685820736 620313368 66148147 147766417 292795522 772113384 417864460 552757567 187327747 70476645 650512075 539382033 537266967 140919444 379420259 735707826 284655211 409368389 209513280 114785224 30960058 582293024 966774242 910651645 985368103 72283502 978211704 21371362 452974363 887559199 588048904 634533362 344833451 447650604 781930123 807571394 802879248 822781708 625882132 783286725 128684387 410682407 331928550 158872487 418331177 835080206 724886239 362512070 112580255 421488256 85087367 893005628 813707552 770498588 346719726 678862580 785814915 401721177 772361686 232032711 556765624 308326279 652280509 311610023 764931334 248324799 319422151 46192754 374631434 451109197 409247665 117280666 46429202 66091545 94620975 139985947 385648469 246050566 338900072 991280049 2705887 473336367 23416098 86664287 1621471 450538597 423477965 720610138 314639855 734520954 296224084 864292941 410519463 625168621 704554315 997726729 638912064 899990349 617110900 426283449 672317235 34620038 524209238 484677163 614207175 155653301 176923530 837273557 709542642 127759101 662287312 182341669 113322497 692328560 526178837 743132854 748271351 532903787 895044104 136008602 197463862 423294060 838010731 309584955 699052422 463581971 61562492 967923239 975638919 814881888 134144510 235217688 61754942 828993222 918742649 239865353 789387923 439264258 991461291 580325460 549890067 389033060 795392874 668399782 490017659 471730737 162203179 692333249 442028546 68745825 566902916 925145864 966595827 619332994 195859932 500890387 602222252 376553418 308540186 106678001 827929062 510046639 746556992 415966048 880881088 819833964 169993312 950792597 89906528 530150512 949254561 658743039 301807602 302513213 77706399 38904668 305893841 66004016 6873614 606729619 880109200 407759908 680820023 28639024 521838916 484907386 569696072 535640151 44617692 469523163 54658089 697882172 780725753 848341682 772104877 676647612 81089265 314212661 139889564 234933324 736905653 548454476 923178009 400620711 759747890 208634353 977206663 385511987 543748477 667933768 330439600 48814202 572860218 341639613 405764906 950078409 58193452 151660883 264545512 167485738 823065031 930525389 977310621 589659965 546516850 84964583 92514705 406004278 139782634 492778157 735051752 112684130 518124929 870867886 438030194 315696869 336425505 141341886 11188870 697514827 835398850 577585665 775704011 844994210 376255575 394996946 606059222 328591453 431023803 381047748 474164121 66337491 351945875 53885288 855819006 993795295 918357371 660638704 729115694 446819494 290080733 536925647 715778654 895460703 339384515 969126377 277720348 469520660 812945591 888747578 790662809 383021262 828486036 572465785 609107480 3369520 892089171 845357545 341098951 318467540 784724420 953844892 683535110 299086694 368972332 836468456 655455309 616832572 685864509 132614072 580694676 189620368 275895091 349569731 992481040 511990800 218402896 294433464 190660552 608251491 536390601 75219015 316765411 327434622 909975445 61088460 841823171 40188653 656870285 224400304 932407651 258469469 403441513 231933662 717466377 791634726 629743569 592029689 240475643 304658310 594717698 274262082 746830815 939486165 849040079 41855019 95317887 948599677 107064890 375070001 972024227 539877251 387171121 331308717 703891220 720092277 475326013 928878802 139749926 130546569 646465468 496263402 110773765 842330008 924485815 359312128 537777792 822149708 377234324 170501345 199515320 846003455 414463396 203062521 43053073 487962430 499745662 688049068 655204565 468907670 380097101 48210716 686273310 483014771 635846915 570038510 896153337 578226723 29541499 53670605 352309878 665570532 886558878 514823035 28962959 500328616 673369325 262359845 70276721 908597479 946274900 823073940 439295917 562060670 298902941 285337492 471666874 675169451 393576699 673381283 333462335 40171658 196363141 872933471 292053248 595493480 244114547 46783909 719467127 565369497 697606358 276541560 602020287 776651978 187789798 761221011 457313626 325227316 181357582 658299909 890681135 442779681 508396109 956457709 225449904 211135818 631984831 178431319 207402280 561612587 455437113 301881469 699094942 336048517 547380995 311002488 804609644 402538518 74036101 894047548 448649973 841865123 989990164 827419904 208091426 559760742 771999324 679921844 563084170 527457066 318280393 960793400 705234527 618691693 94148606 418040290 308986787 946645654 932621429 473552306 691027643 126646563 636560173 453150640 41647694 413192583 861934163 508279075 513550367 647276827 552417010 971873381 334616219 317586936 308222214 136835557 651986976 279593480 288441920 847274576 31924010 124589522 317492913 520918859 26136877 280834615 507958368 712807980 106279084 912647287 884892082 740186896 469657973 774974335 36452226 59460553 956527393 659461956 608289670 175997115 249416667 339701071 137462547 104915767 467315310 346624143 461366245 571255535 345843477 956611024 23213483 524696870 812010681 707424350 669689623 699694103 671721221 440754194 600098787 332662278 497470153 888144457 153828520 162509643 79960906 439824877 254456173 369988945 413828827 347739197 435996447 644238194 215392906 949791305 441273916 633967744 172626431 354345893 344713910 78014427 663086346 612228811 486044178 4056183 254156252 383722915 484051266 376956031 137363620 51827146 714548547 713841847 386985658 463537156 571033364 362069845 228997112 645421223 654126632 189565613 54334573 438635494 826741372 201153958 58429962 144515438 519513614 538941935 469055355 281695151 239959308 419970196 624571169 620349960 552189298 384063900 22157273 969750555 692006946 620010200 647488882 326542912 854373874 608791521 791013388 948395958 201329733 111697114 662266941 198789629 298296866 826745607 527507337 893491001 604753362 890740558 901064484 234609473 318374381 609495407 717414907 299583245 714205099 385908020 874456645 850324737 376633482 248087186 176926043 249698717 687665463 601237525 437655691 63646642 70221797 654645961 660580163 488195827 223646835 145897188 551999030 111218740 908686024 333914036 492060869 449789837 139650738 403084423 349402169 78475079 915663721 279084764 196468047 411487268 843007506 835450043 635069436 75495852 922927510 568623748 230357007 776058639 450721238 456028151 805606967 516054468 697066175 147752674 107413743 511397587 491456792 443943802 447436917 645593917 457050318 874611344 298273415 383727686 854815309 639262589 926483102 99959786 382773379 515899588 994708264 737490106 125717630 291151232 631777183 951173938 767087473 709031219 69078459 640232401 850674586 226399371 18122577 477951366 863584672 223992673 832009225 958797937 910546454 783749657 849682306 978511449 972516691 218934461 903176653 361665545 802485517 539482544 994885279 941593200 534972012 455638676 211765404 684699437 310896494 609135823 454017661 434600638 740898436 326423894 122730839 772781598 94029896 936026461 537934752 320962397 888957973 303821062 634485370 798866743 216128077 730655381 688256860 121355243 236306425 935881597 124050861 307222806 323816281 903689862 946024037 269262241 166620868 186191539 434806935 848924572 637523606 703141813 688737079 239845233 411144619 591634618 416493651 819743949 474352408 754151726 129819524 592054706 961539480 891960381 995692618 193377577 825496746 48462531 90969537 729365157 669002031 796035054 287821336 172351144 745512162 953104124 482561604 433859395 151948865 719734712 892052781 104412919 65751017 756833641 571302241 516899685 11001171 233993567 193779159 605428044 493279028 65203450 478022112 696800643 951699984 726102819 710021896 150346490 258285110 701778622 708285622 777416007 980655738 624423901 473504107 534058938 686921570 821093074 908468098 824873914 725201254 976445640 814729135 50957697 639616168 473666237 584831839 862142758 208161817 535181697 783144529 350223713 506686618 147279880 255138875 686663124 796308620 9380953 508021127 752903373 25355037 39257907 687817883 507234471 887060371 290863229 370213504 633940585 184385645 650536021 642822598 475553806 849005932 700694917 101806652 302220227 644959074 283225017 54781145 356313146 864553229 746078195 264704620 568590524 116312087 370423326 276646153 523385975 802339052 201741219 412733718 540866383 419641558 240622887 777599295 764388167 140954144 35431679 940168505 347351283 734863450 803002821 256691545 550865863 351378706 681980499 749120381 288299296 115662086 137436443 725403127 53246520 130069775 727941522 248583803 320415888 549587155 839103451 574596457 387394278 692827112 393388175 39398799 3938128 544511105 60745234 221192596 573175379 288562416 70611178 831221273 799465939 765538752 754785589 163471258 882815262 356793555 725532247 568391087 633645298 683544568 263074335 462451458 163270096 48760997 497139995 439537733 265347013 648569705 210935737 92326290 454799863 1847908 114137433 117460007 281827242 161714652 28351531 75942865 670595928 432636399 823860825 451522512 934546871 641561365 687425091 761398730 952720225 285675083 250470775 666474760 872966643 471097991 214477182 160364341 841119635 570010280 598581297 825603543 36259866 857560494 558674955 358477214 439299770 627289797 625692075 804743897 337929979 905224554 84815534 158646612 553171099 867108722 517169368 163994100 824254135 867244269 598092285 829418056 79716300 957070090 923588699 665084734 655115777 510933201 566550484 82425104 304884090 202632840 401969044 368276584 32537481 823406627 999340273 709904390 570622056 431355526 976329910 275932638 11058710 566341090 754563080 894823231 527176908 755080735 708158270 218668525 690725595 81929010 603887297 965992203 154018160 94179317 334301378 72503950 160649027 543140291 321236851 45190127 46827839 791817670 743349382 280714790 541682149 264788545 371622912 811515087 66063180 567439947 927425807 311486951 797331497 566278533 311287871 492179122 504933030 511444750 846234571 331906672 405060814 125132402 838258455 404508438 779154052 416700513 775399698 679330958 734729825 97191460 470857304 957851280 585010959 750468079 399586218 731063303 402471107 91400602 145174910 460932207 101192399 120367014 655269716 839904366 59978799 293800547 391302742 489199894 975230285 430876953 963460138 471514375 130172687 750252864 711039453 560286185 326652528 539132037 769361817 832661561 438556974 850574364 348475406 808008257 881845975 744277203 611449719 27048643 650865282 709316765 555621132 765328550 636244507 403498247 983607133 625435383 4175472 770974382 210477348 924854997 798941596 561662624 988943073 795080187 648117585 809036264 941635062 488422357 362232807 675978161 793488711 525038512 302295673 233985272 557451262 4778885 782538618 541019803 19673657 400092916 642049396 97538242 436379057 404934662 846146238 938972742 153028229 646057727 312811646 673011729 477328620 244888850 922035872 787831542 556661100 402050982 818984187 727884806 762070119 714678638 59131244 883912607 598397962 182455337 336176174 645463408 531886204 353299916 449409911 270144763 471682734 198359321 617847784 260548207 224585600 778439600 980299158 403734515 191441132 190234178 665500352 712413726 931418536 818942984 286992871 498184794 144206228 380109664 733958996 718160847 18292222 844769200 944341178 873202412 399102687 466531696 924803689 974115403 340466148 669106739 181994693 148976140 263220687 641506044 412707596 44615945 758106002 112029055 606643568 632076441 225417259 885261791 942260198 837706850 664279980 82368691 189896497 129010215 182858967 141668435 83699201 637192942 569488201 294970199 195269505 546922880 599614185 427365718 437042589 406141943 860532709 928278216 364285067 490579963 894528698 217498493 689800504 806739360 585240570 139424633 17596475 991827370 317060987 306734869 955927946 196205740 869619830 852035944 582286137 68931069 363599387 694744951 33779799 989601787 594729717 785329581 200452572 877234208 489768531 436705111 495832686 882561843 397121836 990959455 794172935 624283584 632438868 958664578 205481448 694589502 828615215 344057317 501144479 150819257 747517886 818778728 542156037 792107358 905167619 259093030 105827144 329670009 388096471 48984712 773855252 35281605 134307685 396607262 288945616 737077105 598433726 296781825 385360912 982102184 427167506 960659022 853287754 707340927 928262316 194877536 515574620 121408584 374608572 472521896 549845952 742171850 724281278 344603483 136167384 234039755 864633737 758469935 849390683 66185542 13016173 382500179 308295146 596052774 190891598 322555788 282261918 789478662 383180167 5988476 387133631 231344114 215366863 688157507 238626297 7266127 862040421 590047149 301986578 7425795 592904003 352579613 298977715 108236626 872113684 661838849 557302545 452480037 710230092 282248611 453338144 543421932 852023340 877122860 702443376 458287981 676420140 695813442 716893474 847754494 139971036 982133661 187832934 366266219 554546974 442130725 614685479 238446802 227924912 633528536 295651890 778351524 814089614 480888867 998481741 463021031 612153588 517662510 998279508 84846578 689563101 215180788 954597583 711863218 55012895 506288783 92054414 335855001 672124217 512481422 165032329 648509342 146511838 498572298 44340650 249509891 518215696 953811640 301933926 135229393 829188722 740070733 102380920 865701329 926493682 973218161 266120948 681203752 374112093 895332863 214902044 778422099 128795469 277098198 804624511 158660457 148012380 341588245 549980877 206746646 422457340 426101268 844756962 712023111 520436382 777826876 719305004 356900008 298426967 502973145 841265956 178841345 844892526 372295581 898287043 694299963 764117662 892454985 621251922 433312938 69053023 179938208 115755408 643757201 181098908 255233188 587923134 411131848 348783556 738480133 594111778 597757870 926717069 860286026 304922669 42949266 436214198 543355576 746288972 551608079 420584578 776336489 469187473 177394526 443077679 828581875 745934910 396044367 841122422 670498553 720458981 504640983 924171652 890205563 283666979 149992406 897135590 485165895 919825900 282298079 462131307 524222318 739588635 99094730 634922411 754003714 57073292 970392809 640035416 154191885 568542435 692872525 953798314 848665921 447448144 373723778 131187349 302292412 314985790 121867343 743471364 751214018 168349680 986954422 988219518 782141276 125886836 418451720 968667182 507873446 442240225 422888997 196551385 102934165 293734096 183658514 829529083 753572655 835156904 797342654 340948890 445002322 85193796 32042431 497795741 871703695 798334627 523166296 886017677 209375733 349518952 671473021 42994379 179436454 738424259 390838732 612248553 122974015 616669535 88656010 608809455 236963963 287976484 676946693 69431006 134826454 240634776 853126218 208311752 632139333 933207173 171260191 5527270 95326076 227939176 524346034 121612385 407508588 792881241 210061932 855877807 556806522 818188011 580940505 854919088 355164575 595446360 938536185 590020848 507820150 821266914 228754284 6300204 692065710 732029934 222627805 885394154 308288597 80556957 588278278 115572443 392417838 461988071 493720433 104581694 91989495 423142682 452914316 388213283 837036730 314886905 461106431 132201953 670938811 855204284 823364852 88064902 699652341 494128750 669989070 930300680 489393470 492395830 514747501 697099833 953217986 554567439 801987296 578543432 946932599 475347055 117680707 902313367 275837786 971395782 987614162 676613607 699152752 49544005 208839088 398236327 62081246 471739397 531324230 45791063 163529171 715911791 60201768 867630659 774348486 447677598 582393040 475672819 201463548 39046547 457827320 72227825 25728223 994562902 28214498 133213155 799100790 762108018 398355548 915934748 127669074 570426080 681643114 341799262 902088290 468594034 598108908 531819269 206182997 857031682 694946958 391258143 724142941 87927194 175805028 657123627 69124192 139154369 631499443 39640305 12907484 811497914 63426976 98606369 929391175 138150092 950504372 756957850 217819890 891094103 756367443 448447126 258093051 848150299 397299611 725986740 285398984 992923489 809645695 974379976 296779627 344249172 105636770 302932672 161618417 97788839 19830925 130892751 692261288 459236891 809768426 13594903 989453394 618834377 229374254 213768237 239991143 388928996 677419890 45966635 385283203 881413302 114127245 165688348 538629220 694437218 371830045 606094271 638607162 884593725 767422439 199179540 13273978 440218028 228299692 281103747 307722476 736467387 721034084 264783514 152040854 931717250 181712029 981379288 192994859 597763940 941701131 331121413 2662320 989637141 552170482 191830789 714235193 826491671 215112359 717708261 757338717 621840713 454658139 62091944 462934113 816013227 612056247 838892433 950865796 715679090 777496581 558046843 13985600 421115384 124165997 221187988 243701542 953687905 158966871 438160737 828595580 7925352 674005163 831643726 835697356 144545524 758900340 874795240 125438315 120906639 916753295 538093672 373102119 803509689 237252829 270336120 200217513 224467742 457087772 91122061 724900963 706413722 730447014 84803667 407014153 484694412 807901931 442911198 836782506 758962405 684034112 540878935 719457155 114281202 350049496 854577951 819881016 631308850 489034171 720130295 682249585 89524812 376152658 966842411 579358715 867630164 975622296 288295127 719123565 844305917 904897647 354627859 318153973 963766937 825141615 64120551 433012394 378809253 475647982 126230724 401229943 837508819 931162722 729277223 880295070 616908157 666780814 111882512 601386621 330158833 717680546 570085691 51548467 193171312 401016169 451169565 92892058 816735561 331064004 401842146 260506338 10957151 94609115 504600138 227761917 477817107 718117489 212865600 411244901 267867245 606477831 284343518 316415268 981052141 656964175 778718800 580777036 55254394 845190160 818228670 650027556 570822470 837825019 401704359 474530292 546346866 346522376 533903475 659971781 803086206 251661236 639907840 736489353 612649422 184869422 541052882 852857932 182106001 281368369 591003282 833782125 396820633 887518638 555403037 682203763 709729789 745309525 568042115 355350803 69581969 612174693 501044645 670580315 681917579 442974735 706686127 327783691 229691727 743595186 921531613 880504024 507224122 981779397 483387218 776889629 459400410 911586112 519003811 335731382 113740344 885544566 647191786 958840189 987357451 602411327 246951919 338775450 191284163 461149965 865734450 531107956 530512615 827474704 470365571 390784886 130056454 538101019 50452451 461360483 410745977 776873136 489077526 111210157 674837 925247926 631194687 762729452 259855964 343214934 900987152 453257382 743809792 127523530 577740476 83750909 901758780 184114330 189140157 764336076 317019515 670608081 532660700 652775259 474136934 12008241 224122924 214906972 442916306 91377192 862706021 502183274 647609053 466281873 635690789 781521643 138558342 650268913 994347328 853840060 147870243 602595759 847805653 837402522 865765468 397647487 986543696 11273084 132530329 188731986 873275526 526584738 859828101 875281042 418006472 456767416 343518695 344413415 660909862 399348035 16986769 539743581 871041435 496616768 961552041 211166617 444802961 284888319 638044909 300448354 739311539 81973571 56689199 504632601 974972646 732455125 745093112 178262313 469072758 484016136 168352511 108377739 326317211 874073276 759930895 284043853 314721875 496573378 907717930 653832775 560183314 663646817 832365629 792284919 474341597 429420729 454291542 962315922 80461794 768526109 763952309 297824715 620220446 181131473 746243835 312536720 583971295 27042993 190315854 939868606 529438948 783589376 206118866 465797458 536785110 295521676 687998003 604490163 200380146 256519948 287971393 568818923 37232051 302238089 489493912 734926899 360808736 336237073 430911941 198610557 369840439 672692267 82605986 3741851 670876627 921134613 130184812 404680423 83819937 563219123 254758913 454761488 176325155 469150565 677854863 8506502 179562871 597605792 440278046 440237917 917150555 582865128 489484271 736186079 187782500 952788567 459350103 284636472 849056986 498404513 585722147 74330903 311423611 576736451 467930671 473948834 226681478 691408820 46426278 196403972 409173292 150570823 176553104 285953058 97401757 278453919 764744665 518157909 202865770 96180876 56062392 728157275 762756584 30569823 450813765 17141994 530551312 399777866 294602576 784482633 827417639 701225703 636185442 3947445 825272519 33717752 857083072 18127950 213680896 722206710 767228939 552284346 785719638 713292056 309281976 460365819 415792368 146257491 929560754 849591202 377376575 52247378 860322374 477264039 29113646 497906401 951645526 374562455 360987513 631924005 664299410 232812634 897913895 297093436 80500473 857712277 150862649 564420115 180910715 467554506 523558494 5373819 223602735 260802561 486758777 797988516 449288324 648164264 9745986 295129644 994302059 453747493 690088228 14607756 150457718 148750212 543186144 869525695 254920868 476752937 817672693 754326962 837937650 959175127 46945189 268809064 726888180 362846361 802426178 982195572 719179602 722385751 856880911 117155369 598190341 813960898 706844141 851946029 247396575 119350406 898033530 237284055 755161370 568097279 727521162 129596417 981703470 202551754 21394547 120899880 937686206 795543065 289582560 89242414 431021307 665323841 567636398 693547129 924865824 512543636 881245583 278525917 515173276 896138982 660404098 995269506 167272115 415438568 971445341 512912630 659266082 975890874 328708139 365148772 911701172 405402933 11815231 106105543 803051138 532611996 78362917 438415052 270671676 168904971 153954164 651453441 820503386 133965524 148839080 110622332 476680959 800678849 15919659 13545254 76467031 540855464 75503171 945492469 62740363 417057845 397499671 632451526 744545406 722602787 541610235 371357788 580282579 686290091 716117106 558959026 137627662 157577785 226262329 604512079 673961925 232200960 652025555 708416302 756799672 958101644 188553249 908560124 366769385 784255263 257251454 18312098 910274905 102045668 58443650 318915833 883080716 47781644 903601615 173213193 823281808 674366759 786004809 433869441 722119620 994871148 945323645 486832512 563004577 491241309 635016157 978238043 277199713 310724059 783754546 213324381 693271192 741496691 311346092 207987895 141964705 966774997 523605644 928697128 189913778 542542370 641548152 948825428 440141164 165606707 194964579 531534187 207109899 764242402 682302246 360275917 102411264 657384258 552599168 597804753 363902081 522393917 580896159 500244154 957598403 241460656 607401891 899604396 326614874 145761088 298753888 482252683 981518070 176512655 42465196 648487984 583706861 242584026 516612954 986627571 746704378 815594148 664894653 111880053 821472830 644193204 759996635 522445692 517382503 117398380 678223809 46327298 42694666 902975106 888996135 151537537 90725134 756498161 1834153 506531222 203215774 800402432 317823404 608049741 474427344 507317041 568538705 382063060 735875744 895006386 855548888 50518343 794312797 354795006 662536677 948399187 141575629 381242457 607483645 191862735 604600937 416054821 772263949 629321426 439263615 881988872 740863497 162087164 57132099 303351534 530665041 419500137 727412749 331665319 295908 787433601 686053234 268327814 675073332 734452404 685492130 577427326 225389808 238715729 548020728 124306054 202181693 298946091 591367029 721851312 512640107 285355527 550210651 783598612 339501702 250331056 857264475 495243633 279179676 317958891 307385194 803047632 584067025 80720677 290310369 160168679 66134985 829675529 684957386 593764120 636398393 247635065 320786525 422274485 45045190 621605646 926296805 533643949 635473656 793278920 571062071 45818524 267184211 263345231 992063155 813866378 906628989 645156917 559717871 835123702 797480525 515669519 100110455 762642605 809117894 83869652 82129762 711748079 537158500 902683726 63353209 189270013 684545880 922313471 281093217 550759977 782749926 712901419 392411567 933457740 341745680 883181510 468418636 80980152 194920387 789327592 312173205 621821683 912123272 239247509 919420875 345141659 343797440 880933606 662618730 139949823 76346320 853821922 213550027 401212703 526035172 37053450 805843139 273181284 885485715 456773339 878278233 994918385 623541925 958181861 3023793 187924437 506407566 156314565 124066698 862658392 987643263 520152557 813439661 7825701 488338466 634098924 981725303 469198118 385710846 84126162 784236157 151990965 56194514 567184599 935519857 361031171 394383013 691626108 511392585 159783233 906250178 470271573 938616319 151464034 855350096 445621728 236344622 455327327 295860905 768842119 731411970 343746339 518830528 18660346 549723223 632685869 92311731 826602724 431404315 698876874 419655168 236570355 259784454 884775983 43230491 871245368 441993137 925556064 505065853 766832934 965845991 535219865 124673503 57508663 381905195 745385827 639881636 496641993 150369781 568489707 516646183 582129361 541524276 496145833 507388780 106022107 953492240 59169804 315760739 528715205 108787031 592877861 711627483 320782136 807995456 209309564 225148043 31369064 30214629 310749993 714501101 990214422 622037943 567824818 139861744 48765027 501036375 248411130 659019007 993621236 608409532 745415768 475352966 858844275 873744114 398301844 995499001 253050667 688485415 676114957 976747853 487809942 69811936 10574328 648018118 76681829 595215551 974444804 578901802 950231934 149701647 837462074 429504611 285382234 846105786 512046169 89260379 892999783 487170691 398569396 235836953 192064241 182729397 868840374 918877414 138732626 599020609 607002755 716269928 569702616 969182631 757175795 866003661 754964174 553561995 165139147 477875535 847145079 532385559 871055079 637292736 76196316 847472779 520628328 424602015 730844861 2472938 249285077 624877016 314319731 126386861 910464429 177999627 417114358 849235514 732818189 676592624 682749660 148501056 595429196 390916319 122196659 866041320 82453701 832343874 393031171 692402867 338354839 979132403 498637817 705562009 330490773 165934490 485420393 56639983 904347238 52575240 66951156 920993344 338927853 428202278 323450234 469019766 341802872 714359690 504609623 510886384 877828712 402576403 337735050 939615618 204746828 276233000 301082901 353410820 428833590 434143637 717935953 700337808 446749411 58502793 332492824 236613766 975644222 787517898 893219810 722049404 317335899 534602149 308457551 32268636 454490308 771290469 794587464 579025159 753215663 339141564 91951333 802552965 954447999 723959507 950196733 62029017 915437617 767008356 161050212 221650482 985777436 807143706 169752195 550527997 581576229 645318548 587003064 692262244 371225784 260174404 16715326 741590540 137609172 997610909 817549558 682364310 456518952 249182985 543775353 642761767 876204696 144028163 559810031 314801582 639265220 422471719 125822827 532011796 435094903 516123439 652088081 575235864 121112953 271914075 36743170 192705755 943583378 958121953 325025639 566976063 893161870 942359240 255099247 265905797 553564407 875911423 471455653 76925618 253673240 889370841 9985979 728489201 916500648 390655132 453876915 68399396 566827108 571441840 817210092 745044831 408589091 474320001 361615789 6925539 158797025 780908329 868843057 378504984 27315124 305369597 515286665 159814627 246129143 243443890 106160030 943871147 811479322 742195010 299078126 637479703 82469339 545599083 366466949 191317023 253397045 154107095 226911556 739852015 253097369 739937913 875720566 816631305 658139915 84480641 890222768 865574200 796112211 231724637 721041288 89559949 627947136 152392168 651824284 335176818 341977065 106504128 811467873 187828507 976211271 491648588 398210758 259925894 56180851 848201079 234124591 356885372 959301350 529270665 284125379 611914323 204843361 369220693 541506355 633444849 718087144 461602387 799101361 322843674 710799256 635126976 491247634 423133121 309971950 858856025 498688856 765366025 47461622 215090966 195660131 884998141 133795923 841824906 353192179 799949912 106184982 377026349 325733996 907677799 696084283 792166094 570629169 465034028 593325779 9103689 287780070 237191049 46668389 595879373 835392094 499081655 538850625 14844046 317366963 776525596 204630176 101457722 634688872 711633497 846319265 949879252 20825167 630796246 13174047 611123711 978703991 223006492 780609771 806492589 485598274 515273360 124570015 929127566 181382320 879776620 484300891 75623048 64474600 719280103 531304937 591637065 316956136 534935742 347427850 685773219 727169447 310469626 533278904 407317587 876185837 11839999 344322823 621319922 549404404 930727968 965670604 957183074 152196685 976176546 238750824 615408926 220713922 596989916 822648750 9387664 897055893 523723431 231832884 762921009 785252522 797914654 413829677 459947599 46794356 671314261 897621365 192879323 158926840 844396466 619684357 19411529 804427126 667614806 284877763 540603506 46808098 291973238 266861324 898750818 286836569 691551715 848321941 766621231 372484060 608007822 302427624 691521105 850800996 194218277 219079368 255664194 170277481 247407628 697723654 954648987 435757106 189867568 289863248 630702496 912963421 410552977 149940866 545690947 504005450 248956563 529077753 948087626 66619421 489803276 392736923 374294917 612884499 385841524 976208114 946005114 421992978 597455958 967147155 605583326 458731054 513935280 50330820 419460001 512472206 602050682 223029274 946405952 257019211 161669916 284957984 483141434 868163903 574342839 190160256 646387778 381328452 419518303 89342436 842281818 137190951 403141895 300249792 120981428 67546519 124429824 110849443 402262763 66582599 307041699 129277438 376511282 703226463 811984152 496530828 593225694 203663600 631094784 218578049 979936312 555672793 334934952 403126802 190836727 242583248 166024790 516992513 229771646 858128395 961334092 833266958 747169684 462919076 466902674 368959959 117085223 933130178 703808108 96496115 951477716 131038261 282452639 236379779 86631884 126438176 458935065 466376795 963265440 527631858 489304015 65789267 872601667 19827289 386471489 797285949 578047384 117107922 173393389 885169356 559857361 602581516 341896527 453914528 27009684 327613682 803435882 31959121 216675007 280860601 472549439 656113148 606299093 371855581 587304761 196154007 854879258 910670987 687705300 157457942 739727090 215048865 808436974 514031691 535085875 203523034 293322079 148036867 269936938 808429177 277756538 167024388 479764375 979684241 110954330 642815992 655065130 2670382 762888815 546951150 576303630 404828122 823708312 474418392 654882205 267826418 186669926 692070473 661012985 139581473 76242690 189012751 552998307 331324241 603748996 370334757 19445180 688389636 793621188 311590525 207342455 535688152 383214377 912546147 760459843 657243864 129417203 123047799 864353373 211818700 365159631 865583591 203519434 428336239 187034604 705781138 630991533 996385386 895493975 788870304 76487916 861444545 45658037 503909889 589946369 129997553 520782128 163008133 106584020 981742111 785796206 394589605 949952426 497624888 706029982 470383436 288124095 436804783 746066343 549878532 20042241 77836842 837811912 536595353 804538465 217315329 741204100 329320870 906312686 649150656 628571944 839980949 315494536 461220374 80465012 400461799 526389844 676932446 287369695 900696214 699306610 272349276 525269519 113889876 130098768 393668415 107049361 125766495 631871200 841560323 8891939 378001851 133708522 654519717 293387134 111807157 943291426 923046238 908662650 259898046 458721968 977946279 33477593 929156712 314842167 543692141 282338550 218042983 878777775 257196355 431857681 669775648 328390056 165729870 315103208 348862148 170780456 263848115 115253364 807772975 914781865 135479505 56136987 631950405 334154004 836333082 571873814 605689814 759822013 191063461 415291095 978151675 572820431 657657924 337286492 720229039 238662992 980606379 859480679 100853440 371393113 844689118 842723224 746381516 39898325 336048 772842293 383855249 401338967 506892443 418663633 420327116 489055116 499213558 213928319 91515378 267481881 83793896 22183543 899227544 541550526 926466688 987015826 824527201 568357296 397922891 654624623 790504687 638985138 794825398 591093672 407761434 534126553 590909684 736232101 440703437 697949463 217205808 272576947 785290868 680307542 83643197 929709860 417369525 437866355 389170494 1638661 601481229 496125084 168837788 451822855 59521599 315610064 96744200 501732548 61082242 360894271 607504691 477178331 530417966 407315996 372974551 60705323 672890626 15100146 898808609 437951992 645381316 587423118 37512604 427574650 593591453 370920016 51388178 433695941 746662288 84215190 153819763 402496479 785998172 502581153 767236869 810542322 926213632 373174677 845711577 196025187 895955516 745304091 186260954 472713910 497819796 158042628 567839906 950807744 711694454 102482095 311301543 46401034 504488609 765300229 9290596 73771532 463885691 97867830 827369007 840232763 140044184 401366917 629637903 352082482 719603571 795901401 168803019 770521969 704778942 660414726 66670263 265164047 410325458 450245366 597000440 22604459 909232153 232850224 992661990 707266397 118871024 538802584 190485200 189954510 220549549 874505391 255185789 226658092 472227118 62554630 604627478 443732446 967499742 425539350 853581803 815003288 834307457 217664948 197498198 771732097 492193989 205274737 790550619 16107787 720243595 369335503 567535387 30063966 509694615 997952607 559769540 367245724 685400340 21534788 431343222 294145119 484794802 18872172 533094267 303062989 784342549 884610773 128103293 237571841 143421786 962006566 467468422 416704120 794362457 239951450 404609011 59390784 248641680 830412526 973761965 320841287 993019873 861566399 292616653 907302207 135818237 245328540 836914966 708374325 669010357 195241607 248046335 164255536 267615103 521587603 524999057 329375197 857457412 604360162 276903324 816475439 569215513 607031033 526362606 195335595 570657199 92799034 243793463 485196977 244862190 726525244 549351861 970266261 296940211 376728144 208134086 814996426 501432425 989656877 666400947 269547038 614272265 566857853 877143172 201338857 395704058 310846006 232159694 723032259 149562054 524366013 352964450 417041549 145858331 846462308 741680654 856351407 593524187 243765014 622978887 465116245 403895225 826099588 588718532 352687788 565047858 921027818 888838694 632357795 199549436 681246389 392291930 909440597 460834512 432337171 397155360 51147162 564657928 612199463 953459623 103490069 888254804 423539516 187457923 469687027 528033913 183417424 414401898 981153665 444764892 12417716 913000065 629395850 695411399 512059505 844706585 965919003 704227498 428574796 323123782 559997052 500840913 104580773 473628884 113942181 178544179 923183526 849702735 866760314 146397455 84581409 452745662 491522551 669688985 500603150 196222003 130564443 786197005 215774494 273775546 525208333 702627261 50399989 989156077 676040309 138292289 125987879 971419778 127835333 113480025 69956376 495497446 581265473 162662328 838966919 290462760 718775116 255757966 929862849 906947383 883795071 269825846 841934241 900495642 73611986 945192311 541207839 502451737 470551409 102983578 437169385 817244293 984536415 755216233 223883346 547623881 209227685 681846320 316259399 281294428 66837861 638420107 584417461 406105573 820254073 599802702 81885716 856738417 561590523 324217321 162902542 663229698 839708029 55441681 329676324 170523439 291863194 871778739 806438980 792622058 512714138 495234054 479695431 321985201 730593835 730906727 448396729 429230482 67672946 327341411 837343246 99200430 232613680 145272990 158957371 924299150 753260625 867203064 155292362 864590013 195971120 455169234 143731172 918067644 722473201 914138674 620239283 347469788 923337028 46530841 640272095 678178392 73351744 631181881 587684204 228214878 465918475 101916946 109877934 676103700 665829967 339743491 481134777 647212438 46348268 59093254 974449626 933755515 400214284 8675202 207448658 748839942 86906935 144067068 858810780 210032558 947022839 590279555 57581920 155735833 909155705 706702242 556643310 667885544 660851643 866418811 995862771 664769575 886302542 909952183 624249328 90562525 847373005 888098403 345165827 686148097 746786264 181586329 198369965 574124434 85663057 685089391 83753150 274521031 69951176 801999009 8848855 690322724 401635487 33427529 182315110 374899416 66324448 434713686 597597891 491606681 128540881 448317845 898448876 428888652 657405976 273094956 866953312 907837887 177126375 64814809 876149529 977877077 189101631 425073285 953588203 935397396 259764077 422123388 176276538 755090511 603717556 522613499 573712342 298590803 536922471 211638910 635219683 393533717 818674952 567649976 420579399 588600957 230069943 231575421 209135750 119091516 262531081 118037432 542273860 842897787 918265393 346250829 114549069 975335605 577765717 457421307 792577335 42562230 270577821 586976517 865715958 473899901 743695900 40530943 25102827 799730238 872649975 585614932 568182946 499439701 30688661 407458028 136396530 657990982 175908483 680330765 365666303 131385895 364511199 60706264 906656228 86569401 647585046 422773492 37665523 496517358 217822723 821961507 261527516 730682002 634956617 924772919 736370063 327566007 354540718 256691619 980029606 23220471 728829722 509208440 922484279 205071023 627658976 638270481 156238531 945957583 709438046 9857114 215909846 646943223 162426822 362071958 928447437 500481628 817469760 382213263 896314175 375982653 693948692 286466001 423613478 583840956 938860914 298140136 857185767 858197834 877788839 750153229 908144986 256447752 230668949 482885151 964191476 101950845 507910804 691876372 158117058 541831740 549335466 877852120 216293591 751042216 245024637 471656760 214848342 29449532 120612176 552478304 76277033 333473998 842216312 599825385 492489669 737146694 411351982 928498991 346656255 300510978 87049666 626713536 460777739 580062368 936734592 428905439 526937917 235802169 665889613 653135972 855550786 298925631 423764247 241607211 142270462 928786531 190160258 702807271 383330538 585694253 94349446 988423333 66334818 356126951 980171015 609864982 255699910 884026810 264802479 305036471 169868339 330360882 445428890 225056273 224495442 908630609 422349227 237281704 539305441 817652506 270816957 902223974 691010141 4465991 125739121 3782063 834089566 402724025 54829428 114872675 249321065 660473524 49933425 328059266 260205418 811185994 496243954 569216706 425837348 543088983 487974432 507297782 363906493 356804754 807535935 871002823 572517006 299076147 294677788 320446521 675201254 338914689 57040920 920625266 966087764 584838508 785090244 627868417 494830417 966166669 941722296 607171864 713467480 557307641 700862394 249487340 136239562 687006659 484896548 809358254 82346804 747023369 371784983 829368691 218055211 240392968 369556666 984617953 262269517 384948058 741245894 610880335 667688116 911503328 753317221 675459568 176611682 850496607 252339260 376391290 228752321 663331019 326945745 754471757 19998428 156473074 386558089 481346979 962473244 48230374 981017662 236626593 619333100 972309952 970074278 514333388 101977581 29675548 695604627 517195286 72893185 747487407 374614568 601171020 700955230 324245874 555168871 786187144 2467250 614555785 149221945 157635356 233305644 85282925 716240109 732459328 190185487 580359153 32623984 376994231 877747864 745338863 668804249 586633533 159271461 718770197 852546027 8522374 314329814 222891714 145083674 235256519 564869932 170329904 312193216 707592325 642945137 676244044 340236190 218556513 311725599 229115848 563491429 103995969 383442473 642105640 379625330 465549488 999741887 495478673 876136512 380314321 219689238 271341045 622418608 439527287 837173654 96378045 106839018 10907415 719544972 457624115 660939621 60929027 336725615 682011402 93892478 772878260 832023356 259688233 869789216 769679072 7291947 90186329 19911721 736231321 932532623 720791277 960592914 45111419 53745004 401512836 427691744 530668745 65287243 473940895 612623340 54968458 777317632 604566837 354165060 45580128 184254240 282484931 849564323 348902206 687686586 833609491 394466565 101037526 309041131 689814125 777710649 875999342 124267498 62986229 380677883 223362499 780347367 994325503 821559991 744622 497226148 515218834 870648025 589256523 475907948 231809140 897525653 6990237 309160092 249009059 742341397 411016979 794625375 760666539 488533843 510646200 568929708 585852144 754798935 654013453 795239962 657130818 140344104 451778494 996732295 645252176 413351961 526607904 744149863 648585892 666320341 125146806 783038630 865266626 254590090 799580536 623666456 784452917 503891027 725714870 738938837 560231419 710379506 954768565 381420229 578531120 937567498 264040293 590267595 132603228 123224808 441490624 26579868 981568388 268819744 558491711 808126126 125732848 637325086 931280426 428894238 91149441 868028389 562391769 167134128 955563396 67316347 60900419 283543839 927342389 997485673 301194691 26926423 239303294 337629539 15073012 311826224 755255757 739341080 157970509 74537423 996738787 321842010 58041828 100541063 885994277 639837276 83918720 598877607 162411751 885609517 962187799 96087603 282852715 375356694 682875017 383699828 916101576 421586244 795279113 523054635 861171701 857395104 291475013 601382998 246736073 787785109 551946399 958372360 333544210 127261346 122994290 159195472 648198312 343549118 441805041 921711470 173461592 700460823 974776804 567624708 222794942 878824631 434874214 74269109 837322154 883758480 95966980 61816026 87472463 309557631 475012664 588268335 970587903 616307246 388520317 432059820 888121324 339814576 758746368 470488781 800083823 489213115 774692064 140657326 1797561 131391970 34669493 679603959 203427328 469208512 575550530 66935080 149463899 746476796 428153599 121727596 936830827 556730614 870162888 730872567 235324012 226813116 820182412 634430637 360183820 196891727 350610634 359314528 874318768 497809331 951957072 346530746 960835830 487556745 304561421 59029659 514006553 656181887 474491441 945664221 842679800 510246463 721695425 996499915 270210226 637245199 254438504 468207461 197576354 924511935 499125103 650093461 322683246 517397766 278737849 479242320 740652709 253864702 997120592 905233869 436032715 848592866 375619746 179125783 458241554 403219951 668870015 872031483 44750307 866018440 339642812 216592589 94773722 831505905 268477639 73335636 495497436 984218745 316134147 18192136 403925292 831484360 773400623 142332474 414828318 581828097 679842608 671468773 980590543 510830038 970766666 446623240 648086989 966689895 74357809 304028594 110705966 584693980 738438658 627152889 531987822 722131615 174580597 53110382 701508127 434400980 84108653 949797977 401758932 875657072 183042682 222735063 446524604 402282310 175085475 879728596 106459973 613274819 934886488 491851674 44712246 602244182 902474863 416310428 71339692 461151387 372943388 287241948 928178938 71208796 998159252 922867744 158388975 64730251 656908570 625096482 789421362 844511696 651479493 359998078 532949099 568580344 444222762 134112665 653156668 93653473 467402523 985194738 91082109 607180842 414890441 764167553 756539559 560072132 721601763 979101336 239252473 591393883 761745626 913315196 628487123 607137931 644365223 420062634 831592305 122073011 680619990 941540106 807908810 642371250 408374610 690930269 613753670 942816430 330528116 575805314 750806452 806114581 931102316 758168481 675439515 999663374 400780518 127530539 613079755 133053282 18698405 13205302 742600774 612302800 260138021 959804037 765587862 857984197 447973357 577283545 971192027 40741759 88653038 874137850 575242392 405176992 681714196 326420780 683471845 351954768 631876661 863685197 68097185 619826973 376332623 833856417 996008893 121652286 634277859 489691497 872123840 361821401 251479842 518769623 723190636 827016380 814874107 384455547 712710505 299659502 185681804 165780492 864264301 16061978 934025362 474572740 750593801 38896933 770682649 142504297 854408667 770662141 744288391 661143676 411994530 491859352 586342142 707618193 848897846 231882409 175809007 77393922 831480768 530129280 938877366 773513289 575837309 156312046 366108409 750036926 252077675 193318613 478261579 820847171 232660672 712130036 955206686 639671171 422902484 32625492 384292741 998001614 359790877 653947354 756482018 939957116 664436656 206436778 883608052 809265085 11519771 567412981 875060297 715586833 388576223 364334387 541251244 398851622 728157593 193413204 324715681 751701915 881181046 794501900 441314112 158466006 957632424 600911136 784682354 418328537 214357291 129282999 994454884 538566584 201552770 707308350 541421778 331865376 803177661 602315354 127173306 909123793 649186185 868060428 743760576 509249447 425510665 313782085 90080394 307097076 875886816 727078927 406616981 78656436 549873505 826527687 508067074 4596782 251873509 718655761 98871789 412115993 679714602 229953617 619679716 536517143 793502555 539825481 704937999 884707932 162473540 116938998 958615177 875647392 581475674 757291436 802647977 413649093 451012715 748121375 70046503 229995458 124709055 43254572 20689120 933091168 97076078 957443372 898834738 593208469 564620326 601906837 381829065 135810399 742451278 487408274 696581506 473300557 887146127 582919450 717486252 531100063 522329983 939420091 883980911 25531421 91462201 28388627 373062420 69466663 599158670 669204353 8715475 146479745 174318966 904215734 520063362 196724119 467904680 150895081 695403847 971880990 779018565 576810038 868768584 774633619 130206290 958937392 981666007 827095996 754203353 960798280 50455559 888773404 26675341 677435582 625253973 457488088 526056657 413784743 578586964 992708999 400366893 512648030 671120083 221688726 983874792 347686717 63667859 38825612 83810024 142314984 395628670 266542829 897985816 777111290 790293304 442254606 381938277 524540071 736813814 26514219 146559353 992866614 562695070 483245954 979216951 950944804 775633951 510520893 212762150 333098490 929538284 966740471 265963257 813635857 660088635 777613565 297044612 183056595 34114979 375533471 655890922 332988352 649118220 325697572 413716525 421714963 917248843 332071858 589240622 558925416 388157810 585962963 273774925 599980763 21734990 363497092 24251542 561339595 477761370 153694996 803819160 784474938 727403673 679938870 96855267 860067531 729501122 726982030 693756404 339762921 879687746 142092387 533802699 626674800 928890761 81926191 866058353 617133544 999399332 248557641 195720678 762840941 542995968 178016349 421995644 169124910 686496316 262055579 291510341 882206006 703226633 802771115 52938326 919008204 998271702 602076025 139592174 256113868 796818632 269239068 950913749 137890141 635634051 814570072 406652499 894266090 461397674 703336547 563063842 23047004 210906738 837792384 563903115 2323269 347874591 697642468 878901568 776443379 570364588 895626019 583130857 864239321 609487487 37296109 244696144 349856954 433839773 480724667 262449333 254882686 59523835 354082560 48504708 301298802 922802018 762421177 81548060 407070682 777005094 376942936 719808992 893248701 703053209 365893712 463074793 102802594 38792669 560706417 147683865 101762607 77426649 5511555 607118009 782180497 631444183 37242949 628228287 954127303 220418367 998039137 201219637 531143368 835451913 353013010 995738965 715697287 940067754 56917661 436983798 333459279 139998447 741229521 135009042 137557121 329032592 504772981 379435230 561662848 514582169 337466269 579894009 667222520 661921598 406180796 85595215 910957008 600320019 590290781 877539257 948017685 564719581 251440592 834884587 94215791 418388608 676241380 153021151 909140239 232364268 42570022 556096066 508808253 218699246 160925413 84970682 639147599 252811250 108905535 506682368 198197373 984824699 400217953 841087008 26770612 124298635 332620449 116101992 289702565 363446614 30728800 262119428 11837731 852779875 918033575 232500321 982202099 272560149 997608490 639041664 526767573 939604688 265899791 21409217 644782406 510717313 891944228 850466958 660755113 150655736 346997123 153048028 209401822 767090491 147405296 859208138 618819056 737519089 777065373 914224003 572102519 584755138 925921465 169339511 117746644 253741884 601096369 431860097 836021195 203924681 4056811 646544052 329963567 250524333 215582510 432263969 150965167 181947366 881486856 612430099 117965979 746470703 510643849 830676301 914957653 453669321 178063009 969554852 116358001 706343043 353536371 195303915 314878025 714936860 70873067 177700317 528751822 278772526 795669761 390734765 942652369 596514096 316485501 504936214 63792822 25688844 611493189 633548040 97564189 33349666 92952496 174234407 994757182 555992746 473380784 233319982 739582378 546839576 486957622 135649666 5766054 298159094 867396518 623891547 357732728 56779745 514148769 150505078 900796224 354074880 87615064 100973661 953288176 929974514 217910283 237053470 954650745 94410029 622286531 193235691 725180939 323633695 303153604 682232445 482439035 185467937 565419402 311631339 233541913 100455096 886096896 266313799 921491106 409045476 673024546 264648612 858187801 512543039 717925514 455757426 827145630 163678175 79142820 747748513 226930713 86254111 688607778 961784985 141971232 132475577 786404754 794886960 222655029 508628977 470253049 417861733 623872807 215937508 578393239 493645200 676346330 35062302 18199000 933102471 437984353 631590468 324249619 692708617 317675199 435090257 195293061 35077728 150319607 686723477 990132860 150920866 397103930 129486191 995429250 815382243 943370608 701908012 780653282 953206646 43893871 676355907 338845791 604279233 941862323 589609351 77307560 985805335 878022427 838660629 694216170 247614920 680194165 793626265 410051637 278662016 405010514 181229306 564442556 728069816 133311389 204740169 157475879 463901961 147786844 108721955 789295543 964306832 524453088 882260525 759739566 368880556 263233013 702091013 38498940 121683468 982675776 40387740 623858425 15613525 850878637 870445770 179170727 591868375 25764925 826046263 335065860 900587712 909173709 153634043 982993914 558693117 917737847 463205199 729235009 422523501 277002112 170435898 420875827 547341089 788306230 479082996 788614028 199244313 905916168 467971206 501501526 653252454 344692022 964405338 867897932 784815075 853245514 63114651 449310578 499747810 563694910 899889455 489269048 807712853 88791189 760766684 843102855 26206138 513900672 284253527 456698703 600535123 999748737 337076577 670166102 401576786 259876201 230069332 26808234 538181902 16771888 401982658 763518112 646415025 985651956 647488668 785850825 350248613 116920239 311186138 851776112 643599831 98409044 9826183 644653292 867828289 507203640 450304647 440180050 350736526 264919986 502801385 762170723 810701934 535622831 486965517 808650888 623001067 755481778 101080237 635053002 943647216 209141261 440841203 83968278 427802713 251831298 414657493 562256464 475512519 246554915 448368382 467426276 84326621 103018700 269674710 533309486 872714989 972765718 101570728 295820362 834246799 527395183 24643135 443054175 24060765 556740497 947922227 299476263 773701918 482827495 252194164 776322240 667170482 719188520 918055573 103565630 634060340 612880720 985536181 162101259 688116777 586682926 20638102 383945229 493480605 981757203 238705898 709793746 695268761 697072744 660454305 19329916 77025389 411817610 217893333 832396901 792457454 761682608 361327027 126258907 842345645 192532485 162583207 590993100 427620465 46519862 949922575 948111992 947895064 447197660 285029870 892667520 918811627 234981034 981644846 121762564 134462168 77248236 777579718 483527851 522047627 416461199 578780119 808657764 50717935 321677263 916297422 326430404 530473925 862247020 30001003 453228605 971261872 632054242 987431605 502194997 342673336 766138839 726434046 503322988 301415653 316268649 803837982 81313670 171854713 593703069 182318356 207966737 996652152 622887359 517551570 589015087 759456093 929776815 693531854 362727686 780252770 649646553 770702914 258951249 132371265 742715434 888889183 822752684 834839883 350898289 647671745 739378638 466827574 842874039 415248317 794749024 154860729 571239264 189027674 808043529 761988392 459599659 585992700 45080819 990984465 744927979 528996766 193867250 594576793 930753072 776479404 208545445 462084574 699318840 145900804 570628099 860846782 451642644 878690247 104900030 762947601 201173224 18502913 778854407 69070867 716431769 438774793 928005733 349962297 414128762 347937143 283433210 428110274 869694118 657193101 40894322 898042992 525124535 285193906 279291367 270562542 668818018 161898724 506303108 656866911 595329423 36988240 602387872 994866455 603243771 280614207 567597465 433881972 634046050 464636210 467208014 152725872 132851745 427128148 744768724 315877097 345857460 819375837 728613314 416162764 844878957 458021120 689392082 976345669 155468383 718689197 933137865 766387728 194874532 359234193 557254319 205342822 718715948 697077681 93827719 933114392 823056586 11761677 245505665 591471660 556185210 124321006 75291794 847487320 952685963 747617738 23217836 661987827 201416635 918428605 63555825 47386486 462435391 534788071 100870349 54336391 605888794 646175559 838428545 354789017 325740873 386243222 893318035 544911438 395269140 244299161 351789396 561652940 590090642 459738735 830935210 949210454 458108289 440996946 441269449 166603906 678141236 277897421 75868199 535831931 624205654 354866661 771165960 861030394 535005147 48221714 635436692 885038262 897232125 606658276 144248778 597720950 764304545 573081475 185965615 317435195 360954507 510834301 513189684 394835601 313640984 904714868 761972377 682204235 116265616 781062728 806184764 179703733 40202578 757077699 520831042 911187786 129755740 497225335 521835388 666823693 607155337 836701935 246652840 598269899 914696493 4076839 115581604 955787420 968388266 444461921 86864407 962771346 891751313 552675234 350290662 106350000 967309837 91559148 154603339 593744179 493878665 79630123 948615152 526606229 902106425 540054336 298014397 56278267 951194818 893821588 252383715 696215933 903633393 24866375 854819317 106259920 366951441 441179020 387771763 525674717 153892605 122465881 115658732 67797818 758073025 482077379 125814414 939309999 766945163 97872635 109584170 116768690 116024706 245132460 702343873 495994636 326162327 66754838 463352973 480296443 849488904 998740361 759863132 622519645 363882929 80561644 793538836 698289123 278248621 506374996 339255786 698111137 870208409 915980208 648885898 768921997 142049072 181240735 295725153 914385641 201680535 603980380 476038014 383897847 132912669 543806514 608531646 134782802 436810474 500219382 222825785 308683306 83051622 445819346 962505233 478015987 342441682 86559544 358631853 698323860 289581233 841985320 424945617 415943006 882252495 415285880 297779833 791399192 39423958 597457466 808598096 949552360 191048801 946007232 176771589 834761455 836040233 901038568 104133667 127756585 723682806 66645199 985403656 798819961 35751416 934467507 979633289 537516733 124468852 430971790 276252755 705950629 9906646 597123315 975054960 225935714 616680370 331689882 374018077 406900163 502876448 791705263 297002708 367722658 552761882 196732023 844509071 899857564 293176282 767146632 363529449 980806650 636367654 375905181 351470524 268751466 648980269 807287702 993019288 280309931 870814475 15058926 6698644 602957589 454993818 937855017 376191870 226214427 777266628 149675982 131884749 261527928 391930201 215319926 184603348 875630523 272337821 597000809 442620803 611267834 216753072 637565734 577424225 851296964 537949496 529556681 30488489 114780936 547690256 327909220 145871651 794798210 980373761 507109547 383837878 696568656 11310885 822891761 361867174 915197270 473402072 618778025 417655188 437183263 161481573 973263847 746470544 689148760 601675437 271597144 991313400 3521999 777851783 691574637 94748274 641423105 338641559 361992047 226032461 779942534 490592498 955215052 311974243 631592329 518340934 913131726 186614028 860999310 693943318 633824826 824144411 664846124 64822921 371594510 44416697 648901316 851933924 926678230 397020440 751087236 885535225 728263850 596765127 190443621 27058814 889071690 822398163 463688057 399204058 375833534 72292972 211180282 545481997 175526544 402473611 729416406 639328396 259623692 913808715 208203977 529326965 680260236 38544218 337681986 14875131 708001938 923472603 702189934 289032052 427164762 376385212 28686468 863246201 667719887 858622677 586426026 190044289 865550875 635759183 981981729 560728628 176121268 569752455 190824618 665842831 415100240 675084525 675603258 335869794 922624113 206726971 231833767 507177500 763412549 448212343 689240482 499127032 597448057 489613158 338849102 745839375 359941721 92090284 798584748 546386786 903792356 294151910 863411356 914593177 628165064 765616516 327832002 474325181 328188889 302122109 169089950 890593753 315368024 6714825 68393399 798688211 22823586 344678429 666777438 11487030 576210318 4800941 570179203 616453491 521448455 19649194 165918354 387096234 163758534 536566063 234241660 665701709 302216607 557420951 11043924 482747691 532949909 909331023 553325972 749756232 255478368 296258908 224827161 677121828 37965889 722784940 720056547 706828843 636564114 735850647 346711424 618583422 853454381 289072990 976165964 152919821 315663867 629632732 228583922 726008714 297800564 368284483 401118137 959983915 459234698 644529380 11629110 621988873 225697573 635445815 948066016 16270224 222038205 990926377 281337008 939279617 100210004 213843541 707645158 14668642 881299603 600204422 172487161 409929465 886092132 201119850 199822236 166758832 840087973 296199206 535984262 932551130 919404801 303736207 364739100 976360350 679265146 91928538 703375430 704301729 751037835 134332308 449414368 761889357 438784067 689553938 863668546 952601447 472058191 276823437 690229712 715821057 425429212 513905944 988079558 229247066 988409863 579532712 104110502 764004950 123634435 410543159 451992111 297911514 420715334 453840737 792280192 304894936 268362756 190295682 306922967 612165944 759715922 243745837 687256360 202090830 399048816 95325278 38165692 808535328 696859140 127390537 44950241 860538997 786563012 940977307 345871763 226508211 725694254 230857718 757646663 809671243 251963315 593826251 900186141 166077702 227989540 135390129 804245018 855186249 551451350 399678605 950298182 936483648 289567709 63485385 872352114 934322471 6960488 464869622 191220297 47526323 165805822 692178013 998884136 316338385 421612660 539798828 458756344 714127249 471795297 398919216 180581574 64268173 885824344 602426663 276405384 386098291 307222003 283620298 461296993 438863468 753463866 611895500 939988034 109758046 659321292 305550155 787089402 859376257 300496347 529921483 574219468 747173676 660766957 651776775 239902302 821460399 608904237 200573639 575842811 910009902 87926434 554040022 214032162 528607727 325812355 175145906 757193387 192193383 478795539 181705312 810878381 663639455 699806830 691007376 307494571 882430894 871679624 762559578 510081328 896734256 789350929 863569340 997788530 430712022 969667657 978834922 472654198 630512756 823403705 561895240 470538369 662693319 844114962 482802236 310340993 245682516 685746307 948999056 933243639 205124157 677146836 854732218 725004691 522615726 899983706 785034042 924438526 876793123 583797868 195159789 572458406 318060331 379625234 267889219 505313199 808108022 804520099 340700230 652989495 494705638 93787947 697249056 477007340 643969087 966520370 185364697 640102642 50981599 421279294 319303142 284301601 185684270 225172412 83053535 29302972 927150815 642300030 608313338 505053564 511053786 502626800 661856305 471057103 489415990 251049716 7567705 567603800 622361550 141364204 452663735 187914422 888402028 376652331 473685474 366602280 924427491 434841647 720950520 551943818 219936434 84737093 110282080 737523489 813178678 437862741 727207908 405376812 642559558 644074614 213010571 530365759 93117193 922303242 264562772 388166251 14011959 709128299 458643442 337167867 724793432 902255950 18382893 764751675 962704403 618299682 815664857 861960831 607456385 492598017 185922406 285682401 287445887 718597929 745584018 938219437 198960407 12717840 400769758 783367382 831780948 524983343 750651552 74753500 616146024 352885344 525503254 198379235 571929856 264375121 360998806 331018952 527293316 322360306 268213602 474682174 696127747 167883022 547800225 655662329 284563296 379480281 898207193 205529422 632481902 273451725 837893778 928123616 706354870 760125206 280539444 479871047 366181068 290350709 689053845 543229096 946163434 251781887 276022799 519763528 750526881 2070686 947829086 101512725 986611291 892520000 975955057 614115914 803772556 208259949 645493791 757992036 211640053 835907962 276432239 783650154 776160033 11015917 909044411 414212916 817084482 488590668 770986052 139575274 122647319 258851082 545331890 778972241 474153973 603954859 517655945 256324290 689263516 541053001 889000405 514890163 618394737 901082499 558039329 681421089 5896451 687526088 54998938 505641462 873038442 943405475 49325419 651929267 469990354 65732012 666970914 830244707 642865017 728737226 247938382 718974471 725281004 221942028 967917810 458884134 277204594 699465460 858284850 305702063 686663306 147084602 705174484 804700319 996603952 603297460 412397991 698940294 575652210 459891254 531704529 849029925 178586131 405333484 21524773 646433896 293192310 460783540 816377454 437139109 89806049 416781602 251565684 158350773 630327668 11597736 583710576 366530519 769192517 894725809 427043183 201198561 604016631 913975858 3628364 354804301 63277609 706241022 354575765 668264176 412993727 838868555 155544865 638560743 93804941 124161640 853697851 491022672 649167942 473788307 89288452 207005613 599877816 416981158 581853487 493652604 18524168 532815956 643456557 605577120 39585752 699581200 628101331 441620382 754357250 920479903 837280484 228617269 932899602 175284692 346920738 457144327 458987068 830760289 649519545 946582118 382560689 981337520 939229309 682533930 479680982 754421947 730159126 985703117 515867377 519979514 938329094 881612170 429500257 349355439 237201362 537172692 911729680 262442995 14284191 323374437 247554236 765396430 138958630 212430830 86159693 312668573 360608684 469746594 158419378 241962030 436201210 200278948 455326148 851383891 74158569 998427416 439338278 237095320 101327001 780332130 586574680 125679901 655146441 132533999 290176084 664682153 871179359 619369498 784547920 536784249 237594763 90046426 297430137 79450879 595510188 963095629 829066708 828825965 996133430 844202105 617658131 871338701 800548319 102735914 824939702 46501668 118858055 546384810 855815979 160657506 403028290 937137458 988354705 457496118 158532180 613661332 402475188 41798642 177945485 398848594 47296371 698540193 242825843 34638883 144037733 856036129 597245224 333690075 475466558 120898583 619794255 368511432 617957399 171786096 704045630 122424338 995455214 591952805 732951876 200337717 166183911 209804132 136582230 813411787 382808300 395234389 530168903 941735331 412493014 962493969 824076074 509241534 249751056 530006765 723470804 537767825 210280658 509205842 387380324 290960299 305576427 507147893 400096451 43275606 581534380 202361142 197698865 757675231 771947987 154185962 392960276 622723799 309618987 839434807 149586404 172357158 931255313 701844812 370148169 189837485 989730771 42669280 811441242 800053524 948990578 441382653 771606068 600656650 26439271 227731568 620420195 201763185 877109744 73761304 941315634 146079264 143044718 810538234 3648824 817193932 972410664 943129253 176363175 470363774 334039367 954714217 489061004 258112877 770731987 963942032 68658835 67688842 946978410 703426251 814724786 423504660 509204075 877304265 757539251 157294109 427353485 467417628 339596500 569823244 771551352 339276530 884555696 903086981 241875015 18303583 312220803 964978666 406580756 545836570 936960846 827071213 104085383 641188244 852588127 665130612 750234118 876262686 347273768 827362566 715847194 948404438 909000346 603844965 781561731 182979215 680124438 825063902 958641963 919247742 824483116 690162527 974660297 823169511 25855149 721912113 36711733 735871094 278938782 17474093 302232751 14580952 703501103 394405855 514059572 263336486 988618821 220698267 786106384 447828255 42812106 413533335 215832497 501329329 384376573 412538838 288364465 860931117 491349621 987331071 534162092 59674004 105089941 178409501 568152012 580440764 341976961 637910113 612217419 312594055 545375449 260498634 810440625 537006475 900935865 846263795 30117348 390262722 357738668 968051653 739994262 764950400 493762245 994105677 619140574 620099283 679816258 617575979 59796263 131673010 518814104 934657979 379672909 405446678 711359347 610215307 744613311 34905686 324457058 448724857 919941607 194972034 372237557 280439848 191631324 253275572 11359746 553433012 34427769 657180116 336636331 439129021 472736565 222453437 327841967 252677693 61333525 755808633 406717852 485601649 985110940 256253909 697671481 507694571 294047514 379585093 249263482 196716092 139956608 103732271 724860916 894778999 612980019 212705461 450051489 570455899 252275183 171725190 844623941 261043160 63769578 2303790 878877580 899122711 986784559 243202572 595784860 869826060 758741381 532273700 573283842 197939002 163310594 726157220 303146842 407328295 348420120 709341117 330793553 995144769 686012768 677778419 263698083 176441145 840303573 951236453 702906066 307354301 247918810 91353490 160927833 557840169 547088821 406339525 76916123 329839909 668069316 411097659 649439221 440503886 711151885 75932676 447949717 69018675 679772209 225027209 275048730 727409859 649069254 698556879 643004817 209869025 543808254 176855941 881248122 595163837 613898609 512877138 681532020 518170899 249629293 108852069 483445813 423342935 470305549 302577853 543846390 472144467 103971777 232798972 208812715 208658232 955424038 640680007 725307943 537485713 245041697 395144764 514427343 497248533 991958665 977111069 21728754 402235820 645035162 220765938 406860487 550118239 124183534 342356038 117642946 35554004 461198471 293555734 496641361 316848220 981676078 369611279 73363686 730562900 909187822 701244244 98183951 964348359 800726479 405607872 663249875 857713390 439670529 956951836 768735155 421612497 776136711 373713356 925594832 346991191 30900856 849188356 49644885 523195496 697689715 245735610 875109383 34876438 660098537 169705137 343136384 474948738 63163377 582477272 178076834 380154890 507976795 748247639 468074607 347632464 36311397 267231987 408988043 61872135 579257330 742182157 9448154 941346266 737442061 16703484 404268328 115748033 91368740 683014137 238611825 193677362 737975450 122094838 54043281 403971958 678145012 256566608 58808293 656783803 292476106 714486971 352993418 251736239 779171795 145871598 12248819 164970537 625332586 435733669 180336668 337439448 200599381 666162130 618007302 884205332 794423125 502308384 926637610 287369863 229578810 755130728 445289317 343892878 729883015 794447331 34377066 289502846 343287301 8641416 703954316 317381807 626570928 389070953 206092638 819738258 972328651 741263100 413705822 64584907 664669079 849689730 651220834 961159782 341544476 934246421 841575587 553513867 35461889 605614147 980372954 735169202 373494850 589021089 661195721 730853588 51437700 477580875 263353434 919420196 179954070 757580514 249854872 315156119 970339780 87278253 583008743 222085051 944633012 13783338 173053640 238108572 660878795 963101931 337265807 819557250 846209090 437685817 260720569 287672444 276628554 358428279 746528297 348113981 759038718 404541881 497673379 948145017 398930330 782199433 168007635 496068141 787823028 276776767 788156332 571222161 834091516 316867067 955101489 399989149 21202990 385260381 797881513 427162284 545152423 690619374 622436382 771815286 147759343 503841055 355896477 553393327 300055314 641304994 770391060 355176305 360553677 718243208 871786773 290649396 309799115 583395924 20220374 49779458 244704196 605057214 643582086 809378109 771898110 57544248 264193690 650449751 835161291 897117106 88039431 615512408 435710887 398431566 637862720 421574738 122703086 89573765 265820206 521476950 920769123 811537744 998801556 11818308 414411000 643181998 972810036 792102827 167082040 828993049 194585642 5944083 429353305 322462064 708274609 420264820 534785087 10138366 500977973 766549211 556880719 905177628 484226953 799032835 731156763 803986081 847919717 356212061 653223057 324469202 274844854 902317325 461578338 539591448 428671768 631596295 589748879 78778047 588623660 856349575 433470463 371645381 336185833 24603775 54209198 850599758 99664428 234647162 144793118 550658253 692112091 988533902 798683301 339754217 78013813 642507152 166348480 893761819 130734191 205211297 401160554 455991601 650563180 560304239 248783288 34256558 889936364 280820472 319522913 376628941 275944826 527839347 292243601 170355642 188474565 703430193 748095023 997585664 785238878 8811380 913215344 367762206 230070553 590008326 140686441 8210200 628885710 250938222 970075117 840264399 60605072 858655760 642540806 936970104 698984570 634388989 692357106 278695195 33161092 639573311 700939816 660250515 183202324 475905854 286376911 575564824 735211300 87855702 999455026 193133102 356038632 434532389 92648745 629390321 638921034 92391650 114629760 261896376 785681493 165817426 595969218 340385021 260350413 557423213 786745127 601364042 13933083 520013904 270099780 892427137 821744616 324531676 179122294 944373783 383523052 77137296 702857096 851085962 180778478 982546012 954732325 339554184 443562737 339826066 568009084 735926351 906640447 627112804 789449988 268634959 869962801 524082614 269547493 818893068 52199745 630919778 604951887 474942409 240788968 308467375 830348063 77809763 867971458 225758295 396920397 785024507 231370386 177984900 864038571 269285643 480090230 725841961 172501123 569430354 727825921 197956722 740417529 911260819 595914550 780209342 998341758 996612483 527022079 55591697 600757791 214098934 247972788 89442237 979515814 33843080 935940193 40447959 835842574 327299504 694850088 536662760 157122332 26204693 729033680 913431949 199086889 793795406 307289253 504556554 179707634 49117937 525719747 381514647 30206250 387635015 758237908 143871150 100439623 751285271 778262971 738236093 782304310 94647564 960113084 972434939 13702660 149683035 732298737 370161625 624680923 946349744 34916431 712315243 895526086 803359319 999801890 2864937 950226130 830433330 896924080 879122305 292766720 874409197 137555528 435521928 865486461 364916002 441097548 79331184 192975814 430708763 399795354 258402082 985547786 813581448 263721097 168721675 997295702 682198782 529709125 136511458 489043915 221287655 9937933 509354639 253273533 261808534 549339782 781619994 275523155 378333481 987043869 962403966 260203617 391306319 765075234 783179764 136885503 128335787 845752046 73289107 406125336 500788882 717225753 361545968 112738739 297714753 551560244 170723097 722339435 845995523 626790726 355904041 627619493 113662773 750939212 208824343 380235194 458086580 756799662 85674240 534586490 663293303 380774840 943364521 812335287 684510690 359015075 958292813 732951178 122904392 542566130 247074311 650031918 777131376 861870309 279163948 727113440 632668601 208565996 481614548 421850209 701268583 352332651 54279652 330024147 521477290 308872027 943960078 263509809 542895084 346777085 575190254 921258400 493837022 161963526 335314516 431065539 292723805 597840141 932528848 800590236 685268088 272260924 748930574 825525288 616183075 743906224 367525744 439073525 469519964 235344735 752922125 781648442 508967061 5160884 450713770 492714684 809834265 822819118 133567358 72750962 392432326 938475802 832344679 273218493 511541005 238029684 480065889 589528813 431722663 954573151 620380375 548675181 750121474 278307689 437320925 512923620 525408776 777371708 300727721 550163304 236104298 145779357 922328651 209686236 112833848 656723451 419743282 671566746 104407446 31796632 784703492 789444042 671727121 906547838 675720887 85877617 801074313 642724578 626081454 457531748 267822909 121684522 722534073 751232122 333878033 388060606 455141872 455717348 877013771 90104558 274104457 18547814 954662851 613231921 365946056 436544051 548353171 717229117 709938044 59294654 451159333 720057848 202645660 83048789 383094786 693282740 301225160 636552400 279286844 306842483 173600927 329111183 537133586 340708169 702315196 636661158 431744746 977906785 346248396 191708256 502968921 380318042 342471412 824942511 657960070 326365062 718998669 405934579 756729763 464265212 625869237 142763066 76541265 208756229 853384768 134444244 188034929 545063180 810885181 157225390 229649592 265748778 631685754 183725 356202096 291269552 750896649 131832352 658814017 733346407 757328613 684753393 548057397 60657971 982499081 368878596 455920631 547691496 510534033 740546530 335923405 138603507 50248593 116340717 602022791 848617904 222166628 937295056 550822727 457537234 213992174 232481953 468735661 561513369 583239138 578045332 11807544 609742851 262173737 270123193 218808176 814331207 106282224 457913298 764533820 560561432 83569777 959166290 584124862 474329881 46406644 320255187 891034905 790157991 829210235 818929052 977354064 39107302 738673069 51583410 831492405 180553909 840531749 954472874 617127473 970640314 487305247 228923660 142505224 151198220 493520408 109202299 472177404 455249177 750703814 274066807 125423537 468396554 624802388 884975467 668526971 591317605 790495814 510228433 753850059 891904724 772587574 293926528 180642417 882047461 861606308 806015322 918594082 533346430 556563123 521227205 976727670 189991994 181579443 96324199 559199699 953390735 277464906 145052737 844613072 484795129 134955601 789718886 920502177 371529495 690356664 375353012 985305159 366612765 108441741 120088975 71113155 599897121 700081097 712983865 569381804 394782721 656164252 629172204 379547362 817779848 225803170 542292278 688203699 888876022 382385963 321954746 559060425 480136864 986126940 623542421 753126303 592868185 754716958 13253416 149917735 359283747 524884978 956015653 814963375 91840265 380176513 948630286 823163391 794694703 400278442 827187443 800812949 409311649 574529720 484892438 212272166 736652202 982380765 818222408 61967664 290894889 334840086 520944801 156891016 238357861 140302063 856387160 136127037 76086276 417812785 263944993 118374808 694342637 581443364 65059081 330073572 828458029 83393617 827197400 161578234 847608921 355384066 46529124 96680598 557131362 279108761 816428050 110527271 567010124 719860338 442324823 953746477 344401354 521342350 827089657 409305557 810038266 407367846 666078479 299245327 843971418 887152852 106336257 779212558 423887424 938718783 12038157 362899908 786491471 61083756 44430712 371550348 821149451 506408696 343448808 221908651 872894557 549040567 569210961 332801833 545043290 529982568 394061251 75074515 730333806 115446973 778373909 135145376 387269841 912528235 720672080 759143435 84945176 631639068 276030184 986286627 530181666 841260437 964646399 289758835 242487716 488090731 473885813 996049104 430436308 874004478 991498705 47273790 973886280 213775512 11506439 39700940 588613080 629007521 743201049 170691389 907198370 817013692 716804112 809612257 979718186 188661158 622915892 628042882 534575903 379768215 547084069 663135857 541508834 760492574 168520863 937542585 695469182 124548927 148650160 27642380 56858712 546202150 571171587 388337784 74109433 518661421 540027089 788363559 464585233 611023271 505383115 562750844 946052446 65693433 914986616 63515599 888732562 576470343 32221292 549517485 696697672 984986870 914768976 954272552 153394964 585672163 185787640 934744496 664630863 754422533 368378898 552877146 995708456 10471776 219610788 213988116 103063680 211645881 769341628 593493640 416837558 580929026 101382505 387867486 661398661 511491203 201758095 23562382 600406529 199826612 7655709 328465810 898667308 119542248 522360777 358746869 145757590 979352851 694140120 468913405 738036951 737917287 64514973 951550890 434610139 473804565 395216804 337838098 141710818 279872825 640324628 695284591 974606512 59532471 343305245 205174027 916364513 48547685 530946666 919616099 199683533 536937613 520473196 970532226 271208184 663890144 144939164 995920748 302355799 762964021 521179776 713390580 306405123 512451445 915258704 400083693 52914956 577130540 307724633 287683312 604065696 142989004 324819860 550807438 264408558 297079808 523830439 252920891 148570347 976043687 878291348 808638027 308236402 553644277 984512582 557264868 840022350 228289136 653582979 472219240 48606871 891013291 859812623 662640453 55429627 168317813 51220450 429233968 298974999 688041486 847031796 992585748 84294190 519015476 669088414 131978342 38095585 228648400 37959965 369100411 369617377 424861071 90357071 895619527 554315736 284455156 243684032 581377383 985104302 480217854 625207027 37658149 156345084 930352091 909809655 116731707 744278173 961236490 435253866 481098702 422959516 164732742 249036701 928013971 328112558 914112041 128745542 861756528 699179057 44239238 769031830 9908977 999686676 529820869 52977662 695420938 692131161 436984072 344561999 629951907 668010104 584881264 893257323 392908665 730214351 546449945 900302318 261713160 298173078 569809335 400077785 567658282 307860522 988644532 594356412 773508246 864821908 848330512 105259229 960803758 842062513 851615955 958449870 926197925 259806540 650539133 749364085 566043031 342123824 504834011 882088019 508152953 904502169 36303261 857773774 316301510 687424039 868669786 987444774 228715363 149424415 903502414 395000870 379301583 884482907 42714707 83417163 826817198 494946013 967997225 935572632 746113851 798317161 692676406 587469500 611726636 335321610 20815311 903156793 544284429 799474550 293980379 799275145 473374909 31052284 911401964 69928553 986867888 509090466 784357749 920542650 856857109 811708553 654539844 7345472 204446415 609470554 513877758 255368667 659275630 222770477 177095772 68453108 221596452 750708730 593014374 56245342 866498745 399209420 139102917 921633187 165211151 356619895 267034086 712460820 322051543 656230207 346992235 197916728 280727450 625971096 155541439 701062743 246834521 356826328 172701375 96529732 309867656 113116353 918468521 345113331 622349086 225763858 931141767 599625226 343938785 407614633 74720109 470765352 429231329 512857897 899452182 571821914 81497227 175007484 741122157 882997504 253239972 353681300 82988870 737803660 894461894 820667090 904763184 183806539 770506517 396260647 265604644 707047021 256066990 943192059 28872241 175032161 827613850 711305741 92269856 158981891 308780395 120228433 601336641 749959676 368719990 292952930 32686072 546234540 46626790 907838178 285061515 745783760 144537810 403735616 190174705 228938402 969191433 647153528 155211470 426169124 131972269 541161560 79126415 215889566 558459100 500932167 977622778 185317711 853749389 385378189 265059458 791524797 984576055 233188270 937833665 664681569 802214947 24778689 717719433 494124095 891695657 714679576 699998069 706962177 890923540 70303950 117940338 989601466 737702165 92008553 763553442 209477674 435250154 748666943 612552724 403771049 75956471 797039698 313912848 808675741 55758830 80904165 207709625 129596623 276945183 211409442 367419110 373825709 513116012 644809232 554286412 908098713 430175431 38163970 521121871 196625505 295969073 573626475 955292082 531933093 374925796 345218243 273370676 229861550 17236432 659501969 335235989 938330351 816806928 562833625 255749412 957495269 145405171 898669546 754049088 241379289 854732884 124393061 702434443 849472097 617982788 35921072 174926313 419557737 877028002 800051846 49637813 589095913 776266329 167705568 301011673 423227567 964185143 561727945 693150502 980299890 788244417 780181654 231870768 522806819 601052159 200949884 457088756 30718167 667677250 528530824 890188293 696912115 730663400 461627694 995116957 371951180 280659223 299097281 283156648 276537215 266087627 797818595 445584830 903500324 662365790 448357983 235986346 27896701 379112367 191569385 25040806 335794234 653212076 900561882 750004493 979833052 274908700 855197676 94656804 259716626 560508234 9256320 98603312 152745443 529446822 260834605 724952954 322559033 121370898 363144049 528975680 765035065 907284470 503041551 46360466 837500344 440956130 627489002 931713443 445413704 498794668 751956314 711179255 697085764 941306741 907240315 143182052 631768455 751975682 358805868 120160950 25006718 733525006 116451190 111691 828242917 626917237 121178178 318160707 990761064 71938638 893525613 193693280 292548560 76135389 293364651 913973470 106410018 991750710 761381433 143249482 517282241 479328874 706717904 625638367 332666818 550065026 490689854 610617534 602089809 791924276 498170481 77343360 3216342 50712386 346701191 851004265 650721886 651712881 118964754 942663744 669496150 261015038 723899204 914596632 350311235 642656527 711178536 988016862 164221554 787254583 527641933 253266446 880802642 808726193 639399226 626957388 473304200 969442561 995982161 940175562 370237635 382142873 431663968 790116743 28134802 36900776 802027970 649021909 286257312 483220401 654983640 17008508 166949542 745550904 192899626 124266147 233016693 628353369 3343771 844216375 855078728 921442481 511108613 309848646 749478596 577703623 653324946 252730295 155198114 246656839 621104147 656636760 75787420 839498374 203135346 146904094 378344933 883840521 596142985 643577450 183987976 795870655 6633020 249986868 673122269 717175538 680942895 866345205 763990830 149669109 721881440 36304519 33184907 927997402 693620478 519255618 489534907 330015813 70860165 777527519 537706384 858562529 326845670 589239989 977539654 919098598 348682461 962570752 741104347 495784928 973158521 346152577 734354873 50692840 541498396 840882066 890639410 341004704 772917052 116718360 985174592 322258307 297447575 621222070 359593297 176290132 181432780 377647461 23686215 424811724 48965350 445290494 62262613 818068194 311297083 988654713 589665071 508695217 422090879 481674690 525974966 446060972 374933834 794548840 183209662 820411027 849121531 557918167 131710947 135558983 651884985 600823477 900256983 589426655 810275037 788262453 864417244 972277799 971500404 44573286 342202915 955934971 595650837 316621740 180604220 352820431 831348723 410259773 795847753 973763857 64761478 808355259 180148919 424598385 616867767 525294892 596525256 513082202 470958910 114328470 200077083 136808306 481501778 339385581 974096081 656939580 723645367 318263485 94447875 21717120 943922892 123750676 38111058 895620373 202334028 63889521 193884406 717621228 956685524 852880025 385809929 735425055 259668690 786858362 219146584 769014230 556751549 130860682 771435743 795000905 54833393 594719025 115525582 523305829 952948692 932256777 163803517 567632966 828102225 66826253 20925783 982210357 44517260 949428849 736789712 911405056 565809326 421550035 689441626 299579688 842820160 163028569 615751724 101431453 850863945 910559005 291566460 305784651 780287444 964406797 530207005 384021043 680354185 258524473 472453994 709672028 798218604 606765414 88374093 874967932 427959678 822864410 771203457 799208663 981542957 801982289 377070237 32638574 952437928 538387348 887517877 561096755 872780223 747889430 925801806 400249848 114774207 862671960 762027385 388631742 360844324 772833305 903102804 217535045 966803996 406502417 837318791 44315312 909787752 210621456 172149187 393772826 302998448 955589853 582857935 777079581 499094381 622367626 166204644 837322763 94483544 873355093 238622603 565707132 831391019 412645607 648451478 471191606 875712707 918610176 370647932 933125066 760138560 594742646 986329476 859043924 525060989 626649625 381025507 192019815 81420846 735668087 498168696 825833092 961627236 124826371 98674049 378145507 43235232 510320250 807392323 751089161 787109210 813969271 191454629 161987894 578515113 209580869 490458098 177599228 618358061 644080087 497451313 411872979 158212898 706776481 959970511 298567428 777813630 793990670 356196688 545630406 888041382 536492700 207849494 670108633 62711538 739256941 976455365 302722391 481141237 5376102 246866406 533651878 362688586 631959996 790855801 651932716 500884540 686065609 798720486 170252397 668091574 328529564 526760940 426138645 588221893 445669278 554136679 1438642 990417819 773741087 194677184 63746874 219739294 129882463 628055210 999181008 533969741 171558473 292489597 880852442 416726348 679589792 332713648 576931569 361171826 930300966 670780293 109123104 853115934 537888151 560582831 329014350 940265806 374020461 172041006 968596834 991568192 411216481 799168938 478838166 427533419 435444863 183136481 338711876 938366306 357751723 437461654 802813068 59036242 458366524 205391932 917729721 921802120 270806768 506738997 980330188 650886499 194607124 573927412 618459226 67211104 432010925 739951868 509046590 162010267 232078920 873499524 596144481 264236458 854727862 591409042 982604597 130209985 322016764 545087319 368169755 438706511 677774606 235391835 611873377 80182705 387974328 688605947 129199656 405385812 850252405 987096264 752790622 680107066 289352049 556976578 476469128 654213434 150940716 599213663 637302860 484353533 729958785 333584284 492407007 670248522 693503295 982890579 801897556 482180472 612900454 726785370 325836493 308710178 600628561 907558708 191397105 432146031 866530064 439515938 381765841 95551416 992628486 952867674 956985590 110669746 617227139 718341826 798571375 315423986 482775535 416876894 151403612 226702218 111110048 634839470 481110961 481949389 841603617 783154642 939709134 511352158 407708654 679315231 882138821 315643317 148384863 747133764 843007725 760295651 304389148 689284611 181182225 47472546 259949615 196293537 438517242 513337780 199358590 446633400 619396008 284141042 72956805 810098757 679878520 10649652 782157046 780892953 717403965 597941731 604018351 864663127 385028316 966085369 953578556 159903609 454944039 916813178 268294007 816423233 930483790 376449922 941656335 242321364 472623941 650217388 776036034 781784094 1969530 122724472 231512822 330408851 307387458 224459369 821168256 203199342 586398734 926150237 495638060 665676256 467960857 951348163 923146907 675899272 591126193 456784301 908518212 697980979 144507809 128165417 436013069 984618565 56802361 91409429 720665735 900310326 999709954 385488998 183086582 612425758 668515078 674193749 124695864 953151092 275371573 221501826 90252620 914207552 176660578 251992903 185461003 495117569 94578205 985290035 644151055 165331277 615491886 725457380 369381170 569337358 654075655 460806035 903735034 907503007 148818847 850676158 808542024 635877763 681925133 762154080 551149293 642714852 568283521 386980390 483527886 106758144 734990667 865931248 150048363 596620978 995912687 413483975 331606487 542557910 846399216 971647342 570274045 941782231 885061431 129802194 846381055 763144677 366778017 440572012 402366568 743501376 796825637 298748520 25075911 296036194 792062372 648069716 617915018 624800105 283154223 63397440 603763325 33153514 628179787 272352098 476070149 254010657 870291203 911427535 421331815 115035594 948454808 44754465 164773120 721865582 318645780 872724222 640877494 535474001 482771086 482972894 28510123 222927907 771253554 386007933 347240254 899785918 749278011 518815182 88124734 547572657 468855615 697975326 861207744 726038955 670588448 209285915 777753426 634508141 870275630 966926725 555037410 338731583 973819384 201038923 802179609 363565311 772271023 859713450 605366411 588264203 276047696 49232957 590022622 200342455 43028138 656597258 818700374 295796285 204052626 326543329 540096045 147325081 580777898 795449990 896953912 679046509 559653788 261559163 236299946 419616880 14282608 150812290 370056070 624518770 690010966 206522580 967128302 75245356 717313434 364344255 995616652 415455752 533282358 258438002 889952551 609990270 836064782 127851384 709709726 24549061 562029643 825639325 842246140 996632565 75413849 697487739 286163431 493948734 26927590 217539893 119753496 329928367 695392350 672578900 130389850 555401202 808002512 122541531 55192269 824682205 630640047 597845223 2055297 860251641 563420233 780770253 423431365 697379090 544028708 248845754 557068994 573411798 329312454 608551453 629565537 551450798 959301543 68004475 871656586 173996602 889127227 491533418 752820003 928920963 871629492 794565658 823460685 340034364 443526173 713944150 276202948 276466249 13415054 375154098 548834862 282163367 821508980 886783400 2029852 844070920 283281819 587755957 274080515 867855396 75027508 383352669 617508668 799220420 393684047 509863131 750884465 775326079 488103166 173933727 975239910 799590512 461168975 561878559 145207775 531408668 129470743 96580677 236805930 540275960 172032645 215325263 42922026 998985382 870929477 653729819 587705354 531260335 68317272 501692960 368218242 756298760 407503302 922118863 846924364 326377881 1637971 495219249 689947624 334857520 510073144 724375404 951275427 882450976 189092288 88983890 540451641 122705500 56639530 446380213 815042878 509738437 642488336 374562998 154076293 661578011 425289455 476959609 507165140 500230551 756521804 342969747 892509329 804029527 303373606 901244316 888154957 805318210 646179971 262894338 414362636 566878743 300768916 505559911 369710643 554925922 809559082 521934587 311179092 30066349 531287937 698278635 13546572 589656730 954047371 688711998 80773831 452042184 593840800 113190311 80703801 731261340 834336664 315853084 518094520 982579184 953881822 252125321 944959215 536788280 26272269 229537966 449573736 941947343 279599360 355967220 160871291 452673221 641863365 257458373 576750858 145981041 835562927 726762661 832421796 297329746 399570648 279272661 376540660 51646853 898827298 386715877 560175531 315009666 144490465 349423851 881449444 356417905 932695302 471034521 287280732 124836536 70987991 741859355 98082304 53779318 699043395 993377865 196912082 535650988 956971490 6456721 701461461 708559805 997164468 786338553 482435671 52758962 8147204 858193953 738947287 730213191 372565377 490374458 648435089 728957797 481442556 233603382 830143172 232202068 515347927 696245041 914611891 278017676 260125515 955292984 886023357 10695814 212694207 101491349 293630141 640683404 811844027 843091893 559642272 235532963 969862623 836241577 521066716 253799192 848999931 829110839 160485908 153597068 305658276 858915059 885429917 967709735 658850388 188511569 962878539 197590080 39511567 198594783 136287616 604322027 41778273 41853059 988367096 723672349 507282340 343981635 926097128 96233842 40989935 516080131 167906964 290048384 592918451 391293802 61725661 960810931 450089310 469996239 838301909 890806559 848371459 980080394 194614045 323060202 586757137 272712881 589832982 277961952 299735337 772976547 240507075 635959342 665121478 246965507 450529491 601761536 860272476 696391734 665160028 288792856 554281720 487882730 187041796 414754598 153586837 58984981 32534561 363708668 992652291 635287679 591428979 104929173 362117136 49784799 258031972 392389365 792180104 992415192 854797793 861149673 745504927 347249937 45877002 838398153 904142719 391903025 877876452 89149965 322411862 819310264 262182674 83480228 923817426 225809260 686239235 200329948 697327059 73437121 517461936 398338556 140522852 258918925 959234513 60462734 582179757 132341906 667796506 965886838 212144487 916841553 556567523 758350048 536901445 298036543 365859561 1635484 608710142 777914563 571802469 851190041 989318408 482520412 875229681 968694110 923169981 607198274 543609470 421070363 44138814 976741521 931821125 699584789 851003538 327722768 367449115 678858972 134696650 326391173 500695288 64818259 888143041 295623524 724056158 885989151 280241812 436971698 523376490 712396152 874103471 160125244 899053509 469049535 996031216 496987575 581376558 188138790 155865589 393808357 202362792 358216113 552387523 516528349 964119038 220690408 375842134 653319831 828016799 459893415 463187119 64752017 489041277 340522832 130122452 550037717 870070108 195185509 177731917 849306566 751559531 118105201 685323672 745694968 72560697 898792529 434473296 54380785 231426855 780007711 62622995 143669356 955289326 500295101 18362433 27030819 949559570 377032568 123254722 97367005 862550085 711878530 754258702 933882664 781735258 892841127 191900414 425791208 741990929 698007616 889371739 410674597 15961219 329177176 59012718 658501750 178103891 177168938 196770439 981854786 994440917 313212653 807284605 131886432 816605417 42076947 835778403 803616282 782544073 929362141 949133541 287715771 63124849 30000800 880810663 764527285 519199494 325191517 178103157 348455213 372975688 407309042 537501210 43052033 239072060 456670717 211795822 889931681 478112328 580591694 137174883 356203290 317813140 276063385 211738326 111868494 550606726 457746114 781246903 344856989 83249346 622612361 555464862 99321085 757006100 715775461 560934300 625240607 32662662 285944465 574938152 88976598 509646070 742513529 977276501 286924072 288935085 874865581 995345319 995677652 234509345 452050356 514236553 516828169 310822039 177277189 978647027 364968509 976462572 914773778 805721693 116438465 66654794 545753583 529631311 125035258 207718579 909224629 251835608 952616512 65545698 931625408 924395529 775352486 912464172 230958286 124225092 605796314 43690130 675496610 895030396 786503256 651273667 987720526 168002744 348556303 854705306 252137897 532977782 101086672 440250631 769726734 704858165 288959401 482522349 315687722 710685037 401518505 315227313 807264552 767590866 168410200 399918919 557708187 30547279 114709680 290198459 934385625 720429370 491291257 808528263 215584235 506245397 183259886 877546354 965129899 652997138 514007013 574772606 950669116 788604349 768566050 122252680 613647240 10392869 691555855 997837627 522275930 766750974 391743035 798627648 168144676 644430159 362872602 304186299 804820529 284591917 331409223 77337082 171394919 671162654 213258683 31139788 447225309 723904589 822182377 207898749 452373835 518104676 956213964 622068529 910342908 554934089 730960487 369063836 113709911 641868380 144384326 267383957 828664081 535041196 751068594 340822021 546412616 455394080 86200843 206259953 454457879 548256419 421835865 7003670 577784633 13674599 13304199 785419406 582745392 507737786 458186408 707468551 140754067 344035036 385871983 941625161 184350410 847324874 155204551 457159783 859538279 49177954 212004454 148200169 835140765 390891870 337885358 28959558 397216493 101758743 395519737 422889734 159105514 698651204 760704076 421263899 935971772 257277218 560380514 435779896 458799152 959603065 673980144 119422153 239774857 409520015 234819243 701363916 836152152 746734193 639713822 27919094 294762308 939789814 685500536 4924206 492584275 791507907 369551241 408594298 908600417 417956618 185965966 723333137 204491184 553139579 834929477 23565213 219226857 705661869 698053603 678508538 943159623 116211527 386910725 47068027 766752957 449820707 495657143 520941152 707259689 498568443 969001405 972408325 253820871 449486206 652336826 265198407 575949916 11300126 662127810 687538989 691782298 450233857 164411232 435177740 573858404 16906309 998876649 555614664 624631651 650000833 893591596 469679101 606035047 666991908 563833791 961071067 286594159 139896460 53014814 986551541 538449930 106696287 358603451 522178167 757015520 362779542 987351708 324874938 439660253 667189430 157641858 27517987 243995296 152492809 913548663 638726601 442198552 724371360 544379230 761351848 49529137 155987703 310848740 149741407 299628348 245399869 394461895 358800314 67721693 472201447 432150031 763882464 926908152 273200750 906417206 880655896 306689756 798912635 78262393 567224383 111734483 416767631 505028272 455237682 404722951 508463161 656647952 816912213 912905359 922810982 72505327 462626549 794031592 607348236 443164778 658521354 117005247 884517034 696723036 373392685 750953445 785145066 713794478 869162435 624641731 560569313 381799320 459713941 776718434 34441518 105403139 624927983 839402847 932975048 864042024 751157600 578941686 818366199 178687603 991664049 294927898 363648825 679878521 706157996 586592756 451251861 974678679 829010105 461397038 352002115 547205477 499847074 148956939 558384917 53219061 95067129 723097060 806749339 359054810 972241170 298362213 175234568 386190442 611638915 78860449 887803951 219694540 611566323 833989024 464742034 707986890 401011752 616830496 64521526 285003099 413157740 347534845 436833509 863023554 25615245 614979700 623220674 779661693 471283557 455328801 103270386 760459540 378361834 808853620 437181546 703570481 151667787 679751580 293968540 202218749 981851893 594828416 19146509 30382186 58625358 450032762 713473279 837742900 773970019 815231247 876388871 561158252 742594248 979684734 920425181 258669493 258432377 677779691 855089008 354745432 552178901 578589349 663763659 833080674 606366227 790257695 750594760 426895942 988148646 662721295 164304139 488703165 251649227 363790559 941197282 729773861 733049528 988482826 591029482 737258448 981016303 27769007 761530120 688402801 169715090 148009931 360611131 788679093 397340101 429269746 392405688 163593691 404527600 962798277 22316477 136529706 824673156 654413450 355388075 512926042 808234124 697992322 693245829 341331441 350380563 308067020 503988728 135443919 273875473 314957951 240347587 731215618 873963828 270013838 442192723 648136844 468715975 412233830 932940572 728096215 422243885 91632781 593247872 424113687 646048394 988770533 518917832 624853174 720134062 126571338 546333378 427477835 576577045 84380103 606074635 733346592 524846206 265206651 96146447 826682204 436572149 162664388 703908234 669120259 488206235 722778177 601472147 991576606 336445799 951540881 446582503 937248550 976492971 957453727 174126378 683520608 328409381 342497180 621428398 188575540 258183497 334413873 518053804 316346476 545398954 931237152 516570689 103788443 15432616 868840741 454723042 587798542 266191263 994016174 768081830 510415998 553626738 732372105 937218369 59374987 269020366 339564253 222500534 216950641 887831201 805014614 203367754 456442047 574648834 269860043 658579974 276133288 691104813 781045053 176597600 585349913 238023383 183135697 616152010 186066680 754436324 486501640 189126570 105710675 983598854 403761583 257439583 614283383 989376126 64358849 692863612 665948506 532180062 40879050 566907206 289250840 799098492 375317153 704890636 853711122 876677451 904357440 533373737 434943295 14360724 71479562 780813925 950066324 153193223 990957094 796084168 990635645 896556405 86585532 738810052 232554985 582206469 975417421 330631022 936720852 473436534 153396791 190866674 363139991 149468128 91366094 600172734 391466166 274347053 31316146 466329820 282858482 666849541 527264802 617942912 62840250 123452689 941897301 719625837 996614291 944367854 651172678 604122268 804865296 322159547 993026709 280819778 968844814 46613599 499098639 798314646 26816983 501135711 306394338 148591990 4189567 732872870 784139212 306176296 91202621 660764396 211009936 736463358 355404773 58023765 309503172 245478625 543471806 966622965 45815703 769109522 603238935 249362009 931649386 380122651 502878310 705245454 966558903 976472670 412942091 290732523 429357140 157947376 821543097 100811311 637342470 870477099 127032433 752028280 263641703 542673819 18939409 989551343 317359047 488747612 515202921 379251996 698490227 768418595 303836301 229569738 748660591 412479154 492560695 733065377 417540049 31604055 415726508 650203412 363714656 71816047 273755471 940633265 448970006 922331404 32580242 34445906 486256781 904383405 949275415 143966615 626166290 378297094 139845211 179123014 824002944 634477212 620595940 69682771 550789723 200268962 785023070 654853352 219535256 52545081 997334074 686522397 843507755 966633785 243093077 617487466 746747247 851881805 213031194 780512484 919971322 798149898 395297913 209895162 459850319 564980470 798584416 749534870 367586853 693384999 33992419 49647158 319022356 953901063 869426707 940001338 828274376 28460601 97350020 512732728 840433815 382548687 534794508 730776255 631567082 377765990 183752980 541467707 321757730 341552513 354929964 206949672 346933935 958015315 387445578 802054668 565890735 30167380 419526770 163445319 584171707 629942608 535680878 952676013 554346890 959622341 693964620 54651780 493466546 384513438 389683044 397798479 609843966 548511905 967579387 546764669 45469992 179425016 442214825 724861992 615823978 564138362 118749665 261881087 430938931 843779446 268419388 596670376 664148312 879474733 523885384 301123124 432615506 893355079 11982515 860374819 708945878 262837669 183655447 11056234 799683138 982516246 74771350 706724471 452723561 774941402 288338119 76138585 944117532 204187342 936842129 378768098 156498908 330825571 66212837 505036106 5465869 905503196 381827997 748475217 780323195 54323930 645605258 835357647 587413372 859150912 268006587 507760940 572412269 28622052 641300601 120179931 482346876 871318962 581884673 956107623 743388134 497056042 579514072 960597795 566444547 464429265 724455968 763825153 324858677 24170379 288527554 470945241 134123655 148161853 857517542 804000529 206616288 434187060 470928074 569271021 360706391 470025207 302333762 618665257 647113051 363343136 729668292 22377450 378910990 97728418 891661484 147054721 948833482 542328225 6594621 444811152 676334009 582201153 435656967 415039426 123170425 365334686 528045968 228922289 412761469 267622823 130243831 951531351 154346004 142311827 621586777 155378950 75597833 510744311 316178493 631048601 436761192 271912150 474511500 453224328 884762099 65812485 115397300 954380626 440291210 434331292 254697592 613406496 328804400 26627949 687004658 468981637 631303042 741330843 627811849 673449239 982331580 74936778 794970473 322782194 160523945 454876744 651797093 320407953 911617130 238449285 586294359 301986384 507088533 10753698 312433756 695915267 25369052 663675705 609174375 249323581 613653592 164336008 248839864 102099661 848773781 292945490 20238730 161215395 677761933 831186778 42603660 542843847 241856964 402254032 701357602 96337599 167808406 818046022 540129691 898667015 584656216 678171428 755232997 261244149 448178801 145149124 798572424 974524579 707658704 202422708 798067347 566310440 388238204 658674492 819733776 406754391 965458202 142184226 542559975 421611216 762200697 500976347 694850962 871157507 894524623 573416832 249802499 822729915 157578972 641530 468750560 694026510 166236262 441364554 857832443 325115737 771444099 872965606 853000471 434670264 819068189 887334832 895817393 696335546 479566129 626867214 179652830 475253858 773409247 204813316 230968545 271596277 210913041 410422077 3946515 163569927 282732586 25264245 812275930 756282562 169301925 256020797 983677988 162011607 499890344 651541584 837711895 827459885 604437651 156413300 673474469 359297199 515434074 446059888 20823934 612925108 478222610 514955403 648026696 958267315 979232746 49132752 139970705 675894557 288025230 323723524 996454534 887204219 237489597 330037590 81206861 987016600 385506039 9014422 777992826 868580830 360915627 835298960 454061368 591816157 933613600 977147568 797151795 261519463 692992425 452280569 154645273 724888234 327733139 986955017 631474135 655042517 747800524 359787782 525514819 978666991 110629380 48791506 657259461 560095618 140932470 813432999 649311549 446961664 706289219 246660186 843208442 959236558 220217146 962995083 770968537 853141825 330633606 823046495 753135160 273837244 146810232 649746413 146081834 585648697 954350418 813767289 232580834 10169185 956536226 733536648 940296871 380282149 213734774 842098858 523410957 386436806 613112280 886967310 608325958 899746565 875929697 900876927 611888726 720350247 822207057 93737038 137867675 923637731 730236823 531994309 672013545 582670025 88076229 183129052 930660565 412821711 541932206 820178926 511929326 952944839 270238499 26518786 509396858 506523253 798293636 725214880 645228594 190874757 423913220 626805962 486661661 437924555 143843512 411721597 593235076 160563590 991235242 510751399 464235725 362182984 681382935 468344130 974744175 271105483 319093016 736095374 623954682 196152679 101752171 213594697 312232370 253979977 259498206 348315440 704876279 628726479 992750859 559396517 553057739 371028245 545696716 924961967 843657433 57238947 871574454 419307039 774155249 601798633 133784296 493342230 407914546 31058975 709280515 894420935 969379439 631214441 289049062 866728502 772540923 466582392 452578928 912224311 248820211 285429015 880349574 802862384 343221211 794711793 276193855 341935060 772831833 847689569 208611630 229754646 656621153 797490560 539766620 67617614 283883807 523873735 408844147 304116770 853566315 191266086 737214547 203428148 824531471 494693691 844586703 172497575 31877989 189943940 310062922 216818201 844604523 104939966 757558689 772377983 166185929 905415293 472371802 318981299 606050266 649567227 669502607 84209435 423087886 703065117 809143317 627994913 768462103 481604263 243776410 451048050 460524425 87397465 528063247 978644104 481260124 624966872 530145959 878781658 359462786 838628837 817187603 888512055 371677882 636223481 222118475 259399151 931151535 198799429 963057307 448609738 122875640 621523902 605489516 457890624 548813362 376891222 468549017 261821318 534688070 536261085 345264789 240524978 854446739 447995681 377307836 849426423 392944328 106268991 669056225 844895823 889553859 598606603 235215652 328743463 326448565 997251530 507630801 308479666 539654867 92399112 751572375 24277530 373207268 196477693 918174982 681609016 799519378 945978757 123356576 420312058 546368516 577195412 544576447 796240975 130620663 304474342 90667146 78814500 1378180 768485835 282258925 918161563 737204901 393434331 904251042 175057734 711060626 242077513 284177168 817312916 219513699 817379967 272579289 455846426 130849854 825275748 380048394 886405719 621212132 187159634 142717269 804586029 797782622 421938130 78758191 725691475 65907854 321522899 350436769 463841098 285122433 655213657 948044709 287407373 645666721 817230851 773598938 916382030 635116148 364415651 974482827 965360171 773791451 144652735 509414129 321707777 733425453 361179771 681122700 682240972 650202413 307341417 996144912 566714347 910666495 722861650 247486174 465541265 315240437 472124991 681393932 238475247 662620715 422016125 386285286 857623601 11763930 314582848 570163851 996931713 417698513 479278984 534905597 317396569 365094503 806953517 762696378 922075067 482535459 87792616 769744085 456760008 712632692 655964513 163334858 720031143 500767190 850203344 835960952 346374975 519214285 775928417 642190828 22755382 765003365 412897255 358812794 951958824 233267588 54983700 293213105 186246286 587035114 175522886 951860328 925212311 150569621 657953879 226651967 881676993 679300560 123516856 129587645 510282959 9978619 930428013 386254990 695858935 32609055 739141342 94017312 166798255 270800058 69692846 883412994 789007273 609278630 179017849 50350975 419859506 140115944 829513748 334282487 70185758 737748011 250457871 979892068 171762160 824847523 129752514 548293356 411935305 150082023 778646286 164918624 64385538 754473608 736693668 279515844 763756994 623448889 840534275 675375541 598450826 507183101 843474400 300309327 453657404 520120079 738918271 623372079 787222244 481508325 771046172 447814483 679361620 708929868 482750896 973460112 314939288 264900215 335396002 454977921 837066159 540498034 839682237 875126604 368163918 404996143 559140138 247083280 893499652 829991160 200207485 915258201 913481147 743323077 448015959 348127645 989348118 144908512 895167647 759548111 225114214 564887740 52301432 963869749 746686665 980794053 737068959 366502445 808903385 368670221 740087667 364393312 569768766 245372712 555252326 908210160 874967078 353534722 854674490 45635824 378901586 487037798 888329797 168571800 56701881 899438645 805652632 247901209 306727801 524803476 297525714 336556079 658743794 475778214 57221345 125353838 379041548 858485542 366890874 270656912 495964290 360444506 612595215 653724618 338430771 287446049 846408461 317534844 775799485 601894162 791924838 583395648 365244721 734757298 42559672 523746425 773657305 406861302 494458831 647490176 950953384 768520296 771295241 771757957 811406849 774081525 776515974 193406932 985987438 50611556 396351134 61448 562775644 162485597 680995855 315087693 931153198 253516933 845013010 456846429 633708726 320457671 421433805 680757244 194966393 195257733 490679160 70163477 166996622 230269490 777313479 574518216 632136500 127975019 741506395 122235087 339498329 563105450 168353387 480689141 412312145 819770519 530104477 940866559 284852520 492228835 725595084 995424363 672612493 454307353 214366600 677687478 335959355 995121621 514852056 489123160 605005496 553059395 57975005 978633592 297479552 167792497 638782602 978990960 705615403 255027106 335808206 139087719 766212683 979189153 795662014 624433518 69904869 560106937 27133673 56697697 80140703 522349397 644877651 250147682 695897800 245928891 525949761 702907013 907498546 471401636 705325828 982956804 359702544 85849762 303228143 935372252 988836414 956074990 379091295 581421759 610102718 521322700 269958864 972395917 351248576 817886545 671577823 606422395 993072629 780759662 250170972 401574889 485174186 243718941 793618382 362048590 673907745 788743175 81826720 949877878 981120092 267004782 591943166 669801489 971883080 787985748 539352894 883165598 624318401 844022799 253396697 893710624 472910249 445985253 754816917 756835035 976798812 190360793 207378379 547742952 283095748 247051147 844516753 843116118 598241533 467248044 767433703 53200708 6703511 367642690 989384925 754350295 179147628 997048310 67038060 137631139 643445106 912049674 845546314 595751911 727956562 576651413 113216059 409581752 801150557 501563520 932088721 300749202 944771861 153366394 428547344 478022547 672774640 93098050 963141971 11781217 806588754 773487369 763785859 530205213 935544990 898957742 333324770 169409023 786213666 386196655 267914058 201849565 773936511 729879172 882139951 714056409 258241072 648762557 692727315 958268728 956687547 160362642 635395178 800723990 961950479 225241371 395555771 502780845 861875670 874410057 343535754 755864165 178826886 88757821 687042715 369454427 30457067 667656154 798925513 896192021 618684309 831895574 814053220 584797099 188087529 823945017 756165731 866460476 730277649 33059972 843577392 531442867 857014600 851053693 831693046 529084987 191251422 27565290 743005372 119068624 900933542 13836041 276367710 707500441 122307708 466749528 581454536 815850003 462003161 963174003 479248433 235964553 873598907 849103430 496033025 367573900 295385473 345092545 675379806 647746678 930385432 277535680 713018373 707802551 68899667 997719031 267729000 870566333 963589245 953377798 67298053 963922624 218387714 964736728 347295531 607003507 739818788 575951716 200007305 99502153 965827156 360657944 747528161 338180347 20273924 709236233 605734379 426941464 811483188 422335266 669738701 648794025 373952413 784075496 944709432 474775881 544289525 684547351 659207423 365181515 518669566 116778841 211624288 436957741 529133221 209316048 980502931 87514331 845207344 887979183 320147570 895991448 66164365 604022275 670237174 755020494 979121696 182825426 700436350 46084046 255361978 196334247 426116717 415439358 348809507 951031899 245674552 455637089 616957167 10840374 63396128 151757329 689478804 156498007 527513927 793423193 756334947 366477943 554240150 752279338 888228205 455288112 526512787 74086207 961737958 726088804 10064298 411392148 367715404 989749947 701349206 303930062 273324862 619922554 438426798 279296989 191250617 868601325 105156047 237064041 67273889 351403716 969658750 665273392 8568533 69367197 897354787 84254483 191147984 984469201 461388199 915326587 493286327 736190838 715176882 220904082 958812486 38274820 862584126 52868607 35878236 231325359 421484323 139950238 76834839 443792540 901143801 494662155 381854619 653660347 385389091 692270072 792965568 202126789 826073391 919993971 911877299 430720854 941239744 971996929 399893774 410820375 69455400 414316122 325191696 823673941 741313541 391925101 443031398 487007402 511245205 561471634 364309521 553073245 254158163 737195777 319828079 481194036 207433230 873719501 645424506 526282479 232683133 586903892 546613832 373682304 611869592 202350877 843460647 993032632 633028504 183700237 111204837 851690450 754977507 382530710 835393313 932349369 955785455 528786785 356418527 503045610 109405643 986107880 165288999 159820728 434921229 359513932 695862668 882817682 844172096 7000964 525309499 717090780 520160554 209374252 1866711 285117240 966261453 197377804 269402394 735261146 874087489 577834048 801759747 425974859 97341527 205397672 192321932 755062961 375401266 48174774 816746019 567233825 800512601 750580079 991656645 271811534 191001105 370962513 765710697 961085454 12392845 675578567 581468560 884328017 645628289 697388719 922190245 788593363 367043087 24981187 598513876 758427008 253692478 79304236 751472085 484812478 844811232 679761565 719965976 563969390 544522402 16011538 785352791 990259981 862276696 361604949 100462246 777094866 258482419 572705831 147691080 490127398 711621750 464842242 754579909 328232904 8262378 737388765 732354466 273000280 574135753 156566200 577633324 118170352 400353852 450385154 151053899 123163590 536760522 818455245 999311110 429589222 702277830 600242797 654410163 201402482 561237992 854597175 494792677 563426170 245129628 767893109 657692995 85420409 822535635 209955894 126914471 887837694 876217947 450292035 44482645 917621628 638646760 417969396 875894227 823302059 453458437 156093943 55066639 22024143 702144632 656810945 310446523 742114254 562711773 184249254 423363945 470793455 894235842 607887941 819543897 737640392 73950734 44509533 718271133 371948997 538097287 156237570 110388375 74979748 345820214 40613794 34214125 871377640 358324799 504589582 265805267 843556099 625457856 149473461 971388929 790586144 205399588 940935585 180476613 9652465 527643303 54389103 997191793 380604149 363493552 324628032 832801581 450668437 95099243 650232625 539128457 917815942 28656792 44295613 525137801 813759271 306164687 146008567 765874151 977731044 204582523 711311397 348228576 579768535 816884382 415550135 125719244 109824908 910313451 565619142 641905026 376816885 747982182 825591954 711228628 698183938 29707415 188468241 537950016 402506027 351922968 579207484 30293198 48117582 609821011 974830945 823082949 908374114 751315954 61359352 120430943 383743624 111137257 199058178 160335936 112680186 152685735 165280581 735515688 269790847 952582072 325972417 997145764 799015525 539651399 200093183 608593864 164569970 724146844 872511341 811550794 266510480 533985122 270147766 173210011 417216350 639706597 451596416 37567402 244196621 91310655 698780868 531668294 141116140 184674341 321191249 973493939 877155648 55472477 198046050 842100122 229681142 132472287 619226387 23123929 483009810 220942670 296737251 982518380 93658509 767083019 932801916 501865795 933555861 476419651 368986333 553891388 541895179 562570743 932531150 804041173 37053766 282757547 215274838 817192578 771270471 223128458 191576375 243500327 107903156 740135297 649087636 5850341 98185839 689036042 239180106 25401895 238046217 578713727 555458466 538083843 779946385 460391418 233974725 876591241 554847265 443900095 116015657 479773157 363901057 430812216 114695893 277055726 119965093 353049052 305003355 704261912 833705545 918483833 433650326 660155557 645310813 519886362 667532263 469197744 979721331 665941061 302835480 273815061 649106055 322129034 580780139 399326634 927451740 16307652 58867370 196466780 215405235 839028554 280576829 553365082 434306962 281622069 843869875 280274806 933338890 848221519 557495703 46709973 841297973 671746335 174744891 501414423 476088190 378041813 736035937 777222306 341898700 649314558 753241279 177835083 786809694 166712697 982792675 201838193 216100877 569254659 940517266 864267388 496077749 888852927 882691116 297193881 665859848 331509620 50612339 993761237 71821533 994732275 106197671 350655663 72984610 304111423 129821609 918294794 860127359 162712418 675111616 276672092 591305144 402106090 208148492 255619750 773211921 341151251 1559726 957681796 594302335 297356306 325109375 439030971 967925567 50658591 261152882 628294058 217981970 358042197 459312239 628792244 45373435 758571736 213974620 983537076 155684345 918616384 431750597 649839426 504751200 832302724 597891198 268979184 208782211 289930940 669313893 767716482 929206292 185719756 511977655 137775415 766648800 825377562 595858875 592073706 934264637 443167818 71724394 668257066 259655477 820506349 229564683 947527893 425422079 238772064 273147620 619506078 641496568 893865683 764930326 14921465 399023971 567905991 60825479 489448290 361006677 974404097 424313969 111679527 363808249 625057309 946219981 359769471 2406002 774929759 331715964 860702914 844861914 470546359 78839488 245269579 893814426 581575561 902208882 156957370 677561320 642871676 829609937 651258806 13309334 883854505 827469283 709327300 998130059 758856900 828748358 486947297 386311844 115409710 369693439 877680625 662283978 904209801 601166620 899036290 304154041 734963818 831348881 421727826 96507086 107721444 749520955 980254497 205505200 232637614 223892751 337570408 966965495 398253410 651822499 820387176 274585243 754066417 279031456 289917626 552021269 311133242 776276457 618802279 729586537 868546547 493768452 771173787 831406488 568216392 928636923 531949893 478121068 685846772 554611263 887855302 182567012 159773407 586257061 547212620 123296883 800877227 141308398 297500644 324435134 692596210 206422466 110785833 318492407 865207504 801488758 866742694 513189198 181439336 457669529 784010761 818073563 55347787 997720917 548490900 431403833 929487155 738421068 422756988 181699440 57282844 541800100 806663743 453066124 827531010 124914999 622699919 290276965 924897814 13253774 392358094 818733709 875062110 228527178 283851978 845830711 557890130 700627594 821653276 278751210 207035585 863648378 269215077 736978156 281080706 785354454 412810511 837723528 786134832 221765331 674069707 295864409 138647526 786113802 286150781 527539752 283384156 326484563 753176419 630997951 897217309 991479076 89086968 873101957 521730330 292968531 5109605 537579579 305787432 654420954 415694699 828089512 94723843 680888899 942009881 212769073 430823614 236876601 428215746 494617883 991877031 329330811 282373023 602548720 461875160 427641828 899384190 205137858 49065915 617407410 299269977 640226761 370406722 588795987 703457575 280905681 822929237 700185261 555487765 829993623 910060307 581336180 243361833 254104953 725494280 68957819 123878849 541175291 472182624 275501221 591571808 649727118 524322549 529235964 718547669 463560839 876536933 805167806 411315473 235325188 885828956 748729446 519976670 780222607 929536738 432417342 835646389 190806336 814638902 9860044 372660377 397330236 157135331 433873863 673887507 166396203 925039218 294050571 334750915 821423734 393126394 991269000 709662203 76791836 716528545 157652827 153696951 162495479 721807385 795423739 101041692 127101712 302068210 575033741 275518417 844975108 227812145 604185534 433563592 515613784 190974641 517084401 461910157 152700630 612869681 356412371 965030758 897535720 999405117 779190766 765887501 801532575 735893827 664006058 366767475 601646041 563635084 870547048 190622785 84479276 892190960 97740990 700881223 544286307 847704344 906890231 635591484 112086109 50425169 499401955 614672258 641281502 320016390 219511722 417078176 637807020 33997932 890574915 131142651 489646834 832713901 671771278 76641978 39554798 577297661 588054865 221485732 161779663 697652845 364291277 986583243 994312952 610202273 647362543 53188664 361080440 893326086 897027845 824233743 48657551 224270570 156723253 609052204 790370246 402749489 972493088 871835913 301644749 742247710 940958274 792636378 143408058 611498073 363929814 11444782 755772333 573862685 603146490 741071448 382136486 747428560 206734960 68491217 240153916 632651460 201193753 163774585 873315939 215407649 847055239 770979207 50011607 3611279 919453698 395075738 144148908 834894463 115337978 932391920 992236839 689321566 354260717 109096196 369307022 104114627 289089494 569902547 5900064 422716902 969339336 161003179 781637177 357600265 32995963 776164299 493273748 753883908 709884431 951582636 591847567 588510544 946935342 560592632 970115132 287312634 364379718 690360338 863077997 348683035 481286069 529671584 339375348 734080340 784040287 619781054 231312800 80149783 368464828 846772750 407443354 477534822 953059771 88922699 138207473 572274066 501359421 75642475 851134425 658544258 417186255 382327935 811058528 682620327 142765549 685618456 794143345 435768166 534230624 1562958 759256780 687379810 499048084 162882369 836862954 760987928 525997941 575340315 654674251 672230603 741246731 618279116 787862799 31418840 600473714 278434986 257943631 303651208 476056200 374729241 479501910 145705679 88009701 617216349 513425866 845556459 841325038 277047227 608651065 343019561 267159334 847129832 629575955 760539570 284325050 544300738 894682379 4393891 50594100 58792517 342314989 337472149 844754472 548095382 744264423 496160888 778880544 486839412 697866072 250651016 335062258 216526601 795926766 788185750 75873713 929390123 851341014 301643746 826970356 296778569 841584583 215109993 354830426 89763239 250631006 715148438 110858768 965831696 687664892 449974567 132404760 42850345 465976296 753929047 64083297 714886569 156617463 276402946 458566567 224861115 701885865 934477875 19249260 955820869 681505024 733625229 179830023 983438657 165468270 492825916 387712141 955563439 154341135 403484766 960451438 830778789 168842116 615784518 825863476 262177854 155847933 446557010 300815543 588934360 858577315 286604729 530593040 963575839 124013154 984752208 729026021 264443356 40543024 161349415 921513718 189715066 546523794 292628704 825320130 959241997 441760800 582217421 442571769 286910152 993989588 210918514 377097538 812900221 934909695 453138134 60961385 266825733 657009854 509355085 607628151 508776325 993031092 873721963 425544562 359546700 246695636 58247708 224916607 758022256 998952725 311274503 795030380 843228045 310383667 407346042 383637977 126533367 164352543 290781681 855956617 360259423 65709328 558282778 846017297 526122947 451552009 445890990 29516791 986645092 709685880 729446149 494573657 532918724 858961612 433650509 89780821 42399244 964807399 935378557 698213604 354168082 489540441 799688587 421146699 71597280 804471800 372256486 914200277 326033395 210919115 890792642 282213059 360590681 984700136 87907848 142749841 194690188 226188946 136655178 377964187 332967729 142780220 315213838 267487521 987712228 772689870 31894016 628599732 713316896 436765758 357174693 59439897 466450569 50460486 768366847 417476411 936516798 806065005 83120053 165396841 330231364 811481243 531020734 536774280 570430443 473809730 521067342 716526019 263860150 694088690 584062246 618359287 190133161 961747723 490192750 927451002 341874585 371071943 621164587 390703480 366670598 437957017 19603956 325777864 945608099 136333748 248170793 779188404 55484157 354787187 535771416 172722791 109560062 329344490 776212816 223690017 793503287 324490361 183329511 106736922 769846752 693361054 885060564 381356805 749194431 613165521 279539666 719426126 876933624 895482970 323080390 468328247 332352500 800219762 20322800 48470126 421035061 225881137 465717181 300154705 258160264 613964293 526773187 437065298 661743227 222102475 535850600 455343693 393700762 816038367 49582361 448064001 510175686 224864698 488573887 529515477 999961245 204104506 562043955 639865916 634949002 786317084 902130703 154150171 335727833 63660285 730201536 395495560 135435052 435584622 159470279 890125337 369706486 855619674 320081196 414795640 755856997 979921780 232784668 559957122 374185906 595255430 635506668 376000010 261108053 172848407 488472254 766706571 253060753 757791834 990602473 367021618 397435179 200802138 444091201 201465384 833939151 945912560 892241207 754783729 985368601 744360541 141612668 94414145 318389458 268205631 910971139 955795501 125637219 484813959 532485518 647149671 555689427 54957107 595438700 958215947 330201668 538780131 56601053 654068236 900825988 598718173 870913936 115805662 993136674 176899303 557166639 405559278 797943998 378290206 204405075 231668473 370944291 858305512 717637676 167954847 9383915 194817059 921307628 194644456 775135946 249698596 333988077 506304081 495873064 391604556 29373216 490671009 822999140 410102599 476099961 680229778 273963376 548283816 746438623 426859709 662395078 52993593 231268526 696688210 494747583 708465922 392893109 625221754 548815915 536832440 257061297 5054805 771073005 143165623 333328593 49377069 412503362 653854661 402550649 399077734 850115455 168607918 736488563 776321923 749812380 775691594 499065540 929556466 404025515 675671524 373740272 688791467 765609177 326712676 911186877 452081897 722876044 113790273 365120462 786966227 203570984 419310570 835225128 194151637 575905039 526156185 481452682 236630330 957479278 679737938 394797745 839010164 184860131 725092515 836587679 947477274 246421523 130735259 144660480 568781431 714245358 311098163 466402116 281045488 38865359 776359183 230749791 336089151 231187666 589201093 49996977 40257048 389356302 642545620 202478135 478667367 974768325 840475858 558522450 975053496 78834316 389830189 315613284 880892351 486394847 329486397 204925926 134873498 165483116 663699973 585828570 296805025 573683591 680776019 686338786 206250234 822346234 254541273 961361582 126696335 894378823 88061443 275629861 279214294 511019924 540670986 522139174 510926660 245345616 128938896 507870994 202367039 677352185 868448583 947686503 48403993 574156230 114927152 767682603 913752785 42021007 362730713 756961854 600522720 444013959 233598812 433355093 204829248 662896837 521574350 553216531 197009493 915376401 39103798 688495852 29726078 236189975 819215344 983069425 905095653 254808770 675145661 717955441 297019148 541960750 679481976 460199375 959146065 566782570 705698248 10216914 268643240 799538957 291983395 93187577 284425420 987260865 146975220 729478283 311808352 917736154 178327283 479789540 499471616 696398617 557538881 15048285 114893787 143280164 439335965 961312893 830553078 216936945 93932390 870135199 425656911 711385422 430486517 449587123 451208881 675896993 446853201 519034188 42523221 36963343 231617982 443903472 523882035 150916959 931194071 217086592 500096292 977439779 39306497 894962898 865640132 215815028 954847069 438669578 573129425 271209103 761740115 319493886 253096374 714329880 673085674 454255245 775691754 729708338 700121742 292593367 898574624 791056397 160932966 231846377 53948122 431944677 110302654 703654585 5380578 796577980 902162321 930230844 427784355 899858174 402207435 273755310 904990349 496605472 391620651 667293333 287232030 291035283 351356127 604360939 947778268 274839610 35815174 207418907 850492931 876631779 516620042 378519377 17414708 318948595 956667559 529676026 163085150 865108141 964651534 742291784 973379123 93637148 223567090 985819877 548685794 863982893 400647276 511475609 381297728 812516056 696554132 626056549 460241316 915998664 736615533 894765987 221773941 314699178 122637825 459634182 501505690 117472048 314180268 124437284 260389195 820466824 714738347 776944988 781558808 321662304 270618269 931524202 676365493 991231121 233990587 488797620 568880194 926020924 306119012 873389414 165189192 253771329 103771013 147002410 263056305 789635000 22084567 437288373 319260276 927881505 359516504 459517245 615665235 431927545 272386478 368219644 873787055 937408043 776120113 168964135 97903852 583960753 811170908 193089656 674354869 944400623 26285466 358854792 524846984 427359566 673957300 248344818 340802433 604558047 871730479 7282200 375062512 251337519 564126989 491071650 710818318 452465388 842274294 435823348 363001856 847403674 559004160 810065856 281716575 90594838 155208580 942868003 761624650 489794218 248225425 893713069 689203881 703459566 698436656 14451312 560641467 288263811 900367426 803217726 774619399 328287552 414385994 748221091 426436218 922693374 312297693 524963944 983549784 137972827 749022022 430034550 620600155 877899234 637246209 715779511 24432286 425524056 554065838 862691261 504029174 112856498 102470548 513469670 212269382 81438090 62136954 201808720 322805263 96945799 43149134 304050116 262140679 186178956 786267424 15121495 96169906 528365790 883108085 698966731 398996775 991677502 894474753 598538688 75415272 889200425 434805321 609412616 566274278 970012728 736847300 804405519 200382018 769645737 342211962 488073343 410645166 394566615 826121988 852596960 38682282 418346596 361468370 61623935 123497975 932477779 531625074 105400461 412377411 823286936 604113003 276877167 877323638 656778976 528661700 683849681 832460071 107887183 853405476 218964807 200972112 884768504 878473792 992421066 549709848 942307067 436566625 282657520 255687425 588344516 42309874 634078672 154727527 772737244 845246519 9638361 382396966 496705801 569543989 578135916 986273509 428894598 714000056 315374950 298562983 797960990 473616533 424770622 78591051 735577672 545276996 657332941 539656115 56299177 612107206 602617293 205407477 859110954 996361389 696514324 413611479 616948400 802429484 251758939 675215947 60582156 989640556 561538280 919042342 643506122 383713129 435962249 29109863 927997636 156744336 388402842 755327745 126807480 444479130 688225417 165013306 982042699 12871857 772429098 590542249 226420980 572210843 196722291 548807003 301747273 772257133 291306567 107419905 962151040 794768477 935452575 402294216 389201405 343128951 498742255 29891948 883447005 895126973 479846551 14157441 545324968 295065438 412330150 952333604 700370945 430763426 247143091 44347198 595978902 618269660 90736779 128595232 407607500 966665636 732339100 603412766 504151505 761672846 848768929 739958836 573119812 733390375 310847730 410385826 681521320 891539025 977128536 643339015 927722748 378798261 889247467 154244126 890649873 974835006 322972609 661741880 766137339 82439761 457809182 982302976 296257695 755086007 600785275 660628650 669446647 285087366 629117737 838598084 69082784 86103058 113954675 407868729 753619382 724482399 161160157 65504361 294607416 842960915 489702840 133949687 954675387 387322274 490808107 293728095 43249410 973640168 375959243 904094301 564365689 176361316 321886449 385670120 738835013 408900915 495238672 388586690 978221788 756469448 148186652 634482816 711510155 267277992 269373964 260313956 133103163 741262979 505549577 434960163 344407423 765382564 478548056 840672317 471304367 339157204 513521603 926187908 718086103 924750479 198877360 632819756 793823933 404298368 328426656 34174885 194161814 252239322 113194162 344517269 734592594 178048682 744505869 183369695 471763334 479612777 40251064 850453999 557996361 424347116 385602030 533778656 972753918 551940540 979445114 383568201 600912924 298186549 669246307 140785671 785362489 568489195 10911599 916488063 502723397 358537962 688837410 29203301 710697413 180744765 464682192 72217794 661158346 802716586 310114000 625199933 15128162 520149172 755776893 389937577 845859363 935419826 431824763 48377070 45514744 477031659 595277270 586744314 276952203 165991426 291368641 127420739 494919666 209380324 133464539 120300518 262673224 921406618 136649854 725776044 193016563 826302357 864305168 325930246 810412354 885926843 525168967 583147296 796973718 635673616 262664024 320684155 362903484 305550406 54310988 876464970 70707 29551321 710428755 674214755 900251159 212365563 77614826 560595217 89637630 218077083 697161826 718849703 954884329 398227007 415667322 293439910 641845341 970996552 121042640 886588819 711132917 922929341 217440434 46933717 219218927 968979278 371178095 356867811 877147977 164301320 814581617 37783422 586095858 821908887 152730395 132230359 273280633 261465084 676264591 174069583 588209444 689834289 951682164 594342879 395105607 422753542 25337484 552659278 404746670 477359546 723266763 670526192 855143824 804423523 464449013 894990407 488640722 782357541 99085695 885423948 426628589 781268332 85918823 472958662 155411521 941680624 136812154 870651345 358326600 741705524 327347415 896217425 974849047 53488382 525385306 396201545 656720439 994632006 68515298 650883152 68185907 257132053 130621395 670164318 429174449 423201319 836651522 915561841 5289797 379043501 317026612 763302354 982822732 925478148 771818867 586749177 486608171 787960902 447536962 995991178 348110273 437534303 396153998 305264216 246539617 796225489 743518827 1784847 421531442 466934483 442813761 865617023 322487281 932071018 6149988 996668539 303968753 80316846 299742247 283605126 130346417 12604730 644911823 480808247 450059645 729815247 82966913 797103280 445579042 12679383 668527518 929449058 367321761 416721249 988166507 748906697 264196339 905030167 922962959 35156669 305569974 19781900 239906882 551024611 582346690 664757150 976283716 114812256 172588954 269754586 938658857 123081865 36575778 546794802 365441929 435582595 360086695 142296676 99592203 166009681 876224237 903060368 404365102 300378750 305232913 511615834 265315035 41165472 905692477 586671550 950763837 24663533 95412149 323314265 639665095 612020218 193884562 884683100 773868941 475213914 448279508 811274848 223462527 368886239 330898202 244714352 783987768 397865204 970339512 419827604 344817087 666589532 573299350 421013366 333442254 377247134 506392256 474208870 592821752 691602197 400833580 335624639 998927092 211562347 639702682 496498130 114070279 253136543 367752183 490921278 889016706 477842802 843749302 883776473 253281523 337985744 75811495 492849061 876503621 375946550 262338901 539442389 607176661 256189555 94108103 628741306 762557292 659917421 662657980 114906209 149465255 296418500 557507211 394978914 878641824 570452525 159684582 18629652 645793466 90484114 389484068 95131196 55080483 177380878 11509363 819620281 692803196 709951731 248067853 319340088 594654448 63559826 201360142 893281697 869036572 512501658 53667635 965504070 917510290 216539110 952616934 367485876 718390687 106655749 373435976 119761316 917985052 396084404 766807538 714750498 247569950 79642559 298038127 611552274 470978147 237179316 279528065 83767370 758489552 954298483 790925520 781997108 348408890 83677929 767773920 223529878 332972543 52568328 616408270 778432866 615809258 941741451 428663761 566645103 679547977 577689642 700632658 316862396 147966809 26236335 203059364 6581977 262516239 724109807 491104019 561207086 204273943 714620739 69669465 764771584 201875789 291218559 717333443 345028587 501680557 506778425 764472740 426370736 929581036 852470897 44358591 871242552 171782820 423055969 307532759 273836824 680334505 501318898 571343429 768545462 364672412 617585208 289739450 606009336 242599526 965504364 64120054 360870491 577597377 73335454 282634671 488221915 855457749 633952262 748899842 168883777 122200104 856535401 766708982 167900431 486377776 931629060 559674537 32270012 178062433 390208890 293410743 171726447 945864059 527591556 209717966 800071109 584635638 125874950 442150257 50809403 312242486 935531380 117142050 909949889 20527538 996201641 90112864 300813878 207937226 541347942 905795473 561405559 743929440 897715368 524264601 84900993 650360345 22275274 877757832 387976956 811287592 842286351 103594170 393902035 232293493 89098203 940234184 64902148 637395937 634976560 119907775 814891904 787645023 444946742 211459517 757698732 226651853 8251847 484678933 386204002 588198789 322973005 808930618 631546408 694869686 245398923 713347918 413322386 802141368 771265075 105963360 983704062 343980175 333668980 658790786 356466180 320021595 13438169 351411978 745728604 521603246 539519580 624442447 971628325 156948662 255872306 753550176 41489493 169848349 667487364 269976786 946478843 260848061 531019962 157156690 154063314 812103254 111063255 298921556 647825947 669420498 873054564 271571906 227841681 781124894 12821564 872896850 41063819 43563966 755876492 563100974 203009369 871807558 844848707 403807175 507056733 849364211 566044289 855747232 431883575 43640561 963744271 140744257 734117524 463923920 244273479 673453693 29284497 654993554 30723836 89297135 888583865 272739245 464565475 379119843 52851315 227409342 328680891 165270760 572646973 839160369 36695564 474475620 631680316 264992656 562413265 423859182 324738396 14730977 38425189 775112737 486806228 142270700 835023357 630230723 371304590 895985533 656689074 966236437 442455109 527917616 662327883 52153345 195112762 779216156 11420690 885319132 669186256 707048948 131388276 675613816 116751595 675292244 267027069 754286798 414915778 409945862 94176603 251899478 297411544 35825052 660314168 966253859 643604816 933237979 752685143 295168860 123772635 748571054 226382748 685343831 436965257 675187179 453757410 940368246 478353336 851066584 988265929 332954346 398279247 796974096 472570155 764215408 568570544 314065365 684058285 474264672 320059532 954222004 505813149 284036336 979054415 599845332 492313935 750267712 494499805 483496827 83866104 340417782 705151284 329550634 683353927 41500041 160081826 679809710 60128185 399423636 918999288 118844780 229985991 281600092 64847058 995985289 311798806 273429452 391089731 968308923 917247195 61151522 21351871 480628430 738942204 142396465 773764984 369706414 314565830 211063031 543132055 525157975 333179545 873772906 563492665 296677640 130471463 520667716 926294177 875626984 210558184 159290870 43600316 890292415 172242916 713393151 212234043 81591066 200864965 405391501 612109839 115588157 297996054 886698445 726334995 823917399 857559217 368498635 406552283 201051597 108642957 752441838 482803423 464983341 724930335 639541859 414485275 122672091 36898277 485886412 97284032 820803041 454179597 202932915 530858293 484923098 27236281 551389033 970002346 905809624 727027171 159360870 817371032 763866007 682853519 263475017 116788227 103556617 656692268 604829284 545601105 350492927 333995907 470218645 446928041 687521089 679668515 687587575 692777565 178455270 288588781 652664935 682493970 193885739 979857768 867606573 601640982 683630141 590710668 268093949 121884803 761525614 29331074 487720570 235030760 510110889 67224114 870471414 180377685 484413309 203669128 886010753 826448737 205205704 950817964 750913028 283239694 600617394 370286171 394941344 389230647 116860844 807565875 286939235 300919493 215962203 697908786 38939779 418002277 880437554 256681680 527298764 760599132 357426941 486290018 343491467 669507986 621284583 227728432 636926391 1191375 707217927 668233618 501638523 850061283 731173247 165457375 616577322 448570621 324698216 922248924 276275589 110653473 885709717 232418829 753296198 154873825 764499703 830135519 900793433 679011376 856137680 170878613 686152552 521707867 588705647 552261588 828796183 594625223 359995303 757345215 715114209 882249134 83261850 106552190 804437354 366628887 701380127 540932215 150506984 608775839 215278631 327952941 492104166 424695573 928790892 247750786 191240810 997765366 82845707 262503913 276809794 976508562 814315503 674944059 986215346 101369216 128042227 801109578 1729549 998497565 487552968 84894512 799309860 935012570 872991733 701634604 214429196 36727637 641006219 488465696 763148747 606751899 439750497 295686683 941613532 587329325 586624115 175683902 86566547 206326308 718376105 687928714 146836683 314634560 416869019 290066286 750785436 356794502 246466450 185742796 627108724 121303872 91031794 176714844 478098895 517525244 33113998 338544715 385080373 191351211 395762741 292289886 756538290 500752289 601122606 854320228 158911236 283658551 948829416 187409313 228127068 779496431 799607175 421773606 605306554 489089337 288740501 549148255 65086623 837521872 531377804 563806509 953211211 969414469 384539146 254698232 649774541 96582559 305993652 94417957 911739859 21212418 824945395 59294246 775521834 433541681 114847344 204347400 605381079 442108726 809991096 657362996 536036483 462092527 299059298 831899520 10252575 45895062 183241114 852749744 698559596 748034644 576091446 255620488 527395633 306031084 161801057 100960403 232248853 177791804 955229675 515552081 268817165 395868148 217436314 812968522 603872185 548291731 192574178 801945641 434889225 652089793 676364176 106551240 80526516 620592062 604948873 173880660 916275626 356068232 87555572 729458538 605603689 64780099 836816500 522128193 374559310 964995951 905082577 384867873 975651150 841114692 322644600 880110631 53633058 221633919 941859902 571986306 973130379 540189213 886418568 804106288 863818491 42440888 47611145 354015413 5714095 860720174 438069999 551379892 199490115 417025287 774374330 758283751 16279205 620307992 615125083 302969947 104132659 404300248 297622919 290361635 128820503 916610243 76356090 246983018 164160591 699666557 335244173 984795137 872271265 823250682 890152178 403763227 405338897 745179002 773161897 250137677 586298981 776341213 239707698 33712713 339813631 530003279 401097620 959043175 562380485 206513150 511176828 286342835 599804867 531839491 125085127 585763704 267640234 704088127 601668573 591790291 59703163 531224776 56385647 75841156 979229712 315335491 106294727 429955042 598499040 580416931 273599562 25685388 577094639 503525644 623023252 113318081 211132234 165190742 717875155 352350701 196855343 106991845 852465189 103961735 785957669 233090298 91993927 587497212 326002000 619094976 694355396 312104270 484442270 398661866 166908427 919865670 960866862 814873400 352472458 843026059 248678178 654961943 424900827 460821692 411541004 845143892 429020073 337505176 182173027 218781265 401542284 14019686 201646694 76803050 176831588 634804955 775920493 779099957 11023721 10926705 739435827 849512658 132822326 499769397 335767472 37701164 816640015 423441759 6223527 763452586 383020989 303764681 706588140 648161519 260946916 977272473 227252473 696472196 769579572 187729768 790627717 524281349 445158761 675340108 671041879 69065599 721490793 206263321 749121416 274061820 486795133 807210292 151762537 697114944 202114301 157736274 387046830 147887557 854719655 725440223 170250651 382847898 930331852 653292814 880585276 248349114 956219388 171359259 495102379 939345861 22252849 968029267 953959863 43536103 15759536 333635982 163811286 836235682 233339826 943766864 896235396 488102541 17602069 298420885 124284103 697259284 478061013 189356230 494182253 261287938 640011260 556209479 993260290 659878421 798080327 849720064 252685969 594584002 381278534 489610203 527358803 361540361 289020590 115533121 162979258 179436488 291063652 796278711 555176327 83807148 732561042 564019199 763737649 656015878 2050297 513663075 740011441 338155564 399904167 373800404 675490558 853018215 340110854 258972519 801225199 900184737 423226971 51939796 561733683 581395146 361209953 702993301 274334483 158435696 915303718 813402355 643410126 231944776 846644071 514510626 41631348 783508065 906747672 253855013 181994594 168358411 945062427 783477815 283552909 770915609 947283427 164424978 878863499 457429782 249211709 933456710 828783583 425616466 281328138 58290052 412561433 186229569 815853558 986786075 413158588 281623082 989421554 340271236 609858676 252459381 301142159 84971881 967439676 145760936 26643212 793358301 770181709 982092379 339209800 603981272 109565763 972552684 448959517 949353661 689006026 600846257 193439570 488714949 16604079 43098436 890692212 901889739 221106729 484461657 433427966 880565416 109544921 394554999 955715127 705414802 291455196 301889070 953078533 578639097 40602696 342080531 503203783 707331052 805854566 657510599 658692446 811218532 755236589 211149414 253192546 836209377 405056254 534475065 417226256 139278372 190037929 505665403 986185958 4549565 638617344 867892460 858924201 854639182 956416226 354803070 789333873 353198562 838606605 529643361 96550456 135615899 202101305 167452800 249811786 214326843 104816553 567676381 271473565 108547631 237970927 259936481 583762115 106847362 161664918 588019548 903003381 230338289 938003409 510531227 707599279 870080350 168841851 719528888 34846935 536068837 574185721 624963331 746368175 695641790 418835558 691427442 688319464 832686441 577565593 511032257 705801296 383365265 316566531 874027343 360609574 43113818 634879378 564230749 948579779 188478103 253881115 900166950 192011104 537686213 698167865 924694245 785807413 147167914 499194697 563653821 465153724 556138215 979087815 222974485 728583109 271184001 344556778 150973095 674369697 700464544 238687755 108405784 512668919 435754401 670559310 249272869 14660600 251163676 599225696 450810977 53809055 749080616 356469545 836359957 742038322 250439373 975772473 889709928 181974515 408061734 395714553 10399283 504149491 712383010 218291447 92568623 873105327 762981949 197749758 848646069 678983555 955684139 907249710 894218905 16254957 620058701 112053841 155312497 793828303 645444245 176261221 701238342 203630396 81944661 671736840 332121063 451970420 939469612 528750371 237547982 707084056 279521604 308782934 465829385 906163120 371645499 20294464 122596757 72944955 784818367 650983518 918610199 954628610 705593284 291606504 7482248 748170076 716798522 618124013 50140618 474037759 106359485 92566143 248774403 448602236 500587614 842571597 6954459 28275620 346946637 679275866 354401048 854773478 792040977 540021705 240222846 565337622 623855219 397050529 127475980 291923165 625217203 870477136 148803082 937678343 396222751 18809193 53883234 731094536 992958244 565129027 771644102 203995595 729171597 629619435 168137438 884574056 200095227 799413728 222803514 586229935 670660581 313364015 662413058 617025359 15473309 239523344 164826903 942165177 772201904 353479649 847242714 77436295 366099802 894723177 323325910 221864834 977553227 969031403 875576857 950406710 256574562 483737980 156491393 655108097 548473022 780533924 185224023 256261335 790810351 168934422 565017997 518053867 367307819 34779489 733799657 996107158 655697752 195878405 791000974 662236310 904885698 840209403 341375767 785787308 318974804 973244953 586189163 560507303 401316217 133323394 718040674 253049006 471288064 908878355 542593386 991841869 835222540 747914813 728443996 99663897 471814686 877940444 787079668 767645488 698457576 998911098 200139099 586309535 74663795 955509075 999807002 994936853 827608613 720181154 839754646 162163213 495610839 762399028 756306261 82014176 821571684 751851498 348831767 805071218 610891569 500008062 800806760 598800689 493124064 352736799 219867803 792148398 53402612 744739826 782842631 36295994 537302735 229770974 512335842 950121559 229091771 536196280 435228774 374923983 475431955 67264720 93767836 787393627 347775558 350885241 76723206 450788730 307793388 119182169 250089173 152010536 931731104 479166387 601437862 384853000 991729697 814282212 782725681 845304093 865634288 594710711 144055746 575512726 383120481 63978699 627454650 174938255 8480393 687520916 673440975 521646308 185074519 46449203 477694273 168649025 148216049 824723600 440013344 743495234 901748234 168071028 45010913 962089094 855654026 540867853 807539888 252269977 784344463 319156473 535032263 425566932 445252323 758600388 284623592 695986050 364265663 300213336 389228091 427347810 401627190 527258594 642495537 514121441 690458690 661949530 118245990 991838135 504423817 792178169 638370524 698082418 622585074 604145279 373014870 360527147 16748939 930376783 201096219 489022763 947406142 361077337 523061068 881327927 784105280 618156707 433827705 811875901 615501309 987098002 576056063 720323287 14615379 485245934 797641320 908918850 994035290 611280981 519703362 534600364 702565248 923756443 602923188 647695383 615346132 103252035 319187312 897474981 501407413 685278702 948765480 727743179 401231719 659658642 614299416 872371238 133659050 599317017 633179530 671748056 695542502 570118683 404015891 347754820 960309503 128007273 410967019 955281980 718307710 552281042 345703224 918051436 287082088 668919951 77715392 589173988 920531160 629907856 671486518 818315060 505720990 146823092 908974195 305297245 496358679 60747279 495283912 534213029 832431733 931936853 423409512 741719710 190642687 799744679 210086698 212239531 660379220 729511500 760309280 22342945 750635310 345149652 932040871 538719078 690521394 786052609 509152386 779155925 283267536 611742043 727764719 120998606 168197682 326859462 49994297 742687291 921616611 492172589 388088807 868805121 453098694 758560581 715700868 756177046 992201753 542063453 892892214 661477240 75573343 662789685 750316186 148689554 306676703 118774408 337005669 649627938 951627468 849732492 703872171 559507871 439148459 969383188 662599198 39189411 262408358 418679874 625145177 356776058 13386546 963116369 416332058 381210756 968774349 750607335 294004416 806546412 638740537 786955433 133023887 355314607 962755940 732563394 186447818 841532463 493229095 720364006 403650121 188737653 257242095 471293178 557076409 998939275 610508256 541942280 511613751 453592130 17278914 119597142 506257517 413563992 596167601 219989219 557756374 202509817 999968539 655891706 996279472 167864036 94922441 821321794 356520462 328602635 336730791 995784149 938506308 15825298 719343606 745270323 749177537 934255563 691248787 85153540 874463115 637826574 279013112 819719291 771058417 861963675 335851253 352410201 225811608 412356797 566540124 847389852 896493540 368846026 69112750 169371927 533493455 502008811 217071871 451142259 696757239 392196140 865354760 736482717 976148066 3184208 349101489 720870106 149121085 879012032 729657288 158745033 324797863 10722352 802377242 609040307 252406857 69472108 950837813 943145791 324986912 185590596 327175164 867512164 983635019 451470038 402401499 905878823 797849543 276488465 990390311 362986111 113096851 930686434 86454170 309181304 310246155 740788275 65830231 590742893 65448871 179233493 692025217 725856614 809622480 96876931 811189320 435042946 812065732 733417393 941189821 625143779 296764896 819979838 88112691 500454326 709539391 817514736 612496782 770583647 666095287 454681853 882552088 772987112 845993831 725345250 558951146 367238197 273658918 742090973 449782736 350046871 465435555 201030567 811488903 174200270 231714199 687499139 747900230 325913432 103069213 267898588 871929828 963344515 383912138 488397 958106188 648025312 13499180 327733887 855142400 790528768 365843053 33053080 849366752 805037506 693778821 901787082 188885041 385297496 373665577 462415340 115753429 312661662 943434067 300766939 298789262 538338033 837496430 70597279 344108848 156810064 997890368 155406617 628044908 576847234 17052638 109267033 831662576 839669300 350039331 792781374 912265403 939091650 759476793 239099058 5873185 497705075 147270328 227249129 816687290 115141700 956558188 186286699 233410043 759962493 274993805 89716854 86745982 766574183 847348481 687345384 959435523 959421885 975842572 397677185 356767514 404225644 286478070 533972268 160809579 831041820 270203278 434541908 493303436 460147359 592607106 246623788 888245289 709796797 880111956 730574827 941709652 307485313 862152751 391140412 61182121 671000778 198027018 475545261 716014263 389742309 178410709 147037472 557151364 4582312 646742353 248361634 957741877 90942441 469829618 756426521 95310720 912935940 861471269 140915070 356822012 379266080 767902452 752662248 807362048 382348646 394252716 243380338 239898229 668351454 702845265 889038530 314710245 879732509 436032371 102347047 514212509 765734786 911536871 11386111 218138774 517687466 210431021 51119684 229165953 731977701 178774014 809619515 942117023 493619273 513736362 747210687 233381489 465965005 349024236 595861447 415964516 301974490 163189159 912003779 341054226 813043430 107332292 573245160 6715383 194541147 118092875 626036054 299549655 916917023 354265900 960652719 995674268 500534352 881741665 355393566 990127439 178868921 788451654 62287947 848906448 223206149 169906866 308584671 451356280 388457275 555440411 718993830 577789930 652652671 779463297 129222028 840260127 884738930 761636991 592530580 700937956 51974853 491456415 757562682 395938011 454973717 220147174 860729270 623519337 814480011 682330547 39570110 839609055 379870658 44591089 913359222 189391143 202231532 453051777 751034361 369544073 850754075 413276600 558465450 953752054 779800459 582081976 776616485 115199178 523522226 282357861 722801080 768895832 453521619 72077561 74428141 39323613 700969213 116944304 323442346 32502224 293143385 198836913 951886381 456660085 416879278 735070615 447081469 498891540 295381412 267964760 530652079 957807699 231789639 221983801 217718772 253697052 82614144 569114583 288767472 430646641 254098913 218369171 530423775 516756032 209830289 962113720 747360980 733801256 859519113 685578723 521625456 876037245 970937546 629075656 770666628 316991749 448866572 452656867 856452304 920953157 875172407 920862050 927651849 791962781 272590934 134647721 677377821 630134902 704129216 968041623 579006701 367253078 790200272 414175667 673991957 92092697 475600241 386623941 589079408 631414600 473247951 354560465 904684959 55609232 318474362 993180080 905759533 320981138 964449573 100845655 227024794 378514621 228630144 138602766 45884537 686098057 827693886 320734777 394534198 788027635 134011657 882008403 95736772 457199241 235817547 541293317 818428382 475552214 343147013 58296630 374228297 547721179 425018458 994403849 334915146 400963416 638491429 301955950 133655950 638193775 241275312 224213508 743475771 418443939 841583474 132431853 416272490 792618030 882060255 675619687 289700966 381127297 970314242 899834352 378127929 639929763 142716653 13088559 984790376 527714748 780066564 219950126 305529128 723683436 835791362 947079452 18165044 526694639 898259626 423062230 428157170 860999804 100438707 834076444 790247974 441935712 925669690 818198116 648746166 199870439 119852048 861821039 382934558 970073690 641108969 304289883 703377228 772394315 880306158 953272862 33068728 448156209 817754125 469808624 294795886 352041501 370085664 25982486 670717950 936976117 982006338 241486169 898834494 458739471 643486458 354155426 207202958 724365183 842631976 181809619 316361893 765499927 137176926 515538593 711138136 579009830 431974549 418239126 919578750 244865767 541813372 415965178 648502435 319773248 384198228 576503676 934735577 627298953 651995898 4396532 17282119 398159845 70515776 730486645 565760303 840664913 727488744 495670020 345452175 863248396 85962837 418814562 885678932 422561599 405905725 507727660 136266404 489379876 427742343 515309751 379785373 714386713 143336593 660170239 802854855 771849457 73442316 369269517 537010535 877971263 966915463 407492787 557794872 995015210 455710104 235957657 316333931 674856425 240057373 303188982 404468672 863077259 658628743 196187337 191496355 675607435 227202207 642690007 441255158 288339434 322015859 671918728 476310600 343255004 740963494 488852716 681934628 251223698 235591166 644941177 869219763 126204677 992548020 290648564 381893795 136872443 448499003 283683828 190570345 177398073 633645206 730868665 747853224 448396409 528664135 360136834 160263099 258600186 709685850 471639634 462882096 492722708 873733801 671876894 701677720 942520405 497055769 608621389 574071473 904464679 152555664 66811741 313411822 336410201 353512134 91276653 654880453 533026342 993532757 591276599 341511881 989523299 391960722 760087861 266924215 120022989 53790243 21346350 586601046 95782777 580058053 135811355 881660206 107120578 294410533 203440965 590239811 903453741 543990681 206415450 183463407 130450024 112636234 995649670 639661571 20083019 147643761 936209610 897990144 261894759 445542057 600377952 993982600 833037304 586476082 781125594 235224573 393093213 118166756 982635461 414123191 944163071 299855776 317440391 670745774 556158681 207081877 830361948 532504306 472508702 708357464 186349632 853374450 8179429 848517932 175052640 4468698 538038125 844619371 268504847 907441507 695824349 866156447 579880790 385983486 534287791 658898793 382800327 455766453 880413187 385848973 560188727 512238744 802429519 331559114 478634695 421902777 455228595 866512377 294383344 825948161 148547723 407815511 860804972 213883391 41619768 590354551 592502331 384010869 334065775 443038830 968300849 720882333 897444993 274294000 270696391 223613288 372985600 37901501 339654250 939291423 550480044 585067021 968500437 456275356 538462723 651267158 192291889 176151074 225864633 789077795 263735911 530994648 268831301 267557523 920397719 885251777 391760031 500720353 86980424 565553914 799581552 282616096 150878803 34823122 351468758 130810747 446913442 877810535 464882262 86025361 153907173 728233521 915179790 13897022 560452916 186194296 683009439 159899271 793120814 545090908 209107070 671374793 132165099 906548818 784324338 533241662 164045527 652780326 280576611 921272505 346617266 288919195 53487492 718001480 337613931 736716998 417127618 662964764 937019876 186389908 974161215 551739496 874343832 261213054 748257217 616154774 892451921 16242737 492761289 884312879 158679610 418641620 83085002 914984262 951238525 635536857 19551952 583261678 410910705 484033152 554211756 432634006 993111907 640094131 763710031 190235601 389603159 717967934 795981665 149634878 257382710 748688927 758918127 416871204 576962999 925247434 375975460 425916502 83012456 731543369 165828266 321522843 790341811 514397514 645278141 908363411 280506363 91870243 374492404 303471661 735990092 67564631 418476341 463653851 807775428 207227675 995419442 652482939 511272296 713827855 188927155 28111392 636713201 749602387 166072751 620407969 865692788 992469385 421330755 560031180 319453663 879891587 439082436 854450196 770155309 108365002 486990266 518183953 733418880 234740547 561944404 427644013 49158705 983432346 637620667 173953731 27207679 559814562 904236014 389919729 271945463 569269360 78092559 562002142 194686206 855489919 217310184 289886093 805875465 189555792 181536133 119069025 913780127 139460595 317587498 250012570 539624580 927744804 127750202 729372302 571675994 385026796 105637527 287966585 934592132 990286610 851161214 218384066 31309227 353599041 42629613 459299042 164884128 954652826 932597859 438252606 771761243 956694197 41970314 777794297 72635262 787748019 197397997 661502891 99670325 427323585 574903345 664089056 884795342 980945377 234776882 263904187 873637722 998962142 820626518 855477885 459361511 801987194 648423031 412607441 334920292 361205394 308380777 779964701 386297376 976857475 47635605 932544563 535783388 454958193 816985075 661852954 529533106 778382085 310657603 48404827 804739855 546796799 267062379 981409678 133866970 28345801 5421887 49316801 742264695 116120534 868042088 225289117 88155468 467538786 197879616 568056547 728885366 550151497 959618742 6844130 57701691 569788886 304910262 242393357 260505780 485759629 295266514 312653612 177739773 269644118 497438112 478592575 816718619 834426094 401297226 354558979 867564845 143900107 424307684 388712417 46697136 105936123 394257206 229825683 548221351 490945679 42738534 718891975 717852723 923063578 157907093 348013305 865895961 874962669 733005226 610424631 231035423 849158830 71782896 971462581 718595931 33474346 204361865 164652278 286691373 159581053 846807095 644711578 6722781 166414946 123354002 666624743 754927288 757331884 578444805 218680618 485543974 772659360 967773793 268646373 226425866 12022196 409950650 346836603 134839594 70966189 965732405 229748057 252189394 176229461 698183264 441104277 403887290 617880429 277499373 64828865 69079570 18861727 390327647 734089614 168365326 662166144 355062628 712037265 737274149 110264644 770476115 537663973 945800946 955675775 463264295 536838272 205246270 264866839 36940560 927524081 891254466 621552976 209856279 716237887 698706325 274258673 691902234 452101819 973819207 494875366 218735777 270499044 106266062 858070554 40030118 379187104 18292246 454181617 957886578 106968170 360486129 520163632 436885834 344603891 515642386 429104833 601131852 514141430 806663377 867617133 366878472 352660177 939152283 697359500 615294147 358429740 584623297 657326001 948955026 237386471 617697877 997649686 681495067 862648024 625819706 764888146 30829253 191727983 413789249 879227339 893074922 631638707 419737649 374905400 76539283 537299648 874999385 918344938 688961984 579897648 96994 884337328 864073145 924198114 55457508 326014796 904605855 538898104 412515392 521754060 741103342 546069063 601776804 411436016 440548093 340542853 883744180 629573922 392658473 815193027 649665594 725998656 172701730 597328462 228452153 341584127 32804556 183762761 760827595 806598304 959359459 449966305 117694660 466243000 89441673 708595894 242370908 424084886 584935794 171278599 368730066 480235437 554634971 434488838 524581777 315611607 678772078 296663997 99218618 107230743 144554621 129225050 194424948 457712425 890934695 906881800 729813458 312285553 230658765 485933244 804029677 709250966 834663743 607136982 543901976 371287501 805387261 191780926 525235326 916201095 669951300 667406479 572379305 601266664 773558472 743350770 934931855 691155440 42537998 367977166 815873902 26431578 116016866 624144691 988161380 754570705 643833138 650671979 130227295 604421566 890730484 348660861 421047803 689320090 419771427 558106057 447665100 94516963 256955211 414419534 59246298 453137254 581262155 366385533 294786300 147513930 846079557 596248597 429247033 129825347 388568085 327419553 808857448 402115420 250303130 809935165 103515852 903053700 959916480 428125559 919643962 310162106 389080843 506725152 767055910 960739078 175466851 417380768 884748096 12122136 601981648 385748419 137503376 845367214 41354785 714805612 174307897 975128734 752545022 58120843 381316311 545188091 62158664 346409004 327210025 985439645 454569265 343380262 854310642 723032017 223857106 880597088 186019913 754195009 333333091 286004057 722829685 212556463 542652180 340644096 968568959 726597612 324513683 830305195 40660676 962747864 884547370 430448886 286341038 156188764 499321308 889810180 480624619 899760374 325254863 911454726 839091671 117889988 213417457 161989291 292179632 891217761 699732050 605503349 101331281 402833984 569399882 778582483 144354369 108851982 23345727 291632134 744643095 111376315 253007992 266539997 905156533 623447086 247224893 443144002 844722044 579658280 111855746 834281185 93641661 364517846 103777843 610004473 351823360 461105756 888897125 299932595 54783035 731852854 844867648 349521563 962560459 761451297 243870086 543785151 993636860 585961829 331696108 590954019 248747307 484500636 889241253 971504408 530315018 780004577 253243075 968083736 593979967 399558739 644362289 929588099 61532029 712562574 272386673 289535540 188048183 428943449 699152227 407905330 608666811 831073197 552613897 581581637 70069769 319946061 536969619 884259405 130104402 849566494 786514732 728938343 763443484 903640735 313243507 570199995 377328574 93415500 839940625 733549860 747776341 821014611 541479901 572982099 47342434 636792395 902230977 897724087 399368287 538397082 576713081 238946474 37802005 560361597 318385335 976773649 887619919 136816306 967752445 241877994 487948885 904190449 559615707 621862139 459568791 961379979 302439682 907979081 63924660 119269851 586220432 220761782 476057764 718862534 484488303 501796421 769142872 591081442 319673049 466670893 230171776 990779034 158340558 308247310 824989099 169827396 641184386 21215789 587549998 755134588 470559340 216312716 419269848 371621419 468698923 687848480 582825673 632612533 61116359 859275232 798638643 760224683 802345638 68415739 942964377 881009276 715430720 568440232 389046850 380869980 289581220 419270319 62632009 21336995 78999687 28511078 641069497 986305156 251990415 320705430 628088724 711880527 857289723 514134978 59875652 814596870 671612600 147470695 696180569 79401869 984277929 727437760 593874041 18136194 279173374 808702012 348306738 520649150 743858047 269101854 923231028 698167284 129577526 403676092 813115416 1357206 472504440 924350532 906229740 85251033 955027502 64594753 12322032 167545329 480750583 621298133 900319959 61179745 863764959 822644763 599703024 874329313 780820556 754709576 273567681 102117175 60683404 434911379 896398906 225181690 729914854 2035939 682346067 482364370 729357387 335365575 660785933 483182633 638514274 161660956 758704921 733735360 820413372 901374129 595688374 227317208 322965893 885796393 744036198 808310196 962126682 921685895 933161249 742215805 741360698 152419194 36839758 616343620 500597681 921149934 767519453 16806276 86565257 416029235 939609588 903488015 903077241 529224293 26970906 999538168 78808835 876785754 850794659 303977067 21881918 509513001 15694921 200964520 164778143 711056350 956556310 495103602 64576856 309570195 963717100 684891612 55080585 58502635 916120011 74570644 541043333 486006228 454051628 122229883 354215296 652091681 970031583 279304805 163403842 617905608 312189248 479285211 498367857 362987982 881904591 451859912 331805521 376515412 87222991 958837214 639301029 826349648 552239426 212058274 80991338 761453821 831636306 581801291 142432565 7904948 917368660 78276127 786118175 979996184 74934901 596256188 573782232 689635804 557414351 378363267 659516799 251413259 429122910 308525385 415105408 536311429 187690944 214234114 612627226 633859750 805064975 416242413 568629133 139035143 522404174 277434094 169064616 124951348 284079759 347911336 159474748 60352436 157996756 852130454 73056589 253140316 228028373 516128449 687198805 455150955 297337550 112982382 664202490 801506790 309293242 355036236 700795995 702558009 162679455 443160743 855454866 164328779 544153504 278471401 678679371 695811118 525086324 212827309 262610066 3543718 28435763 581153329 269692553 687022065 214157661 282062135 447724955 836753583 293537051 572738801 912849152 555239511 146289435 773732810 9197968 983973622 883978874 9005997 401378505 218636459 66113045 413996058 872561931 543728368 612658455 724188186 684174559 101164808 834843446 513424595 688193776 888091536 792319210 127759399 527895531 851225607 288818146 855027587 816141319 625631414 713073224 189647657 731496424 782273155 831542155 656519639 244537051 95205402 158422417 86871056 181868001 446265110 842849206 414969647 340373892 958198154 87253643 344946239 183159252 522044858 116641887 361216975 692636528 746178903 843673302 808038566 984989149 507133219 307454077 224381897 546640865 722652484 572919776 852063373 705558105 527979608 982339278 338097080 994935479 920540034 80154070 574093402 86387600 342468590 722441867 839839762 446177935 495936154 975758517 662559622 520142061 868248162 855919061 218995914 503537145 56191311 254824710 437698866 237869262 439629658 986106283 24896737 650964982 871310712 553709456 176705416 444562942 303683397 772448735 589633818 157864451 930713825 466917873 297219655 126848534 215092185 46612230 930551544 860636772 925386071 807849952 891207929 362090989 299178846 914724314 439985829 410974696 724956540 54534844 176338203 637656415 460469766 191345727 723247720 583999389 250468567 969318711 907434359 841419298 696612051 82969193 658000900 791901182 262962997 964559226 851799679 696374978 377749796 416717873 341517490 609610913 297786429 518044604 619602008 340700734 275742022 717340330 562831034 567428831 923326071 913268128 128540742 769757336 752872547 752843412 785653647 479999648 807870967 544706906 259501945 205292812 732066919 190864028 134184706 644423603 585286334 931987935 155604153 20307785 17356504 706769380 801283735 379624179 707419017 389474639 392239750 224209504 467310830 751734165 689180915 770921906 736777606 230594712 912192253 852584775 666871119 25277264 187923045 779919275 871309592 86566631 984928107 854999370 354574904 465661962 981689237 52135774 870185467 432224228 606038969 552802889 145144972 737860336 824471330 756505573 604036175 400080070 426002002 787888193 675497341 256778864 99972649 123148770 450798332 385892017 838368964 707830734 962625230 467694877 69541522 570760343 585690367 645314780 606211090 475449545 997450508 848498770 827194721 535720816 114282153 44462749 146049363 78978364 212387518 529755345 650156547 334141759 194298200 133449572 103519113 941071170 576786549 812736681 556661955 137624065 848746192 261273165 997080655 454657959 594402198 561480309 717935448 633212847 70320639 13326415 377904740 639337907 531215656 654905339 580091541 559196399 413451496 992197583 959017840 886713577 656634890 161183264 249099283 111718637 753857552 258165000 721123023 91628271 632361744 115381705 415383222 325296031 571858628 449915977 354956520 440465871 823844723 964608319 373247317 159246324 348756007 430096294 758751880 445513486 905322959 328089858 944070787 899460573 321908274 259436676 118662307 202279215 296016321 967055422 152215474 142046721 724523856 959811282 160888592 841915039 71156052 602227368 499924465 404834043 973015981 886762452 855281820 448030865 859023332 976818485 885581573 164038028 601395732 907630610 311454868 662015951 786378394 957838149 549084049 975189936 373709082 153279742 191999485 193467578 126119306 930157402 236690624 771335950 761335197 716963823 960920639 589592686 846369606 969876088 762501520 639844183 922099303 497283747 86858153 402475205 325109210 418510063 12499116 443090733 551927349 720257317 615010547 729731297 761646681 293404875 631757100 953844822 947583313 269605991 619288872 128808947 26132304 7539695 350444612 64685492 424028041 896178155 260690924 232628342 602653690 312752202 122777403 915823461 876515837 481741034 957794003 944187558 506606012 212780011 588289815 637416839 703178209 21350269 398747260 551262437 498237542 201558194 544898932 340563657 900466004 155702983 729887449 876172763 91217660 85342644 920745870 747891438 250114193 285796137 880664602 266451602 669472926 586855791 528659559 443569678 664048495 296309094 617068996 987314489 640958546 373428056 427510929 812209322 843149288 315775876 848963341 815453663 670340332 941588555 920703391 52356479 667179726 30277421 592459207 522000309 731151452 617153089 390008283 485807396 998434660 665938270 311492064 349779619 965446684 243827267 203386499 9206234 667439763 584331151 933212283 801041961 749615940 974833590 665501096 657913639 982248521 157449946 605218483 839641905 103215089 14375066 314709186 229330336 740058695 334668292 489474237 7179309 872985180 936476558 905516943 470097079 904290725 57436540 430310582 772422657 91250249 221812035 187891503 657692886 883100992 174043319 735277817 963577156 85422456 37694932 308488370 409042419 956700637 619526876 79908444 510696578 520994282 138971372 49946319 599914582 199018910 500774302 859714043 427653633 898921269 528611787 282081543 817666460 960077888 7141500 909873645 214778037 731926232 22811474 68256115 753794151 907275406 216196042 945382103 775215153 233598838 527764175 413046790 696725856 194807880 463156188 496399162 910906104 262245704 446495096 471568057 614522196 869697280 317646991 885563632 596277022 581715283 535134454 898380407 787201520 109926272 262580836 859998572 764856515 858342312 588600337 486261798 350448309 579195604 272285862 486562568 694994036 638878066 936961103 999021573 849742821 771263920 857459097 210103655 20981879 871106352 473325673 198349578 538927154 387438813 653080701 27052182 331389751 63556061 422334351 630072817 858173888 1143715 167907020 834591957 321259381 890503844 977815093 130430522 261920706 863960722 147744319 888786577 146460983 283154243 184283667 545668404 773202117 387104050 659186460 955003557 979416583 724699664 87330073 230861890 263657698 856770832 728375886 432887620 543636013 821585023 193362399 919697160 125241627 456914544 147486781 76793175 632972736 992150842 600352919 828350192 447477536 929555648 438980615 355676239 516059107 258212871 366809410 951015172 705492424 105970184 905645032 780304270 912544634 484488687 249032573 817394476 677198463 509885357 763531057 396633748 314503901 712123396 524719097 2624079 418191346 207423042 342701243 517506301 909859612 23579425 136196385 99674722 611281227 2544628 722233458 584298774 993445881 604349361 834651611 249729686 824354556 1715294 787842163 117283524 355343577 821987264 888550899 67177898 714993955 572132608 811679388 902554850 296449665 583227214 115371900 864852077 72254594 948128230 992589638 344192795 191887427 175603265 111137479 952982489 518193046 626949439 548734922 336878070 848426372 641386117 256211440 371506080 523648570 630076190 721132242 85307502 501314672 414673804 340517498 224888858 851900142 947286576 927172875 910318936 990911966 520866956 783475556 533469996 923109271 695430513 671016988 273323901 646734515 463920330 724805474 829508346 928686847 961524254 990486002 642502361 376681360 354640274 573347872 847796515 774827359 124248047 605017502 489472077 682386510 18376689 497447874 351492329 95834092 644543448 994261148 180199654 477071272 647806640 199372918 40008923 449873382 371915765 821129363 989929169 208778125 114326344 767892694 391613712 937140579 123128780 387951240 367381505 355383664 494758256 437722141 995634639 714001927 20870529 732827352 537304528 831973718 150353934 47787250 269811306 270627618 50356393 517053632 186122564 111154158 201547132 806660511 687014341 852665411 496606813 803279155 982797273 885152402 517310191 726225313 148026658 566184049 375847412 75774857 413489156 433235467 398407719 866305018 962181381 940942423 226462499 159809687 755866207 769804443 220527032 768676315 644232365 296312042 916488545 962046678 39317 449788129 692514850 264167592 974439156 358806368 96583311 705014878 639748619 534282636 853557159 147070552 847920504 835410845 521452943 604743519 699846738 806307547 242131251 800696658 225754419 120138495 986215896 741119394 747788162 23958277 568383052 653665244 799067400 44047721 574994112 370337827 610102193 286427751 114545318 190715794 284019906 646368836 618855926 759022452 815732032 697289938 209297243 721776826 312684521 907459380 546026053 215218226 390761148 209057858 443675946 410954028 618196505 24226749 795749650 20958190 391088138 699707840 566809352 22581410 627532591 317729746 162585815 298454413 678725283 747768001 592167097 444195763 867192966 383368792 809072163 868095818 819207195 864539643 934299849 242628477 786888872 266787024 914026936 125414867 788088385 413600695 806573557 19813207 620329990 417869778 692299014 483344057 20233217 350195995 211715216 16890685 314962300 707296938 119558042 547488943 730678241 874286085 478148655 102322256 118838457 845521330 229573022 69896108 136585721 608988129 797971639 275030873 254018489 741712309 550721363 288644809 816649528 622910516 905556019 31637008 255669796 562935041 282270947 391831349 65226484 290083270 431060062 123751596 856723655 689775440 199316770 213037238 280079521 83524449 30012351 329218250 343354785 417046595 916047490 455194134 795240006 701161467 709529887 314615237 302784221 784228819 850882157 175661017 747316859 685241451 655041575 329713540 106412476 437252374 118286960 790143452 646489666 632781606 405601026 252640267 659454802 679721641 64613263 705676339 65571905 63889876 346338264 199438749 970824326 765440560 144729518 375118816 274580603 671309150 905835762 692361498 290655901 171963490 564026082 199547577 418751064 592787077 61274414 968973733 135397474 652549174 647205458 308177103 338193396 898782986 375755810 745517982 62582539 819347967 346501165 178215124 602666308 243600750 978861270 289424903 470652661 54554424 544800705 610305445 698714656 903789684 335055317 660849145 185099035 712899120 412923122 21089947 396879827 978360822 906640249 370576013 641359202 282199604 553157636 783698547 804995552 900573959 139851508 565848955 631049338 32066269 279726468 27085337 794568002 738916957 364009212 343699997 738648506 716594169 952190087 699809586 860562794 613951828 38333347 858443344 176461109 637410638 236401982 988936025 384715856 158120893 590909542 405454073 868232514 231820170 547575689 76823878 67567607 591425852 187815111 599623418 675245853 956914416 603687774 245595982 289256801 277908404 534301035 146821938 695026097 671012984 240467854 586872067 683340653 425752915 714912719 716183362 974991811 205498262 890166708 192242894 888986033 57442032 342407863 530024942 638271370 135909139 163209175 318024050 927263848 548220913 809535478 700330028 12867359 476801290 96047178 265501355 666780351 930997616 283061045 76014133 663430658 916240135 520994972 17502227 482236328 676547424 450820619 680378367 598876092 457821620 572144443 598387350 990990975 603192234 65816132 932446466 906302189 480468164 95570410 263434593 750018795 25212495 447937492 614484890 652595383 738774072 248301141 760120486 573680455 763073320 894240988 727881575 789334766 795057966 481585340 648326087 844415538 400932958 525794188 753121414 250070130 175381818 910657484 560836938 582024029 501596898 679235099 40851157 526574518 647600599 346228246 375627487 827243875 650893898 640905322 469321866 840010942 371915259 864233667 214643908 480271421 313598786 301537886 498876557 460197303 639798313 323774155 414828587 134808781 795493521 111560961 391344055 417845572 869503990 458603460 230064370 264205395 374440794 264596250 182394299 704521260 861382579 137949785 445976627 106204091 472201045 393401819 998419723 988865428 138068857 852343670 305870516 967636382 760986560 951004235 816299045 920047854 880789708 360265238 766329768 541645417 981739427 362022633 432495351 624939668 927482658 251898745 493445375 745313246 723554930 540834341 228055025 910437824 559139569 248558030 438055201 145256917 256423868 886417349 132147334 851106494 861921695 653666634 242577589 918199108 257270487 671213349 970534189 283176583 441268720 331105602 615105922 640141415 668534760 953957452 114034299 714166621 221909817 384515228 678169943 198825978 493049949 787357258 753795973 503728784 282312945 35961158 465863506 457636155 402278912 607163446 108005276 761939632 942811644 167419368 807894691 610938501 618887152 950090369 127611092 876368927 803188590 345609823 431700212 41120894 896511663 63919193 765149522 240523510 651217250 970552345 139102502 859714690 753895242 991150526 340341395 928729022 446027631 755034101 574408949 299213601 558828898 593192628 53727251 856076586 375251685 899735640 178803840 502914222 515619385 535935641 708004196 328896852 475657120 257920093 492371547 831143448 440763010 321013414 181931917 590388375 583173642 41432442 607387929 337229994 611917653 745033144 117314234 447295376 48808950 441224878 921046954 158282336 900453295 257384867 772611648 396092930 185463075 392982885 820646418 976066120 819906448 519938529 446110480 365432232 796401199 316238720 390738355 407281317 610591759 675310235 899871501 3679195 426225294 679277872 39716022 468516960 302702025 558163430 240013266 268056889 146420280 552411392 809852659 249302152 428219456 544624929 807284975 792384195 418354909 671795946 73512837 273336564 584539565 530891914 436930422 540688090 22488917 307010170 840862202 257668547 18141609 192393019 609282511 976566897 462072649 377972245 942109651 928698932 735436387 103976969 717825723 616592509 713767693 568635796 509272222 829571487 306615245 143348787 755507048 78292289 23356177 382679585 401949486 640438420 948500369 318186694 362423375 138110122 43735861 325299732 649993934 94105914 409201123 244337419 321875118 723620331 871961274 631811330 4400856 34358860 442731387 260375914 979553992 915005627 222737065 615852881 879167684 243921619 136840831 749150530 172948123 194637029 960973470 483323628 587452016 314119599 881266201 579620017 266530088 920256126 349020923 944827343 274373428 910224657 7702222 576577007 458808930 450465516 891400781 79055070 665772089 792772021 377723374 996332447 245365513 172757273 588139855 185038023 648913823 13383734 606905790 607164973 699086207 498519017 594218586 74901335 620774531 398816467 654070159 650419759 272727018 144944659 992249470 496038346 528653565 926006455 228361962 549352036 172254490 842248220 942245270 741567759 591768274 677267074 41094114 195415730 999342152 217369347 195990109 217025524 927696652 534938841 596749906 565577748 319505019 900461953 170720982 342846394 555471008 466168242 799777259 410478761 472461337 554268121 526298841 98459445 343750347 199367493 328474904 312665639 540153957 788719622 327410872 412745241 841521312 507236387 765821358 996683626 915288226 95796949 52095358 627753851 511520273 30690406 595606310 176946223 815999957 883244280 186920376 405659811 256845701 497427892 539191969 415262437 270869387 276078225 832403636 758640513 598353796 486874879 446085956 15259083 999013345 862971608 596776933 37482983 993340354 373444339 501935099 245313187 746519884 343352795 695281649 759812947 942860997 97097768 425928616 777361555 193449157 672810209 410387230 517722220 899182042 463785061 317785519 639474640 821612011 189177326 994703291 664065345 524531186 748688559 845233160 997671751 804245678 984946512 475084867 493104138 613035789 499861471 266625247 813779954 395176502 643478599 788987307 912402029 298255607 733229462 362771167 645543219 912270729 187373572 155161592 717397173 187636151 763845072 361716239 128458149 153959385 171596417 573480204 494028784 940840148 930579334 47239912 976593371 228421939 260411419 959587531 69257149 784778069 325076648 551876064 701114124 656718292 541027193 53466754 3875988 725109199 579999808 429425686 578750378 442166089 727185021 884066300 362458201 205914760 658119720 419694416 672547692 424671554 722454718 206159492 913170072 899002672 776905592 316298667 469706983 564452635 280100814 403108248 607416386 807080156 161297994 931854012 367941194 515008652 954657706 120107375 54568280 786840370 827509005 828284630 56583970 8845639 337417954 102798158 694502208 153367753 193837998 340870125 894003334 571748435 252762673 356921620 690885744 472588423 929708706 866215269 52840183 275406137 807684200 88734577 988536078 137956819 482639047 997116124 503117456 20584577 194416002 855833011 583645284 166410913 329013010 639750908 974535365 28762071 702376634 424997440 384124423 886564326 684833271 962274380 489233205 688546737 565844660 117537716 223418085 28105220 697172001 778991238 95048829 338551787 568281860 944368889 826737291 88585194 10746724 233187144 992062156 543457517 889793760 534601475 416877004 851040582 829085588 747356344 598617575 545480180 538145801 382336522 239588200 333768977 209503589 420963501 656461395 347989762 613789265 73538338 961377841 973208848 148007086 31380011 681467824 149615347 554700716 129643589 293399169 240187972 366022241 118893927 91655221 186920817 967540114 34921302 61897516 869760884 724065652 586611453 614758199 195201991 889953191 550667623 13475279 695683122 439353724 473426526 886290116 832586152 582633933 795462777 85066256 700136753 956139271 822367731 193438692 46646810 375795921 562522059 124747228 441958503 328239199 637720253 491556135 554315561 708788974 927186102 300427509 56263837 327387027 311914814 401900454 78276743 706707217 62014136 783829274 514097791 548450300 553122223 530452236 591812612 108244466 658714070 47939425 677406667 758961012 650773502 683655086 876855789 450276688 712314542 940529210 564350483 87983900 289176234 275010995 592611176 304663878 782629054 818989026 208746037 458809071 594738910 825777495 242237273 864273389 690964530 900325371 684876759 544457079 24356648 651823243 960119665 180002946 889119479 42633766 426539901 814519156 621391056 456605433 223941427 432964261 990704695 439969561 119867676 877364062 998623803 211605922 162072376 436426469 870544516 162259131 742714508 682516493 797456346 489749491 247148235 297252362 717520859 519010744 207209178 559206983 6805559 718033196 754783936 638501337 166694929 358556354 161659242 917302499 690611765 8924382 911497297 222047815 705390465 411321835 476489174 918669079 321676833 511457224 612701088 533015310 564828289 344710159 927984932 621245749 94943895 758597816 920114876 222734498 144564965 719942218 335590107 25840350 241060067 546780035 325569592 539106426 772307337 753924733 558358553 149268198 701650458 858258487 969911699 149754834 377087565 538647528 528113597 987947420 725242074 817985380 760326798 402246115 460764239 317951034 220142527 143769363 210353472 277429785 869918325 40920938 335329832 568708115 725024724 426626586 32231087 178548223 787667112 451927502 922596417 80975133 642632667 416893717 312607776 549506743 883216390 723981009 596059032 925401765 173469014 988394929 429091786 168375776 264021502 316914935 176789758 234958516 468895118 808937241 117845435 894067241 51499351 578133830 265703384 381294257 507702331 107358144 721156814 470132868 132333049 132136327 862935751 684748058 627305840 444220569 980933066 638865820 67313111 693340201 916619665 297299263 743885687 310263580 255621792 276129526 918105726 241982951 1346998 618660787 741540279 539511153 140762093 450759650 529375816 444451719 227394640 224437353 777178216 677463812 302052979 345809565 863834841 817425635 401238164 60369220 549666645 61842165 162923352 167274124 791328012 235644880 264862511 863218479 944973817 194994085 42457789 375245541 761125266 377034952 653646380 934302469 659540834 603632677 888440200 656621293 633056671 364911199 842974817 968223221 761807476 950028566 639020329 476893552 227497569 178172184 755725349 79802304 132494648 273330283 552834404 862319561 594994951 856959394 78914537 823161258 737307844 923312139 679629799 737236472 341248206 521680613 709653282 510909611 450830134 500023198 830140487 939446107 203216976 739993846 235157569 340143929 752972643 978129977 664087075 240919625 912626073 736373222 420243971 948702232 183707245 331629793 324212668 394564004 31649330 855982829 189307232 93784694 586847794 659100468 875575060 681770878 876745734 497407801 350919115 891026631 811584474 570067283 924614965 679192925 26629003 182013247 445852137 850706736 937509609 805898433 414788759 872466508 69784801 299914848 108707162 38086701 815491003 124112644 131752842 400973368 164364901 558623152 143140833 7190065 320226674 240255946 267544820 473937605 819712932 145910585 511620356 60517370 762081111 67455962 108762683 573445280 962043871 449894753 735512642 291258856 302159908 128978438 120835559 34601352 819810403 602903995 195004285 559609084 690747927 684361922 844144139 924381255 715169878 200506116 961877325 537068553 281997830 360273188 144796319 399175273 288325773 927637868 448627652 69544440 987180618 431101275 714467925 480576822 764837632 225280391 794917541 78632521 385195633 973494611 636934569 895568428 158957163 432246744 819611829 139787958 266890397 249209345 689294827 792991995 815591513 344422020 297830608 179313602 563741683 373846568 146042746 514480686 581883719 531889931 193693160 655393916 743042526 472878999 912341082 311809523 439869219 675632626 457575810 921871354 805601357 759596757 7729289 619646428 996470715 611336255 241353374 938414693 384753145 229523087 363702772 154295162 851496183 418085640 640382162 366102554 726131286 802971042 957128293 683185213 423203 156601993 449160561 827154821 868779449 160084670 186486695 981962998 305794142 556777516 573903301 832531422 238573199 774359337 80833275 508178375 983962178 554446038 145047763 265550381 863510243 742700471 259961378 384019332 621210690 767820282 751589083 538636490 376418255 228585346 574732616 427476821 111559921 815397228 724909683 61594255 527248874 638537566 949173948 150929052 161371896 812746626 239212613 293703648 518639304 72780630 975689960 18013491 228170171 750578651 618915576 735009504 463141171 692295878 842043028 773090468 164847276 79510937 964888718 240732392 997180076 430901687 427006615 192761001 151097715 627697962 85340048 127460192 13337390 703045438 519757052 497405135 841477850 596639453 310486504 742297577 441128936 184172065 198618738 841334835 965512796 825071689 308366498 72842925 40886879 295037225 325634426 273252368 393677346 133408753 976559523 298578226 626392580 325668032 681561029 712300455 809842645 419852039 144819294 446126718 678012984 475773091 799650848 350248939 950795539 95914675 178270621 231856548 286389217 243309062 323181122 202609903 90674080 65077243 412662680 717632819 763173903 905168485 902278844 218453894 177708418 914444906 263701795 319100535 252707413 913342848 424959687 517189719 101352193 921882495 112295030 636027048 237930706 818759554 221442078 22453063 880596495 888912336 907851280 336886968 125831076 937057908 39349997 369895102 657923430 226442242 253126923 205589283 269826408 629656819 55057327 760259728 839589278 927804420 363366009 261887878 897308236 67553447 678364913 673328474 243708754 139219352 982573552 638794675 35280000 680657337 745281170 133145892 538898024 312478343 71955938 412228357 32601305 80219773 78341937 477107540 435520205 454427482 808966110 556392407 694063422 447173003 842003554 313403802 450302906 476802930 808374626 251421298 100928191 263607357 357401514 982991098 978137742 670432332 206394050 116818503 418872556 80462077 70275733 243347188 176036877 309041844 564852316 108838885 19880709 851740297 519130281 254991243 813102543 181009118 984214658 370933420 66675952 243987986 436430103 427410513 264336775 583664916 824079396 385087750 979294740 761480655 489790188 4157820 606312329 442425848 950826305 618862458 538005084 575825755 937358348 819386118 180339074 286208827 662260322 949667007 419200671 485730357 688827279 864401246 33778106 108391694 992994505 576311613 813678331 751813527 299750960 469274216 438825690 355206726 665606980 756891599 225583427 585551728 26745485 164223450 636737912 927422067 814901362 305536624 619242121 856746746 225047866 470330262 651871960 78977231 510858443 852411500 236883648 264449814 713634160 600890182 311184704 319791190 988182688 570722443 370986239 729452705 658827469 564652308 892682811 86596186 46488447 60979193 128594729 942764276 725231135 492059680 289185714 788939115 76360153 571165025 457689442 877865821 995520956 353496293 531725039 576466976 356009751 762518 570400579 951250495 424352934 922817166 847822097 456800550 999969365 45209779 952855165 847963943 113482245 398130591 945219165 814189950 55157275 948492048 591878345 339060118 295827684 909766761 41680406 159887462 846021626 649260787 42636444 913739575 140515626 747829286 264016802 375718520 115390606 146229012 958691254 454555425 785062022 756674875 336981493 970437818 434125967 858901397 754544861 58094756 213787888 991061381 387046019 348031151 309130512 192195927 104661749 754277761 765175879 535544151 898917442 714178180 342054371 740343088 443309919 299716468 991373842 968077243 959702218 306389256 827334124 768784045 22512446 546379528 952479817 723118080 829706969 640107069 175011767 721507822 51055633 207748896 859185405 365034762 225081668 649712459 771833692 97069876 848917117 437653439 786736575 77719550 896296602 977662354 314344919 183633130 480378404 706520228 590700346 266396465 623948755 677867214 553087293 42178075 740158506 548023992 698495938 58701480 690450401 459194755 161086374 572102744 564003862 870783589 131253512 24778951 607300865 278121020 393799077 84580858 347696709 984522531 187908323 943259305 363025810 797587367 676338036 798890235 34392390 953577857 421389126 318331102 590419234 50047284 416893460 682211938 727596224 273114800 780312629 800760606 866987952 318979970 162852607 209730730 33907609 977940810 233187268 702350894 779832971 780407369 313154628 61806774 293951602 272273581 496140563 624676190 835938050 339049518 69734614 461342512 819421740 662393218 630167035 502050243 932276592 456418301 426057926 372573043 71124750 529755619 210245943 310456199 470691042 821906612 327441956 161702218 790311142 288840414 41153458 195660847 294822202 802626388 654064685 208928223 356093286 573898860 529517111 709928840 426292911 574678610 378989889 317958209 422929665 758818818 835012018 351427039 797576153 96487928 886635947 621638388 469670752 541443724 651306170 611225896 330712231 565807953 936023808 444096748 64324661 265395211 727833580 643891503 540628955 597228458 852509601 254854436 795759798 521892170 764561086 989059557 910097690 523513002 239021639 842132189 65987679 939703764 264519211 441929240 134523753 503089777 129903034 403977959 498613983 260670558 781635762 520436329 813245892 739672849 845135846 305959044 75710664 195427466 282376675 600097946 18409360 467058150 860736373 19719783 868259105 662415750 349783503 179229703 635247187 274005348 17644851 730188546 371865527 999025814 709046557 8690970 137403570 818665762 876122852 825284924 603949138 174216956 794666772 267954682 405092012 268098031 848399715 375674693 482500047 876448516 398785665 521196390 28748109 798212136 645891356 262687511 413626356 893506169 958289734 264217057 834592398 160027435 515563207 343463408 428418369 608583070 966485636 374443907 197677801 219568096 849282286 38037350 177568976 574450497 624483588 997438370 824026597 309603973 496759365 922728312 701982363 761804003 58469244 987279644 513889406 497373925 100371966 12558540 786436729 98375481 362489220 172031752 871826346 54505884 744890783 304018067 324353877 92359823 822886705 132731420 289532060 265834130 433393509 953120043 982576614 271613498 523112331 801911918 213235091 547624724 874455329 313779733 746090209 555051735 144760598 367546463 659374093 527956152 298789641 883421777 768131073 249184974 613951511 502131860 366695454 171176241 901018133 586961434 923632774 306444563 817577801 227354463 494462804 587892638 588687851 375868732 695234482 603378525 222347248 247613930 145762487 123770446 592932468 621517007 108843385 934265094 72748941 187447543 612058570 276540328 45073740 688554218 14847294 298641586 659722870 229904278 790247533 258176435 553713951 327941084 206109518 268993583 288117488 221297711 759071691 276846068 159774367 61584849 953483419 202932661 326381360 755533248 764347407 654393646 795486632 978488656 21968834 429475854 437977361 785134160 472763263 869504527 259997639 861173937 669928767 598844921 237469736 820455613 288293498 182935273 919872012 173705299 721686961 805385418 383031806 566651372 408892271 336399585 391338981 635545508 517284777 144047231 677082188 40542791 400538329 576935582 173153935 262407437 371224599 897641891 51812131 761688005 472053007 353356797 228087660 130346176 194829348 822961031 394165033 531925919 712343484 453298946 639157855 552280394 618080564 962397345 134750071 251848596 341177458 905470697 257676386 20624950 954483471 406206784 840279874 657936539 809718530 700793906 452381716 862805035 846232926 411125326 998658286 677905246 50938776 384964574 399491658 92313698 12224993 559813230 984060953 53943847 363097192 914390784 217793962 265367363 165610858 324535922 179289770 850607050 202003877 811313949 62764724 587105257 664313238 578113966 697258905 902999279 115279399 435740666 1842172 593458401 290966673 772488725 886479615 707286634 246428382 75101142 834354132 46355820 771889030 559536031 135310853 40237427 763014333 350210269 818349105 7835106 207040872 466464322 639359993 496081305 412648340 476282428 692011328 733124367 439103376 473082236 802522447 335733084 795863261 944441936 477705322 870159132 128714358 304217247 598444391 283115101 32452961 566032163 228709420 408451427 387462997 47113386 122373012 91441223 557867558 492022509 513861070 965454857 33383160 907878743 383147787 297200079 605694314 112335947 49136808 243681213 655733559 462332289 299124834 825504601 213365183 626864353 901355467 180304290 201671737 575850326 732481669 137048372 997269066 394116752 610241039 648347953 507716201 316332831 570461344 100112048 306359688 157022430 871902914 719692924 23328960 579462990 393296351 547378342 715377698 7909435 252024538 235404561 97219648 751493827 329868636 281677557 568172087 756670690 849980977 739143317 759870484 356645082 228627103 43655532 843055620 924631871 664111181 480065631 92655747 91112096 723828749 90813083 665321511 607006942 539813808 409965058 826460346 831121236 593822799 288853801 434969390 153651855 462231873 717301987 698130072 833310097 741879835 867077718 889998918 951618616 853872745 442451197 737219134 479335208 912813450 510662062 27976192 420837834 287680195 448215970 622775901 572040695 841468592 649122098 120260112 265497668 892727095 9449907 702365496 246697785 374323113 690574332 501343509 285734466 698237238 95623098 40061868 170817360 226690951 794794597 283242088 64735693 799596186 458842264 857353985 498031738 600676854 997816033 539649486 261989394 465676837 129141049 547089971 212881609 897239765 61347139 156353068 589623157 277631470 515364199 537515763 419914620 27564419 971604514 928141167 885124502 159791591 990160577 44613543 259530095 617777988 406019299 745303344 641820582 577192547 939587822 739697434 826569597 261776923 564266543 725465094 553447386 193653782 907954182 296809690 892664483 97318052 759676071 963793725 115949585 488768500 721113495 614475746 275132851 908712207 151956103 83657653 368105976 53979980 474727625 23339891 539471032 226200847 333733188 166769340 9183717 136215684 137176126 262722005 137852029 799948590 321692188 834230232 172139274 661997410 554332628 845428048 912997392 396174992 389014849 721408519 15503998 534513815 470236273 97913999 939307695 734668844 485934761 2531367 122154775 31849061 126677375 502095813 813080583 672027324 309878439 558101233 549700178 862211330 911523357 366349716 484514984 160386218 192881633 97295132 536514286 146687513 210868237 881851320 699554965 47778319 145491587 865441818 352325558 985077258 318783265 140212148 683535567 312842475 657009867 151116652 215262669 324283354 129737586 560570494 628658182 327550167 407956315 479979153 247264826 481377472 727336090 550179734 131657037 850159801 485823316 735117152 584806022 310293878 995652976 595927682 483511223 470905352 713005642 193742443 207145297 624204445 605141512 538196220 724736858 828895141 801773496 314906449 551135268 26870520 389905588 401742753 50812437 449030534 517071761 942500160 316111193 239079036 393791338 589183216 457099096 611546421 987917429 565409250 610674845 794264435 454619350 24647556 785862268 15311191 458862311 186684841 356635049 566009087 114131672 536001403 829864628 894484188 251015655 483205072 880255766 923032668 224694412 764832233 656176333 918094766 152281214 373584559 485849033 85263481 962878118 983599042 362866247 140084486 901067803 654147 921297418 945175869 506203428 744343851 289627161 69682465 863938952 186966543 381867327 185625330 460852587 836369539 965864675 673104063 457993295 407424203 732294863 184635237 347495612 870023895 136556282 970227456 667219016 917622917 124199636 786796482 838297528 247948311 90549999 910679904 886269768 654218292 501049107 921102684 394699720 274430387 742140949 367615662 777165801 896515957 93222530 900311900 979555916 626751535 294210726 48886475 762202120 910868118 293004077 990292575 454192329 315535132 515139792 114715170 467601238 634104223 64710693 825598809 232906045 641310286 246788768 748706818 572908560 650948540 458232025 566308981 970071854 383055662 318771924 329544828 57494289 695157527 504697693 771873676 441089051 875689648 417497874 766385394 319746153 938382051 446711790 679758976 652730382 995245159 919962716 653894109 774062724 562568280 128673652 900240265 677708786 20264465 114897445 829862969 851542164 14880115 82266371 13968193 209504380 956071402 475087957 213982456 681449875 526900858 231756355 724659773 789727881 937830418 438164549 166670026 665632920 218825763 990229942 535389371 891652977 330756861 106896797 443972758 850201428 368304971 401713555 59389098 372196914 920275725 361188517 640293532 779011927 739258284 783904530 774001045 70825362 790970276 113860803 485519948 341341618 576240248 3459493 62071360 959715951 830950995 512102061 574593590 797688154 865375501 587524463 211676111 123671019 500018745 751027752 42247237 850587003 25420602 518705805 601962620 161028220 579159574 925823275 823343365 417105400 299704358 624891749 873194553 874664928 479355699 363608631 211436983 555676488 12840802 672847141 978240838 829210635 924662750 931464823 953085466 664370331 829110134 513458372 374268767 230880626 876938633 402304833 436221323 921379223 756085233 875391164 835299126 319052378 348308352 131076402 648493081 815161356 35687132 202327531 10122401 310217238 351855594 8358631 171430661 539108089 948784575 923231213 272636894 570556587 812063923 727123530 572640410 909361340 321725339 128746859 350757563 838298569 552409037 197080316 594228359 794061665 181408382 325665811 55757463 282019450 359829092 732084555 229877853 146079209 17767264 915786631 952723194 679771032 370025953 462176490 636956104 883147737 804787820 553548098 67886819 341224666 172486069 150481083 402563467 450883223 656329044 241207834 298835896 73762878 573436701 672328890 473588824 654824726 978604820 927473099 694183405 7686303 416098299 124779329 689379240 680936514 253122273 594445638 940276092 895063615 479317903 856976947 229364562 413003457 336436531 917626315 60289993 280492656 671176309 945582781 613283691 870811224 716298327 384047213 143603437 203713383 705579450 881296770 820571687 873967548 419434293 274507527 183862222 197860564 861978291 227755750 782489699 16529678 810345457 391177598 868997277 716078323 486720643 457171886 96716594 622858606 828211939 865890676 939293424 753458344 615356810 637934647 406699025 428394936 877548466 593369920 465687336 506524409 736869121 582719877 912859160 384534405 848817695 824543031 645314514 784908108 489530633 474193219 470947514 766379254 667153595 890709558 697709334 207669105 765358645 600099343 432737781 175943380 64706585 127729494 820786693 860239053 512549252 216249977 760380339 262629932 848874402 814031014 439419592 812741805 691846896 826494166 84585034 482058223 341407253 110284842 324930236 860152743 334846934 886071965 10218214 351061596 72751499 34639355 326322600 137604455 322203097 901809657 590392753 619146830 513796603 556719065 839404539 347799001 570746212 359623214 346064481 30814417 721815260 243300395 657845221 409986834 404911055 2568424 479788007 56812572 34226229 775867401 815405846 838836599 296763523 869796302 678328091 415174535 414896790 595096164 459797810 871850074 262295812 868193881 337417671 564780080 18503344 717138689 399906739 999861870 494958730 709567393 786804014 364234174 632264318 367383454 92577541 35899169 885382270 734752302 947231282 357534594 945175034 60713687 359806350 140587522 766969194 74356437 612820789 455250037 967987481 951910361 697195170 737665909 761513165 205736086 708840081 311586140 899051849 550825754 760412616 242974763 988407017 822492184 762578857 457583628 861666879 545570494 234389538 682479340 909249368 396205936 295685011 328207180 203201384 438922846 135452956 902796624 895129366 422674200 371386650 128222333 204511262 230367822 372570496 222409846 1231962 355751450 470241845 760668389 140953906 966473060 738752719 470444404 861323795 508035681 864886624 126986434 231983129 210287638 994743419 240984431 955817019 488221624 482507565 715777112 776047248 862921044 191923827 605235543 30247367 775813791 231880434 458551682 594792491 248153198 919362707 204559990 326917066 584213471 802049817 227609874 593057089 316824795 932235324 307283758 58392849 250317239 595047092 773172750 85768201 872787061 624946628 222617811 658646464 288266645 478809919 746457736 659105379 112132582 108209542 494392351 501875330 948167871 492271764 666033584 517169642 292949325 585068218 164386301 89051632 805396296 531002100 729978826 484223326 943401245 266243188 446802414 391601597 338423129 337171483 505716846 32117212 510078832 421477723 482579372 474163706 233090116 362881704 21744817 672844755 249432039 365884519 464539179 889488359 659304955 200280727 966775770 805821062 2969592 835722575 587282390 639686109 734211959 377524711 150936721 943687860 941395535 944975972 171106832 493345768 333614845 388067777 651855221 592966018 976104224 944200958 767139158 743131673 28568646 776078159 480351516 165182519 214796315 990004739 198364735 958150676 915438531 663258479 502916994 128390084 185845402 470617804 633914489 509903288 176469440 601032100 839263013 421460993 135950143 174852681 341748026 797064163 814964726 328677888 971639427 95165607 134771382 810309307 891910704 565557139 139369849 183649747 904818160 369096786 372870558 843010986 516635862 586888377 449885338 344112620 764272301 494557488 510400404 163346282 262162655 346970006 499278562 818325766 751633254 62712286 32361357 290401431 27732269 664503838 196040156 284344883 196942410 209187894 413693111 117355423 855933125 9629294 440506303 543921429 844598667 766809191 323371266 579845050 500099180 978167154 958196035 17299134 528017234 612997150 166858112 288252668 111045531 710510041 466085806 733815186 656532755 176795095 552691880 726470544 607498089 802982411 188415038 413215658 685018686 728589282 27437425 365753766 650995058 858418320 948090326 380883864 26299643 695616304 119546659 35432441 684431060 646460086 464711654 343426686 226733359 317036758 865013381 428323550 967023550 19960028 430661995 72327873 653649787 145075938 235374576 821096109 903241622 375955315 737043380 782055883 502814388 23074991 994661458 838881329 793308740 528402267 51461000 582881504 659518363 579286336 186151811 95802866 516195152 348406069 725828116 1803584 662468746 693244870 271852804 430414032 293870532 296936098 946625235 505376945 274771218 467286711 189483812 384920538 329475419 353828658 76136498 845042666 92197493 435441014 189331048 281967740 596681759 571167160 606986366 69504143 93104793 302122890 757485272 132160441 983635243 952269523 899989873 317983676 869508575 275495113 206428835 869355650 993899029 393122700 800458864 956155930 933594526 800931621 290691432 180873447 29841021 980121319 597832185 938261139 797878714 935280863 487825614 916804540 496044787 412759199 721978680 209412304 644674005 465293979 273934346 249219045 426488919 692586115 901384044 639434699 167006815 661844681 226846441 52553648 516920684 708268479 515796455 183815124 660951917 209742085 362269931 937254241 235387135 581376632 783526439 434607807 701065095 873956840 18119896 384835261 239047129 554168688 431858217 537305614 71074934 453603112 834756540 118881076 320429389 348835827 287220302 364454930 881376521 156711194 171642157 141137780 332299931 997343861 434900318 908860377 862854292 441362338 781537725 769204065 538324345 172013458 263023685 416531340 4197040 387507809 417903950 357551524 502748725 946084082 933887720 225390320 428820268 858199372 208148740 963582051 14044232 897628666 275320559 986258709 912346006 198348104 285966308 148432801 543636716 430117440 968674815 681332637 203484478 241511598 920373302 374839563 498851171 616303276 54872496 21292913 708249850 662355523 899614273 827494385 513632773 117307690 602614158 607658382 729269685 257918084 360249416 264701139 708263736 112221960 737762778 69740754 843450422 673029011 801888481 27599047 754068035 475844014 222637690 15793719 545853903 743048507 748816998 138419396 546850015 338421577 507182912 409244659 626459404 319943850 405855585 832201246 91419182 429593886 987506617 357894321 970011999 582015742 969047846 618292745 163977713 349237275 48393651 955391644 306657613 494419671 984124426 921636539 589533829 329468878 541701854 283851455 799749086 845268105 730601043 865701778 859038266 767715341 61509594 566629842 585806486 234988963 86170313 947211466 470732659 206044961 792746323 998572780 392777743 867559643 361687234 46338179 778483812 899883275 629374549 508510178 156013619 224751196 441842370 757477620 664738704 1154661 770182056 812036079 450236074 445487483 720210955 667656754 191179125 356529224 134138970 532385387 253379698 885512717 147991478 889425349 899555067 43749830 352798833 686432782 582129716 773919819 921052402 173437084 922402322 826448259 162751891 833404418 244145713 986775583 750805974 208326355 864421440 926396771 15009676 624389918 899405282 493933048 334866544 480441695 885522172 137575679 181991166 228624990 225911846 443601769 57620128 308033682 731288070 176858202 370179037 933918963 887474978 709290400 912452013 791546567 208931503 666797412 940855185 872856306 2714200 74822862 772427049 610017259 209302485 954034126 812071166 516829000 228937686 203553672 929564200 752187194 612111534 885321859 137237692 785583749 627105373 200468603 687729774 950914841 857361706 84199058 42116912 452087557 456159449 298936811 266389574 755813237 218421549 715764742 823407190 853748571 527874778 302655561 539663825 857716794 407582046 92189646 404025775 118887833 522050265 898383160 678001299 599812591 580582005 124977078 55981776 978572779 586078455 529356775 605561174 864417092 592573696 720776426 819430548 53145421 198277059 972041098 309495762 990668614 710819931 554732819 82372823 787514857 27417753 908721863 654054810 695675080 499068895 11012577 690671293 444640827 891306519 7907366 759035106 986245069 214833143 427871511 6189880 44453030 570850615 614800240 143160717 412432484 932486736 55258123 448081072 443135622 331642200 246684683 727749780 977822141 216919386 242995672 391842171 694302302 121849779 621024255 965198834 931703564 61036615 800146393 427578277 243161184 677707290 636286162 261784193 432877625 726314623 359446332 59766722 656405277 564588557 224368257 903901851 841467031 800498125 49831 685539692 750173274 375642292 771663279 626292737 365410957 959049817 234132356 772910999 464681455 268887741 731488726 308892217 275271946 855234573 912324805 513890026 263165695 913570440 721401443 969883219 294107851 29649290 535777823 893239003 944477034 583294349 866295472 920211153 589125456 643319598 351600823 860106232 236206974 825987869 555966252 314743565 484744679 544223478 108276709 41074863 230243469 655228993 414944946 749653607 383124114 408003685 255190812 876456470 428374097 521931182 472138222 1543321 81148713 383918283 59049184 852984389 581837248 280731224 112762451 937671190 130549835 678557465 279304700 19584109 686231373 819559459 567998424 103919046 193272813 911529208 396585435 585180602 39590092 119518681 38731041 559830140 234195035 407867458 717598908 965228933 682711770 734785131 377785073 608849917 233886390 233255646 377980915 456049435 29239661 671054696 799810963 135021662 404486757 123156022 293924435 957864877 239136403 281079554 870314421 877910868 269828227 419569137 912764163 782425999 501268218 611590163 774810961 785124639 954625220 621545309 990814139 341414935 957244962 969565655 406689792 649232393 396372361 544829530 71803342 990632469 88129322 748718840 507820745 251132531 288650157 595709547 365188568 876605472 966006531 797062243 646546611 577138670 148388289 818607450 246827060 660432467 674859399 854317279 983215776 444031346 765276717 903666163 804864984 759428434 256830431 885990647 111412560 408672628 569560314 837377754 966852707 945439452 540376350 732149696 830342693 451563747 907299780 490575685 680100644 92291781 688076254 845460261 297556571 223745817 396041930 20670209 301321348 605745876 674489307 903974830 329490147 806507613 971488502 604811837 522509754 827561765 837741911 759345431 810011614 189017277 370194790 693135447 445137723 635728128 115830367 900551870 328445693 529166415 579367818 279579829 860868683 267528926 816364973 203305435 133546308 196002257 991485463 741113369 639887127 44767213 673457149 811562370 586523948 272636804 18836444 191447251 576942125 319528068 216840975 256259932 335874190 104720200 124153104 195791031 275577422 171715552 311668094 331370076 936720475 437792065 732085440 364046225 408080404 395899229 174671464 26231443 182641860 954037927 541944958 974171935 144047066 33473443 201985288 871422051 430402598 891855023 950365580 306901188 688529550 562647821 574270082 782002785 468081765 343314948 296374357 967870343 391263495 530624063 448733424 71016512 332745928 824313140 122978575 951871173 209447709 960739306 519784247 172897290 964763122 868691568 991133642 686002688 931925535 315511372 942260476 70429979 493543799 869587691 972397290 341227162 442224127 261987136 170628824 805343830 249859944 731394276 338443585 13875527 759063323 951188480 741113584 395703810 352523646 893472608 620838827 336783048 761670765 717549450 571175347 785138012 93854426 244771520 288559777 42983568 539538910 683283058 352121417 901171054 144308909 875897763 533673851 132283842 283591689 649723059 128011631 171749128 349943144 288766571 574228577 23531216 239406174 566585447 897623158 282913797 414023608 587122699 599087434 869862621 599953711 495730074 318440787 52067630 425073613 712985516 329402364 547683345 168109973 530704558 687903056 284746776 286334100 204887407 135350698 751748811 632727130 327896168 675500561 376576991 206452859 654156160 353701769 807892873 48647150 585238436 473696399 446155016 755394605 922129076 579133088 157771488 55616713 280786762 13359832 45663023 282628014 127944518 255598747 24166670 316136305 248662711 9658963 327306763 316089282 796613490 506325056 687199136 414898014 233976335 849461555 310722664 682523104 286099576 339507599 704965785 608353233 702919754 55550661 48868625 147907997 402506834 185906256 75156213 3540816 626858334 791062440 747042123 944841683 57353401 685894877 475936518 793996363 825653856 65054857 809461394 408839382 82524659 113230830 859487894 728224431 104022827 570195210 329703339 980214417 553891875 650116888 605474883 915237844 439610499 482608557 155003323 869305054 686470554 8347898 377114994 624702768 458159032 19538597 2474897 452527634 378894439 414287627 538402702 253681400 609191474 151139876 736221962 129419094 169477905 277206559 614477729 749085111 694889767 725842927 659765181 229000705 113311122 832731631 618405744 842158483 177884739 807273056 677198977 475326578 200513597 822456548 60231933 318432798 836862115 631558585 683549668 734107086 501752140 381225302 839777434 701561914 654910136 74180139 930569193 170693988 925897897 518124538 461231611 448469975 57509057 735870223 315363421 748062185 791814635 33895626 434783353 519972387 465421154 844355956 245706665 469224708 444212585 880497052 493582004 516707746 150556840 803433202 347921813 839299263 189933965 925472782 80694396 739182224 379841248 721937972 580497658 676203757 429924837 579723430 170396128 603372677 907452554 628996984 700135773 280250316 554177344 54747446 980643038 180673414 981191441 34327413 997291304 32834257 808219662 145951468 366032448 76223431 233577740 792336101 14799049 268229368 708641673 183375072 685424177 277536367 77436985 17395645 352363541 895648817 855900878 650463597 740711746 752413887 223141190 202055175 620163319 958383360 212607621 710187988 686953820 783248964 783111517 236733532 721484577 977979031 60022187 490273203 399636354 941934377 690309827 739205109 690368812 186328260 603964335 900987038 528677505 441939055 119026937 572783680 632325480 700433358 743090535 452623585 552991662 837938436 907497227 410155793 148956220 936806956 980033078 914054162 352006610 689626570 622248389 159004230 466702153 945822856 542015427 585769416 729563066 815490975 281412429 762586191 135661137 572370247 826210303 100306493 171899362 992633712 867177912 977626321 115084702 210783075 658687542 408080469 827220251 110253933 784161790 165197270 241915188 160288475 267612751 262521913 767712295 799947036 92296524 719694154 869677276 529710611 723445835 728101912 771878394 374195130 597590993 451990384 643876058 537024870 447352336 301614856 618102767 74505284 142827915 359945757 926126620 579048137 526216335 288598627 969622955 940723771 509693173 685226303 594207958 707406037 485260307 852960416 43550164 889112392 810326635 572819785 839533306 530663210 182608072 563670695 121309122 657030844 789630684 470467431 127870585 188432990 488648540 329912435 54464109 851862754 86866105 699682957 114148822 37976486 737416555 974586091 759841131 206396834 984632792 958415795 263994818 500365361 313877312 161008 630879264 179631511 301291324 55312423 225163651 31555387 790492884 424512597 345712807 535215407 237470812 517094585 366455355 877897174 976635130 979544093 956132067 5709225 855462247 906832699 675497307 897084374 800042493 98859663 902284603 241052371 551768318 519715037 529998914 728684630 853249765 904209620 589024647 18850739 80361947 332959960 918543637 194235378 935001835 75633682 682273177 473055413 556656746 211282169 38312994 22826985 798875323 845050776 40858705 617649644 563423549 749469423 62561998 20802762 136020372 295681535 176415729 240296328 490083297 727054091 357544234 61442438 756208537 814932396 649253924 553718153 706742291 102793257 779208796 573243633 423073130 749660172 657938152 934595114 423870559 254549216 736848013 815393858 382651736 467085257 764747324 958373022 309053649 705657281 566815108 752368290 647358609 542312490 280462747 917564374 60642883 288228412 556667008 454808521 520353430 634066129 716052159 900089729 861934915 568282629 447778927 514750419 217512474 674989154 875852970 632818969 821774552 519754521 309541264 39921842 112811801 516389727 986673331 907559328 2957233 355451120 442720379 146808768 132562200 371851578 302733856 959964332 714987393 934484353 468823694 531453964 469842038 770902701 681057917 976927339 594736995 790315206 616818865 291129997 963667953 38901541 428562698 408524346 621318686 252251468 807916566 174169594 692435608 904763867 249668118 628492310 604129288 223085000 988584659 238815543 558331526 392293172 2994002 994760539 125275289 594473240 53178165 961328106 19265665 399901750 903461693 260437420 357038068 905983451 753219293 346940672 714308779 508389486 680908043 632348832 759771316 745146838 622610760 616687896 123603270 199884175 76805347 810616689 219783384 625895654 337333323 428894363 329607696 612442500 538052518 109628929 49174059 597607393 494241244 38221506 347807867 18851157 571592424 825602867 665387973 833115486 98016214 197867983 447537611 801465777 487790284 150797727 268260556 666629770 159596492 561102949 551972869 677214221 445581253 79303382 325431582 296112013 241001193 429310379 71212155 75865849 253462609 186975838 192210282 881948040 982955198 245878696 814251433 397539473 746011864 307327682 666242678 668572024 698842098 859948907 993590881 945950498 945500835 436467536 893339540 407183556 406782513 559127307 715903915 273706153 23462744 260044417 78473376 884019099 195828517 117731182 248592102 433565307 3647459 307594529 50928424 195231317 118708037 599772127 967883853 825216268 311971835 974117039 961613853 242702835 954303505 7836753 97933904 102248447 662806807 499067491 139127067 110463673 755148122 413556219 488094427 506522496 710171600 511564292 376865737 524906690 478354570 561033299 142751378 59209673 936825056 644339439 740370535 266454489 273405675 67959767 490626794 73612893 7194926 824207359 364309382 127056920 886542507 318294219 40253089 17252300 761742569 816025361 945403645 813332390 731356371 83500334 572874333 72052580 154179978 394339039 491381611 733114263 465987189 786318069 864021792 161237644 370001126 615648232 624240611 832458773 822584373 446852070 477655300 4230751 254955865 210231569 34978124 193434620 322738229 24969679 289803603 655170194 988117992 495965385 736517419 595690149 669780348 890582638 349201053 751471812 619131729 569907504 99219032 281189109 373888370 470032031 150313474 259739729 676298042 561984003 311774234 697708688 950056669 743432289 460077633 29863409 552979800 545121462 487305291 13307480 186932615 590913857 243592724 271423934 918317914 311831882 16730965 568456422 429540471 940349311 178028608 66581838 203919706 835028773 212371420 480692710 199474470 107680969 110938242 225995474 758052227 538603439 513191391 715657375 847325751 39338913 450891937 474939840 887898556 295477265 539598028 392692176 355863548 715848526 685202559 81161135 196828983 618281897 658507983 336231006 42735609 156241573 354196101 17138016 585903771 892485712 752100184 843916260 671405151 513741606 957958034 843114725 365463054 31754907 523893117 975452194 477795067 254087859 869178378 352164082 526896277 178933580 914308389 491661299 123725538 408705231 227341642 204081626 142156637 359930305 748396967 398236900 936700018 711351852 467342223 580568608 70327957 228926421 966458970 262743863 905434859 946924997 901066144 740466547 362837004 520007979 215158372 583910473 645880667 45060666 884763499 631466842 991352096 78134228 814454330 920387486 274800334 570864756 838687481 833816759 95343756 59435833 689591541 153226455 436586246 56867935 798159167 610693198 363174506 905276748 409494857 53241850 926971128 529185841 599265134 538894171 36973218 27644628 496874754 509533644 741554133 423950410 320704714 98682507 300736979 295657744 84820157 938230602 756928125 110197504 306441324 12694795 666117039 369512230 662952602 961242854 101503517 766582432 494398014 74996293 892076520 279275463 944320590 246617121 795911693 929194482 246218545 484784887 270087864 390744614 545870683 913069939 186965285 948859506 688863894 909259615 403940509 3091866 579944421 891143145 725249843 16362867 437226539 994896341 799107919 46768715 805475860 156738744 415631308 195931657 156647539 356074139 86217542 529803637 714319730 278964103 73454492 292351113 368658579 31981522 272244119 589134562 686843372 832920068 204501323 547569713 336234153 782693152 476793927 671401914 523894863 394710054 177068347 238705900 535159789 337942371 592957918 739218496 922625919 494269398 403682949 562315323 708991154 585850435 921278537 531338976 725025682 793871683 46369620 419295203 159549425 151937844 523240625 601079252 114034356 34998919 22981585 702065561 992273471 63596961 377981843 457887849 848821102 645183707 723509399 874571086 422675382 618162212 604870507 78359713 139384672 253304016 48163608 764331550 663745829 250328238 423996577 792316254 511325038 951144307 386359352 663578038 233417652 914685981 228631834 780778316 378706068 578178678 760884318 184390053 612630424 787343131 879003963 554660481 321783190 28104668 105144089 378826599 4743089 146159662 800530123 486402713 457766584 480715064 258161541 830814502 240784659 755960284 60516511 474046375 650057202 307362687 666463265 353699870 918159556 492305662 407221920 890316455 954461290 356727647 453719347 129710045 550973280 485123639 797345981 637703032 912756053 797877075 856834631 14264465 519235380 558618366 676666985 497648000 270086563 106860535 194741305 160551484 614873512 842429389 723023836 593553199 595986343 893539006 842660056 514982341 644541604 375848483 417226858 156698324 525177987 960477696 478654528 506595397 254375711 504864217 763307646 196971676 98450600 955112576 708564150 92081886 381448562 647823792 199736388 237642369 915868870 793559494 853200596 793362967 529684217 673901197 524321985 842514865 952496967 373569535 74249121 479782822 842380518 355934142 876308934 372648894 795420129 802668682 965031819 66200910 615230721 896653321 383913090 252385670 853943378 516018232 987094593 409920239 622982568 167428991 286242532 35053582 348947441 688293134 844010083 161934576 920062655 866600355 45186208 176612296 144400501 764579442 572142244 967828947 544527476 875809156 424052437 587607249 565907923 194090766 293680290 738942642 235731428 782525155 80238797 552863785 337531380 935057341 349800556 294387338 509303743 923657356 620607325 629814875 316171338 79067735 670194846 207854634 15332571 530911937 669337650 179000432 916039045 313485776 711634730 255108082 691250421 743840930 894891125 562808500 469095863 628853902 125746583 718825307 702511775 462876950 304585988 222872486 475905406 689110959 843959379 667158344 128629867 174527842 980909084 208677636 939097442 294596884 564234112 130416725 204968498 124518289 114839775 874207119 473123641 908697482 866344134 755912572 254851948 737120100 940402184 436499186 595096768 930653197 55729563 329907228 693543981 418434574 210786583 342058589 923008068 196556876 831482663 772785177 839920103 272633112 261721324 740801617 663047117 332396942 603547317 414613971 931777276 885037349 931594403 432356458 910072910 462637522 394882067 373619262 167085457 384243267 971233062 116899916 143361147 696717184 491362179 683920838 988520597 456568075 851415677 653066402 378725541 103800970 950715623 901374498 923407000 69506019 936975201 794191784 782793027 696586014 593884165 838843056 211292538 8456760 896001846 520998179 872556835 160527719 84430699 35788218 227540446 408649414 221537232 362072451 455487250 492402662 524434402 756794284 672063160 730576676 583114794 836308410 578904793 280388844 740543870 841739762 45804755 534867512 342214600 261846920 988856387 514155119 581015257 131613372 593413402 510537679 312021318 391927815 672184304 461483064 891924019 369425124 325169097 416849212 913812445 871803636 164742357 142145592 86137273 820604003 492796698 952153500 724320355 300197210 402597023 126999351 758150868 75349147 697148539 470153189 594758817 285563933 612800311 560281226 44777931 235096284 7614319 639013025 893117062 928481787 504881904 767403078 940686436 419643827 87144881 89711643 760819020 799752457 874991094 646597758 111723422 444039130 714017909 739881449 677125640 26377471 772299151 605657485 29869513 590625350 21357225 857202912 933274819 552183043 788042887 171752179 150368676 357139964 162679839 264161125 292483327 633203258 886307662 465714338 373438066 844874193 78671101 147140213 616102067 856539482 943721198 743260355 243673320 259380298 946246394 642752938 573693720 182486744 534560079 205338842 270686009 945935504 659173014 696899626 746849801 102787215 741468469 835055021 317644904 900778017 744800496 720472664 537058786 946571345 251936900 368403376 651580125 844275795 444650107 57852505 154210372 262698737 396078219 928320664 115358276 377086204 654234103 499305612 975336401 55584157 795773626 582796580 579828731 16841549 997374126 656887976 136737165 772084929 855716493 230190226 549083520 131226884 504007700 203301222 751698241 487113425 994139848 299890888 352263637 224642985 299237446 333057384 60549277 673505631 915100740 916647230 620402453 411393027 419163048 351791696 687790890 698922426 726249857 459505542 723434775 95085932 75816749 887985091 851267572 499559356 709364275 55649873 927707618 694726043 70382830 319760794 180320008 428307712 640486334 243339300 225432577 367774088 694872321 693745201 779949290 337534017 953321462 525144211 508600951 974323426 266195450 939131298 765853464 928210522 481595575 216303421 472836214 322328975 542162848 935899295 207432520 977135849 378737425 514625465 772698419 333313856 762035722 986233315 902059157 579505507 74570705 403450297 553170140 101440909 445632979 937675660 987885777 923135369 525682271 368295617 244268042 468056336 602643675 492886094 915334042 942037138 469851487 681266359 350131811 232076557 799793732 422202880 95178668 105630892 77305199 349996751 626884451 759406999 940893939 118258999 172822165 380965287 991422728 420480741 11679178 722187344 99264434 44924377 888537259 451357232 48525782 275443397 499066059 247035171 190986561 392199160 994337394 39696281 85145106 473948987 565309036 245506525 453600053 120350345 552774741 630134377 99807746 113677442 985117563 61018486 800716470 491406356 471179122 620789319 772178964 294187171 952741922 648152543 642971929 65527711 228795974 188574615 266887717 124567410 956401763 257232643 291560505 494013140 190837593 18348447 857084465 254967641 360810063 230725321 615398402 841281876 718264122 608993222 645013164 563053709 195064733 81212785 814113603 838701552 308499211 885399605 159118277 294649768 802658100 25182723 962918724 574336157 546900086 447797077 755118655 906289086 824508645 387474546 246770249 451177145 504705682 34840142 537258976 655068628 687788150 599340547 604931301 88250213 60043772 735901526 637312574 652566545 892446202 254082738 680263519 708773938 658641733 44617321 159319434 629196777 399151685 713508198 170609253 824216573 327528957 151197990 757856716 826653261 955201894 304879540 918491890 959153696 626524847 951550884 843779442 359094910 361587195 229167351 850352054 813519231 687508677 587389606 898982850 468357600 825093270 115449362 35610156 300121700 703301940 288352665 879193731 363625468 230717526 853406220 162256127 366660320 419641269 302698162 968584441 568009408 292487614 899651030 169858196 389602649 774925782 870379336 125702844 343631917 825198532 526189392 470240414 756285316 920760767 535869002 351680529 303195002 263001414 137123538 72036070 518546983 805459154 182985790 970146300 547699498 115289807 857969286 342618160 443090321 610282812 211020043 796968354 136814542 557346939 70374172 979239105 744717584 567376503 440358574 821932140 886637410 548167102 444404923 367733922 452487733 420608123 308251856 448792851 408939239 472406255 632940090 81102353 11837825 202110939 870863575 511213071 923484086 900939096 462101674 133628292 521323053 812869327 341590930 77611792 618358054 305266612 13690025 943743039 23533138 415371511 635515017 126552430 70219450 46718740 835939410 484971350 86457642 758516539 654810246 217765705 75183869 895358885 417874737 468954992 267048537 422077282 77322174 948975671 656872050 799005942 371778150 482450994 71856288 811288244 27584309 673982275 157745226 158216942 374541962 550174926 165336604 797085365 479940366 519982462 369870795 715063439 487403421 172199943 853738350 710770437 616101327 218801391 57564095 750268687 300222445 588445775 897352270 328382631 246235475 924841585 785078316 321825299 392540485 801604888 206921357 797278642 777016180 121841433 64296970 630816795 347811779 910235840 392354362 921703837 8004847 413361716 659110447 756611780 526681603 636539504 977703968 214790276 973845980 320037311 712584241 224943846 313861171 153525545 97226882 710573416 906270091 266257645 263226325 572062542 823158215 736558083 6959250 254628 697211847 274652599 146121011 423235511 373590312 906480705 896960036 391959600 303704414 587841689 738671069 522428 223452434 92034287 400147295 85122248 980309060 973100611 880420948 314697073 109017261 669413192 978879750 977685912 530204865 786369779 234280095 937084010 591921109 763718822 201503732 590189242 966089493 351608085 211253581 203402439 726288133 547386886 614592928 102249943 748206706 9532190 72230166 254076579 911028106 790444349 218959684 390625322 126149091 340589038 255866185 891776620 13188871 592738006 895054244 587572947 404168880 454418869 130047776 96499109 861653082 580653736 231098180 434317963 606866640 833068457 637266209 138820025 906037484 838472695 980130570 260967633 49128356 419506567 286951114 146978929 402033771 989202199 8071004 663944173 701020695 200450958 809335067 611837134 411666784 172065680 857424736 6213395 404649411 302886582 437207091 806321113 505061127 588655358 884652650 937924739 353864664 984255367 185112102 38720348 140009052 648133026 934619306 257237843 971289581 988188066 589812481 495986250 296171254 134685458 197120461 684510605 643406083 784273420 114830999 160999105 958107466 630871484 670939978 562539203 746206874 147280412 871712422 759792898 297842365 329469471 317452263 823341680 176061569 471080839 973617786 133314447 175638822 522844642 491507912 365779373 471114321 272580544 419600716 818653753 458827484 130929926 743038864 657507633 484556328 728466705 952030126 121441083 211473950 43055223 650543564 816389274 669572220 231242238 726055077 728180334 144580914 10803827 957246357 764536546 873654299 243173566 51632758 574767988 697181813 77467382 755819685 174811066 835367592 659904893 952224768 109185831 229114249 649421051 865155347 599212143 329798818 191013570 617407213 351774410 683122831 704444410 172592744 736408086 170387133 887343656 451098037 251435492 300434282 159203470 968682557 159167877 325273180 336295097 324181884 11945504 578781604 600344564 903912522 712534129 233965509 730824443 981666944 315444683 162852754 338029412 509183677 947527829 44888965 739284305 974636132 583217134 372629476 228080855 136677113 370549154 224285229 991784502 454343954 402558292 145595113 626134552 195981924 706160475 992108974 713417397 992227979 934783807 40601840 200841892 748305577 239151969 516682549 470789985 103808131 579150154 320426456 678984915 277826634 821878528 468639072 991903165 244447167 895026766 794574092 694527264 801047374 984650610 442998447 934555379 194345506 473544343 767080694 365161275 144966420 622305041 339910710 231600529 981346909 381703836 268497026 65350479 506079173 474175784 57514538 481425832 798267962 336630151 595729385 487004823 546592845 40349981 988242983 232426712 443403678 788327861 347994439 423603035 74289878 572091731 918723701 480797506 605934584 952015437 73518106 461991750 20120665 611723007 596048860 653083142 300586187 597042442 697252640 599581041 226818923 406312879 366906037 243696984 481750457 631582855 332891766 626004474 495461940 12510235 891178360 84858183 367795541 616345547 727282127 360153631 161603778 592870893 60896582 116152919 958413585 795552849 313860306 978851535 740060895 663101417 247876887 501580429 403348824 264963783 849581820 831160841 152433722 391007582 632737894 811620070 865704407 792184717 435246482 261432835 952623951 359566763 327717089 314495745 282554504 234209440 276748894 826208029 818348624 994198881 839248757 314405526 315202096 993189787 783784557 156261657 812082170 772267916 422202609 463320779 216679261 478845970 62500363 722061361 821575862 231035183 576782703 440655266 629048204 919791843 956349956 230451473 119658484 473100042 26038856 893807525 248558019 424625886 944401012 8008211 318009558 552046988 903182400 739373278 241660225 424842496 620773423 442205690 526037404 342984117 593517787 413949342 213625293 272863678 478425970 292094053 478031089 412743092 423160855 2986637 451729097 872933514 77719557 366922474 401215746 33148526 90864075 89705908 804732515 275185601 253748396 361106976 513853736 3422817 358777324 291116106 997718727 156430163 75421388 823678458 494358775 302319847 898067566 167388811 376555665 104540890 805185217 96916371 475760575 661086421 11378580 962559217 372578096 896609620 479995127 644076799 330783903 766480686 48724529 788311642 824578720 858708250 686682810 963379205 334736420 201415920 974184154 313273046 719551112 972359426 147524131 813279247 523682469 972818885 58100643 391015645 894236381 260219445 351898204 577870115 49825591 51645282 954229411 145253811 315924365 14523670 376531618 261632095 913784692 188707953 550030518 50141838 166460771 885737907 742798411 284130364 693684424 995667061 606381444 747678255 124115165 780556792 75666108 966395667 789802011 442463735 571793200 97110221 235060032 989615592 497488755 358420371 273021145 251704541 215715227 533828092 922598293 318349130 605832767 275978647 740639861 205420747 947143672 44037221 100668273 213445767 469890564 987795601 989134033 432139446 889548370 699924776 348953212 98552256 369298132 171884503 173664270 583392333 886654605 520000672 540822523 588967644 340716685 190791344 236859736 111675869 739329231 317724731 519393482 609440052 792872883 267405250 238840815 540000679 32983739 517647578 300274890 398023820 506960888 160120461 284277607 113226647 736108611 737902455 230323348 343608322 142343292 652423748 28185993 636638510 957992872 726838292 112718934 698088434 498942243 492510629 806457379 605937926 400259460 624961416 784025803 335523044 100486195 160286474 639991667 973062349 269224861 896000549 414300191 383845957 792113590 733162370 811963275 560973491 549410874 130493276 801882589 302664109 769766668 60661595 31749930 936607669 872431449 931460985 906784484 733833809 351882061 128453225 378426489 180027166 449016643 765646059 704337430 739323857 642387180 66779907 968776168 465354474 46966596 922744143 253124766 511261738 692403989 181216737 229109 271854614 549881749 654133408 568376686 181069700 870731849 797196889 81987632 620761367 221237141 594706467 443274512 309199810 927308176 212873322 337058222 284030091 910225093 401987963 22081163 901033606 545190483 812476982 576741895 101833690 157003169 989227449 461560111 426836576 981877984 122131645 272025561 859040817 788001952 473179884 667185345 784687570 120475393 130944663 579586229 502988993 309867484 478256963 106063468 603919712 275617383 942715131 853999695 51214648 116152154 24547999 914044279 25421643 699883883 878050679 886929064 169120558 598777629 413504592 377340600 598144633 655844211 725845439 567372743 667331824 466536059 300936615 128801335 337479827 49631189 75121529 14503732 375209007 341211427 544111227 50807561 509547474 890461231 683592423 657276837 328440685 720704060 655844130 979344311 348217597 72392265 519833378 630078811 727090025 186182495 182910660 989231748 950003299 600750489 273420254 386203725 717223458 176934350 611140958 743778102 828458391 420129580 461754391 663533790 220453141 334391550 12390054 462811925 453574447 819553103 209771143 683094884 644981765 522650037 288818740 877687214 405524010 763815087 226285424 538832593 703860318 572286998 205206670 123027931 125259004 176800110 9416204 736064751 198437261 43109971 588925531 893717998 38440601 552832857 449907138 786514711 77895950 203510925 828123020 107109704 77616127 856933691 39780863 375164020 648015397 171961648 582055567 7772008 414625016 529190082 341733813 375865051 978589869 550662423 17816977 521996323 932411553 568133059 387311865 138592693 41209564 694749336 72285191 499326763 961115494 574893806 224068367 537860207 868419733 491163691 234566721 587618345 933611648 51334293 213073499 264177944 328254501 912025166 432651599 589443008 161894669 97432666 46196101 549018001 302749626 268540792 404396157 410651047 65354205 603118044 515399119 469476717 696184756 433722611 866007185 743832470 656629966 113111296 770830960 987378398 330678446 826251362 863531813 655567023 254044859 169383089 340184330 440417922 488381788 595661054 516290769 682816021 670519267 598396653 105457282 350580724 465579404 725415632 269193460 966370960 816402093 122880479 539448113 393389419 911704665 258663380 807336415 573765390 112517270 458107866 144836443 899328648 478392283 594777595 138534014 436814756 574351599 483902279 651203300 188392981 448318288 368357401 565215182 912492362 362229015 835623708 522116000 515688403 15162922 820634298 220628288 313749346 286655674 757923161 965516848 120342700 8981396 20472324 11222223 27490853 586632534 157577992 831274047 163767715 349111499 793306868 119162143 620135634 742619491 688903605 97016830 197255490 391048885 881767612 972504555 775363837 566693550 318397883 706741502 797899051 335214392 250443533 578470772 557395204 5373168 87424781 442091696 956428464 520067482 960191251 345773573 193733980 73240705 640750605 346925031 486830572 325757247 372430022 261055034 881753831 986984579 208164354 501378864 678269414 113271846 257304779 384942345 476838855 671197160 315944815 304343159 13079963 583803132 639793589 681267344 9906600 957902511 424211013 361891915 405633989 792738789 977218458 381830679 11478249 925788668 967327032 900017467 479015450 400259147 764592736 7945574 652913868 438117058 152151960 16445661 133232060 926964327 705308779 415874868 240469996 460783771 118658828 838618065 321695486 650182946 971262362 56050175 993035477 906264771 403967471 981412228 403045969 900120065 454636026 127582503 642200884 743345567 481808720 912847006 606378641 542343904 567532986 93961256 750493395 194855194 586825776 13403118 838251629 584325335 278259315 989186854 284004559 892124644 95829090 768231152 281590468 476077039 281977943 125214752 677060669 261551019 571833870 770441754 939569723 205586907 946385254 910353614 63931207 382222674 156081996 899788654 714771953 205031635 48626335 487294981 885991534 6584064 185933403 25618834 808281771 162946304 4894637 1717121 723205542 804995096 289525073 675024488 912802239 890903975 317025063 353613904 831246040 523854708 922541639 770636004 433712230 81345147 454872286 957108021 255291087 541575468 544359647 895630660 345180028 62639155 642281304 602930136 343786266 145099842 38059820 461294475 672737081 791456085 350529217 367257467 674290051 167856268 281520358 56000789 797675921 780556168 838300216 423247152 672470550 187497396 999480367 216656945 164605378 468553101 694250723 174474495 625804133 361219666 860208175 663327051 434911125 53859879 582538659 450940352 470742855 463679525 495409111 155310296 240487336 101542418 958838037 64774985 835016598 737866709 512758479 677904488 751793384 109535639 933313760 640165665 492675190 420871475 678957831 373244820 679069380 28580187 197465923 335597487 644115201 308096098 949330188 418422735 669262182 887236333 185226918 408358886 248176974 483001395 131501698 492477226 998421195 807096583 519024993 210079632 654319212 131451284 961662787 31154739 907515182 673276901 222910429 533599196 414117213 228914640 92353225 463220290 68962845 571158018 486376915 161751891 96106023 391667043 629040864 76289778 942299349 84863938 814173332 892668247 910020506 822305318 34072869 450264037 583172082 314262060 526029870 343641517 850908349 642778283 512283954 679155394 735994350 775228960 453948036 656635475 623221512 814270424 390653216 41409630 938948320 702345693 8226836 916936804 76827110 68994083 799970390 480003841 93677045 803484898 65875061 923032873 772799400 566412748 986085750 662041564 335566452 389641451 210803801 40582137 774947140 334152409 976864122 256725049 636506761 669585811 954435086 133009841 197032338 287366552 931638775 601339445 436981405 720230667 892026698 340252013 948674733 241267211 851237651 145147916 370668693 281084497 434222592 230618033 624207070 524566191 736568758 542998489 536029254 666143522 690323530 109183098 448957889 919322747 174286531 698570399 156269725 743394072 427405946 564889069 92052194 259545410 847633254 337701573 137639392 866234346 776945584 422640268 805969322 537956318 832580590 301505609 319812951 186954962 130983266 287323089 63599978 551924784 951109155 402119872 668432256 41390639 706462204 490811707 957301694 622123951 479226071 286196846 316347748 635609312 489488822 680734818 205617329 385627998 511963362 68991259 582271032 973406869 483514039 793197961 253705380 841349041 179304770 99135455 740616440 40522103 72855925 207897971 738258437 821779448 404845668 732039845 604443050 90999139 458133144 572843562 255274742 871243612 862615239 141977609 715108322 156768972 979745154 33443209 108262932 378251355 248188322 499001039 753589018 77822116 134194513 678574670 952266273 604275315 629957249 351173040 848529992 175435680 843825794 436450638 439400859 735581977 205046670 521687294 764302928 48519787 282103539 481803938 425232481 992374124 550759501 208286246 911113836 718213121 538406384 557729782 901025944 509293028 215805104 285144023 122494800 961892865 649005454 27280003 937679613 75269301 763335579 228145672 28642170 437143200 618769916 708002421 230080742 292397334 713534392 656674156 81274137 959135318 733033331 9559310 552593630 10556330 891033453 523677334 839985299 591093319 169036182 319590346 626389744 392486378 731563814 52754127 251579685 418567040 29062863 922180400 163381271 995504333 593400286 203063173 690137979 469059568 95599204 499134928 40214258 396927481 165922184 414921031 977634054 314636075 361511708 563208015 805172859 294879992 567536288 48552675 636425146 227871644 811840156 819306667 595308172 182029809 266174504 610449924 75663633 834012870 617494789 67773769 312578180 341250626 769343962 708054656 429936373 459633631 30283507 674179831 275180551 888242683 710501057 720797020 715429768 722476042 318830196 231384272 676731049 932579182 606314258 914452942 916541017 600151803 313162160 449586150 579220387 482229394 665322144 196624687 46731383 38154000 303307827 69390648 568734247 291438580 596872732 459585020 325270677 501365467 347916247 666543403 526734071 721625630 270729259 612900940 782187005 324369644 257116403 316518864 943590188 458418313 207870272 947692390 780122012 584381624 924750453 105392762 7828231 178392966 936563590 703766703 271204554 742188640 720407468 894926784 256043783 62411859 354736218 708282013 972015468 215690913 413180962 491224854 935764662 202486102 282654225 418435413 444234824 750834128 410923029 231260205 233889070 878427093 190358494 982603554 913532800 968995929 819027863 228800528 677215861 420180717 865073904 107077896 126726983 796244816 159252679 964989625 495116222 656905804 816956759 423265743 135425156 236078181 903542346 534986223 629571212 566265495 924479959 838367444 695000858 182322656 683637161 675230181 712572614 937595180 401449382 288434420 882810168 205266285 125888544 537324284 930420364 446250852 632529707 910459014 166263222 974668503 995047845 578604133 42362991 28240875 822917953 731635409 448060175 653536665 920238655 455981319 899968900 620192534 974444165 37997040 617475464 529324013 581382624 35768775 563104955 575969788 16292224 96014812 741549524 327774644 724830637 416996205 809057651 455739584 339718146 112036061 359757867 272918103 200284469 517473180 920713609 475450795 622940904 883084249 788054184 804695493 590087092 518131073 135741067 307980201 757665817 291188146 14108942 815093310 100000506 228885215 553014812 563964234 194604339 527539012 544906839 91375154 287078660 770526904 858033461 696638685 159670770 899063801 955176888 771174554 891235782 218458692 925117824 430051066 269994791 151578623 934485845 605585073 482442562 395590471 869514638 322492250 852473904 822762949 776224153 763198359 567880786 380005230 902340677 348908659 399215299 538171834 346157766 782234042 901609628 610402712 217856202 838980335 103188901 418235533 394931190 288991058 624590277 967871371 458188565 672932706 290240587 844191351 435527634 295527021 17349055 18896654 927800585 17109895 593108329 728758633 957477788 319578250 295819832 951433659 202628109 871790614 203731950 136346484 130775254 813667886 10224171 336911888 776337415 302358014 295442748 392947350 863593025 82337696 939125976 751799359 311905663 776205672 912437258 941805658 286191568 250117411 286887895 539074034 137788743 236287549 197004550 364227562 373416387 638462083 488565197 925285582 818352109 347785000 941397178 767508830 164738955 610182340 133309666 279859620 828164431 49820415 331489498 797074217 54897725 570796048 316595173 85154925 978016748 935196743 575381968 714235534 355600731 892512872 951056429 58478812 432888385 82439546 814955660 186129578 51515659 991622034 220047363 497367944 955754912 121483506 533041974 34607037 920149036 66812899 934659368 774719741 785078978 199286252 327635067 905418258 339064853 932140888 926919063 456286252 346983854 853310701 297353681 505180793 355612891 909094600 660557881 708672385 84932344 939408049 106779921 835615301 248072835 105802417 497054646 312716455 910251977 634112788 759553988 697620521 24967695 619081902 333215887 325283295 117839384 311170408 990995240 860275080 23537602 505606878 204132902 770017175 855520244 541551006 568461075 521848322 25864192 505059143 208323086 426005084 822203425 29727053 864539258 791662152 224564018 528445835 714595247 614323515 219792661 848621337 571256714 401036093 671543336 229871675 614599417 741615138 892897916 866601399 231999257 610277737 118178153 106712690 477327782 465333455 255261824 282266223 512622786 486442107 369349373 97865452 805162011 592427627 899515267 997910513 542752165 504235965 613205828 453422861 677739626 678980702 505402777 829279660 781034811 651499367 591716760 349133191 662997990 871556827 360976132 772248945 939610240 133167969 505388553 126589156 688527430 675032640 404037488 137207665 642210257 99011692 403330418 633614205 595465110 235475511 554798019 137893206 95958438 167247236 490955062 588229849 632277537 251273311 76731755 597786206 271160172 463341815 947655398 638933413 959956745 84830511 812335087 649095956 535076029 408155698 501080965 162443676 13918191 160141649 14737170 807702813 420647277 830882864 26073090 862777110 390911670 627165356 223831023 583420281 531933252 448727269 38251709 257887698 777539126 936593410 774393871 802256262 801500045 187958731 437780332 998228532 778412236 826684763 421068101 64830725 843196561 592271417 92967873 514709025 895165419 401313922 23573806 214671121 15687757 286788444 787030983 922272422 612144863 412551942 386929743 385638107 228854415 356514809 398416973 834986210 389621106 972274389 553551115 433203874 19243080 673110715 589547600 313895687 26828585 365172857 614999284 341648711 419607332 96289558 377679583 194776423 245119449 680870889 175977281 579958099 626102324 626257923 106643243 645132662 511787609 654340541 340684408 613725233 207589386 573546270 335234074 32448157 647577758 374696891 926918166 737003482 165449332 816496190 379413663 221260870 902496576 872392424 502993634 336018706 499403971 228561093 554382321 66565904 488502064 797623320 26610411 55712539 707002896 542157315 594427095 153977476 411556578 479983501 769387736 75494700 414717080 565365938 495715005 176851384 64708700 791519058 364854003 241796959 495705258 737136375 242592000 779227843 698665133 318726459 624422590 316424617 620011207 791696440 515859755 383649661 88271290 458764899 249083123 920900938 761674826 788553438 200435401 1272493 712303574 51705466 59558369 264215797 765807199 214251939 168245372 238325438 562935840 985301377 148506283 728648425 175848 955421757 733561626 531620366 67007813 349496281 145783210 602318188 54732904 661781792 24263666 716675398 338321374 450782827 41111584 990129413 560054338 218617436 747271735 132650073 46775138 33676569 916344217 657424985 973664265 794807510 892847015 96175518 939805414 468813895 672889563 754800711 487656279 3264717 670369963 994125058 702721349 566579580 812888856 818212712 424057585 872876539 615891204 135412515 249817411 861763091 115959114 652181747 407100831 252489976 862384092 559233664 18657459 199055607 382231245 678715306 898603496 31928390 890813948 44116802 777055844 617234342 564563000 818061363 649795278 887753657 793445102 902226823 910992182 51106043 803794718 743701197 968186632 456612088 27776115 757308073 470262455 260204102 933597812 864163593 184946033 234173488 455929876 433590159 510554880 408881780 22573365 806102469 74008736 489605212 659847810 222776324 501191315 872690595 501385759 214782755 177777959 196535740 809225016 343062017 247463088 143015670 768610407 677142130 919849437 485899370 31039607 298071708 208391448 395934328 461975590 370581015 426307801 580795887 483779026 687398184 42970451 700005610 711894021 408035581 566152249 432660092 651598992 279091944 248127479 802130463 504971751 944029144 823788422 608438706 317395500 448660591 963168251 235361738 728193576 156696628 298532867 630052322 660496083 178661253 730864186 282340919 429628861 578950339 820965563 751880398 858681790 181085811 674740134 15139395 801404489 167180691 466925588 850548590 189673642 778084942 7367902 844915094 729767170 774654419 792764332 202781384 499501500 784951651 131094163 242661113 280495729 985080737 39963188 982628514 369471302 674948766 442809506 160587964 492529551 581695053 273232225 548056843 567847027 67575443 510096184 706799025 474247007 118265395 818998160 617933644 917807716 589697852 6004159 622916260 763301355 29442533 839604033 791300911 360055312 457439600 753381303 739622129 149612465 241771781 261602467 413875265 984450755 62772804 365930878 354442844 334294155 458472921 336398707 562090674 455727226 203457420 722604265 124369832 766947462 883067167 192093062 604513484 142119939 757052863 964064861 159080897 652968800 594282372 538353625 125469430 843582583 320303737 246481599 789677802 863691463 540196223 147513014 228654572 914664608 542643256 524097013 469760939 18230339 895942187 965636087 264890218 950231687 143240827 908439585 502486307 312244854 948544482 487367333 242698354 911099698 98241985 165888727 152118252 199716967 736540952 835956584 636335631 402623885 461835098 559278676 546859407 927930735 320833524 915012634 929640913 836821581 132141772 500284663 884900658 856197130 709522443 20420731 387459923 920173554 644720291 775760419 701716428 450001391 413447850 773635569 858312834 628940761 670148579 588535354 27854259 536008137 458429985 696947061 723502012 985901047 265478725 102353903 993367723 267016409 78000849 24643888 473347470 442095862 373527149 10375595 746514471 779436240 221252341 565962018 122027810 30014880 801201365 171864194 490989131 363777173 149963622 83000029 472625719 268422548 150629682 576871583 943889363 669566207 797495771 364495792 544212276 432465278 426080700 752563326 307379731 386350120 380426847 977447690 552240475 613317069 138046011 520692586 572638329 383276230 773017173 474783020 64513506 346652552 186801231 681346031 177730712 727637037 523134138 950651359 165352115 821248686 763304615 537006551 604972547 366985174 938013335 549854258 98613125 143266395 73745502 473350756 804082686 632166666 829338637 692757114 128191336 422700939 716490960 459935405 944727520 363226246 558935859 866925016 660989119 96965177 418314043 802216884 61332684 722688942 236769935 498853183 435538970 115579312 883140474 746398516 614295097 123126716 761087344 80613719 568868636 864258841 532927847 965956104 798729737 371532126 354713323 462034739 134618322 421087573 913630442 603422322 354700056 343846343 824530425 374763269 810427385 34753341 779734815 437236384 957934763 823136742 715499420 215795154 490503161 844982168 855509955 902219341 601992174 709939294 509343780 827705902 822113677 453293492 336433560 580835453 556366241 342848807 165843833 310706912 480914976 463147779 884356323 780296504 384998841 805571874 292778902 150013346 541232758 966595271 766816341 102645081 367283596 867596287 346835493 216022972 743498738 888688294 795331768 111794085 486270567 393020604 241372896 518036241 997001288 871852534 870323816 468856453 862534652 83377165 436228053 201871323 854608178 566259435 870067744 777354539 574117970 801863430 678066962 28117965 558214097 64493373 924359172 228187656 648547353 620148844 772808458 532797686 203190022 615474782 383423490 596721640 868117351 763363775 232948464 973976542 57727614 940082627 150758031 195085590 77397559 543276535 553728140 814740110 973893452 705229952 339343094 21386790 382579762 661853106 680085962 252291121 592586729 418202938 27956573 261099095 100797692 267447178 883183428 849089023 126353198 744833900 98922222 430611365 412712468 117285722 836392587 921382227 807041325 888556201 996023436 844321531 737389694 930381129 389399085 405479143 454687374 524191551 691049829 329904798 527153168 551744948 361671307 799638868 312064013 911835875 386834226 315598295 758030307 896804856 573636650 992252742 168777322 456577376 382241277 701788 439048244 931291337 79886952 907478838 618929782 111902193 122229377 914630950 530833819 641138460 451740675 604126940 612800878 22897101 683957444 819180990 317527053 663581327 814357885 493342775 565946189 209462683 234843580 105564080 435103489 67111259 437007665 900430102 338597032 962385099 338460232 304513520 20462635 10259493 591063044 452910942 455184683 400376098 728309253 52769312 493119753 550508242 2865016 410132352 245876772 444461889 55901052 529393144 284533716 311157329 819696443 363093012 492711241 931546659 272072469 112327824 78949936 506211437 221961824 790783739 888582642 838212269 327834319 842082065 404062985 621749728 215057675 559026049 257671414 337191856 240853979 12545786 655585574 68119875 983708663 107348029 224814314 142315264 307224348 22773836 43944412 614046226 365617620 84884994 949241493 988969333 160370833 178182725 812976190 902580882 522495024 550563631 942067960 792971200 469393094 423082503 893823273 690094817 851475396 471380284 411119994 740175998 420407344 560472961 740768973 991757405 208528153 493300518 671510279 172063887 799149384 795847175 458463038 421594441 881173470 448800080 817900490 606028128 743807679 433179000 304119883 790791932 20180549 27180879 783164114 123940467 657912114 59868886 241464890 909656321 576379239 708318647 9353156 923727157 761016786 342944304 912986461 249730720 197967272 413289596 840290569 188179555 246284971 67598831 465767117 720182448 574430486 670450144 781435828 925288204 784104819 574883039 677157611 626225577 388386962 94579227 39506301 700534266 254487957 736815641 460606171 327239352 917421890 529388741 702972427 298575602 883725216 403071611 111595416 769353868 115368730 561604803 193383464 370528012 913239741 829510832 905502722 27978100 293181687 138741977 298677809 277424212 39181738 806429522 148421843 835826578 548630026 95265468 350432784 522117016 759609442 508414019 321241378 267502666 200662726 809254753 665032433 34047375 857596598 66821786 213105117 261923798 696932388 277419964 971388823 434085841 853374382 991519782 997929067 38868585 182912476 60248290 205540122 945091082 14173224 755332958 245672150 970787788 526506409 767948584 949564619 427490002 878305652 592474323 299847731 897079727 802022968 729409257 510739208 839745115 140820357 22660957 548319996 955667855 879189212 236448271 418140407 278137443 454234398 596099302 242490457 348075958 302937197 749336847 975976613 780225828 400475297 274024455 323793724 698285617 409956017 630125116 219159881 475236141 792792434 504353731 439537826 711217677 80621598 108645914 739558875 221295100 857504507 508412522 649779279 845723173 187411921 670775737 881526576 11466839 615059857 629039958 182783852 757649065 823427556 549220068 33152213 204398153 508188688 955875096 293353453 611005779 484653102 108765049 177075677 197442313 659272000 940242653 873412781 409240162 268696223 895563923 507263026 493926099 307244634 96202009 855799099 938724310 200644347 911488478 306673666 432343909 848803144 721735019 788419987 887363778 795254688 975567198 456797674 824622568 713996565 469317423 830487298 871946726 920361724 530107424 628285754 879839805 112206552 100483036 341382561 164946795 150454552 318990129 570071410 997919572 497001839 433867232 718328113 493443037 141802073 851194740 171170169 42173156 24489414 294994599 548352309 947518175 215997447 984322099 807458686 631046295 30839899 724829380 411382603 610742464 230379754 118575580 548797383 325593055 974387778 848210364 591623381 326915327 678746757 452105033 132398448 968435886 125718143 748746808 706042922 883584039 36263780 532164840 613397559 784179220 163205619 337195347 933811472 574202364 574220228 8154776 648447799 878516208 579484722 832563939 218261061 987589734 41232683 97437512 615163641 377672280 110431543 308187480 591630196 950212944 816572611 671788821 563030855 885354245 862083639 819430163 950649211 63151112 946197653 88425314 943355975 851144762 153700908 948573253 877967535 32392914 579030590 374000502 933039771 815611665 260740650 736581783 949801432 265996002 811955805 171020669 451580333 973390122 335683295 542905225 493291007 953252900 733982468 400457606 305126676 818326853 941236657 766956000 787519139 350555231 669499587 349192321 216155946 501080016 96137350 774293462 248422116 931034756 227821821 225304126 862929549 492068490 7534443 85140814 921913693 522015185 262639555 11467380 529892406 169071194 956685074 893174185 298185919 763172343 616825790 771120473 774890211 460076711 320015946 906916577 42581050 40600295 101420476 370344337 205488559 651898446 931916483 264783754 712454610 747241611 706859581 107987099 90458888 491009478 247720704 795995285 308805999 833459460 593473033 229947055 292441876 686499994 834255624 256738896 44772653 798174720 342088686 681904230 171991984 379467015 686500225 884235497 158168537 643697650 944085676 645475302 951294958 536955203 484883186 568320880 102199451 159583357 129384553 106368528 519966369 988629174 126154823 39370478 114128314 361591944 832894613 933464516 444231879 407666362 762703528 310659432 649607883 916294043 598500662 174881897 664313605 542734173 622178348 713749279 293838913 754804080 6539672 89324792 17212201 283190347 328642259 761297893 327108800 132211350 660715467 147772817 9386949 626399747 358127097 148488242 232531382 227744096 448622298 547275588 553297571 404783211 261513247 126056770 589925226 762364859 957838584 536923729 554165634 767095928 519295697 578271841 490947415 458932783 591204014 263736461 431300401 666319959 10897693 583254333 881043518 321877645 225288723 51938912 761866692 72112369 82252354 906643038 16913581 914991149 671064377 644913276 313284303 808334680 734029412 993136077 962956836 689841675 594874333 955362797 714973721 688131710 300233005 485581212 378113196 271813310 636953122 151480794 525876578 171883420 556859790 619698605 832991791 957319400 22893752 805141482 317971243 73467974 165783520 983456862 73543725 899150906 532952201 77962898 268742661 771748537 442283161 651228812 42538139 751631444 196189181 843525003 489995769 179085576 39823677 221951956 922216690 544461024 906456942 423648971 128014912 83946212 187868682 861721313 486390718 677136677 660327036 106385058 960660487 989260325 246113766 188596655 679325859 673451470 587562211 90013655 50524782 27186924 881684445 366605822 942772738 805562139 686014849 666080378 737205375 129257270 838626266 335835897 357039509 887296799 247236241 454344904 714617689 842793058 371978898 607668022 306996097 117891741 229032780 808698525 451592575 478029564 720337356 736157942 191897954 468320600 213720553 215825793 840296394 127285118 230613389 217684210 280658274 812480464 39335323 212056931 896265299 492854507 277272588 586953579 655886140 334017594 101293159 829396712 424955576 520592720 612911240 128256098 159068245 183198089 765036625 744504195 179617674 854660985 98093260 860656084 766502854 470052651 390101522 545324348 404224089 442562841 542547859 819270063 295624977 331554341 361528706 707520710 591903535 534211278 54941645 147482025 839424730 914008083 305297215 207295767 474595071 834641258 991166184 1455357 621206123 758350961 657294667 462206946 154708075 221563529 955407530 905454851 652671611 484414302 649099480 931113419 75193659 645708723 926827085 197862804 552637199 513942600 941582366 622268273 600413357 872021888 634029000 724233600 570014029 595222183 917660394 148150211 293343803 97921938 149092947 987475802 27929609 660368973 346281882 793528686 195228034 766453443 733973539 308163035 736375035 233407271 739410984 269242330 498970604 829465523 325965682 21595045 212924312 456643567 728336197 251846576 984926477 863400752 301210081 38984870 129870798 328556612 799263178 884333564 42409942 333274551 447983566 636160806 498006372 406550799 951977808 221147628 467164657 901741485 629929367 124738790 587075270 131414900 435765 661641147 559648325 235078575 678955323 659429788 653785901 313272333 945213122 419525797 778500179 160423506 255892225 839298111 481292435 724438097 130618363 439454969 230267184 177153280 621453042 319945591 21836346 163321447 610104857 506272047 348000994 545495058 715487548 91479818 696171553 589684255 935239728 721246910 626712799 836307110 623726561 626012600 607908832 411106721 237752667 750594641 930004382 391243795 653987495 995189695 588797308 186912543 549893935 643536837 648203878 231059263 271385771 854589169 199194909 674100322 967670714 437756051 468350256 224082456 351388737 626825352 651002410 354121817 421282151 794471418 215813132 758979533 860763394 677225346 673827941 145933541 629623047 175838264 594555744 524335340 467373975 479418997 306117160 992649356 416654679 523249046 763259521 307424744 961346751 63910717 687929918 966600666 422369243 960689924 904849668 670085428 165140395 764627057 241141259 222269420 794621188 438425078 155361225 39875394 434275665 476388361 763555120 435395621 877455715 118833526 28183222 38498819 946277283 411483571 896498701 922172428 746968851 273806578 935882935 521305848 162821154 785869169 814339618 49486609 230628731 557224087 306188252 104011416 517743771 832971468 852933860 602305644 294694614 414081160 383660022 98885084 308907256 740039326 720041328 901520490 803278547 675605524 586827451 896977020 247375040 598935392 862941524 92188895 459098221 942159815 140139496 822068294 823998667 310329862 193629585 26082736 471982444 920444373 567534414 209126894 669963641 688198621 470522248 389041873 746396356 940821599 683491519 855536028 496167456 607156689 899416890 846047972 12837753 451641374 896406723 317150836 985834110 507801370 919712698 829612201 188823122 710599896 614014455 654612901 683315622 693193747 15064345 806329206 669171773 199057324 69747756 8442774 89916776 142810832 371993861 467702435 324252429 995971342 533042736 344705289 957810183 705961501 909103011 680412784 513281760 450756221 737509800 994447036 291086925 543846487 902665801 376974863 855042449 645945488 752342254 977950507 194349080 91580194 96658727 352810805 367273893 154389003 674127805 395672491 315753848 629433754 352944041 308167553 791622824 61183422 838373710 953799959 631095494 348675533 171132505 287113600 719353894 546345822 395183671 353434196 814964836 110743993 966015662 330791567 845629433 671348469 42617649 474796424 658171808 696398634 356306593 905705564 47364429 768968826 943425755 700419496 99532154 485670086 73159872 164558579 452552235 232361529 168392018 627918991 282762013 841396331 247498722 997612668 946351788 28342045 811530943 319037843 132184688 566231447 891538700 847636458 160325456 34253306 729036458 105088165 14495434 366355089 656865542 866020539 674037992 747645236 856929056 679028596 909858394 344848508 66580038 901223753 325109863 738927782 824247942 370752736 706483059 227670711 47698011 560433889 881318485 514947743 904097033 619834081 258584670 242653279 47803621 145587237 126316270 395202843 67430590 593606607 844469589 56592853 818255615 392680074 529685842 346062565 140758343 980114226 882295782 866249360 22495969 747926373 542844129 531867048 906233431 993178560 293272541 994187974 873098245 42249695 965308717 102853643 970819597 10174206 888101054 459016878 331311643 397064818 691558396 599066154 960600433 106286543 305355734 110726801 768922069 337020148 505326369 136495436 976770388 505809721 490035793 822159437 44942743 138442779 797859034 41372882 89436402 348902596 506036696 815263400 145723264 931490273 772511822 325743260 398336819 473437413 458356008 973961627 894614275 530216070 262214171 502858554 401539010 429485803 83567782 682434608 43798213 709904986 145145821 489417 763994290 222976911 230376398 436847434 219779565 892074977 297781860 143265482 297846145 328631639 747155285 541561428 659210364 95900778 511715057 595914869 831197229 932839094 862262153 76013110 922845440 517022762 647356798 592574423 816607720 247628856 966119348 658992541 40862860 80785888 327795296 993856090 55545314 508192798 125665153 341141356 108352311 767567835 58472788 429191412 340285705 654468732 635279328 260158842 836314340 304778821 567392462 608179041 806031001 727470210 897719830 238350043 220400123 679180056 402905533 832383354 536678884 196847190 895881225 608458369 979932444 410023173 586587401 837521770 112437754 863363363 985343125 507569781 781860069 93058404 505982788 96648777 679313268 289570901 951153329 949494763 699980061 907645665 663612455 518907222 302691499 194260942 209905126 224569574 491062643 681396046 560953394 578622696 385547950 895310444 994542683 382120819 810156559 570255304 780881023 944664369 866403739 916360376 584674898 823700647 283665791 499837016 25016959 719558576 185438015 582732509 145426494 838364819 60601134 182468327 65523705 885820809 668713224 345695461 823145062 230836082 909997213 680724327 443653452 805383934 606334921 385126478 474198732 966520603 327423676 916526726 833731692 47120138 948529138 256328875 2893575 715017307 961120772 788102009 622142628 849888334 636273192 226165008 375287938 995627568 562950919 882681042 745748482 327678908 577504362 913573478 835231320 913724106 244854638 398711376 234980309 248410377 404343957 600474668 377625633 919677773 845832834 492684943 187761059 877723873 740616158 486250911 908431051 613553821 903741127 729830150 726240267 628829053 870485026 537910912 359127300 864525669 812893200 702225476 424473333 782878516 324239135 331619547 637852145 587177727 553442862 334662846 433591523 641921278 144380039 32654031 760998863 734390704 238793506 387237990 216340930 158211441 75842902 250692637 546489464 967568839 80322356 489957130 690902333 477554672 688795762 381642128 405629825 176842696 560979804 545334881 415640601 366253617 832101813 733725163 500869670 283755293 935810668 100601772 26682272 574084889 237950880 564462549 571339818 851434989 90859547 21562983 661427192 179515896 793457418 483644553 937606942 153798749 523882767 314408307 247032981 781755533 812021630 985526508 221301713 470330675 775224009 336215980 63871887 604197840 943597124 646639688 422186056 596977933 84158007 481194793 800081233 835438266 744230046 754188288 749520043 440974765 372624817 165173192 807075613 907823844 205029382 165554593 250205390 584895785 323694349 74683708 696230131 381077728 924130031 703235089 211048284 143868149 430225746 464550874 431690119 285515851 564927235 932258480 856654655 464155561 371274562 273555151 15185316 245783039 919532633 986901533 604829455 942617050 70841925 880369792 859212164 574496466 950772744 986474600 377199453 266023880 109942968 268193063 485904688 841720843 498452281 664959688 459524705 343269437 811174314 23967831 383257513 653333245 41057043 217117714 801999915 890766765 976320363 716182572 579581876 178156461 826606263 818515038 728731829 217990106 278344751 950660890 230922824 900768829 894330933 170662429 186370487 99069527 668271200 107848634 147744669 698497572 355850016 566111834 734150836 915465937 750765851 842380337 26772627 782073178 846758475 218269503 498065802 654766566 608002874 452011481 309470929 139220805 173407828 612147057 368991205 288858378 44083560 128200069 748688835 84191663 658796839 559982540 831002768 796664964 761932836 759523879 406787666 466633586 696295069 29514886 170395965 864718838 148688244 14299098 325869254 307918765 865846962 857633730 131904762 934784756 716324009 888803059 844772236 469685734 750387448 636979395 79280009 552269038 980552942 870785010 362942499 369189626 153844343 71067903 893468041 566549740 111731896 628146236 187124475 117987885 462401854 682287206 404509481 657939359 351138761 449089714 34764661 261851822 56766948 193573068 317084615 152160509 767218282 516324498 389864128 255331259 850337248 683898670 310583862 847215557 358599188 895387053 66976666 750930609 592123220 716174062 236292149 608836174 934887862 471393269 538278682 150830537 339811865 143054397 903168411 75013058 491536654 557347501 902229592 852670164 803368316 579726748 968980893 450544747 43431947 594020370 967184926 538951765 62990760 84968535 666591460 185095889 484653094 167551443 688962567 717542711 919427433 312592433 236491188 562643086 530832327 161124248 668695841 896453538 902088436 117969104 662636085 499453604 847628099 511702703 150094060 557372802 818350347 704534171 214859466 936084060 814958106 864351936 983607888 87826851 651722684 587067844 622617405 92102305 848230498 102052063 606526576 74050733 197612898 212722365 883175067 161520490 2603861 284526227 68239005 499505618 552073794 965101125 196684734 834526129 954909323 771737303 541606383 297223681 219760553 341195581 585907927 586874575 792998429 116047959 71175176 21571969 608905417 371136310 726405859 167104176 485391791 389831798 324044623 467110196 19301169 147376918 934679442 358858462 768071239 877665280 876236727 330123968 836318369 862252424 593243065 433704047 575714716 25939261 170617732 931415651 888571988 451198967 4816792 115015754 309299497 934126184 169011183 115560758 869581821 426071389 841220693 823268200 502804000 363254111 997306289 838565694 836677133 585870343 474703015 367694875 364095593 824290478 328404923 490447048 504519845 901321306 923194261 308426120 765864022 566302731 49350507 138986721 717976860 544270322 511928565 10103845 721422793 17512899 523804270 179975425 625162703 545248389 88955132 394119941 553968624 671563790 972513828 809496473 503633232 566450319 655754952 983626240 817463856 472331605 736676289 284098591 654146798 49574727 600325718 110740396 910357557 805859442 791078191 511477699 251408422 734313322 855630185 174827497 817164818 307490339 862545748 714977247 602695593 528580803 156158849 768629435 883909587 862517602 829334083 282313061 592960209 940880103 608369544 948298424 121058750 527294982 884494340 539623233 270781342 495279374 160815583 269120516 935399768 837822307 41013166 182212 106543931 379612825 179551987 246606404 668136182 137104473 686589203 90277942 243552597 664304644 933058940 758447932 473216931 64234148 962373222 451685158 864773216 421834701 295975714 851276642 629688708 653377098 608792976 810887517 570834151 787415204 700687352 431905515 896844447 320835056 904800445 948431747 220273569 360688979 600712826 983203689 59839933 467370394 722575103 123557004 9628461 736521247 212642840 762345075 115309607 508187835 915742435 542292002 910708123 734409860 761867752 100286284 784652188 729799678 560669210 455127563 294669628 583574133 843968421 550004064 14935072 834369107 401429948 611325070 353737800 852394350 387446633 230532544 986597735 397034746 73601053 988669129 297102836 795348059 685147536 641182986 196201218 946194976 743560772 387337938 191512710 946161296 40288344 556067216 522069076 901628571 192856690 62811547 689324806 924026541 824773994 645469902 713437655 412182140 485937313 790178960 836619671 436139152 626728862 461288025 598509689 335914085 915029045 335212747 448689389 912827408 107511319 428690851 642847477 263027812 524601694 821290098 410841928 971702488 430704122 581135209 873265857 965421986 461095665 957098480 556553011 587974657 558770620 483237546 945070643 760941310 868809831 290230789 615040625 602914746 339403375 265301161 283339883 541378482 597617606 630825137 176399850 822694648 955022217 755472521 132771046 868282257 119392673 810424475 175909603 627943754 199339213 795747526 330523044 645338006 10974203 419677061 55472139 735341947 852353625 894614571 95726947 48745284 674087218 926146121 666396778 825930850 512986800 344423119 843022555 669599866 35894229 819049536 951683937 481978558 442183274 452415521 367307685 790657368 907626509 436565598 686240148 611951689 309076097 556482936 580697964 542159406 699135696 326986850 596525676 212711989 827714937 592065180 303140371 748100660 476828250 113265686 596276752 759276334 143469693 110188569 256233902 810171826 667717851 384758778 840604200 944462955 125121288 168541502 947155608 448767763 977846957 88175532 160798527 570562976 898179422 791373430 413536420 290098760 506131033 531334343 227743520 10801283 406364376 851288669 520206476 626503428 387897130 680735212 546658846 487830655 961624402 126930933 856456877 746244638 700079640 816897740 104124797 912105826 172029250 895366610 894464661 143648858 165399036 390605049 601830698 74120498 413158858 987221796 930105585 886889057 839121461 837599170 851304522 75632010 938289285 135682559 986322547 566642744 351697336 641837467 699562703 654708334 553891944 873821207 999294428 516156481 254508978 863869842 836308457 317189914 863131644 358608920 525348801 205124728 201177029 896617572 681100914 48949934 301294530 864302702 903845649 173128580 189704027 330772596 571204015 987471075 701261485 70177764 839495531 393813265 782772027 642833475 420682824 942214449 165913269 893284262 320388585 139396400 263720557 946001415 208685111 508147944 66165670 946530464 478901587 519626745 146153777 960255022 792605853 254412830 862238849 878366105 454794886 658882179 428611174 131635767 455953325 830817079 952631067 508285497 193851006 989781267 151903809 948065724 923288628 804722001 236002897 714500671 853977735 964593274 496270618 631296163 100036645 728217251 782595824 551397658 885290385 502733355 545860196 851907455 344744183 244215781 865688927 770500597 664767944 471929929 205655055 532375700 937684238 419121924 350902281 587745340 616538726 569871129 80830086 672825636 872361732 25119920 625423022 82949906 259771128 243448889 783083250 354488597 407487064 75794997 365790538 956896439 908018561 772465076 135289197 313618026 448676246 983201580 616380965 240178963 857141768 331322512 753476713 162239797 241932809 283001684 480678199 175515437 681804852 479776885 718395101 443012914 373244335 337974141 580186035 93836668 294244905 417929744 235404018 826282967 840395552 234498947 725930363 579842096 134953196 35263809 840389803 71286079 30185102 956426052 950611037 194857872 931179496 343634096 125865076 989164555 989042772 381622178 925945641 688436599 358755756 34379728 269251346 709715120 681558338 587049106 97611119 160872510 399983440 193400272 141559900 198004117 114583814 359340370 251347891 411099838 966422794 331405961 268346015 204864169 981607046 785815601 78265575 8900238 651939257 476987382 332230552 145325760 193225789 105135996 622660124 626521030 546183271 261306417 52572670 866963367 73541081 877140824 134707252 788879901 306398193 165233717 909380287 727277625 658741998 703964799 168024619 925389136 867834617 432524380 749198309 176725335 324459191 748124114 904685235 756176394 151680986 96993234 249234845 7088631 469200507 265897482 312629413 800082062 989455018 740105100 573608578 420758778 429671007 766278134 947874878 704183928 634427413 460419649 976200156 675883774 109295970 282322328 561000165 811110291 744540266 123716619 716013737 954201021 544422864 706381483 627688504 24945659 951714276 981059613 304049955 430044494 661393654 210772514 214170033 438882981 951233999 964848672 254351014 514821359 545359813 35252400 717464778 566236338 494869806 901110136 201721272 604465630 489605618 619648638 485532318 720509252 980244784 43089656 794500368 578411804 882409061 73476721 58669293 716029728 229825396 33768881 391205011 985844932 272873582 514576716 764742689 513104387 820819809 929701030 120423369 655262369 180552115 995048219 540382054 943549134 314475053 324753889 14706739 343786917 853077745 894796841 926542692 901052619 24562199 396948488 812455491 659568251 943381867 956549651 45510050 227909179 535123939 939088137 651545586 945935544 58816680 110502368 346202509 464012142 599818166 612245163 565906187 688676843 667331354 909405415 962727927 976578076 703806891 635603100 830355373 27370742 25498796 621510454 292548916 762789517 812392002 669720570 49185146 603706124 644163132 338486912 247139086 19603136 106792629 670188530 313780139 461462324 502009454 159617701 89865799 347957450 737114769 242856843 306288503 223311787 954858917 48858283 113740781 880958210 342972950 466324528 496667445 75358120 155544537 314156817 871797514 164521198 219894560 6950983 835980744 817940710 814634378 950319940 321314510 771130171 983221229 978777325 955850237 877392365 737019484 439623602 670102650 406928079 959780034 919025073 43884338 937538971 865111187 645374227 881218146 486976718 264994218 89009244 952424727 19076930 287086984 84842058 101599987 567793514 189821328 160482316 968522133 545881723 570593710 822119112 483010097 713399382 212482466 966469942 250280402 30351019 516447830 627937670 678569932 954360899 393327210 809806237 392920600 419457648 726816306 323315408 94793448 828577335 348305450 903743737 534949159 24640409 509758395 571626002 611087665 937318869 389997971 112108639 352720101 799611337 893209485 849184616 86184792 892322422 571917821 553716746 538812341 455040394 793420014 99326420 65260642 737024513 642663936 189686916 384055930 61466849 97630981 220212877 119186495 840257280 739948433 972065913 2619928 242959483 463484691 810620927 878026166 871507237 261870751 291982330 311187747 274091858 422242992 770347294 759618435 416569189 625513073 358081201 503277388 219968347 867511210 398393228 153509708 248191499 220798028 548540801 260928677 934740929 897616294 616074461 732507638 995372322 228997501 881714108 184905465 221504023 419995285 683135307 449813719 922593802 154494927 667460911 56290361 13063494 923879721 244230658 534247798 410632819 160917737 953476008 580705031 286647929 768330381 714954775 700308826 694555280 322203038 928453826 337804317 97598381 976165945 363577860 88291287 888190296 765059419 65947417 996192337 268513212 400603227 14463715 337601848 899198906 906733828 64039949 396336508 471591466 944650610 772438665 385072817 778463822 545507069 438381669 527111853 985475558 579139385 228212008 358996722 17947222 599256852 479020684 665982805 734098457 607944806 735434274 872934480 928471974 833661920 448014214 199111021 656638976 906408260 231776706 172102188 377890501 235441099 86824768 5566586 455677478 240283972 865568135 714861949 273408428 721917759 801844808 835619477 315849146 202173033 7312366 884615734 140606584 503861944 886563411 935089571 327420057 997085276 698591549 973427279 594158875 482676131 491661218 949876371 907584473 538491002 195691375 686785061 359735648 56418474 581511532 592998090 120476506 377749058 654812814 400628051 410865899 917158537 683119970 641882042 530873819 996370608 526739166 104105328 153792879 394974564 582569654 196617024 919407447 163535333 358905717 193026063 734861257 854799106 430084908 135155843 738763472 245344724 940996922 440098228 292588833 210219259 784559058 608632500 579982516 449632054 711002762 237133009 173569321 285897976 406717388 614085436 528922392 216254713 875775518 148365680 784680344 350156040 957303805 778718413 44413621 969808471 544549685 447848444 278893204 952148864 34330214 704626964 705398410 34681594 481092983 535046865 461077668 550966663 982136179 362610803 789966431 824311613 445200616 373681188 461486378 19104655 41431627 40156173 187618489 691008975 813265323 180840876 898004293 672701876 980774056 855270620 959501368 533124984 502788162 644740896 453388466 450618386 154635946 878983809 390246550 415536803 922926338 288368228 919720150 926672882 2138311 967752407 820889830 364779667 867421398 441733514 81360681 856176256 660852468 292400550 937233813 88608319 177390802 964597521 186249513 626474725 111177296 869485430 732786250 849989574 155934750 545262595 190349464 872250486 248630964 460270462 659237348 721977380 8088479 337159001 641423875 434750947 450290964 103147530 45997583 428926634 28555887 877980021 723382843 847975574 897603488 516453149 990672810 737733303 590918235 992400238 515975363 134483915 894293152 789618336 985029482 833267629 438089766 346749895 463595202 934822672 294753022 9016251 431839260 522052882 337451357 660849180 188640065 771611137 97357117 19712524 971276194 534235593 288903189 777543620 642265705 887169594 578779635 71588695 685094961 617158724 522362930 56061405 632136540 865514828 802584074 795569084 936494058 390006693 308614311 152202825 378501896 807867992 300557106 4984570 835073980 896446968 194824141 91515807 540023103 574217687 943951314 23960649 174327547 563010662 745949423 64238701 159891384 747855373 299125552 87641817 438263450 728782207 203761484 115362034 308395966 462548801 408108839 391199620 589067697 796574456 498734696 625139052 85903075 261828337 807651264 323178058 813870104 575574556 468953527 779241808 834255750 790780987 665628630 614605895 588405045 887823964 652992242 620609573 281320347 592604672 171543281 230579901 744025649 208959257 210329370 292351787 829200766 470550973 280656329 829876825 493708155 261320176 603878799 792132355 942866906 50498654 950735102 461351367 416531370 63305711 214214893 876258738 269197346 750779212 177564363 185735841 688559316 314579084 813001666 429302497 536569571 694711647 648259818 916058863 380892860 370386726 225083641 134044529 768664815 271458319 453310882 901399704 293348295 367602658 142537032 163188612 592760999 191197568 403198103 459122529 789037515 897653752 14280192 471441297 168225481 201762746 74556365 483506623 261915757 995710393 589400336 653244145 991897127 606890659 949414401 23486317 301296138 58255916 735076373 54535806 601308478 615096000 373360085 430206294 607413753 721338716 932350838 433992403 305879701 761879758 321869249 543859475 214840659 32261147 611568289 84305108 961033878 373721006 500598225 329211653 231599758 478610712 814961841 985738744 86073665 839740315 839713278 532629101 898610786 880078095 94746612 296364754 319762460 26762314 632499867 875277145 825006636 249321845 770283610 780969451 617868074 411005127 365060864 608533633 847061981 123594083 645277423 88431220 403416653 468107053 477346734 330354266 710294118 673849338 832751666 474601697 427398038 361606113 28645485 787523543 714205034 171507444 38967089 387015226 630770126 724927581 529124516 941240043 184201683 530353639 496764313 361340035 904161312 634713870 372071140 504272966 58489897 935949871 664330369 183466007 494970245 845885361 246130125 743924914 469971590 146184438 171648623 914936928 120587750 46810210 351808082 745169299 268097466 937508320 180458374 142150790 267405056 895319891 241752067 141273867 275517009 628022816 456627321 994912343 448387387 941770058 535868375 683083449 557049023 764496609 532019701 448643039 75472394 717034807 820755007 276303035 456026199 815872687 583309279 773969805 321308748 332565149 759410702 824088006 940946159 416648913 542964384 769145679 476712836 703112663 596939304 193621270 231142167 681758339 932939655 69695944 901072082 221483046 835284009 809665394 411601274 237976377 762695595 162874016 534019829 854497216 801187501 856542258 500654410 852840836 860256217 526964348 6966415 238117384 173492815 665603777 805574218 561809232 187947221 997795581 313736868 710498660 635374733 688561577 58139238 7817305 493998085 757928194 919120971 135499466 20849723 395050560 862326073 143444603 867298065 975724844 135527595 803963763 398919635 969641316 445646948 936938969 599780101 325544765 218775788 889386899 755363141 669876296 768514141 935444892 994508084 626882213 730659120 289161735 757478883 491299002 433889091 286103968 452648211 912709499 227579957 65162065 285499990 995942289 532994537 291279208 601162326 743205741 57685056 866614815 941875380 768615639 543396551 950559913 838609472 814422550 620451542 869677652 358010211 655438151 664640502 994270446 995845803 759718241 362549574 410799770 394582824 474594533 820717209 139054814 14344887 998951412 539949664 123422911 482097228 639034946 698055174 224179675 483050700 661960992 10250507 704111198 945940293 520999788 171648568 572246737 235625186 629072498 631610555 935078873 335934897 20815159 834161745 941855543 870516037 6195558 500848263 367266731 445031316 898228571 498248492 329169922 288094950 490510900 242372978 317062112 589049087 367293449 176363903 750970870 14253069 770930685 89313003 882875463 31648095 932183994 76915362 688321687 128675195 931191945 381934499 595137196 320311999 836260370 936532264 122346934 324620396 54576474 660869154 762291209 661095322 14398067 103792675 682440895 977595544 54038912 769877402 677166422 736217761 686674269 849236282 343478377 835243112 621185129 605653317 265013506 288173567 172881824 275885912 613074723 542740118 588229312 486332786 623832560 124058076 780406647 863679758 190882171 77304815 425527877 818195802 929119303 883828956 601973980 838974437 456025425 938103713 752033953 146846355 257874473 765171141 926387450 564489251 876219563 559106555 643521402 315708326 661158048 267016466 397882033 79503691 933205254 297414872 336922866 330528072 238280928 386028938 387372498 141820158 772047577 906003202 82968271 319384475 778476440 514850030 752713660 176808525 205465661 216910651 618854920 1616400 503477895 464084462 263456791 314228580 889186974 340690634 558384451 4566483 115564240 938201521 815046629 928264697 227754783 232961242 501736619 470021444 799507759 351390157 489991815 848813324 937526222 265130030 2750756 550767046 753811814 122599498 800641532 706609824 670049887 886003307 206244923 180115385 165187220 819386683 115404177 614734176 660734319 387732160 136240513 737785241 32971895 642301707 166637562 921542422 584388993 332435403 231738631 936637917 820413501 738353920 127727699 523051224 778965982 563987343 657006693 975564842 428576501 48419112 866901001 507514111 975023379 740959320 395925309 353138060 728164838 747288529 564992091 454629474 746121632 851309735 814620782 790672316 425629045 539801171 761827838 530575432 991190408 307448093 604070291 461143293 549164656 366204663 838876828 929291676 804926446 473786891 150517872 856762669 488605342 879102181 355507074 49386025 614402897 942769714 206658180 19469037 376887174 994976064 179448842 627407444 185977840 346957881 995276836 631464523 243360977 108547738 28043717 52117064 157876957 237533134 292671287 271186325 187404926 191561097 943935984 154523076 386547593 877379719 191600525 55449563 32953642 116744916 529414071 555242563 430481602 359601260 155584081 807293741 88108590 116273506 332203251 540401488 262971046 293019318 806176544 695961198 407403135 396142917 199036986 820978263 126268428 247799412 694050832 904495882 304130517 635321821 555119146 323492839 649886584 984169183 335039706 761519854 98593223 216429657 297722394 442022114 961812236 176219379 614292379 182493951 876506982 372430654 318000191 724220153 4261929 884398713 178180558 186626598 389918956 340306675 191245322 975530201 5919121 830744934 535021459 251664833 484668529 231641300 193196524 824723096 136273036 900696800 850853156 690102357 824110657 482896165 767733952 948550682 596684812 804281146 963659619 232891378 657420557 950456051 321570960 126393098 471794298 67807772 197611421 618123913 762998056 216167474 203064257 697116193 844200084 699041967 979159256 607947588 65112210 170975555 471519733 911685600 970056692 72323278 941347858 213805243 81517150 71575438 756356936 610767524 927799596 784559853 199839502 912148885 368487799 707546151 694645555 29424379 255621196 142630891 306336457 805348516 425096970 815851901 358417996 339765876 579988651 496511120 947500902 494278503 854622602 812861180 504262153 609567135 416141245 171538458 343918820 351968247 641453537 416007044 47839277 523710768 797811769 579526194 835899814 614894340 333380425 411834357 635720688 132353090 633628094 498451131 666937820 229036219 586649177 723748287 875584428 776820084 31181527 601934835 878294941 302819050 15580971 770513318 729414298 419560315 28319137 646384921 690004200 641751839 488605359 902492807 554320781 883123002 357536148 210456980 408909079 635283772 778214630 34166300 360596246 728220554 10254713 831288147 879000146 374553957 746388613 925419024 822748700 841896621 661640544 872941437 302005523 51663542 464250764 8088243 972696026 28843171 616810432 517015568 63242039 667608532 110217620 791883629 137267314 596563690 788833453 750753925 253625494 110875780 631986629 50019583 510703338 456219311 774984241 879016365 16738993 191457658 269453438 536857484 798606880 241873427 772925477 388453622 934388237 480213866 517224766 271464995 609511406 930713187 21485018 333945059 814674364 442527755 823145763 939742982 275926776 208503667 286854176 702865933 871788526 160794904 101350703 266855010 915724105 923044050 654504831 99062078 601681250 252581672 858557282 490472118 988430135 822180095 948219460 397225906 168966287 256183663 138810287 361180608 41987193 908546231 643233676 746244048 189217248 441989069 458310028 354371494 675681102 369415378 116405961 123332115 734148051 758042328 115788941 67568319 264743110 851642140 796269560 148256797 259638559 560551337 230312369 448089685 625667969 118669184 999394193 898622061 128150111 471643016 233469086 121855191 967512052 788588164 295851162 280436149 905581454 597334703 358433267 916163470 516825283 219666791 155253225 808153454 47211805 233589592 869521414 650939268 937889682 142584087 130923437 199458463 30265132 955780597 377325322 999302954 890033172 677735634 213332792 185524958 380196189 641953932 374162783 558969177 791606174 918038780 427137646 642699578 970924244 892260567 782797379 353859480 654974608 371170546 390040364 905941725 614268586 108628606 559673302 557499979 776995365 240700677 423827003 384368123 657640387 412403080 972787379 964688436 464742967 11200626 165358941 714262344 241294621 989059245 41971777 228303663 523311679 988039552 644646061 623767374 461592778 337954837 442890846 538841888 353166051 95436456 540364352 20379196 451336584 579698116 697183688 645908018 874981367 79197732 912298339 294118312 71798187 106159881 573636642 64968425 957125442 45564426 941956734 455842840 159765886 649836914 963786803 874089792 706354076 787456710 161138898 238264502 798177984 94125783 147293546 554594141 672954994 442960320 254462298 356676649 582735849 852732862 248871414 659652337 834946872 395797741 796096438 570389444 349885420 737482115 387691143 645011736 472622877 354705375 453862552 337226006 546321602 404166413 895219307 505455965 337567699 106993498 499191244 57508488 932956674 939856255 395416155 403852345 482506469 662012791 571319894 793961597 141339407 907772481 650528733 469720483 696526250 165867633 651352904 136245263 975062557 725457702 676747370 34629380 132712128 253986717 18262417 397603301 99945098 346803780 872966166 827875602 423300875 658269787 516814688 873126510 364636333 820789202 636498641 375632687 452265830 392615504 5149889 259942537 497009342 598417408 359952808 949836219 371520465 306465054 228512204 172952058 556040771 835263333 457625011 245480792 931453379 144645398 146675403 478752308 732884067 289752618 139859062 728500315 659616449 309186185 736121016 656931240 127390663 254459719 267074537 645645362 58368856 437392753 695702803 819963210 161073688 27185881 402648829 514409710 366181913 393535261 769075017 411010594 418556320 935963806 565937992 445204184 679178909 382253312 826949623 232906856 470703700 920304272 343048415 989255383 507797271 207874252 245629649 905385444 964961339 827263663 96757746 791944820 190759093 411287273 96381896 529844975 312576867 606709848 366372658 101003691 358402691 383874169 785729960 898722102 911192551 520024593 86680201 283307405 726123445 294299811 351132631 343793404 350622421 629176685 89137164 410028749 83860465 901217837 914329689 10299511 120658602 744075552 644618779 610775562 179550034 827202278 407199245 862131019 650623928 9288923 161372315 759709551 545280433 198122130 667414650 8931932 739793254 677218443 133472855 843361835 617252543 542932322 96454986 388926396 445040541 138282227 265887128 899443368 833453232 189736206 462324727 597586372 407623799 318192754 268448852 447304883 451531484 567078068 121628486 319148670 378777845 614301618 429380998 561822834 288207350 728562958 110568898 559485712 860122138 404375181 41721851 763837533 474110735 819375930 558794098 18091457 899972008 63634905 89492062 907094222 930579549 345181190 762376114 557648676 280413921 764019979 208618816 692555218 769917243 871536665 176206069 100252382 761718004 718504896 3779775 264352953 474826567 330280922 157109638 384051021 142013092 151563037 826870422 128032446 81694783 527086935 509393745 607803681 772832904 257568391 826481809 412631491 440868359 310318580 111632586 101660932 798554370 416242105 89720995 241425919 19060158 279199316 531515275 358199884 293727316 224496605 558451189 216428160 272329629 545221113 382495196 103685580 758934516 733750525 821608570 637040217 428595818 559292497 72427833 448065164 967876916 603659524 65499790 956078678 290352915 164952218 938587200 325928173 339177391 351926403 788425965 198098505 618025318 744618202 691763907 807997130 762534996 756780982 528029627 160996084 588654287 142066082 634537623 468759877 72389628 306055319 879673573 275647914 146260767 543695347 204927559 280846670 922470665 205776438 448408624 644716404 592004435 86488188 805806909 262140513 887119092 422360789 741676279 672554913 481867525 650848320 814909077 930685965 89668865 220330551 715147597 892991755 826421724 390514909 410717278 978775097 479657311 447254731 878900420 17246962 117610056 912764452 343483676 914183031 553910895 278847082 347828721 942598621 854262064 50444183 517375653 862616289 512040570 979153380 173368685 260195680 923748622 468879151 338884374 366905925 16274168 522023424 131738473 347062559 187451018 496234661 891997265 505952085 789296920 197385083 791307270 992148349 556841843 810339276 580223223 658372935 652587988 753283659 315372696 227758082 15954674 667622300 729551880 507725668 161285443 67933546 378471051 674375354 965320210 660649215 8968480 873392809 940807938 716449137 820433288 368613532 322116622 232755055 180833364 198365952 568163689 741208546 772993976 26230249 742817992 81245109 707847698 746870403 725144557 683338322 190852171 965011087 540732996 637977348 527830498 504887472 198479665 820634038 617142608 756466672 363030921 150700322 655471270 844980378 118277668 388268680 758172683 213296303 611762641 259348498 774646524 885556700 337509108 393185563 477876781 605126029 7404678 486993303 591654216 14178755 623093327 661516963 109719373 644747620 793533160 300884241 7346368 88517512 824223290 133267322 511734018 124047945 936692820 810106315 550546114 567239681 765316614 465432855 334322235 571963897 380664271 958082626 228679198 780849309 889867541 897344875 834052218 388329033 720611456 459280817 696237981 244807887 936174963 774317315 196560964 519353824 393118332 387218937 459895518 261024551 55264545 556183560 397890836 240736278 45310451 376458401 268874204 464934991 337125055 6469554 208143691 677711981 569923915 354652125 751235133 648891851 706400895 13386782 981409260 205442403 337191579 796794347 927692467 200788506 789019637 100845650 384238346 137988325 128736639 326223943 131472526 881491302 570132782 216408688 81305136 439536459 124755278 224926549 309924552 752117813 92981411 977379659 981405150 959421566 927989482 266620686 313236283 276427411 767966561 128616213 429101985 690668362 304186883 859563221 599910290 838289536 474849392 426011752 890902702 376642266 888326442 743956547 885672049 105661828 198655000 914159475 224328479 756725292 507922791 13877276 385166176 868748616 307979251 646138174 942332614 889653778 473893116 951672686 954510808 9385231 911304174 135414572 844260663 952734054 174922542 17714376 272361205 741861931 395916559 738907572 41154838 316670932 816558123 635156940 257511916 289739874 294924952 760262667 923678925 112571525 167592234 697215514 850752227 836786984 926840229 506406626 517611728 267338893 664624585 327334119 168158737 209966894 471385974 744753970 751903964 754924743 335134282 474670 922867772 907530129 543049227 141399195 42821955 924403889 251681253 300761499 543151619 815395074 301035467 85272166 286578187 541131276 55758172 584134144 51069983 701311437 319517822 154595693 624151764 40731087 322643997 781200925 692791195 617444532 935878269 628532423 684416500 272208837 575379832 179716919 291867686 481084398 342747934 525596608 130176322 535936581 122105506 796102278 220022818 517291119 880662458 857647199 540343931 207100622 799851549 838491039 356659519 627643020 511059672 504414579 44601026 268469696 109530302 880779882 88313229 735997589 469591677 26972032 829120152 176369385 647655140 918038655 655129983 378905583 364265031 618503229 730308320 646448585 802787275 748998169 669913578 649836160 728801055 770910948 300746378 978381933 866322217 111737646 290014853 371151445 907698 944120742 786089778 366547599 558509579 10589109 761181984 956179287 770934580 220517425 976046105 78324836 810523400 821053958 570119706 634143347 601338674 91857813 600878376 477403509 564298121 912429971 117042930 525748634 509401605 545683554 101102039 689082139 453055260 516726635 952511873 626473655 571213461 519007206 626850026 592669093 353187053 607348280 591120728 146087837 412840884 812553263 293403970 634362499 815267680 732029136 192504908 493422783 806950625 208629693 821140119 937378328 271042732 958079397 288429194 947707816 876028341 142093310 253939704 165551120 741239317 519561522 703105569 585077269 168213837 629137867 909088640 461517097 637376777 441951104 415158630 801512665 713424789 781117777 299038128 121040486 598911779 256483572 171651511 430239126 235444854 820587743 54055224 374145902 879023406 663003304 516881364 378514769 665350749 366170913 612650643 438782345 641839355 858823344 231854425 930284599 481170212 936089072 171184119 493263974 332076809 964015361 802219476 863532550 725823034 227334050 669238942 427632398 378404783 581239408 523508106 670892481 391408303 252833769 647307851 143936072 16209296 323537723 632326550 148265452 284130217 536924381 795882742 697048573 181451556 457881899 246356911 166094236 419215800 410040376 101526848 852789917 533404478 968908523 721596653 596511296 453286539 616630046 786060070 766474310 937326394 609778637 172491212 251874883 704712310 790005568 93550541 783820215 860624365 784575290 814968468 483046321 699802353 986145302 883611605 489946106 941269473 100382126 670747234 56078631 495346645 216862277 915007279 222523096 598846248 471952381 182498394 298465578 121649724 291360268 709880826 971646506 146079890 339323924 202609627 304606466 708481018 413861797 354905403 80460956 835033059 917985215 569342915 177830437 319642002 869065223 963241849 97366689 181954486 177182817 103534705 413156154 15208089 961983195 868297329 173357344 789493240 240513095 422851987 639557927 851992803 699417957 221401402 285579733 823604565 908987545 151842411 759649631 70482428 519646917 498994323 933761045 255035304 34787854 145915849 578710366 247883710 655698396 283743763 569076540 497077321 950082526 459136942 343329076 66304494 91785048 686638381 78618609 977445142 277516211 87393410 626951042 241998344 190517644 821428280 182720589 481488322 48284674 963604415 913253592 319745654 890606512 719751615 318632783 980226379 359233659 973267427 539456594 853260582 807004601 164896137 959243362 827957335 763640352 125176404 638705279 617583663 594536358 926606523 390358045 892622699 568438840 145010315 899098325 612772136 508692269 260127859 614022698 756824181 11950545 968321305 518083952 176530265 550707174 168862216 636137197 772288627 206211524 685652583 136130103 254236919 887949379 326616034 27532981 994363759 738636603 876686946 867264299 981469604 190753988 142801485 878955013 833520256 970218705 725571236 830288265 298918742 910706728 170170837 411043343 28786954 514954770 941535453 884625129 529502178 816151987 119905639 585695693 634722111 482328856 308787235 414138091 287911679 613312154 932908200 132903357 344475477 941394395 229166803 443626458 218815149 732308923 289229568 25166914 914499325 809373033 844371976 32424434 352645041 106645420 333404581 203350306 91084037 476437251 762819068 178500800 627706743 143697486 599100397 243662813 319744481 894209310 713026432 787016933 502971299 217012886 21095021 507377067 269185557 483349493 28075833 92084161 295383462 724972318 673000082 811033223 402646857 725130249 876611716 567046868 359403167 648080896 487793247 416428716 838079072 752064604 283706920 125353773 442935088 792308517 183317763 807738718 353056086 187451610 33909595 160059088 410997598 859520175 16858673 982408459 883545779 817373490 339847580 343848060 551363643 708883229 208380827 961337205 545228546 870684030 332095169 440181873 722259825 765112942 45150199 550079532 828098781 313415546 397408573 674823945 644264307 48196288 11841412 750131005 139164901 813819263 430752896 545471171 17358615 767075912 674444410 192538173 510396049 147327974 879161431 325334486 858271345 681989117 71889064 566175665 737221126 943984085 640093983 558896052 105219209 345482193 648054664 975171421 590506292 380978419 62154914 551140767 869368052 430379833 910924642 844655981 619597989 374853036 528846263 364289731 947564429 640124076 307457686 247325881 172247243 475302202 350743809 120342502 958046195 164002757 221735022 974410655 55633081 362081033 489476904 536715957 356997474 294133361 20300627 472701530 118024976 953487025 708525982 953080198 613995980 689690342 653607263 795935252 505630350 107081809 17402387 452159994 501075040 928871230 949705138 568649507 594346702 232136801 746363620 706890365 14476042 588264909 622939038 159856370 265372502 282335246 932346725 498912836 307096229 716006802 527993494 979216934 6075519 946191590 159004873 269952463 977866260 280763297 412225808 312668434 38615381 746127363 899755436 43576891 748714343 754959045 893008177 752112280 153668486 110243931 890361883 334532567 4593419 521308252 472224423 450114262 92833481 161862589 740904930 168625979 647886696 137639885 570766516 591977571 355898282 789972176 695573050 965830465 475139508 186177358 822271558 888058397 364902224 902745037 317964885 495356629 325493284 519814459 30411980 214913066 833862558 648503762 704007381 124468816 912670458 492051657 835058987 672218450 689935796 970885584 777677124 541608213 684386419 832467630 365449965 840521599 701501467 626712028 847475050 56197047 241839914 436513065 494988183 58579228 353738425 792532418 658896475 850249976 912020705 108411175 924436370 744107560 992186075 469333136 322823582 252962414 128727880 58994653 650928442 451372307 943025978 56394838 871457539 213768506 392495254 330040230 638187759 526124858 451659132 389652842 663933102 510561658 609434449 245272693 38148 371413884 966933046 109946466 415232138 210426265 803480204 687375406 744304954 732099477 852523885 470725925 902588354 33234826 532071739 413347696 736212943 629388531 951566222 383557168 698482520 675377701 516080865 587625887 69927890 174787493 838877039 348993985 544449979 388885967 473212152 295220145 250823902 92993504 530088649 322474800 255749365 318444744 252405408 484314020 210253858 139362319 8349587 791054191 391237135 182527249 769315821 473603528 239687018 702837995 940133921 204122942 276578533 428094449 373304828 941970639 754815383 203560001 902539426 864695563 691654089 717431155 912980844 996323928 666013012 721027550 975483778 197405781 920131387 336043985 171241199 779364393 924211300 282038784 32177898 228888147 422052349 731599883 875597703 528839283 628712925 366067638 807904659 776728412 62647244 832666273 710267647 44935407 233109523 621694940 50026319 661948074 546477451 821127059 170893770 969713093 893533979 383777105 182189981 19272141 286932374 653147664 771865099 238319754 918474682 528095633 837842673 956152471 711327354 665523930 305570067 499150662 354560593 288928694 782490443 524708951 404612681 627502519 136750174 591466464 168106504 808978831 636050167 518148706 713542246 339510692 874128486 867893128 104014217 581994003 867860328 14246926 3117533 20019203 721744590 538148875 448264197 960660510 583648526 515490999 496573597 160700330 626465448 247835487 995297441 75556292 560260420 825588644 364535085 148155407 573986543 970096714 640775474 818679744 968404683 384758332 989648064 321032850 789870438 406910830 353112177 525085263 287123858 905683276 375375651 722959231 427732863 451326867 394190723 186430114 482062777 651832223 991372018 873606421 443836750 223504130 707374937 773492839 483898133 353047106 140993691 172472373 563801649 319766414 477117041 621382519 800915928 990774310 315167228 607166162 721834164 959410491 89084762 374438879 48785321 296721225 237305575 228965552 242799327 121870286 334309936 127450522 315817315 97543445 363253156 698585090 416390845 930909612 782915537 60013004 682216889 254979318 336699395 851167988 326419299 787203233 565404028 302750088 613201545 918288760 184193253 640323481 41154807 653307205 847284982 984662781 615376339 604100982 312399986 618657164 180847391 499875152 922871680 178507621 766471353 386440592 34504896 657064670 310653563 313783132 732174954 110076693 16991243 922928210 554441277 778900168 962709969 979776917 127855640 979108552 788555040 326977667 296818845 760134945 726271241 946635836 693666768 527858011 666934147 56273423 172332564 671787386 990985729 87204399 934944946 64567965 353977489 559803971 480507985 631222561 334300136 361941751 37466088 974036134 259328563 994831811 238636928 891119391 805712538 550805745 794613753 936795792 840861466 123013566 465572245 151225925 765004691 618911867 166346260 83684377 870266044 374901653 246346038 718393054 864334129 526672105 330912246 626908161 945450405 600875672 96199960 229357064 834869677 140586769 106211236 561896268 172239614 445007758 581897663 93860818 915313505 600042965 929563575 9558546 392482488 578663439 273844897 736432935 414640617 351878120 823931149 389551639 183593040 157878708 222277033 765890493 885325440 707773221 808937321 213072383 568799233 765770566 694976936 44158175 687288197 623196483 234174145 649600159 493833993 959465208 191337467 840408026 874296938 38537825 959485912 848334689 354560891 702047683 618350240 541448615 773941471 737688690 808917766 917839974 698686451 295982578 812812418 571482239 146124973 514100563 929607632 614055377 572222942 867222400 546777394 142060844 200935067 462601955 934202552 979044973 508099597 548963331 898512900 396128718 26249721 939786022 8772005 843234867 915967228 294395154 466419477 874487707 689634783 423528093 386962103 984926012 115456190 232228936 436482067 989451202 823462611 726682717 302815191 615215391 970771338 451153621 135632674 111264297 603295314 878255485 158904328 506449125 84466996 798483317 446045716 607109282 169441746 442051938 789270554 957662165 573104427 467227834 807047609 280874813 130292494 818763456 586913437 944116176 986755972 674054079 246627016 421103725 677573729 924672179 638372581 482953692 977123708 903260910 990525377 71307556 372190764 281001550 401768164 991504209 456534740 471119584 454704447 263455270 407154690 983402033 7800475 246390911 976660486 302055107 942987752 403590578 2835780 29223264 731443019 242724144 865852205 108058827 400286463 557191398 799544381 161709209 743997672 969110833 536249633 172351917 254419908 751020819 649608335 246457395 143653912 794968255 201470795 469099184 130216300 521592165 949097813 401536893 466685781 6606771 358119805 69825817 979540495 729461041 926463753 20500982 804864254 676689631 121996386 93171555 914655117 552788395 928800340 867424475 459861396 205395303 959379932 294276556 629306159 265382954 393766700 122596812 429222497 815313009 750624996 915413908 868266420 726617254 668487422 218161229 905324769 81782854 563531793 395596101 320569671 459725584 995900685 902882494 428233934 788643315 735750447 26963946 953942554 647033859 538270969 590418829 46699085 666379331 217514956 392710339 442910919 708403067 371223978 780655241 407299649 814855836 508308664 250859049 107918726 728602740 759098335 393325913 658224214 419521155 436346143 21255962 268772456 36559135 633097144 993209567 411307689 7216502 447144986 701578646 848966394 714556258 717920597 887608542 381460184 436652885 555984054 855020178 169735275 925362464 196622542 325159789 143745496 376201778 498023500 698205474 184131114 739736779 230129842 64080504 562623303 529260295 489675707 75085923 787054878 813304773 329976003 528752851 788798676 357291198 303595062 917372975 642933267 427388393 384718102 1801724 879867879 130066699 147208998 628579343 654147125 43321278 239546842 714895149 958206537 798088294 443631339 646475673 888079960 374558828 568469493 236426691 426778506 322994905 169380879 124241146 532766152 587152089 615948231 967207160 626203130 761137220 634232651 971188853 402211990 93539620 154266169 591156055 48583905 944115393 671427331 840317923 419351443 158046121 866480423 347022637 208270415 390799816 406185522 520662331 628493473 920292050 353220537 887159192 42318226 309031247 975055659 782492268 810745444 727733973 112565466 753257758 236418469 137829272 708383583 588059114 666480128 546428672 964524342 428241314 21560292 463986327 762454608 511950218 832968151 866744643 848250033 649600397 823663673 459609238 898985354 237713385 340514938 891593447 825842617 840842275 560253431 587418384 362548086 83081981 225135608 710819505 328028923 3598144 821943796 312069361 374560756 90561523 971896643 653641635 354999458 182342825 539486856 475772189 770465030 663921200 28725942 361114096 563717289 465936821 114781846 695540100 171827639 422867515 135327556 95417905 566672045 408021371 628379419 581620054 554050910 945720122 263494345 562962891 681644756 441615797 981422173 333669812 541354701 763356424 871054186 760272634 792068256 810128003 113887544 824629704 15922938 85148604 879785672 739237017 475756226 647813006 27662064 842860072 690983876 9255066 340442035 967172493 125241016 51588550 570059032 417027898 771879512 418595438 552648600 291149119 337224302 582726977 614495392 290076275 698835259 112112828 504547951 437404362 820536912 115453588 685408775 221121000 246328356 342676834 576270327 321410052 704725708 771517068 387879272 782925804 376900560 367518254 186459203 48774988 75988242 141548287 510510967 799173807 334288587 508533757 10064828 609856949 936246274 738086494 13477192 712059721 633938324 702387349 744260971 865687428 280955070 886847080 867759220 181538581 639324398 250618013 704017640 54509182 126130802 319346805 238005834 100611014 332001253 361965511 451928183 25653815 426182595 753133263 529433303 473368644 957263963 928142937 401745907 2113035 608745392 42107149 704036737 257087381 194174435 985478919 587666466 557829365 671389651 931733673 376964410 469336543 82180280 212593610 140612855 910046024 521826450 338825947 522435803 242620001 239935813 519797264 940899377 203238501 32156079 212935957 185511043 597411205 945658456 663348200 87977 592978953 789605289 93957101 358659413 886631760 730234166 576654533 177495063 520364957 277311421 766983440 665505391 620313571 205571034 441142595 972429235 124411050 764420600 281401391 163170643 619127516 189598733 618395271 52660336 106813435 77775139 553623684 996210139 628573039 419758604 707886079 308265923 973443837 905791034 182258884 521427646 842696448 693727432 1143677 335042365 532631240 442661782 521263848 58741354 716318368 686824136 250971588 503462843 524076383 780533146 367840126 603014467 117415609 693921355 435623355 956771737 519033608 560679725 316733741 737268534 602474012 108603695 601323262 42258804 902367786 787012725 721099695 431451727 56432177 923034249 386590046 276315168 42652955 579077672 126024240 442185768 577516976 985685748 265769522 86398939 917976929 708873543 315855602 654885264 843413157 191225195 412144773 643227820 755871816 937008130 120225148 846335690 971120341 688526701 604970690 195059830 626539330 897158674 992644555 537176779 604055826 488250344 609049993 71203785 345598871 96426200 97121992 353645957 837141421 664885274 100688454 504488411 142592162 724100319 175076737 405718769 421408557 302232639 749164337 219108915 585467408 805640657 505554389 330255732 803189743 519584591 596990740 113857959 148387652 508866134 290285856 236478969 886207632 822610515 784165430 685451020 308511745 665951437 276535783 167747392 831393126 996532268 48873911 452641258 529218229 697347666 290828208 228083178 35982184 97971868 49068142 98155541 335249350 807154054 242079580 611127138 611676614 331031818 714080386 4541668 264668532 28804648 155995387 183361654 288383125 453490811 58419223 319747177 855424933 286834284 294646936 944713586 817429084 304967101 318019690 898066624 644267474 868298842 646875688 676357288 677709475 694661184 117833374 449058033 408081847 617312092 587343730 256079976 785283556 839145787 530147319 783091633 793347264 575667254 924440865 981368939 669793038 928516128 215877092 221935462 465578057 17492648 203547190 852112628 730718756 661641150 692866263 222246929 649427702 323870577 146312811 949238539 922299534 346200326 924808708 624234347 355266265 343331558 69217562 48082184 663722843 99455589 961478437 84892180 196594507 884051564 166381605 388539346 885608553 423196383 750636729 653091188 136532922 406489767 311844498 535736705 976200634 530415726 168079128 241784129 185952397 468570379 585322306 841321891 514251011 123261206 278556839 684055609 502936084 707157036 489891516 600734550 451639417 241043180 820434518 285678933 458163450 885061598 260932087 706220303 736278313 736482580 21967461 755719926 135793731 213170547 301475427 9328586 127439556 965398946 8176852 521258776 769277007 278598995 300445371 704366094 458241507 417924486 682790855 696249269 154385582 232973710 974758046 526979313 505616426 365841303 703739022 619977106 400241369 869571515 824827065 631171466 289819998 130270632 953174155 624092815 53320797 690195015 882770334 565689580 339195375 625093105 305013338 573207206 356185708 262902698 155936716 220742686 615524213 460579711 987399890 521597979 362318082 386019781 353522673 375693543 136252404 731152934 741898538 386727414 975485809 566117264 529786626 168869215 237203213 774641630 97299002 595157114 419206310 54929214 169383938 688724638 116524589 642860679 588932686 347703243 120222190 522052408 43899481 992882492 20014506 617527638 622634257 755899620 95130803 701000497 922810709 572492223 173498559 627416392 440933982 267416885 909413009 369480843 652074125 603178114 711428916 463989571 195058003 855678801 638316894 885667754 219063015 136766635 931678805 162789756 545712789 276782715 370384304 870082386 793162870 801073445 636332243 280016649 892298058 23902126 615693036 152492809 480097180 256399435 284777604 881426324 425158068 957604920 212570389 247067609 946512489 843695907 990681421 600061998 481233444 742513292 349018012 118478240 565210990 99129158 655089584 164287501 604766489 857967931 394765339 81559579 348335912 118666255 24420867 154114744 756642140 195265851 956133795 407474350 963303661 314138494 326885551 101523189 715172252 228468430 137094517 86668876 824008223 388441030 864139610 96091858 688821632 554573188 829129623 685984001 316445308 365255620 858239390 572426687 122136164 747697053 537521364 286199637 163862197 27341988 743882372 692962639 969344879 343764867 577907890 889133310 602746961 699079790 94482256 852693043 33903196 163751739 315465205 750537721 135040916 164575825 395632906 310409225 779403732 863382428 600573986 350102855 438982514 644064415 97235977 99667065 67428669 540133006 584629705 35739475 583539288 184153816 591218425 853419521 224353833 342236257 425621635 491332802 584730021 784280113 773743340 598259932 142365244 326619274 327472105 888816939 829886360 385136151 806447815 782577638 161865753 588790080 728625060 709038663 207293075 263565326 86360618 5202096 48937449 457058763 95850212 806966082 290991208 850564881 723642395 311832298 184884957 508328209 624210511 379795330 892525144 816096847 964514696 552152382 746259824 912590930 678516406 499621797 260514561 807965356 722127620 842934697 295147875 482802705 429888330 510729610 539882259 940243475 770711944 531594700 392585281 862832539 105142164 64361721 430687484 828737923 220461624 561496537 10282751 374767929 425005151 305387548 965467779 20133537 375854726 684688396 671703988 172620748 165642402 479025743 161504509 20145109 694861270 55637097 95560494 625452841 719657128 828300312 217295465 353978196 433610905 802212327 365887496 722131392 39726085 835056919 869905175 846117670 284329507 833239010 871700024 619583743 844878621 484836673 43011767 990740330 821347328 348147800 384411980 806901851 159392065 988138407 122995118 370978542 432708590 200826741 571440076 773199989 565797487 959192562 679641498 596623630 143553821 592107481 360782728 669564339 559295879 148404050 406932752 183833374 386685623 805876242 864633483 390279352 246832715 687566357 424645574 827789268 620060631 105186518 66284167 878074397 221253181 650998771 539884035 209405227 388296719 918573170 391388646 860726715 918416598 153393622 407441096 45638642 802125386 147840722 198693913 156697825 857701287 257248092 938068459 149317043 973091597 752163564 753172331 751754918 294492398 973272105 654985105 879318235 789058733 226496524 855631498 810156715 147008826 296337670 80678550 699532781 167675461 405003518 414999879 818975727 170397210 998080390 874147435 396493821 867831625 379430488 132873740 656799069 125280581 330636143 402507653 21775133 692073300 341290478 471982038 966748630 943390917 208964408 151708219 871636978 252282281 860573067 64474599 626346915 736673387 888393362 390056386 337343769 246470422 690069848 555548698 898578138 178083763 541433252 539783858 162399721 700250769 729874625 846596498 712748178 914493447 457819817 518777392 988678641 279460177 794890621 640520417 267382190 743825136 490056173 147925139 55251024 302515044 880140825 218207018 977050101 928828317 466821797 734998124 181951570 674630204 229780691 635570481 409760543 446409052 840354284 274804259 818894597 979014864 874648609 767480741 212762518 747976212 323467134 540558762 542535707 952188102 638175624 195463342 416456372 260089403 15290765 668268485 32935353 959383118 495199798 262561548 536390374 144866871 809956600 329164393 754635193 662349724 44092728 108485329 85925737 985972210 719446166 456418846 502256897 872345499 433494459 795423656 830795866 883214896 148933867 813109587 985090513 416541263 108384952 815229419 43333612 140663595 316577202 831687182 442892329 590354428 81559897 381751804 750885145 6362308 34174466 318341143 45278708 586372170 145599988 380397153 355494915 403426821 811153812 1513634 399025477 570136962 511338373 797038503 706146109 583450583 266324996 612008725 574961565 232369588 15373200 120468718 750621188 106018899 238430477 736996862 173573560 367336611 843039016 738755764 115128537 164267678 504286313 637414218 888510588 54333066 54636491 537486753 377632173 523898818 681360966 69064235 345342519 600633206 435417826 743997055 195302426 474613494 781267419 305859682 185594898 953164971 245894697 170385486 178316549 870436526 307439855 611021690 621425545 913802781 809763410 525930124 367702048 821622095 856730704 862723784 719843158 504778271 731566874 529237974 654096743 846281259 160500814 943358086 457384195 906840333 150184077 972550887 355715751 823720782 342979521 925646656 769601774 99723820 8340471 872422191 702078162 427079330 745250728 209914628 908995463 433302925 130570540 169443778 819346559 316271788 469285465 305707892 875511894 722704648 81374476 337370316 485662458 397963937 573342870 927290561 21641358 152445295 332222145 774646027 34408425 609913955 629553066 941590237 504172799 952870135 372345573 179176245 158464720 372563675 882860446 589220729 879925994 551410522 199916621 509799292 651390139 54387581 484926539 314140675 482459007 231009526 204727672 528878056 256182296 518929831 51077674 692186412 254250486 553984582 474861366 541911859 919697426 10270566 56856636 16485511 229113113 706819143 286840477 78454187 110307645 495703606 344660158 655569948 806993075 349498231 705421686 197256376 711026789 140250852 410076324 907458173 449256784 363430761 672302636 340517471 241526558 386988326 227757992 967284121 988423280 894879144 841545170 924603048 365021073 771283574 602356931 813862261 398800565 507263662 886361228 491528661 920803946 423960870 750310743 778992564 688782753 287412409 277999014 351075886 46321698 332238611 105984878 190561460 48949055 474978158 303518102 286300306 165845404 814482897 268393896 130297232 396058880 28097377 450523658 683913776 186366828 607183318 331777278 381145363 154708070 98381393 250052065 658140778 18752810 413103322 24963854 626605261 504858885 64549192 766162268 160828081 466075288 446828302 762789787 198121865 239437764 132722342 719454699 8367406 904399460 3548018 584249324 478211433 968721031 297043146 846572727 416764025 244708451 886163573 498639046 73690416 623106920 310342538 576626826 610931525 414992704 699581833 457490756 744820514 959839738 936137260 845029631 324023062 529411648 741539978 485743974 471948030 570450400 39282928 766022635 834721815 377234909 251980139 530349229 907477011 697691829 821410334 183551461 849107988 909584287 265350833 575624370 502145337 526901119 642257564 360657488 388883997 407825346 140663245 121745585 261477537 571936641 889355381 966884578 495762944 824776182 462604112 694249916 836393998 263799771 555280449 268415267 846226120 805882454 120154628 511586374 779074599 76457286 364335875 781697366 268600466 251651336 917796995 589767120 813903093 494610688 830162320 95507974 927304430 448567827 819089423 211785744 237273962 196518663 922340472 465880512 907148843 453389744 510909771 91257107 521521115 903042381 862982153 459130890 906481376 271701904 875941391 910223731 125638460 370510843 380838389 513909326 347627034 687787506 45702000 898485883 793884354 861008446 653597570 828167615 885030340 279466454 768024532 726385186 31517666 774737636 452139510 718991584 676037774 264395522 53126142 803144008 869293122 925000637 275393516 959724889 793448064 68560625 79926379 827990670 905479176 890770943 65941982 702939215 313369820 102613584 266290712 152552141 111804715 46939344 667899331 654718784 930313132 168308687 268292470 930008990 27110943 634300747 55944113 417146969 649405168 450746267 626888110 974363798 378131653 570381539 514641180 389302885 817131852 966499090 526143343 571054592 597309503 338640582 887536332 172875172 64635261 13594679 156419453 212202093 882100268 652993589 574175518 364511814 118901139 835100399 377652021 786635140 67120764 97841769 340934287 612132606 727599171 101316829 23919274 423006611 753475441 259355484 682386608 681205932 203049538 298131115 691824548 799684249 325376532 575400637 52971129 618491302 85693550 248046221 411287821 524449693 884374659 984779780 180689039 938856970 194202279 353218987 303097647 172533453 152030971 339707468 454207215 111070609 404851832 366596725 106803526 500770041 63477456 681769541 569367395 514919770 292821361 887483020 909113254 991870637 507567888 477943048 272867166 772607704 21439147 385130588 243628051 744086634 859233333 986882116 326905960 235984297 303145300 441948438 978964857 926079995 278044471 479668361 540766881 44704054 113034066 297457011 988455873 660845775 650408457 502065624 681986299 279209498 974695634 370229944 106902622 883478044 796944036 262663188 166159941 667189487 587362561 351154471 454103000 188559637 550491597 431857217 367095369 432847790 346695423 11621395 186165553 165429560 741379712 316851402 663590638 424824142 936261345 233967314 470050738 21516364 514611451 762918810 594218569 237903501 355671122 87839006 215476880 550984849 581638391 206552929 908806674 135577074 849153333 559874741 130679942 964695834 410830985 431591232 256210128 523260483 41022544 505871900 496937477 928733213 552911487 449444747 600568192 841226759 783753513 464650418 658583081 153216120 968132198 603230245 148586575 806980888 631638594 603582821 822923979 604611466 627250384 533019931 743696036 769206075 466675241 524222324 439802496 785275029 685873513 386642920 917715490 320035782 644922641 583974114 25034840 667495208 654130673 84889249 993015496 936734933 659661165 926474113 650556005 272516487 405201809 347313545 545307440 133498136 239841688 21292557 206645642 158910636 818613569 235368894 436959723 917061641 700247534 78077113 743499794 558844711 359547729 944406563 236035756 183616662 358690132 447729416 972775535 239319376 702113509 934743006 607592499 850495455 80155990 576828600 733909538 28734000 460205449 57213294 618744332 845419993 275617104 495775916 558241213 442798073 238479907 841750401 315454904 556373696 804366907 811472688 937200134 455315270 679299285 821402082 824732801 387756149 235482704 803499230 806506132 338819560 762545255 256517190 33729293 467826881 364912815 628673320 556206865 951235164 762232851 799055784 935684338 631068136 595477750 774254888 258523821 400097745 855344457 952643275 331456431 297064553 174342185 116852637 545825691 317214781 77779847 47754272 301049694 764103416 142961558 670374313 500828829 803913427 284307455 47712917 593434849 974121014 625922514 197397993 981012455 450774631 802960341 375328483 428960859 277970514 286232023 748342530 160544587 257188282 3030228 18688805 512471358 777655415 252902768 149275838 603485872 871495710 665314713 966900689 162262131 701469298 607535491 526711470 276168285 805830960 274203537 968687735 423678838 76334238 238600439 681589837 892798017 138373434 931921442 970286358 492214470 616892657 695589486 146413607 338967637 311496399 898148982 444736419 421175910 272534641 301427865 613950912 646149398 925400556 868458128 655915702 200243814 292718900 208172547 916276698 539707149 722943779 462362672 250458369 494606999 960849813 187134045 132434305 392485888 793102443 890128001 678794751 976677769 610292607 759659715 89973210 79551888 395617161 342300839 963621682 204487861 856968206 171134550 490419431 891399626 641727826 814455778 680230958 588190383 405523363 729509300 518107362 919693409 526107567 236299936 214996957 156730543 662156137 133204854 867384705 825701437 162296713 196439253 634731906 428433016 252215387 837554652 935970190 417069468 865659021 876735731 236890738 824502960 228393090 235846104 402595225 921484868 909833811 473746561 828121064 626871459 929390682 72991356 94781841 756473669 137439720 768794729 313409406 22571021 449503636 679112113 401990156 532062416 922209330 96491887 307328293 219089580 645618693 488485874 448761207 953805238 40846681 373425747 954141633 899489882 651565967 606179039 211273957 709028055 422501610 291987730 150793802 471197719 22763624 52676118 85321343 218847966 234455459 83822200 638770574 148608191 343277533 400238350 958562201 795368847 627463932 801984808 739029139 800551575 905812220 361724788 958711725 999049621 263107060 51220938 607594965 200687663 453163710 218667769 119765832 500762364 341132868 374761313 216198996 688242169 77148327 219864793 21656723 20684354 916860285 821577108 571232263 738300227 858465157 48401766 494936311 240917129 60064748 329051043 243011426 105302368 194579292 218254951 765436829 80179159 841809073 50001591 580690423 593186093 636723333 698283554 549195153 14226901 769260612 512560672 478695084 245724964 302262711 923294872 113833233 218045438 432028506 613017464 825110674 651102674 721677448 393396398 501841898 722030570 212420811 775468081 193722254 731026249 641327300 559046162 338942969 482768797 971681613 953666562 956351392 930145125 188120656 514884510 966674654 583866675 427068490 205804437 281766120 814624922 835359984 342930192 868261574 455313234 628469941 335311731 395361374 245052823 161258340 830686998 658562007 616871111 409078928 275029234 447355136 533840146 63461321 527217649 500812297 908868899 273890144 258515695 149396992 744842056 470865826 946842195 716961427 839617473 769164256 925294091 571229500 764777005 330943704 437803664 747294622 638636195 512945983 273948556 859390572 563085792 447679501 214173068 360930554 771359080 283473111 650219356 915190185 10970293 749611598 70173969 193769852 667257187 578795813 984273648 69242026 485004460 301642582 287877083 45026789 270529894 589892544 534431207 704583505 276413569 945481170 432330554 823929075 561888983 29047108 288897100 68714096 321405340 37797778 426458031 16678339 297998773 12312421 976212203 737896237 457275773 195957167 381322191 680402627 499214592 973021217 598032652 667261196 220595249 465726929 133403027 689805630 802987210 610762114 726837958 249963523 237863715 845703142 327367999 878855937 191191996 19517329 786917815 307670477 495857174 641680916 349346392 202657364 649037151 285184356 550473866 169958144 875052408 115083772 142405378 164457717 771234095 109532052 193285527 930549221 780121864 631559901 542397633 291600173 524370321 695180677 464362580 941185049 305911832 628226186 874845872 6249497 128325910 264985234 382613830 921542515 249106841 275825127 332646753 412504211 917157917 84399782 742443684 593544752 902951800 616192211 548995885 985283881 272142656 362863204 692602841 473244352 214853251 472965631 91577487 916373802 6041976 559560474 43660711 380715825 974124963 293611380 94587813 825591130 162938500 450285459 816988318 710967960 692151307 792518528 796506938 314610184 55831830 50891779 801659862 557266250 694900864 23737582 762771838 25321023 898336719 37322260 290743062 308799126 891041570 519218464 48253812 871863542 551912232 806241850 730862570 956907540 404201536 665060977 381464710 933930528 895969775 376880224 388251127 537996663 830031780 202336871 270540962 591082633 866793882 76635120 782890205 219837409 226071137 996384708 384965380 131301599 618173482 586991139 541496376 420571350 864153300 260219403 538254589 594838675 713333435 724074010 830615459 440786934 219548283 545329394 135656868 672466150 109995490 165483292 131163842 965115468 65376542 960110445 783576554 52622777 359765846 896391089 510543028 975129883 766831955 952449748 125940365 717942432 520071427 941462331 7921231 500049496 847198859 416361731 651125945 908914944 365505991 445892309 643790777 974381574 640277943 373777329 788170338 678578844 141086125 326340095 817134282 146512274 895793045 529078949 846611635 345754248 346127118 714418587 818817204 987723839 990521302 161143932 488637477 198684054 168081834 578558165 566462897 71845152 866233586 539290196 174587884 91969022 130013578 849969334 470965107 931000356 826353324 476845800 565839681 438113469 31370214 886499312 82718127 353765884 636143132 50546897 91221556 443905603 184027986 795178003 221318016 664743513 640448408 613344810 906364525 45768382 961770624 143327283 20451016 724946016 338522134 509943629 551543396 852640299 460415773 404373120 8454866 999409537 40223213 796454613 622498208 139968086 667152660 990045838 993403526 867775561 901300800 834761503 28066368 905771576 578129579 608554612 33172109 362101905 722719548 602417536 400789924 664993690 740720204 409537060 60031988 171218818 618376784 128718690 684464147 239236741 244044301 316440402 303846578 764753026 386988395 205871135 260488568 231429038 429325330 732254536 118665642 565405569 126307027 838340756 369017436 180731973 129092935 402229563 228791693 67477981 700181247 852267705 947274643 168677981 267922190 865684860 259460811 423855155 494358972 329438265 140805501 181369034 226530237 873399380 487914320 467153732 758914542 494005481 905693855 112971809 863537927 160269236 707271857 281144696 105580106 717393288 173632439 582201710 20393908 504896365 251889639 39868527 138044197 558643313 890902207 129883223 912008589 631226952 934792152 490473783 574862850 276752899 278412489 275578306 396506821 806572610 940836992 634940222 181615664 172446860 850253903 997214290 449724208 281650022 888745652 212022355 15911700 242676394 653582284 715172337 122740125 127497472 540087509 531513046 2797303 258958508 186114149 491201292 709470870 571704764 762846359 615488773 340992588 267731443 286040740 178060308 493847355 430207873 364979016 930520209 544490648 596648839 137045783 101276777 136894630 590069787 593449844 732740282 9339784 799089135 750585378 617229238 519389548 709629209 433755263 484660021 753643644 967332766 227726344 174754439 855707341 381861049 111914811 62346908 443239781 598464769 352279971 572034562 221146663 580620092 925131061 689240197 902019008 72824947 804617883 263884564 45341251 868797425 606808334 175119036 174793233 494590697 412934494 640293787 535797723 75271201 719010390 388257128 308300228 219705298 55127420 214128684 928186460 783610380 958899692 501369307 301656406 33327834 641330554 148607004 673584464 966851617 135692950 303920812 372767546 91043116 605997906 691972758 674276819 134767984 701875629 698963054 14104878 885858945 426074738 338002158 19017450 807646444 939886951 189286724 151617567 652143098 296952115 567429984 467460188 341383578 71194064 332914036 710514993 713583822 259751602 81697176 737844308 960709620 949461459 872651410 208473790 59274569 53732043 441097660 276160021 194566130 414244189 108436347 200579906 24042268 602489519 505137768 311661606 762370649 633281863 468785292 342144213 365355883 910582620 253891425 742630724 802052211 32644234 240490155 252943557 354705539 31095087 281619843 486079464 876191273 835733466 882936417 167925183 560432870 50666407 67918968 322724856 776870937 986517495 856096108 705767745 977666051 191566764 319548813 438146571 394944223 542717490 665136005 97465993 869820468 436070109 990385780 446207878 523478927 938219291 616367974 813391453 663321111 18080267 482118560 139334962 937188601 80432414 386246920 41834211 729166586 957884924 398593911 650878290 837695611 485231307 3570300 879365011 269313212 166058231 123664503 402365075 27558093 499698902 732971544 218251689 660581705 587174595 666199718 639782136 745189037 474973869 585782540 878090136 157892562 740994144 271462975 846309151 289968031 716615691 457583658 550354505 107103211 847781218 94636224 439404812 594549578 60424254 710453452 966201210 738495613 402128212 724142753 599079990 37303518 950525943 1391938 609547193 999052404 420757041 538500369 413900529 886029026 150347311 421743372 533553684 991167480 611047418 664772364 402350294 701065053 868776796 979166921 629536350 680774755 443266881 219884611 922200915 232935126 1259802 272317987 576763025 908881416 248269819 188632414 312776060 477432414 300466068 525169316 842428605 527879026 109634400 95390993 640211780 675562120 257328466 575265249 491435769 250977869 725038473 936738329 147986083 329777357 39355334 850596986 855288875 96577758 59932667 682693483 923169331 178464339 968373823 633864900 679676097 770752670 720065017 824987214 65243485 240504952 667221612 560943406 267747581 784022738 727019743 951710074 760015486 903830648 926009134 443996659 993115670 422918248 964963417 229853178 769907803 657446358 988971579 95308999 386314749 785467947 246673076 921370750 939956460 450232548 952376633 902962299 957092280 747488290 687919454 456599555 786923046 740658907 186471391 327087470 332723276 403851953 883152071 692078280 224337262 633612610 329046827 196271448 176359526 197194287 552197506 678939784 306535038 307156653 198501984 977207923 710746547 410266052 469762924 52760440 382742774 706772242 907032205 703077591 236968893 647416286 453055803 582118944 772425857 944474118 613794644 672958727 951816068 555318997 366432404 569564674 502546463 612356018 366804600 465055085 572075096 923060095 398395196 335390716 60041477 686272493 554415469 561315138 557460592 309638243 573635974 841302921 186081575 754795041 902232701 471390049 208566135 555101050 271184258 164636969 328331206 188810204 753973717 58762667 83004137 753800277 914903999 767696920 88560563 180604275 306017158 189157729 336169736 858499496 103024732 755189696 322358882 133900148 823133372 778907112 303161908 124752931 701429560 340154616 274001502 640968503 998214159 787746836 447942664 221087238 131754180 623554394 182556905 506740639 607094345 704059748 26564291 943059584 307564888 684382903 869747127 80077199 120886367 119099010 410355882 935860571 178913832 478327104 82275380 415307475 576314472 921924556 404297965 470549265 181315134 101717228 303302622 481940363 818856257 441864268 139146016 982325292 297852194 23707804 227181920 539950848 914368402 689860912 673628186 976166898 348369411 340008651 503486373 526569670 869908979 792755263 46171924 799254687 870594304 385721774 111454756 667482679 43954795 162399232 844764559 417725580 823540051 417379471 242574135 219195300 121887453 907349224 7432624 303051474 146735119 633982761 602601461 397633402 659430096 52811162 46011223 885116017 223487212 317239889 291995375 988972384 835776606 11184726 427602096 234627873 707708713 899956026 488310713 448502408 752062258 267398611 28317117 145224325 387678540 808296682 32340135 414465233 942042498 542401420 799681569 878618106 527320984 629177228 781442195 307563462 671322762 384898919 648495024 121681182 669959143 658792393 933620913 419356619 350290610 240680662 307078929 949515679 762980012 591103445 818490840 445122973 500042671 574861876 611024458 827333655 206732924 319901967 260247694 288208199 194140760 677376066 569775294 218031286 363580918 747162137 960506172 498000622 934402675 580357463 163965989 844696434 81412101 447867586 908284330 228456234 30097789 18527339 660019713 595128665 946026108 277893094 926764955 51764108 888716538 222081263 106912422 740402730 57170174 246328654 895541262 363468208 348275097 135965734 285151631 775830655 653959605 288130774 491406095 606928740 819028651 731263479 542758292 608759861 157583163 350965462 235558343 855619332 187932844 727745161 706706659 569896814 427711296 98609743 37179210 601651862 711800947 915921649 905107540 755102611 893367619 675243286 280079831 740337175 618257161 233674670 689249782 381727049 398091617 389044647 153431257 6581740 850697565 315849329 385098053 805877741 270208962 763101829 810307708 371351247 626909931 123277020 547934493 168036599 759995203 378356941 663538542 496943225 629148657 102183466 362927273 632029392 508431683 666757788 147196407 539920459 555261927 372895851 377149190 869777280 866100904 46526258 561274299 600097961 504889563 722798039 172115606 380797163 278381583 315217586 590735958 442075017 188649751 89997518 779824130 28003247 349311940 207593504 334517363 165920472 918704560 8872155 38127837 395869334 447475890 449708967 283149821 492235517 870450357 75870828 972610536 559070973 955931879 175782627 57312154 80478706 552049545 142458782 595760621 902905649 368171583 837785921 508915353 294407360 964651976 987565405 445578129 773287650 686086593 560896021 692929137 125598242 27122121 20843246 75592809 273320862 986775947 669375232 889519394 571140465 858822786 460565100 264845517 696912578 197458744 340050594 307853527 292547463 807655060 639876829 2491834 523243408 324290318 827877569 853523481 837036987 688396612 151824460 820031542 490551363 327978673 945196294 445483459 328909221 584210367 20090404 327249608 9542330 533310782 198209300 4024353 914950239 952116797 719217602 64746839 507065154 841336079 90062705 803531258 942656172 531660168 174563533 46793789 310459056 689965325 365025356 112980249 428165477 949122067 498221609 120322010 529479064 805803648 972133141 76592232 454897046 523734911 273821587 744690608 25107338 560574862 779497846 468561791 136192190 110447221 717875 339670353 63393598 639058937 66489341 367994492 340614516 202176905 966698661 790334342 426117165 425638133 777843305 603841244 498112718 886804975 686172264 689483563 711453270 12598427 692800745 937046420 929673835 268234546 210427012 862896444 785728211 742916603 764262187 673023609 740303890 979915847 108658241 215065383 454873622 200345750 41582675 631011966 278330097 982406482 168895013 995173327 619541682 936817422 968140698 570394682 263701201 398413498 107386441 731142146 730163958 418823386 885357208 432091491 119048837 337798114 396480662 675893673 545575268 554291391 278368309 412794145 82366617 504228272 182001694 508684449 813495961 972277060 958987038 558692152 166991050 991005829 175749935 781605099 407950136 424032680 455535177 754580239 430465644 851509759 530325523 588157649 599334651 617080926 308424407 453960237 164039319 374457775 763465655 485881034 243985933 610947998 14382054 745637755 329620679 209218193 146488281 480760526 819623810 101879667 963183635 363210951 929167987 726887722 857997696 575953613 511740331 915205021 147333083 43334280 174423590 121684539 223120814 430962276 131937797 549823558 856487923 272209075 103675706 101265773 472197172 316544434 233371466 801165043 177577706 688053675 693141015 669263490 501581120 287485333 388164517 414615693 984430611 502266328 308497054 966830173 598281104 539923199 476441226 371916531 821552428 425758493 797722128 135218772 375024794 613040485 37209852 510773059 575872930 710831065 326013153 703864113 921160404 360121992 802660207 67903930 5314531 449116843 130461799 214088971 290546669 127789302 967560392 564921506 485772784 661122087 106234347 964141677 997317930 393247259 647724448 954901253 251552712 232548149 490140866 630166844 598000479 989622653 414702924 308824571 188551647 97523078 111765387 376085112 316651240 311889258 210453918 973090950 295067653 641450056 410081916 366107989 616627310 281034807 32513355 177197402 240068886 793457701 889781269 162772652 947463506 737543116 8332073 652721609 266750426 482954685 769312444 962782817 690579188 529137302 972446580 216728953 496882746 403236176 780119071 335325412 938891189 463732027 865889411 788677969 280787015 243487221 485401143 119874885 114671350 709639629 887320515 160227517 17415268 286138078 597351833 611255707 937828000 55960470 217196258 660876091 503119904 406637976 885597803 933778461 882017226 270380907 281695996 870182718 187650772 904383037 474106388 946700477 934678406 161243919 861396353 289890394 951382091 42584025 533514354 244097781 59455678 975304324 887451200 980914373 391072182 989343693 390082552 446678219 945820986 907411752 284939003 517831248 4978927 751497977 572062681 613616481 191642268 637919188 998354947 170736024 793799560 536265054 769065977 693144775 461033962 409407847 166016418 687806737 125144754 366982518 679877527 771264127 273315063 208817967 221556407 724260113 738144379 472230242 969874909 286263953 561479484 533341540 354922225 748999147 751771568 809735354 206830910 283353227 659048087 67149058 347532684 136333833 861407190 711123285 805022277 855319320 948684443 375573122 417298078 840230958 967423290 104335533 739252160 642128369 354845895 157123915 203682895 727393597 330037663 859472594 941405100 920994444 143675932 915101608 705581166 724008591 18457862 705583320 625783142 789676063 249047372 303741433 905745650 118583610 443003031 176358318 729209231 232713582 430221707 731187703 468518660 165348672 828373757 361108366 403445097 267715018 739833205 401937465 544527678 951170302 797382083 104089767 179706555 326922996 150514840 186003710 831824099 412569670 674295751 667814184 621364872 701421679 953342195 574956950 206794665 678382449 498190448 335263695 612408737 538678206 342652799 162206857 717069489 231130363 24670841 22133007 394878529 414432160 600785575 653061697 673372230 357433169 478102863 396164958 287406782 170108743 692600295 165752114 640967800 768153647 87946445 974199995 267391017 289492764 659526227 433268447 147835211 546832960 305591325 865809053 498146163 919455775 773918949 923394009 534954499 470247426 920384713 632842325 508523298 270852331 502349166 921893255 652850570 797425803 605178888 125214587 514697235 949364819 332647605 38639319 402123841 832756959 157812668 984843781 343132183 156790299 448776020 739950436 71255801 334971701 680487601 909966856 640359261 394779171 11627662 793800663 845113685 721757083 528045915 279890980 1456945 182147093 138105960 799697948 568884603 111008291 556166114 749711904 693363688 976016966 926917863 502614129 475154126 355521102 771639422 831375718 210114028 350974069 935794157 426064987 338478938 314253530 736950082 753373041 812700484 779680464 467211575 683309098 401544314 480296528 422190700 340232187 104832685 868722946 977794135 670890810 797592486 839168290 615100366 579204688 683989353 445390105 673907142 356007036 827179882 118825736 369471270 119490831 125207522 250457996 555115274 105401751 516667614 934637002 121264754 412348577 773745640 845760659 479676759 754740340 29356238 425372731 910635582 716568640 365614566 430746413 960293302 550835623 533548944 1412605 315459314 42728552 958908042 647348237 801766523 571433505 979046650 573697991 41596557 323324299 855371798 490943120 210766395 862321515 212219396 288690012 323259081 57806337 350663093 259783964 951549592 754124119 949824548 68626046 891672646 670706863 453666262 201215827 741884802 881413014 805273252 470438434 955109727 293209927 187758297 768564057 274967811 101881394 784636793 637587613 183939499 660749362 914779711 768541391 540289667 530897555 283672343 875443175 37531173 147163994 135929188 229467505 983267482 580048328 413996708 543621639 715074494 725443390 766797765 261742238 567209367 594482168 375036641 530495726 515989233 733011232 780232479 708321727 857767249 789716793 617824381 8853006 272099986 451689388 779637210 912786779 621264188 505872575 940328300 246689528 217733921 729346911 662425124 988293486 594819738 539010963 804742015 939865409 727477955 657188848 11430298 843042052 998875710 381492811 666676021 493810279 485135922 72055274 939603921 897407828 652712975 906618110 473461630 653702371 13808706 317223374 34792057 815072116 116833024 61689391 888762468 950394225 288770289 596830549 773228188 915075869 146874416 843682954 467031775 498365182 62315762 206013371 519041532 393030213 279645058 412607420 723230228 127184080 914296682 962642832 822658860 582006731 897614705 771422376 284333914 812643212 977944818 178061056 796648944 943770592 163152098 267884533 165605274 400115090 176672707 176010895 272944057 341610895 540565442 87492205 120181751 926226797 852114815 972100259 3832799 749870913 46393576 889674616 948392324 220931809 753899669 121307729 800524414 349667684 650269409 539182070 252582648 809003253 788970167 186109308 192217215 360913945 387852147 527909379 216460821 930426419 351714433 817402654 916643468 179743232 702821342 644914094 289908771 205926962 458009380 867290681 629585910 843273606 971026834 762566057 604995870 473870803 880395863 18898229 924592076 900224107 293309358 928841470 914249136 313164611 399421747 400071772 365363967 529274003 650160819 515386699 81312988 971903030 943855583 847014977 61082605 744688600 665686317 711872687 939402752 846965678 170036807 787258578 409643367 902807248 779494418 279901194 51860529 327187761 424157030 768845988 95435424 146340492 880429301 678928522 34523278 396020968 691498313 814756912 183551811 54990318 265768325 422367544 931977976 207557267 476647672 35214512 884415651 414737602 312308877 575811180 535067015 77108819 776646334 690736791 708668806 906268463 268082452 698908079 748921397 514814392 277644946 688844619 420762335 430156763 75926866 381206061 757028591 82319000 223973620 858394395 231034606 147596231 983057793 579880742 798284877 895252100 19140486 224106416 449205385 320492786 112347888 468160098 47421666 633412234 180523573 98197036 866105483 622974179 308476167 168458097 504019868 534565579 148255649 509618876 529075604 635893258 222972627 565978578 467831767 78692192 960611020 86866541 807142281 638614639 670820686 945989919 558316875 989643533 341408295 872971249 759184592 290505802 170656737 357746338 110357093 73867847 181448013 481880119 81716541 908069258 318987419 251966130 574994564 407995971 515658660 634292427 89098261 870243695 390948510 592279720 581450672 86554693 88568519 728266252 774755531 298550277 131838286 299481562 961587065 943321920 680449294 371431369 289966922 254159332 19422276 979355764 685515635 288005992 350208977 411994447 619450127 525520212 432508922 471411300 369285878 555030891 590109563 961401089 524253090 43623182 572383607 851326078 710752566 751522688 254166271 917729909 16918253 980624942 743833461 870497673 121680139 95113467 110314132 587763152 250536825 999559786 178801314 485379892 931457192 916895016 150227259 457519983 400382439 95874256 867906235 324817695 979775795 309290797 906798211 670127233 110327030 167298137 145276926 859397920 200289633 997156329 504500838 706180034 257618228 709366854 190579698 240179311 361334014 701536359 961686393 982724025 830844605 236344270 371230273 569522774 171496690 210898714 842268139 174064625 450267785 544362552 410880248 365653578 329185728 253999110 553623044 62004246 538781406 33879224 148985694 97757457 590928346 828737095 506350523 29877316 201912945 242309509 871489030 633147117 54871047 308843656 545420365 219332693 795618516 294877278 33320207 588813458 585178675 811300057 513827444 621106742 814558461 915045408 740145995 817025767 538720589 639405702 889596920 44360055 907788808 892385325 288783870 279804937 427636948 901048992 681021963 172464590 676491178 255264521 627524583 320963371 855824504 926924897 946283738 440791118 495674671 76421407 201389526 508386249 833725784 670986569 483174670 42058696 415101619 619929489 319759790 902251485 868795201 798595528 130504068 93045255 658178221 816358996 881144480 126021104 252769854 391782905 192021156 10278329 269951526 707755210 595842828 995316499 33585685 728258499 759817386 202887077 268620617 538000640 986266208 304640253 869625336 969624709 361638710 441753294 293661331 80442158 307666951 136681915 492254922 380737126 230515192 752837217 645873693 818081037 97152088 74885934 416400137 935512873 196883381 689788899 282990135 186803026 285858249 991404017 553019374 718021869 148337608 922218984 506465406 149536390 327289342 994287209 934376366 685755029 110813456 467102580 709997181 438672290 22407556 396633770 127046696 306870529 608716953 562197652 84768855 20227406 461849879 928966471 815945050 893076971 250980048 462466158 876953766 614787980 179457029 834592570 540371447 710773776 362545443 217752404 515823487 182054674 225507310 378266208 347625299 356935354 661993083 994178141 151105728 498897867 514949618 5253296 782276307 133500337 246293206 734886396 385164959 414395654 412207790 393153145 342733216 601067364 805259562 473889453 132357170 833850343 917811697 130909677 988312451 970359703 764053552 747944313 298045626 642972329 908113407 896540834 350331515 910443190 217279827 452066953 707395964 745666083 252908100 58963518 975199257 780887439 737411854 866662204 411437252 251295879 290138802 733464098 377791324 787200746 771232700 504134179 512649747 369755629 84558224 779856017 915555617 59733394 585552144 852965754 883403348 628496981 453396034 762558676 58543613 731264524 70065365 425027452 150393445 209020862 447885721 886461565 125816684 681161037 46164272 564129624 535384591 86747943 630054217 369141741 322348999 715101281 476889876 943056087 870803611 90548412 537170179 394001507 475890762 792214457 491682100 138551714 938752736 672472600 3840230 189625419 809110564 994775623 446179196 869217768 812614592 887189932 998363650 642464759 549992697 69277062 925209703 148403205 536809669 803562146 480215539 286120509 316489962 719756188 403700882 87127607 389633993 171463423 503876434 576196339 797475221 754469213 116566698 470023203 830748762 713791371 292365126 139274038 510472436 338302536 43498345 843474089 152269013 635784704 700842855 408863730 430831210 941325246 73182529 820793534 928721473 331207101 842941421 642880030 992283219 629749734 618812447 906369976 741216316 651360660 563691726 671026849 191843770 569847919 125627319 96169066 535658193 488604927 31613682 649994944 270613375 537350174 58903429 979914008 998640145 850273831 255671715 699463105 689558361 936228160 299621719 792629632 440837226 736570440 420076011 126327663 197161174 698568825 387822859 943172669 918600109 193778978 514935334 654872258 184188782 159937878 327389675 476574702 800935538 346488199 643425119 621122662 287074899 282870632 971642962 683190399 587406499 999116103 621834098 48839460 824769718 890393483 6562286 346784995 855577961 327598296 950929106 330862500 512680017 524427687 39464760 973421076 675917150 36431865 579245821 388064591 965731152 108774514 101286190 491889301 561594083 836005446 10415872 484102278 397507149 282379204 601883046 954471254 196798850 400133409 984648999 957996299 798651429 268787191 547990917 225195890 337784598 57668979 916965011 702077745 471560186 875766189 238238495 860873179 331620602 669400253 846704142 568013614 176970426 26853441 624923063 225179387 88782535 864759227 253006183 443985089 972622773 873839736 153860555 770999054 222629262 850428204 590985362 637231585 200864350 859363452 258812814 530460476 175461076 852025039 923123165 382329204 979973736 498285593 827072868 264716146 72839485 292809926 495614477 885615759 791768577 5891414 779722397 275269748 379374726 948246371 634515628 1861945 309369082 277164052 166900290 603433062 566402039 115695109 363122588 325366619 754036078 514105220 414372804 912747144 709417674 294253968 370252076 2180302 298157154 315752471 861819063 152529809 304332812 385195588 676519756 862622243 217857485 286105 479636109 981698350 987876742 303413127 882167112 954201731 435139429 824707370 780388067 351622472 496185289 692546929 123583409 838904012 495768898 841424134 563223148 194953292 664152433 151143577 513234409 966344434 319321279 181743323 31594443 486196261 820650493 889954892 114264292 755529444 404657710 547898968 260696642 502105123 913832774 724081702 576038941 732294210 66856062 935463416 72468120 292577380 486275166 599906681 311852227 982261259 587653901 379689057 981233463 399799764 258514318 210509943 976799868 875369941 18147677 565949800 909091912 870965183 746384951 812731436 132543260 808310713 544594214 867763065 204036169 965462009 546751335 47205382 52733468 428816757 226069956 468447396 982558027 466541735 507010568 394455193 196695977 495351541 751162034 568798156 400198805 349697610 762908911 394845109 59069303 366602367 172856171 424740215 416388024 4843747 585802234 801561541 787083064 77319382 77497172 178154000 552333608 870217035 123483519 373436374 87144459 158359197 220482818 500689403 426725175 694156316 902375396 691084241 402788800 499795169 342725436 799236409 539587908 298346437 513213628 727060399 74307909 707340420 982193721 796529857 461263085 870576025 884768023 69255460 963842123 358131657 46740953 129564007 922838598 303671791 406806831 246227501 429411623 103923363 135338896 674324777 534809149 849971248 683422509 87567316 196282852 238525911 186055904 561416507 160822271 433570251 348344055 461407929 492713230 348656680 114926372 613815303 402554237 780834291 958581832 445424611 112951613 438312949 781012838 119377468 169857799 475801279 46942031 259570614 461618618 423912147 527038985 794314636 437599226 857360171 465049362 64737292 177119501 404544256 801403534 101778663 810910069 471944113 290496761 506733951 241656133 606671409 906775940 715771396 542019799 347267063 823358454 422893667 583044802 542173817 14481722 588277554 99593322 83142721 949991602 106678708 948955118 719186465 524520688 176157320 697229559 426573132 509922198 529846735 577264614 413637414 384770580 652606979 716588166 526977571 945259427 452438267 283344702 153491832 862395289 562899197 75949081 190147969 45583613 365747076 615741743 942396641 869649338 940599675 904117766 666010984 296949046 78834695 466236569 677006230 107281568 572623515 64087021 249348667 708950244 60189736 284159864 291253455 420326129 542301357 163478719 250092001 841149492 829688008 364124126 574595191 154884814 706068883 732649263 237213667 10461693 280080634 672953435 355037881 533933013 257420786 403864188 664350716 562961014 945773761 554896499 621122700 946707189 467076037 11412098 31273237 590971345 461699771 362868130 234557401 539555288 756801430 3328066 930358041 602296844 87326294 802072976 171127131 607214154 259311774 261988000 963303853 80475104 463927108 347810416 119725561 378441268 491173292 301579511 114016776 518071212 201074695 880783220 113784133 489072465 992626229 429406617 580971669 581528148 152384075 429449681 827065105 223994508 403602745 487732825 573426635 91933091 522304963 19999327 557234698 464535086 695600102 685357056 782256776 89387750 241618937 17499669 88812504 188292363 351707284 861357141 964115831 531566842 35840620 856439611 473344202 634561108 402641712 70312387 351552629 513877804 21663510 252043202 663236845 224023973 778124556 515608341 463069053 326480441 748585101 796162283 368700485 114515492 81948033 767090104 763451511 277132590 673942566 872210925 753287767 264195436 574099676 397824077 454215367 88696788 405625859 712266459 907849316 153502682 957226835 238925724 520438769 628414795 114953400 885365244 61587282 784608874 368340272 565748817 571703124 238071203 744319395 82847018 588576790 91142292 483583967 201537291 139848741 300407139 176879055 818299243 913616332 787533708 704356892 606704317 523056479 266671559 582734235 706228769 196773720 135028722 443601541 465941082 838091509 272256363 414571155 721187882 35227591 871590627 315924430 538161840 726857128 162428378 878158365 403823622 350150133 666635431 565267735 786060100 645252915 927578311 258377015 790950217 444045276 897734027 754226258 104012168 761637669 674688578 29709914 754808863 474516454 597155859 931602852 367249650 355729173 313213393 185092485 729983225 613307460 396153880 622172675 762614020 924353958 756431730 928126855 982336588 937982608 859347389 986700652 159295170 675782065 456880431 585143764 57305760 552007469 914427042 378345189 687526826 452156130 161409145 379601792 146643505 638746611 469593910 462324109 108620418 885112441 538454970 972235935 992635986 147929340 878222402 60716733 609213862 837744596 378104307 796984359 284165960 556748891 478408243 973418502 447728118 126834648 563563907 267235547 274115900 514316920 555516741 600006398 948154360 266249324 750101934 200728698 372889971 961456034 21964826 597182727 583530906 243822376 747581254 523773946 711101387 482161073 300503452 726966967 429450081 855823052 889506325 224588725 87856917 116280014 134102034 236751917 788487286 856497428 206068706 852224984 354019256 886133661 669035148 452925551 629901773 874267962 592509806 923535222 509145664 344537044 314357495 774351206 424290964 419084241 559972106 753059212 699023166 431222873 898869381 84539253 918253807 298495151 570335718 20845647 863753289 786631405 660857704 164434518 688742350 829538032 725311536 220523024 488233942 856963394 291282790 59301412 637309141 621723562 483119193 511597414 68734159 364450482 339860740 169544624 941846595 807960898 532312904 836791148 937541514 420920737 944588328 589745210 36242828 131187831 22219634 853637887 708640790 320496337 755555563 657975464 441025761 763555282 8593592 122275887 528366059 573971164 969117541 961485565 287006691 657541971 715973683 182469189 494156260 778416905 56807012 809336306 598118296 28858952 731177846 229790244 976006567 977213646 619510056 288934053 464884004 56842350 247385771 268884287 526215324 560689090 906620466 294748116 940055013 356543114 425403296 328255673 437641312 81265942 821137659 858688341 554269048 127687251 884266808 888453158 962299066 459245525 286404249 568114321 392745697 516728634 325370132 611656590 385688472 307937543 482806245 208824396 123592006 673250052 283486487 398438495 68138292 124096461 576436364 994396342 484873613 298131445 359887977 271372823 15080693 761452669 490245808 855301601 729694892 575193165 235172256 623369559 598272003 558561094 204041565 609274404 419625511 454483270 552539620 654773736 137834237 664413983 751090733 532180920 298727333 847772640 162724169 73692464 9176436 293047624 521545037 378086317 517398383 254603852 434332989 97380778 890119156 228386625 930801345 619932390 417501918 921474475 252664876 629104523 176504386 34582009 197413771 757156337 245693734 357942580 982127326 100044306 883847941 935038908 590548089 76522284 527195592 847193868 494273562 109500420 657060848 368445503 209170951 227149586 109457783 44680564 219248629 473726472 69743146 829449578 679559480 808947417 264652328 746766550 557808505 442445030 471496925 140204741 991460110 901308663 804896215 643031042 48640881 609309541 190691549 693315339 7437500 549242354 883871123 955435529 255689125 69305921 288422624 842255732 696200416 418282224 749333733 271500732 313445105 147800911 984698814 109283659 778289642 520418650 504214537 200541966 669725242 851418301 832290783 434298019 259626102 76044529 361967690 688927596 708813395 337837084 127329175 411461533 536473747 922650065 129821061 713220275 614367765 534796891 687860356 839460216 953645237 498255432 706067247 649437052 913484646 496995010 285981586 20566810 158302133 676645066 67598271 229685145 608983807 774705481 845616191 284426017 54251424 645725457 778628709 660223862 197068200 614352021 481591414 705531945 391050685 123439597 422144634 399904969 562026539 616402302 522526013 963309601 212356745 619935259 493496096 420770406 319855649 84572198 711926102 680891984 373494807 81145307 396915905 856581935 475745442 468949796 602397531 579096293 31170201 474445656 782418899 780409922 323970634 414261803 693464497 255832625 408585506 352158306 955732976 806117772 571482262 683762774 283240972 77340604 877521218 502667822 251302297 979636128 596931510 899414482 279076901 23598703 889380770 912306260 91343998 537262023 597920777 843528166 900474996 407621557 973268890 62553118 611567322 270192716 382343257 654309782 696114504 944538141 456444863 749978081 377620796 393449995 553461304 663469606 409179843 626833774 352498238 311372162 546263821 28770913 340438717 995598631 504262859 857703278 495564190 731152412 67580316 124343403 940300291 588041495 46909024 927023452 405519450 324282518 814673195 142409693 999084389 571109256 416649789 767066353 216423467 604801542 572633639 366704292 944260973 708981160 953928221 367551945 690621932 277879037 937646041 781282873 686293868 360674040 131885269 686170980 812644876 983801086 173075638 700148103 37747597 766101035 59270748 533038460 365088478 282853331 912269383 359526388 160888680 315414049 741744428 13097281 241912335 666591457 267636504 497244320 468756355 63583787 488841053 951785956 404827416 91946757 145430527 834920870 202433152 961897322 789415474 296608081 922485714 510955004 17163243 827914148 650301097 265459488 997480647 72947023 226848967 654628767 126411074 362862452 332635106 641191911 411227645 234177524 384089135 217919870 999388534 929571752 171966642 844110527 277288019 981420568 772485622 525692362 230324388 110250589 646214245 405927474 351399059 442822205 303007851 783488819 591967273 639310753 28940008 398172923 26169673 371850665 352553539 504646113 66298232 897048469 803729028 739095814 848887089 597175257 571128539 194628455 160702391 482711276 104659510 72769928 60894300 43425650 84090438 224611176 620366702 478727964 444364605 783413891 888878996 450437026 750355956 972299680 434410436 807748551 679434309 348724682 821839498 27526409 325788887 408528935 309473781 315508678 666383367 392145783 290698451 350867226 279151518 743110209 214282229 497204869 297059268 263983371 691700150 279439491 847908240 196855417 114872767 737359928 73851037 881289250 546404374 560412785 725609076 660554152 355440336 620598651 711663705 865838180 565546114 644456200 220317498 49604102 494610314 902803343 712994111 994330925 643845762 734763912 48970600 726082558 160810212 218308028 170478537 217561058 564638267 835358158 772422297 968931990 734063907 967417528 852559882 638972541 319372482 610249183 918753482 470702039 26761914 75157752 887885106 571276415 585281906 347484420 848735762 51942835 662870000 3528378 113595962 43309120 452091128 184642565 920206036 811000247 862879581 501699525 838224004 500262623 250444472 85674611 218744941 937079904 85301186 567838392 770965133 354356718 406517061 182546403 237781132 530788906 770860649 950418003 563824797 473251067 181230139 869581678 268446681 615973146 832012036 433890963 455524894 185568392 624496906 886600746 20767423 693837758 436152423 160523622 526842426 93081207 531363900 839277113 282332664 363691937 767149498 921259845 68138499 563022028 319147510 273212426 102201803 919013090 603947732 713646715 780920802 643154584 119322410 527063485 932399122 725905959 466409959 699171550 214775533 856754741 320426907 509774595 473344068 196692405 481594125 80289300 445575327 248925418 596596186 2824202 475630566 887305895 432896437 61623413 669759941 567635657 90285066 96810605 175412463 576500214 641367235 281383492 962236823 6019340 283427908 94224868 548182324 972562759 334131758 65674125 175321600 768975613 408981261 657829070 662608502 751009265 868466085 921358552 559025392 198030 220434943 130665052 441236265 671579612 99237122 757344852 788998974 709411766 21198130 732387943 869895462 790731893 240251693 628799919 108212644 812845308 656525914 678383451 618452368 599690088 831478182 184929114 851599307 13710591 50123811 968246795 273775066 676446046 909641897 810245601 364704525 814940730 1744914 754756681 793503184 171458767 77909750 657335021 311921713 337650926 99008752 49388781 80251303 481876083 517380233 909309249 673013219 168260095 590228176 79711241 562950230 262486268 125790579 478194814 916830782 734787694 697718089 891697658 923791968 708047424 126609968 947257269 592553047 492391761 477701705 370890983 322993768 935207455 169184830 990189695 471274372 974340292 39435684 407125420 489818855 533384249 657851508 398163774 246282515 413470853 306377829 434840047 292490734 332827127 674696691 526608494 678485820 653776713 959076891 90083705 337821544 25181128 552274875 53699613 510404889 344104322 703253423 17207337 422739605 70557000 122350327 564152592 498686666 484664948 123610194 431617379 158203814 257196660 320211149 213354305 735537180 750485339 946345911 577213404 392129179 913715796 726148778 256725865 991640744 631328789 681224654 252780367 681602313 155743430 503424064 108006024 440933825 778115547 5855752 258935988 968795663 61666308 629493565 444351947 207550185 762008531 493541697 414378231 52741975 123366617 489506946 201295333 393486243 588761036 624672255 912559673 97359731 490466636 296042081 860888348 357788357 710216164 471241660 911456711 30545954 463341592 10721733 667474142 577406136 597718153 704462976 659785011 570042556 592611454 198675599 394354030 394825068 927216404 983272494 254703069 6021312 606533323 194965116 238647850 876118965 706091789 135055007 648050496 831607491 787107774 4459417 111747258 1190775 468771541 480885540 937019982 192856624 604574199 146555850 948946609 611008219 714068680 646497540 406190270 652801123 311647421 654885246 915475310 4066362 822820473 221050798 818148341 537078930 429784928 340345622 299579185 542138736 457976120 944961360 844948650 826346933 575107984 433016471 5780419 814297899 390482171 234879572 29275755 525884834 364075636 839941682 658348094 332190301 435462410 747100629 909425339 627793988 555538376 400946957 631270654 808241717 57815897 10295854 6650913 687092076 661632747 370948080 545785988 363338273 898529571 872476052 221054413 175040572 187555109 5292122 770213288 741079039 712240686 718093632 721419327 424943070 273362004 251822774 260418117 908736588 631296082 685431091 773990044 516587511 115492649 402158409 518960776 16120980 349580138 474538884 568832208 180577511 11009383 782938463 51296097 673075655 904619126 910647389 726933727 885029974 580131369 111337658 106167354 990073790 517975677 95945899 729632841 709809712 527883360 729689101 282758075 135046757 759587329 413120275 912104910 56864328 560448423 36174933 364414991 196764116 751304694 441459626 290651190 721141301 625017536 233780548 576931424 388787508 859907974 176476172 196880082 705724010 913128560 749244393 501437652 328265738 627341764 724507911 296853891 531049351 809281432 675578926 756331215 55277119 478984314 995061768 303497558 653526969 52937044 219277278 761702533 365871270 286847012 429297327 79572596 169312240 446552147 791126770 386723621 516660716 293927656 973785318 91219103 801805192 8628490 755571357 660940081 463372169 951033123 434735303 84954271 332144518 313294728 830092316 739062868 216553302 907534278 146510189 490635048 654732005 370605907 414220871 400419579 717279267 636270820 581671836 640378652 848208220 747673648 35203328 525308075 121250631 125196460 504152678 624525729 890649832 319377950 555313499 435456944 249337791 523613612 960616289 765050461 663076789 463473478 240386436 551389874 50133261 57701276 515207036 531610805 836050521 170322002 503416787 802177375 2714919 440326087 182889281 838616008 442587230 589117111 595846147 352030889 860487121 8952506 86059931 460204323 681949042 773366246 87048827 605380159 606200605 611946879 825093017 819895918 742103450 312587023 183614529 742352600 501003306 652000667 243373320 62142808 211717519 396060188 670571670 827124350 685009650 179413024 323066656 182862889 325964110 622404680 249801494 721116398 87939578 873308018 775410148 105282076 606296446 531228743 96002883 58460575 819493979 579694850 197350184 835010435 750098277 977693924 58397915 224908462 20667421 407735955 988478757 11043578 60192967 352607909 498807969 884592498 212779536 893663166 421412120 440932712 987889289 566971102 564611532 603565809 48842403 953525329 572257221 502129167 683419 399222481 771036036 870474879 788111977 799933780 126577476 939415770 932340656 22846522 566006471 492811490 561672020 56368649 804486429 177256862 523477442 694981146 920601129 790645848 926838140 869545535 210621710 502786767 579542426 9755027 771377453 141903453 994626761 512355291 127137231 720274451 350318692 624560308 852290943 224724077 422276837 319958524 854397664 438364368 40674396 371882907 586572570 611009665 127540776 359436549 603514776 705495218 281279223 459657350 28472730 74627766 189733332 540315620 833980199 243640068 410474112 709297107 114687556 104939017 354543865 708806523 629539397 262321781 916058003 1371386 589754880 84430325 939013079 148731574 998822366 888508712 937259569 117949889 555774382 449132358 962964865 738115179 754508109 915982564 628573130 420956578 331115387 894163738 858878860 974549245 671765041 813418047 780744726 993093909 352574941 408244833 91733645 274381201 133756004 412254922 90114966 147010179 529017021 425783289 291708484 261566556 18095645 247937478 5376163 636160220 660729860 71915750 908417020 547518896 888562897 103499483 615587539 840262892 60102510 414161666 782752646 353108669 948311746 804512550 231667214 870916826 732293248 697907503 579216149 417771383 995818355 188996061 544051315 393876581 616281576 556766959 802223718 595381885 261300666 836670950 207696845 185151966 144754837 73055344 600728791 57483595 100928711 849936623 431029233 114045317 463018359 132888383 959596241 449519631 77726292 375959317 340516710 867829697 529965559 896565036 243102776 143869028 988669995 116538046 899187874 417834498 87422018 700424628 203844026 564887758 759762450 162519489 411462482 232477165 378964872 405695070 906760552 572617127 252340072 881969526 227068265 902521358 980995643 908941681 56138392 274738249 982725465 72843214 455091567 31075420 912243733 18504134 554778629 399365620 166359948 841742262 932869985 540414206 630555995 418213301 945649693 640863464 618617045 229584597 443348832 292096096 565466487 313744875 463181692 710761044 543459278 441436759 377771128 34185587 919983952 756922444 331619653 331546964 12088324 140237357 373948710 286583405 894548478 468477756 113782903 292447380 352284228 985490917 884570682 289422362 754795226 130872584 919557093 671697054 119501536 560204551 986409636 157350394 533182898 980353629 118312761 394878351 279725909 121890247 834143664 163372309 358507242 894987670 776419665 793870551 535570813 391726013 443563275 762129849 16594838 50225810 968014063 497203299 517073006 175846874 642674119 928574354 226262443 522648233 675265802 90216471 695302637 794726729 653712849 210845846 583303903 888122055 440344302 319154366 971823363 897935855 228166019 834388806 884357737 93240169 887876204 678226787 143215686 939665751 484245379 884832292 284696426 237298216 289668295 61588392 423838909 557506956 911320934 622101534 968598927 915273041 594709183 552332087 375104930 667543669 472695496 658738157 553744402 698123046 964119353 218347097 67911543 957107731 286393316 437916803 462472883 237806892 800742652 126967779 697566710 347261183 464111590 176155324 713633884 744003285 138709369 740164846 867755077 477900287 86270791 789757637 131986995 783455227 604376561 979261107 985470757 891385336 441333679 549496640 119364292 382100026 563403678 434208233 647378609 729481109 1839142 924177943 915246103 449558617 356624135 568964041 162342916 89161003 712303595 108886905 795720520 407587860 409066589 485921990 329516074 760199688 434180331 229408600 327224125 396518658 878963559 58882922 168836145 515594946 577875633 540718270 801191492 80669117 908349424 212831476 876749363 617388374 123871798 890333010 221805774 514339130 378508820 154357264 515067570 224672303 252800194 546906641 976700597 725303716 11739467 966344294 364181225 212582195 879185521 169962431 919707637 55517293 536289306 300988091 836251841 685122449 711705382 660682541 351806427 795912487 615281555 217595718 540747874 999464005 118574533 409504508 972943915 699823420 58560853 904797266 398278060 234704522 711662889 308165282 675987785 409017345 766463332 169265227 668964041 896945275 221962781 396104029 39032907 170439360 840803792 437543171 136967971 999039570 276696265 847451969 65537612 367353325 762225851 182448441 524409638 841660672 113054586 898387341 622847481 205581220 877693391 613854858 881446062 190451613 677201217 996218168 77964279 90442180 879450882 885587714 471492563 747898375 839546765 721753888 614059509 783162468 329302470 495748784 513508977 602786766 244672299 110886920 95274699 432400899 188853736 332579312 155174290 509036182 810812099 756212861 59108563 301057582 405493242 687802847 561752877 481502692 539221161 892404985 651042714 551246192 707171735 412385301 272565617 899171926 230568160 383505139 844905737 278954397 688362474 331899009 981269475 45071781 368799093 198075658 781073520 211348865 151853145 699092747 894186054 999963567 119347942 461389468 316855515 431802632 281906377 915442671 794537452 33398176 833755216 28460821 63837884 231867259 64808591 597992446 495008322 881754293 428793478 203735293 925202874 624167511 327536481 132944093 537572875 671248285 718919315 828644032 612344958 98340782 364388280 955106600 376457134 456162448 687668727 30037233 543947475 242272383 645190081 506903683 81541004 668061014 445443585 239201863 235504618 434364292 928725909 999624203 922295360 160807638 117662018 395310110 679319059 828356371 769766198 611609921 96491541 186147510 882642006 257998095 620110143 944137592 229742856 94438413 326244187 735584308 497826555 997946325 999417170 48635525 338224537 519983357 597413761 591286360 39102762 975043329 132751395 168769703 859701006 861132614 317278953 566900276 661540475 400284573 895672648 656961694 547077448 415822262 593115774 670306779 958096008 204614570 144559602 800876610 536588139 288292266 555944071 444848416 255975918 743421251 104286969 136955487 756247250 856037954 145670329 697632076 355604776 903513839 675999222 134528222 703745413 52877571 644719532 697789932 976875060 655899277 327533229 916756233 95093071 874451962 318303824 377341483 576998752 491895475 84530001 753904583 754528645 612066193 184378767 59033799 817121901 348453586 250419606 13397164 823509031 430938002 776914938 550010310 434577430 229941753 799520355 231122772 473993787 26159258 359410511 249663675 576327451 956666266 647186682 639678863 904275993 779902957 427119986 953994446 97847944 67834355 312999084 432813056 80716712 880690529 3403571 61506587 413688009 351427700 308819875 661422851 343647951 752621652 201763963 560991861 525736893 9841674 673430127 862262229 126899478 203855520 6007169 87040026 612371053 815651007 773436743 486233225 710577264 462035435 987266771 134772648 520908033 989053848 666601714 343275160 852960033 600271933 198781454 934467217 151090047 315130339 927420253 13453593 972158136 15986722 729151464 276381112 463832254 446043671 277051946 834960913 531203159 562724365 294859877 935176058 591694847 952433318 560184660 289416208 185654826 491143443 899011232 689262881 335177264 474718509 16689628 48026604 872182203 273973477 702443146 229684276 601719276 667877348 680235428 194153143 11591057 468992621 843819501 102794399 779427273 314158818 252081939 500170550 237142715 776482921 296534413 88162812 348540219 660797637 838411356 59194440 21246890 530295034 683465747 153532520 59381324 424923807 465117702 230825819 293309490 343956332 155971075 191057675 733203775 305831662 183031319 445895429 21085226 621477416 718602774 449163537 933137221 220402681 784281295 924119485 580894557 683795412 435167344 48853471 22935998 590434679 564279686 833218444 941491533 351287009 396628362 109042893 250701977 313734353 246019168 184830315 674584367 147058586 652887429 637439513 326611719 158298756 300898346 128465436 628217015 78445664 135556428 384323358 53587082 482364757 522944379 344504901 940039964 183062105 748587952 465630908 814486813 262116063 915334814 48459849 187955029 771602422 581856519 981537700 868176482 716355145 495504840 689982811 797820397 525260154 71865723 35054624 740609344 208780789 755777270 226121083 672037071 465663120 305089265 931172186 271855845 261563143 475182714 270456756 628214050 261095597 544481026 257781567 386956046 421632090 847232308 949624835 454525288 298553766 978880023 226441848 679340964 179305598 197618265 612639514 81575220 85765826 695197014 402998597 499771912 44423334 939588492 95970834 938960821 73680370 998618924 844590547 598657726 519939355 560251338 118408128 530258402 566217237 124824734 869218252 207090191 114574276 609775067 294171453 218426506 689240383 584151350 886764090 558572658 582971126 83952398 49736130 912962027 488480342 594520852 676186491 403534682 315758435 888008218 440916960 62930223 975869089 768509337 364879145 299630364 361033828 572503833 47940865 417593367 400508308 602057329 576357812 901389096 210648069 260521510 884789898 905569449 420264094 246206685 678968676 999847681 801708795 541661513 304330423 697534623 424751166 813584058 674478633 446330526 984903728 198257097 234765323 276491652 695523248 639380685 719281310 906720779 74620735 671504830 441202935 787237802 953298153 169546594 576884022 136231387 743555779 665389609 140113426 6173488 75851872 549060861 224614126 732129097 53911631 345384321 118691254 853139674 917920915 463631625 763560662 962569229 341909790 639841313 416969761 505626826 196516720 47874041 592114545 237735582 249779235 552169202 168980829 109685809 178168920 73114169 619467132 404777012 264286041 648344442 699495269 10651229 612266558 392168304 855874634 619383037 157666620 770471269 84747327 237948056 325939541 578818377 514230427 152079809 645256044 738890798 808887894 872844143 976981362 717949467 552127599 196277100 490957222 796367714 376314282 964940629 17037168 839537913 604441060 160065967 121341896 493785675 487652538 226252317 445577227 258428428 529264686 184595229 870204975 644694830 736830234 4692895 518576702 833589488 393216027 179274720 755553710 20139093 390084930 862064337 634749455 308286048 789192695 184333484 306488380 821165518 422142975 239696690 88427270 991561897 175424804 832399507 427152324 892002850 353031519 298180950 780710059 723654250 424423817 208578921 12198280 340829536 660279077 619617256 387707808 724911607 705105265 933248141 264441520 345977926 106067928 314832985 494474532 462385939 790854206 323363290 9855783 628454181 285639041 343783560 533516014 924278667 35977184 224682179 435075728 448192970 160181938 196819954 333372223 151818601 710530691 368527462 64104011 741800477 751053372 172819003 828353668 385584522 513145886 865719656 229016187 207903864 721587159 777672375 999418536 836671319 937765774 667477614 779807776 379606528 380533177 249068631 963119876 115974142 724162111 336012611 218697959 677193512 971560724 268757406 586298411 970108928 806633562 163766608 41460789 423971806 846780506 971192881 117871520 729454280 922076684 579355815 377830182 639284066 44070928 458726640 662581924 131908323 371820669 217744633 19515578 119384052 790503962 239345498 85149542 476754384 573941473 531981014 439214309 828128186 15958170 752711790 994397207 222365723 798218422 354556078 418594959 842765725 312788828 805388812 371108816 948406941 728019173 923212511 81823064 224290530 739727137 755107100 562943680 861247022 980016781 461838303 581449530 491084868 349411134 611350675 267167578 525103374 279018923 917404925 909094925 991121032 555516709 639095123 106594146 596985721 938483525 605379885 651606297 853658041 10279947 371402966 795100785 258803106 989517875 815922730 179762646 293989138 332464964 610145093 289646060 783954634 970062555 700479974 223196865 886100448 951151345 753361894 184754200 279780377 471949715 948412375 407139448 152413513 884901047 281294420 224203801 15978658 212875900 92274278 683986954 205472529 351756077 37327005 875223400 455898727 900129846 175091692 327879356 671067192 810920393 273677199 134642681 36580492 32250840 460878179 73557153 510313914 657217929 215225190 302380123 737023549 493742619 261206592 813545504 427738144 757798392 775523229 293208514 721203251 175522856 539195638 256299373 180598358 544396975 388063354 850280615 132826445 226181849 195086809 208438130 385571215 571274860 151275363 865776798 722525936 119798047 117237050 261728127 62813587 625150743 157230645 91857431 896124993 628317677 221232073 236174740 138717362 216410333 889860233 5916554 250746826 848823333 704343322 910126988 185583827 617975337 180840740 60413993 924375850 942349064 958490921 407126468 37702014 768432829 831893711 835031003 697961888 91730813 368825160 211591766 698481554 140911889 647722615 13733951 27615246 560102965 221316748 334714214 805946204 683238847 406296951 411575798 356796152 829809117 884639826 984876549 300093245 735483685 35621573 956969195 420147285 153457003 514127242 30998216 879812444 339697770 445762427 131807496 376715563 573687807 936445168 120026942 846758290 396696930 425103812 253571833 597985407 506153782 236958894 495619249 779954364 273059251 951915796 836610648 177436916 528921667 738645754 326687875 934316238 575279667 472557162 356463220 315767572 233201951 656116394 410853658 907218094 636289656 23355110 607784622 950409543 515780667 287772703 840952736 152119266 296837471 885938707 354757196 990566451 798818021 118153028 899153522 358129719 197898123 652822048 212668430 743636376 354568704 727910304 860218615 627012463 916822264 658084429 448886471 84559009 360304588 648242937 851385713 921995500 733651663 869727149 534189085 125955274 170952976 946661342 269287438 691161386 35784545 188854093 995419799 891309855 604323351 398230816 989444904 612008169 831088143 262613208 587019812 639905106 906890393 339621990 31243574 173913388 837981770 637680062 633582525 41370817 164714749 261907117 397483359 946029918 207786705 19030181 984288977 897472178 133543437 465918650 634104925 259870280 968923928 266317468 886178423 306762602 58705233 401443995 72358456 688372793 236288516 525666414 395842499 665819589 489872804 312621293 873922683 142285505 713513937 393705593 248205181 824251958 745267535 357880782 835112042 170625989 906161705 942283962 418286244 300789077 400898621 474989651 256531596 763714373 264098872 745315044 716521750 203671620 168963633 930250119 362791656 453405981 618988472 192014847 630637362 418152542 901551981 928357842 334086869 749505225 339475135 305008535 841023861 533526536 827534924 962248168 296393598 560661181 965983665 997937875 826531446 436224925 833069711 24876074 476834310 879623754 3681058 276196339 942981783 480619629 322417891 532774762 137962288 981998021 385661228 316570351 859869320 161053240 699015365 709254774 124017609 240614908 283624120 103623731 219788581 998329217 185818514 370102133 741125750 557558773 773661677 36921984 823708003 578363157 984602796 80306844 589257815 699717493 563948731 856200886 383221049 717041872 413733237 183768302 497346988 148981565 525609724 964699043 391674789 561421387 738198265 570083134 503145283 215816679 958885623 234150441 745308176 887988515 723447091 425167713 87455931 822533547 41107814 370377988 560526881 185077822 3522251 734035053 312967793 918022121 19184820 184380924 484058190 100607232 172188957 805375969 385589987 186718733 456575220 830542360 344566667 14569577 824381704 571382488 480115111 970933889 915025621 38856572 427741733 723352879 526196058 621351393 803694953 630791000 936322446 798483234 742422129 916281835 192101352 47382997 353485334 205384205 411297170 666752168 327149162 380340550 82283266 892295704 860668881 630273011 685192486 454211666 338269350 185044456 354105702 473924668 681452946 574976492 72161894 209656601 485462069 476230906 416494814 269145223 276443404 449610089 953104863 297915677 677707367 298545026 76583942 7702698 505828551 953506907 409551950 211078755 419185849 756918338 451323281 546744128 832846841 769226783 793893019 412715290 538397505 79300192 931981626 521647681 59509394 527943760 655494525 956964880 930987548 311883658 292074734 885900279 238656176 311553833 942028495 298820317 392340099 714468676 453990244 60410954 66001969 54554494 459217018 408158315 21889838 29983695 130940729 947953559 800006713 76972789 111987971 745188707 176424718 52399119 394810359 427509028 913948911 409841751 976827042 515927648 584027075 877418538 422862019 526931820 260471985 279631196 556832118 260352005 207003529 792694627 267164063 544818449 595758947 136784666 582217486 390591167 854830002 785096254 727471710 150499184 422548916 976741295 984165341 311027287 175070780 562987922 246006058 276663185 256246001 27423868 593374528 556205146 491439935 87799897 98570740 405469033 978522874 102870485 610463480 236567526 580744137 814670856 242118361 676878366 573553030 756934124 921179724 821076558 686800137 934794713 576168164 935275025 772569808 159199273 452074493 702207690 273744467 80186490 623871215 986693244 112839131 463786876 400105824 626979693 861453467 188509859 637845732 831361911 395154062 680972187 724832252 895351048 211106069 655203600 705393703 883800799 440195302 642822133 214781037 246890094 950763927 438207831 682836166 864186591 915161979 29009219 320446038 958701309 829880726 330068223 734912762 825430026 568848447 234709133 348192943 403127987 292558556 596812816 882883254 670865207 483657363 272094556 986250362 412284566 733302448 298833344 989189378 843838274 978419284 490939115 248752279 486255829 199858471 317763243 403636342 449219820 699448348 65049613 823509306 910431327 113687370 756586778 987308841 232178108 507345557 854093667 616321324 159485757 207826102 640422418 649644444 446260988 583322665 817183623 444273450 254686042 757223625 700714140 121977442 773901207 107045624 538492013 440361017 170949151 733491062 768467244 467698474 221651668 700728031 623869618 346544076 928602947 151656812 936592995 150433690 144876018 883718360 350581331 446128107 217478265 771663650 3662630 373675444 418120957 122977835 611711392 877189623 414538794 451172576 78390937 486851265 470022757 281162002 685088051 976128102 793067131 667590710 211050649 635820606 939754794 786612703 918999844 503835061 286423528 925315538 712542690 957717893 961455437 796858574 456396134 806637381 319673983 142660643 698560878 650083121 52284165 3242201 684209365 603114336 405101283 96187140 289020303 184696251 872628828 564550582 997907848 885896117 570102483 923879438 977571074 322812928 614665930 530502522 999393547 344286360 784844175 470528331 933555294 137667029 504819355 612700879 28150016 538174233 244328000 351195005 471547397 129596913 194860189 577266046 944355241 732885254 932935206 946686303 141564254 783724105 493399106 490186967 558000596 975031282 536814502 711675068 768731831 486034975 99357316 307408803 274638716 878999268 126720202 389844786 364003449 517764053 233055531 290093393 276394181 156992622 207855605 444012960 647464846 508992803 761938747 801817663 123039500 347606872 563276194 97200921 719875815 232087239 273172651 492570327 996178860 892256410 162644876 457667207 96311356 575229944 857246013 177143193 361810146 702140668 954618587 142436376 994837577 267152186 256973676 516882149 150550568 288093810 729578771 54131136 632389629 350437560 476110682 969051546 208603884 784676526 479051092 574318394 867397725 588357166 689614687 112700822 648101249 777248374 929578864 544339376 775925545 790892064 819834531 821737441 195381867 820511548 857418024 478380015 984910903 886064521 617960161 959062209 145769620 913951542 314276050 145427721 126374012 69222229 757904174 507062250 245448524 830295156 894925634 684874273 652345375 356790734 241880591 247234802 130745310 947496360 148208034 197898333 589757328 176741608 928248652 113766567 717437530 983144094 127560134 128718605 321193991 769279562 469110671 116300489 602779086 28323038 353454068 132759976 278715921 709874761 448875045 94943782 681592098 890130009 833609567 814538652 72618391 477090157 590655688 468147232 938233727 738237735 827033897 326778225 366237820 214365293 681195319 822526517 439915494 157633364 232851260 475755465 875711510 891817913 104368933 711570827 808798113 548599479 767503702 106432286 675269269 955420929 799409024 988141566 726719973 553795607 436411822 430891073 58995033 238498216 979589977 965705276 905014379 606944153 466459933 981728543 664274806 94254755 193912218 91477214 840722589 264079095 631425602 554317907 490134463 378979502 242204955 294179208 657401413 542395092 77327346 265715828 459918702 91228057 369027732 557730093 579742675 583902292 739252110 451877106 293806602 604955159 851840344 427169953 264032281 197612609 340462399 520815145 868219156 43030884 804091779 604498851 406893742 244686136 187025538 336293699 294974798 571801005 245065991 62916876 226182724 561606329 978316424 919700784 995835264 312682127 272000435 186883600 277475279 364647325 405375481 864499147 856849252 48164242 258218611 521906925 460150740 422094006 510165742 379468006 914173906 770947484 536456293 953190960 450889472 941321876 962932450 326649172 156610965 274689929 51893893 162450430 235077303 263549312 51928769 104163845 384474299 440844682 418185828 807315926 680826472 177623332 310146472 264236997 47251220 428831931 161564703 342083936 926560675 583298587 225448317 649647926 660586429 91970857 273493953 209354389 426218740 103608232 421334855 617121131 250996024 698746471 549849546 821712064 105998937 267231484 850543819 971212669 593716321 205268638 120990987 598241370 542261967 953354125 719379585 353722847 239629933 79808068 115404353 902982810 308164592 542032297 203335299 106452037 43205038 143662722 822652348 365570052 125206539 364120359 868153330 697765536 519919288 45084608 159507251 399051246 443406888 153470726 566560350 882745662 464164497 466368184 162311581 686004368 10014177 405024915 449090930 620931112 357104789 135034050 440140116 436215292 816185179 967750120 764058199 786065894 379500484 539545094 241108170 962998595 117515637 223515059 680061953 718066217 753167484 431733101 307032691 934116593 715608313 480792143 988581388 240800401 4321161 448206369 614166647 595796996 78311591 706694031 43712148 405486006 877475898 766283723 567848567 729274809 957728251 415716229 247483254 424164013 402455222 711737440 140938926 788404737 434551226 259291726 376430435 799912044 961878900 348395594 799035049 371757022 388846696 732578783 809288920 316855800 370387651 75009490 120365273 777880275 605782380 961786187 244261520 169530297 157991429 475874558 26604497 507287697 733923511 56951416 979806382 912377584 743986077 751146713 696493167 306392445 445575573 638448560 425437358 360401307 359698117 53974937 87723700 597550300 573786329 613156094 826966343 739884697 694753712 131528273 332454154 322455077 708277631 379776384 244883217 689996681 892837054 644339620 472555585 598675756 245798537 843302544 341163849 659778948 250039379 817232490 35299876 170602538 145698140 291725773 59838658 518999288 242629258 485652305 353712034 696073509 390352189 86619202 834468978 498642920 154705930 250944468 884513172 259404941 937191526 988601185 262345491 337395260 616715428 356877782 917711998 42515848 953887246 850841589 820311819 853814976 362363703 684321750 695759123 795908324 522235569 909300055 854211660 990391203 116963103 976839581 834310141 694480106 615689130 578724805 474528716 713781534 73621879 214898949 147434639 11091 592017656 597779924 371164208 641752507 406961245 724681954 129507891 166299532 763678045 171388988 944510852 750367985 324387703 597183172 42514221 394076416 620159869 273732555 225364490 714389994 254929163 268940949 181607885 842660384 295692239 534723975 866002472 396862600 660377570 248605433 32244513 958725600 500901104 950773442 783023124 649840675 925167986 115137071 831474410 85878738 349362428 496444521 972194881 43152004 329469804 446550973 397755486 235932004 524875957 937376947 2528694 696757504 688597465 336482643 922271511 552646590 828727543 774919369 478738179 449805713 66113189 20302444 657736728 510871817 231654901 104042448 891429443 455148328 982473443 187979581 656239423 403212612 855629909 104531469 935423403 934287844 147052460 763320297 479780318 258667295 676371003 47575042 683826812 144316159 321591438 205816630 978131700 323011306 475533944 716854015 961110400 60757801 151215720 20492390 443417709 176221972 468422682 290480717 888001015 269349412 548393569 857631640 330772914 355238658 417724412 259487838 399122415 176589801 625826306 713373262 756459958 650115222 837261598 435517756 767105581 865449478 197563492 345265521 784585431 244965439 951465909 93608217 699666679 458359181 833336981 611019519 396487880 502140048 155506305 637919653 995649600 740870300 139040300 19140116 94768690 124390494 924034593 41115236 651678802 482744218 85058317 768277352 803438585 517224522 144405733 170819588 333335266 490849065 929729293 524381720 89591832 177442341 543463996 669182970 864389657 37151270 523473763 978972913 223372601 106248506 9855025 360638062 273083496 839320109 72980195 112636047 605040240 166280325 603628841 227476354 162948645 970516159 711821795 374350603 128873426 334590914 543109170 180570367 880716749 306690283 336398116 782157910 415238882 191940005 976235941 724114352 895262867 958494586 577731915 91713004 788915802 704490577 129669540 223234493 926251220 986638360 836361059 617972520 871073871 205382915 113460559 632764248 692493615 938618989 749921870 119959414 872864095 441255067 600866076 671244123 386329840 620278899 307838281 860167084 607464491 692807867 499071355 145844299 194080048 789965750 722497451 436228026 366483148 849444770 315270427 920150569 856152100 401328858 628845895 275648087 530982204 969203080 388845856 361813688 807215148 770344045 402562701 945047116 872974653 9895075 957973614 139410030 744672199 340498442 56173764 875443329 405030181 993645749 759577621 625871811 401526140 7351623 159584670 773771887 851400544 411208018 351396308 189708054 747488546 204404333 234936047 624109223 788319035 219210188 803140936 520233984 512060927 663330792 936954882 820738309 927486558 12166702 576848606 391007500 994875547 181276779 67652726 808008603 629230714 269199890 778168267 239825569 73609653 440117071 419849087 782296976 626430311 326090510 580196822 123843496 602451117 158716076 601538520 868707155 741321587 903771710 441892042 663119448 167202680 655073750 480508269 862455856 40797430 718271793 871147921 681785113 97369113 42995468 958733603 93267884 798398324 149710175 821737873 411404156 89446257 334032301 31569809 699569444 544766104 712853291 703897048 187438762 866408674 82537160 224663427 606505766 999933773 548256333 731962960 433273420 749621794 144508942 716414232 687461510 876861135 68778736 918691557 244381018 804296540 581626610 665993887 335166028 485459837 641123726 286844871 6334520 494378444 227385988 736731232 76556273 579609307 170266445 114236231 984548763 810250562 266866517 735679223 240824336 646301313 329839743 88201516 442475452 743330151 321518734 201216083 243132744 91835946 144388560 794394773 141676033 181832518 303862718 983135351 48879429 709986148 513445730 807182484 623007663 315316913 592263072 602774839 406180662 387406271 932037245 789625333 477620288 51283035 903706184 933615212 241032033 890194892 218913259 626112438 840284989 762361586 494889856 819784118 301676761 722570632 596617523 601417884 954336444 956205411 150568398 500353414 514617083 450462691 424792683 753290297 504562677 813728942 770430055 451381258 115769884 539872912 522133830 758652331 47370579 187470440 582987289 607965054 121092911 297358205 156521813 579430391 183495652 304404174 224723722 549358224 535052209 486228049 262144628 789617841 189641258 129321807 495708231 654152725 261870949 53628753 148446340 970342668 552727957 949154889 697976080 834395582 576301913 406232364 966277643 792813737 890693570 343337750 843530575 270908476 787899914 282879736 44907194 606814735 622985601 37069998 369144558 886064129 206587565 684208358 145222022 229112301 589797701 888065093 356176526 195864627 721773340 782951033 111035676 64768787 660351603 939333266 567134405 851868452 18540207 568706317 302042488 42266054 471577326 847703164 932700714 648338050 360345434 877976403 441662892 1408946 205745604 502086734 571663747 498664268 99760232 760573628 756915038 869623298 487999163 196063310 172354433 338862519 861033538 390975378 782297557 275319446 185795761 227453379 384935843 352147917 249147635 455110601 423883238 127782289 98196571 840238986 891625171 625933813 146162096 358889921 53001777 55947548 194404129 858569339 729779174 877971791 673070527 330451032 900275536 963630897 201813969 441127471 130832845 168089306 824414161 952277100 614193228 539123526 681765567 337146027 87638886 538228400 74176789 603371196 105913650 637769575 355760107 840800269 661354001 387761896 99919906 193746463 913982885 27535477 594324537 312212588 540376594 631132605 434635152 795405868 188928442 360288687 413119426 935161693 422154576 339922331 391834958 664715956 525531617 811941108 297324091 235025352 479124800 613325689 857062393 985369145 316400643 922202769 512070492 740800242 491946887 291635250 24973317 858203160 378732315 159726708 208169379 335465937 191047485 264882153 942087540 716432296 364586353 562386458 795360651 793447461 465945854 385371068 333102463 681603359 516948328 770560100 26158710 528872734 971555142 781640352 372554618 28557517 83530914 768189476 137704991 271955017 288184411 263875863 490805471 363299158 121252830 419506494 926260576 890978062 295524546 453496854 703482771 786266043 298627746 354698301 93270106 118766937 482009115 38198270 192898892 765801855 402474803 340496983 909193666 499150584 650805068 564999906 822703240 927810480 278297955 878177410 657582153 13328954 798795028 773584221 626560641 154828227 412851956 223716086 754743676 669104914 619740850 157772138 944512965 990871294 736998729 23875229 31529375 211486782 559286033 592121872 295452578 516691616 401527863 270366990 545349999 210504363 80487546 6484608 892406217 98766973 722139020 933079571 122449808 204868310 381665553 954779000 616523665 560769917 280862531 714069980 874310731 233103805 310956202 761157052 219858695 914942648 707747487 738624772 308068886 749661309 678785366 432212887 412798081 586836197 288543319 428554816 40371584 851181655 219459340 487212407 588963457 28790652 185487690 378688171 889501799 860723734 671671405 116867908 844856733 466155698 870966026 676257925 838046207 962596462 998353791 594072472 456087761 955941676 763284257 930804394 923092275 749665225 798313541 373883387 839833953 838357578 676397118 643126702 383544396 199890763 206881205 176829359 689945170 818009052 874517950 553054910 667813200 221480547 767163983 697567503 548900743 207779042 753358725 390709224 117959221 339131626 488950412 127288888 425486739 634841015 339691400 790150260 179590444 190515043 63718672 843336978 633817262 511661182 943753173 634869640 183744578 804771619 916108198 573772560 452981291 544418069 238492587 682349976 635681996 27104245 739294318 329542295 683867763 634148297 548091700 329089763 860916590 536794110 432463794 621059043 299079661 148368316 858343541 717423302 110316276 664325138 604273623 790451575 436052069 96756185 201750283 549697875 612313443 797874843 689648497 716742658 484358676 674887304 499177765 422454310 299192482 307815073 253135254 328614826 530130824 326045489 753610366 921166749 628987414 376955865 450995425 547967561 111114253 620813350 122724348 169249592 73989663 275173681 190977533 408036927 958001588 132230584 608813405 446375891 173539181 770696250 230023474 816790930 643173945 391276853 25408367 792426946 89760243 906491303 950137353 154650698 157202043 948407660 367877407 224889407 889548141 90593036 420390339 430630316 279243141 302965581 106011329 571977012 209865988 32168246 244750915 251590651 524318036 565773135 118396018 602931960 467755609 258874475 145843231 555193708 928049682 433893811 368460041 274025693 432924864 462340664 551854199 70241513 843581528 56134646 850021708 99719615 937662306 155653268 214249080 24205783 926133358 127129459 132782475 740568250 25516792 191714327 953209385 752726655 491860626 795933977 488701592 684573492 332227008 878252231 288677028 344368631 841505590 787976407 265538444 863922204 933928098 555221170 968929287 474647617 473878462 700005400 991328928 654939273 139020047 621093969 346340185 811825833 685951214 483528902 613918758 382808335 349385884 118991913 452411013 11147347 192808634 599184492 803778757 109403034 779717723 461828856 591327394 721705997 258872298 813687186 728629739 619039363 987328148 139188797 751158159 962454971 50941319 468951672 623334264 562662373 146166896 434459324 898055870 702882369 36660622 251346234 956240847 518914555 655154643 115648500 148648223 776869338 202690313 179417679 306198768 542086906 251656176 257842275 946565057 462873450 62939581 144944266 952359781 673476357 770374970 353591614 478106825 739167239 141190656 86313300 938620662 994843656 522672267 158701688 682031408 150792794 134851269 818792956 224735704 525116628 708051583 466882957 432298152 332582151 500442090 745503933 511320532 499740857 879060620 496538693 707689558 33164377 74643422 766891552 493246284 356140284 253947584 558693912 89769162 995439946 973082944 950962628 914713886 891035453 33499220 393814279 475921043 550841595 467727407 229145377 372452138 197888231 226526554 853867292 822541975 690929713 457040480 418085976 407913672 42174917 741534187 19956328 221859116 104457516 143796185 468590129 627207008 796536835 890546255 270457104 496886380 482242619 998178700 301338282 640621262 378454068 154128821 217845929 844532453 701358930 447823168 589986207 213486217 934242393 107225120 283028667 86202225 627531736 572758978 19649736 236625595 253985557 704545877 653556069 860428687 804035818 289101933 20075255 167855332 853179452 706202114 679287889 788545471 361222119 350211554 893203534 287414650 425647430 474791581 551665446 459097513 718056559 97869938 735612692 752145354 794649292 895727336 15442396 868367792 877005861 897314416 235669581 762185052 691187547 992956977 172164930 39176425 244753117 883611396 90859926 173773903 721508449 912718432 349910494 623445022 741007725 476831896 332964646 659825513 529314730 274910546 827985855 557485672 281262805 301917268 878390982 536905420 683538233 312509590 950963087 533257354 172449190 139676326 878091453 252206265 766894382 872384611 503770756 51584317 434873213 239510275 186668838 744253691 803585799 724023561 372267126 13108312 12691333 46125079 335316350 572192044 952347061 820547757 581538421 26192262 672820158 411875353 367801828 319416316 818445430 871077779 937478328 821729577 39965573 222928776 90586182 116887359 818163091 147446543 909237172 75581172 452550201 80778712 700791623 295516965 62657629 826733779 225684393 389073641 363310826 313673737 692066605 542083155 815228664 704045008 120600196 411757231 978279683 467482922 280724510 214627968 22931963 597511789 455292998 48170348 951470713 643741946 627354570 679929951 148864170 820073730 99656135 998781471 578513673 3218309 420035929 261217950 206305460 162422367 779380420 732653364 627713349 376401903 134149171 758372321 716399473 792630876 743292546 983051348 819262939 516199523 895418212 251966642 838627528 390428468 566960078 253968363 451280698 487753716 694337450 432564502 803467683 874579655 461824616 639311474 339588459 575604506 394989357 441495034 870328798 714740173 618633601 19020919 626231668 906313853 435878000 431171532 820305481 891460588 753272751 816185800 682428249 9067281 375800992 852533911 318807492 355525282 989061779 681756276 406158381 94922014 105751449 529449880 9737942 69687188 922193542 185446583 856885995 600904563 521533135 797982969 324537037 459805854 181604618 592719717 719622534 171164359 613373064 162687659 638336466 916848733 620372684 97884086 370165799 891889321 594092592 415812158 917550949 187537297 320655804 720986712 118477831 619327567 68053279 628356118 624670473 261525398 139564122 714090492 118375430 267923329 420405620 208662204 261828246 626550379 878534095 885257019 321813280 572484142 922185828 665333934 614111195 594404839 175844530 286640159 485953598 322504266 742942527 786995205 697632281 882159120 1780507 362943302 933851766 47589803 243975557 537134290 530245692 159067931 403546048 622682444 652391289 724731590 646352758 812784137 398818863 46377143 259954234 651633766 796985854 762572547 443991929 133515488 957236550 403514467 203206881 528687522 93714503 798691972 925715684 998361185 809052673 934904078 813778258 361445466 386573564 648328273 866752793 497592814 30874784 639781944 684366984 705418773 771636030 818292575 453825683 549129549 821455235 990379734 350707436 720688486 370057897 691881039 310434184 93406221 409494905 398006309 95513182 868241471 93153420 506878426 474915610 978994672 676991893 10728806 849166305 436318086 912244167 96054048 161941279 6900205 420007214 859685510 62163012 872767459 468003887 614875611 615061150 526067804 225858130 761567824 493503791 823461387 512751243 751231203 163273277 360505384 409293887 483021283 238271235 990363766 359927456 444435413 508557405 831893447 487715016 197225356 692449790 711212750 278158744 946729523 636479459 49097577 3049250 713131478 980872604 969819055 304597989 989981633 254793604 703338711 612718834 640395197 20849244 29234560 682842424 955970884 96772693 325885826 206667798 331555127 19368899 637258930 117574405 194053037 701150157 728621891 732329704 999794985 939779487 95164445 690985077 213382169 250916687 803809203 456899377 710530728 187681155 457972551 251995010 100297284 446854281 188390539 317696645 756689089 945505887 542162412 876879903 848048669 987966256 523809490 242175226 255516318 299979650 298315576 597183909 583533254 605135573 111978128 285429747 226902998 188355801 44468907 777336942 902671953 67803602 622666325 296512241 694599748 74067016 819611686 205513341 188446535 898921421 149264950 95729184 528880415 613797210 257037513 361348086 762223656 507915532 513529147 114907297 136825075 308317065 213487856 964693497 149885483 744725692 193510238 480196092 12242818 418222598 806875576 342242578 3664067 567271933 346367981 775321552 524812121 766030514 31986674 750674991 780645750 940011900 593402595 51881759 133400380 329071721 593110606 609662180 180181063 50955438 510396979 960916508 142482066 479092433 69195119 927773305 589500090 535480921 844532964 380192748 547497916 462826250 808744394 430319469 958191111 579374549 488476152 743819545 548629592 40764933 770768368 845266287 712225596 435168325 23633733 840510776 508417414 17890111 697039218 814875268 95775733 840140183 978331709 274816016 933718945 564442168 436021425 920072888 374923904 942571334 22248530 230588746 568581930 56585527 154283902 192748695 43122900 247012734 815764234 786631909 648784921 449150542 287750104 136754787 912450320 116004874 956985136 377698540 128973047 906369868 579190936 62471957 727051004 101731053 981069055 758045699 824341492 330697370 655460350 394163190 472409254 784416753 62807731 23765620 268498924 871098805 901470545 306595865 288286272 128623849 707102130 56367575 522558406 412303188 800651214 528237882 454787400 31741156 730884432 660772899 406963614 342911904 73156007 964143401 217658169 365097297 901680361 548797232 222817430 18158432 888113672 614706774 508038081 838147531 371471790 976115792 531207383 922869814 238207402 995853616 945680872 403788644 534473705 375656048 238724630 33382237 202003129 150916964 944081383 22255982 864698321 91193297 803465731 803485388 159487733 684539181 285129555 886321860 749321675 196304492 318372667 756830182 187207131 683104096 93481863 109687393 761815524 215423498 596128859 385151042 302993209 448413418 183180123 950991735 465699426 484144185 889847528 417012089 608711875 847519856 108249488 326345858 33410573 497337287 150134925 799118790 518400484 639939148 711217490 777118560 415502857 465430545 249020045 569611591 418575472 484428000 194625121 996769759 112269525 179630498 118481515 366757082 374108595 378814888 375750478 81177637 90764122 79397725 852370766 572096291 216791275 80371230 679892164 96299994 486226041 707691963 897502372 442121328 387362789 57043424 210792293 835391233 554283487 336668474 193741183 347893348 734060929 256460663 516113603 718881479 337937768 258607690 329867285 960048857 851548757 435837186 846499531 307171456 867304458 689975754 71038069 214459711 172473259 858169365 220264060 76053169 973058783 519893725 972274519 623968269 606962119 89739041 735563614 908497886 845858270 510821406 291488184 19867751 735133676 952178235 592907036 446963260 932907716 669202016 159595413 54929445 432038984 127294802 323926795 449145381 903856807 3138372 646010427 822364496 726840854 319701583 814190093 547140198 256499943 813133890 60818569 126245569 90980800 503346548 233090515 95921277 4177829 185898359 638864266 383039194 92950062 596971211 490922380 60148621 396254221 576050897 659664791 414002420 372018728 964339525 132019054 299301559 576004551 297076338 171505009 599766020 281946863 728170806 714608910 654218936 978770313 696395985 647671949 827147596 741368012 564736027 260063391 343279292 22252408 664151970 940999469 44188897 137293505 173121074 207299015 195828678 978558249 766949317 700409072 895870278 222254885 747796898 736753758 338266761 24326452 152960722 741338379 326462410 972612040 512131500 651000058 820829919 136744427 639701870 105888964 165328565 942208576 574240825 197028707 169657216 434391899 401376491 689881601 661032079 946423433 251503529 636016947 463193533 802380405 310956883 685873576 416286472 751977984 346669730 776683886 492469613 485997750 131059243 709043769 922960625 711756061 519400882 582142195 473980120 916643953 265253380 198183403 520669581 199434009 401166997 970192315 260200276 838100037 753505878 348726719 962143582 67962275 112811046 917835536 650496914 304507192 333418173 609444688 301175743 771831466 461395938 238616545 200401068 5855750 105423480 209914483 108743977 556006639 524922441 251924624 161876876 575615625 676151484 733611390 869514264 837622853 943642692 89537978 651030113 249132845 743349327 519937612 596668853 214236419 956564880 688008787 205293147 664835112 97111001 630573299 255332184 536549672 623654997 49266440 792384653 934443349 710011034 818238298 854106226 303643378 886972203 559818647 934952701 736839183 220596988 482880337 288880657 440724647 386496967 678755668 565056669 617458972 716014171 475498725 882148193 722177666 116345284 920223906 476935387 596655798 554475101 179311268 257938068 630913368 465770837 666407622 117600219 603821642 129066430 673151074 349380712 78597869 483111276 294313322 23093716 848099974 308317807 17832089 181896598 171035569 351293107 862636590 1489264 248365020 853910432 88477222 155287945 925711785 375039465 165006667 131964095 961942938 352834429 920488899 142358298 598600517 740023577 78970831 856777296 279359119 86178221 500680717 54048395 94313108 3254981 652252019 405071903 246776552 582044406 996782834 160615251 604714311 284105476 699713510 757699657 643083467 227053642 396208592 981395255 947339115 381915766 813101263 677298152 152072237 429998343 554963388 98746881 570737335 653523512 325399731 835599269 199539487 126592564 544228268 45978604 349600654 838054166 773521802 526881413 932545386 286693787 22013896 861790080 133747638 43046223 968698339 760145268 908035912 180316432 180306959 885314246 61072600 177490250 766961806 270300702 70026789 583391218 646489214 136942498 451214440 613888386 555545376 582368767 178713011 701147869 452045489 293652243 580218355 24196449 744357987 976933152 536411670 201427868 570985958 271791702 518798448 577562687 640770354 926739439 222043453 900664334 60822897 273789355 154556931 586162577 451417521 114795311 338771330 410643062 160620639 440812372 368165655 742583631 840353049 475859850 959040912 707416441 634585945 437350361 120892839 17121651 363631940 999494322 116995450 386787869 98459882 516582694 692357766 264273958 605436213 306967260 772680999 102489826 478570670 651132257 792932545 219173774 659174883 544332736 470911732 656181371 563160188 254575137 683592987 285458235 826897196 357288529 336780350 313262511 852549977 104422549 145142467 13892777 666022785 111300263 514907978 520692217 314691842 591061122 730853280 257966500 569788530 556110569 250245347 696086148 251168779 227610188 78189154 669313301 240908861 858969648 375233425 591001462 82140236 87337731 66155238 721418269 17903037 9579646 828174632 578260967 88365727 333384034 993666241 620849638 327980330 974770275 896787130 92220144 853866078 586664852 312287522 925733437 887116458 198638279 838223376 76329676 566534395 877523929 468497324 469039169 925379284 104149425 576910638 361919455 265718309 798162956 173046233 440736954 570014453 729057323 77466371 910885790 613091911 889153355 591540588 766099554 483369462 208126052 965779164 22902287 715235723 120331201 854234556 649113243 275577521 81911081 189965985 211805375 792894550 529487908 672043399 797845745 723410609 266169986 726800305 511996466 326969120 996399200 790580264 874563120 3470252 451415379 874385102 726788516 292638083 237134775 839452400 528068951 135137734 12966354 913939685 16272805 562201848 802112851 553917544 671384344 788670280 209734722 458106615 438710284 726109782 73459334 338404460 992826759 691905958 687560187 360981797 263090473 188354510 434816862 732499192 440939540 559153398 533199942 534779305 750903591 706362400 25338028 549157260 161926687 534504962 673362761 853692503 37323135 739464117 934005077 823748528 908579406 151339161 703031722 964009651 671213566 92294113 715320074 902505805 334772852 636164504 282201366 636003782 617769213 713910328 365376272 879502927 259634585 914810475 439227 860432503 127797347 622858751 718535606 458957245 106424238 905854221 972926700 432038279 937786855 964679121 464914762 344245181 957093974 972223309 227736739 737316566 77545418 688873474 648906616 383850675 949131815 795065211 937206595 241308823 43380370 238742023 508632945 185638289 806236523 696903427 156593395 219871590 263452349 951202068 163438496 665137657 966826894 234252472 253961871 807175996 150412397 389409579 810210000 353274660 988343272 824194391 250484024 494027621 267185677 555262204 479366360 668816629 491641209 159541660 266768120 540986134 982270998 302587677 8379849 783893672 87790957 32684696 354854937 494998128 442632051 233887029 214010226 382156089 606714990 305626103 848359447 819872725 922153305 647138702 177475927 594160163 156587183 170680485 651452510 696637205 433856236 470966771 375416963 461154667 309625433 262029023 397546499 300432459 962372471 787322835 935631034 621146337 656129143 919414864 108860289 624896174 88179253 639726924 873781262 458275315 505833646 16048908 345684883 275120636 60106826 280404404 703066525 412541399 366560864 780050374 691776148 415811208 683942076 255156957 120473667 814138353 657676757 730313259 371912700 737591848 963406822 781872770 617792720 423554009 657007768 928668193 270232178 489518493 919120380 373832569 133343229 152060716 321751215 651976998 157545749 727993604 700530986 355342741 463277410 151416319 516469500 254421940 964316380 833051472 399463570 700743422 197467335 145925397 245592731 610845392 353336734 602809479 549329178 896526888 915628430 287726348 83338243 75961732 364860391 393322621 873210329 282406350 279011047 642367702 288210160 140366988 267506153 526362067 298196780 964906633 314116931 521515480 523011639 213708874 184231455 15504840 42065447 438498233 381395813 247344357 99105706 98481597 793950636 346770066 100488186 899048659 736938501 312092397 575767503 475689548 711965825 872537453 58863677 515670289 642609125 580645269 901269831 155280253 615663514 519010055 408831360 904855897 613022001 73019230 48399778 616757978 88193968 91114680 61899326 467586324 770603395 178781750 489025943 405786088 215262222 376280002 126359320 223454337 688317447 563471374 931707880 943854592 329937741 949287754 477696458 228099929 663588231 250110103 816395415 396309637 734044163 726032416 130926961 178497647 530857546 910921394 212158133 228097162 289003359 696664491 758723154 174577959 866290777 541240139 306085609 585335883 654438491 18548799 396778520 198955262 909968150 95241776 281327477 164509952 603462854 453642357 827865249 273589876 404986940 842511035 55901257 472766321 113324769 528947761 894996074 478082092 262207068 355315307 733048817 370146390 326233008 205597262 490209747 413649795 619808948 894212772 555222461 254508513 12487297 851393529 16892963 145072037 606968696 292773891 507700363 225182359 233503994 590326523 447070787 768634676 621227052 424411295 567176232 251446953 651420519 521762382 783035615 954851281 278814344 497706065 205324432 100844815 282942602 225610230 820710452 875983306 921791302 978110236 591101137 58375857 433629283 367709233 962226057 756450516 602056497 107210103 985420872 208751936 859208362 20756038 868989180 171627291 140381160 855015726 554963309 194347402 965501033 830699808 62195882 270524538 326319732 501070419 888570891 252706550 989246254 850320090 124956686 980731542 917349333 650861845 513183597 350561914 457455341 996542059 138216718 622096386 322635841 9100037 695969099 710418345 159991395 818069121 128498042 148249395 910072802 99400400 332299705 692739555 244442157 648945990 218390775 832095291 557136407 943485423 571674773 932836443 983292309 690929386 652526852 300677028 951244472 731104254 857964199 16208023 907184574 105038624 5632629 526047780 912083006 930344068 433202964 153298862 548417310 293319880 921968260 602514399 776696070 773224225 564098563 211705817 551366243 783967621 653018658 738546600 39612444 712496201 593925110 680978891 731512009 881764792 885327888 352389950 225065534 73336920 965056645 768405299 708767677 419790122 428389622 938505456 286026784 93910447 286965910 311208286 802071900 754438552 616267523 247010585 907134813 924906879 484884918 670189672 515961857 841293134 969007171 992105221 634664833 78187428 439109329 713780142 839400203 44461838 377587734 75378493 515247076 209342123 125856354 455788798 523510514 122224456 768237051 352354749 568201309 169859665 914315102 522747031 602643540 119788047 430814337 564576634 766653548 477755335 492518810 206282888 35349030 717420539 695145446 997211902 232323619 839409882 33615054 674145144 321106189 855789387 550207748 752626203 109083380 721989033 766781750 246525931 729888380 218848598 918369298 624846388 165122794 649814190 234098079 940188884 514329895 710663556 271257252 374228071 107050908 492609690 735947410 732023895 446232074 582966631 396592623 124115011 784512087 643372745 77788424 428325270 614459269 127067495 446519908 54665798 861686348 572253909 931156623 445512578 792189630 878815936 153605782 852800560 701992502 861992934 282536950 211193504 126224768 563586938 917330076 157450121 8643911 255291526 973654256 89017686 894974907 80999464 329179325 664047531 217944485 532657847 224253957 224189591 570452692 651834724 524738085 681880598 611439685 79672445 503247445 559792435 411699194 144262652 156906341 573120480 902955964 593531313 836677046 378746835 51861657 115045867 782149247 188937762 418246016 888019956 408146536 991363564 934874725 777187138 976694068 90724393 889016405 379409944 67993855 726683121 715283876 438622993 485068652 264992810 39670002 190669302 21819274 606429808 547130253 801506623 150612169 152649903 738695014 379058260 289259468 978235999 411429760 62884627 225874941 440422461 570363239 900873155 258417179 632690392 116120653 334366870 861796960 134013278 37484558 767493468 772588109 417164104 991368535 492908847 315675655 437201137 348171107 543274876 905561088 406518915 729556863 880546154 307295497 934008633 336283967 935428917 328936347 561842385 157131668 185153325 601298705 749485858 182525222 316032372 101578254 864286407 707495918 665634492 563047651 692420745 812536960 816637642 551083127 26595710 449116214 166787637 211964011 998699007 945253375 490731933 703388098 887532721 653367678 985709702 364264726 842478518 634140814 969444386 173308914 258856494 512051383 809120774 818601226 655618287 236729455 816878231 211521161 472935823 407747521 720912402 649506197 916780355 823792841 2834220 423754536 73309008 522587552 265559852 181844900 498040687 534009678 508964252 658951335 988286196 427486400 45994520 654852833 861914510 935679872 210289106 803430449 417487068 711287100 335185822 946131400 245043428 741743646 495247248 770490742 761066745 69477516 421637473 936792285 233565164 372650014 265736454 829964872 479461796 23023334 293039280 155277600 270836965 561997873 270333402 210859396 261028146 801947447 943523999 576259688 71556301 196132363 381675215 561487918 227260112 8019134 980372072 9662065 467499691 98711962 83977404 490629648 512611534 620874218 947654096 583108615 466053962 235421020 344989894 977935239 49619785 751723783 969341293 827360697 826437944 397024073 519515100 730113274 963649259 446114083 918759058 141594879 748599683 294909168 461525954 598059822 650809891 862489538 755617410 20991182 534675724 913109398 21318855 1848331 329414349 982153718 96086696 890144682 897429291 445714031 120963312 410505130 340132203 894513459 196921001 464615288 742289013 877366917 308233297 935636786 635762481 419677374 715260184 80355215 566780289 682439256 641481189 675421999 831939773 677450907 361475404 676434607 718377060 106355791 944947202 438416734 758422950 692742183 606755520 392482665 425185749 320920688 551584237 567909758 862766224 215472581 293656682 427228679 471240051 872455859 811790111 801903080 892257197 1191225 827993427 212867355 647015917 74470934 37648306 303240204 370110376 594956423 973601002 220295423 346533911 938554607 950699541 323941651 216125433 552786171 759658413 619688633 382651132 527151159 791955990 94878788 415152926 129365827 616870597 869535681 491239316 546465161 965566504 4745887 993626202 864133628 595814957 775320167 867307365 286295961 836124349 281236215 823415966 448385962 229615110 173564838 861251063 38623261 612795019 730955540 542558731 712351551 668211613 182290759 684380957 490963679 547311260 149835852 704660659 554536363 967315440 955138641 202754710 637518216 661638780 22007980 335746172 807478056 449913609 410572074 369977219 881815448 405516908 351858428 146597270 764572884 383209010 775517088 759562489 465928907 337758785 531855858 545211926 915923960 862339037 719600282 811201546 49759446 765353205 844565858 978434704 990879861 94227698 906389285 827105564 470870278 645166215 682753816 229902999 225411168 572246135 672141238 518487541 962388448 899655240 785987326 326373542 3682927 450733101 99833661 265202341 217262613 66663284 760414228 55956533 22496578 322263747 24907401 69923302 106567050 383572256 959895498 964545572 258386284 497981250 569315821 761539186 583595259 32326343 871012050 982296042 327760549 255798246 811223854 73548001 931311156 320624124 224998569 504689295 590253538 573216400 569763189 710346393 279342982 397442976 184866536 520238371 597721309 245323925 610225186 598330279 422027555 948049410 538274162 137783192 101851585 884052035 257309720 774907586 499032042 513259236 197354152 972873627 538526244 370121060 27292908 399699658 829744290 536433727 804329051 364837343 638439081 133868342 885087254 255641938 58048869 720051928 921272403 454034823 475062606 866692203 634373871 204577496 816675292 853140236 587866248 30825012 207796092 952009258 965246446 56855482 968334366 945161512 440255823 991996224 422317561 854678157 915192411 34042743 304466206 154723694 565898941 656319226 352981998 321584490 135951127 677756714 346389486 225829016 461696198 860425103 382453819 404206552 104746496 810974696 230405478 95956643 3112706 897197188 430574551 382905628 929609781 209581147 369672190 725709261 982551770 727328725 649770364 978460358 528375161 729628541 735385115 915319471 336490636 740177732 151134603 588609974 365621453 214457734 668463391 835094143 668156456 261118660 343017654 189934731 131590498 490285577 51607710 744034178 975213193 903505258 378859730 737774199 952323288 675051127 586474205 236263840 355223796 674831498 785043601 211463692 733364486 982782310 625239566 710981980 145510629 743199884 440654426 567309045 726945876 685049254 415270393 361326478 393840309 478609289 770029023 114193028 859796996 650731982 650379128 991449927 593233706 212886332 80241561 504749565 688470266 702362198 467545059 769907407 312859710 825635693 749639125 120153348 308138956 430518929 170428784 824180214 106340505 128628396 804244619 750653407 723657567 950333990 440664846 81488827 91569989 898708677 180506220 977731819 116661024 228000908 536429967 23478814 283412349 828981503 172467095 705612174 219327743 39175503 774847001 373274861 967422959 479959710 251935021 189682905 826320515 26435439 639045009 430209956 861010997 987316087 797646756 631209266 427393056 123325229 824016885 170541064 525024744 69667820 93828483 879976435 240313558 646467484 154818418 440580519 42682458 32055924 724545622 136053144 577205791 315270528 446007522 609989499 377482377 817141258 841012680 80907688 888219434 653325619 223598015 654209778 831688867 200314769 380245317 141108777 364121870 66214482 558531516 737764003 503254428 854178459 819095144 443350525 591175975 525188443 11683272 383661823 824821813 732894967 627864449 596954345 823723429 964118484 80698548 351684005 107088721 162072051 32672941 483472482 74073863 421043483 50416536 870670280 785065711 925662973 442129869 527632791 24274157 615076349 389739270 273660006 977552654 877674375 205480842 658726763 911332566 266476666 538921181 364474653 98951328 117361818 221682526 142804481 676481611 390687291 467284107 823938478 498497704 246001304 825188000 944979494 908944347 48320757 660524618 632841210 619665401 168182032 977158215 982679075 169803676 216268165 5031967 861417755 582123250 644388553 878876481 117314977 9248175 382925196 733723945 137064262 682567306 489786173 767726262 318444475 791533752 455014271 587421345 236349743 51238906 525557186 920809720 638312638 353790248 879268031 98341167 612547288 489695779 608080123 62635833 473037952 387885700 257961946 443348854 392846693 15824717 690849140 393625276 603597290 829478859 653561808 766997199 501692686 429171994 369612882 337269563 952729835 620507495 414746597 346124763 717557622 730863434 982667929 751012277 118542142 25160906 386574829 534397410 389155269 938952875 243027129 463302289 14210212 831635037 653646639 143217541 231945009 241960361 122754701 276496111 696191808 631622094 386716463 14984949 650160467 346427637 964376217 744745778 140286990 769200402 462235574 368613437 406038943 563570078 864638213 483056230 577179783 26338446 106025769 707625374 343958772 724023731 165547726 722346381 561678631 62340758 379326640 310352326 946027973 413119208 964134689 481562036 9421713 97722805 35876607 679649022 880324986 513531375 443929345 743827605 343338862 985460920 37629862 611172814 30015227 912444301 259888646 441953555 432333205 739118971 250498160 130963901 563853542 755029996 215115794 534520522 41484207 845910007 86400709 382897977 549089967 814300983 467372164 729127031 553525022 391777715 616140893 259488866 302657531 660308248 129101877 494845795 688585361 322216029 674003060 35113817 793117547 390283881 200970038 953820505 879662040 487776886 270649531 159213395 69621046 249374107 164462236 641278613 322171924 482828550 919275160 343445557 307550009 838393219 576850288 839094531 235947157 493214530 213520442 758407677 474075779 240641977 734426025 265592432 859708198 349413271 8001563 873010592 659664108 23603448 501797780 534207816 606973969 928499028 580702580 126064060 373197129 893162644 137939339 591781295 324516487 349588878 360966165 349674155 210681845 15946866 610149169 387513146 674788146 984315160 994050941 715885300 368577274 587310332 582109321 705702130 735733940 642721744 555619674 427279029 37379646 927322371 672573718 45038684 840060223 110022713 478751560 588164853 930874120 432770032 521878724 443348548 170344749 228720148 31959303 607901759 6061420 866674687 439936310 697594449 480448335 3386620 51299009 377376913 367856330 566901039 899813398 958231766 893820994 169693212 806701722 352143420 742413867 833939891 822133820 968744865 746268932 522583800 650195292 342970596 838755061 540156096 899742646 305716438 866077816 944055523 669421910 863745130 789751579 32060012 438885365 235947009 111349871 967712396 380737814 557891409 324260745 986343300 985341845 311428957 418271769 27541398 275971451 660887272 210106165 760964283 270165489 521765042 807226146 760564681 769108975 438901925 494521138 79236741 928808274 561782472 651968715 873728355 860131847 908018776 802106247 424638531 197999540 318735969 449603727 623276857 705604453 552090998 254719487 541500452 575167610 194802946 700804633 182841395 106767231 738459609 524891008 992935248 218117929 348707666 15528436 151230927 837200126 552384514 677055047 780799042 797531696 851960215 545883566 146301635 68059587 651498136 906583658 425133051 884029834 98207682 67782154 170665187 54933216 132818928 266983345 188167951 622829956 688161121 119152533 590631258 666582014 438475082 105185709 957198935 194574089 47337857 738513894 292971425 817796267 911647315 531154334 3193916 849875074 651057326 906313965 341335761 567205419 811209433 847974749 530083128 256129675 965692132 395174954 470841067 444668710 752397283 547858015 790508640 584175320 71220255 487160244 196761974 523414179 437860956 606754132 787753420 947925584 343894466 491915870 288926467 166704745 862885220 152433460 112906041 385530922 226302062 828894415 203469274 282915846 870929125 121814844 97117724 354873356 121694050 192777994 115032284 473151673 824577697 897112322 253102436 47635212 192388386 442227864 457753666 322460774 228773082 19770911 502516762 151515662 371737298 682729784 348255069 786943221 484705704 295993043 66441003 182354456 204633451 513621544 837220875 634538879 980360624 873683840 205310181 986945318 279527306 384743075 355231348 839758990 230011901 705359094 452639775 489046615 198315599 514086114 81487818 235061352 691315055 82858049 354866829 268402376 661530256 410266608 699135007 899967266 866684701 88035504 715701579 101331920 470956597 896923251 467158232 271922775 263801805 238118751 689930828 377152877 557183475 194404581 774902254 240890184 995686765 4590543 36367054 55858444 571857981 77857832 890801170 678119788 934814090 624502908 996011197 778422035 910754632 132705257 461100737 374982632 441334640 392722049 582520469 690481821 942167589 431160873 687950565 740057793 713632991 777927994 154016077 988900983 881138456 508116471 807523174 571187692 687656692 893276723 275881531 952020160 844321453 99082630 576549723 341217882 477794757 218791151 587143621 973680405 559666431 964673729 523278967 640206177 670423579 87223939 979940173 385201174 65711278 999113393 882240160 278367161 305092949 661789456 612267905 752589523 214311972 120183535 563155486 52713836 839417697 72944478 109179787 278478344 455272979 738785194 166729785 418510994 689964836 290533721 130313730 926349241 252205959 288785405 629828753 260656332 150425951 804753869 601539205 655824600 15220747 630071487 662878269 612964435 211317604 286253818 652967732 476303885 333527743 388684429 371171045 484696152 84679346 22620922 551464773 375867298 809256830 367940716 799673813 498559091 765448767 128005073 320809118 816253271 165775574 589137084 342272082 893696812 728831671 501809791 22952965 577533032 460117061 881318566 827471131 134388370 150146914 786604310 378277116 827849700 44880886 81397368 82858084 112523295 4687026 615947387 720141313 631160437 464215255 801544713 779858040 534788769 963853608 893163093 247234450 874462891 940528615 516661957 799363987 611627619 370849751 953278768 345442085 333765302 304722639 961422075 935132396 670783193 744967726 26128410 443376850 792643282 900588750 580560915 353297291 223611154 424629700 263021220 131707723 5413296 531065290 937067086 112659750 466819938 564211934 200703923 536936512 262145512 756014953 563824824 451336533 202939239 979295726 397377027 951735841 433387984 389882748 365848998 103754015 524722024 688679478 368077225 311508909 397180354 967916906 274571920 967678962 265692116 462691422 168414770 206719835 713856038 981042736 916701131 939401066 590665074 163556243 889627008 246319210 456897153 928061881 488157023 72814704 106090902 512353363 827508803 765414944 444414784 170094672 885001356 188203255 126419135 981692047 389236406 387367326 540724753 368636390 698334688 227295981 654882562 676962807 203933477 980115784 996542756 695878943 42267025 525307576 959724395 732093537 393220152 398295823 185112509 876273493 3368373 426254143 312718349 427354773 181997955 880506480 749238158 205903280 809064912 436563247 237071580 622750741 290244243 726292907 277762017 295147887 432277559 804665472 947695899 708177497 812640992 318670814 653613718 757875534 853704353 908090815 987157085 326681989 198925260 985792963 690351422 858671449 577805720 43730544 763525238 230244686 688325209 919949616 36867022 925939182 874149587 889138094 3952703 250270054 323138989 52024370 580958238 13484180 409679152 892492227 964856798 843582991 269384999 771285389 384900471 358041117 889265518 973230075 669079268 19879856 215036989 572484365 473330808 133373527 295057283 505232427 121499785 656662711 932124945 714321996 735566851 667687797 235850215 138856177 112687326 292245306 729039053 416522748 796319917 249988299 455824094 24377966 78668906 929887349 820899570 9289229 488222783 976730934 261115861 678334915 2853834 839230180 264440571 221193150 352880086 236907762 38106768 763195143 516668003 504232517 397965788 255150055 215227727 67459517 29858236 606516778 178665685 255013705 509994369 631134217 825633293 880794627 394096540 501848076 17715859 463776737 946633622 883412588 97441161 188201101 251089006 996784521 971391758 978407968 389480714 180739817 323953096 194391483 743470919 399669874 432096134 396451813 490608790 36654954 818472673 711894697 455393992 761810941 110446304 775282071 239628599 573223846 637058273 421530450 651970614 958178319 431178703 141247356 7628690 541339469 914258468 90387446 870474803 129839172 343976042 671153232 566347760 967492597 27812998 832164012 499904075 127081446 647571913 748401441 478979156 825314227 335637867 212567442 621386965 433950882 643532775 662273572 787276399 640405644 904499946 460144894 178024017 948510254 812761073 751745989 113669033 539411863 773557659 653121815 599896944 319482594 730834023 3485657 278480340 736764320 522668146 49216020 428432923 805635773 454300721 704229820 799787916 763841536 184887634 426298580 901484642 462378215 710151984 178255803 379038598 793064998 853047004 495392504 462688624 414365026 405351165 883629260 656406788 354910632 670196921 567393709 744847802 982673541 648218155 302668671 390176594 96817476 681135404 670612494 684992769 700869245 775182633 270147792 892717668 350124411 39920178 778373508 321934894 391168954 211964381 62382765 446882238 766588481 34296723 714231281 126568763 627823151 288586084 50497540 80733110 199055381 326388652 282997930 982117924 166797303 890657792 783508092 548789510 493222485 549712365 919499450 340779829 310677876 971870912 386223631 541047917 578890636 970723756 357553656 656258911 43984881 182494916 896828177 42661131 188365009 128973587 277277240 877174001 750866583 573320153 352527360 273921229 809295565 594648457 588488730 563993012 528163431 678499787 668685044 335731937 323305524 865352904 817269903 396529832 327254702 256269090 568183088 20377057 726959876 144760289 399621321 447260565 757972352 596554196 854137982 404560930 100240811 199806271 330030058 639220967 532388913 617905430 124813823 771746163 49466448 134680007 846988592 272194516 810738348 291187147 347149947 350529803 328666743 846441571 872705880 690314596 811235984 242687775 941464911 627996084 938978389 881120984 194398875 508106495 114584433 112591308 483998004 306334867 295543264 7872913 403737 112236514 564083744 734762180 894314030 561273238 45118101 767646833 796289577 710597845 309765944 104356248 354690169 667936866 682898235 609882837 133378145 747338113 49139500 490298989 663713896 35163377 853199076 622007783 649711717 489951571 668624491 689645896 56128096 490826380 447197974 7497787 986263047 607576377 785513859 266712937 934184160 83126176 343089769 960681978 398737709 569316794 812449920 91959329 656281245 39266916 1269862 630514177 530099303 577633583 734783488 922548265 34835998 184059124 671494799 213847744 84946819 755095218 792561193 486938149 925824820 364358639 487285316 800992078 468648957 437600398 117427390 143896989 701754083 93512796 353847056 768691603 911991073 224356761 371047081 416290514 377059432 296032854 446844966 378667545 995617286 345518865 86739231 814367064 294640221 936808573 896020011 398600186 920558479 418366575 323692146 506654194 256760160 16052548 176695816 704553204 925066311 282532247 384862437 503969495 62556224 688417816 173860217 591299704 966634363 664458725 623590699 802943341 341449497 996216017 903055931 780055200 263615088 354244604 803031082 425339678 733033859 883019432 49480218 815551279 472351281 257035991 789620041 947249303 196310880 585783963 21877365 588827786 998907467 909827282 371550839 162403251 220782621 10152235 129068790 264223227 338003132 969860673 260223906 132508577 849395645 228574073 402984352 753335312 882236225 559675151 65217769 999658772 962083289 52135799 756222997 763071450 854825601 58271259 698932872 308958746 316333678 459507409 583764122 794713034 392874616 493033159 204872626 753661476 109852976 832724424 360679829 234407065 555419198 826569850 188927658 15565472 296468565 420928472 480660243 762505721 579371430 522966985 999240539 792854499 189044539 916955740 3265710 318252011 405578538 369139991 786684855 345653459 9339828 860719488 877565177 571954288 891016822 155829718 211455746 76121941 443650893 598054136 164252771 185452348 908110172 46905270 341363860 493048660 645482952 333363009 393047467 718332276 52606119 665685031 624816908 806086199 799857978 212771129 312430838 926681806 650693056 723340364 969292416 256430657 381126415 258354194 492867594 815955187 165257476 445203405 427265217 116389409 243641698 604961707 164091110 925752212 157387408 376852167 55344138 434341368 98932260 898192157 908741117 254807707 550299420 430464180 999830181 861851002 864699691 709982669 412400092 518863720 141205275 422214043 485698737 295961749 568223587 31291984 284969193 316279048 118546171 218266804 727712426 450697022 699238671 602115062 198622224 916131049 15817938 95467364 838921385 639387261 262476700 546684865 765645676 455631017 894458462 804054332 863589195 864549387 954441114 127567689 894856566 622362094 438567203 590652490 378730616 241933729 471846585 425554838 69859786 840267832 493768302 764356804 849632791 169252494 84250044 6204700 68820478 810577103 731453179 20725239 565272930 968679305 440034288 621001990 969700468 194929125 472534435 415976677 414712130 300736608 357072153 961761758 747310295 51373605 228460691 946648605 435505479 205534845 892491916 389940276 599372433 722960910 386977107 455096183 950908736 778158936 942258956 22508690 643911985 383783101 878867067 193848267 546134546 13620653 464196022 992574102 866444452 955796711 623761608 655212383 971793314 438224741 867348086 531933243 172480637 661942449 176584428 340105122 502734064 89417281 175949351 448101216 325093867 664490935 769835173 517244644 151908076 866012681 146537578 558375430 715839513 828890875 391476805 687495366 955052945 602919811 152564684 437173661 93939354 935999448 830835875 167733479 972178587 302035163 554664716 909412203 144551502 424972425 575311008 288395799 158268860 543601952 972393350 764603504 607462228 373038328 658667284 116907964 549328140 758371497 966479991 728562569 672900070 69488389 755714679 219026801 873991551 797613158 638641781 270689317 894688612 966005486 553599107 432032008 234733094 88790703 366816824 227032620 107113254 874010635 253983060 492791817 755739317 786469683 286509539 743958879 823588390 691568740 680838621 895287620 491149420 557348995 234006733 353837355 722916662 984382076 400120246 718239528 808778999 369738360 885872137 124981040 430013876 332523982 330393685 202181731 812679970 759076285 330937468 312594297 282082363 970478541 572459410 649822057 152583390 161524662 285127342 483218658 501427517 794889512 787981201 411449192 100387405 601755437 628709676 957470768 269771633 90267213 23230551 948465061 127227737 941495928 609499516 148066858 363845433 156845238 837240616 296907423 346242058 946827755 175131376 332576958 573309723 865060714 232651559 663483409 144948187 102286754 616752761 556331713 787540460 324472679 43303460 560705890 217911261 859528217 438039908 754729514 890235972 97530249 649158740 185852198 886899397 712170056 155728366 91008629 912294330 248620316 115121372 23009293 419735071 173219595 940848352 614462814 808611880 513256326 405468812 620794658 990173878 78811962 34953229 204810870 654282206 7104859 607149064 329170147 10140434 421880211 806605998 302791494 397987469 731633693 634845170 453055133 361448421 136180188 80523185 221766419 872433595 343835116 108966067 303011510 497984222 910509391 760472314 250859450 79053953 982328062 145641671 512463155 871040385 267878208 582876734 602739849 656069740 112646018 18692686 8299116 885901446 748709670 813756954 736831392 601108326 665486983 801571157 175790209 204586801 697623950 248389894 81683666 281313795 253719935 908801243 750426718 531927909 852084729 548219732 891416731 399057933 806132593 127088952 825542312 724137306 644263341 883063656 459123694 109171538 304851979 893185035 299697174 173206010 796584106 519363817 478078997 467023296 343501008 392956072 829299809 664827774 173367448 449256167 883198661 221607538 154936645 282846373 190251772 745401970 935821721 903066055 127997852 544778355 628822469 650925849 751260779 116498956 688147430 776621817 18968820 314028567 639798815 316904058 176424591 771396162 224125895 741741853 585630691 851369346 192300007 985163275 508961087 593643799 512211027 889397610 286924920 296982691 214975895 417485089 499612095 408106587 139030028 565813549 40311647 300612857 546227244 76061570 988511549 684645041 244626782 595049770 969602338 973660318 700508004 96321234 339366433 662123266 688327823 469835801 156909249 209028911 769162632 935433225 281509886 346478244 230337736 209741028 435971611 187025041 314696427 700576870 904260070 261682828 943800638 318039202 509298854 26194856 54944300 540092337 471632854 450517859 205176398 94808580 686584644 882235359 69503519 556850049 212708542 386899568 981838447 157265218 636459374 760542956 595252962 91426691 708119920 280524143 392101171 81771231 568437598 240001869 208694744 928956022 241582335 50357858 81417702 4358883 94502809 924802192 646380452 291516251 598522463 235902981 894640239 37840593 829672969 194729433 64537148 777585716 328913087 289922921 447390332 432971351 121457276 274423220 661886304 358475415 294687696 487522459 396701598 837170513 13884403 252027604 442209476 449223040 393507827 814147556 455110908 415546268 589640064 995776754 36816180 486005357 746018844 51298125 563284799 279626585 514234643 376441056 106094027 870676704 479620636 946732317 982824103 952655188 404292030 778031874 543105481 529815099 359395725 423719233 372305407 318007470 40941214 179726645 443855690 578288622 728127192 343857872 982680555 193060739 291723639 126524675 478133329 309041147 941054661 323267118 488477435 287448613 742454065 631856208 460522951 38555791 239550222 161690315 306708587 850578639 518945506 500902138 829144847 883889374 655438930 901221575 285195638 956379013 342688279 22695457 259909786 970377536 87157949 452677286 808385949 599144552 974419044 625149024 431580630 529158346 935123799 317507236 993364563 449460163 449426463 301639048 89805128 205949552 752532391 499710249 246215488 821867087 803732731 553074122 922781598 470006436 981790704 202452394 412198935 105706096 240248463 488266244 587135820 633664884 132845400 156702598 630068450 842655020 651025496 490863815 1321991 904473283 415229580 201118388 358480381 903201666 151185170 810240841 527448636 253902224 755395844 319908844 842259728 760343122 387872183 692543525 506896537 838639089 169170309 660521118 526509037 951638635 115967505 897908025 419732169 57722796 50017568 982770530 930220622 300926775 221740411 191666848 4400771 292748214 74187315 471595746 234837510 890489826 267545825 682284461 757578546 443556276 678082319 566816937 550309892 449713136 245239638 310503878 396576893 786661453 510560777 624986395 36627487 911661260 813605841 553790754 295277096 153639244 473775351 817885077 567906485 437555784 236856366 589860167 619870045 189894970 680944429 566599326 293186566 220874248 303666693 600347302 30420278 141872277 676977089 544108997 464279444 630038451 858923582 264060975 301748888 178009788 584986649 857762739 611192051 179262527 834004572 191501441 878985589 643568377 457547632 64457271 449625851 533683236 986185996 992632184 401850585 436502751 627290951 837047127 11323300 947074825 883313613 485403653 591097371 410246688 293864221 128648873 544563319 982315744 271608794 708584900 646898489 83892101 610608726 762754373 33507733 277189066 104728823 196996025 444969970 466427387 485994441 71816526 567270345 205083619 169923216 331043705 536980058 229010494 235244854 854119424 757610312 587375205 554605881 971006181 46369830 33343837 673462411 380384977 940174375 733492938 169348430 568263869 112466542 345995897 758851972 498324649 798598761 730228270 442393853 93092673 686183626 375256764 418571527 974102193 854396374 993399792 781710353 832244297 574999592 210264505 989124261 632341814 318553928 967419764 625723428 182301016 861642859 687609199 691664168 506025948 447238972 218909260 737535506 669962776 40281777 739267650 613344651 948975881 233635288 91542859 434459411 4825839 610521456 426435816 347726053 994553367 109483927 127334942 176560212 803744870 100115446 425891438 996397976 228399391 307333621 786827687 86097229 998557365 626961413 957368741 911428604 581263182 461869255 950970332 87191633 809181068 431953158 628861517 40390924 815185128 514695512 916581864 821848696 492182463 325172810 913175138 212634523 8560807 713053034 827303530 313063683 252528151 164325299 666869803 882531629 96607482 97304074 123425688 599559812 402236191 878967388 931641388 430720040 146525592 955927810 611316693 100190044 378645151 232954771 798647339 882154211 975051718 511291094 487424278 203029271 115172436 986830098 8944768 620717910 565841829 494715965 29746400 508828526 372549904 912313630 81958266 901907586 698739691 30864300 480695055 781281281 609637252 917249840 4093035 87952731 312505710 568406768 65216355 911249021 99489397 130939708 455889196 998968796 468836989 731186349 159393437 648943711 963440897 231109268 766654326 708463394 155866075 530370279 988791755 251415729 739021288 969615881 614606311 704648095 631666587 933145521 943623360 752013689 524966773 444622907 919268969 696121642 31708190 145216204 893354904 910729323 105219005 319416813 889422043 85759133 781751283 452954280 629882050 923752998 214319260 501448418 972958826 636937441 717785677 265504625 222938190 929613529 413950404 382936392 80165064 71980721 457029352 423000032 775459415 837173757 567428922 899282758 932922603 80112149 220317003 211489096 122906894 943442057 605876126 508857856 145923269 623551405 255956409 29460973 529057961 949815134 195489750 426233718 583256957 674914128 28057631 395633449 275598535 729848078 479872171 813081956 872833551 449491003 631490877 142530843 128603047 741190236 380821137 706826318 363498244 977668204 512048831 106746278 449539559 468555947 876791894 686668070 772838427 156134240 555413474 134209575 809041466 499639711 635385271 13891327 81777712 180695556 876550654 987623400 386898632 2687006 238951765 879034688 987441259 717399668 505537692 221155893 579827462 610716108 571916329 580497832 294831459 816237892 523947604 422649906 635976868 265603693 214417539 884901853 778675556 738423881 530379206 728699675 399891621 396506164 645744309 53367478 534781173 381972864 636762807 993997470 319198386 225325177 579245547 636338936 547611462 124439233 259867196 57544850 57960836 332205557 491940558 131195241 245873468 379566927 325514966 427501092 405976518 503763648 20922636 538144699 533711892 593598608 155291114 933372675 835229817 17309045 749251764 646733024 685086652 321405032 29411620 901742704 398140482 201272086 793722182 918493030 458837364 946698342 661684884 213662969 772511962 745739845 572119413 315687815 373618361 896842025 603360282 676365700 596310986 761498039 896017795 444465694 716938272 534881588 796974788 558893262 536096339 782890071 751438053 759611612 187099276 171092861 149283686 66258709 40893256 878309173 472368720 224156557 402350666 450439100 643681038 482597888 65111989 633482054 515406460 730714924 123795069 676992791 193582467 259252859 548913865 884736808 708951367 656919340 101749289 813660830 75107904 862923699 603168756 656921221 528877960 365903536 116100438 532281788 598660383 868851245 467479337 434196081 438072760 447762980 974536322 835514181 873795568 355604071 719813121 90348153 585529561 981903912 808752793 743674776 95921757 760057630 212828814 849508299 696823264 394757906 948090127 591572816 611251291 967805912 911594419 416898415 704645721 956197043 926563567 673428201 442060957 536727065 133817085 518611927 283306935 362652109 985631812 902987669 267853114 723966543 364707729 249117327 492388676 56501144 345595221 992892825 435855880 23490386 196901099 125317071 156474032 934737157 135961906 953709523 658994855 179798673 651824586 829053412 954216292 91020537 346519294 907447763 879439483 804790831 197013472 643250162 631852338 874072958 200584519 539700830 396092195 136819371 174455798 116176360 894082967 497270179 265344182 198058960 412115027 43874721 56634166 698127922 873190035 954425996 468102174 448245676 550383356 202535377 355769363 405269129 917430532 941491899 226706505 156638764 690765324 879732875 315822203 823567543 485735158 695076072 122051039 516209626 379215504 658199057 812799803 191680825 410022917 850791153 673851148 153483519 183264957 306088181 593462115 703984307 116713812 935139451 853382740 419296403 794880801 363916037 627483598 186921365 186056728 568416046 962215799 564270294 913443905 16867693 535854105 596030207 633917861 618446825 945215344 442367311 368522485 768734975 733394903 540165481 402376993 308837486 309108628 833957306 506878531 401574321 832051436 472728048 313541477 503325040 10396261 930611957 571257992 555591207 138295526 251967438 789180922 574975460 563294573 68091839 109513783 894960701 607650960 80006587 500152607 483119260 143291141 829191716 521670391 133854197 500029906 963084101 324867701 764917257 145919860 622373795 871252184 175678209 578849143 712215295 262029063 496648207 185947936 954248300 677573077 276186262 200384254 373317606 843221783 614325698 403885593 801596486 300278344 780499892 915181589 638510812 561091378 392069955 484790182 974576581 812547769 14421589 810514334 354662950 357689196 181071602 550249301 909330330 587362345 412114843 942443146 920322753 866912217 326669157 946297703 949643708 264291595 317249683 5235783 767334142 691143621 314877378 77301600 201986691 659262549 717650133 110493902 115922760 337198193 120536880 520346008 156152616 611735827 796713874 113580320 690716001 911371413 148264006 365005461 533257237 396008204 362637831 769801663 957729512 645785341 58535652 936831700 243134463 615999138 298330632 261103088 794021104 535378279 3649407 310877923 620482893 255629175 910125667 439991245 931147265 354135168 991974693 513848227 697181450 348349470 467177801 158968581 483406864 457757033 744516660 953735654 127849495 902726169 552751716 714696538 42480969 610075983 842547955 139842449 244072531 154210783 716146080 69054798 185246267 165532980 742652740 218261518 506946169 364010217 362486193 787653015 414787669 819262950 532942961 542128430 494436758 483452313 40426553 606421479 763285395 843541533 93726368 368449938 784816325 44013860 586328695 330233097 858024345 716723859 59896192 148242018 132357862 322498947 499202096 922183369 39963969 947121126 740695444 193114260 830071819 192998622 998335963 330582535 457186555 71475063 191122853 723901497 152436442 203180481 445000813 440682730 9211002 313198161 209782619 170111961 414015238 820262468 696493374 284781354 90838186 629808984 324279676 583117846 821310677 498744613 930265045 936667934 679965234 130295910 448909163 587506244 443710723 876792819 330645838 663006043 473060384 955929811 229203345 386606572 564340678 578976987 145204805 923730343 842364394 979943693 723265379 948390661 598027999 609916010 77989284 869236106 133193215 336626023 671982542 536600136 677916537 2647984 575374663 111549797 257971993 985966220 572618241 510862327 540611728 779794047 1970895 516006253 860042485 411914779 238016063 74517730 381780795 879937639 144694781 169372850 243707058 225657228 603127359 644644694 862815140 99230858 236904515 983186533 470422164 694337696 630086962 90141902 65506731 638244109 111007472 231942345 431762283 621577445 287245629 975363390 196702185 958295676 363339947 667705490 199489100 728003305 701486405 662557033 693633848 255116181 583658142 757373985 310736276 198953687 907578205 583507175 872955176 953360843 271685764 979951254 96730552 96683525 766791307 962979055 968302788 780534661 81058995 923496199 68338212 864442568 94046836 27475629 535518678 467632106 64885533 708736199 829648622 494165680 511511228 189358824 328962250 72433378 476786190 759761733 926746182 257068647 310953110 183211944 352348477 863917339 263540384 183424979 891889303 749715297 684029530 217032417 201684819 117675746 10396306 868087889 876062109 318971647 358929116 811297127 832640382 155483108 105148288 414077546 339440018 841127661 297426024 809269894 844214662 32281342 339766768 824040739 157478017 57854660 774610248 757980290 576414280 522488419 284461927 913905483 383361157 6696337 238936837 731067090 46509763 771971467 254441561 172668295 135839780 621436921 609035535 74045339 555171362 349022483 905422543 482778547 191181141 895387457 110579634 596058696 905320906 962610339 713880363 951738221 515743424 557187041 732766929 830607349 840694380 790411057 843341262 655372734 912370334 195181738 927457581 810621636 695933580 401317454 668096574 56184667 125671737 748819366 849161830 427530497 907076535 506100164 651812249 793430938 954695519 723367909 478652842 904458539 790864883 695186675 739649263 55874096 495429807 116658932 487743672 358752907 289597991 333107393 769128508 493685823 711319327 503157137 913945342 146840210 316770266 23357134 913928276 994085359 989450760 881169617 348677046 176145257 197439972 524952102 760866615 737878885 277396751 910329181 408672794 13486448 253055434 612452956 129171366 939342074 40909105 913117399 731411778 527189429 682672510 627836278 215842167 54609216 738415372 145305887 963424267 782089874 336886751 834189677 968633335 882181134 990023435 581877917 992206924 688273241 188159837 781637108 118982723 404518727 269102441 477730246 823416801 978914848 356418822 996707283 54780438 516921862 262956282 123471938 623963796 717856203 904227885 18337536 661007097 127990063 536400507 328027482 81262801 791803642 438934084 203215872 859379811 915708297 782021512 149198423 484478791 295275433 767723410 345354564 483155817 330789106 428793943 259123275 83886531 838445247 961435251 779177804 660760300 681501991 243169487 789373747 152190284 762042243 403520803 603043782 413476041 248905975 712988566 313158255 90258317 448920409 685187228 257892108 49666740 320868097 136592375 635908185 780379313 713892828 29914199 653991962 421134374 760988250 243071833 494935657 798606679 723743793 344530144 162323959 661119925 257870013 290563909 732453209 313206134 769996649 186478101 208694416 651671564 727737083 486424419 151706968 476449207 258168273 158496734 99853976 130422999 619807976 40473053 453978768 902021237 284684912 374450250 398256256 95519725 460179440 636151223 932899329 338837899 202540214 7298884 793015435 364958840 566169256 243118038 215762175 760052603 584213997 705203672 42421058 360478530 714499766 301965311 430868483 981908856 314965843 620850381 792196946 828815706 409943683 575120492 476205616 364399786 580753861 534993692 731355669 61472538 454738923 328726714 45788105 393510297 977469474 200674940 643741078 577388010 120307272 987977250 916992820 235771561 749191816 231230025 556920333 372230050 739737123 674403969 540958976 478274854 737643505 539793282 293068974 15443160 799094464 343638804 554834411 153843582 198241439 841035977 335093604 101648368 776035324 954748509 516252904 250791267 248127759 619319580 493398368 570043967 48975602 277543373 806704499 136538207 138256992 758017099 772987155 909923900 904029309 323280717 418599460 538406699 906810403 949779486 947454817 759823722 892542504 764687929 963364422 942855011 226642976 103086480 894113273 459310542 465248349 417423718 67326250 181625480 6736575 416411814 122169069 459163588 646855835 804349722 115693516 684050787 225106166 925945725 263163337 188183086 646984100 774200355 801920031 330300095 759608727 877718384 365488677 395881103 916133703 519078983 140977976 271239981 172829846 944812106 898395035 987040925 208518840 9342462 809801287 965867372 783605633 878106491 821336848 573375853 822068543 64727900 450293158 203972044 906789652 304508718 531234467 369821223 606219110 413821380 836087699 311687242 205812140 484538306 795744719 854009620 164735968 497276272 619385047 57138400 759320301 369836179 74403246 401541750 421322700 294945350 275234609 699381424 580896584 269370316 689807767 134697639 226192133 358562919 425630934 737081711 296897307 330863233 306735766 90827828 933101425 138341802 426075549 20696020 267563402 619025823 574113124 422735220 701435683 228674850 749159140 596215651 585589921 642586171 453843905 63947247 211816563 452704358 102261802 440729512 547650302 622174202 693313935 327056698 147604027 274245365 508039964 267680952 772666366 340507163 206642363 807628093 9673346 224551694 28333555 432998728 366093754 166287368 227518115 999980456 470858366 953225649 814798943 892674169 94955250 647993805 221300132 546002705 271655201 287289692 50450515 625782267 658719235 449054087 128263001 77827852 90497127 311816818 748811111 979536152 836876634 334678104 931063320 966537538 862795704 851182029 391397050 986727549 975577885 243532327 47371568 76714817 205615611 923342794 229327793 109654394 31053496 889924068 423731927 214855411 122420034 710511372 107324050 258166601 242581756 509329387 304121609 698100223 893576765 773624839 640118566 286637896 641026371 462285935 580788245 304080729 813979357 932819265 66997662 510003814 865731880 735173566 522407122 107556523 959312026 880043019 578436606 817435530 832512029 397102104 278114579 705719791 379944226 377578998 628102315 584720173 352750011 719445529 267562957 439134007 960391145 665942916 478511052 119505695 239375226 989690858 420632239 621200212 140686146 973715642 135089857 808509347 831989480 298892970 962044118 567418588 940298693 252408173 14969282 903046194 40355803 873426993 110035463 439922160 246875398 617933382 448782314 490338107 128247845 203413535 977522722 218289369 916166215 546898287 502188485 948594735 50488638 790978553 120509026 32450287 328068356 624886713 639873072 434205508 346194309 945262083 509754689 2547166 159986589 587125700 979670160 866180888 97267037 710736390 826356570 643966506 432498392 598004034 89214321 667241627 958299819 354198983 916910010 918934006 82887390 732577354 508124961 547271026 819485665 871073480 718941009 4406650 44859095 688104772 255684317 6306466 616759448 878912197 693080945 729049810 481223437 900810223 428635646 50280313 685340252 373309002 529700093 100650755 584626842 179921246 128985162 352761281 538937440 708981261 667613616 274540770 704712094 130888165 263677833 995174611 755200104 927458380 656076511 477799423 169022067 995521813 221312505 936604868 91183295 361555767 616095680 849204055 822028794 552860372 147520714 792383547 627894066 265026392 83309308 709264169 774205276 91660032 108615636 514097453 458638176 528341590 990407364 803149471 986674890 234758743 863832332 463119700 708403039 974237250 437871379 207357122 29441800 514954139 873127033 529097075 641264549 426087036 933555006 259515027 209130791 12429311 88813960 172851901 470775116 14996545 803333843 917181349 437098216 655647438 642999945 241576759 225128101 289412052 916935146 8768256 891900431 242509447 62370732 970485606 624556431 573938696 164899128 534583048 329397429 960234073 249904379 93323124 584258579 615204646 553131664 717723730 367027694 340127765 73542415 778934227 611504110 478685207 604572706 883792478 729639975 427007031 557309881 956812471 594779144 852705905 592428864 85805140 898058765 212889005 866193808 413981023 548696102 471386541 155755110 354497282 916870367 604024743 617553901 323251632 651466326 396740900 784921207 185742637 362596959 888243097 429801402 153399246 68920344 555766417 313132129 408105550 536505627 407433867 448816468 858911076 967679296 239571950 455317650 78414397 396704378 771087298 356148968 946417177 271185336 413495120 896933734 42211117 946034485 627543905 815035265 694419091 842863660 552661516 121540373 473815577 657325945 514719922 777180933 728795393 129561179 436960634 219664485 807160860 418324340 228381555 190144765 103759660 917442710 978029859 734169174 461017610 877272964 702890915 829567561 332335293 161642185 60533813 280830714 544079564 42546157 253893712 448456884 785209912 219761556 620134785 542208025 977815229 988679373 371582150 2121921 974091791 55229962 985011234 923107547 261890471 430691036 749987047 540690709 870379030 805854406 611714093 100966853 985098555 720481150 189161234 734746687 675972992 236413642 500165234 140691796 286608393 248169356 744000891 828644842 661654928 981824346 135411948 135629826 103955575 693728751 789682139 602680126 247488603 654110286 484882951 518605811 369567800 358001303 561049568 127408180 331946089 304298566 660868214 659346499 31123053 35975548 87712563 575131822 499454641 174183274 156910657 872260187 64546834 67602245 582407219 448278316 170241520 832450019 83495362 48213573 611393199 685230997 141498076 401582716 49488895 504026470 34220734 510634939 568822816 470155170 818858740 458522174 670700857 934714735 234759792 338259506 647373084 193544372 413099713 302829755 576780386 599949348 606601411 3939848 808885144 808395948 405093244 225983517 958783636 173588001 354025248 88921837 292499018 344864870 259970587 98326223 161126918 900247428 327729772 294510138 150927251 565982290 155441701 211541200 536267023 842110876 693674813 337365744 652239484 41805800 187775479 288224059 620163137 246268031 434675264 230809736 658407896 446817961 237945307 417712579 225656315 7971376 172353996 803699373 47371356 150843885 589856689 802024178 763860415 125412494 831939368 265842000 45635395 352514795 813896394 354414266 217141158 766244790 281327739 282567836 163117566 680032510 40580862 345227184 504887437 135913834 113637471 855297068 310200939 151743466 66570926 675751019 391643391 975822639 519143082 357606681 777740928 483853722 807411912 826886360 839878834 293176383 309314580 105339246 341699408 148314066 764141132 127039737 154680202 473272013 542317546 683410846 312324824 169816603 550732636 133759916 640674543 978233129 889589412 439658711 950000200 952177829 188553477 901014549 884057812 490764518 968142997 464051965 748763320 732885513 249907630 364820482 1659152 121123837 88333625 441273271 159748156 93913746 523546709 450313616 748745197 407938974 527131834 469213243 266959511 858089424 355452514 911347427 539149580 243845609 167800429 58228169 526889172 38093876 386976945 87997503 188802844 951850956 187044644 47515030 768714421 140867740 1927413 291050624 111452436 809790839 156150874 230632655 384151749 522328741 667581273 345891804 844036649 494386689 203177794 675866682 340200230 388322425 176999076 172767801 399069247 564252240 767620618 999847350 93079892 213698171 403557590 79514809 65394840 128543473 568301969 857817786 862461027 387874748 374862754 954782122 422284905 491661625 268512906 376148945 661921 16671964 723471043 670185687 45078257 979313052 950936420 734796463 799459201 75903256 772845488 887339721 354642027 927375146 223536647 489145519 177507824 203551821 380670951 349024565 991628870 293034798 602712026 480828407 32991892 166424094 925161200 478785120 970320014 642988917 484732464 960738726 350925141 570356146 294523177 906712403 471515769 567017759 700239258 375569998 586762384 170621599 87097367 946231043 508199272 915041591 260083406 824427502 457672055 99069673 644592459 74499006 893868336 424639616 23078548 8689566 958122553 40309771 508336435 806623372 204877220 931395112 502619139 516098823 854148672 42800014 127999658 497066660 535691412 963838725 928630555 917432873 41090607 789474550 575099664 283578515 719232493 296724927 141905646 523728008 365882711 324360892 95307894 844330324 911331916 695473686 190116492 325958376 308679439 524782029 332131951 31310740 37026650 933379047 363988595 631841233 161853481 929471361 984524291 403607043 25620534 138360602 953072210 538814 367751981 799747333 108961264 296829347 511583729 627577378 793408724 177452954 44332496 956922811 527821328 721080321 961692641 181944343 564876733 274803490 787588661 27843562 135367394 687083469 507552957 405644573 546402045 860362437 783763901 203211164 676378481 322103257 588925503 649651262 573910000 466495537 669977334 658278113 592319956 486429021 166277692 458318802 283724532 543160332 330639133 882590529 815550630 883273970 185206657 766546550 903273220 107135762 841954687 274136250 190934055 53077275 921162482 290553364 885548307 798301472 355898006 983203500 422614196 683622775 541456275 85514100 751677886 503075568 378745467 400139273 760672097 707278076 123728605 692878519 885783022 8457181 693543155 415975655 641784233 180991415 531966197 896150387 221835763 848242040 793356493 213109480 584803255 330860965 836244135 829212785 868074571 621177166 356101866 235695556 465010635 860427647 542597908 888872333 875001032 511141992 578112694 524301395 500687261 801861094 734664133 205808593 516451746 56323052 24844953 844984109 61776935 626086604 586568120 30874143 912384185 113043302 298452687 149962244 888639306 58431008 554570753 574557520 294063476 325371768 49774070 844138904 804968186 12682896 892755789 132722317 338817831 135000957 8132144 293619788 127538441 120840355 152110118 77991724 144529976 712806274 380009579 854424199 657788676 236251390 121550949 620418871 742334202 264220274 21543273 863858917 311334181 806961799 108245407 292873662 378935925 593101839 359777433 372119688 477404696 253352690 921528696 671358103 645636247 900963029 874125250 739224107 740961566 122235811 861257094 113003545 30524467 344926480 864098927 735883205 197541317 420516411 339618027 491059623 931320713 187106981 355385621 493801568 4673795 45904866 232238649 567953128 587327731 609319439 270583686 801552947 836838005 228684510 737262723 71624510 435781665 480013650 693365953 449638594 677127564 695727353 309508519 835018645 91953684 499826605 394103463 990101118 80263135 650352575 138552985 455780875 358193786 445255485 413382766 497800097 889228320 709246132 104590029 46662972 123584729 774111949 24968725 245840814 868077229 866698314 59144400 216284267 122796337 713133482 469322104 663549650 328881307 494807185 809432135 340407080 361236031 639017298 406054729 533833829 855856234 303964062 904156134 6236708 999068650 183845797 49600710 313758948 64827154 699692868 829802851 119164335 340514812 602913648 193609781 729463813 155418578 364300472 195954492 616950671 947968728 282570010 670398781 482406168 788369756 554377762 246202989 438570053 202113665 870143188 349795684 583316409 581252527 506091076 653910548 942422067 500924725 253449079 403300489 595891677 509112818 746436616 423375014 818781979 293712711 219209525 949218686 285063040 5426913 394584450 311642190 57571892 261250311 848772332 604277054 221757472 861848472 473993 711552724 714214546 336995950 751008483 775239125 939022611 332625384 909757019 830514791 884241653 67241999 827462172 73145468 80955036 697470906 759903033 109612168 433905160 53096351 839325506 457538305 557547126 290156508 323366807 667678452 685121251 672467047 265101117 287366060 399148920 315975249 876987587 741829566 462383185 406102576 27642577 469439283 642577271 467131545 96222651 962926506 949797039 76531062 931581121 145584800 30501106 988797558 822968019 765879452 772844504 505169150 224189081 694483877 330120108 156087195 422578605 722559466 85755825 459694058 321480680 407307559 825005312 55637617 739963729 654875275 364088279 553253566 157427697 932924086 496457036 164872989 426583403 991065959 757818700 559555768 22444034 488035027 142305348 413311755 235217401 381816542 334574209 521594325 468369911 332365285 169801966 933670558 938109894 509395055 673601774 48782120 102842071 538249554 82183433 296441989 113935069 844661413 529035815 731345765 289322901 616120538 524977281 683309268 280005844 3146154 425786728 228386274 207790445 861285570 342339923 136231777 435209727 673263330 997844011 834417153 348355180 196127681 595037041 85613632 209861883 258700969 120291701 122408178 645382388 5537663 942450732 694842418 828274481 738022108 801216459 911063055 930415125 253176071 936280088 472988653 568491316 988595233 116936504 961434642 954368735 931704844 21216919 338783998 764910423 882806384 529966590 964092545 563507753 559855201 891895928 137058489 597464173 678014052 712598315 976598796 475016845 966114591 773481691 261217833 882303719 906160089 633977104 406231358 537428699 781616868 579282355 108450391 615359200 77984215 368788436 889285212 247475127 223479796 775531308 390112587 735774002 819145123 623641326 241875488 96267521 857841487 888139403 7677319 602264464 461779814 645555731 654325589 50339345 723798646 867048385 458911245 234229634 860791504 323285066 499200074 230852283 483508210 532710054 941636690 785858588 122672893 745675620 348339165 693045795 413304107 293372391 104107033 120645190 410972110 473891324 128126108 128684338 566810313 448861163 845237093 853598673 949168914 196248069 299310475 36217265 333130568 429442043 145072302 21535361 163330938 409875212 210732935 716405451 859702026 818332721 911090907 634405396 91779901 642382178 490761007 729096727 186603523 516260157 993468792 662092529 656546367 263814340 401869783 374818586 673004353 60281264 490080569 75174203 373208935 640186363 447644544 784545964 138907158 129006706 37494637 985741300 221664231 291923940 919218226 124583354 222135622 983175885 430268561 318634764 26054982 100278307 605520542 422399235 974193158 426869540 158996514 458230904 13140437 697127419 684386915 657516180 441577514 336509613 254504137 229975674 395506572 989110186 204919475 574057315 674677833 275394957 886892594 277493275 703658131 190183032 751785664 324146737 869264961 790069152 66334226 976265911 229364748 606452102 129054951 958458511 142249917 33057237 887376407 449724157 999951648 150070258 975184035 326670336 654283810 522225328 563035729 258432609 167638244 243212188 174438484 432899453 839626725 136865446 893439792 918963362 85263395 948237827 184145993 762588590 575438484 80613474 671199850 463231093 923481185 155471785 914375964 538421691 857060743 294665067 867115938 54056266 32307725 188937366 164134364 699873068 192713384 748788450 40047228 943771394 434346167 905104210 228143398 377870014 843981919 974128500 856024603 742415607 78930117 928256432 244479925 783408671 951271918 661496906 930836954 228282527 119692878 318037660 396592084 996268485 96952508 126657317 193766275 689463938 814400895 709277676 666132914 225044668 500686831 752206375 459674457 236893253 321614096 760499694 422112004 929711431 71109236 947333257 819149226 68242722 723847240 894486282 359933641 935430412 411035986 123241720 669714912 91465110 151697870 229929311 63484129 479421992 63946171 259195043 336371979 551258816 504168615 446873433 365615150 383560978 376478194 404448424 797848187 46045815 966194003 781299417 413126655 20783127 367217855 674051822 93191695 851445730 861964282 975133429 34410774 299837890 893043350 124801068 17820644 957670655 747751834 379216895 505210907 914256468 706282147 345281652 564492239 101704292 15511380 188044754 196951660 649236143 444142450 566650247 653653569 784078653 946834545 260200711 780539660 609606955 969270484 632061974 39841134 354037857 534798564 205159793 332845219 119773882 973767090 177860939 87579686 402482932 980219938 131301668 750431048 31395940 487785564 748218227 101820777 124911468 839317463 919610119 145590350 311940792 618206242 685679729 279418292 574182834 576331414 482242470 611765359 110960303 306453106 47692524 137437883 265461210 273899277 678961980 128041833 670336021 961723645 269817740 973743485 608992087 684783270 534903135 305925354 226751572 873591542 573089937 810505675 947499804 894046081 169357200 782931544 973334576 429529345 950247526 198935433 430219650 907722040 231569834 791457742 109589838 233314431 494632405 985443902 862886607 468646479 223807519 872595377 675091407 425657021 183177647 699287432 642399824 103982379 886047056 344856541 465387051 24291635 655162469 498626769 964482084 23953996 143397351 793744941 993461105 215880986 75597759 125909278 123662352 603252431 962194305 846693904 406138496 301876343 371012897 681182103 199287656 704097358 571246927 833896006 843685567 397211522 191739488 636114530 857410860 476818980 849859787 479523759 999589177 17892775 703263467 910336085 589078148 143485750 21651509 638713531 145428418 762189956 419310652 225020488 585301200 66118611 114741624 968380594 236894083 176772905 936727134 848869053 359286061 219035214 12143867 215463490 263417125 404992239 638500379 770400594 370169329 358667073 788610791 465396397 163116067 795217747 404923420 422954506 400744468 787302071 576899624 5718995 712283796 912081504 610398961 111471232 954333563 741024061 459126759 207814339 470096287 245062516 136650839 829955216 242424418 434118478 967041154 778714353 450593895 450790861 763662766 526601006 226685903 582687083 23895253 56396655 251749504 409287205 909765373 303512970 71484829 919024646 207730575 509921556 803991057 394468271 245250246 398346169 398756249 793847172 677580725 837060617 210343757 2367347 285672336 183550886 73059569 831530525 427853551 200948772 605781533 460849995 593614238 540648107 72269558 963716081 937712868 478210306 966158423 156814073 468466211 992192982 737017029 646249733 462542424 305749436 31935611 796945120 47151776 572213074 848363719 381272845 534360771 617626017 340741996 5950148 801513237 417697221 375793978 611303495 188889595 82611756 301428634 145391970 567663833 378176264 950396332 854578672 439641548 333134363 918561348 911388850 921848480 143285595 760446198 413263198 176356248 378958877 589415862 125259541 340266419 915437654 76769171 553401062 453257902 931923447 81534153 63384951 451947136 311146070 411650691 252458840 601773525 531968287 96389073 739356570 553822256 467698104 924583051 74171065 924812508 312492631 158328091 412161337 294671413 870924468 76897475 436601909 894495588 119261920 889543772 993082500 230261325 331752816 763456299 973597884 674730841 583477727 538275723 295826717 648051979 935696101 275199802 270413515 749668215 185055225 78498274 623497552 203908326 886651740 75575913 395920081 579528139 784903813 550687249 723304882 691199815 647088101 927887806 909989554 122148396 498433169 460788874 956213136 60164501 216135800 85365655 247784667 442760358 157732859 57878947 785494773 547116236 601329074 270591011 299245055 448209869 715516308 85742037 620024379 288828287 549176428 510403922 930931851 979745310 845883589 820760935 50046614 663166285 77123460 121875878 624919967 721333974 888317370 179275840 995403844 550528880 761375660 70931029 132681002 321072774 585404669 762327747 475199090 460535439 474517331 786915890 325286804 419926558 427377440 887027894 128608011 346708062 287922022 586487856 693272492 446669614 162074936 22793534 200969235 355876563 503396770 418864679 466281072 63971018 231529540 515265514 207261304 469502997 977652706 604757885 957049044 986840218 774120563 284576162 563963215 741089980 896025873 604589798 493785689 185391442 230471382 372759820 645700508 729063809 308320957 961487777 352764264 286008106 4610635 840013124 84500544 749515652 813997823 835784339 910480528 665260692 142433776 873642177 721574580 260519521 765082241 732614714 554770481 600957124 542796879 461989007 209086719 442546891 279726815 251077344 848063520 598966194 131404696 186446033 262868829 133794777 311440912 990299478 462271194 586500931 215618957 298962017 4789640 187850535 152872967 262273899 595039579 473090771 318856746 367676389 21629870 891695326 922789532 766689518 754332802 464522090 744665722 883133879 904264235 946772827 443512167 777098308 908383040 555359180 909629491 297706715 992796624 406488619 183498943 751460110 230564823 30632970 654955041 882272169 397568800 503129016 964054776 716449197 864911782 430833405 745599806 39553676 25304118 898870613 260703989 866967784 9660079 154769409 711700425 774272532 297611938 244239168 98246539 997055639 847268699 397798831 699405927 847995078 134298866 792568188 430100051 846862950 159410472 219720761 312870768 115742730 975751925 14525173 464637625 14876522 761745185 349013294 790396686 810938875 723712402 22766664 724082863 944808529 427554727 358136800 962154273 648085281 400998004 958807610 696242247 492027550 269111066 660996790 399435365 458508432 387072597 306922419 757325201 934344482 694783442 114624893 719617890 823024211 844437250 365097306 931058750 438062159 517089357 75896142 664130815 784092328 778442045 653848517 787403286 436298772 192467955 468045913 190858376 902046548 563760799 150092013 29021119 301516870 111844805 886996674 695600228 605564568 489829913 145938937 21983060 996626324 992981595 74972973 356353747 863812947 319375392 446803307 437768754 424586926 73484177 577625306 624727412 881645545 486659523 385243082 146927401 4927117 583687992 899312937 409653902 261226968 656632741 233218963 461655556 543202456 132573115 413235578 515741151 615079317 919766194 111380178 35465340 955791329 646880455 695841516 209073826 857323690 631829113 796460405 292359905 865858339 538396563 721798286 677038238 176024595 620585051 148755847 814824452 235043706 340054003 512687454 259014179 542147860 280085258 514794146 388146833 847702529 778803791 55048498 970590025 898900086 718667657 248912941 788304866 673844326 774445019 849349733 320499785 347903626 421529674 273805617 342838434 817337801 660970376 2911514 344341015 203901259 932048285 628119660 204203595 541738872 190566769 116824057 535683562 721262887 621496520 340582033 794519930 487182868 946722308 349976916 864567083 126360200 933165289 478511170 942727686 574514283 878978484 685471676 755718437 25750245 706921150 167386703 196629501 324405282 940580954 599752012 460207583 304942128 823829824 945130044 550671062 211260534 446915015 864523740 932284228 907824997 664039234 48908930 38186736 373065998 981261116 783382053 680602897 478430479 71500817 20097986 863726595 861204752 823653194 94697964 878263719 946386144 661194284 475873256 104860728 109627483 492000625 218775939 776018347 31551774 963926754 977779843 634298779 11123729 138099628 921084500 763240592 341991469 540264195 329360019 499576286 24040233 208559233 312409944 276512512 446984352 300373985 522032630 517930001 474963966 984385419 317953510 373787845 455758309 434892423 631721273 655273330 334944272 741564521 704552960 752355250 757426529 734740196 574726494 929695860 612592916 578406730 32179194 371755139 662823151 41831284 807585004 277372629 376638863 732539139 603993726 824984930 862707724 603703772 490913647 297678053 708751042 676869788 735723813 538077491 137042322 460441855 704178680 226687357 341154560 406115633 759437300 449343693 719064720 788721702 334886118 244192953 998126173 253723284 11012320 829848323 597101398 31454070 368277658 481389963 622468888 237671585 571497910 591509459 470747122 290870609 382461076 108943200 229432603 998836189 644444987 528195526 921700567 411001237 674913273 824609460 659129764 697737780 741473364 1619624 816211452 545128878 980498937 401391778 436079756 805608461 391397313 6466395 784034074 907524228 194074573 427527420 308374434 547447264 845030798 253398313 852182828 180466209 256321215 792456102 940007625 652799209 591184859 20101181 251236663 469871545 681637526 8064368 122469889 185882935 405095608 827809016 355723491 884124104 726371859 872478105 244373074 347467732 258009060 247401041 80417177 831399517 93079538 795510680 43865428 183832584 907060669 167261020 487920373 582010194 784227997 445421468 330492871 792495512 930081142 337185924 195788758 166773464 622551346 743881822 615039121 476010920 862369952 431201802 22278576 423509575 676630446 411247361 134119957 679063291 839792505 759671203 950971938 624701253 25888118 514249394 955767450 1481325 310560263 607635511 922040157 867539205 997295616 115238856 855862308 893220865 110295892 289556527 317185114 194606622 666973776 124015929 316108674 852690921 882415258 32750046 883977099 462253258 459759826 228273152 285712108 847509154 962288836 771985272 68546273 544370107 549765152 535318175 173272786 513312404 446047444 786186974 264917992 807222860 962042101 336276731 883949308 843637103 282737523 592070203 412252080 704959683 476333001 521091935 946442218 345489902 347241912 849840768 896027333 431116043 786690793 778260645 920108213 189096329 366146450 782948136 985231602 96969279 331556198 521617837 206021494 301084243 212447054 631976328 617500972 651981092 99920074 992103313 47539301 581870292 454856731 852178231 771777539 6846726 203578166 209608473 150909410 316577162 22278119 20353683 215552179 922699950 455321495 669078613 284188606 542494175 575497979 654036460 428344547 897051523 722436488 40675179 641646659 31447220 64048242 609698034 429262740 740268176 234196994 113762316 959178106 241762608 372630169 450806204 88878222 102221996 515897609 497161148 70409840 395003955 234903999 464125139 460236701 931466640 717406097 629434611 394933980 140219907 525563573 332300364 664546144 243735667 526331071 623314482 158446143 184070401 191820936 637235923 528967325 872197271 170358676 338806787 291376417 645934141 828172078 627007238 629293474 559894396 337324537 251326786 348115017 789713649 863167782 351342461 275387128 768343791 913009913 568837749 953671237 747242594 673434900 727532343 724538385 798331570 666493265 483080246 974027689 112493990 787985785 647126711 302065179 223286398 279425673 949165568 701282173 896396137 747693179 616302925 220285116 220423033 939885102 425679492 519561395 984871705 210138698 487621172 789172944 403731813 882736304 914476514 322897535 56819450 563412355 127777779 687341387 883245142 254480433 463251671 282935899 738434290 354707993 924246640 152648015 33524986 16547165 746113380 146581020 373973177 773572842 992465870 263111224 411069208 456180750 614154909 698464653 739284833 733633966 885459390 689803060 44889209 370545451 595905274 722453608 744131443 233132638 585842443 918295141 299915255 126814700 865252391 575346885 462847202 866816289 984195211 151754078 176442671 832012666 58535665 224042304 53426509 637426954 491112122 34442524 222955782 842034329 620824061 735986240 794761532 701496676 639821447 783673419 464604472 655318336 255344672 695465100 769100735 195266570 400596873 939532587 548538232 477858611 588903322 739969000 948878479 280263765 356336804 435753056 428958510 714904776 71228293 966371531 644024342 465505768 58466627 492094068 169263512 350459763 645765634 802941578 169431855 895278774 481712559 669534392 123993538 359021184 37117710 696466860 159728802 170601769 288830492 74785408 742536736 946954499 239334779 226377347 558267828 668905358 749803721 377510174 279792409 694730188 64627879 316028059 939355886 535274382 331865855 117267310 400907421 604075207 541578027 467623744 998173921 190402594 873834619 22307549 389875287 306521299 983260346 224265222 999327752 775173598 863078015 756177121 925043676 500583624 111290462 524254436 464144085 267595534 373208375 616513778 320620211 32107336 260272334 62110926 715319159 525794280 676486199 453875269 550760133 131649524 466093326 254647549 429461575 492594838 929471226 474163197 368771125 844294800 388895872 852809190 313336335 411069591 398688977 120588954 196048401 146790678 456888262 926129145 99773694 452191328 649486476 828928098 890180278 342258493 965259657 959285509 896988256 994056311 977232008 677555311 476593371 260388966 504926640 161084605 528023871 161142690 891914784 120686215 339375594 379989998 991601290 625520647 35490230 995673096 830746917 108808789 734175702 152174157 56927491 923754762 390159726 589505765 775320953 688769949 28484616 753274273 541988096 678888254 939255516 86856681 712887496 569549304 28373091 485213915 354127858 498449369 405633424 204086752 490870818 942256618 376803319 77327794 501597378 868639294 145066835 882830810 310222089 872946900 691297981 155696867 513719537 625760645 998585343 19106343 923114232 242366595 581281476 583020004 284477756 11395478 968443574 242653528 721422398 294557159 520023982 475921574 641729953 589198062 584369378 907643467 279741256 481600496 686802688 70571791 530726741 526975187 843844304 840244236 43221301 339340768 493134587 556187543 985383854 768215151 917032118 861240531 95965846 667984969 968703156 958254309 271555180 508333967 401676985 590898579 71870266 699270456 141271037 762489938 26554509 990837301 513037912 873518754 120464754 433929144 546429914 346942827 589173145 201909596 882180557 512007501 622243956 897457485 273241746 399624518 140397920 327578957 726945200 3594544 532805696 254732370 371932728 429474660 299411368 491922917 254484294 397524582 832291699 643316764 716383953 773959045 50734742 259083518 271647763 627610533 260093046 481517930 278732605 80099665 368150461 499571828 792478539 624131104 388949720 151969081 967698862 573074220 487899421 636254558 440640928 431606648 344853614 30085601 719094696 312214515 919391902 19724667 486939811 446176085 411050060 829352038 102278369 301182178 684131810 516467815 675433490 667337957 813907994 119322640 520070904 656175481 992190292 916434838 894246872 570272010 892964419 299473804 411769857 523988698 149006287 381841939 778062420 362132954 478051916 731396672 779695498 137951875 13958742 275997577 501017942 125289945 154832238 406198086 368095824 499891784 795400257 771224402 294831866 215949278 70947499 877550529 444388152 281132179 508300599 736266631 179704208 609221330 913354083 45837376 248596585 5758993 299651086 614401305 157705795 603839025 170714115 880762933 538825939 928894888 454864241 466419377 45492304 373195773 404313079 621770005 928213459 904653112 175089483 12613327 840083417 877697306 888885645 131128678 926482947 502642338 163045384 825332072 242670449 260627337 74591300 963072327 104963915 616817796 333755007 53497478 249857698 180517348 197045381 574907187 942486413 825681855 975211573 56203381 224524212 704100569 754978975 20765930 292266528 566136317 185439898 759031920 821472201 969814544 161383891 607630060 983958656 68913301 768820372 430203798 585875745 104711301 881258579 496906952 387906725 277265289 66835736 959844631 458282786 325333363 884918321 53144848 480338960 286871695 508562344 966353698 800161049 919353516 271916645 984118656 614980859 186422398 967247389 763488193 338592497 524042197 772226089 709818971 887882068 522079025 450738534 150631449 62463995 329930673 915885391 929723458 100542814 325248769 317130562 927641002 711046847 595088610 243394753 118590308 497919941 817540877 474470370 267852053 113149515 928826858 446962724 208544490 124641572 883097507 974406465 562587497 352604417 619832054 90701257 738245543 361325283 975630106 836681482 169899660 245265453 441027629 949168100 80690783 415077051 845208022 99013274 477295586 80972313 662435748 760714483 917318402 375157420 638113834 736339796 450788693 42839064 20367956 643190973 28100838 983961564 663911240 999231613 558338903 898696410 668190751 713262169 930959444 928718721 770876696 881725975 481169346 527381854 465600695 986336216 160075212 334989942 585998000 251237646 881548994 474646102 961827415 790651394 200871032 769437965 695036992 927051151 700035685 329070790 745495288 264058654 605506583 767185005 105630446 16236834 365765639 731806510 639001517 345368916 700705799 133834302 642925310 265829865 919280730 121440371 858591742 542892564 685147837 575077133 951039404 293207309 316097486 118714719 862008145 118997583 305906557 228927656 650566616 940680513 360795224 636985307 339045386 518362292 117903439 830579427 983913545 694347121 491019915 454272385 412814460 14475146 442326952 832378607 929600298 340918555 800130213 425671493 79725575 411403623 46678574 826898247 352870072 513489500 992669036 96451117 498284575 717190931 812624081 533324962 783811071 191990264 462631019 653745409 284723558 637439695 371897884 619055948 808820919 131534820 859920308 433223645 150909399 153765269 410724715 281953336 800724636 118504739 682051925 625088268 414491167 925350506 305671054 228056760 608229359 427483304 551837663 670106173 968017168 863911107 114181591 726251434 582523395 351276815 154819672 972418654 291937716 557307968 29785072 116422083 973973227 303941030 467841260 986209177 74391813 265348879 620697927 498197221 934912445 707476038 979424494 28042096 86774837 725232119 121331401 476558034 239457891 614040852 113889360 953141008 274941832 201260670 463850000 575063531 865312368 459567534 582774968 251655960 793663055 85904917 238228458 415769239 437731038 151510685 237643768 419541747 335913772 408922242 112109187 967233915 323404462 425267085 31594621 993938931 722099234 306863328 805051044 864728156 614485617 853198574 776030438 51391888 77666604 647768958 544545057 335230187 692853973 119448823 202246584 450192475 650663712 982432749 279220604 852270718 505314390 578470127 516125742 795158091 324239709 562524065 925146175 532099491 519684328 157507933 607541749 211250584 619257944 476265497 602765588 936087211 310738904 804221991 149025444 151458563 301763547 100505052 268440884 606472085 565096425 212829231 928031795 116213856 589114006 855311969 485557156 55134333 347481834 721186296 377992926 148359500 899994808 512116237 249253003 671432727 921518128 540838714 800511926 128562671 525239898 733332460 212661332 574076542 777127041 603192736 119591562 818229209 361099691 642100937 477765259 120355960 411854402 630704396 931808715 452276332 917495283 365792299 598644633 897190596 152527971 189857658 802525899 39116740 423678739 894359227 237383058 809769566 753468785 854599700 253620490 471879490 705543657 613756317 292203387 747029532 635317853 470139148 794092861 492607661 885398600 501173313 211190830 509032782 203069865 783992968 706702833 262680386 669811480 674127050 566252170 423989757 238652542 519953768 836720934 27907979 259020357 295961465 117358928 215592666 977480634 547986648 99085834 48105776 267892957 527069912 714743272 728210521 130229959 736308219 267220778 176757604 321184901 840885581 616117844 561068867 157913438 28752128 761527249 561831127 664724005 202609248 281994383 223536887 733324245 489625916 515506669 916552358 249627390 583081244 663396797 351924902 299619906 468202268 580338290 962193434 913369723 130073706 496830454 47309288 876059988 226247557 702993881 568553024 145901588 475381672 913208660 798009374 681111427 540914623 186468625 123300677 403129228 725113284 598027187 634203325 211894477 209230231 621472431 201755223 476253826 962691836 974718442 852699843 268086176 679363281 707521147 825228061 144396948 280707616 543233013 685496966 846902160 818995207 641895215 858029702 15070854 673335921 212165326 846432732 967864797 236189311 236595502 891749014 614950301 673946655 843593959 329639363 805485832 36250348 510614500 167233405 405680981 654926961 935860235 744544350 736951116 47708981 719024850 85364496 686341271 870379318 423297355 185366689 81799898 737326410 760580234 313518631 812954714 180980681 888634071 461618394 501351459 547088227 863345736 63813542 181346494 343864560 100233246 177294477 317182431 352750637 874562491 264152208 451539362 126349551 26130709 739310544 639544754 186654993 386567551 253685878 853813431 850474419 486340607 33568523 424301189 12891886 971571807 2767514 916128518 54865347 587794450 512235996 939333001 578252469 401821863 551383973 398882452 580901359 759471289 384214375 229191774 898887753 49774676 982351324 688425545 725232765 812101725 602897962 679606934 605200357 727453486 447250528 856305897 457215040 595544130 780488019 397450377 195861302 997238688 364300305 199406672 701127081 434003102 670535814 229695068 807958677 294503698 489747487 669218420 96508023 494322723 816986291 145384859 84616225 231535081 39105832 580902508 875260017 405958961 837074361 260929295 86535356 34723025 975541617 65495243 385461485 477088450 452214369 943466201 335396561 541322841 401703313 575729848 642526766 900712764 507347734 238221749 961762635 547679618 27370577 302138384 145444918 883799791 585585386 147156783 821523158 772591896 572390264 741265785 457292942 15278158 429838757 445648849 606492125 804769579 23698187 737294938 308615500 152577588 935392456 277763326 967933370 301254459 841049293 848868213 445459677 486028503 937199286 228389855 546560642 592223900 463625996 551654727 497451264 219097735 716412092 289984304 96855610 159565887 871897176 667088460 98247752 987279747 671012327 949137700 12950675 231473554 245736533 624095830 307631542 515709517 500020725 905700822 943593217 611486905 960307767 226194258 17875614 698672670 781446806 479403007 578547070 72396538 867766727 712821600 151424323 508745762 110894156 970824180 678202122 350965221 586863070 512798790 465345511 885753391 68273360 208358499 830503173 461027345 119627088 601377344 120826674 896699082 938751781 681284285 279466943 877600367 758340437 515487958 75098313 648295246 430838685 64376242 471522601 723738765 589080129 266991727 784742849 896635757 604705536 241549605 395543881 231180875 701425006 846357842 274442296 157372212 883754635 21207444 583837150 753898594 714472306 495122154 499845088 251455240 892594312 643956390 107815051 229867396 264137384 897237069 511201506 265270297 327448020 318214242 624808356 446389238 840068577 314884408 879280702 708759824 139485582 331588350 893734710 737271423 949390725 635856055 52131183 879520083 662878620 222323407 707202432 863688850 78148439 111842753 959856058 16309619 842375360 117630783 693090692 127095671 119479459 647809173 77401665 583711501 856680364 191623167 826448578 420432498 947696129 905909275 869779098 83192891 630323815 936373793 323547813 751366138 845589454 7606946 355721918 345308265 804094790 261089708 495597139 473235439 345586583 826804029 298429914 80183860 193741198 743087697 534954432 731529538 4651585 701424872 735319959 215235816 738665226 815211771 555487420 562923766 729922689 766721267 147580772 714464337 400123137 174413021 96291438 743085725 127104254 44549972 361973339 597262390 594691754 152346070 207884659 213082894 66090610 37522980 541779078 316022685 531569506 161935038 147167728 980526380 226116433 751007649 216967922 482861557 121129189 663431792 855942344 157176811 871637712 14416497 27334894 810967562 647548771 386168766 562664740 571728386 985550472 570451251 517839132 524634766 345334518 445455282 633201658 323536363 607042550 321326758 974211585 328452666 396914174 872858414 842747726 915217738 784321819 181485601 195510412 188788379 340821338 441828981 330730046 694031433 126755294 30891656 235824354 737816474 39612265 257499577 528051503 445421232 973076493 761243735 520492802 538201267 184991719 14771305 824018416 826356788 556297008 953423534 878008209 83363320 588363469 61985445 232906604 180494433 81270777 159854178 503376450 473796705 449116587 861751067 451429856 784072111 219583906 965888740 306970088 438104221 184726157 178586657 310219537 174297395 783119144 533255150 203530766 595316633 694111955 687034582 491860675 577656157 951004849 722788200 954180157 51936387 955766349 445652510 28955884 986325629 509361648 539206845 166343802 521719690 651083284 100152626 541964140 71079487 860346001 257758867 361287826 886235005 667892270 224805512 277767354 823902112 7698720 211350917 668543292 793884696 712939808 870548129 372989283 985019187 687677633 459672408 516023417 228053978 770030401 680102723 50059697 504053022 659462576 649478310 400606313 174336088 767352761 432273773 599657455 229726860 858143342 263384800 784073939 851501065 303573309 928798769 383446462 239595098 5381852 767760103 36628850 587376443 681565060 639418402 832339360 191606569 538060115 767560789 369625319 131973848 100559217 965428779 455496258 252266133 847836902 546998922 112435767 745868429 114294266 199015084 494966139 785067658 554659994 232740152 36270176 310660521 262257030 307001622 176351433 54031545 932553832 784156796 831534700 80693151 925071634 965636033 622506665 759948436 514072071 100134353 826431002 244799094 420603258 796487958 839058749 71411695 613272834 498572475 45765965 957002025 832218149 377624709 654470608 864185316 108804092 890785773 541105765 454218843 859674925 298199330 710114085 286220796 683626202 133446512 191798887 582491718 795725906 704514139 306438563 40881622 248681358 793740595 342144292 602242900 663951983 265166712 448581692 462971951 310075027 311803566 779916445 421795532 602662011 296808562 773118422 979651638 829107844 769521226 515298812 649243116 14360797 819561201 454328145 469905642 79443201 768927509 427822599 503113292 293725528 758943990 505492393 598329315 97387135 232818811 119567168 550501587 378935175 411292985 879925174 705123968 774185237 995738843 626942128 274146325 443385700 836668511 681644885 904581805 767797017 968494084 995956463 57376279 511615237 552529281 968666749 575294583 876502390 648281871 739581487 169366886 437081441 88719652 438823488 670542885 395443175 342660038 464603600 974385406 976047952 939291040 218395281 948589533 706012482 418922242 746954190 12409083 788377288 832185072 945588120 291809088 983632089 235254254 617668723 839092745 194209900 998908003 539567120 501601610 990124895 301649947 434606064 657733633 360238561 323068818 144022689 127516427 249072489 918520407 79606616 904138666 43881672 521887240 581924395 238881645 987793868 908186513 404312878 649345356 284712689 200896857 151686464 533489097 149144196 58747484 954348391 806781986 748220351 956961219 533389483 883511790 282901856 970594144 547018973 442691424 790056851 689454026 555154324 65316263 945124579 75985691 400102756 877002166 338416018 695982971 815932579 172472186 545448791 674286152 600571528 501604192 512697038 381053537 7089645 813526874 107730531 849712653 995737815 850465821 832152168 454829606 378919138 830093276 607531000 294859221 610114525 784631532 213501865 221245234 995774233 272464029 666575759 684021225 775847001 791641809 24523369 465332911 320114369 724694583 784425044 6225077 641234734 968745623 368322751 858927850 397467700 828402925 253597603 949371527 501547543 915559339 775395357 791627994 346320325 52454906 522584498 17475212 156694472 64618720 676753538 768519382 664122856 732454980 666441381 382861366 449451377 949952974 25121465 206314014 952049911 64801343 853484959 475916076 914844526 456111541 781940984 925333021 835048074 571420728 209534296 489265584 979741556 281152648 51470063 686675280 654403682 346295639 249585090 294409876 455074671 451969568 677289968 178276671 219001966 138971836 557570949 75429186 723809007 362786493 290267488 619227560 349831202 904807327 406855229 426146639 483972262 685888389 203796520 959964320 591788967 757293074 982415754 742873477 86324090 232170251 156216505 707605669 859467557 876247412 274286239 421101174 171916565 868353760 143810724 612273169 679742984 238562895 407004081 578883202 728057011 996023023 40114531 949910677 721443089 563490059 486253639 265977718 725985686 118928337 456280784 831489655 234903453 268030542 919025644 775567411 947369424 40924826 718527640 972982785 450623596 910110309 920331836 268624763 159335153 637072125 630517338 392975359 536677778 743665072 755087187 877397326 132744096 71462928 273278173 946693937 356115633 70052657 767795497 915785536 18117884 866881968 512044904 324075410 69043302 212776521 311889246 935214761 208521383 660707871 582037720 334157644 421971243 951622065 984979916 981978376 103832291 313554264 744495514 206976848 756552388 938626820 137712817 845516975 209958320 586422290 469369427 470313077 760476272 122498341 202225230 446528096 288868686 958108031 823097826 322224965 906729062 484802049 82249149 969027876 776428089 443183178 179463105 876771280 741799931 655440443 443001119 721321111 891445443 939579417 298546513 542718459 95866772 954406810 94922326 458775456 966804425 57816028 808001035 529625651 348408659 494387005 495805580 552336687 778575536 593533543 833744315 389361424 453466698 18705669 477836273 928807131 623094232 442058834 519121157 785080625 100866675 887989149 916411478 810576899 237210239 65630090 886362945 458146276 410339403 524579213 990083117 292490670 800280733 89724246 677423992 449071046 713113279 21702048 723675105 74406428 125603747 278523815 275442924 689102485 933074850 880739598 282159691 77173301 889439022 133290812 387051494 964406895 793056987 661328598 24159103 977478484 78232436 532509818 994703986 116259700 898390549 728121617 151492379 762889618 665604477 430209779 584242138 145551453 942938398 607699906 141964094 242319461 974452449 287144537 816932844 722789618 604639661 534199217 187430443 148717697 81222012 226659586 765303374 385179468 751742650 443018086 666520873 475001060 367407614 878833193 45570366 116466196 476286592 697912101 26002184 437751623 687832959 583622502 708584818 324855969 3627957 773086110 693600108 248433743 825231124 171294306 549202280 821896907 109961783 126704136 37418658 393942209 78840022 449157654 112872724 52194027 529231890 275728967 767919292 485916089 743682586 90977836 94750169 585326674 714456601 347082008 652164504 836020139 155913926 790435910 124951302 204509828 264904734 703617735 228682700 807327228 245983501 952662608 891240265 618877849 6524676 441912499 462151637 892141098 465571403 557989656 715724626 804395036 854363237 298222182 698416215 40736872 590310248 779388465 23124519 340444228 318701728 520338928 751739705 260342284 413925631 890988111 795114107 189668719 288035841 474298298 856564022 701902702 978996128 551493112 627366613 800118163 533374222 129462190 677536492 704934150 236227887 209657052 226974680 529077932 598101198 395017406 383326601 951447787 156717720 714229820 176929353 807455387 210418519 331649064 644737784 406531843 507028317 834396176 994188333 322860948 124197029 602144653 561592945 131426043 753053176 452378662 628530 664877541 783170545 358439865 498964562 100107881 953320026 181245837 16266258 890768369 493506018 965553131 331618445 857301284 682286858 919565235 697653744 592464859 203141375 347184123 403755228 321626358 399517333 421881186 494201290 847771326 184019761 295334499 468491794 273759926 457161314 748625267 313071353 297232940 72135763 532339982 811591807 990680732 793693276 821236589 62196527 155386963 70808826 951031944 906429111 975413407 919153588 845302583 85154882 162062645 117697507 172764886 506475603 866363796 468705890 312498741 101815349 203762996 719648084 793286824 673946012 744659367 807973023 87251381 192796638 953994769 217340791 11324445 565305895 999614843 814014416 118579989 279071296 168946522 688471337 645320145 429987307 204790498 416355678 427959058 542333440 363386595 743378326 373458023 335241314 549849034 526607200 554648174 511958848 391259579 736100379 504211128 780615547 471190689 57602909 808365436 509080751 563036981 278418283 481954664 828899714 230731893 974865999 619616931 966768490 60415443 336288991 977506120 196725573 289307382 999190762 851172916 738281285 441140249 897326501 121799447 15050609 264096206 38439707 159743092 149462623 738209930 784615544 9482561 740530690 661318120 62105069 868629993 798264971 9154376 728450129 466909819 925653265 217818605 318481998 895141591 457309150 658902656 469906953 853814165 611594771 942067320 410505133 191313741 370274438 846982815 379841525 37473100 482130442 310815404 959499122 85082296 321954459 744587141 135322572 392513226 83665970 781757328 562631809 706741320 434526747 584189773 332704539 750053847 649541114 418379098 645373839 299888700 259080195 795563009 963860630 79355430 822125335 595021406 926684262 666182971 975495632 72621867 485719477 238619284 546989064 258311694 519281622 708189138 256328384 987749362 134839119 846051220 967682010 681531936 127760288 200277905 986043893 999095284 865558876 888972376 915917553 644775706 307003692 258538905 499166773 33807735 427378795 929951838 51316664 67698152 544221321 229548545 584944518 321962470 316959771 1800325 98217557 106235486 918256705 148502185 744687837 74206736 61428909 543064213 980391625 522497651 953184839 748318826 639837225 10841291 893936135 176467944 210532972 905558335 926004375 177088985 498886973 219850191 990009560 783460993 156022977 825324124 50539924 560067016 18976560 436029926 736463864 597200146 361764185 372710547 756042108 991109639 367420999 551313187 298328896 182667098 829087591 567599331 433574480 247428576 437755714 210546311 676808654 865455640 626210826 847460741 647253580 977540136 834736820 986689203 700333176 376088128 563164668 924288334 311738046 717679172 290359436 276159790 782131129 599978533 621829533 440871614 310213728 931452717 603484686 964085594 121085055 371299152 722184722 603463160 891165961 588096853 474039932 1520197 483295203 578174490 590206770 751778214 954848228 883828763 68565021 480253183 754074128 471860976 176461975 94219281 664957364 321575203 140446718 540362037 184588134 870925815 978314629 433998964 224255788 14253707 655836744 618789390 297368395 475745762 98277892 436834979 555276197 236004759 640350604 200327844 30124317 471927329 343711791 497142925 685533799 789391956 926213767 628797957 857825766 947552911 229534973 245529001 355248094 526562569 422415867 561698216 865264205 179576911 174815510 279903479 33633258 55906170 834359636 336417359 984174482 331877716 96757752 952032722 844480387 951812951 558632187 560651656 47252900 225915966 803034851 747626957 506426220 165087127 679036206 348812993 489375768 662818383 241180286 987083259 120500208 866505538 754297789 945076971 779013515 424616310 722980950 496918622 490966810 652487809 493112684 138121288 379807917 656935485 940129757 555071210 73970274 872134857 332307115 959842433 869341532 688906550 915581391 462349343 458430741 152203124 626771221 545904337 547876625 115259752 306995290 588198567 784457870 361227875 372645590 614076490 223135645 240373186 337420583 880083642 720985279 874937120 309905013 395614708 629158929 58726049 166983285 1338892 898389709 549419462 275068893 70981861 82587697 985885992 285509677 356644879 1507647 662228108 674407479 820436826 785026368 560728412 647547389 142106835 875598854 438929424 131302349 854466648 952199763 764412786 525893363 757590311 957681524 636696870 238435697 393025979 978438567 849284031 668013527 795227929 345592859 347529910 362033251 820187529 602795991 599593430 693340199 623061449 592662865 549879944 791872454 721496573 931253516 419065452 333128696 688888709 909435341 259087184 461784683 521905099 413554427 370951003 745800943 895874340 139623917 799464821 757158192 77177103 751995149 452127450 371682897 583212905 450609351 484746458 419783439 488979318 658077701 520015262 400135075 56857811 155151547 272802002 143417809 534359050 985689313 93295715 618685584 690697948 846250249 387510868 468229533 732042203 201108071 302236470 589566848 708786845 97750508 611644700 961747672 872692933 529975638 267156001 153060130 513596389 539934989 519337017 552207780 8777150 758371554 531919332 329525302 745450413 94964706 763618487 559976194 425379785 509495148 473683137 156002647 347578078 39495082 684707106 164180118 946567256 550659736 346826117 623175203 838624763 380494209 50815139 376027753 145355429 824577081 253934530 427606263 713306908 169507447 528066332 311551152 627908234 429514320 183665986 445868276 924502617 831581431 752922754 560309005 74765325 776216441 354910094 307213054 987263492 701766493 13099332 888252921 432604482 186886201 553323537 922361390 67228752 503030715 136517622 320227557 665907416 465117814 918571322 295532727 564770409 585747087 646017398 500034374 328166469 619125988 112057078 767546852 662334820 536291715 132039533 554520372 171843663 336667160 650739410 838341296 159124025 852047797 267474788 773333512 463660599 522930514 649312124 131444415 734706206 819583996 422491794 276225723 132839057 354326013 454088052 672510417 869370423 552657603 822251763 362127280 692505295 368906766 522428584 198361368 761472466 219223453 63823661 539147999 509069265 629591997 246456404 496303037 960420634 1690122 642218905 19328026 546196066 666069648 338086672 595608193 736709592 417887213 864679679 32463637 121418660 900646437 500180452 935345049 893946851 886212187 469305164 703905314 966030854 339129924 284728536 360430671 977349695 800781579 602050958 652798462 890395400 3194761 524212926 645198415 634943670 488126824 882480917 642478413 133500233 162171190 356569311 733665298 163570314 480749227 977000867 712959600 708371246 15118458 657410669 470527189 949658392 781181351 416834743 596404415 549817017 511727529 177870033 129400407 703102061 432564264 427547830 457211140 765000335 600635741 245075199 848586212 942624528 837099074 785436796 934890422 435822827 150031339 41385021 62478701 603755130 100410671 318012847 55080480 950264397 399422085 299319157 499896191 837794138 320081668 572101168 363171017 65998156 47427569 840360848 620036030 375939199 586742325 720619285 339440801 643657287 472997785 708098401 828282650 469332648 829504916 889662107 127190574 736799421 99486593 325524561 163812787 702421600 342603456 479933402 855663910 644404225 264649185 261932604 112750964 594085514 148329784 307030343 38805495 725939329 950996686 968841671 455982444 253153591 357202658 513381910 376759446 184966534 19564637 769640267 507376959 338712556 611849710 992151975 136715563 217526880 64558997 525020876 611383731 778922849 821314338 187832520 624373888 331907440 429366272 426343670 816537870 821843660 915839214 285858825 391246895 432162254 929112808 37145186 607137830 718826909 741423588 213178859 796970771 89520999 173817531 958397885 221783381 385042927 149045767 414140792 557632942 452225732 240188741 763996821 176568770 119339195 195149127 246164260 423002367 747779069 694069545 838269449 275309614 572324801 811728931 820464120 947611595 38799444 288064873 974306954 805168611 184847341 163031770 216455964 324734978 984549608 166822318 474008938 362164490 859329476 622804383 818084593 832399652 727780125 372230586 832642250 406879836 652756144 944166296 787390249 792297826 843846787 593389899 550792217 586473920 465938838 673802186 59517874 989800800 79454280 413958293 64508819 597830328 285714062 461246420 825795169 213557808 433646949 616303242 868790651 562795331 323062792 426752488 334166456 265224599 115440052 222767255 893614747 832031698 816113374 33442985 59252929 206680013 807122299 376647489 76220567 195677205 236982571 535118270 75331039 371549916 393336335 919692365 980447529 515380927 103938402 190031512 21154169 754036900 515577920 662052399 919582268 359864470 702403351 243487902 202380139 450472334 339570775 658345760 464154176 886642138 905410929 432198887 617857521 213296325 980102194 286449203 385465732 752224685 396169513 633064128 881527277 441080505 271418251 476533226 600729386 201439452 908954209 932309229 392097502 54288070 349387733 639786798 433300626 265775326 624803925 452574727 738900329 529018616 745995366 840918377 947732191 229522993 395881002 308161123 822176107 596590509 574582876 165467495 654540587 303566376 941488512 387396015 565732305 471190811 988281976 595582204 267378276 665688840 114287248 703898640 646143940 969158903 235788794 406660302 457209232 265230227 164651373 680527472 463342356 711255158 130649451 172333772 855067294 268083496 703278092 765902587 617157167 239701406 805131536 200972695 435561860 607727430 924680966 236641799 677921251 831357783 279460538 130854374 407387904 564771332 716592575 452511831 995068186 841208579 463489924 971581347 290947503 58010616 553033110 237832353 75328112 41466981 421298290 410604105 962293269 947667235 651835835 923456256 805467007 231882331 762605073 843897799 221126937 972509460 989988424 533965262 904636966 702989068 963814516 136442639 887814589 57879434 2363382 161340098 98152003 665233799 83036146 144005170 838128090 68883853 6177948 832995073 983454216 310228898 77114713 601843147 402492758 551937270 778793202 38170397 599751912 881405381 534757539 313866585 976320806 48189841 136808520 65416312 746054266 755428427 871014225 475235117 295763574 701537219 291077040 190845470 302378470 709739085 593998962 54995763 133309130 500493606 228086047 847162910 979830169 587445861 169279252 88349821 725191536 637977744 619275452 337215606 453988911 876255641 559468145 418476540 819523828 868835069 767573710 337694901 459288840 843847381 649406833 293823897 706120708 460503171 946940027 412536891 213999258 481905347 722521272 324531483 542826198 458277015 964208250 853487662 91860004 843592344 177534787 870430815 788796287 665853911 699899901 165848146 263571595 153950188 557575082 424549827 737082780 651777545 223477817 249058718 569751241 939050751 573510246 944010614 555779292 531670661 88610915 231379504 138620539 650645838 677199386 377253592 674001300 526151188 385636419 851351052 586291715 885933927 430578656 824077595 356341703 575104251 366846869 249551811 634205185 701346599 41613672 526234459 906809403 670916972 380581881 143620993 946369154 992765327 579388330 751782170 965970350 833774019 873767861 839677672 770210931 809544381 38040484 632695880 601976101 76375778 811766967 407612174 697077047 998298564 171095215 935332162 179385032 304336889 151532113 886522200 817482120 268220006 437489013 584232993 452217459 19733812 882180739 668907273 834624962 598998804 795252804 972534989 490528108 60617981 3591824 965906275 526886834 551771434 657996346 315647439 363093225 716484986 746842973 801259092 17207230 197704559 504958156 326907553 190371092 557442318 165473941 525041330 98178261 461117020 219079811 248796075 408815504 167849549 903102245 301166225 952907573 22154762 168560765 738890896 143440748 945818195 363525877 152395103 360613148 347230364 92082609 433029347 844492529 259984838 913047766 137127687 774120690 227033798 186472854 564688340 344934770 122887109 371204189 672116876 730003196 617151378 921993170 718849537 553403001 262651415 735027750 671510851 286144898 86356379 666793668 368379556 681345419 120622046 764211723 665141929 5677549 496008362 71841699 170820527 456125695 937397244 705595142 400569621 228978952 75546141 606510038 130499172 218333856 161579105 617377796 648529650 613558005 770606206 396959497 142669251 786043833 730505751 881510157 392978011 516769138 798605741 329998171 673764462 911061264 703679760 749263047 681684578 44223932 810206700 177589908 720965663 539047742 700600333 707793204 759592939 161746858 999045699 885467882 812757306 391776294 334931484 883639220 60515465 541568403 209170211 192874239 793733653 235956972 425567240 364817668 277416168 300864386 249418160 333900853 828230275 471719032 580787949 237070679 299425733 56397561 112069458 727721621 396617576 754395449 510786620 864088543 701239829 859835067 735894412 356337041 532460547 232611002 56301050 653341515 641354136 92880675 584999619 429659709 179322463 172009166 874597180 172922412 120124168 22738249 748599164 69461283 632681880 532053470 797169328 242041610 574932626 439540782 805710518 7680555 168943372 306788020 745693546 572667147 484297938 858487105 493228539 351786289 765948366 912190610 26413575 749443315 810271180 815231807 658997777 423948714 325047362 760527765 901346803 660360745 70575991 809732966 817615970 91131981 316654276 576598677 954159239 765348337 345317664 279138877 648634197 661423743 9383618 436783909 41775992 285512255 270654454 515578858 68624759 788287466 261734845 709549177 605476756 996520721 677975612 85913478 919754655 2722193 276409678 934513912 911214043 838635361 947948213 339334474 990468418 749190985 518333723 828514796 53473181 433976646 158213102 214859139 127412509 42484848 533853360 324927431 297172326 998083069 681580850 221467820 112369480 578799997 229542620 787744150 613517091 816829911 775660433 194339445 213788994 487731133 883459667 630478011 641575393 66239186 202053548 54686658 458296709 868883133 396380003 948659000 239324566 962383988 650640037 177714285 609186859 823666979 922492425 552368302 254430285 4722800 282563264 140825080 59584040 636175385 377988714 915831900 639093301 700548777 579816458 377326839 991234459 968958710 397108262 10409252 518677519 898324024 163156845 600835814 286297733 213701640 615944435 839403234 815919026 257310390 127463679 212304012 209331990 689225386 680519831 534731325 754649777 444996187 194722578 887899826 739889976 949439469 299567489 82785344 878133561 252529657 190571432 871127619 598947247 709971804 671328897 550322280 173659626 628074570 468679742 953907478 189463164 563743415 599209541 705466902 731317371 356581205 218871766 654190407 277364599 621492889 536559609 311604305 286852585 20324841 699493869 850730272 23384246 496480677 405976129 614319368 817071444 615397156 451888583 464414559 754359155 365490146 485380437 7648193 963414734 377552292 810385559 650871941 680637214 427128196 394693240 308601808 173273139 835980232 716085717 173226249 435616194 235877796 939549999 882118014 297840156 256299806 174564807 736094382 351734426 546271686 449484618 879545596 706602388 766944849 440771336 959321845 147029644 615907171 92713056 506531278 7626710 972240370 850322803 602329754 211628337 658453777 912625571 263685610 870984500 864251494 352466593 504607411 172745483 502096743 570238556 928206279 146358908 284771887 81296658 378034293 302172165 753215029 283619258 303622452 450967870 211205953 202454891 101403112 591753630 907852324 192646880 406690953 360958832 214059742 334446755 726546951 427268575 754439448 544962566 484000823 567672185 558952971 299650473 384366791 591774175 594756486 759323178 218427443 598213143 92499442 268935003 565993928 111919966 725734024 515080987 823685165 509504746 711193435 640710357 548833149 804882423 137585489 186631918 535746730 403264210 507797248 902931696 945427609 82841513 144827754 668842494 950211690 131976032 623653061 781432547 672689254 864932587 968249673 190183053 965734302 70362384 696968529 764565473 977715336 55031981 340722435 721841353 57170013 316244636 226259732 240096854 462760358 653545664 347615672 406237763 689078348 464867140 911735788 830664166 494843390 340359432 446363793 823607879 55456488 764430104 618624132 724811715 167699070 323134376 189940052 421322414 547175162 499294814 84131815 71772536 378299654 314346376 501257662 773057963 33364801 116018010 662550322 892591729 727067290 982026703 187164977 843809173 700579040 685995227 227255994 966400749 542553292 57353635 167941464 63961634 182181987 161848367 153372387 46235478 69393197 621105111 196712454 918904501 905638642 615644853 143072560 488485782 763851242 785199181 420358062 857889600 147998821 844309936 96857254 99519774 137933114 633058553 251102594 581962107 391994808 691450934 394285921 820373497 59120555 491456130 295748378 195487764 337570155 86769750 48590048 561301172 371381899 348636909 245118191 842489759 43420423 566532555 186296496 179163476 48624109 180796510 276455062 67880198 489990483 261392138 588297396 383278779 455277787 315815071 833758444 688450324 175949403 570098933 9427259 323182979 922514322 386042298 605108370 172109856 438921031 169134728 198646481 70564495 580021000 13104985 236828805 2570397 410736432 58267118 792481136 687035035 436372391 737372217 994405707 588001817 173855369 246906793 24122255 2147343 666926454 97755417 305392360 778029125 14172337 940107229 715028846 613583066 274089018 62892558 388538187 834372371 888294007 63801821 614889803 274863777 979713394 380218554 519492918 812086922 642230112 221530635 315816338 340332762 585585724 700869092 489338199 597698597 602200967 659390677 648256120 399908961 310908797 759100102 961783465 874641765 273711141 749962355 497614461 740527446 762445674 752152142 25598592 197400801 836569025 435614541 146468920 807953272 710817672 31170168 975688216 885318623 531946003 24487187 626267953 121280459 440680684 996820583 636249594 587373725 193441834 492613968 207202667 910263556 388334429 545597633 424430076 179819294 592782006 528639725 167838915 258449248 89666220 968440477 767241928 388124183 985247128 145608893 253154755 828564639 589494014 602054474 868426292 165902398 677462055 474187264 239513900 45915034 220169364 299400545 137553996 875791159 874400364 113655049 71556631 976698777 276255675 533423748 964928926 621857410 621137464 36319556 802669557 502380956 832482424 77209178 890314248 944579088 148349311 943595375 985178825 694284777 89824732 564582437 299115826 132326406 630585151 515405882 677270645 22659069 637475986 544883989 566351876 547700816 852402462 690679290 647012299 107476528 191360661 252317811 920811308 850943093 499357990 853655753 123420657 550237234 16722554 814191021 389276196 873910194 51074994 781326595 522173090 7822303 83221878 202475820 91032068 928817447 558511001 941310659 896506025 822813410 808495025 867364671 378834017 73338274 706432495 138698657 78421396 510483129 143907858 47307642 370028787 186597843 604051240 172786179 240626923 725566084 114058116 759843453 313658805 282366720 546137065 586008084 255886385 87850246 707469292 757698548 337558844 390729198 681970795 743696180 231990264 339175228 298909348 185258507 889895167 312062888 541611128 556327014 751373216 652177230 362852807 843660129 812759446 467631666 257273998 152508926 484639821 392863421 190568147 151697475 213723165 65434245 505147451 74221326 650435999 411565810 787148607 377765670 701264525 120460193 469775375 926886005 896454928 19285661 566001801 173161150 519501348 524887196 114070241 975392640 265906115 805329490 206050437 853138134 245483578 801028030 741902632 685007769 365758105 641307931 371058501 917782600 864007770 509799741 3310186 849227286 379414547 163765834 194259018 111410455 450206134 332175154 437686927 68531537 653748555 169673815 392927476 312922066 619907622 132784396 394334091 57067308 823227403 499421163 93791394 887596963 42225565 76565071 831415183 456260769 982397794 201380709 916405510 770613315 554142275 657774743 901244626 230879186 452124167 31149156 367469079 396687870 785452333 204759687 450572265 276174411 283921777 316810333 9290637 574570545 771575871 691056349 467415171 633825079 358103992 443065229 694376928 398560694 768413127 387807988 298829919 59904271 275734275 275033296 254749061 175856889 770075914 9750257 5442216 80055055 766580663 914127437 229358425 44988624 798347265 277558293 230993244 120210319 846140581 659289642 798310783 43292828 495120074 629308989 783780150 145040503 606568840 336651854 970252850 812158224 819808647 189291716 92342551 123666946 858957293 592196285 231724314 606788690 934928930 637405074 864986079 253758157 178395461 282389519 724739962 315239359 912384787 696775702 953184983 284657575 736027138 398854226 626313957 255222880 808326738 135003282 77724627 832968469 168611533 68430772 762981476 876374377 648844397 468840523 296008927 767152607 617414747 77451627 215365046 271517735 36586249 585959573 235535323 404209927 591614557 908746820 179655056 808085643 602037597 336734426 4658173 762080357 487023358 738094016 847187531 4264178 4478073 454970971 182192200 230840121 116993338 837981301 41506894 947296427 968666456 331027713 537957573 9203923 150694933 504483223 715909088 95998192 425428099 741333144 846395140 751725897 976861792 318030937 617184667 631713898 758590303 655038198 588994338 676835694 542635742 855183165 31648851 611327652 743817448 883117889 140117112 839034689 140867357 597401583 788944555 645495129 125399007 40381782 308453104 623293701 68569147 426619422 979930383 162131299 865730891 858646199 190181722 127159018 88072801 314118842 225905335 361593170 547716731 615410197 363266173 850054545 355904733 806045539 609328651 816358399 199499741 953124845 288985202 97846053 798106034 842326933 806148652 967063544 766681951 883933353 64283231 317243012 416577081 976260366 994658254 417639159 70772449 255956392 859402601 185716162 494653394 547948580 621960532 93406462 658539287 174509947 566850654 133514919 90186261 48038311 714496102 83692468 631790419 774312944 633511923 567138702 767318135 93031541 991355498 278584930 211651714 389726675 710573254 671256223 356665536 947829539 334109164 568538239 477857273 638317486 306648905 967553644 39502689 569228394 515807671 490244570 530479443 688232465 433682809 842961513 179602228 43594749 302787306 185376893 494065840 767787995 543521503 276142483 406397220 28472536 624385782 445603631 726746990 176230932 999172117 610920293 283736082 255184833 67200315 267237144 66504304 457210418 980870879 32920684 516858452 117722398 672812462 906210766 212317992 171234997 300466773 775344399 606648630 893487102 683747529 251000612 347062507 114626477 491190647 662788886 223166477 891707989 510121277 611255904 37522492 590953148 78894357 845732369 676668732 134529771 905669009 809029041 485824093 971610816 792650916 144622674 319917252 41517826 734598195 514868275 394787479 637658554 863958901 799917647 709235486 745377536 14017429 27409904 23925979 367130987 357246939 838861257 321675170 816296375 894492533 536275756 273809810 405979510 608496515 907709241 326467339 583167511 969118216 741936476 570948148 963337494 161947765 478631526 928393516 378758740 280235220 699000551 821654049 531947861 211247336 316061089 735231726 508055279 597321624 898774670 186366096 607028001 495975179 858478744 83266368 994903781 222252987 966819478 938510652 46102109 421857242 486953261 250015075 499536987 373405616 115819103 449319508 46736172 984811421 716434082 471639603 777038831 183904656 834114294 696664841 389256522 245539324 715946129 814126553 111273706 839783551 858045235 346314758 760182109 555548393 24638762 358004885 823703649 405393511 863390357 688098577 742373731 646096801 170353249 826968185 165768569 948684494 932106261 779377732 42789409 800551844 133526538 444534807 894396198 130013635 162564537 848338406 564235092 316362288 730893754 710836595 902455448 82554071 221948830 816036493 940739375 137875465 575870594 815543592 368728068 787531264 913991108 712738645 378204279 648661448 649705497 919905802 498249578 837879487 220816766 153320822 121704130 846789605 71223718 270541554 89872652 505789416 336808035 259034424 951072286 943243221 836498392 799903327 114030617 836378878 396112932 434900830 827203172 5244304 729396061 169862756 540591339 462864410 638389282 812126305 52546399 298760978 554243993 140954685 617832406 875233666 18043662 188681388 673118396 778529265 318272765 183447665 447720791 944947616 897644414 909539018 471792661 206772296 658019259 233455402 689114299 159970258 346767043 564127779 631504016 876848857 378475181 148449706 590711464 706834819 367267672 161438095 51288464 474003694 99353684 211039399 505930912 910176470 748713045 783164664 389917811 376540185 250766569 231115812 409855481 250250838 285129514 238749826 734236070 6590619 267388687 869252890 852900350 193520981 411982002 760442952 583356937 805838317 112017042 781575427 372230290 803097068 184159242 126492308 635082847 696284266 384028743 531367687 661922199 263174065 376377656 745674475 738955780 232821677 880737075 833642990 500163028 990943088 156214743 903578724 932129377 344247906 94115681 66270886 420791555 735664264 380628027 825075607 761884465 763879743 111598895 956383414 56715287 383315802 736945192 63735210 186061666 977461942 777566856 378787664 855355811 587874066 511947895 490453538 7955885 245934114 149771389 719839884 657674271 535630567 156455863 18481996 146982494 71125029 766144862 100993735 387142528 275599391 605493382 225372695 111817578 892311525 15230369 892975185 346015336 770984183 412813464 843848289 741848477 17971355 58946173 579096362 658681568 802971932 202097666 164521363 314991789 78073351 877944348 941107614 95798479 104852458 628759531 990990688 502344600 972611977 284089899 475372936 320739667 510207998 745678810 738487314 663134086 308043361 955293774 182615918 176931111 632138047 167600405 729950773 283430003 257957846 85011914 73807340 950212887 589479753 561884959 630018062 207733801 159880822 698492556 708338969 741490979 751366617 285476144 688579959 733796545 708493785 278744782 313750454 96459864 942626051 738232805 909157359 491493654 873954950 464368795 990455038 615011303 646047750 230733579 585240107 795808774 639331336 687870970 309942181 575691905 765325153 89326071 553095714 983278932 188589303 370595834 838410672 822173290 552274767 600695692 30619225 237973899 509663606 762964167 816789119 417817522 687161334 971049452 230950584 101732711 883485428 735843050 977053181 495260718 782194957 982215385 227924048 82872920 989803691 533487575 130811621 890869757 511062569 724044730 943476562 4890690 341723926 782420187 16549382 704453808 909861150 116380125 616442013 556650824 768046400 294690287 827593616 321440257 974206515 733567659 244195312 286691752 63138188 122025620 612362096 361246117 564244407 730195394 672910433 465922188 454184965 821126834 967051757 632053805 632149013 944896256 612608591 844076195 840304615 548191718 574289485 457183433 679032925 711009274 355265705 817162705 783909875 768076632 501585389 820293590 953271376 153653343 227148972 514110639 230183876 306584130 156671036 239127980 554161980 957355242 452651920 303129871 193485141 30374259 369085245 313921458 829428854 86863286 231193809 921151694 860817573 665324561 610210794 852186886 115934752 5363547 71294419 302161278 73836887 48292892 275469825 850913205 807838115 136282244 306086313 444490669 914721033 376930197 646657893 377245779 94598003 3133058 11758157 42526930 551614297 46940499 34317856 974065052 66542870 526146911 224154239 95966228 880734351 841429175 317983920 506089780 1999613 400716804 205028754 673597178 29064086 853519661 896586581 655149614 759172193 67284848 588652433 80349577 390044464 924460236 159889632 920971645 57752620 990032138 691763043 767492932 355935209 24961783 285949251 122719704 781648424 47891683 356126270 796092672 130608919 340169136 624166211 706312029 786565370 70868929 148384227 857368092 497983023 483697521 528823710 929453391 918840399 720644210 871864828 782970888 415265527 84819806 938949627 369172301 20582498 944538272 296736319 174391007 773423846 149958461 661682939 587206499 616832592 702689125 956318170 757705424 159689826 397810876 473004746 586934532 644440566 384602705 656206934 8805428 683204782 394472279 119665749 208529277 851701106 176141899 90208238 219573880 515361723 207829467 632270519 277325687 698461064 98525007 655527146 236860017 716256754 311147952 249531096 963530473 133446316 258272132 181142193 165711818 423646895 961958335 207563921 550436848 723294633 782678015 494722962 660625090 54024461 460011870 305596110 515570312 465108657 584285005 951127810 970566324 362159302 819291774 890227832 255767661 708439190 276508873 298731765 248540446 895985460 739626218 961217718 347643524 576326100 202675502 25341837 586933645 394249987 275816958 143291986 777200194 147358560 321594961 484587419 827534475 281344908 537585096 24938131 98923973 256145849 541621392 937201404 170217995 892044068 668415757 446772809 745999991 947814278 785461386 309340461 122751172 848655937 181247857 756787358 466942802 256383290 71875149 889854680 120716447 215823437 130611982 569182535 968646683 61169421 336883389 250516889 680702919 840435795 99876246 886221353 780658053 508985685 82523153 105525673 205538488 252244745 61621420 582910932 858372098 937743021 529006908 226968430 790649551 945875477 614944984 338296255 378047126 566604611 975477158 323830851 814224260 231270138 317385742 378256851 360572632 896009785 788630263 385623242 48025916 476506312 57707161 333058984 342963401 238702219 413199516 843004870 867305757 736059682 294210034 301006210 370350126 646315679 825316673 191541519 872085107 914932252 827525264 199306578 310287074 351820560 211297991 274357138 103392315 567212678 930912126 804076635 883137491 871599201 224458567 882727975 330588789 644454369 748909033 457055883 478330903 185908892 199451473 545466638 108514515 717157201 256859219 583635616 212763570 675792678 890489108 462906341 500849229 331689090 140411048 330812654 255183752 185186884 270566587 360012348 717532985 733732179 582737042 908101061 281346943 625775008 175873324 93631642 299304424 773267945 29692541 172566586 196878653 843655889 832449459 432849054 934772646 361519735 702347090 762932354 168524244 924077641 877957042 349041753 645024426 39134890 337672727 249648932 409171667 141129292 365643819 299454968 573521083 331617448 132957010 31499424 97622955 953801118 700933075 664410260 877475216 668870203 58840983 577271042 713454592 947599565 996325196 413773374 400814427 163091200 619214693 289920271 373464941 452408836 148137617 897612097 800722541 822228289 211179382 735298184 315126922 700335548 812965091 272300723 570922968 581886299 499535052 987586922 38144362 356222578 234991044 117247503 253126262 428326599 415061493 103381882 717126841 140948323 3688859 381243735 31573515 867042266 821812161 466376750 83690287 483574284 201427062 137158662 608939655 861929914 127276838 509919362 148173147 984462659 133239822 342718806 180000374 338627780 491344884 442234979 818206209 759465581 317839981 607940484 893692863 550745080 285839361 313448435 969918352 618948575 504793925 249930176 744348499 963751938 700833951 439981765 615406479 165634354 422806242 45697738 508058207 13222087 264576822 796984027 164655822 473813388 773948767 830245168 148316327 327059294 996345833 121453170 944572614 617579070 254748673 467017896 965754567 105033431 402556888 411951792 166257393 22459106 241885530 479628328 197293802 401610212 128440718 14401317 444104642 770481486 793894737 456466181 605500642 964125062 825999180 58833918 980717671 885661564 42246283 242045314 482858141 645284219 492456990 115798841 611625691 689028236 530424100 905743921 267986533 155081013 627782537 880707668 561457036 741599672 862232746 486699591 914571489 617974211 374393555 95586861 27471939 573125488 692608772 396710658 601043275 3626505 808851804 563137187 817826758 275091357 86896104 757551524 977257229 842401715 90226217 939890225 829361363 825873393 134485302 846558818 387219978 775654752 369256598 227705045 563433310 224765884 743214726 579248064 315720731 450306064 590064447 417523468 457163611 69764946 326422268 199128233 525598472 157609203 447335747 188996676 732747028 955897429 15842401 375273562 318696761 14106273 98168185 21582487 435011367 878214025 939184789 790178068 63309266 318335685 928918799 323972611 848473901 557194655 448518725 456342710 161148314 14886879 133215281 464328921 329351035 296872648 294555156 263539545 487441706 435620999 390944162 299277472 326032093 384899325 767965949 699178874 307444074 56714579 416397453 181111002 430474843 34805238 722337925 159548739 116778921 975968392 428294470 47389313 105622875 725397244 618654918 584830670 516690018 511982767 854296421 807076227 837001323 881594431 862015483 210981506 757764131 699140156 117879089 412779918 105271356 697384478 521202282 282808247 805244781 894174928 499979786 981076742 344890437 832487673 811284190 956017409 403408627 139941473 369580262 782200896 510929717 111848742 848867172 391143568 808436388 537696048 142570421 367709941 764746467 470615772 749227895 361589806 664136645 227846771 686678512 95152266 793936065 379589762 235906234 480398776 850202999 692707512 231015127 503813211 726475156 599157639 528389673 928149053 621138202 818322812 379994289 184132950 892856479 492766901 853498599 907700863 257680038 432388840 745584036 4277683 221084888 229318662 160617462 483070109 338916262 190960330 562380876 189860110 239579578 135178667 15327800 482081031 323032550 680056349 672267143 112659420 476771149 475853450 361594757 97983201 522269930 76561559 95445454 301469386 254318409 837179137 604893069 74640185 27996464 291320204 200448945 981368701 644330779 939659674 284342867 103141034 913213636 367705656 991453447 457988084 648303392 386958548 273870634 758786929 766667889 579389050 626081125 140384563 605838984 356900570 102657409 798186330 275602649 644408717 612794631 766633682 990899047 6499660 9766056 58489178 301871056 759812216 322266653 961564335 636857045 48733579 459662421 477157019 743898098 988684848 842826089 613675844 885661197 199349696 348676624 213558646 795188805 899671139 554284369 195470049 675385398 257970289 67235540 58783126 140432919 452352519 338815707 29877825 13399721 232884502 846553902 546372718 290362984 961431036 91889016 196662558 462109329 387251064 269203913 874799720 418656810 203229668 63541571 228589590 954069946 826494024 736294874 36994346 127575584 600238576 395283322 359391176 770009552 325523022 335198859 948679644 828743940 473841862 545084975 825646184 890790449 808518498 991526048 662344693 609398173 876037809 291500189 52921957 971538035 884923213 963983133 803184868 291934397 547611182 833487939 568390884 300717254 287594460 129802754 660099170 827916247 964271363 197897826 13657087 128754835 641622883 134833515 537946620 817882059 20084862 928448399 380137005 812185721 313083252 825393488 752855819 357946110 775719499 141547562 483437312 151680261 440354173 790246172 528151668 484128674 525360502 544994151 454767486 691548511 76112818 573218605 284220546 111964881 599434968 261453097 208880465 751456511 425188712 708366218 904580278 184258531 392395132 861327212 368553254 901236212 86806713 745582996 12496839 677313026 915372549 244232903 802022248 203571777 560296302 837837487 729826604 684790281 702350643 400623253 983217345 34569188 607060931 648443695 545233455 910411045 688785989 297545588 39215209 275026967 868353920 722522868 370885086 750907311 610835069 135219058 765758735 230234428 819550987 268618164 654197149 859098713 218814894 955280690 360950378 479927917 783222609 888660931 189006644 387113142 851061805 166955732 418109379 164833157 562085707 314399883 740334355 578756986 186486891 756337664 535899186 369011991 651193012 966463332 433465393 316379432 26060114 472501951 781630590 523356560 983376640 674326132 217584663 766763946 824883190 945760790 784540354 606111242 281538587 7786967 521765585 745121322 939113015 893776763 337014301 555832449 107004608 117358807 688862348 379950025 829746315 321058866 17215559 887961019 321476889 376670244 421126446 584470820 431410806 874115357 564040901 35820131 343560966 516704287 620855727 914112374 853547933 780910557 463981178 221201544 472263790 164879240 306230116 183281226 183167133 27744168 859071311 224128626 56724689 485775827 708119030 656579936 133448172 546435908 342024010 660167357 321511961 310427487 945291762 829575609 94739518 377891043 601415087 592554152 167187888 177081022 290673561 954814925 214869169 953918172 322392862 647042626 922721674 110502811 147639971 655988623 189963861 52215395 673300869 107087405 211468731 728120748 602318306 479473494 967089300 428753466 415032388 794942269 10300881 776500474 553628530 258802640 72690754 458897908 261267651 452869171 414773362 900053333 539344967 747806031 480113979 814079096 587041689 178235820 799176524 734969774 841281915 410200273 580108956 290057626 882083042 275926129 782770910 161400789 55053411 398421253 823208700 532187879 330758051 760706770 817936062 77137056 206003222 447504916 120445921 476846843 569418287 968399629 720052676 735892603 292895038 691835225 131160573 140969041 292761722 274479593 804680384 153219184 321038692 890515181 385983448 148267858 425029994 992650403 918600726 535451409 142328736 11756112 789591377 147010086 965618407 371742328 654449976 395544139 86508531 357742325 929246301 483745768 734191059 853659349 533336643 331125751 814707633 861588394 868253862 442922046 889699390 768705260 932449074 667554239 158079859 537249070 236654999 363696373 244394662 928400927 453478570 630181740 992837906 261800540 940847016 745802283 885478086 669238691 153034124 937336832 968754556 155220188 305346384 739950454 759087164 423131738 562021483 743880322 458520772 146176307 321442753 858419758 560768724 273805541 811910126 287379984 70387382 295225308 438337636 32799484 629519451 833353181 877529874 116618896 738560439 612389177 32630400 657000719 389469007 920146529 477399583 202551669 997156752 816569189 430400111 778712750 185053514 274324196 27829807 583678282 573532942 149467590 691017512 904337262 991648670 568228314 460961117 333196704 15228345 570185523 323430155 313555184 520615451 50899769 246904166 404963165 908670892 740191566 168400227 234243073 825435555 309169905 868974785 949086589 14867261 902582376 737012989 597521819 160845646 734357352 878323945 453102970 145441818 322862049 119285409 318221034 883267436 53886829 485777003 600720746 664711976 756659457 256506424 778552661 740115688 603024032 307361771 190199476 800905519 736109713 927036969 326002329 202780910 535667104 935048087 328081307 358985670 759616323 329622010 466818585 485435214 467975076 109762064 188800696 982664908 883516115 809245185 346385530 351535048 846207334 179808297 667238143 21953719 427660209 341869454 402721944 546764078 598775246 474809607 840141312 50557548 626157424 809296938 751672812 458553871 966869697 566076050 185355380 376330291 339202579 782359672 177488122 752158405 494381541 186290156 682996944 387078546 87247042 596317249 974005028 872938150 499260542 88060488 683047416 183135867 430963490 443426201 514896270 462277488 431173276 844145351 928551058 222654223 232457654 253147503 21457548 34222576 119449444 586524030 370793187 867255887 39907268 870288981 200079929 743328457 389606564 226709849 561813461 409271862 411354044 505927497 817893202 720126368 492691181 282549601 457030924 901883128 624033584 337384033 153766956 206331009 867777497 563653405 819959043 358510950 796665809 705588755 46368760 521452378 609478910 311648690 18331904 33169388 819069244 102625279 726729383 787996129 107204500 468171740 537988783 91958744 605993468 277133999 544863834 91691130 498492812 806365188 920920437 934046541 744273298 672733345 972018667 479012875 284283493 29243694 980078458 930868397 401054943 85625408 131852702 586784496 329025633 454496747 390619471 323044910 749741625 78341558 484395368 306782481 810525960 168749341 909352822 984605412 463489078 170556564 356007514 738592294 619333752 942625629 235531482 425887046 17762756 238286886 330180960 725250891 654636351 517671450 735360610 675934664 185394350 265486591 576588060 635510628 571176676 915374475 401970391 499262324 368984701 560970863 727078325 580224785 440823671 255106380 607051794 401681791 930598538 801981981 819208654 382905355 496517588 343061385 776296484 518132005 332713409 467233606 590676110 819072489 702228229 842891509 152599736 683706336 69634982 575932093 832341190 310820889 217498103 330608366 450407687 434261602 701401939 417869564 728454113 151589305 148354297 68257597 425113240 612594554 601036379 201429056 972394602 314572765 853913915 38253414 965452358 58388813 721973545 538232098 203256601 558560318 625595044 580737501 717959131 603786315 342332669 395558913 414304783 435862285 921219809 601590599 548967974 746451713 427143424 35421177 493248448 939323045 391706132 99086899 73848277 505779099 465742319 695642681 49381227 157189561 787065226 111963344 870824654 663204801 926216110 252858220 966363612 898017124 400502864 195484953 492663038 644317488 915012146 984479205 732437334 990374788 824079000 27185254 957078960 767527975 407425988 877169772 181666375 290016125 650555430 424026059 674935623 279486466 532694373 85831812 361394406 286937469 289030725 685530446 458986386 785394951 813796628 965449043 158079572 436835942 795599584 914507100 37284632 550354844 918368181 524885108 942858951 603165203 640286773 785525233 572404999 24864642 658084499 39651330 235409803 966880172 805869644 2877695 370769172 710525102 999909238 748493961 6437585 2927659 536141826 227646570 234587001 958671456 961824926 70056959 212866083 608703595 836022918 850872273 778103174 508721674 51387455 150021822 221458332 11764295 906589417 109431719 429457777 745043217 704149466 537820797 997206924 489877155 242831198 333568089 104880846 22657890 271020166 282211227 336712528 320851951 669401670 151072526 85534713 955794500 400900445 43138480 11265754 518685086 785951984 920842619 302889644 158647296 572129569 385917796 228399145 373075775 389396086 604834018 681922845 139263349 134451578 185701509 165670864 542640294 40649411 192158533 431369314 715410784 48984025 452949376 634584289 899594317 39947551 99671862 204719350 808400044 438993939 962365472 103583281 704087351 430050997 951373204 80481160 548227748 461854742 446084033 598727653 743324033 709735925 244025876 233583713 967502421 283016181 916757455 789895575 212085620 439779918 379926518 171903252 507742825 410119628 719489476 777914642 494489524 410360989 550932421 269932369 457741621 959118441 350703112 926707694 508177905 879554661 154911423 406460088 653442926 807828023 285113506 583287138 885088905 941792645 237921840 369767998 716556028 768770570 312260790 609834074 622571054 769628428 688270401 228705314 328670508 933018250 752827094 243502841 510312427 379582045 269699259 396229865 626373106 456173565 443574137 714281593 762563596 350740569 159737486 205434335 730254179 850128194 487355801 438618140 101087339 370973840 429843384 725948839 890956023 88027775 300124477 864559986 455852506 917658494 792740119 507124249 864573177 526608253 145675103 369400660 25646056 389767031 587113828 40781287 27664474 588993351 46874910 146648698 736300800 762119890 670122901 400185977 149129821 190127132 197064349 951555698 909881140 26330700 581776798 830510157 741825034 420684663 775049729 673392984 763238361 4923004 477335438 637763965 999388168 263750959 713722850 711741285 56658909 148320372 139624767 596721613 692723654 324710922 536984692 950393955 86839655 180097936 530168914 241429453 869424762 347052625 606537429 282492914 628929965 351355889 718229943 249369470 647567263 592959682 449923248 111332423 69983046 892641989 143594775 485511351 904814339 234370693 795637730 696866074 363775973 216984777 536104075 678449066 555287965 393156965 403563692 956252505 190221543 232922999 2843360 352882102 495476604 30414291 763978498 62033648 718659076 509986057 127142113 210148052 671526586 895270171 751631588 359609475 427143047 851799058 304745088 75087391 858095511 51805211 169817956 667380615 547481134 937913776 523197400 18951280 969784339 404344823 388571541 619954858 226669882 538595160 554931861 270601469 971003285 334714269 560479773 917491088 965255156 329116703 818701614 801960321 980899107 173827412 1638243 925390665 908554526 867565607 638455962 258582631 88843483 967536438 230723506 249743201 967015617 192691714 657644192 397497156 589419564 60361994 741744761 644076086 226169006 113881388 381578213 901922416 608908845 193963107 888084955 597587779 425038141 577215122 857129740 278485650 914551343 227005983 785311990 555409297 84217451 957938078 990167793 94368205 437278847 132509727 25225892 331882741 382981052 947633001 782305088 771955490 570385928 359758522 380391664 944440233 715347880 600159000 911164043 146721338 891579916 927654289 159336743 34738642 438689284 894587319 273610233 164745364 504147266 35431225 871028016 395582676 969954446 433538610 452533723 871031407 315486121 79793430 67447233 92726630 245983145 487619750 761022440 239154843 161025576 667156298 447543895 583226812 660140204 317447054 17326866 146034569 582755508 541562269 408440474 106256543 785920783 691572476 224836388 446273417 993864676 601634034 59397355 256354027 960407970 817824435 263152229 333071674 51212559 107694035 45087100 840537482 73056707 720388132 329448953 99523333 243580381 756864183 64676537 405794674 249974409 45885675 999974139 564575426 729002800 74003100 392119186 105012778 448284210 223482008 966472244 384939338 640970490 682503802 563551658 685379363 99963796 46150126 745596851 501441372 989389948 947443603 568571036 49986874 397088179 404929932 258613316 947825493 509484008 412193843 780233897 530636826 878265132 575923257 745999304 673931057 12612176 544074877 465842353 745068870 891903953 840294309 734455112 763397122 541033925 304359957 939328345 526513039 730467376 644233451 455886692 660969768 209445394 424643850 891499460 421762561 699803860 133660846 600076912 385084478 416333056 457927812 88034636 708630185 188544728 895497982 143671459 571730244 795315819 27947835 857638277 916459486 998415937 711692806 854723538 166688608 331045534 187300519 610306102 570782600 403797305 857785297 274064269 362164547 13117208 737429865 582099701 117995355 372365031 894891229 14603331 906775754 80939870 700033376 177047184 447672500 143501492 206069354 970777133 669800462 646622543 456754940 541993340 116212182 403360690 983983404 98617594 901876306 446595145 542416764 105036353 110312762 163105638 651016300 277364230 284605971 183935224 396308645 106759020 950861757 404329995 264141850 204187790 472502082 266797149 974175249 662264679 462877523 126935214 942785947 226401841 712791275 377776068 423209934 652126901 479859977 998449662 106972102 600693794 469820043 749772987 947079325 240363058 208217718 374971987 912519511 835899116 845142172 12175231 44221832 270746796 348980050 387066965 331580469 248544830 126197975 774165672 26909216 609831139 395885794 530609721 841389111 18460435 789947755 920872448 63409085 847860713 833346893 544021447 421807093 957591473 357449489 367091905 317948642 324222129 297426481 721321208 160270570 598174749 977342660 7971014 31245106 5902410 961687631 795217785 84447345 200713507 19914205 647907448 138233452 428406956 867362011 33017148 392640124 434211444 791813405 815999311 662647261 14239675 133250676 691576320 800546904 293005650 62347993 612078192 619584700 704842276 117331894 198067365 281270884 859113344 533875183 336755746 101672991 974205281 321027329 288841727 197233535 724716362 362505930 475172244 846400601 22120760 470583731 55110672 136072525 585386650 657900196 262466078 127600692 574339186 421046667 846301620 304062484 652095195 598539268 363963806 369918140 982571465 8975054 396173748 495822611 46825863 84187421 148204862 170654776 52123355 969953714 444509661 725707800 354055409 162636118 738887806 300653588 782025439 120524025 395332706 141939203 19047200 440644670 793971517 83644795 761631914 889727531 950887435 832236630 729059593 701276497 384537607 587397692 583151446 29880809 850377030 290714708 375934214 934018443 690084623 479824539 377133072 396050825 903352740 643956146 762298411 20362456 195933652 309114161 580982171 682990084 184517202 552770578 837605998 698177851 982884058 973417080 11677635 774939190 773432431 78403393 291144336 620486737 4600791 613769840 545904772 420290464 541880214 695969145 884752788 517669470 704321856 409720843 436533538 418843496 810485822 185441588 707920003 253643026 663636344 77285803 222851321 827733047 983524269 283645741 82163985 441796891 877554641 224913630 354075890 783118992 52113425 945840125 306287852 58507185 106721679 360832536 98710778 278396801 559449547 918286514 658044566 279701531 373289980 398559043 321829674 518912348 346007955 584902646 628523180 484819726 929761430 17487513 149901802 630849023 869753017 748241281 81099340 516061878 917834570 892076033 726035472 571540158 737246357 474856092 147231910 537069078 787661333 454492844 831053121 99620417 7991859 540173139 891081719 72706122 954117093 523286094 943958021 234762431 797215889 369010738 786563363 974760886 927861428 926272701 656245616 568315343 415686274 300210879 32558458 706877872 352938874 638730632 28836760 494705280 51379176 416337954 179589780 167161152 465151447 587992048 317446896 499622861 48436321 711080984 295747947 667024775 5801277 709426643 805880619 480722951 450572267 278218535 88402689 461397812 960406173 363168695 222708623 403724007 735200309 756057431 686237123 169040663 464269154 272376279 303317630 17201039 48339952 688293346 176091775 133701118 722017756 463185730 903666715 437397244 132698684 976725521 581845732 986819308 442449241 471308584 956566511 528194973 983714351 974151085 17055276 441499063 779413465 851923271 651539182 627669735 640300113 497309917 952030687 844506182 296023385 479607133 992687389 366923619 598801966 160883953 376377480 788514201 183425162 477014210 381014377 431729119 388274324 371788896 180094742 253667118 506568307 704297343 655824964 49204133 588943444 333983602 128768877 264162269 186662148 47979339 309601550 847144534 620585058 688180457 230678422 613770550 507620452 741517400 357273560 45477286 613814910 390282605 472472592 912793529 901267176 59845732 993437346 133562829 751749480 638893719 12184956 856443018 65068780 733482258 364833459 882483478 504947516 829716856 915646470 492993096 139955528 404407006 548225886 501321462 753367452 900065098 419992962 222962812 629293000 125808406 240483150 895898925 12758664 793913580 564966022 761682079 376642931 228949016 189816403 486686620 506897340 543289201 299148957 776955879 526063875 781318631 695316517 701319090 834253155 194430885 56534129 40215451 91969748 249281105 406018750 334835098 684602862 109339841 127845700 420169243 778169627 981620441 963606140 21995195 71341612 726998118 117140762 783958805 482032088 157697444 307838126 192573085 460171588 270835571 43287944 447250237 453426924 861318776 832876450 555630259 676015277 579057087 514193867 736606768 55461790 558807885 77702055 290115661 828404633 776557772 748504069 287507833 627230827 436540419 1624429 49075364 856312911 2574984 765829051 97466279 363877246 833936491 645511111 769597934 213008904 442417670 399858256 916057001 122293541 338790971 76782233 499648696 379754673 436208427 249013390 59234382 8745692 36541440 179507300 54915471 924426004 315367455 877335587 820133161 443383256 474843624 334805963 835111534 156093820 216508945 189502167 543094030 291646949 660567147 877553816 528158928 486487113 905588866 993314026 755709050 313657907 361872257 870419212 941617715 611918858 930821080 938246899 58312997 368441249 95127259 294438738 490259450 150518365 483412412 644474411 154451090 837469131 177771127 842339598 428633086 198004269 537387942 190088177 379356772 921286671 698435706 495045888 802525984 171152386 319040923 975426568 105388598 569286485 369180836 890525282 727012399 498574497 577762959 544339518 308538050 549209774 652243058 744374570 812888328 98642122 208540969 34570948 549238111 479444314 400301131 130512325 492262042 100505119 513364518 33732144 894345855 924670874 527885915 733943400 450842703 900770928 157408112 541332604 818352918 488693751 205161226 236831270 227148033 538263320 369677835 342035482 952224387 105525898 928242487 864262356 60456673 24764722 303549059 851826303 869664395 650576390 252043219 451380057 7181053 739854510 651711087 985814418 117504559 83271851 668076116 193897946 632645522 996170061 68436895 657098654 556481293 508801769 133909466 44623693 325209594 414117041 798264012 366513920 848011721 677823325 866048693 157995683 933983704 64001502 459182787 657955305 813829035 280052784 940038851 410915117 421380403 667410741 546844021 6206535 180762403 288434194 241423433 816960108 279472961 898194469 234562820 702389331 479595388 358276284 600677226 540836413 378451985 60062133 401739397 639257132 724956722 398378346 732488260 807544994 902662174 191655700 633194955 204914577 646667032 782106687 387455886 742036210 511683195 371067497 408737690 673933834 906815674 825477686 559228152 720321511 596872874 674501682 332155574 292792848 494242698 966823838 440648635 260639425 280943547 57439386 395333576 470604276 698697094 970169943 406999589 724747255 180443058 204846402 890567927 750982576 706651836 612742930 155832366 886348268 611367145 560012182 947768559 10255854 707109008 469429267 890729730 419861573 122228478 508372170 407880315 514948796 756109741 450512448 310140948 799233692 144901930 53499579 326406061 602022366 217690815 314753968 778105618 761654108 566442146 465290777 69768674 362310456 445327784 38711124 508878323 124079398 943612343 204285172 661250087 54489607 858628923 434443642 536492000 710939402 236698274 799695215 783811313 212418507 131283313 111471257 839612602 587861698 637722069 721345755 589889676 733749484 506061245 248691961 482429335 457768843 556283342 675191013 139623079 353110358 754566429 62486397 857845722 499779698 530230034 682214597 945360818 873426855 326261752 70768073 223352469 52203628 50713497 697479469 478225000 730260051 799863264 438815776 851394937 718891009 508027636 732195279 125911386 54784901 10409844 225363352 179896026 979478777 410286899 263320458 541007869 637201412 302598467 895362640 555361059 522480193 607243157 710298336 564240147 857775195 971568855 264879832 194074737 232047288 885160843 144276365 236547961 555745646 142227352 172881471 97065245 522352667 992777190 226470067 777488521 578692796 445306533 571076391 740589455 834418859 126045522 469680057 13307987 327963998 469147471 678975559 404924360 902273907 787273909 706658808 851330231 501505869 51099055 534863286 681842769 875243316 726622283 804370002 750601069 588782327 863785565 802976930 923044121 613590343 582028999 997304321 747438024 89751378 776052241 498060156 713631469 519623074 380263683 310386017 638963471 435312316 205278087 963898406 105529764 867541061 938834472 590484995 605310728 834138245 994207329 770247946 538112014 939208948 80666248 418558871 664868797 569472918 543954343 254764659 400770207 455746006 291716063 515635689 899350016 861021283 336608610 941282074 310143338 170627143 266139979 447032390 256863605 129283560 366583714 922290076 707210004 726621528 191072551 908577524 184759123 648071271 319621605 82644080 870033262 895801379 551962294 25446545 965457659 56195721 222923031 969493840 104448433 391310760 393085954 332069315 764131774 236489074 293427592 579407783 105469181 393222480 287207282 25640235 82849457 312933633 307902468 486536033 610621378 511832477 858231551 637900351 520183204 959079175 960179281 111748685 887073814 172642248 279860385 484394537 802916495 496828496 439920528 47956559 320745116 935824808 7172907 25475936 432304204 278362151 23262879 834640603 541344306 280251437 159442667 562453521 575302351 867693883 553581127 631851983 982148544 784532019 726753545 577200254 135898477 597748267 434670301 11371702 90907983 713268218 871286205 322518486 6485792 54057514 115939069 977984275 283599304 128691971 491478761 387572844 90987490 293890123 398046184 48859336 654143513 743918106 405354030 977186540 185204585 568777647 49790556 996240866 10703609 120324119 116308928 959961567 802484824 356587261 950791417 612592849 176230434 398498026 792307262 929989295 194316658 12306340 260831544 118806638 721878465 762236555 165670801 916798331 153871204 615137687 581116789 683016673 643633537 980918491 597587808 332559866 591846124 450989668 269834683 3812531 442042236 694848222 299591820 925590913 497354979 954440134 850982556 634439510 359846522 588715983 221943141 953719881 553910702 634879018 445677917 83053582 396463564 318540041 560365395 240938228 597626253 547843006 183980519 454727701 236207079 629094559 977596734 145476466 506708587 737542719 422131613 902079906 428210391 514169381 460455672 290845532 72205752 369744005 394801295 323747809 761103495 763157124 214580000 105163874 455627301 354384733 893112526 400128554 498728719 662900731 430329999 398665533 545779739 278530379 905404642 666371800 117378505 385917900 830285813 676277052 597686438 765749562 423897712 802253800 486302952 515590101 870176020 779178922 187534719 953961095 882327829 777864860 471831862 12107772 521441669 804983535 42652937 851330204 634751026 566509896 308570750 635290496 481367352 422763758 765249672 209317453 636841768 505203760 403430092 149601283 278295979 884424793 717680726 398373655 242230122 188314402 532951078 428384589 74719738 445486201 879734300 91623750 12556544 567084273 833979530 934091752 588238148 425325964 790733470 883603867 387089054 840813226 844420562 345355642 905049135 191151258 87169514 987897628 308847570 225679606 176291112 916747431 249208264 250328851 126742481 538150422 422203187 302010208 152016496 384948682 801187054 394945951 692690276 799329362 420076371 148992688 487638944 976820302 189046382 269503967 621368864 280425023 215684638 734369178 47438004 46110882 828734678 284771210 766236406 175840420 732752387 368940622 643022265 236962724 78803746 573028721 755975175 749602134 139897626 577805816 919512591 65581380 118254345 115638687 173319399 725696917 627619574 815946615 551837636 954502629 813204137 33820341 643697030 163737210 698224303 697594512 15604825 374178177 466374137 60495506 971070648 578741996 578230181 603615216 980109660 106230092 822616995 726694789 689133863 925533544 747088184 801352623 601410706 625874774 575777155 281931594 372278301 265180327 203045265 375207292 580964727 197275338 755547100 971979306 522505874 642526515 121470696 8361248 486685997 390662294 85618769 45252532 495497320 85829261 311251869 206195537 581339394 487311609 316117972 949763007 853155118 932298186 84111590 845578802 557303079 541045935 733118310 585834075 338796394 46199991 17077438 380504945 104926375 432963872 730835358 569003339 242083149 18835873 666707978 256710177 353884568 963760210 164131370 986732099 772287287 620258217 549823802 742038489 206762056 799883662 882726762 799529828 631838593 479474850 593766489 945343537 450487110 569608631 914881460 59137618 812129310 812016350 967754977 255441464 960643199 270713659 446233152 891707262 275914480 843248531 131303159 838872857 796596557 561989531 800124905 601884338 380090277 594414452 626891524 579741173 929548695 619347213 672314902 679225086 256510205 859767685 221417134 196800193 348830655 840041260 49714856 501719736 129957578 604297163 288774961 205292587 215710205 228108448 53327489 83082136 723957471 639723603 529672559 432998248 384186845 919492252 514168087 545049175 567223352 927108747 171336819 80563625 528668784 109266844 108260243 914316851 968461411 459784022 815184802 413096064 152813662 307414690 838127393 807268005 896531606 198444904 527895108 336593835 276385933 890596930 8683299 88053435 38729271 967474479 211918275 862164173 90583786 891143358 557831772 346123808 904957207 823636205 816546485 975886947 363891969 374284599 465342102 902172578 559153832 17486794 139691350 539817588 228474061 539149734 432324534 314549333 965528577 119736223 28326391 659748089 622414878 982594822 192669542 702282181 651071386 222742185 72504268 322940666 657306196 443992732 400458517 459663023 415291186 220130989 618675675 946030278 841179178 350612562 82587277 739114586 573432881 441574362 563559857 679765987 173018968 682173166 810310773 844712082 514424630 732071765 645488630 35601412 754346845 388421998 144770703 143080618 940140102 33725984 300339233 371066102 314465146 356804828 548948482 460621069 619335765 382796505 673645155 53775103 308339825 938967882 105730502 595628314 560787298 840075485 739124331 838401274 652994926 99692974 794619156 456832993 948814272 309641893 856141272 174069040 768188954 912394429 480721767 282578908 436475420 44622142 992309824 888586985 364984398 366944131 312304089 306724608 274550490 410027970 879746106 940419267 704422784 460269390 523082412 679948599 610919834 483598018 250449021 225839710 623334794 715038355 178252362 564259197 263589872 445774797 155392186 130447182 475473257 700802360 84752285 96633900 129908744 623044791 510999994 21768760 630065592 498934919 39130536 699647564 169787066 389485868 348170765 284834029 948567264 490781941 534309351 481334338 809911175 167503874 233554867 35231727 685788190 904317226 25903567 977847099 638788931 19139500 321587714 490147736 222909691 719661944 81927406 627662858 918501299 483493753 192193802 158949825 555829582 294468489 514286994 325362512 239784837 147316047 743054027 73708811 954378742 134703640 436330844 128619807 155549137 650144445 861257381 671712826 287753111 276631289 501966866 847878677 648085931 539533397 29032465 185169959 698814556 916016536 167070266 952469436 656877723 737552129 972574404 583858567 412954641 481066673 144421834 295388105 304449378 983560054 601847299 256696628 25752330 168040581 607217508 799621276 210836836 655762773 282121809 376018878 360000548 356922790 701344327 852934309 543749203 849983071 290333017 789307502 806254233 210362056 679140534 210934668 42857352 982085238 284022069 491014767 573569526 420404288 364026529 50358481 63638064 893805799 863427457 75865192 849582213 328020167 46186217 147581572 774138215 748093756 467500277 184333216 527722198 452465903 160111547 372989841 828803846 826008123 762654199 991227830 139035100 695502063 888951698 962520039 231618311 704647535 207310862 529113320 645527045 771844954 43843111 682681970 831935510 506802848 305686591 450481073 791465189 517899963 984912077 400483880 473023846 737763370 760952231 295132172 540317827 729143707 122299733 132864674 100875429 979146051 159825563 498574396 113528827 738738920 417110760 231064211 190993534 176254981 72300608 963244985 821666571 864277007 769539674 959208606 123822017 926102397 791806542 574690292 946423278 442437982 281831550 329481527 841132975 976451880 702203163 330977133 238225497 535837206 516768460 132791243 119346617 182509501 902219753 226063501 343980758 704059857 717538106 101872065 992696546 364117875 285792359 221377301 484524181 671696061 901762697 496733067 601427984 210622924 785873172 914178924 601853082 308153941 624819169 724045515 43394674 636765798 296650731 476552720 566638289 329628523 421861249 67699952 631382914 905568396 230326807 835242277 729871906 917760755 296471930 596932591 552154267 578412632 596547578 783623197 123292417 811172072 964959439 106601324 921303591 531351032 949405717 776267701 951156513 585483060 631802457 436286282 258112292 537131936 264512979 81346410 275265274 276810785 808479816 543334711 736986627 7373063 250418708 457732884 735254895 120595194 49637282 854310803 730917813 451717113 19124657 280383213 737701711 81827442 636194871 362549012 57634373 524544509 312809033 10023490 290800288 156863943 415325068 352370322 756136081 517399659 366787817 881595580 909525245 665790711 786660547 660685783 180268449 397556053 526018521 991805497 965403636 167263081 827471114 8772537 58737886 988166911 895859259 433295762 632881310 943429279 716099020 629186571 198600797 555653363 222348850 364295749 106603297 726964449 185964479 208378088 142466181 221310392 373370157 991015354 691847993 777323554 980931604 111602949 338244781 812527573 649445647 406042266 486692527 332188045 707198808 58268777 451220093 689119022 868616543 848440988 382890469 933108871 397356697 391272015 461145337 78303573 544347536 558153574 73592340 350019543 184197493 857532228 227029875 609085518 141152986 953947764 967260478 528766618 707466623 783326534 593766700 484036961 172331322 591355820 237271694 343257641 100772492 658382994 578295400 73810410 913654438 810397296 58526229 734313657 44233956 7669082 708289388 479809537 621573553 869448953 379096634 97492773 493097256 846576642 817700190 228240614 603594823 229932731 494931649 135043103 942647356 772719435 74755262 445740596 624832601 557466901 578457027 500249530 517483207 594579964 297606364 178180761 898944525 921218173 240200555 912177193 127063674 419444723 355087670 742368742 30918798 15468824 27921744 841506951 69892474 217289323 666466741 362824647 415864798 122164661 530177745 891850365 419186488 914921215 858970978 529309342 22840868 324560365 385638979 437325348 240337842 230908172 683447802 889893965 428104601 484825626 52346565 186901137 648917840 73448404 806128691 785417968 660636088 74799363 262616894 43923590 660310740 268894325 865676047 161695587 464110466 218326491 964939412 10381789 370064453 187452717 878480561 792834472 123924567 351105613 679254887 853981131 495718141 245617251 356493644 873068517 297097883 231692023 99295932 365659756 842147298 470940394 575352216 512733593 344948866 695134246 814059171 185951514 497138293 547372884 760906726 789244407 481748360 496919064 572239484 939059740 112511063 129849304 936392068 262250881 398983193 476607660 961978472 869424604 482008087 72016490 914710939 16520401 773561879 780775114 525623774 390201063 671031742 885173970 229253881 318112831 431283565 287154505 639785863 284233065 348794142 783209451 304698218 420457972 596265255 614337301 82791122 688286174 788014553 324458626 301523508 785307079 444161284 167881233 159900918 336365098 555099859 403648343 92087946 400818529 951228902 933335713 119433533 708100624 933344679 637973125 267109535 984287892 772217016 514855681 516426534 994380824 91226931 378218819 827269054 778273531 589644715 645616882 461615850 640580031 36516995 977828196 661098347 291936962 203804183 767603692 500639810 784750336 979508199 300027672 906643484 929364050 190342615 889295650 665388554 239659329 888449394 493698459 187997960 596786875 539368389 987390938 436645465 658879822 86026580 181472652 468157885 759255886 634821381 687935709 716406397 439764650 483665849 564404214 758622063 64115533 411473870 464563290 462710499 649290909 376882538 928818588 254041903 98557147 283741477 616116950 896659052 654175209 245614865 391703422 126554603 919607462 844381244 30698416 465628702 627625614 222168570 540108936 657120317 704311421 291997254 1120348 445245862 12045531 560373029 246075055 752448615 31417463 740414383 175284030 372476854 945358855 786012230 919450144 12055348 837770041 138981202 565051339 210810505 807917390 133703979 372324968 167794979 26866672 666485080 394499078 641924009 142297520 163601712 98352148 559646653 570551997 956073052 352333379 216347387 782368883 620621952 863130128 203555472 742918761 764161672 529455145 608815720 78818200 769622438 847971702 337762085 286591105 397073980 550291454 635565123 687493834 515155062 25511679 731687562 132877857 549496365 383696832 304892586 847049554 896714799 184578938 921481750 108719335 516978984 263733223 996745364 706457571 908386474 169648720 886960568 931018456 193108431 153569527 975070441 407848186 865380038 975108915 55869712 647553776 618150858 525831498 934347636 559917487 853834651 834003232 868447047 937520261 123311739 908637381 8482089 211859815 388299854 664623762 162972542 37891331 198984946 989532053 213683449 501248402 749597802 188122643 653461089 274780251 274972637 356396018 114015090 513013863 459296180 175410189 150915075 722041855 846949407 883551838 884019941 38972429 604514251 351993752 391699736 834588510 80655819 924864996 325786695 90933818 785164718 689068087 685191889 777450856 46442932 665700449 297047013 773167198 904967500 995130195 6457062 877826066 355872334 45032720 746275043 163129925 93891624 186337213 838031276 81768675 84581711 643960731 225428829 562003973 639463871 631928455 847496929 943631972 969381419 891033219 316507373 607252506 782654022 702665263 291725986 185962930 576910682 60894772 736299560 700321086 191200730 147908398 584716979 843342012 452779053 773484508 914431501 986547423 816465529 922690975 237679008 990272619 350611966 678555884 965284851 33144220 62808601 252599708 82104993 454967889 46444393 671182831 439340470 280968620 4452797 977127883 578249408 239398852 730860633 83448222 211861642 36101806 102733859 990716905 599422776 230853378 545486491 390424499 745583498 668711398 597751678 81254748 634620607 469063792 652772865 73627580 720375447 315089451 245099944 8990707 703785085 259740131 42523841 402298553 262673047 954190658 258139841 830463888 785350838 904708949 779091819 490152672 42611924 274527016 640435570 726634245 288947543 213551133 443106196 212337203 352882807 359580996 365395310 126910125 377718203 649293673 847597782 353463943 576402406 694802160 274894674 235720637 854999942 110057868 107330029 451826385 624808272 308039892 922470383 113282801 110964800 532258349 496687693 85467034 987563480 852393626 277254111 427103881 151143507 977128238 522122989 599340055 538653442 456180316 957767732 179505572 518108374 932371936 326136308 900299001 11869593 750769593 745092767 596071611 581412198 373326304 633502530 508642258 171551328 526250486 209873054 384708312 742833993 38679028 406094936 159785968 772322692 205148300 29232225 878748852 56905440 723476614 859217144 518442464 771679753 772931253 97116319 141081904 731089559 677914371 831955266 772664488 520131598 408536259 876792119 624818115 557831298 611004968 388861263 697737832 164483599 289714796 37763687 122390255 500152817 338250801 691827238 170562594 414601996 646601866 356593839 636993801 107159231 192707560 546347250 126863612 102939866 503229192 582175896 298224416 196134402 586988662 913547991 524450634 848387678 38906439 572650082 780284678 87680012 377589763 259570403 679694640 84333068 814722011 264790413 112987139 779410519 816307403 950561767 782320237 802869473 27127385 490104899 882370213 147953220 198988311 226703726 270102051 713991141 670231782 843606142 115645584 194456976 82881919 327090426 482545269 482432302 111492420 977012207 726305241 271613061 213730119 18888947 761900254 454510161 395078968 362477987 651312801 779965925 226978279 801458183 943370516 559697768 676299605 63968352 554692593 386302455 432315522 849026274 941928805 216941876 385657026 202182297 673441882 976326268 135782507 8106355 257863282 356992935 319243623 525804523 202053287 838210683 822734421 347578190 585764780 892393529 430984301 992500937 313719939 206725959 694608006 130228358 190286515 433248968 297637582 452601196 215175635 868541555 698428548 138913235 866030812 843161006 115291066 589448076 24547376 403783798 129638481 99223349 558010200 362232179 797772819 194385732 132508128 332898796 640503527 279103803 328536854 107343069 815119115 970265334 703847249 173991825 118554151 58410258 267312593 642621137 163639828 775103197 506534962 213607349 606413250 944994047 162630829 626396294 367343043 540804704 37745022 214503034 173254693 804191388 621837254 369084997 897282487 416758924 487855443 807060657 69438823 877043669 800087257 814635789 585819157 82571625 674102548 315365918 724023128 897846659 977811110 766901578 652318176 519107290 78323452 135876968 300919399 133624216 456722221 16084647 360802499 614656302 235648269 566045962 647878759 388937475 746744470 511792448 130478123 838658687 640949411 118183580 460668581 131788298 396160463 520633839 798582811 509822681 979083497 876272248 802699188 82699675 95691495 286415426 48939938 462983445 409753632 889514052 873983662 540197539 935419923 868848095 225675609 547612415 617788921 127689520 581357233 896583175 96482422 978753089 579915793 782643962 601942170 889326504 841332145 673148907 886310618 219313380 107126728 848884076 783948176 168177094 4909731 611955283 806217180 629766434 189311375 409422770 137721316 379706680 83974242 483608954 984166542 492926759 374223801 723871098 122464443 587906284 736579472 893954895 277015056 440051426 547326844 717042826 12567899 296367234 781538388 346162896 769665568 525171955 365241709 629025198 33239654 336045522 77313363 762551709 93514235 685653047 960048761 393440736 157721760 627084737 844417725 288679614 45022481 376776720 472473974 828888553 159810757 768746076 992739611 967068066 958777028 869190853 831484760 564453561 996761893 880322564 510160098 697944998 821162235 507296273 266605146 229489091 478621812 695517035 826630233 530738592 390851815 566044282 241927653 124760748 335497934 346386571 462382738 781610994 815781442 775082392 322170329 561809263 496454903 57858886 858078982 418216264 909288340 831679624 957730761 647084662 545321631 240111606 659904668 308883777 533230293 270802200 133190467 566442743 142766818 533836022 76506055 92185491 43578902 141944107 316841057 945367069 329803406 848198958 156523508 427008214 9233203 422917836 371557002 763968558 318989191 975688312 620313627 399831128 968043094 985993553 657385506 194568902 179372454 382268763 411745075 82167034 427743418 829321601 156182093 758381373 228884182 444068920 416578467 763805564 315292305 276685225 561002028 959033403 326141113 340599448 883194304 663553157 136491632 705402658 137794317 740828050 821666106 886672167 724566345 563702675 234108761 225102791 542978971 374878744 197831492 728653224 183852367 207980451 64557386 130088148 324694705 629926584 409532702 239119026 642953584 153992020 309908506 627386539 30581305 439668613 459302398 508230312 420431591 991874985 909892445 729962329 218585359 389294755 935807290 30525799 633655056 310364961 198127671 491005312 329604230 454162302 243021457 193252901 237338709 863254075 220576463 394671063 690019391 399651242 917116854 732420524 629086070 192641646 515996571 706747016 51380546 931679872 440331508 939707357 192328512 524816409 182251747 160072756 924577032 245893623 923842659 213122408 334062552 169878224 697420124 559463745 641041523 891918816 715477284 828409392 529040018 652513425 881839076 21919142 446621679 178917096 837590542 109611159 263363918 330782390 440023208 230853957 666985884 194579874 49485269 59585457 674149296 955300201 131620107 687557251 298176456 835593575 47159453 368668051 403290074 404263977 129294991 323281206 182371702 628250138 736191621 202242922 839722964 207786815 786460316 316635166 995223201 768135562 169459301 709444282 953946067 10148116 533630636 500051935 577714324 901430056 744026514 773942029 457624625 868198668 710519626 717148237 594384217 153620772 161078433 420015174 280684593 674112529 267325466 410831789 341756119 603465750 982908203 998067941 578545021 936911511 520040078 522189993 442140801 869470310 904950397 661504752 38378438 898955933 978808915 807670838 430609467 539506443 269413521 983202639 231999660 297888453 337575684 227203676 371237285 22734547 882776522 18746875 974622756 122282728 848480722 619681086 257914178 915921007 655567601 609429255 331450507 363891372 35188978 594954581 209653797 421901324 469662746 447974415 52520855 326615826 602468787 599243456 398648121 184641820 758526991 493642033 45593399 792381080 495847818 862445652 82937744 389747436 820863665 318081197 808415884 942256788 899326044 305703531 685899173 943458791 850074339 129511103 491076384 177318925 349406175 643414513 875387593 11146097 417533409 139641737 7154637 397593016 100853122 835395066 807425134 608212255 338604884 441931048 336356298 214332703 915553883 217370370 382380254 592622412 468687846 632968328 230582214 174609349 591738114 73694604 5648942 705567902 18181331 428589585 294856665 809014813 63559560 761615060 771409289 210951854 50055862 194475207 173365705 203382932 443859417 599486265 797387071 933051637 705502003 157366525 589701315 619557066 847574868 141652062 133307373 403882355 805642529 22574369 905197287 183081380 71249041 497299046 633625724 367808580 649253334 961008969 334932323 963036079 155091405 553666766 787582816 393592055 105569107 730092827 565753795 664737492 870140910 134636874 593622998 133142193 898130294 328426889 667675776 529117991 518518880 295901272 220389053 686896785 797588032 62903338 471481939 934976243 449419600 399692419 904345699 344164346 593249503 101948718 921767150 313394129 171392079 15968439 625506232 511186027 296793572 376238858 250360407 531517480 432346298 964337177 790943296 199988993 968678849 801063042 122784005 735175583 440834161 61155553 563371799 639508301 330864909 745569937 874794307 105790562 869044247 630637711 88504721 605141027 629231506 520377615 823368697 661855233 498815824 52129711 923348450 172695413 586769938 816075011 261963717 551690037 770511667 575477856 689421896 584539433 743700895 714657063 214334325 283839022 465049648 927335706 286704948 966416495 520624083 173105734 285625057 965418818 914603872 377017150 829732464 955609221 460111988 640008483 834775693 221299916 345756409 599597972 974599163 7394707 781476228 589722980 202080701 409822635 10069520 956326227 98131425 99447410 252853656 274349153 544723052 842557724 826754140 759201170 379704295 874801048 200210263 880202163 532703257 332531801 135928395 938902880 366982830 757770086 222724470 739297311 184679210 897130762 829710071 715223299 556555501 761382086 154386058 373126805 538506175 797217252 236481585 553654088 194631739 925093385 112452247 246301612 73210858 46247219 569788172 843651887 803328008 653709442 153898275 665991020 618911034 216230379 590527641 511106358 387965587 638575890 569144866 170462663 710620530 946694988 290289321 200151211 624528192 169615116 477726488 115296205 699752106 405824552 826754601 7916339 847727655 156087208 268017760 383144731 444034769 273609957 382824281 903702989 724853462 327386569 378872743 213130010 682625782 982151225 945602509 782991375 716886399 432560658 423624616 577955724 719742701 153500530 991244630 883324900 805476199 279104137 422926858 126298664 35991827 190537911 815023510 381403844 17735149 238556971 984462115 392981236 709279138 554541599 167128995 570540958 421703976 637640059 300291764 630114206 21630488 696450892 577297755 860519511 837288752 938910936 739198912 522052236 727141484 613683287 691816574 830252488 257600359 905552906 586887124 777962358 69105346 87286206 802816222 575416543 688714651 767934673 97114116 334184080 213665336 647558850 121704948 87630117 312090238 147383 151932742 553647504 208647380 254859321 512131569 44661383 518256670 680223820 708639331 516644798 768991085 195252450 664860403 766485960 154283421 784021432 488104254 450001320 633587779 943459068 794375426 45675386 601062678 235354493 757446548 779123129 440761544 286631820 708896227 248221336 603475750 965740012 128573208 91315823 106508663 480604995 370678404 175363753 670050399 156573164 590029000 100763113 203603742 505788882 550563977 50628554 831099973 85704682 358193251 132137568 609160209 106063685 937815802 706083352 448818889 991267806 875459707 403971065 47580612 848428544 852169559 480872179 903111414 615991492 478369914 681112211 869084629 421761893 292004905 660149691 613554494 703365359 314442470 463676207 990237557 137921760 965885318 323664526 114015171 978254645 448556391 243699666 851531181 145396013 52405388 541875214 535420101 536696478 26753983 266293434 405355016 426460082 12336059 601329537 999211266 721029013 708776781 774599629 386819846 598438121 39360606 408274354 816697221 854664124 956701868 486062084 921885101 349189895 4447237 793950385 756063624 297667464 655202583 712190732 56720252 569881753 639052039 510777800 476262709 238358957 600280755 603474655 458820892 109275069 194582668 441861453 331414646 411560627 716540851 322442580 50999970 151519889 528308545 354458216 844044308 904976851 60575934 121240591 195404317 558117365 868672869 208367031 296034203 186215620 594688554 72786354 858428066 763712826 50387675 365029174 590468694 140328491 710406955 368623725 510982967 348221693 973611240 813310321 699181600 383569775 947897379 628281400 990511903 893965344 916748512 227244510 270488340 75527649 889128815 100510608 840378905 937029802 562089745 945906075 46598884 719765236 930597123 773468007 356512359 886595148 176439974 863784083 487016556 648601595 265670592 259604864 801146412 472739365 428006366 673682861 239621468 323667780 609525063 11957452 434718309 86238464 8811165 539189009 727178362 662409995 659930363 395972119 108872043 87876386 51816873 879655828 134825894 934341446 63980382 862293838 177382885 435668467 230147476 504732598 674731258 927749711 684726451 755473847 253817423 123430149 401100434 915708356 671422091 142772083 594221873 419980636 207709127 155976685 303251589 279328309 804888030 745218635 278246623 432068164 686561394 25097979 34560811 692011970 96672465 353791955 27757130 38344181 802365113 813535517 90834749 56194808 875800996 412235800 533511867 103827216 329682915 857669279 404187402 269472383 757683879 664613791 374812560 395851186 642847601 154790386 649766107 754568715 630621113 970297768 412420356 390693590 736364861 561642517 291535439 263603050 424406629 669433634 710827193 735071642 372745596 494991275 116938138 372161189 100415391 216051383 424569767 348856380 377717033 273716912 361353189 967972157 46715068 604801868 270642590 69301582 391663515 571045028 663534288 18760040 168501655 24658200 528918810 215473076 175700702 933388546 548620581 700638325 401949260 601255060 669438757 525418054 527261250 857065991 722138800 87628789 383445908 141715355 917921419 986898600 791039162 106048085 62884704 407717530 242115318 337814369 594922177 619704613 754854179 282414710 186066657 629256513 139331813 932737597 431401925 596311652 883472457 388731386 321435151 964107140 403456193 681146085 752722563 812812237 828595707 259538610 724148664 582268413 518536987 755681722 631133740 868104681 879205016 831061321 966582369 664513209 544321576 116172296 921378703 522040362 626822930 262068774 753636181 399073840 24103472 303173649 568440175 8492715 921397495 123967949 42603566 985397425 300467504 588185635 696945302 773044232 735565075 290924386 837503535 55874462 432430952 592155742 439358594 85129091 921525975 597029474 894345057 247312531 638498649 122340781 697919313 646417933 814642812 561076458 198705894 217388822 196574549 252090129 274990279 603055767 9420644 144272147 289387166 176532968 542266638 863786991 748061754 277200131 396400588 298683602 854943196 561280344 42250917 664806229 608060620 525153172 818384564 709938870 141384292 18583420 521729927 702391638 818312742 937712703 425269860 448043378 385268003 498029634 401817072 27382500 888449348 45848865 444862861 743441446 481286667 123269944 94822784 497997064 402996643 207525685 369505941 470014076 903436625 236898806 614318583 96871925 793297199 665587102 984245547 814872842 765100023 260317094 991785855 410338346 129564526 915957204 623201788 787517319 91556917 568898723 598271827 625079857 897631701 883677463 718927497 69408781 920960390 836972575 924801798 580058083 683553985 573281352 136173276 99003337 309787569 428282908 605040524 712181233 51714704 730634797 984862432 976502624 5979664 478252098 820943976 693539312 873354361 54776035 404264597 505147710 972481517 409456235 2703015 191609900 6850306 457492773 578370448 518882537 192674766 809163310 896426624 655967988 764973860 552263252 731334238 341661121 704844182 297553321 205106350 971119796 652996690 294249421 149144073 730050145 604414920 322690763 762172758 652697010 303088108 677620524 205365854 571034931 351444136 338276922 951604632 182488547 963034701 865963204 335329723 294911234 18215448 719697635 783096624 16419874 676125947 375272303 993720614 724825421 880210304 526836214 213669149 404306595 344564068 524616787 113145672 247546424 246579065 173054614 457143229 553115317 152284112 817929904 953898122 231809836 639316753 125579062 13279934 757483995 324122187 895314524 975151903 65867794 559099806 273694816 849314658 861192886 841171895 94358503 124453077 429310568 273103249 172591189 123975347 6905913 497623400 141199965 107265151 42829086 857789072 39151322 472676944 452109740 428844224 4210622 391504400 748299791 640467487 97412882 198962441 818242660 696140324 494855514 652033747 775231655 819365863 166933593 594306273 489516104 553578734 808633138 870690177 45356756 359319439 779968309 229134112 120158545 279576161 246241138 538338465 958415935 632945578 447097700 307323237 355828198 986843251 684011951 94630220 516164561 228592309 105876863 842984236 733923815 279951466 843783043 316472681 51885393 219961727 841371042 774264668 458138496 121006569 303828639 166101130 834382579 357304554 75849510 827043251 445158440 690423974 890527194 232918466 331784906 750109608 128089282 292563094 776708834 846255964 488542203 358605001 549326 462155852 718563920 552156504 348721613 107460331 191159670 961509439 630313901 659852807 462749209 97304440 224985605 214086213 946208002 504124574 964757296 69744234 459673267 94620561 329136474 277486573 205056247 505852437 469240651 17203993 951495069 78627409 739994438 958313395 596750278 713275204 833426415 444401448 400260424 949310122 944356429 263530908 947772956 663233843 107219705 658452472 245793332 195899618 653449536 676286529 63527225 397671722 205510659 116116256 889404500 320727872 23113955 263356883 629787697 131567036 68561810 159307284 766025409 992449263 664568536 770718961 632120245 51635234 829263468 953132737 605844772 847215363 393220861 462425940 614743626 329663272 583159630 842285491 254163520 659219282 903262083 633488762 233011085 657433247 488399531 931730493 370464221 694636528 184301773 685039433 533884211 983807893 260326203 390950363 216095160 47156731 984645106 872817126 508290895 24453298 159191117 359283337 947785622 338178171 944940116 906739302 254621665 655770799 822022130 368201623 907286497 418514969 348721531 849624468 475737062 792453130 236644478 306002795 765767372 525542861 205637466 508503208 954269901 582385089 763528421 939253530 82993089 62226718 538632461 40827782 95232133 330138569 998851530 415843809 34587497 966326514 356209894 580227555 933257132 200255953 170193932 882264072 992177073 889441137 421281983 426781517 190186972 974966480 527671364 639164525 202886011 697861834 257342927 923740723 60730440 449343146 1927806 792447640 528944429 70430581 297450950 534863738 605033522 94140922 913896383 316221226 720778843 134138201 613042379 975825952 142802246 713773724 603768964 826014210 451940897 249472587 184979301 628232534 573912327 889879266 307127735 201878997 756846120 127963736 648576595 64100204 726800398 917172824 452666208 305459383 449618266 209906484 565596389 391777323 861516611 304529933 491886000 144286918 90602651 949713 282025475 894065624 621499787 28635333 312664062 670272163 767592903 715702129 947358254 337167495 305169703 122815621 615545661 472436496 964453919 931627192 276201081 297709923 847956404 727617292 745816930 740485150 842736772 684902742 329689294 784039776 814483085 475754534 100768878 281100128 448406098 795673548 948066490 735190284 29005608 270602671 268234427 143627016 771234463 487165589 542143421 850973609 37235132 802879092 241232025 777895988 446467558 83119914 397773168 817833395 750544646 863702115 419905345 323159115 760552790 273831636 176391204 516894307 583942386 799858243 508019003 175002381 299095157 768315478 535575907 725689662 2119117 994165588 532523875 832102537 985584964 984550859 482769605 236970586 606817697 194822667 808888264 353223366 404872563 445383738 181254336 224702622 420700722 25577866 896325869 178745325 531667257 628598606 727223853 434837381 328591750 336211647 656481518 246777453 207275694 303497652 835178740 967339566 749342148 154531130 804302519 910038307 15209795 811172663 333142894 839296654 759476960 578906153 979703558 229612099 920405741 267418903 734834104 164872208 218383301 563195624 627024802 645298607 714085696 112897412 790066416 986510838 229357086 712149747 934735126 545960618 396042671 137340557 45954413 427337422 83553679 434058899 541121695 489280083 224165369 370414992 267237536 166806846 807296989 711297167 841966874 439564908 829146021 140106978 98466506 836351281 633174460 941658777 137222598 146229643 846373753 961025969 390807891 543128387 540699461 513239708 59557322 813261612 835111582 607776330 416542326 604174201 252922314 846279330 35422751 713411965 648745966 942659638 813706629 494715829 407129295 808227576 355437652 397437335 628274292 683886507 403569316 262654481 325077150 490186743 429369379 578914175 957517870 870233539 940053262 537274821 820747645 801469205 250652925 349415498 132127975 374026660 167585707 557094218 181102947 125638682 485641199 811692600 886974349 355061794 252130289 50777322 69227164 215763371 319801987 769483948 422416340 300875267 213153523 748186669 542212867 579083231 494964825 13054900 181561686 374208777 624330745 24578953 171917806 595531909 618107172 944588781 144603308 22967200 127683598 279913447 719770178 116201232 716831317 624549748 802697620 421654720 527827119 212528661 625325937 883782733 647536934 956601614 793387895 464714318 182545498 872506039 312157167 501807506 914658869 754280443 776532043 438730540 986121449 45142026 619232439 626318603 593057477 942650974 833092610 400900231 502382226 350169267 507727836 196474013 922906283 916621493 101263487 574032391 831057872 286780255 541452310 706858991 302075492 390009973 847996820 685546358 618878820 190480600 290638879 312157154 365160865 559310875 695046988 549367722 920205202 310198522 546030138 883697573 59988911 491967560 910592800 797788298 712616368 250695708 231858875 12861973 725574308 773176958 491050845 449321374 249794642 872585911 499936381 46579722 255249376 50929407 983933925 319147006 349680543 207652358 37654603 276926495 739753721 407289061 851081957 722756448 238207506 130593271 10512168 488486574 358095590 817708804 676537292 49093539 497513347 157375090 872248897 839398970 27237993 641019743 294516411 840144667 693851964 244311267 964765997 660481417 844262325 73643321 1664718 509826249 618447111 441587937 226582175 76411327 84394856 565988141 707999198 622727616 719154593 980616406 537739498 921827671 128732373 146245495 444612333 465670932 226593706 336311553 738176851 241396377 496811366 328860751 836919520 664480656 501336665 232209111 499288827 457904811 110740487 454937781 384347234 269736661 49158762 540625862 304971969 445149994 40344566 288138597 23214407 588569409 164199032 933732758 921736196 729638513 473294368 780090646 738235544 918480633 589799130 354165715 852484468 708820020 695443520 706693921 534881410 334570432 19812598 378571435 732826157 651745117 622006592 591996828 520242250 935228765 648306592 728627983 296798795 775972305 274664454 431936656 649126323 742324837 264475969 284845146 791692973 598003666 467383180 33515606 649612722 822866379 510247885 454677212 461307460 513399446 54379949 26607217 893304997 660982754 972786215 556030050 540602831 760020600 575990630 528419873 175458553 464659930 789840727 411761040 402412465 430375133 918468129 204730433 862506425 625465147 271289533 522302608 172544377 418795102 773660900 761342583 625338089 132542484 253686327 565315379 886178122 578283999 543119815 418679863 191466707 132018172 60104766 849165716 253150454 621235790 847730346 621061650 556768655 123502314 834726239 824320915 417907626 29379 279603871 134162823 577396758 770016535 925902894 303906021 639850436 4885065 167775310 67083050 56791733 485217723 144947416 157128276 60051132 134970309 154042278 941547718 782570133 574560043 854230291 829187396 708294071 701307153 108396597 309402114 361521270 206265457 30569075 367172993 856866562 899015866 97997272 248109221 782177178 217852548 431435312 154209663 801193732 377719250 76202506 536647156 262584657 842908991 569985624 259903398 570814381 927864204 317586007 339293434 413017554 69976105 514896513 215149519 185447454 787209619 859449369 356764157 475285373 883161217 820418515 883476567 184001013 361088802 598178306 452161714 523980618 89395421 270217312 548800034 310045445 254861038 306076570 215086106 896624070 425281127 635697327 820351919 901666489 220399238 482676763 884312731 624587560 639231983 237625379 393587220 747709872 809907550 833538916 83279984 75063772 110138976 997960648 782281785 353097998 303184178 807891402 9291602 928279542 756755063 326639794 87222771 867917659 600575105 727145221 998543423 768411659 84484048 292838864 246339365 269647698 883705816 552307178 639279663 793406000 565146123 328727557 692444911 191538391 228510648 312901975 278256310 296447774 34925826 544130176 902640409 51460780 407305025 952066490 462550162 541824522 821738006 297603573 969100114 528367297 341043189 463311804 440726366 333874957 142171150 683908363 833629113 677636235 660840330 702962335 584954435 931604943 377744330 926916617 573741258 449112609 501335207 28588366 241486272 644337585 848102946 485277062 510731251 662557229 201748947 25097214 868860466 622497707 618890110 847107991 952889785 965542908 362430161 724150877 291070433 816225622 992204499 441516816 308066913 518307942 565571081 492150499 702052405 735520769 893282298 334139399 50757943 647040230 83359883 231976730 997058618 768005239 603909519 664129561 310688219 561553008 81282520 839685137 325642018 851986820 832444049 681111785 358179010 530226885 779993102 517707515 704694259 609968995 129640034 801238441 551885510 209576900 39736990 601333684 663127285 135208942 999663580 209977536 555125574 454396092 770992305 33570488 14265453 74769499 796998407 530267910 802125824 212426215 320466134 328552521 4828360 597632330 461560065 311175069 42888925 601281825 706658381 630884020 430108670 751022764 707337125 710472998 971944078 958193297 210707267 48582472 134276984 423378866 747060291 986554545 865487187 746211932 717463869 282856443 142789305 943224073 411488137 405712125 155185468 558517856 105696663 518818249 280269945 330015380 577214770 565705682 771457101 418772847 297185046 320140961 132452055 642969947 172278404 598267912 158990864 757174887 181475451 593790081 216233693 532312924 787557811 465424799 978786234 727298608 631652862 318595482 559905331 170257640 271980339 203270018 874846797 781279142 599536233 787920412 589646952 373197667 767991716 930847434 636628933 200044955 177914391 35017012 479131498 518236741 52490636 131654169 189023219 774693894 952530949 379646261 37870946 354390145 764324545 388173819 691714080 765047435 533735957 583410949 596604525 23674839 400474655 64297281 491343057 710242840 708577896 464278392 381324310 865122250 995130742 964531743 839009133 133179581 425375507 67405042 12345697 742937839 17885917 282868080 420852902 324303640 168491497 669745385 245633257 170122052 975960030 982301260 435346026 338152888 336423269 29848304 23596347 951781689 686940694 711537727 216301345 894003255 447271638 140848856 266314487 377262486 609516156 454876746 17589864 44066593 150882900 438671830 310712718 529623199 969186283 220518879 795836306 116658421 846995641 487251287 21257547 812316239 592979742 911342137 561715820 561171056 469917063 8827638 860140896 747298802 424777532 54437759 248375853 460174803 243119556 801740607 167442300 745510811 801102003 183308039 638814145 288116815 236192754 622412576 371329042 536995969 812740086 943929065 855647555 605726606 31757015 670282747 888514431 168953377 954999019 261547534 234977865 226639320 576725058 263456926 322374631 945505881 924749469 750165109 524494977 898926446 134808822 191919448 85883608 685201802 863515404 974599361 940510878 244821481 129833494 623857895 489384312 521627379 278596872 175069357 18237181 173737276 248122841 463376899 407883248 921367799 181364816 631771928 621110651 302754768 362121060 711133457 506610376 708186727 568887564 130890511 544885207 107410734 207137250 135543247 639725173 709653070 811887774 576598245 707933455 304875858 194315375 397245992 601048411 125040780 287014081 613168235 316137999 43446953 227427294 954246632 440127687 307645350 543607517 393465708 514999788 66839017 633689892 70820760 742932797 165367521 219196852 819095830 188593788 768982683 210708782 653997376 332866810 636650305 278584459 228303594 568348325 260137711 645223866 622232901 320318247 932052153 76982959 716283212 755430599 344984381 216569649 157842132 783517386 37589242 786612173 786579694 321177222 905757166 919147674 245699431 510783318 573077738 92802028 383613676 692323742 794092325 750137602 598740885 427596285 135021234 895900063 46738647 143996687 400004077 826969296 825871707 928247557 989640662 969755297 704520523 205214394 442950652 938013849 738435791 776044758 649027934 180102696 943647966 818730171 712644916 755050942 558199968 481146765 175180583 359771208 811882997 935481697 924830211 336588629 330597540 424784718 605392322 530390390 685983004 127659831 492447424 739285951 780690335 821550067 425105058 878237575 964292259 747875514 505148499 552007151 153133658 399558732 197727416 581714009 114533500 696852569 36211320 796714809 862748830 810458022 177769354 755325005 747629267 174370321 195661860 867888693 737296374 184950483 897755244 335766199 482690509 241928137 929316697 861978675 564409645 27603179 373063126 239252979 159252638 183343223 181095319 92449107 20187297 660633396 112931042 557849478 319226810 894993163 458042104 733576343 685138177 363950057 651748237 518565029 905481183 719969843 104001441 289907301 136721635 951873321 248677741 53068491 597566729 331318802 497029884 207157320 699196270 177213581 3412527 138481229 665100425 562662150 412165638 985308281 758356498 730820829 685086274 729629886 959007664 83752993 359108804 336294554 805134157 784640516 916282184 911057548 898369496 232678399 540240538 743762118 977622174 153209281 819560599 926469599 193071676 483848878 957007868 662889093 46258451 193629471 360008047 373271535 779712991 529964693 25514631 931028013 127699189 219973235 126333114 810356487 136118843 880862967 736994501 549614331 348746144 90018952 710329267 666551349 375460028 752994170 240530962 604217915 237354854 458811134 490633527 787844980 763883943 423331528 183871576 943720913 889040773 529526615 267240036 605510559 78458678 325951669 893299886 964941541 869765134 797167713 129048298 627483062 574970258 392858875 533957505 453459417 269962576 258316440 757067718 557072771 607347575 392204699 245238324 550382414 187207568 477432831 902205767 228627500 106294897 994231632 485173756 232241299 270325410 86797959 402180100 507084261 851630768 647290080 40923421 556869792 767687572 560078666 260923537 906187991 738624225 300841583 109432241 550619987 696341047 918665470 151886977 614375067 962020433 617936068 182100825 812436955 10973114 465522196 43727727 170206147 129780480 369498519 13573717 954851687 82040640 780832499 350162199 527937057 65537421 989743397 628456238 192816487 95779734 709246362 793823913 124617073 924457310 302665073 963755177 753243890 193853603 763443481 689132181 854229838 394575226 879017211 6968672 118944021 598209169 157738713 308726956 521659126 775676616 474515642 474001008 153934704 158561249 107434920 804191363 360514654 56727443 617805440 259362859 686059186 737256238 385836262 38002657 380442091 667286643 687214797 888858221 495936994 960151015 778706834 935853124 221477509 292545896 385300586 16561429 396464683 691548303 450665250 939062851 181841095 133093942 515420171 266202524 41316098 997898471 237055651 660959523 136967188 372776476 130502697 342400814 293436569 686153493 315240386 185914635 599050653 537852585 588103735 775340448 513081396 582958562 721058725 506507434 523748542 213146077 353542997 900273970 405817156 730195888 179032679 32155244 693072108 198280961 959015538 473046869 206960451 982192950 929142172 299009489 872797021 767415909 298398325 679670355 550425787 711200935 46102673 11105679 28561818 524500607 162102212 175221713 785706914 684487199 478905375 112189937 741056921 461946414 421244435 759471226 344806178 35633301 105121122 22238882 424992068 472946896 91353719 483969331 370026445 984152018 918046948 982693029 115342788 339384859 393638685 881570778 177200411 144104420 814913725 828751956 513841031 661901529 316377917 572437957 5126068 362453594 225330840 404501417 164049437 446036038 625028945 538237590 602366523 873103351 44697758 685883464 805266158 398248539 553928949 179501130 895551367 22735233 494776020 620137621 529473300 902721565 572948607 409268397 98154242 979224699 908467158 844580832 296593601 302010085 221416570 538559148 336299558 453395285 621518390 633229370 326621001 959649441 754569469 640083071 581883676 177183973 173426354 341992674 751172245 520825613 291746702 480341020 920147083 125813415 301855043 248217236 380702375 42194477 348490473 58124793 522739416 303402897 492602609 571160156 719343183 193234659 661318446 113935584 90228436 875864589 144867576 119208250 380168247 993285129 837615224 249991115 618928716 788532352 418833923 616141556 310699154 53783408 872319404 860846109 519615630 910151967 156438514 639619160 390523281 244202927 999767140 177440940 101582844 271412587 977072417 498099476 407490524 887740937 956866277 217555849 838553979 218682804 528005403 7043297 489512451 396671676 390141810 491662969 743819524 347390395 483222130 822354249 958058859 27925880 118427663 459600186 97310240 497225398 50728707 703112112 865553464 935682255 951016584 397002617 210890568 140679274 889198402 745620606 700604338 330311750 285176760 369956013 370163714 669665656 106463443 673541326 600498628 941256156 342021935 755857015 791832924 43669353 301234866 912364097 80879703 276237441 649916586 253142525 636123050 581907450 633357081 512274244 227751878 459275104 512782970 111098798 263880175 209938739 331216427 647716363 170564460 135959065 616853825 501986961 415563386 293663906 676663554 707874918 431047888 711179483 371635159 544016584 111541657 571960473 67932289 883711650 487529825 391718503 926412584 522610952 32793548 533077897 65162742 697245476 66211474 799002066 748490268 280294706 92440248 213609225 646049808 273041870 650559458 947505442 744038147 768253017 504145279 278441751 700975924 990211426 866638739 447096315 312115523 371145339 548537161 48159436 139050311 300658341 785226710 465232781 722147956 102620322 928452540 116763606 982979680 556709449 941651040 258670389 556129446 680143422 408952086 998711225 467695168 273127116 923051270 810556902 92772001 593021131 446932996 487397051 32582596 582517957 452524679 369973818 817546750 137993408 567950737 999014117 3820813 768661467 71204212 285452142 497498694 799621898 849561068 445143120 836680928 135193968 806976039 545155002 723583155 513258298 385283602 650949640 706172208 802826958 641957 610089661 375831958 33833089 554752849 118716091 621024780 661215486 415064825 15200853 568478347 555762876 846145242 869467694 239992450 994660402 485455017 196369418 189511367 865715233 311933370 841028820 620858978 677563148 406416511 643130802 519979225 60430690 455152136 392462752 685231950 86792011 47847300 174425431 738062491 3516831 584927944 579752808 229294477 598318822 168940571 571238664 969722433 115072056 535544973 747748710 683364033 927495352 77779372 395629192 823279997 620815507 190936520 731601716 680970702 24386366 656981924 534637161 144420890 421737190 742050424 595179400 809226037 394800896 491630984 47813971 72221312 433171691 683598261 758193052 807474441 456982239 349833524 671749187 557945552 825114935 730903819 261315517 696846729 500572584 55077667 203424426 953032631 768025295 391545799 356840821 554206456 719327507 997055694 853620641 584200998 341508188 350527919 943203731 86136904 811047388 240945947 38347196 622715633 543322010 848070161 644225898 566584579 410042617 349216904 869710618 154015395 7904708 378069101 234632873 675177788 346485138 747873059 83240811 289098826 122122284 494655738 978920713 541009540 987763795 544890518 803993397 771405572 706853318 585121285 246507706 956941695 271337584 400461674 726269718 963172529 593748947 663616474 657555997 196215387 174573867 111692232 701957827 487576052 894341763 137110977 682092266 630912272 377153110 156633152 348204592 845363947 377895148 346643613 327273155 833173413 472426915 715947285 376590129 376085877 201397228 266719954 388711511 37662322 821080900 850074581 197743350 765092169 650858579 482158823 512904271 750413508 234705072 484977657 878899244 577054934 891731298 44002409 666427116 48103060 220571688 727529254 907694169 327137894 852831171 143708063 125211991 53971726 757269284 459606676 370525661 145462957 691334970 919792457 324456132 299693298 842702291 325673002 456532001 584989974 258010316 246730350 540424384 111784213 308743379 733939095 231427843 80698923 82496362 844395654 713797087 541312641 426587602 902998152 157367172 542933425 473077633 253416633 212945543 179908333 967696638 434553308 996877615 340198651 93604538 297208440 667143245 127187956 216616548 293600166 986210148 391213408 158769602 54650282 743441537 223701369 640738696 563525192 632876628 602993686 960955645 368652918 58706768 120670140 822322310 794602042 428822653 813735809 65781530 478408602 175211163 834461319 625040956 169170942 708307811 884836792 802654046 407916040 716819189 756872288 48623540 197910499 59525381 314869608 630299011 834934881 366579431 462240466 12356342 747088719 523617607 918742928 313273869 670152177 545540076 453092503 56722401 39661143 161733385 191646373 469803686 912516762 828715420 613251186 861145032 19057448 924389048 399596280 135092148 387881117 723026690 631090974 237541947 983871065 777017803 162773407 474989397 471588422 873762534 642274549 455998028 747191375 2323465 563118281 259538865 956574391 358179751 723470300 507810800 410127810 807458821 729634506 804881007 23789120 713896939 788808609 701307305 980460605 492694520 93128585 922066406 297866167 8828919 917675942 935871261 221322155 925408201 931758876 499397959 528033785 89646445 545097809 352427927 872268282 213245893 625906358 355186579 97212892 487946194 123746657 605547235 104000568 123731154 246593775 695395181 512667128 253544687 799741859 632045405 747679243 851120700 477961796 536728486 103145103 779751103 428031217 52131564 48213567 658378511 426914482 301995058 725594844 177148129 810309417 80536390 872047317 178666385 285235229 12196213 195999228 619848606 701222673 32491755 67694375 778462621 983033821 36553447 425424404 146999173 976545378 271976118 752034844 637775661 974382213 745433805 232514154 993867034 801437727 48329333 181176296 876829126 285700604 362172389 592505109 22759934 792899375 946549848 761270829 687432134 4048785 917831529 582300976 187682907 28384201 975010534 992628281 212913396 202200969 890318838 339108364 190962720 528717249 592469461 237333711 79929961 535061618 409491241 66330063 903119240 179707954 122450934 554212924 467342646 515866321 85220054 829088950 44846985 815061826 397708056 362203173 284496346 780744233 895717884 595218507 632150055 659529766 610878968 681093870 717401507 330922673 643118322 951111823 635069932 702591416 730369811 602256249 232823303 980573173 580087004 674645097 665338583 130144157 662071924 105215601 884958277 601900713 892295184 363213138 541311588 301510178 37100598 689071923 14299202 25931614 546632861 139730109 738547578 365848350 247644406 214379848 85418272 329579040 146739238 714846496 849804426 324782393 956952600 680157480 179060481 108358869 858471745 749947179 114221209 216282083 992215470 814745738 694513569 763129228 643477933 406450376 75206291 794595075 322644283 599664227 437980295 919883787 415908634 872141655 470103605 766155944 332664982 623152880 302661899 206434015 664232470 610149010 233689896 683518882 830487773 753628157 220799855 803497900 256901371 827147725 175771678 341944821 209593728 819043045 891934846 949928465 759960515 938861686 21707049 258095914 452253386 479543427 770235372 972971291 625730031 14879145 528400350 743767398 156116037 566719902 303584726 711283030 904510191 580437887 43258112 315437783 165856996 781035499 675076867 968003754 25737861 457566672 675165404 725658010 309927598 783138176 604446055 678683615 658527234 778003140 297630572 127339409 585443581 476258280 522501095 319708309 847882004 611032740 101127141 295103156 380693175 14607466 662356093 999751331 935073344 380891359 604121341 469147770 556057121 34202294 381694381 96134168 412614088 803803262 768595029 471083682 512161677 248107623 876451097 25761967 721628043 433562536 560915280 611867705 614769837 59855794 976603920 734620515 516503967 120266101 229170379 759414588 343418072 495095288 110892999 623936825 954130998 224888647 621273057 956156632 98037139 430687541 281212220 267081624 587659659 745531356 382524502 312697554 216402571 552668221 999681221 434758534 968179901 842584807 745213157 69373808 504413989 396994108 994686938 473339241 742025982 874491760 119699192 224408669 183692138 276944642 296097402 798897402 869044030 519892445 162650374 343812280 159851900 190542373 655093327 377241252 928249440 34563833 28425664 649402538 489371999 181370274 6512792 478442551 356405224 811592859 988256608 952549264 542587749 553445553 351598421 987955766 897202496 137638715 908417176 828881866 979500123 17867869 225558191 257440481 126850217 43831506 222246236 459850539 481395883 535390421 404312698 949212531 55731911 173819993 403511875 756061778 414011497 454333128 911206789 888234369 527624558 432977712 207526939 531428871 684313947 913327765 957547991 409144598 642962571 691110865 789180207 124010092 477743504 707847794 11118029 863777884 461801559 103064189 642581081 689089348 712975846 763360947 595020107 416775987 2072136 926068608 308075711 883635594 718038317 584784674 403110993 64634180 649776027 730728908 753696830 729447961 211302847 231269629 369720629 529206863 149318283 152883274 753386270 803338968 876670915 478295929 73476804 901013310 701346544 645222265 33240518 752638543 839919012 646651845 369966990 359478170 444860860 184122789 34746027 618707555 678518639 678114884 591581469 701222653 49796467 219166311 736235019 427906179 179771158 311320789 522156261 624080391 497505764 701513944 739277036 741503084 310387756 152191396 657979034 638019640 853331560 383064410 794959117 586523838 977951092 758257811 850100416 504116528 810226514 409655025 672946077 660459178 126503299 628008195 433548938 865346964 695989846 277101582 170595561 342792816 666828777 106122620 792060743 866989120 196939353 717405864 194209399 691749052 37162569 621916203 747992944 374359198 560530728 424932365 641988229 181399847 719387428 993793692 374230167 687395249 951398286 228978430 612842505 895043830 538666383 995199070 726197246 213403110 22340980 239745876 90422967 851982591 884124365 546746523 547620215 306855127 165198976 401193478 564030413 254292952 118631332 115209409 25956857 142887135 871813207 836179292 406776052 309642603 570861961 78681983 467498707 944612907 584069592 24933079 150932861 572738243 997110225 704242454 739156133 284673210 327364542 256348991 450466359 930222292 569499176 720414853 566248695 51138015 805758731 460206299 284301885 91173255 68274684 653948863 592478614 984289720 35401635 912536579 336603735 410932736 356731260 816333731 638573475 840106568 54587297 484653246 893658754 34904753 90947340 937465772 862913856 728559220 736645759 609400597 868372716 321635140 424417982 244791865 829035097 153134983 343449790 113944961 912764535 895728763 653531590 324765576 253774748 725025077 279964361 331187603 503835578 442874242 618416964 353654285 962024958 709990749 557882226 729305869 701702099 83159291 781245272 744469404 541131756 744680994 75643367 814751738 103189544 686522238 648993152 65225208 121881260 548848734 215279688 385908207 779774173 111003044 491388091 23576088 931443340 896702523 568721445 359368790 818970855 82878344 610360790 361640312 75516797 90510392 646724377 727041644 286959311 848000498 129899398 302002342 174877706 825310000 258925432 327184323 991750050 705351498 5175329 287225960 719667919 748999522 841675781 951898546 991256302 486701662 944942107 141040050 549860483 612639467 629878076 221270195 517766314 90296025 365479553 19507878 479320511 508823401 82989442 472560602 714270925 30014972 642071289 130631485 965669927 675895361 415671415 705938417 154304222 536814884 393237434 720370471 564113481 214161248 989198768 71586969 153437125 704225884 884075060 31725225 929265440 364137291 508685251 792889261 774459653 249628181 884414388 149028588 69315142 970619761 137647909 205762248 901926175 111329889 230173881 689106391 930743795 111300635 259787970 258309158 226244439 56363110 884630230 839711094 886731679 78642437 378160583 883735578 647514269 152270389 1890986 739273573 986808022 382070710 993189382 547836210 168008238 901302545 656818503 503774450 900117033 983827057 736811351 197747387 812009426 93122037 530627254 67704761 771292221 700629869 92577171 45219774 488231500 247244383 582648748 228707395 877236600 495485523 592538439 206238317 100168058 582122801 548920926 179077269 589968135 589062868 862237522 761751191 318217046 602231485 91632080 138837012 781688552 54635497 376446290 46483511 966993804 73477155 923282734 10303454 157322930 720514966 771808215 761639897 584995370 276152666 817507164 235366596 572463730 170037364 328960007 145004621 595959537 528968751 761648300 70610872 776949134 115679244 669740075 521769468 42247503 404591815 887381605 65141612 957364229 148252173 881689038 989040374 982326247 952046498 620866285 179453234 437447476 603806265 940893581 161309156 844920479 879055263 775350683 362310492 611863847 412041774 768174749 304556207 608890424 325826766 70275651 162735905 378772326 557279791 852936042 948654083 976425418 690719392 334766567 850129101 120086414 418180786 257996615 888326429 135016688 802657935 815155006 19862884 429839578 196982147 153744658 611229850 18893800 933983195 716984442 449224378 843166686 60422274 289970607 973751951 313612003 518519199 121868095 912700308 421393693 906013826 763562274 277214688 555405152 316407208 729928838 771331157 426411870 82440073 530118511 106432707 182817070 366416775 297436196 361305379 823485000 382731083 660584073 737145403 178596461 269760843 373800295 308560499 928757893 327764494 247736339 118456468 881465145 298413222 536992525 285543887 713630355 823310560 926801566 530185282 30063809 19097015 121524485 203918309 415879809 419248983 798759767 546407649 544311247 712828127 392365088 286485634 911519569 272424661 213317658 818086053 15928195 392792453 341914697 786037020 496551002 576264022 703665640 619515239 519000935 788435666 790074984 873024771 414054915 3991514 951908361 793458275 528397004 191078896 129599541 960716991 818272773 632395154 313632706 154666675 857374588 952760974 907436926 280957529 167059631 869221453 848529582 59825090 630429802 631818718 419760833 806737002 972866745 192648689 969978861 982278993 426126323 807134877 122617118 246644159 339951206 219202366 987780487 905698441 747983419 405352695 955161961 291740153 829812541 865639441 634843958 734900310 994831424 141010102 402315741 637059422 818966682 894256294 745333181 951691322 245997784 932455428 540147755 179186194 420005125 987651632 520519826 127409250 193481828 21312844 631111979 573880123 644018356 754696508 997516427 104681147 67324291 565789567 932811635 817313602 241753176 524246193 188140538 83999012 553131391 307604764 412230085 94989546 746026494 671819242 444376612 555521417 485949390 873590103 488610209 462508548 512349220 133031309 440450017 810980957 77934634 779222345 252649423 282531354 372081545 203316692 100862189 138296338 745117814 382785238 184081363 589654290 953107636 827563557 870855836 113254230 116227780 500081523 337334806 471364480 279612321 699490962 469582276 916191984 466094108 817893938 609173402 604709260 241100665 989049749 726167337 689478571 220429200 670920208 366622408 280463969 21072556 446017110 292517606 131420739 955859350 146439655 780627198 26956190 318026367 137275122 334573311 278975652 17151401 994434501 878040970 542254953 540508711 453257171 195769440 361658034 683843121 544754366 476230324 936485549 159233513 383814249 423721863 297970795 131963167 128156818 408684054 135504698 390598926 647222930 37549269 416176611 617929586 206735657 680655267 386326483 254986235 135882956 794491791 243901729 401163254 519934994 823288848 225337091 38550250 311210100 291611387 654584526 406488940 296808631 567559934 501761512 575492709 500900499 470464301 9778829 615624706 605430898 986203388 298609605 745375496 570052997 636984658 370965957 620285863 265359942 756476526 559108176 466825680 502753327 637575799 86298200 732733475 322040343 869752132 300170572 68008260 247150807 147289021 199766021 294892109 758467685 756504351 965722268 533155938 248579936 752696716 371605813 798874155 161473345 143404934 301377267 617670674 234642222 839826793 800227988 34729972 516863862 594343597 175919664 558429370 304725932 259809652 563758330 346047358 815037620 852413560 917902603 350301254 961762118 79167486 791562945 483437019 740445735 462031110 634832419 120879283 789861879 900963051 528791670 353904580 87048724 934312414 503012614 831012117 245199358 375792689 115993260 267326372 521007247 826479676 208102488 893534708 485750906 516785484 111716465 395689907 438471344 817185370 747194333 623088687 715241546 116884449 188660525 932005236 994769024 100999474 951581107 325239818 443387981 734838016 218688161 719623964 160385158 162582303 518607541 480178291 890408230 434951654 745420995 102864985 609890512 505798367 992911657 999973282 336297880 706651350 433208461 274406568 720301156 959170443 397629631 185505086 687140897 189168391 511028951 147973658 442817495 530667157 83316516 824033153 571018449 900927537 41376100 597953151 167159557 88676649 1699460 732258095 792961794 165475318 467293748 807261896 640385006 981500562 545039576 151804128 947977599 420951549 776924090 888092422 361968818 195683216 240542565 227451366 970912645 386245607 191919530 418017084 70581102 304574434 19212219 130688777 302667209 685566447 484592233 116786785 957117070 767856363 930198046 231343803 637926000 782555626 274107612 420309850 578726386 774011374 412736091 440255664 774709567 373306646 146048308 226945115 691574024 73185162 444070407 769359722 320380131 848145855 380953532 213476348 148834327 213020300 489966849 578065143 60326819 356383505 792899020 814617713 988658978 822637941 975769122 271730353 401618195 897190132 719944832 893443249 220206394 14945273 188584124 330412196 343558657 592230277 801806877 209032822 763142359 662521168 422666024 8644769 711860616 190585104 241312946 942268324 56916412 178329818 778282958 237249860 93672830 393080785 59193365 905453650 58438566 42152300 240891812 450070499 552481464 84428870 937634921 860711210 149462330 745082575 189260385 911417127 78636605 818870432 141828081 632523623 969625868 310131044 356884513 261405520 383597770 188033330 87747566 560907492 572347314 102058492 436631056 654012013 404454880 582147437 823789792 392459751 679433155 371257388 997727248 263590386 3911037 338035547 792467244 136225633 646914171 86003157 298799842 855434988 288660874 138986283 343059779 525626584 299428822 225479395 37493439 254510173 251341030 866496084 865155120 219123414 380006328 727575527 79487232 804325427 569958807 781039598 41294845 355268433 731434702 798628131 909341612 724736429 22317316 882623455 304459869 574754553 369320988 563453453 738444378 242494895 299660476 216790595 462759528 152262683 460398976 746702806 458040411 825667710 483497134 700002484 737941266 138457905 225458771 380503175 157032928 573633983 330329489 97765356 65525573 472948052 641540284 612479206 495030424 525381559 459169974 601356960 321231467 737684702 249656952 915771888 514523807 290503994 983713812 587295060 3523640 85967379 359444005 345511514 199517389 545511352 821549034 508535842 258938850 243729580 518667332 395498400 460347459 82428629 681989575 266697474 696764279 576229368 908991172 78238322 814748598 583354495 676034625 909033990 158636389 941428807 437500606 786385897 634482233 91327896 95058895 83598722 700473645 219249971 740313965 736728011 109674873 497066454 356195936 414088159 970161230 155447623 792769583 823109976 610766671 779561392 537212779 807243466 247610969 916230010 407927933 329284007 329849272 817473569 604287519 339668200 690265691 586848724 792806834 333380434 81541772 160274981 22916447 26571501 913407082 152756418 564629261 237100279 841130197 85285988 474482289 334685828 946579109 809344822 468587095 204327068 335562911 177826911 967869585 461523764 897546935 800160933 844667415 124322702 302941704 888669550 72296814 208648395 89193429 786915624 841249227 950230268 837850763 851596379 152641598 372867061 17011064 569983024 497595125 149220306 553571666 996893987 178438507 989869236 809686780 989558128 105619169 988390363 30501422 998115843 164739588 109649697 155911388 187528706 963430008 190873284 109095344 207382104 680693117 158643090 492416617 589030803 203498854 864704692 22476981 670021491 730501431 393157059 98462785 935640793 899388237 291666608 664031846 258924513 839774711 332905934 246313286 257247655 343245964 795447677 655460487 621533584 348956216 395555687 750744900 997746404 49954172 710612739 472260531 392959026 854042154 532089608 697916839 916799423 830603685 14458076 504303234 711457392 970670921 64390997 751646694 597601974 47264461 362566858 913966266 555149313 993221287 394925501 54239862 67011301 6494944 704382902 976817770 212833806 465495536 395626935 558715717 234944292 6983676 634629143 382446139 670109581 423564102 758674934 998047974 349099101 667474909 308387762 890364190 658264818 559762421 393020069 489162451 261825340 624676087 570527350 648690388 189201336 239835141 737793218 42683170 61819398 614620746 195395877 882529940 442519201 807327669 446853117 962255905 979227379 550273684 533167768 904328306 385209746 441402155 714253691 516226877 481976235 794773167 893818125 894755641 883399390 338270824 986098102 546714620 928139294 953563322 277749275 789136322 77084954 970502816 267502232 460000317 561730074 407940511 111703069 395009055 639610755 807457899 4007858 235569988 53524778 135816122 279715572 358124519 72568748 737371794 17804704 580333403 134546476 642420226 845994868 569441370 614378690 73058377 428264857 645350007 335596585 810494758 131127568 266049320 695198453 116799804 107315598 275081106 845969614 831641851 768301142 659383740 848663041 917152769 805421201 615149897 974504016 784224592 520750422 577566924 782294377 753650222 602742105 278457057 917761644 765932094 904533193 319085581 767628716 306169962 128873867 172084547 402722537 211129274 715456424 760216222 349652816 274452098 101598532 809448004 738735152 831696514 846246400 491985441 227445431 642988860 674963604 975032472 604764905 690760452 481326934 915365808 455640323 593947474 924393632 868221854 700413384 151522714 30661721 487073942 262150287 772194275 640932736 596861565 595319505 422879481 224539245 362260669 144982913 965557747 624327945 338158079 951126321 21082149 939901207 106679915 922455429 485130928 850180512 482262663 633721615 955335361 337100725 277860659 664932539 379710940 625341209 415922709 781225096 794175998 267775572 112722006 510622335 867161129 475204550 12855569 616830479 984705624 811750495 601450088 90935557 999448878 18399754 873100006 310180899 605707270 647062364 943620656 323320897 257420152 733671583 418397920 106934754 887770858 845100193 391387966 847149415 480966731 250470832 435894877 438363025 625744061 714060979 772174123 52549816 865955070 743540357 638130896 326760328 860559770 444016239 622984240 704709411 625309202 116496543 435548932 324667465 278214618 247485408 192392315 599505272 369883081 875369062 663741707 256464768 514644943 770295601 283275341 721745936 108221114 355908295 470935440 3549651 734932188 384341637 829781326 86378731 49514690 440819675 387012263 750432936 458193352 693457329 49061036 892909039 850234088 382256796 987075783 203144853 113232700 981572776 893849294 74802680 192577301 123664783 952350112 28749260 371896453 391309100 45828234 89601100 405798093 567042124 395790007 367854298 786562944 219376327 382874799 288624557 644078949 897108319 509527166 688888765 736870898 424419542 857739923 679780073 626667897 589711722 508882058 710194498 402815259 885314468 746015143 231850974 956825271 592773518 545035307 589385094 876494073 815407515 19071063 911286108 80224776 886896100 257041195 679982052 764997338 471949190 411456278 283632740 72731884 865458062 768142669 264134770 950563993 404690731 8161025 858052292 948927626 679027434 87362469 206510535 453054496 374894156 323409428 802079457 306051828 593520097 220216483 348007999 333500715 273658497 705060171 120681642 817221149 910216509 692549127 906958229 901093368 23482124 705016910 575750511 542865257 477491920 833518681 53182156 530945062 391220175 919517264 8933753 714595171 407597137 285091841 260617960 128211263 636864460 412087395 73546508 912064533 762664190 76248852 379633358 386137876 396668628 518318224 606677651 252490814 498124136 307239934 785346188 396344173 553644127 291619290 140004222 511362987 815607567 948042412 333627971 659372516 294517989 109349372 998303955 816739566 232096008 627110672 430775649 257259790 887688162 49720457 446698910 362087909 190989815 137498929 929220318 364302835 41067144 782231585 282030452 272957254 20260650 187516061 533351864 89370914 464290846 169044185 26724509 45907838 206537823 877287728 755787566 423126429 984295384 144576486 154806262 381075958 398415226 119667489 802293522 420641544 47234612 301227314 533302428 723427034 600237750 670082433 172456395 993616131 993443910 398161663 454905253 138947192 459920304 632536324 573497520 605117475 995558324 122544376 336836339 31340861 628890714 694776777 484071220 321378144 797367035 618610150 21018147 874054861 349528282 521839238 759823270 273962018 941609568 651572582 406339589 249693783 655896511 333648105 156111930 932341312 372861571 849051859 184002280 809357388 388362896 721372755 762692342 127974318 691847021 978987811 962650848 235823883 165082345 945049908 655342742 861736843 54977556 239691684 140668428 124969255 150035817 697492620 107150541 837156258 85679933 267565176 878287300 978286994 265366711 610613324 432923184 17897869 562058301 883956242 355446374 471296333 769816994 991042792 13537868 700816873 89456230 893404140 228706808 620482063 867995489 3473788 222332847 510963717 166480247 247849175 592532185 685646510 292608854 76111968 503668542 665717958 117170183 271667076 953270822 905402492 638368733 265410836 840838644 267864591 302599652 606770688 299034963 729705175 465566232 86031755 47446804 781510683 353455934 138808467 428176371 337273417 525367560 397677444 511655319 138856129 754936070 482444780 272147843 222658043 855734284 417991288 995208959 962315400 81132233 487808686 972178787 284130579 272538898 972546083 356416575 963236880 874489389 229660888 536624928 60051172 253031137 680473662 886229586 181491572 109509518 522385688 746682103 995767147 758877428 395062295 688928053 747379986 887058455 420463414 192766514 281403793 624905702 783722631 437917377 292632313 686944487 179321277 825784247 438724379 684574869 812561719 385594980 941714292 247964542 575376197 559546707 406890076 888159202 436992994 436164068 775004256 673814752 517853010 655884304 182986405 845742163 312178363 362722957 133150690 979996527 409383628 422631126 311371116 899572640 972965158 863557680 827966773 78256197 481198021 292822023 165450472 811024615 564098118 740561591 173927240 131433762 993016108 601463197 214387243 16589542 95752792 648684595 472118151 52326960 51437833 277962600 237248315 805783111 703523395 539710932 168412481 28468344 798032724 86988467 136290170 345556943 960453908 652386040 883278573 475919651 287820287 164510014 63820634 34770051 356461778 950742030 122727537 858302436 949997673 793880267 372637707 384892102 593627011 670147607 774399268 703478229 683835686 316392129 790881189 546964717 387530805 713039750 424897820 113065295 774536198 366309766 96436738 81949390 209404860 784443085 207520093 310719307 469649719 919977119 308510813 313608784 571910416 883414944 945425133 911417626 16935763 212720739 608383685 201944855 923287973 971195883 372784391 309279655 255319860 196913643 623267425 829278306 71823024 454982509 731843910 784239406 377453491 136920840 585852911 198450726 163874612 617305005 676236978 179667030 737671209 68467598 611305243 547949634 542024269 792959896 430506474 80437893 54270548 523248690 821618438 812226169 720871278 685281935 85226076 441663963 484960995 695436436 367621658 569861299 136471232 583373249 761497958 952902645 79810669 369412401 947310045 158676485 106952709 428801902 981281706 991840864 16748606 586010466 423168276 949447488 794624208 405595920 141122735 522800763 489308827 355479685 92715311 89588932 897102673 430263502 264230899 774538696 715423230 51985113 928184493 850281631 164638266 195452280 92437768 755466016 54166443 108203400 89770019 147790751 858403400 166062970 606786143 776760022 84406580 439154088 984046195 655112675 8982216 160730288 702863627 369893926 838652584 713815671 451570903 776488591 734779252 490228577 914909432 245265051 991806437 718910276 670248795 407759455 28926017 791868425 195875885 321007564 395965671 30917840 777885693 885250453 634161146 358466582 576720143 59028898 751498341 944257271 558845992 948115700 314365762 442865987 648040236 973686836 828495917 762737431 128492655 515375934 770839018 206261614 67038723 116163313 862515273 244278639 249599931 577786378 944069591 830731510 488122663 912769689 911853466 112064612 841918613 5212601 946482309 921099246 811230255 463909617 209534702 988159446 464814809 431610717 329327482 333008577 451399133 494486376 716638016 435193027 432889591 175477861 700530122 523377443 977383221 449699313 642090324 642878166 474776965 342192500 246725455 406983378 978375165 839001630 558058230 240648666 674954483 189083711 922026581 830244081 208166789 293450122 329832497 702231697 46588876 860562379 219056752 279325619 872834402 120050928 640364110 459570577 666479559 468638660 240857129 405220930 24601581 345628575 501206004 68363338 755865932 71805591 322658401 21309147 375878118 370595953 235295082 396505934 614715921 644282723 661553693 183627326 942900656 289566975 448606442 517391949 237223825 283150792 113486645 985779252 137486661 227910199 158499820 734816340 496911372 554043860 9063753 607895053 767371927 917614152 818959050 104336011 807585249 922627796 80365498 132194715 36623170 890455603 827791155 859935427 243175259 796475444 325552523 906809813 278608902 183560255 267301288 628428696 701762073 742731328 755781688 503522985 924600032 391862527 703916067 50495827 721300315 858139987 997491546 139049004 40585451 691620779 701558261 745849106 849897654 885754027 231900473 590172563 572960085 294173634 139912073 4245966 280251045 547809558 972942966 530125999 170714304 233731832 93582385 32540572 183139929 148631125 495745119 55497960 788242983 834345057 81098209 683479142 426602077 47304239 728498926 286301936 971683768 813008237 311052837 821874668 161701363 34549190 112456222 684986852 668704980 103481239 948763504 398463900 977847169 147915549 699343253 943563337 111214027 670563262 742450379 453696686 942846654 616455752 261881964 641244703 45716170 574578925 422715438 698332417 899075532 765583402 203679774 245416775 655519765 623660543 673295958 685709216 676184292 99637431 653425106 783510583 341212872 373235158 593967234 462918965 222025235 436953277 567662509 706631177 669980228 22348567 257620392 326754827 850193438 818322819 532636073 606390231 573363999 815284977 735101997 363622298 753163602 996214422 137107254 720042621 54753751 544494350 497677140 19052518 837882718 925779545 189845647 666022575 285053081 351545309 343848560 173250336 362187576 94864455 433445639 632926320 681502460 493578581 422151012 354950897 286572952 133734564 395025405 851332963 541484681 767651763 957508154 644686265 824331478 310622261 621882493 420062396 895094687 89455839 730488350 721231564 524273439 881660953 532656899 604128360 356413692 563610153 927055035 398288363 495637217 337068470 641726682 156825984 337469674 840439302 214169206 481822503 288725806 117101591 682016814 509974939 621686943 622830054 291308939 609701109 795333116 796513739 776431755 71818180 335638085 280850763 629859267 802980029 369420171 40321752 476538606 309396000 19887331 84185320 254610490 187655427 821515986 632603504 918645733 807608416 749288232 270755020 409942354 775390188 526439383 100646273 596245648 869858332 797333791 44095017 260397397 942612501 7595322 41987088 725897350 5063625 26620792 795761501 243047433 671513906 942349465 227335033 414083990 142684981 555202989 674737456 651902009 181116055 77627646 455335782 717694875 634282072 201290749 448064833 25464624 331351872 253708514 308738962 999982253 432068574 374933049 162738131 555642261 986306126 345713891 775488758 65668339 91476515 505662305 995298861 771140218 757145456 911139021 218724186 202754261 449396663 735877256 417121457 620691250 85377400 543308546 482416358 996706602 421743140 338558335 172477704 785334189 684371040 572403592 532710500 647455206 581779718 276901309 972304127 586183004 434607354 829337837 990775377 543545720 101238241 727121868 965959685 807991668 590253343 751524065 243082169 413154039 873799201 332380488 843234756 985603124 908691845 342826037 723398855 162459633 772589082 271737209 136246057 912762316 181515001 321248897 412499317 115703973 989560739 247470530 982523393 8674054 116367646 120129585 291397673 37886555 816429610 296128175 887388049 210179569 141287744 274589283 206754336 707567448 351260389 138836370 489473863 938763023 696372202 981791602 417464887 114564438 858549911 909576535 310103663 738403259 1962496 288248957 293372033 548722584 504683477 231135951 571346449 633093564 593026562 109845206 214642206 148238421 471917084 822771980 672413526 172746498 231184949 780480664 351538960 381092188 735344327 699927811 900024023 272029172 918663824 335504872 496535257 127135624 256472247 609774901 486841630 501684357 849995245 161709943 215567906 573012927 280985506 816755672 691323949 818505783 730162547 649077448 582516024 826844292 941659264 648528214 381420801 322843812 205764107 409756080 347058039 865291199 953871244 26090249 264533898 304661677 455377598 174244670 575883647 890417962 332181894 107171829 648890520 15595991 783581170 163923081 427562525 508734081 992152927 266676958 354827315 693875816 149224166 405776185 702998727 188725627 575212227 261744309 765170070 390753279 642126919 297315642 79020514 935960401 414218388 108785242 602757504 239015719 377106820 340634669 713652584 834788557 439974384 268470987 497062953 401658054 14806434 471633208 494563360 749981742 365313959 694244305 351091711 901562350 815463633 337811210 15898557 878275326 114380271 126961388 646090655 875167759 361054503 191588975 15911957 957665861 340361986 54187973 979799044 207185344 167826824 210353370 901590054 171473761 223270025 840582585 975563394 576689540 301702641 808920797 775215706 290975379 970800762 392053561 409754916 958038846 902533837 820146356 146439745 190768031 989264256 318447690 831808337 474231694 163554291 122529852 102250178 27446026 18020339 536167694 304144821 880826324 994990732 145736001 792894110 240158843 984635878 651351844 172634670 879594086 920756554 887603405 816085238 263101237 763709066 83483728 129704885 373987270 380819761 25100958 24079553 498248375 889072463 340824609 772058823 451412643 546906176 904793895 672371800 211120953 137235547 598181758 135469744 971618732 423154292 531804548 695004709 786561870 907466777 641562437 208144575 15285716 605716884 96313658 487746558 252788185 201030553 546069972 867610338 978779448 61832721 470249494 243318481 770882027 742442050 780359915 346090669 606442944 628154038 785801091 806910036 429339442 322826561 902388652 172750959 768000120 864876315 95825176 323842939 541610726 866499894 888344820 296852896 578203412 550930867 563094123 50552774 294134024 750878278 934634325 578601910 172929767 633673135 768981937 13346534 975270010 233293660 304232481 517227243 619902095 353976374 957165854 231415732 725378172 650417042 130809864 531324870 573700829 407927753 233730689 366673755 743060803 655089866 900924966 587433834 377745660 147705806 354112392 991687593 850837867 575639846 318105354 55562153 442780227 658237008 363803562 463000723 802219116 833489957 935848795 385929933 315827586 762214562 570392324 685922326 373244176 888081816 997699339 141302018 83189220 169620402 409428001 397668155 770980244 3278102 105189237 506941270 887364021 849535058 68101545 677943402 820598377 355346941 17371929 557701572 274709695 714284131 752043343 84232775 329589091 768474569 426925034 105905891 177645232 272343960 89994685 886441062 875284135 133623917 921105600 192518923 358100867 902732942 130927559 248080588 232709839 854431881 38979375 986707115 70024790 617877045 508374056 568865523 416013791 41724663 898714306 425414524 179005096 353318543 76729300 982227513 475119136 583360553 840707960 489031308 947580974 483414231 992095092 673601401 479619244 217151504 633609382 129783511 170701409 646249549 274746846 763764458 762826109 557292288 200986272 819910028 119417900 149400646 242252017 275276197 879785216 755063737 902482751 960759694 408795100 970107249 462576683 816420986 959755036 72576090 711566437 73043511 75467348 104762937 273793848 758472555 462117312 753892295 667452491 314503541 694752318 617641543 981624607 260027054 968076213 946890278 298570797 892296364 396046157 308793657 821945166 248242836 473425957 321603803 452976622 153875293 547126752 971954516 13786051 240100885 407493862 460025073 40968027 230612529 85455192 699940504 907476451 783223800 689581075 455992304 703554477 839073456 559783442 475720397 889002726 422175057 50742557 385523940 255939547 328561140 413213435 664904489 284180683 995200555 860814122 272823976 663970718 745163168 168244258 550917351 820230472 651560395 430917222 890290709 904781981 719253976 337680163 648770519 940768534 807823204 402240199 782051833 270997355 18198025 500051437 162005055 939627059 686084731 534155979 689499092 506653 952108229 696622340 884177950 752061299 739552599 589331236 584953192 143433316 470801569 10505643 652273331 954878580 430407587 820373101 898257630 414996282 461039048 236507213 718418757 458652811 589471051 471629476 436664095 465124024 627490158 448427200 123704815 894947659 241611291 299299790 886959010 10962592 84104907 298476613 674710566 993966403 748238041 955758856 652188847 993324445 625139946 786004575 219002573 823850331 221990732 783508661 352539645 191313470 630925221 929943787 83943303 892726485 924670509 706067202 994373085 729505330 141157386 26435254 975356321 786719579 921924514 312966938 314794084 720166287 414017801 753775089 146246317 610970153 287030863 221908155 966700206 583880204 59350077 537167990 903695587 168111634 249905468 823410617 600998987 924399545 602838052 775938628 688899478 246502834 677157491 525276289 975002277 656286822 625235465 528577118 119277170 221324390 787476152 891925495 243338012 963166144 792690457 616742965 446754871 530815926 546291483 577378527 193057424 634890291 326244490 788467006 759932467 278710971 339895132 274547752 925536179 364672287 267047607 438189083 162686970 715473811 7823236 49438613 652263148 852255394 815615925 596039132 675000892 958047217 928837340 261836130 860026313 355560180 885886374 858701573 613289225 561238019 6011223 589442231 509558903 561024990 176588853 408377165 687650415 242678441 888713582 196628249 522188009 307524667 510604739 469619315 127371505 814832979 560672311 438763025 831556581 476465392 800455895 472974232 825373967 73497149 486468175 441812445 889674527 913833040 773127202 734381564 845204334 861298120 925930687 125618065 783355949 885170109 959983261 504473332 988211086 109055100 468567507 129403426 428952736 69544896 685560548 80856775 372069748 653352291 497179329 631693264 651887733 528405177 713804877 298504804 619247933 564810264 247130902 290011546 521311506 359242133 172455805 752314293 675173387 382448241 505483473 197026039 649931264 63286836 877459163 540045483 517961389 5268615 104759259 848758649 898260287 910777258 939691611 607470230 324171207 923103966 175905533 542025426 199823237 318594531 754942270 855061788 116599727 857902515 934385965 311145825 266195971 876115196 610342424 687957252 272005254 163318722 348190781 167067419 570172061 572773044 996488905 964083680 40557365 485655735 146980072 405676515 910814934 25308515 788517643 61042712 818445589 159752031 306728517 959034768 153508973 436728332 503334374 531624623 143942737 120127961 472033709 569367647 953846226 905843346 226752283 423785179 283635515 37964088 800334582 410194837 764319777 38777667 248720693 999039873 586112039 660778120 463469797 880874166 384746275 432522449 633432525 826020669 585091764 65859087 807700314 734236058 541071846 18921020 948910000 287226608 932744233 919556075 519210326 382436089 535738311 544729441 343827063 376791691 740288380 828539790 734301831 229763106 131864163 473173536 401426586 948744774 6146521 209089664 568283456 418977533 649666816 971508624 949008230 766013781 992884675 519106311 62570243 891988249 829101710 833663699 368847862 222570684 752425871 836869410 953798163 293590448 256466045 970371114 996396607 35818284 936325145 974961337 407322200 342531851 852035655 633499109 709050583 781773191 865677524 968701055 548324162 966397552 852484639 425373878 788591018 289139997 401715725 843791308 186531699 763372369 618082883 157032062 457806799 746387710 242900733 849077927 728531946 810787886 646743715 670371418 632048679 323024324 788634341 985695547 946473287 195552354 287311603 80619192 295623493 208222729 340637083 461702236 925501372 427215044 673014614 90296867 414082787 817172422 901085844 778876646 580003225 388468006 615124048 91012911 21093715 57760274 419248270 645993699 146697951 80649895 765869480 806550844 795068452 147009701 307952863 931877076 428155081 415956110 88723178 720883600 875650391 755691989 499478193 674471258 133200067 260866988 944235563 990313737 243332886 117680266 234767115 746153486 923493031 86309079 985076323 417306872 945748760 814762568 615234202 727280978 432828253 66902899 771975562 100185033 797774280 717143542 352910784 881752646 807688155 186962424 924374752 336947017 381184433 397214072 564502978 491733756 424181553 991466100 822671575 34532300 154722024 293033334 335025172 677998907 300682365 336644443 463667311 690034085 97083557 186088924 769244390 110314523 681720782 885033054 888832351 703577972 738248989 905551998 394319660 350388974 766083899 78040954 821393602 199835527 440143547 20412751 96483034 401143656 998064106 360962409 334057349 812108046 820630011 489440532 146513766 585052825 803601449 967965339 437013216 68834758 607390193 389022234 570406388 400412327 102792703 651699072 529236135 623002473 278895350 779883341 24319712 557391549 787983459 670588088 203055657 644709003 785462563 204416566 549863774 402147289 45365513 123743053 655230857 983441493 106981956 710689076 533888869 168953419 634236038 661238121 563101434 742378272 109474791 64078201 913447541 491760581 168121394 841037515 649211533 383811667 875042598 594001702 429102510 220685657 968966367 642578419 772011450 12999347 976354558 190583590 51225219 25120779 139134554 74258046 464554492 854607913 882218888 375023257 657476903 797148640 868275501 46764419 750014644 831466527 52195657 947257810 937954121 45302868 827884279 634218078 751749734 929052220 405764952 712154621 318056543 586255787 476925011 80858263 220352760 567006957 475553705 47557932 802094352 288650082 200936519 145348606 993930423 394525477 909858974 529039467 637380280 809635496 841666525 704642576 910698711 103766213 523609973 136482598 901203338 940810018 290980638 205245294 834607157 359244355 875968991 121066153 685145534 6382963 450565512 350674098 585149352 152627426 499045944 987039136 369374307 182732310 249376322 538938236 79681518 6940737 298634958 71105631 787144745 534965061 875419947 798215031 899342986 304636215 683953168 438862270 79933619 859621285 536756894 407738698 645209933 596774401 454594869 131318903 488145932 542818758 909630320 294348993 328665626 10431142 341268643 165870045 417214519 482286886 658108025 948332341 114996619 960809900 67373815 633591735 202720336 45384329 957820137 948404363 277162808 262703811 541714150 294970975 298925833 608294968 88825722 876165170 593791717 860314220 218262760 20869458 622074415 707442993 206415182 290896588 282228997 120752024 336507702 342972874 928971513 157407713 900518375 368809239 155516004 72839152 856007941 352703299 779015375 77335641 769944264 376786293 873500182 627386559 653923821 969134183 401995918 752478119 510402665 915124372 895220502 769159687 510390735 880929546 245036401 446673122 328719597 665479281 911583315 906473427 592183566 530729047 828587788 445448960 164703616 157074596 895074996 336862017 161456729 855048938 758784800 351462874 966052613 34784627 831819613 79715536 201094491 14035427 572754259 733466694 7733891 791461369 241052786 370030938 98315628 401178458 27974166 490315535 361971965 61361044 961080128 4512825 671101535 212000356 671499334 472682198 133946224 626224329 926138982 173347185 458023868 495966165 190326126 784421886 293880867 19926052 372159178 306855431 431976298 914788167 197848920 621650584 643213364 211276349 435263807 622736294 989161797 396871774 715855644 484492460 553754274 314470062 455576316 821594763 257925526 468980090 573585068 486254827 90934479 345605375 665040162 877022485 590271613 396200115 671766998 255013751 764031847 519123005 741725719 573732897 617525718 560968922 356575006 913061638 959064955 296253164 250501160 414261687 908561798 412650366 38133466 324513661 453589378 429486041 114881470 489417024 668919453 554129690 637609957 645976546 637354580 231740030 734904270 573819997 532728116 687055385 112002030 447749594 2056713 693528361 844143217 565942634 8363357 824760631 22078358 129073503 599099760 82338009 845326285 883669695 335702231 212047420 371596652 634128897 957345267 230113091 136238040 370863414 657952336 430443528 732051724 743319636 535606476 410064020 280017266 512061252 778434098 270297474 687896694 653680706 340560361 211661671 650945026 418617153 664743749 463614760 578783532 711050720 94573094 157960508 20775106 330451190 425133363 106858703 506806083 860300645 840719415 696403247 612243224 556625073 537265620 345556896 641136974 176094986 62491765 369599517 324128326 279756044 165752311 766739149 238349945 455280420 911458371 973747635 567220871 68745796 926801932 575919330 547906698 384361743 596363512 687314931 692552602 922489374 608735383 198751055 841511943 863654813 99822838 410303040 985330245 378547627 865369575 518160346 433483036 623255441 705403562 591967372 510031091 785808558 730542416 145968113 685011684 207925417 60332355 320874150 697245332 213935336 692754203 25978915 990731086 411487273 65069559 704332357 231446122 449722457 632978926 772767860 180028071 779345484 265718737 202680600 513313025 693546257 682737252 201253934 756664040 964583203 622475110 537230533 755128201 602960396 634367986 150481068 225252236 699334441 244445746 91139605 626687021 432993721 880759374 872085257 307782064 152623916 328750664 987045758 124727412 473355237 50579763 98998115 987183762 392832734 200789591 655638686 974333407 692747641 158592586 91408568 210754318 985194101 937501048 88023376 570404557 855828600 435899677 956881203 789382041 835404364 268419874 500405115 798020715 759098307 711613819 542863001 382186879 813062772 917208882 997999758 619462286 70139186 754844856 981732624 161201317 319849425 695742620 454264749 135638559 729760034 665043136 408955437 899707455 6155721 431766340 844346531 872505038 816711627 57885371 828931427 233645601 769453586 114889855 804722809 269105926 740249496 931270919 287404796 101810609 912513665 468924943 300676124 72171958 542538394 420946803 53054380 240020211 461823422 933431014 986764003 621019914 911260510 720105418 830610070 951029931 916102462 579717180 360752746 626683435 694306058 815394715 325979441 140395190 855932692 328345487 396663047 806108203 975891210 703261409 578444892 871135555 567439789 970935799 122299512 99965805 566692245 871629915 515412603 332607160 363539437 640154063 841085318 96797023 38244617 475934316 881434587 131159815 309849213 632306947 154705968 549980222 789736938 965701217 536984216 365386259 567646933 790554421 610557888 483290399 712261936 810977140 752839648 416193041 996228496 183994581 189704102 379035860 260005030 590433490 324359991 791387740 151125088 220009552 482648001 661429378 417725130 98646823 371559194 284831059 89906903 626002217 463809910 100962827 114565042 36313003 654412160 787169464 276866285 96401150 809866800 590820969 48833144 864876526 199647330 491469455 39023394 758121285 576700042 966673541 905488511 522736724 531985640 120935661 665869962 99199061 829629877 863224242 249617359 147571085 515103144 28723044 517168229 591085757 170168013 75426397 987419032 294752604 6312193 454395955 117056980 554726660 957815072 963118047 211689861 671905093 781976889 147067186 545769329 966868006 112059765 539741282 309331803 562570091 215918971 815950702 449773138 29911897 474729257 460726818 814283307 967434229 747079959 155088566 755220231 209170437 363012515 508451332 150571377 716416594 667190063 146103887 874571256 252785904 644122594 17863937 329731733 358261105 624305580 956668763 211323719 104602118 290139964 796908317 822058450 212328346 700408568 787742724 657384795 644674689 749529419 640213151 483835054 187128589 259476642 952403821 612488784 242629129 534212376 841594441 594066188 960320728 746742904 487244301 185540754 15850845 470095578 464879408 55888378 751357153 389305660 233291754 784641386 419868972 90131559 798491831 161020544 477514569 902623405 707512356 212634028 822696637 241689412 665122615 91087320 880704768 850610669 362074452 615906413 894356398 586318607 479705059 794097225 134892335 298007077 236815016 53425079 669687432 541729502 977149754 627087527 268989110 877763194 604399955 143139865 432921895 598525084 385896812 388611738 131060471 691016267 470866826 100013597 474581542 565159461 839313866 34041289 357019493 79352071 639338457 478586575 797834617 927705798 818174051 4013786 795880136 180421518 766775092 797571636 942844903 188020754 759738096 740749969 898134145 745976199 117218574 629014731 80412214 815942348 954383674 276669944 979215227 717317027 710210111 850741693 142416707 833663572 864706106 764397643 94005067 419381073 401950483 369781733 418966424 931751294 874961344 484465021 16766032 820010392 424782548 577052525 257219700 251175581 611406979 540405914 148346438 786915002 768849502 28928675 332905274 762948083 630173398 495864871 391486192 522300745 748770427 553235628 916906027 988582269 648905599 661884664 202789954 256995117 865519510 212499124 297760410 153690273 764873293 186254443 927230859 66306602 983566830 158351896 129933286 72478349 481838787 491012044 529518611 811866553 667992007 845804447 425019748 305125576 215889269 711492647 3973488 299671039 609583652 975779455 705986596 93176307 773989146 858273613 197022327 793517340 131565104 560732233 975453144 87359643 77122989 205721928 836836051 829240655 706543848 697461626 24904591 21626076 426565392 363518208 470577043 84201057 882076812 237012305 409077013 854547012 160221106 618959183 119534135 713931231 704806748 141255432 754980671 607005661 625618481 321599792 475463648 192507918 717798170 956652254 521877950 246492262 705948850 241885811 457716966 438821511 346016757 45555814 973887675 712036906 889890909 600843193 660147939 285805695 141058342 792532458 389778228 904895490 235646530 338647845 457453333 526281575 201205409 814734736 127441083 731585301 704839662 820145179 388081046 107690834 629295026 381985843 301358456 247577368 757001668 31413829 117590877 362589322 765690640 181347318 854331309 531092984 682926495 833646052 997887076 578386613 846974262 634786940 52152409 215351586 373818801 687786829 120180612 66150937 251037597 323218960 896717311 902941621 598884938 729879160 317400862 45714555 928497074 780249418 407132026 556597527 907512528 926096014 797447566 404456182 912377546 50697448 280255585 422933537 829892530 658880648 61392016 670642483 393574118 466109582 533676041 546008252 920331455 420672547 488842948 522333846 606499127 490815604 291750102 67204653 371835888 163833072 103373111 437860303 759361222 823452048 375428830 933485471 445156226 21017320 105573684 537922861 730701566 676122808 822569266 646801998 369292153 420943762 970349629 829162156 561163284 408503444 248035049 920456161 452312738 484212943 275716244 672937983 699149164 542767484 335693284 763057672 911557152 757348063 606878762 26787637 203869761 121439437 581779706 44544415 241945018 220616290 957296382 803909575 985491789 206578860 503464461 965891680 731537229 410061204 377036041 179852309 141649416 258261424 552830163 3973778 924549046 809059321 546082618 822709834 767204615 938204810 689527116 591389140 510650565 434223833 48584487 73850177 171449726 139377109 411859646 236006192 196808695 649057459 400325848 198309680 746997408 548625869 600864217 201349865 63536904 29812128 138909000 84727150 351120160 261577882 506906011 26696416 990411253 12711697 597708693 16662561 874504059 565684878 319839217 618781047 246873220 451582934 86064892 342272368 158303238 599640065 867213215 153546719 789711715 88301616 226380539 622843772 615818793 563881648 504940154 758602911 23998632 670350112 946224315 516644482 979352893 996123269 763845226 970640430 836555990 752242439 978546388 564362762 70668279 817688213 593043589 569329352 416652270 611585256 326394965 184733475 364554968 992669382 753346496 841893339 891255494 998743306 640178582 447655326 110363952 776657778 557447871 762660048 314435573 764838125 365755888 7291533 59476162 747521814 332669237 354634607 305375458 913823366 489223239 782204780 808533792 118636854 491405563 917625249 471707737 20372263 555887820 819863579 843792959 871464304 473214554 431085695 258826623 170757416 566040353 619790059 437495995 123965050 680851253 784588340 183764254 311250790 722188185 541078269 588360039 435870712 945444956 574001551 579904262 536718607 863133773 74676299 345740539 910555808 690392011 369209647 194119495 607426899 245038764 869278060 415910657 630556751 280826577 473997416 502930411 177790143 890013007 621902054 735733476 712294138 742624727 834604260 953373632 428813156 879492304 563982176 414790401 129743060 8674633 979281876 354114967 53207646 707094335 783699661 501142794 217268437 493386386 810663786 928875332 259635086 326937154 601693307 403685185 276154068 145394527 913883911 22183902 662303947 776960835 702294513 592922566 162900581 743524978 917060371 806508243 984570397 178588708 357596143 895536059 458923904 285082945 307595238 863921716 417578599 946891014 307467885 137022106 353908367 715322019 978353591 509297816 994906928 53339307 338036057 761331068 771525229 222056275 831566599 20536061 5801195 958300319 78919884 770288938 132397518 85763905 198637361 419427907 361872022 40397746 651073343 750316357 476576145 899755891 807546002 338740823 772976740 898208329 562723839 596247285 319073956 677231037 662152984 853147159 46284416 315841089 791287489 773465455 357310251 279947266 591246633 373391511 187183746 38043623 667103267 705535199 259910814 975447960 397703498 792361389 853685225 29404887 429999477 183301229 922723493 969827034 829564947 850657898 740035687 16774481 604420415 282478360 958427684 856923285 90335615 335807658 764111448 147835083 757090451 262720153 642030815 318627052 295884231 403505134 524118238 358402466 326953798 344237251 750289569 944614921 742083367 970265528 616311092 178905550 368093358 442575572 838645219 624998156 957557134 391077675 493165952 451357651 333297666 65188266 185279288 590002918 999996661 426402878 173254453 404994974 591930719 692303143 654003513 109949462 629571533 139432705 832733683 483526811 435433557 923432653 511980454 674670597 620617305 456595598 506375492 631278545 331228873 200807811 365722950 935489852 7834736 568683781 3773714 847453156 1773960 567195144 448957783 879045798 493560917 447348655 983238308 772533657 132448452 826183386 738979764 163759320 113495678 771761988 72377396 73102265 12356780 493567203 370290468 750787016 512506853 482599243 606019655 467781093 451557978 853341147 144239679 322593053 119001853 105627912 782973941 417505421 444366709 777272040 59549251 870115782 996222857 7792706 395383715 502833935 645611191 44575776 428775103 792337376 77469217 386951041 615964415 258186474 697120220 762636025 617241795 619528740 354364705 781298345 436453742 558351035 431977369 947654666 470552129 124723040 328006452 588157852 205004355 354897043 356327310 249515095 716788096 400958407 807402655 329942113 908770601 32485740 380480795 316241503 200539512 396802500 4502798 876634082 865861209 528545406 68533820 77413002 283326477 413713915 848748053 987181001 449993085 100867130 441957085 344272086 767600330 808422847 737968209 338207644 11168492 538391378 775284828 946902416 691938644 925888084 829050924 293472560 475734131 311748735 22256462 578121995 794326633 475217294 826743038 521830500 77611251 857526114 492575077 35288193 543153701 51713725 696528776 964100086 700049396 889426276 869330261 882361673 370479830 794386546 846637340 832214410 45337560 920864638 117937124 887532607 974987442 767764487 425233163 504940989 346447216 931791185 794576111 555703375 612367290 586004870 961963472 990408970 665275731 862629515 590449163 77600352 846319608 282201828 647120958 120437493 153683407 295074968 323400343 96855086 909821723 962285315 815155574 208482968 999932027 842794971 806892597 918451960 101262683 944552926 401425533 978605661 130267805 21104745 59522228 546287885 577458184 183197586 162526988 450401753 852531624 107210432 276683948 62796468 737754569 67605861 39671625 647513646 318961065 328037141 610794215 772439442 298068135 722085427 896790017 967482865 690277700 292895875 890127989 997762262 219749098 299194513 338563422 853860141 91681652 786036898 300141118 798180820 294837783 903017939 763872620 601841268 779819081 230227663 561610087 759108989 248134516 692008639 438751148 547312117 210731063 484420251 254632684 428176822 274734660 575019217 382096975 378705442 648678427 269563952 733903457 189444609 355372797 969160732 585497504 316788326 601080135 32316121 140871944 918031300 590417562 397454805 181228672 349843672 404978893 713886191 433778673 162345421 598694721 299909904 469800247 659910452 885002721 857232191 674961359 558168988 919575888 391567645 818231395 970991450 911206258 689263879 529379293 423608734 721489799 785388689 777234416 369463626 280226619 618976376 401250900 465713495 958282118 993303358 648789835 107638760 910256632 550458818 249596421 665130274 128826748 38530944 78867639 816429489 967830094 488274550 777882210 344221079 8222263 136950613 911382355 779410904 114960564 909790198 438866254 546009777 721235265 650422280 849226963 177702970 825029120 606041423 389493930 213406739 593917096 916123173 615806562 985300568 380004731 362186600 442554020 803936858 410901863 8071546 939152286 54249379 172143697 534903452 39666441 790830771 753927891 845750314 754953147 468899008 814786656 532936864 686603065 875515914 760163704 199006770 512421840 803745367 657239444 207779394 620657124 389969296 680432576 584538977 525021615 899958038 657330933 837807435 740280480 136005629 751556195 826500488 274034447 260826992 194793316 529159737 174920021 903799590 331720925 983280321 651900281 916493493 70838353 551086080 34112382 367637067 76153227 66605578 520315180 843003812 749882644 974973294 672944507 907777506 243721460 52314020 197928904 171249195 210852796 136865608 435011103 671279672 287829648 427628518 600726030 664760624 616222869 1056074 255395957 289620979 497108468 665037446 318162247 69952288 634645659 508303529 403888905 117999306 899443601 252144868 963845197 70106769 307330303 656137626 372076864 780541549 872894772 894451280 620838292 143949532 706940050 659345314 730709655 658243305 631384447 2137904 746714338 433378459 297386020 10397231 228910031 500671387 993094642 12956239 764594826 179100150 223467746 649282928 271020151 770803671 804880046 793168526 964407458 901698416 13566882 673690168 328335765 293352006 873871052 883484823 102691325 270712483 664807830 765761577 133436799 410837238 585902966 659713320 406325552 477365472 506504506 405693807 888610883 876852611 890084041 848420391 48782378 245178367 437708130 902532586 316812650 352706330 729928473 552297876 356113756 502328169 845166174 327875912 491668690 258097383 155615358 245533313 333499151 497611181 405884018 710155225 990750830 560091744 170939605 872388731 273783799 653277952 918769144 247750997 880474938 530854967 792388722 346128032 937815126 376955625 804240942 347540863 14907827 646121894 66674069 850357242 423863856 499031721 21026533 654128234 41856190 68804523 363560485 511981169 719923246 918167770 43121974 361819686 848852834 977861887 197587715 889775311 628354020 365424387 942095634 550210980 976704920 410996108 773989468 621976136 533707281 90903398 801630728 977086056 453484946 206498577 72564604 546922107 329303995 638930890 416480827 272386882 731093692 227041513 764921418 905193169 605945420 575926458 428170054 972905722 645965206 470939527 65685768 527621115 511304056 730666035 614616187 469617320 136530893 635494048 93792791 446335390 378771141 831259357 863459955 755654757 371785543 596624226 297296777 665500404 767469630 614836022 291273010 118322668 400930047 867034934 631168096 817795866 522535789 959215897 324354307 721635180 853330140 175986190 444207659 241756081 625339231 979639404 114683432 279033273 997335309 351854318 513276392 848016214 117718096 190545463 243425421 315618669 689718402 851806465 130185266 461722144 635619072 350327865 300132655 440151760 754425742 688263880 824767700 561503167 129573408 178152008 767282800 368463566 354379191 472976144 536742752 845095842 849207555 113647887 48376154 488213282 693620846 747633886 613690736 613264971 771626347 335525769 197670494 581743321 492453151 340811768 999599672 476481057 430423557 167055144 224042391 772576357 31883463 837224745 305429479 295874050 539705484 676856834 294289557 879206191 796468569 370986368 311872813 868399377 749671523 629620691 4075709 960382587 104052284 775644228 823531152 801974844 743165173 589073657 29638561 246007643 627720622 739873512 790664719 102437912 68172667 259973181 915617076 307454023 431031789 247988136 353741675 847102572 699001447 595193754 960894064 942974142 502543576 274747246 529731622 467035857 491339500 151298514 125664425 820570444 207576556 340549106 903299696 603697961 898721935 146100038 342598353 934765039 97206900 350433666 120608941 722884429 357728927 479817006 627101282 910069336 887261438 636108132 309803030 791082898 613637149 705999062 640422918 690433449 318589574 64815908 226741974 409383327 565441788 808154056 367349019 427339951 565309690 910752153 342086191 875708324 255140989 686093829 631744097 223618824 358937224 518249453 963506768 84295890 40031235 628042069 140172019 311826987 260225817 516009593 669751089 458248941 693082685 502908852 365832495 571492911 614547777 552573911 281078912 139245366 81123924 832381947 985502462 595632371 808808224 377230110 311141983 703462963 124032778 27496686 569341263 72325477 385931620 978170446 630573711 873462295 864326892 721952112 150843390 823479906 315352132 704845890 411779345 649614173 682389453 431161541 447609992 242351711 359690173 138980282 327953831 461204681 524482338 319731423 630535356 413022705 882225490 869947183 605861254 152378635 7400892 660229487 736777396 205914310 679824048 223186172 851515396 101854751 911679376 182961551 140300910 419621297 545888425 936727282 706829955 404024559 41971625 533459829 589894676 305700869 10403668 173974495 660229200 974221821 233068117 563511358 637537258 634818538 224897143 593504352 862864465 497159385 18410496 172658750 270379082 4056117 131403641 530600327 477703811 412218878 680542119 309131961 640702109 596680380 804986551 3626888 836654219 416413701 19605088 990144333 309209344 989263112 506383621 908382517 492141731 786625491 207294968 329412494 325288995 276456554 501199200 644284531 324304341 187847665 611316608 846664876 813024007 871118360 807712106 74540492 403950431 683508636 244916486 176624589 347915439 704921666 552648747 180194028 296130854 553104556 999986748 789745439 366563884 203205715 138249713 816172205 823468591 755133906 775887699 435298847 293878808 878471186 181833755 648048427 799460501 9096002 175539941 147766149 415021958 5455434 85419332 944788256 586794566 145110432 683192898 115351948 763439882 121129260 842678008 136339417 169467065 956651675 519926661 423319847 233361839 43550170 260142701 632963639 157517099 686507170 541544290 679420754 657618981 753880945 978786812 197786179 178497002 774670108 599182569 932696552 513705224 536982753 161149115 29004510 268573527 564586687 798641038 149922918 746686959 132012913 415913601 288593241 662230517 280009545 950020049 761669847 293360070 963501686 903370781 361203806 760649135 39408417 509186651 536269289 539977360 71827038 325476061 909035432 792015609 824289964 731873465 712381528 636826293 899970171 143490406 144805522 192265453 488225327 146035806 521154248 762954290 168569020 486776095 242867360 615082030 292444054 317681510 160896180 718684910 466925107 362215692 284756757 529049582 783244171 3825026 112129601 426866765 719503665 699474396 297161214 540235703 435517289 514213112 785002623 737871887 172680391 224395215 631373573 443751009 413669507 244666569 299071959 892065681 845607867 821181560 490792769 137645447 547539116 851866118 143789367 857110261 203825365 388114258 231131203 23615584 374430327 191807577 848158032 671922579 515342129 672733620 584800683 984878013 559727987 554664940 256179913 435243628 874384042 356007743 894593258 742267540 48364842 708408851 311219903 18649574 16124482 814276878 717864283 886195907 929564977 462226420 946037011 56746183 681551914 472680421 346746169 707107929 597554332 952343237 910630875 661917318 127374232 685319450 685209598 48989119 294130120 878743849 8782917 463402591 828184323 257871358 570131649 482881256 187804287 291914794 801214826 801762522 916538486 21442876 930625695 152877346 535177351 913097373 362752170 403359123 332684020 494893570 652278364 523444655 699163943 153027163 345724518 838397594 843401358 73342975 649246507 880131737 240657317 406138032 136261644 559319689 22731788 944607779 955547944 427705111 175932038 47456486 621597483 135375852 134905753 589482992 590352063 121652390 961250592 103110173 22926459 328920368 157495884 801932390 379295 464270943 341916885 141941009 347104155 807790744 346765358 396919324 379775941 850558737 377555484 394062200 661597019 157799834 196190503 207224523 434351499 879385164 439412820 554272094 377091935 162774354 355465271 959454569 105132052 202295051 714505394 647556974 282599258 315844363 590044885 411579122 106615646 232378319 668313969 185927367 637626621 425599751 685955970 918917498 874955330 717669374 874526959 293603305 144146227 387725318 317754437 581413643 216946620 12928581 65620704 847902977 948183096 89281363 935829981 579085419 883827524 711460786 165892165 462910783 107455531 197894422 535809871 288351404 175990053 416657882 569998250 540056941 638425147 728180211 562213974 687677274 792883168 45806458 97251010 328943717 19119322 65748283 755739807 680769044 626288631 288352982 178353971 804320019 528894170 797996774 35578098 596992592 892989005 786872391 445869811 698042613 617471576 607872679 373786330 205121742 776684055 895926246 356514156 30543307 895165549 601090998 342681451 296384842 346700877 753516198 397319523 167403099 671151188 63277586 283299072 387316849 39647841 760055383 996954818 389329636 193172859 720163577 800885584 456466479 231222845 336218506 765038114 723288582 548329748 482019932 759588814 929746134 213725152 360518943 987741767 840650174 972435169 911054209 358257739 456444315 716638308 222775087 884798720 662300961 980064240 588180140 809356842 946600951 1656011 807294773 721125842 348874265 40023478 790154051 468334857 189844681 746020423 452279553 5190704 81616255 990081092 766948579 775502111 161631085 795071129 557890951 81347809 752020377 666836275 253521939 996501869 33412817 772103004 648902644 815557195 722884133 449773876 195996487 541920805 639789610 76901608 797815471 523910138 891763030 576322363 953572639 319197179 767247900 440142521 326224525 130296480 465389008 840723900 534628929 914147915 333012794 67065860 984230574 49023820 176353532 940050428 857090012 398362250 196170682 450964444 715176079 873554441 786922136 41533164 630693167 140731669 195955621 115947025 647860920 307958080 212270606 854731886 57528595 379799206 738848981 582643503 58860930 86720768 421292662 642033757 685694172 394339683 798918837 688221338 923717858 826997197 132703792 342007784 563898947 848464276 580498852 599800311 582204310 746653796 654546287 686478024 966198491 973328405 770118188 565158701 782564436 829508386 34778242 736096632 629412451 633165562 352297657 380188126 439870786 779451226 348308460 872743177 57312967 508839774 112056654 920594010 352656544 531347536 425430194 942370091 680024441 269680858 44914703 510339415 172300086 542184916 79138861 863465946 50666064 315346908 57259946 211034954 67291989 150162725 179725251 677574159 304721338 24130012 816065540 996691366 841047514 869064994 108601162 177229823 814269537 846731482 187080748 447420595 426656190 455775188 669454149 989858218 747322118 400685474 595875976 115548027 125735363 492875422 660549027 916108773 222768915 875898353 748518960 680567593 594765690 204573869 833025979 652199629 609435280 622199548 518968682 732713856 617731192 459852556 958092192 566862604 272136139 875413828 320539583 306419486 406641038 521174594 372875151 223894808 672136150 747740834 349718938 57109930 916638194 784274004 361709753 614523111 293114295 501904953 928824317 330033300 351218386 552929367 941088185 237759653 355339822 362094799 183145780 948396314 970543274 305172503 258638547 78750340 937249878 273694403 515705712 665087017 936300114 995702195 949978314 313985836 390993616 675342479 485121143 789064544 589525847 829277723 425162020 950319337 873192709 660524737 146222345 675320947 427667982 862450876 687133913 926120808 469383813 848010343 642981421 973477998 896401914 186760174 338900556 410231898 246725696 397025138 931530300 244843883 846099122 192480540 749818228 257574999 129320231 731240270 493498880 938000796 608929310 575973024 672932179 662646766 9222985 149617667 649387479 707035202 447257202 943221587 633342521 279826384 178806785 216831537 732754220 40479517 901726416 24448981 713542379 43433708 595690563 670427737 105814986 823170204 682438332 976727052 919441539 53565532 899767590 844877830 841291509 746415166 868111732 560442653 707021447 800404966 589544845 969726431 821359796 340063935 473702787 414379945 575628598 335701466 198852501 493969662 3740958 296819950 560484650 284400514 798880823 776979875 761140840 337387276 260001000 797433185 663805722 511121388 311356172 183213085 991922433 703987416 771411205 840750930 155291641 810480776 165197983 945329741 999852843 705819985 566380495 210815123 930965988 720376420 915194650 835858933 498585341 798553185 990764971 90512068 303443361 110864711 735776108 237211177 771207129 791739596 957795082 592524704 865440849 271079099 647570464 248424655 52060113 343190639 127561716 183405026 262348618 313022029 780365578 599867429 723384728 292557243 690315045 116540080 641539547 470634547 194742109 657099867 854191288 673090615 985093890 526900396 337977956 434966682 456071538 530867500 970171872 602273751 659624737 494981730 332085902 654215202 303777089 567151413 840331659 959514786 128378235 415165920 709610103 463762335 785844066 942348467 94018055 135387743 201775231 779286222 134123907 379109107 303496318 381080217 89944140 94163435 481067016 438362422 515814074 137017137 600387696 273312232 557360925 712947898 704153136 31792403 199566327 607916862 869070834 63604710 820827641 432693497 630482538 135439706 569267872 580144324 114139076 105666279 285875379 597816892 602174558 528727923 221780731 995925149 276754998 733345951 8014211 35887515 27126347 598660637 853972974 975850698 734985270 389274651 751615870 957983253 16180227 662137604 615120858 875819283 301891132 281484517 248467318 158804583 213889969 359636240 955010930 671035356 302924721 812938103 541032341 1914685 638067181 5569540 318511956 892708013 26616472 517337057 722268939 272027471 654545340 954413606 597683996 106296124 53490392 949849705 257919327 268542790 368121137 916499675 473352558 269824686 379311526 22287064 626217216 607372572 585376847 126296132 152504212 143416159 694152949 626944304 329956541 764700635 696835060 275050502 797083392 569048648 940517951 826247271 376758827 374328276 488949006 984270909 153940207 262159700 920715514 387280439 263160923 890248413 680300975 564839588 667891550 82630170 759233730 491677872 443731673 453684653 986647858 796013298 832627161 517409650 281357205 700510549 551974727 69937946 40258225 819324545 28760440 426560781 476724622 116211458 187693409 917492016 967250551 913480798 616188490 23178917 799781926 485391517 200458539 465285749 247674824 575701983 848148447 443770644 442101975 150833961 794837066 324621947 768658241 365377386 909779437 368542964 886665563 300457165 96517377 956154512 893232568 695682025 311179031 813773540 622875830 159696624 897355908 476315003 400085149 96045787 565807471 482297477 985962373 64201504 380631383 941142123 855049531 551755418 317840693 684061131 16591265 2335347 589098629 473630515 167530621 107285225 494601601 39242675 137890080 984142942 898043531 670312284 240008091 152455190 288965141 380852388 561839572 42679282 139787075 168329816 228443156 768870918 579985627 811082033 860500092 556736931 436366144 146213979 194597261 189850317 21527508 433133795 939710492 96197375 521719181 218485717 729434583 354379257 862056120 275940303 929693107 594358800 810052317 638730188 551561540 149602038 555832325 447649510 476648580 161037631 839076946 96867200 175911741 580366265 883569645 135871430 46596472 235380667 596757758 121291201 206924247 405745746 676714116 43602065 931047221 725501383 507092808 565858704 926593639 569927620 451273931 503018933 223336121 263993605 329798297 339994123 773513275 896111611 584444165 101316278 95159821 837249543 404212242 804286854 375969518 949673194 808985360 368364277 295726131 424938376 280199724 787088560 236900 58994483 847989124 657298270 482043830 122885932 654450557 782368954 219999050 980076022 621353407 474476086 514092021 436989673 364450526 6035574 412427552 813499720 567477394 294913570 376694459 363755615 398770286 274474372 424263105 784327603 768140814 957526271 641291521 556363225 746804895 49562183 825550147 507073524 451007297 53995596 839461563 802602947 329041574 443185457 832330384 204735092 72575520 23632272 736052424 836421951 247437806 141252532 844437906 798615734 817666449 889186623 783968960 104587806 831079533 474663261 46389365 550357700 997496579 506157175 622343002 548452444 397140343 907986418 394689280 101612702 817016840 535497440 371469779 379918581 729974254 55107013 94643187 252113243 563472664 875800275 845578219 854839019 503196311 766669110 731511918 47287561 209941787 924263214 54795808 960167128 295667449 265749905 327849146 578606245 992568996 92277053 212611780 395710243 944668217 944070068 68060358 291466933 547090408 428995581 32995635 532756712 176696324 304030765 162777047 847516032 693447718 458482212 806690036 529620988 175053636 880896199 822151963 692930249 273923088 256296619 531855965 874706028 335290395 444520881 963166400 434335867 391792818 438058695 165488268 346992217 83741237 248714722 500402743 513299946 239668248 159159214 702543658 14219993 129135157 529889528 915107027 893326338 760387091 173850853 25738706 881866970 917594693 28077221 724424029 534924048 781207956 666703611 96964195 871051102 93254414 867355035 868458877 743875994 73100176 119513905 510186657 406335026 508163213 498744784 566713892 683349085 13180346 572390622 170957747 288420297 985512486 508526532 185836231 610675902 175891509 655910697 993347622 271049657 220684692 912269247 373052065 801541875 526981815 100305556 779250841 631068536 733810489 268391570 321544909 700491930 126152097 685086104 492947791 912203867 268824260 450305533 179779468 629217719 639581666 726080403 263493652 387414869 14861094 441462341 529076661 907197867 919239030 176177811 589962543 737877185 787522963 566526315 731891768 889584911 771948806 58996505 162259741 78293639 341249833 454721272 789229394 907123206 365042131 37006783 182401922 185874611 730260854 53818107 205283566 57090231 784897857 937745373 89568167 600546416 421976056 153324554 6464924 391853473 970529127 985309504 187232384 599292627 166900008 276319900 249739285 533044550 869937466 45595948 581470127 639978358 117322912 871222099 471251262 49884053 511006054 84136734 355885897 149155347 598147318 110120895 262903832 872077586 252170076 341306026 816781373 108500334 547961294 565283735 468449797 565817332 731070611 276478815 321864523 756999645 416297603 784812733 20714302 213256969 29205399 202783033 158194200 281901982 46549761 615658464 401595425 455107020 315190937 512391539 279723138 428805698 259281425 344092995 434048360 737380979 466959184 645668683 677323876 756505809 384271103 314637161 917878812 559418938 606866880 494157918 692892024 477782393 22810827 638754757 305295970 202682884 177023109 895812276 774884522 352778661 930175245 37900454 772837566 31680099 646927534 590991697 71218205 563653467 555742946 581089051 172242261 373534899 804565391 378828284 663981175 393595652 402084149 3061799 752929220 648145265 554182563 952073361 964827665 248993182 259712442 115549684 641214729 439709584 110837951 390543625 907916708 497850140 69513349 474050794 282964422 572129518 567523093 899122129 621611249 441039982 195258129 746681576 143995245 126673952 990113743 516346348 499786795 748385925 73851409 979310845 375048385 159646811 34715856 626311092 139535680 858284130 740847078 678445950 108980442 431360826 187908642 739051997 539954455 547350401 451811852 499167802 35165907 854390642 502844601 438974186 796333479 921098394 699178082 767833618 929176115 423918254 879914314 1143010 448107045 94398174 676254845 46178958 110231589 792007278 761337849 79533901 565221486 38823816 595959631 903537322 548597385 296911420 559145180 110096532 420249448 604637932 206081962 150209110 60495137 316367153 680929429 674223639 144331551 938432548 508014431 109728356 117827261 277820564 532111864 158273944 637089037 385108166 760523457 390338003 877249070 808465905 559127653 565299796 632734705 834848932 586223812 746313717 470264306 450132257 446598255 827982900 840697902 807696772 961105232 24516769 879304274 276380877 385299290 662835816 746719409 762832865 241398026 111448262 589182613 474669491 790139072 369791732 38724948 25565202 854192085 713241788 855903874 613169160 987293411 978653065 841696037 392311764 653577331 509783451 216307964 446084195 955844260 335758986 195493655 49590631 206396252 117158645 852139633 112831749 332429508 713068291 512000543 630501061 646249794 661692480 974662725 639116152 217681775 815148569 527432367 800007905 551237105 237784205 807427702 532003457 137392051 276622665 70319608 763597794 185089991 124220674 920440313 847484674 351246518 992178943 421364266 864783004 796625486 307237075 459476340 946533373 388017521 591066617 319199384 161349147 641079737 946297393 577459545 266481801 229354522 117033104 986969402 119127895 116911470 521460477 793220003 346927355 186994231 391172007 120007175 413562493 525167416 734021441 34345910 687596561 351986208 902993872 882104446 123805820 570292634 424837721 712314745 926943258 436033663 521720105 697346367 103358738 90794893 716631206 401716495 402279852 886241035 999073400 86730216 677019683 927226791 116086548 353560743 715587302 384575895 602825235 780855559 923326261 987093242 537468131 878169672 939989219 1641976 469722024 381118503 451411233 112634421 71079656 824203388 818826760 334592353 686582646 297705343 979819332 260449639 575156928 855789506 971912592 197963888 977583508 37585149 75452933 46659613 568733876 229138318 135118648 226321054 11714327 169279993 405883407 653033888 284187442 141714301 892733211 632657358 542905973 279234871 728455767 655154010 597703125 905877429 633702488 850906295 819272109 83965065 226112874 932788483 605469783 66868850 674290905 390092973 35517797 517572289 141804195 326652045 235926283 164009839 189538364 355789419 300326630 219559443 254019328 711899831 491002545 723674453 957263600 24460377 371996840 450164945 890980297 435163224 506679984 632064877 271179286 168853042 520664973 449428502 92028237 611036887 31320489 166231298 467191278 477260569 193395192 71075169 985939094 694377339 774417179 389203785 380130949 528123566 878601440 791509568 500926347 104254226 749941272 746652755 213416974 943161468 645365592 904458244 559120104 949979379 305381000 271430282 393255947 413013009 674963636 915895871 846896787 931328179 22339044 53791927 919798736 200547117 887218153 394545940 463758716 582103705 972415570 702989528 575796814 694256123 241303060 880932624 818698353 560986695 550348691 574459567 968286201 430723597 737301986 690876407 666889792 253180480 107986152 256654026 334234650 785732879 701935273 165570768 34760852 634650121 98006541 451584878 702703350 278288330 335831216 995516596 955145601 916300019 726738869 63927484 244703408 80865926 954034570 179859866 949509427 662082888 806547408 528575011 778639003 416560319 519319106 277995416 554813048 478942808 331178482 41251085 471124541 567569767 986326952 741282215 503941408 486931453 160324056 716017123 741737031 143717837 647968781 987874004 971372009 391293917 593545603 200606397 215289480 340962302 793973445 592413322 24776176 16851000 924838629 869065510 4120076 414362258 368606912 451935092 459008581 847320973 807703033 629984792 675625630 435967018 91579790 114520531 248101953 960396250 356923297 106260223 711019037 454418163 413210147 861143365 828516526 585506401 727309363 77120639 429800411 832663247 954761551 689494558 861811586 712519298 662099014 416913250 684165285 309448262 757569921 879204005 995480479 604240627 246827824 844969210 342576166 379201590 40346170 883742183 344979378 224060320 82240412 293557175 942857348 409987166 782631696 746034242 938061324 975975975 744924045 651391586 429104974 228570206 314851031 444448158 701531836 612861201 664280006 360740890 154762129 92957851 394290837 932526853 306340507 669396820 792468580 819383343 101731419 96554828 408789663 371214682 655004052 231823346 664578696 946282213 304368246 155272327 306865359 573457382 587914359 132651806 890303073 669871862 441487238 159121084 896023584 809377071 314928985 439444324 532668644 706819016 908132006 145607553 226377837 505803435 744651589 169494507 631232524 422309295 667213049 422376472 980492227 162030636 154870016 128596057 645856728 754706485 95424094 500536138 434778764 741709741 581072390 848288091 536542218 307493971 199038981 24925061 69205723 909835657 73669889 407392652 898522010 65977252 801179676 213844880 871800312 689096670 146090944 165605772 281304969 304343393 182354314 996299253 193353248 953275825 960659169 107618356 351464016 218710174 923380064 249529141 905029580 37547966 628582754 985587314 693348254 662892734 641107870 655892516 765041701 572822863 966372708 140288133 889065102 815375310 897684701 798240315 574398869 659100992 448783117 646602019 73606696 429699941 665090219 142043343 243298443 227059736 173733819 530979491 675298310 700536015 211567292 254048364 954532299 566284583 458427699 687501243 224367023 23379459 499872598 458071868 740820235 63847194 120944632 11596584 930546973 959857880 35988129 438843889 493129227 348729598 58399484 176567289 305061736 129297520 238847924 298360470 729134878 680560815 241405393 413753210 214980282 502270711 894283438 282463931 486412691 724184755 698706118 296674407 135999 308222677 776290939 712804630 411232749 613349306 556103721 115283441 188124201 281410172 950057892 78139857 185138598 930381520 391371402 944542361 941832405 932943471 179807643 934700439 166501236 429233967 561010663 161407175 393934729 676814879 999395442 485601434 812480928 678387354 91016595 104936724 861627856 518154348 964695066 265894212 580727371 300549480 628975580 780678409 863878193 815080229 593959580 206238110 639475355 167408615 35561917 373903570 636818464 325900223 265920949 223053829 830824771 657048973 867987893 536718691 654451011 127940574 814037683 996580947 753531292 813423259 851852052 588791545 918598740 74683154 640831695 67083711 330902671 814099802 318640805 260879530 750355674 568469871 998445761 534939517 997868321 509129567 671002330 794014092 323151359 904748960 88989928 309182019 422480240 997314363 309810061 676145527 9996141 672506077 968956275 308579798 723252839 170801647 220318773 471208509 316227030 257966092 203923356 224421293 880686381 405161614 733925971 667619409 595506132 163345021 906162861 382623940 831118023 879520905 404020656 826730018 804937 170595656 535551464 274495805 23548677 804809603 453294912 448085000 69547463 916995471 693394891 243121996 540758986 535110400 732701014 97080848 61697431 531201731 930028631 31839443 195000004 23034164 353295726 427129157 317228295 125469550 661141391 310940303 595836578 320301721 781014636 213404962 189773813 414163426 921099890 524059278 110824232 136324994 881468039 329164074 197959352 472594169 582100417 279547671 114679243 308605054 913798488 931196064 576712922 708224469 494883823 850131635 68829557 197861568 332468290 29308714 549868139 93058115 224358400 253568590 867646063 713142513 238249840 864912858 835088427 851623533 362451203 791821355 547362763 358374533 969169043 734048751 423855569 830048056 220131540 950072757 38810937 680804133 233043732 258477917 277002390 185492341 989755409 352644850 242743960 523394641 132860175 859797289 72942806 120667748 129976019 100287876 652798913 802842968 238452828 818477308 402271125 730690002 247660143 230293619 137020513 209393672 235440634 651035537 982012208 762789671 758179258 269771159 201831397 297966739 703280564 857536024 60737225 748923224 653389148 998974733 948673101 762777010 660543821 840771427 215461425 576678865 104490341 682217130 793319232 63804410 204892165 2290680 824712629 494710796 111036076 772846663 714676319 382124909 572559624 374140632 264954883 896398935 399699684 914185927 202309251 612002372 884399220 438240554 673109310 745524150 180257503 15612653 528247724 114699447 63033846 607546137 4415201 191498124 42248291 819937471 184413459 889998455 114578853 530137718 677078747 341528131 86714984 163190401 209813256 813881179 229289886 622193888 731645745 698200272 787627570 838405490 814662298 280624590 886449002 902905375 790772566 167936576 981452990 94712857 649753041 906573488 16661 481164765 176181198 857116024 343728836 367908671 751333165 377939549 648885747 534772120 520438486 34048796 885282184 975620149 168157843 900729966 768068995 549129856 784908620 432720612 48931263 15080550 229460881 245545593 428669396 911817566 629025483 796964561 523204131 439331550 664996504 976906426 602766646 822462131 66976390 414543635 194207735 900609736 650371701 540706167 53240928 472170071 151983330 749127642 728457402 158889847 79091806 802118971 230323390 667722342 994235270 248101421 874584653 365579907 836219381 420453657 862938231 880212442 861954029 518139478 318976221 304731520 837426127 948203022 289897855 195220306 252372715 920164467 497441622 616869583 655801574 638106196 5110498 774069154 428524503 462143763 688801499 370719592 381335017 585093048 142180623 556325219 835274482 180385693 467833567 933363998 454732086 661010656 842321279 121487518 553360460 85987890 459670629 249789430 924763667 914431939 245582359 755373920 165990944 830783808 797113955 747999431 198306413 866583388 171641824 584212875 364398093 932675864 455059180 606579997 206660143 320927393 198967865 106019223 629271875 598955519 553510526 862111869 100387431 416567274 895342810 300235420 753672422 361297051 332185450 952082957 136242514 106082286 751059106 319034802 588911317 319465152 815966024 36838490 433387519 3345731 235112110 57622300 860359513 166625059 107786861 81027939 19370900 414438709 19808077 200002881 962599272 649700766 196566337 707302354 905248785 111207956 102413188 616957714 5489016 664901286 932553904 811926151 405188506 827015736 703504157 773376731 779739035 414606648 548443185 658848268 426769257 430148102 788567370 44927233 262276289 285333149 761344040 29483017 126467541 788004974 724978862 709330527 30991722 65495419 755762182 384149043 651612524 566088478 137441347 498625276 545043299 735867115 211208516 41226184 75025593 590073126 947381737 158846597 391624906 42673323 29479823 334906312 519620649 994236257 521979546 368954315 350865335 82600210 968871633 369231604 411664169 738370633 186380680 662216513 601144227 356338962 863684203 886253164 404385765 901979364 814450865 316461323 279697667 35708695 785243502 608773582 159462135 860117566 91266941 418889971 618982708 1646237 393020804 383349520 685867022 810342365 516099861 583954631 800659002 452818663 819831314 697228294 833668143 142051343 321066828 98200192 939207301 946131295 175390016 767982608 69180663 732300114 128564404 142790324 124240364 169144928 727287600 528448791 282766877 436444148 282722578 828312001 175582987 982393257 854946991 280931593 94239431 485456239 115155070 828463019 609683978 154756924 748489328 573778837 464792649 648540945 888136678 557387218 736832292 531853679 829404521 704823092 732900464 90379606 323415558 164028242 335985807 154842505 638212677 364011067 807185782 648641422 282179413 136693417 480123840 191550074 976113451 140731122 378035109 66225279 834305812 596685114 81873474 963327626 600162044 182247169 281049715 331118384 804728851 954161302 647439356 482341047 553263557 378667202 41587435 579865181 107266214 942572635 293087743 798583212 894422869 894077143 35626621 68219936 497438840 20851128 787608522 584366512 12424010 593660873 325335173 921307842 671652413 869309649 368862296 68901888 78411617 634635461 899321784 52151485 424065725 257936702 695996994 296523902 508033473 343081052 764044360 84774206 932390728 453623013 337817761 844745127 977528841 539058866 889423539 655272251 274384850 13277181 622878232 595179885 226896270 272229463 585527804 13052879 452002504 696224373 662086177 820211170 819534096 186638225 879018121 578036624 144956009 682448608 169422642 55279015 962193247 744989690 321541964 509185880 808692150 986774250 503874993 885426108 239184167 217701800 45198387 329398506 818051822 248831130 42375621 329219694 432781622 21425548 978418068 644747376 495779145 939942502 309379222 783467108 431369338 265737470 576220237 708449766 860692519 494719139 304771429 491737307 973432803 242106468 651008996 395973574 277563005 873033919 967109238 930182394 841990627 910027321 964940251 473318511 141858668 682742302 713520063 656517983 659290840 594230092 801580386 935497954 960049792 949165219 339942644 817258145 151334335 241006311 921282722 534535628 401551102 649565319 770072549 158811590 776805919 338741631 230365483 127375366 622042569 872137839 376315986 96422108 565702808 271359223 476310984 461755440 849527032 296456276 555464783 396393478 551859977 411788789 905355223 134331046 344039292 12202202 498073234 232926140 12813621 90495071 326720057 66991563 828309484 842648961 843220543 82194662 722837728 403270692 311943578 460111533 730828537 41648202 16507263 148442321 140373834 723054997 42912999 354260708 27528389 991961742 675441804 340199307 101707947 823985975 623236245 400890200 861766527 541109261 773661653 254180347 938859250 233894657 392176605 990157583 572538425 69106514 444992589 801182224 710313158 770815913 671372329 512119117 789203294 411210677 489416644 34374550 755035489 947068022 658096827 738853789 967856630 239590252 719872620 557321916 428890526 711425938 982374467 699133608 821816301 460071595 909697513 170271848 556942120 396214125 429101749 129421813 772380306 651757271 136463247 49179131 756859972 615203951 733470979 128101902 180348019 100634983 724264427 178382481 936883637 275040983 300340980 668559936 896258638 844308130 889607371 625707944 110454576 879743095 951514787 973125800 173113356 529496801 955472400 233271392 360001054 166386039 204561956 431146739 171889629 514550521 609694669 717879001 238335373 902090741 743646252 232497852 283442556 935757392 948994388 760696780 148679557 276429030 668324146 55865781 518894937 347304810 563269516 356303011 812374261 45517049 706840200 298935492 943491653 836867372 42038877 389125983 422321613 832284191 837677735 532206478 361517257 405227247 178397570 129893501 195794116 506072260 927102460 18534507 819248586 524133901 256893569 436620946 440281766 933176950 602527520 247205098 18488997 690328295 359618768 584570391 879201342 553628718 54122825 940493918 137648556 659946842 169616484 897017099 969325901 630809432 886769941 360595615 223909948 601847884 409346203 491218875 416042317 240482323 994755831 987758665 386326924 239299263 515312190 784185925 778919274 657050380 699410329 994362190 79147626 301239248 374496718 875505458 516165041 509208647 230784691 495561581 594085195 519845492 888448474 900910948 314764713 315559248 539908033 230494540 714953896 839933889 434046198 919865478 496011828 505442466 77558227 58285213 649525586 445100322 272194167 645344604 861547823 157287926 598268440 21491085 539665429 695136589 946873052 797533434 609451905 139066078 97134146 509959499 469527776 976464432 892378844 501574449 373634420 649194799 870720647 878518491 828670904 105653855 680353335 385590291 150531578 310038651 191997008 472474686 959470565 510528697 94702075 635233914 459158669 709302217 858618324 471243218 306760303 901360406 608401176 312785589 314932708 528515183 963308933 575132731 986254977 479403667 345914516 723569024 423276987 966447819 129634905 619419703 339251099 591888152 400162730 800922858 553071278 672021579 902462219 368350068 263004510 254143942 489142592 833986186 756839491 894190213 356340652 17773181 295904233 608736459 928087344 285551453 283436314 841179480 493210904 505697783 365288341 410808718 154324744 961878979 4120678 328605520 886298704 206090036 170062593 405249767 441002136 246507664 883517250 408127645 460821445 258395128 917434666 489736609 434548133 539718088 655347144 822908967 556024004 280760449 431577272 767173912 753047335 460976329 24501861 709107864 634589522 172894619 375000058 658245073 849110371 478951763 339056115 276136273 631458724 118413953 688447619 248401524 825347073 472650990 980634293 488358007 940583336 184662768 432311113 471611511 667180655 428201309 724616431 845950729 101198272 163909361 129587439 655187187 646955403 416460676 258917797 661074760 173382061 960330804 926206603 142182454 549620512 669507415 750308928 436088841 577637253 61989073 233123306 600023815 284093348 827264106 440537373 111958954 975109670 254841645 871814944 253161990 23669877 934106994 801545878 908761264 708263122 957422996 584736011 314703525 751324305 347608665 800016138 685593398 353686224 776835004 664608637 723165378 731860244 805490869 117894819 990303626 339875453 662692495 580020068 885956759 278709927 696044428 513996919 561986730 344991795 148295609 373237300 98335389 242244824 366652759 147582568 223883904 217522576 828927545 898041209 56319197 797347254 889487742 969510061 917285359 370045078 888877706 80781184 518559586 220482414 773905396 311135985 324139752 45095291 887566544 658484287 398958394 264162678 698061416 435727485 698291751 694249578 195264712 659892026 14326328 113728388 559856712 567901090 268548734 829405979 838910441 470494433 525744805 790948566 339249993 862381795 971058519 726696896 44700319 864568625 750642645 226044572 800621021 378266661 194158801 132236817 517471515 999474110 831671413 461411379 719613738 972352864 526458126 208977020 695980307 326769934 117664080 776387726 295245918 561057817 731340795 618470380 929213622 99953973 169019638 745976377 595445962 778778192 988127968 454761612 453071258 404552690 407477528 205689172 404778257 659618929 444761872 565877086 421825231 80931528 779658553 816558550 958920082 652277032 503887131 985643965 283813983 29361457 46670667 115424962 667334961 2380610 674993720 320197374 898231263 381558309 704440950 737445406 116758190 968575598 597573366 893429496 883077617 418789458 300560861 75267171 383698461 459941672 297338112 310518476 329574084 936882723 13600786 511074811 252785179 53188046 304922725 58309956 411810267 832123589 214515293 430284966 140308407 260152174 936779023 152873573 228218628 315891366 512940227 349373885 572736851 440568876 797137798 838360474 840264342 520083124 812544358 806349502 674119847 600148124 96419965 233687435 277549234 195827317 713178771 710777440 349364919 824033245 960566124 773718869 982155767 499036141 302582698 463430596 625026199 60863382 338737558 31779588 953934111 444335397 61274103 157334277 52229627 349615411 396349215 622496721 472394926 768816532 563283973 494528575 586900102 835094645 35587075 99051378 987282372 222298645 601870316 328459370 970310305 840356322 554268177 304550611 997917794 950527941 831188926 800054712 42163279 927799162 374448193 327733113 676943190 277992708 23668256 705649672 97587453 935465332 984652509 744491050 412132724 650244646 903582788 652174083 383456731 6396078 85981082 904309007 962221349 709261023 106168119 777904058 69913414 999436586 776769859 508725198 512901152 978032112 569653784 625091741 645698409 190079520 809526696 460536561 780469183 471640694 794785984 968538829 198942896 595571564 378214641 846970608 288756801 16850685 574074065 302963388 799817873 924608916 267918240 652828283 770485478 643735598 176869976 955458775 948250790 860295068 237409288 426508152 781243936 26549529 199531442 912704227 776553913 707471812 620016223 918710969 250308773 990970542 842111701 118594453 25759225 743790446 554765732 313989409 586857245 385287837 727685069 593653354 722271100 571309192 99064109 500878161 408818501 665932480 163353242 938218880 528027339 357143630 779714532 239486788 569243215 26750957 941577632 66783967 746883387 243182327 872877873 784520473 132095433 421836308 202404348 674022993 47946092 636884573 159236280 650634276 768000159 24941335 209685090 487064455 410794293 663864937 516732096 118272893 735520339 563524439 741047799 24993214 295869445 100701941 495977067 908017094 949367318 795069755 873403353 77573275 618583485 693165698 281081101 544246411 719613950 632234222 187713361 359680110 660317998 576320487 46204477 159535333 975351436 211002518 486544600 98190288 722199880 471031279 174223828 278134233 931702446 332555268 153058856 260581005 694824222 553883370 569381235 568999422 412938373 936136104 369649477 997168165 463440313 305224294 602411715 16699754 456229075 613765091 158623301 68948673 377019787 935587075 364160419 174749239 10883281 290646616 110180070 93283498 871718935 77810034 846761109 597328891 191289472 977609457 143033540 263233321 551010174 993639443 634342514 24164317 188794000 264332282 55352554 777999244 15411979 768452993 617186392 948990956 554779804 300069841 530449582 824025526 363548516 39119553 326005103 674996910 984503308 146383612 240115311 966661503 54318344 332570490 38464419 463612865 307920761 989181584 833217446 200987560 244805564 602724934 783716651 929002116 503873254 565771060 324323210 11469638 311512261 746525903 21582171 824964935 289524274 663521796 805050672 953101068 845627038 547329156 265052713 621682548 844524919 344516113 988004754 191988386 17723053 463863186 204467570 969994503 291782741 64724054 803455449 105990123 406373557 198475716 109808279 915227478 500280813 720424398 997423104 207446239 237088046 350984036 437358165 772783410 203700577 644462463 59785313 66690758 784067095 611366513 227994176 132424675 797512313 746804196 407535874 636067878 209995441 573004991 604770681 292538 324416768 452181667 596566140 811866988 579151620 690920705 89414432 460025889 953619155 509000763 230172027 947876474 704471511 931549579 999912002 375721202 918732095 71235891 584130195 68106148 911950856 308492075 724500008 407786905 167532446 150581312 974015994 64989044 72853833 553970237 842022073 739260149 251971059 235522675 640825555 570748864 330919730 898782605 826255920 160884509 33581520 724748252 214429352 953079893 122295268 150031953 77776478 405481982 884789482 570886975 382075951 739931194 771986864 399676788 410271481 163117587 542208592 435888031 926732136 382690873 59514928 402580487 209473144 81948656 547100414 435575933 923695931 853687559 1552789 30466095 69876899 537778958 218530761 660133890 519645279 473109919 683284169 103192248 979541516 637988571 578776378 840225210 263560292 425006335 209030631 363240028 735831813 287405729 590671124 787811334 149275895 153277368 778343665 665386452 666178473 493206522 887540686 243505657 550341269 914205883 570572671 749691407 253733188 147765689 779812696 528609709 619454125 514617079 842096920 734438591 329889354 145764839 180223606 30876333 653454109 203466531 147586285 869032011 702642556 215171832 672895744 553961430 733130971 408881960 524926231 115528607 107361324 472833919 858053341 553803688 535034881 93959344 225397165 334305698 698574301 149564260 205931463 169119573 978216052 906370194 538037996 817916930 431210792 13573425 268543701 627982633 407038017 402324139 109304134 659972363 200032302 417101265 346923309 930871689 615793854 372645887 740542874 202791032 707594241 468933857 268992518 651267331 728927026 801971894 431618742 947986358 505338564 430991024 638088439 864426327 242637075 915233418 754848916 232887529 848856044 873183243 126082365 914740027 686947678 650361872 55081814 628451549 130491477 19049675 436032580 225453467 623261404 689251468 9342601 985539159 834515205 375186121 140418237 227474303 438683540 199788576 964300213 760162640 567724770 98163706 184008281 62302094 2406113 753192440 809601090 531279766 593893660 820596850 403823774 517486671 767562862 758142208 260139058 782255715 145114754 153368860 373312882 744144702 74639349 182500005 660440544 595461204 344919555 863968420 741614768 559936964 30831574 505033492 50552782 947248337 315718364 790462467 832267092 377348667 487079734 223202700 26429822 499039099 54692307 140429804 421508382 880173537 706205938 595333151 460679685 107717037 671751708 9744545 682794803 717363727 368381772 958350022 892241431 359053952 446641432 448159259 142428370 498339432 464265029 941590375 94509148 619201961 329492832 157854543 766903956 791352951 412024937 328133464 520782195 587127149 738536858 917508248 310540252 405242896 552528608 553046979 612752315 129431662 312801953 293589978 717023091 622440983 872307135 199315181 563132721 663106960 850772679 945606908 474804529 914110233 271358302 20312170 902101632 310132660 306190158 70881898 33725425 815490054 871650293 984247565 860578542 493436848 144650160 773820144 260524363 542987411 125632254 326181090 171976409 343593362 264017866 402041228 239473864 706611957 493743676 561209079 239061278 126629797 34244507 1468828 651442041 239818884 608339218 307715299 417084146 231828700 903528455 900053277 437660233 475035226 117263715 463769876 87164696 621240953 496163295 453153109 243626678 1136871 964337751 329722631 410497305 188112416 758681519 556173252 877733682 798777703 365648666 931920702 698148179 917175062 225558987 83054939 51360040 14659422 555515314 388346535 567789324 930970149 257032515 45454207 414724348 140404138 922387205 828183993 402478147 293605950 58589461 972546832 210752961 265266144 926627132 209720635 184726309 561883274 746497691 66121059 693522799 667453180 583471549 424836710 563740069 27822162 994742076 334929634 436886165 67264815 289066312 720932509 808106266 271037258 654780773 661653667 901111105 822611964 349995207 197347935 613547446 920350000 718954610 564809467 648918081 122209430 334515459 893118207 227432718 699007074 647889864 524924159 9829744 524766168 338596440 520330274 509872159 701887736 566233387 624858370 218524257 722665340 171716941 629987712 78584850 423837857 60358025 442822739 516164620 295398097 325153114 982717994 329547383 489669561 159968435 611755063 59296693 277031108 527996242 577541858 553291892 857704544 821655760 98307080 537902278 268265873 81025222 492772262 988287104 89152167 172227250 93159895 132167146 306418500 389703275 477682573 396661906 641208033 783769366 594459954 584118729 522270430 545629362 575489086 41809192 245454716 401755988 321666641 1723467 499736328 965491016 131569998 449645414 213266311 751417436 27509186 236575248 464647075 396287376 225396523 16455867 253638518 543425494 399362458 865722023 501183796 272444042 529220995 479652212 799160911 59697734 400147503 999028099 745889336 771394281 91405256 645100529 893189107 102874995 588822405 939054450 835270510 771483099 526514543 402846856 699623381 103464502 732609954 678161051 978094648 227763940 509479701 273882829 329586880 940403409 701750186 728633688 653819291 69654642 314940618 907654319 247556848 328370537 962708164 866614984 915716516 238954463 71659047 55218271 493344083 590830857 859862774 672483521 659465320 533362945 51232508 349356655 234130602 571081626 277903990 494012860 468453375 482097202 446611811 430708496 542523678 20357475 820043015 723377108 446854620 444119446 856464366 993922603 986247089 240972234 949009141 617939230 514448771 815793164 535797193 283111391 167783559 808795262 321141938 636871445 784384884 56049554 341587833 991398981 150609984 208117019 565587813 603842331 783543733 839684932 102996985 226041118 758555720 925747805 992290334 865254924 682391487 14082810 426984793 161081929 417989169 64233893 501023715 916142608 470779799 996231751 728055986 506925059 466016519 654565437 996753355 743550154 163529723 219200016 847149167 191646054 970418410 521374292 640876885 190324338 511344087 369023511 202749815 771515652 286792768 549608813 534182148 61626805 793940106 23912405 125400610 55033656 545399671 361804395 645741289 483201601 740764753 105139158 939249608 660971035 487789037 475424458 443787059 224674434 624053320 677858469 221173767 673038740 468015584 979319170 902397118 362055609 529772298 830559460 265971647 688363524 554713567 649635187 507845894 326565302 949432545 402058391 136539444 565897035 72197435 659702359 133869544 36994291 536634588 384106411 677380764 84090546 856051515 977317115 637445697 771867626 752067359 418522853 206369379 49059844 504622744 523178862 907305868 989186393 543296721 772056244 901655991 607400176 490270942 944286591 372354916 699260107 353056446 344304012 791587461 668438595 27876023 338952370 62214846 456951422 591612872 107741172 861608900 36159054 724594280 371409555 702770063 499483124 514576715 598858648 435095835 367455589 488104790 699859130 206256737 154280841 893043545 185237563 701681366 473517849 578311228 622710612 360558247 267635460 665237764 713359865 159653886 770103230 416435489 44387681 667533319 210493590 947125909 51399018 482839935 292071130 780187062 88108995 163312842 651710582 845384401 676714273 246936826 332401057 965571054 429199378 607264838 642559976 639816995 556334946 753555445 392775340 531933023 759333969 651305595 375250258 777838010 826263433 149572 28103206 919734917 492422083 471897289 484550170 66745553 471938775 816667591 67117563 500973928 961059310 89912665 218723844 46221433 344469379 576826897 308313004 697736084 912119735 816926394 52768131 789264275 44595516 869789460 579325468 341413582 468382221 966347797 79214558 818208100 563388832 440155842 244323398 504884999 601612623 205963635 948359173 921306159 935284114 866293639 457276002 860956037 637695680 349753668 50370859 176844901 466330532 432955183 371376324 215002038 203870297 543272690 624523748 921038824 309996925 741030602 722867958 232016261 856239715 267072203 173999149 487245891 705575269 161596672 721704269 628836376 681967809 565917965 852442543 693593800 760656207 614206846 279937921 646739674 71670223 627177884 633752696 234673822 829154622 927324737 693828901 345276848 531217214 527394476 130017752 211430442 829011523 221334474 251343200 4696797 631911689 336290756 493736544 807078749 724538918 269065960 282778053 17090895 343912471 879252438 960755075 269042490 564331355 68988790 280450138 822715530 150854316 219825367 296043013 328017953 444904645 818367904 736572384 910507909 911581900 874821497 379651556 811755777 843930785 904416494 44705147 389767153 45022667 298963117 355917929 669673041 879869438 257174969 460391690 276836647 664203772 143839384 282479590 129031110 632333435 970284114 778288846 381730909 180868473 51784800 889787350 693773551 501834606 573134549 84553740 704921896 767675496 676922025 665427146 354634080 109657194 976222841 64777222 103540797 58535562 690364858 345222666 278677549 949079440 156450032 262768830 346311097 557552509 243464988 127206411 745045659 860943185 728423819 375710312 292328460 983893716 822036764 231192517 933273145 135775930 184323870 717659714 306771289 727080713 780129398 785425097 181064512 232737752 587862042 555829156 390441011 126574439 783631507 410079135 985961918 763490837 687399734 397365507 624614570 389609798 507765916 109392950 263357838 270143171 664458254 812069141 726564379 884923206 826606038 86839590 745737672 60856869 298639843 238988598 194650267 7310739 852181731 690317658 607424462 6465361 309579727 892192973 672088750 475325402 366609831 336351661 158100876 784584750 562160758 725611757 7417296 887422444 507309372 777212440 354086616 231799273 197214914 459883657 111995057 310699867 316862228 437855443 338466348 436741680 131442145 225754268 226279744 689999439 995647397 768782042 112052020 202727735 195082084 432708061 878329661 618744412 408867973 58311881 791220745 404144764 472056266 916229878 778418505 161256220 330410346 425901517 29827325 913176206 917161989 45871982 389359365 642642719 217805669 731099380 850838095 224611014 932588839 584507839 572034956 325726564 83385711 891171501 893405720 528601481 84944095 134963647 95402879 613210517 89264814 385787522 290248097 617410290 600615052 302930729 917314103 880705564 834089024 396025820 166389625 944458304 543859340 344831564 871302615 508786202 906568600 712858757 734983653 204810962 375382894 544446813 713368010 50054684 99831594 857115975 488666754 965759140 255348125 920941745 488510759 148010367 666515887 73095474 362990689 272000599 662610601 991544884 865133938 836400339 770156386 559385769 10585422 674055853 453895175 233372460 148656994 935644791 654930742 897658412 896184623 665903671 843672265 332425796 150538468 947122033 755769223 457137424 94850381 414476318 532939899 685307881 697768676 341944207 856578804 956555914 36747053 358104339 626336684 351677937 563907868 645103540 775610020 924085818 11006715 449100496 736288849 707777743 204184572 30049311 506866082 389693416 919120259 787765185 844239775 311519740 492261503 397137396 594440183 38403031 626935110 935329675 343561771 335710190 406306396 645408916 446309130 831471670 585231107 564884983 103603289 872637632 978969169 358114085 146168152 323999278 509348395 993728746 585526631 753495948 900153105 640262193 539101794 363850169 68556352 520142240 21444117 419823110 472851595 145655912 666685185 919543712 376348826 175613200 695046495 611090079 773462965 150481282 497036725 633462908 152886128 485713196 230584453 222614961 449165251 416579846 730469642 619371511 231383073 177983330 270119553 986221282 855746202 654495483 650651762 217275135 514832861 25186140 532435479 732356259 782598439 497912876 125594506 220944324 403760889 11705157 977808027 31181317 245842822 65807628 382787861 110498867 109948693 584724146 914085473 673214482 385441673 563414257 589561085 535032956 713060351 867877889 999166910 200127564 482127017 816265446 292355207 314652783 17582826 758925198 186051174 510450924 10436615 131122502 189010359 558363206 177742354 118706782 902426023 903992225 857665346 999039844 221259463 520383929 647312812 859388992 201494703 343333670 652119800 758988990 607259865 180086701 66651741 214035683 481209658 658683406 811182713 660699696 459415960 802884212 894966221 428813906 456421915 365875444 450360083 19995325 232257985 49013996 439226439 465744423 177152030 623694133 59479549 302468450 951392664 280357691 146707973 345420791 157126904 881987667 425161362 428656751 566160222 616835194 538148567 383982952 4636222 443669037 335598206 638086742 75848914 823721977 197857660 508644163 554694012 461633504 59122281 899545246 570731039 288281393 326000425 725757462 770959496 669466795 495174060 552180518 572105362 395148655 79544651 944804346 943360662 133506063 675555529 123618462 787635355 137056751 743354016 667002709 26275837 144464984 499899689 380420951 969827746 586513066 961677834 721440388 118962453 8487884 777517063 83304702 623882640 961287654 651730957 946419397 356610262 251427018 994570501 228739715 735107429 98597276 497057078 278913982 88885517 954520677 445728272 739398861 153361973 243830917 509401374 418357965 865422484 864635728 205248164 408559963 633405948 643104228 104913907 938555293 13943076 795373048 81926334 446310854 498578771 878003242 345666109 885437769 678121855 14548473 298753497 331373696 790426744 800110253 409500142 463797555 340942556 331269704 193569674 792630669 68836896 922405116 877842538 828229106 691977481 29438042 345837573 49138029 773513033 848007129 849824949 38617716 25599246 253606777 670771183 336648124 304910513 649259031 967334414 618384588 687041974 506346992 254058922 278941166 644112347 896099264 880158429 567931304 656151371 663267211 778708156 500896382 931516527 131065542 949150309 137611655 910326111 209156705 838325959 588790942 336757197 379717185 287292277 165748037 966861365 705441490 866106051 778656297 318975618 11337126 797644954 38563930 140846432 148665623 928693687 846330036 328633305 477147195 136121684 335339341 313976159 151281325 478056211 689650000 928186872 62155305 156587117 331862937 493841850 97448336 945624706 719136710 405948467 106575058 794708914 173463218 846082412 100013603 417522199 859749406 909226846 330464444 624582766 308224376 938099037 715545646 936495997 167083861 186786734 949157620 561280269 114654492 152813987 142009108 406292867 467354778 195671813 649700761 821483868 429399950 18153252 164604641 697132128 491018202 627120695 430242587 971291926 935355379 279009138 875376018 541099279 42671200 492389052 970258252 943224055 708258004 564906544 871422488 877245175 187750927 882132295 460227652 414070831 219626110 795708059 574823528 435713835 430522036 440038231 622456442 746502909 603690630 484962056 323571405 647861747 59109216 380212676 389042320 149951991 122827880 483639991 875151775 602922154 921330551 616019259 3047123 213528435 307919983 986337798 918073363 225871536 559554645 449649955 983156867 842943012 147258810 596415471 996850502 582650108 636022623 996228708 481526702 108913768 274047603 444521837 891688218 750951055 963104284 972469206 973190855 400314110 579779515 738346784 811603643 536406635 745632960 513848203 965027278 833663799 103234523 598252765 692361801 528335803 57808186 722015279 902017133 115391062 573197529 951684556 418855963 381649999 832252993 362024752 976632092 494001260 226596050 267152076 745261898 293285769 818390428 139153475 559442858 410135409 805122418 172711115 311628803 710418393 225608239 938626663 39045636 39274619 125374961 855239885 918913255 347238234 781833890 161965679 536107586 854680689 447488286 992459342 904814092 82011328 240010520 997934287 467549086 172817724 130325845 951821249 147186063 357536134 374371636 651113129 97066491 309362086 1825596 240484048 540414211 329501688 807116084 31594661 28818726 258392356 496607310 240638350 768814238 871248248 87268762 494258985 958066114 854025367 902986219 640921221 771108865 631458492 87246941 624054655 836676664 827931775 500965804 762129803 127430976 334209638 65138062 955697336 613028142 794157336 36216857 605393104 274675962 166220977 600872900 521898032 384698852 54978131 510806217 949448002 367359135 791876767 302551123 520426689 618754993 108087486 353716978 706845040 24938855 257849853 941124207 58321242 270879359 425169864 221479561 80842149 696292141 105931039 785777725 350553737 227156831 464417201 415036703 700718914 827382196 725398122 294346439 864042301 474943012 824468744 620380417 12669767 798372786 723975956 49019445 33523046 827347902 819821870 401957386 618986059 597818520 799780763 625925907 918197926 597357154 592839579 266704227 812511006 920622117 985229660 251623909 737802102 570817536 474410344 773968448 90319737 104106691 787174350 626418871 208823642 424528991 982214066 827350005 564621408 746346436 503080414 399917786 121188340 569512533 83333066 949354046 691184084 448514229 818925438 160418721 703247009 620690429 616195908 853003138 963183067 107069755 3440593 920414471 385876214 35754635 803844598 823823580 210821632 119318606 239740674 124302726 47586005 802086424 219996620 776395991 596196237 673643831 881935662 774201441 385168182 781303992 109000950 549209491 204406791 471562722 927572487 495825580 303095984 498130832 844017732 716648613 902339758 645783795 186040309 33975252 349686435 114336652 538304789 24437816 766482102 930562548 357735873 935566929 350097223 290611339 423317178 137898544 471654553 796692221 121674972 154833668 270578214 441643242 727169108 225949565 750920736 586689629 640970032 801667185 239791778 171397801 247995463 213695042 424729823 794434655 889167359 391133075 968842427 590456342 560626352 30368063 984564192 768135796 807022874 779115315 721735116 588642183 955764154 482144260 244791996 599931680 497781509 576439385 645331649 132756435 220074995 881408654 718822909 907132223 820162461 468286758 486299725 324127865 506922208 543370589 952556718 822561190 450153365 319938842 775250511 579178361 16689419 390591486 723494794 526850877 965448583 539904515 390031559 756203510 310851842 923951859 164812544 870240094 412532148 486898510 137512863 811211249 651486592 741528738 396867214 743086894 154337484 719429077 791406624 888431157 918928414 310118695 366671302 317556981 699003091 247734770 425197110 828848496 362853237 735504433 208025340 787611789 125977776 946378659 760635642 478232425 493820245 406363215 652384482 132704824 121374809 670783224 298297051 835677430 742396244 911403596 58478211 781449955 681257711 739066070 362211337 760241250 416554379 48245111 255589451 456998041 714141227 630997289 545391778 528901499 962932464 565191837 302225490 95451532 551822691 717613925 893718876 502888089 160554642 397244957 557639588 110999500 891598336 347254394 259914745 47710458 698060956 562436841 478942432 942389768 639628459 818189976 933860109 48358964 78757899 742755517 844466667 262601277 971520044 911153013 108299247 982323688 541030179 207394763 944632240 264702617 359012933 379046258 192205965 729311728 399697106 662128467 267232264 315960800 613776482 455654432 967145890 665652259 525381110 261574741 36668861 395855286 733626041 102017763 518464969 109632017 463007405 908154127 239166015 906535069 76090975 29745449 590370968 798432345 251079303 217596684 602390467 762345133 970076820 641212948 90170821 384559849 214402630 587256923 541282750 93495626 506525018 488277608 641929276 691295991 688136469 666641284 426937405 612255907 609270266 567159627 731993274 447712599 747004966 486274029 882889895 47986411 942007934 331561362 910361469 723862883 891449077 238212993 420700996 951954487 224974846 489025579 511414782 543911223 85230649 415848580 670186628 894800911 473638349 608887614 98564212 160232868 95720174 276776528 623186392 686441986 660169822 121215099 302765533 330712768 283587486 599440787 83826356 530261717 938853150 233785824 278518878 235439273 846607284 602067946 141534824 948978315 617315955 534525982 225458362 705100626 745004195 525325213 914644096 76211328 566165848 324720718 209459458 859931547 205847492 904244835 9182082 805860470 277745494 601165375 611784413 441866423 568456492 658255785 255726021 419086861 563028235 664775270 621140188 157059257 512031917 705112329 711483646 422396856 45194295 842453968 84832647 630252154 440396669 553805072 284533232 291483210 72874165 149200104 762091561 66620976 389442002 738741341 328217145 890278628 427374875 934568845 210519408 280382400 551387811 81295644 316834238 571163343 391235744 401542544 544883514 536140631 543925472 982877712 80583404 353009472 511791323 460127238 375073655 621619668 772832717 283370461 548994974 305196486 96822908 291803661 905830925 894397137 724567355 645448163 555656047 86446540 290786572 635878556 951543042 773344017 487982678 40489554 695431338 399806563 541890471 993209324 482239921 326158546 809240192 485925545 631807657 13683815 723405761 420190442 371987229 883336412 256115052 15636458 972672882 313193540 697899361 595954459 275577060 402769130 543661879 531555166 619564081 415970461 117242429 792406921 186824490 954558417 235542457 720372613 398323657 831066060 461812961 150448701 977697117 663487033 852895229 458454230 31842374 212096418 328705689 172888935 36414312 799714656 918872482 719261319 223755030 387989754 481689820 906406380 799593670 894998160 599679412 191418662 199409283 297243512 506934101 579055393 961429395 454824048 433952195 693432689 77823395 342726179 761824891 684418358 758750697 489360878 255980246 422757681 207595970 113259873 524575329 284352269 562652691 811731865 279288177 521349522 716295548 213189458 361915933 278210044 895908824 847430753 298128984 193698406 685493359 153471243 216164506 812866863 734005673 450196259 155898738 78832920 536142587 889832237 723519069 464352694 255811299 86279677 189925216 81728210 542386404 182072931 266990035 429086390 385501194 934425507 671498520 519892251 643897560 844054926 233240327 645918751 248681168 351042991 939957568 593936287 378414177 659203121 713087765 78724944 788804620 334941966 665354047 426724502 883586556 605291322 381164644 483664854 133534227 635326980 356671982 351527561 193752775 435587049 276004984 497462374 130185710 137951147 502938222 597411066 158240251 723648947 234767418 665652833 944533552 785442334 53558728 910653774 929930744 291422789 607971957 652573549 191646554 533399506 370115387 959661249 831065468 764039014 597360421 57412033 989175157 859127539 151610523 573224044 996316798 777394896 77632970 870753178 576923223 267430738 351950922 764299165 559547187 299706866 42168614 56038487 759969717 249233337 604357560 635691524 909714152 916819579 228094986 461568829 188274418 203409523 79987971 577313456 722025768 499542776 696661936 652863966 56375718 613599266 482481110 869967712 1539854 52960510 316975243 166834175 91894312 695880190 883907933 372431979 902141237 689237351 208036097 298990519 731546241 998751314 223830231 71926490 497917173 704680262 612635530 624507934 31782917 643818443 708848680 113550529 748937641 859549494 981677338 70445500 634300164 961830236 249862650 211725894 525559261 220929286 854833223 416737974 462414641 92855342 66024849 357762874 694476702 528655092 250596866 440483164 553550214 969444436 751991760 269463344 668008444 557850 468307737 65798917 629730949 748650302 266558701 380312885 501959489 780539049 734300057 600342091 269885293 129653427 123731103 782456193 552413055 222149539 86622984 78800934 103481000 55629207 325076001 487190299 920308589 845786854 15689238 719535261 192694001 189844742 401541363 552046903 612695166 85084509 813183382 618356087 218588605 688143197 927812022 411755828 771163659 787775581 566690544 77874473 602920531 56055832 819398463 822053102 798297150 84138410 893938139 721599927 442195826 664919919 418591732 755482883 579724012 405064299 971499324 157026671 56831044 962948905 658327991 822585490 330339734 545461534 205777862 637040770 363032601 205264934 225264833 598174918 184052468 439154893 785060444 174267342 329792874 335107185 298775005 607895048 890186187 873089375 43329335 6089720 403351311 448407325 599636147 51466480 149396187 351913226 71552024 818010417 626742059 848887805 240315658 536469329 402500289 620635175 626134907 919480559 998363379 249074633 688636384 281771799 927647298 740381607 737908971 198799362 732194128 892223408 769101911 143015828 715798795 177878101 812856013 782785990 492306249 703021867 129397835 535583078 536777769 773924554 859054912 816109107 154570297 611347459 649911092 640332358 338570306 239683256 157321337 844596137 767361057 363768504 347933075 941586238 60748485 119597353 443677752 689402414 173489607 448885850 29381932 195642002 151768346 992228919 661933947 563589332 235618355 507089804 66722918 327536555 491654580 519587037 814502059 779748814 487792772 970396220 119708429 888132463 747728042 49234635 796090884 369429280 191379165 859391649 702343649 275646198 238403974 132583096 847584509 135425295 131572874 902065681 872142749 412510419 265642649 409767227 8011032 470348820 305128153 584919026 198778478 851707058 677415874 858866105 948244200 571921714 100192974 538550090 777357137 584682291 449877929 242029507 265849131 416263884 708358533 650626384 920222533 129325505 385695074 827445949 962936055 677001538 264295084 280666976 60984258 606652040 892593563 71081140 756401711 711492919 773023740 510822437 70674729 404864887 34346566 295584978 490388518 583140191 134793903 454131648 855663620 314368170 919460339 438778981 735483769 563140123 265436099 319190298 315531804 785454405 746867879 189369326 893382415 691081025 89144528 867479207 216681847 263828120 605216335 221778926 853381509 137197373 395547274 11888369 447430153 505977637 355381100 137185000 726337934 95594577 667125120 340437183 291211540 542716038 216674686 361555474 944467620 850885428 563657665 962987219 741342231 398109237 66473603 729674738 992924517 100962326 727452942 139890448 439129229 512204709 31263849 88955235 495349841 836476134 816666961 97481171 286329733 923200425 489511764 778283158 389473002 302499891 690635870 637479315 238219626 6533180 787215878 98357546 253434602 278662864 335262803 601332800 88204872 251798748 120807424 202895840 493333590 225113563 487115242 325526294 375194576 988860160 179473016 991320022 696757221 512194982 162184214 985760486 675917374 647939550 748897453 571955636 492897010 980487896 338971020 263968254 419112164 941717660 579413666 780476653 563152802 537465353 234088243 467673135 506072063 573159958 614810106 728060768 271994208 316184404 194511633 112970326 389413976 946392252 103842511 751674199 183633018 855759265 817814023 657195239 297345290 407487453 580522702 357631149 242162207 153888291 967831339 882691854 372467342 182911237 601272394 679950832 262470232 723255877 49624987 969646697 45950207 130147249 192022601 5366876 821619385 525901841 858455474 825058475 861135498 730308144 343047766 880499404 693761505 219544056 788655590 899030202 92255383 331722589 505609647 300701862 454743523 879950745 623228914 275375282 559471668 415961467 523960128 82301198 445130086 931277661 36268356 9241099 591323956 76692651 905885202 991517433 784096927 885952425 852794180 690080985 59153252 51672669 350209593 839818202 959276080 684839432 349088116 272139353 543658249 980881565 576589131 343361622 881191826 720939534 372942827 425946193 941297383 251103698 778878852 753121915 54566099 68996597 27642705 677705749 453119797 25362659 943887908 638950528 103466345 916337453 667865529 648042340 421533279 949159817 626821106 865367658 306426016 726018034 381863935 139467083 741547447 300101165 327360850 111864659 76940538 143470180 983385756 213113340 59649632 378033677 644006382 480932246 391714907 399525190 147922564 314629201 401163756 343598360 466909993 133132800 745055305 670462941 82718938 437848997 85327126 472662059 248543612 182338074 480240938 135694139 212889405 131456304 461911501 527153444 247902528 98081413 625904074 595632095 399798355 688843307 837752979 946332419 26067447 179340648 351452649 733307225 791670450 989986078 606475225 679344679 946499096 597719749 318900998 264320535 912168445 176416507 270814197 492758186 465294404 97509171 434870104 175579184 448343433 5028945 528586471 24467981 68161834 489233861 693926762 770902430 625406997 784755760 450452993 966680610 343866240 600890331 685116623 341516806 65850082 229219143 272865657 251569966 16196776 156320083 990016422 491011764 933211800 636040688 661379800 561001158 811746929 143705905 214879626 526219990 463979607 45797537 696649865 571090938 269705788 608250848 175272100 560940153 865321805 634095201 35055463 153490233 514611992 606159785 470440047 544211538 185355969 630851565 246839406 935038314 578845971 497228227 553494187 988762675 818300588 211067681 423880562 4150967 512224506 269613185 567556608 229565796 353804956 995721298 325476551 430754049 348525629 280173313 941803013 448694146 537093293 758103103 516077117 790120912 614754933 421013967 992165771 897377338 109302063 605792383 730397410 812747622 586171711 593279385 226017099 979745753 931856420 208115044 72653810 682498540 538138569 60854742 295331413 916036830 738417147 456006859 405163815 186312872 949442619 702922454 564041913 127210906 275730212 418904899 635081396 766377165 739508132 699448352 723314395 755360457 614373406 960269562 77264929 998293003 312819125 988312092 397998943 558125880 346020561 95934824 104454198 879846807 922956995 622961003 945016858 812339537 510934711 889248895 890179091 924561722 405272312 20012258 686203566 814257152 621006354 335410626 324460904 433220048 937022240 742236105 438904532 652711668 858860602 26638136 910663099 204463823 774696632 671288051 247776150 307453962 782188143 824038229 760147610 516223896 942582416 498299396 378516354 291589932 611331736 204267896 217238029 988348425 671257897 688749340 907643495 205486734 583595149 444729280 956018288 597192480 108794514 576849757 642869728 223671933 115067600 872066206 306998386 646342956 833517271 848681309 328266975 556748377 308565733 306048145 954084805 62247746 532245334 546282983 820437585 125581878 903994308 659888305 968285844 597713246 599641677 673871467 998682313 252206363 745819897 92282884 828945186 609283593 851842170 442632187 427601121 358233723 571197518 874248246 709060418 768372916 112973839 330763117 461019324 817489830 574625954 241333639 424558340 482997376 647871498 776413956 696587355 298224202 110784889 105451713 960586996 247990407 306423190 904584144 620426447 341478522 997335648 107503088 83979323 178532362 975456278 862844525 687567808 49151521 515395715 338402074 913585649 493353236 928406636 414879570 88903903 117134492 824604345 144065655 795232442 664619301 381489893 102461614 51682628 492567936 610514636 71385159 350262590 956700659 4242709 509391380 752865583 134487445 806969847 300226057 469982172 195462780 448823571 337114555 80092744 439704690 602531940 956978047 973212878 465087891 949991703 446574001 40128283 184790907 612008458 491259522 23420361 212187216 395133485 380887946 903103252 310204619 576264987 722372225 373880671 785101455 701696322 226453566 692381785 560012 85842551 100440664 822397206 24065536 803941298 559970093 998619099 214239782 460611276 730036891 404624166 516817224 280785321 986771598 201332080 218843373 750361933 383444453 14520956 110946876 218076600 821140299 987646949 528558534 568185502 621275195 584801532 703671496 921540906 489882762 37079937 687111584 119305314 372862024 619978807 475784051 406752165 97158557 792219221 741430451 370289452 201130040 800815327 667796405 444121568 472779417 580050930 55862767 11296561 887532389 25889755 410631537 587732548 559134782 936811589 155760149 54132660 373786192 409342910 577893171 576972950 989888579 579531036 651663597 588460256 994850727 205179212 641136574 775162624 720457794 954997449 889398620 413545427 247110153 788698087 693435530 10246888 245446515 330628538 841748146 602849036 248516556 371746073 394065232 559602561 694776767 124284703 472150302 525789234 356740420 539029389 15178032 82518744 497058123 502995 614195829 791836596 178593857 415430579 273453351 686327992 297471916 984203045 290851473 849763555 731323505 722179103 481841199 861331121 943224051 207414366 808197241 784344253 355606983 613878478 163917417 187004698 876389331 494757557 498494898 265827549 577560196 310948215 516509031 298330060 74030958 435332997 700209798 367569975 64648294 706586530 256090547 81040152 510965835 763644208 431983191 718589762 725129183 168705612 773001031 554685038 658221994 892885781 733660199 248266291 26056955 378800464 239040726 762857557 243600166 155244105 889736995 2524920 868828003 814790817 156642784 132049725 316752420 397677653 476964876 338619907 957384242 576448724 514558370 878367778 390695283 338119170 525338275 64735536 390555222 542617111 305921877 955594066 158717618 682723615 561535388 548356188 213185431 67111712 197066156 140364955 523906639 141296103 659673468 758048525 801127280 801888277 727453145 395550985 957926082 814755750 271959810 514727484 11949688 495025410 401992559 152459586 608980787 169355189 458402545 699040767 932505281 693961864 40958963 689387639 500393109 741352947 571062550 978877622 358553461 426010929 553819321 282328957 833933303 676858890 602065651 345722358 251322773 696669374 285032203 542234093 972250078 756848686 640791194 80356119 887088036 244572503 369494517 596369331 801437013 345747604 261323361 444442032 893120785 602881000 544125303 508123166 957198299 780647485 504751582 626565550 55490074 519564373 684575787 765238733 851570546 681231539 488084722 492046126 335230741 55435825 963276909 410790793 571478857 688953120 751469612 667133353 837832989 521364623 642475009 394762151 90269033 540904057 382131409 502547717 923190697 46848791 929080781 136092761 28978533 972306209 951203217 752551919 182752959 174704314 78858891 848897634 430346823 852037955 287628683 359731145 719482077 904009403 181779419 956290151 926716112 488024127 386233392 305917970 59172077 374327986 285540501 217517916 694296397 297905470 69990899 280573216 34886128 911366478 914915938 960628938 96160908 3426511 39151637 401499288 357059213 358440750 599141863 142881349 623561873 116852443 666341318 482764615 296363266 87256998 637760751 58728473 335945297 929120197 824942140 44848184 584330886 613924852 610829241 343055789 455468747 687998877 210887282 105854671 164795621 513572587 782625901 50685744 552648936 166721494 222330865 503935863 979218174 874676823 600414601 8313878 309430373 16992091 66727406 38703050 132588285 129446023 876901764 236494636 369239394 491412292 459276588 531696736 637258225 860182996 858592205 48890217 983198797 870997987 901291667 359078067 11969021 19181094 110997079 458551484 722002250 374940452 428309468 800945341 803252787 935487213 261297946 493034064 164040406 955404990 763155432 235520738 590790234 15008506 833022689 49442317 578323148 668365991 615473311 988701301 144369672 492902238 660616820 278093652 62930519 660775955 520719293 141475178 601898991 239826763 336998337 899775268 646787006 616345186 241130245 363107913 849346180 580447301 17257271 974386032 938267972 952550342 128790108 135197060 720380707 942344714 562071048 368404283 671232423 713101416 337712699 557874595 522697115 438183409 180823893 316269987 215873320 313199503 249112698 352287731 329822424 257752630 409597454 277246610 525690158 382780809 395740846 988598143 227534265 434181743 510855433 661840756 504605568 354976906 654579273 929435900 320306965 948711400 328718889 295997070 934357135 523938331 507077573 667837885 58580736 593883193 844499424 288525859 422644160 997065882 425515869 363601041 121253334 416140329 780353118 456565611 182131144 790018167 29791696 325512274 36904853 632996243 582877662 53970617 92587610 119342124 492508138 343878194 135862673 68588275 600239004 313481034 833314152 753080012 812295263 928143291 885839828 112438602 606473696 469100188 83859175 208551023 386714336 51438872 875673337 269825511 247982860 981655318 664700303 338710747 500382043 319237650 238525570 17954712 234611769 533664229 102426742 648262880 157549973 114926972 343414202 550313003 714414740 496583599 750239380 169337666 274220404 356870970 838758575 828513797 501449668 809933802 531558158 849856371 87103232 196111796 795367304 426192740 713453347 978559244 285693022 394139331 57849002 527220106 395717711 947360015 248954750 685326698 62183346 952923679 792603150 925438867 475456575 86940806 136095689 604331930 62706577 49566536 422789899 393889758 800271712 581768295 34999982 548511970 892352299 179692219 691191498 854065941 808505016 499099918 714524781 197535538 879367499 357360414 485521295 116850919 191216209 842945500 834213144 835711418 864462051 497460411 757875656 770545610 185337448 827817977 440701488 742864558 832238557 279659174 442308382 705422507 71902754 915445057 562640976 718018418 141678921 119883750 447763624 879573831 561702515 20447286 287379034 35514163 449506450 524956721 25031816 474994050 162772647 384643416 715428897 476049799 191486457 809990102 237726005 227069349 725352739 739787274 134341246 170139850 715968906 824134523 917410638 522379744 240414232 821578221 480007201 375012789 372904800 902727412 110490678 936985205 80510593 965056037 342597179 271720308 138239794 542789607 405369796 174560364 150149100 431513761 168862494 563291724 433033586 487915578 902671077 237939912 274337225 682706427 159202389 334791305 179431165 765777120 234181287 154168443 496407523 876711145 937398896 358925579 328315378 855587178 662193785 312970737 791505392 214244430 48894774 180846041 596116853 967547799 298827124 712125428 508328274 655844410 968053079 520995082 277005898 909456222 691292056 484964964 147977979 355606581 835310615 823842630 522919270 222025822 470498850 799431799 732824758 35141314 222422990 776713165 353494857 539579993 926024544 176585121 373975584 142118528 893625175 69344924 767360836 23043283 465460456 882227974 201037771 872620161 979214781 919549074 121548433 581427841 12431 170150311 69225370 696304195 50194905 754545486 176188068 301960187 51916075 848531059 243318684 857236840 671216447 40992679 566625944 92602946 194470826 730251638 221500440 489645325 919763245 748206619 520005691 955409460 391364473 697690148 9439628 933756303 861231847 175749136 429633779 685522952 44476485 857890051 535507565 248100467 863947869 753738896 50932873 282438281 541493089 343526940 538725689 565121715 403875007 355533209 290850987 752028342 94802859 378425901 229417143 932989887 707626349 613089751 615387199 909488223 737459031 130990344 960334934 860586829 85766858 871633179 902136118 209297534 507948947 962033021 596939906 920250192 876235158 486786275 300432597 729479342 996392301 961024315 56863841 56393875 948271862 109685326 530027501 382593517 550558314 26686769 948886605 70271428 711593119 399014247 247130856 135587936 75400258 692563838 563411897 953323421 502102192 246569978 867360008 445409039 364582197 312936248 847199903 445820445 996080375 738192366 259483442 694048039 254113271 67025444 976500971 357454128 158102534 19881471 118128300 991986522 919112182 225502341 185933431 716379879 812410211 753135825 661367601 481684531 514934799 923711869 567903609 554609963 228542527 75158764 232234093 924358736 494109781 124004310 785601992 238527111 119989575 192562194 69875046 259734674 907316344 995747331 401258081 820125086 265696727 293970180 964407932 866195431 710918307 408765099 480854484 139296306 773030343 626440837 429227464 502268136 356010276 21455975 752555186 113780982 721855589 516224780 625354011 224461585 931827444 261644335 711198100 274596617 54737283 183457109 246085223 491253532 173259808 256013394 648333351 134068557 14365838 670869181 982591082 473579822 660696425 596371348 811565801 155309934 834417046 585541601 64137419 886733441 835381169 713059708 72164552 166941732 132609589 248684544 371212048 582846510 650646234 800722365 483796307 355013486 253566387 128482976 587537694 485784646 945968321 422114000 76467480 487656482 773357762 20782187 657876144 522883189 503035309 423274760 468435857 351670807 12947905 925397079 348935574 472089860 356797757 201512381 300798258 752302231 714557378 878261346 235066715 4523010 773916331 879870020 424468749 745285369 906430588 409137073 297162891 634858038 820690461 443862723 127666 965562893 376150162 92995604 470361966 218296874 953525659 54378067 217316190 281793131 849334125 722007426 410389294 512893904 966664673 960932909 328861934 271675803 906757778 93408128 952383724 892136946 974522539 112810817 705945963 519191079 906914518 699315934 497415513 26594617 517241801 536380344 342273814 760736082 377051125 485841508 152740211 103485173 810359282 119273109 294477048 799234011 953870668 140044986 641506064 726896743 103667978 169134787 38550983 269978066 467507202 92617764 3760728 1649579 47315196 723362267 64177016 815656257 833375516 352036448 788806867 528117097 551910109 619937568 968289230 475897936 274605193 917124940 497382333 409098159 25153986 68692229 963643001 246142977 729761991 223722729 743951152 262672205 566681727 96490742 590356593 679795630 216744638 543300923 245382419 129169831 793411644 871900053 837738123 676933899 234937179 173065735 334831065 970028123 406532502 359133518 924991223 543524924 960772618 71788856 437334841 878185891 344649971 365263360 365081923 519497435 247544815 781887095 544497407 783283246 932002988 451908599 100744627 618101054 829977866 590435020 280051570 169053099 7415909 75281085 350210375 624548869 902722376 157579850 476763654 539699619 920028649 112704485 562557232 970686164 552798738 373989827 926215278 382769970 908979972 425323055 267782153 640152161 992387482 425682405 353542983 28397497 912306617 465994448 891740921 353111521 986759817 721282141 64633015 556303935 232788889 619643563 582449042 276094933 828815776 418245179 134064346 380305203 835873707 308834561 654310321 320359763 183898078 201085694 1366480 128261860 187651805 610346561 458909032 123775066 834300231 611740145 961416017 195145216 402602901 709812950 121670261 717506553 796583279 368905803 972053173 404024435 805309252 742902378 174201219 253546512 39149204 705929905 131589847 508126256 95887022 497866087 171413083 238548814 566715679 301478045 566727549 949066775 554651180 706255981 921560701 854228749 890302449 408253896 353665773 625145103 758021615 827033221 995912550 586581358 574983440 209197967 872749939 194381887 711167786 631037435 800428572 605126658 935775863 504117632 253062136 359797720 926374360 377596794 280495147 364505994 27700947 782653198 575476015 298163773 102075539 747561033 153811648 190137634 421362900 478292033 776018663 226059214 160756167 370163268 75513585 946984740 116729473 26370685 335886310 580045036 237115485 864707198 657797308 851054453 839644792 989077902 614893955 66316497 498331945 268481630 945875543 333020709 247271384 474889864 798661782 867293957 716298140 515971772 805902625 215414091 811136897 759971340 657238870 335506633 410164371 138344263 937146823 939790926 839298058 931048089 521120985 713585577 543042863 646817468 8035401 916534607 215284197 26664021 54271199 168263767 130479366 706496372 396056912 178345294 185625474 520630768 110399947 987137662 637781656 616630259 929847603 848149691 178385163 353115418 869753966 62745769 679865720 546089873 565725313 216580988 425670972 83168971 737701232 803555345 818390783 691076682 272150107 402658915 504565900 894470668 723030943 641060647 623177493 676110881 434065359 811311908 599378946 174414038 623102483 152273894 381681675 985659501 686508524 405113347 240786103 931781933 661464400 267767807 392865511 54461823 179679870 856982258 174351747 456595803 165161217 492499551 892293532 599450318 478446411 190174214 104023919 252737589 185643350 307068661 560311564 105830218 208825327 589672936 573408296 484390414 528341938 716195905 465370238 442337689 352716435 270568882 175920441 256062984 521350859 295475435 877864470 650996724 979244679 500798454 344872792 463901067 365024853 716284315 353328992 57989953 679289803 136401295 167408507 839903837 286447468 600299449 159431807 722696307 190062158 144540751 821219919 693414025 808236250 921915533 442461678 696765168 72583265 853278978 36033836 411611138 993225855 596368213 486122861 474103806 988213753 965501357 944226485 38350852 902479290 997052980 715240697 635458879 580530722 183142161 806071702 698101936 15575715 301253887 584837484 752463301 334064032 160879133 96668072 319108020 17270675 276759179 161389306 570717360 693861121 799806435 473487343 637399859 941107475 768215058 475481832 546045359 584476061 561996422 999129459 583253083 849170570 300850726 210311472 299531380 325710130 539230012 84869243 120250705 790486184 129670832 468685213 386372844 36636107 917931333 158645578 71791760 88992472 111339553 468201953 949595031 571523631 739606265 932377186 915602813 792259312 516220859 128935345 875032676 201773675 227507241 428123114 763641486 172631454 708963662 553806583 355907936 299625569 184216272 298140567 450190836 497157227 233955406 979466057 70553865 870160064 220815469 661640523 706163863 891713129 706722337 532038284 7572542 378079565 415026343 543337967 860351993 652394943 983563410 51575047 566047757 743583075 997881726 387526705 139925339 159564310 688824327 414014716 660222239 231182244 219542984 826280846 235265824 999293510 323034989 113764732 432157108 624374187 187125524 502729470 52695094 603955211 509161866 855491234 994225619 412453654 32603071 774019947 775697342 57287900 169687954 640439665 882465892 920766881 56224986 305604685 609828919 103036619 285405273 989241522 722993910 905080182 300587699 729550992 376456086 264115159 498522070 611096017 918790604 580836681 227588094 477104506 581164112 176098447 337395606 481883682 13664460 645306325 883810908 501913641 70781800 867603960 680593581 738672235 826604025 884066046 743262673 75617315 630417887 32784576 797332986 757620381 65535584 582080097 855107785 113779212 361656866 517214191 284832519 45508839 451641321 179035010 223811421 628207508 373257344 634928935 631010764 407812438 824389247 83511997 699090743 534040456 195322869 315732227 287619606 362509490 330371100 1262194 655863041 620905343 553520183 514483519 612759587 2340480 648498323 158869512 678542745 25335243 152042727 883197031 821538042 412234386 586135812 48190857 501371449 420328043 766550813 31232044 237334845 609857931 748724839 437196071 385782727 64774562 511052847 858802764 56346161 125271244 182259973 744311133 176373834 962809722 910883622 672210863 290328901 678328525 185904858 858646205 834057535 824890222 760688250 325463069 258155119 67452701 583192340 535358454 866701223 577408379 137773220 868580354 7072344 945454503 882453687 814267357 34256727 482947473 533623217 224633173 949928497 127495044 19529867 216976667 929287404 490320415 158478468 870460382 347802429 288648702 475644267 294189475 951964705 167665570 656184092 859094099 672759184 754499865 552451436 694274330 395178893 263501027 157975214 91811137 282078646 978868854 856406139 392873986 464628348 251016464 289912869 687348621 355123627 905372568 288262468 789441876 465146691 300460787 125473196 234486050 913855987 865263136 846675586 399276927 730916040 930419037 134849340 726059874 792652960 249469909 227737340 935908975 514358340 950972062 469600491 950286020 449707795 694987525 283207063 343602269 609923383 970850330 130306189 940027452 560640008 878830712 179178239 671620751 498742027 674263014 216156089 556601582 44022288 958551474 548729304 206812780 529343520 740452953 150860974 234065169 218823222 795340047 980311129 584994042 814862798 881066480 657689325 475203352 584301559 425184978 771900117 849110649 510841016 179436340 564699556 125382595 841552742 655881877 848917313 771459059 800082374 633556892 628380046 121576604 997558006 871599364 72813270 250204779 622320929 301465422 923148702 727884768 197231508 848492482 781111004 604398748 43130553 914124240 47353659 879531140 576232566 518285270 303948344 992938108 244460540 853315976 998594540 564218366 29533334 356861512 680587467 291700533 942296142 339010772 238074052 561363057 35406380 42031894 562132201 313900225 599958000 851271447 220628128 458230355 705398384 342157855 599522503 912717291 492180281 289599254 324038331 968146627 350059316 627509343 860447897 353758079 849872768 528202421 302738870 342812528 425470708 797641214 532151561 653896606 665315937 382590673 399977744 139393898 507032389 6284128 943840392 608678576 171466539 509397301 98464574 277555042 232277377 621662964 286914462 328793030 153956334 173734279 747648426 372426294 513808017 300231406 872578936 328352662 873244705 123159768 319874644 638413060 264071147 892170786 594831793 544653457 147810433 34423595 763771012 890757646 24234225 485535878 15790576 487097687 727435129 331785261 619564313 129570712 762153697 426345596 531470827 9032498 795627835 831751568 539090651 859746787 384934382 457648597 974100261 12205293 429525689 244317004 459461770 575166913 598704757 305900395 453463811 975550098 45757381 177097676 704902651 153029653 531012728 302865944 79665810 782509763 712067083 32789380 886086719 376493684 583028477 695973003 33167351 749702762 82253099 8264704 858430770 410899944 318163453 757289439 57422211 973982324 375082288 905177518 137452223 403286709 385907929 812213908 293583526 82358063 436909574 620163435 472908452 99262287 771365018 361852375 583755451 19949783 132567070 661725466 976599170 392668263 939048870 863363000 237399765 572649990 427686014 58231810 307465502 613278231 232530407 766515638 917843465 18989257 146234217 439901031 978971463 724135771 907697013 404171113 80037514 964768464 847192932 973184070 525556131 326131486 287289691 445990107 567165939 760765580 23281696 771397413 103196974 684764047 212933197 168264784 956010428 159341253 196777604 849940775 431645187 821169847 835863075 362622987 251178954 116741455 922988434 892747159 57094620 698095165 217855411 230913852 305269449 130249534 362858702 408730932 367285049 398019363 278252600 281970882 453534755 714074889 252587503 320557941 523771050 70117246 469645623 654023643 397676080 925238406 560095391 868812862 519129488 242687713 458343799 281881817 917284159 54624800 313581862 33495515 647280952 717755702 869613762 686897737 909105417 82614521 288494094 72934211 518629406 372398822 614253846 70780182 377599830 262620591 661060321 317118598 586570923 667494125 91522128 192705117 530158403 880862939 447362131 10328012 39271330 243927909 920698055 149299328 718408519 979379589 972091086 827777293 653271419 475039460 680324676 927006047 417442551 899529743 572084766 336506159 262770993 788169181 393533258 771320479 131631989 718442489 264825579 900761083 700927475 669572705 411938326 538760667 276411767 569416019 51702466 170567692 625372799 399325377 464174353 567815699 566130342 535396264 474728466 349709401 241529631 960764273 528965357 147612721 648616828 770309794 963265111 216183026 662501897 282324801 954220514 242905099 349861069 29890721 543871165 895241363 617860013 807080241 336411056 826202475 161057362 574560358 842245460 675984675 333694798 856273277 132382430 884850335 330002202 404445753 177863816 202096529 403160418 711976841 476591595 909273637 71450407 216580941 868336879 91252840 878858270 910078441 950182869 1194890 494521646 779862147 121666604 111606384 637747051 615446873 89172070 898883976 968253736 328265383 905247986 85221982 924424877 173449016 710201330 268577834 541675547 815917410 794751314 856523242 699995008 991546873 343972505 832775930 249665958 924976870 274964507 289600426 42335818 674413209 607145157 517293575 861678650 750418572 961521730 304231023 511250333 896623082 30163339 680909543 984737080 564309146 204121901 21243169 909227373 435619187 396127284 988357401 976094723 141903391 70247250 449481440 405798221 369514955 333751756 15962251 877236003 171821190 390388182 566374374 331767343 467344830 408006963 278483193 279071538 524056948 274116864 666258104 645127196 744836097 53707035 229815385 734868301 841163842 367054733 834043062 775964348 49959118 421176641 6500096 471045220 360335544 26903464 395396811 328144595 650031230 823447809 744050219 537338339 325706142 600513468 413802681 115832944 581041831 502139540 346606338 282155138 891902822 883034557 302732106 846419144 711487420 416597303 671209115 695292720 984967442 320376629 87698907 675374846 416462246 928051528 252851286 893922838 129743180 861370543 741135935 726681507 250163842 340839823 664024326 722128071 23868681 537487104 229358417 497943569 248010455 477558503 279911862 883455196 367386131 5755754 234831745 348334843 938298754 750614177 172951843 913631489 734304905 527356021 161150082 479302042 605729308 432935519 19671835 228026787 894004328 939561676 440471721 351965126 167648823 674219210 371783851 394692522 447009229 530678763 181772152 548332980 663199481 426039368 4746100 495409947 240586794 218787635 828889371 201362867 365901357 689881494 14747603 822229424 85894280 387525847 473856995 292781949 639003322 743552599 509454262 3463829 923988715 398439819 163092982 42559081 366962629 764291648 716466607 740394348 295342315 584992993 168769597 507694761 456089357 376534246 685711004 531969873 288675951 635394801 732370847 21427941 237369356 701881347 841136237 254659297 463948895 418584164 602545441 369442946 277147875 66821924 596764898 728775056 806770417 916484265 249195486 469631854 84540102 778524377 703978413 867429681 925667223 728531695 975912878 340508888 897862705 680274271 70034435 422473069 268977936 531520858 876136880 950902004 485305210 362753285 490305783 842975886 13189514 99308822 821739935 281129106 742027253 444439926 922368539 151571539 926144234 42184426 655770168 36173820 455161407 213351638 739082018 618162869 542613416 52305928 878688148 659811594 156367196 182261918 96395641 403839596 288845616 426312491 600936451 539577817 5400362 576995688 319095668 708814675 782921304 323039645 956814125 950455738 62348808 962512164 675436209 103188339 473893360 658932175 956225209 29706185 933565143 227556294 728962289 362555957 877142062 579352507 763539276 768153830 110111910 824505981 433340573 874090312 950001139 43490887 904989457 969704130 251037968 57363059 46006250 291256764 399628529 456601381 449163972 597321240 745815238 433155733 657497205 890141238 685887345 484581913 705130921 906731013 945656604 481019340 797032272 351047447 561369364 618562573 804172867 210912608 292419470 415410601 151406992 737356772 380625841 747351570 525247302 393908439 316290850 335060445 633226511 728185364 871604447 564451946 627923802 337801749 410110940 794061815 68673345 561188120 844164431 218518194 417707495 297328699 519855110 827765165 446535565 820458251 212920210 336097282 506766226 655523196 528726158 328963688 454625627 600493164 898711028 921303715 280016888 697018276 891222043 856557236 480200315 969992128 240522502 360680459 98760344 772659542 376460680 315057451 466642343 269819527 329049701 854485159 564627925 746140557 876161346 189117175 418892078 302966271 57474760 204481908 649542606 408444708 448998111 552057719 152647113 944161623 914833793 212832663 164160286 108417701 803061958 171893936 322541117 519112419 676235480 30629256 803440114 820455015 517245318 867018869 726070805 453483732 575570395 386016922 707128892 686038694 120481187 936086270 83136734 24415318 904626906 239267622 616354463 114969155 790518535 634634534 142433269 479407026 896648879 442035937 60234837 428266638 321903329 170628444 663184548 862464404 545536199 308108797 341910323 426160746 765417364 666495642 917394728 215306489 198289482 332084524 620860923 788850837 479217823 686112437 520648902 400055255 943093345 784317053 682371911 153279851 606574357 164231756 777642428 80185676 601111491 420386692 69800086 186876660 583653736 173493268 218678579 300793482 495980816 187050570 418692735 775070197 498322760 908076094 288108819 108758589 381051601 698327135 674581699 120055778 696679123 602187465 803084191 633469047 134844223 360308881 861077844 715472784 476889258 912682952 262213654 386616734 531791376 970016428 614693619 466165713 131428198 623455708 978986592 873854478 502770290 255300645 901909444 149419846 944602185 583930205 431718127 817053325 560811378 937075035 300490522 124806585 131094362 733202794 890225072 567253657 660326079 132628195 642142603 886760633 963300677 723293549 743747244 777069512 107289149 782114044 814574596 278006734 852103468 138337466 964179812 621766455 303715591 107502179 361946581 966709031 998200476 164844005 463188649 691603032 791498741 879662438 294788595 789007555 430829516 894401348 272260627 944317156 150394941 874476113 55304373 576000748 65760192 168834083 686404290 810159050 172864049 198269487 723144775 428145794 27417474 525909036 813925024 580045487 341539148 772920910 9392432 622742086 57813627 679706761 801047768 150138090 877118938 425759770 17567147 305481890 512446287 457320338 170086594 885039428 750754230 285758836 744907405 261297764 911245125 151010485 446749944 325428110 692584975 924163223 2975661 322763296 595746387 30265259 350668017 94230934 980006135 960429112 966600044 186310600 221592133 149949327 331738811 846758423 535912816 686162585 587942550 656523778 599356271 235000467 596076407 754797595 206391019 676125560 577243858 956380523 765469578 592957435 957551222 355748735 373637798 972750971 659097158 723169905 774077481 803550288 793335015 460609319 819344296 291511616 605325220 45830402 529871316 821281228 786399335 648003871 458335351 313546285 767805608 11618154 439101426 529438395 324724857 20884877 103344098 326232280 393531833 723817932 383260575 238754824 471319732 214608836 902386913 103464164 211696241 836433364 994360331 872040344 921020157 100289083 443376798 686541728 6768406 388291184 968821494 771000382 817659319 19381747 456520102 972986821 259043014 737661661 856317645 825990443 988210154 396139496 440773175 76785765 5929742 568982104 628597636 618920649 651345032 830987015 396825930 61237883 373190264 231438114 19701167 695360818 327419535 190371773 92088262 597654133 672014773 970575708 344682075 276055255 817236741 411130725 483553114 122217215 643637125 473813766 29435847 447936873 994698610 314008460 709518135 969110488 91549531 39283197 500693659 495990167 258630462 957790542 597225911 901138977 813862446 350277367 982086530 538125853 151833695 75866252 503409380 915626403 528136800 112177001 299603935 328026945 345373278 525545855 815283143 625644385 285918229 833524713 591768967 740801597 648999295 425183770 560419064 731177438 878646797 746824481 252490642 26323011 545136489 176684495 137549287 806739598 250256673 416690091 559567315 13975339 441164370 18979154 73520469 761759642 895722318 891826967 210371572 427590242 562228800 175429410 215639822 37311522 816190949 194239719 898243610 901282825 382197959 329791863 530635959 465700046 887914359 675526496 538448117 232569616 760332829 956073190 249914254 307202475 297750904 578836871 159167405 597300992 988454472 725058585 377409552 617058669 706303828 925726857 214444658 521027228 500294561 682161395 763719421 708449077 91688320 408988228 127191959 616347941 201156031 119044236 652975671 105670457 660163530 180990360 704554254 549063262 275488495 445148538 559404798 136368501 479112248 866098632 605949409 800083110 284632748 880654898 973627982 787319485 553047207 583978472 853849328 288383899 751873771 675808127 394350332 243984615 574707373 689025084 393223267 136712935 430856720 536220008 112289127 635835290 291624530 498648426 398127494 448208358 360477114 671273883 502358214 94555731 912966460 663337522 350520801 235127119 107930206 341123574 491112330 854474658 531106635 414371341 811936343 273458994 418262412 233428790 960166747 335849775 477239943 3595271 662681703 897126494 781671406 550668574 788205206 503039079 487145904 972801665 210916452 920835484 594006494 859536170 361116284 6574647 134238570 773655693 937147712 271893909 719212283 217333772 979889022 165952730 758721187 906980351 467505668 384625961 232092855 233570044 643443341 20237935 745417344 408551361 415222049 582920748 929636887 122455205 626355393 701161167 998574042 547232133 976549802 73947452 223921155 684631716 720887793 211659671 395099429 696382000 999735072 963096774 206930673 655955312 644052345 33465202 394294769 226668397 181862500 590150752 330391360 815450634 933707991 479230304 432432700 41765065 455877752 703045309 336451231 317801022 316528493 25690347 828404036 118329316 834136986 229871698 684524460 192460363 203384408 85313534 549013311 655794821 177205620 138516964 28949358 805206460 75694754 379202367 64747594 967412140 123671171 942999232 901274785 173922032 595200418 604768190 340224405 808533393 156242805 952685844 460824898 822401634 454604298 80482409 538640681 563023556 748832495 578703915 750421957 808095896 777036611 526451288 609969664 901061903 601176421 226522702 36093872 962788648 841194879 614874617 392021306 431964385 541085767 198095819 3301798 481519991 303715632 360920742 681076940 548203547 707720793 256534393 626989383 306454134 242636603 333019926 989517536 422058417 235215153 446140734 694740072 751406030 293109973 456395958 305607982 64473476 812783612 270858326 487543208 95491243 300443644 451794522 246915552 578005028 73476682 805564507 993550871 118003903 500397713 204156905 360104255 879649557 489994892 407736846 555327234 813706499 343358393 828053422 855221199 100710996 515488922 883736449 359407754 631848738 821291923 347790176 458134032 336645096 14170329 951806559 124721322 965404888 288939403 931990491 897100527 41537584 402306976 651034572 218997788 118610734 153398099 792644295 567803487 927936654 611574892 262147560 958513155 946872845 406636400 794435133 130237727 183212116 128435016 377234945 622202141 72071579 814795771 531713384 542430781 942744096 437335308 945796234 177943902 896604245 840526605 41093242 62324106 199533127 838604523 716155948 945481960 148184997 723271225 737938975 541994053 981748015 711214037 322450883 10776065 386752744 372629589 284878965 476359193 124292195 469267581 101143292 204718762 407601447 129280239 116848212 54464387 718186141 329790186 850886454 662729355 463645549 479085098 535846486 780584346 189139869 278635084 469880926 513190436 223098598 495892654 448337182 770704940 726189517 717342520 242762769 251153471 562735698 533633487 994990013 927883230 546012631 455160760 948645640 756875644 342473230 988246251 756090776 992561640 51854434 722554393 295332135 890157324 712869738 633605714 120486500 99820845 528776896 999575008 845699816 165194923 386742631 54253134 428906010 556306716 24540472 180090712 23778412 48899035 981661964 905499226 637463219 991604790 736782000 142415003 144973944 455608761 448553877 650433286 676807073 625882815 215843401 67578370 16429789 656990165 824784743 467549951 269884516 446009081 135917722 109272835 901301395 137907065 732379942 968821096 526141933 864791679 329634272 81251973 527741531 619053591 628531884 788330101 573952151 307621159 304479983 535045925 511520793 623718096 910740556 635997013 144653106 820580158 637356078 812051019 61951729 844825767 314824737 8031235 967987714 824140381 677719469 702435521 134222491 322221729 763985603 798220468 223214177 439205855 350015348 895180761 103318249 839321848 635408440 668362567 962587956 749208269 581162444 848111763 24940397 304772561 366372660 259727921 227218554 596622836 738487867 601836130 975642202 101832362 435559966 354616622 16347694 94631669 796353990 257897743 925189348 96180120 292105158 386457203 953987240 733050715 898741487 238150789 52310592 238430794 14436586 965778556 43534331 94266823 601894238 672589552 245817016 610114866 484413369 907343179 96774184 782311505 58810687 968583572 83683400 103478553 903765458 717654778 855967129 42552600 176818691 745565798 850666313 318006517 448114241 210592847 577868960 562219433 520256058 40120831 742923861 647500771 838081261 119037448 852012952 931285550 502693723 701981619 753888113 580673388 123580013 571054380 875255981 783429614 856664535 643666319 268399117 880293743 139991780 969531443 454419748 694812770 978177311 30898188 827845680 344969155 625556040 250726921 962284456 510496324 697364320 903824650 761339228 387127990 575209212 101575530 87993431 738542674 9253852 960154052 378645099 86250597 645059522 895402642 104845276 96557136 571425429 367254484 345579521 124815028 81648472 317689855 375180741 676490632 153508323 353391195 314710898 123017871 477915235 118095662 394942335 334940153 733592981 73748267 609604174 186651110 543735410 631329504 804953479 462333080 899740090 222542379 48795873 787901206 383897203 242848771 786393156 822157167 860523874 772752693 827197289 621077735 824760339 385843700 200186212 958105219 951166624 706435201 612548751 956873924 587111332 429996612 106419990 239455402 387049543 720011815 590764229 310738314 960759820 222841631 831526634 919703533 197489149 163520242 77173533 371521397 555366953 691576507 393849401 400653344 185388370 163200041 811730697 55618861 369655543 962008927 333475495 665900886 595692839 359296819 254898559 595253615 350394214 920662544 889702957 717026702 612798517 829406063 924590025 358083777 553092849 576788527 566976678 366658601 417659516 321702397 923502312 705482744 938122563 582952132 688476392 224879702 100685783 827117203 857313718 606297446 548387930 328806676 415426843 697273657 716625684 640140271 892575764 741500551 319023806 536936763 938110387 984463156 317807040 711979192 673588049 72550777 467766064 33397114 247846935 279778331 132625688 813808994 778922127 87925320 974708385 985883978 654569972 412651283 694514589 847836131 966241953 729285049 689650207 350025636 486114360 249744065 482107196 791601226 254190088 998083038 764585122 42115271 940441204 689661176 839945162 340642424 203196727 947310700 122598737 411603061 198703212 260074751 371932267 682328551 601114045 556438705 864791438 240486566 882443419 495869162 495703510 573919335 364222975 721660253 192627172 575306580 527576375 662286493 703383300 816407502 478557493 827402265 885827862 247634009 465760210 665817083 952087240 577119341 46221405 871919119 984875798 933528397 264890856 98372647 946778060 154539783 128206529 4436267 471593805 250906927 90741919 945489832 770853561 545062963 405855825 361418642 545676118 486032906 630064444 876588800 480396842 519761334 383466378 299510154 331725768 826515770 276615038 164717843 803042082 354235396 857373875 950195605 350153961 88221719 950896527 173574783 455136601 514038589 909081287 697987394 512095714 582801976 320269863 495723412 674070849 310469362 419429564 803554460 877446142 193838577 884610934 620302945 340107225 441042525 526432140 273141280 153017544 907694383 633200145 918223091 733343951 446832442 508851412 303072177 243578317 993647923 21487840 895668402 711495955 771774533 416599724 551980136 814414866 119275214 206605547 225051018 315879100 253333052 946566645 947870713 747845111 742758520 26813535 16097695 502173376 849517097 225140285 242687379 198207945 667424401 682164043 239373228 168749670 553097373 501671347 476042390 452034205 261992611 800829347 256558979 760658815 36040587 280066463 770918516 208237554 13426794 999721586 607882164 419510877 144294960 672273273 350666181 949634847 72527041 166314220 571157133 155725232 739810501 246540532 225768202 593784192 317534803 477548062 666544589 805005979 945308662 505414807 376268844 665772949 678503653 606577592 584320024 714832180 880843580 818147176 700605825 689220553 253418049 188632861 380499806 18572380 593200077 992750663 109763159 254961374 20480771 967370089 826508654 955105454 314477533 25050284 757894317 547081970 688192006 606640782 187782905 38558350 387681481 280722160 973770774 217504725 760775399 700403045 944336074 775325489 160122733 214351668 647727832 556799121 209778276 278091701 206622491 829963877 905978747 858592232 931844715 914570657 829681976 325394580 986185254 597983955 181383882 922766990 571869907 365655036 414328259 205615511 550436209 513517416 184469079 576867034 438375538 574147576 125522189 381414055 323806590 211920348 938245528 513635945 386667529 62505391 700495965 77077184 388491992 907602959 665195267 22409851 318411979 501983276 765716830 694314709 559448780 737366357 196938443 723724935 124957290 490076257 684423083 160236414 894935868 46986238 263723244 985139932 92689504 78144428 12033148 518453416 617671669 295522364 678960412 149856819 915355894 434232381 873773438 674680913 744958539 804293576 651334993 238503985 175946713 993175761 851553404 696869223 686653353 205006791 673815473 163720632 412591360 421634862 766591455 829042310 103713434 393437523 757022786 240710397 249140050 449440962 974329378 619287270 883150219 720422536 654036660 587077922 459821471 71796521 168376547 892049448 838579457 289690194 517306017 893155059 228030862 293287837 987609665 883079393 256591202 163588963 475101871 12131384 155531503 511147841 127892046 816527807 237532206 310336300 47690860 451619506 481056957 282922618 852170651 751770125 289460852 169915294 254021615 35410734 218277437 154684525 510277686 817026549 738068045 744131988 689944821 288943902 126838968 515222268 85757770 39202563 46024359 564399322 933504433 483456191 468808040 415341504 157707769 655730136 287260642 986141810 310893344 779628994 498394392 457039749 721146135 593644587 671511647 254448746 562282401 883236172 878422643 720090836 345200222 338933729 304609192 190966668 895712620 35172484 722213846 568069780 807962066 773283483 245406790 410903231 618604637 900154237 427187612 458125853 552611766 432828226 840565085 797593742 125856975 57864657 367896294 597658896 921250891 490683135 738999865 623911726 85036722 143272670 597457952 494640465 268533969 36048997 602151368 166127311 756764376 391513059 678931772 607995099 995046877 363399035 573047858 324307210 233755990 459555585 385032218 375677012 232770120 881241889 36235787 343169752 289997544 481208258 900449117 634860528 122548684 807535792 417597732 143965042 316135229 617452045 530765263 399114219 262782024 344800281 861237686 641634657 533333819 653317514 436004652 873442832 247084846 593852536 28476950 725753350 438092021 514792671 146246992 414249978 568256176 684505766 97396719 537120253 624996628 16357175 931919335 612103285 260310023 691105419 36490802 368920459 978268674 811064871 573114971 424490533 229142089 251815863 801922430 561997259 350862401 111661060 392170092 716498476 669016402 602507308 146218943 263208001 356869963 684983740 323671561 422255337 974518239 57516726 648152634 837469881 747503139 698255736 313546345 886242006 565594672 320088021 706314373 968526614 393251025 812739051 630058538 617398067 510143835 959676947 757749383 466108179 825457852 922264412 866394778 958010950 716391397 578069333 782871943 599009342 508125610 509849065 439348465 619155609 884330036 398990206 954628437 964758950 512892890 464604304 42110927 385314318 953691540 326053439 506116401 264864693 604305524 15325969 42833379 195413309 296418179 667177789 284237718 427602480 575097814 961308082 939804294 653274232 174170849 124938393 37193305 115799603 458541906 972342992 745049783 367846566 611951418 144663717 823711769 528576246 705948705 515817579 245597729 118629860 606577791 891887387 621484486 323675064 228938030 918190495 485066981 433026408 681003838 400917948 622017450 863480852 13186507 788859180 476462697 983345861 156027528 556480779 262284196 180810396 532190529 447242474 566328127 85036578 687052338 958780956 140078202 210894179 731442094 648278935 884595125 145757807 158017073 174463413 363327535 671791575 527887240 17639870 539262357 658954471 751723729 476795262 937643077 430213820 928253748 139471218 726191884 489366325 66626993 962845673 792073167 775439451 242399678 582744410 843281881 207354575 140067858 357733399 651412760 956886966 509798595 184230284 31575971 399425839 408706638 846302290 888223190 570620919 930310095 189260402 191603842 965667882 301640864 80685459 477256110 38871027 924807032 372651315 687103946 69920921 356839536 773396627 678892321 19836689 515881061 870325498 509395984 72874581 726071270 317432854 750377785 297397478 904314290 570777409 865500730 785168926 154823018 230599765 491568471 682531855 150311556 865157384 968406387 71446816 171133671 637149574 227079772 399764217 581122603 576414931 606772336 157523305 291498072 185543430 817660897 850902731 14656885 521179206 552801861 487626796 8692437 882581052 126652655 578266098 125268373 152902063 766452786 998772141 46793889 960254399 487331556 152045629 12268575 336936585 22799250 208416068 478095858 686555512 414901776 938062341 924717284 671474540 714092286 209785635 38006421 428420766 882878879 718744176 8016239 384026960 665681132 386945564 260994353 139105087 542655039 349369516 206231762 265368185 341432720 750740447 465301389 41124634 156679109 997091016 358800565 126267357 635755830 71691755 192448648 321492930 540043904 300582119 987111951 86761771 272842511 198575553 960954119 902434459 253320867 189049707 837464108 232848319 303524534 584081108 665233058 204021931 238477760 372494307 991872558 833218961 474588110 731004289 453879095 974349323 658896524 935800903 950441827 87540303 213358140 476190101 675043077 110235121 479869321 725703910 401333539 798423289 865030851 606484326 880638994 153971887 492171622 327415025 428252013 446736274 59831030 633269590 685177954 352606910 798301011 453572496 897180525 515497318 600061818 601528645 282058340 665081043 358420817 832110607 912586087 735994825 419650364 435411687 713061697 435975432 734700143 747817532 299403601 23231370 314102788 354045810 145776062 99965861 493622896 988705139 559478416 861662018 742367066 935840542 794030221 197333015 805816342 136448617 130640303 64663920 519587218 317299680 196594782 345031402 565095242 580133876 253052059 599675356 311786532 984441953 49618036 888406811 668409274 424678995 117437187 965244221 657216102 169577991 852645442 631078131 141574102 792758126 126074453 262908347 25195005 617341964 867041871 709435662 499368911 884148432 913781749 32728577 151784508 130158798 182135082 154420686 965375342 233534641 772258061 495263893 119601962 988152282 774691991 466741972 749721614 23330240 408216388 219707467 115300084 922793076 284308581 28456299 346287654 745471190 422283370 474067314 586337318 914031278 307818853 214827385 63742212 765152119 325601638 684104104 653039337 220386551 465032131 448143843 11114396 148972407 20873962 253405567 999592763 177641073 938911818 436941558 70502751 19643721 814805482 93689458 854211096 632690091 556622586 226781613 174867353 679447862 614168508 801865098 36443374 591411380 42327349 852844922 492904343 793109974 965777056 455422873 143338127 181325487 363125096 764426454 599835241 135665456 533649289 46634068 919467752 581585365 161701823 316059539 518604606 616764964 100017805 602839240 917882672 494710211 74146886 923273496 924763 171385553 595893860 105005455 112403830 791620061 958564170 104278840 762061207 337984537 15556944 229219650 65204738 224229689 260677641 865236223 512532561 474198468 703542664 273738459 530601395 777002839 22207011 437721850 58009825 195983885 603602330 642076472 260855082 2441862 410011479 320959813 103520386 208946485 906618176 476147414 810131248 685608217 994147768 943390561 890003189 622526692 973678919 609137534 444920705 424587657 307875066 943765668 392725326 660349564 499602283 715603960 539723916 380085152 971842249 271894099 657031716 127512453 892291532 360645933 996272544 229467085 58135904 19791171 778520788 381079480 104070853 803754241 684002389 745722758 886857631 527694922 977123539 305904636 895738933 7955873 969611729 656319621 789840882 572682095 45063932 441032296 541918067 745495080 320719629 130546124 918863206 405936717 420773247 609365781 487002597 457408829 690106774 359166554 574289534 395307068 567579309 378232769 495405843 534039891 890249938 53952285 432629369 347440967 259212578 591222333 213083492 73248908 110241169 47859591 384622297 805873791 695288516 935405713 254390304 488077163 974739685 724298334 385581333 163881708 23433091 969161924 22347066 887038421 673126104 603115776 909500469 990690612 246348922 715580849 439399378 897156636 717057268 615289668 562078793 736290655 879712874 3831567 843974135 797485593 242381402 739134935 687839661 901174888 630835335 782335915 517165430 79332817 894449681 251541652 678015379 883776062 989666203 167696727 302403702 651065544 171086976 984486687 703805594 101131533 891914520 534230312 107930658 291017117 109844127 66127138 63362042 842325909 861139286 781813312 741823211 801645497 79101834 876007360 230440645 924825474 265963004 456777909 769062513 573962857 693283846 33311612 501086688 904881599 318127670 420694904 453791598 61492135 372077583 565061074 555645504 127477865 318999449 712536811 746465869 932722146 116592310 527280494 905555939 955447829 641355531 19145841 376569191 328312937 132947365 297506869 577537061 514593357 134456305 98468266 740899511 725469198 401256041 318670103 608128901 743997123 457546534 313124475 3357371 822185355 912356959 346544737 916697357 511092735 597235185 656211595 366405536 76648231 197555784 439299781 948668262 801588877 694719291 824850708 614349291 747579911 215349163 567743567 58100836 900639820 492372272 92286048 406992286 19341041 227042461 388324365 28202510 231309263 282727754 449664286 487691835 580531362 2819523 202226897 688501286 167411468 285947169 457447792 493732367 94255059 488953546 549809931 597154583 80773769 19242047 604060147 931636801 919217151 291683450 78999022 947552679 111006903 12174799 368721657 847199225 232824096 106524864 820485137 916843544 165034854 932247588 638737807 318118475 334440102 317853375 635023160 842624053 415915287 113737042 751474071 621583630 756807959 652778043 573186088 912794181 467202399 887813762 722533278 18602503 747985887 128293956 667415081 842423224 829235341 142132230 455520684 185826108 905675804 521296602 858882623 975069066 896904099 961484859 379977058 839390812 651785081 333660959 94297765 961392151 783259879 938943450 96787916 682242377 487927685 517035844 886597798 618195199 811506303 740695821 996765740 931930267 844083469 897990983 747070842 377750752 508409074 836121455 379576996 871491136 862461608 253993659 190240654 324962402 260587031 776561329 669047882 118764313 24647225 629111683 176198603 93815184 507718810 404381298 608346564 967008602 902586815 244513051 376281187 826247039 174987468 241660577 465037349 1360478 401493889 51477551 563854045 649484733 625593008 33470263 554143624 574540628 617114179 21315665 504930087 487003979 158883072 691167887 316624529 918364790 496889697 891724727 911521860 783653442 182432757 347810670 225167123 197653646 177026824 335343185 184522997 737552965 416427754 378522591 67468265 779448255 75750477 360994106 355333134 729291614 628244710 909779060 986734166 720303000 850663315 848611406 194154083 504992769 221858637 340320780 801641897 336858658 331979876 322936361 838218635 306448735 69547284 466529698 179715998 447080421 46868687 610948875 255044114 615528677 647712799 668693811 823678731 575309714 457955953 685176666 496905630 689951445 496076165 477658274 64591215 445639459 584945584 526498626 517107724 822829238 828926338 824789916 502419906 971558603 57130165 233194119 797828671 471638849 239306215 842019260 353641037 982912089 51105117 244100521 396817250 134787522 821285253 158701631 691878588 203709219 945445597 968396660 82699013 14556065 654459178 999589052 155653849 331892588 406647719 423067502 869081602 504674576 557486936 893789709 278525684 218540825 847216195 236645433 781472813 340513516 317276156 392704912 950779737 779101368 875044595 150882518 585447565 417742164 27755585 134726679 292200673 253519878 39495642 968482734 549745586 395331528 426999298 172844698 134866656 502789662 393408485 468425247 665862362 979695465 841120780 79097851 253087647 355204719 862203806 687049656 822837942 263683944 37640194 355285145 509876710 667226924 595468387 625634983 97694008 863855221 816969260 703133744 368289298 562745983 864528226 927143788 180958182 727371389 211364163 778786742 721769532 849135417 696102473 914780036 544126295 457558242 601969944 726255662 616980590 642682968 487051272 641114652 863224546 820275575 848097716 439681509 212615032 738195020 277365371 667212140 57872818 69508070 269434969 463775538 406652323 422452266 277698884 561839703 215716890 739811566 979802765 355519293 790332059 792484317 426937778 388259146 738414133 937315974 905544364 348422422 901478497 44997897 119382224 435611445 891585304 842121520 910667318 704716164 596468400 737288287 619007020 257109768 870264522 273358095 980541261 16451657 488005594 766030022 792230125 403785009 588611862 531199335 28802102 87975611 554477900 794883074 560189108 864925382 419780135 431468888 280621924 204913970 450599792 539883784 257766463 167778583 391698565 394437529 570863426 372983880 118404229 909490498 770680118 303560764 362931171 346306203 174780205 628325280 886234191 650359749 203545007 297794471 836171236 287169131 520192786 931123159 350032526 753724069 345958467 590796715 562672389 812867956 155490784 171843737 956024681 205157669 953912608 447138650 573086339 228702384 968813428 284839281 716370809 366590180 291970094 896353746 708044818 711211439 889740671 91519718 318902871 977586818 164654200 113923999 588309745 842875040 603163291 318935289 600014887 297493052 531601716 826051377 828542474 215765769 193202476 921776986 953687362 721191056 742681403 96681812 174212391 544382760 68868953 982794913 377998206 768013956 690733850 542408743 761364908 586700570 950841003 276748332 137177056 199888933 869604795 43382210 128571400 550634339 932579126 638088317 98960046 423988550 943470075 104887577 711339041 843113174 468650844 446677750 511676077 670098619 132006524 652141910 569462454 26462187 103485639 744935950 61941437 463403333 655714706 307511960 923392904 901041929 912272840 87157758 521807861 438783263 431811202 898400058 358555594 501791976 624203533 600022065 766535541 109471155 330607400 935629944 954348089 996664360 831130904 55887650 647234605 921834046 179630309 878819988 261802992 965684357 292924721 254397124 990107635 272527686 858847467 270083169 29059541 252513026 571811099 337294047 261394926 196017298 777420141 476753599 751248138 78064331 400698173 847519321 258899396 43491801 478596804 601958427 799728299 747865989 65021666 484254923 69363110 312726662 741983255 555679479 549517855 603406407 569182510 272385983 55318699 426781804 371484988 563298485 883436173 365319963 523269879 317854278 646389258 449224080 652303855 92586836 336286358 438214339 580820433 327543323 506372978 321913356 420279861 784658640 303092338 706580327 807908582 662446508 790110574 868371916 953849357 381889921 417056401 168105988 743748013 257804768 867282757 483837948 600250838 132451962 122744464 808691492 454782489 339257586 358046101 753532165 380921038 385339757 494853578 965786716 200522894 304614752 917363217 133855311 196711330 850389475 342558030 524562955 940782636 427795316 458361113 248076153 962315275 704734042 619863824 696085384 720082126 996449753 232836560 532830423 220667433 307739084 398757085 527885923 77180383 205983418 881131218 410360635 133552836 760071502 187543806 779839957 189180254 807446222 75698548 369678518 372595059 976894380 101045418 792026076 425348884 759753197 63162851 308218482 875080113 921461498 587764488 207899267 221608502 497002805 325774268 326959310 423954175 963896415 13076435 868480458 316714882 243607067 987175567 443105392 215407881 9309276 117065475 659704616 558632944 623284607 576802063 529936422 585883298 215275174 285259091 219798831 643225105 516449949 125922100 477244961 448222089 731573139 295488295 235817296 230888809 757979570 717325938 993462718 879513820 214755722 257359986 678750755 446451918 583157930 136156072 374568112 783103250 646368551 679491840 614930407 359641891 238567173 935306375 156653715 653311249 512122553 129860727 970699862 392313457 547811363 427484289 578138984 941790770 460878574 969306763 313564383 812489325 408119118 313792129 301183210 782562442 257751244 439427329 61572428 253876962 831465180 322589185 918412883 334708805 592154451 868833079 540907962 109031175 760061861 507749063 996322679 774271425 100698836 551938730 38170417 401036409 508370383 506592164 785214550 586589269 486367606 781478405 926526645 947436095 750841999 702390544 603261197 159496836 60191735 788222585 344608942 133994310 521152194 933873636 387930482 961771066 924668586 636223120 247209644 266753436 917876095 483252935 493655347 905447143 571091032 208704546 568069449 315497226 995729481 759260833 598855957 150068944 74237786 663274297 590235587 445383135 237592381 247126200 96519316 162288017 972757381 973202336 468790367 678674496 421494539 669043334 42614821 317148261 495561615 515274096 597083128 356553771 925445016 627760923 349476227 374962251 534108188 693741156 9473563 666253276 184493933 968007024 158429606 692998535 552548380 319043572 166530437 850611724 223330805 150554274 993637501 293838216 407925545 501047635 187320177 735797612 122740586 309419522 854069496 62747533 689641704 296946040 361170196 116557801 461866497 2580932 720621577 667455670 568362415 910689344 367966375 311994410 450974976 264158757 122212443 287312609 387641317 936302997 360405377 104930617 545316516 339028350 524952804 285077470 702157237 881171083 218807053 18989798 752729066 633007035 776354118 197967556 443895322 377838695 943536866 507782793 233186231 925929192 151774481 243660409 708674789 166499282 722315083 416046693 37388161 316898224 853559032 55474843 270669590 535884191 591773749 894386460 947687216 469169566 609380594 424787113 649642134 42565609 852653623 767460190 894459049 834626212 300536697 134008694 421083732 96863523 731852545 858229807 66151565 111782571 416790719 613604951 786762213 424289734 379667834 334824961 113390469 498927070 440253955 484047315 189953522 199050348 993859613 335247851 69854675 773852236 406666949 81519810 128531186 909267521 244581513 753877504 624446274 725311425 273485093 541373236 591404772 2473448 105173206 95431020 813991562 609278762 779979459 732986437 615225929 84390112 852412708 108498799 744818679 108553033 174945310 667875104 653666985 456291755 489585186 615331927 555631540 744411297 418059385 997392479 952843529 41533723 840651270 66361709 737805988 260177440 543638919 309361898 25701249 847105503 791701752 498362800 552941495 65564268 789787449 494563150 813357067 778561239 713271768 226565741 914981944 585406402 336278492 829338050 542696891 730416401 108634650 885932004 899259844 733629720 472842613 842560480 84936417 494738037 24097110 866996121 592859203 199116577 396829111 571408435 946163411 755178262 324068747 701494364 940447166 458221146 114727199 52614009 458579069 201243701 948941971 368555665 945078488 23763408 498294184 191183186 667924698 711244965 323547086 429336718 865030335 438670537 401717157 906796877 41340757 816260585 396693258 370358985 439548762 157918725 484810404 810113287 435298263 837337850 387097572 542784220 213059738 444768192 724886786 998193191 909884098 799331605 920460581 746406460 537494232 867954010 758074641 269446397 861235572 287171008 675238222 851434530 834263367 720975322 730781304 598730093 442386015 60648674 795552514 481666758 986222595 464998303 81189483 876580674 355108361 193515277 77603254 298705392 192357516 708150509 483770643 629169267 686039917 747321212 966937391 399392543 251177600 985322014 764725230 890930275 614432764 786261753 42041229 53108952 556892621 246885038 959515732 326172410 257879239 367736137 283334936 53966769 986622602 806634167 492156274 401100513 259281458 326445420 517209311 83573875 924628510 16150579 17089672 552970756 353704094 591366218 786308325 10610008 474518223 124210265 810229908 230576332 430784311 424503222 78010944 444598593 731670599 333187129 162879612 318484532 608643862 253624780 557794467 390793901 688124272 203369959 478219608 485291516 783038704 372298796 559350975 635651758 714385801 785742914 925252643 919607975 217346149 960591981 327782763 909935742 375440242 26068177 858341369 107165137 615290587 232649870 312798362 747328006 493520702 353244854 847097582 731098246 282949674 653946226 703636394 160600117 968566614 471491922 437917057 26556534 842504706 93450303 247198847 884381594 202633794 566319975 981262895 360446174 815095173 146322905 264313559 81390228 528011129 796806555 30332685 330875222 16040445 161285562 861967459 996381965 972892652 856204748 141684306 174910153 152947192 750292981 188347207 895505164 454306501 310522979 426690077 239546945 842427604 430660847 618991717 731602108 529501904 940925705 868916497 679767737 488495924 44824631 541302033 249358213 44061881 323842796 467516971 104345562 749006233 62530466 258087589 685612758 315394789 326374700 434252357 812832132 616951851 652412836 266920533 220498310 405933060 629147511 519905868 542864131 147354585 718869675 565535015 155665906 149017116 691206130 281241276 456904372 585290647 434584704 452757639 5806978 996050122 843503061 968545148 177528991 313628463 331504286 475623564 92935989 258456639 998087299 808032476 967142802 770565816 378344028 921051580 981128078 440853907 776711196 6914686 413725156 936581959 187315810 467902801 359077703 727449137 596120220 826152125 793866501 608157532 284435216 477526420 202014693 950716816 835980463 649384398 533208662 49552589 718900799 37886042 358511334 304847299 922738018 495279939 650795650 559069620 203928269 91918198 229811784 13229519 408866438 339997344 743034830 606707828 387204580 370551210 944940880 847586543 25235959 817757061 299075099 868115686 467673041 56329320 141501179 850703675 96062479 57932313 693915605 650230421 786227484 887593108 73474695 365582129 382660977 529480322 239150929 307739296 487206495 108179191 605923730 610929947 89702120 949809771 664633689 924609742 388088204 208004584 991456439 535327602 474281885 867564821 26298851 929831953 625182328 962738982 403028220 509060262 745693329 321474356 607963281 123620340 269631443 882481727 693423721 175337419 227476081 296924773 380306609 616074160 518100258 418783332 685233291 796555849 609412002 206496951 184053526 779099096 989901461 57037488 348266297 629021316 183680248 468770787 350147019 343156129 281955307 557195575 611392791 961977862 860586248 302813672 862283341 563659536 476080615 58900612 515241255 557408703 508884817 445003718 558382019 586754482 315738261 893829777 395558558 136492243 512167642 799395747 895595945 34887788 7249880 842501279 519061343 628462285 984824111 72315529 100806494 334423224 685759424 726973529 467673993 975412561 550368261 28164798 460961275 980250144 559147203 604318163 431843761 31724140 780146258 260968718 145956530 165895065 154048291 840718630 815765587 431876002 381185536 340047557 22255569 361761482 400579464 730528595 246237082 357999630 880476899 695298392 122433605 635271927 550039996 554058816 368951349 935798309 649266282 193456206 97831293 51986141 73804810 307962789 556084902 990515803 605031129 480695254 516482055 180049292 222707157 773598050 766880496 533838615 947582310 867314679 801926081 542139307 930725114 926769726 868963076 905007646 886440944 369207123 552047997 586796256 832737811 710100974 244105428 966456030 350935630 150410350 263785179 381373537 671815924 498043311 981210549 234895226 941340782 891141248 358631056 416117489 735314381 600628738 646170039 592771522 460525759 964260309 505538177 53429332 229300178 359100274 792723856 627859959 609920004 454068282 327043957 976117038 360625443 257896866 366297161 29241530 983959503 53984932 453610968 296259828 156868615 929032029 959550943 868922714 86391278 943235911 930080970 929281418 297341539 363159966 292199855 377361860 453151307 875460845 121599038 767447068 637852959 662224176 672934463 904328312 834890105 582181693 200247099 705398320 445525733 818099622 912015391 990738762 606944441 206074493 525960669 239218956 384706497 51806681 441874295 780904388 424092741 65963794 927837667 545251526 947911531 176852136 417388348 564108343 37457654 374714937 730542467 490190608 194590965 400647961 7294300 963538264 452103715 787654930 222424944 438754963 785144996 717301024 37017564 549930308 178859877 815936344 297635304 544062269 115310228 917855605 505669850 82654937 979702508 151867319 21746507 775639406 300923649 631868626 367019976 472098292 623370517 26129656 193742420 490671597 365828319 948785012 384318084 545425607 338640232 877829666 424821014 845803995 264420808 164603950 928912436 988830209 539508777 987000463 756527660 715409661 22508309 898030959 920127614 560673251 121722239 843999974 527118116 568297332 97167620 472701947 127487354 186667273 192801278 637942543 968933541 861443984 712393206 578994265 307967226 358544861 507154738 720872237 288233820 851966813 847341993 263488896 596048171 623904736 923850874 211848837 953188339 794704244 703648633 528120299 305980222 532737629 893853044 750292067 342756447 169673296 64391956 635200232 698548389 526091629 721838568 951628936 659865560 228195107 449966936 583578817 911110948 715086245 779383063 809345216 747719725 941743509 433816268 422935592 852679566 810866703 715258180 422660232 851716855 704916047 765174954 57259606 243952200 875333473 873406548 400083949 844610044 828068785 695481618 1047133 748721207 132928591 535467426 265306605 643299739 351652072 646678121 813835646 7565373 730511509 238730237 632227285 723217944 178063256 442946391 881622106 29313796 492002623 947347931 25127939 688749733 294593454 369603655 170868700 838146572 86376239 256850194 464236059 968492156 276890649 204554881 778902202 41187041 131741626 442419092 305945029 343177748 969856188 107950827 881130327 288159565 491691883 769529313 150160056 783169705 802827256 795379841 523375595 447250461 872525895 862427499 398953858 429305976 519191475 410192940 873156868 294966565 618338084 133938307 555882263 191377986 211915999 329256578 881766327 141429059 175290259 915711238 68573198 501557465 433882271 328926767 368796834 992909227 907283828 614399326 258422544 599601041 581280010 980092555 838637677 953601618 265244343 118742411 899669064 154676680 326644913 714218229 825781805 459565123 698698756 480982433 677357443 319847853 341443961 798831085 191542401 674376627 782387610 911251591 705708107 913352258 808976529 975466290 444268076 125799064 581072346 93566412 989898434 609349468 634317546 514285327 480490469 646990831 882857 514300762 626062746 636323603 376495014 450886098 260099646 586981342 447405207 792665665 474694109 533518963 912504262 312993085 292203318 622924861 892809276 421062898 974554 81651776 969082182 870513287 204432057 361482034 937124222 561650727 31890961 402323619 136582463 4653777 399828145 228082453 959779182 742026468 447049675 534825946 648870993 138126171 373379313 607168564 374817816 29416522 73815927 663902183 458713189 190511969 776114811 619670188 939261055 662683273 866332150 740405839 729342345 309383146 871702811 944295477 191653322 870721625 44479247 843084015 478627004 633951276 764426989 364116104 936291057 13724671 486235599 435978141 427950205 613046336 661550522 777250590 778500725 100915778 643057080 473746402 964447082 256946152 925100206 204077887 589094557 630444386 376280393 183228672 877147579 902031479 404733938 608212548 562163990 744962113 872448123 408687873 488001917 91453416 835504297 841254121 823408742 124654592 364335265 801773042 672118241 813247166 971212977 636960641 374476402 528873161 375358769 237883425 238758384 491167253 663165895 284120519 674731336 117983717 24427681 423121802 981809752 653527529 846387229 61622788 875840002 411138803 456671782 17848071 140131903 363289923 233264039 666336307 787253883 830006486 147980192 689201142 923512795 857469434 299906733 468396470 542778901 540212494 428266410 98936747 564568121 942913857 643793821 104445756 844948503 49679006 197242687 648553417 475398145 177619909 449112343 129460050 216615259 111756159 6928312 70801248 803534983 953241438 429357330 657077281 431926660 591826426 496852665 631002004 631199377 776945873 735925102 430066703 723364437 303103338 562912795 976775663 482467737 610894512 994912135 82163027 787616752 827336152 952174604 238343170 30850338 531310590 105739105 659783607 349422461 421781317 759654769 160206722 485162037 482763405 169398858 511446935 651549316 403692626 592970219 251379341 698947958 164889614 17596401 707978308 53025429 415343158 134312320 517684202 548432514 841781903 867647623 242084818 180398191 229648489 79646474 734255354 21443464 499372588 246452343 857232774 415939786 87811414 24547370 44651333 264018619 584152157 824250287 770758898 430737617 610822242 870459802 197976419 462742081 48044452 107586034 152895470 361713807 624692502 937081460 708483673 551251763 349498605 607710694 974561619 932295425 227497416 551232836 315001900 347381889 622842544 969804946 571070585 549198402 839080452 834641076 343308009 926550668 6101803 280322636 596346158 890583316 792824644 105677844 956091310 638918403 887345076 875511654 98848994 218980860 248718398 960395437 426855589 628184481 248788917 572282476 363733871 117496227 339193522 573260573 733681531 672886229 417878277 228825966 287476077 106530200 566337289 462294856 889372763 357912392 93815965 926228046 292461767 691508738 213401611 835156162 367429961 331270709 64491932 394829382 501492060 839036230 924156381 483416594 820417822 751967366 919553055 391535841 913574972 957021941 735539314 306502528 120846776 892849971 642447282 574018330 604070998 977921417 465416896 405692070 253058598 538519488 313652869 130657304 186835564 929968733 750297687 525613670 70911358 118864237 971706786 919702204 935581417 458616888 15466326 730317651 436614197 131872897 723085871 716284636 574657286 57051653 924351393 383972133 587239049 852132455 155125171 315797164 304301823 711187661 269788585 478873443 380255552 462598482 966151078 132773801 316123893 105159037 992346619 796695754 84688156 801841222 463317695 857005435 995326968 297840535 466433648 114708787 384326898 417331590 553262004 54142103 793263646 33734459 907799759 746684096 694676877 252344822 231182381 925341364 117615045 636049667 207896070 246724603 944470028 892184400 574991594 558001743 955638677 543907609 840605994 171238557 163114412 206672385 245714793 17312804 46957609 936155559 412638552 143006052 723460735 524959571 221296403 807240834 975587898 8162448 941784194 256083717 510750664 476568513 12945701 880016685 266594874 517759115 644876628 537457651 73046007 909847002 765987380 573803691 837350727 953441836 593976203 856013523 437322141 342812905 500831487 418788604 982748220 696469608 859234848 552498804 846385934 689971979 257997296 893764556 794062723 665098512 445877147 951826997 552952666 129059564 927979483 303284981 136079318 948820832 478194193 534996086 547798818 565095288 484631279 985461546 517075479 369190237 193975702 884809798 421889285 353164060 130275957 272085765 761622446 426285924 926041055 40931401 340607442 266390038 4494689 817408470 408593831 330198818 955700950 552769821 348465346 490879948 327491637 668964219 65455310 371165075 144705524 777763713 931775458 72884844 313837127 143116642 321731318 826254464 445356697 840528711 466327237 874099319 522540343 118797614 398839994 3158329 588977770 302296618 786332130 842731666 708957949 380302652 925418507 280036031 109679152 115276591 242580428 400186695 267393404 146587553 166434093 999781448 411543637 865347977 484307458 2185969 607312701 672024893 915199821 74209854 967256350 965714978 251684177 352376148 565550575 835473459 635042289 630818810 604326254 5435312 396531820 525473624 154940875 826557620 415168989 801304630 53689934 661869586 756657493 275083307 358556526 646442385 434085224 628422252 322488624 742743657 333446390 526893977 147706877 644938129 287249815 980919154 747287656 926949775 991586112 170199778 114275529 92425471 11801552 134946951 962690465 677917044 720298933 380190686 1480974 887453055 667926896 608163020 20714093 386822378 445904098 494142628 140176214 956813257 327300667 138336568 712422325 787981320 544344211 752421122 419114722 615658721 69769045 660458181 557603118 450852620 366677269 386425574 392477381 314055623 837851387 901258766 427983767 255629606 398395625 646323286 529772315 809298765 218368428 370368018 637597092 972127051 198308931 213563991 997311918 449334719 297146789 673612048 894990861 472332746 75965876 528587452 439714917 349601029 127014244 477863415 489613866 290377436 885696536 531281305 305300399 428816004 704168863 222579386 590279502 653290589 692698363 803121607 186207637 596044372 838801702 247046464 800845776 534820408 492342799 270797364 838687851 182400361 373313712 750339081 113427738 622999204 714595143 806451746 775313535 850045951 489249709 543542346 455549182 788074232 704960514 342480006 148882532 633562801 13044643 25746842 403550016 89729997 37401580 846728547 302564372 159830064 22548519 490935603 589310166 34739111 974890991 285611247 621798986 876392235 287523004 325335299 949183810 446984285 512885070 847131150 207856279 377940459 132751863 99212466 532912481 351380630 667961140 137838619 659644887 98661743 345663477 733481245 832619315 790067514 740073866 66271098 809130475 552386891 517329305 777124834 199955178 144446411 627257532 866696873 816298804 818513373 806274791 469649705 226144093 641107251 83470890 449763502 142871845 80027030 30783434 40745510 54217453 755109760 71014306 39087718 276823770 908788245 302743027 504185020 414602654 315729517 190295098 607064791 159960505 857673134 607510718 151318634 645201233 547779890 507616047 705810806 188198151 683761612 18057295 525998942 795679651 932258927 220193949 838171122 768347378 51513948 372282383 620472482 400972341 594258499 270711918 909429864 923144559 38934111 979735924 323045680 139703373 680913581 162172480 588783574 414257131 924721685 542190680 373079420 811619968 999926739 881377989 788640636 714453861 583914675 565187904 550650485 577560192 763652185 309949116 268837782 109823206 543928424 770561958 502764903 747300002 474162112 931430460 236604004 297823785 183001165 484355223 912456531 532770780 129153313 524016232 392286186 889079826 261380173 702897539 111370443 894249111 38301740 185263839 265826828 554984119 605934272 588965513 623933994 986476302 121367300 406509065 135324467 460957204 508266700 243577959 722158120 938721665 490146515 438730318 537076877 184637625 562719992 228331573 760872050 965310172 986483665 691685078 421143014 197377060 825197927 787099168 51826009 415201974 438532672 475382022 745874509 731313761 330645801 766349622 321480619 71233783 548867612 781185025 943205337 814100961 45300532 187792656 157350208 913923628 880447833 132016138 698316686 827228867 884942622 466781914 930856117 184602536 797334755 871765991 764105073 735630789 678008934 54282232 901698707 269838459 977395189 687767447 687852566 943289083 177667180 189956198 33568087 513841466 811750961 966914306 827128332 434856670 324658970 812927350 188569714 189042968 169700247 417642014 880884668 227984989 275824055 90749215 236437704 405598521 671446614 113253473 602303209 995943070 35266804 681328100 813587796 292537441 162921602 288239748 49535678 809871518 16062069 720719525 304772910 25773172 834906183 17264656 958004207 212816548 778738552 879140315 260043333 98143081 961653452 927505732 508743839 326982226 751672930 602299269 501916287 452456619 736613629 931520709 617458329 559183829 712368377 431688027 400084388 591594589 759212245 333463482 120229934 720480890 512573002 364487043 170001196 503638790 753710536 72169453 878963101 343693182 352990153 319855266 186969096 182738792 687848708 894089634 904233496 384777480 930231826 903155580 728135706 276060636 504018484 535230395 167143301 285941435 524633824 265042638 302246017 853739827 680361405 946862886 19778605 317160289 349485862 758993539 993035229 896991255 328290115 165054894 903469215 715533430 764812188 275345067 574677538 937854776 358809798 47487232 339011611 975889183 279659564 714652511 347493933 877266491 218986984 458739134 860188163 328525517 331185393 93657709 29754114 955314016 776446935 224147350 238686928 810957821 788850526 259011215 422806152 867936872 521251715 691975724 797562854 608287034 101702107 361129410 895030615 142515433 352137375 653953521 11620436 265350544 49239588 249970893 865407504 108586431 57881475 384456370 632752250 228172460 678177316 899254896 584258095 510375192 599007077 939332099 582693683 915864944 426787050 392872827 25907633 11988911 370035928 390663881 290428555 658545448 183976480 302316335 6028130 99105804 961673983 818729907 972216073 791633349 296345758 762095615 405252882 363274177 505397278 924420886 231639655 103097444 285104665 612737761 24299278 607310911 511232028 214839440 490656317 204019414 165319966 614411466 166610207 901698954 398140229 124751587 164251145 947669590 411739501 365394097 392636405 126451227 281653027 561567111 970344728 391934248 58075914 851489958 614202184 617730577 510020987 903232454 935863150 893534146 987820243 508430813 210104894 227887719 801571255 634776158 140176693 872163179 856206906 937794417 27455532 313878526 797489817 874210315 236244812 961000612 623161109 873033732 749668753 534720658 262777145 315011948 799188856 322778030 477644583 414942699 875560429 321263171 441278460 267403926 267763096 575364755 410841206 212822430 859250886 233112655 813501000 147430979 715232748 651763018 262714802 511072455 187895210 10221682 53880479 639374567 921268546 796188053 257980439 658975667 630652670 756556856 343825486 54828499 212472797 772587727 897120940 520844985 572258816 414416045 465450123 97381979 638602749 691693217 702225361 116030256 687180717 109478684 284249660 628456385 600316796 57589293 131082843 883418065 375226469 740608424 219293151 477480860 309323895 853069723 156071826 930616486 700973039 75915556 619884749 531010174 180086437 409611913 658810503 17479858 446746717 456850148 751828000 818408855 76423154 291574333 824398029 913998539 800411528 157909325 245440414 524977848 971370924 565748349 331245272 607769402 882724299 362024908 140493915 701307425 627848584 970112509 404877086 789480891 419332012 817187688 160872706 649538943 759825601 734920026 46854555 775731833 487478706 61105755 794642613 202752966 365358313 92462649 939603310 177442069 833993094 383738243 789465714 799374911 585155871 976994790 316467759 62232285 251216042 951856694 294629447 12196183 308276272 397603456 681956565 868732636 98548546 885117949 580359092 100818727 777452498 532440328 451803487 95166420 208064400 879448504 600956841 476035433 412320470 873164954 867963880 778351253 594606376 886656177 55131572 525397977 33899341 885349293 564788727 704833788 29389262 134703533 612349434 535586967 947613437 826982894 914375693 468143815 538587990 24759402 113334648 521464261 375789727 741135120 254313532 24752188 398320407 485035316 873740257 281257142 635395919 976406373 622677996 485790716 193648994 323553174 547910156 344511510 265025244 245069984 491118592 814321370 583146771 49909529 182622354 362212935 317336464 785775442 730128501 301242129 328766176 273801134 832575821 76531270 827267794 156394439 843692291 3024168 152408892 442677450 549952036 96334586 401571903 255679053 255446631 478354208 128959646 904984128 922296986 739547611 36425966 160071322 850984725 43538589 78766748 809734467 881360319 764661673 436863124 551093942 486527645 859670185 239223417 287151636 221933115 621537510 50755234 364762977 88514573 256075323 651155302 879084923 671900627 383409806 418353345 853831232 251779227 567398409 153449954 761140793 988822751 627736416 863681075 663630908 558951582 502482993 833669866 986641673 339426152 150041116 450517584 770436218 521760107 40204163 580027852 546717001 286588018 643477056 666384268 189256502 576532866 98978177 678848355 234864908 162509788 882380399 989912403 561826001 11461535 545099067 260955667 222704777 71578209 306086306 686667439 420520241 915223385 500087717 152032553 792218189 356877598 298240459 98972788 537536341 534672944 563700476 10773251 339911766 380780464 394912756 829232779 80046406 761823939 938294029 750564132 467480131 468152462 328044227 971947179 135108695 787180587 524436118 757173279 993606516 240106466 269507078 374107380 272472934 256263219 919027770 790133100 615506546 554413189 459535504 726087172 648207624 72053897 625592933 976650606 372861092 11107313 640755901 998089567 189097999 325773519 392336938 353278279 809391266 852062677 989176111 993156826 5714366 521062874 182700274 197459431 238436316 645187369 539573588 421810023 546805344 289063164 590321219 146726680 980255328 228639632 661350048 148266633 330179044 799057268 830452158 2739432 395708920 14250946 678457594 412334119 915136039 414349776 578219241 128050762 328191961 919054859 968356449 775609433 43518727 936377105 852328780 404539390 411208137 484477710 85632042 446123054 77888825 546840436 318445943 57968153 529741261 393794079 924234758 2925555 526149496 736434832 361390124 186349930 188953295 234925647 511380094 870603074 634321539 974872514 124439435 30469876 18084156 479499192 2398952 992619352 455180181 386320025 447254437 607201183 332425407 723287147 259737141 432839008 311983907 655572132 739552395 308936992 183245434 846364712 119338686 681964990 460723766 950901524 297114743 355258767 307935898 386825576 240711763 619977831 608922303 101722989 97463206 860924470 593319899 550234672 733311033 381970588 308524669 150405345 742874873 427407027 575276427 981081610 591548334 267733614 989700954 887831149 934412817 378671327 117270117 845675381 62773873 55276133 21916925 931294313 653867902 414769378 96747122 757445997 991547855 359633485 939130618 795980272 828716867 242794433 407644600 704666884 889565343 682386522 516407056 706908201 473619454 207916818 302916925 985504482 696668132 821146976 195111562 85212188 284510154 257140425 755797396 177299952 966091265 90311775 14833118 818028126 858145701 66290620 882465722 131386772 457434314 96709401 111013269 239619565 257514901 820862301 213582976 988868380 580877011 227203911 67379890 160397375 986485567 335289118 179760594 112023786 716878749 946816685 774924047 172651387 120193188 773481409 207510696 672721491 393895254 753754462 650980297 772531272 850671372 957938060 956266274 414193508 786925983 560231564 862843473 898379305 483438511 798145069 810303909 987023163 245924955 15050902 378804098 314232034 396638454 845107699 610895585 764005699 65458384 264042412 897702675 772679542 827749803 686722767 456539150 135954008 937214356 587938227 86831895 784313320 777731269 492647982 412813268 307407790 212821183 599983743 729442281 412162495 833524219 213874011 668046140 990479281 315100523 574794835 656503225 909708746 821845915 847374550 662441619 151498569 473547008 835367408 218851167 127945522 54562254 518071157 728585768 22892923 418283403 705114322 650249084 969806083 692509513 139499360 480831385 171120700 761881358 885137042 312635582 814402889 892965540 273241955 797486789 951029201 67857985 780169824 12373891 391079284 981636345 279174821 358763019 253658598 849107805 960646799 648835535 505778248 902397957 455682806 93367394 393031002 508197289 739202671 739160624 279901469 856781497 365545902 686208031 697093477 849473466 780511036 853532420 801700265 399103965 290549909 721426608 950491963 842013656 843573062 715917981 320761934 766113802 959254987 23703448 938878338 850007672 756527033 77304421 722372239 908065804 166039017 732554571 758242514 626014353 220881650 710719153 856782146 94165593 804704251 989345819 885107581 620240305 51784446 989873021 132045526 715804507 737090205 681280322 512799117 172626160 801732460 198703765 59040185 221313477 367751517 97466640 192177874 408376053 452137221 866940377 485028562 26692636 848879763 718167060 971002202 651857760 132811397 69483881 433357927 417906686 193663103 599923537 998362491 603967591 611934759 714153331 165552555 204515100 734338769 255336067 233373555 544238045 505906941 803900647 548946994 87026760 985621979 870893073 994136496 523619107 556925742 559251027 934800558 437931419 15316955 626902641 324370314 204141201 504391428 361736932 594238535 975773202 172570138 764027822 742133502 559307817 413622365 962302481 66161099 797516097 855649863 641251457 662687743 312969605 138801648 222704423 381290892 155715011 481007604 319098244 429006338 937902678 842719956 781035756 165102258 930646303 521371655 664837622 743725057 921276303 795539795 494031524 884736184 501327951 631616859 510809403 45953946 343510733 679842929 459699132 38732789 207491580 770315 138353155 302908279 448115102 701228542 803003541 707668137 620121242 569556787 927021149 425890943 302705449 295177351 319423459 90333924 14931024 150732957 631204288 754266031 795080651 247080145 11743488 312320996 352273968 690816865 713701428 194118330 100679009 609712230 626362874 875033570 902500196 17755887 321187070 883775651 85276399 533668645 624091550 339228696 499906828 229535890 682802493 484684459 832384100 829004092 356116675 788544500 515113554 729879237 779030501 192448986 189074075 409847046 129401283 694994324 632311173 515412234 447293005 763482058 469468199 301177179 208451518 164086751 708982241 174709543 366287785 852555142 692694334 650837941 401976595 900753016 830745966 903679869 427311769 103333106 216107282 751464405 26520509 632527260 313195525 35112093 783977807 307767933 816462093 447142825 684608981 901932775 233494364 19679209 396430317 660431491 503431447 70727139 928396364 619240459 992766626 41521081 598717264 176073079 367554846 24950020 11962567 689622329 49517914 184424532 880392933 379033855 370457343 16114851 333286401 141030496 535580209 104820506 531833981 618425268 278307694 629687849 775551226 788430012 973671779 462749927 762618136 504015048 799421534 67862053 621751927 581066984 884536938 399528242 874128357 476391866 325308779 649837188 894631665 228376313 640935907 107368883 742508547 681315563 221420512 441702482 160803822 214113735 247341510 289061716 678715116 737206280 785493732 246987477 358260372 825564973 337611825 708113137 655751589 619426291 101404186 378251960 466117122 417068839 716345939 485409266 45940098 327179108 27203539 304531464 382827076 506765611 402548234 891407079 713999897 854319130 479814963 30609624 197419585 528270312 182674565 763559833 948611602 1237972 861396416 728166744 683054494 990365160 474918421 806615282 7467885 519268193 105923706 111556150 390139791 787876083 256967090 492768472 369762887 162102583 433042538 43939243 888982313 359651150 925881553 959781495 4897367 370786295 589808440 67805018 495337146 301839654 383971080 20975804 727054368 562754022 568742852 286599549 595985773 245610917 487631200 453519622 804588492 421055730 586729512 962930034 873931054 337866262 173397979 660974893 517843570 843000254 81683508 449548339 304880999 661517510 292702717 214439774 680311429 989245627 714053946 876903369 814146419 22127707 506240301 317755358 917438504 257834042 691485261 371869441 504225559 965336724 502684947 473212629 730806493 110920131 739261419 479489351 2007653 252869335 265781137 627044111 843876127 544853295 93862398 931905878 211043594 145768562 697526239 156083938 381161013 825635034 927838421 267198622 395479275 964133052 395053528 956283860 101078060 279211132 252552668 661458446 864253956 426398481 785584334 666900049 669044583 718245378 380375990 623060917 355918491 448443571 651709682 535412428 674612771 460267509 591729652 516856867 489535946 262454867 345913120 649587921 784698757 323994862 758486057 65731016 164423958 570130653 815990668 976374743 341546088 268435278 837617200 457890689 924419605 791847623 246931047 837508722 728941754 403001735 883334134 270041373 645669538 980868300 859261411 695454806 191889347 299801089 214242444 221388426 857156242 412980782 380137379 338630013 516682821 172477762 669653428 706991364 285047630 442612129 86416604 869271818 667292708 921405787 575276998 614445322 572934457 710177238 756421278 724026631 14088843 790492412 446815097 697547483 481033268 255461989 30644128 958921735 939421969 73772455 654626046 639663919 776227253 298258555 145273394 184249019 80478929 153323827 201655364 352972678 120692210 509852771 517432177 123766263 744421086 814622481 144770616 150660344 350694638 344158926 88889302 639297072 591414953 630826470 531154375 552051910 240283321 307708543 534728126 362949269 534796736 331961569 322028978 790220515 233549573 171778619 733830427 952788207 95893659 160397089 907345821 344408867 862203834 454979327 925568108 23974620 39720203 961612107 68307719 242774830 343599442 610451025 115164832 307976282 528128936 585280962 798640474 650781729 201689125 214291587 917999350 97942910 766195380 939104057 624768958 551429887 234672708 47536735 483224571 505169163 976894299 81684800 638417399 618097127 96545100 620293189 989395041 304583063 949811108 127893975 420289401 64691706 309967537 893982188 762240629 98486699 804035956 398567473 702262348 56753180 402715511 907643198 495065983 775691507 688119049 636876530 889245309 906081281 983922856 746709009 322395116 738469065 418232842 944286796 868164196 941398081 634598257 984990282 613452047 132421431 732823061 619725254 240431031 484572478 288182517 326313027 108210147 589322182 444197434 407528264 797096262 329342561 146865074 427966009 962697070 122197249 365655790 612323502 352379449 477240790 724539470 41163156 624981737 448162350 762713583 947692252 843955457 936524020 704075395 697585191 675867924 912851901 554258209 815042868 52081303 435930777 175992625 865358127 979276624 797748172 45811884 660326532 793451742 746591294 41781193 560820826 315491523 834018533 962872623 799752251 237035505 889863275 778528288 646114401 252514585 666072587 585181109 542797201 61184921 980670386 893150093 165345562 533406868 929956750 452774955 94601198 733715762 229749827 429343845 921397625 369592043 672105892 409921495 748966094 905224209 716703785 702883923 567885493 72375014 546946547 979793349 405883040 536602940 832237720 590780597 959160395 988978233 954745781 468699545 138325195 171773948 963248760 669745373 1770350 604664742 37627592 38312783 239588969 630338044 779361555 118172584 234050256 960740394 398629875 243189149 497517332 856465358 850341560 774191019 137729515 657503420 844694034 286145848 786195266 885521450 749800260 359173956 153514996 370050601 365906393 494915974 17161201 795699099 945837825 496313123 237935417 846443147 98427096 366149161 313107486 554500887 95095775 714365610 450019566 604218083 883121261 272899546 275119353 954005987 4668389 497024474 618738774 611002559 819405646 683690753 635714436 589843452 305602500 176427905 114341353 137386820 384296570 985409872 318015748 105013480 587218428 373843845 42222880 218222043 369520974 840836049 34351479 320753082 254535213 135159618 149319430 855869036 983628551 500403639 658705952 256028720 540853409 345198109 107426447 546408701 209650943 66225029 492603422 475979655 998898530 290413097 847358245 380546435 57584154 536560231 742585207 137271307 267126330 734145973 370786194 269864083 325950484 588377980 839431561 9268149 588952215 983529111 17964233 481059139 892386478 77898079 450556665 968675284 75190947 527070175 997390102 221355291 477620087 472204083 66192252 883214547 625919174 355860298 556767576 412716739 679549992 541263204 236440666 498380420 716649805 658236246 608831565 364904898 376454301 141825529 220457554 212424655 947142137 124074401 874687400 633366768 176105954 849468273 937370330 875566821 360179668 213443775 492514704 633640252 261706194 415589068 543467115 195405061 740288666 895356444 939375357 839077288 941721832 886241927 888190235 925907737 755187234 609921058 270901733 468517202 559835713 239468098 687245851 46111745 653334524 356706721 58229070 373724236 855367685 407960402 259864048 596582511 694251899 488166120 527792219 981803299 603920614 628268652 693103778 186948517 615115231 824632889 396826589 17186733 951330438 274905955 616903598 332851604 832828699 352251613 370087403 2557296 43100864 15928212 739231282 267779768 213625913 768154073 608712144 599858670 989447231 316871965 50698747 242980163 894099187 779850580 746692427 293060392 237496054 257685994 948718357 815557486 115208829 775488392 146507403 244479670 708580942 151220717 434920576 560449364 288239765 676890971 351059362 918319038 942247650 310711865 852649471 975488684 394234709 902667660 131228672 673137553 343390923 184572536 79972821 769668243 665909859 901688915 685896751 537449432 718029739 532652781 984157969 79137970 870547660 589830596 905616028 780369105 75507923 137453312 750189268 147363128 252004835 940980400 773350964 869236297 706616802 193887732 673968049 237206325 399425769 234206371 25922044 877060496 957610916 589839532 978350245 666278933 43440512 320579498 917803312 249317982 299850856 330604410 670157894 9645823 658905212 882356695 16243435 79823116 647521907 668523447 959153047 506760553 5014552 659107714 521283944 620392273 519237406 741017257 498440994 282203567 277588337 505400806 872381726 796195934 63117973 972102643 202373620 121359 382073552 640240404 516896206 428945337 571916988 108940712 407327506 962112622 934817469 967270247 828481535 371748038 749624518 664058684 677502058 276975974 93169271 561959383 395948831 467914950 308318664 58662721 666872634 732810696 856256568 934129764 802398118 167677302 517750853 687324781 701740191 889550221 118163490 300179301 582666565 545751143 693632707 762724548 355867963 558556841 664207076 993757204 238292013 688155646 379649762 581285425 67534110 257193090 810500593 616925854 613365606 876810343 289107385 446065478 38422277 477799457 358233464 539768473 669311233 707153009 457252201 874501951 889963497 339230892 876492955 174105011 957309644 228543682 524493347 620083091 944600340 871173945 811972500 355854018 966496950 454262896 64980576 646493704 259043592 917106521 437280608 672015234 34944742 236206945 116388202 885164084 24186743 891454509 773089411 664483190 189216735 484568835 115108332 680322457 922678270 741035882 553951677 200810626 985447503 734908505 183365691 503807262 78125912 443366252 765923937 710871677 502779295 136498633 676861418 766648257 300567888 949620704 392301664 847051322 811276693 854374661 556345782 962974825 442781734 313195133 496446547 127692407 583654617 35240330 458815457 41659243 844562480 67283471 632515278 851461412 694823022 709352877 167199951 955883309 766738430 798089811 772312172 404642121 246265038 152151866 251672720 305361638 846834932 912210632 230175842 603539202 394229151 687371340 653269406 515943074 839774295 937760260 700444196 419007771 232683937 61461209 637591750 724668559 712595507 543146251 441031993 828838195 453725058 475672323 260581811 364200627 545970063 726988246 994436355 101727002 436357020 713308197 130314624 853546135 138299257 990910966 259475935 921672947 86915418 729085910 557231444 92644750 820375956 879182983 394468986 610640406 747600019 116262492 727797429 104026685 944986379 857640713 423132359 269325850 812006505 860787949 676819043 658934880 659830313 360486343 589416565 678439441 952861239 860670735 482406465 432926380 296636551 237117770 184993327 462157209 370591464 837458868 235286692 784644179 419919117 358552058 653818157 191122632 129232740 285836005 170844046 981667569 288241176 56247499 139117845 651317532 559804038 405587688 611145733 421815607 842435620 708015282 759021844 303622177 466804075 589173209 422770004 834670684 411163843 377706351 565841929 757597168 416257961 683444784 796420431 180961507 291101677 26331464 514565348 165531802 694764432 460171672 81415878 984444024 799184945 576913177 321637429 272035370 878250112 827863076 608250799 258181484 682832321 327575011 356209840 165140159 164915879 495117447 460455698 985000721 355036934 155776571 463484342 241658584 316211008 422422837 601139096 897421141 786551266 461164571 879905283 406107239 227615952 577445963 671822866 197375092 45462388 800216216 857860006 714183242 965218590 949185868 485714527 241436379 958985218 456796477 750076299 832078741 307210477 289625565 175276081 840662721 860798764 303769008 109862859 460597531 136540143 256218523 279753601 856690591 591432555 418965742 808034637 219068475 100732996 554752867 380371104 937831651 71013880 549933379 471049199 559507112 299025234 890331673 19858909 71843388 391061670 83026276 706826422 488633702 900347627 203947685 391478239 811009490 417905945 402310440 260764060 364327430 417303764 381222736 366912040 983373318 352634433 950938484 860220283 358018056 873354656 572046481 224219780 794787351 160055224 150780605 903407228 610223266 605500373 783114625 952095070 208227112 304842617 468637563 533584415 819069050 444989993 640080641 354451490 321114918 83512597 260459335 561739103 459953598 177685339 288406994 526225603 319654017 692862765 553594134 736452231 706606870 124376536 512571992 463313253 551204329 56874368 656545087 726739306 736942127 175284718 66104519 604131960 559572090 864799363 629744339 713627793 210039706 730554187 78061757 694330021 329233844 527394333 207350683 843871038 710474028 243543799 122464428 529947079 33918278 865833001 846530650 112406690 307170870 107546066 527753211 76323737 661409470 829809715 35802909 566279964 661256592 979402280 894480492 370708725 985725253 59532397 888982006 900502018 106550319 836148546 409685499 7039865 526815104 452511220 252073170 487576404 77205972 371822893 338356727 193781513 409983131 695741973 794521355 321380412 985898842 446339146 773738142 411879035 761131747 631276236 157254452 370849235 781877243 294148843 803546867 10743392 349185732 203393274 542972205 994883278 281478015 717587570 376602388 293206694 578951370 423616550 842182966 867589161 797969078 531466992 70417539 246479313 563688425 519057586 424430897 310804867 860454510 454968332 346604533 728590427 695317470 791419594 669325943 628834894 111188594 228797429 488067674 455536394 730558208 425733734 989536637 874541018 730424215 871852525 672503606 704480481 820485080 6311002 51433011 903372207 554115367 19367323 42274037 357767161 318346785 562224789 305790841 822707516 875127565 396649150 158899778 258942559 996460463 919808122 315859321 586610279 618274555 750885845 905962553 113047020 480134541 654245595 655128041 381094912 631467944 895225782 167102665 878477374 778458211 336189417 205413460 361076038 997781259 391272854 866807360 966845702 766066312 79046918 37826257 367133854 371481985 946790454 659962851 672902690 330834298 82779930 275286091 882864970 284998710 916568056 252350413 255490335 326225998 851671869 856938548 933721443 941974345 190797233 885886367 101927277 52879022 136229436 690612006 128784044 812536237 66307832 660848197 493064972 386191187 400823715 93727426 246915122 379874943 779277723 815525290 105019230 251991259 292349012 804951664 754080548 667129929 528924147 736868696 201525909 640264551 759444489 483452887 601714609 383449130 105293748 842604104 601842834 359906510 207463938 723080195 896919625 339482121 338087708 802243275 677831531 762651933 268024383 2884941 352541626 99638817 666855785 619837159 85095665 778205047 363094931 850708346 803025163 234418342 324244127 455342707 529493260 267853462 69150406 831215169 958346728 384167958 772078682 116381472 855804231 762048985 535171974 574147251 854865105 265590858 768020462 456626921 311310840 836548490 96064238 447479337 250877900 984614282 43847341 947363874 254937960 875033137 83250003 691593183 51918344 398409820 711887584 324144659 210012540 245150480 864322908 220591273 85332623 434737721 869060661 119936853 144454316 311881283 968339279 73304008 715648419 293003697 402591124 194497988 847532664 416982138 396913551 73277390 733583578 386807323 524371345 152307547 174963978 289341251 376559871 10294654 618504914 112279625 851526530 910050437 319984358 550970744 139015839 723628813 676907207 648404954 446574070 586078530 908519830 550738208 761291197 722349641 525894610 576502837 129658517 271643040 429237865 200471275 782098227 377100079 876234264 967534990 783436970 105087501 516744499 171270682 276235778 501527438 167928768 727325690 605720611 661975236 680989838 546703035 422201328 662105736 791845399 111042555 342432922 688474236 699331851 844491793 55763462 690394808 790218968 879390444 810355335 89356437 51054346 276968249 306109658 497000632 990478910 574507698 236325408 654768051 69074780 231134932 372619834 81666622 733425763 895480308 547377732 132195953 695198024 962648041 742420132 511570715 315250617 946802470 515599315 756206470 247146605 81705183 860791748 532149142 386622853 252898492 963933566 486112232 910927470 346475755 359025590 905294335 308669830 456939799 53113760 376205808 763612819 619792990 466384200 905680142 35367208 935122626 392792196 940250275 245448445 402615811 744624308 471780659 840376536 468772399 982749903 198483931 592408263 891876019 731050344 689207474 334654195 751209285 945622721 892609081 665768344 176494559 427852195 65355120 74833438 336315924 686109923 39981753 438856502 158229339 461234516 1975104 352293601 456635347 148858421 516795908 752801180 820149975 119513069 241409562 450487715 824081453 52892675 487357531 626389756 575256714 88968447 899533398 539539822 414518219 229879127 160913731 199149499 137679464 133096915 167133364 147458281 586177039 915098300 631728747 532638887 518365265 465195767 513102841 341192893 453741878 857081766 281478878 503019416 308655921 501082425 799701071 855683254 115492084 466534366 800724889 494544116 471813416 219229124 626717717 779987957 420125435 716897778 926018167 536492222 251072215 839024887 117946726 462961543 901368767 587927429 913083406 122946349 687996145 544089420 359301948 871403779 375620835 399016771 586606528 487244765 17914261 233864546 887307332 371854251 288230702 120521023 106408319 257755028 970440314 371114946 302515948 1435706 8816194 645886521 627200056 652790966 967990071 853735295 241823275 462250106 924275501 481688785 49128658 709497881 696584801 857531049 369853214 940117543 357461087 177024287 876521098 121819988 769606599 781513410 284851354 986733694 768269180 598637422 842739300 196157520 985856175 376294029 810418468 121948034 408600990 683896808 822268083 317540929 475480314 678821246 252504321 392104496 150902995 601118847 61049161 884550546 933857323 895376911 840854239 65782585 564147178 135672713 529575147 536691580 760369530 656425440 19283459 347859822 426974619 937263225 879035689 846805862 298414824 699355583 481978868 948389498 785335517 714770335 890651058 276602410 598882764 666922982 883445299 964566355 214800968 586394494 177239870 506396211 898741827 256808760 785576760 915102806 897042587 262789640 846506677 286883573 460689772 595427657 766583841 701239854 349887663 363666404 230350020 522271596 24833465 251921745 109918540 254767272 336394378 365717927 352994433 331480112 404206767 180198627 117036386 225615372 215757788 769779116 486967118 239924667 357892293 654517769 101082729 580724897 619041350 572116061 336640410 969660081 17460003 193995112 722855013 797511621 81198973 830415812 507145034 583907425 680828751 672384479 353375432 485486394 217690003 111199356 176883676 846395125 737549763 809686371 672469786 282226437 51959251 638582888 901326029 677104806 383586914 505911867 152813100 939909213 209224301 699856382 775544677 69667246 210278240 855190601 147401217 663979671 546264078 591594031 11284040 322243036 643569868 787203965 926885683 970028793 270857403 335009851 115806432 890595628 11297513 773791241 537632601 35964394 978213642 224550723 990447491 291771939 979324156 75441080 275249207 12112542 88523829 352188594 237234071 180136259 746473169 701905511 396807475 102328430 86084567 891004952 358887006 506065302 532365816 155453033 101907661 773467383 843578480 526202227 227457688 345539467 680097238 192858014 311035355 592611075 391468252 44663071 553107227 555685912 90713843 333885120 260454008 93067814 630792824 590460239 258245459 145254429 883752662 396005708 542736468 981863977 608092431 591700868 598964148 690033468 841676072 167583418 528254465 948908712 294141674 846311133 318685412 515489239 350574204 522675932 13955449 263617452 959017057 264385387 115335447 149347776 164880777 515707229 90096008 361462561 747426444 321678726 165193002 773770973 723758511 160475412 740652118 89325565 214472262 670541442 271896932 994260844 390848780 150725221 664265288 670968845 783490823 748842528 855286838 713713133 93831809 999074627 751778771 554718254 438106038 553485136 476591844 824266516 283810545 668714133 214617322 519715351 58125433 495652860 217493004 256414625 701710549 9429768 508413275 883165652 945730334 52853903 373075163 419564099 571314776 576330238 879575627 407488485 140245076 449165857 54539492 529642868 840509404 490490953 115219726 799982472 574700662 605878261 451563744 856855155 546251427 412787771 431054034 833911981 719774919 835834287 421586472 85008757 631419655 834469247 302281285 66464596 20336988 146397596 39031316 143426469 36015039 951011247 29171950 262480684 707815687 654006778 469429591 454837597 906903720 601966649 131382530 824325417 357091186 507609964 896995521 38444765 561752718 382690460 393899190 130848605 186635079 806872513 968522631 651744911 745135305 720489204 985198921 598526101 945140328 11673778 378609797 106018990 892875638 189635602 503983684 647103081 598895583 793353752 2515732 627554185 869520827 540402294 886962152 480678200 190589538 287349346 94616994 24429757 641068332 489942903 238058280 232624921 306304045 600716070 299344555 197354040 12145177 745918839 147939397 653190373 810318652 171249086 533202202 5775541 621618169 298501618 494645951 69441862 248382338 419587920 711921437 849308461 613774226 718345251 982073994 327842562 615833275 39077688 859354132 878132092 260341417 661351668 573750430 887954851 164559030 602659804 249679615 698645866 23337317 945453645 504190716 509285025 839986882 791040146 913168160 348989849 723390680 53739312 399095224 247863672 991927349 379029607 759905150 47636590 664314678 438056488 148281455 853209023 948289974 218077959 914485575 434186161 397170036 84854681 627854710 814802405 513944742 417299819 919260065 539320331 103278519 833737605 369623632 454885834 690299782 804149656 78822425 974449935 447741033 987904227 891313413 657619931 474614904 992895762 82152985 129264472 545089993 650244272 693642821 178571499 253085358 647929175 616842263 695008042 671728223 108557422 419168955 977815473 83458814 3266519 340106939 601798323 153048862 89067050 703816549 697781761 394954627 595104314 473443193 936925533 13421503 416141529 257338077 172405992 629731047 141885631 182541171 623454854 790953253 968670190 777593912 416446546 284503370 221839347 384011999 908873700 840372503 193298926 44869061 905839628 855939132 81253044 576579097 514462394 112720044 615273234 285835177 37070082 394535459 609438170 913335290 442330953 36848633 79734471 391858267 775710784 950063654 100986593 585315030 196862421 63410 370830641 334679587 443581077 395068617 909904921 128668918 830048070 390634602 511696800 962314304 934535916 308309650 626120318 543184673 125752620 331033329 280293563 491574657 793171689 611406975 94886384 656563791 880467529 918365914 518683081 476791715 730275427 432718522 630309527 164696066 456537385 828777313 841818711 223644981 107503753 865012168 121067963 601218805 927652778 760474454 168242973 5830245 715749003 830474548 247886386 402174183 523815428 461687363 893596006 352108439 389167280 150930489 23330257 718276338 893735245 750708286 784630695 149727535 954554316 164220753 267596099 807342679 860302716 50083307 556068798 981395406 182834656 795156523 638283263 746589606 520424262 728652161 244269675 54639452 250825389 212968322 967375681 593292209 968502050 764335012 684677013 34982723 685627701 992470393 206219675 190320970 105314588 995924613 158072312 627099251 614186311 27620287 72258097 101128837 957517392 500931098 441143652 762317675 83866118 130390468 6752147 902145156 798976344 939780192 403814130 833834258 298092172 568280098 653422190 214577979 446851430 133595411 502315529 822073972 745373798 524668491 71195622 406398663 328863085 446374475 336212559 283797619 691714152 414461304 515646498 283131683 870517200 961331961 372159535 84042032 206784966 168349212 766510940 86318809 192740107 526635771 650813302 178004877 296699357 674508129 27505919 642589800 32091456 415102032 11505223 838827233 981260394 745289423 100316230 887465371 604786665 233326935 465388724 750682895 151493450 407621583 301670409 924386812 531007525 915976139 603373306 27517377 598341895 116368923 838440599 89764789 467443219 259651403 768225527 396524710 214431157 161509801 898232574 578141649 267488726 31258480 803211760 94404873 183412325 604962592 65663388 171132055 442239431 764069444 483132617 206254613 451216229 392131645 472703977 908921262 944596224 141621271 380800979 226446696 756090829 761909249 413445288 595430556 505860455 868151568 571040922 676096727 811320260 574162907 218717763 702731189 978841256 518271470 216839264 895802430 521695745 758574181 115173206 905356672 47351200 864610645 859022586 933480504 510479672 299977186 593831059 161608303 186597138 252093317 361002667 112819981 49042270 30017716 822815368 788019737 813564010 274823522 371088805 702740599 23814127 546970936 142611065 875190219 630716068 476247820 205218665 882414630 74708947 979508046 200983002 424711897 757698376 179629899 617517281 958553943 243970932 592318592 943746218 816090097 561556553 246602857 657762890 233427293 4963214 919926263 371274755 563222083 976996000 427983674 177161969 61817642 861158740 595928679 204107998 645234242 665666525 217491575 773943143 379829124 496221922 932008729 293059818 458425167 489485964 657220467 833460142 230960383 443820867 47620856 916459327 575231232 906158559 525133933 951404030 803907131 823542825 349071285 265086524 66119538 574093046 339351653 250286920 342311009 338702201 969549691 339852154 354713076 483869133 78775554 866609369 138943074 677550962 867968525 95514497 954914865 982591061 845946257 650713135 447373456 126550939 914821910 261933183 850714386 733448483 763398705 850508162 83196143 979295264 259916250 300056841 73290141 439003718 727929475 951967222 747685858 263247022 15526904 375445481 28599240 102386998 688439344 116371686 894702539 234881274 746043365 1682101 93534471 249490471 417078728 653751764 373366418 762470588 313424203 467804774 184334990 301772526 911467509 723903139 477833095 175310815 188391807 929508993 807747477 501727162 790236600 48389811 760322359 630308033 635012508 212287241 101283868 885926175 317114497 269097992 795823611 423836800 351601571 909737028 611783022 170307846 865915514 197104286 676651343 315700300 691968470 276339833 601287702 894344418 303009461 48239613 982066378 929948233 308723394 584669063 176315833 476285652 715801532 278713248 918291189 95970978 921447997 315487294 657516964 218531739 966575813 133634892 30389709 712007575 446440181 733064624 822361203 434793983 29268222 320694169 427886907 891356534 391851376 137051903 506685911 10429994 239585949 90083610 262805246 892449932 621512412 387934530 176033274 129175240 661322543 620411772 770973698 580325264 885522967 653376360 653262249 793690870 196761322 125573916 340692141 283447846 825490664 629762051 370530758 445406232 773593094 595355222 280930993 932805471 258881583 118120162 946583899 295822067 885535607 270291743 840578167 689864637 466651399 44851868 207693998 573018930 263692800 410954348 143333704 25838795 697502513 754844429 526428570 937174781 522232469 673430752 781538665 321993358 584792221 37810435 398231414 509466589 414383707 28697417 729031959 665256336 908290697 676044547 709557132 355453203 666796628 958055636 187535582 403079406 938177842 593581577 61639462 796678410 57949884 875775942 86277999 166032284 962329248 816199449 123222799 977485911 995480931 377409994 8471820 817610431 936730616 727529693 271827566 93045634 376289787 3693806 279501055 399047021 245303253 182861797 435075590 695566027 392400528 956266721 33030411 917352218 613685379 898357963 741960613 1848275 85173037 449066695 535166368 429059251 465443110 979981294 238357572 834182120 988502522 401876771 524307730 369270314 584563179 17029556 841471684 467185650 842731414 336687220 988650142 588633155 986546281 344883626 71739404 19212230 466642341 473366867 590910763 369226433 587843722 822526899 50697199 126576701 693551951 237254415 646834813 228125249 482229208 713061936 10074217 31205747 839589899 561259236 637574241 250705175 253874557 294164608 535230244 395295432 308450955 150490149 399595268 802308240 922374758 302942392 780440404 695303155 4034166 267292462 783472142 648236233 191214738 352977244 86648773 841276677 684962839 874206851 199115684 154153516 933928579 466487335 718292889 850973718 603890799 56937585 258995110 108813270 976417118 993369950 29088144 580384257 175478062 184660556 132142390 223041535 319578439 756770678 280021410 323825006 180231923 366014623 281092569 678628013 849598708 132186360 404407422 350627104 241364601 126300493 577785031 93124208 242501609 300826339 582622772 845875673 949473977 350872796 289725164 671337570 371620422 612861932 92914214 468527465 230253003 674573362 976456087 414208669 470181981 147521658 224004664 115679211 42729039 577737555 961581551 941035997 504867974 301136616 574051467 321962529 994965703 947271053 441192719 801308909 598785639 684023480 872461499 428650656 416585861 202900417 975197070 700615073 36718302 152229038 143726827 793877258 885954005 410041380 976891392 736438915 896443024 163184462 335896469 63506928 762597785 713241553 297373781 687651064 20828396 640894424 713927961 405796035 895927934 649858836 851750255 287899140 840070040 593277799 112996634 385255229 393683857 192252611 878375137 730021721 26569781 619991451 800063432 899724473 108503645 41335623 661466024 938683464 257676796 227280095 884438039 963947600 733179524 490460130 168030556 842618455 704450846 189408049 750648906 965309141 369216349 345028529 746077722 259885804 600409483 944602740 867988285 848768353 361983724 460451460 483943025 749981013 586462793 511079043 974755495 682120456 428803709 980199189 305578216 933554423 882929177 368898623 583932173 794646222 696897294 735692957 284746755 840812189 273481028 308098847 914114576 3041546 323125144 731415237 367578465 620561467 839201701 526130121 720889790 378316453 545811568 604403736 919410702 534648600 606618897 467552902 791729244 233510062 57861320 840893992 637087437 275312324 961197347 835214361 696829052 950221971 816970145 338223238 507151432 102838926 290678757 324315914 277805112 808753315 498471753 657586900 790894513 878206646 680944120 154029185 118523546 73463275 457997970 4077031 688540317 853436947 527350342 507974996 910754384 934495384 90633296 804990935 981358998 813794668 124768909 318444268 176981293 858845628 224810840 305978548 977354887 576875116 411684686 562767044 365306842 517585550 50281229 988652029 572317532 60882011 190347436 5639719 593308106 717161092 387916121 293434039 434727494 207850148 754445973 504533975 610687905 656609831 25135116 401203899 812813687 641550465 148026172 83540189 176644344 566510790 158067897 203617603 862448572 324591093 476855975 691998 668901102 955013717 488829250 748841450 645303568 496976862 714815319 471107470 804215458 175277559 75122947 364184550 320266335 553207024 954807926 790053153 282509567 17092052 742513500 268958376 369313925 437772401 9058820 205831920 127644664 67724309 921759175 149008641 740767490 275056585 150604660 368223336 422480451 915890256 609026364 132924985 909416813 914622107 359814829 169537968 582055934 530817255 66901516 331595203 14487055 408084571 567643195 718889746 78317228 335038573 981246140 368669834 486852054 295523265 868143708 213167859 517634778 132592140 431412292 381802054 746665653 31101796 842508636 132072940 357264699 658427959 437228417 264529494 811723473 311404374 552453464 437282135 856491546 641977781 678537733 580549466 292943171 320498417 836647096 712298674 205505154 268652430 94633103 129471382 201511369 598359954 778853152 378487057 290205149 842800409 795509482 226742378 410921018 535554879 265737955 124392846 962988813 410145965 448762143 712166107 302802051 274182032 662299645 481516854 262496476 380863939 378728889 37954058 524270069 616779900 313291970 331313356 675664004 16732269 405374236 548894587 48024786 376524924 269857587 516899036 815363008 9094811 542432834 719177412 724968095 873043844 499060182 300282640 583573364 721965616 11369009 724119327 913154445 554418654 122163241 447082850 766541973 490688124 412044547 545244871 127898017 706720981 422058480 897884426 231717265 673525620 381998776 367630381 839863863 216324697 176735552 831247444 849840871 766664313 395621663 432236240 428039591 379150470 313147454 537481988 536156543 226480907 965098141 761546545 739268633 736291775 922598091 491600385 833385845 490669328 759104196 126089700 77890373 181026396 391381360 671724079 465371474 392521565 830798765 445128225 894216173 405939424 86379596 285174504 79675183 849759922 355833773 681670083 777220153 460854247 306749859 932275370 435530974 343671517 528096818 769386748 366203225 233188156 450486211 996729461 132093935 954016812 223223905 952305 163435577 743359005 325879066 834783127 516121852 478533692 995953810 244534394 944704308 895165968 818554133 742603783 623500165 258074099 913985192 286384024 984350122 545502960 111498920 254554756 121211862 377905172 780448580 882192534 596699147 626938071 824635320 587953789 439534434 11917638 522828788 941850294 346396831 957814002 141552988 887687706 529807795 232630238 858024959 588239754 228551503 293021972 271623104 42745834 622384761 259500251 394356734 941112697 539149107 554045603 704590448 609823171 465703049 361336668 890059702 585384129 615870895 196434003 936720882 26300419 516760870 483094330 882876114 511345513 32363330 557153695 183844713 488233988 544939851 159395967 593404526 332459617 472471692 161601746 754392915 503910355 154817508 292575010 264083303 327524999 370254173 19482495 363032057 674844044 646407860 92325142 790203551 166535274 788479153 917099496 187938818 45141693 147295793 928041716 107991335 304983399 319922832 346493641 209526744 751174447 936574560 555343051 922758657 213915929 79970502 992756004 591975302 51938664 742132852 340133063 739958756 446000647 833072256 180590358 859553506 85339483 473773795 792108861 707691017 489975555 905519212 33974256 498761767 840774965 2890664 988057711 945039366 469390152 693273837 8177365 92906721 927724467 893158041 70277123 789353658 75604071 584894559 35913755 96363847 11547619 254341280 786484305 833481626 266504532 718355350 817808247 596718180 999900017 131216398 522148438 386441171 120537712 992504172 609286236 14039334 834612020 250065824 295259926 114433536 189808199 639798488 389532911 279955925 740137938 61474531 25375845 697480039 693318481 951689151 574315941 405402019 812131024 75074532 692244126 515422534 871370974 497725914 293342281 868882696 907448396 991645873 178963198 573014992 659863310 503706589 412500417 446622527 948667021 374002308 737666964 273660999 492303263 84391542 302573053 332371757 518363592 480044910 986771615 40641055 245487564 484062492 984691389 685667387 862387793 555848356 308485093 973486401 45704269 443126944 51801960 256514882 158550196 703786943 45759744 903204217 680354611 971390156 156551291 628266738 406151830 553580059 918412111 718557230 971436967 379810788 628862617 906150378 772691123 241717580 15329603 518557733 109358528 66753999 843750801 145855908 917574441 420286195 245289774 27405363 383228348 687441830 483198519 943521856 943731656 505539104 949605144 654109356 277895640 421222729 572230278 436756356 422070472 218421412 319118840 378731623 263484345 262264593 692916839 730277491 236867528 840261821 88601616 421761771 610513032 489802555 515025150 1592446 938543618 839394441 270276892 201257834 429496891 145922874 534598914 360035861 906387053 495681059 805833689 259723057 86658712 129163142 698946927 753855850 115465062 828398836 536183851 781908741 77169376 297056235 603883084 233906720 249415657 385674059 620308558 324875742 13373002 697542146 711258614 356238703 917703202 283040401 294804474 265953311 961839499 56676224 806678307 542053673 205896818 704531395 625017556 993835092 668548584 414836824 888497718 171888210 300113067 764180902 480149532 804706743 114854266 633079441 582754535 314587986 337823036 449138552 160221454 379526316 392020891 685631430 45036834 738350735 743447712 662707863 478003771 77131065 912509288 385055163 126652709 941370558 932285653 484428482 347144475 460711425 279485934 429417556 498890333 175822229 344724153 177762084 849144338 317225622 496893979 891246763 473680830 131073768 835158948 830751176 462325716 550489564 188185763 604270858 702061801 843711759 622472788 240796443 488377093 656206436 264649775 8586664 87259018 573133389 329606702 305972609 583248584 599825331 368268159 236690606 47424303 296732300 50084293 707145707 154331927 176923875 20559165 359027540 347707146 44744509 587305359 470121198 359552768 380935254 356100314 447475410 157156676 790244231 601489679 27255019 922557720 428817000 720537459 68852817 422587556 990401161 335689020 965000375 522409124 287836694 969880638 287502017 905659225 736719106 949537010 716300278 133482433 288995492 825805105 290279229 76209029 659004834 402036566 448112622 97065221 997055853 606913227 620200838 685822316 96356510 376151284 920226224 660247559 307579149 445540336 281139116 789608999 194415765 268547209 582747727 391901273 970196078 676986736 621106338 171770106 901787261 971519927 31996013 78708568 140953966 585975752 888381354 710599854 865698420 482032696 148149663 767855472 953948719 364193515 797258463 234290768 289431868 998555721 725815801 886985107 378996782 645175943 291129733 158130986 927732505 377936216 220398480 957368823 846035714 197121986 357532550 324467817 25393356 729478735 760076076 99838194 51143007 404883696 854825874 392230962 551459682 799869608 876978642 345935978 728830078 176214620 444658527 985204416 564501710 850975728 875809097 750162253 197543055 502372039 840889693 233719810 981744240 953801601 18061407 944357132 641004137 439107096 229506523 923635869 822257365 157034151 112310904 499614965 989113915 243802257 461869288 191187823 441263163 487134519 484179264 588634699 346965320 367959507 273682433 347430327 555907068 85151138 192076450 568688794 613132961 532737758 577893721 908002984 233849120 833129849 118004677 785913113 687447840 668643812 878672945 295661698 331798904 570448387 428131437 116294480 738874148 911534839 252120690 558609536 784803627 828042611 741078184 616353198 451790449 853853925 310801789 395440794 593414026 113314384 487546971 282399957 23573669 947767121 511579809 699897664 885445276 557735986 106067147 840933595 527396323 134610669 668254158 388211198 889498964 554937377 498932200 22303941 738949473 876840560 946061339 71919852 200024773 543481559 421323300 389231651 82050578 220787810 312748413 616981708 964934373 845542387 206068098 918970975 986115515 717652698 149871967 276168616 587595838 953444996 391243830 90698583 875746226 928918155 172671506 633003926 5077215 766585776 304404402 636632431 757952858 79937219 756928437 877230509 414467950 991279374 354244925 355672365 762576746 189102626 818153747 874257566 60535752 164275735 614867236 594397890 149021266 563841802 848411971 945845695 270747516 775909674 330285881 757402459 628894228 93344132 968488823 872523327 712647317 347423772 984851369 899936163 763944201 944070443 831942628 249954100 989740387 770316505 419791172 244847291 474345105 755262117 992808620 952979002 679173733 713958124 322271470 147066775 871818457 577412137 315471741 34330163 401457525 317065854 498401733 703570070 263396285 953103508 146848613 123389950 302983693 968970345 537718570 401529953 565810416 765251443 136041196 513578034 248073732 118124125 180915603 211037374 203149945 370469605 802628233 925365760 418392551 726035910 376801220 750889770 791358819 381522934 346622572 351115331 63096580 884043376 460638585 158636804 776992053 236491223 93949324 728732907 761786043 163560797 472037083 940208435 620039608 427332935 274554705 753992904 263206465 671093754 452162695 492853649 971475784 607646983 322663658 47699770 86091726 434612043 658739819 577197332 622763909 751207247 671271657 187254798 887611517 866943318 933089514 318210930 792971805 666069774 854887852 858198199 103454213 323197007 650527255 358407395 104542820 819011072 526802502 317273701 253355846 217986464 727694909 151032646 799595326 509386522 497372443 544725149 856670914 957515760 240795060 408436462 957400398 731092843 788375428 957295884 612272598 903273318 501599893 344987392 747463371 211991040 69969162 83731837 123635539 621871449 392002819 393803648 898430896 993859944 550442113 664490139 496055737 262357115 695163570 556531771 855916949 302071489 31059126 538746383 364422913 940668986 370958497 889424929 309632227 413874366 780487889 58404120 916726788 521234803 184363174 189514343 80107308 886501333 705147363 380954758 274994415 215823618 221802907 207259041 246634608 927226797 743096151 836395187 979593814 382280831 990972397 330468820 264485528 664315071 737084169 323446421 164523213 946229209 202265085 375556213 565014431 738215151 743758790 788323110 752020029 441656129 767671785 717215202 616778069 698982448 44281461 846112693 63194338 6010607 345655462 833767914 228906514 941989467 419321020 504029047 426565379 901236830 255951734 55392128 163545938 632543333 346749440 668881861 456032940 410743408 703702715 114361836 362021962 774844963 903301189 241510331 992314247 290048036 190455334 841654887 182298429 799407827 700953364 847276086 946525521 439100449 986125964 528866575 939429576 30385460 854977668 699418649 823274953 164937221 822132403 976644903 297325452 680680740 583805841 523836895 418617698 942132640 550723637 204512463 924825007 537809515 138563091 290699144 959931297 907972517 969861672 75984561 523694664 124031730 517252832 360943598 72869929 376991220 468828526 515770100 304004493 869773238 709771621 626196550 557977878 390483426 463232236 70829337 712829849 376306325 134446581 951356143 301956963 840036615 371546046 210833127 736395392 591331434 698145856 256537879 666064231 137779440 582601848 323278284 974536291 83147773 852434723 100107931 93960793 8160378 194454446 751585674 701742039 753488158 803173183 154384344 695501525 991055644 255724555 441248485 83651729 775353217 556989562 937130471 808884816 58326276 976144794 270994338 725823727 936334073 701808954 811462029 458501858 433514607 94828432 542860600 145604864 844626684 405415163 446498507 277370140 855093160 414230164 713034864 268103315 669704899 210447261 184784374 455041627 215428697 300637657 570259872 281598930 258729682 683517249 791916184 791588816 291279575 561823578 185854332 611386879 492477678 281303060 550565315 980252043 444319826 8767243 963560548 971848199 156136312 39598059 128311426 444513338 536866508 907261613 266389636 513185728 809875448 880815659 944347918 526132996 81141573 342240613 866012234 425982568 711424576 41537489 24815983 690886117 809647340 214326477 434951589 563827083 849830163 162117078 335374613 865832743 871706138 494476297 576451846 160713722 970104489 174836945 609584088 995151864 199518669 968634593 773402025 314794483 246767492 721923270 981727578 686992172 936392708 405715595 76712556 613422266 791199952 860739006 756662833 109946629 581609864 768312493 592336776 409669016 703766099 494229872 496479475 295974595 327684966 243786229 357362753 223391608 423176187 209934559 272031208 880103338 550263150 161274556 506248763 474038285 563971042 86241256 363867861 643442971 814263643 989401640 222340043 931477487 543447261 120936018 729784892 155025509 996738208 112587921 643804593 583098378 113985403 764941126 359962660 756435649 649056101 388708069 766840845 688330104 100787473 520549211 304367749 937581620 538494639 796623193 541269281 659933913 888026679 864788167 768984879 715055081 549148228 902007606 403510258 955156614 572983191 803181688 201313038 353292434 930623006 994455299 633795698 979941328 50811838 55959049 925000627 138837108 563784880 345063465 515076260 616603232 431327994 240975407 416122915 333604724 458529788 244302071 94766445 696699419 951798392 106409192 164830731 283182874 151458548 397898471 248148093 54581003 852780246 553757660 617693320 592321511 548299306 190919581 933675021 363821877 439814407 370080463 753123730 252164234 312274036 50293152 594734005 254109248 327524148 934699163 339456651 375698092 841214154 233041601 472361992 586227720 575622187 691125037 999344421 317255047 458967341 986825756 125422108 9441337 848649392 579202112 403724634 454247552 371615212 542854529 994972771 127539623 837956618 178833509 377727198 559257386 473709065 688326670 583490595 861837530 346355112 617779501 521047751 701364810 918911714 809410376 228144863 845860940 404673364 431387683 725891911 51023856 772051940 910931583 155311757 17935772 966539818 876998797 101380172 353752463 970019874 156276660 987795296 704523839 506611313 687203625 64311045 153294312 888359819 751584357 980222273 949173529 693377113 848151105 628960790 630973365 890884669 713900232 839343264 916435092 665069410 403427092 391968469 820447152 966005421 442641551 323831123 250552071 961227273 603012783 692931695 2711086 244478115 48809268 375361921 625743414 478932441 80007080 470774837 302384013 454957343 954874415 518172317 608276517 503367056 203330038 510526263 301914958 256309584 990750501 437843296 287644741 222404067 447394566 447962876 882222098 280672345 927035498 116713655 470939286 611130470 381273529 318010702 926756313 529643647 2524897 896660858 137584454 243533691 242063631 413780598 629454437 524854007 495459986 178933709 504275678 640850901 576247355 494379978 49045770 907435418 565321603 541462501 71312889 797416717 434290465 273701502 200912088 310876650 501476609 892724571 733587917 782635407 341457060 928834979 242117364 672602383 556776888 349653105 801282605 880869024 228761617 36692089 244666483 812889688 772489710 270839337 249044631 836883033 525393771 214773272 896222012 215562786 55058532 163211157 755760931 742354909 261483154 6149315 754895908 654569157 532786751 662390171 288698063 158863333 280809624 24552867 746923178 265504267 397180613 730078772 300934762 724346723 709377639 765403429 930718877 757620783 838359824 502657873 544468930 623328454 554950310 955771042 470026345 585491681 628351201 968169201 445333425 751920556 502926455 936819240 145235420 331200403 242736827 930117463 353634952 608985637 953629939 327107714 638822493 709184125 52179020 396171972 146585061 701649764 714634557 981735954 362498244 340310436 194951043 533435610 235775400 69908234 541463402 861677753 288346955 768043034 375305251 388611977 684210806 462220558 550828612 622465751 529089982 707234586 757980957 689516277 646078840 771217291 335491857 538062156 555366477 486385178 584103251 66731289 682179403 113933598 639261967 249433910 255460370 728236786 925749737 66156292 290696631 284657308 845535308 880983500 92142685 756045849 193541451 160855650 756158091 212350898 457716980 105719234 776339049 20126613 996330383 542985760 392822197 70226420 514704657 86642293 147171403 773096375 753529994 147236905 480487730 605301614 621326663 432323335 845718734 367212047 226317426 323028221 722189055 26620421 224343703 336994208 413093442 104646862 526141599 914803136 586273363 634040186 981770122 342841031 715882372 457124461 635484786 769834628 924267351 36843603 52042871 434992250 11493759 949224176 32008929 192178101 338455568 873227365 98792651 828157902 711161631 213086265 199350339 756585384 149460793 4591316 492025192 846122833 496088881 651918083 477497175 714604487 171227039 907004863 952774271 838185700 292770616 267004462 538679957 221287459 181821864 970053338 408706636 802969192 547793506 3339957 719340229 291854325 330337694 336180883 635981740 220853013 732913514 658442824 644772632 963971277 734323757 978970234 47317167 656020591 725951017 45742810 807131992 287379270 729053780 245841259 34408818 877869287 113839942 225739402 123554040 820812245 805525031 754657630 497689910 445888506 980488540 718667391 58130111 207307474 43200915 449307480 828276374 227003778 533443884 520282214 605422868 265612370 768745607 485688417 507400121 267104110 559955748 329324333 504695575 640064357 877649292 469266017 299830175 832331353 953759594 687346530 691035607 143826685 852463711 650523823 677613410 519512506 148973027 908020556 764778870 625783541 946408458 552595547 942043290 982047350 655079195 720455062 515485163 454827982 472720537 989542895 942799931 41077922 811369242 87092881 146710431 401638637 52938266 34341217 216399849 773527188 746522174 558489463 787357552 856632885 105710918 214896424 870124569 890619449 33556285 179973529 164873201 95076162 761835348 595098621 62155668 850285139 249137846 506157245 256014536 680310258 639956114 12455324 592182697 821916868 753979908 330500978 708596076 293315938 23997530 402777534 834735314 505214668 421891591 864180219 412216876 21525358 376200307 531830396 98762029 744755544 503934882 838012772 778092884 974625019 57392516 334237475 782040938 272863824 610597285 148931346 135405488 117547988 478797572 871287053 736881897 595753808 222007671 569384681 518659139 225298649 308639393 60513551 460984179 391335427 613879027 75669780 812345847 244867915 866496935 21383454 355590543 860137002 378081458 261679571 676092902 243855257 905799699 193793966 289472715 745083778 669876854 597233219 761022456 733234425 668619169 705231867 278976314 720359401 857055937 406597740 534827712 972031697 921612332 217329133 339204917 92880488 357504003 829016666 243322313 480600920 430479449 167755595 424584488 913157084 756404110 831955761 59029933 52137887 982772163 179491673 355920805 418864894 213877562 91370779 334132719 892523208 44473877 357889534 728954455 682088378 755318246 223984746 998198286 61243984 504286481 848493963 663299095 662989588 206599382 841240448 294310079 113388466 762380284 386030786 954574604 101852309 620696750 762387245 848444758 620836241 579945363 697647304 809739535 631471676 169554768 341704252 565237107 270919926 107786477 397216901 584574749 679677753 485300877 152767013 439321768 5247555 719635793 402029163 998137661 109905718 36066699 228412445 563924266 95953812 553196345 145600839 463049527 943920623 620266703 726997291 711554962 856885465 779505891 406663645 505203009 810022628 990303067 997928055 333081682 614966178 971691658 923607412 471846540 880041003 434899376 82249613 750162279 840936032 533892571 880012485 741278892 567272718 610594603 366722526 724845464 490255725 133237832 459339933 932012774 743283873 43250614 515214516 227189047 36139727 8538746 526631330 862822411 79852913 416931934 773243623 633500576 28509274 742521725 684707298 349358459 106567246 538561000 281544480 919242517 776740605 45768284 721456982 265770595 619613361 143714772 939276835 750886577 814743463 753672780 422065384 353992696 978354868 941563383 106442249 733121149 447902353 867575514 841371623 748561173 803634478 826334078 592429762 12276400 552195782 9000368 649268406 103967977 704463080 310288982 648327753 7093769 525369127 572715804 59450141 589242474 990789016 241674718 400962690 733634936 453307520 759060279 925213997 532224005 846982682 19971185 320600977 591657911 388654435 559118569 918385090 687984781 458612164 201119502 913294158 263867726 553159248 192806721 912154634 131480600 513585232 451763704 323635696 624625571 643249991 218416398 927446874 174195410 90310981 211484566 463273265 799524128 935513478 981357550 87989769 887632783 96388426 691713717 209902234 298868532 218690904 204263708 943270940 144560603 777954065 889238940 147862237 324798492 965336899 909136062 245129751 248385736 269483837 805444309 44410116 207991530 346579302 553912015 37271874 651553972 973656366 78342639 61553294 419426437 669511556 728270444 443789239 284904334 40759952 58392517 635374422 453654478 245620841 968344284 343308674 426734110 388415619 354514137 17796287 426670038 319034910 681425195 733656009 41371175 867327605 278877051 380142897 416480805 763247346 999023471 77783096 232032887 763263897 990778967 938193779 11519519 685001323 557900603 370502746 308253118 107199843 578775464 801795884 507275570 388597133 313724324 671132323 125492337 529379209 23644126 435603966 786160278 340611545 880457247 868594159 454907166 561416035 1712771 356983103 221449059 852152316 828149748 898324285 916891846 338835514 9437323 647375605 324299066 970786746 618368260 995667982 189754985 610120442 519653508 992128001 945006873 761478184 859239929 827100954 524035662 48081527 617101624 574133206 507221951 69304965 355734418 68429684 102265457 965579280 810178528 668636057 219558572 312457163 9955469 925214967 657626141 556268659 509510008 425109388 129618291 516413614 276379272 994855988 646605661 779216955 860005711 28378293 143000216 740845953 149041017 798200265 39918970 134198435 487717765 379325052 993307610 617232739 186817402 802466109 489289078 534836055 149047699 179901380 829176158 317300919 335396341 386902239 236548172 598922600 383546820 506188943 51987110 24810581 448314247 239509993 152466901 800000423 914910462 513772013 57339229 604617029 962875187 391386676 295003806 444555110 593156335 955887399 941528666 24661691 314176408 333999414 31877551 963882655 651792028 127572824 193482464 575214524 375057720 144663998 292161397 54571370 434676479 981742903 373834797 615611516 593311395 143525159 264400783 212209226 944402637 605520149 957705271 663386880 204293988 570193465 517280077 676400798 508733051 477019227 178551965 637323017 585121258 733626653 969232729 451186256 792791887 21144482 646368398 935976458 390725968 635560659 92540683 582995759 140243134 643475872 265253895 751413845 285921325 4675616 742069729 372532338 343932187 727587934 14752008 554253916 351448161 766560191 847199878 913732905 450027354 421602981 852271677 55839925 826918353 213533881 886048669 947375754 74353068 576716546 40875210 102012340 901514909 492577138 264444755 28198788 462814471 40208990 690211768 454008578 380213581 623027029 878104373 444072100 862048531 369027471 167174999 463557515 742420759 378190121 838228464 256025100 273424546 295861224 694040040 204133730 77194877 847158550 49313694 918070576 481996852 727147083 596778879 191630257 26150493 514900322 257779273 456794589 611284913 365310754 121063627 269362375 84187624 649413216 306005972 323190069 906695760 593420868 858539809 139510043 43775338 936492936 27073903 66689832 652933892 403597374 616570887 307654667 116800893 726007001 295914178 78084490 668305603 652730468 945680197 727650793 176149457 788752256 657395024 225415630 569223182 525991962 812283049 435825563 974828396 672772979 442884809 693597384 884955696 41440466 378335748 679227112 910728138 977862711 322490454 282871144 27908223 219185223 337795419 984641529 855422301 607017529 548582983 43400897 369788645 272477522 846269395 283857071 876200353 582970466 356939922 219743011 997886759 588908674 965707150 110649866 413413525 419925114 188953118 709307813 45984339 151377611 784352887 181911957 844149401 283776739 409275705 757807896 849148392 972003530 810706207 831769981 263963105 204330147 492290497 985940100 556710124 631542920 223580434 182280139 140229144 898676158 242609865 785461541 10358105 489260682 616806777 866349823 454175929 511469312 874044995 800994770 574284236 731749153 320792701 313795758 645830030 394597256 185865469 311425411 347465888 99996924 588856931 21883473 717517634 711006627 317285388 637665368 480107106 293407379 180985733 695514082 195144782 417413439 697332086 651006204 46331219 941650823 614469370 641674017 355705194 217739947 314066844 818367727 729731533 773510336 363592229 702991657 398297054 201955967 795110500 639088583 259795662 553306172 87636384 811566616 568947450 541967028 994410750 883742864 874881 741118470 722428544 400635481 188009094 154135975 931389080 571206877 922762311 249664235 72135392 123775844 620080681 153824461 239782693 915922288 717227244 605149613 597589099 155791645 232948483 368164487 376818954 957674274 95626401 415577962 926854308 730113067 757460816 826411413 311657089 267901759 729272416 346128146 892496951 631974566 864191707 418494672 823218873 501079018 610197791 777169707 884815076 860008266 382400567 195822021 706206861 519695573 631661119 320906556 388242153 342601373 577000764 655349477 812012818 879053827 178598820 945083348 320837379 102701871 43595940 882786785 373678831 318272329 906291265 142184298 760235136 559577548 194393006 660990313 682879665 812709962 744707798 580937569 653805973 557046519 301865377 975369437 216787130 313488039 347109771 508085420 213004398 204066485 102082852 176514314 134425266 918028907 628846401 892062580 387187085 949599461 297859372 229824062 914700013 731969847 382043267 294406036 930606276 44253983 584672883 25327315 14130679 92477606 871153555 904496122 40825976 6781112 814523263 214542056 218948828 905043417 541280715 837589894 483243688 572189431 217484516 304729843 402903498 436239061 709883020 561757879 449891332 925523542 211043528 489773235 455919120 702831973 194756442 428074157 22193791 428434808 65640757 445978137 464134669 993327023 47982083 494282190 499807731 558596651 335771688 763596351 926231593 810636455 460751005 240185466 947193712 239953175 96748300 595454922 532590784 718845417 363919514 580760012 762102973 157291167 777516116 958522831 382669138 132876274 179623650 139088420 6139111 12805320 289534435 427230197 518236251 872363928 371184908 924327235 772407214 407744197 997591018 495235414 502259527 375166245 510514836 429009698 695613479 213220147 614744779 152481168 30931658 148779760 597958246 762001835 223194644 50457473 171670680 190440992 971223587 88635225 931834704 602402752 458030923 413722692 899163588 993887553 909593199 125713812 776853744 424167743 456872516 995556014 4013539 667755683 227394988 133981488 844544147 846363810 876857019 696505969 56284723 398142884 485898494 783907793 656008545 810743215 793710994 101961464 201263052 462528324 67313751 113858690 136961337 559369138 137746489 357012673 264104900 217290890 989919170 750502820 827042489 317195387 323514499 769457831 332333320 801032251 828080972 117444517 594088656 704400296 190560045 477466894 101278563 194865503 728379056 479204188 221590518 172864652 68235324 667586867 612447370 746008487 224075745 311374374 192672808 307602675 13098105 150334745 856963389 395149740 116949161 481493131 563714401 179698763 816108337 369771845 709252921 269367924 214363902 465647420 43439993 606755326 592252062 234460845 515088104 17203101 268755688 48664990 222706115 479876382 833894124 836334139 255146813 93254730 863196143 450744262 817342937 156138550 300920019 441963095 336593608 893183569 225520164 730174250 79108204 922462717 19487737 538102461 649985157 287119665 959824500 394124525 268638240 225457562 737461475 218311623 499125097 43427304 947452837 790787526 286903084 457517909 611515492 631580306 256397760 324497045 770168049 657913807 660168716 627518446 818483081 589302632 61676095 912347499 707542633 317626341 334833734 743485475 387965547 444146482 546403909 405899150 392871541 221827752 352910497 777884917 208166537 241020244 456318165 870318286 76278262 576028564 921863971 516395336 392044796 388294601 203620592 874424594 645564968 318588692 327704923 997211615 455733194 386909612 240584923 511431733 975747749 242165723 560503419 534793010 230136078 301820827 680334952 355484663 798894638 968384097 40579323 362424728 851643132 598664060 158243888 438478891 579014365 495850366 458561399 192416572 35672966 448055055 216033460 702536920 13809109 876647705 310692067 537643547 458935763 62223473 161413226 425837533 242113274 694199352 305252082 124593532 365958910 674672268 302643643 862845547 517154466 400587115 522258579 747000089 789000752 412101560 409860238 590303432 925447847 311084306 733695806 380635603 371493120 766227745 676464446 474012754 560212275 810216144 840566062 907071589 64897667 184214776 5924613 936169505 846858332 633515633 778889819 722320487 792408411 868864206 544603510 786468542 403503441 931720450 758303721 925168336 233073496 495352079 531759701 47986687 575805076 388437099 961246024 628641648 537018530 842491050 796487866 841323127 586291012 465137105 190120989 750383870 296058579 508767285 983747799 518622210 656300854 280632858 522629223 316367626 117017881 956967898 232338129 81626895 381780082 752192918 582365603 520057658 734211493 45035494 807719711 459910582 228601572 510219574 639265969 477899667 360517687 708017978 906192069 25920041 855882460 13659024 716734104 741164316 130839981 31459142 526783604 102109860 563254346 68668334 970471777 221722684 263207809 925600469 930915519 276004639 483078348 642243944 210948843 938160148 593870080 591888271 747598033 408855165 662488741 4692418 221538538 320961069 109324342 770344743 116573122 667852825 181568614 819679677 347378163 69530769 982424195 828509304 598917974 257709144 496361487 980404547 18411951 59231459 510898434 272854792 127950311 29186905 255784222 633342529 409174116 367042572 518867502 62468961 757150767 774482424 986073798 566884314 599607426 591051358 98941830 519084835 137317634 465798585 140518452 383131272 965015319 577076327 390493984 626893974 691384022 984589457 941261105 644262820 889533984 109826654 950975803 329494932 316795438 149293671 57135356 310980981 877515846 916959691 312663202 170662507 269393560 425980622 607758387 200610999 670479698 8129153 966304397 2200184 893017676 723212559 702330860 932148126 183042879 950833328 183850912 710876678 629999906 362813495 77535574 56060835 350983049 887881682 98960166 391721322 342169041 545032719 473135475 816763965 945073819 828650374 723496669 804073949 730249709 415864366 167355426 681513566 812768664 73846116 332238710 505568262 755870338 680573072 609571830 399668937 485974640 60809576 298959247 890547846 965750729 219516534 495561288 989806631 544386013 686634004 70751657 50848903 335799661 828405034 503297863 390401388 831941274 447126370 148667815 178641762 711204127 410813664 369999247 91935644 351569369 344556276 325720973 499004085 654287921 600517825 398517661 485815677 731426610 945213728 836029461 454776780 751662503 649620067 506364363 881361049 343337772 76522824 408102042 616475431 429702070 845615803 869148569 435915571 405653772 146503185 321529781 872674008 590995429 452946246 942278972 442761740 13637653 761339263 671877503 722753014 254377614 660113360 487142748 974069917 636073587 45808228 938729234 559724815 100025640 971692218 982375731 563931285 98942337 551769991 80923195 421621830 810402432 859482405 132775485 530408603 672622571 660756282 329371670 788264483 941778310 224912666 71571276 185058356 595493991 623964435 523966126 183198112 885164884 676513802 47436363 378681228 387110432 944745221 655534163 590319696 368370546 209714812 593858008 710129716 938008735 650980395 294344815 56236644 585271266 304977850 920869446 692739249 80494167 796946041 547087366 745257621 520055183 415736171 996715673 313070577 692098565 327132667 93498492 308163717 566149443 278422944 772910751 987187373 924255940 70725106 884742129 839522041 102980967 851965289 926226783 814548948 370751182 846642877 970095463 314885060 447925187 919810214 287310065 25379215 106897321 689199989 287511132 515565253 528354089 417457474 586028842 541990371 220440252 529881447 754163992 530520830 935389122 860892560 880932209 332547826 682203966 322924571 259788248 87683901 195433730 775532439 995377264 322721929 572038525 444566663 88824126 362286348 181530880 976009134 141106936 303555624 53928724 560405966 237892430 468838994 334678829 973539637 79858924 892379977 690455727 341360712 274580077 687549832 618361401 570103147 190274372 453382613 738891325 306370105 799557975 305311576 214283537 406698363 546973705 830116985 481225904 515590974 680367218 981409649 664046068 315981171 751433153 156700380 19505232 292796270 167766500 781504525 624767064 897155557 211973329 535437390 823656655 984210977 894647371 343750777 891353697 236147069 594155749 831631303 314968059 695138711 874341425 709855868 425925221 910694272 209900108 571191975 494966723 155818196 369866332 128530530 818985933 604504266 973835681 225012973 915884539 142553669 121105366 665545963 784388923 800789773 140553344 243119655 953898635 706659130 277922470 692421868 356172082 327143594 662040038 862551732 501286299 281561211 131557266 269646966 825335732 414587351 935656367 927957460 366852019 132845739 974992272 950081227 44661973 560920767 917913454 994642727 347526643 751621098 760092989 664205359 835371654 592650218 649124724 696646263 761129615 379721397 515210489 318726206 741936398 732076482 126462683 255028518 586722889 698441751 39552861 764465984 119523844 585872500 960470778 545729766 763485945 368925145 920177370 426350765 514811382 901775418 233275403 860776811 87826181 680210917 648481504 390753058 197193803 868522158 698237133 772105350 374881660 837355444 100190916 924410854 423560233 228815255 56002741 914069467 485684283 43279349 832903901 536177797 485983016 953414658 93761464 359922976 654943880 259094696 691866231 106918187 495437015 967193203 511933373 439322228 495825075 430363400 379367170 875087367 345261243 726637904 594379474 808308521 571904375 710666812 439532868 286852854 469869658 106496052 534732114 857520401 380585809 594938599 873961473 245662972 384742875 938875354 659163906 363139140 909258087 172544500 547058498 590930543 308208549 202793905 854792457 736950252 460135145 786685628 662767326 64009791 366379425 297512284 197450782 802341398 231764744 165775146 723721298 30314558 827973171 866059538 726611188 949189857 578451537 640666007 294003583 706697017 406426217 324560741 389922534 326352640 732081463 234089970 230655508 979912349 528287648 128746708 325413931 550112659 519095616 221049857 830711687 441750424 432796138 519415710 184987414 780569708 876325735 735428782 992816030 680973798 895957571 784919024 719334802 925839950 376679391 375532981 392784921 565660829 530393228 269862033 801363885 569819724 864643406 148297656 674787538 115364353 450721980 501246 714451203 78595115 743993822 721993738 825456987 544133373 100985352 446930685 427235225 122105727 344130874 78335350 385424715 457905627 361911779 532351639 489860617 242609225 755040110 599089281 202634814 432194177 55315867 550462202 407594274 391283496 270553460 142282847 890724360 284992654 968691933 474418453 384293553 762693325 285426602 368931114 215350008 136955170 359970337 50871238 862354503 578004567 821751166 998711590 300305371 736037193 957623928 689725363 445010484 366939643 632987062 974822988 96415312 985224609 540996958 892072392 51155028 660386797 877559935 463098882 594539001 263524659 608735519 153463878 989885271 303324951 340895756 769973239 429230490 660847979 587880663 393105337 61829418 691292280 887401979 243259276 565563879 407225912 321766217 361969393 929504012 185200825 36945772 122527673 714897472 893109394 392335986 650368860 245737708 704135853 290749077 720157112 632581982 304635657 756719394 37990861 943618313 651801848 291920573 751678311 361978921 258462916 894356447 652905708 357737089 198242285 417691359 599395184 446571163 55511835 215703061 25618052 858285572 14200160 995935743 802974889 559391945 770023200 484005628 872367067 221672441 352200664 631957924 677430322 844530501 78087140 434027084 605626656 115666566 452960677 988225624 122816687 703122423 378535077 242320034 484540839 654129860 138329248 531188519 396300976 206248549 379976119 680983718 404138321 929034583 474972287 996772852 72306646 391514673 672022889 354373548 459590588 868128086 943510152 858150359 712508644 695639451 416796232 485310412 849119424 251858056 385663767 389805498 434686919 904142220 717066882 212891516 398363842 344993459 345669871 877150940 989984122 225186055 553863051 377643315 566809489 869452041 885280495 943949941 381546371 736919238 331561087 395896498 534792641 797068607 899307256 366172956 687521937 896161861 183129711 469120544 778185835 602408592 557454147 513958723 914278247 69735800 764430166 596701417 315831871 90704855 12889497 106526624 356086551 185999062 758861207 320459264 291791452 449433054 226120516 167613288 858421543 346124559 469157160 822369077 243871686 863269601 723592525 397422147 563331328 801010891 556195598 230828862 405121235 864302387 578064044 202606227 724136855 271478669 654844085 993956141 390934624 440905580 22776217 995312200 814344104 879593013 305160074 433011432 903894777 993157803 513357886 784861087 335453168 723391612 202074119 640827649 998004075 796840628 340702874 226123539 153138596 271049184 553502580 915360282 516892059 751898168 596629485 715429156 624862450 69052633 129596987 930177625 72049351 19370033 485120180 132245810 929414340 343938467 273474568 763156700 95032260 494914257 908340904 837457842 926118489 292898484 757026593 726229942 416373085 108271760 121436400 168506824 128484884 180139488 459122271 528548538 906489014 327119476 182866308 456862201 211488158 620256084 602192220 441763370 339514399 466747745 917654881 812736707 472505308 379363355 25507421 723166591 734824768 298769911 908363549 610025208 526237440 663715512 256695637 66761308 917321462 468806687 193301049 895411701 434660835 224550772 486622934 24845953 728090248 439708076 163566036 98869209 73109051 65757930 906026881 876928388 404552015 230929520 488008754 698683100 923448196 396162852 264464611 793813710 960275594 919937053 112638426 761701690 822010222 310701033 968981198 600695699 664823041 939569114 177811114 820913532 249145510 386194907 421567043 170195465 253892563 671596840 533581942 268135707 276849327 203204644 816724224 283654431 965478155 464112827 5849923 265998157 642466598 701488162 758499836 775057684 288447468 543510106 763993667 593460952 436140106 452076668 123327909 314859032 643434879 934902756 542295018 377583345 844207868 688528310 476435026 802531109 727182722 333355776 537436244 389844545 7606247 394393438 660217284 944533980 332232618 948368059 202136198 579232647 702788533 438686349 805011913 479651295 824173655 649275076 88011166 808531029 655744884 997439310 827057243 523978664 675093357 96773598 767339907 892282198 111054361 656913658 506019696 622012168 60606691 671992073 26185413 993036347 134578335 413605709 814477882 885533863 56077108 482972469 827327349 835033088 647349577 589557176 192952628 114107130 634083479 338014645 652269581 499895095 308443906 861045641 843665956 740606154 670569236 789344043 125495998 772670831 458599667 836508701 167574584 21732499 490469137 729329010 128947028 976201475 346984868 532611467 923398332 452917401 929667555 357041374 885561801 880184527 707716976 433371938 134171129 774890390 52445165 431299277 874903220 365131194 79286059 8772304 847039752 627272519 355169368 851051173 926277983 655637164 684259925 511333 60091033 481005224 347702621 866689916 584225985 159443023 972344812 689354406 119418317 518191789 689420521 916733677 444184089 627540670 863264721 674028631 843168922 272322335 279984836 946580458 643794106 208966838 979346427 832225747 229284250 207920704 388212758 543891534 612724597 418593903 799174942 134596302 242759831 2265802 510006785 629102120 871283215 228570760 765669183 449097988 868542671 57456238 197077887 979408477 586122391 756182308 254466256 273367720 430965778 278976377 160446105 451637818 709596163 605809512 633975001 621322289 658462983 759667713 851654820 288424893 365324980 503187299 792657913 197516280 513398916 337054207 838207749 972833869 629415613 404804251 9201014 913499281 595610767 816277283 553273821 809649184 656717678 4549133 17416641 191020505 701863080 948985940 509439975 165576982 255791211 392750914 814323569 131019573 743039391 727167471 23287754 723121169 41746964 906056867 253639522 782710509 410511065 49608162 461106570 279958520 108628700 59483892 363824659 149361832 505960338 104977133 469134365 141589706 748116755 41202717 336781091 89109112 646215978 955885481 1848570 414695009 207419605 261571449 869527083 774317482 491629446 994704133 110581316 668552869 133039788 544562272 996447925 935936601 443865146 14355453 149688619 371672445 395479058 182138624 823040367 426004811 114560912 712627184 956339849 565367963 393244696 170634948 905072355 258594506 359253523 434512943 815458748 673765598 950430634 938960934 502614612 883874841 556019763 793943072 313897135 95483214 438815782 698168717 773451209 455474067 722227758 482800844 745914485 39325787 609487243 263093663 113046538 694537929 259101214 543300683 828577488 518139662 637814169 619351539 18415354 650185079 261526117 231078223 99745613 483756974 462852364 147021947 793403863 995262366 458615412 48489607 367907484 804242162 913796894 882397684 809730291 774896719 389414858 101751302 600055037 891024777 274899898 597076558 569210786 972428463 224412960 115672923 905066551 507890690 213399056 934717904 443780816 395428440 970859724 246321140 27151125 649035317 935996530 1229918 707609722 712591941 31665003 607338613 744037377 878503323 490835890 975534026 944478595 877214278 788557126 959350058 927007710 640335063 918321757 232315233 891760693 15477438 814489461 602516383 163977563 599352774 615715794 185827148 653326431 172516772 248326329 368013687 293844979 20942024 534907078 196811932 401461481 147784567 182591336 548376401 109787439 434065824 436970306 417864531 51188312 66132628 240056248 829662486 315346587 20136997 516272391 60530822 417877138 128515465 272724722 20188330 870532875 403091800 238530675 537700755 224819616 710953482 313236862 576189998 338973196 439715009 488210157 658066602 904760222 940506401 709808090 656129796 322959067 741673147 93717879 676251501 155550069 654134151 237380879 426351856 527600273 41781477 966864682 226064303 999065718 437846285 390369333 559575443 990425325 800696620 880200471 447416403 14604101 958523521 26588065 892900816 792271897 218428097 498791322 371139535 719150995 358480694 419081790 337330372 494576083 666609180 222247034 155179794 601468060 142415515 201670079 797531743 829467715 35333118 501414632 717526119 135070638 213341794 486737167 973403270 625301044 461466607 986442986 34490075 932338529 120593292 199057245 688276043 757552475 151035575 886087643 926445952 376790069 281770576 869779094 270677552 702803526 999414766 326730978 313765633 724441692 560220220 526266889 148677145 393416158 381478461 564753473 982611110 269926998 444732767 220025971 490265411 122444555 677103583 820177445 994157658 780426193 843629849 140668752 382195962 271707775 18319190 700150069 63192871 954975917 924334786 146576909 92042727 484922381 33968399 57151779 69307256 834355632 955536986 758964172 136064490 676657519 599238173 532106670 727739045 547149625 449837131 171653474 192384622 561390511 943455282 839643081 685476447 915539655 897819513 271882211 802695319 470411477 226096387 167980274 606111113 279984560 333223203 806468919 616316619 560163340 993483953 266732480 968813134 707235351 398121276 184739420 745324940 679044522 177846311 285680120 809475736 728683162 19531252 203304793 940488495 59693640 984062234 317956621 425771944 278547351 710678628 40261730 530742779 908647585 928671336 332851324 267530928 536711030 193816023 975883551 925530792 239849989 167048778 338320870 382742374 393243328 60720068 485017903 882734495 826845081 617750000 16006385 67064333 630467875 916512131 453181780 432150919 575283333 541549433 464741508 273285092 711470121 675273799 113961975 348788367 57050467 233520464 821467081 307965334 498678926 658427131 634424236 211657552 655763820 874172669 418371452 829443004 944036529 786058666 529658113 155346547 473975759 61191990 153200127 972405232 833342521 140075474 294982693 465904386 685070485 82229551 384384168 69803471 687615549 27237878 901195572 5757649 335518985 152351118 763687688 808750233 231812972 937178356 228281498 621836000 303956004 376112375 185734709 71556452 304134852 617023369 582190151 232430862 849612867 909326904 576562387 468354426 527221220 263718536 827326076 781906831 645303829 70284821 986439308 326782854 167039021 870159065 816398833 494600751 448706972 355168997 698006672 494584084 320428673 945842344 998740434 270909779 133589896 302896644 741225614 381603791 278619118 121889509 838735151 838395592 323871710 406035118 682599675 32450840 804685004 769154610 303904035 957374841 909243472 816100921 433431256 771199611 527906155 537225687 300429698 733618138 319250074 310716780 931469361 141149617 768942952 63228819 949895679 439589841 981515936 208626268 620287785 969307012 160196501 224248858 452883509 874829468 40709133 505049568 312165240 323795429 479194276 487147359 30633318 470996284 529795946 495044885 333143163 492794520 240737733 186825531 901298694 638322923 542352365 534733447 758064615 222619596 107370504 223468563 117829075 163800231 807182709 452518671 601174129 466738833 331433215 123914701 247569057 170945808 438203470 711777886 132931143 477636361 960985497 113742560 656714775 847895709 747525707 490825682 893545672 447325124 647744269 951961127 78777738 207490627 351041744 802945145 888750499 21823684 757122832 968861325 948699081 961365252 127205608 454827860 843446908 81097885 554300956 460913641 469131607 187295687 459244810 84526667 282975878 508878272 790986831 5093316 980906720 787987696 273799193 620884374 298027080 612626653 665243109 219377696 45322060 451880442 303795199 376040445 315803761 417534828 917147869 260317466 856360672 930019597 620971696 214043774 993522469 967192270 507464185 669128331 840797773 980343354 216060415 281180104 544945775 536386222 970410810 435166807 917057832 53624418 811334752 667802847 911357245 77716876 40348489 352656880 618138578 989852897 631914125 396764427 787915536 728177427 302740393 62855289 806728649 974554388 987455041 501315034 214318589 857921676 833231208 504854098 580961946 472932808 843209392 285196975 502529302 511118008 494494457 400077026 744335194 420031961 904387939 30236312 298510959 745786981 445703852 583231969 411885244 908453015 346432188 481093333 911500092 450695219 707523244 773724467 930608246 405781579 304560376 874644051 270242857 862843843 734734904 690299807 22401630 421236187 677247980 454622886 397206411 325490903 965464770 344708242 686035266 335769417 663488990 870137509 454146823 390722282 501381622 84022186 193767129 800516538 297760932 744332239 551186778 571628419 350425263 31764694 495006613 886768477 151480934 258262760 910284598 30870092 304692060 854253078 952347232 594576246 444633667 60471021 193280459 716288846 16688704 104701618 107751762 942111963 38247050 802535613 157724117 664897686 541570964 818084567 39639346 664561510 410084376 398003693 301009207 167667936 920202158 689369672 995371742 136514443 51126187 802755727 997826686 223609370 759660555 899882126 941328610 976797339 954752781 782839261 440447103 29312107 637881976 127013384 892851116 258024192 536657858 857967214 361318075 143900890 35838565 584149010 484015713 611536750 93962514 173769660 505355590 97387469 389999328 109531192 115890811 111469962 148118977 891875482 787379605 678272417 783183460 428436450 175228599 596721937 798452727 97292223 408833020 956249345 737346208 722389002 817280568 554404328 35884400 663928031 764598482 937318526 158921607 658956757 330615721 156399658 201879686 283470416 244760508 561935532 862790534 338861067 255902653 707171810 546343734 973690024 536627296 853268592 98579226 427906492 883620594 256712628 444332237 366783538 162073954 578766098 987880844 302148170 199998028 830423286 336133905 819749906 384700410 781828281 657611190 545037027 312122267 740286788 286128641 682662686 169731707 240172614 302800192 68433020 519774128 870163380 32330491 825408448 798155761 696602299 827689366 702248098 404058378 491836097 839550906 97961122 245116913 909643022 497333553 130946508 838145962 154505619 766135613 308537999 760058819 858164545 454416284 328271863 692351314 366975418 115641381 238089063 128462008 510717514 399587921 591134840 562035708 898806390 411756835 663559977 469235834 141194396 365411555 223276779 31657419 226311393 778586549 37510031 815384988 149291882 202349780 578901959 539585592 938456849 706878947 452748443 448813334 136239716 943174794 541709315 974198894 390681523 554348712 198250210 769390690 161979221 514523928 716921078 784112999 956557196 604246016 850779482 298860317 818543587 451443282 706908038 880591708 883371346 808795003 940410944 219865597 582163161 339960213 157352670 187755851 392346045 878359538 420845776 190782050 52920921 712034090 23353683 153079932 309862716 509946311 116252394 124517847 579864652 321290622 878084764 167796700 669578348 244891577 453499472 643740628 971667713 503185827 549581273 916821542 543678167 352105941 853903292 766292478 507540602 417878170 226078785 933825455 770547015 49104376 772616524 584182148 271346811 185185656 863535397 571842310 782803726 305543610 360730813 617954739 794361398 579252064 371549472 874445449 805682807 760361548 778241156 485345359 438642177 71428510 653592819 609976951 411458122 14899233 721604301 238018587 768022574 839459289 334738010 753383125 272148700 31680673 725598108 109629379 71844160 910869524 721588725 651556317 170154425 988917349 852216631 804162249 870860035 526326213 95406656 981666604 672912088 216201577 438947010 984570924 911188979 429105677 977655058 383842812 350796849 678105602 549143819 337948225 849924231 261115921 882445282 979491322 433011799 800795293 206310949 914251526 895888556 782079632 925678042 520398467 495801684 82762593 779051836 502861258 839450625 402869681 497636414 983040849 679000266 680873067 362107998 467297042 455592749 418264196 725163538 368035804 3404790 312085860 870944509 448212063 572722203 808775015 306711077 201236 834780935 396855489 528690159 578885556 90808664 274557767 206266824 456662369 640967881 743793828 175564608 555382933 95241535 360991073 237238059 480338670 484021617 954254072 194812921 749758363 461393344 690208441 556319856 316107831 282737190 296210239 494196715 165514261 547805286 349613559 658609905 244637845 660546529 957901955 759438571 179447678 798824312 545949517 549624154 528501124 257501048 290619783 869452971 852260781 120878698 625642287 450529510 90113372 827312815 757052511 846570290 6334542 688673683 46199834 241156624 426613470 275191476 351631453 598601155 32678376 629977942 714073665 997766238 340742179 974599785 632080779 250849943 524724989 353634700 382673699 418909533 807436293 21558867 82973516 488982551 432583315 188379087 361297661 395577390 10829410 98803041 961097870 281431734 492524581 531533312 286907213 479421106 933494139 582218503 543897130 527048721 504217287 945460309 898431291 619186979 994329198 740460712 297620966 391081183 454436576 384304751 464388090 523910664 701506943 179743267 470911065 871263249 294456171 961049167 243681493 292947075 929332317 445658923 379300305 291144633 793598086 206054295 825152161 947015487 432788292 163495466 165935463 341110310 362824926 80168525 805908162 473241287 368635594 636897606 542754789 33579294 380264404 585587766 814230848 885001821 294056380 654061770 92609295 189075829 906036075 905373604 371244954 175264525 480332510 278818058 332532197 306402225 479611371 161232181 468407708 845095602 133878063 593028293 714469830 342204309 890318398 449244799 929884674 778712329 707909481 509463895 253791357 397399959 260947560 422427021 93260664 822278146 180852270 911008899 626332058 233331410 621537491 60922170 617500470 317025890 729277858 595638761 707799677 248826074 168080192 427991172 497031982 325660950 565585446 527940479 169338331 370059974 821354510 374951191 729394735 784218779 533135878 416383497 547385395 932533336 786805046 588736226 436889824 941189612 526888961 560655353 434469022 288394649 274150959 885864570 69650853 503688817 893117630 549564145 761158909 8458870 396198983 832214013 661971748 880866430 608684714 815513943 721560778 291332194 995509674 998512059 627338728 106602391 452122022 294607095 293054320 75880396 818176668 49425803 491681349 569360831 859776187 299671396 464658171 509443887 278966937 308874494 57079844 716393875 605451443 773665784 388373194 6781647 977692597 911961796 934199494 283908030 605758452 735216752 578147022 556260968 199366039 803771148 731515828 241298865 613870219 71631311 911645916 853412736 125165484 276498279 322342450 655623719 534915547 367298811 479897073 542749596 315375081 323427390 203201988 247638178 921783951 469836812 523314129 677900315 843850998 391191077 160136838 15113675 762286261 103851450 953378837 10622537 639566337 435929503 45296292 190085763 648122050 171306455 197777824 69986202 171406005 836680491 593159883 623438518 82425793 893498462 65306549 631272869 613435885 90059483 555363839 576293709 968855323 600507626 278425443 560215593 398857274 433215748 992196852 248601961 34095166 745291794 561594615 213904582 957383744 215847410 985698472 963922646 663784881 420941127 733765320 864601421 367936721 270236965 928817357 404494200 868694675 786184847 603431592 676721473 263291344 410097167 203279292 447449173 650020966 177487240 168759703 535556660 410465715 957719606 47570869 863966920 148646150 668239593 6078865 371019021 469815733 821194785 237449366 134649466 633327476 668780307 397861599 18972782 405069697 485346088 807403014 581431521 693475787 912765226 114387812 841579321 197359376 157410745 605873922 532400693 584760992 166747683 137134072 776823819 734048440 497795626 965081687 816426224 457388141 287381421 211682307 188362633 46511178 186072870 625357661 858743294 227869161 521218108 621597748 495461230 346689870 255011163 120414751 989054272 488535003 546070460 578712451 373716570 448482589 526795545 237924356 897419242 419957940 57038525 517033901 265558191 337727315 334747736 841852160 265524163 598689166 635106798 133563770 245218895 983612942 698342559 252464393 791171577 262773653 293968587 986388598 508889156 862185226 814295484 948317131 157586846 480006338 363766843 294887592 890292588 609990865 595221959 403465492 853994849 8907272 330892096 11009312 806393147 773712201 720103643 539054055 422562395 775848702 967989750 107437872 652196236 666691189 584963170 522924954 324969018 363616192 473133845 3486249 749776554 958353563 117663779 367152771 31551887 929224551 308379419 286041383 238356180 950025546 163481459 134071128 953470981 112278407 45020383 636349032 8462362 784869107 549455062 756163281 987884076 520677442 288592619 276084737 671853149 648463781 715085957 66163485 548751193 31109627 970702570 434781054 105359201 929632047 556577904 501056328 558294587 580927246 737808849 61603480 435231925 638196321 601461533 63112057 669280578 310977765 384146928 388452274 159073183 576063128 836733703 912637522 892401386 673970893 301422687 295441271 642829272 246513165 405540037 678399988 183935215 804356880 464286513 258523213 944220116 306956881 339716013 620562053 960836963 851633856 270932863 711039182 126718370 197455390 431227245 366406095 526098235 288950512 9245683 486211666 443161363 866087768 374539424 194994408 968354800 377771493 785762577 409656897 425784249 649917674 203050651 987860479 203929111 267775734 770762027 461763711 543475811 25078778 208605419 3210482 514458044 510558040 810311491 409466557 990043238 148046658 203097701 461241192 377720217 315229157 936855202 660300577 781040978 865509870 36813731 386326171 580316725 258467815 98567005 453102943 11646619 30295874 12930351 236245980 670934430 216520825 765766686 723873244 975754377 289702930 419736220 688975878 919877817 441811360 578008382 5760163 61001703 987537446 653802694 440154136 849998086 641138313 944653509 613315005 454413497 48302760 269075452 457882291 373109979 55447016 307931022 67809245 726564496 58724503 408754473 88290356 937735591 935402585 4391686 82294693 775631925 407141789 804494481 368405486 4029450 2363042 742672471 195066072 22729766 756021367 760641295 535405209 487324884 262809452 21975266 578538809 124906498 146972032 17251064 573888050 575003581 632893948 519229401 392185400 201472252 443101061 472414500 705670061 343674336 295508208 449340141 82010862 946942857 581935211 913635764 990930588 319431450 374755064 888069576 442637403 787215791 650687577 9446992 107936626 544176209 540775007 7706584 65762007 793826680 594344542 800461686 201784716 236421776 826131788 284311781 89046111 279626049 752450666 272102370 333657795 853764145 418075268 827638398 442159560 873915840 990716598 62097772 540222174 637339602 133923343 241500704 267747566 274043417 766178368 992272648 907436592 621836185 214587068 140761615 670961589 132645679 840374696 275104170 577317350 220979009 248851263 112787239 306457783 109314297 265533104 994778734 452731856 529099660 324617289 725615894 71165514 853519103 69806893 455435847 559603100 456125652 247285775 714463785 816887116 976309730 582251085 705960164 332810691 494951366 149702802 906453582 952924344 303413932 480513201 395041232 646928238 568292753 311584160 465586707 797589012 24166204 797872018 57110549 52721294 72556139 487533466 891800886 282872807 111986317 15540660 46963283 84244145 770374835 640855283 366193357 96328309 969559830 887121647 212670287 673370047 272667295 803754883 2672688 924062382 902757299 949038368 36117247 334604850 442244798 644475236 466982736 89072521 693009396 205650220 506684671 95831279 338816120 138384295 612406506 653943719 344840330 577427929 42067567 93968059 120510141 660071110 518104505 316712061 583203021 224319430 745206110 63005340 183044762 299918390 826064075 358716471 96986021 887821857 405136757 607007360 938123607 265870384 779449648 229828243 590560358 921596444 138098683 877802492 596123873 21554793 433411888 433829856 885632690 15372468 19773709 851386637 947704244 199561297 39034534 630240039 979635293 133117807 615894189 540037686 148089209 530643230 383910510 188770013 427053635 261737392 395182628 656399466 157200853 795879030 516494332 971308138 951591778 327435019 93783543 561004685 336163716 247767514 769682741 487065182 783752866 567221565 563020872 133939876 316297340 196382707 603614065 886229147 239267218 629465742 839556346 754031961 667473034 643064366 239902120 385203601 173847495 976246396 741299651 222723074 319188260 347822103 166232912 271930631 637635876 526616629 384913350 67600237 576768045 250157930 694674286 387534084 24766565 730057733 688916040 815198742 96615999 821224713 91794523 457314038 299722796 581344344 195944245 595140338 564345140 428137420 247977298 750854284 746196743 916081409 51811869 465471777 489159081 587913511 433391150 634282129 397518497 207340038 374513719 155318929 525074461 186425294 239840674 560313521 281045547 385676975 452991469 117787163 895999991 582069579 251435595 172526075 799671431 386287419 435488025 977788412 499713674 755701401 50999468 260886207 466830520 75571743 222680899 494220973 556779380 642923557 488037573 735734054 169845600 439444240 27697310 373989160 286406835 860738777 899149989 702558009 238942387 623062119 294417935 257197758 212886548 203336424 110853611 231911884 105979997 771311849 145605555 315523765 53963920 130222573 111046572 220749659 28630679 820928951 530098012 464177159 178526684 920717160 735690126 75438040 89770929 508446531 892800124 487615098 594284781 284867902 418117479 904988858 315998234 568316572 268250305 240226635 16878105 516213938 708021823 966544516 351714117 714767544 223869554 572241793 618757668 534705833 540891571 879416335 968392856 436728703 539566860 97886024 997244165 793455499 512602335 43084045 776970881 39593538 4831817 880203778 174943759 603993285 617511773 880941953 142821797 148678181 436811535 267604526 909054050 538983808 106067331 410254411 842339307 348156955 277168429 550854429 671890335 918855705 653309810 689178616 372600841 874245692 514277122 833656684 172682948 60324407 879305118 808719043 497655732 504876790 596055656 126845703 531603625 393912677 150720475 931333899 633951937 296509334 28267790 840398158 504654280 401803172 841810972 444965418 429376904 347545902 212139459 759557676 48945537 15076494 172771050 970747761 286877469 731800339 939332500 725307041 783938753 566205152 465236729 284834277 539705274 398461915 63129991 849472532 7762794 23741843 486550589 447633331 798571365 770747253 28383400 945574952 631277155 380801196 521386513 131805629 172702721 745860033 65532044 679371786 831532261 389140294 5913266 124097222 464566837 153856023 817509168 152459529 161176015 627888490 925105859 113420927 115753123 301431953 750245208 912872672 628365098 194756544 521077918 386116383 890914083 849730080 217671561 963613386 560065938 568808028 781412218 360415445 922276876 110354628 449037329 244706509 793338533 861461005 136122218 289147945 459222620 763205703 686913855 563307006 719216029 607936722 300018131 700811593 866236866 587965758 280360487 214845292 257507972 952607289 342982042 792637276 494939421 119165569 650114130 696945925 332732949 965314352 637898835 714894448 514123860 625915858 253257885 148363965 768914702 216771870 810085268 471846485 383024701 426850254 117169269 699042768 940525191 83426364 168564461 889652241 271681676 852123453 724734068 282927891 135337351 261960542 526439424 674819508 226692946 64360790 415646317 167045748 616215926 585888908 558195000 659742950 93028692 828603437 441418445 247630717 953228957 869277987 354642903 954075948 974551201 553797888 673022026 374728328 496543334 135595398 106278926 653406203 978494066 848319410 605589307 248268773 454914220 277281517 631169544 414613369 490135569 458958614 195496258 642780399 691228668 693901829 450138180 908935447 504876435 786165403 368237569 861929612 43466654 501040747 284179690 51608866 559010648 229777882 559209678 884778651 461118464 766137434 48431976 232119729 273948883 840867217 556567302 143243738 980041359 734762874 463296002 88687427 569972453 891903109 594590897 814674259 67984233 7408500 976619424 302865481 269877750 642122510 426404828 172961548 915078954 91957051 746941878 174126408 440572681 337659044 368336858 61688779 105198085 247011826 799253865 823033786 159677991 316162714 224422637 518469452 64483078 793488 588976254 838697130 440715194 202016195 526790243 194316395 845911921 48701907 635748420 351491179 15275293 967313192 437656136 472007180 111458976 652051259 461010282 533632680 662865568 146399147 779321753 880232425 954312382 381335401 756643962 888103718 596174413 293971814 179259038 257297355 499453001 682918400 2782745 36922500 503184025 811990447 24480742 399257754 818516257 530421185 62869612 816193924 869596296 537132842 589886769 869502787 659905430 752295820 980118031 809377683 718568342 574238562 85264631 261296649 238881097 749129328 195273579 757770116 993614845 517286669 928624799 587365226 954144001 419893593 155220416 43540933 772109168 217640963 664607113 837496684 864358270 962230118 501583288 761930518 117146796 334955225 866285221 633178269 396408823 450300731 901877402 269193137 298145412 932414745 124436117 863774726 657684379 7155617 195200987 673467059 582734161 675422010 430138598 98798560 243863876 133400820 830381113 580257176 440170878 182841193 366460821 889474422 850024617 737362713 691798051 489271526 860157190 751972238 582164645 349335129 991182302 550543112 736676485 693028891 756327199 381937769 884916802 678140859 979958147 920084823 266250477 922379414 17473741 739377864 977513191 636055948 992806368 775549755 493133444 639856075 809228411 783522708 867242295 619109944 830494490 114416713 265263898 349471844 690401104 966678611 995922144 848695775 351749655 437595179 519808620 13755123 347756808 656272257 121895075 663853205 589218695 240615954 565807502 804867603 448403195 254606742 92847380 522712124 131360237 10343638 21535948 515670833 267374496 959160081 272447171 682894623 407640408 744794454 247152953 2353699 405803097 615190846 135055140 891368336 299719691 575038722 674268392 661480698 545243012 226808083 884712783 768355144 722160994 255637527 585540897 254782346 520823342 336009946 389922711 193854875 254922172 664573657 714136236 208474537 866437608 186350978 332678347 241492072 425192890 33857001 883400875 111792150 952435029 877482865 138791384 622299461 751221072 978223255 382475113 124420298 321151218 332172965 648030495 765289930 636500840 904664987 658426158 749358414 301462141 977750096 647091729 856447099 483903311 638607262 179309666 659897534 69999670 123310335 723533864 445669309 584719224 355441423 339075279 528665810 669097634 526438366 483200310 630192516 964898571 390930384 819217809 730658660 508646656 761778921 434171804 881329948 58176491 863401914 732299663 521288733 246647022 715363440 705937363 388112647 716564067 80154656 488829169 627781909 647487983 360690392 89463087 903782759 387189705 13694415 404219176 234322173 827774251 679644588 918299098 587605478 459010095 630363831 89116595 851514765 912796681 967817413 298545405 689831799 136350078 964467767 122377166 913720865 169532167 199420006 215539541 359706381 295142157 786952259 588362946 791920455 957396090 729306080 416173433 489801607 176012233 393469275 66597731 705566324 858508743 488245039 116737240 686448980 93115257 418648851 774061002 508497766 90381675 999394909 504728812 458423732 385871352 849194038 33807562 934576433 204568290 271109533 434670696 849393200 786615827 371109591 660789602 635480956 766823437 482023964 76582734 227238201 852990190 207965463 551918312 49899369 294988143 24801678 628343389 120007456 263580883 620302979 734017788 752648474 354313104 581480616 443715523 733815065 889851101 288137520 424292045 183535378 37413114 755900344 209751044 383796780 326791117 213738016 291911369 397667165 996884955 822176876 975542357 877328725 663116599 823490476 301272117 174609070 548273699 59756923 114970075 535361339 561491735 573458692 629274536 310364439 740842210 326882384 434955504 547737634 582892207 437420138 183633962 253197051 725582108 723954951 465947987 356793774 2627929 378975135 302311550 829987897 328121895 415167309 384779734 455078563 54442252 984476491 45862490 155988796 405809336 714262244 686467997 780652545 219833549 774351823 134544682 544544148 111935027 452014890 951096959 941906151 234818795 455546870 335915947 612430828 517684890 806510267 617159269 430017848 437026008 779883446 722592979 256923615 165922842 89808687 262812935 277201124 681164542 857046370 427945313 202483223 8818212 818318898 390197123 641717637 218579192 965802749 916650988 638293342 740979124 705953574 76735165 985123202 299838646 571853194 667212266 20627876 260132720 341087749 683112465 992670269 278221579 587337503 585071720 543401280 410450078 474357368 37879973 418380659 304611190 343932261 806093263 216998687 268297496 3631475 805569525 224590238 315098317 520382337 410574333 689964449 285025580 764167176 841976741 851402851 39349075 516207065 191728586 963381708 750774881 191392395 912971199 251919080 586950039 7557659 134322003 472132044 943141420 549870686 934990257 130123112 991098705 238713613 292374337 418057723 587678 932700950 895289513 45818652 911130135 600912690 452582335 349663731 614548627 76930083 241069071 108372122 727681872 874343304 103869468 578893541 398650795 911251627 272602625 805376054 606862770 954049025 636181146 44303543 900942662 943708231 825145888 189042067 411237974 909011012 28582008 250560886 610284489 509431533 407470659 754226910 247353849 474148296 950469030 696242942 700568188 844007571 2655382 812064920 266334304 507136043 599249517 487985343 161297629 239195678 914562081 210747050 484089348 462962452 81750911 823513125 771369849 710712140 158716786 522511471 950492343 964622653 105068998 904981583 22753556 618003177 806335376 161671965 613607284 860280405 79969 939076909 801158979 74910549 152508153 145091314 830309209 657808426 833750293 979836971 429066012 320131528 598214518 691647789 307994273 276459162 144618707 16044874 224811634 135289519 796719667 353113317 280397445 277022517 354054930 942278676 519236492 407279011 743344110 838046381 198600446 294832684 26959711 774796911 415496079 862088879 701922974 709022341 544438904 595069243 290986253 772794650 555858599 633790876 722591740 430704912 10708940 496303434 103358108 854580109 177194354 547409578 925669124 66433444 130261650 652716808 603678988 776041745 766504421 472565300 573534494 406065909 345278581 481671428 138413615 353209215 484604126 467565078 679054844 923289060 509315683 903779971 280622279 828894879 632813738 179156298 848419254 496771302 764429165 151279465 993034651 109250853 301237480 701979021 461629533 370280135 587506434 844181920 607980748 590717605 63146856 929507889 924646170 739981339 950246723 612689280 966603035 244021724 420353400 553129063 483722400 11701968 248962597 301597005 959921338 335689281 621897592 532058195 375436474 541754467 34285017 396782648 447196284 547732715 665995030 615288073 954320670 38925897 551551025 454398974 457100729 10441187 530628054 913980497 771242055 581337015 380726157 174573363 950832343 778553362 131051136 946702768 648878014 254514997 292668736 767877918 664161264 689019028 555933794 952271866 446638244 508106115 707802302 180895175 419618189 820498377 53054300 794978945 232840131 655176780 145742980 993323446 162691511 465822261 840119388 538171199 542731362 462845472 869595765 888130869 394284360 928711447 346322739 453937336 181409547 315373676 47751881 499280171 987970741 701854689 544596664 228571665 985113303 956789432 142842165 802834203 476661479 323257058 132327360 629085883 974834846 507277165 640423469 252445728 743499669 13063566 668770971 38547788 622080198 729498279 516158594 687521545 904459603 419504403 502809918 537356265 362713585 803100474 50825957 55943770 286328081 657783768 338764846 987833788 975836130 743493756 322722632 907098252 861921415 524484174 358633529 102965183 565457935 799575079 984535409 762927082 779838417 582530144 955134082 503756342 59642712 907714982 268327133 382576318 361503674 794903496 19155878 830173522 164320969 307129744 283831251 718869100 872548511 224409834 78846091 617789190 811309333 47551528 390002373 526737777 287831788 140767161 804369197 195840805 907764467 100530607 748291095 963359199 651215407 694072209 726419697 306256341 609318843 191236527 261896081 476748380 237411661 118663296 994478829 184501217 831476443 68572770 555839935 796475971 398534225 375017743 357855505 787983969 848828569 192270743 610556888 493474018 793456488 547665908 142101576 638592941 536441712 781047197 43469426 33120739 284441967 243153325 74229172 437661993 829131328 267181051 273402739 816867303 270828648 134320730 154141348 26865344 872263993 799337052 603865345 812140138 217304430 990768530 726531768 620376624 733157537 905046038 80216427 857266647 320534610 456528427 232482415 821914598 131630240 662419599 412419677 17560934 184873558 82355845 664200750 46107789 939856636 647620226 987604648 440384933 389011458 310537526 377022638 412229853 422339191 736500772 290945135 805358351 146253405 974575772 388758454 932243297 144370622 570778189 790972497 75423282 12594760 94179606 399461497 907084355 411531304 258568252 356894049 183789246 866107132 46170955 178951605 262156857 801412162 815908663 679621895 587491172 683656218 530871319 701457552 543535134 112599852 789489248 354570397 39298354 505775724 987394670 438628386 26483465 286962590 673812421 904535185 672451414 881538602 464747126 150442406 4305999 753257295 973652174 118111960 649714957 226669225 738291402 864927173 198276192 248363489 102059649 874417826 617007332 529986846 452545978 54358824 542692373 736910308 68184065 155010181 286223002 390734795 108933984 904623483 574049948 258731548 789947485 782431456 278944280 633790897 131823703 118107651 755881495 389239130 491902967 326672574 109420320 670754896 958703605 719980276 574732865 377896996 278904721 481090999 382229203 809214728 103262997 254240615 306200041 351184860 207426995 962884189 715298598 284270576 963886311 48797235 559412724 821606151 481107407 3835034 272119185 819405884 997115696 337478088 13598270 10887005 599897739 912935155 368121334 537250629 570741275 149693810 751619821 403485739 585019254 440030371 988998834 728705326 558480225 971799629 710796617 227077934 704731757 154749419 632553136 373740132 461108676 406616957 334415585 134976825 523132216 852025437 486363692 154756774 885716127 981101486 676747418 669400276 521844153 627939958 462406295 539486120 658162111 481160031 387201353 532179347 463396586 653516007 763207261 599061813 619901455 323305843 194178741 305727329 252977123 622646823 508227742 722149935 443314188 485920823 72968299 397946127 212516349 250807843 452646898 498711163 566646520 410963113 450385970 713027539 188051332 166009604 969128154 599212269 600542882 84643781 775789615 980657630 492011000 232130308 572339837 343276658 887157206 926341790 28828785 487554518 408635110 957012865 509641337 352217222 302836958 15146859 780620200 423832995 90024028 951639937 407965266 905134321 710192894 200965326 823968175 492836715 754805786 124921257 47245864 978532575 614915859 471282973 108336846 577839530 666796766 700802205 607092882 927900539 187501866 193649624 141455817 473827438 332564750 811038051 649849053 578849902 263238169 146184187 808518617 867948975 136676654 341670444 726854285 797061814 424140064 97445781 12635837 79940828 889283049 52038414 956019746 454246463 955217021 703178226 560690306 384292302 561341714 250163046 210250252 259886440 597193991 387490453 645211551 521167497 199402985 80543783 660866921 996911520 922115255 605245376 164899656 134491595 617367547 30710988 436715530 958931557 648075041 970106940 601986842 524667383 763945946 513516619 71708371 255417109 641550401 518823901 173629529 278184698 799959700 338308230 900158605 148177978 16900895 393955764 148263451 912301129 228384604 300754827 212101485 937374827 979676667 764797574 316581304 182753691 355257517 244991839 243252949 266749851 249820015 42164983 896680907 851855672 34463022 241130358 842254608 495510844 925236085 869335155 846713999 549006152 252552826 794760773 280548087 339861544 669537327 863871587 236281119 810643619 941517471 747954378 800081183 359031218 397603980 789411703 496099501 710611617 883066505 102796741 974652455 587774243 771603123 498510310 477317388 770364431 382562132 171164030 27558597 476082944 191397890 797488324 684325962 905829324 857886504 550828447 199000757 232156669 880288198 968857443 151281335 877223683 848540856 63303254 528370674 349656105 398151274 308763054 421525531 143387660 554436554 26372942 357789320 355474696 14763471 647995502 777947555 119278236 179924852 774619910 899505465 817870621 464167992 662883996 990240420 136956089 348604941 399139974 156716538 985523613 988090417 848974881 805587024 130671700 184421475 454945752 160469513 200240299 18139031 874410218 940633386 881486808 528472199 93994567 585485903 620051807 724479486 478141694 604288267 526153090 348971766 135796397 983192662 105741782 887655548 487246028 807270884 313074799 256451466 395452629 212404136 346392190 363622095 892766033 766777665 264266171 261808840 651991042 367584673 175696699 560435229 815176387 646398579 89804476 151016584 996628096 164275227 261469253 286861156 488330414 811597293 882454408 663264266 125540240 445155757 905247681 669431324 82849790 571127675 957510053 731884235 459801860 538155573 603668998 908579589 713656297 176662729 85351624 313406983 63154716 988903711 383824189 148492841 490452610 580995650 908855384 867546700 927961111 54975264 554298762 936879789 224317706 297612811 347080488 331353718 825404237 556711594 416332641 771539900 807413029 570159240 893848657 84855923 593098734 753767393 657360822 423208194 973979546 956093978 251296882 969405000 635688338 728099445 516036896 34444456 807241741 606111210 869543307 929798128 456752875 339385428 660463390 830758520 596075623 278831027 751026746 941240158 976373072 913115991 988377313 825914165 482263858 10702450 260765311 215833097 23767764 86770237 937121022 174009924 335179519 347065541 423278766 413693305 22143791 569672612 140632653 209857784 519936060 627886657 629714806 454586316 45844881 238034079 626903713 904537485 892998359 932696105 179051788 102647537 650238525 378711547 406436280 246414336 180863164 51654014 624500214 416139251 445720984 951464531 776990957 839647745 376051161 266744783 534524730 894995804 612010603 575505924 552359953 486031611 751053341 484728002 867858840 824284914 439476883 310094667 311981847 843621632 926908195 213875393 151928542 508054650 393994321 954959172 674903237 367062336 676897926 817137757 924782091 735884705 108220089 842201812 263590070 388322498 507808617 579105811 881105094 537858734 716912654 168622087 396432193 323421727 757069405 766678774 837438202 15557518 66919949 414778526 712428186 775775607 25824859 463776085 431147510 229137503 548903584 969458 8364378 862788611 572221469 609142989 911244234 462781115 783509662 584348212 172029525 535228679 274012 726748786 906592432 307526397 137944361 489189126 122106939 677984144 610329359 364795881 39312175 868299610 669931913 27397774 56971057 908057463 116376112 933617015 299096553 436320448 244009581 624237599 400527517 178340473 214353976 766147772 74613684 418491665 743681324 557480126 540090463 450426479 26783953 777122342 515746272 690217658 235140505 810456465 873874123 82440159 586419062 391612919 153085831 581935068 622144816 949571448 80410200 395605345 697882507 819817841 845981002 639927217 892830817 843796768 281226925 447033480 717757012 86118607 958667197 63280566 915540756 701466809 715155549 902169290 625586424 690349285 43139034 548088777 99676919 674396125 659534965 615291729 114245224 198867852 126754362 187881060 964323718 89660085 151080194 4335296 773049945 144064703 130631356 203898659 545559356 12735751 453734089 229615789 578176509 43935658 165877295 115879149 800932996 147191841 426137740 537297654 614777328 334463837 47584090 819745872 43650076 236279865 619706148 249360582 764589653 579533812 15521015 551214936 862695745 456188052 705070068 945928659 364868503 528986705 421198865 55188975 904255003 534765555 828140671 105845321 932674294 284219487 998107790 99799310 774886886 694219999 902028637 710044473 453617821 506191781 771895489 421223053 936141953 485076118 57428504 798587560 879394638 244935563 911916773 719944037 620873243 919613765 446800944 716730071 949893616 281349026 811996620 51225677 229867321 977703044 605765303 774705539 969382574 567468281 570794337 585251070 314932207 275500355 801972617 690492746 890314164 645772063 956431221 427026701 777560721 619229637 975758414 332555888 865896015 369804437 828118905 496943860 770057173 316596533 903256139 436062247 772011810 666154236 401162371 931388948 203247523 655063094 375060368 590969980 287030869 809616558 665224263 227145093 218303638 948395370 599094692 653033540 185497194 868895017 308722859 959818315 497925916 75997709 3330146 764516322 773192450 208900438 341149396 517184112 865462110 396051613 684462506 734824578 22936308 500147609 711985439 145128850 966778716 981540255 374400405 555538052 523209130 464877514 79662942 657628370 695471792 552989342 612221375 588670754 787884232 859754620 24622070 341889889 705284429 500914082 744549645 879192145 369513267 322980535 779292415 431610762 21290963 21742754 161156148 808567572 203060806 682667773 146475720 313775569 84091472 923912785 449142714 707008118 271673857 755983433 746316165 872369312 163188278 928943635 709617991 536791986 62913338 884958396 909581403 656685316 898277840 961662015 582781667 538207190 583070737 575707980 272961753 426321476 387676616 433952923 152687726 837154765 209278259 873266263 237767305 87147955 845478740 589678748 834400095 763089814 663226055 13020083 522802830 787031966 827192579 235405602 114024802 866426304 389939387 620389272 793524347 815886662 735413942 533710684 710023818 263536949 917889100 682001965 597679799 673266668 677240037 92031417 771437168 985621486 516839608 292296879 508438651 341567459 732130094 372662379 149351972 525572991 154009890 610685842 606859580 540575330 948431960 43136928 430588333 487443475 269561870 489687472 831887321 361767698 21855162 309752506 740417277 100085489 452064763 855306092 366228263 368818271 8811768 444048440 517307077 876590983 679058634 409280140 353764107 751058837 11257314 655743467 340388642 425933271 597781308 883653065 931783162 124612661 232572151 146635667 224153248 50385218 146470865 927847133 313403052 953390788 316838403 169136580 293223475 584456706 540625111 274931654 443383346 256992487 1544680 74032971 775492077 756117889 570877226 370299450 606551815 969154163 654201306 576812535 963251596 579782654 892179991 377489283 535748896 70511939 689522129 696488009 117634826 516362476 323680689 403426908 662114426 497510027 301676793 184793290 320571268 25877717 712155472 700853384 799461771 918767564 680948052 174479153 817515440 514613405 881472902 717402932 684514091 493256838 982891725 249525271 173926447 441777076 262118832 765431586 66933161 154213545 730315119 956511504 808401987 844483214 204031137 493239917 945281565 160323623 269606554 158133953 674328757 186871677 153046818 926091115 446923312 734212802 802645209 596617087 652141136 772196923 908204616 896749755 447310662 309980979 801366750 367741424 81988120 990151250 824345107 450499940 424603147 907960784 799380179 254041045 819827734 783711277 490169695 515381903 639870162 795103590 726059429 338035102 682688866 744474841 974740786 606413933 72322606 88675922 32970063 206207128 344166127 660668445 560680369 712613081 184857112 922084518 491728923 590651048 297893735 520918960 48786788 108473065 830753124 249481284 853263814 713124004 960917387 612854697 43255855 427892074 549020814 676367887 2557378 192228233 841251882 123419596 892908518 709526623 183596079 645025601 266434345 914707559 818571045 854158807 810942844 532391709 902970437 951619363 206199421 741006331 575146691 766923600 612229040 898666970 625837994 519055248 258861582 255423633 406396452 655421018 634786193 295628467 407945706 305351179 133059234 310922582 447285642 119399050 321295406 166450546 409363163 296163817 699308583 239975353 753594542 798714744 941702859 967608312 764293951 509186959 153902190 771817209 731196225 827686889 206049552 719041066 12610098 446587273 14740611 383211620 11818982 629470803 382126624 236947769 793531878 482505012 734146043 11394688 914140020 236430251 263455337 988782209 480440504 665904226 31031447 336709324 118249543 293904766 890148426 768789950 427911753 527219820 171143902 810124089 96984228 11835729 763821045 979390621 268354190 449307205 381759499 4453521 625167766 704778886 824619540 149311886 423831788 963250090 564389743 795093472 300140657 435572030 793003755 462332081 764636426 310438238 915445945 651512836 783389684 774807718 619490912 222832530 974939692 957773331 851977383 743058485 219550459 135373291 389850847 421788082 649064037 363430853 758001844 726545594 605770419 476433330 792147768 862530123 784739021 148500965 27418474 678916773 221289947 173377751 630424287 452115225 115627608 241806653 305718465 260562465 514731680 925381406 807905890 164173038 956865971 616057533 196362150 382611166 343252533 716670217 669353318 959005222 585747428 474083118 548371624 400554148 581337634 748850898 253121547 97922885 678677583 777925598 553760279 241363285 697688095 971075306 360808308 904580318 460641508 804878554 615884105 898225497 438339515 225507318 871882618 690224 270912925 22930494 993632933 986702983 561510901 664876440 986673722 799587913 797839390 358569088 711808598 524642897 704123959 401068417 101330165 257893303 683581793 809076393 61010123 821961439 777159313 481931833 442549670 765877012 44434985 774922330 266956998 241126065 428927474 600872022 468599222 417144783 181769429 958204326 923633859 142827098 318133589 199400047 337025360 23806125 384322563 568730322 276788121 402440111 216052129 287551863 358820377 549101713 820975528 75569180 901291617 408275806 244473025 240089227 263910851 759409076 634682444 262762690 441003511 746992680 420263584 509835155 534796656 231334229 768921431 701741606 772583567 911631881 964870745 950531887 878746206 754408108 28801549 137716464 194651202 736080307 73604375 101716476 81467608 925499927 325442835 943390655 181107767 465940910 324504446 451669022 706013772 104441663 162798992 88261620 458597088 782663580 414002603 510795313 289630404 556108019 622601252 933470289 420555846 542963166 433734268 821465896 544149400 666746934 417871833 390789856 524593540 991044226 830958748 70236081 944798381 925700397 231107811 37416129 366567370 395661199 561727751 207240695 644630001 769098105 709445585 30504659 513335914 410749861 865081663 869309107 688597031 466276920 613821760 262976034 787483954 343958550 904583816 24478501 283476863 988292608 478713522 909805288 293905603 29262857 631263013 751666156 899781145 430211658 638600073 885354820 661412801 400467731 816531875 883082247 35953525 749365865 650201194 144057327 730197693 567803541 306623932 838693094 79948328 694133110 942348110 132498993 256968624 445733174 493522130 240881746 22076791 354715298 863115012 83247074 481054868 302286316 369811885 864133396 947342724 790659461 58186860 679526492 44725690 968252393 409741256 863554604 436450337 396204740 342118388 959983483 664820856 493941273 694703062 761833931 752627343 664313257 179634426 97216598 33303841 241757890 694163050 197329548 452827241 248985291 520847051 96404799 378015229 288937004 230422202 665443592 156061809 729634719 787100928 763329398 802609192 893137135 985164937 480173723 219875249 690488611 234188317 13498703 59169561 470898663 949836014 12805135 518179848 726261514 965945319 709859403 713968641 888671664 970211651 690775680 179227023 713590308 975160902 188616445 254361893 992556741 733084410 721134082 174245724 897222098 607034285 69627982 640426805 501147314 90019841 905277030 883107497 908441276 969206374 916205223 16280164 797377644 5898453 158484019 658144034 589793433 933494360 244089172 876056170 622362391 401712960 213749440 781554223 994380622 612870481 488616277 231718952 827462769 950945008 309558987 852738208 539763341 62246252 210345643 734261894 904905082 753422739 61115404 799199689 301918302 387580697 831693500 656805673 533250060 278100586 49828595 483469718 186034150 780281730 683703016 527144156 713998814 780496477 856468568 489231898 774823388 184001713 388702483 341136243 376996890 582571383 74585777 809145998 377345299 296500019 189089205 539568115 46494162 780020630 179016818 334523030 113263406 656203365 740891988 437623259 268620064 924005167 288327158 768475626 889060280 74661770 468599210 802953985 845823199 918200750 207712818 644353740 130800519 196024395 239998651 409616831 502814114 488082606 277593721 928576110 612881660 831132277 377397879 884299870 52392940 578872618 267727480 757860748 968764821 93350342 226037634 87260860 747287534 390233373 727122837 133985922 966248126 268503316 858780343 931642158 72073439 325440104 184097667 603424840 301766516 783241254 648513132 450003217 577484377 49651020 123933777 114626529 793078753 199458699 744638427 667008863 232764975 93585329 324772966 552109695 408700148 376310639 536234884 892635926 859856654 82586645 71119081 23691487 630983253 411241853 329479937 273871379 719129324 21763899 857615020 877591588 594796531 565828687 402746625 195528124 236283042 202443106 379611431 445855786 101653497 304312951 992477190 584340549 793248258 189252172 137339266 726783126 231948161 961683006 661465601 213204838 496187134 651835233 875336593 962163752 366594754 268303241 459501198 673999432 53612471 772214458 870134118 467949239 93920375 304434696 830556487 513100530 568462997 415088767 570132048 96313601 349537349 886697826 697039716 94183240 751431066 921008429 615567671 489422417 103948599 131542122 927879025 76944553 86288956 990882101 889940013 510360537 298450744 592235317 49439755 343345039 730228959 231864593 236275876 204332008 737823080 391244603 511945817 8102058 369315668 593094975 593993588 114252704 272510859 783601595 879642488 786450538 642182858 427139350 352811324 960092662 536780648 288302235 732710962 349374512 168706709 914452318 257232621 439296814 705955702 461008127 832846630 629559544 574743467 656720246 146801969 236839639 277277865 543731047 769982859 676721519 676482942 607248887 570728508 611479246 480813561 36329100 611674885 145761032 836899555 245908478 304268856 386656180 537404275 79374489 792317946 849308522 940684367 926497289 656237786 61880619 846169100 679811892 338181369 606075675 504254899 302635900 848880951 73508599 704522464 824164973 462899522 28508550 528123496 780504445 980284008 762624223 562016806 990336147 684215756 73091899 653058416 700514244 744472758 781097052 662452899 355711924 23169741 60237095 708520302 443955238 132748793 446502885 361567613 171610280 833452908 743182205 565601744 957727041 510332793 980902107 397253305 454575918 885860458 681167519 580338140 926011926 611002870 520966863 691946800 74024847 1931492 582653634 255226385 934171362 290332973 889985521 217341430 572399862 310699124 891671398 237128091 482247433 543156168 255064702 570116612 698746680 713739884 360173465 354218117 639891398 525199017 750128353 189057094 269699015 62049951 899483206 501602167 560396610 315063797 302210436 386204969 390894072 429634658 966101049 413616618 586223346 820270300 471256038 204590208 682749022 918897022 305465335 781576208 279417370 712697058 325615900 516954984 211667846 24751917 351105572 129522253 239728663 613982691 909260362 777776388 932722722 625781756 775975360 978494520 738681739 31072140 57591254 525261250 949346164 636056695 820210159 268123638 71457890 702660072 695871341 210978553 831613705 959158562 63757701 485036675 885498382 461072640 930892927 976655996 578396978 607239735 582898300 600214939 839172400 8986528 502223362 850116793 821430209 420865235 33547951 657791070 952961798 882187580 846911026 40040109 888792217 679385028 152277747 596644652 881246469 332248325 812016924 174904556 72514550 980335424 322588855 491701975 426778320 845224194 150337920 584479312 431370971 213226316 736336784 494799112 921866532 188265370 376386828 568249624 776986890 517691005 974816968 55185285 964728813 120962224 886062453 426156139 466638575 377405982 947161166 207004694 265843690 970216240 613903753 771959221 239937665 578483961 52429348 725100156 460821911 824145841 374605437 335856215 877819506 259536893 837957549 910517327 905549175 457495909 956890674 228423190 753564520 531867099 704320179 759975162 994177305 415564172 793581563 568279268 230515568 977863178 444296280 353401584 379980220 740633701 178658324 517128895 561434472 18811880 707442479 317953265 759667784 58129107 495806685 231805967 400057478 463910359 245828124 671442678 912399532 415352949 770628354 759089444 610457462 738707036 707558850 172266894 454443586 495558619 637488194 762986321 769979241 63658289 445137777 816779519 363008022 241925498 368790471 983588421 285752764 897308257 492758870 169460244 402563541 254270220 384390823 121014029 434110347 552298147 341060701 268908951 271247921 613494700 924609603 544826348 893602031 425270028 178887463 407404076 426136184 969832643 615139833 404567614 551834462 39271011 917264063 219404506 551751816 202169498 288078702 879701500 533631295 801675496 82983 580901169 469216129 661671505 291614100 976611576 139856325 587623192 905449315 693695665 604840059 426619693 663672646 295516765 418295737 103515806 137172676 882807699 51704526 562118545 208277772 92015982 732238001 970835509 615339827 100139568 889854737 425882526 460579584 996037547 477634064 749933797 55173813 208606852 71233436 185413621 641702322 905094732 337900817 88646694 17000747 663887006 756767672 42280586 646510077 20941887 461614163 935776710 473941729 145959060 938667438 408997506 428215090 291459904 757300396 211293212 366433017 691489895 216488189 641540226 867289336 230493536 928530856 473855484 620591993 574380919 400457334 532353743 401537607 764710891 128415651 879842847 512030334 165197364 961648087 550141308 329590100 571487882 69766738 220782142 339544230 315821579 284287586 603572473 488948465 598685031 776536809 196306236 100998203 155202380 780889379 658395452 881741127 867000142 735494850 353220846 283331405 618770150 947052961 157685779 471632107 55200773 751049028 792970473 18125643 762991273 318268512 855202059 951587332 521880646 656175382 534042641 209795666 418186623 672263753 738581999 622853583 916287219 92116995 253789729 106423508 444320833 789571969 933439278 732861833 164159305 620079884 641007202 149097501 811705513 558807933 558850250 964637988 612577521 636838497 89838457 687698128 17209631 177456237 363603883 184118335 757104525 913764603 290259232 369741955 159345421 229341188 625074137 208588469 246458558 252500695 868091764 932954669 144489306 608554313 714589418 454826003 565161588 25841306 3751101 301157899 45542811 984388131 74788527 808786401 619716944 997554704 155531191 705769748 775345938 358460187 641849567 584881773 754312646 317589942 83681939 764681945 758401431 906763139 161129636 19219054 496772615 2135500 868154934 905865117 230260934 194900662 585148187 552922586 401545241 838988866 475693895 705555485 305523930 357194707 230603641 648961034 360975897 820856222 729590343 973665667 64094874 335976907 417003410 146931388 632939788 798332788 662737834 426543411 902910600 355617715 713972585 705131651 388466973 938916755 726895087 640212515 234297094 47228840 790050218 662522338 564509681 527012315 720318356 485269253 741177758 101018972 698006375 496121322 739936351 532968288 970066382 41771648 315141595 227858013 591473307 462650872 238275037 657205656 193637137 403921104 60781216 740242021 244542939 166089592 109461361 917682673 242607499 223296054 541650218 249241191 864009951 318313832 212972396 537689318 500077830 340314697 368029949 727168084 998063567 371054962 979007557 36217895 346670257 393154188 746332856 687204836 387686435 83032255 640001 368806822 819726983 531972864 82937164 889571290 132331103 292979625 983350992 648012342 782855764 827701211 756148077 295058700 795757182 335441182 486777213 605541564 659693794 321497158 317443579 540340132 480401226 914171697 835219695 416433390 564152953 239308635 793769084 134670602 972461372 993627585 390202926 638102030 64804929 88073971 763170306 727839157 873059673 707787326 657119362 462677852 691663425 941941503 855131759 656905374 600965045 732130495 911817660 488724122 292203496 275814617 811788597 58878006 113228624 861436031 879605470 709080782 372692348 938103739 640970086 145599107 906435340 609029918 160455702 199961090 281665801 559331257 795234007 331720806 823394437 294275085 431713427 382870170 647252276 412017833 558317505 705427076 752266677 357714004 963987527 807351412 766884913 403350567 594860493 354001254 676980090 936966028 291603300 203740238 803274401 412122213 277793230 82776978 73306126 14970127 260966703 304857790 127581957 326306017 968994345 561570262 540680093 167052010 263377666 633539759 255504814 828563656 554016081 644999364 293368076 186189195 144061641 360711227 271354471 733178064 680932060 904973767 539164885 683712282 521187317 618800124 961319516 368125340 738037344 309470098 687088714 65375388 633920271 83252240 420282857 998327976 212821561 633955330 77112861 137458556 749246603 18207960 120756936 267134985 792664723 29903998 525001416 17349548 302382155 415632885 338659266 104133971 636315328 27735484 420842123 314086939 304866106 886741510 610617005 447955354 604825186 437906025 254349060 756179929 896699278 96531369 79804068 691163693 760491912 512264421 500002857 987330999 30490196 881262946 735281326 468257749 308477283 199883363 193467847 299153655 641051243 182514372 359308974 367335052 906932198 987622398 243654813 497345751 829120267 991804969 451693507 325364142 957683846 398529958 39130656 608717566 742964863 651334080 106149395 575166330 962780264 742211454 918560166 949620246 825066918 454535067 220810580 322448384 491670069 731718289 766132554 836553790 37335759 262112783 205096386 29067545 390107367 833372855 442229252 814660049 116851392 719454002 705031980 205501690 385196186 833214367 636629012 837755712 62916708 639444419 753295339 212148674 29401579 759354912 305191484 826179266 138916529 316794836 666810864 713649059 304840893 496580500 59497106 852424877 403686883 28384572 212230586 396897930 873672497 939257477 816932937 495506403 326874636 532039710 780609328 626794784 630913088 155605536 478883184 871179412 242996377 416419016 38836756 308916061 840942799 399132274 418970029 186569110 25993013 937217139 900084242 74000288 100580934 805508260 569768574 729663948 225036127 71646343 202956170 700092534 716703287 652211357 158970485 468871993 146061526 876170389 629814197 397085640 232202734 647675581 364731150 982571687 438152952 917860772 565524100 157331543 86246751 513770521 97048092 34570153 888810045 817241793 522673525 336118198 325445931 831528126 412010904 898155281 459870874 300650076 183939652 179896057 639696660 256256927 150930929 300212122 694669471 36966983 632653833 39006160 69067566 556299466 704414703 541200961 528537552 818094453 71402438 442109117 953767132 572400559 484329162 450847886 688521346 459036398 130611549 428634827 622214458 80201143 628403429 156926635 844431556 945253283 36288370 282775134 787086228 954247193 581444080 167422724 666015029 932031738 180439820 859174486 412270692 679765060 116825377 439953051 931169754 52382452 291669107 424391052 902151410 2966276 329451960 459054580 11007966 556528747 892452573 138399376 359805662 696200995 708063903 232687259 941207058 489365339 217094827 786840558 219209321 691292217 674325804 994836028 395432180 694724633 475824945 359121804 210644712 181277133 821005133 237682690 240736633 360319887 747887447 681290430 273167794 715572702 413787435 85562518 697556607 89483176 116705492 665287114 922077778 709949025 168739108 227326252 768221153 710972830 784189795 879846325 531084478 775967940 653142943 146384763 104490731 271262559 336765490 761965162 278545481 698934488 604294675 548940144 666676369 341375419 29117917 525700860 683609094 626478602 936275205 333029205 48923324 333768403 437939574 582476349 531145708 715014620 19158594 442064144 818614234 619345722 917234912 348372669 951696288 364250331 653931524 901085344 897299491 370018379 434003925 620031030 580140264 747049751 223563510 595282526 836337448 311682047 582028502 948896452 924412842 697985109 869532938 830416219 947494476 103482827 78333297 440747921 583238144 276137271 911617381 990869570 455535164 164098323 735991477 716636467 123323452 195347769 720880832 689787651 561999862 813566900 659407037 213007267 740490781 538996274 93653189 454919627 593160389 454515578 213371199 808173429 210682261 495018941 868355039 428742155 432507922 64094882 651210182 817484560 637826170 289106885 280498203 181417516 967832334 432372964 815756883 486124133 464897898 247683642 431492820 270238777 294717088 439698407 860692827 614343580 278761354 114226000 941674256 844274693 44253019 747218822 881779225 581466092 106552402 22981119 706189623 74581000 267837477 42494195 153976432 892622663 796364437 610618134 659519522 246950332 750071862 63041518 292749288 618504750 869582154 942708994 890944092 408810752 915094060 803457003 887043224 355873278 255969954 220561124 290213857 434990854 245551754 792903431 942196948 847306669 848080277 618341565 393650051 899615210 830428141 585390839 550038996 595256901 298006903 829506971 796117946 48965270 22127368 754560465 560441524 411308571 204675236 921464385 277690618 731462844 358418375 516202863 836199921 239160786 444713067 181003858 514167646 727652714 494508921 155668336 194814773 840302296 396724670 726073850 934943710 65193715 376340386 752680213 369676739 25378703 81272893 308019649 851914504 312086854 227016788 315830268 523114688 317333168 962705757 767782363 255130670 994147317 911984210 539904177 715841779 169002923 261834717 173074941 909718931 544825486 409432659 853935165 369590862 159936346 574160635 967244429 353509931 687818524 511557155 849697325 974428815 651211260 174726608 965947106 373457181 628647628 55803020 802776050 68600751 400785284 276162027 199888940 400239086 198287306 286391169 159244083 274533392 330839423 84187032 320263735 911644858 805985384 35573315 205760360 219636952 409084522 40055210 625016856 869892114 298956419 6565260 838820691 541264784 190057972 838695482 180597288 62139645 449649656 655453961 741103468 294011747 869190990 683035090 715619738 991017293 629952171 561337126 480352058 873644610 346964553 187675716 678903951 445652798 937115987 417654458 342837957 948908435 616210492 96850508 296549482 261397813 325189967 536754747 289696525 979391160 489265622 875318040 218050488 684592201 534247258 248862787 249589914 688622011 554855100 792595888 532701330 438451985 900806461 44650772 19935127 865843241 165560877 738278901 930930390 674366377 322383712 961638275 810638737 223552432 189251863 43205169 193836171 462597102 192692099 677790226 528402891 161820520 55884142 496463508 54692270 766947522 149676674 287491426 862429380 383206410 817722695 976066304 297629328 240140056 816443155 843667893 590417517 898850139 705668495 483753876 893612844 523348438 24296959 529836848 398823859 472907666 954078719 904965591 274710083 209767409 936984075 993439314 419487426 152261843 599713020 118135751 908392936 421910229 740962677 693437065 3246303 581215457 553164106 490560174 546736731 948596508 325182426 139455759 457797571 794917664 576265168 857827603 427230315 35937612 329606920 219346128 444587689 438518874 92144213 493778155 828480891 913088667 331885906 384163707 109928618 287140102 619386924 428023855 720741108 226741823 695711311 528230479 800747930 350736373 898015404 631985090 810737775 947656702 978824491 624191694 861894421 203079570 785776670 467709663 276140486 271210437 33748086 220242295 595174688 610252731 365049392 236523398 182057004 361341690 272585200 574388420 787349971 971391281 257006311 125009162 24713900 318593754 433577785 405868304 602811811 95374025 553546487 561120849 263553917 582717569 560647013 49851592 15437381 389792703 942193004 809195474 728686510 912111321 128814896 623816421 316247611 189753784 844697277 157227878 740614761 240862017 906024637 464171154 650500396 869984093 346376697 683777643 913818626 13897910 678588844 627038606 161883661 230410160 950687075 461113820 575020910 723002012 643438208 98540126 316960806 337910653 798416631 750097939 285435280 841361593 286361940 45536289 931950763 364515486 668522335 568901089 905300136 542940487 54425888 626516034 952728386 321368793 305954208 218426382 710013547 448008261 174704201 663678942 539747961 757350565 451043149 694876360 863639174 994679426 955754059 959871786 797584659 514003702 279633869 806184522 886000457 572992214 960064505 973999561 172420441 488156047 780172383 358080437 788657341 157839384 109698541 565666727 291626234 623198004 511973314 559642332 776424578 79238538 116524592 149116948 208235301 727787118 853564582 426049108 230842985 248853524 314586925 791848562 692567366 860026073 892946297 942555851 785267287 796810348 198482280 688965873 94479470 863951115 944196977 616965740 362110749 107524681 408705757 238369572 705613572 594035191 615645843 588427452 243244172 545531011 233254261 325430637 915190143 590288537 242540900 857421526 669086855 974382419 785635436 606592762 116208380 335190680 326927194 736775470 675302867 460596566 730741841 241855454 590341641 19055997 361971692 189550267 175388312 968691515 345432994 247750095 992047646 163470492 945047371 152697081 686053247 620877861 794645210 19116512 520212909 491509034 920125394 466276675 274011651 153599561 746176022 443982281 148209020 488004178 541737691 693529049 690027613 741874152 869614372 413263335 542225671 263662067 401062546 162813457 10215246 807423738 274180204 122883733 251896733 683530849 87405067 170997744 674324928 888316302 287105924 994490712 595336313 595563129 411334887 696394867 782630678 431327618 351899762 136396173 264486242 473153861 585418515 313431790 678956351 201917580 284857235 866098674 994198946 744979616 292163098 391518973 889721120 441089144 298513922 502095330 478131563 723343213 746281022 88828960 115378969 686817309 430276401 754919336 378840835 125648096 831338503 659123534 989022901 594633596 221488634 569622455 150263488 372956505 93233600 544533824 172540178 691456445 826818826 204438918 297466340 416949504 135046080 874133956 967102954 970565310 461126122 662315011 399605337 822012021 523216511 864451393 255589111 848382074 448859828 855347532 631633956 687490703 72093248 266394563 892062844 960835320 389903962 736087725 190916450 271310472 419253256 698631635 315398529 507488099 525532034 500563120 420173402 201917168 214051118 277467118 67027150 80466143 650038525 738037566 78712068 804088339 290968705 948558878 510954878 635719152 191718350 542576965 424402587 736908455 147084713 695757845 727972756 190937839 758172558 200048605 401528771 631366888 297242624 205153012 637974894 306442715 970785774 566234265 315452119 755700811 307896939 928170712 224467732 331680659 955237892 415798732 518816915 245081434 422499013 22757814 907135322 635522158 476599548 482801582 595230861 700465016 803054193 156857767 537732866 540961804 666764963 684294488 894190805 211741560 908688933 432497300 590288808 73025585 845926434 13097058 435731968 780860618 289191218 863733839 42393817 372300346 534889126 757814257 63589244 26499083 230715463 972121200 691195266 940461395 324320580 371011123 161006736 185376899 677905438 971147117 405322798 769134636 61614289 687620926 448374883 775032280 7383168 234538033 486818095 805440675 840572324 618061179 250403242 5723812 507029825 473566385 996042030 531806967 543409326 703985861 748976932 98724500 301275607 487449066 174035551 926120726 742376972 361650416 690921323 699659863 228622991 92910424 367128482 996712211 725180027 190223610 509298231 317078157 275339298 781121641 253569967 944055301 888312477 544443782 346258820 910062126 426346972 438452189 770928974 796898373 358245099 943832864 677727997 849235119 83022866 403608873 711244350 477295172 534193598 432324154 209194053 385910000 167755068 343490982 201432836 935803158 10322990 743273815 119633876 352094275 302076024 435429874 302198563 269314037 655048435 977180826 911692372 467538044 304093301 109105124 593871490 932975995 550428093 848390142 140696029 178728627 462123069 102723871 208117768 919626168 917689773 834963000 934454062 362777490 98232829 155688191 975190145 485764262 87244228 717041960 173920387 639482389 105902507 790170902 814094810 929668080 992983306 680515951 150355300 547450575 943490003 433822353 236137121 412760378 729746284 633894688 876267464 867318959 211711546 796031256 787475816 928129220 683726594 261323830 101167173 842724199 204602928 65988669 875601362 373558585 62105965 283680107 666253909 515973905 930498614 288263303 211836356 347797420 900658334 621512061 756825847 131435446 901536659 115015833 374197941 260760577 465596762 901646352 368919273 675231105 594964854 170813391 179783386 104084745 34455757 205609496 430857279 1959127 14890849 126671937 493799591 584848576 680510527 71504249 222525767 939574646 792898146 265563438 196798400 198982164 566189623 248453113 323581570 887413277 779716353 237106119 13966838 120500000 590414474 482375199 730026793 178902493 870984455 74205649 233026563 120349001 461794443 776660847 960668027 774605144 48999683 465484864 49833583 414405610 989505174 822728701 538623176 567180394 245420014 38705583 326744230 739420986 655015861 285154495 60463148 755776489 254441661 310325862 462858542 690681293 334878209 227201714 135688612 293408601 648945868 581447862 905583516 165694374 948728695 732275712 50657531 635239340 815716914 897604576 9388288 142728338 636371380 625331325 362418642 214366822 116578226 372510275 949229979 678561694 566436691 928218395 77206245 187576398 735843863 784002273 281885210 918961194 559805024 377339552 599055862 737590284 633406709 217300824 8596106 108302767 713691716 849410586 211971348 985807958 460620224 705041463 339975789 791408009 138025909 745650985 645314259 775510949 324194081 905547020 874684299 695607678 3000608 821129000 362982775 933752811 57760561 730732963 310148411 103119812 896076837 293919336 622464592 815984285 150090508 254438494 464178922 726555502 343836678 471833023 66529467 723495347 912336617 831513973 643658674 920830139 384396659 112400632 51548157 201455283 1631077 57948906 921851927 431973485 541339903 937164880 301716470 897270845 217471493 449093289 29131954 404217954 906177725 656790247 889273288 880294574 715800524 942563757 108514696 691250640 430279174 218335262 502468811 201999113 408114341 958533552 874989747 827364639 370320097 486625013 926741879 936113648 231624790 192733956 820921987 537403139 979324376 416794782 437251456 986359882 634335003 675817524 159685413 970930927 800115838 44061614 587816899 645818680 581022562 597564518 557700453 113555099 499847570 661218515 393583854 459113487 613943991 354468295 459312535 674344403 655375740 400644912 281684240 32475445 169713176 410387824 875091445 138473200 461991258 392990711 339749134 947209590 528752957 78202468 526084455 2415890 574710183 406229669 588464158 10891730 263358318 215985659 548349286 454096055 530457264 762472126 997103055 1109152 735648727 809886852 18326785 559852192 251840382 381393785 294873463 287328566 905774549 935246572 466640161 933293062 1598353 745854467 206440671 324622089 950037157 232947888 56933661 581124034 254644417 184560730 265408144 371863995 248008439 403133443 120236784 728017301 866489298 927532849 408890315 392471192 538813129 168645031 199846880 372289450 379453023 147179529 353893067 923676140 707031884 298195108 640482687 730239545 672196861 56675080 635219158 605583397 718120254 745220884 798805553 983581383 486981545 288791447 867073949 658492982 302788106 789479254 116468150 944652126 956528722 359398562 515209480 420129345 227941839 908328529 134579543 767897946 56239824 621811881 170052225 956393275 523225306 241491838 991458277 54706100 421150840 2793638 548418179 959812934 479422181 201527416 912855391 192682639 800843824 770492111 938837619 698055872 180238941 161002551 715695464 395759702 134598858 375903449 371396088 803399009 526639752 754778940 627978450 323962315 589987789 412319755 256203719 868644499 697049188 400726296 78550283 820804962 411425893 124501345 141921864 645185450 365449494 156243155 239205331 114759150 835814435 186253763 112378701 301271802 486166514 342088652 126865061 244378558 414965167 476454842 937415746 404952144 987533370 975252194 472045537 102879317 384488591 320259190 192938971 626672925 279983508 321138440 690980917 835894315 94731174 472895953 261064641 697745177 563309529 917210003 290743371 122990565 773354961 747101936 556168869 845298459 995758764 281402703 83081139 167015502 677888783 912371064 102781931 572726574 659774847 667944119 248363334 882476080 374812801 999704696 6465850 512739481 237905407 533566012 713587136 282427766 694842277 946931546 950379462 587011630 323071868 377635543 689394656 263963388 152760350 903961445 172811280 738242577 105259684 478756458 830885456 682774337 834971020 647320813 130607862 995022155 431803023 142440846 687036776 363268682 649477083 579862284 787954328 38891586 869572845 183989242 817315013 75894421 398552188 349864503 333708886 402718388 545120453 943501357 754840328 195384471 110554619 953995235 126843043 713897693 763595914 764581013 53009236 355695688 584062355 98121549 444219788 644602712 401451171 583156772 88148238 452933420 603191441 955525525 525522570 171276816 717348163 187835956 182677691 827052057 822772954 736073614 552160050 254196465 411561442 377955782 54971712 484634352 334814527 976385091 352633339 158651383 751232890 331749989 339853724 991139846 515390835 794092953 166158236 378517841 608315419 539091646 153543954 242225809 655318381 983709286 980326097 311568050 721164751 687362769 382794526 667366713 148532713 117618646 768561075 546871461 693195542 721992124 915487293 782751336 842347263 893415022 710512741 314133039 239416546 544612263 620353807 577261412 870178423 211051131 915979658 306068846 879242527 685639754 617933599 770860537 675671946 143564953 990112122 290488602 239371857 788802056 608170244 832745225 650250843 473141048 307268994 772174290 716600434 700428387 674892640 199943782 612671644 836214620 71949980 334915300 436491019 643397380 458020906 527655906 807000553 101961606 459941258 103456920 938049957 784668758 592295439 809464816 505202990 908483438 658004003 170016835 940946716 1353283 706437380 61134350 895716466 475781474 359150763 406926100 147699907 906913903 422800934 569119242 939386685 464211265 858816149 746440741 547618600 843864290 487013524 897759351 706846620 560959316 687514108 151172527 14337292 810623443 431034496 743882246 234395243 990581289 742798827 299589023 287141611 675003094 363477980 985838133 525054862 339529868 115563716 179504064 334079530 740601187 744559136 420635516 909516066 709068784 70268316 521564675 449717655 201844718 377776355 630571401 435071668 692112029 18000657 609798377 218792801 553643376 833685808 321328203 682884579 378285393 79077373 445789102 38238240 404186867 213756398 655241219 13839757 97656000 472639087 495724556 31021494 339604161 316843194 857155425 930322508 488109566 58061715 39357487 449518598 262628870 920966754 91278494 667536598 43344379 290093831 659273238 325193267 3811092 272477127 419572673 160912281 121589398 201334756 260603223 676644375 641925979 697901314 482992481 191272141 83965902 634621754 973139799 351375588 648456644 164737706 440988089 465457319 295212018 801920593 654371477 426953541 22614716 102195643 704618360 767817785 557407791 515866548 322254599 843566164 493948056 643098044 602391394 472012829 421852580 438115849 978471334 874295249 994494171 577949467 382309885 289556332 290411309 423757409 842994790 866757078 706184502 904030138 753409061 636068707 701431742 755630109 128952622 269930927 43968494 85132327 238675585 468901308 970018511 164085180 596184387 139085780 886672170 627761562 361697833 297944884 9296356 598314282 675125129 733723848 407714983 444990708 641914916 423273281 818419277 422309938 950467869 354263527 3035252 101416543 666240543 846784238 878621539 390901068 624830588 921766599 247684871 46321398 119037906 665487458 685337052 126232156 715002674 778537319 360014278 171078378 122177491 993970915 722556687 946749684 76500347 400521609 735240483 924762773 647283240 203978797 728398668 351183444 255228390 903580490 124389383 352112522 663064473 166309487 719288082 180021620 955683496 586776436 137105601 283944457 571373836 996436344 101973543 963898537 649397184 577066517 808392044 430531718 360086036 784441700 416048259 966739829 643347027 857317767 596035448 173313152 712310088 620512987 323282328 73908692 985938828 882440214 504884574 630451134 964346694 194404000 196924594 266542154 825273170 580908421 856779076 10281525 977479329 490752981 816768304 410655991 932001284 199164968 914419695 53283263 722763670 886437952 654418180 367367677 612921163 322137829 85996640 231574258 61498073 575053517 419008818 310035699 564907445 658477529 775629363 785704375 609893567 197573952 935548760 138538470 964800885 98840069 467024431 403805927 290818492 134412560 175693870 230536235 33656032 422011454 943592665 794481659 794312136 743993240 819230755 868549348 559611067 522175718 142111124 573730408 331227677 968431987 308405797 689964698 693440579 991030555 431164355 401260041 245702221 815834200 335077692 781796136 961136343 308984747 710270758 88114015 587549031 960789852 651396491 379288630 617299764 285127178 504525643 710012701 329850728 353811422 24516964 692175727 901034866 110839071 472409403 61675776 224058716 84633525 95592450 861587917 432189328 953248899 102628365 769046473 123234984 465287585 921827379 14648999 874150571 342522717 393235371 755284098 316338530 646397756 470442258 586354 98057079 364030884 710032934 135988385 297452605 265723744 894899051 530932180 875851220 747885705 721527845 472742224 737716368 876619806 840426229 582793932 845594499 244659160 935649553 297335945 2795070 58401637 194502939 605868750 333306624 884134548 460933926 651231877 163259222 389133481 878432272 408015911 849347681 199427950 3877923 129249654 152067228 912672116 988331018 782500066 167141755 840171832 793760076 601041853 336106392 976116531 472446557 808010931 308609792 928128688 337783786 871975925 338425523 639091699 819599214 496558228 251969798 795221483 729338485 504198469 829434936 811539022 711840482 210736840 689493840 46372655 763263820 439638228 585025367 590725330 547690874 898887774 746813457 549053546 924165046 21186060 444335064 733696164 174456687 17673197 504305384 901696029 663198835 954656399 494706372 94616504 630477578 533906823 317001526 588704056 130446036 455413337 49855974 657422899 403526990 232716420 949103887 474713292 924224067 525165157 902219754 122486898 359269692 661835835 108196822 192968708 77839344 572584839 727851340 183826705 817404835 269341808 292586115 532877827 686266206 482512819 226967273 367470467 484893071 53623466 975424713 825359106 867444103 880892849 952883159 449561284 44091168 137154247 260904018 194983239 751137574 534364112 605576354 557675757 820981545 146217593 216424539 952025455 890091141 645511064 607406799 337885937 981819175 428918762 450245545 165315187 766344770 109047526 690748932 262449001 524752442 980627739 896207217 946623410 122949761 990316176 876388175 86815538 408391409 936500447 227262686 491699459 789436089 389779340 75500642 121480515 760709540 372512503 315756921 523485252 343999958 523554190 900354561 466390883 158378107 792107483 968751816 279272954 835718394 635492892 210204661 320066942 151804463 949450622 424581706 224875697 719113661 111936296 998499554 766443944 9691355 628968700 238681725 197986843 73487435 777309766 142885893 534162145 355194047 463309827 254012555 747077161 277191987 978429253 271258956 443968018 942864769 913833382 816931406 504367861 658786506 329434415 361175778 334999842 162052642 236092658 329939242 817620874 285256377 324991413 828318792 848921956 862954534 319843859 665486546 852059853 883651550 476247737 737030934 390864083 204514756 303240009 610129032 114587776 377777666 143429307 829823029 491471210 389154423 622598016 915168576 941807672 90784436 780145453 238833693 3276093 513329259 274343408 129242715 669071967 793307817 226141559 922126649 103480759 947537580 720484749 119272037 405097642 353603343 856127563 173967316 560604904 705249689 588653519 728354765 917007682 687327090 123795192 638518737 844610469 273717605 708089415 141877272 154434722 184383953 121061056 570891926 864288745 615006319 544060099 915444804 996152303 782677467 728931014 566956513 388844770 537915036 675054353 45270206 26624756 991835949 612098984 292993135 804480439 246129070 253636695 274332013 149391139 479265684 815740744 973761095 408687303 890500285 364366587 641583514 673444215 370854599 823465477 524244962 527947250 844943792 609312637 826174125 613924031 754823796 643551192 29237823 949226434 720673373 559876488 319753875 608489656 88440377 572329447 996910496 75123728 974278222 950706446 801069692 178863180 85407827 244638451 573700734 524289214 854957834 551275684 122037492 473522659 128678634 947199586 291137056 92456108 551049635 117021534 233585281 519824043 784700940 835606593 110505434 344583969 816456684 487978561 330483703 363326023 370602824 96047145 442754081 942031465 145270111 763565383 785932215 290014518 708713577 62291533 564381513 230625781 350860346 817225281 225780622 31878493 277435434 867316715 709700155 879880703 521712266 297723841 818026739 653362571 333432163 479816229 543572613 978480181 891541428 749235702 37760201 60198247 499120451 864802156 201749461 690907592 390359027 601447688 12325993 731065685 670543397 158232295 607432872 666400854 441364243 763192322 433399445 939544838 411693800 833203952 95258259 172400054 211430889 874701265 544042408 94209963 768589937 709528135 479052259 585348437 30222591 260969853 344225151 844014482 568771126 445502849 445312248 362442808 348065557 982408796 853395734 941266056 94574760 648497820 209386759 342215719 172115670 226778243 698508676 762190904 29784390 483684709 385169176 721019284 867018873 942870339 304023786 512809725 620640177 627675119 955281905 107645437 376079692 416203772 686536111 446098371 990234779 481819921 499828956 950486542 359626385 727376845 613987413 272285307 453248787 188500214 721312884 859710460 193994830 423248633 579094044 138512753 940151145 452397544 165334612 223273264 773512443 694501538 552475633 712350138 341058684 157205077 768384842 807550749 311979997 387365698 159806595 167412 220656138 464015272 534426702 680653886 74322541 224418873 753680715 370992262 595900215 457298712 505876475 822848486 211061964 449251457 730596763 880969782 814830821 537999155 166196809 666221702 51111974 949076639 419221103 132912141 500749292 508501543 206734557 15206600 231167192 876902333 230581190 92717505 772904917 656049665 399604882 602933177 206048653 855694244 45484862 301103457 409923845 852460481 452130501 837919872 962496180 871874176 354216214 979103350 533606784 724507855 790545430 240225002 529009799 227073949 838653615 482844030 246654484 48424290 70174102 887354704 537230793 428714420 987592435 974521586 692989360 79636544 22735424 626482353 360016620 13772170 114975803 166502176 682105877 24193696 751441603 900721995 649882055 688553714 124424218 803428615 569857828 695311212 949047847 149214646 903251056 926810565 223981946 83969245 94251862 19074980 500850826 321252173 895115199 374261363 761893141 849868075 663760290 905706503 233269056 354025268 688681919 950068430 827546310 857203652 307898137 312050524 956798621 619712499 107293717 362777703 743004233 322479915 91866055 254241185 754856860 345290414 573958031 384682935 877746743 926439041 518209911 141213672 643723924 391751511 314439192 150763244 764023674 525421481 210244390 670888189 473910077 195914767 516266780 961085941 80759454 926899875 448340661 757086684 178264070 53394932 897817689 815254851 997694994 915410108 337565573 417599072 719334444 416145922 726405628 164224505 541743988 556115550 334385651 936086131 976664948 896146524 962652491 627244144 820274514 866555085 390837047 250308265 25230074 544543990 739384399 19151685 376668528 805958177 893350310 883132187 279646605 678723319 175024332 308983558 887449440 864368372 286897548 46355050 561202715 588638586 804321311 312360935 411485148 778027215 67260505 391846291 237954226 131391958 273384241 540892755 292657236 23646065 842028934 965563015 644164193 962612377 558029800 163468949 860211009 814881776 895765192 772236966 673431237 908641512 322603834 251156251 566518406 738576344 315086924 237303136 740173119 781028407 535372771 635899716 28228278 784081558 554476273 539528849 441373570 132442670 890374193 768295243 785211947 835654436 354474029 157947968 814731560 306829391 21704612 550047792 910321972 186841145 509558306 415281811 8067610 593597271 182839638 945206915 895979329 88993604 11037196 738651333 793250786 840913236 657786725 772779933 256055300 952321226 465110088 766698458 920433165 941745315 131925793 774625615 390520236 602722550 385072155 928544208 858915595 269547128 414863533 881032296 512082840 668521842 325952397 580324362 423172186 19810540 145421700 704542784 714243261 640155647 233579293 828549061 828706538 7438231 579716280 94893073 122127168 400134501 268291577 230253082 424739374 541073614 335360397 675221327 621558176 772120616 830491526 632270814 895563707 714474131 194604012 90215416 849752057 902092539 479897110 653394681 698488364 169810448 312865273 296099851 148969138 526718278 215340174 809101412 62018498 793703025 496627265 906579993 951451432 600599509 416574146 712132634 54060558 347867836 128949598 220625033 333465038 191097590 180420120 396207785 190858913 403577454 264312225 336176059 421464167 672593476 859505557 229298046 427558369 253806530 656720253 81446029 274807043 757912506 778563427 331974800 252394193 977156865 714362424 364262914 617513021 839235033 888037314 284318477 415400082 422091552 137653318 743147974 134641833 413593618 355790320 385723098 264299915 331640406 59810800 268133238 690939801 170669282 80542891 193420270 818521633 454624945 790825083 406702646 758346080 809403436 247246843 416866608 410908958 245306803 790930289 74533544 366924246 375653432 469402809 793126889 96684366 228426527 936739145 745792396 885117204 965531629 321111950 354463829 461511548 376289641 72492941 464524 930813684 913507195 392461392 618550895 339708836 493646617 882860743 63158205 930721253 336688666 356421653 533821318 782805764 767534043 980681292 389314994 914369745 178843537 93673153 975019070 711562143 222059703 726359655 427437070 852082131 919719089 848924219 902255622 766920799 682057024 797754007 760849230 846384776 332840635 729462538 167289978 759040133 138743209 663819525 604392462 771347576 519524553 266986823 937835994 966677843 713606549 77733097 518456029 909571156 321364085 374212409 793382860 424085417 895407179 690667981 719737875 273015277 465213915 934030242 466790233 969290401 584428169 306181464 167368496 825483063 424725308 948987000 401379312 627463475 97617032 415990856 417290085 456159284 495935002 999576083 25215775 945291863 516304323 793997122 496738302 631996349 513609917 599063854 395652933 792210138 657864569 891809141 149299334 931644180 970488542 762249282 873601138 604297095 591196894 93357630 841290398 128934555 254955845 648225481 191408732 516369881 931552408 613676996 171707626 746965844 311409364 788174829 343990045 168963980 384832100 652616055 541911744 72444828 303451079 93205764 292131228 874952241 813726313 484641103 711607221 462227551 700969031 641793076 876363428 540721120 997018966 955699073 235900478 708908899 123222024 215575179 71733357 786358736 989475464 655915051 572954210 315740030 123825809 546731860 254621102 426877237 723583117 785840195 222137317 397160629 630741000 214397628 430742209 487810015 913136153 129592840 693784069 980313028 355958301 371294393 926107307 978705059 903048592 532888526 273971444 480450945 126323976 993242658 314929368 79228967 194892935 312020904 471185952 97190939 977425633 422992540 750663659 562057233 421829359 304796456 999830601 535615409 859985490 815042858 380555099 490808161 248329640 503214377 257429998 843120741 374698486 259485906 923143653 487336311 488844500 759472223 444670302 990535007 956355165 81029200 820746199 95173343 107435625 907412859 653634319 703299175 38219841 6909642 945649009 311481730 640248644 698567612 15465230 770939177 444608871 244730611 920313035 735464429 13739757 504085333 475057873 927899440 787551306 966708744 830465346 767721705 724365634 961863149 144852343 76134311 459642486 871530378 232268817 74256066 954688615 336093529 682216953 451504544 255632392 197423658 736137521 18762600 701145909 689804500 519005942 938471452 937692927 877427890 460551862 956503473 705559104 484530306 581706825 700572903 883440802 728051216 808842630 448864148 158440108 373822679 366946493 386301176 899344209 684208242 512335994 164391412 340861842 952095639 632525963 795049099 407072447 132511602 522716403 169334717 840047944 752073145 873871286 801075915 754133905 917075462 265844554 60279051 463253326 689189006 59246013 457883555 430108571 499268737 457954303 640051626 964416913 315895390 539821975 925747679 673300514 723326307 647832555 56651718 41050154 84874597 983624145 630291499 697185358 481096100 784590210 753591869 382926579 35641700 508312562 757039321 695673554 840906485 262567402 331554622 633020681 173816532 469323301 112264903 963043808 728189138 350010792 50734844 595092798 654724113 429370233 596643773 13269402 720308358 790542218 845190737 742765844 744507770 936415683 330130658 336035331 674986512 576118799 647828375 516415361 162519138 365596205 378086872 558210606 634977396 371188075 566740037 86947432 957830399 555535778 195983727 609016325 436895517 687168270 415046720 996312165 734587789 387843222 829104529 554931045 730546234 290454911 9573245 56782332 889891624 277308604 467887146 201240264 272713790 538147158 490529060 960927155 528983273 821669843 276795811 318149432 285381785 791722133 587509003 722926417 606587983 557815546 344053689 32870717 911551814 829035101 970283362 375979398 185463786 159882985 632788101 166549298 37393220 690557876 703762129 76867209 495351909 523931655 842985914 690986370 170806236 659870916 791549379 166019160 215776992 592043514 507660521 555492068 611313933 350899644 124152233 297221879 230911752 603781170 456457128 27929909 5830596 403416099 499906564 375231167 899417319 798402138 663465115 139950129 195361475 747268457 343469355 488259539 834101074 961215015 768984597 590509552 287002619 736932381 460086028 369353530 7016275 375549843 456119305 107842359 365012036 114359406 395771176 43374894 353291048 818095695 40593975 767213711 849769201 433922304 397899680 661502050 523961871 640189566 884468165 463884853 527672739 901455157 742802544 435126325 802940842 34870292 924587126 89160529 885784634 715980861 378779522 134490531 311631309 322177321 374119480 357319641 261009402 334641183 466864681 78890266 467632452 512431599 827727203 3157454 607651742 100893352 787424690 240590259 262525281 77591940 866150448 193846077 888384055 990853662 732705669 296231565 938729157 184767691 385245099 492790195 129897711 312351832 437118709 5078162 485606251 898809471 952074433 105856657 180432126 589617598 190036324 91042964 950200431 606567566 139615187 953284901 700851111 377253528 56911815 238147540 219935304 282585007 438871906 796191898 537761538 787164992 238259309 122693076 845483513 676916310 445131541 366518344 472772789 91415964 289034579 302833780 893829764 245169721 173438909 383377364 564979699 380074179 717787126 167960761 234902420 310464089 969126661 850617843 620178785 864461758 880560782 271824647 353031382 294312860 671708818 796031352 838818817 962023433 61113233 856524941 852557074 811416099 919093026 718738325 762804625 963486661 862035401 108528695 953871158 799914825 484360500 853198479 139873839 71830188 25340448 856474094 885697175 350462819 592760430 291552490 893325880 466625615 605719161 70176421 113822829 105251578 79306162 581669119 995314268 698727436 439864579 657977356 548043223 833329270 109903560 799495820 117427045 860380978 652679696 82426693 782300710 591310334 43935142 370001362 922001980 606362002 180305666 769139644 809790185 60728323 345301269 401554215 113545942 519586983 47441859 342062158 599538186 195188966 620594342 961367668 163274168 605631364 139350003 557479312 911300414 961619637 560140524 49015338 960378855 989143984 985532027 877151896 853320238 485499383 25244328 436215362 380390581 583051445 818018274 64757345 501651727 600576383 929558615 296837048 651450194 8959325 927985073 454152640 442446348 961594985 184261844 547197689 921749341 90735652 276090639 180442226 467114765 135316114 17188734 300963037 541366587 971196297 86205430 72647511 842202547 876579942 257060220 175265454 947508092 544938334 520278138 563002296 797091015 172081100 18116808 784073773 511700694 242506737 873695306 158076965 639112616 694129661 460136649 176511585 179375213 688441718 540031468 987048866 657212809 9046286 467990739 581178672 811475849 282122134 802559270 659261833 779109831 924327491 635955248 92072201 719212619 854887180 110624648 153697685 98228597 445914004 656179023 126971182 303534612 188875375 57399113 235475425 158221743 333457740 801777329 901209089 539835153 534299695 330726101 977837839 643641659 550103521 445918738 968658879 505085466 641720097 607055562 454114140 514196218 482298302 231782879 778654306 299682649 666431913 955784688 83875807 941619322 509983343 462225027 774600314 685476119 83621737 566283180 73646230 761093262 213513018 359463473 436685686 269516771 278598081 920425827 261417677 707462251 703173349 329888284 408770886 753950952 922254279 190291664 106579116 211856540 407173039 309672412 467175923 693418206 21286624 948241940 413815432 411407591 53952212 318612037 815202546 185736083 928324405 448114167 734595144 279969688 138057652 803176406 112398665 30339422 653249604 960451344 715147421 353157849 780679708 985268249 997743060 509507379 175540944 838287385 972045655 747941013 392711171 877901318 969011843 592884873 248171453 977974221 431484924 428031983 439286342 642266656 961033328 126531839 601384306 519491708 754738592 295862529 811795838 880578427 286557863 675070171 80550379 943973993 95909109 276300084 444654556 811160909 517350260 855327934 526928838 526952629 420215921 576819754 939621628 278698503 16805938 284343880 950937398 737407950 9870439 916360175 746989832 126964963 818988331 101695171 600745890 601097830 581763282 648087319 920091020 551024864 447820778 951230265 312726224 412142007 555121893 617810757 454113526 234568889 685732945 387640906 733542909 837394709 474165886 614211525 517872784 564615967 841319736 963658832 48069071 329479422 243005689 540436507 803497546 921018730 693668700 239836310 910824559 216498863 840234055 626718787 904804447 562959439 663189456 529828181 147501795 676440745 39411915 49319559 543788342 827308556 687242859 425429989 562070805 114635416 555612182 191910273 605027741 234299878 40675859 355160957 227761635 209415151 394019624 428716712 587130811 308027416 583154730 320803035 505890754 538593401 306434242 559125079 259005211 746377697 896547138 778934615 408053662 919644846 731749905 124817754 130207587 553410411 569230427 760125833 701218066 630853493 836468619 230798519 209118601 846415546 307584148 555250658 629336577 223319570 107812886 613667265 648353554 910923345 345951721 28817906 215388946 403729868 386847140 39948850 842070933 132941406 621397364 427086168 189289093 960163924 658079245 504529292 32385684 970053645 753650507 840750338 950162252 320510251 492102342 238213787 506280504 560813179 925562466 14498531 143790366 370844478 884564354 284234128 543762177 266022280 319035698 496160462 239589745 279059843 462617042 170903519 741643080 396542014 696231804 636178868 287936814 61268547 866194000 191925654 321006845 594335223 248083136 634806547 93234906 770732243 585594389 174109204 414751150 3817798 982041295 280607705 873460426 751718271 127997672 524864434 450325520 378285392 793974573 756628099 667558440 761000284 502694455 629899130 568856134 288389694 23302641 658794776 902335548 98951145 415934075 165680277 862646366 957892954 564243659 78292898 716382841 624931350 749595785 237486266 130202969 187393799 795922708 912410494 571518621 592402520 908141904 445551752 809629257 472297205 389769875 308111942 652804784 70896061 912595644 321033945 684624843 497903319 248915433 618558544 517728616 959023044 855301416 471359554 74911520 278180948 482464306 354504670 439534906 797460376 134144174 262698699 616343122 425827733 363254969 644086977 963886151 758787529 959001893 247901270 27348758 4343515 689709859 23967566 727701397 332459127 137209590 694281413 615661015 335216375 841425501 879104435 719115723 157480301 807639799 97067826 280980818 658841185 17192414 986549361 476326052 468857606 364449941 98329325 729195947 888476048 640669484 218010572 39245736 865750096 199009374 271313163 492326490 547741459 905262661 235207239 14413867 340825855 304967408 366269451 213663773 242111625 354718180 211565796 248340369 830325312 14952610 311289419 390763254 86933111 276102354 640194997 485338499 398517161 665966674 868613350 281546600 711671525 587875665 7488198 869906987 63072827 727847209 556260374 455572185 9122012 270026846 798024819 458707131 781591928 460049991 252082288 856446069 762564984 337909628 666847010 904503069 178624073 172317065 478159073 552595695 904824142 164286960 594163430 89135475 859329913 746208215 411435028 209373628 87405869 652242966 480061507 539258073 981459298 532523791 526015726 823581899 342307738 476122025 667525969 593337042 94008639 329123461 24290332 97253209 351758849 255970194 181254593 548230952 666566954 15117204 594991957 368752170 984428966 36834053 294192103 465480777 742379442 118318263 919602013 730014043 676322561 701928339 479166293 58975053 294946249 571265970 697461172 358851363 587846892 115756993 31916562 814612822 759850270 996878613 92810913 888166825 512332323 826619500 507372880 796399759 363247823 831207362 728757506 502714274 263080043 290598676 747733788 487323354 944366190 615484520 238785802 188880835 8088327 417791415 692588485 728942112 993477447 716727390 142174378 379608404 761337759 433383669 964625713 470303916 513192308 423058706 624769232 368985566 366941740 637745957 720215293 545314340 215517500 682917277 527035490 932290225 917179307 10891029 577142960 837580862 296502916 576600122 758490828 983320495 323495771 598138843 787251389 852561425 783711694 63239175 83116201 792079478 769722291 464705932 649172410 881230712 223521572 360482381 141060208 120285821 130142100 209609757 517054660 353283287 813344088 900094682 332989982 276066475 621440664 687944843 458009473 53462762 9795392 31611593 842001268 129132929 232190469 98718544 993262019 910362894 122168610 110878030 980570174 937883542 615293961 359665451 376271398 843788095 39407508 151875051 698304976 760461965 526569792 795259110 205881192 26770172 593052130 893014272 45972576 79739623 771584413 619715672 311953777 190364809 113813635 64528791 180526936 726303526 664154804 369236579 215087321 78357210 16052207 539374358 304593322 209470256 199246936 745583348 415784477 608214309 955138173 306157927 933194158 225071929 627619050 441568250 65283788 62822921 991095520 273743517 489652079 72457044 522327996 415382721 527493326 733736175 66652893 289560079 845338397 61168032 139937940 839358320 820450349 19424640 448026976 14380844 181823954 909461735 228712666 552463199 396898876 143535900 260527452 676651324 494855578 949356229 971218142 70131494 753871672 756729951 77985643 655156279 772846747 466378369 945918620 998529443 438998284 289596585 329076814 36308062 337209353 450657682 684211753 398937201 551913669 836627989 802847716 682629231 89057717 508736895 105831004 518187832 733003954 890058739 550440433 157034745 976131869 251157552 677781601 564477426 841256170 851307000 139596312 740470598 398177203 678661214 497537848 393310574 394849131 65695961 792892281 816558655 9140774 621802631 254053793 717468909 221370066 379694288 815766513 356434853 222338927 865137714 672085915 174879745 598512103 661980306 856642143 715054071 211451285 556736813 360837023 120908396 188376055 608941118 674844257 517077563 609269702 771997410 953355350 133795031 228533133 958327660 637891867 27620548 76972681 654583246 322325693 47286252 95458451 369755137 220005041 106643697 541628391 903752575 76539204 751362762 501512456 236057324 501452662 515394008 579708783 469611942 114292915 819737321 174065924 638534447 436740481 22908401 169466959 115929833 451657506 320495806 621002008 442743838 911128051 164847866 206947385 926142899 596746266 558638411 414138468 541134877 482641164 729481556 666604776 377874056 534796600 753483394 557445108 894488627 610857589 498527453 577104728 540176461 526728569 733303801 894146617 259058990 238733038 800166227 600694322 260825689 374053833 857486014 585974979 543976507 412439221 731849100 658158801 983856319 234238993 811158639 431148208 202864115 334410847 695095460 979786430 886968743 392897166 735149154 673824713 737539012 183419737 697386779 740489032 838432628 141421150 455903093 396655947 128075899 110128658 992918463 123289992 755727672 301393390 742588671 648334174 252342419 319843577 935794760 580072051 690572864 401081800 702750765 654739324 58363698 120081777 890952510 337915614 42525211 498620535 381446904 154302775 884973959 685205068 519787522 998602231 679479482 227762410 785046499 336460011 251125983 667166066 124974411 344728997 67518403 81022589 343319576 131593301 66511605 630438475 854397606 270126221 642835961 416496686 461948691 447911023 202614665 302785165 616278223 977162060 484240253 128377253 914000334 525467226 425655443 497529104 786140953 549886587 590415757 487094517 209640258 788970748 517472599 109439021 881408660 599264902 691983558 206431011 696875102 887190377 307533359 126080803 672661812 448644989 22878158 585814640 971418615 179146235 966629159 532758898 893032260 449037453 566749387 902839104 266176352 164992745 180798653 47961738 865676740 987596318 186756200 55981671 664466290 372943454 433413072 861705014 749230752 727526156 646461371 132313292 528828407 40006571 944917552 6059056 898770833 648327528 417560378 540916395 462474314 419453606 430528741 442370523 812757310 885083710 964622551 591320979 944414488 768293963 5498542 902339864 860051316 907157394 900407364 699057284 288692571 604682624 944379654 792019435 574542090 664853262 355449294 59122184 183909819 293916892 782239811 471517594 160199938 135019951 528590712 502738329 916258733 976923261 315475332 280830519 223265619 202653532 718411787 814135777 862490299 786361172 316975212 498726997 269711202 228715131 899347756 335100042 821946310 396081889 440501075 27086384 118229662 42109466 418798012 71054709 797601512 796391504 137309865 53055564 496867242 22608085 469210261 991279083 259429116 353973535 36218412 799311884 412367720 179257721 667322823 606556462 916295873 888220424 654789799 220628188 499806907 134275207 707223775 933114988 66472370 359912406 841448534 894414315 382297561 57125164 905462110 241045112 707338051 484173484 87806823 355992613 637308921 223962330 913790093 463903671 426906173 315413212 665005285 8200883 493930715 818516973 6721256 533405023 712372037 564306413 598463968 355013448 190834257 12126995 665696089 213619973 687519086 119361203 123400551 326633857 470812784 267337043 954892048 221933262 464170555 231874541 408265880 589966654 477659118 10687110 664190304 109559735 207495777 368433501 645629685 943170577 434103139 53474906 126698548 165628331 840136589 3220438 133259610 269381888 668067847 277697883 914911011 971138143 109747522 969414677 38253411 121816383 103184848 349846022 970179250 690566710 445086646 592784336 598861940 500284904 198063992 217818880 552386056 276948428 327510654 79105526 415284043 379013366 683166276 625056454 965510876 996053598 406899242 524472536 259834062 142468716 25906432 648167923 900322097 435654878 380051229 668484025 639863938 823001589 810938325 287033457 268557030 157856447 213011745 398202486 56828823 131470764 793818175 532916521 475385251 730169577 640624845 839293457 279187895 472108640 489355366 902210618 226064981 637747851 745691486 541705666 344882163 355814267 780550885 562668821 71480180 182508519 470179020 638763485 172953323 190724608 742960505 92727905 196351621 554698840 117826394 183430783 895371937 338476046 966994040 742088978 820109599 82565611 660773146 261599206 915813405 93521795 870281751 174622619 549402151 629658099 804717721 654777915 162591218 784268202 670117153 511669995 746552265 302469271 538344178 265793361 469589385 535788508 627528397 387280995 568975941 158591682 30777045 237717113 143135947 827793814 35756165 768666798 320233597 29891938 863792445 256396410 902259239 921093138 691857568 454366479 801611216 222563901 464704342 358602100 534125887 527448981 937275363 989660006 531900336 108567247 121140315 716729598 212066134 224838638 692650945 335740716 272335287 943305116 176041061 445192295 304333518 522899119 797756692 23826394 327507761 804322328 415683306 150141647 460469406 946559235 247180855 522336083 247639550 135636883 662585505 801775147 121201651 77839744 582233221 56910009 151199817 706917606 935936631 925384810 731617075 667917384 90227018 262341959 343008873 689554717 683731358 744926656 872083932 575107207 807268929 372857308 242420393 669596102 591147924 849911840 244700804 732374569 413309930 852262864 16326639 737106443 594857971 638605912 736241171 752927024 227237924 492911347 970916998 279930734 862544125 953241466 75053245 115245636 49183959 163353311 501704008 541844597 340652420 937990534 4896542 843193218 999925750 666343106 612749895 470371774 704332767 782920801 445513536 453732102 252981176 400739341 756064652 672682615 209001573 854919105 371202303 578804432 143602039 573636550 580975015 929638664 878959126 354898732 592606447 33989288 893982755 947074442 700620217 441518227 425033269 875039184 726875602 720994158 537263685 209378280 256191172 720567246 57407044 455401932 373547497 918088787 614949477 63501719 1026801 55211663 961487641 146693905 172214596 727226357 430367800 992868375 62569869 299765848 360500707 445633665 741637290 174001474 936024276 2232174 840611623 597167901 625195836 914750584 656461681 594550852 225712129 396647772 739421368 766112209 52963303 147432382 657335679 580806094 441530044 933014759 728378042 937827139 668553463 683631452 884104522 286795789 568780744 219240510 473569706 294181704 201547890 652352932 465024098 198289342 5415748 908568459 997533948 268715698 336465797 903422733 433096844 895209531 613211118 631131201 909074525 600507075 230976641 673066318 820189738 150632307 409612128 55278081 406547448 303370603 303645913 272262761 139135370 570012653 841316992 379602225 327465499 928933823 583149845 405895629 386217570 684007206 268818536 793335841 951182050 513293684 282255819 938466490 377119718 231201325 17752553 439385642 92362948 101115034 512470601 821914468 771180717 762170507 919089573 3157557 301118744 257746867 992430879 891437190 781215336 999708073 104063115 799197574 908532277 786762729 789109362 891718418 111612707 665560976 272922289 442078023 381120949 58116734 33635854 621543093 817190015 614045872 217007882 34178274 96901544 276635002 154759880 448669861 298570970 519024756 325411545 861538077 223592383 357716838 152741530 691543408 904821029 279551551 745432002 738149741 983151021 988645902 678833569 822724627 12980543 528117179 855023793 805844990 641328932 202939206 917582276 111630013 668691329 924977406 721686762 681484122 377244927 193533447 477020958 472646436 557499742 465425407 32701335 672008625 894868249 421021901 636499687 407222759 683731810 109834698 782942641 858398418 969836120 428209477 725192954 176130535 112249590 895001529 612504511 770407894 411620080 918106703 702059765 222205347 472586688 805074773 639941611 531599312 29987368 909154691 924566335 176136966 394224432 537788036 597348599 454457352 899774294 698708839 533761792 888492487 639855437 97711050 980078599 448248212 357679099 541410093 886145590 552337766 286833126 455756584 678964651 370486545 249742700 578135784 545071899 158922332 727116695 697470489 451587962 938494406 96942181 813966358 873669184 966691907 932933477 787421677 924607482 136040640 849665680 640192094 440240670 89984349 738862429 133645082 551643446 226410346 36686565 86391911 139976211 170001001 216101461 533268629 102209787 963095276 338055064 945793748 911364059 637124000 578449433 620625570 527773953 22702019 189019726 602371702 647334755 841984241 344260217 956151793 134001610 487702167 431048828 461774343 524957699 639395382 271206525 780118581 246796683 138014817 837116372 792657179 521925109 867342518 808250057 207472829 217911501 340007787 302796106 142659412 368518086 994807814 429203838 169072683 306571208 611095229 50411273 641903827 491607472 507961828 200134641 563858458 922979944 988048680 548299127 517978331 213800830 241447696 800164324 389554081 874045571 88864973 64813863 361673354 926884994 47196281 677322646 775251252 948883855 330574978 323858284 240475315 99189700 29530540 668873829 482846552 689903286 621793613 67145991 18920094 793940982 683940711 780409353 637228753 165845039 817886275 247862304 979651104 507688358 386569232 778218031 385042819 687176611 157886005 531024954 478379760 36256193 369432337 990121932 77381205 363566287 549548043 266601214 472546904 326079916 150997489 245850014 696266133 42169511 170754493 178535535 282419457 731105606 584381647 736443738 65222688 719602910 138509674 469809571 372530416 426830058 817802226 392678631 700165388 495305973 47036790 13696363 474922403 310030699 925883194 166074942 503741495 23253078 810839822 391893255 163260948 859603721 428025006 415416709 386622438 647284542 305100325 414824154 301280032 39289678 815980798 317764974 341017190 326546882 732539876 703285079 491342225 577544150 273184312 328401855 804921443 809005182 408158463 591733811 510282485 995585234 810043904 804764145 893986899 847251663 798977208 668961261 608317976 370430684 499771692 579134382 685682874 931738475 671902531 17746344 736508138 260269440 500807651 737735653 905248246 856443237 835448251 840537442 165686400 847137688 592396319 8206662 920065183 512631241 878490158 277933385 366543403 882206994 54097073 714111110 833022514 557173274 38389762 930545902 556374725 665378813 878812296 53287419 125492633 649163173 224091349 677621246 197042705 69638669 863500981 535965241 431121100 275572669 265319761 237478824 883033582 226474601 772726933 368158294 131944390 632980669 302871048 616788817 754196450 625653988 588033438 141627324 665137435 532391496 951600972 215678917 235010590 362746247 459387264 276456872 512019046 740157274 664398744 30796690 858083490 813356252 140697901 305864295 361606410 58241710 768422721 147108503 312602045 228462251 555893437 219125889 470806753 803549099 850437712 462499312 12961878 985856273 433730835 997970130 346841475 840926103 984450958 787853352 881798062 480383420 808892220 349088142 482751180 411825633 246630856 407485412 348706242 785330800 485698986 503076065 120862624 251451695 410034951 88155548 54485284 462181862 117584189 662165633 135882066 510749111 155264287 349028291 704656184 466573761 686882757 218098208 733358170 341795562 446062087 588103069 416970556 917964761 579184503 918018955 833362932 541605526 947142931 443721686 421257175 49648251 77154178 822929615 978642450 209955518 103310981 966952079 351228780 892286308 622516319 184688661 467045719 565307496 660449213 440924022 836886527 24213209 352351899 206457980 814424156 809008502 537637083 894152286 844510991 744194119 419084143 92049724 526099386 441879414 959655602 607287278 311928773 55227882 999693109 971186924 214144168 374912505 973606157 403275893 576822754 619399586 805846836 232610738 538478085 750975760 798428786 656950018 714100179 512241548 990282624 652293673 564649745 555045588 815411427 908092497 573361774 985928122 429326228 315817583 718660078 806247008 55453955 137736210 921809222 237341878 387983615 225420122 988723298 950997208 40372739 892171305 822261038 73154990 922836535 527235728 204727998 303253998 647689094 742829774 245859575 819779804 290760655 299107994 174555564 901565711 339211849 760951981 139576812 824754194 118328790 819746186 79926160 637353075 607000429 501189764 150449422 725108719 426240678 820589097 500327867 102805642 328422746 56844930 608278441 991889106 208311834 792811211 77815361 813764056 612414910 238981196 792295690 195542295 339403780 845248702 36947396 563600029 455478347 937704327 98394484 147500751 789766719 311428685 194079055 604303618 458044559 573538699 890456139 387113946 964304902 458927445 790454846 423479311 151407318 814934686 533376324 180863802 132066561 366139337 493205625 51613201 67556169 352623577 420144625 526542072 287061384 424663106 437904959 648855059 489547034 828980760 157837743 140675024 619573610 895738585 36193183 372280019 603086160 672024732 697005996 967226354 717792847 829718278 491717008 445741228 755593672 959318725 741625567 513360755 662954196 977712244 561438268 362085989 587886971 9620205 942162840 294845171 288487026 683823487 137641129 747406088 561178814 540674398 916231779 634128388 206276598 369159882 825072150 491531938 846419461 610138479 831204766 560399728 757779629 518858174 98373614 497315488 720186361 932188564 570079471 397034500 751994489 868089609 768939030 688155004 691572872 6468301 253132545 528228004 702444554 915887614 391010170 560285292 726461918 189014120 809234269 433712964 487456067 65757404 857193171 100737487 441601753 418375239 769997524 605360455 645038989 413847464 615770747 879862861 402935700 114279343 778701720 779217695 990380611 295690865 589784637 880670302 67031480 290207364 456030990 486905874 178625674 241800835 770886230 452133472 650093188 22237961 44080286 168448957 800841540 543890968 119711388 470650286 482027347 783609258 482071273 160235917 142879978 702575161 310672783 166146924 922830089 372980686 323492320 800250717 803521799 998336840 838843347 338709053 233603311 284992814 874618539 344106362 980016369 673268715 189351302 513650678 785817266 861924272 860748373 142544885 344523667 501612150 888430250 326139236 646860204 748928552 910348119 17984970 836287988 516617465 479226580 522037785 398097166 705475721 163166385 620366572 297610688 417991028 472623337 433835564 167666362 423314119 679073527 141207633 626237986 807679475 399881353 499510132 274741349 680173993 995409553 300075082 666714238 169833696 426094115 54572247 687379914 785351795 239891783 912822205 199730482 622680750 287107229 344309334 231031119 893978060 28696868 793746682 373455161 689060656 938223786 55211123 871465176 272508608 450400509 490192226 31805062 272371320 970798615 60537142 584691875 339887385 643702664 110160186 309663521 634774883 611045058 231881983 880749205 544600953 342808460 702471183 230254953 20824763 374145784 801794699 298896240 329018371 134055321 867970491 119648160 636301250 645008098 37858380 148648034 128043277 727018146 798875538 376499356 616200941 674002259 869000020 645427299 144746492 418932585 131294713 220945099 303159109 600752079 573883396 381422910 237785836 513020661 970675087 265399749 120844428 77431053 992276589 569252837 660419513 880731651 423160575 789071316 661042699 605872703 298970314 278314466 184475560 284838246 368113227 64657039 901630052 55046189 756834241 842378401 554646913 863643129 975873598 190233009 674833237 701795300 952614862 866566606 777705842 392800895 512955442 821406615 881882655 998147611 847576649 371799949 205807274 871908573 381039038 784495877 608661014 760453158 821372075 276829276 750010958 847928246 280609709 979398555 692660235 110515176 681304211 789706163 501147914 697189507 704607655 351943488 736140838 804777425 817244811 587459229 119827830 397047348 899092063 906599176 156574605 276720084 634346678 936211243 714985882 679992849 729576364 382257521 502651814 766607951 80821391 980265224 336991825 492849422 388076310 561735712 951460526 271655589 383088189 853962278 76794602 529894376 374262308 878217842 148693867 707678184 996512883 540825187 4838903 47382669 443380116 313961823 555054709 976171057 597337256 908767018 891814044 933702002 545383313 189999712 628461698 922944697 152919731 401810891 553835768 694825896 159120991 825331118 848797388 435610690 517984736 75064677 909308601 438205682 261601793 760191207 436487910 487880207 644338373 393500823 653551677 553933313 995813852 872409872 770117878 164149965 988346988 88222727 464405341 710793390 66542482 722497846 300006653 569948351 817981262 60827690 498815988 292509899 289804929 483060074 895519510 832633614 294417185 455113516 281830509 374017336 616390184 838227720 480621909 572762822 373950393 635680661 893414595 509158059 797794752 361474293 552542058 741201447 516740384 956370685 321551399 106196316 890152552 312804875 843985182 215650745 34110888 896542766 386218302 359438934 881773864 70456065 428514353 295863294 75654260 995219341 889219451 976209109 712640049 309474555 356810265 644886758 920296198 807436390 804546579 550936287 792079232 8115458 96739944 249224262 479718846 561795425 779452371 388966442 709285430 911007581 645192124 379659954 419144482 257247531 245762337 483911886 148345292 481326445 202030012 114147836 617832422 369069127 717166495 118687511 161992240 994206835 156472580 39405339 761691509 970819846 948634764 732452509 148692205 43904740 177691725 155107316 73806053 793608227 171208730 333566885 65476487 678315041 313356022 117978911 68542752 751782316 215248557 549340214 411094472 613443014 489024165 278629555 539079601 851032220 329024566 93551344 366289006 934300073 64574076 109489187 946931875 583150181 580328231 925235993 428622812 293704551 826477949 162600807 727336029 374667233 94662791 82597293 982306030 479205706 394861007 626429114 857218131 114855076 997479461 251914142 856314054 882267228 287067885 161342110 704134311 855715246 700051526 836118832 926260689 542041038 212591803 923357532 70365860 954276723 37105850 200602056 343291327 339741484 75949352 199180011 339922293 62477317 627734035 170845184 89388726 818670214 746463088 522477456 520843038 935047807 58539213 144505298 2653446 45053761 309917416 316668384 846574671 494540578 702733436 558309832 493114760 835611286 657797305 421394901 868781886 289323708 111800156 125031293 560497857 16278788 487653426 976221108 573819013 900672529 332048924 534466603 354389554 627659484 104484317 955493335 556468713 527783450 160467354 773217222 502840345 149430197 952233312 789570668 190979047 431973 649796950 910455001 11123739 834299487 631902629 55424130 622962738 669226378 557371314 515876837 60611999 149414033 976484509 474031035 142346622 323809492 391695196 411087166 473751538 946134646 70966120 772888460 33066372 509699780 404225704 158704339 635927993 442230743 848785622 29797357 926876050 687445813 966945000 359777921 851509183 52196736 887738314 38419498 604074811 841938259 101114989 665997037 436894720 181365167 759758336 126025168 296320297 369760762 281236720 441608828 572797277 644770049 728540935 144678602 887127405 692106855 16622489 108591328 780068311 713218563 601272292 181491779 366346633 774625371 396626577 635422774 693111007 318862064 305970612 668459933 332730601 734757582 310397842 263556602 522557065 135210898 522754430 600612313 683183973 767175500 818100887 693265804 970891339 932595975 547440772 363787366 923131093 595314206 621347393 688491958 284132424 65437110 408028625 894351405 960328913 231712743 978031886 309060159 731346757 13977158 439823302 753253949 181438029 973562893 16335326 471557730 247002117 778249133 630917667 990066194 299512407 258703738 410745546 691997083 838054659 167509979 877155127 286101068 207962948 20556244 979021924 837750058 814176834 200327382 467109546 517922825 657256910 440477239 247261146 326304655 577715643 770749 233224081 231006635 502889280 250901393 314852714 877048090 722343646 378698580 58116083 816386905 710612757 15893359 246571863 727250607 836197614 815701818 441106370 629323049 637205832 790121871 659704574 390929387 721964422 117741862 275452903 24887486 217208481 291648490 440158860 722233938 726020273 604165770 887381579 358066090 376064797 823903776 851093279 249618448 152720695 861022356 394037930 141041267 347071846 118225957 702385437 922008030 179282264 645452912 840645603 323320503 254502472 974098106 163863169 103739715 852992630 64275683 284570450 153542472 967131588 821246486 245189949 683944589 837595583 746772936 445344340 992405431 572397270 806090491 259621773 971057645 311847158 448376392 462320299 430725657 994367356 558361657 8548605 231942642 656211972 332702752 801864452 461992143 41910033 238969754 147893073 644034102 423910237 70597105 934871877 110787029 159903235 341267113 115878786 321685371 731094958 137675264 135014258 264016403 707603664 25436232 690518351 704993450 739506232 739033165 355931581 389170239 604617362 975554705 452063213 941365496 654313152 475674971 393190546 425670381 547243621 442180807 889377308 230903232 96770093 769956562 265003847 798106157 188681804 895061836 178516070 382544946 404753442 326623275 731927053 78615913 976735422 966260761 835190656 756788654 528064289 679661791 606086990 864090094 941720125 398289288 702139504 819356457 116118128 94241012 889824972 616414352 664218134 654676474 490267655 767019186 311802300 527292263 62857517 738616584 30676686 24586484 873739632 994007399 498703683 447591085 759786357 74618913 448304578 758093126 561320854 619787725 233734522 148090205 696600583 957246084 441227806 24927017 290660764 331685811 580888277 437739252 497042606 667546910 22689996 801096531 859568350 686902012 713216806 495279658 476779841 775760776 327090396 368553594 577594456 630815944 663849750 581874120 569671443 83407091 270224601 316706199 925507113 841226285 930463027 552117280 681896617 620966619 662986100 668965096 939490776 525007816 367298531 524424288 384112257 532384754 39359632 55271403 575308533 92884314 405021067 276456485 464887868 430785344 49313580 372539396 459087830 275999521 549514703 866082266 802509338 545736443 914450821 378300549 946626053 637086130 88972775 241734904 931957959 191678302 706674800 525703311 610744002 553548445 987530786 418138888 684067054 220088825 240584448 340541566 17902313 740753799 966235141 10285955 709155337 935198273 839765417 784830878 742112454 125129109 487675395 863684916 895419179 302816479 33926967 160278139 87128116 343943927 176012380 435329963 818900744 971021191 142677709 187674668 274473394 177475232 270905211 556585004 345600595 332408526 899202234 396498265 521435760 593758043 27159600 806975992 732483354 449830462 801812099 817311293 781335177 368633544 107222235 324766720 328431079 838254735 966257803 605776643 30504258 907078308 874044675 315028254 656804184 320429017 975280893 269899262 289687523 87154983 430586458 437477862 139090561 679325778 478799609 281516791 365935122 810924668 227562384 893141303 145224667 441039924 843523655 891710716 587773206 426858606 729915207 670106899 295131530 665468311 830037539 847447245 574172705 948769646 842916174 172845047 192908685 751559393 101443354 497766096 757344724 581899351 500947342 931294191 612040833 527349326 516911617 918300494 890314655 887249490 62865481 226726694 316530717 632972736 831818735 747524797 61276951 113296483 357133795 5315912 846471970 410874824 619241147 170861200 916425655 935212848 912470980 723424707 435222825 869735836 247614859 137867295 653699220 714334997 682528690 933746536 358839780 361713187 131298688 574210554 567837826 638019596 476467613 79954279 800955198 105117925 780358322 132553447 415853490 747782470 306583956 776520703 617224519 919131721 339236734 574191701 917817447 755471553 582046659 417454900 734112243 3942177 234466059 406088091 164753211 127901507 571469624 757995171 685715047 235385696 53947384 484080703 717180936 983858644 171367514 268385442 620987293 960718330 930807000 147091361 689295100 227114620 701303168 275261229 941525908 758633684 138952452 80610905 750211176 404851995 125018424 236159938 245394941 70724493 204483760 658173864 828844053 915178316 126945284 982220775 863922252 476205730 445475147 311097323 187467906 21544967 348352477 146211162 934650157 190156050 780816774 700576223 286811051 179354245 757321728 857247192 829520063 370964974 991151164 818259962 927401620 864240410 883745945 594517990 213558385 293009779 488544365 783189739 424529101 789540297 979708364 863138414 606818719 946396992 68321831 532130274 944268256 775701454 39815542 730377113 913072704 75556678 630708472 672620642 915296622 255198044 332179984 491883907 240518163 847821160 377630926 304676269 916168565 418917117 794832838 565866460 498300535 807890851 64277763 419161483 215407722 533604969 98809333 795988072 151940595 256219811 74016582 393050688 110305781 111898335 52808835 232669373 865140967 941253274 430418409 179830772 38646494 13643136 254500389 748546145 619149586 521147759 270989111 137615084 188910317 463027976 489898903 216258666 671916714 652137783 620164756 33974492 267417131 172516589 80845239 978821968 399671516 511792918 862376474 510395955 898849751 78197027 299105923 721261207 161622137 907532734 467542010 21222466 265737701 644898397 821083399 543343206 369661319 552777793 842303578 57464727 900990892 908470799 611845333 58565037 920929725 943903377 416146164 191620996 91034816 762455512 540641199 618921140 213801530 547212301 189842116 433021552 32570824 976702979 73195785 364852870 852720335 479638244 248380713 8558539 482718607 993602603 536272969 856441858 558602179 302640161 36462960 459576132 116309894 232032394 9357522 525429789 735157588 86954368 750845667 195147556 614970485 122338406 492415409 864254821 351395280 785935124 924519640 410024813 347507700 484363332 333923435 176184059 741245802 642591934 206251764 142044288 133615645 221045096 442771897 231361394 146898265 177431401 634976668 742980282 556768272 582538292 197082730 725338965 38222423 902413896 767661118 478266594 692894010 519831734 736368197 447345067 193492473 44225922 751916442 442144138 828303710 626371068 993895699 887557689 933826351 475234356 562968616 489674405 643175915 763183009 786263549 921453349 581198710 573047131 353080377 640272212 570179090 455225817 816990760 809746475 62905694 164937029 873671023 347766663 363741899 769636953 446714747 104848257 318087186 106409685 999453374 684358756 781168973 72641019 734304410 697950346 655818163 271240971 527990853 796831450 876871336 877103293 523036354 687599237 789353072 560176704 892006145 988990413 469829473 110219941 235781661 874120341 761850475 22581358 328806829 549618283 806936001 546493407 516995111 491579887 914669439 694007519 763171232 75573621 197906332 440173633 428504926 103085415 749259496 654511466 473038371 792927224 732567581 159712473 683611519 504051943 857921777 943950251 657039541 725177532 554387794 365371052 774767476 777191066 68749811 948318305 479670223 523810035 859404639 126205194 628904816 444693377 532638006 822315490 273538768 14816299 428502270 571988167 68398798 392660403 398235171 234851452 116321923 369417134 510029906 167241505 437282945 253156160 46273180 184334371 531066038 176698364 202494606 182152818 13632897 928437130 310643980 995486794 694338841 449183509 213299201 562409808 98527681 324549476 782734414 479911136 98548125 265485884 589986084 40260330 360945061 714023879 370474452 297104795 795326355 747246486 699909776 163721149 275426176 955248117 144791834 44039645 844565627 812247219 840106801 369327619 337215773 954831045 703223939 220520644 843005335 993377253 675817272 496871290 475119174 511732232 822949608 361354030 244332974 841598893 286248237 190252698 363064487 51156108 84267616 335939026 498883333 969507402 271142821 853777633 188424663 672419699 395241016 657711471 860005300 727813475 779550948 272393413 103112386 191917405 937961509 745581188 656057640 901791816 959935893 179649591 190716155 772922880 29727038 654497406 996280374 9573229 624323623 683363550 265121376 494510703 461180706 234066741 66401729 130510958 604545399 625461010 60863362 678312006 215535206 621026550 414521395 276122425 861004703 692866508 318383830 169136376 244068457 835565536 783913920 487315208 119679521 813759962 127236625 611262491 450069930 334167868 234906537 450713497 221695415 129061936 437451701 461760646 687424964 581455635 15459798 841014534 292276203 90820905 675449100 684466432 451849656 525112704 349144887 401331380 359888546 26675219 4556910 87622643 759063957 475281591 887062018 124126022 609338021 416028310 278615232 110294937 749272280 90144665 506981197 623904351 301569836 504446830 222389823 389649362 762271038 352283781 747671081 908211758 349841857 522499596 663334875 796394692 131248317 548124375 907104634 122113400 78839476 927594402 407452602 650147039 881794092 450006846 651487450 555223477 43105045 849363975 216530089 102611451 396555167 66413000 393610912 352859935 544132243 379229180 933297844 561897654 843763179 586706862 592675584 411205462 103839235 364544865 281163662 848159607 704403897 283405741 734528859 814334988 239177350 643964310 579740762 864574880 156588835 422579134 326533652 848955235 380208586 771456141 942012025 275701620 987007022 18560330 502728054 723491976 794758400 188456320 349750994 902180689 408368726 77835504 602153630 498457423 995967814 926531859 583684270 210644081 230870981 5693534 99126713 146359735 178512643 423360936 154759612 117393923 661008220 276307623 367824105 944136549 311792960 548610618 287555927 926125958 473024373 98402265 948395686 407999419 414928206 37604507 354900860 439194183 628313375 905773552 930149910 378478545 132159947 987111047 178579498 738628537 901222123 1772213 640940561 185432318 121087005 820836282 434415663 24565107 827175692 76789697 9753716 412073125 459378743 844801034 481082854 648153286 321109839 493449962 712372868 896948848 521602334 767156992 815955139 204325622 951528255 784000368 479387778 723233851 921024570 248317332 453578786 210293250 184637303 798406475 985170079 935656056 771026068 312327001 295992309 396283833 618243119 824713936 323094168 101274553 623736500 15090412 263551191 325943178 889633685 443229626 391791355 154477291 393431681 524717218 260292974 564295055 538552473 840542254 412657655 515235244 272099227 757827963 717843832 580356187 803196542 35125954 592596323 844397889 258771859 77236786 435570610 548333927 287474567 856713106 978802462 719276994 682250345 686055126 239223006 981701909 943897663 610711992 983842797 563674047 212874349 789816334 210171707 624269357 618259945 232300998 351604918 436746685 780015205 624096732 759295101 963553511 722253870 994018195 522018822 526468595 170507239 150241858 487798751 627052648 653598771 536326980 972180637 501666301 404338500 2650721 55751923 937776939 218818010 894515699 869829037 334135988 834416298 78388319 443802697 236677618 26768426 903541032 493070424 477885442 491488420 614729427 125444050 330036260 784166349 783736909 467185402 836104498 403810419 474842227 862914359 558021491 276895474 397312670 180583210 854659859 241349145 158627534 849392323 195402495 352792975 203156044 404124659 92512364 159003803 814904565 662628287 772583880 573838266 197762313 388466538 781647737 632371978 830918944 484752496 39849639 664449566 322943197 200669332 459656141 845515315 99191340 876243273 996752154 103819569 71250570 794548293 587570549 408434538 317972967 756078163 6202568 239700616 476836995 62160936 740183084 343787768 914502991 92403218 865349215 369023774 7932873 159382436 177451979 816251490 34929272 932801373 826127898 365302908 828994528 854554112 112233830 193094122 787791421 242025365 553106248 655341422 984329858 367217604 363654285 694494040 820520754 383588256 840010714 913778780 986944435 81824243 670525408 148599694 529752690 48661933 504253922 322748720 587450907 337836359 527146833 496842054 692991179 510713405 987539890 941249215 585004364 851051241 279951646 768497561 984702548 790008559 499920003 767228145 63335705 829290303 957614916 18461446 943301682 839724978 298746650 154548738 807727622 294431736 543874843 761604100 595372765 598285698 742853446 637903139 545662519 520734290 60597303 553053367 956264566 491999853 687189227 658191276 885417815 854361992 860887928 273585296 175683566 702209589 511950279 944357054 778828430 349034799 45342217 157281098 448738926 975963079 237393372 962525744 272871496 972032419 605176259 102411376 591207368 675900303 111775069 333701105 415709037 787658374 957506361 380091472 285136875 366369666 85343211 65624245 225837194 820795078 161571329 661738935 675012989 481451069 847206198 722432762 680131657 545310892 837475789 136501421 236268261 51578478 786015332 706994265 49316186 741105486 512041993 866807106 154450055 949963807 964215896 367022340 835580604 442439271 117401474 368105404 601436335 877216989 673154516 116346337 473140170 744095623 220456433 537788040 790173016 936153154 988942274 7921333 177780344 939763534 499004406 527113898 579179410 700564888 574950754 843072281 181562673 844883763 888877063 881903166 438136053 554266637 886573711 390512821 150619960 109217529 690102912 6550065 89118328 397870153 142446716 578211434 148225646 377655551 110030531 520973347 116110202 658292117 552251332 23043756 254989358 303445255 460746456 258949502 658526966 459505561 63218800 950862362 586548199 109248374 200250198 704235405 310207653 312281096 739681197 169527889 227054336 171295083 188493989 688646998 853330924 382367993 723869220 331228657 471117664 514694455 762802372 574619293 314534699 460290849 535186495 809492168 674115996 203964150 74217043 464537544 985672638 214257525 580906466 19756293 720386976 499493682 988912931 840377362 919573261 728610448 939309420 342533061 981911211 26370655 442949525 499848466 894738751 405091534 874022954 358346262 378043535 163072633 436868283 979524295 249065701 812777770 911892535 353351707 470275670 430423310 941304112 248760955 180648723 513017514 580294670 132281431 350631336 894689997 620171851 568796642 523402561 671106145 29796446 724481001 549075683 458736387 607411659 275739640 445936235 25840442 415781180 930081829 862654458 120547823 370408473 450443317 758009118 18076571 648348727 196007254 150317397 81001932 546305547 445939733 873964974 785314321 899902847 243856957 327741348 448552917 635516759 340842489 378479297 345652776 453003416 830877917 326650667 308218667 63155000 334140074 370980427 423445499 294216209 468851959 146086080 699768789 877731547 704561951 373791712 37086560 674086008 68265572 526770006 199905097 447462185 883937573 158089255 725523106 999707524 892582467 180772007 933760967 32072331 681413908 286706372 184565065 692399943 126477030 304541961 161925628 564148530 986486645 920021026 45439950 820035504 867367103 314899424 375690623 648935730 557656614 120391379 254916689 568329248 387443141 811954070 29223113 855071439 195202170 82678182 696015058 709715281 776231637 478363663 141440475 568277936 670696124 751609391 321552255 769833146 450424505 890216336 244824429 286428827 75236732 222599387 174464731 509392540 649090976 499076800 319456652 456256727 543802492 928597532 664310127 378992376 315916697 852327756 392042992 742886535 922708709 480583364 314033901 773157469 802108493 828323207 302666492 325825410 119978544 789910499 651944862 169683878 496620153 492251298 984582148 426734102 218329224 187849738 447119305 32371552 382064977 139375757 444359706 292074245 719871457 931148944 106187644 437252301 756673552 486987639 84180159 968885913 237431855 278573799 108182995 644415266 531675219 29341252 958061290 656876895 716470727 949545979 335063480 250751 289743445 838778215 733843449 168625710 570595685 80717910 741998212 192868489 510186352 10701612 390929386 721039249 962679891 693137292 630144608 308383588 503941465 663093256 512142188 210588844 305165858 448254049 559038846 350638836 746372075 742939826 545546777 952547050 420501954 689758073 754119463 50191990 704537731 203407314 95199213 855541113 989526690 954469358 39799180 964192417 650706794 507810535 993489647 318426303 467166758 41926865 814685082 885695579 336506171 481073159 951937144 8446266 638702912 412354296 664759742 894817529 652100518 560622515 140010507 34885569 906594569 865178467 583452921 282634633 356214787 420338983 735511565 695024227 269317490 472225659 866207022 71832821 435030677 858950909 802033142 916646712 896062659 240554746 977938568 270544066 918482329 32893868 344969691 531107738 695615247 282287162 758996881 155516272 515574096 257918656 646673721 718572221 28781528 14010182 43297116 530386681 336545340 349229974 794008774 447927963 778304001 191665589 364234286 369054470 699028358 695193501 129376957 726843291 111449830 527125768 195573958 343314138 548385446 429829418 78072866 438145599 804917587 927156291 972559771 447691449 153879414 695386651 37374909 146535576 695459671 648582999 345309659 603636716 105581942 55936260 848815001 430385738 535799798 385049256 906221880 353562759 348893798 686240144 977098426 557793186 656910398 863285355 798554727 782007561 804901823 230063320 41307590 515967390 110456387 93064004 632726893 840384502 52985608 859606816 250284784 285618596 293328545 720930047 996618340 43057805 225233072 53563394 105130649 970155872 165082472 122009778 116089230 790338714 344132181 435388787 427950881 548349415 897534901 726145175 942616933 398801462 261363155 197206501 680273653 189960191 215211139 367990897 336712589 293631090 603747352 575212505 381379611 915308327 585719499 828015501 825433657 211676163 689482389 964992611 53491350 49330643 129275807 882633392 15979658 941616870 591927995 385905254 25830069 634360111 654228898 869705972 922854730 166804231 672524654 15184575 151777623 935029907 820156646 296045226 93145041 889275195 840571267 364533301 775955247 466565038 311008577 499391691 252005931 946597299 650287556 713948661 669171223 759483707 668263532 314588761 191368145 577627242 868609494 24182504 251484289 46963474 305566056 668187639 190849182 133867003 949285242 226271473 185270449 553566664 621891233 516437918 585040919 202226777 54626406 376467984 241457377 67156052 144440576 804153686 691812349 27466764 441783693 409581627 34305461 722906588 418935107 743452651 121538520 867860714 578890577 400261268 533518963 346980147 680064429 582367072 843263572 239300781 361670365 486017845 60899211 88840427 805531235 477694183 280654017 498705529 196838873 197989875 313812016 292050271 953292020 274291365 861753073 577776436 161459240 953644530 339909552 776780585 82405278 289119269 444564011 137334133 999767668 490761471 643543153 235020239 340129102 270093899 387319559 597242984 378476162 574232199 466305963 350942978 337236027 800296477 121476056 3223758 726512777 786341874 737778857 667756994 195975187 132714452 680441903 389181122 152637715 339218147 823202428 427313253 237194796 260928428 397926995 786669009 243950777 773793391 101567087 679022555 856260135 881377448 718512502 100365233 87441200 265079845 937189895 870957410 432040858 871276515 141788429 104253095 467975602 423241945 452418830 520437825 361924667 801474716 566822878 315602578 227022106 527455186 141360240 901531605 514585185 231752117 788373787 752826112 440404691 414267212 930354723 350653691 512191872 201203378 31163769 345559371 715179477 220093761 841635213 678298848 102273902 265802411 161881130 61486013 715117079 44026950 388378915 943595424 384343782 93717514 85071574 768404410 817322840 154057060 36499581 820223909 495918382 768335563 349929367 518472422 170470499 655266698 749109357 106985792 416582914 726151348 297811535 192037732 465747050 847738955 80867218 373409164 332081589 349518872 936561598 877410853 444720213 425424462 162076434 951604137 523107176 521964392 371003003 988624433 956654825 102636665 57844906 899725350 624341734 583951558 110198511 792215121 195090039 835580666 37940740 269465769 14931989 563489463 398320076 883274719 913504838 27562529 277048083 718024477 772616768 93695392 86803551 284382511 951126696 646289768 946136927 44377860 889261868 665666007 776080129 946888870 982532423 180066999 698888457 890517398 106114360 384487859 943061615 178634204 812361174 418707461 933112766 888346773 734755233 496846587 818458852 524053902 846168593 573679695 930475258 761293032 846977850 82644464 904811912 299214853 942985971 590569428 120882837 53942026 167323474 497512784 315287625 671477228 622170541 232795535 560234064 519160927 368994006 984950033 673294534 425039431 392455828 328406427 623949285 784057555 393255840 915305677 429985226 488415748 883799370 176339667 201144617 422131588 623539292 476118440 192320988 82990007 770204491 51390053 48877414 403694915 256495788 177060860 516830894 785339317 706032669 902211456 835100400 580186768 262924306 322650061 69179494 504482454 116304701 718864188 291096702 473171326 821416512 471053313 120585722 213943776 210409717 175325346 972437687 864471014 730231783 785084259 181617756 790210649 376267538 930186397 525370538 734448841 769378610 252872029 656131296 841847595 942656409 520243143 379217795 840620901 895400305 467418111 386627745 393471101 696399378 384980084 831402436 511943708 862530 56267856 851990979 48694483 358686677 506476464 690875812 504865344 105816981 119539126 263350362 857952105 526497150 933908606 424362058 70100947 84899107 762503916 67036308 431014060 674689659 688293867 625602247 235238435 3669662 440744859 28871346 904963427 48771317 531431589 372848257 68496122 197615437 523232498 719958273 684847718 737983674 971718128 640275368 287726603 688490872 330720033 678163234 119765451 887450031 92863134 135041928 299296746 126449636 163327674 532733013 151619133 863298831 704411829 427832340 128448111 464818858 186961650 345009379 868990604 705363500 213365876 428167241 125352456 820277046 316642601 594867947 612294982 786180786 895141707 992163338 485945777 908651297 560452634 742196698 596430266 34454513 560591963 590966426 625156719 738373862 904363460 13744665 303718469 759084760 605023961 757030200 270080333 842084834 857398111 903148121 542446167 651161740 669713488 26287547 625404876 101948182 931902400 161038602 665849345 893493364 605596090 72357357 499027677 662551527 162307646 471826992 173829352 797760699 598206197 581020288 457822063 509616081 841235481 493179887 16334719 259581351 522618224 247277036 174851319 705393759 187625128 495113653 1624709 909158430 200968271 18219416 839500180 121288563 568955127 823760980 652700997 724588444 116715825 524924483 635702629 336840016 853911642 420581589 500706470 82181978 919024611 187901630 12559505 115148649 464952457 453637005 694513667 685083860 174329881 628383343 382021117 28053987 943110906 860577603 825877632 206034651 826773437 930974075 726926459 735568242 379707986 38138309 917179589 524700195 593561697 300360145 846044309 251922752 737179806 902153992 256654020 453113636 852736970 577101326 284805184 462513635 899875795 908522083 749588975 349697250 67138076 187565371 322564874 957101303 156285780 645811663 205857641 505912602 109436968 43889054 555089333 306844856 661351210 222879998 228174617 357886866 325035103 428047375 848534385 602926095 611209413 228597174 378847895 329358145 876990721 728525829 112866418 824496559 729944142 349891670 66086728 481161093 215279669 326583583 553433423 972785628 555956166 401822336 42185851 127652664 299482338 13970800 483615615 8608055 349167477 541263723 741172832 137709471 954126294 707811181 76166905 246295004 186564582 953270632 717513772 529358612 119056878 470881925 794655042 110400185 683398511 443962069 259161653 586600523 844939102 905286943 533701207 13684669 660519850 360398286 588597231 25617657 273298613 729632300 659452184 574543210 367092261 785328600 617260240 451072595 927823440 947445308 831765251 915754406 548720007 678544282 536855626 63265217 846557619 687952888 870741981 136824671 231382602 936122208 955937451 552333729 883693303 893186100 173084261 203450582 341187158 772384693 580422820 738729887 617316841 161207620 495742139 875309221 657906331 546151273 741657842 565388680 602097238 35621531 921949679 646379906 651424165 714985005 502134701 702915536 878905965 117277215 336626822 319229124 748250041 512598352 955511095 908641072 185203257 496627309 112555770 706193963 54886686 907787166 319703909 113017007 892456976 942018073 409060295 516651773 228924598 844822014 436477890 212453978 788467959 323645457 720361643 969955351 181179815 225664812 971015186 805984560 594852377 975437113 927788412 545435998 15279901 134797208 313933516 138082011 642191015 330133611 767298024 507089179 300305912 933454804 885170736 971993275 855494880 270849287 887963709 84782489 271715208 329875993 346091726 964747427 84644073 97395967 270937973 815387559 450946608 307687792 399764542 413658612 175629042 765249955 641610565 530585718 787589298 855762785 656031838 742933407 548772310 346253634 83068994 131755675 933298675 924899269 744224667 128786733 108070295 98191442 850903513 7724562 740378245 793423017 514820456 79597498 27498260 907305658 153256691 817435726 131683363 894840401 156122888 593487451 298757059 6189917 5464555 557043358 877670621 77234906 131607320 364072776 646284465 831192298 210058564 348165736 496877742 215154254 847461481 872690564 160656548 960153731 749091710 192445334 569600276 702618809 884852192 276445246 914529696 486810315 522103929 417539603 651467266 542525672 607261929 341985352 484752721 890395872 942721385 810039419 836019785 884392184 576365894 889076612 211503490 37214194 804402071 59370921 960229586 57292858 517493217 898053109 174948979 62774044 683914362 152945116 405217664 374932621 573338569 892935826 30057051 278247681 737723161 263008097 601537483 776260175 354873852 828081029 579828284 599794373 354857328 907530222 78365167 319582138 55692313 677168573 540996598 147509009 674916535 102686863 536697392 989654525 56399354 915327976 75199585 661182671 609975303 177424277 748853385 638261165 657581858 649226465 225560220 552622530 199321686 585003839 723399321 496275708 219495894 730083177 521625563 771123837 997118417 156748420 577158780 37903252 144898746 343774659 645310956 879065268 372404844 367467701 535237152 87340965 46386139 94690715 583960395 313087893 105576030 544357185 733574706 527296432 936907055 766977617 900915915 241667295 345424853 775337463 448797955 643709565 900134610 354692058 517988941 291287268 717029064 638370408 933754080 972394041 377212795 798507301 34960971 182129295 817863213 228313559 31730839 60832109 452523047 827690062 365118068 519203559 505971846 256141355 523427696 88928534 896908340 218810157 856031545 993666098 849425872 277954774 10131720 658531149 393009309 700548926 789526088 324227008 249339187 601775770 905809432 645028258 898282819 573068760 832959652 467241227 631733301 890633214 37360600 627031333 637110887 266808369 893722489 902506066 27019542 573408088 807814857 53678159 295542810 737305418 733922780 815099295 614267936 847393217 526391447 967586068 964872846 727615432 76139891 710148996 613197607 410507315 693241962 230019840 322126180 309501509 591125001 227680156 231961316 848877809 120481688 353094736 701070176 82706676 340133848 267589007 244128701 602563835 813014809 192442726 62440537 599071930 202801222 788457077 72563327 645123826 269708489 273264076 184356914 241683080 877158928 13383877 42949397 826927228 628228684 231221512 542273909 881553765 457488018 566933219 583564939 175307079 111480996 770179750 252315033 9470895 476865622 914991828 704789635 648066772 542875002 214018663 91237914 892571854 707343799 133488041 633818580 526251562 809249799 173336241 342539801 857872419 651009725 768646169 852448750 372999441 24646417 940562712 109887360 563076597 560484072 217820620 221814994 339601378 639877387 452335596 661516777 433056993 736066255 788535003 993810489 15514682 605841582 483792689 3987321 498054412 329273630 992047462 849775261 802684551 381109953 579275725 506930945 328167579 21097599 423214644 270212314 778860174 637244245 963084004 194420734 516331679 835119063 800956697 883804782 353036170 938490406 39809072 827463223 582029192 770202542 72166790 181318307 618923148 988579977 930950189 1986915 647401004 494815034 984876614 214830457 356979040 144377918 876591401 856865698 986757774 859929072 533071908 651170114 990599410 655620773 319508839 553793098 936162070 940396961 734450547 834759438 927802139 319507022 253486469 136481884 156977856 641027829 20673669 4764386 989804741 863065898 596502438 488237487 993562175 311593627 13212464 436419487 126873389 62051396 818403045 183613241 682818970 629320625 515649762 295238558 416293720 38428134 517066668 485600471 215907219 647389619 259647431 183385182 849199189 216224124 850195598 859104813 528775953 527596538 137200399 727364019 846621830 137173880 20172346 220861109 316505637 60002686 151674045 764303201 329914625 301395179 910494633 561332037 947499752 764653988 33391601 467636479 182694917 245388501 419391668 683303795 617030495 801263792 564359270 334248716 86526793 346380298 688522575 180745947 479188753 587848149 960207722 841260564 22221531 347296837 470551743 414917201 906812743 84029384 376393745 459834982 45741872 179707946 642673940 356121067 892567995 735788001 666470368 990157704 470812154 933618942 661799966 359157309 19099262 197571204 325177024 538625076 873692498 396415915 460450967 267458187 858325508 207526684 841405555 231098909 658313527 848300178 53800776 145716727 375946424 953197698 264897847 929411720 4244151 192920185 8519111 815655502 71749104 766417368 903340770 2588420 926698302 23864764 380722271 855277093 499725545 116808005 169074011 240519537 33124957 915273513 578291978 608246339 179782147 534122353 546718142 719389511 267776968 953461183 565316366 275953024 100590187 673156665 356111471 733520182 939417668 529846008 620432226 954152348 188851485 350167020 259259791 383030541 154177449 477125711 287641618 471214122 791741828 182321790 352113277 858412648 918790774 738991523 593852624 662777657 267870658 320807582 734881547 383104917 598880773 547269622 627802245 807167559 820524507 438467565 48756093 345774553 260270137 343900406 118801114 947577694 213293866 639011811 623247076 249640333 351711505 918169226 523163629 421555334 383901265 881067513 186716070 989673185 621577457 57630345 222561818 818362920 594002164 294586577 379373431 578823839 163788062 867717853 111837331 867881988 508864760 226292429 159827537 621091791 533070441 562088324 689275289 19776130 256115447 549154031 247798819 631532890 433354607 723981455 666935173 578507695 478472002 933531884 69956542 614899639 703851715 900236979 191837793 485658486 842896401 665922386 886685264 756333843 547013804 1271943 419737426 239668212 70930834 251905363 249368122 730290335 920956619 612807545 413445321 869861444 939124011 561532640 505900580 860740456 545884819 162038764 216535254 549178708 609267674 389714988 709152271 976629292 51144906 131494114 120601419 945654597 896193112 644735399 319827233 123395932 721321339 931324948 490943146 902010948 473676600 908486993 755616168 589666195 792799623 514031996 873378457 4660893 437283329 289289385 133744257 289360434 579849086 722064737 616621877 398540577 558374787 915581592 219996695 792808106 825617392 779686560 804557843 298079135 84824326 976826523 25963193 699031631 129319987 72741010 735741808 378639689 95422835 19226512 164613900 419986438 587824112 245626605 278521440 302010872 664225975 300302198 680222007 250605452 590270443 91991495 913862123 300409689 993362987 812202152 811894833 822502491 406775398 810725505 178397048 897658270 51160081 899172809 668397640 137038277 77963070 770393175 62169419 497475541 766351005 227574119 62088657 396528542 888058907 423804093 611392665 448789012 590606553 104431645 818691344 495107994 343103520 333214001 946026356 447132709 355437179 344203370 736201366 752284202 382842708 231359599 721731579 63194904 624037918 420710082 322452541 307399856 15837988 142115847 961701306 580145858 694417756 365121783 803144671 578308594 25367746 273440609 576210307 32690153 115256523 478162186 916045312 525737124 21672648 28517624 343905506 680013441 426055619 523826795 817534921 100965169 834596200 813913234 896442564 172305393 103992501 225169834 120811438 396141238 360986484 593664361 924395809 478655143 813496724 951291895 770494594 755900979 39041593 277513013 269264109 589644482 781383953 315912769 137030976 563168453 834593295 572050957 873740400 89328946 364418050 800468279 416818133 911625117 265008159 479143929 783175790 650658753 946944769 717566646 850365682 265129245 553019987 700137365 191761200 278814568 278960672 929230484 221491618 951337083 94738785 455737773 457634545 630201468 836674763 696161225 285972873 674681350 107740385 938319079 992012572 748475903 861766040 691396770 859781328 549121163 149201835 230336309 150902637 703492898 47382637 656767143 937399101 861339981 492723175 95196027 467519281 594104887 115941745 539915124 486411773 37815044 295073230 578214733 565571811 38744603 593433471 723682234 18402018 42426393 69086494 265409599 153987855 897635335 268747923 862562640 225500557 881546682 843106979 491557377 178068564 533519917 70587700 986897926 842564718 373471648 501763442 869114993 60873998 295886060 152888619 50653115 479604551 561065592 466757955 402665477 630365937 259077768 967637956 7226171 56777424 400339557 476112533 106347321 936644292 495907427 730787843 338335864 829801014 910859425 583868247 598027499 653086866 31371221 748629357 699077728 412962184 238338980 501087576 703544335 589681286 90108432 939100719 572246216 235015275 696740646 522637731 427005413 222894951 496315023 49289408 758544938 78186423 12115704 447314071 645611533 788017935 747627946 274351328 811075088 670014722 868153312 85377846 298486120 804985343 788094689 245814161 963254942 539458572 176348405 514432950 485339545 784407170 559130560 560594250 537244823 346133664 261097069 944401497 428215616 662380410 945357669 550284174 961816300 670670315 417004892 743506496 236070332 350145833 508451473 742226659 468914104 73542557 527859569 981049928 68112443 345125926 441023177 924295114 970814911 100945830 578606417 250157432 819428177 848847411 220940112 450009354 605797034 866801564 851259642 911940363 829194939 588717633 787893292 318233411 134919905 912909599 383610090 110278671 931622627 813349445 738479666 936574173 87962108 238987609 394370244 309391118 8553462 678987948 273047392 489833357 717450201 294317623 84684579 306078794 147063977 22573441 348883966 822195351 337154176 705043630 235089895 740074306 786595743 541500085 18874380 586174317 244527796 546743898 918551835 752671615 276698841 820139440 100208157 171655515 471961823 585098759 710969932 323196563 264630822 57368387 373171108 371631705 440460695 818546986 416542910 834030459 601587313 378289829 951021393 232170617 100600266 999255727 258171950 374334129 163802270 832096883 364236490 388282021 927114398 552090452 840546147 656568616 888890923 211974089 593612596 785034032 537704407 890668648 462259203 307614092 516081373 8179005 916792164 926453337 452783298 961760860 478435159 780227091 162278832 664802414 705150919 171983936 619777864 657720124 458059361 877723221 761956815 921988259 277262486 836094475 106324391 174102362 496086600 148406080 565584309 219634834 875373098 870325318 539543760 889128740 968829160 962716540 276146869 768210917 37065433 902562418 873145371 821830731 469850497 899778808 731695034 277364167 559536911 785757561 446389152 427840396 336864341 316951386 162621835 667630799 217120258 698885920 588764116 117055672 366078316 442538837 281282805 379375872 27887737 323091733 864635868 28931294 868647697 162353440 542936028 387965433 168464721 28446482 989944356 948013288 904583649 45299319 759352935 435327903 276741587 324143447 699967939 588404094 158470418 834905972 574514090 823232059 429160916 156509878 509669989 166653612 446353222 842641100 543218736 165273308 371817347 942958104 862686049 911778089 709877153 248309120 825127569 41146160 148787079 596398935 44976478 502889219 241808611 385146838 540311120 426418684 717796933 575106857 118180241 51079878 423925735 984236056 652346255 737713720 501815523 812295425 349961150 651414919 500952584 619111752 278282935 469848211 48472266 512439381 74686087 177195225 483349630 326715477 545124872 305308939 867641656 858403261 508912737 390991002 999666939 518377164 800348704 447236659 829194585 677982886 888039113 904653010 625857525 751973050 293241586 75110889 769504967 572766117 914853534 412824763 176390654 651026148 797363772 27565127 796736456 642101305 82505710 413784798 896611129 567614369 115718001 504625673 794338818 505144771 888541944 588041257 501094578 561185660 496721903 593977786 226602763 858545189 646893166 359373983 417295519 916914287 459590650 872525324 683026944 219005998 614007340 896567089 422672946 281366505 722778415 731328401 605910148 955901815 745936831 50112365 783375341 253516564 657659080 25920200 845806923 927015977 817389710 771909852 724359335 732300109 146902405 374696937 316311875 385475255 982112145 353439532 370400833 626789521 863992695 411789087 342787673 641163147 990255951 796499988 702859229 400024821 633007376 172280049 468680527 466946757 544364447 19514973 682411495 385169353 318650175 258573349 614844929 683070774 294764241 64438592 906958990 478778612 609982381 757794288 813944904 925478255 411065188 120793516 365772266 938875792 407405972 763008226 478474996 524817903 882310200 691170267 103580547 742048887 409641173 629084186 481821401 557329176 338657133 107253670 696900857 268351705 911394916 927531460 118366183 557657243 352095223 123973196 417850014 893050914 399216762 371297381 650446215 722553030 457580344 481713005 782297767 696948780 452687156 370599813 141557972 150618528 401936636 527278299 279263687 378138382 358631795 129464937 36122657 230617750 672558408 863976202 546890634 612359597 791484538 701969890 735123376 370495855 812588316 292862044 690850910 269504513 91182489 956096013 210774830 342985418 563105776 305980139 782427020 683192278 886564411 798151886 772439694 467745400 362961793 338691923 764238882 605114162 519520297 8230198 882799523 725620156 248319490 235260778 815530270 7592378 683639556 246079557 788745884 284655403 777534828 986656957 810913454 712746466 993595663 307035014 273927372 851867731 710029138 529725626 216164355 88007022 34598976 296676764 873637914 102854452 987173760 937137465 334552604 449308487 59648150 946011185 739739003 40072622 696596136 352395651 292707306 521757963 115099765 599333250 752253190 851233428 69346561 429883843 555669609 83538180 201168042 388199141 892205886 173053369 815887324 716346799 849259708 899098508 740177108 998740996 803221134 418086712 825812619 999660029 477146232 910908483 561188303 517462565 595053802 595298459 768850799 514114107 306638375 113349289 542895020 15075429 965500585 247072954 513580550 494480137 456009834 899931070 238397250 338891497 138383187 736903065 217324045 841893129 583553063 71092164 490835487 184834288 34640464 210210881 305019241 135800404 180278569 100172136 45376837 12345703 301616266 916564728 817014915 768056923 7776662 339928127 973547870 811916449 961198922 555185649 916841304 346281744 995736336 627771595 384655740 904921590 140069640 116136769 636036892 21041929 13586695 26983374 845539660 379120655 120148320 934054867 410209239 753729950 691543581 86766743 427027274 550125557 822771379 338217996 400716570 705294214 639872621 701351593 394170716 895227817 782264671 87972545 713598392 358854866 668641003 405352050 419872410 642988365 475615021 461903833 148552173 535641934 22322729 896707207 94348403 788973111 128641715 429439190 392635881 52443995 268444844 387749571 966713789 411293487 705334019 76851494 472457317 392124896 998910950 591055799 183271941 768415200 36843577 632549426 59537353 779537051 803921013 177459371 119599590 134739140 990629876 210380757 430072693 571765796 285123003 124522312 484207971 652172678 934704275 426387925 470240326 629999 224290685 780004596 533403541 497545409 695764316 198208110 857925570 228003600 501118116 690933141 228671304 966506541 715612436 310463880 105088474 742418777 89979890 626985992 829916284 943700981 218872200 120921969 106933747 337643258 917082687 62438473 763510984 111391232 411781891 823224570 649919294 981051794 92356933 572866517 368366628 612235690 571180771 318756244 962159852 195233080 939752494 530614057 116704834 104377161 825235094 595243607 394643481 419323406 31563212 962574834 19347702 838486115 814166088 398620750 233195979 484039809 127227986 461937561 242931656 682502287 605608241 572001611 549695745 297064340 92139432 363554312 828482173 36764563 66168400 489905945 34805220 837251005 329426712 750351772 451205074 671985887 924145956 837459079 451714389 763022027 438245025 104982791 451164155 530980538 512232625 566774539 839049556 553007359 508095755 289236914 940694134 534245609 712968106 910338663 52794848 95892997 27453047 225332779 849599202 392426070 580952962 44532249 466368084 263280610 108781995 180004683 973096951 225037931 185607475 172350759 482030337 145603242 158855722 824424648 781010301 584793753 50834998 764115945 416966372 963243103 765621241 84564694 857579703 845566884 58836932 89008199 238013355 505298323 192722528 953373141 243305445 898555965 816855428 810975933 797611059 782782044 794553341 403124471 471852895 405843505 154533443 481474964 479618356 908988960 401568064 288160925 8906376 173948486 584645991 278072949 4090167 903350649 654469014 719593867 893525924 227128697 523148526 919995605 929333105 371008793 11290582 322848495 897010585 594714891 903990625 790730820 100954199 520547939 7123219 698625717 21425335 355312386 819811383 49372548 46882460 471579531 445600373 663782072 935875316 193837855 834239828 218030321 393165053 549629746 142283374 118747497 2401564 333275667 524151109 219540554 515000510 874006633 216641868 662082932 423287330 679178444 619844163 80252526 491973554 820890333 723869666 420843153 529430923 228835243 241213822 226982947 400807398 807317369 100239479 780484532 719245160 504206693 302102372 80264490 926439354 304504254 326430072 272894968 487527743 929868144 878481451 618989432 899032179 406957210 390975240 314569374 746415656 496358826 332793632 560588514 82880580 943335279 291880834 937505297 6202385 916220447 546456312 114077235 383864433 165114903 153449928 627142535 823867615 353449214 983146958 98115044 240898243 428820609 352212185 833603348 209565187 21945132 76554530 658578575 869060353 220274006 629900923 584487140 25957940 63139874 94520537 931564756 835933385 901736971 378319292 766835433 188313655 372583581 880492628 455813588 511839667 41897801 800441554 573469358 817794648 498464289 241861978 856166840 45334469 260215002 577382063 322075738 811964926 841895772 947481370 570854052 929560951 51366834 589728611 682294967 856502059 350137912 959945898 239966370 580677834 105588611 170843765 406115223 213287235 325541169 925227073 896939306 93518647 522811338 314006708 102797854 208216471 883576286 963973670 894768705 2677135 168467886 483979117 485933870 816024962 850380583 486437783 97042163 653168594 383796677 322595545 502155428 771690908 769304934 157322650 127655569 623004488 777900565 199394414 953580674 880156946 638760361 93430838 734980252 288523671 914813577 600321422 952782319 593778540 79815713 572875349 610693916 137161529 256010551 329871736 334974373 696825166 97983444 112151536 83907623 509880865 952144843 713402084 301131271 339256553 852763551 608458189 406921016 524376268 944617293 904412426 275507576 423591772 906774787 509658630 488345536 762877224 466782052 748370621 877879216 369601077 923020196 465861996 87149374 951173192 989769041 369992710 970492157 890523012 860416142 857459547 791244040 631705787 496467996 930663798 937156848 312907122 687751471 160162804 859439355 957113599 16641153 81691934 483545484 893376058 568130327 753505026 462365639 524231553 80798388 811359367 106881098 758901069 349382894 737394850 789505134 421634844 464116528 387132642 454030958 121377502 376299201 644255917 485810991 36871832 119537864 792052381 631630085 753696977 153255638 483656448 15305670 232447244 954561090 670896236 300538198 425804745 713884036 685083597 564105684 816033051 135977179 941634941 539895975 537664581 277804099 224520611 995569168 344240870 933645832 325878982 259246030 967967781 289590434 643469277 397982255 402351191 34296761 978021033 990754406 22632048 620396846 474694677 541966358 671528006 391827498 96311652 418211893 599545321 654753345 886332411 857818816 998591125 69028876 823571620 536846122 400120606 910563225 52005767 8122787 620585388 514362861 382775398 718538698 13148815 536493674 912224408 80833841 925962187 461086602 311534006 697159039 644878165 547568376 288932158 427238447 954876441 414984827 711645479 171237947 103494959 694016676 757825258 660211378 306840223 443703039 594554375 122649426 288557960 972667843 730615770 328380005 632104238 902499032 422244185 907256798 860550663 594133847 845354883 699058798 206633821 738561263 160791833 876263682 486320753 881988742 336913619 715311503 787702039 994274760 691069049 220036242 329681066 866845578 449280798 625714418 480647601 963063887 790511205 501130994 452234572 696410160 364729085 464874930 412320435 61261373 985941004 20594015 939067464 711723247 521753404 426638807 874620019 645854155 262962759 456201172 397392247 350592407 633762127 471038102 894436530 866863098 901828586 789929839 863878601 929841657 455013094 151040039 743121752 32176335 604979797 583696373 734596405 29636722 773691062 16449867 477100184 424069632 596178018 591326403 175394372 649517447 706543225 15050249 591933547 559125023 391979880 169492469 991076493 195771991 355089533 59088706 730341522 550499087 799899190 793117234 757741662 179420291 488342139 952836599 212547533 795003521 36999068 894229651 169250666 726553102 701002044 899740637 779124809 417550769 277105955 745482721 900257038 906547087 870859963 161111473 415496124 921067884 726812658 382323563 715670128 977735616 117882292 82800966 802231315 544304141 757024505 213495977 685943761 869940640 755843484 794296959 707126170 421088433 301126651 548745828 679812681 958741216 794073564 425094321 424947244 332147909 230202572 836472474 338876837 106099021 309281264 80402355 708804023 702697785 506901915 658896656 604956831 572582729 508380060 928108291 768524420 76936773 242937243 432461899 230446591 444745837 850151390 135979159 928900578 414938602 448287517 256370479 436986883 844907675 387552485 832500381 873548926 888568034 884706542 236363316 815073708 835997840 900999627 405142874 811974956 254806299 871376098 115888084 468179636 210875010 808862268 117520798 855905106 479752965 831283237 958384583 114801462 28356917 697398329 620210825 683558546 166346995 888411050 922583875 687912873 114702882 926570270 779341440 793689705 354224416 888281507 917414581 613013769 352819745 229309162 860001253 145654070 417811767 799096116 951457106 634201050 234527821 582381761 953500435 708792371 179638635 236313381 71979539 614120943 680523637 41771385 227097268 156672648 498331316 312133282 35092680 568774777 742110160 423761897 268512802 57288358 414406636 217851762 42348408 216637011 447989190 921484984 609442257 517167171 478297177 632186466 810628851 36501628 696004850 137217077 919897989 75281239 469302163 579587558 145330971 266208868 562679610 134640500 192477739 122200876 198175135 8436337 421366255 621621966 986218058 637582123 84207193 530124762 195276987 723615892 87934993 238143770 808945491 489043429 729910833 38522722 637888014 200785923 78397743 353419639 30359429 23258301 609545890 697374884 435731069 535922173 686037907 448567465 160195357 118580154 938094470 416629937 251595566 306405503 490011538 719723230 169953957 829589352 586811768 858505863 808508688 44380557 372253021 521852932 766851809 497757087 451746241 38785971 30684536 869601784 628337857 973102567 861504106 37022034 417510981 976043400 431824129 639465594 572408378 376197114 680848030 67974662 640655734 683172765 710558784 824444942 434915923 545914461 77589756 934672892 859897724 423483748 205559163 138362620 778585224 547410109 394885542 40821150 240506518 93860725 126561423 708000244 939475116 282350187 945973221 592660063 194202934 40561632 212118470 63394321 247297332 239178176 719434085 756458323 98881637 885695789 291484884 686094933 187548609 889619425 769030130 854664481 585680964 534693296 456950450 927246658 913642829 93688412 33058932 963416617 929153394 613512687 220845735 340418070 936427936 322790188 206612556 19089853 826622629 79111511 776752001 884655143 763574545 536128961 161057968 576085388 313504906 457781451 422779791 547905155 412261002 935550395 198644492 6607409 110064515 446102231 456736216 828473251 941826034 54091039 744433172 961039967 457148118 844879861 909552839 166435763 469915526 802758329 391396085 204776212 336484370 539121022 596230757 468353762 882908620 896283573 551125452 442392704 51180566 473694147 3307942 576535788 450510089 179392587 452218464 373896390 840841438 483322227 163843190 284671346 993080305 848234909 178632909 874966121 264597789 847513905 975120588 704652591 125881728 995337508 805473502 619407008 365227790 720783808 145887964 124794173 135219191 685492719 576608861 59084471 823847199 187983593 660766491 145411594 949715967 188030386 643604040 279838278 181256814 691102945 713544194 625551574 670868984 429388429 766712857 776962332 499397801 958818623 570402894 507849468 552304953 975539404 978998577 174114200 568385984 945395434 711004193 553637133 235622910 451067630 804009191 513587923 444197278 640406803 401710564 662005132 385556992 836087662 878384146 470124062 844059350 258831589 544979313 701613878 826176894 606133723 796668894 114052673 250727854 284321804 670432236 564417920 768224183 796646685 478761703 97251550 532247358 683378904 747474832 893783687 205616714 858949775 431046763 32779908 693829175 297658003 767385921 472538184 516892442 678137418 296922550 259268209 938807901 884885365 598665610 56929520 781369190 680545860 926732420 499812104 26675191 393670932 38234077 101634958 686231754 700870943 547841913 395430213 961684087 218041877 877766120 710548468 130432316 894688991 264962611 346155349 308832190 219996730 608008613 489949026 405906912 411489598 585944918 53497296 788626160 633971226 102724106 974742936 967908446 906810470 786494798 490311949 889141676 848819986 188067328 967257841 145074037 651622399 391456667 759035687 753942383 914002803 152782496 874842571 561281367 171117300 926427464 945856469 55302244 890275059 38167193 821092229 23073599 21405954 747487679 312772053 834889486 512454161 633437577 965689166 183200176 741742804 77259133 644228664 299918145 878307189 204076641 136813616 594723046 505043207 365825105 149904065 134792575 665957452 881168753 21073065 739481958 319457685 908116873 287701674 19173417 490634215 28335103 531079818 495435161 998327944 967630985 292212367 691850798 438196717 972226279 68237920 107803284 616248969 9908738 265099103 533676795 515654555 373010417 306022926 114716861 540882082 728033032 462469127 620191967 543268522 340240691 298572782 666654846 424918176 882232249 743158234 317188711 122720053 689099756 827227406 244514992 577448363 258338683 620759852 266683841 413341193 335224860 763684519 713678215 865179805 438417215 62190936 629962266 870693537 40465960 262690387 233778188 266222181 568388444 237718907 193366338 294887703 548992559 324871804 608957003 61905077 759695776 109673166 775425650 63345326 771469871 575510612 8576776 88637441 109577477 672439652 42247364 379375431 56108156 557696765 954475065 957206805 504981100 149161162 976889881 396383814 710664859 290885347 816041738 968157938 405633394 297018369 975212242 986717874 250095952 574120146 709231689 422785989 135807731 467276175 306641220 477862013 808362108 534763727 508768618 54130201 967267593 776033088 598350699 120518587 470440392 742265134 317507119 368459231 34381443 12872207 632625191 183539273 484124521 724254454 55302404 531282432 215350000 155147897 115350046 143417514 787706596 217252470 866484960 675853881 866642190 684426991 217191957 777916412 198816375 870653404 128983281 845326415 77590360 539828363 971598867 47697289 338119636 172941743 172355305 163890499 461166987 397061435 925687926 987354052 882638257 912256719 482285169 785947530 934191053 917516129 910110615 357885108 31730274 962183975 711947214 353714064 738990382 556936299 777040717 559229788 299984 469534502 45225604 873569014 923277252 392837669 384769064 590276937 741182352 953431718 487879238 442878459 29229580 579288957 256569779 603834175 936073728 543537444 997227099 992433170 103345558 45735665 15882567 639655409 145203882 639071925 44753410 359491261 653232861 818104595 191380011 836380074 210634716 828202704 587751199 779824114 615428127 911500317 368351803 619604816 410371612 558455013 123449317 917699060 215334494 139079116 378268824 214170578 715172023 317355365 911014303 166501605 48062064 894844432 782263004 451876780 855746476 504334336 707332164 445743225 607645159 365822961 233076069 901495336 473643821 946127173 224987257 272336389 619006174 447659941 626057806 281930121 298881009 376197934 330533560 773955343 461068691 671890836 872444617 708398344 528940142 879067175 831434798 629465523 847443163 874380147 742507850 312585051 195897031 741693733 267812650 939257974 538234583 891332452 274950431 456991226 980861825 750244863 17122906 317048684 988198414 955198803 314556144 697753571 714310766 742378910 56434843 593355883 920362548 163598160 782677689 646230609 992752739 971935004 354546835 441568498 895782655 76748784 429366908 151441277 759471878 127083777 427268492 8692885 273864169 391729684 884958383 760591610 348736032 3015690 492129866 290641667 465903828 466697079 472932906 609146704 900223401 370819690 410253259 821934984 816009847 424947304 289943126 71525211 693554613 45699655 871540355 241243270 56020445 450947169 684009788 931469816 494047595 538351593 739632877 705578990 520040422 686999497 225790968 35765954 306669323 299618132 695294694 487497525 907008427 583529220 629662955 871281222 54857215 24142252 851207051 40782838 794620337 847583458 114322902 825745548 211821324 972041885 703488748 346130625 469644870 377036625 401186069 247427676 519519896 479912246 997293828 876634416 16664400 262971291 720487166 237101601 783532200 493905156 938530859 116434457 651757522 783835980 705887080 140802768 275777965 62068631 341487450 783154358 294545685 474691119 571524619 957941674 988336703 963375142 259637996 120965687 460705579 48170195 508988888 147279239 19582594 962011250 54888952 747710637 27803095 696404386 371858036 125350570 993250564 989700003 749597419 28714676 646427828 993379865 794203060 319762386 993006822 880731551 295807556 64109003 215457456 863736639 118031403 749420463 795236693 886610319 534103951 162170873 732857359 647879978 158443390 102537416 959619775 140733153 387011349 958222892 558706157 488122631 665208112 384929064 771584349 307730877 427993021 947099294 141853311 227977719 946749614 131762511 473072723 451575830 909501189 162503229 381152310 814534206 581129164 442296106 984770417 257702537 921249757 148729244 738102246 710890522 906006217 642346924 59626389 172538769 717059795 116392258 678768416 61017993 786788419 460944331 432204173 848173742 141070066 994996571 743360097 374804362 290082164 656640351 700595686 401016366 312220748 699284248 300017718 958908855 971073789 243827444 78189066 716634040 701824565 855227501 770462229 386760984 193376260 810201512 959748829 12155625 445954644 111800281 669742952 43448096 568462322 435298219 628056045 302395885 234382476 761233126 942865748 307874070 982882808 327649611 135260642 378163711 660630425 384644015 832625104 171742725 369604828 626249976 970865284 606376847 201987183 909319806 51783765 591284438 821263045 313149448 446361924 773787711 955448092 26874790 34891408 925213934 661499307 665644945 67623325 385838508 816435184 204848475 457747024 64048073 732809429 614292925 746982548 931108046 777701446 883174923 933432089 105735126 172996211 235697045 717453295 214071041 529090714 205820601 869562801 680564982 598401453 889170445 772924534 345048755 551324541 986437402 597937861 242579608 998039131 266405666 57238519 532673592 631404085 34650722 215286274 630146293 481620434 260859314 99522082 446320508 820420364 266107208 515756450 753588632 654566858 57336741 618682796 225090340 594678982 336283083 239338111 57216840 893130919 822377058 912200539 285528202 657719361 851436771 990248858 193186489 704162396 163337247 187671341 448497754 523986975 510545445 661604177 503976426 212703433 250818333 682404823 635355436 90633495 690375732 906883226 5685890 639698192 147546493 730691262 947297405 432606891 920922316 30854058 220552122 8034526 731949117 421896468 106300443 13238923 464929015 529945590 333778336 535007021 343631687 974929951 180634672 838459575 684076726 916907379 687124196 686631170 696283391 587651226 523423690 66970444 884327774 735743763 578228161 710766707 530734318 789399681 499641875 99779091 450338859 345753783 909794065 731812582 740563691 761331177 757494504 226709207 596989094 843015821 705729600 489393772 15563721 65091581 81526931 424690844 813922484 489470077 996523598 5624899 254157564 521006249 576203929 481565371 347979259 78154818 568161198 411529704 629315496 673412942 632399742 289672540 182733365 629496010 79941464 937693532 512266231 921606475 465041451 341117220 470056605 178709470 649791298 509092584 957765756 815787171 356918607 353803738 948113079 581168967 690278652 908771312 919358234 693928957 865006087 357990369 279749787 262126309 50358294 388851398 311831741 800583130 608012454 207749686 57498798 141431102 895557371 113250950 711255933 129157470 148014799 18026410 398334362 892423563 353204472 820359891 438117976 11949268 301077222 605693087 626501647 724384501 705785070 49386361 16482557 277476623 676881370 807341336 180690946 673616857 986431768 158757440 469521865 283792869 83969476 249524880 711276570 185412080 362981489 397728248 48157239 232095796 134428862 295783015 791192322 204214117 573616941 936311823 549775427 478960500 758518304 574787845 577079714 636591980 620324743 156538535 411502011 93254212 413550309 667148833 64882190 599802356 701552943 752518411 72400296 176245080 728635429 901725664 419028923 498824314 744569720 480442503 245890468 189771348 959689908 339370764 202994096 778901068 163802531 197128007 833523788 242974746 758755838 610420654 893717739 913383020 474013668 84390052 900239309 946224603 756213778 138237857 678508090 522809890 827863556 871870221 427211759 647524455 819901207 620342555 559890604 630926095 244910008 481542648 994382922 635924277 188404012 401822326 133035437 924220404 920530099 652883174 599709035 343175259 215235551 95953913 779366756 614189084 598884220 917234131 697226598 507081482 931250782 623599200 11435050 642735677 40852209 767989747 223660790 42370713 59742227 269102151 552819223 653523351 811634230 268773417 374530829 747451032 154349406 483113880 821207323 321989266 907013082 65234509 755835174 337541604 259023149 934305765 679412833 439502687 864457308 203007614 467271385 434437563 406819202 382116707 729323360 146115034 196315882 650689424 497728333 86230325 968584377 81858788 924208626 36283633 882672865 755218852 623308399 966008296 503349084 977258897 921429745 961994653 441864422 542161559 408972979 999553633 925176139 746397242 506790723 588699432 26607370 149900436 511857155 851548199 992472601 834221230 863430912 242248633 912751550 642991202 525099228 530804263 26432144 736680631 825152829 277108536 273902625 22881826 658699272 878700567 355561579 859740997 261424899 545827143 735850562 884792209 41221412 152475970 793166820 701319231 444157149 470218456 127191838 781589009 746422568 653106559 229206925 473753578 947111436 454759225 226968092 528378676 90602059 691855961 206757325 207284527 384714172 641618135 993488903 973691861 215807921 67698742 493326107 375642450 249787844 372656336 698311020 48000602 612837482 773893648 17911388 135238055 176151811 413403753 662167746 611734163 635135911 646438002 688594026 983530747 515878806 39626876 568936371 893152685 194825725 907766907 888239249 658997963 444417893 113892056 761754312 112290409 535313487 110846316 492172916 464487372 952938185 289038804 831327927 718142465 991349383 89504219 845500472 583968543 395309738 53026628 450337632 704391785 865354275 968275807 754250915 145988192 352297034 992393545 385600680 17971575 682776293 280938800 760179467 816852329 991565377 998916979 433410636 626847655 19744265 272563235 632476797 583257451 97616515 740078773 462355912 436629492 650745946 648671594 58426222 185039803 192889477 663535688 725279085 73857662 5236703 325094129 673137962 883778411 404806794 190537770 851456725 417530842 516277839 917224647 395306369 373567479 993014012 97861385 684242650 712787161 676488103 540009494 657839812 936805696 751826099 682000552 986935619 513196982 657144811 814966454 997792297 247052193 882199009 274144534 892889686 55699267 212251297 867361980 929774853 549941317 130299623 780383265 471335213 84928976 443312014 230266727 565341950 395617283 969147799 285133610 97141178 846790055 584325602 827135234 323403419 919765931 357168412 365490228 762234757 363964120 123824281 135635909 144404609 464714499 219319480 784076611 489553812 206001300 450368492 683283017 49226910 140998268 925341055 445260426 912206643 748821081 383880169 761705858 530171451 38356140 411394622 61761372 228932224 435188535 776844997 113632187 130287025 343843717 747190269 180913164 464161554 276818859 282763017 850078602 625285774 565908655 344498783 993911514 238616238 581440670 897034632 624625173 849478352 142419932 361116069 981249695 286017151 806476834 367667886 766583438 420074566 716170189 332546531 839963900 516305287 686939366 27092707 944869073 19738684 670269292 917985930 801324099 138509953 701736565 346312630 532961450 81204973 467114702 748374535 327016265 502915504 633717149 143977139 679490283 212326057 960200121 813787659 388662457 127150469 485576223 340340501 631743028 125926013 737260083 838328823 249336654 140426966 411354434 538374977 239984321 671852484 477357337 411012188 66336494 999710327 627774616 931285789 603687827 579327602 1772636 746668921 903227004 196266306 72938066 366620591 979173315 404557600 820797907 373215615 882262239 229954387 845167445 421387148 861143061 86617874 350091776 973960637 487567679 18520014 506561546 57048719 312471141 118130401 791793696 401701770 608445463 830330378 403696986 586883644 606075238 597092295 86477875 254212490 171852609 59105663 40836324 294518657 688883752 587025252 393390070 819962657 890100742 549787124 977965066 241778294 390251723 336005257 840538674 633623909 84486429 961778658 472299016 965319938 263546870 549241427 336821851 604041202 404785578 480166881 603128742 91397228 202874194 901254912 269984968 334297965 314425987 882561531 132792016 650597293 981369610 612495614 838618388 409285167 255643041 250129967 309485054 491520033 374812193 234819580 703406275 265497566 608085693 773216881 317764739 889244691 921214229 892255024 530132526 351368374 704986338 262227791 383375322 808634255 94569298 834791243 953931401 313865105 49482913 865565173 756497515 887582202 510970815 327349746 184999434 134860224 412291022 542225817 705554552 659233589 744348959 503063384 892029912 779117498 375815337 790231656 734785360 478035040 987387766 504547190 855646882 82035929 82544063 833799190 101703595 816545408 778001135 324645238 467818434 920796203 738389710 681489325 329604471 994523563 498939037 257584204 41017597 885046692 881929955 698022462 126181977 410834667 101331420 84005151 976414936 725791740 336478592 413667898 177396692 756676420 94861238 5379956 482912653 643328393 976567819 901953891 309851097 940316581 685565764 645797574 218321095 17212239 994841727 393975109 850187758 872514615 970236038 464517002 424476587 883087540 752470057 296962599 265967690 205277037 819489902 933950152 882538558 769833810 122898660 616262069 932405361 155375259 275377370 89412018 734858875 623826837 133121719 834633550 94738110 325668566 421164612 556519168 362843022 577411612 13742640 80835812 23316360 888739170 449341574 805356981 812779759 324276664 644468162 553902579 126109945 510334578 847233163 938808257 687963706 685586376 724973831 315044016 689371743 104220466 215620452 371433356 326780531 546518404 64141023 73518095 213542972 961207799 825494831 366102121 865283720 920303972 329726270 626382764 102707682 439143926 521531570 287184073 412781425 414869133 278786663 194837594 984212014 192279458 489186948 58771896 344137941 375402531 130314001 248956499 294987793 595456671 914101699 69394094 663462739 655000644 667834752 813422461 848315744 23865158 654352843 449157190 369862418 293930545 665992488 381621048 400024 939383348 722944070 466336502 514205668 967402515 657314085 580534132 144893042 626438159 559555813 389501842 366726914 187861254 570752521 379055391 953112321 50589782 525789049 721086325 625343883 719696129 180992012 979286622 895459162 865016148 978137532 49118787 240034013 894204095 317636996 452495092 658746012 876152258 751020781 585808955 714694727 390696336 922099766 997977618 255072734 310443400 636804544 37228649 11313072 155723754 745177757 602074173 388482877 612875871 180933712 784331769 553813470 729712368 175776176 451843038 266846421 366089605 267366920 474687945 226973789 927591867 299497300 261299125 660494797 989622265 818086437 854514995 30096496 759829636 13610427 935486758 692281224 880573322 571695217 801743031 774649125 254165127 155453225 13138547 93147488 594054933 405409893 952557705 271132352 882283794 789266864 182074823 998867900 877459257 606763090 686642038 31066308 488987233 202924879 639131825 303562412 801192146 958332704 243263667 413272551 261528744 184764465 430211670 476072015 531419943 523413729 882027717 261342288 321259269 820641193 334332248 749633907 77202678 46926722 75715750 192869399 343927247 850017685 436735691 582546027 397443580 11798308 74023883 157808114 23190346 94685840 870331891 907254493 343694273 341863274 476818938 986166276 654611149 240887400 10375862 935360644 361792808 147289114 140942558 499931508 822656273 513516762 27725725 910142964 880201625 5427890 362028239 526970660 122182877 478738825 105948926 42383797 505543617 153317767 382959421 249353005 724247943 239884180 10596988 241017257 460186701 755336878 688001291 39140073 394361980 512578742 993310596 292053846 440021369 196577242 460210110 257012539 609097937 378576664 464687739 980617368 962508241 372605196 165299980 988674108 919120526 704750945 475303257 230032144 774188926 51283469 156542658 10339543 632263270 572995389 239737299 874023921 809553734 474256516 955937533 154717712 424225204 433557355 514896907 19677787 912075578 237828780 732048695 197504583 919774917 56988895 260296305 901051057 304257713 896597907 856988904 328273716 938060169 251620149 672858394 21319844 344309104 825460108 249261385 886925052 547612115 775771160 602179490 213591469 207973867 706647123 507720784 103569525 243678801 786614531 555597875 680799096 517478699 252871279 592575097 989696943 457376821 486003785 257099644 56326666 710865218 679286993 350572001 711639975 130466070 49629722 344112158 75102702 555920395 419900435 957628319 406326388 461479303 531650411 198106708 993288802 569914092 26007738 272964031 912068011 874005298 826143938 697159312 618800933 200593771 484109317 428004769 218479319 937086056 342547370 804802900 181904439 824592346 513294192 9716247 286980911 989412766 819252231 207278386 727772676 238544726 693935677 286366531 946374148 579741613 810393761 151014851 259685259 506449334 622603617 489561522 759161015 90759865 982960477 730416299 993998185 283300930 190695626 46748872 254668623 635397571 364507460 824475586 567079823 527552689 356825931 986076375 715367706 531194000 715523661 871934346 435884035 167253160 690645926 614142089 672448919 588805310 170740751 128602258 891862197 176199619 293513027 449599826 844416415 606957217 573277811 344799099 717772476 821164262 431605175 927184003 124827920 198072719 931060968 61651229 45042370 324922943 322738535 901713783 831572046 341529909 246025485 335152025 311594021 942176599 937823402 320391868 806956501 329205927 229582526 484034426 889327123 108780652 304495838 846286890 891257614 112431447 151445258 480492011 920177060 605609477 680265121 940085490 995014599 584060230 63756733 177294272 945927310 388740276 938967899 46224666 823272015 970588092 349242684 694547427 19000546 635858188 219366577 273087593 443104546 911163935 263260679 285284432 922127649 194625319 485905091 374080241 839433704 908729956 291261836 171225723 399092868 285006511 349209071 181952274 883947149 154137509 758298145 52570068 590063453 521353180 84648490 124260403 369666213 158261906 512428664 805660250 822472635 116317389 849499135 492428100 369326078 923023804 590759805 770814201 280953024 297439323 81462152 223364448 464655408 930682943 582580281 960746330 527103120 278377097 283497435 777237471 284250108 405054367 453689995 15734283 323216274 366242661 662025210 491672805 729522815 868097977 799991202 876397786 862085323 926817726 734304703 296463265 231603300 584155415 235185466 845024738 86430646 780263521 174486389 927973300 810712616 197167103 879080043 199201262 71318385 246295419 982214889 544611641 947173789 206613145 65066664 34135702 596159732 650151310 269588457 891517754 871309768 494803651 688703469 336460235 127850854 457757895 53974590 786018862 676305977 153098425 230560852 318588685 88247439 572348706 673408779 622921582 434121385 929264089 829800381 867350731 849832020 879007368 795460710 959859884 597160666 940494026 854225082 613207165 495745267 443881422 57928426 161054848 588883102 724909121 810662478 392711722 595543874 453988847 576962405 205759155 809998074 552899257 348069943 650374031 768269515 573090025 323295007 66085103 125761336 794290173 126283745 302690347 157690971 39714478 416883695 424176893 577795315 483977389 619835962 531043912 569921235 841225648 195802013 691056192 389628363 30746110 255848901 10502865 873958670 830414508 648509056 311358835 270055040 920137149 210632463 110627551 575366703 686855712 687049706 399145628 619431681 142194796 328911033 600650949 24753622 770349562 981913127 9313038 246050629 138493440 303848199 917548062 565434034 386974640 201218480 718571339 761803961 94348575 300234724 345201379 60999085 144131022 648365296 800510063 491264437 152677298 981625677 921678606 421640111 374861659 54618936 754008274 219606898 839098938 460337149 438730880 216690101 147425083 651164535 84688967 321342433 699476151 645874251 64835871 279538176 59505982 472108069 187304022 36265741 980881092 904752501 59267621 346687838 228124202 96592020 98408877 890834985 636130715 974879390 627763354 949299552 100069444 11538796 157063697 487014192 835414587 333121924 236933760 280974814 245082542 324160437 888437875 59959133 351995987 117440052 988432214 713019513 586116481 961201521 418888957 904741860 854328231 306012027 668705212 15579541 112941674 581682548 12469415 570451658 163641184 816058686 763792485 943784210 618233765 303208527 806783197 306386958 972066215 248738555 214755427 432276163 736410082 849311887 8543942 663207639 25863241 997846815 591344372 481860385 833187118 662277509 408546524 391660809 127827028 232752168 432309151 871366818 607487201 856157337 361487 794506555 582517739 323912205 138410770 380904540 265169105 841157567 415532241 536930460 132011262 915050130 152989866 491149495 432923809 552358187 704246170 87147103 551423260 531429547 579447045 170733965 199038052 610434485 675676735 435336268 465333694 396352912 352465958 74948601 556205050 937033957 740593045 868613183 683561728 482235855 721589680 739092837 319113616 441184127 659600430 613398456 102463458 311406794 377093726 310535481 154463266 755345301 683380391 842103781 422529605 420600055 226854528 382884094 905019475 991646607 778171439 570705418 564120969 258200272 247151022 901635061 27293997 784898269 575773785 791329745 959154616 924951019 811189628 805781261 379475101 540720228 829438720 35728938 131684833 784407852 665963109 597925651 904717857 887883745 308955985 959603679 578515071 418954938 728906159 290615557 96409296 460483241 851175557 349583613 592509169 478468867 315970364 70381400 623248454 164699609 322760115 365807218 22874775 752945537 761104097 190379350 269840001 291368113 67694779 739226371 622406944 69397895 843580028 573341817 774145705 183510485 592370913 862770333 446617492 949068225 966279437 491484766 908717327 856506125 78633064 25577076 18370295 332079487 421961008 646762377 921044597 518192808 936225837 294896350 67829554 822869852 541042408 474882588 241082860 922548563 613669583 477016574 42256627 763692680 381265258 128998491 722774759 168877086 33616132 460313016 560487323 371125663 365253161 722402650 413653923 878991985 609782754 147475330 489136760 922992013 583828327 680346841 501046547 48835676 738512717 937309398 866374602 827092612 275083775 984594258 591790228 51412323 428656356 136631593 539707776 31970446 988990623 717345713 484280765 283586481 749856644 834165255 109085252 225650337 10074178 281769868 3263565 866368261 380183749 882045378 739805401 670327838 864236075 492922565 866457930 889869122 204734129 794710118 367740572 824284535 505570674 757813906 953271649 127201981 149550733 296465208 240587451 179003735 477330315 84203572 810776485 232261133 432942383 717366859 877379531 816710434 924660979 260308653 26611405 650002721 38599223 181513970 344185303 951462084 325568945 927368146 107436289 695532986 70103960 256801760 142634784 383282288 480896747 215186341 563735369 994966588 557132007 793698897 290194947 574189184 99370702 547006269 706366472 656275165 364586481 457206060 286594564 658853568 961358177 280914143 420841392 107536517 74099492 280195472 623752054 773553561 774838581 584002416 484150023 350225055 919968959 927736313 141085624 786665074 562063375 496873030 782106263 450907065 183131021 581557309 15149686 175009157 258816067 726095861 477098527 97936831 918546848 204743644 56772753 580785709 308088617 676627522 555237607 920138157 96897563 399866987 139496986 33487968 852451295 197783022 228508262 929778162 927847354 288297860 447380567 564877026 501539112 219665489 39214546 971205979 514550702 248075214 614224514 737860586 687950087 215710181 216565071 168815419 990035520 46665462 666139957 706960903 90641735 895766978 391364240 961775070 601342999 385562487 722011475 253883726 605323208 350945934 95143953 334788423 614721349 756023945 181945145 250159041 539770215 499063120 260612151 799232523 525639184 511503190 374534712 784600164 709408188 219454654 903548115 732246134 967102756 620554835 681386986 446678943 84390668 967963366 980258943 354909822 594678682 782880581 53850258 445711132 252342520 759515310 210417546 971009124 217192815 853137941 425051130 799165000 571842706 386880211 197152200 350937664 262966832 252099631 57521770 77635324 68690712 854020988 608824716 427659268 855960705 680872274 549604267 320929793 467845193 922550496 417330491 882498867 930721980 602875188 562448631 646691379 371089434 65329956 662718650 248196836 445969926 915601424 190564901 998467596 641767062 955020418 201739057 44915482 838441499 118999025 743171182 139745900 334848415 554342980 844753220 592359307 109378068 432087336 874124937 121466245 807860550 937282217 264167518 657004061 654355610 763466101 497791421 483489792 796373182 500437353 142623004 712113481 214915621 120520467 299302105 800462264 484208092 827278869 339239840 852257925 159113811 338289630 673693048 563221359 866667402 546582912 588705113 103762186 676140782 417942684 381314024 916423286 363686512 826248832 576783744 833932168 49526156 614155957 403855435 269618229 922311729 685208927 677555469 496785189 657222394 97238580 42333386 552061064 238120239 576243080 823166094 482435311 546252406 113451964 264539456 122218674 122636741 443677041 973681738 591737198 108901893 276219463 636686350 787169387 856259139 736880250 128553557 281434928 663441898 809426265 634932787 136926998 38502579 968317993 750864019 658900543 104263350 292405779 88295763 402506460 434610282 646105885 936267477 668598115 969363976 260909063 178020672 955653079 948792671 715160783 404093581 346604419 76362385 816157942 948945416 129308493 868742541 772885192 673593947 369041554 278750338 829205452 289960075 520574740 803586324 34887900 677947581 165129450 588062058 744821997 690229041 687858747 676102424 568456609 178026773 729898443 232749529 509787781 249641841 970169261 91343690 13565838 895101706 377442307 728954888 962983793 512767079 366744748 840244493 157753974 479776718 956584066 488416533 437234596 246390510 320421712 512815140 475521678 116842585 161034029 729731786 191540741 944114486 738566424 228007221 926386411 209561244 26067387 915326754 839564270 884931387 982842275 159602795 711898147 962263274 981421640 665764499 823527284 207219506 501996171 821386273 291117532 863104897 118661810 990974194 799213355 124552751 555535213 770857584 491998874 874703888 227492221 399291632 753246518 381870886 823497050 591973011 794673002 825215918 754586393 882916699 21919925 542064610 667169926 373191859 363431689 339344333 775101347 153097194 850425710 952688158 127828137 49025804 521678466 983481320 992611084 698234950 776514798 614664405 870370776 774179874 533906218 9457282 624220138 447752600 351279778 700324923 770206603 616287026 740302823 552410447 759582604 72386436 231752055 167574443 504814308 809274049 304050422 729784922 945093732 521590315 174096917 220728984 550519666 736624807 384204069 435955763 563693539 890849055 520666477 88434069 850322621 314707845 395267032 458067396 441344852 469497138 371339513 356433652 941670929 32316981 176145228 727987170 191896595 830990419 580316669 487407678 664663249 447253677 673417041 25057424 33831426 811908672 813404040 402944274 7384207 885626541 360584364 955891836 42851685 234201272 489864618 999077039 66725404 627081009 637823772 559417443 898623211 339138551 332039780 802548959 488442763 343712729 262498797 332251189 920228971 657633240 637882235 94816018 661589196 779277342 751979404 882898195 685677056 688862735 930891705 497908971 255435453 218080696 234513562 949820712 375873909 445341877 150801320 93415770 436951339 198229890 500774288 408247409 217952242 676903240 434879195 811528057 146349691 513805139 760728839 457272655 377106966 769191034 330615707 526197218 232665852 151075934 133137235 990515718 581391625 617546307 265011063 850417636 51128503 313495956 286422761 167047710 321005346 185111328 203377518 598114046 177673164 513596437 508485176 81728662 169423654 118047038 156981261 223558111 660775322 138522045 637616256 441034703 660744853 563321496 857064353 123169497 500091676 20552811 194529727 566944935 931660509 773490485 776546195 466380664 626214481 403406782 421823830 619364041 989396005 90489710 972641228 464864638 465953978 473788874 196162819 302787328 343763179 647449311 884231995 332284074 182064337 30779266 310856301 27103723 533274691 456984733 975116393 57671432 245623998 460521976 778737464 177720209 281720175 133977668 114999210 774901928 553562568 529003847 936235791 964640577 390731150 224547478 157745399 555611722 680431185 31002374 379582038 848762296 616611320 460878732 721876087 494197950 660888133 127614417 362866954 297444844 578942220 126447142 762919403 639879604 763573585 795546856 895608932 449466738 483512725 574687659 352425091 854069350 4213956 73121763 408370796 746763510 220991123 969453153 559480779 437359299 549486876 260446136 781774212 300272629 15105304 862886272 403865036 974189847 300112867 133692767 279701903 229879826 394614428 873829654 277434762 41633254 768357006 679200208 905728922 765886381 141997070 858689945 74306007 542181489 712003768 882151439 459074966 675825200 954800896 503500867 819541339 166905544 168977673 641483651 36792483 299079020 979781976 961361669 495225196 450097160 476698221 594560947 17285512 197632933 156596446 421634807 79273193 216662100 705455567 633626630 319071952 305661480 419643852 639152119 275409120 620483518 848176625 317640390 763732784 640887628 446152310 387669427 627876520 778541011 83357587 457411373 10356386 845800125 266366779 747936581 620242834 765973318 371055145 253229382 382143051 744251663 716231283 274073701 23040309 507029047 404616378 719736125 34057932 396788249 146271408 702297746 272681141 250383305 780561270 477074984 907275240 597009976 588196450 389128552 155360791 833225099 897779061 146854169 668735440 678155770 120382024 467917020 330331481 37337747 967248601 443682373 942825029 755583323 450548140 41035540 716249222 589909208 381795885 64843851 132455951 479772226 855019854 561349107 118129947 894913096 40820055 132074935 722799870 656692841 7339322 648750889 659310450 878533340 790235085 102667483 569743241 365444146 217715588 862547132 126065246 450727878 235737486 372030395 620910666 484755907 347298978 862636201 80352673 740902874 566207736 986592323 207619407 532779792 607112357 184470449 695051554 627527454 240791622 286103131 551262660 444348960 43837168 32729687 231560139 437938877 497656016 616098641 863706465 225901378 729621370 129202971 102358246 696789458 498788890 34905344 572979286 160942905 731046471 573257284 172172208 626403948 263473907 712975034 19635882 958233592 899934151 803815927 10707248 321906647 288579907 406808757 720842429 411124743 313499711 975888828 441051184 512980318 285157338 249521612 432400727 7455108 45574259 96349830 259193170 894329570 474543887 846244988 326514422 717436186 759725756 295440312 464589472 832957152 390512551 688760258 163253590 998533687 105724157 687463014 709346309 65236748 335761288 479917466 557421321 896566689 324916917 988807942 345607505 376287538 16546361 179537646 97536360 951110564 554236732 251442049 173995677 31429642 259273205 976050802 437517934 817797953 184025106 393826743 384338460 42598309 127214736 103432701 553937067 871212143 220214723 357383084 845719378 804287126 778687630 828018050 825023128 106447223 278942194 898619748 198133457 229525169 751905668 970742681 412081846 373680091 162994508 501522109 273338445 349915882 785767494 372556979 438903370 540786495 289088450 780935790 292858074 685208498 844728791 995093316 404115452 797359260 343354562 338071250 922414898 436621349 408301894 431019658 897514974 697211397 949918349 59889873 373850829 918101073 607450100 316025 735017278 382839348 21469600 746861854 180945565 635901148 802065025 643368214 221898224 162866503 675539355 978105733 248747084 771861262 968862577 188989248 207506564 621855739 781239735 173272439 932998866 575747784 705275011 539214868 226371320 72269300 21964006 864728087 460528776 335707437 711811611 450121054 57493209 202158669 777026793 215148119 355135675 667770962 423700573 348797641 202378535 916141472 487421280 517449063 126557238 799417403 180638209 81396881 339811687 185524481 307127714 64592219 805477521 601918677 170900575 901863608 977436105 161230710 93917556 314294266 44050451 946819166 771157281 43833276 284979477 384245931 876041734 639575986 45030298 589043625 954998053 429594456 932039915 289280775 600466718 504537165 643357033 815183970 673010306 47864323 699703400 246862060 131736696 165048219 259819404 452945916 558109732 689207257 915395689 771299582 967643735 454653425 826750841 381689378 88446927 406412927 450587961 600898403 530969387 915556723 212582235 543979618 82646431 732561789 996120041 26624078 617421366 387810881 783693842 926434522 375902403 888228724 329532593 693681951 472056903 995151684 254945021 881904478 219664376 815003477 881820647 312122051 789299555 857694842 904745335 765936433 611046072 434315158 697500056 637243440 833268154 167786086 167834955 809319780 368742658 837741068 517635126 420328816 934765133 981760446 629487549 84454462 267776313 181565719 485525485 319456073 190659450 122021435 189232850 622601434 487385303 215008987 67786159 118580053 355591581 346182256 360140710 656870468 758143315 86396666 281763074 915812346 238194421 628800124 293417093 969412754 540447363 828312367 57445450 819903496 495887978 53398084 359286359 599042567 584940306 300374390 790882433 822679312 337527143 918711753 252975228 900547487 965442157 6512703 567416411 829648652 35439533 422520449 555511355 267791769 396298426 296542526 886314439 872850195 447436891 199578309 887810808 638494011 368168902 663183092 712631397 566769071 788663473 756896555 468926785 701066125 212626118 737731983 369867676 900406587 383066078 790613922 209178712 773593342 312408500 370449801 341446125 764996053 470014764 777469003 841436925 698006634 221457823 552828582 339052582 207314631 692164206 26951659 641529811 498711241 775823841 236453922 790129234 826878509 656735834 926781805 302130754 222180293 954036129 584817322 646230521 840831406 448762734 317843971 142696252 618548986 700508457 465482027 778230299 768201043 340487195 328088866 963651567 52085663 601442581 109987403 998093294 631394346 682522339 918352251 298566473 981669111 558830831 128734729 156063489 575387841 582746496 815873596 457961391 673166908 375236774 875355495 826847907 438848073 201685807 542907927 375872860 574137399 484587786 678863329 697473964 11788660 480623540 26946160 553433286 550642884 177112917 690947948 421289640 51257836 248967116 660483071 435102923 797595318 923738661 248551397 351213640 852496233 525687578 272704223 540835604 856611035 463688847 212162156 502428087 299555447 280159315 9109176 850978188 205577487 496078698 856585444 683313894 729995212 261596035 695607609 682396131 197974007 51374640 830657313 758748213 835488390 626891894 42576568 481689247 59334218 9318635 754169066 931545213 618159770 79714380 261099273 631799115 757537189 957147578 911409692 135986293 586840780 380205874 905280769 310729977 913695903 523487894 220206501 687827599 578100116 993976547 759807119 734678491 909319506 339056995 871439941 630263640 321356069 829115615 325896531 202207627 152010211 854018544 878632150 943469007 423945884 190372726 596432847 716439073 578095016 434242542 900790032 889707510 159226173 548422241 606649650 143792155 893572213 720447190 47050600 871534454 157169003 611461785 450958711 280141060 88423939 100965173 186703518 501113756 851029575 918591615 650491381 33222399 97617888 404253737 132584132 555428772 822389067 114486879 813283769 629966787 827690379 326430304 338543011 481755340 41759067 159803102 904779685 541131894 710556691 66108237 169479038 782280498 443877154 431992762 944496613 944655992 577616618 822918670 402978692 273417037 839115011 114974178 666456778 107596334 519476831 896907184 926878824 163654164 295269471 850433797 787079629 685360258 496806487 695474845 592107300 473540621 84762139 923657102 744007231 850497846 738207773 579175086 111348918 480100874 584607968 858312984 668289106 323201309 645655010 358281207 589816384 428639241 495040763 101810802 450747554 936589936 101699389 809923876 327385123 92261251 415442801 582590149 515213699 206210157 3959759 427528472 300043749 139019268 305989560 85365641 452317194 149459022 384294907 162081269 799879862 706448764 558567981 570452840 49183097 120682505 556393970 719019943 536626945 207201906 28782027 494979214 339915118 492743075 503407140 508240117 776132999 514892003 966295 212708145 986621712 886405750 674443374 205255307 841720607 896710966 773709883 895840263 462289344 590354645 891702735 79726431 503711321 810146563 547390988 873883342 181985435 754419345 754634685 877538419 641776525 928003613 511359475 572993408 304430542 836187999 25845906 663708011 920758804 780447406 122740190 543141318 364299110 350478366 184909927 722098317 421515150 767212324 617069580 616028432 771061949 143451993 488966910 519636179 312505107 984775727 578842434 473471065 138852042 776521785 650438350 978510682 435882206 195943377 967726718 544193259 688763653 161016990 900056829 486015380 205144532 361653887 703670869 675748971 633944489 443543535 913296169 145793013 128792655 937981561 700173258 86605479 169731890 16133829 350905612 718507657 848338090 224496242 597869242 130078163 169021772 530353464 486893735 812542135 623829815 663505675 989927019 730523224 563376154 461792584 736318658 76764458 96100087 908068772 660547981 11916186 157926355 325558822 436741763 889450863 563729160 185252141 442027723 10455712 768762572 505068548 690526610 389667199 222179254 958204972 665691089 360481175 822005277 165977227 792795336 724105633 856385217 226343818 910138317 181129246 762459374 291923272 371909259 878645483 892428257 88643575 797733640 974050997 65181607 487042196 356985206 382322224 871786035 328850048 436099356 992075837 812104340 909643181 938836633 884283433 114128168 624454147 481286339 45788067 223397242 135976021 921711226 593004813 969832609 962250472 270851251 118846257 698121629 798814667 325296453 599072356 314925900 848174111 535071675 135306780 53634973 729967497 207480627 846166279 439669163 181586388 273723039 99077042 348713099 246567210 654926498 961570506 527155271 548180186 838078836 457914003 246289654 89978810 169207838 908826343 989335778 663764441 818821810 932690297 430540229 39567023 59538460 743777635 800091041 737811682 762493526 809183432 729863697 864509675 955604160 128443123 855151554 191869768 522585696 434368518 375638298 671460378 837837854 511405529 16804870 525452694 177043271 734139721 466436552 270292151 787873642 174289745 140342823 218788534 595687090 84939500 799846792 799180879 304749718 181717917 702812542 758384355 819782482 816342425 796894262 762438543 941681365 589673295 430465334 365642127 417876825 177473580 968577110 256719030 448636432 362188103 714563653 933761469 773368471 628890545 42056458 440736447 627301617 599601462 502003259 837168339 830431007 710831407 873064065 266205022 274940404 19416186 160103296 385929315 788933838 29504862 375240446 571389444 222404076 388582717 676791883 339106256 618499742 815385329 463604903 600750576 916334262 88120894 439515256 542636102 418228465 29928082 761271777 466402871 508072275 992437600 673104953 32108675 91352447 962594289 542744688 859372559 971085667 986803521 244338603 521186607 815392015 690813255 67797383 75117320 403850723 924029689 325276760 339083856 740838446 11175624 420064468 225514400 288124916 83643328 831094938 324062051 117728850 290924361 32663549 976447344 760029649 410932394 328411882 402166342 926540646 222040608 979524156 169525216 709973797 819759290 833562331 313950820 558221998 254690775 707091648 110658752 320347169 214869114 192414021 598057475 411420895 863410556 69089691 57813076 520185829 681867534 925673594 41775801 77322231 962243941 532603770 533575626 636404442 72822310 980551941 487244498 658635813 330674300 293452211 319111732 269317603 63599168 642500321 87996910 46662350 593173706 847482940 294907994 963429081 86307001 191371196 390934316 493760199 64580429 12216277 318272652 253923308 816600013 723777552 312028128 710658413 34561499 722085599 242337789 324622795 240913085 33113705 822657177 519627903 884843770 551256233 337830907 31849737 80631975 866987114 336159481 347429832 505210429 745647019 357426094 787117073 890372524 928220756 31259720 48586777 118981054 663841217 870286361 140228462 225766384 693763729 915223872 537960988 742792262 859972342 378774255 442426311 930124396 720006642 297244214 88787186 263417236 85615527 220298272 156414319 227975464 426524268 545387962 952909720 17641216 716749535 202557876 266513694 758610724 503830432 936992794 811726897 296846371 737607078 603392678 307629081 688613774 796018406 19643800 875419806 803349553 198827512 368741805 880696215 437452750 933968298 543314669 352632231 428542065 684474910 420538911 653002401 455181141 127404706 834609330 953898452 721720390 278071860 840247301 466162965 533771906 502661758 51122622 832046871 781999579 393943030 216843901 805196204 791697520 797171276 688037118 256093765 87066859 472201544 941011419 466734908 62186988 591669801 940505784 1022524 434683774 589792126 150122946 949578661 51646100 709936936 539099555 759583977 845441727 984538025 419566732 357604269 46008756 825672620 958735112 417047763 351514751 229264871 871113305 49088351 61619056 734420049 248090230 934826153 799807934 336157131 474198748 425805426 886231551 704217318 737396007 166511305 259045472 333833988 674847022 770718027 422133293 879054202 662216998 276110617 999002307 429855028 471956906 624583204 114257465 375089177 522404208 625888486 952384381 832353255 797879696 396857519 561739692 446802978 596296324 751451494 948647929 293417572 719965373 926190431 122470687 807172849 498016090 144229306 639858129 906456139 608711618 729488235 944325347 211154149 758792153 934784529 794042164 423751161 919434069 682328475 175632481 845414691 119685843 297710279 944686086 956469555 816875014 788474452 942924733 593275984 101836915 816748144 493746960 787506480 417512236 962421458 886488237 205583947 712808463 648707594 145725377 351489608 328051443 722892944 835917260 300205960 992414344 720215284 162257578 258525225 83401015 91727102 657528404 626885861 404448582 649542451 406828162 930612034 675849880 400966781 27168285 609142537 119987445 186867684 700962240 403417548 962643439 964452929 247974149 823461056 636648935 789487833 937073377 61054397 84947091 916551908 675876999 333128232 989390773 115734417 750677843 954443993 900943586 515725128 283469050 522674138 516802018 830050231 868203470 501219227 299996513 728886216 638876098 461579033 757902045 303737019 398211712 654273514 95432404 434095763 632464982 657943243 20218206 812475293 875524682 473210115 993036975 841296532 689224916 930441794 193368617 499940055 161396593 177359320 270867257 613822523 673939737 690108454 898101018 625677704 208618378 290456400 852921675 43417795 355760583 332429498 599098895 909863941 284039327 851187815 708598614 468775388 258106785 650993213 270120371 491996333 40116773 808795056 972370547 137819315 619372345 555333259 88208600 816702872 678288260 384108648 769124785 362896626 837335049 980410794 109444439 506011861 262149754 342689092 44599915 368850993 946316123 227668402 313783191 467302930 667710384 789499923 663531589 681292651 484120446 140712735 249237710 472699409 607412186 834750514 195418858 419021068 847910542 398904091 711545147 972634965 695738656 690104735 808461526 60432289 604000943 588588414 567839469 994944624 882943498 750789041 284743548 151732038 32535813 224035068 563323127 384709 470520561 853716933 481257415 949981819 22194658 90966652 253186721 715561545 400962934 365953857 506052983 582560621 527126579 266123993 701675125 518757962 870971564 875765210 717368358 732678657 167230060 837320992 471364142 508764868 127485388 920614944 427662110 649862664 628268117 660935419 550543881 268829015 941937816 824292588 758361266 851459624 81127132 483277220 295895800 192153114 798021362 445421742 105954363 268717161 686781676 521944248 19828025 808439171 358736616 609850994 14763132 166581780 705793973 778099337 688926837 128375021 458442008 748439368 731048235 954200978 18035096 659046466 660647022 308052024 49260363 41448802 157657481 231167814 681473592 488977195 487311453 320186405 463565922 988451936 722384007 732032845 504805883 268492554 201650925 424145522 435475657 614966857 617743338 251408810 291386741 152109337 900180876 311936482 468309844 972492419 59546814 183476405 360265126 776415584 88892996 505447567 267852447 545131769 532693221 746789687 722719535 175964228 172978105 165729360 66685563 906016880 650469026 852171399 694865772 731930503 64143022 106915881 272180289 392038510 464626643 712954622 669145576 446706826 662096171 349590292 725815685 287504415 986102294 573632852 108759449 186417244 85270017 140896852 951987228 738975223 7625724 69491844 989531735 794742854 689273862 481704406 573434509 67547448 317601170 756634925 79983867 109603186 373447637 40231057 172584150 803200473 154195767 944144994 834481088 556529417 601267727 17312484 925936639 226382307 571485721 819196281 231052998 924966254 420367591 735767245 959960704 354076544 864547846 741071052 18409633 336455378 772759089 856150105 952315923 967683841 298104325 126533088 481768318 893292748 627867629 717153495 692390801 741071523 248844028 712473669 433723821 930275532 625647821 467487970 753956389 525240398 538850709 871633348 327332193 578313811 730350839 352221276 951666446 54119449 372695752 811930590 290420023 544113562 975334045 126220278 664913290 279830780 477201215 828063 145240266 602534414 993007074 993927452 812582427 904555199 344719034 564502125 809764184 999640564 104186103 311824101 326938747 544575892 196409510 977002389 142647775 696849968 109237228 527852570 192268886 709376695 152444988 267866814 417439919 597755394 652954996 737563080 179010771 791442830 205167849 802387177 952274080 965907865 299035765 733825073 628555715 785310954 353253037 620201598 131710420 841244816 365470419 921585191 482570120 741701006 492623265 559373914 558688769 628775564 149740113 861679574 406228111 546492129 684818015 884631723 324134284 537746284 72846849 353387939 725353869 741239116 629462833 986316635 813053993 994597634 75048912 502447758 750108410 796510596 809340642 842450783 762963097 971376215 178011621 798650156 291390061 486762537 306226374 630190512 951466653 992830171 339760150 659358122 300061811 601400330 783037840 917217521 507655376 870660726 615228500 946108967 691824585 751194154 683283646 984146753 995994337 996285105 110140141 721785263 263848157 323912796 110338073 919224196 669577043 715618547 661983609 846491783 458529117 594355341 833331275 936816142 837754177 892766746 301080330 629338319 609531083 623595009 939483867 994392286 910278778 955887470 526045370 593601029 456480920 918720676 560061721 652571814 739968505 770309581 768816553 879002424 785308415 926727633 762915187 806723863 383590050 611140028 518591949 537411083 701269848 736865099 247182249 258000520 824186688 964170644 512551284 779479707 450333274 512366484 957601519 998774563 444371762 760606509 880996838 980329684 256853831 856073037 96112894 604840061 161848826 901067696 537011497 957285094 820196070 866068528 706753769 792720747 425325084 877287342 978717068 986825225 174409443 648887489 891573526 952263259 210908082 709658759 36622310 122737049 433303229 614536028 312742075 716358582 620209048 956732034 786496518 949598730 820557847 918155421 4183414 803688262 888569434 979700776 431918625 928254612 981346318 988897031 143668418 618971372 618075061 991333678 906437722 918536125 935192592 945692537 834119510 977127922 225675786 864112444 685726391 704532617 129741201 777859551 173286390 210686330 432130674 525162991 829140045 892907909 295405698 682950821 62719080 784777662 532358736 932475292 78315444 571765714 580021810 640055622 484184900 546769692 368847779 940638548 766348998 787993685 299690859 392213395 279935140 436580338 93230566 394090057 331460562 524563686 848975707 875398658 329682943 499397923 961838613 992739331 372400808 500330989 799222399 815068441 160383288 788927817 365528637 492252085 34612296 471517151 596312254 648741650 954624248 969854419 416219054 647476000 901125264 914741283 716808835 912034566 372586816 773457845 276530047 573763684 54134050 457765487 112560011 205966075 13065449 724278628 358134360 590944776 4085283 982153621 733891721 848963859 571875480 615140960 677055669 898590268 381699955 845519264 376319998 498541827 866265315 898612989 593998470 751070579 972087987 996980007 581526951 693310406 42680277 890863146 976992996 985395761 919484156 955034300 109509116 963604582 915890256 925293711 140754354 475716181 224313247 909199340 385614120 682402353 119417126 469401847 616768127 734481420 910262378 979818459 12826445 573894788 689027663 841244685 13741147 78944948 875363928 921064163 798472650 877214478 15715249 608041632 213828766 884769583 508367406 949345172 668347553 873133877 427481373 624609344 184169272 758202498 178342182 406535668 41282137 283576133 422659246 445110934 310104494 912451750 210842493 853106321 30474579 409768198 41024176 510766864 81553858 947288531 623470669 662159250 588449003 942203328 168152501 395012713 546440367 770939304 745866618 904811959 335041679 569407532 849247065 900668064 169228362 769477899 816402467 929495565 522180482 651365620 753218508 909734220 810681540 875172393 350291892 435289815 523342408 934771925 624316943 763644881 517070628 816715162 673519406 793257342 747650378 974456519 142908648 560096649 914888796 981216709 968270669 995321478 772124873 913075041 658443038 777093687 209811808 225554405 483205224 972735553 235578339 499596979 705821966 883303808 51641412 384460772 942621008 995754134 492063502 770584031 301000731 641532261 358818878 550588302 957230333 996843297 323370715 401104636 819824144 972769680 409669464 478334619 487595871 793644012 639097276 868995524 568843524 640753355 166046102 793980673 294642510 731302660 330834840 677943241 944736825 968913626 656292318 737942190 721246592 894344593 432543113 531567929 127900226 381601628 460630674 783248359 634689299 941073667 113887945 431291771 210971655 763415919 143866107 848465207 17558976 701415824 515910813 910511303 148998993 178305746 315248913 398543406 849252875 961536012 959638871 977345708 949405384 969471434 21696715 966340883 211898050 726571174 587214548 671937563 837959884 931515489 694334912 793680542 103397895 108944920 16629918 739561618 356403420 503298096 119771719 225647002 507498397 915467376 292873082 847768808 54486715 235087400 272622762 335077501 251216753 682626771 478476162 786097529 288055486 573887271 837176472 866569970 174235683 365203297 501015009 811242708 585882494 588529906 169843906 744388863 58331668 113843065 863286121 993536746 774249559 931056385 689546605 748000266 813861035 881451202 727188219 820089035 676028190 825032083 301546979 776310776 130459956 548593049 97143478 931513061 580635003 672341563 867591515 942295722 129811352 325324446 552885786 859100700 176611995 480374585 558484299 633158598 552824855 746758035 157061228 222705099 145880382 740976141 388459286 867623379 522310847 917635305 642132214 696755432 707482700 864838100 732285186 915155924 502546828 546833423 369114231 605212489 103687157 441412182 632293007 925555732 609876588 822131874 122651344 861751556 135296676 967449803 52742852 872558769 341731580 643647303 826266392 850103727 643921612 744390503 725485020 983429704 138331658 551101026 789350956 910232595 44241568 424490109 610577752 982298326 815879773 911960022 930988825 976656438 791594043 896238227 971943191 986568615 134721467 172010323 32658489 172523821 57452880 683750324 196338108 580048428 893801009 909847178 39216060 673647981 768433050 874618765 719781902 858216053 306153938 996803449 651892223 836273706 743093150 971677428 165500929 782996372 242567285 321335973 315846445 476048656 961709852 975808566 756560024 757029264 128663659 315429236 753702225 827554817 617491348 924161788 742963099 893366671 172791636 413064142 199440090 644622062 481933660 813547923 527694949 681895230 439988785 895091665 526914764 630319499 968981223 987953045 422687196 695667673 414201793 773511966 942619946 964708045 954922647 972371674 614017092 927451812 487724065 595011454 582683878 753767687 109614572 447056892 795484244 883237425 364261536 737634145 313509690 780890113 157737908 264662207 361268561 826537678 803660656 806859734 561253407 835108231 435056110 572788602 873050842 904539217 799862995 886564289 909997532 943223256 947598964 948134519 132848077 380937801 139712195 673858281 206396783 397574018 82973536 195924114 64608847 190605488 209735526 995188955 259956532 267812878 135967073 264472275 42910450 157792063 433809014 897018288 837404547 854625304 829899300 847395956 174150149 430583116 563481659 622372266 734844676 911882864 249487545 604254589 41955627 885612423 882656314 973515341 803730485 972476290 582223275 927225142 320880597 934426207 225737878 264812953 898811055 977514898 821141498 892675751 913436021 998245739 415140180 545759904 942857419 987053200 488014841 645396692 934721785 944949462 134481778 238193711 197726735 354682197 465733651 839466883 820652779 862968748 297192262 389029397 829770471 932075039 113903311 302093354 282307217 393882222 834693656 846956373 596823295 856616573 883810764 998556726 724978430 927461127 298863044 511167455 383180185 537742249 134247081 988856125 874060460 998355386 774181374 868649621 517254475 767610473 324647688 789826315 248073297 665560444 390686226 427161109 498618067 983669324 188790195 747669819 245467047 374645945 677005682 945051319 995150367 995668741 90357136 227553573 726218046 991689557 447326063 640312186 41336915 168784237 984720965 992247810 281856831 961185091 935395253 965757188 433081101 912911743 365900303 552437590 589478423 812685619 164625874 796589157 201311014 894873390 954478205 977075196 5723298 333502115 409545662 766344672 344555117 756356170 609388707 768544264 64399103 775636291 704196428 881602086 355273780 818594013 290869679 815769624 411368230 996516974 88685885 489981470 213311366 405713217 619049909 719548413 337548156 915151142 390046161 402299635 966360879 982162790 821111993 880529720 627662932 665967049 366813220 681831844 890030429 953828914 523893174 863854004 689976557 766225652 801488782 828406943 218018262 976806579 504013955 898011031 420450813 963489823 196432096 399130043 809790454 853564834 268015406 290195165 371515138 507393791 483741404 764753341 296995179 684123402 491962959 989200067 50652477 667519538 596798296 868437268 578343266 975875036 403881208 473946103 480998007 544999201 376602501 774939947 640405907 857937046 727965181 908400347 160490173 590025292 516303897 594892855 399550988 627518432 67407775 273282923 986602166 999657706 890688066 930603644 659840516 990854355 558572860 876516436 767416091 842757611 564866632 733456720 851452996 883485322 105635878 687041565 533602236 925649018 431697335 943880555 188172472 858951268 588972320 862042644 145708408 821757690 871811549 963397135 119853050 300989010 571738550 886783119 349199297 811064013 703999287 844527581 284981882 290349946 64492305 477249940 376900219 639584629 88688180 701525429 331042124 721074040 341837683 981678406 335705849 764749456 386714867 543048532 228924947 250570578 873930010 978219199 613423090 895291557 231011151 768430023 238808986 515609024 875143606 978568972 572478995 587425505 997170673 998524502 869565021 907087901 619010568 714649039 914628885 977541083 345781781 442925421 482886504 569149588 747248713 907957224 907945946 940556065 281157277 704133572 862752429 887461885 846930073 978857596 867013364 918068100 169822160 715983685 21681506 200454403 227945484 981215700 297412479 953757855 320256620 780473506 804339782 920387287 172371603 904987366 799846576 926636701 400060573 422866692 228468975 539395395 874262772 898593323 93783476 126362190 679306517 995556911 469640274 472960103 228000148 906588034 362632803 831878690 923037978 983452172 942566335 959315785 195257689 979265584 380513745 720289013 210173255 432999694 37092532 397944378 852648090 942744322 87568516 311252271 986337593 993172447 824006449 947971817 29588276 67031149 563768763 748148871 775102107 955424194 267842521 624551571 682198429 755931459 455833375 727165250 993096410 999983127 947388129 970847719 354657047 470744860 152965020 227492146 929300774 987647776 717635649 865068178 2400630 283029869 408629778 744262151 816632414 919208346 966258493 978715435 641737128 956711973 873592956 989165428 180953744 408958199 848010872 854744553 902877838 907469309 353611751 812904121 430726479 927902414 349461470 861278990 306539823 645303227 535589358 997236874 464178485 732046534 755667052 970512093 811921933 929876719 272243669 718006463 761093644 848016463 736543951 841892867 172856853 277105429 354066270 871337752 172745065 536234349 477604635 945971074 207497977 841460658 429861628 713065481 908896533 918935834 19788784 908150183 805017727 995177409 626307271 701949019 509380751 817473558 869422383 951760378 79377721 636057919 639525637 753807207 82254253 937012487 102417177 688682695 489535294 813603993 331398382 572392963 805892817 891025566 699388495 728758870 779277640 911065533 340009657 958610648 130424966 681134403 136673571 619653527 561856852 912696280 190590453 378929208 751885590 862937252 9127539 308922653 128149441 893586734 346891142 673964579 438541042 723326017 664794564 947495689 67738670 834099266 374348295 598152143 33971994 934926003 850782911 953317536 540344492 904788384 376877116 861769286 688023449 925610478 92568209 182095575 610691377 741421337 497646455 597815159 524024898 941467491 414988035 446299648 254944993 746257174 784729583 939739560 436956553 978651615 408690183 816026486 390933440 797047372 61714580 719586862 993581460 997460149 507051678 589287533 408553646 759448575 130879834 853374452 330207504 404048197 976045119 990983403 949437525 976914270 331720447 371342639 484255036 707891186 862040693 994534827 533404014 855393565 114611006 607952683 44934285 908737179 557424752 800921921 444595323 476946400 242487109 269793963 191130002 710245727 723770095 773495631 727514200 998385762 743275578 808493927 147841449 315892132 698062427 727255262 680138399 687383415 213889856 829766449 246641373 447142850 270865566 529269316 503353051 734069223 367808152 705859351 6158275 152569653 659475380 874557119 331440004 607677700 395794386 770637306 819220102 931033629 380117925 492026828 784695650 998105999 99596254 826542793 901247158 957800398 884577725 915387912 778766497 839581992 759741656 899516325 919666541 965439961 947906032 973520136 518723528 575197461 121062255 691044386 556949490 747788816 66738219 522538188 109022058 165348586 873155785 933314088 472825682 576775549 51769926 916898908 891171826 929665459 987014931 987234111 136313106 144818539 219896427 626225123 772036742 798073694 586100201 982877785 282879291 366734547 926275324 985351671 249592380 968192143 103166524 647878150 436002876 610225327 757888152 976905150 907008409 981517581 507754932 656406823 55069619 88952763 419014186 862891327 48225981 95501893 36564231 334314000 863603095 917908327 584074099 657135777 512451794 517447416 17222115 510856748 14383140 55542128 71862570 354957552 10548969 961131023 971465074 984728149 865477277 980719218 92058396 124584553 638057393 876603021 289610217 808501702 719946298 826136145 945864950 993412027 812245566 896461538 132415862 424543643 957176638 984424578 466911590 819824389 44986645 151930688 476742903 983112862 948597031 981409888 844975347 895271882 280997142 672049711 337893785 626147086 80393546 174193744 530179190 708393415 611260289 619109116 112980347 464144779 83681265 328585388 768219526 872734214 581817153 618024988 765874065 886971251 519148689 593668123 240083046 833404568 821961035 988187905 814139839 941882014 738570802 926659699 882124789 938612715 604251372 680323760 664436391 690838185 910319459 916851978 800222210 995957379 713909967 714267658 936012857 945649775 584826930 608841187 342486383 559540988 366650938 389941469 620140519 970452605 528419910 884967135 339081635 464530055 342011084 785317705 722504088 890713959 864026440 889537650 369314947 645471699 14011163 886425872 234980805 512738190 509578795 959763499 108401036 519869962 31256270 439445212 538396492 622227581 906649464 950735853 427463408 521394300 502010154 783131130 979101605 995436791 83629104 627705192 609073181 782127466 486316331 636632540 699153842 933589694 62668032 496241429 134787169 209973035 594965125 774801679 868356510 879650034 418671116 534226017 200484902 894434795 333190270 578611221 653600071 736745999 675920098 710172325 214793975 600706092 574047575 635708963 933406047 937743389 168394467 643335900 783430054 796888103 393641031 610242533 175443544 226450430 109422639 329465309 99354279 109949937 754907108 789938895 921326395 924107577 980495075 990782242 873661881 940369988 338660235 447760207 527677376 609814902 69295823 728263870 290127317 556532014 823849958 913633994 240423072 781047013 151820320 505235414 679093920 811994689 547067147 709357324 161016058 251441541 123318743 843174427 843793202 889002471 178043849 993565099 249759906 921306710 923960786 984249408 105924160 274008526 986230094 990305253 417178589 542458938 227512941 864406230 691059909 959703251 148000199 579412400 153630750 297478506 995714270 996926926 838423204 876546036 523816615 916918104 382954929 561912159 228155755 685444956 972126102 977128399 826473373 936901647 312306534 928184017 316987813 767434960 912883270 942306156 339133348 489598894 800341096 974508172 461584686 997716053 798766403 860736318 452221390 857115600 193643008 225132695 767177999 938504214 562181481 991043720 226831250 263652216 659552051 693354012 601785631 736340734 234333246 414859283 342504607 472235540 264662174 421816760 997865942 998528011 664574806 971727355 90006689 928484865 762537223 769093166 42925263 990094846 113219832 144603549 698989562 714971226 238371167 805036166 596471477 695658837 106191294 899719004 792483879 822976709 119742063 146390703 100034811 903605502 458995269 663812421 50443688 196061986 577106387 847364187 293894215 974524582 876489446 987154054 555646370 595200647 923409513 946433543 216916166 331368301 184153544 406676259 415466598 704051837 131050831 475521703 140216033 670315702 725669687 954586832 195619495 931014888 984082215 994664503 758638030 824918109 507598257 668918536 459739895 498931087 2695160 281156450 795996235 816736292 180509378 543687556 843630491 885901300 148759531 682329457 952857533 987772065 987130541 999697816 940007506 970533399 714039411 767156519 520719384 655815308 319794658 690458447 658392659 988404838 797813809 804716730 208873239 876984984 419315953 437269743 16012130 684282382 321705873 937379371 997281487 998484741 951952229 986014980 735370309 803044006 21372208 114254678 449225533 651245077 284861184 544865654 78042954 913806389 997244806 998117113 515912765 740805061 903770873 964261925 834032684 834116122 209693261 844836092 445222034 635560482 855058876 948031674 670357962 823209476 898790045 947869245 497060063 574181779 727429143 760548191 834252924 944104452 90529087 921904406 518117569 711480897 665861766 883489607 990414283 995403226 463424388 603679183 361374339 994533961 488537 428392270 410767267 458994531 572532547 648951751 44020572 674537186 714346597 887986851 826363071 916886941 470438786 590668120 462109675 791006474 371910715 548510573 165361943 298203400 739675747 890589397 561097963 671278733 983076563 985511023 331628146 862267847 35565460 340165032 713353522 798871354 584210639 883905809 473277795 927922581 144109878 402776360 440022504 620798864 548309230 628309393 99555770 449045891 446829003 609741240 858374906 891920671 766345446 979275130 336324665 623187027 650337320 784626926 288763728 649908111 165240536 346888102 544942773 976344911 819747443 943059642 588794843 614197376 531345186 571789073 313952761 783705288 304252334 734856449 994880451 999698690 184295361 714570161 170725348 498011942 322357288 846714942 620544798 925011998 316536970 575790621 37813748 732804091 579550238 944619756 63219884 770610021 766432574 974872626 317463264 912940524 316944 565605765 827705513 885396598 106258091 628749811 932285229 965076538 472707212 527552515 912356547 969587697 819866331 923963088 956837509 997453178 230182960 609615571 613065228 769991136 482160337 709259201 661603513 890095204 611736726 961575927 74441806 424208184 683334390 804380538 776223436 844516398 884302450 972966677 475655265 700782060 808207288 896628694 321072275 766002017 176389319 638880552 316611448 628730927 341902354 719062776 691101406 749956652 891191607 973386594 452457561 721029740 409552501 722341899 779172046 954068713 716584559 733041857 854540765 913588733 136722585 600918924 138343453 781239100 672324138 838792582 779386687 958153648 994806062 997702387 126139449 453486059 83330571 258329404 416814171 944562539 362566338 958714268 223683368 778296854 280087112 602407577 819569402 943183894 973022212 977086497 67300887 78635766 569920164 774011984 813262627 914904332 125167899 580561664 918707692 985876578 164176717 480159429 707697109 915643452 625626340 894780266 933080914 936031220 822704220 849081044 272416979 336340896 273071457 312039640 141038753 862814270 826258182 906585340 925195950 984250402 690042072 923142264 720229751 933777381 161112150 740942276 27348978 375804942 448956599 935262952 545269640 965917323 586619098 895023479 927012316 939760341 669070193 778835992 442694113 587808628 635575211 738228331 88997564 435407215 609916050 682352182 644271448 697924379 71456526 163225334 750926641 905388784 153658204 912287844 404165977 995704396 701962576 759019348 968592587 984894101 64414638 718141746 215238316 970022578 112726929 358918868 321019667 949212998 536397547 752974728 855437497 887570922 9420663 823109252 846912651 939220223 585482480 962336919 306179822 363039295 581758570 694784603 609409303 916433467 620172883 884426849 942679344 974654342 753321380 991825226 475413372 982333627 411500151 546467688 258568778 677256910 176869731 816452120 891429360 943361994 758366173 925132159 966116408 990274843 236025771 691934137 526032501 955621154 698605320 811104194 426607062 856188383 554083424 585263524 33973229 700940634 624866023 973641039 402581756 809913038 368272591 738652868 360896219 593250803 770063224 849880703 926257049 959001552 791459660 852477114 862492331 863798150 444712252 771181295 509651766 579093384 753765046 903122745 288826724 723013957 55906656 608569589 566059430 910303438 348880009 480842633 945739638 977251611 861335687 871962454 829821174 907454047 539059426 635805290 411157922 642826397 124993130 632282363 762698689 838590403 804332907 846594450 319187299 662272905 508966667 917755983 686518709 810992632 436530775 853624292 31076883 889263617 386896404 404614498 386570411 721212639 974360189 977576994 809222247 842525688 767313814 923572526 8363025 416221204 299269371 693422099 270825365 410360384 489544787 747573652 918743154 965149914 516349113 996244469 413747695 963753404 250999338 260406862 360972243 500189060 960274312 993849922 122926602 792815048 167491721 945826020 854258228 875039382 674507555 964174024 582527062 681674882 850748615 886706460 379322794 845479343 742999879 757504461 428475757 597424069 687893603 836322215 821313972 952305169 521607545 867005294 971801303 975026603 82295616 721705306 222821416 737560595 991148756 998633269 321637236 524965279 774963569 785225891 942167723 957722331 902207524 902502566 706347589 780320547 370889324 658108692 301930114 949756166 286357500 394874568 356660869 632660034 831917876 865557924 118128105 476731190 123606204 756919837 415575699 913088623 460059691 507832920 199874782 327881674 368473972 524358842 813579189 939641651 244728064 673871165 514777831 955164390 224161770 342663919 8033951 945743726 794461627 904149463 305992196 535085890 293857246 994850995 411954629 473549090 538541881 588065554 869026948 896716561 227319500 647677617 238377412 487661698 403701714 982083800 305625670 567462168 763058194 811231075 101947570 648355835 902010234 951712046 924700581 941443062 31740940 687844499 439394853 786528372 748922104 840328463 886422464 898138141 114880136 732553131 316403113 463197140 551183850 900776671 381147777 859849185 646184894 711344960 515159197 912826520 713611255 730059142 31621164 69514716 105753004 278245409 214148817 915446864 319648731 970598043 894007331 946536400 308717260 366430819 339812613 796792406 586478513 843891880 497390496 888445255 75733809 407011039 183001456 548987720 590985236 639502384 824814461 843688439 660709304 960802578 874341393 979471937 371991892 525369303 114710344 125565717 718042356 918889493 557725156 584013065 345286847 808629722 260435026 417425691 851367311 903960105 158693696 662402960 477921192 507552520 471360243 494476385 483901665 867718671 607446619 934494808 346786833 428819030 231708156 568901657 320714493 677551753 92595245 522922264 277205840 746973555 299271147 562743553 603005922 670586099 974756815 997530938 422992853 549111842 693736807 882014774 116149748 607992986 847304288 980304461 274299742 313024065 687403414 711425266 616589812 634640807 996128351 997375813 697295640 988112284 810991492 853174719 641636124 925046362 988621600 989069753 79198682 771809708 292164168 425856522 508347594 753028279 414207080 760221221 598532944 789126877 749857737 810245914 175624404 480746846 279531036 722690209 435500245 779768464 351777873 353202638 888324774 989731462 587873283 929737261 831390835 854259921 625064434 963140888 807111104 874570119 98305888 275476499 290372284 695202164 75384779 415873767 40441240 163707871 211089386 441836531 606143805 924224922 258135566 956709458 458505254 624617453 792140933 993005014 542621441 928762153 711438958 869680884 450871426 587669379 750634394 976786536 817257716 819793106 652239458 730772584 26623403 270601533 801554913 944129208 515274293 565578263 456932443 876889922 751638104 842231760 857302717 941202583 328878772 483356048 559770034 762596266 902641399 976198933 588034746 875781473 28734229 483124870 641678654 880605386 595125300 602619185 904088073 955179029 211517125 914803657 469645429 627794398 512499325 590707656 818029192 964239000 45684972 79733431 441153198 964176288 247788793 373106199 127187569 728581241 910484079 937352482 356835147 436252302 227750405 719288775 355746238 884959885 870403705 966542728 204970867 403624180 263823462 483951138 856832341 934981950 347070967 477545724 215547104 601235010 455002292 838456021 813878930 919670125 933484891 973924957 930943400 939580414 425615486 923880315 967344294 973936191 718129601 955128541 468662362 806675407 819338709 960982741 170320252 694696826 226065634 325142675 767449589 935450340 820552302 924805391 35822919 51098913 890163400 909770054 275793914 385734854 365699536 855179546 749245586 756854671 254123908 760924289 533571226 573636394 477911696 842829139 750125780 791279643 711258632 977281140 436170199 987782117 933581477 940285731 72590291 496621405 352842051 612043266 595613100 983987863 865547223 957002277 713701059 803501332 637148774 684356984 440769211 525868633 180434434 368593827 490951492 905099147 342026444 699359802 213149285 378961840 172083576 521588935 826980897 919697319 829522585 838449234 499590777 747984578 941076971 972339698 859620642 981023283 724928064 919245827 168682552 702675827 183303209 925257324 150268125 596610517 579180023 775955664 108862195 706275282 726562620 909554968 347047345 477443092 458987947 998189631 552129367 985911812 469344761 570709971 659933306 665551394 835358331 957398323 979815798 990193992 339486217 442201422 196212411 819461399 995334838 996742233 838861220 946557532 685615197 757389638 582109847 862607484 705540548 953526513 93903880 504589669 225098400 822201199 151461628 624324278 475384914 914937774 588820249 599810599 826717260 829719546 990435617 997095722 384139155 877626962 488154229 545122338 127719946 405094893 507957463 612073834 593812526 967727128 698046504 909993592 986013570 987497104 447361799 716468485 831963506 930602504 179355810 340178420 229632450 548627152 160609046 716809366 48700392 350920199 953997712 959302291 985270766 999788045 431381603 941075668 538002875 894596369 180217374 463453522 310289622 882159541 443310535 606020399 13921416 553460849 134969068 620947299 731904414 830223735 29249527 758911423 809442950 972877512 765367101 992148280 252022493 367852677 709548905 876861063 833152948 938113396 337861982 745709898 664184700 833385951 984902847 985236160 243625954 897330266 502997684 758072381 947824411 967780031 297307548 457459128 264347313 585394515 542689709 718848068 249977527 362140276 255777153 353879768 833103950 843306841 697920281 807508106 595264094 800579759 765862928 967344614 680994982 721518221 559297292 765611368 935865043 985411544 424038395 877310289 63078083 883358495 865703304 930226732 829272409 867594069 848960278 856733105 454397574 586126390 831724933 902434065 277919159 675085389 253387232 470684813 849576749 918088647 914210078 992211166 351169558 517911899 145050691 982326299 894998107 925393184 647059603 944536989 9287675 373671127 160463252 492064080 70388996 328979849 726369910 839146004 876011991 946443621 322054809 726493636 757446220 898780332 879144810 882949832 801915420 834016495 556038358 722495271 460920653 466236413 872821485 936423358 787559000 951325793 466369698 518608164 403877986 806186524 126554148 527295877 66328616 235549258 682359254 963312968 119156305 659070237 691189426 938386772 222028597 779658731 829382676 869597384 448465451 810983672 621784975 954713934 685973498 982525855 464568158 466874623 464681142 670970131 313728454 847939206 43377715 626592220 168920909 681792978 262897609 522083495 752234940 980629984 902779755 981966748 57132187 843838549 512167210 651681642 187687475 622374246 714332596 872189131 703067591 773019778 367183474 860052167 961982270 987934572 578870206 816510564 661419610 943917131 301193949 897286917 101285991 669729079 297575247 440051002 185295801 808257010 924500187 986488783 432705088 594280393 953106684 975693671 622684238 657813038 8337600 225654763 557555967 660425635 378229954 401385274 590840110 928811194 633556889 793943096 395744762 839602822 663579107 913982377 703877806 978178781 76949358 836246114 982937124 989881954 816147418 989341308 120186607 924978019 401278012 757616680 279548935 440612229 905993222 908359964 181767871 342670714 601564701 817881963 211074064 673465555 864175095 887213837 824272000 873943998 635687137 906456190 469632265 601122525 872139197 903357758 869423248 967568290 241306725 908086107 118839457 744601176 575346634 937526639 968041860 992688823 308124708 594090780 344160782 786530768 636469245 709808215 583669082 728693868 804785321 881735811 674019802 913597429 110695880 863944735 867738996 881109883 343302006 903111692 99875896 243009862 385613807 547890501 183809591 381376170 83075888 784828190 233026553 949334098 495909595 861119777 54960176 826674450 181273990 462150361 555359905 719342941 153859318 884939676 540168275 860740441 483193044 842937457 836961446 955105162 84268390 740983653 573364324 710710136 390158448 718415052 959510658 991691990 600295967 902884172 496439639 665642157 131735859 469006721 134660775 330802714 651627172 814354386 772845260 808320627 489819130 613465484 216573457 698089634 534551456 870117903 92423913 486597612 454365550 967550884 577591658 630577914 405047608 743591331 191492612 407218255 578019947 928857886 821492802 898487805 386619788 469842524 954881857 978313769 518940432 886264388 864821938 927765827 402678040 789621654 763437733 783837129 569057537 719301634 354355240 678813286 353181879 907610885 510691425 662230037 793015436 874641932 493159920 955458834 341016832 924608264 112053739 691730802 537969070 615803854 519893136 678312321 405975898 968844237 663157277 777673267 253396843 364828076 289116117 700474378 871090699 919058998 662891512 864029826 791039362 825906267 841457463 919941654 771905853 878136982 762417691 928005477 915514167 997549694 514726596 740586967 105370503 522111406 944302261 950391153 439009906 443030834 845931553 961851539 257206570 892511457 997024626 998746242 468751697 861016378 724174018 941851553 330320384 965339126 981655385 987555035 584786990 832590068 711709860 842070310 374058271 717778705 492768327 665645843 932982510 937314432 474376253 649787668 333278267 984201098 316827671 928279868 588433722 845774262 834265056 980120771 552099550 722781867 638516977 887431025 951128144 972318922 132221293 539598835 188656810 758654020 503173790 636428496 283077392 777966496 811010448 815615466 864842780 932267030 959541346 987059544 884408810 965418385 594936842 704855264 324053406 845611386 324987856 837874480 229406721 887172825 796065829 886864205 72032894 787422894 602303048 714749396 792909966 823584813 102186800 217900802 824371511 959246966 707073924 734542785 982711215 987634882 700525324 770677894 293355554 475645826 684915283 770646002 528517154 683988798 883453625 926383123 792745964 899964557 326009951 914244684 219578695 347878533 906800724 954181172 861653545 948570383 976188798 994079879 83107147 522261653 396444601 639375907 12594351 183352658 437963734 526395731 145317296 948816914 391029 687750008 422990220 778504347 922280228 999929589 377650865 575289319 344066527 482014289 799332676 866136197 547889538 964762770 617536968 686952007 309920412 487748105 437725433 758074873 522056443 939099403 98286099 270000059 504374720 758772938 106833155 192177782 477730745 954222576 613044950 896506247 401631552 592641328 683879746 729753901 903689025 981304658 273923209 363455239 124405086 275184579 86373819 381071561 864748916 941012292 131270498 728892307 508779699 520009799 868389020 995200236 956028810 986466946 349556204 424409400 117397100 633202817 779284483 899927587 77272274 982259317 955368335 972634780 119332151 400923689 525129677 984537233 958228264 990005223 170622964 659925091 776737703 894746289 128889145 479563638 360752228 532135577 721528656 864599900 179847296 499098788 569832815 781465060 996362264 997969111 247923236 788788792 410636107 434507864 833168259 954345517 886160295 897693915 576084630 786836006 619484843 986807142 612212423 687418094 529922712 953687485 49014239 146786308 463207609 613698115 131623785 892516815 144352141 850770323 583307884 855829105 191297883 838583324 242986882 732788115 940364407 978818309 167437425 613095314 607818552 777556201 107176088 833048877 340052787 538332986 144264531 523066175 675745526 783902403 361977159 794390546 412899976 593904124 434844063 466205458 794033989 887163513 805830572 885256921 300699235 680907451 600654574 739207190 72556087 72812085 820874688 901933873 741306289 746489596 214642017 905848069 483897258 984383085 806766428 992609499 272017737 619768081 947538488 986068974 371504036 772635054 542040697 701944151 193340183 943964731 544087445 989430974 711026924 946834235 911595689 962987594 925392768 945586738 599387564 780101176 346603477 545268030 80817003 778536058 834362843 835217713 511725694 654223716 927896618 989714059 653477796 782863288 929430344 967207589 997025949 998403248 749225754 912397984 40615694 914199669 55564061 821686679 352090595 710255218 636589437 647188814 904937233 906807516 368198347 432158235 343668792 731272076 377000099 812340425 468196846 631495901 241405072 949463516 103039979 574484925 645774774 935729625 436810521 850125738 133377007 413547511 611503971 854476524 321210695 553009971 320024558 491422930 996457772 997087918 729699927 843862075 45549604 497248250 972362316 995933962 803181063 897744729 192667102 991400359 438695583 726675943 495221717 599277572 719899642 731745010 285039060 462764842 250481030 483767561 540169833 900713664 544973720 755648226 619484164 782342293 498340785 876937923 86830812 266396553 333952015 880950421 586050462 621439109 739909852 863087314 910706140 982869375 623626940 912501561 867362078 903636936 318780950 679259181 114074119 283932058 565723051 629144356 543309160 765075034 690703794 872276634 236669278 885313229 214524750 892349809 394068705 727156685 761629101 981715999 770889790 921413338 578082767 606652648 514770409 551224777 619882305 842846425 151702388 156351536 833377977 905071225 189607609 807203808 971975875 979410337 816496891 825764737 990006467 998965762 196091433 999056532 98641778 479064593 874865045 992926427 109286838 731274780 101160943 651089443 296290314 586467801 642670777 945375269 986647296 988585581 379711655 999461350 734941986 759187533 237304530 763560255 150760960 273688486 424413168 802960580 519649239 759139654 853243694 935846415 646052190 974313270 118144021 880728246 223039786 719547244 884274968 987979589 219011506 473563767 806199146 850228242 248851822 592717862 536922477 991805660 820646419 909606942 564984338 929185190 874083743 936156563 18317617 56903423 872830648 919087803 196121466 680850372 399837883 487368118 827814413 902828406 215013127 994270914 269868730 451934628 233476053 357854158 884140500 957010572 495749569 698415928 245778724 417184043 411646116 459067866 309744145 695628818 445328873 569634064 726540601 937275736 113843666 629707385 374053432 470584590 721246402 792611238 636333955 774228871 996862546 997591165 284729799 510514519 108828130 220161301 664860207 673602577 323238768 733054607 576897684 678240147 996442805 999437772 894900152 957198852 742032446 822650320 313379371 789791409 738468545 876273431 842979981 979272046 467851811 654386913 303681817 826651864 197312482 300870899 619684977 825699759 402934948 570953062 59942351 96354488 859068891 920529634 511070353 906014409 560297527 779512483 237207031 579956906 562474647 809222491 881239719 938674179 326044228 509496655 250042946 947642275 419083154 947076275 90405102 805619745 12753080 800776723 168298248 441028011 788596406 832983945 586159849 802747025 69444131 406014324 425480043 937633057 373319122 654462034 889907976 955422538 892753243 955202299 147162960 414140364 544574441 893779942 464814012 692399525 490136174 639095783 70024697 603250714 916281921 986532546 828577500 902962682 420999861 582196275 47528291 368370932 548960826 565388268 862015696 920060943 24482953 764234294 962242367 967814724 199634752 848078720 895546681 985767097 552931456 571841780 698551735 829649833 978915809 994446300 250994213 340997063 150315110 278839753 181967605 445678990 647800249 950307656 951128673 982846653 437011107 736816597 18226199 344489493 392944992 821417704 384772416 623638356 400376654 722659220 244313519 764961471 73703403 696057928 197840082 490689268 408587054 882487448 945343585 956316001 163477971 832057651 547930615 697075392 573158763 846599576 19602582 396453085 915948765 957771233 498369376 780284608 689361827 793829164 311770818 704642632 953459475 968200320 501163531 956985493 531139950 930884516 40086837 690314945 840767770 930398068 768305900 891612409 908750442 953453583 370610484 443805964 565296056 712163072 458790353 982904450 490685548 992187593 134685627 670401061 797501137 959588296 81403841 176980438 433119661 853885712 824560268 858837748 587242658 769581871 610865696 969071436 702064452 978738831 551137747 995895346 223138213 961177749 688915181 867897904 626476995 911860433 963070927 974175258 608540083 960924168 550343081 824203780 80794531 564205275 210491055 678896297 760820935 969224380 97717956 793318723 840925616 860960389 856957045 901849479 248087793 918686846 170781938 578180159 594109271 659836931 469672480 719473450 381700012 390867862 928324887 994752497 534073558 965083823 390224266 903125962 712026501 836874314 990584163 999327142 623246986 949627468 51344569 74441127 994975002 998393746 231365286 294421269 751100734 959576839 392121318 436859744 572817565 593847374 122491784 790684725 877687272 913650926 943474133 959650885 401851096 997779773 851412760 995653497 112651513 198572866 716157324 923085801 131878432 223956797 309699027 899007917 597853523 750234398 941885052 994906889 102715149 329238686 397049542 472024017 485286287 994501075 431213978 882661670 189501085 998627114 177486518 765616985 111711514 483187717 716859011 900542177 600397441 799447528 746576068 932642484 167798921 744143441 512442666 943129023 209874008 762592537 619320467 692892342 826589828 889388555 695352697 832014542 679841273 824184494 374523881 454826910 213059508 341916240 992824619 993559517 804979346 908801761 79742640 762299991 223944351 583128109 47283661 556439723 818655642 859828115 113088474 198315264 970776550 976973005 542286296 841303427 503634800 635998664 917344285 998928499 365233487 642940808 708316128 743767322 961534052 997004909 486792725 579462279 673931605 953961642 102520206 623954844 550547952 573597980 634689366 797617848 4116174 4707101 886960297 928380220 352837299 361984835 988743455 999135361 278381244 944506713 752840092 773097739 677455321 839499078 132648646 500688564 586881965 893266384 713683935 728872042 463571232 783742898 335451959 804452034 717154852 794037503 232390686 835158935 266388880 419068660 340163767 464053839 301027250 571514773 752740456 761246418 405034274 428448686 194663172 232437876 700121375 857523208 9495708 421288599 658268341 739681500 318989951 923681274 73198260 164018703 792538435 925804205 268858074 749963266 863096024 992581794 803465615 884747470 513107647 663295832 430415750 558558547 926814621 983229335 911669555 921033911 491963881 764468686 441761385 695729674 445036092 965256167 76666024 994159440 361955205 849296150 428466119 845533473 180087505 582866884 943758287 983939029 181938638 341949755 887579645 936052049 544279181 911013714 608330553 716963293 187339156 706823284 2556990 487931174 551641341 991791226 793177037 852611746 832968839 992120289 567266915 662015259 193903349 233377777 980625849 993994083 777108521 934179044 120734094 917358675 965367463 978146912 72393467 684312846 311109026 404633360 929425966 973379243 565788911 860277531 194504126 576205308 835694922 892348401 906210541 992719605 329675038 754469773 834298296 976696308 443783069 624140943 969564046 976318135 793852202 936753447 680634909 772378226 506467860 901784163 4339266 402827208 780067831 867715682 827090546 973544322 493918705 958134033 428737755 546692523 140298830 618791217 521372135 823474238 69017939 481477752 681883079 915226330 743764496 838240752 746358237 813682222 305998352 637386190 143615906 500833528 93337428 233921077 91280010 821051679 289725516 430044101 428046549 502693743 405210914 769484533 569119867 575957512 555774012 574610316 769854761 979445645 919374199 980984080 930770917 991351651 431438327 931422079 600423471 814708645 992026816 997706878 579758978 761967458 864121658 982909339 174547593 727057385 927801209 997781245 915753055 967872924 44638659 752078359 784213826 967646172 166118122 258659894 95142799 915859717 461233913 997934419 885785399 946702936 799117089 912024779 574745804 667742927 834901058 968824918 559007812 750533965 101058350 405132253 978953286 993292430 32418644 316556592 163276333 556481699 342119885 711872667 948595455 964646084 372051713 639468255 620582257 972980683 636291085 986729083 223340457 556038690 150530852 540868140 462389470 642206111 455182723 879498997 101978194 715315457 57864932 307074570 568082572 873466166 310772614 980769472 122278921 757379120 373495943 902964175 690077152 791122602 734700810 763018713 407620584 574992909 613481426 674316942 45130821 972786454 678415439 720621561 872010531 993661182 26219524 739276036 921787974 964216803 254945323 805480824 672853246 876581025 966220770 999459467 661484269 977217976 34517781 281052827 576155879 751018442 206662520 223157064 153890288 202990611 886779571 920744995 615384057 624981853 952260273 988210007 56525408 135747794 859497784 951930795 497044335 632764008 726093412 958622259 681416317 820461127 95004442 605293345 228032204 318079140 240810328 916705024 947116499 977324565 196503534 614478912 944543763 995166139 182466659 794844028 576182241 858919516 629604670 930015761 499169983 702515503 58774167 960481222 156145136 485740604 248450947 296240529 457535147 768217145 546711369 697326411 242534983 962725928 210510878 233801338 30654881 89152311 178556773 869663175 375223984 449989723 955115614 985940210 238791563 339230682 65380550 827585576 344166139 901112884 196574697 523829541 699938791 962619943 170849170 623488456 415817045 681793439 21059910 45587923 959840632 975512719 527063837 796103270 297329239 653846855 659319007 961530534 463333443 542950134 511344372 567154673 220346290 742980949 262366631 667293103 967657246 983173472 396935286 777209726 747506327 974169933 584259477 781194153 896210569 941142067 510701596 721423834 804667905 851769381 831371831 908496425 979951848 992114053 961935972 984116881 326744784 607901014 719986735 960437080 928558120 931889816 156752145 685733881 419639172 795725611 424249759 597900096 786161227 808658921 5234275 954011268 88624515 289645827 986837461 996792349 442751117 752771347 798978501 836334257 85179307 206492628 388950638 922293476 112589847 658472227 588357565 698433275 964722123 975010345 663299193 899399792 531386404 759246718 567981145 691764315 878329986 982389128 598248072 885994195 525607022 549067990 937701974 987253151 363910256 759729813 100073713 746336539 46053051 453664576 67233321 205102891 338265260 821001481 245333760 311947415 228266851 515537983 729294135 990711983 703887879 728002082 132341379 578479328 334440776 611521716 759771511 963314757 727145685 965093002 413488289 770172426 401861441 871405985 613199449 861969072 166136354 405374493 510626268 868755440 600768644 781170795 545278917 758192048 235752415 551290010 397929912 755631029 527188568 629181909 460537456 482730561 778643869 958738873 703885111 857690942 367332237 986413644 342228450 790300991 387268985 598258320 387258736 684371939 764691854 766557076 531459167 768745027 487479806 654401335 137136562 266402976 562701674 960251143 586107742 729530486 192603901 916744883 559275423 835562870 416950504 517542535 585808067 628864724 921673597 939275542 536728019 840254892 308859273 597747222 562014333 811305869 592161604 666196699 867450094 887208460 569366768 575413842 107661494 557258046 899526466 948772461 41200381 155423285 85252252 983759015 648920603 913943559 441743779 713748410 900649720 930801198 884760484 908994511 668826993 687330187 299395626 517836352 403028894 885499244 947284037 953337474 247262357 473213671 369049252 998437359 224196587 863758618 15382011 55161167 108239478 233322056 502774835 921389871 254122929 548987690 993257292 993381164 527181312 797828459 977358074 997979920 566993476 846557761 523000065 793420890 932717946 937385462 316723308 564473183 314591576 615266785 495326244 710952077 891707764 943801692 399111475 700964345 562527578 577564832 459443515 622676526 767827269 866759726 551550833 673077669 412978155 927907789 986717263 999428935 223408984 478539868 660285809 688685913 580140115 719553488 511965439 730036418 607446675 698282276 856275806 976603539 550868470 949589948 357626411 739049582 647248302 858251886 415481667 706797139 226764824 949699360 557054302 692151246 942679548 992026718 129161000 898869235 33934480 287677504 983801039 990512485 980031984 982819796 884508877 985208210 301924262 871953492 361489478 558412397 963026050 988578745 779067734 873516932 698570058 866298396 382553791 861614398 20864364 837886447 58949109 717482198 245021139 552275962 359049485 713165722 547188869 733433663 312569440 846598787 47487135 74136291 14241708 476993963 383036777 787544488 831656056 944253302 389664531 903419605 243588608 544270322 696390695 928932409 42828683 470083970 157108747 437601651 201613320 822280446 91260476 442385538 983847425 985119611 860397547 914030053 777629678 787407727 555384588 622225486 248080138 629552239 824833350 935720493 607607595 844050050 188254102 972184492 664867514 971712152 593456815 901020337 603529245 996902250 270727855 888218498 136311237 521089038 145712045 599210368 17206545 722662234 314998832 478856615 159411973 965257284 446392488 729063680 176175628 581077016 770761808 932156620 595954029 960557372 705894126 872546337 985342760 995444955 948897627 967622237 867949076 968861167 254138879 980218817 886863091 888329138 906635361 940963727 558169197 745532984 694134518 873966116 187614282 214852513 162510007 385963114 101955354 844622040 642004344 788824609 435650895 458546451 566734966 877103391 846928487 849514723 299498452 455729278 207499732 929296946 122184140 149108057 402588560 988065101 45556885 432941436 152160716 409786429 324492315 571355512 232415319 594715754 320859150 715675563 852279150 953150484 522176219 995598978 177356200 302312687 691621860 748765038 598116832 805757157 277645648 495905277 863013848 881710998 756336677 863722076 174453469 981198601 847476949 913292739 305411096 839465628 175545384 994641019 656067200 928983695 843535674 852503489 826938965 925782982 286882244 609779049 536323613 838270559 467768682 575495951 486729057 916544799 992712143 996183552 408635860 695596007 158096285 273126339 306031773 769297963 694975756 760001146 392262897 521555459 704406304 814880417 408851729 928192582 650723051 692881886 367273696 820292141 77159746 429045951 842733130 913378796 896665714 925170868 712085697 946543902 594597989 666941031 834320659 905229480 502772522 705277672 229588243 774737432 885447467 939203058 753004180 819035401 361165840 404955884 724540807 911773937 695871310 699723151 357198556 588286170 648121795 787581832 338739903 344579950 363501978 867164935 304502980 945628828 632500733 696731933 248699965 869059519 798677666 911827926 139813445 850350324 883426269 914558559 436833980 494233622 879367112 906270280 334586457 565625185 61848301 360039946 841028446 859888807 253913238 645778674 898828637 997983638 681085644 798198976 4647696 520896979 65173533 317432124 103684060 435123321 325883517 871359115 442512855 509204264 688069663 827290196 707703021 966374474 555569923 934442156 780782801 975472772 112472926 331701537 934971293 986546693 892100381 974334595 658921504 997055512 565723342 753363872 327794428 644016822 961383648 985939393 262744275 533289953 27215051 691382327 499596912 667307528 329477726 782970094 67676804 478685610 278165436 908789052 950643175 983688306 467074241 974951662 391144374 834293292 543285639 997435630 700148834 748050877 710228723 895648063 856441602 981895973 152779989 990702577 301240311 926365831 887103659 905386543 148158194 397572652 958780866 988795186 901679239 928428575 516547286 831402713 151849493 815251887 535051295 984938457 988817168 995946704 105915617 311302886 172298011 972114851 850576081 971141580 434587116 867772682 723892830 987037241 481373213 711153912 955392194 956475420 47451056 201391505 20577393 561576525 132959545 815764012 763277071 872064148 594719211 614956075 616174655 623583633 717319461 819626750 388766182 620365204 97778564 668371226 593785940 957685305 362232927 992245324 910518937 985700737 205077956 499290620 829170912 873816583 579029897 735881693 648062530 994106128 428555010 681260245 334835365 602879397 269880294 507299348 85255632 604123574 159692477 851924326 671127085 671338960 990857276 995725396 842400407 904826924 58431518 396561372 94446178 180755096 624405872 666400898 371414925 624548239 229932547 449550093 418325727 689860930 358986502 664092793 405961724 426925106 988818406 997628442 596721206 990758651 951118833 991854413 214831937 291817722 169871674 200490788 525115420 629042308 822639593 889466529 753136134 954198236 246334940 658131827 99491356 433640445 465808792 974489305 242784097 855212749 264353129 840143347 910715715 990243587 422271247 878507080 228746530 593076832 397325032 513181789 54463143 295581036 427993750 862737848 605283688 667876566 985585194 988920576 19945127 707865081 502011129 681481654 561999718 657593475 962100256 984956524 344062538 611053497 858258254 897088628 534898582 905271326 855023622 993344159 120325600 404821040 528583165 618996651 226141646 283299146 160112653 714344870 322891594 900881360 763693091 983048430 334807278 934381609 911820048 941555107 86520209 710477124 571090101 968611281 804092156 812955361 82060947 846243505 112101046 129492319 435860338 532208014 622195649 775119144 17084061 808458087 165544095 851574549 82048939 104068582 727002002 752680354 961102948 976776190 551353221 830617986 508866126 671504033 344693390 416075279 68821904 366344715 639748993 894459031 805410992 853335073 791133173 918747364 754192459 959544446 141660498 819425362 221920230 507272475 988892837 992201598 59288112 801974855 394923802 427258950 383163865 881583080 399370497 628894119 409906131 772983458 260331573 837734977 76548057 242904008 558288565 579483506 799090476 993757106 784877316 973653117 342607543 527405214 573516347 848775788 540737769 541633603 619245292 770696860 618625100 894694308 196321892 397128159 570624561 593167479 105795492 117623745 788101255 884424982 507344786 713021455 676046238 862365826 607066180 619469482 551116994 567142824 638750698 985363736 621513375 663338298 871488708 964060377 496714252 741284062 62269767 978877686 598769547 959901056 806757353 862788345 821208842 969678099 989976819 991356651 312874700 730711923 640708306 699658280 182270550 745003249 7563858 488363256 89055083 636493884 452074604 498363907 383617553 639925377 115147621 290385996 600049241 683945361 958611765 995101839 903816386 928218782 905658278 992519130 655844563 660539272 161715799 472230817 706050286 748089040 710805653 918792228 473038411 728490700 365346267 686118446 449415857 523470876 107110670 851806547 125506441 943586074 415037663 540712327 305311434 705041118 822130152 874364174 678329838 907018639 147878299 976835265 649516815 719319502 107726994 980695677 99357831 131671443 497256297 660203358 314929376 739804721 12277353 435919590 464081135 862321792 62752023 618630933 101398658 223273677 566370141 609328007 487797601 908209026 69153321 285901891 973795961 989064026 925907179 962541599 912385709 962048447 421565339 819344621 784450997 904039624 220054123 959961561 653439596 724502168 366312437 885890773 412913437 562058022 394682133 730135197 994852217 998331718 867913108 929967391 821710526 864149229 978378788 996020471 75526726 200493629 97098473 552496365 523634909 535301442 817407402 835076772 623943526 785856060 387801167 685370358 107230735 211127419 399083690 844938286 323780437 778341453 236697148 868366936 267979905 994100039 353620729 442171337 662021640 857195277 100786941 878003516 86314249 128583894 527524406 908134804 681563222 962585900 424056607 618566938 341846822 607288845 674350824 868176391 611170589 767293224 673270767 681865709 768840450 781236575 134768006 972068986 456668050 631458449 808488027 814054773 578461753 978058341 400472388 513199735 825052559 950542602 333717109 786798571 136828556 625139876 686366833 837628765 688001338 942572360 436894180 526121370 533444614 832425456 596023323 613465818 171143789 826631282 865239656 943078129 90344736 740652064 818699063 821928181 280369181 746794679 493844069 778143999 842322540 889904541 837514673 878360872 625788164 875295250 734544385 964074843 802645795 951703722 299887065 796063791 906435474 947402859 492615998 696186604 942091697 975575446 162396747 827625893 113666550 119538781 572969201 748006943 308533648 507697991 382376574 608447943 256923789 481992216 629371058 854438787 350408685 749895078 709120631 736192325 721844252 867511131 813840940 843137351 471451223 700064146 308035189 659675065 2826794 711190375 197949943 871586425 958978040 983839529 374205739 765908911 383892866 439050515 707513548 886428526 912228288 920351123 321262723 456327256 952943174 991924542 324474629 645193816 584978521 729663381 535766708 953668261 118558121 876994840 582948757 763727023 119525381 661061251 431419711 859861057 582984887 817027769 669177998 984274605 968404654 995269360 659504871 932498849 686235974 943368350 595578782 869685948 61966481 436506792 535205703 730220378 877031425 960431392 571189907 945096197 19437731 759796625 912499055 999753055 175380329 253443036 476262287 725283967 144263773 697303483 297730844 870131212 562042077 903954805 424822921 894570508 731291301 922815844 170832819 194096840 957602601 984661913 758747638 860109727 379211004 937746416 323285000 652666935 363633574 698152492 787702006 870463266 238772355 971424413 243540534 729805428 554270366 623128442 149726449 575270840 279546117 460248853 104441091 156605867 854857750 870415829 950403010 990001254 384630792 669806137 98229483 413276906 49459238 754056778 305535276 444134310 66634088 398582223 177022493 963277679 251892388 406403563 385317187 694252872 104308089 734249225 450360788 759782220 218174672 391963576 675883504 800102291 683841680 947477390 251121501 482749708 944249482 950436979 391424706 473423192 617437530 689797905 106201253 949416927 148070711 816693203 500393775 902532379 358681230 514132138 853357079 909062461 953337130 966498596 256026615 592065334 291832984 546301720 855721532 875740563 739999925 774588724 684021050 870598956 247663667 490119582 475693192 514576589 119685683 174654686 848033346 936123899 933451669 984227769 186687761 515996626 802953853 955722855 812673524 874329752 246825534 556013661 954372997 994815827 735262473 740105275 478207022 637555414 68670926 310319005 988787902 989914705 365128639 678372331 319168962 336225326 970151853 972008600 494173261 547837613 61087297 236215179 116385446 842329967 72947697 332700288 975641400 992141643 986222120 997279683 683023480 767098285 684351583 703418407 839607021 863252345 891338541 957262888 418178748 486785870 972802639 980901142 791215938 812065606 738948066 960257371 285664176 287098548 474122741 668080179 516585125 525809716 497635279 508603631 754119192 827067933 808832020 941491043 950077434 959664520 553135131 927434084 14616828 739701361 205591587 675314599 159299197 392716925 906747939 943796006 33733375 124479652 780591280 876643547 947643412 950590264 867820463 938826130 476247054 669053864 561607890 952412946 823622291 892516178 4892036 890765617 727953275 770763088 766158724 966198769 600961597 734638897 400803007 793299058 262557294 945375263 191865713 572881014 906734307 980360010 127473507 301840621 677089395 683960374 469636986 841543593 455593851 832989196 35138149 535945731 729496773 858402337 210567105 593460922 277127983 836784441 508589216 843473958 389453701 768523809 606618519 848954233 973584079 987730723 737373247 994518861 210896124 965212312 882258459 990314787 277490521 399769018 985427444 991477432 376585736 652552502 287062526 552827062 851559760 987133056 404123085 852847817 264363247 286609394 547048072 752329194 384961032 995136129 241688541 646029639 324734268 504810676 881205823 912887262 487359447 992600211 469359591 693820767 516967245 583034516 350268915 467772383 901054781 959502543 993802139 999042041 177073277 533262412 272037536 694176450 566584112 699857575 415932746 810230912 465489619 636738464 27713421 601144774 345730315 952252637 166192292 379254705 765997847 870227522 521346455 898703620 616528303 658243925 89676440 469186856 702619313 933238829 414909861 479331814 603720988 759329729 722073146 874883359 588933441 736238274 470009769 819838828 207708606 327891416 330516883 748268916 996389789 996966515 229498976 411045928 359252115 472478481 387740387 842140966 530512265 669332409 478383922 712190778 47178530 58854338 73349876 628181509 874520049 960596322 976795848 996677559 7793553 584087720 434953543 894149286 362692777 543102005 722524372 854729019 323220681 771148898 239403628 295079150 321263728 376998246 866833182 938607284 525909086 593086734 783798214 894221356 626625117 664782607 882872029 995066518 620790352 965135354 215786588 733974754 645377996 785671317 149128122 553256955 457713271 728539618 95323385 472038050 563156424 646876579 952760144 976294914 449257964 871707956 501319429 768595745 58558801 687756297 578556741 688861577 839159314 918309832 266297646 461068092 819141632 957675136 590238349 922606680 266026889 999559510 481998969 598849419 581062391 925280929 619380098 714909147 273800269 983988994 362031520 633781510 627829324 658092743 28800555 113234762 216855370 388354449 516445689 555942323 300755801 666819434 741515129 922286544 19488765 125241511 746628170 839026232 128461561 158817642 816548275 853991695 130513388 460534152 178032001 752307808 950771946 990508253 448454307 919656826 260400892 586049230 692698355 771858396 348714857 860284507 482135906 587340606 951865672 996366245 454121091 872614621 394217425 511916399 98320015 917372163 529084726 891727088 866220102 899793508 671606920 948694563 170149852 696519662 801755875 926721311 396165635 454357532 231609180 608777249 109126292 410658448 117438542 837675309 898980290 955140400 771127802 794758615 797142983 877766329 178182278 755867376 618832253 842887897 653885855 810036634 619414727 819245548 783105365 800228930 531454413 617851464 807470628 916005114 37041572 557269435 824164245 971401880 808989897 861548699 38184637 999703676 780715449 913315369 294403850 295204517 399667044 734047447 115511366 791355874 242996175 789441404 209921877 295839196 981911428 986870792 882718497 887594300 456776541 783760122 966071947 996796371 958178822 979850740 98183024 291320608 472041086 834819405 610083838 812036687 550295555 941929628 416469828 529269235 633211498 688472608 890943435 938453466 796186710 905125885 645016757 687295367 483562764 958042525 810422670 972364348 998080836 999351204 105539506 133323224 199499784 868370687 184795239 688021955 476785391 534178986 411857024 773438191 723346415 735758469 510170240 536751147 781742395 862612098 94478542 821449099 477056679 729715105 216577297 856589910 902946854 967447674 876292300 920293494 835654009 926675959 548163508 640408145 332834961 892030474 233371978 474374533 158500113 162718722 529022159 690209889 714090005 719107022 563156791 607753399 64765806 626649731 801963663 880177815 542726313 718700961 413229756 994116744 57173076 472198553 670555409 844703632 409745706 513489795 896268663 899745597 987098217 989261865 22703761 721955959 176910750 472041960 151798534 993244745 357146900 625518144 613198850 942545990 314177179 487753072 281749749 868037041 914178687 917438553 114489745 749650176 810820670 858681134 388393578 724220216 12410259 463174271 56690924 904042622 325458196 763167085 522019773 971606767 41722498 725002676 740194753 746495563 166280792 672034925 678201778 749536433 966225251 968317829 645017225 696726305 211180436 403806333 7123114 132514630 982093267 984941637 243699662 346088627 442118965 445515036 430609520 707843000 408553595 520078308 780298426 944742440 161514460 528196579 494897718 687971203 776036893 950863997 674043550 702971256 369867716 745744919 713089738 834347500 15072141 737213589 744950492 758952352 612785767 992100614 481957993 735510229 879977270 992291696 415927460 728977085 522882793 656105532 390852078 480985501 295830872 640149226 515629268 598132928 158360565 607049561 893067764 972485516 713439731 927927134 949782124 983405199 173488787 835951706 586732896 926787251 258048882 683131305 584873424 792538653 153401835 488100448 851461052 869055999 138380503 777953139 580210827 920263999 4468925 629746598 239150340 663003597 365488243 925473485 652795263 777697271 883687104 911703976 74146881 342205510 928784552 955889568 380384730 918360344 590375152 912658865 785930465 946669652 668510635 776955616 877837836 909496370 206196065 427874858 119770532 832933387 499567641 916497258 676108258 691062214 991970602 994920954 879540877 986555214 724997882 850673509 726131410 939171700 540219572 874242352 4948419 304358002 136652951 367951348 281239564 315708627 290615434 501666750 561955361 952025915 966084284 983432258 569072948 814716214 537500373 870278983 856411046 959800763 538320302 830942729 693793702 854285733 660082964 927157071 982745585 997306589 429523705 471058163 667041419 946018748 335837203 963182654 688649825 689267070 995536336 997219691 538487113 996094843 109973529 877991884 926976640 935671029 700312579 976410287 100086929 662694150 37295697 821464166 725364181 941914479 385319742 990118898 425554454 548395456 123502047 337437043 449237622 769454284 103675493 611627520 987242608 997238474 548079902 626422588 809415007 995341980 91633 687516769 469335630 808422021 952871385 993735716 777440983 971414046 775839092 781477699 784464565 905095415 615991935 721824294 644842565 717299569 298364431 790320165 3217794 656708855 511036458 592094110 130740941 836943436 458943737 699723233 663808334 891970875 133039524 694756734 920353662 978339077 178222608 260083167 816283737 847334860 291411307 485801819 971430046 987559242 476202845 995159909 778969402 877821566 969661451 972375063 695406434 944724883 75028123 128697663 167137651 837955402 502694769 594157913 856897221 957219150 21673770 179755712 59905198 606120980 397878270 398047144 190789116 368100308 299459650 309644298 716556910 916231751 344672699 952537895 217904031 242628886 755344457 957293508 63310383 566392603 191989676 771447089 433179461 978777887 414630384 472912546 297521807 478051220 688733331 782903737 75670683 784387073 885171401 905827570 352000785 608201489 573222849 886535407 783757894 791683741 960920566 985832131 587613625 945138704 919850633 957935354 838923814 875788755 854787100 870634036 687986172 866843365 582670435 989490374 37017648 758214612 237433521 261526028 448687661 473348599 429190104 822522709 143042668 252765354 555744974 741826815 97488129 457627786 120667952 134757628 573225881 938560023 964678692 965956300 861515876 961707422 913203486 976590968 540271912 651735055 705971449 834335731 833070957 994983556 830754723 988213413 425437162 822578086 527656724 884076562 128110938 462121579 840959287 891601639 315332933 670324946 592967502 631461902 904933929 962009249 329861063 840298055 228919515 730101931 458583373 927543577 337854887 568438006 328976243 823342902 436033457 632154401 919209061 934979933 316967465 946532554 488154100 772710306 773388205 977219130 842236341 934813468 328814267 427375345 811454262 911459501 941122397 974264996 688407573 746019943 389000739 481877817 87151255 195593164 478108057 551408085 115742412 570210842 954398416 996475928 295152792 853803411 370935969 391116344 890709682 956013124 72840103 867972908 548208190 691434190 160175218 520135998 7181975 47368332 432141816 536149558 59215099 671635327 959908780 996540114 382486629 673634870 858515335 896018334 906342579 926234090 345646443 945376916 694022461 920139501 830216013 944735759 996146750 996439712 953260973 996279884 575561188 967196206 733922678 989518189 65403298 641120319 908843163 914589192 295855380 884493918 336058648 345429298 195487645 515685242 226733157 974509243 398182611 999958785 335146632 364736158 292125128 818152746 90450244 770344054 17871128 808022615 901908783 904681045 30305688 690732893 514456860 919231646 709678530 756521731 665080704 908884378 99302357 223520126 104725947 469761314 507378799 641438088 432951515 880107381 161093166 533742381 393391719 485334592 324323516 830910203 980037155 983051938 510002753 924928617 766293320 957305196 591791217 944213821 201208076 298406057 181469402 745060012 757108371 998966506 195372892 973352971 440439078 697271637 140610627 618272584 169515929 602455458 271212835 308600256 344321330 598097724 586766026 936246458 428666876 811720309 890791941 969529918 566241201 934087996 494652049 522172757 220508702 341096853 356381753 835267885 49758718 421217069 413133998 746381419 445934048 598820673 629063349 804482712 4979136 625141792 976941811 980671125 337672919 483458695 508502864 631008793 143586968 450659354 897530515 901954390 127558703 948842102 387938593 962216271 971438810 976555151 302443419 893000786 621832873 691433050 426036442 769788663 708652212 821740706 731498426 795088832 544824927 580450037 555564226 571894924 386874670 470214462 213841883 480531784 445356275 934627296 775288524 855164111 663699196 881882337 522689248 675108230 757475746 980756315 465432117 784968896 745798902 930943157 368629448 825606785 215006285 462473614 780670948 827986220 428235090 805105321 834606140 914531389 800432739 909115785 848434067 894550548 925940206 991452083 555215040 974429603 880520405 976804979 576512863 905111278 716167522 863373594 325883031 560645447 770282603 997805010 585315570 671723959 325575556 619858633 743909746 912209202 74930004 80021517 6498050 446503666 429158895 668812112 187868075 430720639 974634268 992259505 528496955 578909904 466660598 868729782 236689663 274253924 972193210 972744207 415098148 962182295 118615219 644977778 625031832 708346464 111026217 210741717 222564559 570354966 84981232 443406437 899482278 962312202 49235028 169100611 799485843 976707634 520772700 916737565 944810195 983509818 581277271 720184118 27829651 780175427 400083509 925366974 659732876 842628601 802182764 944305740 550652938 991728688 306139122 784361844 737873967 786085927 263465309 979641012 905908407 909948771 72140701 931239081 930087908 955135750 157348548 959646565 45196047 242591273 292134948 999981293 78563288 434466196 855293404 901572004 766454355 966285472 455948070 468618720 371392626 830939872 227063645 249807169 368549100 933209882 644809194 953304686 751095707 778755117 690218217 897623960 702948252 710567663 72495007 742280521 248304545 274222706 657093658 882384049 793343295 827448875 16702099 561609213 332699345 967559372 667938418 774242848 442019937 803213463 788012120 947139132 426167785 644251963 247861853 262903113 392164661 936435781 387880856 416065786 523743110 636974513 563718676 777599737 40505715 390479205 646976302 896829416 92347358 684150582 344937468 998827298 75500607 811359650 801771149 947280803 848694860 850446867 726332726 822296492 69168430 178134922 107703403 678670904 402561369 804771160 611241402 645449168 572083204 602654533 148829675 964560215 902706081 963408552 556411978 842358859 623187532 712091320 3404086 71586675 415301106 544237455 966019340 991217989 861694999 935945230 385476407 930916709 138669937 804245263 130858987 690892736 254813667 580015377 226360669 319252347 781979238 932085809 864439618 975851085 868676268 947976395 222517027 924298534 578967710 997097899 778456787 804945281 374065693 923263569 296562794 439346879 320598234 947034712 983681310 989714051 501371762 819369094 89121363 945235788 154640266 895695207 349466423 469322567 497651789 909758965 26304459 669724565 8636127 859411724 143688080 245437581 722933909 918295845 233558717 880630241 834933700 995573297 787933661 968266475 400672834 858839089 670994327 958440394 860352106 968894480 113255820 764187803 202270494 698530467 882398448 925471372 264161779 987010842 956590899 960624894 334852210 648256958 99737781 487819451 434144783 840647409 396584126 929345031 240964135 645705296 725749336 758076624 534154405 771153629 50167774 199108501 208816104 330654579 74774092 690544961 79626672 187741571 801536453 866585024 239892945 882285624 746543548 833618663 556989236 773349045 632975544 972319881 780703473 974949120 249962410 492732885 197387556 970471756 819542796 858754739 885494432 904064002 590413449 935565113 449043013 649020098 393587261 403347206 614393374 811088214 83896373 761906125 428073280 620101294 450195994 605548904 11925061 478181011 188508393 496361259 311267555 799992649 609468932 910806390 656569245 972652492 919530926 936430069 561222633 801644908 3605456 900095262 234986364 379640005 269910161 924259854 296237356 393058956 220408480 541120388 954206290 966358203 703979327 827050534 446251527 704237071 440384202 683219351 896170953 989703878 599379479 904523542 648718167 883701092 395178090 579143179 195326459 527584889 669117506 838043779 112896192 967727688 504682495 640047434 379596053 447426960 148277246 745380454 879654660 920620698 976614161 991361570 272429379 532894680 990001288 997880196 329173376 644678944 595919409 636378320 252745770 609675666 265780004 725172048 793926363 868716244 443495830 987487393 884404459 908920653 325597474 337645072 719873454 917548204 430727621 449186278 918891335 935702007 152740351 320351483 884451288 889610512 471836575 857847310 653752863 850882790 815180183 956719486 947496577 960837127 333693563 786097500 286138443 296752127 716153015 964699368 737769592 816551603 136276372 456327796 612587113 854448803 727146167 826583243 209542659 777882337 817096664 949305905 294372340 708459622 290323674 843810223 283031384 321925276 526187635 969821335 436557652 621477313 845499980 995528650 522343672 705518049 838479800 922205833 34584836 983642242 243101008 584483621 658628421 900800933 838119149 918633166 889597694 967123848 992399992 996851828 500116435 698461924 106729136 402921305 128141198 402781655 279314741 367305304 915059307 955099566 821829177 872888263 468865126 932644001 781421392 917071341 609025769 698574646 765752877 844813363 92880953 171067333 563262202 966839466 755795658 968688308 319937296 611201956 743434047 763011414 746605081 875525599 916777915 932970317 604003561 939312223 277116144 935033885 310200874 975897552 636958972 727917624 98756417 315997662 13764694 775892211 140032469 284555799 160694946 374685817 499997155 767939003 563236428 658734451 181613143 200173948 237910246 839665209 556151915 713402366 956848974 980838882 36312612 228256130 903333870 975022305 300931051 449589894 451259348 649774170 850608218 954285046 713426447 931799813 684426552 754134813 941052839 984807114 956547888 994137008 733433343 947713445 878798147 992087981 779437821 821277412 161771714 204140231 833222200 874223291 859067969 934685991 950347756 989580612 469609159 543993144 765341628 880689681 949848020 984147772 6145072 943504477 810465656 894362956 91039150 654317409 882765990 983014321 441121104 579259877 685433809 838522333 274615518 921715158 446524780 792791580 459124845 546162317 331922883 338640531 135850825 434106147 51827638 815127988 183607757 456728808 297459580 312999192 401208145 554093866 526212673 989454200 694367889 823531979 554598446 973951631 676543861 777325156 169523446 492843377 203094549 966872215 751199253 839661624 821240684 980259687 210082296 241073024 801146019 812648368 87493530 342835436 7845946 395650759 340403995 613895138 688882700 859515398 522679399 654102605 187617355 288157213 432626041 764312077 802139087 899933883 989147091 989698935 695253493 978031444 909257959 963375724 965521518 982428430 564182529 754665624 901316723 984948169 27005641 596866212 713217620 958891130 493209251 905004955 578010483 599651204 275627823 624432853 359832842 889889490 584821446 619446075 530801908 661770033 816153148 929964418 143623711 520755602 140075838 244202676 100545285 219664578 428228256 856068370 99534876 880789093 312882845 478729179 396645542 499293216 973194471 980405966 740491741 748553799 488665814 630169271 880698734 920202179 903983187 963610489 909079722 918837484 868955154 956326730 53513846 755827616 281662790 489413915 856203437 877641645 917842960 923058842 624194574 755887901 900732813 955651987 410355797 501697831 209605811 277563776 289624942 882628352 189221873 927729537 390147824 934700894 654673096 794881003 419967517 771919517 249472140 628099084 209405534 956367747 14318151 82117786 249661281 374287682 875501231 953420869 877964915 944686056 508213420 792318453 645411155 683879784 683652286 861560931 644854462 688145952 591668830 601824898 360362105 610009154 914341599 988208047 925798973 959392448 492412764 529387066 902552588 932281204 305187657 895802888 454249220 934636914 700477338 901244991 101048924 628873186 84545016 615891810 652063863 721635730 112700051 823057379 658852796 879628031 622415525 993905235 922418707 967516637 720083267 764988993 341897167 402294081 18714422 238625278 706258940 782320382 966935846 978948713 740700002 784584868 11129906 283392163 242776417 358063398 852482371 875111868 249632036 936518174 263474380 443934639 594548332 676753488 713974506 718283279 248728276 470166433 971937497 981602209 8394186 275031944 668918219 710253910 222853248 857499197 901161582 952109497 791133472 918337781 578610091 696382684 424327613 756437182 297476193 722881462 370472514 964939166 629754425 918920622 362235282 729628247 49704644 515286776 485108432 992475544 513280830 683706516 6520234 302509349 957405510 968928568 795169101 882388836 65806276 480317219 483179893 890566853 84515229 331276142 912068101 961509743 272540232 358922370 647971909 902226615 421349281 526069710 338567750 881073572 401447630 794180339 150819875 835372069 489980066 682695677 815046489 936179659 561143883 954894034 648559493 678380684 909176022 979394179 279463920 921250587 641299024 969332250 740951086 969091651 802829681 957658029 198523003 861773702 828907669 890378552 733685945 928560680 906783287 926143689 252328401 643099915 800154698 863934686 13480883 448756248 408567597 822599653 663321145 686869804 756452113 797008311 593739357 999614520 295634656 941439790 416018027 740006898 903715207 951049502 102503403 961806281 815960611 985138420 928971151 990821270 692275356 901356988 927970156 957875012 945729731 963519775 323906040 482655823 238376877 437926885 245265826 466621734 860910494 928792042 341882016 730763801 666880482 670474636 514202248 921884503 449890616 668519263 124469942 765341456 855291962 970468704 491813835 897588001 957841240 995317137 929683117 986354276 12130657 970970159 93719725 344233123 10762000 211172106 668981272 695994596 721626441 861769959 344379136 392434668 996663183 997931504 26802833 324002370 655729077 782799440 748552317 928139353 17231412 384968731 688325151 863886145 794321345 984176111 243733550 515378516 337322958 913555796 521478474 747496079 852945453 961900247 206180250 325587069 390596805 502303224 50028340 425846009 462685503 871528454 29076057 750339136 106860568 178154938 56602537 403659716 636526279 787278914 374283522 641000713 717289947 886154892 538125196 833678352 997034347 997721823 595051194 665900992 237000672 850413708 887811045 988596624 10478812 247069797 311125323 829830113 426969981 613405485 125437540 316543560 49174689 197480013 533490795 973107998 405416576 972363571 599656136 761867528 460140863 810830928 242475053 630236230 272884247 275224470 599625241 863606079 357820012 553637959 577781153 632503948 747222578 767175130 836142489 837297428 552656367 566801770 585243064 772430830 657242692 932388742 626328746 979807461 384611941 960570823 849793722 966379056 231674695 291445389 321747815 782489441 362796520 658231055 660044090 802853290 890929088 981065385 934081265 963745045 35407356 964043923 99496875 999277209 299874255 968738864 314841991 947986275 818609447 846862145 426222414 693976664 263600031 559828000 395092538 655193271 277498186 339801697 88845804 469677618 889429999 898545689 439851994 556943434 530925970 552878353 535958417 747529008 736452007 740245682 254545170 487286063 661120844 973809517 311552499 759705866 348214594 786422993 390372581 566536652 732701860 915795632 741745066 812072622 779779844 932266559 319898648 789445915 282860767 539241255 228515801 451205189 805466244 998411602 838210506 969038485 509057779 915667170 583972715 709992349 965259289 977854647 146469552 774508244 740186729 807379710 129814940 176538706 214082242 450678404 824912584 862512007 409029216 581459763 748267508 885760439 850276462 878889329 872136206 900459144 820731096 957164063 532121231 542596206 895203557 921872057 538126951 986324996 238883902 359051363 583419873 786583501 181050010 872449328 285692378 706552680 127888903 159820209 902763591 906948996 919539808 944764046 967159494 993989568 267265272 327100713 691214803 809448104 781063988 917745747 573288943 895906322 847142076 921296570 739938915 897898442 727076861 965663823 451779678 822131974 707904934 818390976 941674304 995515413 391083655 493962438 670097342 904641963 726818615 923319727 819865747 895538047 562050521 762109630 769438777 909994307 808551554 933471141 719401315 840401307 575308274 851236906 659397441 676468400 618363101 633339136 722395464 857587250 939068045 951060759 43899732 340697003 495610418 936396030 928292667 969576596 90608828 292501004 609053838 946434068 805285216 899844853 515233434 754569009 756580528 814116178 16490287 244667966 286677409 350814650 166499914 245306350 969558305 979773873 128797486 356004272 686089212 883363445 49762876 93325028 138559282 484160410 692859630 934975508 828874897 861167213 400867863 402230388 389482430 780049820 850648754 947454107 401226347 615655023 683601738 879568247 845974045 966242884 286804710 658988898 363844711 576578276 644893911 657060521 442377695 974121526 469598094 946812032 395264345 673728127 163848572 747663289 681926360 925541210 729460101 960766641 464556923 725292761 400399029 795844837 481335640 765950785 12404094 648560823 384261942 454803162 344362877 465015104 76837321 87394921 10879070 128174842 659687626 849655489 664687532 808022136 473572358 725716421 197559243 434290040 706797215 770200416 726756621 957075078 454860670 866749767 621076723 917323387 752085698 852671808 298060352 574954226 751779757 882141428 536859530 592189615 575964652 635898772 321500133 905724589 16332038 117384698 583578543 952874219 864093291 878421661 383679563 785337068 19040226 423398285 954121828 962456172 679902742 851786421 748275652 995837380 777214586 925729233 98401709 381206557 371373418 425155726 357322584 562994706 735195469 904717776 36018808 724329098 943061775 963589858 389239195 724156243 111454202 833299362 936235876 972744206 22983929 415619106 132365652 462499008 834106813 840696857 611791803 657625995 495224302 982349012 800202194 917903043 19651009 202234544 800162745 828124995 97852827 216025393 442116977 967731328 474674267 950069735 657660925 961687240 606565171 852618413 291112214 822751153 536498743 578650506 191570251 701547192 970864663 991127471 359284965 955891513 780526339 842592152 6224294 881823883 928692356 932983166 963136462 997009032 419734635 898453362 577100683 930016968 832000071 989354689 140945342 331921634 8109297 595482129 6888676 844990565 980645026 986806461 838551657 962505005 51953810 928441054 537394466 599336840 839311360 908877429 503910806 664521216 794453056 970824346 534510669 948738656 34253613 428497252 939694171 970863640 213309441 443765013 93292996 249639694 733693750 809508727 267100303 447251520 838879361 845622656 36192452 136172082 5659806 94874921 829014095 830771178 425872336 463358532 98843969 438103986 75515362 701310706 74374796 273764500 745059551 991925333 334468290 378797587 322165534 672595226 939355086 967827501 323486226 558351386 106609643 243430854 463480567 737877995 75819484 602787225 741938961 820288255 45860205 175375788 422739976 746125081 957158183 985052684 285258419 729125481 971556780 983371986 150338114 331609349 403618616 651306424 92253606 518630993 903990751 987015496 28171685 312247525 344034873 854232982 142239217 460165190 662569926 708057217 547484498 906522350 180828618 605630193 496952279 893216714 651469993 914036929 299101681 556956631 56792815 319411430 741981322 792830064 982171259 997079508 564181358 739403121 730408423 823246306 355065901 861237182 629339168 882520034 518883217 905763947 408501651 987287651 699060497 961931162 895873170 966656997 770946883 817192431 267435559 278690192 707171637 957442600 392310589 440017102 792335683 854829038 638996603 692653840 179203423 380822550 407318086 735404960 416674429 689715667 620602096 740066916 484793838 966568161 798885356 828189046 254478397 259721191 892966991 943676361 297423614 863411435 884785 822227629 674242665 732309794 966212487 980335567 999716913 999734665 634701990 899442963 312506214 821108257 529950896 613477569 474611197 494214473 417204087 681385763 875862994 988559708 127452006 251919986 786769354 796723296 597409681 819744220 100303203 545307915 94762455 96369833 871499590 910779413 501763999 727595903 5571050 206304058 865943867 939084324 73401649 695558609 330279290 510202705 719576090 823099973 11715577 203408348 396998310 897341735 978717730 978844968 437696580 881643711 487098542 556794609 825834301 888950838 166623361 923775227 317753529 964185702 587668788 915987925 942676400 972716739 406919801 965971689 248804013 505196054 656536524 755619939 34966080 953979955 820985802 962876372 399292150 658908974 574462450 671750446 876235501 958981489 305938120 374039276 940145858 970174922 29041956 475872855 322013125 844957009 827315851 870477657 262909183 472010833 636675204 654090556 708243051 959725108 202789654 599659039 838611916 905198988 477560686 908045044 412330418 573913236 464831518 856956055 959558065 979556332 652704160 835788262 202612049 284466501 345523662 576252439 404641463 601983830 476707150 611498187 85281703 819273866 243122611 773190463 945619796 983973347 763794821 829153061 241259511 303182903 124670384 934054009 672208611 815127950 899346520 913754234 206237108 784214071 842160181 844930833 738793408 878304907 946216683 956434413 996093415 997696695 4122669 102159927 801513570 842833813 825249338 862180836 679186242 886942993 678582128 782272214 242358315 745722372 530131746 981599836 4880038 31417661 51977641 881442645 694150608 731926585 75292609 893739836 924381386 949402108 80711102 84985741 500170306 959493851 668270950 781497709 33624567 650986932 60177835 191197844 863329875 992146073 42297170 557245366 643487390 769477138 152975399 622155527 210069829 355461319 883329713 947050139 47592596 788537507 587161942 701904486 661451066 827036873 316771425 493763796 485657760 996538383 71592115 640889983 566988581 978603716 927580721 981369721 898700569 960825053 122512395 231645651 324207930 750108103 710513725 754552472 2909740 407706512 916894534 948541193 193086108 226385138 674979044 945955744 200604593 249425646 231517941 535286939 883488366 927340692 845131981 986372038 425855212 806957637 269783396 491892768 411177733 755451075 512627958 784933389 833080082 905963779 97661947 698255310 717308944 862848293 296051368 573231721 869470491 870868817 441221991 647558522 901450714 957781000 698211832 924399972 515283287 863385494 383701931 466440033 669742379 899239530 676835339 798152702 228198725 582623770 499785906 613367434 371000839 557718871 426134326 850156139 681654068 882367523 849745065 850548430 90865441 604218098 117065891 858746898 390440288 669301704 867283978 999922943 136574501 467873305 406342245 703755224 775533963 824681944 827350154 874680953 584491447 812360699 637190409 841870322 201240005 418312535 847365181 916215405 503392413 722416121 44220604 461122532 947286166 962604439 590252011 991558852 615599037 803156364 435548993 581967095 624257069 660922664 504279864 972476850 156790506 953975920 590453955 617356845 402365235 433629993 322438612 666346013 683393938 696634021 69018551 929916775 33811715 695476558 670164702 857313795 632695716 805654435 667337613 917028882 855716360 897015286 339910867 817391029 26213112 287456725 533385543 760711682 450622036 779487592 252803412 644891736 475836756 564096645 947922459 948513095 984322868 984719109 159638637 962548358 899366754 988582659 807396732 874223090 941337774 976806659 712597380 815905978 626889721 903781625 29025526 995234656 172543407 333977919 794040770 955881767 573711431 640604355 823748113 830074075 221800988 601276369 533794828 688136510 225266973 628127967 659830779 775781685 26435769 991837804 568103732 711361282 353279984 998123868 199136426 750348064 769777129 891689012 715350690 933037630 477201106 979115642 492333422 783455315 750444254 998727048 699969887 962332190 633428369 663531188 323017376 810730481 109717971 705061486 919370838 919534982 814923530 972850767 866564131 884554847 569915855 983874694 29080255 681381519 809761588 999241473 39445529 802065812 536378042 657024994 55324237 577291749 185192996 412256214 385674650 908322257 375307958 861892220 171389132 836632825 575728091 788726346 288282154 367213448 542792814 869168994 971485843 991214296 913357036 922979779 482366119 639136829 136286832 623653582 678614227 679588296 777837152 861111048 980561145 999744708 150444318 694130520 69649327 363749109 488297361 681591470 355114557 681155079 676218254 706777453 969724033 999970689 314756973 400721431 268048505 834793356 465445106 686553094 58269540 212299913 285258830 665333825 289177533 515712409 74551827 513252912 639833265 834686990 201390722 270297138 8586229 315232458 690820104 767482016 447551513 578068911 981247502 988261601 250282887 435195659 141607114 177469276 322407144 476671339 308354650 345705816 661887826 973837988 169983019 408325658 146350612 867438727 628050616 773569922 339436992 347501548 153355310 653789098 167637926 490612633 355482208 717926351 775480007 899536765 642374005 953192112 713612434 777686005 187853738 240329107 67430702 427208766 690340312 990979837 134079001 471351684 691017181 934809820 647971161 961731376 366965866 789351200 552852091 748239169 119267062 780299596 30061514 206655335 894546795 987827674 66018417 86936129 758001198 923315331 138954212 345081766 808902474 933240046 436728214 521486733 50662901 434558234 98232827 697777809 533021407 964400904 525916762 528809528 411882441 799254457 66001286 631321873 333203691 839011067 183775365 714521829 720421954 991910508 67400436 615831657 949465106 958414174 250967440 826696515 211612146 668609804 423400586 492688794 895566025 904969084 870836166 883712072 692234455 886479950 154378483 270145832 141647424 403632421 83023964 480776918 19049532 797986092 691637913 799616332 923607038 961548978 320277870 624085207 650872959 851346231 208247715 535014369 598574981 798918466 936435355 998378101 764590744 781445070 617443780 894084136 911337407 933848302 599809106 689244197 694592456 879235323 35093127 391695724 349364058 882388460 706128270 851585970 850918311 958785542 801614030 873034842 386396326 740461273 107242073 706109659 779851935 897687483 514296154 984527594 561337644 891124359 59721855 211129899 612883599 900018907 317325305 866247940 735162748 979772238 861091052 920784349 331146005 875526515 494594616 967956870 237824112 679888468 842296438 862727235 535698756 914084433 894646325 981536942 438174580 725811615 648135212 982300061 381512446 535208335 200980259 766037823 171161345 953007845 838737686 971477987 634242012 789091117 267235447 461341990 721307740 867732079 701440960 897918367 716895447 952151925 684938635 764003866 976324413 995170519 24264406 910183716 176831629 407907993 140886061 275979952 506916342 943920745 448353742 765283499 819692495 991542752 116766723 989564241 969836743 983016852 486942888 881298350 296766019 826042493 725530853 896577798 676506929 925948114 882068684 973700656 789220156 819928144 730376991 959180321 144751948 197397289 759817127 774965673 338913421 930283449 148615730 580664416 601393500 604955761 904546416 907716201 853869511 999121830 725046746 928346313 17396916 469811271 378288379 771474761 635459937 985561068 191352180 485608712 503689856 632553262 735235166 868815661 746819514 908346919 483839134 911652040 406967410 963850070 725137666 895876968 158871478 484242625 566622100 844339305 110766763 252819073 763735991 922370895 55397380 182199109 140155238 235856257 264792036 336965282 550793511 640343339 866123992 950140512 39621825 250325509 934891160 936130133 890049992 947912209 861683015 944175250 99152728 668171533 250809683 889759424 246039420 892035733 981091615 994111733 650621152 848579483 610183833 799885244 699525285 957884385 224584899 240207701 854553903 905771968 988926011 989665045 888238447 931908582 387887603 402898624 998536598 998721649 222820824 328799407 573378926 746413764 515079251 794797091 511742602 920013326 428056488 913961353 697349277 793281933 86219746 789564404 609492872 921600404 485517216 779790096 418484407 701424715 618497753 675565832 49284689 949071871 223189380 580759197 216418803 851008413 80354899 438927035 556207208 680844584 436867711 574586679 907858346 968128006 621045561 972987387 311906612 446489960 281824058 364912650 515000870 771989537 941105382 943522837 426349302 449534652 414767869 953378420 395520592 932568500 559992633 748647364 78966536 873049359 675880970 925295698 966341150 974944598 60112045 360641430 448612078 717879320 418232648 515515802 13907110 668473142 120459458 284134868 494405043 569505809 407292725 989149228 314223510 968877251 251996057 939939596 373155478 862179091 758513229 869224211 137304490 248720044 932096346 967777648 455375433 712763611 570898856 827318134 506662560 958418680 93887901 476274479 706160371 820688012 989191221 999559880 10757344 903152466 502760195 633448777 54523686 898475467 48449495 948673719 141438787 777454163 267815985 525901376 243680531 739616836 270626162 950654424 162929897 304262050 543520799 828456136 251950762 995578316 282702562 769816187 73659574 512400866 908484376 975921476 775413804 845694484 432081418 892958665 575157868 582417699 893749113 923646214 200086113 792918375 873267770 896834993 146631791 238335119 383873780 593415402 25250957 991952618 534331406 799016613 933305826 999161181 850819528 852476828 620524593 716797577 761452659 920552831 878843172 998126760 223331780 322281562 819315974 840579137 250345738 841730787 580297833 977457719 924729563 936827503 272861154 615073170 990686440 991697519 310827444 870641838 186757707 580029690 283980111 810770419 876616840 937891286 285749122 908671438 171001162 359966305 373555147 911143210 262152312 904030871 69181258 796467380 141993811 586333339 881388452 913290527 828839530 910092200 801700023 825213188 714750520 842182428 708572661 779069138 269944756 478643742 673821916 732876323 481305139 964829969 278982321 361150366 758752095 991713410 58603935 717919546 77575042 275626690 271210410 500907644 873081506 915696183 526773428 983627512 679943381 683749006 605820661 701918936 504253948 930769400 954870633 992449104 807410471 828400937 303502743 635319905 694418751 903821423 392425232 738678921 84396883 153144653 133445713 980181239 652032734 781329982 838735564 874630695 664348095 771677351 537573084 791267248 486818330 545006120 87692060 470294256 806376258 839231874 14505435 813674137 495693776 519452375 138589505 153887573 888317705 977753237 809110355 870901974 129466576 583247317 638239618 840973090 319447203 575958503 47505942 499182150 629591468 925913571 458852658 741702379 232634556 477742217 318787333 567594756 619396374 692133520 630007732 886730094 890393849 972141835 390326201 943754442 763655954 766944576 482791638 848852799 74163507 358405938 8045838 815330868 589918101 927784773 802712319 963414140 843453440 957650846 877346697 980231929 322855120 355342275 224828246 373457090 235969945 601089651 499125791 528801719 225423787 350231974 43481584 565064985 79449039 569928423 625577819 902960733 979677212 985762830 350276606 799674078 943099261 945519869 298620740 349338721 537342665 613981443 27059030 677392783 401514088 775185604 958475240 982323304 706020503 788102738 985493179 989034957 391693314 445279593 10414308 321274009 952686317 960922568 824459386 888940477 468508514 750367585 285993761 647994207 874735996 960892142 585771202 787371944 542011571 621363480 793950323 867145750 285809331 682117100 914995961 920749496 582475627 787445373 136817586 530592151 886145414 984249507 576867080 681343932 544773918 933698622 985370756 997336193 113042602 811971213 327349642 905995152 770435458 787223640 365576440 579626876 961450638 973298732 763772740 841139269 865238066 982040936 460637624 537544319 573166315 725032728 964130028 966477136 690717659 951440642 186209896 768810975 225411200 832690115 103709470 238605371 595299296 998617654 537206168 595439565 111060235 441763962 821667806 964814216 799294016 805957299 676493351 770839339 822389420 938100873 399029480 404433712 750578321 960804854 129730136 775558329 790818740 942331380 854579305 862733512 35884132 219413278 974019471 997637972 539952025 807487345 704464696 860924257 341156127 447655525 837566004 955861047 143039111 159514883 402604594 835827734 134826145 980966275 731299255 785309837 127350795 984743667 682902739 705933365 887473237 923979206 846553517 872753857 77132971 296039345 192463058 477344935 639921926 987743020 302071350 894224060 186362465 513743983 498648823 837722012 350828076 360109974 31121788 296152405 482974717 489101956 971639424 973042448 784172287 928940040 475621184 544031037 659631154 803886529 894277287 907933045 470283857 794927902 316401647 384385564 841039015 902169607 882798725 935083679 81387085 570534956 83281112 599459842 456655804 762999742 881977790 904119768 494314119 968138927 154296774 261757102 184643984 617109811 196720652 283880515 435046878 631362433 444192989 860207197 960550087 967258334 736213723 863795847 958765877 967369427 798544393 907709003 460954266 498063955 945307958 965205928 633806590 674606551 933161750 963674988 627431537 872562378 404337504 666405029 829172444 992570453 903114182 929256526 417073058 465435491 302052727 564673320 471605440 632807437 944168093 987545114 449794012 828869649 509010229 903983250 512562230 574536420 947538697 990193826 890690907 994526297 855425855 919946790 927251116 972216304 735918573 844380555 308968296 785876783 890931063 936698029 279131534 501003649 25166223 453357083 220458594 972420520 982862591 983639467 280768497 510732148 908763740 956295256 651225180 859783099 7205214 559912730 350276147 460858928 824063429 953508096 359951469 750696361 560464872 614696836 728530378 784190449 478435556 792792559 670467242 687210581 6705630 193013394 943270136 946562369 530698599 927937948 495775349 791357165 396087661 498456082 843442328 973650993 243270165 302093759 554889927 954265743 447688945 631388685 364089445 983349920 450966123 744054551 455787922 899224625 85662118 674587238 319764697 553396802 929698644 983478738 611033136 878017671 10845069 534496968 310553433 561544289 560516843 973297900 23910398 355503381 578328045 939314434 407228445 796469735 861279935 988487128 598347951 776170321 615241084 966324262 622755517 789165723 307271571 430875343 920838302 949823745 609564330 830939082 564911755 647863114 894362451 938866241 178454511 289504238 2745228 769442076 251342190 767792279 130472238 681020757 142776930 433676216 938208303 970109112 903904889 943525676 926689912 980376384 368250420 525172300 166133446 594638173 715056005 877359413 198088122 376606428 365956064 434516092 945070756 959517443 40960594 46557177 831275770 863318550 321475087 895950982 271127166 826160973 968638369 974082038 519761844 642180396 26378432 835959195 509211134 638191063 424973541 573683370 322438155 885271691 692014277 859570715 554692353 947014077 548282640 647002928 853395539 855483900 118876076 265087394 405813707 413910109 635660949 941977459 413303479 472284115 826881077 859006058 487032201 832876467 285004042 376008297 159446269 952980820 362531572 620370929 130327474 186420785 369033844 845017730 641425628 929580754 942013458 950584880 679426518 848282390 36492101 658112423 334702078 780998010 148931263 568202981 492284045 856909264 321758723 715071692 721986696 912969466 246427756 611980500 318123295 858746825 320183613 916628977 513160527 583458266 939386219 953238035 563500583 875603124 854522680 961345128 980762888 989671456 904834354 980982712 8823562 244935023 252857795 660079352 265425072 938373138 477618748 732836739 487724915 689525245 255089891 798279379 35543291 198072899 408162546 968512689 1779475 176379838 975511280 989383864 642130333 720031046 123337149 397898112 421614858 992188363 861630489 889352289 609553168 702333285 353181106 535073592 709143858 872477402 298306698 839617080 534631919 684888721 634727394 885465789 992796191 993353736 694193137 976933677 927632340 948710410 986242129 995777113 871897195 885181168 734014697 846329483 411242568 916109791 467921152 822770205 831700448 903935645 69986556 771015224 876676356 885541531 297495953 515968378 444371559 927534978 786167905 954266633 934849653 958678240 795634172 839230818 161616351 481586456 255595024 791459951 337792999 998766286 152577059 697949066 829428703 900035515 800828733 865068143 708722272 790699549 424968085 672943022 56323106 714365008 755185123 828595865 460443136 765017960 358002050 427138318 281294296 765224959 54485172 634529710 793481847 999454773 859463904 975321343 91044702 373095800 233151864 608321496 736606161 862863442 655859590 843944957 211646734 220798019 525679185 892025356 823209494 941681288 859670796 884853129 242728119 866334315 807164232 904490488 608810632 855562346 68676733 949029965 812025957 886800424 546349009 637524731 666400275 820627161 728583340 798604775 768995752 927390660 963450070 984353833 70490068 859379226 617529606 692233266 710826603 904345890 648452444 785138226 293349688 297048421 181576797 610607898 391714522 532071372 381288174 937557790 820048014 844536757 124680717 734589902 133283082 240239768 747714568 831432966 449096689 716184320 782690092 901511840 933107575 963608070 851942190 875613346 328591668 572832482 717424775 899110962 396206256 798718872 93523003 209694725 541525043 919347607 834289713 910312627 34183863 662944726 439131867 722649146 763772842 955306156 805476362 872429329 685597751 800845006 411710635 677934810 630358647 814921029 708833186 972124334 118613110 574056239 887394660 933325241 858870903 860805727 249239866 692224182 830632541 941105618 978221492 997201048 228298754 579962582 259931998 401971085 763386493 931987225 213026435 695497163 167493367 403636068 388648381 499555061 372864969 982574215 935179070 966104152 935302933 978456230 535959074 909362268 432582415 554178116 327092955 701848979 791378822 989154367 465191350 883614316 541417127 628682753 772791992 877737800 762626674 878302819 401651485 467774981 994435098 999452721 422355574 480528127 692848351 741019230 885442508 977156129 306282799 465368472 454112841 677082787 474855130 912933599 507609840 827894123 869327038 898591316 82055847 995500477 249326618 464476968 775438897 955611514 853856856 996032921 656374779 741087565 269504320 543389786 491945498 736891883 923432537 925996065 458471412 711997007 3548257 323174743 983169580 997587482 849811599 876944413 772264218 891299453 863794664 868065346 759352303 992073986 970547854 972057232 309293987 801688947 839665645 991929140 606801958 756331907 526840633 748494520 696277759 773706715 976638854 988123200 222061744 799469299 695780828 771286270 296313971 329778177 756396776 892088610 131383869 417017231 991224126 995161948 389964512 720193944 867145502 897909218 833275238 976314504 684307704 766325250 268626681 390861306 907772939 922992950 814530870 978147473 673097710 922061649 957542437 998019267 164525794 179787070 669495945 723081532 286088928 555206182 395626244 601787120 203546293 757258450 311130587 447663550 455551444 749881041 286844371 998510739 664421785 976727798 345816918 743590718 60715201 477139862 667792086 976001560 457005020 499776218 790520974 837712310 465553163 760433381 710656326 778269430 951568300 976955692 333913822 578289764 277253923 937420639 338827132 805012554 519986811 720390678 360246241 526792351 836265814 848604338 6682863 621958527 107541674 171925882 120360572 704345500 689177166 967983532 532356688 651135240 988031404 990729834 942214535 986274478 480984557 496566599 632059612 648597896 771568060 831713523 229248484 438457151 533351884 841146764 848197931 849641677 318721501 871554405 551205847 808735764 9207332 24774089 684998192 988189497 262533582 522379252 107354596 185785710 775248013 906577851 981367927 991475629 234327302 543741881 421896299 975256635 562823386 873900369 661662105 666501518 875142695 979118805 495794177 802337423 987041973 993341155 473776929 721202936 804471467 859365673 136694493 367295233 191250335 265900166 454258092 743984297 315945151 320626783 791252302 804753340 977863576 992557109 361210847 456940007 789622814 920936094 623586665 751997571 153158772 158835195 123946745 407797737 182718465 921076012 553171400 657154589 800494884 961762652 464311949 571097193 222231230 476878664 380702738 801279029 262791901 975613822 177451684 444219799 886251852 920482178 614323648 963082099 524426417 830175922 449344578 980157253 333567249 791867800 313965147 689112100 41143339 56013816 434501173 699668066 81510172 822752699 198217256 637874010 113348830 157115037 421997605 759719896 234029784 985430831 160820985 398694936 124467306 140728672 959183803 984457082 609408128 842826521 1178266 182483758 764281974 782802015 394940965 648774028 547283008 948803018 204062933 999944305 173737593 648791901 561256223 719804318 382192821 442405380 763407489 968775229 667499712 742900589 213184252 882382421 441554484 957974310 225126262 950441018 944648512 997353913 27858455 598410070 253109646 414259854 261068495 412435225 279508963 957821147 360067628 757389592 717734757 999752268 768355325 978264806 464543050 926696071 56319383 510722203 193600271 889003584 201781017 352697275 552420051 932450141 750025404 919188059 242301451 287942164 658913083 685069628 333782042 538757826 771526441 965931919 695245081 873273564 478886939 875136781 838076633 926660938 802872373 812482268 416518211 460914499 883834186 984786987 262757776 572198651 991565941 997386884 254015746 640346301 563798162 695665381 634167993 764048765 487747926 512359450 379694392 626498450 18307823 591702432 595649974 951911512 159832639 518655068 764981855 812253263 330118641 621727162 769175660 791085110 184675358 401048778 475502644 510632070 952658223 989166470 861315454 964863525 972171533 983011582 633934493 997059683 292597788 613508895 866040287 930222268 309788407 474370003 479115373 685295729 544596004 595534755 613873259 753436024 519248148 836682928 773347988 891375278 630334171 667148246 421861549 565164806 461363892 939661285 693854938 935684919 581219277 863969265 25384839 221136881 481440156 986575953 50318623 285335903 646538413 871351503 441468104 679940851 868329951 933874630 610197006 882173516 73269507 489201621 497200511 763549889 641116226 644726903 531307767 657864068 348280859 552030587 371432612 611274633 180038314 489364183 847512477 945782892 247439248 918155594 284789816 349597295 828315960 925530074 168146100 873441783 965569267 982563900 207077484 945142880 791535094 981136386 463851882 915421279 162655858 421186008 565085430 898266483 632206808 718909639 654171765 687504450 358238364 495201837 601448161 891520915 900318843 953637338 561803516 683004752 510614990 982769424 535717309 967955193 364093547 400696515 482151711 676994998 314031336 347793951 349615867 796500217 906885718 949868737 902236201 948743028 190536802 555825413 858676744 961562840 654396508 790216687 229589227 471882688 636329072 866506891 867707537 936470140 185275381 415535006 867341137 875331279 385697963 850659779 344100712 488677268 448217668 926548748 677643171 860879479 70974012 640759365 882461135 959718787 666986480 703926918 700372112 770306392 876676246 916787649 179126908 228221242 9446480 737251625 973444281 974878699 31742645 280170212 481968824 555992471 969387677 992304080 322641437 466840198 221485653 454272088 642550666 655567844 952826968 959995733 158888920 919584314 320862582 524822222 506995195 874655903 949585721 989199384 432869371 808370829 974901776 978291406 406153866 622596340 967571928 989041076 24399024 114940809 259078769 295932188 939991194 942820269 19979426 152652742 632899864 650161458 154025885 500136949 518397303 630358394 501404377 798369018 216147098 999868620 39435035 536648118 218905834 892817623 726187112 959500374 791508421 823900450 770929287 912986237 100164768 925448518 568115069 950372149 445934058 996376368 862079797 882100952 826475134 940691673 590071103 770507222 672138280 804098979 858161404 883578843 533303824 918478722 545303181 979607812 109879110 271771493 21922000 203297233 327170020 473205616 118146426 326812375 273702312 943733467 502273997 978673685 829990362 889895577 576748443 989506598 221084831 896888070 358820634 369159464 8775643 272731021 233819209 988443240 738889448 965198129 65838673 569393554 853344957 907744005 662559049 735463328 415081744 831809147 12485221 759881153 279070915 566791061 905620221 980182039 972825161 979378642 533022514 544000492 228062531 904306933 629293826 654819023 398720699 542651425 461213933 568560843 272493255 488126091 966130975 985052886 360393082 596477765 250452751 737004929 63997104 567446509 451020009 901968475 41414484 730426017 198877542 514660635 911729877 925223847 908614435 968684585 140874411 304446424 248044417 436192566 282604620 572816804 22893018 72351327 553749547 954640221 656850893 982097826 90926981 866457047 331108534 894124491 994559052 994677173 53763435 383039066 660544545 990038871 332569216 467176748 216244830 534425666 257542143 505096136 990632026 994903605 333534875 515413264 902865438 938745580 410076481 534073695 57946407 390199510 965285342 991923955 96907855 370041139 350684959 748066315 868934095 914965744 583428827 939361731 13167200 453176575 828063713 926047336 218417386 931119702 618258070 713405750 881960248 965257850 895896304 924180588 859185302 983124553 339455349 994583381 347781320 362705542 201258368 633672399 763731161 977887485 988675817 990937972 697401616 719658440 921675192 982064843 695654635 824811704 774355036 944921578 494385438 564773090 136071456 849369315 848671567 875307692 523003468 829692172 460451426 464807861 586439307 667552746 792898220 823511582 924003810 951589423 145786924 394131040 199020425 425766855 592841255 722263826 389270311 522428392 822481487 867087658 459247269 559520309 676985669 852610145 240501080 569243615 466868840 887296072 61166787 279169391 450514622 871484936 416103557 733952027 872684011 896256990 157416482 327054257 284982917 442350450 895950031 929836262 360112976 570989499 250343234 830764779 564121512 580849834 486078128 630154101 415380567 749979979 522632527 860853646 876148141 974672506 875213720 978948251 613792995 790523852 839033995 985192680 897692492 945342474 526864492 914323928 320265481 420648640 484971078 521967915 905643115 992722052 521465480 950798670 358568999 838835205 853595824 886122812 72063925 551196285 893707035 917807378 749305929 875950038 911138287 914694831 480721157 631164182 25601334 781697357 128820089 852294058 360621313 417173551 24787952 862906057 134293139 633377945 688997887 743480760 857634370 898292333 548493502 913670965 610591407 971371859 527455160 556267794 786506589 984420158 17347805 699472257 459683352 658598777 630825493 790324504 331539803 573161741 840452305 843370366 371360266 931535598 557462402 778187773 716989337 788463680 818543448 999077678 461704002 539592971 486330299 699229933 98429015 198864202 411706663 539314916 630886104 756544514 166488805 587264679 962682100 976685871 183551337 782929183 919721851 947571953 230206273 943399657 9047236 30671334 559781043 641224587 781397698 884804400 474437991 837401430 271077409 621562777 154860328 478929009 469020064 942984168 92068655 142227918 640562829 887865386 30247646 997575180 124547678 316221106 439326839 905627566 458289581 734295271 751752933 779527277 736516168 876170444 33004311 815095354 807358008 945854880 284307665 566618858 708716447 890952103 213101316 391900748 484848783 486923940 360063132 414296407 556634295 651897442 354072258 426963624 42222008 199510633 899228165 917535530 734880811 981435756 691307412 908378855 979683329 996782312 169898725 431865334 143254259 406252046 954343866 976569877 856536825 869591315 741594255 967647303 845709087 881070990 808450590 885030997 247089277 497009181 147355299 346168562 281082138 394703327 856592499 932829638 184205373 536105668 379501020 916734364 756891285 776449871 775737832 980617141 295740773 414948492 938336625 939018027 916306988 952502463 369171444 829847123 120093495 820826617 376917900 777295109 413780664 840412525 73779989 976074691 992138738 996791665 554517892 717558260 341753832 664736793 235718374 909400890 506069333 711697077 252907568 374160425 477550005 750191412 286462438 609515689 544745991 873061307 303317742 981780094 576617505 879140677 269272797 556638196 136843697 871074151 583149411 698600822 491852811 927225123 950608368 985375073 191741477 375767733 969939735 994927897 255627700 945780005 578117043 803217983 712396316 882277965 476908777 667905576 955189017 974665366 897838247 942640123 119803119 852844647 572395535 920933735 286552140 601100439 174819289 557888936 707078563 736000600 317999701 437527574 144064306 512433182 740445965 863890503 828478656 895138016 3481854 34643163 969080664 981347628 148943064 488660525 283567607 857045457 636456226 766215726 569870892 891187571 813829924 861758068 826135319 999098033 827421477 926241732 868209140 918373009 326241626 975741686 725259296 982265396 95123575 497111737 802027009 846653201 655842734 682738098 463305823 958333452 166238293 683404185 456816342 758925464 969416564 979656649 5702301 837480261 834737174 917191550 764723040 925170337 540982891 776049316 996233084 996884081 685004336 763737100 594500201 689448106 684682019 863636051 256050244 435868315 721566930 812308826 247286381 389078551 646367292 864361987 417008130 925950563 557617976 559169360 128051587 128632560 64979433 961403332 225633841 411684067 929816775 943409129 115851655 632979892 277393512 863663852 150296560 446892953 906086365 965417412 113881562 469359077 298826832 924073145 837833335 866158878 51788440 247788427 798496337 802822258 692997526 971121801 417543501 546829289 16510035 637887740 257789484 488547824 956013063 986909622 942915523 997012223 241197842 404428595 540020421 838120157 596857203 932535185 997582616 999656161 16474715 868770228 858212165 906698492 704489393 813323985 86600797 373664238 431287390 984256810 396593082 756984244 694635119 900176270 786708832 869408198 573854432 786079537 594742031 991532171 514128509 537276661 106972210 425166296 457764689 983636860 472205493 922216129 726731345 892313593 646517851 974031260 265742580 366558130 205219867 749612356 788683933 817919387 747718808 855248097 100075701 886747660 785468829 981636602 980859035 995803992 957906420 993468946 281000529 970631963 408936712 786216331 378555071 945539388 175607757 805897800 286017268 874177733 762227551 802129961 993041502 999182672 851378546 984390443 100549574 817706971 924806327 976667954 312192907 636816610 932506204 980970698 37152018 325007430 750943412 825698448 910635543 952959229 940565600 994259903 581884181 864598554 787327577 993748851 448632139 611015121 792040235 861149354 487379836 532403386 14093307 597295507 72818511 623687663 501381602 579480295 391356600 726500694 337220964 692321430 69272643 345900109 674298603 962358575 458059592 749092449 39489234 955545798 868176279 980256539 418920531 975362226 565240675 584736440 83571687 861711581 178917802 495457173 186814821 938304358 764720550 784892129 564593605 640437075 165471481 967924404 798111886 890976598 916759450 959832480 345947904 525989866 721601218 749450880 934950918 981989579 290432802 667221228 206272749 487350404 820796852 879004162 287642175 942835569 255709734 324854185 664665407 924118874 249697210 887162104 595628287 886936787 174260778 615275744 934421337 970894495 580805577 840522656 893719804 953235836 168810374 535502835 815766875 912472468 216099200 933098459 709214615 751609379 36782421 159351725 795818983 853890040 673462529 914331879 765699802 946952685 920189179 926680017 371623547 918674486 251669402 827556170 68586941 252133267 418387499 467758347 693803922 789003707 678271078 697383490 286833345 658404832 401256436 726177974 390615628 878559301 526126254 678779125 967440167 984549200 193319647 337613052 287224564 934189661 426264685 961429886 610115874 614790732 936161469 941678689 514193478 841390660 445737200 478622170 721726782 786366613 970490975 977930276 849825539 948285365 85867361 285950051 611469058 842991642 796194852 925016306 983149349 983839192 498090579 699175445 68503235 352210879 150634549 187521471 581234891 931529790 402030879 743855618 188223701 373415336 729763330 978937162 177291762 275320913 883964356 885651775 91521762 549582297 356392649 688500928 583492080 753284452 987273647 991152715 56394485 813520042 862391221 982137644 220224901 830977928 999828672 999985487 8418082 906218021 458227299 630618197 390111832 759298151 834011759 994578330 825806067 842299598 107914390 373829015 865777005 983014305 234634338 491810401 550590263 875514712 918410582 946937690 214614328 696967061 826949332 962688303 771451123 978137950 158117169 883401473 817204419 942141552 653028594 727191679 496239311 654965508 778039795 955024554 236185260 260076223 836919377 943052057 471481533 525646920 552090316 856626638 423480898 659410034 706775973 732642671 707909427 941299946 488189166 548337142 13800774 590109531 403957791 927466232 615703876 638191474 439932561 539479515 831867776 997256275 70773702 927351932 800129908 926041511 461866661 794687439 206009960 969944697 706512843 870685328 716619782 811448350 856868254 881478632 661933047 682435114 732422666 857063243 234025976 653852279 147945554 686517819 532434147 610179553 168674402 982083891 379759449 916258361 705736292 928899323 890587690 964316702 478646388 915259444 154171241 830568919 956943142 972418353 315833578 629129494 542131916 958220623 418686275 846471147 714409099 758720674 685247455 913258132 735243714 897088583 792088673 956152602 935609409 958905633 921736198 944027351 954772045 966528126 41213977 478212399 943579609 993498287 44493705 523462317 257023965 760642069 685019616 860128754 680120515 840104495 262900938 867676970 833847250 913945728 630950109 934180325 590937540 765105699 247772331 453737006 64351898 372895289 851519082 862616712 571618176 742986758 19288963 897358726 846385354 973802193 442339229 530179434 652348877 794883066 338439614 962126162 725305460 860921789 602258921 690819377 271086537 599499437 481974807 923819646 290434508 524019432 861564827 928175691 66548858 383382280 13544586 961293529 920939383 922892949 996326910 997210129 13066079 298861566 727024318 934203370 532178443 652766974 588036087 619351472 134431748 647056166 604643231 721921041 666325661 934362018 295739580 813313915 107528444 727884590 803616100 818457314 697494329 964574073 91553538 373503769 854988594 990769674 356971417 863208805 222444356 863273107 794669605 889712374 14958681 826915986 888524108 961964633 498646412 808922213 958720520 970720712 182396095 418395305 858884288 902198437 855917435 959614549 334704805 699587939 845795160 876402145 376876106 522078236 997512239 999281993 797214299 949232794 113101433 954639128 621106448 907138822 16175347 655783874 61137479 308482018 872807733 910709605 225608707 421602106 621334876 680306990 84626426 134184824 823653234 967094876 285791185 781128027 522654619 733237693 493140264 758162117 234621978 971150419 443308242 653718208 575858991 840501290 333864982 904623540 854061957 901109706 572555467 736182520 864236494 973998404 820283439 897705145 263360266 545922941 699382193 826624688 862707747 947771906 929373517 931779850 702295879 751934608 605677634 882019436 328188747 754616573 496718862 845190585 651057052 959562724 247180653 802540961 160389855 597470196 921300374 997815848 62799629 839077168 201286108 820974586 649908315 799616043 774627072 846876552 577912260 845525734 769582502 969237058 224211839 293555371 207875488 797757849 191973717 854253179 247722265 650883626 152478115 867892870 181339306 491243118 707893171 767273351 48817670 800365903 99777020 539036762 172473564 639877049 400705171 767328003 796194811 818617632 973721847 991966717 718688824 956507662 354472325 497914705 974494127 994384334 171066429 409276235 397449037 545042690 549039854 765465264 744439835 776426420 120051773 894332095 106978458 317740616 279558877 376609821 423684976 929047850 552322533 622926977 342089195 930344144 222060900 916313034 103389415 592992042 782087673 940893409 803292172 877434839 540454950 984586135 959013572 988910845 687465718 865391553 878028943 928945410 954462235 957288269 136757864 972492048 717265186 739845070 968551265 986096540 791243500 992411087 92302282 679168976 229270815 704224768 346267985 943320564 448084962 582685686 28054871 592023635 370542714 398778499 57355384 742732364 235146683 555447109 865397143 879819629 22308710 467546251 951269440 974411838 532383508 817986916 215074751 462160799 259166732 574775882 932106738 959730534 177709846 896503658 460690561 731312713 815178762 937628651 34882890 804262839 911332396 990764644 31211626 129879431 528400089 752456331 834484801 861153629 416475174 715591917 609490603 724620580 149054237 659004719 131724060 519321093 786892141 854579095 172118208 819123087 953294397 968965136 179795686 521433547 349509622 451088196 157018523 320149918 757831400 934067541 44204501 687507322 284013978 850908968 88383656 136015603 842661701 944963056 677661777 942126187 712607106 725832240 759624564 950162690 88715352 525025437 329824857 680056431 864345776 952327619 243269553 863090914 243650261 696182655 542375666 855304597 882302748 942324137 481650456 511072824 907860934 988413172 529122861 907326567 721608744 729938657 385624448 811117770 890235137 949817869 511533483 911770097 981118122 998449804 602601800 970376699 913003452 923780775 732416298 823151404 928400096 974122877 599452734 786567979 692870254 995901062 610856911 728684041 756235962 875692519 114396662 509173375 203361380 409939751 234770466 512887441 773288956 791324599 855239154 915476992 242587629 499633610 800588413 963213381 394699555 477176276 332301100 687733446 897105142 916956603 865790541 877283215 206132174 303525368 926707256 988652089 280843976 369144969 546991205 969767818 491735981 495610858 616149252 846134667 453694152 882549967 236505369 421645402 275246683 358285011 32205502 416828908 78382144 131874413 445497290 624027743 792941896 991438507 595901371 886644342 534928402 565308845 181709198 805101800 448232300 808507603 748340186 763914194 292885167 369542898 958758233 967097730 281601340 916191127 30625050 846402831 424221129 826424758 293028310 916246027 863816706 918879863 111523867 568887125 157778973 227442839 826892853 922170620 697006054 962791848 105116323 498930032 325897309 621561887 603607230 747567604 726849791 874819680 533456044 905025182 138590936 729155997 694657838 853330620 348650879 375048480 382145343 685551202 328066549 903535664 499567080 510194792 739942809 929865279 891799535 996881744 545331234 923130546 220257022 417401457 674912323 874901509 183281374 728325395 982523672 988822906 915593661 966540631 69210732 389693163 479616281 641293440 740343276 839977015 771873236 849572501 795600554 992345835 273399185 539224411 942973977 995519030 888105326 934836999 909382268 945876419 105972632 972648660 823071556 949036863 212814185 350725854 436120225 985008301 950345018 991502138 686057310 716400591 227209556 909408131 594998607 985105932 756389034 835746183 959188496 969171982 809523979 893382484 278182329 839185817 889278182 937557452 460907436 626238074 10998620 314058387 607319061 709350398 343834100 881207163 509483311 976171254 218087381 284075889 317948407 966506070 408862686 909074478 606855223 655378342 398229679 757280330 240653302 266169567 882325309 991371290 22681345 478141667 514927818 692043355 824085549 946569060 313724506 444964521 349078765 897158066 294956385 790133516 32998359 278335617 3529989 38074940 474988236 569615919 984865844 985937005 416081884 549757972 778690047 987928794 689632570 851269098 573352266 821157500 27670934 338687732 397144006 939997275 379645762 880364726 662859980 725054157 659623769 756066252 553392250 788283290 183025240 351022266 431135322 441936355 788703121 795629945 16580650 498585147 860212846 951021449 82126154 359751355 11998937 46576155 178329424 826415905 858911096 898940844 994458972 997860540 543139391 699839995 47621870 647376303 550873028 737764279 844319458 924258113 510245494 653040133 841989515 949234351 816138862 874334723 904835029 940972114 82740971 488189576 565714840 754932204 155963615 398601137 363058157 506115918 517236595 578904487 131713583 869088982 356515924 519045888 34748369 352392242 126334724 966546166 325630893 698718066 114342129 246766242 63547088 107072137 520958680 785569278 725008194 990159806 379983182 634958086 788186672 797718220 248895654 856795852 324828414 445164971 102119907 338403603 480817692 493769775 805384038 864624749 493551896 624314975 141962429 426156019 736232094 940058478 485772879 955533956 504497853 961750749 150326726 453985246 676462079 842760650 294975632 582162202 115141753 814937371 671799378 894722878 583212557 968284431 662392802 825109865 84505609 595955854 272523458 828037526 282971697 618589497 474173212 986467020 315718733 833878007 364749860 586019347 76875653 994967302 626809451 736268234 767644699 812946201 631251733 890609020 6168615 421607256 296929634 712018382 639706382 973201928 415525256 737666101 789476489 918280659 129791366 604635500 367355975 772629095 164736336 269068585 944431028 986995746 786787840 949701488 510329844 767578958 21570419 653494435 526576364 659016319 218737967 575771074 589009425 855170730 136349389 473103207 773002824 898471650 482490584 739989589 357533587 822007922 108397441 655953709 438364351 502643203 233500419 812291296 110578578 199262728 772677770 955934630 400905214 606142870 298653192 857769124 162129417 908256622 233422325 248373453 644478828 795081249 871601398 986588316 838105022 906631101 548810467 672610350 257977982 716247862 285551795 733050389 795454038 829114029 716619894 794637120 137590043 626185112 585191235 754135054 555351862 809584972 456089377 607095801 10235418 27615977 300975874 858946850 194481185 447028396 925546721 973648010 328278788 871287407 436630284 487927127 856715839 978528472 767626781 902524420 248185497 523735287 925703485 987724632 833456081 839479665 770715592 959472450 98811362 787384422 597201186 632183794 770294088 984439882 338754514 811199515 915515220 948022781 996830504 998757853 962002424 988004718 732521584 962972840 789305571 931964828 23204677 433125881 651781280 803436628 804706622 985364291 90189510 177136274 168560793 760593323 643806887 821840188 116273562 360604146 917571821 984634058 367971922 479905070 838034526 926097958 285381959 292417264 249781685 596644930 630151545 788057352 28524100 205379194 366315417 486323009 859739269 900980142 534923113 906285729 703228950 938119485 726003956 907821551 491283422 927658372 272177226 718314958 24210003 263414011 989054030 999241768 710981777 780464438 694388980 721269819 398818901 600610185 942513096 943394691 418988139 767579285 219735736 995142553 735734811 766595590 78267122 869025004 686971821 951093983 741587657 796964302 105834128 828076832 393273407 558478217 522128893 932800066 673274543 689077462 669727685 703192555 100881102 121509068 136505344 169647026 308295593 827723955 384299933 547986560 651702387 771872375 312368199 854447917 370030253 718684915 539407769 571775391 370752020 466072093 242030761 476889873 953540632 980653653 999040609 999271286 530923754 772347376 84706299 305152165 879806161 946174157 788807000 842112380 714356401 988458407 604082165 876009783 494374136 609776958 57352898 444709870 182576 23837999 938447365 968773260 735397859 913786411 377955482 562677047 878379843 959146892 714585127 947768403 663489801 740555193 46241155 844636069 544859473 979831657 635954005 845122206 272259122 473155075 877445298 882438642 697432072 843921962 479533944 600267413 454411575 840888463 127009384 432339811 342274379 387494443 336357212 685379906 541801919 696941262 153065136 211261320 523590529 547822216 548530198 850780892 936591829 987135574 207924738 441257120 517775426 884578187 568903145 603533746 233752953 756315754 549949363 942205729 631700005 672878969 277018097 763278564 479577333 921987012 730340150 864615501 952481425 983398020 395501926 546834376 813949709 982313485 425430885 682685920 225150239 504415690 407118804 513893711 729969917 912678149 435351012 563967324 164266160 246309382 516772861 657243702 752184528 961143498 290438403 697283033 807860559 922458557 723355697 948891022 341164257 859805271 91097840 115145916 453892259 928495536 409982337 706689994 239258993 924932280 86557811 937589905 393678441 925304883 193625192 690249676 619910092 816935683 423233370 664737984 623346778 888432822 391190958 960367978 199416792 722313735 309815709 863884384 295217457 599080603 178500712 331575023 128306079 379521854 344860841 868777359 505121841 817012119 241971189 635934221 916996071 940368670 449546248 862737548 887908009 945816174 415798797 439299209 741534562 815889016 433967321 893120526 319632388 437164241 2560800 820190270 885932286 930243285 221216807 743081162 584661544 903442830 832843090 912189819 495578925 814725667 385525697 979591274 598640743 987815739 430268110 526462094 811241172 835352293 554395136 628611550 559999065 623143390 382917720 791494413 980913900 986380600 936445618 966678319 324519649 963350413 559326215 861545199 376405783 624339230 158824097 834142645 155390426 521365103 200049315 589328309 978155568 998904121 94257094 663384012 188446402 413744160 650681044 793283128 363270503 801855727 496679667 628480596 197845103 798702609 884978139 932245754 572042092 965026811 931231962 984930597 893290024 960597438 500976747 938388824 521895096 830695481 527491732 675158273 270715510 568871116 942696108 971389368 995282323 998300275 610583601 998334584 894998673 956107037 103018841 841723655 570761156 696230844 536863979 972773501 598274089 600029157 273943410 476939682 851562822 924464257 983104687 984707839 18365432 731745135 441412668 535603846 810537308 924256545 974602249 995884884 957855306 982800271 604362078 726559815 612283436 734368212 390950912 819622706 655070580 957370634 690646463 853947339 360268707 480378102 17503119 97400559 385859292 849232147 75666559 610884739 562915650 629286485 898352618 918670978 718389614 796521590 47160899 890710724 227877755 612317444 277493289 723349401 524381882 817609178 668286038 685924149 843283502 861361073 589159991 989415670 617346890 717913322 858332077 859455249 522859443 542858291 162370754 484543702 248375732 338242374 416392046 792508673 221100271 547532371 33420582 841883645 218377182 595604893 630706551 725290221 56226861 821794007 661384396 755089316 71128931 462192188 423211362 539483466 406950839 935768286 71159714 525893769 884774963 931421558 330883949 592242402 698383596 974380585 191711904 570916876 988042330 996325648 675902196 856457276 101534028 404300405 616542889 878620587 597619443 817331776 486390873 894345014 117706065 514138066 641156547 668636070 799840594 956027477 11717768 27089178 557707287 999050129 594534998 772962475 923425323 996324248 793719168 884992360 290695716 996605334 984233080 998825742 986453470 996992674 237143279 804469076 46253503 801961117 409850822 957322635 830286683 890311556 500041748 668295223 960227481 995468492 454960439 545664904 464325040 642086009 691618038 925626221 436613660 661593787 303110505 981405057 35084854 442317001 428510675 546026992 160638617 668409684 996468781 997638134 596343133 649373685 976622014 977399453 380587840 440332986 875630900 879387340 381797058 944462582 718047129 806453455 707310512 713489630 599556639 753347153 323416403 357559730 460021701 488623476 23972978 646316297 747468715 963666390 286266205 872008586 219952938 365688819 470873107 719282231 614941752 706674322 162632092 629372714 366221813 954354510 78798352 214243330 736441228 808332807 939312312 998233084 795385983 987484765 954229179 958717629 341651756 885681099 881325911 947125978 466581664 468689173 166941632 934945827 281805049 778355020 170427449 316073745 531062937 967882845 717136575 726922011 472845606 899775094 467867174 594621168 645175786 646467710 212771277 297802962 75297527 130551080 895301235 901394870 526147357 712222689 598978333 724199565 600944114 785648791 892077089 979809659 266610911 426796163 276530171 621796600 877813177 886403998 699436390 842414686 871794830 910534221 431723882 557779622 912940355 976494397 516145361 884669752 541487257 989311899 434778494 606149413 933465462 954368634 951574983 976309475 482639076 955620672 45770 181006866 45329031 542812725 623918950 738482514 959884735 987329301 258708824 623238097 659222040 720300047 819522988 922378220 115964949 382133958 869376670 958367240 505402297 925410859 583665101 640247683 687529687 736204790 357302675 774098179 752090371 907370441 781296681 979428382 498783098 876857853 474029439 706300004 486270837 533918673 258360783 359454228 596275419 680660214 905406418 944930603 923257039 988338142 430307738 602478688 402376235 630684530 644791908 938948702 136507478 709092199 848201725 885750300 371102561 940071259 753400227 930356560 435046009 895771969 456153786 865162529 835894061 856707844 895295184 966452617 299792899 663198571 221612797 639166679 351135567 817279202 42335146 558685242 374361208 864396413 892148111 986382596 691923111 972481216 650787198 896733103 105554820 132619147 162206078 183409843 516486641 577735403 991082375 996693714 494712658 980351590 912339729 952274485 959049108 972547834 883082880 975211602 417615093 926402868 28539696 243248100 493937303 667857685 234526335 798336673 827796625 919922242 94974335 396143049 344274209 418391178 470836308 851091335 921444512 950189913 324029541 734838697 455907487 518799327 590983649 745277136 945211229 994242069 175245032 851027609 725599641 872117575 797462499 845427510 576308282 949097479 90830776 779381373 179138389 822677713 917250140 993072571 46421366 322233191 686691222 784442454 621857901 913831046 119739570 480219412 30424950 84439524 706079290 890159951 771351207 792256128 351594569 451817028 746178134 971035186 806443541 969402171 877911950 891335661 92553724 459317761 596817268 663007696 171031826 485670193 790163939 945714382 228848742 597628505 239375115 505096990 874574998 943855133 309027590 695003259 461746268 462227604 388678990 965753637 174117778 820971386 318532247 946681449 286754439 415644732 919465590 974850691 880608076 951344983 901861182 917475399 361900942 511240498 412470736 974721029 485849317 896053151 612774976 776402954 678084638 917694090 516474914 586637459 4384991 914370963 247044079 612698061 347199579 373735002 669009371 876956267 206028534 797226613 310652355 796519552 823765853 874393060 33492300 936661740 34643999 410423682 732539143 998403726 305370399 616521784 61749053 511378924 493614215 919831372 995079853 995927666 70013073 895618564 323396883 399906002 779937340 979687150 129698231 925545458 624112829 976069996 320559299 524343924 407537604 873218224 969670583 997027518 239662010 568741458 901796162 971449203 898372006 952577929 440563266 726255083 207675908 545318913 71499694 558844424 638890349 866316516 750025891 910173746 23769481 181368371 482468485 492780194 597679915 724541699 451374261 869586512 263212183 345306303 883613347 967047905 652462722 935495187 733690953 961380101 284545634 589048738 891573705 945733341 880775020 940024761 704639580 973323955 607179891 806133460 807825996 830798090 438714670 675540906 773049543 861130980 213399060 994452644 235535647 724026997 424626861 937401679 453658478 882628378 966565835 984469869 229969576 233589980 623693628 713450646 777311576 866152518 515289121 864854818 920316279 984064589 79317626 314506440 327166628 785677406 995850989 998112842 588241389 873248086 566528404 847427989 395862775 466497608 533696343 885303314 614297838 619638797 869865893 944595617 855067303 998700971 919126152 995888705 824410713 985378414 348726645 942734140 301486240 791651191 527232420 898161002 107592866 475852204 424493057 571138711 947414972 968645991 666788903 848031947 572240136 832946125 769342615 899294750 781740762 938299732 9480471 488047059 138650407 614969920 522851261 744767516 178875132 831168518 578294852 628032440 692481143 823037454 143327235 306096367 170977447 894792723 705639172 910452925 512863218 890154512 140693715 223086281 57234229 470793593 768321182 831881235 321431803 500459625 873207075 940886105 778549369 920879670 808736538 857366943 711229802 857685400 933675865 987366224 811886956 826378975 158545552 340508690 674370387 800008363 130903726 639051363 713195774 846550957 553724401 568187809 592909326 966211086 716886991 949175714 412238148 543183399 579618256 592651040 995278182 999317744 851546566 992746663 604962430 986446741 544706213 977781276 963617782 970861704 160032845 845352301 372416549 420040026 718012979 913354919 905935755 936878853 409403685 465026030 612562656 949074686 56936621 930571275 771062684 927526014 245953359 541228198 956005295 969658792 804757430 894344655 405942112 651356081 273332025 735649826 431274607 940410973 5918652 135445446 915449914 931811792 358327236 522356491 52249689 365857462 930074097 967071404 787244654 807876155 514706981 729695148 656660852 875781749 912073207 963511797 266089057 918812963 620777667 987597126 630576570 852280413 606417439 933861429 11769850 26077988 544906217 722235702 914560056 917529165 380607205 512062015 997888816 999730088 503679550 961557372 172101845 227717452 677215022 927690397 112486147 944025056 10790143 736426861 752157753 882628393 141976146 939574153 176695875 431182453 121791300 219904770 487906993 774824614 637557344 753043863 861528463 898597473 459253276 481792688 522021825 998776865 304157921 998518669 851739270 990339189 849605763 959956554 783521302 961796013 189547308 814308781 636384145 690365951 75286935 898637927 925768831 948167750 540256188 578923531 54499966 203853780 378306618 966713318 552276893 822109973 543946724 581517443 41703598 202160093 114366934 283610821 786981626 809756966 202022455 443729935 667333619 770889717 780675825 953134216 611858730 729394367 404262879 956374715 171125886 870501800 860778308 954232990 554783052 582389825 667611161 686209909 801476059 940385697 165714515 380406320 907585840 958616914 531252975 965613511 544176034 696012256 109660488 302787340 593613572 893794358 50713652 656463888 642908121 791983991 760760556 821170614 349888489 825021109 781544980 926337931 392145353 420357331 324832973 881735748 790291848 981145259 294803327 389780634 686289743 903183204 606339258 628941486 753065717 811696461 304899078 379422066 722107760 938300496 208431724 934853406 266983266 501726541 311218152 507829326 673994609 962210540 290941507 379549410 99125702 815448512 585073654 761715771 630470966 715708016 962502206 993063194 725276315 942423266 938918929 944273121 872905563 980078511 490599918 873921538 771017142 898882899 323905697 963087080 374283265 937145380 946237762 986689112 144519376 648710597 415009244 477703062 952533470 997499048 709772289 804305852 886184494 953614587 861341139 894345066 394023252 400778793 276593068 853747579 762623183 847029380 946415173 983177868 797295949 996736997 828281736 879724621 803066197 830165433 478781228 718482935 905098309 989971410 528974930 688266943 508528101 917267345 347025815 842468344 429421966 542205154 284328835 366516044 650662660 818868157 660676942 742838921 728024376 730562441 840019594 858502768 36421190 353989644 550408964 599809140 717579591 738682210 403551638 502740459 760553004 947122458 590856580 603018232 516416010 563189911 856456868 920443238 134474487 488516145 657393277 838819711 196761930 205728597 189009762 987549602 628379732 825148508 683766651 848321490 417116464 631929095 630198117 902943865 877363000 957346862 850868869 892207268 662542170 966366024 410581818 936447912 25762281 111879980 837155755 868699932 78617372 743243304 262745455 333972861 758241117 970713472 484053484 911955194 544881898 760764585 47371157 279315311 635689700 801653772 58360088 498175898 510193648 861916537 302256940 569660137 742660668 798517083 180622308 227858787 136580564 256457243 932424265 941931103 807415535 973457644 113295120 815350402 405065085 530809980 113841372 898999521 440331614 638321175 908125783 986201471 683044416 842206173 893324066 934261026 641855198 970090549 514888491 664988082 419543608 420782593 44165416 306918103 384848717 862338418 252429246 406004795 536838446 706623310 394395723 509466646 282591725 608219546 108582795 455356752 372830157 734491593 794905480 907532186 629266443 874472072 807398956 906242391 657026953 999300072 844669639 877386248 231369119 348490853 926531592 945067984 176727383 757502168 219147205 393428352 308728862 944342171 488812192 637495694 886331664 960322758 608150182 768682845 187538273 243727177 72855319 551054356 207057797 422223097 874495786 984112585 953864072 974537540 680154955 900890464 163047831 603419568 779759991 829512289 781583246 830837330 236370284 838821721 518114818 864183878 530563050 592828870 79140945 952627882 280972113 964785712 774432484 786598341 79224125 714754490 708181678 821919741 86940342 670064881 883325971 910348699 704753657 910191875 423340347 858102140 689236368 966133255 928586303 980699286 182822467 341446383 536679836 786861129 842769102 925575740 329007672 741001107 940686344 994721235 360929315 694388453 563450899 755481602 995131245 995884021 657067172 957865048 128662659 401530557 594930481 792791731 163541420 849558173 112411192 977556100 837099570 838631679 589645599 747157141 532231963 909303121 472018254 781355561 174720343 937524380 812303729 868330263 241650821 534719943 647183038 672685722 942685667 981896605 690614744 971969311 575690538 768344184 335622526 403167499 748659223 943745385 146508435 532173589 837984003 858670912 873209440 961745337 421051035 621728415 300272970 528299377 701414763 982406215 21620939 324335877 988738949 990688245 78929658 368727900 601946343 778048414 852881442 871927056 304503278 917060225 208684264 843712899 714756613 974321212 258966583 857461208 106117606 818459299 605245431 719164988 619690488 835268178 818574630 930031414 886460710 946927823 327497780 483937105 915291438 986263792 703706546 965331702 112139218 597237825 406090563 435456692 477334241 502815630 43391256 598724458 876977766 958055445 781175868 819529542 97571610 383314880 979070521 999370885 452029711 798594448 650352518 939590126 107861481 460844776 593054206 832239680 153752786 359665264 29412509 544417988 506462333 600407749 484055382 490102530 613000950 935786866 226056568 581716032 881554118 996492555 164721734 613462214 939808393 983360772 446483340 684524908 235437334 823467982 106070257 556459639 202827188 329035778 692678250 795478102 127864718 387468049 559116369 790118269 482955110 941266967 596878236 827346380 641316079 871805313 987851061 989637822 163490651 847881994 475418468 529070767 110505342 255840792 476743004 556672334 397302636 810936298 698934375 750601452 497625544 901983042 651714477 986941573 775125069 811162906 139572493 400076196 454190639 603964354 937115389 996716887 509825858 676778270 228941434 929742091 605303865 886520950 149214035 780597388 437996243 848650895 667375771 856937393 259143050 705698234 467815596 993000212 547736081 754931396 254575227 917785197 344990229 582253159 266240650 531987161 611496298 956806901 941782552 976403675 29300124 585447867 984767525 988177202 25415152 73511376 746469407 898996371 510289831 603203859 390521028 397339066 577345935 654867348 185377645 981453043 330098674 619419443 893070925 941987543 680357748 748080123 813045721 936707054 230298392 624625341 587779583 895989308 288629214 382858162 767991953 783652215 298556582 847577863 225791307 909154515 397373525 817683492 537821256 920152000 229441688 550957838 806709663 941193357 884084762 954743461 880435686 990267179 591774859 821178275 123951125 955761269 357698756 942447361 583907984 587173786 609952897 690078880 25317959 491274264 643567010 782610793 650747573 679883098 667818530 929399693 235270167 282332618 642154351 863825211 646114113 828226984 416139998 934650515 293494437 666956993 110343165 372135231 912339690 975374610 475670723 900353427 885508303 986217838 42230194 500492905 221599167 883600928 265175707 339599345 423007020 569546440 122561484 124933264 881932161 921459884 20378678 32465166 868104183 965001586 100357995 773259780 358817246 639209425 179439185 873029165 980498198 988352968 177620717 476476665 690771976 693485403 972132826 999250037 346092035 554231732 821652921 968957003 969312264 976790256 157168248 657740327 817106027 836022760 675132018 756226822 280254210 511375884 283793301 354675065 289896631 888262747 642060194 957980398 492042678 680888108 931488839 932291836 814717959 871966619 118184860 624543276 521902500 690981202 521372493 756251580 174516583 869349501 538197254 657107539 632029112 694900087 525907499 632237427 331854696 728844188 324102096 564573974 653191211 874700902 565230501 607653490 859407404 955303160 939733584 943628875 244790193 685150597 25033911 255766173 600665900 995261577 49725506 826806041 990067073 999118554 230279140 436982019 520920069 897107849 404499316 975109444 727981464 967482321 902937957 954376284 98540918 792953043 622831790 923983460 883577786 915473727 987510317 991608056 109137977 289369699 611351440 756380382 174943873 610005300 191675827 703372612 33493547 983275182 118689557 173880466 985592101 998919359 445155047 873423770 983657918 994517602 257713199 653191253 277758296 952485521 24166115 854818631 67593177 209709743 252724721 512740466 403492421 532773007 351277853 688556218 301047077 316941613 764208455 805118300 708086548 911034780 281833677 385386564 998295369 998667621 205085501 808825264 582520001 645777406 717290556 898355255 718988094 784439049 925661362 950170156 145039680 551535563 133048004 152448762 401959197 518969295 921823865 945642522 380510631 551011832 349022120 639797539 936296840 953854333 304146906 308381184 839073075 929469704 194657232 964583485 356312860 673676417 126512299 317435695 900876979 928668615 52672112 399758840 440275720 908764030 268292191 303585347 699177017 851905233 177278797 247753264 329621355 659920628 966052658 992581505 116465652 765732204 633450444 829455822 81145269 795767459 610553982 812832857 527435380 532183253 641250196 858280615 156094629 429019830 787098978 879430353 520993529 957154105 540719643 565401002 973495162 976419149 841095823 869209983 646457474 723996233 966546649 999945680 245172603 489773732 749448149 796868041 80821933 428991791 468894114 830631280 862961485 872762226 900311456 932006456 74800757 270845668 681624487 793718747 285070337 990767544 405274757 761933806 688926062 791484673 464722059 873084777 887765054 923046338 901218973 958379937 632121773 739033849 516401403 907752288 533319442 635644810 33776674 238931940 739314764 929494420 843395979 896866548 808744615 866400144 317450468 743450277 366993839 764466277 296109472 348039768 191644278 679409772 540444323 982899100 834927431 933566188 403516795 427835584 384173310 557048330 871576954 999404552 930452117 943242131 80396691 446930895 341977546 990437642 335976654 390380072 906112553 926884724 640774146 670687221 278792325 313187094 158870059 829980420 81851762 697319908 271825302 406692331 408963495 421868661 134061826 795490645 843426392 849202746 736265938 993663410 167131649 347767927 437933586 771905524 246410951 876642856 21131360 658031189 945926708 952077830 374101773 491348875 593644084 968310926 344542445 882747831 240188650 558850467 273817106 528958937 528593455 545892694 309578852 367006897 830538829 996962581 265755309 564100311 908901195 917033451 204788112 687702219 492747942 626888544 878953572 972796083 108882680 516275657 580035841 649885258 6712391 609724560 243413868 574313669 250032164 413413004 956038211 969304533 917532147 995387217 421705398 455377665 824170479 984802993 773346994 786518136 447233993 505047767 297400348 301769226 744248201 867890033 881590239 919118027 388303663 730702782 488648058 907126937 974198882 976090589 70828986 438584669 534704494 753484714 396238977 451752218 423256567 653525309 405085051 712271870 881529688 962914057 895394333 971277653 757246510 904050188 245218937 346539218 750967448 848677016 774152094 972833191 272647978 524516393 785817047 952437783 176340739 856465686 954151849 983496122 868237227 986802273 782781923 876046623 346756629 375172683 776465895 887999313 502315702 689628595 590153720 724217291 385471638 460948059 527808249 637286998 554273413 750441710 643575129 676362494 144939058 551101981 310985349 505610364 201316430 516049029 367539097 609124593 910154887 919090415 543237100 857858475 257314374 695889440 405993384 413207938 438871689 665400139 807873958 960373873 523016129 934140562 789717262 834073142 73683142 591464685 660974954 755132859 434813696 441786313 668473776 778418909 963504853 977710128 271255627 688224726 600398818 798157220 346487519 522312226 964213212 991093511 174474903 444060831 826705411 832788998 153733036 674523773 686016285 708879198 603661809 766482559 296073495 856465638 888669777 980911129 363211862 977062598 676020538 958806427 46668907 527409484 475764048 656569336 786809538 963741670 918965744 942101181 332003941 397112492 427100135 945551122 48013756 165044373 904706875 916415211 404616530 706775555 334152762 575384236 556109958 695083759 146269 223387872 16077836 447616620 592542421 829658961 695924538 977626038 919985427 997370071 924271917 934471174 532774349 677551903 227579030 886752540 453252159 863849851 721568158 952055592 201576383 441389064 614257792 639917438 150857104 463855699 932579694 957265421 123242331 658290041 605524919 720110537 450202179 966784355 86513861 901974831 270097109 400060666 665615569 861664715 790912761 975372097 608230264 752635601 952828801 962562162 847132061 870705607 810980016 945522832 847373157 906454250 47170234 218978556 254292573 594509241 496091987 925958254 433904280 622913727 910569588 924488801 13315442 526717280 286428279 713611417 742436399 902935784 943200988 953148491 892570450 984181131 144077322 619105877 614464399 711983571 940630735 997713712 139375230 925354491 352628146 851924779 966460788 996851145 915856636 916363230 866912976 885637022 241977954 720557646 886932879 934784172 353412871 832627776 959112039 970768215 238243212 264899148 85200967 839813643 407704480 916681017 585152458 670739138 20920164 662318110 90619961 700447180 496399160 539215430 755038896 944290188 421887950 990382771 138423152 984532364 317475981 638467978 978856138 982051776 533788235 587036973 844517212 994864639 134488435 877718750 422585556 704983505 53899443 249843344 250304134 346581429 925570330 993516627 186348601 264696762 411491326 498457640 653181149 968632443 401938040 610240706 484409012 987405907 794232131 888085954 768036177 836184196 314236166 592639049 277543612 592551456 698524412 979887348 975358940 976653427 152424413 802269943 255780103 731123097 717046305 812309110 99715434 923770686 124858731 985450789 845559078 992276512 49851607 961438930 492641655 574192980 118771100 221095358 121118544 360330498 672719288 851154517 452131828 589684724 233078659 267881242 913188939 993514839 237612395 498617109 649293266 699198231 371702202 852406741 772443581 852426196 830539206 847627871 930755476 966401902 310846634 832736405 115184628 909232140 5567359 630779999 157368460 522079109 758336314 922963016 629341659 867303639 525976512 913746153 986666574 996822847 631527766 807222582 260905516 939777692 103328847 574670296 973940638 992114715 850280773 875436673 256080099 258131596 547406915 756858282 147462139 885104645 28502668 729671488 746374240 898610274 214239578 269061359 839732168 904229517 97286062 963068677 753001988 942857760 448874132 889678738 87944855 425131772 742580328 873118531 244259679 460460661 750623216 886098225 605528436 651879434 868538964 930822955 846684585 855645921 866097991 988295095 6376584 973515559 587980763 914578574 961539010 993588764 826756325 998928688 553848345 668332078 537788401 741358266 136932190 877748602 520095264 742180796 624331327 870533851 910027204 961135131 663659288 986571583 791173995 962229321 737891179 850270377 483731338 734550153 258378856 304511479 391689038 420907270 165174422 701076421 88149554 957157125 61392273 289775583 226302222 763265530 410304297 757285108 876842394 977954734 29240729 317763750 36190558 874191087 387000637 843435999 997621899 998520967 365187088 838407035 967917881 974400326 368151798 762464306 605099049 915141069 330657304 661959857 584255183 748315215 830551421 842057594 461207310 983698447 205679577 980891327 826456946 922892589 840444286 968343705 842058920 968229346 90385514 734187651 378215003 661257939 916963653 931851779 163749120 345029296 328472377 806849508 612142195 724785719 84443668 643182388 750982683 789634632 30334864 184177496 525697443 610691006 812984639 871853936 654068008 774072358 865347541 969599808 431254865 790301965 360270585 848905548 338393458 525878131 943974646 982387809 161443099 295565004 717083180 755597238 662517633 705303613 444986684 731209833 151194213 237223503 196761408 904105555 301411494 719088639 619635136 822667847 294124859 836447247 978681350 998655999 512678898 648448574 502816389 575782248 425476898 679653333 394560933 761061820 843060235 886474743 55610417 56610719 723196602 888075886 21842971 813903191 385840737 717929751 476186733 538819440 123454833 193514940 405824601 823608763 884041633 937259036 756866194 786262089 810033878 967779315 761819988 869750070 321534288 542497416 471659166 821605126 612093418 850914973 414665829 719444221 911716613 945880488 419093675 956260803 894258802 966983795 895348957 963592208 111257668 717904447 743377780 978675072 98300652 464100442 811176651 819021752 151508055 220972345 708581642 776737356 19960335 719926712 112417895 235968580 918794274 936509036 85022174 321179540 62246869 657330499 740323020 789732173 132234480 304079733 769184999 963260927 191432266 305054855 359359009 543019722 144173345 675648389 355558318 428320373 8134916 190333531 444334331 715565640 368269739 789868647 415774318 748139300 289124975 576097479 995253616 998870802 84411935 402942944 754647326 966328714 918434973 937780409 283692838 466115389 729708073 805910226 8073598 608053346 866619931 967922079 596044713 685976532 256968821 458079386 239594203 925850434 734371587 852134325 474136546 923210072 297491501 505702369 525956293 720691632 920880420 928299689 873305085 945231056 179194603 212983131 1788705 202099747 885823330 923513508 428633958 895438858 651070630 698624703 147613168 206385132 204142716 799781198 919636802 969176064 926055424 927099901 329268314 896141683 105411244 813338964 736235660 971072044 569910525 655757695 814289218 937643643 389112515 844499806 133380218 227102457 632034141 761204449 401134655 411624965 80285492 298081452 678212435 821307395 36206316 207576287 261129373 796575768 131371563 568858931 426847400 890063826 337173282 681619584 157618725 994002725 815903538 863491656 298920003 891287163 783163263 822658569 452360399 613736067 753332869 857846567 528113071 589893606 720876989 989807192 367588147 900761705 409754015 925876873 955051436 968965228 517987516 952561021 350167082 830271792 611170809 637566033 26896334 131671113 556513707 967551864 520938750 765990266 591005697 845701858 680046003 822859487 196178921 356189987 94450131 582974949 282281717 751913873 565718438 733705363 285528668 659438212 494352255 585809011 317916620 498938002 783187392 798946502 351670307 587472054 496059936 832331321 46558287 380866103 904761781 956271031 817119863 905438082 652082460 764298982 809663457 836612576 193282745 988895843 315277555 410468804 111604888 321202802 576892563 822131641 712792988 767164023 205657733 360784060 622663798 857719093 834631197 941486351 990480609 990701127 937118374 958473377 163020753 297333747 567571898 746541327 615974497 636333231 895210028 943319070 606021648 711579774 412511612 585310025 127302299 828662163 775885039 936216414 549738156 550704382 32525266 716712322 997687426 999286207 139968344 624279585 583591535 819491861 505916391 619573300 479651081 919857596 772968989 805160319 78209160 856446332 662458347 856080226 29735414 276726823 459696253 752337734 182002851 271830195 259021365 702714951 831622319 947911737 72620659 487670819 258551804 922416855 241047123 286551977 965299408 977908800 801578827 941716006 51497917 178770991 144839995 648743339 426000842 470080899 637878184 685194847 573407415 598893981 825832150 956259104 829711664 833587713 798422815 966319491 962501411 977806863 329968188 454192098 559481215 580519362 202186994 956022954 409787905 475228456 729852437 881441067 791279467 907011048 689038986 986193232 269074280 476993008 200454593 494003634 396605825 716522565 560621353 814519820 576345424 785615785 248361723 776281790 222517091 593490997 448205187 798850023 697033607 763854953 748443063 756333452 964883031 984635046 574312838 813032550 20956615 984500067 5561746 187184404 508739670 868984909 811963586 926887714 293926347 810188746 213876288 423868694 389365484 486108198 80209256 808112589 138590330 153522869 503957300 987068365 614857554 828487741 99846398 119977341 846317294 945386011 460810422 775221514 979231974 979978434 929326885 942344140 916365848 978057205 245428483 411407302 959223310 969166412 365993897 786705359 494049434 948175998 2001746 995254194 438299015 719745926 71695831 571888434 769366169 793063181 456412382 882699980 486012048 820519598 797293709 979094555 907786607 920297557 687627313 928793101 331538507 427737425 367110680 402910900 662787516 769675036 928494901 936388602 394169570 472792777 840741539 959615073 571715679 751510763 557879093 594082039 102795194 279090912 436205414 749107475 88744672 770739205 742815778 768184503 312453083 556219701 471288498 473815029 523746713 759743131 540566646 920221599 644260035 848474311 189868387 969750958 139739284 341393961 419142077 723089269 546914895 581400336 283088178 507569659 822336035 839914023 766429141 781998835 253359009 410868451 305322949 658590569 959365575 968722145 785285151 879825990 192606433 388828931 761259788 795128639 694102507 777723227 725927798 975175348 709315789 961039590 107290172 750775349 400593872 904785828 373467150 461847071 631399787 876531003 674853743 761743853 348324973 698990405 298481447 355087976 783881085 909399597 44391902 227895311 852380769 943693461 87074758 630486556 820660182 966422340 961803274 981799027 376112639 731482463 833774424 934421898 873179665 981333796 775163063 801590602 307489918 470253951 455828654 841352815 310048595 449612572 576728568 622366754 541574969 965368428 64316216 173695139 730950519 913194000 367497724 951776156 545760377 577619191 638973970 735656905 877738288 987027090 820048782 963604010 914943048 978487731 364400360 760803520 487535205 528515037 948696958 971621945 47380437 513248128 925301661 981973492 737300554 965644886 253089452 330069624 504362979 603027537 377657016 948863258 269479375 394720701 751314909 757406558 967046117 995453590 471806600 791532330 149372326 689808219 290533117 522753354 869859995 971821867 873354922 888678279 598536843 987654763 599599917 943898847 973409999 998026548 840163772 917992542 340827967 738385210 229232383 234071217 720371453 979892398 203359584 598539402 651107496 733173718 493920462 772999168 694872565 860580480 758371806 784853556 518168749 987546633 237662401 849738398 502997273 817259984 913549644 936487181 944300305 957498578 373477861 718723351 921453518 937578134 269068842 951301080 247730760 366412488 913364870 935950006 791899905 857646859 721384423 819105241 745309879 893873995 874719171 913503852 669323262 908051607 704043246 927152511 202740929 349116356 175286874 946262442 868888208 869851729 107934561 397628726 580613235 697814836 947892062 983511275 690454474 955040439 161568620 400847089 781005651 882689101 673105925 844140547 672555298 868403600 887651913 893018215 409117819 951887622 292692856 634444931 168886058 350925685 607977161 908866944 922127941 991497845 465204607 730720771 652985770 869272838 765051417 896308867 868560656 929218278 594044832 639497468 897649976 953019442 596219689 895326408 148011156 700777224 761696051 832876357 940787801 947026819 168027567 593030745 974102287 980354336 381529415 987908990 495590648 617970902 174433956 357959967 693016400 718320800 142388832 948616438 801351156 928153570 158900968 485819441 172281690 292528001 721707663 723086487 23282989 431155572 95154681 704615202 131764598 176590298 933137134 941720657 287736820 525815057 9072342 246671784 960609822 967264284 344041951 834434554 198392989 595272749 326655672 414500680 213997837 302123472 412610436 697833759 591599641 972476495 708739973 877100991 193068117 324639313 992950812 993072669 19205306 632256606 239546162 903927225 44972183 584395325 454321874 546881020 272562281 333622254 914551053 985104631 488802748 687563655 612580717 656234229 683237006 922353207 480338655 858532956 358709573 990284302 674480802 859803086 973389783 978611126 318476698 769821352 255437565 846720713 824560110 927324828 307353086 576351921 983868246 991827728 598392908 938124484 314376437 682429746 817306696 963619290 772309445 941378443 924000812 961028935 730548653 936162691 51786080 258426386 371057503 944693164 21800237 783774099 49475423 646409846 524802532 733240366 663405039 991365276 247991458 457808788 772020773 772929987 65081722 197483819 401564463 826535863 519511667 606450175 946196527 990265066 437221601 822284875 333758441 646922677 80815932 825298554 382836237 844269190 361503041 589020605 762703927 908981304 929773233 986045582 442664148 522056536 888140875 888276273 947483136 998311210 62790601 825945136 284782810 460369637 526327883 574517413 850698715 856121254 491801370 772244543 752738536 786639255 772340683 834606990 764497169 782935981 178100171 775832332 806239788 837610669 882619493 973567956 802010512 858907831 287365477 456055808 482442626 804008604 691023542 863677601 912483619 936279335 911971681 935819379 551314213 815003861 847227705 899585731 443169362 920830408 295390844 510477571 845150300 917013854 934350805 981596469 805093673 987864120 217322594 445565214 628212602 909215553 265220357 619561661 898980019 932459547 152234359 572403795 261476545 291902709 837429041 964322788 568214200 913775832 235197930 864555662 520008241 890556704 843830593 914676120 898237626 969117627 55647496 980063738 517933663 637337155 794286390 991617425 389452236 526026986 335929567 365249925 524325781 780546331 651707952 784327090 417313640 525528713 145080378 313488431 8141293 86364820 793328858 805220683 353070412 653131052 331083143 659184659 21718795 705552764 401175728 484259811 664624504 859533066 721209899 822902663 28843971 273100822 555031275 843403662 964392343 965392274 955308219 985114422 821547546 899224667 379957690 518620822 240478238 774729377 126965380 338465631 924832019 948606715 896580551 957259892 656925728 762904920 127492934 228765765 449594056 693904500 777649987 792982372 289129486 352501241 97654864 716347531 809781100 912783851 202695944 630518364 483148508 615106320 161313746 548471414 653044071 907082832 116896795 991721494 432499165 517491309 177978272 983226395 944405992 985632566 37051564 811537709 908169519 928985776 485899375 704430829 266271708 559738262 514191632 562419528 197528370 893649225 929702940 964762720 35785745 556176625 126330773 341600577 724753088 965923105 925706207 979474815 734517067 955119266 442139558 816600728 420282772 682908356 908189930 915284605 68108864 447237829 246041576 611579117 86071366 864806621 763938624 965607550 288651913 451792844 573414959 620656887 308634363 857695721 741208060 942627601 804165689 839995026 632792715 712284449 119855043 399346210 704864196 711655947 596018617 977256325 972026166 999449698 133734427 586068597 902718380 919859694 951327209 974875771 424635884 927014073 250753319 921136081 275958090 861668038 124356740 536151825 989055370 999561501 192018424 919851381 444909654 766529014 575200581 890225149 178462889 826609589 300871040 301281549 60969287 751908444 525957662 838118510 789845230 889092996 437816317 703850611 105885288 390051478 31805849 988931576 779653520 811246070 448905046 494336239 721038391 869280981 738481627 772333593 222173284 620848062 784112555 942901971 437326300 978706850 488936867 581932026 97535579 247708878 463298248 724621290 566503466 953454203 129471839 871929385 460411914 484917827 604314620 965565361 240066275 241959056 912208109 980097824 694733896 907103854 65368590 748220991 416904972 759011777 897074922 936766627 79243920 944646309 141958317 204271715 673140068 965741138 242433975 498621471 471478513 762552422 491367677 698343434 940469739 951874704 752273148 951125884 636159370 763671911 298032036 478138391 800851220 841376691 841873358 918489480 114212947 741461172 309532094 843517460 576107445 871333329 398240796 673781090 20849851 367958706 959596031 983476217 611250634 962762063 48811112 58760480 685400050 989843170 138178981 933725936 162295106 892914664 896350197 966135387 945546727 998553019 902626308 930528491 950066306 981402848 608287920 913516287 587193931 899093759 319461042 726774956 342257771 385758279 661682697 975945420 931713064 969753896 536064672 789693870 215117714 340339166 535104563 582310960 114337978 718739249 364294321 663654766 639294714 815090004 338672831 906251763 898613322 968547920 175641474 454867739 28300897 648254507 658042648 927888888 586696083 880674629 721200391 974001548 225120363 813041719 300765163 731771925 504145503 833756415 52261024 531839952 406361825 938693605 471910210 758189596 835771108 845892100 683686300 784017296 227128303 585169638 218967506 941432438 104845131 657727654 956394138 993779147 907669974 996779557 584000990 957827513 710996017 861585316 267160471 422417470 692509240 883956410 833761643 870579956 192593671 966768187 724895359 966249013 323437665 877593909 678330444 744610497 109344164 164542262 161591857 334103247 386406554 727913712 574399958 980077950 187420190 789465990 880933440 907444713 248804682 635058918 462406196 621848709 286410821 607758052 607146362 791306441 496928901 857949128 454182973 827934625 594234887 896657146 363349913 756568170 341908025 423950918 682237330 878879790 913766869 956737809 566092405 921415890 956664778 993982303 855054397 936410190 807502755 881167985 67978174 343808496 180090583 849655914 595344679 664361291 896995616 906718963 790658426 966944502 144407047 747373536 979046486 994008604 673199338 999810069 879181566 991504945 692804879 723903813 567724143 945203657 876616686 924930200 693555384 844597794 183205107 946374629 52569618 201868795 236251685 258468363 965883480 972142806 867292588 884972798 988910670 994651851 450618575 475186283 337924556 511503047 844324362 945104388 487658320 511329643 854432986 946399254 91483232 256836991 763691105 832317807 81361460 740116896 687554517 934610446 478192529 562260450 4973776 538836988 808257128 831577536 242645976 545253048 343416646 671898144 38011836 484957665 440337077 759418043 186521983 426512723 337706503 476949496 576087103 623426189 714452334 901367537 21012289 816553294 813853055 953646804 739380455 979780118 938555320 979473008 148691008 777300730 720533826 789017018 923669017 966166968 879977262 923361790 382764918 852896775 664712593 768830297 946118497 999557223 937869736 950130485 569070129 846144096 716491735 765556714 64840937 838843683 841731082 979770531 822558262 996659829 635308504 768231740 800644461 924491298 184223753 404992613 164455844 509208228 847185785 917375042 51444552 654093479 268168900 925969814 754807657 882156124 50304630 149504953 482265548 525697587 177485626 798870575 312408229 432017845 396344763 524365072 592685825 648112812 220210512 275000808 906656890 980423361 778645716 813710102 944521486 975203365 148389734 867144709 89722674 736452718 166554532 985409913 450587688 615646027 841441915 916157574 754324354 870629920 510056543 807258416 862989033 892122807 68945601 967857177 429060211 765901891 147935983 211514378 12346173 101157581 610629320 793536944 643769283 781971406 69540945 928218111 474972752 812286686 277445943 405484245 726272083 749715621 593583793 626050001 790663949 973180926 564965414 627355538 133092882 916168567 474343254 702973045 119319854 120299700 217339520 903761506 408139683 519238447 26099203 630500181 625586498 929942396 808057061 985940998 72250696 680571830 552326780 966616374 526667486 918787095 239558853 750607670 9984288 789140315 885181516 999504622 144180321 937378785 712350460 884528017 76827495 87736027 995971509 995989551 478724606 816834450 80896739 463353679 524171483 531337554 20180601 254888488 519953991 716007848 583480919 703181174 687031055 833120018 341735719 960115620 472310101 799797196 34301742 823721114 701643038 979816099 145399080 704848746 91457607 373603234 741685453 964415820 992388079 993144382 239212198 555195640 162065429 316217371 813590972 861963860 242536830 963652781 912010724 973585451 476895136 688749379 532088941 704840934 81144170 161820153 190542251 950072526 951132891 997071758 926521790 942580379 755033245 786354406 38283884 312424261 97460883 178909113 971646247 977153089 786418308 807379635 87865147 793747609 322923738 960943703 221189402 888212109 266679254 913453524 925578746 956247087 781540662 898063780 816456209 967711165 164386982 708712672 668467806 837930614 928853227 951186812 52873052 696508566 648415722 964433298 21794664 99198053 333522957 666355940 923836250 929693512 565219240 944592502 218615552 789409140 362799148 735868273 629034688 836109730 758853050 793985541 131452626 510562563 745257064 883641787 151458875 704023870 594399472 901716518 999436776 999938946 278581265 936925516 390639489 566901799 503037462 954412289 816985477 938568906 255929814 359582056 394416427 522276980 285075974 480190293 853247698 858599250 822569875 878233445 72546201 167149444 748601725 892568487 164566471 225037833 467861337 477899474 220603844 425968516 985279183 999727170 962428807 985313993 107819807 203577793 422261946 466628839 280569738 615095886 815804069 867749700 222155640 806245758 715268276 878526098 525506610 599070140 624256593 757829626 638718556 811787778 454224912 579063747 875364775 896338154 193330685 857784546 282912510 867173624 223775840 288545579 224316704 911956865 316422809 536019877 536217305 928182077 740981096 949957761 544787671 768239754 172796545 193615760 160276923 882455905 205521009 346464771 226477648 689295959 493256805 615847371 731864102 876185454 966759833 995855280 983542942 983707489 12566716 864457482 821815839 854316734 274819131 508557085 819241021 977586778 55677243 204528108 382794209 674261802 551569489 800801202 951034639 994290257 120081847 360571818 18977467 328645797 353228922 619058032 986770435 994635763 556015027 878745491 274425736 826169435 729088233 946734363 15725023 198391796 198798994 704319221 510685345 991660796 783667052 967628837 608687186 628556008 400640885 630615653 35263279 706364681 960583892 983956481 99789131 617017583 654880393 724209925 88227241 658180926 472099127 474659761 672022978 920858126 681455433 747949057 499014816 882897125 110354493 352795582 727319314 873445097 6019025 547821300 504128829 837039615 503858440 732946537 34849417 381326198 153404848 966720174 340955164 644467360 918347566 919836223 785357680 802943587 625516895 982952700 721860008 772386048 789064687 897303991 745561904 768576776 701105720 806984388 422559528 479602368 363062743 618155960 144769486 941659768 75421115 592121493 896874803 911826687 718852990 736250739 653130242 988730077 617424341 757823430 126932116 805003312 895957686 980144189 901098664 970238301 377498332 689081179 45522293 579902571 408192520 835347189 444919583 802818445 739571433 903390152 33246831 832718429 339691928 370201185 463583060 692448663 738056865 888397158 789277222 838453613 915686105 972929551 319879540 431652290 319391932 933802279 880578883 964719107 272920912 301109698 20864738 511348762 370138053 958242005 279681115 782050845 841649454 945433469 460981095 700377116 652943366 899947250 966577469 977237485 811032549 895509129 797560748 989168675 228389932 836139119 373426272 989692144 9615343 75797381 132828567 401512853 648258582 793329486 836709638 850489177 76009397 322047224 783630100 855005396 319661545 996748266 546506005 695653155 28516241 347046087 105009814 109190777 756037392 944061359 351613971 542834488 199918394 614142873 593695474 829116368 116807971 149341907 824304120 925489316 707482604 766236234 396293758 761146531 464266472 550332560 340507889 655761635 868192633 932892933 236874084 935953471 88753873 526574169 949120936 965439189 67525558 376507208 817098028 999359876 590934053 940199255 466295181 622563159 708943273 841161379 504586452 806113918 506408481 846389719 179369798 515059242 973919449 983104954 946416089 983453630 839625115 950006481 297587149 907625661 344455769 535358518 55697196 975363269 653901507 926963168 401012550 574983225 622598953 826417034 327105192 649733281 499677390 635873683 85678679 671217746 506029463 744581554 236557895 517882130 940655676 944307765 340535854 468334706 338643479 569812059 561527065 654492175 288794268 631560885 850088560 966910116 625879888 817124588 761748752 816675471 644239560 848405254 569118531 805733397 386759911 979296422 221503476 708098966 696838031 724283546 118653580 645235263 216836785 403089918 158147454 709614967 196397668 328940667 418313983 545778309 569840675 712289426 291523237 981456229 573817610 894721244 865084395 868104448 191442278 901166070 982401187 990817861 808458212 878259442 145828737 929238242 20200120 347599741 879653615 908284680 264312588 870889209 948479785 998037674 111769074 159229909 332175993 530685607 830370831 876648926 392626337 490633112 661390642 790470881 558784860 960040852 129068610 317188432 944701478 981080074 220353570 365089343 270422495 791732528 861337269 886141555 187716459 548103115 79024138 276390646 558298174 921062440 971814366 991209148 242039998 932493374 752154410 857110349 343480804 776848549 407846940 955075274 533574355 615027268 261948321 775156066 259873229 946088574 948425723 960306621 893194947 910651783 411697819 734101560 491661987 554010965 249322980 640722228 92985007 787069015 722308309 954403278 376573606 569857181 484805102 750345481 823303888 940273090 891005893 969995426 129953977 611216797 334123773 618102926 411226053 721151884 34700448 338952413 893628758 913501170 721041540 930475910 955197493 975695469 941252103 992867846 428021235 753347468 569152201 697647114 679264429 848758226 961867693 978750473 268625240 286557244 75459914 229807958 876269482 899860063 393266768 861338045 18394031 613711569 589635944 694428612 272661355 336890232 280215014 554207703 659532946 978899373 918484606 960197546 383756371 687297510 937754116 995373569 341768452 600563627 771266092 999961930 345082624 406496570 975102129 988161760 730569864 983726253 757863713 814479165 468960888 846753198 556894028 562001270 845711393 894165412 567871146 813937320 570577988 642607742 651461358 871965450 790791860 854413158 855026760 863291908 861546446 971462705 566329774 914246819 432945542 693556311 878133107 949542279 425244096 691358917 62543732 764863033 244708084 879815859 627015037 733764050 236105756 313234417 599168561 647809543 133673327 870840563 652169073 783289208 734296856 954125091 378023993 844035111 801136528 948517348 819730145 985193907 219489956 947383590 277607469 961621506 553601149 656358452 76808292 941742603 481118364 578073965 446049694 670027457 906902438 912006680 655812670 687026115 38241068 435875889 770956238 906790887 369788811 951537447 603221844 890628695 444238460 918976085 795804555 971448083 846410082 882135079 913107927 916097963 928225717 981154198 195909140 307061519 818808259 867409148 810743098 845254859 969781971 996219934 805150895 878238754 186698673 516467623 830641874 926479462 479057307 975585591 987030287 992318352 922451385 984522776 781425977 828374367 915035674 969368087 514270289 563179356 230401509 751437915 213933088 667841355 595221463 783682281 237097276 428383482 325571514 639799357 532098955 953291043 999052395 999309382 615921144 769934888 69309333 410065159 999825968 999980200 237954667 620923469 820282447 857877244 882983367 901245481 285744501 925991736 82285433 600250281 351264626 394577256 256182817 550365611 246053879 564380076 846826398 860652256 309615435 489055215 570981305 698780100 402374230 583860467 867720509 882054745 984578853 992911317 103902330 451322698 564761208 913008492 355058634 951549092 321429480 914509653 731138877 971315062 17108638 102718218 517599903 844030761 384438958 648227504 572298461 640908414 178818267 671977725 19736955 652514585 340984458 564246643 806078773 814129159 232474399 788158988 367923628 993393520 300951785 504502276 353639543 993909955 46666321 394480325 132570630 734689458 458013371 982365747 369882346 727025630 880048539 913275385 513025266 579735214 527681962 578604809 496069096 762223692 363481908 766751921 71926739 698637334 298303858 398398413 419863808 743004494 429822393 889088172 88294063 782251705 171787081 600372430 266417427 429971443 825588167 872032978 925213214 954985896 262250765 437023582 814579165 981555609 289683815 759078103 976028554 998253022 263191782 665186060 640951707 824800656 328424973 579409552 494007991 889026683 63252546 584540604 800190272 976596367 151914614 182832026 307610248 931724536 365616110 917010309 393914928 823675559 717279215 950811144 929741607 957619434 356604333 918192380 768992428 909914746 52154990 468153348 680384385 947158033 150610556 559116359 585976555 785115137 6784633 268231573 570653916 824787100 230600527 561969298 683627555 754773477 967646671 996317518 119257545 241662303 906397520 916201639 222245041 584943358 718984656 991059206 980626974 991547431 816033983 922282842 196169267 489418719 716031945 903191881 363121927 994101467 720466451 966289697 798286340 907397193 598380469 873398272 705918342 734913036 251358169 338402655 60083320 131360803 311677526 454186987 314801185 549790450 4434665 270082222 706983447 825822387 931418818 968817456 435501473 693713445 889691783 896281071 279789984 602747147 834825121 954094223 253451771 820721882 269811142 929383990 290921048 314002168 179527347 452303573 277608752 579100064 52852997 183443777 77887165 485341910 317415705 399535951 296418177 363607049 494101104 698626347 713884977 946008513 219791938 447402684 796763318 927348609 711400527 871684453 762452945 980915093 98328974 985154287 669020441 869680886 723499410 923209189 482012260 632212676 179645900 354732653 806877761 897160654 232095979 435167899 729335085 753031708 246161486 288074969 69108475 932375573 603301953 727937935 837976393 889995170 188727300 467964115 896870152 965955836 634613883 972089666 329671248 540335626 505721786 574400427 158520708 941501388 507622740 788655993 689401447 725608554 360629829 799852239 970707857 981026151 489976642 714026935 858485953 992899584 784714401 873694118 378717228 994975675 182288069 930636060 983303703 999786333 251243360 999435305 76797958 723968515 937164395 995393775 664727582 877229676 371652204 617975772 954396238 958746469 754682713 839098326 800405100 995578183 260972676 353065865 762537478 955451761 390907702 586395798 120003602 413852103 256313602 775320401 728598607 846128570 602518072 869969307 921056706 925021282 996849924 998584061 624469490 897979855 209965664 744492901 386365027 773088039 45030395 91319280 847871450 892428435 531418536 938154619 102861193 751974523 585475409 837703596 314310526 508415082 220360414 229468777 251564922 904025908 287354761 478177117 221667098 451328749 910286963 931311489 585785420 776965181 829496918 929711518 781339806 912733815 742793639 812724179 935611460 957253806 666952087 790175854 122680028 483797923 790621783 808687811 730757381 771917029 254567387 327342913 283794422 957523996 759107830 769632453 998772798 999987134 253539441 558776788 181349051 688727070 419811205 673386150 952358849 971649207 75910306 236322612 346507663 835614780 644463983 675227032 823484949 948059511 837747319 858630495 967510686 989451904 99394098 834837062 915091423 947309795 159125353 236700953 56854206 84174388 738032234 945092955 216427944 850267885 10295193 384323901 730739654 921846864 130772727 660484778 873128028 994275499 603666427 796686051 934851101 964141426 467297562 744128067 448974662 976210500 359508809 608242817 144420743 276185947 37488763 443392412 880291400 918882389 345280815 698740176 521565997 546267816 538714130 589388951 474067174 951223478 171092068 690370187 363571069 422012424 497376072 945897620 47492912 999948521 156094375 270662481 702825449 938247685 169240581 695679107 758931680 979538424 287876587 299751456 65709008 127530255 885791867 902920457 253218823 553843454 247775666 352358767 223508382 991171886 968524830 992988859 675494707 776775808 359743308 602073044 331102910 600959822 385316956 540648723 159229730 563451018 22096529 232663530 890044555 964885771 384509328 752630523 997782517 998958573 380320275 804147938 908027562 980849770 29304098 637130696 822015637 905327377 48850403 649076022 257566067 836532275 267503058 315327419 496903154 871576700 569916275 877401460 855430 565566824 872121939 896146529 264729918 684306987 388549749 864918084 289088966 458549703 391784169 790541061 55781552 84061658 194905045 441323313 777982052 814926514 998896229 999923092 129317659 275754197 401452965 962535773 728874731 750168028 274503118 553334952 390506630 943479056 927539727 981090689 437135929 630942496 5465173 804085541 699197378 793704866 420156615 910185377 956475388 986493219 200631428 393176885 54053654 620958747 776874195 942353106 312281493 561270139 626458803 860792221 384866595 889941170 561651744 924810272 490191914 659971686 19043640 625344189 991834290 992088518 341330929 387042574 873446397 979669688 87943891 204672486 19941998 488027644 432495123 823008664 732923289 856094186 193671339 610480083 7020725 114467328 127086775 468918070 3913795 477807640 957390217 964763553 987464684 989707795 291025178 861307528 781225904 816759061 80310963 499291177 323537038 748851614 223241791 798777577 978496055 991000754 406168552 912946124 523867833 901161866 905644862 922520504 595282805 897404541 100355703 140588212 123006724 695872772 1103830 806544149 698627400 877578916 800706575 864936009 573501878 967288658 250498567 778442533 716201775 889389568 302623028 629948900 167054135 420906710 901584725 975226417 475973417 845352851 903122669 936763755 856027278 871823781 158998045 913702566 589651288 847820995 239199359 851978437 235535254 595325268 55146334 307443404 748128966 905992099 43553379 907305642 738776590 828076286 737146746 976718460 485783220 801710012 972026997 980498982 653226478 827079606 522674889 942035059 997019792 998604612 924233361 940816817 273813365 993826677 758331473 809917329 160825970 521745217 14108002 541195104 842084460 848041353 406535080 900331372 44106851 96601398 748554328 873854476 368802394 721260556 291481567 612769530 785002462 841686558 282997516 440672013 323331706 420197935 567782740 823587902 306776236 653462778 113496599 267899878 644350023 896307675 921049561 998962593 996610614 999905339 530290387 717469880 579254703 750089912 922527940 927431325 29135763 504062543 199762436 394847445 510398577 559076215 339102999 490194837 998976723 999628595 28225292 487521391 317648781 394639094 593108775 873125799 970676025 985633192 544741372 938386057 355884647 828240760 708130875 765818673 123575557 910973486 717167457 942005378 112336282 169841264 430959042 588075796 772706907 961657720 752389315 925063325 505451910 842225836 969867946 972893939 649062212 955021883 816866322 875187098 128245311 963955511 113128904 211043319 839233037 854694776 520344311 600756037 85532251 347173793 246918258 808020068 425255196 649523463 912070937 992419028 649594995 891237843 277748753 791550668 291532408 596589491 387633656 720591228 522215385 800241933 885887021 928280176 350423436 882796877 581341114 747930985 465141540 696572778 820760775 957208770 367640508 800211922 338687078 776768913 219895486 920341269 439013515 567764433 990842727 998442540 957667663 962629073 470475095 804965607 268805213 517957103 398622152 805782337 532404610 567771535 887404723 888995185 830281207 921526640 959229299 975484781 430150652 521277573 6854830 701662070 75588761 891299953 798367455 906125288 743531216 868951853 293129729 600962565 626103503 888762208 285064429 801586709 698776821 840472173 813799039 844510059 562270468 985418625 92758132 369539097 364061923 771510830 900389101 946615094 509826094 763741918 505015360 923043571 253829274 543501688 703749460 863871893 790044858 790178634 313284849 890132325 931909947 982432753 869383922 951186559 188026317 793064977 354925079 903132151 76161369 426166735 731669299 792485387 490615072 507869177 361465978 779195565 603377657 789943461 818892703 825651804 428414085 936611511 907585752 962923591 326817435 339836769 646820384 759408957 621722400 720786801 429426659 568640672 372338121 434407722 856582756 994017203 597211675 681857526 177812267 874193447 741221047 914414103 122562774 179488912 546947439 665799998 337733957 846947617 68718490 607253375 226351852 464746452 442868594 613794867 416385559 754706205 111500028 430482506 820957853 923750310 919013694 940067383 59637301 133455504 207484367 471436476 180275480 816414346 703614895 950339060 580692210 846488365 260868454 896030599 646854189 691947387 148864730 535384736 141744016 270176270 222400555 545112270 705029527 744187712 298238725 937894936 551784590 888707523 194422550 242716353 699743436 700347225 864138847 887469144 253048016 255364359 804320805 955598705 965117502 995292433 764117668 890132009 37950025 205060777 331907447 525594807 869498747 909178132 147150201 288134726 110291019 517712790 712161339 812968627 207136575 420537567 441961262 643591155 366362773 590949938 55034553 761820898 635404394 746800067 952048471 993760366 710030635 798170948 629911186 888516848 772189815 884747641 905444086 965281367 439963607 717454333 697026594 823599176 532923101 940390536 17130866 741608345 851873034 859589581 852497441 926839793 333741444 627097029 460836092 634631176 620075176 987227238 864644316 952175274 188324851 542850683 315239266 924340311 836568362 943175173 559723782 844041196 466297048 841026026 423546626 993589328 26998214 803490430 96411157 919992569 468858440 614032928 45461781 364342349 34777725 360015175 956560765 980700098 49510990 891448674 482570879 833963912 639702585 727700853 568412570 913729828 777470605 795905266 6260418 290052404 319205473 956698497 623926414 995828860 503154027 552515505 818981393 892334824 427150996 955841676 137909303 942128432 612375640 660210279 372839028 671635626 561010589 831698735 777116479 950270466 346401866 801972149 167408188 787376239 596776931 631995899 341363920 991550121 112764779 798540480 944045878 945279878 949028148 964522037 59684498 288414399 400130739 964710887 622145601 979736550 848015166 978630636 266580848 501920634 657056460 660707045 89270766 870332175 645095253 649554855 456118343 528031321 98729634 441049969 34065506 637943814 988645512 991355040 992826913 998395509 87926385 571041849 329808635 439138300 892003225 929616622 233316430 530207932 703620006 833807113 65196176 755117596 779788433 843366872 559255072 762264465 901991954 911254744 93556328 868226964 931613264 974678646 575619494 842621929 474067368 982282972 177379076 705010941 826641366 874214567 969631142 993494979 629352117 787918149 580396433 965536591 428147161 856428184 959241682 988907683 682115884 713573202 711992988 832724821 831888842 875915917 766775523 939448598 675674914 782898196 148584992 767397464 413202993 486005982 995853306 998726900 132798228 160669753 949398176 967494867 760447281 923700967 599537635 784617164 117094467 722188506 733468509 861769005 646603482 862368983 928151475 993179136 776602699 958771099 45171336 498111368 614109040 712712005 728765338 813154632 308580128 716186213 55970358 363300174 439899572 744681902 438851050 915818372 600235705 907717287 583560764 721253010 87912445 855111087 120555370 196226404 107532862 664194200 220256576 927669954 666633869 801564512 391223690 882135111 870998344 939742585 784467905 850281108 651425031 995504364 950550712 995267408 776599105 820624911 52782632 364820377 117008653 325891317 25266899 180014198 676179193 853900730 319327718 968995992 575738069 879263215 983550620 987078218 730447303 919121794 492917671 497450841 873161129 983322148 988311148 994232812 227329796 658307895 31934682 761031609 226658239 421105808 660095715 905818889 760375263 967423243 444289306 970749886 305100389 353872641 38962681 792948501 630405026 918680698 330290850 546804750 934117806 955785146 946904652 970108539 339652868 826239372 181361440 426137615 498652258 706909745 251195074 304254103 480968684 692464677 874153342 963472153 838932524 843599271 168361510 504176855 637288277 828722357 344492685 655652900 461877047 580531306 994245156 995824854 233999440 906091388 151177336 769675509 719066860 804068276 931539959 999255583 682207244 923815475 19118971 757954590 122737849 298049603 592025199 652360844 845735140 891348553 21980835 141883231 364395838 742429622 492649424 701745526 237876568 532915748 287585938 696341284 70076657 381016446 237119049 741169815 341006830 743412366 281800921 660303539 206292163 692917111 262946544 964357713 78247602 307025265 477882652 713362215 388048673 512026452 670152982 672927429 86869344 456151617 943419791 954217365 571457778 931765169 979014679 990628624 285246128 849746574 126578669 412965601 640511892 809988996 626081983 713961734 189293171 605338655 891620579 953208145 634525960 844615034 974919281 996835709 245052542 497840294 203688407 296304533 505265819 968884369 299520896 553278536 333176544 646352274 380543311 788816642 358407110 752386109 81529699 230202696 426053917 451775381 79926115 994934222 903719900 961465142 836370810 914561827 515604633 866067365 406524525 786442446 413881355 763068927 197917638 905794622 643425889 837273597 461690444 659463697 972275115 986076126 530028345 974660348 718699378 909358142 799825502 937118327 56768506 409827243 625095587 941784004 338386324 727798964 206645009 301316975 779426225 921140030 301215041 608104175 311283754 598192002 325527587 492191556 201921416 242166698 198372843 705037728 546858552 844984735 242379412 703255166 971033241 990587174 990877513 995802210 23584821 724607486 817253878 989724956 725788362 999831951 794384626 972789691 934032327 998303875 287589889 301878061 760525294 856940664 579026554 591606639 752696575 801850768 37031246 331899215 259337011 579803389 490781705 897520278 796572717 941927608 12872443 779380625 660222485 675181597 594518006 882788047 473919064 864203608 930648213 967331809 199388125 485185252 217541681 562328223 321104274 359535564 85732496 491390809 436479033 990139176 420225512 565410533 42894929 273389809 896282865 997785275 20849501 769025948 154420461 562329801 31620372 242705370 73921775 559271554 274930489 598880799 303506360 353339056 788360486 979752566 526603853 888067413 36276032 343643710 282061128 896040042 15282156 490697099 683630352 773048105 272161504 321723370 589516697 830449175 265722740 723608289 948231242 983385036 811334002 997894567 934805542 946411114 824921562 924561232 924643523 925603760 610908156 954731938 372239075 703692615 395737547 414934760 710781814 908818231 536432847 868533379 1410201 178855472 619686662 686555162 252428278 373337048 150323637 573804611 903515677 918722945 956960605 996195420 23525747 757241641 736997080 900494215 330514985 695135034 59420251 886944225 943328399 963480443 519521278 863984311 856092679 907834990 618836400 848717988 409761711 985448772 557841695 890518577 110356269 880888855 1834576 780710698 286128409 837143479 725669460 901055436 903991954 973241200 693254750 913523709 540324265 776138579 342431750 732215652 502455644 827376369 8118157 179744748 728336266 965983410 785287685 895186228 353257340 662347886 331916414 386522444 254468900 802901114 270676402 846510777 624080385 770449278 754154859 862715610 201958898 550449217 248029717 925721636 26242966 846895617 951749975 967566922 125792483 241918711 857342524 932937674 305086146 912577012 128582637 849869732 196156576 515733881 988478033 992058702 433776698 844738534 157418506 638349759 479851425 921744254 398692621 522584542 34955892 783666090 581142098 719956323 105037224 242688136 351931630 425077409 515073475 543097375 849643466 942074346 256676434 404699938 770093115 888430115 543273213 864497339 286036906 724068321 272742393 995357702 357427630 932642321 314721684 559575246 997703267 999831812 486627562 529542189 756217289 920749125 208457812 361530174 916481197 978445014 704965171 900175312 738348361 742797923 373135172 401936551 698558229 946687907 436969317 485804347 994767548 998322480 430890004 881314845 397965671 616368223 17732210 331076839 65994554 255681166 748879108 778787959 738555996 923722032 709482774 841005382 984276021 988781633 540522558 926667774 195094225 524782005 349777745 824778761 956332448 988596822 654913385 987185373 785937598 943243300 395901300 869293897 250742679 273580090 778279788 804347085 6412955 422203805 183169137 666233087 405618845 563992900 923209949 940379159 520481205 761224910 532692647 873463687 893057541 930211924 553652749 558916082 917885618 932509756 238878897 685631994 415858826 992771689 496919825 896570834 303136869 420097977 801338408 878363199 424832029 617127216 419885279 897821428 870659042 883259794 904307356 933537033 33562176 367390589 553302088 724624729 425305877 854768278 334936608 426725834 329424193 803001992 854651840 930402134 96873938 210983167 866388746 914003615 261538719 958564970 867562438 978883189 95767046 325712841 675559485 886808449 741627998 916970227 753867534 905231822 413942000 766784407 689880241 710675519 721421655 860798643 574164856 591042089 16880026 983381354 779378122 965352373 295746141 407210223 410750200 750043584 865062664 896207701 310330907 657178820 829226444 979635978 770057179 970857232 298266583 770872022 949851194 964783368 923615251 940559693 877987685 969298265 157679970 484459948 719369189 779025429 950786321 997205941 990013779 997789265 497189372 634484103 851532870 862986988 750623355 975890551 247911124 624409455 593989022 930998073 450654496 847953955 440459384 845106255 341740056 575172417 238303086 740021636 596796726 985234092 141104660 377882362 663290271 677630643 10175174 726154036 102719875 542599759 27708959 299019850 187926946 831889545 98461066 150741470 732640809 774563808 955337976 967482299 588722097 783427450 293469954 931108881 908197187 976671677 97516048 858306325 665902640 832333210 401507477 533214962 14034398 114280797 652471168 939042041 780159613 984682779 62691374 612429324 291376019 405114709 273712288 603555619 548272190 836491289 341978048 632619703 805987932 964280993 824277787 880463074 979557970 987826542 849681339 992925392 354948534 560225491 425765571 633460696 903714630 999736657 767503945 786791690 53547366 249781561 805581573 983641242 850939541 961117129 91490583 458475113 448974403 602573512 738766032 763193757 393965729 641121161 331149034 459797064 975975864 994074554 566152910 787319638 348117915 406640107 992338314 995056552 800080472 811599746 90493169 188313083 5849778 192111863 934210369 935053098 393586473 952625175 595562793 737288895 601388798 833812948 394931743 980790000 933262522 964399855 496434132 912451997 53371801 975194956 713244936 953492078 189710687 531678671 575789803 710941486 447284382 918082656 845345889 861813325 700674914 736835605 453894504 756804864 466833054 880041451 19402420 540104535 935610004 941204031 577231652 996374058 307090324 748471404 751362931 793740932 275194180 981684290 835809293 986269974 700764503 809615142 135708982 372409601 813358629 901474521 630118547 844154397 809332229 817373354 447394482 727127193 167925283 999878762 951037664 953413057 827999284 927713922 426098666 882930418 364578951 840160901 138819954 897174592 718315643 733390141 43911787 514496099 990944584 993632153 598665398 613466167 353322086 639626554 552609419 640089391 254990965 368310373 605751337 938529325 56537075 628230154 428771336 437306212 724149005 807495891 620011247 738337963 126253446 916555749 947523494 966468378 840240065 990026785 347097260 611834858 636288409 949123168 447886635 473592185 601404009 626303522 939630485 968764202 358272165 517700268 996801957 999723863 692068409 723462465 66952790 426173034 77213137 142402007 852979204 993335094 745785812 778900557 592537968 717071460 558572284 633143847 999132968 999245064 928923337 943303667 292755032 488367440 246377441 393183262 224712399 828353963 637416573 794903514 969263178 985962116 505888981 549285119 118634421 435535952 253843366 939923032 120106599 291718618 932670543 939926023 197278365 465684926 465771061 477768640 193505860 981044830 783785981 794761314 797063724 930645571 15200748 471338874 132594753 163879335 356269348 999149807 646367843 700559827 711036210 924084705 237038035 465439409 635422319 895551607 932560968 947645699 48903716 242123970 802309118 986597561 801705576 894062282 342587289 495045323 614923582 918880785 229106703 821847548 326384798 899639664 264724960 464749738 826756193 895403695 264010803 319298586 498800185 936681781 950703128 960829066 881836044 918451253 398887474 924158079 309961764 515230146 11752519 460288986 783745704 998962537 387944587 720396525 606816344 721285079 557984941 909899228 700209303 772328338 603508265 809204758 825236261 981225028 37448356 719312868 662007443 808283438 494558439 507810918 998786668 999066861 219685960 445474243 726091412 847054324 671803741 905307112 555704310 692878459 950711065 967180750 281874289 773358171 740498420 754514186 365972122 471664532 370659462 665461108 407990540 869802739 342732798 381370880 283371889 430533183 566729583 856622686 503478869 991738744 644913020 789000184 272784405 573130035 146339253 535477325 132774154 587427124 649031585 917065896 540414322 782610082 580601246 597920621 641174383 878159000 123722440 337492247 940730412 992898237 993030346 998489261 227068672 307508399 548684056 772497830 280001421 580320515 257482646 918558784 854553609 887844241 688144681 741032953 461960787 875692949 867701785 985262155 886537933 988057891 977296347 995380426 165411886 823781291 933478784 981844187 70005811 700187686 706110654 840291922 109545038 297289219 499870968 540153678 731725553 915277392 356647437 671902200 773602528 829009941 900651754 959383867 480465726 843550170 789407026 832291411 913290856 924219613 93489049 459337738 654389341 675620335 320869558 679539736 487374452 712973573 387368193 400733736 413440721 751969647 914320695 951309317 648672062 980671261 182948456 678792160 955255190 983830464 44165468 85520856 520760804 706612006 446914123 580297581 13170572 996002745 576415891 631152274 782945673 810429554 718978123 925189747 140461564 200614188 120128816 413717087 785845045 929336784 75640326 231334932 821468709 990304962 623982808 846362934 332093283 957115604 740347075 947357776 614931880 914439687 156874565 775452776 472217208 795683307 973854652 982686294 480774647 653771976 708124097 810728849 521501223 541796908 360145809 706685454 802874742 939320954 729031679 976795218 26639384 123806235 897141909 999802100 342172803 985382310 707099291 872680330 110591661 251489404 416827064 847766873 530158154 910864749 340909009 880714968 665768292 889166627 19151549 347770193 35756654 818922920 456575719 609055990 265984770 818184093 189068864 750212233 203453751 808403834 466720144 712990324 876727957 937841803 537790720 753330559 426605033 679025059 518983788 897081420 962764914 968013351 155825837 721323679 968060392 993325587 133821213 308528617 545316581 866785942 255830076 716432126 722555411 943029034 240086867 762698453 610620769 714231838 516660054 633951929 939829646 987400054 934246041 976684318 971572724 995090975 298657350 434278536 518731730 722977433 551817133 696310782 564178898 962617857 762257197 871980402 541180787 848050770 827937700 942685951 826777202 924865924 726509077 890239812 856020649 959885462 519247325 988773858 381661835 957687552 534657543 610973965 850792875 878710030 504221410 722436315 945711112 969285735 265084535 582266843 742419215 871459479 701032579 871161099 732162589 889195553 725792665 932539259 904772086 998029113 764965085 807120356 133789607 850516971 934507963 991105029 183337759 867561457 735853648 890657742 89060214 820522127 775677261 867955082 616394990 744482969 391428815 729257634 555518702 708757016 981049160 981827686 802143878 869150441 386022681 998126982 883034367 941615382 168860328 225554500 446788678 478191287 435386397 822798476 565068638 804420231 826929814 993617540 688711434 891905385 918821975 964829503 316916823 502497754 512229212 747234049 921245971 926088645 104611239 344349316 61584342 445272087 990544985 996820114 356526826 880915959 248058245 482324304 621228244 952555600 797007679 987674098 362564029 554572377 535126577 554475937 160703496 883456564 141109893 962154715 700774342 881912457 569113470 623516262 44986064 779088931 905009747 951140216 624570833 958314734 30490194 800757596 272027926 367754135 733391202 968597384 865732639 896080790 737038200 864916247 672532190 729838277 585431170 832327958 372258179 806584714 429541157 510426101 464767979 565655077 581621165 754211638 410667601 866012917 641827321 701818726 527990600 667303504 753059799 905031936 866800876 965670786 545670678 585459205 704848157 727008422 900512202 989262424 296931991 861454135 35763385 202559757 605114601 631739151 61743519 284678673 323211094 988121656 593991128 649137345 823587900 846094297 9551008 674888705 912458562 961572646 301556793 332735047 724418172 880616650 164201520 521268251 651061903 875191301 753249005 829806698 773106354 879263217 422367045 577917792 165755863 632969933 982146565 986104940 904452350 991388660 145741910 180940621 338992758 448327384 531193257 703256400 798525150 874980234 109407397 936301586 281021540 672705771 464344008 972897822 322700222 629154431 991880824 999760712 194414494 335122926 316628099 910285293 429444049 881384474 248022543 707865853 2081326 539793879 348845245 942936843 664200880 916764611 284299622 827964710 371195678 662383052 189953309 889070731 968163338 978248016 25236292 984653481 288526646 790449819 91463520 361614037 877991605 924740612 276616682 869349146 759288851 845700672 412620436 502026062 533106319 666622044 545011775 613250438 380380933 527906736 809639548 818443352 786524575 847074873 950124484 961784986 59698754 701297300 363872922 965002496 260265132 791817901 292507764 985123793 412231188 924989103 628712907 634542611 600542768 845724803 156564390 298112973 770371746 920540916 190248087 481837432 374147545 585057215 825575963 999607198 507723302 766992214 153851030 321615469 143824861 160237825 849486822 860393664 72361887 104662822 681300360 945505544 636429747 756297083 549637177 817366561 969239613 997066503 161788312 626429282 65348520 644436823 42435634 69671340 631166977 873333135 198532736 780516181 988479425 994760132 138058471 197000689 394873462 934091827 407073282 952322951 171822667 384886851 524604026 882799829 437946990 864988013 835861322 877975064 367171123 935592572 928943578 943569465 72225504 934755862 981822764 991934321 319376905 753403312 978182417 996766429 248188282 874092773 356937344 523165846 703895039 855119118 924856379 975474533 277637064 778600450 8635008 811334981 477622647 875772970 185103262 272028004 49580392 658021374 905394710 977747586 166171339 673825356 557029399 907375928 83827997 596601640 670393730 801144418 307287722 910057950 958953347 974906627 896556897 947431732 719073767 991299454 610517170 752236701 851466371 967633372 142065086 688213812 362968449 366461597 862625589 886492181 429250296 931137181 336773129 819498108 183098587 883884194 287752999 724201110 343184918 740311194 686106801 704476637 937868011 997789665 622487738 686125102 181122457 511694761 110170431 822570629 348275114 882226227 441088219 766447484 57877421 672263752 725255876 941385646 580933640 944378789 966157861 999760895 912423038 985481143 22650656 126386629 48195846 435719805 866368426 882106079 31865397 372760643 277923866 898433531 335643936 661219689 12633369 187677705 961876570 983103450 569040060 891108525 568579115 952181151 698388789 845062381 781389022 990112304 870768850 918863729 539500524 853378567 930458752 933561683 678717691 833856426 981361004 989042876 501182517 591888127 241890066 589147049 736689649 891440243 23284496 906573413 681471330 697519957 854211854 975999083 883974362 892154744 900346775 906706692 105749416 543720065 931196098 939759588 887773557 934463775 627628741 937197657 446666533 550147364 69103473 604105419 468920552 666565483 10677106 216534497 606059650 788349794 740326725 987631145 458739282 903929080 688807199 918622594 293364855 318067346 721977323 795622162 542650426 702235318 108545158 132340396 292404987 846714096 201762449 433661477 524466750 685336239 984411412 985137986 221752853 413877507 80120668 782775304 309603258 780746094 471510435 941456691 300211489 720611472 559723791 741416216 381805401 920354271 105182397 794776121 638010155 681349633 154959177 248318970 456171411 898724143 601928295 726549398 575622494 807876546 718120064 922119702 80950401 741350777 64178083 952027568 97319388 949724895 202919569 509913123 650302261 905491494 57874029 304981696 833512768 919640408 66371462 474300645 786134663 943769718 817393338 869940097 706882032 795296427 672891085 781060714 845289110 973485476 155876883 976945231 206118 774747490 263416537 851034284 822253923 860358313 226276304 269800107 786569596 821855834 914744099 926320293 864591844 911842118 14674643 900361054 851044386 874469082 93956701 255499456 338263964 756111955 25310237 743785317 601440600 812677576 688594846 817357339 394765800 857671056 350949593 476608186 737181234 938033619 140527897 508370059 263444336 409166085 706734192 917179078 846419833 897559595 71352371 567086283 522375871 891043749 310554004 862153050 924942877 993792931 749049264 898998391 701326190 905422574 66516732 397023103 257778085 880899333 121987908 704854248 300943449 517366159 134204049 472377885 633993908 835107891 155673110 307969530 662491002 936203493 344365476 996036774 12101641 971404475 51820659 951988290 7175064 314418467 319587726 659863993 894262384 984935196 832179887 837202992 203978717 431710100 987571374 992313360 237210271 467441993 930508000 984873677 560038422 892696644 174570494 461676460 638746894 696671555 340530372 598125504 188520302 799636437 498523113 903739480 168120087 510150615 100395253 318311660 831933937 858393971 436834489 796116172 79376507 345419096 293256328 592411574 729021868 783362725 18433474 651705458 495983330 812139222 183273630 834539965 59467840 359007022 943003993 999705122 803932921 988680271 702632853 857156390 356126099 381175108 9942396 275772541 999904550 999929729 945071145 957653579 332007816 796128728 913663147 937493603 575143740 891574699 954716941 992341291 175904114 334394976 549169296 816462820 327195261 628163310 1314567 979923739 780051182 953313481 678222382 960819087 34119725 446265330 678651211 850786886 423832820 618520665 269426504 990099018 672771581 991239875 840094152 953576675 310250114 379400298 854545371 869794222 309080229 536971659 785507667 895628725 105407451 835874786 400341005 954511815 296867343 374576040 657004233 998411887 305546836 420287464 951389408 983286845 987290105 989345501 223098451 902281626 861267504 994376284 460889845 497400833 247780549 892306227 263881960 291803735 358496498 359644280 427236037 523549230 830299017 830750412 743190232 894682039 942891738 965854294 142061024 302064049 123838206 550426269 658611312 750987830 723906489 959699535 773339026 870184913 571964003 715787907 774498007 859112444 71936276 540944756 642972223 838711659 695529147 866909645 879340457 993070923 252129976 911343805 395662975 870583078 254608710 822605329 301456330 465545792 847797759 948183259 762746191 854378624 142552333 583291426 833632498 888186473 291172806 554839583 780804515 863822593 445001007 787623724 647200917 973899372 125999348 391864379 952950752 987246397 212674931 916784938 767512372 971630216 383501385 700822958 874436025 924035654 253976071 805110330 374862704 712254758 242207334 433125646 581430406 613627880 399592416 582728952 421628505 463802844 699883476 774969444 106092781 159205685 722934675 901569071 207712238 285689823 787364000 898123281 549500849 911228412 597096751 890940466 452003848 896227720 362254212 390426438 673474451 701841701 442936622 820851170 896281058 914076670 416013083 712669189 562627218 935729353 911102954 998582885 895619396 942230131 596453758 960818341 339192264 815270607 133243879 210321129 886367942 903403152 458459505 476158159 710061277 945209779 252154104 411515528 262491431 743440916 204294565 776917551 387775661 829161139 56032092 71779223 938637633 976302970 816665854 988738741 698942031 991969379 447481241 750299779 9121197 286691357 621091080 715987732 737472691 944931907 269292409 276637218 269145538 541327197 33292167 970630812 863144987 946579359 938137067 967947877 57739654 281965890 806647225 911351567 516310866 998258044 732040738 859181846 31138743 957991414 722693007 797560960 724544108 867757721 447591059 800104489 471047516 895038262 826336122 843432774 552283428 795325829 96844855 982927333 356827145 701096753 604199486 654903580 874019585 999549659 445057139 737642618 85937606 919075828 783866251 908146339 85025156 415048955 458182299 987461041 905076422 938943383 553113409 812047208 37508516 124222391 852526876 929633959 295277265 414239844 444339588 773726091 822918017 870280323 628533059 812121672 341363520 675969423 18689940 488377044 431416726 507876405 504332971 772304432 132659348 661371976 743826091 913462933 593740186 760802449 884629227 893032016 890101122 979702429 780654616 818382065 814931435 840707891 672710785 764385584 309052725 769135306 199145395 929142518 449351384 629189024 694735014 898615039 250143889 265654796 989618433 997687845 153625549 302471503 182545049 517950193 526305425 963719449 426066544 664335829 8810070 603939826 638509537 989982736 882387307 943586953 653541174 813607743 801986914 851270943 652619317 865067387 19580561 712757380 131977388 755115412 719433975 888174209 107336069 537485869 78799601 158589861 680845089 776930399 637697437 937366473 65049058 883863747 529928618 768224274 103656947 787181670 962644744 967609819 69556359 503117420 73671195 79166953 47023742 740050474 716363930 950240400 170778683 274907569 227786652 546876770 478545990 686434376 514386650 647422876 784246122 800807113 921245364 956398542 652280278 962197823 103191239 141606224 639636761 911732954 458882061 740021495 948325115 955105286 856650988 859859390 68813979 81444112 530317744 823844741 531722912 830774279 426040562 587274495 337827050 989087224 921065490 936975293 102101507 476247654 552218654 711462257 687963151 845383319 321532965 535844805 384144759 653761394 861036722 902059454 195085716 999922145 925456741 970514620 696063156 998416273 698186517 825848136 44687477 499321014 957262341 976823998 320981600 585340736 207955196 449073347 860296326 937922881 72916098 727546580 259430099 536403316 181628065 410476498 970299013 982051311 950324519 994071721 679988152 946361608 681690048 746432935 365359449 749674915 516667988 661234383 283467107 779906546 956025791 994845041 501691697 811993801 922224082 978369065 840910173 896370255 621432905 721238966 201803064 634105537 851083475 941617619 992057370 995908224 889102805 953298250 536781879 591512817 514361923 808825293 844736692 924964684 205377563 326538874 258920384 540576872 762877126 837040042 276848462 786257051 788870732 799386859 204288917 377569864 956959100 999097177 298339279 885615677 710886624 761727446 697951441 804391484 37157299 928183239 482269584 867999872 784805667 866241092 813776448 951820431 651375325 713468554 716785372 906741779 593437075 886490654 167128176 224644966 829535731 938959823 279463523 584218059 870963605 972465468 886465346 959169449 286712735 524812201 381725727 514543999 586819879 862664660 880144716 960358369 220981896 650390920 736754843 919293849 794590329 824910611 527771333 983259780 720184505 960049201 663107700 995162968 787932500 798176062 390285656 961330062 539900030 621866616 121729807 864685218 119091186 554315534 862000991 972429065 119363303 128974719 940521009 999469482 479768925 568865585 572764330 972407880 956885871 986728603 647495219 838018962 64711829 531896209 809737081 979762984 783212909 987142290 853554161 952532579 505759807 676944462 9036214 465330019 829580076 872005173 562006036 963503914 316876126 706832822 729860726 923669918 846224068 915615644 857974440 999896138 372636633 423516717 879469685 911280104 691397473 742103116 998616127 998828164 497697823 540710038 636150952 638509548 910740630 921105217 427419366 920310132 679723063 750122347 821198292 933661295 68232622 330301694 955293861 984640970 393010338 986503222 724823310 852582887 472925048 535604448 448918935 663713689 19511295 651858739 94884520 849149735 481844716 804499331 663709909 691591751 607741701 964838456 570456001 800260510 889637065 962400190 741220291 991631209 530374730 631983464 524947224 578290409 421077625 712491686 469069373 597928752 135946570 736018862 235244740 454827065 206879365 269857722 946243224 949614956 806594901 941422082 4585098 179236846 889658764 914831105 513831162 522403849 841447393 943774768 331388326 984537944 508612402 578943314 762117985 988621605 516747765 745098922 974758460 977445832 340627332 925735022 592798963 869972931 512691365 928477642 775544118 876062144 942753623 971555205 187104553 806435662 737165583 851944630 158858825 271472793 808659270 957652646 788461459 966123621 358583721 820368611 742716271 780187971 94796079 763654783 162116524 479609074 168059620 504510357 512751893 793470154 393477879 526074464 580269227 676598812 686456343 800594540 730329060 735849458 221273862 666299835 397374602 500927963 130422386 268766781 19174369 963827687 533295506 895188514 23436567 495341650 518732015 574686679 819453505 855155790 678861130 860319373 86670128 955396508 103122608 714774336 73134336 597660819 172492568 271490567 262777854 779288036 107027159 150314370 423872219 463361717 685168134 829265110 451975912 945554865 483250089 927864142 677856583 789972677 664819004 772023707 548137705 831122614 335626227 895061542 223344083 441044064 712149628 770767622 333999878 751851077 25261030 759493694 84914402 706436130 399063400 662966937 192206366 454536617 528712486 967368783 670322630 929374618 960163919 992806356 771123177 800917728 407254643 655107089 237479288 866507026 499437198 950706667 84727026 569773153 576872352 617233739 732739826 758852617 51526609 494629619 470136679 768589273 255595979 340903902 806603347 849447541 623436489 796613374 558971065 941808395 574804498 895008413 75349026 171271978 467583948 630751090 934469160 958458082 36787940 312379490 76482568 226029407 120523068 509766595 290322645 891435265 788640431 865510567 238166803 687101794 476622947 808069521 895095966 938355756 73341651 644078553 311739589 917375021 635612692 941678823 718717032 861464790 259864792 636150686 870507604 986665410 592785121 756762402 783012229 933802451 440512017 730529602 513875979 564891696 279459639 656603750 35283685 125564215 792265955 863082077 647671754 692715756 464414561 775521722 598850601 896760774 470021553 515228692 600844216 887981963 862498818 915975780 141160670 320745459 991284519 993531223 837230392 999073300 703302940 832788548 971680914 999300841 772911427 844022983 239579225 531990598 867326916 940313486 571939382 826395869 524653473 950961175 668202246 860720015 685640765 737410619 468292768 504181447 874216112 934387641 657770000 669529358 781158865 990570904 575981600 610145519 835144652 944971027 684292096 966308138 87557160 218043364 561693115 567499565 675988602 683801322 289963968 416283133 999207732 999840785 229180504 667791396 732034247 791284548 733547070 910550345 302099267 880991885 762913151 989720579 777678215 987213635 267183085 493457855 345181984 413678593 818153917 882392053 196186482 801112879 121039826 859015692 491805455 780770711 118351194 511205933 361388338 788464565 619382303 922426965 275138709 294568497 430402862 465850474 565449102 930872169 258451846 858873617 316145440 927764852 286096535 373513029 936741975 951237069 366718084 973370409 554624745 709797461 493036067 585935755 289245855 345776360 202020852 431537232 523012787 641821580 214496423 419166831 717869459 841911140 741305581 779452643 391706106 678694141 293017342 423686914 252766281 263293750 763625192 856512644 832252236 908638682 40155493 798863002 668639182 949713770 291234034 736454361 308413697 963081718 267077921 849698345 440182461 653990262 788101452 980263138 295680292 643137335 142247839 690321756 721930640 744627247 285886358 888094251 304245814 799915632 883238193 919432863 427542002 939058849 356929952 404652748 778175919 844168233 532201919 947325348 277484415 389541928 424808847 602121679 260795819 901541032 274280118 752302663 354492424 495720451 38890176 275891010 680735711 729509848 623804439 984353666 767786868 965626564 21081803 184967408 41710037 141328104 118382795 975347658 378926317 506545500 977945913 981593435 958796601 965602551 2934232 175611924 364248905 976642519 12567561 621398138 916227698 978651155 181434285 547175440 470449106 690698857 386541217 494561990 955038172 971461063 835234380 923658000 246019751 802725947 887140073 918516901 959853677 992807978 103743590 464250150 210815475 644001625 99282937 239307616 279256015 630461537 537929683 540938131 266288819 720678399 875676935 943514762 501464640 917236905 576843728 859215688 442106383 696542862 232661158 824039577 408949874 648594287 290947239 749834437 125938892 648454309 751002244 873113580 613423989 894476725 378221483 727869770 290394372 473253185 368946920 544518746 802003674 970166906 811566849 876357604 23777789 331958788 320495080 561461191 237440228 376604333 131540659 741677421 619256277 684058630 193123243 215006226 314503233 873252345 659307138 952195491 658630799 692724940 831295655 896689031 950282793 986279629 570374680 619394447 618973820 821918188 803537146 941962663 83694156 629154680 785953515 835453058 131815086 475737253 402102689 478266688 749197151 886064610 691232146 810641631 421406366 449875113 205603095 547050147 396946178 499899280 607417804 958299878 569076964 957682082 207881274 561004867 178904995 257807098 922086645 968739014 972867516 975884426 649998837 919283120 21708587 208495729 987193251 994862997 412983422 759335634 485030315 637246790 801971743 989991127 379765236 936779234 887413672 952591892 900281762 921017832 697555265 701334829 847453260 973645857 999945539 999963702 613048760 692230915 227734960 649757243 432326397 607563714 238612684 854003524 816105049 933899299 274395581 594625237 595411951 847884387 204158805 620973007 89569322 785635891 278063244 417669228 921631221 933986930 243165703 465975928 754908624 765837743 8425423 225331873 933755087 955913434 445710988 877154556 344296533 541189738 736092252 822253151 869965119 991853971 883056635 966523306 240813611 938662897 794485404 867022896 643692642 717446053 867414295 890602147 696683002 956431441 133923121 910495415 842129363 980430503 650408173 783311222 468613458 618047180 601710197 891720328 376692323 378939357 932406621 967961047 686098007 864904646 54669844 259296719 782614471 929559603 102206611 561896358 809659696 973400870 263925524 393528499 209790626 647068227 178826897 990675926 142549944 235801898 754610423 866166530 127570325 969184944 738918281 786058367 789601337 886830972 906413309 967518255 16433138 747524651 432429938 974615576 387147497 478251233 769283442 779365726 847386651 869773854 31960728 882158263 768530622 804100738 317367812 934742510 968703275 977450567 173350675 853298824 631428693 675895759 398271198 736144260 672954013 840701783 223121054 635277557 494877645 940502475 180686410 402986332 683550794 918144673 878881449 893722017 172069294 897109794 226392779 827007298 367227699 969012668 249294355 898264403 572557323 593692410 341014650 758262327 983535556 993844506 697967820 715358126 993091184 994908680 162968357 396629658 455129597 571206684 642337155 834648298 422412866 941165033 155155579 380687959 956074838 980452074 304473248 846268743 186377283 768297951 181159977 869270230 670512419 916199731 553815404 581835322 958040021 999910750 5958402 350897265 120597625 421576887 742518056 805603447 457171500 831166225 400237308 483253537 225331853 957456296 475406175 790371576 67136907 419993458 654878110 711871557 49911207 858945574 418994308 764072453 95540938 737208678 746024335 991043843 673922051 922173845 582666282 619284028 531050578 698769214 504727949 743192321 740634723 872017687 673670368 869319399 371207125 674040961 600033475 746663771 339537921 902343268 411871678 929106958 917030822 949341705 895961870 941622410 467181887 978363304 669394234 796770827 294086678 486522203 62504617 331017938 827647307 948034085 92840359 584308273 304350626 524458512 517288861 891851831 497521149 703912151 525855841 662811102 396585740 462583029 337059423 673278883 918344165 923658041 637545104 678889245 640520005 981543758 366394167 654500354 742265669 979042379 270214773 757476883 554995747 703745173 709621647 898053254 765111591 942081277 695776550 900756145 361044147 387238351 385081824 887095588 694414989 996041010 879736706 935606204 616317790 892970031 875641694 990519294 829116284 854842705 582180721 672862616 256932822 847492480 176587876 686598926 91444524 760214512 987820249 998802589 554566142 801009158 250239602 273801297 745510060 877724258 414887512 800966284 107991405 172117148 107099583 878511624 92286742 511713524 448608066 764431443 249072390 705546542 387357569 698900316 793897058 897827495 361762207 741786766 553518611 779790585 273096999 667642955 380140633 858431532 914087911 967695908 929715808 946894242 441438691 945128903 717433674 874754477 720654385 731050376 46945879 629384025 277687566 937882223 231849210 597832217 414121365 855831265 383522279 622566719 834901419 901082712 567028085 830789858 330537693 988404893 929431475 986246423 468437199 769977582 636371424 674063081 444499394 934388582 599519077 695542188 556218943 666583296 745923978 966186844 283846334 869915563 949019761 950572543 800757834 868664273 196735683 648712658 649389891 653210471 288388921 597584087 701832131 959032114 541566315 864538971 339731410 357498845 607790472 988073886 678931860 722587144 486911383 531401246 852875103 973839271 506992641 642900986 796202893 883276006 46137313 606083464 61927646 742992700 9950345 430982001 899826107 999092557 384116909 688003211 734214003 924427087 893199995 962236503 247870855 472964278 972157326 985292181 388160243 807187535 206475806 610291427 577430522 827449411 582726540 663470898 995309992 997851707 381530545 431621244 99688948 124288924 182390752 379313331 888459209 931472280 192904095 942624489 306949334 602588918 801022603 867882826 822087105 850351746 202073573 656031075 875467313 956072686 901548771 928328417 836232994 995955869 596813969 871892299 154119635 847874333 444629483 640963679 312175750 592596614 901909495 951588323 126149483 529770699 556972937 885718541 186568226 909089304 216101038 980551199 19612723 986029158 512697029 627390155 343929478 433069428 612597914 896187300 573321571 643095919 361386930 813269501 890660767 926028679 94862928 455383864 978439890 987683902 26524264 139605976 2580305 505532686 492659120 753377584 929804434 979404995 882352337 892520699 999019535 999704028 472264083 779503619 19786671 967540112 194363399 303843748 719964171 805955646 275809304 971423833 535973462 727793199 783105661 799995610 203429221 869751476 290630955 663521753 141552940 969178568 965351717 985921216 334511810 729160253 423503247 684139215 124260784 910452785 43998848 471271966 198154582 818224786 801201507 908322273 448448253 502102866 206566900 926633826 921877696 933114685 109618732 881218166 60570764 317456410 510499075 867503375 986112475 992838066 898744559 934934747 21047707 567908974 317923174 611812716 558853393 670232232 395752220 881532278 508018088 591096861 506401953 837077911 874679306 980161360 447645028 617543839 327809953 654486967 929375538 959948360 527368436 580558190 775866247 851895661 760145553 849434004 30254638 58612210 597209142 666202260 359403005 548233644 839492983 851760201 768687419 985081939 988457841 992625712 774635403 893210977 860509162 876224899 800410420 956871664 884132611 911923377 33893225 491275695 847449361 941447368 865645859 954158791 639802857 732735793 138783615 904210910 791728181 967488568 226400567 552840886 885804029 943513774 868627874 976514539 97196318 913833240 320012854 748399023 162112547 850512833 715817983 937139917 257203294 282542985 839388821 925123632 223990400 363743096 774657342 956318700 305855112 593187476 706950394 925474687 774164548 782666160 836165891 906748074 315947378 779442194 835121745 894501086 541683447 709339099 811642291 819562525 245138484 313393738 148114401 722782539 824053026 895435824 460427146 984864636 688671861 899383895 614106677 977520173 335288469 731707228 171487637 346237911 523935934 889184570 42561672 68005571 213857722 678395051 416641966 695794769 343032867 679516663 525832961 722488763 265334767 449077573 692816790 995032235 665653686 805175275 949723609 960796883 707795234 859818678 977405315 991631938 273468983 307993392 563062992 792354468 810599347 953579670 885632337 954716312 868753180 903189257 31731840 889695904 886182797 961123907 845861905 975236097 401234675 485848343 216330048 607178724 339821801 690333665 629258625 861479730 743372118 866398015 514042034 800333798 86188224 495399959 918218801 978885862 634140067 891528261 153038493 634166562 107194235 816256910 740015851 879593204 707019069 742854410 990859709 999796030 493980178 592326556 220860514 571405269 168830671 574940648 428710925 836870729 825997335 986250423 391098916 898392966 346831884 952045431 768905943 798221577 153630957 902841413 539447707 959671503 689518391 835411060 656779130 871757424 474205719 487169803 11820725 112656808 353703670 718417934 476566505 867260004 189730487 598215267 69362148 458760159 935926814 962900258 85668628 281865573 336604955 933671631 603236920 755343973 464302769 515482663 618195959 921644977 320544244 783670238 42323258 967450181 12082802 726041121 34355823 616921934 714268064 988086386 105995652 602911183 199402619 597950833 124874528 685951297 793083481 883091107 727003022 848744123 320380445 504509204 830350772 976104741 941210457 979170392 319973933 838639510 45610902 357764686 933038330 979708805 759380106 860886509 73714787 473670726 104292727 373671593 295855117 941457201 913715032 994372076 348920172 643136811 484723276 668580847 879817911 953511110 727541009 977810231 148902901 187660205 279323100 989278535 667485772 991413892 86291621 201025299 15616188 268021558 663112554 738234977 587574836 904889689 328969130 423414481 676735691 707377099 444249514 447740078 389346896 869427474 680201241 783252133 700418729 971362655 899909997 959760098 211512530 413011507 953649338 963777620 513667406 886628416 798948639 973680056 908000698 993097539 315640088 468104815 427416319 572006658 346851801 590604144 924337274 936744043 99313459 717404735 274817528 407144191 583040453 794580809 683655674 944735019 755822731 833977712 101412657 856121412 182787042 772016812 55290237 778535341 103422563 825566957 360078278 825836021 25079685 135846604 915056255 987388735 523378303 753328643 268928793 718268016 752488134 884824697 457189186 808883013 579437456 850622436 918956080 926798520 560730369 696733716 122616271 147229413 273752794 853700131 274759078 416669192 555534620 917890504 440954516 859910093 989485129 995630864 484144314 574904689 965232271 993973985 792870536 978896056 960060301 986440681 410782332 952635104 421282102 758914751 993434286 999616110 331182827 799483624 963025468 964257470 396116672 406862962 878949095 913752792 430671844 733274616 792390250 816524618 946157142 996499755 731904942 734294715 78160175 151192404 105582492 463654221 479322699 769621824 809657824 931087623 423588209 854789706 527050716 621932621 314516899 379996348 201371375 425000514 924838487 968404134 265220063 831493219 588761506 933708888 826496758 968073785 566031728 615157518 292210142 539744700 453478585 618470036 445067620 737276930 207760890 621088466 869398432 911737429 535461323 973265703 802215312 823496070 109904625 574197578 146592556 802920713 331901501 894234408 830625387 918080514 157829658 444416503 273959310 587346803 244789795 277621583 351043135 539887720 517444372 994211458 141719954 947147539 834608226 922369680 761774101 980448630 758174077 942449797 630931156 702618520 640156470 714994998 903499891 990232331 906688776 958459031 575605713 589191548 512219496 681652972 352362205 779280458 816412797 861710187 496118626 714556993 616121997 795978916 31786511 407780912 406516425 435651914 588273918 890093434 151818095 839307980 706242518 914159423 295522498 748541350 483706877 947474306 22527480 653432526 781966985 806355193 213485963 671506553 624753584 847887773 603731625 938998015 441296224 694020172 840893609 965511997 794664499 980811727 283895353 884775614 284461022 688849898 602387888 651268461 165614744 513544144 737788658 863871699 675710993 862030432 447312702 855114193 21742890 170029559 766028636 902146739 613563233 938940035 328188705 506012476 372137740 568827349 19110977 441581701 499714492 538198014 216676775 634977158 114928913 748684390 449892642 976593106 803105948 892728298 568577353 695003282 200579728 289537281 377075232 504255011 637151098 781066299 632572770 913339809 459958539 729541865 778382829 858249417 967939105 992028765 813684495 956902476 42907225 218771519 390603053 761151765 188355187 655514863 964508283 989464917 682092198 855460336 739155927 952259474 250488419 827874062 963532871 982390971 994583330 995152986 346184441 347621048 725281304 849123855 457246701 595511435 6635814 739504885 559999136 626896306 1607660 24914889 970568658 986943424 131572194 355269864 19067150 656707232 900120255 955710412 379766221 921217296 759130449 803370259 340917668 419584579 451540092 585131106 601359795 894941552 323166488 711152179 337131154 783376756 506913252 925487697 542895543 601449568 552501834 786594491 16807447 776973771 444833238 826017382 993016449 999669744 61505917 565045911 582199646 715843185 192130962 921055372 278762566 565967028 866198371 896651383 972217885 996431270 300535618 603546757 397124685 409759453 229779899 503265284 121805142 999890448 85076621 972966028 637530934 661550875 142090556 632938269 482347210 484110430 190096434 943778430 800360109 906198256 546577329 917000948 99560888 231802875 782596115 832084221 780956326 839628620 10377612 104867129 680515513 719448710 102085873 263387895 774740635 975039386 268548895 368997043 8345370 408374332 958633764 991615031 923248350 951884846 401985241 845834240 407398114 775179948 655279992 916061809 169450544 421473464 751342395 902745189 331854718 348976745 263415471 873823162 935455069 988831261 982225976 989483819 20269941 757478492 924516515 965904864 880673782 986080526 943058423 953128945 381397887 778703285 80714583 938535472 207205312 862189639 241572045 584472377 442970080 457632893 584693087 964589306 246599280 411320401 326412095 433750313 462540036 908879938 302546250 977297512 578118779 862766258 210673127 887392793 242560796 523610278 572390985 923693838 74028176 587562903 56694021 519218800 916202431 959837015 99245392 170512337 158233327 334569942 571695390 712813431 92404312 633715566 109553182 620516114 452298379 875241134 953422383 978460719 186048404 744224790 512673349 631226820 26054223 962907773 699175899 850217565 468756389 490295195 964318776 987962846 412756814 435960861 308993601 503825344 562566852 744501770 541359267 958742763 629306279 752269157 755328474 759133386 946425186 995541247 126911256 902587432 484596885 822842822 867779085 958922073 653172273 816904971 714514136 787764304 254444285 903934397 80190623 519004606 168842251 675665896 772245046 974086863 385725077 527474608 383761629 434626438 608173662 731598883 308066374 860886521 301091735 767711207 471377601 710832536 379729478 505175250 451701633 500989387 241902962 703480655 92849024 959725832 898380955 988781605 70726658 840869593 820540211 857732165 228145445 614664594 918249244 973984626 222404310 240378267 937483227 960955732 945433494 956881900 211271313 806138665 633454153 990082486 975160287 995494406 455774054 613077003 532817015 656612336 424063682 937353122 825715959 850238768 89315268 796114667 798768853 804060058 13909088 979868623 737362685 899550427 481170304 995893896 355066441 671970442 187101639 230570315 234909081 857609234 16052468 614208447 967058041 969029323 105198001 117351353 332545581 582028145 272041923 499353200 659912747 715613969 416240221 527716356 809982466 821549199 49375471 543697570 811396075 917543301 284975015 675296323 211052065 906331876 401403957 546641966 843972366 970554591 250833743 905694525 148025715 924018129 214829857 660053767 444632973 649832363 190628366 386683239 797717046 964554282 655438292 959602940 552558069 660891210 797740963 944179072 510095563 701981359 334855152 404324643 572049408 772265640 141531542 830160009 251353027 936322034 66006169 964858004 308471922 406539350 592792262 836216008 147820164 430480724 650595721 977902822 538835476 851665195 118898296 469962589 49227045 660509434 680205356 733773100 214345638 642899969 818441640 978413803 394915984 395822254 50159993 991905455 694337158 941608750 419195000 601902492 833958565 945322137 52238798 836014589 195613617 533751572 242426953 250308450 359510388 550279929 802677745 858751020 785748888 981171711 43143792 834978699 835770456 966825516 407390470 662026710 416318026 445553944 575883625 648329349 316652890 712390605 853489199 988620265 891264909 997680487 822138142 872058721 351265025 874331385 487114016 637677212 175698043 768583144 933030594 993050871 327919591 890803642 713903303 809428864 599886775 829590706 734432988 972997171 447946145 993978357 291078583 873451640 91645492 503392574 421948133 819604464 645973879 742195379 990161892 999064453 760555341 845807224 795520680 991441412 488911592 631233109 567468955 842733414 275625721 297736586 457841798 634999114 935945440 946470146 733252828 812753532 787317684 986382741 724271207 913545355 476124947 744600038 85527085 498250334 340806678 853645183 294705675 997174830 109342833 442322528 279695637 648383379 383681202 613729004 474297895 934670783 230768409 789533808 876144247 956607501 877243801 934034055 463154638 891139252 856343716 908633124 108737685 289327997 139398865 311862319 340254642 895940200 19792546 645372195 42584508 791910641 931456820 998201456 588471033 897321373 68058110 855463981 982910390 983124188 30189252 652850364 586157805 816305524 596081153 976377485 113163396 394982521 408177114 934969828 392911981 552409331 526460976 604345235 258850535 478483282 481250733 850048441 797869038 812703352 970759636 983911115 7050800 871943480 12039132 819625074 40948511 313385572 521476701 954787030 834968875 972417934 589012643 825360278 239157953 983069997 731222800 817364769 275935344 873664654 864318440 883357061 632175865 707849740 903778020 910916246 962458913 997455015 34780785 863754716 373746671 682693020 640340880 715192170 866745665 966554560 871326817 930793881 198813171 385243490 946805418 999413314 400451156 462050925 386651172 909486238 524842135 721072914 504420737 560161501 165303582 720411187 355443718 732704203 466264944 635522605 774678305 810533192 465291681 765328236 916700778 994758651 97190975 843008674 607731703 752838172 427133971 913662122 632488293 705176762 918991723 998082440 422801048 922106661 336860327 589120283 741098350 799123650 414583654 854727764 465233040 565071785 655648530 928643616 260499349 331858084 353922207 941447710 645980053 872649821 134387209 900607282 664105548 721804061 928042067 934029115 718560349 894736210 303289197 791735607 762966871 937588993 718421075 890263467 15595916 980885100 258780207 867567242 821365964 997813467 555585860 574049239 911550584 942723922 795605611 885648579 509048345 872652858 231138871 889988310 618755702 692711581 352823573 848562123 303092949 986574505 44865567 160542810 222964361 350843395 189198554 907935753 286548744 629383567 68880254 91916861 852396705 950053203 979960067 997496183 145912276 727156436 416207823 487250829 80127720 382382406 235357806 385783836 401873270 407288340 507062193 568868483 985992426 991970852 134297353 832276067 400508715 832048178 93606017 170773754 467063784 551624916 529488076 991263677 706587629 824758853 970184398 972048783 717604862 945277708 421020878 942641768 400418819 564365151 473579547 498158316 292415686 554858089 119826292 824718677 946127890 959734370 550782510 696182721 181259311 497894523 336100672 930564046 468058566 880706190 495630470 709175767 348731542 498070414 133637854 520666887 808257933 865212434 752532222 980948649 506433265 822982069 32319775 794329098 928793832 959265229 178767494 525071476 993627194 997131309 750039975 889456971 247954651 816949557 729779606 931417684 818153398 875188771 411692324 864208247 88943702 215630715 85794531 420348120 765965014 973513729 253387276 253621023 976655012 984050573 327715141 720446144 256449687 594483282 157859680 252111875 649588449 774152037 580606290 995291921 747417027 852113728 454353414 913702728 796328551 891775659 497330732 787824904 7226411 438402568 421989370 824564128 647448009 899553727 158345432 547339042 802156658 848280400 131622560 976999037 173118593 819327338 63539987 963422612 534209157 831506950 164114622 517651497 213263977 723724748 323870680 850163834 38890656 240583976 989792001 990656139 968214289 983808952 33924705 680919088 460847105 730015179 776515201 800493423 243423699 941214518 408667427 632040434 126038937 637938709 65342803 964009887 860379520 947883105 221985086 264699957 693552546 979188573 761470903 894079886 368906087 971903316 915081046 993296535 481602685 948572789 746253504 889178582 418597268 502158159 844332924 972585439 26262263 101372176 359187690 364267175 172338077 508686535 15359003 547797789 602215447 938869233 774124743 856903088 356207279 473631661 194582424 258026580 789890072 876928502 591486291 959681967 782112566 985772621 185830719 589435356 268669670 505010199 875384824 932774244 661388578 957623689 269144242 470598968 366089859 899365420 953700837 985838594 878844085 942565149 715897873 845112342 648450044 742894600 122293654 527745284 176952946 353954841 404868162 406884724 769341109 858300792 979837506 992546913 221921564 682659039 355998352 923928053 560446959 918717419 222733713 696618302 676466705 891717234 82712754 588410916 338992762 753775892 129657252 366066988 365836040 424972510 557407739 806987709 430370991 673611463 595757889 739393495 615384363 804272809 598451615 896642371 84188315 812092742 878248283 929603933 396426081 641200488 157628292 573978563 562058543 844906142 632800375 727559225 678759159 997158591 752871413 936421523 770518277 772135591 762381635 764975181 405346391 843678667 7804007 599808149 387681236 605692360 321002201 548663494 288997769 973971614 16063285 918058316 661193685 883960959 934290029 989056843 182903428 779985883 268565283 669875062 141780270 851046231 257478426 869725270 730608637 944173424 942213203 946202133 95274368 960756473 274264712 717653066 704228273 808735956 642434304 793997096 572443585 810389799 102410820 716355393 234322222 896068754 137454057 621798300 516537380 717598599 597380162 614407436 610361485 680616134 659786522 919472915 899449366 970147991 816562564 997520426 228596735 326407045 74929071 891241038 903561292 960935105 944500438 995103615 607134150 747849866 783312050 802549546 870853928 904987674 891078722 979131648 405969247 790273861 788927958 958984153 914773648 936369961 727177525 780419812 307317668 687200580 80088273 698789318 337873818 974365064 703409817 800201221 660646738 998664207 435392915 534977923 357189980 991143681 385775403 471840609 544421924 573301578 455612310 550154561 736805413 803554607 29789830 784870070 393917862 908253356 782297431 897709983 648371959 840433519 211732052 319951745 862783113 885437823 294395847 957209662 525044584 885069920 115433996 288449346 714898925 958548997 124811789 862313875 940302991 978840125 846591932 937843559 967072641 989281605 240275424 417449569 948931168 965424412 807394179 875481057 347930345 568812597 731262798 904594600 840618572 881099214 483988738 563966581 276223335 345319879 276592300 851337631 490294085 498015225 398089603 740623844 178470423 377192519 603997335 701385206 515008614 546129188 63139356 268895114 585485466 992816831 3959084 644583391 524589491 705154335 72960087 473673864 168370466 456371267 655834841 830744182 591222355 800093759 868955514 991437772 755580263 819644944 651306864 734253770 567119849 984705669 5057462 171041278 219900397 341882411 221493833 988138320 636735131 884623475 511753848 581312194 152879832 417127321 980165333 989457533 446275941 571961201 705882792 818824176 771231758 841274489 749833485 940414137 366164134 851578928 318436386 607652567 786395452 858832328 585919634 904164125 298628564 955250256 152972528 950511030 213870654 730647702 939267832 996038240 74968551 150101356 473400452 881573730 21131148 704798793 541532113 958678451 346773918 697505431 484607065 994349327 769491416 824872557 264382219 885249123 8685016 932856116 945712888 983370691 357592736 725366877 9868553 137211022 21736928 347889097 160228229 177296618 513076700 917367601 777972192 986372654 860496071 970679375 232061693 699837865 492355902 730201563 476389765 527027360 893449236 922679681 425175558 493515633 603067186 896966848 807335418 812075881 587335582 650751622 76448206 895495519 44028205 583340135 688239555 727208579 808213265 864274243 765486944 883225286 97422393 478526309 139184001 591140011 913859641 926792677 992192869 993299458 286772020 988374075 241509428 835355331 620054746 629069878 868292576 892354641 302582194 684802427 380886536 920264040 756620532 991314384 318186124 373136779 268373828 450544844 837995859 926775746 119076862 858299882 671211878 925756929 507825014 897262796 538293955 891021809 851322404 965378153 563298244 581573267 811367676 981095661 991194136 994069485 429580119 938366330 697002880 970097559 756466953 955390412 69149080 271311564 975968209 981075226 843101477 927188611 289626712 936223994 367707763 682510941 501059502 680461566 3909050 420437073 22133029 567349173 107048437 531217542 309081990 567175565 382282116 913785113 594246414 918497270 658914500 876963663 40991185 550920331 757558628 797708042 158862327 188317843 891175732 941189310 225858495 901608731 822976458 830639367 220558124 734068823 117065166 319594799 227922532 859069758 965186708 974751162 845126265 849304035 208403845 392180313 684500214 725959246 899023069 980296440 769261130 881698647 156133603 303295069 402618836 507666413 234849353 764325053 714249242 922307170 613036211 891515220 455974876 647216636 207018667 265314485 149417395 499492495 342535058 366430582 975831649 998783599 291894234 432105513 432223248 674359959 350467246 576967799 638027664 867049191 154164578 621314468 128752903 155766744 853573263 891143024 832596546 944835794 845574336 947843882 606524776 857426411 861803847 935731498 492408879 999406844 622267558 847062983 475003806 904195295 508085994 609044122 512396734 732577170 926772514 954732121 345256939 378291861 896563657 957434132 962571899 966011980 146055440 637621378 24273357 872155098 22707861 970258288 443194387 517884740 480679043 996346092 763661449 826612359 373373270 491258082 615476950 941945582 382591189 416879489 685619831 769740501 317346935 603026304 123889969 172177006 60764049 121764636 949749540 997603258 59483243 830797254 581722797 713080380 967003827 984849317 911660868 970190803 621981315 787529319 518870314 737758008 297272987 875842335 607592755 897757421 362430507 482049433 663710296 677781321 146845454 448401449 258564333 785703773 142501655 791875244 154948227 499359861 276560824 413200561 401516856 823099119 336714861 585876084 251601646 339457239 371755234 642856335 360262003 571037852 748260054 951200198 390640218 906612471 689635680 969828294 599471731 703922858 760009098 980794848 360865230 745397734 359463926 554290080 62986023 907863858 325544344 831184290 969745356 982234648 310335741 646514580 284039655 945326500 701821227 712423121 49644299 751102175 348654466 571412926 628534261 767478580 263342682 361075175 590088125 980681392 610998064 633741683 314427394 885911730 900662176 942367091 277936303 866146432 204618810 916747525 635511260 923546847 261115010 716431375 338040382 630035375 178307788 825692789 439869539 641833322 583329139 607575546 6093610 446898663 188893475 651448068 961336192 996147120 579777721 634373646 372575567 654983386 964312343 991996839 943846746 949224300 211645069 375904948 867615919 922851974 442389294 505594797 606767596 958139277 627959826 916291169 474429523 831235579 945097920 968103700 34700289 172124917 250603770 487742653 119576418 699788782 218826849 569263906 366992259 767290105 84337495 943344271 981407661 985095877 779551318 931506606 345448005 366613566 774595498 909025501 9352459 331463171 919374144 945821279 868521917 907894521 692454728 986869841 907373050 921960504 765850687 806334803 114390336 422377299 661217781 857743924 134523922 527650189 460463783 904876907 456298117 594061541 16140956 207020315 702501897 732518792 626018961 644143430 994285667 995696388 974745527 983599216 605550484 872262703 890636701 935679340 671488723 787768969 912847361 979983722 924242432 931601942 712627494 885723283 756661577 799157170 164257955 217648814 637115813 957420838 131973518 995263168 45447075 247140339 935174327 947699556 41071975 49746446 369754956 775094371 982484964 991229344 728386799 862270886 548580560 980132320 22063747 623298150 699048131 710742944 434255339 943127295 407299613 812010261 878504320 982526194 428416741 969991749 420052964 561422577 678315032 932823285 402330573 907856385 476536758 899035549 134598724 268652843 960452867 960754642 140286260 570520962 114720415 570501146 331373734 803434850 610796474 846401553 44365109 696997623 386564057 821870171 103745101 739415969 851882601 857013981 639846948 870180859 75225475 357506077 724314768 998056368 847561802 848014507 180978805 964846065 798449430 817214632 8157748 75301922 726087700 842974810 807241770 939125255 542018464 985048874 784228855 872135842 55659625 412690373 42319327 663167456 346984790 602445537 633535704 807150086 527639015 617042500 7185234 356514418 864458939 875018952 129231516 987083071 938771286 940140636 598101684 668554554 64038810 787533365 258224256 947808111 91075898 159367853 109318638 215009523 697875837 987900562 52546185 679600721 65980066 566292520 165196589 682871521 756449491 892134938 452022732 802411457 903420265 949651211 884990841 991335945 741507119 945455948 401080933 583060713 301099532 449302949 577604502 969711972 136043719 875854911 415233907 774013097 141889117 654806645 39860073 347324686 90307068 363845276 547816605 850649114 680682755 858328735 48475455 914704899 127152486 900459930 882015095 895382115 292924659 466568574 788139756 934523029 509173044 844129466 63219525 434490103 397419460 938950538 700036445 704681586 615860181 620160988 430317235 437239965 671332880 832501574 969095073 994584937 51999784 415271956 37837117 255805499 159608139 934229227 301981417 691714951 820243211 938025554 384809694 997487970 759086442 861544509 65022290 593665215 605251177 788816906 942328087 993352856 235592691 531720350 777240093 924016630 208521665 792742943 748469599 833362994 643886693 778011678 770944364 851756154 683896118 766279847 93033221 266230875 182621365 219498875 219601084 242699364 859197019 862476744 798849812 954635576 273660708 296493736 746446958 782261696 564058762 615258768 195380090 335159331 120419428 774651811 647027042 973923871 480901739 499623446 669337140 687198206 600137094 659250508 633375641 671172310 128527260 483611854 338522345 991957143 85313306 582149961 590075241 663251534 854071521 971914634 879364449 988129395 734728473 874274472 353068620 645706485 525787883 724204030 406120476 987058437 184964738 416685939 165262150 963536194 663673637 749837937 556319352 837050773 438488500 837286867 860924474 997217140 380637898 442727849 231539804 396801703 584509228 777092089 578391739 711390731 478517530 687162645 283936040 992885219 848834732 954298302 87361698 422476945 414449271 514562129 303645735 527266229 591951622 834848698 935955668 978193915 193355357 674547399 329444533 581626950 135768373 652465767 877069149 989420050 225190316 663126462 611243193 891599760 519903131 725638437 363398468 491314682 297195490 632224839 419633306 979264967 907968594 959693440 723416367 912535685 271355195 814256017 188671906 945336815 77990975 320951891 556687355 761427716 976051889 980049394 665577382 735789817 458946117 731482015 38252127 200607865 44501294 291217467 179153095 883622093 960058147 992756627 233867526 472791412 346959208 816063868 543882451 774028730 192044164 325071984 702336134 732457770 793482002 947472332 146242115 704326500 457970520 683729197 888740183 900374926 58004268 626925233 412061393 989424936 102833594 822979333 170439384 243791720 178123791 833574280 195633655 540054231 868205217 899030672 519328472 867358011 538773687 873572808 771767746 873738643 991947694 999579307 829455293 839916485 869799701 890846396 72268692 76655222 908514513 954688413 227143501 656951976 767817364 876324221 538441011 711326192 345416278 802397770 258785527 774572785 834375494 996021567 569431014 942602672 723004606 726890424 436807457 918943326 953170118 989533677 401644596 707639015 434576573 845452195 660092416 824658843 210912676 978062340 49530217 97468713 502394920 537187994 275618273 681896610 339518734 447034183 579046850 631106411 996280479 998480366 468397099 535068959 580608697 778858992 76940675 960278633 146458837 548461919 561507474 708578905 443351012 640492506 901285485 974803347 871184334 970754431 96536855 612924999 147126922 709278910 420591339 474043567 353959553 820142244 380054197 542811899 733302090 896432768 396644281 578466136 919799869 982444077 685077241 873592069 872023071 888507881 606808310 713169633 65241037 349860393 406837554 918147319 798543198 905349787 780414405 981110306 109382751 234186509 255005155 372534761 949655579 952427602 199048630 343108089 801678819 991920480 511304824 881316208 680843039 813801194 423990721 651176664 144965451 424633546 483376089 666061741 317420267 892807328 397690005 625982396 763231950 773017159 661017763 915130727 32979638 876271533 808883917 969898968 729583865 751616597 785583174 887849468 715624596 801479259 106347145 374181917 977749589 981700519 170164808 206308854 432947404 500361523 688352725 964279120 793747456 971329123 36003487 174871218 837489711 893699959 347752199 578136100 537465086 582814275 85950523 573646768 452905984 929167257 894091579 923979669 270482684 702809082 255813680 306156792 758380381 961298588 682751455 986089828 610213692 666375785 428787297 910729678 777753066 911534766 571388277 647531123 118107342 195459622 418927691 469601844 645855004 865844657 951576818 978559295 898727270 977004664 833419603 988135495 996755181 999854723 883953380 981094252 348133770 769135717 341611282 996149030 804749560 817373670 824270566 921158392 289449485 462758890 151325259 403390132 854896840 915830507 737440189 866493927 102263001 705540863 380684783 757190235 702619603 864993315 599462569 809198627 378209063 965241769 150578938 271271776 410482989 664527000 209538257 862486141 736070540 903698624 242687774 571787351 812153466 950573436 832268009 911729264 358607144 402914465 28510116 549741887 139464942 483628785 208444921 520651532 205343294 374989414 324393006 942675513 554585255 707971677 841309454 849511435 927617950 975494879 39066027 301960736 924594989 987090957 404637698 613794707 736883146 999180198 632461774 947399044 458083998 646511206 491982556 615309795 467179589 685361661 62007071 905729708 531141690 735503169 513169153 816436310 135907863 725023745 832317074 908760691 621489189 978970614 737238430 825284093 214014651 715866391 419242033 850045795 417211932 732340488 168612765 562767217 807302800 993363966 434193499 839887582 306505203 852062636 965843513 997657846 621168565 749837551 862615237 930225961 547431632 550295414 503804655 620150114 199882973 960284534 284782528 287663789 52686259 805988744 778028177 907061776 671598121 734465575 269184963 311492504 97653948 387720096 384745668 910888180 427049611 871192658 735706492 837299689 253272004 981135779 446769164 654691188 58792914 342141553 721523639 734365009 362150604 463224355 137168042 193472113 122112549 780268404 848339296 891757487 633391896 726021740 832050751 946898143 188504984 338983841 209241642 700557592 374164588 815174430 105052295 869245676 242167442 399523546 982392909 985403564 402584685 727945142 226167083 733092450 639094536 678158555 19112313 595007918 517103268 924081492 772198013 949730805 696821471 853073593 751159899 953196602 561819487 733691362 555606201 942148844 791319617 914406086 673022608 838419235 21383462 548458343 47541325 980177568 915667682 933557251 349186511 606031639 109821454 775164530 143003019 641930577 804085335 901038169 275035577 425299411 393859850 826613689 929521593 966316816 570868314 913445843 539357971 969148019 899018077 943772290 689239320 807671065 454483517 615135153 75019208 756666319 513731216 838982913 608177220 648127908 908249584 982543623 416108417 488239211 523361864 815023352 739116569 823637127 983484432 984196646 426398176 670225052 677304657 846553502 108541661 367250779 494261709 982052559 591812385 890597942 194431078 838379340 511948802 588171805 8859941 492519902 544857779 953688820 335866673 592973015 49903186 402537375 820552753 893216092 123734710 466460928 156131702 721550315 419684030 786223292 378632393 681341946 170833301 959301966 62153096 896804929 890885886 894278768 560854628 674995232 586098286 837345075 642810396 777581793 202081324 996810112 97813276 764423727 635668261 823925668 435107739 660073991 535966866 880906207 105280397 759312294 882364670 890046649 372029924 715024606 149644735 840671551 281030156 607399254 605580713 898429260 51629855 906291710 990933279 998127529 134979272 323257930 475855270 538067435 383910925 386005887 388084136 867391591 801616316 971948943 792862793 927404752 706785445 890718098 906255051 951105981 149800594 735810233 952969936 991429597 950472790 987802735 670555981 778361484 654429526 702157199 325237939 732588526 792730994 850497840 237908588 583586136 458849201 536043586 588092927 872105468 170263826 615345315 816764555 855994023 146403879 566048970 755011477 772175424 993606033 998681057 431342033 658799146 634571621 824642794 603519453 939621707 863199186 918696379 369265490 495161337 575630963 885675792 761512904 941002810 118945742 604955113 214893996 527690551 665769442 745665644 315032515 476628443 637884222 718985896 305484330 536295535 353831747 368334246 489404326 847661317 91824389 923354117 930394860 938546494 24792425 669148387 627576362 869320601 508271194 545927452 21605964 280074176 192369858 515130392 271303595 908836763 796982589 942772459 647032362 949066671 242185599 473809386 274271931 804320554 823682545 835794688 297593431 538580495 525209533 813832501 942192730 948928400 19021817 631280907 96710864 782863872 739710206 909097789 415331164 547273510 994129504 994348959 154929704 466825422 458606681 822407526 369714407 382863594 905743910 940670710 791746835 817415584 950505898 984823054 918650732 947424317 377193251 949688500 668009332 841149511 777562861 780270860 595107172 980353622 541139468 911898582 186540740 347351563 618554781 756352796 412207455 629913246 370624084 998658171 634262749 678396924 555046586 723582815 961782425 974699232 126630650 327474046 580375075 727574948 455761579 567940802 84648743 382119159 198676176 765048841 731577597 807357893 410995150 479866229 18613138 898204345 848934667 965163674 710917588 804899372 768661508 990137753 337678800 456476757 125057652 758778371 113992126 865527148 893224659 956061330 423748588 467684373 813217426 990176292 519927105 547375762 22112913 249210990 835833699 868903943 646967320 931498859 388894988 611124565 824604902 973876718 283011703 332447193 914753500 970366240 812113918 863182224 441364247 473863266 527702345 853907429 480539237 638977478 305720127 957731373 155911625 268731886 92289223 630329140 851569100 871978022 62388225 198882204 510557455 573155569 932638059 991681861 616367556 867346959 887371291 994642705 599684769 878715410 61996856 582862018 854850379 913508777 991216511 993121712 500661485 875268595 663692439 859452621 531526581 681165440 202959505 601660447 780663924 858409408 438777036 537243045 273079525 977307150 171594722 746838404 851913998 927142870 578936527 724376120 774492646 798487948 525016692 994356143 596620548 629494465 956831606 986684927 600958927 980874205 172001368 480080641 104163076 400768464 248108241 941850230 382648860 990489965 401044325 697871431 819274694 888484562 332632297 873233770 640072953 677658982 440906913 718296122 775197180 945612340 531390361 560622249 127604352 498909359 551973267 835059065 502939454 924858412 586096720 767911826 536648860 829542125 442223437 663322857 518302852 700919416 852672731 905621039 515546825 590627027 104768166 563095903 547522154 894249990 572832783 720631309 569285745 605121092 54127064 869311086 885801535 933554564 812313979 841477925 671715602 691101998 794677774 876969065 365954874 763616978 747013777 801274550 69244232 310615494 673459515 921623295 913592381 934549207 77923406 875810267 177570527 300255399 372462463 408058090 913414217 971246688 675511442 971083341 811671632 818787166 490248576 933518862 962316147 993967610 303518384 370526292 66379011 953204346 414040551 775243052 822062404 975244023 983952673 989618651 623789393 651443790 371542554 619160482 546227859 790873758 999885182 999888172 786710169 865226814 247482436 280865557 474516200 521987225 735870502 804366139 280573783 789600555 964812013 998859631 883601882 970507752 534496623 678462444 825337306 869772384 478062754 552917568 300686791 354188501 411374242 643756873 139435546 141304740 369864215 822510857 25160458 170670297 648087614 770415646 50095797 772273324 867791119 879233885 307399906 591364508 703835960 861372746 920928465 986258700 382718281 919433334 433281502 804981921 310642667 955394228 506111641 547637588 754446179 849683381 358747886 368780538 977561664 987004094 669089308 824440736 604709969 918810114 983343512 991508356 506694552 552638713 150659590 698547125 415367357 786118262 874145016 984828168 643248498 890320347 207546517 914544552 263319695 788254970 595297844 881413679 506089079 758901830 270349313 520697492 150988245 745482284 641205661 868275534 544240246 731129765 872369651 977833201 348476739 854750297 964926105 968201329 412183054 529490571 151530293 808172192 936353413 972092905 231454429 318394040 509127632 854961084 156182550 294666722 165314190 826017969 193528297 682386727 922959604 995102339 907394995 994444496 942780296 982316826 883294004 910859234 465553467 722258188 510840611 912250134 234373377 334157248 206829614 680131014 887976506 994246526 473471293 944735824 507109794 586098366 317194998 447954623 547372853 687949061 421758310 989614490 168421572 192667620 608094144 724020504 480826963 505110726 801213571 988749116 212335741 252303172 776064429 988433578 985993155 996154290 671125450 974331602 574806994 893728953 700004528 734969490 764809138 964575897 624101640 681152076 350505283 541922158 320104722 594342519 655728097 799675966 410782744 958167001 774006111 790746494 682603057 956267002 582965164 966170009 881428466 986639923 850686600 854753264 93814628 260471892 473797162 563650134 57092059 64646921 776339719 836024734 826153284 904627087 654250750 695528277 620475211 903764737 337685007 878827886 651545447 950940640 195700500 971221341 573088167 822471353 845705366 846110249 459352956 682776734 679490028 966531332 580607329 715380662 361772114 573378554 489166749 961657003 704752045 928106326 229591339 749751817 106815114 189547363 790087027 805684367 218684999 620507421 347496952 413071452 412897224 910078528 404931992 970261882 231323834 565625147 569491050 906689459 638231472 920595012 615660094 906765000 508063516 526343938 843851882 956281431 961041462 980996603 727047579 784918313 962260537 968232491 448281781 497882351 733551301 895019101 652372615 732100876 825207312 878284890 652366757 654474993 169562638 964128035 299216627 561538139 821199297 843685493 994364793 999985452 288132576 717062284 967512976 972284981 794497190 820048295 83601362 552728176 681039257 828484990 956304395 962376226 682105388 923724720 362665394 850919570 222171735 922681382 90335862 937676024 608245801 614715561 753409276 871181930 337817383 385520374 307422039 808549753 844023838 949563314 361969470 610509342 638174704 869748796 826025846 832377625 683954885 821677555 784947159 785212455 683683499 892294792 939795377 964040102 603714532 899321976 485450818 924003327 137928622 446199185 525335902 544790450 509363950 520688168 830688298 898888836 707061321 966560358 90698537 829943850 860475364 967673646 791261560 894511575 216907857 630799206 896879741 973005813 764198003 853957963 666494577 837038911 214724020 729342199 965842402 995853073 501582446 965787533 279011747 627815653 664082470 677190838 826396609 997514367 240692309 363652152 403487346 752722572 764312167 818995374 535510082 654861061 812172591 885537808 884609582 930172647 144036325 784329348 796081705 962682271 455282038 891357634 28074163 186468768 243235273 452803790 134696783 158705537 909078785 923908904 897733201 921911429 359004998 719986224 283475375 429558692 965300567 997285593 335831659 920424145 660365886 667231614 723500455 911889849 689891402 921597794 715981822 928871095 518809219 998409725 340466109 401651669 632599566 933556794 246838197 752878088 93137342 417440030 128839079 310128019 651726229 696821696 656121394 671916933 575744331 808243014 5144117 7475402 887215429 903932698 573109239 637799362 628212871 924225032 328061426 345976150 698298241 854034963 707044304 724088053 890563237 983579617 220102121 984769521 631282536 821302183 165089956 222956665 265150764 759601054 889704327 898693944 623307968 929402812 715591974 813601438 169970150 857733396 796063122 905504583 534747642 993365881 654106740 665132804 144585856 654860065 24816357 95085403 623975512 775322315 263933725 910978464 215659022 543403602 911396241 927785213 560226281 782192006 889600442 917774893 536268632 855661624 11622902 780833510 908621588 910776722 653262177 803879562 193366890 579241759 402233945 739381402 899514607 901151265 603788699 857561255 82291431 898028497 394559556 697652472 39718404 711028968 178114013 403497438 614952101 741495749 494332990 986518837 971769748 973501090 396012576 512384249 646758646 876921839 108382357 638646044 162774090 794151225 915464432 971175837 198518991 604061534 654777282 830563378 438589353 878353936 59114545 347266095 196543007 847217129 922740914 950660957 415805389 716295769 200038952 244483373 582020526 924981644 296702701 419411315 797674879 915654444 127557980 538116863 670043229 959393714 97501550 210833852 551069198 771898604 692858150 923380678 495929630 529250698 532212293 607958023 374920741 836985126 333769339 867727004 679545372 871868909 664796734 831117854 289505926 919062716 75692042 101184345 701963834 812932698 607251331 992594180 665904212 941209277 86424280 804357735 566770497 574337002 675818214 959166728 592467323 761261496 152004244 665020239 870281775 923960009 916772212 926134037 700869408 896530310 693913043 783299596 375290465 831875823 318064173 405520968 373464881 913122731 310476651 436296499 414255020 502793602 584615749 667322570 705382243 947326732 879070771 955806360 654351238 751927664 597393779 768283216 945719714 959708310 749921298 827204133 336880790 855055664 161041485 908247528 376275110 500018908 63048635 583268127 133574595 183346111 60531784 653371305 112185732 889650326 796548326 863003196 629041905 756541586 762458768 856434577 861990651 891739170 731346744 885319289 339296126 457171584 206513960 640835537 22309006 802342360 513891427 786165779 457697211 845812223 280864184 642240608 966620375 996563930 200821660 692765501 569554429 939281255 790279664 873829312 566610955 849500084 438888230 987301704 518063970 656943716 351092928 806136527 628825558 687272259 609651048 719787398 593355141 626952454 513015453 669615666 892824974 977122386 104109027 756531013 272461200 924330335 160300463 409643125 556332391 698893880 968239619 991052710 923559077 963027996 4282333 368193201 205162841 784865862 941408741 973872123 349334155 775437559 386415080 584898220 606411842 953477097 939645713 946973710 404238121 962937573 43182142 445013078 844726281 897353852 55757029 864345518 45487572 568882340 620522995 804076821 910566138 922076468 827830398 886849728 543273081 623040013 268896470 723665974 676038950 882760999 82160051 427546572 522658678 951036283 874737165 923353708 772990863 908747695 541527491 646877315 574481913 582261421 86480270 668777928 48674031 300760409 17146559 859472264 681497184 876508379 490384982 923846969 493769828 578381824 738254718 838932303 719759200 807900549 219512191 752381317 552488257 610524609 299036831 933567599 452982492 657244668 886908884 966102226 340241461 949591982 627204601 815418697 483128191 717654643 71246272 874458365 428046088 580725544 691880775 723057267 798794452 854027301 559705049 664687868 824142250 945127654 708925734 890314579 567761341 955414124 979431378 996408627 22705508 741309707 449526593 747540901 11671460 121390664 643026413 733142233 385716263 685349662 467658722 567051941 373490107 700626193 796161729 814504807 587046937 634120625 576461879 701160519 640442618 691522029 276159607 447350678 428572997 484358205 380579223 876834861 431771777 914810541 969823153 979369281 354558190 674673780 900578196 947875121 84470704 594201379 783706724 896826781 611294525 748021601 945677737 978021034 236848795 861331262 431560026 801465886 921222309 984085484 877229149 926940600 851300484 971163268 666007323 793559674 439153322 588219173 776384984 994540101 391062034 856748676 646685673 841982684 990880482 996801161 185925603 429046407 976027715 991875586 148701554 947073271 549053441 625448006 412963268 447020722 325789464 494322801 763214825 814887648 365864485 821455834 670945217 785653575 779118618 826110608 158982927 505924588 121272940 216155915 60111119 328276119 906868482 925846853 698333974 851523981 288739424 416958555 545876965 677140551 266325508 670770173 839145034 877210913 304303574 581790566 240480138 971101755 511917708 756133518 342546142 809821913 684041265 905453858 183789329 625717133 788096595 805307732 411193370 915645818 244907695 550587119 781658315 809999931 16688280 914379676 383613489 823646843 703985981 759390008 724326524 759989090 846070061 924338259 13894193 885723332 626003001 752217211 130233404 766879323 678366959 974410682 938815257 940327246 349091899 699440272 854275176 871992226 251989963 487770030 157156114 484464742 428862974 573766852 838913795 912532744 19788493 532736592 629922478 700053803 145090409 975049402 813042266 971350870 263953246 938650645 956960039 981716038 647323538 965221604 461340455 483420351 702534247 774607445 822800713 996112453 831264764 909071875 706210738 770840463 321342627 979271157 208135986 354478657 624488399 843996921 446277786 781486605 600541595 902669761 747995193 892533164 914590803 945154885 220667264 876008105 250935843 625259531 761857634 892927926 332465321 741113088 554867118 641219547 446872669 732853238 106079668 984504986 646066000 814711775 80450279 630627621 51992139 966023344 700184786 879759150 70334758 402573786 54247789 353587187 241748653 278556434 641118029 881511875 73812560 742337784 369035223 916891138 607140640 960677517 859537417 929380166 428822598 943649381 479823172 835660560 997377556 997900033 40998612 352068892 573709522 888474261 217795915 357791700 930179415 998269611 857108677 993350415 256362466 429242179 360773958 382414122 505533359 800031870 307686117 923491061 339161851 735976232 147288237 981170411 118687761 547211438 892577163 938910454 312115978 960257040 183029448 694249148 470411393 896103782 434706389 609604359 931428020 964983944 158209485 664287000 190838810 808813021 21889622 507856079 25268748 461120579 988509247 990445429 84295634 841896104 495955857 500677887 523501630 592681051 915037372 971906252 185054217 700186465 425153993 914706066 138813952 749776409 517549681 900862750 954841233 988886508 579346460 751583558 963715090 971140797 810771651 923517988 161599925 559757753 906461327 956717679 515443794 568690616 771141787 970130455 149786677 420312568 582946842 951003615 9336832 881942234 647051243 824097914 623725851 739252895 229496383 334210822 16865198 600566274 616511897 866001392 456817866 797873117 265912128 459719718 653426788 860622044 503869640 597325653 507091222 852871538 835548426 957399922 607478368 991598359 284809227 446487716 358418129 867940514 684012596 691359551 63324584 670996377 429496664 554626342 432717911 867769703 272579457 305450258 461098796 822347964 628360250 960426806 632854246 710139398 700542702 989068326 446887605 801646564 522162717 583429104 67182650 392888464 417856911 987325939 298731919 766861237 533186390 823621147 884426431 952857481 228964440 636583650 9575482 217761439 528281826 711065462 632727069 687836307 12256485 812474216 415240504 909095957 225999794 892200697 284182371 723974033 588587756 603115837 576033127 866492454 437739995 933524295 980343496 995360392 207131206 721170402 211574005 518549770 857745544 918516573 628827126 732162206 406443526 880148472 991590031 996257865 953599723 967795142 617312389 947801607 130847486 438426983 184567230 579267635 783721512 977054900 61429599 595143796 175550254 774248060 484917263 788193852 785953210 927413802 714877564 811920056 40030156 68029222 61326219 725215474 779047722 980546944 164030834 593606791 896720778 961980179 937144930 988350138 785613996 996689799 360884276 420842442 350777175 964620005 868347049 927717168 503030796 676856517 544590992 735532215 21226137 321147885 705511788 844580931 234194483 690476904 728278018 989172053 154210109 242365368 979681672 999274108 483339768 575483461 158137881 271843440 737022616 905891028 585456820 657193739 785990859 806693801 290458785 918661341 525300693 605886886 882427719 912370427 776365106 834181391 4244037 247684062 259648765 301220863 72947 364794332 605670847 861384773 438488937 874470383 311565810 655195112 626306803 908105632 628277283 658433811 854294079 895123945 839728935 953357217 849294587 877509694 745510568 856667171 452903466 506517637 82288958 682981572 646205577 978086146 560439010 962133837 380628028 863165857 395162503 901312452 850249049 949617733 154449106 378402616 209379350 663778514 624651284 855345399 935940575 951280341 392254658 884471497 93374586 714070827 155427369 815585755 528329648 959213659 826929730 863143247 55087651 221331711 762560596 859275107 745970628 817196449 711245231 819794639 820854860 946269315 892908615 991819365 876112966 963765001 32065766 698804952 254459389 623630382 123674372 600124075 994450319 995916491 523071105 772034996 691087673 825021119 68923769 868163401 524867899 588078173 476297007 703869385 302124179 405737380 948426165 977204005 367162143 823177255 393513295 769075341 12010956 429287177 250790497 653628165 223307113 853391845 600529634 706901242 171205384 500053550 990271396 999824496 855558568 958713739 322992626 883653552 139381376 886596378 754640698 805913583 600666111 863021631 473408896 601041006 73322908 519339524 172535760 457041502 496080540 995067229 910952803 945685487 33221518 264704951 341483149 582000771 548181063 938504314 246175464 524565229 351781366 406743083 157102807 654754742 505508755 867457789 900564434 978462015 997410389 997790669 213214834 467858302 667324609 908401247 620853455 860803370 188273086 909966280 422471836 727000633 233114272 541541866 427919947 449167475 28841896 562189635 921345627 972793982 487878186 656970355 102933016 778243023 263039979 962931104 675529295 989441714 432723414 823636108 432801093 666092234 397496926 547411499 633769607 657719340 407373373 886741734 535710676 961309212 652824390 944044230 388146434 853906091 734364404 860965846 621200860 905888637 466509062 705648302 499781061 630345336 458322156 568243956 355793940 587717290 931920823 981408380 582043641 758631621 758875579 944825948 595961557 962568109 854859533 996798038 447680095 740090404 733323026 843392938 238380752 869104015 95704569 390216163 706470579 842648342 58683087 637869020 854954537 968463551 522387918 990831691 887893466 986815090 484865279 568725024 129079614 715105713 951831389 996315182 822848627 990277619 272647555 903043922 176178741 659257233 572199210 881060383 251926657 498973906 787879216 921091003 802873530 826260361 67704665 799250108 877614995 919111205 171104190 680061498 170461454 504285123 387119256 796079050 956831353 983952603 560083513 693930618 601991320 811642556 156163426 296733774 369701400 527238926 939859074 967234340 953786218 953944910 250783651 983134570 954089465 980208616 32143630 673124431 292740143 306612886 197737625 990051176 74112155 445812410 163922888 317667021 468384014 814577342 656732785 947240715 49396618 794271084 416080941 783713312 759338415 861932257 32788418 341014528 291896084 378775852 537324300 586990954 888775897 890421998 456218257 626172721 271861049 908763965 482593133 947336681 395167968 534055423 354044313 658403423 680315744 798129150 257135311 482041236 183892617 942997082 793623835 861492328 644581852 798190678 14582868 345831701 867703529 951185658 260689950 892220807 625817584 833709034 396928852 973393016 820674036 996373970 415850253 519145085 691908101 950274510 397757288 421253284 137038171 331678283 32706944 755071480 838996393 879967233 836212526 942533215 418933341 607138334 415606644 705619587 176210192 355093479 707346732 825069009 196090711 818179414 162403768 626855181 564094002 845271622 125694138 754744014 395774911 460702439 754867484 842833651 244249527 440094250 815217884 873481222 334745811 915895756 734377803 915986080 249627651 791896751 662914531 994459930 477126047 769372909 779350820 863886896 195074127 800533043 151384073 795518612 869448952 881830901 739585156 752432046 544892388 660450824 932011251 950885652 556775690 604352893 619923941 847138143 16032984 516743691 911260926 964316752 392827597 627343783 142458140 657570114 676081939 780423850 798481244 928546581 103131559 881294933 970517645 979714904 513622896 975529589 400282480 785206845 661877392 923764014 456593894 588403359 972371700 988824720 387968724 788034502 678830403 704913888 865440555 900504851 559633944 856590739 784054821 985417701 145866879 556535121 743977195 816519895 832264042 864192205 511526522 947915587 196003378 308133196 49525340 785256949 857492116 971684449 375368540 639227736 648056391 651827119 451677877 849151776 659380848 860112122 284717778 650232103 605845224 700224160 601008814 913362832 373232866 522580019 841456124 910032107 905283260 966513418 767253075 773698181 819409972 839642067 950500116 951893211 880066681 949092041 654068567 860019884 22371138 913087496 565791522 585186659 313710227 938486702 357475697 762805141 130502584 248064403 684419196 810331331 868544993 945276552 407557784 485791372 216639559 760922265 918067476 985319759 667348753 717328865 67496270 720684537 826312119 848463882 50545525 456179188 995336555 999636559 540693379 972920730 149047992 880890164 572783428 581307261 431864555 955100753 107565150 648865166 960198058 982390798 734806990 865651999 51497837 454483238 598032450 858971219 122838761 314106290 926207634 928756189 384560258 535274246 576308737 581938704 372966214 567332456 792170865 839513748 577326414 645751885 137646007 771297420 896546901 918265020 417238460 767545539 271328914 540837945 898985495 934352621 848467090 974118756 598339042 858279965 454976601 629030357 516497952 703637295 395264763 938530524 25880837 680436565 918149433 956413825 6802916 719771541 542805306 944735609 17074573 301525904 314367195 817118518 376390818 378265572 919016806 983503366 614292640 919976782 500836108 631381079 413612465 993559495 781961042 793209187 707348880 826568027 764709288 787844388 633897683 703773021 464380988 767873766 467321793 888991887 900343219 920686834 29063009 172306649 458066559 459783248 104188823 706011118 409345819 446133220 898974172 913867163 235090311 994891140 2420944 285016420 553307442 778818986 595193751 660310224 542878247 884179708 584381316 826418729 470239108 870872914 219370750 778090218 356576827 704389821 699706576 872785596 91823272 221448039 436258180 554374678 773136206 898116866 678258441 722190475 445071115 561260432 475682404 494537733 85403590 343135188 645418541 859249808 677020494 757016445 944205293 948481276 689395833 736515201 871093922 956746592 626938799 657797184 355810137 485294807 217609580 783390979 422979227 824426048 873514293 895265936 463001063 884530267 860292661 992724798 736688671 819257065 244126416 505026478 12166940 897684528 224728175 689603474 371978454 476407485 583471347 876350312 885350685 903443168 239722071 251336048 951800037 966208589 640630058 779511215 655472679 910882431 697101775 791239452 629403066 896259543 948110026 994866914 925913352 940345277 904914621 932256352 12116991 639118965 945193998 952326188 845629786 847581246 31808903 98570608 403773007 484471584 782171884 895980397 477941949 713876605 364555770 490940690 897887479 905969188 737700978 904277538 143660761 458582336 779693674 931362445 464359392 735740600 929068512 934834666 711489299 909599057 121876979 516364710 231485765 792391404 897699324 956233433 29557686 736943176 990947009 992093501 272762312 661981428 216407660 417548356 946699131 967116172 643932708 751087289 343170594 844076701 549533129 986042712 223240488 797880189 306156600 345928673 823087710 859488059 774092790 999832800 312289905 326390572 943106861 996720501 519320167 823788980 537787897 885130532 158876463 974425550 247574457 974958944 947473810 949954735 664519230 873975668 841903909 880855031 154485395 746212556 185322384 589433425 715874675 875569346 560000156 997172874 963762237 987313562 786055629 870107419 123315913 962672495 21121228 908979933 17405500 416129622 27529433 621365817 668994415 730590512 550974986 803930523 829231172 923930505 266068249 856365865 223762844 432520462 792617402 891304275 783990785 939352915 524204715 881290157 678354603 990365699 177882442 712683472 617847079 900406173 62698083 384806693 107307963 452514052 73781879 439427236 563846781 879614494 36482907 671816234 77418664 497435373 719934494 867663233 489051683 556190109 733306839 763761267 573887332 794322409 959649284 966234287 655275040 809557741 253558577 764718991 116242600 441879471 972376709 999262012 467320543 723425191 524775171 593796533 303200757 982424214 757574731 856699877 894916034 936519191 5514549 593529671 983114005 995791423 459515770 643246828 594013769 747529541 520663497 539281073 957664708 998915022 249945868 548322999 173671810 882069897 698393298 884005737 622322615 713270045 901004473 939367139 840013335 844797344 180170760 733509429 493369319 844891034 335925685 706080681 419050671 998279767 427238244 531082808 938924969 996937313 667613877 843478137 722872579 941134898 752038908 811619119 54297603 729590494 204684 613137843 395204517 653930452 726399249 839281045 402910695 651186635 579689062 691555628 708730521 719470612 816440255 872860199 139757406 673062770 83617473 158597831 160791182 247401829 562074524 950076174 391980656 790177359 163840103 858345347 205538664 884616228 985580229 996934380 190856164 939829640 332652865 994817010 219291996 874424282 750842006 825580889 534902597 740767929 979622296 984068181 480061245 697268780 649222504 936166631 787590359 833632534 774389021 892349756 713293434 801474406 429634289 606922635 593028447 897688618 945862681 956081761 98665478 948453734 404145418 561267930 307296611 893601044 798022918 816949846 164323733 540511129 633202216 703507128 168767591 562251193 794988807 907884002 405897692 713820528 200480207 908227664 554642066 724247990 779988227 784293053 568699942 785602239 29343393 444106538 946237826 997572146 98032567 143665516 232511334 732401522 374678406 587139318 921776218 966258248 784950087 879357563 735280897 919781512 556258072 947478194 538491289 955075239 110222405 889047852 473746764 756302268 95658017 373508251 998201589 999459778 625627740 940279952 339577492 904842442 954756001 966104763 647985888 904580308 959426571 968393570 384887402 937080664 929540016 984751386 944000770 959933761 850214077 990991718 723378002 979304542 615132264 873133149 987834625 997618803 61933545 470920546 220821113 606870704 317314140 404319395 904768925 998737289 961411436 984136840 799961200 941005722 980516638 982463333 881061107 909802528 4043212 725445672 466054435 769482533 816742489 880592082 439419108 537066093 347486286 854646910 128313307 176453158 156771936 376865639 867862348 975796119 374984445 393988638 162710837 378341867 263349304 746945604 265525258 891866948 707639622 803626010 35940128 119338787 537364045 687541649 852033520 966752983 697974028 949371071 112226048 658515575 232663918 856987096 469801755 732052376 51890986 723198717 662785703 775970141 105834228 129451068 701091792 841829125 141318219 679562659 768856219 924516038 867924746 972420898 710793584 851216646 845270266 896990314 896224046 963923610 351624371 473092284 147226354 915003104 842556810 971471621 677356357 996904920 465490268 950418131 423506371 482951958 828648861 915004093 959675815 961378649 217085448 648510917 13658085 343056966 118224450 924160758 894247744 956628225 575839597 783154684 245653033 731168122 351578412 831873104 803241961 969900039 847123445 886309905 84876542 119854296 428595042 691983966 732173996 835364801 793931297 837107586 218577763 671806967 570432141 932200199 796727535 819170735 501044071 785349469 747088070 985269736 433178609 677774744 821461013 929807063 666577817 887863287 153329744 726392999 386469977 439395503 18909312 306109879 646507053 780426404 122528897 139030147 305242719 691425255 51133150 821964695 111196172 461166616 904370080 957071578 634163736 667961670 855206037 869536458 353399051 702119535 558392877 738875144 585985756 851835733 93431640 98193189 102225772 770867434 247614001 816170450 693213892 977007451 239755431 383733009 485134011 749416501 724944760 944903728 768753855 880826758 328353465 677945567 27949614 485014688 830203172 915666672 798317248 869735297 204971967 479821700 488424548 619712569 30710902 693501709 191651430 864201039 408040646 738547889 88960850 764720617 583581470 826703142 836404695 996989969 878680397 973534753 883791452 928481780 339951857 689802277 310086505 983448852 459990701 973683053 161768213 572982463 676644799 866406141 325293347 853740180 181948711 570646611 409004849 955638899 363014293 519430757 276119112 716068881 298990724 742250491 34100685 208165606 756584237 934942520 649728494 708865174 780190383 817421549 587974850 964312200 452139870 996227661 680171627 987732186 788827434 877179221 979843700 992183008 259445076 384740028 90032004 199185315 35816418 744862913 33251678 315835696 529977988 729827287 273361602 771159504 641145536 816300974 424806132 512117633 86740161 100925910 233221109 765198939 440662924 847262387 718641020 843120923 221783054 314077165 471067459 781096827 446046040 792814111 146437545 384056485 858342491 968432780 770729895 922054478 222743951 543690563 236278092 430685403 842636652 853712100 666336162 692318796 217858365 314677137 287714351 743071736 36588212 147033340 865835920 938675768 510374445 818782490 525537150 546271449 560642937 969410615 214237796 910744912 782231933 915806238 64879883 91857515 363123640 865556522 756997109 916571739 678972617 685101813 729131064 959349692 59082111 184697952 33607337 70274816 578269997 847596611 349797137 957546768 7394103 475779947 494220990 850099119 841740095 854884624 407320480 500560633 237130874 299016520 228603582 863177952 444638213 762047581 627180909 792190913 546171457 767065726 145642577 675259872 201454879 969778852 810847757 848104548 634264810 785990208 312576466 349629626 773113220 970838525 100232015 885231641 801637161 827906445 234750357 917846260 696008733 705699230 225124403 449648076 573030808 974889472 169808734 317127803 983095180 995086411 713821971 746673679 243107077 996245453 862755167 899042393 490025826 893956599 176558885 558160866 346602397 801691786 298062039 608876854 524015735 536741418 960053171 973649904 840342857 961512581 536280996 735927033 252077440 468517595 559856839 860531648 381671914 810087448 561804800 688474736 772272324 931527898 214201020 562048307 663193536 837649113 251316117 258767687 601694681 609033103 579742818 883829009 622411062 642509100 451065518 971960351 489190898 492487223 695231136 705370017 909630129 952320143 692979345 886193053 910020505 925711421 929338739 990677636 388383673 869535342 294478799 497834942 198644169 962934244 832895139 872097001 688045985 938342190 606372766 854327013 164813198 410990776 506834069 929888262 534741268 642182093 598306173 634058543 187303147 371542331 50874358 87914737 736193228 808514287 595503052 670078336 612719831 619233713 583715162 643799589 578330374 838883021 405856928 717681526 948169690 987933454 201305596 819211474 80824081 478846570 170379285 815279522 1101023 437191098 22658603 636359100 573785956 903874602 419847320 878245086 845343948 872721280 668110826 983453803 621584314 919132924 99261115 745188870 57636099 704579551 521145179 746437616 479526488 563290288 9970837 565764157 745820929 883682385 640635967 694584865 92888006 631411159 869058538 987264089 179866172 838496439 550622297 937729862 810439795 841127643 902807710 937349005 984936764 990073532 185446169 696662887 275016126 752077054 199436383 601154851 704738982 841204436 182902314 360125299 164607412 537679433 467066538 564510440 360518928 706367037 291106153 527293564 427308040 493959253 805594792 859002233 765493284 800352178 752885451 904038037 371660512 454776833 11038039 106253357 193588150 728164127 133943114 463108533 509639639 844910786 572334903 596065488 677141602 762456485 138223333 354967835 640141955 708768216 41946736 377497860 997596443 998208233 845640707 895751842 546043255 654349583 938465946 948298238 754391335 789622248 184514959 443562788 431536414 643894208 871617735 902416041 258048141 333167567 370192593 878928903 685950522 833122303 843783030 953764648 198877359 960582237 242380409 848376127 10928933 276665843 833525601 871878407 61639100 426340160 234332911 294024953 128460320 670780629 189510019 342860752 701982928 848066449 52603590 208469466 221218718 863924321 132684838 407568489 359985653 526563386 748638126 868248277 658328238 942324028 448631030 944774328 125295321 755517116 573598651 732320737 965985778 999046629 606968441 772316715 554238805 823363102 738775978 938558549 215213861 807504221 664781655 926477683 710765193 865183990 970899235 998684555 798272743 846585063 164184537 442716105 651768658 931058957 877052402 969648915 169850435 429640858 785085593 829062710 658146516 828037377 446146485 980381988 121205823 484792203 742903456 909228618 725724984 767945586 910275768 950742783 240697244 533493910 479582823 588665218 619296139 872795078 204329492 922334711 752117671 943331879 641318036 966671093 600068879 697080087 215506396 614600147 969682233 974185565 250783813 776766741 94479790 664235123 67338665 448356233 638363825 997876081 408863043 748741554 29421273 254484506 703098152 709168112 869123075 960800966 413191800 437656064 126777015 844364127 854275074 870255268 169064915 505636666 815152994 927567472 47702708 450312810 214680671 660169326 490356702 736186928 116507594 973439834 937053987 956791162 364534871 949980032 183013822 424636000 551989122 779332793 127278991 404024682 918275165 942143669 17153352 306449961 587037004 716738873 310442266 445431127 339050418 528107964 128930748 804699190 636096753 808830477 501222289 836743189 95138137 592263128 73808360 543007726 379987038 514147488 229583436 802540722 591486560 961494781 222061966 974025801 330435467 690819429 355102308 494530456 477688713 502299265 798637846 812222331 671930317 907919417 180717120 262060310 898283930 995832524 628025501 702634077 365929951 946269557 958861506 976404134 686325927 748131305 193096112 579405086 106788698 135961510 165693083 917154772 650895339 655576831 491696279 849154999 828291667 838844025 492295740 612084718 909102293 962279771 118116740 268690567 849739224 902874753 735867285 886626129 461080652 734259217 312198572 539837473 356317858 396281857 990408078 996324711 735624212 820685277 951242047 962519705 730624246 849968979 861424270 983197313 995204667 997306573 723195931 905393413 725215739 766811134 698656118 996089798 831791362 855837187 133306094 222970613 188940808 928052348 456835397 687328479 343171805 650782914 442213415 540088897 373320809 618298058 309112987 693636236 228482724 537291683 705670931 956163084 267690475 703634186 894891077 976328804 745824191 987581233 745959651 814184055 398004615 794395290 204925835 785869012 621494177 934791852 641862255 741151572 163843209 703973032 357141924 412837276 405319681 477999011 676483744 915042977 301027187 922294656 182167443 797505677 505373694 796014241 546706755 698827591 14182113 228148697 577256563 766648872 256240867 873880740 266803620 936861381 896938095 982108109 491849802 647780864 312487978 543531497 82540737 960596555 133517361 516933034 815484294 821212161 232635516 366690448 636707574 707772924 642942775 685937652 511385953 990530086 905371421 909165945 28941825 311166513 220448217 391511762 225178615 241435348 656317445 823866695 842283086 913145211 655010560 842490355 32428156 563383941 317477852 837635697 689912892 874593617 482522641 798127667 746791542 833217259 424706100 761428203 511008258 616579486 946416600 982310965 270887411 503744151 735913318 805439148 222784343 989285988 790046057 839775888 716951890 996911191 101524360 126799378 388604361 949398877 847052360 870949414 324746143 993265956 33583154 149503242 330922804 338634007 837894378 916456150 337048818 942610077 736572775 906911138 189244721 616022486 857968584 939691402 649590234 945123699 538061126 697856700 145399762 974495297 110657634 318963410 475384436 484334784 889173856 957299678 835278464 907444257 415588714 671224269 508229602 988676873 966402446 986517289 776264151 912911402 22083261 616280785 909467943 975377535 351981125 620419095 70984927 709183330 629606625 797722267 891955142 957700858 570076845 798306405 285776072 421531079 71928530 533891418 678508207 730116236 15223517 673332923 872014539 919916049 240505634 309536495 293928437 592351574 193308721 328438752 444347800 681982115 344804238 809560149 965051897 980021147 161991502 916731119 460482181 500044793 711419026 851750266 49157067 184496322 923200257 944242373 652280657 836724705 765821756 913125028 1390604 149650892 62549494 898887971 100953608 679338244 381610224 552454139 167250040 881325925 310881355 888428862 911662731 995592040 980918752 988797135 488119413 874131575 923713908 957017997 554881928 834326377 7430116 874589166 213540214 838438109 255793474 382024055 705337679 824419430 954600522 966966387 883290032 910064179 312717295 942874550 316625294 955364409 663721962 758314842 881706271 919420811 727565581 802706792 877083926 987551218 366139667 577204094 643106254 925526138 682215389 769757580 432512346 754048651 25823676 940944139 498332412 857790319 97684242 627721391 280227730 444575599 972635592 981786380 311136591 420208876 791013387 918137291 483485444 945321136 131650319 420147197 338742997 922362218 217732641 654273677 257636075 261928808 591941026 815964827 646506357 812508809 640113256 806057120 225793968 303548721 835990537 971831093 371510270 977369080 598690867 882569682 847607033 848808897 74629928 891663306 16665590 216135045 565315732 812909773 949826931 961814132 926180856 945782487 703151329 891904153 764502553 998301663 518321798 908185316 535645850 772160644 338291099 852300401 126151326 890678686 331738681 373349853 329770550 396392487 943208428 971778347 737877432 970978415 392737362 717971529 774775353 825987436 405404190 736468947 451536232 513765768 860071773 893959690 345339893 732097551 918093363 936199994 638705986 662187308 878790583 927206600 735140720 937652043 617244768 923296844 363821514 727867963 488542427 785341985 324140338 659887146 21418781 598925081 352395390 928270303 662696839 894711756 679798267 983623163 68571228 413580361 398243567 414378838 501087426 998677515 645711776 734044869 219008446 327610956 523417611 619287357 986998643 994483767 445032387 920863699 141359809 887540650 93500720 837100695 718895973 775212111 463383332 468549816 498183892 859307055 792568077 848196326 95538435 104784759 303355109 470435304 146785791 849926515 615351203 691869611 908377490 959651511 239145227 835711943 501761886 811337336 466595301 983560466 84186524 833569604 587118760 875217036 143151586 426769101 849201117 913621244 793126383 825545996 546668182 586330491 336047396 671538881 241664629 963887648 215154633 898890494 704855499 845264825 807715334 884672490 473756453 508691186 436194565 849218024 180114887 362847380 995127673 997602886 780506500 950625539 971910120 975984586 666456194 715795061 585644191 944775377 853980048 890395154 269315390 377331901 837413716 841358208 602596258 616009656 327522323 482338424 526299888 963264473 496196380 532687096 927527531 939043920 590536555 667390085 144513411 948908394 261997225 411099687 506846306 862843683 584402559 829265872 272469545 779356393 705116871 891376839 358735679 837672174 219603349 329901923 670583581 997345910 802750013 809233768 400101913 632602033 564173259 767255867 158684723 639845290 390238725 435029222 848543233 963005936 109592225 959461857 506372251 686512739 362987769 609369790 411884825 536827275 766975100 822570840 994767249 997759383 455649556 723314090 147916323 268624559 970677128 992520943 347103553 815384895 425024878 558705971 596844846 750768098 816493418 874504175 838655917 998514639 404367105 603235777 558932890 986677061 717436895 881843761 513199875 824369990 904961693 910064615 629179631 863475657 519398532 933810113 164943140 624373140 454855961 795264883 642691862 974059081 923730996 950817734 496428094 757853773 761218872 825002105 766087101 971445728 234805719 486586897 911819667 991184475 884195238 929378722 341489416 533768833 506675538 701416597 377276659 650916618 562655003 924032412 481380037 912168789 709656917 998946911 369139677 696248149 644166213 971807927 99879370 450668574 439326413 580087457 681481226 827472868 173780169 952472411 194462792 659271867 292949616 605073678 966998590 992689786 744291792 966327046 128396927 746628971 715006897 926372454 827266320 971057406 407612676 464933065 811904800 913497323 605618342 640951942 56322343 834581246 42741163 490109249 103575039 614165284 643802063 692842263 182335020 916778371 435133147 553125667 244472842 809544385 65051594 354839447 83668303 361384522 986088471 988791039 934059711 993823303 838812062 987144626 971125788 990197117 157743002 875053606 858112967 915314524 437842509 526691088 896515355 966177129 747744835 889033514 193500772 522288109 111688812 134472737 397300052 599414369 613537189 966383551 449860086 694605957 636896203 828479353 773165389 831520004 241567434 256821623 85572165 750034423 175759510 952498701 753780228 909697442 97298774 938377190 114453778 631765533 609356567 904065671 173867043 480152378 687418574 939089424 780848642 794891713 29159039 798010585 849452445 976697429 328964280 729437474 396858067 570261652 432219737 904825852 53744262 301125522 311680542 912215019 672223760 698018618 101839589 262022064 379384632 635772591 198959670 914723070 521868460 774512294 526485819 527620545 369770268 683328826 280374599 375750087 349020489 930611920 231912777 972976548 724608127 985688846 283263535 971332712 728073629 835306774 451254889 682705197 446647792 832733211 692910565 762376562 986959869 996884078 487945176 494834331 544455190 629952946 762100336 824932269 109558951 213412825 322999912 942744580 262628371 379352818 801550865 972596276 998821099 998999144 298036085 690742331 697427785 834606342 313994818 776940399 654241897 819365938 116425793 724668791 620296969 849869533 806978974 862162992 398502657 766105352 820153822 841910481 42370718 501819524 552884830 981758621 252025015 602926026 463989738 644901991 900187243 986956016 736368677 992290212 19394472 626355089 497053124 564544874 864371342 897648881 532232890 900274180 17800401 156580063 150488415 253521599 179759887 298113628 638764370 958805264 773965448 881557458 528844912 944967499 332126933 400610287 668002130 740881931 878023603 902479004 584131559 904137158 56673323 94904629 360220439 444655343 772914996 825958008 196580322 916400612 229945812 517507955 443140767 645302669 10786088 269557540 161114833 176406801 576539323 971375608 650855399 674850614 871475674 979592390 254025161 378844311 899797036 979924039 226943922 703792866 785400011 814150515 913726794 952745908 926107409 994860323 70412728 563271096 793630953 966590472 455362962 837628549 30207961 662815778 313536603 974001852 923415774 983442186 658652774 929864536 482091792 540446193 95600164 229629157 440966539 826435528 199118421 516211212 783285155 847731345 40467784 664537927 69316731 501380799 404501311 763077140 862740941 893393146 242185890 668387801 983637704 985788720 525923490 709543530 819411874 964711903 40131622 146870805 638054938 960449984 772481882 845270219 167886881 708931826 185391593 610874964 480400086 922880757 592561047 774926718 300191279 728395611 370068345 934665399 959198521 985976148 120767409 208656422 735375800 909853200 199494520 306032919 366578185 961531026 411243390 719212141 104211595 835051309 931051897 944220018 175337041 921066832 415100759 753426813 79319691 670139455 811633817 834034717 877835361 953582237 550049302 893105970 698990875 874928192 454837194 615695120 987030271 993542064 245253010 555974448 58595505 621208771 494188581 881126023 297957612 782318797 70937937 244673076 68288840 735577543 557855820 865118757 658206174 974686203 858443285 860496692 48310216 541162803 979979544 990343206 921589152 964705644 816668508 818974297 479989915 856066262 288941674 986115746 531363647 704379429 173374082 603141228 449472513 492830970 313664855 728585080 778216859 933439700 412240068 905985706 971100077 984161452 842496557 961993875 958471060 991564441 737279843 835144262 620288106 915736925 877540067 893738047 824671579 871856923 929036067 975064804 903039873 922153583 640407754 758680799 809931226 845412030 254595139 806785541 47886853 490253705 63897818 508251952 327713016 509037079 481523618 732305983 786321275 921099824 876542695 887270662 509921453 806899993 260991537 605902742 996230738 996664830 187671011 868981051 997215762 998839127 398330964 979572589 715292404 739046757 987253886 999716374 952867675 995334801 346147709 850513780 700608608 936462023 228706828 809291369 851928764 993200233 778504863 832289865 480004733 683711795 306601085 609195336 179452406 971548377 927467965 959287847 626805208 653870807 12555392 269643004 914927591 999982103 233398763 832492726 835421340 941187344 292086720 459553898 982009178 994276761 225258571 657384423 991357652 991626640 421483618 643148864 219173579 497523102 647369458 790028440 897858104 909317065 191477565 585926139 957572571 970445244 85602968 380638388 484050149 484576898 203418775 718601077 754814092 907579437 254887301 283420810 391924350 916816850 406296155 573082222 413460937 446970261 871803118 957501756 466858738 739456563 202915657 921860201 980881385 984817181 470178274 821413284 513290825 519252927 327293980 930542492 474145135 583251483 564556637 809444641 55988629 478573792 438639963 446825671 62700832 823672202 730553270 823948252 75041208 345819362 83524136 760884804 380805886 923795523 618881622 911499114 330204338 730015508 381083731 886788928 422799501 941786648 202234616 650943056 450833343 693559904 991941376 997219759 586618705 696685632 266098435 332537494 515892261 575639262 326833439 618373786 555275263 737864364 928579099 938842461 802314453 911735710 570632331 588627560 419072523 550797581 863328983 903127536 873500864 921171956 119204358 161797132 140255201 852497549 990632346 992853660 615797648 938597932 376490280 997780240 860733873 910035489 767523200 918686862 570055806 963550339 219127597 637674006 147600820 448627461 474925069 757621768 981266066 997146046 852071776 945457793 652502038 978935117 837211175 842988302 919892777 938383293 411114646 591923326 401002849 540521543 640841533 916365214 920212127 941951884 859421349 973188874 854749073 928190738 12177991 558438111 686937045 795938209 628475694 633782206 976059319 980907955 647032313 780513248 349401936 866117468 237408629 947150683 638773715 719295855 78685142 478833149 395909691 610561614 392934691 406597775 188943568 558198016 328565988 925542424 535675930 830987031 85940887 742514434 921949660 975383311 978325630 983620769 531692083 662601955 651459650 796705404 971706398 993743527 349424950 423306098 805284511 998123448 996763645 997248106 254527467 298065822 989849547 991579457 344983658 710021264 794946252 947731427 945025110 954441901 74921754 539343910 48297093 344849448 848670477 881615493 758495063 920485202 487811504 897628510 972792377 991317280 947509286 999208931 787674715 875944839 765144170 898890568 767185016 827572864 464632395 919942127 186427752 604901746 674785160 996634096 359070617 578501953 642238092 875864842 761726693 900344889 920426723 988549268 345473528 855297107 318370348 324394437 17417885 537524571 192842056 450418958 638836622 906179931 901610591 934488773 278374905 911105313 233153356 417426452 176916079 242239280 84471115 714014326 743296655 765559275 94382542 661925913 391020441 889924969 942792002 962334597 127375090 838227073 491425325 626106990 580955312 974855726 375744006 632112722 758556911 855465560 260884421 608420098 187511533 565562911 954745818 969512750 141937449 839330717 537504416 990508211 377416515 413375117 694419726 883507044 289604620 861647073 406906895 665607293 203525391 385169808 892428 16272451 295734870 691445032 447541136 563395470 963055592 967255569 854445611 877572934 89980664 906688943 343449482 887307776 460165824 543614703 754629069 944899917 996265668 999938419 436159183 959884330 960333046 964679564 424495063 444730544 456773896 997865527 101242500 152570381 539703980 687629904 664256608 959231835 434889259 461884251 547256188 576953314 688755044 961360155 121538007 187027102 132027454 740236952 829287982 897562304 725589235 743522543 184024753 855984634 385765691 823920611 471943774 559288128 33611335 375920585 355048050 913970016 583086812 995533306 87331657 102268199 621832584 876366174 361089344 991518787 444101285 474744390 664617923 902221504 477558910 936532543 732239382 879033432 849692653 905020599 532512584 582447037 309341116 577191359 893786849 896800524 427634461 851908726 36240001 633449214 399846200 886665700 293202161 577138417 681325323 953480488 444609604 621174282 690758236 850664617 519479103 653557722 361523789 506060665 560017712 652730224 107775985 214494611 914041221 992952939 652415830 955965639 403378554 705456493 615577249 630206008 109316118 277214072 372575168 765136322 279624179 934761657 427362196 995853975 364235465 509301876 724268665 796347814 217987645 265247540 541556500 747481988 283798978 938686870 335914435 465324875 156289845 666519223 905137161 956967926 792608208 913004114 626095276 765745911 918772061 973794377 921894003 985902844 417158377 883266191 535283307 938230459 508217684 623449205 600371568 943367620 589709506 674725766 96144091 373553041 794716020 889331342 203090226 680958704 931119550 932374642 753966157 956712421 359758482 468692120 702920995 934934893 612925351 659934915 97193150 532866768 413669020 816220420 741795311 921943419 706729162 776416893 298804997 719690419 587031417 957769462 315595336 675137366 516448436 654555416 998672571 999187671 348200587 722191898 197649321 934887746 518999205 783901772 942601407 994055831 360931151 679441215 594256024 614799228 751532803 849725405 749439860 948149627 402570568 772419046 368555126 576090866 561243789 932454266 569496071 589857030 713352527 893780952 262496226 506134885 572147909 748509202 558150986 790677673 491870522 646083085 908569118 997571149 23881486 880776754 42942950 553562285 236154010 301346922 111780382 887893600 143492348 522981712 118229564 480864153 235962125 302160600 719635059 746431139 767532299 774159208 702151083 868201620 968721944 991449088 487141499 596158377 724480349 850643801 360394967 784730891 211985012 650332733 448388560 501916744 707485816 724551880 713312635 939955770 274878937 480646321 121609957 644832023 499292514 843747246 755016986 931261091 351497074 771445627 662298907 806763276 385942849 802108579 505580353 996436756 136275685 936624613 865921952 913673931 363502286 924282097 647013516 866504025 284247776 885361423 355400771 480626771 127772174 284632715 52256855 799007885 856144360 919903768 475156985 593730529 527261943 608174315 466361195 692966402 510984126 844973707 459462783 899039562 460354127 811301590 720396310 872656043 808639354 832295916 391461529 593294080 130384664 330459855 147804008 195350203 777552561 852966236 788320956 917172008 810630740 934577422 931462710 965149737 370673650 505129096 212367400 643301447 415162647 728969196 210003163 557345250 988060301 992737866 793144555 878196444 912289361 929256031 617187175 930615683 595410768 951301348 947222717 975244702 416947345 882047484 669425598 718523776 197859861 199478058 864671769 878991713 855763733 959043277 634570267 703018132 931084220 944221118 398876343 401239249 906695636 914369284 62265434 643448920 340342812 879967892 197397481 967816244 670470560 976885471 689730300 740826778 726545385 794268640 494662850 677244346 603145015 626540449 866654906 997182553 815560600 838085698 325720091 805997383 334021451 954474557 479082546 640129047 552122102 814526969 366467787 905028280 719421925 886596408 283714643 900540466 153608971 602939371 633063352 692638806 597234587 873503438 182741375 562027352 713087991 764785923 101584905 838475490 309258932 492415872 778259546 884650913 321519966 645917559 45318848 545926014 963610596 973739327 775951922 852928620 942308012 989607774 459201102 563057474 43976280 326106124 845901455 881095944 293119147 862296955 326764306 445855170 317196536 569254440 606466311 921584149 200291868 256199979 905625274 961821278 465457594 825792658 975979443 981266637 72868988 244990902 139514343 916249994 327836220 444590483 9884607 501749519 644585073 665990439 739454384 920684866 167390086 781461194 120921059 244230989 75514618 849596622 79573488 251643630 191901955 233691887 140854421 574130457 833816489 876290346 1136392 252021480 30886113 192786788 570379423 871668339 990926326 999500430 311492832 422294237 978454693 995081273 212419305 909275773 106310661 731092484 234269009 527658725 435182271 585560721 467974417 670587493 15686320 483846416 483074776 655640577 508624582 561211065 772371020 984704053 75535883 460256227 967102168 980044864 69515974 757117628 757344320 790677913 960197605 999030662 311038017 988961565 424290015 737501782 209090008 679376614 163165506 518044080 677883263 987698490 814117057 893182942 858624643 864783946 355036438 498238534 280579591 334571470 79817504 194492571 637826607 655202022 194769400 467196810 635539530 791946661 555124015 881768018 85113222 960826681 27098763 154587563 898513167 979043077 400908465 702626659 274277878 925753658 332265128 765587923 618296479 968133174 777010846 869827651 50513814 274525673 898676530 918874820 505339746 930794691 117987609 308159295 989321927 992816392 521534401 903516784 959590546 987239683 669175292 890926731 710324803 835016833 605434800 925123303 247655780 900621390 350303211 402423464 105936971 934789653 693738295 756052053 356959168 553188975 386251674 690672749 606425437 886088063 302881745 773691732 553294306 771226017 795993982 902386513 613523576 679726210 351493398 838408606 253979796 653248814 627842562 747079459 187032571 602255759 844170779 985712491 605503329 902099306 648596156 943511210 916131582 984646949 332637882 591462378 101351341 667252972 245756564 551873882 928321115 997698663 142113137 805203193 116642167 930726802 696483791 915985663 785583364 907941406 265114954 702513333 611581848 707454988 624855118 918333452 948377657 999732488 28340593 861431852 649312652 671805773 436486994 943661127 826097140 932115992 417477025 905260876 862491575 978307313 267993041 296742859 95428715 789171921 262134534 280589318 230318601 355042006 935787171 967210680 728317575 866546099 437694974 898029166 716571617 871451784 772487400 948177103 954176835 977585828 972524038 983321571 306055473 998846654 853219259 880129846 972158347 985755534 975018296 993957343 144393137 984141983 132410314 633955815 676408814 676679719 285858631 344369387 574946360 719776877 564265751 930932823 748226751 802169792 367450420 990671063 783974621 980303041 984052801 995623775 347288939 692072217 959959131 968151398 903491882 995387444 986498640 999486657 253874710 951505173 180405353 549062240 509379697 758254881 350684237 453875179 917845095 980777794 193218873 498022334 587646756 712509391 72926264 734533053 213518734 374244893 766612034 818133653 898263923 959373721 175569388 403887345 952965889 971125702 26516385 544430184 78931883 818546019 46322865 175259626 403394953 956782336 664900973 935811826 59286699 770963835 177084128 403867859 228762453 896502177 407518324 800854399 175898294 530833979 690238857 898250420 499555914 698689346 274727158 440344054 895957207 904900673 474649958 690807459 32185906 648405534 363399897 906804261 633117540 947575004 792284451 956161333 370977077 844571830 741331665 760424973 153726047 556932142 247795174 788460188 483029834 581863480 469617632 489592493 672189020 745488736 132715544 386172125 806476705 975520910 494270175 541373223 682237722 938618533 69502315 398805469 298448208 402855034 782064945 882361732 66255651 742056732 815495722 865285039 516065961 799932523 711510696 824115967 919620979 967947459 627453984 708341427 541070938 977916575 730137871 772861829 796280656 822156883 550783895 845056958 948413972 977464734 50825423 935595309 760442116 864014520 250654969 683419709 511708965 654032173 301398749 737315797 54056588 709542272 418755301 947055642 552997119 679059864 601066314 794867397 943571707 976556117 500183406 667624207 484652812 669629084 601039693 987017574 652832938 679067223 394771905 396895789 299840885 944208501 160641858 304265691 381107445 643109904 387454016 641655133 995831236 998624157 192935541 350116507 852613025 990781488 441798291 776594016 182724756 929829804 360428373 513429222 798759356 812817524 573545802 921874079 210980205 630874409 301520880 446476776 963956218 995009683 484604667 630445059 364577982 521191883 256248354 412097467 181512843 916722750 764141365 926969905 501695188 686655671 791124756 791387962 640166176 813245304 865999245 875032184 271403859 394088350 85210420 417083373 799932781 835738759 947486847 959521940 28477028 145096532 896703130 906016587 7180027 498272297 229564723 383535661 550643469 848554933 490031844 651217690 676462581 915834493 825951355 919090454 179871396 303790357 995243700 996763869 412315213 518000718 901427001 922995730 727090881 978611441 461907141 808690212 241154723 900145323 4220674 912049071 906440527 930719032 449618495 586436520 477542475 816125018 220289709 706294815 906406548 995417605 539149769 618258286 23418047 90832146 334505068 711280610 648992790 941367655 479359721 717032331 936584452 954445038 182360986 802061559 633724938 833825801 746566797 850547871 978639908 991973895 813434449 866511995 997115006 999737196 527956591 954722820 70309534 576800743 176440613 890372269 22311430 274586456 164983625 324353792 492402184 593181021 269312729 468938198 193114776 209363221 837057192 905947337 495681834 759304688 109597807 580690488 560279966 764019213 499422508 682322756 323244068 601870263 889373689 978684338 40302920 417529703 805314965 839607862 124545853 474987361 266110784 767508045 593965272 951323650 162792359 789086043 633961271 711613216 273657646 415520550 900940680 978166003 143230478 572350679 363656407 751029216 947921013 970507745 472180878 640699982 207085815 240733401 179634991 585429839 184970443 221096571 334945648 841131104 45058812 290417626 781561739 895352024 41427797 535208848 229428126 716751174 65395566 475118006 898758687 952264586 520342834 854995167 582215374 864561296 833111346 976926375 336232003 780247974 630528641 985460534 378400683 408647094 84317254 294037579 755779933 791818837 150255143 525424572 202867228 994245895 921141264 942590392 800678731 869252326 900933106 952892596 175004460 784561679 439215294 559106623 897634584 938421607 715639254 940123433 408252725 953925150 329919510 734035467 323675261 534473363 123594145 510401220 283329362 744283041 827748001 901486595 939645577 994504006 68715842 350146832 542279310 947861357 217475345 552330706 636816263 774575254 808444772 940136746 147174916 599643573 946508926 996126822 820420663 867770978 126256757 708654418 806009481 985939896 402853699 487567301 395273993 614375386 522341246 567213636 885765196 948677124 897027144 975300264 629678898 673898092 802351903 817235987 377764451 992297272 92066303 859527275 40758603 747530051 713890112 811762301 306642322 913891044 408654645 622268078 249760889 677828775 160715493 912224191 861928323 920680116 951340640 991322598 973688985 990171816 787891050 942985379 308508059 380006740 184906665 645185281 865464639 942337129 76565651 422068271 402380607 591208405 11550518 666355947 82161147 765846512 617544720 634126314 865244034 874704424 508172129 923917672 696568979 802666608 947235128 977860337 280193083 904679492 658877782 738893640 599263003 657713390 281204588 369453073 514043737 620940675 276265188 394238197 403950764 939324736 497817477 822789801 180198057 381424410 716435174 896545384 424505165 905599941 177197650 875339095 370673174 900022783 789354846 984984630 436673207 480539705 542761770 824393078 971252825 997753849 312659375 898155283 679493878 793974104 58828408 221512117 307949167 933273036 232984117 804835432 68764289 134627807 217456764 799213224 582774886 662608951 844491520 850064026 997519616 999059405 399960165 713084485 179971454 724401663 265903460 905351400 410406897 928931103 991682168 991757167 971061727 978513235 137431245 703872310 381857322 589573906 516974787 533755710 501854054 557279475 280774830 332392070 235250074 538860655 786209723 979805501 924140093 957321378 629037713 804856479 56413859 691380411 910102476 910659256 137756072 660929747 872250635 897273370 534653458 645364319 494304888 517556086 621110865 679310921 911000673 934372309 457370976 697701651 55639117 110322846 608436729 995768244 137949616 703600287 93455386 735642692 129375256 147483511 457234286 703663397 369729914 670602700 731945679 817060793 96410954 588601389 947591886 975270977 460194136 980894987 816575545 962434401 808798917 965816787 799213181 879971882 199571301 448467945 295078368 870529305 2583302 344449764 373776985 453587409 241643878 413094239 571808026 720348414 706461752 754245834 477766263 767398337 251144835 696640274 198811944 784485065 129862230 490285660 14798706 109085178 725106980 877045645 472810370 944347118 9583740 219153782 363052610 833272635 1777724 960410878 655074669 944415491 789927252 841006885 848764384 907991085 944532857 975683409 175312068 914185663 8890605 556550535 455751365 962200480 210850559 689243283 847061757 903336075 678486997 973838509 486194813 569134828 66050743 563942718 495332762 727586437 269382904 984299060 667213786 757465270 420928042 486449277 223281332 840494678 973244522 973773691 39894078 540649692 522102977 883472401 697757886 819624887 616554556 813343986 266139366 720696118 802276280 846061745 263807587 653021800 589718110 935091854 592708388 871441566 375774307 637474803 447679491 629898238 936754492 947112289 843834003 968525115 32165764 807527455 499029111 730039951 866513749 890044604 777063649 930059418 286421619 655196513 480494197 549254866 45096834 182144284 354518777 606108489 621965313 660007525 273154959 426765703 82297490 891162336 272572359 418962074 729555594 895919417 137024719 599271483 486250168 978660377 295809856 671974289 288847222 603868634 615439811 699622617 710668946 956636678 864198841 898865320 438289890 995091876 919108195 953460527 633461041 938710422 406258676 617056103 255504331 538982230 877100066 993668744 828196238 882093101 151041093 444312922 452079255 561375936 75553243 421753609 538137268 700687634 474369035 987804604 877292330 888113079 383931096 596759968 560021173 959017695 852155900 971932386 68874616 976187609 427831270 807412842 322695068 748717881 583965649 749949298 665726807 881780190 268092662 989899298 194904959 911359489 302178877 698050944 752385805 981683700 865460467 914829096 892648654 917818565 236132312 272832064 195516046 596900245 577211172 869039523 260577000 907851670 703837865 949393759 922417742 986634237 336424088 677884873 95353611 256718361 929234577 952505072 655928940 962864493 291333937 373167253 517800989 764315148 109471095 287098490 577241 335844538 651461825 979159175 967323756 993827599 459298595 558305675 522671923 894318790 917255955 979742021 534846291 944820879 366921717 766439036 157524796 858218952 633561782 797457547 471124905 671177300 309549397 540138596 290769004 413683500 965369467 978432646 351599872 454926565 487247190 554014368 932654370 943455826 38092438 904505059 74964534 883957631 610680183 690796866 739052516 856170802 185203342 879720365 598182898 851231528 406656805 816613769 216958689 578535116 162454548 434660100 827603956 842330354 997718141 997728430 698981816 827297244 751086702 837539165 918456630 937951624 423914817 596860846 891179385 968286039 598682527 884301935 763295036 913467147 356108937 394764716 239161048 668240255 34222099 977759510 931490059 981420713 1786086 729432075 399095304 606456322 499102899 988943401 626618661 784963298 294336998 736460721 321426917 471322681 408091270 452735062 790123865 836153480 955248153 965854161 948501608 975361511 968349589 991665847 166993806 591742938 243367661 532237252 83907848 175055281 247720092 587997155 982895382 998625509 422896369 507142085 827406266 855402123 489206848 940274078 77097279 191015812 439151316 725089891 690377734 875970635 83057495 654006980 514395935 723855028 531224581 990314370 369356592 977276794 486649463 608612976 459941693 636201357 887223949 970079505 148264388 904832942 39649459 967583106 182264630 382038981 714780229 771896622 179421446 186479880 587275882 656010394 381859281 542261832 782437375 962858928 795145401 876008732 844014304 990638504 488947390 626396611 754362821 776997808 611351779 910594861 581026118 954467395 116396272 427669568 269297053 428968197 5773476 848264721 465523352 927761895 887403183 956417146 518002052 799479818 905706200 945589949 908014395 989327726 341662703 617606713 859200312 884922662 698357821 820398796 727485020 841982542 524834682 899053923 806929569 868156702 609175037 611051893 629632096 753362414 283681289 552868981 528508350 935120461 303130341 957854767 293327384 717457255 889238034 967508112 299623782 494316776 6509551 24886687 291216130 501467785 885459626 944947299 444317824 910794256 717259248 918070199 220314238 834495453 915784388 918687777 865876416 892700044 33082810 900656014 832969599 970700578 488976792 808323726 193291107 883300553 122535049 760120746 264696611 504021531 159689209 557026959 253934496 845663092 673156031 758567478 304499601 964841146 536235382 830452519 760899612 802311250 879031741 891218890 247269387 994522494 8991458 123590355 523794063 781076092 200092176 457909963 232518103 651303867 485341600 936077186 9666594 705482731 140708216 811528475 590375278 671200995 871440696 923636640 6202978 541833151 252323786 983433497 996896215 998111675 659684950 973919938 324677043 573879891 98336603 374049917 878975796 939526904 741907237 938793248 989924018 993829279 593657618 664920814 257152186 391922808 979732015 981891232 45254348 885485965 880087459 972870853 910181172 941565138 988417038 998922760 145533507 661774663 806661801 831267594 984262120 987102829 999353640 999756043 909016554 945463680 66965201 998542323 991604210 996225105 947796006 955636342 937227697 964686751 780483422 796763165 989230521 991152685 96998363 241400796 592639715 941591923 529573729 563766914 66451810 604583617 653856484 936414111 225075997 442970814 967759396 994672992 458335510 982331520 955375911 960934530 229087834 236302055 762654280 815786836 176551965 692140699 674367486 767193545 563649450 715210115 520202386 670456443 744751406 791837018 312251064 902709559 926278134 975868167 496543712 544269009 163604281 254520887 275878979 298970077 574684575 620712727 127214839 959769617 528956321 654305850 182089146 370749952 453422902 489179220 292794040 929205573 599265587 876759887 480447626 888414194 934617178 994068492 425462119 646944334 573258080 603695896 890562810 902279216 525520154 699021644 522882281 656957279 47029861 573977442 112474719 151820182 634904554 914239464 260544752 797252844 413781662 922752550 826861424 981971578 259906232 353863202 516065011 742499529 827145673 953218412 731394779 811032915 871239482 950702146 228914923 337170534 24777542 212452564 907606185 992104822 267629985 523342927 980897822 990114731 632711366 689387947 73398936 139608675 470289079 573396121 482198691 897614169 169517631 496114738 541140421 825599788 864162478 880417742 689303306 976820430 610371432 736314770 289945992 437274220 86453400 395612104 300517762 570589356 183224053 981233783 107771913 168053242 530310973 959816207 985270797 985328013 760482046 921375761 858768249 865987227 966556506 980459802 243945527 534391836 667395465 879063674 555000349 891431118 604028575 802961347 83060713 400528803 725102557 735023092 268511297 752051580 759079455 909975445 277242559 568327477 558985920 759351479 618535349 817089915 582418913 666606742 144533383 729368311 681650833 684741574 526399561 755096516 954035780 988958778 366654365 977954434 739565962 963352402 537762937 771497167 449591857 776110101 247142405 995806166 273674267 908950842 789261566 892321837 996468472 998920963 495288593 775324714 299378937 427846830 580490091 791660684 871074471 934611945 303889905 970129788 28967051 792737707 610562304 918746704 275729438 766559261 360275521 863360490 736358107 788964069 295454611 383718338 621192250 969749341 41706754 852348740 761798973 817752152 673926925 748842478 173304834 760639970 954201859 965930077 360902156 677410452 435826386 550129927 671981411 912792740 689093584 982469970 198769158 723390039 69194509 713573909 951634262 995990576 846619940 990564139 818459190 877861432 5975181 536683401 851596578 862641569 692821760 964585077 198452451 491858948 442020722 461660176 908674818 932875613 564275472 733031374 18451446 339215903 492583520 974885884 733221261 752361119 134893600 818796899 895223241 959402587 268975500 890481461 864271946 964617572 351073507 898600305 381204180 385296459 785451216 867415082 879861575 936818783 661004723 690408208 169951843 737651948 26623133 448734816 241787207 514424500 205001637 911696471 640936401 954570812 770895036 889111323 384032944 468718379 961994971 990443360 995329314 995888254 502889694 867683171 184310327 693440635 393569505 711055903 131771816 583869454 610527461 653605564 190941844 675757482 696305364 941173533 747919904 805963465 360626745 612600573 104558696 951014814 116707828 491865412 802926517 826294078 786794177 862622791 812812187 948108283 822630125 916580957 194173718 541984332 549834367 780652636 975632843 993396973 485355458 564397439 144214184 169271679 842578809 865513909 56347745 672518594 83231843 748191779 832015002 863361889 602964478 846120096 965322444 992245049 193308611 387169475 447393767 554268836 544362135 845039863 820740452 913819378 333557506 576449867 154524336 801515982 754587151 939372932 319632381 741095438 135194402 358791817 294039251 621381088 538085287 797210155 627077000 705886033 635863393 836051551 718321395 753865830 72777330 876817230 431835498 854775407 426658816 656311054 996492733 997169299 933097472 972192404 865377735 911096643 804089533 825971949 631496595 949449250 319581787 614772800 821210133 939452933 705718630 778750778 374248581 896591155 561531102 583410088 55749145 635384427 996541066 999596978 810554004 909648286 235576110 745826256 203730301 294993692 729619949 923593721 28258333 622442148 370573964 575963143 775463286 926010499 559171934 777587293 425722760 745923470 827947496 943371724 739460555 792888133 340007699 433013932 665457355 909341973 554160315 991743748 472255754 824369738 383315183 638348398 176722577 874174903 87245961 453508266 13229859 558841431 826431666 869797546 943393210 956177932 111570480 839735148 652368580 690268750 692966212 990713907 166616920 279137776 792374804 920252448 549069738 839758262 778334714 804833210 949459829 980105552 822717193 901583403 599948092 769774613 267025530 316883327 660486844 826603153 698299694 719452066 751195713 952234201 315218387 503734829 125183784 999067878 204075733 768564494 179967051 189235717 993179144 996651272 986825376 990179091 342554514 927441095 317596130 902300939 377484651 445665035 691117138 885969650 741418976 953599727 979869808 994639476 792682818 904209079 152915194 723231506 898124793 984060773 103578233 862865694 428781561 867848020 476785448 712185844 620822873 778487629 485198156 740235098 600248685 664617228 208825901 845164237 904223414 964365755 841795867 955990721 468478978 530538616 195592800 248350950 607598202 884147166 922005702 991687139 331488309 702818541 241733429 829555452 745411986 925504202 153960265 321872186 118568861 557427605 384600883 391284625 994768024 996146558 406758910 683957548 426159629 923556806 285478386 984257339 549651946 781635062 537112884 997343237 955965648 977198404 84703608 973483945 352478258 494123677 634439068 726449148 547530639 766735208 622566186 674743374 586593301 798334344 331371858 964676171 489573613 763214866 122202852 637384967 382424430 443929902 668309088 850170023 517441908 973050950 63655009 622678133 5515907 597484561 346164446 346501567 423500888 853640367 739430444 903875450 904510938 934605024 105701236 525663384 30677167 887111893 231190796 774507146 418156820 590607437 392244632 854932559 639333731 850511978 527626401 811775414 617462510 893881591 948718063 951156614 175492727 812940165 749988669 903603772 134700349 440548416 380302432 475980653 609533101 660414539 325661066 691270856 750800077 814876285 21569627 527373664 633736189 982514073 438169159 781118430 910150660 959448859 295962483 436221181 565810513 568370563 66411561 384603041 683636326 739936233 772540102 886824650 695478251 862602148 802912357 961723413 863737574 983558693 920118244 993791449 103738549 366453573 226310857 491414639 461472596 687920705 801370093 867484486 120259300 557409152 840885804 861513547 275396867 330488386 802337402 813915797 320422582 457275176 87524356 262626933 69486698 763398926 738827407 756154502 654970267 735106941 732412167 908189783 738830800 743291809 940353852 973810451 514384790 708690508 211564240 502280420 250977992 367702913 239098285 541042882 928739106 933940664 608330246 643632237 395745691 772735724 22567856 760133660 633491988 657316125 505092698 809202892 80569439 811824309 825798833 935387690 313958879 620504721 760902887 998398301 460506552 687782696 661661183 772575060 427186536 475973911 355759119 805407231 20158654 207576799 436127103 750640397 636316791 662786942 682267002 709382184 990767291 998429880 324585649 415823850 420795432 951093757 945080231 980404847 608460172 784005795 732599240 824002372 982820491 997858431 286159694 878003151 381597502 914178034 645914419 786601934 885256644 918031333 82510291 468136187 354446500 681366474 912711704 985137774 46517651 593738422 599569033 622504196 527135096 924527194 667875597 876254285 730551235 975843140 150555184 447307019 372917789 501785935 968276609 997408785 621088396 891285917 488104588 743156593 419937792 852447991 753338915 837252358 720541956 988201954 299548257 499548553 146275103 639824152 241748316 740318120 996479594 996625682 331418233 676844347 217184097 860775512 741826372 819072564 754621143 882576750 781801261 940930610 400305762 786064393 592112115 824435286 594459423 776971438 896678591 902815657 926397759 934632601 425244797 797373148 613850532 647344515 487599544 998813808 756596886 768626979 82765386 216104292 966106235 980181970 68735260 366088094 555099010 990354583 195211553 666819004 515002906 958780601 716582608 774423665 98695179 939636689 693418886 894661686 475428511 706113036 504198794 620419482 77914017 862799297 942765870 954995898 835890418 838491186 270107396 497669219 259017364 970288387 766180569 782906032 262891536 722052436 639132406 716085652 901480494 928165214 853256023 966462691 471388988 930750347 964812013 982739605 493854860 710108868 195006530 515918725 353440254 890425321 10306457 427444837 924751389 933467625 432677859 838701930 165245136 455194594 919572107 969680918 390943759 920584991 891474662 997120706 51048526 626460853 517546202 571899690 295968816 998653267 492561648 616996250 599997720 895318496 693067293 814214400 466602322 690418747 916840064 985034238 822311323 955982554 984392158 994489758 269340436 608483496 125444770 280216623 683213809 921556061 314679044 579716371 482763574 812406927 312818946 477577210 485037789 495662010 986063852 994476740 816903511 858819752 636583950 654443377 106470278 974210139 812941510 870028244 105122713 204852808 761681771 798083490 378852188 661877164 135011549 849512136 944932006 963893416 682424532 885618171 980271941 996411153 94578838 886755360 93435154 481961798 434562164 939278751 874174977 993442575 109021693 608423954 665733668 782142330 101809354 811982514 908563063 994493915 477952782 567967780 171516764 523642709 938212237 965499932 653351893 710827392 525252036 929093371 343099972 592244750 727836618 736509529 773926250 900234978 427962752 592404303 982035677 989508258 99680497 626546660 911364224 934398149 370452825 383252947 972586329 989187259 891354283 956301545 809253359 923715146 459960707 883362637 691920496 692882342 694681220 731351027 239412908 355934232 88598803 634060484 773405329 917061902 948224034 991803588 258284470 381589065 665250882 946455671 687985916 747876262 200944368 226835309 807803802 865314096 588053365 755935415 870205429 982255831 952829046 995274887 675287584 714948130 257241765 319235914 729911277 857040461 667896060 992036561 5036876 410661153 834726599 848600289 278130139 441100903 111507768 610769127 281887519 962655711 314090429 709898476 261569969 572230895 675628565 836766677 516873006 561165156 849115272 950574508 297989557 997259763 656062513 822856714 117085336 152514609 412989322 998366226 211785945 881883233 177330570 670255090 545445184 839946434 849297624 870853205 77682055 143121709 119907682 984399089 33568961 280371485 279398665 409075293 528681335 679528011 317139681 678022148 330468218 522231608 931606899 960968958 661578858 784710030 770921896 945458217 848600288 895136481 727994967 958541723 138574571 442887718 943341687 987058398 473290990 531062483 949432201 979152747 25966762 625636546 73124642 662735400 979465494 990623276 857225666 858774445 955074498 984395476 616028799 776862198 216825581 312412516 67127975 906461615 648683317 958130522 516019389 737247981 719397250 803397381 971121340 981892966 359466895 468596918 279949247 329756516 306104465 902328072 682295989 951883545 543064576 968142393 919342030 952043075 63100990 641452712 347936426 394901979 478352054 540677610 263552503 895074664 986982196 992115083 619688843 700144542 556542026 721743676 920607242 979337631 581171950 893077933 411677558 710435933 596258827 963679555 63496764 126594885 194383061 473741839 718087914 864134448 662890584 769095588 595495677 653190393 113639285 567241993 902039398 984931170 306185295 767067208 30600194 337508011 989761191 996019532 748821454 889653411 391448774 640455933 452026778 807981540 586120911 937018456 315941108 388831666 431204103 885229456 465289938 841244220 940686524 947300259 270968161 802572878 285842749 972169935 686422306 749137216 829179904 952654132 317510898 960188907 693696723 724367624 549787274 987160205 403557350 465543859 556235250 593975320 962086587 990828882 110509446 311209108 528433784 705523903 42463834 43589596 805419145 897953733 74833768 868755369 389035695 551533674 340713927 909379172 613791067 624999752 831127349 918941062 83488010 523387173 771564260 962781905 226515031 315177549 524605663 886063535 792353618 963941770 622012451 716731685 384013954 639694611 964015445 974365987 7051685 130407106 383105115 752858396 333896267 412212928 850054125 854891151 199034935 867929953 874973280 986322965 457664261 971839816 991528990 993957452 434190170 672157472 516301589 685939126 863792203 932092327 531175540 780118171 561540560 734980393 599442517 820454801 649687495 735465352 686092487 808611281 268780869 451094830 14252452 203077944 920317806 922219352 272632692 939949857 974916359 975192549 445602121 594487807 627443039 965009856 622558501 672908273 518983208 738972606 722975022 750930568 102863737 843884550 540643473 647734537 137767263 616151704 172877354 419332392 350754907 750522142 451931741 661641815 130847290 821917557 391881567 464378859 694804130 748480930 718797959 843113307 297402288 751553196 383759327 464933233 266871433 571747506 296793111 953255303 911177854 943708470 808033314 894757087 244197729 967257901 760035087 947598817 172862864 449700516 770703038 984322262 527258139 616361515 505818743 601592565 629307425 997858080 740686735 797062645 623835946 685769469 84265771 252744619 102669915 323600572 873177159 946160362 460703111 556498627 279613184 741662393 427058013 481954328 728561409 847108101 275756998 773377470 866145504 923513793 212589944 636157575 103809264 131754701 273701590 390859930 537600933 894287946 516246806 686811681 564472822 769447788 151215610 166032109 655953137 666386737 510032356 849380886 199090055 918578104 985113787 992508172 611638720 707273688 750516174 808447628 999885955 999966024 972613734 980522949 757887910 906491942 184757344 511236040 80305998 501324670 929962391 938040229 436035781 473409845 108937964 721920923 884136474 947692138 667950961 901425378 713770935 856042775 140057245 956961091 776710518 977762421 698127188 827590027 396133786 443166944 850458633 941383845 357119466 725950494 789094538 838963620 259241112 329402223 537123603 803604580 401237567 505256693 141347398 884282796 220148208 473798408 421154381 823960502 605281920 908574484 793364100 888208702 264117075 934627752 375705053 614720098 10879609 488043059 841268662 977699961 638667627 659158512 95873843 314979416 18353127 509442772 967268892 982357380 379727343 964508611 376329013 603610004 767126894 901711721 963402352 983638527 352399808 428546135 604773503 701485411 716987549 993629824 1722367 836280806 332294812 338507829 927516358 985270058 548736386 660779678 453481709 859498341 956755448 973387411 857163378 880960459 787649623 840468684 156251145 295732213 689177474 712096418 810171015 941094605 237553104 681396444 300033310 438706641 742787642 968873801 659929678 777734850 296718780 671314700 84519328 670008994 895797726 961526086 159860503 300651097 162148286 755202101 879154904 887953699 969771511 978854911 260787643 822973891 617455333 994451644 475339078 593497739 565235583 680772766 578414349 653215514 593708281 874995162 874923975 883745634 383344633 946196275 992318020 995804661 42841234 385514251 540820988 894746030 679867081 695540415 92760195 270964504 851770908 929532334 889176752 952452191 1696685 680665140 125849452 822619269 512404461 767178324 844598562 899487916 729024057 898689716 180267669 279937624 465278471 606585715 157547047 726220164 358208242 697870389 726813667 936900309 940424728 969516069 91158530 767211070 888166685 975203105 553775217 810631204 623184321 935682559 222179222 486933753 124254164 286452500 139814414 812490328 662654775 785183812 844972302 933878432 842800584 888289580 99460063 347926052 417272113 926211425 770565603 912414756 506921209 971869130 423283126 482489976 160102682 523123946 37635503 534162720 663077668 663238305 168707511 316777879 753272698 758133589 811447788 930486951 73130952 794304400 714137187 743822591 528811678 649837394 816289182 838192317 39702833 732073996 983571170 989438891 963649177 998380799 777560853 856200965 417362967 490079055 527219619 686277583 70810376 273153740 907943513 926469505 157122456 775794240 223832751 438153883 679221280 790594844 559727815 634512237 341394604 987397846 111965822 290560710 354661728 992078441 730373847 894973386 286339481 777327368 329818052 511743088 577282120 667711656 698588205 884724919 837251967 938751700 722787276 855518357 779390411 882752624 241425692 248989509 629630258 699933513 573588899 718328726 614248137 825827715 328120227 692169021 734521261 773427384 20155992 301660547 102722915 144076243 572676210 867539962 564674011 771980297 757723297 914989884 562646794 628128235 314959909 781808584 74302187 873961530 855662173 942982296 185430766 816527164 887609563 996044304 322584329 731732923 628941718 665810817 302371983 657439907 318889794 835103084 889058065 957414154 557683802 636511113 545661472 938070131 950304445 982245533 423862876 621955843 326936574 900357998 804581861 948610199 509234312 770818120 627239371 784068288 937831908 983165440 346631242 605161656 647190886 651047639 510222735 599873592 438958379 571185256 504019766 940513360 812713812 845358763 428439466 795619806 139222435 704959760 44500936 470727469 988056944 988208094 284268063 553206727 539202816 613966575 219339202 506369456 194653812 414017834 549324407 665876073 379947216 448293089 143058120 966241835 687732143 942258979 347296389 988078699 942550835 946246850 257028225 684827238 273350795 282449401 765705211 825716864 649072763 988274116 333293287 964828093 680215041 990683994 81307101 660648443 240952598 505180415 945044330 980799979 121474927 755149970 575621009 874584426 155044251 244043118 463571000 841640701 160404996 372935625 133501004 336718791 609206830 881085703 852908101 970353045 309758407 522475268 137878096 148470143 60623219 674855162 579952122 791524744 321870801 814287865 620918884 787959462 8776751 88159778 192223157 412554337 167440391 952709541 823506 139563639 443463405 715823974 571509 939305508 236783977 842473376 901444594 973670990 221483780 825979890 929343144 960758490 947875734 985116868 672847973 679970717 240566069 526204886 702930403 965095828 196857243 762429324 468345479 555584892 704067000 963027136 280232328 924923071 453946063 840223450 784593865 954096026 764674962 904450965 128162423 920608929 818955778 919467652 952295869 992147341 825687724 868774366 567713037 909824300 622365695 825219324 279567884 362503366 132189451 961478146 356062846 548839522 948895712 984191380 667195049 688347414 219198379 962492114 68504467 296573223 960721443 963610983 603624606 753045446 55873866 168630295 311231174 412242344 431516094 852780396 696122463 852982948 283655480 665073863 170865770 529981985 626024826 965611329 215338404 689876741 964261369 979986123 9504818 176160051 44441365 795662921 945629813 951304755 136611883 556447872 556747512 677586276 614977849 950045471 335802292 615677344 786610995 922803666 833710828 982437434 291240627 308364306 891945934 926633738 816178674 960525574 78635160 477921412 644676926 662481022 95110629 982911708 84390415 262707593 906754956 921684537 920064592 965348641 249756735 379986224 499529607 963927068 31671718 382821177 287072835 847512459 692519831 698042147 742163195 834794289 389515499 992554440 596732634 939622771 868529314 996901519 285132252 384818536 663283438 744763407 956739738 984844522 629957871 770475506 909863058 918473892 521320531 586755480 868465990 927846493 785794822 964747971 968573301 990414750 113702725 718772203 676919370 914073271 252931313 541281761 979936691 992915801 46727443 344390569 658203298 958059686 213121927 563662936 85587378 677046448 705519278 867600045 795724550 993042402 809465141 837793220 442803818 775838611 4623260 667965553 587868745 924533824 674069638 750190212 277857048 863078842 410494351 467850598 182068621 526078138 307100013 366351828 660617070 716394459 951867324 952814115 615806516 990924382 112769910 986374782 769601816 967096790 598418746 642522029 270332662 289060599 490627385 571185163 872726856 966438666 631397836 697071522 947003094 958793529 8202910 543635757 20869834 668948403 32461590 317820531 148803928 831510534 161950781 733439334 971048266 999649803 302323654 769323310 892636471 920582728 82672216 220269978 716771696 885393003 885834005 901143489 808117259 827600707 285004998 709299961 328292192 579630600 559498752 836454871 914299790 980674893 11933493 924764192 979300569 985218226 721793007 900348228 826792443 927556870 313786761 494901198 10895919 843170925 813630048 892780767 276727184 745250471 308958827 837549652 457081527 994659837 550789690 578388253 191237385 282395429 579359711 649258613 929415696 946382760 696053608 996297296 608383920 811325034 209323130 464857120 179579147 299285660 884134492 998364905 641583317 887987175 180848322 412484405 959303957 969211416 923100708 989087353 56588844 567900182 149741814 689945771 271216276 501149077 72326742 687446715 502211903 930201881 742973131 815616533 92229785 546836924 683889723 870871074 167879856 418979369 166496504 278640729 694286488 899092168 180688029 723209910 195606613 944107455 843140014 938046284 762688430 985116329 993334887 998420784 97715738 693124540 478123598 761307497 562831642 679477850 78549124 636767463 673127966 743640847 50522965 851683445 481943085 581097997 927856883 952426103 675789038 677776758 279019817 862535963 926894137 952577364 464428041 718663363 702858157 796147686 924506994 954317333 717459050 779445502 187239613 747338243 447240017 794862259 866663204 927507877 352621132 976696647 790646459 844767783 92286679 519764484 411924098 927710279 51192807 856183352 494418692 955853338 505537764 777386525 242997089 554862285 480597983 923732231 805827831 994045275 453569871 748404921 416854762 934934168 900925536 987415485 64561721 204980609 655921125 848428751 238494542 728797209 576933027 737462997 248380174 649989449 178187854 967258432 788441612 982055963 387648187 847881872 586553150 701704862 460672598 812167854 982506711 995344992 639066179 642578013 933923307 977938836 470045407 876769682 294113484 509469668 650159252 711001978 349180589 394153939 946319430 954170512 121041341 802911493 769651422 834995527 794251326 835314419 946656885 975552667 10289552 187118776 372677659 557481097 155494597 655331073 218552378 241148256 98809227 446032653 594442105 945137569 7478129 16000000 721853400 996936857 940180631 983451595 272409581 981198538 612846857 851925795 893167017 984505131 908025159 920118584 412876367 924938836 911895460 957679038 545838967 755234624 634904390 721739971 384170790 903655084 760429110 858024902 586414986 736785700 344030075 748843718 399323926 755260920 121339065 767562478 528211815 710043759 578569231 977161964 618037941 685975774 87035855 568891689 503346380 550519703 260333323 922800022 605712285 723373281 513719519 729508546 139859873 377259439 329233642 834252675 677850031 755557755 191916195 526171489 475172937 584617716 659874629 864459215 885378514 928655528 217550588 231932424 374114105 776305699 207243748 833629559 979610728 982395457 144769097 255240787 962605390 989134569 902094620 930197232 255373953 451025243 29454954 810836318 966647808 995116051 351293931 805427694 618055879 666882760 743290811 823136943 515761735 763205281 642151142 896420808 236695876 616883932 759276741 768763550 304421088 345970670 782007213 960875003 147119813 624677740 149196112 166334158 807228591 913000375 105396178 867906892 528704040 894257022 869361741 869967741 424645193 667199916 959237734 972305006 4572714 501286919 795002727 820609258 41010224 566402648 849901610 915594231 906075595 999951633 764462772 993848900 761016474 807258366 143056979 337991847 920413448 993142309 136826727 736425045 260871451 444712471 665228062 693578518 615222337 993057921 761916399 924950731 831248183 905392570 159621296 199522039 453184492 610923054 687654998 783555034 641303412 960588361 8005036 379452402 747438380 853163460 775192089 932384369 457524308 947559494 158429245 550414880 741673201 971602523 789905091 944400225 622107691 770438467 124261666 989730035 302116307 705974095 260144005 797913202 754334228 783511840 555965574 557555416 226721874 892963643 116346512 669588325 548814496 892392967 634365836 876473032 150918400 678246028 932541814 977854386 405070188 619315876 695377174 896959904 651584388 947139132 9408632 614334221 845682285 999824856 277720856 574262620 382851461 738769953 599834171 834399787 217009119 459010471 931406713 996464205 867094818 922772818 881395910 924503235 230856626 865575428 296559863 956874435 97629467 166547934 173504298 801651438 6987962 234773943 508757101 978221644 429669941 791912422 394504068 461176062 386379915 686239267 848179261 888125141 811739649 964752132 980033884 980286342 277694816 514724925 653815925 860501585 677224532 723053214 333772622 801709911 736765036 745467783 22006921 603538598 655022883 995868664 587439984 854898020 680224873 846398276 444925457 708707071 421395596 465658187 49934108 109292637 398401471 917338748 971740963 993252641 220409716 429157445 464535996 933160590 948258383 953043260 626977840 631343775 35539278 795385717 274302222 324003458 693836489 806072803 720204868 954328280 333074701 870216564 55088410 875869373 270038244 818655665 776358638 872258972 866995681 873313903 231206736 506466801 323875271 339545768 33919613 463012350 712732276 990794954 885351667 982058140 517066125 546803375 492814284 687542809 187721712 846229274 312586862 845141293 429998855 919240528 733783803 861088427 620445961 924633822 35592369 387136262 798245204 834091982 222019176 790175791 877514801 887705651 997144986 999334948 535263426 565543630 129209626 477703302 991708530 998175373 460601214 933103021 180264651 959596893 748344958 995546043 190018331 645020565 697974632 975340829 878199078 938669731 300630817 351050199 414652730 433850871 389644457 756772242 854432740 909543313 8764856 677138079 223613738 434560763 619183409 710523427 954202027 986153192 857265877 996269124 394175882 421391038 49774251 426088628 38047062 207884358 105633180 685954798 959093272 987710844 94246025 102135058 966519615 970060046 535318841 851680200 74343122 959381919 268908152 368309145 997768362 998112553 820170542 900631414 141318410 179986448 208064322 523324058 532435295 808677509 999167399 999626987 81543730 273905705 511976428 918677610 150066701 399083340 643020484 995271304 588068779 849540088 917937852 959283782 491681686 977887981 475190667 883941360 88850443 697954708 578459800 616048292 309940946 915957220 865217710 928775094 870956512 872633220 820006375 925501374 371101007 549947228 9861363 945457309 537127899 677159947 791437963 899381560 413183053 699814769 192026379 970793235 283158844 646333663 664542327 758618388 478235260 836212734 922727886 947279867 925549988 955826092 597022889 808437396 750777198 801405017 644370681 861438599 109027268 900870340 68627063 618849771 839577422 915381738 795234519 986099563 887538735 951758950 535677370 841867113 491422168 570861291 692516089 778119033 615054400 655741200 154286538 774172317 624233151 635012108 340280713 457476111 452975016 609528805 88172782 411440039 304846518 688187357 831071921 831466475 589034215 867647486 646726534 986863306 946352908 996237743 825954597 831612604 732164031 948456292 922832126 997290672 315821776 394524645 560527215 838413199 46309849 182904982 342533318 437743606 48677811 458493873 304434777 595382900 887742433 889337142 554795885 692351347 651994690 982484752 493789208 863064468 273745956 428343257 288672991 682426015 982479227 995499001 269362890 290789883 815172217 989859490 843187130 987793056 214091505 298609321 374648724 781805246 250674892 334697098 182368338 201758276 762338624 780453429 692866488 829321703 526487672 716764546 969331652 983748890 297185950 762473512 272854269 976755078 908711583 977480188 915592474 944673860 341627722 409136131 372827533 874029121 119750497 672562809 97051776 156577385 268173777 522329398 919840701 926876962 254029448 777702445 930158415 940481713 851192049 929264236 267267312 787183892 126964739 376340292 733285108 926032429 483775870 932041899 970594092 976793342 633970498 885164808 624070621 717468942 826874332 885542184 822273959 905116810 568927036 720717397 252139901 908796167 650749903 874492556 755349273 810450516 735262434 932676986 660007359 701677946 845478490 886173326 126805011 442968075 804413110 912450610 64958587 711895020 312870480 768796356 625729916 841837586 546909324 981083303 677294312 831729078 642605506 840988980 77984821 253429869 969355157 993683970 456335195 611545525 789684014 981002482 921361728 948004411 1893662 426036236 708310 861087052 540397189 715813165 598743316 921733181 93655683 257535500 14434540 334932704 768715436 913364414 941663710 955252952 227476073 356986677 949764719 986053904 710780453 965459954 442383729 904071808 511832165 566795317 164439617 314465495 595645198 612713490 42812619 619419995 756776352 843429783 897595966 965407272 202298265 328788693 311964455 389705932 564579154 656927073 632433057 921390430 615397759 998608589 991170019 993750870 815491131 988023208 408736836 500725241 698116141 951355948 255678096 574090217 504265729 568001903 105843042 455773205 357878020 969133029 3284323 650597776 4355572 856329197 868458103 966500223 664561549 728283927 503045306 689855528 250921509 818895307 158952282 712449801 406319607 570101798 486412716 981557622 434523203 587064102 247453808 364843407 713407395 802963347 342371884 734368856 296482206 491544787 384538229 826767123 158020243 453817486 646122283 822902875 205728132 687482588 71190666 390104195 342032959 841659292 735180945 984546383 199269216 898190267 565066873 679390927 377144138 410342110 222886499 930653119 206889427 440191597 399390545 539817451 169989137 874689344 665675208 971611916 224903410 754755974 627682341 803945093 980046526 989526681 51172019 443255518 471144656 968621420 666413685 932712849 818835815 947513410 417644673 695456649 612028846 834141121 39428433 664156451 637215002 865031492 993261982 998168890 996594835 997809164 745204709 852690873 954078621 980372024 525049598 709140973 246672283 274701375 496608917 909121835 88407812 367132756 836690083 862908892 587962096 637790591 843952977 974606355 878026602 968681500 274575098 772308436 696068634 911260419 295769908 367806943 620880343 901130383 340074682 344616308 26707873 320905197 532811411 610308112 82149001 410711096 736008627 981388837 938547299 968096213 118288024 448316342 135636888 484827121 609965773 645673929 868792614 979846962 900285253 960376938 184934003 460852482 475181803 511950590 480701040 543729878 379874886 960983897 659773518 960107787 273175210 650133970 282205166 358636838 973701993 990029800 746825056 795459778 714904013 835398661 578828404 674846358 808202172 971541723 290281722 890875915 405214925 819686685 946655068 972369467 245219766 480961587 217471887 771165005 462358184 607660985 955144048 965039775 100161194 890474745 762072668 828282819 602745502 632339620 868210666 923006168 6246729 962356952 95861340 970548490 627104588 994022868 450469963 809905487 407107677 518318629 233615973 943476789 265206928 820591331 803196524 878950492 538163806 654731460 187110253 193398926 620757820 651363426 255056819 677771693 199151513 456307760 672259375 778382704 787414575 965189488 870104528 970050577 954345361 971367145 312431868 687196201 341623979 915081656 438903520 749261960 105970909 556691313 295208758 991995291 280069958 429881048 375196452 888893306 702275189 804938999 807807941 872820399 261179344 556409150 758291596 901319482 151845630 276032144 330790079 339986704 477009723 970860227 895156607 984375978 614495858 821446710 846956498 891856158 935487257 964757705 520064125 762723295 306744037 938592497 125492279 351242037 573422399 679768423 547360170 689363710 623556902 710206464 913896920 981760049 13470343 798270979 439758962 717613493 454466570 804517589 79402891 152576634 670481948 954309141 61711013 326842841 751818983 790933717 929042406 989135907 718811710 905764927 79701983 114577943 661777023 726564396 853569131 910972527 33298818 429381035 503801043 720445387 285506586 604354368 762346310 878902272 928956454 948606184 513418615 729529313 456983276 489978259 336739558 435134365 567206699 890684999 94128330 709784633 568939927 799290710 593168926 866668524 464343654 626368096 580513209 690393173 701538730 746200713 406161460 444422523 477135503 692369231 80012735 586743228 939322411 991518584 206098931 877116561 511307430 738282242 90087325 361693599 52601370 462935937 65769915 341394321 188261739 803676581 834034431 836499137 435202574 742505434 591018512 929922253 308646274 788248961 907493151 910530519 393704733 917067362 141609072 482248805 246988550 362392364 834206454 981779395 519255277 819383487 364257025 370200932 658722671 700260410 197042977 865657384 135745486 772878244 850220621 985760630 628224474 792669026 256567555 526511462 116750946 456847955 530777104 887660756 81640302 589201444 335341549 539893974 16440732 576007210 843810894 906584707 961438865 980582751 204783894 798567405 895892068 933723960 442270321 735739085 563655603 708579273 523823528 991111713 599298240 788022163 711145892 904761670 775592693 818340233 943908993 948800148 995557601 996566455 460493562 787370159 762842934 789487582 22652397 250373050 252436411 334551428 289706695 370634465 700395657 792375241 950983649 972255443 504345152 932819100 351659735 775527947 358360371 825540854 807738801 823998842 504736110 831452390 302492682 866853381 829125897 932251214 340601179 425144340 927760164 963078447 4732490 285135668 644111146 872096151 694116560 712641779 557476742 926260127 548060946 775557330 60811899 527285042 582859716 722423519 889908302 892425840 770881519 846410447 536445326 658896666 934106159 944379537 470153763 944389684 752801951 960805932 33520800 754124514 936241125 971116667 883034689 918663216 460701164 481075208 444922340 964518768 704166315 879293490 962510781 983834414 367204946 869128634 302880381 678118968 103018909 604312727 77793271 718992186 42626367 483680049 723713519 823061423 535390982 759634032 92698585 993323099 641567447 882835633 569793742 961452532 388214934 705454888 425393964 994740428 120974163 719093539 558758137 599699413 920717152 945488453 781727331 920129462 550512466 631475805 693834307 781606521 1164055 502215419 529808510 777145285 983967636 991225844 208398256 465211624 568819315 704350718 423700060 943139189 995326660 998596461 391818820 580832062 101559801 889787846 32784796 136841787 33716902 749063481 164622071 397378209 275225904 682640521 292803754 608029404 659048761 719944948 676995209 905164453 298773552 591076747 933260425 940040658 778103602 844760827 114585407 523249737 340133805 904412765 304858661 661708321 373185806 568116833 450628255 619978029 168869514 894540742 201143591 448696523 991808821 999640670 630603737 730320686 739570191 815474736 393235138 852804221 187604168 513990651 801386481 891523524 510231513 549854435 20464080 315348765 408853819 656673641 223000203 336315686 211686571 422413216 127165496 777273576 17041287 590430026 244314992 427368215 328591050 602661983 154704341 456947212 897469058 990380847 359699989 600397191 7191048 168249439 343977930 754056311 542370383 891437776 194220385 761791359 779440979 974742553 889730721 901447669 17207831 228589523 672745024 697053229 839427833 844727947 228329507 969731361 548191181 894853207 161827966 337635634 385424326 772278549 997900965 998570585 648100303 766646554 240471676 812758017 815423237 873589524 400934169 648562324 447309850 525959083 570691269 583092104 54264672 104009394 95922089 924909672 927908029 998048084 804699166 894103503 638482558 757742912 682228687 954704483 845841245 933011135 593632120 846405930 450244036 497173873 876964221 908751161 597904596 967062937 85512769 689715772 356526319 583652682 266400639 626649429 401035650 703275253 851232074 896148388 479165135 589871999 988599165 999910666 289232737 698724226 98647784 601057161 57928356 150803775 717647165 794335794 684367457 938093010 701411260 918043877 785623435 836160203 319870627 339054459 4258888 204335683 195041247 499921676 158837319 545030849 615127441 843440306 450640963 521040959 1397162 977066543 957199301 961620932 333948650 615808665 778924641 983144546 648341901 663560798 46626641 961545080 152815848 290909437 772588964 916200069 231714151 785900172 123708102 788469883 441651022 544057979 630734460 988181886 595447093 714954294 825485034 916050394 450366071 480894634 745699584 865141021 232567122 868568974 780032878 790572660 987971931 997975996 805613017 846916820 271139791 746490599 873149362 924561342 340682700 685368564 799493718 985836857 364900398 610156180 61260148 314128015 612865600 806866383 182255550 967596920 410717617 562702742 13201707 365125112 539018458 908987498 33666625 371864734 568772686 738852990 924197632 976269618 723061483 933579135 571761708 847800322 787158227 814877200 243417210 899810861 942889392 956768382 303187777 618145914 362883704 566175554 642432965 661710411 270167368 807873697 863881771 968341087 419298797 482229326 478501538 799940227 451825608 825939525 122328836 982913598 445771133 632903027 434338155 578453752 951006424 984528565 141820976 920967169 207326353 978176080 631513022 775189507 533478044 700398984 700784797 735924806 119927520 738302527 660562353 726878459 386944604 401654815 524953846 580898104 940704686 983264138 28408341 113402986 610544587 952561433 517972880 818192914 710858584 920546503 210814977 360022987 129970886 538562322 309127699 910248395 916933948 973594940 196678627 779585300 376825198 724382189 269721670 695048896 710382230 776413528 111270941 713064308 857253938 977497449 826821880 877170690 816721872 969318138 197624434 419628853 666280689 936876350 539771924 620595427 860434498 977351734 428381834 498993787 677556488 958924781 291586672 578329320 808223619 882222009 987345655 991177253 195252222 685562237 688461967 762651100 708523997 969725358 985636530 993832341 813554585 932245110 273201269 415199208 298748135 715511110 394596267 814422062 325419550 854755070 476165315 957524577 862749640 943819179 810289411 858765108 843333498 924352691 12350534 670839469 833086970 940044808 877103813 980313677 493392701 883656701 653463629 898041937 373825051 443173385 222150666 562235126 514844274 752555135 124269601 431312581 434334392 449476839 486168727 901754412 885573968 927916506 762830152 931032328 394385670 527567214 917767012 920010472 233709750 950637755 599636207 952322984 624853508 871097502 490611150 936850153 103357660 839558920 722303876 724524783 646536446 779885298 181128769 882943053 275679482 773204217 433544714 608787693 993618621 996617481 954028408 958342724 166740775 282371754 388842893 553488321 456546850 875414123 943638368 980149250 778926486 862868715 203188916 250042528 727828353 856087244 121539677 301285445 775301833 827465825 189352446 394336845 877809951 955826873 130933909 763406727 163743461 594440702 941509731 949773455 987632504 995061173 556308412 696383993 83682725 720110455 743012376 940183867 465663953 710326593 936583062 965803078 197654508 826590143 202274911 933155601 251711011 844072087 678223538 710154493 357955680 964643467 167714483 488914429 746662345 983511870 627432674 671757437 964729816 992287051 176505761 732944564 606624312 990266212 236863878 852076307 64508920 587959142 654654985 997829046 657979401 681608603 669069180 985124930 340337482 787739822 801898750 819944646 861678360 937863509 53883318 851858964 543512520 657314197 775424468 991725727 527679231 747826852 24836603 796995931 737064977 957302173 806269951 951620352 793930930 940705355 346451262 635615293 385755530 442698702 993118495 997971776 924829802 958568329 691219297 796149032 727492917 992421253 940384141 967894264 142569052 821919275 840417654 973819354 171953476 662714410 880844424 938875240 222576919 775533349 45687028 743453283 668016247 719020551 802337153 816617847 280509784 909773311 328624800 366104033 531854110 963667014 839259651 925631410 304399552 668184088 881281804 882574707 131961514 750134776 220606813 549808284 254711547 971459094 62645890 686697342 418507299 872656637 894341850 933534326 550775915 634886507 188527348 199908288 230589950 420619667 558592987 848386203 478310168 598739339 134014456 491151694 214527655 760921943 119183004 625296162 144015679 800558404 157579421 878348004 185362111 494554922 501462142 579839661 567986871 696414630 367370807 932878242 9296432 42307615 724029239 772992200 140875060 409676540 28114538 687801301 641276025 793715761 782199487 871537939 354864707 652948479 464904148 744250705 48617020 239152779 265863775 499968775 212425931 450103048 347292709 435128947 638112076 695355264 986099086 994669169 949347421 989600805 403798321 510092347 355459700 894133829 570395905 750140698 187077982 321340316 258524307 327539992 945731228 951188379 685826386 847560701 249003084 502956372 770510507 813402394 677881937 973741145 997832072 998699264 614278644 836975278 82753689 800575920 615329981 640036957 643418287 757648001 345338449 772549622 51275371 296609247 373531129 944027227 606052185 724860478 574805952 687862680 773442580 906977893 180439108 516847538 924695923 972660624 760668630 888420334 712080569 915617633 730187287 961670320 227550362 976084909 338887874 913548434 108540946 730476551 687751483 902649757 152174299 825010369 261803703 612605479 725269599 863433197 739346399 784193199 818100034 849310184 874945551 979580848 917128410 977341520 42518412 448467987 418110320 736084738 975201346 983557883 376670416 467909942 466769508 979026570 713013612 970250444 204297422 640319732 681124731 911125568 693260648 875284827 649266059 843320647 280923293 396581639 782103238 806567390 615438255 762068750 353885419 730885317 611957945 633453462 198635062 815284334 84468376 544629303 661894319 796010785 883301866 988676065 593954687 653775537 690322725 956488539 561016225 733336426 961850388 963094011 825026913 848053778 717660657 816898861 580737978 951553028 410059825 505070782 95130978 300884812 296872999 312028508 542985999 851084217 142146581 563716385 539937114 644103899 924022569 960527606 46261375 843816628 347328504 872524047 113031053 584047876 778617304 892903034 386172187 917319335 499359056 800946215 844903561 949529334 635626463 815918264 987597637 990098120 806649254 843012246 925172207 943244827 664543111 737647294 808859562 872583904 195811721 857781077 328706662 990594140 885405308 949691684 923650393 984424060 470452422 843543991 944716573 954526450 621176911 841342095 386953338 523049673 723539345 875228234 463916247 754587098 363145847 687156406 150989652 287597617 828365312 918694943 443360457 689352661 473400558 947802701 340538878 657065169 283976156 955473716 547468261 654367867 280974732 716601046 750920145 837786397 839726458 957406581 816532594 817040718 119299833 878298251 693901205 925363774 368013466 950639237 854923681 998190932 43488534 563745364 771128257 855280147 27341746 332532885 41603678 496461681 787479822 837707755 769051371 859691034 546790329 912996439 548882521 605441420 719481725 806066484 647821369 933934900 364999074 506643529 385009791 566934067 26585394 377659034 351271302 903081173 781609018 934565595 138334476 955170197 406741496 520970018 540223053 977500651 493973364 553656996 797786859 998373580 456125474 831359831 485175706 766841075 792817004 819283964 728087114 773969351 979196829 992532032 615180098 779899170 936052666 959957631 316480766 509245108 234569786 536401278 507540047 587858703 785360849 879416474 887265390 974971882 663318328 917485712 27108858 199701844 542034183 576180260 537467636 977394838 938853936 972563124 785673272 933206085 66190120 476786925 896500407 960912760 305392152 392559723 922582139 944980518 939622301 973944271 978078661 998934871 951066894 991011068 323001798 633212612 12432663 42801139 181338644 585766149 485915331 846307675 74428280 389406257 6614723 947940360 36220029 985696277 763944928 912610483 828369937 874917802 883341976 933170671 125443319 716243963 337952340 817096040 311815058 525745554 241784477 534410386 53645448 829834948 860672686 868929152 336565109 522012843 260405245 512495195 772557040 889961320 955428999 968127707 279717222 744012439 387241872 681267817 534787013 960140830 595937972 852618007 98568706 906896672 914864514 968120874 64738031 983473335 709517316 993507993 563409376 699121827 435479755 783965823 348894557 483842344 957384620 990859583 248817461 815210586 269530605 294073940 894465973 991430768 254795410 694751231 547701351 857741228 217710807 523218761 584808000 990985138 202709707 271771329 469772716 920659109 75407743 485360172 260023293 266471665 386217350 703225106 416692077 940383416 741659130 868705505 408196886 676300149 251024225 727253520 110451733 706468201 991647046 997107484 468102610 482268742 947412332 949785934 282853428 489646876 524998559 603208079 899549272 951372446 224803480 548027705 829985129 948280749 846797507 850597992 876912378 980846846 297164993 330804984 947157571 953442975 698382340 961413453 39582071 703901193 60714275 591489420 256264341 610089303 478334244 970954499 695040465 830758780 229372551 523709138 903114361 912447104 545754061 912718533 175133253 790308231 573483221 796235236 964331433 973839819 995782339 999824852 312520350 541191782 81607009 915198029 20857263 770872461 10974353 283185071 338791459 950847876 681447590 733613378 44668388 189901606 945270960 948791579 975983503 976085978 148370438 386369612 438905766 675282802 300632718 607868387 982660419 986394641 371006985 661702841 114306231 517237764 237161498 649945894 170512920 648202389 675120490 876397115 97988530 600702183 309917851 433294648 974420239 980977391 535407382 977658774 921830987 937626442 785374244 915207024 291677974 694241908 44129334 549563139 242523167 955272968 691376439 986061015 100693526 153192859 164228365 452835032 551528943 873173091 668990464 781025185 753939064 889434315 199860844 969428320 327480309 529737225 131910524 645884478 141510577 835003791 277657966 828516783 408888378 774942245 411494459 435371429 751063803 973539077 141729801 455691116 845153694 873812466 409250803 717342763 739727206 896811293 624251580 897490658 392184699 810000066 317866586 938991488 965478507 966331303 181798614 345472264 889390342 912409854 127648134 461469632 945847825 955413113 837065313 877836048 798588930 925464820 241809019 507268970 407886778 954839046 672125424 718582664 777983766 950373646 870751428 916374149 592046948 656208010 758213969 802188581 226890863 765112873 152710032 968227747 717735580 956359816 440784442 598978366 993498470 994270113 39776499 563817677 616903025 856752082 492547470 904800721 680448098 998803919 967154038 981255502 474251256 553649198 333693071 574684908 775781632 777770122 707395350 955812100 720024918 879839793 675364755 921976820 348933384 661699336 855861009 914250661 379883981 442721319 812725156 981908198 954576994 999536629 581561655 629635117 524062326 739022546 767902769 862852533 33077236 420374033 298339493 340803784 144061134 649024005 243903715 645905701 406690890 598064013 837451966 883066898 271219326 573416936 994526216 996083272 866703650 884069793 718236983 723085367 732541953 898001023 625838284 955540022 421982525 777353928 536901835 708000763 827961314 975047335 655272468 755061562 586767207 870710554 86005840 740988232 638133701 830847774 547423987 858830842 838771558 843454728 614426745 706212737 241117907 465371172 312481319 536678826 959170416 999694505 711897763 922525753 448052367 773048934 963772546 974572586 222032675 480632506 162150907 931665941 250547734 794201397 830845247 876522987 239789183 929896784 976736206 979259734 998577684 999696342 567803961 710117385 558824029 638507126 531597432 607652341 706706039 759036673 641072629 825409021 930229097 980762846 480081915 913147893 454866844 975403915 409846101 968001346 137460793 784600514 220417687 271118685 30370082 170935109 361449027 415615634 153163983 651547989 60343891 227706612 139579531 549988337 857531996 903323745 645447008 828707400 727160956 820314197 626120433 968873594 449626249 835426595 169626766 703599421 633662112 674318540 361654089 727813886 700464685 904135876 166092464 915767979 150414054 794296843 256214747 666325025 886239862 973296342 817530976 849926971 45682077 203891675 707712105 757037963 786282730 928463974 891269185 976202657 462159757 718429293 571939824 920093365 471755190 919372936 612245570 940862809 950061750 994360145 385068068 450595118 767528632 981381097 75447360 561947910 7831109 730179403 328322763 974581916 331938556 345223503 206985385 919343382 683721567 972697946 216550730 693110809 666332731 699304699 832508111 911237237 872870360 902009320 988588730 989699574 519469488 619859344 182807304 721501372 530270163 572065108 532518645 603443469 787755585 934178738 866559605 988657682 561591481 931613682 412149408 932167326 924670941 967921328 209327179 363580715 355867462 778308739 960619764 992112180 419327337 850425220 70820026 453456258 791173933 866425132 944091469 962055681 822013802 861398145 49830258 265431182 816383415 950415560 267777919 736163290 701819751 985692212 77434425 204605766 690840181 970500142 190904385 769276756 500438671 666720525 68930095 742552229 757760891 942043681 570660763 590969500 888668701 998571345 600881699 788792349 73387348 573565351 505725534 957483078 917980270 931639837 67524910 558135090 424896069 725636388 861891239 899643003 174972904 701221359 640301388 725380757 846959597 943950801 553445947 588136059 299992871 874099962 364796466 579387155 185522999 232563125 244034932 750950157 496889456 548942005 71765288 210656341 124543338 927062272 313559103 882375755 944081139 995249763 7517052 998000669 806699250 896975700 358011612 780016307 90687308 293695343 972646730 978246155 561776474 601236235 548242427 967652908 919578403 928661528 77927454 469133498 459667037 989712943 801938254 952717455 439327954 824203551 953761760 980026312 56774201 742534714 566090328 619180407 636003083 910488601 650248666 852141821 58169409 466550469 275095790 995436270 9218121 866697226 834636122 839206278 630602134 674951624 823126947 961783769 346670684 536116138 711160300 787832681 770886146 859754851 744756571 768964897 320390315 384639815 298356881 624353786 144268950 528225575 617622463 945308779 297366997 299977806 674655325 703744761 301603398 703044436 644465112 916917769 740047143 938489010 103199069 812551693 269957255 677804184 675104006 689595273 629498592 844753297 465867618 605371380 505334292 939793033 766030543 786120805 147279973 956059397 343269246 946050239 385063209 542745514 410725860 698589391 371606649 877198981 150245472 387613877 597730869 734450131 480991368 638276635 74288594 588525363 355269135 730974613 456039327 938781457 774550217 827186659 130125530 646682716 125478368 163364454 470759524 506443673 704420770 894583503 51615613 987175806 738510885 837480132 175673703 591438647 645196479 702629030 239774640 920241208 106906606 398087442 110621478 397469201 421526400 549691440 458752628 903964372 549568321 801722833 117172818 222929749 844981140 936961163 939257350 941611670 676639281 763989771 190060016 337660864 214981155 727028145 703983078 983207967 644232611 646862710 267972360 709190742 334589258 624182494 583571994 668397004 370102946 570326202 451982051 892006201 537368321 833667525 890004863 955422430 316327559 893602207 705183974 866506872 65018162 704775428 695447932 908533915 705021753 897019390 194795785 788828988 406690547 510979091 728115411 852084877 447203897 665355474 348322004 376893820 34085450 766893712 578372771 842361074 667572615 705206333 974123862 987449001 468859035 951450121 741945581 785659062 829975501 861907012 197919296 576995360 759643750 978430342 467509153 926104940 366327832 593023476 890658360 965858975 277078883 507099293 591234354 925463267 365487177 443673838 363885257 825665543 775196495 956768705 890975181 991930622 116414037 243227068 624329039 911863397 601625059 810084113 761392410 783083010 104247651 521241248 219412381 430232599 394225272 804136956 572737424 912570882 979406203 982550948 388430956 859170139 491573526 974661586 353882706 844463783 415845609 974508871 772716271 790597575 66539933 538756787 539875273 902745147 569625033 715587035 41461641 553881552 639863379 866721041 825146164 856943552 215315389 829924938 846848560 853006681 315888646 735696659 815375552 845683372 24265903 743506484 705431477 956178640 678128226 958959153 375199194 381220562 271198704 386202645 99284671 142486543 476989962 903842752 332106323 389099182 464257682 687428630 87665127 505571751 483755305 838351485 111552089 867655898 836514255 861821134 158341606 748684318 426079390 793165233 412251576 905717592 520894551 978736803 48119952 951104409 514493124 912912285 221476601 912898389 195909127 200328187 526446708 783894769 644524693 741234622 421484949 869007017 651479935 967227399 201786991 422797114 57483431 68696422 315081348 567677337 810206611 937628595 412961385 895837004 583493383 671577818 830541043 986948841 462824242 543486947 868586902 917876973 151537267 686471746 525395295 707255136 287868296 704724398 471895329 882919172 959670600 991576155 111082377 667031759 189353305 429188636 346667423 394681584 527398536 630798376 841024416 950924760 965330068 999482789 750642682 855311217 816631669 844678339 917974197 960536949 467606611 915803342 783693129 817823457 921176200 943786123 148585794 915012253 546817535 945486686 295242709 944097940 838047937 957182943 469614574 882848669 567268567 618013483 504824190 652685223 100243848 988411320 996034568 998652913 323154627 666278734 322237602 781344172 80929499 467358308 321813268 685455146 476598002 933908759 807855697 881736498 224604857 266235987 586339077 799691285 182296615 218015846 404837699 990603032 845564735 989892303 49281651 762141061 294266805 522711520 471069771 623459674 562817579 844253697 917629886 987861918 890143511 942239070 261448493 480685192 714076590 876388013 338805840 938266778 913676609 954692687 761285219 905125358 495978257 681902012 126632130 251043347 719235729 921425191 240575409 820890419 54158138 514205522 884629840 940995265 582863945 697920158 752217377 955644885 430026202 736822419 312177828 418508384 848409295 888577216 595321735 673271811 574811612 666304884 475521339 491108591 190185783 812971241 103767297 286455371 865159364 934796525 100597146 586935009 193754511 351779282 164097212 178337391 794625223 939346902 112130359 331219936 409651316 447887776 102944461 705748517 200362488 647225255 397867913 601093334 513012349 524078499 436888795 501583760 69307525 610056773 151840984 632584975 557201030 697324400 578894964 765325901 394954125 488820724 654051560 843035793 327016847 881219945 701818127 771386488 191363898 228116833 648735768 936165929 905607689 942753249 540512784 983933267 165302877 300398311 753811182 888995577 210750608 616841339 204802390 323425373 412416204 970200747 608669520 907840145 211663524 897304166 770944582 815884692 957053502 983558598 88300567 411894383 457475751 714007540 887367464 906173434 560346042 771905386 131506455 833764257 279673096 322595671 36698344 592197001 200468166 509040344 173062127 890014764 605079007 665623537 643055430 707881712 894740702 907920982 137566766 278952385 363376713 368049677 714448583 963734443 265245151 673953647 439380122 593028963 302458466 686291891 755810792 859541064 350980332 393506836 958352010 997775607 716351549 909706988 614015892 661144418 970540835 981661205 594798692 823890505 337505981 617207010 201194087 938218342 310227535 948172372 550051728 737332465 788363493 991322427 56268477 570621892 888382047 896034595 141228100 600814185 504784552 572383090 787466002 914999404 234345892 599795534 169112927 509383652 701998139 891770895 150317610 856143186 769825974 849985373 805988843 883292696 370954131 403910989 179977343 576423150 348022708 455939974 26793026 569737618 373030800 801466691 422110261 988232275 395802273 623200728 438763910 561550622 871787575 944055304 870926479 892815834 998449604 999252400 16933742 416069934 306758134 422685029 270760513 726204499 164233313 897860775 909436532 974092151 365622814 500579284 291964608 813370123 153249926 769617167 919006170 960778978 707131706 780001067 620071342 995167013 576150590 838647043 13981868 233795908 423688880 424560221 911064324 963324722 751947006 816150847 138280586 143238772 455268259 464557487 482726237 861801139 221733497 514084162 921936716 969435829 819181165 926128503 953472866 994762246 674169753 807158728 423859398 439102974 13447660 113154966 128997931 467629551 51184888 687206785 907706661 988460665 172845193 571587405 615991492 818381924 53548481 787392956 214169 834091200 712065437 884216826 804957189 910518318 302405894 529335744 635510933 725567100 71236048 93063692 531991094 858007753 890171299 979052412 24154582 743851503 721856935 866719528 372001585 439515245 772290241 776133977 391048805 974086363 948321184 972814849 735778937 777852521 934729416 953571957 507744302 795827939 76523897 895408380 890291095 986115797 9614946 60456192 328345007 765288237 205803327 650994001 875443100 958712382 365751417 848754954 561293018 737994292 445423617 852462719 318702412 553288671 226005183 874330392 717266332 946963512 65511 674582144 863261228 945529551 763115003 852215952 403070326 428553875 594970776 800205718 856259686 934988679 695572452 824712079 13006760 645907581 973709343 991266841 335691303 467602135 300624485 366698002 210893218 578735353 175810590 837371389 678508612 811689519 475952687 505084711 328210735 941647759 86981412 855223263 572568733 640007081 28545027 619662070 919628998 926405427 863587197 966054015 827316381 889300197 988832980 998712518 758056083 980337879 210594060 861816119 991065199 996845373 211766673 477351726 677493413 933772427 262602555 529032708 984455501 992860808 710964170 947426141 328725672 465700640 220437627 253524573 841657033 985000336 724377028 889732098 762769734 802674599 128755691 695121532 46916531 738397559 75186542 154003027 895414548 996248372 819256547 910945931 702333402 859476862 505417793 574356467 67883306 81857788 794932279 873720368 531341699 846721731 663839835 714864061 983846160 988357670 935811649 995561938 437686898 547307475 12313520 771028448 416054041 656935115 122089838 420181148 381971110 688944046 936520859 970230096 274132669 532313135 438240147 724195016 23082681 907548688 358640631 362652038 147360014 770287013 399697189 652244311 155988818 736233316 716797673 874274009 870788382 875615634 957884483 977026853 800532163 924525932 686842659 786917777 158287436 931363623 711651468 851164086 626913252 778884403 342969726 578172866 178502136 581030177 653021763 897945653 873263342 910072798 817316618 833352285 714994815 765630380 133031154 565584049 560254724 826055267 266030404 822312271 679355488 888874004 17153086 731583294 45674773 549400833 903743391 941730490 758011991 957644692 380867487 553493752 701674259 813106795 49831295 999732591 3295415 99278129 933412158 989163631 229857533 960608396 903809773 977506655 685794440 797871280 340115563 973719214 178482621 901762901 559173427 817792863 816192963 990594372 328363899 715869346 702662215 792409803 936927540 990629438 270912595 564045260 36114931 231814993 212947377 732191802 48426958 286995373 382817855 576732554 597101117 790657412 299118049 504064745 959937129 993323003 442685873 476359765 321909632 677093477 631194355 962428483 2837638 950188245 653569815 767498509 319638289 991380526 299154489 985845636 559908774 614634251 597776627 658536904 288751417 457135239 756279684 814254343 121630253 440567035 306059248 967298968 931196213 942803312 691251825 907011449 856777290 881012936 482921121 524881656 451610358 875400362 411152884 783018820 628693643 709341938 742246182 751274905 493008142 978599984 702587342 904346709 84951385 587911157 403955173 405095526 657189716 859660523 668506589 974034021 638250422 642426333 804798621 923306670 668664178 988041207 977535769 981766845 488874704 665427193 832452302 904063418 382182020 586155479 218450081 474788091 581588929 851210667 128058394 972255674 35720234 100293212 986372479 989196907 277210750 832544296 143659896 904334634 871241560 884313620 210317987 809828306 357899625 769228486 693443153 755439601 492071226 577814488 793476954 999147493 666873874 851416497 4757890 268084192 410955499 898891478 386093785 519340484 187253370 930013112 354537927 965901762 397972488 964998784 24514783 210885212 314078501 616284543 269686337 408937521 810670934 864141683 499021703 541792611 589940999 931775917 987071963 995260306 717428423 896209904 870339391 956393896 372677010 453919150 463590615 778691981 953645372 963339658 260863936 503659444 791174928 848472897 231671326 540203426 571686190 689615795 388978044 459196068 182548418 545077811 965867009 986032894 103191136 776516954 433543603 504320227 544258688 631997507 579787808 861367853 728973444 956446936 723301200 929759720 571062194 877852118 31691179 443081792 978347030 999197095 967566769 992948451 636772894 913665310 831310198 914536688 130545758 954806109 4180319 912855980 816966559 842589237 857161934 880283255 166280062 478010154 247863262 493967177 944390943 944896674 317060441 803287865 48759751 307438091 898076184 914755905 404903943 821524014 400938274 543753881 477474025 508004701 235869766 619624540 781757696 856673260 265475295 682363185 144616835 615803771 500057478 575235116 934640623 958821493 695039359 764333026 814684672 835032373 290244408 348267451 825341847 875556080 442860491 738962905 452924053 780482457 595061536 957889578 881374832 927374494 576714870 978762458 174440007 404878648 293068801 664051901 907287392 994929188 402492536 809754750 838793546 876138500 896236866 989039680 110835126 370114942 710072085 767867421 113796248 294928946 195720733 287449489 878739968 909956965 277734449 381083505 981264758 999915092 290753377 767472262 221356762 886993075 918597114 943981401 289736691 420530387 167195126 513560026 548273460 878701954 713252408 787024928 746876809 812663067 873929321 926532551 50919076 722975470 972415599 984560088 394302475 755068985 866490326 960384990 303242717 800328268 608084223 743816742 684370554 909499229 710308612 870757512 884343493 983366650 235617894 751766887 389897987 889743686 652694425 934668683 401332319 475259838 788447956 995131574 765555344 837709072 16797337 52043037 530631801 966772413 752933953 796709536 687169671 871782911 356889184 841094158 713918680 839666604 440276739 615060202 560939290 983744509 515935298 747440593 731054489 841548280 909078276 943558331 394550440 662042441 914723439 933524104 615604592 843186961 156782844 433983295 338560362 660100949 873530773 909472095 713931472 763496327 230134662 370365347 995976779 999781323 402187397 612818938 295182272 704100671 78441733 984205529 342495580 768800438 866016368 983355599 960416604 970556515 146188023 675818643 339006367 529450393 856465233 937403309 684077494 789511393 482555444 863341584 415759388 905044002 989805953 995093335 384035583 591974310 81179731 519522044 620786834 669208052 327916552 452932256 946626397 955227285 939954747 944539031 404302062 655191901 790904183 982907065 964653821 993597146 380799079 852744321 90540259 609735999 810317043 926878339 236633804 306329847 721217712 768221867 848058226 995306141 132503337 649308169 954729236 965393739 936299147 952846604 457533178 790373343 148530170 487364658 842622430 958599919 15712466 41886028 257059956 377349619 492398693 948349266 784578601 901553078 656183752 680967004 878864361 888797891 529663006 875124205 48442455 834855033 505490438 875818189 226808943 437963708 965331 761685155 178222293 767609176 63228224 98598393 911787276 984312014 374819993 407264949 774503102 788837521 668238794 837996901 693126739 721731380 820669795 889996105 163775423 317760642 551976850 985908268 864402491 872110278 358221507 615936203 312678468 911763768 968965310 975617497 575642691 672114291 699588354 996190746 978115295 983231328 391247459 494989079 168608580 428225583 948522120 977152333 420827376 641561238 559111626 936139632 259997039 942536245 704058712 961174806 56801614 274780635 220886551 911111582 378981127 736469973 148642908 698301252 294585737 533093036 941255155 954742251 596776432 666324926 226128284 686152223 508789045 658951932 679590036 747532555 822567159 827380077 294092430 857919180 60525168 91923888 288476633 399076632 317513201 694602740 976758500 988389670 302752774 876636394 493101259 689596944 593754866 769599316 916003498 944313936 612443911 816210189 619471462 751418139 534437184 620016488 782542287 961642973 412885706 688153024 159902669 523986860 454522251 730135556 30297580 244203239 175731681 465196081 690516846 827301593 961191562 971211957 343480009 514219272 217482403 620883693 878995273 935340479 23998487 659378212 914769036 974656317 203182591 499687179 270073993 473094661 756261067 943567541 497323119 846873545 430830373 943464406 351780765 416013230 426726757 985252575 762100896 883685575 957058071 962590449 781151814 845113049 19426730 879050650 287792132 674154300 373656015 688733932 915495488 967635639 808283980 966810183 852731862 901345138 834945487 850299972 850621989 863543054 754536547 885554565 475414117 525424924 984852921 989555715 421708649 714293834 736590022 931834958 303500760 489693996 846571199 884089323 245127073 811751674 236894421 343466187 418324633 699357518 28477635 164833789 872297458 959507437 756194301 786653644 274426922 895116958 773648791 861674467 274453870 362916124 687691341 885632842 712322260 781701153 294957625 852554960 505304603 765820618 613897513 833581434 166422290 858054514 746122873 841009323 748100862 833784319 436859084 521727692 33639529 553441922 121296895 638902623 331946842 912716987 816057824 822135936 781261498 918594521 861526053 867186601 613659180 648324249 645356818 905728488 917576443 917999434 623985506 841254909 25456345 866026563 85469116 451619039 908393337 943679894 107126285 333924096 579730401 937537249 869258244 992782178 874923261 875998202 73218075 766496652 396623196 748285399 911430821 974333505 113924431 934545153 300536856 615502888 947450158 947594580 306946804 794013526 674885732 718491898 694833570 995567674 278085309 788739689 194699336 390266348 702370494 892662535 290639235 481902538 723405825 936829196 178783867 761443256 843455415 972489165 370236573 583005107 150355083 678879273 305691467 472349840 311912841 741270174 779326156 946102955 514226803 538822583 407988841 527500329 971487118 985017854 851513898 864436212 433560255 651566308 618468136 665002953 978953855 991538150 603865198 923524350 847269512 872386551 371895469 806160346 363883833 918674553 819350692 890502562 859876232 953354435 968748254 984139895 782015985 823004845 955167862 967539716 429164178 875558490 863119242 910895552 98784285 492213328 253969927 919108338 312418857 532982101 521483251 557748991 905766320 970328310 883573746 898141064 641533216 656668585 27682839 422539282 192434492 921326917 405417551 796997909 249278857 758744654 513527098 633431013 302197345 450235105 228254315 537231062 384836965 988078526 570878478 723492170 541077741 781492547 439128562 681926260 755254342 964644008 978377776 983524046 940682852 977672750 82440634 407771024 445727366 534116093 47174747 635423790 555186864 983207928 293699190 433150687 747088268 858465000 455125294 976144204 105289172 150044656 72851418 580477595 156755350 524297592 789992200 824927906 197433347 532961525 234260489 585317469 154120529 963392843 673386964 954714562 414939570 420067446 572578588 907615338 465225338 513571873 119002871 463844331 831607124 962622589 677468038 840866217 510390121 644784225 846864629 989200036 573698795 824329099 690516054 970196563 293845629 760655161 296813099 662686255 913527089 959520632 308500798 871752640 13020169 851586135 660499537 702483271 964823761 997326653 144150681 727387614 114098499 411511213 208458058 342121148 672854767 921801234 242147128 566414601 590569 998057713 858482424 898586211 397943723 717375711 83176253 833903649 795443284 882397024 527611571 668344519 98898587 956568208 535878899 594691070 64334258 495931083 683837801 755573933 216583315 892257213 919701835 932637993 411132616 840810779 599194419 722876631 205655876 674450960 632018997 637574706 501313364 914576334 392256877 915999662 584541231 812903682 521068024 981077191 699053811 713648251 168738702 289676578 990831510 994194064 300022614 516515994 416566289 722702439 121783722 460504348 665775875 988383792 979048279 992357482 369826260 924586921 98265085 479937974 746321370 798234892 598078640 994319965 103073841 556286651 122180490 698608173 800013712 896883186 252781448 543074290 913620672 935251329 199627816 529799964 671424089 800300626 339944220 859245929 129068579 716497164 462043119 864124748 693733598 811142853 411820318 565007393 605999082 977409701 94687102 278357316 277113287 398842149 551326502 688620703 259818669 508873950 362264594 390973158 59578150 900493474 614300480 615475530 237650884 419164609 575770933 681595431 339284803 844344379 46374032 798972875 211208143 227731457 282164906 992727161 441023506 981605004 716926286 947882556 386558477 575015921 849535449 986139681 377906639 490909914 678023629 982313869 693554748 864027543 968501807 972543736 483645642 758527296 870358032 874703192 708366943 822499041 45270850 573206580 535758421 701007462 920196477 952264286 875380877 892556200 805773898 819637237 231184048 274786504 100696108 972080742 59188533 712727448 322807913 474752049 25549945 362038309 717266739 958209065 498780581 837768517 808324695 851702057 146131587 826113421 600204945 603371598 21783176 489920992 821217551 848479751 165132530 834490925 998793180 999360686 520657772 522209756 899074609 909136675 501764782 698773299 935984266 964513605 155196078 169802394 515783544 682231691 403899179 917606811 791899095 958991089 160133188 718232799 921069102 956147505 521798039 898787750 734440643 999482226 491422114 570702427 721481710 806509903 232800050 364619520 379789449 542212639 257408634 948860229 164771992 478846289 28944749 143819438 540689883 758850338 808394892 846114018 514116420 733016042 971527783 998094230 19723254 292541825 575788864 927081459 503900712 742723988 564978743 678222945 793464009 877826562 612328189 924278818 19516279 273410276 716345103 940277602 235127337 251968071 762844803 885879905 487324868 624756034 368111210 775492010 234417521 815838757 732882175 814412175 388243574 925220349 955868907 963265588 727532595 767451223 188239307 942798529 615669123 882584809 845053801 972464223 437068277 710384967 992372944 995385985 120581363 958165097 126142637 791066842 862847191 940560243 115222395 605973444 462960428 981198049 268945236 989308670 492427946 954754956 998490434 999662635 921174831 986559447 92050116 988293256 114348408 750280524 590010325 921527868 225717572 859172326 29967615 839415076 86710653 343212874 326766452 734121851 884000814 911794389 79389412 433841892 27182815 44558454 586779373 761926479 708291077 757489863 365063046 410420434 85902438 485107686 724708235 962114552 821007814 986426957 947768261 953596639 374387162 637442270 8218732 788198713 515437381 622255589 8943829 825734568 489601849 904291366 348753335 460174335 204138018 923881404 762157730 837138359 499363102 844376907 313842260 580994881 294890190 977147226 314694010 826208822 897062448 961196034 243795373 364744073 565745405 686019366 669706033 787594349 653027740 912919989 162823052 717334529 550376744 869553008 454299978 590682856 622002339 820030758 213366843 941183696 944810939 959500951 677716786 702698112 116678177 381056193 110266636 668185042 728418549 895193739 621341514 653352053 252019393 374771907 544372054 689635154 413583002 951354035 120076982 314447068 772058065 919324560 405376552 498935258 516326396 970582059 189922593 247118782 674665468 903509278 97440143 366281726 45864266 712176110 125585695 925842539 621236647 632146949 642632215 866423871 597125617 850510611 155342630 967209240 758597861 918935967 901889123 970645678 123600722 507032795 915704813 987968191 935789626 951484297 453605074 712784918 370352873 772172555 378021091 384739131 436258128 556869107 919410498 956819928 182472048 556824717 448914303 617657165 789227905 889323896 229092877 745618321 885084520 965960051 881321321 900541249 597200163 830649076 910710493 983617232 41811378 82745335 99295587 887311240 890268570 923638854 144552404 904529408 394177600 639529329 663923824 731894884 236826839 867140700 52465439 310080742 542349541 731511876 849407735 943649802 541920341 870861540 179696438 838682330 757265897 901940463 57342888 715544272 598918997 874943600 714253620 749170727 246685251 995180019 625788041 840337674 641013593 800312099 128422917 693360885 869852798 912504058 968042432 972606102 926405899 970908522 449066692 552099160 621522074 717180657 947760560 959729529 901617082 971754873 511778372 540872450 941412683 999665052 552393034 564772574 296256868 363114943 91401167 213022041 858324712 988480179 460372200 516061186 274023987 859985476 465532495 840501036 454945875 922267185 958060650 959473628 340994204 585779133 440210766 969749788 432953360 595490013 694968009 748430805 474898153 646640316 866212435 969903953 680530934 681027732 764317274 795175296 129407909 234822776 270458067 635690767 282551119 359340053 852628416 959782510 586706204 605869603 630274048 945948610 406683561 438154631 849571331 986300068 235613697 689465843 371186073 447538500 237936461 872337721 971802370 977124476 761354239 771427946 266908635 588056723 626113235 688927470 736057418 745134970 774339784 901533052 24028238 858040468 332510651 551927548 693704434 839754962 207059989 972551736 18349601 312655536 221027168 256508912 134348605 990766418 990718942 991232848 491360701 949271500 579672915 634676875 101061757 607342264 855885388 935930029 562467723 800254794 230556043 638034020 741495792 909692021 373786959 914623599 585595542 612341053 890565740 987018680 932095041 979938368 260193089 550693224 673023517 969474287 994921450 999942980 958225759 999885403 149288930 688577807 479016292 480623492 161792310 755631531 21388485 947482811 326834711 938408265 885526888 902729708 378086010 437252416 912323385 955430563 643747314 933171099 670486837 803732594 579365769 692534876 552282172 784432431 93417418 708203831 60046216 667832767 509121543 578380353 828242535 830939771 864916007 898972048 317428886 702161382 142041124 274824034 878734768 913166219 407494604 874210737 800927145 896865852 998950768 999462695 568128604 664540058 167376764 466583097 552170136 737266450 93944518 647053574 282520264 698754493 591783939 985614016 371886349 566753339 300455041 655676916 425531190 609187721 450293677 970869978 910673551 920915537 627525690 742089320 238881750 741761803 554317737 813831817 303003366 520003027 812318251 988079440 364282420 722756089 354105979 697672874 329494857 358384365 377928753 823977936 541365943 980456240 501237993 804632368 443752620 792848239 82699081 453597652 279971824 317921406 580120298 947242695 266603455 696930067 732699405 852009743 709709678 933999694 741996177 985610341 886158557 911159454 352162053 712405583 3208435 595516968 756394010 854705172 738238917 837545042 169661436 651083179 246425895 907589061 132183871 556784879 255593739 589264642 499510086 893105548 262935404 621895467 864810954 957135457 475568970 771060464 847719975 916030789 639281739 904452673 507005805 576610366 737685059 988415508 148874919 430260226 794271833 821030558 244558825 987639412 402359520 732575424 432523936 927800005 224936840 854078337 533581779 750123109 821359648 900753773 758309305 891658115 564875845 874599437 833050926 957041658 357025123 663639719 418971469 715127465 468813246 954154386 673725902 867959059 7194642 362510830 738738684 840037382 974405970 979194550 209897663 323322890 22561064 151629149 205511256 375351057 643190596 802230160 811394625 999334935 196470303 828529169 881575476 917735256 297769795 803634315 849701978 920061452 721601400 779884599 563576236 967316716 461309939 583303773 676401239 961491242 48331417 359420484 583177401 765394187 717443796 829779701 592651572 622491014 195296992 314142114 203139856 400111863 630840084 962354318 821810559 907939608 664288949 977235127 421358182 495384966 886841004 964866039 70263143 846594255 864663144 981366231 412096899 629969889 884716737 965005231 834898470 914043954 110956291 264493183 971897616 981971956 57578555 463376323 485746915 613143751 753419716 983650266 943152361 971164895 401669165 959370401 607548593 676363361 609653111 815697249 462121654 778838982 547845986 886240728 292956608 830155517 549863658 821482514 481545321 705762817 956460744 995539334 463205099 922922975 775464368 888592429 634945510 914783503 602108418 961585315 166629921 289185023 520008431 603630989 639873892 994189626 340775006 854700344 108655076 415596069 641127792 835604071 850454497 863257988 448339668 650090831 410601586 550467790 213493038 625809475 548157211 934881359 514698660 755222058 468479825 490695831 947654774 979292824 626575034 920081763 876355861 904914280 721935530 757268708 948931530 968311459 863998236 870764397 514449250 784407987 398470612 815842251 888967194 902330572 188636991 560505100 583039831 795295030 900010952 929437222 895914561 974597591 381934402 953634925 908468048 948569673 705065737 816665136 994666164 998456537 321415385 698593471 405410858 542762691 243107800 884352478 776028675 902281350 549504943 618274589 473921469 483709707 30240656 367779895 99388072 807648046 715796814 957264567 175645297 777057556 853958137 955824840 216588478 760701689 944253136 992462395 368320104 772404580 460187257 475744253 177909016 837279759 201784648 823439733 53578425 154769017 355892710 497053973 997069235 999955389 426780540 868965757 379444792 450399739 248767069 545399645 754898148 765100897 104679075 809552535 743375547 872045413 996665528 996916057 530569877 934682369 947614060 998421095 218427246 605042419 535165302 604271670 362960699 705490263 274986656 763258813 40610529 545070579 544233127 569299755 16890037 687894822 2710561 352377120 573091712 700382792 587155529 686011111 150366637 205635236 522728780 995419945 185533779 385484721 563838964 598249778 812821152 978268039 829932210 915104471 922329968 944227554 561056795 955990106 805101034 956975407 148765405 804914573 353422596 365504142 371884645 878658036 205824333 546143829 190137741 733166955 773930810 971224500 765010201 767790532 690979842 846971785 88508736 138084488 843223656 877830195 526405961 947280433 140252229 728627003 669011517 688252595 605743038 783916732 339663404 418049641 410626962 448624027 2586641 560299151 530449447 985728430 693388440 710370535 171553488 553634984 357946093 650815686 356745487 897366707 375046934 500218146 67217547 979982174 851649172 956801482 970518633 972692996 357865681 393594272 165462959 537268149 829080212 911807332 828951860 971051726 258764835 514072476 684662749 737085489 119578165 478105373 510494182 867908825 14098498 191114234 195403179 419129965 883120711 943268942 214967268 683782453 243443521 704308923 805461185 955769000 829284963 834611155 251214324 405761468 748086854 789430939 982540608 988672567 641918825 995019024 296310274 558832758 54200356 401415763 604291512 721683801 976396357 992853860 335647572 943853684 338859811 395094218 736742863 891842002 102374178 929705876 16668373 847759787 262240099 642407365 819505372 911551145 509374369 967635885 338930139 516680539 772551641 806385830 126992431 900811908 277854128 717058958 22818030 653533833 196361243 680708334 470898207 561585848 109895850 222628487 827240168 971803420 640802139 925008481 156111204 450970547 247271042 361208808 767115674 921261654 326522208 647704152 742537298 754139699 5864619 674485044 781238044 966283223 727712814 959011116 724689830 777051721 874656928 902599366 537100296 822150307 26186261 800253225 816507301 887245910 262992083 574596394 976037417 979999383 253755153 689445743 898322948 906102581 121462445 162017719 978129746 989793778 278923799 820093156 517244985 650034397 221558758 859337108 539096606 700849731 231845585 597587048 991146463 999223130 806925571 985878665 54509305 69242168 195136518 670406393 71798589 844495646 996474356 997190449 510045259 968538721 364980597 579584605 258206812 548208544 881218264 998396779 940621967 951234171 333051118 552147691 48981339 644634846 526178280 923792692 373901580 696557759 153031972 454248282 240155136 737974212 425687894 711715257 127784245 193818936 153956174 387444564 800941393 859982649 404308057 635064241 638310089 654403200 527800591 901564059 823740906 995198513 26206968 247773047 710521421 899987176 536171549 704634531 689324582 701200056 601688971 737916469 654050231 920391892 697907074 923922739 853185420 957626780 125359923 495581198 742694662 894480675 363873312 673029997 518185110 781240597 988577712 992073926 236242167 239222428 1242365 463498702 416051984 994173153 664294125 994970619 952375383 957160144 268610054 365335077 781422311 830587570 419585987 490775041 550011115 666555038 949049543 966323536 995323151 999062993 312877555 846640598 4961795 225032418 866110483 999757043 951847088 984841757 561349380 762206380 764649773 800864595 913944602 997111092 658618707 921488288 787680662 904948962 356488292 666907882 101088790 957103478 312435273 486421340 906088195 921289000 184455252 195884334 343738096 414055246 919784684 921109415 39980997 306445913 628465294 863810549 545077671 984419643 535489792 865481336 174918835 595286992 590165844 932589623 481405262 612438990 785101684 898295222 479770041 590599078 94868486 267456778 587286684 591772742 693380397 754135093 30859064 373930090 64082233 956741127 912555254 934637534 908497692 946616809 45783062 892285521 307194719 650638341 194951601 789045572 856358469 897828552 721245625 959829476 310204749 980040989 792005631 841907315 684367688 925613789 296848566 482145407 758073318 964362697 274757761 683979060 732957475 906514719 656847719 928076773 534725331 614600278 45696047 618559237 201586658 688336653 324568019 422181576 96734085 499447234 439723651 706678604 56916972 506367893 104239342 340848162 594864586 637624075 71778185 822125657 603329135 852827175 607578564 953881675 504460982 601831670 270551123 473734717 809353235 898449416 457629150 809039174 495081887 563957089 27728615 437386748 794845544 981312801 719032267 825779419 719693707 766619594 53283844 361759892 824775668 894775707 445049263 932173184 185713880 377765336 362796810 953924734 673130262 797821825 748301726 923954507 936014687 953230720 993203804 994926685 144009667 358138313 838714110 998235428 496027168 522302806 313411702 833425313 535333736 865900327 315303982 359178903 898523707 966411274 100188419 707382477 644755300 776424669 947978568 977978715 70511476 82286854 902299465 904587645 619122607 762353109 423969831 858801696 818669129 822426721 140642111 978690644 642311776 706185629 575705336 969395872 385286074 986312576 271263914 623163176 547169971 977923372 677610233 729427700 909105354 960081508 62592232 135499027 623468630 904899749 369021784 965614255 989247052 994430590 358937889 711580680 352757030 579679046 352857985 756801542 483211533 724489992 930292152 957717799 409427295 925767191 417313641 881320955 306464944 874124443 517520603 961397833 848946644 940369577 955585289 957996683 289029737 821115047 375094318 472754090 548768405 813916717 656380398 749208787 417625219 962635942 60366653 385220440 883792707 962736581 145449859 916008848 281822587 325000169 294425662 495483169 937798488 956991125 862279014 953551277 978710845 998395659 511310584 846207328 40234074 666514082 427714409 931482487 584544902 720091482 911331812 924496913 214826203 903334948 458565558 459118376 139228388 931479108 69299087 549971880 504564320 698874658 615376490 618397639 912374902 980304784 858615179 999302309 894264921 936637326 143446613 195007032 944014375 959112985 578932219 999184092 253196505 812115253 227116687 320332522 603783494 650857397 492663104 746146152 2342053 758103259 632255140 753741618 62587978 357484390 349640939 862884352 722434557 943352140 21206453 419266719 983391352 999636476 988226682 992166572 680396462 834365852 492796328 805010180 122968068 414454710 809331048 812199896 384768141 693301410 376671255 687950230 41127570 440814366 45317808 954787163 66361186 617778704 70622226 704828518 647385374 768364913 468880525 860363081 998050069 998941592 273364855 747472695 624922926 770044852 275929835 945780342 704109111 797991891 534143478 951928165 693235980 931810318 538612721 877758707 890546144 908871506 162393657 803425774 704789500 775990704 614496700 685526247 182238889 534413575 619172506 713598912 174820106 236086140 495207678 516476775 57113713 588110600 153247983 600654227 850345198 879585641 812643583 865861911 823416012 931412953 533382167 949435350 833770496 920764663 766887581 872968356 978044108 980824632 644098248 819801093 340940614 917458928 623548668 825794889 606886228 611112068 124601588 229477346 323367117 796995467 340931442 801073743 27304626 311375471 98310223 464805897 614602887 701886794 490948809 639752221 95323701 550430564 55205595 611030796 630954867 766734306 644752708 819175850 334731468 826703555 621782749 651929848 837236778 918285231 624682340 635283261 984173514 994322799 59316828 783219801 325038798 521612435 914894170 942797490 229918679 587184878 676939070 851792421 227208888 727378751 875998220 898603156 625552406 992375704 863322972 888464889 697284187 903963253 569517530 893553538 88113273 754265871 864575804 957975572 509886245 789409095 28649844 703794362 961920432 980330763 271566683 397156456 984511648 998009443 909971887 993025243 605424315 646929445 350938201 979658138 395020435 434157378 959322341 980338268 465827885 877402435 779735038 998496586 362710116 954464325 263347424 546514675 571520730 874062405 355710344 976094015 655674809 965300388 324236880 523769678 705373484 850159063 794021710 987232400 319311922 926874513 18306012 592466380 927376272 968180619 974535387 997734210 943198754 950737050 369540086 814576169 82432311 975147249 311024990 627053047 921848693 941189602 551338447 579290156 170255083 710991996 983846108 991103918 802676958 899857735 300259691 855265079 838671745 867447828 423229336 999906019 962558922 975181574 250493688 558790030 294750484 943223325 456573382 992125335 982091921 982720444 546443124 718271694 723690551 976904535 899502636 966469628 283452247 575114966 995066194 999838498 445996973 928442634 13449502 253832360 144058109 823624136 995530938 996736256 940094747 971117450 204677938 475682665 637300772 966294149 154076770 225663018 540713193 918347662 278198086 753442328 850941409 865868613 284001239 709599701 642386826 788618487 414331336 992138219 124956271 139617361 498961162 953263001 101793229 263993390 952962830 990759083 605870300 788123691 209581906 812864533 257625397 515061626 660089231 859240891 413931995 673910267 508393977 971328514 458008531 923884324 780714351 941448527 328865616 634843381 496532069 733475394 926067885 934145531 503266851 862174393 317077233 542399834 349097068 676526510 828622593 878957841 232489508 514471217 859002266 965436690 313836088 804201750 228244361 914821027 678044626 810466502 264487486 372747692 965388832 978020046 920558559 955239661 326721059 659010197 72265245 341512080 893335895 958976604 352683358 944976077 386100214 818736189 433921330 481649626 243156199 243220272 676768180 863335181 368393270 504965466 785005937 876879270 950104364 961805266 851861957 931871657 750524176 949070554 433525352 522657671 559725977 960083717 521957283 614023115 594361094 854136109 165497389 912646942 568671095 739501067 48556342 155018402 428479007 688446040 577021972 688788318 177756344 269999640 437364787 552397103 847675011 947730965 219781541 846717751 917203640 923294708 11089029 178684962 500592171 988878097 781086797 859328497 475161990 923339282 289414827 852795620 455643267 852895003 135384186 975442784 474056669 538733414 456840304 632837221 592265956 747022746 344592839 884010653 855543448 884291603 534348902 710262666 314642393 446490802 379716033 576160852 127389546 251987324 671947277 996723368 938358133 952393152 451740840 713605783 21810041 369031447 109022221 166782100 592282473 985640231 237035542 785749637 21341558 719606904 714894602 887042533 43859326 207643501 964251440 991319101 432846108 680689323 643814930 796830564 11970040 82687236 388908595 680717927 797966138 831101662 357101792 913858743 910238479 941254855 633424504 832137614 391331940 634001118 192006477 896550781 647754028 743013256 403707871 508679917 540565125 659071834 519323133 672022114 600153756 608493536 810029490 988200074 230988560 652635150 87918414 954759390 500888155 623688790 414508581 833118089 960074788 979553120 546410411 553164131 785820913 798893926 437134766 786859657 382800493 911902782 714452973 768260564 388314182 533097635 526274006 850180620 438720914 805361064 183950999 570446486 831123192 872050799 330594002 391779837 417858960 663502738 291676637 757823427 909026473 932181026 213610473 343559773 783434472 930073786 60066391 864399230 512773727 526279945 928186326 947163974 455334271 752439756 157061104 804390578 562021262 831031945 849847047 987615140 99830514 445485511 782751301 997648192 280577813 764193703 481525964 907240902 812023721 902973174 389932254 774013628 585304907 984826635 31583577 959299465 688644133 705465065 650858754 772936610 660171097 904347250 179459224 201954042 323655039 963958085 658376510 895180233 113080327 220482984 194652046 297319137 692097488 849614571 824920235 938402680 723503202 840776988 364689801 983183242 932963228 940615720 938999436 997983141 894358234 969863419 570156304 728241494 377485278 767319596 271921912 834702254 328287653 651456695 176577931 989553963 570442908 784400298 44486776 958862639 423709351 915701885 461663769 862202996 933389739 999433952 77787052 297615569 660021112 686328985 669677382 871270133 904116335 973911799 128085339 999934741 764214899 905103991 472343412 918618260 857922468 963045211 59683205 424637879 623923049 644474201 262990154 789728828 375254380 590890235 389048575 949304229 799740543 983684697 135545657 730301305 996357273 997880738 872347359 879594918 905088113 966698386 955734212 994052218 560806058 685844251 701875177 783749480 668534309 989132085 174189364 693344064 821798080 889356126 674411529 695377710 901648868 953997981 413983807 940521028 950549867 957875469 316706178 904883529 713346258 906790883 519123460 730080664 193520634 729679896 956256157 967536046 882357589 958602323 274012060 825820355 521366740 961775909 693588340 987792884 561170100 580878437 536132879 866944407 715450278 797483091 644391301 644626733 864595277 896584061 589593641 815323123 5957819 783927125 945607523 979366637 278386125 633618132 217972671 780101308 213302818 880679079 399050119 414873334 292656388 590403886 22301025 733105146 677595817 824557829 712282937 892150369 28837685 948782589 136421499 278466970 879772869 996317434 203510482 695154549 224608223 680817499 725272278 800484465 776676164 821521791 842960745 869552687 138806711 360101881 477401773 784525758 137644947 246029155 581949256 836400321 984461376 989381444 610721744 983175378 675579581 850437354 115517216 890597675 166800147 799961961 503019090 960159364 793271404 882045513 629833178 828740047 435391892 526211471 252627672 404025477 43436948 466589472 744719117 785505356 258696924 708203784 358061773 681068852 596985389 906325802 757146659 979887679 412702815 501934315 372578976 418748478 59763521 196710417 203650710 243779181 453132999 935352915 51029412 705461487 549100126 957085872 938031243 988601069 79435436 995100127 570287471 959050010 389380882 922263724 565534322 954391483 902705597 921284203 397136095 817144130 681239725 825456533 341407065 927265324 672110027 990148784 463249718 822244975 506354405 679938142 497090583 805680436 245361611 585538923 846700643 896736037 758984260 906378616 499167986 768887038 10360004 374898883 13381741 737540633 398402292 469520341 780180408 971688570 407643429 577920481 639459935 736354811 813036681 928201055 173901439 576430917 467373058 974712692 589494629 850682258 288424309 538122736 122382892 969311170 336841237 353120503 346697326 590314079 992525902 995551051 484925170 988906770 530784919 926364805 414094876 808973637 744091904 774249206 485771157 925774535 397026914 616893219 175344294 527556666 561900083 746908178 814867610 971943806 176201665 759918949 939210174 953228614 16128110 915762869 778133865 943701699 605806171 759185984 616157740 864285648 674522524 954888565 374082500 537646923 731511811 859409282 611440597 910899448 249634871 479906025 490713386 802468944 182255306 339280665 321652687 416532177 211409515 443922035 468224262 925253855 841637933 933422833 231218433 535823406 90600891 711125446 837743830 840088755 989191642 993490815 291764500 629203237 55254063 970195744 241077239 366565571 813858311 888850284 801799588 848041227 627806178 875888792 885627512 952564572 405056855 896700587 758309410 919887353 640405020 718383646 211409212 624018999 136857180 591255126 797704063 972350658 732524034 798574094 506502001 981460255 344789524 854382751 209330400 500598523 82598637 586070915 537941850 695279134 454882178 615339403 41840719 533575618 360186518 840575238 726817759 745782934 311418207 844161941 789717670 953846419 823305698 862896630 653169562 675018144 238498646 801547765 228938654 448966058 579994646 701106468 79137640 170046926 37925566 300314408 727782720 806334675 547809075 648091816 6026614 554943920 100900322 383384944 26426351 56996395 361797524 382658366 901431281 927544118 246508961 862582138 126346421 950680491 458556950 718300728 856714519 892054681 564170244 877173191 178848531 607898516 342934664 620124043 431677725 723928564 378033870 503226270 289276848 609481493 78964572 389508965 687326340 786638087 751525559 917545632 415272007 652647754 552299881 899771275 271086241 514186953 601467122 797107020 189903142 975956837 475004798 950522340 792826940 922570632 900362186 972950572 102612812 956984911 223321603 519000232 534012064 783726524 342527684 950613856 878319069 885644124 523099446 966130042 433871099 595897859 715781486 996910666 373395993 470190914 712433231 799757627 728301336 853239938 842009460 972977505 719611311 768511500 417821186 885897659 453922314 843371778 845657000 917303516 798728548 817534914 909200 380766593 747479213 856728576 253646142 443009663 697483384 929339883 810446065 898726495 394094071 514245657 896286034 963679824 876837875 934007824 684196707 982298246 468479987 643339660 659743560 996451672 733961009 818935220 204840244 442058000 909678694 985713327 427062351 604747164 409488622 955275838 463064006 803380460 101457085 999608864 714770918 896752848 190043148 339322940 349435564 889040501 212557580 929195345 379386393 734031309 370942628 847857452 603382716 769261646 685300844 847027306 403126045 514371116 156579745 931125091 213100997 712342419 500751167 862428232 253663177 986034578 260389055 681482348 622458716 891915444 868588670 960942377 351585370 891214514 472699173 769914332 949178126 998702800 479738402 647960332 642378914 782380879 183330482 238237309 877409794 961178207 31877906 901390875 763222335 787045579 182311301 985363839 492151787 792215391 594126925 892522979 474750270 864511664 548385240 663968520 30970037 546981304 568914381 615401736 445007316 916679993 891832855 937898788 366793508 508800691 916379110 952467684 913762228 966861281 39157895 321206344 59670360 110666813 969634695 988922184 890167191 984015300 636809939 638140359 652753215 836086908 831885545 959287021 300219417 853898557 248266263 778124509 709954217 891844704 994120465 997603526 552135325 913960356 23262487 803556505 824375684 944524058 221283252 926236715 109572102 583936147 778440622 855084756 453726290 928689058 702903120 798421291 634374546 708084411 617543158 825410848 295192091 891387922 766921281 801595114 486120932 660632009 251465595 484929175 33440501 845851255 83534585 683992180 398878859 530796949 501510207 801880489 947601430 957434349 295133300 818069121 606097382 683965380 962468442 983445664 508304060 724585691 415456 48966236 690927540 974698138 520250028 564826828 157423385 930224172 191058152 739975043 455519907 772415578 552438418 711921609 255984214 924854004 334081544 842489146 109863755 151842315 211797144 884845857 220789871 917479293 888627319 964812878 793484285 827921954 437724865 571558176 666320024 833813902 56951250 74102063 963844768 988845535 383912957 499685687 949883007 953803681 430681016 691009509 539124952 948792844 282640851 612005795 804935805 918771220 836816821 942956923 50263668 929572962 792771034 971305765 615525672 765769122 734882018 836954470 515860064 937811885 953889747 998675539 195860468 610416789 293384634 708506552 216662002 820227767 20048001 128650891 351255225 641937647 506467721 861291173 903466177 938239778 507024352 866506087 700315222 817316316 949574478 996390203 329301194 796327962 459189913 709192227 171211274 823116014 841462013 959878820 377353180 417728674 328341950 604881663 281808133 885834857 990975382 991951850 833795144 845302935 765883812 856608320 452793121 772187828 933785843 967052292 736021974 824723888 956938798 967186236 340975337 771595353 755466669 813407335 772565129 802885688 751260532 984894838 219271322 419693171 109812791 279562878 41479017 956290767 571627853 619573393 545793188 789663292 822603575 941744056 636220797 715748018 538994911 555303633 437847205 543796405 650823155 996060822 309295181 977994104 33588170 614580516 929387163 960348756 134472252 888298483 126971254 672508858 630285300 961771769 895984886 923644344 180861134 328182107 977249337 996263290 560601947 810178830 84255490 764993009 709484933 899016165 27332417 76345796 491405839 698744979 522233984 992129832 759361763 933479096 7341599 667745441 240995705 632803942 6726897 77828771 994627799 997373207 724515023 936091611 553286794 923215520 128711852 442057220 98050862 953506396 696079907 826774396 419618379 463376782 703196971 868332886 288426521 722831885 867726396 952960621 896301484 950798380 817269732 830450861 25019917 679970609 799879271 838720566 231333877 937278666 199251272 844290542 66987606 424313214 167747036 720845972 578799644 632546680 96617550 188854929 841002050 963953620 270488255 900252195 718644795 802450982 868770439 941608181 254765497 381702905 461587113 673399335 344298420 473786431 850511916 907200753 822955400 848747965 221946113 540664381 81629625 601436414 783812294 862005763 510331912 515200024 64809132 942585245 634743507 736739599 410579786 833699123 919824 187184377 874423430 966094701 111760130 136896202 392132467 964165768 765627608 791300679 230106686 683159314 611167370 807419129 883567252 915532933 754735362 758931487 341409225 887859339 192817474 564473678 884416538 912594869 96505244 209580880 177785080 621622925 461109317 656176542 850680702 860999786 806315136 982980858 342628764 752100685 722816447 934995654 724855696 807964413 764935703 967045251 310596167 992369713 558739786 786322400 116853102 615857303 190151882 263957189 556177274 571931126 832109239 982851894 453974451 899087367 732969418 868384955 799579981 963086132 176489902 450452844 924107374 960093702 881074048 957462487 240772035 331424533 210493489 721340838 186251089 495132560 385532859 980757385 193993222 679167360 38199305 271245740 979145288 998173786 166556964 506028286 801255504 972820628 728022228 864190754 972342915 992890318 690615133 774378181 764805736 771290899 749863918 752431070 801015607 870323132 260830694 967734097 168183452 397554164 37415655 809923916 406234837 711444705 952390795 968301480 732505080 771425409 227035953 347776371 514966147 925682040 610545774 636451272 249457489 735254145 980145559 999811683 389934488 512969234 494357719 668462933 999257319 999262655 6697711 445532483 251066239 847405792 68106244 282792550 997199653 997316811 525772828 780678196 280835995 552478250 547583686 682030517 57994981 324283484 416550938 521839889 63015309 285511152 405171823 779134632 875190839 881862589 494081996 540776269 320328364 346901121 273169435 417981263 995376806 999101191 924731204 971925091 878057757 988977338 784598937 788383270 584732508 936619967 117400847 341793405 180355299 263986974 165782214 361625555 343616621 785245190 52848286 508176759 558355186 965255879 158547607 856267606 409457688 676419267 729485704 783431503 824698350 929886128 447775927 483023603 708802613 904131232 211652846 641298979 243204425 736544049 608844733 741215254 461404905 607168757 251785790 267560279 30579797 675406360 267457 627070004 357644632 794367188 25021296 481193802 3947640 825188739 253542347 635170653 531335516 756689219 608882487 757107189 283788554 927783567 828051678 975313369 676214878 778459849 429569658 896270560 255396678 969719638 120086107 793361558 863222144 923197687 44887322 821229375 226019971 860607083 203205355 967021804 927291132 956478633 758475714 827917030 318894230 908114846 989781294 990359161 448846645 899662345 912342838 973128369 650272633 881684745 993682969 999418048 300790157 557289202 952912065 988139041 707294897 710350096 895658866 958495798 8722265 649529185 270313684 556922190 95025709 821907121 621118023 929501649 628171831 819902276 242875433 580112221 634064310 982409059 734910273 785372037 139844724 351923246 59456528 133870494 435501377 905798557 954560790 991387699 442226813 548778905 144233091 500949609 313854376 893074797 546634649 880588530 363770304 563810751 950170050 962575111 587310852 810527516 687971694 978870881 286031150 488560000 325148817 333347122 65483224 375272931 110564689 807857459 623314846 728832821 740705009 960495720 675091640 709475024 895483882 909647991 145507270 802361079 666633114 763120790 677885148 886066748 167575964 631041043 630568891 936622010 49811855 783518942 585396783 968316799 11472174 914138683 416865567 600941109 880226599 968045510 248697367 664921265 872329053 915357725 481745502 547074800 608863244 790270730 6569506 982094069 469589919 973925560 909462374 967137349 756858975 956424528 405297062 552753896 876488025 916700182 879049996 935384745 6297398 451462036 755159384 942660600 289900935 564088444 447308891 750146733 984186586 996525228 152490702 569811880 916300609 963345549 34445379 210761990 804192253 907740712 893984830 950460908 906569324 936417937 803359388 917932354 93607922 985702153 888160396 944174512 297849987 585945405 686208754 930302033 529944803 565762171 674477498 717668535 253668008 608284582 149146301 722488549 495122415 899902355 16317939 868511315 347085713 787934596 442550179 788753631 230153509 481251266 726706903 947403260 827188781 983555444 597409422 813929298 183438593 268793099 349216394 843775518 645399211 706010607 661656950 808864711 607516867 735947362 173305860 326377885 866032392 957962914 654070859 932202318 663518796 810994447 422260403 476602148 343836397 510517345 550009046 772058838 871957182 957023546 683773036 701718415 797315195 820868666 193486654 223897876 333526692 970786044 942864670 994178191 112026265 339014473 644014221 822860376 881428571 895025645 193917954 763642309 736087316 775568353 649341982 948263283 826009689 875844989 501399519 694685106 317243601 887627847 46224205 179925696 137814478 200006266 676603662 942031124 789440809 878087520 916407349 928781270 3246396 730780797 956916187 979493197 173234494 415692355 719926511 790352241 232997625 663244835 349657433 461283913 814993294 816811937 95612917 995648730 31224560 883484968 429925976 442256424 584216019 909120251 124028708 928348691 913942279 947908281 719557212 953918050 416906866 778185053 94716087 207342895 286217530 702021134 804538213 892980973 294459179 544427060 470890407 726163079 948856928 963339476 71604067 551674580 688922493 886997745 279809634 666464087 463166024 773534918 303822475 439807018 753176952 821244108 12671792 459525315 44158380 535065110 475886083 954966291 968170327 993628846 305449220 938752817 196054157 416944861 280633468 515690657 187406664 569580520 874020365 915598204 60982534 907368390 21727243 166631091 411115945 964173241 248750089 743752223 216985945 434664187 716790257 991466070 97138913 197610447 170496147 498211895 997711885 998850198 190625748 382665182 746204108 913124994 293999510 444092385 452432627 710415162 744134848 784911666 607533752 615903976 232571168 988594979 522434694 740765828 527864760 726330460 263407928 928218861 542856779 703997148 80595946 518958637 443560873 981483827 616313642 850729318 422376954 944401721 87601785 150396085 827622215 861314251 393268437 881342458 123814745 508867853 219277527 970299496 659785893 767736808 651526619 700680502 982654555 998945975 448009184 598139049 67637448 747038314 555098855 763957686 688004292 968019414 577550869 921533395 414532340 523345851 438557949 822399106 573787393 933499797 820959614 830601671 930974158 996722451 467520135 477404005 453365801 875842013 937325094 983523798 216330199 788921793 849862265 888332747 795349744 953422170 563567282 948021762 605672395 889279011 632815135 971153384 955838506 991036147 587118193 872981991 462594299 857771373 727226025 862183409 669495525 763905853 157977541 883630927 574826270 824807888 357392982 787663324 160459833 276457820 673357346 932347768 496839828 551844890 411450791 784770682 292296002 928482015 63864049 496332972 557343128 769733554 59281833 63970420 907187918 952668237 261071226 521374230 665202132 801686113 37553316 377604843 554133208 994941649 371954 693405239 666623919 864566183 939049880 961631055 720949339 802971240 79097857 263775519 825963739 863521924 169389761 728377452 521475765 658477761 747680982 975980009 745293182 787226100 137134181 917306310 128757727 142420291 270658337 314580954 362601996 662363856 698477210 826334424 646133202 718894728 693658904 857310580 491767540 888309505 289488493 938447100 921069716 990647882 975978595 984705929 540593748 986008589 637613981 817518894 180576198 443246167 252690608 479268405 805788702 868103391 434392460 738783892 434995444 834379520 873920401 876918960 348277938 735408319 538444807 939647299 187737764 843135567 794882193 831519701 967407427 972750099 629317341 905283509 137815335 627458337 619450967 984957319 208216312 908706460 437223753 526357295 372029390 928722837 922564467 949805074 436760603 977622375 954220410 955713560 186424174 438416700 670273792 725340772 471093580 591938188 69100139 427271028 148790178 902165383 434546235 917845387 75684657 251724613 800714056 819358614 42073160 98355489 506903179 817801405 827520768 857307111 726171764 979216637 343287259 778283980 853231239 876429323 561665999 675110457 627638071 781119429 670777889 785120701 956711472 972257213 517560856 619377563 827206911 874557166 151909093 155256179 962642587 973159933 611551495 888148524 370496403 688955206 155690517 957180538 833413604 924336404 656815620 694873077 136418601 270009234 467306888 682655223 232344109 610911864 707380658 797574568 35979834 276168204 646307637 717692767 269223249 599267905 627457647 852377588 177275017 996890779 483284476 657618881 780546729 863637698 796227830 942583612 119151748 713576707 920742547 934811829 540096678 541022225 442720449 641677273 630857830 984650492 193978310 829720473 123630398 370732885 916933042 925787430 120888902 419290398 431510347 814854451 343191135 647352683 962489771 995233859 968636151 972252858 834502525 975836971 385000475 549466347 489429847 549043383 968573567 986361886 764126158 969705603 715043619 734834242 737939811 898987239 268999986 548538424 246260603 904674251 462045708 712349107 506258023 997080906 422923752 916983899 786847708 828260086 41668979 265196975 96098927 397430950 967978330 990784951 323148998 968328843 278758258 350279182 914770667 986863427 386978752 579562294 612930957 893193862 787351449 818861225 162342867 325305976 326930944 703732788 153213204 790152654 556323288 984214055 872106653 972978785 601955158 890600502 383979566 972968708 124393431 256949613 757453401 893119395 926265360 935505922 824364059 908708640 868004532 893251461 510231759 566194638 265909904 564571607 280894317 467009694 170213928 848676499 129781883 778814631 76865083 518937646 718207980 961318070 631723416 936125961 163955688 206673636 392596656 451220562 51040536 820482903 687972643 953609718 963816326 981438123 887169719 995100641 398869242 796740384 920146570 949536832 446686175 523779578 581122681 630749154 426445509 747692642 926959540 964203944 835805905 874433590 71412944 811752824 95963451 821313045 492753808 679789245 324796638 925355347 933679524 999857310 768260875 981003338 20962144 744364618 930731524 966918170 421190608 863722334 749431192 913519374 727184406 964817514 249953447 546725244 344266367 395621491 592486189 637692721 401667508 635331607 980772997 992506940 262543906 376670587 414447807 842576845 582941016 675216524 504388110 987499419 609213376 981042162 616951368 956019438 731583365 938673067 144962475 548727504 486172387 636980256 695523906 716112395 565656540 832530101 467681917 719675690 666502105 938620397 363738877 657916567 419489909 808101775 725738232 952644386 714013783 784667136 62351613 566122979 971637193 994088236 386823607 966039867 932467729 933287773 479700263 538842895 556218582 764633659 365664310 777714622 563411733 610675283 891568432 906082765 455530178 503634527 471339548 920920941 97541159 200506784 630798403 767024105 361495225 459284218 761318420 892466518 421953698 956598095 942615766 996824482 537049204 869056025 284878259 927908997 964856384 982140103 757914563 900067193 133523458 325497276 125465941 150917638 64600258 780686573 178392847 216478568 792280473 951978185 119754539 545226868 177343314 886935844 139292993 509195525 328956300 772912811 792454927 965754133 776586005 965907065 328035375 532096199 207534190 248793936 728864320 880627742 68294726 381275047 152103694 586951635 403027910 523299089 472976115 553189132 72342257 488508482 310081484 840873845 489501670 976459613 662641361 714938914 756743256 930517233 941138216 945086842 298635184 762381960 770877205 954623622 787297600 907884098 4358853 353514679 206786515 327349831 944210587 957633524 423989520 431805129 841367129 863974231 630787316 778125497 65379604 133978860 113998875 177845551 681374984 850588736 76674633 878289840 543559328 671633199 447191113 950502936 510103503 767408116 337119667 943171403 721504833 913888536 331619502 574849296 226799388 561431030 435475089 789996935 933731778 998076874 38466111 539659424 871424580 975486574 853057684 992254029 661865072 773010077 61911056 150119506 752714819 809438053 943015923 995067593 616176545 942939176 382573470 746824316 583556104 938427656 21166575 126249069 130740473 174813040 125164575 319467681 622155424 767396262 621556322 959101460 12472116 553858650 741841532 997665458 731514009 961550732 463219417 754128022 439170512 898561794 545633582 551014749 158979648 292611773 382398020 929254344 30698285 437431246 810557480 852136268 431828819 472554845 413228412 511246538 931498162 993903701 149246539 627618280 868112270 978900112 925246993 991045753 438870372 772479253 336804656 952580994 777789635 885938187 840559134 939948952 633023221 802486001 669222226 843965985 447737384 505229463 582735009 942977433 372471312 383131816 977053263 993006950 463698203 595644076 544139461 880154564 836451619 877178597 180727430 638175525 833141609 857181753 868466254 951763310 567092865 776180069 573320216 863679772 895134652 898010246 746133931 902584638 975199895 999827726 175956311 447299891 164428933 168219276 339811755 846129930 311986303 920601230 883413099 884243892 341040170 584190080 295566988 965009100 756482364 856232251 97191568 941229305 156587429 165235285 400548308 480211909 751768455 794187782 662276594 772072458 852173719 893565297 852570770 944681365 992299826 995725580 86617611 140679976 485621350 620843598 612402776 950438956 493538217 879797666 341061202 921160466 598673649 810419768 847682986 918766434 879648894 969444598 398570805 821491394 58005165 97422349 234835728 867757016 145997562 163255545 828277230 992512786 664778526 945572187 843609978 917950446 313242180 441108939 583718368 912094982 195435693 828815001 933128714 989870798 25350088 848222297 494560379 895843976 707972677 943098852 560272328 904889944 10231424 537142593 852914140 916041310 227808652 773951396 560203023 691245441 935635601 976020878 542075808 831949230 339415183 952698626 473681157 969721925 930307377 957906676 110537688 919603024 341765253 659266362 405856143 900303866 593328348 651149941 871742015 964649060 434277030 692631968 329110156 553511173 148299931 303986846 119889385 576312490 337591835 780532381 757526719 997656936 771442199 926806854 28618296 381102200 363370964 501792277 244983716 573495119 325948807 461231685 485404047 576206815 667814861 998118937 440236752 482222590 118991432 785915529 65017215 808471853 501182548 812913650 933989025 957949495 275884030 997815554 403067693 756489602 128292615 146349621 957974903 960859657 958069010 965857849 822305414 899659368 420924618 648859052 44887989 613964807 691203363 985734815 178968012 448377966 546073455 752245401 290137113 889294049 695520491 886560260 895463688 946432341 266601772 271984453 939160937 957442969 435191391 841848219 610254378 849978329 980676639 999392988 99735838 292082206 779847993 905440581 62756673 822751719 927246532 992381385 557760228 995980767 447043963 547807421 880162436 980040716 410121712 890162161 714919851 949196159 773745070 993672528 747906784 869482266 963328241 991707369 373477639 947881287 681017348 761598325 267815995 952279057 337399029 565421476 7266844 501003352 225028646 952839617 229731835 960727695 104535539 556387988 885682232 946457373 678287463 805882165 266133208 727615444 636008775 697301243 603111494 980484503 413903877 491772528 550550155 666829380 462033321 939156368 218191842 994270056 945393947 979285130 448603431 841729192 44344144 171307479 211570299 635105151 362225853 965853795 999004061 999673030 32993609 169395350 850175396 866654719 498481530 710159431 36422712 149399053 602760275 920400311 296151620 367024045 9102794 457257804 88111705 291506454 24276800 201663674 951216755 981063273 684999156 735597841 882673463 919652294 42057367 767157229 272177325 633380028 746872026 978758162 342021213 546029766 265097529 981101000 260071509 580900324 661656513 771768845 498475783 733446487 513237355 803099730 775545583 806349085 965153164 974999480 24038345 67275442 836172006 936967541 79620316 298998272 642716153 935474325 187865340 303899317 496024102 851948966 244235410 948494515 610068341 639334573 721581512 870994794 159972589 917716145 564112536 810101947 457664468 835436278 924164951 963490879 788793334 954104800 330750965 874079291 119911204 873370538 63843796 479710823 382865772 854278165 781556232 824168175 648780652 979222172 898944071 908777288 309998805 373606788 221272884 791835337 296859418 809306508 295325957 534522461 858061645 950453379 46900973 446987028 397484003 629040276 31157097 669744397 631493049 817449120 186258629 636016881 438196812 809403002 562879193 978706584 888654856 960170133 615974568 821797063 129104092 314077724 641362947 727147582 864530094 912071717 778988820 790243829 369594513 939958870 342411098 964831984 309606300 348002117 327681307 420261063 175383715 610364773 332292886 800671721 405711188 823487844 197256614 280010972 676271668 921022421 165682910 177417227 199422653 493947678 418351353 628425981 701032139 882864949 194468421 638611228 573912477 896784683 637494592 968918266 886375117 977254115 510043963 989617802 754930115 899718721 935269063 958034707 791084832 913825657 92186140 887730962 100730635 832391698 359535156 640243130 552980373 783712510 587606585 807066007 137812869 423793076 836184033 893722826 955268006 972637290 613126535 635523915 392092785 423206791 672123882 856194269 644341664 845673526 620945858 830483409 706669004 820880213 926808098 932296654 866024572 867023601 461562972 554234210 995397779 998857031 641121976 899135582 313999925 987782632 962429107 993598434 802909351 905370899 701826981 737907780 598995242 839480747 969308349 990304723 940537108 976442131 997345637 999094240 606328390 904265325 768276637 897059154 56170315 273628163 369721982 583205558 563917296 996387868 703437397 794085900 384567877 884615264 58529116 70613059 244301217 725809831 303011770 365814993 910129237 955665163 720692864 740147577 615344396 935104339 358031223 967261100 162115209 837041110 429251570 800293289 687139362 709844076 679862428 892464664 490944666 653280757 980216317 985301466 458564965 968413976 88998082 96114590 993015980 998280573 918400069 923745502 593017613 670263343 547678624 932591691 352807985 640578440 987210336 989467738 292804816 857277750 567399070 632149221 752381388 879744594 589168513 891605452 266673325 518673686 594216454 663107307 17505916 142401343 89068423 908703593 212230360 482432682 345404781 372874243 242297660 537224759 221377369 254953786 488599226 859345897 904272988 973129297 583299987 861274427 121706366 496766253 423319051 465739542 648023305 896663611 856670474 980606024 511714876 822404563 58025868 443085325 191789923 298798747 25485203 583140814 849484859 949348862 426188195 947575943 71217224 699748330 21559084 587099219 384971344 782792258 346642743 492526776 29737132 241436907 984660337 989611529 805883561 964797631 372913782 962506557 30959312 69270642 646105532 904766751 382435551 921307708 1778046 538220442 575329781 911436135 788169709 791417025 159289435 759559438 286670670 806081003 788067636 947963631 707286580 743600910 126759232 975584946 782080317 815040131 324745576 341753489 285410667 936749207 108100304 261589180 401051042 578932079 576830549 932172627 450384025 628972862 684288629 956124891 175284748 767297196 409105903 726745697 221219880 862604967 912627354 930018589 728241690 830844747 787203226 930582167 161774341 741499508 802177895 827745005 459486839 789677780 996222133 997245982 181096790 309875122 872600790 956008318 553826108 902853573 41242579 70329997 562753476 922054398 918658886 933714040 321138011 779957593 816589038 864081118 581010672 825701280 806436683 861726492 925702869 954553048 898535788 906539771 321890937 578929347 946034665 973866081 401459449 773656752 902906203 914959509 78253993 332610881 309434740 840123506 330984617 503502129 638498929 882939659 244250387 734413045 830576631 901088112 76184953 343563673 752894837 986075188 811973471 948125707 508348142 970994904 856230432 962331500 158857483 951103256 812816746 855281382 676757586 922860031 844249583 910312738 674590384 900850016 409023970 529156747 625216844 833887271 643492333 854395541 915116109 995085099 549367004 909379122 815864747 949851736 131993239 441420145 210679557 974704586 968512097 981575386 787225489 973070068 48258736 627777525 395737521 476930880 922273995 999857537 825131059 915907280 57587428 888882969 487681797 628870168 94024414 557928648 960690877 974454973 166645880 837334296 931423145 955959867 854765815 861564303 961142918 964197410 372826530 656513511 896941426 936556282 113598966 228273706 986045066 987548373 283618961 697333216 209320836 319884073 232506469 973244709 854814246 899170819 102352441 851163808 347932597 649396571 474974540 868478980 806267514 877340984 812283197 818671275 814920979 960622896 294503976 495586256 4045078 752408400 596041147 788658077 275252390 690480569 33390361 301879072 585247833 688863970 277314557 736655673 18654494 745029715 711363475 878770538 884931679 887886717 702912430 853288514 55185524 79511877 335895869 884590570 533780752 988435259 632976912 902763898 238189419 705749097 623845381 903342899 944279974 993401493 688457212 939391037 396366294 785627202 498828807 538090971 436681104 463654884 883653692 928557145 636618562 908899880 82942332 419512219 945516732 960099161 395172495 829891867 263147165 286921341 297314614 403561434 923099555 995808260 712168748 834421460 617313859 907855623 381706360 641659158 572697093 706607139 194579681 783008058 198781602 393191544 704390525 711671038 730897718 881628170 967311986 975734659 466880601 853903157 591665351 766751136 179143675 226404597 865604712 930521217 261699568 495154050 535324855 657260892 673062356 948043800 263373987 807816006 338288708 577930485 313374923 412966597 667348723 940446167 415772584 658076281 292990275 593437500 912391727 913664705 879735005 887319642 980650273 994113657 488527243 629540556 583770334 966391959 851324093 952286097 840970177 869122039 522977838 631655052 893931991 987824203 737385300 959624063 579708467 787634322 481869577 970565602 749217528 862125648 484426817 722031983 586455087 997784973 215369657 296972136 438722584 468303653 193353402 826548838 372785696 517278223 295823757 522294917 987551957 992723627 753594832 790208768 634544130 781528429 597930228 715837474 571710268 778243065 373727064 425179505 823289492 962123749 42462943 879841462 92660475 145597868 576615780 710303117 403328528 639454597 441351998 792864997 477681652 677298368 200301596 791164616 587999461 696170203 446883423 721398900 396051942 666397476 565830696 621841908 934518495 962281030 433515959 588356597 311728374 581251502 950232631 951991264 880910864 956778560 156885636 244823286 497878377 735288665 207689734 749806843 383824980 856547326 65848066 875686104 160442488 490877918 963236711 984191581 284197480 509094216 649456906 818387931 364691873 852810543 76724949 789891644 628007531 764921420 252883808 761106227 841430283 987135529 571120351 976597103 78654258 746193756 337713160 568980336 442521989 671676359 896351281 912163839 237987490 646614362 528505640 773725511 558665906 595033528 239666986 753818437 605504623 834588980 660326239 816247726 806682913 927707912 813356430 867449054 365318354 445632602 639407282 935863552 679582168 975704170 33008712 948775810 940597669 957076191 884261575 928602632 210902241 549553053 606837508 788672417 113318074 695179526 852020974 983747894 371250783 385793701 351842641 533535052 287884772 526227498 283164737 356901292 988819972 995520326 470932308 547742548 686112625 992293202 584049166 628523395 116313067 184849932 709696786 960081215 228941604 867752404 861735280 888282503 356843483 622019174 629815082 702971209 240082015 622495848 531305473 609699000 962087900 962686121 888430066 993066018 288402144 917589277 858127274 861154561 643150907 855825923 893562293 958741558 499695968 506507166 20999419 856401439 990677161 996369686 423319413 933128915 83765593 556433125 867594935 875612236 876186788 941729354 558383612 892195896 778862007 987838874 643417534 960878107 695451240 903005557 505322386 952364665 860760498 960171051 920880424 989873939 908195294 976422345 140698169 473457580 944660369 953547469 846163840 970235285 28962213 756018444 780101973 951111546 302709227 512791104 321739045 351258401 595762730 895130088 218314265 518196069 584901078 973209999 73219830 764459776 542875984 960677605 174462568 793796990 429438631 746875626 762817992 965252645 319822627 844736633 658168733 872762632 749368661 794410875 832764568 951574765 230984557 719963876 228375228 379596894 331871018 562870607 385455247 490527250 656534691 944391288 692754744 891486308 111259870 604373700 709090211 961384148 550276327 808944863 806795773 919611941 432021634 913673274 341892020 615177807 370880707 601104210 557584602 849550913 851947335 854815152 151171453 421762265 731887969 940529629 426296955 908437914 47023646 873834242 851446631 889947788 678080856 731635461 828692002 985397042 146623408 247624516 793417896 874917496 58914207 927824853 469249467 602409971 139180369 901668128 986327266 993864878 793690264 898962051 854450318 940412659 598507405 691864771 252539830 684427397 689652290 863039632 226012107 599825502 71245628 797925308 192495272 472512089 467747399 996594223 876106415 892652343 708464283 939751855 814488549 985912723 519992411 854651382 728600286 771436515 629607692 938038182 502645512 574747005 587378261 877576799 735071217 922153739 780640937 800080006 795897114 867353200 790427233 851993877 404562535 755256230 688458357 711045990 996463091 999950946 246506692 918026979 397567207 947901624 443190084 621851284 627136077 830462956 728244116 913489259 133447949 395128495 12606783 443283315 517904797 889902155 159760326 320012263 549145794 870800639 507761039 667489742 636967692 730100678 707260451 992305861 239759072 282268350 521227028 690381723 713014960 735258940 862369452 949671699 811349895 912001171 120186822 791690738 262714575 544591752 851765097 927073371 101179878 988481069 882892452 898350889 713392249 730724547 208949654 379272268 189522978 932774478 92268893 323381266 13313970 804947998 665950377 769494052 476017807 542224794 562032744 889123717 286615719 394590852 974282024 979201432 24747476 532725032 398219251 989143555 240390536 541125612 250971414 470828212 647426377 925200519 597238670 986900314 864551755 884356541 69006249 953664941 189264464 569414520 543405378 558009071 252189763 954174603 715897012 911175173 457856123 872066006 497496995 866672079 979117350 983156562 324688032 958598665 360668370 885782276 958545582 992745487 333410742 501875315 225983377 299620555 742064715 856475919 765035701 818285420 69842276 862919980 405484393 971088288 841635278 977880506 913047156 977368386 383997105 892014973 510653619 600406474 816328258 997280048 161317124 456390546 690587896 803553665 284073921 309934858 911175830 950356413 180468182 488288966 752980829 826987621 260568856 355762963 36628980 579239009 539462755 717679942 58212951 192161856 457129911 703320496 473247279 997816485 730629856 811120852 822305281 983354443 202873842 411216895 568357460 583045740 51724402 464939234 107888583 756340965 814162766 954580057 521635985 828292791 136081662 770748057 961296629 973679820 136239659 569031912 538193974 581733029 493556959 857919580 120843706 296448981 915350898 957449156 979181160 979299846 548532682 601071177 14620065 898926856 407999942 678113872 424430659 698648723 259206822 453976297 832052837 954319684 918996597 921473760 939788549 961523070 574880440 983009319 275043882 875205197 396624794 874353067 760449441 816942207 428682579 707751020 853450731 882221942 36501200 834195139 784662215 977464424 961712365 986152228 871450085 961309062 490712819 702151069 448820397 823615141 983272679 983787707 694004174 988934280 447202120 751410130 37886911 375705706 813963652 945167598 193808244 733184858 120481468 268512024 971519167 972666598 919376466 977386530 634093035 826951901 559339053 778734253 897991720 934266165 555018780 624281236 739831488 994454077 138408239 331053277 724510830 839823284 744147464 761525034 961199320 969380693 309923210 334031578 869173323 997370279 528458338 792253842 161001316 757554781 320090297 643714992 80882933 903002203 117964863 502699534 68440011 359500727 189299439 887877024 382606996 900435165 642471125 907537704 341459261 639656267 20622744 357526448 684474180 741859574 265507140 833817148 394448369 947666667 54387857 966823313 980068362 995971355 258128206 970543394 901734699 902871068 11788933 209237424 307679678 624391721 815518479 816617117 712610100 734975021 904113779 972498017 712507333 985128705 711978008 986351003 529188409 674990371 464591465 794074249 513682220 852009898 341144956 789263242 400928961 494159621 821927160 824836742 865510518 881316513 551409805 687010136 791239366 909989827 685841720 935188384 747400680 920002849 957810927 979972356 68733214 711473113 609659932 692570798 664434129 761918271 617933271 635737886 944433439 983341445 542307296 673311580 986346933 990257369 198469401 526629906 857929700 874840000 871404811 921092819 766477256 782227270 734286750 939807726 369462517 506790526 893546650 972847109 937250152 990472891 803586997 887306068 45998458 621992195 470135686 611586861 328090180 613503662 175815262 945295440 607579455 850379928 619721028 963642892 962824171 982701923 128972013 397956957 591976750 941907722 519573407 597546435 167292531 168209288 97113165 711127197 804666203 839434914 379379795 864660935 665875906 805409793 804161774 872051546 434869737 783265272 647913617 917380183 720665321 879212235 869730831 928357200 937670070 992696409 280947844 340474809 644857287 727198835 164446926 474895941 395008191 902128750 791514399 998386025 208233898 219752582 908067259 977716734 158160042 862102268 392039662 494810847 73223158 787930939 218601556 851963278 639836626 825104571 40006796 138329667 615482116 994991307 167532568 871183439 775218967 961626008 701242672 817522779 7619216 962419190 384376646 996334917 238356248 822681580 144746673 770352706 656178263 846837416 371354730 622833777 620930792 994653334 266686465 472657565 361835574 747742439 511515424 851971456 405775469 932285970 857269965 984218763 967823563 968691961 762201291 869752195 810436233 921021803 286315884 412400984 612953534 889979926 384239228 810177996 864401994 887910280 976894080 994309836 403310856 418604692 241267589 995428259 948354100 958120117 590718396 705722671 603964945 983852888 25497254 828109094 372933099 506157121 585096506 989025735 975577501 981138795 617115105 948015430 591093492 934713091 298896645 545978191 86298065 593898745 527993465 714747922 762289383 775023411 914317207 961124979 122189347 459630252 696991986 913320902 232468786 450541776 535703320 545532566 938615244 979976701 692363092 989290355 65116585 529616370 893775518 934760234 229405577 418711133 144338487 904681369 387357359 711186876 633233821 837916872 797964291 998311190 257120972 678425612 588962074 977805475 454576966 679026459 804526180 900956035 572415912 626003890 624256851 872049762 675186185 821182193 530688896 737902298 697622485 791478745 252066671 409498926 232559541 921527160 932250307 962327700 173690613 908575282 233051101 944437729 719269131 959827555 542241558 680570858 506410814 748662397 201367979 648791348 370018741 623489985 766928134 826570997 623795656 979841527 921802585 933996426 380907670 423766515 786470087 817606780 621556497 813225191 526028217 878734671 818946632 937173050 829822301 858378374 834951249 862566532 58355805 853154188 137679989 321666595 710029747 921631030 127451790 933244035 371604488 622705652 587038006 672557510 792045934 953698568 741818283 871942171 772310360 970081773 517523335 553196703 492950416 902714233 348640650 697947680 749747112 891078129 741385625 812225976 372714489 484314456 442568623 592288100 88136181 607672678 141437546 514524505 383556612 395859378 40726057 782087235 854398593 948758794 128128092 878830322 144431169 536246342 130895402 687424180 717596131 933901908 988480859 996575530 289275222 587173554 902300360 917328524 469548760 923701906 205325334 299190933 420498644 983631795 927920263 989928569 420171276 895684373 658610947 990543428 284213711 906618479 105526979 870578505 210288249 968128184 552201657 572374236 560866035 666975948 825781743 928891883 180215086 397294074 45215382 867895504 872466032 919003350 192935379 739479265 372344582 889966620 933796143 970026643 630080097 687887549 421254683 856093989 54347615 385033980 95723443 691918645 149882382 806521031 356869583 602851853 778369512 850767592 694087381 983029293 181406297 303354268 664008222 846237352 450594510 636200574 173050677 780249143 174258264 624942443 697508379 981480636 632499934 985793291 646921547 834434517 939638236 956154859 789575178 975854031 483921673 968503831 551717683 755458975 633050190 974438628 981094013 984441227 827666532 832659364 378184231 808412644 549400396 895311162 882543805 929588207 352616600 884211485 36467959 137681377 222315850 676070516 266705971 518086282 145762387 401472991 1234572 663222187 145205194 319724276 632071871 900360306 369087614 505277467 62374393 252379599 464530840 742628516 718823219 719323095 117479934 385557977 661562841 750456709 723690716 809110495 129490164 757429489 539807219 795732641 612665016 777458864 241304009 708026015 938247259 990290083 456888647 882726655 530154623 536082718 356848023 765319315 551456276 553939497 25468841 717045822 392813575 660122790 837688992 900162274 360989973 756298370 772959486 848148957 770589561 958306140 442836623 604819640 961088796 972033212 235491356 759482744 759016976 862062843 788808005 937599389 509588033 808055877 362947957 881277364 517678107 888823640 18385314 389131104 833284088 998005671 657590175 788503765 658486280 926189505 954820908 975365846 801997895 882755719 583147864 743114135 728552109 899509304 911159042 972545611 372135544 409121337 113510196 320063399 662718779 710673531 472873956 822375847 126834893 472539630 556380613 682589714 933151246 986099082 247039190 442160655 812534828 932283582 956857301 986915859 227746331 412364127 956867774 959757978 965932476 985511236 437431474 552042306 277896291 334723738 460404663 905345834 970332050 995737227 160595383 773063175 316340137 734018150 746294211 827811511 247763225 875054432 221253295 327479191 713275096 903967551 764632710 832284514 815564690 851426975 33424973 855152364 737882813 922536003 816295482 977510925 361699097 863836352 467190021 706170378 603918759 926502743 215862133 836184841 717006245 770629634 962320554 971692213 844113831 933036418 486250652 863381765 934357207 990874019 801410383 874460660 568338409 686821329 89371673 957607197 530303177 698752457 873025924 899944580 330294046 810473187 231600005 699381799 313226839 710229489 467607723 940056506 479678724 670295361 129075817 574071355 739565481 747830847 460330084 674921270 562561002 783540420 764938370 831929741 634042731 919537031 322794023 334248129 866686255 975457921 134667048 226158288 347354996 740180836 265772413 512664916 608629223 707228024 180899146 359255863 372490198 927077052 50564076 142849160 192861 129967706 122589472 800422407 565933081 910291539 848753443 941952512 610320767 976647738 224864807 751614926 598549854 944545218 650332807 936032411 886232494 914457023 441072190 909286587 216444450 853423775 86475518 162255770 504472865 614220607 239963500 980163769 652846102 680274669 458130815 579329922 130998659 634025894 273059053 498298427 832114145 995960580 900212235 957032393 588211746 619276011 502552951 758065539 613064939 795019266 317621906 840742255 557842139 734465968 492854801 998066146 42075250 881776697 588039658 773770839 759700823 795601354 233608381 348528010 157105077 801606285 580264884 701453535 514235831 786840067 408599212 959554727 700746473 876252701 629515266 850028541 480985408 896478321 997891940 999612513 751135614 876796810 779551966 856978013 468080009 837417325 759624817 781401513 521058530 907947161 673185751 827149379 593672829 788834802 422279749 743158994 23095908 124775501 843567239 943588704 362911955 866602624 481644493 789427228 447724347 812162739 62138707 872197923 136859797 262701111 546439744 808146507 278115495 737168429 396548167 641439774 903184182 975294701 49733594 192923972 41117788 861539453 267592196 693263068 599558061 762771664 503540031 609082950 558253175 830980781 356301564 824809766 518826238 853843702 988855874 998024422 114000374 740327321 73121452 845277401 165535417 222627673 35060935 158790337 98971598 795372973 226814387 973579111 717390527 909730157 734622405 996508930 315622104 400856729 824152385 940857857 290088619 893930762 959453761 975116251 725026367 763555826 417393506 420645556 151118936 882042699 583901055 675333537 958431450 996713455 257949100 442667718 801983788 846346160 276806393 733563689 535215254 772924427 630451811 790614974 822715745 955783749 569105813 768476792 375690784 918591442 62346168 619031265 426387720 996862262 733837187 761144821 430601361 997195655 582552152 876668342 366607329 950509469 23930934 535534161 232544574 875214766 370400367 446874638 420861811 522657869 637986943 664195397 624249574 930494139 70159837 149732365 882850652 981283478 435147561 576584989 457434762 757724481 456064424 477921252 323237467 801427064 393984683 639718113 227718029 782175281 468971915 840330494 827717092 883074265 106723448 595542283 28911361 251337342 370158072 548708499 766254949 875620909 530138935 680845946 571371627 659450855 349485278 632529120 897229164 999106471 288051413 292549823 21415795 76912147 223088635 249024032 37716028 864434351 641200591 845567327 390475778 738463492 661244906 763472446 416539014 684674092 816627440 983994093 635363710 865283063 877629757 932970825 792901970 898015621 794090105 927563692 757409314 846304151 466894015 665656039 442572262 564426329 47519576 892168527 663265398 849326297 417705947 738271514 558166140 571934463 264767665 695384053 972882301 995281691 656876373 724783749 325821529 873086448 239123154 847252696 817277581 819255712 410307333 894385194 553575590 820026537 835986709 913788569 211772618 986879356 441228405 845634029 899335962 914338808 633550557 894751090 19136899 765806976 542226887 993711227 797650063 902342412 710932586 988749860 316653610 402861755 997878087 999070108 131924238 244430545 180780578 364950657 96953981 821340775 449998829 639959117 862512918 933381318 488272970 626091359 248485876 939954390 101951901 941331792 134927423 856230093 757097467 863046387 855640916 983513611 145719862 582310436 393340134 665712719 523646655 948984249 750317164 826278562 181496353 924528098 406068666 848318409 973742324 978128777 935191249 960535044 346650427 639292160 959647458 994698322 815691788 848479140 24965131 299962270 464668851 494147196 344135999 922691838 379802059 612634220 784692450 846230105 525413054 531290217 371388135 587954446 96285795 807630456 729875054 817982529 110860025 563314880 148691179 552113014 354669918 983673523 580934313 878217001 722864515 997452798 960293135 983885513 19628662 53634008 847280724 917488867 964687898 989233766 310900190 686850657 108949634 687694057 613524241 865009571 650183220 919815867 34019591 256018296 69822617 803889082 555378814 995001621 602984024 806980778 354440517 508596335 637072601 754929416 54875455 881391762 171930725 181402864 755981324 826941849 22211210 705848849 377211361 665115629 4800415 796153172 179686618 571893348 577661440 832423786 374496546 824939507 301997883 988998604 368802515 369826907 112047899 980550950 801518618 974460078 263631986 764538643 974121716 975240068 57217487 906484155 67847316 360420713 584805882 830655106 951945382 952773133 401276147 909505480 214339829 564385256 121181815 416396690 224675732 529559377 674772404 974982511 440701371 727319958 637585884 765642241 714267506 820552098 61457831 974040821 957638441 961813995 589644662 882592311 88464440 560738703 75823219 652421916 66138524 928866455 260091491 739417646 804563928 890884320 300847998 557036084 447150871 631122550 322567117 935185318 343492291 391015218 672599401 689028929 989500785 992120623 339571011 747828064 391312568 958045180 205130914 454796610 28233624 797431307 689989351 815404672 460382223 600940608 803685024 934870880 656966504 902068006 928520864 999045002 618335500 873751446 102132781 932929217 132315273 621323654 886132007 938703482 187248484 349344041 523511335 530715260 374303067 756484648 507909795 706114948 116984445 942606816 286738163 481622293 204557089 591424918 162717403 231173947 984633744 986385235 995932954 997057359 89875650 619076685 507658049 594919578 368877951 721299101 410332121 730157149 451076556 913440141 210412653 779614897 506096227 608041431 11863639 302836338 758513418 870132447 141526344 298363082 955029363 988445158 438446624 612852391 3227819 152597448 441155234 474535231 390075705 460056227 688896331 715371701 131270050 596878792 485432936 766723271 590277188 675469946 184738332 655994869 807600028 976154816 695882076 892153351 254212100 355162933 532743659 971561459 433952748 673557241 940707776 966026265 954257613 985753954 832517455 961979683 514250562 651802007 534891267 923178079 289776652 998521656 166495994 670813573 46856867 207883636 214729547 759061774 443948110 811254465 620941460 774104824 737191874 918497319 141532190 887337559 177629349 749485901 763039392 827959218 384710692 518352990 512033798 778324213 764281057 907046427 762503765 993204331 779996190 897984250 52741602 702315505 36030736 272998592 504328187 923273677 883412616 895468868 887090034 920832983 398198539 849236538 550529650 678287187 181149273 880265311 941683844 958215564 456935860 484615150 379497913 401985079 837258183 876030249 76329653 845486353 516267405 679699941 58880972 197598843 253960459 615701295 786225618 860144025 803033165 952611314 276650144 887056750 532894639 629961684 826549097 835848741 427439065 442236018 970966299 976621209 976888931 986691844 486958989 789408620 695510650 975957720 82523684 968812491 155615996 683548588 314724864 775929558 885602665 893107365 586103218 946864497 685659887 978067061 534907551 603970933 781284692 917601444 110204007 787665845 48722694 969623029 735291789 917081261 657073073 859958335 187082448 199391346 952943407 992102244 130405048 257933724 848175837 849305355 293063313 416720756 419833316 510980597 630831886 942947189 193622750 448247670 485802302 688593901 486191489 505761762 89487673 111363571 904212769 975950535 979531139 987034284 351588901 804495205 500567116 595859768 713873421 918986369 28589110 549892398 933517279 945045964 532636797 715449747 743779083 983802106 281007515 518241873 670964691 682592174 551505296 830937238 638573769 681565038 561569885 808721445 493714633 702358491 458908851 798631190 790876187 905494605 244455363 582198831 580534951 860175111 312641334 781119701 384208496 893395769 4598547 805936848 721267816 947567525 624049539 796672747 291723570 754943846 810447191 915797729 406664909 586631858 867603089 994812625 681278145 698458936 830858438 844399481 534035612 934306437 376218085 533706293 486202214 682220677 87414394 816849483 991805157 998520140 806756114 941691666 989253015 994768588 93454681 351310875 269281512 941159293 741330970 993412159 780858539 850979493 106530193 816012995 546312174 880722179 164170737 449353524 976247259 985421785 35660821 130898787 916875348 950938777 412630995 600951658 488486017 838776106 507820390 779955902 68782822 331330365 100870301 107440172 480141143 936131545 157702288 431112141 174448568 807442057 568096692 855753627 864336912 996391297 124437646 532790690 113614084 369341839 139914006 146906461 580829458 904084601 685373515 809202767 340926959 750271424 290826334 592838598 450495366 776446346 659420658 707407188 500452916 563300499 682284812 913124380 782782575 868138592 912189556 934712636 191272358 672816355 960476702 964284121 675735007 925591560 10680483 339784636 561203987 986457764 488018446 829475151 361021295 978878330 400770116 851260297 703478895 874740654 555301452 986109008 564377167 716473706 940697987 995680533 492368343 706778182 671453115 832803266 379969647 866601600 313392696 456130737 643618908 784549000 380491191 730305658 893046873 970950767 594525499 888063276 653683591 812609876 484815023 680668314 923464898 930400532 202120559 777992368 323989221 994836575 868096113 886846636 649694902 650964512 304922698 362258279 812500050 941963457 151793966 237203255 764254386 962881932 133696563 264077386 542928840 763304666 791055373 903286874 730888995 864909167 15728176 201024039 418903661 989427339 811058482 871083479 435215582 657788957 459966581 937405290 496193747 633749882 536897912 638005056 513352762 616234782 182653324 746506893 315674210 358265355 874165786 907364426 313106872 900677866 721109824 896481099 175258529 180919637 858361774 885545741 191942982 404262538 174257385 755269976 166017929 323572498 260108863 592353562 564750667 868807709 42745 94959583 161617671 646683270 528173124 722463983 947902740 970456705 862285703 939479600 229479172 850160129 685085297 978611457 921931553 996166449 473342726 902300929 435979408 878660864 592409200 851025150 750145709 863117346 756818831 875018698 490215999 665285130 711464236 811583329 265617531 271359206 141462006 370821575 841167968 888347783 372496591 518974776 876281129 920697063 374780894 652300277 794332131 945071615 547962139 995135876 458515710 651736942 703590971 987620024 692597519 807684990 747738573 976951241 655896566 957848106 453006526 630510708 700235020 715538977 194315585 742825261 641800182 809803100 638148009 999761571 871615712 906057495 548936390 861974270 656159663 839268524 534205432 742242042 475100642 948673174 790556751 900982217 223823916 996967990 373180016 907723687 266813855 933204702 642633840 804650084 916868984 990792891 202187856 838907189 943352426 998442627 749096479 998219106 931211831 947777846 67197127 889292240 673343584 999297241 158184801 872170303 897498419 952911256 150702831 658860114 423741269 602667995 405780262 481359409 917981582 981693980 184027505 403294952 435146818 668886049 443767084 603163145 289632981 730385555 763904382 900261366 937604676 977873420 32531191 633151065 354099637 988265387 382309973 929328717 707641547 847894888 937140141 997952044 261492783 389418500 467795181 506190081 562770560 635892193 775697915 952928331 831776223 967678740 337597423 383951081 589734440 910581889 91874895 468465992 582970827 984435925 673331102 998595093 581700904 628734873 656432234 896883738 682686747 895825429 99472587 246601025 809505822 894062062 673070924 766921175 17514606 232982244 142182419 177512267 187694947 931090857 621111471 876638738 633675295 660202367 25684705 467547485 542985329 726868914 834753743 862818538 781793989 908693022 550299471 687632206 522018533 920183435 178632038 810511148 727254759 872033372 743926440 821786566 758407378 797608229 573144977 597964420 946079510 961081877 742226172 877036323 436092662 507638950 653290121 913861189 414404243 471121281 796291271 996362295 23542926 72317492 85938456 919967855 79082861 961837336 11451989 614812488 658509197 926828491 127395434 952167603 160543292 315593772 448175447 532730903 904843347 952805304 450316236 836563670 347594175 484764299 503913978 967400166 196990017 931219963 721129297 772318221 299108263 897357116 728882818 805463123 734804050 799804451 418128053 578675723 600290869 991935445 401744752 946138096 831848095 958626586 26747799 30678804 330428304 593415354 51263982 476258409 574847611 666979174 991826940 995538155 311124644 379472086 498919770 521709153 916479580 984806094 812255879 879636106 23310844 126452613 679819610 863133844 709007053 995836760 928923473 981950914 336244646 857669869 886562274 891781790 694685406 760935537 385808191 545830890 628006793 836658276 678463733 810746274 872971994 999285698 369465761 915497308 168953890 932026808 817459878 975468737 334497302 572080108 781283956 844589131 455217932 670674262 846426705 977721108 733337291 959257414 613468323 933366659 942680957 997142817 473752130 670340354 984785321 993315770 316819083 915915973 228634759 888944762 903576371 940257369 733965652 863004123 428727971 886437770 528574515 847456889 871280256 997949603 919480816 978298001 746478418 841195453 950340881 959540799 231686506 801183822 296077064 512731935 695047250 808618861 66214617 670465164 992855341 994758343 516967388 539808325 222020463 893424098 627003179 855666104 593539516 963630220 248727568 926219812 355685255 807507116 454338794 529943654 614249163 934881399 927835217 935003678 809532304 982074505 909324938 947872655 934120032 936241552 89093773 851866998 832278542 872216141 940227590 998646431 63717909 383988023 458106038 648580396 703401588 787324386 502992634 966831692 270811333 877819097 688717222 989074186 126856086 696918863 189026656 706864554 682290650 891699685 798234096 859181009 290404592 765402840 180721820 706902229 282536413 568506274 381460819 618993600 490953342 985492321 759019722 928168246 816902246 961560668 42564459 627268419 294765701 305129516 385045201 592034906 377838637 887490330 633824268 943746096 758542079 850187501 451307808 712211939 9976095 319757500 793928998 931889588 736197349 885359588 700043260 714360147 268847475 652504666 9931593 100125833 590852883 683871132 746554709 865284506 694245747 789126699 399467854 724061843 777191917 785254162 879386949 927353880 272572122 406315671 817676025 919392431 880789523 957866337 355234958 656837157 615757401 841061945 242266457 491620773 446186795 791832758 981653758 988122000 519242105 527805876 990805871 996551482 807558639 910748806 663431362 963713784 747799170 859243707 976576976 989025938 840384299 928696667 47744237 570313037 301494316 785069095 213370003 323078854 935634581 986010788 377716833 895239016 209417964 650457822 832052333 972075886 470427991 815695132 243093516 302668652 66479380 712411333 399657516 905818430 339627384 507911515 216768131 419896321 701251292 734058624 480765083 673369474 605277159 981546647 961976735 970413683 512511304 854155121 560840097 671000514 99331495 958997090 205418510 815684335 216891560 351514447 143599117 548587968 659857582 873326009 842734747 961148783 228609298 574334814 760317825 883875024 281503866 849369334 641896503 702093238 484908125 911437669 121773754 775113922 12280971 37477825 695812824 822684452 756346519 805606717 576897787 655601464 270879183 955399762 964007039 992391100 630757584 723653737 895818607 940989675 980716698 985287126 566886005 770911022 863846077 939655104 912132398 915712817 177153190 626193996 365431608 437959626 43138838 321302809 505688779 806927610 143028575 506572462 519454264 675056252 243006370 776888369 521923119 927941966 215963493 759170670 990000709 999063795 77306731 165738030 560035411 847053992 296611817 708829251 909681580 946144886 834488741 964943187 912330000 964591141 668063132 922110142 101502355 397018913 342651793 631184750 831370818 959286173 931430391 952902195 245006040 456786068 149537969 399545301 222916150 259790082 708012654 813390822 827026129 924703210 161313930 351106027 393392765 551461596 158457863 354238625 494940812 733558630 675724859 837735470 91850819 864013911 846313946 904091081 447002972 932286351 902189835 972155743 829471569 951240557 240267734 598243988 533839106 630972540 899873715 967817047 992560272 996369171 903911755 943621335 957558507 970060295 828770643 948512455 379046533 401147190 852342900 936823635 254386134 448601899 627753805 850576303 594057820 766345882 901396080 949360238 227973749 978092388 237704070 533026103 919451005 930899056 213808230 887276400 987161687 998357688 10422306 774926924 961906626 973308032 759505745 791805510 458245043 973716910 25102701 776283368 193131973 858961545 615495027 667671290 821457378 931258315 372197843 832031993 534665325 893481477 784412836 869196621 83738178 529435983 672612812 723432540 774329044 809429714 436167898 760295154 126903771 547401788 702053792 720676457 160180665 543009204 449820966 507816285 900009205 986725135 954587684 981501381 893855518 947716068 794250521 958238810 276287344 918289666 388654768 855082636 895665892 966885207 987722870 988160230 388234563 624324478 690741002 839013708 26926897 274899532 736742962 815756260 201459711 680265243 541789861 608915583 286531903 809371376 772131719 840632742 624684693 998077951 241124521 380229528 210962208 281831539 179851516 425137971 357306415 366212216 989875606 999604989 911634484 960005362 524160463 827718127 400919669 992887634 889911417 910151916 139938686 503238293 839446917 892256846 918738422 968859595 51734714 696513041 883021591 943679991 246851835 594925121 448565691 830530590 409460053 747242161 166953990 564427140 901326851 924527796 506822765 640796115 548640776 758638416 155056225 524919409 242295516 693874637 952055550 980184087 730183919 873685689 57036368 632274655 666558519 704359418 566759985 641944479 996470668 998949099 445605232 517497849 159878673 822615246 852046206 857089187 864453446 969881380 376317081 554559495 249503606 690567634 459789647 583174596 765286094 946317057 366926582 711044557 448034479 577804337 101623769 599452174 92488418 186403243 699712089 846057160 475375874 729520706 935265222 983444240 879445210 890492830 809815134 856256419 186672460 737143070 721173393 771740523 434727624 448110562 366639056 665284263 950704546 984249763 23155874 656771424 126976072 895782261 258678666 735594619 499675181 582985631 215553244 721763487 984065997 985205661 244464041 796012939 126890473 222360208 922652968 989397930 317306011 319731879 370440126 705190585 789135939 836234633 711130037 788667373 346944911 630034327 363366019 861502716 790539965 970269860 377489994 673425280 522331684 695086797 387131615 929136111 746062681 866222122 196166540 300103601 754358801 946354572 158524400 331692661 346132615 563712633 166700965 894323546 16254758 214271268 897854120 943306868 185105230 506535575 609720177 641360416 211428724 597061816 568546511 975237084 722713278 976694460 770754237 850474127 107400332 191583918 700357743 871067255 715509741 781543781 791509179 861144709 191324917 517830985 273497320 841464077 920663348 933514496 36325426 347935537 359864906 691384053 13849246 622541034 60970751 702862769 259614804 802367507 215282274 288556649 980191589 998380184 882885000 937635643 871500138 879962602 120313106 443131979 465476061 519122619 63303929 881632634 622330573 717269930 165924592 775487631 538236015 946596933 636409055 673430247 540508607 798646659 339295755 439207450 618485955 883920125 222124008 311841787 375867526 613962321 184561793 537620993 493080373 817117992 753639136 770449552 26339445 588166230 264414321 655700923 618968375 833852164 446730272 658579200 572229611 672223144 265066052 712785870 203933029 646926888 485224670 616890677 260745005 929307751 300682525 407905582 97966968 630141762 186200928 624089247 248230543 336528942 789950406 891796548 784238436 953641323 885614344 911355452 967042059 976946380 906553146 916945793 548222392 713616438 559335858 712356646 922531560 932516636 361690902 807984709 168255993 974304668 243024367 840774848 16478042 772824645 648487618 845443084 708637463 954682842 347741538 854208482 568168717 639041182 693338987 898590027 936830292 963971055 800427999 929386911 149562188 991483724 84905643 508213355 685727731 924588772 617407341 994017468 412423469 423037880 211639085 360342911 661165673 772993813 919990860 984920670 996760330 999277303 985555645 992984300 629839999 658037208 151784885 235992839 588619311 699483195 365772897 386846261 961537624 978036664 969011547 995534905 957957031 972071202 148922388 170600982 15944727 831102917 523161707 739068782 622401608 959716718 854884266 946455395 566631347 927779111 864960560 949038534 790757782 908665570 328332009 518896568 966942494 991341040 854853807 924230723 301872169 940634278 403059351 653227668 539939893 669013811 135616012 664728408 937931299 980073711 79531895 336202057 795174388 971845208 22892209 145506694 980676486 981993450 633382168 711596458 337740169 400180858 727981158 827268238 424045480 787632980 585386638 839851342 249152367 667415229 97867224 908206031 724730242 728720402 826449357 885213810 236901183 425934138 893073244 946374246 659276793 878888962 261323911 653138102 620614239 834537762 783710335 859605256 992202066 995509483 500122711 815869734 181524602 369893598 817412951 941600943 2824746 356546216 682932532 684013054 159667766 922617464 484035696 728217985 502680060 925489484 236201936 332229925 689819827 720762846 402665135 556055613 125488911 702236569 24949639 433580982 687902495 901557428 336427772 528094136 322742634 473488678 604046183 667647180 366420275 368248415 759040118 959325487 104490948 742246952 289900148 379773761 714406004 802846203 405452959 655655406 709070642 800430634 599441245 825085827 474251883 762951624 442809947 745803035 461810278 678449555 16839639 318643242 125452939 653982708 587309548 720262969 756163050 861947490 443543150 720291875 353284073 916408039 297469897 507424541 53554392 826682360 630872732 791701997 379024555 988989574 26471629 619111746 455548935 746509080 841845895 843247824 87067672 693062910 638506842 847768729 93838603 115823548 382672414 995577702 32272488 533400777 686283582 855991597 260735756 493296546 662423686 845887891 935242180 956386497 659385671 811239469 976801258 981283063 861855181 936810175 665637676 948497285 993971934 994842958 388711052 719528172 846461339 977360467 485142506 782667995 355974670 540997224 16204374 17964581 603827220 961290693 836959327 967754902 12534059 589487153 296256765 762190399 526533175 599975582 888225935 940804977 557357389 586610164 315699261 991852009 862142981 944674375 555591801 784409975 313095314 866878327 208550593 214066086 954145448 978370307 157936631 245089658 671619833 855381414 308991288 359893024 331877526 416512976 948619917 958672122 450062852 742214312 570653376 804239244 188002502 468089953 390652316 656893727 615269462 892507655 948964026 984881034 907216223 927785152 412655988 697163135 657387308 704696523 404680701 785998688 636061979 928999977 6679897 163362879 326957977 673761567 104477118 900772255 285275445 794821158 126000224 668821699 108414019 141648767 124898838 423759563 853450040 860766965 921495117 947300057 364543761 942502102 300491389 481819103 504663333 703620781 844284097 926707273 478895669 618712687 639618806 876813861 965416217 996968056 431556967 476060469 113887071 494501906 505794420 964443981 975637096 983755024 303677951 999851380 915188709 983311061 708656701 874662480 847753580 937139043 139339873 520901775 510237523 547962066 449734757 788444341 947149396 951152164 414226485 769465016 589137398 769684585 118908376 942511441 725472035 738830249 486578796 683969466 860437649 869473936 983945549 988007018 23838991 526803390 186943540 290889096 359760422 392742899 679979276 686492730 267096924 461422225 250494856 752924601 309210078 490748294 933372837 973172009 227221486 280774655 737449094 820161567 312563511 674934758 674788850 864524529 966264236 993136738 777895604 795272019 773048744 960920446 703733788 789971231 95548030 821756232 667773622 863641853 998542899 998789430 266490296 715058913 548330736 767823301 189195539 189233329 585977368 840653817 505469091 844875474 375253286 772901047 510341217 803316590 619738350 826732171 684579892 983876925 956946343 995326739 100069293 980956179 258938141 496738403 310847793 396235785 641399524 713081896 826066187 979576077 238388943 630921927 722592572 829063701 202133171 404064044 51280469 710089529 981727319 997480416 642451615 652788613 411334909 896580540 111417778 395250859 411287180 923531310 315145074 332533478 241766404 575126279 358312465 499428137 677285064 971318981 330785504 548888161 529578498 822219503 62420700 338347540 78671411 888461333 803985702 804828322 784246133 857659783 656231385 765381221 883912668 975505547 563990207 782381934 175333610 798270971 286570134 601535114 223207867 662758360 267232589 460386662 857795689 997824864 56724301 474462224 338929562 433762607 925142965 929386896 670520903 938102230 173396457 215661591 350825843 789954288 153048225 967059726 592841687 667271248 606500840 858233898 510227136 651576575 661227148 813496574 883003510 934537812 885207194 957998826 121562585 293417021 858671037 976323326 945434375 976113564 94030034 993142700 749348269 842855694 880588413 881738697 60130773 674524529 112374879 804631444 855748726 958366737 340968877 486595178 412723045 595857647 953502153 972496386 852927682 856564760 809670966 919164470 845480193 861365719 331508648 598589490 439222715 963215466 973635054 978269783 508030406 794318444 848514944 999511065 871368921 999742131 40337003 495562134 477751075 722526681 532737694 699004161 233561272 478274632 167232556 331260846 999084239 999491779 753997793 826251941 668869996 717467945 231735226 484737888 225796591 718389893 210160419 915058003 950775903 975117889 517656056 899218554 515753273 760147342 617421996 797280600 443172032 823813864 575941088 934510315 516512985 920600040 851132793 852532268 142836531 879216320 36996868 204441543 775947921 858024348 57746114 632254134 331958029 774622268 955353766 981966443 537962642 861083340 858334453 978574236 27598510 801522471 119267296 224381831 967295572 979433072 769074341 879705126 418681455 612823575 979427910 988392142 50081768 109717524 659642658 990093305 23686311 653664970 959679423 980314914 23296832 102547730 74155357 210592344 988687048 999696886 150793678 735636907 303311515 442006175 911660741 950354132 55187552 653688392 919815294 928876308 61398530 342538262 179262111 781475700 712565557 904336136 609849678 954658121 80268276 459923621 813872185 997956944 596993240 615049062 866060710 901289051 846517290 853521207 774932309 974657094 657108163 914558035 234817767 727396699 481029413 992431862 518233192 669703280 924513689 961872667 942630913 981624853 150394040 415299328 843867744 959727999 823020785 944286069 831099832 995068042 583981278 740600932 438862581 653821327 495715611 801664191 935615632 965207777 777649225 965990384 877719425 995219712 709024096 971648728 331151270 381814055 302951722 343664729 64526813 422224182 272463366 679110841 325074735 862576612 502655221 917940245 508165276 619005225 268452358 457770588 802730893 991783656 310356306 475917923 776677833 802861067 575540025 897524335 513715983 515234275 994603384 995039797 444117651 806753165 60051460 370345043 651983832 786648659 881856229 943143405 983038316 987647857 595267215 766200071 19934924 738651703 661069402 755954182 585681602 963508442 409228029 755259260 683947875 824763646 997615284 998400744 980150207 994471872 33860807 976905878 873450559 955270482 494035816 968204414 782729374 842769521 519840433 920272608 581703887 646955433 587323549 983781678 557035080 987061043 181560966 486982786 645180490 964643121 682409082 790645652 974806824 988169998 611384400 718387208 847648670 958615478 494722142 553411300 202378113 315424893 705915430 924275559 47983525 786484213 836986144 942002758 382477130 390401799 471187783 760475729 15679416 524916059 170348345 468251336 374823197 617852732 52818919 85390184 636107883 924607204 333851813 453115929 918182149 953826232 217692693 772348487 995078556 999774151 833955929 956775921 38966155 753724451 915136261 964289493 850212893 875544911 267175049 354296510 392840980 624775340 913669146 964710235 422092850 551300481 126363507 204483669 162374792 366428772 477298509 762182098 294410927 774636373 577222080 872484998 930308859 952910271 757651811 812043803 333733706 817579170 378593174 877901524 784516429 814596596 600715662 730581718 399371639 993990074 118559864 967626438 130581910 988799781 495335950 852214724 101187252 903952403 265118595 736782131 504812937 704177195 857017936 888045350 70788122 576640505 951996801 963530704 691378277 799861762 222294807 668625832 894568031 936812583 731253018 770996556 169459933 637746305 795491904 890029046 402000384 445451343 432598771 512488525 339580819 502193867 556738422 880488540 533383542 588276348 817881889 888221574 955284418 993391929 158192067 649693197 442286058 560607777 972536240 979345958 110976109 594738366 612680356 953647902 248587195 636217128 460189864 615722928 648376983 782316004 222065616 391308565 691924795 999535165 130003218 772877618 725240269 747653898 831385219 977002291 253094770 484365412 328134974 438436878 682719968 960403094 75960367 369985944 11917063 431451846 732624619 735661443 887586418 915480488 836918823 948471353 111349143 160214325 254612327 530766563 866859284 999029716 234869540 691658238 85672115 897408774 891917413 974261944 880104714 956204020 856589372 873994017 737220232 994051868 146852945 559009645 122639516 667295299 646815129 758443110 428295347 701391656 650420533 918382852 875814794 968672622 658595934 955556954 398229673 861781474 174907894 317913786 815624055 864798623 606112392 613115800 220170596 487983261 659543637 959192188 16688555 821755031 218019715 243158646 677804302 754786241 745858878 938633155 606448663 716000558 786474619 816464116 793523249 844793051 111650175 397019546 169715560 506173312 391973319 953182777 34994753 564059299 556292247 573976390 328906932 664444192 146274595 314922117 5614257 519687092 139035702 311136194 106816507 254330883 782348933 932603443 256041254 897050123 824108822 912218107 39793207 919830196 124334459 154655801 378212003 721203646 634155533 637654341 50022976 181046166 787199621 955786971 96100661 98301107 382731421 606879765 533531408 613069289 625464046 978806395 140136139 152127372 398969019 443842642 200720582 822582140 399389879 956532211 201559891 820142099 513022506 727727940 388207300 956050958 652935746 756686024 506286480 941697990 297814016 548728554 636722849 882098668 133696866 655158765 358553054 811786885 293801760 943016537 875673956 986473552 954490202 985400741 605699334 820598156 414138762 995885042 948347693 988735126 227057221 790730053 476160688 818207131 456424620 596250464 591478189 680553812 634319767 721046989 539123495 905652094 423393033 970998295 94414959 371119628 401301007 661349773 168909772 296611366 253637648 848396795 823056502 998225534 167983986 246586777 727936296 983857451 147512083 283328224 923305897 978559826 434673000 807986935 379556609 447697007 336361938 442341621 246270044 895693134 577315711 960038964 983379387 984019200 396107395 906168052 990598740 991840996 166249233 804476745 872830490 875825389 875982310 887836612 828297972 955193301 973931548 987279729 786867900 913663114 505666628 985292458 771136049 776715452 913197647 993500075 694127254 926680695 993294953 999928081 256996702 789909191 512396518 610657577 622908482 951484077 323612268 376438328 136010503 465303634 600098462 875608671 941534818 971059953 622466427 703830048 779631229 985683181 176613573 275634150 346354376 807416578 284820126 919369865 524634981 697672355 568509631 904394761 96461810 107202764 708755470 926260939 325996045 594011167 793149200 922036673 125833665 290988560 801243914 996476280 711845880 952497147 294473660 706604774 491143822 542715278 987128230 997893619 14776175 515585479 250594459 253794249 174053045 933595299 74844409 231897561 418820116 603803586 508993088 986621617 104965198 833629919 657323989 952323903 437302313 730339282 865890750 882866592 405757690 673361784 139160658 557466732 809588426 821599144 581406923 925542070 854554938 867466673 770869629 889046070 804240789 813073884 124203745 537799864 661331122 892201972 421517153 860092383 176713111 632480365 238811833 965724807 406364525 483883605 4780367 381541311 376469413 378294059 789992250 928197607 82917227 189715787 671443251 693078757 922061996 951458218 195900268 286350543 986841502 997980126 731834234 898423426 920576089 994414918 568705539 739762625 950891452 984880133 416135080 939459288 934914251 998746558 505068684 570036770 845715440 887957796 486774450 538309904 473480077 815387857 42228166 971845917 847754200 907160825 849250116 887710327 234962867 413957575 338853237 792035058 603198206 698909501 13519171 322764506 301429245 363817012 506467338 629089404 716833092 771134393 383886211 501446405 626737134 774248642 669179084 892175453 498523608 623510614 805314805 818241401 275672696 614426577 492796693 825331829 662382990 808299046 843930140 899190890 45283887 310192763 5472257 499445040 447672185 764253864 94376829 744964545 253189947 935178601 594834268 903963951 571249622 973223830 126400066 617582677 980439047 989499757 615891809 795086905 320932496 757070487 509147329 762944950 923087477 950283324 285517723 433546278 867057761 885323083 929235473 932688659 447740018 878932585 592990040 705852455 469186568 575296657 825058791 896396554 455223495 559944255 245856344 560159971 636379106 878846003 522215007 918796304 707676659 983044413 125511622 979287433 439342522 690301773 72767627 320321477 527459362 998935121 375707750 591233320 331359436 506139057 263805868 319544871 763739151 849108346 424348668 666650301 488353274 608613896 324291841 796792827 750199526 761528934 118818823 835890006 228886861 326302662 368759887 384692980 338276612 376698679 842505604 928824824 585227651 755435750 82306867 883635791 868955593 885713039 915158302 957358214 726610155 885979138 831274119 844750477 644567645 766431561 863182455 955504184 478911737 853072548 620851342 813160584 641765708 728942612 449493972 722269052 645076629 785072472 151477208 335544549 424058164 963653932 766296226 898940549 126392837 877099661 661789506 758155602 271896650 681468889 111758415 632196777 983659848 991072258 330536732 740157250 929896064 938853672 726611929 821335149 123618996 639871228 503442375 574408057 977830632 997031783 369529286 601214720 29984845 962118562 852378485 872200792 296372876 835852361 600650992 770204143 92107940 136661773 556644603 961110990 986145270 994040895 250736209 921517697 775201609 862021253 728876400 947994791 595481332 769001591 84448477 671429887 553434996 858600619 196544709 775578492 32393104 735271030 551523979 905800134 931860532 947331170 995728073 998667310 594747584 999519529 111333110 644115407 288554459 689322769 276861875 645951337 136509485 615705912 76382848 464710419 146543196 148480907 162297069 361355529 43194064 857254280 497219888 649401196 378519475 959402552 864355878 906822121 109762761 130693515 762098674 849179867 389613262 499491227 263596540 557244887 636219795 684929354 892601916 893240415 716055151 793224351 683185247 774737503 931999509 983417899 433863803 731724130 845088719 997985859 691125773 876316486 82183374 448323790 260503632 932557057 535262328 752154745 448845813 728816957 492377607 525115401 592454882 705458950 544263678 940886244 94992590 378342596 182681001 490529496 401469891 960874974 788001990 854599233 100064327 307309916 777562349 968510241 767919713 795362821 741978374 878583697 293832059 604524627 938972792 988847520 800624081 955170598 631680194 686220541 517303833 706132647 923290876 932902667 233578400 782992721 734700333 846475518 349777276 986108996 19755504 357890911 451975652 675968883 767294205 819685013 468950950 630768012 857048452 953822539 185557418 993675931 46661935 692394596 979192392 981837270 915339807 999019757 70123467 439386708 765465074 908420623 92913253 884191254 864799311 925109021 85438949 187688980 2492348 829225199 713209649 884793064 377052153 935096244 34445647 959734279 863590636 953059937 333370587 382479666 583562057 697079272 546577214 933711803 720051118 984637268 998679015 998821606 297402959 839060469 175557600 923661979 515777299 814539676 926513190 971392564 704731867 998748536 85167397 281332493 587965174 961316292 34355168 896353281 561889394 991493202 669568819 753026812 863012794 946050532 911613014 983884605 5374903 233652108 269434264 474836441 131573616 757402066 986805683 990708681 104230700 757641134 799420776 932223379 446625350 735008458 531310389 654189095 941130611 944830794 996035635 998051059 98935460 765312622 295618158 407985661 962971471 984140111 446508289 775697746 231748316 744316569 374414864 987419344 866519666 866778928 993308943 995180716 171207283 627374626 937409949 958657791 456015988 568361144 103028761 997312159 387011873 672419824 176386303 689524581 829626386 940854851 797906945 875548660 462949570 754314180 430454199 595956853 527526723 602265518 876158922 934570851 727496940 854004562 586157865 831969442 124266844 924745357 303427955 358442903 401079217 600466801 773975283 878865737 439759125 868076216 135255858 960788155 162074966 540018198 489227754 770656181 257247093 273136751 532961561 642070671 801334909 876671425 724318520 906686680 316486441 666017185 283209664 817290273 401251897 413239514 622040102 993924531 331392386 645611007 235198877 669337275 597441755 982861020 173847252 766512638 684830508 997131702 590697975 968280203 104670755 830373352 659561523 914871398 113236218 866102586 393889276 820086742 234196746 399902191 691001201 854752619 354547319 360436363 479644802 662247488 236455549 703714673 764298196 938154206 343347492 607770312 625460338 734493283 560759064 724664356 776710198 904867187 937697881 965795375 881548479 946232029 603451845 994585039 974265177 992537578 209950165 946836559 822654613 905786987 837562447 881033312 244963415 569087339 260530033 940818956 906127434 983060240 40282303 805979826 238335239 356959742 355963570 973883099 957854403 964817963 126004328 903372544 256510030 916185194 505155048 562814009 823574834 972193879 777985554 958130444 675619162 895847647 601457162 912358801 467675891 493843674 207674445 682580102 651517317 820641572 501228498 857594893 142438574 161643870 410745297 656635744 345440831 773750555 624983158 850043205 774896137 915164646 139739117 148069770 951668540 953069814 502987907 985670919 646208936 829060700 72320936 741924516 331392474 494744957 977355480 981949725 622240744 792828946 554985020 586249792 209559225 766621818 657165595 742251178 290120103 806434766 719621112 855205121 917804444 931382698 864236810 935496925 821980371 870078810 177397649 447891680 961662020 965135440 694756523 874228806 536967721 933550860 346689876 624831589 17005367 274351192 791228158 945848438 206897098 393512752 720159772 779972975 618898970 661876301 37658871 65460170 265071181 876047302 343019133 991091383 374302924 837395241 130458579 512428957 555418312 800114289 282005572 644092871 537535141 852365659 99817560 701168498 718959190 756865322 888400275 985475425 403700172 878628882 963606246 967993486 217914286 567305356 65242959 323755304 752097054 783928053 453933057 974096848 127887139 210586437 8270232 161895955 504765451 943292064 358108277 667640885 114032974 311432084 348967127 726340995 348185976 459727557 272106379 389101678 43423480 526029431 472729164 715480780 281122124 350745232 167031166 239996425 790868670 934360010 977397288 988711916 307773490 881889436 745197932 911830627 253519394 776427898 584979097 782801373 768252257 889587496 529011465 929262171 902970786 948714468 595156843 848274158 855773612 966636843 562879223 598886451 583272700 873434307 262599874 377520425 908231562 974204096 323117351 759433342 722785680 981390205 687082826 972999285 474620702 994083620 478420985 757916856 412064999 898454628 677682073 810558318 8266853 75992734 803801271 949895922 673498555 789623558 267366630 438244440 739807042 895826600 784192097 805382779 17663965 869651297 754206037 771038867 249657358 563256822 783894903 946406751 527640373 824786048 546213460 882649009 891369495 993296243 893163144 916769756 479288028 811350798 416871308 597504195 972543303 985461674 556258246 891340885 832986936 910697075 627826557 819617995 560883745 945164629 746482493 944215298 54271113 347962486 266028312 596004745 728765492 850509220 133530980 480952729 347215068 457743963 810470705 928603791 374855427 560909958 312617856 332242452 900787928 925354884 904794105 978831815 902316389 961687152 194181351 854350519 524108029 816727784 161245934 401985657 41028916 952464983 347277964 945939563 308973299 437391116 10387041 227740277 600273033 885828273 400592552 499367492 544077909 692092529 512293237 758928539 370317051 417103433 162274211 521998509 215863850 499909351 49941611 283497071 255398467 395882682 634541735 767198140 84746529 448881291 852057709 889065358 111470244 131250355 158689449 611414151 951063629 985707190 354072798 651433555 679989459 764246879 828063687 952083851 153839337 958346709 96997124 310267895 300051221 563639355 845197386 888194556 962579356 986137803 70114212 365207408 553257590 704988466 363785609 971017599 538197768 611434560 829957666 912361164 947300774 992487467 908823617 920476154 863816203 986696107 823168558 904599703 973507407 992172826 120880807 889358371 780444459 793045570 781558968 994057885 938925774 958010183 123153313 907458119 162877330 177181287 111289055 216571320 578541543 865055254 870491582 937754695 646063594 816420782 157438251 762847534 375997420 543350988 108426051 473179654 840341597 936939208 77199163 613029201 771251119 847568225 94457451 271968123 543917773 544156826 373217675 408461716 881074427 991329764 349952395 819498493 315099636 664700731 557493517 638372671 940123401 971651847 973437119 998368456 438111228 447404815 644016481 885641521 931987587 976802192 606948716 940163781 449956073 859105621 192891977 347209321 477410832 877765593 988331555 995281511 274514549 916457532 11088899 483356090 813223007 829582211 444397209 902459523 820093981 851644601 226311584 512275588 991895986 999393038 629279111 743017386 487830323 756259216 590408798 687391757 918975098 930252887 962151365 963550539 270318257 275629670 566849360 834760779 990699470 999538468 478124268 699219136 729948996 863713854 150920251 208544289 912349922 915158151 856051471 953578042 142768299 820653121 934539097 958333320 218540711 539348640 196076535 884839870 372531802 979502404 669422397 991485939 641106059 945281015 952972538 981261729 721069014 820284729 401259877 504395881 734984698 746026039 840958898 941276275 50315093 616413226 132790638 899640083 697690137 872005929 926597281 975698724 822034769 870982006 664386342 820316400 9010633 776819438 711533962 939161428 267523584 394631812 494227161 747010879 270802747 723211370 30782145 460839685 871411491 969315356 146999792 169431297 471720788 612211919 438292705 748869155 560042106 654293401 943433547 999220613 843972004 987080097 566599934 933056749 797938614 996833410 612360733 864305076 634873065 752737116 237731093 585624299 414339905 751421624 365795867 767191987 620094378 821648189 319646410 598076197 214412437 650666176 27539051 54553663 324558830 630495108 231077897 453074300 999878826 999879457 603765638 855269181 253914808 530850836 750575035 946334182 941890856 986023780 154015214 822927609 535952661 829255062 19917070 639167921 161926507 999320954 489887749 949731096 41722482 770367155 207831482 987399724 358718266 407547124 333441632 950599737 695561569 696788484 690591064 911526645 33978478 188541774 981955009 996560296 689588298 759234170 208814469 482713788 175556130 847104121 140533330 536801579 818823714 952015444 101627872 210644089 469476778 850603833 577400654 780244127 750624518 960652656 368437689 563525245 446541144 939564068 492198822 744001435 208149324 654781244 375910420 495784260 796905661 851683508 875807456 970299448 451169731 500572102 112739469 258077455 644698509 829990842 908463261 981428855 156222457 614012275 410567179 671249777 588142467 827101534 291964503 812011497 225633133 410658921 327843242 643763749 714665640 967162800 978094491 986653571 238315164 778618472 810593513 940670444 286069389 859530289 333895227 699766879 278556101 980832053 867329306 894060578 260016036 624652150 730891386 919745790 859006004 983537043 211970189 605276086 586417919 606554607 162095297 331517761 355973287 797566142 363012665 991102402 582415492 877734580 447632318 859223888 863015378 972070163 410589758 735776145 274126063 534387101 725363678 726100591 72917635 301310829 388759703 897813045 476725997 712622601 121292422 771975615 962809174 968457978 194021520 222033349 914837746 965652298 214675258 728950846 38068950 739683329 623321861 683846667 545698916 635130446 462880333 609056041 926936268 927601550 950127138 965206530 256081555 858914882 15480804 685134761 925423442 983607781 363282451 513475424 133367662 924583047 591748841 811371751 88162108 915048177 267432895 927141682 661525933 911687894 801992782 897281876 638279322 701600055 916329955 950626097 560569687 713182756 565293884 672677053 65679943 388353922 703820102 706127241 441673247 825094880 335634004 771220104 144316168 187705056 100534414 879094837 676985355 721814734 946661168 960469888 6624999 116020783 170961519 847214552 452234424 719856285 520148337 712321630 209928484 966746806 686200528 711226762 951840951 981467387 721325728 790940114 921841405 938417763 634683592 946162612 375958823 441042476 404202304 450005250 72778317 706028786 765675093 999700421 178056919 940225190 85522238 87875651 91557976 193740116 867561378 898431513 898432365 948350078 815049421 917487803 771657433 859021276 401144684 671938364 316992713 357878646 192880587 709202606 743103008 868617261 347038759 710137158 65567594 531549071 30981071 112955782 644456461 782847490 88255522 506955592 255773531 681095278 279581858 586541777 886155219 920219982 733586155 799426794 159528867 298968485 266031424 410013263 142764156 212066915 789292611 955680812 684562511 836831924 448744708 785261847 781963376 840325719 413374586 957136112 798347957 964735581 580925674 964525432 811757557 955448545 493713 985782961 319135657 431150042 645124868 648439680 726016819 797650443 212889822 942051456 341101333 682343628 99012631 532324023 652773191 804749042 691594165 823447987 356219873 779514549 281604866 782651025 350021301 618132164 840365019 970637397 512462873 834782071 76643029 475622796 429501405 536592923 346643474 788964909 188990734 925579231 482054037 925083060 763706209 809881072 981599006 993526825 529046752 798239641 98844563 764805798 741044118 819638949 155986813 700887165 194464743 245638433 146463236 693067638 764403135 983144982 470775158 589962776 368220706 438621127 573478330 947080067 629171309 919219186 82736283 580724493 83552299 992047375 647373065 752404695 541753164 634681465 667414563 997733613 383035882 893385756 307443109 420698465 459424655 495723570 160954311 823600162 8835093 460014022 17288058 597318274 944269158 964828209 996979499 999599349 405473460 878665506 567966465 856122344 178169333 957607652 283850626 779492890 185193529 453286474 682218069 818962577 243332014 787258071 904602329 964905805 849129080 863124192 474276758 963767872 506506189 655705058 581605756 934595292 289940969 914563692 988917406 999058301 442408552 510267985 54679634 226215431 444734527 592630181 634725288 712338252 260284589 558082868 49060739 239284227 741409278 780227876 877166235 892056801 23270490 613111079 967423997 983368905 999530229 999544822 716074215 792893747 317011900 421429897 602425662 866749192 154246033 431668357 850130087 915406412 322505392 863043599 176563978 675253755 930615248 961102180 661286319 739679495 778497341 805834878 580400113 962502867 51159719 496905923 353773390 441922796 155839846 604900986 792483058 818895852 961802618 987151690 602039730 772918679 528827791 704544705 345525206 821705725 950389535 983769297 139022740 297561509 1182635 735635539 828870175 845387458 615078177 763206682 888495511 934337816 147123453 567179760 102053892 291771121 742328106 853179711 968710438 985787604 986953147 997521260 316286310 644568653 694283458 805811034 534604598 768334215 104312243 770849982 176864534 835715427 399358080 657498766 31645458 536560849 708982477 718030461 85312094 331456263 348823545 509665726 925784252 987353392 580146873 706075002 711755200 949166869 554874474 782831015 596290770 835442879 319843886 895074451 920680306 996015290 526733569 940685856 664513453 965036519 757403124 925592368 545404512 597664741 771505045 788118177 76201938 665683756 638088681 793430437 402787591 481093047 917108049 931365569 410658355 960774723 394870443 652940465 349619503 781940368 229633751 727035309 498715759 868299096 799935200 877016441 455992679 898405165 536305374 585096915 111263556 122339645 941020757 950545805 237448458 980034317 729694572 743497494 560270938 651044478 30288394 424937057 104441576 364897135 18421495 597100561 885596499 994373137 922865080 991636220 790624756 938931805 283294760 666655213 447451935 819278445 733788277 759829595 747412566 947793481 52590238 772465873 676099503 772718437 499533236 973228034 432416177 955809457 584508742 834144967 798988450 805188811 869130657 913924551 429023214 752072432 645069821 991296082 529428277 837535053 623672963 943341068 600743015 802835170 976489473 991841225 849701447 854779666 864954952 976262847 42763655 823335641 785575743 996520324 111409149 603369182 690968437 859652680 27330141 491072178 147952701 323756850 23362560 595655871 102048631 339388974 200101828 300581409 570138748 711379376 247358855 701420912 709522256 823779757 315792750 422075306 198688540 413008607 777783709 793260160 845498622 971522753 447468977 675335523 863287817 894685385 725566147 764107596 543258642 812672944 358174607 359995722 126655526 142075657 914915028 995191958 664071368 709058662 134573540 861677569 838539588 945219271 743777789 988286854 471378438 839618844 605738406 727364339 758521106 880598825 412940894 700176759 750601688 802887295 223322915 634403572 191609435 626129355 708834392 836308894 349644107 679064262 503023742 510139263 26367917 972221516 267894977 334102360 28993210 74599195 310907797 823147153 670804462 974859187 839715835 904107777 349982133 780484182 832389705 910863214 877662075 879220982 373322536 785818770 752904268 959119477 90894812 596583442 130864470 716590419 522935907 959564919 344904307 643185021 453283837 981140207 236864661 640025915 210823672 898891207 966122890 992919709 795962535 973277392 154572130 385287938 628568503 797762228 744973581 895568489 738265237 884507373 903387456 955379224 299877754 958963646 369132356 745788863 913185191 979706128 109551680 543369451 820170049 828316152 196136562 976705623 702845231 942319162 40882664 497036406 606645577 838218128 211895958 502526171 297813564 482464945 553992294 783108525 620643112 853113852 263528400 683766321 909671289 983574183 542877121 629167141 178456769 301159533 199917863 635088994 747405083 969761631 668446743 820536633 474309355 580404364 822006542 863066671 512218457 803605232 774726201 803246219 522997021 705421015 782103977 908918038 249547674 654556570 417937404 611596235 661241319 816745948 129650388 331128471 473847541 552690414 921166515 947379880 699114261 780143615 320236791 727531319 200227347 967908177 621820378 807284542 805492445 899544089 695862484 701422918 756817659 807750237 475305681 662322128 679612054 915994505 637032037 874506229 773319175 800450345 329684985 635356400 662213110 778384817 692651865 890316539 825648321 851685125 697491411 869268541 352974589 862670112 479180467 992725631 728616961 765984911 975689923 992931877 459401129 917565693 956796244 961325564 515512895 968067423 431436040 503768840 14363579 56436788 583945026 901599440 96451227 507835569 778924666 883085540 495029485 634470285 471284728 903607815 829867657 949621576 642017958 965875733 970138322 990862062 925804086 940438925 442924754 770651193 304039739 980237480 668144757 862129672 975462675 987403457 573613042 863812457 228161129 370686319 610985304 929245652 987233595 994832667 492572142 531312897 77699329 167586857 123105944 737720369 291730148 444459805 340803534 984271068 32065809 374520360 324458239 986346876 487906130 748448844 832276482 838867977 524466265 963374312 842276031 944982337 433593874 847150879 841569503 948633308 125558491 474221902 214280124 518423927 78628338 457930033 261472176 338212454 854718419 968162402 962335615 992277895 178059401 399401050 796552727 957301426 575314176 808866710 908839474 945973524 565684473 997079080 409353239 512009758 997513426 999356160 375743900 649781107 426680147 495104271 871599715 933614965 367664733 639534345 407444280 815799468 309406752 956433684 58234160 247416499 116182779 553036465 501591533 748202190 111995312 270967918 666875040 712379871 107733463 857159213 406895175 410361700 821901634 908724875 17351202 112910639 907973759 915257154 171847527 838100642 589410332 753731012 934111056 949058279 529887646 695122415 517770898 657778347 878216394 921195590 526578531 775207554 474063430 739835750 839771629 954288868 380915480 452129340 293311115 372783348 537693989 909571052 309660612 804963993 648520670 736855334 168622855 406544153 592594202 713662048 721233189 854864286 485669140 813104539 473998162 970718137 752572991 990703249 955503851 958901206 405244552 920660955 113129475 724081930 326545784 357727851 423193106 619820842 366120422 636926374 506908305 779005408 538647059 749382117 629279544 648405765 215760993 829426463 52346686 774275076 978903697 987984027 509257499 645028958 205830245 529642497 4472601 710640890 414357244 494584307 768743595 960094520 316992005 823788409 426524626 588782270 965133812 985048514 49812348 75377853 956646464 964664252 672988772 988183930 929164320 971821440 753395819 824133376 976071763 976833673 834306479 902429452 419873585 425380078 845623591 865542125 722154596 875929709 952268265 970331844 597167967 867735754 31507505 599128469 857016804 927991757 52120861 965620822 480200791 791500504 488351287 868178201 664597286 938226743 437973391 641355119 910973608 994269989 616299140 662768329 277420621 315571851 519611902 864884141 975895851 985825146 965205086 988918316 658534063 918975494 352341521 791161115 174474288 684326015 757126397 886349112 556180887 662814851 129004262 248441687 485339964 555644825 589616766 755399621 329321300 337712692 335569578 967563885 699454006 843395845 30900059 944167829 54227519 646822324 17395738 728760501 227966871 703217136 79425530 466991960 706563047 974672628 817469323 820184749 564872284 746798933 362642530 668592460 412191068 444080344 951157218 976667692 167326606 462782082 291715477 607745655 957062602 992517423 793541763 983255898 102334682 938718549 893920605 968891260 720470214 801189460 42878697 408289836 432623019 905380903 389360536 948647785 747762248 932919191 547394717 819723665 797351545 946229583 98142829 573956447 318420738 363903080 828118995 932692727 372808182 510156459 630867981 638793169 734307544 893122340 991374691 994495868 648313644 724601875 590451220 903644461 144971829 214587506 45741297 836469160 52038536 822082818 372553614 941431399 927290752 940542126 548058204 731093820 438135645 884095269 154448166 703318012 85706677 760752624 200390585 237798169 260934320 530374288 413713171 536951128 538413874 866781932 724972769 743040969 967277042 996199521 175615413 295915390 911943722 921257942 169669147 201038081 361999496 472893236 558889989 766464594 403505788 459892017 180258375 192401742 65808583 361579362 170891266 309707142 987818627 992479594 932579152 962844394 799108135 835249144 330151789 419753983 611546623 876399767 440746995 740029218 664410025 909166765 351158299 668878659 333390233 573558532 132125162 564531299 539999682 645015714 369838360 602272617 475811861 837998135 9746277 444332278 865629009 891955177 698517556 842609731 624822942 781370660 760669670 866524387 264559771 406658910 728828208 764183386 548216773 783990633 860961399 992367071 686279594 981465919 264922603 873486933 515521586 915670908 496156840 746263960 106435452 808372312 786658490 990820097 57189633 685111424 661893432 865604349 123845191 553419841 509409809 818697789 132900463 589783588 138231762 629979106 746726827 845397834 584674950 679401087 326215831 856354446 733396832 808146047 403307620 846273059 894143261 904392866 762806182 785916545 21929670 986358460 466502819 759338180 516243982 655564392 541491987 955776064 878769254 964704509 942914749 954556735 277297454 694633556 686680774 887514449 719792890 901565134 848147667 862691742 235324183 323373646 660077051 744442987 601837704 897161837 156551022 961088103 133254458 326145728 351023533 379715210 917808091 962270199 869860718 987990603 815865117 957956757 687217312 874591256 623979435 990615710 500560479 748313592 888597504 955953943 3961005 258099618 308424598 804743189 721953576 827023782 449396101 762714884 760205063 865250316 273147880 588798016 44019940 843238469 136488735 235829269 920758322 938518700 247799482 354938038 284434473 925325903 995203768 998841258 856630199 930378543 826722444 970701011 868438037 922705758 258618768 512942874 215984538 746579267 90571200 247119008 908819347 928271031 999253115 999327889 767462420 900860618 483583415 617283377 549753938 806887610 108147122 433602993 545325197 702497871 971408442 982212594 595422941 773296415 362413435 518990403 762435460 899197751 784940132 929069031 212641135 577340457 801132811 904247810 300674924 355650993 217632857 377516842 43331439 951288808 289846557 784828835 161492955 731095652 855049369 912408979 244954800 902346037 154454207 566432611 281436695 744904834 176203056 225263902 311630000 339228049 409785289 641554419 691021799 768187001 245483049 717237745 203188946 532908722 171491434 661146062 86744857 676281659 855151793 959120304 43789088 846096595 572079820 993548782 287094039 451376927 578225968 682453550 820323815 960921305 496574685 749563753 422668576 792844680 437460335 914025058 886601405 948594276 750278683 811655476 520994944 535161585 283974747 963748856 965464273 982189399 556611074 843701543 483193654 723140039 277350150 769773008 264374852 838312590 134653413 686851420 606379516 855126297 201430809 875133199 953935865 963490579 206849344 860265621 786441232 791110043 777822581 922331533 667093320 892657378 501681072 723473419 740346395 921212366 357523755 965770450 681774491 902576989 353812421 457426169 335343997 851659453 958425106 961049295 997530915 999978660 591239155 904630839 972011931 979383298 937855949 978887358 45267536 71306861 155856793 713635428 106715416 880468206 467010988 580106885 523849283 865449940 504692924 518566441 115395052 420709030 361795798 948046709 158222875 668845874 980332742 999568892 391344430 897477894 761157851 795764015 847817464 974800866 911447688 991620183 338603819 359078419 129843763 609405309 767250136 912320483 828337254 916805754 823667227 852293016 867054536 874378131 515348979 711202673 714490159 719389963 176184446 793326637 573136867 751526413 915920113 967544436 940494034 961294580 153092326 696310945 709309870 923129029 641216584 662034959 822945222 908817859 677807059 721484182 620900065 623605290 4412454 27206128 338452682 943258281 129442873 137371493 414710350 551987565 624105769 820467923 195627034 974408316 221416951 852523744 404150286 824556355 581195911 601426361 786017954 887891099 299767153 736097757 724849766 949118314 283936585 318499925 596307973 928492650 997727678 999130122 188850776 586914407 422562252 618840380 208397944 643883953 492564016 810974781 537822846 958222175 126945746 216112378 229720702 291662018 126169712 817306410 537033472 624713068 272890204 913687105 244425418 247260542 56210898 866957914 89702824 848923931 147245324 880544939 214713089 316768219 745098022 813532059 581500027 856430689 535574994 980347743 37890313 887047659 57289200 439542175 243426794 733314769 477190664 892877150 855425842 865987497 223175503 420980769 930547721 983658682 682935829 874162495 572492011 663740357 832059877 931631185 267597853 538793098 659405284 798641372 833909784 941012455 351871004 581148427 478858321 729904675 157127033 195263669 826827198 878344611 195241484 322240970 650637502 828482926 556805150 776698545 849641214 892585647 225720775 754171834 127846903 916873532 461928426 672989995 164100743 971779014 244196440 663973086 552643527 920485251 792798674 918455302 616432421 875278201 812774011 933928617 132990943 467440965 260568024 449160809 27784951 522731291 849658043 962025476 478581667 560500547 93890001 247448716 697096251 935215848 339552241 539390611 406937299 524744406 115814370 433321883 492936531 881014369 384959754 808710694 836951097 885106922 212308578 645743085 203252122 354689980 340651415 901502910 95882575 103226166 452648704 902081192 883298751 898328617 803111752 948385687 891052716 990330347 349841789 573930973 432056833 873497646 943129866 943898264 283494232 348466533 871373830 934632522 519859928 720360438 710189496 985876872 995700698 998249962 983391742 990305808 951884254 990802864 674817427 768629064 352947049 818806917 759732983 976964459 114180073 509986449 830044746 850167305 337627628 828650435 598752380 782332035 615297355 802426085 514551330 528506717 605305857 790532692 127278310 696158037 214219217 757423166 271213998 907790868 117170747 617832922 727448205 744160592 360577250 396378107 122467557 405282796 418741105 782857662 480073056 975855038 176573899 523769591 419084961 420424732 706952169 719925321 544387276 987704057 781322432 879366533 740592255 905398993 574403261 799555661 937131315 950998999 2807655 860931467 984861962 986334580 867340017 896579765 607498774 851821243 708652973 903179549 354277307 913590201 331583305 396530550 597343190 869171791 590237383 606692545 417559242 887652357 85594478 882431851 377300802 738786751 291680864 740325292 312186419 338040831 290418457 827309067 198030469 239515201 15360476 959762277 36686087 826778329 828300376 892520255 51387276 733265629 987469023 997217468 502695815 876424667 447573558 638867225 589983223 761870140 20111879 198737060 587644336 970494381 644075057 688989418 263586888 392344154 877799851 905213507 162996334 406558616 646562330 921393202 527414051 840879796 519812479 880755151 740887680 758270172 545269534 640323868 940924073 979075306 351473096 366962961 724214467 846086381 431550827 968642370 74919651 752703449 102872884 640454684 232991614 423325464 848198163 929877148 736906880 737141925 543789515 704090686 718259881 721932656 492723668 913957003 833326195 973192520 111730757 852321248 698348735 937313444 517950614 721892100 271558079 916674420 606926461 780073028 26391516 156977416 570251944 730414773 112528992 797772306 232823867 665495461 875918038 923458334 252577500 505175099 401710597 595645188 76669904 540184564 857815209 899124919 711588872 987653937 841579774 846369904 270154365 405974884 731507151 789785315 120884043 633564913 151828971 407997827 250149127 818631474 886754428 908105619 703027723 971408185 954085471 987892050 454250959 937408065 511765494 597190005 211608973 804576833 887440903 903267705 763627544 916056540 402118914 406701990 248618131 963943676 995281212 999616359 147471584 892088571 845156796 916357023 17382981 985325551 465514860 605530141 102410050 553070978 699833873 942023377 510054752 988268681 747769790 906270706 235402907 851633413 240583593 571375707 50465615 532921748 428860923 971501716 962204696 962449928 750182165 759916681 958575150 971926916 669311428 669730702 425169038 661548541 951324003 971704325 772258664 813049649 273789102 948046310 477928848 551351084 699852571 968266423 571684718 716227462 281291980 841332846 130218375 511838986 102668642 634655924 343353740 374369366 217942438 650058856 231570421 671541984 19449593 144069613 423237293 510399675 211442433 299886517 575891813 739496456 31099390 650626610 685898665 794088138 89685564 997348916 49434480 823235947 874612489 975399619 116265455 264592948 168998418 487980018 512738072 517387671 271123116 715521301 729827064 948427889 700244617 906006490 330929897 515994849 81961407 625592571 127610992 258056994 618875031 776210607 96116504 846478260 490530517 924278752 626278462 965611745 334855936 439831168 756953628 943005874 445609192 521606253 556972382 678570952 795262882 842686002 553920759 859935340 118503635 423847469 83988445 333385438 993331389 994012557 931068801 979194356 911005903 914841215 809530509 880820262 509363511 995321358 510307158 831058365 885701495 967527470 713938259 775481884 309942017 981904218 82745643 396987419 774548834 792932612 998236734 998594051 95456211 577655901 269960145 892396668 40031685 306760003 720473156 913036046 762732490 830236980 952798137 956397624 129240377 592053784 119040193 644168101 687337912 738948491 847357517 974398736 951963908 993974353 476916162 504750801 545794926 889928834 633487302 872219021 323356556 856715544 233276667 593530376 574404374 920509169 374659236 850951983 213670709 986199501 67122912 857953142 435050422 883767081 154015489 251892819 716726909 835820406 121596266 740938753 139826200 448555326 930001421 953020474 555671677 567710556 346709751 689949425 296656079 507285260 463925951 709646769 231516247 979429985 839781518 981709207 269426880 491520068 714255985 766370307 522359249 525588084 39268078 273448465 922891638 996483693 923321931 950608112 424621860 898591581 444273107 579599842 939175828 989155773 195337698 494918801 590370831 879734133 755769786 882854890 633188012 820587483 731675686 946671349 328104456 470247536 199934009 500455999 750517377 889075868 558875205 725595962 944746379 975199066 177347424 584688398 484484670 992483145 55524853 559003402 760735241 787560952 39682412 620687724 529891516 747255369 809532335 950358028 915790767 940290143 814229550 879010251 918269955 934103313 591522181 682672373 612614592 920740764 694823682 778971040 612257744 712057575 246716246 764630388 289053982 606565313 77362988 882201866 849102033 856802675 269120414 596906886 40096479 393086738 356507370 619899057 646242320 759268864 96499040 833624758 592704296 609181322 497440588 847197700 790731204 876596155 377595406 514822886 430049349 440394297 965955950 994744176 114588375 637946596 675345056 746610068 930445236 977010008 978774439 980269733 959245029 994861496 983675942 992906608 246628642 846006612 817862937 840411609 235877253 273883371 678430235 852891543 130409785 720573935 399459861 517374432 24834887 876873348 868927217 924095560 348236424 757469785 144550789 953662363 989980849 990703069 764551828 842320557 905208070 968465439 135566583 193295914 659830222 973189280 811594541 853675439 729480300 867723702 123994829 988064049 587837844 749409848 694038923 757948259 418091436 511265713 360065420 435641550 544509184 789650716 499518155 843502105 25962562 447418080 495203412 888126620 567939452 766506863 624034942 630777178 507007199 516148064 273283318 606525393 635927476 953412043 123983207 329153667 770399325 961921892 364429498 991232774 448305894 920260199 727195123 802656309 443075561 880417852 380405950 622616019 504133346 973153077 349292268 929073020 294105285 783634466 830257329 921390103 740726247 811482825 132143815 553897137 650726224 921799595 636408864 847716738 595777959 597701933 349052379 781826447 549091371 864606975 732094496 930271052 667278932 868491391 207606631 700635196 138775622 688968735 836864880 880599427 914787946 979479811 235192706 731379295 691652372 939307833 980396378 982535333 128157940 918793317 316803671 541694345 21866448 459781833 267940731 642885721 669793085 777744524 289554370 469659357 629923269 771705543 527211454 688311746 516713886 938874225 600116502 718779677 409061231 599974907 206946505 786151842 976094467 977653221 666987982 974134715 860320860 882843957 294538480 537338548 111832217 630901896 992748598 999803027 30791919 47509978 926892920 937868766 479618265 781902652 814787650 820000593 240509450 396848981 710330549 937657007 904468893 933072753 394954425 831662492 438242339 846431302 28964803 237730524 538522654 566879177 685367258 791948850 339872305 669529375 193856644 816208973 984183393 997479420 665299509 708167613 304164230 928511942 677417008 793805714 114348204 551995349 219724821 265843991 28548481 185178716 700741519 853580446 306963075 836960092 937220509 986197264 268718710 679555092 839056877 921470060 488353075 574334995 651296421 875139079 615059118 620222010 350496568 978506367 656015713 735577878 439844458 441472492 375553448 973691789 315742188 607730100 846048233 929232542 603844228 689722281 164291965 718876750 770570044 792910676 211857242 371847537 60372193 143734664 194253928 471517611 35959475 724853484 792736251 850396455 29521003 685712840 897078566 975180078 190504096 762903155 536662649 993686414 953959729 955764250 551745515 731398490 875861658 912791308 432288230 531736439 262280016 447100393 146801646 694351925 892818706 943200677 314681613 374449422 773910173 799052217 325679234 585335266 171339555 997665762 637999851 906456491 652549656 896097272 826658395 949656986 258111016 847691350 510219156 877803326 806499550 892980151 600432870 964162581 871692821 948445403 805717337 814745189 300862401 615042038 404916695 700883556 861099596 926056213 421991304 598016553 222236609 450286640 437453597 876634595 904557162 929773144 544750890 750934011 362438759 701327768 904411573 985084095 683434282 744731284 993835488 997420844 393314856 396359816 146277441 781469189 636841292 893525814 60440971 840135233 596384326 850922531 663386121 718474633 772152159 810473456 469528986 540278860 56461962 818303526 945300553 974169686 35355356 761729326 872269654 956367841 304318364 849043888 766681510 922388012 55150679 378820164 140652924 322141317 235016494 280602255 978429437 983762129 574162293 830600177 131199763 353422395 282927915 797153794 275174416 426360191 505399465 840064246 633523969 971132433 771625651 882530081 132386149 804270995 973510846 989160074 136312836 214001906 962319366 967379602 705521657 812334504 284599002 715135854 371923490 926321053 10020093 123322077 177307715 267505005 399073176 683808852 968105226 969263013 489993297 829196237 260496793 989516680 502584418 706576839 106980162 411894677 910696792 940691860 320619420 373133046 688172693 835777532 544807052 971876336 497428580 777236209 686230464 757313006 765759917 974208207 54919171 135516053 338241758 621050590 221694108 818556896 562909618 733702166 938319349 990665951 787097710 968715933 867517398 958706207 757735381 876670488 267323754 837543419 208692363 387112821 978246671 989398695 631762529 805438480 835224836 865200470 832974099 929431025 136495300 156804856 636943573 910714880 506155499 874110005 463985679 815896830 110107847 442697611 178249905 380784764 234457394 335320239 9084337 404943697 431134316 586337277 613255230 904054960 804192932 975875984 543000752 965909748 181898877 359421914 466799709 808624341 704425788 753686257 780187632 800064054 824495960 917545969 548071495 635143997 559781323 585998775 438816899 685106151 539098757 904128075 624614023 825785081 206428521 699119925 434229182 914818360 62135805 559570611 87972755 646340729 592410826 663782356 937048965 969278372 882954510 904983870 960893109 984823792 782281732 964104900 98186318 394694636 554559130 560017817 217616311 220263950 186085643 592959633 46636880 92547638 1812031 796230967 746916424 797278345 630465288 780185616 223689181 389415293 670061342 938737990 345916115 820182112 147894064 987510300 316454485 524741766 252559933 760703704 664771307 761246562 754715736 888362692 507589377 675731394 960570735 977437667 461632075 707478641 93825779 214243503 151401213 972260601 214635660 672865981 683150042 708360556 694485657 902214803 786581595 800249173 595396000 867057856 171942611 995159596 302721108 378129358 867088342 992682129 906610534 993272253 247521204 358194987 901567295 919404806 769374752 867451820 91925093 551554641 512283957 977519400 86384552 476431458 748943226 965804468 258481747 727010954 758060180 855027153 719627579 893048291 591509947 906392891 993224704 993282219 391604974 426881097 471128362 474813473 102917002 374981995 100806716 344769589 660196267 743633500 168825471 654422256 863325507 928806202 765897807 879762766 152320385 677887281 16787799 644682303 444825828 707115470 169386878 412866830 461002360 509869877 893942937 923292664 961320058 961721697 351413174 725245999 215054527 565225605 639446330 962753259 706650806 742207661 973662152 996166654 736047517 807858015 746647896 945655275 41507268 924807272 950096297 996078897 863030919 910846137 539937105 749417021 529658540 619365271 910658611 988198101 296326770 423713524 436347810 531163833 844870064 932106199 24948808 119334637 844083308 911442962 221211373 902470465 940788938 961173064 490619311 934598088 123891961 804574494 833818433 871053309 249824548 697108452 300940554 626996594 416222331 473942038 934710508 947743644 370112155 442214663 408308535 775597145 255765444 974063835 542341922 887731323 602797467 884929342 843426297 999318522 414810778 498635917 522946710 922591354 839947932 958465665 438150451 941831012 829717956 884315080 423987308 798973281 168169137 718374348 831245492 936690133 538615242 990406977 154268944 597203551 250150106 679847792 138529743 394901836 491387680 800135491 440554224 958576844 19827030 348966127 637088768 787740372 54861240 376438069 311380960 471457492 495944420 793255407 181831503 335654550 321774470 656094085 990494957 991256061 637263518 674111808 991020406 996436720 531088968 545813773 638841553 715941624 952273380 953471928 648229576 894976156 893527008 958985091 132828869 521019370 582169079 718405790 976764110 999290840 383388898 618071287 136306145 209903077 140761404 695612714 686826620 786611215 534548489 642259702 585386305 785550774 234753145 301827289 928669553 932365402 640961266 994850342 80210447 610592790 401164195 980675439 184278981 256231104 293640819 772968904 682626542 978930483 981288800 992762503 175075133 569510183 25238546 516643399 154226933 888677454 31427990 468796224 746380072 988784310 640272970 818142561 346755191 419525953 371674802 465755160 670634484 692050230 766880485 791999175 159326125 540753373 525872286 655168308 57565739 213785506 119227696 999725684 162286837 840420411 136390981 616739452 639471166 722469532 275925482 717254406 19296998 834028233 842085847 890099510 512308852 520229245 749439024 856282220 109998775 507734199 361649575 570371947 794033911 846248935 66618527 544124085 363438432 381693057 612497642 864433659 284725480 713743073 645601545 680486559 919716428 921687736 297698059 771199609 938764691 974731031 564697172 904406689 833513828 957671866 845840583 892202938 864564306 981363552 1520756 345386705 24862441 35678184 605772417 759363149 978568318 983971136 137245599 239728691 809897245 923981592 878166635 974491769 821858490 864495459 931596599 961298346 260050534 447786020 22481902 582791211 735711164 754815205 269801697 696867732 764762603 955989031 810270600 829203105 966739995 977934729 99041167 897162561 232727971 491152784 678943803 962510028 114927463 387513732 536719772 763562705 709170955 718557420 160460650 585803784 600934769 833661153 716019243 890561536 100043538 272835666 789960369 878819959 798719589 896135647 776719341 791626550 762011321 813696718 748690268 995036797 490160639 666524472 518428275 606144818 570615997 765504725 833831597 975427290 717623593 988315611 55447227 935831143 204692380 994199496 782358563 943003138 287919044 894403156 4523497 20010808 718221734 997236427 915819991 926666977 154878790 716139672 971476001 977056542 713906721 862605821 861062682 868262171 135374585 588665589 111376509 629128374 763635683 764059594 783792263 950643328 352723792 432996403 403844557 414528907 100026114 540597175 931309878 950578710 77568906 499385552 575815491 604353919 860551662 884570369 558339917 738126467 881669122 888487019 564714666 707953056 539899827 848148447 967442320 976786309 525362780 818142170 581355122 850882946 778580804 983669808 140097749 960193415 409380199 417101527 29669594 945192612 288559426 516057422 232878828 281452661 87598488 681571451 673670426 976523597 829841919 963566289 594898730 881970141 124380619 500848853 46615722 923086335 480910889 928076460 298040572 445846997 422695841 930320912 183953182 461337642 821328576 940131727 76309648 974672836 683554625 886844154 865920130 900820317 689872272 832556368 117578712 119223880 192284173 335181781 632367471 793951396 833528842 849491276 730413342 807122608 769616025 917145348 534511122 954901929 194391602 879374148 789872450 971864524 322751602 525141332 396599558 963334161 457200622 805966337 422213740 969352006 370281071 693262175 559972015 739983288 838756846 918586846 425473344 728628274 816277170 926405985 738970425 810457273 620632291 742070097 983992372 984106381 827807279 899115349 832888027 999667127 379783185 627760199 594890171 968159640 685754824 978769809 243281753 859056848 334047412 421141327 279201510 651102432 208736569 364341086 714719417 988172258 853113120 986515510 307775686 707939001 597636056 609146121 296205397 974171027 655957702 919349438 602971503 718808861 510310145 917615304 363903980 487104935 496749155 627345768 939791450 980186044 965795050 969183304 652142119 727387207 138398281 139305316 602786623 885693345 205526834 461772067 848821594 995565729 517737714 881008330 911464888 967863681 796501776 935742150 470200404 932222486 184194093 830386447 863730985 974219452 285339742 300479529 987521243 995554862 763156303 909929697 8387525 603466444 470589171 641279910 587214486 834553707 390022305 718010205 271919125 880980703 61373445 910211364 201020216 283643590 346466122 821450006 637418412 760462705 413193550 922287781 416751436 720724913 296583904 598183533 271227476 374654158 559846254 566315359 984091476 985606987 343387717 548399891 566652547 592439606 518060940 824425805 129314316 621873518 66807560 544703346 745314408 941793722 820828143 927591848 715464942 793435181 882401208 890327322 198723804 395389259 13764763 540411399 758233603 911195594 883503836 957243569 391413594 847052584 88797520 775246622 417819055 898345622 924626986 970876833 431606415 550981175 392171452 658019470 932322501 988874383 364668566 986498559 501109820 754175656 625777536 788691122 735457441 959009052 611335536 982191954 379631843 500299072 781776420 849318508 396114531 823622480 254672231 418669499 746139655 770191951 674915738 765539370 675611379 771479415 597420217 953996696 241078808 402239450 54936656 358431210 172005817 739998115 468396431 611464489 224222852 808812742 714118286 758920592 333432613 620175468 311938842 706070615 592373596 672555083 670318403 831131548 757376170 969427650 385481523 432084937 271466906 427272705 887203011 936646797 258476487 851746039 456303140 853527585 838981041 939521538 347278378 645066866 745140351 836672866 822724822 856984912 504397750 733315011 752923149 965326795 919425401 960661274 153920251 239615995 423680260 934907970 259064377 371437603 688614881 859449653 977766902 994942052 341384657 586137896 21654695 30093696 95027316 177942540 135073611 195886425 125514155 896764452 684297303 779334602 750510562 904627525 69914620 912134257 719229705 988385689 307209242 837825545 303893609 317318708 704605811 841915935 141487917 332889411 629442794 865280585 574477038 781875244 87937255 632927119 753536488 827221593 786054408 819955718 52626473 496630094 535844657 684262952 885149881 891912624 560834810 722908075 700289101 909298280 874055666 909049203 670646283 773474408 675665215 818862911 673496511 926786973 588986513 751614103 37591872 705362446 157046863 457057593 295170170 872627053 913981961 935923596 323321674 421689071 125292470 577071473 330815129 632785944 584381777 928486118 842586657 944001168 751340980 922870605 272563874 282728679 577343827 863445869 156429104 787898256 756986835 807497025 641319465 942639398 177741566 514202067 373769993 649510794 256097836 795422533 750756712 941534530 297467689 780019093 385512263 501471912 682041 718999582 122782675 208406858 495501751 640895927 34354908 706019208 262663394 764762795 617724551 976725081 921828793 937557981 447781057 870617614 126324364 430005660 595374948 862295321 194035096 612590929 688271941 878622338 964158914 977687021 320632599 999183148 48972278 474257555 626645150 658932754 238519241 776148951 984329789 993820890 659521107 714902857 613717506 640404366 373063932 734312668 202692601 387342433 344339553 892252434 754360469 796304653 242507452 665060398 783529404 943200344 969086533 974972486 999144542 999354998 732355175 877927188 544333953 920447395 179207152 227766957 693372728 960622883 22766603 536785523 400688301 922433699 345125512 653599445 142300773 913010316 501338719 583634882 381178253 755551228 934489586 936183380 755531765 870768340 670704693 671943187 71243203 92963630 950960293 953305419 660731243 893452304 185565034 357320854 915600225 992648197 480395249 509782674 992438166 994918741 885875119 979057805 66759225 229712231 410041967 878133598 971348905 988371767 854435905 863635249 848088158 918897107 943451014 999016161 896597033 900538652 459784316 908852139 856766463 866423243 566195410 828121792 25842253 406783045 189908567 811897487 231236739 776121448 693779508 973144108 750672942 994186705 312320744 444640773 584774834 631054717 907256098 916598616 76503 139900925 28465823 362604489 128086112 140993212 179020055 989837683 67168359 489776520 514473075 974377972 224015425 757862970 573721730 989969676 775081624 849554956 124548840 435198232 606137018 920240795 929281536 996755330 608410714 972029468 973131093 979135397 707292686 769149681 649863624 706263874 16063560 445551520 675215127 738286397 945715439 965250283 348669121 873572123 897492233 952594200 288472486 938934170 838367604 964351912 393877045 573823759 601065129 718445513 750696254 959533643 114546419 399883469 204714051 758184443 601985784 873599768 441466072 616897985 688596593 808437309 444964518 767517571 109786697 787153403 498717161 704410519 570214031 920896592 431044591 783600258 814097360 978371803 531322033 741808329 313524787 697174946 135788634 311419507 186157344 689253567 673573498 802259661 402797260 579834224 83684084 333167222 870727310 906071919 784993600 977939114 350455916 676613830 629397503 788215728 128803761 398909228 96058805 291123552 160847988 238115512 961613122 983725317 649520045 903674154 945222533 954592750 603161130 752444170 674369568 897128127 886504339 986418470 676784499 824280096 778182126 968025950 22145593 561686138 115503300 966720995 101317315 916054226 318990340 807822200 87030613 140229240 861074536 931792973 758068478 909075587 100010025 163089597 7689913 796852446 112808371 567037522 835888127 859441564 604448377 639962758 115027763 335771495 610672854 827125729 412265750 568662615 397097223 412122878 765352556 782462440 641047100 725529611 109775387 857155127 469844419 894895767 803541922 854615901 81644049 415279211 934156590 986457693 722038059 902591987 870437526 885198777 359953747 894041121 898000686 976951062 954695657 973663093 587590725 862144262 927460698 935178883 106427300 973362517 645458708 882334498 46688996 299491681 686189584 988207959 293866884 612551621 71341911 349929457 757730087 872333362 627657483 807037230 703377134 943541041 821393133 968537629 526049809 710574803 548856151 654742468 474717256 984477307 50354226 737123974 336335181 779520950 529655615 926371479 908975836 915039439 391984141 625819599 209942388 630107730 581978258 638638683 42828838 654320542 441886688 907508186 158789042 891315017 878383029 985994127 19495824 896397476 388999499 705830406 627113428 971709805 239956442 653729548 586857020 950355618 24768281 379293689 415773496 763659480 135694675 875634415 985198265 987510727 302750044 524755516 823323707 993005163 10679633 28686169 281129510 342599713 849678562 941735920 154300806 643596710 705707355 953241612 414585605 583639390 689372761 851166277 156764736 164731312 787182898 806072189 83843630 906782217 372795748 674839892 37859525 223651147 334928913 463280479 263787319 830979190 120734748 791624868 706245308 995972057 817946579 822892057 53750489 386351715 999007721 999008220 712106571 775299454 186439300 950003049 562297463 826559297 83126952 855572119 733080013 831410285 202441419 957100026 96504015 266893682 616649608 757707760 739995984 892806349 269047010 710785131 226066028 819359914 587545557 932889182 392529489 442850793 893372970 968151773 305998266 964007168 598549191 601908803 743262305 868618544 899969286 954055982 749401055 790887157 74016644 493966169 265100020 963136350 110571944 425574361 716820319 869320609 112060696 994572809 81515951 144638061 731759879 774550444 975946436 991010789 210375772 871920888 658573423 732271075 227731451 309895521 714925308 814226279 233299508 884893015 37769425 911164622 492117043 556984383 589718575 831152650 462879895 639536162 809002793 976208909 139164952 620634851 633851444 863373542 48883861 983797779 942373007 974459551 806302078 895950862 230245301 748602686 251362144 477878469 905617815 954627111 489522632 915260340 205317520 885530906 511422025 779363375 394473010 845211156 126999573 448771875 874248223 877200412 642634048 901783322 238009525 863846948 941321934 995799256 219085726 272175846 242779828 414320699 283646967 439216517 744822474 974063144 614824574 808392337 879163460 882358852 151667229 381417332 78979896 250229384 456618159 756782220 937638311 997270253 15758526 66280180 516921919 825105914 328449902 530977336 344732828 610864173 540365676 708051027 419278913 820276633 696458854 846378804 209828585 397835851 501011784 645747919 879915645 967662280 312806804 562341183 311482447 981958679 980537113 999886347 443902814 724643441 776979402 800321204 325944484 616855034 612403465 736915589 960783512 983125180 542193397 636847722 773128608 828320259 245217910 382988042 472389624 481578609 196497533 643646614 816261611 872887824 896516153 994841263 323898061 788271209 752841501 780021924 47361406 855881734 861216618 931964814 361257531 900587801 887804622 934849586 693558016 947223520 548326878 982977818 3257336 616458232 98180551 109326662 738413069 810006324 530469896 722271985 34346543 772497465 205637683 258921713 214626461 863675086 306307255 926128055 600106635 678146054 943735798 961755894 432121026 976255263 38274567 251801115 267368993 529528674 827738501 967839711 978098019 993961600 60898046 680475317 592653372 796908406 42070799 145195138 18158255 841362471 402354874 689602195 552626260 894843802 675910807 854978593 39160960 575735352 316009450 513731358 454561835 719453920 570814123 572016545 171938824 644707667 203748271 432013099 574710024 779704150 342539739 708256680 738528334 843305432 668179585 906438547 221047489 970309411 670918589 679212080 697895157 908086622 374671211 430857019 71311580 505262039 163697962 829086859 641305211 702656776 393093580 511135016 405163110 623713016 154979757 315687990 966867574 971555389 50503393 104195034 448420100 675532086 809275554 866503450 452217494 629593562 351494737 502616333 847352169 915792903 91512137 208661079 527853272 634426240 25191807 400962074 488584365 582062913 121100201 868833853 942374165 954850039 209296 884173728 813790110 828977029 55193164 967925167 818531271 913972360 509960483 940441030 426728267 653668714 577681153 727162733 159488262 599111760 738336913 774973725 693306869 897539311 926306414 941301370 614958623 615039178 756639595 913765758 679691472 799784138 273049399 309399691 423401309 763407748 235815958 841940552 216872863 392324602 580947864 952023180 518125203 709203113 208483887 817163761 954307663 972729237 556836949 711567619 233745309 403355951 323770492 688078219 179770490 781949585 867922907 961501763 176900599 552524681 961538762 978426785 88998126 533301095 332264682 981467189 269848829 325039495 510096712 660667169 154573152 444774271 941387639 990844137 109780568 403985717 810521124 937493807 203538895 250724726 196346677 745211504 238088452 989016021 259699414 875644055 710707301 721668647 560589117 594905810 840221702 955956133 711729360 877972640 490303901 885263976 717488496 730758221 751060878 845486078 586104079 870186584 726286348 808852965 762512645 821045042 581773901 729920464 679395711 696925897 249618057 278961130 153663860 768446004 57903393 603157028 680602772 738884396 583372446 997301776 339724320 836301745 28557572 938111196 312091094 425608774 631078484 859503537 801830146 818984003 18006612 938446216 635443255 769124926 713358918 782020090 864080020 919239813 834976432 965422903 596782032 758727693 31700218 729078444 356016474 726492272 452510768 502509645 992182524 998019296 744603884 994911917 573562077 730320400 265678489 344360146 209697925 492945726 314780927 765407151 743961060 875521349 654023142 914750377 15965175 192325616 893392365 903261496 588805800 716162112 203260920 261041048 509681748 995329976 741503843 929310171 298251440 791451910 173297468 603871276 292993069 704531456 897579472 916340755 488926843 641696908 846464946 946068808 615366455 681766577 99100944 839306510 319725191 561423886 60677037 507152541 999465218 999792979 179521743 408045587 249633372 587627076 557369885 692079766 86294124 767906768 646570118 929699732 155081997 301475727 870298440 983469582 505760562 710268831 440234815 925887046 456456127 865252593 234885848 570985416 713952174 898130863 48277942 578208889 23612700 517086191 766194898 994515753 312712853 623442764 276907484 316605414 499608119 604694895 354948904 503423215 484507538 744455974 572778233 971512478 781886088 935852515 259877631 540093787 107985723 902705787 639576917 800534250 395947250 749133009 319984734 406867298 185334100 321521140 661495699 815211531 475935368 597722232 50895932 834214429 195013744 786818390 278874951 590547946 56985647 131806199 230109066 356108189 701164126 738247391 203989909 479559569 367955850 593989209 258581416 939261112 181201037 935485993 260167685 362599932 14798896 412841804 147722072 560127808 841640068 918535491 189876703 618499421 516666332 638849411 814195277 906966007 857551812 877170370 721719928 821116421 333716952 638524986 516199602 710646267 849432863 897567463 827550287 867285544 817707715 860287093 356036599 837502479 819502231 964929798 244027021 966046727 490183768 633707902 325457348 615765888 659476108 943058017 93555195 876373561 14407477 786077702 335046819 744014780 239037326 762748742 646235812 672520059 189302031 253603134 377913822 525530003 50448194 124107796 414550322 636053379 779245171 857850332 941170652 943803399 132783262 199880473 661840301 752264546 907880110 998509675 214915852 656430339 397274573 631036324 557554814 705870193 925119748 995790139 899022387 901234510 217471730 666902852 209492877 464426690 676562247 682103914 965707280 995744426 801186399 894964072 756427833 778642184 551335070 770838557 563451896 662390441 876503073 990958549 270125259 360803729 65019220 868712221 905252961 927372189 7921115 520683786 525913913 607314117 864167191 966480719 230404090 347169243 865649984 971769912 722935918 972528839 548379180 709059806 942812936 994149929 934700842 957695501 295561026 530493009 379656996 887425329 604552366 793342655 774457004 959905555 752845768 828501080 25388000 364884930 23193376 553054556 137352081 314461019 238874227 942135655 379155708 645743830 505956638 807973002 356950571 786150850 776705992 808914548 666078136 826263258 171421189 763491113 660382500 867176647 436790162 531868595 882439473 967526780 51262967 497691479 520488743 535029028 265768876 406405118 209592598 348002969 278896176 982284193 882526894 889259919 972629542 995903098 624419397 887872197 95542011 846229686 524811016 738148613 248350917 357842081 976135791 995836781 403364648 532076473 751928695 925548111 657294332 894894303 944085260 978356850 488169109 569111876 819807933 915656055 417807252 481680915 658234832 769634328 422051534 564111404 867151106 985355757 539018109 843507234 453798189 637344968 218932839 437804461 232041969 449223709 181655181 243967378 618825748 968380319 184302864 354984529 558500257 560141483 242096223 592866661 30369005 354054009 826121362 907268505 780504167 854058018 188422801 950175031 587633838 637772953 593311751 842844148 449775222 785616477 461605373 744094811 670166276 945225505 482539531 514650733 756004625 944573104 184991344 205411318 7598778 219312022 420062000 917769176 898111005 962445264 550841736 768175907 377980322 635060868 579491768 731887657 537711048 926967830 282098668 844870511 308984876 847277264 546694032 690447405 907993858 964668000 363104415 415338194 8104332 139554015 163934775 665647877 748328864 968054742 925502543 975471004 756404299 871368696 878060785 965454112 287926516 970189452 218290677 727749766 435232005 805022999 224033593 483148333 633577602 671400434 923358661 966701605 934736027 958999644 577639674 701558784 117405054 601515755 105909861 710918874 920346178 938407027 427710444 942293470 225223275 433785602 432465895 747991879 109449442 957992179 478644511 509021939 470094349 943153058 454774070 634492093 368669237 500412379 38629548 712443051 603716036 704480521 4300204 418721631 528494554 606671720 64890825 147605697 442493449 968442996 158563286 563179100 470977366 850658703 913577750 958329120 164052591 475522577 911154804 918048566 660316129 674147202 438682773 891785042 872321758 916603610 804047081 879781967 187711971 357251981 442027951 995238197 943275182 993246888 470503318 960942196 228859674 768919815 149008463 781455203 447683138 819692476 768082407 961107484 716963443 740416767 403631206 750546133 64075400 277767274 528360630 932241508 907515754 928366912 659357074 891370750 844198721 916890876 335360510 684697452 385171888 816531163 3141788 142567433 903558096 908323159 541650176 608218457 172644176 271778326 6527894 474095825 757593791 905200284 215729340 686049018 233859997 553251422 31694659 323282751 32123495 437824209 349031180 741563809 398941572 477340894 94785878 246725432 619942924 983721540 715842556 919595717 348377653 406055332 617473310 838101985 10862643 655737865 294919411 310525551 831459169 994424816 32314154 126035472 485755308 503840453 262060916 529786767 752086943 798017010 762576885 864479242 957177321 983829856 591811113 871970225 354986659 944772793 934621025 993247718 914469945 975067954 822605164 872643927 608839147 864457018 372329550 855624175 439336350 543292592 633085200 805754840 707451293 942762798 263337546 707838216 28230198 614473362 942499689 971489891 181391783 260182508 759979601 833427817 713593458 857050831 45008939 442641666 966639344 982531022 319149158 505084814 764929275 892215879 885923933 927234223 806050231 820013041 631693143 856256712 219564438 377073626 429249025 539467365 208531489 257011425 734471801 736108279 860552916 974974773 759158615 968635208 632126777 928312038 914198862 972127420 386375339 424241625 136374997 268818841 432893179 519394299 170783710 797622474 816952158 886111576 747582731 944771897 14070133 700536796 282715293 907262118 301843587 510590186 611542361 976253952 432316741 555241490 952069698 954120396 921578869 968424054 278080824 942258408 850509338 916667369 240879001 562615986 857401449 880950873 808603964 975520325 628325176 955873219 288059067 339214681 13998489 591650549 2505277 392854039 798645340 932338108 288844780 798928939 975492078 976358060 374328791 552720422 885451863 957387527 641159206 694037125 874329811 946282948 342046275 732810523 313187854 402176480 740536244 951083547 851643066 879012295 238178887 560246489 419672143 759260911 254607216 391743830 579357179 850958959 911283223 922929129 222786175 412326313 76118938 264360846 533450023 611154713 961442445 964779583 817305343 888969539 12345739 576647554 773416989 885059612 852482491 852498367 846886323 867651210 855282256 963957416 150155026 553670106 808861134 824970108 559162725 628793253 907589008 952255276 4311915 855304663 745123248 960640534 546695186 706275121 854378596 865533822 425377759 455404432 413053641 766685385 747214484 998512909 856337793 916832285 434227083 743814177 537459966 845084662 440944074 854133281 287726631 383367803 997174573 998855608 609468733 688460850 678957980 946016452 938852773 953125199 496475382 892774935 440857352 705507273 65507367 911751846 964487398 985353081 482407340 616827830 924870648 948810557 164644096 939983104 351482728 785331667 234312234 928937484 93696120 796517592 365260489 365919896 42953240 528441005 233235579 966148841 80792497 248037421 218880354 852827365 34031114 106235885 88243935 335693166 717553994 781182241 856280768 891720050 271830300 697494603 358011927 883506495 45844614 277449597 776348789 785122968 237867976 861218516 140301164 195533924 304038725 416369009 790853702 949375583 666186388 996276482 719532221 830705192 751794633 833925746 883229582 916257391 340620234 471898355 773397227 878726034 334777793 957657169 698622408 838179688 53326205 556864064 589574147 639442936 547936986 666323019 403791789 856213544 185161988 802202028 542316072 752827095 334391706 458787308 901056786 956429067 913998026 931737796 303332317 737671912 752106986 885403147 288293853 871893671 300000061 889952934 381524857 438108382 245119743 957613010 293998340 511871146 8484163 272134284 121743963 887977698 57640579 937025132 812229379 944037470 762493247 905223561 263367620 530582968 600990067 832057709 24605827 801066543 666858103 768277684 242142263 900097099 86366775 102499448 844188988 878288935 76196842 485945820 681666747 877805735 597626685 635046105 632315902 678170584 382226212 544693941 949627844 994937060 258709432 617376331 565174369 641457432 817921916 852567821 678133771 860188035 489931107 966257639 721936340 951238349 709496757 934309986 62089125 727740307 426176717 447830786 19261754 533041850 288750318 519996112 414555041 536955186 820314727 998081850 600269394 940262597 443474694 867578698 305167259 628283526 235128191 510971895 432860869 849950550 219770720 510053723 85325003 140913901 305350662 336718812 13473115 488884306 302384687 498661824 687786349 716671933 912858940 919350763 154593437 370003152 56657974 742559002 5304162 350890686 565464296 616335314 290532790 920949479 108830129 813369075 94032708 622858906 692205124 948042759 603887031 935344050 644928186 699718905 92802888 573982692 383144682 560601624 540453630 969665669 909634470 959089777 81345120 313263180 703273420 951238093 885402584 915798740 642580089 962738776 591349770 714579523 903281354 947611158 385269927 911017787 426115944 786415527 10961548 478443290 851207740 866968938 599778816 651233776 687409540 708862802 665970830 847748918 888739378 954549482 978278722 995578790 478340024 839652845 898407102 933672479 517935246 638896858 992066173 996286612 259832015 779017116 595483707 789360418 67722363 854720565 300243594 807923729 531567337 931441354 332801631 881196413 470082268 705334465 13279285 637039682 439590459 449119801 334809172 883225662 305574106 719342616 88401235 718704764 137527502 408419159 190737029 934255801 309810971 492756039 239905650 913307894 895932800 988743624 526217802 747038764 95373564 438272200 252956328 566471797 887360100 910399241 824566082 957506937 93536747 536473415 278910382 636014697 656661762 783175101 185780496 683575890 922019711 995764725 912925243 960833402 826261013 934216183 888861069 942537392 922635903 945340534 58417643 148227020 658953805 953712720 751405278 940715251 209061608 835368691 668048404 764271497 869573837 934813211 298968575 532814795 447173151 795408894 135725183 437374972 201599184 919691828 284975744 781173136 748614406 841160434 857711560 871132491 454440497 684761891 837644416 999714796 193916540 852770186 18383459 873528565 296870976 591065416 634921328 999445421 282744357 348871515 121732269 529312701 757934692 788314923 929866746 969577605 256128247 459140058 547287229 769506831 748343387 875790305 619340490 820697195 309831836 612256610 441874345 778711008 295133036 983593739 221151051 929184267 570483568 932810607 278390814 832909886 357307573 500260739 655227273 712371616 265487867 601218667 351711930 424204479 488515224 948557618 517658287 550417272 764408297 912018298 65434611 99837510 296890153 965734511 391712414 744498175 719770614 876772097 630511026 867230246 124112624 839986938 368201359 590544670 844106160 882857399 773161818 805472726 572071681 590005907 255297913 794637142 938703215 948690347 983886975 999842508 644971812 804559467 619982075 857463797 938517486 991405365 872378014 996788723 183961692 950794997 380722231 912525885 526552787 813156539 997903644 999248573 817806051 833632644 845766248 928180816 61333625 792147569 908260310 988495196 831125606 930187283 178193751 661025436 13639314 27246668 452423076 932287482 461699296 714354901 44639955 137361875 802650831 873477011 428085029 534874726 469014182 827051114 2161534 48024849 916675259 981334307 473936593 692515229 770393375 782718047 303600583 414866363 956533066 971546596 507029346 585839201 45360693 502441342 203290563 889305566 400307504 981198300 156298223 858701387 549210820 665710249 898109664 957086539 264384349 895247663 438953291 810906385 337104471 765447648 929087662 957831958 817081940 995203979 872811593 927247291 171176930 182690136 164292777 915204978 417284435 936938193 503934509 662713564 368650880 389299475 900017946 913409015 172049341 634827079 934361676 962826640 80948789 917904743 384863066 558009411 807002231 918505793 370720444 377819220 368409959 863784112 951917457 995624749 293518643 478846790 750436774 832585769 458375757 556795595 232844581 369148251 743226499 900554227 321377935 616847045 461765083 975212836 181707824 769325176 888413654 929466682 100769587 840717964 301555896 355370209 996053178 999404691 955261481 991220959 291578959 868972479 245956483 681504675 140497026 352169696 731194043 915785011 197553288 422797067 731766997 734488967 70826361 812886199 92763484 525926939 707648215 901480598 169654075 268334275 269812773 661778848 133482093 915395374 98891247 615790119 530523347 596065850 452891245 750545478 618053743 860792200 83836613 772468463 387793112 855225936 989248722 993160002 371092948 560108211 608749941 780483772 444737080 611322698 934583819 982857518 278383223 404548816 444305643 512114523 356771037 642514706 273684332 537941369 491008482 521895810 893950813 981831888 856891365 914089963 988588637 998567897 803723611 975720598 640025506 995757025 262849137 984995038 972380510 984092418 541821388 706060210 403706888 740277780 453475848 991862559 68400357 168656417 140933630 609207729 156063215 932703447 899868906 919154997 16720946 998026787 306195553 821413043 274869872 700873165 185207422 368037474 978219840 980203171 2175992 936801638 587144250 871430609 885011204 944418613 2420948 765863629 604324240 935631847 942640555 963446555 753780609 989537207 27956328 145863526 314710292 661101964 576532415 664804185 78598267 754739281 119747631 551470811 916844335 995377605 51338493 842887145 47083819 281372115 988755841 991396164 574607837 576851167 693704196 760333202 194095225 220815527 151359988 791281159 623877541 691540549 793036050 874782324 688751730 930908740 889405649 994180992 915603075 968824328 440315927 591689907 919584721 946775242 10645338 785715977 919393377 964147997 573293244 719639059 974749173 985737066 339222879 505096370 463385511 793464632 743846307 787219629 796393770 909493046 511825043 847903178 849394996 967050812 476285752 794533747 61552745 354954349 563262768 989072479 936813439 963614277 121041847 935281308 558918484 748153698 951581407 952289910 791408324 931534595 209769060 771659157 791198495 816187709 293053379 455273175 532085335 563043932 957739952 997865201 216368011 357023003 619928489 740844084 866442214 971728277 237129498 468782395 39109495 526320119 781087114 829998047 628380299 862252491 306874540 680656101 41100333 148456664 680333029 892759328 171409737 395596982 131870394 501767607 461181199 487523482 114677590 545319105 302166081 945931223 979445632 982190480 565618274 817002375 200412663 968108396 975209177 996038064 500409482 648639399 559996855 955875279 610742108 636563388 519956460 721536395 213449764 505122907 400816814 708150863 269449496 896499973 464868729 639362730 702581368 943095625 379636922 550568445 950224584 998668354 51719893 790824949 587249374 745386840 403654096 475240774 177271405 697693073 524349673 745580396 533320368 946032653 606313549 954917342 974125416 977294319 392994098 408524470 763412350 952121694 18730446 139893592 461679084 873609648 464913337 692609226 958722153 967060844 607100610 904784426 829741027 897373106 987362131 991127415 429703936 862790054 306328254 928874913 607714649 633636430 656025947 864003995 199319276 767498322 265657468 380246370 180564881 859943703 778393127 809011447 601456611 908486795 429651452 602897983 342893037 532410299 448999704 712572185 948582399 956045210 63319167 750039936 314643815 546576931 950628161 955884313 195132473 877875994 837350235 947789958 792742958 957141276 111257214 747847036 458338975 561355286 850957859 867400575 890494632 912037619 991012425 994476491 907057291 927730177 116794365 963534575 463307889 493369460 641182467 932633635 258703010 327642787 589239710 660007464 420788311 539622227 670666079 977879076 228103458 312290932 388640999 693057715 737699834 945507712 179413066 716832005 836414033 923746223 980217979 995523618 115143615 784059293 666754827 844811765 469075438 929449286 690269208 830496563 316637097 352495416 992021177 997209925 107711244 180376082 958500716 987346853 946755063 964097007 873660740 938898842 145079753 893112090 846370946 851865605 353048509 558754309 538838559 917772893 583805668 655128316 936534302 955123272 35723203 505197732 291157404 993070297 290166564 375428751 180862150 442101456 1608583 522736491 307237220 482219973 987815599 988605948 228126099 642516188 149478327 320912602 233998053 849479739 404307265 508015975 654643610 856898738 41289035 55840628 448379584 488083764 491346204 625204118 994263358 994335383 67716565 754173168 528029194 748087326 274039535 539716598 859757774 957858374 323660288 775679590 734394776 813257837 713254879 906443389 806095166 959485307 410021423 677116888 601808253 973848089 212915731 878461124 437309568 510943694 371791355 839377276 753993350 823353026 99113158 241682522 829984229 914131033 701148844 885331091 740122433 835753657 242463776 353937487 377079646 952870853 290793201 684534638 808526294 990206192 628201137 657580610 723632121 783465360 821925818 967771442 254978546 531424450 925416768 986875671 709677851 804767094 171697034 256300581 332330284 688108292 644578814 827533404 19977884 420078895 717144235 782779607 482742441 630220010 504087574 786718786 768687838 972034392 994869816 998260148 359919621 771109213 856820984 896240071 227476099 461309771 464327478 987658669 901896117 903439477 162377278 212302812 877641646 906834014 959506528 964221451 615109988 886119986 45317057 764837116 752193793 795387984 794297887 991181234 91884806 155009816 12176025 798316720 330712039 982136694 227459842 718108875 344821412 880066505 791955042 916352584 162129515 494639884 730897787 865362045 310532552 650768612 790483942 912554892 189295234 564047869 772205654 785581544 674453761 779426503 478986846 654934993 362250318 526048006 216562220 847281287 353871763 833200263 425160415 931199735 289409130 482039708 713577451 948553042 700624164 896548322 268955360 868748720 758707863 908228158 118651205 657642463 236233409 440737329 188002763 599595404 660782772 930601292 522399270 939517095 10706180 528749093 675636398 758436236 426419330 779081844 343326694 372206538 652029724 960466546 747192585 891763846 485933072 581199546 525829571 791279579 387635611 442756658 275387665 757270839 949735606 954052018 485218363 594287764 516026551 590170560 145222063 405975218 928429701 952995909 636326392 711999500 426415991 962805720 656527720 999451912 947763154 953240480 995612177 995712987 566929899 637258204 863891900 922994693 910197545 979072748 458903132 717950845 504309245 512815058 513224496 579930017 905244827 957318487 619850155 664905166 612314993 829718873 393420494 431624680 833384153 890774700 100836476 842317201 65516446 931792839 465831251 788194742 86212751 385339787 819586966 921364346 660530835 743765838 177081200 623169945 421406540 845662523 694425872 966557452 598299064 809080383 464772774 679279938 286875424 986708254 275133325 954210646 612898106 828753356 555684151 675726858 337683169 425564508 384874999 973384495 614897810 760689954 522463777 766281345 550320374 946025452 100722198 971656036 964960979 983587105 216137279 372733362 955894844 971344307 727459271 924365214 385836000 993909774 873827058 954291490 177526223 770157958 167122310 475939450 638789715 859364020 211159859 634088076 3680018 704376567 627469728 778926565 277675901 362786714 886165711 922909323 171778869 632472151 210722302 531141741 344558277 360282478 143753522 968342971 131744707 498360912 507376766 580903420 306945034 682605986 708197494 915234550 291697633 437015711 677687165 687885902 663922413 789360157 169822699 911854085 959228009 965863689 68812990 381648320 196663351 482161535 274101301 782651261 937188146 949938868 113824915 450323838 529774725 999486813 5028381 111299557 110326938 613021091 289811012 497177893 401661225 699813579 3999521 193457784 421383894 670551364 233069880 339919894 253116703 282919729 694350874 739350197 232806616 514252575 888164733 900813426 261410198 415967092 127059835 616151695 708984590 920641116 413931244 886726405 916100422 992519056 393261485 959883128 478348647 885516829 855201739 872516775 935955684 937396373 882567577 988361814 853515108 950188284 941983811 993449965 994642445 998930949 833851353 958624449 373981203 772029223 393606412 465295251 592754268 596073345 306460436 483384218 204980744 526809948 492362401 995237155 672037957 821505864 96690971 622128415 46053358 768637133 491543602 565929178 475097432 997320437 952326272 992585591 666175147 993562667 102798270 401430167 544188226 669948883 155392070 382331890 199760295 286835870 929000946 996303235 376788182 424934343 123991287 626529033 850312888 927254887 156848850 518442783 393011828 954340334 888554886 964945078 827322556 938812501 866821359 913018109 69293170 889332744 563643089 604421615 867039201 926986055 432606214 714526653 451195081 795322748 258512226 774419036 806625274 942285510 179922264 992252038 566633703 924375242 800363939 807236568 94880345 971008048 70729577 129027054 375490339 927926912 306276365 491391032 646247908 788799540 522585831 724703862 949267531 989649849 726915239 782745863 900375216 938625786 993154012 994303639 237460210 413558695 300922256 430816079 326369092 676113121 41254258 680041231 790373357 817380868 259593253 321578995 621281528 824000332 635056810 655994289 801995834 834907695 959081128 980536914 805410026 995293253 973193871 990476898 358610712 374347057 510041811 801373033 451367357 878645928 429110335 817334226 213665706 529843503 398649464 813358584 529218373 605741520 187181926 228683225 620862473 832885855 194211069 299766120 224765252 472674074 66398811 68554402 330957763 439291129 921936344 988789842 436712568 645335696 640179815 757387001 74770002 420863128 715415335 749155741 508362937 943993782 461088936 732991014 745017289 924803368 273263367 335501584 950930568 952911388 462922255 640805700 887702635 931572082 259526449 668309795 838668652 961876685 615633177 675579509 201518955 204000050 722320697 723388953 460607338 870072226 401922863 973627921 539742543 776065752 385020244 576263074 754919822 950267798 931839653 932332353 209696852 713521307 308864811 603592510 15884152 73239184 339119209 510036107 100757864 813707510 896886890 988816012 413273886 700836009 155793269 400118468 696024222 698194118 418181088 927877213 875836319 975050297 862432970 918324582 449982455 826336932 209490853 449144699 188977338 271667033 204215101 680660690 221133105 306162357 540956994 546884982 63646940 236307697 155036632 822866520 527056054 547122712 465949215 602949530 473168479 529864727 902850430 983603428 127150665 541912374 215800802 692884238 743794030 810114663 845981459 880016811 367746464 685600407 785344834 900549918 269227106 736113126 870616064 994641077 617874562 640452170 435676813 921232410 931036289 965912451 80879078 88134484 315252356 377229891 775684698 957076879 318817747 968694454 257096782 922319033 136799929 920712236 36594332 240202949 140180018 822931238 782074260 820187597 102763167 354931755 438693382 918037928 288326040 568728088 343224791 481710175 267817136 367180770 70718775 842024271 402023363 741928831 296278057 374334322 786986746 960914681 659772356 837355997 683396457 737859005 110249953 330638005 806491826 871016504 314338460 949322109 780704367 839263468 696095298 734827729 591559125 747214276 697286932 698273960 872975770 976141099 217296994 468999739 25355634 194261724 284410094 720830659 955336193 956299527 547494970 820833880 18123451 636976857 454584837 775992298 141346055 795142248 337386916 732716819 766570400 994320899 269796920 477177002 495893105 723883220 632349221 954806620 35946237 935164936 232300402 289376726 621455176 900128494 934898700 944762885 330031148 752303399 899293154 927505685 529196640 787821178 978139481 984212146 966559722 992470264 845264204 877760329 904020312 971210620 187631298 884230938 769865789 788279925 936331755 992983797 413948480 868366260 498204789 556085970 592541987 686238312 69248375 858474487 643800334 855330399 412477488 554565675 692689973 873739868 684785712 818104701 787217003 902552017 603009893 907599202 632849469 869027594 789306176 886717549 979257005 990271009 124920134 701361693 820814809 835069480 881298200 987514505 528481230 674602171 311012511 728838381 194719719 557568356 114595111 497709075 580034059 738783850 336389291 501564330 478855528 578837233 85119936 179247442 219997879 755977806 272480768 916647934 208631510 229769470 195251389 923929615 832125636 861671071 656910922 781387934 433847685 690168432 196259335 198542411 86725273 134816341 791750075 810144724 838382403 948600121 7416897 55526292 762746394 977523598 793621525 849352197 236379305 519233691 624982118 968993449 787812449 955324479 389690342 406087578 470951918 557715960 567235207 672386969 800263569 979300953 240437710 995487836 440858563 888652317 301041839 457263941 839109571 898325694 48263556 67781288 792670381 962587482 358435219 377085394 995650091 999294009 411142478 466248624 932492123 960860941 244139625 445332316 314215072 582946975 694467210 709509149 737556142 811050307 95287378 799045330 291096075 739593187 168529773 239858127 738511611 985273013 257707388 635431921 111519904 192444986 127031092 689455153 31638651 230707782 226835965 744571507 790953861 955832844 54258863 990495577 868359439 909130026 615680872 769700589 781313079 986609404 839353111 906547133 592097001 881289935 28740730 803466844 895279533 993774151 175482524 685308675 736122138 804348313 240047756 797104226 139543098 480955648 327246889 804875342 561715384 645270361 608642064 858126580 193680022 491345447 971166516 993703458 148515579 943327535 476485943 750587890 171639751 699363075 256663096 378508454 442126078 792231748 410422338 880339200 272351943 391247318 384456585 766219646 234570997 435975484 523282102 540434250 811617848 861395970 704781396 718035556 431560253 545787081 53281291 988247837 801234841 977037560 758086751 906999024 951353637 970163538 343674918 681258087 264142928 936221363 378362847 501873243 792819961 914601218 807999615 937611394 630949571 813332433 594346913 794734771 557952449 892549646 428149832 899635000 10684185 182876405 568485307 625049476 833870684 956245313 372503185 499293928 263892505 835387778 503815954 939894421 752694262 923553137 903496913 958102444 850883978 884758244 939686891 972449440 583580402 584204114 170440088 389627098 884458152 984152486 652753380 950333706 170903449 353671754 858058369 875694062 481995471 867671448 510020680 943930991 108188661 906837093 875704393 985897705 289049351 519923189 352181498 641854396 597136126 984230339 851567041 894438859 255667321 341098570 596110854 826001115 928903124 950849166 225657264 448803603 446665365 899011215 209692592 940196085 111513115 644409736 37160719 703537060 292185999 972199451 244731410 539718897 66411469 473991157 526895769 873618058 895816535 997699588 639030308 673149173 300813086 921027049 311423409 557031699 397432626 998119758 123180376 822705052 969672702 996755308 115632702 171175198 190386438 358154805 929176516 929924468 331518938 774672766 150602136 777311141 454618068 912718160 742865986 844060663 942465425 953966508 290861360 658642533 522316596 992777504 787270673 794799973 327096591 925476794 297977770 914450733 939661496 958019560 642897617 887969433 870732502 993947827 410574133 946365764 657520500 743072087 471600349 597678573 22221531 630657259 55383873 820181364 814006288 931790075 916112154 964179588 838222411 957868878 371525092 711944875 947321679 952692831 87402540 98968027 291606799 792829980 397275261 764712862 178781418 220649302 198637384 503819925 147167965 371269449 619003483 918022519 934294634 965222801 715001792 979725088 995611782 998366977 230638557 478443400 358824369 542637454 78611721 128930406 844984423 987602554 758054820 931640224 914185522 923062817 592411574 886479960 532923798 631403874 233829967 295687375 839524156 931324487 71184432 171603114 974075719 984456400 636029066 895903375 243526823 975800613 546984053 576687708 122315485 736212878 280959244 800928426 6836378 425696392 998453310 999032797 428869282 742485847 352316703 816730125 949016509 956478946 9040553 75855481 216225466 733947471 276167382 797948003 736976651 903946112 165034436 979203782 933287330 984717635 504578628 560083743 964988 860320758 236211078 617188435 604450787 925563351 72711879 869935708 343445732 993403579 146635964 155120009 443936845 810905170 785654958 853779640 607259203 954501045 414179975 643342673 263243386 872459438 317155146 847280340 547704781 706541264 633128419 988132157 351163247 792395594 210459734 580388522 868572352 922231842 378438936 828020476 72288362 929004971 866930912 999549913 315120853 695709138 839852577 903388959 788381622 888203116 372117774 744358337 851706806 864210422 636378673 971279556 582307252 707247723 494934412 703983143 793208861 949556289 340154087 750997731 641472180 900360897 115730841 754517745 183423563 351990480 471929098 986212089 416627886 529236016 955182405 971856249 386665754 791423569 389044309 902448728 891144497 986114993 454969661 747972352 722227556 750102537 842903514 848902491 250757101 409418685 717643546 983149774 345831663 499946195 898391674 955693692 486745653 925071930 426837739 783219896 957986171 974938728 716747276 829801137 71042235 80399399 991882455 992565657 755229193 912323858 964778041 969749539 233066318 890615279 721132176 944987946 844599305 859280301 423536040 889823957 493421566 846100060 512286268 629015894 407209392 594660940 609342293 964804819 152181307 816013550 975256120 977226236 621330137 895615761 699691864 983240045 662208169 845276559 55330603 348609185 866104115 961441916 757236281 884319922 715710937 963742997 196821546 667815730 619174433 971810317 121319589 164470661 316783477 700173453 918101680 961576454 706648444 799299485 807818069 942388961 111689941 981853124 995649891 997226230 254053248 614390426 833357898 977633546 719462733 979014852 655234627 698615509 976927517 984136594 667289605 718582240 563081825 927869840 818536992 841694520 875460951 904244402 2899750 188586218 921326664 984870076 492467295 788626700 215884196 637641264 925436064 996326428 880769717 952186819 805539450 958892184 751012127 804796423 40806864 666381489 890984146 991531980 938770054 951604748 178356679 200256693 325804570 512489063 664734357 913849157 646350857 823198345 697410155 935130310 955835478 992246698 925706002 951493336 720214961 734367787 676018644 727691765 476542641 999257905 855902952 893497126 678466966 931381160 977642693 977670228 571643247 936113929 750386370 840201166 658270575 900452180 502844467 939907318 655729494 956040098 361798147 890342714 107291651 695370625 277615436 701480688 875388600 963162501 884760055 979047499 540058050 761246483 569826070 983206250 180120729 965225054 292611596 590925832 913716230 932319729 624055313 960983408 147462312 149768169 25182703 952800245 289145588 815029535 97486477 252385112 73554101 545727019 387605446 899052751 367517556 948408350 831910077 986823333 290411794 489012733 549323854 993037947 733837914 841376861 934083675 994049650 397964789 869746826 370958165 652976952 176500646 408708825 695328726 964290711 837966731 937406639 864534741 996714567 111180801 742059775 863474744 996169438 382642188 667697545 899020423 911347790 786631701 891332333 216110827 926711118 867477930 891374903 706629943 921311029 760066733 779045246 816081490 915142871 829352099 906029803 819888825 937232194 323630495 932165118 786157810 892371493 731580467 939089730 811599038 919897451 863251297 872140544 239877541 491938730 105734605 906024732 627051362 804191803 99276339 404355183 431012114 437576622 405181243 467839459 55257322 234438132 91160523 941841640 507353042 926034450 825489293 913516140 777082140 881976754 68261072 319180463 765228289 903887340 965802426 981863582 291131356 889644604 867782845 924601102 933089292 966451464 726300281 845433375 181148074 695067768 851397356 991813178 235147501 979501179 768629574 788227485 117766221 971597070 740314846 847129925 203706898 720400315 94175289 723597565 137649824 264219618 653431549 874856348 282744705 287359599 888255817 948930050 309858304 878645936 192150984 878654034 816500184 879483659 220622441 447779116 55292297 520652967 525269547 792776623 132053555 659814867 825430429 860433611 569922155 760089104 633822858 964829742 342058717 687497609 274748906 661700522 964142384 978242243 184082973 945701352 847006271 879784919 321057826 427558463 405297847 910662959 824074664 925011706 749065928 890718339 791196417 792728309 992819710 996037089 751565115 953058414 433190436 869140245 698443868 831155531 633945274 916147875 561708224 694787758 290956130 633995460 454362291 733077969 276346828 614344389 474915226 681800584 983095816 986925606 100063307 743988723 524141934 650745872 164641577 455007144 194680404 590363239 224738542 345095060 758539957 944588477 803249130 906376361 592936819 798121059 408590782 924870418 18795067 463247622 399819325 592055205 236084363 713750434 296984078 884375278 310684429 375389098 94191141 871351955 43277165 75934673 199711497 575341413 457934659 829692771 325272657 672309079 973996154 974730240 132026461 514077619 391983648 586306356 748466964 792390043 472673314 760177376 936248126 952574159 206504359 470218518 738343129 871003314 595778834 684910992 162300628 246861780 674088127 956507650 417227900 989536547 198629782 970545908 872043791 980340391 361500231 634370366 269427415 699036854 524568797 696682561 508833283 694714725 614862854 706304012 319862084 472748818 361193972 365131172 828986947 936694526 992425700 995679377 317729574 479867391 272005708 423863692 530650981 971831257 113443187 227261432 820642286 838375932 21518698 774549317 845085847 880609945 673681934 870189236 518392172 709033881 201817231 441934317 312460146 965737382 970870252 993733683 523534920 853729299 581123760 907303399 63685524 522730943 748054568 980513733 92874091 601710420 989571843 990730070 655362501 750901350 915264397 943730709 313441176 395964624 987061426 989728331 856593275 892196091 874281019 882656014 9293232 895947721 451181267 930101118 711818159 821436915 535889371 725230661 119095215 316997457 698860246 794037905 109286458 900770820 752511133 930809373 302597994 662782710 760296271 996226734 693572084 831684141 253360192 828766965 833231731 907729744 392850215 708763887 356053051 557505323 771999954 834919212 969792286 978353481 159930246 948422449 825454302 980236267 770630145 844186657 722620383 937193938 576114742 788852004 527727117 761011587 249389581 443134742 585264641 762958667 946103642 995767824 561877892 719625924 642475840 886576891 708461184 931331788 604251437 843421100 907473970 992537978 752298181 814610611 270855841 482954722 77341950 512926845 88016778 523556967 51071225 195823647 26376872 77458310 739260566 838485566 284484735 646477909 532857382 737275321 257430167 388336873 123463141 233316706 397213981 471541598 445855690 931865154 94024045 877414680 196774573 636505324 848836694 922436108 153150277 620329403 906515055 980918933 241389183 555906631 479070535 514956553 426005022 784852985 971334439 979428732 577572279 636949837 603301056 932859529 719300083 965548742 335570057 408275837 927870474 994684633 951047007 955923646 727667739 963797381 841335684 993459619 464506117 549268346 49716358 191640470 64349291 725112175 536562333 873419338 149486547 929664734 589257988 888900429 146159804 486744165 976448414 994738341 176964555 703909688 68814261 704114201 233173122 877712049 776501221 971525738 99987168 116891806 739465701 911335115 738406249 745952251 528559949 558728088 124492583 666590365 464081932 750488427 125892562 464847504 260482592 323594284 829907350 918666415 257004143 415953195 168051506 693665932 168994435 177141667 887905307 940637850 621562375 666234214 123645232 561753314 238131952 464610087 599509155 658500912 622067482 686549280 374009031 423827002 651719711 906207205 836789375 962501319 467308377 926183410 706451277 900722591 24555761 573448716 202842387 569341514 133642774 801014842 852257012 956241959 760640237 982162644 132698236 934772007 601983799 964666533 389882243 398730610 709531026 936291481 533679653 946119646 1682163 294952695 905708080 989258442 645388841 859940712 627581627 782613058 759801317 911457289 222960468 374000596 703100704 734912651 190522590 675491855 416179124 647964157 396739214 471035046 150685550 390913383 647213982 803646689 174069419 966279310 404637552 434647474 651877194 917026972 492541011 509347779 534138927 948280718 621819277 978420868 207443036 614531787 639229415 669703504 566830172 819339777 123273874 870905574 634154278 879912016 588038483 600870393 477598299 768061682 472705767 583708512 631063326 955693040 546762592 724163027 630438040 657844451 669533892 816080436 686579494 769427508 462010575 677500239 658826350 953203564 451547592 697113657 86775949 430466144 346446412 460279240 703134687 838943926 87098775 388943331 304976452 346527197 753381463 767509227 470525405 626654467 128261687 394544234 112853174 898617702 500803196 872687355 216347594 296159639 103899171 981002959 568655899 970507019 763592297 808732436 63821389 754028639 524662325 549109349 43406905 655148687 428601208 521626235 644255555 677081652 684004094 900255808 194786926 957473816 452689578 684344481 598404899 891782022 648733468 861713256 204212707 625225611 39329245 160334490 422018332 821859912 297284832 721302503 541786273 679942575 96385645 434168393 195265576 610053977 845332417 855448178 341822653 960162605 971129498 983035812 688968828 882902147 141833530 882264557 143158803 479323055 617222971 944614945 940326161 983859454 58273790 168683791 214385192 283427716 736742112 791573649 129215752 895320366 42859277 793646955 796606478 836823139 455558583 699561659 931306412 972006566 959886234 975577532 88438609 662596770 685860072 933504445 637065249 778002819 30826235 167685827 674087020 689127007 190049682 191302612 303831473 416663697 144528370 353800915 639505521 687472265 538801149 709408766 320935382 765610055 664768294 952247055 350610502 724161983 708342045 930378264 532218438 562196229 466397159 552611710 706688379 815691980 361701743 575316992 485667848 721934689 548397890 725404213 224585974 427635386 928838567 972400865 340125934 456713564 480079 436095964 434850083 686289598 337492411 660380785 944473587 948287548 572881326 908601487 76684881 706730984 160807398 395233384 626930813 794031408 535947339 944605116 159674316 539516488 515157410 800009683 695193974 725841062 554498855 824557020 32584702 369604678 635079634 942096920 59075307 708210653 450248570 853905406 710026204 924309249 99325998 144363411 503963499 644469976 449166897 657546727 788023779 809178125 829979190 944665619 778807319 779327355 822743079 875321765 816296095 958149007 906081857 944762968 97431546 167892825 905428954 924356838 80138391 342793933 701514137 890991026 168789481 824389134 923760228 941027388 490228841 771223833 439363547 660421737 88426212 884255585 502100613 668403087 699067475 795435956 248739632 463949551 135619421 546030000 96943587 848673591 114606035 577844212 605035742 735799293 494319386 504427835 640870973 865326751 670360952 820783329 560680134 600101712 558726214 562137220 195647024 915471187 801370490 937167799 984059329 999427411 222118554 376938588 118111813 450762505 677199285 925587073 859303560 909281790 591527916 903216136 932931287 936898223 209248059 893419727 40680954 361565459 865126265 902185505 349754221 442058389 584041309 640415357 908500392 939329072 687527804 758026238 91361728 468941826 211269131 515209592 911715662 994671368 746657357 910885036 47579894 561700530 97506342 221293896 834803036 968012422 896859222 937317031 707984458 821690782 408059519 943728306 604316680 837714552 316239472 606611141 508384731 646099426 33628310 889268316 53882475 142459490 168556392 512582984 985772405 996933219 938395214 994511970 648803999 882217878 156549047 963793617 399228121 476279231 16767481 220885460 419312728 699656182 540159997 997427492 818103272 824624584 57298281 408551516 631897227 877351565 191627848 265753630 848154429 919373697 184564574 669164016 918900091 968420526 247780730 681746540 892749501 980206090 552032665 820050620 70350837 886867591 47012489 803486153 744403837 946039463 12844867 880819818 385275213 514681131 879621889 880557314 520960658 626301101 178916815 913407791 37503467 101719727 330705184 488410890 331409367 539861724 32363367 982636434 501815026 671141644 459117897 552711118 478844969 635192818 301336331 358732015 274812000 579394791 874829451 927038489 973866744 992054182 7955646 811241503 176470345 876063997 661837390 905397505 9942641 109764637 174772827 486757009 783789202 948350157 438846538 622595612 550464074 873290198 314569883 426374033 578531011 869958449 680352114 976942434 277245482 793504719 386849880 940911095 215533208 439417965 14475234 775082559 583435425 976962109 105882599 239187459 615165555 785137018 843574437 921677921 466708059 832754791 12736304 128497163 752808621 845249625 708475710 723056138 77125365 766119260 32622802 211266587 648870383 757530198 940273755 965607578 315840382 743331411 809040043 898507741 538960765 657367396 119178687 350586508 358591711 444946437 450724389 897272209 160601387 861362183 833582742 922677577 243830938 308318438 243701485 870689618 765668090 966534670 6022327 389965071 876981257 975626092 938340821 978583415 945661797 978569795 779594419 852129218 146449300 423430514 784619913 969209959 979738922 995251956 223383584 304323525 364154074 503824559 644357049 987617007 138591967 813565196 237966620 977969941 476841681 549451226 416874954 684791101 881086998 932551191 197237912 589753211 231046061 971694881 980448449 995764151 964725355 998551595 843042501 895884051 895549556 998218972 52186874 177637207 894284238 999434647 512914418 987448271 972102105 976110668 169457218 307115286 235534256 484244039 547411550 647244670 617368535 750263703 496231434 994374687 856283538 870291809 20670819 574187170 756496752 812115454 467993623 532264551 83039620 292015925 952933201 976920241 695074586 999250814 157391817 834775520 777235312 951930778 500410789 907183979 38698033 558502670 343675569 866474151 399760235 685770736 676260096 718518927 477383697 646771253 57821877 373156667 770808235 808719457 422264449 886062082 524361822 738776708 658360943 770175698 506546616 524408590 583079125 715228331 266125694 895852833 110903064 691702621 864350554 883601634 74783681 379249925 478318276 566534530 912066929 928124360 722805781 722921072 288451610 398890993 831461520 976182999 257727318 285014725 556010602 644446414 638520139 700849410 819103066 871279415 955044554 982497387 381902027 594393610 743644187 849779317 57815688 482037662 540467124 861557858 620890755 752239089 353879228 530565505 325449117 398849475 814412111 941614687 239800926 975516278 946881318 982667005 217607297 509759003 904333002 926695968 780574789 840192517 391174065 795572852 693913289 983875376 766245824 920701520 750728137 928965849 187668280 292379872 986677303 986729966 381139257 661865199 923082463 960959510 115927667 671937878 250167228 663758017 661296171 763473467 705359087 996625376 746818036 787583284 487483100 864259955 808166209 925151454 967633199 991042457 959811900 960424911 882081583 960845551 3795290 348908087 623925339 705016629 943606919 958193938 535049678 667901009 807672031 958601864 973434105 981533421 849582594 915805567 195266217 356678470 180932962 535153936 131337583 812762672 917961998 960009746 264396137 503238605 165015024 673986993 721777666 795629901 513908808 921449285 837127851 850901659 478247828 724157342 803164239 875325369 246459079 734812101 243531673 403495892 180662989 511140306 953080995 977480008 430462334 802679042 827605423 880727351 538166301 989480765 756460982 950883903 456652233 940340319 198928916 248885554 376056068 834608013 314753058 896337447 393106402 827104022 667981371 950383150 380441888 478621425 944910071 976419858 376557758 817155369 143636986 891811537 229040047 877350183 248126534 414498840 902869317 953869954 343047382 955179096 670586354 930944467 966562299 982610481 650237608 666819634 833606449 939372464 641554424 729808437 778864974 861169720 422057830 790390400 813150796 857247207 920944704 975709278 137313962 318864417 637006428 674872891 812564725 908836607 616533990 872660528 987982579 991335625 441432972 555057785 400139921 832220853 997829423 999193584 115189536 627484048 571520777 867355332 440214091 900753214 475937901 692386812 288531365 911009336 62369882 354553731 243016934 371043353 212436760 997973166 406884625 592003852 794494023 882228408 401593768 461505890 625336045 861560626 428830918 575031109 224096657 425993038 711196852 763193305 281558114 802987873 495277646 987828522 45116797 381793945 687783663 879951404 467902393 754603683 438163906 561504778 162517960 257847411 673925343 974136079 378407984 937091740 383458451 872886211 989198279 999940502 995619980 998315425 803044348 966639473 745219662 759712840 326929122 610271492 74160909 442227883 656909340 770738137 870808722 991742900 793186828 955788491 839201559 973496848 176118834 436630951 866923583 892278336 652351739 752562854 411780904 782653549 941936267 985215212 984700008 987002882 435160310 525361377 973926216 993911509 142023556 530378472 917361324 991354149 515480202 797758120 270424052 465498187 247201428 831709335 839742635 958467427 769292089 872087082 421305331 851258688 990990744 996653725 591836129 794166735 96978816 966456919 193593655 414815174 64690895 297116865 298706424 674662815 316967668 430984591 244174496 704673667 170377549 675808323 201801585 397011575 645104067 969122455 572575146 959425608 887352685 971779124 448334923 878273221 541441775 928059316 816187182 928265930 85359810 268076706 608653018 632240330 933303679 953165136 454035354 516796275 630477972 823910279 3465989 850278509 226956503 390795945 275188525 363513696 761510304 831663756 287729513 523430268 170762001 832713693 801095046 886049868 173130612 922010158 467684242 893651458 456154736 549688885 265101263 768573864 913661235 932383756 731942317 934630588 691811073 793429245 161909838 916533804 113352164 634431506 665717715 905879415 683977644 987145873 265755113 847693815 998616256 999509001 746112606 811047965 606520729 877084989 231255576 996147135 556126703 611247308 673495120 933579368 166140625 240653467 209784378 697667336 727375831 773065131 665531560 938521792 685281127 753802047 954000104 956848695 139500662 305949712 330482515 380633838 638831980 760996968 58068425 948638069 764494878 832677681 195095368 588818329 14927611 178598729 586869285 639499929 312819876 735838797 891614805 921636982 435061619 889401095 751407047 929721952 757349468 924669364 16184838 730839268 805469815 817268387 757373890 819461835 249394873 860995575 581196935 955660137 282428479 502383923 749834347 947292558 369410471 767476370 631891561 855860943 477676634 710450733 798006864 991540218 436936137 517017160 452315630 592345489 933789680 958454588 70090976 432968510 712766086 938719978 373260910 980946421 553848671 717218947 103176050 390425599 25994853 938055722 627796720 867020625 633721775 777503159 96386230 265869334 65879372 81052962 796154787 953543440 583283717 876806442 943928444 995344420 108226353 422827270 469371274 636070507 576405866 688819790 548342571 944065785 956089007 998010052 388866607 394401618 320418633 411697766 323115978 793796831 187695971 911853128 568809701 699144632 684226559 945865885 606193741 796051752 537047382 690514017 413413665 484285999 986024073 995921070 961384381 999995777 278863905 472046683 991132632 999233366 154608196 399214791 517835515 543605677 77328715 134163137 463343328 613460359 80528864 741874911 509529545 666347592 869461871 981511261 993306444 997908660 912983256 972027215 403499489 998037737 653658761 663836119 709424789 922081820 318760708 496590143 689227909 919000132 250238834 301372850 669581125 781569679 634904408 898573493 583611875 621269648 965085908 996681078 523424358 582349573 769503678 816778726 463074339 578367209 286273922 350610272 582745267 821892396 341263184 793651319 672710775 765476510 339224857 984616895 30846808 325616862 964082357 979931748 774408783 936109869 703408287 763049909 179587231 520249626 632756884 938666923 557062109 762560593 150889576 764859746 663763956 875893903 378660952 809024398 153374916 866738958 5490141 317430145 159208553 267125804 111567571 219669520 830251355 870710834 798011844 914653831 756522959 964718916 782293317 802249101 301590275 868876866 526792000 775292239 188518963 802848147 319990616 397190567 955158516 965554912 548785824 801448870 194714554 740749782 921949824 931869598 428648579 549724469 594801740 623008523 396497115 681811182 654121367 708857196 716335759 835615381 540664111 958700880 865697775 879301009 885737370 982784599 58716728 723841462 945060457 952328237 476901938 900051038 735301790 813836145 872123751 977152611 766867697 979178867 385444305 621041737 492343103 811337772 507163171 913753702 913511517 955474541 593213462 945216130 544626560 703942317 85314974 161106413 379764137 432834126 554000252 560064054 529230063 938602303 86950130 824688497 439656609 859130593 227543787 852685950 297681860 760369224 645182025 795864957 698075999 844525332 18690421 305944811 888916602 996384756 532623586 812749205 656675301 734607669 919181585 984111711 603486433 870060751 766372749 787067276 146684136 348417487 828576077 996338133 438232351 960746105 987756163 992126957 630614436 687211163 871220266 938756256 696539891 793511749 247081337 528326839 239028703 349787437 351364146 906034647 558958506 598096572 352165192 907272387 856397759 953096573 608818010 659505515 158097983 217011842 618355647 826610369 897615796 967760671 265811520 581625975 949709233 995847287 937016089 954268710 37050962 764782384 390208672 465169712 697039857 719819695 938804741 993677367 111273345 361568037 334483955 524069816 777244224 946091271 62070904 445706245 164916788 927898196 168000379 923852543 398565067 583997644 17507679 993116979 701089298 836314620 884085792 956734985 883547628 908914026 642132924 852328151 968807861 972792587 131610707 853352414 822803959 950098825 71828787 238362800 88287936 163266738 63320460 970984632 956003284 960708775 678534180 749917895 547506892 627067536 833304405 860198494 358765716 722697754 655229748 845540314 102509494 968319989 679011061 951157457 700394221 914914260 250832181 958199695 79225693 536479880 95141523 178385179 171068516 800757637 75972393 515584475 493710030 972813431 973690177 996075238 376246515 862959700 856848581 951174480 663481791 801729059 867845296 951276904 796331687 899222910 63501798 748832697 634606920 944896725 669631061 937471659 392303257 944243859 640423461 708338962 203622675 252012736 7492761 132918112 829787161 996192675 410762172 644511199 611376701 716851780 403050854 702475192 321151885 996457224 909038370 910310704 816457876 914781380 569820382 983866880 813655387 912847828 541467523 876682864 706017755 831858440 105745451 311086435 265977728 986507951 661826762 803465858 93913184 405597476 654774786 856801032 110390817 566050430 424326191 733962628 154204641 429617699 915667512 988925004 145054257 425071688 50258710 658391905 105701214 239716454 78890032 187473746 611518462 784058929 28138613 571172223 766055580 838837925 424869990 623950486 158088511 699970021 317334053 472477344 386145165 711919789 269079124 922209708 388440492 637405266 707684200 892693781 492540340 593101996 398052360 705318805 735804703 921135393 711050401 758553968 814374475 843237431 496189419 607029660 633853276 719238428 276536171 474622685 835164623 960311445 662055573 666219729 580863243 978874895 910401912 923928009 515307112 653692671 634246478 745559970 226563312 890659259 923902127 959568435 431319265 961637507 202701757 441085131 741261305 795308987 384281894 720517567 356194928 961306906 133227279 343747027 248690228 290622407 188958397 839948232 855774803 974887792 978345187 989104869 621312918 866981278 460180480 895875009 326822906 687502913 403407798 523526010 856291118 877757985 502775242 838700213 377551744 460592291 669126994 910332958 433716345 765507301 740636588 774830930 810062495 838968545 348912630 893625155 454168068 882561699 214616585 789857548 345998075 835403300 712690966 985910964 524706418 933366550 389029235 721999733 414418787 622626834 359493589 624638627 350177136 921940565 595667975 781410044 990628411 996338247 926266538 985239837 954216745 992938273 197929923 276583977 649118528 984899119 12718731 451632431 502330707 851237022 791577240 996264594 224988199 521392523 939734771 979276733 315678426 946972718 228727225 826914438 657760922 767514688 821154117 893457206 253795416 803313963 610824290 790237402 182399932 398589398 275157296 671090190 727310375 807043472 72925636 121028724 679319673 899426078 541332110 550333534 338670595 360775963 756580834 777319678 913576732 972632026 334798663 745661870 115272238 788064230 104103976 552309961 910656062 916611614 89038216 990453052 120485611 611332303 460011025 813008790 296152813 881094927 507796663 876457799 987777499 995002766 319336751 794498665 800882338 984773974 135346284 346879607 274038421 852445184 855751850 990762149 874085750 888368794 120329797 824414738 994463949 998964920 909715531 968945628 696842711 735824049 595358035 715012381 870948253 999323584 629511178 777108338 37072801 996569395 137549834 266855875 145289317 879080910 4216562 131715996 949178362 966550092 663431386 702179058 121296180 949588901 215555953 665808799 879657372 952064862 608131810 970314394 184098352 317900203 60961966 881099389 305184620 964357117 995178735 997122100 266850304 802265769 183165033 209576255 571638535 862411902 338386363 389171757 774385286 872510598 361639510 807385748 655649186 942331302 85879652 451533354 339674456 751529160 760476802 902236439 720662328 928593897 183153381 529554083 112369945 842041261 469327893 477160368 232340400 466027237 772660012 911793633 897848390 975479435 552171975 763398458 662389123 669564228 346089170 816408398 253996637 685382791 2886414 961731135 121746263 964492371 777363714 804895826 149653640 947070178 412983553 668058035 820290686 873118120 121053951 147078460 248388684 791639217 236037793 312703217 781838621 945131098 373884663 693494490 345293786 802500476 422040343 647079755 676257496 917312545 615959881 758475506 13045394 515697459 419493397 602895222 92819937 588431018 123368985 440417335 900000532 948785212 216742327 578839970 611541630 911487916 722616891 923384453 569685925 636741018 696248159 850143299 344982923 415566120 215435817 218779587 245196040 264596168 819608134 920751397 334935776 569531969 928758368 999159672 835026257 893144638 728469639 818154442 868320846 955567812 302455026 474230720 784054666 847603909 497666029 891464278 481660311 493572859 803614164 947805750 99447942 935749049 889445502 936985393 261017789 642332575 681027070 949627762 65837059 565452812 917241127 985082668 201786195 637303181 771666038 772600012 711201749 949770870 515323781 670909646 974490027 990350728 16115502 780270503 502669751 802683496 458588203 757498328 978159731 992179503 533535688 739577565 158619867 620257179 857100882 982501107 851437263 910572644 341240603 491617590 173600448 791882241 155117695 818052524 868013193 983678572 874151210 964385800 829795815 906629319 977589021 981828155 724896617 751279138 360239983 765131387 447646586 742827557 466148888 759031686 455681770 738115839 427527108 575153517 888310297 952478290 503462514 828345152 583463589 992814404 838432000 874852278 347044878 576990285 166574322 441059918 101917149 706621424 571026474 735143840 262785011 967863992 476691720 793343232 365900711 801178394 906925985 978033528 915862901 984234377 466588022 533769967 1150199 474956900 872144299 911965709 557118837 989554501 789878040 879629384 72926082 430133736 453385995 650784784 433636185 836495392 5442549 381298237 9689913 30502062 908345033 924452888 675156055 706673006 88295170 834551696 152421228 848981962 701138135 906653433 746634732 953818293 546215243 811340907 244940725 340891078 165668954 590134087 570063175 920817622 832628599 938416227 628636108 978649587 89563815 575818432 988954188 997632619 269513983 791943762 821122199 913247528 901560427 956862235 194346749 352465558 731699861 756183615 907331621 985528413 817069204 943102323 444097040 702168640 401422263 970359344 647597777 877039723 938499615 956281006 213313383 826980040 882768955 992432059 32433283 802519274 670891447 714553678 100844270 874093512 488325239 768627623 180017102 637499690 395912962 724180299 257711940 405583298 298862322 418345152 70375242 391989386 150943811 700190743 486581727 726251727 265556252 604844859 874714293 888596220 952048645 984229923 441440587 500804804 13100503 148867714 689784219 951678908 356660177 462611892 604807411 987720245 589248254 673507582 105056992 726452526 366885689 599377368 366433026 862235119 561091004 876954871 136470672 236893025 94164271 705705355 906170920 926389166 482637693 680543938 951416706 979196690 711173368 810305314 199264945 463743601 389737729 866865105 94575907 232642629 700537211 719777035 640313794 822165386 634370702 969014400 430618471 543281412 341470974 890856519 814758608 822482021 830455786 857905541 626961310 936441273 623638354 672662893 640412636 873850950 426995430 990739517 720372222 991029186 892047542 973018558 943976375 976876478 439610995 755188691 747750420 865116770 695758451 905369752 642063595 712651139 841506366 857945476 187606437 509162593 159870675 285505292 800805039 820505747 666104307 681951329 232220698 985032646 41694210 162516589 813881018 915515507 785522453 916409645 419520606 860833501 886252515 908822984 830123005 880515636 299163366 422474427 61696067 776063637 531540367 660489977 555428722 803912912 931685185 965937545 343818781 904959315 915288594 943415922 966108192 995971506 395191799 778363859 637632401 884552395 676349662 719340396 271121224 364101646 753582189 858135968 274683169 706165001 695531522 960574162 231278860 398329264 796686654 882731360 5952286 942931803 953960563 974538636 559517099 973400104 798456191 906763583 432146621 788453066 636231968 673454448 97088502 690084509 825430006 949873303 32556164 838058847 495856265 749353469 851456185 964195211 820685721 941472081 221386593 485674555 311017116 395198504 55935458 414556362 152744238 845347656 506061051 990985925 113089870 276265792 686145713 758235750 902647942 979126908 570250637 701049884 322472087 905950638 175438760 712093485 570047867 726747057 589715886 965314028 617864526 619526525 342247027 421574676 65116535 444813726 318195688 477820674 954729408 957070846 270832546 444038095 87391481 118692854 1760962 386595421 465100120 482434022 835620814 940472689 696004158 716764946 290690296 837262256 920318321 989111209 361742934 734819192 76579404 89928999 681243277 898841668 522514844 595505763 133158116 564207690 181111329 486078428 154758791 196642832 116993961 921877744 184118933 279946955 790764304 883966377 884232805 909033537 457212172 567533027 323562989 536955839 378528168 686022712 737738723 749359200 200067946 833329628 857447470 869321652 769166919 775221694 318208558 897960331 351954239 855844706 766475753 830446200 313810660 966823021 229837192 654064948 243182793 640271951 567149906 804386352 850996691 920999821 390885026 670823915 418106746 588826388 591709685 617068089 852007578 969146147 177154621 900776698 613017623 628967151 692970325 863741685 490597980 777396044 266096491 775639493 75807535 151718028 232761930 548336296 28386739 715938001 359214853 594026653 851553279 855342454 288626780 505389306 874142987 941083394 230017258 987696001 666428843 672047740 495291091 869734909 13443939 80180925 810953388 931908231 886952174 957051259 815797166 848810701 508184170 752355632 821048218 839272620 734434437 991716188 429806970 535894932 43938522 88849736 546125755 927390437 307925951 514592851 873331467 936116647 972588109 988286361 198120083 594156030 739875903 868958143 844710960 860677782 890432922 952887708 121630843 406450943 28075500 449469271 749233865 876152932 235303034 874196514 340261947 579577458 684195974 694162882 181501626 501285979 459606873 656056070 935909330 955796296 763230633 851207024 565131870 786842831 453315496 644199611 326731771 779070557 362304104 699374177 91995672 117376471 385119916 845211366 216555624 720522954 238351857 433691410 914785122 977141460 961891076 975617784 665136733 930928389 20554004 240779746 98921364 572073593 149496343 552377176 533355326 869096240 893742438 926968746 485277303 790704786 442713845 718153934 336982248 986905363 363394190 448771000 869605337 892169837 601623158 815448724 434146564 928177548 848921064 965902797 252949099 384331964 662112749 906817983 430354714 605878159 772998062 786570933 911068389 936426061 60215924 165439361 938501074 985382045 95803092 102688979 637259883 729635829 4533157 486047946 366327115 792171493 89213305 973348432 654298562 865712415 745792424 851693796 528658180 853267892 506216967 800052198 401475620 574631048 412575462 593559964 546719818 658593572 180073136 411398511 721608663 935347299 634444291 888774257 589358301 978119899 384066757 847039933 918502396 991543456 707556945 907536235 145547093 868784877 861985238 957435612 742296407 909120696 659280153 996424760 593491000 749163421 241755095 679914484 400875296 535671564 185810688 939173505 966572922 993409302 945582739 975020412 411268619 490383716 510240137 840752319 655313510 813197788 782848170 922631574 663588987 810943106 158113195 470147313 350755489 682223155 242589734 328477182 62149684 430466017 616850295 950649779 305210061 635986436 863825884 974010784 348573086 875049377 986071172 993058713 926460843 950438370 208477171 562252616 799000547 942324225 936633706 966465000 577056027 884941657 587476202 850028647 84641307 888398025 886920064 943412546 630177980 817815320 499024163 786148509 448065247 525195191 753597532 832670105 721257081 942003391 818352744 881247246 286490150 861723728 702190101 761246380 154645685 302486073 269153716 810790508 121218290 736855961 203521758 300244150 541625521 597680065 495463224 526189649 208309183 758964766 531221188 993531220 44653659 160663249 932252915 974632373 862366788 940261752 773781742 837477876 821920335 961011204 682401856 750015746 278217819 423462735 734250029 881099687 38153686 682609350 380093383 716697124 814614486 945979720 731216529 805233244 374861189 640831725 247786920 652706289 297030086 452790303 822763427 967634210 3219537 860683532 59545423 435459516 996933493 999718476 148944709 408120402 795125695 980680508 68243060 180599073 276531154 588234182 966198645 991307011 557967383 755229824 14176178 602930187 53823390 901970449 30305001 546905965 733416817 743843110 329024631 499951659 49055724 992623456 832394447 874918537 199247680 264739691 484095759 861456626 407883835 796369754 208313143 780973740 549852109 605884407 337088172 382013881 995225770 995321024 352429251 466248651 935401052 975686856 53763071 727667357 731721125 902199863 749372357 765288818 44912541 434816966 570991624 900679683 77973492 355580758 801080085 931915818 37524834 946713080 368705848 555710581 935514379 967522334 663245087 826059108 193446337 792546668 277503579 818381663 794458368 977189640 337753584 787211723 219176405 908902581 52999418 280368023 650208242 861615402 927112782 973322468 298191890 982911438 912835452 947141436 996587087 996847772 393990694 885191780 281761690 374022324 963725228 978146711 473134790 823414778 359622596 971409298 865445424 925322374 595490163 633033684 225446928 565599746 786433023 859196700 350771367 724461233 665168606 766452480 704223142 948719775 478073929 716324831 98759806 488966556 695436428 872793552 685292452 769691018 957304179 993320776 19963897 40234083 610707432 816020501 953419283 969324282 319958811 975064891 364074494 908062720 457109452 516902459 5173766 241051880 31585660 599376204 947382391 991553088 921497692 959475656 605444778 893758415 78114893 518949712 148701652 871367677 871484578 910184296 786315576 813632089 679057977 959008080 578863391 885423133 436839931 994593259 419686381 531425566 988079614 993468096 977660055 989946702 835051849 921106346 384295876 720796989 61454712 187311069 101798826 338183715 171243736 404911163 194838070 713016031 597175602 643971499 569911221 999097953 921999345 962946710 310126365 743595131 354578798 951429972 836245340 910343928 337121253 484289504 64603975 903173893 890646915 924063820 792865288 874529282 555382884 965907231 25612313 394770233 440736551 676261951 373983951 949717437 692115581 893500774 746147984 893118531 935758445 970486792 443369240 847807404 12835466 262716028 92240646 512078564 532859957 933983337 47636247 58733561 736250049 804081666 430622751 661485441 311221723 884802027 705776818 879299625 520334447 800719971 596151295 786696059 425269008 888633789 556340145 972381212 726685014 733484730 19380687 239694946 655914989 708654943 402253676 529599633 272135677 694184624 926293014 943006376 961560910 978666957 136396969 217928990 689537470 919237102 851112214 981608316 300386522 555409518 863777679 880020191 132260153 846421904 676386578 768097157 380003806 914853259 46170386 943957830 922747863 976446790 843649857 883180418 241618648 631959998 426084698 866301260 725981722 740636417 711183997 727189950 392528474 936276176 512166590 695207172 755548304 901821969 679905908 712140137 586246878 936182505 978062756 989025732 59809178 674953295 41188840 659231137 388553438 932428131 895101202 907454986 602026674 608424656 991680522 997587289 110752888 648333600 770650706 852238223 325165762 343336302 570555656 722763460 613939923 989988438 627436490 851861537 340291116 594873006 281936170 436002540 780813546 824441479 407606547 708681225 569508191 825190105 311240941 467419680 953892871 999538658 85147833 132802129 961329199 977662615 475761860 627577275 760905581 941338191 65759919 536328544 768655561 911925391 950514777 977890551 908619366 947179189 837981946 870623194 489316133 966685819 187836139 335945581 683150849 766743064 695423232 798327283 446272474 502033562 200186015 758704980 530360627 927118926 325000608 990363251 588044619 964809578 233064094 658567716 669335334 809115116 244994636 632059840 449680506 837521527 114165151 409134024 291271395 356821623 898082598 943318500 732164358 799127978 207600422 263443368 436350888 501237343 105200843 165685878 896406118 911351047 804095961 831415500 553813823 885852604 692764749 696312431 362884437 583024469 956412158 974161167 626947053 854323616 542398017 602957469 531723053 819949107 637208106 935182232 263172279 582605844 620497105 860522643 288696405 508580025 894102876 958064162 191072838 439249025 759208696 774752023 454940777 968874274 310317917 876075637 275633299 751806775 967290974 993555225 860330423 941479683 572557087 984239827 64748610 85691691 23384818 607496464 552230182 739002566 315277869 796694122 963908798 999363036 945009204 995842324 208043698 695555776 307447087 574693444 871145649 983186814 229582801 479824539 818033187 820509784 373615648 496935474 350649594 798764345 415061937 736725599 281583481 540957968 14217183 152326636 432836326 982172269 839972310 898544946 815244860 868186468 230165043 374494593 221726921 481977653 261403320 264180282 9114887 927908505 167433893 698598972 980061683 995485019 124664151 889417417 418805098 639492551 417087125 444699678 847636262 863697364 775549013 812927145 622149959 852111423 420953910 508338493 365739065 551160854 526791844 974924213 931273589 932796268 858675374 921579650 874762644 975227561 104460810 345837577 368513884 387528093 889422589 985823876 184863253 721189010 691779493 730885961 961589682 985503718 506033482 741847297 882804149 883827159 592463119 720056879 609164074 788076376 872018704 939197665 251713328 994830776 566735885 589750875 986160529 986241978 74268848 318694369 445375662 459022321 598309527 973991985 663229240 750341899 307083087 703260798 898818756 957600323 542224755 992478591 254498467 837010436 408380360 739853113 96767727 977068590 857555317 902835982 45493136 128028209 140521389 193231111 606623003 798434180 909333014 918620978 220972429 290740201 233448268 280580939 718654863 810077445 610862364 819691433 472638175 959170015 722851813 867282279 485506937 744336285 168697400 217563345 488527861 621650432 84541109 230831037 532901999 669444199 232659358 810639178 598395582 762519938 916460620 970870654 975206402 987903533 692116870 910420821 145535332 527077628 498167422 882160744 280449082 482733365 543408024 888997957 326765967 800125810 783518060 873123679 884234019 979901604 83330343 368125189 320141301 496330244 398845106 410034734 761936948 917488912 293729990 421393752 505318716 573258922 188268677 931766337 125145430 799416115 232593476 307634487 204483603 858322672 964080944 973497371 557088261 823226605 427078499 465397393 519492956 857475043 934822796 966255965 707608494 846530728 183780200 637566496 790902845 875225527 782512659 973085521 557937924 886163922 392238600 482899817 86881706 227994303 577614778 664246218 334684195 450220523 197728707 216179864 439615814 542884183 941768705 954645482 665589431 684432233 900537382 990219102 927350496 932230844 194615047 643318647 885939393 985988588 297205384 658760682 326312739 464540917 832998116 993861936 522254414 566510440 611826675 659433534 113028713 865166497 587818743 632203258 499800041 560155894 917962470 965899471 502472003 934712910 598257924 650599910 977178672 983225162 540617008 544132283 783494882 977687796 236444414 462868877 410794696 498663675 944028419 987951235 928878901 964122982 259095157 802870487 560525994 615061884 852242717 968380770 779524506 934801833 699967911 918881795 506210669 848117776 805390058 846314676 671693452 909426339 6154136 439398479 861976023 867158076 570659330 629699310 902066403 965302234 333470038 737849140 813225332 831321131 929853697 963619637 378693556 438502848 506968625 990906714 743610521 885963955 617254561 758144819 329980468 692011131 704037135 866924060 870307700 933767606 757804915 922046008 634399930 898987040 637425104 944691969 625216341 661966247 597215929 920690308 572636645 964470103 411439926 797439366 698486690 702195313 150440602 709466388 602504751 810509319 42207915 98169096 315747914 737625545 443331913 505218528 192688413 822701462 351135455 531317630 527441773 907405235 998498666 999159764 778345052 887511880 6455880 949724718 315771828 973609948 775635473 948399584 38668283 344267428 102483641 833834778 82009517 523756427 586527144 878797852 95381283 604326870 906852823 990385087 716482892 890820572 319445210 365249742 502734833 806122827 954764973 977497153 325426229 629588682 298796487 302512910 106187125 697351536 378299739 925668716 659542308 819763141 280647120 625379683 670119315 878738440 53952783 917644018 647668221 732275661 16858247 656415537 107008952 274141300 523577608 547714182 921413727 926473183 623542877 978198335 909021023 959766795 751749581 882719092 412680494 460584064 454303892 736796732 442715044 701020729 729019307 921913671 498983984 617717664 295634823 663414060 136834188 533843800 963931339 982723541 723911272 963990178 119622171 773921860 422757351 976023818 362220619 579461289 856315387 950601326 455812551 663291061 504695285 598530515 897290511 898324098 195231058 625110542 411416417 767380729 561795724 724411424 55671910 295131124 766728033 987686917 95314965 242254742 195679780 772861317 946075873 966206262 569333711 854925182 762043271 830913620 254074224 502251428 811536850 837402342 969942410 982065222 386866298 563296527 575140485 847369768 878318169 955836945 284611827 473072764 563281679 679274795 207599844 524390073 429815703 729973568 655153420 750547012 795785330 998561060 592173051 848703707 49540578 245177727 349725147 691718963 341242436 760324213 470766417 585151651 671634411 741983122 883115598 955984285 158487285 293760882 518788576 869546646 302493744 426930366 860222732 921411143 839839190 955912197 559204844 929913241 774736948 834361492 151997139 422638282 220700214 675494809 993403746 996632214 957649228 993660867 805161222 905678845 788670441 853997852 477240988 490862258 268136679 295100428 879655384 941107905 911669901 988693911 923347148 981009423 289769438 390555290 375123048 392615572 999925803 999969123 313198494 842577837 121344583 790398361 68096812 954289504 295080118 965220259 997493295 998423763 472743141 826672210 852081674 880580905 7740258 533651551 292031813 376382558 630096200 966234171 81416503 704022512 879369468 976869728 981726494 996398310 840467684 861152629 182946615 947315357 236501988 357256524 966278639 996711692 836166826 876392869 47968924 120365071 542392547 741923617 38090665 673088335 86914206 683961106 441534382 448204119 169067747 947822026 412404425 800026671 328145784 511357904 657579225 696370655 19555654 566321512 227399514 603512762 634969351 944990304 402152199 818156489 596908692 902615492 446046330 869532170 588420967 817649856 429662350 760379697 88481793 807886376 474648429 538603421 221936019 533691742 94754835 873852910 537587515 803774349 260377587 270332204 269731376 516735135 525074738 907554426 253708945 914589001 414524962 987864316 616612249 706583804 657464234 793024298 545470034 914997619 646199561 955388609 733825320 872200366 550806773 591221718 496331624 911373186 623630392 693857167 624527569 988210411 143108064 507873574 141979529 547194804 666015018 670419337 108587671 958079980 255659725 283393817 723260933 974630676 327489812 331996558 95288594 904020245 842944771 970540834 910501730 946136195 87413671 129516728 820625376 842908327 764384900 778156594 665821383 787027185 418727512 494467447 945512509 946557119 749502023 997127272 911990652 937645523 555136403 691681898 989441651 990742207 993781387 999056663 719316042 994780315 815490131 916274953 848188161 928345701 954246059 984505806 893462397 985285106 411432999 560451255 492301252 982535111 1131163 395094703 465158131 642659960 477254033 937505578 996113727 998688556 117413844 590951137 348118076 820924712 241940760 823264445 60415193 721067318 89279597 502706761 705697986 938801311 965198534 975728646 42173323 405162872 273740160 937973632 526002124 695890005 788278580 872044321 980942194 984886490 264332416 276476148 206539253 840777339 353762074 930152763 162779198 389755267 784052808 785825632 396236871 669364753 472842351 696761007 843827655 900325136 187630480 545398704 679212664 980801025 770234643 796225164 862884498 901808368 87400394 851620767 72335858 308335704 189073986 802945090 614807158 965710919 41177149 552717310 739811396 882469574 387771062 500643081 823437155 993291710 696602372 788426444 167870277 285168357 135981524 183247455 896039054 912418805 671852241 784674745 631721109 969846342 783294307 855935007 649908062 736057259 80477829 373923991 987613485 996669154 424948491 604068817 655025532 893773653 870494940 940752253 973497194 989249632 877846566 947621183 986670012 986905394 597666416 810155708 614459714 619990280 994983158 998740480 956611209 993579160 624434018 669903796 485059017 744852206 731605063 943331947 515242179 826494444 244359557 936982749 995293996 998138569 216338213 971536310 983795425 998028143 419611813 732581742 231283560 394080615 820522307 887875311 628762775 964568578 217643076 912814015 537196010 741327455 359641193 638079219 273676157 967013277 147104091 333418219 163793164 338303059 833902735 851703118 353766579 632766166 149216272 257596636 303673574 816527855 714246880 933899188 134126622 751642693 397487458 909992988 736384433 871973226 763264927 795109299 176812787 330228062 648146583 714289398 431149712 718667592 812634951 872719090 742001887 748637083 472780487 551059031 183050360 470638994 189778400 386925191 334819755 990117453 28707513 188421270 408175214 490369031 623944010 984541292 635330324 996526167 153863155 761974830 428827368 575288949 235291510 260100948 753083175 905416780 378855944 455019970 381628914 475212503 602483654 797402237 192247757 773254779 147857477 908979147 287608008 312627090 561365699 581045472 636832617 755780785 163876759 271671056 718337268 856250789 615558575 923079088 40709893 67293321 995756162 997862744 251475848 305165288 324293318 535039271 755642165 772152994 361237887 911612737 386286166 666284981 480019526 895339116 781789927 920948729 762223140 893934827 653371352 660898935 412858456 780765186 219839226 445439481 21281826 633370163 106874459 602498792 448467418 860719717 451428480 467495170 843869876 873560259 759382264 992650775 724460652 902559175 699643358 943986555 917548552 939211324 15549560 475681686 784824854 909118050 336949432 565791214 750261645 904058636 377588136 951947728 563729800 818765037 658855946 819139917 469361138 564050133 894539291 963721488 116928480 293033360 982184753 987132584 910483116 979385640 411070160 526700516 132339792 556044268 566294702 568138806 11595827 883822962 923116034 955391933 72219159 245879657 536968975 605964330 739437682 753195739 613045255 933187781 993385239 997478752 370095084 610605213 596665844 933691192 482344524 483145707 235658740 739120557 292896058 778677790 741390326 966861929 551151802 634585122 845942787 851435166 667037162 670219681 831028337 893463738 366719593 855021711 199369096 769170815 177811270 998326269 516076679 575343718 45123132 885622353 295826959 629803911 853136424 949019666 688297787 986309109 131543659 936937324 895933333 979701348 703715916 773061694 101843089 294983036 653434927 659578532 990030649 997110031 414059991 539841059 82125897 875927240 52098497 292568903 703443797 983606477 13840688 986981291 991451996 991695482 586852096 875154109 547811168 644639597 585829883 659648755 320035100 585548593 218125930 599725516 127426552 327590210 781672523 845280279 256693279 638080689 900918069 945912299 304248449 631439892 901316058 909701061 30911142 989403995 180273575 507464583 373768393 727247602 35336648 279300631 400487014 567596493 763008453 913259272 473548483 475129581 38236795 147217107 963283682 982511196 36772802 581698210 275372484 469854713 585491223 855872273 561570297 645516508 916366265 969457374 636514136 965622123 661924161 936914484 218081218 445172820 920302372 991429425 745876414 959621656 880256066 948639202 232798818 708710354 662331122 730020778 930102728 959080267 782225291 999926262 342712390 600791983 798097065 846698566 934906762 951754198 509267321 738714939 412830494 541083825 760504329 869864960 542398539 555218811 328068701 499532434 233690404 368817609 2676744 827793809 451882793 951552436 595309634 961340489 140808191 373395194 780714682 953820867 372121631 877303116 886811938 924061432 786181376 791793231 629025430 707794302 446533183 557632331 62093336 150583871 637091613 948733938 669725875 799274020 329567096 515495892 873739275 984391124 825568943 971763478 711699786 939868373 98784536 614049491 140281671 991895990 54714355 619996498 80068046 641546485 823372578 981167962 76457307 337319885 612366793 912733323 250673504 430662095 769668688 864624018 924959163 978437625 255516461 608646633 498321864 849855589 154423360 950177678 214585076 278705030 533771006 536765565 930670698 943925098 214977300 927064367 71261986 321989554 537306089 898674319 46196061 494393481 380517706 923385146 837539704 879069200 805900094 851996642 837348093 907383826 923684714 993680566 402518691 990539778 639081149 906812242 271709736 457146329 518595284 988571940 900469328 908767600 240302874 697706010 510703641 955902575 335969084 621711237 442361419 527102009 904915290 981133687 159563538 614523064 875203322 913203606 949507270 976901933 472717446 979149566 65778040 412860596 756326333 786409896 997403356 999732825 301298193 714245475 776083763 929764085 919960890 939075742 144204634 244562720 598395752 634648973 279123617 311779551 920185786 955036819 936075627 996340232 88337986 282705886 522184241 913217352 136971342 169673489 314011564 911827332 623588492 989426784 617521224 959222091 483725638 944583170 960840127 983684193 790838224 931892346 934628241 967991660 913502563 954226225 321246457 520361846 559858009 899122548 318726893 945407382 508255760 696431134 347729397 683308163 1953348 657729035 317495997 324887840 331758998 616739620 668982891 781473741 864094113 973317724 983288126 999473514 794113596 947090461 978345242 998130780 487302999 651224253 424848588 526801682 882465822 983229776 300842802 850922125 891408513 896572136 739596132 913037128 104513085 135988644 671000334 982549441 343518503 679696519 589068505 737967891 697870231 858400892 258058084 808488645 640642490 795375832 293117485 704003921 301378636 465199935 426842928 429198331 111253301 190258210 366345902 543155946 547280196 818998631 123045475 790122452 713159747 923170391 32306116 699678034 355218018 625739543 709109296 743993103 188423817 544336883 230198039 387882060 98632068 455813830 237305712 305068629 83864020 680578267 85816898 137206689 680040918 682359855 462790512 825396729 508439029 625560480 475867757 586386098 992759050 993884472 41282499 493822435 6896210 517477379 749011075 781965859 72344198 781787817 740300268 885748528 923540538 986019894 709848394 736281464 791216093 821853367 331733195 702766656 197111831 620644618 450340626 519875820 689045043 994691203 368322397 826090859 480582137 888151267 69762438 115374343 93814511 528550046 479177951 886672685 770483070 930107571 642214619 817782626 231993996 276561157 260550192 761013791 250278296 556440168 258278590 369501264 943952986 996684775 372705797 939698936 710403707 990547804 639376752 820298658 576519907 937250366 481468324 512566756 53285484 753821690 112948851 951544778 769916094 884985694 931522712 989311588 498974407 539945015 410679180 882173326 779690434 939606791 510047607 957129108 904194534 936164108 713903793 729163462 840605953 925796869 89870199 346105096 51160333 293789317 63078641 456064798 416602102 806628268 550750671 709902132 266207650 378636097 50390771 546895883 808195154 840451062 915691919 925783148 53269085 306341083 656848568 727130225 110734890 378135459 632558068 939342656 751108893 820823818 977280624 997638477 351715097 592986533 317872231 511722825 30223405 694300076 836410089 887502960 603095790 947668776 534532458 856355041 376449178 895222937 466448375 632501398 140649551 645866610 93620725 488879761 744185100 767995213 117074361 827137892 94280888 851829477 746643460 956872181 906178124 945926123 266466660 659266634 55017620 271891287 167922729 198361214 947526885 996336621 679733499 947609806 413407708 648529765 698414818 749980634 178297825 951339180 415145697 793900530 475615931 511994562 499339852 527898614 515480501 637065085 996260100 997419696 384462598 576282351 894889085 951275331 609921334 670445229 107560027 922465529 618245609 674087112 550158255 566241897 169251868 454110597 327851279 829936664 13495222 81964201 127197754 333545312 12930412 945242467 416834195 698722498 923422828 945449000 210908523 368049957 646916694 780483390 674730702 962276195 191433968 698383356 593075274 921585829 611627482 744010178 85055357 705868503 334617969 359248212 568905723 800903336 721420179 974906728 310185810 969298961 636111600 889301464 481822469 488933665 47728132 593158944 731258535 774331119 780683731 852153266 61374847 209517078 542428911 688222287 390065267 994232612 231664838 871901824 979429788 994214472 448032508 828495582 282666028 913453832 776056198 869525809 345091119 436637175 75204559 848418486 402619625 621553433 78811122 354317779 240092091 774029052 883900023 893167308 56708478 492174637 315614272 896163650 624550068 921611968 494075809 518136228 79458851 218162191 557094007 713415529 869662887 948837316 893730193 926834131 233843949 369712614 120573009 943513365 384837620 815724812 108630048 420696753 217030638 230763629 720061195 891242912 45911503 388236243 241406855 336873068 152297170 673250653 308158348 977788205 282895203 332438887 667838898 971407528 685945335 785750341 417413761 710773859 951378124 988275522 425281328 957708999 304107331 513378607 914485458 934084319 333628847 658858698 798636286 958368038 217707148 448100251 472101522 943771234 416861240 570356234 121676135 918530778 102223108 319268115 686902485 950636815 612041623 846549420 271129373 273924856 771554754 832044838 157946159 366237858 149184269 354129007 832099792 997719314 798115438 840140408 623278130 826347734 681375189 728874156 819570467 890107654 393851315 629208021 255922535 390621528 634278603 974140348 802960055 806230909 217223170 592258188 943859110 958839512 691611640 946684853 551921158 971545279 427444438 797213079 446710645 991332822 284866182 460187861 997017595 999202192 563002307 731907855 170524404 606426776 423442773 568801435 276785174 473505519 681455000 747650954 363301806 620275775 836656874 950603069 621880267 946797771 924170130 996455770 804881362 808655275 863042073 962070413 212850282 271499295 974989344 995918485 225352981 528328556 716110705 871335899 607514272 701853973 674248958 874808047 921094318 955681225 231293194 673516494 486978182 597816569 733026980 998250790 693686006 783399078 338057527 395069325 457778509 668404911 719812934 968011844 51924554 205174684 893961813 930972692 436459049 537207782 418529955 969187535 39801307 850983755 209985465 541830281 980212534 993864189 303505147 694244437 401647694 889624107 446825177 510338092 111054953 707454158 276319046 552974927 339808029 790788306 6370350 576204406 15060268 554723680 946615986 988919431 373784681 923273991 109335330 222147545 557484499 855551735 789242433 973806592 741601932 837442170 696776518 824994262 282126342 382486461 136179974 682610354 894030889 940613683 476879195 688166140 857923945 962345895 470117532 961203366 155170090 496151976 353594645 740181318 966684676 988832902 449233576 516463120 546034846 718066624 833720275 837136289 885485754 991940147 744414374 778024811 604103745 853520996 116276157 446200164 456969283 490767451 882167998 891168049 434119821 934830877 410316489 780497675 744523822 800435443 404795662 531954746 893359618 993875204 27811047 657012772 683345187 894818943 739157804 969035644 490500366 992223664 870101561 965549854 524130248 622933334 449536910 978315378 62805127 942579860 211732060 220680546 542904344 599616837 906329932 945053549 922917305 980263598 187261993 523475033 194200394 584636014 846010816 966181862 127222518 425533408 237624570 807730252 540567120 853066414 936957826 946866858 410304087 537521510 567520681 784170177 854689259 946720413 359286507 405248029 127761468 584396082 431808367 745607938 477812566 627721520 108049969 362358310 427979494 838919230 312388859 559459310 516455500 574988615 370205713 820493177 232511341 238304929 904599547 949027820 78712021 83263539 993382773 999731631 693300171 891407321 103149008 501615590 894932663 988779468 910832913 944384278 500474606 542579020 882480813 980042966 278300476 899500452 401134844 428464770 488830671 498891116 256193725 990398373 446238940 663381177 53224668 260247811 274642520 610632230 719800071 873898496 663940566 665847307 23788186 416784776 214556859 764230779 259354191 528065371 717868268 784824075 646571013 786762722 161632796 443967667 550223098 699062262 594079042 774812863 259305095 262069507 536513390 575582372 117764940 223368734 557117767 852481651 114564756 899089048 742734022 995562207 459197428 699514580 621294963 637713875 938182295 964310967 898930510 938930535 168285635 636202337 836004941 870212654 550576149 985110722 560867361 831336092 556241394 986029040 846230289 859897894 358591516 876161873 488467401 601055026 412114845 634861050 745620353 909589903 659887201 836559760 421981109 569335136 209584804 390798411 768198096 840362687 548409122 892885863 759230359 861560530 940211108 969942043 852862322 928393848 547982097 831804571 151988268 672034424 887155726 916027234 685515705 749390689 541741039 930226949 514242332 943416224 135838900 200912397 586027554 943505624 676894485 912413817 107066157 286089863 524859139 704538106 478363211 835850245 693515058 861881666 994822070 998445172 255783955 948431397 952705058 990893316 847077688 977930335 323458117 997426744 214149408 860033888 121934540 765148666 695604133 922132401 30698724 957923494 707264641 990849088 98795823 565297163 904471899 941274449 420101109 510510351 966949019 976469125 754358161 798028503 596231435 971850927 48912365 149055576 118995400 780036217 240593638 959169881 946134197 946208123 931073383 971780592 986492101 989653876 354389577 769177467 777366543 824676984 345880383 823592692 627333586 736682747 402828435 507622176 91964696 630632164 60038185 349069637 414601102 579596700 304347660 996274614 647088015 819124779 271490873 694130178 700522462 752747145 974877838 979812748 819819080 965748703 731055253 862512662 39402709 875459724 189341280 658876352 216932870 902310063 820909722 961100184 70944761 100271732 585030662 650223118 478404950 717984069 135902548 618894622 476410471 738502368 530645415 738873608 833890286 869806721 402284324 553165617 334627533 803940373 292009224 779106711 605381238 931539509 921746044 975523271 155127897 327772929 275503749 891931414 912672882 913878690 537584621 780412076 610949270 716526591 726134840 930700447 714710608 800125162 51630408 880928456 972923628 976212062 358525273 915726876 506896844 998939574 527070577 602227098 637281710 718073342 569645771 850068453 114767679 617937622 54113102 139535393 497020006 668405545 164390376 820800638 469331601 632807328 345365506 670479353 742385557 778078503 505155230 923538710 199949826 605531447 426672674 568898010 143739091 859692396 824949919 948170256 149192632 929354166 688850739 734805283 719788774 730232940 594271612 615861648 999380754 999490504 185471188 663420695 354926187 390291284 879790763 948558038 35631423 767106917 622447148 887362305 477343880 480367919 264585948 865223799 420357529 629408885 67838321 524613699 105652595 347244966 71328127 676619442 768207955 818693838 751789105 855249403 247117449 481337633 100761255 522356940 219453553 381414018 179144264 439184012 152161315 852485918 144954247 496159360 370019329 596516527 72321779 175003569 50190981 239228584 946324588 960400758 383383812 745179157 162938765 164220533 520413631 588730589 145283291 187651004 45502516 891440847 566439357 592234670 59575213 674867331 336253613 719934215 540632916 585183079 170711736 409065527 64919684 875308710 13733003 137471074 164832236 829364217 275789789 397728509 673224631 723133481 917100279 988207918 537210800 825249304 804315525 904473809 731401795 858747939 902611227 946377036 985131209 985222577 396088680 742026554 99443505 239018451 537600218 562612735 885560921 898844223 966576784 976969982 76108106 912967754 823948268 868353786 579312594 743319669 947143386 988602283 872504503 913598431 973808352 995906578 167890108 866501126 199724417 442614438 636350835 636772833 277526685 863244998 739872677 948857803 597061380 954391720 890197665 959477796 873931037 976495326 328340981 820457380 113557089 931899560 922283959 943879826 733319225 838096498 750931073 937741305 421340527 959683275 48211481 368587526 66037211 285494707 119833502 224441302 753558746 768216971 274639469 611601470 492109461 588549564 446124334 702813397 805722349 961480841 270575674 716128763 997937945 999146155 22878108 80248698 828814728 934852889 573006435 751638385 114485790 656403841 304362079 877766981 251994067 374966560 702919298 965518998 318649162 318679970 207786480 718736055 221502026 757402670 168554051 930688655 788451007 793329896 443314022 589834193 164437154 362505295 807457655 981055521 341015383 448533572 104161825 419315577 919226719 964720688 102488340 414131284 261292490 456774171 492101163 980911192 259916456 301173834 647989918 691461208 24163816 503752439 992340301 995572651 48281073 61053814 909745717 963822730 609730894 789591490 724794723 981459823 341235914 936454023 802035833 831131720 610815426 641210400 404855590 836550482 234929330 893293246 960205638 966135012 584858316 690710649 596366613 605739371 395603609 565494235 577328409 993701441 791145050 881784440 718767487 851213564 959146869 995929528 915528120 987083464 20763449 428467186 23051770 442047846 20837351 197222469 540285028 706794499 35193591 263986680 824400629 948054450 138212978 578450862 580118362 678348443 702906730 898021502 103207796 604935726 679849785 733583547 90836847 237145527 664196815 809591148 798963174 883297563 268359236 436490056 662422924 745394868 363721030 778256977 377166524 520873431 534758103 774874191 120042943 941498390 954732208 985963986 247082712 376075270 164660266 884275573 894553416 906261254 427121252 853765680 901036463 978111651 792871497 814296445 637847523 872145847 899119670 920122833 343121453 908676231 538281136 760064587 111756279 450691488 522273266 805386798 368136640 989679312 423327700 551654703 704251101 925201884 707170852 793786507 497665144 831155538 382599596 869104118 332608552 904979348 3375627 864947763 969299229 976184403 669617674 802925956 948603940 984013296 192532971 912522331 42673853 684475330 941109153 984697914 702438531 887875910 431920544 701820924 155891269 397738040 876319619 992749666 584513838 955830503 219120071 542054196 24621639 93958501 736155842 993990435 16946332 995742494 398179058 784764664 372601113 959252630 588832807 755617203 996709168 999683604 678148779 867470222 570728044 841038146 702439084 863768066 396609738 547307873 633601287 721214319 850805365 954291797 346109198 460154831 326078676 586532597 113062649 539084063 979120570 991423263 156348631 729790661 19708847 685034532 633218943 711237397 489618270 689807177 565288605 862994141 457934348 929755341 958569604 989479297 948007920 994400762 415684756 783290648 835172957 906315800 410340270 952843526 908509629 953378764 361424449 714640793 50367108 748840132 2287170 117842074 826111320 908920982 485775648 805060029 198501633 818203879 572750683 804952496 394344423 764462485 747045156 842527059 413753535 463132807 289445418 652503352 884551812 989354420 19636641 936518722 534390620 565900329 16787946 625628017 549679110 764136012 292568684 476393997 264773536 511362298 742104024 990468236 299012935 703497962 472237701 764113254 69834401 965680906 13148682 656507660 697961127 922642030 619052644 719054033 51836291 917708626 104409260 476260793 148263230 406677399 421211431 645769086 469769232 950505970 970169802 978432844 129250151 625350067 832658410 989632479 801082264 937648324 857974604 982438838 572635711 638423858 597109561 693961683 61602065 454965103 649623569 781700060 433365481 805904789 163696362 206254250 126380149 133210787 839075811 931690206 730761952 974018843 942874711 955346456 270463241 566231478 522320280 905558249 13520042 196550494 47465971 994728721 995372386 996153240 784387564 939948246 239056275 585741406 112618032 622936080 6936467 966752645 558192257 930638682 392221735 703522675 139332272 785449282 517544111 980040502 608100424 620223125 391297482 520545284 246718389 385321859 3999090 713310967 408181621 499982023 178559886 947801492 131744895 486151111 924992459 959393662 590090455 957302169 19400310 617891896 393317963 793384012 440349471 669095696 250893966 294942233 591586149 658018704 70602923 130195570 591778552 788920051 40859772 851575021 107433280 259684618 944141559 992834995 297034442 709625469 822262261 967238949 403224697 740126855 614985923 704556029 860583749 976460451 94970723 144393408 96800537 507613590 980313870 995339839 974592546 999424218 169337542 662537504 418721862 820464659 407958262 440311073 781886698 910570283 356121072 685460357 21893803 785740656 825612810 866295411 786900803 958588474 391658262 588622545 260765267 926117806 599964519 903416680 174701989 178674498 674114189 792522037 271571231 488458121 264552534 746300879 946751786 970390908 743658186 858370983 370854622 958896817 386494815 867387308 363775981 972631525 899930008 921917079 383379880 446860143 452809425 997457953 485770812 893749809 14020421 586046716 26861716 305063603 239882850 565486062 182328367 768476308 725100978 934038986 544677583 991774143 9289395 966388122 895826811 934852109 894263150 985115862 857279050 960814141 618257263 641533585 702792716 868290177 236883287 434411825 829966049 910937297 131848217 636314336 543696920 672995972 314992696 319408539 182938741 719172931 145325393 484145426 530117077 930426421 797353986 961356367 328801558 338795415 606631938 634535053 373070850 983456893 78836309 351739029 547689046 994860281 569773685 890849897 196192202 890767914 42843485 117885386 785348643 808147236 595354033 773326418 427920038 727334508 18400330 550098870 81013831 605692905 679764273 781315648 177897677 898975007 764796778 804349589 983371333 994485465 865880747 976486640 187217859 444595960 238661723 261705814 519275834 599721232 288108016 899760477 486831164 663657572 437718247 810288378 462701166 908960025 179314817 682277281 470856868 892446507 996063083 996306850 286609892 484976901 279054868 767708788 387886127 921736886 998664723 999274490 615499205 958849706 897546756 999463996 306808872 776639303 176808681 307571509 676556711 818812163 378887905 434061861 369587924 938299861 411633046 541539708 887254885 918716098 804555657 876582267 687434245 786208812 774139503 831421527 544120830 770457532 178075978 202809282 682077149 798358148 136489874 231763054 977227501 995275497 568665401 757538670 189082365 436732484 903825485 962093590 699937396 712879243 719420343 926325548 618130996 812874511 934381472 995963876 922620477 954570232 732143132 967988242 92161542 506960302 843387651 851242966 876611288 888927931 386862380 542187969 668144270 682869464 196593451 305647392 901691971 913078153 443277969 907508695 586213252 727766434 844494988 903854080 418569265 590409943 369941186 735606157 581111015 588758421 35860713 824168126 924806365 959584331 755785427 829137326 692878461 742684065 252552238 962287155 873126716 989270565 385269348 801545029 104242613 944815484 402591313 833385558 384566554 400414095 560007954 854690542 657617623 866455315 56043043 764963640 792322591 932531173 152290512 156733687 722265247 857446349 995758390 997482403 853881121 937760949 526124854 641090160 336334014 932947368 730383027 769208430 913201233 951420295 957569477 974921310 14833852 760542406 950139634 979910208 729701922 781663849 292022098 708814533 680166844 899610426 507468492 712220805 561615108 938005493 924222175 981451677 628998624 992557523 195989174 805238284 695269611 976672216 107543217 619648829 62882759 547875064 449375987 599958769 299983374 690510305 889895442 943053067 179967009 259518443 122587224 450239834 607045697 711734345 439857050 591367706 144068977 710218858 681620732 760725235 598988384 723578430 90196773 893617943 60316871 142890206 806937776 819905492 763992556 825137688 304143822 951680241 944337165 994591365 163518399 483437102 185594474 486147430 848860213 935744653 728999154 887065168 319683476 695817799 484521161 823004522 255210619 542703034 801688804 998381347 795562615 858422538 355618538 464017249 258091012 585446651 117546893 218227617 806069097 873171259 328305313 585602571 126589886 934361329 933461488 986451634 63281721 409719923 833439342 975289822 627769972 939259519 663470333 958485720 915029629 952888375 280519143 379994538 423903675 727156090 640934469 803874021 730070093 874501437 94333360 434660093 433401031 507430786 429514865 892784671 60999736 520845489 402912349 704041287 167475922 963145524 234247463 250739159 654817190 994018561 628440368 968658606 446810568 657406337 943807598 964965416 946247713 968055187 987555009 990487183 220870621 306038391 892828967 955950077 750392393 920249877 153598708 591831054 481660879 689081398 424883180 764160678 314772389 431783769 382978259 803095058 834182845 974393265 719597873 974426907 685937757 845005993 742147469 911274420 377458818 389971638 308691428 523029527 526716891 999802921 291231813 728064550 791693293 995956038 531695887 980190022 145778325 652974214 685275523 754296938 745295212 966446787 164182594 758555338 151614943 581734769 641964432 945418129 332687741 969228622 18931332 947084210 606646448 730807637 857644838 952742074 683762063 711729249 377094339 870423948 506346130 927958385 303934783 836175028 860528238 898032365 881229991 992829303 472607167 921855891 564862373 591605869 931897095 948842259 625769664 770374938 750745188 968808667 333854245 893110094 615815771 746630876 526626395 694471017 463295175 915935060 831333012 934189621 935816988 957776646 149592375 567672073 277428986 802885350 188335822 859352015 762743050 832333066 839241967 989857790 293614678 885540563 258382668 853229448 216810903 851586597 143660128 900144837 310291285 962202083 646558600 830467694 705410095 932231910 368793275 906071392 767551137 917983425 161612636 747461178 420635111 662553083 270828271 402377324 710895882 789938664 221484522 300345260 673295524 739301514 253995271 898620993 414489783 430374501 345879286 978913656 495370618 756922874 30754929 69201077 573479271 961787254 989475475 990836249 182099995 393835074 917337054 926605717 216400464 498575655 592097486 847378868 812685459 951026422 917743513 939208399 467721145 781740900 693429925 892165360 149237783 747131054 296570897 346932944 428345529 704927304 637068034 659909908 142474986 292414357 913055631 972482941 563828208 683443157 896665554 914821762 262333773 346160130 823930053 909984924 775694661 864677081 58919577 287791254 265559048 729109996 277542840 839050432 857715855 965148060 504960334 729307606 909896791 982349189 427467676 944292170 239331389 462927440 999765429 999862191 41619351 386535236 350891187 684696026 633679897 888553477 834296690 966850721 797027641 944324421 812164649 951154110 519698784 834776148 216857006 538614493 149848387 945619845 762763845 923939044 759206431 940419055 728773304 786731444 594864653 632412183 923700747 939352262 844507294 958545439 292123031 341558094 637174423 769333235 319526981 325212666 818775470 868840856 776439087 943191647 12971222 109247654 501032557 592719235 869812617 897942625 288893327 401170248 417921529 671172852 82058032 922445657 101684502 243347051 461393541 897705448 567775324 735404600 622457621 635205728 489855310 505500845 897702157 924088474 389826794 625710063 26055011 480181561 326804631 544949390 594526988 737654999 604361410 756855251 711239440 907736990 119204432 336988004 755301062 819401459 616818624 926145092 472901694 934729646 922820466 953147935 9710118 798751200 827825817 985561213 628630723 937798311 720735419 806917991 594723331 615070159 526011905 769980831 928259294 949727368 224647151 477198204 349514365 997221519 691665940 944826783 819541133 915132280 270259112 773533380 284266946 810109509 513177762 793655512 854873785 874192490 354036893 573782849 396459603 506370560 442873861 922444634 185159080 728292351 314045160 448332425 444316947 480761862 399196055 557354848 639478805 814530748 57730433 651149737 398646062 916351788 92732172 301114498 894321603 916841590 839427326 969032062 259287503 322957375 943691184 982234242 42311820 246664227 58083629 521522052 375187925 715512022 344201522 482763521 123084085 695277295 522909777 561875568 562261131 676538487 229415611 250952041 421489977 883572521 204974282 625586031 125189127 146842103 609568532 870386372 316463099 843051543 392317972 998824087 897008127 934090065 275335354 500063577 405472426 472208135 326559810 859710994 967096256 983435320 248762216 602771938 459192466 685419030 28582356 591150496 771210159 927335635 930436180 974516761 988470558 996879518 621580032 780229315 544595065 847468062 144763379 924137941 67206798 555430343 781966241 954717090 99464634 945345856 936378047 960654688 778986533 924371748 131752210 965962718 495218906 910207937 442454757 849203435 953612800 989120890 96916619 258205517 320765065 588579358 80267307 109485105 766912809 990149014 591524199 809025508 171007059 212903259 1747643 549381919 824846618 987242351 840792872 873642660 343563820 904936702 995952740 996457046 329629103 506914626 568594921 726173746 49341638 204503561 521873981 976288416 723819273 893934369 739928009 907415534 944093383 948173862 747479906 924921403 997137388 999203870 709664426 759156009 414590704 631921756 228986725 510404464 181374990 262634918 761019005 925792617 666469316 747594392 875105867 951856640 194511211 284157869 273758085 758311871 190752906 849177380 715917648 785186842 813913409 920645694 119164345 425983683 766275736 836813451 294886727 768294129 598180936 863601359 514392769 756618240 818592876 916188201 310330386 959319592 423397825 754733274 148290409 184250913 722543765 887545887 176940320 364353642 904097366 906146711 747136914 824893016 254538638 345031039 837618248 906368492 476751839 980173509 694283599 937345709 282535983 768665152 812084917 948649350 512105189 582373239 82874548 190377365 852319435 901342466 329322774 669855457 345217607 781079331 800087500 842793960 151696253 370868852 983961064 998936174 765764673 768459941 490057225 735103667 821152696 877537765 267405990 770995104 847335580 891591389 785898977 965819607 872939768 903439748 542470815 647710550 182525710 944955745 402358466 774986622 588994638 613327135 262369782 786774377 556677400 625637846 271520938 695645628 711109826 876212516 104491211 566796097 107846646 211758883 997624862 998007363 433520593 652832618 666236459 725441970 285216911 426152299 795426477 837588006 356143192 934085310 745636492 785892957 642050644 923240973 571218927 708599810 328594160 459044581 863552594 864594992 526757704 927287842 749894962 873976651 267497270 300778769 654857566 844974132 582372471 659844377 811619842 949510343 404132499 944560715 317873458 478084725 526531336 679305346 487067631 687993849 724838476 904181665 182492332 888929814 803564242 993926170 556228541 719782667 637441015 663815911 520830057 671196502 287042409 820263840 65640412 933067751 927125413 928006391 883480677 909387291 54234544 899132577 347673313 386287080 938097150 955713941 193362070 434275689 158346616 817625653 990429773 993841014 969250795 975144063 281650880 877822985 418887352 473182435 870711742 977093231 813011860 879540188 220009897 341699839 259006034 675902858 410503232 874204742 618859969 754912208 136579715 530961923 866115801 866342703 620021216 863510766 74272635 748373969 372237094 660958176 468616209 826884370 2415946 990921363 120958585 416394023 898845261 986549919 70361496 877067913 666987262 992707968 535860149 998467893 552672926 971601993 708977987 728379514 812398720 956551392 82820285 154953974 485269128 590954871 105757186 602922462 418356330 821265666 390063385 507268688 332648087 379193672 219248585 901019121 932986409 975228006 711783640 847546477 594123165 603519116 651758365 800855444 998518509 999239330 659753713 823683793 868738221 869662212 789196259 842802183 454433695 887200076 912882154 918863634 76605853 191739326 872197391 949625267 937188850 991483723 594425922 719165597 783936871 948283419 569758134 637605657 823903008 877831403 229716414 803767479 112344995 683014317 554409570 984308414 976085926 977162905 818749794 961442502 268060280 403653548 132132969 593501190 918312301 974459746 667032157 809862811 73630049 824021445 234823690 616362560 897119946 952439859 43077392 562881062 237222111 377529815 723149670 751422567 775990402 803394029 667515407 881689625 895004736 965678527 270635185 901352564 280018113 695041760 987725610 999747582 497788639 819817104 184410475 401641210 531492325 641007105 944564614 945604779 735681118 834200434 156673106 458312474 824838415 859326665 105410364 519833508 969794026 986517978 586447873 891737607 66576844 404937422 909615881 967102290 641426925 988423866 533357122 585468741 941004233 963999566 296897275 786218286 373060567 563078413 44540369 345723905 968642985 972321358 679401914 989567946 220996671 548554718 934040597 936471421 779873176 883336973 59447277 558076729 218060977 424193163 815123963 962626346 817380737 927373743 362711416 970003849 440452901 729535245 576928468 844476373 783170970 953825705 358249038 729999886 724658688 880960949 130436729 883953429 738458743 892149255 949281790 975748813 183031503 580436171 503563573 649241432 598440477 645718189 592398274 744798108 300423165 618240199 216036909 368535700 343894190 798492487 538696417 752581354 680972452 854772063 652058955 914809091 182554755 481924929 941362458 944511117 249756571 717133303 654400321 968361445 60213828 134189543 542821251 765848236 279070533 948988119 948436380 990622703 44159193 751514713 763762612 955553468 968720312 987645890 290718276 671387949 708900395 876231659 70733769 191916954 717525243 978105911 28337498 307930205 295136174 595288708 435249496 643691324 192783839 454375088 57056638 956557293 304044949 627574797 277193736 478612423 63290101 453451064 254703291 534243521 392685288 523640911 38075550 75544150 66977047 278112657 850755910 867750596 493390070 555802631 116036960 553167939 480342377 789198289 928750552 930971417 869968570 952673848 338478064 448263972 295244914 411201915 478862128 952809450 386364289 470695922 509140209 988853630 307982505 607971758 801826324 942371664 134623184 670618278 725673361 775949486 794819747 931376601 499347034 630211240 67126432 857970496 22668712 994748336 163037103 807195996 302988986 726657037 100100870 230266082 413346727 535936433 670173530 708350948 27053936 504717519 219709598 889277555 778519694 862165309 976954040 977673318 711786496 958310230 243396592 647621889 479975824 976847713 510330001 974738196 496644339 835969326 721544057 860800136 762856995 970108621 680885257 717223550 53940469 134572297 347834621 361685777 674735014 969741503 530223970 542342368 731231603 969077327 204648613 285342213 227656498 377972544 263243863 616271927 526805873 566388066 922857650 994819119 827802401 880112406 539603778 805825110 929600512 972649726 810643142 837437491 342316476 669445077 610545039 940705747 381088988 647420789 625039469 986413677 141706374 576839596 914557302 937454757 475601596 841339282 414433956 781150480 616421620 693537583 46294756 598842653 474230736 841974475 954196622 966041135 691335889 776124328 504387759 675424226 522279247 699779415 558967965 803851495 609352187 764200052 508321592 915198340 297359974 856888515 553002654 765356258 715065183 958797212 221420691 546527373 288327886 844249802 859748919 863059048 87475591 964982659 64603486 479103593 334869895 352758389 438309576 465484607 977326297 986295091 395631098 931387631 38094478 111663241 151982234 551214362 4239730 58109637 491004908 880735686 202711714 578969742 214315842 770061253 379527541 963079341 561784479 662851419 227804842 863702151 355698780 873293891 532715120 852123130 694085440 981216966 17493465 327555399 215071041 273457934 516540612 656741416 862887113 954211184 628590355 752917775 504971890 729684660 83198822 790908032 794385032 910533950 151386354 719250361 238406227 387758779 559196131 655790221 993623383 997357670 59119915 979956701 181254433 560079136 3833483 879818000 539498183 563442079 404941575 981539195 981076672 981549779 926903284 983852756 312958576 952128200 473738702 628678002 352608022 526995803 945383684 961993126 915267156 955773485 580645193 881299106 959764049 963281927 224871496 993671424 379030668 771252284 765091063 793312650 759985463 823183041 963360801 990292841 250062320 748854153 25831782 909525763 847827898 864080526 270766770 304186158 871166787 874374897 880342750 974406798 754198472 970453225 111674266 351572247 759705308 778163889 583719348 906081178 678417971 939902924 695048289 818545458 582183409 597966796 824214371 890620251 38302139 506010207 574884289 597929544 442097927 789757363 610957396 696484897 273195738 899705707 861191863 887499051 879767264 904612940 158251520 939993430 427377279 886479079 955968163 958468516 619586130 847375129 664378237 770534168 64979730 656402311 640231018 983479986 389956352 985828575 366919250 430200592 446719524 640651751 654036182 753105652 763048250 820001080 188534397 311641341 270308033 970771463 314878272 392528916 259253423 297084354 370993929 441477982 915117217 920872425 628567094 979577441 50524001 90194210 890864298 995900072 962696290 966282617 236972954 802671158 391610411 757144630 352612089 507106671 128508020 805442597 759897452 925669642 515901380 878769362 990789964 992893594 47563094 238424264 372541819 991309970 224395120 747247822 949482673 967236216 34895747 826747453 352889579 417035584 616758263 900988337 455373973 477946709 472876481 926393344 474440417 562994502 823077178 862233882 82713094 587319233 467301755 972040958 939578115 945550275 912605395 997941806 870176616 886134765 84037957 607547600 585132753 679552882 353148258 974394168 973770241 975662843 196013843 872520377 413519821 586560886 78574876 848335251 834839792 867365284 975168086 983418357 767655869 889322379 351811057 719747475 153739712 296460141 665148193 711764820 898424318 913909451 548454188 866966279 810596674 883825203 749034271 772164648 318830180 630091213 776430857 905364656 244853169 588568352 982243839 991312853 984137307 997052192 709586570 991286718 613464882 616805895 27016218 183140220 135043526 975603325 420277440 928594565 881153936 923842703 854438386 855968905 232671178 574549520 617084679 781965215 825190266 892285708 757350187 855778183 628919161 826543136 736338246 974522997 679241403 739112975 702704912 766661386 228707059 732068268 343512913 700924878 597680924 905531180 918002517 947470749 680226434 684890458 395251542 588330344 911693265 925401596 7566651 565498135 80180632 174158716 892024951 966738992 929380430 962387123 706115526 914262448 792187017 934272217 364875954 994391245 429662538 505169594 222024150 479531602 494155197 589523965 268367504 603328114 690550603 797081876 994831553 996807493 17762061 24066254 852931913 976005705 599150061 840120354 782087672 790362868 259023075 277485976 47208000 625022876 296789465 655530195 259316280 750594445 381115669 624837398 64534533 369991047 483694061 709130951 5367241 734147169 242026955 276739365 143869887 323779371 444670934 936208440 825862752 940880019 807171285 914218576 693165648 917571172 935169093 984571709 957961162 997687106 450798979 662700956 822855703 860452082 256584904 661635471 798158283 918641497 38487323 777736802 230308826 230906205 742291430 822004695 780804303 787421515 378659404 389022913 872997809 926776026 749095641 892887424 416006735 698061501 888956051 972195622 373867364 984292898 949302335 949782227 143605559 824811468 738058977 986057459 996258176 999325922 199400161 314776384 401078759 428030318 891230814 947651889 171099677 505521453 316691508 724570663 92451999 183515730 138205611 358613223 845761345 896661669 549155578 750098966 435466602 643115994 216321479 960329528 841565769 852678321 912887457 948464910 413075773 985293073 977734996 978251569 182104417 522322918 172931806 445852609 647686252 963029150 826894882 976714959 281574277 770837160 682509273 758225802 765667519 967267835 64980494 727412506 557500952 599070145 967279508 983794218 829041946 861669548 192315255 674177086 598950683 706517112 709362726 940064927 224393222 389843154 914846388 993678614 22612455 867632008 748147411 793926305 600967816 911500324 568756285 997881246 957545822 982189678 727381763 939646657 768657659 812531405 610107828 827772731 308112503 595878940 422768020 951980524 328543036 421907330 215954598 530303296 486945675 625280801 455459514 686864202 471689672 854140694 9095204 820664392 614780954 697591223 156261882 665738947 249841112 989905605 900410923 997302329 274456468 924352665 240455593 764912787 293987164 856037676 856738760 955694464 222414976 430864858 401027111 493138008 731100483 955882955 10062599 651571481 927143403 947502640 882394967 915171121 897436982 927393252 528850597 969690252 805133129 836370786 751211086 834917041 650926270 753419755 344768508 450200629 484660599 870215846 446132097 588675898 265995965 537431824 661873917 803497541 954788180 984762728 459890486 577014433 90950233 678085154 839980647 913713987 752551414 773536874 251457647 618764706 740551800 892009353 382796187 955243990 931706657 998313137 562390146 998240045 721789541 927619275 72243361 735566058 6968345 647764189 953415033 967560408 619470025 915057968 877432630 923633601 976764448 999021739 650370767 722934438 533468903 884391450 38464467 706824232 945477233 958034091 787093915 897982452 274494656 990206617 578630590 998196909 179896487 605192686 189271342 810503298 209220375 810567117 839173207 845530036 232102472 595099419 14708625 876203723 849577824 926307496 616175806 967450495 804719688 842961545 758830794 833840152 424008179 807622964 853461652 893031347 966737750 969632351 616821565 643716671 304594677 609245699 159388855 225428865 634959535 718684859 73760283 983068812 126436006 139426053 221125688 677275141 624057538 755220546 373154992 500242912 938597727 972950815 545248903 553410275 743790365 842083547 607036172 816637746 664475744 940128143 525273887 916048291 134483701 400112015 163345833 603218351 838746292 913376083 411052684 895613866 186162854 716343675 49419563 117564266 235180405 758395140 634579111 956729266 701313024 802171962 802415185 914379934 636857005 873422941 379202359 484073004 298466054 762945795 823849642 891304421 919324488 973652238 41064232 377735796 823089810 829003126 923480307 989407431 41245794 882140266 693768045 789097465 634761879 787293503 245878106 702199032 147810607 859479311 274323035 437283373 613359057 961075140 299484580 595156758 462819823 874118748 591853517 843210259 634400917 660993641 456404040 767810920 558914936 914965811 676609370 697864580 220824278 982693087 380398406 480451578 778921574 919098907 536442700 672128787 982465935 993766690 476082930 835653285 794656507 857654464 630682402 901422492 388445447 669302295 190519649 600449011 834069278 989495182 837926797 957599433 435021703 452696015 639730175 978705059 329469608 564146735 40594684 649563735 230482392 814121622 500492674 847159734 66207092 714563531 538806600 593350948 664680828 695317174 22659169 582093428 179311917 605283438 340214150 640058148 948528541 971607456 280759808 863613566 85679576 633271671 793283212 938873944 310383491 955657897 217983178 254705015 707091877 863933482 348243019 481525974 183972085 280279475 760710842 972886340 414078171 682496988 905194764 985969401 953588917 955581165 404427685 650447559 915635728 973507988 39608683 767836187 681716427 776055637 130158255 901682503 881346178 929929280 543832458 986920731 891995723 953511442 543109630 886092453 411119952 901755045 923245098 927157950 675511315 831102345 750261958 954932622 700448591 902578827 184954206 681362984 295625739 605687841 142451077 178046600 806983539 934914119 609652686 848028114 140056796 335399241 800269261 874505965 652894667 694490778 600627160 708992954 960384172 964139655 305177170 402264251 748926327 945455792 26090169 475076426 63120756 281902577 417882925 829906926 253841479 518423815 137507304 685344836 882048301 958996470 576639087 682396718 438237715 798032594 920107801 937058659 223197310 513989381 176763383 234720955 730552054 841783978 95253546 479825424 992924894 995666977 705526748 823615282 239979727 958833953 643043760 821787842 220542448 603053707 2387960 865794700 429789569 544352028 887987272 947991708 214479850 550902996 723675466 927478683 36303876 986405299 317582150 775409054 962685628 977467024 534466993 575031533 331345316 901151477 232279861 590935898 440566794 736980259 890554673 927061986 278557818 739186198 538037843 851082995 533649040 625597353 234260811 900867822 487649957 899443010 898055368 920798815 640865626 857498708 877784499 982759142 936891562 987837747 747237828 877072431 905885482 951211949 522165371 826873640 659085175 967173188 528111242 976770517 175219254 697104092 13798109 507927038 929280584 972992807 938555849 984654916 501852324 844035008 427833663 999386391 720814633 836802064 904783911 949872197 277464057 385354500 191317192 330401101 412219158 560507322 107214435 424556786 457360767 571220639 903317772 949208197 776825456 913809206 73626011 951098503 659801424 805278868 26378481 215627146 72912963 133128927 505989598 925930435 485698233 606338787 836171366 898024725 298147096 545963226 607910047 913014196 437081364 686336614 178290300 918318822 118499658 540393095 542639201 964104592 729812032 777945784 909919996 911711564 307169064 402437764 446172898 978065693 626779822 701615837 969252261 971471262 366637306 501838970 906776081 947496724 709525407 870317257 304433072 346953071 684216820 764523480 773871665 822713749 384172213 587496408 397187391 998025185 566202934 793693489 810566061 887322585 557289231 827992529 120682725 617207129 549973115 783901624 512199542 766011421 526402657 535655889 903112804 999970765 724096165 808274385 184428744 413119859 172642356 728581838 225488098 648755375 229924336 346648541 416353390 900500202 252695919 685773187 175575968 970779101 71481747 305659318 817576348 867401047 918647365 937906596 147288048 920766488 796056700 892769645 44355432 89527455 561378193 596993424 814523946 995726108 463637645 479745074 647676653 809260506 155926100 679030351 296985565 780545617 853770458 921487590 710361833 810942926 209877253 354028924 326612530 662003038 23321263 914725026 780465408 973275569 158476280 491022401 316985899 407410867 442999827 821926043 542863201 680930061 41981551 952337093 471580139 476715107 55153514 467393931 802970922 870256654 193855496 387417433 243391603 303324832 399863678 422115475 714936031 921935095 321881699 959956437 806460987 832597338 268911999 627801268 828538745 855757879 230422931 832424787 526371321 910780056 556288110 948319396 655264351 789224599 625809386 721674968 711491504 711740580 746565459 950132622 440942930 838399305 866206834 983768863 59754502 618106902 601268356 931694352 669684415 938493104 837418955 849644828 154416079 256698231 392229036 875774036 832989391 904717363 468575303 735440247 439053492 974835696 413673969 574652110 220557288 497426195 19806505 394371438 333339073 395607168 221255935 387086776 606707956 718744911 800569947 899041527 750864766 752932505 495632930 608377338 209795779 480641236 844034926 857163280 550518608 554490280 961646911 976583597 945136562 955260924 959708054 990852121 989304865 992420539 328978108 865971342 922095127 956884294 602545137 762791239 972394691 981668109 213783266 525781436 108428754 327911426 545632370 906989478 60545596 411130357 877350372 979171352 100151889 480157716 825944026 887818232 562639626 680846014 458075122 592035970 835744725 931533411 216852255 309221585 885047942 897035836 614752036 992963953 225140022 476774408 471396217 642032401 887395960 978237785 980650886 987009653 253813969 811610761 488535151 952323618 43406853 514524556 320217 87413465 688097280 763940951 980959358 983383721 487616694 731443138 973935202 979768056 114542804 906518230 650494051 782466833 282559757 845320526 713233056 736436854 80766271 954195736 305598161 900963438 123767176 866145268 684205934 935823185 334947735 769576186 392804383 584746442 860242421 952538601 611768074 987335873 996862104 997110110 53717814 229619760 599979502 718912538 845957421 997620385 406269833 816840935 130952870 392898749 609365672 709521173 493415684 693533215 983594947 997469188 357602277 461695401 735382839 884901780 59243737 148131912 267296658 595189844 133607568 459734352 988993899 995110438 299694746 433312758 539326039 940006567 928738897 962244233 451762375 650227571 616185522 884670855 475464959 886112321 666898072 949211114 271888790 833146642 105421039 739101634 398566953 770749867 49974990 674978360 445919712 645088617 756855288 954946183 81839165 469772555 882199869 967262862 663786180 979508267 38474978 988996357 561997608 849785407 553276735 752077728 461207559 958369278 186045373 958622124 699292024 807658638 547734604 950752327 408395772 477316952 399078420 960541748 534751577 826023385 268126239 567059299 509872609 706320164 104153422 516851267 185982575 743149805 94860179 648223217 826688046 870546208 938710746 991667013 477254906 553469707 416440822 860860005 783541019 865839215 406546300 553821457 111890645 804991855 71027476 346195281 61062608 994062198 199266118 732228065 231707710 577415931 710710794 995080094 980741111 996952156 109761822 573788623 482488273 613466114 662989432 917798266 880551913 966111530 858612147 915473037 200445467 532059320 441903159 841080693 624223974 735990334 562428332 643185252 853985934 889218301 43079793 172906229 827832167 900466632 688731823 961499881 163691630 447009904 201115852 202710233 433901598 584230718 880034352 886749696 30855629 872995016 678609278 717100740 906353492 991987392 596987044 976320841 196957712 427893230 307166814 895179782 159559128 956087978 128839103 142582924 549728249 616356737 147652669 539893239 752157137 956015175 627345624 706043017 893097925 973317272 223289607 520500893 39928935 623744937 119901286 393452095 300508172 715226785 773863430 835674871 605557363 797665479 10258965 664871666 474260705 736371997 97346280 188194461 152619977 931403785 992245390 996890589 431349000 989283762 53907632 789141876 214403079 972826010 36452494 907113333 158872777 871622325 216724337 923740782 161440656 356877919 778688721 998386084 240998176 437127181 105305395 740553283 336823720 988056248 910796679 992692712 37412542 290329315 460637369 896925026 865832048 947055882 204822965 342891944 160369330 355156643 977266005 997003073 601666056 659948782 133057157 794793923 380605224 639228451 738790069 910826477 148194540 329320842 869207177 870214484 154684966 668720262 915639659 915930242 495130068 920041479 88729459 697448900 412044746 852429644 479091982 625440929 527957407 824722490 938031584 983482498 493626083 934996006 151371640 174760160 597115564 931209644 89265478 382512631 218471656 912697648 337422858 992218349 732071701 771791690 877738224 962223501 681862101 715214566 861851981 904408040 109206017 280271242 344758290 996648077 284818632 657676825 913923178 929564005 649499507 970460742 938169185 989140216 988685821 996275193 833893352 897168992 489218572 555042292 350352021 623333879 314955346 722585377 386154078 935230945 631895269 708987221 665586976 951860715 825067273 828015286 867953828 969177477 801123077 830449079 408589026 932539409 48819533 640194006 712884012 872624964 478709977 743076265 727565255 958483880 825700411 980957420 265087772 614964934 134030054 335138137 255425953 512347196 896667722 997778569 975640811 976376395 788665426 839354771 929149668 957431684 682385361 944688826 246052465 270597118 511803727 834182963 8743824 91086291 406532378 672966226 405143006 754769139 765955090 905601869 823541030 860313122 591117854 620542086 647134704 936467168 198377475 594108866 514831384 924621751 762865542 766516063 590001880 737938355 386467421 774370429 314032055 691094633 964812746 965955514 500489045 604953366 835033280 871089831 564082703 612368818 514396049 755686579 408375022 516852075 504567720 859455872 596584103 676592696 585064057 902382383 959507478 998585969 825371875 876893354 409071314 452111554 935479121 937931904 129645539 591435086 990207151 999097978 707044627 995140034 721428793 902073676 605975414 882886619 374846803 935531664 153370155 854199877 424947962 801764903 120741953 171301859 806442434 892813266 75222007 990657337 195192835 999492225 120300607 606542666 554124018 898719949 174605779 750602421 187276243 815983260 773220440 960113266 812097592 895414082 108935476 303680646 998827709 999706832 807990959 894515356 603955182 827695345 29838901 412948655 91495328 919926561 238862186 819966502 462557367 493185931 522665934 709119782 360183349 954054441 921598132 954276094 154851232 888379196 944693201 989182884 448417051 881167224 740262135 910438266 602849332 977476607 889689800 948867122 457545967 604829740 599525935 676904908 743612208 960231601 59067562 594188289 840191972 993848524 865507672 866251668 558726480 628922576 754263001 806030630 58750905 122001033 503810173 821054382 786520687 901333718 884950778 944496548 784846774 882269666 214075639 298817876 168583728 595875459 438224456 783232509 135886258 488686780 972834905 996005010 814753282 873606052 314373444 492812549 704847536 802954782 33276274 251276260 634693158 638831360 818536764 856509357 510471034 525180444 49116376 815030071 978558565 985950030 312864990 587447919 612515388 963270907 442552774 854426028 942968863 975153472 279294169 892322712 362569030 939723286 900432635 941550175 290846039 883665338 444800849 707331693 744059494 910282764 26920565 918330785 782808236 861428836 876445212 899484688 353790278 480403664 535162960 929903539 729262622 922511344 143581911 307461555 451601569 909635120 419766032 737348901 352420518 913794869 397040536 689939071 842482100 867603555 306942947 450176144 993975271 999895841 636667229 942828684 209309252 552797222 457371704 930715332 591548602 967522064 708788452 910975704 495771038 704941594 452524690 961804438 36472795 720588620 354767381 769425420 914668071 980676727 369920005 815915332 424784119 715849889 574598063 849792221 888325530 933736031 936019378 993211654 932505996 948199544 141548613 953505149 880837992 987394930 445623326 752985153 415268986 720753806 638114202 861039023 847885565 947939965 269751568 857412229 496361401 544221164 207602892 376805781 181762416 802186791 118556601 488335759 853326977 902002658 382559152 783198624 651927600 790546200 793597901 844504017 467816424 678460499 175106994 475024104 801661170 925014207 26789275 981973173 950026125 958016148 737604972 789659948 101367458 814854289 941781715 971058340 460141587 863425012 7040235 26631786 905118717 948217139 231919105 864083442 482945359 723084445 203451695 274457987 983092666 995597617 307695901 799491706 123648686 745496518 885538892 957202726 412762476 839437766 426235466 752253716 339039763 472832029 863737600 989296884 232384871 428607918 421414682 819351338 857132111 879981136 7225686 587451669 232202230 487088385 319367298 506773400 360468803 441411779 547061997 723069572 750580451 837088877 723959533 816087360 266537080 443026566 105970639 597178349 51646798 557320313 747401698 845958981 542042552 836034382 357062039 959261815 536887171 570921546 999152826 999951331 640648099 761774425 435031491 671105728 919484760 941558361 69282712 155089318 952526433 963535656 335639573 399684572 344906042 456104586 906161663 924680987 460412116 833179539 762143174 974003801 753658577 851365562 678196988 863349839 299085917 608822187 176828295 580714125 134262206 945042326 137426851 762142501 604850509 853597210 417329822 587063763 457839347 524607156 805348636 865461301 802300857 917022879 789824806 801155483 391790293 623042991 279477892 810670956 848474223 864965833 86038472 382202452 162265108 872385662 236045205 604091383 813809944 828336372 807445796 957298289 451273937 591922030 507852520 945957597 145066357 403669675 117539892 937120226 532510668 958969570 284035099 973930385 212233651 970932660 193640069 414735064 166948483 525699636 922995427 954184167 23234836 285103325 987369642 991316548 882346374 996456706 607141885 753173462 421033370 942513104 167960761 886612732 641157985 992395162 860520007 884007576 447411800 519068185 657366472 863930661 80960058 706789832 151491474 936120800 378315061 383013841 113153014 417760545 508983156 552817247 592545920 875872924 428192067 570235688 810408427 834626291 631264164 855486747 785523677 806215290 354237920 651864754 843201921 905182320 811796510 823755520 388000011 953922910 11224128 693870368 903817301 985318715 559568551 933519042 87860630 810162777 791154277 834276922 295647438 575311882 640275056 768067034 878535280 963430316 689285412 706730174 845642705 874549145 227041025 856906359 586772474 834332899 464912521 986508017 334845046 681684595 448241291 696271257 725836152 963779630 502183842 936872743 783011862 798226143 588005726 957729806 413774031 936684896 846460541 988938673 875178768 894180107 772369976 929139346 912922026 992842350 111637012 994871794 644841639 979348214 681810391 711569294 691687948 854210124 38319559 299666553 76470027 490980291 78732276 548032791 473881774 588980132 898917805 914787754 977378839 988202279 228338694 688164414 463400385 971555369 404457048 798148999 319236097 373239825 562091832 820057278 218050244 444394728 321132219 461580777 974249803 993248405 115656615 182756547 858446215 883447724 823691729 847592352 795018723 971225591 525738188 772721370 742495018 987155189 331827607 849272767 358115268 919441976 496013743 600523148 55020909 195517087 839102518 940451119 14919217 244136664 76150135 436848213 422005647 875422658 790447255 993747107 529978367 699911279 993428243 999555823 303991653 435873120 66189205 644884879 527596929 715695605 986793868 991751000 650599773 891891391 177238639 811716155 959886306 984632870 596256905 770562794 965417777 998847300 942323513 970513127 858819423 971938728 630212575 924380800 440564942 843211634 610600835 999695109 52544740 318431080 123565845 305468683 125444606 546927644 961850301 971245442 692964945 983192730 175768586 232464026 843932052 844446553 12191993 897346873 680056515 912756568 268018394 345591568 722713699 838873346 70208091 409442527 863553832 993967748 810559733 851584631 220826868 911995504 74166522 940523762 327134391 364544176 346599374 811845538 951929589 982904375 605114131 842919744 306874490 358743525 244564908 674911760 443221944 846320625 249213671 677178300 368683301 450832448 220784894 830394172 522104942 564050205 141030585 528177571 627992291 906483434 307803537 453040517 461114070 768942909 868299987 975105080 261169640 796735081 656840745 811678116 755948524 770240232 503403494 873485274 753770136 988557793 741657879 912677408 77093507 961390900 813033365 871100478 810092276 866108372 867638807 888893228 987940978 998543522 19545928 232576683 290277242 449063135 48456990 826380327 393480979 579508174 884217122 922575090 824050002 927575487 138532405 461767046 848593406 920660577 835559942 999771048 338128860 562397088 995504233 997947913 999231264 999767815 780312881 906323220 63842679 475875748 521578013 896323997 299443745 512437104 196161830 594025808 721597127 849038386 113707223 646348552 834847798 961460172 212387457 266131549 605344678 996426248 678224707 988967652 277351872 412834387 424608356 531024763 348228008 892866899 661192432 928256630 810149358 896958225 361347472 497290350 777308340 811075666 174483650 829299908 17088585 973364021 543432003 753734218 253061452 607951961 61347391 488057053 394951614 428811150 515297240 562071701 863968105 908731406 501016666 570940749 880732147 930630967 75699112 972892097 831389565 882399103 612924572 889654774 620870258 660699050 221305431 425770406 520290809 589935990 333417363 572598171 345828218 664568752 761179218 829895048 959283217 973961202 406476451 799569753 563265599 678484247 154666946 169397933 938833242 981535403 217597902 434292239 305696642 515373927 123415620 382511551 775103589 920299435 89166629 682525719 891071253 916690105 134125861 767066749 405960698 835467461 815414948 892845165 919929409 991374277 545492681 838246322 369322618 517646063 653035099 833662874 280604509 761504272 761304810 815314431 15452982 204113599 323006887 464483025 506250316 915557209 118723384 443453681 723805382 863157785 563032403 686601567 246323161 719889353 581850554 643616481 563127297 840279617 703706901 807721400 679469879 898748168 528245097 576620300 930446736 959473664 718882371 749444044 988332147 990773666 46005402 245889943 324992094 337874417 883202325 894760084 232606733 388975694 817266795 972647632 724198318 959563356 19583242 606711438 449581099 523635939 510527567 852436801 70689390 889372616 164095970 525384048 616335729 712783573 139408912 234363725 353593578 958763154 424947543 602774845 222928290 402741569 235743685 467172904 77773503 557337954 808372629 844252239 529135618 837094215 57467991 834378147 755893558 877869562 549474718 792446452 347335322 440709099 154582573 609744142 853740560 998319488 661793823 982942269 399563920 708732080 479951628 950960851 363523061 451034035 142128337 318416943 547202833 893919903 702040873 950226184 959224505 969104222 702330613 899709479 41441416 226784604 175009946 696599182 763459257 768034619 843873630 940238777 995655899 999839719 880606033 944770954 433358537 481865613 834609906 960289683 841328116 996504574 903477935 959090178 402650719 794416016 348271139 970567298 670268016 830840184 600722770 871725827 846953767 885703226 314404565 843143373 417434014 468738342 61017937 397898839 766965153 992459123 719803477 932248328 178742942 835032884 584560890 808745643 426363591 916278697 16494224 260374877 34580643 554804900 926699932 995058759 836754911 906839650 16989433 402998982 880279327 912062913 84287041 430303522 872526662 968624752 403956508 482480202 620641051 789915827 924975811 936083866 454258827 597325837 397839991 564785017 303439028 978877610 836551141 910029438 190608145 326561790 728128884 928895329 118631955 794382542 715031536 828203576 665317259 910342028 610856628 768417392 213143525 324496174 617815076 921137421 992504767 998207465 551892639 700116461 13487293 636663822 947245714 960343167 626974942 975802863 537769521 849030938 71085783 517441097 323453422 587662895 966624705 980541351 138615106 277856644 514262913 930498293 675334995 890929505 586812634 916567983 53172459 506895566 399843945 755983400 450768018 507951909 353877583 446961677 67071109 349565536 612413093 693643232 114383871 877778347 763258327 910684336 181305453 823876127 340440647 622813630 239124116 932239763 381763250 935952595 714868969 839282567 376669890 425912906 752630879 929921627 828752353 846184830 277202639 539916517 180418320 430907947 242414310 304726132 932368871 938570918 284055914 859628289 403155231 909690967 183466193 416784477 370813272 643678883 475565041 791423458 439283120 904256610 428212237 715268080 146740536 736855885 612234660 850857293 780956608 925703185 997212877 997996759 651930229 867609401 714813356 857633209 532663651 911816099 644744076 967496544 779787787 946265565 714257233 748051937 326493570 930775011 313621320 441650262 541471818 945634037 969255723 970859242 75092053 658917079 157753281 599797433 608146413 936027024 886083052 928584365 271297272 872991342 148946820 549097869 296088907 549243744 189307273 545323202 181461590 768349057 947065670 962310873 542657365 874916576 138809464 316266915 196024065 385996594 301684011 787336218 840886026 946654646 311841259 632285315 971341194 989244915 547264552 941384415 468269167 521065213 669832680 868868251 102586840 754157525 484832837 854961426 319510708 884996885 669172609 851491738 255676667 582699181 520429070 857693267 697401804 886037077 176136397 894453509 399548212 665911422 231190156 484528948 490854271 868398914 178560074 519609512 990267793 991562359 760686828 781043454 942910110 957883751 342432247 349956568 576004790 681912002 57998666 924819469 80574084 466182538 860742284 895630363 821004771 962702234 948298101 953981490 968775975 999144893 469600327 516594764 613200599 632998851 288773921 838251230 283972366 918034512 189537163 370687630 412340415 996304548 619168145 955949554 498673480 696258961 655418384 687742379 310964411 815211512 575589100 928548640 163018906 622312351 69695506 531824582 166512490 969185763 19002132 816797697 608448605 691257263 695402534 936857723 481615965 538276552 450499283 728518995 780665474 833228069 420335442 869290551 500217924 742064730 336907189 680460995 321441543 606558090 919295911 959198594 84572918 739128924 380250100 743839115 810835381 988132625 647819659 704967139 950983471 998430723 42836803 821534865 963355882 989330912 636126416 900550540 904850879 958378126 341065220 811980611 683062846 765878066 225718748 595979118 524272014 622547494 98941884 501843597 611040034 887935942 467197998 476964252 714683296 986813996 860683182 897135645 870748105 910854478 87129680 821609106 664747619 717835855 135802738 364408139 591184770 675929228 890818201 906436897 183093621 243855375 113443852 116441493 384722383 585379735 725016977 984128007 506392322 957411434 970674525 998779699 796066136 965442276 9326702 735685764 929353169 969780325 198940630 540360366 617043353 999813852 720748491 784260817 556086499 914321125 670004884 725323537 413777730 807272520 582187370 779255661 424240131 852265062 217288755 722915493 282687568 957219501 422874053 720718335 247002385 643831016 135582198 681576252 437054708 991520535 434469474 845462344 332202991 335292456 396638404 613670647 890346189 923149676 794921241 946563002 859658055 887790937 771343862 800453561 516876623 558760937 374268166 933636563 732873787 995354754 134508555 718928198 17298191 675238261 163566767 225899708 359212499 695542150 792226836 946112103 589241712 893246813 441036894 641591504 61146157 300544451 639687142 771747950 741665303 914982662 468770995 496786779 452690184 668890865 763343822 869254472 261865904 957485395 37875656 563466327 915737995 918791790 986905565 996505527 483042001 525847159 459631051 954049655 930757151 999196033 722616969 850088138 522211007 868741251 162524971 612695350 506589816 746662952 189073616 238511181 177291025 636189903 41429596 331800428 362956439 960221655 464046816 671252586 438492755 622911049 852462286 938026072 593046785 883049555 118857684 543445537 835729062 896278268 510474576 712353882 996196006 997694573 725092240 806522540 573938162 849486966 365785215 769215282 908853811 915826372 68035696 656096302 695517808 720977658 408377206 627655245 518012843 794273629 726260444 763742062 446912995 933790596 761784330 937105981 422166529 844859200 904545477 911570226 575192642 603752433 47018967 251647135 736708405 800743289 575146823 901880542 533536509 887155324 672012079 700999447 855297104 879546999 483314282 528230142 550193191 993542343 245050893 844517697 295705646 827543799 892193991 946303925 629906469 838417844 365841987 769592045 299870733 564905025 604490195 957833409 887427821 957472173 781610165 794930313 460187502 526039882 99943514 325384561 932461087 963440839 112864120 989029833 349342838 973923070 977023779 984115532 898293744 901623228 203228524 380069133 718481778 951767332 937251242 966300522 991497751 999126930 303031541 674289852 295480352 669877442 27742217 855479446 708764359 848022284 58558590 599678865 710558608 899664711 253178132 473473696 346716966 773138045 600633535 810664094 860733793 920986295 415636932 828485618 285638199 586032826 31486098 567340103 470854588 615023119 148446319 203160587 698104383 765953379 515545541 668106657 491989792 542869275 720014663 925636118 63463000 733269887 311916525 477857361 662336715 788867983 119231266 375293862 546193220 838746741 348788873 922407352 100932718 237031053 177463025 748973447 912291419 980131904 697868259 808393843 436175070 944893136 331362215 950766203 397784073 993572486 287681341 749604687 311527022 615301531 657515565 704330244 191802867 400471395 79473714 445208156 419799440 533357178 848811176 919673432 82346481 108267134 76618904 834607850 819067626 910882151 427034925 788460550 164133840 624969856 609113108 765375178 207621060 577258520 834489769 859924593 302636529 624896500 80649554 120509552 198581963 537406187 114995387 996015354 898347649 947876557 637795014 894271864 997454361 997743757 700479187 966335107 682030201 697020905 467558245 690085524 817039688 888112208 454862182 990591819 598855954 943653049 165510674 548068418 232862507 425081648 533864887 608899394 616720005 838422565 282508885 708426249 14008075 558320178 227793193 495238015 279555398 923270153 906529839 950439722 426601536 542423096 191660123 493233544 561488546 886402460 137358599 752480140 456085200 819108515 78927528 682586038 378946725 847372052 857340485 896474697 225402658 416905599 147989658 921430030 467038782 933878199 102218822 607036547 299045674 498422452 827595030 963077072 938527000 972606202 862561045 889124642 311112440 921143653 842945897 986729373 380930294 516554166 418442162 884221233 40569275 910598829 293455758 489602667 398344899 865502143 209852548 758067472 460611129 791177390 703287063 889848510 794281247 883320481 924426131 929361300 725665378 987385083 632230405 791531626 930627068 957740790 816734539 899265596 315201078 441422802 574410614 869994962 120624034 881796243 203176765 404983435 381039346 941773839 431919397 871586835 693281736 768688032 416281321 722293209 442420454 729774574 261457288 751959207 295458647 722900761 262317477 786273203 270227570 371345309 971855313 996512423 71529493 401622488 954405711 992898111 222069363 638272942 544862997 971576231 290200884 606219392 632106897 812198628 103031031 806875049 315915626 655045195 280782153 781286656 388272181 487019590 56600625 641346466 401239243 587047810 107100223 548565091 831221241 891318043 223816520 368442870 484477019 583978166 115506666 288819906 419574430 827658422 595072689 716063730 472463613 906444769 402570331 701893470 355756408 577605068 303285444 693047874 916168037 973803853 352927127 533090599 672003818 730441634 288886669 856338436 453737523 868580415 78185154 608921907 576806712 904593813 191706420 405474023 607108570 817299936 638938350 820905276 252369126 659388524 455470736 964885288 975176027 986960319 867466512 900457525 346262860 590374224 802122145 939223192 800314362 873141400 495243109 545755247 650973747 666655660 647603072 737387197 377165232 584550064 205415368 825080555 362894920 620955517 245227746 525946048 537314871 861850866 509231524 515242499 6281975 549344492 302423291 455795248 145564103 423925255 807868873 972010055 205250239 241292668 976511164 984651083 277370284 354605963 779949057 986060870 747619385 947338402 318106572 672351349 179823114 924895369 883529992 909046837 70474449 901952532 919878644 921660830 867070806 975254235 56380840 315167109 294725522 374988020 902991853 969200436 589701535 967957554 598273109 902915594 593867977 859154729 572721213 837289782 446276183 862194698 196188810 922434793 349998223 800218571 367084844 834836900 939160684 999554855 81211874 321403986 394372510 823618761 532741540 565281753 666892452 936722573 370131658 381259491 896063439 927358635 956970090 978650514 707886492 803846843 833458592 883699558 422400217 524716208 598365453 618988825 418877297 456630379 12060502 893432626 334792319 560420490 45911608 208820615 747885173 973833780 11174466 428173694 290959313 842281193 512756165 517536450 311815376 338101990 22541017 685965411 311325900 377258324 437124705 820317451 199375549 853544446 77714927 618616014 297678400 607505131 62072613 365349908 339651111 498631459 948002124 977221797 678301331 891836130 766098979 937916892 938291370 968802405 641521664 997052947 324779292 756966074 330650478 571544952 375068140 796413497 502911228 876787500 675303091 752303202 349361734 664321471 264058190 271326697 699115856 973083261 226462864 848707718 976787802 980978851 92207644 934366358 951543166 993328721 311640168 982595361 449621195 683536576 826311730 838239076 612846247 875037545 462499838 718597768 318381988 770218011 269387643 920648165 221719582 648744337 32179568 421473791 97824532 234176476 281940533 360417026 177236963 565282453 80900292 810899433 106191271 704995488 305276822 472721457 418240417 569984026 144759646 718415802 617574338 912350458 133935686 251723756 296530145 327529649 831828449 846756700 162310062 568926229 610399035 709183658 783872404 958776345 573255348 807856103 975220891 993232496 526529418 803788146 46954643 809178520 499193144 967951600 28581887 415845786 562148445 962746294 590477265 918530432 658979026 835622796 307556197 419714415 601769825 798705074 982595593 988070441 985316331 997505510 373507568 403199711 699144756 876328953 551180129 677610162 798195334 923482906 30414615 259228231 779554386 937552833 132602387 726636307 596248413 799984647 692327200 811146943 117777114 185775080 9831038 479247610 891076248 928812528 156785976 732457634 875807971 985498303 578481546 985765574 964810053 987606809 132291926 631506683 641742699 835262433 718482532 919521702 118616705 861739527 990678180 996185075 327948216 380941261 990446037 998718379 263885964 860311870 553676416 918218001 989731630 992444462 240415362 247841249 500399304 897658373 784079631 849547080 432548031 651425327 79625524 774878017 355337579 757526061 217008534 467751055 693057387 989852554 332458669 817094226 910381268 990891189 651117580 839592213 663411072 808163485 73056564 391370889 728355068 952322698 819218507 824473149 362164154 392470535 572139459 858042337 988926814 993324814 938730640 954375168 215052164 671045904 168349039 823187499 370002024 995279182 525164551 611168826 767132260 969082099 61626320 955844101 561333016 798188565 217519502 727799328 226253449 843838822 203984004 735179960 615456272 726565348 996733048 999851670 319379190 978024757 619986730 904415677 38186764 785765779 118138608 688981431 17019343 625121174 213567484 945930764 14644859 311378533 212112834 392325519 855690900 929800782 198037339 288654458 307146527 733872494 654272795 913963869 767955472 813953931 949186550 996121479 840957803 981839176 563407752 849263468 514157501 617371325 492235982 518295436 62367064 413121332 680894066 944263403 426721217 972417211 119682808 852936117 791395843 895709498 117021201 946799115 348477739 413592811 64208988 675021770 256221701 892907021 44518735 678247884 918058790 988490713 828257229 989598986 542409436 964610633 16936323 417078539 235426884 864096998 133474089 879384698 89965988 138890493 451594017 819174022 120175806 312862437 794476414 798190538 476529116 769588335 569702402 816110895 424521269 588184782 152447408 684106214 297000507 540339290 458465069 565990744 871406019 908955841 493113731 876865876 559585319 886812509 222019883 711024357 808552693 852189812 643313278 814573049 930890529 973486178 737675608 946313732 114484658 197289710 202301803 723275955 232395292 689595743 931543178 966365161 910302047 941202841 458540546 535137182 9590635 178429900 541788782 559605797 935904018 987198811 438190345 577788876 220146164 694034266 991482253 996022640 702690355 712935640 73908569 740240688 579095248 656328085 91731165 444458730 228579129 797349506 754656152 951813110 754790926 814697700 961157981 998137876 335156877 830008539 680347470 967172062 409670878 560634009 454897149 841851516 196922247 620153834 687362481 757599097 34537461 315116515 816597288 850379098 101034092 102499213 427030414 612963250 634047213 936553770 985618802 999469313 77143478 374175245 131307206 815921965 639206770 705646491 109845260 626265204 542763976 753061859 929491409 944531913 757639707 810978068 103717798 610262839 325669482 385598202 125470111 305744200 206986842 981413466 440989267 969483200 27269807 573434938 712570784 734879166 103995818 193084408 570086278 989642221 6321159 531256673 993647220 995119182 203851881 396404459 199870132 436425755 857502001 927667112 788957782 863388755 599256932 719932341 544831951 557038860 884611036 957397396 712695786 866375694 515385226 572580296 106471710 125132352 814511415 875831413 921011035 996077773 350143550 718787864 419619449 960023536 15649719 461865394 566595986 603622247 824727984 960038145 659551639 946507033 786465967 820622183 783928533 941856976 187249394 970295308 611109710 657203758 667926386 710627442 322738507 700685784 454073734 705491562 968026638 986082625 798997189 903896081 914331944 944456544 783906968 790577988 978785694 979466896 389839185 434045195 279799912 328622840 999731940 999829976 829145965 887506122 141407845 897595096 913215744 918892148 569612087 700988172 492888080 687042810 471983042 969722068 640487991 736283222 327583085 882926496 287298534 687691746 160187808 618534612 993892786 997318763 89403702 588573405 656195104 955654510 643064728 980995793 433190990 619799491 242893650 548921182 464140149 944219443 649693887 717483114 941429611 993892637 784399948 839500561 868684700 979649587 475645333 896473561 786799693 858704836 232002026 515995771 148301241 193879736 213671118 657074570 382347585 925135026 663444946 889934783 552390521 783464693 324064777 593578926 295052257 565740354 994317600 995413311 858521374 980455462 139246080 244687080 786619984 973947862 829232712 961493460 406491344 894663449 623808053 747606339 100178076 111491499 989395975 996840709 598785436 922495705 480709419 620463268 573138777 655113413 84704407 927533059 364093103 891935415 77328580 949022460 158142802 578821374 921797435 938122259 610449161 929614523 567539680 572603161 915855854 992502935 711866946 786099533 650292419 758512307 84210511 550980647 287974111 607936310 973824544 976391320 207091999 502255041 642028817 682960677 178891016 329587748 408142273 872043342 647392989 722914091 720655074 867234733 675803062 985758650 61269661 144987848 235859820 358106855 841983862 892652021 8290787 925726367 72076486 124810545 900299143 927408818 365513808 889697725 379566068 778612983 370446239 705867121 563912811 886062949 938053814 990265573 413409339 670118142 166681921 539408584 272538496 649421628 930680713 966897569 129366065 472973686 736733018 826878923 322129565 852610517 635884817 746196796 607005677 946779818 754770447 959529199 30466913 405027867 764594283 895360974 615278790 832510389 603762676 721842449 129633286 217403057 343473510 385768652 82534704 195218552 30887673 462327071 861134137 887787669 566135901 686866407 469279447 897708940 668606820 772947457 566986052 786785677 541123259 631329796 954193142 973076659 353514593 489657958 207587498 322972541 762132265 931011422 556983707 824671187 47580738 748876863 39372003 168807714 74337719 576728001 966879979 993510478 426887555 561377815 451273358 573013312 453761676 745858650 291484031 920642444 758292941 789663928 98426338 372707453 827527394 970845082 817901472 875575248 753895597 935697265 158738067 329786363 741853906 840967766 826058321 966182260 548224974 596338251 637985218 943269914 184613360 689397810 421591422 589031645 298354240 433701658 121484994 542284195 225273068 969340400 512310915 531775456 801101940 960475313 791264079 874470941 523395490 544791508 64185520 786563998 787503385 853268505 858912438 987810278 553622841 740000714 650139569 993796147 878248987 978134220 977731298 998818114 192456874 347442877 489119303 496957927 667846401 746615487 856964039 873925793 545674619 546290661 629852345 811987204 58910672 784274790 296488269 812045434 328943323 631274539 125203819 208027812 12016737 803409420 664119716 808079053 145505714 682665483 651256003 752679933 470054441 874745110 347795251 726100295 756132082 896322831 686526096 947834048 766074444 810962293 160822842 324166760 531325896 728215697 780114940 875411651 909683810 922653259 534667992 698123713 386833370 914152331 356966308 698932043 848213295 893837686 621474208 731639062 614833043 895203021 700493522 812683377 562858441 718359095 565758524 703916804 552508623 896513506 273541558 296615690 28793308 97506498 651250316 987067492 669485308 947241560 110847591 367089217 106114572 967567555 541927233 967821222 400757628 725502801 735155173 936257941 968546880 988698503 858377446 929784716 976449240 984052461 720716552 780966928 918100424 922278663 207724194 450404046 619466529 842096050 49206564 99993417 897900148 980263717 514144127 760361522 762600163 900470869 923281753 987998138 395333502 404639084 915016482 957604681 734489859 890752539 306550934 843048215 872717479 878724437 333258384 439970094 734307456 762358832 969442147 982613725 145998763 618164178 425054339 796843839 999836927 999845279 7628053 41736012 366185894 851281087 507866255 684767879 484469762 781379243 731557260 774030273 34501341 269924336 931517679 963759515 317632882 439796116 811187641 998892531 182160994 352796392 194747846 315698517 774621461 958764263 540855250 613813276 576694720 840319728 582909284 676852154 365827743 523711010 667239561 934033870 307383609 589131549 869661040 938867889 584608664 910429636 377380959 972402379 81276690 855681619 520888820 579508196 289810043 974462442 936308097 938210358 302905041 567189841 756872183 851828923 931824729 985413756 910508016 920984304 895633971 915638928 573787981 913332369 329317133 686031973 108924461 754096670 573329256 844692330 683402577 757166847 531676007 947173985 815118263 868338266 986528236 996951962 692618722 700996696 905285481 957520864 344804183 512801877 196607855 657684251 131738043 816593728 974744842 977119569 979250175 983201676 936560681 987373836 141891972 221605266 784138093 817081452 557990004 892599971 397623365 607825433 395644369 724547256 774970472 841316831 746188817 921487346 194483140 302088791 465857958 625948681 182973568 953525844 856979755 978235411 736369890 883368871 585160472 685711208 60123032 279061449 207461606 547216565 135972406 917026216 368692914 774604045 251956445 667533922 732388844 920354396 14777298 333520424 432182349 632699876 98276939 405767351 187449411 205292353 402528954 907437875 31771505 364951002 500098852 972325947 298006073 551451464 29339699 497226802 491507111 996263307 649069233 857448499 270152452 903350898 222287143 585847234 671722040 838983813 61492652 651675566 584993002 989258312 873954362 930316498 494064760 762256370 9177828 580848128 851535219 956918018 569444111 597406666 292041330 354748148 916743144 944783354 583007146 880973625 504797961 934937120 131110747 875740641 917269353 975073879 858430456 993013857 916160462 947531535 228730698 257980503 371927276 444557838 94350059 191416827 288164850 345525592 21849423 287068611 311330419 805638035 782744724 810161184 52448916 860206467 727257995 966336196 435954937 511505446 194954638 836062844 278973476 673367877 241919693 913551529 932172852 989712944 323609218 509564456 480458008 617636527 290062443 810321060 725505126 823309693 224264505 781757656 672456472 713160017 716667442 738093067 406077904 672926739 891786918 995889989 229102991 596307615 310529204 551794569 12108175 912870815 197645653 439924478 823275754 871685388 639365201 967245083 425069227 455763643 524421960 578494089 313739001 475098093 535203511 808248379 446864555 750434838 829707288 879032850 436441250 982260897 229609172 484511511 822041221 912540666 853735194 869600722 70253796 553110689 691126329 761559288 622966360 724366480 90642186 137305555 205394734 302228613 935581846 976476641 308362267 481867558 745684004 838727182 352192966 589954508 240591118 455967707 506349116 611670968 797633487 939827292 15881753 48136124 257022359 817119277 1435959 653908754 242152307 984161711 398924732 533538654 864575777 988961070 287972387 765578079 347307723 392473893 839622 409014718 498995050 529962056 711151698 779574854 736814450 863275209 580406228 779234229 287640498 723199004 673203345 817222666 940797074 955154448 395843878 626670930 330394827 685116727 521165637 878664285 778442340 871434804 508195479 595108897 62546568 232396733 375942751 423740070 351058296 966569112 481296674 825789908 463417521 602676991 795779419 973160336 652746526 935071132 974822169 994233854 225676135 866139277 862238264 932677355 945246422 968743012 72172306 207251072 29879667 232543984 319447236 425755457 753230968 766355597 362807309 741226178 502461243 665998151 998600161 998693884 887213586 949951582 184281623 944211076 341464162 751163007 33012170 855351757 304087090 949285356 583336029 767950927 335898946 784100787 926705685 992714951 419673594 774014717 301620715 825470979 537104260 820487357 276607452 562807479 531575309 912628392 609989031 674584406 152118887 280710601 402436151 964008073 852235419 970178077 890824477 897768369 397236954 582900660 105207712 854475828 518543161 953247887 465948411 845217489 648453791 737298430 422220929 741110745 494071597 966612572 625658328 929513298 911740526 991373404 778449691 914373409 56395179 432184353 779833923 793708364 666188804 761700575 155900100 410316593 298038857 500735254 23403345 630977820 489275200 835098070 58558832 527770982 415464115 553730543 970860599 981591326 157699742 655808016 546967381 627902377 797496069 986651397 53141672 632207417 371943782 401989473 191548199 239059248 355601714 570222552 982383343 983236574 890650758 944109809 274710805 849599313 816427909 966631627 69069100 618844538 834432945 991326273 280452711 900398587 436573262 715164436 699704890 938790855 997496809 999031118 215521841 763351477 503393775 557058673 952669922 959350893 315621612 486513288 100019210 984861811 616841693 722739727 980400103 995155405 721720391 959691461 437406217 674875336 475899450 771294148 784043695 798851068 788559490 796267736 238855190 770494411 962684836 988075313 825404705 971086352 8897871 935022691 579949110 941672320 338431237 424196709 658640815 998264197 783398100 789769306 947023311 980344199 383500941 811794133 691186008 956328066 659730965 724997462 308023891 566996425 217037813 347898066 48393722 187775717 716571783 737322496 833766711 972593633 376208835 849071127 996597401 999453383 62180736 456781218 848087722 888063595 830712759 927357800 592773359 813275432 122710641 283089657 639106552 836419710 379940646 786469254 478346984 495522885 713545591 984782885 680827529 993224044 23164631 912938854 206795388 514616810 666135037 903307483 436854063 609962924 744265699 761535648 777107560 889581414 309638495 812111215 283889591 593153805 320002371 613174498 107579991 458139042 749825546 750826900 224304072 700118836 268218624 293766191 520070348 889882550 873173223 938588073 285220438 667456451 789434953 795318108 683079036 852004660 104301509 149728892 185912165 693480570 369025384 729212301 106714981 664255253 160476512 214225166 44605129 219805586 31461592 952332549 780588291 789545141 683747837 955159521 851953248 865818567 405857019 571965417 257436397 352951428 878784176 996231092 937515635 975977880 216504870 762190280 437242237 717367918 113647983 602358892 467497336 742063383 153716320 800311693 121656977 251344959 4249781 447245398 306078174 521013466 444282689 619746876 689980191 858495472 836952532 897245853 161650209 308124528 443515204 863369122 628859483 778789835 784756233 908705435 542452474 623564137 687900204 945345194 552147582 751323109 210146398 791337703 560291022 709350175 521507504 804558640 439670900 464676442 122283179 960681790 254036885 550023590 163652267 698059706 434870473 897970456 676220922 854055836 771185236 923236622 169202703 832432479 4965583 887102333 237241269 583718480 937039561 980265349 102087951 721530920 16606176 714792588 655463716 657125038 280825577 989083137 366342135 415024685 911259465 950425544 43965760 385260152 474079712 490147447 117899027 435002901 515608221 872289593 504211755 568557911 877486597 884213413 933529989 995762988 112751933 572042299 351645201 870131363 374860296 889850362 436971762 855686236 904230116 958533056 97294709 776421119 816048708 928188492 214627262 723210829 976247788 983872898 72996496 154760703 892677440 911670705 347009225 671492291 391573640 735804438 999325697 999820426 232913501 571195039 922305852 953758465 100938823 968741071 36674259 497844152 948658685 977277353 466920710 749032398 644084574 671872359 113163659 646486428 508034318 740046398 830727125 970552337 848319829 933371974 600418992 790155998 279917565 977414051 466761489 890769528 854733228 928249904 152404499 901072105 40505201 868981578 800748423 997399707 343999002 898263381 834205797 877468869 227810166 682245773 857654015 895202338 586563226 878589841 526428940 973188128 428951291 537017757 448284126 780280485 211979397 862872164 9843639 594379990 559532627 735851843 610065704 951884331 771604921 794305546 523077044 937202030 824522053 927436180 849265935 933454973 922401521 992454921 847117949 921908160 158216401 221472678 241964805 825781085 184942342 437513467 811836597 914501022 320012707 794393637 173790417 333069424 116373670 813348899 330297982 618031054 555817250 873395580 823154445 970052295 986665322 993733574 934681576 952239833 905719559 976199260 210446797 749363939 559043397 700081655 608888157 974220124 674330394 889954838 82445638 793456303 182036855 859939323 56224986 345010807 317387997 464180036 620472117 751258275 23269454 436650801 166815572 561930419 512242640 774115230 89945919 423541443 995794634 999797571 762470996 836975705 4701673 305509496 121614410 188220408 482379820 938666354 908237846 959356487 459655963 656209610 907044207 975209976 583871259 968001659 742258641 760704844 863500188 902357981 939157647 967162740 984182492 985700363 47865956 242772460 203937850 541545413 273601757 445901440 758013972 920694887 468152146 857754519 810250544 881597167 96809446 552116612 415420219 754262946 380753504 429060410 578384880 612501255 955784652 975384433 968168516 969668022 357028671 999105309 812678247 893919088 513162696 564377269 380651397 771650833 465196094 940746184 628254342 636543027 875104814 898481948 165874503 673180939 997393376 997998790 447461124 600219790 977550280 987261578 509965808 660516400 177642067 820418750 403050741 626636939 776192553 974884098 748325998 886477566 35015603 683852863 835940925 925023599 500854888 637610943 110516795 221250473 810316147 883591044 683024440 778830981 998675678 999739446 363769490 923447431 60413738 303322150 618238985 665680536 124276728 240658909 254970700 667963770 682734001 861020389 619562868 795549073 959767885 976368284 766840518 787979510 74827657 667036664 880145257 925211575 135053313 332884747 146968317 879468732 527857273 954690257 787765370 849333865 126643403 160660101 160733490 807058613 279697807 943445180 220742615 377406006 584763932 727154870 718885061 819256256 823379271 963576281 523474124 628982131 841821615 909425491 772682857 865945854 957485525 969538216 605343921 750918858 867316541 917577465 747518785 765477800 861677828 988154450 893838079 898291636 58304654 378638805 620217542 877093373 332310254 395244784 408805573 434981983 773101334 941144001 937640958 972346029 264141078 640007052 95452882 491329181 315571182 748652674 250092063 624776123 906817680 921337586 100465109 638902975 285145314 880590853 766194113 791908441 304518770 368421613 126810785 945622232 393012970 799808426 126761387 986549408 530322445 765944066 764963864 989432745 746243384 905779299 747182038 972248053 258825632 805712803 331710727 987748661 70524837 765060935 739605723 761266698 367244191 596505550 629464318 913205806 367286077 652947318 817787042 980231549 169626427 771018353 522000654 692913937 829957488 939595611 119200990 809916998 902099156 981590811 41223446 289293197 728394817 971183025 659489806 781126410 440370291 528297197 630458953 904821148 972358772 983195629 655054737 713074197 522207519 887398698 14326518 230076143 835922859 838286805 278316732 434600802 40860644 650076310 291103894 965875383 372664243 670297492 255663219 719282958 131409302 952320878 263377145 804279528 637335005 940227963 748991878 833678136 669364629 807441446 39191054 653014464 271526531 552480868 742867260 776835304 71308797 630745495 383476487 838420222 561082898 961348988 337410844 764790097 850389918 922101065 523947235 905765773 207861508 821060116 472920764 581378675 944047144 946095729 638630979 839541104 912958454 976483613 626423237 924928009 587199081 698189073 459020098 854110250 292276852 617125038 380292631 990216797 267818944 802686285 195308693 209838560 730195282 939181060 106016886 407484640 719657637 828937608 232003665 906375968 879182204 977227491 786726329 941988309 56224619 550665806 824752683 830060046 996775788 996813586 21206523 252490458 167758579 388499313 921492602 984952574 827015530 989188257 340769746 923044879 307998294 625310082 828599794 951148646 568725980 600221679 181835851 842190814 420173203 855373855 530386425 696904618 566447778 692720652 981920992 988969236 840962164 845355457 135784790 486806770 976471916 999284280 24329203 810963660 251717706 311996060 199835861 825820511 386427735 590110313 840950136 909402248 567816748 657344076 654349950 814990386 313419461 962107227 968734836 973373919 631003935 871662882 148089224 716924729 736580785 745513580 603818977 915231668 714733962 889716848 15355521 386922388 720964519 860136850 834758671 919583461 152190449 902941567 855586544 962091914 114171115 408377955 658843785 941971432 440376222 779614417 669243676 774838526 50539163 79000472 542261937 974584763 438117522 894303553 422892452 512651066 439341405 920547677 197879051 892515163 149246363 609044043 468005112 729619979 180462607 275065838 104709502 335421810 491447437 832759103 988655718 993544876 614646571 959909898 293646318 800363487 712576107 955464984 256509311 912379610 116329953 797901763 270921759 761431365 550719255 872161465 280871642 441770529 325516204 537168907 19783248 527332514 213428702 612331462 182060010 828591506 336996561 871170709 747468625 830109723 251991952 923778189 383066390 845761913 832391528 910224533 955690466 986632375 314837852 650047161 742883072 862479644 42258514 355177460 445820863 481774415 595835358 792111031 7350925 221416037 421523477 505207040 905966577 992816277 868177965 984901018 400794021 526500862 442729133 729166670 462023657 541759873 72973789 471446230 456992054 521407026 177881213 262463151 407728441 853701024 94799331 598999477 281473068 868915653 703143252 847009601 387982336 820789591 676051035 834140732 34479467 116093373 720916060 937305929 346949581 814436947 996095429 996456612 370613461 926829919 659264183 969370637 593471925 618157602 402567651 444156270 258065052 533091196 121855443 171864039 232440731 755735236 837795796 964113029 399809365 784152430 751413017 975736650 773350482 787447756 25010991 328201688 397381231 431304098 559668901 726502336 791052653 955876925 372940869 830482202 702004203 989401064 37122300 544662435 498901092 748621238 600366418 849734253 410967372 781873484 506575279 811614930 47664818 497666915 524703243 550950499 366350365 499173671 98865703 690126062 934110104 987457664 552829194 704385596 715654347 865556752 540750951 834761678 575821711 704172438 18337523 682528435 791777607 857928179 414261279 592154487 145220484 827874267 810382157 901102901 255995706 686852332 918685317 968650045 465737466 759856115 675402833 691004441 298284017 512132843 355476832 390197944 745817161 777474250 978150904 984100669 416849829 666145237 310105668 501409727 376292065 512192267 129566955 711985662 910983276 922094630 75242864 904395664 199972171 485559755 788786464 821027748 558768219 769032164 230906765 910250642 727971860 767388768 587452811 997973247 714087569 727270494 424797357 513587016 524800959 771980622 584337873 591644640 13300515 340752081 610399694 612961884 22376160 136799318 274355498 313212636 361853243 514467465 934094904 974097110 510048596 638694792 515049335 795766833 966582534 979320881 580223046 677938691 267054521 581554355 576811883 953698310 72698363 215591582 570358425 983004437 647183657 695370835 609716187 941749378 961858815 990181380 645872605 802324754 851079551 965733414 106903828 583015537 316142492 500608230 951745091 980763718 110474618 521327519 318732331 602044898 63526191 587096306 887431495 905132002 390333087 593660215 392867377 931131199 552052536 601578327 869723548 874870882 522644617 556271665 583430435 636980461 286014539 836614605 370956618 899647941 921250520 929223689 705002803 737267934 699697047 765089082 463344937 722264456 660042293 839687638 687072439 839101575 636752420 830635225 645372354 915852031 53267345 386665110 382595744 541191161 110934399 111613334 612121679 900952528 465692798 938272727 391625996 473572146 475470558 959028950 131874050 994861350 981413267 994421994 270528936 402834998 655124781 874095838 79179641 95469021 86516754 152621626 738541620 810552838 920142217 955987749 393165405 761703126 861513984 956058095 14728384 806928590 518719693 990241251 122696274 830544515 565085570 850644395 720197969 921943113 691496331 753474679 908712827 982661049 993153443 996093507 742325394 910525933 615954395 978040651 525146421 905434079 721037928 753539013 252308232 285961768 931796259 973274817 130792180 308368979 559137082 737463751 796926989 805906060 87707353 498332260 815101743 935742569 406207116 646120828 404368224 650123078 416818150 894659892 993113217 996402591 440291017 981065127 782027917 861754684 115971566 827209620 753510572 880798156 425430473 876837296 684666023 826625393 21162328 356439752 775848160 982377450 908613337 944683070 927138755 988890394 184305623 281372581 951624141 995286478 620006220 961065480 95679083 562018585 530260846 742053589 223638217 930686544 149617554 831547935 323991795 681040437 979275667 988964433 751842036 853943519 917317916 985398277 429036344 611833816 92380625 913034101 517406338 640914477 841301845 929294899 444737098 873599745 97824752 603547173 345985658 601659676 461929491 941576578 714142428 799385296 740494573 795362334 974778366 980815783 693102364 985420968 945267488 958914964 162632129 971382374 17955968 634678828 943586694 972626612 335744991 995068323 801005004 916126640 118682830 189486856 231095395 618210683 677955974 957747412 713856144 842167347 854118038 992533180 451295354 718505353 282528101 316599285 28227169 968393778 50110115 191029085 688140774 809408322 767550952 806363424 872958651 943782110 2478832 901298235 759553087 779982485 739630860 750917057 475276532 803252728 528528262 554413346 991794198 995690047 444091441 654209513 238089652 645047674 194292059 777936742 116741903 785162452 818630944 851081758 951865660 954723502 828169541 845318792 736397364 961444683 651731732 869103727 77844477 955308899 434270928 856628341 872514617 976154948 979264564 982271374 202415907 655767839 145754954 490359931 616803580 809393594 33458351 60060335 431631343 497345066 652141966 827151689 376458215 657689859 15459111 62138085 743449934 958220584 205458076 458652547 108917520 756544256 55358656 468579013 648401255 665962784 960040053 984562286 297586639 666213934 502836024 815145747 961904958 968228375 284408382 478652370 489560473 652300298 619891181 746782658 482329652 813029297 813398082 971614495 145593054 509870406 392912007 466811666 432234307 958437021 402157480 754665926 233445810 835261660 524745442 526576793 194528306 633847038 987337530 999532059 715273836 854794407 99453881 341056507 460518617 592706700 759654750 903928014 362125010 554185606 495724943 662345190 263446436 784821776 155927819 925185916 322562595 608200793 418999562 551761710 119894711 724613811 661453913 858764466 12676217 70512804 386778612 570218164 34633355 857025382 911850594 955332170 551313529 953860782 284471700 685155922 214371363 323456517 338428821 390678893 768439592 826105556 504973017 892839918 435590395 669951930 269270880 861667952 933147521 943345802 706673430 755327847 877459738 882407188 274563546 718181858 213001050 950589236 425648492 548438398 665309957 709066559 356548554 622385003 907261988 967170613 563915407 692785965 90002909 734960271 567329381 950022609 603986256 632775265 209252901 999285378 966508163 984191245 166555202 788651177 551626069 862559056 150801762 356467754 845484148 851517033 892978659 905677711 417176710 743916981 266999911 417162111 49621000 73202155 328863190 582204734 575185803 760417297 672097759 687228201 842507518 869700596 936345137 963385683 249183595 714080803 269944827 788097789 535360068 651097961 982298448 994352989 745994109 816057108 392710839 855331747 942578174 983028364 617291793 856193209 79361209 559462589 305525669 933085570 33961477 845336764 623613466 867391006 833030290 849180313 884729002 937703148 749688817 886042652 711489106 884241450 924328218 990773347 569883769 855482492 832640521 850314541 797709893 937910560 29290647 307437809 204675701 688023739 998990354 999464990 311880976 683042133 883511510 996055737 935014089 984804868 971996128 982547851 428579216 967819743 463311629 589370541 247057310 777113324 583353890 596786928 472132179 720428386 924519277 973703416 696738879 905982155 317485625 523677007 81687203 335763279 963662554 964897680 102665517 341163079 315475314 543803392 854559707 999195692 955285108 987817527 806965236 989603930 945809916 969090545 693172905 757027581 724891261 999720994 292867688 987403469 394464725 782715926 947556304 968078830 52054192 230777523 471892749 837978776 794149296 952835542 443820218 444060393 115984791 596116321 485161017 822076884 808142914 831494781 500438409 807705961 765603542 771582161 854116957 991303022 441085385 735140533 508534499 793691147 703075037 806540958 678957032 724607143 485406416 628121376 380182217 563478689 104674463 382363591 357536497 549283287 559620556 689051500 341753560 726061030 635860106 649036823 754356596 917042288 303502347 785535358 471188469 968440928 36934732 869981027 867181812 984066388 256045746 568805871 260451999 586286084 464824643 860738373 944240654 998822805 928336506 956195841 918001855 928896321 890176636 908362931 64099611 194412471 534034536 666394121 625363593 713268493 223410196 793718502 490654769 745167678 868763595 926160903 81690082 352227884 815704230 935444603 661683697 899210868 73204689 332352036 21358650 694914499 61830666 683052670 340008724 700670285 509943810 626091451 238981042 273416873 291964029 469788622 71943487 415267028 783206458 895205138 353988584 608139219 25901036 845917556 815505518 820997342 486354351 653733556 945669205 997570821 758860925 777439982 972807171 994400888 125621565 653540583 635825575 878245384 147514531 464564217 193401360 509303566 926885489 973113724 400154937 765834528 864933818 998632581 507250603 579126043 541214989 579463139 810057535 919537521 908725389 921794397 10000562 278455928 42358533 327456629 343000140 895427742 266632711 668932573 47591522 481944848 260282837 917670509 943547420 979935871 618987293 968490257 582610010 905598785 903578613 994474429 972734954 985923881 764225672 938428536 664448622 920946271 254782082 576752194 462629647 693456265 781748805 936115496 860609361 950676062 676089898 928105747 678056773 965719269 563439766 801107897 940405397 974728935 204770992 336418389 47337935 327991442 866433502 940129479 13703759 424403963 844420877 966759186 663083590 745779963 688923194 826116271 917562436 928562655 721901222 770276991 937384027 988813145 718271879 901848514 500435313 516731726 454086289 912383835 592655448 978724066 234942422 647506399 480154003 924479896 484970828 568623053 213943313 936074949 530626238 704574249 717269811 725050056 122903060 318294768 455547923 511325695 587040565 674651009 264917709 387525305 461731171 712715097 947469395 956865189 96594995 888337049 138529941 989493973 969596382 972768127 366413051 950456081 24709975 450941526 689718784 744678320 368922716 681945586 855719407 922055479 912251380 977485333 721132086 759270365 730002836 753646335 710946120 880630868 627477459 639590779 574605250 879329588 640108666 838482305 59943828 961347410 696786396 747270847 881199975 982255165 980283167 991273169 511130773 654751141 117059747 414134780 235759649 618486947 10239669 743755764 935813931 939259042 196628869 374007588 160683855 262475463 761922940 915863230 639820401 933100052 504506438 915419001 135469668 997151860 530938964 598946904 866391362 948394036 318585186 516660498 520847669 744354365 90514258 921297918 393858930 796595386 291106217 768432848 353948194 840606413 733885481 792109506 533437713 584334528 834797133 872142258 534123329 912583973 977087173 999611459 44246722 264257041 749531422 781164704 740887327 992988808 382574004 871971957 448350216 615837766 633246123 977153723 813641680 938465721 521567140 860078017 563367615 806665145 701841128 740509298 54732113 204580301 513868933 897864991 264703063 685003180 812931889 891054931 124182444 451208958 744716929 941381909 614662078 985881541 260657053 299079110 769993447 842898100 987397145 987789271 756826704 864466735 642777313 735428048 770609530 843999032 947158266 950226841 765300335 817670016 250676345 705452984 677053789 929145685 391610346 665107094 505733664 715808680 721421988 998541076 638667572 985085762 653276977 668930524 648490051 659028829 848737706 957214162 487015740 771365801 897596773 907848190 721541250 916249636 867764066 932056678 435962446 474388478 15174364 319555362 526444934 962548202 132952437 702365182 800807340 926717424 763482634 985791275 482289605 787635565 245368535 659717981 294937399 333646898 583426370 623592441 716178437 860067097 232868556 640684826 315948138 514588908 949355528 960041449 69062473 732030393 824819626 966821344 629665565 912783521 174404618 355580546 129747322 409548403 396542563 798730132 95650424 248607355 731219593 855757655 279972855 779143509 491787460 977250146 136260546 686109615 364886221 995573994 786231898 915832230 92274054 227950272 823874856 882896165 79836023 530714747 466425699 897699124 386780612 587268567 376106410 499918473 786928925 915348641 270959835 985842942 899376431 997471148 387230521 843698207 243449424 701496127 410696158 922812722 800059982 900615348 186258510 310944122 634001560 991984558 924850630 949570363 39765392 520872922 462367537 786462369 205029374 908014505 829496423 902155770 622257924 989074186 758072033 864259980 860846445 897382671 701828320 851295121 166367208 878007727 722798385 828843955 564135754 828921336 564781969 922465055 56957536 692611411 827962552 845865881 745597072 978147007 111722014 421821610 950976107 973978471 978966948 997805408 550448816 806627290 210836780 365242605 440015192 607359977 254046678 511586683 692447317 968245414 573124088 778632052 345135961 602023184 258321647 811861703 486453525 806490466 811992567 999332553 768798507 966437731 819066327 988768339 389714374 584596739 854098747 917320337 549190846 967877960 894179544 955436227 600833722 819716776 835815841 842400794 106464212 110640604 457814049 549895424 711357242 904306918 96611406 310228395 812968920 966619699 90132113 470473064 986270409 988013121 668253327 739825263 601857570 754529564 76349905 99042044 48244495 961715023 865726559 973978594 994107293 999466571 552629444 921210513 755184219 809261632 302971731 917827756 811232488 885869852 941899129 989948277 94796534 334700048 683112215 796333511 846128173 987333321 654781023 898001508 721553379 785724531 103120184 836845460 119183737 960062001 419984085 770096578 555122375 860949588 721119932 966336028 199266247 368072514 618366206 738450720 980703189 993192843 954501645 986154940 668919878 785009153 585566728 934718894 762879483 797474286 905531386 924476349 92449738 122325018 876109181 955004363 877218787 940993009 187409487 703745157 202101377 268394829 12238120 693525773 41710105 65878790 691468699 993070528 209916208 356326945 794162517 919219782 747477600 774049339 61017090 129333351 410108545 687747731 727999533 869487457 258516464 673270667 820229512 824004811 339450933 807703220 174113699 517226929 327960217 912469559 279534363 972526352 247301008 940298305 340815787 650271135 643858835 774081042 761415095 994786738 20783772 396061204 33717959 86682486 814151462 973167312 496337307 717721366 69690076 643241995 600156903 601696535 933081183 946896240 86932681 420157222 102232721 687733384 688484377 690262382 503057511 758329741 573029908 887312108 456390918 805565572 194809434 355579626 534585258 677420999 926299214 953664222 345975759 863120386 21931928 797608567 267581569 344626721 775271894 927808033 601289118 907147066 882999942 991322876 139429160 717993762 976498254 990999308 552825781 982261241 569989156 959567428 533605550 947682817 817027159 893610380 996926138 999427087 454863541 829561402 577402377 994649527 318978538 636866529 978366746 995369108 348940065 567696837 813632201 869158011 898116594 954526670 888675750 980220434 318939338 856456784 949179273 992740707 665684398 852144825 542877738 657669227 910290883 925065821 280874316 429343139 132418460 986547545 749566653 816459655 716841424 764851129 940544247 964508506 796525908 900854696 673041470 802907950 426763261 641686058 177096987 933209646 878938611 936663756 313614986 876983700 915909408 916487511 126877355 335874161 224524173 323977680 732864883 834980687 206334566 653032879 963837068 990904097 919776814 984734039 314630604 871934512 209758879 958652547 719250410 766845880 468788327 745109287 421074486 742393725 341601134 437406138 776088812 794196767 109493662 431105222 419386578 923487393 953218010 975849408 124771712 992862930 375874949 832484658 974335923 993675964 61149712 349983756 444004181 674964829 445584591 713468472 428215979 449564817 969338889 981116833 931927167 966168435 372715385 770071875 276162087 875763344 830503587 927588480 583722294 901338735 49737771 61431180 104958418 797263251 731083237 877416642 256625522 982693037 829701333 968975876 62508934 103375547 289908357 507164799 87067441 979260050 528609868 834610001 285485084 940558781 66819502 517015862 649435281 671363948 27776266 810291510 102363580 714259102 932551572 980693793 833117171 940726381 283082328 996500635 132812461 270354819 774547898 954222720 889125790 960837100 568260030 616353164 639553760 720759060 783530929 883202806 557628894 602381638 764084595 865909479 739009556 807902316 502658380 943699138 252508875 527789134 462787681 864898951 581444451 782154760 641049091 680435850 769339111 856391645 588879278 851038570 497652621 887705963 810857180 987468197 354560099 645233884 817744042 862772304 628380847 888149653 847752687 941904179 713351873 818423565 973121902 979860252 36031569 643493941 253514684 376274668 104087265 309504072 456476683 575807683 162922790 726346106 800851261 943054651 770464487 798211746 780872678 829559571 72051331 201336196 407434644 751078427 301900901 778934764 381565694 884223730 883553392 957256102 544474718 771123631 888903846 936033566 792800426 834962747 264193381 445597002 285656552 918184192 333429774 760192818 337875845 954377917 932374434 997038580 342581248 796409705 190194063 930186180 233045802 415198426 163887812 958527783 946947986 997540087 89181940 100103728 761174446 978118641 761009216 943128278 948351020 978065465 147465163 446863299 178567558 633789790 733545573 950835038 272188486 452742184 203456611 765299781 829577090 930272720 554123113 732364060 556772979 651747748 169740489 567071898 675345012 904764437 44720329 108461202 963775935 979205497 671156436 908059218 870213398 907145047 185642417 465651071 117518459 884213592 723175772 833169112 133233951 346660176 349677729 742696458 1784762 297162309 660899163 976864211 142842924 298809263 422169236 450037693 548036631 828952648 970367602 999828118 869841928 894205908 770895805 828442501 980459938 996275900 75716557 355188420 172739721 446949816 135491032 443386167 475942160 660510425 137236685 968203260 572653152 706830712 157428603 608873159 511092304 624810037 113825181 617942832 535665623 940960489 646592468 686538094 539373772 833764349 668566453 836912802 196795874 754573081 554056893 930546967 948083274 971890951 955737403 991030944 431409162 732302398 862363046 905871878 893575796 950324957 743909462 848914682 207718431 399954963 529413190 613969663 120966753 549667118 949789955 980139245 311127147 661177654 282554140 764969234 881888166 920438824 66004836 615059891 511466932 590060125 771203493 804761924 357083850 400875336 671175925 947069198 244245025 371970166 988466160 998416621 877803206 897625950 803240741 804731177 880129111 974981736 538009249 596749337 892443650 977550950 518144554 714750190 305724370 810715147 392225405 888167927 586508462 875882618 412275249 572484978 237015308 705501800 629940101 854849066 618448959 843484006 388045484 772347341 330247858 426784004 843104218 885331568 58494473 275560585 643679083 787934551 211754850 785602924 161336791 351470946 457203590 998978462 735631686 908514347 99030003 349092152 560673312 650016330 522652888 645647254 568538945 966196971 393000714 906695993 380941712 538613750 817282877 960198721 467714029 799164794 942850837 970753073 294400802 337314682 333324531 460031797 1116880 671978736 703014050 902029617 68645211 405322828 723872619 881635442 392033841 845356263 678851851 767076672 218765200 918556945 644435113 704023636 735302126 742801118 715570729 925918317 992328876 999853517 90156767 260700750 962538470 967226183 876372886 992672054 142895518 511266973 464560658 618895657 787900156 813336484 280740969 685096957 867433255 954680231 394564367 536602226 295940632 588436312 440987154 986137567 191761418 563646946 790350883 826715043 472329816 827085970 759513867 993286240 768420348 847837537 46364137 832998980 770589115 812399017 349259125 424229919 845027923 941283624 501005623 744815404 563722370 663987971 830811953 959466168 485447796 620720779 937578344 947125987 794102157 825594545 383054054 536988480 901012797 983953788 947229537 950990985 999305391 999793211 80862156 639489985 292391805 512958480 98535659 919542909 245347236 904829016 558531874 985280704 765175189 823463022 864921516 889489349 293104828 910993292 111287194 146117722 735221775 819052749 343564057 703730456 789807343 844754269 554452406 813051044 426880153 740632235 764167979 984742547 276255824 352788111 912961192 964708433 456889678 814707397 292961414 811052366 5695586 55806948 759341189 863303968 601236725 622066367 959892668 985357391 113690162 200083399 442322525 745265505 59177855 713650442 387047823 836802639 402906623 932830601 326593499 363899207 643389957 838523239 439461162 664478855 91918607 699740707 293197894 655373798 309701108 404475147 404900442 462983572 904300578 973566847 414848764 726039337 60269252 292409172 890893847 949122594 133645126 912483886 498279025 757052166 613196013 930749925 973351772 975748857 689489660 950127177 838687101 870718297 755382349 959408961 869100109 883232637 553845145 979054605 182171163 852476866 69267332 445654316 859202821 873642664 537769230 656062338 130201517 486348504 900316009 938263609 657084902 785483655 546727127 745250596 103777305 543306000 128075043 727099931 29437021 271195669 27212673 238292002 251582968 944725449 187285667 930578790 808680467 951564202 69729059 466138758 535745701 742955593 192662840 817907003 31027262 424246647 455274006 524109214 385548615 767991432 657750511 984508120 50527117 553705622 980019224 995768356 215160112 572636113 75174520 841931636 697585813 944016889 28194429 762467807 961510433 967715631 140372829 974684726 719870536 755836516 626581515 857630749 663997571 673649826 39281957 837238196 929119594 978838783 373510110 678058729 765723462 976255687 27219910 458664678 255542207 638007110 365360685 798330499 731593428 838630576 573741074 675937440 121345386 694323505 899177239 922316106 481828584 905576744 427340047 911058104 972616389 994780680 554970867 788601002 281205304 583016837 675946437 796545835 834452460 850977459 104170078 970547279 13474759 851682580 508313113 656759520 26325087 722026118 385742080 899712541 268333599 900019169 203982407 961512850 386209227 551750427 976535305 990649948 488368718 530264244 425513826 630827490 766911971 953734605 423683448 481676158 206689653 443103815 230715801 652940929 693102708 992423362 306778601 511823492 565206586 602068068 554285930 915801323 685456347 796156194 436300774 875164536 356588493 468707121 186582432 316790415 661212675 789202695 410629065 900234467 853280343 930925012 353527799 590212594 304537055 357550752 643895075 946792585 560195613 701114341 551766080 782404566 201876657 757270811 60530745 413944576 117493400 750464270 959182782 999312803 212566102 369522640 399269195 885446546 673593525 981303717 535858526 623774015 784625630 949612124 882129123 995758636 6542497 839478560 898332784 930482250 218305918 475086837 659317447 777443908 883905441 928835752 414854043 719102267 614522042 806834927 182340092 935313117 542247369 812622691 363930849 731159798 455327811 957759688 930840865 960764718 8115889 915502393 709836145 736432637 396521852 508450001 497664630 994896992 438733267 797731968 857892042 866105793 600598603 879346057 391822374 878148158 461180910 856205855 259369104 726532458 870211895 991995596 196093545 368119769 427788060 779661174 283951478 432962122 801022713 988085236 313643733 547684804 421128638 880463920 123387166 752487423 877352929 882652765 785883133 817420983 220766669 959494429 439621424 870258297 796044931 854059956 357896250 634483173 374401303 951899912 992611620 996483752 573700100 998053360 50798924 841975970 769697901 814899447 717296007 780862832 575402884 593994980 622619305 708527454 986513544 999853891 951374756 956105757 795071812 893834756 677106873 693422495 372801151 424269157 752127634 970397641 480725698 799267524 950294658 989340884 393879547 883609796 110335055 144677240 672276204 807600138 431631473 484266162 555527837 814776042 909842072 997357341 287370264 778924512 977485981 999069192 330304576 906842555 187526401 294496505 334511876 537847966 198357447 758000419 22714881 632875688 831615583 976253941 974403014 977591274 972489429 982544889 951920348 997841363 580425655 639141793 17170550 742392878 786793495 827927699 426719221 664114743 636843499 707548772 625247817 988383864 672547024 824539335 600623358 741555453 597399119 933908812 308250950 805410442 872603474 930217217 1425489 973784623 574867505 657941544 633213600 889234042 823165722 892902247 934081749 979498175 56439367 614016349 54990081 451173512 638462159 744214672 467626578 752004161 750335742 882740063 489665688 759607408 894910317 983948424 948308233 988800832 447766965 723993639 560470422 697511090 779715987 994619200 245036442 555401373 944895687 966862230 934125913 983804443 336029267 639317724 233618931 481842106 65522863 168222552 41617600 591113617 454412546 818524515 987636550 992002059 39707407 829706795 258561170 380629763 281683982 646880959 642899117 660899900 563799260 597123487 676459031 805450840 802876485 809089210 137733218 256671770 626701522 882151352 293245941 472980825 62262174 339241562 314944175 907642425 226955955 963096088 95431522 168279764 764999393 913935298 626923508 973294977 672731452 913887408 927466296 974703090 421201311 745348136 156787621 884577641 719826389 866133090 294871540 759850200 875736807 901085257 336040828 356413874 9500888 241088727 145209062 150772266 819735667 837166052 701306095 997605630 759622382 861941367 449922373 495618581 535186110 590927861 630347261 995648954 491639764 602380941 501181577 952149752 965998941 989023942 689696437 763785490 567974237 587295989 577178553 789227037 83131907 367573870 408278590 820021692 679083188 694172106 722302124 884181111 412996338 565133749 708574315 908429221 872997667 887617157 376348357 946084755 239015959 354957747 901636012 935642649 120381882 933114335 910728769 969423631 668146198 970974384 830460965 941019025 767818387 939530748 385695789 467245063 369533422 485157781 907099437 984136716 982936278 994928407 502578071 589634778 47602177 442193514 555790328 919403429 891579437 905639521 360242925 907752398 32921617 360641934 175442154 883510531 947744733 953705060 17826794 696149223 679800564 907561966 361281802 626046803 451851258 630779690 69194325 460248391 826685737 935117002 966072908 977719148 391159067 603202498 128481908 882279603 489669727 806434516 564627149 983745219 704890078 971625667 402443135 486232619 870701012 888260532 670156077 767912415 770211029 921415113 769853420 998928549 814738017 883210481 26238641 521319282 300490560 431434128 38273196 413344937 505285458 885571791 753840051 776126554 559247178 730870369 409065736 710748288 488757372 902368349 149830190 261696920 688369063 720712766 907235828 941197224 579810435 771423384 979832191 984377110 890605689 931991875 483436734 985533343 219874265 687183580 87476794 666024767 953400113 996333720 24478683 464303159 408529614 416111156 562844338 758899083 413284024 414060263 319049788 560694544 195371229 510156486 833872712 860214935 346383121 661432864 170306233 948979386 778432613 933937326 508125846 508722671 539438229 586261037 690165808 754123641 321371615 606253192 690825573 714075394 482631837 740107008 157865270 846656845 872874388 932299924 868576253 943762959 584050662 661494387 68333969 955432202 189297347 511957656 838429843 965309868 50688608 994038859 983205047 994819969 423829045 993291023 818373284 919475863 369857902 450390697 785772402 896809674 586328890 882929341 978988113 991157405 287973320 303278289 952770227 975797634 263077986 601098012 693591396 888997511 554306410 926735037 191947370 200683878 912061317 968309083 269246483 347106087 435488674 643488673 628682113 681799068 865043574 980354677 809192602 916489223 284081086 915958290 929631791 950774864 844068138 899269615 211499572 790381336 560053187 596725160 910158013 928663307 930945298 967451030 795531151 962941263 53750425 179377552 195117538 760230088 201169220 436424088 142416663 979206946 147620155 711188966 423765113 432025479 726772887 855432797 271287673 735552585 29101024 800777802 662093097 986569578 882221507 978269727 650761134 712824602 153116082 331304870 25010263 955216065 304928935 388650819 238746993 840269352 192824013 366564427 530904407 545574180 183270214 581875058 94521412 602748725 889531647 929931789 691086429 802447951 620843905 713379249 725532366 749618459 494944979 967681850 516730881 756693624 250530678 281167774 744374265 843513227 134478584 725961571 31970842 654287679 322313966 998348695 308420004 612419652 498077132 987121435 191559131 759221082 215727184 507981087 405639317 626732841 768187262 783687179 644833614 820020183 359490019 740991884 474064325 987044586 409623947 500568237 276243385 400527782 300125049 575687135 909900039 921771530 333427937 986783715 712707156 821278394 747965632 899631169 979521775 992399928 588404332 590197957 660819164 676745800 672992935 889938272 593723546 900855923 504362603 898589691 190264476 571634686 370847833 441877152 547892454 734651113 989010639 999130337 370029979 912039047 34073880 682827420 433794494 804967362 26399234 124409599 251745378 720177403 269343931 319456155 201544154 391184600 452742545 872176316 359012532 627907693 641744024 850922703 564490577 751002024 291405396 519651272 502561347 959712255 524572407 901771704 570181382 685865069 259666475 267911222 160569612 261024077 634464561 984497704 848735678 993819051 400838559 916261560 718298190 829528651 814286138 935006288 221006158 524417956 745172762 870951005 503553895 544209934 788226320 823610623 880235631 947622294 683283404 949941909 391200094 629072388 978866651 980881260 630992193 761190847 233653059 362900781 532593212 889054310 59553325 482899616 520805732 784055213 720322964 832217100 215706803 995853452 65376465 830709106 455562659 741235919 551207412 825602243 785456965 955757427 202971564 837203568 219635661 916617454 900818832 906742816 838462302 926221419 447922027 469707334 914487379 973749809 190449955 545548555 930624135 931420712 177067603 783822990 941920370 974586880 79742586 358372197 372748023 419035928 925763107 950225251 903282457 926598013 291905696 318180263 573596732 620801240 125927570 194882289 645703324 676633218 189623641 373637684 263334979 908922267 803759951 865887698 613459743 968990375 418316682 752147419 26250226 513880724 193321478 987927690 431843091 705224001 838218270 984664215 341583833 991274102 165178484 925101165 70075843 266316862 660289455 798878952 533239053 672381895 637590713 802825883 663649033 794659783 526760983 835059927 668348165 873807928 999966386 999988198 294447965 576483822 405737802 963186476 252014617 732275585 113209864 117801882 103641464 236636294 315248752 873544489 416430048 694337421 564507821 738897823 971509467 990565071 859698590 988721980 57416451 128906237 67222486 210124541 43220178 538069829 664967347 970433170 917995561 937415959 89605001 108308499 25466377 356278112 658254761 858292313 590218446 893146117 269710056 539508370 952288449 997543988 618616971 845279911 805872551 931640640 534318195 560111037 264798953 634401976 130652728 195639222 119513684 395958928 185812223 753117642 506507026 829917668 211167858 605943425 431353829 715912847 326004449 587192995 868168426 949840264 243885532 738075706 242898655 693868149 937830403 977828561 708667420 901984465 27477552 821916003 831565503 923759233 539362067 666767970 964645294 964653111 974890957 998996546 22030572 466992517 136778130 815684874 31540848 329650485 992089479 993392770 316777982 823026130 3048989 999647543 648785702 709170361 681455144 858533136 168722544 226643977 459672399 938944473 262266164 771959426 108544404 808109441 167600943 812203704 286470896 560067622 229445827 322287468 45792598 134251540 561591950 618350955 452587952 568122727 330836911 814582351 52835979 185955601 231381381 827308266 380742696 813251084 102111554 284583438 855000410 907424327 922977029 996676612 544408111 913023776 790599968 836231879 651522136 782586794 214130836 597149199 748704807 983486139 717223611 752359365 795671294 894354321 948390841 958417399 738232845 850096268 293651373 910282109 571428661 582749332 293817988 854205400 960053339 969146534 548334609 701224502 459250669 461972534 204162189 236195799 486999631 952635571 38673278 206824871 275255455 868151005 827746031 891235609 842216015 967661265 241871492 298073523 378990642 810367144 609465119 800707970 464147523 962146423 245254618 943691642 724810537 955564766 696780748 950243157 191319860 223666677 167739496 908187484 315113041 539352934 811069 658145552 878827890 979442785 304088293 606103974 297161756 902911119 896966177 975310176 660205504 681674109 516703734 706113343 496076097 871522325 942747792 969120993 70138120 191673638 572896415 811862945 94550661 218087415 750865597 814369918 578331636 600376632 51888011 840559043 16551140 354911057 907817042 949606788 927291768 970506552 923224601 955817371 183170876 730531808 707491526 982828937 110494318 877079961 702008968 846485228 647099670 741376018 272063953 685176160 349076543 518575446 539736571 847152650 888482170 908946356 455639711 571819133 584215132 666739225 232409902 353010424 996987099 999793904 364065330 877175853 152231103 831315764 317459110 392287057 154792337 750378498 991223367 998574673 207493941 275310478 913240791 947116883 687974605 863225618 412883453 537072920 612563294 695113440 136246394 861412570 718723847 876413976 284409188 455482944 642161263 960779565 609823779 609959091 698884510 873570908 467050286 602758224 432305999 782385811 268356460 660270395 879954881 973890918 561341382 566221053 23351640 636310781 531290807 897038696 882664080 885814704 19779123 62025169 582451252 930506383 364466507 637685545 706402471 997129262 670061374 676833925 78477606 233933010 845756726 974619321 357330649 416250649 212351774 926859586 686383222 744745843 672601632 835739017 341775044 709859410 191896067 873985190 463540722 645997334 751953881 783558940 153690470 930543663 337441755 807279586 242363538 641074221 567729857 743447791 496283196 932790566 511489646 728128088 155186948 895983576 5685597 590625689 287903509 433984725 918292065 963291839 600663094 623909879 254436339 401538679 300214659 307843092 538213432 741650613 826190780 864309360 381835358 606581742 995908921 996060732 574553438 767798615 603596461 970766450 461375064 533839494 283189698 870564903 370772720 897267155 900069380 981656650 953544848 985564211 77736451 290858622 111507544 922671956 692483335 896084932 207429139 855071986 855956443 984849913 413768539 815137948 719831683 863118758 970220254 973698144 76447618 936379499 491209702 870638698 620852819 974994150 93618325 382652734 518721427 755379386 356628012 737963670 292967561 976137564 823963259 952825586 109916267 517956530 502551778 559126995 188394916 395070286 313465263 637366565 466830585 726378541 921638187 998015495 834360687 933452567 342713962 540772309 143470591 380243451 379056161 784660206 526287941 863299180 119659529 217528021 754081419 896826697 317711656 956005110 401357639 953751341 5878603 503778680 674022675 997174948 584343386 885858999 429467011 884030336 602112968 796398602 312565521 931396415 3372544 365385308 430851954 569027316 468434007 558546898 58305851 570247028 735882409 796614489 932293466 940566071 532461915 834472698 152576246 952674518 966461879 989085888 90440335 288521082 807901554 851366785 471060740 650423653 211524107 579795552 225364648 337304287 465076669 530488459 201253311 370410348 610921266 739443731 380314735 594116054 202730220 252342486 396254884 688303977 329697489 402066481 612032219 961942938 542532083 754942209 818045672 882579633 856103589 971758474 719803599 925541255 721937258 936733086 728705706 841649580 914698909 937978282 714850957 741357185 463687363 760620109 778829728 935435550 760502232 928094682 69244725 308252330 542023341 987284028 511259339 761246047 709494093 837952326 5252297 921418608 827101919 987502200 753139565 768558748 771527734 849183598 776005780 843217915 836319079 896680869 339213640 987635170 348961446 803667717 280953096 494054591 920094416 930382751 608169266 828492605 118788562 172781145 433967097 958317388 589304151 701833309 554562755 767297227 156159177 548121331 447654723 845943124 146105491 244103017 245934996 678144779 716886766 957666414 329021528 397148258 388385984 757744273 541337935 719044712 646568507 883408755 526847647 946966153 343324307 742413461 228635150 892783219 668006503 811926991 407934065 950424748 613621024 906655785 336473309 573376631 991681762 999013169 527014104 588688460 677085759 839961565 478311891 787331962 138397882 248272074 195379177 473990524 132785071 246186561 672583344 766538990 331831716 597093469 423151886 610531202 465235910 497558348 215945406 657913132 741235044 877934008 743221536 990013610 175975682 428282724 345261948 735340921 199154115 728872026 776440221 817686951 962595223 971201061 783420926 923082643 160421205 893992484 945899311 960048043 846789342 990815101 361043107 932556254 759825300 904725351 400301396 592687581 480630685 531918826 984521296 991501268 375786269 931117325 965113164 980439889 994375108 994833564 670728780 823654969 244791058 318977780 190369320 950489728 805497445 884595734 343524998 591712823 392155188 913570555 406187153 637305457 691427958 848168324 63943594 459837155 780783300 920330308 533613235 808199560 92204065 892499790 422674472 832198482 579564203 845743107 587169032 748273375 383806566 545480784 357530595 645193293 799044164 984448390 588332903 875798721 700064239 914122245 7893437 975637821 676646786 780339853 532076804 894122379 284113771 816650705 972831756 990821753 119862570 628354818 721695661 969971208 525807394 990124036 149032760 576286534 932565462 965137992 36562701 361844246 641809698 744894194 848025144 866194603 381152954 918591690 884448181 990216253 885684409 912009661 133125207 508976626 910077486 988865985 872773948 908949336 636331244 989790087 426943008 870418249 453045281 611068890 60775094 689971699 432976284 784752993 619662743 681676340 729578248 811649313 610768153 789459801 880795414 954463911 990797240 991184427 434429880 862031596 652979895 889092290 745637657 890033198 977865349 979500693 790378532 895098484 21140668 381656640 449667493 522727779 495372290 549446604 708989457 927838599 36297653 205429686 866133258 942428704 394563411 799644523 67049248 779592021 367431682 485530521 335601239 785232112 194452230 267849691 350380049 350759099 812721704 955005725 67132995 970644534 772994382 790006751 77924954 256139443 205299490 419681672 973970422 988494398 715135716 718440039 699728034 736816655 398784632 723159079 298483376 816946753 407644276 472162378 235361818 638979643 764978677 905744635 881758515 904360300 21107428 649727828 159293631 519488376 41445960 312968578 690754308 809315363 770515582 859146907 789252777 878886492 338882238 562120828 395733322 986459980 513001595 999245508 372811481 648791474 150228686 363006964 437422297 584153620 648289949 899638120 719222961 999109400 589259431 966728973 64889730 580298519 4503779 545179867 517626586 848948629 371571787 833013401 591019549 925995793 753152416 968927287 279473027 503699885 433064977 696525657 95215821 543141057 596437782 680214766 859409678 979152282 694018556 884618554 974500382 977671652 215086726 479473339 150392056 798720436 309236640 721292988 987304100 994651205 108239414 544714119 618432809 619773357 778786791 786346678 568183090 576574779 943649980 944707137 433117768 985932717 599265185 676041450 109235403 576296202 142103056 684848114 778276225 940147972 878345901 962034456 133997435 976637103 560321593 971652115 910594473 918698105 379723138 758152908 889266606 998134135 466167230 675612233 446421889 874130184 488167041 558799367 132289820 439310746 877481001 959213896 999992603 999993512 898878235 899009846 314049251 558155379 358283367 615242760 949773538 999637541 550357005 856037754 875044517 944880152 104722496 837548857 385871877 548144011 51361557 221744772 38546239 610102048 545706448 666296931 385803845 598878381 156710776 661632052 308876490 971400244 916620550 951173283 557205844 655280359 867357042 911201676 149902701 854898326 194901013 305974496 230114084 691227414 104504071 822164692 951011320 953902336 236771728 830571674 721761725 809420526 687206113 996582069 519119469 586866320 190536314 515290400 11867098 87397145 656608652 707815501 356084597 388739531 573002430 820016235 840507836 927859042 466730990 561037477 332244309 641442050 402803092 987523120 868721742 940237460 598454083 778689699 40309104 421268422 915816118 961525929 393159901 504469354 423156386 923386836 126770477 485795955 991430121 998783924 796407065 969629537 698559430 713510826 6170782 646657550 399626418 701375120 64302424 768789304 453415245 957613635 781792818 964345097 797146267 925363966 506309043 720270583 403616710 668514569 756237817 774270012 876537685 964384443 125471894 895702182 788845459 851027517 313702567 882158466 378037291 541592608 589967019 985881343 156280294 649456410 584632610 657246594 249157507 508314166 406631599 935507697 719929894 991969294 497599394 986088421 712042947 843896434 336583704 436118288 722162113 843302865 760624446 898847789 827814984 961740475 656790096 900844541 662063559 743446008 907542533 981437857 828290448 951090472 45205724 646021067 254313710 441460106 35715143 776592887 507352013 759827148 908449831 932957822 944954285 990678451 823448654 930580180 466390262 619947828 454815049 958404351 729773132 880234471 927473096 976066811 166391153 966846952 573558880 893616525 388214861 851037057 773493298 837456701 811698386 928401873 115138616 143833861 116295842 163892480 445053478 673948487 516099770 660928187 510113025 990452777 604901402 881056842 628218734 839021677 299969617 996779450 600879301 621342691 957724320 957991115 22462059 245581777 21268493 174994170 217354148 688804762 516224523 848462631 407245388 908244931 103249528 638796121 923989764 985051621 488785357 509697357 238197259 985155205 430659083 802889803 797799755 863752612 112781783 448941212 278691876 425467340 191026253 199288765 498827486 793476790 424705528 434234992 2029642 973653453 769193404 898728755 70615926 172115817 369515489 959374355 624005526 773638562 733684605 907254777 961856419 993908355 515613692 664794560 138980328 284433915 676982466 845962924 621133616 665480433 39388415 277885647 358303177 484426393 885070641 939605154 376621985 377643520 805788384 939097359 146368705 688853280 901699252 941958265 938623922 964480494 913177915 958479954 655634786 996607237 448189920 468077222 75160299 141747991 273002003 534557414 955655580 999446876 761406168 873721751 283049274 794080639 78903930 767443728 200145993 315151555 210057035 451607233 363291592 632192041 456058030 702560827 657000807 955075346 3000215 47432841 760841633 868867629 861622313 900954542 737419769 827787127 579730901 684170033 830364683 847341563 864777034 925630219 524140952 682842012 937138189 993838286 201576955 555610700 271031438 989903906 751299446 949491756 56876344 626790459 545791777 988637943 822943280 951453489 806150302 887840364 963784000 973415344 552843539 644009194 696386322 876830390 237238349 245548699 687748915 949095068 537640044 847839963 750799274 824970496 996657450 998846625 868112948 924327916 473623381 807396328 413759524 929358056 880292004 892859913 914677465 967656809 421811409 959149080 925342554 935596841 287343958 914548123 262847903 719327606 481962003 550965434 22150927 448962979 898547974 981744711 662475596 891982141 662382763 735430016 955859930 984605599 8280667 902943731 350247415 571151056 862264651 945215770 798114709 990969791 889050643 993194202 197618009 311574349 279140360 717257543 423243101 994145387 833714418 882089370 100779853 714798139 925758073 972680774 682166473 840432424 224140036 268398405 873988891 930841999 349419092 800223589 826904276 922045176 833407127 894083734 157684534 289270634 159365888 475345448 588563719 798543195 648674987 926887316 69864598 384951404 35913807 391402378 272499929 523949936 566543733 973907222 391810829 917457275 779563988 861856414 12122982 75855912 632550996 763077650 304052981 868482944 181070300 546993059 37359422 695519771 385240560 793670918 849141413 911423724 910354469 917105498 500741816 806942585 365511307 598801255 430756033 498023140 939821050 945399173 647597793 869338485 413291683 691008869 218713142 407913505 65661726 245951639 378853549 966980490 943718113 949221050 438409669 777991186 716020502 852887254 39403418 344088304 810918078 829575026 681102403 754648968 511100549 705656665 44272425 397863415 203216901 220822840 948783363 990901301 665439233 888209812 929631404 983766232 316066592 681095150 869808005 899856304 398271102 979316282 217830300 888023091 20987654 159572169 705836262 750612283 393294976 904490401 515977033 747955160 696110804 890162102 78543880 784897403 804729108 971259300 464048450 486901954 598866211 858371340 36900086 404117301 100347173 918749485 9458908 361659811 708362237 812523133 947430693 976452911 222656592 435755893 658947258 686123806 373563447 513215072 823503000 952264907 11424013 552514339 340625183 946307714 11569625 750724566 174832172 414124566 886696966 901150800 997257141 997659347 783067260 812230979 15278452 480090004 407108152 614457183 109751252 180409164 21343330 890131497 764329318 926781807 697041803 802370441 110656639 449561678 148883757 377161014 738954726 830757431 441992935 874861511 443369152 793651600 257767436 305673016 79051654 905855109 906795236 924004423 489968406 569175090 781541232 943816051 988670647 989952136 430020266 641934329 602554904 903276107 837189428 992638642 505160818 921806446 991708778 991806568 958697292 963031228 282880056 864289559 937396219 991814190 289357029 534307038 600330662 950710923 55789610 58022940 881930517 964108552 493046486 586260166 473663151 764893150 266556394 429542943 425888260 774009796 219835427 540034597 187565042 659298410 413134851 457721023 89043420 322721116 388856075 535288129 265991009 532742011 640016473 967680672 638470307 708603362 693531908 946761724 648160631 779902228 279504270 903856025 216585710 773382053 666172807 949402061 167318936 860221044 676510496 981711398 526865322 598059095 939370907 976536001 30414878 79689098 907735464 926585017 473870150 531215294 237795600 789135013 675603385 995709398 575806896 965008990 599084944 803386874 836805359 965679440 157915640 217431778 842871010 921864897 553221968 895549926 971177009 987346260 665911334 678976298 875083441 999479015 228232172 622903368 223506711 828937584 506692826 925721374 946373373 967814689 167767061 428486283 206599565 864925571 258667739 485502077 311715145 983931620 298073916 896579744 881550870 942294558 4373841 130232493 45685208 498752579 320717206 818848659 486093080 577612873 824333149 895265940 59684639 897015617 801015269 937446249 936119776 986947121 812087332 978510350 740445419 842823995 277336837 577430439 318860340 408128524 283042713 573431983 343863729 926519722 187869216 871732667 500942835 990470233 121160752 939049037 871316654 976030289 919557156 979215551 39392518 129995603 75716547 296888009 878029441 887743183 493475143 521015896 975030169 981899532 474742522 748315607 616874875 731459356 785901361 814310331 413834148 634280702 974962273 995298076 563815552 932727068 689698901 867970415 396542629 556877276 196663572 749813810 353983971 704924854 842741442 857644672 438560120 961012638 104305034 609130727 783517379 944637183 401147406 849186390 823100594 831446136 632299219 726270816 52462026 295639495 818020428 920577870 488460837 622646560 767632802 917201381 733618440 907738906 979869235 990062927 767417835 911193139 97995455 350274774 671853156 904468272 726024860 940135742 487926784 838775847 617312352 920710915 719749313 819030367 860586263 991384386 4623856 686724485 636862323 688632330 721018960 794432934 956135721 979718838 263686529 288107481 917871772 989855452 474628657 638511187 952626038 991275718 53625264 349736953 244626487 588772313 589903583 642656562 829279996 894087192 121494688 360879550 182879137 484295701 650902733 953504997 518990174 877222948 368765269 724238841 493069220 526260669 139034374 388670603 507623273 863950451 261817657 319088335 927105539 973401969 390400620 492624660 871783100 999941089 460855649 624612091 64350618 115240745 422643795 943901012 608158570 773457363 795563638 814802425 801008054 956083110 532194725 845956696 695167337 945103519 494927081 600733225 443761148 631632525 390241726 951609956 541954285 807794952 669985120 996361262 11890236 357574773 888253892 991785965 101346548 319997036 482855880 943390133 797918806 831247673 931254938 955205676 438421272 445290130 486128452 781332949 693984548 700173348 347288410 705215342 950280115 981237450 300031733 659659315 382940371 753055226 661543949 723750409 808582180 940692680 140902105 205595045 958003094 993972040 482080372 510037736 48384972 168640784 611405008 856271410 201379728 376596990 68492804 791177022 573691082 695450630 47852222 89298841 48045844 213504862 991932585 999419311 7240443 88672241 103120002 620823948 304300187 328249483 387019060 715595429 495619074 957299695 871155270 872546798 648780288 777432911 861431762 879525761 94563594 873409467 253530016 930175043 22465186 327997055 819181158 863194732 325462283 931748700 984132996 990137103 909694280 913301589 393998680 670429520 744286189 894801510 37692254 184709833 8501200 610413131 205889353 702356468 156305143 166691194 305328907 589223190 316035151 491990413 410696424 711607152 562582372 820164359 707355458 875515799 563792534 638592969 521478840 870942987 345915528 493781439 349549579 808190691 341994234 736760315 511562285 592028738 127274270 917294517 766927076 923660621 245010963 744557743 347205445 448544079 788970532 917965708 571369837 723658392 282089864 575138035 656713756 950349002 684731189 807639979 845486033 957526903 955648857 964689912 669661601 870075356 678392204 829075974 102007720 657124809 935235693 959546148 692490872 941585962 39089163 608114323 919336580 972907383 897493093 928049673 472320741 696411945 690728619 710077464 948183857 999089568 190111457 831416050 360035785 455352713 982331214 987374250 684219955 922116298 583559859 993465503 898375278 953254254 413695789 753474393 262020500 452289059 260914060 909472395 581989572 954780199 526623179 848721663 846769681 991789755 503073252 761139901 739762627 857934868 877136407 995153794 523588200 621701629 874008217 922705443 995799837 997460675 837677704 904863482 184857883 822062696 171793223 605600046 511344400 791286912 28522577 348074628 181423910 858210574 598347462 724792770 220649528 257635320 921630626 995878378 928164842 996332590 589740733 917463235 823499203 886699979 617739517 830711623 398078551 734546711 871583621 928940711 393570341 506191129 152313407 621329690 489685981 629261740 206580161 631447209 565009946 873749309 43969253 291012034 483786881 695019264 568693881 706762934 103942029 828370503 814301503 985888368 109966579 723987058 139218463 884438789 349008148 564596889 916989686 982663975 348637779 779467872 25230472 942540565 719532027 821377183 876740627 977771647 878402338 996890532 79206447 935624753 823677461 976232809 764370198 829115314 423553972 435889369 223830082 464690412 102139330 995320951 419368695 682894260 185113141 948036918 266625103 466787903 720031146 887485991 71356053 961687122 108989136 588369008 75976923 787846674 821114054 881553806 938692131 984695794 86457181 617840814 40592417 714651713 641555866 991271944 653311933 785730760 433977046 997914055 78028305 414243267 198118989 625432308 557039663 709338316 708403397 739178632 833771767 914506756 409682442 845018515 150218127 230102089 638099974 999698594 898090263 904395503 742923960 988499141 405970828 757515371 195399980 464669204 331031108 918204452 248990493 741783813 487452534 951677189 737992705 901403643 481805112 744483073 819058227 855136974 514260661 666425032 261623671 677593975 938778 249061400 562125459 563409280 670703037 979198371 710503160 741836342 936905683 981522415 828858955 991600260 893664808 915174299 443839791 494807959 719138864 829889967 532728368 806059263 833113059 989767582 910698323 921886130 979894938 993324061 261799986 553297670 158658394 899901226 106108840 838819315 235653081 309807697 297099050 863609014 156424264 454794618 350435262 398084481 553961229 686227239 894149352 901065519 459448928 973367741 283857419 407920078 31839300 122633078 617566406 635448592 762361822 864340338 244432896 514417325 686219856 797733589 580975910 968986870 969751835 973457226 905788915 999456405 443804200 493673028 289317575 782283712 188660039 191143018 760128289 911209972 890598895 990193322 325226089 850239355 401880278 613038685 837281687 847187775 113786750 209887500 596781132 755440132 102703385 885704989 866681086 877686577 898500531 941090436 411318630 944799263 820245215 939061964 359109640 960115698 930953183 970320063 174132798 721229245 569637065 752268252 160134761 383951581 593214359 739510554 744348555 802314647 255711461 767698755 818711308 971632652 904461909 938023016 868178624 968326503 730369249 796088738 190179528 860804370 879717172 997277035 775272343 978246038 407205713 871998576 746654009 843386664 451925745 583701854 221291131 545591753 74361185 209431612 218402689 226351037 690567995 812600450 80059158 934767242 661208253 777747763 183490695 346450056 831321832 896538556 735669216 758612755 298163389 798216997 590594864 593268620 455498265 838158212 896194272 919008556 519460129 793382527 962913147 991268611 487463087 650525884 229192037 278859476 379945237 768870060 533516046 814468009 495549387 669131335 872653290 965243835 770880351 902545327 124741082 387170527 976152367 997830320 235116991 841571856 42510432 657284245 131227078 754107175 753365330 948694053 852424732 864228673 468707087 655060764 521158615 559972794 226489145 850172871 240152945 289374654 493277001 767280545 353197550 628597538 612434499 679598433 403785016 571685365 898416519 974607325 900977792 941260243 634013554 880964855 29044981 550456890 425416885 808610524 994853986 996736036 621855194 948631661 819188001 868968407 291788877 868600090 882803753 950283076 818339443 846281867 256109352 845912116 88059855 537896478 516323641 773711989 28546167 682839031 190503961 547116474 873685846 887129488 166222427 777265776 263965089 343527526 173727098 852131757 954260077 975381747 460679783 844925876 383295092 602923486 425077628 743186142 311075172 904130785 29820317 394062950 758484331 803538913 397745877 992996660 865494405 931438700 438151099 896436571 519355339 929698306 277051239 990526394 347571581 794566895 162450333 747359906 725436244 896650744 955505663 996299976 847894766 940470127 279513001 375835280 273400251 808104008 613263501 716800762 26596032 247853452 216797792 231965735 245582387 592865377 292257471 793880463 931945396 960029773 900731219 914784523 570342267 616692403 929257869 962252510 61969517 628215516 730364530 791886383 255942633 600676209 348302258 795443712 458220142 474617083 545691974 788978521 711213458 878587993 345248749 802391883 478508335 754256798 441439415 962836031 232479960 629201543 286588444 625793442 195444194 525032771 626233126 879675357 126129119 762836503 449968023 492236213 847445275 995447703 549883408 859625689 592396273 828606337 887219276 971743529 433158568 897842811 7934371 762577943 756456201 828783118 476294766 798427538 820338459 923701990 97827647 615456922 291857380 686506141 177225589 575819867 877361831 975609910 961876993 983409651 251275049 326893842 577662328 749151501 194660995 442880510 96876462 246253605 317770970 549820011 716289199 988958022 596936481 731529821 33698913 311664107 770215124 884066293 679309184 802678511 23556365 882934038 837061228 970622772 125411728 657069390 575917698 644304760 991639327 992139917 319040294 495639197 879736625 893989186 854563193 993897049 372879991 694254098 913438832 945245660 720922243 820885206 865020571 915257531 242632199 811828198 979011541 987301512 360775277 467489241 647177116 674734492 642635751 704951195 46762121 257665154 223307673 777199215 917889286 953825149 620587646 999786623 765349086 870620030 938693461 958028668 122117247 421299836 999508644 999636924 968013067 977220712 957144656 978845386 15423943 588452386 717269704 841098526 104698073 515982393 198521535 279638020 867841009 896545658 320094963 458414428 900115532 993113842 833716640 927781977 394811344 929076093 613292226 819519567 139439322 469744867 254987256 434198843 809362491 952829904 481134572 527216480 188540364 499524435 831118147 928102481 693599285 710713235 777343254 895493512 821779885 924855295 415224400 508112165 555263295 668855825 162086343 944521335 854585016 864339900 137161741 749943528 937917700 945107871 61529555 120017443 632140059 735669957 598493393 858684886 849002686 991633257 658747628 729045288 861678006 936395575 849885495 969970067 763314709 965217096 222843190 606285667 373198159 766456016 922062325 974524430 91668751 177638357 363885078 866803083 846591506 999738817 29093309 749863229 584236563 915429358 346350521 661680007 714905450 813916728 800090051 863653133 597392194 735120710 336978896 967230796 869322930 987783904 937846408 990060982 795691142 966358688 638120167 661292887 118141458 995885044 726145368 843636059 620819003 919080604 542388397 715311044 227927738 729914501 30484507 534590638 704596122 793695009 681434087 913115463 949975329 958331498 272065784 275257973 331331594 914717413 455187496 597135909 911691253 951658365 355176268 499268383 478292571 858427293 706084192 740035629 450464385 813942744 599685943 998036735 638760197 789552263 409277130 821091160 464675623 865848116 483433076 622780395 73736895 224353991 177505914 624238149 888167691 924388797 253628281 890594348 538620379 619815527 239854168 746533135 249742304 861596260 379638347 540862197 750778539 967572140 371313252 502109625 821790295 942101853 434908655 521580073 332018484 955222200 558068941 624636668 165747055 505007451 210094625 437186744 208469420 384564860 536642858 850296018 429117161 961912294 466232262 706998269 48879512 866790207 786482941 871823612 894249889 986371383 724662761 865666909 521209064 989613177 938976883 961863495 86973820 736539540 920191282 926255817 815488804 908527119 314026939 626182962 441958390 882761906 268387529 789898937 249055486 500897242 253804635 701006630 386930416 790454057 219243395 541739600 249384400 568134643 336645422 964954647 615500411 625727193 128259421 378007463 815501207 917136947 794488119 971512955 320287418 321108547 128795286 345924577 694207286 791693991 301588636 655643010 465387277 709471445 6083826 500589136 947238757 973198478 407624084 465862898 463452682 843846975 88248368 332079348 120489150 990750598 16346283 403683737 94829592 545830258 810825153 833533169 447198976 869467089 794372955 889361057 463534295 631623076 786224935 807618686 44660419 610455306 143524171 530924170 192246743 932739496 347190601 808828128 856705365 953832521 845248150 900794118 300224295 941272873 393902575 669823718 178019731 722716509 144811388 750264593 763462835 854950188 290910096 297857135 578654775 613463515 603539533 605025992 353309518 656930598 974729444 989249364 22336726 654613442 743755563 999128853 465674598 496093838 273752817 318463067 28468423 917056226 936437405 987729144 981865861 987460332 652516776 828832197 198006681 328545862 45644144 283202011 621932706 784751782 646427817 811198447 865842706 905057709 534164906 759587310 318004337 524425403 744514342 802321387 434577659 947931236 161763027 313973970 549205460 877402454 23211320 341730424 779856565 970419567 694615579 989785847 29984309 60458530 804960611 875716395 93733113 646865687 943978050 977345249 378874332 380219149 753238325 779330075 726352062 978880966 716903516 942689707 351384397 941419068 677699492 895036764 489034589 798145978 165428505 692948042 528175738 845667758 743271100 797053350 914320724 936631105 847990581 969861313 62603209 322252082 152828014 433816840 210099541 452206474 564828612 595202777 767845236 811655301 39726907 740182348 601450031 879450401 396086738 584520838 620144469 767193151 750689825 983511355 630495301 651900967 82869874 897171496 581396297 904929676 294307835 413603551 72162110 178535459 950680743 996367251 12697511 808666392 736969337 765902956 599850168 745336787 906663203 976804675 271133237 427334700 310274527 582330134 238080050 790854265 270021583 960183598 748777175 983997095 197188510 295636335 686332493 818879747 800309052 960949329 671920026 915542991 605504248 838901663 72831993 198727666 904896602 973232064 203663112 458391038 39597722 614642597 70054220 481805384 199162159 681090773 27951998 421833886 40420849 172087541 368252726 836641180 359157283 828468362 342407535 649518830 519395328 617564445 822461727 825291771 520118512 819953661 452299724 797173346 604275492 856467250 262942000 545814872 98797465 935388639 371055857 989579395 596642485 883045457 649319260 676622191 409467426 978945129 75404882 835476735 620204940 629193860 451371243 937784717 620641695 682228952 310651857 346916959 957580811 991677987 412201644 834717562 26062087 999558288 804559011 869123794 363088133 821619310 464358865 543120517 451192118 523299285 164419527 186176027 849062977 943655755 758072293 996696184 219285256 943886002 278661565 627752302 866194499 956557481 983890223 996360646 481897006 581237246 214425127 768366049 410166641 430835161 143485324 667115746 974649042 977965530 548351079 682113838 180620096 532679599 763799297 811443122 493560076 907535252 582215785 673531083 845422953 881015245 156963390 669261680 21225831 532181181 714078127 752500605 442837714 997494106 980859336 995701774 617992857 884501554 23997803 756304192 552340191 982571387 160453084 261257534 884990901 949664455 149736581 892800505 591060663 684545084 72742938 305798061 305988498 553663963 28880799 735633789 74656896 923961786 680992512 962872132 493550960 622579471 967331101 976624805 379192520 402894528 957647025 959359538 540564468 689370577 899313418 941045092 3464043 314324959 232553209 448247898 538326987 912830269 980872631 983898686 774527699 829386490 61201511 378224504 223372854 312005363 919633129 944708121 853179811 882751695 590652049 653497545 145437354 472983462 352712351 675105602 78666624 862830602 498799724 605302037 859403643 892967350 720663060 772924553 763717266 930367425 135663015 501963585 720745253 730481962 240780627 394262682 583105190 782636432 191400933 949645923 679015465 710727801 290146276 305542439 947235368 948383356 797633274 861831694 498056069 964802148 316258273 726761274 481408191 692900482 400205387 916556142 122940375 814198454 24684905 700067154 482739208 491026513 398641252 659416712 48594835 812062697 670865412 807799265 184748449 278252078 135672143 904399459 997895848 997994513 376926130 405072540 609628404 630931921 306155061 953556121 280712882 863478015 784515509 836651052 244948664 795935957 337071514 988377477 707409322 875429320 722345043 935484085 829539723 840241238 17776804 956982779 324293442 595810181 430175805 996497300 196098997 450693749 710058765 862972502 826954018 857265881 298147042 693211236 944908757 974750369 803328313 809960369 518000310 707402682 682082673 910807223 635389111 711294051 34136486 933391075 119524778 150478188 268618706 329772267 739474815 965992910 324740468 657168864 103472820 241459438 172685201 475221681 455935274 691394273 895209350 934191288 487373526 551734760 216077910 291998189 495269601 535345766 537105389 584907948 9151830 169225388 48844836 140361448 428531649 705696107 942706280 943176877 748794490 828282924 13520963 318868175 757347378 981079975 754521790 770863914 785787358 980659731 404269292 648732551 130054073 755554646 402681959 623716394 335889803 699926353 400148231 407346492 458217188 463419875 417485857 934412593 244432727 706220352 256561031 491740511 975981917 979467935 659171626 738945298 711359022 738684987 970789364 980088188 765862439 992589866 475345507 848816432 318668517 651301148 324348026 899016957 454810749 859440506 736319197 812229159 745354361 833721931 112214869 875587307 511183027 578628392 91025157 782391961 496200955 518854011 358162523 606994325 287857263 446491640 290084080 403853571 138689933 478083425 137899327 619261896 372912203 985448092 457092993 861683845 788937780 878308970 858790487 871836868 928131685 981458241 318663553 771774378 231836401 493184694 631509193 871864746 211069855 929611167 195139021 983536418 403172293 424682440 271658210 426353752 785616763 911561570 101314724 693125990 702688414 799451820 62536884 181819091 115644500 331462298 511484633 524005812 843130101 954782029 527161770 801980166 60485968 232341824 378614483 644929979 52946798 309495265 72493108 737279071 958566080 997042496 876429741 900991973 381941770 923982260 95910887 762149471 717069242 805175898 785577672 854778012 578610285 692782015 863169631 876757265 726378645 972069574 153633631 200269105 529176544 838846590 267682683 637714636 252534198 625385342 629497678 852868227 406029179 643731462 702264102 985046132 921296262 937595710 509644423 963146339 256461445 714241685 949543153 980001398 808352335 862777087 842527001 983131365 880370401 950339683 907417299 999607855 495088298 949815123 203684259 969275515 630079809 704133341 127682853 807064575 564303267 905899809 784916879 936205309 950158294 992948787 441988756 699014654 328289672 925559601 320277236 852927030 101455848 226899850 363468344 817929880 162746527 379834098 258689962 836790187 278802334 848233249 520603675 538690460 12911710 792740319 975368824 998697892 637280583 970278860 284727952 430767698 356745974 551025431 787845920 833028495 546000523 744510652 775667967 798852138 972061874 997195541 238783118 868866061 573134086 956379483 515628717 823097532 294843057 481404250 977724762 995926229 830976461 968680705 160792823 556115419 556965459 885708012 574427460 683685005 331315732 870283290 911075539 967799825 776866116 883454741 130018402 718727337 68157981 305880131 230085751 771550215 986168791 995011436 329691247 486094239 257839192 318566325 903454973 991437501 721486911 758647344 590083349 784061712 822110096 895436421 625744813 784170174 919342008 935232003 602570067 663465492 215366437 246076637 971544594 974943123 972788725 999916137 390103427 461512266 373109061 398333846 73279449 926952567 971151038 995245933 588816954 872532629 601564207 649362586 32601195 912183773 94543728 580561016 229142516 334305219 406877415 700427142 251385497 823386587 834100316 980502844 759044740 857352122 848883921 874847036 146216385 391964737 93828028 412908738 496193067 690300238 128062565 534166576 189469426 448803501 860607189 871914307 321143552 346506424 857220250 952836815 671482851 683408701 560385173 964727942 97512203 300606582 431607399 646814236 162740645 908290037 171475646 444304748 129257869 653704332 216337718 922419092 600850845 842749803 553088461 587256464 474253064 963161845 959478884 970676904 840907394 906348473 817760436 846041229 866946369 912104654 777420113 976086103 123994224 684727591 176336873 865867901 823020764 966047293 81842082 421286042 684925457 825736678 409182630 898091385 342444562 796804742 251110895 662001397 558166783 825170994 659926066 855116057 411358717 685289342 858065581 899573441 300824995 441526535 186899715 901086648 943517463 945620464 970000865 982204873 389680051 883776929 769910261 858736451 628003312 874133208 588912428 729903675 543634475 806822341 533483884 770268145 935053279 991809639 667425189 672125419 207235006 403644705 592421181 684773295 762051560 894616787 645530369 949098575 378169558 709389641 246302276 678887670 138176406 974494685 6582764 375228041 950343014 987149814 278374608 476782014 729873516 940222313 238223829 849157065 913378923 979251135 37628464 487937809 273940665 855602591 674085189 774650945 527669328 892172037 930662578 969493194 632233103 733899945 776759690 881725167 472341043 919184515 997495317 997759605 420738067 952632283 319786410 443208758 209718823 277476433 430877208 976508250 413575116 663215861 719352570 797701097 578330260 609065373 644124499 664212987 460633074 784917608 189416555 233578386 865821259 930233712 885369866 987339322 441125961 768181148 953545604 956897556 651171577 686757578 477635263 606556931 232515690 441377818 1655453 177387724 962885147 992355788 173407074 425652456 833422000 842529844 728697595 888221623 73390195 751156311 616250373 960009353 388744646 975747789 56340224 233650767 264532412 975831348 18332198 471368590 112406104 485620787 293888821 756099605 490298017 661823172 188069692 541212209 256554523 318056576 738857139 791455945 743107410 959426151 591942799 893053074 585616582 637444896 884297667 998413002 683144923 834063787 921973359 987006003 885977739 929436368 246240163 974123958 458710185 756853204 559740330 897550874 975525648 981845066 736477161 835175146 282624852 633623024 516077391 762401819 643997153 902864226 409317386 846702818 271115847 776835419 247417000 267468764 356168251 989259304 100542177 630495594 520812550 542670583 594356189 690363960 68684147 738475067 363565580 882522242 154261191 731611751 549271505 886564109 789216652 838033739 554146298 670639076 642153453 841424244 428154567 556063559 761231349 959701596 262838101 297033481 208055061 972302517 176793990 933982852 10228043 378081224 738506004 904494178 138215770 901465489 962408786 986333229 953530714 961270458 631381232 931486002 145104781 200701149 802877712 828037785 154588315 289065832 523371265 671247050 658077855 887278772 369429165 967795475 328472430 902801886 616513084 661355180 254645535 587439645 843115219 980084554 863333511 892054348 164064081 957671289 447157777 761363785 977101876 986419000 588079047 612776952 577289115 718922369 8867224 107973315 901711230 945319255 277740453 402461464 181825443 947750169 472719105 852638273 910152192 962773636 63192817 916467105 966293952 969120147 557951838 641207211 230892602 449637724 546399460 834295163 308020057 428029628 356532733 908588420 494908134 509179664 851464352 869346615 805740803 822955814 923936672 958812271 182084280 438644861 864426286 946189687 368612752 456608660 442968730 830070755 749272033 937122608 186904007 614965904 766736954 945242572 766908235 866539975 950062746 964090669 700541514 756750576 104864020 232343095 569651671 933799135 522935028 676983117 867732331 979514827 538368685 759980948 302254949 875459152 103758663 146132189 254695966 404542303 138574389 260093737 235087234 584097825 186948847 248660697 671887499 973616685 739577706 938728168 446158114 508420335 411069314 680170668 955353767 999092511 282122732 463700640 973780960 989295373 257841072 376036487 102235129 918347194 764835760 881937368 185314951 777647922 299762937 356836310 340521969 972809662 809719928 855449352 178562017 258882948 847950081 965000704 330881857 596933670 994509347 996334326 307274174 375599867 674378449 828218207 588854953 598189838 424670038 697844474 990361509 997439705 182991356 284150230 791015875 818570013 527880752 894705660 710583364 753682319 95574167 820727189 406451160 816032981 513994132 532645189 753324330 830063235 39302913 831041832 58852237 249729724 302145728 740938680 394629697 764690720 66137597 591335868 645084742 958033422 287089926 797952369 663530944 836203960 458580474 541677085 103093861 897952881 502016841 806124234 101739596 896001784 635072380 933667541 801236909 813900082 114150428 959798194 99755794 698252953 208132771 748860492 664061453 871293213 138873908 162068761 654766355 719060310 458131533 777338453 108785913 266348313 366020956 729241329 461053516 475539621 944787509 961553429 318479640 954273279 658415102 816254925 25661078 310775601 697893687 828953784 917565951 946814819 203761304 692757315 782307963 929376783 717285544 844650567 729230714 812391269 46053213 707712056 341714811 932869795 941083778 975363788 687710992 791883173 144150848 654565892 967989608 997113352 986817752 989534594 312852198 553912060 293527222 499847072 681524216 871199935 768638332 850496938 556731559 831815238 581652460 751670165 310853847 945280422 965248870 972332091 437755029 707552015 291632539 814521979 540717607 731731138 657119914 690705519 441167768 520846442 887305332 897222052 789250607 819800574 570592345 593114148 182641408 317416432 346525876 811414534 388828873 761033825 917999168 926234216 562474427 882251859 764917377 876813614 349574160 508233819 935934998 985933369 680803650 957914186 2750671 536262247 165844030 377414260 685312238 783237282 100877042 407372874 220928015 637323820 41134929 568979487 989132443 997888180 621203486 651728434 200779511 462818001 51608536 293221544 759925133 996735819 528834012 985760263 22942982 262579637 845274928 995720240 774148073 989944426 988113943 999140181 334719339 919358055 276163793 484926608 929473012 962032271 280503799 969121966 589445665 967263155 511837503 929602406 661091378 714222739 660154739 795089725 774271866 977632854 261494250 939943280 495883162 955871165 457547536 947892430 432470209 810208233 287332787 310611315 156415613 581980556 697583436 948140515 930733459 977212337 464884056 999855963 951833312 960730910 97303291 600093264 366511384 984783431 308540635 757374839 655829049 868505102 477801958 940947860 506474201 947473710 742338929 958602813 729480726 754220442 515427658 765393403 890862261 927177496 374713792 692849497 652771174 864900484 697356381 825896871 741666081 758015820 391066510 906517801 232364273 647904433 321615629 619646904 734695057 910027730 419634943 748007145 993913835 997155414 864198932 977078254 850716452 975930331 852544053 924042689 901447055 926900687 183835573 581818513 945508134 974363956 973135955 983352730 1887101 2384218 759162614 981695877 309530324 484274189 184522769 953544056 45540640 503499537 894001784 971205099 756812832 792866237 77278378 517872982 782214554 989744487 886270147 997743052 736313886 836979843 761649805 867358303 641869183 744964866 793467641 959030768 486293510 879491588 39207555 888775644 109283657 118551791 855470034 857702119 513987043 802008947 686210887 833120833 71341263 76365193 334970549 804916252 566705811 576698362 60675396 249286493 855348564 932069743 191611685 583467160 29388696 122800104 111458476 890369757 321808023 637104130 962399718 977276621 466470430 822625459 718191350 890698374 632903280 745359588 692553062 743938686 762377583 778665069 764609059 804725637 146873698 889732188 684689215 786546610 641457168 694159833 550088363 620410333 837939203 939596857 243973565 716754671 48258153 926368629 537080104 844867236 135429211 690243855 289363044 408212912 350843547 451788247 620412411 984560195 508672572 601865526 752749419 760737937 587034391 994222060 46786756 322810172 425515045 645096926 540786022 733051765 565984360 890368843 882276038 966812995 229752032 981634333 479717156 999082478 84473506 107641636 198705402 943358046 373293417 593457028 345850998 716629153 682178012 989492563 555605184 813476436 328988987 907987216 129086306 941167704 402752826 868549891 807727364 979995325 395143340 731079651 52514155 485310330 503741686 641221734 75024832 956535543 973420158 980939521 195417214 659907202 748782383 900663623 639928066 698028129 408648186 769622937 209313279 915533970 220810773 435345765 185922462 728260020 654376974 729816716 178911720 636928349 379134979 538053680 26661317 630653267 917592057 944292280 778303058 929380929 116492592 364437723 457867150 601902200 324513427 647549378 789304117 815210256 32076108 178548943 383295200 431925799 290391275 529574209 499932860 568489186 382881097 595086697 220277103 433367572 862922449 947690950 314824723 352095901 822384972 863281786 72813361 976790991 65019909 980554329 238752462 323242092 659096398 963750361 401745685 429746174 947752978 953176265 58368610 141306740 990350416 996643487 166642664 606833615 792960962 885545957 485961768 946447864 49123566 671233356 441588539 623720180 871428859 956156635 637729660 927120033 80071645 300862473 163771146 949066087 854852444 914836609 168662743 999867691 952957299 953619037 144051813 298745913 692412967 815985619 229370156 266747304 392067813 884824894 150609781 863003414 755262614 956050632 566342440 765832541 955587423 992919386 655656497 958113239 722041283 868149189 184130762 754639653 908335022 973912521 199035998 728830680 793838558 923405868 414412545 973881392 111699410 817195783 247509074 907780096 61645934 523087198 775543567 789434013 436807711 724735787 165790753 842139203 128151442 252852779 154046098 998871759 373338482 457568693 895118209 991108522 490848836 830077592 586257503 586573759 964958445 976309454 82442458 846647073 982493679 996556220 451730918 888367054 709017546 834559113 94722722 965511387 464421526 604500663 26484153 974960125 613400234 839531456 713039198 817404153 779542814 877053258 378273288 479776550 963780350 972670314 78734498 739003705 946145454 963094244 186781742 630207339 830241762 875579218 232803235 572994741 821731972 852396784 517661555 576726772 933052356 993923782 580250137 674031913 695425668 918933403 916699789 949021427 591775672 648897487 703165279 786991557 310794061 758603125 674608848 919130311 215541259 776089935 670520484 708432037 743335572 788688260 711427091 951110957 931770706 975218915 719799230 792812880 510961110 804510130 408912518 452437144 413261852 453486249 386702522 821022163 595735007 679869698 89869717 859760068 712900554 953234845 602819093 917547730 659652561 841935258 822398964 958531317 913372823 956326174 464728438 947406077 223043411 982274380 308489918 380832126 637794034 683301385 906899898 919777156 852103354 955301677 135268061 958504890 718880017 933586560 962323148 979270949 816909362 872105989 470745333 672797335 16524989 640941993 24523362 423074265 545894797 704486419 985890588 991369539 981237179 999145705 499981875 747594270 781096646 843495276 724964187 979747377 928783442 996905108 370011494 529850896 894546003 927372907 735814752 809580855 532716211 620561729 812735752 934645779 681576284 874324140 440695207 922849636 42598443 326320298 879147325 964404756 86641070 612347806 445213774 544857836 353543974 773016694 224143710 646788417 434028757 929366127 159951861 924104448 387858574 998130296 853625928 994082270 509507279 779986124 14246012 785618792 612831463 981011660 424457180 547810658 148325412 303292959 372165196 412487611 686711247 688377528 448761478 720002692 50515729 887818668 785124930 879292875 365636060 892071978 313989868 930875271 314732253 968170405 458703994 685483183 247950712 762761155 343675450 523983747 122226970 577110033 48977656 178766584 278466886 870048581 844922702 990174740 934496228 956272414 957700528 990358445 242524310 843146573 251233145 956328426 233023594 458407522 860179351 863715974 640042421 873603795 753412515 936031322 449432351 568231656 236184448 661149992 247249852 452696125 15700375 148320359 473287594 926431179 701471094 903694547 877906636 947221680 488912643 756282064 922471551 940893258 52878764 215212678 861411421 892405460 805136750 832032985 587175790 646293308 505775926 955684754 81929137 949957686 586101209 787558952 407991355 978158943 297295104 499848660 520009271 826274868 974130770 986149808 249103961 903806562 781143587 946704266 544024444 810084077 622819218 986669225 353196697 878994476 295965969 797032314 236082401 551332556 969020453 977840584 185007225 841563377 469743615 902834099 900383567 941958346 500593398 729332480 82763578 829673219 664759936 679835661 680563479 870067339 48651523 864427176 835179598 885773845 329544306 840341738 873306284 917072694 725337244 985053930 525093117 685510318 66258946 907586156 907409017 920542307 280053902 729084615 483446707 896902551 799260436 806256220 485914437 643035881 773362772 934180352 219686432 976704973 89992542 183547956 362478584 502008945 971493294 983437018 961459092 969046016 729801041 827032294 283707869 995053803 319179142 716325420 545846725 833704262 86736229 645188276 786039963 970881393 666236068 887353946 751056612 799087521 745323275 802935506 430969255 683295454 675949730 998052749 583470723 793005631 630070065 953902187 478873208 541183289 478238450 897071426 247331016 288235333 315783328 884229161 145353080 946502430 958134760 978592613 482743978 910989900 486886172 689172953 645983983 979811426 825927930 887524336 558785812 991135841 656787951 921820864 465391177 668997703 736453954 768023745 778006544 939621393 289911210 420106975 529268196 602071902 328480565 728862148 242213643 407683593 782190954 954779756 77900007 570301969 888147715 889655889 130570848 415182803 39339734 997371651 664464715 724185136 459409404 910068774 792073579 901175172 760349647 900171337 411218318 850925590 922746805 972636764 540004923 980725672 493539982 572800205 488534383 902216017 662805987 685351191 114794646 226346782 848417956 963247966 723856014 917683052 793913868 952663010 658816787 951296046 756390225 938186011 64491424 949737038 949614235 963568571 355412916 483506704 382531166 836979305 229587369 310126901 657803695 668986706 758444676 866003735 481941345 977469003 993827184 997991385 959803504 980526789 461343478 488688435 217116358 789873337 80230817 817576601 523945006 840371555 297949958 962326749 74612702 823960032 522374170 599188910 114169059 435112005 744315208 939442333 120486803 394048721 39945318 269251444 945685634 992581716 924140590 962407978 120955264 902969291 657708624 966908556 999305882 999912899 278327552 848231010 55157807 443710949 639317260 667508535 816225411 935764234 732214610 820285728 446309300 557353824 94873398 790900898 240111293 975361137 670630341 727829420 893896336 997216311 682805849 683253016 648276973 981845563 96983090 567666596 723983850 953907064 505124251 886152382 16628849 930605569 897955831 964276358 271517527 818899535 449344919 697841303 605612519 838112172 163374166 964548287 277572064 655169170 703238739 969032977 238016666 795752904 329493037 623587352 551595310 606046769 495183403 578570244 488145081 807805016 304933235 675208466 289008223 806473341 504816758 611974756 789451338 950713743 92836782 471941392 902810655 993403485 311398861 425234555 853772188 922605386 312501924 387783277 855572528 861829831 556850293 604011405 468209910 867577950 527322700 736767105 294877372 617692932 949502645 957598245 338757454 513369717 950154286 979229865 563312056 631734851 845551774 955730404 658189257 826375022 605376553 966443381 616375871 645956462 307526153 639575522 313763056 775471754 920673815 967113293 527749102 968313011 135079669 574266717 587396567 816633818 51993567 804154073 309751421 557920197 598148417 726938941 715644310 775947105 474379227 476723863 786218882 806212116 453090883 782139790 780672000 992717892 795947694 796136532 321528729 690996913 144503185 265364664 866032293 889917781 337485934 754885975 450062526 638409611 81908219 524935712 624675859 836035905 382154495 500246926 790422219 914042282 474303933 730342680 910082524 942346096 550442704 882288920 796986839 813610980 464347890 510798493 19774793 992584893 84318947 820609793 173782175 384151308 84031102 829403588 709887244 774082860 61676508 132475341 481710065 718044685 631877899 954353467 229417338 731207602 436385051 981999314 779988098 871766980 190628073 448216016 745165689 759300062 163015070 192363111 315567049 464273687 85789388 752931387 689217572 804830349 688211729 801696546 683448453 824472982 436111875 440548168 636276084 672315320 670565307 731024802 918022606 968023995 213921181 524278354 536786343 816502497 669225735 997404375 283699228 823572588 42338696 515761454 562890508 647222767 190767481 911993209 53810816 813889839 967226973 968062239 67121964 636472393 806336503 813202466 308733457 546111663 529017801 768082437 646597785 845533553 238780949 952116232 828539341 840435706 788530294 856798188 450250410 665463413 218118782 596495617 315395120 835934521 999287811 999585806 121775156 896208673 969586194 972814357 636792751 756867168 383607407 968268948 878631841 935701988 36150280 826471160 629422275 969091945 529290465 863195878 71087468 224338497 890058215 940872753 918208017 938420318 439925972 450800217 967573705 971678450 673178978 696710586 411870696 638901627 206002420 595871127 946831376 962005542 367750282 624290507 856009310 971477324 298988978 892325523 940755234 988989625 666219714 897843141 141173435 891000002 715782616 891325394 292683194 699113800 447498116 902085019 383661929 473469392 801732598 994328558 773966389 840491026 206963451 404614738 529810606 540245261 664121503 993838939 868826020 978086836 773004055 791435833 4590706 535029416 732972629 947725549 627601663 655425213 851619675 927941302 49932573 245916327 420085929 852759281 844095150 907011670 148476251 416184655 11121321 412672641 51901244 405403924 290232050 500946497 906094995 996687551 992297812 996921848 321591703 483681891 66634634 657360875 445956319 806788695 803185930 983091390 505088378 853967337 922451717 995021527 289521736 625545073 527999608 654454667 139131899 413049192 288559589 555263533 670348047 778205669 119602402 166268969 174970450 888898032 689947370 871397144 917739948 964133026 226071267 888689635 747133897 859838771 757145072 931631064 841579650 846960587 707395288 838757467 925082632 973904078 223847503 240439423 971467061 990580235 488672227 532461528 351630850 436982754 322443466 341139595 58607326 213524753 358619076 794494528 716883905 753529170 844179195 906093462 427734918 987072875 119156059 785384405 246115301 410786028 960833282 978174489 468161805 883575177 102388601 365617275 777433771 990495951 450537294 558158595 422398326 623875041 276647439 377013977 208864895 953318783 415808317 521850221 622974049 697934016 442614863 481532717 333310225 982525854 816154384 904008023 748547000 970356847 331693973 757713828 392129508 873697085 806894603 923356554 450459631 961889053 471914380 520016108 196819145 630235896 700054000 836167367 376660883 923083993 26641942 469980379 363455920 526498567 137996837 444067339 985251451 989964119 48225027 747889746 116725738 420172257 260031321 814337838 629764569 695130051 10825646 867807523 150170006 544515648 546415243 653068246 130620025 872175809 151827912 935970854 413558947 608148416 583203392 731018434 246319436 583711391 629607430 780895940 642286107 706151539 171859844 816690305 908893775 971347831 612462276 884729599 682644141 798253071 586320519 788649139 325922157 405559903 426291373 538726422 228595883 946109918 98715080 565235393 510006494 678865533 958976121 981934570 514469906 979230969 175767563 571459905 483251103 768975775 540245657 770147503 867104083 899800932 189607650 231495846 685313993 864055754 866685633 905593106 849494259 886591019 799227356 957450727 807922841 959304610 598401857 763980217 317444163 553366019 80741738 276534721 358129744 462346475 335317334 759717725 714660478 970902274 156632108 213411468 64156293 659729519 851177244 859848024 819005506 866969868 628459077 807422596 824394404 849453404 148500545 763795669 701042863 766392796 764081960 957738753 599295100 889468212 738306680 783519652 942165906 980461202 386110534 436719848 585336757 786666095 436045200 857935045 611475688 961912271 387021577 493594417 211195084 701771191 297977117 986214173 333569563 900426326 34971010 317601924 475193711 660608980 935613506 963201738 457435970 762989621 728986144 941857203 2412297 292581792 287912535 500575812 175805456 228167979 164692737 370586419 950168535 952876853 428522250 498315939 851434888 934744494 585115138 728109538 520463125 582549220 900707069 991521748 516183019 974162669 869913210 962228235 270426605 297387786 177478437 287396432 129553710 659442160 876182020 980852051 612816726 693246367 631222653 734627101 296874352 638314727 96780296 705787450 700046440 781578099 729058655 862069602 114352088 626087387 914203961 996691457 232883098 802787173 482448708 488022409 587431021 997745129 171857961 367094396 914398805 943744436 176445042 840034546 112307906 320292590 557311532 649918592 516739013 628031017 548537675 641072048 240597438 459609555 827300743 884506921 317351584 375925241 780481787 793425622 646379345 845387673 410302922 510264397 207559032 481543773 239731985 584419486 71629056 392015608 952197477 963047921 206499969 744919831 826568378 885180669 116845894 566853780 937765470 949569767 977400233 992660550 634768448 981073569 373594613 717211494 315839114 826555859 498954670 979308596 967418990 978530466 157539209 879036123 532575320 534679995 346344886 542783445 833635888 999050628 706515746 825212775 728361040 907707898 843621151 875611654 958578377 987994834 154336151 262134929 526706218 898865744 68827558 527132592 383050920 527427361 298147031 486534573 846888715 984085686 474259951 660835820 797823072 957182943 236987956 718926181 32415787 385284149 831549129 876050757 262516753 633018151 195892006 765499410 141452276 294984950 53065324 687539731 220460653 482487218 932074306 990424530 831422512 877249465 890863449 952602898 643248678 720786475 151310151 885351802 671300302 691458433 121573513 533558765 648129008 893462370 125332097 329617416 941867944 987181659 649268178 817312974 38539539 84875521 101461479 214907225 13353099 82891426 21847513 57208024 354134589 721384807 978064149 982387919 372315028 980193365 304533007 315496198 992483845 993658924 296486012 822297275 849957096 936030292 845616958 871947055 56646045 396600410 582007926 706526899 424209006 582880995 456085470 784194101 111908703 246850363 326542066 341955813 349620912 396496263 14537368 722104252 790631293 870505038 57859628 814032842 20204623 400951513 716687644 824900612 535896749 887195932 60629464 525753134 855530681 974384748 792576017 917395915 421211238 589598148 262430990 776741919 999065177 999107314 27893691 679019914 593024600 617074662 639743949 839486170 294813522 456603373 220543840 848773151 280428059 510474892 328129793 413678171 744894622 811507055 948060607 995629268 302292824 928290510 475680652 838753886 844229158 968993348 493368859 765900056 653007511 739160304 624891565 706402628 517539146 811468765 917972392 928326510 242745131 652147679 288448909 367370764 58348641 823207679 830700592 859586949 590757009 896140613 312526755 927111597 918380641 931205151 916993385 951914175 625512029 844412965 104735321 112847567 233963019 554626902 970890788 997201043 616910281 771417473 474592420 687439724 280436070 865913146 259284630 293412473 439650353 499746554 19916033 210717542 247666365 999109291 439101140 675197736 903750221 912930860 70357410 82244682 574788648 788189642 837214892 840063094 284293120 704416917 555023613 826418544 633795930 702306882 480044984 583908356 276934595 449603813 124634941 282059621 881297268 938480374 245342188 618665059 534918009 782562815 160245003 909110430 205308927 916187194 164365351 242440452 522273391 799923201 798347409 925292853 592238822 662146345 848232256 977732989 599221062 835185417 557158296 634593189 780348493 802907009 254431808 544848450 4520394 206173484 851090859 982692674 757382646 774851862 48883902 908616029 19419832 229235528 701254343 868816177 205400570 394844223 474574128 649378611 586743159 799106910 323416591 546366972 737023346 858776657 367446894 822565379 568121772 648270115 234321726 269110559 88352107 615953215 694299588 929833109 604204752 706865251 856713381 985983749 54602286 482604622 490653504 603705862 911405634 924215390 151344917 337150527 255722286 884893952 583474306 944251578 320030392 864769696 651566271 797286956 224090410 825697441 649974961 873279944 160663303 800451629 641095461 904493799 959062773 981043599 499198262 740008442 332805875 711112793 964354653 964898568 336039253 916174984 9156145 106058670 756174374 793458970 780726244 812423464 954469485 967009537 178382696 669218462 22275813 201774048 508127683 909034710 101044600 378388284 10291478 537791302 585104936 884188283 550085682 820375820 861545971 907403616 396758706 745532575 745538487 860968652 960849382 973240819 831023017 938502392 848127931 959529928 307104661 908423107 772935614 812011607 482057017 842967294 263978037 984014488 931182309 949271221 725070752 752537402 530294751 606145085 416123679 841276985 857051425 919567931 611263476 984510430 379966184 801425357 610438491 807702777 307219683 615344337 932408368 986346359 603370646 614050152 432926249 848354643 102725302 565180088 324479848 341736494 869082069 918727672 828547627 881430693 473879143 816425430 332890058 468674965 389205800 775897563 261446120 701023103 691645101 711621160 959161821 976853608 562511060 775849381 102941997 622433667 575137811 933489922 668608842 830046173 183036518 184545276 978932018 980692449 935916703 939062790 868080901 932424459 618853200 641775619 63237169 851538061 454672938 971135723 984817396 995321563 473368093 585934736 489722216 943735896 717015645 823157652 749757201 879328809 802086040 912399943 897480536 999221423 632146735 639938376 829390356 999245769 274823889 775494324 425565003 624826559 137714780 944387425 729612679 763444267 942472090 944095798 466985038 598121350 557530447 584402119 111046388 978744662 763640346 916977313 561347581 695088918 849702786 916246510 295409034 755894393 116852947 651226206 326564218 553798242 164619458 745333432 587481487 654351130 968206520 972722286 568007526 635929552 378583125 775469916 238817626 497287877 168200205 291001295 228666885 973386637 698419429 784351399 841432123 985237770 226321059 273483386 281082552 551644602 202492143 995462579 352530587 893766438 126514510 841946256 256306328 529464351 801637599 934484592 273237516 361588652 150737728 237733664 678297021 819551785 770767691 949690387 668011403 789665723 922932029 968426932 584568191 743278973 724985307 955866195 9800441 157333830 630489128 859302292 899766269 960619748 821725335 847409654 662637790 665353318 626427941 741128151 993158677 997970214 199804661 202061434 470906672 581253371 361178960 796032875 103209471 901605768 887238589 945693908 355448505 637654327 208403545 295120637 53028506 438747150 356042314 732354644 14250754 398922694 864012735 994397420 564159063 909781851 515737114 832403069 362373406 946627010 529181751 874894647 465816294 693258975 897384526 938849384 147319129 482646126 17756205 445365304 415897667 952610877 688890527 899152751 265452292 350637569 416589539 477944815 892084626 943203706 781466600 937027138 985019562 997566554 850485520 882147361 247374305 426036990 773791474 781622872 849825064 961955101 611010269 914187549 554406530 883081409 317842565 345832417 161499212 614423478 508095580 864331056 966692286 987144511 11722894 180781064 298997444 769738617 155231670 519960158 881619835 913229790 896193091 903136361 203274386 694383681 985230193 996658906 518322424 794021131 967710807 970346726 221978516 838383214 6981429 969343331 890808065 930278064 366766069 991812228 495909112 936204025 901636714 954616379 766512745 962164168 486772694 849190016 461070430 846986636 281265231 674440098 147639716 646600837 846569842 856753377 619188585 636848965 330193222 883539112 906863199 973251571 736212546 761956287 256296876 905849728 538842926 752051022 741425272 999943234 393907492 629749812 133830527 627071958 46128278 438066398 545742247 894530857 674785349 809417223 119270247 262568171 252348753 566650932 180666257 473396600 409695405 794447937 420268418 702447966 369757896 799436345 472187958 533935649 644685284 771210802 662592892 832534392 420621092 567358284 502238589 947395323 837898137 894829981 200798634 801125091 688156371 834286901 988401479 999172280 917070787 995221750 728200325 929670553 302942476 463210219 454728319 757983643 387466138 933837718 169867328 695597533 5188999 654551816 320250604 689355089 822601916 954640025 724495496 900381073 773719659 912710296 741811540 967727458 412513027 807972114 428669503 656126577 347447031 779908388 666261325 700562974 931359142 977489155 359402455 414569412 475813258 891509376 236828459 731060046 507959944 817210091 32766375 511345918 413468355 691572822 913526776 972239532 983392319 997519180 249406797 406333644 340781315 437799072 19857586 639720198 714924081 725509454 318386095 585312307 934769010 959998490 39647152 211042547 190984798 506798594 264976488 814161036 733718152 745411428 630330933 645127999 1749061 96232578 728997633 802290502 714029903 808875180 438759483 621059671 748447191 943113943 878614691 926124763 919667091 939626692 183624059 591530445 406107365 557607597 301132339 342498565 107521072 678145908 705506719 778720617 909272036 946028670 217651313 798563898 896276802 980704380 442176811 710901477 554195161 829865712 735277218 815321863 666490796 828007105 588440825 658063576 939721305 942761088 785213013 849363176 885063607 985160977 246725111 775280886 186914444 898193364 550399153 931950785 293277744 959516062 304662964 692131091 930354582 967236158 981318378 998869695 570568917 808029139 205730216 770864606 381823278 874847979 670209462 850241490 991524482 998227650 799701419 947625153 348446570 485304026 918264618 996593923 728942926 897109257 741124232 853152978 964670247 974120314 625878041 867923475 594097272 848216207 221796266 932806815 358263928 971327735 827657247 893924895 999069673 999822684 507956381 523637579 81093894 237541880 400351979 786430712 430065301 802082174 840209598 907105386 811446255 853251328 847341337 985960301 593536802 765842137 851998399 915761266 797127894 865476869 234877196 986942503 292949704 417359244 466153830 790867739 730295639 812326380 761060621 978547276 352190530 962604861 81233979 394139596 500530554 627640182 65331977 405051570 37673801 589025562 868742335 909265467 918708876 961666522 106508650 162920020 938144831 968955216 587066090 801610210 198691157 305093038 2042126 69592571 78659374 528212869 626162177 820140932 100876391 124955091 964789984 974468305 806531064 943740389 290287759 497533869 574814609 622873954 635710235 830333909 442472053 982522968 880437429 901081315 317640855 707802925 105096836 325961526 460125584 669686295 681747522 976258102 205607709 785809860 889050673 983554292 160973157 396944537 46809605 819588882 598514153 885648692 369127893 889023662 923970623 966798654 216823729 326029525 444141875 577288579 417001007 767762979 579084388 793648738 708653037 805061974 109983803 155121017 177102335 834546364 271596978 877320798 178965517 691630963 789458508 867471724 71504851 779526502 103123916 321804082 751058713 880669915 611348635 868398941 780122072 979129549 895213064 900613951 355355641 886422546 443105798 688331062 18016450 129712077 162297647 719635076 149694972 560832341 259528945 703613398 167314484 889773376 291998507 926541964 706879791 952001377 440647395 787204288 160201672 982574183 309050134 456739092 222972698 934640214 525111049 945409152 288235972 931006566 373611476 591411404 998207652 998900397 719055864 719610501 884587645 992769295 449045807 707929658 338055345 787833679 228462180 337459514 193480243 563215632 210116901 446942667 853374193 907770299 382748437 721445194 148946719 868311267 473044403 827337768 400733059 950930055 205629250 444062069 67017048 742163806 62295069 283338327 804531991 929706494 483573627 780463712 631127912 670415789 632178425 650380123 366600458 515878503 385368356 960144620 587979193 840072358 292110265 416926345 575613711 838423278 218931200 349071137 219935771 664902684 875581853 973969575 615903360 708128120 292248914 708077972 431976345 654783557 527231212 930784796 281464816 345550004 871210245 884644909 181649096 955136967 589897110 845383178 702071272 871716849 586583662 641615660 688897248 880807214 593036359 855351733 446238956 743479652 315261330 856596799 82415583 994981253 664316377 665857774 483041892 802581681 957197991 957553625 845883834 984524094 646840296 872033343 686109811 985540207 905973638 935939495 928672072 943522765 482049400 566193335 564710005 973358952 235593346 331566098 706609136 718297981 673688700 963852865 696753825 988695597 385413865 983941759 746781841 793394374 970799263 995642486 786818650 831587320 630450869 932093793 666468945 953345545 846844169 954972847 226556308 654138457 194443304 207245462 160976370 426918553 223591511 529152839 962918739 967729227 435036962 613517405 769987560 897776645 687999695 739547523 607870009 839804525 760898022 811471316 261329539 542201497 651956643 704454158 667562658 963327888 849110987 892835128 826154906 954916667 330390642 900678905 621044621 810233025 303391813 583651670 383769395 662716586 33226761 62857901 272481167 437006830 101040672 793206668 808905624 818335057 261454406 627389925 182117171 419011661 946668404 948132088 983750462 988024707 50187267 302194597 182617018 848430887 788890752 853925186 725937096 774780967 679607974 966143383 304659636 997530184 783349602 927039439 42168913 427818927 906599362 985688198 94119343 434493010 40992513 974814416 994944772 998767764 566433143 634113677 383157949 758188078 921503933 985966849 898731534 993154932 281310683 403922432 804876758 884834635 903172254 975117745 884399345 890009469 920461633 939366995 973086730 984525440 853273248 874810018 983483799 987108480 127852004 666131173 238879627 698544735 89499309 372430233 694923063 860161947 523366746 597273595 261651255 556859984 409586998 960913627 162742754 698045498 812858369 984361816 27976860 167714727 738577779 856666275 751766016 778643802 196869417 913769930 817500365 978694581 643388517 987817521 290737298 747109953 49867995 926150149 966940805 986523436 560296184 873506414 765467269 865243232 465827279 974351173 624205018 754538325 861056797 952175170 574661621 896402237 51821526 110431064 979107193 982936260 291729542 467449159 64190143 117508707 53796257 166096354 750227036 999270370 403624256 817075337 406379625 746541805 505882926 628037334 809583464 950941258 581297996 956288196 704252495 884227422 154112967 668975918 648096808 696658261 907348963 976367955 428135210 499177318 170465179 241275332 154368912 427374195 509055443 647111051 946981806 947361604 711810899 846729300 469180116 585250281 740780184 985179202 437748899 657422353 221346455 615446472 781710076 840033208 320254388 751229983 255131942 872374464 200590710 762113656 792487214 977616696 546929750 563174444 132776168 877230670 920804498 997686947 441325185 690803556 862525506 864450170 350491418 463631041 543569007 934517358 334972172 894304043 267444671 414820531 134653131 709287859 267937377 679268712 796368403 916015021 764795144 986703915 296375724 426325670 850105188 933505315 759811296 842753432 112960010 655892909 670747067 801730679 832531070 834773477 347237956 723394579 239876229 973137949 580137982 805729389 837925801 979988761 512368470 657788705 867458222 971231537 769278476 786065798 551973365 939575283 758420132 995501659 2259035 941332887 381566819 425431593 116759466 402287074 398425870 707121614 586288322 707466783 643753011 912191362 359313613 836290797 641876958 971102255 947392717 952932679 652416391 754007549 108602825 508994246 95135640 607866059 915717695 959701422 430050019 664858651 167923184 894251287 180109619 400241055 155031054 788762260 901857051 903228130 226045239 286291403 27756219 872252785 324353441 685403378 331702722 538828455 722545007 931223797 954633724 959744907 172183046 182276440 755346067 978967605 285318819 750222582 277454534 490633917 568737217 750888728 299853623 789101860 927860243 995567448 562000256 636585984 929433554 951384037 43179618 710772231 122475048 676727741 778888441 897990990 962471711 969372451 374407066 786619265 895593475 911275487 989928260 990648556 314261816 456143033 529661198 725400643 840424851 919618279 223000085 405055440 128461414 698144587 128840675 377883483 297745463 680417451 638086495 951606942 847467952 922990611 646410904 752438226 259736447 795698387 909126377 914407310 974442523 984462507 716206142 998556351 709095852 963484754 195993293 767337727 485626682 542892094 367552356 683141372 638606039 993071750 618626885 809267831 934147490 967584861 502518915 887685099 712901606 733279989 196416926 822829911 800612074 935936338 142058959 662148545 823391070 924262835 961979939 993181309 285122403 396050969 91141651 916056001 495845877 505848215 326627469 746695829 495624082 678190212 336258948 763423489 792403798 973400607 412920352 663475015 779694509 786171985 920135121 934580498 506598713 560864739 463530351 723620522 381082003 734180869 137971515 980043768 111655957 879926447 269764561 618502628 531765633 816362713 457631664 936143837 33312476 810128547 755043265 781893673 329865633 749047425 147619787 386798007 538099444 931692308 638091477 904939529 235905876 715829421 974183644 996272537 858911557 918430771 120001118 168537913 136458332 536159847 138438339 211614973 455615083 915757689 431549804 456434263 802136375 810133262 943868128 947564088 93069355 918971723 994525708 999975043 179950890 653516007 530966783 786484158 545433193 587249084 154727261 550687802 891359212 973577661 700912095 734597998 213046893 379735401 813044920 842457951 30374969 306562446 407334993 714991022 344645126 460831406 556138270 900039497 198102400 869666422 313800896 354280684 202936892 893369056 802228194 996208681 800072094 949316869 745884902 818330089 634091943 820643261 626261793 903133715 373671312 415954077 656909165 986801846 335719253 399775459 999341077 999427606 569080769 792731325 926264979 954364757 526354003 559066049 81044070 90885874 336155600 359117132 161496882 177197252 124497679 373345466 512802892 968271439 845164817 879509855 665028282 679986217 456166291 477076435 924368798 997764333 886811539 991847482 479196123 793778498 580144903 889664388 430939788 936691482 622117120 956607313 662618779 882137635 567771258 739019517 585282357 908516899 287540963 532226378 40296962 725082447 151300862 153808387 885594422 998927993 213591955 877351363 997874658 998638759 799934126 856227405 9149212 410418432 600724471 901320435 978156407 987676702 888801740 953041175 674167877 915256129 853696566 945338617 50662397 760123020 901412149 963957791 830890983 887324187 911654546 930540768 847883022 959818474 216390271 621744059 389914539 730567191 810449931 856513803 299746124 670512428 989840501 992414348 502052519 666315386 856242776 945177014 876603428 995103850 352551765 596504798 679902746 977322800 970982530 976564152 188386425 409005375 793239404 836179802 480909268 912564245 694257711 834751620 47022360 740526368 975891134 984303536 910121186 952381083 597449632 614326857 872375135 932110239 21180424 405398420 745815044 780169524 463389184 504078859 853619162 915277277 851968377 999801887 941829133 956404494 666171985 808047918 4184913 116488345 924969391 977903660 188694186 779387917 585511009 687808082 834342597 872413951 91384181 632376327 200408398 257909458 23709967 171368403 859470719 902800153 280939926 647898693 965595544 985995883 274259942 393613866 839220315 935206341 399358564 778077805 809307721 929424349 770315647 796834916 415057803 475298180 730367912 865064343 658126078 950737995 57148922 746924865 892354814 942745046 775853363 817952533 186117673 309978722 923199285 978493452 335739371 564182126 814184399 898112272 50690050 392942213 893021303 908457026 71079987 84856943 559885836 844230200 11631354 769494136 364890621 790293177 307709823 464640011 516465920 961267584 368656444 668789011 259526913 801798326 785636384 891956811 579888892 780516812 302217703 513921833 810191228 972207563 612625179 774501745 717851881 752132844 433936002 636453684 511239948 667164107 600326804 679914143 55410139 179434547 708571503 972521985 889769291 945927070 365492117 487812436 468950423 892323909 373791721 629780143 583260160 918853009 400453577 881780565 308709704 974781106 375461642 990497220 376530876 779800254 821393096 894152654 764967344 806934730 332908445 502092890 551618190 801250319 183124925 326097261 344814333 545764124 702239631 838280029 818923086 922658727 270131643 330052767 899547334 915022387 72629370 734428481 969999527 974722191 379771361 639553519 450454506 881042690 905080376 998196592 512648688 855640003 101528720 808118754 958068632 968870195 291423027 547356181 291473446 342361702 163942224 540790697 666291337 711817309 191416162 471193969 931116996 967841975 219690589 998299573 60360805 601363479 66181801 127318945 191457729 821335779 252717256 286299508 553246295 975055099 482444789 588493293 428417738 557876078 343184820 436650644 525791594 965568540 120862057 145926044 433083361 866520032 282167042 854709682 939239411 950660864 857763392 981676007 665767638 771541177 602862793 734658936 108827839 420883111 146868950 184771390 945212066 994693960 142875673 798341485 196902043 289305380 882667077 904953001 676301934 812087720 323840136 337599291 778869770 822728860 998216388 999063364 42335930 795419895 43196575 163817468 770797818 800777214 222949324 717340799 48725490 287105213 508366185 764124194 966087072 982646187 843025377 991961853 699511958 731278136 47621689 302631843 956435142 959995747 811797579 982324319 137583996 233042970 362125939 518681653 596209899 749822885 870716470 886869915 873201900 875102066 76681582 437025843 73191668 287529555 625504634 788593280 893844145 961187842 852986297 930182852 674882869 931967401 874224642 883541751 718509176 782153047 538986725 895146916 739064881 859739822 134703364 225910051 232163385 614527659 703533247 724075863 3360197 360259076 706944774 783474351 866766967 995204713 657655649 812174385 92124416 884338546 593731786 607145911 726195618 925012647 373538254 788392553 558712808 879751170 741910249 752014724 407984575 475438391 555996802 773785871 927922452 975082475 557811454 834314439 926794051 944811179 918810114 982573452 569013431 598925503 579753563 780455199 642042008 736512205 107190850 994377052 383709610 635224069 330368711 870669773 799435159 970365320 962219323 986074248 519659124 716531866 30489814 863787198 454041629 749908202 248097408 646066728 218390234 579745620 949136144 968367393 749868675 971027736 483755662 782978446 322007863 794203411 649935673 942831444 337071531 579550182 546349328 743927653 944759591 961604800 828492221 831021539 61666938 587242888 863352433 868301186 726386434 852547951 780013851 905702597 31045139 990217538 759031546 765948154 516293665 566742422 595005764 994260582 148324023 548204910 383220724 532421169 117826912 920222854 931549184 971396922 704384258 888577872 448468731 664833988 238588485 436600729 904538495 989878988 902597144 937323872 531088491 900236957 88639830 396308560 491207192 589914894 363916481 602009936 148305665 347754277 765940903 808896790 872759923 963487125 841066115 900604085 610009611 878558280 871392346 955574525 296019156 997314037 275219270 784992510 289572931 877338249 386704472 707655760 601549085 782665779 379856437 525574713 945108073 980910407 813048756 816190212 995412742 998658106 420899903 481460413 292381346 939010097 446349508 765162429 199018294 335614130 36826693 518299317 542513972 840780036 635398155 808795968 367895063 963518181 397153511 818023097 134056775 526948716 416801590 494077782 827828948 843388377 953353538 959438147 866174712 926618409 229423014 780363176 507466627 759898339 103288067 655523628 683717462 849296411 444154156 884313235 724578256 873577671 483972766 683254962 775590228 804156477 765932895 847706426 533574515 623053234 956270748 992743281 840757 88504921 995340024 999214118 752045572 966519279 70436065 254090880 900948504 973676830 155192510 317845143 494947709 787312780 226447936 937894617 606938875 937289644 341093913 868563743 266652165 789012022 814873875 881555481 906053505 967438726 890456675 942262915 466188440 757813221 216318030 982887064 884097673 893896984 737574741 852345788 576731943 692952539 239011323 594384555 52059202 935738145 53813079 131934069 649126787 667844831 151409116 936366113 828205102 898646159 711324362 830920421 84904771 576652447 435236701 805993888 950551104 991148554 524489674 550517335 146457652 399086885 181261467 666974558 506543263 509269284 805775116 922108472 117005794 140644996 224553760 417076443 573154926 926020594 552937113 586732275 958020318 996650988 471016860 605664575 747317846 794697835 491451406 690982492 426692607 966380534 693586722 950794755 885321219 966563696 295402344 401683700 8723044 123055945 389646000 574306046 937641112 940630136 235006970 829638452 408769618 856236898 538339312 803574345 880859707 994369353 92139008 416159107 181789528 467109765 839250525 956367689 175940043 937651133 622562570 692541048 357163418 971369769 218287367 600965726 875391596 892524572 669781538 726380492 289014780 783157844 477689211 685152824 391943703 884057899 366358856 626616015 985922313 986518499 469189909 992158657 588305097 717110419 933424746 995692269 505585057 870945872 607803786 979795516 61114184 401901128 897020009 928144631 349909847 667583635 415665307 507432617 961339740 995894230 527220850 737629670 322107824 659522475 945406330 994743554 756609156 894293047 421725767 483117087 456232617 908333568 674752464 834689305 885648222 951046918 564338530 571300372 869128653 976737249 884546896 902111683 138419351 479019040 622038905 904023940 480655858 647489108 960094997 983988062 245846877 979443821 146377661 981761836 309204565 915757353 397138252 415181426 728554855 800529659 599798590 981698495 152091807 313897532 742531218 969977467 725592738 835516792 914231540 953479447 408230992 541065262 164711577 350063007 847888335 954171135 593536095 777077074 759825931 879574337 833890352 854752189 34660072 741225039 868846787 963013481 156149941 320099519 787630005 934837578 306040877 818984886 252608434 828993235 108084684 996580257 279715812 947235951 260190095 303641985 551611360 833117706 203657174 729880774 773325933 941470520 906952673 932440209 74028557 364810400 748840823 923755241 59001005 470896601 948567496 962120529 694786905 932608603 807071736 981700511 621103627 839847934 280164988 676138509 402494643 719529577 96350841 207637360 712937668 720860461 637745545 717983058 5161477 481526539 662599329 737654603 43656250 916882462 571732808 663594365 842920177 973928696 708223780 718867314 295793441 666137628 824543361 978083710 582418753 658997299 141810117 663411913 846240256 860841972 242673078 713124748 297796459 852087978 150378189 860395963 408932399 422938682 99545752 774280325 395074393 635882074 352996178 879100178 241591674 333284018 940323979 976781679 655228736 999184722 754662707 845667932 469616880 942432396 79097213 282623367 831164108 945129538 946541050 971448940 231181681 546277583 168611648 559859285 374971507 686385560 69346810 391011857 582680217 664883075 974896526 980905750 374722998 882982631 526725960 835830194 777374450 854170318 609034373 650526576 655054304 804832227 597239246 794139993 443625936 531575503 4479191 456084793 250627574 340927855 826102866 914484558 9768577 737289969 236950959 664157043 704664206 770641098 492741747 904854583 282074958 466355686 283480839 855322783 139102373 525266035 555692491 889084888 800558293 987202052 968777473 973785583 232817541 337365156 677003112 872455381 467763099 530843413 699209216 860924727 50035568 256616083 639003666 881982370 832907305 985710535 335030681 781932034 170078308 239830716 806309403 934301043 989580836 992076271 799938027 990871174 253831984 892625741 468024262 535459712 500017945 839707175 439463704 506325091 450070203 934841320 915344941 992732292 619665766 857862980 416454828 942381162 773793097 998464823 442123224 982130067 734134931 882808164 907903558 948338531 772602786 978724614 988382028 996911851 558042522 829485964 373766912 387968846 63677911 630829384 370969314 624092314 974860143 986947963 147821523 325259244 760619901 908645230 127796308 295104087 895802301 963201656 638626477 963750242 828184090 915784557 463335622 640810401 23158747 884102631 222451587 446746540 849425720 946475203 69814344 316946156 603106536 619964935 309616764 966673397 332115026 674184749 175298237 420523663 778924353 907870063 736809525 777959578 873734077 882029368 566950881 621242744 892942463 994344294 255741210 423203077 450096685 683601933 319548565 566530262 455618403 972943524 664761782 999467527 21989592 472044166 543748887 893616590 554638877 724282294 140853101 906800530 614433259 712939843 259298539 962979559 223316295 969078900 19258441 343010810 121170424 959862533 457892386 594956253 204695011 976737723 140293992 234629693 110375626 456409152 770103118 918605310 932207795 973821299 412322405 862517847 656581971 905142160 727755892 777406387 794636798 922147835 153764330 824610818 83777186 115730797 896182050 998862935 858558807 889655405 553999937 672018296 946513002 971865217 737830404 990298471 413959608 769420043 140107285 847087951 332950429 991393455 739198324 966240800 820165810 918668090 539023619 991267438 393751509 944583901 15740301 635242995 613816260 766398613 196114512 470034585 361569758 394627399 571422076 955189041 646255659 662681397 231104861 980787661 472386916 752633794 448078861 547927417 386739631 710106578 838676038 903772847 166990038 485988809 813725624 916621249 317570899 558269768 64616911 158065818 191915904 589847652 771149376 910386586 154371069 728981545 373892794 655423480 56566229 514871802 894606695 956515369 313973069 982627871 959063545 973974504 829018530 857059668 251816521 492830876 269416194 878278708 881077219 964905920 190785687 622053744 151007627 772404173 950704441 992018044 505443006 526564456 665585280 980776448 87929659 594017511 79322343 795249048 20731613 544610204 705765603 931026586 966611863 996293583 413663917 846539322 436485263 554205162 368998794 488088372 496229741 845638914 162131385 412649698 420143046 475249898 336510832 626706682 875121673 978408101 907028278 973684897 102164057 696281017 724006602 882431400 738180833 765647644 623994920 989745441 550918344 688138760 230442766 767695411 309501003 570260398 515144660 692589294 117320517 158063442 290731234 652973206 487329540 909636713 970995530 995601668 5881030 976251645 248775794 975536390 602892273 981918832 866218780 920495834 615241606 641507591 166006295 775096970 145478912 342227099 775168584 807658202 677714571 902863799 124064841 815378035 683781487 774235213 262938660 656287718 612465102 651659071 67188199 951332364 857297514 862250274 524112786 694326893 991860912 999482984 252580849 543386273 33091722 981931536 344531889 939119909 37565166 152367511 270301460 710586383 200468926 386831921 111899504 552496015 422471231 931001907 316755140 400647986 104160688 727502278 56504883 458916868 29008189 129864836 38494111 652168387 300905631 395194720 155579211 437751631 868230554 997089242 429458021 928573476 623864306 811658250 384345057 603852972 731491559 818396744 991834412 993775447 15857344 258386806 918458804 954725630 414982251 926393968 746509637 823956395 70391349 251531682 197373829 283392920 317716973 423676436 365831142 583057170 751131482 810049042 15116281 702361519 350623147 450864805 610667382 714432058 898834435 990721878 388549450 763624270 538991199 985741485 619117331 653980607 257557077 705460601 762053206 891120396 947696904 999307005 74996687 528952755 178666375 954206747 425223335 663678716 708920870 944893766 564580223 649397020 647512377 822292828 725187520 998156318 854203077 972843393 565577144 801047873 201501309 797001506 290333682 601659958 823632994 879679002 456910537 920959311 23107172 283660966 142642915 729548968 676880168 849243849 123860921 889883156 929627741 948595572 79394500 719071038 45526899 625653290 631008920 835475178 756287640 932340468 668943961 941214216 8417055 657652390 537396644 773655628 151373599 655087540 990328056 994812207 257698025 584821236 706848956 839796794 23239313 142634486 50116498 810541682 288643274 934789225 114930628 861930316 827331570 936147869 719305041 782704857 281294972 988752563 676334168 969461247 144111940 323770440 52521327 933769712 391233515 874724217 742815304 944288324 109485677 211249338 850021455 939338253 64809200 968066095 716075825 920707698 901698535 945275083 604562241 933167397 324580240 504891898 619728047 888494876 743586820 998602274 97020039 579186676 887211683 952940415 520354161 889150753 743172984 870636841 956946780 978225525 54737498 498071234 920992458 931898857 606130594 812291863 522103387 741793048 360705775 906834807 146233782 973895616 165846454 366461534 220572665 388163196 992295707 994761529 923825158 952642406 51077196 523438954 315550130 594350277 677295387 805662448 948447153 994305550 820341736 825290871 776411148 976159514 16824317 514078450 359752227 380502261 737497092 797483558 391223540 574688431 343324279 390070863 134040157 404945590 610396243 751318645 125230382 789738629 614672389 969630804 818863745 862537376 370708036 856503703 774118626 934573613 590189111 745258324 856505537 868789187 983766765 992347820 775484198 784923495 364356727 962308196 906015591 961475251 50919311 630780148 117104772 486384697 228401592 867002640 632483604 881974294 736320011 885266829 472778099 659181170 367122504 747539209 813016755 935634628 619974845 762803608 398940087 440064273 713952589 916991645 65229928 944273551 859656916 996955992 89971774 171107639 467956734 844023306 163859195 435650477 96658708 724189218 960881591 969058684 962356790 984945318 979093508 995751756 523246283 581794656 776869921 935784981 864981929 872988170 154435970 481747330 519219 180535749 663290994 977709862 346441734 699162040 440443272 641971284 288895867 396731575 522341815 713052803 325980032 345187459 794618748 896388744 496907964 716135314 839317556 857286099 803703143 864686703 93390644 783245556 653597073 779404341 295396548 685125348 361073591 483164060 999354810 999468673 60094974 815215700 542840297 817458473 703533260 853472604 203103864 410288078 745808814 755678883 408932733 796778828 348194635 710645638 165821875 215521757 246804799 453558875 508237336 992310797 354590260 895668690 88002022 687212078 42495036 328597072 410615607 628042347 75080245 127054117 351633448 781882629 442763370 876659436 10445431 198714145 831991113 836265878 54383379 744149222 9991672 455503327 706882804 848619433 542879882 982296507 8272476 361972927 69902668 365093686 608015642 761237057 844387656 925971697 204116803 463614761 630373024 823331296 626104469 646308000 591488628 652397518 243646389 829854901 283831415 626313403 549696255 995781345 338764820 741994187 496248255 802975594 35209450 528723622 759887993 952039938 403237610 858507960 613061767 722738513 207203587 675602361 582177427 850696965 246561105 575716274 284654783 767885597 412326255 892948063 12684069 324054787 512028459 525061117 581789964 993630505 985088325 999488087 553610518 590420261 664611642 951047232 876236528 998917280 703185163 998988390 230826434 920514400 391568832 403615182 549887458 593231427 878903153 919964194 989635197 997305627 352594247 803579752 879839317 893158131 700621061 777533833 605851310 712573262 650750319 837278944 962126492 996009882 50412691 793329273 43394437 816015853 539741747 717056905 930312991 973766606 222572416 578078611 203775020 285976039 556040504 626493207 348750200 504044906 133230679 704241325 38160167 147507111 845238405 873039524 430618038 948588372 835265365 847256700 488603732 930984171 409215111 534648912 837177027 989600643 897965402 991232491 441461008 763597857 216579472 781108483 901268728 906016320 88983327 139509687 906243699 944800579 642593277 875819611 786540220 857794497 456293719 520069371 430131624 802601369 415699333 811876735 362451523 862806639 159614803 323009051 357408410 798302252 497751606 642012890 252028996 357348006 138998674 973912562 389285375 918489819 907182513 998519245 896740398 938528865 4152434 770754091 951453247 974655005 978789451 999176671 723570370 806335398 452290554 467678541 132195870 736679179 354156897 719247257 639001867 947132826 304119474 747060357 462488940 705078834 918215701 927522401 458437491 812102665 51295027 965032846 614318995 820375164 161459562 997766449 529342207 637638518 294574121 682256593 453248186 458275966 75997611 562786188 432001673 614698288 596444973 958340431 51895627 476692877 238007706 893808123 846081472 856213732 937438159 970560736 222384332 470761061 973755873 980115461 150544526 956427652 284331948 601218980 573978579 633071007 743623490 830117034 415802098 530459356 582192877 896563989 901112849 922825796 749530513 832887615 914664911 996452514 482554030 497770883 728410120 965337608 279161743 365873762 695282706 853440624 230626249 252758812 835800042 909676213 578377048 581642242 428680033 612374835 231703914 923695457 152908749 991190790 626506508 957068473 744652156 890239769 457949283 986995757 498185430 643130396 591701720 644631913 200442219 946126969 561468910 879682929 424617671 608371145 907625689 916286539 483251751 586617467 263337966 566140456 612912539 877038934 130093178 515299933 343857412 394543454 291791311 757660292 632998312 987477853 259736218 596422738 741461967 771372125 7237834 199913267 789881601 950873211 7242654 155268831 413043028 952792542 960741698 980207987 842207053 847405543 656503989 704042651 402408855 804789703 376355528 762328284 435483826 987603115 674715592 872902981 205954675 889274759 842343883 876145991 976469105 982070657 752739957 831500745 399858089 407177854 750342326 970920984 632492281 687280734 493235620 757229588 55980721 63483198 350649485 406917409 883231346 984964242 467024180 775559186 853365518 949971539 261004388 611545981 449005151 985461533 437721224 739001751 979411381 985890901 955240583 990173161 520486576 664205982 210532393 610650968 837205058 991945621 585276007 947934356 918494855 951957874 516260795 757825321 403938688 632053435 372267583 759526438 237874768 604150174 164334585 937807042 863414674 957169014 319510717 888984202 14297359 857789133 885834829 910422901 7554766 839045992 776638731 816426509 516541774 819433844 783140081 982900533 163490038 897352317 288298068 318787897 457570770 680011200 194477745 840049693 219384983 393061159 435186058 519046140 948532402 967286498 41074632 521632572 771181128 806429295 633222671 894336384 47319831 389251393 166274894 417146189 550626351 799766613 635814512 712775929 743016966 842946627 160558263 694570684 185358012 892990252 358289121 882594288 12743468 460449371 220474409 636345275 114346081 789271122 688274346 789438308 910769163 965219590 993688627 995204782 949511203 983793556 929556991 972297177 88588593 362506174 625226097 995108837 879431041 925921750 706106556 956408682 24180707 851677641 166522658 175064603 914802976 920291794 120464205 153651324 68124771 205428241 966206269 991624161 671389021 687647669 645466271 910582598 203495341 289180853 725646345 935391507 48399609 980600459 623345765 868674143 518358501 733401847 243398940 376983007 987126950 996002017 433149458 963621571 452408180 776255892 705439558 831328591 656910775 801489990 606541866 754424373 371714117 761027686 777800223 919656334 180450591 787813853 698538229 736122953 915449382 939775050 893750820 918929515 721522370 977410833 989629759 993743325 303339127 938206344 826755754 844353046 663115387 719178794 735091655 937876582 960706322 984830612 721035726 779694394 718779104 942491534 524251206 805205704 449624774 730814267 754676617 816723792 375094494 398715886 150957796 906648815 53013769 332977354 301702476 453586608 388191372 474939916 801193566 985465737 929883284 938514601 51535288 660729422 68302622 768101216 283456134 998879071 90499779 560684171 851288878 985369726 551523193 805447420 542692292 618844386 305009574 341994960 244837984 663966545 897356810 934571135 719108272 815765395 692563435 710068044 703216185 932123150 502196480 782698099 479278489 987324162 67362793 942405084 370909563 618766691 632521682 692633421 423317541 817358470 942104638 960063077 704230118 778108464 843252791 948302916 602981927 865751611 369874054 798797512 736068286 770487943 911138092 957327036 914330369 917858684 562781409 711945392 145029439 148916138 60247654 371365252 816104336 863919040 148236478 880461610 966168160 979983623 846483543 861055728 478035207 738419482 333542827 334020188 850410696 935672399 554449695 803603868 214301561 935303738 224798247 257649989 723290546 935355539 431027876 660719291 512991883 957299939 49071373 672933431 768106318 926479141 93344116 853393439 649169711 789046654 706821098 829769328 826075868 981394093 557859324 806395134 517729943 843114613 453988370 746700551 57313672 248940450 572705895 912533039 165787740 580714889 328256709 426594179 535749207 553159908 303280272 333500751 881194944 910771538 939679789 982240673 731712925 839293301 363109413 504995540 628855656 987318199 599030683 614594457 420228488 684566064 106240594 438522130 945969289 978055176 829358431 835965882 339072902 396848921 359800871 697579898 295408567 568866306 740473982 941273460 264166519 368069000 223135060 343815933 588213684 796159685 771081205 958719164 553008354 778315846 405493947 661893050 665021358 968884798 138369104 396716034 859951581 975916933 898005912 910384467 418535499 452041670 744148863 873031267 370289777 606143065 138519028 423757482 421477646 724897356 105574700 455303817 147325001 167495589 471186210 634049402 175869665 484756222 976309345 978928730 947009340 955545554 733733590 956480230 876525281 917157629 592584220 742595152 25891438 84091481 334109241 758321206 399586282 904416625 652238953 715868746 986281117 997033371 375440024 743606375 58337550 363262488 534871176 714878024 799918388 947148161 688832909 897820240 976456504 987231911 95440887 695949691 819614532 934040625 457977421 463919820 89387276 984275537 942482290 999391006 734767887 848842765 82533613 606828171 266216344 599538727 547480784 747943848 296958827 457216003 33546287 505902073 123031685 882467509 823456622 917939176 502132313 971988787 896611825 945540910 884732776 948324354 309653129 708660166 994652565 998333273 634071808 869777437 798579828 817997444 386451005 507940373 831381077 970919902 198767715 983113635 747378525 895859977 426472470 839491891 871373846 888417392 137198085 656248893 21629756 751893856 275170074 976838707 820671605 936182647 422232122 824262945 157982476 587507671 544418072 591884009 58679683 673522218 757940791 911559707 28116837 411239894 168220222 980435472 198448416 815633472 119451479 150624605 778541777 997074469 926235427 971067735 970576593 971497867 503565786 703586165 537477594 761174464 272191654 949265205 814776140 872963245 415132200 996009813 122486951 939619891 753511841 792391424 652570497 782750253 131865130 404245294 746123136 858314699 173665167 643185489 170699829 854635637 694994874 878753452 828641896 911238104 160062560 525524388 777413184 904371480 64976894 495355192 810830648 967876874 954429865 970913700 586474612 895642552 193942938 625713878 347116786 940647924 73351145 773786497 119348639 896779874 787576515 885824080 795423926 820215748 263296156 454400850 391079506 663793399 282535323 791902550 358379054 420421358 306000489 600286132 924300301 955124742 556517692 610581821 268159099 816584977 779580567 951290118 270424495 287133778 964929836 967932102 728377822 729258836 942132096 994477232 227369885 658079595 388472337 456482832 804560984 896259992 532667363 758146155 428189044 501776184 518284157 560439691 936983701 961823216 579086497 959434294 774546256 998317129 490765452 984150254 286371943 964384763 590245770 957043868 301275124 337847520 497386737 516265325 973096561 998291082 779145565 982467306 445913240 919552353 318201087 970235573 537935664 845020136 83445170 167650552 4915206 627601617 957326268 979227702 708115178 888249324 582972752 665586316 757718722 764310091 405454254 614038780 936001594 994428392 101051986 363737414 33726039 924147895 356793368 737991043 320718478 673911422 394371996 759997299 90591664 473946282 996515159 996994402 801784860 975708833 532386308 808080982 566006714 789191848 840117973 908118476 785701 179318943 549763308 959009400 763198049 767754277 730727239 802085535 291610423 366800669 329051322 622636554 558521180 893074857 360216638 509366189 141397779 364292037 972330165 996324773 73358563 634904170 551204911 552365792 513883466 516324510 862119621 946587106 642451453 813487375 462462186 893425843 930567956 968867264 71315577 96743684 882275523 985350898 908386735 994869936 496833457 879396008 652626166 776431782 619516581 952012423 477947175 636350365 39362799 726053855 677886934 967990617 419800004 702153225 347679451 742838229 469286397 554030591 597122277 972256553 940304117 992316180 110445663 331440712 121590517 757561500 897053776 986177739 368592310 594961393 607196183 988335376 907738382 912531315 856285710 858645803 409830552 682829705 931341040 969534116 395904805 937628914 350135959 550147388 677284826 897844678 294684444 433256694 914410594 935850018 537200245 975013301 311627619 582300453 90783196 636821570 547946026 913030161 174797410 876248617 807897892 984588101 403402267 758451972 584314348 940018106 348351311 393632712 333326246 536960882 534697832 922964793 765952312 860345877 835213293 904566587 110214379 146623827 277339754 426719690 654081539 669265899 979754090 992280265 982772232 987696981 629254195 885676850 325254740 909967299 453273320 877565315 592972728 833043359 947140510 976966817 28608431 936479868 69476467 161355208 921898477 972521899 924593643 968499789 968565993 995044088 529233488 574633369 550313386 972941212 274017870 626586507 176334945 736633920 874949406 907252005 403815149 914038835 251158011 273794045 613798905 980302977 89044642 712435524 260346577 310384407 902682426 977574878 810546791 842129102 657961530 934179932 382834004 757391513 853238749 897326479 997512126 999068652 659085055 817781648 995299847 997606711 258286794 268231361 569724363 626709916 472558686 813349232 141507172 158692313 435927985 997780487 641233406 903112492 343430237 723858283 301443919 979660239 115594224 235341647 87755314 831148088 960982101 982050600 767473636 920878903 557386575 688387836 28784485 532773612 712229624 786271744 684774781 836342126 857000665 913432092 440252749 799933128 236035359 913764292 751128214 782697892 639279796 820576611 770052344 876142966 17058821 286919120 286833897 872975575 493197754 543871271 935802583 938222592 728657723 949795063 701517171 713552624 449537185 506500647 218012621 538559156 278442192 487493993 918229646 988486277 200558248 320067447 308512095 424076601 298562878 750560407 283240008 708072567 513387140 923220770 797189728 807055454 55332953 381504509 819540678 838345652 384463282 607129891 771028868 982356669 875551585 934189095 931166209 973181932 650058788 670345426 373156282 773271419 257647309 884578340 713630164 773944957 65780840 321163213 660339884 779965816 715163931 891884207 906768073 973726128 48360706 407861524 782200653 888765912 65113767 446289567 272301894 620393401 286033844 844747743 95955481 232504355 127916349 563568266 971022806 974384726 402621226 911479019 944950504 971634721 238265714 715820732 44669625 826580782 783798348 992488461 958208405 960339652 251008645 990628516 27437533 313126804 714527817 796235165 490494331 834568458 911369035 967762999 418129542 697243479 367822305 748894887 563361664 583979433 835278922 839802589 256361886 694203706 551916146 981187337 51161453 182154788 803978189 826642249 961422193 994272544 672593779 754082504 868489606 885780568 634514570 701663590 133761497 530421815 767436769 871182623 620950130 947564673 268500080 319411275 819699156 973591630 780099713 874974923 182321667 649683196 852364801 864600355 161057293 958178095 785772492 984253700 80322154 597592166 240819661 309561517 562181763 773407370 126141627 128107492 771771760 795442262 77448495 506218489 47421240 542133413 354068402 624172299 664116628 922884833 687146645 841087803 812066797 855369239 563623270 986901113 934953998 985434852 667521151 982877499 755227195 989686973 833732721 926212387 26868229 867104321 125181912 240126889 53030676 458881361 578431135 839600253 924340819 956102890 841133943 960091065 144529835 664569043 196177224 740869682 280928278 380357020 393442817 921414341 899440039 964391617 130989117 489867456 495856232 807171467 77784797 275613296 863435008 939235857 621257244 642511678 519523664 710046009 933325782 957877034 889899277 896827762 690213040 784232011 832076464 911492279 689971563 791808981 440839787 812638806 638549193 779734519 877806143 925498175 773213281 866587355 858920756 982352483 211741549 212624153 856121884 926707480 359744257 408888419 724816400 762268578 591701051 736810258 898253623 968330680 589834527 693970166 901931854 979046036 297353887 908415251 421658396 587244435 318227249 909624914 590180729 610691418 963073280 975822771 489719716 982227056 120504777 582739395 845889332 964017078 56440345 163747281 653692157 684447133 257437114 742619276 182588850 787049514 700171943 925395604 221012032 920539294 295816775 505841832 635118116 827504607 512492443 989855689 233916711 391922558 97007355 732460907 596562027 844487628 402894862 715544811 83474467 365887038 754976787 837770690 216805331 963339607 464007997 865276853 202601606 921331173 207172587 361046778 784231195 790241919 346760656 674978263 71723427 492639994 86058104 234635999 545375112 656065288 971236397 992520019 865232836 988782026 167265302 511673061 590066456 864408147 531719953 778145206 128657627 848795709 156419889 466358852 673200284 970131318 975121670 992035378 478509121 827566382 241192744 688225239 380754584 894977382 806420520 942060292 810655647 987582455 576351976 985914398 354954606 475801210 77244357 98824575 891710144 923809011 894885882 936004314 931583029 944858002 750418890 977386589 98709075 736469502 724570613 967608983 824931422 864935392 105260024 679299156 580399658 769671212 198605940 235045318 191745929 504609767 165049281 447104072 254245327 440080347 707136391 862362188 452836286 745836674 963652414 987198588 315051020 920989891 121451811 288672302 240462244 416939946 42773085 881208543 953237071 958347028 800889037 902897589 673765028 820677183 332965906 441144816 70287002 731147090 232665627 779343876 694463692 843854961 232547176 503508988 48952983 243385411 577416192 978497525 118272130 470631439 112197415 492650792 715945670 999278319 432426098 809427962 894819803 972962042 474646429 596289563 162519411 332153135 780121699 927631436 779250095 787577961 960642516 971624331 557721356 756927918 113090094 232882042 103059974 522139842 792265982 996321561 403659465 778235046 708413360 802508571 853998338 881884974 44291351 137043650 617403672 927979305 290399305 669765285 490931107 684588338 320436796 578872322 249970760 504232127 583456838 682449671 589762044 880453133 260390421 630483550 697512346 860426349 883305380 908437240 102698246 736323594 546946061 583856072 120507589 448101260 574708923 916744839 742166247 934792574 699178209 782935939 838063303 993430787 175839697 250998606 95137897 578134732 11513575 313829936 508656360 786897494 274469572 690248145 475301665 771351027 414921034 770216143 923882278 931344285 17964195 401407073 222854430 782015871 790583566 832414765 284216707 315349797 279477962 723586552 135938718 325822230 952436114 975760106 256761965 813111678 964106125 988175494 925584666 952941059 514839186 585537708 785992717 976426850 652556270 881912443 313638939 849342091 451193325 584094137 722132705 938123260 913224891 930154524 84928151 869566810 806787300 883326285 841306234 908589684 627903789 971924117 730757589 906354781 848299562 861775081 67077327 147902492 889615430 972426879 456703274 719017023 739766838 774179922 883176620 888149311 27245126 335457113 934162660 954519517 950689086 984355585 756407730 796694552 376781964 873809550 737558605 897959108 795195438 914948777 433815941 472067895 32573036 869385850 479321615 539945574 821500804 869186311 135089826 766431265 648208579 857404471 979040600 990965060 990516074 991002182 833201875 904983832 275266303 599542536 802956966 857212676 786057688 922331808 248197159 293862570 462549104 738059035 466989096 979511163 866153082 918600111 893940051 975859202 892056331 972139080 552360236 926228503 285148424 863910871 218158448 991655141 534418973 820375696 561234633 621453548 320990869 768908738 613571607 878526657 53523479 166575826 175004476 745898748 298092680 412763853 188336265 367991330 895109672 961633098 167054987 783174440 500294683 907588984 69684267 885001445 86985153 988059464 551594371 999348204 441901689 677653971 791049690 819765546 139082041 899347614 475142421 539887989 418418880 841343489 52315060 57956498 587212577 873908847 620613759 978213863 146313822 681759700 317023398 824145590 139907182 451247989 853726837 971293157 411009358 478118663 387863177 748268661 568230801 682441233 850613951 894873327 854940132 887607326 191466729 207306223 593786834 647621539 769880857 956473029 931502700 946438954 710421653 864248616 432359843 737041097 869174385 925343893 298749798 973477298 670951274 875944819 922933013 955656739 428425036 629869958 247940496 403832192 601800317 601932581 717791184 788373076 167508484 549498349 859818613 940176576 218126610 613554383 370845883 743485043 603916795 918412321 492281090 921739979 506712547 627123539 922480123 991201530 177004146 891619281 115981735 337888691 941726109 992225130 588262491 804618424 368181315 614222769 767947039 828186859 410618297 778860915 663889490 816309521 483325053 506789876 300801231 921123521 968851428 973295100 951559170 996741584 714878782 774680436 54959051 701731587 461254102 595873280 334194115 767307653 613943925 779007564 941924391 979802906 665784009 892642770 376323121 581306026 882589285 915300571 801552317 969003764 948621297 951020697 270639949 288719428 376218829 532487216 929067243 977424209 397956901 564772514 62442809 248802472 335251132 757732032 695322662 905102695 857146055 957448434 232933212 543838801 38222687 642002565 415979646 889952684 889993585 939090778 738243967 826268259 104846715 362337499 642896890 881131523 144128406 911061960 712286474 913189101 726241373 876173829 100607255 725396683 543074844 814490127 877414212 893251190 145739306 895958960 416431158 545759467 530135399 560340887 197000936 487206901 233038293 410789926 172092489 247041719 879892469 902056462 158662993 628683655 951566784 982083733 809330347 879647350 611334797 797760388 856851766 914242001 267326345 997018925 458912833 897253112 812824737 921880190 225502047 283123793 206618722 905176348 978157202 988106275 599288590 666903402 627686596 678141595 559259866 776052160 356212397 385267227 670438679 994078873 56969154 436272770 326777661 683186743 322987515 590282680 249831829 811332104 436918861 857847757 520331167 752589544 119305965 908947268 904474290 927495379 777006263 862631006 822388935 920699096 532673150 599937063 693118287 774586918 904025111 915078852 457410322 497803067 476819150 584988220 469810668 512459121 538084769 909187453 35198179 898219649 54317904 432391439 493554555 853892355 598955957 785942696 876311571 993361043 719181629 869912964 885837872 947113516 257741073 798050926 267945954 659210137 174024094 442337003 254315164 284289313 482587160 546171175 325846067 621125516 535927280 992940811 47742517 834110803 957433308 963805284 59135348 289768593 739822627 970306331 549569813 883327066 715287225 779264097 446265294 617391906 337893929 663956918 695431452 882676893 463270923 629138390 468611336 718500219 360194001 907612417 473365284 807173882 491788914 658566631 367831819 498662794 534378819 782588727 276939918 466523621 500447126 707386645 373075573 395623229 298635193 349435377 93503761 302722407 948869049 988952699 544763880 564232229 632775290 719497937 495392660 692867716 933287732 948328328 451130668 655211638 527404102 890850139 11870271 300164556 662942148 749162277 278125244 604481281 242437620 464884828 977354538 977893750 396607702 738471619 885633706 994992415 512022846 790435621 854670509 936257586 137782854 741415990 375960590 591792736 812321865 876400223 185561134 531698511 289899771 404579967 592788959 706856362 658782113 898738315 895424176 999242350 559475673 595187401 170777050 671631744 524135436 707080037 599674057 807808612 45632788 74260088 762215501 937581884 620057499 805745912 759871443 770927983 799254428 863613834 889953521 990737721 740895068 805461038 566963886 910526317 746051749 818235089 604438150 631025788 848191145 996091448 300944781 830218541 478612135 528245259 105027269 172224846 312553265 823187977 286782197 371178860 941762748 977021886 123394460 925314584 376041629 680433747 864757191 908064746 717715 996027152 833666205 930952585 768492338 811562168 227588460 825210886 759952695 811078061 383659412 426038163 757380477 959362144 85399390 246405378 213029023 565646184 304293781 378353518 424901378 997786925 348698014 537231815 43660824 518846926 866071339 988747039 34339455 974358962 843507795 893568818 627493241 740990492 67145734 787889027 160622742 665796247 511328974 523348962 309083906 641846504 529457443 934658837 956987408 996599668 102436757 227165534 923529425 935609378 838027439 925629949 450269133 781196739 480149165 814465724 146547312 311868332 100893693 347502417 869250364 896553783 789753303 963229919 23102227 255197623 349006812 385810150 972808189 990513175 918101119 984360932 942738106 992624151 568536541 982688691 967826047 990399180 514190885 669104932 92647709 163832340 144844924 806889053 443748811 945580042 644832768 698218543 566359920 626879453 852849443 974109611 154267413 802549017 582279376 743178081 438263319 862310862 687006565 752486593 847145032 851696882 548938825 928954523 131920267 416311732 416540754 425875222 655060801 987648847 271708050 414120110 336666419 882737322 655352036 854072531 175319118 846900297 196570185 671065305 334370422 884770864 790587730 900045911 872988948 908405663 307363594 965181474 858095065 906621941 413231990 626039433 350791923 897280582 696952983 878421784 545466178 950027692 603196704 654448226 131635891 960819978 264106414 479680430 182950117 526048413 729117992 928793877 466219980 981198524 217635631 913755476 531653535 679157359 318855820 473203915 654625209 926923329 508418370 792844926 229868915 306468117 578220423 997339000 78918239 491571014 843722574 902223074 320250460 483864030 594370928 948272831 822081990 924410566 961626741 968829333 858036294 975901790 104480793 477099228 247660419 645921104 20234148 736858515 607574282 947790828 736719534 885780056 645755087 767970061 587335636 906420301 276753958 921658347 838343959 911042292 234036282 764740729 372821310 783765593 492722844 830655169 961127643 973588873 323492700 753105975 579912455 806636429 629945713 748799387 537185845 799326255 186817642 394771202 714201178 807490556 512753780 655644005 162543622 756478123 910168439 987547005 538455829 696140547 580157969 910179401 434097862 923376977 301280885 514165228 913013500 948004797 168827737 489090686 423920181 488149738 288770500 720657128 653991750 660459804 732211360 969986004 801601440 809664533 628882030 887591292 429115678 741807751 448450373 880176804 341647159 745235797 920904336 984191847 295768159 877158558 442380994 998408789 614680233 804760587 464328007 479535910 733993192 774826278 408636354 623321641 53832863 672737912 400415653 644362176 404965722 625271488 136283675 817096260 415914519 797679682 120735048 582820712 965118557 969848411 234236072 257498407 267965740 376021903 894740560 911090146 104392418 858411478 166111167 583702668 585224517 782797546 85718172 577992337 269636565 328289128 65354273 913644193 446083149 654477821 287259053 374255534 363158797 963234697 962897937 965171270 727710698 933429682 65825038 740035084 514491129 640673894 341869798 455796705 9396525 71737532 942095102 959257419 789287653 997045619 494451360 611216817 82260934 356642028 475045745 880950083 538818201 650280883 101867886 349948490 597902984 608485229 537089383 681900169 301979206 857518013 920124995 996780186 884012273 902170590 541465786 672884486 563762704 754119045 410933733 978542048 275171232 879139346 282507962 434861746 887279490 897871101 224763882 819013098 111336523 857291890 576768908 681324524 205581945 563220364 485667348 657510408 463198710 623468449 883589964 983847096 309491995 608633024 537328718 733818469 283191785 490767518 825445796 895518149 252432305 957330758 213354773 344664905 55047721 182628471 840903395 943746844 841281723 955604846 279227237 827523045 95457297 271796157 499895736 599735309 152563165 622600532 288362046 901135487 835857089 990589503 940254422 986179792 692855885 861255786 304700078 808698078 106869166 832904111 254450517 558139280 12350429 956012701 162037527 806823630 440466547 968038080 879878056 980535393 158537242 307917573 30597299 117583551 327622970 777570319 304654678 946322479 734587793 950750754 227010447 386572350 416266758 969258293 481058424 704400217 24105126 370038698 195398136 417616416 10875586 627676456 396814760 710261093 39752768 470346668 588022504 877747450 361765401 871421784 191097278 561991807 489924547 872067449 260582734 383226170 443523596 827594625 95618821 832858391 205143700 972454193 262407333 719835997 84478369 509075114 801082205 827045510 322452454 908933703 316394626 515027306 289516263 799024237 85093995 716962139 647038189 920773158 265739592 930597098 208085032 550847426 300571274 833206438 271898522 515826830 856576837 949297661 278571992 804507075 663980798 930966802 583617683 918641933 314698337 485560467 395311943 610112349 207638687 726500707 506290133 898042903 674037224 742432656 716498435 902288777 793505819 917012362 263748708 371075589 964082694 996478646 625110287 718816370 679290050 906965551 672642005 768689711 736636964 772405349 622020741 679296329 187985561 702406417 220399451 956795805 756834673 880903344 163294046 268670212 938593443 965651180 441515504 895542019 608577736 684139987 830529663 895817422 93515598 323102413 454759905 998452600 403403722 751369889 504877644 569453619 768817976 977472807 632653184 649832174 265195393 364240970 919578939 936176908 337927806 386084960 262744486 816691061 380131425 437522875 366536993 770635732 343144931 416980813 932309345 980766332 44066742 865065467 800929982 991669975 546861947 730882959 17493136 562619153 459356109 462841026 503650013 569254008 834378410 957129660 816952134 876749239 751977071 991324397 367187116 486392546 595384955 943355679 741874064 804164915 304084362 590882409 960292172 977428411 303914926 340657064 864417018 937909773 754905711 874563811 125895456 490783451 275283374 928730145 836894571 859068839 623411192 899651788 808001692 835518100 49949860 179656163 970676844 989039376 878043390 906430264 978550510 995622405 829866452 996916801 978576611 983819476 570218917 871624309 333506101 944927377 227990567 232006692 446044506 800874986 531302735 568922100 119031709 450575904 448944642 804099293 774792346 996272104 782479162 856518819 903788359 953566797 25346409 788229120 624340707 644802586 727917918 751083613 43652589 634761414 637610861 945051544 969840020 990738387 955793579 999184538 34699369 47450972 474336977 742192800 166999278 563847962 647554617 881937008 411205927 985912939 153368763 241439551 634635556 939760268 187984173 589313822 17806481 505723848 420482894 432815177 445822664 575672065 452089993 539958002 972652623 983541004 381069249 773443415 857054851 917184232 175465552 824771884 440885368 609579642 222538900 257981271 178571813 796788277 324781589 924342196 217852326 939247001 799805865 909362646 388860342 498679531 662776688 699790313 641984346 745598987 913924574 922917002 904532667 937193495 662493438 857333139 240625960 429045579 778807910 898787725 293776643 853987063 329508260 712173696 383244613 631007719 12149751 732525347 600600211 770808862 110983449 195659821 508575888 513170422 440803724 882724260 142936300 332084295 181049141 532550811 580873634 704352082 306288813 413493567 157866565 494118016 657500622 792274845 129944795 659213625 652523314 896753301 156579045 639963912 997506829 998255029 150611571 741498602 948037658 957788179 931806087 961166156 642101325 963247913 808844257 834766985 885417202 892499214 49944155 617493167 520247360 812512345 347760891 820719774 315578639 409622897 473057679 791834611 148791592 963698297 995588504 999615870 937385819 997431240 242194142 337956772 883729176 912689949 462203886 637233561 235169268 431139524 436802823 618126774 431953187 861849887 770198089 997491632 79115270 972511808 842925484 985191845 592145696 680877585 511950744 644104412 700767315 868011702 262456727 820629365 916506906 941508816 524534425 752360446 932818947 986994049 657914686 879880521 660302317 777762610 420242521 654324455 278435382 847437740 78151175 191955363 47805875 753519870 621177368 976664756 13604903 862647708 521031958 823414528 898312333 910078660 195798476 360042672 841235653 967069931 168984467 540962884 450800993 949467653 711279905 924534008 227779880 501141743 167286552 773824066 331277381 789705897 188412997 657669569 297217832 768582228 766730831 837866052 867326322 940371520 606356441 809652346 785876300 900709381 162449954 423248712 121544736 220383002 931248256 961890369 643035333 879594480 855863249 915192199 863139691 942218073 147275842 202083758 579874196 918254041 745765602 767516231 512140567 869600687 628809990 883545962 834504749 844893821 854040044 908350013 378647088 805336173 670019321 672660117 202932917 737145246 881253055 953892419 447183788 744407852 675104816 987719398 51499762 135997779 135500295 383982158 261219503 831677696 241062611 410641773 862168195 874795976 118234859 899793645 177173039 197172573 648752144 695376474 611699548 627668052 127858153 911464546 452119980 486781372 487063876 585515907 598636813 946996405 726311092 985677303 663533710 908816412 844060065 845743946 184700380 608411233 658892487 931126222 677257748 791690450 829608274 833686116 797631403 906027602 399542766 650622737 931064535 974695135 49133648 752915646 19962434 696507408 661805102 849454973 866708999 964874375 944305485 962729026 338385558 591389662 727802726 737259614 411182787 919755166 63253069 763024262 958430893 994172250 560807760 657673475 383571959 411494350 204811558 654918454 975676022 991612832 740131707 941969015 584031776 913122311 417245941 657149121 778212082 958264171 998274459 998766003 362804700 937481826 478643909 837442804 556724573 797093544 825906666 938894767 634589825 800642904 114142549 355677069 83912388 350930543 580337118 872176754 489612985 657163148 210846977 511011549 584461573 717227491 502746349 516088101 900554924 936663260 506200175 762280542 832657235 987779485 972079586 972646410 633608613 801937968 129889829 298018748 231365556 809163605 675733252 777916974 884861294 932479042 922659540 955862630 842189742 992617724 628709199 634500772 82684414 960790133 472921287 615347448 730846301 819972733 883677338 916176881 589939438 753215460 765277901 865388748 195169210 668088993 872626764 937709391 538641310 670969708 395900641 860665963 793283293 837698565 911932320 971029251 992839898 996146035 619152110 646898454 163078981 478004896 539114111 723534285 169408599 741374472 21967313 517745436 952622609 990826663 391730981 752865051 117320466 991570123 985425820 990312223 365485136 562252167 52144328 451466400 393528130 617946621 787167184 951411863 352804283 692381481 492250519 695116410 757995994 872131129 324943698 496675903 671260281 976835420 306434536 760529157 73442902 860121556 88452079 104275106 757676258 932191477 791274866 793006748 362979240 505672751 248336920 257025115 74023297 826169741 240340764 818102047 907857005 993448370 313234286 827577709 851743284 997596884 190678579 698466267 481192334 787251666 498253910 611408850 592641242 765311065 773640812 971000302 94410999 571379943 786705423 843384412 185156331 583730573 380459306 646696873 228710630 794587435 235643901 843602756 434488277 870649139 171797754 273552432 19911893 653402314 667848097 785785789 38926615 467474416 698904105 790570665 385352750 491195612 735932852 849634872 714055290 869562433 147617246 173145208 89209887 771853631 273397093 503295883 818321408 865095053 782880205 823517952 873136524 996305108 505101081 569143277 979375351 981098678 817580812 931173053 893529323 927536283 187601984 726316763 645117498 813675251 419205847 464193353 278354280 516083522 338827914 799703579 204046230 341498658 447561395 815690509 607275264 931339477 485952040 883558657 738530004 876438704 83668069 321916338 261742240 925798196 814259306 895278528 374113734 911957133 710624570 961757070 265601652 913085913 782448209 988408849 440244491 559229978 53531367 211703906 442119613 796590024 603937036 917644886 240275193 289807602 258837602 720595990 467407973 993727842 480162588 994012251 402034970 538930454 146230265 543054741 276382982 886156608 619889100 771875161 827404840 986277927 8791689 173556625 939362053 961934597 212514822 785637943 835980364 967869029 343954123 686964300 975978946 978278201 838328408 969543251 358395582 842275886 473376137 755338035 262234963 609527056 330219250 386430997 556594783 595330334 159317369 615575432 618343763 621439904 661299469 998616868 479051627 760860023 580742156 625274189 950707022 973939871 208447341 872038872 769040948 896692925 227490581 795954123 332819189 740584489 263554569 704186640 557022770 768806485 22978615 415817659 833964062 968185831 520541964 612524498 506797122 859810261 434416974 825127270 463195389 801606278 947486780 967155189 948821289 965032975 597229460 610623501 536192748 546460339 387063751 527965313 379726112 601538029 950379693 999686434 42945592 701701677 689887249 971366144 680992251 745687990 786869119 809214494 277338431 465269732 491650262 980160419 390438655 898796393 445624436 620226265 645009272 756495825 45289244 672886324 361061648 604754192 894885626 972317792 866133741 985479697 639443418 782649294 735787720 936413488 20622327 518643897 646294580 889406309 714067228 891651262 600819008 911856855 7018706 262974628 308701110 946616981 844869227 931747915 866247406 915130838 262346204 703406724 157458321 745927418 705917742 877291401 718978744 910269805 818410888 953823367 729792937 801696454 651140419 861404748 118507370 657799626 760694904 922696389 121041344 548499053 422984400 942050454 931719670 946063232 636826821 662220644 678459258 859121468 162240947 330959996 462111434 551708533 274274538 720643115 96500284 473262759 660242802 711877350 74908008 791747503 578368108 660892108 718790681 757883345 980857084 983020684 64076478 414838520 541223404 548753371 213339223 809550398 58833485 871304125 465542525 966157881 188090477 972809504 169041050 772095758 58285604 490179845 304489934 818555572 238468471 765937655 693475425 860158857 379293240 948626916 661624965 733577901 855952330 914086339 874455803 942909488 211170903 305042992 215172468 587040366 587757411 854562781 154840648 784016448 566000382 792352682 414007742 826091489 543010767 819397042 622842052 795904925 101842585 232809676 366749849 498389623 684260828 983642704 388672697 531677856 28198262 991480653 39220785 571276120 919643541 925374287 94861319 844563513 971229174 996377732 718797052 919927809 944277880 995460923 808320997 878674489 976632055 989491981 827635344 951269270 526063340 558458110 551898880 924262247 559225237 993441443 710033691 782060931 737362604 837361396 888082601 913270647 581659870 666434251 238070526 995763273 188403697 889623771 726515081 914217313 646091594 713473822 625547369 900848987 700885850 982295500 410876627 753051702 491264070 908423919 613538140 886694538 80146232 967449461 29109482 562487218 972777108 987032106 605936504 936051465 73072833 125959112 846875491 852964541 802513876 965474085 516563089 920203415 446026129 535858919 330610941 916202636 363275247 869505359 149726652 544921234 326281235 556053821 131637161 498933036 853565918 888519188 629827493 933545564 831904783 918425883 809864521 924001654 270061847 937228469 16222622 891303253 108232363 282281413 415077953 697215581 258623566 284294813 432528254 688055872 686900370 702488072 81524678 404533982 707425390 855274179 707964169 786612803 413134723 651287342 22297446 807908572 249941121 643823805 344365161 488919425 367106196 525892151 691736554 750512697 572929340 692176114 511757289 940082754 519929142 900456441 15133804 875328698 108077942 795945335 314593074 485348941 219087076 740740329 818691752 937562785 578327601 861913230 81672714 585415771 548651684 662212625 664355757 724222571 322438564 348078209 219376133 739246039 69091589 776390328 621224027 874724121 527424759 596782288 906257129 981883984 658119805 944745731 858872525 955784701 701664429 734532852 101650320 993780179 36333601 66871765 3513351 418855948 917296991 924561813 139760177 563481805 161104187 877988317 541386111 613158197 272640319 932257019 299642825 489937142 578613682 714989742 26819275 541450688 640757946 691539255 978905409 979768540 549742036 590180711 791244495 926355237 485009587 874319625 432128825 597920617 649542597 824654766 930353027 976886545 509694795 792323645 819400204 966511455 871082507 950866695 73432100 637443617 957714091 970778410 394896479 696803413 95689008 769800644 870971897 974263820 559263265 586584529 328062463 946776280 48453066 638997239 486715304 952344419 126727402 393324180 574284734 952148873 169145732 957266270 911501000 931949231 422128934 622223157 760961347 854492012 704912662 956855704 395155574 655926354 362454287 664864671 1522481 144986261 297144391 652071249 693432991 994568070 748906686 917402501 33447389 187908536 209010173 897453262 779002569 819791116 994045113 995142361 676975223 797764499 99147765 269212539 167110858 761105166 699550557 899553422 352584630 739390427 803584243 858249862 63138104 216330922 488210149 722895796 847434815 963984759 244140355 856594444 209799964 345536051 80892317 235940888 665975628 858652501 167566267 852729255 209730336 766858731 728858881 883404030 588939996 696673540 63551997 325079961 811155100 872220356 227470381 850247853 800980729 991372211 573949994 655640031 102045719 825555456 256523840 355062179 413816149 906943581 832350154 919647361 33359777 156943149 100675903 645843992 453052074 920504685 516483178 819290943 672089044 804015367 869992849 872362127 676156444 946736038 277208000 678913556 928541107 998320300 972279715 993006564 554151252 977734837 883242513 965554607 450654778 658262907 29018731 83169492 582354784 899900743 16908908 572644757 615723330 718916806 27143949 997243708 91029737 737667706 759406911 953591561 822558371 929473753 288094536 460790849 31466453 36489849 348320197 558713832 990873607 994333793 419460691 522061839 106322764 364814006 855112305 993263460 430223067 914789958 313213905 344144301 240401943 832961249 782625781 844231543 223247386 733455338 790225627 852190932 725770957 976999536 492246515 711278242 629036253 743151106 510747891 553162857 159373822 586392315 918882603 921346445 304557442 464952019 168909403 583148756 449180649 998031034 375295763 419929886 308429852 763718843 458549948 586262970 582229927 641253632 418245905 684561988 986224282 998751512 660559794 761268557 681676586 791064971 134691619 766332962 250779720 638050977 298391733 919156334 809020935 979055743 582734172 847016091 192727396 210301245 607296441 804024542 205198305 505200950 569570203 945080256 758103954 817250235 405543535 793325982 979577508 999403495 950519485 981050783 103996985 703748492 212683556 909393111 931590745 946857168 432342718 929045497 838038258 936115084 988267245 989529846 354369797 545356225 252778436 534173200 864564493 870109536 115001195 809629052 881559892 889091746 353310420 555888064 446587165 969575213 945551482 972403384 79116117 399973281 997861898 999691647 93449054 838618599 168998278 224956261 556905341 878598475 500506148 783357648 266830233 381196343 148830555 829100244 986580843 993306859 248179904 570193467 507749950 769171971 705168068 714802980 967316164 997168902 858893807 865273396 963252586 984200035 61189684 854028694 131225004 772755995 738660164 944276198 59996592 97813469 351421079 376155483 256872312 702231019 629337168 897282951 255511776 667621277 658968187 762845160 278611507 760213488 627902210 777719155 95157506 761113194 666974473 960293564 511531367 621703005 124643469 254511764 575370617 720254765 907737198 932020722 618686818 644122236 33180435 58270744 934520591 939702499 331062063 720266721 990014195 995424463 850695482 864234215 369263670 778213572 819298166 853275247 926870214 967646301 117070305 679532458 269451264 470585218 459421236 638204941 176596081 896473678 805226196 881304459 863306368 998123978 353073300 720594857 626472590 902171027 347064127 472854214 428316163 657393881 653343897 655372549 19848143 886598536 692544902 879516987 399777785 638803920 410293348 547170491 483202649 876739323 148549858 967222000 390599077 399138523 610127700 968883011 446346838 728896416 619723326 682775842 306541887 644612445 814211495 914576215 309427804 602728028 436227550 770689462 818072171 906958138 462984975 718373215 828776670 989423472 763353756 923942539 176963865 498625629 888627358 933094935 938214832 973216547 313684822 573807115 852507029 859501567 636476535 913913410 386143896 930372133 508239131 946479807 221249946 731723867 442062366 866846132 547597182 948127944 955475517 984616937 343946704 462389227 638547316 699427249 444293674 622119826 594433033 632476659 507612399 819823619 556938362 790551541 51746581 309129533 345874452 909363578 96872667 656307916 764900536 835471412 818784735 954531539 718545120 764877331 596924987 987255970 951590367 969758010 459099149 631411989 941016811 989498731 777787514 827222598 873060269 879800128 133249623 260279820 138215857 262146318 966901550 968845991 781904261 799492036 674909009 698330288 574519027 590541109 611798145 630989832 853534296 868828544 421633668 983751746 241767358 914361255 553444316 981744873 659425468 730103022 464406757 479339702 186932554 218995006 879465678 986817631 417418547 854704338 308879480 615150102 130134870 227386216 967697537 972665575 936995242 970992395 773202413 820970445 861412448 939155313 196140511 585941809 185066352 782714443 73778190 220577627 260745515 448253651 347405607 610586080 525977756 953977908 287187438 752337435 13544117 484502830 286473970 378969690 362096865 643890279 266770834 402068743 205156357 571900460 223795217 906178713 303064759 687698884 299681069 823585782 75002222 775705608 58171814 150848620 698476919 826956697 530749030 564856479 676686980 800366616 1194789 167339030 489156130 997997609 772154882 928080447 950660217 979630322 83285184 208319950 941938152 984901431 714025565 996631098 166154276 422761019 283195849 669801061 882731776 953282942 214868810 288924025 949040790 957415890 348342580 606560070 294358770 627393614 459754337 550197234 798065914 866361897 617415766 913720712 770084951 992245272 276826811 379686104 298280740 874896021 60177519 964331195 750882824 801004095 448148653 775146112 171724038 999682481 44535493 145038242 852796427 870100963 980987216 983277524 560378788 624440771 2669613 778885824 792350184 978487607 43747246 51251025 430458822 994370483 163942785 821693975 811439769 987429989 530273022 749470090 527134347 602500994 720935432 923018676 740529594 754768779 244147926 485049964 620285308 882698775 163808167 589123588 428081683 583859511 265960408 396849493 535975081 671279198 846705207 885316839 850117725 925699043 28099253 522911271 457426161 740425471 517785607 781889660 604816181 661325489 891059884 987807744 362337845 981473436 623928911 839633536 179299432 994700923 544458508 883036002 971100968 978390737 977689387 986722679 701041913 813025601 777696015 844262097 826891176 919814203 737919619 827021553 708576139 752549520 16369863 333837469 853691309 885072461 983159145 996895461 260155684 860340131 264363786 390182793 578379994 888772543 573138880 626344405 779180585 915731951 593917848 842079445 817120075 842655646 91532318 105882938 320853155 508058055 396587704 713126165 672050746 795037560 975450263 997725475 409137093 432064597 446987883 647376208 799956778 869063821 182214016 772671156 248789557 511125289 70913310 713636797 254655048 923974644 444877911 543025155 832442015 895977420 433730837 737765300 578471666 800742218 24048237 517730295 248637201 792909771 187816942 602520785 547785508 628918929 190484283 439007622 631907527 976034061 196443708 773520080 408514939 533356303 771287726 883229960 655181907 979032800 912582675 938344902 237364987 773288131 892012463 897891520 390387908 501176443 363589452 451015426 613673872 716541180 82760512 471509554 273895470 883634108 727218902 893108307 610044930 676420586 411658787 714060813 157531391 526698255 433840240 507296650 321780640 375653082 642676706 756644190 551040139 605508475 715879842 982995766 26551284 640520626 175663171 691382555 61959417 390382192 715046263 999384101 192541602 725290473 197406379 847520582 904838865 938229880 815438278 862277438 509637698 726884741 630733138 792586073 791796969 865723060 155827001 229624928 734809285 829933785 141411014 512376003 288093229 499319288 445667682 474910225 482857332 607146390 930964919 994548368 676287208 934758367 127915599 396887394 614772497 685500768 918427041 939026022 843743550 909230913 617118673 632398768 149618171 788540126 148521668 538700282 352913977 440389601 287985618 761449925 179016309 515849316 312371281 455505072 188500433 599839245 1594075 399615580 324715495 817268328 105040815 902039796 977533500 980241082 431890639 558236612 811950680 880586293 369156097 944901469 761631717 820533462 401920525 678528912 108328680 388532238 221024607 364967467 225053996 843171027 570229630 651018633 841873301 882382920 264897811 320598384 139632355 538513056 231105488 516219836 732094730 907150977 342830987 894341808 102633799 707903831 447297658 636244803 141660535 833268659 470521814 613268638 936485854 956197364 925045189 963727765 74161883 969513465 695138806 752352203 902642980 943352218 910113435 961117874 953916596 966352537 701868916 781631391 365013225 761439941 896339589 996240232 127630064 960144739 837938693 926060892 38245859 666795604 968084058 991315027 101428265 268035714 607070600 859898231 659897972 879352065 556258687 824010694 342312867 968989433 319956825 442885383 630381984 890615233 979018534 984496016 974183008 994750629 320816130 542047525 656681095 896015516 988900405 997825770 708282376 793241761 691094810 980014310 779507877 898986171 566578811 822077832 286675946 326105442 345942654 375277043 973186917 989522526 670626104 937157466 411549788 607644118 168122491 488834832 644451123 729977853 238891788 831633099 232008161 239217330 723543085 944278534 493280662 970457233 570285915 593919533 896004512 954118345 368179763 675813382 441155373 815306935 811061237 812300138 631837751 716039083 946548644 969662474 286527767 679396429 538908377 987284057 456729550 700910223 909771303 947750780 802045143 881490195 524657456 742442469 32208918 67536232 85956368 823978371 684342890 798687108 872780558 955519561 214687675 258019046 753464982 887576793 384873193 530359825 799705964 906566216 228271965 495261806 324598880 428420902 580927542 961612448 782939181 911715629 519648855 553749313 659940127 821199372 979148570 980182951 24229506 76751566 561418879 851920497 151566594 560711253 715445343 996247313 385149025 974120437 449474723 620742780 745545540 824781208 876946470 894189392 431328169 835740411 463569766 760882546 156161535 586612210 629659466 820574128 474314268 739854905 310711456 814247365 521934866 610540852 323287919 512235494 89332092 843752948 401414593 739154742 56170818 613178654 632439491 725017060 481689991 843897530 436918505 462587360 634970880 704648970 35290726 335660209 98879748 707632382 902472280 981811457 599457323 952366604 774550737 977041268 456241408 890577849 462959132 619714704 138142373 834982265 86097449 712127894 718019798 846916046 312577196 603353304 575863487 802067272 991745679 998379188 396925219 588806779 748980176 941326865 997784933 997886570 619212634 658880253 982472489 994023803 439552607 657530890 71725809 825805069 779598101 904527580 603584976 719101732 28793978 117186941 221681005 635265019 979811269 987379142 170297486 321961113 403906541 884539968 389202351 429707416 420824223 760656611 725318387 808200618 444565961 622937148 98307629 956623404 773989252 933701076 545100754 565095376 123864319 155083738 125249855 439683875 531510585 889401651 699186203 993251214 791333032 917874410 974793449 982649133 703377917 750574422 589058380 972537851 147607419 416255204 979624877 989604446 155367939 435588571 839108603 963263392 332079482 490981682 888743467 893485944 119559844 886050817 627321560 817361302 569498259 679552368 270330226 507600416 425822943 738524117 657590925 718223243 308084052 781935389 369809640 375240926 613962300 906867059 197419094 950091029 765946587 892387400 441930996 932818494 963747077 978249575 603295874 608812667 291600155 501052218 589742314 946595977 889142960 999598112 398454985 858717998 902703876 994053942 649602050 976937732 964045141 985279197 729898180 849549140 447859758 798865735 378585684 811192732 420844550 774574865 598956721 710856934 539730662 652975616 92886616 677088452 192399805 688892080 925162623 969721343 92987048 451301317 648414576 739261632 490920264 773990610 243115039 661963361 13787846 846619857 660338030 973204284 964721505 996087705 204991417 872398090 275301329 625774504 873402214 975623764 651578271 922344107 198094502 976454927 79028245 644871194 436722465 775424654 308307023 406562608 98433377 240732094 64935291 261869806 242791358 303855194 792517807 926188321 622458405 738659072 780556567 823524236 944332852 962343903 113022954 152067401 805170894 999214302 879291519 969667534 952875772 966267094 559003572 885486326 249718985 306347702 845402400 964791527 62000142 219094942 875035007 908076260 650496292 924636992 353618047 682443563 953877251 986047946 302587045 551199247 100304285 213736446 309123084 320746701 87204879 559511957 910298754 922681355 874788463 893542426 41300550 196989264 434368638 645516128 581746785 683593438 431941264 923005221 741102795 923152306 93115455 557877329 696111771 894912853 477225603 890361027 14671065 257327262 378286262 584598436 720069098 870439133 851522012 960411644 603716228 843416458 384506820 776075356 170776517 306393769 821353626 951688105 625712110 883277661 626368860 986218027 37277167 323028611 469441576 589061806 646854944 781398814 910347503 936556006 6132783 162303766 608611771 648419651 129592035 237936858 489155621 573139092 571507964 898497405 267278553 830634350 620821845 889802999 402111921 505688547 76885882 903154579 184958375 790073738 689070405 689291300 209081614 644683297 713653813 844318822 151201639 690744317 839130116 949172482 959042002 986405831 106130078 447425967 339604585 339986291 534990291 958387951 57482818 967412561 817153930 832358691 56192227 496167652 776391015 970807128 774144700 999386773 525529843 945830002 263534800 789477969 150093271 782640330 321928648 572670141 818804897 934846646 112603322 473055282 599040902 992977081 532832888 678251506 147172072 615430073 743719682 941728480 280040316 556825064 717692308 731268438 57950633 994557178 40704947 508062498 275914400 433577313 771985768 901653097 290327898 723707535 632650867 827056138 816766073 948345492 327460742 572796220 957385588 992479364 747590067 768004833 129348514 990634253 589615593 713970590 568736660 708517823 75441033 284516765 31014428 36988264 136099468 398780946 457550795 478563934 369064445 517769120 439620616 586821883 616630247 968285750 479377124 789803835 676053268 848328192 599392663 836269589 511540157 952707802 714051194 907588424 866613509 902712625 446467858 798416177 65126521 811085174 780498449 982184876 77890422 948394535 463944851 737434576 456531976 710292743 313178203 580214204 438209884 965434243 921632216 980020028 583659669 714711452 739369527 787156871 23960134 765553376 73531352 106164079 217769209 632912570 41320702 426424660 730597180 963695135 180125442 738199141 907903688 991670281 407874382 541232085 724755936 786071051 820142445 839574467 268357612 513366337 217917314 469107326 801127175 929079829 894715943 977216862 635443577 959287195 894439819 976296490 551857778 698598123 925631785 958169675 360880668 892976845 728149537 798976153 955579158 976566255 913331411 973735597 357887427 531367369 766269976 961957437 80361997 545565507 850050154 881295561 456813543 952943841 622298095 997606040 261137497 691718897 957421810 970149861 81679344 803640206 322613818 519892443 959319532 961520674 308733775 594009645 345193937 440570634 40725205 130605696 248667816 412491590 846752544 925681829 129377960 389006641 326254628 448136447 46245073 587717025 702043395 937738240 526533171 963987654 241089524 323701959 240659406 714156789 821668417 971931359 543748060 973636995 253501991 346583036 798721451 805531389 492674332 560786405 283341810 747561444 609824936 944072766 425602009 626217818 947163138 994452014 936133980 982800868 909285006 985521500 763757133 938295514 413496842 972639121 441734721 479132705 409328872 997179032 874233585 967537226 539599070 788001433 457443355 703456273 641620365 773488641 59637834 426995211 530336845 733380438 599243180 995807436 374263001 999267750 717412846 974748516 224690366 784950315 246134227 991689064 417958214 615297217 526901322 794537514 240057402 960651571 809896878 826136177 677508415 909459241 775332984 944023841 725896876 789682685 318552539 523221995 442780233 952562391 50499802 722287872 230908223 950193103 41163253 773798074 642066693 644143341 738121839 875718584 741278135 779435075 748626255 756700464 776415699 847216627 976550340 987102902 518617289 687814399 206943085 210433277 370223616 870643932 47312606 603673595 646865228 702981686 2261201 170115603 66459443 887357722 780986673 852631810 87685386 303381754 358537370 848456073 49401165 463539977 439547431 618347070 194507434 674383928 691870866 759359029 807488654 862830993 668865546 803179124 962766540 986280672 409282991 841960572 995624613 999050526 550102874 936296348 568960982 598916933 385736544 645704548 548535965 834405511 346869169 664398273 886826007 947787451 760733947 777747026 932715036 975937293 977014442 987840980 403440314 810553443 517086972 787473557 56498113 892070263 356291296 387431006 583357420 864195166 250308644 685041933 81262127 149056705 323427864 372611683 566936009 663281311 39607074 710004394 112506126 122847229 521918695 972526971 634330714 724450583 539311047 582668109 850080582 988923332 664373728 799255625 81726817 630717498 960190954 966138065 830734187 926471348 853874714 913532719 465805894 524204244 504638018 644106957 977558325 989717300 835241283 959214721 612099928 925660990 354342473 991251449 185952214 612786624 275865279 912093136 228927916 479655666 214154555 654013671 474510082 797355473 583336411 947750289 778731479 918600358 414508324 983797248 497796535 792242983 773171971 801553393 160167741 526463334 555568089 947382955 781524738 878851635 14540438 475059396 340034189 998023401 543205315 711012682 247165817 715868780 885749634 940563654 689375382 867131319 37518108 718384514 654072015 840586507 178473384 194544517 814538670 817188090 267838042 803933514 595797785 946111908 919051736 968409180 868645936 901340838 613358470 888871999 258530038 277407161 991374069 998644353 866505012 951899220 764076195 768807413 589041754 861744491 95024591 902264366 914878408 965242050 768599614 877043265 379188601 547087178 750956131 885763464 328587852 475527344 852746951 921810103 819396569 928445987 609173303 721378093 796271183 879370570 360071179 931163083 77789852 746859633 331985168 988004376 19133323 167856001 814790634 960502229 968140779 975547476 555974135 935710872 973895041 999287753 991531714 997549925 398764398 926774464 753601074 770282844 605499024 983592985 974342111 983693438 753615496 958792437 198559287 240195775 751753875 837900548 298680246 967267067 700608925 741607646 893225716 924976883 937997972 961869794 471747765 889118929 75795235 482493714 616688779 712163469 879323130 980090679 529571924 545767595 200735481 254579735 450814580 739697981 967301145 996707858 118498103 321815258 228026175 369789836 364033893 674081106 775999245 798359970 609762696 652550580 627383170 990327522 308448638 746435751 649796274 966163337 296705185 470660841 622301018 790506091 751727562 832218946 9134764 921124618 61822194 509377084 874212347 899853020 321221993 503347950 976899172 993861086 147390510 222131659 168074015 488985195 536932331 554242175 272029140 384572880 56709338 742351778 503527053 751909600 173442526 861533590 768464755 968366687 594890795 927294752 707322372 834380331 144702711 547313883 190804587 747020701 391690498 442336263 653491842 953974885 582789132 813697913 669162497 841641734 965435037 999990405 891904545 967769074 343858726 926859424 996595954 999435650 501765927 575786923 875732173 964828178 412062415 649355911 821042214 864399047 351166689 659823942 931592730 956913404 482072996 716770554 724148482 962864742 99546352 882908883 428217463 623578807 681825894 949502860 860526207 889010196 103094866 480304208 792245790 865778561 886688202 945519316 410020084 765250477 736156725 888279710 849641834 903284605 126066797 615350538 501302593 758815570 4363034 686761609 527047028 560669183 869216080 946976033 216627772 586447131 898646621 980549728 94467883 103650741 742155153 860741112 445895357 700515784 111088175 190794632 218891411 963985550 546351479 861456079 317915474 525830679 675127153 948329344 44463670 203662937 549140009 778862251 978015229 984572731 3905576 807796449 869242207 913392195 997335295 998546471 792390174 909275672 98615305 497245895 506205114 931333125 199216737 954381860 230062778 282568595 877943222 975487195 2185469 245289202 430810786 954161385 509686328 753345863 601663163 963184303 881288671 961435661 899579881 958398242 430504961 584293565 98604278 521931759 9492817 492546609 261256153 797192569 421110495 575248564 702685390 944833934 751440056 949915973 214073920 651666064 880639612 914978056 862170766 882911811 162191760 232200361 348884858 749857865 406449906 894057618 570005473 670783431 139481740 826145663 942147936 952200358 755039219 797124577 636778650 720344040 780654748 974857538 913728298 916503476 420356047 990163816 296140239 672462794 564317545 790414683 989200651 992842410 613644297 814394235 707368760 987824673 712725091 900238163 823603999 894514539 898819850 918155203 858797414 997382745 509079139 581988437 924062029 954707882 149226718 720381907 309851837 686286223 316993104 468530395 258323289 348668227 676431195 847009135 972027410 982630373 507410393 597600596 516953052 923461154 945137334 951466847 406609320 795190809 328597016 440235625 440305537 533906539 652888397 797692279 372390639 436438835 785897512 907337353 608051541 876028385 549991336 910896398 530715305 758846418 288739258 889293948 965765561 981065090 394280821 944344609 156998172 224269530 284116936 818182137 865838055 943615408 92079807 856458291 767517039 802206117 201398804 587716200 331312707 332527349 301183793 577982065 593905468 699298907 356706888 507264810 6396903 993354554 894223480 990961939 160764356 586616095 837381068 900722773 455425447 675260495 608508142 905806981 640862723 984633580 262510586 724876009 157118688 507515728 875890897 975707581 234127877 844968621 190268258 662109955 227478758 586403528 956162092 997726300 877977612 939941104 429511808 489044329 423765959 824651740 635479332 790640218 308378013 485187678 917988142 975227445 464952393 578384653 504047869 929281684 960465170 966406680 975404548 993209084 802285943 996126285 765423344 888606668 534595237 800569051 965746312 989471043 542157647 961727720 425684674 678683869 78179914 482761617 796228847 818444281 395346704 400754113 858303480 907268107 101244754 958830886 237154715 899981609 108328420 125701143 755346221 802622369 361257680 660318716 427093702 582857147 67219180 496112072 859804853 913792880 561933975 769927746 491078687 998587325 708085474 735769923 205132174 292999668 848107621 852816341 952239037 971765615 948565477 972213085 774285949 986354366 826836383 827737055 749901246 975077719 809589119 969677330 726874332 944440043 891055059 971903678 314910136 457463130 643726504 700041061 217039387 432436276 997833138 999214843 64878807 338847654 897680330 985673215 110111574 669093723 175240338 821525535 743967439 940917734 270568037 717665823 63974989 255227708 296954739 587321825 993410568 998117847 150083219 585648655 489112036 935436482 618256130 635684407 158831042 371774646 105877321 990378623 708567479 914357893 663252695 854142756 872677620 991821704 924966055 980559605 546765649 961393414 199362742 538200716 691624522 750944650 67016878 446039277 984025657 997192823 154192983 551381115 272850850 816959369 474348119 536110603 287698315 412839574 224079754 397686316 844426650 941249329 683956319 859672266 742274195 957174822 800669316 993862785 960798023 967467296 115079560 222333337 153377551 185769214 968016387 970990630 838151943 937847787 722159808 774353449 817341126 918973222 930312433 953750963 167393796 551346401 405658633 538452952 617307573 706790076 247286587 341936288 47954917 716522189 675957194 801131928 185087502 673535873 653744412 665917650 465258062 531411247 331974234 830783458 618042711 709981779 451752151 779484480 2189034 937179650 576842367 973690377 137824381 391260515 954278356 988539584 229009034 446100457 873975033 950515603 699706118 750719627 847228801 952447371 937047134 970435561 902200225 954199425 902570666 993860426 561136223 779945834 367018791 552783844 72139900 466396048 942542432 985955820 116380505 990378826 427716775 542042234 254443551 617894972 727107790 748091289 158670097 760299839 229100489 501949278 948562222 974607683 43131728 580293880 845351168 916772304 224098234 247929222 977688685 979046438 755347598 815255168 403273374 944554188 334968267 444963523 352880464 656948836 160785107 699177366 640020552 804191950 715901259 822712528 314685507 713602824 491220679 781986588 89117640 193298733 644185562 926467547 542100084 967813367 99594234 265703452 344355439 774407654 689785410 738822436 438137737 898247699 781707295 876449819 760962054 785984255 777543569 997791613 753388361 904666315 6196460 41624212 155969158 162220229 196663379 575010402 218866803 507965995 693344954 811100592 157616698 709056983 195468171 809936594 831549893 973248100 483908890 992112785 805031518 990181197 95897924 508399810 466054687 869102321 882424462 927092499 731262098 766729663 908204542 940443291 560264361 970697852 636498583 832561070 35481499 159939248 478840663 861029156 385716720 951683312 191228839 837828402 702758726 899271299 441320661 782622686 264012769 821279450 349807223 730256068 770419914 943512824 777991217 855175558 318291046 616956204 9335256 247212445 30051675 517150055 250721014 752474077 577960855 945976915 809324114 945265295 746312577 789799196 207832485 437836113 963815776 993260805 228049886 604081771 482436576 530700166 135328430 922255650 499877870 709302536 784736500 975167211 216266182 896869187 187770684 364373141 243167792 988732050 846854473 992342847 745077989 799305530 601571786 681911569 168544674 473668404 446434848 540833404 131790913 959438509 284343033 625796046 176650496 771020099 509989999 885954618 46355584 954548483 740380178 930752754 849506776 930156869 308634859 706649088 955857723 993379981 238910192 624575071 724491159 915108014 298112011 480512552 898736946 961559835 654007827 971747867 183108393 608976856 509962713 952284453 768207622 939276385 146361902 806236576 263804230 675847759 225248337 548067751 522096395 665147424 896790319 943336286 796226871 824987451 773715598 916157415 384862048 998244879 926704342 937107872 646219432 755131484 532156105 863427030 720783262 928740587 472646095 675297163 62176844 720658486 155826928 981485871 152578323 354720974 304565418 519078500 210846654 460901022 425243550 493739074 508657887 651559526 851186174 993083917 976362542 989914526 720542148 793555244 211983081 942679215 468321861 840924249 1280639 914660370 692395804 951572250 806899529 815306167 719441065 999357707 448295391 663609533 695093067 947230089 564335790 602928051 735777195 914512420 980635945 989567829 907542041 966087860 873231614 925530136 127313162 225556091 731803338 807875132 355853537 971167903 326764737 809355564 205929135 965314722 650417612 762301234 957323693 973241566 855962927 906789682 195032759 435533230 18271283 183732971 207194477 302940559 454366074 588113472 424684249 763862543 291180295 522968234 129376292 509489868 129311230 331826776 469273393 938754486 797696655 856487960 155999861 522082036 721752321 980078251 100990411 705761513 14147352 315773104 443238168 810942890 924954165 984884355 491651549 514385678 246075781 672241635 551862975 834572822 136163917 251449718 147602536 571302435 616903286 844523706 347547112 351372053 152085729 401687371 548866524 696448922 824869704 996157107 47892574 854237867 435977104 918328765 173946654 368612384 857671510 982820509 794802291 809731423 962823921 990884409 993150777 996728520 588863079 857158784 473273297 667068997 394263121 951105143 170348703 836535751 540360415 659849452 182611005 892265885 930486608 979181413 201854585 874889325 322835442 331415913 711839605 739142282 326626721 787412765 892728933 986464080 314130252 424024100 522795530 602849742 136839626 389191935 261797426 719266545 819872233 832820517 868167501 987268595 378905953 462380894 572857571 981482625 286090417 489762111 609288004 728806245 658084245 933019992 443502713 518870238 672542998 925922970 278182824 824505287 427162932 977866167 74342534 916522581 813222545 879268600 458198743 658096775 407215095 896514185 480112607 510247769 727892640 938590479 158297103 875091821 311423852 980104476 464175164 883390344 704856039 828706609 830173850 961235043 787108418 883495772 522702506 941809894 297915699 987614238 168842951 435204463 501203472 646488234 637948680 957460064 822647016 879336542 481731614 667229739 62895492 206225101 420372942 939398449 766118869 902445454 913501496 959229288 921665394 996652035 591563329 900064492 890400337 984723157 601146251 814821265 101028916 362311888 904985537 933630790 254710291 877311165 478886047 886114477 642346655 693285015 451900555 572544677 977881019 994728184 394240996 796982431 773625803 860915210 20074645 74261603 85560108 958571524 690020974 977351583 594339025 686980285 199428 798582337 389068432 773233099 347072432 715802576 88973553 916335322 501008205 735892438 510344706 704787517 946707879 947432903 820714736 958477127 21488052 974942435 849718065 903581789 146825319 360989874 169645937 690598019 622899117 933950426 576870309 925146776 684984386 994953060 783947414 968963178 457286995 528257350 927350841 943304579 920325701 994725001 619285478 642145989 52368373 636492188 519737083 943445768 858193148 863558188 636416357 829925782 678873558 980298068 722351967 877306823 588165780 993117392 850303085 933373732 664531495 906460668 348222887 979900514 717862418 772322212 83227975 658277005 621125941 914179597 528758757 722220362 497420994 593765575 401282974 888127299 57634694 126456075 655950679 741699759 489854441 843336468 361606726 633744732 960723204 965545426 885616101 992763453 862231282 962872409 117824848 913753324 599752505 849743119 266107474 884807909 612427495 847368328 731753877 943256807 309573464 422585931 838573726 895881181 195293980 917863845 433483035 784961448 30930672 406869452 848099056 943128797 614371105 935874316 905713173 937437200 477068719 814898556 421570804 709702576 362010174 870414226 108024905 969603369 282165838 894406183 904715149 994982858 184015416 734186261 430212527 516125873 531694735 874876625 558474264 826568564 894490916 940649314 265901176 484840139 727392642 968764266 118336497 833625762 856772303 857676016 74724390 297370972 558875783 662195946 569283671 818450584 686532548 885909346 267395909 469781793 152509688 871324152 638320983 907506631 183158635 675407747 430590157 835574998 621751884 854437401 285927525 431722809 351027477 774604435 682008297 854524329 389353236 566309146 967354686 991496563 896300353 976311836 745416894 925550496 740205002 985561223 578381019 913419147 426955027 710462705 255912536 621119066 623108186 709076044 724457196 739337872 825500855 935187464 875767656 976183999 417382970 881196646 729024880 743709868 890411262 989405930 849888430 870095543 284415487 633729848 798563257 970717317 781797863 961131939 320806266 323318995 155159760 757122594 679228952 861464854 129419125 808873955 392571331 875833497 633162688 729397166 327833516 787463119 614672409 952687803 154479952 895683883 769769676 857624183 866529830 878156902 634630558 824774928 748919338 908696256 404098287 704612351 267227364 579467800 574051065 788821943 597335156 991566311 133835902 865496298 271453375 929394473 789790309 995758758 51035736 962025375 844106864 928348153 280588583 728123864 149261036 790632065 33576407 312278813 651138922 680764511 887697372 988151007 349270328 568780042 957899487 991640396 129403523 740886929 387249696 546863707 558856082 870534463 878431344 991940075 713509682 895308877 219778471 674174532 75328492 701990559 919014071 997457385 6227480 182560887 484845861 530383860 656244670 857824567 433144186 989042472 244637990 452678062 378384484 772217650 886117011 926947893 497091886 591162905 144670565 771153817 562032067 621127402 22214833 33418485 797650966 933705931 664279505 897191523 217757543 715839667 768127219 769520592 50496931 903264669 104612561 284974586 793692448 853319634 308959995 585887954 29818537 194931376 919799102 980854320 46523963 152624898 315037694 511469007 545211093 964761221 528955535 640634367 292056748 663419183 450576858 862139187 505527783 948806962 243731361 455714123 856771179 913797436 349145106 459442210 725634731 890278972 642289293 880142068 163596774 637542761 1799452 555322534 16323272 173197547 689149038 926687328 891144468 928192452 472108950 538160680 307420712 422736856 718145573 718483096 681091227 692974013 1110433 820318164 772992293 912715175 713445830 848841356 128937036 384949947 162786316 768659320 724576994 813225188 554242590 635556564 367112475 801317738 249507037 885384412 52171417 681275068 573222123 648723765 914513107 938782173 899497965 926380419 918010718 990473121 887020032 928428567 20812356 176214490 282610514 751340044 44326518 538118705 583193697 836714729 463777032 615856496 854755250 974859650 798114480 836005514 119855812 848990980 551361709 685041600 16090050 73836517 548560700 830555921 812202744 989289348 806110029 939109363 526700686 573534628 316786640 761267821 125519284 415878168 189522044 752742521 20105302 261362402 18237147 62907142 75888679 235192657 42332749 955431677 381458892 993907190 21904227 339811986 343429313 618518641 537128579 616092932 373044138 581642553 284645020 482090455 999665065 999728995 759224324 995762236 744206888 936036684 153483075 564595925 680345506 861814685 802251395 945963612 300958798 669884631 461931567 966255195 618959713 858856323 897057449 978302256 43713037 519320642 751616820 764366523 227947869 252422316 252663611 436332772 104982061 708615445 647631231 986654426 590989684 982510638 608648970 770135334 250606405 797371127 498093077 964958386 511766192 964107166 637186735 835205239 638321872 785408844 929400134 971261260 539434401 622262732 651010874 836436405 202769398 276397983 497829153 717148494 487511654 892802763 532468462 815172400 274693469 838631822 993969353 998475186 254224370 522302962 80528840 698845843 498762997 509933198 669446755 922616078 870971821 970747837 378154416 808351024 208112834 211067477 149891252 256115927 657871757 854333668 915497109 942458503 761659316 903204320 66083402 903638849 156620284 970834528 789638893 923811415 438518913 776356025 726433412 783415524 714578230 813181490 867571441 892803724 507880486 811032565 41271564 294533331 515892326 667969262 794521959 916006007 543618397 875040208 102669522 447755834 394189112 651024251 924858221 947552158 218827705 240299879 828621450 838427245 409804358 449715250 267667646 438888551 489433793 596564629 493447903 853930211 534604761 695922410 768570244 858528809 221705697 661419047 564711731 893801010 403897927 653557694 370685560 740609859 952557760 959109773 939885586 992089357 398738702 860412742 763300912 885242823 275506229 801905090 494373837 788657871 422301809 654046636 467950476 817221477 625380838 714297357 632083403 672286301 400714832 561071112 822561559 845449649 391221907 775149577 711601305 722310390 240024199 675460086 218194242 478494738 835884134 852031495 794869994 856358740 745711513 928505981 96595143 615006669 91159512 140440941 430596391 964101085 856424014 940031385 629192547 755397428 148778526 746255475 161593519 780214774 788921844 807420035 947248422 980047083 598760847 821306724 531764915 742847875 126168505 485827601 111146660 402549340 245964863 886268404 437281490 880892892 599274781 868231960 765164373 924780575 548838654 697729489 211287218 743583626 893607131 901363220 351910363 743041597 554186037 972641507 96467812 662879583 179624967 459676570 536731634 567267067 729702409 756550632 599060954 951344518 320286189 353768053 140503045 860015440 466157446 821277469 226126020 728946814 811105749 915234449 569445090 954940794 889946610 952411818 965750958 975327128 114771657 181252508 313965668 365241275 659899612 976048271 466023203 567020427 603401969 735111751 544488299 736940937 347367484 846223752 835605764 850962354 281343269 349976378 946757067 990800283 193083042 714449096 237574670 981120697 808693889 934253308 958346860 984517161 906917256 976231080 140979985 712882720 861432873 971094882 470002198 654319730 600899302 969217751 789773317 938043159 205156208 367191747 624818678 720012768 863194411 876603666 18293999 991269729 203591701 736021123 641161281 791940295 560288168 646396498 758662980 989257986 73848120 801881763 346379434 533168706 640243430 762874016 37660719 538331365 176890235 672937609 216642209 800535797 785288338 841573230 349994377 908177729 797417916 818986224 450085124 934133413 107976361 382425657 409698950 911719748 118939399 303559902 599434384 799556742 594653958 741654215 654082013 935885499 859260925 889789815 969388090 983776150 675353744 885929358 955862755 978638818 159132959 689129377 113142414 766056571 267273599 746348636 865313937 937934672 907843823 971311270 166298667 311600047 78693745 240514338 819179490 821861672 856822763 895125825 922148011 975808073 995548567 996083250 837585801 840974275 845327605 860676459 445883842 651420864 369946471 617629287 776494849 821117266 493132250 709327735 735018283 912077852 92662927 469994426 487585017 878786092 351631754 605729212 817686813 918352446 151687016 700169064 869405241 905850109 453324657 621615277 677848416 947486178 881319699 898005053 616727962 935798037 172622032 577093015 963329754 973222683 746698771 945827802 912615186 939977767 411228267 559765517 465791532 980356115 229336639 811055297 478860795 680914560 819934924 852102857 85960090 971519966 419900316 480748024 624001551 702798845 626670662 687168637 907776483 990963430 326013151 952257431 611300341 612316292 664381292 825516319 329302907 559000696 368622673 739774998 184019290 536954932 153931009 628631049 355838130 731017372 177537988 592848564 468769722 522759521 643680159 706671947 573132991 974135388 297382819 694139478 905006961 953439714 790943437 953092910 515602743 694482492 67378197 319364675 72293335 708599969 199728320 946010354 540269764 940912263 27825668 993359580 29835147 783300920 685670111 822001932 438947078 782556316 146757534 350036803 995562057 999784176 156800486 895433300 996146211 998261401 872065547 904904783 168563046 491229967 524135333 573251682 321298956 946414736 830244497 840533210 302970073 654507983 422739243 906113563 62443994 437117148 755474986 994370071 724265704 895492919 28670842 870723901 227312113 239296541 819087474 968492584 604471807 998940042 619628439 897502635 867468193 898932317 45269124 833563883 208086534 811314929 216097158 799014108 753246199 811040651 876042417 947671883 804762444 976840452 455819203 883881561 179635648 989139786 667843523 794972416 465857775 513721427 748819508 840077379 511301680 676957365 516107598 634425277 14828768 565080690 310337507 866505252 512140941 527356013 393095262 744836816 546658446 947953495 613478294 827478250 305260039 453203404 244715386 345237597 215079781 262383130 677782491 789774233 633938752 978658466 833881563 924441826 814395055 838445489 92821286 336710871 546311432 760486444 709690783 794761584 347136370 856755463 196127584 647293531 753170309 997568706 243558790 304490957 377210062 537222322 391423679 948841750 278756049 826960905 394321102 500877680 35875191 773819398 252443701 514221595 273557219 466361721 427757096 573379726 868646235 954918260 599597478 995329745 55181261 404131527 952775627 957408020 368213940 477756157 383460489 426458634 665451948 753230088 134784626 469247217 162387529 578758008 681380582 825165225 276295227 668861079 751403064 818543286 282540434 477306862 796000312 980149206 697990192 958629823 567264788 859615737 764316112 809140675 496649839 497241852 765593219 855112631 582832544 970335803 95758560 459335414 117696382 900089756 605023353 936079632 985990233 990674606 197298533 548619016 807856936 994237988 272273680 793343787 725898068 852543623 731684449 974131324 748466957 874583934 921264305 930267642 24241510 494012908 558838336 929401125 360220334 611491202 458143810 699580121 418251496 610411051 612828882 947396369 402041691 499365756 81032293 164216041 394523082 582705882 598248186 895364055 398244969 624374692 396129898 832235066 952325425 991021745 213486821 382493232 850237635 918530085 935121337 998819201 693050758 721628169 981560852 993683713 31683010 260621913 750857942 901127914 937724255 991198817 272823333 379856257 786045570 827446803 942262179 962686875 162782186 865151525 309090072 466717316 164045628 458100552 604590058 859654012 196569876 962319743 591605883 839119338 944734973 969211867 423034782 807726372 983594684 983976862 451283940 917259010 569946906 952271837 666359286 805075962 481652960 557339132 560927250 737223187 741452271 902868584 484240599 594267288 703002164 921319649 552079011 645577028 742051880 984148832 846870024 922664663 282097247 368509708 94718821 474670871 350958602 425678893 273439670 785789849 889544104 957496600 199191722 612424581 885451 895970571 214774952 858260767 80576820 955138363 511113864 949840288 833189638 930234135 361441414 649180853 148438751 660522175 188174569 595550787 424918638 932785262 433978052 454539359 528395808 868372764 484990105 667313380 910154929 964640057 407831423 687790777 673848147 805324481 741071579 947526308 244314068 296907186 201313100 751899361 34693874 282303650 689660834 882453843 672103059 895290553 66629594 182768136 206370367 931753190 802734968 950399788 703675077 860356383 525294052 815454244 355999725 815466630 797138587 802403998 742930014 857101220 942310789 989543002 949609764 976836811 55720918 780850938 517680003 835775427 926310147 977283712 264342589 566524755 625436611 852310256 707029675 861557339 185007255 423067450 181122458 600513402 876384290 890114825 457766326 866462561 761111889 806998731 405522076 960026074 390018264 958249257 828824729 889736368 622245326 812686795 790172796 939704943 898226932 909653914 872683976 890715949 449233320 623280847 808703236 980550717 6680619 420973601 214302591 566261725 990398778 999100479 767410949 950589581 983364025 992942466 846301602 979273634 470791358 863876793 942436328 958879995 874083638 916897554 998799717 999086937 570283930 717684145 67608919 120932557 117512899 771681916 797839070 950477508 765172995 867275195 392060054 884120809 250075685 735725860 691473356 861621362 954096762 991019401 971103547 992269005 397580773 445372344 191814209 927284885 304396481 421156169 110909300 282929884 608499207 888169151 287970628 768694697 473174888 612603308 409494095 557406228 160474440 929830631 176699838 624699277 316450836 835167526 640032586 720450278 982066469 991606348 860453401 921749199 341835587 618575724 984730978 993028535 402982754 839759547 42626947 480535749 601485142 945553441 659182949 812788522 729930572 992073717 367446299 831491425 497726333 910769163 627732477 942989684 500873971 544446495 444098419 490704301 506191258 565484517 780793307 867916974 902170487 943121720 486308578 896088062 676198500 903552502 199626083 241255075 482856105 810002204 590774538 712015024 877872896 898103663 826030047 978999436 919915057 924228728 16048292 144953042 442323154 818172569 379184248 587062707 774306437 780832791 112997858 477536997 844124189 869832672 531130934 713515592 607983887 699729974 173848389 197010755 93380096 768552722 409152868 835354395 313169905 935721225 813396350 980754963 135957496 703877203 85999167 263511141 717839374 986765591 998424695 998433940 358310052 717711992 980111944 995471768 900575168 913895251 712583901 888086372 407782432 813479536 692607458 744294402 428095834 718857012 250992510 795376936 635563513 871305462 408206553 897808195 57528211 415042465 327777155 575005803 493947354 520415106 977255034 991829868 114592014 612837521 970382170 982941376 741415072 945420561 342138336 852273392 878906582 886250848 961543479 992720539 666271356 745433128 97914062 267416132 538229710 640930654 657634512 866245338 801559756 837795488 43393001 215928844 479577823 804008491 910242167 965459954 662357802 927226222 44587254 751177874 517595208 527426150 81765137 387724345 885063073 964413545 948008997 995415344 593925393 737998481 599623088 905501190 492992766 794170571 916994063 926298069 797281647 819407068 353973842 772510383 294683781 357256121 266303158 553516986 837632356 932123999 187247919 674179041 837757121 860961462 776986462 925316128 292347157 521429188 627514095 679502201 736649934 766807183 593906142 788176488 822965142 888215012 605780862 813216034 718577761 989947845 893688892 959830632 530088844 794722959 537869136 895283057 645223157 718745632 218616552 314094715 430440249 503865014 578370502 881735443 339355819 400591066 17903781 207274445 46683414 581659113 332180855 476011775 473003292 979774661 563454800 739096062 965910481 976162394 419386779 567449612 839857521 882919409 969730282 999750935 267454065 383360734 401415783 781365648 835757573 861662800 543027714 576216249 690279443 739832506 377599562 958287199 184769823 879599265 123754437 299562895 958430611 992594873 417298771 571236789 53610003 215336238 886723904 921585304 148881065 818539424 701424441 922770860 536869912 875182538 438622173 940313295 692572492 765189444 897249446 999568857 594585350 907567259 953533461 960511311 855748665 876691733 508342628 876014571 523249405 833633094 219103708 582980869 958535681 989903361 641713106 762651786 385811377 922566809 823314997 887950250 608254601 749763020 230462296 457745449 104212400 331809104 774397695 789374040 654746208 746867035 774327260 851521734 938083604 994431738 779685066 886027386 161775523 458863205 472924790 824206092 139868595 986633067 842973191 855893749 653668563 890064688 129146946 186195749 697088694 726011730 893916203 982734990 321169259 543709440 997236035 998195292 290694217 981654628 824226401 977213869 175554349 369119749 122499680 833301633 180652809 674084765 160156402 253177830 242010993 245238527 677155269 721425255 367366735 707975011 219120898 930079663 460689698 679311674 845116094 895442538 625835385 791890490 698750295 805240078 548351644 638945739 872116992 972192608 950074465 991219621 6049289 9452581 29399321 983435318 260036790 292427895 233747814 343819114 491684950 713469040 814085224 917148831 461363923 966117712 130620482 911777542 857411263 875577774 518826643 722904389 250555322 405715221 730809239 813515592 304983204 544616577 930377257 957169774 397338623 621790877 241297964 888143301 219201460 502125421 298394799 604971563 125628748 410291037 278066315 945751095 561914119 867916521 908928052 993217443 83685276 867661935 277539469 386688047 497779333 981133759 565933621 652200817 250589843 636140996 44766127 700298978 97689406 443479838 633249739 644801496 592205944 827791215 16978883 416531746 201067162 609690902 496227128 791952833 704148831 764112173 448599644 575300801 196921206 966344211 330641634 937953876 281016092 782310799 772050694 940220461 477870301 881858468 34597545 537405085 449248272 941689687 60376813 421555279 380266218 839876374 495837508 680201092 64841280 451606298 778717181 892760166 535653894 867122906 367107088 893932395 466377756 501195081 88906483 117049263 716222237 910594550 689198982 798906719 854252486 957579910 231577374 700781454 597667889 882293022 480724725 926060337 713600253 751188328 199482967 318213174 783893033 866208780 786208398 981825220 908190144 910655086 692386799 948380859 399165230 749647467 858212309 910768626 415115194 586246987 443232732 754434786 541493946 747389345 151156915 524329828 838327610 937197840 397262032 824718561 516262084 796044744 460029461 590131832 354153271 592947357 223712892 814252515 177914250 349387765 770298003 901306613 526403303 527504836 436343588 672458888 404324327 598809219 999148663 999631665 97390522 579836273 3730931 77442507 982647771 995932186 925546019 964147534 531704411 990397061 996332279 998340329 710857840 976150751 501287155 977621841 272040783 967790001 938528148 940613755 6774136 301928898 277784464 918334732 541858161 669342699 704931347 925763929 102010650 721472061 935732834 940359529 708264508 960219037 633118532 787251228 426196393 436251601 632889293 983950026 234154664 688855747 114605245 173186336 373220372 894220703 854764837 910830488 660440759 996310217 229271885 616025964 359592051 574851584 900324483 980999246 582507719 906504063 80665282 936893347 425959596 462519530 709139481 746291328 149119180 471772876 376092547 933193874 979017081 980518012 214015728 629343505 937905324 990858670 532442688 988563891 985209816 985317323 901263922 982136935 326084796 954047539 635980708 670643395 866363539 925031835 255539844 751318105 893581686 970704488 78578369 154523154 689233170 742060489 946488146 981143080 287535199 827500798 650839068 806371967 157566227 725248523 604495301 835115821 777266194 961209673 987766479 991390555 49172912 216160570 210332214 285476224 71663575 850780243 896863207 921251375 28431304 808056589 747629488 781492233 614358551 803869585 647733271 992894617 141120013 313175135 100849810 533462992 264373492 878005970 702194017 718985563 678164070 757007204 748292718 753583880 482851164 507098685 865325192 996600922 928303743 928976518 351613307 476017230 430732118 514803357 786053666 815766901 311100170 945310282 555181349 680511789 312406962 426300600 645965622 901149785 295389297 454986873 106177010 499654173 804703211 830266517 75569483 129553670 525643163 871224577 414399694 954264175 735737698 738627560 280796675 581752095 725591929 762042383 727795406 738945098 609668263 666697765 503178958 530580523 519298332 840487592 425347294 687854097 182226701 312964895 158016356 390734356 428988270 485892516 270818892 542313933 718471610 887284048 436718055 923083022 971114808 992992749 259280290 646822286 72638585 421444973 141740016 761791518 884305093 899899407 260551372 996814307 447803706 801595524 728150750 850948310 540159865 971487768 619675806 924528438 944239847 980602915 848318268 896157190 342237698 623269789 866633020 932405218 998651088 999510820 218387982 665574127 725758702 821958165 823903486 949365434 816673750 868132582 416545814 672637874 435112698 648152247 483407308 866074397 820028548 826535422 354276049 480980640 233163764 833807534 262610712 761991363 250768378 318944065 106789715 285560251 850008915 906256874 62583671 906590529 995776216 999833924 416748477 812565258 954540864 995566248 856889401 987830151 472600849 844935583 868761549 927210881 240715209 359152402 159843771 404174992 55676076 603142746 766733914 936458672 598519172 731889639 362940856 650911465 811471540 838896817 238313916 935028981 876110804 954776664 306497406 837090751 778389583 857619215 934558816 988499380 317275512 945277964 648290453 676677149 379538378 979670569 831220620 900415076 740607812 759193686 772475383 822804889 614357235 914452471 991513793 999132796 771666064 917388160 835643177 969516961 664719219 942475318 85202772 525219737 506649146 647369771 263145470 437657337 762952219 829935726 183987496 417184189 600073319 751043957 77613099 464438181 484790192 618470979 801969263 883094955 530721764 883533953 214676056 643956379 696136799 706377877 73465427 137565065 729491624 761046821 475719449 621602320 394589263 663771588 278258551 964881422 595292822 666950531 869235503 998762729 735592881 842966911 982410934 998289603 195177244 337867784 609854977 714492380 646246370 871634072 551479554 919790225 957940402 959715362 23490710 581240593 313911903 483244384 74909868 610494388 741071469 855780315 39361799 458964699 638371163 953438931 151496324 404461503 386600290 397189344 181635951 312313010 960291164 985122342 3936468 983487702 747126218 775168860 500902569 762699036 499997650 621071980 380020452 698129178 932098543 982422759 36098909 174417559 6248944 97024095 13301458 985769225 78632655 561947370 485347182 498275403 974268729 987229615 135467571 895472713 107135667 938178815 895489345 901577655 611505286 797961460 172904987 413401607 867355586 918739623 497397758 798469827 445132791 591824801 698963106 943170673 952961768 956624425 389999192 401162970 931139363 955096148 374920577 925571126 342299730 699071407 737168938 901326606 260562043 525033856 316857364 381017174 175524575 817040054 366115106 381967580 848051014 878183080 2726644 788679122 748451721 818067465 115886031 199640307 266546469 557753443 794421711 883069289 98210766 704926278 729226599 853101285 684023078 807280347 108900825 644398942 62045847 271206837 424751241 677824993 502345760 972317359 958091390 971016176 398412633 830604968 753192124 811975703 416641643 519674735 673535423 982235844 829095148 866365010 851406012 973923615 758492958 854169609 260732973 800389476 720387844 744267377 974013790 995902931 899288502 991679344 873496226 923858746 267574232 504104211 968449780 996631834 332042597 676389186 114046705 295813076 845294442 912019717 141897063 951811898 513958012 948639933 472624694 978156028 919844818 965918835 780651780 903949452 753619541 947267611 188577442 749264204 726056810 743147722 932450182 966195114 176196131 409940288 793594646 941923439 698306762 961591008 955485040 985605469 468623182 959673805 749929029 812564100 851391028 989932341 86358979 833390825 223935709 796845859 773964475 968055105 34975589 54646244 70719982 565952414 666095479 878336531 160131593 231352076 494284786 542803715 427743037 473396025 467517973 904464324 248093108 428565894 176026769 947240663 391978554 771897560 27513316 568961264 235711826 359837759 591245946 665423035 381740392 540212648 456853808 846585047 977102654 991648828 464824191 588214214 405690404 512497735 434206829 450481431 259798009 994244175 400167564 550103747 408242893 905433573 302645476 691101303 624327755 919479420 639322325 799528286 557077133 980405514 84905049 572915948 962293833 969709759 163926534 213887216 201445797 374664874 101146098 123527047 393908928 925670102 742799952 934797816 781518043 862044539 745832629 934087922 175504429 833944166 763750109 939007799 684747359 879388509 968890219 985213588 305140950 455786000 177045649 841477114 926680638 977801117 817072239 984117270 185641260 891782152 534142629 883335810 844995171 973704419 557254669 988693512 489748574 616860722 519719999 933790346 361517981 480072617 223706056 601052155 474842069 605232697 21964869 152009229 545443023 800162509 157614675 486832321 155784723 559438626 966929254 971836267 818385406 943163395 781642893 993087202 123606892 755729830 170565633 327939794 851049086 903599116 182494980 751810033 264981597 417053854 681737134 816803419 220434744 583150050 107549973 535312580 790003166 801694962 48250864 165320947 988556911 997948249 633648778 794747141 364299072 872890735 395875590 663832496 381001524 711390256 977386028 980144661 905675037 913677779 580446029 934474549 685356519 920031466 716550990 888077940 43105241 652277563 774402345 837730137 808045716 878480837 676722482 733081339 403309877 691528172 208717993 988844134 192897911 599768430 366545011 640793824 459256089 522331772 874319945 992667891 473929290 731294710 777419492 898846604 311263317 933278463 200795947 977758781 987250434 997185185 383182294 658217425 299349288 689874104 331997527 839586851 525966177 540938964 291896476 935295773 766170267 777155102 188973119 277700594 992996205 996349382 868826255 999986389 79044194 699737234 689188031 760247587 270254843 311954113 1148676 793543248 713595505 880961730 401322660 936453173 40526247 574202272 464228496 777461750 115979364 505293288 50657651 561456270 199675096 847527120 744311869 966881971 299263842 673988962 184330336 826193762 585935993 894513129 189467112 861620858 571445568 663873486 515908131 583427581 854985016 945784717 225074069 598390089 468781912 506341995 476173853 738674233 576639650 717362796 780172717 849790951 599075962 778749236 963360464 986899140 899815500 932851874 126900496 665854893 848859747 986690199 918023602 956656882 837890390 885633079 691266194 977998122 224888487 314655121 230978510 766820464 691471177 984749609 263143687 967709477 317824457 348292024 601211142 844764833 221992021 598700574 338839281 801408224 284621839 794042714 973073207 988932888 736400052 800378530 723348925 909662540 771667093 864722289 219959730 301825849 439248561 594708438 200606431 687511990 714924615 988470903 262066299 600991882 508795514 874942983 481036860 656676342 173097362 189454823 928700717 951422311 527025419 863670423 846587265 932363343 976090363 987979838 527007559 683994924 968374713 997565206 273045310 364382211 30231901 853738660 972967715 993638127 935068671 953079713 489304939 616412160 551713097 667718289 173575170 826734154 754964346 781272912 966167017 970618101 433155369 476433278 862227528 884787620 231080197 382607147 99348258 554360600 793973144 908848161 6008459 384717868 87875437 954239728 547426992 629613240 581626002 899542601 121690711 175042662 131580069 757522213 263661387 287064940 672897048 816782988 33850409 347425885 325713179 621002569 966919273 974954299 587477603 848801733 810913136 954286824 326579396 545055903 714139402 915093152 123445178 650559514 40496545 609085105 698205222 878634040 813262623 984339557 23268400 354873281 660973240 936885899 878436016 901862703 488075435 858484856 45649658 784463062 350219302 888971256 872813428 941102097 161578645 891817034 625527348 654535578 539514430 718525340 581807003 595070409 10932637 662019285 130265781 450538456 771497762 792729537 348089836 510102385 897827890 902861823 776921113 803416443 754084543 811962088 520458840 862363909 38866403 807172653 240447706 544289818 861341512 975185806 511143671 984083957 45495116 718681417 691339107 890906062 209172846 688143368 77156279 944868991 180099624 531375527 601108255 797432384 765891998 771866430 963446529 969413500 249974708 272258330 711242031 893981499 119582994 737988718 953223782 986655507 443798468 789592885 174550885 302293013 199974236 313661567 297574903 387616137 159192566 450670854 419823306 501542870 724418048 858155271 346621483 646074987 719964619 976366773 775845114 873178910 516324154 566002131 373988773 943912601 820951180 853748139 562881670 908464804 762897010 794314044 758353448 780875917 64358032 247409964 705609423 846469592 452069038 600710216 764978702 987076505 872977899 937501306 383845574 444122520 869759367 871775402 492222033 550517884 696917766 938448975 120814299 391766512 429081662 474560574 657079973 885752212 275770123 954400701 630915479 682396384 337683352 679498692 109056004 314383928 3976019 812931673 899324745 917620432 33879741 706311911 897357913 969017431 853539316 945514589 944395039 984752759 794198979 976118369 71472896 127911110 439032476 580353329 485407339 808874053 328176981 363615975 54026941 962520109 459009992 751307603 818461858 827175240 266421301 791589715 232582520 895500486 575874411 672589173 446584128 692557991 591539335 857905745 422402172 607977867 300978209 586768469 780248185 952183356 845209868 879563298 526745065 623385427 802457421 816753342 19977606 576036532 827953162 997254804 601983092 817058281 194198606 253275257 15669947 497198149 378865061 445465317 720246638 844195904 225490501 669611765 962534473 997221346 109005161 246220269 99764703 857016273 241792859 852393033 170778384 857503829 207874381 812322784 679921432 828539431 976555283 994241524 916347471 922037639 678611857 889495590 257256590 915139925 678907816 966775803 669378731 895132016 448949131 703934665 991236111 991326010 843814556 976736167 642483459 740788550 610932733 878355172 172343064 532847761 78500691 834476815 221534116 739597917 981908480 997825071 141454224 905054054 997563619 998765032 971421719 983498616 308159557 598562746 834892884 952109969 897685997 955458438 291711535 670833351 175460963 883597249 886155179 916438852 512483431 516086359 272587019 438759782 16183116 555287244 619029753 993658752 798615611 948689506 595272012 908285410 52631394 322843931 466617628 631177579 555176757 596804454 915532200 923419476 355677168 516308070 987387197 991464957 716209656 799303363 100960588 105516247 765236136 773626387 884706597 995558620 79499271 302922292 714789216 897894015 630870491 937981936 4023924 847587322 336856120 842075799 807878732 926366238 534105380 599457233 720057020 733538776 493674569 723744870 658182735 889636520 139770230 368656237 168572459 706109958 51898691 773040212 704228570 905972353 995175360 999058135 104219568 360453818 614533079 985702229 584843217 934856284 561839138 977976225 39270258 953998458 788103196 937654738 823523017 825994083 883113424 953095159 376582562 822367675 668372977 698855179 366079788 694558840 482550189 746765389 87071339 717323201 61820571 395134694 105871528 779696209 138543637 270691208 852984612 895759113 283804521 916078285 597829642 944979557 405406896 858264291 2898652 865833196 261733896 770555502 26449440 129180651 156938696 378800557 579684705 731388696 499095343 870345888 424550376 843876560 5214918 606574571 897932761 931310561 207476551 665597879 683724211 693297195 224211497 774353637 738765350 908769278 393200858 519001626 960163105 962329036 859392957 921559646 462561901 781356460 526031449 623642006 877567123 940685803 424489380 558825838 887014371 946720339 530844105 986965977 321765257 805040450 947102224 949928910 294584214 830092690 549771584 920689427 245541820 621820310 25997920 750680081 704899088 739988675 911306044 976395381 909277629 915063207 995283001 995679875 747148955 982793958 310423109 874139356 865076775 914609919 735782278 816146182 862753867 966810862 560267055 595718766 177380486 210953735 552171577 721900604 525966977 712984232 968404402 982455137 252327678 411331936 297400626 434668855 176039955 568573766 516029855 579299866 200863859 674624080 284965721 348381211 793292093 958117372 567999582 808917317 547110874 621301784 116657860 779813626 205280696 663131990 808931149 953626944 796636027 951626761 878993101 999587914 666559245 756385138 682645725 864917397 968521131 992967140 986952364 989673466 960834990 981046826 777015112 779396892 311396943 883354916 212119202 239504971 14445725 506187161 635740628 992128262 729776374 741678785 820686352 882909814 440572255 965082353 221482275 891221217 327928137 501403055 18589401 586764592 372805477 971263816 728475397 971850595 837608726 925812010 8441139 982492711 590219813 978620137 428045051 897964823 192109352 737477178 739155505 850136399 597442509 917209979 191716422 475544438 44604134 811672991 737018731 870196552 259494135 504587880 688246668 956842276 273329328 726968786 734330661 799160808 510991161 828008465 319996801 626551018 857942992 901839833 389046353 739769759 457626689 571394295 166700276 861376473 874166240 894990382 510342290 895675230 93594082 172306192 504919754 637109681 131129770 763903197 425855154 565220034 642070627 765063762 959865890 984881583 317090835 780826697 110062000 857173249 134101350 468160608 328419838 645464176 849796493 997301016 917128374 953994288 425959986 538837164 802489991 991646312 165280363 496064039 878889261 916268482 854875403 987352336 553686419 765270297 779455283 894884818 63779854 657059966 298852796 968567459 123747086 634212561 127054911 847224596 703859939 735704446 414597728 741794484 505776826 770988591 270457587 724777720 90833497 196797693 896524081 993531291 199637760 325363693 378240997 971454874 871157267 890640888 729675063 795982359 668656016 955862152 220966485 529039019 252238702 381501620 800959411 935569521 403452670 467958555 286094638 496688324 69656221 108472673 534094337 623135189 918178306 932881850 132674931 499883466 366701990 603501548 804001588 922926097 958588026 989257154 957750786 975317293 101431154 616254833 180715278 497937473 197373956 556030277 782264104 992098366 509529043 590455891 899631524 907425417 859513832 863460698 504034042 543274010 226275639 373555182 434125623 533367157 658602423 795469382 251287430 567888467 596707701 605441993 199203514 278294545 923300127 997098887 887494130 909329578 640399804 973372493 238118039 931795810 403930157 735709848 428543198 651823050 512147921 522634281 54508607 816287965 845194624 935868503 951984734 974168191 562094285 796973271 998999902 999606228 891122777 931092541 462489723 897442943 311722721 603032104 632909743 952622217 119693869 253142730 163635179 303990804 905383524 964490451 811372479 968627050 437236118 770533992 278911501 599011439 254817222 810368080 201185019 494771549 752664042 998204899 69882312 676312946 242605006 549294299 193085140 971156656 908575567 982030683 550718208 789774251 744005844 851248381 874305452 888094579 917872163 918494607 237667781 799847171 928484602 946186822 394992593 852822011 64239874 945941570 123183753 517299844 786934165 997497901 434803309 530066062 828228730 979661580 265134307 325465768 519249598 851665310 69324946 601462134 422132209 790567039 196307881 733344682 258833332 678592185 967508408 972019891 497918770 774663663 763120750 926356227 134765601 335556949 416776192 589643521 601061510 896051623 821619208 885992391 916248136 990770171 557861281 716368188 854832112 990682906 362387119 852183085 777879353 986141517 546279512 821534893 77876288 353608706 64679345 805156627 639056939 816943522 231125315 459777700 56030692 181190576 993819586 994931396 469445572 755970323 432762084 482195383 851730248 925438712 805459001 913618302 812727066 989981056 403466781 544974322 159742216 466846289 23516751 379321069 778922956 858937770 715790060 984384512 212464446 997228839 860346907 966277669 45813205 118056151 674113027 747810098 483401751 849454064 926602552 997874725 340650701 897539017 635529988 951212417 273843218 962377940 199954425 595620635 883505062 930715045 928333280 932559890 815050852 865766384 530146889 862935070 720265026 724679753 271824913 709837103 464404393 831815989 40389088 638431377 832760869 839557274 238926483 450856885 996763397 997958221 159306534 289812068 184817291 254991211 414171689 698232062 653900897 944065806 52438664 145477249 477520134 898970106 564220115 956136398 44441083 510132226 308229301 534176572 972736464 976251482 945908987 972233809 636033541 760067477 634129217 852301961 475652351 803200171 433538768 699964831 799411915 831854197 619081341 806770347 529449883 731280203 800369900 887326217 50847731 757664489 593819844 928954089 646453779 771429214 866076596 913295891 55648475 893983281 235496544 912785331 25919433 281291528 926480688 954746067 870639386 898156425 864509281 959975993 336101346 642360358 383489597 993641937 611514359 947234678 424600933 503681787 340508248 742947810 48303805 423419461 680755698 754165959 712462953 915758612 216678148 285654673 489158973 557920524 717149801 780368753 769939297 814005204 831093074 918258007 646447913 798064329 941049312 976327214 834082758 859720063 634358381 909562425 978112803 997853746 610480194 906459581 718204575 942486838 171531356 547634747 972071585 991955832 818968888 824261580 194729130 753953841 125564547 348929799 424609362 428027668 640568320 665353436 937630041 946611304 348667513 710543560 248179011 728240570 31814993 491251481 880574814 978660140 543228887 813240167 245792886 965253440 199002017 319936807 854482705 862126432 259686279 990384465 667390662 904665351 329161583 429747136 676540732 942853922 786089030 807974432 451097797 657134849 376234969 953823003 292074413 752726068 609406402 650651099 424301807 817642413 437054422 656001164 584662411 729949200 505040010 688454571 906978184 932715755 570516917 862284285 657255648 804365912 230741875 533541305 751629131 975993787 270474426 668237738 322446988 814353758 97271503 282874239 515379771 704397673 914492030 975302785 321560435 856954293 199088546 797793773 579075311 975254858 861645326 922553285 664421020 878518495 243632382 661334699 424867044 916768171 289146387 483909988 426280645 915979788 668299111 806213523 278190884 611036211 847139736 960752971 737074762 843818265 963827103 987569286 901410403 917876483 236315608 895446115 342107486 871943559 58961165 540895728 89313311 162480260 980817373 986966775 257498875 793065038 697374727 740333742 910489231 946900454 593927211 881887734 811629379 881376023 189499819 546419827 567697937 980781996 952413607 954331923 290233772 607436673 857536116 914477228 356863896 982886493 352549935 661643316 899462226 911346529 465734119 522235778 440978118 560225689 571965508 866100316 846629934 946683994 991754988 997856654 615379661 928791819 286619882 679637446 191990002 787855206 999457960 999507946 420877668 524041450 88762804 847886635 419055500 579532689 579016384 796620365 816643105 924931593 127644029 264836305 573927777 656807589 693651564 843819112 144822465 283798972 569218718 957706332 176180701 572979913 79412560 425196132 701134953 909398104 665562410 855506181 973704295 992809204 748375159 883776402 468467005 964420788 998980982 999469240 528121991 591704251 776480222 936001524 765389393 922828441 469741993 768447143 79925355 859294589 530126240 720042007 658938242 746210737 87510344 814540720 172105053 616719174 603170497 735679398 441240369 984772649 191132203 877106638 582330735 985392153 837034797 897632453 388073354 449284358 327491766 603088793 752668751 967274447 299655527 530166621 890557995 988324826 786738653 873329839 809915940 911110778 349170161 426874241 6923692 783205043 986857523 993188938 619473520 886365046 857806606 861681534 551082180 914806306 837715386 839455676 461931093 796227992 945050342 996171912 468739784 841207800 332357128 927925257 141163258 886453850 370548610 911002430 678809914 866873429 564342446 979362245 847288158 941077918 881327738 977405701 532471097 684645440 258242981 833168354 597408475 923872872 795419431 949765972 961730584 987097911 72908345 585012888 33395158 585376958 455555768 672720730 101272841 413907124 10916486 354202728 493877355 695107592 857075559 950257493 803250174 926443068 782284467 969554731 387333588 607380209 166300972 720750504 574820066 633171845 748457246 851679623 391614999 857787984 678739271 937722741 208206913 398806227 249137284 390738742 691576133 691941184 379475731 721499384 908872501 966119687 668019225 954810717 154314503 781489403 103697270 167085193 195824937 874141604 879325542 883990550 956099969 967859706 18103469 803168398 757750833 774637378 503555419 976990783 708332607 995926808 810337325 880822023 665694661 810406009 974126220 999904430 347311038 632413076 980091670 986881646 291819782 733699942 473619335 921532080 215213657 752961606 138936691 652668250 459740436 664074152 539063571 688564504 53575719 664243789 86196815 990431972 844307287 854646436 618403168 875910373 647857531 976108406 502633737 874380287 761663096 899024552 556548312 800252996 642773063 727408178 245053101 649781600 890980612 980065642 316291921 874332391 390263706 861733573 390167174 923540040 410999568 764462045 455495139 754402576 410102863 824957928 584714947 849789511 994552258 998184206 778043232 977974352 956270191 989676796 520850950 616059311 470246754 536720761 898686211 918796015 347095992 444655282 393536550 860422371 913115783 962348682 573489928 716931381 701842416 894145834 73248667 903248637 997896144 998009578 157339275 847634599 286800741 546538431 532151515 585311604 527981490 656212582 232954108 401368345 857388230 878866937 509930648 532942551 513673655 621598427 852722917 868131048 162911645 366872987 628472323 848168119 353152088 626697026 12628895 132378169 605154945 815614905 983830822 984383749 771220076 906339678 606133714 825148357 507913866 738632113 189084449 592873196 818530695 975273283 384469912 665494852 269100173 446773582 869967192 960904184 957173295 964449801 193648996 246700572 741621247 764093695 435165406 581530743 524606533 622599606 608561514 972652494 966918785 974902344 319318712 653436473 109483967 400441810 40084618 176073719 911681252 952732238 442290075 468114081 52215572 516327498 488685432 554185382 781529237 794297631 199085890 656216762 490422435 505072935 418114059 862086581 448409150 570780869 255388800 487339144 603761174 747175754 607895584 829119384 192784081 715011274 770938266 990697205 642753352 739031060 640540552 993753309 824633662 960936993 914714060 942114831 710842630 944705457 544096819 854071315 316559371 911551212 284473199 763235759 914874943 946682201 246566994 525397689 548234572 700634191 892501924 896139614 464710203 472784827 339617061 408357325 639810524 749370578 394637594 648119344 76736010 613499730 367279328 678010178 830013260 882517935 649369042 886714549 572647762 578710727 710767169 879182658 803617949 844995074 349952626 542788159 214022184 467351330 415586845 874092697 488498284 701623654 514661870 584999116 141041000 917834819 704886302 764234474 419207426 693956391 781982516 917109724 643204982 747293341 282071531 622828759 156688451 931331990 820691848 827822825 502880868 713480859 48399004 495648241 434354437 730486766 790466343 874520191 111610203 483277177 349971295 496805255 825108528 826843392 733950179 838717251 23008391 265202265 629110895 895629307 899720970 903043653 689343444 894609610 467494198 534017561 983092710 991766132 108822709 269467843 722970404 727471223 218315832 631514203 459192384 920708206 442531733 857953432 863418444 908586359 46032586 607450284 862707312 939024175 503655778 731000049 648280565 675299712 267880099 286030376 302348745 604989817 245312098 571804121 412426214 496045559 66802551 511604561 428055504 909518934 653496718 670323866 296746122 529140731 705650674 917517428 776941685 908403838 873396714 888212857 794029249 966175931 987935808 990039009 772556833 887970327 38325947 824960351 357878612 948001909 790886353 837958721 650942483 995663824 331023041 488893858 419323540 539389641 371731600 758827686 991018598 999172092 831451512 897711337 687249078 744384094 922396271 977600688 791641879 983091169 378343706 592437528 704880326 751704554 813641887 984845767 797022453 885677096 29781959 732022197 486505420 751323475 703585962 940375261 57995630 557748267 546626977 644202385 869208382 905917155 878750237 929095598 955320624 994978566 187633956 267706276 522865166 739994362 898986137 993562404 314250130 502394142 240331231 285485901 254278449 718008831 920008120 940183530 151006870 176499223 109512617 446236679 357010366 360575524 200229188 536607235 713766946 797059986 444794743 919059475 168426315 420651170 86081531 338374698 18375107 766718196 73375099 789916964 947961760 963759127 86471762 392523127 889478429 985208342 559175975 859226678 980100137 987239553 759979415 768812288 612687826 678816463 965563273 968883170 225520065 926215363 573743454 831454428 65358613 675646019 682869121 705356241 999462629 999601464 660039523 729361593 509902708 816966980 259222122 669885358 390695672 956356374 515815638 931852692 562693598 669948865 28536549 753745631 191178149 289080236 860482696 971104608 294707646 814963494 746693578 807419553 364331010 845193310 107890273 576641024 402680759 482999693 342870956 391851345 975376059 999621072 564395574 889098155 28124943 577055749 308384893 397757782 984025979 988968449 962161403 998164678 564669536 661380096 702368039 769454574 734317353 994051534 647205121 992945992 679827802 774241185 599889806 677929155 769844273 916999579 175723775 415068035 410733007 636117890 262571270 941708605 522688023 616134748 182862998 486634165 911094997 926326394 308360572 866057642 440738147 471267120 631739012 662531853 598542401 832962064 603019548 828755071 711703322 818245891 113759911 314856548 325035200 926512848 29379784 153017776 328057747 928631312 569091787 591510156 771684654 902451675 399376346 418709913 725672387 859205941 890902496 918755512 715717697 847283665 64364549 853069127 129328151 380841971 849200586 937476666 573531423 852791769 715513229 781487535 185609478 922741378 758809235 785553185 595222972 987321839 787495626 831599086 324992154 782315056 7382382 172356961 639961249 711899425 722124415 861327829 954026513 992298378 938106830 990724535 261036573 875617864 180949074 510298484 262913590 456210771 161524661 648209452 877423440 973278541 393659611 702182897 94205172 383669200 384694721 390679858 405032922 717321263 99028753 616073558 493275264 973189235 407589250 525720985 670281425 914386991 838804738 957930478 722805176 980862912 50879478 838900363 711132960 868041448 745997594 846382426 661430558 800340580 409943985 455404335 934662236 987395358 41067787 501704389 682335113 691401179 348352930 529330816 231994444 969242040 438640373 847810878 408525948 959235731 763256484 809351886 71591250 401096301 352391749 598477952 67925960 199433619 179648219 328564245 621888239 735712373 619754461 943085513 309600523 862274824 457708963 474022022 72464073 905259998 580522018 846320279 304547579 724951223 699480039 798154991 504825840 913159363 283314421 972605942 145114990 360746667 757780979 867109544 636244717 733251443 228734723 962005517 704740524 821629335 827606361 930185349 12868819 855974676 43012222 938047737 813891319 932680624 907201681 961820579 403688543 803327679 646663573 925078005 677313446 718486533 102876525 829165867 538781413 842518210 466598369 560375457 523794580 897119782 28181579 340885375 841767550 854072455 719481864 839574002 755028069 755346686 787597016 990911047 851507073 854929629 586573375 984953054 529442084 597823643 901356162 972480486 341162920 426511751 508640856 811227080 115618676 424894311 846554681 903176672 241693702 962048447 415163931 842311003 328962039 379425183 5878852 592523152 220437688 750981957 649016257 755526675 1539954 716790319 284039786 574228922 822553633 834861074 518381152 612747963 244014493 360669762 384083737 484610490 286581544 662986991 690873290 941758063 332377636 341751553 228990179 882225558 113961059 303459754 532099301 582324563 203236961 360542617 610731516 857840491 189038961 833238348 127860048 346655782 380400197 626997713 111273150 406222156 691227636 722196514 112664820 444348679 188073588 694694450 711374126 716945560 429066454 684619295 270019339 967522122 433675290 638828804 516486088 709269876 386674062 771726565 855576989 860956947 391802238 652599443 229272505 971678838 538902089 822597470 195710974 344356527 177836801 463375951 19587198 801706731 900806089 924914373 326486731 574311946 980026925 992577211 36825925 399303529 909394214 923207386 259066457 779264179 733312452 825513300 396694092 960465387 470071223 923045071 708657585 860066819 532859007 965066093 730298624 852774868 693201838 802468114 657562322 731987984 814800338 838792112 151080005 930737951 61729084 462208527 127460974 332356190 815578050 981935471 48713010 603116446 978182986 988092598 564143427 778697070 383696496 623732234 548462721 964495958 675950682 789433095 498200303 747671973 923443724 999618183 334669496 402355966 371155765 752145914 897563942 946955555 318552913 762964789 759571795 925072416 69467148 762196087 971516973 999468511 565721672 731538395 805222852 892047630 126167287 336870022 677071727 871998013 716590494 997704459 711695313 758647550 214382907 468660448 483557838 882014892 681558597 759920842 622696018 954283358 278757236 298618094 14545237 856682115 102182839 511656742 883036846 889390800 965982794 992973336 16796662 230598623 430779896 531657185 784398108 877325165 952399037 978095291 612913388 691718944 405546978 763798989 243930711 387895725 417012410 879752687 993008632 998038921 845115123 961471327 282036446 934356727 499276210 948107977 738648931 955000674 710306194 931880402 312375215 649659048 858398782 984311116 770669082 949279567 438566828 672697366 283697628 700640218 603158479 823872448 645483697 869509237 27020271 565718618 36637246 733413110 137752435 455604223 549692477 725850684 55786354 278909040 907289639 981396123 32864878 918764646 731029163 867283323 341651258 592650602 744619897 949411251 737367561 860818772 478977327 870441242 619821752 920308709 940191315 992601984 627668766 902258843 746655422 986565594 952243505 975578445 851461234 982312682 307142127 919854178 537950562 860071167 680122603 885934944 445203381 499360073 157551537 456962398 220345246 829424690 63464597 992846999 797857133 914507852 839731257 927824273 129142505 476103209 703090592 818795268 465165900 569219454 997520617 998620802 731308410 763685623 963972830 983711020 3663027 526660611 658821131 756028018 262326203 481925562 864554105 969449343 678380561 930271089 523740259 702765759 198800846 543120436 354506617 719809988 234782731 627480288 763327196 986567807 195121005 211722692 687516232 954132900 693084709 891077477 126599716 943162601 904659376 988449658 659238663 898669616 782944624 857300455 982777306 989633815 232083206 594404299 306304387 670851400 134303489 679504962 826355729 993095063 38205741 190704475 767599192 836073009 217424224 888309086 981354587 994562791 982666198 999572991 681624101 760630244 519066160 848489149 735149195 833711524 733042065 954522429 155284828 654188421 748213534 988473006 221594815 454594798 350380806 999608298 882866044 940041352 408442977 582636548 815251144 980081178 106899425 927168947 996939157 997154980 637829449 835951333 914933706 947359294 510567130 791626774 944299083 996221464 525624040 649488195 621836700 822242115 420413202 671883546 963301124 969635412 245620736 991607343 835200310 867022761 626240049 877786011 390732133 689158436 576675787 919746667 787276617 904432172 155810305 567918496 783886668 858290238 249262609 550270651 565912325 945972585 398107220 906732554 432972157 723205099 728905541 974573986 254959626 541546292 517373082 888819569 822550391 943630210 127153085 307195870 838574917 872387906 413754887 455635497 69096063 620378628 772757196 954870950 702114614 726972423 464788114 762689778 892173971 934261750 110439366 322857425 340488267 355652887 838402731 992873098 825663396 960590077 15053507 552847781 593327954 701524856 525883787 588303606 629213153 881741837 172921609 385518085 288470866 401442260 689932555 853799699 917720863 941266617 97070973 879974155 924610436 999252284 198648314 780836372 729597252 815546926 789565611 941059319 941968386 967940030 292072313 933417664 144773288 306988449 146959163 805625640 59638125 161390580 352900010 898019512 634513602 908702149 394693688 669532559 935167128 977637475 982329482 985492411 145574166 429158087 867309948 920010042 752899188 907222461 857824019 924376670 587936511 718885231 811943341 817392001 507842148 975677022 301800320 978576771 158108487 276152721 153900717 790142559 848224816 994600535 280046385 568130341 648485300 847590386 791050134 912678017 854084712 935239075 557864520 857919359 895109016 954472496 501196670 839539887 744883012 922057712 124001728 877294150 829045042 973898100 604123534 914805249 676580448 960099871 602147652 842698569 339425754 513947932 892440640 963463007 281663197 693039412 968836277 999777541 345074464 866172712 739037272 841709513 834737130 965198124 91133723 735916302 228837226 872414113 244753837 450610644 765106711 838071721 462545085 520154032 64849925 821994600 870294968 923375163 425238579 777466000 392962870 929012563 208675204 806060974 838715449 940177119 113327499 789579245 389771116 868912265 826778895 960911527 203566982 237621388 731999694 857033877 232850705 506446310 553118695 909876891 563469040 948327120 574717331 970603986 428621419 589583564 807755643 963225139 975976759 985919698 645495750 890219205 305134162 946952589 335581893 763632292 810539425 961258066 613990114 691624385 377224566 722548407 251046922 555947871 423541256 452012007 636449565 809274251 893579088 939996775 533613437 754230652 74292494 93226913 728347945 843798682 714030677 959973479 971488797 989958772 279520827 294369651 827045889 939252532 37284421 952159982 17097041 166736986 79854688 509566971 735827282 902989554 426955432 968201094 386986377 925108681 132321313 472584805 95624293 494051799 945383402 997007695 372951290 633745025 932232097 992686077 426165937 961684409 956326247 982981323 519671296 951513590 505097533 610878608 939189282 965566873 63098744 328600131 693080385 777179250 174120580 194681815 752592164 793121351 587094660 970681392 153851509 665046084 10963932 531371273 307001121 605046892 590317151 638864371 892454283 905084941 265791496 321558720 711417653 880455606 40548820 240467329 520789399 564531570 679293699 763815128 786045796 813589828 268650117 331380102 668715545 864186047 601956195 633792581 11471327 586657993 996858997 997151741 404527574 542960687 341174796 382881035 786525815 796238764 983742034 996052546 418404731 520555433 933747486 958324346 476114604 879840252 319897231 645278421 812606905 859170794 406442992 511786696 199654559 356264556 755604066 829514631 477473744 838697622 78917510 490245787 94059453 426477760 495189508 611378446 493139327 932912613 674485680 969420347 67058945 437163459 445693397 957788349 204186475 770536526 156238941 838470928 242238265 658093366 931866817 962198846 424374806 508745144 14577548 973993822 407999862 799435922 133381138 600999265 715886487 742612458 569302998 648873183 159754321 211202115 621544 107041310 513467216 803660290 423994239 782546820 770172239 916188705 340144305 437726687 12386364 256872004 550869733 720583633 963390810 999260348 329552337 341351238 985548288 989376722 353463344 807778385 97471873 118456845 394745708 547499997 243114500 768961364 247471682 766157668 9055948 920051243 50562425 181471049 234747551 609154404 329813013 762545775 730581777 883492546 256186617 951924004 364813715 960053628 587685669 713427304 8726642 47206525 806685330 961335399 882879055 997736027 171691509 753749289 248499353 451302082 553731187 853002904 767511178 788829024 895481322 904255593 175234467 497330002 966786874 970116292 581191968 707991641 152382716 254995452 613410756 971749666 182872280 461942509 535823173 569954660 502457848 995631816 264818356 953513278 55391455 738447473 461938658 617857878 586033618 774876488 67692685 792987714 846700226 874573680 929016366 970592484 712800451 818216212 491135363 568418849 121039311 133493221 504660573 936118934 654381029 853472607 155752695 809571244 464184370 592298932 917433911 951020211 862352062 923544105 836337387 995792565 589545843 798430989 618364060 873132478 674646833 728472390 413728406 949340770 411297659 520030544 849926672 899843359 461570615 741958880 145015858 684746476 698240873 882158761 432628645 691467546 842871636 885312210 594644483 686634251 340549281 874935732 890325898 946772505 366066730 596762615 97709807 304401015 40229627 886869527 429248495 901881082 189812057 195232967 411559151 552898093 705418934 847226543 884997921 909819660 139164594 493165059 520145705 971946067 853882839 953805317 231877176 691686770 1093071 528451789 868558800 872762139 559053569 758213775 933724535 988683342 346538078 665323474 148860688 377555530 515944248 636594082 961349749 989764976 405028711 720207980 752442045 801029657 134580881 815019517 948296210 994453466 649667781 970468445 740375514 780612448 169501882 915398295 627046113 905970649 668556315 953571437 769156399 818331614 257789092 413159653 170472741 975928255 616437742 754276351 96298293 750065290 134608649 721484020 240865960 620032906 637259962 678202815 658612291 890017810 194544153 564350580 418618425 789230870 606701078 686005065 627232413 838556299 400811807 430639171 999616061 999827975 223432255 443244479 875176416 964643798 655006321 663334477 58065237 75978892 267699283 612051620 573716113 833910988 30673867 938520532 78878709 846866332 257805701 697613005 285092846 807770929 13204082 900624286 908197508 964261535 637862968 785488644 188997230 963242670 668674722 989428172 105259039 423882513 33673747 899438744 401953920 781111754 965402606 997893099 787967868 973822161 232332875 252801097 922645763 980743093 603989553 963288483 383501787 429786305 661640731 955673414 765136648 959561712 316045337 486490642 278083194 412579713 72229549 134117295 181532748 416831803 349692945 358681967 821323881 831091146 203926116 724446614 617413564 967749014 674270904 985674073 275684773 658677638 775078804 874065548 67750383 258378223 872561904 964546375 371627745 676014938 202625832 887064932 746034324 813224333 630618596 956448108 928208264 979246117 717720836 727364773 860777783 926400709 704908461 743556159 533367995 859667538 228332962 242738781 160709805 355547859 960931386 994784377 74618768 522472454 184587759 403880095 106982478 922016520 181866777 685135815 925221881 949541758 928534981 950176855 618924677 803635388 153394449 819993471 352262794 623783432 888995244 940630667 943754602 948883069 900398268 925045413 45627122 950508531 455812497 846027067 46225687 376260720 97889249 708251422 3226047 429443423 966640746 986760950 27828449 287311831 183837993 931955825 245890378 414174431 759433955 927620327 495925237 585401645 414795224 453754980 64109033 497194415 569202547 650361913 204125334 808816967 478072900 796575547 128523622 374925021 165569696 210202767 337334281 896076697 866820251 919323458 559718223 823706787 138194261 996836204 721061355 999331465 92320263 548232274 125646576 252821159 371687771 692620278 805011191 934554707 787014945 904790886 161510602 622989863 374195309 553477305 870498925 878578515 40903464 678290703 376023375 647218261 252532571 663530640 408420580 437527457 132612621 654727969 872253478 902372081 5737388 251271250 447764017 488296350 316219554 354637008 310753311 629868032 850596042 962550514 663194014 948352196 31360399 762466842 506914691 967146787 938808977 953201479 674364966 938010033 336329015 839560869 378799643 794092250 237925976 716564722 702043839 747617346 911295361 981006267 514512880 581926078 77804731 321568666 216541062 998293449 375592417 685301133 983436351 999159533 320359267 676530958 213788861 378853168 512676964 628968935 915159282 929297114 896160931 921655575 917867313 969130653 736084641 750692134 578642629 947882155 492663946 756692400 965086201 991504210 716812259 785277837 58471086 893891569 134831192 400276145 210143919 318979842 518886104 778357865 203577501 948277757 700000148 761551163 478178715 896701754 701500581 842958988 23286202 603029064 205744722 429223362 416850395 937919456 823234459 948442505 598438266 766316431 924190718 937992562 692302973 983010200 332899267 492710295 86452676 860863394 663467670 752987815 383555201 783111815 64576350 366142899 119080854 327036949 179842582 652030590 837886018 904358888 715809719 926239829 522307226 876100868 176121694 916579833 230051802 984477880 683807956 999758268 966179985 970717200 693255430 751470763 886927134 969464792 676123395 754101840 177847082 467232184 594369700 710590456 209489151 884386972 438450828 860847237 875263417 974707775 211989654 576475199 270678808 690540158 709991584 998574712 40447031 272019725 934953228 957280586 130770316 227450126 975807748 994590193 77920952 499341517 820539274 895225380 985915231 996901885 598372020 664923215 238839457 409988112 546914600 882481464 59762408 903948274 238697671 253110690 362871296 734693152 30541445 352475756 99559225 99593773 851152170 900363589 864929053 979224864 339146382 865224772 833913048 957360311 406115259 725713064 264695223 632191275 372665084 547278907 822056901 917391230 421443401 711559426 664323312 967619107 375985758 659278177 455885404 956735197 31273128 363261944 847965036 967471224 244650791 272374081 59395162 924098625 299530333 522862767 870258426 915149167 779130346 885854004 794677673 922401514 18968690 190572262 758972355 873128535 17241563 873690381 18107242 671052371 289789515 401491808 739407491 750668352 555127880 663855601 457473398 623359494 645805751 770672564 675680261 734698198 854428348 869834243 78457865 872218786 229415461 704666122 34041771 118615195 666075584 799264794 672678831 848975388 574718299 883995004 631264295 755147242 600846544 629972121 390854985 420412795 212828999 786322280 774067551 958723670 494316225 678682055 518848882 649977140 237033910 405117037 636761341 818302566 924995262 928725099 547463207 751845322 159001783 353039727 849712667 923023887 280326812 282283689 937772776 963284618 258990582 583172143 651429047 834349513 946659720 973928065 119222592 164172587 982898047 986214469 682289457 812624307 585959359 640729625 208309715 399507136 623861573 810162972 347671741 856510829 432139665 709968859 213760352 884095458 99420594 749970796 969544444 975123131 600795837 918384730 98263962 829911101 436004868 591796743 486404668 695800377 685849006 920239229 625855151 742647203 944726298 993183403 723563442 964163761 544220284 811170203 871278724 888917455 212646768 926482306 364106552 801424686 916525336 980942934 191935664 538678653 710555322 827152175 741463976 965944984 555718615 786195928 977497910 996837932 686227569 850952231 291064645 537790188 634660193 958045112 634736070 985235136 604994791 621336716 521314261 891804249 61721071 368356764 754535580 776301540 406362819 544111027 869022815 906527633 368384165 547522307 110619019 708591273 836359076 920506188 143901400 769554756 533880829 866376903 370276459 920733966 926203340 994758302 833808837 848651742 148030345 214658657 218710946 717567491 158788889 429307230 549641751 846200876 460179004 708944149 49475917 237829690 880328313 942158312 615060541 834701684 641830461 815313706 795021142 960561667 942239514 951931978 608270541 632466568 51996734 741013152 589243780 817604918 417083174 882802508 812455075 918347802 212265013 773075819 293112036 762970387 846225663 972468041 362711628 939639038 440773430 465834546 121318906 345250469 42878575 998591140 253795113 968282834 681732644 977087795 244486360 478172742 32407459 494459522 183223857 707702651 966488958 975753207 97405357 442440311 584846685 775801896 677204161 776875130 998426804 999110837 437169845 763957801 278082601 880286222 669380951 909290862 677426332 680899990 310327233 400142051 44551224 426850201 426736918 437045668 172800721 745924587 704274046 991783871 181518502 612484833 329676937 734280983 743209815 813620166 815749666 847161326 97607624 195078730 707047812 898418027 892461232 946608070 520653929 790466771 844833052 897335727 457993578 818370331 323787229 729481982 245981126 378743871 653357450 922225799 695998009 776135334 606235915 940144756 125012563 724061089 449585805 983003662 95989561 403702297 949948939 967355058 878841216 893523432 642309206 777518702 419107285 949501471 511411959 941098605 173502084 510273517 487796182 519571449 554552876 919907873 883829382 901096760 331888560 880416600 450932000 924066233 413967556 859539411 679852468 867223174 683127490 968384260 308077827 493298109 871996501 929703472 235515797 973526019 10512303 373175980 923170503 938695123 762004381 932624020 570126591 658361825 974925457 993845088 273909719 403039402 546662387 921574069 674924372 742323573 505196715 922933906 338587713 584116875 216509579 936113856 673565856 862072040 561300512 853533194 367704844 709348522 840387070 905502856 499106499 867943719 698646876 969261984 415975977 736494450 672767309 873685069 422090996 994320597 225200364 777685595 833231717 840981366 851791 194287814 632733678 853170643 850036303 898873970 919564854 971883474 493760428 830061768 152802487 610596405 828073902 936002414 977147814 977984183 269908045 508260334 959022982 961670017 96304926 695708878 280281267 786180741 198604255 879522702 118847654 244187265 933783586 986947419 513220658 627305382 177964582 350365431 666233020 887734237 636896892 760448008 218874533 746847662 5735430 538317756 2649985 891749980 314827195 517794072 458076236 891494182 176316192 920217082 684015376 984884016 670741075 765751570 626323220 786376700 891322649 933921304 346655290 795882213 819919743 953672931 562325843 902983261 616228354 967052216 874587152 877288359 532200674 785352074 637730306 662497958 281765837 946220424 786494922 825378528 461227565 947386764 640344885 713218053 415618178 799785348 151919567 155193586 598564043 848763517 269990817 314296312 712968669 940235081 95722235 206864268 334975678 380229203 564125424 966660840 799099589 918194870 85211580 214985827 493960126 972039484 238683033 395135254 307869964 793878085 845345531 870237344 382285780 525426990 304635089 717977495 779443360 934474828 767108587 879188969 76046170 88892435 424914625 845925975 618026901 756401494 654015276 992335347 107933078 456032775 397267885 622234425 578535541 981038450 707510518 796312092 762931424 965407386 128999004 448356778 356017711 515445548 891709710 956005467 304756492 966623029 217046930 244839129 868052752 959430807 365730178 890100521 896067946 935170008 225022651 843396151 192435402 361801002 201960905 406443863 452850490 578089999 752894904 996999587 220425884 504682875 425624788 950578865 794738595 833789576 668962750 698523419 605009261 984133282 231640143 498114474 775006585 975334244 166008619 654093398 977104881 988612629 544669085 573929077 936204418 966152884 843958843 873062362 522249169 795398063 659753599 850450793 814265229 962005736 984750515 985872161 832027189 927635046 426686143 961369465 369769055 633428295 738668037 959161624 675353261 770084897 257526242 650661475 885059447 901844165 294948095 398071359 522272118 709395700 132066941 143153211 546495461 706192356 664727356 693864743 388384542 835885457 816479021 991324116 836606951 863831471 689523902 945200196 385955752 583485246 879128014 922680297 761271574 836080024 826827004 907633636 657362884 705350085 532813166 573897517 416300320 633608519 471304925 977688692 321278618 851457331 344323377 858675919 727569273 917314814 975262490 983274805 64205839 692144309 942730465 966882661 290904126 575033109 510130583 525018002 429154825 612793834 680569447 971441099 634728583 712988572 552899183 866197525 261829546 720498725 476615889 519758299 662418305 929252525 385588087 716143951 768356767 882641922 589306510 974838574 436038127 928189006 629321760 641322916 93904069 140994512 203747170 788465424 438264797 493082580 992100853 999621827 190847969 443831299 269885870 285796808 714608464 803783334 972357596 985285116 861114456 887208534 500632387 923725252 195366482 225230478 651213992 814180945 720955988 879313419 768373364 905613194 92993888 780822507 120708784 565181504 967731357 995184506 790266525 992947269 671759292 807788884 305620672 457043022 917901106 918466917 446167508 921380789 126932324 730900723 397848551 561295852 146836631 274247686 538862901 847397817 438296485 756980717 350130317 505346767 990754647 998182898 812899760 842677035 996344137 997844995 875062747 956777722 401471020 950627289 585084635 884729312 778662813 988910149 13429325 107357100 958326842 980177665 907024386 990710967 631278331 705414582 779118979 786503255 233438693 663294353 404557205 965097145 576634644 637857990 164819110 384577219 952008617 976128696 969476360 994459711 394245880 875336008 535280951 998220567 983433116 992356797 417648916 443967700 938520944 960180933 419848465 731088696 173157171 853980886 643933975 670556161 568836366 770114982 423447793 846082007 372714830 891359476 526558020 777275465 341031577 830763912 519311277 731896297 128948625 321535406 527720896 850765389 293219940 339726953 411676430 540084783 424848377 559531239 33820284 910273288 820551691 978795350 649058186 736815436 96273566 135200902 993391481 998375886 242428593 642108262 537743549 650351788 968418139 973680977 671968076 873068743 783696675 888363260 495711655 514164392 798311911 870563787 289682780 715768594 563519322 924738165 755162975 761816345 240222029 615073783 983617237 998419175 322993164 378140906 760502299 901221596 959858210 983537842 383063702 505304238 574983530 855123129 586487394 772814354 547614930 583569000 820657377 998943850 943404420 982916529 161598356 970511959 15109541 830214444 270083379 831648649 60528139 449052592 35019518 347719619 80981773 209412578 25521671 811352541 735360716 982314180 573197731 889385893 862993168 915752710 824511899 905634426 780970569 897656710 343778114 951320274 581004218 789918066 872348852 979807637 509742482 960643228 677730780 921612340 501872317 936011720 407039426 573921859 565327323 851320912 380320414 730884600 73273567 944177070 974193388 986212401 206147403 869442723 691158480 984931527 173021298 694350490 129316661 828678773 883319818 909835185 181482880 455502652 796860607 809777507 209164487 447143894 650429157 996127971 263624787 975473593 283037727 587245908 897595857 997695778 176189556 182552931 16102528 680215300 916121695 957565335 23614198 214947600 162386162 613865656 47170600 678042156 919461985 948694633 287514611 903739679 87979128 162476157 367480561 806612236 860178591 950546963 621240280 911183357 885091921 917450808 246819692 722180931 52732294 331871596 901272079 926942334 558624032 719394308 471988704 849492615 158902161 215241927 470690659 636250322 859135912 934874766 618589230 943756088 696140877 875409540 987418892 990214965 52155262 796054390 607678451 965013266 125122183 910390549 499830374 963528963 52355126 104564267 364831601 886900632 786162338 806498691 139759758 596140204 104869958 806475699 323460239 910501916 221558212 646947753 867172454 952821789 72875362 239420187 942911549 946216547 496930698 779702219 787473391 979684314 921177462 975765630 867088050 986744185 780777996 856683534 856041226 945428206 609271784 740663243 879716329 977683035 578915163 582451926 279732545 786434497 992820397 997727158 489119518 615934834 674763224 707025141 697052821 981602852 656963020 903880329 56788882 198064984 610313289 753481428 918297517 933700260 294390533 359759010 61832730 513802588 940591221 978906186 931809118 975488531 838553770 964571602 911089876 954047319 422129600 870561618 384238961 484343303 93676086 933005960 834208978 867206439 237222972 607798171 54931669 551819626 283109628 847059257 402457750 997245318 735782431 942341517 295002707 329134402 16159123 878356935 646594711 910192423 562616856 728316425 916186132 978526786 466825292 582085537 822687777 856485595 325401299 663230631 645937399 813666593 575534550 964373647 648550870 745421143 390213370 522324047 175548440 849838895 733750128 949549109 345588431 729164153 307131946 778960800 297515237 361102683 205253054 587290167 760242112 851362971 618145547 897799225 86527331 307212418 644454412 720837120 347296937 532190572 673750640 753678681 843522302 899736497 801528014 848039485 365452425 923881075 515375162 938805370 329132196 940746930 254916131 509760529 487865861 922194302 109524693 206367297 49601593 607249762 215828931 615413963 60909900 478635335 319048875 709407596 281727622 597430639 482273800 681069027 226855996 822157559 909273970 980437074 863969632 986876593 635033513 847115617 607861746 765441780 988570575 992362574 263659932 950033383 209914391 264534274 254774954 982718737 139780778 473395323 665180859 828709480 577368343 971975849 600924621 664674642 404871464 805310725 438785774 541456418 447358507 448543627 653084397 886604239 531328652 866862510 389298114 595784104 415806593 915514197 97480526 407308008 125660872 177004058 776262391 928697334 426792217 907984309 732062719 758119903 475053475 892642817 62704765 635931930 61005021 131167613 939989472 945526856 670414903 739862616 715247617 766998581 768610744 866527800 721291112 988452085 990567385 992564163 978343984 984132099 95274950 730787992 998198780 999787319 408871409 999468125 764982980 865362223 333840346 649291112 737092791 822122671 275832263 338342063 910560527 927216226 692363860 917374493 924071458 950347241 550845957 895906755 968071638 972188716 446557586 940715743 64252537 745404671 501125080 821197017 786548133 915014134 983191265 994899022 113648639 149709333 96720204 958121762 281644373 436157309 22114513 842994027 270516503 952072933 601387309 876783424 639494497 895568572 202294365 927767221 448571046 797974625 192995441 528137775 867186172 992514332 471808068 474986377 395027302 669940070 77530907 117278672 323522549 475177163 405074816 934830473 5484509 813190508 470313463 840727529 869909847 943068684 826431128 963939210 302895076 557512614 277683701 764033395 728245637 749952397 410005721 986990032 259988929 599593611 638550841 730830576 523828876 921654719 353159899 433808340 199767534 856163289 311437434 923224697 247103000 803749145 894755130 968003678 267578422 525466357 504432093 932275578 260620626 983613326 303253465 957941453 246763075 847232581 762980632 853489966 521422177 664925295 990104998 997129214 803654485 973721068 502997320 933558494 829628824 961079628 730909237 890206774 565751338 722184896 917927703 996591963 956121536 984733448 713871729 903146558 449793216 758679693 421099283 648825647 12116390 739131798 514329785 539454320 236841965 261685290 288145531 675971925 120359128 505912626 513899133 938351265 708875252 907695388 684987256 993155075 637127511 975746070 783604358 857179988 354572698 877121991 692920070 768508092 381044000 403158098 533062020 758343138 529628168 972349750 492774541 966073391 737045179 881532462 591475307 949223827 23096478 599939221 755524206 990088897 777071254 951393548 522825957 872836590 899754612 932322705 160220245 622876445 847302697 908331037 30174772 873935537 998591187 999012693 601087657 711249157 138355695 285835567 750031608 821940864 290814846 295325695 21016125 935390653 776368435 876380663 193466664 897102069 841211031 978105933 498510004 763899839 112295520 176249028 654782892 868012150 657379981 903212134 498220164 954259936 831055919 841783726 385878159 993192211 251771871 944249647 747986326 992090186 348296827 647530401 291472786 605566271 68784248 500038211 89153592 466355906 857081773 861867817 90302763 810058138 948414494 994012524 836769996 941997000 901422709 993800642 126444788 947654238 424736257 477202986 385567532 482905135 300226280 753329516 125341405 938053004 930604520 932318455 874662414 899442393 259841520 490071686 413065229 762898193 384737755 844299057 228329343 806625599 618837004 625407867 357807260 382591361 992100843 999011563 361581984 702034204 984947202 992638606 405537509 818656111 750044223 880638047 802448286 947755797 146465134 265892383 774046826 936204835 94445350 897966500 888816367 939126718 652876295 671615837 154794791 179083603 473265550 690725884 410434757 956297457 25001397 740402250 316131581 597453925 625336149 778312093 81514587 486811253 150112381 435643698 334066518 754726396 792146207 801689285 683096740 731110682 6642183 821700157 174443937 493491293 934882797 992961975 996942019 997203946 137938171 481177311 14108254 540994019 852558005 949510611 19592256 328210980 216682487 803541195 142263704 940319422 746788773 852353491 471162994 873391581 736937018 975478825 573198626 838900474 675556196 927357227 323632084 658713043 44143020 246327047 397059102 443861169 327336690 526896197 635173178 775986646 928698971 945564141 971066479 973568207 438738419 800396282 20979955 169086825 298080907 477523859 355777885 711542868 920859562 951995312 353189838 540372435 149933674 921069468 560016337 682082955 799619408 876541088 571671999 964121001 46500234 165093066 401447611 757493120 56405417 105464831 508055089 744932192 210940645 274988517 950076455 990243225 435284974 707895728 607525808 821217085 490612577 775892832 825771763 952349340 191009274 441501792 156717776 450695241 486429527 676266381 76924206 570822019 878336646 947643257 816488961 943715619 125989100 724140844 388832026 433196067 244526036 301405867 400503684 725134675 41618460 459976062 233360069 656194212 874015220 960377776 739981918 918234446 890095293 937372216 41384663 887701937 147570361 935038642 416279339 518427593 822720608 918104210 284125670 704795759 764437234 878852168 82965492 687302204 786542180 971795293 499553020 629002415 791624562 940160650 59327156 953913608 695008839 811107896 926949561 961082816 192813618 505746024 342854605 639331710 394560550 610765741 899313504 985972540 736654410 751810108 779313925 847634538 518247056 583897790 936609865 989379652 330483614 595888531 944994422 953956592 663259330 950591932 852778379 867351745 230818405 887033273 575730967 924983899 974525563 994295877 461506433 697328312 191216182 571410762 48721841 139301654 480712433 995063810 305116103 762519399 141901791 760105927 781579490 919891688 814620636 989773997 120802010 234830815 356390548 918812680 521779956 732748363 942679679 945789183 103786437 116507297 518386515 876850242 194352490 922735122 833891678 946114330 821820046 922527411 513383161 973516934 973347810 989747978 648231882 875392588 896709743 989464984 53888394 508383049 202215002 497629000 563163823 949209885 203281010 505326259 509608654 725515221 535791658 812250448 804294080 842307916 674709953 962441176 267415385 343142158 858037041 920104897 600332260 745034004 367731860 652790750 263704254 965445760 549111240 867687540 351471477 655915279 688340622 698606635 212576442 848491368 675112858 734873086 711348569 857508081 476029416 735078751 144475493 413470913 494108416 553166800 333180322 919437918 351573040 954073099 946994327 998145174 897608488 940136722 339782726 560485303 836508945 974901247 875733866 959796651 722236256 729251816 890606428 912918641 75269342 482476177 201798803 339910785 190179489 588289047 318577517 642324640 320820707 892342493 52447748 162158007 94689511 690601318 615626973 681995740 814179383 815270114 195604588 443335579 521297085 534533260 897910782 922458595 961670959 998764220 950353350 977997578 755691473 876232596 802718572 823468001 569862548 570268257 414586223 697335587 352008969 367332992 337019743 956435917 252234809 970589604 783722251 870011429 827859475 967306727 157216891 810014230 99846070 515040214 791179184 910507836 653398450 837532293 521268323 880868071 811324143 978252591 830168630 953556865 63605928 579404634 945338945 970694993 510560518 925179978 378310440 528815281 426433903 596755036 21625209 859795339 514105794 904654841 391890072 682234594 536080252 627804812 81278316 946745594 894727746 970964579 796877915 921197305 256485809 581266922 831976084 928568040 56917531 332472025 680553016 837118073 189115557 320296440 841528446 952675884 462359685 686763991 840065435 877021325 287099099 786155299 788053395 898095780 120101087 444232846 923465883 969868970 353255789 846775775 900621750 949612620 229543866 616956181 29665763 306725650 362193876 409137764 964415006 989074876 355096648 924399311 610381783 683730845 202002165 470084949 203436260 820063515 353840682 807390476 672001845 886616191 167133256 299137540 570670606 913516495 158912959 309711677 126684998 274630287 958769225 971174843 876686305 964672973 596412249 732955776 701659427 737239644 3408359 493533673 750151052 984284971 82953388 275708702 565835945 965735377 805536814 868554950 437769825 673000888 504810944 616103627 259157597 449681728 928460902 934614013 991875446 996947014 632973528 778133352 374508962 522555777 564687657 618891523 132147442 328420378 185620830 785615788 540091993 903199982 90577541 730740068 191075598 376499966 560234799 636231295 5837950 266185034 165285878 844173398 963251298 988485224 803810623 941596880 12688722 249430689 411488423 928872373 794184947 936839781 904158167 960094273 822220471 980002167 565986331 907938493 342580516 788474771 698179866 817755384 429186779 869293058 298714538 361072456 331866815 825499812 668372422 905676959 751012731 836169797 428786798 477826212 388960410 968761662 808533153 962251532 236246928 752096063 540358141 841029345 539036598 830676526 730576076 910399180 135565853 942833273 475464422 938333741 234660655 550983752 766135522 890500539 959631474 998010397 582352749 965992924 724860529 837979384 221415672 994195509 451666831 754378193 646008942 967747292 339216761 807633832 467452660 914726419 328957022 421927592 528704426 837641800 578478417 759132131 193902956 194397984 223361137 406625950 72473048 92798930 397854570 475065752 67965200 319579938 474015707 861148259 616976620 902340557 550559285 990615401 883329886 988890323 287236963 311501552 923742155 947559104 762395368 888288795 821891093 858503689 474606997 510520526 275519038 588452079 938707094 958808510 44310649 381757730 526587668 882726168 96899887 938763739 213177129 489558396 941062662 981323412 44619407 233703574 303472086 509991337 560211001 932544517 84726928 977840493 905368245 964043604 304015336 665506925 23580275 101895245 688263310 941370533 524019520 820016718 228829187 951678166 500409771 952453989 534463337 928663370 677696652 833020309 350524937 676238940 760990247 837446252 92003065 410091189 582188924 588985800 829769580 969693328 213345954 502364446 962740836 989938541 815970663 935046597 417711119 447156973 526289177 898561262 588870546 815722208 186047116 324585164 412778797 950012050 786622489 799628737 46163201 613149141 725478583 844299451 818690270 855360495 139175349 625643856 829608530 878139165 545524748 936619631 472044687 949063965 946042579 996145015 868230337 991829526 372301530 723530167 244632494 308664578 219272174 552888544 957079775 963646074 119894088 541619699 760114403 975984037 104807074 710566916 82797238 552856777 529794618 629949752 168233895 584750479 983590062 991741635 442507544 779122847 998771222 999429962 486173347 498859317 491591158 836905676 33965856 92113624 485716597 826852686 866940784 905750938 866228750 988991746 377933926 558729410 653595850 791807316 705839696 907430660 903605699 976364851 411926358 865020758 340775811 410423992 869396653 962352399 612688690 972704325 317162367 691695284 335043559 701028803 112483572 525448470 778127543 827618879 172656703 211020228 531035988 806145830 78469267 84787744 30932491 116865286 849095184 865631484 813627951 949054991 448519674 767709534 913767949 967849717 770252791 886398265 33061140 841110683 927632471 988507345 988725878 990077882 926122101 972786100 58938861 776640186 221598960 447802138 744256809 802970124 294286574 969608428 325808169 830848346 398558809 530883017 109634066 531881579 608845312 905677832 1318041 439064287 263170168 798750112 499931506 522741534 399412431 888628069 140513366 189385616 333311824 952670686 642520397 750559368 150143146 154147557 6218629 99981541 730626220 783837038 808315422 937564039 13530334 25001465 104058590 267143289 6822042 209655734 591828114 783808869 307781229 825311952 766486030 991307870 813487824 845533995 922083715 996747975 653915711 747157825 528574634 617998891 871202075 994309462 808417749 909643547 423003823 434778112 576316779 578287271 76598213 209994892 358181874 673647334 172840598 388797619 941241596 950181260 363094772 473990762 600733029 874523185 534124287 938975959 833066731 861066304 329629507 937777330 435876552 548122706 306934493 775839223 528047008 807918328 949379175 977871274 80034709 535879156 365312355 365991124 841400699 981741021 17619919 296289830 850286074 944306906 364278133 721669132 577193416 922968613 979799670 999066586 467114977 870097907 257469837 894635606 948070940 950048470 562210522 854962073 398354126 419937964 48021957 552197130 910208713 955998253 710795589 967420417 610322750 690059268 93546038 892073079 751997385 855691543 230239474 309929806 904337736 958116925 110744800 657740017 364662253 643768915 199809010 361663657 512417563 998738513 521899847 753456231 363398937 925748004 5119493 949331274 236844263 720701179 221776401 309515671 856841280 871606505 556422044 727302806 673535174 836287873 194283787 475613272 405403241 564838767 381384016 682938487 466839885 559678076 825480801 858818001 910605274 936496283 357376489 747610265 990160830 992913319 83617707 506594568 842180864 943177185 602214327 692786302 95944695 512860984 500200355 724409296 179795624 986404957 809977341 916086908 49847691 134990210 288038876 902964966 427972407 852548137 169827503 797619756 790177556 888641975 256203736 488400460 857015067 906659531 939845269 977569734 920783989 922040288 782949414 876607078 106659709 141159199 656715109 726248468 736493570 831821144 20964198 702961381 761834922 767383528 76570786 180649939 181021194 527809394 234588840 600621750 26917820 845576675 30903816 450170302 492363565 597573721 998986974 999568730 937753865 951964019 138222412 644535472 966096674 972414090 13364974 223200537 910127596 913573704 65587910 345271628 899221169 934764964 953782394 993720784 178220188 534143292 641532302 956873950 721753104 888442182 159470725 573967563 290515153 965225530 872305194 919872431 24698683 316909032 727381601 774292775 823157592 929831426 772109959 832031907 207044442 796579897 859118962 901955619 440576140 606938193 612302750 721902902 190842869 738996320 943882222 985996341 221896016 349098051 759885140 809427464 66894375 145211557 651839592 942344490 427330979 477675513 788464469 847034290 714178464 930561964 847719086 913127999 653500490 705436829 62235264 739210250 492391184 647537562 290163419 850129564 945817970 963040598 744873780 987539538 924780143 950867116 434033548 856264551 357858452 711778691 724261420 724537101 859993104 928589554 176678867 766862271 196085665 809153254 782705241 957678242 101724125 651278329 478039604 915725104 555878969 805266653 994253562 996000319 861411402 908277768 804685304 895570263 786690846 934392653 962188055 962491271 838563032 931081363 710686979 961877414 201211457 927584205 513238648 951271000 145023514 563775790 537005835 757071578 594664495 785094932 654160390 789980872 997051986 998879446 796904151 872850949 906079249 940341714 52225511 771506275 436243026 706319042 126880694 811116305 162236302 757168236 458395928 818178713 796649481 993789947 776191529 803319096 142683715 512038203 75247118 520116204 830890312 854558513 989767106 992993956 103301341 602592736 513243874 936373100 757511629 978645161 515444635 735801247 317979713 614345907 948738129 977183898 595899740 741526520 39400337 441930706 442823291 855543268 183661068 584539907 228087451 677181226 548177659 811805243 657058178 919585794 318691620 509179117 14933523 503480208 719844258 739137937 405044171 865878145 613069834 845322736 760131736 912042873 677985820 912840354 569692275 847540594 380835935 983574881 451286023 604088896 822808877 901585733 797041572 890764294 329997895 849891889 529715069 660146029 245205393 882476188 46324538 859489198 849669128 927811326 469352475 979737079 510214234 620615808 60366293 733930665 199915699 994875799 218723999 931854069 429383734 713213498 401773027 992332656 769891493 799051786 102529802 120732982 439875821 556127099 446360013 951546709 284212654 452496589 812091974 939273498 658851100 920334910 523733699 919486413 323571743 576129226 431290690 489642784 122288358 843777737 723126423 810430045 247824417 817177134 424337660 758712282 572865549 705648484 644733399 868383991 184746215 728966279 571121046 782579015 735794158 939844064 562066913 601121268 628875383 857964404 71145601 738467620 651132581 806777418 829917004 970723616 774726275 959844379 15469848 622593803 36384463 963070295 246971093 986555916 73595571 673811149 653804298 739874433 364721634 768968371 829545602 965792048 145463407 975865662 915698756 997937343 36100631 731212641 661800879 959265597 250700141 528712166 359736511 471549826 440286126 493242111 483724933 917021127 697445916 833211136 816774408 945267758 915790050 955152483 627207691 691432951 101500794 834945038 193549236 504240003 363430024 946627824 920180154 945664886 659707848 867702981 375356673 934669326 786178747 806055189 996475274 997564402 204126255 724625246 334666199 406605974 513929050 893703892 497752464 611115728 487833970 908375080 286947500 627626028 651339965 898055612 130343644 208714804 143825144 148515652 417809238 489909051 493868155 827744067 658091681 739310059 140593304 236725602 519163557 640752082 506611168 507993822 609589498 745885807 626723574 750386843 108981566 903541368 399613415 434137073 792791828 881886892 222614263 492628369 867976972 922309742 758602335 810338866 437172979 846163483 773741107 840899515 245488937 659030185 767115478 865388565 624563016 977455649 460248989 608877144 785271701 980294208 801938116 851849856 969795108 999188639 913874421 945141950 237758344 713411103 800984991 924546671 978718456 988785245 856597457 916321810 718764282 838839083 91188678 255224750 317411250 785179156 472983270 962310519 698525690 737960324 151487990 961990865 177669487 391375263 228436555 790241974 655501323 897813897 574253438 656274533 186122439 278155611 975553422 998376439 219714424 875157390 480469611 898208100 215648910 683213383 732349919 891174905 813876999 882157057 637546364 769125627 524767571 646164860 687023421 730218653 46635428 963733176 113356462 524849765 528889401 812341199 147616810 641118984 805910075 905019350 756938423 922772473 769736303 911440166 199548325 436111139 454718311 919552885 140841700 546452550 593375405 634699516 210640960 718913038 88128188 512036519 303010126 705328881 738245754 877807209 180664717 946461887 591314741 724695351 864520801 878609094 653484756 879207919 111717673 172231250 29663656 272819067 78009756 913331735 610055692 973203445 74738499 755788990 956156725 966347716 427219635 573334771 810577953 869298236 970386597 982992650 571596355 914535153 500339612 863307470 564636161 992711476 40911889 787764648 800419413 946958029 750788460 995271895 187399180 979020677 842096337 866132269 81091481 654001431 50480334 919456085 57482842 189743496 677653289 742410301 978971024 987171620 862000908 922466024 211324825 418240973 51164800 128574178 588532361 985043202 718596858 966587461 266806992 770664569 770823823 921266394 187570371 669171701 969061019 970642806 317192558 736725275 605426289 811893166 56232435 79070439 564061013 757565415 221577014 614877789 266082842 682283549 800898463 803837186 195656544 880110827 618727359 737709115 949229826 994969049 353995720 861621203 373154692 415020191 527419388 960845857 952606874 978798087 372273454 973062178 611354929 891542612 964695073 993633321 707736352 925197691 324061678 335672164 572295470 999323918 542830455 750956807 95887591 340095165 674010206 771941256 124215178 935437620 27265856 240284065 561276884 982760812 662596523 772848707 643265681 730412716 590640112 768536442 7812279 11950239 975229785 990351705 224538786 683086423 909090476 957106955 534731570 623538084 554919948 593926745 359425376 757647142 165582420 571199965 865881546 945298146 212612831 239976795 527561896 848345194 871712024 962151952 527786517 580242493 465172037 631916374 302648335 857338359 185256817 539266510 887065808 928893610 361883318 955064803 425266957 440097561 93807351 872024321 818349557 944289713 861393759 972729186 410862905 506132520 979986839 991525543 800160241 964222485 722485658 870206561 330285681 907843774 476256808 785541305 786902209 997012292 349544672 931048185 160021519 743952011 51906676 912666383 409126373 790583835 107593304 941704243 249398447 468954187 831532816 863218846 758999604 974564897 685607033 807029836 880964748 994584365 17252476 795495192 273583287 826022304 735216680 738542247 979051818 999103798 686311854 689823075 611682259 663833253 110470134 736291262 761281565 987377603 376233817 628964549 378732833 626371729 169052979 698105371 64113145 540340616 471468618 684724824 468421232 918374294 633832351 774284106 444411848 825737725 581699161 773031537 933005764 961004570 651712622 736500363 11160082 234035652 543628213 609321635 100053180 493473286 626503056 666782817 350756861 414821196 975272318 998874240 485148335 565858133 91344921 133458161 841986562 974962187 391301983 991776141 685321964 714962259 600017692 814156161 66765770 702248411 875178899 927641372 646757487 978032618 358560800 459569333 70774063 691520410 106927479 452401044 695011947 753664478 857843364 914818273 396343749 963714149 647562086 675648606 338156112 920079717 14121871 656577090 756339785 832520202 779596416 956325500 41588190 676357163 753814757 918284886 110055860 950900171 434319765 806406170 631327678 639086828 714413010 769571282 601173569 784040636 375806151 678848660 879338464 987222188 340172889 620910324 821958894 823972233 555371413 834225119 103164508 878948131 519533102 818422824 7001355 265695428 734747341 911311173 313591176 617242293 61416879 66103655 834132741 934140611 173975171 895004750 706610973 894168226 734186710 987922576 878490343 988000371 788223519 834147886 762276672 862227815 738222892 770908236 379766827 401919327 991167612 992192559 810378000 834529781 309521381 925590923 233427516 634239367 780768835 962903916 173603373 855876211 500203172 845610008 658109847 695453854 938772411 980167536 610283761 882386635 480577374 646782695 855963496 929440713 434038367 969508883 655137830 969490863 487715730 924824199 144822989 512890228 282733369 401316095 664114069 931507177 202397496 385082611 362921078 679018771 524906747 964705991 487364581 550508930 645262057 821169454 554959114 912416937 652274626 758709910 526487475 537892565 908174048 968238650 390652595 938262992 906000907 939973492 873325074 900545477 239002191 391864096 140941933 785811549 371853733 720559016 301714587 503583474 126579727 261085213 887657445 902076167 454692051 555115484 215920585 963399312 823041822 884973433 852288543 879472004 644367664 741117634 496083129 519571963 488222624 850025361 503303557 642069548 691174888 799420289 660866629 688196083 421830290 587170196 824924156 927403059 314929024 789942263 885009392 934482890 327811579 538790007 121580564 785686181 437678416 471217486 430894082 833229077 423041755 532012817 284972543 772020359 424731789 967516899 835280057 857135529 265046300 966768445 772325755 905773352 41698823 657754577 206537029 626930599 92689305 369472659 36112104 943201896 992963962 994989417 914505767 986107477 356163486 774603439 477212044 789270023 970593683 980425488 401289891 523167333 355913374 721912405 645479504 827979178 539993142 921693790 364918215 387106077 667771445 967970553 642260467 871133383 248470267 500875443 896176639 908222806 792559884 844740867 28768549 446948780 438118010 670633023 257981558 615451893 815668796 878282619 77687788 391887365 723348940 964255575 989240770 996726048 967913161 994992544 344245420 457800724 351109680 586217496 425671855 936620532 886295678 920427348 722056698 941397101 334698741 395796781 59035907 353560701 562297202 972063361 901276054 996665880 228620991 322980207 730079098 935324106 699576479 931112436 323305003 573075350 59821498 560883460 27102047 193927028 366888962 624818195 450634041 464591114 105353714 312620878 297167231 631030742 584904417 889923931 412672789 899354970 906831442 913232004 190183045 781058528 673703859 678905240 530121679 701369691 377628689 675328471 299491423 900184840 962628574 979608074 963770584 980316437 512046581 517579196 229620694 373926207 167922524 925665111 197892307 229510385 448569558 530799360 119912655 565513376 136392645 888823518 575986717 862211912 781442753 980865708 335954527 578908449 250840002 275287044 905660769 991757481 650247471 816811839 636012318 869992784 326493792 566913665 798797293 841302355 660291824 801315249 901705628 918807551 23580643 688428229 768929588 902127690 415221138 632467145 535896174 665098160 733980846 777229581 652676547 722537848 142976283 814521337 264316569 620906131 414384416 472522556 221421090 899660583 388744233 423693697 514651370 674730366 424630985 899062654 709465040 811521594 238365224 921798655 945905848 968202466 742961351 918826011 472643825 553344241 466422415 501341276 319854357 739700503 668349583 759452312 619789480 908907815 366326489 747767653 520625883 795276421 735947562 803055492 725046161 866282149 118872754 191262915 471169224 506674295 287850354 832936555 129375139 218071345 60913778 793473130 257128027 458103787 191054261 640325156 615690493 639870213 896561942 989317737 437947566 648832632 413721770 521316848 457555904 939296262 825785678 891706470 216323160 711024769 671235432 792252737 110324880 198179485 498259624 643269890 900698415 903066580 510070929 517257452 453645619 919340787 397003228 442837550 818162928 925987875 937586924 998830358 544222679 876871594 286882851 897000035 752565431 946054002 604192170 863898859 160767874 447090662 667127246 784002487 391464524 470529178 943151607 995088136 621107088 725385167 196207330 839921712 431039746 916243167 187810738 708458906 940158296 983192521 186347812 922932500 887310758 907852239 369657476 926741337 571238691 729934269 452226044 706348982 8034885 853834054 657319576 904336640 873141527 943700723 36672552 695934775 699077669 893479822 304981616 682507103 474755240 594344316 739920855 954406743 421733570 571786587 825061997 872405515 364706577 761480070 913541572 921414163 277595407 498290233 782205293 930947242 278077305 900334382 303192104 306100301 135660937 926005615 830376379 877683262 883373341 925083924 238919318 764363143 886050577 926748640 197704355 392989930 141938538 515442234 338465234 490413711 298305849 340768770 490135148 541382244 63650398 221296111 946874096 949291691 435251150 783285779 418596470 798018185 944203585 960655281 603893647 981601873 856067005 900587715 804316056 983906201 499009186 757329440 610267243 794785024 186231714 287378975 415872158 559060998 390617647 793931358 951065606 991356260 111895490 528691902 296114596 454543014 185866545 556611094 267989964 963566052 363203990 727210593 93782841 271925095 846854666 979719134 138702694 198165158 821822776 905086836 927321070 993186725 86890928 768878004 285167430 992850107 252517744 700234880 24284658 102613819 721856330 813621904 120001394 449125444 922047945 925352532 937730567 959106387 478294864 537576459 319701234 553588585 467306418 733381787 836781169 837279533 271535789 875272745 434675851 701781795 936543578 943575575 905784883 973985994 557032062 827673926 313964375 605906620 463358753 615760877 128820529 929068382 335262256 547119607 754544166 816707606 558729547 755286374 531556169 878848360 814976381 883726400 906785671 920210551 965287180 983808533 1349935 31280267 735522875 978029979 674596305 913525362 26776004 596713690 719027034 948684695 448117093 891417349 131305252 850429519 723768856 800183817 808044096 867179139 913765826 959968520 585921793 841674306 782226912 949555030 33946161 165007339 280505092 885298344 921057499 954742612 546918782 952059436 947018700 949576475 217102875 234082201 450278888 926687808 931212696 956579206 997586236 999394335 357561415 472630588 435085964 778671510 63608647 863152013 227092996 774081265 452929616 492448265 12705802 837685061 423972524 857920364 32654933 572125905 918792175 979911136 268058320 937580021 620191271 746049183 560848137 700074355 554922707 911907243 975504916 995491174 956554043 969938857 392702527 644934064 531422486 876258718 543300558 569522392 298025995 331690675 399061945 861919492 594546905 872920001 873123922 939094571 243405586 248699619 87501592 192508975 498027807 665671473 778789308 861097227 891081252 913597684 804202726 921927135 928391071 947949518 776694394 834165016 907725984 912042307 138216756 725618772 390377243 879811043 794842593 930362594 943023786 980569579 289191665 639227540 848625572 937377895 70108984 171815531 468679237 584524208 45106547 420392779 147709880 397966611 252135135 727353332 824246563 857735146 293846000 939559547 92235987 343635386 655420298 826115161 768106095 779394093 482538080 601059434 390432429 954040836 722043984 853721117 719113530 866412021 704946244 891085219 276978092 588844066 70902106 386663588 598899590 630585433 334340727 390269899 282393329 606486567 197363770 737356549 400045772 846998369 973008792 976897481 335551443 908393122 31023087 429890275 486807529 610078894 379514009 688349771 881956424 997685154 460742121 695885783 284295918 378487800 700287991 909180970 540013656 821722986 919771628 935846193 72534967 789079379 796431133 930682567 834270424 855297654 730656491 826791502 360956391 579771601 986431473 995066001 192482304 273836489 543968338 661816598 970956622 997915167 508994825 865395084 159410636 817761206 904218147 929216029 928209917 992188871 118985469 516861722 320397945 982038789 539250229 730420485 931527731 934867746 827050724 931766806 505090354 593642047 659287663 925287597 124309886 351221278 348335767 505522394 334519123 912631425 358193295 453551316 924150005 935523017 986341073 995933509 293311574 931094066 769564122 856224505 86314849 451656240 736118343 989858755 595777054 778155851 910514047 922700061 440418218 578815456 182893585 236056337 6601196 317964184 337151166 858299595 325184582 344142323 590450549 788616901 99265705 818350394 861729073 952781467 20850321 661121054 408602709 815812760 404720139 685100888 976831634 983106628 827167358 915279588 331443137 791129506 955553432 959069431 856912064 939772553 12936948 622909645 946387364 981385440 9315978 897335269 216758940 406100157 25141769 717443294 901969474 944494470 813760566 868209763 249537660 302793659 497834752 632121204 82567185 318183208 453994772 681021476 821758484 939188492 206427906 692902137 671292840 959207439 245225988 364526024 890661493 975537624 835029942 887260149 977744482 985134374 383058096 605179991 118764171 213817717 506600922 627988151 884402741 960808376 409431778 818628567 889200757 990575646 79914569 204397809 489583231 787717066 920259926 942021317 982398057 990447269 250776973 426811837 239177177 427200752 684007982 761357248 964919753 995541112 547450704 850098148 622578027 792252366 134728268 819560471 500705716 788470670 225007226 358094061 543761431 634547130 941439994 999792293 594930670 699775533 131512256 732177227 296330491 692080572 700745075 934681672 190021758 635167485 804333872 916800670 516143479 519313182 158055845 217940293 413233140 991370881 430066558 824440581 242322305 456025125 704255262 976353416 139066034 919540197 755136654 832034905 131868775 989707055 597195345 959786887 858102684 871873685 173319023 475124318 589729877 985700682 415683067 987665419 605912306 628772164 637468260 796255543 294711932 640832027 993673293 998222585 299627616 632492591 316976856 640722036 460034075 947180504 393691906 751655067 648241173 895763295 680098418 771778924 903497779 933016328 184024572 332017131 45180642 141077746 545076533 647438133 611824505 770995267 197185546 221605541 870547490 966840963 716542975 767459215 448930877 583265815 998928240 999868194 810397362 916284287 593606912 610184301 753858657 944648835 904597216 905001992 139402428 527634608 660113958 794021903 268734061 411893603 735998732 832030858 267393047 699543265 883786905 897547136 423963848 473132422 76803584 452475356 189348937 749729779 512534505 875788153 289960726 678868138 524329506 728490371 1789811 869509585 120242645 792687845 836964782 863642929 362783240 531798795 634552279 896574277 358331930 761467798 829283780 840585956 980737964 988911176 45412830 842101067 203632617 637936143 745682210 961645568 57891222 643529509 823505621 961476932 694851451 885095287 509261449 721711614 164512008 427535854 788098182 852515246 620278142 947974473 658028259 940830945 606213182 860240685 303946383 779265042 192113000 323242223 240444816 961741897 364606636 592158931 14134445 151185972 944679617 963426925 151317954 380160360 630635955 935135070 513285785 632862392 282521192 584662006 180142387 407264614 880890112 899439763 791370766 898265586 114567841 739129998 260699928 652994000 579398828 926552334 922420393 986539114 784215014 801128644 115848179 706259872 270322678 351923125 338736438 550555968 667400800 698806572 151436096 294043042 835119586 929244826 581490730 775210449 279987384 808398768 42460093 406805573 652674370 938525358 501716325 771824839 974575031 982199530 511436208 695831139 552711390 583958695 501668826 952517528 65059036 977867638 243973110 956572623 471051552 910815497 514993070 537102303 660746728 695428734 718944353 843638880 335988492 608430402 641837521 663053029 309891119 372796435 656234453 795278029 67646811 73683961 366826705 399849798 841131715 898358216 297131858 512018162 844359055 877843492 330411244 781327011 818150527 935096095 295902909 812625141 757751297 928904913 76011253 633219726 562412712 924693226 512258274 570916196 28741586 506285116 359088641 820719343 782559582 909257475 273300715 310304893 943464226 951270527 259077547 794748028 590537971 980308036 599532472 626873570 706566483 825404485 723385867 732842120 959757256 987109669 221361589 705654278 376592652 655414145 53009545 613490721 184515604 799352136 298608155 619863506 19190091 625504648 119695032 866993390 965044937 969141203 18549408 666121755 991270579 994059167 356221634 672094705 171833019 268158478 94722523 518405587 600383038 777163975 594082267 798556507 884149598 957163167 224413542 509651792 747893059 827978362 610903415 766349797 810815777 856362095 929711800 999985895 690036033 991431236 59341251 660051955 594054385 830103943 21871238 893648871 556341458 899980666 659334697 815609772 744971021 815695833 20136755 528923196 721147798 788452373 312560127 461267320 721437282 932529810 774487053 816670127 165671670 420929607 768533722 847233743 691880654 815017361 52261483 339588377 753390821 909024791 647586080 742850006 658691603 792041602 319988032 588477160 906702018 970551369 130835833 902827809 929576809 992380475 576601032 824253097 483713284 805065277 691686094 720144048 612447062 851343925 705195540 729470663 119471924 194978885 292259026 493725734 884757827 885683536 879530864 888044798 68960218 162562874 846089848 921837700 762125966 813844597 934476474 978141399 641405254 765805882 950615001 968316902 300298684 683494089 136414963 908302344 679860664 986317669 509211328 898649177 514600167 954672645 353603301 783399132 622842524 642856542 995054878 999001808 188759919 717100844 703833205 837042106 694195937 846872722 369133745 396159027 675886706 706985971 229845911 828808839 897682325 980694974 945367105 996773553 302132987 402292729 764667384 825323061 136030820 502957632 950299640 997152955 233232326 370175156 196571466 935835764 59588794 979990101 65987021 336586082 181542925 884031795 217431185 807800843 603039787 796507626 328538487 791893801 74748751 344868030 80607685 961137884 683262881 823282886 862156857 979248775 287876232 817516361 185620120 948431805 594511820 741394157 980000216 986424473 23241568 132296457 392859188 581255336 92540851 735970847 807321055 844400202 546928108 724990710 977919421 986451133 395508314 418170053 531088339 801742314 765385703 939223459 502243957 514533906 850168682 854936896 281809503 820735889 347100453 424378952 855672551 867350985 694729279 881121660 629828772 795866311 286806168 966423198 297685352 581456486 899880823 999103990 593895957 794425752 213701041 919655767 577963644 739233917 406563238 615157918 576474882 729239400 155180760 294367137 991615347 993556231 795057592 945680637 481494699 781354604 797863789 878075543 265171720 406858886 153045589 863951005 414091189 507390615 697723949 716518458 834153533 975977679 830611176 847960128 235784713 844744886 167804292 230467125 167437005 501667369 349432313 570620915 346767079 453360689 165903544 808950209 603479745 915228544 285959850 456072440 292075764 428944396 928827846 930447737 562375322 945814151 696695832 715530110 92833141 516726671 590208562 976429920 116853688 626194618 396509733 472976972 788356871 937949122 796516023 968617026 420299896 924293276 460242588 953090704 115590016 240530994 607655218 641868014 954021527 998643908 818944745 819147406 976151933 998781379 741323502 769430346 413530769 427851610 381858303 405706185 37400925 244424974 763233992 943813367 987191763 992698364 40335691 196794471 761330924 830223459 883964129 984898961 476116107 524980008 843371528 883894569 829852561 858865420 413416452 494041924 758849584 760425322 435772351 746550792 98557270 136009481 751458902 984041705 225596148 449485160 377363509 993949999 708912388 854940552 187540416 695873362 958043992 985483619 325216158 592633951 137615650 179844021 831591987 902471607 657342216 780357799 713811584 785180125 724050234 737667604 707275687 979992076 192211811 608418194 296107550 421948871 607928176 707600665 241508896 458779154 869518115 891528246 30633934 858196427 255576502 431156494 785382117 940316734 375577525 810402750 770961893 923114055 852556184 877716531 5232860 588551836 212328050 345670138 206998795 671347827 155812768 186648285 306033558 947626723 680026635 717857358 773799006 958127444 236007515 247550145 295503094 860544241 620072514 976503408 936486917 981280500 411245839 456202211 841072725 864600776 269457702 855470820 941340102 976208642 30034590 757994589 319179167 790429724 169272858 671879017 553220241 614438646 533380627 963485416 683718185 781552136 818690639 865081381 688074091 902810101 979040142 980244251 161877399 264820209 801439575 905372124 665970266 986387577 936067705 936787531 215554398 368188237 633329792 695775096 374450887 560317550 476198729 972325355 555995683 732634068 554461448 589396222 462024012 742015279 855183109 913917697 473089253 889021237 399814284 596197171 696032413 766972740 94766432 882058561 989778138 998114384 255302485 747999368 954472362 977370449 50623171 484928174 458592180 934913291 517180840 869011925 804134753 845421590 352017179 923455072 392780350 780819403 452422365 582746342 299307907 859440507 349320641 445753292 817012864 909738095 195562033 436309820 573786524 898076462 397093568 579734121 387334360 504149635 8653740 576217907 394229194 875444804 700443373 868418636 604730624 957149585 736332611 881567677 650119112 938421597 950273701 998645067 99534916 909516637 282641285 462136721 610412975 866896321 361730025 689050192 877126569 923716855 702159308 824290113 494800979 996811744 607624987 727798071 513760298 684215329 507092469 788422007 271451861 576782364 435797261 714095632 41072409 916133798 165328657 875253752 551171074 568626357 929401076 967823092 193132050 779589841 470671396 594988563 454763200 623556425 319701761 448003441 293813253 677614779 423522059 734749837 680467740 731137952 552647160 720156451 107931779 813494070 116180347 283605543 796550515 898444822 41899984 383062230 889705117 919354907 489385937 661463609 988591348 989521646 52732634 440594089 845029378 880905159 8878762 258733116 391632135 736745714 457273380 902939941 53766651 793558763 506602050 876371825 948961941 986935025 310274827 530715655 123533972 437173975 391295363 540362356 832971102 846173480 463326714 850953469 802113006 816091121 743532122 856724726 400643181 744333091 656494109 725986573 271041031 574082272 898956340 991431145 578050409 950545258 109125721 497818930 981273470 991094953 941476380 950325324 436585603 976685453 681468599 770006507 714092750 834074536 519429908 951483282 613950193 915941280 752160999 792668593 790023979 852077149 237516859 745282536 984755910 992005847 612571456 646109170 802509045 866300463 424380373 575549089 54176818 710098144 423339055 523430796 246233446 534648897 999126202 999752233 982013676 998704120 175233419 528143724 380732958 460831438 531692433 564970689 621270199 996474989 38547920 128462719 256783440 526133442 166018566 882390464 924561195 927708725 975058790 989506537 228262569 532520490 235067797 739731735 955553130 980805333 216111789 624754121 752070057 950971490 720646686 958459067 443290789 620881043 67918084 646906038 491155627 739876711 86037299 523040392 837706622 993685389 290794481 387903992 21520343 880419186 981548753 983080831 508062502 584678216 76854184 269110360 265526999 734345013 345729616 861285287 14726345 299206528 426804052 570291801 793808868 910469058 986697870 996417571 584383137 974755554 518970310 609896951 662497129 734349515 276265934 972873938 225652133 358710695 110888580 616360327 637729409 931600505 547116442 549962624 403235730 703216214 498672020 611206783 609737296 796305360 267998916 278806436 971797770 984469617 386749982 412261776 995676455 998628249 408782717 731963639 8914292 708199031 586787860 855271565 821044266 899794083 97905214 757465953 292413779 945948656 234728212 475350419 851599618 987120897 794333465 879002267 526494085 755035220 546114952 683154076 927936497 982921566 344252003 994267178 924536251 978273546 855916302 892541067 683052136 970934349 351817666 693490263 515706417 780039124 439152329 964948666 14321173 937187297 443246187 539989234 50381917 673632840 405196190 821495468 362296467 387503624 447993357 783319016 580435807 778280275 99708375 577850002 717868764 822287926 226218195 764812955 959537011 997698832 176013525 643350097 187060420 440923140 68245862 330453666 310312026 769274951 675085570 705160985 26155783 966303526 90174297 336490947 827757130 833402489 102510277 701947239 879995963 898066276 591596780 730292137 614141700 707001571 85148128 111674773 891916332 895299406 35684468 209565742 156825316 664799442 343192396 504452124 242613744 947223581 540264923 716904213 821259179 905326414 504758178 863530855 821600142 963589399 621621667 994658071 121737402 578409288 817239540 891548454 764272682 809690812 975034188 978965507 326936984 887578314 289688066 805487022 250085601 553588362 954295009 990011462 9502009 749871291 952018923 990145398 10358931 611957438 569742132 806525747 521803290 995220378 674920166 989048332 366068502 818189339 965072954 988192648 798731999 933868472 179135869 694153305 45174164 855672306 377100264 455199250 20523265 655683067 181252054 518517275 217313400 432160813 800929674 962402376 487316706 672459656 657788127 822565479 924873675 927578050 674358730 880496239 361204097 583284573 180043271 275580661 777528726 910114844 113954728 226155365 402730296 717887034 955893270 957476535 448409988 679842955 480872430 631484654 181332644 946013794 421376427 906278069 414147082 973340623 389510535 836172431 900244071 964810230 977307514 993040489 574735919 810388244 483398456 769622941 173810487 992354798 984693021 995528978 926493034 971717653 752899031 991437752 517732708 660475559 306305874 612064930 882298404 967173508 419994125 456997430 814734308 992478677 858704534 961065778 675930510 853521136 886498869 970145826 736406511 747246881 385411799 532622252 352377381 524192059 234188069 236628868 512170409 596259595 50446571 200060867 480616092 847085212 169352159 937367329 703180662 888328558 151526050 944466009 182101697 405085218 116290987 582505856 80249222 968558045 205783798 668089831 545291759 878640539 833381129 990148983 472781927 981028765 302019309 819479761 674211036 759444123 771416899 820981313 995265360 996712645 713976155 967610883 255446401 864734391 132129083 722677123 722865981 915770768 169321017 721568370 517889234 690939290 141331063 451473436 131020014 927147942 926143637 955643876 692348019 925432729 626824673 768081427 780886293 860512659 561196688 756425401 18447660 91130333 157862591 351344740 864584172 869495934 197055568 632684785 592689144 965586426 928765633 997423652 205654266 470285237 125475408 691570562 286482804 907025469 272200820 546394588 455051032 912907709 272423509 928852075 152740172 989780330 324514704 667085048 986518629 999509486 217351719 552358528 77391576 175239937 164140753 840269604 789256311 831259931 768722953 930573442 597505128 812108265 470814286 887753362 625843024 939122606 84689672 690590885 919135185 955672841 122316675 615432132 941899087 961078186 931640705 989139531 348565344 602836675 230288028 642338940 24157097 881376334 418485936 481915183 412303221 695682063 1889661 906105939 794092069 951697563 262954196 735730808 268606494 799636177 303235339 756699732 359861294 446568922 660504259 967855966 176765660 525652650 43063265 810675833 849383681 909641400 20124468 550434992 275550352 957064873 530251282 677199658 364529443 880878171 918127003 931291597 856441841 953734450 906580018 940089538 218511784 841691935 123517831 596241662 55596539 907103089 153607941 644784979 672544634 894680344 631002904 640293510 560971160 695577655 812941902 868346026 692408219 835419432 126901585 702151216 687663196 979566165 66340976 163563759 710969104 846338401 698561221 954403803 813861017 924091549 942320349 993929540 610984208 984913062 418516228 842536197 776965322 923669614 659213847 822177815 911252622 922555013 223426357 245708748 818522294 893593769 771167488 871254928 450091909 895530901 370681038 700301834 983766916 997003660 81413297 288706761 839452956 917987213 255608126 289066102 336614467 487696431 247070293 432294190 76754600 405036421 210757850 586109372 653791699 750165912 429631143 924256043 119797455 647133446 937053454 939180656 526029266 752715773 905312941 913245978 585505000 899779904 320131781 424567310 529914619 992207120 789968477 954972629 793559114 921838245 842615820 851024294 530604333 772567979 774919897 984516604 848973093 909532144 653455741 835743426 273498088 769890821 670462020 880065364 869174240 879799226 234071798 259434974 175145671 862672995 49626523 55259055 233433038 252327862 37663814 273317469 681490719 979565143 137547584 648111994 966709012 969403562 277805731 704497784 796039354 919805831 984453983 994645636 118859847 246365948 111632031 983751609 861329725 920414192 572324519 759803143 981360341 997168127 197471220 852531600 361687720 774102921 507797439 883560590 838003965 914519775 249915577 618081871 224456592 518347419 607020721 984837291 700200036 999413655 381714847 608271799 671961594 864703589 173829190 314015091 351005471 390368745 375732284 789684644 199178812 459798396 386860015 831930827 829437960 835269374 460983819 659774688 77567053 219926979 738261356 817004188 488341245 598027155 306295967 455379950 156698932 607579484 312062686 758854648 964552876 969685968 271391780 865647958 341428270 999407718 315871261 690681881 829246996 943716327 908260904 975556903 710338261 783139988 89595556 492989995 104275289 829404758 647067483 802836086 767939851 897321967 969051994 990688200 201901127 509673209 177354657 904325514 583487959 953957793 63489412 997178827 116843616 523730493 835658449 982976472 54195321 808726800 884469083 900735547 485757194 781457454 271954567 469071160 8996075 533036248 772902074 832801959 794417065 889181337 394149688 557304222 296562028 333363051 8572891 544546273 141136663 146755929 552969139 635809570 350300966 531465706 480432287 515098883 443035054 865440688 123986991 726613314 671654103 672089536 794345496 882127648 817302525 951419984 254982270 467913958 428715093 819744047 11166830 599678221 970921282 985076711 226012206 681865064 35537245 47277898 486263113 871471090 763428759 951484234 973617068 998290788 875649494 942817033 188386026 820096570 982368007 985887364 540679572 856108071 898791514 945294635 109630037 902618084 11254825 597543786 151399828 368872208 635130239 753104601 539650422 984429153 657090952 947555981 791527077 818401071 835796046 888659566 858294852 869262498 271228673 285716717 438667881 447304215 105401017 325576434 990894867 995304873 630056842 636812241 571983278 617238096 966209425 983426221 392889587 775053324 866093038 994934667 469055872 789310915 979599809 986986746 28021592 38247241 230983782 359499056 558532524 797756642 622595816 774025553 411087661 545848918 742153157 742247751 14716149 998934153 466840203 583507174 87812852 198001363 245588164 530862247 265773951 384981781 248506825 266029185 889185356 930461855 202209050 413492224 23907913 792593700 297053128 541166006 599660972 933679522 974561679 986669067 118635375 865984215 81412191 722399802 278926754 313268303 59954836 766689606 41086733 741617874 471312018 554104372 631336414 718002853 344239304 534374817 287020374 837280122 742725663 762316004 890107566 929466502 92033698 336588212 754726054 846279320 15568533 364749480 412974758 864782883 345529233 654879098 751663636 884116200 411207382 756853115 332575074 842301671 79746980 924167718 844320332 943167857 573617723 653815361 279155983 681262803 629337575 816552309 568083916 994931283 824119886 852196557 606347509 867934794 645517698 884698190 390756128 414253379 854481560 963181597 783543362 913795496 819267405 962096350 811392200 887397453 199402089 382192940 189150475 598380176 512827685 867669146 963601325 981888169 928158364 930984883 666484594 920903630 436368253 589708654 157853940 762784378 442276331 647624591 206948455 962522294 705469521 935925673 691965370 944563444 798854170 803782984 840935423 985129037 40670548 206902902 381792092 513779484 117459857 138901456 380163775 772198773 491239881 714776196 771503061 953411044 410471474 558277927 926970435 970147802 701232908 897367899 776258170 936970868 53121146 492198482 410145452 664021734 701941826 705702325 267779804 864369572 382193979 803914822 826159738 854696023 417198624 456204162 307091294 623498377 983849388 996259721 383208023 883962442 142101446 670604587 626621805 770026286 669495240 846883640 584150786 588283972 973491231 979458927 620363696 721919774 778903356 971311270 91343442 828693084 698681542 745009942 607866274 771807390 405563737 474083076 193786914 360497910 411528586 572687188 714816792 780546931 598604584 985604560 480787411 982353809 852778846 991120443 36391081 140073652 824172468 943462469 748504119 994327586 67264465 301834823 698594735 701765421 493471438 862475539 657543436 899150467 87505947 549065642 902071842 987300857 100997558 986402074 180797833 552771015 154161967 900658006 687746619 866295442 667756736 997833876 670493919 897692900 853811197 962613791 644666349 770298187 911109703 952275471 628983635 947401973 839245659 951373786 346296778 591355547 100387690 832326000 469008261 924798675 985078051 987654068 116120726 495326090 26209142 455646871 952284376 962099957 409607429 772957265 132361180 348449583 534588002 742830345 985264397 995698040 139742461 277405078 712381041 713192526 132451982 462199502 554149886 984720492 806529385 974016684 591914616 681330306 711538346 894729725 499319275 756176947 817933930 979094921 18175367 362525041 986945811 993239030 449160146 737205996 728473950 856202944 310280543 509978694 996588827 997879165 525098739 973452122 693137556 786308219 380830614 430263445 636308667 731234268 40112256 866068999 671004768 913368442 108556097 955418401 895194527 940498641 699058408 873777589 850129318 908486519 606331396 885612356 647380219 702424923 75732498 950794161 511942918 672847917 450123503 878984434 94433747 157253197 829694953 837260883 255292050 388550899 680559651 695109588 71211691 871513788 581856238 655993375 802759598 920117362 732591129 785434779 5174029 793964760 702306368 988696416 310929037 944853551 853892990 997750786 303133688 361552707 95963320 420891619 721692954 782095278 201593427 590048568 228446999 518531651 833408162 857191074 695016547 980783964 188351106 533459743 719812840 927551965 90760085 909146735 336498606 964491875 254290963 752596244 594140256 769828825 935287355 947608904 445494000 541663491 11732506 947306600 814339036 866230300 292524433 538497433 904768158 976846308 382743780 528518433 53111987 932165361 735680173 942992003 829920760 958800959 329755243 625278829 947547971 977536858 595753633 610672225 94179505 826786905 113881158 942456315 822786679 978682426 190303664 435768439 27519662 215388746 852387871 853302555 146581654 698955221 540945289 706495283 289424976 432788507 566874819 767252684 455778408 881881753 991307839 998110236 686193485 707689326 43094864 344216600 950191158 976621456 327763655 741940209 782407507 841918233 664643484 998132610 550756253 616187705 781343579 805282283 858983401 918074310 944471668 973873135 423001437 850598444 898535437 930343922 199377004 887952594 293467852 629109167 901346417 945067965 296359650 599180538 984030674 987027304 897096716 975996686 966267407 972527322 318297649 835865166 614497975 895856441 266643332 459872940 862658310 918232649 490913185 645208083 195472478 394184721 120169838 241517900 756936177 973523928 839102974 939072118 638136052 817482521 1749185 687398453 782962604 972953774 890851385 901835647 307865195 427551155 313740375 879619395 948471856 965614098 277066270 957224067 688563789 832537817 306750380 769745342 433348876 997151086 413324721 785672990 597143387 875554843 146582113 426271768 289083490 881190513 921039988 976645596 599236512 963803174 198266271 514849941 756392623 959793154 51441586 698241989 714669097 826580317 177800177 378956870 7062458 270919760 748098408 901803870 437638405 781562192 540907801 781824336 15842577 188462077 472670173 571115859 734669366 974067331 845856099 852195098 253113222 294780343 577362205 742207589 656805941 821986387 831136607 858526823 248999315 811337787 665569553 980659672 48242634 817237681 530229616 615758478 63714015 390852432 199520997 341836786 202675053 995258800 33244965 864749521 935013779 953977420 537932982 581084859 761854270 808467577 133227761 477019434 432957418 598930405 109100525 937230419 433132782 785859142 337289574 426704277 30563009 939441254 922912109 974641895 308287828 706292290 705929396 741710001 445924982 651113220 580159547 988900907 408282455 994564157 752848275 973962516 234872322 724209973 299624128 865800870 172767236 402791930 915798114 975336342 954792306 991219069 377256492 727309855 376200775 478194336 970135416 978154474 374068350 988720676 416589571 528134987 695465433 988257766 630684394 631246245 442331185 974274464 943701255 964470352 97098223 373314742 848095983 865573088 766616234 789192667 687729497 855077151 27875257 256144213 318536508 481724685 127097588 182062735 188270275 931491351 387389603 780882748 678385228 904903744 630039389 792945725 816612200 937970523 832297860 943140692 486216578 997202612 525182262 918258426 173979705 846927132 503324391 820927302 213740406 687888506 889233775 938131476 562168991 661442759 420397603 842357027 38051215 148970826 261994368 544304688 579680249 989441609 489964343 506134349 483683887 664219742 688536027 755469482 623569141 952452080 708699470 933957205 245707962 862363825 283220253 420856026 189258903 588846198 52874852 571175553 981099709 991972436 969740388 977599160 895936233 990364939 631929761 684970599 389716791 596028755 129502296 571974116 971989342 986608829 137072067 146837260 434017966 724912283 942855992 945582357 782415447 834013029 879809277 937793206 186705764 741950758 729700371 764086537 880156938 977875212 138826931 441802998 481847455 517581201 946747473 976877627 718683173 797970660 211238015 252469761 186179721 572900789 483308495 559007142 931912681 981217890 59843523 813103346 931913650 941743491 29994484 319527523 635767531 670360845 801998518 933123124 540831762 924050117 181714877 717588412 379128613 525218917 908609166 972651897 185800016 286382898 312410515 572516332 581505563 628323047 801929683 857811352 334454691 655742679 481331348 627506390 602987150 968134149 441802999 982962062 849970162 949895015 252095587 560389043 33484681 454611044 74404849 696527742 354724649 789009241 658097725 777004930 668726164 741643429 889349229 961555317 898995942 972762525 750364274 759330381 877597219 963501792 467366134 644754394 816697286 842961326 601106964 842853293 502433929 713742597 293034780 748664216 967891828 980242746 26738221 638711811 684849234 913079735 75844676 865960336 307211437 516923160 864739442 919618497 902089075 927530493 949643157 998991402 757737238 828383559 238169119 510193927 716798828 808545569 890300120 955273216 935450190 980105900 308015403 368897846 288631220 356489039 343958329 929851705 625769257 804447017 440297427 598465887 573927828 795513586 575930194 998430563 431823789 607584948 949352580 958971506 558480367 816634846 116746648 288619109 45504813 181866273 125981594 391399569 205086437 299611845 268839935 493390618 45661385 124206813 439093769 987907272 628391627 747924330 719577179 948805529 755135586 982626792 496911121 527371031 446694381 483562468 983808559 997041324 164058575 732000043 216912603 796275252 452958992 745718277 675047407 898491134 512248447 649580711 637437154 829644645 778263911 808956409 774715899 833667865 582145976 851624812 51270629 816418539 614751287 795040827 559242683 741847995 673672579 695287643 71027601 878806222 618925789 771037183 697133817 980749648 631733618 869170823 180001952 329080805 143479921 398387031 365391170 583683140 985377266 996838539 380948262 534561728 318898236 577120947 261347693 901989226 542949976 600362396 952768691 990261606 671929166 757920298 351490119 637756605 853880657 960699852 683564080 821871098 388347326 944418007 89104621 292436613 860055946 962606279 861752337 891979541 380805190 962309652 550152486 625097895 317525963 547571635 81396158 462919970 15759090 667801420 101827441 796055564 926150359 977848506 624334815 851773340 358015424 460945406 191299978 694691953 459338741 772776686 59269493 129484126 454707989 605124021 35908942 696444667 8688098 998339411 237474223 754534018 106009561 146635847 681250589 814071797 659462817 791115353 529338231 639946576 873349309 951446522 807829616 837307732 205982557 499547419 852497952 934762557 715923575 748963084 269609751 313644153 990640468 992298073 182272346 622353587 760017077 832734466 970190257 988939047 482672331 667362300 656154256 706986885 76259597 428670165 647764842 935340121 715005430 977306845 582769172 906139025 383445138 809340105 511743872 784725573 728380430 832312669 921905332 935076120 434427544 872290177 237196249 550283341 259573056 581508623 850234272 917019374 465891042 664917962 605470815 638212168 933404155 934962989 521001200 547288014 267299710 594067907 518998980 827309115 273565076 457139828 393428680 930602737 288759391 981431185 596898799 880698577 981164752 983777482 119945866 701537897 468816148 608916636 694624086 959671783 645212077 676922582 136015456 469539310 964985819 969652194 359908410 835136818 709114598 791182230 125400333 735407498 367346509 416686399 678039879 795460757 125157004 133583347 101542428 105900950 479456699 537880697 812251169 909240047 918025313 939154753 974803726 988046630 589441112 859001929 111448876 710651622 295296824 741972083 525047132 599551017 685608775 741557083 614767744 702508894 878680808 909778760 436804723 592242838 82619108 866635518 245039754 979542632 130816435 692261531 637594260 776878198 593780439 984342114 951190854 969621353 189380179 452203669 314820454 352888100 810896953 933981119 332841410 869606756 151784943 900642362 627859803 663710558 99422577 679732498 985103885 985470232 604268148 972973687 340792482 495285606 686389593 918804328 30565572 139651916 195728982 907719822 884008705 991422546 931411597 955082194 479526240 993091860 445097599 912404376 108621826 388777581 752561106 918141066 380724829 562948731 667875547 684951007 22599911 90508573 81741551 516889914 253135259 582195228 505830677 899059964 757396487 811002763 523594227 533074304 26150078 442163217 666847432 771881473 931228391 965528980 715954709 903646034 246903408 500664057 138187800 205519019 633233389 809506116 841488682 940464175 710039892 736087369 568005086 623704594 592592102 678770908 507357480 660044904 199686426 961730583 797383239 859627689 204477846 913521470 816457465 935308027 286897461 815929743 192571885 915454483 300144776 911879889 734859255 840691756 865770907 999233162 683340346 687170803 284688869 553707723 970508915 993231050 131153865 325194627 700226455 747408861 553128830 773871004 37163305 523022817 258243329 373355316 486606347 784754599 64251392 799334638 950958849 951777117 996235999 996354325 822512454 987208443 244799316 457694144 499372331 638128367 402627064 925328989 920773662 965418040 478866195 952635031 851261311 922951293 560061868 602162457 664733983 899562947 120504192 983853195 684044377 734068570 44770777 440557609 445878829 617356690 411474578 715954454 756189266 924753493 488505662 963404038 708468375 959721457 647279384 730562336 808469629 918781781 591556087 621991943 477512003 819854465 641679502 832327534 48862342 385599406 51095061 53757744 476930246 969007652 599291560 641770942 857598520 997282205 503763130 736970415 100507775 564292012 727147751 835034967 754278065 963929495 396746722 830827751 214275539 754147992 911331400 991755172 228737855 370097998 304214173 665306776 433948554 985614500 59619378 253868326 313344525 728918568 26946475 426144259 302797400 851447985 955534045 960364198 423231409 913619211 749048352 932142210 808452348 935767922 735058289 816912162 801859162 850216528 766354058 781764841 363642628 864153808 873248764 903378003 50454865 251926463 258278405 691189903 910961234 912183753 865288233 908600430 567823763 905753094 20037806 155686030 985720845 998939207 436359764 677898922 389058237 574807944 210428458 759809932 433188711 482572572 828509588 870690536 371063816 532727135 46792265 549412457 444295462 444793835 891184820 905257163 889719351 944325444 165015527 933499063 746471326 805543224 118118254 982477879 429670203 817212101 774864379 991166568 612165010 951121124 46216372 331189856 21347656 256022423 363663660 770987435 894937887 900954322 805889322 941150066 195767681 461674974 528220520 568528560 233829126 830617432 651115739 732608175 364754877 823294932 303551764 867371728 382969345 595019427 142605938 944742351 461238147 604775610 369886966 614540073 813262725 846776762 899495307 987914514 511438580 967017732 193405652 647470815 634785450 673498646 904525440 983110496 440721902 623538763 851168382 890292573 337861403 710279176 674871408 875414317 118034055 697925175 301658674 971487549 322087778 352602347 719338939 986535326 438661854 810873286 990978520 995520528 889693820 945175814 740953041 978828530 833511511 964705437 313607032 981111267 455460178 482805172 324371883 422261552 494927735 496452232 723633683 733105349 223990189 676805864 913733185 977600925 930828494 988121450 764104794 792417431 869840042 882810504 32870796 427894582 284234473 320439413 835923941 982352908 63698424 948794217 396480943 729347338 408485126 829001191 736584284 799532003 500052898 670162789 363404317 875179171 671494471 729962375 929194631 956536269 554501134 814800455 842250153 901981171 817471613 973852924 177575687 379825305 760156575 825977842 521563798 654173675 824314777 950146766 824343722 999767046 73428849 135114976 586086936 839374558 529978300 926559545 634631920 844258910 243097322 823795190 522028033 778640004 622651966 692812577 2462599 194737941 128912234 751078820 202155575 492794506 545842340 753976615 833523622 903376299 803459633 835187022 571153540 940516432 369619128 545785109 448534050 848483019 322922868 872227501 340561864 816469520 998947590 998999347 436712056 911835309 404186976 788366403 136526260 391229191 500197662 529237815 649666869 993485136 593139544 750271444 183203814 301562885 190158085 211376441 690803747 912292906 116528002 529579621 691390281 982142238 965867644 974262427 901061898 991576288 809143092 845876917 852864892 905810586 622239748 707721217 342988617 487332561 656162512 834738626 530893479 994915253 896860059 937266790 395938301 846610672 638165060 845587935 956010704 983814914 793642116 846964141 150790527 574723309 91540620 99985529 658630648 862905931 976425646 980159346 313153991 678686651 321906011 717702270 517687702 688085342 850034357 910576319 48417313 314778834 565306592 695856343 113082571 179137657 954186268 990650343 893520711 928811064 633894578 878988191 838290449 893923152 865167055 868786613 402374854 612362946 97803635 912773940 469532770 537538187 185628106 679044841 384541852 778799348 298510302 786428641 965593082 979120372 585537458 950797481 739153412 957322540 357380803 552546475 518775230 994547054 649656302 730213404 829040028 839524595 853071858 885131641 726600195 902957858 159508115 624477294 901387590 902301816 352240930 532279220 552641152 628393893 963370833 975181647 178352574 964001756 498992571 501722284 542029012 750515293 397083923 852720565 224913922 878436645 803758400 860170528 785355760 821719332 355197942 978575551 963260299 965331908 301856598 497485127 405757553 418856448 285389135 795259663 572271495 874863993 673621991 773966202 104004629 580575037 848475324 982471324 400408837 648693071 488450229 787818689 360878585 661888774 556610592 594697474 435828422 513628681 558681885 577551344 555519984 698050791 260911233 501093660 945408237 946672564 644274334 670378536 310543074 465092234 868570124 952199245 716185303 780609145 649801642 920926858 613263292 793786041 265351978 733488284 718432433 731488388 819839525 839400224 642224815 938491562 137780651 408986531 633445305 995218030 203225623 566458912 369743990 866250717 313050850 876585874 585123392 956855517 20747904 300713740 278465888 770941545 886049700 970975513 633496120 777519819 826500586 971541844 954657668 962222897 289232548 868259482 800309527 840084976 365476361 443120670 587156923 703459308 877903693 967895876 117475772 482534796 561100520 615617509 624211140 713260858 43341704 179158030 729432484 780069529 111980746 134939365 302057833 717558079 478592069 613519467 525525630 910062963 900759618 950450681 81817379 201209002 516631382 854825919 406595449 458095811 785891928 832677590 21988091 810680231 439083486 972068184 765865489 966683218 485616131 716442571 684403343 803910949 681405615 853859793 166179054 689480644 290290679 849903665 34592264 696375930 286090165 343654426 825251026 943593668 346263734 799095802 622325677 663623279 588315506 595615508 748395922 999248553 812707575 995965367 427246972 744677172 475315279 938721991 142023415 765809707 302463268 960228487 703057596 800233798 664579987 886269922 671967926 694265017 298609218 830808359 128213435 815506638 274474269 380955012 843625995 994322135 973810960 994524329 943068408 956579669 770363508 887185013 309658590 951143863 411037613 907186368 696328828 872547914 408894521 727636451 393281140 815802639 998599010 998790419 334758009 888721083 136878893 375640955 762326515 945768199 145508712 633885801 831163062 855916951 860420204 933615981 502331378 890624343 491646967 775162324 361356643 557306886 671422228 839675518 432460436 801105954 237276398 888118206 272140342 757041960 339982868 584965836 315329414 495130677 822664648 882240584 739373704 965103397 376088836 435934512 560345804 909100482 728195912 745032848 739164895 956642872 296783507 358071982 999362172 999936373 727736113 971733147 740410324 998009230 438547203 793930470 511867840 787546451 535094576 966904428 946172719 963577586 361325270 686272486 17047160 719450355 428402273 507558511 666527763 845100754 651061904 830395706 184162535 426531230 294202862 790443410 688607078 855461652 145291177 244605449 726230086 751472804 584190370 901381483 761656723 950041037 607429272 644912100 512800396 626733286 26300847 811788619 83598724 291187095 565871540 865465285 843784546 962006498 246690765 528742862 581945675 847103437 736701657 813176454 882688396 978180955 223328560 625079635 564069367 766757603 104035268 577811556 64308510 929164843 196285268 338595323 677823345 742828357 603017707 873473903 456114829 539403413 797365431 957901201 377300156 567330693 278613591 806099004 294905012 485674387 762004839 851633763 915220478 969712702 238228178 932091875 640365524 705696791 659300496 812557920 312389847 696140677 86856951 308364343 273399751 858781547 259765759 902181621 995896674 998754022 621975001 730392006 126679996 661405581 415174883 537763750 257520582 319376909 789910017 913375127 195138153 318502729 531367850 904046652 991051818 998884475 106941633 192871430 778944171 883962237 176027040 701942389 759313053 921656156 100087139 108024289 761070045 970659780 374588851 567418829 620681608 768266123 778738168 916544169 411146719 852041378 568967810 767378299 594811280 685602403 283604151 407981468 207138985 213071943 208115596 793923792 909843455 933906179 148929713 741927884 360944678 641648915 303415927 353061906 633546667 712007891 968489055 986807241 773238508 827601987 866394679 927466563 526414822 699934010 257076965 745406657 407058158 903560564 180239494 924064595 540643591 912431674 513019701 750762692 818513951 881835954 785061716 992535520 942464944 950433222 428137054 453490745 159124368 553751024 314268135 687480928 837117048 907225161 174851951 899426536 33431743 623417824 222563072 874323757 316799435 976808865 168973636 914342668 2905199 811775457 945597647 962812500 952829397 980568183 596527994 763325840 936611939 956279102 616509499 875289013 335782871 754048065 392357337 826855892 410847050 499744804 996931795 998022059 143544325 894298895 794129720 987920663 844320284 931923728 743325043 903720575 932631972 938639886 318591715 889943875 828112581 912203412 951104392 990713798 339089257 893801265 749605827 899317641 560892276 983941002 756902741 775644259 345740238 853632944 199439727 477203493 617171006 631287076 879292752 899856743 386754908 619429507 177019075 529712486 915813867 958297311 331045529 794172923 414725448 745754839 57860650 732097772 670438508 715215439 721360228 908112813 601201643 768360011 101376740 400622103 685377819 825341026 693105983 777943747 629831238 802204349 888381329 943528413 364077063 936948219 127876089 160532645 866677004 954832486 944844387 955430135 892545730 928264941 383820409 577103717 991264782 997006584 787243034 914021107 774598079 954521558 581550751 789544052 526440669 577694920 797517929 846057879 479046300 828329181 163084794 652945554 729027628 943478613 311160330 598727097 734277377 926784153 118662253 504764809 144750232 746896633 725887996 940139872 154022876 490891237 687715961 734807858 773184561 775820868 154347347 988717586 15216494 248040592 376983627 709152577 819923434 957311450 560547204 910510415 215730817 801772717 641096236 923773834 472600142 513741072 85407298 96680730 684712197 710553063 58961507 904359095 124159163 197276933 696048410 973096457 188336623 386121845 667180364 784587240 571650937 985789617 326056898 554416185 695675219 756209635 601805860 912661637 149576090 200229536 225507470 698502283 576969747 596789056 137617505 441790842 360558400 887979244 891443398 986942456 261101582 546859001 121931757 938398383 465689049 640164059 808807577 915929895 74994292 164826487 274210697 496455759 973369134 998982216 804987517 825484414 219690173 930796479 102649177 329373629 412553436 441776762 137065984 738877916 262125787 420797635 756197727 803662786 342227598 411645483 528140972 942497810 986720119 999884745 546034501 865941955 640108468 875505528 466404759 927088789 899713002 950616991 855956236 964214453 57772156 308227969 718031390 912073731 557572465 639841259 318753024 551302143 644193196 889369522 280768359 438186220 337675735 343176644 709402849 894501746 28981913 807623166 178589960 540075642 404015212 537058772 579736197 611263010 603812629 777205650 282389921 946547890 305633948 328901044 767183561 838359311 755497787 770346219 917423397 995566333 6374202 480935230 977811058 991801827 292873113 834532205 351567712 564332248 232749019 362275610 594920665 865119285 543033108 605338535 935560801 983149864 167952979 469251891 559348472 929323772 199105548 510729001 890792925 905367546 830484619 913529813 959200084 975327666 869811574 883361192 419766261 574038783 332512223 406706224 27685861 949205270 297967155 804745692 314583691 456333247 267900032 682776530 503022258 567811072 856030624 952124559 84426472 922494122 672691289 899371668 853460770 956996553 29673514 731581581 93390675 296500962 46853228 631313809 55349311 823283412 235869473 983386848 566903052 597425047 716668664 749645773 807715912 888681213 260492268 979945228 411657202 792056541 300901755 355294009 222070227 729886446 710341406 953601733 625502793 781561429 682991289 917652647 729150861 818688786 171892035 966095781 185322398 478461228 391341020 617481122 179650600 258674876 28969282 127399969 730739402 826250671 47535764 987337454 720956084 918336907 915468212 975272318 302729217 837447038 9303528 164407015 692414266 782531340 619717403 685711786 112666193 275599154 952455314 988358571 678777775 812675602 763213096 890530337 823009655 878487287 339810311 849832823 989487343 990743294 376094808 428091146 417217696 960209325 694429192 821333095 890567152 925321176 794296429 795073605 954901502 957671252 504361446 839861630 997535744 998957330 454618124 583883913 705809968 708198644 703605745 854771178 654949221 951102152 367954522 929818784 878900777 988829745 694872871 844558079 792733738 933408496 220037180 356783711 884626796 910974100 343304414 863803097 335121032 382710137 515349989 882913398 672846392 935910710 670468276 795621844 272489000 537992509 354091044 575296052 784231104 972743535 970834470 971924639 683829642 833981777 892077994 946181436 578219357 682109049 780313348 985838481 162106280 856666987 601572412 926724985 721817824 841483411 815092532 828612170 347976053 383616391 730941388 745975865 865124633 973517996 645003230 905955003 584325363 798548976 446900871 825609760 408434700 893020419 261453057 370238694 829854787 963506384 570269298 845077609 447698622 878442415 701005700 882850907 779070755 802455228 485956246 491694927 542116291 675842775 800769569 998471851 766181413 845579551 542008983 723213295 563683015 883128322 815471074 941982945 735708454 940405113 100703003 662681484 765221270 984269438 926931620 989556443 621962394 949586020 93153910 942883190 985502016 986077149 909042544 999111907 983758517 986992438 320262704 338791921 758929163 857886983 302379127 382476840 614440158 659940852 894334541 997668934 67835450 918543991 362169370 691734945 558707085 596241823 31259796 626000376 684997765 860901730 770967150 826763852 782990300 816973797 868424962 939675665 187645105 396093724 11723809 176537413 425031827 562538768 394409445 944330943 337348466 697762413 427632207 480336428 334111120 883475788 428326570 988485059 831482342 955951882 255333744 818716588 726081814 831228732 606264571 893477300 367882763 899256486 10267743 12029462 27559633 382544098 425297285 979938691 467520763 588279605 552394258 750206948 918121350 989275446 275162058 508982949 957798723 995832563 464764757 981926646 863467057 972916967 744930641 792624656 459689514 683621446 42049502 258539055 29050091 232191562 497491218 929537811 507480697 508826836 766240442 957075954 39231745 400658068 153462994 663899378 796968151 820269227 730304665 986403112 914250673 972316660 734438313 862779108 478743452 971783803 917024524 963352736 821391252 974960173 942887878 980975752 14788959 288781031 51739648 52464966 443901929 592487155 912836328 994124008 634386807 897778974 108467793 395320624 318636836 754744094 804770746 930200762 867559136 885260331 528329959 572620125 64933003 152124427 524674290 898020049 470943334 883740758 579520062 960533932 288103290 682720263 913878915 927678551 407388908 982094988 640309810 675182820 514287786 660741658 16422332 787256533 188268622 287090464 44276093 743244614 292913637 516220657 330343299 731576768 786950357 954239126 502198660 611651117 535837642 960416091 764394632 874885893 80160217 857454963 754727542 997221706 588195411 861255733 552230368 839780520 238822604 687499879 598937735 765067783 875968012 993642547 530409188 569084744 606708735 868648099 975754791 979753714 462759953 568589004 90797829 129669983 494365092 566315652 292734855 673161083 994291341 994603948 256070094 742494087 800988013 910427414 72363049 448439867 212410 139267943 391280942 697999376 370363021 477646583 360959349 823427660 378000400 557183088 140713539 920569445 185609339 433431351 541497106 818885789 52504831 823204377 201909564 262430813 704486908 736232532 401109895 866829206 410468120 561008517 212654006 813395975 218650244 387548049 399902373 865948281 695165000 744490750 38980762 273913579 188297223 461788826 84357690 386215102 666571453 674824755 341208947 748176671 194070105 302945535 433821751 592800621 591189013 652090808 905223391 946205602 700669346 819060842 586597578 672134610 667861518 890963334 7639611 628487908 483444099 966798936 589614378 986229127 654424600 945702571 490713167 876825256 698839187 843998244 656907111 788355785 206157610 978232263 623311831 798523875 68217231 968623143 973546212 996862869 90375379 901892318 41714634 90893189 204054518 502731898 671989583 776298600 779286737 961383226 999547193 999733647 347769071 565237143 114914667 392172277 767160297 962466431 294459657 775402901 561464172 806123234 466872629 984694517 678022189 902585435 132834116 653193220 955843299 980731466 79196007 647074078 401009990 891711758 254443200 427182472 909354997 965289018 8430573 847840940 354375390 641245455 637679196 875904470 231730108 850114723 946370651 991468671 254556443 498791935 190318896 330704984 453586485 994414309 454892246 507824445 602000709 805595158 219315569 452854305 493522052 500888609 138981683 218922460 763423397 906772560 44055862 144214347 924082950 968717386 728532625 780538363 785452855 857575854 358896707 604378162 859392231 888299594 193594424 798176024 526295465 732460850 436957159 869543489 718757088 795809174 104621332 496913488 561975114 916082094 786126581 918594634 38260054 80481524 866596475 998135333 427789410 857706473 182455062 843102673 504945521 626824018 754851805 985635978 978021960 983615935 648042738 749463874 430173617 455381185 313979004 463033182 635242006 680830926 512806689 810641617 420756608 757099124 297729678 906289337 777908050 981969057 462546194 811489999 252943005 607359161 326094021 730145953 168808217 292464308 757527317 961267212 867920239 977229157 159975296 587916392 743166913 906863827 371233646 676552483 520638354 910144241 765893447 963698583 95777627 134210900 500092230 827961483 6857641 242713322 30649072 290841537 834174515 897327996 906344213 935079285 115412167 616215567 502594471 559110043 115881707 565535253 233769527 313707936 148396828 972331067 731334469 899739007 388957896 945812860 573234799 745299407 688240356 943257698 876683093 929160376 502492658 607887926 681335042 790221882 996919553 998420201 478657274 746604279 901439612 946106967 485272250 850313577 543628718 730040983 784263062 871519264 158650736 498322367 146003348 196171763 878279046 949576347 994203790 999979440 499525108 712077935 864991292 904890230 183947636 722057676 387783602 815924261 241102625 633916372 181400070 855763960 761713775 837235512 574957163 731580656 85391839 296530237 880482620 964769873 262608865 877286972 470064930 818843877 455624107 461351732 774837451 789101536 757324680 806689384 332320645 633300739 760174156 995205233 845825165 969893347 31681346 633584280 540321725 881170398 496246443 652345819 171893493 528258672 855508454 932693117 502817656 642505996 380780181 489924868 412234659 917600007 37172357 760454126 351707462 801990996 814217802 994122370 987228976 999043765 461316393 897553695 922610908 975211561 49832068 592088015 330630702 366790782 2177848 259693728 759688201 975782180 84588313 101324936 154698962 278216306 722307884 807745289 287809349 796478728 792209209 908273102 942303831 974950553 965591621 991558420 3640704 740720715 613220917 918878428 938945596 995440876 435942416 904671399 572092297 716639186 781441132 811182319 439990377 622356442 954309787 991480333 811550517 859356044 862881907 978806117 914759933 936287803 80942844 949225804 877493656 930335196 979948489 982672388 420844823 789869188 420527987 814897000 677246944 770994160 93650317 407417718 799838138 876534447 519177826 889594375 449997005 578363689 473464880 916822119 114739846 975702333 511308482 572501220 151243541 458377064 466289631 658636778 701898294 838082023 636630064 712966759 10532658 781724592 617198541 723870918 227377435 329155173 531965464 591409931 919696124 936198475 304122726 517267272 952831534 978223877 812985183 902794068 427366844 680772854 127968786 249126985 585802935 999942380 226290711 286085047 287552273 543497852 433094899 757907288 164114764 463032470 822247517 866927806 104816608 378979149 205870442 743582401 522066265 890845665 600741189 606253697 269850085 382047443 649638220 763341822 169440093 435714076 323362417 701317003 568060566 843853699 814700005 999403786 973736469 985026542 188737948 753782271 682429365 895924263 141516527 959861534 955867759 961293960 688892967 732785720 776565842 866789312 442363580 904547779 756969134 828653367 879222356 983094220 683106420 719026036 973900159 981424941 462176875 823008615 973292583 980894803 110880196 605407994 957382741 997856370 687827448 858119526 20425040 621303013 74968771 121051304 521939920 780744704 300857212 966201239 279111964 390152980 523510376 555582892 186146475 302748180 38657798 429148572 726036190 873041047 616946479 731171556 359167427 649896641 620859127 718591952 670224468 833122719 472855677 651515952 662615605 964296514 725876799 943610396 830951059 860911610 446822440 509247123 857182042 881423847 411691355 925284860 825389766 857221288 517754183 811535214 452013176 472803943 394362028 681320385 894500031 901879899 669058213 725565252 593248718 968469074 399407217 647517007 613156428 631004668 285334588 463693944 995839430 996356903 457987430 837247857 15766201 85325703 522935804 768897289 184657546 818210604 655646563 722215800 319346865 371714419 549305856 803083445 362405384 640223575 574237567 587477562 270501913 730739226 300921452 436846978 323829116 722250583 897808141 992499892 585189618 784880686 765263378 899913447 584070298 932783441 362622087 701962758 884439809 972219114 356524065 579113051 886648376 941167957 620324616 883216634 907422519 982033955 314023109 755768676 191229397 539328528 960519464 991863986 363305965 511089973 775813354 890431114 362708128 427443400 535938656 899181723 796875613 932565559 270662262 901863231 141029601 368671420 643648414 788472578 426779797 437445348 588444049 848192795 683589625 853421485 150927061 802578893 650157979 908067527 428694341 538135397 554416057 789592126 784569046 952098291 194754301 243679298 714354862 735660046 209416170 683781114 620754141 731088350 176046712 432075683 729049845 813173671 319528444 992781681 695152697 827148709 575378130 708480087 21238421 118079423 688431632 983106772 774552338 893680154 126680201 457369457 105379642 344752130 79952412 271853405 893735861 905413163 813010700 818189667 385443487 410012397 124253349 334809378 383852273 986211802 321168132 438934428 735162260 964351519 722043592 907588924 549822384 848487467 964650371 992931816 469390351 923883099 837130419 970484292 109717551 555064727 126964706 757434720 87298934 341622635 809193665 852144084 643388154 653766811 783844483 813001302 687472885 746792694 594821754 668403120 446122404 509290940 417486698 610737158 152925816 903547925 390564882 545946380 709332685 733882447 131147 624314215 785276059 899179690 851782776 972689059 160820142 471733707 307073579 406869974 410989609 507703710 297744843 363364370 188410077 527761012 154797791 600404519 35760498 710226126 986935728 995705921 554512031 743010918 482616851 913671898 151376747 706433204 792484845 845949994 426823035 725458190 330962828 707492312 84399294 941132881 781598666 992235300 788532764 994302265 19598272 761613215 717284105 918495575 467591291 801606697 303187143 305681715 212070796 522035549 417980041 718099971 927297975 994424910 692376076 886720082 544022147 943067454 90158298 417506362 383367916 568964443 723071186 887028414 430562270 663546201 45696842 255319235 990690149 995232350 815984169 948728652 69368719 503062589 161391464 778652633 177775506 237839261 567579557 903114073 241159669 563524779 300915940 933576831 634964516 806522591 430479780 900226626 846470902 983298665 949595141 959019282 232108640 953874342 419010906 825672876 517846767 703792127 96832620 532977024 453763739 566978071 128429210 326442893 743732751 881297110 169519665 709009154 275673556 615115544 498172345 923500847 752407302 993893062 14263784 889094339 884973822 960950086 780135836 956451361 885183101 927334358 547084634 917772238 310011995 992233304 507995587 930146304 70899129 393288998 150514774 613179999 224406146 451728779 489493154 705620202 277191727 383763622 130022611 506194256 356045572 391086528 96059878 462379275 534079729 608752639 27424945 618396779 694819861 735272346 939980864 939984432 210396532 787968155 65345519 152969913 190625956 452667047 883473988 890120463 734027538 847566546 413769529 553316768 261923187 329875175 872787925 991724508 996544530 997470814 205514378 977425070 981148125 991827017 4206354 251979261 409679464 514681215 657684222 816610734 951267710 985364599 181187064 586486340 133155892 422661325 617708763 793333226 279021721 773788724 726696791 820314247 415051036 805204054 45801031 973478410 906114221 931870165 401008846 902644816 823825476 973109945 329196526 614721180 384423271 763528764 95695230 507602641 869320910 994583673 563047769 674291601 275074685 756112712 723085402 921084824 331619817 478441794 82217663 586006462 188564947 537069825 737773661 865164950 392874692 522674446 330454118 610173382 162203021 218097761 390805645 633422917 741005772 823631878 408892141 455768440 695174266 875169549 581444795 769974114 260531312 876066809 540503078 705744249 881009295 900147304 402053105 947161324 588960552 995028525 21889876 877846865 871486026 991422515 517830844 580174845 532801013 698534700 556285108 697197657 331398465 592334447 847230996 935551887 354552515 605122822 393085612 735972513 730811261 893978178 351313454 848837431 977943988 996023180 680351394 861634076 668055459 965984551 246974829 467812429 441118512 700696848 840092869 951632220 45278189 772899945 293807164 887462490 525696533 799727755 663147699 761662072 274394725 621643870 659102311 773795843 469430573 488308882 509905267 742709668 434638233 472137178 182561311 974709125 96723969 404584230 396905478 714314524 856384934 998155857 424091939 755685818 607673692 908939922 167589447 363739427 826608855 831466387 694960591 964485419 316407497 835950591 323956773 787642579 77124713 537024671 767094227 772718573 691682438 948755056 755722859 847218793 592184461 650012465 802113870 933603124 612787327 810001938 29745648 845212312 429452595 625614211 320998468 609807309 90322507 985857961 327635585 691334329 407306361 449285366 287728543 852992672 151137581 490920674 504736146 580314449 228671978 572600675 739288930 892174523 992658258 995946610 961212991 989144701 788951086 895952571 840643524 978054134 538932573 546204916 232949809 659622241 993280918 994079545 505531982 630171966 666298112 831803735 648052629 670912448 41058158 859386307 444727415 473658394 598097161 627048523 540973478 725868569 270178663 837357622 578529184 933211645 504040399 721897007 130698570 756183880 41110390 631015967 118066437 876267269 313533175 972390064 399189339 959545492 23893610 548264967 224964244 970305499 129689095 311107180 99489633 454393305 33762008 605693860 608363814 769538630 180898522 751557214 115158073 889086071 469057359 898423400 968884699 992357435 512194787 595893391 478237055 675323177 803921440 805704335 161682963 363163875 93235548 159903310 227253747 915597879 25683619 561783141 77914494 682849027 352400877 523953322 901823637 926316766 312791133 782752447 918307131 978609035 61500382 671198338 780099749 943791748 496862732 959617559 311661669 988856971 413915847 762457275 100248912 272007424 614331684 752908739 510569707 867181884 886756740 992788607 920787950 967023905 548091377 620098135 694441491 817454795 600220478 631102162 33437238 226691505 384285398 656217989 360482357 908154862 305965642 497855978 390998152 531632701 242729540 449002773 259283166 819781776 302885290 556996870 7635087 87848892 524434941 616222112 939950891 956013658 840700946 972090702 954219468 994634212 506542602 942003220 538699093 899506094 869771925 935988161 357865449 624166521 14987851 231757913 893462048 905101972 277120423 428519093 939060048 984799702 888611812 982652919 710498257 754130963 479745917 714670557 667058532 814897950 342598668 883816438 703085565 774668411 106922206 355288727 653286482 955844185 352594067 666127692 430204251 755880044 269247540 444700416 769433721 801309549 126890524 278622722 810208442 959965683 406676458 703398231 923155931 984412441 204349942 433882313 550182816 770733029 359599531 502163744 19776314 738583077 136390113 798002652 128978043 593821960 668901564 988584422 720364799 962531358 304506235 365124347 318533909 399841001 182121660 228821838 880147677 929895851 208746235 334213606 720021894 986962417 638075125 975791020 149191504 606907960 268935011 620638566 855138116 866008489 406144898 999325834 178753548 576086544 492742536 833706966 716063958 979132242 813805418 840034585 841270920 964207103 313999325 430310858 739270019 977276694 592734840 942807551 516541236 822289330 539281666 686805726 95425308 401363470 759752434 909113442 991061900 998562052 723484204 736365747 241763919 485633221 840365059 848897730 594888945 945949977 267700636 335738093 432252036 438214626 22428590 728658421 970514730 986851712 971699582 990660778 226839809 950274096 582698188 905420926 392226826 467431879 470210562 694851179 943563982 964397708 289917186 932662670 793291495 976472754 445393090 840067363 487577013 623348190 917720694 949407714 487983707 762358530 518461366 820447355 577529578 655523720 603672837 709759007 991526205 996434646 459170053 989739441 116989868 339035404 511961283 801185186 778360816 811299590 466490644 987273113 883006772 931454873 838242837 924629269 483310364 624577097 381223203 494159290 436364213 714349082 664668219 827150484 571698187 713069455 112728682 619937543 36565022 246900956 360504877 500758389 705791556 921125052 806396286 837761107 930383471 936314168 345567440 972219219 450034353 954355501 171913805 195642891 493382039 639941792 489323432 687055416 80849027 789794337 328433522 550737374 238040305 470092443 825659619 993630899 585847295 950827625 818428476 835664299 483086592 820729958 222562109 968220934 791674665 976710911 406809736 613333445 67919894 72769465 579139835 615160943 890753354 920830506 535481529 799204849 700271393 935449777 410255246 995730422 973898104 995110504 372447108 551681832 926857662 964960792 237798303 631242518 445161644 593479865 530242794 549507046 498110534 955355877 428094755 732636748 625255729 883907489 894033499 904523837 99874961 782348114 894717338 976312478 426344246 996986629 515285726 866996953 653090769 667879680 573943252 735777606 511522974 728542678 891508637 932341534 597895778 965030847 755853435 959853681 347033524 358990262 956953646 966413584 54254601 354482985 836343699 929795316 975525743 977880673 334464247 866718106 123614090 765808495 627954464 793440677 436213490 481195210 124389804 769735116 378923722 515686397 800254518 879400450 690638758 834910419 567977598 815413253 998688073 999455992 715173416 934895029 39245556 762479815 634879140 733121505 505881616 792221870 410623957 651863871 898719090 971384855 176761723 181303296 873978724 896442636 618803136 902203749 445631431 816758287 563229258 995046518 596604780 672495410 155902302 434794862 419773518 881791146 822833477 908074953 700367638 878729303 498415715 530653543 943294874 992618338 164369502 198994723 382445227 923621217 160705714 772616876 344870914 895032334 787187240 812235071 315874251 388488586 417827200 759302050 405573571 485664728 387397937 825813852 145341581 224030691 335965725 919437948 923949470 985966274 192232409 261891008 730715352 746783543 87644299 871555666 309979703 357796819 4126345 472662971 930599936 998784690 470418054 484994287 978153511 999531879 338436988 854027811 814674355 839828027 842111946 947102288 392448393 637699571 376610899 667819663 889024280 960599659 14646093 544269551 433161028 992398245 285279529 675720205 116007144 614044150 474853550 672500567 450652232 471847873 981838271 994962049 981170049 997406585 55136287 609626971 699024514 765440187 514980055 617357993 134009047 826031274 258648104 976453491 620933356 894689104 646499951 757144501 508770258 828453127 891725711 994889202 249689112 952017467 204610134 309034060 425825714 944414734 415268082 814675993 343245034 543044357 591571297 800823678 128828149 932531244 719180991 911929615 866684855 897325278 333427275 587151756 428768240 960729795 940849946 980797649 455900310 949864067 71123861 439224232 481321362 669141230 782583920 959035690 212495897 458119105 109861636 635908104 16953843 122185207 298111260 466666303 400409046 835329996 589849815 759310294 892270410 941075656 383070354 900478809 812684944 990873664 682605297 819579208 250112132 744441095 698213210 860712441 480214533 664300647 393627782 435453509 1356322 626417318 142253628 257733456 170889288 704823067 944387631 977256611 138981756 326887518 222553549 812060455 228902208 402355248 142745117 831406499 602900318 742227715 954102118 986315343 379787658 763571519 273370262 757072863 644291380 757245445 276762176 360987408 686236338 839735515 434682912 540935462 338530224 576492049 370183366 881042292 15587829 106650483 670724593 914601031 374225288 516477958 534761494 679635842 990647732 994863237 749701157 963188233 692459380 837190499 906760123 955705211 25785818 784831054 139504465 511149558 931405649 967348226 199371569 667118031 419029699 843587715 876071316 924062347 759257032 787414720 749756455 994108147 749099600 812326424 648459474 837700347 936267716 982462209 726832250 756821355 647389171 964796606 960138385 964996517 994740130 999948292 894097173 981427413 696308754 787811672 144719015 174637161 616821829 944789386 3120551 874968762 388343927 569380262 633180338 896307291 886918791 905216236 208054293 879408762 916741570 935525774 901802225 988218317 277070485 968814131 841543983 904356777 7363442 804855252 572370824 594809192 529277043 853364769 710735822 866184116 253267501 908918852 518578965 749346793 23704763 167561424 879886911 982426641 755884265 859005820 604276736 613034965 895511466 934927771 873502407 943909614 16973761 982010043 134981905 538902173 643248596 944764142 154516081 664574794 831781500 970338739 545926211 617165040 783692422 957742936 878286589 967138648 991571182 996486332 479968771 813376256 175878944 948679426 399596119 743878183 134534627 166562819 386945533 682434844 971385896 995456504 849331452 867560455 980847341 998224057 506057521 942344331 726037234 889870732 944404084 971656227 559617565 813278137 520553215 810371762 761793205 984054875 631493164 956579882 603191882 875232085 401248102 629863198 781061087 870828307 647497198 942415725 786656679 896260543 942271152 981221283 375205249 806969456 643749979 948056179 920409993 991843829 884803472 950054602 214408255 280058055 2566269 992408969 881936207 885273498 482363453 855431821 252881013 828912511 751103682 855695510 623186717 786065364 882857841 903699052 239591025 565295871 238104674 926167365 33015799 833685135 542384278 762911109 336232302 338593579 61382022 876723548 818459239 902369696 491821981 921435503 192679962 210428014 715117882 900104545 689234088 879900620 552530561 673138873 280188476 855255899 174981079 814844239 493839645 699068593 413961794 539356424 521677320 798690512 785883840 873598001 917273689 942676059 943854458 978311961 542451605 913404025 237881082 742795104 745902248 930329893 539758493 932733570 115090151 938189197 615323436 952572041 431057959 511889390 670660937 765367585 443026534 589324022 5190340 811348029 921941595 960740877 950408403 991814482 745674809 793838342 47687064 237353690 91294339 703395300 280617962 800242611 262105165 281201454 89620531 726743597 920886662 991677691 639656333 976079605 316011315 992672435 740470934 834288726 253407021 326503132 601440206 819017753 176444667 622637383 243006476 885623896 739440977 756838137 263639306 747146632 301800649 345403429 950097441 974376759 20640562 591603425 243056366 977105240 318748309 480167435 61728468 829776150 743694068 816999680 781025858 858280297 964380375 998019959 68491195 96165785 166988132 341855741 228319858 276925122 374571813 516074015 563630492 967356292 942819358 987061044 541655005 833185486 105671095 262465637 847432412 902999850 187213910 896471732 783835672 791291437 6767538 594425695 169972749 924547077 143978562 521893971 766799650 778032479 80166841 339753942 159592861 935298233 734508845 913403874 279294823 309611302 320912583 863609420 808233263 959141340 609870497 697089538 563241181 858407383 730479838 754287632 179281366 996662046 19403916 385388645 692030935 710009479 50938033 720074995 795473950 983235382 612959796 977183768 801237578 909023525 989706315 990190155 589388888 665883423 569456392 977064945 809212656 997156184 781068380 829182740 800798064 919700287 409132651 647700021 192985593 811839424 426270055 520409553 962451660 977850849 700885270 898075230 899073029 948811143 422760468 602781289 128976281 936178540 898733313 914564979 366605181 815347630 931220710 957197838 629829408 766296814 592167485 832816815 139513415 679057746 652721026 947147111 327538331 594135848 989286533 992397606 532238012 550906658 236808709 997495950 549190010 776764176 373833727 399845379 585877522 950848532 29827283 528453909 803382323 954396406 787142677 835147604 302208006 476053809 102924844 600634841 891661104 966217178 398429177 471606667 200449033 533309299 787460912 982927307 219175022 823136263 200312586 524066900 35314781 721966905 805114296 946150158 944743910 994109367 522577020 640959518 977037615 989933202 807921645 955351015 228210477 878906774 182429171 391542246 470751436 885881340 34535717 494254018 751613708 898151293 750414716 901225431 204347981 955907707 708366715 811110157 348057058 454613373 373895986 561686012 339793156 859167833 265467760 833408779 442634899 623119360 380193584 535940959 78236070 601161752 182046715 816431394 632196832 679517573 416960124 721488275 231133905 879177047 147137621 326414419 779507079 884126528 223262563 538680781 382666121 808680110 788765807 874387258 400021175 544294609 970736392 980219869 862282184 928143778 291694687 414756051 227460690 300129831 63042817 140554951 196609919 592267745 964409408 986738272 104545339 918832047 210428730 473320026 718070007 776398699 876885764 917821565 349268528 615465784 765799567 918261756 43497859 77838853 27382199 982624363 857549825 945488822 495069547 715616220 403898102 458429353 820146739 873794438 388684537 431627927 362695332 551551205 749442858 854491940 115615741 870166797 975058256 990008814 640650522 646748223 870419246 913362112 958376253 998914126 238946433 907177167 516183009 777242108 793762801 831057842 884845533 950934934 463867611 620186471 121978154 479211985 765014828 768306390 310185762 451316050 873877477 971048015 187966186 954941276 516057717 704259736 187803536 199205094 773833471 951881545 913572620 963753254 7497314 559735501 619080271 897752049 995729335 997237294 85540883 560608147 341958784 978228707 137347360 149246431 907090545 923526663 870834186 947828422 398521560 772009745 197577746 213353703 996514070 997087700 454057987 776492109 609860373 726440626 964010353 992262658 364897184 449751350 152733999 472158240 980904190 992838009 987672789 988380686 648438216 672405783 598611665 719720476 786513209 869639736 525948569 688229925 225187173 601108823 826337181 973810808 226345368 443540590 746327077 816891184 608039688 913159960 118898556 554069553 880943446 906078618 623251277 994227811 791440548 978286851 476731003 770540710 699241154 849450070 441957586 963977468 39088850 525801008 125877795 518854506 971996853 997069479 308146288 806091194 185515430 396140443 571341604 658471736 475289076 701153486 879703761 919647916 101844265 864923658 902837796 956123758 475644129 867238825 475684357 518370836 721487473 979100208 333978160 910570386 544830587 578045520 65167767 413385704 702858145 709538013 97769506 238332740 755868891 830998618 91448213 766587609 263564827 343194696 273029370 693238970 15397487 301297486 425324558 906841006 655565828 891281480 37818679 547955023 288277897 330756504 542313023 598647107 448437431 955407854 901100596 962340917 422590558 746138232 238002729 595448563 841847189 950037804 956084371 958136320 191876161 843837174 928398095 948782440 929562888 984801758 327869029 621554284 843879572 935904715 194447106 481104804 213650116 391782529 644515297 712205428 455222813 498933059 842741228 881326933 86775824 545871259 999021987 999156941 651416733 673154741 187469510 597566655 4551251 85639115 279287738 736525483 124062461 365162052 773462404 898276782 389093248 700091014 207695225 644759280 692130575 759955748 530500492 658359091 711762731 925662612 684472392 935694979 387166352 961204394 386631855 667588535 444480141 973861248 910072153 930042186 434240397 588711987 157362044 227965937 394313305 487410460 969821327 986220092 939756651 978379557 565865097 707915552 585075265 658855884 860406906 893614246 720577632 880914920 447864848 680512983 667350639 981579613 260436359 897773079 506472542 853984121 728804573 855952577 38348662 62745268 262237305 927810145 713716571 733662791 233868937 365408208 526031789 698543033 802912632 962380277 16860651 313409184 58917988 528116191 410575793 904660608 671880131 998733451 268699834 912680361 442324607 674057846 577690382 951217900 308100642 422783500 339697727 655130988 930052785 940717662 392477013 426313805 624750747 962618089 992365916 997258606 346667246 724493057 852626766 991354815 49247538 329867524 861572493 948326906 769919019 936165355 958634402 962455829 419905660 890428511 804051860 806646852 51276650 669236189 383500807 778583630 880565959 939233737 133265009 326740162 591800514 920836445 160562835 247822677 45797144 965564392 901715540 940566098 684873780 916155131 500164569 836680800 569383998 701533404 141655393 324969907 417348018 538106888 966039731 984350745 971056209 991919740 91907704 633189279 430119266 589868040 785465218 908626686 631098620 723698947 279710847 554796659 189766310 698436160 562191290 855875062 194686995 784827012 109079004 839081090 183484615 732732358 149498276 630346219 971868423 975141807 810891103 924433160 206207316 696939137 415344423 440200865 302972335 867873608 954800946 989082128 87947820 673400629 666527274 808452650 458142434 878465025 890854238 908076454 91987335 603542446 215232565 547567236 743644937 748889307 724809467 846442679 275856704 887282150 936994091 967408069 743298829 929804652 724695227 756268817 325582635 519030368 383109180 739263358 179665261 560375700 945785196 947574487 365490305 374360390 192037343 353312911 38338248 533549210 752103009 951542145 163231094 222063507 981099852 993823695 30138572 240893065 581302400 911069334 311924536 760640128 802240330 809224514 753356109 891502181 444576747 532917250 830208156 888970406 313944737 942070590 346584118 498979552 28924630 539042217 175665052 953602629 415191113 561606234 704597501 913003751 823735645 880904958 659461428 852588660 166311236 238165927 758674255 832813962 816046686 847174388 250056193 397057345 568412002 789635245 435149897 636164453 682327202 757172361 619854973 966581696 233146903 642791140 420232607 857817837 110597156 917236098 502335919 779990273 137523780 168437500 142383329 809197786 90333739 959091698 40022799 101471221 710478426 817559411 21271958 285680974 288504382 629708412 343360513 376793964 913304961 926701627 876295321 954645571 442479556 821007702 811851794 819759019 330506432 573614758 902098410 995094979 787992850 886615615 822496325 939219780 872319225 946922221 212899926 952286724 793057973 876492052 349248262 643986640 351914686 621052023 755451627 809449508 773432765 835736525 339563674 344029076 90391937 541194340 884626191 903132985 895265296 992034149 31109654 446872799 597540660 871782587 206106400 822503224 172649626 621392716 301142990 732426141 390403289 870449501 920979868 996961942 205727675 907573079 95768456 252697045 905214907 914334783 878204558 963433588 622935059 841920866 684036196 838933980 783431475 897750121 392804175 533045833 431679711 482982586 269544709 954437952 971510789 992414880 868077522 938561158 85269710 615086911 291904800 952533775 418510502 968468604 104328244 825158804 776931205 819574042 464575527 970628643 92224818 125781545 61637370 677364234 971428883 988507768 896740915 919026400 521609468 716042952 746213650 992330064 311034661 498865523 64664022 492243373 653044837 956305877 29346636 913247955 607146562 937542095 706514227 834884408 196959297 539136699 217921543 672011212 109425291 197766030 189141940 637915910 423685732 979809706 117613009 978346556 652135517 717762390 79463544 584118177 46832256 193247503 672069039 768870581 702170260 941719358 554870988 993180277 808383420 858512060 834797953 907476250 109221828 926440341 183166048 880981047 17477366 902379843 799827322 950413501 624255270 635084578 63463447 720305154 842516578 932019828 861714799 941146720 902593221 970617260 152602192 158542154 644682387 766542795 148520005 208289515 647221415 780101684 479070520 612603973 171954368 579931600 575436582 860633784 135854791 314449400 238671822 599407058 988028649 997658999 207938669 614752062 196890996 834068968 171644119 250944523 130314044 865989158 662934720 747807408 902025663 912609799 61196137 752551000 685287843 883972290 318961295 815632253 954460539 999092010 718369240 983409931 140848084 747581865 82839730 129915069 312450304 928505973 784064777 792399407 403844975 771394347 972766686 975275565 262391653 768692824 300666204 427107994 439073213 984093577 909407939 963551254 528464798 868061819 486218579 616378000 992834612 993672229 675765779 949122212 307848640 566185380 650838647 949084714 935169038 974173173 905993617 953296964 940717721 972219662 781116434 863095816 924208336 942920953 900206513 933528268 417081739 418756192 242408944 575618775 150822083 423576490 975980394 997275483 350262129 517742983 205212840 719685602 57562788 789828771 342984044 643922923 238797353 412047528 585176907 687939208 670039236 891913302 733925182 920078363 33354181 753463670 134469348 609805352 746260101 900787567 151143599 423298018 352479086 705818608 972809722 979247988 742720825 848198873 737625528 846117104 957235784 961131841 95054863 574797088 971661707 991695494 331968592 393939186 748019974 930188673 922570417 973783086 359757801 535344265 100557235 406086792 189460389 422368952 735953350 874361420 703637091 721828177 507511873 508722976 499162151 906735162 175690891 942202224 194518057 373156022 287850914 713155132 809868305 976879553 579247730 681960051 888917742 969598152 581837877 803340268 868082025 933047839 379659685 931547848 200248542 825041861 540136317 634644213 863980144 953185054 420962159 739402540 427501680 754128660 918574186 928819776 112387572 211353944 949109095 983811041 658289541 711844936 655435186 766659149 337198520 662544154 640310489 942946158 571469781 917367964 413134053 636720027 110992965 573472325 187782458 245935653 547576618 689549281 507991189 612902815 42992575 571485389 234307640 432586546 717959780 879149672 32596432 594025268 639514070 917845802 946548020 971950278 777701873 995741295 388918502 503144071 839971033 934958936 373624556 889213796 84096440 221052286 882562374 967195289 497521694 778310127 596975824 619382104 130667442 845943480 230981263 602382877 839173379 960653708 220977285 316003613 204154150 279048750 289399690 356214038 192082907 787922798 105674178 516055916 45400820 299928738 582773399 765773297 851757880 962936738 711230118 844260894 945463610 969015529 355296961 530327482 130026039 767133596 449024099 669795119 856433446 882659239 339588653 434333652 943628799 999961897 557848988 921872597 88322717 889457383 93664664 703256856 415083654 944722761 657560416 961210700 62372491 882412988 469532299 475480976 560330224 589716643 311495900 662222587 918835747 945339870 622227256 761545035 960917441 971766145 479996206 528543797 951820769 953727970 678767612 891513554 766432473 964965995 285753580 457709242 324673727 462014998 822760743 881454861 289536622 938160785 220026802 903731824 576902454 733633953 265136267 389538537 548556434 601171508 480956684 569758059 274089079 391484664 767893058 820915966 599740037 726739181 430861042 990224320 567110686 887323285 884753699 986557809 355561351 680446208 62928726 124227846 775509232 973480919 379208469 653816448 688181137 706780078 794475669 925680227 648446567 976567071 592847736 635074925 926526987 981957186 287719462 743543117 792260457 949535761 284761978 335789120 672782569 690492646 17071927 785573105 307751049 662839921 982469861 993235339 219694078 358403575 628627493 806981569 883550867 967531308 239283408 314890662 18710873 940132619 677224598 753766381 686633092 962398531 671815334 888812226 940996820 989872718 418322791 805512028 32563316 841354887 521954923 738744526 21373675 355619868 922633804 986303807 925360835 928520253 565805484 793215433 939393929 972355803 854220213 940882401 43712155 884817655 524557591 853571228 86824469 877058972 42841660 758123015 967494785 974137975 918613324 934576333 852612046 862810505 311862099 768193446 545652904 871948154 181653863 722719177 710855320 753712903 375001308 459165760 527500217 784137439 104585109 685189186 592320869 978598637 909770822 989004183 808363399 830390581 97896917 582121122 288464046 597595688 401961831 540339429 313600152 736828728 368862492 568116665 625668933 936158557 12982996 68472767 876004929 885781341 384373947 924439758 645221831 914642458 806488250 982633311 579394773 870999519 239842856 968946250 904404480 920158652 859986203 868698936 644098389 838179878 608794518 629876934 145550377 835311744 987015467 996785022 505651280 607150596 216472254 703169860 61808505 903585419 337951674 697026122 113986319 263309620 391006161 899291948 803245542 887658773 359182309 447333591 391083760 882390232 432831013 784206889 777355836 850925507 333972183 919666003 141863029 361610747 974742914 986591973 951233260 985729674 610441329 702250153 455780824 596529639 233103331 320665606 6858957 645564675 622936671 729507454 723824147 999651867 553947208 580154402 709381260 905801250 178879356 754480548 342896432 994561509 300941024 418043427 765460496 784687781 657554093 750273014 16393470 674099081 12954118 874392837 273663657 381382430 64732175 126746231 724959451 857789194 224090798 872972276 1997360 883059394 415086739 451289546 668614341 793535531 264361747 449406221 219110834 326738407 695557669 705689921 685286936 992290144 935684557 990501795 984347614 988468635 404888550 503430388 438889905 957024222 361173309 835620452 384759983 526062079 521310901 975501024 666856107 732548705 656181064 668325923 562619631 797090774 869736324 985988571 935415671 965581624 359173406 710644361 775956985 845840509 294418255 728012422 69484850 101575043 847288191 970020130 835341469 878857833 537742817 637689851 41805307 368747878 255854367 575930798 539201994 764759516 683644969 920877983 948628589 953129991 127795952 342965155 515957116 728217031 828414356 924250230 353851711 398644187 675118783 999168609 205013659 376308828 557559744 870653520 295587043 557505943 604937184 838986990 440384426 527865287 102865282 578024371 446301435 694276942 761509541 983262351 730880030 930022362 185524697 234710532 826332360 934953809 630671736 666455125 609510934 927643793 790895598 844194508 114601196 811836748 903144961 922556225 986017018 998698135 220821437 949310415 377416718 519259928 265851308 858011820 729362601 969992368 247357455 624532454 679399708 764035187 505164047 760641722 690719672 818902666 991538360 998866351 176991733 738375746 280944972 483339883 662525695 755618659 48276489 266589796 372272652 720638092 558360734 929152343 469966705 924527931 231012926 483215673 308514850 583495939 640400725 904903199 709439842 925043017 854717766 949660424 770428956 955488812 533460325 721867450 883402459 960844433 821031063 950221431 5168326 157424763 956297861 998816646 920281722 936871777 833626699 953511585 705615828 983539251 214083430 569294956 666573609 885560084 466158270 537224063 448357898 529639143 644383313 932835698 23567858 698010368 372432391 980495868 546911834 720795569 310958758 517312086 479801341 700197539 399534500 521336639 215232424 785192544 101120621 383089998 884502171 993983650 156052733 380605508 258793299 967577413 271536269 643203394 511413978 783481561 457666568 862689961 148761974 338816284 253775906 942242130 441479976 591488666 515553694 681646258 984025903 987832059 827987086 835928956 837664502 985765586 886878490 977068090 810137808 881562761 135033145 639836134 97790194 170024306 6137396 845791405 835899171 920043244 230896189 674558174 4054193 852850800 884101104 893870984 976247694 981256960 312180590 849382817 525914108 874961730 97245021 692881511 892151673 921360813 129417893 770851326 523908002 529096093 43856697 296046740 258829891 319799687 629829084 901202249 182396724 289391217 492586569 717904866 168746798 565618391 277539188 590070333 726737231 928624909 965209309 996631445 668389240 676048838 970402365 993520826 619204048 773271436 305442101 515997655 761383816 967471980 127391160 424924213 340092869 968726910 672833503 960916068 572477165 925032864 300885376 418584962 360540524 612856947 543857945 888079649 598217249 725267046 214724715 411811774 212606276 290731684 386373227 889896872 51347975 620109950 760418302 764215455 428801379 887283556 557120005 846609848 242304692 274941455 361334219 706311804 860720464 974347914 543444990 904040404 676257632 819428820 978780447 988729183 691879677 846422566 853439853 980982796 830033646 978619364 172471478 198347242 489191903 793197827 645268803 916149236 449757483 730900149 526704784 987014399 147222032 425964481 667241245 701136281 855492691 928192513 145628667 381826930 506379694 885882634 919488355 964626472 604575124 795473103 422857734 654430955 419876342 715991764 485708706 770256485 308689576 836597854 665977993 673534230 223853229 592131332 630759656 695285350 830004174 965074234 640696430 859291793 139678519 544181612 59023441 971408627 190945414 244596095 626321957 816064478 933159242 956699303 614963475 709905260 950796432 964403551 663700328 820700562 273656609 543687009 730184514 779738083 165282762 531613567 122154624 237499234 329853580 335697715 419333186 931046486 711944670 771133058 909709641 937348455 136603031 269244729 966162049 969769309 822420415 985140072 164512671 329511591 562606814 773587555 464320791 653262824 724582846 950877829 206609052 813623007 60933347 648606667 422075993 537762560 748009259 760280185 22649891 46260990 230155293 385554850 233691761 556614825 108147019 518264354 875122221 954800127 885525935 898978765 729515897 747360289 148966979 246281997 948318000 998079727 383376192 861975559 213620930 508064886 890849186 933906048 353723354 765285572 950997908 977849133 286779055 382940514 625475639 791360883 134560120 350409961 509706719 880781037 768084057 852884632 520763327 802006482 713175624 995187944 950666771 982912317 186332026 301364131 157861628 521278155 383976860 491907722 130766211 936452005 348045690 474108576 987786080 995099141 766358869 794108200 140408250 663925959 303639828 713969047 427317220 710115023 833979361 905725416 381250592 964231240 980453805 995767979 540304456 541712549 527493119 677305441 331427687 854109680 580514226 856106843 874900243 967946745 592652662 647023982 316475948 836391222 696731887 894671729 828956539 995716384 488872478 606566008 265491586 767322451 623589040 717923706 331737555 685741094 717430960 870363482 88229566 546298920 176009287 258146301 104142319 957195448 752857571 946109676 362714644 552083370 376506100 921952202 195070803 259716164 959386588 997154675 34123008 274322296 942247286 988231763 696643601 952124520 321870149 555150933 886288746 969716613 9223674 796782754 520738834 974535762 815447817 982096463 203258202 634515449 307372441 950941386 609704564 906604311 279082019 508089369 616364875 723488517 237808328 516089439 422552606 519296186 292770815 622315744 40523531 941348647 205069553 233384699 673387797 902187677 738871171 836125937 992073830 998571751 881791706 933345988 905029796 975490816 197746933 763147805 436818182 776772652 468618183 894475332 871106931 891292090 31604235 862097742 572030102 857080449 206378629 572662734 756545256 902156161 848964050 892401889 225593785 817960581 755518246 830545129 898907074 976530363 292930632 872558429 162707125 472090550 707850173 918394985 579730503 595570356 790080412 861161070 802550045 887787427 691834621 702500984 133466037 260195654 689929774 967234386 16374208 709486665 262012382 311431232 213840389 806099334 423743103 839554505 292657647 720134287 186175484 844346600 381991108 403066687 913725467 985688586 487446613 736502279 791188037 950561852 894633774 899114476 300189123 932805110 368852090 432871863 484726 61290667 375634721 538249297 959140547 992850040 224763296 333046597 490040722 709304397 37593412 794353478 978456742 999480300 935011195 935013393 261341627 924717390 944752454 947728749 203260373 310288766 690626438 799199948 348234594 892325405 739034895 882741771 995527074 996544887 508136581 852566940 673829256 771252358 987668812 994686630 874317064 885512145 246003184 542253234 207895104 616119302 534703166 704075896 147553497 420611216 346195895 658026884 376521187 890964765 617125301 905276285 454156793 943678190 51895768 318822224 399273603 648518644 969537642 974804134 988997818 997107786 363769313 938601438 608506083 791175079 924276018 925451900 313158062 450400988 6998734 836737861 471368974 849361051 670361557 824814013 318582557 837136286 971753002 977744969 482963844 947332052 969575419 996432471 962457198 989591397 908063968 958985461 995711415 997906405 97855409 868809959 796268841 816689215 404579468 654300601 653017627 779402805 537153935 944858418 920821984 992750166 465521838 924848826 306073273 989707792 657773229 874903407 835292194 853081778 291896221 587129044 258390471 536945523 20633625 889865454 246543313 881541537 796454763 820595279 629875819 772612522 121168815 947938599 864749527 877167383 760176685 786800537 690023055 711606646 728961283 752637762 664650480 902273922 605556400 869815802 137685383 263130032 682888030 825358865 866054103 993877148 369278838 395566491 925229091 960249226 659865571 749689004 847163190 934450754 939460326 961091861 265909076 450638881 367346511 971393613 228150584 813413273 170749165 254398717 873293324 978416568 605093633 956152933 853133641 884177104 61378310 464181146 66644915 151779949 714613855 894542098 882960705 950701674 745614990 855225235 406364738 584251580 896562186 937926957 764861005 998665080 919996251 960163936 50009001 815926469 588293397 888329851 658327593 963142602 52009551 112861055 63653163 370687518 84274724 127891325 345459965 742793878 330496190 450597227 908724054 923978156 487886756 619785982 426560576 430659178 333531276 534589482 801410370 903006834 433931117 873985470 425674598 717788716 907804884 972826481 783912303 852831181 874269364 964265547 839392352 979341527 66590186 603705801 278089854 472338457 271531637 392477823 315336247 942312573 530553140 676881678 798632354 987244629 286801436 991576339 896428019 901836596 7012161 896703106 977684100 980826847 709753868 906971443 480873699 758335606 441809377 711251177 590528758 784543086 25938145 739559435 489983654 921070148 761791128 987452785 55224235 229975894 229223252 444774169 273921052 844542803 136654243 350232032 128649301 239999011 566776131 944343408 632911395 641099341 662202664 964567930 691757806 809903933 398771487 498109665 581318699 792446245 357262576 546746826 434946382 771953782 769616181 822239600 587084480 655648142 28920905 716887814 881381541 993724828 699429124 921880111 337709354 804004051 904223477 992462658 726228634 805065856 917861735 949561733 784610110 864407993 228623161 413213962 878966575 964831935 907422393 956834540 866179828 916442479 707546885 792210790 870056330 877298190 809732320 817431903 386440635 497778117 747508671 776274301 978962150 988282473 325213723 590227532 761268122 827877925 310635734 837028212 171589622 261983970 380260534 752045453 787271135 865297673 862331174 915347953 892559261 993348092 905770649 965876618 119387356 604921310 737825656 738521604 211170251 831834201 28998519 274825360 957930725 979937030 250529128 669856440 712224213 943207405 43125844 968014808 679542484 954269015 749417489 933713225 98017399 515308806 201613875 872342962 73495168 759277077 434544146 864646104 778622492 992952933 356342318 426864597 847560503 942342006 70330491 587130262 228744992 469608756 70630749 564342055 973468701 975564115 862729909 867881368 527733010 792777792 600400018 851301163 799116788 980262265 433595772 643337948 985008387 986877574 859023569 911981734 682371191 978755977 449555004 760998126 999144085 999290722 417748664 763335713 270726225 714121604 516173444 780304778 778673846 988096699 293769635 348539684 394608055 463464029 1781892 841268053 633344332 752903265 285914451 840114532 252753444 865082493 682562304 689502764 444299664 599239758 19687002 323809888 863892180 941752148 550563393 921781365 280940424 843960469 723305163 910696627 216027997 972506548 313639127 478836467 957529739 980293473 760731731 796903544 683762296 918233255 51069630 446286611 865800694 969187857 46682705 997173703 969137390 973618517 112850624 337008735 954128777 997912414 647047738 970785359 147757671 492825339 273589282 909881075 116310642 261675722 584883175 744987307 701252137 821083600 987594851 993043518 508165748 680560156 99674689 558500606 672928957 687007260 408132638 961245976 85962784 434663020 391172335 486068756 306868478 885146625 196897597 855575834 753462286 829197344 405779423 530962787 607202727 986466906 5500453 196306492 20455890 801595911 174308039 408381386 725961732 981355091 612092961 625803237 281141855 506969289 907862219 927489616 184472035 634316516 421438455 784983456 982762482 998431062 280825860 374718239 582618690 953229338 529171253 901437440 7630778 899540888 563208573 606659856 996768819 997551398 319050988 665991912 205277496 990632934 875965388 895615280 913215288 954030731 679374650 814741388 607809038 945630371 580890138 980057850 527837048 678414575 59811288 431637600 143077795 179493891 336384136 666283254 147398324 691677610 549231167 799927289 211432134 507120147 647440719 966199601 484564539 898008149 669904825 721990053 27520135 255910199 936411405 939148995 181502616 378602628 271106301 502200492 124051589 855609049 707048597 913485125 484199440 641192239 729977427 809609189 780119330 995119249 228670168 956513237 463182326 828888350 491790877 799797935 193853797 944802500 306863053 427887972 766989941 905048017 354216015 479002586 333431774 846921841 899242701 933922950 126709568 503172093 153582986 286209629 398655868 491801541 386937931 732619560 32274414 867777126 595667906 806727088 62271732 113638676 679515240 745071155 483493656 994076553 542088319 862857625 383496669 597158528 917142641 945273071 926305204 992176910 906730719 995374232 132822541 403038447 98254496 336596676 615348881 969216658 358936320 651582579 784347777 868372551 556419618 988607662 488888506 752685270 574156438 851527604 377236009 719792344 112857321 718396630 363261924 850547521 433988233 761026419 966596669 984180735 679551396 697821612 672601962 680980111 963867338 982039270 231833513 595852102 512557845 535812802 753987311 762301789 234019734 919530301 153066383 904654146 534732730 642188249 586662848 658563957 263038557 582702867 875167647 989827592 248830084 892037035 683312171 962417330 810567965 977341690 602135398 948265470 642855129 923787155 551705528 799701343 394927872 761925082 899264515 985986047 258388889 439027694 370372505 492962903 726136196 872255743 217064763 308392583 129196444 852811210 499390268 650224009 323597034 867168627 996091483 996531801 813914626 829861293 807333235 943827657 661540769 922693556 998948659 999922035 942788153 980120017 52732206 929917800 532255157 825676236 654796281 900337083 536466821 977264453 800718058 904756487 496685467 773063937 29134926 262981019 136533854 311879458 341202535 843391707 563454601 834393819 235148534 309590055 11084696 651514771 277255695 513807280 424711223 456128155 687730174 870866487 742732716 996843080 448309147 972247464 42673001 400008405 815450501 957637247 432845881 691375509 984802868 997275656 880898662 922747789 674677029 856205171 548078402 934560633 132261124 948118177 419014356 976236131 674156407 997325456 745651387 788840822 548675533 987205492 964478863 984032231 469704440 806998728 611665367 775838804 894098189 934347023 605781128 994381122 430124207 635557239 73649600 340579396 587946346 803275949 756939614 908083649 209166314 670153293 202734850 729594546 863454733 981770479 8723369 58953803 943205294 945510747 646391927 744453639 915180599 919815264 322699549 356731288 891784362 892377237 612773987 659197555 72839078 507819407 734054513 885503485 68734064 287292931 551639401 826769485 43232259 67422490 406027992 474573644 217505675 709158359 508748046 669371218 616585591 976583530 9840497 319754217 684500113 710402624 865063571 882719015 789354477 806278344 844726644 977902625 216728388 574645058 879254147 922643531 579842100 829547684 907813386 934420426 111345175 180046788 713334089 806753507 342887602 388213759 535446606 723535889 774751161 838870701 351392126 909412049 303927774 851453814 795859532 994903240 601653824 656441340 904695383 913586225 906230154 935567437 68915778 915017250 400127856 507587806 936335077 942611060 303701438 377344335 542871355 686777509 402976453 990769248 803438690 858145496 259454265 502538570 28432609 499836678 675448328 771969485 204419723 817454167 514642990 615419115 578382017 621763134 734981874 843070669 895903223 968816838 562780668 660328574 13173969 244250974 418124413 997144410 667468068 803528848 867396857 883035448 387378417 934956564 400205651 783860551 950236571 979657304 83790415 478065776 621762596 881795993 522436669 978495254 879642250 967533377 889456487 993460035 361161114 734879405 818553134 964132549 867260506 954470519 741377967 776523950 301935843 373432790 406592380 609205019 74356713 247601746 517325582 933357729 955909160 998624542 665840717 951375353 676840084 852686947 131701200 171575268 751192227 940567382 668238773 851879567 110036137 517755061 695715326 853866761 931480227 944586746 992321800 998284963 969750437 986333702 617582583 624015217 992078610 996931034 286696084 573484686 607539637 832273352 673258066 908768368 991805541 993582157 134738875 586110241 106701042 448979936 448918160 625202088 877283357 923949947 203170293 994870708 6244360 913891178 215743933 643687531 756188583 778004119 653399650 982983050 420102298 776492466 679989814 941108625 473744977 538872064 919475612 944924064 826344360 865609107 557467228 660250797 652195632 675840685 635943670 819689240 472126248 829357788 422284571 527652545 694645562 854594222 919047228 970688657 536054862 992556014 447256321 689592319 849495043 894498983 113709027 894233216 897239624 944053822 322051704 983999393 995913825 998564010 725876560 847503428 693026388 944112125 852513119 894582949 131229900 355817753 596558025 867452942 211838203 891130458 153351641 610290129 57308583 319397328 270739853 469976540 469071870 632230621 499704368 916487867 100974210 346906789 71469811 312584247 84015590 220021770 52423870 247018434 397350715 888842519 82924336 186598136 654381564 692544318 135962367 617740571 71373571 583845102 54603679 487200486 497559822 932358383 76941815 475185757 52508090 343090714 896201342 996813832 668551071 951548683 465496547 897055030 879557599 930376927 449742659 535075559 88315207 818790944 598171935 997869466 359990068 558236719 822026143 853408301 104753118 349876717 477298587 815770976 237737314 332700645 582704858 865803590 750652654 977876629 508022625 950026783 71336046 956983770 266941033 505025444 918104493 971482846 771248115 858434992 942363439 952517879 913308734 950219615 540856073 675172017 918955362 987214541 310078797 873995996 545077248 582949044 401924969 428659136 698018620 770784031 943576925 973205543 253160880 426362377 320408577 673619093 401370388 736246934 495669145 628606251 335159862 704637773 316508630 749525072 69091283 748102663 377349000 418587140 582872582 910009524 876984200 948261903 698098396 957630723 533122544 573549074 440567653 862599469 967598821 999058649 138215945 893754242 684706293 693414026 113691926 792655845 819121028 901213836 880520786 919181480 511032099 576081086 204514929 595092396 421587774 959180378 50574561 642808954 295861386 516572333 306748995 892686744 631103328 645323059 695166424 833460468 496807658 635725273 126365100 785013981 985990850 992291114 543202187 959140814 948843640 962364239 479309998 848727567 40036770 628363791 451264269 844558697 577595082 892030822 783721951 813670048 520555465 620111338 87936046 464833062 140990394 792136398 865964310 967558374 817533118 997912202 682744552 791769679 779862546 988888804 13286955 98300063 554414350 846333763 926201524 992531426 38183253 850664852 43060231 111867382 314804959 533427688 91078195 591874094 823390065 884074854 543378746 882943761 862695598 925027125 378497275 545845313 780914897 835790579 986392107 991706149 742029030 820737854 311968554 894972013 10795012 152961598 47920699 492589869 520592644 926845343 44216311 205974856 469703722 702424021 651359035 683100778 591708680 658151281 73857079 357205457 995335666 996078984 790599603 830593986 141895472 209393794 330538741 976792973 205449501 848064144 282536252 466639773 30926489 195700605 818742715 952920676 784892617 846091784 277076834 751060124 266360301 504809620 92694117 643467405 679583341 950755745 486376791 966378809 999013335 999266937 850219469 919532044 677628849 966916652 702372601 720542922 549390673 894778128 984725781 992837462 46622814 476234622 432850200 617293511 473291921 791180493 977375248 985632146 138790964 415628055 888790887 941897067 286843977 841068659 570631892 802681938 36735213 806851468 768374545 987196836 704891905 971698231 255710433 969433030 962271397 970410026 844765837 882872120 188517844 388860744 886972001 958820187 636866956 874429477 122732197 874497174 570056088 841435905 445325002 554546041 642454768 661981379 178177601 214118191 977744735 989450339 395794893 572885625 554380521 603831502 691042727 938350685 733354702 956549716 828850966 930203111 500039695 753535201 27380358 131203947 266520568 905870500 243832015 780061705 451175921 847257932 47791325 213666417 945861951 978606349 649159505 836470440 905605538 987869528 225392991 691756403 554406919 899811184 930857352 996256642 388434448 534838911 626931329 873589146 90871081 130952284 135908642 242791491 181600866 415794662 464258596 799711066 564993062 682581634 617700762 938506369 171198529 912655207 756215924 781460104 69723126 136024917 517143204 661410504 908375383 988910102 845045554 848120863 487902215 854555063 269420667 405633294 120522411 472868037 127059504 591958884 600073513 941158810 454634627 893433575 105606067 470935920 254015380 798758402 973200298 981488039 909694851 925392285 303686712 366624658 391404578 935877764 408213651 705965861 171951736 209686092 123766962 704131162 307084033 693778514 460848232 889398123 111849488 250686295 44537809 421218252 783908399 876655518 178232459 596379099 254557967 623068828 159973172 813577200 243145967 625963258 832588005 898893437 161842996 793237995 251238194 841834314 225397946 864758767 768531722 903262420 499297853 562311721 579800459 593742200 54399540 980742495 535460922 603998974 120905839 817742832 798951757 876333696 782886380 896285271 75143765 605138299 583532782 655141628 601411286 974277349 978124906 981160247 628760766 695849227 708784069 758167801 977782213 990853183 515605529 728219117 480677365 869830340 154766634 739546499 990851377 998709609 611249505 774050131 78141461 696220557 733276390 919096943 304156747 929891916 216597547 482878433 419384547 825769050 488663718 634335274 446573616 721820526 59674346 476261176 725226739 751536641 728426930 982334647 187890345 725434180 464869741 582528929 297620069 368416177 603535151 850467058 332823424 737574386 228427612 312067658 517522808 561493125 513377504 922599021 750622286 862460436 35332386 687912166 363078014 627873016 984560738 994243950 417863796 815539812 777090486 994581923 780221378 976604088 609091210 778541603 265789953 496992682 558757116 986837874 703570192 758902224 248277057 670621076 793218566 933074217 700132111 806298818 349277135 517200146 803432218 908962025 879939476 939625590 140583086 915479142 646262677 950776472 182286240 704179712 362966840 969976998 778534984 935447076 577973921 662259832 319605679 887951501 354724377 426060205 896537484 903383908 937091128 980146759 320989568 554175050 547943794 794237550 106567333 812507484 818822417 829393004 514898738 719547928 202784849 615289571 941271226 956194017 563130528 931630591 622225587 867848010 775700971 826868506 232563504 591830386 571116961 803847864 516361293 631265431 644875504 887792072 318120500 557064547 231902260 368181746 172594122 406954302 32661426 247534253 153793185 630881544 629016274 950977249 233862468 910674740 6960271 788191358 284977773 939087277 103225650 468765583 258305811 976112697 437447267 915757392 300644825 646669083 533862593 660103253 140116564 778680191 471604967 819771828 908540167 975568275 165477251 898109880 726319 232903486 29689722 416989802 124773486 447806361 176921507 434861683 222463383 235306791 518745574 547632343 278062988 375085919 481195542 899845054 303879247 497684601 495098978 951228141 82911552 347153776 1162114 269567126 100499472 213540669 374805634 710053872 945527482 976281382 562124494 693199781 233327949 696487035 547350453 671451082 718145022 815583140 515959659 713499273 537071203 986723230 365255114 830731801 969668730 972334766 847732350 876767085 26730158 183459188 510513460 909467761 811242785 933516762 892428881 895375998 790364750 865820923 925879139 977664194 705683222 866644038 774755164 837494762 128063241 766825056 386901914 499833425 986377632 996598810 563291460 821541069 799431722 805721457 257051939 692936046 970975927 981537277 765143617 801912137 74740346 122782623 568647777 757320189 674464880 993676159 873795499 997431556 629285000 707930826 105649586 675684422 393462337 763912012 527000389 619913556 52441001 973703739 712878877 799416190 738912109 812349530 377772767 565607368 839363560 894111951 79979785 547335861 581561538 688438205 709174735 728441736 579773646 720180672 420001153 584651424 670486675 884158517 479040766 881089707 315847778 329892244 704643333 754945649 517321752 575380513 126048818 603431906 7077145 571249082 541906766 790648154 105187494 313830876 403231485 568802759 264837528 789202274 409485523 565976176 838400446 958862203 733239232 818831217 507732098 804587251 86655233 762468420 313238833 526247572 61616372 464030343 933328322 956624640 775095480 788414880 292331830 551444711 710671696 968293547 682210462 918728187 911273650 997801345 796674016 974206233 204661212 895540697 899706423 997009835 354857973 464944268 921330908 922405611 997510146 999236140 727371708 919075499 30369548 861040526 557762553 579241328 897187705 998612930 160985186 540151484 164257841 768605797 855194777 972610199 109850845 444972679 927179558 976711770 389823596 847219653 116469529 870183206 858611494 871098439 135764162 660393196 42566045 156282782 631833098 960344927 330000587 425495307 739654873 962165407 957079395 994600376 701828603 746960584 728513566 944389374 980181287 986711450 438407813 591243341 442217139 819121876 604617429 997694289 334297740 425679991 379594151 629653428 980270083 983899306 864202983 936425106 419858105 885100864 233399737 942097412 505310748 886230722 676802077 816222632 822890252 913913057 600968472 755477444 201582618 868044206 836133961 998848107 393186312 925441242 515966138 830412057 556664675 836230202 945848863 986462861 108124583 397912738 951667220 954183293 644673845 870948997 274110224 893827341 132778471 867682902 247361531 265285883 914055438 940984178 254082645 469971386 729365705 736676620 289017783 331543060 234148961 888292187 163717400 436810707 568426045 913948680 132371870 301445960 245235102 470164597 791668173 859353573 18356147 977242813 386297179 824494009 717939308 859626937 220717002 495386544 378416230 525026283 903150696 988075430 7432320 785729197 82665841 181758032 561624843 714496711 587776099 625599109 652763532 662230238 904394220 911625500 806216804 863535004 805635192 817090949 487897980 532780349 163869960 617381653 246953739 624220212 395819476 775193071 722253136 754091609 890696615 965434867 356136015 554220809 810412138 895379848 683018193 741010861 408323584 815091265 262141062 287224055 703623959 723997816 549750330 944105507 825910210 913993287 648903588 923312482 169486942 589629427 157960401 906558192 956044938 967867907 10071111 102161316 73410264 853694606 310709501 321505091 695392332 710304774 227370576 601948069 331547459 544298040 459351421 813343399 947163981 982907674 377499996 989728034 122907229 706243901 881448721 935760984 805178386 981798272 153701809 608129606 662327918 694565713 309875350 892720535 285127126 926874189 141000790 723611857 784823841 927445146 330877788 682198086 419913004 579818207 950923525 965409823 363000750 609971449 499197102 786690276 994771549 997390067 220777234 400453949 304070984 879281196 269572499 384902707 488929847 614446650 760035947 970660759 422810370 764848044 152337345 514071500 919645549 926330757 553768995 905860302 434065684 486825968 790535976 854710718 187878488 935530762 456880395 692612931 893505882 901133732 648698870 837632097 967918570 977544438 668817293 993788376 473010952 895706402 338319655 524186413 430013366 475236010 789409139 894472660 852044792 907758699 675161497 998898049 330776920 965133636 757338791 980193830 696641041 948280989 833883575 975432057 38040174 941954797 109500025 655590808 572110235 784836760 915058285 930863809 810882696 958055114 698419831 731001290 608599778 960057355 32638652 164657971 588851234 939240408 348125587 468343747 554467526 904661545 468976477 491800293 915979014 993611780 89569440 638477810 819703979 998349189 524096043 694332334 188591990 611721361 836896903 969115286 364677672 502107078 489639223 986222542 518234027 775269044 74597479 566082802 80694509 126200177 697457437 784257655 854742649 952909967 539691278 697057485 784210115 843609545 668543220 841866278 206007044 702359655 790126322 976928058 942268695 957628503 509524822 843150320 548136048 947180457 336358612 425509441 952802918 965623797 948480541 996751155 378009684 614228723 110258030 404303543 707850988 816602354 67882211 782256998 59620248 170867287 765197533 797256047 138183953 858131369 955352818 978738144 583790969 977533370 902064854 974209316 915601534 964873277 312588047 718532954 69513906 828906856 206265511 232133648 19717174 136642263 42070837 417419191 727642694 964069388 75831396 185593482 735036982 766136034 923801119 929762811 957815841 998597430 249109537 789349270 81704200 517986381 618140319 735447377 581167037 724819864 511140951 592669607 793198161 834585108 300556342 833187925 610622970 631831778 263608732 787371151 743552692 983334527 239254549 268380633 688869554 813897796 111013338 929857509 202912205 679076027 522996114 758498403 407221048 958208577 569556789 818177986 444330065 745189327 829290448 960256093 701604972 776930613 431783138 518688771 712746375 935133780 291095838 775734767 622159526 985152997 44915851 50937413 480767443 567701760 283807745 649441978 852929692 970857403 132986941 133265974 225886362 245437305 387053087 527761810 944219005 971744981 383467838 499742871 141550484 227571421 391202458 598791020 749418641 902552633 707639278 928525934 155661187 722457126 432234309 536452113 411324611 864575009 194460404 903472381 787395590 896134277 308384660 445429635 101851916 136047412 874149847 893005236 447442727 531772781 638212217 768767106 548906715 677395042 575570998 687081792 335764789 578599252 3303840 706285734 652315925 662701963 491767913 657148646 110465330 895245643 33845821 129651327 626099573 738199406 279257216 903209300 285976433 398633581 517197009 947287565 555967052 883736091 393525085 969811174 180218805 386519636 448850198 988638814 138885739 661840062 793592840 983670403 828769344 830641835 593284983 697968055 795971661 893751117 485988257 824257531 273432853 752920214 589806483 892030784 845087301 960012669 592561271 977539956 378567324 801074717 344542109 949431863 902039221 932264135 357941440 397523429 61856132 76330767 171773730 979961832 580255417 841411885 820074071 854325779 685015727 739535178 22063725 581512680 119757917 923752180 492983267 504169157 561806731 808695022 357332825 847425012 232225370 700942386 147795014 360823510 713578375 858864492 375256519 661973612 899122763 939458929 849672195 904331093 128883036 309526942 696231788 966845364 71684017 810113450 903239859 986343877 533872449 930141643 862875752 983258089 467400438 854737403 174354737 871297674 110705298 591626970 399694114 952573488 653895262 656902387 7384446 504949839 900084976 916056224 880479645 899289322 68966085 837362281 7425457 524093884 679523791 950919614 905096057 952012593 781784032 935631018 992851212 998359533 41273729 668440633 910908976 918122874 387438503 872809735 156829737 862872957 830642670 933430335 252226326 957775294 340959421 544198122 895748542 974077289 940218037 986608676 680913327 784916142 6869211 161118063 40399700 177538444 343863326 611942073 701614242 993344489 9531928 475285789 287480512 947183767 284299074 738883971 672180573 999767062 99698412 693078689 460384502 823519448 591998385 785497754 772473533 993128033 373606876 933405215 167265249 804561595 395679574 440248535 962520228 973114771 637829475 839198046 988113530 992339879 920013890 968282852 631465225 947909554 582426766 776611118 487458168 590313566 521087902 651458079 962307610 969323555 186554011 702690344 890845628 985613290 33292775 133959339 140391434 425839965 87268430 246667334 635521331 976166567 160057709 428711459 46317406 719972666 511191898 833261942 174106672 796546174 444342209 600334311 822382313 851596319 474641733 951913462 592037451 895076137 562347180 857189357 328441170 460727138 17373270 322395640 99662642 698319222 526327255 658707207 942536909 949317238 813653521 920231700 430740666 574934555 585234969 659533901 356188282 770451084 627214411 630672244 352849427 507555839 519442469 637657987 706999081 983414511 148731117 533263817 414321417 839920987 204197808 465507700 443199961 796222640 190801956 992682592 3712862 871077544 934000637 983937649 793590866 893375655 797457504 863726676 177435636 829030643 79084785 897198423 689858732 793381730 861538806 914338464 326333625 968157428 136250610 141080339 661926621 955686202 777094631 964785851 623244449 676418492 613124720 984039113 355564877 505451808 403016160 721504751 10829049 682737480 916887778 996337750 162697794 866776849 3126951 525425058 995100294 999058947 499990833 878964095 564993410 830795833 623882451 834502728 993742140 996431847 938326678 965727100 118544196 531106731 805969165 809460030 220514472 310636523 843994045 997583331 281387990 630654981 813200729 867047411 377224045 714919344 776364563 904750834 138355948 829199620 333063026 666039135 430663978 512458192 871214752 912294311 862083794 959885770 900179943 994400325 92356244 704231950 307722121 318115890 305634559 836245214 223640331 866267692 895987290 940138200 591736050 999254060 604483463 872063145 944544297 993440276 258506756 262167689 390337483 586497204 241886160 698302550 167153208 686631458 708484127 725782839 960030096 978242548 29075400 232147945 23831583 157449998 391578925 733813458 486550764 900502223 190892738 191225961 461940666 524063620 310732948 744497861 501257574 567953037 696888572 999100419 184190300 751073665 474276244 559121679 850526397 927219170 945263595 949418596 627784989 942564261 800438302 814763071 926814692 979642622 930687693 961137043 98517874 415242399 684064809 910978519 129894455 930614788 236438241 737857290 628707647 796307574 129854066 284158807 107162599 861186423 618108419 837004750 800817964 802239208 140679754 170253474 722122933 797694533 639819037 757290329 680285142 717012148 630247633 632033149 648484960 995108852 467350132 942894427 723283691 783979949 428734508 993926615 751150073 998143048 558725134 720910612 398188599 624778154 976119215 982475987 201168352 692464943 164592580 967342421 114937296 175624224 786779795 845945366 161041048 743617427 567347766 827160781 781976937 856224369 386210141 583207387 565731598 707394436 753583619 884696665 383908286 957324992 535668157 808472982 980820274 993549835 271555248 379302907 835903594 852113045 604643121 674908945 223050253 649955948 957779240 972283949 315663653 582939272 994524027 997249907 13669760 824334735 838700285 990558934 212697902 617671087 225381666 560529927 128586542 753998134 823974159 877035220 949412176 954880237 684994214 950924650 801669061 999117304 962466505 964450126 85925796 561966685 759987895 804435452 323664776 441663408 653607996 914452306 525374504 847128703 939038165 954775481 286130383 289256226 572742512 945729449 155836697 238352034 65222169 811628862 323648494 827431128 897034661 999214451 540708945 793743405 485111933 508909555 648984815 930725179 939158197 965300350 409352526 867210453 35941501 326262056 159244481 759133834 376521411 546139815 183857844 766035753 338745992 392159108 765288190 975696916 83823516 584070739 455122726 649658607 878514421 894855176 159877005 859722084 784059898 895418484 933893451 992456980 797896205 870642939 969580153 971168343 128165830 830983423 163601504 726417440 48508163 112640316 802587806 813461822 650931458 726977179 50517467 999358790 492086679 542143910 2078500 80369230 873185732 902574575 83080615 451480748 46285599 721844874 928915210 965000520 265445359 634951183 909572772 916042307 918295887 925956285 789525649 886525172 758872034 818896146 341431828 902804875 217572256 956221133 16790055 49444511 446200587 909912123 529062706 948630059 962872334 991398713 200178943 942573029 92643996 142027238 46564057 916502928 996336030 997257263 859894185 887244538 716079341 871798243 929576933 958613536 796142443 925058985 306619684 332062240 246208494 634248365 775927268 918038152 954591718 969374371 927745076 986160518 595787878 643663629 981414790 993750165 738819387 741540659 805070717 999086638 901818128 981058454 288846163 610707034 768370644 856888447 270998995 476321272 184626985 207689051 997615065 998302722 108334531 689044963 110038493 554426610 156450552 428775673 807210429 959361946 803679156 913805756 479051063 790826001 23384623 216797666 439126421 600044284 261965173 453717241 291840881 753918841 247983924 539975859 831910701 970952558 996678914 996804987 763391544 928293094 111008533 843375186 593022853 622944761 309869563 824021673 989216971 995731293 486145220 679026164 332761235 377185908 158008211 923260076 432626276 649306917 139780475 840116798 717894139 936184090 929047793 941033602 27726954 366328866 197846983 914927804 420466376 472216336 333383628 358263013 472813064 711987605 467451728 526734746 249264152 613405118 548049338 727003808 660339601 912286346 176296202 369184630 533425985 850695412 56067387 328808941 123826262 877103106 217658283 920814431 833108598 928924713 73658672 601134574 201009958 339957672 459875514 861726106 363331975 997376096 851056513 926266242 855288441 880017117 398820897 421491939 683825362 814600035 367609723 842874026 219715152 649218773 219731327 578834854 908125615 911554006 262320183 287531417 287358553 710366526 259930613 691537391 312220796 620481129 589713125 859119840 12029820 808491486 396009925 973934315 399092679 551736188 376943391 685838886 959409442 975133770 174645436 865557887 920699814 928436362 133855399 801311355 974283989 982818654 789341653 789461558 154183953 365659283 704201071 763384247 5851467 455243900 623204979 846849314 634266475 733919890 443042952 689524053 671557700 991556050 910472429 921966615 553401498 851214100 542007074 542278927 667110826 935234054 569920075 665426856 243832788 246138735 42889625 340210734 18098321 441914438 95436917 841345775 293336263 308016294 581366590 935974963 889553136 964326598 107005744 119433921 426021035 740804524 427139472 648102865 169926721 924681415 871171491 983383176 696863018 735247847 241761380 911388746 538858508 870900176 889093989 899120273 647021424 946873119 387512164 685804339 749925231 990915771 620715835 944424237 981404293 990778794 889618595 967159535 508331088 632563407 393992770 860669947 711292208 726209881 498316661 687802964 14431960 615712939 52727977 480842229 656858644 867947523 75676988 348509227 228823129 884421916 881606505 955876439 879375698 925606001 10895776 538667697 16414276 809268063 498400601 530129179 348336809 898292516 145117257 245132850 527972810 577704823 887149911 945957129 88056172 111303975 828150287 873354888 29882773 107834660 545371365 918907815 545098644 677443228 118649973 541717880 723547173 937619788 942577047 998568512 955480179 985599979 808489300 874941584 905478935 958608294 947500361 999290382 309548731 454597548 952476153 952861464 657870925 803294436 973427544 993010173 648910026 723025311 939541039 978079706 848840509 945206017 568132837 686187128 897768084 964327282 27215328 563456827 808575426 935069645 2011478 857414485 752300673 788154143 877954985 931158084 974075944 995899122 311419507 428740135 503742777 542069546 831410756 882840980 722988700 806472307 178355758 279692342 766015862 893610445 537706334 545454070 275718364 789704011 597032163 836783044 184681663 274749825 975509045 983462934 705574249 736165629 426471250 547691451 7920007 425773393 635112686 672955553 994070884 994574510 851906676 894261888 628994910 945354588 472246371 915795145 6804301 706324960 944822075 988876061 9277853 690322915 913352884 959881866 656576747 943361340 765046569 779002879 677023374 908312816 528573164 920996600 468388049 843118921 963136511 998423552 288135108 516816486 6843321 507454797 604869088 895367555 515899133 820625739 113885186 976992350 617939689 629458054 164209165 868129357 714125365 722133258 426391813 607813523 110358332 484779396 627487341 800653996 28231346 740037575 451678529 508042180 866610668 974838860 653837579 744355401 703214069 860934172 352229702 381725855 257718898 323383158 924350809 946782069 422221604 797392361 534437616 591638816 896510232 990141419 936104345 987080863 332854982 531340891 768509607 876955692 850531924 916965760 913089031 923756940 149158652 988529694 426854287 890894843 510071951 528812861 47620333 642821394 880201962 964159691 1961813 245446832 479613815 829554098 738630897 805980915 728472984 730499358 569446660 751840642 479409908 564336145 384839412 730538623 404643339 913828914 49305464 378787214 634921329 766648517 839752801 873834855 819501700 995981647 102751073 133947567 230216101 761659023 270522446 543833214 654054802 908936903 76577633 589846276 987471996 992801998 926793543 961680536 153771397 828270931 306556120 362152807 926029902 965705892 157687243 271223814 531401048 661640886 805325190 854176824 120916744 538845184 283345938 508290883 750144906 983010808 891258904 940383844 378999767 655947844 431122537 758220514 118962135 297943451 178261893 575721425 98255773 485558507 562660256 842195158 484147024 516464316 328868090 585965375 595017788 614669568 291891104 908405004 35097579 36643726 465991464 539013794 20769621 332026659 366548681 931046063 601373544 719778676 876964345 973293200 413911438 684086540 798831348 911706039 358652200 892381069 523742834 689963453 92386318 226289683 20238010 565768779 962087565 966886486 454489471 478839397 77200396 951115100 132757216 287299869 993921172 994847607 36364197 257108651 327458294 640741504 403647594 901369586 331641678 996577624 589243373 702775815 950202858 976537305 250902056 388320524 48398222 140386985 15104424 669073764 163241866 166212699 673145276 830312211 994507027 995330381 815727036 943396087 379648785 515462376 108278243 640124079 516371533 653824616 535735211 823853837 764047098 962256788 486026439 919347119 482727883 717035295 586452398 716472065 964328593 994686588 273096975 584956471 581575938 946783075 569281807 899079126 867518845 963349644 491726046 628042803 719680484 751515117 608692476 750651245 775706102 776472143 58909331 841348464 582750904 610094668 784188775 965519487 201131772 523056540 854705408 913412527 684334570 831294483 718361744 943053716 208363334 971849409 780495399 890608567 36138167 621241615 270211623 934800948 458123120 808533133 705344298 939864371 37047934 142833595 469707803 899238906 33680689 891622851 420014101 465837019 323834135 485154418 700874553 797368645 155554746 447144283 166731925 309012705 95731998 260864138 18136091 118161261 35487446 232848884 698013588 843148590 499551058 871946478 621305613 886601388 913911658 933026712 657989083 682533076 96530955 538411784 753874212 965825831 212248982 274608255 620632145 822305288 976975810 979308331 844970795 985074534 532708299 692289494 292491351 655299379 517194424 731594163 988511636 993078305 416377491 670643049 431222565 733648384 234712213 752027151 656884773 831694166 607491353 608656907 988551663 992296883 287145270 439596023 759675486 943326034 945564047 989196638 871865598 975755857 740153940 876334844 787742011 986179958 34598531 467957498 882411603 956302950 577447920 867736383 58018129 522215871 65890271 955948694 701571607 929821862 94324680 852824900 890687195 977813973 923577967 982266510 2264808 395453417 587706088 642987065 808594591 821245349 638842840 906979412 262653345 811511409 420599015 562209600 48103755 83146002 264978847 551174640 926635717 971393839 832339183 956410851 297536933 549461486 290784420 476970846 787863913 924472714 560664201 646843575 397813470 672081179 251599844 966416168 145893445 778865689 567370963 916803712 801092580 910079562 460536524 617533298 33853198 903088587 947736341 969127113 798682731 893963560 947917723 958829161 548499764 877889171 832836689 987185568 822275999 886042039 244389655 516304144 637637220 721384921 246400138 355203324 274380216 805332739 224647163 816870427 242070533 399961934 960651678 988346506 819885032 918431102 74903170 469201365 11715922 406894772 499746987 679667527 305027501 449412041 604523642 857683371 832375139 916577348 937617121 952738630 680715354 714456137 684700030 775060433 555797135 632883145 36579349 191596721 769751889 944782609 650711776 706515651 696214008 708333955 551587971 644013090 964569509 977239137 25450082 499955100 251895346 618396599 678225961 967387208 406549199 793769375 28574632 423833123 148439508 191481939 978177475 981854039 14308020 650801582 540832652 904763634 771764975 964517414 502381568 576841025 143307766 264016274 916319071 985221834 192818523 210587807 927509230 933812021 643656179 775624084 403808163 547327248 44046382 947818930 997209883 998392492 275599746 838533185 552584902 892827739 776827641 839084775 824558436 840674371 424991748 542072367 761167842 870126214 166120042 903081017 99811917 268567823 723841677 999673120 841148351 893980676 451260615 720990539 117926816 148790628 298392822 303542415 993113427 995382995 657182728 980908103 408233320 750688788 98038623 110979131 393330633 868802855 523933176 643960092 242063186 476609067 214796845 976892837 621550159 694298030 191464314 943237343 979197097 983931249 669412726 786421860 512596462 631044464 349174032 975690868 290741094 640240103 235208605 381696570 766009401 803234120 774212437 892079527 95555230 517072061 175478517 410163514 843444650 911218480 914944528 935333949 99355761 705144206 612792119 729707116 685122613 908902884 868147379 946652755 91110855 553794978 643559492 729015531 915382382 973801773 298804378 361151613 967904802 976071952 984834415 993156444 568386906 928325922 349448291 735329074 284064026 512795345 458043559 476896504 530050981 583328024 406351070 707332480 305750199 327987577 629976686 984912023 238983603 287151947 337558254 506129840 989999502 993363571 965583285 987851852 545348758 925622529 365938277 368174360 105762654 850877493 738137663 874921272 839842285 925228233 307298854 995389193 167831071 370571980 523738134 657568808 212236345 397186237 12163730 907046185 854346394 886291910 218242843 958188864 794703243 822530317 133104959 798314015 843747754 935691637 714599671 898621148 8382318 814401700 458511195 685414517 390626428 701767158 949844884 970345364 305481807 663672749 547188280 800532637 319608480 732242095 880942374 894487980 615271368 971670859 848469967 880198611 674566681 884491712 8990500 26104223 244025868 656267956 80325320 549621128 926485414 934940962 748530452 818915195 30980292 171833670 780314910 995044260 188503411 451191846 625875161 951235832 99452525 492963406 915155939 948239879 918828665 957664262 367855442 831216594 35400166 531972649 391270149 442519952 304264353 417144774 630036750 658761122 640131852 709124647 407999589 412449089 906179988 983542727 345910796 744020297 358901622 808948219 464239014 630769186 159131228 206843261 885419268 906293891 368986975 417946628 70173739 140614435 599014232 655748444 398890354 414064653 162774369 229400304 645207853 859215413 381138338 892883133 466025029 910613293 183519040 695635726 161283825 825470093 640994101 763886567 746133049 859439670 818352606 823266235 299237420 354435804 933207084 950153277 548249333 735613203 484344718 911171844 111867883 119329023 750273394 776662534 708026319 924121900 829023984 902621117 928677546 994135398 961294000 982845813 130497952 954208679 294560440 710188874 953380183 978282237 329850306 486870879 835887712 912932155 452345280 772752484 81901474 655812298 362651753 952318271 751922995 760360182 533757370 669470172 163552642 675869519 510900993 627212809 181762360 238142104 378011749 522050270 495894971 564572005 92786250 935630285 591255748 904509678 238368049 267778617 424344628 748533155 603682836 819392284 524870485 549896169 262707167 845459854 961471838 976808995 59288919 497498812 646933449 728324511 873126360 896585788 760402642 890357970 102606261 831980652 150227982 547078907 708271717 805361487 8074332 596874920 767813199 857856590 173487705 288315040 518946739 895846722 864800674 915657493 620441287 800461644 75485198 649434861 592949386 662906727 527283102 877610444 160696271 855598650 268036779 494646924 679355289 805097174 793822228 895314432 133534434 187567605 63893114 232243350 547141029 617334331 192826442 411378676 324914832 815587184 603717792 843650663 598844969 887519784 717918741 998240811 778080005 839079982 599044 138475989 460371841 872983111 540281238 911352632 73567703 484576133 210560920 514851600 184295662 359351193 470559759 861298248 451144914 757838990 210319108 322194693 415080512 964907515 794202182 835605727 396684798 410222546 860038363 897741826 125412456 356427753 795968507 912609747 518601052 579201915 643867191 732795221 329993262 652538321 323597396 553913602 367029720 455362882 580936619 934964764 459201877 639064826 32175595 43431654 236974814 997490959 954793276 970173009 667050891 773881869 10456204 668751533 87916162 263086270 640831600 840604456 870360978 879214003 145366105 816520393 530867294 858205858 900003214 919191816 349959557 533050503 947348491 958621607 786601076 908467624 360508996 634437676 161021321 331018310 808118385 955990422 491276730 577019627 670951532 917951019 778075022 910225640 221948430 875158202 238867076 306464200 440059184 480067354 34018692 319942363 293254559 722066068 285932651 293572800 293184567 607558485 941987951 945489526 736678524 759815054 949634559 961176321 120755368 874067952 75266497 678654243 174401153 499960253 342682954 839295753 82623493 547154808 564449294 892837987 444017704 546146499 205780685 281063383 106958244 863522505 814576444 980053104 73604281 317157255 768118765 890371030 279361621 859380468 444206264 792651207 526956698 621921981 23394547 798737179 206927772 255694942 689892334 852938956 104242704 709772385 692024631 984148080 936034064 965848974 808693657 964246810 321176466 577690692 659125466 737810772 114430786 721997138 994276090 999403200 236782448 290192630 285401716 589362591 905977101 947418807 766521795 952487490 798965150 873764105 959385927 966630885 219747303 987798910 126197990 933907709 411125821 440982589 593878656 716036665 729152211 965459790 778268103 829215655 848819303 855346266 965827512 981531558 944683875 952881783 381488609 760422198 927454463 984737895 372588654 557022086 582808581 631563124 33047393 674895112 422817505 683910766 438918504 950098031 253106128 995332224 512837299 859396620 839888580 930061044 807636569 835244433 360578828 647469051 831698390 979962748 817955808 932037456 130501649 535753404 58894630 436982642 337315038 728482689 431371780 804582244 370017378 916512646 283867855 579246497 784029972 852999014 105176899 370724423 117620852 404427307 191315345 995131189 934005666 988448722 118705708 260442040 33802986 964516756 560285762 740237061 292340439 709479214 893895015 989021706 581872637 823944543 981032619 993963576 791242305 927097588 594386070 903097751 150288688 538554916 641712315 811707836 769966898 900155706 261350410 685515070 550167331 996885713 651761552 806957485 789435894 984553551 537309645 739576245 262175604 650115857 979438096 985997250 718657167 987313710 494087337 858630222 205493012 308146017 995719927 996607319 493784208 991334074 305971465 655761864 862513466 892374290 103705856 844120836 868265961 961093625 224014797 690754530 542562139 747567396 476526254 888884497 379904097 690808503 696745389 797586523 804784832 876556326 376870936 645473022 382727595 585796333 219173079 668939807 890639323 900043291 836373860 937146331 154460382 475768286 416670233 691898714 438054463 846475203 113893055 342121424 532217324 663132729 631322749 933312596 221775714 464949904 998094593 999300531 81372672 203150996 479976743 599077386 839413833 869650679 401370255 690944785 544153296 684607956 702021653 812074558 112028614 173605162 815488331 920990751 897925375 969844938 97425220 767590671 964057989 986400840 201720615 388228789 569563428 662415220 388071982 821992288 622854244 873313511 946749014 968706934 706931473 860176135 708439889 725487891 585897174 777093063 603465594 636128387 265065331 913046632 501066513 835362778 768744296 784536567 617645809 911685034 127861719 524610898 431804486 516102810 447695883 744914718 632106422 859034774 274341816 421992933 538111289 639171084 922058424 989581857 242619283 287647155 904126156 956357901 219985749 448398867 256857797 771380040 262973517 326988853 844439587 981657114 285161635 906794778 272118410 443630191 496118974 526455630 840062922 922890126 189347162 379161158 993862233 994353343 143867834 717768778 542289530 806094920 585364904 950457202 727290710 892025652 754380890 938788032 709077873 823168083 650343744 996087271 266551756 481751107 73180737 616998379 973772221 994646006 655651193 885194381 800098961 886009029 793859043 995723411 978650409 981964079 638090505 720803268 275747508 827633908 974038144 992020692 978541666 999686187 882034405 909876951 227325642 737240183 394154836 471507279 512283106 518894943 732843526 806628166 757496267 827087627 97939433 632642658 750677853 923962600 553357276 790846519 579516860 813717351 208018937 604391761 289812963 799639797 583750740 914346274 556175038 681919234 75219829 559874741 797634396 803484370 366838682 428988739 23430429 487462105 622387531 646950295 791423698 922966490 888188393 895545134 949612980 976880900 981692641 990506475 37013592 441906436 659695186 965178583 648861228 890648504 302197122 568943587 169029096 826361254 512430442 780113634 255239037 655155536 603321274 608230260 79532842 259033915 665064767 906086413 352817927 569859086 882530431 901854811 873420870 982278601 343493140 815682074 906704840 974922122 307008224 552082430 732603070 984037029 946052831 998250102 640192683 677580152 817938627 884723780 13258608 269702127 666565262 979645152 90867642 427138389 791274415 803285703 173297960 460248544 111535125 352080893 727016104 887093209 642306586 922534225 578109010 624154345 466485244 930692662 420951941 600045726 597940949 746191649 330259825 342956276 90805809 788026484 258528519 413491816 627964825 878819810 96475704 135170235 270651096 940225172 912792854 930512268 907292867 962332835 785635645 895821401 350107837 515760671 515277507 757330686 86580597 448025114 97621947 776332654 167028902 843754840 884136839 886933067 39649677 609382165 395513740 850502398 766944663 789776112 923928582 925183194 121445278 731171985 104713687 983326872 400899514 551105887 140619214 442503675 104672064 467627511 383089193 733141514 184636964 327234639 258031660 790856769 195172845 523017038 737322505 884967626 19792632 201333705 778163703 965417998 208355708 955239347 105756537 981437479 425285278 671045182 11893257 743760703 670270553 713834828 231448350 424701571 122948646 854892569 390505699 714490396 566890357 588728834 969626515 984637234 839609328 880461020 618535289 654103141 634023050 894936037 8667985 63831184 566360288 950591710 576919312 866767555 946204267 956736042 846408090 979762563 209302948 848188489 824577097 883844469 678517378 894682697 478595223 902703152 951006086 988925179 869543246 907121992 962561769 982665311 661070172 938928141 191047753 473160116 459904614 912761794 558762171 745098998 662282271 823876776 722349401 936247013 854655461 879664543 948812414 951619494 523371730 936746481 348843899 430220442 412416639 779770517 122796165 283962412 853456995 892454137 993079078 998074213 696791453 699577674 149189671 926932553 750984481 863180586 749161438 973074798 36415376 137074281 451413500 855015600 632427183 907706354 953943229 998979229 291037040 790247432 494533149 923038750 746446725 884302262 340282618 947467115 595517006 744708424 133669235 545254387 668594206 846027369 184147455 659714632 974089843 991610191 539724 928180187 701398758 960410561 24248096 728322189 632296396 883673805 42731071 276138470 294257537 640320868 534936564 764681210 909552726 986539505 447017003 689288674 689677512 869446665 130808377 446619253 526232917 641392796 683772537 769742094 725481367 795870761 528964720 534614539 659132732 880220705 769550977 856975252 525098974 593507087 771654170 959179973 322576501 852397264 882702010 976628981 614299959 818715153 851863123 916949947 827953308 912911374 555628067 967114937 303969271 603622306 475019819 792531582 602950301 820640535 48095940 62919456 247884516 355990751 299749040 380126023 924289811 962984473 986215240 993442537 676787386 684286764 795009836 898112015 396548373 982980485 481287840 571382105 820155146 910326077 352550804 827860518 83892434 773074712 357576685 981427298 222696952 621225806 729792028 772252948 510738595 889324935 766705475 844844326 125569552 470994071 915502782 958660555 598035948 609739300 888325444 902207972 542383102 743627455 899403661 989557526 33465265 761494442 588149772 735931190 518470850 730131178 37552793 900426084 768530691 865876285 507092845 743720797 963333503 988632318 595762713 740244164 798894725 913588524 181679128 462004037 404067949 550996290 924136210 974851550 948316543 995627377 324675360 340150009 420217170 557429174 175773554 225824564 361219264 406203813 52393930 704684310 156070564 307761095 630109435 864793726 556832739 939043429 655017535 960620979 240354962 298849592 330466741 922322676 122491589 168986413 509555227 535838830 561029696 837385277 862659379 925967070 210273404 632677648 18532673 727447004 428671975 653363305 125380792 236296147 257450736 934134084 942556251 979465107 883609127 962594867 4655708 552317002 549273825 804162167 577532515 763985050 399505383 802425728 76086332 285828459 949113736 956444702 512232036 675083164 866525653 908554379 13214626 477270320 741330943 783149508 564693994 678829278 984514912 994588499 10173131 178630129 964624027 991981611 793316238 860687875 831429450 880755818 837233874 981742855 414073257 734103618 748306675 966886254 968969757 988851212 317738552 452083890 830104582 977612064 536642754 601160580 575485519 781711219 48829550 115425618 854132982 864418559 213095541 645241662 127080089 659607529 429179916 525863132 244758604 823384113 913735571 986877339 532906985 600226364 665847813 979708458 681828145 916074286 30858961 653919463 508550188 881620380 251194448 626792449 943151286 956882906 285127832 351694521 858994346 971090046 733131363 779644224 591786096 752077770 748789377 998727071 364750482 842328675 37548340 668860198 130713011 330534631 272635527 361053711 904701607 918087097 226601349 757773223 603470760 663293668 877157725 971505581 971089374 975121589 420456688 557691416 496641633 973944254 417892652 858475120 568970151 835445391 73835846 558698281 504796111 774464935 68571835 989865423 314775143 473293804 612767529 783318313 994904251 995031860 432915697 723297961 430670705 526789633 636745999 825521388 836894434 874308434 521143372 528583189 882187316 955377642 32691446 417428906 44565699 400227320 842711649 976742032 1256292 242905372 378006922 464448888 869211931 894386203 660878722 983408233 771235868 775349213 261257070 778114930 202380870 555800276 994713301 995197189 868939015 871186185 866341077 943703501 861426772 978025065 666062475 844168926 707263337 912800481 503289058 514876263 77689919 863469413 690308026 696217828 337332293 951036475 796947804 914647308 733369360 866759604 975202195 988553715 257106156 895081912 697383436 754928766 172208437 858233228 668228018 923481448 245217358 246211765 355368819 807704460 575480403 715606191 567446853 578320993 182954654 961904575 3439635 84145577 236582688 409691884 972542126 984444961 59499190 764928727 341995681 469188821 352166899 713571622 669653744 833237018 80937994 208484414 643047955 713006396 182540327 380648036 170523940 572360516 165336583 730670426 813258311 879782817 493155830 734053747 593895569 946674044 384865584 810783931 142133997 221985590 194684488 702430595 266439941 865555359 443553905 475780481 362676321 947428134 782792529 874954335 479201203 913332594 709666238 916343742 706783663 816534439 684093550 793827682 603886737 688331050 942132635 980006216 106322785 178188150 847844413 977853460 984878350 999547148 608710664 879200378 497588728 621592067 417820767 484194985 963363871 986405081 659453232 938652360 843467440 852724338 260160203 869955908 912214537 918523433 509891750 988231272 33145720 372518883 129717644 708564025 321454195 743738666 154759662 536230370 715155484 748587988 925382871 955155242 674896871 812387826 410019427 636554704 123807777 312254707 694772876 707155771 653057070 836077637 765964308 783261423 988286267 997607910 918005287 929717027 849369515 915853443 141634014 530218936 802931858 912523606 666478197 729919053 645354634 756314473 201311424 290864702 416459203 601679488 420505892 612536073 516493526 749071362 997196218 999787797 52923392 520823116 336076671 361424070 810861990 897925914 234113363 635694608 463483641 931767031 531582900 804945119 181216551 752535794 316146673 348665711 460586192 798107313 229685631 745784614 130590128 248724047 640810727 663709655 961768445 973345326 379319819 879381208 463533881 693451847 438808108 534902803 979787943 980261389 564866442 644074337 882532373 969291297 532593361 923090155 739879213 895041784 508623592 760093972 698739643 769801097 920782011 993338667 393676828 532213667 11300583 994614388 870818321 940396201 20374662 830767489 832403600 871590180 795659261 967272527 70062023 583568211 351340863 415443750 821663936 891099630 53179699 859607166 789185171 968178839 998495867 999227651 273844098 427699396 120885609 325582378 192813824 479969904 968583863 993870417 895209449 953583069 548869478 885574680 641448781 873737097 404014663 479072173 269885049 337535027 975525030 990810544 825943961 828627144 420499557 725561372 838573544 975672401 323573632 737708374 998658901 999690861 21933638 145261189 223099823 294127690 910340289 993884144 448631977 647225522 966731025 972310750 536027477 640864530 420931076 877060440 954827262 966468541 986652711 995799672 416336503 999777593 866084952 882500706 964825747 989270686 936992894 937636711 413140578 776068441 903190807 963238200 793922078 901215783 497763901 570147542 844256717 905662665 154928044 603957942 446178447 547511798 293395011 960124816 478097898 734786290 439727567 453002437 489685613 710248059 465148618 576568565 242988076 593826504 512006085 518931429 854510089 995457819 316694139 948629543 162553446 613207146 643292745 841521576 312517100 667984752 942069175 997744054 145733827 248669913 835675672 935744256 713808142 752125720 849709455 934091692 404962178 637585139 186060309 947242983 933813625 946424585 899679003 991797825 561140336 969089777 143226624 618832227 545482139 569925310 55596120 710681316 118026012 244057617 748667422 756749080 55534499 901140673 915274242 936371161 633642165 692058819 516136032 913023836 424062048 485276297 276086287 600892103 829685925 985716354 219983319 424365858 305339198 462022737 686501282 997327797 538309426 997989938 939686676 958459030 994717002 998360442 723307394 918753308 422371787 448237675 514877725 840008072 617814 681945223 530321794 680462157 912130603 979318660 903965918 945707736 186015902 820227112 874389181 974207588 324005458 427873915 231680912 472462087 392816769 906264735 724527447 942482266 819875333 907742937 705160976 918305071 309300903 426252898 838699715 915277576 420124676 979462476 470452257 822356735 604695314 718290260 462558830 962996495 689078053 778753499 28562430 173819513 302854041 995080578 639871242 984299605 434153068 819119965 502070971 959608011 855874983 981203674 194843896 630645677 53137814 875984365 646680740 656087054 987057206 994792711 524950904 673847043 323364332 382378676 898152475 965477882 412715365 904245887 288325931 811669267 536937783 783915175 755711493 791301463 368171260 847458859 851325737 860078052 501966931 989690011 871966628 952925751 955593024 991742654 944592478 972593319 282696448 688005465 572206993 992249936 143249020 160716146 261983954 701573423 16138140 631006035 47151213 338231402 776291912 952654908 557800883 657463508 325140218 330127525 722996718 916951672 407659935 556697727 604078908 658937852 114554236 878379693 415341888 970054761 266596112 590561238 472596561 475401761 495417103 531015967 940644530 992989354 5918922 731812996 160946067 436744558 519045979 654580428 216195008 891471811 749543459 847099002 514397568 581286557 552590256 668379564 714591318 799561715 771546563 995243424 155652245 258637316 236923198 570465692 888785287 927998794 872668339 990886472 85369106 965375582 250946390 856908043 292783225 550867898 257815260 830946769 650934162 706656987 63335540 481495393 860484464 926863463 221889953 768425967 407144847 607585190 934744547 942236419 23002190 894231833 322507169 800830402 717025246 836771376 152486659 487783625 356695415 691687565 342273425 533580201 145968320 597599651 29219260 218366031 147059239 886987995 261124670 447896428 356108354 626816549 267963663 859951372 714055689 799831283 703780562 742422463 918980958 922940993 979896263 983440333 839636255 958267116 696687360 842983161 991881571 994400578 510441471 576865782 369384549 733920965 468720379 545923228 78215086 745843661 537936424 748154777 250954024 415660246 578956238 674749846 830406639 904211069 695221287 880448679 27649918 915911871 525940408 706798441 227942211 678336197 603350367 944072918 155075148 569912634 81292483 632981022 222265211 487596533 804355080 804802783 73370672 995690706 426131998 644090825 257609416 855704443 118398409 811647213 346053052 846856846 548275811 839707387 264157748 327654878 626711502 728763605 70692477 291057299 19975495 955423593 362564304 427010575 705984002 920583614 336516738 510276828 714846453 921545327 274673964 971090400 169033955 313243979 604939992 897065826 895748220 983076211 962720552 986603331 380706831 397054814 366684237 842719386 71573213 254501186 562306669 593281759 723639065 734870654 638685520 700809902 674405974 862611319 844827728 862092128 892262510 978068733 856589434 958620621 391661869 837842308 203197704 241319302 808499785 826116526 804999225 815703308 383136815 896768530 967955534 980485299 799261502 998146142 350642522 663313462 631664999 701310644 379005724 764386365 152712984 824349824 964150468 998854204 335723391 525720023 212882629 623769915 299458253 362072859 825444503 947988351 874783599 998380670 476872441 650625876 790969950 867361362 401467295 757703745 22740063 915846819 412653085 903474754 647144616 744811641 133518206 885048695 332566845 895971484 553676845 788739776 728292079 926760902 703234944 993390269 246388915 557004728 708281926 946720317 776959819 875866009 616367098 755856658 49456142 530449620 680727780 981511382 748483460 820679078 944325135 959057670 608365542 900167207 941557406 973552743 875695974 876222154 273675918 312801446 432093829 813780889 312680209 984202500 601046557 877319958 984566622 997264418 927917130 963201981 491753790 985472248 740290683 758512547 917888234 976837974 21268575 293298030 288143406 574732708 149595849 427059935 163063899 921003471 982723005 989056089 664832665 708436439 690185199 792565400 284584609 515102877 867712976 960706588 278332166 616685308 343459315 510394719 771075804 864254907 525208495 832583955 409004097 935042004 59955128 201075766 897004228 933179759 645240943 837892155 118310205 236343921 984838290 985507620 438486483 999509746 96171297 302783845 488093362 542279092 638817873 942407549 822920144 834235293 607896599 874311355 731361662 983573923 18109089 564742348 897522334 925175422 869097495 945345981 580180093 696457673 553623168 804789491 937880684 999341539 62769898 571287054 288436326 876760718 434224290 528551021 221527821 768299918 848689377 880428475 373431513 415631693 241932099 685384002 257201381 404456276 17735594 957552875 75260485 903314359 738446940 848847571 251240227 636085858 469893375 886753455 898926468 986335523 718324348 917678128 566029022 772443259 925054734 946419883 335825413 861241174 590540064 856052394 298683481 621800703 186678599 208524414 357374466 521233376 176657156 812970020 164073428 568147531 359501083 700343185 798762958 893416051 66486450 174617253 709046084 711514470 201101451 955379726 148754460 495966009 941854951 989118445 347865789 708157832 17586256 504195552 147570339 352309288 21123566 509227650 133209836 256866437 308390352 949076827 534124414 739244716 322095022 979129865 854048657 973666394 548263943 549844176 863508684 912491844 917565474 958815314 147350684 588084442 394700987 585670484 372487119 918975594 483446481 568006498 969451866 970341166 19856858 416503511 397713791 777439027 562661964 689485543 15450388 876843190 467272769 751432180 391758297 865455663 867954695 941717720 634212603 825698430 620437801 878337517 272744027 640028908 477826620 934093960 957742839 973745379 32437872 278852710 140742459 612070009 173125796 784811407 995076985 998625578 815746474 855914613 423291417 982749292 429254053 688364135 210238131 922944605 756781899 837925507 282350541 489988385 31637427 70492398 269882711 350294592 494054289 861150470 761836140 896453722 755505373 950260271 772995909 892018991 94969311 590375579 713076310 824497816 608079062 936435837 491160597 526232215 267094096 444387571 229488561 748974384 157519354 194526467 313149973 918494382 697429563 848275279 632853803 860786636 237297415 785645670 312100840 413509874 215433467 677811111 519522091 892163935 9853969 13449197 309022734 859432944 699392900 805592226 934363273 954122322 179250164 448990993 659168783 961621693 786905442 928694988 649818108 802926666 534306912 736289743 452021538 809378068 407470400 603309332 258768820 540882075 521049396 783243644 486164520 822874653 612979766 886525083 665506030 921979086 714323080 873345007 395497785 716388500 579566699 714465921 239398352 703043570 941965215 943943386 322491860 718333624 922451747 925971756 656227787 855330620 120789599 761323545 101076790 772303140 29383165 282506739 583894620 606708121 201685840 324031416 516343936 945796491 586948118 732230046 908810723 951079012 344310418 661648293 583651568 805974951 595742925 778252795 295945353 804282078 344194226 498309463 836813408 853323195 452972003 474048550 832448034 957302404 770399485 918406182 148124935 210180350 800970728 809691264 946583437 987642991 377877941 405329406 161305702 905795808 784080696 945307062 505815614 989907366 404485296 627095911 150730699 302861545 151459621 397447526 945603417 962586007 88390986 277116005 431601013 887699366 794401754 812695973 101699556 464184114 192574882 484159590 321188522 914513011 121489823 129153733 754698302 977360013 950464300 981168936 339812193 857603512 791305300 903426982 177190215 732097124 510893941 814135472 611538956 895289484 230327557 946197497 744888376 865192075 246248545 920548572 688036835 889250572 637088945 931038143 603175337 735450570 327829124 444651332 926266318 949045406 189770677 587495279 99215912 851532172 424264696 556762676 756464665 895366759 383436980 700961183 347812703 462959738 98351129 103776627 936151640 986713398 702870408 975357457 145241313 205792897 583105961 597011721 492533622 865650054 409204101 862163576 536116324 852828026 513766025 651148838 477831923 536201511 963607286 965602816 386587983 981116120 33290358 719739064 462906350 671781977 871118915 952854705 11920755 932751216 639294616 724026395 524448675 906450183 690438899 941553063 442704012 567618123 95917025 851073152 512883887 775029008 154079108 744159289 995631911 997071048 143855633 792986170 374372290 815181079 974713992 990382798 317585264 502871633 520114522 621504211 491442767 864832494 400388014 475876247 431825449 435039339 858693818 874871417 720616406 808844434 776534353 960968765 143259705 409374556 895389814 996912635 374313927 848978663 59962734 526972411 842174145 958873520 667115745 752871144 808632217 825516472 892202897 928387633 523973405 601772835 820324398 866631775 68064523 451315508 58182059 269883500 403889247 706924759 311640730 892156238 281294616 367402002 757844149 845345295 169864599 182434623 786012922 957725970 813296946 879349086 857328584 903583007 287803218 670752138 472946449 495504044 60484903 121720521 635161326 790565351 189835681 861468018 167681208 215430222 449589985 590916632 11698736 784247628 582740341 900051316 78765139 842051300 963057892 971593858 899714220 968614585 432728473 791260456 307815205 338129387 663372641 882428944 344452860 787655282 16083860 970482907 80053224 511439474 706289594 918111442 836639545 893244015 66479083 334365246 790452392 941285878 756369395 790573225 875049453 995540454 586845129 819493629 931141059 972252238 161865149 749345625 863346030 939213292 637332298 857342517 153501541 320186766 715356956 759974250 923086905 964945423 955419318 973688745 923725550 999244163 393601787 722382620 916669519 973107792 600736774 837134081 458610275 792256049 50799332 993962521 390517523 936728528 513169380 586347295 504483578 514134578 946051237 985420613 761496067 813598315 71511515 436770917 471063936 574226554 712427094 964884687 834898556 980307480 156436778 271161456 211173560 727432875 146714525 404719826 152079614 555554394 522454865 707913010 484706845 838365706 246697348 375410699 819103563 934916510 514316956 985037578 283804937 694014653 712073106 941679900 410149344 945234572 69164476 256555023 323939933 645840443 883968246 983677719 982228119 983440645 382243995 614036244 687843638 873035978 670873054 877161120 160298977 505454482 911440828 921401495 574328598 737743631 708021591 908530351 850025599 858693307 976218523 999028897 165615132 378502279 804218113 922565765 841475082 842782358 292146154 750673553 691501858 874869315 647189959 769628277 11540675 708259024 752964532 923551783 294202840 306828135 332213394 545036798 989677074 992840635 611134607 812901473 125064307 355220914 512404474 662634387 935947577 956671451 431973210 820456985 207811898 524115330 51601205 837825152 212550806 815706409 182008518 684616722 611281220 771028630 537646297 633394150 28195138 516596733 306427156 875478278 164022147 816682568 255133284 359360887 991587653 991911693 613369784 973777700 967993888 970086133 463092040 725057176 144547594 552970099 159558271 823983622 987169874 989771091 435328361 602807385 129960128 661059222 379884867 388566741 952821851 980245115 866081198 934948555 463106423 881366445 221606171 295046056 663168603 875965247 557899019 647566391 800190059 844025392 160568927 187031087 443634383 669378458 843789745 905168792 314473453 748467619 30751068 93112512 710837401 959576788 298187864 665485518 573383511 766660433 135613907 408292756 702113070 760012577 440144206 537926419 873154393 982790226 339336849 505535832 341043977 344561774 271012322 803656973 879895069 895930117 939961065 944294062 667787295 968078625 917525055 982168516 464188724 714747513 696425651 990033287 270696299 664562847 226519881 854632505 268609755 485562870 734469926 979482594 728568612 810075843 57686305 945665755 410362479 846351927 393983362 502216748 402191537 689350708 48501256 800827527 956781357 958982267 632380910 760411422 578148191 916426670 311833262 440550364 860847342 897158312 424522578 782791406 303010010 575911273 553702255 726558306 795559161 854429905 30728360 688706607 290282200 514536039 757778903 968864409 118967896 927401048 660345437 696397125 140411572 906237167 930292233 978270383 351524519 488064348 981818776 985331577 8293109 617418664 55174132 731118608 560329918 845389355 949503852 999016640 965433093 997607068 656989939 662236697 590153304 737967526 338582691 980169595 335968207 723064431 212186716 600841697 16208957 717618623 584174816 865371790 408889002 421988127 471648028 538509803 991885474 994074984 258450109 796599657 251885706 862552382 450922771 666284904 88219366 619674615 677630588 701179197 359038639 659806557 685610587 705132121 143034568 723148873 560256449 766318029 374338458 891687319 520161321 967574982 352013207 498105885 315084939 412217614 928498733 948374145 355706184 360956229 608861706 822755225 774174190 940030130 102560808 281505505 779972666 859311865 644555039 814081587 921812365 981428480 111806725 635145687 771538340 810744618 774746955 809419657 701260569 701789062 963549276 976961703 247938604 862389519 211433041 692812526 410374086 883531002 865219859 865900622 219913297 992527675 100884408 932913176 88632467 214467195 214209887 245879795 852618658 950190739 901882136 977298902 65116332 830878632 163554346 324005625 361568959 681953525 418242552 418517488 338245327 345110076 215054766 569378880 954094403 967909439 569828790 997533608 591471945 858891713 978348964 983041498 165337152 740101893 382998575 383831545 662292062 772622415 891392730 991475960 838783716 940181200 956711691 994362118 127718002 769326856 774929350 942336595 519629449 581745295 869519160 933053888 216054130 809996883 848634162 981590179 101739592 500122504 565156209 799722492 783008410 994632304 181192216 789485011 874525478 987364863 211775337 958344681 882085256 921400441 29339901 818763344 12826255 614212714 513652581 800936242 729819849 751110547 219059288 392524399 261118108 987648468 219654435 478891701 573993110 727001179 750565581 976040666 714830323 915629351 641055382 927193086 549937099 930609121 387907429 453493659 785191010 921665930 984643671 994811188 109141803 415813226 665622861 772534283 192854883 335305835 978049145 991541088 34916754 919936237 738560532 936844484 152027465 817174548 958134787 989145950 734458227 913714768 324477769 824668082 149476781 912255699 678264885 889877912 310495080 524042150 140665863 676145005 995938256 996249943 562242620 981047150 231728362 744619698 352011010 562201849 656455 463034049 155616073 844031070 529076149 941863782 622299443 842296070 573499180 660743920 562036355 667022246 109947749 545332113 781392863 922766066 306399500 343924027 980395298 992850137 943443044 952478166 296794188 404447352 804270761 982560623 564711750 609057317 973854015 999227235 569505558 960990178 228572201 817938204 448967514 647019995 234076023 973986430 775921279 968372076 181488649 408505683 775177343 929453707 162091713 389240221 593243331 713017522 37273179 541239025 315878435 684922843 609895723 876872205 898566731 910671042 317521359 860148409 261676138 451942245 385519078 390259061 735692174 998373252 375710699 473572182 5378819 536296437 736911235 945062105 882318434 892506979 995666352 999411330 823344755 956294965 908179902 998214834 592458428 837534119 796414396 975443638 537133057 741567654 396212084 985410864 777253123 862466307 611600431 774414966 134090796 895486793 290488319 675965905 409762677 613189615 168130470 987062023 61908447 919458856 681778024 703490410 545557116 825740988 47734717 365494479 107656986 327349593 486609036 642934282 601806071 829554944 543312692 770753184 8674389 967065472 263188765 412439992 186132516 744738967 9506109 443791146 662614045 689892936 210558950 497051562 396756766 449201748 163024401 279794431 678615175 685736118 964079198 999715830 474957261 680177488 390131381 953502680 140340140 634688691 126326256 178477490 774003182 922546870 757050714 831229677 324294945 731452377 958632634 966640290 638629566 802412881 91600113 393760930 762714989 901780797 718929470 866306366 338426993 431361877 612940426 727869202 101346807 276034027 568538538 939622790 940937496 997165301 948271360 954018667 878700705 880920623 247204038 517395443 949663028 957481490 263293616 551110968 398694073 754819864 285955337 706502864 411092982 721370719 451883439 765237606 317477861 986460956 442535413 465341257 148417779 959090588 239517780 706157224 459635433 939327387 256504453 702838801 819565644 881935229 75466267 961996483 355252092 391647244 618495189 662057762 800486419 909269001 794260274 941456864 77474759 967235806 959174705 966283182 581106713 801771991 624828333 663816386 616085485 852659333 538035164 920290106 447113675 548148843 321952038 428011718 677389782 681691764 861903891 866745035 602084641 723298112 765698402 779938861 451994214 880701725 662878336 720223038 30129151 849620116 385587636 964930039 907182657 946964786 854533601 942521512 25896161 524104069 488151833 969914212 837053472 947074531 614166845 980612611 944835795 962416056 295105583 690874657 618076843 818639854 805967035 928772745 432562773 593212373 199375566 257615611 43063895 832560097 388783016 662603741 852702010 866082225 340564241 603619746 893826315 978709124 884387686 934594306 512694631 927253719 197224888 694166454 9923553 212008107 767905480 819337145 852406459 870111008 673814150 765846439 556284839 849561056 693117186 850065985 648384147 783667979 926281093 976866274 284365709 684390055 506746196 774837225 921224431 972648340 99216002 285086204 64781288 215454405 429636731 817965536 502699556 717614213 382348677 536117577 289741740 783627919 975369399 993781797 879761368 916873154 582249450 740075241 66824801 419762622 66157524 795986329 298638820 732050120 406478367 454036648 33195095 353997661 300305441 969324948 372439336 428481848 367934286 617072656 307390391 345639328 689533840 864186220 985536146 986972898 258716934 377447516 685220878 978172136 464508514 674894911 16012831 228028720 994524664 999843440 679696534 804537117 389674713 771308965 569410948 723193807 234145561 586651694 246987100 891584209 881217783 985498541 695068952 874705244 731757206 892543435 157789217 825127751 143620906 805279434 613619654 995898120 147688985 551311057 958659222 992460006 826920765 839758133 257703519 968812115 569968392 716339682 656445860 719933137 121042212 464337328 677517208 696062144 117351802 611031642 42523394 912143083 352829015 463366675 773475447 937031064 543424418 595830592 532182100 872344492 63403993 709689733 698219376 781280275 681583328 965728864 405958969 671631302 805782491 987979223 900346083 909856372 228148801 665904901 792862451 880665839 444310959 869125358 148795400 284819401 864553737 869026597 430414653 971026702 586267374 786665141 988480024 999825889 56946645 75848528 639218040 790723603 446188419 634747650 706871353 874792775 254558386 421406088 701820751 734241728 384863809 884846700 228048185 576643970 619204914 846278254 976594897 984579384 258175961 687920218 449146615 474180086 321646723 497095440 605926647 657917056 143203124 748516772 201048666 666655471 797286006 823857445 474548963 505552110 212266794 296131493 862262833 999478648 823770019 884771610 138206135 580714315 683782781 753187538 806169565 882896514 620130493 652846744 519676887 804297575 332677638 888953754 820712562 900709839 617520371 954334391 977211947 980355571 76867164 289796461 419889518 425116164 643132195 859941951 395593706 660520056 716668344 897506246 615661587 762618719 882266643 936019974 881989541 941761620 176496458 638975433 833937677 910760235 31225943 310261944 571104124 625365865 684605129 923135044 729703974 847786396 100623889 112469193 86445792 974625984 493838651 553914721 932445440 935943891 849391168 970989538 73254098 248902634 551824907 812299609 232475905 722414188 473175995 818856825 854342082 942272084 93299273 229831828 713882906 868797897 195220301 979238546 481948616 954294477 806392140 895205715 952121360 970125789 987358386 996290877 976473802 993506027 82128900 934587618 289603338 604528646 308495858 875011860 30444792 999436036 684441719 707199928 540090711 969149738 676747507 938248871 86165249 541299388 616944808 879991949 903336167 980095392 556584931 885992410 153513403 471843661 308659114 500137340 652177591 747407988 416684477 547250664 80002213 774198091 504414379 988995352 640725227 694020439 8719000 127347398 810098763 854502489 604305707 974574209 97188394 105516751 729100125 753966770 92558541 988047680 559655005 560029635 511145 513308026 945962956 967462966 284294615 715112739 580338643 681479821 74644499 940023662 910719959 972853019 370140879 404125610 140308893 456876975 949800368 978508417 870909588 931812035 619928645 929404886 443985087 551846061 254052915 403368801 431585499 706110908 918745540 951869883 69480318 659063996 944135216 991912802 262068293 344444113 785385501 919297476 215653356 548611183 343700031 569852828 994491556 997500918 701971175 909998759 374701777 394600004 683678347 908228572 310874539 440738790 100350596 901876006 826737639 969287790 12936339 218783016 940562175 950015067 695877962 862246404 976954958 990613314 551607652 585701427 879566812 959942411 277135204 908313473 750798162 823579692 920405156 959553967 249579249 627802466 150902688 898422739 218968874 350478882 700318059 913359116 792639565 808522495 463938151 827328138 192550825 596004285 733924681 924652249 131266671 578314754 802054846 980590936 214266382 796916549 378767170 727056075 139283119 726347501 842484934 903731763 921185356 972480383 880492257 914874289 118369432 624940349 251760559 465300802 576344623 589967228 738985303 997022434 696096711 895924838 856381082 974927323 911736824 986560995 704924603 913167471 261004587 461816593 417429282 848437341 102476262 826432710 287150375 879785039 821769077 832337730 441402082 448034460 370296590 744750284 168945675 470874365 475729129 794855791 995424668 996889871 974485119 995567834 90452237 725608397 605921862 944002259 342379362 727135831 612440515 859814621 341966699 962588639 709049679 753644621 531692803 952647948 893302316 993632562 588884747 767377796 327331956 938303254 890627217 971530762 309133055 494918500 742231526 776600565 829564149 860087797 749756055 845527852 951990859 959435428 790002773 997580564 642107555 949119494 152395757 264078019 772428754 781725523 84915305 492430113 281123325 437486473 214933969 685040673 574819020 763419266 302507486 791680800 461180162 798755790 622843156 977353728 619247784 670030727 214257735 829116438 940545330 943045732 564550462 643768393 643711923 769601022 314850856 825737320 340089395 629741278 100077711 684764164 463009415 868134473 179437380 749441328 146701269 319110472 970890500 977150099 271542842 770910730 650632963 708695616 95673233 772640766 725907600 800247407 376147207 648611610 708033759 930150401 298469640 370426563 3108253 62838567 679398780 971125376 910022249 925712203 343657772 834251534 143593772 338502495 74301504 654351512 208530166 337620146 949181272 960772403 542057542 886433500 882911601 905238415 286610171 471132077 14027381 871629589 819474675 876651615 194083381 323399027 169569412 206499538 937024774 937842161 430535610 513001697 205332835 688759900 918924739 975127471 405658961 745064733 80398881 763292998 88970389 349506515 225936410 414167005 850470 767207216 327036162 836955545 59824442 582086295 618661593 766154619 706033071 927624387 310228743 761152385 395067699 595054538 849086531 922337030 118643529 621158720 681928769 894787899 690648169 717075485 39088158 817642630 65299984 243776334 678228559 794724030 191101707 388110875 374956885 532631454 630987409 998748470 298281476 437354586 745682363 773815064 307002951 431573972 186497980 987530773 8724058 450711957 28366319 523646966 253777752 296607495 378557974 632778459 14055160 104126520 213937952 627766848 281189565 305125788 217080546 328902908 973410109 987258185 137822403 853513158 779316968 921035649 535881415 706014493 499307975 599602496 170066498 609727960 3018652 958730282 907307571 959806362 840845126 919143317 341237733 935096992 919703159 936776637 322697321 448340321 966349492 995559878 873352841 973893822 887479053 915271862 805330392 902896729 34130114 385465004 600197662 700242845 983800252 992829967 362920376 874929524 148029474 589556816 70158443 609681706 593866283 911884175 101937468 906129011 81529098 780725842 675098682 872660402 669482519 898527881 881273721 968187710 594291603 930365936 21463916 870906191 556379963 689079154 807466385 935263795 522252476 749560961 498954665 896256679 371696460 868656361 769585500 809773590 956391123 963059717 598329522 657016257 557987059 691186292 719020705 848824064 629813456 879414772 170488644 505493123 118705290 880821636 296213559 705264799 320194124 914177983 64420616 760709547 120088141 703441772 753372361 775149411 85955774 310541390 42054740 498636840 646612396 668478258 990068300 994396750 921358753 958704778 735388528 764125951 701257329 969816301 953091125 995041676 821460363 870960263 81587555 363975556 858098746 920866092 316934291 845791057 813292682 994041955 801970701 990970919 644292512 684646240 972289044 989994666 375197867 656840550 577407106 756834067 619096011 933508599 454183936 920664631 713592251 901478339 546858242 884031682 562566942 707931255 675376551 753212713 544523356 685816102 588201466 874604955 304874167 443932562 980683802 994352939 95167883 526422338 364067213 547771054 140458966 624470419 443511760 540105804 488715551 545723424 688766133 997031913 530061686 728966936 631502573 772064583 236664041 993718981 878259487 985452589 784161185 986215307 151656183 783374205 312484119 499128906 335330152 895626451 58089280 712150716 860330293 979633915 759651177 853521426 188351936 302146557 561023788 572646584 406576918 821967698 770950019 932889232 11094539 247690967 590904820 968013154 287136444 737390198 691300448 839654658 254984323 440280031 613498608 631767786 509186253 545666019 80260370 799762488 237816238 387517187 819986387 945378394 833224504 903991247 873095202 941566433 621887138 979546486 823692138 874110011 641092688 702632288 229282913 564684618 902530173 959859580 764520707 957796668 654650246 963316538 982349563 993934497 182289138 950268232 289632289 463854066 535621879 561739360 196625647 884645054 938646799 969168165 889150574 983253646 469623850 849822965 477133988 752454187 839191050 998470657 248033914 409456335 35716819 917569500 8805080 24844772 623204938 713890763 220121641 978842359 984537813 993914955 744286560 852393088 622207038 717546908 559574003 679174584 914778382 966598127 627118665 983286827 116309654 898037177 146339122 722037241 906882200 955750371 796253627 846344078 350198170 645525038 118587585 165144407 746664083 880385778 12965183 210324455 461890187 510754020 909284549 924372925 685912575 724364315 522968595 634334404 551410946 699327456 102577725 354903120 826579088 935640785 333101927 739251260 313196659 571780520 575580339 762018897 398089731 861860177 554312668 659952747 113297729 754662549 801591719 987330068 681673422 748802882 457382955 719486402 571198656 626570920 696110950 824543314 94500560 552093103 788109302 796089336 656392881 894149793 848039 453558606 607393557 757118737 307749384 356744836 833743626 960035531 109016376 779820787 456736150 557903442 741247257 989845305 81139562 924088033 171576781 533770578 69841409 850328224 125793782 633168523 390602730 789277288 834332512 859192204 518646876 792136970 563833793 787044585 640054076 800698282 49237949 121212878 957936784 991307368 678852739 719262932 4821604 893453245 678166924 863717878 551191384 839708194 482069699 670306661 737047484 840224254 567199943 593811551 862605244 903234392 159605501 509397809 463955995 766817933 873083542 937552641 822939142 912218621 61781307 341934734 738938567 941184892 856896084 875138493 121725689 247444436 259558170 267875779 459240600 776999440 645306710 829915397 639612759 785361986 783768108 867545492 290847662 372292060 414825348 683422817 677012425 702212487 27963482 625454921 165038027 225001990 468060557 806105196 177110149 887680675 14581177 869537028 169024006 696734809 580992341 594488244 626750802 743096867 944851380 976784204 973153505 987169428 46457742 968315146 158099067 332546825 781275240 829783494 680799876 958396081 63667426 686285416 448532083 583937043 800977054 808849878 184410121 889569511 6185784 533121030 627489062 684222188 782773960 976356628 886317540 941561025 952469694 990032963 996572603 996950608 798540499 976460862 523405142 778974773 786387431 952937801 783695207 926693507 907184363 917730452 554686344 713520830 181324752 385773998 89133415 654344509 953262763 981464196 464569615 476436029 414924120 541557042 564946327 602893514 773647505 843448001 652248249 715452718 522048994 669039740 983946226 989779793 8154483 389882501 577002880 890499050 801190984 941785120 672865069 989691017 827687664 872699575 492233113 944220170 34226846 982840949 493372194 969662977 518651517 974266406 488345645 540800602 786404256 960747872 906885579 949212591 768121137 994519629 763347992 903587366 536498581 855211912 20185173 45629132 499568506 856858148 651984666 928187585 842348722 882693175 578667390 835744455 633344377 827395901 343096688 688164089 191215373 623769451 964061037 987952716 807358453 983577813 890728799 924532773 869458804 874225849 816416104 934314620 897815530 978721821 507653098 601500062 105932811 276700175 488197843 916084841 485497846 520210454 986515121 991743259 288505105 972848692 210171184 371638589 80850334 355290136 628846141 660866696 55541431 102889551 399575297 592936100 905448901 910874749 314251222 336426532 691021899 905684681 14714039 955663703 858969813 910409023 178058455 905891791 418122869 913741604 814017109 932357974 415696262 456912608 325107517 866822670 954675515 966189879 798506858 827206159 50470196 483124173 878457020 908832181 409227799 603746745 168227957 610364768 524286659 810015689 996614239 999607862 778708339 894466186 214438286 549553488 394622999 998388182 605946409 618134643 604429302 706402484 970542643 974558902 142391385 846785102 902955251 910146694 138697331 169526714 34135630 195063869 749724273 982905609 306974193 359888048 549236009 602648426 244236996 892297037 357697064 695290711 590649186 944628461 49794982 453214232 227826327 788066264 264396157 611120092 278320087 422389756 318057278 478405621 818942150 954071556 695129279 789618728 996127038 999907056 523500533 753701266 590175996 833492689 724420039 916550673 81511146 886823463 194201233 497928040 516194480 726086005 918200948 959085303 145480639 806768380 705170281 874519403 344888305 528749104 728390077 745700246 899676853 912144419 739849175 813372248 212385484 843758085 855676102 891215023 275921370 433793624 552992268 820214818 25759457 379273495 854443734 896874824 383723720 527042055 185007557 202532912 653180781 845734415 206832284 696929731 151124247 681290763 594626441 603502401 979701557 988735157 339605210 383444606 259718184 581139414 256058349 778596695 186135427 477196984 286088854 442371130 932973380 947371285 30522186 835511296 816667007 936319862 655236293 792341250 817527993 923928908 418505794 867075700 609552347 728747310 504628726 849997149 20422779 499898668 319751768 684485422 999434894 999734739 686949944 811978048 402463713 638169335 692485289 818573083 537129983 569620740 235524610 643824422 600376382 862895229 884243421 927557565 737261964 950992081 585301645 679486674 76397367 346565997 620522518 892557144 451863845 726393686 879421851 967983856 363061149 421902374 636074928 828130280 458694644 832640996 173773613 810590541 705525897 921831257 470158601 919084008 999608774 999816761 401663134 949710135 28176963 894395566 653965085 755698347 381534498 737304979 171939189 187380807 742544953 827263309 750899902 897674600 238223306 505286502 241358422 615958081 320649069 874672412 851290183 914324289 357199630 611650422 634811487 991837847 56828905 903261289 110779154 259460359 80943123 263107931 759379956 955476250 425361764 816218006 255173217 680778030 638119518 931432839 229906863 868203462 632716290 865782090 198965496 674530327 405640873 764223416 999053899 999322332 545313172 672432716 133156417 557372394 224482065 241343174 389729742 822346186 442049253 478321157 623736090 916814936 757748984 933902600 442193275 659130954 788727213 942264547 155949153 372178835 330182934 849414673 281969200 531364931 47476603 422837306 584355963 780556954 128804569 704361345 638632657 856434395 539820389 704407622 728201384 835150184 92466389 347910059 294382139 494654908 462945073 848323484 794836798 976776733 166749679 832794800 725173222 906201337 450234412 563641046 857228332 947455083 887318080 907244487 413706010 891192338 217015124 339127390 662446825 840832965 933300613 950703951 51288481 748763971 930465773 941892390 441951564 987716299 791724625 845731722 463132437 971687785 613483130 995535805 473857056 880407713 413264788 434149721 806094712 824097418 866874398 937668123 781415720 811207043 835231639 987219542 882817062 893388758 71650768 440143291 588803750 975849159 659450067 914649118 60850496 353252146 31065403 111641793 555430606 680767494 741439520 901944749 210072894 819414965 164716115 333289855 959654236 992163618 192913447 745740888 620964319 775780486 812610973 823038811 623804234 756992109 669259558 830821199 427932107 689442456 950053688 993052076 283893889 340446928 775582371 832562810 673828123 888970322 508754752 594262458 16815284 718025337 9106009 857291527 412908788 896058586 749875194 963620662 964867383 980875019 142702260 195367835 970500451 991434477 396404253 754806244 133728147 261133304 130495761 189934070 658233169 984344685 699975961 953098005 869909500 876361188 473221757 488502955 691086623 778716565 128595086 939848339 682344305 954084935 799890862 977171404 605695031 770772259 937183280 946819475 288751740 918003926 319667010 486911017 774608139 938747857 584289500 899790496 182546802 275809052 160291950 503730548 928306556 980312876 985866223 995099481 992688902 994922281 972888217 992789019 679933946 925712446 732111287 821837290 466390573 510411266 718622558 898451993 162797869 211545698 254492282 291014075 444520717 838792776 499379705 885551453 94206952 592267973 984700695 986180774 277316114 333940619 467389827 698016167 243544947 601801813 122432617 730867457 340175200 596252082 410824966 962853332 997037246 997279420 813307575 861941636 428454897 915550621 544647031 782868644 692059489 714967160 375376257 651599337 594173118 924893447 240421918 316129569 482265667 713439277 338861188 805065806 222476455 487821372 14267864 582094507 946680754 973574477 756041947 999267090 172394415 836920751 856928648 932051774 297669461 993686622 377648873 688353424 670106779 983916120 776357234 944988358 289676325 746101877 272663874 466534561 342221569 710673767 37534697 495701999 394680281 634165786 932211211 964277867 327110557 886319370 524230129 859870781 358803188 645734570 252094986 787597599 761474476 857723502 815510260 926025954 491122156 501995807 131580817 849664995 99213995 963176047 376047908 522994230 507796433 816717916 923866705 997890446 281861952 447627095 874038697 960044712 906585666 939583460 546195357 702344737 195626552 964001947 195644907 986396415 398432505 817889159 377782573 903683722 323197928 367876728 299988146 634862500 974136465 978528400 704458874 869274890 972955312 990736030 682633457 692054749 389333198 783576337 198735835 638603558 40154165 670078829 901216915 992764736 471654079 929540859 645445734 701388648 283618964 777404549 702007938 749548094 973297524 974475608 509948299 789051013 384374864 411834488 861903676 979585522 518267714 565215091 461963514 881537630 471839943 562971248 326199951 422834746 408409640 764917552 570151001 659626153 216673599 565000963 673761616 681116900 41234866 478811979 994090875 997492944 790741655 982158760 612146634 911555037 715282801 906472945 818650602 968295395 114608529 823314757 647586565 893598175 428934984 694958369 424167020 867887641 556833183 600047322 404480484 756714084 453575826 595620782 418492867 733039920 251889123 514371300 811905736 888153052 62080494 115699893 846499641 851448488 358235819 607135188 324025265 912038160 312277570 756949504 538953190 601526123 139632112 414793486 606419271 969187304 85348275 845714899 710209262 766448452 833711961 979227403 52003186 483963028 803158875 909167891 472365323 906545853 499669427 782041331 511306043 808819906 660668367 795566996 319685678 367316960 675439751 988487090 390935339 814216570 454990556 861202269 636826849 840270894 884597886 971715195 3090546 549951646 425498627 745913615 208908369 343883393 642909571 759576292 548192551 567842850 546285071 557981537 686590114 781533621 803466868 992355927 709493182 773820936 582766386 733625540 920290401 923104853 26991461 492083340 752303501 814957982 647856309 881246653 963985727 967557285 758364835 999976864 93664468 941002710 326221156 745945911 866795908 946307783 768340271 778596114 810502406 904003474 780897253 926158261 660360465 821934748 913123251 996392354 33398349 470600937 4306631 526588777 688021790 976687917 210151241 445911176 204920952 480725451 54482170 931427338 138253829 231412636 633927706 641354714 143823415 173325598 883464095 906651135 559747032 627114594 494880636 716986698 272674355 815382849 470350388 930579872 345223699 806730488 271081683 874199439 495365697 877104687 787754281 792086517 385598265 857119617 1273658 505524255 668869979 741693159 477587506 607352237 115519962 995525132 809372391 910114133 52773203 598710300 268002681 364912686 861403496 883492505 653101834 819724450 102293597 786495594 850697753 959181290 320461459 375062987 953823808 981998284 297804509 954148571 62967213 65077782 825230727 957842075 560184749 792895666 195513104 465651161 342873842 439146444 767359684 850211152 783233914 875060321 52492682 881735402 96142914 275337438 423903747 755566563 494292705 698413384 834595536 986040101 64026011 414881675 299176194 334760828 199278819 226079502 327193015 740744491 691963827 835743653 995543320 996784853 128090819 397415261 520629652 597095181 365976679 667137452 760154301 768782069 44441688 115369432 738309846 781934696 359067636 448644007 199219348 312434031 59770347 812892415 858581196 877486991 220077527 297142569 571604974 987996155 189286613 322957106 210901894 368836997 607851339 852238593 864914028 979785475 363857106 370084764 880374430 911730527 183767096 794374454 928557190 955421914 27519444 890647430 234183824 785102177 859641903 997154671 526756871 968307277 684567789 848162425 319188798 989633280 445537076 692846289 807494146 926863357 252288301 265668412 879064201 890047258 98735006 759258764 452968929 488099060 702047846 773288585 925028757 930841254 473058427 499533476 504432219 534465323 323246811 484505388 545667145 868110691 260963526 335239953 664987793 959667891 624439294 782867957 803748720 815333106 438897761 850532499 569168549 737846656 608202021 939068371 386533945 898959520 528606203 710074514 56824979 786867628 985719616 990041903 612065671 919761984 594860640 830858264 849077631 964450617 273306175 671874737 627221982 665304918 863485617 890559758 68536523 975676433 775781794 927927312 727915880 739631636 612624311 717888195 348193244 666682191 862940791 988651298 373100775 434423507 720644617 742509926 571715393 613290659 493166102 874051631 265741711 960499609 565244929 896328371 698661927 904225200 143777714 704578248 333789499 401869179 228974153 640104037 962485232 985070134 699253967 884994563 735155309 986502397 638479270 704872750 804419247 984831171 406685019 552572950 965313272 982094222 858531136 987091577 271477648 571675493 48751630 101209115 411817539 545901937 624829557 825972819 950348307 952905216 563801262 764853170 635872240 887515610 982723457 990189281 912227920 960670282 634162824 901135461 919541994 947614564 692879837 729163462 964382287 981853264 707217482 726788060 190378425 748924423 194878436 496905887 921737972 955645240 132656365 947996631 613910304 892835223 943883680 994109239 174289469 427090724 339144409 787662451 665029290 979947634 340624881 441870228 467819245 575288696 301433945 399314973 300124476 705590454 11506603 955709095 684606315 864368917 723131961 967012414 631107311 840198781 620514592 660533115 491591821 599561818 895370144 912299756 890989795 923608974 310389711 683580483 362110600 784687031 374052963 644361380 572677215 932719214 151916949 568283605 219794142 930980733 494332464 824879689 384664734 811727080 257808209 441635670 121816154 753706150 655718121 674188044 572914122 743971322 296683796 725234995 274209960 908615703 897308405 993670178 740449833 917479685 332924476 951561162 869903588 997290142 186407249 548945177 169908367 305135852 992784863 995530905 650210762 914543677 167675935 697189015 215224084 277734593 299712070 357757866 945218692 960315479 7261662 79131703 674073058 996998797 385548441 768565256 69660217 759446109 14688990 484419703 470123129 608604873 929384361 972122757 143729667 788846668 492722558 832449257 668216757 691833015 342147265 738224625 931905299 936351893 940559745 986956792 774701449 795007756 442987742 584449439 899812799 913427705 464350210 902896897 633530614 855046356 978698459 985165657 845539999 947289156 10101097 751939177 959358492 987457115 266484895 568336038 574838991 934657131 24085677 486940630 941270421 942630356 229701985 696653765 204598458 465313309 635937073 838414320 132910071 971094577 939209660 982373954 625265980 767426232 794807576 818215127 121593474 387618299 333556942 828334923 38224858 357316047 34319601 746559197 475871772 642224301 30355390 402504945 423387862 582421025 258479310 443715260 197341386 917390048 546426538 974901390 826381984 977053793 432852391 504202405 142387109 426695300 269320454 779776882 936793425 984205695 977082234 991772250 857383187 947941083 192980608 559922672 541763943 852513699 621720272 627175508 392442862 510990092 491486203 877734088 166733832 827295449 866212350 893247978 121572374 945962545 799744243 892970998 918657252 950813581 836894356 968641627 421974365 892883369 772541664 983402336 147191550 390718119 821598529 916290930 412972977 817102328 220620360 689972065 782356418 889369909 44242236 749329537 561123650 711190460 740272512 936796287 947311767 965920860 86301662 260675783 396578982 504994053 737588845 997555443 640044488 649730544 935589886 952979507 623191797 664787446 152137252 968579633 818221669 850024631 86297812 825831088 985479411 986058021 184740638 942878460 618192279 673629203 459206290 760825377 770965815 795762266 61846046 72327357 426178671 841681799 458937036 863403605 235772452 345655737 661276738 981709866 592580325 764740782 351849109 594132287 515462936 557088272 564099805 670708348 651757666 785285408 954360402 980838681 493857081 543826110 814599727 843365276 246583692 801723286 691746405 716984152 203434844 680999619 940400607 950970262 557068941 621863480 749444010 901021376 718333315 952854097 34402726 101384039 551903731 607586642 776856818 986473139 395829466 848335575 524952418 938946473 370198224 376364953 580101909 990965969 81083790 553847914 502526537 949366338 134090159 694143920 607782565 966744917 387520869 877380921 381998214 812685678 105793228 460800718 908010796 924691858 612943693 629742451 315686612 848171084 245851693 547794085 715772198 969177479 848976133 857572827 505590204 963579513 53490031 586180611 534088194 940291991 302743475 699056402 403963189 427488269 202299161 342759449 615960993 892697923 163910156 361574175 368761123 832291517 413609559 594872469 636359329 798640103 428413405 700527919 99974486 985464403 329836131 925003034 72794189 823929891 311445287 496913747 455509860 972489541 947357801 962560186 69025170 991534861 190248506 537858962 310080793 331757171 462536414 737491058 749480735 876647580 854246929 927663714 207816627 767263041 18902349 974329857 213189822 532272576 621511190 815984294 109450566 185023687 560253326 577984963 154443190 357038919 897856885 907365410 871620015 989567691 169986875 722673193 89280258 201113165 143670848 676998392 83387072 297290268 944667841 963816309 121372511 539080074 700352924 845998080 714944487 917094855 848874193 962292224 899538068 967554354 190813111 713610329 727325740 837376413 342121185 581981481 577838540 599279630 106933330 711582453 736358186 919694205 502866914 882406292 459270794 589497046 68098176 530180574 813246704 917788892 830125619 958332004 492094625 552229923 584382811 924941384 973652589 990865427 383354028 756104501 549701370 633804639 123140628 954313310 60935523 100540334 436946881 513023186 449478293 697717095 400615680 432232679 971880953 983760332 150731050 593473868 314953378 870571148 982224376 988502036 942174404 997163052 233610122 869171068 411660884 817572149 829803359 897552741 160618320 988862928 453368720 584858587 388314651 863708222 968679097 978801914 863149144 934515707 672357991 814739161 783848611 916124233 163038326 323166287 802169730 882850809 433822808 495909566 248334427 553891618 123914149 619790097 389695565 829853081 46029363 164816558 317378860 676216312 26727940 545010550 251654085 265933663 434431958 661912835 586472107 793446721 567719599 867326697 556333437 775284153 501900184 559699966 729961420 796497111 217861654 731494209 851629104 958377980 244891131 826299494 365649793 566487971 48251571 268212663 652127829 714419514 961809208 972646211 780439056 902708387 161611963 807745790 734881228 943156159 432380202 782886918 781256903 818034072 742333192 767202651 245510811 584716087 576058587 901296608 483912276 908652180 967817991 985039729 288604915 563486978 464718034 692735570 111782506 703700514 932953075 962412948 847234217 884902222 122641803 175867257 986047169 996380471 85499826 102694668 85700114 934917887 807279413 897438522 98159103 931299985 179480715 871800697 874398079 934240433 467903865 522144406 110420509 777065949 610249499 880663965 53728315 771400994 727193984 822779128 152589641 631312547 956773182 957505094 709164294 750034528 290740018 732033962 840937883 893416466 849250612 892940950 796651945 985487661 271472932 562178013 596737596 809010556 337179123 913115344 376189705 719678068 373671800 530200035 437638732 830799824 329426769 627085330 753749524 932164335 111998134 248610245 106063173 729457232 754783688 903955406 566601646 933023402 934006581 992131043 736071822 766547286 654107625 752803091 269025560 672851224 607194216 922331011 377104088 711330352 867676750 874666967 681883838 998567064 907551933 946242945 143894374 311518278 593220828 941600997 644957594 826268892 234688518 465959463 626187155 725131414 445912457 852766224 576085048 694106551 969322070 998044387 822208499 839041622 594273374 859204769 510210474 838448477 462127835 617652952 22085787 31474462 836452715 877118369 243084507 703675527 823885486 949660279 195965161 554038826 146304757 767216648 930435235 992041297 255694865 384081001 822868665 942503406 559890329 686904301 131124239 947587767 639323782 671585343 223356073 704565515 547692327 737577828 916224547 987978785 556217050 648469170 806645642 835376079 172262974 356050503 339141588 513580064 252535857 258686276 372947762 405042154 372278466 755474742 690266114 891373218 933873074 935846458 375317905 844844619 963818778 986085186 441988370 592017203 491886491 924011026 561544257 938715714 553177396 662833900 993184621 999725379 716137333 729973317 696225466 840212856 826688217 947274032 901176958 908452825 455775975 924056620 196247250 516766238 132152618 716639050 197785788 403116472 241533011 460297982 733510854 877033875 376243508 681671327 145287540 872628000 4278271 463563248 619846269 955096688 958864306 982771620 846991981 862022046 821310608 945896491 806174057 867553214 422075509 609724559 12114856 530185855 362518144 394755101 260835334 368117604 779371025 973717307 340757336 955378478 456477074 940054974 229576698 803750541 18537417 502744638 375254813 934226081 478291321 984807175 545826914 921399816 78054711 572176225 21001832 858932528 740171388 760270145 807562673 912715027 355199922 410763270 986191686 988191865 270008602 320396526 267087949 393842843 743331415 775690819 271751924 455633555 250427350 800040960 843204479 915288629 401623339 514214626 732984453 955402654 647578888 898495822 70595347 814405378 836968848 888093221 717795467 948040342 96006004 498559477 385663978 964314951 998776140 999301382 714492709 740808937 209727650 966335270 854526967 860625458 215340671 733830707 813541900 883421608 449727232 760644805 19421019 508719123 101129537 561977627 638042463 784618610 649280555 706786828 98077563 239388229 899234884 996581435 847818524 871142114 391923136 421504700 165947136 690167270 76747470 619089430 635634123 688467370 313588559 424956306 330892208 707759113 696825053 998136099 949306445 985123842 583379841 713467192 651780399 931614794 959093467 965552396 991346240 991568389 723883678 856497268 342748664 745197532 159163774 695415402 381773186 620137567 547093726 566364588 460842973 985473849 873356012 884635243 595222931 882146120 732605036 945024584 231668935 660352595 208551954 646951063 394292520 977098832 399267793 608707824 16096723 33497717 306362288 458936996 26024184 93911102 432434605 583286989 739683174 790990834 811853186 901221038 765697728 920345083 505149273 652184186 926216233 997428632 81745485 523686177 303780797 962316161 837632683 965149522 968870452 993088630 671225790 676476165 489975023 801288778 210596793 683754871 981918261 994980433 700906034 774243141 208695511 542628572 366301907 850661482 293004616 301446940 242542985 953946952 73903863 315605654 621952711 881388752 527891039 894466060 39678226 608760380 213612853 323574182 25187754 772874128 188294555 740165219 93420967 526734809 700475341 979425852 176168729 683784231 249564989 913223901 102136735 758692016 627903618 868256311 267291204 960098442 833257458 840008236 368412224 839718857 476661586 697397435 890329507 981429466 359275269 419886831 616734795 991958419 544412325 901021570 607247526 919970105 615810046 691125108 650968672 814408238 814374375 882862153 655786103 907640227 786932859 866818958 480027766 580670363 340662518 695581808 175231763 471870398 615463764 641552988 231650949 338146580 858020203 968957504 980573172 981614589 701213513 939970078 425495528 933830286 334615573 656748593 142720817 419756972 760755436 892469558 41798049 256433523 31502618 935539195 891618710 955074768 554656380 637083776 253566893 709924230 429044033 505213604 80792738 918052339 491499123 915451581 457570682 810115226 520827728 701901082 877988654 888802835 300743365 541615456 590546221 746789379 205082638 609521573 624146461 669074724 665159230 909296917 178414574 202564805 413170389 889414644 723773405 785905169 149654546 536488301 406810755 479178718 293005586 660126945 296573696 690497365 265766950 626364804 66814306 992314888 977289277 998483340 630657217 921544861 675757189 752358560 296009680 404773777 775004018 818633888 631124134 756204438 75631985 403751693 721370944 794546769 138327143 914010195 463705601 551710074 817380247 933323904 397234913 584281996 690783981 915248593 500370050 702050378 244635793 281394642 695938105 935242983 126337985 824564694 667495603 878531696 578452626 584731180 784774310 821777593 49926087 467052010 764346232 877453448 311953287 712040099 534269955 550608402 779439537 863487508 149063438 232559105 80266738 956892355 963471202 985544564 444723735 921439012 906421547 985558838 932939678 953376810 703106275 724864269 22123330 226059890 490415276 522287876 869864015 909320609 158816665 540044141 836379849 986218817 126758570 582370355 866908776 968630369 839222581 849496468 15738325 615886629 814051406 885370217 897735878 911252284 134823843 700374676 882459900 913536574 172625899 865638231 420078664 871257220 767320801 926979506 99934024 717984183 725973912 962192346 322825691 641875653 531730638 920509955 848505855 972210309 302986734 428478461 96681423 219034595 990526002 994125865 463548891 597734566 688085182 791062572 222483081 808714930 522538944 669051673 510857131 655702237 859462999 933888839 691606752 839223274 898263274 943368166 761451024 891451053 897327127 963045851 141288312 543657973 371736813 875620304 570165158 595236328 431563288 818097413 827726186 952089443 579757699 597589369 303143815 516854235 21753793 772780272 255729747 667125391 858741532 958201906 818054929 950086928 772009865 916641784 786712376 942988241 33606915 406174297 564822803 919175900 221145867 401655716 588902912 691077768 828817710 973947223 413800268 435056226 804546259 945468117 122563931 636875625 377171856 941848667 311323863 384198367 187524930 510535344 561368100 900270234 742280333 792541892 698892072 731293941 136787067 984754110 86993545 337984925 862942609 920260022 180598278 946447507 855072265 903777198 740541386 744862734 486875812 839300710 378337170 742061794 733710933 860519850 551269575 657521252 715052950 957004558 885634532 998752156 498907963 769232103 504444167 570538314 51119102 274412555 385924618 537298752 331187531 640679678 950209090 956027467 68136888 406280690 939240113 986986636 338866043 895400656 636894782 650691058 595134078 712544004 697398454 705994082 159738119 775744244 621121032 661400200 690708192 874139049 529544167 931194876 967678649 989599372 545947053 997042503 855110571 918711771 419637479 949765583 801431256 987740841 780581291 799850089 433102718 565261263 352631839 756770043 455674948 529689009 285360186 941954846 613795540 829594947 493127265 743183750 450259771 537172120 312504498 926954780 496476853 975114468 567409755 583481691 87509107 674891026 996190333 999098717 845189653 994398843 429436090 451059243 402671417 934825510 476914729 615881629 865612476 988902732 912552102 915133443 514887910 879279435 316762507 530768564 279240966 861313209 228954794 841324824 567148342 710803002 691392207 720142505 28868952 284221257 112900996 467774896 939242502 976260339 964393012 982057074 661190931 860413735 635740909 924683274 440029576 780496791 860467220 889050274 276043228 431303046 935802456 961224177 983092573 997082423 210224325 690361979 759495971 891135051 34510478 655656546 962865301 989827501 883985588 907809501 879967969 978167171 688489067 847114439 116592388 117466970 353325168 966070054 212423518 542617807 126189155 674699707 624153460 878269508 578802926 706378819 842948652 999398577 109074273 352772785 668600740 814356019 666950272 780172237 487494667 678951359 386041865 725140624 476849069 686060883 543376158 889529233 688007667 740379692 476660991 907859356 430337597 945541345 134205503 198778372 29453338 604936364 656629513 744151831 531688310 634921301 856009630 889730300 24495647 611802795 781150754 900805396 948011103 961137726 303635063 374206745 475034602 922759076 503126836 595504762 105522461 231876007 802477696 870036089 585438463 846334918 240511389 459271877 921841342 989653860 154058378 530802438 790173058 982104262 149616986 951381453 468509204 974746579 130383655 393850652 188482739 660897737 372745239 958886569 913292071 978213679 510552616 786039630 415783100 552361255 697067 369438164 857210410 986103239 760751027 992379398 811502324 859866134 345465369 974711261 201315327 622735798 768110844 841490304 696256149 841588579 538016752 741630925 309223118 738369981 917937077 988203537 702665666 941350414 407283001 493442767 96399715 943003585 220473012 359880213 592747822 712369934 232461457 462526827 652440856 792780851 257027159 260488941 540370334 920789780 551819212 563863854 371779635 801925915 199513808 516352682 759789236 936250691 600027988 650005562 945446455 985321228 199462012 327627722 487555188 846304373 958001283 988044536 496427487 830153694 788398985 847733354 17880170 764701439 578339357 951705697 168276983 877751785 94423855 119518599 977201102 997844843 231274465 521072383 201685054 566367428 410682014 466155646 41113165 697780487 938943407 981174673 963402046 975458478 422955630 700048573 562875672 588896631 84199477 689230148 390994641 654727903 888311219 895924866 64945180 361641381 648368470 682041985 435557306 996933614 373706442 963111582 270191201 823245069 238101219 939156363 865803975 885964553 234295844 236558189 685489292 744980096 137474551 401318528 698898670 836322707 120925827 809048712 957972533 993785367 171364051 791801597 21979611 810480570 599600575 801727437 472093909 944209808 730817190 863443726 946630180 961876189 819178333 999277256 400111585 569228483 983122868 990162597 166254069 491542918 271431157 414087370 518616618 800434726 54341370 187496165 274591495 951534441 319586771 869072420 403283175 603868751 442279300 865706472 793665723 990860338 527389136 837275733 645487079 925174364 730541213 940913546 562427747 982173343 249033343 663753194 470560571 838435070 487569428 961187999 407375171 531870730 916833433 983484711 545310921 919312222 507232283 870001104 147663764 472497493 946788803 983578202 47545142 74179256 342101441 963824537 27637697 47984718 728484450 736892167 867230504 953615310 781194596 845197759 719330051 899423937 820148031 988842762 246996807 438722365 926970406 981737147 524254855 920632020 894953087 970156213 368240784 446614488 450058295 956706483 641375466 687599406 627708825 839594457 932139518 959150875 966700274 978930639 822213206 955334705 268301852 928837122 398124438 821203773 853906998 966889372 194540202 555348053 63221010 713472546 309760537 765209441 156852620 187097005 883892118 924833288 869041410 970910451 135745940 217691995 713461096 858836071 76180651 478470883 135365750 682601711 555031881 828320809 405221 660087630 810045607 908329871 354238956 658504981 775685985 943693974 683300399 789203205 269391741 698746652 896382097 996245546 803035945 986844087 485668678 657088601 813366884 814104464 810778900 868592961 370375627 418762434 7909152 297129375 105176967 482037120 758850493 963246181 39919140 940019652 788498999 869453807 721245149 824798551 457823796 925903256 893778916 912243610 107826572 499522053 67405572 683774267 888829241 959323713 752076818 821489172 833894348 881618494 239572978 527670557 146277290 407072994 405389065 627758688 536419290 587238321 832179260 867114152 924645878 979953339 135154806 195534829 864272811 903474291 442996398 829964205 559647235 932896665 322958276 678980093 83474099 408303494 218605453 401899948 688382733 821686202 528889294 956277069 409527046 483065872 234218994 437989805 59767656 90705222 268281072 438151059 110577559 388594694 748483842 840510928 439870540 522784131 660034787 734436671 561822423 788277256 876346373 921337899 636905466 661082205 210445306 260627154 78453639 339794290 446894297 750718075 621040359 767345329 999369462 999822390 679897818 772047881 331692183 530722067 77348287 161140546 348554545 519265105 470436011 923479901 637551505 825824646 128689603 595803618 253569957 849256744 784908464 821448297 688362132 825571038 806080803 850811146 195915868 329083209 573826914 606307077 151767453 511373378 183616972 921458474 288565422 399376570 10171508 935085403 646462682 773524877 91293557 472042754 995715198 999601400 256373587 550716597 37777539 366543921 751473522 969415217 956602261 966943821 518546652 949896090 943794728 979256229 906525874 950926007 692053328 927095139 1731487 240733141 795129160 955931368 616225866 782644384 956467514 995273746 266887889 445243336 747581564 992895373 367423031 496438139 678268059 912873355 492216201 574478155 1550028 732153186 854577642 946773168 690211803 894596477 413222424 862552324 855356322 874783644 642382595 935362372 743297138 909903245 870346765 971646454 76907203 878817409 659915321 918490506 756640371 810510525 527184925 549148834 628896707 743646404 390897723 704428295 185679536 855228295 665690982 773081270 565546117 930068917 791214873 951843923 858535820 949049214 825765303 935078248 887484087 937854115 170398113 522754442 530329557 852186817 468501526 499631726 848783591 891952356 543882997 969983790 842382338 885946542 675504719 937585356 644926331 690630066 44652379 553288367 938119827 981907247 226578866 993195900 201070573 257675292 706372025 961105992 571530849 964626507 973497531 998231764 918231669 953393022 45487479 174959443 582019912 819886696 654860825 932601370 760277248 865838299 607151603 652431281 655276590 761335923 281467024 526610877 977344181 989841648 862968690 945394867 210379247 361048167 907262287 913115933 30655687 129055232 966695694 987392399 528789503 531459678 441889683 810077849 336875019 669053773 204415293 244757872 416087208 654349356 381774273 552041250 449381469 890214952 999126659 999288829 393824361 994077761 502361562 836804753 376391963 529041584 54797647 654991595 196636093 919074653 974391742 997498265 290518105 408302204 979768349 985750175 850057862 892124107 248003803 618472027 111387257 287598450 929515510 991947843 579483834 693593174 491385642 626244499 294290620 760989456 698066759 841608937 352504801 513556609 345983013 757802142 822684928 930577122 543261208 927293087 276083310 862420336 845017738 988138208 286137659 934241648 405177117 671923848 317273548 476994692 187243027 957110797 576776861 883673156 520395325 786636254 668336060 903010442 7640366 483072393 527946567 861620232 226522984 267022994 756895024 889233184 4927262 329473833 251199833 562867966 489485281 989566837 286730736 990475312 427602930 574608192 201715313 783746851 630672631 768044728 200859921 335134734 302978660 776760069 822996533 930170822 272809947 296872085 346364472 499241499 798264056 960034158 463263751 978254693 322868565 865909648 649442682 879062595 79820848 806757584 513552598 939620231 720207461 939669772 613856912 827474779 510431141 876816806 838975457 934423902 719907954 965534819 922894467 942842782 948039908 968398989 643232642 876488459 471226046 609774763 73541448 571834846 849307824 933099074 562873154 985203959 289128335 734656766 513441997 942651122 616371626 811216133 292229505 470899285 528053319 698300204 701321202 817332363 917812706 976972240 118088045 584934667 557651735 956838729 196402056 766550517 576233258 981896056 341375046 459060920 851958717 920125694 199448261 613700911 683464350 986519513 900522908 987272052 791566317 823280103 852037362 947128036 565981215 904163681 861176741 966991409 807580285 829333103 18354377 105305659 908703493 952719249 503725732 963345553 378078534 986950042 705426742 974787171 276443250 615947137 394539988 471455811 959527942 988191790 644549728 646802821 624132810 690498837 942293486 950780917 465191201 985874452 128933588 483088342 921407822 955608545 399527741 455200648 809747748 926741634 947231164 977698223 938878088 955887910 441392344 912935877 935146961 958899150 609649665 963717115 936745056 952245641 931728351 941555619 682900356 951471797 627689838 943368159 372615101 767641316 904219779 936928964 607184145 908932215 107602821 448660125 665780142 845533292 421460546 808439372 823305726 833101639 47948954 336941043 177584047 495818640 42316905 774005486 309701635 906818672 655614051 934154820 620131516 689195875 298518610 814605288 901595450 999030367 281426234 822213867 942798868 987625609 96704078 547202875 800211880 937803953 610163503 811017810 632572487 788362150 384122431 569365534 94847159 759367436 41996455 949136332 794342558 971547183 285904289 704440307 661533739 850423518 872041793 900503436 928961000 934504967 664923341 908739258 331196611 761028061 843736063 868318929 875042120 897809891 777398395 858423375 44183854 173728646 128296776 622388431 44383577 278860650 977748769 988318481 163701770 546532358 360205995 767233188 98678615 177607640 932871121 980254061 926726196 936862870 622648159 744804339 598541644 896846814 799187905 854074312 603334756 809038844 987032655 987242049 312214585 637996414 447817037 917978382 931546466 989692708 975234278 993805776 528037335 872208794 57814711 171330296 999978667 999983506 883326262 918896688 842491155 881420973 434817526 903636220 912429762 915148639 893474287 907619580 887941731 915709560 129867420 357634012 690668089 840309488 758603204 761889552 784205633 907741012 205032545 909917651 829433101 831696579 814220256 822874874 884666423 956767604 564870920 575631957 119427522 203145403 227439616 331053005 891114469 928325855 986299513 992322090 894850551 941642161 750882667 928397295 947260681 987228645 284257155 388542604 824469446 856676785 556924768 615044729 421482269 773730379 635339681 711294469 483040906 881232790 147381904 915229527 481817949 840896229 393367113 840704590 857789658 942613593 528653985 780483435 766018497 864729219 933887796 962922349 848186270 968582862 277280590 829008052 344983958 963828634 26384925 307537165 743950665 805926384 3082083 380829529 458967591 875511677 507150030 723998608 872082506 989921020 615585565 772187545 608644586 893593311 288109779 989010126 679062549 705447990 812217157 975600470 405477955 861415450 878700393 942528281 16473960 405475869 402761342 582567030 123833641 191241239 299482852 805046576 677475581 872636741 17802302 388793383 456945079 624406729 366279629 525639016 680943905 786388418 389471625 452322848 740923185 978010265 218203663 718399276 390194513 936933119 945375446 957018474 826712145 898102384 997594380 999929794 317717113 829584346 736498740 773911721 696405435 996525677 38255643 650230549 578950144 865327774 917670824 975696345 287414742 870534477 523938954 668338964 822943211 944076284 64060310 399249586 237895465 392565260 650369181 935432854 521603185 950100050 960854646 996059605 581874557 865011346 715277606 952303552 738641788 888897828 514926214 519587260 272343162 829038742 276499149 682340231 799850241 834458477 452146999 796338569 213734126 556882152 491411397 936149944 323127964 749923918 225671303 817738884 113804088 912767644 812399187 948763033 748527817 846727449 769388892 901732265 803151148 832982614 778576421 809598765 497946085 898515503 3444185 79256576 775660731 838924037 513081322 514227355 862193044 907712818 898747703 925989777 15280701 641052537 235577864 544236622 93410155 576274094 88512061 869211339 866249173 874158635 772382325 843416600 845011798 855121773 588643201 811984018 412028749 848596224 674392529 710232256 621152394 632212260 226180375 584840860 355728723 938301525 390104426 614235519 590655776 604940025 378476654 942724865 827347290 913390736 376651509 694988358 76007866 307612000 117226861 911072774 954335825 959338019 245980048 451136636 433845312 886990227 357689545 849248694 67492577 951327430 205239023 583358613 394551040 745329266 669034822 849651391 641506057 696136374 494486213 803439837 793372153 803522814 139784864 788384205 969248930 992633733 431797092 649846970 576484352 899284014 630248053 829587548 689493243 766280327 834754644 870854247 466198653 920578436 974348801 974513776 183963379 864073822 79724101 128652560 36155868 551243047 202401305 502246380 398010765 411757705 180682690 789248687 376204561 434511975 212274931 299198821 593168150 866188827 64454090 225762393 44963039 923778654 785407653 882661670 828258393 976950343 273620352 696785605 22175945 951488920 752511568 932005944 360147113 466268307 232127574 300791672 599724873 837101153 119289221 861496647 592970255 809058606 998774232 998809199 48341948 167922988 817688146 999466215 393022473 975408122 591057976 697723398 541668521 672036238 773539823 879742509 593267855 738601196 84467512 711856532 490240896 747696913 104992513 435721659 453790700 649645276 883778023 944458002 199759500 206561915 581771685 863662028 523367574 887681253 877808064 972809808 670741506 937737954 723702872 843144674 596340715 773835160 358239398 609837123 54820673 413552141 160225637 545330996 197407943 769498190 328782895 435298043 719319686 940265335 580966195 811688263 800340730 896525986 544738474 837809925 759498586 788577113 681376508 772092658 920320105 951502125 256631832 442203878 644208714 926293808 897338913 985574197 299357969 782461506 227537403 232537101 594238483 994476717 704151744 769935113 576288490 722971444 765176141 827128274 705892690 871781148 649906274 800251909 621520787 817888757 761322184 812386711 778649882 836402561 153334414 386374966 572702271 637692553 313078151 337418879 450497060 458434083 641266772 701941081 230630511 386849549 667292145 695309504 279788345 703033078 49102041 789370975 718754453 802410249 847378366 851660444 919044727 923843836 203091316 998438968 194569395 347309945 67322863 472886412 319564494 400440486 817904978 905989622 705864473 942057692 843022698 852907133 846294109 894621279 83169437 752862161 910905576 944394000 889397855 898620613 48493694 409943248 623896704 960823334 898424661 938114329 676520511 812959883 837643177 862799149 710996720 730910483 26068703 300257448 168393160 510601072 262987473 814482277 30232006 367629809 482904642 892105708 995678295 999744641 651054092 813389912 706640971 913311419 739524490 758494420 277748123 693144081 517883411 904025203 208690625 684127163 474815669 636108491 878230653 891376675 175956253 636915982 77781793 314987913 942254144 985334870 22138062 93926948 446882427 946667968 856793141 957256051 974516369 985258171 68295163 233816264 47355618 588902737 220722195 607460460 696345157 888866596 368864208 989760828 91735569 835310589 700904710 935552556 15253078 558226235 91410462 997694509 824888241 881300982 639678064 667522902 349969687 652902599 813426055 883326126 796602512 885270981 205660523 933494461 555401076 819439285 189013638 990333510 656798245 940824125 975038800 993995370 750700810 753905207 334343157 613129664 529239062 615021290 492600942 924520302 925337073 928541845 892946061 911742355 218934912 531762033 167314657 448676400 145244032 415658970 421403473 782941001 331844176 729744803 260189172 910429271 945201663 979733022 56715057 724924183 247489105 949884653 310436817 485226384 629103215 673305748 61646597 217898508 540110075 776921292 736521837 790237129 523703738 802969899 360232230 963426658 503190440 857807004 620882534 902830097 949185857 988341970 709409165 737995719 309586204 753329660 684593549 908484947 679716719 850854870 524120281 585458747 729019108 756642130 716334335 815158449 373820035 647417637 917293552 978108623 539004982 821016995 982861462 986632148 432292095 823770940 589784443 708549658 624728917 652144626 281371681 288059452 5014026 438942344 132076163 814929128 838861433 959588267 641355217 974323917 827715838 999425315 582471672 778623912 352275550 460398250 842243906 920451441 845864819 934083318 62138515 721669871 534876758 835805118 216329601 858505460 966350204 966587929 720709452 857475876 321216998 576286527 367845131 569024605 288227100 478017685 877713618 914109697 274617870 307455254 986605287 989979839 663986643 979685834 330402403 388196107 887026805 904593395 715056259 900038305 797233644 850776317 475418960 939373249 90029760 567731966 41728055 163587188 932286585 938557349 960764222 988489757 14111523 24832390 984778880 989853721 870758988 958384241 637043836 809055577 507595556 890992729 490645280 676565999 446128501 475668701 980469457 998849520 224541170 761480821 486516988 816561626 653148128 868395734 830277004 903312069 130317316 144229362 162028285 674090170 18398183 32216016 76650618 162218853 520882003 980748001 645298585 907552243 910619864 941719143 420233324 684521005 315738498 593115712 651118507 959865192 343991846 905337655 270930759 289590558 357221861 825780391 305591398 906770107 721172684 909590222 771395688 846067355 926317016 929635254 859529544 860111132 77532428 945449430 790132886 803822888 856449033 926984160 189126398 451671736 266623098 672308707 831610674 862887426 578375187 773974972 561318428 746488234 702280804 972830023 811897674 927793873 68450621 448819847 978944613 994409179 118872294 832814842 414693078 455476353 244033832 323997775 672887024 906387106 467577037 665474475 165250904 892413370 704388384 940911680 819815891 946905635 150757379 546503990 922056741 971095680 493547657 612756459 527818837 939932235 191331301 398068832 134680068 833094992 981147154 998816334 843541472 969031245 436214195 775002218 549334049 851404684 943786995 981190145 971912969 975264794 951056862 963620924 506082588 971326670 229405944 823214857 3401654 863815480 823901541 836976505 531212484 733336580 250768967 535971557 902609912 942118085 746606257 782569227 585721762 844082636 792713776 832843334 7134533 707158508 45020279 631755343 873814758 979478819 414067471 470850072 681926480 828441779 521418660 943885859 688839350 947063169 105658111 623703636 729989728 821593937 444318661 945774415 120499606 984332899 767205854 942910102 170572364 655902197 837870932 856897207 500846290 631623124 88026000 540089483 325374987 433627499 945407678 948769943 323634677 733894991 789662235 944640732 494374907 686889877 830926810 898320957 911089038 972455075 178835531 516603853 645148392 785786793 406803272 618469489 139708608 958817238 646891705 726372167 433343232 467216650 283746278 854039329 248182055 558557178 350796762 781410142 422721310 947810465 850528024 891512923 80732478 261756419 827492928 986961647 638207568 647434245 956861065 977181764 220299597 610184245 307144993 518433222 55047677 151584896 554125883 980790942 505758009 666826068 1953180 283135534 834870699 890248928 273611544 298818638 932979059 936932323 878852328 919027491 66245821 999492483 24317812 446035813 652111272 668856139 184074972 438913111 411601236 777129913 40049237 139606216 524214495 775805781 234330233 749946807 244282700 982096297 942638863 998150996 971921469 991090257 973890573 995156124 431561867 571782559 70402544 331316632 196866177 542747136 599347569 841678588 496859348 724916992 661742262 983943984 747300487 826218466 428309712 591120345 167957721 669214948 305224659 480799502 821288376 986689651 438118276 973011186 333279588 467897328 394386021 829262826 131604324 190477123 509107555 914900906 510459276 957537640 324522245 357281186 587757827 803970109 109159130 569333950 800412216 921361414 687122377 853513558 657722796 987410528 679361367 802775215 850416894 860434840 439300259 749020429 534982705 999841488 737067653 912968889 983111197 985101087 994726333 995398367 972470285 999664503 310735698 636419547 486373510 532301179 302073401 457845537 526879743 742451317 285368522 308312044 294113222 515674321 523851112 950999895 839080908 898117391 927189142 978330684 267657616 934647404 255221232 904398042 774798880 804240736 685952729 864196089 707107248 945110516 311786660 446521988 555387246 559733254 772447688 872685126 429921323 755775999 569309856 720011808 29209796 689127569 967524498 972582302 402031124 807800167 257121191 441518788 767558634 837826719 524515870 977349482 704597753 819037634 359794171 682860375 267590055 420737936 463065106 759566430 821314476 940441961 679779010 740549991 708049990 853416404 778420253 972947143 798179666 860619867 78593726 123396178 54982519 902190140 598839949 784643745 198400998 549945577 930453123 933700868 346453261 596210278 211603404 857655878 495398934 900998005 432046385 556518250 645325218 985849547 68237929 249441906 394299166 857224490 929998339 963858108 118494832 679265085 582480036 789713356 544382343 605542945 777091805 789334489 82383203 136112273 199971046 551265104 712995315 845219989 690669823 803087440 434155615 729283174 627510554 974471807 27205705 275112214 511494842 657566437 447331627 673069096 148749300 548410773 364088342 864188503 632712916 725490243 888074335 969060199 651310418 929745235 547527153 827010057 977613962 983220467 889335928 966238345 880017281 923234029 938219919 962223962 154195172 919939998 332739109 443880858 573021658 777905086 386373427 735595639 73724730 273532057 425007740 680868260 389330086 977060416 506259948 567078514 362421318 503522935 291461811 685613409 928368165 982825106 970793494 983598967 346921463 840677734 80406827 934008007 996956736 997346969 711154957 848210044 723844453 896734784 23027316 644092181 247592295 401767717 889818578 923657578 367549954 526345428 328798348 684205578 195126179 723394633 733538086 761406698 431446154 692151644 137825790 171301509 751683823 908343881 473558106 620772570 275992979 532445472 621153777 866118934 6330067 763001514 166921853 579295265 439800546 846230921 469357362 923407694 385010586 498141269 288716167 311122906 801410275 923247691 661653583 910052678 766618283 789209296 316203079 858997502 733296972 920164067 14732969 143862552 579589048 612514324 381052732 915492917 551729771 586492838 748238371 919789341 928813720 947368572 755855473 781757613 636823495 773715424 828057778 906149850 959762924 973363863 581069101 612968709 352232884 681295444 799023920 850964564 573335155 829081362 259978388 543200574 39200704 608565476 17489912 651517365 646410037 837462095 734945808 800540072 430892048 818444984 83324318 449984893 249056419 574590652 347024447 618718036 257838194 342585984 954278952 964124740 871865919 948043383 834655387 939632421 233063405 644183406 723269327 835633308 292348066 810495938 390895143 982911542 413436587 742427968 498717900 786682244 893527758 969613079 392379483 713368356 835110478 878222904 127322837 583859841 80372878 266148347 55480982 58664140 434703274 943760477 939578504 951558252 718459756 831668657 517209812 649000270 156838953 252566228 770034793 855620014 991809537 996703503 415406998 631411342 849758577 954481487 331840293 995005752 835923688 990828936 240888855 759793670 439082944 688151808 588905043 841771258 757171473 878320328 264356262 362826867 719917385 862377751 691572333 830254381 757175978 971899009 309303808 804796986 603575806 934093375 626018549 644078419 97366899 737256386 771911928 850472305 760896834 990743970 505248553 981661787 843880009 895352931 629723863 806311114 315314529 480226689 445311202 587935758 107792164 978191712 553057890 817971420 112147336 146242181 904550783 928779214 35203168 578858573 976322650 979539485 506439203 963488796 660589646 873862033 320580392 589652852 217185803 438467834 531715962 804477647 195792376 886551184 385563197 742271209 703114947 922695216 927580760 972745370 550101689 814547454 215188564 915826285 923066014 949403187 201617531 244193970 122679892 794746711 310221270 738816697 645502442 797950819 624686885 846918205 305036502 362494614 214093506 962135506 568188980 919286686 267240907 710551665 993867322 994039681 278239590 491115898 4333412 484198806 310267959 556182794 697229909 946771840 594834812 750076383 263967466 773653029 285039176 678909269 461467484 639950146 862451371 923159117 854662348 918113635 857445416 998840302 448070124 546864138 235709053 849793116 456144668 688686595 192733550 426137349 752145550 977858782 665355553 819964700 479595572 798249850 473708558 533859756 736414588 762132681 810453717 914425698 522120929 692436649 227145921 829531513 638178316 814996708 678411918 981175544 816598810 868112101 670038584 776326924 445188866 726918223 440537567 766374492 347673595 730674303 71028217 183360392 136222511 273619994 193245996 882198986 385197628 732856879 303670832 688724870 323604219 668833092 58399896 417819854 659940889 923033630 873809136 976061001 438004953 777497232 167488123 176939990 942906935 999679720 602649031 875211581 379768439 695466204 566746977 939210831 441699745 985484633 123963945 615300072 895700731 965603034 924126 357993231 465049320 774498743 904651464 942077437 908808739 942069907 609537110 934289220 674065410 880093525 470599360 758352677 362851335 817836906 62554299 799263725 995549717 997458224 392328326 642875685 583221289 840919969 506401167 577507688 618928684 652908352 829732816 863444316 648908644 842260063 986868425 999078052 898176339 946381335 957346668 972093275 955412031 959835756 816523036 999452910 832829547 852893148 561099571 882892121 530703885 549913386 939540531 960404243 505976268 912604272 236439263 307649093 133200494 794510501 223778215 989083148 250035877 912698869 481011233 748451529 467024007 683138643 50767863 708335556 254200656 814718593 492481520 695734803 789362385 838750561 274532179 610449121 364929791 413642805 110689938 739748310 6965647 314051015 727194175 863902989 117444501 903270912 959520289 973602448 348472391 462014781 488656287 887371444 673453002 955811546 831948819 877968847 235196279 661281612 754008966 955275360 416906652 683797417 237132005 476713483 398101359 999886316 695507130 704179082 129787927 984774506 804140987 979784270 333715054 418713830 342532345 718939412 110939417 409784253 955172030 961998498 277878910 981814570 353058943 571485436 163837586 730873955 392609353 418186328 78493655 702246870 149109439 806638112 365658982 960572410 533098934 928366949 696072077 718970078 444108592 487037702 899873044 919012185 194039172 802161970 713249513 921617416 646572309 662102861 162460399 363142025 926379997 930813567 115178551 999894323 599925165 636584268 118557679 710303331 939855911 982171513 449917671 650057437 803447955 836083560 896285448 926672053 796849598 960117042 903385655 940474498 804616983 946732918 366379486 701810999 217458643 920932069 316795077 507628371 558611965 832928944 98246570 759951033 960974479 984609478 331353170 393292461 830892746 997050858 210925862 783318929 479461286 561109294 227879321 777902091 356819460 401017032 176658023 958576258 445903181 843997031 157475126 943336698 181949828 187916267 589934144 953387979 659780654 810299193 458970494 575790421 672973533 935354776 375885027 676333016 456302330 732255266 924841945 934319134 688029120 752976134 540428124 999377935 199169919 816062786 860050376 877015796 402601281 902829446 277268342 401177799 426435659 838065571 856595842 887952405 748032280 789959990 663630870 681933808 889898300 938801853 810061739 988545792 250844551 911456485 381245849 413501920 562616508 761643034 84603128 233129283 417643142 916373976 544117961 833489675 345600912 731875355 458372803 840594661 666617084 730257176 742804877 808312102 233811011 577480064 952162029 953849759 867499251 897373095 844516564 906928614 828777376 864302884 820190669 959696855 98693233 172224527 93304441 160425079 24339651 58551208 617000478 645207988 69877894 430168081 257534848 513230264 889426291 920794098 424058737 877686519 198110359 311726222 876842314 963574100 720875211 907359616 818956263 944440189 734877353 940713154 767310997 899423668 784454821 869810788 814999858 973962113 740853096 840058469 701271163 708169216 264569874 531319919 483955073 599363550 411543634 899023826 18924642 42584012 355097841 860228686 37631182 669231963 725401481 766154029 647328511 689421727 906353463 928148566 36000723 401542347 143591077 278072506 748418949 786388995 625889407 920840377 143549537 671163730 701303887 899953777 433957858 469671973 740832094 760166861 2852851 845539919 776842803 932259846 482982647 739626147 172527688 814615240 114544297 127348200 667295294 893940597 774045458 886100097 392433573 765510697 770887377 834674098 945208183 958117105 511614743 512049147 886713515 886899465 146356223 915044279 37878478 69317636 941351866 946473432 429886867 819052263 436204505 732747338 196261015 699755786 930217123 994375361 484855758 495749010 180483108 357089635 986543303 986827905 216445828 833507880 264757651 565961997 971712744 973943303 245053698 890723980 706481323 966294965 231382108 506863409 921224175 999743245 235663639 998995971 103502103 306553366 695499174 800792882 813953570 903305011 220756928 484823310 114337173 540096992 443543164 944336305 906501176 921304223 560946565 749109577 515954507 999653848 361655193 376536133 356252269 957268067 230307534 471097552 201931289 822322120 47509374 110727431 551299552 666268854 456488374 664918359 862646274 875417918 584968446 700992401 688318625 933343291 343068662 890294498 95539341 542884414 223100381 973683027 38135879 942223991 492489592 739603262 815033479 972720662 39379074 545704188 123136329 180301892 878029047 953686263 182074305 490947707 588836876 981244162 231806148 598636826 613281798 910462166 889346199 987740112 183282373 458918068 762901836 794543299 478746960 901989759 48136344 76318778 453685521 701555066 765686091 809821908 3103969 329298154 598172732 636490577 635063319 668229270 437866974 870159677 881693264 969174797 565354465 979619588 806010236 816945309 805234555 891325329 792873836 944199897 411412999 838089901 949293928 993480954 689727318 982922447 22649057 963366622 113690358 138886935 17783008 748311811 618114753 795464435 997891471 998507377 867048377 983730120 764539341 857330077 612351182 801927793 85901887 134923309 762195922 964207407 382328772 881676293 13562282 80296029 940110749 963825342 55752242 384549362 319490552 855302062 37509311 314168452 810900790 876216125 414880409 861758275 292448418 411677042 244536393 479094206 254502004 389364422 799290182 866726617 408536640 891220489 63550242 299492142 751209289 880440731 592470584 704915099 670741633 824337103 425449511 578646108 579699570 611800222 568059838 791884145 407736676 430445666 833805924 963735671 422707505 816091579 621792039 997893685 667779884 714891718 572133127 807963924 904286799 946052550 857817798 970933718 31227365 98826787 142618106 211762069 317603113 910317950 120176585 127163948 443738152 951907956 67644664 954011619 812321961 850683665 987122985 992301529 112266665 964665364 134086681 984459261 733065504 837329505 261345037 944869310 891400526 957333222 886649707 933071062 518009094 879496887 863463905 962358937 737820341 805950632 358018265 473608164 349878596 677248769 561842467 845359086 744528507 992173963 117062307 377665922 363619972 498205923 117856632 478122246 345503373 886252613 392511119 985324051 447195735 839255832 157208815 943084597 639521468 852443799 684793188 700679838 56659733 576207188 847549223 940310686 137945321 811410899 371667118 608446886 279438811 865638804 693949459 705790616 281816851 820176604 162681001 306656061 68699866 239624291 35164471 387463063 369820897 693911973 60333437 804398463 825218656 973055210 234235721 837416720 856224205 932031769 460355264 700957158 726719695 772158477 274702192 864542502 167471762 869516934 572625334 653926588 844174090 940625524 452157559 987930724 972466181 977053177 350239754 575131041 316636625 616872978 239297556 976642688 699515887 803934432 8451083 117374485 228751519 326501271 670117412 810837841 974168122 979936412 6732341 236452681 860029737 986471597 556992858 819543819 706310970 998411219 812832659 921390969 896240712 909021275 645931012 882135558 482032593 737363555 797444236 894573476 876590704 908534340 495253286 613081270 741915381 930538594 967311365 972337835 907413996 913373567 632514769 820831895 85869805 858888679 103489283 818457531 951511084 975518462 529585681 810833838 684769060 750055382 354548825 415269708 810138274 855467186 43611189 706010084 216432004 840947174 633299480 746704642 258506987 720065504 699420801 932693865 557605533 769612369 440548538 726063159 524742676 951102057 80050782 659950031 973821785 990767121 697483763 896727463 684378276 822265761 924551912 967279976 287630626 770694329 131648744 352271339 333642359 763468261 461305085 726270220 426251170 826857417 420825492 614226089 749637856 995777574 778613254 950294800 685624136 996340736 738803730 805110185 433864504 574898678 879507424 943633853 433860392 787917363 214302510 557059900 801843240 940436377 795464759 859500976 32196393 785684025 278538012 429810834 346883974 843378238 831204354 909428779 698541885 996466446 827766530 963491231 616508554 622035720 646984413 679843413 88530677 118948613 277474454 757631780 927644024 994988418 789520058 794757849 330437452 392496797 958800829 968073614 782351060 836104683 820024717 970421136 573858939 684828504 428029451 975350167 573113450 935656962 854147961 972844408 98142815 960780587 738418626 790338424 132305282 487081025 548216637 556990512 292080978 387854253 142834140 329992393 103851192 556381945 471880072 875181841 365501178 393127347 855360995 935983131 760738267 903793872 108531095 885836642 332861679 478631818 333449004 612959573 419212309 642034164 366305285 866550568 821474652 836320425 689536911 930482008 391612732 753916514 462357159 785657713 103872738 434947527 257969253 312561441 235169662 960191374 794398630 870281302 239935769 576122773 679592278 696712665 23323413 483072259 3991775 129896857 459400785 874652952 293079127 432666818 229107278 240747594 601158804 833653908 310777710 695041177 83764260 328189377 238893031 758354934 836259366 930570275 171324901 374002143 214903534 752654968 886573429 998980265 823889320 948625302 325101273 660862016 580003824 915376919 881596946 987968203 965436027 995386918 489662279 627299224 288836918 776567478 515316689 719030570 676535221 752990837 767138871 895080247 911401981 967211898 29766323 952098583 570437016 823797186 842439526 943033232 658086401 718051378 529477978 678682316 394949167 722101273 872631121 957288265 158611936 335732331 332891050 448837507 809915388 889304952 379292541 701055348 777810121 980039131 518570388 881526387 324735162 947683800 611364691 981880499 87587965 115373907 319160245 723584417 838987635 900644448 160267281 780699015 363649678 725684601 850586249 983891487 531558081 800102355 636408286 739934226 554233051 618177491 850291926 898159982 585714575 679913272 599088413 946604500 931474 505497293 424718054 433976115 402954028 740339406 274710198 346672852 872881771 936747269 257901455 602466812 763106016 938657730 530878012 930220342 770708983 928961285 169101145 754494391 549783720 827147853 896229427 976381588 660876338 874147531 800125416 837193348 877441549 993659427 960188536 962761338 719438681 875379449 993586798 998200931 339380218 773841988 413149069 845957490 664139453 677490555 210708141 264739357 177669121 261534193 606029310 736988349 529666418 689436896 875744905 915351822 471555394 724186281 504667905 519516770 555266668 959544897 602621809 812073401 506966679 667550394 301466569 959464589 587766766 805150445 428358247 669731646 698832033 761193659 903054957 935938200 224984655 960464472 295300096 403569260 69418723 104889001 399377476 507605393 580773910 857536673 328110952 423111546 326776839 782758395 437109268 842791177 791204115 936320959 227564975 799423417 462195646 732200667 188509266 814091578 546876857 588905405 315929218 838209623 76095832 117286539 459169929 940277035 318447759 562617899 971689002 973299994 226168616 508381265 686929011 787866352 353040096 375176712 815519044 999092202 358413200 534892682 421012337 676922974 739774131 924376594 571712327 631408709 660667550 802891311 315910573 798059732 162038271 755234503 262881050 821393815 736508828 984722238 949484121 981041236 363194651 532047277 488474765 500669477 586465222 694395330 766026566 846854724 513463336 769090784 784191355 800578128 733885718 915004871 212273616 443327218 315252636 803011258 796065304 906694323 945683108 979508998 851516621 916942301 905526668 942701318 510979156 649865441 244818832 870659952 155374081 930819674 892049277 974036822 832317506 895799841 673398754 967759485 623367117 843524013 884544936 896145696 680655189 842217510 192014086 553924110 848616112 917162438 751603610 795617964 833372145 940430769 588944248 619702751 648806579 944580239 175876032 489954880 609059407 953521838 605386602 631680983 583495740 621715034 381521785 525875640 835869864 992546191 214340263 822204717 974773562 986533033 955058155 970987512 395556161 715852595 694432371 851173239 912758 942679526 599981588 980348606 511442567 723843105 340317794 991635250 103456354 170561434 599603605 969319178 131869898 804016445 657748672 884657581 737583363 745028139 760212646 919285756 320930161 330266187 976525774 995839614 272382298 650755564 722842864 967874318 318959660 750479228 65354854 657221054 15761482 820014474 598395646 735198210 153298010 419684528 995730753 996465940 405007433 889225827 588196237 739943112 654404094 953435714 339828408 935250942 80625498 104709104 283286968 609768666 906004146 936330738 840026019 847512325 582748472 678449493 759298973 991655659 901031558 917767628 119454536 522855942 134612513 848580151 278222025 373157508 700656701 916666900 992554303 992952020 663873204 795879186 113332107 397197929 811322778 873434075 469125376 509499551 878564060 909959879 644702556 727676190 468895541 704842801 64421549 226196295 303597238 589314010 960073108 976964946 3619439 650740113 547176914 739249445 422169665 914820581 536564210 942718747 550989462 836152581 723366088 739413025 901521507 981073694 885233118 909249938 930901523 953777211 345456910 430469609 670094137 794353569 774301028 811686386 309102451 680323349 13515046 678711409 68884591 684134322 572616074 942740653 419426357 955661852 340038021 749602827 678896974 787990465 984172114 995379488 82496570 537351113 766170400 781656458 819240724 955867704 682531688 905080767 665181921 941678443 946603270 955107422 363936265 590980295 853244411 993116267 607470184 818353701 625697735 959388941 486381375 647070983 672084150 883785553 254563745 608940017 65409015 878500667 291277336 307124734 305023921 479533346 585950477 943126304 863950072 922186190 682613359 976922548 384016081 948635271 310095323 423376506 88183473 362315902 958960127 979340956 224631209 681740603 704839926 980185694 648288935 958257419 838376288 960657256 494309005 586450136 967997475 984954670 701545862 898502801 473721763 888766978 965475581 999003371 82236474 429875069 66190616 214973339 287230720 873652218 94296046 457813237 193540065 445177624 160932891 722587117 585700105 717973399 157189562 229396263 817515890 968309032 827343982 848786732 984779541 987363164 66221215 990058511 348145292 875864969 700902425 927171774 499711309 810726366 716229972 932705431 73228739 769448809 204472234 751845719 859716857 867718344 773009981 784773499 84761210 596621183 611066745 826015154 420696476 923189728 731019720 733770873 656391329 885239304 796316575 975716816 833805741 846819542 274722485 321115989 444309408 903306893 960301905 975176915 339975045 936105230 73959562 707554853 22191098 817413264 679827322 711217372 789790069 891288687 7276320 540019092 621302620 907058848 549522165 573809580 621775401 902039430 902905309 991408506 948197709 990252308 884743029 985935191 263021947 860959941 594698930 683189442 877624761 898671681 668585867 870557056 791338455 830814066 596580820 753632240 920050720 967151211 944990611 977650218 52179937 598754280 444235915 688904667 330157850 561731451 337180399 986231529 251814362 565796665 136040090 950754217 855719598 898972032 80240212 587316215 911583471 979488833 240720945 772103583 299579529 485506203 882931361 933711767 635734604 639592863 684897469 757312728 416549856 613145558 797816436 900020595 421490873 771578080 835561576 936104233 379286072 796855577 880941801 977130917 281326820 662366795 196149804 718281695 861100997 976779386 898579681 913412626 424870410 778999944 418396945 724537613 290682288 611884950 538919945 953708669 376775639 992066644 682291921 826247451 986091469 994483056 407560738 692547531 395888373 688367072 272074543 822254388 595468598 859389862 534113001 795403488 792637558 850020375 15087768 542525065 226521397 948510999 730798402 924337056 666333769 748259781 143478408 759802561 557303814 775305594 913896071 920926685 987427899 994543581 759880133 787753887 139490722 172695132 156560438 676165506 564249485 630354222 877458835 877658740 863281526 956436285 121106949 429980861 479308149 944629578 810349089 884731176 88938918 205089979 696765288 887649039 959970367 987342131 658635212 807896161 10358726 655561879 442828820 803918552 425143233 830366103 742297122 884733364 245168764 648239890 300177158 757606270 785828942 813044051 586090610 854036327 747708612 901968393 765828072 986794361 600938727 828409219 327688629 843417483 32612120 355955892 780588424 804050848 493058633 570292082 314013898 337788556 705555955 831344408 955658008 979270998 546770789 551363533 236709905 905186924 778958782 983665419 615412281 830258093 460580924 783029326 981011200 987083174 184868693 593485404 628006464 909580820 471467910 552501044 895493458 939936411 582517233 739126277 662025139 809703867 80205771 109794469 492560565 774000579 177999950 688995721 61380852 587056411 525709134 622061521 849659452 852029268 695259584 922544387 38837485 181584439 476870826 992338923 781645842 934562146 18764601 245532551 287946645 642134125 404813848 765298269 38823529 777413907 110764640 347211765 917712782 952269199 817662969 821052425 737776481 841354610 85958390 843353846 510660563 872476240 102373245 139757144 879406748 992426978 997499504 999026985 631908586 706846631 301646875 786208372 329171281 593450999 578739038 867264100 83556041 751567999 844806861 865076187 147464337 830345893 944120063 950719451 959450723 986910843 841242359 846145442 478092981 690526168 335815034 940742879 711655438 868430838 35556827 726821262 339242 645757402 566986686 782535994 264848041 654493735 777492415 848919065 225105321 616595488 109504551 114376434 351599470 431731739 579507670 704777935 880926361 929428709 201583304 749469554 256637746 874835122 684671866 753875485 653716527 793370989 922707336 940179133 410602227 490154793 479838808 780894899 439669917 817839125 309078837 814747259 791350737 854218212 868905743 933523792 3254544 141915387 38906041 412360068 888726929 957133106 846352860 899320157 100818258 943804490 22822346 113438309 79805252 266970887 593876363 828798588 42812661 348490681 545841756 723099651 101001010 481005046 230982065 553522573 866344925 925268083 189775118 275074999 779957619 965626643 355485918 659648394 113554732 685873590 21272536 573249498 803422216 856427053 746534034 848939808 491870132 574719605 15178083 820406629 627216711 630129924 311435034 391152262 71841821 960912888 241396642 433069359 285803021 579851240 296202833 925513198 502168786 632437996 263625535 873405122 886813390 907166364 501200865 804355225 394720671 904453992 175856861 295918538 86088780 931096355 606177590 852818445 369455640 991630815 814080152 923814772 639580656 896496324 238408669 465754068 800428659 877199352 232931333 283951722 363308824 677530230 990230524 997583717 167520719 883527747 242134647 464801537 958124016 961572089 715222454 956506428 640577414 998484479 205156658 343158491 53168916 755956907 560658095 589191066 238844983 254197853 822586283 950597389 226488956 952764868 437821019 904641689 62818824 648832327 149361235 403230116 972821961 984531934 43242892 202710465 199814920 770672707 836795355 860377469 123574835 408997059 673250682 898579150 522975663 684542908 177517536 768787889 636245981 769525769 131749537 309604758 259092427 679778353 545277856 700037658 577747477 940958020 106211224 971217974 436317527 926631490 608709770 629236164 658106200 668223598 564559159 703735070 933495219 990501120 316185865 366105916 323974677 774638364 553573656 789531636 411400359 580470949 804382946 880267279 747680240 880358337 242839618 509303765 54425268 677449944 759510053 863726304 98948334 145843601 5125338 101009562 134242673 399627279 66850108 329855703 366121757 904187126 255392929 255444185 585792772 756686876 364525519 895684108 207093123 916869370 650951945 906763054 948603780 962726359 943365292 963197890 145221040 568052879 74518395 902322735 38681087 194308284 42518361 266303173 512674106 522783386 940669320 992590114 200886445 970866972 392682639 490986810 904896025 973743843 73061492 764272449 777897827 838727419 667156389 903167042 302778931 630022874 217910893 486764550 70517278 998792733 526832161 750832766 243100517 859797619 260709287 928819425 36771880 350379317 832070325 936679414 5016456 681051268 547220031 987803931 124651891 888490108 94387645 397685242 383653099 974979976 237677649 644681726 667573105 888496236 270045872 850230365 872197893 919605373 727357281 884927322 371145578 848617739 263714667 666860517 414415965 828449083 194430887 652722010 384259828 608850338 746030067 759489354 461984004 970950641 157626093 656407222 424474029 734445684 738921032 809096348 719201036 901862864 417133462 852437205 55653439 257556434 108571453 870716862 293443882 789516797 831155973 964661254 540108992 726365790 624500785 866998165 187968944 566839985 928760717 987589713 374779632 778790721 619591672 947670071 429941849 645028638 530636655 559119706 928204081 942106158 767186629 940549664 911919132 982433824 290013235 304935663 349617864 949182596 171347475 733977586 769715605 868512984 417772790 610854357 155663463 656567506 841604262 884645766 649009020 895927742 535508334 960614515 296598019 299565054 671955272 763117189 665468107 667917144 221238658 279594970 611580881 833989372 683495898 829851685 772412997 784788863 778634928 913404393 600479712 917396846 930530709 995366082 852847289 929041871 277825268 593501633 14392199 678748531 810037347 855734909 476836120 942680892 377516747 978244989 58617129 946734038 61445113 257331876 687142386 833104137 531100128 669112237 897432035 969709499 170481550 251745238 354183317 469291902 747831494 831883266 78442082 175840550 414892120 471026253 753703854 809798197 938697368 978640336 101963707 220639487 148698442 812541931 345614418 433239150 151184939 878878400 197291965 268897127 210001764 908752063 956858633 974577931 587735482 604025428 712699663 982029447 235829706 246911850 968772307 971808844 567125157 803698204 953563808 978974777 582732097 694522431 840720864 946422327 989829270 996862648 725419024 949128635 329105616 730860150 199850069 949765650 600338643 951317891 460225592 820736605 677740107 964329002 780883252 817000053 28414660 131008775 805270930 965220634 662766173 865226504 793415192 808918522 107630908 728555269 212506988 792562628 753119804 838762815 572973671 913632468 440104128 600990773 925333961 938995934 373543220 727316216 878487622 985289436 89263787 415405666 552074290 766839327 603381406 699774130 6150472 373715892 791678454 831005443 783167666 936099408 942509129 960315467 331210465 498169659 619740325 790847698 539461223 632514774 699168657 864325817 85180671 202851746 536470100 591276930 169753655 925824961 514343154 975400225 148595974 667526450 18058595 879343481 231369273 726781249 860676184 997930417 321392340 732913476 542615455 685050105 598173412 636503894 197873603 401104434 878512669 954906050 210099589 654575081 455890457 805313798 241272460 970582815 417939100 459014350 749446316 892579300 629621760 816845270 879648227 918323991 401816260 763111732 20403954 39190424 455370454 881402292 472580582 586515498 895557835 981540740 423273878 771747043 869003381 996385684 469460055 880679615 947804938 990554096 122593677 331617522 762836741 940816585 475084667 540641534 948127648 965870670 394036129 422582521 4927523 131430131 51654351 473475376 525501590 528626147 872748894 941717990 689317213 739618053 378778911 470293476 142236856 340302269 389000020 402850941 697029168 927492405 399544839 692185495 513776583 725028826 415294807 605526687 480622927 680486744 156681720 229805954 547218621 801012959 212283649 616105183 315772073 775924371 344140005 485475003 229563973 625018888 716306613 995986694 909417127 965511518 476449890 557140445 633732978 708226671 744367970 910729188 574885298 943037649 413249585 871645510 806373462 820566858 764854231 948874374 650542645 822407123 413254657 508397838 378525918 407812771 938376153 942021809 445120888 794890711 495481099 823315448 879726640 916785007 167170659 422704174 289233173 378373934 343346174 385176205 585296766 849170863 572951769 999608004 90193458 94201551 49851701 210928643 869397944 873963574 107609017 160391246 67665034 820112353 394128503 979745201 657801643 704797354 705204178 866031126 734364147 737391501 50657718 821401599 446296401 454193394 199780071 787334544 376483876 786517756 861944151 944283310 740016667 828129549 979748864 983345347 769567701 909282215 231251546 250430811 768088504 958505449 160948550 555645769 109171908 541686666 826739460 851571435 276128335 817329592 77673601 479767674 187988628 381697901 318852985 830048429 368163180 845343331 847544072 912131742 349830458 618583695 741901304 776176662 760582570 939114763 553470494 734692945 116165488 686155487 422812988 680645789 228902333 893419072 611504775 817072435 623457268 774188659 102522047 487964705 247653466 456231805 226567426 508816025 971407920 989770711 81968472 709100694 662955383 935220665 645809158 937790288 403582660 981743497 163398244 744804619 735324341 959582685 426898625 460977017 216651451 719960934 629635167 810706489 996624285 998508574 254256909 906826074 908446130 981143711 393347627 918234104 728342088 733455896 122040228 850714281 690705368 883798881 847755087 880815115 998713707 999861931 536390073 675708863 562018750 611385964 423894957 496238519 223191628 814827286 886687189 899925837 349600595 470767756 827378725 903765103 476886290 765572204 638367119 889463413 760292949 771711935 39626499 500998372 62206772 567732808 138818245 562707872 792216872 943145242 774003035 989161809 256629025 547191452 458890466 712292366 505802248 812620124 800655315 959303692 894092181 972530307 425816834 580847748 749429237 802100883 696373126 807581330 691465757 716174759 567850530 935775642 24627228 28221139 229102476 632148367 556814108 794601005 819303378 873312915 941755494 984242654 720815541 743567630 149769185 425649400 339575215 933982704 845487474 867991201 73092627 612158682 150190781 406837005 215894907 396234594 165891467 976790239 504840055 991504487 773245976 971917920 650209784 721609171 932647507 942513475 658296180 795330376 706310395 915450581 475831276 973440533 705224725 728000938 60222453 585813375 205907343 823394597 424880601 705832251 310379679 601805562 847876847 872023340 558781738 628478429 660652633 864918817 945147529 975917984 205674528 475331682 597548472 977870001 97651216 871829453 308431809 731830826 420083304 672309923 582173655 818155438 489373034 824584985 860068609 956534094 904936543 918864459 249696712 866510580 6289686 342916015 140310875 755138475 461649926 714073727 874780830 882589019 414070012 715203168 876879049 937687454 26245347 886563470 335336803 449339800 506978344 830321531 452480216 773908803 403147607 934214319 786220963 924952699 860620932 961874956 335567602 706444065 845000260 879857240 318125172 473395166 632824890 781360812 716533189 954353621 950268135 970916320 896911312 920986942 821452227 836101916 677870575 743318292 527492333 800806047 191722322 466485274 372972395 666578538 943423690 949227124 233089374 534504815 777730853 796299601 965948239 991731141 338321362 660500200 937469793 954667270 965439889 968123319 861519961 965158040 924042931 981238955 302333333 963908459 892038340 932092107 861598137 870009215 643445009 755033947 48529871 540119452 310672024 681751724 67639947 327767679 442203376 956528464 90812649 125499371 965507002 980052342 94550641 745273318 906276443 954871918 549314323 920218285 680048230 851667225 302974255 599496474 449520283 590945279 306374718 708099477 28877522 303341553 647058850 795949556 596018714 630987363 485952017 689457821 554687533 991301447 109416288 370768357 748514134 832898993 788539929 825057043 935995714 956603271 551597429 606148976 441804738 888901613 544718239 710824316 254801838 847613490 354175983 857044672 900117895 904475592 43555053 81890780 465068417 855091763 540837570 678919784 84726436 535034936 729390120 743793841 747322821 951670989 579752600 774144491 143803387 492139143 912706633 928196555 477283176 740363765 713249480 941445136 362229991 524304823 365224728 747387693 553773526 603521021 559211716 677068995 13037540 360210347 548625689 836644077 227180344 272764280 361687423 364644081 602914093 986700363 206738396 861241493 965879412 991419140 31499305 402858209 965368468 979876140 464843885 835761303 788901432 791853192 700044674 878351478 603625758 866645545 203148394 962008723 492631563 776984674 621812603 663164533 56976450 359597246 523618133 528131532 913889971 988685589 34914702 363390138 454209520 714166802 269649663 611558469 743169720 932390505 92032814 609118937 74913824 112892012 248907158 817241780 668457446 820804377 790562602 917916236 11629065 554653692 331952104 388260661 729390445 945066781 807056956 878815649 629031171 962686890 314089562 550755852 891051576 922510637 194900684 457939763 804682183 833969487 476646397 740466171 691596077 838414793 947633004 997078237 417312840 695392711 597446811 853471450 23918295 690429611 625485988 722501422 229109919 302211161 99909049 201048965 918630975 975309097 940882940 962217565 300209376 333174096 86493839 572967759 361604817 513308076 895208806 946474046 163059742 390555787 458329053 692702395 23472277 225407878 134403645 160440896 882733514 959180193 577651752 888520219 187401750 842689192 599925318 621183707 43393762 855831106 481637428 817270753 629592015 829855827 965147895 982276955 34408233 211395332 453588615 494707156 932722649 954583414 584172498 830695379 603488932 840968592 151563570 688505714 902229600 973921399 728300794 855525760 119793723 476344196 879494903 960911623 74956906 185719934 67452504 703885507 83465755 359270943 70962470 613063014 428558549 958353090 251568609 787362014 399017039 578326015 590402600 944586798 30920113 232818795 301153820 303454365 537642326 560706081 605391889 621403133 186068951 894492772 654968570 708509473 953836602 969841902 383021100 685558600 28392153 691099847 274740539 642437082 833740210 939121599 37628575 354548887 920838435 954677491 13687020 952662595 922599236 963312422 48490558 283684074 748360755 812740100 994100565 997447173 910170176 971489397 827469632 977251510 795848228 830659260 309640525 449273108 717969629 906740597 556399484 975590939 130715357 742703490 24494053 451090840 850152346 917490892 293878761 789351788 238369697 335654871 895367914 927943782 81421492 223062353 607540967 897469259 620539288 743082434 876617066 894883292 406846437 869311645 333489905 433714307 88700835 372916415 521997586 859763062 158547835 460902628 961702271 976406178 891896811 907139510 722677502 822235924 96736815 424284472 328113723 380639211 233567648 249637227 783381616 908293423 633628413 671409593 256386920 998346699 955993856 976844209 464065817 716747012 68951157 405071849 71693282 309068167 457023881 840558873 878192159 881654568 179075369 261577384 110869918 510598341 543344196 729106514 700135135 758412019 852424618 935106957 205266703 379883402 114769554 981705849 673525016 837416245 808025812 811042976 682079051 904534960 937990458 993302190 177064329 244181572 993290168 995011733 498919782 878566786 32598963 43900187 612259567 815237696 379533435 916862350 828270527 901825006 353551835 814499717 68433332 506675688 376078685 627680634 365276227 835843377 721449554 833562335 39642082 918621446 705244144 889998894 906624640 920348571 763653288 794397212 86951731 396778727 192312461 555737789 573352819 700967943 179466720 985604057 738688113 880487032 390348577 569425526 515602245 725348330 176966666 880125691 141278855 854858597 220174556 884183743 972417472 997487215 955346663 955721020 805846269 877165421 249951049 676699338 541419290 754176395 159858964 220865947 692566087 734898818 473756555 770081594 511854344 735429462 480326705 602150609 280970546 372845657 924060556 980928875 350147612 508111266 215148995 601759898 922246454 998861880 666591702 701393381 607612710 680899125 851578673 962772296 79993160 441670687 169731703 664367800 736237423 868275183 122271189 815838851 80748074 106375680 410378543 605939619 217505909 322683495 817121914 869149652 666793930 729676396 406086355 598578948 440129455 955629583 82165521 549278211 774357585 775129944 63879354 733559093 2395410 251376091 237782109 571127274 891400533 985079812 219484493 479590833 822140705 840565539 625173647 992612521 29731539 749663572 714894673 843869572 920136022 957796314 905986490 978145718 907262778 949622397 290120147 303335925 236284699 607687838 241303686 968646376 39551147 550047321 6161552 269854288 350076589 903651510 477609377 749514115 624436940 784841937 427040487 698614241 78967130 891774464 1412830 977547748 913212784 961408928 540524603 977550219 162018795 464022995 579863809 755017178 719754381 827662942 70056501 457497442 296707802 862713790 857628751 923888759 135821542 848039879 349961620 583551787 658296864 690977739 128970499 629080215 88131367 933650085 719367402 803297170 300864198 524361405 887916430 952024722 805320319 966537472 800846235 978550064 893808856 895713504 982961922 996857327 253992433 374440135 998477079 999845283 251905779 492589000 888705412 971781665 955606593 973121097 888910293 901051114 66130610 596893120 302726271 417868587 494340619 605107427 571134192 665858887 625831136 954411449 375058658 545664211 464824773 626680017 393555093 397063151 559451353 704172214 268646861 649025999 519096738 976869391 839443155 920576352 567003374 900366684 138903113 570239359 557227252 672406851 48266864 890595746 193545069 838498042 422893232 918799051 814246488 894000996 526737258 922104667 926027505 945084028 522462121 641636540 690062595 823266560 775295624 796809404 404412626 821792343 935822150 968979964 827750412 977744010 388810274 719453770 395060872 724213981 277491158 944435372 871801043 936769456 580696969 722824011 332000560 532286404 376359969 994832472 261838176 691528794 660263760 923622128 448069459 683257447 891476249 908628070 720071527 749298909 865573428 882219844 677327734 790460720 570618656 808976483 721490471 766229873 40079826 620233273 44513027 687437746 185074093 450019502 477755294 778984298 446660683 987975110 744859155 764837538 108624235 671134157 276606065 639987373 193147804 288286903 711226635 742954722 361147529 678295722 966280331 983961816 287188220 504243917 733437766 946280501 597967587 737208097 469489438 709754087 8368371 696830315 223803304 491851366 387578317 551532817 662172967 712781996 294789020 503810906 335249153 848016668 211876632 526855464 893226290 931934262 450322068 775287813 70815713 965580006 48757689 92902530 909720936 984672419 157999980 362042415 204226869 213891253 882338692 967680209 95649563 104635657 821206836 858206501 837053738 855609037 26743 213040942 699479298 872734602 268172545 905584140 197932237 917151063 320927802 817857247 649395297 784256425 800145421 802058113 296122568 590089890 211257386 516598485 192739303 414707670 455226193 882951729 223989189 277295367 569360207 646391709 740451090 818991265 77340702 722325759 311118637 710926475 481749522 637098797 42501693 902742176 129171007 972785639 129397583 386235384 222273967 464164896 927219827 942095718 355522738 574124395 87863865 976993828 396323781 622927427 381806511 910135263 933251110 939139674 790882110 985290129 814377112 994817326 318756526 914054917 300281134 323802383 622421528 978035404 704108387 823891747 984963553 998102432 184906010 879035858 212827221 302836314 162808643 576025986 884756999 898506038 774869253 865883109 713561914 837607346 48264692 248291780 68555074 354852494 45912139 90963300 795483087 817787304 568919544 638215017 286320088 825305698 620652809 694892273 63236073 317788100 539245518 653702225 474905981 620996694 439006464 851703702 138060921 321156559 101874597 738547737 899899016 899960534 637876595 663374449 362541495 854186842 71503319 160580409 678787043 686095685 60146181 509051159 468541111 758930341 137200595 222824721 117487292 548249624 276779833 558956507 43330451 224810526 585841925 682948384 381443517 415060339 487487817 787192214 47737734 495335354 315912397 498676793 638985621 679137140 101196178 482251201 145533746 204154957 440025916 746446142 700914034 776918838 931369313 943560270 785834487 955281048 114604543 511611147 454301750 615635499 25196425 979575508 877341969 989656614 931277666 971206309 120562535 593796155 898080637 946175057 450388066 512271740 642976069 969015516 657837431 949455236 494221015 511961460 874721141 985264232 39553800 232280224 731431736 804951729 917738951 999408944 352617038 848819723 159978682 955005979 606454097 623130321 527220249 989199316 37701006 54106010 652618931 909085951 441919886 887527032 87570315 374235268 398836282 433036381 367613466 581184745 17771169 676936151 802844975 926227010 708949538 900070247 221148704 755196238 622495325 993843394 50591360 529735396 735207228 945521768 344206702 821763156 756978514 850909281 293697849 895949835 844993005 896479735 50791744 786313064 512759871 824794294 196814626 359994938 611377119 789427177 116442999 901467594 380631305 448194847 875313770 982996545 549832107 670330571 417763184 846038506 60990291 551383544 981441580 990979801 110199681 357909309 236855611 261229537 485309018 939204768 941980420 982697849 216428959 854618250 685314368 723186107 701589286 961608350 624476834 902727274 123372676 691016627 902614769 961153506 301348134 486519662 502996245 579874328 171071611 647040178 681229766 893503195 74357208 186119862 291955340 578722861 12473120 822225118 696671239 766469415 9006701 727494089 59055533 321839087 951411018 971433648 616102277 698470497 55310879 337723882 396743047 476692243 719728427 994445487 717464396 868229639 143070496 774386923 858496272 966849003 68713929 394950281 681074293 872870606 481545050 831835915 883244579 943032010 380799264 642274731 325362648 838262261 396164828 791201868 741616176 812949308 440632836 840252032 84298905 455897787 846632592 993261779 548656357 876131027 50540586 630898010 404806984 824180347 239104 808637717 615166143 670980521 874379085 889308361 72502649 109824884 229747545 452712202 852180819 970077964 385524826 429537479 261848137 471677480 498157856 797683083 534822067 895518146 528947778 971579837 468467306 493770222 990300741 993409468 692197441 992252197 735548813 865918185 714693756 979498018 648625604 661706823 866828878 893209814 702347843 784124498 826014869 931532310 315019973 741416233 275257929 908794955 441240501 840381026 984930403 985529253 816222676 894512119 422241510 822084726 261820426 757866806 709364221 713039935 29515644 937912581 967735366 992711573 758999838 958319843 890224284 991965280 304292761 783813863 567826580 629861126 68763939 404371732 941363228 984196890 9321901 189345566 224107354 482783379 578834060 614316580 544087551 633180896 135710060 207237522 580195901 945639836 332128615 817123978 597799700 600038823 854381709 996001455 877179510 978888507 453775762 590710670 765058250 972064709 186745790 899937604 769581872 967989362 434145044 512610570 718230248 733130608 22321684 767079991 450799136 646878605 555562071 986934965 163685512 445829062 818698190 928511419 843607447 906388347 639745774 853737149 916798911 981808814 962729624 992580544 620112208 749615943 110330285 623218352 302992684 492721574 212827188 801140128 210251917 440246869 859395114 868294204 951986825 961799285 423348561 478200482 398832270 649023000 60797561 268553185 6274764 495549910 895278252 996854995 405696987 709325970 454816076 598263250 892818969 952263415 183369153 561087375 680088803 965469214 346289955 914963313 606625668 920601626 614252382 811189922 658032766 856424681 922846971 986849901 576765455 768672265 527983468 811035637 130238292 349764311 81448423 744519396 530175448 707448621 65510253 548429385 961022837 993301939 96147602 714532466 428905057 919421344 222319224 620677106 788401092 866310267 829966839 922533048 94787837 207237537 424439479 649690039 398352541 766568475 951559515 993416678 227029759 560947757 134080287 460441857 17888148 86383636 566018266 897578806 143706350 619292733 330142511 574711721 605486714 989588801 473776463 581946130 342278829 771332037 479351051 939985820 6204961 920968638 457297906 510560112 372050563 721939979 705537061 873219857 268973252 733006177 749543237 983362532 908301228 990390511 561848761 762918437 913336720 988843048 119798848 779196518 434132521 824277066 500187963 695707599 659551743 725449134 298587294 713962311 767985724 874270161 475192804 768569931 679933599 982268533 812239229 830697052 868634462 997384056 872596871 878595008 397103893 668790021 780773069 881957659 764941379 933016653 666217290 868738136 665591936 885569971 22871773 840932791 696474394 749884403 568949640 707626136 447981164 517359379 135303815 688096121 459466180 816645822 854519599 915014374 57876350 108729807 925117679 994079076 206679236 254465668 739183061 859117228 976379676 996208061 398668140 954221835 107482800 905779680 552718966 689100315 548361077 843189427 588871675 994347184 185907005 940508694 62666828 85791010 203749644 417569985 455960065 632487640 939929103 954504678 591208017 652413463 417119833 444796531 39509164 356055621 51251203 252080870 314269208 320164300 127790944 963558730 490853646 789643425 532325644 774806210 264901316 950040020 711532378 820710469 905665792 928076845 164715840 803788664 42980459 214373687 507877668 711042235 456777747 655436110 574662852 724870173 595568766 983369288 591906661 719336651 47783984 929591649 867842855 950201713 982688916 991843839 283208382 658091815 321664995 536671949 391234744 965877615 376112150 385096693 983364253 996587301 981806847 991475131 444102716 784500266 615254614 979775053 104450471 794808363 977934226 992844738 150442486 997806082 124756654 330715347 109936184 566945712 181245028 347898947 530272123 559253588 329601605 378348039 717260184 749391748 732356829 961192356 627711686 817456997 236224697 835282419 528492687 744255890 581179951 847163352 572511429 884055594 197818316 966236832 852890732 981328597 759215898 978969359 310480442 535581662 324328722 969897134 599901614 805985952 579879360 976965608 180280512 437699759 934382483 996768875 980055497 986911501 652573897 870037837 405360523 664822302 334378635 682875741 603635340 753569716 609453804 783431439 990148249 995759731 128120346 595638018 832149077 982190083 880541695 892505122 929986141 973264427 550104172 936736108 193044820 785457901 487604338 844762141 474967185 494807695 696091544 704263656 198367920 317704532 432359883 471493714 266029081 512561674 568639186 842562200 178592175 726233012 444085975 532196018 775122420 984746023 666965210 733696246 204948321 412419977 118258461 845035694 507723464 858185256 953480514 989823088 412019919 621040169 445577256 610306443 400425549 787070442 698680106 846951725 93056128 111930130 719318221 965792373 609096948 752373579 325233884 621755729 506513829 630907304 530114814 671292425 664841905 959853707 562640595 995548988 392782084 838658299 232182316 925810056 628629806 817347366 244921365 523992694 789437772 985854853 161074376 949565908 309492174 353338215 731822259 849278562 350899907 638117097 810104750 852164956 431916644 694698690 436708185 834410132 126382749 799377541 692953175 989965801 659220007 936912787 341094543 930448090 711544323 762461223 95744606 238446725 614618578 666912143 265632933 856135007 446538076 870855258 925955931 996581445 70622194 603591885 713600501 899631795 265026423 484339665 181581334 401786740 994453668 997218592 768910307 938714981 801668137 960902014 889093193 929295675 186746410 663836605 591261240 978366470 115159975 852212473 408812716 598888825 234495680 252609218 586503173 766263759 571316515 797292497 276613076 694617841 662738247 863433658 3417464 68540080 687889505 724573806 388670845 667758166 794026807 850670298 272476513 818638657 73649592 88386741 391318669 626474525 62706859 810503919 980296895 984421305 633796710 990453826 129532062 169568092 84063851 363897572 780433956 967389101 999663529 999792586 863282451 992807595 342842054 867401221 130262995 854170935 348817061 657627991 553210710 960004473 744379990 881865036 156936416 713874302 947946926 993040576 968257668 994902724 320426602 952432019 564190388 703244828 170509510 888423195 1202195 316800081 292601464 711783906 332405259 418220090 921158158 979811454 222710091 564334191 826432844 862500205 734429001 916019033 274010199 364835069 147754535 151354933 859927408 947928195 669309471 789008115 879478236 985667658 225984440 391237670 237243688 947834511 319954439 444962689 106995824 268249144 796199167 874990080 758877879 994439501 4733223 635786719 248171148 944503528 738680452 949277617 873615275 938452874 225503174 816785908 408253811 462027456 653158239 792211040 855690907 966991456 540820552 579142730 13265202 494265727 886288557 988401863 53445802 608268473 951292699 961534486 991624516 993655432 918713510 924173537 415778524 871463173 62336159 108519486 398649763 483740707 930123192 977511373 263946244 284043401 730630049 834442081 962395413 993093521 182422513 511063194 612219594 756713762 206268807 247945908 49847094 932261351 83289735 833392015 586495018 936052420 749081097 998468585 258611297 373949082 519760341 955097781 851580590 864476417 530833655 571921902 872268019 923490649 718385477 760129693 352251040 632891520 404614012 931139321 50779508 244019050 71742878 169299312 116147153 604433222 708992543 759061871 5273024 85680028 314599264 750507989 159164305 910999612 18679988 492377665 870504048 948813086 455960822 788234052 122617268 835984789 153282314 214817627 549805113 674207828 724661026 959427913 932000484 988084363 323046624 857459805 273248964 445655862 305333871 942394472 650537828 719800600 864221575 920341914 984986672 991633964 766974210 797239789 955547496 975463417 179617877 932672937 996604386 999195415 941054571 976376647 271425936 879913198 521646379 544500186 656248052 988419096 823286506 980838440 125721323 456587595 310880427 679188576 692853122 856718223 155219587 745665110 881133683 947082257 596729353 853751933 395022080 472087400 345715208 899004635 913501257 949439646 25803131 537571642 372148646 561798400 479104223 685683668 91265942 875545087 506927333 796531853 405911531 509778558 286736781 415657058 701204031 797404234 622414009 924271462 468392471 558146537 394939376 914606562 400269936 441842943 189227403 568108974 681225903 946277269 189314022 394677098 593711397 870384870 295752263 335499288 851012209 964797396 923159803 959392919 132748302 161985304 649716327 986680057 303627653 922023910 284157386 513214818 742068353 769424674 831963974 835957564 421312006 730179305 889033153 947586601 258631958 352498233 790562070 995222750 516460043 767584451 602487807 819976846 774989431 973180926 425334522 666246179 286984616 425562696 526255933 834554528 375961846 536241100 29324781 139964500 432934048 913612106 817333236 854991944 369199999 517073323 828935726 883100928 894219208 900308829 566998324 960080111 351449832 603304643 68671630 807991163 278928010 950932436 141163146 396496959 621099399 774949585 280318062 837745734 686464819 915334096 507467055 831594027 299494938 874861248 137646975 619575317 34119717 745956901 661165936 729430787 62443930 245110212 315009033 316884493 75153665 77806148 900144195 935099851 31733369 92064843 148668897 726586497 755902360 805139825 780653896 858327416 412634928 614421434 479926370 506402482 821761202 864871192 854679672 910574426 726335637 943298693 122579975 975584944 449528068 937714905 170918472 991124417 184588113 507350977 474871488 678446422 778417149 812410322 126885337 976257765 717700312 868091315 796532375 966455298 15934042 706349103 189173545 723802968 982447189 989087405 609897396 737809647 180650856 398203405 703816546 859062651 472990363 753486122 186592118 918262373 801166134 914714801 352058698 463960306 865294190 904795369 690874522 728940064 577389550 983922958 799373497 831049441 349969479 757924788 270410550 606533425 454168795 754233232 469616921 640181608 353176322 959933641 381528983 690851941 662348312 883245211 843737317 957202659 346984125 537767336 580529007 881639130 444031563 780957181 922909929 958924051 478620305 483398365 684185343 776715225 529111267 597919079 995607615 998489151 62503563 865482980 392411243 739474413 608021670 832077787 103023448 774838706 304551456 410138525 343205752 591812505 818018169 878875528 646571156 800563840 440295904 609236526 679237011 812203312 448899746 588903220 558884995 658144480 851121531 919195556 473189390 719096554 960998152 966749330 669551174 796565036 846952865 886017130 695810412 874108541 865062033 952444713 828868223 941459492 677044815 959431623 681963223 938897513 126540265 283621381 335773885 393292049 694511212 906957895 102407435 772270001 777770260 887562344 627028954 639742830 455733429 864750157 259670891 521709419 465791345 984188508 434105828 586741554 552196956 795844896 330353171 376324643 539758334 827197071 578644598 860245123 202763212 516096429 853271653 949347905 755539499 763887749 2827912 522296861 508544619 971412388 527288438 798064971 770870626 956601067 943037652 965012522 448100231 693156001 369725491 802751296 206431697 351449099 982322078 990718461 321948044 814242819 121713050 306558743 552147410 959750568 271759188 597876304 300724801 448917863 248021779 249714902 676742226 984718102 239009782 427997244 42237682 342940704 866763002 929868449 658061008 940608031 860779044 898164335 330901302 725974982 491789371 943161189 723502977 784115672 49285103 614563191 518030173 573550405 711600860 941365197 878421798 958371668 911341638 982699280 464210828 927090884 278928556 347351926 132351021 703566575 400854511 590340412 259878416 666687810 579434163 738628543 728947771 770478536 668868990 776181272 153451576 724670315 944243927 954679836 129874458 812371615 584135295 953323253 125378913 289490394 578831563 901532322 958773692 963571040 2274504 722152128 677991449 821407874 208271552 253507573 554806301 712185831 847911593 923890541 450367200 583393611 517057810 717276442 539393898 665018674 371851573 685784731 276858545 292181523 78536505 823763594 188261759 369407914 605039876 997020010 851411733 948603541 790860124 827000714 563086890 657002100 557422657 901870097 446747298 515488465 836090021 910840378 587992267 884270196 246735864 951414071 219617926 530755202 732104473 801032058 162033114 674879431 656711769 837012287 662547451 806874883 890601058 893749842 892710415 961159460 516298893 906159012 323069560 709873764 689799298 784575178 403985995 964286086 344839413 590225760 450220984 453812625 805057971 836867446 498760232 956208376 920962081 977427296 504003819 708508093 736258864 865201216 269166894 320868944 871462451 929008507 317259426 601719791 41009394 386442235 637312551 899060405 56515490 928507598 117039535 122617779 370989405 886420735 879905635 908873420 286094596 646757246 404779328 975850960 796780319 975233709 414568781 475441359 707738641 871804244 502624256 994719612 917716417 923631592 373040753 618312798 180917829 205086275 116745425 747131572 838455920 855725419 17652901 435292748 715719605 977870545 867682903 963988137 66241084 867390090 648755401 810630749 548046459 973047838 104944968 807438441 169533137 598470067 870920520 946596772 206564174 635579908 191835990 849175316 670930582 783253362 437254413 562305478 780684828 882934726 204904172 997885390 444423900 788494030 566028769 611893749 84491429 487693633 915679137 948008970 819779793 896416230 808995338 836274570 582294031 774017753 70723598 964679934 138886277 275135086 355683988 743886300 763354780 860932790 708366395 904853840 780784633 825024447 916470688 964683631 983883844 997752807 670367107 683746989 803314563 894623443 634033366 776907110 868851943 886320453 518867095 634985774 40946383 700329514 503330424 897188173 807604094 942567200 604083237 665752693 970365250 988313808 760388605 797454246 33027068 181142989 576513009 696827670 186861363 254379595 767412977 920891517 77767377 548419124 805884639 923914774 934835026 966900017 853994530 882787513 982422963 992334165 894213826 908469138 562906609 784440898 873232717 998196739 806766411 982334914 764026571 832219331 162032040 230347574 481305694 859314960 415439904 623254436 130084577 152442401 44407127 648885362 880506259 968359623 134993105 406893073 100963849 714870351 94831177 628684038 747817321 922599594 839991769 933956138 555014128 869035628 682507830 730604165 141443601 916442002 18880770 108669724 528244069 976687829 832707357 848304641 929263334 960252638 227579222 800515721 529248535 779678141 204849778 857201116 154457742 968839049 741662946 885336152 204796577 974764558 354852348 821626222 318890544 722087781 214893359 763206942 35686488 448101767 233874231 945376073 215200631 876941523 514429553 664175860 650755660 693309350 818429403 820763148 804000782 978189164 983363020 995271494 58954092 741756141 538097373 807467643 393727034 396924023 989386261 991922499 944692834 995288370 129727578 497046931 830595591 918504933 259687453 313747310 111313968 887312735 689792971 794723139 173911574 227199671 539229400 887292146 853957729 906722226 457025265 744830981 841862599 961889375 197225335 783346355 624801624 999719700 643611920 895064076 154436165 885299400 764608954 805371539 466129958 570715418 212144145 362220871 991312439 999950730 306937424 607270843 484104059 870236154 40746045 141349630 319310798 388142195 222838297 614153396 869363881 944218731 448732357 896455621 370829016 501498831 360043024 364522310 977427028 998650574 362373633 507050748 714238574 944112410 950020002 982676534 721786949 817290763 855368070 861299025 209743469 504054904 47903112 640156475 135731186 248886254 646621905 843955541 870812711 911551871 226781290 885863672 797594875 855530688 279884472 888599647 404842425 765631485 300708688 964232709 758985920 903330157 309436851 484546435 569793229 777211573 364238112 771867153 722421097 763173059 319371290 702966098 795695254 833423063 769669647 834481927 353468230 963993443 934167519 960853007 90798104 192349507 872946440 929798740 795178577 824745725 482898238 856558139 26535399 732813236 122998599 828176947 737260388 835086468 424616154 978813174 533571369 734569548 621390530 964214509 807803185 946272957 888932834 912387722 815713464 908450011 335381040 679796264 749959029 867139414 343702781 726119823 25893207 49119871 220348651 454904532 237464978 977306650 735550143 812522833 313842837 776874964 829202382 886173522 639625832 873560781 573197144 904160420 896237074 933825789 982495982 985174872 643117545 748850524 866834015 913789802 283303944 624672011 675479199 975156154 861335146 930998347 242256947 530208707 822694056 936961400 395854179 788408999 965711555 976666610 563192074 945556663 774660177 957855196 987605276 990169850 353296201 505881508 359464739 585721261 964016177 968754498 971778984 979175713 823827953 856348509 653637508 862966829 809578530 886465363 751507340 913366167 429735686 799927223 942323141 998556796 467268794 571504432 492364708 799594453 659173896 767778629 763550194 802054725 953961557 959113187 22618888 967308993 89682926 462624682 83053432 829348435 296307550 570940528 331838686 392888363 840716566 841605361 680469909 843146616 244256591 716221306 385548213 466136494 123971775 802697404 72336949 149304708 293855906 993732091 369159333 858963486 852301332 861795434 256320200 415858467 968963516 989536200 764211930 958048850 704366140 808147014 403078222 870393642 954564220 996475716 596615909 949187370 638385350 922732645 450747490 727666008 313043926 610645307 389373542 788338377 922600314 987401287 796406770 992870271 868000711 912399851 408474841 858287261 444150998 988009070 435850356 867552698 751386827 931725268 30766218 624502604 238783800 379093453 320630282 754136249 975196395 989022286 134093343 556537688 866027455 976886885 400570725 557731021 307109401 723261025 451900430 862217721 978278981 979357044 293450268 375657158 720452705 876535349 994911942 999726880 680235162 863662228 36968626 115709475 499947243 979516551 6009535 127715482 789993219 818919576 969940484 976211704 648944687 932146706 909985117 966960974 330785526 602122967 358524809 905298735 198770416 443351338 959193464 977281970 636025934 802487524 579093899 654576427 895668583 981766867 544130326 593861475 687091485 806678410 21553336 103891788 289285715 532059003 476662004 553699615 567868430 992945810 165039386 600243819 485208222 843964884 158759075 888098453 772354119 929527877 656806372 936354053 352335921 605614561 868467236 919628837 968106172 979336030 754334550 939531754 460556048 545615258 673174547 871671690 194797283 596849077 489516419 935585408 568822958 844890274 65219455 977145950 209579240 908581378 625418268 784729637 801496284 831087583 847446386 999215378 166693871 716262005 618435108 734968982 105002738 708698993 647630302 939968344 144572710 292140932 806342624 956878357 403805255 929038207 270386810 895990098 499474663 804101675 30111226 224435436 815305263 971796971 938397030 961830760 271546047 647229197 632980315 893829447 453145298 818000493 531289718 921638277 863180924 897995290 94478508 326405140 55894124 225835057 43863182 265954626 388704845 518642707 214590890 320422716 257678821 437821568 802774968 808190026 744340745 801911493 9946873 400152813 695344796 701641158 273152084 768523551 138685225 150485707 757188865 901841891 716722680 890344814 779944266 892472680 558910598 779847484 346316541 860299609 527550048 661378411 177361797 421398283 888672398 996852906 184887047 207772116 956389061 981982216 78349468 825039924 481919179 875791843 426014060 852874574 923559449 990963606 936999614 970580743 536194854 646966260 197910926 922685777 91456407 132065914 898437986 957467188 699206120 838017528 886333883 912240119 175492523 313519846 240364152 620207851 860084669 941439427 41238455 769955259 170805581 735591945 309078094 923379865 321624564 980604029 750900101 767878858 480330814 643744841 822220032 875377133 896292816 900761422 713720762 956238716 109648746 497862797 610455662 755646863 98152516 113210886 773767098 931006530 196170312 739024338 426080920 441953380 458064002 737681223 78217440 772627670 875477665 908421841 571460537 790651011 724151504 819137487 232414235 651563296 820924253 845407552 694307102 776689390 846461156 963988854 551023473 728511437 791931014 799474456 490831202 984432138 856748722 971782180 786079528 952657114 130143894 611147678 654195471 785338304 774431788 970965064 455533790 651105395 588454712 981033135 930752618 939066460 265924026 278988290 359118456 534492541 565809215 877616350 369503312 641675035 870560005 905410155 566798437 744080673 264871858 415200801 502311442 863633689 653426869 656581017 902186329 935712768 444759694 548805700 114690638 743776189 776507170 782540103 119010763 485949435 192400210 884818515 169242240 884186928 244805482 617922364 620921758 774547315 588529213 590820609 621348451 792736006 442532349 862902763 298548033 649151469 224433842 264441800 559469128 805024646 996129030 996856879 34821291 243597593 276546171 431677015 651045699 668809116 615416064 940766873 610394179 983825514 950495598 999493126 21476543 157869524 205732614 657789684 199176468 976143768 407732207 910622205 576224822 792528024 680541113 774614654 456293941 843058081 256396153 280250543 155766648 512667329 22791774 96656898 106673597 914347484 137167613 804274450 358318569 803024920 864841402 958099290 564280119 874117344 168468676 403778628 781149097 984125736 335922779 838000443 153446713 217213530 335835937 341464713 816066376 842810708 846509058 882002799 30540283 373568235 453559226 663287930 852053569 929166586 640631475 794758855 685434416 811908135 376000455 669028029 824690043 884463999 572591227 711860533 714180924 764852313 653259562 841229158 932545 494659841 881138682 992129878 337145119 506702905 327033892 700359052 635665519 949521403 957321398 994314636 473025884 649188359 878701707 962820856 276031937 593379667 579200613 892727552 993847342 996991963 461911483 576518353 62777590 436128770 501200776 652032985 391644457 544462011 717695712 761649359 615595550 725150532 694221455 918463684 758682685 814209190 799020143 866864593 130859870 870006251 845871442 859010008 641463683 913195711 628146791 897789214 45122077 661794497 638327795 929613356 351601607 800737004 923413031 956574562 905401906 983519693 269703651 924567757 540176308 582562603 468252390 833145960 716864579 786129434 188757525 902754442 437622552 837989341 800714314 992288891 426358273 792957190 434392493 687591559 33296704 368337314 938384850 968000534 406957745 830924960 403974391 722220580 237779869 964421459 45642876 798792832 603937513 803403201 101047240 827412857 604896097 609292817 894091380 955473745 49397109 945760811 350817364 978866869 262740203 826917014 573782351 862826073 868540754 986256714 288805503 751887952 32697954 739422753 743891591 893818202 192295427 485372747 227997717 275154487 536650689 695915813 197272805 348485294 378688595 754814917 192130843 601651530 451172605 878395625 63153220 305170743 651940941 865443613 466852631 567757064 502325331 662371721 442398532 655608097 711527501 757612876 869014743 871570159 566814218 896919245 760335849 914859140 192263933 350602771 842234766 873942595 833196843 833335792 591696408 994190017 705495197 801435823 774506644 904506468 995307548 998094258 711442002 748208184 857533572 945516455 428321963 954695245 987029956 993333468 125257243 859400519 998880314 999357759 221781581 284490095 708871080 831191272 81719062 467380265 781103648 806438050 946414160 995355189 560718650 756854380 552179819 899040179 208704264 268853557 2269091 517433346 839757200 907228938 494115154 558958758 389287571 391940635 844248120 967237956 634338461 752956184 115205167 168989568 374688059 553026849 205217912 246040616 918002821 946045451 217968271 898661764 129885818 651457676 321328561 344053219 457053421 739939057 707645882 870326902 88126315 936858830 536085744 818839175 715157801 794027310 595511115 710425234 865236220 882575702 604467739 946999170 355380825 910558980 422063600 664237744 503580370 504346981 317193582 830670454 173594630 675790758 998122670 999788331 462529466 875713279 656426103 789315355 714163258 975543732 418403268 608638606 910624947 921919306 128113113 206090904 517137123 752632164 592176275 728718069 820928870 866069088 348919624 750220461 857230848 900768369 492921517 978013129 603116 111826801 850756968 964297072 492184126 870806300 403745182 999697238 352272026 907405287 692780202 887692729 829845411 954734117 599755333 891874069 805786714 812941310 35797599 186416993 867384273 885194330 399621773 691682607 634685807 781483443 479938370 632233427 28273505 429534872 950638656 953917200 757845648 992741501 967086364 983711403 187243375 536864448 751123728 975525102 262081269 452453350 960935998 973464581 533427714 600712742 370789488 734423670 737266295 738869446 264646287 775147365 807956374 948117957 292155767 749382616 75493817 111645774 188318859 625952063 543983722 779380205 818895260 888647943 269993142 578331467 953218529 979637157 467216676 696985699 141246921 204983484 145578858 222600298 718850358 949326094 476086064 557507078 899341158 959616154 440505704 583526359 551282727 995445511 44734304 730818468 938141220 940312682 320614331 584506530 584474867 663436217 711299165 940773995 998110452 998167003 461851416 615382741 263625285 737793607 639312080 732929486 332382886 822468530 8466815 907265921 17043947 107964572 206159885 903300049 522719332 993110929 355957637 364411717 977119928 997208123 860514326 968460394 754409299 984921684 96687341 318923095 268583829 814104290 838163570 957500568 693522197 986424538 172934225 287057128 857811111 910197713 194986324 255379001 224454954 698584451 136489955 385906272 462797259 488568265 585123103 801123394 495540532 587245484 610624299 921849260 616213137 706631575 101119287 967443155 899150040 912568490 449705151 911257166 321928032 378784286 507088398 767828716 359074675 975966042 188574483 675954449 405298665 900967697 709990811 761801703 426799344 597662904 263952287 457058697 140016188 200734236 727363444 801332820 532416810 989110931 372001983 882104215 763688522 855862514 956223770 995103299 788119143 832997668 897323315 918926986 361801795 969757274 750342029 771452657 423393267 560175873 781052484 902973218 864454246 895638767 859459028 942362487 718826490 887988375 141986143 898861531 264623158 456113159 581952810 882873588 811580330 923828605 298981950 811513799 149245537 979453960 374044303 631850498 965757623 993458203 288863148 313225013 574044348 585783536 979861034 993278171 5819377 639525126 936950886 999779074 888168378 938297784 87450990 130397338 995343271 999289434 34186284 873951548 977172720 980938552 435666980 518984904 662815894 854264127 522954639 961539187 463896584 519116010 876539761 963622202 705203404 967189223 891223830 938603654 674051895 980410733 488618343 984720614 478591521 563869970 492705621 831673778 650202047 939580340 730621212 954262906 295708052 498430910 34744321 882395464 405082811 744946950 932238224 980406569 885470078 900997792 327206289 711191688 364481622 416259651 978774818 993890037 725494638 905427275 158874919 610577765 28903992 809051681 765638342 862255696 540824030 877169197 527176875 794269230 553990161 862905988 998045094 999592211 424810024 813221426 702370564 924791114 480071333 646969537 945085847 968825920 860505293 960013769 166926932 502468643 926740062 991687028 581908392 972866420 813240859 989901542 212910367 610405184 898261996 944869535 305018369 961387566 528610588 683835977 231430343 869826158 690087750 746910312 465280783 590764220 535058431 880473984 498763479 627042168 159127701 357838265 728644842 882978557 687909974 713761101 892792580 913272434 515376443 649901326 183824878 966156009 735636130 778043499 577724260 925704221 854419738 934058316 502982567 795470198 79975087 585706087 136907459 679201330 719744419 752068059 610274641 939761079 865815033 995829131 35445772 543732774 447038366 607171036 882287872 960594684 867761022 928429383 790691438 818658005 370097795 828947649 913913360 949892991 596396344 724435022 30227040 824424067 845268217 898552275 666703191 807701461 316603217 436682879 610903375 740971344 559853069 712422232 611656308 879236344 534844839 635101100 769928247 891616495 327986817 963906509 827695661 833860907 191423093 520229491 873352135 878070051 168168713 197459437 659663448 775997370 622349066 701544229 377083152 825380034 97538754 174555791 617468040 802640545 706832610 758532847 533415807 774026594 126280418 189800130 261972451 366249050 168762309 834516693 245657259 536524894 909800127 998826496 162345309 190444177 316573319 646809698 283106880 291476733 7175519 777662459 96502324 218641593 432199900 521882502 477651506 883380944 522324009 578734764 251392071 792945963 429191025 445155882 951592851 956432640 744470011 898920616 228076980 776520976 528290847 621047036 563091522 756612607 898503730 999745094 392886000 805252172 113072812 560596979 679252025 811224128 390638011 859922430 168591553 255480580 657087070 848052924 979304203 987221112 213778340 917704593 76247708 620057329 347063151 508907270 2627987 237107093 798572008 968692065 597618318 861229059 186645055 697502403 255738734 568601694 16328509 837358469 152386571 239145159 102743628 626605947 219422743 556325778 933553535 948720018 584490820 877891209 901764758 920589487 963461891 981124717 966883730 973247605 714436354 756259831 793945469 801359946 602275455 647080252 301921126 509404516 147076467 672211062 224727222 979698998 946912948 998278903 182953925 739170885 279223100 884995417 296991613 444010194 147237911 896594812 402676168 948237373 226665516 767575949 264366203 928346306 58687191 980824960 440935460 880902623 192364930 503758909 356008739 751107009 359888186 952958764 597590976 840380938 415396029 838198947 23862253 841683314 225353390 769478643 579493882 774673496 326251 823386675 853605254 873699073 265770587 323589435 724512929 861142484 339277983 359241471 896647027 937550464 744107748 793161811 981280371 991511258 438510299 768562671 197510230 379175933 237423743 501721068 450973038 794956484 627281287 879816041 468001089 686074287 460131596 578919644 164298895 316540897 287398652 822718118 826734125 967297041 76264825 460575569 415007867 894142485 473661558 786065389 653575892 905986776 84601740 210664049 298865619 768684674 654573355 864699828 58148191 488840582 602388715 896809514 277863158 942937534 787009265 861154576 991729088 997539938 983229205 999830727 552077230 779841684 818361826 980184931 945537697 987332369 215489022 569124316 376591719 439761081 426032333 884622810 956748962 984527020 104040977 879686757 501954583 782144756 215629704 853175176 386456163 404167546 552145656 888013978 226023709 729521285 546755342 946397710 12315277 566631721 733141702 846357959 71905743 841011212 825109785 987326692 43093341 213485326 66599119 949574415 728134411 971015587 230351352 960986055 40363041 637385632 520170673 999797235 352361381 443699338 211257990 426849092 159055560 682008364 529981145 723024035 881204944 927582598 468091436 687303144 792774094 888362512 182037881 594947176 577195968 797238270 56780089 712393463 181414149 358920732 811967801 849131008 367736732 690488504 231863922 823411132 656552259 812711137 271955238 662501030 541354929 618769726 587892512 813404630 181734089 185411355 984006677 994838521 311242524 863827957 309948693 830691300 537234522 974448192 253799362 882355362 78939625 796828511 829716117 833650649 844344079 988221664 83028155 167295462 871980560 956585064 834206983 889534453 818083884 836662131 317101902 879116911 111284286 609402981 704433855 909531151 634728297 718630176 643878615 647621187 212606255 233714032 765878434 802324652 859033124 966889136 312642770 788238198 416609152 653079923 156968274 609181673 380619958 425758917 533174578 905634150 225888136 816530999 398019471 692851390 206236906 830311349 730107990 984958978 488145534 977040320 901009687 955835616 251292849 257519701 384662308 766376219 955074237 997068133 447617654 482233075 494705077 690433345 358398905 868857662 236278456 714251327 781975405 807430601 718008463 929976242 852032575 935172315 112906054 948354368 195389495 547538354 910928289 989715878 96529729 112088942 32927891 490760673 281222216 691305034 690051140 821116268 574659929 866471399 523681901 703070764 761637853 994687595 506939338 590344071 246708246 546355975 337986413 384898594 658008688 942912981 449050879 727006096 404362077 971132121 132577571 448583460 161055094 793754786 650215870 680531684 296559207 592860842 347269518 731654450 524770893 684451398 70892013 649758793 990343498 999196228 357442761 918384919 135965793 336240276 690581497 954193974 495924824 845953198 238249142 763943012 702641244 814943052 542363277 558337376 22436044 779524452 345233455 382090618 296160368 345911300 783249624 878343030 856101250 864470442 934847466 992783111 16352376 658849772 68903558 185617177 537911454 700686828 915831847 945319563 957489733 965924575 968681796 979722344 26911917 694039064 404045578 847754779 902707248 999748657 258226866 704050712 760138574 869357300 80891344 725683683 973774511 987725794 666702944 986976687 659953135 889268096 138759195 211954269 746608448 769484624 458739361 939782219 639161859 770222610 864965622 902875511 522376580 918635820 216257403 482411870 562243553 916493600 632217887 736250874 987352124 991740830 991351998 995048474 176546043 559813023 505796902 748997172 222833633 277013662 429727250 467569077 399275416 983136118 337118935 480580229 995797042 997355020 629618126 939590931 593456137 696840797 570171662 843069938 235715555 619485531 138624423 710584959 835416074 995797782 960991623 962159785 452258027 977656954 112361563 258444627 734180093 807855320 575323876 653762260 770176302 904021992 87188687 997332877 298253046 894187119 273898051 489810882 834795292 971286809 676725674 715831430 390670989 899216136 637340452 738009700 11332294 180853957 573195892 774875810 553991397 770517697 582838068 852632414 515646554 994249069 475495759 639204491 523514974 782569430 729355139 895081226 684008032 852303298 623187506 867946590 280948349 598632570 183246150 807846392 317033889 536113116 589477453 682985573 25248940 401274208 666908287 746673765 438499536 718567613 926428238 927757009 671219263 797848011 482608865 987960738 15211513 321296535 786617728 800579046 679836756 841406959 663510367 741333953 513675536 568144436 314455706 355232732 929408642 961862023 669493330 877256766 614140839 815293090 482437933 813681111 591053461 696260495 279224793 874238699 123857038 579696586 961342047 966430837 6484394 55886977 325460222 742916215 648818087 869787379 904221982 990974399 285687055 787966385 890376057 941363371 181166298 545065712 13510247 875078437 697072065 725955658 718370710 750799088 927472300 969978006 345932309 493568572 150058859 215284912 91589373 162282194 547154674 659612911 906754521 969494481 751810413 784491358 168578410 772844075 918967090 930839467 414381665 734582689 380381202 609584968 312579199 468443724 650243123 661244827 780506233 918636134 934854706 978053792 189562833 236040861 235216250 675843798 431189097 786536249 309536331 723548842 296494997 556067612 329043742 741452699 185278249 866471397 963170022 963714245 804469136 876464006 748598700 826390269 435892961 776534433 754219845 756182328 290478792 819479462 702542228 867090800 601776745 907662155 25943138 217320301 545321154 795448667 179250835 229697968 642914738 720913465 115052535 219267396 878798388 944906718 18293071 776110342 163631692 211796683 717136692 876039848 314276840 647565222 555553462 747137386 288276148 557523502 858253449 917318925 704128888 775077326 343828894 964598398 955795296 979669941 182471143 497694495 522704455 937172300 230150711 808821809 962069745 968097645 208413139 841044037 134147600 641389067 103745968 893554781 275799367 341844067 808396784 996721127 807402833 862960755 796608075 956227815 876966436 976177672 235844095 684441357 742548926 761109692 918314496 938241130 521249520 589592173 12311229 503721874 562968580 737821284 286604705 621025628 277496994 294435151 220818890 882269232 34995936 691714356 573348151 905525354 904321366 948963168 228768361 372327640 22701809 646313550 342401909 652304967 49598328 690612928 833265324 855167322 615012910 923799187 601609999 644962063 61778824 632023590 925099424 957973069 589068043 894745585 525679266 633739566 882571443 963868267 332058598 523814342 902221691 941498837 166988595 927322652 9854694 766480389 870982046 979168368 25921735 285461357 443364556 474767419 304521013 876431948 751793026 893173244 169644708 844130905 659111128 740143551 982733169 994102764 733040958 899108603 351027111 863994090 678335497 747286017 852878940 976083292 711354940 839354985 953274131 975618515 97675812 800966049 117852575 253068803 525452431 941140105 471329004 928707372 654333775 990509294 434588974 897271045 690444645 990547745 19551228 29013065 267236793 357149348 277631831 853928683 641657294 847703741 735780014 907540957 284065547 421670353 632214460 789431177 606364088 853956770 864094867 899915949 293433927 519284211 132199188 178504705 674567040 731451375 508466360 612539548 137716887 729996195 658796541 663315798 60014236 137106124 16132658 37523331 542246567 974766221 213251611 510638897 559920495 769063532 432955560 823820368 255818377 334225409 718933211 932235630 563731630 972060121 827137668 868829757 386104600 726383562 413708455 936024647 543998527 557202093 196518101 592877339 368545535 426716375 509101086 977600158 125197509 418082159 805382480 935209020 519228798 803593922 563259492 626393154 467544743 943697001 279859554 398694544 704757387 971538466 425494433 969016792 517659275 899439612 489657483 699525135 71545001 405697054 481234777 630538684 101685991 302246685 308391269 324113915 735429278 982703058 668162471 792874887 60309745 329023310 456951296 939386998 575021508 882378815 382556563 572315214 294074061 937705453 239420322 674457452 563524233 941800391 598962311 784561880 829809107 949751755 662907665 942621478 698643735 783063615 764971987 826196420 326402479 634018394 791259858 794930322 959479043 973588440 709936206 800751884 320859226 523954846 377142535 841276863 227533058 807697265 231149736 377486684 449294755 573594478 814576375 886182963 92125499 97168701 523744815 563490295 446913233 774796551 344710016 760934877 298919947 374761861 602348332 641154380 751720996 977225551 54311228 800251884 44117523 475369382 457115496 695084029 515128589 535485104 437207954 865887612 760309049 833310689 413654320 982745716 142784100 332790639 714035808 813259598 962558170 991978994 964991883 992342248 897929083 933020062 22999323 477982533 731938956 931067389 580733416 958174438 924590902 968214629 344705017 366549394 577435221 821458869 227295150 837256093 796694610 965495433 367432587 510155828 205352611 695767312 814841382 819045785 81747276 655502472 254235942 875992596 295250878 436586155 675693527 949465282 817465121 818436264 636292818 893222511 949380097 954096384 873012629 923722609 851379610 862518138 410764975 639501379 495531425 860890606 202382555 650323894 244913436 888090506 87106949 502318906 499486394 709951893 160050002 559991452 883767665 919330612 329294528 685501913 523028183 738160670 415428027 421276712 916568953 966306682 474896604 963467381 122130868 748686576 957546652 979283633 241181222 705735230 646458643 732309799 74884767 193331152 133060592 364987920 105198442 304591273 983275443 998789193 731525778 842722076 721228967 832625907 631085619 786256755 835277111 959556425 569015461 690033571 171815896 718273785 103449764 839526824 953554476 977359537 87482867 544634652 365930797 471178522 941929767 963046255 711525057 865339216 940752553 962220156 143624214 162759629 744294575 776537276 770989943 791994310 524080912 655095638 332592742 861692800 942180193 985568799 56719385 678649277 192826492 822032855 645449290 760599880 493185942 995554447 234368229 644142701 268995273 356836168 135685406 864918014 507039252 826292959 435646612 463007203 207089040 657059073 949925045 960888933 112478970 954326300 121745554 226920035 26492562 947868569 561884305 634013934 152474125 434920200 478076219 632128610 406627518 740235011 428765111 585811443 243443654 900400867 77410636 305231116 609365118 925362893 581302080 916571961 471163348 584259750 541445483 999920657 294522954 562271632 384967309 586928849 661441230 812986562 892188373 969766437 391723735 603959406 799551841 976434113 363564007 493008630 454945400 767642801 606943998 924229186 263286756 558317349 103043699 664294737 969558435 976044996 758848616 848109649 263983554 907973564 578217413 801252900 738158214 854834224 356157068 895742371 598477816 928978925 651646573 696983125 609883745 927197089 520182716 892003468 143105086 655371424 272532323 433309019 774294876 831704704 368868717 974292374 131529042 261678840 592716310 719864528 489902471 503803235 806563610 959871510 452940953 861109066 81275165 408287190 496634475 904692406 492526622 751038131 25425202 766069933 141644007 167902567 139727589 880738595 19009167 112099017 567105720 850252498 687095822 834675429 528859759 664819716 198108638 911549906 909074628 972718219 954520981 961164446 378462471 505899553 61013458 603700059 891452814 892873217 542003643 849677094 553959944 685393841 361923202 450960428 934808552 994034913 754999261 887133446 813727779 872064783 206183921 415329466 566751791 711085662 702446211 733969032 16790292 115787445 95721453 918358783 454220776 536579528 915515168 946814787 666308613 974393233 866152860 883618229 272085489 292588387 708728093 743161658 474216839 498444350 15957789 506588042 787748513 857997011 968594270 999274332 589393139 726115117 503466584 894575491 671462135 705779511 954988135 977787015 552275735 673328966 455891195 734418274 502072871 589613419 779913130 871698960 766839860 857955977 796678208 874905627 820822485 987242694 512829716 610342065 594310883 599042853 564424068 675946220 368498244 802462384 984937041 993441077 488336266 582733240 275645313 347435989 195868279 384548578 182922745 697462576 50342869 216367181 119190272 551362315 522883711 703414289 65140714 770452303 717167217 802374584 119792063 216139485 885057587 934537545 298196288 888319581 716267025 860973136 659432090 781984484 358595068 480954046 531859476 807775955 794083716 874887680 325786638 983077543 407438751 515082162 471003961 911768091 943926821 957268879 881793214 990934722 80785667 395731051 535525023 862014258 88328831 135559154 523808465 959925056 462812753 601484420 560279703 664851972 510227890 869740999 632617635 757794397 588115313 712063242 735007714 826344121 999029329 999170454 87643017 104955247 54587888 410257824 372825662 884548486 554422823 643869437 913669179 924113367 82211759 932566160 367940593 914388274 47602770 167291486 240594667 882322558 954909332 963661269 137820536 557209694 630818509 641576758 291253492 997437016 823967530 900446217 857760716 892211025 924292044 944458367 466760156 715704923 872083273 997560147 322542818 510079925 895962069 929236434 167433094 502141391 811980063 879317447 971352553 980329676 89982188 289868023 698387183 738828908 45860379 208259317 380461987 565111998 103550866 922385528 824895659 975086023 647028685 784646641 862013580 946267307 518570850 868278973 888889381 914601934 801535568 917131299 170722206 699286855 309009835 903019894 507908397 640246885 935485467 952353702 561372373 954152286 206946970 658097819 757480496 928697613 757578388 786000070 558885050 992031973 960954624 988902534 332877583 440623641 876595142 936860478 407403919 991488011 450461168 530663586 410689856 442518624 787357571 970659266 263861280 619484180 352369736 779729493 182815029 472184289 814035335 958496139 573243342 673929565 715495786 898700147 980444582 985530345 90278345 738057863 447442348 718046459 895983549 930756810 600007496 667181373 133859143 976646716 634523075 641145073 489715598 908151471 238433714 787802638 911821398 986040031 578198916 779662772 277563560 923978636 199841316 729803705 684246301 727657988 273173432 526154869 306590832 895481025 638833482 981055108 278878616 320933528 787590868 947967348 537682374 634546488 775511690 888889888 564178415 848338137 643362619 877442667 738278728 989410037 527224934 683000031 167786649 892466142 806046720 945800912 558343413 950599460 253014853 748162660 78827156 684744231 349525469 653538615 29886085 673095070 63151617 283840541 108528181 293512745 390088178 545561025 613995345 680215855 933378337 949093088 338414377 801376728 846743044 976120486 359996237 908492272 276628331 948313941 820189064 821820961 631188098 797808848 177622744 244834817 687216563 689996802 706281121 731864437 401203706 971065550 955217763 962604729 710786104 769513212 905236841 905237831 296514262 426568275 302273120 694739959 34923294 780528232 751393597 863003524 955406808 967208335 988585782 999773084 895990431 915876541 790902982 870059689 960554693 976880559 351435272 478578892 988394921 989160001 972681761 976939944 852697203 860282010 777893295 845859809 415595850 628906371 106320792 391681141 104497631 643734420 810716251 884691564 196573134 925031104 805061760 882125162 105337262 829765878 82358836 901562752 122960282 520919361 934239811 988519133 540478975 979812465 502468688 953669941 400967663 964384300 323467458 560859641 496888536 594316350 964882146 979761033 330944609 933886476 568748090 632610562 422609803 501125546 389476492 698387160 674435099 774785924 283478695 793540556 364318846 677063299 818150016 909060998 226101489 354748941 64387767 119037628 63411894 665140528 699717492 760412023 654077063 705436337 253505272 635309068 117472907 793931203 531088448 960754244 591081161 810919679 475313530 783302308 889500756 925745889 659776182 965929711 218448638 708566968 986164927 988892725 26973671 734348367 778384080 982176377 936408571 994498146 633177810 694994379 1872049 41091587 400716603 691618098 124851963 925120562 679330789 909244493 854776958 900810443 367470344 537267359 320734869 324603123 226006652 394840992 93975039 113586351 327479354 583132497 409109858 731279087 344751583 623875831 528089290 539193770 796509905 959892875 753313913 830262365 767850570 851022874 611804081 669236787 561808157 850926163 628630563 751661905 824918614 979519431 490150721 795655746 385112983 870917361 332186728 657460117 493029456 773643168 751074600 866637140 474959565 789215941 24703730 440054253 933433563 939561817 431407593 541833444 800697798 949971793 805651326 901764807 246125720 922188862 631559486 859487499 835726986 845717701 953770726 968369006 802583283 907363394 670393414 845799760 108175242 191667742 297148959 905009862 824951540 979374999 60918568 856952088 385590218 494235879 674842744 975819858 667125550 709941541 42784850 185943393 68009941 765034282 89167636 542461097 698246463 859594618 596074546 670373203 749439057 973470433 956747311 984843925 752629032 953435152 323944753 930277486 473353157 967865585 326061346 411708441 570801139 790204669 156267846 934546948 424120640 681908126 222448688 538087319 862339596 972944728 335049764 634763610 310970781 778945632 898156435 899029104 706093883 938428634 771512474 880668579 247097839 838356726 669344157 768997897 236843272 855619349 27673896 341555744 820163717 822598522 769809488 895604764 445395888 920217738 154998352 278676436 867217956 922999231 637765191 760989533 314751449 486395198 316176702 795478087 785894275 903582743 283969988 904288885 976709420 990208260 380708776 483303593 744401913 747206456 787914217 821535038 4227917 258331298 211315857 892427927 342019563 737399392 548953280 872017799 65498454 635124673 27540724 655897351 691678228 856414814 27701019 998525884 641169630 845736459 515113390 663441184 653084722 806243282 687468229 776819713 353722767 529363561 574352577 808694223 481033294 558584950 91147023 514986325 664817176 901161822 317188660 988955911 63058711 846731614 386067766 566605985 511639247 658549719 505741073 745242568 584056373 672621289 310211425 728745309 437303096 729138868 165570131 725553564 168118657 860091943 877333810 974984122 467901158 997767109 41046140 361293176 261859626 559714531 761032576 854754935 613487666 656590768 925414634 964558959 67764690 848928420 790812842 811768371 168225275 840706067 234851643 909428801 304616952 844002786 492488300 995694796 76513813 946443720 829243195 919084810 149718309 534065928 895100992 952126353 923975066 973158529 147039219 758303114 522304681 560394711 538707048 569683662 77532589 358206607 188014692 339637531 494471104 713760640 945969345 998567829 834824702 884197359 197783463 411280248 339536823 994706059 944425927 981787124 286944614 783339624 283330728 298877479 1155180 411123074 993094143 999196194 199387050 772129961 455199975 987046104 798414852 958525586 865799084 946438428 439567173 875771261 361683341 656857030 804848663 902671770 692419521 930606441 540014861 988983243 397516630 630599714 497228825 997375900 897883411 995548054 428438894 983179858 199342587 869023374 416098977 740831808 875324121 886516435 258827633 500344399 46038201 150562281 700302466 929879178 652662840 914510543 797121438 890229979 993319533 994943483 187205019 235059618 657671281 912922307 292614276 315853745 671886062 704178836 724928483 983100170 860757861 944038233 350575598 427355259 721352929 834280662 43389745 729305427 552244279 704881663 780299415 785270314 387629178 939571151 987831142 992698261 456786692 773369604 761428572 797174138 750668344 797679445 613859815 850077936 98138497 420000292 186279103 639529144 629111093 825706523 747834374 801604030 968559501 991925687 856542503 890945298 359036679 493331993 463241580 974558144 398760347 404182718 40480742 623272089 888727629 948780477 534600344 586353670 353761061 846322058 277086394 517037451 50048706 736785605 751849803 845893201 419019427 903698805 259440775 904349490 385033108 580157424 599243555 747969141 590263947 748429645 275223614 924331708 835738103 964043674 842238743 988703045 530494748 583190598 374275316 498893244 891064922 915216541 718326086 939738706 501162085 881271056 164108543 392944027 732648517 887644444 428873367 447263872 347202447 734534189 825352883 966305749 10609639 346953265 668778792 810390932 536567290 697753723 738795398 909012347 694079823 838027911 554678353 653214242 245630213 708731740 549114208 679289012 389922275 949681937 429592568 840394201 903267288 973952499 843581320 876892991 393582540 409186064 626251729 974028695 395420727 428762245 469609334 967360999 438578378 523542946 200392952 281004915 957319050 997683043 94325303 363141479 163883699 210281024 640586069 969951402 205265339 805210924 213047621 271724141 854649403 925091988 212791039 437132514 203459507 389654932 297003320 363606491 299602713 531623683 112204233 446197583 70943202 183265344 432980579 509963392 716206481 737763100 816592651 935062738 662248872 866302264 615154239 878690316 375872189 393944908 845806802 947155086 851093405 928235697 806223750 898173296 838787767 885427717 774850290 797452517 503121712 856359102 24224910 760476732 857089285 969673505 277182685 875811296 630403982 896261707 725291499 949747516 742111506 914295791 788537259 997431873 144093538 613845269 331082023 429347080 829440734 936542117 80665594 920369211 103121494 136385609 25412434 926114781 685941568 955477483 919495228 998304650 586769911 739390108 149114800 971383368 127762120 250388577 329097411 462218933 795652648 797043032 957161278 963038082 458196091 511433053 217427440 435055619 372757127 505287873 74338268 380719886 357259612 748793013 558153805 599528293 282080786 416385314 853247752 907487826 435983861 786467810 696482995 732174978 411370781 835539179 168489500 932793869 497392390 905401051 732749711 890290350 781614059 816565218 725905483 772319536 835174505 855976628 97277910 329185159 572243864 880964554 258976824 741104310 594517924 834704198 893816947 901463309 338918205 434514710 34480857 759037227 174781888 779093922 821300430 823453677 614222448 871598228 10590368 729615865 595363181 689347584 751038594 957964917 431229391 722932357 364164384 716141979 864285376 995238829 86096746 531494679 571669890 885187318 663621694 974063713 210405765 892065267 131175066 799456250 971587410 987043723 780894799 946374599 731125680 886294078 267839316 979839715 375627423 773144866 273408840 739521345 307985256 423770263 295566048 364278094 666566925 968597075 514073224 514502748 687115857 949558866 603974710 915909990 772621024 984444198 806241974 961935488 627663350 670189680 469734197 471799876 848094648 966665759 50139716 887076603 9320545 766658659 535106041 638903505 648872964 951191096 679051799 823474716 6493990 148446526 712304189 933843705 904250541 981064478 365581124 755257684 946692571 979779013 189980991 604668594 755744539 826323966 412258332 909556535 32350392 274360660 529084718 905914919 726173835 821694385 493531561 600691461 160451697 432070561 7523994 49240300 916072197 964879345 259028079 416542348 124506967 520181201 498543729 798562307 728163097 983370627 663945478 809330284 568834302 713493854 913847116 961363213 440809939 509654820 618719470 669899951 304990907 354345172 220996763 286228725 510028796 646131092 178417055 402113466 922750962 992352065 814948670 820248472 949093565 964659131 70919182 681682381 479374755 798118659 451125686 911621013 653199479 924694648 963084010 997839494 500567277 713468290 998205306 999788172 496365169 567061480 505795745 941916669 267263059 663823587 883119547 901514250 292199649 627608332 431220739 716530085 768058544 981039409 129569674 511660430 55343799 589403075 862193367 892462170 227106088 811482480 932136846 992061288 525367016 911651376 67270997 790268689 307835561 779472314 608331842 680218019 5916339 407012719 515518643 913529659 927676909 959131049 813899872 850999700 759507255 822868814 899080240 992406118 474479824 801788665 825577927 874174766 432715948 556793003 58877070 783797980 996929530 997665559 268852290 543747407 37427394 579119472 915741227 989718185 474007335 513356389 869502318 987420035 220646040 401262045 9043722 833303538 500670723 571310286 531823384 867546252 948435341 995173197 503970899 949650590 591224728 745079755 305510305 869733787 118026590 245907256 652986027 732383206 385946770 955932502 82522193 471666564 64033434 148180360 1188809 44149297 138098208 189816822 983118429 988886201 30806902 148104817 21492423 939678808 863699702 942841878 776725006 826132939 215495647 492177976 188616782 256789378 612409297 878239429 934937385 989878138 607355728 679013681 476784620 594062708 996131689 996297364 144597007 554758839 456579644 807995339 472877092 951801310 391748787 543945960 254991167 796587812 914339869 934514861 58678404 983797175 554981684 636115198 346671909 701073459 801514087 903887120 65777063 470732867 828986220 842687774 901972236 997120067 24020240 143742489 818115519 870309093 607203274 928897998 842578953 975424275 24035957 838954546 443908550 446167134 731953828 906778420 535555611 804397238 553071130 975259004 476609048 805396593 187234185 884762180 23872795 821698995 35738054 661907343 482873377 696191737 317378918 764252120 589619412 877045017 278906825 482769098 484423302 755372174 240953302 934568408 48134346 906768698 678030336 898683292 677409979 977827823 27147276 645685469 886893121 939670113 164489254 521481908 800960749 898417427 175490001 302546043 196399292 329381522 897971323 912691231 777200465 987277969 516619920 888053036 348092377 642469198 621272752 939948336 922185383 952363657 845796545 849755445 421514925 627676898 917515627 953013381 954670414 959837368 967052526 975961953 144115435 276826362 890625171 909877223 168407047 657234139 871484254 974629430 321102672 509438653 857693748 903400539 713620285 749176298 725051739 849414086 902264855 942422930 583261647 740581172 448960988 750428035 632354054 693915234 101640088 398654816 316932880 331078529 814704574 919958232 747429821 895652946 353942153 870277068 107534816 931423006 411189727 659303864 602638018 981229501 56534636 923177551 172237387 326413177 93381656 999626968 817836497 961660382 466693174 961546137 158384719 795439180 958138892 964594148 738986429 984777007 769131535 949674546 732438088 833328822 832028389 996333926 391433030 972479725 684401109 889134471 938300593 943746551 397910769 479072490 730287382 903370308 226334299 928961107 591247845 944422524 920216956 974529236 224224608 422195691 491882332 965832496 43176017 75296983 463127864 553234300 247831986 338203392 840156357 910881988 576946006 722433322 716792914 833182643 196425611 957830732 356523973 808994483 383905688 946200974 859288963 972613324 821586946 828986533 85776044 529616314 180090431 252900833 143324089 281679914 10232607 864421193 432397271 856606542 518589408 636518456 934137787 994561739 935142108 967844173 591870537 957830907 682148459 890127253 374709155 829867401 483007362 806602375 949265309 964877023 627835254 934117245 498740918 634216720 7567003 351296641 247830214 741872430 330492490 700521626 331990451 694709169 552122872 661509772 573615453 883202743 346286422 514820147 202411285 796902390 460275338 891350910 595090771 674469239 241915062 496789695 721519458 748277627 343699063 887243789 428273766 901935411 792897063 850892770 495881093 617064043 545462060 963924552 155997366 278292735 911282597 962857206 70457650 982464351 207839150 330423958 239233932 374529886 609975621 802931248 274154364 874424563 741680201 749363704 464580916 639000786 175286184 620625921 474480880 986421585 955548721 984153790 216964688 651276366 819022125 970676448 263066283 825613256 304449291 437758162 743347501 931770184 886333231 942354956 74368413 255577947 856721759 983682390 731773436 785142106 268350558 785838108 217188243 477011292 976660013 980679804 462378220 715315196 351999019 489658071 687861859 743672787 308458791 754580038 659647879 700096428 737663179 905548177 305006439 700113575 814263569 900825933 116264602 804854436 195211139 502950828 355227650 546897564 505874899 800151196 465907848 556355135 744352413 937876643 728686362 775529676 651922550 877058018 157428717 423446576 342685151 725019329 72446450 125278673 488653634 758909320 832551125 848401277 453315655 797537952 576130371 723105503 955667182 988308224 791053501 927932307 618970390 793432690 938680673 950871094 32624161 416091364 301231833 477328692 369632138 410181437 819406944 980790211 161801024 906158079 981564986 985343975 626402940 786738695 256421417 474734658 36757903 736263252 108019416 742905836 556342324 576756457 44770476 470799265 198440483 432911303 424560367 826111232 909384406 999857197 206586373 958224285 990262538 997122250 879663963 907820032 628604535 841635871 129613451 590675517 76447575 469961711 42786906 868917847 575044523 803208514 222606827 281977153 370126454 495129114 474397169 953843029 748130765 931416364 302528425 830984028 119286861 781679439 623350672 768415931 963715168 999425338 83494243 590300549 203901393 268398124 99207546 503697530 401598382 853359636 233337792 255458237 530284657 880599735 466332389 781758896 995332983 999254303 861027637 908008407 647336416 735326543 723723669 795471101 976999568 978415717 794375826 813671177 359746401 968911383 121393073 232568624 125157563 693908022 450233238 910640464 383186627 520869516 294606955 346930908 569790710 931611506 643472501 920181651 503800612 685347072 861129606 961136722 499579961 946060299 559722010 952629143 272194235 367928820 824495514 998324594 301642645 874333468 139512875 286443265 937400472 953019225 244783985 400736973 893196126 926319583 922596217 951797501 313218728 913961744 936494550 936675870 869846833 913458567 375425633 412651429 148251383 894816949 692080429 857555188 493973829 956977335 477807153 770403140 397566602 586350890 85288732 798137506 159705102 569377887 22245765 275745826 615716546 682193240 788468560 882515891 160543279 331080159 911549803 966831392 364326407 370341888 270182328 907095716 214319163 899341014 3369392 601479635 646111903 703361787 687891241 732973906 690978873 796909204 456863567 919634285 86964922 405566859 782899660 940910037 218164173 621186737 607581278 737863233 885503434 931259269 403304646 552914734 22510268 637080159 537961701 823984143 377018103 559569197 803156860 815129123 792539957 816706780 310829147 890872420 845794980 968424524 238596669 589306752 737763300 831170012 538531854 793217205 762018660 812068715 775974628 778542844 221936187 802751549 541667383 947037962 570620414 610333002 179122223 492317649 604882708 656547991 357613446 516891846 462637341 680013456 885462860 943204065 256851608 533051574 303566678 512306461 310210995 857234411 909698516 954649987 816196779 981293110 366031567 939367194 324771803 913148856 84650674 629061639 245793438 302887518 852198813 885080815 952563640 978076721 608828805 853662151 518770787 838100528 231534534 917441331 788080322 794516552 69110250 423801352 537902872 616931178 763414553 984005706 736116154 975734820 930659711 938426382 458032675 884764994 537254745 782314494 792570172 996454380 727854971 892329943 576055083 747026070 474481101 504291273 82508318 541634446 351642409 598642046 961874351 999473235 826893009 999594486 671080534 924316563 703360007 928524169 636886851 928674726 835242917 878043021 888285747 888574037 864371173 879265833 163170112 269250160 386773124 388911671 50351166 344954644 201204318 820821604 100571839 768695570 175138586 270198153 13169665 645789386 462962679 582457493 764952456 932836364 277085864 411262850 257274790 665647557 136946123 591312307 629313970 856776486 281038228 800855822 434943359 493820488 729271939 883537507 434812503 831495327 932495259 979796062 869628736 963249994 327525409 603381965 405455933 663691004 94009579 173008299 449528008 759822012 275630275 626578614 975014125 975776795 427069838 946049106 762161937 914546965 661891175 960145461 50548900 922446373 244246640 352451455 357305160 943264336 72618333 503132527 549535124 990832043 390466919 601029651 277303861 454221837 260992651 704846182 837070640 868504555 344333805 732833515 382319428 872182639 369321432 459015539 217706421 676612801 964191391 992398250 761079842 919811278 699726876 709170215 727920989 933394237 382047624 872340710 172623592 596800705 596188452 979474187 428843308 495538102 469046203 992199465 220264473 223099003 264365701 495238412 135251665 730802660 728978678 833017309 853799943 854895322 629019511 916084816 139256654 150568913 575430351 947069248 328670489 895526237 816194016 937672097 498155893 801161767 100715372 291764586 379667481 717566620 698126643 840801648 900191343 959475675 328816350 470576036 932471976 947526640 625246690 848416248 711677003 856065009 126915683 763122498 685052021 811900187 388078225 916365072 859437386 932635757 377282087 757644699 249311312 822237047 345727776 385585179 537874563 944462129 594248907 956945335 336360139 747959424 502621006 777071803 60289811 861551981 247423171 735825150 451800745 989917760 704817683 844780194 25398534 268249987 799704617 833849617 220955273 503915268 848002322 955609597 47982339 83662112 52216762 532646565 906269959 949354260 618419746 967413793 680143295 869346154 221226352 981324024 964757391 973392431 761300881 953534081 744198188 893892021 897071004 942816742 561391466 564804225 847092145 996321256 182104332 675903956 611166880 922323274 149029083 957781496 34390258 632439547 290495063 822505985 863409923 976209034 341807870 681819255 510634084 597392719 652199471 879302142 362917159 453910436 958393608 988748678 52790518 758614127 264058503 554535141 183107942 602772429 580124085 658717124 734255785 848518850 227067382 559701651 984408865 986462013 380236821 447977888 211488982 883848164 592003625 903794416 470429939 840585463 765500738 979044623 814523550 917634946 250892594 409525772 734292179 784674128 293014795 740777112 554886709 560621972 213115676 910664400 873531715 978606587 200535010 608953650 853545721 907495390 149776811 555925000 90569055 852174326 832456700 899682169 785031725 985722751 383189276 575523175 586740501 658632128 68009512 355340006 977730371 987249743 939189514 960261785 199499201 780067360 631607936 787260452 468055949 969518310 926572887 941382005 122631850 435575730 179033159 352656945 993118646 996611068 349003584 997788366 38018415 458161625 635442240 826697550 795626634 876162105 395442678 946689868 414628746 421260685 750524888 880616640 133953871 902679056 719156212 969349861 24402096 299383004 942414721 981359879 335675382 833905216 865910942 885979291 697870641 865139103 521304916 651100345 135758229 199794407 644737339 664423502 652829150 906734623 624504407 957284922 604819316 710722475 20306109 182959014 107409843 280634458 630745896 662352828 906457641 961972407 91011426 382077521 164410719 467781476 654799192 768972687 165448899 358732431 454612135 471323823 630953711 901709843 996904580 999255388 242507106 920232399 9962206 859967379 473387629 814339825 393994031 648699787 685973702 698207916 540562440 616932734 676991690 792112155 844577208 999487682 738283091 787722401 786378380 955895187 779363546 956187311 275732561 526663955 121677278 721366559 168420525 503087258 214536009 836787179 38020684 411580801 240914689 449077858 615843113 912818166 211451865 649170821 615217488 627045905 869989551 996106418 261898497 603754133 724987852 867206004 596656665 740057477 199505973 265079309 284713120 504294718 87071823 681106461 318912095 362974824 111056678 784330143 460271749 853315283 673677792 939800955 531442115 907414589 926275453 945439236 279702657 690950963 900180054 947364126 188241497 558175807 820083699 879966327 798579495 976852563 817464619 921074240 407395689 848573658 585055203 606694977 687994984 737796755 762213252 959087681 569716180 693142288 105125076 697509965 187307591 411869261 586152936 953111669 24476554 753940899 179678434 371448229 60013054 912344766 920479167 978573770 820597742 905528631 280926785 897053834 85758608 832886794 667074695 839305531 922879195 981913667 518875291 942641623 944968264 956934345 878556574 983575593 816257742 851023535 201049716 802766732 451079149 699283289 805152761 914040442 852491936 901308102 671127507 954139984 167293598 804969422 133824677 942795140 353722655 424629574 811816704 946195141 505242875 647984801 973065679 983717429 746913833 831930851 30054184 410540076 336599452 558308301 563501815 729496988 11269174 12429563 933022922 952578554 774490669 810871735 503727325 827930097 536656013 915841311 359362830 380927141 760082767 764290209 919019484 959150349 53791683 925426402 534353996 640542843 542050695 837306186 850713062 954315669 946102601 973160830 583751274 735831321 860164448 923133381 711512083 862636870 962451133 971286458 24482571 543749495 289439817 877560319 322537218 887487038 5831171 76545296 499539299 955120518 911966875 955568310 367688487 749461193 533519827 681360956 70470450 443285216 820170118 896823642 811462941 811641555 144388687 911715234 198396443 500202843 997698558 999023207 29292769 135586367 471467991 605851607 412366707 626769276 789820283 867415495 303565070 998564378 794057577 841364480 768745746 971854019 475082557 727671881 992535057 997614772 350161871 535465310 680795511 780466285 800791376 945330277 214529768 366286875 36979661 722626963 644804504 852319774 949983980 998576801 615540699 779544161 615789606 943322405 929681428 969001342 112726853 863569653 898936630 915513221 391344865 834856429 777278047 833989858 210236864 492609778 751738519 807147017 607724811 947770103 920189331 980486032 991430802 993699345 757524561 886197951 959062402 968993297 39235551 747600361 130214553 539519162 218290047 718984384 765268267 961842767 902117930 940245403 814562058 993546040 395481808 401611460 911204828 974130069 549744546 552597523 547756013 975835941 702020672 703972356 546121622 826295782 871589511 904397312 633933821 916631859 214004751 468634331 243387955 444490144 280406192 639029452 40368106 586220916 636734038 710448655 894585729 921342316 429513506 442189851 788377189 831870463 98990668 613242395 103497385 813011087 740610878 944166316 843350255 951380126 159112978 737960570 901096399 946939315 989754734 995688864 207067338 581653524 221622084 989025807 226633009 989238646 452778431 756096715 723505129 731294422 691964707 976759197 60334983 436222273 582857304 584262358 422792194 604134405 412385900 575943832 118282641 467584299 103966322 729576616 353647180 669100652 866854342 996422831 844245184 884273574 91349445 652871951 76296454 306362536 539254417 872281878 846697643 857051403 184884597 477384078 79716564 486067615 540765563 913123142 606022384 833648530 658325521 820023189 818684523 923354671 944339303 979871185 623852431 915144678 136178065 143553507 92029103 630770488 313741987 968751031 316386533 321411110 163054133 809827912 261664277 785222406 232911540 762578352 229853182 669722040 776742672 940272540 935005759 937620988 996303006 997594539 497430162 870131561 324770832 334855531 456744453 860342863 334421989 448476366 17100053 579036064 65553422 917345711 559392471 732217175 17918794 845636401 201213171 714608774 191855985 788208557 195512383 852898213 492485342 937117604 695576164 870531747 184209000 723371216 667008798 823478713 985104912 989639023 107163302 733961424 210212559 668376077 218281316 653590581 263593066 614228901 627242238 724920692 922910604 961754342 96317496 181858725 680928303 854461374 744174915 928065889 681131766 988778698 614189205 899599844 644877808 716635355 287921621 575372190 317626905 853149834 765301069 933408247 714770284 735329734 763549879 868316236 153143078 415053305 793651810 840018905 590607317 661332699 540307548 609337851 301592474 883825881 589641453 963053337 801750262 914610651 793390742 890601960 58848456 597134128 127672743 286648560 665199867 716378254 933233500 972543986 359736666 414549633 708225845 905249053 467585065 568595715 127443590 935374498 98478771 814470357 898378959 937392817 24323115 304517080 624388571 919028118 718582583 957267379 910466480 947785063 241267440 758371113 473024511 561107899 219561951 226349718 916104747 976887553 779112078 985566978 662977429 806257181 792566287 915630006 887565160 974036887 365666032 573677804 982539760 986752373 922263850 998449327 143017081 715451953 706877275 812784512 388287392 505811675 849808620 984905971 689492995 975615213 761404897 991265506 880386220 913520775 406207365 779406343 737358478 924040179 806841637 936981198 34726341 246545372 996420591 999719811 51654375 117712088 321387793 985607219 902948503 988946945 828800258 970413412 565541156 818564618 859175320 962074604 618786062 619988409 938157377 971045419 543926674 682179757 822571543 936855934 287332794 491812180 275610756 822702904 406895728 881937600 76052007 979771142 733289272 987367933 913696574 994474342 686978139 869265595 543128961 774707171 935953448 996646418 389443154 864333764 905296244 942959948 590366254 706854069 4037910 81827707 678958526 779682500 753857387 909393707 52002171 952520362 563461550 660068139 327664749 854174556 610786556 833435996 56996669 952396329 270672259 452639626 430560551 654949984 664873539 770912300 207275887 945930445 759157015 773666488 677159466 939297055 510155542 588368607 559447002 662776132 51356654 966828531 839216915 978648939 463704278 744649582 506825571 756519969 813746490 998985042 11015272 912879026 678227416 775771744 553902822 731489871 44872041 595086963 778974077 935707620 112850921 569220735 842135946 876000067 251404462 942884421 269199551 436198007 619699578 720624142 928394980 950842023 763041062 801279705 929236797 930615798 77153393 168091120 268370188 298598204 118483668 677659344 293494792 763014237 304841465 723043477 770995135 828643039 156812499 911829851 867371260 924660301 276683369 923700034 186295094 553045533 294545609 360017415 78301669 916892047 171707997 866438004 685090582 943814061 432507828 965206558 128586922 369366835 629319103 947333396 730033227 959775263 115560432 583248842 260917413 517240667 965368780 970565638 342342740 657785493 845908677 944654361 192333474 729339908 659814536 954556159 108434094 437147055 246578435 266520025 404036994 958095515 288146122 682702472 760203141 877836928 236513308 443036510 852624780 919360559 388029841 787694484 271786993 816270776 850941307 900677388 995255570 996586803 153374481 613163159 521873620 872403745 429768614 978881749 416543385 613962856 325830114 709486401 565960048 756202594 151198209 760365233 784362830 785683808 330055657 932450424 789991880 895979075 390831752 774941558 66391894 121693179 158627345 562218584 710791537 983605333 386666284 455631389 826183479 994116193 67879207 231034624 620801670 728745548 947662804 975409677 913834521 937306366 731726237 743698090 973379340 975835944 416141128 577501967 604529382 823783570 721163974 893489765 606411903 895706194 611556034 879856806 437931035 796808236 338612300 822386200 656861670 816878867 953470786 963217688 510506011 863587945 614853454 711346729 838442011 857396634 214825380 378702693 289456572 459865705 470911008 646223422 521902260 574119754 360036029 991382355 565670876 846667192 318683056 871660107 792068985 842078900 908776776 941618458 832589208 918598273 689153744 824308026 270912137 744500838 950667781 957986539 33522920 485087418 196358378 885274358 363306350 535605298 435483767 967839206 757081688 780848472 950925103 993106264 475136783 744809007 239224210 836279022 447083563 612852365 820760585 994604399 32107834 893115860 491776005 526724078 141152538 975386964 27583242 251557467 996983173 999754337 315589954 775823672 632624321 808125933 619782254 670779408 253807193 803909024 115027759 611589815 457014207 732934520 303634254 517767172 135881308 641001940 666182864 887182088 387867647 718704271 391489956 589176113 204069176 242158349 638195332 965604485 907501189 930949834 831546635 963733607 717245962 755375147 504022579 741999157 420992825 729738616 465820160 579203178 683283497 876034418 230633158 517031461 242784447 350679285 727701824 788581829 500330492 658810467 964455877 988954761 504161677 695443664 815970250 847399930 370783540 908755406 140602778 201460703 910018359 933981929 676773849 736242011 744756094 974263274 20597309 886651963 249970054 948918300 333967496 413243470 832563680 888774056 394518822 993612541 819438523 891952165 535482335 929042118 986939867 989380743 645654338 802850720 803650363 958212103 828612096 882813048 784063088 842398776 425667643 593312266 970425850 977805817 589142392 726747654 95241546 123782933 344850041 372289414 739380223 879095882 52986458 498135418 765143066 966938272 476108815 890022840 363732999 858678282 256069845 997934423 649690546 686747502 841168105 907514558 587432149 877585132 287736280 753130675 306899156 558422690 748453612 974812543 733301740 866884344 554521078 906327866 723599474 834147361 561278357 744647133 175863372 339628329 958689962 991508370 56948092 108028888 775340840 890176320 738048913 959201082 818240616 981701130 941559772 959052628 435608650 744215342 946211159 975764018 133499265 666197303 739326770 799085029 226149984 315588940 744146741 937875286 4284557 221791807 406678867 948453714 464737612 792267200 244072650 875981420 803041663 806427798 288536513 581573917 860274979 961045445 520365488 962919388 264545318 599396651 9018848 594571963 861489816 905538841 706208644 948730467 165999791 183872580 583330134 645649579 916387235 990935148 254480864 624238828 85145351 402298124 754268987 763205222 329188304 633159601 261209631 668372671 110187619 172946584 989595538 998410577 820937389 838549081 487311983 705673408 474360817 585278835 628726239 967198649 385286097 506981289 785279282 988493910 273535535 746128274 254877981 423859003 460498212 657409472 609242586 619643632 842846086 869197399 8995434 822204572 458770849 763435734 358019913 812630750 972700023 976297395 897254149 903154924 543208908 608528664 544733500 977508332 796516258 901710626 196729797 723564354 985617323 999585687 777764297 889332386 881472939 902881684 219790952 381532079 695596269 971611806 702795725 812786121 968318545 983497865 757951624 926810816 25967732 787478007 36440113 925455076 863527142 920053595 889748815 890906972 414162540 448342827 110408537 822992933 454947930 793366903 493340806 938892407 685135533 889181881 832543997 909652712 178515115 439377270 245978267 554700014 303191496 733984360 481144505 716594870 125334066 751428576 121412650 982449387 266182252 465408019 45840410 588977191 381824222 958423263 186514752 850931312 325517036 989372876 806203016 934124127 55351157 380769934 116975370 144537999 721106566 897528495 333072741 357115763 144979281 521352823 244219985 245538148 730979613 959681113 579026310 892025594 656884669 691435626 95641068 920130117 453530058 777944794 802022184 934123733 864706750 975725427 475365010 846141072 66093787 680841538 429753211 966685456 548458064 565733736 646605323 879465872 463702403 865645447 481321988 587880251 300302827 836547514 843981256 889015724 765239534 964488578 859274252 970248186 531872900 944536583 166283855 301607652 43959865 117090179 7056822 496178437 416154958 625870756 874808458 991335931 488808387 496992315 128602792 496681728 253603198 679754419 841328414 950111917 233452515 335392894 269816839 317793623 16313723 277544152 125625968 620605641 346167969 689484783 595547390 648891357 286213184 492372158 310809229 475013863 119399697 141119621 603848030 935614058 990230506 991401942 653211827 659472989 512925271 874145610 496149494 582648464 251628794 952877020 325018780 919935680 513228877 942716391 22129815 547200181 416858585 561680228 947185099 980356345 403386 589977079 529058056 850873154 482785726 863588584 869272714 933195897 72406220 990674335 490549784 884149044 406643945 516984007 651797260 835585270 98213896 902057883 163475220 448371194 66194566 933636478 905943280 964438000 882150334 929842484 769267176 823405458 334191397 653308578 846605458 877359109 260928418 949279406 503686220 696757691 118814576 659561301 692624149 879602105 744903112 912289160 786053335 876311231 798100008 846336281 843895093 877158000 202104266 509854837 468380321 965677057 12042851 122377959 33069321 342161384 952907763 993005507 992755581 999103092 188131192 942930891 886148124 977378465 226732083 307278372 497073885 720423559 87425253 474929994 566030845 643440299 388357411 657484252 795288784 852249656 122479552 800829369 159783010 438028239 888920491 964253981 507169994 667011887 344202780 519022293 688924131 790902392 967980605 997468498 224062120 984887925 687756415 845068645 7525177 929939117 947767788 955374173 888167849 953102248 277049805 808963713 299874676 439369694 603413881 615220717 109510867 272533762 733253982 841498976 218214591 928694241 708629129 875933688 554923446 849075305 153976129 782959877 381340977 460121411 202470889 511064285 147595245 630889800 93764127 770842825 445949543 931481578 959178563 998820868 757435738 783522589 437981659 670479972 484197163 858771575 657924372 874303038 71077775 480379963 780252043 973236659 90359035 297252093 64261634 377275782 332559557 478487029 500298348 552929393 185898247 521224390 632521279 644467723 121492739 815210726 561082178 579018804 534790589 937110519 180263459 815712807 800143840 861069835 450321969 594373062 832228820 905063716 192514867 908527896 595584759 680578644 244392777 810241771 526764908 926750056 977319922 998445047 354030822 843783907 858265821 903114393 652440479 810415650 142035243 207774180 123170595 444361712 466826775 672795612 668137037 687162658 468069648 508089691 641946341 810984728 499378516 744914466 299916184 407384009 729430971 748676429 144335161 240870349 879198357 898520323 156852632 948542786 37758053 66538299 234408213 418740382 940524090 988414132 174245769 639088314 981314491 994369030 209467393 856503224 713278118 776727228 767648252 887963539 11328824 425623377 97865280 778341779 590647305 623561272 905407452 967755730 401209986 920060872 35277073 977317215 306197379 927432588 104096938 370153271 309259043 454809631 235563025 739475848 972194985 984103172 978886930 981457510 227810160 371668000 49893649 288158201 53542321 572076584 543152481 825560388 291740053 514922000 145199215 636009246 249416973 810572617 222956279 970301091 746343835 919797562 918103425 994817168 158870366 256712315 109777098 150292191 218206646 253402177 495147882 631651777 632031704 715302395 533597194 880903363 475252897 764808701 415638411 675971113 417620007 923155641 543788886 626057754 250131774 704451285 73846883 992359675 428617603 472548631 33508920 83338063 480109590 595033272 2212927 703920176 371140566 895684312 787802209 911002578 786810332 845938388 744633774 920760240 246181195 530514408 516439721 905237680 75532200 959897496 243575594 323940239 912401058 938484844 703024580 806193493 798737240 979620403 602963478 746848333 916830684 994717707 392168539 434469546 965232113 998692198 862952100 900846772 769092149 974343103 861785166 963750061 298907375 690252992 508160355 793788306 293327530 778862483 988493383 990005916 684071239 702138444 868365896 909775298 461756491 828780487 221633687 440996804 20423260 854386842 278109395 841933197 445566962 947827659 157263334 940060284 626054733 871129679 100610271 539132375 706334732 710237533 662361277 998899344 394630628 401106890 137592624 195277585 110089494 487639176 969892766 970188574 520973254 752064470 997925442 999440156 831294871 927952196 642950103 850666939 770043240 807838988 953100460 981307441 604731565 710794310 851115180 891274240 477763059 564688977 37515039 329166343 827436414 996361931 625231922 935877413 494859068 525491376 310013831 761324313 525837121 818347846 361963735 749074428 989765604 995619822 116285429 935162585 971178067 991865951 240013726 652951676 850510421 987550616 858693386 991755384 822127935 884125161 575055156 739518160 29228001 656123807 361944004 977802642 996168422 998663626 39379628 485095762 965553778 988739873 54038495 147349744 97605969 461845869 819861816 929409852 633388332 946223242 793738452 976442374 293647887 966473342 246499150 448776488 157551486 945531256 949715334 953684609 654745110 810063196 963654152 977078997 890387056 932495535 225270489 309017787 330287062 996971867 985404275 992459565 669317396 787019899 630671576 642125993 742138936 941856329 154800103 224981865 660437760 882677564 278451950 728568459 743117251 853836148 826555956 902134898 515917231 821817563 124222550 248906449 370243492 732230598 676415982 799024486 127461144 974057595 310461838 574388912 986308113 989961137 84416104 219884190 745455107 913392546 61763276 339540023 924995067 995311890 554107883 707710420 872169218 903327582 400963071 965089910 40178705 93205721 670176235 757564507 27112582 711103247 498225373 560131315 985977072 992082267 393598125 786394980 685303897 855945704 387113570 527837014 450829383 656110061 388327352 766161732 542098615 701912568 908104693 999895277 922471162 923364810 5538007 959033495 668593229 880148981 236319046 244086052 953600591 966239568 704769248 962285952 344339293 511995564 685720885 732326800 972635392 973255340 506958780 558620970 922949834 943533726 863998543 888090561 998209140 999039831 196060477 382111451 524470026 977455201 449559525 913286152 572513855 714175699 925838369 985402826 105442848 525571274 143412460 694044010 424484771 885093136 717152924 785487398 654233615 815993495 360003622 997377883 777420605 912276075 65574515 126467975 99069834 438173106 780105920 821747799 18584184 201106387 959723033 974571730 275426488 413244685 346131944 490161981 65762580 106395468 978181037 983742225 339254404 914632618 430356051 715612400 117932368 158050952 954288783 976144458 38344797 104485779 57460876 259266864 118343552 926949711 868296332 946251007 567106719 837410629 234072194 397388047 82557082 660086224 505116698 739942217 871064913 970634143 948252248 977842024 867916717 892161246 918931969 964471181 258217629 837078302 879030309 930931112 961215294 998253372 961765810 974672841 208118658 443721617 673656261 835316664 795449696 809200836 619657788 963924444 90769782 954951263 545854983 638051772 835247334 849343037 905733852 960063702 174380210 832961941 225787375 924747682 112091541 214126023 737918436 751835684 904583684 954586469 289130255 817819129 150259760 430612561 790559819 803270120 726026838 940843138 854951163 961417654 68802464 942080302 204591612 301788872 72510139 182235438 164413622 456477206 640699903 883225954 321275408 778080726 890158923 890892512 812357045 919151314 91245174 231443702 630947947 856219104 140241595 280781512 920479176 978736877 715934815 750414531 437010678 791383494 297086557 923947879 700072762 945005341 426495925 968212467 516396161 557574739 434696374 873264585 115739476 212481725 574406678 628739864 693655615 962346990 131028306 214770788 468583691 644137718 701897437 860658816 46807562 690855156 29724551 701028788 723012755 954420541 110120280 783599035 677695870 997786766 725636273 820742138 651462381 885828236 454951616 920036655 457962191 725712508 113757822 478844541 658451423 679540352 781718291 831984321 194908993 583118574 731339429 833190171 475402020 645850861 981772858 996229092 10458522 275848064 5748454 290454075 154873527 320014321 577976667 620721419 337672601 613318493 521787507 646689627 616613566 785560524 563547438 858053058 119760192 382586371 454328066 822175564 536907243 715467618 495435470 712265936 440058120 535853630 658830258 775360404 393990675 810184104 693454018 805535229 183316412 944540695 46134523 877176488 906692228 981554887 718225788 936698857 520881721 692857787 50810225 555416260 16626556 130994044 318853788 518681588 509005301 755137930 445667162 453916198 554575605 940529406 415640909 906387950 619180109 783574603 906111957 990795780 252093252 952110639 99233935 605560721 169935723 697203603 189458120 473702688 819242822 949059806 643392441 706494277 69880887 713038739 617227283 640823564 746519919 775768451 37570895 329044988 559370456 666099430 664387925 737407618 369836860 415096881 976137870 978184706 636566135 784318359 658369036 818826550 140517100 248049833 993210713 999046275 262324268 694272488 221743296 709864027 320429044 717817884 717868752 877734864 50199897 275102313 463590925 784323971 246066165 414564047 220289724 239902999 915384584 925077554 602687134 670041381 96474230 913894632 597490979 923153995 357288289 934987261 988668727 992722903 813625648 953624455 544216033 828136403 553889496 892516460 779510737 832670826 716851116 772877327 322282703 674564750 901812057 951536862 659281836 999153549 556565403 726207559 646412530 692875426 195520889 946630945 11088982 231582295 500901295 677052263 25825910 589198432 76217233 827765317 686536205 764674637 861248447 916539727 693100112 928891738 85873125 130143488 863351890 962591981 440634358 451677792 58408922 90504112 84389257 429279816 560680089 779964492 100042705 881138821 239326652 373594116 827069593 981346040 277477455 832062000 180890797 684531656 532297508 850074337 74471470 988378350 942565233 979177850 884440324 890533103 747369044 949996299 32078842 36071136 548536588 618522510 551381125 770234260 528393641 552961691 928605398 983585820 209285032 611037195 320272319 823852408 900772282 946328426 162201252 875094501 114560030 825522648 38908219 728884083 921770055 930670084 9890558 181855991 758991808 879155708 512281780 647927936 358089235 959031775 563621352 761355502 504860274 670749432 134898441 459588360 238880333 372159956 765706901 909717202 792058057 914672286 339344921 381760031 667541701 793846361 408529602 775337564 576732881 779685424 301675512 633343504 6552211 920169276 277797016 699744041 306806768 991669532 152826696 381663888 792079891 932145533 426547809 705535015 254949687 531764551 824720232 888332675 213185353 918845885 537280485 568377292 468642047 579206042 33354015 639263833 547911224 786634491 653136078 705948124 604620264 844186304 306495038 821838398 197513282 322188541 862122902 878307643 389295541 606535360 724625833 736872445 549711874 944017114 368222276 735109238 704320466 817812096 652226480 858037238 301273171 480288012 734151612 983034918 282857005 732365653 5561096 796990342 573874870 738219886 893839217 912210449 956600233 957458484 714843661 966618703 632924231 937857529 587602267 930923916 557241144 875110971 891205161 993179524 442188777 675088684 409785366 819612120 234860061 420152418 654403981 872235148 16992586 687878770 679597866 969016166 347182603 374456486 98440408 415764748 472880944 608516246 706723859 733340198 888424285 964646641 838762944 848645219 128171200 303026670 574784697 856782414 3442171 555440152 201814643 309922809 180439052 746641257 223055066 795301327 135142133 301240301 222397264 545599154 579591158 785550589 285193873 350224014 470119084 819376132 898121682 940401260 553296277 836677927 967841764 971589125 587001435 747055899 90522876 931057974 524844217 852846618 889560854 937116630 133419202 203543908 505528670 661161032 720256303 825552406 378403647 807589375 519590712 557278277 253600902 616554685 945766513 974336176 161240959 392430169 226765691 688491814 601801317 724284132 86883199 593000190 150024064 540760394 794010734 951483213 66190177 910325763 14324128 264860873 202005560 747863019 413976019 730963569 886723664 964373406 961630140 987409084 740411065 820887466 495877182 568334188 112177867 203974089 287536028 800255747 190192439 350561804 203125560 903507170 193003270 467309705 365952212 928946937 223685261 661301954 378544185 737259235 502191245 899974023 22849877 555966684 177438873 855549293 724174396 848509220 851503071 888922404 535020720 746575368 415234607 743601919 134809885 719460803 947802575 991288088 980035738 995939477 182692924 317663456 215882828 711206487 824172702 856564150 614879647 665732736 639068718 788754558 902087472 989075551 912166026 941291880 632440829 811502438 649469712 958226402 690792873 915742475 1103055 802418434 200298647 961071552 214335770 639309823 610838203 643222457 537764082 916889171 103502917 701640848 580034491 797110960 783088249 803050950 663552752 705657042 974246836 994849956 760037918 780257033 26654891 116468628 849270774 953893103 79489068 104574101 165693720 238056569 424990900 911156876 307288401 830223928 335087063 587603895 831217207 892635616 859206967 990518745 482088980 876966776 708974609 851580137 523080814 777736457 661855213 861031337 344421753 776904962 888935786 968005238 500585099 802183484 424698170 458308035 946884535 974334529 959594870 993408142 385120309 642366276 717285161 816011121 446753785 739764758 125411614 463765637 607888725 756875903 625152401 780734878 202154855 741270650 390402742 520824737 388757099 568815654 870271772 949255825 23478598 715236945 834079622 878862848 296929576 774507444 302537815 417201303 561268070 864722312 24784537 332999723 670183269 762369578 185310787 600094107 892273366 999696670 269366547 788630646 534676059 631826495 145366537 353718012 187183704 190889064 301404499 808909114 737995987 798658012 959277040 966331421 561284115 889147765 764935075 777384691 867681196 923616218 942380470 978857411 221026016 468528294 807786003 847595852 747822287 928467454 843728882 966150840 708240744 747238636 759113209 912937733 877178946 900732610 708449511 836779920 901400126 905405922 222517004 521471325 677181055 964419821 553704164 989294809 85735988 571264224 522976682 645447373 599019293 630988719 594233416 876321624 753198387 777288405 495681666 919450170 376681360 606494923 375308921 697424042 333358093 817356857 348140951 508737512 990786228 993865426 425289697 648995134 665413647 735185602 985328919 988502898 376003877 891574317 721886126 911794404 868166886 955432733 900541809 952833532 272068404 893335638 517016113 980269642 449830451 513878204 419003041 722676828 851095989 878487586 901031616 937154540 336534580 717149449 654612044 934085015 462275979 901954606 229974480 270304437 39036506 279410344 895414651 938807780 548644362 992662461 124261231 669366128 430632958 664209834 543849196 671847734 99011876 215140742 579802983 585347333 814655302 834788149 224120689 303535280 234133646 927379614 842217783 954309139 176458594 638210277 386928107 391104286 563180102 667381310 952854498 968125215 52210760 739581471 580230162 691304816 386933517 570438135 517292803 705777723 834940898 916291515 580669500 867281314 140639680 526468725 811264464 986413627 988328217 997615605 581857690 635253389 818797388 891078445 145315015 767263469 97426918 476989794 923873193 970783743 61679703 295425650 465805460 565765941 511410028 654049200 526815892 846344609 170291562 944432047 844507032 878397634 545291984 913597499 345364199 892109333 686519581 832555888 730001754 832522607 588665439 780594729 934708340 950625803 353255088 853071998 646481781 955597847 499669286 796722533 634866737 939039940 293323719 501226488 426337400 543075522 994611338 999398911 314225117 778375418 435915243 773564019 658080068 908623055 913847913 958072844 222928361 995077637 533087580 650861224 976441307 980219016 31761579 492353536 244060674 537119849 878129287 980532013 746358355 814184723 829840302 912403883 340917902 386527206 278884126 878886330 454396941 648035281 686276216 710419086 477148970 859960140 91265917 789212511 216124049 674509738 224310057 418247565 422787106 455919365 587832295 673286123 188593020 574371136 695072928 837523379 514268264 914797922 229334239 276122810 266775838 945550658 339256722 759684790 195374618 985513872 634594120 736952055 332142481 602792956 292274360 510538737 437386551 475335645 773157883 988905594 986793585 995277681 955265736 998874082 336005381 895814037 537008258 635294539 549950899 809629075 488204545 771628166 370339530 633619583 387288216 777302305 141777694 972937871 916842646 988283661 658483437 981724119 238098977 290514828 763162545 816395510 640827837 899058968 915451946 990669746 649612456 772801624 371734154 767525083 343271852 364674141 969272887 977731159 949055902 989136322 330638820 476839751 109467602 840907895 668776367 826712497 984892423 990295682 757408701 838266085 58275803 832447296 330482190 512715706 674077599 988248520 10904182 148333499 592121910 937009499 86929337 399795997 709979499 793988690 938618635 951827172 715174439 717858931 976282372 980183545 744017377 788989980 805237558 923989784 947287850 983693310 797068450 973627412 202509348 841727445 951956853 964440245 918285534 995878248 90867316 568934211 752164539 867910281 691152976 889004955 240087402 884630849 988648167 994455425 862082094 931572209 1071971 873396878 645477815 820970857 356305838 707803591 292699572 723818233 48377907 767793952 7173832 816687310 465572705 743485107 520513838 897756401 764875150 939089669 590824560 696483699 380074916 572091667 164061464 568185171 129251215 165717507 254878502 797599574 498425211 769988020 566087653 746359779 648373908 997784822 479158398 886734272 485990063 682171140 331252893 757018407 78899830 722059708 185042436 444948942 767775871 856730343 85381926 831130589 183550462 586971321 436172985 661045359 739361618 743309243 630404329 927553774 106268905 238498662 947571370 969833884 193800975 348540396 262706442 475681342 985847118 991424403 652458035 815429412 168622320 670213793 352918744 554495665 136185478 861820431 574107949 901384752 15355916 95415315 525133899 922843502 881433265 949310861 807884136 812057022 500214252 892172900 321636516 367455644 991317809 998853504 883880040 985911879 512447252 950425218 874696336 940341805 755519236 763180141 814197472 861031656 818695531 918495932 277345826 735512627 976805344 984906563 503040264 701579690 272954944 827363378 833039234 934992245 938387043 952443132 139012370 152218454 374254238 993874776 591696291 842629856 339268787 651855107 885391695 986373312 102597217 195921285 816418310 960571932 450798826 454848236 151866275 849847434 570013861 934638085 714433664 910859390 231952268 623975334 123853345 838829743 788697932 880600130 335115935 340077979 616907223 628289856 279634486 732321720 445232081 543661975 281170522 685384290 438485091 661978783 367616849 625122943 954749332 997769439 829151308 950872675 622042264 748554921 512847504 764920943 334542391 694501384 726730484 963044876 586964557 785269818 229879195 627856684 702725067 988937391 480004649 630959532 283763833 690678085 725642294 876489590 168936070 242445632 773462220 849253601 280206334 943724347 101966244 937113383 508419919 725118616 750413830 872337684 203047866 222701675 30701181 92376654 913458069 921434625 355505174 521661363 666317069 880469140 133054188 680330836 161292853 428521409 254320027 656505762 238860996 280673759 596230352 951197177 972181441 991698196 633958382 847651954 682297077 861007633 44938721 418764778 282074255 323032409 398331025 439838749 675212343 797866279 874296853 944975837 113294701 419905676 499267177 638304664 62586364 911464440 492218239 919828328 590048134 619183183 75385668 133646342 452967187 778663132 8598826 527099575 911583843 992192321 261718549 379077449 799504317 924309018 204744781 827259420 128155589 813789358 903762482 911241570 185085221 761697393 859825400 980219768 869424943 920951360 398808658 801461829 742537391 929040871 269954499 768357598 712661024 931484093 253075744 617550155 803604090 891428403 578133543 821172834 65813034 601989138 969452051 989240895 369602335 542279757 108693421 721026665 52755288 836039005 915310635 996875939 682779662 769534867 841461047 932691336 648329805 650214780 640794805 648650166 263149151 657771494 260257454 822292300 487334653 586551332 566775978 679811989 805522713 824739927 965184157 966566495 300145836 652459045 671161695 711048851 693917319 702968197 762246514 968678525 731305794 963301525 545124427 613563081 307303115 548431278 333825883 735416926 780231906 799074547 358863635 737995894 674409023 971112300 265588004 302638936 524948441 714232870 569671058 803515577 627489849 884728623 573578429 636862771 938842391 941161595 152345537 532353555 171151297 186959517 28078281 273236682 659880435 751670457 20517546 788792905 469053428 992104604 260977548 667120646 768159287 786470662 997099911 998642629 708138196 782312767 915720460 939565189 359640474 475253239 143188550 703976097 89550200 200639337 237798170 898099201 100774328 462736661 972827223 985324686 296214574 439481170 576008233 662700282 344087716 833311536 410187286 940842035 465181786 755376266 914491614 925479322 393089089 577661681 173126715 450032700 858283131 863733693 172184173 892571332 114622442 980349963 956870132 975110753 558848373 654822283 4234126 203701869 716791557 832107930 166062547 698425659 658374516 964406601 327685901 801815265 245927871 604702758 215322465 464620142 786019205 952939575 591086179 735251524 140591069 702409129 127038094 771053544 673047647 862644786 77147148 277221455 974550540 980813599 843275486 901711832 338434119 847755640 655720475 986766990 897780302 985170855 162823650 726997454 368753907 397920357 679684492 788164466 897316913 968471025 506799039 938841264 970536243 988981306 758280911 929864504 152291623 334547884 189546900 741452650 678387818 724913919 495367866 829249968 951541027 972505490 3431416 825710248 426418107 913623117 775867268 825718732 52635273 565669232 592449441 896117897 113318606 486683671 671635400 809217950 780884380 953737800 876799544 978137802 913768920 980051323 865234576 936289064 240067141 769855236 812765556 935751611 579815000 688796366 99698518 618443213 941461566 945033652 563534737 936361567 997306263 999929024 319796065 844192894 4384169 922303041 909006330 963141422 538775655 724644920 978577313 980397714 462651490 728153808 612058157 939894448 854992767 938100821 894671072 946154632 310143339 356663924 864412531 921514613 927212898 978504395 60371949 796223982 831057153 912170884 549026738 958022016 423033156 622833987 293714110 891357474 838039549 869263299 836048798 839817672 658881022 801657169 231090160 365781012 819117037 919410213 207416624 413600220 432452621 828124801 190260099 523779426 286874001 351972452 288452015 832885011 605749318 748031170 242205956 455897005 989596557 991500458 654039278 897354316 843593047 915781914 810305893 872001946 65187135 82328698 578100251 906801134 95273106 565884972 810975939 942931208 909787525 920005546 905306366 993357047 566896848 906227850 14520042 532410120 978515981 979574793 7942515 448804777 745587582 915901465 765478645 945589608 238077289 464313460 608744306 798374375 449609355 657444028 565845219 761450703 320324764 352491465 973945533 980795248 259447060 745973743 435183068 476523459 880422793 911864459 475518437 807145207 922654636 966404378 761743307 971341797 294469641 403569405 103517123 469542851 603064650 662015248 424433157 882429487 232158709 679328604 132964996 323779364 98765510 239654140 273884634 928856733 757057595 926541334 693582567 975738612 391244806 808569912 555021057 986379140 635241024 666551638 392076868 597891306 469193579 713892305 91722832 631636085 126580828 804603673 238091272 298862138 763516177 912727809 775870963 808265752 740735918 907721708 637366770 942817890 850303129 989757030 717388134 884512540 45690620 297617455 757555721 903874761 105316810 196339514 713244518 770959893 455171261 811883219 409516214 775449456 347903961 750987089 369486513 630044304 244576766 283143918 854934235 949605760 269168873 853733752 68729134 464194933 155518782 646675500 142410813 495109025 577412766 722399422 778800506 972389515 773683939 872977908 168175871 604752223 869701828 947722826 313395984 869283135 170567450 871126666 178687850 230554371 443050250 664331207 106730861 786290132 445552429 604484976 885012822 893048660 742560510 902428331 670872989 933621266 356266369 708940532 372667036 900584660 247976500 409250095 655461009 769406153 614755482 691417828 747302178 926984181 429138972 458798918 585242983 839252951 154922531 649443228 789276317 842581686 689703161 708613479 277177414 490314480 202527071 820456827 402913530 970323944 902037441 909395638 986458840 995208651 974781046 981290111 345129045 516783056 384474780 500585822 516507537 525477858 23576337 666535156 308232815 413044508 335626419 619261650 281876274 610747596 408213955 708791205 356181432 487294724 777845398 863333830 876540335 898532516 858235308 877936381 608308767 658180363 301253813 905412535 882044048 999470908 906926540 921971764 554503000 728394320 168142850 916977199 786836934 794652383 303637745 736335892 803151818 838897436 117215133 404527877 221275645 360862572 9023868 326464098 669337861 997176466 71010725 71922875 242465071 659872414 109677916 287792775 791760471 913519219 390644207 651646425 860265896 882936152 54465325 618917936 618859004 676953688 830444629 865119609 570941387 572164963 491677026 815618834 899055055 968110223 500006556 923892798 26560446 563383536 794077066 843901459 771336810 845135160 332908322 442940625 210794299 816025533 303748220 536499511 725486507 897256976 779616258 968969152 116814078 498364050 208431511 513553076 354235516 444174434 892935118 912298983 606138606 840210547 669608373 825578677 745318085 881588739 956177686 985940264 220111672 887018504 139372424 843283788 270469702 604941098 47778755 109008985 901017797 955740387 122699555 125273304 943999115 949353742 172575115 800134566 903748095 932849209 271807736 273972884 829680365 950829145 606284392 994493852 246039513 807404594 517820106 893754181 730179211 817839623 931595435 957791833 899740976 907510311 499265964 826261015 883527810 887862677 996039335 997875026 63785574 133032457 443307595 716025810 441670530 815185408 905836511 993950479 797591810 839181235 182718709 613176586 884741052 974885075 339828355 839564254 343703845 675164497 632137274 644304429 520062923 694995150 685883263 775696783 963860901 984753887 873700515 945537808 361476396 917981144 300196276 642333608 749293416 824074000 689900506 803158337 867391350 991337013 595446598 753254287 136657794 786582847 135813476 333002157 71075879 837277557 400635307 528489080 126110778 639850638 812974046 840089738 409912648 475683844 792823931 925867216 715036432 762897404 764041424 821328867 161091591 504431959 512030309 841360033 62415589 425674270 332386355 802272994 471343662 907591805 534895917 633399287 779925141 805021194 790245839 947821352 314935295 653706017 219188287 765910425 219897715 342999658 567011064 619711893 629997514 998988973 409990663 732239315 965205302 974534070 907024585 961948993 504315287 830356133 765720294 881416894 437763316 881101790 634622864 760340890 285113696 590340099 946118485 991217961 75037629 954360698 962188913 968491976 654853555 765416041 346155923 587383807 970343060 973095541 956600681 997030184 59398560 249621138 404019325 840935231 396941737 827994523 937639582 977054455 640919499 995848477 608712210 748739934 740749529 904248360 817862986 848885753 347901269 894448017 847996628 891709589 215314355 847979050 510386030 718195094 512575148 681211411 53944624 766868084 895421584 977131930 197440128 544398991 24420955 149492315 227779365 821548543 260766403 601821420 169598924 835433437 530410972 787895469 194625558 223730124 647025930 849452366 581951572 759901277 888529861 902826290 389777532 874516315 998467994 998480089 870610134 904385978 585514331 966911087 68045406 614656329 724982349 742297252 863181547 927212274 186889316 904478954 493042013 844511627 853390343 936606368 216162512 956060600 228270290 625364414 504280825 637561028 27919866 996134988 535256895 575932128 827535677 912841553 324058862 831025488 701606768 798959385 228152969 771265508 538976780 674382097 526805247 733380558 274370221 600720546 793242643 943864399 789452363 879713173 658278607 812506718 86758790 408693822 609767445 950689307 158755312 465714976 98448440 834211745 178906026 313255320 895173483 917337461 197195096 981642381 943243295 999123798 832177885 892204023 218629496 956867884 6527218 592230696 92197585 655225508 341053617 817272481 393086492 924897801 1256030 498632553 34369863 739655352 981829869 987975751 655616475 756299945 824747883 858230879 326772249 861890819 454422802 769887305 262725325 791076579 823920078 927949629 807248882 902355438 521556682 854317441 563668499 616387241 38280704 390091803 539154635 985743593 334851420 362323878 541498371 947684241 624405863 750339831 799361965 890148044 231907852 278984993 561904377 975903646 837060820 889367629 381629186 994346120 457980402 864131199 398095466 457156616 507649918 746862851 699630135 776348883 650905949 746535837 968248559 996975870 861781444 999683286 667086598 705659596 263487731 598962816 232931032 330847886 719531067 802390886 582893889 967693855 241593137 507335805 378083961 650927348 329585099 634509780 457215175 519089455 201375376 875619101 602845012 783708878 56002885 494081477 38291719 103477749 841939980 917748918 680359775 898862944 583277978 790729708 891921206 899990971 381123950 549928992 399941497 706939681 428004213 864048773 773111165 936546941 789292043 809440958 39356553 168914339 516572008 913112230 167885199 998994609 550069142 895496296 803511409 881037671 338379720 566635267 835600396 889768650 578445913 750760392 778894660 936017367 752991826 941549632 175626542 219164465 51906790 404656254 351483959 492009453 974447581 977703337 343314309 719791132 156338505 385167281 573277007 800384635 364897757 467803701 824017784 903241772 325333247 452002698 629646283 919797301 192792745 817370345 407581623 696317063 692756434 711481299 631510754 707580223 709697143 919399020 473944757 846595223 481827923 963771844 217357316 741125909 428887496 748084059 918370133 995146264 277469815 708027959 294967000 926145116 327900192 987089331 243811601 463042725 764564423 931056677 278143623 803769735 230066932 443878363 319514515 894486867 40200225 853565635 146095508 678345341 698383146 744075781 1844932 820547226 93690127 807424573 26597495 589299205 604087435 761745387 141916451 380209163 318883792 520035479 52426973 164384764 768632463 985146579 992722958 996743599 605424197 838982664 940076642 971069458 405058712 817108132 361903832 932373089 763509620 775803219 370298467 978389914 542674050 732870675 997455907 997689994 327001081 438259666 528141853 539222986 339152284 870304836 95054850 353758841 637617754 978651773 255895712 365815378 583354893 827714210 337543448 644893866 568127378 660467687 465564493 504105032 650778194 856736099 538570631 922581780 241447597 599844578 841710464 885743761 884041094 999902999 246620169 902435574 71725195 571044518 207868914 748464694 2073594 156207943 954688997 986220185 940557242 962052534 709479806 925773152 86468934 479742820 427231722 631834488 808721627 981670420 15912118 629630771 552950399 580836671 834791775 904936021 247998409 499726741 669241601 731957812 315323460 456670990 272873701 488022083 563038119 624460346 216594065 632183794 693477075 853314537 870830567 920094418 400557270 706425142 20723102 824078480 532304248 661182158 565912072 906890304 60713777 156230692 939738085 988894127 322023484 891811055 619422365 766351238 541905740 938407012 484173003 511181688 165450478 170442255 389113430 485994229 291457807 354238219 936573123 999124382 526314726 541331528 78021483 470146620 464354429 974246575 122165927 857770260 777634029 838776562 816737931 968370601 407477462 562543373 909037619 918030352 566130472 777608776 419294995 623581157 474831257 933752994 232793589 531943523 379808233 496450233 233482477 279915399 220923734 331353411 793189819 943389390 541652885 644566054 100016768 252192994 990958822 995705608 139944853 271640914 648116523 755805840 895679850 922301851 69582182 979093204 183791575 314597699 648972875 925934724 821466578 858207045 54185293 867782557 799939965 832917033 929041642 939295668 974856235 975436516 555314017 967475270 348208389 829802121 376543537 427718413 117135928 385196928 740615921 865980020 101664857 856033508 394360576 768528704 576733812 974829646 788553166 945442148 683036212 730491733 183645400 331243700 167332858 390299680 233795961 291278286 387070910 494823773 949132254 952664348 186486583 346574689 273906952 657985399 457852515 777107981 827698479 992840306 255347657 501180852 687787945 855252345 859699002 876026450 942327606 972714389 415177873 437398123 421304174 576315497 934283405 987175852 166209295 951087398 978074715 995736775 970144274 980055332 54289774 631195514 291771924 318561816 912431707 949859808 246538090 717733368 984592037 991654141 114573418 707023377 354000517 946204894 665686975 856945802 577990035 852940429 674111067 755017873 190635848 428678723 360479195 883048963 758081734 796221919 774677599 779411600 210675052 841885824 636802883 665085785 459328474 873922054 868384721 873568510 78436693 947966548 440081600 719747092 250717634 587753984 493794544 721337265 504390261 654201392 682864375 828410116 389549448 474223448 125630163 518795437 241741037 508765163 917148685 954407326 362845085 779468878 108634548 567255289 256878127 352313488 666946969 991726875 308999144 809216487 67279599 159819328 435397624 719510349 539318825 560755873 773887348 891470625 795392834 845720051 18900638 764025994 5920088 250250997 412756021 961646066 706309454 880747398 601488822 914303853 236399970 548950598 316988618 941979432 884151825 993861557 316948469 582230158 695728147 851931314 379606038 699833462 570069035 688782498 454584000 680407722 490683265 639706857 788009138 845923429 242409978 545271553 177551858 589434585 568242882 962887408 872553245 992084380 889444378 928080610 796587789 924874817 547939019 675072324 503521549 782758137 639098222 946331870 190679141 935735837 863345104 876072703 514779665 561827482 635150742 852567252 189269403 946133608 809536043 885256346 535429538 560239683 335153068 555984802 467994705 482274228 207258841 299463897 180781011 321270087 888650680 971867396 345322348 510614557 893833773 987602841 285828856 799925516 9111214 402374960 141748704 610398830 855947622 940849708 208428377 842477014 212767062 720715180 652211354 898114443 654314164 691940972 946711450 958127553 245514752 721287900 371251626 773231439 621643286 737714058 272330388 988147756 725578218 788359928 179405086 488375310 535819420 764269947 275237574 516897044 935900312 971278997 915139056 964739633 390073051 625385440 316758777 415300770 724306080 843344252 518539312 596966200 236699430 852880198 751187500 929658669 794838149 935182360 496393295 956719362 250123638 334101541 814122541 865472810 483873441 901945890 957019913 989895741 694189024 861220735 332139059 882087854 534696221 679469916 884254199 936701856 721773891 844686718 461039156 482925583 251283432 336685325 349690939 475747118 175032382 450412874 773697768 850618779 948464373 996097535 449594789 906696610 914053980 999514570 230300290 786414900 957542148 990856010 995673322 996994797 915259067 934348178 585243600 652145122 551992800 870907552 575987021 836908948 840654298 889083491 915579807 974165408 708379823 847960446 551777870 628263419 275741727 477155841 840403160 934442692 407782172 750043472 62345111 207622149 136234854 762928836 883067326 893849908 629821910 738580104 206685160 209747171 298268769 785796405 251468993 791429523 276873815 938940959 912365047 954013689 237303623 389504294 181924358 663497626 663144729 857996600 984280952 991767384 636792083 827227628 535529089 858098446 915948286 938256114 413419057 457000584 307941450 912322944 590205984 639854447 222553094 886670831 653016078 890991608 364868916 554936928 153437462 207305137 4305261 123619053 396380946 643604497 242142199 414436969 266197649 447745611 7469248 827473793 884641037 970798081 255076825 783496793 137868796 284583597 393459369 841209346 600734740 846450967 696965024 955492376 328751116 814141687 213782510 980102023 650504185 700529898 513891693 938926743 609902157 983041956 9136451 820407214 193078297 818897468 166611446 180679651 310293850 818792238 950260641 967054305 299541993 969453503 196416644 672759104 35907686 848159592 164243913 221269137 361067195 480234304 583641688 937409428 645026679 821587123 180850938 387827418 645418456 775310180 764774132 983577343 934300607 962875293 615961906 720344368 840506061 877488027 54851357 743165913 382326905 482005853 250443919 644972936 136154650 600864748 731472467 903334081 815758766 877743830 609489934 784370334 10241332 309085782 587060729 809147092 58581649 773093248 453426331 510446485 765206169 958509035 913555067 973824796 110229024 842825748 77428477 749516171 133259138 978146369 948491578 953501189 180193771 990122763 68185272 991808994 408516710 726850973 75468765 387913807 843977740 990364926 230884815 845807467 402816769 756789759 720952344 747329115 313577917 805705222 62157326 784138403 153490516 430258601 606202542 987367196 809164536 901980055 109110217 752403013 409373061 412270169 960168358 983702182 751712095 886705702 8331104 344463005 413843539 544648321 550975697 580910268 260380340 852989903 345078182 932143921 336726463 668431594 256301376 697786926 556236453 960048611 775964792 792907335 607412434 945630140 422888454 672942708 600863651 729277730 844426065 865348469 269394807 637465491 577398648 597776847 610412354 658429277 551170433 744972758 985264062 991084820 105224691 810032288 125993958 630401082 728679485 914250681 345575359 561089740 293329389 593531055 726678358 895806608 903170980 946875485 217125856 845199004 994375228 995780555 76956157 938092677 763461767 826596069 660352860 756878611 869071579 899468174 948998600 995858079 621596464 929406739 105416676 295377024 800949273 909429648 492950581 654027067 793113294 957064290 892554956 951956488 297129048 751890078 17305117 45571232 891880897 906519334 402169502 506513533 901685323 945170809 227388668 307501071 687076412 918490919 921825146 933767322 990571793 997502787 118710684 985696127 678995341 857542725 265143710 287738777 844234147 865997005 871574863 881231464 640230807 857544830 324690652 970572414 345730156 964593506 568514650 740419330 659819600 664335467 844905450 853123167 759545051 806212591 204736078 777635485 819928527 898804778 508638885 962945463 442658095 859784958 720650834 962921212 807288228 958339113 737463161 857448488 295984898 450185149 199026042 301718604 316017771 954749185 124673999 827646767 610246696 988809832 566449864 840021844 52221129 310163776 400733114 856819862 46314028 355794424 681320230 982824044 685124783 989473371 837543597 901120876 487246188 979761208 261206889 703622216 929810596 992422880 903594551 989465034 440227888 943785398 196942904 711872812 118825973 566985812 957889994 990993681 460250102 497272733 986072110 989020654 149880183 535344933 458964518 762974269 633640707 716521128 242271058 632307523 787289398 908861852 917513355 989274335 458756507 462713283 283123692 393882347 66029916 952344495 726385889 832687125 214775983 753309999 190139764 883701919 93354878 764317770 717617967 766156575 173505973 913710693 431120130 914561947 28830352 191828810 378378403 415473234 920578242 942679587 531633675 794511143 410998447 677759107 523716328 569556959 540598817 944538029 511768239 825239621 300326272 358107970 933379491 951880945 438238434 717431510 954875488 954982170 15831220 81770203 82552354 263693032 357325620 731575842 367868568 483598459 673854683 847599289 87710306 707785978 411119103 791998642 248454347 926905990 703479693 777395628 813167821 938637295 287343517 905922665 331490509 431355491 755730982 964230800 524625488 736470784 963060979 968830799 557261911 875311778 447857444 546093793 146799745 629685161 489895101 731292464 595231890 918416046 396921992 594347616 127742152 255991547 603716067 636512147 353864423 443666065 313248594 808658746 135627756 635642962 860633956 886579717 272616899 557835583 227382500 819485662 188236415 552476255 618946908 957288415 715828273 750907866 138552706 286397433 356259532 427674232 775183655 854483992 884659356 886952909 663948959 745160968 197776012 884160775 840249057 884548891 519270389 752776005 695444080 965799280 888855204 918112573 801859813 913566969 31872552 617569610 382151080 387484431 293269459 603785208 645748273 674447985 985665358 988539238 678704923 956918191 406564726 914051442 116139503 120064971 188655439 493867318 946755812 992362549 670004926 819427089 660729688 664459367 7505895 754925682 186600125 842514899 891788835 922624340 232777090 492801679 81541107 779236220 720592078 742431852 272373289 479487576 736089837 880851403 806930785 826348426 750839149 756093395 491761949 749618244 313806422 518827135 7782645 762758522 863337476 883250762 229007877 812366495 805654948 827888937 955965280 973216014 395332931 812515506 199327188 826295544 546604444 980810055 556358769 912772003 631354365 792940518 886548918 920637145 399594703 852440663 295610371 514390751 482577329 817253642 403369254 757602423 524834426 886224584 762526285 905025114 811794755 906584686 498091388 824884819 589810361 645762603 346400677 414438496 171138363 661728823 28662887 341185086 577024714 950189814 417710678 566967926 51666208 134507459 257659079 700947160 177675888 856778329 889274934 909873718 520093566 946145363 67502951 183115779 301728729 884846386 800287933 974907877 369064036 479144644 973155859 981560035 850038813 868663490 650715676 911959731 168330129 429268618 536520267 856489144 662466713 704637091 853141499 981243942 774033167 800937155 370199422 865476350 176250958 611107609 855529165 919102050 381901069 560461798 740741035 947997380 592335677 983650630 629502009 700938734 383851901 872782348 57339450 564660102 941248612 943774659 426075841 604062888 712538817 772544348 880832538 945587614 44372429 231707793 13428141 936885235 79138582 482812115 263664197 809789517 136140022 744824340 175317389 502884749 498353394 653617748 489430910 562151635 940641365 964967482 98282065 475219939 965391194 990256247 244875064 332825834 51060332 205486185 317030659 992245348 756379218 842142031 851452827 866466192 276007913 778239348 854433907 922800346 54127219 162007976 96364312 770871473 819530672 876505695 403830676 933552165 219965100 277277650 406260953 598695599 425627558 995376216 881306531 906563848 720570162 994690550 650558813 904624049 266196392 787595251 322361485 541106803 594903248 861986902 420408871 613635461 608556237 639472161 945918062 999101533 399541997 871999375 426151836 905738459 583439854 739021184 660564738 768156816 72089204 515717326 96469663 959905435 462525794 674972019 512367083 528711107 381452109 886417491 202102497 524799143 648371112 989543288 382050987 966456367 182131741 862531969 212233051 564750675 216011831 595974542 34619808 691006982 502441362 766626602 141601024 759525841 873973808 999027421 323017687 482496329 805804793 948436481 272138648 570072270 437863429 616621661 638232925 689337968 877435332 937827275 640655956 641610866 438773648 785614672 426937483 596736861 536135664 727633586 636155812 688420914 534902774 652718414 512267793 590572381 663626347 821501922 750098226 770511559 901375823 975353274 754208452 832322355 988679998 990336317 592363421 823484056 200024036 596624347 268871377 873752745 225033705 674769604 970876167 996439379 134539251 432165713 304920611 670695744 706998076 992168672 633955886 718495868 774557339 846545230 876735062 886187459 308214999 701867838 299326257 717628218 620685383 784023116 979676520 998352507 953177318 978094552 488567349 889350739 140252420 691637077 554065438 854733985 56196560 905336867 68699355 994417040 996254386 997463791 839871826 958400174 977550812 987217389 783881691 786785053 959773648 982687130 589248381 720725993 221660560 769018117 789568784 939037726 224233128 708219714 387488896 780920032 993003388 996492867 873814983 953279131 308257736 950418779 587049132 609540619 571290923 731805079 893013892 982952009 576317343 678001866 94758474 869100650 435357618 586650065 759235641 846610941 371795965 380749673 192450969 965566015 44000724 292709387 247966820 390370239 436270764 749377169 196171495 830304505 557551671 825116799 2258067 25924948 471559210 964200603 113793958 381827950 37542825 960584130 838298358 871075993 107774196 787496709 292842347 665901101 358527682 946536667 885248934 901666937 129072221 212686516 43381823 940038068 685463098 721729582 987563464 989572371 622010813 865369181 895763935 938529667 344475840 693765631 506237447 993018309 369519828 843058646 587109002 670146021 925078683 925957193 341740095 667932966 897542040 959101907 211372844 619379248 886529144 908730541 164449121 613798631 62753492 451774015 342558912 355759824 298535351 631903480 364411083 507289294 324236572 995804147 31812993 416259272 668829394 724996424 101653824 434290034 613181203 947160912 670121093 747158071 160188337 847828183 215288150 674324572 743290581 775099011 650997294 700093784 531717895 890781210 840420876 994433516 852535867 989619673 370118024 475979423 982509997 996627174 405688381 841895485 6858705 407079407 373506761 584865734 333265982 740015239 38669807 696038161 509454271 746837319 430943617 586215119 836456602 894985291 133134904 774647028 963347 828215916 965153705 986837398 985105856 987257599 831345461 888986060 826699275 973503262 605091130 637188787 526935400 838371712 433891251 746585872 398680603 544293025 253752548 915922478 899344359 954257823 494741070 764132858 717872462 986101582 383391140 781792311 621821402 768749604 856826048 935726344 939831531 978596251 340075344 457973113 719762870 869788919 182918364 485478043 964205081 996756243 837382511 994680943 435480499 965539914 761177867 788157972 616261176 703100167 133843002 321261857 331921646 969474752 996486377 996668599 948237362 955173168 293679345 690211350 187635401 869991923 483138688 951634994 242022061 669835913 92057964 122590384 414793322 678799938 641860167 645865909 36906059 757789651 257349694 648482596 295563387 706305646 658921336 852642734 848250419 864730660 855024751 893725300 714503742 886618279 927112915 989681619 477543975 521392420 303233019 884809858 854227851 975330764 648097318 829857038 811422614 829488347 765378472 836225340 129958994 198032927 563881697 885931260 408592368 929507424 573153896 733973106 974867828 989791243 663004572 749320824 928881412 995329459 238617338 553235358 290853443 335638341 913847456 996100476 992034300 996874882 184780439 424600615 438871666 592450250 388142276 849553920 935602883 952814927 123008236 470308890 821559490 923890166 517183804 917606656 205376180 365761414 30051533 751853919 610874820 778342966 934096765 949135735 786678497 939062831 726226298 731559005 335898403 369713128 777458404 916038930 317476839 526422479 369070840 729744067 155881763 647705375 15863826 638084493 746250485 894039450 677769159 973110686 20843333 243794945 261072987 741879087 247431977 980920263 983718923 999686516 344784095 742381799 267254504 510530696 65656670 828927481 769722862 946814154 549019436 797577784 370247245 623315868 813477791 896823423 893182955 916317864 141384320 224677346 384525155 536402560 951321957 965073464 340900476 716016253 679067930 796670385 627161019 783101739 374110054 704649535 351144128 554117623 703379042 761715933 489846880 670926793 351944030 778190895 459430782 901986546 531000064 623279697 811563285 883005111 987132016 987283701 95583047 625417411 684261773 810942630 23144770 159535056 287995311 736653834 854068652 871081250 39314641 447838931 223671178 505312973 409036634 661885335 901020763 967274236 407951765 609145104 683623024 907904811 7424108 867531866 934912438 939128408 224975406 894511475 695223297 993166637 937410863 949653681 914284765 915777091 888589294 915670991 607166611 809031317 772839547 803999092 265297898 677030615 716447018 724909373 329722690 337692732 375119786 684014704 192580077 968396627 769846262 774492746 913811372 920710645 378862412 961418595 230861174 331228693 479873230 738322738 108057579 409214449 814896487 910139994 848351242 942361599 157802555 499081044 154033555 455097804 506135521 926915714 2714378 236593604 393776007 840779193 850970688 878924458 887782521 945746102 185606584 536200728 366091475 954065987 412815874 602447747 608354905 950968977 648276229 836873622 145352040 385773399 411901954 918593126 539605671 674818004 662717470 901801378 588830639 733777571 811558977 971581945 669816850 700776533 538893999 885448877 392714383 570988128 780060039 847676178 267411230 381995994 28318519 541160604 151624881 830486139 27065984 593043576 620999644 796902431 690170930 769380972 159074773 521996371 716791037 876685660 620379515 708634694 7190661 917940909 334099915 654745649 603865802 723764463 266788890 562204584 7534218 730814403 719789168 723153919 684862677 873825217 418696168 669043964 709428009 804018419 128576704 620170512 196076192 822814384 610247013 749656182 717004472 892989283 107673558 473548364 528358574 552884521 618362724 907507983 936470323 986227764 69697957 609285655 926863903 958410727 572402664 950922956 787974602 986171756 280783800 620455059 431179020 793404053 509908770 797119504 921046928 975840921 55406451 178381677 473323217 828991715 122211633 718570806 222124535 476977956 282703177 427893434 662639059 737811356 108094588 161737936 882976026 953798056 260971848 968827763 610720359 906144146 214780590 554770854 573673535 642530694 314976516 450606182 864545139 995055911 526563357 827600961 877621298 899880247 766022678 916540418 281603520 912016543 68312386 991044906 543100189 773862294 911696096 924138639 522978847 802973694 384353907 748499513 219471863 341536859 853135968 987696174 343873199 399072735 2012355 286145258 276599940 493555502 757212159 947243078 150687864 951048960 212839135 837262046 653016689 751269676 965030325 981151822 572808118 763083679 72964489 729075029 348213793 889678610 504031476 737742283 139495355 966740911 411548914 921139604 40818596 212156568 710129871 794186673 967183276 983956741 276019589 383773176 834276573 965125671 197669679 532476983 979568297 980414610 706884209 987651768 957899375 980436716 165434840 283673246 33895398 959910879 666352878 964022272 568387845 749208706 227003557 749173232 608606821 681594930 696957239 721986719 98492419 487315878 993188610 995654722 796871594 942042840 571821282 650756849 9058830 592838507 922150997 949316904 21842572 475589623 618808598 917601135 262226621 853143887 46555256 346288710 439188758 668743156 315585434 531323713 711026653 721881787 36737999 135190777 512663395 928044683 864275568 947894198 839631478 853181048 292258072 650252530 122735303 814014048 733353924 743269670 562251981 855356214 761746747 762484413 923055775 978252752 491573388 534988729 85063018 376975242 261877177 429303566 958508282 989377241 461038710 523389093 745406219 897276157 780953349 965757078 414645956 934985304 152425786 682242623 285021398 970471759 562229516 966838474 529885431 744702958 512261197 601308547 224512286 346379372 558664955 939472080 80307088 119579031 261391446 919936046 3583409 328550753 839212388 894855852 247897094 249929731 842978548 972107535 448489391 999781640 330608483 924424200 680927572 931152312 148078582 236159779 466485777 590138374 774301765 845047142 729208117 890158818 461317343 804529406 63705421 174657053 396836979 990348365 936447367 990905207 580462083 715115539 242918247 901890612 770732510 931522506 665072377 930271442 440311579 704806876 280707512 515155602 433289483 573028465 757083504 901061080 493879241 994933367 918666146 983493990 922214749 929878439 580501403 734262238 163865847 386649010 206691251 874778737 426474184 741266053 41772321 204214099 575218391 962614350 458150809 884449524 255633443 854090322 791435498 870874358 159611014 672707702 366698857 522373714 860098213 888774467 542956312 789871620 521452149 829063584 714144197 831866785 630149527 764948318 181354710 664450267 551488103 896046568 581608797 601937657 346468127 638146158 205631049 590549633 44649144 401108080 772157275 878323470 440282173 636527482 384549567 452118898 565531060 720248965 507971843 583253171 380886161 765228030 10989906 462948315 83096740 703815382 448129461 865734366 461448173 693351342 860822821 977606708 82478418 130654868 490467577 536125553 623839317 803979609 390977722 881792082 612183492 847778641 470891226 578710666 114811203 876045955 277834804 649902108 18532501 319529825 319398617 791848340 306177906 564057750 280536561 560000113 587659305 908671457 227599149 863060608 158601750 266426300 119837834 254704977 863872041 963804444 55445372 764492745 15979949 309938248 871205515 999844589 926407391 972928984 396401579 685610471 176073341 966527588 973340718 998061944 726401774 891579527 292154448 441823000 433922015 892614629 122885037 607090542 967868935 977687840 336961608 459021533 508229472 835061973 549177874 888777281 880640337 926139083 93357268 821375789 577280449 657765424 672372696 972649727 651012203 700485622 355711149 799529796 11605829 705643848 184344232 702697041 816832205 924599053 616431608 845076050 781959669 830800010 285001562 521675815 551060880 929907187 969100689 988437711 169379498 370915596 509004744 655776913 600886195 975824471 664708166 719873581 132699995 453506445 989233854 993906597 867020726 907391003 423275087 571525194 897718756 974093825 776052507 847770047 723782712 884810062 826495097 891782028 224083432 516496858 264159518 821847098 393700509 411842624 440121339 467373996 526667988 785493690 854189264 913691415 345987617 444842725 341957800 527758041 578915104 684495297 353978740 600366984 893009175 907940310 467429846 914163907 998642054 998881472 148403412 470847528 40824236 524967656 627796485 751957037 710229545 858044099 782426096 904080733 64572642 201474141 559498737 698980447 191539352 719261679 499073140 984856607 524368997 986005891 676847303 905154683 144069823 484603808 266300217 656666649 22787342 808152213 538490935 645232550 960625497 962948419 580320673 847372438 405939923 700996283 734290702 747218945 852734625 958995861 831357764 850769285 26002467 155357889 820375453 943368506 774147173 858131297 209879887 609696984 453349300 542621421 229394200 247567825 127657979 683675180 250005920 970513469 133328763 679715573 125963742 629474858 114988970 726463436 660994566 855252820 49970851 295787791 639927400 983182163 337238198 868053246 340679029 774783255 678265186 904264772 910238746 929268303 492975086 578938538 802009088 912347810 797766813 983912295 51072416 358950826 574512626 817573304 282579839 702704719 861940271 965472713 207404594 894305338 408304781 977125826 654090991 795669265 987659743 996166206 636490008 938408470 693417413 817525692 820129668 912328303 63953321 211813399 738466906 862792697 380903577 754959392 341012556 780055243 437415665 536686761 639138451 939904082 798526934 928666859 135840397 390539013 796261153 800083512 197226016 200494255 867066927 922994910 293990931 710608091 253828207 643212037 287715162 293706463 115590016 349784107 407760704 785726910 798785055 848199863 837013214 981840738 719671342 766228019 383014635 880794263 654528297 677632456 793622562 823115414 428606191 846406375 476225019 508851243 977611082 978371654 527018049 977930584 290779709 953758701 943563032 983362882 613764215 646680795 640700885 690450607 66078091 700116683 942392 963148811 112916749 351035919 72599471 853759882 904030150 993872840 928425094 939585054 357502098 520010253 31239512 743356628 803786840 821736661 223970563 594145799 806554666 987366761 439623659 890690025 661043102 995056275 368344081 965215879 594485163 990507344 165033920 855670529 549129411 623171375 23699497 627234678 739443098 884245446 103712146 792501637 576509825 678359946 781487246 802480076 486279287 638481390 744904150 979019037 798196844 886255656 910221535 989558768 517841339 658328941 130725294 403604984 51245703 218704340 209879207 327118151 16294631 784659014 927793482 934630641 905875912 936729643 964921231 991908019 136600357 187462148 998046180 999121739 690288375 880350533 626148915 676602517 277587145 699514305 771258391 839509005 148769599 757709743 266845206 526163042 299094414 873699639 734778790 908495082 78258492 881940527 953453450 965982857 854637434 939964881 408946130 460469223 397015330 409617008 277069357 951825549 564734241 995793764 947507347 992879912 48466605 979555317 998256244 998338972 690721616 835179152 804081404 983168210 954021404 993488278 11048362 217820154 257611621 953244353 418833798 589904718 835802683 847293191 904384627 950660342 810205657 987456465 336738783 519014488 520264333 896421394 339345469 714216382 520204483 607097022 692603689 957306888 666611680 672158721 742085141 808561146 881743991 910340917 755421983 952858686 830540586 874020971 312402326 528971504 968862922 979459141 358967229 986109779 849854539 904125031 824920307 975885731 127536767 903945474 909887479 911987486 920272225 965999087 147380095 289764644 266682250 641690815 427632239 918998554 173924815 207760126 122530799 255917363 477787104 745453876 858036139 893048746 883356816 962579001 332918450 568662394 818984018 893986330 425972993 984678128 425965757 444240782 252208232 383551126 614278304 690601133 810192492 831032635 187144585 669780507 514697029 595995526 997533693 999569698 585903977 668649411 40545089 940702018 577117954 982692072 440418472 518346728 665597798 682439412 650003333 813963205 448142352 486971594 342516854 353958991 207481142 510400015 87488097 871007933 374842526 712494140 81439398 264400112 344942211 972283453 299802930 428930226 798489377 815325894 812624008 864410673 12009687 205004093 470758649 670783345 58453909 221702425 567294134 919872833 431366701 548443266 442976520 484820163 672250122 754457035 524362409 652853226 909875910 957523465 578586375 988941110 157266854 518995778 959543045 991940771 3624215 825252921 589300824 875863918 139830137 477280234 75404071 530788311 766158056 776292343 688580245 931488922 231469742 665218982 916924747 944827692 625672478 984540190 75405651 710387714 418577033 661853991 478852412 559869982 369019501 696877099 702655514 952005400 876232388 880312143 43039923 284644099 93554265 673176437 125163503 797726825 737964837 871309560 188356962 765112059 701225688 857130239 72663 473168522 674426838 756730560 399016512 683610374 553392539 661280606 620922390 774323288 426862667 949376158 450976466 806386366 853786458 921580516 751311927 944654083 911695208 997487939 780418790 940769249 819275384 930890804 663047137 664385887 843567468 895859367 188662113 491165303 417170220 663822402 418727673 620114911 466523433 490354719 261861420 573673743 283438798 650586520 29053845 452142547 274172140 679843028 413396148 650728850 21460753 545544880 38086248 903273641 291160045 820847627 848951802 943976310 281118199 984130625 474202113 629982178 201314276 385509774 919358075 963241725 746997088 806667442 979953569 985809121 558451301 597617711 583262955 785015112 800247901 876403751 131505312 380884527 337722001 570078955 314563709 732253844 361004220 507638296 841619784 981012865 866844092 918000573 652574124 851968102 941838900 962973055 454494881 976530564 81173873 550177346 334718711 597351056 131167063 989626719 534804734 839673733 320865995 490250213 68528906 777830716 936869636 990618656 661121082 790188269 628259740 688864684 446296772 912424202 943197726 967161848 97013002 721494848 744100927 933888098 625846828 859711835 205566038 286901788 872700940 962704067 347390641 704250983 794348361 942169329 115809287 333817623 526917182 628010469 759644902 809099553 678547344 719494603 512203562 585292226 894799111 912608667 254618842 616439164 263146256 608567717 4281449 577985809 810454616 970835444 310114885 485534349 574497051 930431022 445519868 620759549 324310729 698552244 170135265 954091550 129973361 346778357 832273960 996850771 221707722 848929014 144778054 819942948 15577273 991158761 515631096 946826731 146174463 754163197 959587768 991493287 461512315 632478143 711602914 783695162 733544946 978150189 762908848 992345346 925806640 936940042 218103223 467282277 428510636 829688575 664263247 949131782 339169316 910763171 401649696 486434079 58733358 386001119 722381603 741374497 752847018 987803801 655413215 763812079 643797907 957623281 347362046 793893433 919068190 962782417 642642823 951790746 970021850 973699828 522632380 917437281 10834765 749657647 531172330 870811164 45106044 520245338 151891733 304884696 212237908 308610713 791203909 942416906 339771224 618682048 871730288 968004657 977165937 986078020 856927866 945112649 754414483 781051521 401444323 532836636 196347112 419755918 211684834 941925314 456226345 551637287 843307397 857739266 485843415 874584669 593588441 973182124 558049284 972642163 296572363 449447584 554400256 981758563 112228884 871325213 110205415 884222732 496427548 975579034 979054221 992343150 59902140 451129277 958812822 976388795 303948379 816004677 632052780 657174670 715387111 909162170 653117072 736204001 697209453 954241346 151658482 828330737 853337587 973408456 73644403 636851160 702902392 991182969 439246241 521677226 39630034 121653259 115281807 699677266 584656315 713481167 602495811 614853151 102028435 327552717 431769655 652004883 255566742 508696337 528628865 808224031 368915462 508969854 166253622 793666521 699092143 913956599 897951564 986732452 95642854 637750442 580188458 632917906 814495013 912842204 150482740 328659482 735719613 932662574 854741291 987007416 715474410 908921998 359665423 481927732 407258698 882631090 650369172 876867499 763215325 824815333 282660234 296006512 409459989 516925787 504564285 607121088 727812533 996599173 771719587 935814775 85840406 273389544 586138612 856253412 114868368 824043053 29513034 523481953 340241450 962393726 23650500 182517556 768872104 822785395 579079699 716939487 348829764 935041522 326609939 907314885 410817482 632229996 844094042 863015023 467447193 621767140 328886912 744148816 110178610 870041745 452466024 820623772 453412161 819941149 804638681 819017279 661112912 846795320 262446303 755131261 765822430 931473110 1362554 736184581 909479957 985818552 340320314 349742963 9224100 558784801 823483703 974530378 143664913 402668961 407960404 551413737 180878062 374436600 26397526 215297123 869801502 964361033 413601364 839193493 476594724 930701582 678025838 988117037 855551598 912467811 196503586 649349950 572947190 864293988 696064365 768929259 176036232 344469074 594993193 722418447 193689078 773350177 699224705 731420927 180210212 899947891 414100566 907038318 618872029 763616730 597692963 748036257 77894486 440724635 314953576 989051807 281159419 381049510 138505724 945790428 651089127 800442152 365459851 967201199 543591529 705065749 454938758 617585791 391526429 797678315 858201663 859975482 217761740 921068157 13032307 878665033 546696716 580670440 747217654 827501586 285484014 541381291 863617193 939054552 698673602 946985779 779653131 803255639 563453181 869382203 303265714 977298535 570541931 933892497 630769197 953920669 648985460 967198500 51382995 432461466 123717126 562404235 510104002 685008659 202842879 414630438 984446561 984812348 149303052 885857108 243852219 298175512 836348766 955372499 864553432 892378411 17471291 704429016 393201953 905730165 122260071 717112867 848506705 850077111 498761011 605855434 548044515 562059866 346235883 967299764 180064754 772812252 882861272 972998981 677394869 697236147 788354443 814974337 451738168 743109407 543648841 864300433 595183851 968206450 453321507 478749241 389719876 590407615 691053859 972121321 127511347 641701595 658318655 880790480 67925697 824865034 22912944 390847122 627491286 971786486 732971949 810199739 749197662 799533811 453315533 841699199 344392863 622558017 557540772 927825842 735531500 871145619 913423019 964298611 331964626 418514475 529925513 768388100 62311562 525646981 571655738 612121144 198521014 748830366 743802039 766442255 717314140 922779273 518778287 744652537 790098667 963950995 180166814 234636240 838703509 962622757 365362166 447383911 987129264 998129664 946219024 970608856 447082159 484871445 445973643 698138128 57433907 172255189 472248536 486283631 791257866 836440082 223458419 739261870 502266422 693273376 381544293 990168610 472244139 966770106 4759992 443341940 952013447 989231822 742796915 979945432 754936880 836405666 64471736 982280062 329464975 444327756 526328301 906986263 448303944 515233881 839273738 954854193 652517223 693600131 797094615 978206318 425456828 787849707 378477062 795011866 677699718 696496193 706249092 879789029 263904401 666751707 286648290 410347621 386459530 689949580 875420018 958684434 943144453 979158900 547025735 680195547 484202665 840604416 620637755 882035446 290364108 522248959 284790696 812236940 911207654 978699689 838652269 989330574 85754822 231314785 41676769 338034603 359672302 481574895 568013080 913379650 77208322 716718873 878447281 920447826 430495724 770850203 392196319 948863853 878479317 888160790 647776286 778843013 639534415 780822856 99201466 184113294 991857454 995070832 112588508 153796976 27264992 128387855 991794878 992602139 860077852 951624467 672442182 877201936 71241834 568587123 490437004 752391431 979805345 982728568 892314032 992031656 492696657 794928090 982368020 997180845 763925939 863925573 170262363 308455151 366638230 547379337 74723844 420978726 86364943 227976035 636371727 886306341 161520171 811687606 341748126 473974088 215413614 399852230 593271544 831699066 16626241 601944360 242709653 290670280 238001135 371939348 922973886 928850693 603251777 779605965 224564838 251728074 850319971 979478526 699167768 759044527 419297436 821481525 601421558 613178543 513607118 789641615 540804886 669429595 125734305 873631757 622926035 766044792 949744731 970378616 379986129 921291352 495017116 905498497 548680876 705232387 642539152 959184870 952570901 998287673 943639741 994762649 149624416 907826804 527890977 809543183 700323025 819902783 601818801 930158072 262341261 440550170 264180199 418384001 980112864 993131872 828282440 906905696 129437838 901425530 55357786 466260103 344170599 768944354 75086435 419913828 785214888 844570008 63575354 126003691 174586891 254625048 894395340 945842176 201111497 479500089 256926740 880467121 965940928 971682915 438694474 860182624 372604098 966002100 42149049 471711871 209911937 333808771 405647500 774989109 138753801 836444956 423024772 642050312 402814431 967245619 927806169 973371518 208465093 390488135 534995476 896532411 382147268 844320511 336324062 868376273 717520521 967973224 316814492 543500653 74958939 288122939 197522063 490310038 435992844 446956778 298133395 850642930 805419030 908284455 583126812 909733731 715767590 919898261 569234390 869372742 500988376 971868312 831734735 940173132 781980256 987778281 697720906 924920561 209643088 855697384 374920126 906047535 468018785 497489217 204395462 530521496 416005021 821730441 647162158 917449182 706806018 963198722 974442323 991210016 685869320 706221167 170842118 419426668 328025725 596479123 996430470 997435236 142329750 852024290 373925737 903730339 763198465 997217285 331442354 718804706 127519057 860881773 137418842 867556726 534978560 753870339 74820361 797089142 163462931 275658275 555075149 719955983 468911325 763483605 337042079 380292606 411570296 626487658 680168284 847630884 985007012 990788033 4501980 634188201 908756982 940609202 225458811 671192164 962986572 983677018 748780175 934957663 581011240 788593755 351734198 758723438 592796756 979279214 813720257 886489978 818374052 937045086 107203621 967577942 404016087 910227186 101814210 230030328 969192762 970609056 823950373 852177187 639051477 967768417 134832742 769187000 193344600 743569105 893752807 946312634 708610774 965576598 620223337 924337845 873845404 980397216 19425021 605734268 237390258 517785526 256060009 466299822 601691053 614592930 221265470 642937182 444861878 533431594 701438791 948836649 88239883 140834226 234910949 631143703 509082238 670272854 933733383 994729768 672846337 892600407 287609635 962981390 78349057 407883054 758786679 941450661 325041684 739044495 915529979 944282167 819526504 982023964 138966231 289796868 427812850 939990349 9304332 668138557 875281854 915644227 688953206 878277580 334726990 381320284 309594946 374166334 237323633 867730647 870204449 899790279 506702690 514968922 768876999 939866976 565824374 870054913 332194620 712364261 360706669 785258548 574741588 928915293 380271651 742918758 718599742 813605732 566234469 856337287 226430963 413758940 668802799 932238737 393323274 483564040 970202057 990436590 25430004 330137483 215193154 526205946 81967067 144761835 417924241 668998338 771573106 874108833 99312149 106373936 955131049 966275701 620802820 654885486 313238501 864243723 797581312 940014033 64964652 582289736 246896145 296962502 10040126 918640653 797944849 870183314 325269408 695140470 66262668 494658198 555993991 950164721 495488594 703483484 499018579 610869422 778900203 917665385 326992259 701135049 994711997 997113815 113103693 425168260 883411894 987706111 148287852 159930402 854199240 898970130 717891589 829301010 769009268 898933047 787321045 896593581 821268924 889893210 748117851 945165588 847284603 880886894 704905651 715624440 95626566 602894040 430365088 443346384 853322638 888462161 514713971 970651356 481227758 913351653 48102737 573759443 100532908 748108754 437240709 924551940 522432699 746672363 29855906 827428365 538254444 950934711 281535523 928608383 264604676 617396153 304269963 632453451 767369082 827720523 694841065 721084905 652445947 719424726 685391663 770695053 775863976 937011493 302762853 700550107 233196255 872217994 524249576 765838499 688497041 992503946 363864558 769567777 107349122 553553238 172214236 353327154 405472424 605252163 420021898 942088815 530414736 625949701 736951421 941019192 506939944 582286057 618796319 897732461 205529877 372727173 429189198 869382289 555487555 729113999 889047621 926460541 149486121 240366116 507977025 905923682 56061949 703710302 824012797 832656053 2132544 96785357 448029960 562760665 774171711 810667333 282300467 507910848 68083839 425163291 556951511 963019384 673680745 941080953 70670765 169075551 104986992 266366903 85712379 388530999 144603595 405042004 201884343 562937810 479466855 910004310 549850402 562016774 513285223 875372453 73312252 664516524 564141097 826963330 109216348 922956180 649472074 970864000 996626544 999900221 776605122 967279043 639901405 823268242 457797681 646974588 566082922 659533820 673905612 953289962 179044164 406613935 902913084 920030468 822906374 974868084 571012150 853128715 570762306 664766009 509890123 678300983 178508385 954121170 416386165 500830052 329871094 360531361 302679841 571847846 870745669 876247364 575338991 653294609 703434889 796061005 975587971 993785938 376919886 717722103 281212102 602349925 205131716 431353619 404781914 882308570 361765355 628249566 875522038 999251959 347269460 485537571 440582422 581154526 683088967 719650758 449031587 940127131 351926770 919424662 684679783 955718900 529820679 779109345 593925952 893697604 566163494 792633371 206744994 728469343 489161305 678841041 984836159 987095223 378089644 957983508 846645209 873186346 36247151 64129466 874912575 929356657 189812343 836028815 394351935 446008834 49902317 75344456 138290986 178522042 328845605 897632916 750979350 997523515 489433595 579315690 698853044 946029757 688673868 948275718 801579995 985508370 814726538 973504614 831695488 834577444 555592282 902211463 9720654 340739216 216921159 606451234 701519662 921551892 599554088 976245292 375611658 603222953 983977926 998825347 277780607 682483745 226421291 991112340 822905606 880348395 679372858 827943128 234106341 875489647 280246231 450894699 349129235 494920187 715965557 814730241 9915176 654980119 476189740 530035833 707880406 992196516 515756591 807558180 134005075 727377221 489914357 774027191 316142438 508720081 474942613 531213602 824736926 861592670 788302402 992851955 150023975 590366981 3073203 707482174 934430724 950981523 448800424 461617960 350875396 470572113 371383397 959038594 469569903 529316186 157202045 427450983 51569161 588668179 763359822 832947244 579260727 606646590 646209544 664777953 46466669 186636571 3034298 756977861 417766858 668140910 823626539 935606020 484871277 983032603 217068358 879504920 34409067 602059562 864597584 894186854 795399472 865371342 575065380 590682988 781588512 820446776 821694862 831847504 495543185 728375538 92804309 381767075 996528996 999478033 743211864 958518134 323610512 766671150 477077015 947404010 998986902 999509931 823425782 835803242 195632755 877588612 122143803 733475422 172170058 203030159 684116206 880028750 550897389 629397638 720524285 790750084 183965105 381481717 131120545 281271135 987485475 989063725 160240245 852980969 729114069 891697054 893715329 897890686 921174526 954060372 771753785 922146784 741002118 746976079 471508874 943912234 849298892 957033249 260122385 774373748 324982815 770543363 876627204 944100857 70606252 292338389 154592043 713738725 535002094 727764333 828626255 912940060 459742031 752218689 87270269 747231928 470282059 537786706 616460764 779940578 786411854 981571237 62133802 247143128 269767130 519758627 84531412 659668044 165448522 353559382 395910151 423736608 625863867 879012390 489681375 727282009 900937008 993115562 450411797 904217551 265068603 458794361 533611745 997342758 863281112 866447923 298243877 965706401 801723080 857604905 500827151 741204788 342333601 436292083 173881537 658541153 504962672 925819774 969165625 973426201 714136629 801937071 57848911 454660840 488362774 895749575 3728930 216915613 140916374 943607200 135694699 259178958 633026616 695982327 600400318 920245044 634779903 654399272 208587695 749576118 461895086 605186181 831222310 894503191 352093003 648763244 944304937 995988828 966953707 970048185 856995182 912051693 276191917 830004954 556437626 902168659 897919179 947096705 712192690 743616577 284655852 588280185 147559594 242744127 535162385 606047437 256038049 369606503 875167079 956954783 247898592 400109794 627007233 654808341 371142120 941444256 268527042 392340285 370441470 585946996 988791258 993869400 626612001 718161609 861067742 954390852 537479485 735845628 420709870 862490476 40193981 994899428 20958944 825497192 191167686 752196787 817777795 856032416 714975095 787713030 973018037 991013048 871018034 873009210 856723270 969968872 724155925 821430886 499141735 604557930 407115421 956712562 809497671 856438086 907892298 915563823 972396566 998520694 985291634 991247810 305730177 422380917 928669977 998694493 671339013 706793824 63783835 277616439 108190449 175000290 472573275 746461484 923110741 985522977 639840858 827621750 621502399 873627733 570941463 760089269 602613854 981767525 245044106 554280155 752531526 856459556 202626399 459910927 652984044 927487057 233133489 807267716 518811950 789741529 76562180 273068073 16631818 198179817 143067068 321093382 770421592 943022692 269346099 276380019 740030989 828361686 505704340 725577007 775644315 943872891 138928431 566506651 744417711 989439344 228017973 396571540 182930847 465721606 636076639 778960749 788920898 818390741 314845039 701830771 981597822 986838876 622512009 748872816 464882327 884263362 627442610 866846590 986071554 999297393 588419481 785547557 345450835 774273122 246271522 940137889 969060476 985433263 482586509 524417125 121115074 411683683 286236581 970342280 263432666 402031358 551035774 945578695 658095272 923180361 771986242 938190323 237887925 540877323 804950760 880730299 823233859 923083643 394340876 456572597 453038822 491399372 758976192 762020054 811559961 900023976 688610748 688992889 723566207 961344677 939394008 996901591 380224158 638555908 692503509 693307820 101996770 970890201 839087745 969056815 445373850 704488191 163912929 179754919 667503833 696734493 802616392 923395645 121154041 767465061 80981008 182618661 662735136 713383580 417203134 469123808 420710428 878968514 939909137 981111281 46694377 708173396 958471654 992240415 557132099 912509227 398967258 988764649 929698705 990589120 508772052 902442023 253330147 868144558 744772859 795879367 994736959 997953223 337346093 384296946 296596340 831113769 906744134 984484838 422471212 523449288 971290871 983675641 991282550 999159375 9581430 805069943 985700936 989433829 199585803 236317037 660461670 845833401 936226746 998174451 953385341 989670959 595544377 666478018 664779875 833454654 446103786 543878604 235323308 972567743 399287579 531052776 676248934 825842912 797594965 857631374 272677220 493843504 200098908 381450838 989103461 992956700 246683268 962326858 914288658 955866390 136379856 468826677 948184976 956773484 376729710 557232395 344515452 540515686 111390910 572111069 902090722 983469332 875535932 973373002 459627012 671546237 24708036 689284261 120012747 507193733 431776116 511233983 575972496 651887839 550020633 844636724 477004189 866305866 173439522 812996098 406073151 718120378 417771199 565745919 593693884 788780669 824194542 986119822 883020906 892830356 967207920 978596440 894132805 951114617 223077065 355761722 480396056 709125642 307277578 458622578 878420937 907788869 595113156 671255301 638466411 769782932 516418794 527374183 948815740 966755011 857675487 946651338 705975925 933911342 201392247 513793104 939163435 948955860 496859985 518177963 993849848 995403542 434242574 603895866 680652925 744963120 565502961 928127021 854732622 874126191 629867563 679820643 167530623 853761346 748322871 775110009 491035918 865712273 764351903 869929573 353675310 492638021 365763249 961129087 503765590 561507021 539522570 795952276 788375768 840425865 286473819 351902546 659104676 903934562 881607130 971060048 859595448 957286721 675273761 915631434 955138885 961259217 294998024 392252575 610140294 772748981 651353499 703932457 498217900 763882452 326713780 906866129 574915707 804214297 843398208 999946296 593886872 830496227 737761904 925648511 816945853 933081835 223777567 679988218 387596168 989643884 871589693 908065065 753911168 901073531 969542931 974210504 584140271 933484474 246645234 956081616 963964286 983226323 204836977 668646684 776966842 896916219 74219181 536021201 59365825 874279991 753131933 903575871 132779684 437189051 786835766 892951239 95323392 384128653 390229901 485075463 664804865 918697403 107682835 598550660 955477171 977531496 304635807 593070873 864932493 899816227 403532251 413640897 711653228 923974796 131044413 636301940 192827924 455981994 62438264 847114579 276606836 333166389 31107445 905917644 280452843 558003110 641509587 828718906 314830270 751389301 558328386 654197742 433124200 497899708 291494946 959045784 152630722 881608038 124137550 287948168 466367769 921541096 230232121 362574237 738988184 867994627 995218753 998378530 310853763 947339536 155795471 189971917 878586625 967724564 243543338 546588066 699822399 756369226 552940716 848422106 59330099 87800405 489980490 524269365 551459862 970493707 552770776 923336818 771762155 826062674 51365134 622305414 18914367 37088651 582286895 956822954 231261886 854127418 209537212 983754440 394586989 755921942 281559611 772807741 867709214 953598289 981305250 988145325 917984328 982114536 41252967 141655509 954250147 954736601 125263329 804336206 246210113 559046260 823836236 870615786 374730508 735605615 439392708 969866297 482214962 486577536 781083467 811848340 513236036 955336851 6671393 503074428 259998425 427685776 75126785 321659263 565013164 728985603 56776163 90285321 176415924 811781541 614463209 738818502 773165635 955721051 551843784 706414757 663147774 916844835 119820628 794480156 880046129 971189145 676871417 931927141 705919110 895508631 607142532 999662684 194993355 259409251 298631073 937955184 339364263 654445232 550021121 904882482 568285922 913317414 442615252 702314451 119741838 584196558 14423670 449961329 380315199 712481923 88527478 538271874 20957829 78146094 130792807 555355177 99245124 715675357 739566532 924592302 974471192 991752454 888098071 986276575 928180759 991285020 296672995 559138790 514900746 560235206 28024462 314542712 202698542 989303597 438506066 532446199 883888952 991955812 156129235 297199568 75772733 211891982 974220687 991981092 957474808 978414695 373774734 583976451 549332558 557571091 112435306 952532670 519797380 898281333 503427860 990324106 132094810 387736455 637048292 965325154 406107583 814046139 570446036 722693582 407344479 532205758 476270762 573973529 798352614 829081325 360759868 435143704 821448403 880105604 236797125 967939452 847585345 909652413 848489801 850882657 739557127 962636273 635332974 702072280 692475619 694838715 104551660 743522390 979091342 984432688 451379427 489878972 264996366 343366836 816703157 831218879 369749582 807640796 51312031 361752993 954431581 990823414 453036664 751628070 839739106 850801519 712684888 774811141 71973377 438658864 104451871 163941738 863264627 923971347 965533990 968929383 453457978 931046652 649975732 702292343 560784849 655455435 477646082 563851891 119864518 324432721 327542764 348634960 190673960 941101991 912486349 921885001 835063706 921480793 989022001 999648161 192720430 892184280 478697035 793089867 2055057 576174603 183031646 737115840 659191419 717918879 919317453 940185076 212779478 860778061 516823197 767301724 375064377 462240946 620695166 853533937 759480933 928693693 964895109 987105228 329029812 559053936 554082373 709162358 545489004 875555148 198528547 634818109 162937797 212062013 448569146 592979027 336684244 797066172 359128207 576204235 767950010 813914668 287960220 961227005 320971219 371261567 107212726 980796716 773810808 816928420 852454563 967647114 650081182 708282311 630988836 873086353 659107480 981297500 466481170 808270113 188339235 346153223 453188669 526225025 755362129 853132179 313453645 745254860 737739203 994994361 881404810 889502244 268279105 820242790 615417477 788063639 98223577 330856944 403950111 554156127 984900784 998814929 934075304 998814476 534452837 918692199 648746705 818581289 806408456 848404635 179313471 317448662 232666163 584410476 516628772 993630103 840654640 945936792 680179846 853765247 346792297 978459658 6230675 834148593 139104166 379143759 211654087 739636375 78823316 314151638 891978142 939527340 421780605 536050284 116824004 127466550 240601269 740204520 74303216 326579644 284178631 481603000 890147034 995341679 885263092 888400431 579322596 811721592 466905636 472628037 524831620 869059151 325606877 749381460 65069979 82804896 81377808 569395750 919442458 927145532 600160048 621917329 756775447 813657796 142677825 971887378 802125591 855139389 38744627 256547553 720737312 729360771 280867757 863687709 853619359 961570442 269054096 731999149 511375465 682424917 399533930 976278965 57801971 302743961 715154585 873359289 538853385 888386880 786153501 886783316 372314475 933251664 451556169 942990523 230721966 698719270 191437614 377011381 436919976 746273980 647339059 772936326 238831120 856487494 658101839 719369306 782352078 905780296 164516328 719806166 806916309 986317139 514665504 623066493 750454739 803030540 818332852 982238641 98870480 892702800 58602790 279836387 73169393 383659979 688292192 786272819 178982434 791221222 464554869 744013278 283035560 617577515 315766643 969111704 868486991 902706108 364943796 774310982 225340095 761306754 398970880 908270700 190754424 417287961 973200118 996470493 720259921 786208833 315275097 797916157 903590994 941659533 409329388 642316970 313834275 494567299 397431676 914096104 815172466 939229052 813207077 821744558 532544829 564149556 49600842 603989448 112089708 681079484 191500147 681311005 545221460 599777037 428429270 866231532 687989008 893391527 596133376 801156864 367503897 894587732 685570300 831962929 504613071 610191957 767095966 915291199 626968152 886050516 382749350 914183878 697125748 844280227 629683424 767523300 163975623 279295266 429314995 827371364 19598866 244203136 937368004 991604349 734014858 889136675 936730611 954917892 851758092 994661042 207708843 950687574 368709145 975925051 498304904 940751473 905496720 968083114 921371296 962041280 828288437 836381508 684712685 746466196 693877728 743104362 587472253 682936541 397730498 917437598 125042192 278846844 129299862 501623617 243107145 956411678 388517621 823797436 203748142 787086243 792595767 803521354 638445591 670978011 750291897 810231708 332835709 542822330 54098944 242096856 799271455 811561453 144178137 714134765 671265318 843283059 339697440 709899373 685322329 860557080 418111042 452663069 503511689 622862545 687567512 939603137 106845471 356112325 13498982 767434902 859504170 868560483 12822091 524630482 660409933 990648778 771890610 792194371 982142467 982216178 991780594 993616900 634971250 929185814 304860622 814309644 521473141 853023808 830883226 873672647 113989311 346744263 980173466 989436982 361145597 442765207 432035811 759628658 911701629 916012065 447277805 536756150 81394103 207170111 836395799 976849938 36912718 46920588 398449391 568161199 862110534 979935367 823160291 993833354 637843512 840452888 739293763 785787364 662618832 972129197 316909471 480983326 19893400 607051945 826988309 881682106 78154998 547594418 949893473 975702812 821583243 972822704 368900903 404383171 626540921 831601145 314169241 722986756 256280928 301692993 525576319 657958647 653440616 933447027 808754749 823116641 736958338 978365422 886362995 997999457 442252491 460200397 797806985 972061376 133075748 184448402 789578766 971792078 653560677 738481265 934919078 950678154 387057121 920448617 260970806 725511659 423075261 665605853 58197236 949194926 288500843 502924739 924126517 937499712 767582875 994658923 254483025 846301248 225843402 740089747 368774794 760252951 599697218 639283520 288845927 399511349 526750899 815377517 977200548 989814145 815450250 843937754 133986991 670600383 796082358 845526208 75292032 950290595 479265269 621005697 438381521 688357238 63377041 580781006 990431263 997019678 20630210 325754973 856470240 917748731 763973200 829047579 86080164 123901799 683828837 945722489 229910909 514877215 764970728 960150268 58672347 652726804 209592263 385131084 759976018 826095259 779106934 875396034 203034466 394101664 431471230 952077686 609752197 620455159 546064882 920758936 58560810 265284754 533482974 943382779 990821601 995390540 998227350 999131294 306365288 343353759 802887971 850347406 270257602 281002609 35081422 277016891 95795594 136082590 453153688 683363272 352836779 505556201 53789082 839712692 912669393 947465300 427478803 901372019 297181044 687865752 781742297 826017657 97701390 307689283 841737197 963549931 982069372 982463409 526285206 555471177 917358970 982845023 451998327 787900916 40111327 384967390 146760264 356422820 974597303 983631086 138843189 924753655 475714269 801251855 172057244 239908774 778999016 805381525 599690904 752358952 944240041 992857117 45624694 767312984 472020829 953966098 281916875 469790924 299863541 429684863 786448759 952009747 64285517 513295000 917030609 957086667 239648723 805267864 74706013 160917063 450015938 639466690 78298832 840766866 857924468 874589798 608459647 722616911 592064703 664900097 796386998 968985314 802108705 867610203 863632819 949279738 625705581 766763122 736963160 769818777 727694018 984480785 580595548 671917351 491271849 630370277 667396039 776170165 781955133 895111008 777256572 958434183 532928241 539647643 969020671 971967682 374734781 521642369 143675408 466127147 575087518 838120989 120454880 986816844 410329788 483369319 24606326 981967367 629260127 654528450 513627416 763434466 201300620 540590125 243821524 579157450 336124304 547004212 237828248 450058054 292477860 807916906 852838757 947391618 503161042 819370044 428701683 713707013 566419058 640020551 313378906 509431643 837970242 882559505 890441092 993521370 669957179 979384122 132614751 186743328 160625294 809008335 608919856 635247317 173741838 866235723 237047423 345749462 797609657 941810052 76137665 669072767 966656271 994750238 590937214 803880284 577365250 801166528 756467379 783199808 198250069 612662673 622209642 982319671 878185997 993439161 487821486 759849587 846761034 988642551 923340967 983968782 261610607 920356852 994111221 994387711 966169880 989386498 840138310 850723640 456762414 703608589 805945574 979196629 917865039 973137284 279802094 986609360 473072497 499445437 214499058 707610293 121541523 695841670 659283500 715369675 224324974 629640438 317710136 545909127 340082081 869713648 418246602 792534339 987696608 998813937 335872910 635226924 288034874 688310507 505438992 628966313 797734 717525789 309896689 377299021 86054982 890301122 341298693 616215574 641308415 807337127 630741835 936001460 494202692 603535663 963732156 990317383 716179581 996132674 288561811 674461452 138958826 824078140 827323302 941968503 205327976 611553957 663222202 977168120 588595164 679922774 667401116 727345097 594582916 694092143 504185935 897187308 483467588 648978610 252150091 270461154 806084562 934884948 976406285 989257277 868296774 959531265 461490480 805669619 181245486 641223652 647817107 889572865 924321652 969143400 616648560 800064359 775756604 862186559 734737842 835217530 955050360 979077989 812341260 837276477 537088448 892594671 483032922 894533073 737571047 800625454 278447164 531070478 783733568 803830153 987331193 997205659 861584812 890232484 112739251 189471283 626771134 941769391 663233375 819956693 911362038 914528623 520058895 796720404 160009599 950075207 23060112 49673659 158763658 765283411 571772733 771631249 617378098 637175661 746631519 870938937 213308257 511365860 868254529 919927428 628511014 640586473 831710024 959497125 755901309 833295398 780256301 895438156 296082080 925950350 430243764 626630986 510793430 603268731 954562452 955513165 477586062 761479947 142879359 465197158 397630144 627486711 998293816 999442504 466438067 921385422 458533654 763423589 69412315 705993005 11657794 612613273 782674989 811819401 711639529 924795373 555354260 879017026 170013226 290884815 961129771 995988023 809077376 984873590 30645073 62790125 63122843 771283196 916770370 945204485 782013478 796892151 462540674 705891404 390879941 886910511 40725867 331280888 706562958 966310515 833017413 835975182 207623549 687296321 645664536 754431077 74880695 267674785 933174568 974432007 370671549 916370613 328671609 551933698 844966644 934462615 362904671 469124607 695246013 813977666 155697808 761560353 119159295 635961126 157903198 521922660 439977796 623830736 606830959 726453991 71390122 105676366 623942539 848719876 513050475 987125213 482602580 510097206 775094370 990389495 887637285 988963444 553416001 939336020 143455645 430967714 256950276 901716564 77626066 196637307 456282607 844614516 479625730 892895153 878423920 992595256 709589204 830512101 482209535 635966605 268143488 380373771 624267250 934351644 52233545 612967934 665993800 802351775 724021567 898076852 799793797 992586449 804551683 999758153 681368006 927839479 696319899 989540357 590111019 827256172 666993700 913354291 291162079 379134404 980891586 986810740 752013926 974576084 504551132 955404109 731140147 745467474 363761644 751341361 522145317 890765574 121895962 954642657 387967432 739274703 934600655 951308901 337636241 610873276 927730778 981101105 154245632 475167837 643987892 888166439 30086409 974115812 876440622 950169231 610416915 842893574 618865297 668512302 754827256 978888799 894939472 924688771 112242072 970047531 634244824 755830783 77408229 127523305 166626136 595352590 46327381 714463024 95980198 178536754 91388336 417765579 997686098 998249952 697502765 812682655 556307830 726010694 958959186 975044496 932485465 934454774 420245437 773712846 174684048 370906565 640820792 925317952 162086897 644631004 755314746 865886305 215450488 902419305 546404784 702611621 547176698 752903440 843533452 919060731 636393698 684194168 377291317 701290676 997072560 998382048 239373098 749963777 292974255 474729866 706422330 722087647 596124963 680361789 288191943 618850851 141465783 730611405 639131021 664153628 717752158 796387624 765823643 844012209 641259467 692416334 709634282 960605996 901911120 912005182 75726556 891345742 41251209 921880168 529842046 867287546 964532412 977572186 194669082 930789619 422818819 721568562 962425656 992461937 234186816 442641505 553625998 649165720 174907591 542548561 939007997 969115702 562783932 720605163 708962073 976607409 920732188 966524427 41245911 320270373 206742711 353762752 746932984 799326508 800786707 944633815 243337505 419349093 723158421 753857913 253324159 318399714 491740750 661162384 579437290 797115050 87349774 430019990 788565415 831111048 386404364 471935364 342723717 576385316 451943072 544432595 643525754 764654540 95119389 162696524 769912495 938923700 471989991 874350300 112796929 215799954 543200347 934662430 200765059 293802822 455890552 488046935 710258433 793203991 960644953 984232325 739702159 741176270 866431191 916208881 223430086 688001664 208261417 853163716 341380995 551471787 355017097 719299594 453037018 744770181 658131751 907124294 86053194 907185028 686684650 766277580 640798582 829597340 361652664 606881933 727951321 852032099 659870898 754985934 354933205 921151919 590369762 954670557 6496222 141340667 829088280 912044643 224099992 317614037 312677436 913806266 453993979 567839304 871982907 922039939 667811171 714346376 563561239 997661372 847724340 851808923 922204076 955128889 598670894 619911589 953090101 980323121 820727505 886782140 103526357 197752303 563414993 774957639 404469452 788068087 301255920 414441669 750389643 827721478 889716046 918641410 246617663 531804626 975407296 993108065 385994433 789968708 100409521 815855127 859544530 992569878 47056448 806859673 13667593 829289177 407171977 621190750 855110681 906329440 294940257 530770149 197417852 517084547 54424783 916874214 211758643 354918144 470927482 533825893 991733396 997696589 159028781 232909677 465138266 970645087 972798688 997595184 765196024 915082457 796741812 909232737 35443500 556554483 361556570 959298294 427313846 994959552 322042317 868811581 520659942 981654231 569425169 954179285 573255851 763910947 279720205 531623240 327395484 922997172 919032022 925898297 704854231 930699243 402275999 551612631 542346427 977190879 18958964 594013326 33721319 589871042 135523744 845416300 869297358 991414973 22776017 915027390 495824478 617750880 677889022 863501276 523189861 576683431 479106550 850375353 53336904 420870453 824550938 878076482 501828511 654938155 213848630 721244315 94898534 415516091 228520784 280111839 446942225 561905103 547047226 918445403 654648499 669975913 480010165 514879114 715819227 838937641 863854016 969067728 996530787 997118954 608041235 905597808 316279798 935576077 903373806 949981298 380010005 530962454 815680079 984529645 493753773 725859402 937016950 970608325 219568865 292071418 819890567 822264934 992824919 999860400 391973398 530457314 389562306 740663574 841859724 876293835 700541880 835151304 201514288 986208718 103165323 431307635 844200277 890004531 135965427 171567865 150374773 320380835 728733505 744747817 271950238 574892541 281520071 467896041 531351634 617936751 979824148 993182033 281451243 556611816 211363796 839980156 465290146 764902062 185873409 280075411 565354363 769638130 560149819 651109623 931845438 996974519 478219806 521295603 327015173 806163915 870190760 886428072 607485258 885106525 990364974 999042791 378928631 428282845 799044667 877810949 55543816 960138123 416581090 793382484 248785170 285619392 982962401 985243483 763956197 871533499 656956722 686313919 781608684 976440891 604652655 843749408 96806151 447329874 675098840 844354064 907653111 985568193 525608242 672610325 999270030 999868322 975679047 979702226 267812260 759207135 126752966 671971851 696213656 763674222 526020828 750197555 459146841 561029063 443609820 761272741 613664293 720330829 12774449 436448877 374702492 855753405 557401799 642607084 996809521 998459938 764255255 803625735 165684453 256661363 417588045 836179921 390496170 999597449 100106482 762799965 151604128 506996576 388441819 516981401 21015005 811807715 502472986 736046244 476694423 811806813 552057247 782396487 763777173 773106902 818082230 988765035 2321659 406079425 685733105 947446565 463186145 790661209 796302767 976841326 604084874 980062206 841416021 894850247 18188837 488616076 722434319 943885585 998614302 999570943 558860925 848087248 68270639 931456899 987762331 998923104 21404840 521027450 574795043 972548971 405040260 444802678 466352932 999210226 314327345 825592706 437404303 950319471 622827641 874363750 362683967 500863224 192361546 704284042 744723424 966182978 420971156 550743591 328911591 995148359 155998629 891830943 317337461 417367334 451732714 534397739 313131133 675263697 80709651 297705077 669302640 841058452 773127542 819307479 931023479 954817949 983236080 997929556 856164594 917548575 508722456 723452805 383411674 545553435 932778367 999857967 895889431 993282353 484995634 677304887 595982956 718270930 358588379 575386909 154729127 634675418 752786504 881540688 33460056 644601075 406437668 639731145 832757648 832875960 387258611 867950473 721703245 862523065 42478941 333955960 374164099 545984810 712166731 772212595 164269700 677698742 557315804 579079806 566204594 879863570 260574481 462015324 684452561 772933275 543355351 784908618 299680938 824988367 637982829 806590211 63797874 570914036 473262730 632947144 507419094 763487285 524171165 932119726 769818711 975806844 603474235 989205967 991773331 995093743 794438743 856541603 265538308 875473731 688964155 903893546 314562305 965327765 210063798 358185529 62991274 936249996 810459992 878865793 710930225 787898517 262680926 776029135 394722199 475077778 716047918 837891272 919617566 983748888 69774917 88296338 496205982 618581902 387648622 741762103 647573920 947163413 202644778 897250830 78065700 439023383 924129396 986127717 765790846 975069964 865842190 937848156 779980483 903109497 697662406 877502384 412506659 623451664 790578293 922322949 783438290 920322248 821247045 828966457 790891999 878322767 413643944 534387764 399830627 569615882 965702994 966110031 937308791 969312270 203053811 377010166 835618635 985046286 605883072 990375902 385715947 526125765 289922845 425049239 935824302 957771936 923873563 924016305 841426576 919462676 987862514 995034457 449118594 885038977 895050459 930390257 589756088 746586864 105654629 208864026 429511874 794109245 811713249 872826201 242634303 441441357 363346962 879574265 68543905 138114503 305012096 981848206 747012187 832659440 578433798 992689926 590782681 833481775 4846857 727245008 300908837 874897419 410601695 986797998 226616366 254333030 83937527 950514910 948985910 982484687 485283515 984964812 657022227 663627773 182119618 537159801 331376375 687986375 656773012 781354529 718077060 899220036 644837522 761380728 794300903 964623545 156315756 651568806 136674613 168653097 161176846 905372488 389663334 524672629 489784743 917317018 707776418 925962425 892280 315769026 574578061 625092474 48676086 153338590 858947770 963910681 799048441 962957871 489512561 637287988 990937660 995486435 10865761 908422598 971678125 972448345 190559871 784575066 65404340 166116028 250608270 276739824 879831739 954816545 119446537 477150218 622173176 992612653 952126203 999863327 235333571 653771708 36645328 658001233 89885566 362366178 333163720 973915648 281749789 479621164 633789301 875363399 516782308 990920057 148575906 944857199 115645805 977213050 190427754 889271646 305789679 745320147 733715214 873598329 682439332 856056846 835785963 974257136 936554323 963373869 550306376 894253876 92228601 148182953 26947268 770963445 670648067 895549931 222286680 744108236 831080059 841794449 658022977 983373951 993943184 994086384 45476360 248872630 744368277 759987912 910936919 911783397 949675844 979282122 422284383 947312634 551921851 984526006 145789333 206425903 8516361 343190711 707194602 900297576 861722636 985178934 894602461 948373332 421143143 993971713 609098599 866170892 992286447 993846722 940916053 971738525 829565131 986530826 814565967 914640112 357032305 558873715 217464285 364057115 817483323 972869598 492611990 825486497 966857555 985378564 68649379 417465243 468488822 977589911 544635001 902168522 886467823 962392133 856095031 922449653 573063726 840169638 208464381 512252880 817702907 993304413 695017587 885375493 36645326 712329503 731028342 846220099 151862047 789767471 695580884 764864406 998608632 999911014 761569439 803103533 339908698 601403162 279929335 318951658 773814015 845986107 78037594 120601302 941736746 958470044 176900869 398277036 780639667 814098093 724221342 775223955 54405271 748387763 157611495 701191898 35257479 907782241 354565891 919662777 957522000 983974080 332620260 490661267 359714403 734216751 560305494 576810698 127246890 485602807 379399780 385447983 900501394 916469041 995848701 996368815 737418095 821310445 916152136 921103777 258524933 922843530 212720298 313499380 675643582 826879775 593182016 978111713 220518440 469646385 887489775 910743460 879663810 952400247 36246219 232514707 15899285 621568005 666281897 804540598 300246396 399853583 101224451 719911016 92286973 296689641 424257238 776564485 310330137 974903987 310181017 581117880 324900041 699281489 101097267 423696554 210011677 831795021 186967958 558078224 376403504 437815508 651859380 933302242 945704348 947869026 708677591 789986911 751622985 970430007 606291796 655628952 550656462 817642819 13207202 916661011 679822758 783067343 191217528 735471673 242195441 306362590 265712563 704109698 215327564 351502384 300400029 655757596 868544763 870674364 695605466 923852501 700834340 921327991 679189786 988354566 405682271 973141237 829794899 891102114 323642893 342164032 847247479 862057091 814494958 853739231 672128979 928025550 957515910 999532297 837140613 970369439 460729528 533096697 35172734 557182723 795294270 969002019 900312824 983046182 541394699 669451879 171184272 460969854 834192561 900043532 887210978 977243887 841425106 971931349 844427583 958063682 705467034 954165467 831053527 954037749 320051395 737715667 208299126 610746713 144194056 806905580 168532859 874590746 995090048 997828028 245023163 739492908 892933123 927126914 192163527 744589825 909439176 988750937 648573906 918947954 31863900 462168628 798058172 880175581 261882413 622077481 226642340 635273227 196045705 950561113 103264273 105020617 574700663 646594448 58281141 182496953 591866746 600583355 427415554 884281554 981120907 983643096 531337846 577974027 837488272 919951082 154489504 780129159 622869813 980782552 478905909 821765161 614320083 676930795 325766624 346273519 12124817 356664625 275790179 949888059 991908427 993087088 242125489 827510070 772763850 845940751 565053163 761830241 805035434 895376287 120020195 647510175 700044763 765195182 914198106 972806031 469118948 727051697 280117836 512724225 446677201 997885394 173461752 509341583 338487166 741624765 135224906 588448703 743277675 933196073 111408730 255910617 138463125 669588591 565164700 749166996 358028040 729581304 766461195 922292537 264445620 512009532 619429150 671810793 474890404 945575416 673349607 912389446 585966355 974588365 394089772 838432248 276122566 892233296 451338015 491990410 807500207 960110544 148762372 994106702 36889010 223654209 275856456 418153363 186548477 750285230 897181859 977407297 526208244 708355816 48551974 925073387 914318875 918049661 759162588 790150365 794122468 967504008 650827614 780235420 88330798 829666584 321504372 872625591 360025394 952205801 711484027 764649820 828409865 874941908 660439126 732207943 902598852 962452330 535785135 756808650 539656505 864754975 645558092 804969536 598369289 812761897 923951180 976959468 559574860 901875728 325440615 633525323 609822953 713324023 220926012 885923841 127614526 569692976 331059577 885654383 20721648 691256782 575810210 764641794 276676503 743938122 284771428 905080372 833519966 883663083 850093678 852246990 158400055 896937642 880828149 887796249 379182073 706219532 799651003 887202571 627833316 697712855 816260537 951700517 484246469 758390673 432882258 583542905 505400342 954109687 356680879 840552567 826075271 981429988 245773270 796614513 9249055 671951140 843337767 899630411 994189283 998780639 2772342 571552119 761845686 810896354 132508310 782967969 127940595 250671658 946933997 985621052 880405074 981868323 186227847 624229879 989632697 990089648 357443356 901081449 413634289 841269498 519237254 852302292 129681292 400698624 986919207 990127949 91312365 545736821 977743581 998799076 900006934 901603094 534288369 570457114 180404527 810920880 903387244 907521115 562244392 920317728 385203344 589052311 795623773 936428903 502032264 844570435 221082643 811026372 165705898 239505561 70713188 762000393 363813507 805793564 870362031 889377770 204539647 624514674 362153221 828811913 402854725 762635583 757819509 854474406 555574032 945890602 286118873 543457278 134473146 814401088 794313007 973986355 795599353 913437823 337370176 886097096 796187127 968280349 495300018 707480159 865920978 939953693 402372367 605634539 463884273 638195573 841213381 877691230 680715158 832425159 901966453 903172836 954424843 997498137 1619221 487277910 605318758 625459602 344072705 977680684 55862421 559480178 258695700 510319648 77492290 297354267 844669124 882952596 801660527 828398281 986343345 988916576 440976514 484116456 388796673 972804166 26908068 290666822 728326167 863668690 701733970 732249186 95188645 315430465 621596345 789531958 538670867 571822168 255293329 452505782 658111683 815902772 601185455 693166915 981952524 985991202 36785784 71490689 816145710 840047782 444588551 976600079 775327885 778599692 225286593 641316553 628916425 689213637 355188927 559724750 407819524 450011719 196457357 534092517 535551743 851714936 181561968 182854467 33799264 298749893 287780205 609130255 685451003 943369475 383757627 823616673 620257087 693564067 548219784 995815427 907539537 949071346 941827143 972944371 465713718 597437947 796783593 899255988 213504883 834480048 922416886 969227942 761429058 895293202 776277374 878487762 172601999 353915060 262201936 737805432 924965146 956315798 65097059 748526679 821081628 830139664 87398430 601593978 574512705 750507431 826887640 966691624 366003882 805528639 593869356 802885410 504191847 971858967 355733055 407855216 57117193 693482771 318139070 490843162 945726217 962428800 585178266 759452424 524632822 574919704 477991450 849257953 724452584 729056021 79662904 269124217 366453877 550334246 127174130 817365106 289567411 375956349 266173078 317642473 531813679 636862302 780616359 964232385 13091996 191508448 534915442 708000002 559169357 843255825 939755432 998873727 768133072 928967591 180807715 855073733 309400300 362021847 919139492 935070233 54681332 796632369 172299027 734537608 946102588 985268760 720557529 770096849 818278281 893573854 202795916 782972372 614419554 862085404 938648306 960910531 679185969 712435382 857772034 882797587 299147053 769438977 106278898 684880733 343358558 616304241 865069851 988718691 338291239 651623034 496494254 876332180 751194713 800257311 142657401 264101454 800918552 828996551 929871389 952612753 962405506 968508602 427575710 486796769 89314137 968805628 551950193 966973376 102624709 865445575 217559686 858061270 293649391 841397722 47381488 617625519 926082449 930274822 941279270 993408733 715286782 879164811 433317096 498140200 547216863 802909843 29782657 961791424 209673203 424001011 71607281 801338878 312902442 794912862 885992815 896761703 551450152 640486662 908214851 933759279 896639112 901661234 318511976 373831024 922963311 971655478 799576744 883415069 274229956 873755007 435195009 982898707 50796408 546294957 367816031 584226959 454213559 563784167 518263681 698734038 882550484 935763514 702120810 897367459 538208559 744863868 830004148 859990694 148922188 516462058 472639764 960795567 155425872 199587728 491514556 674923561 539986984 544228587 840167599 991196888 500924251 697226556 990261069 992361213 992742479 996700927 738173182 933301158 641255773 980171703 898538225 969539293 491316878 968984887 634052463 694294509 937525752 955343724 793417383 936319053 381836075 716978519 505048066 601337546 981815682 990863146 465742974 594131981 51974279 530033580 388773277 408999600 215241736 320341235 650193664 787676127 653888170 822181982 129185656 358330183 851226924 929570626 650534761 764061138 803239485 812238331 680323537 927375339 639420637 951815672 457276337 897366363 288116738 393067333 155327210 765539248 843502068 881991729 761214084 951868523 343253145 709479800 226007556 376760877 109088229 434315371 930815371 959960307 209353079 576081364 945638048 945759895 684719325 892349401 841214762 996545052 722311679 722486107 435973569 724421060 833396374 987063883 100364710 648003460 498599145 893349210 134976397 564821628 777896120 890698052 306242187 408915851 239134852 868254629 225535873 644059971 644252816 919036671 398313987 431591587 819393515 853993966 130403842 591755592 457564195 888741375 171469082 479440808 366324959 373238885 210788746 928103444 428816833 701130288 800116412 887427787 282160215 728334455 424458702 621995825 895566198 935085237 92070877 623644169 111363132 945650858 276718396 932616034 873584762 931842092 974125566 994178586 919408075 957267744 564799555 800495620 872456071 943017879 377280983 959891042 77199250 523114083 490059705 901891706 270428602 830263992 724907085 938559651 366673348 537957389 979141789 998179749 259609741 442915707 840990092 884701217 829945395 874197597 591098115 749396614 975672762 983967989 744724786 988695448 165595924 205574761 319667546 948924244 997289650 998815585 978900683 986746935 713913165 811801444 751217868 991963180 54559344 810162364 800784670 941317914 375464433 779498606 84523340 634215650 809758338 833301654 116005721 337200243 554569182 716028091 702457070 920380635 460412435 979318482 783681541 899912491 502597473 776795820 667610754 918405132 240013867 393613646 885167791 999739620 722323499 882740483 69305470 126469234 683384915 937982356 383872632 685670921 634897534 727294584 57541071 597972401 215390297 749396190 410113521 685490058 728300902 797450886 434563952 799181163 687313946 740267995 892989085 973255377 991406419 994796055 145718215 243774042 116479236 425992845 905901592 922274889 58921640 282171068 899482821 905684072 993903361 998343987 236774528 260470506 867208715 912495639 169156503 998295634 971013964 978027873 535327005 934613235 807562712 957665129 148611248 982803166 960736636 966156327 137042898 878244400 628686244 788127844 271151720 745188833 689608936 915722094 187066411 459228713 245374823 340882556 586567777 919041036 323330682 907723212 171653212 701938496 1047280 495357225 414486313 440880377 317591342 734509227 784008997 953749143 267144577 914332101 19505284 30444754 577043557 847782487 353482110 458338591 780150113 789945306 547568539 900615406 574008406 985991810 494918901 527434495 658594602 730264880 273034206 901319568 972147806 999644959 105507132 498683388 406937322 717273527 696136731 909059199 215141916 613744158 52009481 186056382 590826598 634353809 886271304 984990370 819079246 942588460 584636066 761577428 131563980 137400226 408791785 951021150 870810108 950320969 735440935 789960347 228377804 289783601 361496784 694587054 261187662 805057885 507822306 764896925 314896309 974951342 547111301 609045403 465915855 821946296 905173984 968555932 179596626 643518938 493991722 514323881 977272988 980354122 630767436 841107686 537976096 767140289 567855123 614960032 562034131 883890601 733612907 777389218 939599797 991418348 208972041 241159870 277876145 746438413 112436182 739692568 489580428 793258910 170053946 483007143 106213262 471077794 699598775 902808713 858471292 975396315 691291427 959082595 490188329 503776005 547094128 723785748 638182318 749348627 573805155 780403365 146140204 929434332 262687603 427893889 872409773 941276778 912714047 994204587 510050014 856783550 135023448 868832617 789636453 835480745 647261652 840903086 131204346 681377663 227525424 738588116 687669513 841519940 54161656 67134303 834258873 887308993 80755246 223330024 600964548 640600117 706652102 840947869 696311880 741092841 97634425 371503720 493985647 534446905 209557046 867117329 24245524 66788257 648622875 819710429 480892162 580475378 200966263 909108993 896038499 939545748 147198049 352367031 473094996 842243875 586337825 798664702 814782041 852343920 591528409 805984731 790231245 830212901 635652348 663872243 650043053 934344580 962763940 979676762 349135690 404584552 55362766 554385259 749346408 982947363 930460564 948473220 11143062 498919842 563856491 974485568 250169991 259755386 5501340 883970038 631667002 908786358 245471385 485790015 152856513 590363296 244235309 333878046 122288734 175152972 574252414 983222675 947461244 975922836 281098488 915368592 233113338 459512798 639110822 647307735 597988999 998766835 549373817 677124934 479195374 777393613 692396822 754533339 851064548 960191540 254298778 908348143 706789815 855523661 48696383 735729139 666907930 839548676 608897344 939637794 709206973 965266519 760767183 989860839 447242542 513441726 941396762 990901083 521800740 793527894 323932618 633432909 231760646 593496852 5553665 314926570 746251290 833446577 375146723 718149773 10032868 293139490 900187058 921929697 326104288 461524622 10520286 769912052 740428485 845337391 679687788 717946212 315427692 808242658 631289378 799760025 845858355 851782732 119479664 466164107 340743410 445884718 25028760 110091911 980642967 991741178 342135719 491279900 154331995 926580622 216555576 400821456 769533310 846238344 6398056 754546715 110923511 441491094 569693518 759943290 145093980 620224368 300705158 725490020 829139974 947597437 300683030 672104989 397981507 420559597 342892303 712634233 970856629 973148324 342820769 394007793 721326668 873433754 332804603 791882277 391844933 760719370 420891857 772399915 294840190 374423346 437126501 555100492 167634631 854499410 372630660 572839776 312814208 408274712 240184683 579712450 253554909 532372464 915926601 966297728 814920363 817676260 23292926 405281815 669061331 823327525 266014690 332521078 266458792 272190995 481645659 951823809 345603936 368311864 422858815 549672328 364940557 504905833 762690076 999770253 668110677 779033332 889409065 950435954 257700432 575533884 831688120 923940968 482355509 885855193 610443589 861819789 494036130 680191926 754829277 795860552 469337717 669269678 578345275 920139351 484147679 996510246 753087161 770265035 68097020 250654859 126293324 327904493 948647820 984504867 732511555 902994407 302819491 317701428 964130323 971291354 295092624 893487458 197939632 837255474 5978812 43623702 344487507 626832581 595005194 778576299 118609556 727431289 892122609 923674996 673162461 938519316 640148146 813169514 9394032 950227549 433264987 752812876 968971887 997021315 570955433 575056594 865265418 940507755 894111899 911817413 365497272 516088414 694081202 842779695 227365992 316570616 715080376 895801139 354636217 535061324 685738861 913712580 618062825 838376845 393419377 739795488 367566844 934059580 677924310 988120740 151878286 584018533 643291170 955605197 632217299 737522583 969860503 981877082 486867289 602578149 61849605 120046608 426761805 893427182 581041212 673669348 676665062 893458017 595532601 916497575 624501638 627839600 793848856 810572282 814656640 859915941 829865374 967599014 313327262 404371271 439023228 459552040 547239233 728496278 109651537 922422094 942654544 959113913 603400877 960275351 509066293 847337352 36575643 479958608 847694585 876563393 671396207 760095256 551724431 731308135 278120366 915229086 627530414 704685430 798179613 891303879 675350918 718858336 255561695 722116986 447592349 974949353 437117771 970495220 828999443 843930789 559807561 943332539 782262427 880105857 837397689 972569051 696058906 823239916 97276916 830136442 488209896 610815265 342962323 989089262 113093375 371974491 443207992 638407260 338050632 971417974 819204571 887283124 977490011 994089276 472543640 854471733 260639048 347057335 631405981 834256507 641813042 748913927 875951427 950014298 835016739 920865282 56118521 168111166 511177541 683333990 492212163 862797757 454151433 802797589 996633489 997805919 272373858 532196292 425401368 544947802 690484961 991548216 418493535 775799526 120353819 287139846 921491625 956077571 926416383 991707848 286246894 845675182 815889393 937875643 225285193 597834606 427175898 519167894 829306573 875052525 74045803 456307643 989848395 998319400 109016892 398435166 1841229 608241664 194979803 215631172 448863918 708750801 95647430 408464498 48129997 214265090 149183 786970907 112047020 638577391 212274837 574281629 85323431 579459441 251885852 825320449 423009989 685495443 607838404 912487833 554609469 748879440 55683872 605028304 510116502 728211798 994851303 995180011 457295201 713935000 49107371 52664342 274448286 600561493 37442580 241466155 384003658 589772016 355379215 748403378 611123112 641456689 459707083 871552969 916863987 923848060 86274754 451194162 890097906 956039466 296070111 381996513 240333152 494772055 554398570 878053738 151805996 729304412 528914497 600674617 911775771 930621066 122213304 945739868 119341706 243292373 203338721 885828110 819251802 959997750 43477829 689120732 637180874 660444226 588115348 986570967 416541384 470582709 514490660 666466637 398883552 407099730 203019097 710010675 613992009 875715820 365069206 503226235 892027093 915856509 913490987 975534725 812363013 815076758 648162111 689279688 632273011 772412881 153504931 390600815 493264226 532874007 434867735 878710150 243993227 755481576 887502038 912354492 527314056 542456072 788725872 995929000 828787458 930116287 838261843 846392958 402163430 830885923 611153248 780992349 985112944 988038449 103292490 337792515 853966337 979791785 525789468 750534604 564376751 731030423 142002068 485068804 599155112 785712029 388826054 408495649 99702580 257813833 295301831 560925174 83226236 652154563 72632116 104921104 126307350 156826916 541519629 993433370 326401366 742282078 991250993 999812409 434130863 895307622 827041919 993304294 857994104 963613238 453121483 888251665 817912665 918444413 510801964 995292841 9887820 588105727 242327555 721731600 7574215 866637917 632334079 906128625 666798916 877091391 494124846 833081947 986433655 990026786 971989423 993048308 254702792 730041174 7832387 778524614 619144461 630072469 710452235 976717562 719452700 933683831 413561607 635414238 103177769 900667025 331061550 351592804 884307205 905338037 160604167 875688182 763809641 963487635 12980158 765597907 997154507 998243590 362893547 445037581 440232490 564684166 539068146 978376232 524204201 856515344 362786002 464130906 873769355 901194333 815181177 957817074 265085698 284576224 137620405 721917456 862198281 953825053 290854987 571326750 241636978 756106706 388231917 836558578 242051507 684308966 668823741 692659281 295939337 688478587 428333659 880684781 111114155 919719808 687625713 823675765 3605357 117261645 272684525 739916084 222641454 480346260 435175563 957852615 851862594 920222512 358920827 482529491 173105507 584450899 687238662 709567184 265133770 413040765 649347989 757921204 555417857 780361352 387873113 499728473 601180141 750084158 561433069 740175705 856164319 940049467 493182872 569012575 725930789 764191755 770456833 791312753 163221794 771511065 856287460 919000688 168568864 849742569 876193483 999380396 218574398 384545232 297657502 430064540 928930601 954117863 189472457 762034987 283509109 859034364 830611618 919748365 578946964 927637733 522226998 570760694 134461904 750932645 88757958 179427283 732914657 764361843 696785328 872265953 675498770 960043984 793718985 843801297 293399799 518235064 189729657 558352180 555986556 613703354 942830709 970904318 834522093 997239750 334311884 483599987 626697080 970199003 342935435 346333894 417540241 980927298 476304336 476897287 468423303 760003875 950997233 959576841 961993818 977710977 969847642 993382177 288244521 832374706 965003642 996662971 989061735 993347221 419333270 550045193 929927769 966815921 334996986 856086813 601975674 997189345 608355737 897240506 186095947 430943925 485243878 942162512 801278229 850707223 655543953 940849339 185516703 831938042 866115764 866961363 443102921 740637682 622187160 793184456 14598430 902208331 266900596 752277422 72804974 689968673 471500116 487250970 594958870 852002827 343801679 859570580 548966244 774280172 583147407 908827791 828578418 982522232 64618223 525699329 850030979 928979961 3801623 747022424 303422723 635688570 39575080 882490948 62236010 446680822 49418446 592963048 665718613 868284554 462733634 570982920 609360750 682012923 272196770 277157983 697682507 896457280 838750658 969877293 405977068 512269332 169172100 189081328 469881636 754945937 749990119 804156537 507432898 688215133 703081258 890385500 850356400 852181520 170153194 786023363 59233604 964635643 682741642 899544577 913676997 935834840 85173611 409071784 915773571 947525297 953353791 999742785 67621077 871604434 932413984 934645797 756899764 975483508 212709367 856623782 138969036 506093079 419258992 651046418 354802199 865053334 377157836 423159909 666489856 816716259 834724414 856179584 799926958 948300371 869545781 884218147 768447065 799399213 62223090 189517132 552592715 574574748 403144494 652262581 840009947 858529922 790807066 849521456 474703459 842645608 667402392 670570627 704941057 891329573 389020446 949720110 128090342 289571735 578641892 636985756 617311855 718680197 538588573 780958307 72531358 171872790 528085691 993848157 605530745 868647215 910198291 988186921 467874811 725879891 772142355 772398712 976546668 993517721 749099123 784319844 985287081 998423303 530082826 655565315 718695466 937127799 508575025 908059490 303650988 451084918 538159264 556103314 186193100 346156419 968987121 977664735 493787897 673703190 578996444 905418105 904766702 931581280 518240650 734755679 996685367 998188169 385448590 589662294 761319497 884302913 676844851 740414089 57345148 533667983 864194672 953892282 904537730 953433037 62211228 554555799 91030920 170989224 596401797 642149399 302293624 958344002 883770326 982061511 249725198 275646729 475858307 847018758 361623643 932554881 465477754 730273782 804178410 981005454 246980862 764096518 982467271 982927327 276669588 512838779 639187818 916627731 521486940 665123078 356991205 681178591 846150594 889231854 677899202 893553787 312485219 526843208 382912654 404013566 72737293 424979877 463122127 690601293 427575790 876083822 655443022 943593884 257258078 814236154 815057827 967613006 324753438 796448345 284448554 918552426 621142972 829700989 266346934 588984803 899943150 989050976 24366290 831149833 192691112 939751187 629462558 898540734 711860640 773670962 912707909 993585950 722876653 884721760 582554349 690968851 123670550 132191422 524333369 794985653 430031155 983687989 363025587 616745477 509417537 771908157 95519534 276700010 715977914 924102583 216165128 852767507 276862852 322365588 615013301 657744658 646669756 746931696 464178501 735999685 922139317 950298476 233684969 712834957 801405061 878066851 446190258 838623083 470283481 943109395 585751067 589766711 813737548 999095506 516203911 742939001 656753140 667090351 450365005 813009561 494195369 727581658 844520966 867092325 403752824 430032946 961556568 995590028 406435585 951808071 494546351 529097561 986032247 991417988 734959236 925496491 786515145 836952303 291611853 855507076 293775703 964359348 993298373 997278644 66453027 175433797 190136163 342175429 674362306 724280829 651567904 693860243 654927574 795534283 251479542 925495010 466691200 508186837 629221787 771417481 520791756 564267089 782264054 948705266 259117767 992194865 578816347 631880163 750211910 927021682 963270637 985188531 62666009 626525660 790515679 945967240 968070546 981799957 334527786 707086196 845309576 941872897 428147742 692333019 624567566 688297407 204945335 358176710 118905740 839048377 588768015 821150934 429428287 856799277 45706657 470231454 534364387 964993698 29273712 191199472 108507227 270606052 206194900 738683375 78742390 406889582 431932271 902196428 286521248 740031340 914435390 957536822 605915508 672553855 84634802 801039832 866385864 948582462 932632904 948935625 955086468 984012425 535477205 882549593 759405231 792852817 492017456 561210745 679649985 727001775 207472823 902812126 583090618 768545839 618460702 645017838 520332188 717904742 136002437 956551224 506925164 796556214 806670775 962505064 386629962 950649580 482100391 732115636 601116475 902279233 302126704 481336956 313519934 945211287 707356182 942786464 927087811 997093681 181840357 924287734 344609370 707128708 504351113 573623319 997892158 999449708 475497563 641395129 801474063 844622773 574777367 960063750 520034564 625888969 46009330 911139973 785732913 915455425 587027591 775615900 126359220 701161207 292550975 955172310 734990531 828560966 112043060 860497217 34039433 522286462 361053557 907137214 350822759 979026088 155822945 834446422 187512833 616421317 821700647 973022509 100057425 303896748 237262473 744342362 378059218 830510047 558485209 745296587 176465083 930166890 656281608 835864370 443694669 507458680 314108489 437567614 721672416 722915971 578358346 930281364 927645926 949823526 519903315 569757478 767580393 850018687 599360823 851598393 162467361 944012216 589250177 775809656 823212271 929494968 466671781 939577939 913963301 992344166 157447915 810344586 685004118 969559004 528024548 754774007 13181226 875162974 994171863 998910633 208987560 610344406 49774385 310314624 200591750 479767250 749080996 891107075 136746558 735964338 960911306 963064159 83652942 462010782 313832027 558879856 782037815 940603388 929405047 954892958 196471508 859801052 479701934 520794221 451075627 796407938 532116138 668655125 301206580 551284733 390594941 615399081 557902749 579620463 522628242 655221059 611784619 801934836 688990046 974604382 575761405 583063572 101908005 777311106 612270538 717144780 151926678 639642089 824191985 957686769 54306406 978751331 290848397 448824165 3323074 442172934 793576808 832160670 41678087 423588863 385705211 766502079 58481007 61880938 804740414 956674808 103158689 746191410 869712303 886936652 121777824 473504017 873877299 966741699 859623638 925335964 548278986 806260555 649915836 867066381 679667082 735836393 215182824 308263209 197147429 212276464 951372344 953219330 803344320 915707379 517077718 546017199 726564165 825212042 265749810 986257634 141526499 760843248 716073313 735153393 477664550 542474443 652781818 965549568 623464700 862361726 656610506 971387905 736299961 979929772 17065038 578658772 594047141 720130398 37061601 101703270 516989878 871809926 712944683 861850826 714260231 778311672 425634606 967097477 286158295 880835848 365532087 912499479 845483016 910038278 362517381 584591276 894458077 912836381 412588262 542727859 484379663 828182829 897869097 995737929 497501830 696069897 627792678 836865175 927089580 962909646 252027703 469969669 298266744 853930896 52909454 995773765 725986395 865901704 780065522 836180622 6590826 246256887 444087331 860124657 707506391 927814030 760753081 892108199 309716171 502279142 340361424 888037814 374459087 935172758 842941816 871998391 146077683 913653170 194800966 499506789 353814750 547024127 31012267 356527172 95397998 260511835 502984755 884455112 628037108 914181811 722410974 923703851 753646153 810886352 665375728 778827919 265989253 972443846 649646103 900409135 233340692 806279618 690825777 775480686 700929530 716058112 557788485 659560025 856829041 983021343 142348383 265040014 639835693 821468959 280398352 723911762 931823109 974166605 633443123 907900189 711360213 830372235 218157163 314771042 211609572 258598853 863895235 990066664 164019416 926118519 999261563 999315841 491230496 978469318 799859185 817688111 2188895 721877223 596470204 844694827 653366310 800771651 512160859 574139750 93640000 549186561 11770746 850131240 451311626 842944393 117114837 597641075 954996993 989578033 29268674 504129178 712057048 940310732 750661503 996527467 665413471 952523707 384542761 436829223 29606281 383784098 494251994 533139821 518353529 681447662 341261221 929632521 674493627 683367291 741527689 757406383 606838423 916791517 458967371 546290723 526327474 807411500 463001606 972839731 49030949 433227456 819746102 842419807 228297893 269809398 894177432 903844968 718188994 752750287 85447419 886165530 891729524 961135976 437188541 956039795 156549129 718288792 465680231 801600969 576665845 795650421 155043160 965732143 893291689 944417164 124380928 654500364 663650430 929971456 491184935 638277250 226255300 529965835 428334689 516261945 244763176 724375701 107364162 715360812 864744217 983462236 21520837 471090974 882715866 927640500 854890692 952835873 4323889 237635981 633612385 860202668 990046430 993549696 898942990 932797019 855793041 941631929 823948737 990137704 427589832 601809353 996927512 997301498 497067800 998361694 502523227 945028701 946741912 986119827 369181028 799880111 577072901 675705402 357686022 737464680 783549609 879267406 703228098 975497622 164810925 541868540 667853519 718148645 731478034 865436665 621427782 645291247 42540278 72345597 165173017 601483506 585447056 690380792 917653013 923484138 79109289 987347790 119107766 851059262 41451482 252725079 682266908 704029343 161880875 750887215 180923685 739762739 163516721 975684512 448609690 820856031 664886806 720513657 971156750 990027433 795885481 954821389 183757494 819115260 55846801 402762130 897183681 916799394 500703156 535858298 553191336 745460193 966041627 981272844 50934154 475569039 96532123 159340223 216106858 416716625 511308239 683266092 149183499 422533297 774302955 907343474 579313745 918834789 205898021 899031373 982452078 990356578 59234159 469034360 635271543 859407342 805646667 854699488 311606926 313447985 713150608 831328850 178700790 676462487 46353492 570599887 76538363 263433627 406568657 551107773 177752964 223353809 590665719 594026074 82548561 872426999 33281577 783884065 711525053 789644398 414346871 850851135 203978010 792566977 41451876 121017017 667234238 840834440 84559114 654162870 43319964 745402488 454931091 507997781 807425119 910511925 975196876 982654477 691336590 788000986 58640129 440799494 412074301 960885212 318889138 708287747 881983842 887343507 666524329 894725424 861260496 918283780 730214001 855320912 638377546 918646270 567539099 895093326 548503810 760604608 626883551 667309412 779044983 825768682 649655979 729878914 414044920 562346673 936269055 991393162 15262745 221649317 420025184 923853604 464509013 577978898 116289939 288890178 791432308 809654188 411684834 796029967 40955189 297743762 223390670 777529340 263307959 801962404 679237157 961400050 531603777 607967581 615975153 760296592 429317768 701720912 416077557 799604974 916688213 937574582 650641118 801791045 741233171 908975782 601210079 814628123 530468317 675087128 343583538 496024848 292019809 357524170 477660529 731724323 172113307 773531963 263304800 599359851 116809547 459697713 654059255 871666600 984835873 987772690 992140992 999640952 536976683 576443961 145908802 385906182 174067831 363885394 175138914 814260480 45437031 977436778 533713424 538250191 191036121 618878905 828503966 900381201 165816100 999149202 347550802 507084167 219771462 648959546 19440662 506221511 545749856 941670955 561361721 665868756 942736567 946594282 58441075 720895238 199577712 258442942 48532400 525368218 692882249 718094368 382781683 437219411 982496809 996224278 830875367 939296631 10218153 700199916 286713432 686594191 266559873 914897939 779514844 835649735 160810600 927719952 308481272 917107033 61987540 222295833 298475364 362517469 829224355 994646338 584750500 597509085 65499086 829538256 292297151 780695526 69778147 635547972 470175758 916470502 312771530 937941708 163191691 543084972 693814563 848423593 923292621 954759082 397572740 556851087 743448650 949614514 89684786 490294580 701574020 822111950 516193443 852442398 914532600 959990980 237590545 400666651 438663808 540311747 426736225 595249933 972786789 998704656 263916411 836575321 440992746 551087872 29314488 620735157 839882706 993367418 375900124 717453973 633806529 997051830 990572051 994088405 701389888 801079298 16924211 774693177 366168219 477555142 387747544 461362121 117120282 486643146 189378824 595295583 18776606 732515734 251391431 394205069 47660254 622910913 518068616 612150782 393481059 475493247 963387028 964030183 696372796 903945090 930301575 951860436 476861805 734234456 663302151 869723758 631558437 977811082 379204478 619817266 497354401 876187247 898320937 997074475 933888368 987554280 550494839 636441262 732078117 903451717 804756637 992091062 198303123 573138437 83970366 110405624 797942082 955088994 584955418 769659261 807049769 818864417 29157250 634849936 881317580 982647723 138796293 468949203 984831708 996482916 516094561 637607643 631300873 758225473 515317156 751228141 220307066 468695716 451681609 929009160 574438046 987164217 785734899 790856253 149252368 776717901 416005846 709963881 889097252 940085267 982595733 993517596 346760875 832731515 846068859 963604320 754115372 859005866 386442646 611928264 996946573 999836521 267664595 840506184 445817591 821463366 576670598 644081626 66558795 328717540 431559399 534065810 466506903 524830706 70349799 123222947 623076126 848777656 435641085 899803495 479421890 652296973 845746418 965479161 904950064 944420412 156889708 546323875 699018936 795017677 104273357 158426274 210371028 612749472 614038080 695868058 657351446 973161931 471124761 508161633 167408222 439304487 639780556 663839838 408154122 536733234 429893636 662732174 678653385 904623278 168781331 851907295 675000261 733053373 130151587 869393680 431962974 835187821 991420111 991880362 560601262 858170474 257124895 954656907 737112989 894132212 850535463 992982463 737640390 917129496 612240940 983846005 786268981 881694020 203165372 622935761 198360166 805680806 102100251 323571640 62404327 647664300 607509469 952755530 710345178 837024208 341155833 545157675 147839098 997299013 209681048 686772788 847512698 873408921 817084987 976655940 422076053 899442469 662917304 886208254 246991571 719986240 357374201 419033648 535722561 725451065 439291862 934421358 926717015 942856134 355000044 478573903 712231246 991870986 31029285 214544273 206924675 263125821 835146324 839394386 656734286 667997564 355301035 636431561 329279624 628992586 902834695 997082722 117709081 688242905 267832576 672267927 19755263 681049938 879900855 989661030 5352284 98474639 747246627 936977401 868401906 906484644 822996923 971575387 623783891 695011251 315762981 329828322 107426585 674029685 602169622 946196051 717757970 743064319 134617270 974194977 105210391 794755462 300038757 792204279 486035887 980144742 865985559 877174785 30099857 106644198 309171518 506402342 332857258 441720035 242925256 291318888 908403980 963534664 29999314 706146467 435695469 832927264 795499322 959677974 590857159 911589061 569825523 924857885 245425118 943259779 403949414 982027703 80748307 535826626 263309511 471927999 475307046 614692968 366676424 472215488 198186038 955861264 575709802 624659374 88409294 973723217 724422008 783388282 814583262 875952714 255063392 809580749 774603020 945249168 332087814 719472401 128248425 309127888 908552722 969449782 581620243 638839403 339782923 833079028 122296405 604904634 416879771 679932436 493348275 545007666 39879868 765127376 398508394 652579856 60257657 87911619 502670619 736100628 845891289 969531515 840623143 940891309 633565925 912973726 9404177 993987162 327926737 828327359 834461637 857763847 725019684 798154341 694207423 786819626 292009309 486167380 494943734 957130577 157106148 853136108 866903858 874636606 590908921 890461272 143981191 604188927 800638657 801989914 739260947 952422020 998113701 998605520 66730984 164276308 864564135 897346585 135950185 641883371 848636641 947691049 490199609 895766678 288008512 663316238 731785362 755310748 772965465 978682213 431622760 888834828 92070781 604843469 492312121 654909272 371273839 677948563 617734289 880353997 116101421 160142580 262894909 490678033 696312359 930993277 214071502 993284609 318848288 832448929 201182207 901642547 512667269 827196109 13054998 825044524 767202659 778616702 731431530 803904692 978425403 997213325 396809513 418436960 415467227 475364704 633083859 665427730 857766789 924118961 615642179 874113610 152956050 309401937 164519849 399610052 708349899 847293042 629228874 749141242 208644530 785816321 447037673 821473985 337959118 435547670 468001968 983661316 406151236 699391238 244929842 844217234 716618833 815864690 942468895 992671490 34510620 926021746 554595198 819760631 358531290 979583343 406741972 410825085 135931002 668207488 710769622 728011601 54469088 756381416 129230845 354252763 17744954 922882404 756120136 780551136 459910772 852173132 561880762 719900985 560864173 616977001 194419034 481292258 365849707 677260853 400734266 765343669 23768766 972618419 844131482 923800268 131907769 516527129 912836242 921872068 925029241 981996843 184412038 896648897 302565790 533867721 860535441 994633928 170886377 781101619 294943422 980676449 562125299 694316120 587157491 855610388 606656000 654637186 423384205 534192533 225993440 486712982 567711978 713181321 476377001 790630312 709232691 806394557 448010156 658687111 449581577 845990734 279642982 761081947 990451247 994342734 760588738 855160151 896950082 943841242 71497428 134756025 715989254 818249580 807718499 881452299 176572912 889121365 300238060 930312358 704626305 966315643 921805745 924639571 645758465 872398086 612169271 690628681 249771286 628028339 618430750 848322176 995952282 996624275 451132002 740264153 40778011 547053082 30326448 895249568 738316493 936800051 715619857 941543691 956491806 956678030 870721137 876412819 667390453 800247325 741748933 784120470 744095937 758448074 760508472 770517501 598777059 874076845 554214084 783346841 541794867 765108808 653470549 964265831 824129856 902382897 963208139 968704978 74246394 330640388 969925495 981757027 320206116 374451305 693198323 708036196 994208132 995987287 319591239 770373577 796597729 924476420 420656671 458602452 9057007 666928243 405721139 688891567 52840538 868602982 474432066 695082536 111654790 580883856 538148774 590133813 261218327 486137475 974506566 978174783 936261708 984959310 831752486 890491847 14363330 853634854 940747889 983683969 853985323 915485553 833667854 856826688 163586483 784583822 287617406 763901911 202053449 216932653 279735349 850818034 194613381 838293177 322545406 979558933 524098085 968158457 728371723 794877549 662880061 805122147 212651346 822630867 650748188 954617382 410332155 963908521 23348385 218147552 844646021 941766642 23487913 449723416 874791893 990704456 10993932 12588818 96179656 618061677 291595149 999910325 24994137 125644148 304369876 481577741 77911503 557409779 988373509 996558093 996855894 998498016 180329011 475405012 735113402 965363361 285344862 630512532 920349354 974520924 939030804 979833022 701510552 723433547 600894242 673100126 123017132 883656587 891213317 990874086 341353060 543320032 104115404 828768899 648314456 867671082 671944826 752197600 377108664 493446250 961970172 988275603 232186013 853582746 686989264 858355957 162362979 166233285 332787127 452141939 548752179 796774745 44042331 471746047 654203819 942056028 991604894 994454198 906610308 995773560 361226499 640977313 320256798 698915035 540344564 976006961 613795275 855061946 960129420 977650009 336523996 901578478 943568392 987095364 928149148 934874253 72860574 895268223 969665221 974255823 410177152 637490452 434193490 687110137 352437876 449174429 617031075 666320775 60815975 733123025 46410710 849935571 606181395 816387201 133306462 991386807 743294381 875864382 714119604 750417745 604029297 960845932 624634559 994212955 637840561 896516230 623463454 973345150 985344485 989906171 73065763 558706371 557223913 674950497 46537922 553232521 444613729 957906075 670063577 858537462 394226932 459755437 965553411 975862946 172747348 568224986 653644721 752903361 231193711 351266883 647598427 992451816 15506883 772903666 772949409 899298465 562050872 911990810 427076038 728775197 205614083 295073809 980442898 981650603 347018634 811533448 193801280 658540745 558886661 770699335 101938755 723232143 741850709 776229066 112119990 889842002 116194309 490552624 219822329 324770276 95221231 414718529 157788897 392071616 648398265 934887374 530792417 984312375 281253899 323147626 899585705 951202112 120789413 692325747 61384752 86551503 965423881 988916338 273271147 434438319 315785685 702024605 912547124 988837864 768440511 946444319 342393309 782669633 63141395 379040081 449550732 473819524 586440300 889195015 787486809 843396678 801146772 972784410 972846378 977163478 129780800 876014226 217327722 878050767 146865878 336845599 259055458 919653651 991339694 998822280 77403968 980492085 959032153 963115104 351775992 435938661 238687973 927617689 542908700 721646729 326018233 526878755 874873271 989330008 190662450 361859090 459090066 621943776 831473779 927349522 215223743 226376707 830459961 866635648 236593100 627042728 64873559 378094657 725204658 904803625 582669676 934376458 96913555 501462271 508495382 892185554 547774426 609078374 361022206 918394827 408594500 632013148 762281180 945559804 474475037 867465308 199491857 321850953 977884542 987183100 145691429 794325401 837516326 890200086 234207732 832007951 247516301 625678077 421858500 583781548 808662133 913484943 804948189 959984657 952533027 982109716 646491313 802087839 738667538 841641445 202101338 715388901 443242894 736820544 128509537 888688806 690903161 978011258 421280421 719874499 889173528 983847997 983290920 986376183 930600008 959774499 767459508 927492058 887320553 904136222 949500671 973536520 177837455 678713795 727505372 762730219 151772859 241987564 782548626 966695778 162827859 170317429 397885730 916317576 908181951 952996007 228838010 357903310 766689068 969966350 280799505 961037676 49234514 220635577 434302201 598639350 601887539 650640848 715924183 722822169 694386171 828706898 238282744 466338567 50628187 532397351 379708730 968949642 611237140 685407937 165530653 617151787 183348490 283684533 71558384 886914867 800882143 910148468 505694813 558055688 811028349 838094405 87614875 306953787 191068729 307984127 643008366 930354694 696362821 882970210 217957546 241766113 739727744 788386011 687621943 692413396 799627369 817629174 123627788 761858946 464273966 850035729 157267985 276598463 390482689 475678589 611902907 935941568 272119219 792470712 196911429 933447017 693295316 868224838 848122857 930099885 488475513 678885630 325957572 581773835 947287856 988377525 779114708 911895181 726937840 908008951 900657865 951302706 715964129 982360134 771833149 781992005 49178893 355339073 82675539 434301505 327663111 698800290 879252197 969229130 177282524 964038859 435228305 746710392 396826170 770491227 787349055 806212125 506334423 753618160 82885940 970683855 145145087 884958841 388155992 839807362 985185674 991816029 661810204 752052586 970426651 989593779 444355255 941471016 455308103 864123272 737215734 813761494 648135853 980161812 288384258 439875538 862723374 945731186 12606307 27035245 211986153 473671415 271697860 884645292 311236885 522810135 591349707 833565677 398646815 528293308 830048710 924972239 737801669 886721391 995161609 999904479 86918539 124984305 264408403 434610445 817127971 918535385 716402244 799652401 973881778 997252754 358628042 397925787 937213336 957540274 451922687 471788068 440665239 993352813 922963970 943688433 507975690 829928782 422491728 983788520 199695621 723710526 417727452 952537715 202441622 898673629 357326691 516941502 665510328 725891031 937159286 966804907 48817583 272923743 273686058 311585380 80526588 960330309 125247345 776398161 823746615 961858833 729258837 911591056 959562105 968450719 834126357 974085489 593332262 945797262 318281378 597262689 265694103 666530775 322422559 546146640 166416240 623589724 790797750 814489665 579260447 668350881 716988581 942727025 703717257 751197846 550681170 940606370 507654882 577991234 926803851 955117658 214260174 363781616 557036405 872191345 155053510 352771124 24126758 828920426 693049683 823271991 35758701 857579979 548094455 702893046 855569122 909029525 23511034 457071308 323040496 813518984 573017638 672258747 730650234 949332409 464353852 634035878 537492087 589210159 173191916 402609432 294492589 818150300 210471242 824950407 923872742 963299665 580566424 867336286 642354103 717420069 551855522 592863337 36897208 549790083 900527660 969524154 476955366 879386864 203499488 571842994 87332117 605256883 352665826 952469804 789610202 837864400 302498243 748591874 19656254 436081837 475429675 576247349 308303418 597923433 775235531 808200153 246605970 643827570 8828406 308886431 449960863 702669915 406062921 906455350 513313567 996582818 338558573 773548884 418875631 441183883 220047933 588058880 822038594 833879601 800585706 841462077 306980174 827475089 510416552 897949983 870979035 902763229 357955766 499491783 846272840 848490661 435064497 498729559 147512396 855842948 796056607 966460123 516262944 697492535 802486871 943944110 553125013 641934691 188474801 502514605 762400530 994701092 282238549 749581737 116372754 361698183 368919427 637100442 837209490 896505588 509548489 698997693 304768379 640658474 787067011 817437464 517094992 900457657 535388074 744602565 935915336 996250314 810041387 954622724 368130322 943293883 500346999 679559580 179430101 923515009 928405363 930323766 216852060 654618508 186459779 558580334 616414353 997010564 107471656 364396625 183662634 872920260 465526801 686841553 716569036 893830512 486674784 663952248 351409823 756031404 797381242 840979825 967930522 993662783 721977388 821705989 386171985 640327365 84769660 737865848 186961434 270609148 134415688 906800895 94162313 869058191 740936043 966068464 567736750 983958796 215726004 336290772 550524531 798230066 883218015 990918978 530421195 846458552 991704500 998337184 839103412 912833098 30098166 437878193 491941023 956932517 277075345 846260716 604308989 616750385 351503112 970704683 291566552 600722783 280239922 408179929 102864567 117301139 670505508 671500362 429033758 532316108 196709209 443148555 258646854 520120864 22597499 806502790 871590534 938911593 583724671 820103129 694690290 859334707 318754271 851934094 69230725 207914367 978350487 991894919 199214384 451057668 550266827 702147847 317136137 408427964 770778240 942309676 34190265 714351055 527862458 795416304 142732959 353617992 372383718 852659333 761518820 915913979 937724067 959816027 167966339 795185152 254940920 529976219 399457820 903949240 543920398 877109099 613295774 704445402 702644513 911084267 32930391 718949194 381618869 657256396 356956975 863478216 740031024 836373751 56145127 251757318 289565598 633289394 526765944 933241190 628535211 745570790 168192111 650423374 823907185 879224820 173612634 337673521 536236336 562454772 989919939 990102413 15571196 106045436 617223697 964002410 951814153 966412324 237516287 987101613 832584697 927058175 838760545 974769838 78399871 169635883 593770486 775220966 152121882 669940615 248396251 461268675 93567149 370592094 382744506 689679133 870921807 882471650 53698790 591256205 77809686 514864773 689039389 796064076 878040316 973085867 783154311 994756914 829710821 894252749 542433035 602297934 254166180 730437798 772921576 838619320 829804631 842488882 554380889 961914163 695862917 733274542 409578314 926982648 513596114 930705137 221402142 508018991 581505126 757794069 31250780 428044457 525607893 748398429 860145937 947273684 202045976 521109431 326952788 643076223 938098557 966029526 265191107 905139103 992755400 996388635 464611672 651272036 559807455 596307358 112509823 545498886 256737423 348045341 126110030 498320527 388922105 800112239 43584737 524231383 321918 572211274 225759522 753537538 973152569 998150345 163872173 480912078 387894397 760279913 995233649 996212254 402550294 480675337 542999908 944304609 40481143 928588003 64353956 206503668 876949637 925532306 504635634 915565304 258005133 765429613 657744683 696080787 155101597 311162175 253015608 805854345 626960616 635580543 103960986 742289075 284959761 838192579 85164187 669240076 301245467 542997897 305747945 796190353 327741997 402466768 36943084 278491482 220390485 807700608 975432030 994574412 343105177 495140124 551587717 942565298 145423936 955540133 751212195 859509956 912479191 974362246 584768949 738132706 395380776 779121838 45874951 740567156 104117828 503888600 754436138 917135008 793774389 921101327 768025150 913749336 457216920 712371900 770199789 853149718 606557743 905165856 31663163 112823365 191188666 646810163 246028573 832112763 905544516 969834712 924378302 949908073 748419706 972066564 52322099 966959327 617669785 996742627 678965703 888078436 963383659 973883828 977703558 990908137 319676071 385020430 351640024 395864625 927016195 929920437 618688639 997214947 276991765 358616097 863736388 906219203 520867066 804148436 156468250 506654709 354225815 719076337 806209117 880820979 88360911 709356869 773370500 973405646 927679714 930275475 445643374 765786001 364323988 880894375 11649495 940215570 703148197 781439240 76826039 205446865 79636069 267953713 539209595 705345820 1151152 14741087 349496560 400299712 797528711 838239270 937470338 959864168 482991037 813014910 480206433 684773169 27701281 599011769 241574053 715291015 802259170 996232346 426828573 828478804 377989538 954563504 751185925 796064270 242993017 647779315 881250029 898741477 321292095 777870255 980819553 998759929 744132884 885866279 39059291 628239909 962730800 968663788 126578831 774735830 581358825 988032367 378407009 710104533 278672471 754035345 902290692 952648574 793300695 899386736 198424430 381723738 329598320 472448484 336388596 517376609 765821465 838794004 92300422 628042160 69148698 142219969 298281641 604519743 221401915 737745346 954721087 988929677 142414170 734002569 54432559 977236755 746414779 860252159 159954172 634809331 935846993 956990940 482802635 870755748 953773034 974897701 775092410 941127451 363129932 870635647 393151258 855873057 20673489 529020322 890541684 898989581 111457889 187883424 816707367 989841269 290950561 330340629 664040600 762219240 490817554 826572441 913482626 919774211 749418484 834151296 525807148 629508764 261376714 780838821 797767768 919138411 432825050 857245364 450200822 646184854 789512341 833198292 90176860 135161681 162409437 821999052 590487867 940845951 9493873 944981345 250019203 788730135 582916689 852261578 39221823 332666410 37483728 43386237 384892374 393089102 353742814 568035728 565121614 711688858 383297475 827894294 141385851 258937956 48226667 858449687 623441221 692147252 367793810 656770385 911881556 918195081 681920836 792597926 762357411 955200199 443565085 791115927 606159871 616239141 730427872 953028377 317920303 398586878 914066986 956539029 723737355 913637156 907813382 996462207 813506271 851389005 307392437 637730514 716683649 798016554 433522573 678051188 855386917 923614822 959729007 992386354 452837022 863347163 341541114 938357158 66127682 674396536 276403371 911217059 311024084 957188102 761477074 984956002 993968888 996285112 408056048 818577983 71492340 705457640 765675693 786595716 300903900 438873052 484705807 495147724 876106063 913803578 179121614 339954218 656206663 935337510 75590308 566723636 17221646 385715835 918052558 944187868 842242111 914686386 972349713 986257552 640154801 752190481 644649951 924179026 72158208 983509156 584030964 618563449 830374318 838110724 77720019 304715917 375058925 571108303 459245380 793193643 672949687 729936665 883820762 992658180 361651834 520490010 618133296 806890166 944749838 995312513 680167168 933388579 87494775 173293109 838937150 953576959 24023871 532515211 400290323 403770237 878528464 928403424 667106644 759564183 813481282 936199325 255667541 666040267 137671231 810616341 57886291 579706330 320160684 361039877 921379919 937547230 147398692 397825900 229140270 726609794 900164280 932258550 304441163 912008273 579360090 601784928 464250452 866359388 18207448 71345360 754822700 793890555 569989762 867692733 675886794 913609840 544965467 554088193 580605790 731195704 453414470 774367010 25771359 249479781 798002850 850770815 590709871 655788062 985235193 993824678 874382933 905701710 81763862 468448582 328730030 827882206 913517558 966985881 234377716 644323687 183660536 830271389 846680785 897631672 945925689 998869304 973347962 988333134 592678422 638130490 322395468 657160457 197966429 314868789 32491462 84871236 817171374 838314839 426843507 533398249 744669027 908289296 843081380 886821924 913984136 935728916 662087511 951085918 644900320 931495000 211974448 444093197 703957080 799844834 492040139 581409627 748830253 899361548 186011907 461401746 931048555 950609167 195820547 754280087 530127053 545115752 987388950 991033539 269336891 637751514 43890745 945052834 753359284 953239834 634633402 641700698 254246705 406961401 313002200 495701007 689659148 830713101 899562530 959312160 993146977 995892001 186145465 246426921 18934848 836598943 322651003 728533829 460060208 865108720 930679528 979870070 681765418 981201716 998166225 999153335 833452060 894972454 877588773 949865323 112551024 311329936 540890148 699803526 763912612 964873040 327305892 583849302 751480626 933364655 462093104 942888746 356769720 925056115 537815223 565832611 867204666 983632786 875825314 960507122 844476641 996218058 44319801 129770943 99960144 926053677 796499412 863469571 539291992 975906904 973721134 995204928 687164653 789389028 697603245 830777030 876381237 943335286 258075881 850430750 369065515 637459800 247531622 355825608 920503272 975959071 580485343 780199661 459996639 665145671 770213014 863569720 344285533 810398535 613944432 831973567 398310593 796205497 317914333 760704876 427019170 564076945 915333272 923568092 503638955 905971257 692774397 921203650 589076871 898800967 551210519 809396735 928916986 939341802 714214197 801215386 895877057 942019875 83986709 95377831 991767207 993745411 775132101 902027898 372654860 616286768 754377647 907171082 115088052 504256961 340122714 742274956 653905585 672063476 843060282 889721112 52626679 560343971 436993723 817465957 840249964 912758171 870630122 996016746 280459701 639846924 564315952 724676298 850529541 889223092 228644334 369305973 831389445 901399348 36315766 409652616 164939767 497018675 790544809 837380630 679914336 913289129 562475248 970833311 520725896 557925110 709877036 978620008 928801478 972114756 322319889 397258263 873364467 965648583 722476601 864945608 769596638 836051761 784530502 796406930 122683110 837581816 425669212 848144561 498962952 997011855 696400808 922689002 156484869 315763711 620164093 959964846 375383688 680086933 76313801 517828758 383562772 654844675 303514669 736281196 649276832 740502639 349465480 923412323 561164961 907450098 900299649 914195530 969362706 987741699 945084754 972716200 627316225 833403415 824938372 875358227 327457969 534599234 31525979 977240954 486280527 487618434 531708528 923952456 201039941 911618878 722487735 907787428 451006527 806285411 993945901 998529782 258257514 263170505 501133256 853112086 62902183 513515109 445776823 654713396 201413344 494638274 680547003 966707167 488633614 746657916 659589896 736579280 642021617 986685488 947803594 998957875 673828307 679378640 858483316 986871146 517659799 842620956 803965260 926932460 911982695 917878244 317795568 970382736 675029758 700396788 645373469 918225925 433940078 556835645 622554559 765328706 159923428 530890904 295335458 980084587 193557387 446356676 265298419 990827705 925518718 926322268 566606428 746789185 143292152 679713217 441215012 677707058 630492164 965652357 853489418 991366563 455576563 705901363 766600933 869213883 123716469 521643767 362728539 922506903 401677934 617188026 528919142 878011361 545212188 775582696 791736331 944346437 463143668 804869377 624420401 712667572 759389295 777903183 495163812 989904277 752419294 896511465 526162098 773400969 743241313 935492452 750679517 777337745 781599231 865857521 640638471 756148128 326119608 517973414 40293999 926628401 49185658 847944338 378279016 894291997 845316109 932886510 699698574 747066299 835987277 853454208 213438244 903204363 405391323 521717749 976030251 996030052 483264209 982556567 922170989 992476317 850316484 960059082 477604481 550452178 707756674 871372428 350139478 780669327 871552368 920688746 466029365 759584437 771479996 809779179 649847512 747773385 874344138 901731046 180696293 899292234 34141580 534946798 639131366 908095250 75102735 669472488 716461959 994407820 487846783 511789292 453760304 745544236 645922708 936572869 690987955 726400823 717536302 976827869 783854849 961323554 935436983 994039558 568298939 851856238 153847540 885521130 149888774 245000351 928125847 968099769 895418601 900257253 144122768 370412846 672241407 955533329 416790859 864710964 797634165 962210373 198413569 446068926 464007848 500826259 812773044 969797857 528635146 869578053 105733887 577539673 263197068 392967718 900236498 956072733 15605591 158355528 876756981 879393764 462069556 491112770 418193832 544219345 532399759 596661799 29208343 772104289 397253874 433182708 560817616 945195134 555941843 968729793 351151673 598925158 905878722 958792773 658650335 831533765 937381839 986881438 789369394 951148688 616432700 919976090 849705427 988005377 693323525 942586942 543504903 777650850 259496067 413964621 335309389 907623515 515383631 814873683 508504862 706048176 784060587 853357119 696593121 745172921 527058121 819632678 552797783 635036862 44448724 737479490 625268764 884777407 678167719 886925258 858105956 883623446 754210540 877335622 34693482 538116591 136061688 628908406 964041272 982135083 927961003 941907689 470962487 772461130 799711214 848268353 776958647 824685311 745754044 888275277 774295750 828309706 793031051 903849938 650954115 757286764 477705068 877132091 67672469 758688009 472415398 639601422 348237263 657375153 867427767 920958209 839469188 895305589 402659606 744440880 126429624 979775683 999395150 999560921 985824704 990465391 939044752 947740797 402770842 465759053 956484508 996392325 23328203 877902770 722753918 951665768 490068529 623530085 277926102 302762558 755330130 837177215 318253410 638649343 695488929 875736369 650683848 694155661 287693846 485820795 50739559 426636552 877072456 931883506 904705176 983576344 369841094 566769209 331564433 755059928 307603821 891374361 533334179 695575530 449681924 932889147 421958144 962814933 325471371 390000550 550114146 854133463 127395068 519292324 614823753 732146776 987948226 989338788 570435927 955860475 161353810 856628745 177733824 691963742 293969708 476041648 675608137 837926348 325448551 410817088 999366929 999571367 532320600 712102471 591407023 960647670 168509490 201526002 276007015 435168841 359608726 482675190 749793015 971558719 560628153 698426378 408595035 430350620 351950580 371654862 585526903 594982012 425621374 754283001 669474245 937766774 610879288 957278330 749553088 958751645 874644315 964508144 307989703 933569038 876721794 905079111 530288824 770882159 165118190 328336181 757240958 922432499 852035248 904070668 17267501 50855774 695581458 880939130 409582723 586104924 265443245 732865226 255550701 305158070 645133079 946613367 545713938 871616823 602502992 841789695 57372136 855395921 335789725 689641075 32962270 624585410 231532464 672937426 992781085 997674298 898428529 993456265 709930570 756836640 510123143 782313574 451676728 555904888 841988304 860179557 485956889 973360085 320859095 657106407 224341362 726622672 86012372 112772882 99904468 201668388 312824715 717013894 151306355 491309323 302229839 502085691 573623878 597613062 579416206 850245516 62303200 238696383 903895952 945975523 646123867 875684078 635027456 978714722 923133363 988350980 162549178 347912869 629400639 841600403 14987912 952973138 183888629 510621345 823868998 869555344 274979856 880747990 384457173 434004552 497608066 596233914 815638482 890967763 920670794 930444916 951578752 988311717 98716013 908539493 43259860 705951590 845565724 973866687 87997549 446795504 648539458 925252384 313849471 956093610 975516633 977083690 129799201 203061897 729204594 759500364 226667882 918680268 665191233 763413569 143010024 694145274 822464029 868666120 543670468 961145923 221410463 359412296 153027190 862579367 962404207 971664641 493500744 684567133 715775461 773773230 71963184 675223611 669600750 741327648 810860434 980817272 227285761 720085146 29845442 487548006 266556728 462185235 721661768 989132919 824704790 930269310 665976342 881463489 624192611 835371833 199885723 763137181 357339857 392675649 277015345 553300619 24428656 866929934 29099510 701398084 385324182 823436088 792224526 950194847 131038200 529235943 532356346 975494868 313711464 352929769 254813874 663507773 202505842 743110291 563409902 951705099 164331781 398104959 350828622 713355271 120365815 976857240 785206738 834315702 608015553 889787879 578499862 884379657 737197792 824621198 213547788 214814030 209786961 561607652 507512811 673739063 202742023 819881269 209756990 402696172 663140728 852717346 653050858 940692950 185044436 790714708 711416086 732322260 317477947 953367664 903709788 953387192 667474912 723726072 890139723 910328603 348902156 590928747 637960165 867018667 787871359 901704331 458323896 538223075 808601892 982254017 2180829 781840228 875190709 906540514 101027681 501498823 163964963 419578159 669032198 674472543 407500212 582031017 381828598 897328744 232367640 971617904 594818740 610034639 878360525 880824050 854669968 919551480 617260824 738149343 189564203 940633988 585265309 665841619 316168858 538545631 840533133 894296263 848532861 972958784 157810786 748148627 960958653 997535326 794266477 813908955 553076945 810880502 544928825 810622279 617852007 992462754 542733084 953998698 980870955 990698599 324461670 643774827 447145805 776456000 745405348 801362387 699187920 981690604 485011145 667898656 685391428 975887805 577569889 611126039 538912558 821915090 744902225 965858171 485110371 586910968 612133753 900511557 120817782 692883844 105895972 951435730 260288241 621982966 466766091 555368338 169946218 478808224 561034798 636598134 840759016 949357190 229775764 506429057 900107451 981676092 609378649 622718710 83925346 315623340 313490921 434326303 924774616 932290530 543364319 557401980 800732129 903685484 571551988 638157413 748371463 847151742 854061952 923696106 634862625 954876905 593373021 866772699 117864861 997468604 712244498 901125173 18030700 19345961 507778955 659287006 712955675 896343834 743821757 953311751 658367070 948637569 82137841 270847188 855366036 890845717 288695443 828947398 75650790 270835201 3496031 405430232 918148274 995644669 7000463 336369036 924414895 968746329 356817429 534989998 874389594 965441040 547943775 648470007 346518715 808904357 829642333 887100475 282798264 348199253 868799011 998368280 277518967 331397205 684114821 996315251 135236723 810952718 110585158 585928133 166975103 955410195 192917272 482218674 651527099 834784774 808712924 848348052 584348947 910504359 521626158 848976986 410291183 770598514 46990836 89977287 937296574 953794464 828988536 910800487 22280170 462434239 643809524 948102472 826961399 884248312 563148457 996207093 704524736 758036154 910206717 971940876 90864949 112661132 756984799 849479575 987989482 993884180 663695438 683479787 230548435 729336503 929920787 941674569 566563839 861332505 380064028 910940018 54369722 861929720 989750399 994143099 596921116 612795041 761343098 872618626 181292432 780637159 503325009 985619212 339928569 364034680 371163701 734621367 839372784 862774265 27700497 200134002 810775208 888798385 619002897 633228613 705701596 943394147 916026319 954006277 145449929 983161956 43403382 198989644 693774292 725446384 338166620 500916201 871993954 925048337 495334230 959053622 37046521 904138422 395899299 599734330 301767922 988196220 558506842 954878364 112634173 598817566 261779002 659897191 992734015 993208022 910507326 976017474 978661093 991504875 753713145 807600403 628995146 884049447 124838587 429166820 959123748 993815915 113033516 819476806 752074107 873088451 734932087 971201553 351855034 935093937 143494701 906879775 678967487 835403626 360413268 914573817 55565459 899868697 504675443 892917038 285765589 539441827 308630853 659899852 944683097 965423064 251037345 489499628 19557113 639825389 944501089 965308322 883089270 993278020 698909693 921532900 433707448 704159502 197755088 505227572 738779465 784680871 4289006 538781288 350620504 878577102 152718139 777572251 843278513 945873728 208173032 648633746 88544123 308726933 604468142 891586047 984647766 986424978 743267922 807094101 271812452 385247083 802046442 879561925 278512368 516345319 266750989 886847576 107178312 746086188 75358358 871377112 667770917 858364883 47263008 339565644 691578684 806559149 337376078 607112087 254340834 271751438 730871483 777729048 503425841 762242588 61643637 805929774 456380788 504745594 224172165 674117327 693040853 781114781 849247019 898809819 220716059 544538425 66803098 100858641 22179701 159199885 941792980 983640475 416239441 809572205 780707972 944653151 414280656 584244217 146360454 169737780 795925811 876726008 181225707 360589839 625139460 787363867 766444138 916025224 185197685 199420160 948710860 996968203 222210676 636698199 672268342 975076625 345348270 538210497 191473012 619648336 287708077 686286872 360059519 419016531 466294929 555787547 480740279 877472808 40570277 517688364 947056341 988684951 136904724 645459910 839862981 847664231 284396346 855231890 908868352 932644371 715734460 736547713 741998133 796139076 287563124 946367022 889623763 904494036 431282832 515487226 231677656 728101452 113192488 227930020 353008902 603011498 106989804 222741523 748258637 813782185 679142101 956820216 908759662 996416791 822099488 881684441 210688173 610414305 922065060 933531958 448502163 604018456 568224220 896357923 217400720 720538411 365997481 613608522 785718060 912642525 717177277 769931799 527958718 713885422 893465794 905752413 387419091 915398616 477238502 706735224 153434457 562444828 268910263 541430546 261960696 617873222 681954762 742941432 329555415 773250310 358371056 921603273 280354172 695149820 308187502 420045363 433010135 509503743 926491804 991403628 453843372 537528911 89312180 919611253 537718147 776270139 435806962 454288757 692066442 837210396 604350774 729845257 673061071 840189247 972167224 973351864 182079944 940882125 51464921 352435813 288766623 593815410 395675659 760976456 664858227 958407700 489983498 925310189 609092823 819746148 30874784 593724691 757515183 907991915 972258965 979247122 982031401 993776868 367032358 742902709 743199235 836021485 835556921 896193534 150671045 434628477 502726607 763734720 246912860 746616396 747912642 885251305 958633539 997167890 929904179 961908854 443294069 693164160 436724835 771932944 659012221 909539341 459582399 791036790 734618983 939180816 153874760 365745038 191847388 685240129 87136182 973156221 101832014 932685756 316005343 317475040 93094306 643640577 870321285 875805741 464477685 773677081 236781523 243430715 856579107 943030894 384143949 388240047 248867795 978264498 28459905 442237414 998554987 999148175 833774324 885571482 579160397 596154094 113958124 645093999 236506347 245467998 244716795 660471554 314552897 997273464 343481118 717369210 434063539 901800240 696588916 941290317 40074537 471504888 570005641 963411434 158617626 904699368 992159761 999564755 489721057 795582212 705273778 962415972 293318500 452868794 778879248 928334705 329150280 383826113 70260149 970632074 562453003 679226348 87409893 376239282 721870569 784414965 884992783 935636352 738702691 763033451 199192781 707509963 885601275 989680929 994498454 998756367 38550758 342865789 746611404 817626178 280177199 868291765 601783886 906849486 504395389 885589154 851280124 904625790 907560034 940770048 93601634 914385615 996124655 996159080 673649560 852794798 144177510 785075533 100639081 957116162 78254240 613359686 190746271 497063934 775526563 881837923 693812453 720389123 597256757 913494605 463163541 743993530 482394306 898649783 371310296 946481264 782216277 893842778 68968721 543608538 389778798 865574031 860886462 897632195 320877231 399826597 512289657 940753357 236927463 294695842 453706640 603257152 9974916 741253420 798417350 900300134 938916720 985470471 746742001 813802931 292193082 962061679 916678515 953329987 414350448 891545702 365639828 864282512 414078935 975913745 263162209 886840170 955034713 957818824 850575357 961469651 59541232 828420358 382700756 480588477 82909335 208503064 449432564 541483966 812143902 975140563 635454568 644765617 500165991 718795606 517666261 793667426 506754196 690417936 119189760 416080650 841381704 912266545 341945637 727758953 706929280 902232702 397669880 621566192 543568039 687428897 171997872 441191695 77813498 933870500 936190043 993793696 177321803 615257018 977210605 991610155 426252839 467035994 804701220 915203435 778524308 876206287 716940440 797273279 157564257 475042893 554842050 913587876 451554938 954633971 528538463 549427277 893015071 960516041 304433874 588009500 788620869 994439766 984219003 984792661 409438626 725694674 736368772 951562614 919444464 990883125 996076579 999604734 363463153 572308876 800790042 810624301 25440211 818623141 89035895 226984207 280510656 760735858 742358175 760940054 611309106 921102264 282646944 731587932 216774036 900898506 44798870 530702831 41447295 128313413 82846326 976594063 389302204 590353714 826689261 844201843 725253684 954289324 29549145 273945181 267803762 494803670 754048402 919416702 420814444 964366679 998819920 998922495 774367110 970710170 557773746 752333156 861350250 936080040 715349701 987220343 785024502 877615978 45974137 411188889 549443394 720776020 307251231 954856747 812210979 915363093 915443401 973082777 907490528 962164902 984177570 986011041 654583991 676002663 370130292 875103930 695374078 931149056 636193585 773746966 567299043 640135714 919499127 928791967 705112202 837117799 246167384 812060326 336550291 920692926 47724648 223977230 886395941 955815110 628119393 949265734 379510261 840971965 139165367 475728593 119805900 841824564 515503216 670930376 13136370 979842694 89236539 801454107 290259927 986828511 273625657 877349568 831288083 932278433 934151513 995166333 501462008 654918577 754272951 884602035 377443132 785654477 981262014 999438485 770086289 946120195 786662736 890371897 99221054 503280803 465403403 818630373 181343473 696191165 953100056 967052453 671716846 849046879 798307974 823160486 294050734 529487556 486221260 869036045 95973040 142822200 386162984 918069367 206245327 613496960 536786158 936568741 763530172 833568718 218217245 403621695 177956148 383754044 744480315 799470770 513128535 836955285 393168125 753383307 652918488 788009244 359275657 500954323 121984360 636375119 543800645 904377337 536804785 707321536 635080027 730227828 315138920 452824963 915985429 997918655 576281297 779536215 584608964 936276890 522192961 952659368 510999628 721444821 548398032 824873636 118085697 504020498 814462092 961233178 822938697 975807991 530999150 961334946 433327407 937569681 565432695 578905138 784063697 949937037 688056846 719608943 117493301 976428149 881831712 882333337 77284752 345756322 652303130 809523781 783407929 898195709 862997338 989506387 81770610 970435051 313341113 525741462 337097514 812830096 387577411 954118422 895630608 953739246 119251463 153596249 32291942 291266355 132325117 357737396 458579070 781321725 212351150 490711769 419423489 894445864 352266162 357845334 225412158 829912525 381609386 534730685 947238465 991588817 467568293 756171958 775560912 809559988 271100607 308620568 476800376 484065372 881079192 950519091 70633728 979589720 344711095 876505395 536516463 848449194 351109303 435599248 231057105 888518214 573419461 590063096 795089578 885679355 398330434 890967938 50148408 819270968 959975121 976184387 510404951 706931872 5924670 788346252 971234104 992105935 899027971 981119803 601854665 701579406 617151000 837801590 797840823 924618969 179567497 929993498 840809202 931450710 999603191 999961536 59534812 598720009 658233719 907162453 777160548 837401798 896820026 920287174 440570537 894976552 391159510 932259922 68525617 87633601 146584371 631197750 419360535 873058009 539257034 652851293 118740084 734131862 910444518 969325829 176069939 589561752 145397186 177525343 515131165 526304633 468344694 677613995 552809594 619014624 443211692 907546404 434641857 875196275 240171040 788091486 321625885 971263644 568943174 776406581 197448815 697984549 514236377 679500008 243065526 472262881 371173048 937215032 179919916 827702414 760017026 760983949 105975696 164566770 566045439 653154786 509167965 909726657 114204 838325556 460089354 517408815 9305870 482272956 579546733 908105856 977057463 983223835 232980243 418419266 85554735 592088002 980528154 988606453 336481647 689936034 113562048 708722762 222705843 494078399 819699106 937215670 602113068 789748427 939426802 979550780 811474729 999762425 714788248 753750099 155526523 354642315 146578332 821850684 275461277 789200777 242860532 810402889 649007073 701642251 222172490 284367726 261762229 667843538 742523107 907634453 334342636 869983348 907642170 992123470 806476312 838217962 186100706 318632253 118422895 965692097 272541796 856855985 117164622 583057165 127742134 896221089 227774537 597693578 242990986 398795328 268240291 288117028 314902347 782615909 844652026 861373652 952974539 975595816 851730127 955609942 586131895 601008177 151954492 556994175 620568405 947607683 441722320 708674379 464187433 780509279 967439015 983673428 926470557 956778734 253897395 293130373 203734078 431692288 737918781 933073742 559973458 921606159 978313150 998072489 187559633 622475340 265147590 601972507 307719951 612235934 588262957 799615706 982150184 996218473 948973119 991216941 581848181 810149419 179189778 441331271 565882745 645107408 842038832 884644384 954681880 975309686 361976726 716354110 103803379 539043079 381076212 695479486 143590243 579218215 144687030 952075083 888817517 987042648 669383420 825694029 46805668 547291429 979310483 985068454 62024718 613956557 275109390 930441803 968201539 987816235 377218302 686382099 378277966 879074080 325806507 900979984 811003159 842400831 9436754 317709552 115801785 289872136 867991766 877198988 508076182 916268979 515929923 829880809 87759881 785602704 516496474 779574527 273963775 629947995 885548402 903716530 223507911 607242721 955670513 989515524 307895215 559898869 740785298 875453614 701496384 853004082 837688507 896834827 122552701 635358884 743531869 933954205 596628817 974777278 813812792 971455460 899667858 927345088 776808574 883909450 793554110 920843510 562553334 770036327 299920228 353272161 770360641 886043874 970977984 982553881 362039093 625917587 300237162 788547373 920980357 962302655 341804286 460489484 170124680 816781092 361439575 425894494 952217897 987140859 269290363 861509578 480948515 945071458 636531747 875798877 528664969 696361940 331743999 489854221 730561423 958647744 578938140 755105285 715616476 735762762 260446541 677823624 413221828 725854978 840469135 933044087 434288878 524725117 180780800 365451651 212303421 233520939 829976532 920521329 341866840 992960032 442101392 646824477 966248405 993395965 179129602 810050489 800032563 955163671 97300511 776918764 640533159 650743640 618280794 887702616 943695451 966481209 552099133 888901331 786139172 807995384 193955323 280174492 630691350 932561838 172287287 344375731 609109417 989462494 8799580 332155048 607391465 661298831 75268320 123008471 625274850 931426951 191889521 244141524 911815180 917464922 932003185 971575628 266916121 981491155 688411704 822217991 772858363 989916440 258434572 908182550 431111038 748348985 500572246 753529235 476766147 622712222 261763300 370767029 850455688 958068870 492194976 789297608 342100934 494211549 834366764 840199674 887845249 967029768 518798587 828331744 119292838 597116766 282095950 891470664 444347531 917090030 852778440 873067552 352544210 999723302 130109100 455307067 413225678 998120432 801775260 855214008 678086717 716610953 263452006 372492693 321290653 737291972 567373390 937673987 856125498 915080999 571587398 910278731 856541918 950631518 923820005 991416722 792427787 829233242 486020774 718649831 444965744 787844556 396957391 921675275 784525182 905576058 624742342 769906480 387071016 634352849 258912103 917169632 731676793 934098955 868616760 951454372 645792155 802528741 190801619 603510934 857232540 951108845 545563091 991436210 779089788 841547983 964445238 974181153 714182792 856431342 779219726 837399792 487773395 786199564 607582971 932399368 642791209 697485969 994331769 994813358 245408391 319125627 219882487 495260297 806380434 991087464 172868575 589421156 756806795 853858489 547808584 994334550 811789209 861490112 284646821 519115108 132071248 903161639 716328 968982942 8645569 474498586 165594056 499465588 99812981 213067782 151805532 789779281 929595508 963951701 462183409 832356071 516084188 898904870 699814212 843043002 767576251 829150629 26989912 335294292 597050095 682340195 534781189 585991696 285900299 825448894 202099914 817314844 441033164 904817322 660557667 835565625 313849017 989606641 163594454 324247642 473070446 881377793 329606483 857890826 930581370 985128538 838082122 951512784 287958102 335076024 430473992 667964966 728410119 946219466 673242406 863635056 768288836 916176736 486139463 597150570 238042087 418692280 738442953 896093528 178563329 660799626 241423451 650497766 23743429 70366060 505672 233017698 882654707 982172091 966548778 981423693 148927831 529791661 597761116 611380475 788981557 830184882 258551702 711555967 699743608 948711499 431075408 546206583 990009034 999348625 309827111 568608189 718406974 854892462 374068481 774182439 630090670 965633470 881313994 995009426 615072571 767918421 917969911 983259952 224570228 731027598 278724449 346214461 930085252 974526011 131676335 903953076 333850838 984668465 63662642 473175891 239898103 817635746 235534411 645952136 762829615 794604337 562235841 834118044 435586144 979264342 238951030 455754441 555466158 680037845 994548560 996410186 44685011 199271192 771111831 964070508 957900858 981175370 531053166 545720054 892270658 977713992 741220911 897380498 314757563 574212115 537296906 763860727 23659401 790158339 18050940 512605476 780853298 885839358 151660825 401845375 140166485 219017046 485728515 561544281 724434346 926790400 179224799 315281966 97859108 998714002 784650337 985084205 625214624 697366166 296305338 913438759 827263853 979808205 579037748 757835357 354026134 452707914 789247574 941885522 478060534 672823352 661451592 790566224 380903428 906589072 976960597 982952364 970374280 993916654 235416619 245051943 443670634 624563529 5673476 159156416 550366180 809460947 4610428 539553248 360667355 510098398 206141084 220084144 132347792 655581460 375448223 529208950 166382186 426192246 145949789 526989749 309696933 322336859 719886712 791588341 380055645 852651084 481744590 972547036 427844073 812730225 125110768 469826466 711495570 967400430 126225555 732794938 846190345 922105592 215899715 972123638 819029423 872825201 569923737 624730594 747316640 927211093 475759750 983366075 635747846 660168222 569884041 792062791 452888626 972991351 857666040 866075577 13737374 94126224 635518044 913291748 196459829 882329577 504728479 811398950 575139512 909904211 186239515 648368684 863668426 906743353 335203429 502528278 140792971 902536702 625032486 775874039 113634004 910721124 82132306 322258631 947745488 958035368 361907563 434797966 210661371 768357226 597959035 970558670 119653502 681199227 387686763 992981078 356042463 422649866 511909423 735279775 300616933 691600503 998457171 999617324 434339826 851237504 873331539 896246584 100180922 674293379 489228836 624363475 984328581 997280615 791095247 979477062 743256770 968792140 732917856 841415406 757383115 793579979 901155969 989799222 49720053 463226690 193868576 819262931 120286386 289996735 572885620 687468682 658266526 823035124 939737132 961746492 10703389 987410631 579350208 826951673 815134480 873454765 783385203 937806521 336988522 540013319 77063641 918149173 585417195 804789448 91473930 484026622 493635491 713733935 196539871 444250147 716299194 780098804 768645960 996536484 109620199 327477966 646644641 653445123 403374364 936704116 568242011 958232683 608736907 984129599 387225079 732503762 807426668 858685863 311949851 687978144 374369815 889861727 310924671 597638405 584337160 909442550 319843220 957210739 436343698 953449963 524356173 931578402 651345260 720432001 471725044 724057374 548293254 999102289 866660862 937995991 835900535 970467648 734711339 964411171 412945845 676639079 291604329 453636283 923020184 989287322 960234008 988165226 56176011 871943866 40639169 513126001 380658710 953531144 855184487 955466645 523302284 931604397 314252623 339221732 472765137 655632639 598874676 752343194 559138650 680471451 718598422 989874213 492574348 697384603 484630331 886900103 259257305 343331224 319270358 768058902 157614799 423144085 17555580 895562993 511681051 644464458 463287646 717332405 388891547 641279743 484757762 996741347 685405425 887745215 4497794 29788191 391833299 896539930 655428356 796106830 331218499 975464657 104972677 557859176 911405001 921762407 353828374 602463134 819285820 873523953 479688708 914732399 743155831 769770402 123406701 498674913 656169249 744891792 640662728 913342469 768027632 777031013 708649046 715820634 951390582 992433714 78740192 100175992 525237392 777691029 910769423 969064560 400715072 643088914 516156527 847301667 603214861 620154902 692948773 950581748 154720221 825998876 286006549 413409077 316161299 830620714 171994017 488705555 906365966 935880292 746121099 807617953 287967268 725678099 895063700 985053662 192591988 458342296 480599791 804075117 67510575 157264886 742839300 970463884 698792772 804667904 426203141 739960283 399115073 768224460 571672205 606112764 621377061 766430226 4452731 767685717 261549351 671387642 313731069 847886571 150790343 162065869 995226718 998315024 613623880 933090362 685812150 751038996 533320114 783424107 782167688 914379023 758309894 960968265 282357998 465782964 804795109 819102304 674924859 737860082 370486719 449534515 675990777 675991089 639700115 847405889 336929914 810507222 214499870 932540862 881150657 932107284 275389852 768377854 676169023 707582485 701478553 805945741 377848249 474663878 261751001 320917917 938111766 960696512 834352797 988361783 969777593 979321094 952028950 963378140 933942754 946804779 710821931 749437037 808715520 998850096 953969017 967616155 797234006 896735045 35647281 647332671 399451029 531204849 338448797 581038100 95039092 503904611 330211938 401698895 868407461 891938422 521825939 772935821 11100069 919966824 410055603 969741413 895799205 896762402 216412354 708079506 209451247 671498539 919928644 936153763 442069301 927086659 259674045 297206188 272668099 842261741 403525550 565705890 46374875 874888469 635785134 666488826 464036095 616014149 979081314 987991707 121188518 635994181 400577290 411293906 640001641 950588907 669686626 793115633 432088901 659008118 49214800 943817980 807612474 864008186 536102797 580533285 811648923 816935145 357393023 460677806 502243077 770298541 686474305 960713519 65846158 952509072 848475056 893743260 866468746 940610674 558434862 904681117 363164329 657322950 441710465 835938886 880445791 927311488 658415999 879203452 457945171 677379599 459207421 837839520 719659372 829360893 700282790 777088819 263727595 902135875 783661417 951108393 393465368 976222183 443200248 571527566 780863054 910535546 901479809 999975172 569477106 687815807 414883984 425456357 137438152 959661442 694640057 700696110 162347862 179749246 328604199 618165382 344360868 819233192 901888856 973673122 71659957 73730241 319472119 321429478 962322044 988793473 226924336 759018909 237541850 359981667 715931893 982236703 786852218 947610835 4379010 259844618 31085240 349910425 901547484 973589210 466483828 701688810 80506638 816494943 896042984 912426804 849742388 929589739 486309585 537294266 386264043 903859927 808600458 956706722 324308878 386146779 478224144 510242236 407198357 623830951 247768226 326641071 576253508 791659122 10016961 359012768 557489858 904744493 816762207 915737720 627294567 937605770 861815334 879348160 449542456 619785770 884165170 934971032 284679431 327223485 328070360 847558760 602098592 832451225 392378029 975182027 749279750 811259510 766288699 864229570 742174822 774943815 544783163 736513216 173193213 448337294 408142668 645864710 24382031 192495318 579923136 789752543 946877921 950831353 543877452 897805845 989310164 993506745 616996083 685783080 941262442 956064792 579428762 954982367 952517359 963236175 757001118 896157589 916808174 973496704 249663587 299034223 467652099 524196775 790557706 872191286 703555924 989612173 914365070 996043793 660672509 732046786 706726351 959727725 164590696 977220088 858371399 919239524 340087342 447719018 293657142 641606897 680480784 844697407 423800546 696281273 374542873 898555128 986544740 988884791 390173468 897176461 552572095 674038742 928974182 939563590 647541990 708413330 716260826 853389256 122943550 914644735 19209270 157338811 431361000 512393948 921464317 947584781 588910269 967147921 140414290 539392519 13041153 382622021 149137751 155737685 824699097 853689370 764840119 766511826 792831491 947452577 111794416 221536477 417540353 733672105 942950147 960529713 311102077 551794281 435152837 877352634 79873379 308217529 397209014 901172970 897978857 960447702 450407544 692935709 276775934 453695539 60958816 576119829 700344845 707635350 610311470 777606483 128923769 417002611 885030389 959519615 482460159 797271557 982119709 991011311 893188927 939404332 50735004 283881436 81118473 242713095 643841802 646269927 817864058 934512560 656776614 778551354 248135512 722894633 259374244 690565286 314178016 892133416 926317521 977633091 966509791 991841335 696693190 877680717 624490933 931210916 155241622 807232563 768628957 935112829 845755489 933582646 577387641 803137477 433241110 748386971 506781674 562162055 601462032 913032227 632170747 919591105 1878318 788687411 756924917 965966577 909293533 925836490 317021497 911404210 594911632 840355955 480345737 601841148 11558237 363375230 531547349 619697713 581025852 999922191 300892813 870192025 324806032 911341700 698681092 980184891 464221729 924251527 95783494 677794252 211246778 918632243 497684184 988986560 561279290 729881276 763920730 926785283 654456625 839193750 216005679 266384607 452371373 898590541 926710797 928551603 644537931 679092680 904108482 938885679 417821337 638420922 136731126 715698029 649741783 935233926 460857517 722533771 559645299 849141659 180602498 213689797 888945140 940294135 519821278 863847932 396394077 773625465 941253493 962312773 678423453 890621773 34275479 73494863 401716278 452844280 596689007 822095519 6291764 807010137 604549216 740280627 174302045 962273897 598727434 970458790 278407248 299073790 33772173 691153221 334590984 900696454 755654656 793814021 692805476 800728969 222694570 760416789 615949286 704642076 194148828 993462528 548096768 726213167 62028056 328679475 32691417 880916106 601247563 895559320 88563387 426803354 930600668 959084985 754766818 883551619 587681287 686101583 205079009 842355293 64089352 442689692 513484023 754764145 546239272 783786249 556415656 674564216 995878169 999540868 902457586 947625350 246751617 502721044 217302569 260291964 278604915 283632028 39112704 312378418 309058959 523744106 645450647 835444758 475541794 732076497 378039157 879320902 624584399 970740744 818183059 938557656 796378447 979111391 830135287 976980745 351176755 537530398 720212479 814956222 266042904 443742584 343076193 624371388 837084354 998117888 969191729 972748716 255178106 352017908 966195306 998846274 173665657 340545504 980339252 982252114 571699118 666665376 498470023 994406246 976364701 981930447 736641639 790167113 866347529 875994279 328380110 904740887 409554283 808749069 763576957 815136957 611264514 977016922 239818188 985112248 800649097 957588423 500054030 773990591 7308118 460222868 154845432 704952005 243134429 643659563 857601960 906499529 569609601 806422140 755324466 992632148 653987539 881310718 773849792 947893283 960997757 996729511 392424217 951398085 790246166 878471693 912691220 965921257 199848494 822673645 59378868 347220065 782311054 929989339 147710630 608410009 640227586 786100126 720856045 724176785 268598650 853129235 884313268 931391360 791576387 967892333 219714783 837194941 77062460 637647427 193290694 343344416 880106655 988746299 806980460 926746127 862367124 874964209 519643756 901621727 942469397 994671551 721897752 848688087 780201006 830035916 378850553 649775437 714234992 996127086 596791242 885421324 706745354 911038286 490701582 910914401 83937927 977480346 969354346 989463659 441292425 870987069 206557078 728324250 342403824 623615799 923529370 965304970 73588013 95121871 155882272 473207759 655184044 780117682 122799781 851822801 817751594 893846775 80388855 177095218 14638854 475510635 337566707 999301589 643706876 993792213 985801850 994252451 985517548 989217343 958172105 959926280 932585275 987902326 372741420 714754872 237932629 866524251 721714239 795651845 898013621 959025990 574340310 990053054 705717055 714159846 12800181 201245180 80391071 884005951 628381610 979779929 144875386 235641354 957070518 975489318 835382050 965975474 355260585 496198983 736891442 787483392 888706947 938013307 54872653 377845934 759261498 760628708 978590733 985730528 405307853 471398655 991730593 992463274 153332173 440548142 932283971 987474092 329336146 908443316 214302506 398047662 754866362 756337732 123625066 960654216 486783592 833474793 12188542 503289967 524867959 702780340 813020533 951413340 534009245 555613034 407780543 882650641 54532868 343843923 251689111 266522306 588559233 721856842 584342549 992695134 953160344 990211878 677945669 944966148 744276881 880620820 343091874 891966307 858499838 994649769 261988690 664434218 487869103 530458897 624062037 873069342 958441169 990685983 987401230 997719516 210953600 388126201 981074710 996362161 412764280 514966154 446708934 910163603 372517236 425980685 489551392 864715143 42787856 790071040 362405252 841241920 115821501 518362290 314251284 588513345 413719021 504306884 509770873 896057731 625026651 630533860 891677108 958183631 854955781 982899221 266147908 382321324 593902087 923591303 883136983 991111620 864887420 889232004 314940248 688088524 691139997 816741325 991974576 993593199 483772893 857094753 413500064 466546674 895633000 977215796 556087027 918982154 284886973 962452631 424885481 570493109 931432175 952563356 866271218 939687570 406839144 562876922 628124598 701172001 519854497 568930617 661595535 808380445 790566557 833598387 522419288 536070679 896399302 896623751 111439183 803995286 672407453 975930134 805903279 850613402 736898102 754357857 890870133 931848561 59810453 968085029 926343237 935219486 451868741 946828828 978701681 980597476 371331648 424079652 731521953 801756648 837733331 957122500 398793301 660687761 54413985 862544250 142197451 462180858 261330475 740094331 15972905 935638037 186319994 675542340 382873611 430643290 653690900 818593593 348551067 970602982 662029426 812492414 745779302 845600621 538934957 762363973 809943298 998344385 231367891 400580966 890249528 922849492 368411353 903174658 800116310 969118400 601340289 667495973 591894020 769740617 646543933 871126372 32136256 684044509 594355128 608981913 273262383 327228376 442051355 642197373 85094376 788770569 511555202 569349437 994023325 998182150 12478257 139669311 304545922 784452036 74924801 981172466 975316758 986375779 718970131 996094001 986266748 988555148 595820583 792724126 944759022 948606838 540182970 654436559 943729277 969577054 737918148 884455820 880834215 909310878 83045065 210737528 628771846 912605874 539812426 688426635 864305420 893511723 246682114 997050109 721965425 885440080 371901373 877756523 563845006 603570904 680959473 994534253 362327178 379121754 186715696 314132622 624052990 841731434 767543083 817993005 546038627 732681047 299919972 928089680 235877850 717765948 336352553 726962374 463407264 517089407 139244140 773938587 677916410 779963518 465607749 850116491 292270634 377812105 120070145 509500801 867837466 965103017 975906213 998993595 341263577 860269931 819059426 952317743 739174923 968958620 886862164 925671028 117926254 833578122 35645274 537280533 392876622 988300353 442022158 662694719 954898442 967697667 532007738 669546421 611786742 762201805 703573604 974150431 289571262 780236220 985451853 989067525 545249020 785395307 158907621 297514477 320833148 909597473 671880713 877373013 511020791 542337634 553404795 731346953 263074544 987306762 370924950 841245694 145428728 718933035 732119240 893362504 229682119 654977125 554609077 719762669 673411509 914384803 217682493 932449239 271591076 816755997 443273455 934108972 44556999 520417987 220077381 456453041 495519999 635814208 76337367 271816659 158381829 866338880 781162292 924436699 647481661 942567534 596762071 743745832 576316120 589200305 391904551 614355861 182203709 471479218 208620502 869813234 754193194 840423848 794543321 876677022 55484390 911614485 637540503 729467008 24309621 982348851 442809237 471261819 518919511 861211910 752168018 935100803 627732591 675269632 373576306 919674977 559168142 788705171 706668102 736461832 180267672 550257705 327653878 511235053 214315237 747899174 133803554 701917420 367184440 610934784 287693439 631419036 662070498 869648868 552546838 784381411 718333215 862184742 460478881 631422763 420474050 866942457 712856843 851009046 700700692 979618657 324189053 808118017 116170677 275363929 29282112 456793505 632520664 875772498 893469571 943845585 402521777 828670218 9184095 778756211 618805366 648495423 759578664 845826494 523330003 845285204 984233229 997188004 982082971 993556530 958751821 997384831 145186422 934067028 153067610 818486178 979624249 995434934 961681275 992680231 532945169 640403279 685908208 955901437 907803686 926317082 716981123 751373900 423118962 681602681 195902861 752050715 875416086 893698578 748293540 817519737 971833014 986995400 701222788 713540832 874627955 995872326 372045175 701239697 485612517 930555348 160990918 635427054 764692211 907529747 570309977 682757337 200421037 644549114 131423305 176125213 525296181 750463571 881966813 938202731 257835014 595445202 672163989 873759755 45437650 739357318 471791881 518843828 971336344 987351966 743873064 923518812 323192605 607011922 733844665 869233188 23310407 877508150 600407779 975936926 908388059 996080381 548485325 728105999 274148455 511307684 600414266 922977117 226009820 678261666 74100207 839317707 328523194 561427056 691948379 739859878 97210895 908752440 948806855 967424988 991421153 999091523 356583378 940217781 834235743 918484839 276660500 872177839 128192678 174981289 565972316 861088416 131005094 808729204 331377250 766028437 233897843 303247907 368537910 375528854 743033017 795897235 537931547 593766240 110165784 135155314 533007246 663137053 129555663 505972810 203635264 339059761 698278005 992658010 238631321 371749485 434662253 471749574 811308461 955913601 210495497 629627711 3877940 730479508 72142646 289298610 300215017 540684484 295678324 689186605 951935319 981087754 159481976 951703139 224571459 605043811 575704685 952946626 263132869 810360448 788003990 826744141 507823896 508886918 980875103 993266664 157987105 284578852 163429814 761785412 340612725 862768678 516032259 537363962 356658991 663314699 728628262 804909956 595225183 831777806 405462068 692708001 174179059 572319802 44394743 327466770 729087556 992593902 597542200 951407772 949416669 974864867 561925226 590209464 746713502 934437735 423838951 753336168 923643917 995372940 510700879 659523463 387191431 474654534 693738494 725728454 991180255 991963537 202361937 717891227 194132835 320211417 180679389 790862034 956232045 999494013 818217829 843501857 168364967 583435850 34458614 158153153 454177039 630555138 963191313 994694306 380230820 562284106 143028583 903116932 61774041 499383099 175240389 450325434 639270972 844867162 475376775 949499896 67063400 162250629 761890700 994799929 65248380 486082986 982179458 999554839 214661710 271409341 246661872 796435327 205966393 443759155 829191016 896165553 360118124 846119297 295226061 821576471 322976099 445615122 695420103 914561648 410517706 918100490 497942217 650155817 628028246 943987153 925680548 932955363 139383593 724491109 319115714 772232696 379492340 493182279 704965371 708858922 42703930 386423813 424015054 854023278 291995370 930422354 147543895 648189643 959815134 978597088 376192754 573407869 370139862 994573939 278020750 953168725 801455442 856018289 255705824 566352612 789202509 951702232 636177974 851047944 531327187 979016015 82859893 406024056 866240495 867975860 237452070 930530833 266060047 624838639 185508704 286411196 689625760 714172578 352784413 972851231 646931684 910339999 229491622 300377968 390031211 818034573 142499283 945814499 165296648 406113375 49695822 825670821 295978404 336453749 152434208 835169735 112547600 532215842 644545572 918903659 860697098 886401982 476068313 711445825 832212280 908463445 823883573 859036824 111769059 268618632 727113355 872167741 588235134 616849517 952138641 993136598 864786280 990842367 842739668 926841057 365605566 673754435 738426891 890523092 812950348 858169609 472115764 901726030 696075108 998259404 749134702 822265331 23206397 325045152 126385915 636876386 571097746 600283131 290544389 836143994 413709550 756056549 306093566 770487373 396018261 502609311 463974359 662583491 956965838 993953203 485563632 667098228 483128394 514553764 47431824 484085703 929440974 981658931 403565605 631323740 913007462 968752922 796157517 838192874 494358412 724310340 952900385 958226429 7205624 461183446 454702425 954540990 153971353 540688424 186754330 722789680 96857847 736215238 826722766 842629372 825878986 963087049 516293527 529512683 232034179 938591090 760947190 834482816 291587027 701403902 440773940 485205427 327436114 417843857 393110002 402037392 313426984 728061774 562300043 690414899 371077897 399112639 796778239 997362947 29564893 275371275 468154419 543894115 13784462 268536592 104314626 896881401 301276781 849665123 467356844 503130696 667563994 945728350 470463330 577858555 32905333 465063165 328798588 362549579 385193434 417381295 890326286 932823394 634350191 977433453 85141035 664765410 107851041 453375341 570789731 967455618 477555410 861821716 309746502 817508722 227575996 792124620 234801671 258134869 443247569 613097798 116133627 858881048 813760795 848018035 579219420 988940967 965760179 983530837 834475070 904805456 528417543 964738761 891901019 985276892 661024134 661962136 785689445 796196765 367688397 529869340 324494022 413935682 876590316 879834624 24842519 519353532 858180849 949720810 144784342 409884612 20366880 474685997 355655026 554321592 426717621 442988610 818472575 962423258 132886626 496035577 275059997 970282605 77643984 648803491 234848500 540873705 859342532 867388702 108058829 740139328 586343884 934893051 105740625 807517480 385212670 413391195 17426658 98566808 92366187 453857703 288867627 607171404 347709973 834463202 682514213 914949943 451936311 759056512 72578691 650617985 28736304 600392464 789691685 839078206 62135195 122350199 896441184 897065415 297510039 330485199 494351684 904819529 332777592 589989741 829468332 841953705 798250134 864405794 960525137 983352280 233361634 321692803 715060848 779194859 646660952 976510058 876004226 933759966 283381541 499350171 573364569 973500638 554607301 893472893 441209331 968535013 918479476 973652645 426109615 664193642 575196994 632242307 609564254 789203293 152884139 186198473 485068055 990086041 35844794 770027193 924744016 951878571 870394075 963578279 161945474 205553806 563114744 858789565 287377901 918643962 857073218 981546609 767870295 854767355 711162936 780159662 645654393 922582367 496873591 726127173 958296997 993594522 366713381 857345391 794857643 935950078 864286082 943368775 216765758 667277108 142691585 625847108 745179339 820989068 735231298 963569193 167391455 416562068 417513472 434034793 79515317 967642547 381509951 864313373 458224296 490054361 298256579 845019423 855157189 927195838 261191759 945753761 330491698 403712361 597030164 776446353 129926668 859997835 830262823 964431754 869571816 897987017 394464800 791543039 142777528 460504800 354647069 552184364 152162454 613986938 973647261 975865438 996008166 999445686 153313756 687060309 855149579 929660190 728472698 806079853 766122435 949965293 875382005 893686742 952126468 998830491 837108653 981704842 784252317 998713091 441669462 612358077 347219502 389762955 496935576 630650190 482334017 605012084 724449147 982422184 35974072 733259779 453254693 597467656 671422695 897398275 454147516 699710503 407311510 566573506 943504971 988768331 586408715 956808969 50974213 831709140 318944604 774530688 580577341 797017793 380963247 724085072 1199410 32908405 876801838 937177202 387188597 804023006 271531812 478099741 556088886 602798098 480956088 749656292 444317728 963269293 607177325 930075861 499475346 801589994 951802777 997998751 747272953 877029614 364107856 750633471 573136601 915220203 660526503 927287844 608964880 932015410 267770129 357599071 244944729 318169376 809595007 927139348 444276407 446294304 129319474 402123670 959601337 961007839 752152995 881565446 414258705 877120776 50092945 260148941 734311363 979587416 448355595 732528202 29320712 617942351 77875893 470844462 189218796 339974035 905966705 948486601 896748718 931194171 663637994 668971983 764120048 816199177 465827393 832623681 469719017 792496587 350119847 967961063 478528593 659375951 146447280 695999117 337718996 414910038 224327231 600942643 634010055 775396709 847104123 914005762 509621827 615130684 600469991 744734132 679164741 761817776 534077571 948289702 701020996 770701226 739091687 872326300 569459709 749879442 823993099 858652645 436498051 954515915 228696098 825348880 379302156 641550832 952179562 967709473 633022812 740031121 68999903 678980399 806074342 865549715 44516017 704975074 244022413 386552183 791652246 902428252 176421458 868900092 805542919 940197775 158432678 858511932 295508798 954772025 469320608 523440350 397191727 911387370 781251874 824323782 388119054 388689009 263732478 888596038 489403410 625576814 792527096 847403959 45877233 451271568 352271541 710811712 895831198 969769082 341306868 496669479 116518815 884724791 486018232 630139082 896381637 928014301 898633540 938588050 632723940 692202460 213931853 709843060 433180118 550476874 431133446 912369155 382212153 891761880 625086425 656861452 874788637 905855743 513279824 557199417 585072982 836138504 635471027 646276764 219257470 666382239 666061462 697114451 219789256 689812884 921707771 926322646 58586794 794606857 668996709 763888276 796358824 894989270 447068187 818576431 863361690 933116291 750655177 917579895 943970556 950426788 930953843 941897566 333535033 730611700 910865836 926736912 239715823 401667367 676009170 810866894 635037347 958167052 655595662 841325814 33318367 489866005 505565389 946531599 321940781 697308906 635747808 643191247 193297859 783937542 124657179 181594234 330908900 501047175 919347194 973592809 639969257 894432325 364639085 678137704 473778128 800860285 370571539 591339759 392702010 982316544 383330773 498542156 666991261 932838448 120456916 588456557 347906049 429872279 564333902 602786342 537414986 900191594 601364136 789231613 298354815 994225119 269497060 386826529 501349232 900873657 379358810 708403754 390864055 949634693 232474084 878383031 569649909 832204731 396871754 416714644 137479597 387061267 514137416 592991643 838257427 881769970 682974893 968236346 525167156 552997640 907322144 954805220 231322549 941833322 781200498 843610070 641920856 705544028 125252879 665111685 825365144 874101367 142520486 239574446 193743634 276539139 943597542 996023047 488760354 945665245 376534436 436925599 430502309 765754004 367407326 776631276 434693925 578176455 885149223 893233449 657278301 877029171 918145056 948403864 451816081 490875657 911908665 946462935 689199037 912750823 631674946 658099203 823756858 914773245 59973547 540554698 286957992 619627311 155167451 474392449 151428606 658101485 217771979 636084477 243032628 657641416 532708128 560212394 401689223 994396775 618942250 863615884 125005023 601520160 960821604 983876080 861807205 957712599 502506636 515822546 388294629 751513412 519171005 724008106 37232118 250289118 423840579 685988408 434428353 454649845 845589086 979452991 124243668 291428228 737987388 983157137 193000237 498135752 756416554 795352275 206208107 968173675 334437053 500709136 797773034 919308278 931212081 970348646 78439880 941960880 818281687 916658585 480640662 602560761 887348504 969317715 23300050 74764985 806791523 980123890 674744152 985869116 468317655 991747336 451693896 879906910 777547078 846032669 168243730 756149157 743354922 912498069 257927172 509021071 966313656 986157053 953713450 988599844 119224080 593747587 295694970 987583470 463119297 974011955 25345726 870344253 413825818 717571875 767921607 834546203 865488983 972472045 388039582 757665219 772503891 906418474 150291098 712091338 502945907 575040058 102184056 261226314 514870309 577919415 680348667 780887872 18712469 110110271 183928001 244888977 547813976 781073980 988628763 988672636 421143636 884606001 893898165 946587110 887854554 902803963 907359288 952865635 988772655 989222722 470320625 925603065 258622038 820475475 602618275 615149640 671663435 751668271 973352866 986117455 79476801 560710770 964070039 994620534 450270005 927579454 829133579 978620905 841074025 863073768 2764359 475737715 786417408 945508583 504556458 774136040 886074635 991314413 622641027 930460716 772249601 949335728 79390961 581110462 202023063 325152410 650271482 669133030 14239100 602929634 690031139 706692651 769981035 924720735 316907650 472143183 797861649 953709570 118822571 354888510 748074227 952059108 345597035 895402147 594680688 999697298 22929357 427559815 98823332 410117257 544831220 704014452 325336200 888266931 564767784 898619280 235663623 515996635 135835348 912786262 540632243 933705090 958087383 996629618 709596156 970392072 482774804 868924527 833112535 975454994 868197366 911984035 85843543 739909071 330282405 790064202 574225350 790636304 194315766 889885100 544105655 811538001 523990069 978738106 954951696 987894276 900263288 994498457 210575165 355224965 60740427 869087561 208055190 942197744 506841084 519775667 998017626 998840243 375190560 421797155 269833773 458316528 659317788 728455952 392503519 696743168 673730946 907795610 553477651 572365667 927196493 964255354 520578905 858984260 532096731 969074892 98783260 529366092 631087954 771289802 73396203 352264110 138285214 320537339 490032858 724277746 625276712 642981564 886024116 895644859 83664650 556480603 482259970 718584559 776623626 918486803 701668551 737770860 232014495 717343068 194519725 714935326 820677627 971146028 515657820 792093668 504591600 941230177 287157030 729201077 932219158 987806298 24862144 411189460 830394081 835283339 279473293 944462828 71791216 483078744 628426626 704433916 584713121 680056552 35664928 665094483 429092469 908284457 84684172 491666007 456024265 935109922 559544449 622214849 700334764 752511505 6205963 570718034 463233896 997941372 356425529 505240679 485867202 706803300 532564593 985272741 138140397 403682994 640385506 944648585 944623111 955840534 695781664 778305204 95363771 797875933 599643862 678129624 651816886 830355013 31187934 736067382 993347057 997206992 548486913 866292978 3219100 721271013 757677352 914906886 449549653 768059175 382094023 382503920 642443453 685966894 208296674 300914984 207592615 958304876 974103606 982239036 743692129 896408939 764161268 890763192 560041050 607376329 370444238 740820197 655014422 928946116 645164533 744861120 574434529 957000145 546427459 729950706 447815356 690757912 895072062 921537557 867360628 981855594 353131092 927469846 324740673 452766840 2361267 565119630 369601454 830859591 854519878 857151801 188028663 487105011 47509244 527409646 667250103 911109111 219223084 474726173 70487309 199674441 391281291 453385585 209956856 938861571 801521611 901361494 845078652 879749918 145556096 549717482 710031039 778123737 105563497 741401016 726506396 883830071 991381802 996315315 981847106 983426723 644226809 833359547 549303850 933125157 834905654 875348820 740762293 788258328 700991550 862848240 551767652 930872964 688426378 792837724 717139658 816308514 303022395 941151145 888269332 996529607 58765791 198149243 509097981 919767425 88044290 751324970 532227697 617495653 673319976 732005271 417403182 658678977 787756886 930818407 624468992 812115857 315673963 910722957 876490819 924778383 730698631 775758664 799806593 937082185 122166010 630393226 763591980 857772684 749610298 775441771 614823819 848215812 6826726 895617499 120506371 828039008 656029133 840150887 156392289 897099684 528947276 682264546 353633152 369526843 867966184 963693730 611214222 853558959 206947023 758922361 303897737 787468330 462701022 782473032 66052582 701999456 319538510 787132183 432237107 555721746 133060601 720313776 729530155 922593220 263371427 593738763 377526912 533130876 546093820 922164614 620797211 980373582 165800849 635194048 238084100 920608279 609107296 623260109 510074527 739715434 137284811 174287196 870902027 957616857 583914727 797570086 614406373 818305058 746123831 896349189 499308545 618040194 601280950 856588332 152211913 156787698 488529699 955402018 133420 961183424 592979411 899922674 627962805 831210910 626677455 676465565 82637273 856006036 353267314 866208044 710555794 842174109 891149812 961127910 54639739 790712423 402856022 818406780 66853847 425340806 464076164 946682056 391758570 807977140 42096511 290884799 202780090 242413831 680458027 992835569 395415532 721834937 434199967 707367269 586310871 942105649 453719459 563239045 631915834 827030305 331676505 497889087 995089270 996802410 960799382 997748539 357912523 888175626 416826115 481650538 57884326 405062432 28524518 651292192 865419448 879789432 964151925 964590320 132575397 253289614 766221451 800364102 954017065 990440664 459738369 763068876 842550613 918764346 372713636 817713313 251895114 562622647 649704817 846483600 245038971 429771779 78037979 710584618 792343684 877541663 735900961 888316296 355488783 679875158 463714155 467805661 551992209 855366482 197622491 748970583 277611190 459606727 988553370 990358137 29325180 370336817 143751798 888221531 530079638 988577588 1171167 249741131 659964530 913501226 764772431 997135610 621585648 996857514 234594928 364011169 490889268 589201745 503528917 901629621 515450835 531044561 346362513 478254582 686066317 790240837 734383846 765545746 49492246 836574660 462014813 986837225 14589957 919020001 285667080 339491507 15706843 992482832 990804904 998242699 778318963 800384237 990786875 990827356 765622484 983369677 898291534 958207418 514949454 967065014 247547001 368026592 615069033 639898517 587325475 866829177 541377035 558945738 109611288 402527110 892542909 914661040 716325317 961681137 487982067 610727784 527959415 927235190 854819988 942552448 139904844 580541837 409388134 691706691 953199265 953801050 636638998 904413644 239539782 477577400 273734483 730646870 744699488 755203254 925456043 980426616 281200191 852462353 542963991 560613424 161748912 233058273 292937204 966612963 77602006 443324501 557817334 932754115 310079830 877133065 732218041 886123531 482838129 659577902 225659429 649590046 474503210 690215737 3125013 954476967 881788785 884967519 137836079 231451067 172704908 845085020 587478823 933310967 937919706 944802606 429216455 863100343 366743395 641477278 261452222 542026253 226170531 728237128 622861060 753532817 482656735 971212118 652474635 902758843 261344330 355882606 684652961 880560437 851435429 852246619 810424125 979642815 653746537 966499780 383093462 698874952 367945204 728437840 182478336 211434244 673582285 739494835 221325177 647684555 691742641 905869932 644095362 705445673 460972676 883603780 179320081 293428387 391706398 960215359 682622547 767875980 30790065 43795104 914682762 977517718 481571489 964277428 78879976 302355043 439094108 870248865 26154088 970586286 331203153 627705633 174939153 926121323 531185835 656060953 626649319 873361031 828352109 937485394 972151940 985001863 342165349 372679460 20739997 908830685 365819558 812145362 784286441 973641805 609316570 710425813 268175249 899500630 321026412 611547700 263259962 826702122 986525331 992047771 648312320 746390777 83706732 102240391 695197055 820508468 575374198 904011792 164909900 531052354 952406662 993219661 243453604 530280597 766368839 775177882 768972948 879124834 245660996 612643489 366094519 440232793 550915564 740722906 892660680 937273648 551397669 982070024 89411256 914322367 288893434 755347789 876940966 911024440 815548896 928766730 166761542 617254769 138692086 787639180 243666858 758550531 840666970 871734177 153452025 975525638 470746761 567772223 220845587 389713738 189866592 244080273 874402283 912996955 618756759 794608034 876786471 934196714 86062895 572013819 299863007 790310304 715650682 880001727 659431226 671812432 842393176 921429586 467041907 638043911 499980430 793941026 197573926 515045918 443453702 864875552 563261454 703291850 234623474 282013474 134906802 275977178 114968320 933002270 926349026 956628315 265602027 742558689 159471804 911013054 599172258 800652405 320577530 442431102 579821870 984777890 97699768 666991102 305526043 771095564 905662168 960215965 550183233 717833901 945127143 974618532 290440742 645049967 754358472 998722416 895488295 974288473 951282703 974699689 164997606 636974830 884664451 906790702 290338296 371627623 395147246 499743676 181739022 568233101 412735419 865969562 474616683 513071208 620228327 912025666 950095345 985193191 755363853 893779443 294511010 428024364 953826763 989711362 880514188 930582215 609584567 880300311 556830250 951688949 695883507 935521077 35862913 429479376 45547614 870582881 522259780 706038142 690486129 942935398 855533295 863655303 35199440 843119927 149054205 599198456 531263823 593785665 931470625 959737726 906376436 938970465 439099635 499525814 81011858 976309133 406521219 801228626 291880889 902623008 277586963 498985840 88544078 344010437 281214927 430480202 478073079 666059706 932495677 974282826 235834790 269763503 797049991 902311446 29355386 853720634 842901848 875449198 72658556 634950296 328614436 833488229 178220886 574349078 976701351 978166574 67732972 611324768 503467492 559538887 147783887 411352868 224923899 925616141 569106744 946532489 725034109 834763824 954632995 997186211 237134195 616513436 380290258 736845138 825000578 939179267 521379111 538507241 744919387 984510952 542026134 837874744 953649942 962146828 493058152 675990952 476650385 779386145 449924476 460742175 454255643 814959199 826206456 861193042 40330891 101086069 868077152 961062785 994450478 998133667 550919604 662258140 131480965 937540142 169290794 534452990 360359814 455262952 81906624 218218085 155759631 359413590 917028533 924185331 136324312 220860785 45183768 319505524 477616633 836803980 11229689 627345177 940201132 945570350 432990275 813499614 70119020 736514558 195637600 751953006 827640575 865220314 219762764 600027944 610974870 957848674 871351056 992081150 968116617 999183638 22571281 595339181 130740865 364561561 647515485 912089410 288379551 434532858 634088312 684007891 237354952 526368084 190775509 949278458 656794553 965468481 208888626 300063778 878929209 925920799 86650156 295740527 746063913 856140730 188230679 634830462 37499982 537682264 395230552 803750548 901679667 982124621 242950348 317800879 333556918 375596087 434911442 529732100 299530906 404202831 11829610 519636681 350211718 713029852 983120649 987874334 17998248 91394939 654779855 892593357 940960248 977317088 233651117 831273233 871097812 934417266 950765645 993807559 710764285 934754604 605406498 784615779 999598674 999808993 744873573 906587773 670596777 902361119 775188775 891279744 213592540 850861905 86493660 723606497 968055257 981264076 892643708 961770516 196773638 372845353 159922138 832389660 878835108 984629040 513205157 763497333 981067876 996215170 323366217 963799834 788705691 924163975 31533848 151001508 239269470 553716754 251491027 649639994 355447746 401608329 806223951 954328986 444721888 836186428 185515923 279939021 178579700 524634831 411210766 445450665 288175695 782283317 863502795 870332585 766888999 969090617 162792298 555392525 617037797 708824262 475182134 552469707 714064984 790928617 182805158 845344360 336554012 449481775 796289901 990165145 233343519 817113143 866339736 961928459 711146291 989714800 596915400 781739889 995232539 995558418 962603219 975362451 344169185 636968798 430860633 858876302 8534487 678348676 203075524 445966367 727750433 790169256 727595849 799957555 355824796 367816279 368922195 493880267 534026846 588379450 930652238 983424989 634158566 775218686 997044950 999559496 535042132 548939824 302066468 454978728 218546981 878068648 67497938 664631141 73290836 928604366 200007386 856630964 502016560 673965847 126849963 770178228 825992005 869740933 119054647 955438184 66012002 766182642 875748766 967858866 916638702 927257817 477967675 802560704 321388819 986544885 142146728 237120896 965305111 985113893 433995613 925249269 332291528 994260205 632276079 996581116 264723459 476635832 912657526 964142071 856958553 929144139 718645355 963282307 690410394 876296376 340094598 541294437 272091167 592043990 827455558 849606481 151864274 764763688 458444005 724700018 518793744 521669927 873009702 874259043 710957399 787414158 171958559 487701080 927335988 982964343 81400704 993559300 849051675 872667645 972330342 974809403 197930391 941813774 25765310 447467684 533190920 872585696 27515492 285859452 50565530 356756613 249828180 964784037 105307207 229591637 665194914 792766559 582913625 843609112 583673515 781423508 780736744 827259817 607235393 681075895 809722145 983505348 318048141 858219776 392977130 969611318 114279771 862896354 920119148 921967396 6578942 6678855 824596773 901107781 356775270 944471561 690231863 714059178 361770566 789740353 257066259 952568083 929610097 994682558 241008211 466541763 37663613 341660431 410316739 718644548 385441690 607628977 281325950 360646316 432743288 900189989 749743388 826922679 587345292 712736286 425125072 903672583 214399093 788728444 967144151 981973349 859852152 920099819 399693849 946372380 620246301 755318040 347148308 552532314 83988680 754685194 83442077 401696133 668561328 992416542 978087532 991706735 883442446 920086283 618651686 896370328 393256559 890756652 359731518 499910697 835120769 904487311 562061041 627088504 429458 213863447 959783401 994452904 809282840 844674382 729830322 990686149 603771525 716588663 818764038 821444227 549047014 975071933 56203406 438749958 197724931 502575428 283885027 705661291 80058509 319643364 111788570 883490598 809540137 820978561 243687186 974793238 59307727 106097274 526688385 874073199 115086336 650423966 898980090 991738130 662092576 995519783 125603901 230029289 756192896 936095226 56277402 199311544 267497985 745610820 292080127 455511184 775917175 855387591 230982032 670377399 141023634 804945868 376957623 431048412 369259857 415165799 484852171 727892748 162139591 584215479 880892741 949954370 179983651 509557428 867274965 871854455 835095621 934764290 462605752 766912578 384947538 933642202 932736426 985554065 858545189 927488557 557534119 737538344 146323676 378633263 933097109 976218683 530072314 974602313 645143638 871151604 585645938 656981646 914083670 931916888 537740573 878491041 919402237 936537610 885224580 971295335 234900379 449035356 572545678 818070357 554067317 712138492 789089469 878002839 53958654 565574706 329789871 684338637 720639672 770312239 254269121 911492950 40074350 416087136 924959448 958461972 843181320 929057081 636279204 927997069 811164534 876668655 861534273 869471217 250049717 942715890 834179769 890853881 918232195 926896482 858923620 966925622 385115800 982614701 872219766 913986666 939418547 942927720 418925624 972301771 540440407 785731631 267836147 972329521 792037851 976609385 664785540 812323440 361722762 681137638 81338979 340636516 890556434 907523261 683474863 930179552 914668177 948719230 634672206 894199317 592653912 945037346 943472228 978474240 349426808 981978180 984389550 985136690 562069259 939830322 943313693 972347303 99752712 992741260 886298992 939060230 617508113 633768161 543259843 835085884 283598616 864129896 110838611 222938861 833146891 930990495 487575225 605037146 551913818 699465315 978064425 982038832 449648078 798608768 552500143 649514131 531895276 641599100 750089029 764428940 162072756 552106956 630795515 698903940 92567118 142689175 313124721 927253061 799227011 848048624 156341744 372147331 199740802 618277414 607632132 653803486 722890933 723752839 562560685 712407646 109121947 147091081 916512949 932115878 145856110 436194303 647603555 763796598 803478756 918863314 675765794 786719475 761645501 807172537 893571434 913014383 225421113 357404053 179277006 974169637 758538895 910250082 695921397 918317136 22868415 963462545 210307600 547203044 344274202 457217272 84791294 377724726 971960051 977027884 300852527 893817462 474873426 604119782 211066719 670769356 417177243 426156572 867745531 921458404 490778185 818608131 871132619 896924634 934528257 984089072 627743090 682682994 29420757 162691211 95434516 901169393 313333035 861992708 172066011 836788313 266389277 449099894 862326244 962996969 830980443 857889019 365661280 493214653 100590835 676465853 393988466 420656079 116115280 995460494 736402988 904236480 565584243 777798449 364911756 778547048 142525044 373804372 390999251 799364321 610214917 791508225 747230837 951774026 218759962 776061478 219248538 671740456 966660396 999618388 234216582 697096697 832429508 916455118 257423486 459363152 919755371 980884083 354250632 640023965 711765035 831794402 438237650 509608589 817905436 918536891 940404433 943091905 662747942 902652291 235516762 311308065 348211922 822426044 843185228 915759559 523390403 948725727 903440909 931070603 279792446 890027250 612209655 698141525 865102451 990944820 236863564 934289543 622643656 995949952 827036991 859586823 565967792 709580767 548207963 681603035 389915544 580232524 822254755 855254190 53692500 786378679 419027488 521877629 330043446 509002897 366705934 626249154 252096821 939368135 598920517 819269366 941764980 977198441 672935739 937073013 49023603 672119061 786601640 928386253 229545699 986254005 93137129 809181693 550082297 791372433 962134880 991601745 143998214 412833362 347301039 995089865 146126177 516285802 516493256 558669799 450222077 508028736 512124487 697488158 601299731 670920801 370960258 663799239 886283925 986986852 713967085 852059512 18866993 753868226 993960811 997790675 262462769 938689270 132510208 415906868 592149419 991973482 737854999 837044868 854412156 919049933 809973262 947380435 216317505 566103588 113186039 443553083 247488813 838559693 571612267 914200319 361152925 648636215 464532759 894915583 886911101 948212320 988666123 995078361 150067187 216755124 771007330 967936554 905791457 995796526 58953880 641402840 570787804 839534757 985299685 989156128 636174963 940513061 409891745 612536382 839974820 920239844 883021462 924285211 828913855 851611130 336334428 686570040 109962150 148057746 431817714 690965931 947002090 957089475 31981775 755772436 522748786 563708757 937953153 978118971 166670724 733008697 671186177 713381668 569140572 962005304 606192275 915359092 621288996 763468144 894822615 932413119 862808379 947717005 107717030 126613853 352041853 829399030 926862332 949792945 557485956 668233187 426225967 640973723 228680237 894540978 256980517 750640700 923898298 955243375 27090326 902049270 769055941 850742618 786243921 863003160 192718073 268167049 978804832 984932785 822926603 980420611 491875429 937670936 142574783 656244470 151506704 620541498 194600618 725534544 479550094 588562260 899010069 929186427 139166638 459946617 149381430 817862971 642885313 718693809 501958468 761066891 984754339 992814450 284162947 442938642 48170811 555902891 131947704 908230425 149696926 500918014 713646705 937346701 218990409 319909808 409656591 782854869 653893244 907716594 537164696 968508801 884048281 888277372 990490600 990569424 108753245 885548546 783023435 949350860 414843269 510475387 717063541 735161246 172841878 524072976 138312719 584539464 859136356 997021227 546496634 846970198 951461271 956981925 998739399 999356955 212121623 810332658 807800373 892073333 200655971 231160166 503860441 566491645 72504385 376803222 749780184 785587551 850719695 941369664 802011531 988168340 47220173 672947215 104219353 908150000 954532346 984351529 90941915 321654231 401173041 448324084 904607014 932787348 294445420 421663305 129065553 710949854 22451078 301069960 557565896 577288593 543635643 947033257 423615961 684966435 847876880 955556753 907290266 946048045 447692593 503337840 723744010 782735239 897502466 955766797 532521522 688824608 767086482 818710865 975849215 984472282 703976290 764327784 134030947 674705242 226306412 991169309 334643353 446009174 589804531 776812072 738448654 923681647 926226496 952327238 347100887 873404325 63026016 330370679 148319812 529997363 490480094 676485345 498997139 876545878 297074650 590986147 74329474 191688099 422730055 945041692 906545564 907582186 851199974 945512073 677660029 979581669 670467057 929132024 503013610 801320291 144828898 712281488 774278901 998160130 40572053 658243156 901154700 947386157 409697166 704848355 26477716 769129457 879293651 929165807 488713425 967975609 754118376 868944790 502157295 577995542 999729193 999909843 987080482 999507816 351971038 511360626 852023081 918632387 707080000 722448262 200432406 613827097 273813629 417856417 690217084 816756254 463181683 755278768 382929139 694066069 917745915 934914423 577858588 939389727 24519349 641195489 42599541 553703030 404845342 781333859 392101260 536268732 476423506 498010968 677674523 730249769 138431864 469471541 346789942 890989909 442409940 623461068 585671462 819325933 213659262 509147515 457302739 895860625 946197991 961355041 266375975 325009021 884613037 971298415 648473102 875306206 597308954 675636957 475613183 488229333 42145959 535272264 772015109 826599587 963246443 969461252 660578889 758612139 274708754 295314277 899225438 949027913 349042291 622599060 869384167 970724194 689541095 889353375 705020269 879415635 235039794 405471427 683889985 877802803 662440705 693532747 780118894 980101995 355875905 452257084 853674807 933641255 480010324 685575139 353363348 474897070 941419034 955118685 405188328 885794725 59153400 554399805 975467809 995237061 771822990 830971196 371186802 887769748 589399726 961660317 866570922 922004981 857067096 949964422 455681785 707701301 495761173 689014232 279051809 703009668 737449644 891077226 768624240 942062848 990276633 994282362 741680509 926501933 614057489 748363067 110775759 897485281 29517978 982411799 851694054 953425813 436550312 568821428 985477817 985752366 774862777 981713381 135292277 662159293 279435430 469643130 792957668 965657572 73637254 971791017 270650064 701034727 376346809 427900448 830908977 948124980 347190386 866296950 478488615 815082088 473863420 900557934 896103547 915090737 305907994 846543147 729544482 788770830 39633425 108087303 655339592 710452318 435327106 465483211 300148992 985369772 135143278 990659195 445935427 878575185 825517188 890442176 987749218 996255218 313322613 745881185 260308147 856753741 519688573 761106331 765963398 914341194 822980858 849197237 901305823 920950418 171816679 565985128 68601274 190572013 932721907 945641421 686406301 766952912 642721053 896560928 614002985 914241966 563292965 903174986 157672308 364997819 529677130 601718667 285338181 320204097 150506659 854963983 17264467 816632307 187440260 566281435 952545450 965938984 55256478 183181129 994434822 999004223 418523464 698022626 539054814 897665691 305099563 900449648 998666754 999645658 788586888 969876889 43280004 987594087 764454028 899856941 731469595 964806221 976686833 992334802 705853614 713517979 931610650 945444931 101018479 393612909 253719092 766488846 143845084 188460636 388153552 630050568 555255837 663146796 14764209 503030764 455206252 974515202 366442578 520270480 602929173 983008247 429947141 767209604 626155186 978019510 702041575 950085221 740252032 992215502 41929267 756411308 376398380 860566725 596055389 803413621 317104045 704217395 451493043 886668815 4548539 919381302 25404463 862146530 50849616 990974347 223516427 583588576 455275919 614872227 777310192 781458160 184878996 371631019 537019846 952764439 222299602 858404010 684985854 927623944 818439961 921435780 496314275 515950703 593839033 952417900 35761393 755263717 481508372 760178312 383332455 753516033 476266125 821656470 534554761 678785101 450951314 675943229 516332229 763792061 250943687 852199272 189127142 501621540 417896466 570212193 111258993 648786433 424852332 862566857 946856620 981638967 28351720 614567301 314573431 837267972 144178204 496187036 266075033 303212248 785168800 899144720 735629076 787090848 862245304 891526193 809590929 958416601 114754813 647481522 657781513 959731526 768011032 907720557 880900025 936725878 502618997 943677383 607397670 667816188 248345831 415499106 265364932 776469097 114472074 196110008 579907090 892604004 262997347 483334582 865003753 975412645 583117867 591428627 220419297 897738327 44404329 50528518 403709051 991520408 685844988 958473042 499884563 715233872 43735625 674183446 86326479 645303046 914310784 939307647 726872682 900178771 12935041 374886485 553933212 635509271 288827471 701558110 330353235 454330929 910829933 924755979 864162359 889008592 971901715 988958722 78505418 515411848 482541782 613029833 613968790 752124523 187057026 207145992 567878398 595790733 973554485 990156853 438395475 510569862 466351471 692542249 798192136 993696214 582498778 738581247 340311015 958529615 713419326 932678830 643664892 785415441 90603974 507455490 719468310 874736204 422838009 513473043 887627106 966361679 777131264 824688006 233858641 515326688 210511880 876897387 4447095 806557557 466489213 824868466 442430865 825307309 814320595 934532422 848579569 910736115 54169731 812268045 135893097 282639700 153699204 829031640 750918775 952845090 518402976 785414122 273881731 620967958 901910738 959635214 4864750 176796777 394715147 921728105 104532405 840556776 977467397 997667789 236053559 947638194 360669744 490990402 911617849 981161260 898941546 909578424 103953551 111840611 557397322 829370814 720358637 900132472 592887798 964641542 272374326 285131368 46142845 753023894 114093464 756459994 211335172 465414346 976749388 999979042 601335236 964839734 424273177 905515728 981535614 987373045 814839384 842252608 70587348 593758102 53112348 998923538 914065411 947627679 113848128 585055505 501415840 644365464 299903262 605139290 267830895 539432177 107618136 491826371 460530216 806825677 547728934 954799902 767612272 781566006 656397492 908564554 946464146 998935047 247393748 389596350 444651818 889350798 129383999 780586885 797119768 968760340 148295117 847079250 985947216 993654482 429533792 657626539 107810209 156029601 336692485 772886130 715919782 981932515 91994459 523324813 389487154 668822387 460415858 791452353 216741168 781709219 130265294 131783483 782729516 793762423 428319249 663282148 803485204 962190092 216218528 911609480 508879918 850511299 1194888 715336969 350020473 955575193 819298765 867637501 621245903 848662173 941025788 988369896 624499800 846558822 236954820 435296066 779381055 792664960 192199469 711590341 286580550 357522645 722684869 950290440 863266106 940377144 667097861 869042807 141030453 251931931 104088643 341912544 143602163 513695236 452452896 846868410 899088070 958655972 854206006 861868669 37064325 206903617 39240513 353604639 102039649 911021681 934790276 986270905 521752653 545889986 921626425 970002566 152780059 551005417 684614156 793554412 708715682 909808301 105006926 202898671 948935485 950119005 38749351 747341321 831128067 943350209 871589925 958742450 525549768 622859760 97311876 483579197 679299139 970440996 410494708 575948913 535736138 754795875 18008364 234061980 235236087 740515596 472563262 581728441 784312609 941557071 140485515 634327115 791794129 909149768 119211454 188008321 783599648 945416388 976044117 977256067 595294435 650471566 580401376 975189402 245925642 467051239 809995504 880378492 703199813 830188233 865946283 996635307 758388563 965174130 482188892 998778692 236990735 434197576 259300065 602078751 953332437 983181875 18175848 227111556 393031545 793496136 188138040 561925676 780798458 976079327 796493183 941329538 615720473 620378419 329047272 928645135 67718862 689463999 403936587 446890189 167295709 583234152 251606309 715954007 405382802 622843463 771713433 981391059 239462003 316647771 193830730 848876933 940337019 957721584 504332831 881015376 626894899 826640640 223201693 341681578 554908942 722408842 892630902 913938929 248363988 939147612 65662788 324633291 661831400 748586338 98884714 690708719 743388684 878824952 161598270 835699719 7609281 210708048 995523660 998786331 389726250 546798854 450978465 849897133 649780809 985546748 525731066 846921069 789802129 952502540 395747640 960966282 196146063 296251299 20501677 55360115 733612569 879414971 53348001 542410691 145856099 422834867 413384232 910708975 762583767 931108489 964371436 975309996 180887985 494746911 434733024 515640627 779668867 994280337 952278763 995308334 585663750 909633708 556244474 895364161 498143494 621109560 658954428 836516876 1805261 602778846 341669706 373424649 236542827 945666718 510787184 706914115 979213246 983040713 660117433 809591202 226112609 361999899 74913211 318287541 264402675 469022758 244950248 581830504 407364979 545489697 329875080 750362613 474168051 979776132 93891562 906230439 772649674 902365034 840558711 915007974 510957542 727252264 525465426 942030920 387416602 426267344 248867327 513256406 137270779 974808607 972387446 988721015 756445707 975207975 526574992 587404609 873719658 873943891 534389732 697626682 215879797 760791320 13586475 396612777 302171578 512473265 185110232 870114936 597143238 842233328 978383352 993398311 213858695 784195338 796366788 817078149 848491641 894615607 909729036 933747569 781014407 786272452 518811431 699971487 995389671 999696967 603899267 991272226 848579480 924513923 309813021 878599008 613218473 866027570 898667081 966503029 215058403 600949457 391473048 651039077 788955050 908962435 175575585 861881176 195218449 822139059 844841852 941839114 989739371 991256170 647438531 836775941 835446649 910348313 498878432 769875815 190255539 933543931 9632013 503381031 638373366 785296961 983261547 989373949 750168204 994569665 759347852 988901542 375546610 692885914 88671931 628481482 175876798 846921754 2232586 657655831 728578523 865628064 798166815 853625407 811314266 978165317 781378463 895525266 236849290 697167641 61642917 719952606 762436983 970155997 941395671 953934548 862636819 894256689 458505568 833486505 114344571 294758219 29182367 559885531 23629646 383868770 534095904 956057266 888020276 976865196 840319518 903197549 590402149 974590490 936840517 957731574 810207988 994403771 661310970 716677308 860552213 892631583 264367267 989060094 138846860 156278354 153549792 706383137 573665043 593717930 686658548 749083235 748830588 803711188 424199224 898814585 788526998 844000023 260727854 435244824 287052252 902409839 256172841 700763813 437213233 673881945 223073151 962139461 809289484 991671451 730372335 985929049 987131261 989552843 186437416 713724561 170677787 687736546 146450414 509402416 152027548 818658896 316543509 363643425 481374644 627572323 974663706 996562286 673767281 845889155 208434025 596377917 794898931 853170441 59403912 703610793 678623893 721812102 609077830 932527765 872776173 891854261 347639497 919268561 472100304 960029416 545303393 932088429 121346146 454850938 609638870 681828731 640236905 641592063 622784014 980337035 531965909 680227980 312964651 433265626 768046596 820050221 511145713 893718759 34263991 953027627 615545440 985411493 847883049 931910719 277152975 754091784 509960157 911436142 137574584 829553382 632028995 822388393 747299266 991727039 565514225 718900208 968016121 969530657 752180378 978019127 234557054 699582247 922751160 940738245 816800388 842678833 349042903 628166020 47406977 733671631 661008311 932876767 888507800 930746547 439822031 935610533 285273175 596212593 180037639 910824058 34815132 938627741 585462517 972475014 331321386 670581256 630113528 881271907 19253965 816556180 262450019 884280414 956622893 985578317 559478816 612680101 371732606 988178729 811892264 874423837 319167905 876326903 544518152 784369003 105809633 232253467 589662175 889397225 46288538 620479263 192483680 433904429 719469249 893793641 704928773 814276255 843960890 984579019 904351322 983962615 344672414 676750179 370518294 831414209 91636843 440284829 354713400 552151297 364657076 865822550 25489305 722623140 383669346 906759721 77397671 610792528 18265526 938083686 634547474 969504812 127546139 520727829 517660952 615238450 841188416 905244840 684213148 869222510 924763517 995836444 479504756 515798920 204727100 298877352 318485293 951683842 979978420 980007506 738799514 765941488 752705761 777580798 444120206 775820076 83884025 851172782 93845123 335406828 822406846 901320498 927611793 965520348 233280875 404916937 919307757 975750854 428820364 903018135 899072900 955937251 601129313 930899985 757774241 801299242 203920050 824092171 954188073 987695381 891651597 974670933 531487661 900847615 398625352 882128641 898564642 951456372 535925515 639288962 309973040 476972829 949883693 954463181 294937985 953992475 717225174 986597010 633200299 741363006 877308596 958490873 965042989 998439709 49912944 122643729 631278958 827116467 584225128 617249815 261183115 757263752 858487670 980333753 833946836 950107059 514739768 887953032 935168624 935824941 168576746 563235058 481559711 715756981 747229618 771632428 767430910 879972680 340576980 358847239 552972253 966968069 663945926 862582316 805274634 918505949 143631216 304105496 893980439 954034266 749498976 807235790 844936701 908964048 671132860 875201726 291334209 367292318 234275775 722555777 668500445 696369460 770210110 800335659 339925424 495476439 831593635 859474749 15187795 98252994 270169932 996086366 314296467 917734156 694411687 799472172 883722367 989988344 486405714 693266820 888453862 964251047 871957353 936776826 141604521 226344188 466164064 771679754 814140020 964367938 430979964 864357196 272827727 606548731 985680022 985777617 865067324 952865496 48873905 443326601 718959075 794257823 297114514 341963636 344210949 408534316 8227271 382242878 956805846 978971456 491920072 719833343 315126297 474892687 401524470 488408439 683432323 825037269 663538232 848103866 518566403 974555740 150480189 255745551 486714875 931212288 885423921 920603963 440372600 591053428 361355609 874940354 649685989 675726459 678795039 825366223 146053012 869263074 775701478 880531130 226574791 500513642 68372051 627218071 18356073 191128185 574215590 619160626 357944644 739836286 75602069 239438348 498415989 716011764 77877221 935388195 669474141 917556828 800461959 816612752 58848404 916867633 883845497 958320123 431294155 673552816 703588273 708676323 877641973 904626450 700793212 955134584 100491923 927015455 878861615 906531034 544115517 673385281 688773608 689034595 788751214 869461824 465960829 838596142 809420714 980856961 863673036 942981493 533944138 965613473 473084234 858297481 423709531 817857671 933642260 966437100 453701106 795541790 786486396 825318070 456510309 981256771 51883857 142588657 238909177 372519252 925973050 970701019 839427398 930599105 732219503 819932937 315607620 448975486 365949732 425393898 678957782 969171043 152802560 928487907 702948560 895480025 866171764 869667756 221147419 264963006 427750647 651276746 318877287 827003693 452320804 469418587 314003492 657391593 120919616 125051923 223677295 960123203 799471078 819556014 534461562 681617123 674489681 780322370 331575403 898531600 212636354 568394782 750613364 887711826 339522979 482962424 515499385 537609448 430672815 942422147 709410299 838981344 121719036 586428607 527057276 759253311 179621184 239055353 367172517 536526953 87270771 537556613 366733593 585668741 822727396 857572312 389200403 755480594 475115598 925843449 953417109 962722852 894873015 900392341 358104521 368409132 423239606 911325535 502409414 606120231 686883924 816738563 301246449 627664451 483030064 694768383 911708171 963903900 497347223 581834705 69507171 743023055 644433065 950515767 138390463 418829388 60752834 455878705 317539630 345641817 51985194 671291889 501414270 831215697 453092705 901118300 156468875 796277724 300093730 458363498 526605906 896555966 672121709 902752337 706505849 804128068 926088535 963948032 612728201 650845599 159411855 473815211 678755576 715376300 902526220 902832285 244211079 678067290 119248255 785105097 434021503 985311839 48283104 65390301 978874842 980436431 985110719 990636856 233178980 501161228 562911895 636646198 676808196 875334006 777814780 874243789 749699465 770923386 674813244 976655664 766934661 819631575 17561655 649497968 548521531 702046497 714523052 795580274 342903436 697446164 198214118 496985393 64158619 761074836 325006167 736984839 429297848 506366328 858070114 891053804 234303750 616573808 444914110 685311510 797298554 913188656 59781455 719849719 623292315 942633262 744557714 981267166 105756324 790607032 562171944 755217583 285779303 820443295 767064257 864829757 962100571 972427392 448592296 583494113 939268109 976400187 379840186 585997835 665776516 773672673 885223634 918748606 711083285 739751298 972639920 999913652 330580193 646086423 107925126 584858695 548132238 756478133 220952133 798411194 37434514 867089056 933268325 958557363 687517975 878790318 558610002 862630979 77401790 545147267 550181430 951217650 214643244 300621676 307575354 630427161 710818816 800098845 348902677 633375757 538239111 674656809 534274576 731297167 709592685 812702433 587969521 966529459 359323868 507456672 619319070 727892667 82595587 309313181 788572079 940976804 616703277 994617653 56505685 909245747 577497002 673117691 875884434 953467897 271806821 973050938 765038038 948760289 642800549 928792776 965131888 976966874 112892694 795773627 691007979 815807761 409138236 981986513 557225143 599340642 271787338 490792638 141647252 355008665 941372890 997129888 888859953 916690422 780958253 937060134 378713416 529986222 577130389 848054148 852771816 902548320 59574196 167407910 314637972 863535844 251640097 950127637 872602668 872875302 456639749 789319573 445371282 446003324 967135796 969879222 659757851 684862036 689158925 899881291 708226803 774909496 375934073 567115090 830243169 898271584 845447278 936511986 578568516 711209412 888313740 933505700 269780942 300711912 437823602 477713160 444625650 485276408 810570925 825698489 724315763 951108831 520522821 813076325 308233988 415144247 518683466 641011422 396572316 892870291 353652577 583518043 627980049 965135966 2189929 9527550 347587614 624515390 133108457 191626399 957685230 985184831 305748090 708002604 143259741 290357410 105477474 811084019 330071949 955032009 479982133 718437958 325631446 986964890 655977047 826360858 889883221 899402794 594403355 866093713 928856944 966038326 128821649 456254406 133266512 779817753 228593065 588498586 754379572 813234155 217796363 333567775 462897312 959022515 320465803 650604890 802540851 968819243 320636043 794587788 877972752 934956490 425713094 618597679 181587165 209141073 708022507 716227822 279988125 790559748 670244534 703079667 371482333 748133074 505329643 998099100 741876728 778609511 637267005 811459549 155443966 989086871 639165498 974507459 262620920 387856643 525807343 867983807 219060199 332753478 669570108 728417734 38952002 353936627 146720196 782387179 355128773 457337926 951665961 982426785 49990621 295142152 708489349 832974685 672754646 808817191 389611197 800163076 490330237 588334506 241654486 385557209 643863939 815899452 813980446 944878900 458820754 562600858 936902237 960671949 405262797 660580176 271375311 384664402 846857819 914294153 18693572 735068316 518554361 593710351 939390457 941762693 622270098 646960024 892796798 929172095 194604212 705308531 402643249 409930099 276016234 402112711 387781260 466716104 672761475 893870673 241833053 858603563 530948017 636797268 689505376 973867457 406022661 821915291 90695201 686085839 532878660 701120790 628279380 958828855 178317103 272323485 464890263 608111862 940035664 972086233 496195563 609990564 291394852 474173190 270743136 775266597 726260908 900871532 196824653 949560895 74201680 161121254 872119155 889570693 499223022 738409626 104281935 840806679 700614784 841458536 418666172 799381161 230218902 769434547 870362317 948212951 34309189 931325199 999742370 999780973 832127159 888354007 314875461 878813894 852327411 977610324 496116969 894602974 502404032 766941867 853925313 956067563 996529218 998927698 206452236 638947033 608104630 755146705 412608358 665075486 105667380 832412681 755807163 880682678 735515711 866501428 233016795 803159089 337273007 622814828 44754873 231689105 535422977 874266084 376329128 881555847 205713885 487478505 439785930 527076294 952807753 967795353 420416983 497224837 376180913 549981630 456689765 800013266 18007219 400782031 538203583 997881191 222118137 464835352 445671534 614824067 989360009 997659663 471535274 792856700 195718154 931645886 339123160 790436486 916166342 958350748 723411074 884013259 153396681 335046611 775066353 871784959 261235499 480702952 126846650 929111743 236122470 958442306 424454085 746467316 338495420 858292878 840534839 986885211 921882487 958768511 571267588 746429618 919461875 957468172 549664998 770353979 929496687 996765679 575910380 873634929 121703710 770252664 273330980 410068817 269793466 421122145 85703513 427898650 841803678 971707204 505343354 561425094 144039370 336648799 799308287 962114566 769000303 861794704 711547857 821828175 601415185 845206447 86713823 805559703 425161672 806492671 621529209 909642430 300778463 910129797 27170532 618408183 241264698 587609775 494746717 581981543 148948034 188057644 184379603 360365106 100519788 437633922 952132422 981659759 689319580 864905750 247170881 811158512 361975904 423206269 960561656 988196393 62569757 412960406 364442247 691026379 827965803 972726486 191735 577549046 729950257 881271828 185391608 705823327 687867153 720830795 704415163 734391838 700449331 966756303 651063629 791983548 835420627 980407572 527489341 685840441 680924189 966539311 894121139 928859119 613077847 751220808 618367099 870098054 688165217 781767247 92852219 753045356 130349686 935794142 346315911 818910795 986539399 997808421 219550469 945483651 229583178 523659439 435484653 670418644 968024301 976808659 78977205 896271667 494821349 609670722 279642292 911216146 24086404 116558378 877430924 938019764 560644373 867049194 49541943 817701195 132709441 420721132 291604963 753938831 37963104 809513291 642227159 975289784 504643880 823600751 480330730 732775561 815412689 969195085 746687549 968973254 473668819 719904972 77829581 653800870 104321718 310434542 297431635 379644514 695497225 913220466 510923579 986868604 988147459 993129116 643134404 841914575 910645265 959086840 711042890 802814934 382924348 895591798 109844481 534547752 474283009 798500541 623625436 754295700 677452804 824028390 405625473 732383118 651183499 694783200 545095731 811218658 471973196 666277343 325025095 466829063 60084950 670558792 947659390 985655948 513868384 537937528 136721578 968884640 317452521 600907553 244249014 939158215 429254855 790965239 754205914 960250592 289492515 418197602 558474484 669822276 57733565 740395235 597762461 712765891 237238627 464899064 248977555 411214971 945407045 997300874 536593570 810276920 138669473 786519651 17115180 245271961 915946685 976513543 83997118 657648119 307821087 731908408 295591859 562685502 485461551 904358539 694347034 998714950 411417927 833224741 256783242 305806381 680411847 694927027 820680035 959442196 412860407 776512887 136388044 632094734 621149593 797599779 221029351 560340938 715165332 757766607 873713773 945398540 138932578 146299890 41922579 805715913 245898298 570934599 154216185 511894060 30371642 662073048 173153825 734021411 104037865 623081184 603807744 821074010 670884696 872089589 167685369 694557132 220538705 502368935 908279730 967687966 441851370 621450373 471496364 644583493 935707320 944793416 123987145 839963953 973809702 974706231 682995483 758455914 271104773 913879706 413381735 992893486 851403733 977788792 811337428 846464538 821929580 847361856 561119090 658404402 544371647 928991717 17193618 869328007 967777479 976409325 439685370 695005602 339615975 739968996 194608127 940433930 599601792 610766013 231844586 430122704 137280194 145151919 71005930 115258066 653466642 854434836 334639662 955882872 424746432 828794697 729421920 980159408 210713035 538844845 530643643 878601612 729537230 776937089 760199641 844311875 205319096 563162760 715454250 934646915 207881738 642704372 43032 219209796 601742266 631023891 640187689 987948701 136499640 637371872 443772905 466753591 141230151 329921908 296951247 505121309 435388145 810393383 458253587 623533659 448651057 781392375 893465841 953735876 778025475 804167687 215857405 906544923 295010738 738267675 339915234 371472078 825898018 997867774 716713149 751345001 470885066 598895029 665723451 950747917 110978690 576520959 238372582 725573098 37981167 543309617 818938736 894700933 86849533 596722870 599885460 746193772 992484738 993939004 457484001 751831728 134368011 917835147 280029612 888958920 345645613 539711534 943975168 987673717 180143819 761706179 538187859 949380763 151951966 555321946 860424026 911506003 450704366 460414188 564999552 922386461 13879277 300092540 5393895 609360362 85507610 759004643 451422556 681824368 958434214 970687104 520687763 963192337 776306713 935536327 241820925 893094838 534843577 865494051 22579251 974937233 381479964 876208917 474208700 768789840 927793472 949359852 892968192 928213723 803085507 910623742 900896958 922360889 833033638 972638176 502084916 869480749 870577093 961382738 497093046 987556276 730475084 826474307 938824863 961605434 845442817 863453109 475129952 616218357 111541242 978553177 861700868 973058823 166030034 417052777 472844604 826156182 143479028 155044454 476155455 621318146 734897795 754038835 863693479 910626000 709351999 882074462 961018373 999595941 191576586 894083675 978711803 983397466 498226176 865727248 630364030 918395590 953934379 983331228 417776763 959067628 233568783 263177057 598178066 913993238 446079250 925824998 929165430 934257199 79153366 558461794 54869534 977229566 274061297 841543356 985648242 996055410 829726841 909134522 722330398 984967942 779627760 809046550 477071754 625429710 616883877 974840867 328139153 348886547 314949039 543237444 537734508 876962810 141780942 393823655 770459403 833345682 552230035 972452131 318638366 864082743 496841520 642195396 310650943 811520382 158303118 324810365 978104786 997057677 95008089 601362596 829579621 911290184 383343571 656997722 245652858 478623605 158950590 161432444 122333311 715737720 110205600 975992675 768743004 973996297 503369265 596493755 929414678 941906341 536135847 751896895 685033827 797232222 127459778 901669480 385542940 389408086 846462926 931794640 40462121 604396210 233131657 687357168 13967431 612212709 561233598 620526175 160750452 902342577 287931349 630942761 241691357 519723308 986866629 997987728 357437544 623265001 790918416 796605256 650570564 771768015 233197661 562857583 942511830 955559910 522857573 835297130 968531641 986576718 587293975 713447796 694758883 815279408 266742682 845106153 709395544 832181852 149007138 191892172 990100666 991474900 469513863 729886500 887725416 957967787 259802112 640837015 534652806 587534474 379586798 897725515 941605170 994630532 701821362 885310317 857919014 891295392 292777307 449929733 146602386 460296980 677053145 750766090 179626433 794099329 566734450 691052722 863516145 928036523 218425108 513704798 425727911 614274042 440126134 507631954 867498680 878441864 353436185 879484496 356693080 829981903 196149735 362981206 475846340 763601082 693608831 894039363 647909143 937684745 836653227 841611475 32164016 149363673 91091436 715967791 70596001 518340436 515321072 796596427 153208851 269941323 874763336 930453142 580199041 793780448 156816765 261161701 990764120 993365906 98013954 982593969 894407930 955309400 321956117 861283172 18450573 963926546 261195249 625016784 462705223 564200145 78271363 770372865 638022322 986741419 961553077 982842233 409279408 812325624 106223517 382910373 317920958 565426570 2917028 202983857 271884497 791829194 943178968 995845069 447238605 801724674 454131654 983648113 850916957 970155643 802039435 923694856 456517138 599399265 332247904 804738517 588753625 628664825 741856515 815316859 795244876 927645184 753340967 970190184 774737604 951850221 203794318 581399422 560261919 823442646 158197554 618597044 12070134 793957576 431215292 473596117 251566213 669446037 661596689 985279570 762047280 884979670 817890748 854033264 468682749 802664530 893789990 929526070 621322938 671559433 728138335 998795564 311375852 626101730 266636468 363757405 695389173 765992841 696649360 782404885 424579995 809917349 728713466 793598509 734887369 749126945 874212811 916095051 572373288 957361028 513017897 765606776 378784531 964630570 693374321 730851627 389286237 839099530 966273795 991590297 965065906 974220411 867488702 919934266 368121138 971272166 144097820 208588941 946906311 991993187 961992392 998230936 226658527 293733827 495097272 684018026 264343107 553684826 49207401 146967035 180787163 217976093 948001500 955090433 671914613 778261834 2851625 474702417 592601418 947075616 138717750 288554740 370223098 419182129 604331601 691662166 104328734 867947782 468314775 775589367 141681202 141777484 55523222 467516909 616203503 763352491 841388910 878543583 447168523 447943221 158815172 593909728 892670328 933101480 101847241 994073670 332523812 581793005 646735566 721635814 869138832 890450696 220222772 813692051 6736408 228832053 30235071 484833278 428133240 542731375 149223031 151598305 220194114 560969085 383316892 390932488 858766801 959167191 102159031 179134352 857182735 894984001 598597310 841389323 73833593 481434041 862297200 965893550 80548754 778565650 935003330 964787075 45130469 832064633 869712470 959136638 400256600 795748729 485231729 745715534 896602093 945107636 753256634 783820229 139268829 325257340 983590898 998095428 66023665 809460592 111025844 126008718 662215872 977850749 169817765 246283191 991354241 992499296 529469563 882089357 695631462 732500900 297584475 953274730 825783204 907908655 167947263 279383863 844624223 854660658 616632523 726102810 196912776 553822876 558698418 673881563 103687750 814899940 188921913 875649227 829901865 927301232 170680072 258931997 928359690 992510089 576514707 867220536 142452774 324737060 163835603 197948068 734325933 865701545 134004560 297844367 715500291 992777581 942806106 987750437 166024139 701294890 194754682 237491286 295928369 802275945 581785167 710887027 407593700 613513424 961122112 997688616 562197615 729008653 356211230 449105342 42540376 432730872 213182679 864055563 868780252 997902985 253677573 723317968 842786927 880462789 278508637 839165522 980589682 986680263 863295727 910323686 977471654 997032887 78755881 86990795 96887685 666468779 42552144 822198002 647409891 715021117 444647873 451400405 255670607 714121021 385812568 878491682 941055617 964362602 573416156 606863194 462763925 631888787 377860376 789581475 340113335 645074784 833301457 953641118 260147355 688863298 38806074 689605957 614956059 922218117 860608022 898048308 576696139 900813006 943441971 963746476 551078600 562583846 969890514 975891917 108002021 519777746 444597710 591734215 14266715 207360329 698354283 942387829 749089407 901488424 683088666 786699356 940169483 964106060 772468550 898036695 964531077 994211936 774585534 959878305 232924521 481753008 274250782 847955104 31576395 605213379 911868590 969966970 754930849 845520019 123950951 946955708 354189963 505690592 55438401 882567849 537570901 961564457 327174385 688809795 463492894 663405370 159368639 288130979 587255189 718143329 357168850 977577241 23349463 883516899 904157288 942808116 489469212 526851425 508385668 565607763 389106596 530110546 4901067 144863562 239976073 366050119 833143397 999210249 158504700 468929594 557915391 835061435 231529102 419213457 979871286 983363973 908145839 949665680 448979239 802326423 69775890 71571965 14152722 532817480 701283678 879687469 82002807 854751096 421316371 976216817 596352130 818298673 118730332 854583784 600341882 837979527 228735278 825547666 25018441 756739957 408891444 932477347 632480879 876736410 752887909 863129954 239508568 904379183 961714956 991451864 630658664 761878466 11510131 29151509 897338281 956651817 486424947 525306637 746474128 757049502 909524162 958443398 615416404 831284225 280953451 629251380 667059249 984371525 740458644 762552878 601883267 657030150 160290280 950880396 922062221 976288655 287527464 830978979 72156497 301250830 847257602 855840703 988840240 989151641 125969280 994490396 460537578 576522929 648540087 747557538 752956869 850708335 367326461 971797703 524523615 975888984 576715770 928605536 143595646 488513622 74677219 713264861 522507325 690073642 820380857 921422152 190560851 506467457 328251541 713731078 969325016 985701018 192386076 863675231 55631027 840483499 943542968 993760025 251938664 583996331 700556189 877290983 328710431 484563002 734875528 928396542 676221108 971264249 889806891 969388465 837840115 969475408 853457378 908572785 869286093 870634190 425294440 441896089 212737022 970413889 211513136 489631992 286084765 874160108 352490193 789296483 130506225 952741187 622485103 788985071 195436956 343497475 465707766 893962444 710061157 950096729 513568903 987836794 377720070 863476453 737036701 973858638 399099168 858366264 810748161 878851418 150892892 988609031 521449452 639057114 74759968 205089104 104083814 988109306 620817536 748646582 647607294 895978483 974380650 977810685 40509364 583766157 230046672 861011851 546039030 642079879 691299931 820950519 66928822 954906079 128690207 137833295 177994340 266676950 531589930 710826736 596639649 723866846 757546772 820747183 421927457 569340066 994927068 998769620 261450708 989552187 891116002 988902715 582458385 844343197 441557889 923018870 505564663 950993923 449586141 661754017 654789220 685574171 496650282 757456774 723494640 781326170 516213921 806152246 645858305 823095445 626042757 699373167 668625131 978154650 169303327 483729592 572111135 911446933 754532267 871465606 983555822 990172595 491209690 917296533 44773515 797168466 312899939 797517514 84865444 644872092 205453014 580614816 412528875 728607891 970301181 983002988 702964313 960351348 239233589 769665882 376458391 782106560 120216928 722132089 791743292 791780185 339477979 773347066 836432529 838177843 498482884 566117551 30936215 776528084 942679621 976127027 822881225 831875365 521586218 689884619 580994006 930815106 891364448 908466745 752394544 878563015 567376538 623581999 243815547 557928864 860879112 973607866 631927954 747634510 13305555 327450577 439760470 858538826 545177889 607581170 372128871 801170256 412066434 938584383 816316020 902917320 825683363 930880313 878141932 941872480 479437489 878047489 343374930 847908848 773394404 966131000 275943854 296091737 764354035 949114744 866922179 906105458 558978587 577474430 923701452 938122068 872922948 946278222 629038957 714509054 615013794 922915254 382985530 403185412 117925181 256675422 518415203 644714340 27750912 354893766 369346225 745560148 724551060 814125325 740061685 885458787 748173413 913968505 425597239 608099025 364151058 498741810 225856793 895338904 590463313 841217814 572027763 917998832 954877242 996632391 173803161 281810373 898114353 930215631 220081257 622684606 607160093 733515491 132225816 280046057 521850689 625883229 552982428 962923081 346476828 458841949 513040241 885307654 549688272 662352523 484355554 505411325 494313032 746075087 607664664 890103122 187773307 421307785 923755637 937833480 522810980 688635647 558572276 677357827 884512154 888812145 255201806 260882937 529657451 632576796 389191967 818352470 713351066 913518598 501165973 582839268 970487958 976614181 192181731 932088939 576225392 811415364 886878488 986585882 570291311 940024796 760113537 956357034 246904200 625245746 699655028 700739527 437181329 916936790 598522859 906616743 206901893 845500127 489046883 715189094 303383601 429151193 905415024 990310652 194686781 465594667 953382630 991208883 29624435 463487322 333342606 908184279 614796202 654803600 381020280 769292520 339435339 468536213 508820080 900389989 885569554 948941153 498969934 520312230 684379394 740426055 399124270 755425446 734174052 762014711 151489928 642989589 526255716 936408952 521224824 584367625 921670419 970988240 502629972 872835581 161642233 756798659 723352136 962329550 431254775 643390698 524787601 621382323 970041296 987594746 143922529 457405106 601315070 661777833 319046504 462256042 996559764 997020704 553026801 712200899 347235021 969684433 145804968 759166279 637300107 933595516 387978208 733321483 848683587 955441507 412612263 543263199 257722514 667429844 18060393 956813888 706200048 798834613 188653522 219937553 443818180 884182223 738519124 944801991 667441899 810512016 463247809 526533715 791127749 871076624 115165622 607296005 258508456 383940714 734619236 960181768 579161212 825606203 284768936 486795297 382971628 782893991 494660253 734818453 539077328 641741274 366837786 470416203 983978728 987182033 939442595 966786177 627008426 789518877 535834533 604273092 466624318 521514235 110222701 745967295 774141106 929689013 928659590 930825092 164846613 552328218 936779172 965873874 519327130 692678508 312036960 519785823 209733624 622783104 504868814 793680846 510899481 903650879 104127448 880169230 298829932 640120693 695718967 814076178 15738762 781980373 402450389 739308958 934317525 968567818 568175819 840978281 531454773 910289401 879903554 903935773 347012942 352275295 440341431 548537482 236033658 336357114 477781706 540992467 352602853 499717783 859007148 883608719 250918574 684689233 757885330 792594373 721446073 864214138 572636983 718883206 474159194 492064074 259657145 273395292 138242111 650286197 754128680 990379011 595144268 872572086 876738012 925840498 51464966 92253955 749884834 976828829 4570855 598542447 380305904 833515904 424615072 752102347 925225328 996285143 914886956 948639255 794674499 857066168 96014153 97032421 293653037 830684284 612381511 942594075 220185905 244202932 704280201 721172823 666470885 841209205 189629125 659724174 870410377 895534319 305833756 425261614 303832075 700379195 622149337 828694347 886580404 973820533 534529995 717339521 490444721 838378746 504842801 935815721 81010571 329346619 424520191 976318853 305221299 494263506 309250725 468102284 837239722 943572521 761460713 965740357 944149714 973502229 140975542 349184072 494995122 882415234 755031560 771792455 394197920 937040009 208721411 657150543 73457595 205543926 395839015 583468108 76212180 770168756 967222671 994371982 909067217 921338444 946866736 972637271 313319700 328348111 121140235 337421360 603458321 812932916 202264436 798680194 92963921 231721359 429075011 628628921 154826328 708108410 452539885 788862644 291443997 831631259 798750065 991963139 121590276 728759238 72296027 974076894 478425089 963945582 436832666 584789626 710265577 722323793 163310187 255244892 722563574 885692200 58967370 521259287 36987871 473038727 437496711 792065401 912806002 962829964 833405439 974531148 833675577 924224667 944981135 962545344 995026887 998107210 793281587 993955676 424142674 514626980 38536425 309093981 980023747 990323132 413242870 619013938 512729449 993096535 506832998 748068640 198031082 808814173 969402801 989143111 327058209 883978360 6789114 140917808 101457432 479578443 783164492 917910848 192572534 481031244 116370913 430602035 104666702 169954489 492378790 814790516 972178300 988583579 963708766 977043686 22466043 509326188 380725788 870880579 399592451 771521657 30831879 345923103 744290648 822199970 833091569 950600766 281031126 858091337 820287666 869769853 813901389 827717625 856955737 883342692 745005912 938159649 670106249 958464976 597638569 713134592 895290502 949666260 289064057 458651016 703271641 948170575 64784607 612621739 764129472 838976471 986316224 987540516 156139995 692860463 70620335 374345581 298162354 917053594 86175414 558348488 958676084 966552678 629311669 741229742 507489539 630866749 136542729 282222506 111388146 532054189 18826005 934873600 4128180 71913640 811751106 989055931 753563694 952982364 585911937 605258754 618700902 964697759 265452700 579858002 359769975 970368945 71487916 936573733 625517568 999837836 55022664 234982837 219785620 575814926 235266556 339335633 923311746 996877904 523017534 611780174 439238542 449419957 729169687 969783401 916873210 991562751 93997727 472215018 733619799 779948229 660081473 779473665 209150978 782820356 316186578 641740286 13816204 693484784 964814340 965158186 202082587 551126091 673816745 957876155 165972933 280023613 508469129 773275997 94693522 627441802 720484829 806025535 16129486 819785331 831040621 947078968 335082754 393905209 210396404 679157927 905438814 999889038 914977164 971466612 509300512 757597403 693968926 837008500 906415379 919954980 959526118 984647126 983499172 994868204 950194915 997780876 938943996 971621052 779883537 998746346 914900409 966304471 632326524 772306982 586743669 692916962 821092028 847041796 340178419 929292881 269336006 757811022 260158421 373000872 89534914 887675901 686906037 779516309 764760933 921114637 345687790 493045260 733153862 901323986 977979010 987261587 293806243 766040443 273646242 585564635 891112474 979507930 634934488 974284663 734568338 928007498 200340201 977098633 712036914 750234223 546719387 907181095 680034514 745324971 427448167 726962573 850094880 935429994 779941976 970913142 177004441 543062277 205497508 599312165 686025481 813999657 37710998 948264360 183154339 997995484 686239449 754904048 718036753 926540331 276109090 355746913 632232109 745741880 82553024 359469201 815668969 990629796 629670425 875862447 102727909 782716769 227668133 529094773 809320727 952746854 57168921 992256445 511250166 621622477 326091612 336092461 992886458 998960912 4281750 916625386 14585579 733570377 195866906 301960521 88291389 295289477 730634821 808463894 638204330 744376660 190187966 896733388 242777666 835448108 149112603 175831930 78136322 464865451 308801030 409771609 942185784 994371440 945404921 966470825 922810897 943698339 194202027 662670887 349141658 698985580 812935687 927556135 721697123 773230897 567942516 802052925 213686768 565384068 735800414 800327097 402592464 545622443 645167713 750042471 707041042 961095478 775910893 975193999 174789627 505515235 7661403 724112375 123970911 794388413 530805640 952883370 150056102 667893055 613750486 621081296 565405086 825211423 623611811 888744950 901866686 917705959 26105416 163928352 23704070 140305719 755530530 944530638 675306112 678237037 869069882 914084641 830411489 887574259 187775581 977106986 17010952 729674630 264383350 809143567 193464017 501619389 537576968 771406586 407456027 916443976 904336584 957611593 415285053 484357394 159551011 407131084 619623729 660350313 746249741 915884340 869301636 894775676 776045441 970527921 797574776 997959260 52755797 119235653 380239761 654732071 553682774 789208163 367221058 837372409 626080549 973962534 132938438 956039272 357373033 514492016 40737026 198137227 259572900 872118593 394864118 679509863 70176127 126835098 431599352 586137292 914067985 999103446 420930394 679533131 985466730 993292162 266925393 834897098 784989762 888388930 681203004 830919595 116891477 681463324 353269936 700431571 330383377 414838695 427390909 968951075 594392821 888675149 70409221 320768410 470174352 775888218 914894757 997847851 310565577 382399635 654058048 741655439 602863175 638002721 631775662 779853178 671294489 944353501 483885252 767330989 25699111 150661503 477523806 659298363 433469256 977031814 671578273 694949967 152327591 363867890 723175423 776021622 580820878 613905098 204184396 952875829 341480971 495662726 589271293 624133743 122761744 665026798 698006067 913010776 835436583 862296333 594578377 886986838 667513831 699735338 131274117 686197998 8494518 350003085 505029802 534145757 540470148 898300579 817812863 835714152 853438652 932851268 488098716 730798410 204082355 491039999 71702917 288906051 65026152 543982981 780003017 903803435 794179296 989581489 87595072 360303451 736261122 996266900 815009565 859526644 77650347 245813836 217195482 493119357 719616829 892202319 328885799 717838535 927272609 935906218 35896797 46441982 58678950 377051300 277487981 818610371 289123122 910777344 483684074 870096622 805642940 970238798 11159706 655713231 881728761 941842927 511218635 721086869 62185707 544588060 213530632 282638868 889087123 930849305 391676739 625481690 508943166 721101295 662224591 848796064 703424803 890064970 838552362 888414202 73403314 548845378 835711490 932713324 833787676 945412811 482447223 521597174 195369077 309819450 927198588 939607964 800172918 915246999 5103593 381231036 785516248 959311580 693149907 989382195 708840027 735049679 231015694 743433243 108010817 933747466 436742559 717256181 104468945 762162579 445570371 446615251 124625234 775803454 548521380 958089886 58176134 66702177 370008060 501099243 152155823 820891690 425723316 647196804 349248549 355112438 904016791 947689678 188274520 739959032 575790865 883175171 490638536 523616350 980412760 988652014 763780455 882071366 50345553 154378716 550102076 974177872 731184185 900847938 70818481 604588744 914364846 995149127 550644012 714307880 1196942 618276672 463308100 477726312 985778477 994345662 92641363 179208536 192028500 759195068 951112522 963203890 944754912 991846141 191482934 322152699 171016332 388766075 970844991 987384215 948039739 989797955 453593489 587280809 456926546 950560473 274352819 347722782 655366995 802715364 407466955 531117002 692482162 813197981 513454613 852961028 182721825 302143676 541887961 737114565 214782080 924453870 585260691 965088311 580473237 846342784 44211208 714384421 220363540 329390198 18752494 86274324 686519880 785701631 139031908 305364414 760403016 874481989 643332926 906078509 205371784 361278340 71966317 218965635 540406236 645795123 270887398 916347894 356167196 462013561 364077209 927703313 231909144 844491463 336812121 558017357 871695401 913993413 907950872 997087888 702919226 879924695 170661330 902354647 654153282 945203458 241717402 654445258 272238309 697057119 561392165 919321515 432544794 765411792 128224835 880888028 723141428 750232114 274424162 771949580 433551710 910265733 832912610 979539417 975736134 984886385 54476954 100466993 719718689 959956611 529307469 720724844 904596384 911654070 791603904 999661459 982918534 986112563 494240601 860201213 541494488 719111741 832789290 839804800 245501718 906940621 414495501 779324186 522042633 546428679 616593387 809784837 360896820 959568993 872184363 897409397 349998959 569355150 49760375 710298695 761578982 938210709 164573724 184092469 869470774 885603379 294655470 326186835 546613750 825100397 696223016 841942787 513573795 728038670 912849256 947222068 440562081 528773829 63134319 756643165 652869218 712545938 629620059 733679880 221647364 255180177 167987257 379932581 287375299 499697935 315115001 989331709 736452084 753638064 109894937 528501295 336091204 909761443 396769601 687533519 860563230 906643928 352606240 643364400 169695532 216887960 420342924 960034947 54956620 613716833 153309434 877056665 100965264 669645995 740034926 814020611 212069833 772986722 929259663 982186203 235597456 481987766 801394966 967604185 415435475 911876051 483062079 588125608 789633809 899938277 309906680 823936162 676550776 739064457 784195263 888034787 437225644 845662967 681664438 723191773 572508858 790783914 877108223 960069420 40257132 905469943 107945681 242258604 314035281 357816455 652547571 723228888 782428427 846271021 847332319 966131591 13305631 104767664 533324730 934052834 786032730 891238348 495469916 592729323 456936017 518334338 94098949 821266571 528402830 964363969 385650834 437539919 468128157 491569618 180378174 710979106 662618041 972281394 720034177 882529637 444889979 774838230 244561030 817849128 358538806 415759964 532804326 790499219 631680852 804530665 221334827 881421841 741325501 943504784 188452728 590369389 141610512 747577657 349578805 879243106 427011761 575620167 251130781 620977018 477051285 889347117 632510724 893233545 439216639 671749355 479371734 983585836 630691813 676574721 926257496 969427089 419180640 952612642 673664658 984832564 81698 415936178 182855103 326747628 282600405 699335368 903167373 956581921 775841730 806068321 601530479 928305016 125296840 380484783 820709938 860841275 80202144 423600926 514403961 793369931 692082263 914279785 173970524 927580760 808673899 941244748 752791473 809941072 93051365 214508367 346815431 680978010 603383282 861658594 660253544 903413499 282261145 347755168 106685586 130394624 511863954 805303118 472858854 638096886 581853835 830101665 150217718 927318535 787846129 841246198 667628612 792781045 719988848 841421178 881022338 962066895 736598156 997548334 77961995 164157889 340434477 853901570 845726767 980555019 434010120 863033688 90780974 552457025 243329797 914563474 701641278 903973547 409628549 524119394 913194361 964402370 884278986 987204944 614239916 956488577 77605010 881998621 142273190 453532367 861853013 953939751 570007677 606353362 377951138 673846657 539958064 759069922 230105043 582721097 635642968 788191078 242107082 262690062 732213051 848039154 838456024 997559243 125160366 370455715 470343552 757541421 152636998 487497468 957562951 965321478 130098943 718072304 725916893 813734268 359883093 879017601 345196806 878190028 712497549 923945566 941596646 954482068 919407340 998914321 712043870 817240988 286897137 475312113 674429370 796102043 648826666 894130863 188980282 459315111 830907467 943677773 545374061 720668628 63167368 532616939 35883972 219743276 621321480 823821226 369592340 717716125 198979676 436509722 460050670 735553354 140107546 792885059 912941620 987397550 651797383 965761933 165401418 681167908 466873479 589698439 64806580 367007779 19434949 828808839 219238149 631029968 901390475 945571420 733922604 775808171 294352838 849878874 553732253 757348215 490736343 624726840 799468377 841554692 491927271 953197883 125529578 422190276 512824635 519793067 913918375 931110476 272011894 656503534 524903006 701803307 684136775 929168085 260917482 982770226 117508494 510260591 914638710 965528085 170704465 848733066 227446899 484730196 526858499 778953739 995605197 999777088 395406397 778400196 611308545 907592110 854902412 907547921 663759077 740376959 281298624 862146796 784471341 897776547 406020109 768751296 77347563 83258950 810346788 837967377 646915583 893818475 965017374 966821126 566402438 787787511 458341194 838690955 36159632 702253319 956080467 973206388 860811777 893766210 782144288 859558658 78383012 105499936 474355113 710296459 653756940 734934821 663040726 976389650 662651402 700821404 385865733 861536279 23122836 361859368 842246212 886580933 378154176 995145904 819055120 839871006 990089794 994676419 806298366 919636005 979145194 989455859 698206267 787176935 953276044 966525381 413786499 799474706 431569773 732524452 941730427 973634880 992921071 998974268 380947970 736226065 23521275 116357295 505990913 562518875 773386261 889042448 989975579 998990598 851918778 974124106 262083992 766290266 22391803 849671407 628196167 846557852 88864076 418350715 980224300 996989381 799869537 898376088 167811809 883829935 192892775 752815155 907595503 959789535 483110285 636573199 884677020 934483302 917849481 945411303 336656497 440518649 859941220 930228329 429763988 767143425 737836330 775312696 822926530 983286383 323015486 889872510 731751954 849031644 273820256 573074471 171532073 970452862 823033883 870897772 621881897 839665463 100531700 228242812 868951627 935242857 900996563 903196719 711778815 872139735 765794170 782794684 354798356 562798144 803662258 956339306 401455330 911304095 776727645 999343422 104590234 876985373 587676167 592270014 876636354 895891422 229787298 544617710 233294738 502147015 700678825 930182828 463129161 472858696 626495969 961868865 402009605 757100217 822134582 898448900 200718727 329273121 19712228 602715369 82812655 587970004 312177867 879116497 147527742 399019721 276412715 581255854 317963746 562040550 969531957 985928786 616602108 668741632 409072639 647412348 908132254 962357540 937041399 946292026 515940217 853240540 303957844 497806472 603156307 793457555 840406385 944437818 437965332 680336492 541234639 897896465 370271161 539731429 714827261 906963399 7741830 106130921 177619214 504219613 551095480 642536331 809808867 850533004 940866347 997926006 555359969 918523793 122238444 334456480 363892046 429534228 177666886 686882685 982284917 998868601 642128486 644349658 347126041 789144516 893041654 934539352 677355874 731280925 900343134 960413461 109425058 608636571 86658934 873712420 449535300 880585630 860075436 944043671 320731776 411876775 422572099 925864912 257401794 265328786 389399393 795635272 897119682 946348641 593308459 791008500 411784328 679869253 992186253 997072431 682349943 851385748 740947071 818966332 702659401 822340427 842159324 965530416 316005900 874790039 438903161 851148894 527207548 602062864 232768889 973201282 498115850 623117359 623951096 811018070 112803451 155022269 345003503 823601834 782139156 945945942 483474625 633682843 651238745 707632984 23485426 312350139 965912730 972911895 926908980 999807904 998900121 999386268 927251818 975656825 580998819 971244430 184047137 806301099 303574413 640407679 241383617 539796354 801359950 802455539 60030338 268167882 519888713 848497036 541591577 831561050 129850003 948904105 977377132 994310663 293943236 447364212 697907485 951513811 503995167 733083354 354460193 678638865 369155741 653192524 873694393 965986476 389794307 695127635 177266966 732946552 407788207 960239495 724503019 738026046 519041612 848491155 679893553 824196777 649500555 702950990 409734203 432361571 383055859 908692116 685722646 722813209 673444344 808324012 526694473 811302262 264957040 448791472 88288343 91335546 587236916 965145982 532789989 716581604 365804837 450780306 513543823 832707214 401870144 769353665 604085543 640531338 44745566 151061695 686176008 713177528 784649842 854097501 429053623 758236371 665882995 961098316 562489969 929455820 739168940 779621737 963636201 983502608 896376849 899829854 759638164 987228745 601787565 737344182 499847285 517086410 280993749 998227091 681474285 860029252 291498343 476208048 978183438 993713209 848717364 881615025 391333918 966355462 890169499 897631492 528300997 597746600 831681466 836796934 63201157 824523967 261206939 437504004 645099453 992355421 387881677 558768341 727721666 803098909 168131919 457100005 269869236 891177265 102394801 432370936 124582558 948690675 720898234 780056291 670555323 866661958 609857509 730147847 536174276 767705995 388317073 974537078 696933561 884764246 483260763 681550592 108397580 264087805 767199897 784501334 490093216 942395868 448996510 489925272 452796463 508843406 902547880 999710230 824435718 844444709 213314864 676261604 203283079 993569972 645010432 822137310 794002023 944551351 389232177 946519978 155231472 161862003 275358274 417872834 84924407 298744656 472790037 973892143 642256504 744155918 997827189 998092041 153570786 313207976 881656585 937235912 926248991 982501375 368149705 802656681 28805768 53437199 554227553 837525621 780534635 832620349 454328248 550192706 306519841 788087084 192336458 653269898 814430599 888824278 601054453 608351441 955115360 992777512 640177044 910354344 627930646 927222572 270812307 784126527 864178047 987127570 560586887 605226802 987799871 989950224 429224733 641983712 816674985 881938579 74669325 301526177 916212646 985173263 29104527 342920524 663714010 908169813 776166476 957638235 756312413 964583336 263458803 979437845 874523408 912896798 560176084 590332549 773584656 881284370 113072091 590009682 799034932 889700192 439905616 503087291 540646540 585050340 12860095 272418654 258996962 824790010 409678741 437009181 460918339 772189532 305249344 353776831 869943915 955356290 157298974 647439513 746950440 752580589 616439447 994715351 288971247 311210491 693656799 773887354 106402766 707321110 744238954 800710471 211133273 635573646 416903056 830631990 98446493 302295874 97082425 646787835 734980904 990295406 127878626 790062403 683919962 741581968 308115097 345222051 685158549 997531579 922770215 975132753 732551516 973599785 533313639 580141806 5812573 490777491 793274599 919798577 849713724 960483533 727648970 874107372 617869899 706925600 887325710 890647111 558095597 565329349 3154995 693937446 551927508 717896455 237005239 674559989 749322465 844062830 896857411 947291294 66935369 337838943 213333622 909652213 883501084 992007708 669091124 825955150 587106730 800335358 879104229 904105020 770040135 984951098 94098879 551020751 760348488 878761714 955364660 982059772 682474949 740043882 502006173 566379842 628001328 911304070 894520553 901832266 525123523 544258530 668829288 998562204 349073868 922953844 388946568 920826374 151295763 282310343 717097435 722472471 588688687 590471217 983146904 993811269 755298104 972695710 151333694 399032562 813481514 858107369 654700502 784918488 342594805 934797563 705261614 760386773 559906557 878627982 890395101 927565015 988729894 996249493 844100456 903731046 129599541 287257967 203837364 883559231 632454469 784858358 633626919 711632021 119528026 524839350 107174037 553478640 505026886 954720497 863566263 959854543 811477710 838110313 684206024 704139745 496455341 654456888 611493691 862539536 818594318 908500140 581582190 986448235 810517235 900759998 227362017 717844509 955854177 964151485 614407149 725462445 405727467 483935523 734830806 943443597 132337549 301569825 231883601 335152118 169833221 686874368 457089564 836147505 704735059 740252613 341811363 929962262 368113672 713120188 523588578 726567279 795044927 853470169 545351545 653551917 658850459 920645085 167474901 992679609 723116859 759307510 775248448 886663731 203031517 221375791 949365916 997359813 716471471 907020591 634798841 655137912 338918577 645198920 45368142 324737744 37434128 382779586 705693182 831114779 199647205 646103151 912425621 951625368 398311977 471149556 491011588 610083215 926365125 942628605 820098874 859466824 5837669 887931301 947738763 975858674 564183326 895969673 377343108 771226453 904835171 959643700 157103123 706545626 825155799 891980195 656946297 771969403 474819261 882186571 802267655 960810391 131686256 140491552 904206323 996760091 350578882 814890212 833781376 973290879 5689487 404124609 639816489 719636109 598408836 810431405 306091045 901023781 939218226 951496137 42749060 988952861 492165448 578643398 845903989 910125655 978148560 994923062 426986074 814880950 88690788 681747359 285920340 627143786 820611819 825251841 918983345 970945683 43747298 50912674 597883494 629543473 109804683 902234537 962086336 984460805 885061884 976191282 429937357 949766273 998100258 999002644 450265046 694212656 914147726 951002020 449361133 484572507 619727572 937047870 191454857 367764189 39880590 363591199 704827858 739545470 150771432 601338097 700194471 736812564 328210531 749624443 705433552 877195426 181780713 849947027 838042962 978005111 183549705 281825268 817150890 933638847 25808730 709050323 208223664 309199522 147645140 160652962 83515846 263939918 560731953 591868893 522581 207121714 18389247 204946023 824478513 849789804 174466642 523006752 860469850 905960477 796086462 862619879 197815870 938283095 769921600 929920030 915394342 928928610 899798470 925018381 969905274 981056844 352074605 897549673 320182181 922613823 578973022 886926603 567957278 905034140 292140047 990340113 737766648 967271002 452474103 783948719 142932245 366314830 172930704 782150121 295389787 596921095 734821687 796575294 979474843 980602927 358896716 990222615 887825516 920788297 550987085 605362524 83914050 723276457 155091408 818901326 179964087 367526479 927513434 995099916 266244374 883479254 934851354 970475884 196679061 265755144 547274416 780956197 742630984 881334569 485536440 645424811 884077878 985632305 401787268 799465353 164266940 410854325 200118818 887144125 97739423 514050118 522871717 712571491 189058406 440454284 861132722 944885008 518379825 526724692 486861757 750472085 667726364 818439186 961559019 996343085 703754437 788778280 1575396 60736489 907372901 974507404 653149119 771846203 435478875 531485115 864303605 977533079 250475226 640407301 510684104 586032224 832457059 954953478 383916699 631211089 216877007 223947945 59910988 805958793 930422160 998103046 278939379 332913000 913881698 980874157 871926472 876859332 886523942 920583172 27510600 866743507 616271520 850236856 524961634 600143682 224745698 572285814 639482072 857066226 225276928 556948650 959959426 962408552 492565319 648507758 453959186 731253536 733042237 944979019 9094972 594364962 74081977 522008444 412156503 413640719 155060797 579297738 987046465 997620414 920568746 946922656 346362623 867817854 254042477 366562529 407724721 540383507 302880614 374260773 628923030 945853302 721476032 913339514 930077263 944749842 384488721 634683533 774867004 807201353 490622056 760010474 59156825 985330010 88766633 701812622 592172633 905156941 684757052 916163915 901256546 958974207 186139236 905888915 823100969 857142709 156327537 450310958 890129262 914373145 449940787 848224468 290105928 504319971 762824653 763047471 847315679 886059189 440926705 771197521 329705354 363271884 825477684 951095683 362045944 490727600 855044153 855880321 938601249 963609160 98814917 500084712 585751948 716552654 15256103 367901636 111567323 373220813 145791083 755969591 325321161 931037748 111744575 378279166 182591990 857742295 275979999 549994307 481098682 819487540 622154159 967451008 445608965 723152637 861518636 937832178 274312331 738587069 78008994 480512993 137065339 312442776 931236942 973070049 174648772 825445135 810484030 851820337 356141526 772096395 950959694 969586487 620641392 827736794 513520718 580881684 245856643 691589977 327765863 358076968 590945564 984455689 148781552 721883771 800334463 907286758 868540399 888652475 622806420 755111112 126385548 568655958 876928695 896823089 662639471 932337389 744484359 775071207 271474445 358235894 434197953 903592203 694322233 726994925 958415299 966812173 13070543 653640147 10180982 340796912 367735867 518991574 929097788 975216269 120276059 385672906 898202065 994558596 921718671 972646144 810592729 902211211 18104541 91790169 188781845 245211013 100959202 306402419 854460280 858570129 386121030 764091865 780652218 856411711 610160918 989959680 41654743 957068249 830774504 871887318 588020983 942830411 758013322 815941459 5423538 419095910 6138080 793753178 357022624 814724805 577293981 742372583 234859543 855199814 492880295 640163123 972068185 996282530 423023472 971147973 335891135 938096445 735824602 816470548 712396885 843054894 116903785 806720776 209897641 797259001 747967523 966809885 176023540 669876280 647932456 827608826 357301102 758627821 257719295 660737877 487324223 574946555 876104296 994579891 727305833 879146554 360361102 517900281 802073878 888599049 982657444 996016934 636416871 719230247 508296157 636875622 951209797 972815663 63707042 455142280 919881953 926682101 620992620 818017199 104884400 138417959 505764383 655975587 191613971 517670138 157541918 535719779 566601210 803837895 357832915 367021364 604209701 892852606 630097259 884406566 980187867 999323174 683849536 921530559 960280019 994665382 783628903 996026331 870810214 871933477 507024348 731487725 979360808 984341649 266698387 812235815 849021945 980797199 225469137 769335800 557077189 825512654 880100480 996022626 468768035 688698347 541771587 789631272 507395673 720965754 228093443 616702667 989329464 991341977 555526871 763988050 594901901 899086250 259253742 846262974 851577812 867431105 869035946 990612411 907933764 988074221 438328621 781218491 713813743 947887627 858239602 962321655 451678771 745554762 655068019 710692099 419253609 450174221 460657008 947056847 427001866 498479573 201211616 896421724 71081052 963869734 541722823 737228048 360365761 705030381 9729734 99243948 186195805 659420870 66895732 950664213 714982372 776378569 494810236 908108119 148423137 154869245 959513797 992167165 779342914 924572097 861191689 916731924 756440981 820469593 475923062 532271015 382586966 789115201 90388718 813122208 772541312 958129086 119910559 652930642 391847500 454683969 139477653 224590776 869407716 897472760 78538859 321796460 595747451 677347250 506411518 959188616 429158595 836218977 159555809 510042284 759595918 883775975 500782687 769408430 475457018 801525262 143011930 315988207 221147854 794590090 220520316 424222094 182677105 902075806 543315319 999691810 715679413 976480906 104006992 282871315 834615227 966533362 22303863 996805166 759815342 807366114 672682202 684511246 340516948 475558906 693695051 802927960 906157269 927910069 181307988 557107074 936726195 971457788 136837174 816374658 873578700 981977387 966913393 978022511 447753569 562448053 172407519 372190912 763639826 945891985 762115061 994070403 269093580 342986001 100604800 766842834 782570847 784333533 704573173 900633372 678271055 845603976 463933687 519553933 747463300 935485904 156161975 181275037 423379475 797468447 372299570 885663945 683022978 881277202 280824752 774671359 869918474 916227684 950061333 971411265 199778813 956598740 275986727 598329799 889395429 953340940 555538764 725511369 358367632 761087251 696565334 719895137 794243861 841868914 741128533 850649827 307244455 585204970 699567711 984796424 195266952 931466034 89531259 372963541 775489366 946917544 151323318 161952402 758861992 878564842 935305292 955982067 275027997 422177496 978177812 994471489 205639135 897528087 102409639 339903267 920379049 940022403 485757616 831610054 877891260 934518903 582747665 911118532 919782686 961992002 506518912 742682954 780013439 884677275 98203767 303341466 201362455 319251464 814056897 908997216 358881415 610887856 390245510 895940364 334281695 978647388 485839968 622836473 533384353 675324000 971685317 974265941 258839141 622510196 34336261 282932373 34026898 565308066 354542399 801543920 133154992 556615136 418561447 737745905 793847538 937244060 822776415 861043602 937413311 942783619 690025549 982636261 83046436 598683263 605369807 972542960 527898269 625178027 919940716 957356339 327968061 859786018 227321557 514706154 338936997 582631650 401272428 657394140 180418749 648023352 951589707 971098238 698369422 723202740 40776358 758615712 502534567 824783755 910794174 929753724 226190748 719669404 25066141 860746377 657332849 690699053 569474803 874284788 775452761 997899576 520571915 956724284 309912959 980126047 970104839 976725224 28614477 973718989 210119527 331312540 161653482 963781983 514696145 673424850 423883794 792968150 107272439 551088619 166189578 699408365 324485778 881109612 794793651 872983888 572147824 743139390 342335387 377839804 668012911 890044469 84632065 684461826 137306635 879103710 226679495 311081581 330954019 687786943 279408207 370585768 760544822 774471260 170686390 272778525 549474115 571344296 780594676 857548301 382745775 472569605 591907880 867543922 866641947 954373526 991544320 998458485 444071081 915394003 136174597 156615945 718473335 813738454 651660876 907795548 389905577 877036665 770113884 910252133 150450793 257298074 633062765 811267703 187017143 765096262 410506375 445747897 914961492 956048417 876874860 986615831 660836112 817682789 818528027 821090781 570094170 653879732 372657452 527172943 700570109 976710388 251353722 648242385 814820769 852701161 755466833 885330900 477149426 510696198 810848741 918471125 829441271 954624595 214754151 655496770 936284574 979472241 332136295 913135324 376088901 420931392 475784015 551889745 72913311 535586634 131908300 601176788 883037082 995914108 265800390 668020066 969288676 994898481 86695226 344749591 380399499 800253806 950832703 974241046 539777433 631234814 262730829 557824629 137340832 431915688 832855706 837226110 149773043 470492725 757875082 846144942 332348851 989334958 744876038 946376765 529072385 766586176 240687401 805592741 575701774 644715875 674130216 772492125 679877344 699045440 756892485 918636024 149628561 421442662 12004470 685895040 480592175 767016260 83887928 539177105 707378520 803092012 27690457 249740577 118696717 990819525 431358348 754698632 182926624 757440826 477579596 627663962 385175005 700079169 709469304 926647925 183166269 885738577 299319435 399318996 589940319 962401772 803906042 907469064 982314168 993216279 58148250 685347302 533638703 597658867 298251247 901330352 441804918 498318485 521937282 891488718 36533149 448586358 752356719 921683201 779054521 958499018 709359637 905334609 108869432 989857239 879845616 960165607 131147948 926287769 830631815 833362982 833580720 875253808 905367266 966992191 13452019 670319525 189413608 416019078 266625746 856901104 201423232 594974132 648881967 758834531 563444508 709581688 615997552 760041901 316418993 381327538 451889303 526289713 651298575 698457521 832031138 832308325 819750647 931868114 843461996 921026238 387296984 616015541 781990475 900293096 188059580 541708903 731201626 799782639 963937843 968127668 203077682 685806959 711339465 986074329 867452185 956855981 767013799 991018442 630741265 816353819 103324257 823751776 474595946 746106542 815396173 936383258 458564131 685203475 88082388 718836977 250222457 922579081 684444793 919533263 880233533 880334132 648416881 794499307 472878692 974799098 450643962 889532783 711138715 744719309 772953172 809743689 865784993 931589292 91549849 147103499 594226273 874640401 3949533 377786981 60549954 785842245 341717850 782685808 910559328 964852428 176274412 214268414 285238875 567852303 877007537 976245974 273279728 585535265 293120067 382182588 510006039 885966330 74376634 266559041 220669707 838142906 925658483 964102625 890526483 952900568 544846663 938998195 444334693 479856164 506347616 648657292 4059567 595452971 781511973 853082457 162766151 659164759 289493363 428797591 871021770 968078099 694056814 975124170 623484619 999291052 834841791 874621017 819596096 895971283 474589583 862377466 252866159 360160491 678077189 914261490 59970000 755564835 971372535 990766198 830786852 945344545 840441963 917860230 164591820 240368336 463858555 685795712 535630423 815158946 235595976 602121256 922889905 986014349 357910273 849530385 846266107 934167061 142649413 931711189 92824358 867747125 681942400 726942642 11404272 217261162 68354023 778914861 741505807 975162266 715959802 728513117 580669267 895579126 576292438 999715605 190899816 881588857 103158539 877105804 696468754 817020845 785544849 997019820 271317736 935985444 909605940 930375646 11970293 317404494 554317103 902216264 915308770 962569881 738279102 798832845 87392927 795675926 717482289 748460630 240276929 289676310 61386301 932807737 788321324 893231796 323853978 707252737 462889912 571699696 920212722 948877660 77982604 836219763 772894407 943470768 698644965 975817788 474930186 565302330 969458113 988496504 983139929 992710727 9803626 844530748 468838397 695476514 287145959 809846501 564095908 687506703 942617008 998926721 843528247 863565447 264698951 506207047 977444741 995195338 10139591 419178989 156764552 171286283 849453007 914880120 655579657 766786746 799649012 825268915 398867900 721666290 654319905 827125565 4586585 721216603 56584060 251099512 520631581 918732081 461110073 817376061 859829449 882523195 282806453 793173449 605084664 978199548 6322589 774288377 536899058 543826496 381657151 860240726 838639005 947557810 534808430 611389121 472814230 628429426 674945564 738943281 482778127 880460156 506135248 663983321 250046652 689179160 868580835 872310871 267664843 671984942 459299558 769917199 532164861 807596923 761797048 922667941 807757603 811583409 282065252 713368102 118719798 292651901 936209982 974751184 706701097 969714988 606561183 683370596 627746576 906357419 869865551 894358503 690253763 765190429 290949399 555989577 563469669 812697627 885075633 889395583 432009730 639267221 895748564 896898971 334070861 630204745 11204549 970341393 546091516 957175866 973347220 993996156 33039738 168322671 29670932 410503291 762573044 967210341 673618501 897009440 698968752 746315010 788052044 984880636 611353437 805234614 120742292 315617361 962915744 969729382 89744233 547284053 655838347 726190836 16887385 611035706 809767025 993522792 365345430 677419280 642742118 688636808 577117964 841500601 169593397 292630320 813971797 929646703 287304011 553135509 13304883 340403564 559927617 619198451 182905080 805060765 129164105 476827867 612893975 682761881 650344397 779732730 465703975 502537059 290330356 454814139 250032187 398059695 989777531 989848799 983237048 998432660 227909708 818706705 426014606 990948280 965232583 966439291 361367738 528742211 456879501 468155024 618431294 975924156 220924295 962889365 724251364 775042470 771715318 878089353 485593236 930067514 699340571 746697312 923475322 971424946 36735820 488805773 410866387 784485461 866954644 882580613 891983245 981902209 141539294 416507583 463149069 487023353 232390736 444943947 957243376 997687211 508289584 933713177 922321013 988512867 804970598 814337951 121224366 989121962 864103769 872967535 840962527 960376044 577325953 936895146 977550796 996264421 152658871 917897139 236090496 303518600 870222442 873170328 630864001 727725540 388740723 472876538 411036236 929156067 657577873 768893708 432105358 507082378 286863220 734173949 208187546 794223222 148924768 656898365 90143333 715131695 470641552 475802853 752269754 809478542 402647516 976894773 856006711 916669198 537227435 898961699 612095109 725897232 587753734 647302077 627831817 640799237 955170935 990411824 646313984 741334214 92361490 763033079 845751701 914065828 980867158 994941440 364695945 908245505 486613116 998323131 923969633 936194544 945819475 997349151 133217191 374561501 48221427 784458168 912965255 990148322 738325891 759741644 898807342 904678484 93289224 714088159 247714357 728266760 402421944 721697508 669968946 700283258 586342721 990883051 943797517 978746539 780005804 825617178 455026704 685038237 477741187 905929548 204588690 642739140 145997528 400629105 118083175 192359830 559372559 797347430 750409456 900031966 939827810 987483822 878285651 948278327 715142757 805941867 644624278 719841177 467475247 899718549 591636134 918017157 779657356 985046889 624814017 684402668 103635528 890593332 900970759 908444689 598601380 981457454 791429268 936818063 465413784 522576189 93965841 323671240 149796968 624206836 701137759 843090552 989709820 996683998 909633429 950914191 469036247 991731731 208266409 351014280 718101329 971606274 616496144 673871334 283568030 730553335 278403460 461809443 572838681 937831785 417051815 559749456 892261203 954722522 126259971 583117734 794390400 829396124 730014784 894980388 318343361 676593318 606640552 845163700 644225986 793400406 583177520 797530864 563518067 738802900 422693621 496615714 767209077 790751676 316168689 564443785 601365324 658570326 868150210 877600688 26438375 937140227 340923862 817614097 564226669 801242744 717906287 725829612 297426180 670847981 137106075 391147331 729948329 831079526 648166521 910057299 291479559 652155003 398926018 952961357 300078881 404463638 749482322 928924122 675083861 797911394 688893101 801538105 319087592 728208502 612603703 964888228 124043318 595570342 184797064 839264633 302342808 534056823 849652282 998641340 281787503 446040887 980158739 991743173 42962022 589390050 463223882 996202254 334811116 764279110 713127434 963116398 692945263 789621336 425773296 753955506 260524538 529706557 84066301 863474160 26008739 377397047 786477742 911547128 335869728 623457090 654492427 983347654 43554132 634945358 832427009 997909309 677925364 846699297 133500904 489817944 703875440 729566724 855915605 865726934 926074316 970090218 766158016 791872698 973533289 975494629 365262158 672370539 671870559 749295892 170668244 329571151 231735973 863295120 874169314 972605571 231712203 833272939 371594874 998023772 263985877 978385113 444607575 636552378 499943869 530024505 785599651 832501454 352638252 905943448 171752604 715752590 79393546 970216080 716319786 790590390 641336689 964031191 272927227 921664046 135262099 320149493 418654956 427092761 319865169 637466955 713124077 797935638 131180046 344815310 742464396 780747645 425710661 680155615 414736256 774870837 373970838 904410634 959463811 981001633 834313450 895820921 143434588 248442402 777039685 855286501 977307698 979462516 877908793 972787699 975668839 975827703 246675478 306143668 153205142 971291696 714903281 878623034 413632588 606087434 231074638 480542043 91808140 328918931 318038752 654160480 238205540 803548451 242990962 400851946 797242497 959912765 356384966 694652938 625200092 981348733 46718573 255999616 735217968 764511565 884195988 902616041 868087808 956563220 340704613 892084675 804674993 989684435 964368913 964707542 758789642 792529592 873058161 914773284 706076903 841155361 733575250 837555411 427020530 966417792 48358291 545985838 356166451 776236902 378063075 719848200 851490365 923899447 369355355 376689295 819190237 861295177 390604932 592602423 816077091 856091315 612982501 648981219 502241921 752308705 196567169 294231451 557320039 698834976 30016688 184565054 785964986 797371893 641220001 647091267 624151679 884369282 456952130 720732505 964061369 986740874 959619136 994431877 984680958 987630093 753409232 753862923 954712239 978920174 281824650 874653879 235037143 642670327 29341673 476840943 785710103 803193174 854385770 966640133 280445043 734842855 853932323 913944509 516890205 960419301 526462387 535254768 733294082 823480156 797813474 902163965 481330309 746122376 220501251 948287522 406093674 685642069 790822907 860286614 32325798 421135477 392984545 903891266 750785125 991607058 922516641 977470895 943145523 982965749 287347432 962655334 62586107 569606823 451121689 857614801 925312279 995632506 977379981 993272189 257213859 795157460 71621316 787165773 975250778 986011078 414524622 915608044 756851557 758552179 567472171 734927693 611772164 961858812 724784258 858184052 943402061 960703173 813353446 922325344 952809218 993950247 82473526 925827215 952443654 977800291 576984738 971177001 928058492 929890971 855210265 993531769 699084945 718591374 249791239 780417492 515211970 848390062 81757100 215798920 475579724 624502973 433524593 867518750 936502491 939628713 325138347 844799660 997711794 999324050 41256368 745280177 107370955 676480526 134528737 817032872 899701270 912693029 134966088 152829070 982972419 998910145 834341999 981871173 664565114 790808355 721039310 748683443 506308413 546112427 929439094 963095448 916890628 945796456 380730895 519005234 804457342 828651608 678958034 795414667 289596488 318158047 569962635 996114215 805084692 824335598 614966092 883935045 425528685 546405435 448571573 600309952 219382458 237478995 861339469 949505999 643158109 652515515 547327939 841869856 626421238 893843037 808016441 871406208 552671881 856066098 949137138 998207093 426834305 547109855 295855699 803807298 904488410 979190603 926776672 996214626 273273861 595539921 686231919 893855971 753935347 987993036 430948137 537469944 904607711 940252407 320466453 989430599 610599249 713573762 414758927 627595666 891749504 898127101 264350671 500027205 5023361 212401332 28411632 558035512 369992613 754365094 940246573 947646465 999774674 999870323 559829949 661431046 132131849 846228316 736166061 827736383 617089794 619093273 371961449 501033605 804012174 933868102 751520878 841643401 518039329 791967128 751455159 909077916 165884159 240502178 841585456 949730009 727418614 828209268 106328046 178933934 132356548 507189825 448110903 898430031 653565275 667525894 136997113 999218215 101570572 382251247 659385838 745877940 269524022 512027788 751142199 806563318 370457194 541372107 370500719 654230301 98379286 692594647 996460030 997179173 227726009 235775277 866767828 937413810 486873284 551676060 357740709 507390073 890794892 900465335 731618710 921628586 288561856 846044208 727654889 836925328 297760799 336970497 858936522 875990507 153024053 365072816 86511860 606456031 662241912 772636640 650182449 849886862 318637137 624093689 668955265 785619256 687926527 919890573 160915009 519769513 824441645 910096927 936367210 945413993 966165615 966976108 888032269 962524862 345012032 727490552 20894801 477523744 521138589 833001839 870707589 972185145 696557602 946442577 802525722 958972271 347402875 999638087 313836519 345948226 97402330 139597307 800750417 915185527 291733332 787961817 760893676 903077733 993636570 995182400 635235680 714590124 111845920 912961083 406026461 561700619 20786277 266114351 618990195 792670294 248622900 980932836 540925094 654632565 626453179 667348031 732874681 938280085 907720113 919569655 13050916 243938053 820145076 856637970 161997398 203779216 365975045 997700243 73920762 160953580 611146787 810371626 702136540 771312095 633092356 885200799 940556308 988339906 324766310 393276029 977421479 979326766 8161141 259191473 974346018 995917493 95460160 475239451 513939916 710725809 324497926 796143463 307383839 404024723 427287142 836790247 310388308 377547898 642086941 884093379 667471905 949518707 647360507 685339201 889274029 962604582 485536352 614831605 848337214 981431407 544271501 768326266 669735942 899167996 503777590 900610910 988819116 989128127 953647709 976142055 377656618 815179476 231230066 903122010 363192453 703748379 461534786 695197175 864136486 915615017 70029393 484442685 232013951 995174899 421749063 564452420 907969183 936222217 179810293 623808565 930085144 931683148 378716952 663304525 562508915 861912164 286274749 646930440 570112290 930876128 20383119 234455382 749828680 920941723 182634042 214760145 834886260 922126034 610516692 992001300 293949119 904176701 823235870 871676479 289458541 409418191 17780506 553450032 254832894 861630415 458036526 650015962 295667445 578236151 461851599 472570978 320544286 618734416 987002026 992999028 387185338 452481197 127063675 747575621 850027396 939655163 514602876 834157182 312000868 939666118 526774992 633835015 585851440 989666598 277430971 978895953 910545454 949643200 820045083 848139459 909215666 911695379 532907352 747291667 216428084 689534984 140310657 347911822 702676156 996278446 461771275 899860164 479635506 911902744 441805135 693782278 812264120 911393058 991208678 993518512 816946352 817845783 882868014 915110542 105478141 353526571 56098284 130656402 988803586 998589636 496049987 563426197 435552977 864948754 14954482 282188443 998484443 999615704 414779535 971531982 535938225 607393775 730998326 948814164 249244250 354712302 737751266 768449398 512926496 853822914 901088998 996481486 339866137 861503795 153588527 193376617 155464360 687603594 722097320 852601683 815304539 992576204 602213242 866512864 233229655 501371181 692401044 914736569 416741878 610573630 827880369 902309512 478499693 916595916 890597942 961639315 258903506 958387172 443845371 770818245 522767582 978819753 518850518 871424625 594916032 859285244 844790433 850253132 529722771 738400520 655601648 845298604 489097420 991776963 700957829 803968809 978151288 988061181 419272758 616413924 497084711 601849288 520350346 910021675 599579048 849420150 589456600 934072774 884013211 965078717 730152080 799197871 905890053 992094422 796604042 991441737 669306504 901836226 586158271 796961408 965483716 984457564 981203768 983941860 902401742 919605516 966262428 995612811 879784600 941857229 481704856 815583720 817185413 817760420 259621509 487203448 913738068 914272408 632724661 800673433 371397877 812010713 416807302 585591008 586416664 841483032 3997561 912048839 565640807 836549943 720404005 749820828 259983765 854627845 851451006 899500087 675752339 894951250 834437334 911649519 418651113 626796997 892576857 996750155 571379674 773488012 745064253 771074851 460015506 613165545 230110735 715936263 447254046 740290841 595113538 635133135 286782346 445619656 684180253 931808677 444763443 827884735 987363840 990968525 946993649 965676520 348920690 787530198 97221460 833567211 362922486 518223728 989340895 992920583 992303019 993950849 349542078 527179395 279944635 930511384 867933627 960817505 128843689 436500680 846040344 853477833 22677428 771423239 806802648 893085674 777091722 847288591 280229382 561839237 392871841 501014702 815499511 875805356 164525248 925312482 969672802 993689013 990763397 992318461 397104823 482025278 732908322 914556104 951129070 985327273 271054237 896346206 169981659 627943585 269354708 935408265 491669102 502305782 828864150 840218225 85324621 564200258 891252409 894093658 556449933 757021327 658115462 663654492 396758581 937111859 33540760 592221080 844265300 968951987 970529003 982977250 377845830 806090927 946921304 997678819 973389934 993015246 365420022 868418056 25870966 847648988 567517852 989109023 954722063 989870208 45927832 428512953 179148837 496072981 152720352 781850095 581283971 917487743 883064228 999625393 828414820 969233772 989576600 995155990 122466233 487426730 461638822 892255817 125912735 790556295 824655552 877020515 106550571 927235603 503090342 800810579 854261914 924640920 298743231 357969404 566760833 674559492 666216657 799642305 253340664 312872962 531825625 932472960 577386335 968401706 801125720 961926923 725002841 814245152 286006622 348135223 754048002 827621378 257058009 899470145 10623665 730638013 15313558 821896452 778194925 894945646 575794663 892416792 410598128 960070480 431840453 717505671 284353222 619294554 364507938 776176217 239525436 931950440 678823198 741941832 447942921 584354944 728264492 820618139 573099168 671950691 905813449 986541667 996565136 999656924 974616784 977844632 796691178 878038981 69578645 109232880 330266281 592948166 625433674 776156011 723530385 792983200 916810933 961401044 497240152 777832297 477036495 899006066 789903268 929570319 454655449 833540233 795781917 909074159 18870595 800785297 548752924 560145294 113997995 303967817 364052906 818876544 924696331 978239028 816053895 844979510 922009214 979193963 687929208 688016555 139079479 314918981 432099175 530713107 641611261 793773184 990727362 995479045 956997019 958208048 247637417 684278590 290813820 695402982 280823129 553101140 280543597 665290496 836627919 873434052 678888266 855201709 919901822 924607119 289943911 508058443 503113015 972186623 38924441 901415622 693337481 752588801 744945454 954987614 284266461 731255989 164326743 745954971 681571019 982071517 7929324 335409497 637422797 965642932 879946252 964230091 116277523 574886751 802267771 816311102 447095548 612395031 938480800 982199886 984499672 994059345 528934568 585425690 770891531 895635499 390115329 677222074 482498403 696491131 719077921 951655045 957777565 962484323 605867028 894555386 858368850 998421229 423245998 520067769 604350754 979655005 855543690 875061286 777655543 798101552 952900082 983396763 868211797 883110287 664728252 820261720 563835238 777163884 777062118 946884390 68790451 525211033 261883832 334785875 652177116 874400878 249808807 967511281 133073534 590440773 408940643 418124049 326128749 606747325 393704018 471682676 633877882 650060978 552204674 697559891 87348387 652356671 165826880 615594089 681640365 894891570 775567203 804820914 89228197 992556513 306640749 817627781 258500685 691959286 667624505 895454736 630455633 854769390 928134442 965602845 85548227 681478054 169173172 418997523 17040293 575868845 702227598 939232853 54251294 71459538 718006028 852881059 527008570 782439517 16098917 398069506 622942106 648605145 238531190 369462023 240983966 924911798 948643379 974666474 986671831 999121814 186913642 903655222 966411633 989238733 345547937 598937692 3320362 114594516 894502223 914319639 421623321 924884413 227871723 260229664 69210056 788856630 168746443 839921960 975155950 991851162 945902468 966193155 47179041 546249274 324417190 947728326 727750237 788938063 585602806 756817306 390038553 780329910 174323944 941282860 804605906 964064957 831856186 934159334 959975859 989892239 560691666 830065558 647898381 944528286 102561198 648097887 495022892 520318642 198405600 426744659 450333067 578411625 677223417 851123785 197153179 700553889 199012155 249331068 213716772 699921976 737529638 846441552 674671755 684268913 452532386 793046337 515912871 986144856 320528786 689646717 386028317 657337917 59160529 499361974 470011093 614517836 630206899 716685601 519474070 846659240 143934716 528224820 453499975 885583005 184393491 423536801 539278541 677873455 333280916 929499660 380456683 654871809 903048509 936768153 548523937 572278358 687289740 902521126 570613621 649552121 200368805 618858629 172246791 774106260 162547675 434051536 831443199 963927663 806342279 876067271 623938336 953785965 691682974 902904750 771321931 800511810 221710187 713062961 720431588 767703749 10060449 686626303 106854709 789903467 869558664 936337430 317829591 687542348 431756391 591320576 797175546 840567615 584846241 682669122 301190838 580569907 795379120 988226352 661676925 673698802 973929657 978530925 864879253 911908425 826409605 948999755 745058715 809073140 732885298 856237974 874422489 982354572 317883673 371260773 625257198 879785582 482548792 520524271 946283615 983467888 503936365 889191086 1554977 228112337 925806919 959815863 757331701 843464643 611865404 718612500 178891725 593224652 785317284 831630135 254857345 613457805 389049915 452455525 660613519 715187330 423192945 796805050 276706617 402809678 706998626 914138370 379310260 559542720 770500579 831307108 981413829 992532148 414551173 950415027 129022258 345309504 755361398 817360118 558145852 649243157 489076452 497250680 473568773 585059596 967928107 986283472 112599173 613795157 161123429 438088519 329379232 485501211 262812763 431737269 735134786 841043549 185214316 731444840 607435461 987638630 246518348 585258968 646378015 775858675 59905124 293091025 247201089 929978489 62962495 425449118 187314020 694221192 793163045 972205301 816074334 820803208 714389695 756007460 32393948 810056139 123628728 488787870 662154536 894535877 704825107 811739368 430118911 925661725 673008166 828770079 664442724 690479037 387508081 769184445 565651943 763572330 234971045 865193558 728567689 825750102 822708028 982323406 586752509 654918775 898490090 952779722 814362300 860995061 778157598 955176772 628378210 721926013 140324030 858157104 787037452 900063749 113095494 290065616 279096192 292275167 757319370 911573155 696588922 753184968 514258330 541010525 903260583 963496299 379707139 947822645 193228742 779310257 347608016 687478994 854360187 905480535 670022745 888100953 13249791 681389900 288392429 360142403 507308958 951682815 454537788 580202975 813613108 864013459 670882042 938276095 433986529 726011999 876029464 941976092 256987358 279406835 148413968 965897394 26927926 439186958 986689950 998514440 726737932 860533034 1079598 145413895 378559706 972804643 994119946 995728707 656048776 656091525 806123111 969657135 789081465 847424830 6867773 238059455 140116804 451699352 425310470 899150227 120876813 413002866 839104553 948188171 967460727 996311348 842314886 865648325 434364345 630755006 996474787 999984635 591013888 757526230 475159169 553888973 404619120 471309930 229055217 315259475 173563547 776246573 483836555 566014809 893538506 893941120 41468487 255796302 174384021 212986047 473407282 798402725 890699225 984980829 207811167 938834466 984889670 985598129 367111151 947538048 135855452 335556903 753783650 995843845 13170219 186514120 925224908 943236044 753457969 761463709 221668721 778634538 185489749 284691552 731869591 948864123 406737515 440428600 884692026 907257456 979380791 990064401 819646190 837843918 399266346 988288820 108594304 792496126 383481460 468789799 841675850 949046546 721437567 849498990 318528394 450575677 805045447 876333199 651960730 666125037 1039898 251756823 22326330 315498763 502040158 833023064 532566186 765070186 181228948 202803293 159723830 429072869 864099228 908157227 391960129 639635027 613801406 723834267 630566308 835666799 848586161 860438491 395120903 811967069 308329004 952700392 843740422 975784072 51141627 465345162 860553455 954746283 505534647 754962247 592185480 669719522 670853965 862377803 699592906 960118480 479607493 679461071 559655463 840053126 136764757 711448795 135265045 303958766 313369901 383288864 829856562 831342955 521382526 691570835 980238762 987404023 645751928 745273007 104250191 232060968 67395750 628532428 511772880 727243499 916214119 999347528 174612625 881819298 430471019 854122153 962514501 983262813 842991439 963065443 151427422 849662931 602614844 825458827 369818964 402741418 14974017 287419559 758056368 807911028 903894377 936564501 970175581 990416129 402899033 833650465 767241020 882462472 28300229 163195980 562545860 844832931 90302501 168392146 776208465 879685344 163295231 799937587 253306375 732148673 532767428 704142946 2163060 493674896 194664412 855450094 769876388 845359364 496648675 609541192 685779135 712275416 574558004 831039645 439109701 639772245 36855366 970069370 142390180 775103019 712909862 757176799 562875012 775065452 218887270 267564700 904612265 941382797 869154423 879751288 810607993 960724198 103166301 671719906 728523946 825692069 295136988 815357151 689397269 754369612 8259954 707146084 240438009 926719071 490942425 581537950 159082468 576983045 909523668 957184598 381631052 439039107 232414742 853336588 417921086 729599519 946555954 968651236 541170027 906484174 712684025 925106872 522027041 702680439 967815157 987617951 18418483 891055036 236975477 416626202 101141589 440119432 250407840 769675832 60097303 490211388 942771638 951807486 683178854 744621354 861872238 924828669 113490591 349172337 820090244 976820969 809498659 880936141 160408539 317473428 626899407 831086840 329163314 854114030 916679581 917882271 566902579 732499582 226194133 393683262 483294921 852670583 217687998 813931582 994307399 999494420 951157565 987665353 739494917 758879671 266343314 840644887 14232004 288451930 310805996 876866029 14746382 754664216 4618719 970326932 373080790 849496659 407041465 556558397 906863800 978525595 459106785 685232922 389482539 676065368 532116009 574058962 543321490 993321859 795841259 823833715 48142290 299660525 231468261 784312112 362173949 739577665 195817408 417514684 44232003 517226676 927753375 947488518 4740882 935592863 68344574 489820536 130853852 903971581 231233299 862661374 453123566 578177986 49795721 304300576 60059688 572797687 956111388 973864326 460164101 898962813 918203418 940241122 941173486 978755558 672355480 734147249 258983130 898427539 709338498 834228960 442731786 874477712 431368389 728930419 146995818 221565910 464745040 615014345 46248760 377610069 754961301 790707807 391185468 403120881 212304028 973256941 787281988 993210224 897881825 956876643 312640578 778243830 936042624 958849654 961586366 991054008 438720911 738892972 154052928 538317297 100928780 784562513 94844203 190390664 139785704 745569908 517363487 731092227 218690281 818804141 59870975 823071186 613748222 679819848 870226152 945495796 938028022 939861283 604454343 711175297 423742677 685735439 313426446 730801162 378592508 496505175 244456690 635111235 848433408 913926231 229472351 286514184 267050289 289823669 532338650 636133874 67692419 151240248 988804527 990563886 362522778 578359505 59209534 437411256 282266650 831030493 54259530 933082632 549233947 822869919 852844011 873969051 639440968 769619834 512825066 805449389 795502382 989514969 192301487 968906497 870926750 913797071 512828918 944024861 266539850 505572301 828462477 983690291 450487782 500817265 270043737 374848269 457210172 683348595 422845870 983752278 766442367 859034390 530966750 869577491 341838374 545489796 460759930 513311543 108216379 846101019 732832616 998967318 552616646 947471789 428464437 750143401 378588390 431931797 817154241 981012949 660222012 744002639 472969583 801960315 788619849 853961252 908445393 975278748 687138436 934375229 943991909 992307263 644893138 713359126 243699561 770973499 162483559 812875301 679583530 905694751 479409535 547009793 814711709 815882545 117790439 885601635 567196003 627595276 948703158 950884111 38310899 892740486 866657326 994189635 314197151 731777826 348008047 864508062 125229388 130974856 906791600 982548546 983634630 988860275 404185730 910835665 802083685 848103396 146538107 272731373 386925014 889510414 33733234 124043801 140433687 595444666 36876932 719061210 170577707 680243018 380953963 561146086 257147044 718428563 517607847 918766774 957013457 980389361 969998314 983196712 487678334 606625206 57146641 305714140 673317217 945337005 613578362 858403484 354030481 735229198 572285566 908110161 968841352 993696030 850955718 969049757 541841470 612178993 925864391 957516514 759026267 998012920 315352002 809909656 655565000 957460026 881078693 923882627 859623367 937548138 670273739 758376127 169432739 801027182 558588863 790775056 582167601 782536971 249076931 837746771 266214103 642760789 958403097 976780252 253889246 973774288 285916040 817127364 536773146 909519368 270430800 830270039 826661947 834100588 583908537 682872600 68899517 776209744 734735040 923175013 39370000 815868513 139413693 581881414 495882954 870887230 283998966 929671069 36618427 100974493 179940315 627552205 955751498 976153539 707170420 791813021 961466965 994648244 930233548 963538051 332668457 853636535 898710482 978649705 135986617 804750092 606143044 821735424 750147430 827134989 377951855 386616325 593030556 853503731 760680668 965919014 892636892 956014991 161641426 176022116 652162050 715786733 116561829 773889851 224056450 871235647 73543048 291105769 132705907 426601491 637036605 933379407 771807901 798821528 956100615 967682494 174479112 967602668 104136047 228445085 198084329 821500584 94905714 288410396 101581620 514989286 754236293 771993556 816155940 847418177 686055747 726832251 626970582 671004769 747350060 923344410 207189744 233523089 886457558 949728423 838407505 844517685 675642553 814359619 69190433 122211680 329313612 965408644 851900705 883918740 349473483 831927755 80775947 138987639 300903585 343089750 519895833 690771991 57790552 661603083 388882304 685597607 955595404 996454061 526392953 870952612 171144402 548715723 431761603 768693632 816994069 821231018 17748360 796802055 806608994 934443972 118711560 423523103 24640237 650648568 181217678 801985491 258791148 664939479 201264698 588418900 836735791 867343657 850951468 896981611 94662739 853804169 137672722 157993972 601099963 615656292 115824652 247010571 571087510 623354842 699207767 726687388 123294851 660472887 245013710 971359415 722694001 992138368 912518528 952268786 436218737 547773270 164109150 507116212 785707704 866767224 896023794 946187757 907101419 952878564 306337678 441521860 51977415 200859117 68256968 730048152 408182557 999071687 410075040 984790544 451862175 823031164 911192635 978210379 526107413 831351857 52486221 858940827 399948630 643121883 869129211 992198969 400425662 972987570 863987201 939907250 952542431 973709573 933172188 988475373 93017981 519417513 364460930 380516558 842060456 978546008 294407155 670839186 532481640 629408824 503774006 951624613 316638503 731805407 554112607 794366383 49736435 641534258 329199103 347343357 327649915 549339738 895256832 910434607 132145512 546247066 642121713 790521882 353315258 498185450 261536903 945613264 982191665 996406196 151830283 784806800 118969361 160285043 643437235 662429964 838380159 845259871 415160938 771773532 640956422 925838530 351483014 374996035 936144628 995038803 980453749 994521237 68258133 729208824 382602894 672410868 751404218 752064168 864684649 919946295 244241068 930117025 79728289 325614889 649415090 738765622 313887789 666876052 173887234 546058638 24951702 479943100 425443023 635074609 920365849 972614503 445105428 992926781 819393760 987608602 429354656 966119799 882443866 981400923 913674939 934722580 403975992 527158892 6870734 584015397 51604479 766141260 836339089 881278994 807863325 869067921 121387737 279878876 449170714 492708767 574158237 731334051 953935536 970992201 198211707 324925878 44899847 886738268 930873389 936281366 686160521 777220644 217923154 916236416 304150445 358408651 130357822 802785261 14509609 602064195 658717997 713362760 327335975 948611811 509704898 594888607 633008594 768063701 125531419 693051291 869836599 942401807 236489974 672447556 227597994 653659804 968171535 995575737 498154457 570169152 318679286 710802401 386603954 899024689 783273167 888203630 770225908 826110850 389283214 451866397 226316749 872796031 230647367 655237305 992903614 993147714 407041211 786801483 345479886 857761683 771538975 807591352 166451743 237650475 774665012 900712320 211502229 553474828 415243136 507446290 903933254 933558242 490326814 809911014 149654891 684493427 464338663 722870109 70875205 775656038 339153726 579596870 48833256 134714205 396647233 688151471 999691078 999866335 462534435 840408872 173449963 595981894 869685994 885148955 228187653 974404372 656193410 927372980 668551277 904027517 851439220 905344717 99133034 789952542 371904415 883611370 853072457 991071504 897477703 984833954 239977872 623856204 777128726 900494271 132290943 279649063 696500170 866232908 43377474 657401493 548243040 805012702 255742584 453411955 853507943 899895019 801070646 912482222 267391221 786407020 159144901 813326835 755480074 762023012 119622715 471569549 5784105 382026599 637126706 925796507 490061745 886845321 438298581 979156515 452584959 651494095 193893131 639738147 787252393 838212341 536056103 922529330 75319028 674368848 764247724 898563721 215752386 677822465 2384376 124727753 674211078 807329589 417720869 929249342 669801340 736646434 353127757 357161143 471303481 572389700 342037063 713182077 555001526 662288143 722884004 802944417 682824735 873676193 979981188 980435754 731247910 862508831 825344533 826156382 958325802 981527186 462671905 823779141 976810794 979816418 585154536 681299118 604707306 960835905 836538477 836907781 49369472 576997450 614571064 773488723 177869197 928218740 520703428 777114373 400347537 847670375 570644941 940452805 500635288 602002262 100326416 136919571 217936259 447251098 686860279 715742013 474702461 874438192 607931797 733293338 134985632 568704630 907393288 933194767 858641638 883907690 465732419 931016351 901963988 917932544 188457756 803664745 589991448 776890206 530393615 706117321 250119054 912184801 990169967 998361350 472721783 955602858 568802665 569219759 319581993 803830404 443220349 805778607 791296554 848569490 755149344 952361321 131420968 753189141 215711793 511146986 822591328 937258534 134762456 161234234 318644965 400566883 591037615 934102399 21110217 386512299 213931534 760132013 623147193 808362192 784208531 810364377 389628822 425855044 459637897 848919823 746987330 909032885 604812552 679610037 30446528 894951132 658567548 850265633 602307066 794551220 68309905 449012427 271334225 413184400 330838814 626239503 185342310 454639312 135031906 637610678 34871711 942346676 165583938 505744135 526248990 811374106 142310118 872742525 543011203 870230279 400206944 997598100 39132953 907110057 933897595 965651233 650974327 903558571 66476718 592917309 790736234 815722094 149616529 988623954 690414250 981253050 847941004 915289489 731810523 856829178 24640092 152437331 612643345 912005618 1566011 546575308 52719198 434304922 710167828 938929209 104416855 629144967 867223122 979010370 947701145 987046800 965555405 978492695 236367667 878858466 721509879 807962382 727866132 936072695 891225520 958865121 649709375 814863047 186352977 426385243 999777106 999789444 238262649 724429661 250960016 665505081 700463757 775509825 343342314 633985757 902947735 963941003 779269797 815336313 366828946 627542488 949193020 963414470 429200351 973953025 758062043 903751861 252777305 721381923 480608583 906288165 229308030 700159425 477555677 497702433 845358767 942707875 554852813 931627892 989379241 990615780 498995196 650285790 896759370 990727033 837936739 907227130 535922736 805972621 289591377 750496772 754876851 897108748 615810607 727234528 462806397 572964909 713424124 905097191 960754326 989099129 643337841 907977935 111014203 949012335 961500575 974987899 972655271 983265520 207497272 235006630 864930825 969370113 969607588 987739186 637000263 981220525 105150114 201793210 826246930 839834675 471158642 527095656 987645953 994640319 26946376 862105005 226489782 341538285 123951284 194172128 818647465 876801826 33482107 359026345 487404134 856252545 30018561 620707122 880488411 899425480 440775554 525916535 478043994 805779376 80760111 914432984 882399258 896558824 233939144 813639974 309194793 332839160 50136113 414689850 573229120 785747272 878634604 946788541 438823575 465423034 346379376 578755722 767213087 944911411 615280936 981639456 385127434 965059518 658580282 895987929 813021576 982439260 869475058 983506382 924707737 972540307 828210378 863502438 826332330 947939416 739770608 853246871 365998742 430085617 166135168 352687817 160339852 609202382 764252735 808049802 369023268 747737705 403987697 598405402 597053050 737519061 946822284 990892317 62556793 916102526 729253070 774606651 961925878 968034522 299686949 790641615 356479118 690748930 508106230 536058261 657322402 718570678 11842681 138399773 886524254 934860807 610456386 707891335 650779249 712179875 573531300 716190347 754479478 763649875 856597487 858750263 339659182 873386482 859443017 888687990 110987611 969340531 503494495 968944478 513129158 613454525 253505852 561501275 998448738 999169402 183184354 659798164 318445129 690900135 580544021 817834225 905581866 964904714 824021223 930217910 978197348 980853676 545511777 733045137 445019394 642043608 654319354 970175853 739881044 799264973 848718349 897138247 819759094 936199379 948244938 949703249 981142521 991694262 291113688 316660403 713135499 779013637 907004 631608621 947837778 998900837 547035294 620041832 879332617 887046574 337940363 649738786 124893298 966289236 38788757 585422735 362425800 485112849 797590879 992238465 639653710 689043637 865592838 934357235 115034310 639853490 288492144 482342485 439285188 743124717 229852308 538998270 976224546 995800150 400309392 844203603 809636865 955448011 133587802 498935415 840388586 916132694 286742788 681778836 102214948 355456434 910634844 985412964 993616504 994440184 467417774 847572139 995571414 999630168 519203119 571399746 477619726 896739867 260124428 387395709 158201697 211207675 448885297 919714048 740121660 930706289 994657739 998061888 394216906 782220760 913093095 957313023 463216770 593531396 49721119 986621723 480220339 907819506 579461682 752879735 973844038 992944469 934796801 969291685 668105495 759836497 519740560 920319260 934000314 991742798 388625951 892362342 65134080 439526718 679674654 784847930 223649176 606283215 916381630 970799028 851339752 860253522 130818625 220535016 745605841 815061892 701157029 946132471 167627393 179125663 537771653 965055592 599437879 715511164 315820347 346590906 717421390 718700709 436995006 667368864 672370152 684489211 69949368 359589625 409769440 884863318 196774043 425295260 609034424 970185205 289326750 652638551 395207880 725936387 291486562 999664127 479605229 881024663 903538193 961425775 146147952 570422216 29835186 208613994 319914705 429462207 925030745 952872086 627194105 715125505 53156776 474728678 947588880 986414343 309858512 600433917 667053258 859786922 215166696 959148858 701114993 793472254 940694196 962090769 922434696 983636443 149326060 868758276 909592411 939003887 255729845 395281950 194446074 336139442 578454215 788710439 479125566 494101298 900883920 939861773 56857286 914591765 22994169 640672109 47325313 995373620 971201614 998649707 856194924 987053749 280395508 726673329 505797614 634749727 439627337 905212659 499774160 628231428 705761351 945223058 935595434 980802287 588608088 927730157 6928166 860310695 807649102 936947143 615608256 907827569 208282975 264247829 281353415 896483719 955774923 981876307 509300259 866244872 773501822 792516989 71751978 686271759 524323320 896662683 315735904 877980584 9410764 536407623 280960998 675649665 968795412 992593729 731447428 897088240 596562585 992388118 50064933 706317962 31452486 918942852 864651195 946306159 13475129 424298109 740576788 997236457 560444882 991934828 308832032 370859465 155991299 944774174 62588061 343083532 928309448 963398486 424639932 880411362 22494497 980535687 296719985 879722233 272595330 584253319 307223190 798189454 266520694 317636386 844682705 976622956 737575639 792469283 446298520 804460838 187035270 384073235 222272068 927197032 229110975 834794671 358766541 574884242 372992850 934692932 752165875 881819737 753437036 842442029 305762763 312593214 997263385 997296071 170404331 873905481 653840336 672648824 262903303 322089738 390295078 682014660 155723154 720886607 54217479 160818465 816350752 960068100 416806791 798334455 996069014 999508118 881291103 960818838 577400287 754332662 330127543 732360414 165402031 405222513 971116008 994337925 341959090 772600763 8803075 993085316 892417618 936602563 320821601 385824159 270582233 297693507 381993169 511708178 570443938 985752987 328547632 937372298 747978537 889531777 594583898 751758983 834872285 965901972 478633446 861797199 625188961 647342467 410767763 933886052 974267971 992299062 821571100 834902745 865352878 942889918 373373959 802099908 590289324 859314178 877140347 889445587 730422657 965201037 157681625 496609920 667541006 926078076 694918311 732328309 557708963 724059513 395891828 634599941 546926642 607425834 614741101 657503153 938318826 989581829 934273817 976971598 289896966 918799681 10941961 25058497 276265481 590886657 236411446 678099183 734508289 897512139 762263340 839764413 625188624 857794993 462740133 597481669 248592345 942325058 974441047 990167219 752904730 975798355 216159326 955916240 462558088 934152029 480916859 790017254 149670834 973395074 679532961 683420720 981231973 990044188 552721159 664177339 185924323 287037784 300548998 532140836 765630674 790392292 360380689 399087160 973117413 992283576 172804779 298782723 21015865 904737861 896505951 990638172 320211057 414331270 415930666 562840818 529724320 882191651 147001427 505148168 331230842 913462184 643905487 731620348 239167848 574769641 322964426 713717030 601746416 682488010 944417889 998863370 853372793 875073970 472835695 574947834 200747370 348629112 788474748 955890035 207893817 873265229 892452786 950681459 337131984 951459846 684504094 982595826 107575017 357570477 798020518 840844726 70669740 983572016 952043134 968515192 101775925 139460176 684333971 895011055 921533980 980185546 2172153 632307227 222148773 525316665 715667127 718502298 706302860 819981585 426952464 700048058 869374633 893055236 782718587 965745706 951599478 960139472 349860596 585160372 127494215 605013695 947487602 967642077 185926361 873195674 122202665 562367317 929668408 988653578 205830378 844408174 39190608 910418051 601760047 878039363 294201873 593243961 623099391 967798175 149970634 550060958 309774294 695585402 484180477 621621264 950227040 974813807 905956505 997230550 913826082 927608426 177687922 611533112 837705555 963539862 17874595 819333010 988348311 992524316 512090000 601037025 788124071 891503899 685345506 847398649 319810922 541079837 829802451 896995636 811682339 844630639 938395658 942921446 696500931 860256056 545349231 820355581 261524299 800416528 336174269 949377537 596165571 618615994 788744695 950839910 301560108 569792202 502349649 541442237 60488159 766210171 765337706 997095256 293085509 813748970 628520279 785005365 777139808 864868554 372693934 676465501 105204308 599264336 985279507 993178880 804234643 965060073 660815484 788867434 219519864 907451335 969559916 976767801 894105854 952659738 966552099 997522431 401691456 498807179 884701323 907018291 533391943 909118863 674140386 913342019 60879980 906339258 757087645 901481403 88365333 193123693 64970791 91285320 45804493 237155133 42655102 63056380 234688078 446363335 57138052 124246490 262820763 928360942 767630316 889932530 10488391 92574752 46735533 140988939 911673955 968376570 551479757 596900949 235856452 895328196 408793146 567467030 588849193 749901957 850545005 939952758 364353404 730778445 33924668 170346275 539053481 696425383 157792765 551753983 486370319 713398046 799698780 965139214 581492676 671778301 287360040 515711997 30498532 201807787 991209046 992068047 157239615 585847885 793174979 876576801 895667641 906130273 244379444 731873109 478502981 709343767 886548966 983888058 423671941 801685002 145251432 191109545 295571008 992939089 711714651 791386542 816953045 960701804 636374612 842301654 843541503 996629182 489038875 854396088 407930767 861147123 221045670 703100778 529341978 546106272 438077357 839256970 787216152 857657425 119260167 564638276 707656360 779814476 457550397 589846414 911692307 969258008 295484624 766257161 372826985 692599347 854520008 943243377 580376470 603976847 578539812 660636573 674090705 995180202 649035437 853885035 143194749 455160448 964517565 974849403 967269059 972280770 734056694 958733784 284523543 809776157 203632257 835014036 74647883 653508082 869235666 932498709 374161381 906592038 632087523 732743623 894361737 901276668 398815720 521580539 230759938 717243686 527637392 780611061 237903256 723964022 105198029 405253937 983752526 994311494 416164667 802018396 58841905 787221059 706812172 898899956 940239894 973188008 773715862 933921232 558597176 972782025 5467542 447019706 828338784 926949618 810129842 857089749 381246686 773551067 915452743 996374777 928174519 989996107 154107348 488510371 755065543 896110174 22134286 922281905 729331810 777255764 778570035 852321249 5058911 526252111 413858978 658733139 673671931 909499100 831867526 886675688 707211918 733150744 771776086 983860560 703293903 890826889 715989921 983548152 83122891 116016714 90723217 97684366 47643889 812975226 311910086 621151207 63572248 539321945 46338531 690047698 190253744 272220202 950045658 952731084 531964156 901954550 252513867 712158593 270595880 777638326 982500606 987243325 92156312 239227908 952260974 961015884 312310709 938336407 326898487 874016876 435377034 865602018 976477098 999629669 997317821 998363657 303758593 603189346 400945510 613596663 613104249 934013974 253161310 316075062 34379469 488853373 459735727 577862084 538605526 683693272 163909219 454892221 532167705 909718291 303300422 381410219 80517159 198147562 904474442 937819411 607565759 677455133 995099517 998872534 399475674 989837722 796850149 885047632 470626709 494905048 198108823 591549028 865290212 889315531 105330722 771213153 525695289 552255892 633051992 906686019 919697238 959818551 41009608 573789016 49852552 513997378 642442723 725898943 864816004 994131809 328761212 748440560 899933716 901040951 153875411 838309198 657846882 780110088 765253964 955987883 53924683 246205550 39666581 995340517 157987853 997809988 484383547 617893024 388426186 416924627 376855828 784938805 203853296 634333439 353461038 506572840 582926825 827981501 793553859 994955741 657298013 891711903 940132640 969746968 551149801 815241748 764623667 936089366 22250683 73122168 829031516 832597031 936802028 945101281 211232339 286712659 706498280 927492913 813036790 854594340 929429463 970601262 791063224 895390925 303958513 525320612 561810079 681181022 141110028 524978688 838273416 984838996 765901872 995050233 631826283 966359669 747140114 763319890 364660572 466746259 966716447 992359664 827986205 961516426 131676009 706918498 227062405 995550595 117472269 868660704 425114246 511480350 385470065 758957426 312237134 322196935 831821997 847578676 993523049 993793959 232850310 888261715 866813881 896793329 562949913 758142124 579096455 701627139 793521391 878384045 446594803 687180125 694731704 986763154 914330149 916192928 120975892 247454231 485296425 589482390 730080063 770088403 959723236 970227185 882471693 936039085 348329584 481165199 682644744 694142071 692879341 861119653 396427964 477073060 630029398 933599977 798800822 935906842 340115045 884989613 829832139 987594181 964687171 986363002 62022946 192786437 641552938 990032619 278809460 599281117 502355450 839094934 948534594 966834337 822061042 865252844 273746075 330493852 675784804 801486294 226084605 998212016 483125495 851362313 767381592 926536397 552629307 817215357 774052355 914428505 555704971 930402836 733227768 749860065 637578407 650007379 325657066 825992148 589058622 690389206 779516443 924675451 262737361 991305408 940288047 987520500 941543883 956684834 369680932 828801369 181062803 756954843 828869270 891459758 705868577 746703030 277953135 363043973 858589497 972055544 769102027 864168439 298238405 342540971 269336643 373998026 341993937 539623637 298192268 523541061 231302923 960716538 56065290 314847658 439485717 807979735 39090973 977921619 357734604 870169724 247071549 468566635 658287257 880135137 783954759 882832051 729470665 779780829 666920126 746863828 84206601 318261429 289910370 792081198 881022180 966036119 822747205 994560401 861952639 892145728 127017346 909857925 715406375 796566068 962572793 978056687 45295872 806389134 111799005 202874255 638205219 642051611 300526670 634342311 836264637 969986122 159504465 180909404 216497175 304797367 152884172 565980814 656365805 815351548 42700269 759063221 469388358 767756903 867779656 893269380 604957879 732218750 235630383 871893650 811320190 875848590 428056243 759455971 388646273 405576196 930490701 959951432 532815987 794074096 376871227 832836100 161442199 699016653 755193526 773074797 206435595 687668729 593605007 978264594 653143683 871407635 525422042 543488247 478652494 645639345 721734574 885429024 861755843 914000519 447665248 612294707 411927361 473460042 356104047 552217801 36166108 89180347 902544709 915172783 659249365 894240334 372759220 530088271 632173665 685911677 972479721 984465473 283697645 429105011 981279092 993850621 829670664 900917241 154010142 452412382 750841279 833669352 305243811 688740259 543034156 749625463 47131399 209793450 131936807 433090328 771461454 941019104 557347435 798120226 226672414 290298333 702354296 710677152 599368557 884798172 671285541 933225409 513582273 594807777 486810830 978738347 448787531 509977451 46028256 543424047 771195307 841882087 118586072 814854184 319913164 846417212 945928800 963616003 389723938 794819188 355265208 729156840 71323657 130177570 712885436 798617492 878508185 998650672 553800728 911157260 382917886 445815963 107694727 384494244 279688840 299309688 562336879 767576273 535545219 882551203 933684971 983835623 721830407 940084964 918044069 996363198 172804319 659836565 35572997 479949676 797327032 819720164 944980375 972008294 350266090 957218023 373760601 591040410 934683253 998997200 494493748 809940845 95520432 628204343 220788818 462892932 728965420 753330481 562724729 973350718 791001510 912536503 783179141 987357541 167616081 477053398 970932820 972829878 807942008 815990260 354259865 518722636 867489323 894637176 815101916 941920211 540836607 810646380 166116772 544863860 644469764 738558414 153729461 850048780 484039749 658477116 887833028 909060386 815874399 819179794 360354583 530559942 189813348 823275142 223373272 855228998 199150742 467702298 274753249 457416254 119585045 863815264 448392368 869924282 772289504 873928019 327892391 699083115 670708314 886972802 791538531 975573090 102047999 412772048 293296595 732542336 804062685 983984657 685269566 716398276 470810648 640622635 130748473 521993525 844123024 963727787 424711353 852417765 1189777 497367217 972978514 999501992 133720085 785762501 273548617 952447868 780223905 843455792 81048568 696483779 268350536 792631445 908345389 993527355 260446152 605616613 738955879 983418650 374730781 834326517 781512787 785861846 700757000 790020573 546721642 605269892 888390669 893353467 669151167 872670909 735406973 889388469 150430431 651276270 986620357 987254137 794709703 808256129 106473055 824702639 742057425 934795800 904792725 966031674 657013095 960002329 140686180 414460808 709430888 787397941 550341683 647917021 905856848 965393285 931697964 943858866 488704977 808057394 759083338 973362294 877255089 953014852 548400076 917803044 178857570 682760815 868097339 965361936 586047089 784933287 488519066 824933289 180816312 335235984 590285447 961469053 557171647 739805145 360942850 681594001 932416916 958546621 448577069 948381335 767859011 954035520 719384634 755586389 720202298 784314890 691331534 734776928 935707748 945580474 660918517 812085171 755304890 907935142 998763297 999329640 264991007 702346920 805740745 822120861 172468995 199159577 638444314 792552581 214280103 704975316 984122272 989598521 992230253 995974567 289279569 915252031 112316746 982855950 646665994 891323357 605036464 850270311 990521708 998931798 383374682 852433386 341695747 830100356 462817840 785474958 5412017 626264660 782062095 972803712 525208506 831042442 574913787 877189602 850548924 928929503 987194717 996944359 67831454 967306835 285656567 291752257 630638780 659351908 76592395 511913736 577723509 704831690 849787332 869543898 8056044 657313939 93116124 149483140 106325209 138598378 16877335 228026774 298683708 623264782 254441089 329914087 552917243 817692026 30776753 881098698 926161375 964252998 630596338 766977411 487358183 975415908 794161476 881722739 701930130 991986726 330399911 747016451 297824643 606248082 683441913 896483941 917457112 965334532 413850312 476376289 571394872 852180111 928437071 946293426 735226699 745905136 831211626 915775338 918614906 990570375 227059674 448470941 519940235 618487823 525219312 908927165 897572320 944208271 189685756 423942131 20427035 562069650 169925802 441738642 559192569 568756150 153438196 873394922 34699302 724180044 523547357 608850703 500534 873243904 69043923 959792905 249768062 854693411 680997507 868761572 703197904 803759311 69965323 236783223 911373081 929882938 288418421 477930308 978570355 984041086 877616786 980301992 640586695 730327056 622127662 740052552 512775341 815757026 782783311 912540036 899470970 946383220 312233974 830563643 394193913 405507697 300778623 633172824 374630027 967318086 823139082 903488657 368897014 477140154 620067586 696880621 101684300 644770762 686693129 703450440 563349868 776300111 981873666 982321129 433908694 630615528 577140790 819029912 135967960 544629844 200789275 297012092 717154442 736053655 626787214 822777271 742900312 963356303 41920998 64498999 399507615 449951547 614413153 829225397 498316655 877073227 267440015 274740411 345011023 941650890 614553088 889517929 416510262 777418950 247680729 442441852 603347118 613575545 916669422 990415432 715309698 793537208 605998853 609395192 157071183 361035209 384181704 901569062 436600012 632301839 7941412 132468150 67922972 88457293 475780516 734341649 202244679 556358116 169994074 919269977 203518898 618019828 339450567 518496678 330855761 593605951 136249783 558125373 822144951 841281041 479818587 809111186 848093812 899046144 321297871 649893839 430778634 580689301 474448621 990176599 837974382 950792183 199215421 979885702 523534256 556275097 64670177 545904936 268216222 435565501 812683555 974251795 101810179 248458285 852742796 928900359 245866653 806707267 442576539 503278970 147551414 399899606 916773767 931849288 178080485 236550434 643912217 849151662 213530713 500872525 75437270 80659533 120959288 187361870 759282446 915280810 580754604 588207343 985690502 994640438 15413516 571023487 480605492 702230462 253799393 741707529 252835601 463977608 76567846 783922150 638022548 679197707 830834540 851205680 195127772 337589053 350442518 445973389 896245390 960152067 117594765 291431786 752491966 811849975 622673117 850398004 535318692 589498230 817754776 994757434 554053187 966768627 949439987 973860971 972615482 995758753 170392516 792252275 551508399 821784331 248076770 475057422 732857931 774170623 282233524 461857923 396120951 514951437 476897675 544633588 128171225 803117584 556361225 835493412 751049790 970424934 359098711 856990315 461141009 900187830 231395184 851266421 549814850 793821124 35952236 284982395 508358380 989393792 132163236 935632839 880413250 956692894 560376060 901760498 500037846 799537236 647097358 970699128 256130587 742288351 75511350 371355598 792862675 852296342 907545548 944523090 651895410 787545032 667457048 831469868 581147013 987759792 384140894 939506538 829983914 896969761 677269439 695807342 65147927 300074148 806569896 946865671 452558811 639023279 926227879 995041819 454103149 599996103 906739533 976191348 123003848 564527254 495860542 712108054 69020504 580296145 195909066 226316756 715716297 778832766 299234547 469103633 144291958 188098806 874021233 973687486 60881959 950460056 549740507 772941538 201383911 796501451 734177335 974810602 369291328 678867510 999654839 999716434 653848602 779756843 492924397 541088530 662706431 971949415 736954272 799005741 772146131 827625764 46716599 226267291 154415575 705327151 110027839 332316870 247038690 805693439 982946249 992746941 376252444 684468301 231641792 558079203 84009551 878137222 935220664 960141054 408993546 906591042 828321822 879235819 943527737 992408078 257079582 966541328 622981519 746689408 874242032 968335338 194123696 341733091 430930498 469935603 138121932 285546919 771195317 989348175 756920118 877503366 421810284 878911821 224158307 462986821 10057733 729396527 916318675 930659945 455386394 455607459 425762569 427265757 812809510 819806842 197185803 335905002 945149651 985553444 614530664 754849841 276639957 728461971 380424454 630658603 395760094 798181038 527037682 696013589 352082156 864443878 119869196 817282720 147044634 642595465 431773145 753532930 269099807 481710552 322323369 932379257 518865080 739719186 361860037 640165522 952482174 966626580 990351507 998502438 313674497 949119755 935433204 981530046 309432291 585833272 697675418 794508961 600237859 832799285 618062425 964093887 519563225 725080253 208558741 450434367 453057440 548049669 179407606 822469621 670759972 919270046 867795236 956002958 825351109 911212942 674809541 837053330 372545924 420284789 846243782 959212061 950188758 959369262 386603013 569040790 506656229 596188695 718915837 794390290 828813456 975269970 285715130 503046692 940348815 970218203 926685401 930944931 520096380 576318904 703772856 951621377 641169095 924149138 294757012 850038694 540769901 556147114 687699962 859957478 424058089 696583625 2060439 569046990 292932183 962515334 159751560 440747006 562732254 784088748 153969588 904544574 846712235 982134618 566876976 855784838 792226602 912758297 299626488 559349899 21566128 826223757 200043061 235291614 995259583 996331659 159684190 478104525 253483694 581926659 318499046 425055440 788921228 916262475 365283509 780623220 896699254 987482657 478745878 533903218 596200610 761860477 207659929 879629079 974281338 978183622 915998987 927845375 454966451 495729227 222859180 930917930 256571388 550962023 201305524 405063485 887834917 939312478 825589329 941720382 282170472 529768692 676589603 857899297 501223734 772888215 393788213 576282574 360509648 533498942 644276301 952142708 129691404 680626373 33582663 355994205 655897838 879541650 278284946 915199298 67791166 641742889 178387943 507123901 349387585 675291322 360120685 419791766 430018582 849645227 955098280 977735059 340307437 984423985 282926779 875319206 400880343 954204547 746451180 815232851 612871914 826135665 637754844 647165777 805927139 982155926 696751171 734401629 898968184 964470199 323566958 323978258 617329836 785293481 640916477 806813858 574743552 959455061 836082329 984412096 680247090 971702891 853213931 965185017 649352741 695496155 227677583 684222879 580297367 892081412 142567213 969797146 738966677 984944997 190950241 532835730 88583510 669566889 498641529 806726461 396198687 867575981 332082603 409352111 17311360 775872607 580856795 584946125 600422299 872541741 948504731 948598108 235212441 644308888 143977012 259189793 50032230 488779310 558727795 829871678 746041665 982025321 977957422 978132024 718162900 777119440 695234701 716448485 494478650 883004778 672651748 898194909 242824959 492136581 929026486 961114656 667537464 699912122 709394 952112561 372275647 774494056 752190831 805100434 334057033 858475999 246255640 652889651 230696293 877624323 145753380 460096785 170113558 590589615 8774729 203471136 230685097 599812090 841050260 887795843 882616513 927143892 533647507 879026463 470258916 630875165 602962729 900174394 663509027 808483906 237878870 454308420 482514430 865428280 828380929 972089675 773921574 783260068 852324541 976338808 755158886 905023643 942792028 951015504 349550193 491159387 568351190 907511015 205415026 788201454 995171776 995683082 754206737 876043478 197347677 314000332 156223089 835522375 803896336 807643749 599395165 893168795 932139349 957623016 623122458 769309374 713439367 938256875 698934653 987973931 148392079 153564235 691696855 819916766 800245870 898130622 415165411 870919144 538520448 874034703 467919959 847813614 191042435 890368504 644509581 998794381 368189936 811153753 309016949 663316165 119556 331686603 557386092 626200346 336069606 381814089 208321530 419948434 90060230 251550152 184380890 659321727 885141226 944020138 52965235 63754550 295256015 692156221 94216317 282162422 282328816 496239736 67010457 747002479 729711277 883099330 271457379 948562460 305346074 517156738 428259898 951034359 644431440 695130058 541619215 801188183 465048670 942615850 53627543 540157132 801052621 889801423 232591971 807270350 457566622 468595113 991863091 997274572 682190151 710119916 632698730 681528755 299535119 408319687 400104213 508064712 470242436 855267669 572743454 722018686 626984894 653437181 403087491 697059902 91069975 639888566 358881892 365408323 726817467 908677999 681390231 777388894 382708507 789614925 790963520 949299795 321594860 855317626 471155451 685414682 458514470 617899590 258327462 619745653 344553320 930950368 187034951 756902656 682199410 757748323 313534082 829731027 41531805 94921694 457453587 858561225 400160367 746544519 711257541 840324793 840932920 936348450 714900120 875772881 629103665 797235054 507055221 595120569 936420985 965350972 965236902 994254520 108635195 938290951 927396074 937583273 192748796 646982677 323255489 848027313 684501517 769014339 837696613 973270458 646897528 904943675 651541926 739130191 174935546 210983520 980564752 980628328 361934006 511347768 786910720 911116573 617655244 952402446 174980578 574459749 372077731 571029052 755705342 758141666 270868979 863989755 134896412 419005007 180165598 879218519 118976048 934595615 625627088 768802605 965873463 989017296 940472004 983583096 787830479 910652789 726289393 975938688 585702757 643952820 326279445 828612683 140652718 408790090 185473919 455675749 801099906 949872034 483763471 887306274 586723782 889081237 947058193 992436630 290379401 886064283 77083764 915712799 503132865 713153504 229209912 992932081 782218939 988216627 524617313 659053603 851494268 939571825 782305231 811936003 879173830 918726641 898167074 937413714 299828097 781166994 211853459 273586041 747685940 938778252 947886275 969566510 570758759 737109932 180146525 642927756 849109829 980150185 912944973 962642163 641106968 967413428 15005936 78112010 184697697 391124833 552561340 972626933 809113035 944308193 234243589 332065289 752420917 876609897 765868977 890732454 946006585 965182714 963825994 966074167 748209702 952049558 826322643 997310076 570101506 685954588 674372431 965785365 412479469 474397388 457307591 881930494 686697283 778612526 513503043 563429565 11947037 897910888 700688571 893772316 330390277 724670105 954636210 982450436 330736485 883462144 10283062 766201288 588993667 610228519 851248044 951136922 136107466 521428153 756830800 984083150 150073384 399482818 987649361 994419682 318542579 820747469 819321926 986697263 266659048 578275587 31393171 316302192 625737489 700307415 493690703 694595800 911842107 975261144 260775094 589544375 605931962 990178725 166190312 845153450 889973523 926918630 741713006 937921207 566736306 859623687 464393860 831813154 540080760 850751764 57694142 185499629 222027294 585180557 807264141 811338353 281068409 625440433 519999565 631855762 911190183 970062367 783962812 972785066 500378594 821156596 219829161 676419892 671198523 907631472 740364485 830403194 840451385 878448793 610801298 923606252 291825910 730211320 375375710 654075070 814053169 862939487 507720710 822243326 473997401 586620494 598800171 723714549 251498488 300610928 94287491 729074855 399660404 410882693 612500496 932763000 357871288 646533815 44713798 45241781 228089066 406651698 717615966 914862270 623470769 919450221 5884201 623118860 878705538 948953941 265087014 345245336 381093705 483629922 184340392 827390965 830156733 834550490 161901874 986679097 130348134 176600424 947355755 990362377 355446218 664563118 275400199 842359710 266478952 435847295 706197452 747092200 373929420 813029759 799151280 800298964 301141574 450871364 161870966 517195204 761906379 872522423 173163328 750618907 24137405 516288831 963434516 983370952 578491609 924112225 755334322 982594429 28226155 323365189 243216157 702896206 972834380 999079227 907639270 968363813 555917026 754465537 314305849 976250164 943711481 989737817 35322666 444912271 937155144 949845416 949392307 989009366 631185675 990654498 389896340 691302823 566329448 927012968 541823534 634881300 271379042 342506212 25400363 536229037 966423596 968585440 335743874 408150966 330794358 561521328 810841668 874380023 745966190 978664952 766876606 788245478 25829432 537765884 185384854 411535053 109147619 563803564 897590942 999731507 245570660 264310450 70435714 132654561 971766789 977583478 772437422 845676080 603229185 759583820 404796885 513790905 663347162 919339090 195953097 280357683 450789335 983782619 829095606 846695095 584197264 697113261 810177440 869281988 2543316 144454885 874898330 995604278 621744658 717859145 928189187 981303014 137529134 747853758 777983058 807152874 768095009 968200147 613691429 800291250 331994634 422986626 485955330 730610482 175553237 809530293 110051020 338263285 898117866 969865604 481199766 984573582 852136314 863059814 243345411 683546587 427037274 883662987 532069308 944560203 329191499 720999831 872216650 985196312 201708052 330213079 961965036 967505592 226315737 669791595 913737930 914752306 587435234 960043647 405243096 699361671 348034822 944773261 783501867 867575720 232360339 562032380 762869926 770097122 912815487 970735390 883783528 954751775 835703073 865027238 933732872 969796146 322027153 506778421 687767918 905580099 761395637 890768607 35929950 516195696 872375 550622879 578158594 644336776 40622745 473781452 96021666 381484109 816809405 864926279 937582906 976853598 911966442 937914861 167660122 576446519 917216165 977323959 488564753 840420602 740314299 869990463 677953609 834641494 756809559 762020027 374828992 626539019 692342030 882356436 598505084 840797952 240639920 769649681 653361453 722427966 158161466 716941422 548400460 984578475 260893244 458088128 170133614 435373007 173178654 718743648 730998578 930789158 388607862 879636885 363304471 682830482 964034402 996244285 498569125 721497689 646542855 885404284 537915584 642109253 901125204 937415999 212301626 891586003 798167480 950952892 183931846 497063590 983417057 983866512 437098354 953573227 299651053 929793364 975000894 979610720 459875370 804031398 516477899 825308095 613207855 818393286 628977985 768569382 974691746 977359227 428485655 932183132 662635466 680836324 587733174 864382303 477789815 906501903 921508977 929186210 200644011 783735982 688044981 887418259 598758227 880863328 474509544 904469982 451559234 639178538 531283156 699261043 747179296 749405295 134348422 453962070 806236485 882880918 510189097 703639257 713574141 816351767 715104421 970576906 224702789 583211792 768965469 884856823 633339350 706751041 945464002 977579876 399756964 656306999 196179468 932972322 955047441 971488390 613937562 796837511 533654579 738885957 179599072 930056423 183456663 731730375 77000532 883921993 115957591 805035887 880073337 885400224 59518622 733400057 891996293 925574674 23528865 981448443 524807898 571313642 6627186 116628909 181165561 355850854 603740841 952510513 935006489 987516115 785949667 864860310 249279187 684804392 318117220 496487898 645882213 800848227 702670798 790222825 743902933 948968072 300780314 807075192 381657619 626955637 119449673 643270486 103858052 290131147 841044822 944395237 382376631 879930738 753361725 964795910 350959431 548896718 795814364 856110823 577897856 743732560 938612581 961228936 95697841 946311416 584730241 782155357 187455793 907893558 405075735 942224272 146101770 193087888 296321898 303002365 142584359 495261357 637206884 736842873 999877996 999940481 831500433 915559242 681285826 756269030 364007838 762063812 437494959 556064233 636063675 640637121 928286220 962429267 268587040 472807306 445585704 560831285 642507578 722972194 605163517 679978305 709718698 874151843 649835108 780767730 250540424 622023903 172954833 921858569 557870671 917733350 690174851 892969908 970986957 992950109 704057615 965009910 749824547 815193879 542046309 829770587 730828046 934253058 644769218 851974526 836023579 972606336 213164088 363258044 815322013 998956420 117270691 809435608 938038057 963930944 703470829 987679753 490252051 639678313 690577292 902074222 929229650 967575165 999279714 999832539 770907468 830920504 293097597 788678372 678570410 975538885 403155193 892281197 700150794 839925047 686284589 770137759 527147915 807061675 199917640 253610355 927035978 960596625 537767588 892730861 745081686 746331764 392191356 397113672 204292172 303560852 422503272 438088443 405889354 854833048 918482192 966004031 145182902 703297400 607542103 800474598 60900564 818439971 625232288 719396731 281464531 484315200 926996185 948068824 358359055 640519995 206055823 214414783 698256318 927435967 125779419 580828727 187248528 975809769 576445569 577093270 972317534 994069154 459601827 526721356 665343658 962007327 643959814 677908811 396162341 810516988 349630105 842543546 130089361 977729243 775020398 984306796 525424539 617171818 511120778 860053761 330533515 877247305 7256116 598000138 550761116 691525659 666045319 927805892 443317212 558831556 759466014 807277118 394244542 697650813 632450000 890795864 71796074 306232800 50529823 217104227 609732365 868427586 633674367 649718250 388715630 925253803 430692779 754154146 269846124 277297019 637140805 859657080 938621090 948967893 200439868 723980593 919504471 940098999 425301757 562710525 105436420 400369921 396632630 823091579 857919303 984072406 263474652 375010427 273797051 869004511 314242256 702067859 380421314 827433881 622231975 958861886 329217625 587779741 426030386 593053284 140242382 526394157 564444310 731599920 307930877 581327122 871243104 936837100 108248038 997339704 301245102 301765182 663825347 677496989 134436994 463476535 584681081 602221257 97986119 960417065 135922986 401268568 482046717 916376883 298169143 630902197 575390719 990949023 946364003 961643113 467156297 802519666 267558342 943709353 233648945 305948288 323469488 673320180 950825548 952313820 914232583 978018519 62865702 891768717 833796295 902297427 223926533 282369265 179353096 739427021 719956514 774538972 694886653 960682728 399179266 911365603 393431433 924924238 362719693 378224885 660772360 731225876 723301196 861146483 979181976 983901516 803730352 919712640 582361468 871953988 215540714 885905211 790093983 896413387 604683127 908734344 234539841 940082936 330522489 819648586 187168306 971436412 857265458 975439304 444078839 628396945 849223627 957102054 391050418 837992324 335783517 938167266 933865624 941333760 562507746 898980951 521498067 949607836 870966294 999198040 379097435 398951452 580135437 932563640 556845739 851783510 656373310 917516834 389876212 419088502 397345433 844278538 321335932 699763124 734564568 838269955 482712139 540649633 423609699 680215971 944058084 947773766 272038188 462487496 121938283 255199536 264173307 567608873 688219968 941774156 696972815 844708066 562553831 865276678 856859296 909913695 22773340 181434573 327124380 668950187 886707351 956764968 486607084 859716795 949678698 973830275 511974675 809753504 646143393 705958551 870118069 872388801 686343059 806359503 203986236 327217165 936360738 973245639 904076266 964756199 181283139 677334931 902234182 950449834 26820584 837596767 99417441 759434531 523449906 697277259 446830392 502761972 935889400 943764649 918188490 957285904 77610241 987772711 761621499 999534368 789109030 863012075 925487964 939736061 432127157 475246269 842810987 983525100 749947360 951503604 915527599 955999574 309538799 837370402 326273458 810273766 390992793 842951495 544754279 592061234 624922165 906454808 628837857 935003209 767768565 942386996 294803861 699044380 968168696 978251755 347680939 617342498 101802655 909215414 702835245 808524552 786243229 895881629 423704015 736381796 686414619 986475529 951771226 956047021 785294127 882262625 793159107 852285837 685933995 887449706 775715713 897427638 477524986 761326317 915844430 974873101 819212845 956457766 556532814 677847541 825209040 937842663 697019276 852598846 288776847 709237131 841499153 915828153 493242326 534009278 512084729 580135566 847312530 998096348 519769463 720984174 503209348 899097574 87134202 825738030 648475154 847269833 938687298 963950570 317940964 609844294 897819721 934076252 675364654 906178191 908730047 957602372 843518592 912466759 843510559 859339654 306825565 976316932 685604181 832199270 777244767 792305378 581430828 818915853 34854154 574165995 478989120 902498335 536851248 821609136 384873203 948785106 330045118 457189243 263299827 881091018 513462171 589515515 720576524 783695842 27248238 296936398 695351757 898946896 184952028 464718277 949342304 983572780 628445128 925349321 704096665 835685833 616566509 897271110 948401188 987315906 953408007 974932489 707053973 796982257 703254593 791684475 116308404 703451563 313354688 530942089 453162280 590169520 595236474 733379780 184118535 669153894 210395606 298579585 643903625 779848572 901640452 969543674 631852171 828279205 546452406 565689812 435627665 451559418 529412613 650883791 136775561 815896230 775866744 912156213 298572786 736665956 481827848 827158129 724033250 927176660 282527787 600663096 701224782 856180567 704132726 763114165 19063386 161298372 770109972 775469901 968978202 988385623 709494313 995689235 163494406 416297372 385111728 967596931 272548751 808240595 550331324 874815698 776079369 787405955 90514838 558257549 820702647 910517906 19917367 51550138 278641613 598325388 536133081 767010346 347907737 551925155 725008701 839998310 939848474 987267076 711929006 996360237 437927470 479273987 695492958 742470207 937596862 975146792 335537070 828163323 552105862 704928391 37054605 505712466 172066412 238622153 668695171 994866706 722003018 748162283 539746011 581653917 252826905 917822668 80272273 179188953 91670475 806861100 787009434 814440727 543627222 664667491 191442717 465329832 178344084 776936097 448274538 587780594 981280655 982749735 655948992 783756461 852379618 960545724 107328452 681088871 552354293 958437075 554068932 588576111 817094445 871590959 487096119 894627225 896092771 956025589 552731945 835530966 326727467 823627627 594018629 647148449 700710089 784377666 4761309 106157034 917270307 996122654 312529378 564175375 83305117 946675022 638945315 726888364 650613403 900924539 857992109 894350653 288196176 364584327 163946763 533731661 46827964 401042742 450102813 970596218 863683392 945551576 329136525 993914251 310479384 360878174 124017892 598033376 792185806 905703621 885970458 908300867 940722037 977205811 841004657 889295539 96337841 247328645 621472690 968347888 795331789 839326318 341523903 431678749 506236980 649234826 663190638 663953293 228180562 380312467 228558956 778671985 143179210 750435629 67990706 631115139 312521559 808736261 808148215 905606875 242244199 354192282 462843289 711825558 460807202 873936030 564984416 887185627 78469619 835072300 643021288 719148283 615361803 697829918 603292446 733159246 114369002 394110652 579860410 752024869 370386509 952744419 57050294 520346479 215994251 305464383 644771806 769561061 664025671 721998086 520670227 687827869 935272108 935655766 382180500 528864311 719681820 808567594 395927635 841619159 871508747 949989227 536385611 545317341 250356429 450670742 713967929 836390264 508438880 819305046 266389843 424111319 142131057 288804005 849399670 909938955 480053902 589846073 900875947 963358926 338005852 386605117 954804524 993439868 80411707 529934300 732676960 741203744 453525609 984856168 632957691 713958657 290845308 507551938 614785075 620181848 237314590 361783779 323563558 758973518 141240963 428038659 56014222 758248651 842335438 911352919 565836858 877800784 268921425 906943762 512544822 656419192 625316810 924381404 324971638 742164213 388716148 609511959 87009528 554789082 280939789 570252669 289455119 406542037 626942121 632720293 236259634 511983400 740728259 763918977 938853182 982861405 915908195 978717685 533369191 948715227 710925209 741932984 628748789 641981202 629560171 768102151 413471351 745999046 885209395 971036100 345856904 401780396 586754010 818628257 348977888 651342710 857278484 870005407 140199274 687219568 291364525 621602358 507531544 813275694 225586565 447890640 174261400 644286733 456938498 596290781 722888625 809816813 133058663 725908256 126229600 629975059 924115747 939848985 592013539 877152780 753866900 915372212 841437884 999163141 306288931 670337107 728898382 751939798 939999204 996459141 527024104 792813620 102492003 297442622 495108157 799880924 296527617 761942635 896571717 899287198 978337534 980599231 686577729 691944644 671091445 686883179 696757553 769012549 218020937 518526630 79169345 304589003 272684682 615405085 464584748 902691166 120367434 417363048 241080293 861210843 334338283 596028384 246678121 864337383 222679893 762435612 939974972 947439905 78092994 479094762 133521121 938164342 458652757 869805085 156448646 863248095 162568638 605288102 767559931 829969562 82309096 804929593 41573224 363201025 748897437 903383526 780168990 923742881 595060609 861526572 349082644 382952735 10531611 977831799 728893693 842995868 854018428 955458271 889345542 987883356 182015848 743775062 958322643 995739589 505857569 976292254 536719621 742148616 351856622 786429102 403395976 645311306 394866037 949856465 207308936 430692547 954898713 992242488 964188597 985535851 861781850 944229287 688451241 804748151 748614745 812313891 976904993 990583607 970200100 994322141 178248805 385859813 795589222 899486460 199312178 883891524 924739297 992445587 274035824 734611516 160218798 934155311 950002158 962364261 618261766 694199748 488764909 613486396 575436334 952495839 57533014 720200974 328028923 756433358 550740160 806343436 115247320 820408143 789267717 971543327 700288269 716184976 879107610 991659924 200792715 530932359 135091840 578445622 942213494 981821210 469616760 765085451 460401991 538751256 701277282 793678208 469207219 999274522 305664965 350064259 393357590 683456131 876122787 944684977 469030650 774377647 473164083 576637511 218100798 322726374 79697490 512575069 863971336 927346787 443558318 676005892 467833586 897367464 85994944 288034068 952094800 964251496 557401738 581841539 631714642 893892299 447385422 668987283 212102997 821260296 522559279 824395626 447614574 636184009 978871328 987725344 832284643 870266354 992664563 996649390 371607793 939219320 358542502 635984980 636476435 805006529 98940929 473669821 379783055 706594871 376050256 863213207 262164670 633009449 228263818 732537456 811881480 827626404 442943852 980093025 549872447 556965712 762939653 807347936 451178325 620188278 702015037 930147040 571736389 905721053 878423038 964848000 359203896 541919062 860528467 989570225 196493821 468083804 49068796 861337786 315319886 998915988 10612449 670467920 338954577 457675670 127349681 553757317 271699927 373678109 679518649 860364132 371922792 693099349 90630215 293724398 668228529 682389616 143224356 706341411 330497776 733338670 965210418 975745750 144604941 959641573 58648704 804408296 280610180 863349218 803658878 848730428 813806285 974899683 818832633 824127493 399765927 829409655 288225859 350855042 640038759 844762031 53208758 402143107 236158674 776543928 638429184 996634363 646309553 867268878 121707168 561104432 9079570 619984090 529945113 873354464 407790963 708845495 735719886 949320192 507778826 589362359 422145782 824550631 259817497 629329006 126326328 137575337 446720001 458871939 934038494 943975361 334078633 776447866 227533486 632944963 456945641 552467071 794978869 898486758 998970491 999958044 929424940 994531360 281326094 628387895 636218541 701815409 822317380 985394230 388846192 576682940 940340679 987650008 797138993 906892263 464790990 804806300 843843731 876630898 690572172 887188334 976654005 990786507 317096345 526706380 589519888 861770904 849524218 944453540 817940329 824941909 742920811 777304001 244115714 448537751 35796349 741180441 14638118 611510185 457720976 462617104 415433897 608708264 566194508 705311331 762871723 932919079 930915567 965553192 865310248 939186638 469411488 878575746 912437321 915469116 763327235 830892154 121729536 393436315 195012418 841155115 677937844 979495301 448391325 711998671 17418935 614646519 960448047 987803203 328172127 980946289 815812490 815972197 630681694 801745190 28846512 242953364 453473906 865376997 798041354 853415254 123940923 752929975 369665803 446950521 248059269 644520036 213972911 575728396 185628516 817201316 373684172 918979381 144158246 710056063 88720966 633450408 358794218 889925284 964819784 983259463 764275631 949432852 764216221 871191275 134008999 404158971 148710558 403843522 128870527 787700729 284166879 918808765 771621584 882822976 344727946 522011298 22694988 241720562 439855142 654861026 248020239 819911693 366870375 612061563 483657282 857466903 717795855 901944347 689528014 824791690 527593143 757223943 893592586 958440454 599650542 723608051 3586037 635436106 110969357 297277288 930898952 941428361 867368375 990629127 920262750 924800438 114690264 978018230 226021566 677029807 639336921 694247457 863841092 990552321 826514876 961011061 14255388 638000997 829256734 997542802 873351878 994186955 34321071 58006952 621046005 887082188 410882239 638901582 730624987 791509897 923997088 988719398 192011528 291707605 368963501 892714564 167016034 917613668 531307291 555641489 475261111 756347772 444008614 561167305 536505297 795190211 473744435 750391313 248897050 270383916 591062646 989232467 993100991 997204066 52177508 320707949 486713839 728016273 921849926 995223627 164121987 439149990 485308618 576519619 432352884 821928163 779852780 809262022 363668024 640143707 189444878 289012181 593228923 667369789 21790719 971474246 268582415 598799335 134880752 369621814 693257744 992433325 997755425 998714039 202849450 871208140 449657550 957847107 359148303 466332965 957979975 968384204 797660626 954439971 718603010 991221214 238422208 386030044 967086975 973133253 209967820 534174500 202483419 249685349 994121607 999341550 426349616 690839795 319394096 785148463 609671551 620336804 393508538 748214667 114412484 818215044 294022861 599636247 902699970 978887058 869216354 934599669 237769712 970114746 858098810 860044941 538775860 759851822 504973846 972884648 854573090 884121606 434900402 632788751 594906705 992074592 685109161 933585415 427798744 906791750 210119180 471717195 329590344 916243126 805582592 964502226 711904060 889650014 405846814 507904020 755214181 846718647 890844873 989896252 270871668 743192018 880662594 892125119 573481290 867582046 82587547 336680925 319728349 498120420 702881100 748905035 213237253 921109242 564385972 565717845 641951455 734888846 257729046 852975558 122932612 692589729 183950322 619226494 662545541 778799164 768570357 942101770 776802531 844537195 781062299 949945630 909310725 989023000 576976979 592877842 904083569 933141038 340773332 791036733 207749984 890989364 639019984 772513668 617804611 764697822 521467980 760383275 591040662 917778033 14998652 15900443 980364151 996625866 998520522 998996524 833128000 937385085 984353866 997826280 141166589 530338171 273905446 362599867 348803995 906860934 997975387 998921764 163668602 998797233 394906782 804139086 431406495 439588996 60511518 507652280 672108151 726970759 843916611 931270609 909498427 944295920 14075110 225386666 262113807 950363351 715421628 907797906 453229409 539415719 384892746 627086943 899914016 908945144 261528066 696162650 706884893 932926203 61194192 372336039 223028951 971221015 685487358 891138415 960158617 979213422 937294769 941811546 131199866 490685411 497835556 567352958 449728335 884542874 237641944 417253229 126946726 951479502 729119254 876666654 818465296 928515574 256824404 464589712 36041094 88691626 345624674 894061726 551387202 889004891 994719034 999753686 205275099 274651338 118932659 700170957 557331966 616236536 578543055 674134259 510611068 717026825 103095060 157223843 643908083 808447725 281015540 961784826 493318475 561878178 597019687 698292475 683978250 760725640 833232104 836475606 789576150 985250590 654893184 794036438 181125503 490588129 950513132 991182058 938719951 951564215 956315603 956554993 688201701 988851414 345119150 545713531 369324016 719639801 632059827 653896244 891416467 914894675 269724131 990565699 874772899 909970487 951373432 982476496 59658799 656958769 251319987 938647600 770683341 851408138 814030732 994076360 512782275 973634016 347605297 733551808 579034652 868748745 265847645 764645322 838843397 845906119 323149613 509608463 557029401 735943715 576896168 899676588 241409020 294945274 36280781 845721215 158365965 199700608 50449085 426849445 952629649 970715377 432193543 946049930 788511031 892002216 139064169 789483521 358024377 926495071 112252810 732891106 820859355 902376772 229942432 697230525 443685718 683324453 679001255 897474559 962689265 996996372 876986013 977743345 895083617 902820773 772478942 961559723 548987362 937852021 356907016 632296732 976595039 996686746 441021514 901545704 741140426 910860351 355307426 487958588 101182323 785857863 117062350 226107963 679727981 711777066 736447174 760844467 44307027 276814079 175576371 492080931 565979651 936181018 843090176 924668464 670927119 973821353 207808637 219635871 375186989 752529301 480409949 589865996 978296545 997685640 887225119 943787222 76913887 287812552 171616683 338496408 477281354 649101349 791003579 869587782 728813666 831279345 217797683 889743845 303549064 877487896 997872325 999674603 19342486 689488938 25316350 467362657 749231459 805106046 555894741 981865589 839032412 853243283 814763668 866870823 782097807 991660628 486019075 604389866 133390234 534866633 113017402 745330915 586859359 637940093 199751035 767948240 214611315 775327273 73051748 273697560 755651038 977959916 649222918 959031809 195982799 738828832 48310576 192718592 214638679 514316623 319329553 835591926 520954505 691127303 401965763 505104267 292551873 336324858 541815212 967192461 684697352 708628390 575404605 592846469 611488929 675496980 399182233 889273075 390360578 906962497 739154649 795267737 413243530 416685087 137530512 578162800 944939454 963354369 723173883 879680148 265755212 428344965 807781305 982656854 494797925 567532718 539648201 949347800 905986396 949053856 431987072 592944283 938716547 971741255 55001251 504890489 236506381 367950520 344493789 839168873 997624111 997792251 317216875 825277130 940049344 953181258 86677168 591047476 937967310 983712532 980586094 999459278 73198104 964667766 389197303 734232957 52732608 651737481 900188844 989602164 104832911 703330543 234970408 238941210 773353524 950981433 142263422 511005978 934246171 943180856 492210267 684258549 11948537 745929073 531844513 976483092 959365137 994850946 523394591 980236068 146943906 945689639 861913425 892841726 657866059 672510222 849240869 914943372 839282238 881905681 548339570 611897233 810489817 881342062 415788573 956907924 424379165 857405896 908945332 976119101 765749442 799386227 513007798 806915656 714070206 762745574 690702986 869855251 42593563 944199494 412944397 903133246 143332093 207533370 556991757 939034499 912938377 959276710 701810128 929745119 123662658 539915491 873181310 903258898 241308688 483444683 312932879 416546822 410261849 770108322 461736166 674932612 563150987 603216763 983979727 996811825 469166625 794122109 55791976 367810812 554408642 969526977 851757955 954312853 983984809 991105348 392326494 841702969 355046367 822275255 758886074 990952736 793450349 864634236 111516217 181911256 937794232 953104819 777133243 886576346 70573284 426225900 755232187 871028011 558763477 921514272 133945349 409741390 545910965 790737853 962843896 964353521 776790224 860623496 819249621 857841531 169515814 421549727 645968416 942184528 972543373 999878798 748812474 775679931 494549716 550763963 518697558 532380140 803476480 978568469 394333153 515895003 392375510 736803908 200991021 741010611 758713591 863718238 314027913 343911022 51917409 144418949 717797742 810092105 540758957 806714438 870725477 977108912 300748713 423778834 21623506 401392994 283676161 538940117 884056856 918390724 48732796 752593447 321224286 370879205 269136155 284857284 650988246 942082110 762676513 962128176 250591024 588269424 348299573 963548621 976221587 978188676 98842374 737866556 417262103 981225554 73475072 620903577 879278954 964948410 787373902 913708196 43260360 504440463 238078698 335249802 377009343 905663972 564627846 961894971 935044164 961418036 293054661 765483424 70683142 158110929 737752900 768197416 834121587 837194224 13119365 362405590 917647284 938105112 990509940 998929399 178748631 684461776 822443676 963832775 698272968 737503100 189149333 319710891 226199738 996878312 320164805 801025602 211533080 644821071 912062107 985505987 604623584 805262678 415435536 943913316 558943832 873540033 988882626 999805698 536879860 962193596 698116348 830045705 28071165 235719696 430691304 648285899 825764797 952564047 213824863 528584133 308481267 571572324 192748964 602530774 868095466 905886595 848036674 913354167 837858391 870059952 195494680 752861541 124162603 286974563 761850187 961290491 739790061 743787028 510756612 682829314 302237 725597073 368122496 558383912 114365055 880957946 300673422 955591669 91723441 744289260 402698274 880707320 697024376 785537160 103134511 945459158 678491643 695310905 559970265 995386597 726572057 729239677 393783166 816473786 166033380 896572477 293446537 465767266 9745583 447118044 321328615 396688067 774225981 902336961 90309303 505077079 972115716 989439985 249194447 618069483 278016701 555730256 215676648 616197040 940731117 969043707 410244587 432951402 836011579 936249394 18353455 694141665 48420078 73393661 428076783 998132246 902905840 951219412 458218448 621983668 76868360 991668904 657933439 970699034 411138412 860433007 294610927 582172560 88464804 963077112 513896503 557765972 784671846 891235129 403621886 904489340 876805511 903470397 279927801 760102290 721331338 725194324 332423110 745758427 882571473 956467815 775470347 838414689 451125715 807318135 843693064 977346329 478953310 848912940 532912909 904703020 276914918 286444706 595728190 817348016 969744004 973246035 113738156 698650653 251486748 513810152 676337129 764422098 663381131 696637973 873404211 893339433 155355377 221469411 808912205 921875259 606951281 757532297 460184986 911871588 850555249 881322431 432403616 578852394 668441730 761817679 955504764 989311106 830197036 864566642 211100180 712029561 336192250 913910514 677451385 732813591 544694513 945465981 278689828 723817249 858510040 935224865 110761200 394551693 949799854 984121127 497012825 839639897 938816974 974839882 41585724 907892570 886473433 918244612 200692711 772189034 544182014 683913878 242932847 856985200 304677476 820104358 950379095 995537488 805690162 994124515 58422260 469781220 796810896 866459135 413793659 608611931 510608868 694479834 79182805 651301477 442442491 889464756 692406341 821777609 336402602 367909284 424469371 840885706 201748033 586984186 106618417 631222525 29787626 228317852 159009983 593898474 358235241 449084293 109995709 894011753 176667045 529776424 368126569 711052407 641016594 718618998 15438940 405071249 843008022 866555952 218472830 573709661 654216821 844839355 81781510 671079754 691874900 855326951 294124374 515369483 328664845 605938660 35068366 439027870 996704890 998509590 177507235 962342932 386488029 424590944 182415300 923982946 204861978 621060284 816929810 862001649 269543457 824665559 360890368 550088375 602567430 847100211 599185408 663159966 624787980 946911128 710670230 970473433 270729571 347813273 391079411 931656417 483634846 830119755 210978827 959730964 155038436 608306992 49893573 57302988 197310149 576833790 425595106 974103279 297064118 862726027 28867533 587756188 937520748 973521604 366972711 747627263 443273395 528480778 821512363 857177636 531135279 996424632 495991382 796281371 351447822 747480865 199766935 959150371 152049549 385105001 460237994 597434837 95108964 809712763 118462908 192478530 410710507 937576114 713876111 819314357 912070506 936989111 888619537 912457603 842939479 976972200 696373836 909554678 562324892 664469230 509842986 614183138 690915353 975031016 652248362 918948023 442722564 696547189 863483698 885108486 993803241 998874814 145354697 288628720 985278573 998211145 846062058 960150173 581874150 731393841 556010711 664752536 55778986 713980645 284321499 844720223 97036294 483773525 660899698 917698176 658965539 812191918 754671795 756338578 640041914 971285777 952499883 994085473 486870104 898615578 162781165 210555964 618757151 961621640 198025996 640562862 616380070 940732204 472746379 700260654 313100137 446709395 502757465 675177549 305675188 307917224 956902710 991773422 204833402 387226816 49913050 778976046 642865520 845580047 727068450 958391357 408223365 985070980 762224409 992132670 47158363 901877672 492786926 885638384 166797257 704811321 632027092 878300558 528191740 990930243 452322781 750262914 345908167 477367083 84085087 847172440 308177844 923026355 936742658 996653025 826103657 900572462 209363147 834520769 708708722 961366980 106957008 515206894 661787090 877064100 266864858 907495204 569399492 627557436 217357527 745627459 663059141 820386891 870690191 926929178 46320545 760502057 901925318 994655570 324258575 375681420 414906726 618310106 723720005 946100077 356613266 688525463 788635905 962355173 352252501 454818185 690802608 792585316 276149019 523385201 149920696 602714164 540477948 758209375 985395194 995845257 828132351 844121682 287556748 469597902 310178859 580377157 828699387 848380068 473705829 887248010 279284920 859030677 352873229 871745537 309221651 729266783 993603910 997046407 189968259 478218159 398477014 770656381 786377595 810248693 770145461 789256484 669741670 678416202 144935922 509910298 384005523 505244764 877841291 954878482 833642626 846201600 710611698 952891841 411477433 449361187 701170717 748941167 752231003 896579945 395252089 473459136 841695139 901457717 976367932 978023726 630355156 804823752 447769800 782796542 429093678 493828022 125176921 310254505 971841412 995282746 399842034 846341658 238719747 384966231 950520371 959005659 39321826 827969280 756437250 914350742 858896601 980809407 186014060 513668061 464753601 859065977 37998481 458321291 283194420 835042654 70468394 624019322 452298501 617063570 735995612 817005975 989341293 991343827 222020594 998979504 361767467 662634108 503740119 956012423 74311206 118539711 2181049 343384985 604611853 966878854 310639006 790017948 735502918 860629863 515604009 629465822 76368379 995869359 813543329 996406532 344278896 628762413 672225134 913660883 40728648 980866788 753578023 909709151 518704861 848059163 821245150 903130578 792456723 896882329 142529960 931339657 892235902 980829949 748359263 786092824 535218716 941766680 551080111 901998619 845158673 928582399 801424925 975805189 37901076 121287469 245338242 631618123 952589656 958905687 365150902 715806763 988078743 998260049 736110576 851533163 795822104 943411986 114657649 459490861 313659342 567202688 768876240 868981158 620474392 878562071 203558186 576359164 854012546 893190630 545130357 819355546 225149100 694505293 572640262 738809191 944724782 980443941 634150140 776394798 796998445 865864887 523167683 581588278 932794082 987125791 801611601 832312220 480363756 521378254 168797674 634408515 331860128 680474464 504861688 670533733 860057165 889136106 146885595 481045468 803643100 948356286 971440439 975467829 878136874 980404947 826169596 879500744 601132355 800381624 214249041 727925192 33899224 736818766 159393983 517125780 481295913 635177017 298771947 435136746 684581742 982942563 106451809 344580325 417961394 682410850 709494475 975080540 941135216 981947913 148983362 417457193 863499096 928496647 80244950 134695246 697295290 712109956 856777464 969059923 477164550 957642950 37229503 306749952 665572130 862987599 652396607 975838366 130832565 923221708 675571229 833564329 465312954 853153880 641888152 772052448 766263646 902713665 27512050 403294072 964384942 974442404 364366328 748356688 280772325 940646338 61818105 121818895 483632523 569327195 153772365 501014604 482708470 864815641 163332066 545289823 206660399 422708461 602424473 810600787 612161807 836276877 832802288 897082161 229742683 844884034 209596604 279972960 433753372 696120200 336231046 771965404 274377578 893096381 599231157 651474669 395955216 536575825 639387995 677234784 868999320 952650213 285206006 949679315 540387896 784426104 718056216 842870057 192634576 226110747 209559049 632139832 704094184 760403264 101404629 183340273 300458985 608369957 690734854 944144997 804775394 809946430 919676040 924267072 892250884 908860443 867084400 883892012 224168572 423571891 975824293 993359382 632189518 732732771 963861310 979361751 661724176 756225638 825270383 876571621 526580907 860349443 231612839 347970303 473991319 983336663 962284489 969683822 215155726 624381683 72349697 625985827 598228149 665322575 266314930 994212929 400939164 962017335 282893199 980415145 390631026 795365160 861666025 896176585 131141429 731871628 195503660 809766849 571267957 683540299 691206852 902348933 929252526 987993004 828872180 987276076 966043463 998622165 348948412 954437029 224489919 412118949 67902049 649940987 943866284 970291793 301949016 974869218 677753538 893930114 99250340 958825946 968808024 976447280 352209101 636629585 416820261 487285488 61480586 875963123 61348151 115284259 50913708 358257226 507177585 772877046 444577809 547911907 671782159 784220217 822782597 968977697 371721745 407309321 371690067 961882961 844536365 959279165 727733572 871285228 222050587 633208366 751100465 944974680 738688175 763504234 420991898 771976423 446900138 649369790 312194178 316108902 140294343 392060452 978865147 993524786 842712871 996332520 473844946 910834357 333082085 471280038 834586310 899511589 976575987 992239866 918037512 957269411 847047738 984696454 38199422 989892267 239468603 979361461 87048303 245608630 92490743 628882866 585156244 924940419 750941064 895805766 555604876 646634627 584889130 652370999 789744618 890615223 524144559 560877607 724677275 974071298 500055166 642518572 335593515 756399422 883216397 994905853 792884138 964587113 16381410 106859751 589953228 807896088 665363034 861146550 20463964 851132068 158327204 925758761 497315214 551180967 989226001 996605888 400394450 682415273 475459087 599918202 663254193 772210924 448207255 501892819 920826049 963014324 677486658 702182147 776465382 943748357 798349072 914582730 883798242 973528209 285563484 707436233 140183179 641100864 153721505 927043393 61130329 237594759 330776352 567509459 436552323 439428816 477023436 827904754 307527918 486241955 513024460 663692280 995277323 995792663 358963006 892772192 721422367 914672718 469813166 683125126 534091870 658027379 817818031 860873688 660183597 835314254 930275791 967877504 741576140 779287487 502984246 828034853 797482969 892759175 935732730 955304722 157752655 947233526 293303771 850120507 817998035 819072186 972925634 975574437 657525638 697506379 716068484 944510934 460068642 836801095 922025577 998954845 30169466 935295392 507727059 738421521 84880759 120587230 520474689 528342996 180443214 189824482 494228968 686937677 433583662 999828480 7707551 633987686 25256751 928505205 196094270 613912578 356409287 438438828 243431075 977525093 359176389 433125938 358166875 801185811 27239561 341954341 289286634 362179164 793278645 896149191 667987766 712032103 806075950 945174143 530710861 853847411 230170002 990705743 157979559 312511717 956240765 957761534 17273140 954363274 216448435 558603035 351042340 658800438 73267180 184415675 567279880 970832617 331724718 611276102 309443668 513284278 549417260 914470634 580482736 586603520 930748222 955795907 286806500 750895804 105385112 455602519 892656144 991340431 141175228 533447624 25557807 952843455 183269444 849175199 843459445 979834612 423439281 943736963 4727396 940584864 294872585 786974628 168290695 264250423 932270790 975247534 736240155 894938519 917243449 919501309 475651822 591362743 763995823 802914864 203300223 878517288 691335099 780369705 460757451 669257508 401992635 762294303 433077996 453416626 351348389 996312709 121575371 788314481 792575345 796291798 719802245 745962038 403396108 550489055 805987414 999687429 788403766 901440923 924156885 929901325 119432600 388197891 454434485 501611147 724288380 728156892 404304044 463135349 915054926 980312344 536022823 634488889 95958126 467563645 655531628 969012910 517651366 705992734 249977409 729363412 393524244 749951667 612899687 871908655 869104075 968852217 167453599 725031253 885403183 970939568 961368880 963440374 15976160 127949702 34159614 936930756 378318276 784200941 686973477 797727063 779427997 923273989 61469628 624880978 738285818 932386635 886959925 901121785 261393786 351528717 380693140 746914965 171992426 874708479 648929936 879258632 220381553 742494259 644635485 735565476 707493083 760988821 25002567 529557203 639526023 937763123 103701877 148066366 819988055 832784296 910191854 966065947 308529762 437025550 572428814 837909167 883912973 933615772 1503198 582733221 906792542 918957849 100297855 664807191 960010109 962672950 291128446 310920169 126311416 735331658 224383740 592222261 184105334 738122319 597062348 826168791 494374058 598990989 590605914 698626019 491995422 792008154 771206751 932001953 969480706 971368643 124184144 612921391 789285170 961732995 531878627 965190547 848272561 876955531 58527094 141907976 392566930 483242259 960365845 998755042 618462285 921560819 391702509 649381219 861488514 965485555 634447787 901998710 564297433 757420476 6481062 601954912 894122023 903264903 181659223 821493096 135986065 598643364 472076248 741345606 855675235 912786009 688798455 997604739 924552379 985938741 307792302 316558921 998612348 999052060 979113514 998897976 481987029 567914043 406290912 806351556 653266600 870644517 307795169 704304032 396120922 536307993 840382052 986009895 794867819 956184830 334274216 538485480 273130109 591725900 698303554 707026303 718218883 811451241 377548333 738978616 831428426 862221030 839849773 989859085 269720416 646213527 724795147 891062797 722226595 853248739 687851289 790328442 83565950 857331100 910695257 962178493 778390086 869638367 726764653 987844273 846005481 979464739 422458889 906937539 829390163 897567945 332531993 913729622 380559764 623422300 252399029 905532496 45061184 775074715 126832867 167470118 312734535 709881672 918403381 948197020 104310442 789249935 56147002 883014348 130492275 334515347 538024015 755415904 443171897 751912682 385282365 491502699 936209804 994292382 441715247 938094344 29175622 612683396 595138644 624260376 177440176 904450167 531172345 890927061 215756084 339250695 538715274 877584457 275836132 785537976 805448697 946571843 44082733 609046885 84885536 715384255 434873230 753842692 226595751 823662409 280021680 743930426 270503870 297259546 878896117 978825391 307592544 718839138 690647250 799663075 283738488 351950357 824340780 913876789 448826992 642922239 766589761 979113248 249602396 717164402 200562952 898597490 691130776 800841023 253044060 369137028 483826333 706413952 634292064 927442676 356926341 411086545 650160909 709712431 703288873 895598241 262165715 883155337 313311429 584873026 173629900 841619496 743264276 781674826 700525695 803310621 697887990 868554517 342360781 646130888 603885402 889185127 595550520 643342080 596936231 897969683 515508616 876511461 215090044 521669190 650253061 660457998 918255868 990547543 817683502 879556382 267798242 365167140 978639183 999520651 913093310 968302341 141236697 498792428 964702970 981913312 442485751 443786836 378302150 804380827 736335655 894406463 330280009 985046437 174246021 217694840 937952061 948821454 342404741 720541502 275566630 687191936 226880844 534600881 536436508 803204784 172766398 999387458 966964329 969333548 706150605 948338959 381242433 387972503 202536962 860919953 281240964 728693501 60725003 579437212 73667509 348866228 448767332 530481508 562408942 940066327 229500458 779605669 812453229 991369998 120176414 929108589 374739913 388935888 866971686 880057618 197928869 787251264 45709567 199279180 884991893 933839671 401630665 694729980 462304529 998624789 425297482 646542607 659581391 770461470 200009283 932114799 66808662 462683633 945170176 995862609 926872928 949067488 972513357 980553642 181704231 573382849 564267384 905016122 89418652 162034393 445858692 919706845 988392856 998658405 429071280 923172187 154858530 401554644 939649652 964080539 534116718 933759297 91853918 768726965 388726846 782525704 309672981 868942955 877422642 880086501 682553156 910891345 152677710 444773612 292510835 747241062 724062555 991128213 202727061 519404627 474670777 518094015 432819023 806442611 652526696 986144131 696931444 989861552 957427841 992775091 542110950 946754945 184515058 810457369 292373512 396985094 829206758 860640591 158751122 589468722 159664428 582831112 83077228 380115404 228679443 618282137 963628873 974154406 324543351 966498225 830803648 860164759 561171256 656899124 214648443 755698060 88280078 596299008 124200204 809387076 141156123 892462316 183397532 261119149 447356051 692347698 640470623 778532851 650338319 787535563 849550019 866177678 882280736 885195853 843087258 869344100 404909048 467234329 982377777 999018271 396729303 570740412 524213420 688716385 775161556 883778625 365141308 941701634 200210442 770242225 370404226 708098519 441499689 525881977 360939533 976529446 490302028 646959648 600550748 611478207 104465616 820921219 581934878 878765466 482511553 569799657 824541256 826658163 271012052 844551706 632551134 983805556 871430329 994946447 669014363 710896837 183315304 450682274 948859555 970481859 431245515 535220239 634965581 687722191 959251138 994111885 205996613 847890673 141899125 641311737 164938801 482674747 40347814 634723124 781444171 851528028 561985992 866628109 225208377 348757701 324962437 381539879 467154093 973062560 985331708 999252877 386721183 777525027 754251552 935099407 985880431 998361062 344837716 960653889 219452413 902332134 524050338 795855497 552168581 760809367 49819827 55731380 965733669 973362839 359037074 461673459 601410760 770486796 88547277 671943241 682001856 786009154 412065729 615877090 985695509 991659638 495440570 762450389 281800258 619223341 57551200 560060698 340715614 362997857 105816032 683503738 659958920 876018419 370442877 830739803 689035485 727272023 71665757 84545733 26831588 341514413 592599312 622952517 988668048 996255148 110864047 690074157 302531516 388287360 183282860 686028953 944860933 973971204 696802798 891823740 805204329 922840943 601030857 656197483 722296513 841789938 503263758 742259826 778880043 930249083 804809865 968794787 969066379 985151676 546532627 758084743 180319982 508512228 923321973 970122818 41672231 860329076 566754295 740677316 312701282 793082911 64046660 188435200 623291314 810330789 256599962 808683624 976313772 986703892 357707870 941981399 893677886 922425711 397918803 980775669 289456455 967366071 577636965 681046762 133328723 138280153 122597020 290855099 673824339 881034603 210481395 352838868 627474308 879992236 2547823 570677344 398466772 591815142 358113832 453784120 600255424 994393088 962218975 985158167 140965266 628033468 471146687 620363922 989255035 996388332 673971052 919198609 961053351 983613937 352672645 758006934 335442888 725803238 172146169 530616863 101289243 999642010 849211661 863905000 485144075 529965733 607059500 921013120 130661390 890906349 649004016 842693442 436680578 565701303 358128507 674176590 105912445 428827460 225455556 673739312 944494477 975814061 879558393 971132845 835834775 997457749 812492156 917325744 616318525 967923517 936955798 997226517 860140521 862549350 913663931 953238811 952963650 962036799 507680941 966495888 408386993 510164991 487732140 632186098 198492338 635361059 628442309 882994088 106217950 986392905 822147396 888736142 201772498 606707049 459963589 853370984 111789282 817910147 79045983 166138024 22893313 815099352 130261398 390141212 777767264 861946346 108237884 226281812 209660025 671109502 128310095 902707190 141549325 586695280 541495911 940751118 527095929 643858617 667696152 933892207 222338784 563381814 304145029 840063920 675271748 730236228 25356702 784979950 115830976 780837181 380703648 498195034 750744457 910087424 814907084 914269792 956104306 996482014 726479056 816772550 688170750 943060577 179290978 243697550 729187173 802797240 607516993 684694728 616546009 663839832 420998194 767604806 789628955 861378320 23556173 442766314 595303476 947665146 407836503 988410893 746603559 975547588 609768631 831013993 31251747 611622460 534255913 544505130 293971451 620348261 296073612 917671208 974129085 986479079 94416164 205939889 209770386 216643719 723126533 741632404 613785379 831203885 180382847 555643958 191369706 226802877 763569220 928559593 180436026 510037443 115012624 874992982 997229563 999481280 59933645 558331491 202606418 873128009 424343662 746555731 118074229 875332333 366262111 598537603 502742804 510640062 512875488 670816941 307307006 353019451 731265030 757085220 690659496 879641493 279290604 710236463 974391913 985550103 722401071 788757176 803685532 985752950 855955796 953954467 713031574 887506970 214484650 632847685 816180410 989953444 924179497 985609221 113955339 248553107 418135815 915515168 63727512 663656264 631429560 972993123 708387514 849800042 336691415 511031317 50486152 142886517 246637532 825790077 485845789 519103898 957159303 993171494 957616577 965673708 320414754 437469580 432501875 793837798 745338913 793224863 658536411 793825576 530700848 767330494 240769436 413261015 759787995 823466041 465637138 884918600 417496650 544507281 751014115 816236894 356706565 561823171 514378263 673463255 538184549 962260924 822949064 879706617 323912523 723729436 296496400 458850582 869921375 965248686 6866518 287264173 646517621 957260610 61982575 266061780 869427952 999414751 56508010 92455984 650095832 822661227 863158946 883242619 587953576 907088880 966550778 982061056 261388882 483833926 92344919 366273920 698087292 949689587 235973241 836395530 697032076 874618773 687432220 993839104 643181373 820486431 750380821 899731494 816000183 851637127 920163776 996263392 671453658 922579269 984401750 995474368 333383875 739093484 504119637 805252983 20120347 904635483 886423519 999125347 232058703 444662307 609304724 989456532 867423320 890162370 688747346 831337249 472188253 960074161 259318816 770759622 681175811 923196132 699105754 974318062 839284045 886485807 845590464 938942020 518932476 834494975 916835950 973134787 89884950 472886843 660636661 697668082 190221706 388835142 802618908 879027706 348701280 710227357 98854034 192934967 322748851 494720856 545007547 861995866 183214314 453563569 345372976 953085998 970642229 972544535 330814078 699879942 370693767 904329475 148962937 309090509 612853831 862241067 747906737 959602834 616805023 900620227 670698223 962178154 674315127 767410394 729208717 838656732 900745219 973324778 809921157 978249609 909644302 910105929 943642160 996111609 750359846 848055010 305993080 552998597 390856376 731505599 304881661 378700250 144408010 623767877 823139635 943332058 272300447 899979286 111757085 318812959 187839821 406587564 626265395 730209204 873539885 898218003 922369678 996306909 554606613 988514580 724162558 954529794 420699207 770839634 635173682 760410531 735041871 849607905 776912371 787319298 881052936 899462489 928306263 978939186 875162925 971110921 906137311 981389095 255985004 320561514 253600076 324476442 419572019 447710481 354737636 903889323 499117284 974979402 782202107 961415123 609721819 718574346 190897448 664032709 178060744 981562072 616550965 890459400 243801775 565851084 380327842 863165714 854701177 890581435 515851432 605438564 719465295 896771531 683099869 890277544 28827019 795241399 967099870 993449670 350369439 442690952 35867471 939983702 864161486 935572075 144385438 218264913 379180799 421179256 438782995 579766404 812754420 864226257 161516854 968221765 503201759 900690778 431830110 752681895 855374543 992878057 615648593 867376343 445159774 482242227 800690565 835239386 724725835 756668940 498081102 747451900 815963087 968347020 338001597 806280500 302742655 910287337 561588255 829897031 878550367 965647487 477719896 917317968 810577849 936537582 456809896 915570894 225348840 360601105 142056164 737747119 193784404 980569420 580632851 840131312 603431156 756265576 160196311 170573956 882687619 913136658 449302245 899372087 144103838 951886696 787490310 972907538 965790289 984190802 850846529 857299624 659520270 762977731 349973024 659105060 586915702 783913229 789815685 983749767 807442919 943226930 678180977 697940482 742890863 996099883 820559200 934128592 482587780 739421477 57036475 464036874 907009261 997477155 489317980 594379197 155031774 408804805 146995743 711245445 281000912 844038032 709284781 891680820 996213183 998557257 169102034 575835666 855005643 971348614 181101694 270079177 587745965 864179610 261838800 930460308 364907909 570807747 965397656 980840191 10756162 622035117 741059719 901195873 831374323 980948588 760463671 832699693 156605132 982741376 164958892 846249339 825628230 877408480 490562102 811268934 816427185 931643844 31569995 965140917 283682479 624566344 240297775 851691531 146504711 456821531 899766419 992875248 405766504 644657320 294445075 410058345 121381447 739105377 911330164 971758353 903631157 939703393 500528754 853136065 687412518 780274392 338181031 824945134 983611304 987333420 210302238 779940837 274122697 530849619 9931393 961350532 437678764 979338385 817801372 871383799 773897861 883610926 308705289 385539487 915153202 936407825 151775304 768304460 759220159 808697118 951080537 994106547 86669886 133566098 208548349 378270771 608626555 822831876 416884446 981236964 30565001 332319690 53851282 108706125 908444963 949110459 338698522 827357293 934779476 954906737 250632536 802086141 895888544 934785160 639368676 950763674 606179533 870970366 364182192 643207276 757184941 882063415 560624036 758913129 882175495 904151878 509407493 790737259 219541731 675271397 818599945 912328330 752115661 801711391 705252757 882568084 954791159 982844993 816949332 844057234 156939458 704427556 496673455 765062790 294461338 916681642 243770420 404856026 799430507 985563590 982368653 986750965 678396888 716214492 221459664 393624860 71475254 288493008 545538802 702567405 779068854 892721764 133119215 421971823 304186533 799290733 742612256 764615758 46158916 750572036 530741701 590612219 353932326 917846190 88670968 654543564 159500727 877903128 113179604 250875073 75587384 214686392 438703554 736612998 62477445 140454968 946162547 948701376 171564858 773703096 861114290 960248221 841204297 992765054 15127320 511990191 17369505 504306158 183541718 746677433 318052498 846251816 62873601 843005726 927640815 928828101 94376317 496836476 437103715 862253954 745339208 995218882 140169589 363534400 259967889 763602492 52763930 300982141 277897084 536878135 62084401 526996942 282228162 295560969 521806725 602034362 206842564 440213658 647356856 916894108 355797569 918343942 915974239 917135194 516009545 967356038 543818752 871608956 241299524 400807980 132433131 204573667 15207871 272567106 499551750 880832440 711708787 721335930 851971583 959828490 361114452 549986085 967787513 977757282 895354605 937620854 720098184 825004026 530280421 784339544 834625686 998691581 213120678 803695958 315274696 354059038 538901818 939934730 531770026 809142710 793876434 910804146 170066728 354887915 179125034 404407696 168729188 210632255 768091439 990998870 327753624 530203701 404359824 652047780 144193124 697005908 27562644 270561960 783171086 923053355 826219499 925760718 140329182 697499414 560154980 753037245 348638593 741209986 691296666 843986330 519873137 639596991 854040179 966147813 556920472 652207975 507657306 680618065 601802170 696046978 945191828 993975043 888924356 963522203 882596985 884041233 666890250 729213647 581474593 616756980 374328131 483335709 759147587 799708006 634151544 861020354 734942744 832395573 248574938 408917319 741067844 916771721 915973552 923825382 420184565 755395461 526105284 609125868 190436256 879554251 178307574 944531597 922764555 929157030 324422835 857553475 164477834 403420387 408747261 623224132 459950596 744780204 413467200 455488679 614506142 965572669 178204275 876608067 108230006 183183688 272974974 689038181 106392778 954209401 801411212 927190701 264476341 954369545 563898194 687807647 559915173 654737585 152538974 792239968 278042348 952174104 389828100 487167069 672958890 731769131 452949947 827014788 369476963 388163390 626405624 830474557 191362202 556813657 404942528 900519514 824475540 930926739 913240765 936234999 1137409 43301877 250485292 851422500 419805727 670322153 407641153 803714766 715529099 863394167 587938933 977526485 460293507 666460636 790512222 890837632 107544858 393996578 947893647 965352032 294979848 367071115 781228280 824644416 143689089 413188354 857640984 984922435 303231842 759294679 447864047 648210589 798163623 942332476 881717742 960867612 210239758 723862347 349794439 375626800 877692896 923393413 721776621 752759554 430219984 852991187 133891283 769698505 743079153 957978901 454868938 556071113 264066174 653191227 197662708 281417641 438306967 506233456 377721851 443621648 310814146 367956654 872221748 999910031 222048212 777374402 133118969 324779776 508269651 876627328 791442989 929943599 837864527 951542343 692059613 914389435 156671704 480180057 708750228 813372511 863603151 908028555 579951468 901668862 630292572 900563207 26407590 230936088 682057829 822839500 6004105 704328117 52479426 478388600 780651574 821900092 974438947 982521290 610647809 627728566 446039297 998485206 646576798 761295801 943674160 966302491 615804231 922772072 636977960 730202043 304824685 961708847 977210620 999803280 19980109 425545729 655791716 788207486 206328343 459358989 160560292 325612816 86610943 227808168 414427424 896143215 221058964 863158453 917507259 930361716 200828364 965294224 683285506 785611791 451658564 515404800 919100698 953776846 102323538 107293361 365550856 861499001 687303389 735775471 214358089 546425593 287975164 561466260 400314305 976184552 131236145 948387951 933615905 995738194 319658990 653648555 895854213 954961871 219774410 816742943 505485692 740406367 279980798 939599976 119454398 973207707 117583333 980509460 295899278 504791937 14626896 140608969 286197916 650393996 249491374 347407152 152340732 921049688 789682611 925141204 393969748 455280985 335933792 903440924 939796478 944411005 766412403 870026536 352696890 658692338 611385047 742065446 963624041 975361988 515807966 886837278 76402793 284127563 157026180 194688848 67241987 423903033 921734266 953639099 340212352 551821495 535574787 578965279 987031168 993896474 954813905 965871758 813422780 845094970 910694869 987050581 651531634 969215407 812202261 917647572 399114629 755257286 117444579 951861974 80437342 843675072 959175427 994391859 836547090 854579802 566532603 617556081 554083213 653421824 110093649 698055677 365078331 789293309 914061301 948628839 598229279 919393595 825086496 984949437 713684656 757455706 157459096 756067999 42626888 571359865 197910487 968022477 870709434 981411752 213842598 769112586 762540591 872333737 502287093 541413994 823879064 867250053 434831288 521717351 996721076 998034382 281346404 681073343 372112222 868322875 313996955 841365532 389319735 457325073 154683904 671089882 581243947 772446722 570118594 973465748 466637464 915267944 596000268 630762107 506807061 617687605 309202979 577579226 356840221 691114517 906300557 955889552 721302575 952233955 668757511 914501684 572121325 704172964 684969338 943685259 689975880 881508504 395228420 456628582 885471489 990553907 98827338 651021958 290406019 981799299 747214238 885994382 171726178 614064911 874408709 877725474 245825320 382432432 680746859 872526175 937289266 941007922 525464535 619182783 51183457 752723270 936145241 978328800 231759533 542420093 750197903 988536843 787302162 875310191 980366502 982297740 775667536 876915721 706667100 890698963 930234768 979720197 639423903 837877683 183940866 197989984 684757436 728774321 60614343 358370893 331918480 376387880 354033577 548124307 425970681 958633373 140462729 441871638 602009081 846808077 207171568 535980066 418511597 819806012 500168105 932808800 504807436 516325744 121468509 833914958 779076159 827580692 434717577 858957153 486698508 813856929 969347449 992475724 488675323 546433958 552593018 988609870 181810680 866428988 624833837 910931479 690551229 857975104 170063073 200040074 443134481 571320685 677156701 938464275 420851698 598387079 923516951 989249990 305957688 459418175 151750776 387033050 904284462 981852081 121650688 270059154 391459795 503053170 924260452 934777767 478837560 662509744 416472865 536722412 186488801 319315727 364473271 509688877 114236663 358678313 86178754 259576353 379145289 773977506 987224291 999104928 545695641 549269167 294616209 706294640 11837968 307860047 818058628 903825338 691000693 741074303 910588157 971197216 987222613 990303187 241726608 365907577 531973605 642659815 305954583 549866994 399773824 883175673 732947970 934314753 592507068 898313106 172438028 633393153 57201329 952325263 28598700 468105648 428360420 643277380 850466440 983679969 487884939 891027157 338786560 808274008 527609405 565979991 130047022 547930641 167501469 701294738 858784659 861575348 56196649 616733260 10479933 283642477 667026660 892093046 924876771 936743363 701260297 804611782 710335465 959387012 270616474 944269587 545514867 810999081 639839477 682293308 455631502 768704881 388534840 557048543 34968074 409057578 626825221 991676042 687860228 743800743 324892010 423731880 476848813 606318483 685025999 827441976 593052755 905432902 298934491 931283753 292907704 941928049 393546209 667437625 487112917 562073296 735528056 809148906 267001000 714760093 125633385 673469949 93614966 926871423 302060419 591029222 623856471 863396196 27109486 374827268 945200854 946961948 840112858 973716653 547297917 962380958 75536536 860168296 736708445 934156699 909923098 915633508 349601669 907217430 584955248 786673042 444705905 660857528 77346337 403908743 865662976 924693660 367967436 576223142 468559085 596412847 488469485 746770497 169026150 624104604 324195810 909623208 833527879 912296807 133202792 651035484 343798276 807561022 780610370 979617327 166994103 592275685 77348564 358092555 729525222 776952480 133101308 887055695 455976681 843897906 778841768 817422808 595335763 597046574 406905340 679925676 119850635 702438920 661065024 671580922 599705571 939505818 520357389 652875162 802070393 982939640 576262175 747401630 101953850 766552692 90960355 138690021 413049490 960973952 768872853 791482235 989477930 990523685 41751165 328625668 196946939 280433658 993591449 994475314 558317102 766075618 4378779 903683615 192932448 232944763 798994151 916227499 300005576 628309756 259362973 556344639 320888205 815413341 839582651 959769135 356358569 892706419 104681287 903909404 273415923 787025759 1253444 77319373 579480041 864870666 711909992 950787380 72901736 286779044 299535800 806259978 278104120 707695842 863137437 876698198 319030135 371997676 525411688 718102040 194065981 700441045 663074646 946649863 646571517 794164199 980443870 988668251 855048350 938062387 382927816 791593439 722050397 823658651 246959523 956018418 900136143 981116837 909381548 942465511 447316715 740575701 710432725 973145552 879340894 960640104 380455738 876811219 383702190 942348725 606756621 917179060 413129492 921527598 37027098 75962371 987057930 993230468 425254083 489930894 135730855 659911223 989087347 994822180 920506629 952547593 763701073 820748536 134064163 327564658 106701347 286000508 949337162 989059794 721715046 878006009 183939108 579793820 810082924 827801611 846874382 884440455 168873027 548870028 911179601 946642736 218580680 242278616 784395169 838540947 773083495 803401667 10817412 248441732 951351404 970877071 491444688 837666763 186443810 765873035 175398591 218676469 99647244 306166281 287529104 630118538 440782351 763809678 755184201 901461524 878243899 990742082 199953647 878761904 39923487 677427841 199269887 713712006 372679419 621321885 7059297 412429715 942945481 947544484 213858341 926925703 580849871 632691612 818959413 992919683 140998629 533209651 776921696 865309027 869401040 876064584 950453806 954175136 527804441 769189266 571838673 858749346 332744143 351426280 876101977 999276218 804655028 946998585 670099087 837688663 893601399 915577806 142726230 976669476 929308511 942231870 665875442 723962253 147863236 357205615 642663890 939990209 715209120 772260618 232167070 800365080 816066154 977556094 671811588 854731841 329771121 883543958 234231929 583586304 951021607 970742643 138738523 335730469 106586532 443295187 38843268 839665135 107656745 508978365 955691786 969867134 585556316 588683411 356278060 795861814 396733643 940888603 22837786 673024012 605611041 956066254 553569294 906653782 77687953 566740451 93166351 250345431 767471938 938059687 639998845 733046333 116326769 360498080 8804140 125892818 70012504 318318329 700522614 846903220 780289910 927244016 343722763 736210489 614205150 615865619 416035829 636450301 388292050 802753399 267319334 510235420 40082890 601093516 464476207 561957077 633593490 921751663 805421601 881817721 724331589 782700797 821464152 970723832 200136133 478916007 558358299 885887708 140411510 584340980 868569865 872763453 819738324 876955050 488860050 942255346 604128493 827752302 261322613 732066733 489386146 718557520 333198449 922369901 47034201 707799884 323156240 522737087 539089988 850744912 881875645 947417829 49111413 426474621 19832618 165412219 391443960 502317320 743693126 888579361 817047468 826586520 334142869 827705122 526554472 723959992 225392685 652047499 887531226 936528682 53168641 130806277 245670780 784734237 261489545 549673069 583231846 642839775 501622043 696369071 302530444 900395035 214337104 581949359 44541319 140518536 737474778 923224981 160612069 796182600 474962213 564816855 863678317 970673342 889663954 958586401 106625659 950853790 229618646 413533579 914162885 957770103 327913789 773957083 597773559 641026274 896779217 991916174 304934440 399799675 578049536 846739020 178754739 893819187 660011059 794834709 830449355 992967933 35289118 868043200 523053107 970544540 432196228 513566981 428293243 730184395 278586422 758479614 476297944 545926825 729645628 844580157 324761922 344319868 634610401 798498243 904947900 952286549 899431258 942479481 845211977 899404706 105421 495598616 360878921 866612192 424668080 742326547 744138325 894497211 28103018 832224359 472085780 932270069 991744690 997071601 747744991 981143681 990635637 999701041 918058186 958461452 375279228 758067765 364020285 726423439 834320086 890332018 699635626 899597611 375252128 616378268 75623029 199673648 280569843 504229297 711867071 754771301 325144073 824111856 149816114 508828601 683709105 854041616 860298070 969560314 98567854 634237897 747410266 844310353 382959805 691072651 745743863 917963651 853943138 945955847 355193184 702443910 588793226 923920982 227170850 989869816 544819791 633162992 371465117 599793250 714288739 731245366 265840805 346943684 773650407 863475180 921334380 958993477 511969223 850805725 849958629 955945154 507044137 644695872 317200037 947402208 119801640 399799349 865634505 886816719 379823308 948010669 361214011 475946845 675005416 778067196 965039571 980602415 845716866 975498917 147609072 358103321 304382108 592096675 941924407 949779191 222456857 305265970 886602134 973211586 522482460 625081107 343681612 669746944 460792398 714142280 734011669 930383201 353700560 793807692 530705506 691313113 15089878 291891080 570921513 627842019 513748503 810940202 635695477 723280702 389801331 792448597 718642137 744964420 254602725 476757763 488729748 711576848 642497086 826612624 52894125 936486029 768717273 782930763 111130860 901192427 153221108 201666705 990135423 993541595 251460509 993872453 639106257 926495231 401005683 490694878 556674583 701860781 713774607 813616749 209017564 706942819 2613376 736076603 750154252 875222820 417742682 792173029 436668598 884585267 82564784 326267872 979585814 984044955 88438018 372071921 307293091 786168097 570830081 758629298 933260235 951146796 435022569 841090381 320573712 890121934 784661477 804700330 842185903 958592722 394622685 834618473 448290030 934878522 261647816 447012933 828114301 887309969 368793874 400716488 955689140 971508023 763865669 887012733 807593379 838529715 44414061 584726542 846245646 900887991 283799411 685468330 63065714 572587795 257831780 756516375 586074180 732513831 408264734 607441029 904348760 968600719 107683150 180274365 825879053 990523003 422304755 684492208 281142985 816596905 330914005 481503147 411925817 575708809 434789037 530508927 448962275 813557622 991404737 991411786 440275215 718389823 893157417 973971852 104683120 746920977 311535911 613381333 104897756 466278728 701608793 912708077 728898692 753108092 736406443 923201555 247556601 381715479 761720953 995839371 370523291 768245345 243854389 694022423 57292553 753036088 185919205 923279068 85560041 701519165 422148998 851120762 984445084 989502852 324930749 600586668 564115601 573739654 415421123 447688175 449935745 456000463 301397412 528005557 956981117 985524083 604989128 837756215 859621890 909606942 347832253 517014777 153048829 541360665 82522564 630611551 353395366 794575178 29683371 783447619 590782923 880162640 760729109 813784284 525947030 689886978 970594488 971781734 172810529 791985163 239552482 743747277 776500345 964018359 782401592 960684807 571870667 763952230 552294318 703869619 915079720 972047323 470092255 938944232 40830829 605465192 670103839 898765012 691972308 986705601 30245192 144803991 521153397 887886093 881966097 962150359 709286317 741376479 64638534 499257070 132335698 567879334 894976516 957433794 252908706 569309693 765550047 805244725 281232059 769283224 673495326 820135864 268851495 334262142 628895145 973528397 140556801 937815317 957006415 997218843 862355282 904750261 697496920 934215363 532188840 616530155 365905580 790242774 460763938 584294698 441452447 688577683 490601387 555433039 917095686 968582533 961507063 968663769 195151212 938497119 555207666 626554818 191974683 926266898 664679209 862442589 120387711 684742160 132084705 800860755 849457936 925173306 313662064 671682201 307757492 929340912 397426248 895715955 946037224 965533772 800901422 924740190 877144545 902372559 677549247 931257791 4891707 685930681 816748571 930258363 496655863 682670902 793692280 866792952 674896542 789721046 188132194 351088038 276395914 403530603 865302208 896514165 320109534 453324143 937098986 998804604 630957068 877785762 346890038 721737210 781910898 880858720 413997621 542383442 273083002 861256620 832049480 864993432 717348053 921154533 129117453 172905784 666671452 808197984 532091886 606596410 368284060 492584223 916107039 973899382 59388258 824261187 344192185 347667231 254018717 903706180 893255549 947240535 538321789 925559376 260799710 714995940 786469077 952198886 820928096 965007038 947536789 995193699 258519003 272053251 7795279 964665720 417603567 479357993 508851301 812886575 953986873 955986835 587884516 818889516 214388707 254165987 158025758 279136120 285886050 412082861 445066832 834953294 286151665 746726940 69779214 592703936 298405312 901088326 794664082 959089531 171103927 278464374 499916840 708950313 324975195 987776806 685838204 770306354 154567750 949401911 974246814 997574287 533040687 732710657 833095124 906297548 652889641 786137811 201877569 223899819 978711804 985600326 461779142 721480794 60380963 62035640 125276838 444049434 777089385 954417985 649031841 828454108 701267245 789824615 463579004 699468034 150394494 274366956 136675265 575817447 503548466 992621628 240295769 302633157 137286012 709991651 459187685 818837988 938923614 973489845 137803920 373459031 101115968 222786426 315353277 796275267 755064050 832892310 531122307 562241141 432367588 897149362 770829365 859929982 83434533 669983291 88569693 962830643 892977110 997128192 596801126 994185332 283905550 433613957 991076383 991393747 683015925 819792539 506676507 780865732 38355750 901026482 321255148 497857155 571747886 938897873 208866292 784273117 4914965 960665614 456078595 980388770 692291134 917340493 574927598 832118392 857150992 952681692 983166076 994855463 431932587 446516300 975645674 989505488 985240821 989684476 10216582 868215483 889192510 926984520 494099984 836338911 528941042 989904188 339157309 672324297 873067251 895213560 543114494 692751435 292698137 565491433 321448083 805897280 82378123 190571172 242448723 367419905 680112671 793311445 628351844 828060337 107262871 704629376 306279400 810516050 851195923 984232447 258341320 681777387 38782125 912819566 112617645 436782170 932051339 955467823 892196642 914464056 566551950 854145990 251386659 826174278 707563385 719113786 260756624 444476800 688553333 756802408 522329571 795586721 755299508 788562685 868158614 957871893 893037769 948846255 215843051 421991851 918464608 950582730 492769248 622022283 479699057 510915977 90765043 415553759 228414099 606085017 860854731 984145553 645259241 903463612 831125939 884695884 480782160 898426375 822417081 933754875 14708555 103209309 767760311 870304168 133116242 281078486 991654585 996096049 398318279 761343168 846646135 961381652 488457203 897098920 577658206 792073895 929537785 962061838 557981625 767727790 846716786 849249769 374129197 547581454 443373889 481820729 740092674 981777175 670144451 716338850 621574617 853617720 797984594 999593973 376184918 429909528 486771951 530929585 653752119 907313698 969548857 983197459 755295926 847180789 112995697 916038543 714140513 719981257 821860219 958903117 832625439 990998089 75051851 989519873 38452854 549151551 447445976 904229516 64767308 844697099 769086769 947280414 565939606 960061697 66574615 245033556 501221998 529242185 860160198 967261285 878547318 951706101 29080699 798399679 269801432 756670525 512600706 665314025 589089030 963281641 260733527 573738715 274722952 967385183 6226110 408277475 958651367 973762995 788145863 827663377 638787871 880135341 337873296 576510538 673427902 767829501 268950229 830690554 386480725 399801142 984444875 992483260 272024861 868163730 317524003 580264346 576609331 782517253 994192979 996394202 94607213 665884336 608885402 785898909 907731893 960159035 54666938 901098452 101319299 459085594 645989594 731219178 614770818 939337036 381049194 774472954 792146474 929134417 820112851 925576924 839204173 961840183 176788391 770895716 424990720 444723626 209518321 584656766 50476955 265203207 982291723 984160478 103592941 891809009 699593122 894766690 196013018 876019542 76333762 622059154 738034545 835580780 382781913 657749050 171871023 721885600 761126388 845098287 395956966 947854169 87516081 554511506 286264239 868597795 14594900 749720228 379079498 950907962 491676155 722783748 63372387 864164771 914006139 975233562 522062814 902802051 53670942 104581032 531359225 736909757 855434140 989084570 498581177 985229672 370027412 749924024 628104033 684987847 795500488 910875962 561374706 639560515 878191157 912387084 16081319 347269360 484071451 967209376 414657897 419038521 741244710 771995508 402009394 404868216 876012653 985307877 842297570 990467106 976461796 994298491 175716798 506902069 61686336 435010082 214891603 760706013 442637934 726614975 819422209 873921078 776560177 789016668 321941611 622301271 503625001 754059067 39861506 631515704 9122965 332093882 759288545 760019632 699699581 742389168 409868106 694510062 46304620 467388759 975316234 994732489 245131058 508490645 942081103 978824941 818200040 879638409 368036804 887715708 860654411 993678217 413746422 905535964 672064168 828569028 727435027 819525876 311523682 987068611 859845466 960121492 847439036 889005132 543513751 937646717 631366887 747185327 666087634 877392701 34216543 224951592 988094832 991130002 672516284 915898703 267620233 366382218 85607854 228452802 674088653 855999107 408804886 967296210 180075551 674706599 189871527 425696271 459183473 968827413 572363889 741155788 876200888 980046390 27638443 966944323 68697881 347689294 189272488 573623431 460770638 886549355 782136682 912574701 305586503 576649538 832356426 869100693 771391345 931547677 992439661 995795945 377749497 849793566 898302980 957944321 257212945 823551638 459026481 658885011 306118815 403172901 447220815 583574593 730011122 916601726 429122631 981856864 925317287 999191361 168816036 554277423 928270481 955884569 239145469 357615361 154515863 797525809 901567605 955999224 380635171 836075749 233778592 662321494 604146838 962951056 76155856 253959232 38863501 344071194 36404147 366006357 242241032 620587760 226123861 970714815 983389205 996505706 566397191 623499803 576981795 992613649 773754712 862333824 553563399 591924660 164239603 317790833 107973926 791136918 419290936 956827041 472197024 807626469 949712085 950861254 911715152 981405008 442247698 536747462 902062079 975773382 96175618 911971305 998744817 999271907 791811288 855952121 920295186 972895289 983464706 993155726 850261645 862417917 412876594 817162780 507979022 850506989 927995639 991601559 958049340 993114678 937890091 965606340 225043697 994742402 372958900 376828137 711389231 766557440 4073366 984644718 263280072 672161489 866991716 992042358 811011495 951831765 840556077 893994580 966017995 995448402 149000069 171091195 394263691 820873133 530363 978289368 691715069 885290667 424729618 802711548 798961012 896869782 171066124 557830493 865038846 999384992 399357680 442699988 694684180 800917593 593011808 839669540 387998882 637940939 854595752 875924615 215316757 736519906 922728967 932173953 486344588 546299103 674130019 762570033 280184138 366378573 96436195 241477503 46096981 694394057 798353796 800745959 250258786 985248780 816981876 922543745 242171596 643801376 852046226 975872218 898676909 954977564 371552388 668590332 321559608 331309019 840983237 872327741 901964618 955592024 680487094 724806807 158949156 539661882 661273082 760095073 248127540 355045291 824265940 941840992 265779812 662705423 977522840 987152521 610579276 637134060 679424056 955163016 44696964 300578270 391564213 539433277 184502559 287302625 911473225 924889290 37349412 415459498 83753899 833603125 842370677 862779446 382514310 671426022 509172021 937673310 530619395 678429500 442981560 741437039 35431927 94960273 288531005 370412322 875419151 983100102 691035797 706825596 807808488 997575546 910368256 995312469 68847282 872940852 795041931 818555524 70243664 637499225 129045930 343580346 980989508 997213881 276256491 769124566 606299037 788450671 292712625 863211008 712595585 781582101 684536660 705429393 436634034 720673998 944899850 962256795 313398175 415493775 702760749 911520537 860298407 969400394 921360903 930114947 29626883 764478135 470271565 757183454 191376875 291073224 957176326 996720865 510681941 820442461 679447314 864266340 685697141 876167013 657439823 884096528 898599372 997183811 233160338 281840612 775985843 784454378 725548634 841974585 187362300 625537304 167291482 211609875 814228114 920808588 288284249 338008420 358781208 456222974 315711453 789566157 699366968 799705884 847277447 990506707 976694585 984020061 263684113 708076318 585692600 967924812 881701540 983573141 925020318 965083906 106024197 878763593 352535473 737888578 420743905 481568433 701361604 755308003 201203116 935180360 354990599 378256234 943255762 969865803 489224245 726866829 790445031 796843997 340518409 591755422 264251158 599040234 136056692 642239144 728664623 743101710 664010062 801039098 483507292 664691165 51550954 910406543 400761904 792032103 721376286 811606991 201433569 827772646 884995336 935568439 724246006 995279956 55856633 963103118 703531586 728550659 411575439 463609845 956050736 997761581 401932225 955546916 554052479 981280811 11516784 137821005 501605186 653830671 283173318 596316670 899513078 968196739 728560520 963573424 563400308 882146910 211948404 470181353 658286346 742580187 319983085 869836650 116738801 793841921 42529559 343718307 249162693 485115255 725054729 945478887 488190640 744168149 379057326 531785447 896152510 973041444 987410672 992036537 437711418 478887013 968558502 976337804 403127505 705377648 652684703 876509713 205699122 658841099 526608112 906894228 899206039 922119185 444005917 673321924 886901969 895911658 355324573 818948615 827267957 916714842 148934145 761140193 394808506 449108627 391105201 738017411 527715177 933609994 921820140 946477752 727814290 904707167 144695665 816835391 116761311 935297367 998956812 999192282 995661139 999142935 624532949 645733107 525842302 977806457 510723481 911376773 383700382 645919006 489015010 593413637 471319293 733318125 730463246 904499955 897357570 988936080 299394473 504125642 585305103 666494858 115293229 888564656 445192104 588701430 280076081 902356098 945443211 975106340 308937779 649594059 353726573 404501880 355511002 850715337 320481033 583490815 543791284 634336461 620658110 903990620 925320639 991942165 2999277 217859241 38794390 461760244 69079133 459714250 509571815 742420000 129853862 435032902 301674287 951563830 352918081 808406720 720288480 723173988 234541220 237981865 810489719 883329697 710363028 890325575 60803434 967775185 334918532 476621337 214940870 734161267 919373288 933823268 703029619 994273478 723953569 829227531 620696356 766195750 308975941 942377844 211142873 665656098 620872881 635228488 11732923 943780842 30097713 303113170 601212128 744358329 456038717 725395577 195073523 340316016 584666799 996862061 975776616 978915006 811486417 919615608 379237803 585179436 403294780 903748687 291863240 749505009 448827835 980726183 577208358 914177213 640227163 993618164 416453837 597747102 307921716 683260284 12648509 503428884 823437617 991807436 344084267 664074285 624416682 917887022 524690504 701325836 228742970 248626440 925018344 991865760 891842027 979719189 693102633 834768178 611793586 760312655 208339855 347896955 88688788 96992173 995600291 996936987 773793878 909017506 914551138 999124659 950239715 980097222 96871421 399901584 165483193 255249038 346129395 991268023 168738679 936123696 609432405 610072173 552820368 735885750 449871599 577530839 104429648 353713214 955468217 958223133 37542481 431577318 388267632 406983311 56648158 698598049 141242929 279676774 135697983 759988831 533740261 651834938 123934514 681494505 539121376 810270519 490668017 827027924 805272145 841336142 342741945 999942868 113321490 127695504 749536254 767605321 290085552 887766673 108864915 794615567 751545252 904540660 784070632 959639999 737977605 777157172 438885912 470383882 111356190 813392381 44284911 300180251 648086704 881801936 745615510 755415437 410900592 500826367 613498713 615478490 808056527 865844207 759600220 771550705 473720283 513175291 691891643 871109335 154082483 953944471 337363127 937809566 665259679 712330302 217974285 294796230 384267520 811623695 865130449 956314466 749882173 881763701 379343260 422723309 391978804 655300274 302036279 711880726 508824256 536758031 384530481 956653576 444966048 800925117 359755418 720653217 200646833 693183397 21151430 700552995 246565979 950798023 30160017 648757619 615793071 780287394 66652013 355023173 245564754 694984772 121367767 166686155 472631054 822544370 205619704 416792061 564639435 975340985 625095939 930063621 469830479 743180998 109969724 806514053 934876032 941600289 297373474 691508656 754362406 909689409 705448050 959594494 992861606 996986904 643045892 821982775 54541322 983284931 200975141 822748477 772618606 844718888 142452122 656826593 876450500 987125964 967697736 982432602 843354534 912918877 995515875 997228189 95810303 722066967 288915360 624019885 645811889 816025981 125233361 397213594 29124820 316345492 193240785 382668933 105946137 627729841 706161338 829484805 58455537 691939656 145039151 280003268 431511150 922792635 138469279 563898587 443293169 822745348 114634895 918128269 949347614 979878698 929982991 969458506 226103055 720261483 822859710 853350070 934296038 989044981 849902135 903126118 981704668 982881790 264030095 677998399 993932867 999397870 862682834 910594328 510286720 596785113 943054908 944548360 30008369 789550174 538748416 734565103 425276150 844232793 6126973 817663879 664118719 936808658 136925317 412123395 549446032 626884688 591194064 651131369 230348766 363466502 956018946 996172887 270106792 491885466 417994572 548242889 682548439 970199201 544944576 842743866 926566890 976205155 779235761 986836795 462257039 997746080 170846201 245163568 845785302 997523625 668486952 822436573 232847397 848877338 341546842 571133014 437110365 982454765 740470064 908610888 66535470 589530575 5234692 613848046 173843635 185640872 421673139 608064197 823434844 826569670 560356154 766133867 503563498 792061218 808788700 926472352 840047329 987913469 304020302 552606640 805473345 895822478 97492312 154774038 831061636 931254689 982806035 997384983 656921795 818376720 759191679 860130090 908576938 978137384 960249105 998613497 751860351 812990087 416395101 964095806 824623453 855651031 677210546 988329859 131634562 696951972 704879725 932056211 699626069 961065409 870499535 967639322 122039454 743821714 199451981 918620358 467270029 691106684 589812632 729236372 712238989 857881668 623786120 626008205 323690718 626358899 593512043 755543494 721263806 999943320 479398586 573315937 734463730 838748743 732054086 825657335 495477072 907254796 638408343 859469432 187558441 740328186 321664692 768843967 590231197 613846512 850574307 908563556 314547171 909278131 742027382 853467493 325262514 355450999 923489563 971937860 301950526 475774110 329491861 415255651 781008120 803050816 792881446 844691363 521367651 632721513 120183569 673505199 780742124 959026300 483440399 916609899 821159457 887476225 669300761 834714760 701804866 751309889 395550004 636406866 136690489 976064658 746487279 846053201 974386670 978526740 256421686 481759397 213319664 952022471 444821674 548677800 93501301 749324048 510920343 932141590 354106034 609385435 759051154 833343290 29734595 838125158 261221961 268240999 269181643 436070355 60778164 370133669 999662388 999884215 586325567 850028773 23576025 854849585 52046802 821057711 905868114 910436505 540845279 790283695 905433005 961834169 935088560 979698583 37824580 748919187 673741782 705972291 320440885 936809350 677934396 717602927 115773148 595413183 924393087 981174560 518121237 945329279 803641222 928658065 167713527 181737485 278254648 574592180 164546031 369537406 213132450 622064369 664523933 750122580 915571368 920538181 720305348 845312845 781499656 898280141 40415878 727613116 86441962 862711073 760406424 796620969 641653051 889504931 501219796 945057970 523158047 910928098 643316044 918182676 422576484 615609012 269651625 684399030 46127005 601896868 43212141 223104422 479723004 790567232 321267889 937631013 636137377 747054650 875566454 956219344 816974734 953058431 99748127 505421519 352965252 655401526 477634281 619597573 243083819 379403044 966063020 975147525 472573514 748102336 410810443 995115428 822504566 967808484 730637010 924134539 357820975 486546507 57407987 348380838 483900605 639097897 373071893 459642612 772042272 920411224 757190092 966791086 146985401 863854085 633892241 667671723 777207647 819926923 28791790 332065338 45809170 368397980 576988238 984307199 651624592 993203328 210324286 941201193 541204325 584393794 105031861 369785774 784842545 938042504 778292692 825140035 930031157 991019290 467617613 798798316 380446286 632677535 278024930 545654661 465781259 730155936 561903077 617139688 701997628 923969517 928915946 979105046 257022405 286095592 348884007 398478904 498115817 618949739 641237052 891139651 431344487 633002484 77801984 690339599 786796748 947521425 679153342 977095309 462458485 850539532 913942404 941203336 984344696 996217260 847119131 904643600 692631179 861238574 758746983 834881158 97284174 457423480 152357614 785330561 42672657 680855541 842309706 842511541 265810040 520990460 815016624 929413592 929977619 954864600 412219387 493339127 383508026 993457828 237789442 428592274 632565562 965999083 116598234 337441481 653933634 823167299 437658340 626352957 540713119 723796616 548645595 730446444 760473898 957731382 92688837 331334034 513564069 650259416 533686031 793152736 676968739 745250577 619116216 818218345 24123024 900200742 270835900 603630558 225660755 814545874 142227206 351297230 938476491 953953783 233580107 559943057 587912060 820900252 611016587 889974360 606070824 690588860 193430486 700354893 159164263 268452319 545055356 681044288 968478378 997248994 151781220 907449189 262426689 711799858 53498114 670816764 202537697 227043758 603571719 734406952 266438873 609344181 421039906 542292733 121234743 716741314 274220910 502648205 978295012 989543752 468741317 562390287 50230115 659729531 36966190 842449138 384623597 699565029 682993640 777789737 123071808 744984480 596940605 985347045 478198449 699660804 629439625 977362370 182260393 942132595 373611607 933970827 531057656 722199536 5960879 647126832 352771307 521141397 682534298 999296741 433820793 538968449 863453292 962268447 28147708 892328039 808249260 856766317 977973617 996407560 614846964 985866264 50620566 958106229 36580012 78368476 518898638 520217114 808306817 877457421 848681294 983823106 799290363 942917619 61186848 348475286 322638237 643904106 30795677 585421930 540610596 818480468 786526832 912826832 220767143 355244752 372377664 406999566 152233991 867466716 798954423 875005709 988457838 989359541 72463135 958190442 881263547 882724558 423203470 798128931 294547461 371214220 409720937 414948238 492440803 558129162 247201033 312176540 893660535 956878565 20714882 232034774 994001614 997898282 301997053 448611882 173300292 860753417 128539328 951823301 937183566 963938998 490797544 942816666 522613663 829064224 126057200 424732101 261753093 313077542 813983903 991547881 798032672 954855529 486851810 951616020 693195864 956571897 231862828 451767201 206241443 412197378 292015512 741783280 538720693 555779418 942335216 998811829 426432397 813417719 512491357 599333071 42494208 112614267 510214697 875912352 492882811 801096912 354532131 551964153 892680354 931367504 955471934 956645752 911420779 917306674 518950748 791274970 350973040 854049234 817798673 867555889 347139649 982340743 806494866 891117392 118870367 744168512 199398908 806659589 974298200 984349067 519037963 817113171 571696484 580383409 35834558 650559509 561148595 949394053 331335475 969252708 555609659 829841076 412073362 631265343 781808648 876216736 452766129 668300512 102898646 849570573 995837789 995942485 115806232 992448631 698055545 882808661 593853182 918065934 977659240 996739996 922354069 981748783 966352717 991226512 374164326 412334185 965050302 985670462 701000715 826654333 212448004 527865994 545013482 997647638 383342893 968641491 665438430 710074472 763608562 999132100 332798176 506213309 20187036 410394456 322115508 547561809 376564584 677151305 452950718 630041073 831133978 994109593 756033721 965550738 253846803 665407121 804093470 825053614 125238794 518676063 431199596 667512640 840869689 952989925 193802356 502045990 537436549 586988869 79533852 549054832 132645653 201859226 993313045 995565692 315546211 364826999 426598773 861717253 403053880 456338218 921205764 992870571 573807419 605445939 189013565 726402528 890227605 940386615 841951501 970401943 121564755 570408554 568221661 677818875 437354798 790628506 515898640 704842815 586228818 955733972 4001715 713136547 690272314 733300014 808070643 976040200 728771740 962408315 25412300 521299205 438671912 880731299 490695144 725657307 518739416 935972825 95619437 618123266 812510163 890158453 975521397 999629740 918122957 945841486 471425476 970166786 404675235 423827929 235147407 931604661 450472586 974845877 431794772 811705918 312325890 890043778 34889148 837197877 978141531 984355648 379348785 843670142 708087879 890684844 648666967 916478233 71415983 332996103 292976748 399920416 98215432 604076539 344269352 663607925 530722557 997819642 509420025 731086596 6243566 681851779 542825827 945437223 925974452 953419798 221193800 927455298 403648153 563976041 381568552 485324255 594855084 611432166 234515698 267375813 671343672 780175820 412764388 818769184 212624297 690686921 32309630 256772380 143949302 747870597 133908454 339469154 733628219 776299056 308865896 351691861 267929993 558328018 66357455 745604250 74773997 979417382 249992693 771775468 918653800 985217945 355001369 562016115 623189696 914017486 207280360 567836910 541382992 946626161 659676638 800110615 861817438 980286976 628749830 776508753 720395554 812089157 506124566 528295152 969176491 990243683 902988681 912813914 731571317 867269148 65302602 940257713 798511969 965269836 743235277 883945189 859034845 862944199 979334643 994961174 253735192 822015608 321917040 443764844 423207701 770038436 790876106 902246953 231584422 736379837 249905676 979125443 129108321 859718411 17957133 949555769 370683212 932958836 583912933 824650040 299194451 725064529 884533446 980079804 644537365 836436796 18410543 749794588 117123345 356937776 600210736 863242422 409488388 528753764 142969196 647378595 689220456 856626970 912981024 951432775 974357688 992901562 866513637 955803569 807663876 957186209 950885016 986448990 44443955 260657512 355755901 561132676 507371457 812122936 552329174 992449031 154600329 870208728 306185908 567651348 736640544 870139411 227626732 631643991 828817825 873452465 598963450 947527731 532359249 957571005 184581983 975810419 582307514 750328325 961091572 977392410 541978164 938253483 771141987 830230024 864439467 919753143 244351795 310020737 561937851 581242508 742743876 768298081 225450278 664579345 942652313 953714484 824333339 914374746 404257889 672559789 645749007 754650766 758197931 888881938 565069441 660001327 530035623 614430263 885088807 955919491 870351075 919362689 478279430 915608369 855912845 860623099 946521403 951971289 336952936 585659006 443383452 858257562 83096498 319356743 552338507 747971271 547964539 737099415 554256960 602354313 894342423 922803225 828211577 895763789 848645206 977364431 185440259 620695579 738488650 847390034 46199114 316974006 240041760 250340375 726438721 931047994 120045194 331431741 992390620 999216117 58632620 471222194 105839236 204038402 650640252 945199689 261680175 595198737 827727804 898927725 637586491 996256558 546813472 901362752 46820966 966453451 7497788 876189932 481634034 645361817 743806265 938184493 754528042 772587992 153488826 529059445 994797426 999446209 229510788 418771915 839551227 989031091 724687504 866805948 999313773 999895102 967226003 996114612 665508132 870792298 137122736 725223831 990437106 999087825 495511586 507700627 903978015 940365069 989267585 994730610 375988478 587269988 305048594 700318255 434488745 978373461 237115351 585384666 281850603 442002429 671110971 905757748 704969894 840483490 103610977 479778041 999231623 999638568 802347016 983996652 220551745 945844140 785999333 927802874 659157603 953677168 674597879 777110850 623004010 846169234 450607964 785752596 28644183 98583117 728047776 888846677 385014271 922167059 94760599 848180365 478009961 548679954 478427593 794745356 726623663 981821993 201293371 478802725 574310051 585223765 364257351 971459910 730830787 909623182 48782474 592043484 48610365 278579019 113329366 283330012 577904131 977915635 99127287 195873431 600300942 718727684 45514311 957288691 75892656 193129153 711097320 846196426 125980914 617212658 640199138 781133042 109575142 756715379 839744308 963969770 365052653 399657221 188119408 389080925 316987466 378755400 102010812 760978371 837912982 888099513 547498282 934407474 436034964 743898380 870856281 916165550 727908227 846123626 182949832 960217486 64391178 206137797 964454979 982919758 712049117 753222477 895348190 989524847 859404504 964671079 5312276 757562573 323304730 508495863 903203163 932683064 582814538 798461139 343539037 708714651 175584846 541808864 382355058 704228684 557606972 729460645 625574504 977342499 878596954 902956840 579152147 611692645 586729573 587305180 97780929 144756711 809061083 857221880 714809332 912649747 372370695 987950148 651785189 779389458 160623597 601326824 264684288 611650106 11428873 180255033 414389518 737541202 368220234 879696947 34791846 464988931 605893139 893390110 525353193 981410119 585048151 596637861 224663839 482968971 581613310 965482748 141179254 518608735 242245040 946962017 520591284 527873840 285421487 890018233 969446793 986016633 917208792 936486904 493898113 871818035 951353425 968116813 488482691 855935871 712261987 948016998 906459756 948008833 418867863 907726156 741633223 899879807 334675759 701534149 761185468 999447580 885280989 966194252 264622694 732710751 907270295 978036428 264558969 729606262 310050749 517771420 629241988 698783977 409787021 516976012 30610905 696360693 185623666 347828301 829801072 910315619 613928422 858163389 382634706 423777079 870256279 907258260 257793351 896496913 659603314 660255776 865635872 874430394 907428428 911911828 150547312 469432804 7050502 891701331 338980967 779540016 458489500 858689444 750397214 968745048 795945604 990950837 888399953 982138976 427106772 442862772 675480224 723496420 155666822 627262263 743752255 961042157 524358775 729288750 358722157 661852154 590718566 802035537 843606519 866612027 828983872 861125621 766107043 865189129 923811613 984202249 550641324 732142482 315615471 420361853 263574982 756706776 989201683 993111194 891133341 892244693 456136668 916392516 381468643 587884764 438849988 631331747 632667198 990018268 287513306 334044252 87445692 338928600 282090478 434407816 503074774 659547872 552840604 816752360 832974532 934968605 550526595 995251744 946962763 971797097 190385034 740008668 701306661 750735915 986497291 998759016 447291326 520869495 932213499 998727031 600989679 644263328 75623990 94987159 443720094 697010526 641053484 733155499 885519646 935182484 288321704 877137594 570247424 778866909 475417201 774410499 254191804 536873168 631264390 837990960 408721473 637541158 641153915 870338273 712127832 839000974 821882563 848829332 304081441 749352762 156796766 549923922 542059353 545787252 680025151 896398108 803847922 978304701 927534622 947755888 325182579 625429247 404339487 900385446 704333063 862687948 643100934 972025330 775157946 793370767 367827571 664097336 358577568 565901883 318187145 547447366 936918174 987928747 82211213 689252812 908469722 966666748 201832307 277126576 901371939 933101675 592205329 784292633 984116227 984757256 251382643 749901838 314214464 532573287 483793428 564729809 859355153 939848692 285409340 537304461 430816482 630301925 670987544 754609680 567630025 987603145 511794096 994170733 670934935 808875197 144691718 407659734 753069406 825059002 908430840 982407689 60382244 963249971 73862386 693979912 352281992 362387088 246698597 513282250 388408032 572604612 738955753 793623703 660329684 838733452 540618021 914191934 377348962 535136059 291637434 792611240 905002524 974957427 249302246 907066841 362701591 685291634 26772689 996028446 364597041 882997569 148670414 631788319 779063753 846408817 421588549 816362602 473504581 990187634 728754268 992871248 861646603 923489581 111572104 195748523 882794579 889359299 827252868 897679279 20691883 711627734 842336523 990630132 643298762 834851455 512458575 907976875 113277675 736133494 870016273 904807821 246074669 869585558 847429776 863430643 916125220 980502959 342901336 407911674 946409280 990785821 171661291 495617437 276157318 445034602 807434341 991331297 84178911 181798634 901745794 929528300 357761778 972726504 291833864 844002288 564727508 971553976 900156631 991223108 328766876 400195309 886304197 962949060 15625712 424337143 475636122 642532804 677241627 843974944 165543184 685717394 910498317 992213819 529003620 877404137 631317855 991019628 780022836 942787265 457156362 875464798 366447125 965478386 990704476 992407755 112934945 890728076 666216310 724394277 537615894 979509535 357406211 834680461 538925032 872941857 673165417 852316792 455085070 658500292 895447587 957766071 994590002 995399750 208705383 680453754 609071937 862485974 820745259 951929263 202758911 872643191 710091594 744854973 974504398 979127553 881116195 918872631 10415961 848656933 203896415 472464965 635984829 944541610 94155293 388035784 155099675 599925469 217557594 383731956 403635249 431051269 387991441 939733317 497909967 634866738 415364905 861293990 887770939 958839559 377216479 905008825 549793525 684649272 547428402 811524915 842557211 964558555 304630428 758309414 160423059 971968727 854671128 896482265 444264028 959197016 673257776 961972956 434659204 831873206 562937009 922251812 677444909 735379173 591984798 697709814 477531085 631561215 26816432 995665974 302390138 917238980 103775222 151063501 922816660 925666123 415913396 474756888 580538417 802422967 750214489 884665002 923742906 945151292 216111055 441462719 429470601 770622993 923325184 936621830 26324992 821584811 172846423 890795726 112495505 652571742 494900735 935060947 402096321 963661791 518640826 629893645 738616595 904010896 963627125 978919588 690232213 721598135 979093960 980681877 858509083 997088492 967909765 994800165 862809350 912868964 507234930 726402508 142141648 494444120 719895369 945939064 909867722 964850701 727226558 973850162 564985134 949393950 996009009 996534143 120819977 191580408 44489078 769234844 852413690 935233139 83918541 453789656 74264477 893626247 150597993 722831141 41516148 553413506 103430601 766581890 985710084 987130264 331259138 857408171 392320800 855321545 525051472 961882746 662383911 805566276 213826136 341212661 972197655 984512718 778673837 954620007 805472314 936770805 462508352 841317362 701973826 795821118 156921433 800422222 468938266 787560931 761016150 883394086 629754382 738573330 779777932 832096381 221931032 512461489 2434098 118809068 228295236 462233992 487705453 966953113 781294282 819404970 327119033 384842070 90683253 923730474 48073058 540334911 373263761 661359159 968727531 998220275 912718892 931217234 715715911 946003170 510836388 999688131 370522601 497601558 775368271 886536534 973701448 997431304 235914271 662250222 443924529 726676351 127394473 271409657 191524474 210414651 903874837 918917976 400286957 571280369 304569595 650438743 288838907 439263172 325096852 918264324 250022096 904725956 457403449 948309515 734430496 922884439 259254541 390214962 856815701 877022666 100525229 436068501 121256524 148243074 228656924 575063716 500022227 632327879 270644211 292876933 336714134 642971222 557444525 784767475 711299221 837614410 404544368 975249929 501631977 503078393 631381959 681286487 394935094 568110627 903741620 934680084 861735748 975869446 878871650 917459343 105117587 329220891 823421210 880410795 38823699 620835029 448256366 815176865 9404328 491971476 580847692 652661131 543667222 714752015 449666183 572545234 974378410 984530751 952799902 960043263 516493663 723101413 193509590 680546775 115330390 729378061 866962230 885691961 216409453 236096023 553414206 830457734 457712235 808049958 383318938 868380836 803747285 998991956 256882246 899394593 700932039 907038302 73965707 781572268 61897932 509835827 995186692 997870341 153633845 378383109 494386496 738361794 995997700 997090839 253499965 280997532 258563480 603833677 16757156 860875886 906928079 957809377 57900121 154587739 945303218 981598090 777471561 969026430 496766993 943211175 973356331 985751846 366148944 367855396 721016243 811516037 320635866 825566906 710206249 747731120 792794897 831666380 92865783 841701670 578137685 976385028 838353555 884849515 672678421 761404945 154890164 407471793 554137374 870548384 32362764 33618734 729647556 822880465 849190806 919899327 862057016 908286300 824976964 939898946 786052839 830796719 607368369 963831563 856037029 876470914 68373699 461088259 274853878 939336504 769257235 875311134 683250373 737073099 286516304 561417582 729576775 835492050 33231083 712446336 698517419 745512245 201967521 293111596 13290798 322881134 180239032 553480607 796377393 833734450 182203477 928338501 778519966 919082399 354076596 457889393 748683743 821841996 96134461 350763716 89910319 348398456 347729887 379728469 764752268 996197193 888673635 896752169 123516075 550653303 335245147 351899928 304565213 727454351 525710470 705917371 532516928 768879236 762670779 869863671 269132621 913489424 329120497 961300731 989399698 991319528 859696402 878557780 193676966 793647677 903576478 934167581 860305399 952906089 212689128 996800923 766446305 870454064 130724119 638589129 215826204 790813622 726322898 985329246 446738641 594983438 870162290 900232434 710626126 813270496 340658526 854432657 340577037 674153646 498608154 874446978 723383734 829991778 549385221 586891250 543228941 622262148 932135058 984093419 712274929 803111290 818354343 991723816 280916793 989021585 151159547 234126308 349697966 884934554 543756899 677474499 252493939 380207446 672883489 679540265 718392441 985929135 566024110 922346190 312038978 313237248 351142649 748945675 445833021 465341723 618882557 630927604 183223962 768912420 129243709 595964038 590788370 776883894 363307387 390461322 215213400 788538022 399561808 499071458 673575078 949292678 773074504 983374025 967765191 978421095 188852043 578488571 79628705 95669375 620303887 708881399 940251036 951629039 731311765 957896371 468073096 614437450 392253278 462044411 318376073 689881549 360272710 499598076 428851352 927727122 198427164 955127725 477149145 481691998 149926328 903660334 988662699 996744271 329990117 401943875 272341686 927380620 235922468 834174078 725672548 881886202 978752167 984030180 445296382 572060162 437704436 980317198 297597067 376961416 489041560 652787692 427873230 641883494 280632813 431005791 934264297 976020983 854061567 965904806 614236049 831756681 240609707 957211684 868040129 906078586 332536836 653658306 848271744 932930192 747383387 824739472 829693794 850203975 349438522 402876766 369903668 901525366 160948345 232770463 130180853 235121193 977158093 994130090 975352700 985697277 662812008 896066747 307275618 568443812 248109155 570576585 428479791 768585477 265665618 633749305 166007303 881351355 833270014 963114451 963080233 976112679 578220248 901693232 90561130 385678957 970213505 974383607 289439579 484892280 697028568 963541212 322783753 475195221 889611325 974926574 162699565 246655914 757089093 854134183 206547547 968099904 823474039 893709958 957995157 963493226 790317576 936805376 558642410 691546311 716168962 874816060 479000136 928956544 944886225 977339264 652678200 786896784 147689077 425620033 953074133 976267270 352842042 720654668 980949959 989947197 113866585 812222144 672976756 953629785 759225089 906023010 264988274 605297335 987244164 988970946 895844402 998068443 713745354 787547952 98920328 978595123 83236365 856731033 862156823 888919625 746152083 988754188 319252455 486191088 611165966 929166507 483813277 661491126 76093064 328060472 899013202 991934446 680940740 842168923 161086867 202191708 54904009 626571760 706024326 784402071 291774751 310175818 53813830 390033839 702336764 935845186 104454500 496232830 848682597 906659104 926468734 980382288 36857463 449844832 546255144 831978594 660318571 855616338 674034987 761723018 916876907 990137327 524694278 811695611 317893480 747657738 64313956 947937952 616046015 723648155 847986106 983740235 908885139 914660702 746964752 938420240 603238232 802777032 252625239 429800428 253611195 499497313 782611049 958480826 665013185 830940453 815854123 955319714 219983439 384521160 63570978 524135725 416158825 766989289 784313709 916521214 999303605 999516452 669331197 877983987 78938798 982459938 695252699 943765044 728931069 775073332 510151983 746020602 412761195 507952331 455135469 833737828 392676952 465359286 156675767 516212173 794484645 831664670 717037012 933304228 279894823 488541397 792136951 816123695 399454191 908463283 158517419 837718175 189278338 261668134 786619837 790217422 727056065 973229343 977409834 993031515 960758642 971588663 275251845 275629814 805568201 888898103 812790601 852424867 741549556 836557747 127157760 846707658 476637250 489661754 363223966 518309399 889618528 970067484 549179098 850708502 498347752 676817877 169924018 828794898 816196755 854438918 24362923 971364510 434610000 547909601 798674854 923355051 805404675 840471035 862974093 973480422 166991203 988944833 808544570 855667764 560915894 701226693 472171308 882460642 422100213 663880583 210399393 610922137 127257892 196070144 87224614 792805937 832892187 914557715 877379798 935638138 731587020 944236677 665386225 739199474 971444162 989504017 997664313 999063641 274648018 999389894 1624060 354525930 785151580 866107034 731980631 805719583 539316593 597341345 773598684 923547065 181868470 278198238 357010150 480681478 740811642 934151322 537430290 974628021 365061324 428779097 333346193 665320175 218853392 793712521 455057729 847402007 519641390 796951753 90258071 950258253 537408412 865044746 134958733 246789322 184748766 318928138 26058413 610882716 61002992 327675925 296467981 712998458 657110630 998569793 167063432 571760408 931159625 994031935 226944779 578970314 888289480 961061001 617684551 887742030 346128948 615714162 71377443 463375764 554748529 937694593 719489887 860836578 610813906 707468982 801888198 920122867 737653748 969376254 218866101 792959742 301132409 459762251 846478004 906060246 832951020 838773930 624597428 855430206 312852331 856845068 791573121 794438374 920834909 957246813 784880894 844972972 487418295 904281466 529146199 900707769 446145764 519161042 442494690 558485390 972449881 998625301 411106154 744751436 733379941 791353765 856476753 992953614 350159278 872042647 387424852 968537056 667679266 750436796 6047187 107012740 19801155 52925169 399137439 622109132 600376030 758045166 358496363 624868711 226286313 683396581 356184720 563487623 208241048 687262830 472766601 933412502 547961996 872586946 725688670 783430909 412549780 739374705 81287599 666437785 125460833 636169159 18304017 732401002 289835607 637124500 487976173 691809320 150659714 865523097 50337061 246905410 238527734 366844850 345596749 722928349 638866157 698393499 626727479 818211394 112106175 398854500 567279953 905052060 709404245 744617056 516075912 937977395 863186912 999320864 425692396 543899659 91722646 344172505 749417402 974162041 42336724 561623256 518816578 820146666 670090179 917057043 814844200 994420566 559269942 581918817 717098529 851952940 723862746 894803371 31645271 176244607 214195751 807510039 102891962 748721821 545844755 715597733 920310637 920709289 644930214 798922424 91806296 808921933 624011605 684680988 239478321 583247146 817186573 819892163 53676140 593871701 133322218 907485188 438493468 779506943 78227412 667781787 428280045 515913692 906211207 960541733 916724225 989212545 799837379 940165150 667872842 976847344 126664360 184580030 401237664 972383864 775336706 778833670 810391134 811724055 909259571 946192160 934746935 956043779 56653353 838374967 73003474 833435114 752922183 761566630 699012523 893774961 110384053 162723404 992581482 996657904 743969471 909401736 175889378 951694694 591540874 722525910 237585512 507537840 926499477 988110887 928247388 932489267 164062582 593459945 312028102 723416532 617149909 748120973 183041852 982234414 313341252 767338078 565581968 848963132 301002156 718124992 466138382 980875839 737789620 773651814 587730038 681240478 176605124 265377884 50798376 402427064 50049562 387756582 150149417 477489993 575256265 800460087 779996498 950330202 924570294 935578110 872564968 896280559 74487410 849957499 181630099 755862750 69293885 998100445 219844391 472872668 377709542 728266288 89692515 997715100 400763152 711397006 118660619 650481684 684641187 967389469 496048842 938249263 652415635 850986900 367640490 498395060 842901797 921463385 530402944 844384803 850106732 899916697 316001989 559382886 379532361 987202416 602562825 881244316 492081269 558563298 644889339 860840926 428152558 974289254 676249442 897278016 156277736 284286554 688412141 778820485 630526076 702127540 81214424 551652141 708321152 750905338 39649413 758407007 501372863 590437359 565617774 877797071 242536142 815801234 384850583 444039479 445391491 737878907 43680260 119652383 579567717 870761464 481713646 741654010 936708951 982281133 269483313 534523789 502892458 853034182 930571200 982847557 296512882 791625239 613737482 941603496 470290057 605243407 237604006 239737614 870947051 947964045 707703306 744317441 287729541 743424731 518804198 906803452 571640080 951041062 773900216 883697788 30021517 79004775 595255997 897111106 459234427 903473512 25699053 780104779 62887694 294713517 400936423 854920885 444453116 730767360 137572397 689738101 688678866 885191663 811280702 996849175 877656370 944817094 685500221 887451738 58178134 900944699 772549818 840462138 526023285 915084494 926587615 998622992 910556912 936504196 662592601 901546016 14942642 770242181 894261414 993892073 848226003 945363449 42862551 898480426 271081273 832304579 325905524 736351846 234509993 883466653 541470820 684568146 847996380 950779418 585861505 777254053 45597625 354995216 253063986 565177173 175222265 311286369 311073960 549380521 27013034 423524554 265760443 702508305 147549497 433892587 127628163 681674291 847134484 908256948 661613105 967026871 445137178 862726102 438558412 748825475 907595911 924510855 22371746 903895352 55659080 778364517 99206149 654057751 558163904 875463670 948563182 977111786 833249366 932302100 573961374 609502358 136009256 448531627 451779162 952364628 507998573 676372754 404474682 896730899 430814358 780699045 959158838 998925677 652707258 931895599 895873314 960951341 436009318 597842295 821373700 982297091 517423846 876323885 693804122 718121707 855234441 881181072 935419246 967107749 135187584 246000064 853407661 874386098 558423061 610090247 23017362 182246671 786083779 857539184 752672779 830870251 808595611 982154416 151384452 621883886 875821053 916308193 735998141 850600505 368518296 732273785 413868236 561055749 212218804 913804645 813912125 912588196 366823482 769558642 98365000 934653915 522255144 889742504 948981776 996992631 939902376 946113608 566957952 877391646 675616322 717599836 890699349 995291793 106329184 420549790 701679988 773384120 136629526 950192462 513331220 917293599 756224300 929472776 497116550 700777888 225802933 991538509 587444862 763466054 154429490 804071832 178523091 961492571 98435846 813623257 177705251 301048605 919397142 983004244 925852797 956262418 636649449 840170657 809745870 965744961 398613107 449808079 191448706 222097405 579773511 851645181 379828871 866940314 116722844 918652751 320360264 923546655 752240954 908795636 91855734 949326005 95918779 512978729 106232974 977982550 171666647 215443617 757884461 859110592 973113367 990561903 93242115 268617945 927136222 980231461 551858769 592060569 526231801 559265332 204894205 978406434 487422276 869596436 156492770 855660514 95156987 717850570 972033823 982294165 621993311 916130802 634296380 774234417 597705973 877423430 983596322 989803380 998433067 999931301 480879788 912932125 768178997 865556805 467329965 615994580 9148518 214617748 330110242 991316413 483216059 935214465 574810271 791681634 383497873 855541496 369222718 443057577 521607699 710202919 703615914 887619300 292534270 602638858 666771056 873455936 611734629 741806798 839583816 952951907 418736651 869617995 133093847 392242932 629819988 856026041 7813409 62534400 713337181 836529088 282795774 494494692 448450653 744760623 489944469 674389355 365819580 612563157 685353142 808992000 762680653 864018980 96198954 426862253 19132636 501943572 777040499 814646698 271501144 561224178 5278192 81879807 656678075 975758489 480068877 957325905 448886201 544468339 10333495 791299312 881340700 895861823 175733620 215089971 266610711 565991750 388673745 453778621 779597531 822975014 304790609 574874347 375331983 728206720 746857893 963400092 390075976 476072063 772126731 796881519 23491443 667185859 866718869 920050222 620471763 625712729 476813700 602002537 151121448 579157250 199053889 961018050 489658871 573845220 304227016 879571527 527247645 803501084 313262503 838858295 425815200 474572419 109950151 322447578 906339663 922001736 796392668 967486665 805793598 986761320 900122133 987468709 78928223 521558546 774951689 921096338 689448113 740789320 62998870 472091240 108727030 881623455 14073790 34588777 418118484 970397793 880779448 964594236 960824738 983570317 473612576 753968771 797912938 918440784 720352459 781679832 181832475 631350315 180996260 252866370 47729851 591761734 501995443 838713304 751320556 817580581 747078030 899443669 221482302 531955114 926732207 994943323 645022651 685426533 678641686 927174888 287123807 293820375 725766036 946709531 561143289 856058303 671491999 925827517 119987660 951550218 352464904 658229550 573297835 634737741 960020112 984585008 437602747 695540957 359187992 700877535 717740788 718633539 99223429 993341662 737536589 925526688 941369454 953929910 35571095 537447396 935752694 947851057 179890875 386613416 911303436 982274210 602002305 803787311 407836403 945332061 947187987 975117089 611721816 686693213 788313176 889175385 818865429 993410318 723292529 945047165 380683175 836113434 395603019 747134229 912589299 959672265 660089387 913208286 413982563 425073646 947542485 968854882 267298429 988124635 8838917 425011700 558844300 919190627 728651497 972194011 869144673 926915338 507599548 919487772 372400298 733936722 145718424 908355478 5536325 318058745 139054561 167163626 60807238 463283313 446107166 649218428 828136978 847635119 685007980 980828410 779992720 885125133 320341236 956133550 147566740 332738226 203193495 590580233 133072270 419795184 337336419 671829370 37619608 599622133 863086552 974520925 30305854 765814051 863415725 907662159 369395854 804688999 471316162 594890584 446710182 562238304 779001788 839258430 639387364 807919698 15004048 111661436 335975286 696225185 214884971 307137474 299621596 767850851 28289081 846475883 507020665 580367575 596015534 798305412 444290340 553874810 757208974 975330697 886165035 956273997 339698282 517790240 593160959 939888273 544635312 987529760 140934182 880543410 938968719 996762534 962708247 975797642 165074545 859730228 658296258 942584291 827858074 839041821 107022785 210689723 112204882 268595208 537616840 845009135 312022836 816079868 79506427 91466505 20337353 710239745 500980355 856778995 750163864 752503086 166299385 552787409 210575361 703248481 209986442 596615816 651138190 888054989 396292930 842983778 123854773 337157703 424988991 502652512 574999726 862532622 291359469 872233038 782378165 985113910 447339584 904650943 305989421 746096877 921120125 953050504 976142386 987029472 30301852 87971497 215701536 589705352 232148933 980381558 487859618 778230914 240298262 696053208 638139570 737796176 496830090 533940806 993810779 997765108 218118167 647226650 758116204 808257244 431870506 995255356 295550313 409126691 862193707 991918552 425091288 581990227 512191766 761504884 904522164 907783996 365720419 790549090 304553525 538390036 44156551 209195834 324252304 928342270 152421429 631629932 640782452 806728635 863898620 922080343 376566240 715664316 890659863 988793741 133044344 720297117 129891811 787453050 866825819 982455962 188521299 476381804 821926722 844240987 296475827 423024707 623311328 807872894 601789056 748229394 495477243 781612310 5701290 296474827 509747350 941069778 426922895 630271729 838876678 881160806 696345555 912075841 78572240 678017399 691882841 757541196 123082320 416234026 978057477 994125796 621789986 822466062 771904361 942393477 821843012 841787892 352151150 535594104 385826308 870734865 888338903 927387307 46228508 652286482 781323955 813896040 155829334 579585614 421734616 783264816 671338794 921074428 964837416 993506844 466357688 695952075 86368213 893329755 118620132 180790571 847835194 963145860 802805081 971940243 853787518 875265528 135400521 348001816 16673738 270052089 399963122 628994100 886822438 928257948 696815999 989668674 646636438 716179933 262722103 338886641 931948285 959902414 174635929 554278475 658341342 735277610 359604156 600838495 656604978 968384401 754433096 898391012 158639090 242085985 156117463 922360883 577391060 699576594 715641688 882920421 840368283 942504827 230799658 706570235 763997009 827379603 806827036 995467458 730796179 877163615 339776031 904652424 305800356 851424805 486758947 507129401 565995648 775826776 234971657 688457952 903140086 943010719 419028902 711540441 13099054 632121381 834641138 847733900 858046575 887899830 791299446 854358335 141706734 940508770 340179710 597602977 264672316 711990659 303779612 628458227 54292062 548488484 575488690 597167398 980452526 982992713 439285428 900711713 564281970 830053319 871637007 894705848 307861117 350017534 448160014 884967891 291383667 714183575 285965962 863783570 249429084 329410797 170208269 240892615 744485897 857101091 723194 60163505 142655467 557234994 814797525 936283276 859122711 979879414 767940387 985071760 813864141 850781879 622692933 788482419 647528931 911239164 131418755 963457269 606818930 900811937 176804227 354835711 638922364 962343232 616179936 634818428 572468962 708278280 753125565 923489650 519179150 995791718 394695980 982754412 445670516 948902017 164194302 293302654 79322265 844791325 794062875 919843399 639901011 847916511 863178534 886189948 436972046 591258381 873341182 984394807 836658456 917320736 747886350 865310108 508053691 705289739 707685299 989175519 78504951 182267902 758253113 881967980 763959532 954508609 167658578 687621689 407099592 913317449 449723051 995903638 632788284 718141629 849103982 876638155 934523204 981616220 55379481 200319315 491814429 806920730 47578660 660625593 479370202 589220392 591014526 896797298 159441914 905179345 819548335 973407166 918813226 943427494 671346696 819184060 690390557 899440288 643686482 730389640 208245276 765693781 172730397 177547770 561854630 626587078 16902820 898037898 911653366 936980611 12700496 96738963 710769339 907588242 268387780 763608951 732206400 988381035 289345220 849168066 151516875 795036505 11051940 948999316 625499272 703501973 800191117 969929370 616804620 664510219 690809485 785158957 80753565 481279747 415987263 772447480 823745571 898849035 502262886 723613974 155407500 664939900 702184205 776477123 493105873 643054760 52250007 762480329 239593472 640150705 628825830 912561878 141683965 321141850 375649383 407583093 225141115 388877534 115589012 474955949 949878639 998006497 87269314 730235617 979459152 992502353 285708954 497793486 635354569 833538464 388001639 511950244 717681771 990200704 428659532 451439020 230634231 719411277 130392089 131374524 887887083 890968312 954048817 975443496 588903365 957694121 327452344 387035989 460650437 615445639 614023835 620575624 273358814 610882761 785324209 886920710 296377856 471793785 170131396 841912004 313466808 399283957 411190504 774538153 777247953 860170305 405447563 510203891 975082890 993750260 605510900 828837159 124139018 360711656 522228362 802298052 206475798 269522939 988266859 995989913 142440404 857884230 323980742 876588179 772522009 797054036 609875903 851104311 254990767 634773603 137888772 374843216 861651507 911064345 188299161 653564593 841737869 843905564 116790676 984264441 182427851 781249325 516160694 855665751 414630046 550011400 831078276 937175812 339831267 713265198 837055161 932260868 176394586 512780537 535547902 900825745 991098209 997929179 250439712 993286475 970064311 979883505 807481566 879316318 63283062 204787592 122703567 755726116 597267738 803655039 639977358 824618711 949258263 984481652 787131459 787282569 29881285 437924800 702088786 802417401 987663170 991436641 248056431 294448788 726196061 926266976 291448304 737466406 120986595 768005480 148539459 991933187 830287887 909301901 158018737 340333911 552212408 932456318 828116857 839518773 237979661 900553153 561555384 982854177 750804217 997954152 163481630 850723973 855771755 864592067 193759983 883676732 548156316 743804530 318630260 532096790 280976755 380901904 178445224 891578744 879048204 978517284 360180270 706958838 876311048 969032799 915221360 984138375 936937182 967692229 535561069 827666414 20543663 591809770 629215341 857126150 362309630 789842762 257855383 566355801 332819672 488659096 646584474 843500680 90809689 334643732 89852593 421672415 891037435 940863058 732797103 904382233 560015475 737001018 481202400 799136795 660646026 937649532 618028643 791896315 103958533 678920058 583676810 794428982 773194922 853430943 116238909 573435444 803943375 879115077 677505572 750141138 179542691 510743303 196299103 422383200 187580261 660799471 584086174 783738496 870439922 880627417 676281758 838012488 960425300 967346162 936246607 985850303 717215 498621710 695751187 793116512 28400345 890078892 837555603 867714859 706969030 855175735 747920205 955353090 767836858 998810049 993726719 996529772 394664316 549152030 837430237 964055078 436322352 675602273 674443759 829012047 419585233 598244065 33165386 440789970 463303487 883039675 80103938 289251571 984556134 993015366 446347353 790397191 225906009 822742298 610928628 801678039 982453810 999436869 754838479 817925252 342185187 483025764 662117781 670121507 527871904 535058458 614081709 923417192 108434647 996667536 145960638 679942221 453521814 682076620 288064160 894371960 810402667 955369095 719696887 903638063 12182770 952957966 596936807 901712885 827276648 923960130 157967281 941003255 156257569 622050395 35674232 929016808 471442019 756838733 377383732 712595327 807159121 882502287 879428626 937782189 331919722 979899652 843912297 891054834 717073691 922310007 361716652 718676193 72057210 570043960 271876997 690284078 751875634 891549613 168813693 955387550 289963018 935807551 103262004 279658815 504757765 800776888 464677867 806728215 816764603 898576884 538178983 986146674 968687454 985014453 635132164 899944966 287517656 603240360 189745369 851088336 362929030 438571262 100341414 786325584 484923514 895852736 288546005 326196602 126109326 723464900 114461359 192444240 278253223 728985827 461363373 693320361 165905506 546209683 713609185 720369436 77412066 661538459 379990399 586910021 640127239 819876441 513527036 886574768 116760779 829142967 511846382 543382943 188211547 948799287 131296325 192777114 920050047 996286353 887470530 978927540 836626020 899490726 210977962 342735845 327043970 410715786 171308395 767414134 275921091 868858920 842859199 875413550 248272100 442723136 512773157 758767769 367891082 791540272 547593135 701287207 586621932 700927053 265580669 861250944 622322096 739990423 411816029 637702551 953834773 971743744 926700441 930580412 514875659 636595359 679990944 853308643 86153744 969444988 832716245 948397034 763511366 826733028 185281158 552042410 572742856 990843119 488817688 763173864 225679943 875740218 396366923 684993903 186349250 267706106 264333795 917367062 762249487 968076916 198203939 925156311 757063260 885388581 783562158 838270293 314505473 494961079 126010941 451426892 356124038 853829389 666894307 899505034 670936307 747706220 48202648 247721184 481732538 620828715 26281542 997877648 452409134 943790668 698583016 905079691 536357553 588678546 980777170 993327162 608041954 687249551 286703414 343763106 443987575 520268442 658281964 934254888 97612149 401700898 638759364 714613235 865413074 957695605 566863211 988180437 192234083 250959457 793753213 954334035 741099638 812843106 738666955 820675687 633334853 970685022 543973126 765473786 527171173 772253694 627267082 969969259 710658334 866806767 673065948 775821401 34366480 159764500 96282667 940612440 945573465 964632359 106667440 196410831 621241836 995130985 664109297 920337299 178611165 413299708 713127696 792724165 424203928 943682069 301588038 615110248 26955668 302839562 980935946 994012582 397318816 890138296 157406490 635673020 618242772 869316535 304665480 677020855 531662464 981752201 296263306 796642665 734231725 983266252 357704712 682101104 714792977 786776489 941918391 957884712 428041645 832994451 967615090 981760706 20584635 934650019 29833785 38085547 782669011 920164754 673623775 844425610 371509931 836391929 604205099 927833879 57272142 626196699 53372698 934304281 574162608 683207801 560615224 825019870 90236430 927560596 453975140 596017991 620318606 862205816 272170892 375583024 503427346 839586824 446779983 563304776 45045171 655740704 73256526 759787186 95031413 360361015 544344228 897483670 87889599 806655322 977416733 998910890 412229509 893842611 230412988 422956355 583114963 736684275 866504636 989086985 526426624 761137966 588434733 852158222 934361689 979627661 853931202 916067891 197714529 860552001 981377392 995420976 87772069 275178402 644244756 806308959 413270808 618314968 245725926 881328119 985448171 986908304 538533712 543126629 17371457 623485445 460034345 921669420 366946464 803221232 533162189 911221386 267891661 272702212 998759089 999103323 634424172 648238520 658278054 762850579 642685440 835963264 498077739 569470673 381134297 671993962 514710446 929195036 631588412 885963209 816408804 918234729 557377425 563116084 320276251 854709674 378098196 471076182 51784621 214950822 686974545 948534087 379139983 758472944 580848589 717446250 712032559 817378753 610344375 790401940 723582511 742881048 335673921 488038467 883444313 887669021 547081691 791883096 463400670 805332990 530455165 643015057 47288324 158680914 945356051 945378166 805870262 989809287 290836345 943392264 386640859 555085432 395660211 454985217 167577467 898478898 793250955 848209132 172048975 426098928 821606303 951126105 169362247 937499359 864312622 880142457 212713295 764751868 843492903 937225472 419845837 611224975 527377007 789078471 817258014 973324859 492708512 971131193 14674365 711897253 561118932 562315760 698107506 940963364 905579704 966940334 186113737 926790760 683261589 938714981 195906132 765839373 414303300 435514121 426998703 719861582 742783860 847446531 824325119 847466646 705389970 926594655 251295842 971067554 755676046 815556730 29765210 337202592 895204216 909576520 208595868 874529774 608308940 638317904 526284124 624481721 889960121 904260735 311757032 318503414 142692994 602757840 676920436 902357703 132545549 372354415 817466785 929907185 961666691 961709278 723702164 892493365 777781121 854205282 333787038 470637154 560329951 991843726 189331450 644198511 746782051 792235360 450967785 799037507 834878857 967747868 244251757 873870911 851147118 973275112 875206154 953733671 248084889 644152339 343828668 956603878 487283145 527615463 433113774 657397800 40416900 192836352 660593524 765808769 816016754 846911545 121335001 639985907 597066824 751719643 233618658 549505763 616563725 622169590 661271856 867915581 488871705 941221059 619284342 733969554 454335673 580725419 881354025 930199136 208297158 511276296 706093015 974573348 758399911 812085668 892372614 982420158 101096514 247460976 622903247 859669881 719208298 926915022 213181098 457604509 583129712 834403604 717672378 963908513 301067701 960244199 48599702 458603870 804893967 941929603 394963156 727041344 792728564 854961539 791498903 996658285 64469947 233926153 364444320 394213713 274220253 952303763 469967921 778084282 182162568 257213520 442277688 602984638 798973316 883433236 123827928 387424372 410314661 856697584 88498542 270619113 804313816 994411491 860053233 885157589 506478005 971276796 87977481 953422053 113015662 178680468 330590452 491255232 617344585 631286748 551750321 768561371 853858906 857885914 863958874 878771308 505235457 738402566 215719757 336219110 694682352 832583236 540401592 994617655 968837642 996492350 789100285 843871088 179724264 550743324 532110092 923892124 338789187 713022407 236556639 560409811 936768162 986723342 38193468 813768029 382434408 490227553 441514926 949956697 652173685 960859142 826435562 851638954 528931975 862491393 177142433 450486156 374647284 595260135 463401385 508476462 350041443 720895899 859452852 961538520 581274868 651660249 433372683 958216144 774387788 935788640 670604835 864513745 932465853 968749805 275697639 370456892 662337497 733946625 712798414 831678937 392752475 441648361 835563674 952802419 396079928 501514253 590078275 866491682 271549464 455437526 134292946 755684785 837602317 909380054 675186469 860685630 645599350 937094528 369460874 754111474 809154895 962067034 920041308 947725330 119503782 192079456 540922169 624879288 31802426 847211095 585846805 597130130 918723023 930804870 202027846 979224090 915071083 955351885 421860866 607161449 108378964 167139415 873284911 912581180 275370833 917293450 859898785 930356137 610538026 899101616 302677351 378617161 334875704 783156124 447458615 565863604 992091357 999239715 26716349 676783163 772793161 794694857 385907033 918934709 768941098 909539249 152232362 793968552 149037420 705330778 289117175 290304173 917232131 920629186 170131396 210481676 104677817 385951765 716560356 727459537 536569957 566802408 604812209 719194928 537541681 847792645 532476257 952487804 702877843 793813239 828079232 830123363 396499386 537662982 553536011 706722087 896659889 967237917 781053685 879657239 208848467 413263031 831131007 847037395 442907393 815219716 749567609 952499021 586197192 837202544 431184256 939720213 777365869 929687261 927058298 930861824 605439220 851105207 86585787 632668829 883872088 896835493 585055129 724656313 477839504 909410277 142709602 351845441 349951074 526975526 710424001 749689164 459885572 581596903 738803575 866045808 118415612 367312256 206656641 345523234 381529138 990981040 523962873 915977989 514314459 955227659 993964164 997057938 761233578 914769762 625007901 841148754 917457179 961147143 326438485 746232554 393635454 887635442 30972887 890790137 41482019 923302219 81669407 669975918 748322382 956133979 468722179 930673816 823931363 969256415 191407081 877278898 140556529 468031251 15532283 770569137 904227578 954619827 964904416 985176000 980403136 981544513 806071032 880651750 594526916 688452379 63300682 400300226 542266361 964696024 659366291 977656594 321577087 880046749 439937607 751473292 480657126 485094035 542277267 660353895 596612446 644135581 474587729 855921248 901680599 934787049 29089620 34656028 159515741 227575811 92094346 421132325 763793433 941196234 919400292 941149929 884761789 951022568 467966741 717818811 9967372 917236093 937201343 997090874 180774708 493873490 815548875 816031422 918291053 930120130 230286753 659399763 821180299 838701586 930125124 963037672 46171535 666904487 440074120 774739432 137072236 772868147 300222954 667110526 919604559 930694452 883494281 916721783 432177637 470530453 407007665 787871350 796634518 953904794 997277156 999895624 927426254 959704185 747190980 905883307 148015557 897639872 687168293 739710878 901916562 942197781 681160714 804158117 251683452 400017813 967770428 984817329 605804974 923438842 610087512 907313338 544149217 613373270 958520170 970596477 954889101 977850950 111105101 325504741 500802744 527315296 898610577 926733899 169456755 388593121 513230156 944398997 176159688 326469700 752818965 762620914 710947924 737625616 424878587 585987589 894778999 988889825 927025498 948840019 28616248 823072313 431298161 880782785 699498333 881503814 96519741 151954533 850660304 904519263 228710391 364054826 45387855 731778288 748880236 851956257 957359779 965495243 535277901 999824739 405744422 560265018 649189724 800212283 560675787 719304149 561126963 579825686 775510442 816862318 279608515 495077977 856292279 922478976 91617114 938501501 267339590 487369953 451743098 757997882 590354386 694186992 900653828 942267161 413973863 606457804 346484553 621089252 147351844 965313584 639786085 780215392 356064039 828413599 580790697 838257126 89713330 626647850 215361477 823072432 776207696 852635408 760586868 781700348 122968391 996154414 565973677 807171949 708994883 787743265 517256333 930853335 819787437 843997550 512486361 890165055 217805239 415005417 689411998 816018888 777851900 893004552 977688387 980366921 886102076 978640287 4348001 359350672 137135315 380654241 718185932 791181381 840906956 890687335 785138355 988600952 476124960 733784295 509346735 673495771 965171695 996120376 627233713 850048647 857641492 955603487 831432395 994523685 720946304 866135002 6391568 134392602 736902654 804939542 626853957 800062955 241482978 799183376 468632503 566141332 205781664 831607644 137814350 388213903 311071278 464310989 504650022 635176364 339886746 572161335 597537457 787314198 719013672 977890856 248540257 863830439 17306998 49313928 636231673 871214896 214595653 516760423 664115189 681605911 688836578 754195296 240735772 800853117 312333428 706203961 579113784 849421961 880994741 937671458 701193447 855670991 911794527 964003017 339899856 933818880 876959096 922489120 90200950 910995260 906309457 920725531 461448586 626347905 92663248 506244243 730393645 979804351 242418159 707984403 814170973 961400016 84127282 234791695 296406768 733771214 716620174 989151716 763325131 896557477 591971099 757089657 826358119 916950261 865376298 920654056 344453180 670441402 525868013 980145852 615838491 949462918 25544649 615998617 909530865 953296710 128880163 740884506 865282916 870138208 911655328 965507511 338427690 807948630 30061734 423069645 267123981 354162131 725716803 778406812 318142759 810734844 138761402 903974298 677389017 839274548 640119989 679991045 28433455 883488773 984275062 989387159 277433398 609863739 596400174 610870357 949693203 982329498 73353939 278324091 773788863 926604860 341151048 398628549 458777934 532569065 875970748 929275056 956978289 992078240 824404944 866273656 446953881 465105083 699332785 891850559 61103871 905210540 924776256 997749425 145074446 277284915 74860863 384744046 330688786 440430265 161698623 835480281 947344975 974151284 392855431 733534233 423316834 610063464 957226494 982465419 738557885 750242685 373584788 398168322 637644078 755076629 407127820 568935513 930218292 996236713 886347431 918558306 568686982 648800029 810837432 963361148 483213446 844566252 452349920 782918985 650259920 736483597 545269972 587442158 810505124 958133563 989068115 992510329 986313392 993055393 579541372 843951302 218411280 742417129 111447582 154205815 325726216 717946702 434210570 486658694 931951808 961641682 371090255 483198858 718028834 787530275 818478151 843797896 394244878 777490207 452982727 856116696 975096097 978073450 569176589 856344693 417437316 453302746 589081004 639839579 191335065 560611602 119620207 932651143 225529459 483006100 229963699 948548310 416664255 819487936 884358676 978782556 290139839 646463021 17777543 79473112 386950816 546437507 460129064 624086042 472487591 531564035 324801260 799723415 121462049 298238677 948856464 975847605 762662665 889732565 803699182 874249673 816539790 820177842 221206616 504842760 937767701 938731242 404068783 446543003 891200320 996334390 929876993 963911078 940480439 943743084 9412260 763652524 287477039 617427191 394072735 424152741 116348153 489082740 404812171 454314362 234288361 791829613 583285587 998903911 431560606 953958810 186723326 385392420 69226786 695058954 741751391 790774740 519520962 635038639 896497368 978678286 831582849 842648123 565449661 645011408 17558933 445400635 103952092 967851444 55227480 946824744 819450724 996581534 839621034 983750448 998165315 999620474 756443552 903442381 504816237 557623516 286888826 842812581 526128821 667430207 798043435 972731133 661325958 678403290 800013095 817464906 571201554 930428723 234720348 830971331 32112007 357114740 749438158 875579160 257342558 530194033 826014943 975473961 56046690 913157387 372868125 627848104 658037508 922091895 355558691 652996810 222037834 576066500 334649431 609381128 967034860 994400556 35667955 817013965 396779188 965707738 176914140 384596863 138432339 968024874 595840533 794528007 544416175 814774773 337449166 795195734 441014226 485775425 342001583 703118832 747232607 835785711 139054175 699735088 130522736 749257644 201053285 431274067 719134627 967906148 155445806 406297210 839818185 951926542 609785625 765957044 302107405 535704210 840523456 947914482 874015538 903716478 44103786 955637560 650285895 875535434 228759209 949789896 619876624 675301667 758772496 975011437 118717169 560543189 645177351 931700543 485931475 718137764 4814400 104489690 911680613 988889417 112627464 918447631 767166045 776681840 212219750 603521308 327152990 660894320 809497449 894352539 619974990 800389227 979512005 981582537 330685577 815143466 852015791 900725153 580066238 696793027 923883189 976154320 46699680 692889063 749146565 867731647 863288743 944830688 974522976 996980565 231691824 352498216 59215121 493166114 850045822 885694704 676916327 747580474 644641748 733592455 128333138 651575433 943344417 998018469 662522505 887868600 798510742 815267463 336233356 479203032 697081589 769498347 513683753 524227170 220220004 747176628 433452532 920019785 535366668 631486631 224926197 376459958 803018425 822282167 309526918 595705560 23481724 853793133 63717512 227026071 102657456 348532896 304806002 616984431 541486104 652925439 770400926 869203150 230359007 644023123 242233459 995639249 502130868 988833478 748652638 872805275 649862295 906813177 429411995 982199547 258382091 862268555 312829771 363163856 152594694 879707784 293893124 959284582 306390884 667722292 734001513 811908406 888521954 998171045 149584770 237751857 404571382 825910809 842946607 926737643 379713730 750747887 513971967 754955660 543970811 585323745 925608565 940507775 394184033 791063860 843279172 908400323 817446121 961714207 240997603 682958488 247074811 509457927 282679433 681926517 964374362 991669251 27540254 430040240 113841300 962379593 846891330 898422848 571468765 916461959 467095606 985663059 60583009 305993113 242366067 407205745 457319254 926782928 958912339 990421775 566685400 956496754 59713296 233343857 50298468 899376900 715278068 782059804 58747928 666406821 536649497 689133843 84285061 235177061 5318504 323867861 466824262 970972388 792272227 975973143 436813229 513420084 957393343 970338565 97126003 184898138 574636919 684714893 830681195 955263298 288040246 499473240 270708239 893935109 762623910 837812751 32839118 834979569 882503836 910373378 165593996 515628297 404570982 649905341 371288711 514070629 270716896 948516500 235044275 789205213 323466155 871237584 555216946 880027043 941888723 993851158 281533823 839501598 434457849 982020818 879675918 956406969 893153899 916614608 880197629 965987201 135599487 185656701 76897431 267940896 746574133 988940425 109630227 860303576 8284446 777316109 969831797 975993665 595844165 623995642 657888694 808575038 555249962 739617213 29919940 780513976 884973547 933279657 479549903 982363269 577933795 962254686 142631770 171628090 556655434 979887795 598754402 599167015 182811832 250774256 804613519 925057488 306917515 978768111 508755267 690656066 742937 481834916 907028623 966494399 141772173 655179620 659080293 949188035 888624301 976923209 511940355 850955455 770527906 942615020 933651679 962562796 71018315 288145085 497086130 705723015 763236714 828312929 927153153 947268339 277423807 777658087 883667743 999784752 90319412 93380345 104369647 265426696 888990010 910027876 905657975 934819082 382655778 780300005 996554990 997780502 653979415 887579127 971357078 976031655 246608858 855905885 632162618 739205116 622451260 754425370 77943420 562860945 313444119 440606104 194619346 289875753 648157592 884617037 42865101 637874872 46267486 74922431 570499470 674872012 60429313 816284900 725508233 746728144 97231714 120907069 760304019 985827943 365293291 441798789 566470002 754716235 468304503 764815093 80239230 257965446 955776656 971679274 180952363 704739222 845756570 886763809 654641219 714878167 51197088 64748176 658341122 662850520 999474865 999498286 169105311 515480370 326435907 958736938 148676029 158669519 503339578 696081521 258398394 917954641 691809869 716527537 205056816 492216624 792222790 824323319 834642988 835059353 991517006 993779270 744526443 925328714 835739486 919488381 708237217 841356882 252303797 698723605 316242919 911264376 4527394 236163788 892970554 942040263 921095054 969966381 520960760 751793900 149806622 522265913 200582635 260112310 279770504 366774785 597760286 607251597 172571050 629066024 953707989 967478111 61743545 574190318 575747381 784879383 476355824 783024653 703242359 705605073 765774707 872723675 45074889 898796248 988858729 993297328 469022267 754543398 148294970 526799305 288120215 575597672 389969730 696974201 917090640 948920955 165814362 850254031 104897816 870046284 583955039 794452963 197910405 814465580 521528179 921600351 781659604 952544529 625334473 762793856 430403984 431304734 76582101 694437202 650324500 669134298 719766421 745019171 922984397 944791525 308629543 941924268 694097494 818275644 171957599 551140882 134894597 632670101 253706545 468077591 231846244 642068598 663289511 932438168 544994575 561798386 491050088 922286498 736523520 774687564 716007963 873218377 80210954 719910477 135019383 516702953 7156162 586937893 830592750 943059189 773585035 902517085 330614416 875453689 744617142 892684532 23144737 26278381 513913823 763770782 379427257 571096555 709545959 831865260 273414644 954662180 768329897 818657153 845025612 906325225 401705065 956723059 123729137 165602111 277527821 490585546 835879418 997351784 396502588 973872770 277707537 302850151 577329378 806046047 282667013 565931037 195374222 996056702 169013370 294542017 773079095 928078240 526716341 744431136 363166832 654529354 204608832 503843068 515477846 639163173 987856612 991551623 257989972 768756546 649903213 802316376 218429935 444313240 41893211 500653830 249767466 778183224 323061611 878377454 314275149 911338140 542077519 893468854 175489319 860888588 621045571 737656614 444709613 974002673 830838449 968852381 373372905 643649718 547179397 888659117 692228824 942452539 431287704 949343200 374555553 921567607 25484922 156013853 38719120 91350197 943201624 959689967 147730225 945859176 342334380 824586226 47074534 468937156 642551662 849205848 698793738 794822920 266704493 916272771 565510201 781117468 207158840 395035170 285078465 664725303 491590546 687988779 391247506 715233962 229790389 290812957 964997537 971836955 310902384 466441382 74163505 371032620 441584765 903546337 945365907 997611261 38340918 693671260 549534653 712465186 296046829 945089470 225819920 620085939 494631944 768569842 638875110 837742357 410659520 742960469 659098814 947792144 936647408 955827017 500997510 921806805 733281830 986306281 244898529 254597923 756212039 931311164 732428550 889442054 303290834 440860262 829640668 934208869 217820661 883297246 174611396 797150251 324272534 506924226 218779227 686088898 973748440 977170609 791456210 816454453 892756647 992117000 924134144 934578838 632471794 863219852 34730900 664240827 121188059 963662137 109218817 298331491 571838920 943965337 780720889 943704100 401439245 884581895 635906985 718532690 905286028 944576799 746971020 759298530 490362732 530804486 548396593 986503022 507974671 635187410 722085241 947787050 911516751 932643931 360791811 826661653 348539502 521172644 187576116 742622368 346206417 543070648 993202651 997884755 621261247 851607717 591524834 965469980 872420712 922877125 299933398 600580761 581999017 883263021 134512857 278119950 242702976 738149242 859182467 957946944 321694255 378980498 708992026 720554879 924028031 941477777 28040929 751743580 56837870 603851562 273773866 683860028 187090564 443818840 757803713 856628277 285565832 511356657 932663727 994864080 769003336 954398939 335397840 473489329 448155581 748602770 6869317 545750912 990779278 992640843 690082928 707564905 843422443 883027151 973903750 992643920 700727290 945235141 558121061 781428236 259607084 876919284 761084163 953826259 763954216 784466070 452578614 493661940 125936162 440484259 733175204 824655185 456863121 755290402 196107494 995185767 566842915 743934507 635701899 827097958 723609457 773463000 27823143 980848934 945629164 980548289 951668368 956198329 519447977 862396978 166406749 931832966 343344562 441555093 959450178 965979336 393259352 876263469 465740073 757428659 725897092 873181171 113229407 536077190 435043729 661018280 416123936 628194648 765767708 945736361 68852640 721857227 481167263 587452967 229326992 819492671 127002389 444887611 26965356 805550989 759512959 838192170 357848123 636019208 767852738 892373831 757206666 785602814 663534091 769668025 422243399 525139249 408485344 593986619 475409651 675401249 2864933 461871594 945756662 997695392 972180750 981100012 135409520 161307285 775277977 818747314 630577148 919580117 638810540 762756948 2250814 154139537 373326003 951315667 606298356 861934071 125007594 854894068 433067306 471855229 600095368 946631587 117092204 222597781 873862587 966405427 562744767 710802667 444948918 966782516 871471139 972140895 882113279 978751936 898316102 902869824 549538887 610878430 110731389 882896971 780032499 824848116 515195393 701269423 71902898 358339443 895518577 904313027 537328720 710347773 894735507 963243820 51335782 308201030 128046833 584965835 388437691 757081210 401968400 593094171 753746515 952855943 724298423 751179080 295222475 569047641 514881379 816201948 567196957 780624428 799710777 867039701 289341085 548761908 266972339 730980100 70112733 628172215 726190362 801845200 707439990 957028748 105035674 686590151 96551885 775296097 552877062 933068933 500367602 706084671 389692979 432364010 628823498 962702970 530871608 731024941 898159988 902976238 811441297 949522585 194403171 489004139 441917315 659971378 877428298 978581179 473526772 546575501 324843483 618281118 666806409 947440592 984025941 990684981 303993111 781148077 824651057 955952674 252123038 728071088 957552851 966644201 820055159 965034306 503011142 702005360 892456034 923490660 613119956 682583859 342009618 765961490 361212880 701027496 677320508 942065892 402546742 929081425 270462662 442847939 132674102 268225312 222956879 391168829 987643720 992693411 155423623 845799849 839253503 849679594 682009728 871815990 216507029 290705437 773005687 895215200 766740481 970651549 582703722 842921102 946132461 966423494 420527695 932710934 981962748 982945292 123417771 542759129 324385280 371769194 494620192 871185830 208265768 577860414 336716726 945705146 860335300 904263551 90981775 616212966 879741703 921692542 417892956 682422259 178434810 317107358 543454514 588958629 810530697 889285492 459736017 740362478 673448261 970984359 152792764 367140658 941477842 956198163 535317295 871893002 446695647 481906923 965357222 986067154 629083331 656966879 934977024 942805139 810564108 815909376 753903599 815934915 198318561 352312249 337752444 590810964 273647605 294160961 303847988 998031045 953101419 980415750 482623742 550719232 207874384 588045497 301787932 655005185 662907287 845674772 497601186 982956423 50980452 494765137 508019568 518585742 427569964 682319188 585200172 830749224 789198841 891269710 996609309 999484063 983667682 983906134 185449540 288369678 195294087 658345046 820779006 953645389 673690127 792099676 645964823 833591050 384810028 649826251 508713761 960325647 721487382 762630269 553989946 615831529 168183556 887676922 631816437 757749300 415830150 493070031 751640318 851524439 425933180 996005301 805208267 896355689 973991038 991375736 372861740 801776247 178079764 318674324 649168705 691826830 508693858 614691174 217163306 493323610 432186397 918661026 14982620 26147776 926975105 981909177 661614632 836044002 16859479 928682128 745163906 748061035 938523410 941462406 836660791 969215187 695964406 750099121 802146897 942261772 866635078 919951420 96030074 363500050 814150858 926931321 146894786 676337877 339444678 383730597 691740822 732985123 582143014 742342835 168763613 465941182 111523530 520290819 299315442 931167747 3231427 541377599 118173916 375321279 75916008 111942676 85113996 595826494 961150360 989325820 491689409 498270356 557964268 863167838 513142853 825870253 380205992 609067535 463658726 529366509 229829482 611839449 187267019 487704541 852878951 914759520 838348826 991057739 513860121 648650598 824210970 964648292 244691269 681003236 346458783 443720462 82370807 419847834 92991236 533367005 836981045 891953054 425748091 449065433 697380405 906610335 405720324 503524857 140819944 209478449 696041100 729232500 679095296 690187741 660417623 888923072 595840150 648329055 39895146 848902937 58243578 959049954 436191896 832344407 230542520 312516894 70403626 523706563 937870461 971702868 979107099 987154455 654172512 767881126 891658344 988062703 443066926 693197682 518640682 674119594 509079717 999398142 244368135 705318768 597447559 687374606 225346392 789402159 950437264 976117264 146976472 621006392 715178591 808405809 729719052 959704057 98110334 419768077 396784379 616733553 325390601 824539017 188430074 258288959 141624822 862459991 529455112 852404115 335181309 389555330 547175615 648442360 920144352 973486272 144853733 663214283 753520737 882952094 27228658 810525926 653584785 704021382 313787146 432611683 255154098 901816022 557945417 559490131 511198389 895651091 926072324 991444713 943649807 974460035 501752656 741335237 171982919 330703139 932608825 934609814 232424126 660665222 712962592 839118827 1888295 38062236 146474649 614317440 580152566 943076157 822057382 882427848 345385212 814928384 825713769 945376730 774427844 886164081 760498511 790814649 48476770 689023540 153223586 240847647 156498562 745090549 224185326 711316216 303296445 705428643 537620620 622889309 251478117 705812436 968412877 995512675 723676165 910002828 265137247 502417344 681460965 724273265 229213582 907211683 985558393 989664878 645877437 899700730 882664008 933124518 189315121 849944121 312869917 314894873 788081993 871316105 121821165 807733904 100084218 777359711 87444561 593900727 11643115 411258509 420589200 783544393 113630835 651439862 529879342 956106586 538524282 990935689 963713868 968566386 803479350 818253137 823520634 893963682 557708499 601234155 439744656 509487479 912571402 936165850 172656684 561478510 881499011 918766491 338520936 839883511 971961678 980749117 312653503 617529808 757117037 925339276 715582588 809702989 839972235 917630865 123470937 364983184 234075648 363587484 254606522 879785384 21867802 619676110 710997587 980804865 950337273 994977496 471837802 749130938 976996719 997995158 68326984 119722993 749479013 993956846 293756591 454498270 318282083 669669194 422922689 759977268 780204423 854347928 888842017 971022315 126998556 978410947 52729768 441601442 481550015 615874145 797288508 884824521 436582075 491164405 577120322 590267424 990747641 991990231 75914335 409752008 880769426 964007836 475583237 607892410 576483297 614173464 712492409 919137481 948505617 963212160 489651541 876093925 476501009 584843738 469523361 925599917 798874371 848189409 2346023 413528687 303057503 847102935 303705981 422878159 599023533 887271700 433477715 676384097 664341708 916664357 120918680 547051705 508220246 838164333 448885779 842004164 650461294 986601468 136603455 199291802 505570606 836170871 859462384 970749379 775080132 869059954 217213285 645963142 719844230 987029169 109101827 780449843 310163858 567146791 928929022 972354992 462493056 536309797 82404779 351704750 870821478 911582945 351807278 384067175 871376454 926952367 183860037 506823288 320213107 666266888 556184442 772390178 766551804 859464263 478148364 854974723 361644469 543817946 709337159 799226019 216771077 698593515 827222012 959921478 856314202 926461468 150302261 248213790 753669830 835350539 234481584 743083812 729066928 945089712 872502519 899165906 334747780 892272360 779533596 858744868 802965599 984881487 867408585 902046155 794215163 815023664 100487328 839164170 247003955 788103616 204810657 891416310 20988146 303523255 294379473 921106997 173464949 672148101 369889222 544664495 846021158 983815868 222880074 823595384 113306108 421679031 763305351 837928365 512102194 730417587 770887389 869163430 901288584 922037850 387722494 698970216 461998269 783402997 976629328 994517573 940303875 989514508 955058919 992059781 493996341 878475112 780267681 979140327 472034605 922251892 348867391 859341344 375396668 831293612 902970079 917482701 28532725 391526151 313202509 763369309 207680991 863373844 949739087 987381486 970689194 997446346 158644861 916596535 48020618 417548875 933290210 980381562 564703823 825842063 758564947 895606986 506406379 693401273 577894528 613200328 388200662 968400625 514436321 913862530 353170562 568288747 231227261 921848187 954934201 994115609 871843619 874539595 829050971 963096581 213395039 243468507 132008749 938969787 591176996 701149766 6471539 857138131 429798028 786592739 925349628 929812486 461955177 702903461 534207718 597875165 619733410 969033087 419694488 956623393 480210312 616848256 658703463 866478938 482087693 975999650 687253211 761975282 196783144 310605681 840540669 900938795 228674445 659852644 882333221 993096777 107175731 191155409 52423867 339856980 584766068 858396744 498231775 850034522 212269881 622491302 480902802 896307320 181798321 846482435 717385681 980195388 499061851 961905546 515845152 519452696 32548150 289413016 186282863 747628021 966554776 968149061 848124528 952803440 504246246 526360784 556369947 875033707 308103821 804111542 13588689 49351332 669109322 814897411 909722561 973008991 503140907 547010177 721276579 816767719 885331659 911824090 859121231 890342900 308051351 657318074 155594761 852826648 334365539 343087200 816093748 838339018 741197390 776773631 991254694 997550006 96779042 292614034 513887166 995755252 565203083 653032456 431647855 982274059 739504412 841971903 42178214 581667351 811390692 995696804 903294488 913417327 897979825 947199540 373063324 821410476 338674083 821147754 927267060 980373041 227134157 653085714 788841231 907508075 547324617 879506705 594657601 672573488 374856616 659054320 734249413 970473763 986367897 990691344 225917045 921377747 443307022 684561776 584833091 876203388 967180120 985835806 496938630 676356013 767713542 848798328 832076829 990414820 111915575 961480292 628240164 924217007 118599224 460395748 338061716 694196426 35072024 647798957 216156571 475195097 928107104 982172867 356612893 425644086 243726575 610695260 237439019 332761167 33853354 160913581 545873411 857175561 980799644 991664042 314616431 892782353 273786538 433587284 673818299 868292716 554845602 824810351 584136317 670027055 375039878 714772213 479876615 901046360 861491234 968399249 93202988 664266285 92677170 495380803 533961833 680852993 773641324 947352902 821645665 893257912 483993007 957645931 485507863 886774799 860995728 903198615 945004344 956888696 639555605 866617446 975059666 980934592 852242058 904573352 658067751 883129977 385163390 922550222 696034682 905455189 797700477 846787115 573034581 774952068 894034254 952123336 489990692 737157152 172987310 448062603 207049169 794615523 41381507 657035585 990943975 991104712 819414705 976129519 128398672 916099610 291421261 676618777 550771585 770988519 411541893 712633908 853640469 978101460 729445150 806081106 550572770 702806030 526008878 676144015 416853720 839874997 68133020 152491664 46100982 352070557 20182550 788959986 92191116 97710448 819204018 844715006 599558296 717436138 579360883 741138992 537856654 785199390 903816826 969119825 267065142 331175243 253594545 686637058 478428305 840083566 533368220 877746621 670592974 715638012 500083426 981735706 112064641 774173611 109602872 728508833 64853683 246845894 895446082 960513996 964060413 983333658 162786458 548746113 43062186 226958404 210718694 933181374 960875352 964033603 241698129 314427189 416647718 985855862 577431747 908068082 657319457 921159352 79336466 956635747 163030915 248654711 369603356 838513453 945601673 949813444 612191977 957789857 530670409 971088236 216383916 258926309 579251195 931631229 77087552 339070866 290878304 461781559 807310969 993466607 116746697 545795805 88355762 663112602 765988560 883537887 418210282 952346914 164602953 548341190 987729282 992130286 473948290 652184017 423305148 487725005 881337521 921680705 520683643 955390578 674952962 964968553 270271397 684713622 663419590 927681470 731637005 881358746 366448716 811394029 71158140 693542135 150718259 723147863 484584704 794694363 194809404 379600608 585165068 717693385 625101144 942175771 110823268 232537205 309184042 489929916 362683644 903414287 29492499 127208411 399566161 766395575 885964484 914280434 90521600 771003907 690743235 882790630 731250810 967230979 626894869 947630892 777231462 793619875 553959677 884180385 642832681 993391470 687344195 855601449 514566935 620957416 28118802 280843689 470466045 628099226 999443320 999665835 768730050 945139314 401355738 778282529 532638136 554125048 712140827 915258039 820806369 947511901 506907649 676532304 908486933 980277947 330966397 578360185 123966671 321555115 329143288 730745920 740151365 987811890 758170361 929029519 483401666 638153513 151110270 489032265 324990875 873442893 47110530 223844156 937445504 946439914 703869538 918057269 521939717 842941624 770098000 858196192 302318604 800579400 67676223 829536989 951952232 960022568 761538843 982333139 859197502 979214134 276137030 383975610 830879510 852731830 402102148 796284703 546015741 598589603 274428811 425257882 478557930 858841329 30525349 291293821 218623279 752649403 439758896 806816345 256598115 501992804 75384856 236963030 167537786 721744312 424809838 462835807 796456530 867410006 446684062 944921381 358222155 807251912 159950338 698147908 573253235 807756160 286715100 619918613 43699535 601859392 558336462 933864067 828335499 987083278 170967746 440589192 272119955 893338088 311850609 315052374 739075304 981624771 280127711 553244501 710712639 885783167 641840599 805106015 965288369 994628608 248322302 884342947 678746066 710595466 399841705 870255285 314512134 774191443 932806122 992095360 967129232 979063727 698591464 931686490 510189731 588443025 158329362 796523634 5964768 535607434 191025687 274901950 389586473 665783163 569334999 870958366 918353880 937203856 853413309 986091469 609302140 935714433 55306627 339746255 774799758 850819649 235867935 400825491 116811375 228000501 605941838 703811989 596170608 719663914 636373450 749563116 971913920 992534940 987476127 999439480 375021050 873068570 371433775 563640366 423259630 723077849 783852285 904062917 4181587 607586960 124720191 875701272 264093081 411236103 622623690 667411721 444757041 958090585 725484531 807340840 181777260 396108479 264151174 855439756 94488490 632296930 123719132 621725332 248700607 295907144 736705529 852286907 70308804 400521733 588553056 740785165 308221754 803656021 101689779 128678387 970233707 992028062 134766434 294783507 146348499 348060140 174770075 775812445 967001912 974308055 277421706 816266897 824849282 909224576 885333653 899404079 560579046 573593670 779032498 923045217 847280381 865135672 268736165 830637927 608208772 996280985 205809983 269666649 258135465 989978623 872327464 889467122 588921638 763811012 128385456 238914728 334120869 891947731 381596282 934206762 360497715 547659461 762968787 848938846 737304138 954931610 107283242 405635331 39095563 188511415 297648236 341857166 712429402 973354431 247554608 582854488 961750079 998212992 222792229 903327651 219034376 811810052 707433796 801104572 318768110 732098842 95794347 328436487 815843385 932131630 55439976 247853873 534382356 781686136 72746138 957060563 743334111 948891112 88686132 793480591 190594911 638020860 424364612 636276027 197929751 687976618 359058038 691784678 842646052 849025213 32352028 479777415 404557838 589486888 697565291 951605871 599410006 938785458 783128995 866676836 755345605 805665457 672427924 797492116 832907590 864607998 126641568 171815188 963162246 993724420 252689976 828938580 799527963 824761899 804388937 925292623 109124570 699742838 126719846 487350562 722264337 795791027 406236135 722690420 152840132 754400793 990930184 994517902 987768327 988413676 711983793 865631200 146814420 464135189 965803694 979343833 560932111 975032314 816263243 915820468 201279661 899036651 947223299 973823991 637287021 666282356 579147102 909981919 393768440 887189418 201445616 899782909 717586068 754846679 836570898 933567870 924750166 970821203 280289879 319715603 825146503 865019121 214303150 873249802 895587656 948736942 116036531 810736071 971134152 986724851 186401422 232245981 579946459 614023993 308991969 734291496 860755007 928101730 847267157 925024878 897715585 971518228 985009969 999676654 518482451 550432308 864476418 992723859 116122611 186580620 314503205 480037787 205477583 288590851 883959650 912006481 205264676 324836197 463925937 850808059 906744345 934618240 769162616 986069255 996912936 997631980 643762990 794975382 937735473 952349477 562928737 958020206 308222615 946713943 836473861 920300696 322698232 977623103 9633291 148920294 751734349 923880676 979714683 991519428 543689211 641317927 76441683 254972105 105610061 215265567 922016664 999115852 44119634 648588259 566972364 682836392 853919686 917797461 516922113 609260836 587326490 642029793 54140196 617344303 987879333 994290381 538554311 597182167 964091699 964206277 585023907 734753268 269398921 641082902 51054530 259770296 79157481 363179756 837368482 894732430 370553396 915621983 4964250 348266553 127137451 739469352 993247323 996720249 332183527 358092364 487722062 675737667 754993040 957636308 393809841 972275238 349709628 952011393 449674489 662547141 575756461 815733054 6743021 503315830 667322443 954581991 844448448 987990598 525798043 727629220 16221799 552754133 488985668 871831240 338431385 726382699 567951331 921531268 592186200 652625972 646176706 666757206 796255844 988600085 894984486 939285623 827927361 892560829 248596515 254543460 886149143 999925026 714905534 852241201 452570868 463172640 100077738 691692283 783006001 903077054 408631149 932205878 458839753 769109343 353796960 975331331 429891934 576272138 62304443 852294227 753141479 956950403 291040626 328689783 858489115 880205454 512465891 531569908 671115790 757451745 83137030 903788670 38920099 797759739 803016640 955845849 125989466 854049350 219316776 242430656 490114704 678969674 517327873 853341258 802991542 926702701 467071483 646290758 839564092 961074511 835147519 906000111 849345199 860987303 465989383 613523618 348404501 589191693 124586721 643393905 62365620 462916323 612388371 786722010 994997627 999004648 336567896 536873474 644055249 934018089 177505235 254727176 247445974 528924374 939374357 941627526 518049261 906757036 556980514 957967101 210420550 505180927 544336739 548424335 618057998 648665445 851557766 981185813 434736430 469448049 143813441 667547384 561926187 909066438 252264486 613442439 85413359 954730941 107441210 636016680 240814299 659694131 871426321 986191730 573391851 912494994 796165219 878129881 61235419 744890179 504374603 639844330 993090349 994783255 838074907 988764746 673989104 948380317 467988550 985723705 70128168 757821178 74985782 230347589 986924702 999048862 367919851 760632389 964593352 991829303 824387124 853365990 673282924 857630348 347555667 637295874 879428488 882200183 796458184 813471486 433935920 571866628 307460928 531377285 142771312 767110294 725346180 747202444 355510536 448313493 883312330 916178737 581653134 791680300 534073555 608667859 452561974 939763178 126830650 379360950 514082171 956061222 675057876 846143559 274510902 855042029 210704853 579991239 944099373 944733618 981621128 987659859 313956706 861003321 957702766 989451092 545609944 834858785 161457799 888470401 658604026 795757616 491740123 535422216 739996144 989581154 49182066 171548180 379158455 589827065 892145351 945860214 799970527 847797594 701855625 996342116 129826662 501496675 772146268 865876217 774253850 933830753 579847108 667774396 702970677 892795242 216259234 739921239 890772721 991015087 785051638 933442874 724279306 915058110 219147960 732060703 708641189 709893360 817640729 904792964 689146514 832754307 981343491 982541397 869595918 925042860 424442139 760635139 180498702 635868273 214112084 279985160 941672210 943552723 46524841 738083365 673061923 813413937 267303909 748967252 278152185 919250501 316075586 400340813 785859456 866432345 428672503 936931375 449033520 826299384 416770405 547261308 685913937 716107786 53786538 930934147 132220246 389917228 894884747 904467827 868217799 915798506 541839303 738039104 424244775 485686040 179592188 658799282 900384093 965722025 731690083 902586086 606033879 863215027 737368665 743584428 375301233 543645469 623828048 679826992 1993538 948319754 688146209 966756734 478678608 597694215 471908965 811568847 584514779 665954381 526176894 667037095 853058770 925571144 307383110 643615258 627623812 671524628 131446880 148427659 416605956 549434470 263764257 779835849 837201181 887059111 829524083 985313778 438662853 589850853 623272163 982443986 260817973 466405663 806548555 942564808 467477892 686469693 939403935 966242880 782607785 893852967 799052381 931220119 410090334 544871508 146639106 383768524 840798737 958876137 125421537 148079771 244345792 367707837 781745015 841007036 681062094 946810264 422202232 699213661 955590701 964711510 238500053 444642399 196993866 764316945 497118668 756917981 997573881 999465333 368168304 393739715 636132734 984275017 278681442 608654856 447384517 584199058 363966973 819038058 618278949 959204767 900178309 975238636 657267852 961799320 342970473 896649917 300733149 303208919 760949015 803437347 627579695 911781830 539477839 879331981 743580768 994018124 205571606 598649203 11398331 405349093 372331213 612289552 597653332 848457123 316974093 556956900 753246877 972961495 985669286 987614013 315950418 471185494 533158623 602991035 210647111 525187876 840676099 909825012 627644728 819465222 675192751 931399978 268355291 607189513 124324334 484925365 556075749 797792588 712135699 831344953 478408721 629219483 338397988 840472278 36797036 241015275 545864568 563630667 911675238 963122558 610502367 851151327 720684481 736431474 552133520 960485856 695608291 851579337 243819478 947402091 20972173 996713928 111989824 295973634 55588913 440052124 352305197 581495433 877017887 965616370 725898150 877875178 171443046 764351156 544332015 620120607 387545033 517898048 273706610 773988982 668036759 873787962 40032190 614867787 937975504 992374619 669878856 855224931 908443328 936818348 598108191 721714067 388661243 456966235 598398004 925910827 742148825 960769502 984053080 995859924 863040311 877425315 87225816 993855808 869670770 969680650 843509692 957808824 339353994 423006079 783524514 809443159 839114624 999122596 489652662 876777637 288308366 606631816 530570851 933845568 952567257 995187429 407649811 622354989 382710309 576397524 843369099 919811064 95315899 118881286 749233752 963951886 51103377 55555023 126379379 867483457 255200355 854170252 384612714 729235878 544117968 573719309 311895774 473183423 847854549 864972547 782128830 785358342 469535345 964274953 455229035 455984483 265560994 794010814 299889528 716072668 612032949 853259959 428039277 733012683 899792269 921284716 526539493 821161447 161042056 710890070 351291576 672824550 590732840 756143079 743628511 815198966 97346244 526273131 941092790 985833493 390787857 742859442 874455452 910603068 86593138 303543926 477810168 738238600 640627293 798015919 170912460 398549430 536618154 616942545 968997979 995451978 272888287 993676968 996444557 999131934 465129659 668072227 883174022 919629877 256182607 902414269 572116286 740324673 59596216 77575780 530367502 839522471 703365091 752327755 424695983 908565312 782029987 788148962 260918983 938290168 260364757 825863251 83045069 722562569 871163761 953124181 421839825 810600892 521739489 778867645 764879136 985773851 302214325 985414266 398097905 508565577 234800414 634881450 416509979 825589606 746358703 835574982 368703774 875623980 910233500 942748582 74118987 768864043 960796511 992569115 711742868 741415840 96058114 341685900 375327766 519304686 106912580 216531552 910015399 948391426 812113137 818531061 111220356 336460531 372357827 468330748 4219665 398304250 291026774 330289557 979989290 992273643 194471027 904930745 4414828 614240322 618531770 985576000 172900375 497460839 760531159 997964557 379166298 806961691 48189912 791792067 952452620 965136444 966667198 987105465 842169209 940167637 870257298 976370032 952664919 972630268 288252970 889315063 413377884 665174162 856549328 977006351 122740856 206847853 723508235 741242591 519815285 926769689 277450052 435316907 474761521 954366241 574187339 845788995 962781911 980073254 350935500 732451683 239305174 841278463 667702000 825372654 670668561 807974144 834349158 873923405 58357542 954168799 420249278 998359168 428603336 442798016 745920998 811185607 980499298 992015001 654429855 896314726 166818086 195197344 265722892 740496765 452857520 989287296 250299185 527298774 214452464 823092880 825498036 915412582 929307561 994562938 339506119 750928114 945210616 989547592 554290477 712994335 795404382 823466546 737934476 829454002 765539085 803477027 697635690 910051621 784355290 947597178 701172053 865666167 38898760 119067451 736470921 946579264 468745035 854793680 824534308 855837877 562785877 896095083 302302895 307689531 863264110 880119741 620438962 760737118 949174363 951832605 165091672 830663427 972174252 997681306 565497033 676319492 165584080 594324637 940831876 951583733 671699999 902217467 8261358 780200900 441691742 507877887 809647822 922290777 166328721 265795281 11715363 564134064 720547369 724010449 517035817 786166326 81809377 328982595 318710129 991853116 940700588 944587293 407404678 920464956 257797447 411069190 112632067 225354267 723567198 982308557 903484531 922794042 127109443 483868299 768247249 970396152 488036306 710483215 472823708 960284282 111064832 723524090 220497752 891356372 382219615 463618934 452145737 592909385 41377555 278426156 464224721 542590742 909137106 996722971 761825315 779237473 887228041 945078076 811480061 854675078 316416817 580323838 861129184 892911416 188790887 566634534 905494261 965007076 670821216 945515192 968603345 974412320 981721783 986943981 94936464 502029465 997499031 997757384 26625888 66742824 475826931 931848445 867191449 904037530 943278362 974595765 604223906 697450262 209272927 512551929 417713092 956238634 332234610 529697262 712055396 884983699 759729487 827308971 256860295 926179266 90099357 541084693 171094129 983005359 296490214 442399543 157318203 564063489 822669933 867477757 65820586 592573413 927568381 970133087 932102325 977424371 364055449 996950770 289592421 392796697 633554837 663150854 610000700 680767751 12014664 632403696 659716672 897286623 444628943 800275599 143889517 360192585 408235400 868212397 781110791 793804521 375365328 726562266 240313001 932257147 291588505 491250208 992944328 996858985 968595502 975739278 500946850 796728919 208643202 897877748 258158141 656570729 662154023 703532468 673206593 860256963 921710477 984647013 582185543 691363671 62128691 416124747 624176785 674199501 296450184 540053871 555841815 602331228 426273852 494787047 576446873 747318198 410994186 883538386 153254765 256507561 517332012 720530778 774101358 904704048 543481288 764387663 174799335 775088844 96556499 881436744 591430675 982718508 322662851 626230810 810754762 864874836 487244131 858844182 73487112 143306987 831604551 860667710 167031474 855188815 382598364 773079266 337973613 893053556 773633828 781471124 681890986 827458789 478594949 669446627 688160338 790308766 763115779 983092802 209962736 936099881 451040864 996078499 954639178 988165744 224745159 430474144 715292322 836457098 807176948 810730493 785892889 861961923 560324762 766981165 950937958 990682650 222966015 795513068 321889966 608971409 982179793 997896171 807935722 990789129 34495794 892063177 644283133 753761085 590986011 815812975 850358682 889237288 283611892 728245376 194326913 999465133 822959190 998470942 563738326 830219803 687866899 818757318 921978928 940649113 633283928 790108710 536540815 792369680 996561846 996813672 846166780 975411945 92877893 703168735 246572013 466446836 32249219 194852619 506931995 522560939 92061701 279453462 824205268 840010284 970320235 995298062 385307097 594015177 791626465 951627887 327179681 583353483 539144419 778838977 473864553 605277575 883562420 988030066 680957929 912124313 143929635 256956952 778808240 863404650 719650410 967724843 474856784 916550322 904948952 944918041 51342941 447132312 400899039 798826961 174651930 384587136 327932673 506408134 578441798 974863829 425430893 471226844 716569937 835957891 624737868 814602638 647475923 907893372 682752806 828344550 139373541 434733479 366624676 431515838 382470914 783303137 896330296 974713499 293709969 970182548 326423288 473520396 436506600 683141036 780519749 841661482 312110540 464213519 770808696 996077019 383296025 504932729 637577361 934071142 363029436 707959075 157125685 986557287 895203732 940499784 269035558 401669734 798472049 853744239 247042846 793746472 746930245 899120667 219914089 673086910 730950724 998394545 469530822 734609929 58449903 634612993 481382110 516623461 308971098 854290277 924615453 982474743 549008759 550679822 147439489 189823422 744589721 816579044 244879873 273780046 987160137 990229714 970086857 997603134 451084540 897042703 730175382 957890449 261385220 261739607 640351452 829432247 442978040 521117316 308472624 835858989 358826974 724007674 583801133 690749421 239932653 342181304 766142844 792665197 487381929 836532301 160651251 325372563 326030423 689354281 664668425 806462171 280402607 835766981 312743624 428538649 754756662 932779838 85112673 910271224 663363989 735488140 263641561 519870347 974832924 981688749 951042920 965492171 563074542 804367217 129544859 399083745 553468924 978966670 300921508 796552209 86778394 744612118 742969210 836145995 283432172 361960114 239265498 569964018 281449665 409763645 581997323 922929399 360075583 571039064 183814795 839142449 471779493 472207073 597296046 602194805 859546065 909394610 506629672 891442217 38407494 604303430 678902572 968871278 84157147 955483787 676385700 750185290 167745930 817796944 8693837 804318741 679108887 809295316 464263809 897197476 19495628 270168352 167491137 694293981 557082594 896668661 313004662 464732547 407246079 701122131 477033191 953199035 648889499 934278400 777683612 819420502 531874576 902865781 294526898 695879878 304050968 594982670 772937237 884770403 377475617 567041598 345245206 705324201 593500753 732483091 286994607 884659172 845541955 950919162 542521235 993932328 331713425 641908304 266944068 894493519 404510769 614793250 248179385 400032237 12542516 568791930 337252066 700919072 787469424 896083640 866423723 872425574 9338006 555787999 358554737 715502785 702955961 856886171 963654219 989635932 84873201 522246488 9004188 891095878 89561121 559508720 470222921 573988489 918798973 919665324 657307115 911558736 458194162 924126558 837876482 928542299 520829164 677168845 111194307 736323457 874197238 896001399 598325739 630460024 954600180 978805921 131255465 837917167 773213952 822258715 552864094 960790424 400327645 832850174 838816316 863021651 633593391 889491767 533099340 801400801 961354617 993316878 293589978 904325847 261150263 962482006 512969841 584775784 194730562 231047303 557998373 907149524 270850714 881814369 672913698 960294404 624869967 773592460 227622092 350115089 589053080 703338674 348062410 829185238 578567261 757163960 832910652 882562417 765361179 962096810 71704690 111851083 353144002 927864775 59376026 376620868 395415448 759803558 968005113 978242422 261642529 976595531 880896061 953131248 440238127 564122505 897791969 994099523 694274470 870396637 350836588 795757775 809155583 861817451 948541494 951957696 858553623 937041965 33635349 866958066 356436295 437120451 180231154 314133136 612806032 774380206 688974152 924257839 217699600 549358232 815892697 890875653 180954393 219693375 533028267 926275813 211878734 605843280 746175190 778747033 623889093 685715014 134699302 701823143 189362627 303233233 590164200 827092849 717512818 845011727 478336565 685607002 807064658 911370323 673591113 869628151 214660019 656279963 511425174 844741551 51120833 78706532 678520266 986572875 821668549 937428794 919524682 923807397 646560064 906216421 834870081 945719411 547545218 926354207 984994265 996020423 643243237 807480536 811647228 873621138 397390739 838850686 512519811 988202096 596740700 987352050 151976230 189614841 302508574 403746864 294769208 343176161 590655379 596974961 887649142 929565419 467356432 839153465 629096730 979353355 118584812 728885366 563967767 971691839 915389883 964603386 403582049 846011893 848595349 900069968 129950888 607812357 160744752 863246853 503858757 974359097 86487340 282999494 15699997 611723019 148838999 939525735 136375884 614091504 94498312 250661500 651290301 993763531 704207934 885325513 29945433 722802589 948662430 969273448 623702485 736598598 361266899 632876927 576643562 761182277 393352616 631258338 318331255 509747854 494894088 793672793 82281516 192918528 248119798 300698251 317346218 477150024 451513606 761623492 923368764 949963901 138389719 849755737 145887654 178632759 10417087 784123528 458037436 821610383 920544101 927568546 19423662 564999980 750472005 835223480 562731305 728270189 812242943 868073993 679541521 831653198 656564785 802705881 155071424 422270399 165223874 887939665 239125817 922355339 994234464 995325905 707248358 920626066 933851036 982588016 798617413 969974856 328267652 670997484 112004585 623813021 152575500 300993872 529224058 580074750 135601594 881883914 882751216 962322081 501308635 869413007 627259435 781422097 698744078 822082362 602831603 801152279 966595049 996814660 410297803 806440898 169682222 340382352 393674844 609859285 410868136 612698927 264328808 972976790 48506495 860195080 285511724 749705541 868989539 986447097 475784547 624226508 774022843 903279594 65852644 567764062 691432033 845329405 858471117 939561936 979264644 999378246 10498759 769089849 694204878 802807432 454091832 458440049 926084456 934862541 333698982 997243922 163307709 618242161 901461639 915067044 928040062 949266615 565889727 945325949 326668784 603999137 988925515 989808623 713325465 840489782 109237200 115704485 215625676 902523627 753866722 941064433 381122906 603049251 557644457 564377246 552607484 848496781 728784945 736723012 363929068 764430306 607724041 871393475 648757429 703563454 699257798 916810920 576343873 676865966 522864766 544977832 240762040 652609730 397323524 433316223 906317780 966974119 864429752 938590250 999837984 999843772 163741099 735974107 679255018 847967398 975171753 976066235 404156651 634203432 255696404 848625569 345724624 405433446 893162986 909250661 640657912 993557636 527596719 836697649 405891523 586342792 472613257 940674830 954761876 985372888 522047077 915670051 408976715 979669466 916021044 966745047 427944793 873134096 911981428 994127711 542599184 603974893 348580815 983488405 127312089 418569453 372483130 662621487 731516865 909054884 141822431 884201097 979098842 992333940 423037248 741530628 388680938 933046605 907719235 991337881 491750598 519733269 65426749 412887241 785999069 902059322 801237797 918544998 944830878 985812752 828788215 911852389 643723041 807424655 645942219 771376105 486394578 737519252 385657268 659856633 736247463 942016293 267360051 766517188 2548504 579292583 161102194 333729707 635157898 982678062 986294017 988361102 396494151 936001588 636939226 908413455 761272471 840554941 54121970 730190020 802889108 871000963 968295802 990218954 62696095 538549439 292972725 464180215 245886973 756988017 117646727 384479976 617417988 740078875 850615787 909683896 81472014 254281404 933347804 999012385 412374179 731055153 592112473 601008559 799253419 863619936 233136769 338081413 648317516 772556000 20057473 968878661 132994552 163398172 177126988 624371382 42003075 706478668 87036661 310411855 480847547 853240074 341960928 883267706 27421106 792387519 680454258 829500620 565412607 865594555 677381345 878430177 85122049 243191906 809754818 965812650 699584119 861877060 620223100 700036471 312429832 513080589 194760656 195609004 452345132 486270968 490573150 536488700 795489842 824900348 650496610 829235951 160329565 320940504 545389589 742324096 125667948 157045851 134042179 556172519 63168737 483128000 221748064 939399367 375464180 847799166 797397629 994286778 649982654 729570880 387804099 588796877 626166897 745178190 187237728 969833588 158324930 668339239 958109517 988271958 557492619 558204280 371515124 442979862 757698667 837899804 496887726 745331974 354079747 992379044 868924025 916389761 587356389 987295269 997206231 999738886 22363723 879613073 108583162 289980611 103948476 474834631 585723767 839560112 686314196 821001566 184878537 205357830 142166867 299789782 308789945 722917121 302432628 551150536 844281785 875445554 428393255 580659253 491871489 635029329 851049517 884471397 881106620 961037761 909722678 938185488 433983485 683012484 221797376 775024356 512863444 517024732 607347109 956375858 822853216 883897676 164489892 878468363 191389995 991490652 147765172 529638514 796069272 801658432 254015010 514174366 564215506 733548895 266044937 930637635 475276760 542345941 983232413 992633649 448914919 470733361 970769822 995257935 642460915 926502141 32428784 397967358 434548314 756106834 842011404 990857674 271674646 441056745 97036771 428114839 130078507 697612538 864962831 913070682 53860965 906979149 950545211 973608811 444941570 867787075 615359712 905544598 214268094 410625302 284027970 385712618 810754348 866786222 855690403 982925228 796505191 865017919 260168034 527413127 576188638 913591229 208226559 794320332 686083542 891117139 1448258 46334119 103167126 820766138 668903929 888519797 77298730 239481551 734016634 900149478 919485078 943819279 45479262 589165366 323941466 768955086 648523556 841275087 920058748 961390847 486331925 571278465 469237690 522375505 856372138 974713755 994871424 998275779 863327825 914993212 990749453 999675027 579968763 814634505 780465679 924425629 901954605 973696360 757825237 809619569 498427886 739480214 893506427 952821063 73365058 535107466 814820984 918068320 887889697 964419220 710111519 923451267 69467193 951223449 95843944 596478703 641842367 971758572 219695535 802150306 15454765 468470188 904063034 950585236 787179732 876072265 230401899 460178417 172986686 654985712 15280902 299677082 278820928 682314023 727681452 864824977 565158869 704945390 572617123 620703033 440127232 776573026 779162985 791237597 316418883 319768064 259831382 423287127 243798475 914400592 708775175 894086580 779233854 789946289 941113561 969622060 366110852 641804984 137952441 603658772 224232863 308561185 369472582 994402551 864165838 930764278 853522264 865099825 143902572 755058570 347070475 619880395 58615831 464184096 568628653 743491787 312721376 583448508 330339561 829043321 830348805 929927915 549708289 911951710 533592134 759781642 562366058 613543378 205620506 931229700 74675065 216874193 983977551 985403540 890735256 922553351 842841346 899757994 66761062 283480683 721154744 909615933 753214191 774936044 26007306 858135830 896508760 936240332 133704712 883797684 986121493 991863105 515972027 523744086 377191467 908891912 484215382 518055223 849507816 932180475 473860707 603187517 854206521 971865951 139599140 273577982 841033799 886053401 872101525 919498309 701551801 739596832 978334827 999776367 739340356 753013750 552959006 747462142 259696851 779673415 533763972 740214838 188523138 221435304 957033451 986652657 677923337 866494952 778181766 856185457 239356447 619660496 520765533 805850778 611879325 702503065 370314512 933586443 320477938 842756528 141917042 664362679 88490847 111104254 165477929 394044025 792478994 878185020 692972268 759202557 982581149 998561294 2828394 98714855 877837321 985812256 108159462 219981583 15548781 18003711 480904481 615191666 17787396 146802909 650813059 669033178 954435350 966167253 855979197 987063570 611487718 743326909 527525792 723878926 584327117 823497688 497387601 655803218 593042867 932591245 246945256 272001837 448279942 588148996 755246473 865559042 606083489 665550715 892348111 919544035 438695758 708052331 107202019 350114789 391138157 646742249 858054647 989680722 30130474 143122954 260693619 735324398 882302387 891407737 430374781 860491553 904169814 986443237 905596139 936625498 383770401 585569622 31855621 945158303 293453360 655824687 359307374 737939972 579509810 862800808 275463096 973372125 564376007 878759529 634591919 827500579 459681006 925587849 694517415 978003480 604294848 744195995 135625890 952435697 236719370 491189248 549448991 878514514 160226649 611430712 481124031 746406760 911067508 987048984 523903833 739593454 310102773 539576568 441671245 977759150 514641061 950882646 453328114 464319684 499418124 863613813 554192499 848996457 271152745 790589287 446158072 505753005 414464208 733848150 674036310 971589100 298829526 786180670 71249486 285763748 919398837 943769608 365337394 934562462 612310252 922509355 144621553 179118870 364084462 486801722 424416633 826286103 962876597 973128775 372888651 767164617 444461293 978452135 949473794 994877661 463226294 824356428 796391197 816567331 118775448 993619750 141127398 465817427 638727104 857182386 530116166 651395403 882214173 997504162 35699702 273923140 878809194 907816303 638346508 806840486 430481876 553657610 750986584 812018807 112947001 717172927 594548038 761453333 882713701 974037893 526188085 592695651 897358954 926550171 763597702 840376977 775137055 853497518 38649224 103953000 391092632 609952463 6073781 844015616 38952223 715168225 256859111 893718580 382581642 632410747 41275010 277283028 699211947 915659605 70523756 96760034 515886800 527315102 547243848 781535469 629210205 870144015 499595249 844550234 184340850 564755253 473587821 883813179 567170638 922520648 156425810 780826079 306545170 665279689 869673423 903968845 430234949 613911905 827121922 899173154 159421579 739610704 200906741 772399338 702739015 974481229 976585338 991981380 261552222 323037490 985683461 992104502 224267384 708138189 276101826 678351719 40182249 589288715 941936192 988653389 613215250 806321526 576312351 917959664 916196766 964665117 527463910 611702182 352485009 894106591 11779632 20119132 177923115 920797607 255978242 913315520 187268822 597887555 389846700 584881819 144170646 149918242 932763870 976611052 715728441 729978968 4610285 731581457 707536067 990397923 739853719 882715107 688640513 965947043 83766552 338216880 14859666 147331386 763517378 861595938 218481965 778009201 712159403 910985856 783505219 862172019 319787577 475923756 750393077 772271911 304531418 372564550 597178059 726926988 614131039 997880626 466811881 823780369 342572077 531839378 103419954 445199817 10961172 744639279 870938217 881718697 455919245 976510786 378380007 410069582 396514825 467859443 666530520 683736339 19063096 295293186 483183303 869075022 829867083 968957266 807807153 931794793 563522294 712807144 896188248 952747562 140407166 988909961 702636998 919973817 458529701 666518315 203880693 913729274 537244653 769836283 173125424 925714565 566771327 701196724 803002451 967673763 981004356 986883565 46887523 889329607 367696291 473945749 512632688 963413796 513373550 772034485 129421260 147826076 988534850 988558108 635038685 934229997 111555603 537319580 981831694 984696246 835698876 960358797 198801554 802923108 933127626 951999439 704227998 751739922 340419573 922430492 160254843 406024678 996096458 999798684 541008502 705548122 481283881 611932544 723822051 859827050 462678472 884503264 994930718 995202456 689725996 914424734 470245105 609741206 117956698 697902463 985936350 999239234 432628127 686669626 267978233 495511309 839674677 859954946 651983956 778218043 754604783 829221309 439234714 658113805 230597359 821234727 123236632 955700229 751697100 809464365 447728240 834327474 787233372 792458891 113343816 523657556 828284302 973418246 841170306 891735947 427980426 941693736 870483746 989241036 75063961 390001810 211848345 429596693 139957169 584925362 800038479 884307308 664489042 781062800 976761805 988100128 595347563 738203296 170136740 914418517 4326658 41489921 807685189 914739876 812949190 878838575 28607993 869958216 302913002 855075801 845720613 886393262 654734494 716968785 178976376 996431210 851434928 905912476 866585651 961110562 65169445 167157007 527244508 824392981 165999768 285062834 18774198 621251584 391184064 413557175 775271007 942321561 157036112 618069714 919598663 968920474 618299185 785141308 708242660 726717794 250690803 263190176 993583388 997360827 443732501 796409395 695316022 714122383 89244992 350952638 388112510 459712730 259612428 263076232 542217158 750920786 72329243 364227755 217433555 580553366 113834637 386472706 299067714 611676729 171187895 926610137 830041969 973858465 224814275 588346461 601783125 783435552 869469250 875610563 442942264 647962113 1411183 689782749 152497690 982809323 704872480 772797170 311092589 477607137 758360639 928158764 428768593 938726371 620301125 824779298 311233064 947482181 642187502 843485505 264578121 554701061 163048642 524000636 626628680 855987687 692039139 755610232 759259273 945646223 235572486 622880505 715854282 859716870 981554660 997699988 717889189 919653580 696751551 837112613 532542694 576278845 474473528 544298316 146443864 786655356 243995093 393841607 203343508 356454405 534156148 668871537 669399177 787345059 466231357 985692559 758314228 943557601 377415270 512581163 723928748 878740852 713999720 714603981 173099367 306222336 684634255 770244839 783652855 825456144 575185458 640083085 484346309 567687632 955603772 966005991 201115093 890343729 188009196 778022421 696455071 832044246 220151287 706571013 784890989 848290199 837167105 867197184 705133193 803360426 633015703 836448518 502106827 711473901 65897283 131037126 750601882 869928816 529476282 740574141 404740163 781098879 838790680 935621201 656851995 980700220 839543238 841916722 71192449 872140939 506056626 816751036 686999680 870334203 232206264 625001806 532692611 756807207 864565027 960336792 892016385 942334556 556196721 876191932 185263570 593286698 534819613 884620482 445947126 769737175 228695863 533941798 805096313 954627655 418318118 609252364 548780376 831853283 946590011 953568198 679571462 762685221 787912142 994291729 198687835 392736443 508701844 771512130 509394985 653818904 857464589 879393904 506487806 860416809 560084515 955486663 924172398 977161721 354262027 730137373 593798413 845782611 671369715 674734363 31778707 788167790 195947326 664201947 107962054 243134454 261711055 378897738 741845842 926795166 124172243 698319497 201950265 584513286 758830903 858716515 371928384 543680789 243016330 369572382 990090339 998329964 289826757 352536319 826963578 877236856 637719519 791226018 354259819 598470319 66947841 915809679 475159135 602396301 804380743 959408987 638306597 825164558 586338854 646147421 808162498 950415649 495701655 652020471 187590538 635349330 261551191 416369945 181003808 442326949 386764197 647228898 980111262 991653744 874237323 879716164 936965431 983519526 20526524 852049130 318457987 735437122 290382738 705557567 687210698 987538027 294547408 492555177 100621764 504134810 754259246 815469022 611264373 915463528 326638761 483111694 604896013 658722913 834582239 921716485 649441324 677827957 326935004 827626031 195077760 698212254 448812285 890666097 398341368 561053194 418663372 795336138 469038790 601978137 960064378 967363592 483591166 616805407 273605179 329439619 828018419 943554947 423755991 738484208 671924240 807734697 583814837 807972729 629082143 760434861 328432932 424735118 166399951 777631217 423910597 812004724 474920767 900235820 908372685 960307151 524851148 741044632 132535808 600069400 467047270 782654363 495633252 692297560 792710499 989966817 857333347 863805411 845866741 888227455 288982302 624367448 791055764 960340612 207846283 533936037 305330124 886177532 744568936 931057733 343861580 821004891 102647477 365199405 262168152 342790340 995459692 999793745 65087249 770524814 644160657 776573186 276563038 300924197 370533934 534729684 229982223 265049791 41010836 149785445 163241367 720853588 565799046 972855675 388238092 529416139 323250188 903763580 494185833 664586422 331762752 655822944 522726538 734258763 17371959 984415869 297986899 339391553 430962098 926847586 527023616 691608190 540351065 746150389 285728150 941450522 910337174 947652255 862303589 965464582 451478244 995481800 974595034 980209303 792710818 825454519 102798627 367652829 393754282 438405101 652316792 697824734 517166375 971916611 782239419 944612410 319214364 434858515 67943649 436545629 579691858 778700100 752389909 948000210 796781660 874618613 178192718 255374961 782833831 866478705 827739250 971426781 425145315 702505245 797733258 985679651 923403925 959274814 490273600 861893029 429200076 805481260 596504193 661155774 377409799 510317191 902344277 934153959 452023289 630506452 80202696 551953959 21312841 463179275 364108911 523500738 873295818 908623493 662684712 694470730 672163817 900782810 102829619 616911572 863533285 942121311 303695732 517601918 179404959 246229032 365698924 904845652 328980187 746337663 697024972 896784493 285708014 569618766 804273768 976200735 261047189 379594180 933759568 979821904 36515425 92623895 664702321 826720438 341029802 804391282 843471276 898865772 758681241 892611087 136905221 479314583 51637718 755934708 902029266 902503770 228044911 323351465 305063047 860718425 245198192 780292548 126017493 603354396 972860703 994290156 924444373 992747679 998781335 999041740 226137135 786416491 657625538 861822069 971760741 998736621 811742694 952477565 840431299 934899768 775949659 976014019 494356629 874412484 241194067 899538617 763446932 883513591 235066994 700380818 932800701 954681945 548211051 988496219 124536874 775693504 535950254 926231955 964545310 994301467 876708977 994653675 506384688 799605678 874822683 877709686 580870205 848157207 815581565 821903938 35882128 344510854 138274280 619822453 480984462 586357677 814304559 896531586 785748059 922992515 512791245 902574584 865077791 976699217 350986396 773248521 336243485 404828390 966031031 988694415 975417673 987695753 901488257 942313483 593831067 650863443 92374550 460766103 508032999 583927668 164733321 966212144 265781777 736132853 116355525 581095969 561213397 946099392 516381277 649283433 453258332 787346171 413691702 512735784 509983236 736809917 690840480 856712975 350169972 547285407 172648273 889070787 51688388 835976086 221541492 964549524 148262357 655482162 303294821 500821259 682416517 937545402 703918947 946096060 911385029 930903956 999478760 999996329 886528537 966476011 345844602 699715463 607660515 905005256 576544864 815630496 747311812 752742621 743496829 781905172 42117465 805431646 106672634 315462794 598399410 980598959 903090294 923836173 420825694 996559279 919244087 973011143 12561271 911638913 579187751 872846721 185353575 445554464 275717542 311605821 988274370 998017449 742014358 894470518 19726696 332988492 561822067 682041005 449086869 970816945 711243632 974776930 788158017 863435009 76497552 235610541 890748818 984983185 838290014 847927809 271583475 548817975 142690308 671890170 987099390 987377338 485784499 490218287 687641986 847252418 894782440 992913689 902406032 988727571 503557403 999808321 511714490 724030436 479601444 526881346 445852342 613671264 74097579 81530232 227662494 807829401 617265276 989234930 9446447 695086782 621350087 696478266 281890219 836390753 660838721 928144940 63959729 257350261 95016296 260958666 656881939 918888322 805272895 921130985 408222113 639187037 768099764 907953502 492415364 864784446 456923662 927001649 742572152 917019544 168980740 883624981 568167519 685979457 244347013 523839690 163522271 903109707 723289431 814105955 859196178 906931634 715928548 813034875 353258815 853664794 821352604 850007275 32905242 659466320 507361511 655113623 580353422 832038390 645490787 985308453 976924390 976942893 605597597 748125790 522033890 987897468 899271560 901545252 261689488 893980791 191805089 883185871 961073743 971582131 232331215 806515492 391832326 809944701 465152998 489039877 87340534 623973935 685661978 807067368 348371742 615953010 555311991 882393639 808810840 861194272 119779963 215131434 708142322 915740081 545242896 670868525 424653091 643169917 466634058 879107010 593315334 831869238 687775989 737381252 738086725 974413571 377739372 636887352 383080303 720776005 195370425 930995132 548581150 854194585 64415166 852777876 288311451 975110286 602056345 755166907 894539223 939291028 806812883 871612726 733875514 994588585 832007699 884351751 538415609 643798546 454207224 938540195 22703748 351183137 945099021 962474548 22801157 378172277 735815662 763069535 600510093 832472980 977085480 998940634 948157174 959228108 602204231 990548671 463950159 492336484 43733203 409629398 108040966 667054037 954767053 984026349 356745438 631231956 953927822 978016070 268206388 409080415 939334118 954337564 678235543 990433557 895869035 994003700 501418974 686046920 255933048 498311419 867925981 996427090 575016793 692662049 363647610 748138518 457738350 914799782 288740943 929852952 292775102 799566470 538914963 729203998 440612529 974934429 242556390 565432482 954559768 993291465 890904218 902170518 121842087 246310109 148922388 502691918 313220962 709590005 862324183 961864749 316894066 794807423 116193572 168681360 910582161 912657249 158973530 319428763 215170823 898665300 582438783 777366663 263637333 577216789 612510915 894268103 776475369 998145185 422120059 501717801 714454776 883759728 236856789 828938855 535288195 838414573 137082954 693092298 642894425 673382745 7613832 387815052 325864928 384264060 746857432 867278998 585024556 646807219 169634473 268653175 571750583 869049339 321892518 550773843 355850605 361526554 57111533 612285168 826570325 998535693 289175098 889968266 849894429 882543521 289375075 495317426 589818218 640377124 749640019 791300126 726319127 928677919 448140505 898044664 88330673 444409812 17850920 21926631 198777466 589481173 220585230 471667979 504199029 536951523 959630059 991801106 977979160 987047900 938091917 979399662 665082017 962537295 740758833 802277279 639114487 648817033 489798808 972049289 811040265 819360460 146924848 227170443 944413193 993586301 177150357 404025355 965885284 997342684 102584337 614360246 508236022 796676258 1017058 833162090 959966613 966094203 156914268 291286488 921253920 939548099 551061802 705477011 740829687 826702758 196640052 444580989 906345463 955967784 260718695 704157639 56508221 891981287 428051785 457046888 258881870 641509208 378460616 553747853 796300765 949425346 934451350 950166948 279123661 290319136 210315069 535331242 259944730 336295100 31842934 58102581 133070187 802142266 168184501 791678914 425970726 845456256 122498832 638091117 184864775 601127851 438905287 632358287 514773317 639193986 216205520 360260731 140886132 250329108 828688341 872853103 408807105 948337846 848911537 895886215 514706063 853463039 931610319 997222160 279683993 913599612 184182537 552593929 736431980 760548387 967747439 984761095 67957899 353589527 135855460 968582639 700490867 856504425 662032840 964818134 825772108 950428916 734278678 891173774 253580325 296171632 496477728 636832595 339456383 642338225 425458796 811431762 232753104 283932697 990437239 991351986 505182613 557283825 78458486 583856915 603816134 655221517 448526594 524638078 347821502 835116819 385528157 658549893 741787238 746417694 161417610 276170540 701818609 829311163 560657928 809929670 976124029 981717295 544590731 904363580 969902125 998349506 618395597 926682185 141415425 311682792 689186602 810236924 104541957 877853926 632435873 672030565 632810104 868885692 886425014 958894857 378686984 950636153 562728746 800627064 742906383 869262908 620092239 884459087 383532009 536600582 576230650 720981286 436867107 969923644 506884250 631885314 386260207 470997035 865138110 945113629 800936577 909910174 198573615 290688941 869476964 980808251 678908832 839844395 882907297 979788035 919973300 987852590 223192583 227199558 737974015 906546014 292439730 843269165 513409589 569025244 236696872 448944719 101887599 968613392 653403110 701096713 392051533 658716460 283670472 594931406 151288106 755820856 754889640 919915637 390012696 624163875 38387474 856756951 809251767 894249262 636065906 655743927 992009356 992804384 858166516 858426726 525360209 576675568 895980764 905763222 955655125 979594246 742741271 886189714 867186992 992849413 199607672 606468925 534862778 741364918 730580046 977052849 790230530 849507509 63494926 973182478 998982905 999926845 205110603 459809242 657065081 682413187 273984059 717543162 261545365 692308040 392055763 483356582 841137791 894645774 916188808 933856046 911507171 924465868 496062022 742146924 100802242 592160154 722429399 909965321 553014665 708214765 106052399 923426454 291643075 587292065 896261010 975983246 34856140 489065520 840389585 962655881 266466162 713777258 282153887 741012308 506828498 589775388 653995757 847259917 48383474 819309597 959969281 987959561 384090508 851065866 536685828 980580838 205810300 636018093 583990317 743968105 813961480 853541020 737721344 784441085 690628939 835618334 686526105 864332076 954645897 958341130 204378342 745018766 802810661 813958259 428218130 866463105 534632714 628785059 913359295 937602850 256099648 826811234 661525417 821962564 352933076 960392527 780908914 992393632 584512356 790645125 896486885 976984049 663869771 876166236 269560445 624448478 57114003 84196159 86712357 186635668 397337947 914259669 156156146 473987274 541779308 692902839 732465457 961554345 623136655 751679824 196750525 358847180 315299298 316652536 326935401 805001454 651320447 942614862 714209058 738548833 895440879 960845138 988099361 991097199 207438995 359479315 122730623 285122953 172035330 485937466 332125441 694354657 941652756 961333236 389543777 670923634 987889534 988236114 947000790 964653913 810250888 954370761 108240847 710521348 430967596 544638899 602348798 735714840 875394273 976374044 253858023 503267559 719279635 947343705 648416027 782421074 859069423 902531689 64655332 66759987 824248178 874573137 362516006 451680378 815651816 934414968 350938193 631045503 543392415 759863743 619407368 784593931 859869111 973042047 874036191 960412783 852912968 942181943 852403534 858101574 266931253 585258390 557476065 917488404 775780468 785369761 232240456 608426805 841685668 860599087 358785132 449214188 54559477 422513609 403481253 736502519 533261365 718204568 751979413 780870896 114766856 290920461 720654971 845531105 716519157 881652794 504574946 576456001 704017691 893474728 835927487 876434486 507743505 569230545 868939819 880208251 888167838 936036679 297444656 838999124 902641139 934837289 215097960 340590227 552109783 590034353 366768727 492389333 312623249 417791887 870179361 965545379 22983047 739422834 589027909 938205347 23740083 109703043 117874196 421880321 890679297 975492647 330421799 728476440 947610910 989507253 659508268 815699986 281343204 563378868 360586412 586358156 815245778 951167424 689293291 781480572 5030201 60343057 154794335 332351225 441741665 931973446 402006418 484359532 428920022 549169175 352359959 971461307 190625364 418307986 667832909 792311482 905690311 950764079 325656515 722914781 459613185 789366930 288801675 775901850 359767682 658131141 841992695 898237476 177389871 207706753 345094476 933759321 278737346 766954882 960263630 999582187 855520920 875886314 87133632 700422356 610178518 664412866 712787749 882368597 471367130 491938146 280550611 582632980 905677008 995563789 908421144 984399031 868049290 932956626 67548107 903506419 662657897 804682660 474816049 943966272 87411411 824506411 180736069 741356132 181250825 200955245 870733522 887451858 247157475 838726588 998924800 999236699 664691104 964822290 313183178 904073727 358133815 458631238 798556783 943063185 359990156 426574218 578169013 667575373 861334531 909493879 625624620 895859566 783367528 987881243 214758052 956520793 13102612 716982580 126111849 829835143 316410464 925983004 340611972 392438260 952738032 953562683 548611662 831200769 38508244 435415680 812419591 876385942 364303941 733060199 697947796 711208170 935548252 987306437 744391216 937838973 861272385 927247584 92383301 388697923 859823019 926451928 514857819 864979549 174563723 293554220 527934201 683513330 904722661 921873746 749843084 828890773 872286391 945548670 661090283 849973849 693696737 838084363 551046356 767046428 657519918 695474151 201891528 309771526 430999590 909492073 905953028 983108854 200545981 755451845 956670972 990086001 917253068 964069131 700387939 958823696 984716390 998753351 918802839 960986707 242355981 387655589 717709254 778554247 917460344 944374786 701945185 946005186 622118202 676349085 251279925 274836488 233025549 399976453 135962178 146711609 320085923 865037607 708642662 822480325 484526763 939549928 325285108 410691717 546413764 731634432 927568715 947718367 763947784 948088904 216116774 783646185 508171225 660293312 977619802 988172360 199515749 768936567 993987678 997535260 503003200 862065308 223122726 962238193 409696929 900264873 560491849 621978216 656790805 894597228 316490598 811026821 71289476 638884650 14559800 257794551 162085565 632120668 134122208 984853259 834272508 954070305 136595929 889233314 991131287 998341725 964503326 967690843 435262164 723729219 236614296 538263271 909998436 922878835 393485693 699216391 541839446 830604131 551399151 923130185 239348556 998510924 871670387 883978946 878933461 961139728 771152855 859474968 927178244 984024983 620217253 816060738 548861821 921777681 713021240 837695027 961603289 965240325 938040824 944480241 934042245 952758126 897985292 911166883 577402279 615273582 316391542 739263030 502364457 570118105 750151850 793559793 857117127 995911416 821444702 871895891 307653868 874769623 533789903 964854096 192168855 683151365 975330756 987871377 325613302 490140379 525277071 879443255 672011340 702424733 233513087 514914814 894603625 913623752 271005608 848503282 951096903 978985795 458679235 835334605 520206785 618703190 667274185 854353049 827741471 958962556 540847176 948781600 101134270 347203941 91077782 782385490 863926051 921680615 129605737 468116629 670890295 920703078 884185405 884998389 597915683 904797681 348174006 366436572 806260169 924511882 106126542 756326306 97817129 136486860 655350865 890392656 74518068 595020174 91218335 684577549 663412801 874483805 491236648 664564455 699831647 750684502 377141271 546900428 277340118 430603530 707147921 766853749 622480265 900941297 582900410 942411021 69704500 606744442 17870009 231750335 256144285 773516523 759813603 933100629 275237707 411004454 450918057 986591707 556417411 933239079 966767751 970803334 195763392 666833181 437021030 519240590 481309044 929374788 380056327 783404004 275807366 542121803 207391714 562130746 477123540 923951476 36529292 179604858 856781074 877536721 495431797 714170685 970864129 977991331 750860534 905639818 453404274 700332344 197920616 773760474 704795461 770616702 55286467 151400898 288925996 981714083 519347678 743074085 645502840 859480674 94241862 861161171 747762030 865975646 948664401 986888114 119806937 921950660 672142064 817420454 251007866 680875653 429836222 992875742 128243777 574845375 493743001 809397710 263045177 705897736 423560547 829998324 759360750 829870103 493620604 784236915 993619813 997205200 607307672 620809368 459552850 900119407 554997482 895189797 455409617 616066488 429986451 894618659 709042917 735904144 439272384 854309427 170263900 950084050 956563874 991104882 972903235 974527540 622557284 835140290 905163212 957315256 374427872 486877956 639780742 756217505 618323265 758903087 302737558 491652775 493746299 999808737 199909235 377460230 916466642 943223749 350169707 635996312 446364128 554917552 690197859 940122868 763324678 791042541 502270852 860295723 959288658 972055946 289464445 854218753 693397599 759248536 65235772 115281520 479482474 607036688 291268715 820645119 674887075 999449655 287456709 940726597 270588236 650862148 560457976 803564756 286776342 722949327 749415236 852159736 100217926 851188431 52893041 869401269 677459162 983756715 353319426 897343815 181446185 655326651 142075003 190229405 894361506 960045640 178268667 734061691 198657832 379064229 463709051 903513154 57557127 987815828 407486593 926916097 74987938 414195685 721606205 790078376 777303878 866226591 272436228 741069910 127993737 480409747 461400385 491075485 296303013 375833750 65100324 290705400 401828990 706404679 790755625 943068423 759443070 965967288 178336317 231089799 90352908 213772424 845109871 860803033 464167501 842538283 173135044 305106538 625618759 776724037 169088457 930926911 77111457 295135122 361978317 941981227 483541648 489062739 464634108 751531833 117214425 258317747 125469055 284645596 907188467 989933722 296669012 789090071 898422227 991389287 734150971 895526231 880573774 976608271 904863861 954882734 261244481 402811695 873796203 906014030 817923917 958451575 546885612 894764037 617643695 934911746 70178939 439364000 952544593 957027774 446192255 928438589 938614922 994462649 676813779 938028858 260158111 932436010 605944048 816668487 548750356 777184721 98187308 579220370 840563785 984122275 706780639 809454001 791142408 795138891 422782029 704171391 948096321 949146258 330853493 450486583 935374082 982409189 277661113 760625296 495231622 581531238 365645561 799490022 964120641 995956096 674799878 707361717 182170546 328458274 425146167 724365443 907265479 995978302 486463720 582357569 905540791 934775625 125858462 435443048 138581550 887028900 324977168 455832950 636748985 671908939 561952835 782727202 896544367 911595418 317416657 754424088 529034875 932475608 692202580 715631999 574852072 741017816 800685263 845274624 277854115 571521925 16726270 93803076 888701300 937173533 994539693 997930489 317778617 778305295 782516991 998863635 179925994 203546399 113753344 804900744 654240005 771400483 471278895 481513602 430155896 446011521 285414263 297846721 869054937 892546815 342510998 663531997 722170478 998761164 822640224 906126566 119475906 375027286 506944787 826346454 77653138 531197267 200795182 492140738 309489467 423543517 393284879 857833825 470457108 570486845 102651679 610304251 840294249 995257090 917871789 919885110 320505426 362870142 731159063 961453826 278363820 382521493 444171794 747881560 493722154 711411222 904945364 922808583 343279170 883613024 996718339 999897029 299583925 508901043 469676959 735771472 740794068 924023757 389540884 630152751 406540328 518672875 492420037 985368059 209764031 443734036 578288585 837501908 327408629 784212320 893351273 936707689 757385285 869913956 21101285 722322874 232504374 394591877 754076128 852774197 509369443 660084934 174695742 605355349 552458611 599062155 675247563 704381167 912789758 940368838 496983658 633324059 918708907 982283766 724788367 951665778 658886144 815844711 118164972 405667366 331408836 934209997 415194819 728753159 438285356 572072541 595020236 788142347 665004818 703493851 898106410 953084028 800855182 963313673 515595147 893963199 603105279 662822521 268168867 352927213 287850656 802173143 307148667 869485769 32853148 141740334 113947331 434216002 173354783 298567592 981077098 999599320 766234765 996793218 723447857 968224507 761949611 773371334 742745182 824632463 984561283 997471333 175320978 212739441 680050705 762448933 37078094 139670486 191733405 812235875 384264945 496651962 870106602 973260387 862004064 967844662 553102893 959908627 78904596 607078898 877433588 950587333 642958460 940105017 561225858 889310573 515389845 723053108 274644649 746633737 737326710 954365966 727972485 754744079 336176389 944924589 476372016 730372251 713044683 928923780 198900653 362875779 249257552 649166717 534655817 767530132 232508292 305315509 175120350 631091409 147008409 878766997 985078242 996841489 890111518 991682876 113219722 520093943 596817707 989952044 256546200 618272774 184622383 896800893 824126568 857580036 429687436 594306039 185240066 778908378 671102128 828268452 950097382 977731369 235924771 933739514 136476836 896078135 355793479 676401998 218688416 742275386 717277122 882383712 130051216 449363733 114023729 411827301 733125202 804273546 301186674 900302512 277980770 923005781 42487900 403219275 830067868 832614465 360111442 867950406 362759847 667815153 389244275 877905971 97942572 421449810 263274791 971006868 511223729 842158550 301941140 909741695 130885987 239115271 912081111 966856410 854976684 905720703 8418934 713572745 14222587 273170967 579039500 638922289 33256991 611122892 542671915 778336147 557831065 708488746 508110497 658040970 970961212 978842909 438322618 978232832 878488644 906002275 762099907 873895358 282170503 826248060 573502636 874832299 315708160 708883938 269592300 637235169 91528729 170282588 116879635 714331603 135927695 413438762 625148822 961889226 836171043 900955224 227842718 787626270 834773345 914862240 209211753 988778022 420891156 968475722 651714492 744026881 681785608 822034828 792528263 877236699 3879116 994616120 680885102 819058397 987316063 990766950 450626499 731283405 145283395 936676907 854931821 989123565 626062091 627056908 905074889 975103095 118269058 643897775 226662537 664262681 971315618 995809393 894535211 975620578 246612982 541469273 555178031 991746544 950081454 951213441 665508000 782387585 938581352 952219288 919711755 962378837 860670385 921374638 472874174 591108583 269866046 422788622 909483103 986916920 997696916 998319901 118002247 396346334 461874825 533825354 12624743 724322175 902496041 944025581 214447368 585409229 625060200 641779442 572669438 880358521 452099464 529851363 693915567 708214784 945911272 960602300 473870208 515210778 240957748 274069645 20928982 491534686 830260261 923216544 503199243 592279445 817967641 943008511 434900922 841781719 659138357 850820682 287569766 703859549 502263958 548160348 759065565 931743314 460334953 577870067 174634174 602522611 110120582 283732550 470148543 857521196 426720403 803971624 804156968 845261847 306274276 993240742 837288560 974978399 274502569 604638271 252680290 370248635 220579890 642291906 692194596 971900840 981933868 984792644 528336749 734649394 976216707 988640279 442019593 623069153 546249028 930683867 302841992 612464059 626754272 660249795 50394253 736016211 704101792 757023173 915999922 984486266 691273887 761839999 40542103 691369710 80463149 817822336 523422761 706732286 30057130 415685257 940092466 985880037 942343773 951562996 603502085 907382358 87011645 131796458 38448249 543668334 194866854 526797951 922563376 980428849 832467441 940973893 242987929 682891633 936875941 974221804 325911632 930710599 229399551 506905237 328845567 769326708 856433349 886431959 613861200 933191524 343624417 495581695 563495873 684987865 548661738 864702910 429968245 880157734 663248431 954110301 202502629 481770329 742907239 895666182 750312323 771188840 806110378 884637265 301800702 513283831 732722346 753249491 672804722 897109157 422032380 623400463 871704593 924363565 731547682 801296016 819016577 980106415 931453699 995863861 794638654 863488612 6299326 843433069 475450377 799740887 649299259 789780189 738684465 959381655 729360717 969425521 415684753 459656999 250165245 442383146 348977183 928014846 250214549 678825282 95350288 129540302 760100666 766840514 830845109 950844152 288094099 450696516 451516788 657985534 482538798 912031581 614891620 992420949 94898422 251262968 286497617 331458676 739270942 853563990 787931923 932307345 760715572 859029139 906797830 918461231 767843453 885621522 888925134 986615499 994619445 997005920 278823644 623829289 361855361 443633859 650954101 670600486 738181682 996453217 77559053 453676348 963779278 966529144 954460596 993833565 213076230 933430333 994880061 995568799 622848250 780062029 795980829 951012368 228544555 770974443 771914800 985492686 873617451 902385649 338363663 803657446 604218536 757815328 897398032 932113361 934983787 963961815 890502725 934655497 441666625 926914369 363117741 604819625 927237595 949479161 247842737 747683659 440699113 490746948 744465587 791845617 138805971 197031251 941539856 957275204 283199956 335363730 666038785 776665028 246171653 459594605 549685112 553824228 840457261 850172904 650450736 683180537 290601786 881900019 833036361 846105264 767956790 802283030 608996085 615695204 585954613 930795725 159037428 861514316 183224685 654409454 227587902 872754685 798030695 956630317 825713763 831956387 99567766 154051849 310724636 420331560 674901642 970398482 682171944 838502801 976799355 983999814 51042205 990021649 952228339 961996241 546177529 658140526 285914389 920289783 596710120 975939438 80858604 850359487 616121316 753171628 730471908 983512547 443123274 840899057 732649604 759707798 562963857 860447331 158774208 909143006 395634862 455871580 685631600 903325502 228979302 381897381 921616332 970886698 723839697 769893700 520867774 563698701 959516876 971748982 492068453 741529321 170458714 461408538 742202074 864384449 437764857 468129019 574974594 910629662 788278226 950979653 488676122 560260798 330621076 375475144 443902745 519680413 350041844 976736675 564220583 851187258 168386391 911051022 650564925 986585092 109377695 131730031 732623813 994394821 354686662 547581521 299189565 777484720 722178105 888620994 988134840 994158426 743372882 849025969 61246610 410448572 498223137 702976733 966030916 975201940 838246806 992270648 670909669 844728377 20078045 389106551 868434661 885497844 501360948 574478271 475560683 843761402 918516789 997713619 194854348 271333794 592079587 803157453 762668005 941530412 370681132 661942042 687588837 966320362 429632272 529235699 477339672 836371961 629355009 952192448 745863337 904438720 16278166 694028520 74933350 933329293 498821472 702634014 132242065 636894889 774428487 877042291 954033612 982830327 200521702 876556635 434316731 442272065 498428328 826660195 7769671 765252903 624360905 868574221 833209886 914256132 84285340 799043492 954309661 970799239 255485584 515736689 673839916 804316635 233721029 668818264 984226052 994528435 767839029 975286411 3626136 751760939 990079331 996421383 791628635 906106303 382318652 385442735 717902340 785438504 821483657 832855654 846323425 994215700 127815860 376014667 876167205 930811176 290563106 954587376 483430811 542331175 177127884 895606481 992285598 993844458 457295855 465814803 290585258 665862871 83471585 127886039 287999960 850541699 916462163 923258507 455249808 615292286 344397927 868466460 250525760 657193226 909036658 943440498 448942178 800039918 393498526 826346320 182174179 944419627 923845062 954713741 92709886 659349693 532408215 932654027 953932116 968519367 75142658 761234952 981853685 987650684 940397096 984012460 569576020 593979092 897222029 932590140 171083811 287226318 269445206 392128802 11892068 904799713 124204939 577907461 339245355 859278754 765742826 903566030 606541995 692449426 409517641 693762054 722205712 973693981 975700710 985523547 243932057 688929340 284313574 498403664 324354046 730974786 844663851 969559059 659972990 693525546 601658721 606576653 388020694 485268327 888902982 953798280 320074773 752105395 799861894 852460871 69798026 754097374 915547968 919685577 730733049 962545025 118815145 555373962 442476363 768785014 787324991 885068650 916271087 955779810 382299874 561508793 716201373 750249200 602268792 717981223 46821856 644559741 896121937 957801010 808931313 812550549 814617859 992971337 122599811 787265639 893709607 999027310 679863980 861225508 497694201 977961489 786438351 867723791 534139655 628686968 711073544 813851329 776696922 882961570 265530945 799540710 723468200 991390444 339820525 715549889 496856963 653503847 246414120 324276150 728547050 894719138 554317767 607129638 971711274 992729221 907831690 914699848 936959000 964835794 333573622 924392053 760053930 769248562 195043679 620653883 603305038 748676408 927627254 957292139 535958874 717786615 562721999 575723061 650407750 922369453 562216991 734600578 885037405 896281417 233146035 354531637 529776112 616476782 399653960 908234086 144020347 357861123 790758917 979177759 711779259 849815853 881693757 884691363 672771342 810779673 55602962 425495056 628854275 890438095 576714892 727483928 993214070 999419940 497647440 650025920 244814922 463704058 17625509 674052183 427741912 748616533 11634642 835614935 865633880 932690700 987812610 996850945 202370035 421710356 176378799 906611951 661660513 956899060 212278707 467866079 276963392 667831175 80213348 186142866 610481472 756539336 824265409 826167921 827018127 934249303 940564065 957830362 201702241 777396566 608490419 627144371 442286741 701019288 639451374 721213344 426760933 718871500 120568955 530839100 418535432 427826751 426306080 722127847 588520082 825411658 738810649 922991565 375751115 862681130 936865081 977886255 73784556 551505387 131913945 750021327 655867303 681235561 500221408 547977918 941067302 983677141 77403876 310476326 817669653 936927415 557714003 642721081 670311177 912919623 426378027 723919049 26052185 194500502 304578806 613690111 903445085 934024746 952021455 988855552 106364570 667574709 857667168 922994538 981942937 999704778 61970786 129535855 124688352 157931844 758620899 925404311 434390722 986878449 199048355 862126938 591902895 829248139 723609 599502620 999395623 999540350 501227217 915420110 888063962 971478264 789877212 866172302 10734181 216070235 572574222 939238403 970343323 974794843 354863147 962744054 206047249 870162718 522142351 919450791 214909790 810931620 851969874 982527238 402624022 579068372 858018652 863089411 730352357 748759682 574895474 971970319 76732003 245023519 990309602 992163662 416549182 654385904 10106913 304254963 712276387 999801304 703438040 744803003 547656371 965072031 254834705 759473456 254766536 495651530 596864931 798260978 946272874 997762564 927111762 970239064 434976750 601100564 989735521 994375963 172039353 225534994 613084157 967024248 16726458 133976868 928782814 954325684 435657216 699856198 568150203 573346060 309645530 642392391 964123444 995533701 4746250 507674079 464347991 994124329 345350914 496749533 263308879 872908592 435907342 450131452 604778442 708548298 508464089 778346556 713244414 988143491 57810415 928807462 385685141 843939001 533952447 591926641 612740417 693019830 912005801 929586562 804962864 845121398 101350887 119841135 428657202 605247866 980231891 991539026 211935314 412961519 130142442 515317091 586597768 756452940 554731361 792750563 638969727 665832291 560906224 642601673 56981242 276238372 754368162 943258044 779244818 791866239 433439505 910937255 341466375 879787590 709297108 996000792 58909365 188009965 892074546 989208782 918266467 918924054 589093690 827592854 828395324 959530890 567745458 819177201 743522379 789319633 799338445 956861530 654896564 967698724 458943057 880916789 276294735 579750784 942861291 979942951 13184618 690947647 588041584 989767374 101382534 566262462 968656627 996296005 257106700 862542070 518529705 813217770 685760022 937258250 143276968 939224952 411799407 725092290 571321883 644930429 591656518 649497459 913974817 985830803 93840593 965712346 207431544 704237787 699235346 756643513 187018686 752146184 426227636 541280232 232458946 443961146 433904992 741542149 729144863 763925202 340514779 697791184 355865218 954878379 805246498 904356952 11388623 777468097 378033653 834264278 63082010 388408546 785427004 825779747 349859386 822717208 395868348 518377655 165165082 794187228 546117532 619385286 672689171 698872264 965189175 985028522 831192274 991724513 308102975 425244369 15321161 959076322 32430896 861825044 668761343 837628791 896870747 989403226 728544596 759870042 204238432 668405868 566216015 812644892 960105894 986680078 542073288 629910630 811458150 868967679 198181015 916529054 22275530 593330694 720810874 849768135 95998600 678384099 147328381 393770504 642933417 737818594 91992760 508200175 204220460 408880439 556355937 820211824 836861062 903755623 673390570 857204541 145692096 727888083 303390729 414310607 119930255 938097331 945096337 989489316 774072941 881037753 294963689 834384157 454228198 716369880 857274848 876540020 414132183 718983268 919169509 946511711 43973764 624165414 697524342 767944107 701687971 748068375 880023570 915517213 786941253 976572656 432334067 990459611 749499397 935287920 125550908 370802453 271028595 820577188 809332440 971100408 781260371 824837198 42570822 159405529 132737464 987411310 536760475 822964672 894821414 997946825 270689144 529717736 900205161 986248990 368125938 370074434 978797318 994352209 953402208 999333655 914610402 969405775 207190658 870846620 933292309 978073079 784403858 889851945 921161833 941905977 308507396 773008990 525350116 904879679 910120443 921925597 477806834 621369286 233505284 302626243 278085074 680383558 252451854 642383716 805732399 829667253 301158513 598233761 378255231 529893851 54348654 664567718 223493330 481951285 445089515 508350092 568207307 674001200 840706723 966487437 501084658 792160941 55658492 979552759 638945385 931356177 247141988 838170352 710099410 758109165 949463044 996080078 349929258 827385138 253410228 427241913 896747990 970480597 293525172 617076373 490309796 918268699 954748013 980690877 742771307 878092316 798747238 869885218 178262828 861472214 500330644 805862819 712961310 929843367 726044753 737756034 186692984 383676180 858966709 904953288 47867218 431807272 268540122 836260727 676646848 933415644 897342691 926286778 89487349 324698227 287900787 600392344 625247786 786511234 224558557 653639848 204825084 615291886 155051892 702312985 413313188 749407806 204004620 357949944 29648530 40090371 936674500 941281657 355832501 436299067 952564531 971309793 821190790 958569789 544841451 560840067 104194217 518540194 42770012 611593323 429865036 722177710 361684586 763804954 71280655 361599796 861905871 918384844 172182754 663098629 158434235 936210213 724742078 847464426 14817605 889280692 867301994 876942784 406030317 951519092 980445730 994493995 345375729 510574435 46173785 306520345 310647794 822716699 566052669 988490041 758845388 991361429 450968244 828287076 767456510 783483455 824927527 925985683 836803090 914525774 718157249 847077839 912703302 923854224 993497891 999103325 333240916 988002732 820966025 860872447 96708523 810219061 777769451 826181591 912482865 927290274 370999114 422832042 645193776 733817379 816257903 996028606 499552479 794635034 208966482 438069763 679043051 932273464 690941524 835818434 734923234 958391562 758715161 767424165 213506957 713071081 19169271 831037968 318578799 569900117 478685904 778581920 790838111 963587130 338029001 692900112 145619810 914356267 864996216 966467226 60170623 97005451 905922071 951803647 661017908 756385188 930009676 996465101 62626227 663583330 599002125 961140447 351947242 895880456 903544812 972252001 99387402 249590072 142893921 919303547 502879911 850595794 163502420 739783430 472436180 766325448 147914137 843558242 86313961 351668022 797192212 928780603 385236019 607707667 471754313 736114771 623272971 625602284 291121853 324994724 812325472 871410751 712442358 802070384 232278286 969618015 274729911 589141984 33195497 987160379 704883932 740144321 989723322 995079416 343104698 576986714 117005980 920173398 551635985 690581219 106149204 966557155 327610770 460331968 923296764 925907343 810115801 880074849 987619021 997516450 65654463 682070469 660867181 733595302 468366176 860573000 490820805 973955919 692843134 859500182 361654541 774877634 46434932 109041360 558190203 821628889 423858593 451384745 943962924 947617349 618832061 810422125 30515759 989118969 826565773 859829544 386976928 560373741 673540717 696352672 618557678 886302746 198124183 701139849 103436363 724883235 703092535 759284413 852345364 961162069 933023663 960252756 218638158 257496391 53052962 961423138 837763349 911247398 312478694 619014537 65822165 581234418 417917027 510256531 134464080 966178680 980096647 984251467 780262410 999407813 558859915 745652934 889321853 977958238 574392614 596206884 407260180 530430587 455481847 653567554 467162698 539986824 564604965 941077915 819437015 836602463 576009214 838894982 350863203 923693165 918705622 945141628 174133307 337240547 82980296 905212269 410352862 689626510 330508963 642731772 597067008 887548701 471256160 768794229 961249080 981314660 85014887 291639694 498658632 950263025 39879535 291050207 187561474 463390572 104256491 864803401 695284538 717413120 159932656 586142928 664001056 945063292 65537861 282519100 9680408 120856544 643644565 888488133 999895041 999912203 84987759 819111138 364897366 979976921 386005944 966658651 223906357 250720160 586256557 798467011 27128118 153948718 897865998 909654308 329510744 711789782 281458839 297625591 553177387 721222614 550833242 905835358 907797152 970888775 879101211 975236146 520649164 644789354 579222856 835830883 560970168 651218410 96439660 782889227 981812045 987489085 899615992 980996201 683515475 992634666 192297024 229332189 440935718 771805428 758962758 916492019 573650611 724039092 505024263 759907348 435466688 763795817 775155006 797099890 834635058 841506589 205402647 939516778 3937111 902813896 485022640 631393692 935095773 937809141 711226011 824084930 964430066 969599991 988847956 995956543 701040034 847211923 705156486 750851442 34829230 519098308 226647858 783062981 879455825 940990013 518894542 612175046 948300125 965854805 836108393 925981409 195404538 289727434 944675311 995623638 465376226 940460959 417225777 781230555 784384076 882324563 127150944 396274760 509659486 869337417 728831863 815770225 32354378 412703566 84365589 755079014 7611961 455011917 107034898 228358973 342756496 574390603 227869386 315485642 701818103 769992708 546014000 706590972 687856416 771449830 145870014 300791055 814093434 927777839 350780294 890681643 514507587 817851642 66457922 632766026 843124270 969124056 742905719 873761814 947458996 977383028 801060764 814887023 30132436 58398527 480195815 509421888 272981346 367178467 148024962 781830731 55171014 604823242 78883036 471760307 760664909 888645406 257962616 988645746 605886774 883615996 731487512 797186463 709441320 996627994 714996278 985799473 552785299 630009858 638519507 705267580 14856484 51413294 305299208 659473215 733186358 885637170 94740913 339731377 179410646 489245808 329591647 359460933 73041887 816457490 578525927 733808681 314823154 527351862 811637433 890052156 749755825 881584344 459418302 701913003 217799553 994197328 208901790 716691042 145156204 648125102 865192055 973789209 33974967 896416831 600388129 922547810 245360237 381873811 182419163 934701104 998739203 999274352 505458327 936393614 695135677 787889869 645458466 858727372 887444859 925291096 187311617 333887079 259758998 370747887 593258860 671829806 532495528 996039356 198056715 262715315 120824581 516333567 348277984 452182466 269938192 533549383 482176527 506863703 849290937 948130442 452829677 741649077 596087346 921452247 167171769 837065775 942150273 984958151 977852435 984424882 693286568 838390099 446382806 988673863 777660271 834368537 150398283 840751369 213025365 662270163 30753779 322331405 861152440 950325174 818223215 955172823 121260595 782344798 699031853 967435936 164421684 460417774 354449205 447431044 941969829 943352530 11836280 297487178 999916694 999970056 89321366 698412875 365387972 423773019 942180799 951178387 764280504 935063645 747085269 780494985 857283390 937421870 363637513 566975655 693555751 844711612 156247972 364268689 19398435 52271460 660143874 909726563 546035548 721842728 237054700 405149107 433341119 503981085 585806267 817664946 484883938 825225247 113540508 383167580 711991306 850205760 340988097 842628288 307527795 438900913 48954963 515791624 365115583 586917105 889337732 989582719 261319613 753738243 148606432 715855421 199955914 866965994 658685614 753601395 175508108 310596909 469754749 909812678 5661965 783095279 726504176 762367546 794312989 882130103 700120256 899279771 626193521 875362338 741024520 791262528 933140042 934791272 682049917 926905710 870688355 999847928 60279471 376659308 739677659 927154439 584745548 790438158 39305428 570926886 621361447 990717119 626655450 682836653 826140222 842286574 319259930 461857900 591401398 603933806 681588949 961897268 573967958 997187025 512629769 909924828 248653134 835496513 649959640 741912705 687449260 854173195 466426738 652745338 976456652 981410973 948574357 953259909 623377597 993530735 297618080 544029214 474455167 676906468 926095943 968640414 811609466 925573212 90663985 689037441 737638798 814865117 672958238 703901338 771563563 980312431 562467535 590514784 464684654 511623331 70861472 298395866 218603499 349008917 174140702 972964995 235970665 665626500 106024077 475559520 926377104 928095132 367464356 579825608 733594070 759631196 47231314 665737919 895730109 933376708 350648627 572810050 558794139 825069663 415849668 430898652 509440036 613982500 817432839 987604622 940223583 981009721 154547884 513506405 109927848 568690500 176173603 990250753 143085935 220774901 584249541 918572438 277632475 348358057 354753318 951957253 780397727 875716076 760884210 983008187 962941734 989470503 48268169 241523187 957736419 991254219 804532594 822670963 714710549 763343781 613752450 668548402 619205411 739400250 170139960 970573556 637895013 875033960 356222812 523192416 710100326 814433443 430582270 674983560 639408738 985117719 702007531 813675122 492591239 505767505 981244731 990770530 266111055 272024590 206184781 960120674 110174759 800991845 997891216 998903887 354927879 971057337 216019359 528234317 866652394 906746422 551484113 725752950 370744827 636410021 398015129 746295485 458709117 510148328 513101679 664381830 596525429 778352987 349223148 571759466 516066039 609982584 111423707 861038960 297033806 740248659 993952181 993999811 408054900 775342154 724779510 844312721 156950104 621643790 769039346 808257434 25810008 196895652 395661908 906668631 241226485 314761442 632588451 643827825 386992 616939797 766500702 981261822 136608171 690547187 241735699 323905588 300281038 934949747 978465727 991775432 415851319 923393823 432434957 787505716 658234169 873124944 462667860 501111926 83936494 708321332 918828853 942449395 693239278 755856296 581078837 791695495 779961511 913576470 584541053 914109334 957897272 958820071 339725911 975983618 495208215 713009050 190911071 866723530 236168799 805754819 401695012 750579309 582645043 975533347 386710036 430687973 567215206 584545422 99476876 676441109 789314107 903234629 969059959 973568413 63740689 519936238 929721193 969742603 770500569 772586708 648806557 996278743 737300636 912698906 693036595 898363575 291532821 830449991 848985650 874276079 786865006 934278168 514939474 962085765 206083601 395606441 29351081 717186871 588292109 652957260 619407414 638732034 254095328 288781372 179048403 786229475 57716457 546326527 367609069 847219600 840756945 961677349 132186839 708187230 443973301 555720103 760991425 936745370 379158754 554546118 566328857 682528204 551007955 593292475 959996718 985112561 102169364 290176487 860472347 956577881 641017994 753841262 984326130 992791581 612373555 882878140 220875907 887167740 21336997 131828266 638741286 988655506 797101910 891581018 922273386 982472030 254575791 628635382 456951203 965189531 850447805 947267992 944143190 968217041 99024061 174617442 714148870 928092594 732564933 904384290 401298656 462618739 531552576 809163915 736473986 838777572 545202623 986774038 196589121 651308141 940562417 991484433 904853986 979169065 375132867 764881344 710391429 823821910 349574849 801056240 759192916 885304551 575109625 687599758 110720186 549857723 571198764 842661782 967641980 979367315 495629201 692898172 457901937 699409320 897158576 903140989 131281216 172694702 580109365 670493707 684509480 934193373 895067103 998307488 212628948 490336573 691625409 732029368 100232161 442683964 602222929 781546010 722604597 744621783 209169741 875456321 711513411 778856069 291432904 682960391 193358483 737168253 33601179 355116573 458297631 985160055 40826948 858355987 796208653 984492010 624022849 694233903 699937147 707758874 378682558 494201650 292444138 781325540 572079331 898003508 177045327 854754630 565914093 662932979 46570020 189618609 658794990 834877171 516439945 921615505 898951595 976182802 114462878 931055666 662735341 739127925 84674580 390442265 201368236 215204760 665442470 705767590 233031801 530436692 552552322 972726698 38600379 930264223 808188413 818489939 368011359 828448292 613304243 899005413 982033800 989053179 452954551 911320550 524625175 829268503 995197411 999747788 677342167 949091976 573265124 648642270 427174997 461710301 948844295 975011823 778788611 975031625 171813045 696178996 895083850 941313570 618478380 644501901 500630584 607881956 177638370 553571830 870750094 942219778 3911666 766719498 980322824 982479106 128744850 865058198 146577560 369434041 858053709 996370859 102610924 707037116 152252061 862089502 281127876 350823582 787271693 954587085 289655841 767445984 654883465 944334851 518920727 594415465 972795018 977149613 418566317 482560496 459008380 530907267 476639184 484302009 943381841 980108725 581827528 818137642 622712589 760672085 801123203 855868928 198047250 452978983 42058436 902974027 402094327 671037574 246384747 692790019 262789679 834693324 587848842 823254371 529962729 941544731 782456491 821377315 519843505 690089082 630120619 878005807 13594039 750353349 607622959 936054435 720609152 987630339 161944489 240508633 240962960 697390500 947820019 977978255 461283589 564717155 484446922 887181451 66911998 104166454 226802088 566216920 206977028 355702176 366681894 628658899 930400963 980787486 688974666 999420685 472195942 611818324 138159170 508377808 579816159 627395473 517656857 657866533 703400374 774409547 670113772 756349551 694297089 842475903 506307909 987866623 136718971 922022970 738103074 825502730 409995418 883652280 112300225 687352051 562744302 745496377 693825909 941706046 310871046 423745976 187754165 447497188 762830323 978698285 804356906 983602377 516271616 776542526 739758669 907519622 889698041 982069532 715116728 799884044 217164618 521364495 618646416 717473308 433618749 681097306 132599884 765315853 19259530 850191220 357124460 742077418 692094809 801084504 484687002 614560371 956080537 977296328 879949215 910774077 862759269 955140759 777930610 869941892 346187641 953746405 156233221 595045113 411786800 443337926 346016398 763044021 423340879 890405721 653783665 858557759 362218662 643477067 359575881 620964700 88144081 916410649 962203484 974675813 606004369 819061722 965255248 983039638 12570927 932076078 603769847 984302122 794468048 985720040 281378094 282031988 597658362 887833482 902652499 913641112 141595251 911575045 786318273 965478637 256447054 384988720 219833919 551235500 45688419 329106136 397027728 414963215 240122119 665719723 355715706 446504893 437308490 599964462 975060045 978514452 529489778 617550742 926906816 958753372 811778403 821908838 984842528 999874901 493609858 810325786 14139209 530448039 500414477 831382694 414294370 622749023 649068986 956189327 810032541 977609374 950949448 988693095 627476667 659771884 358945963 804132373 787511454 834480510 605212864 677832826 502725784 643419564 437919711 563667201 668791853 719682914 560460818 766027179 560788475 944856119 203480505 991165061 58395391 593165725 424493989 539244340 489271607 556945998 3922108 837144959 375741639 561682674 657486158 968588076 962676441 968484554 757877119 797190031 948429032 957761512 507318836 983585658 829234545 924268780 612281687 907335462 276550019 815402487 944204227 994300752 639686267 880145749 977191226 981757008 508723374 960122997 927746413 976637623 311229045 430005538 167606252 567989863 382198420 699634128 858249419 888775234 708628673 857151909 278275993 927138750 131962208 141544081 531035582 780205862 681264694 824222156 220934692 256719923 656198676 930996890 519407261 845397856 463131373 869541946 60796096 910987643 659736619 684752946 116530574 311087309 7271880 101429568 804774658 961130478 569794086 883073183 377708646 902944577 928925935 950716005 506903657 911631962 644689791 679370596 614084181 949643924 688549115 853243055 283328668 988492272 625298438 814976092 643720756 957557538 813838714 885690175 58279606 532899790 401649272 812254658 125374676 908650194 881556031 961982593 819374527 919055373 732783219 763828117 157725307 982233288 887099040 982781122 198154588 625679713 489494024 695500101 694414460 761964053 185295826 858798364 145657170 548434564 948534952 954894603 269898979 608010272 890874200 971108429 343751086 378339665 618171426 808552150 881604986 984280121 373401892 541663323 828311689 869423434 831390270 993388667 437018777 554347589 743515867 772357664 913710308 968338210 666476700 723774762 591909433 877076647 321003888 744646936 118126635 820347981 143506218 322522504 654978646 717226436 982236744 994536828 150573776 634907192 879241591 943080815 349755066 420292299 62828562 988326308 845393433 850266466 709997834 813807090 884747996 920237688 884627847 995241439 518469556 875789745 68269927 910715218 38816724 632713189 921204332 939681006 877540521 935081440 910702793 997378012 584973145 935414912 892774707 945991561 825776165 970590447 161016101 984828556 563668773 979908278 212381525 517835683 968498192 980862441 866450614 927735326 605053488 684307487 145709466 759322120 535421399 811849710 528622483 749944837 531177097 850543013 333670336 711959676 569766678 959513168 986999767 998991017 878068617 880838356 895192698 922177548 962085880 966790395 758866603 917049200 363165741 765035386 421624461 782605023 120543070 343570042 247160426 961578932 904505086 969135199 253374436 290883111 786643919 907717203 462432155 610258965 551404072 713182472 517862899 578861681 692090477 875195123 923546957 962217491 219619147 607346590 66765706 699376733 862606214 937478514 290576610 509345994 830523230 895841972 781033917 985259863 623967744 928925936 695815950 983892871 313016331 873901284 328576839 978911399 600570675 945765071 193186687 531438083 841978817 894037123 395857823 594293115 910814312 921294569 170178060 978337884 537292710 852006224 35178203 157742423 171330783 556857207 960445195 962906107 704532129 929460714 825881330 892995124 525244047 971435587 313566829 453271454 416216647 789378332 442362982 948216574 461663490 543688344 104317496 539763627 780264330 882389682 436971405 478976991 874804821 882645077 103100598 379870489 40664516 894169798 219995954 860670594 349472238 553484520 912798602 930564625 661542768 729848709 576226573 612635179 726024751 960544229 554091385 565461170 622237730 827426085 940984940 987087824 106352319 496591600 428466933 766416832 357973819 796798682 840435879 893925202 497165550 639650634 207060786 918454937 479481733 716534803 803711137 937720220 589203503 654936761 256834089 804815953 643522648 920933910 233506719 889989590 795927772 856982833 137642441 351235499 731816210 911762248 264370980 335306928 982385139 998889248 709915899 764202076 29092442 288028363 686768142 877859804 600355476 833449864 221177594 478076758 287076138 613231825 953409647 993120208 972056260 988320466 913309170 977867430 128585464 849175948 178941538 397225899 397305586 659178479 412625546 917556342 610662556 873920988 62584732 582862623 591447840 629350648 365995938 967074595 935589126 942646233 152226703 763483191 283429992 705037042 845928159 950179166 278725041 624157880 726971049 873936343 167406608 774933505 534210146 794469858 76360834 623151004 185441374 858849949 592123765 934976495 462252492 644822821 900610135 945578607 736343525 981950829 166348273 704566209 41333708 359261290 319979149 709392391 696441886 705726613 825198982 918036242 155721821 581239597 838544044 909895804 630826505 978562748 508059882 848032667 951847233 977020775 265880892 786071395 760841485 928659173 863298182 977944078 439282008 907784913 612550575 898432073 392703379 773147358 84168590 552474465 272897029 549079341 363973290 755627524 308322370 799040598 380024281 408741113 496423297 658742719 791778560 827427135 543853945 674141240 341423222 413399371 677885230 780589087 762505712 963835371 683202583 716825128 228911551 416067397 847518691 963090680 142733141 603386040 260752875 301122712 297635537 347184382 832054069 908751773 744768184 899003076 265097016 836671283 993236909 999407893 820383846 887764099 417952488 815779382 530466648 635751069 477791012 647935827 89792992 789098842 184832709 692987493 104528353 793656040 480131598 930944951 756558350 795089324 837213673 898009676 407652245 807878698 216716284 596267933 681874050 716219304 25649565 823974768 112511305 943223807 426216501 611654798 36427651 669685102 202444749 465506648 278398975 724878198 797762590 881817919 773785489 785592795 884876065 961502907 814663208 839756763 512095667 739207796 297497814 759800567 955996569 974194596 945250018 993679435 313605972 989846550 652722308 799983690 434884795 572216100 541268876 676228099 833786864 966257756 74273590 948070369 50154691 189050735 116469513 281787338 736606745 816060137 626968827 912689209 884353461 970158974 869151072 996897534 347646252 602332701 883183894 975765961 266030894 427449004 550259204 811405905 349855294 666501569 319793997 573593397 81277461 936392778 494042091 727380405 250099040 606836836 756002773 784963369 871315383 926296361 731506893 880188723 273875821 932186019 292075291 850623323 810598733 848279019 620368341 758713763 111468585 590505246 333755133 790697310 89768926 860751284 73101691 954666542 880836448 958707953 996603167 999361802 834037317 917794464 140551582 296050993 670894031 860044547 506266801 901601684 95138888 935124059 212379823 960067639 631399617 790049111 405312030 452524972 626314338 736051504 628397165 701312503 503398127 724664203 262095428 968951757 534535822 747281101 2308669 246421985 70715709 324194388 206686341 308250253 413945516 579549726 5772668 597239992 796087824 965907706 898969599 953460657 978009309 980246565 192289101 595368919 904621210 906841408 959291422 963079584 865891602 953958836 1959004 11004593 153843675 724885174 954656377 983683755 650672397 735907703 506979344 567859590 559153900 870306865 107617231 225585133 209074397 871152030 491492254 718886865 745828565 917945968 905718550 978770153 76430860 486765740 602184972 917779279 936844568 984664213 845931183 965565532 232936970 965361675 722925682 875240901 728808030 729044290 669818268 810002959 324609775 325390021 208837311 420157097 349211669 384537536 697741112 915024106 589537007 848316314 684175679 800443253 940777278 981857322 810772072 853093686 270087352 954455157 452579859 919469303 134031491 530696936 776712208 929345366 976008703 979358669 525078571 913558837 973925464 991794091 522115591 959113310 906281545 930442418 70858422 214453583 744551486 757760906 731891021 754715648 669614180 735957926 411988886 539425060 847570086 898342841 885848802 935260193 50590068 343380036 447601088 504671341 59751538 971945091 885877314 972505709 917113261 924348881 362036067 978143666 490885893 532711137 768130425 920879162 205211726 544336180 424746705 586752789 204513107 918359757 826511075 921277791 172743006 642128308 930476311 985178275 904403393 952376989 473006862 638961345 70803924 408515912 163588147 600872902 150144772 443921022 978128839 992365380 302010163 944010627 476781321 963812476 47145996 399844675 316754890 693865421 405082455 998266973 335545148 359594164 213842686 869241515 490100141 636662831 30245821 316421877 634611718 890956651 658239521 763805138 406981988 861659135 97451150 738894794 849681879 994308002 26079508 610899396 184198760 263603773 397278192 715752366 908242527 914721332 788222151 989176406 330330935 418296437 50979682 361494871 400397517 821075988 2602931 129056669 948982541 963520452 20740174 277063737 196587478 904654921 388355315 853480014 392591523 853067622 561365298 673627327 721451390 928194032 812643761 890653886 21137311 133018392 323926176 361143295 573254450 734513529 228745231 874140850 11874327 641506963 558871873 975365428 155843183 911256565 504962589 662939517 222303461 980445283 305481271 672829783 838281955 980845647 990183967 998966005 655127451 920818768 769504106 937481541 488912190 643494526 99583904 719786828 683372481 934761264 326133926 626138481 19245395 908880053 616833346 878985600 245001438 363141139 748810063 917561661 339065398 538688053 854643383 977622885 354594793 444183682 888875710 950151987 442075880 544337638 716234396 970352894 996839465 999360654 574876135 999126246 649019634 885400488 869106737 882394709 90159680 672729097 550559940 841231465 614644734 771147309 437571025 853413443 710432207 953415572 43747136 833230245 802085094 996971450 534684450 722320589 16275996 984374810 756747039 964582547 478729457 690052821 894924444 906073641 539695457 800768167 14444200 143484348 431803075 461401818 677557659 870953386 408032361 702020083 699044351 949801838 155261075 626994999 865765278 994795496 785696169 979858740 940587395 965609716 951502231 959798281 64247441 493980521 719018139 952961093 766209636 842455928 516715850 794261055 788891192 798875863 486926761 524616679 427769031 975894459 10248411 467013858 749879594 995925405 239370469 348913748 591587257 959247759 315365841 335024817 572861022 618502670 972547832 991172573 947392945 993906125 926186989 962619203 159227836 424908722 413632445 772996563 211785043 943417385 500971884 909597533 156457303 929400672 486413683 531455078 203373700 946990089 221620949 596250517 292689910 906263698 925991070 968549347 208575801 413623899 110276004 816639902 428021924 918576812 155060936 377991846 694269255 948961796 841289388 877992620 209512837 941069026 218690697 846760731 263691197 277044546 174217400 662645103 984099347 993090882 441033088 445637736 483995765 662563551 496075191 521160201 758993560 937330919 575777611 625195636 788002715 855173961 162389412 445569560 503913297 944385338 760422083 897593330 275165800 316715811 539598631 833866447 845189796 973762636 677601914 949438040 760114119 934367567 163035707 719726684 390731643 541250809 644404203 878002806 308397486 960350469 551716958 991194547 468850100 812760175 822024815 985559575 640757528 955705684 980640079 985625293 360722430 863172755 455751086 460311314 4610193 587308542 27356789 51887578 274845169 603605744 684907506 841106997 939076253 996234228 40746876 709314143 649860312 870805705 255380391 381194734 345727192 958981139 435715760 806111539 882782632 949113799 590135687 750354299 380914651 381689940 844703829 976180215 242744919 980771760 89420079 320005095 408784027 465625043 441944203 846715367 304103813 571663170 723077746 995124572 745209909 847633069 896972428 914617338 919773983 951306145 810836964 920078254 204763003 944302766 681716900 931358306 590401445 732416404 249373651 452005282 982965350 992472921 384046860 591866902 284151565 453579658 477659901 829070165 867634941 916762652 581734803 868645319 600122838 895273921 350221810 549630631 794793883 894468662 980667957 984359594 782288352 870136118 176103277 265492449 188265479 974278723 248760152 943757949 605382469 944011551 290604987 341861851 668586669 707731992 537556651 877251859 85645498 822961480 790813166 857648488 806848799 962361872 991296364 999358326 412483036 671209667 366069797 967970515 571196709 999474013 758495354 798279883 57758864 409273687 148370445 219529166 396739671 645320868 366387287 641261816 741476615 762696916 968493015 985162177 544422826 874242819 991484357 995521980 469540853 630272280 383870963 596075430 662523948 854926578 930699648 958921459 924751702 936149274 192914115 341090257 892724118 893794575 248818786 770567867 645115972 910149627 123021900 313924560 848101596 934133971 256148984 418627248 451683075 857409137 281254662 518860379 523964050 884320020 722071856 879506176 464371083 616510700 547428708 696709528 264746165 886091732 366519106 843515364 380056317 500959502 909185364 948593183 430009026 524404236 474277315 666501118 981293227 998373423 32131130 660228855 348018036 351664057 433090810 754057649 783109949 964361155 294484694 361523494 216094069 476204922 505316863 962636591 959533623 962434154 558281387 984240062 463603097 943416111 14621647 396157839 403493081 628660924 665620099 698918297 99250457 233977305 562031050 984785273 541979958 840835704 37843140 549598114 95582804 537661998 263889610 974056149 932319851 964772931 221524308 553385560 947361889 963378810 728409538 913336328 380432186 977663302 629750675 998315109 554902630 956916793 397294767 868109437 208325202 291569474 981766277 985287772 333841968 834424033 401535823 819707873 746856649 967799768 40555308 713278613 521817723 976406189 911501722 983295776 990036312 992066150 165381740 639963458 583683883 911293948 540469357 958362017 750262115 783795286 643095242 977318054 693672703 968739813 267124991 614034804 217255478 744967517 831013438 909725994 13930705 892847856 485777761 886981879 778457571 901938405 217294004 787451252 484468972 691893161 170049824 620503484 739620314 746618417 670501598 767812083 289392967 589279885 570969051 874414978 268003215 538237208 440341484 890874647 971396215 984578097 326495204 446442144 47128654 280069983 937406730 968766830 949457354 999274864 51913063 717913757 468082427 991350017 844707435 963949031 197385025 772949792 41446588 896547729 997529911 998113120 465253485 993397938 602654719 755061530 891785119 902516189 171059409 670162567 416004171 760289794 991967926 998234563 491391834 586427509 54385666 220952005 288444254 715719575 760859208 801714481 663993421 669647714 527290623 584348299 498387713 835690749 524225859 590345930 52123956 958505708 650108993 871501435 169150652 385583895 647508223 908689593 539616369 586904304 433715167 858750947 29730174 680482634 789968180 982953225 445857645 980294202 954802527 959418815 364510444 691340544 615542733 761060797 731050485 999401869 84089017 540156913 93475093 724445603 712600415 890198253 77785987 893429182 94420452 309144652 10527676 304999696 12597263 847028624 488473236 854134058 231729082 558325811 658740236 702585973 182919355 646262740 592484484 679160455 313507393 505602803 550880774 593989764 537306041 865101466 213833082 236305633 672329097 847585021 315800239 452941405 4965573 552560941 24321068 565002472 543914363 800335778 913619103 994438209 86005706 551815071 598453298 848851745 610912156 885431506 659990689 832910059 933974402 942902824 283078438 481923241 52481737 247847689 599698656 923444484 532972723 682327192 531752293 927302127 557350169 774308047 589702129 757681596 710020629 769081673 826447456 924317635 612664743 646657050 215319562 393182051 481403430 482088551 645825763 925682757 266455231 499862201 770838306 859119543 333532595 851523498 808342897 886861325 467838211 500900634 219089834 570305019 368399882 760771774 304264179 630685908 690657178 693002154 108680742 848201187 235306190 915019687 216712544 506577383 294057342 547274144 84016856 854499073 104168772 517793478 535922140 646787031 362852256 524240380 181105103 860389325 820726400 934522717 896784055 944071775 805812788 851921914 601267690 986733031 259908366 713101447 754242562 974851959 521732522 800993239 294754915 969653847 376982520 652764775 257899307 617183608 961148829 983009267 75964052 900411781 212578854 505308798 236774593 327018878 894445033 953353784 812338418 888399205 238906651 923322303 697727727 977906611 79143270 92629671 877624532 912786784 752250317 826249127 889028116 922271942 92479157 892042277 238063399 388568049 916362338 979594023 360643262 416873007 643402466 824568846 940590954 969103214 59049223 898067170 451943551 530649837 728981669 838145570 373090135 678284137 286000459 735988335 289796013 618063478 773141876 781908382 599484632 850476846 875208227 913055867 605765186 919760767 508838284 853543528 901743798 994766877 863813611 937890993 783557596 895501147 462765274 787772597 223811778 561021540 872351538 878469183 785477131 917555931 231039060 664261798 605997320 646209173 459807669 884405906 973243979 974602963 900601083 960895076 209181812 512519138 796641207 886499575 980288333 988350112 931182788 980463468 127572923 858045955 444606892 998494931 279483569 740800851 138921749 443803743 682438629 827896589 883233538 924765433 187515531 432438002 36901632 833247711 821336772 934371770 554880933 991587668 153000784 716517373 767355827 866479750 553499296 589038046 433516250 670111584 343950141 517906919 932914367 991044136 401063532 633329015 325191442 693129875 435491634 538036163 581333231 875348577 166876060 644501790 413638198 795532933 739307957 852210607 522307658 703155625 409115970 617545927 447547414 773311884 855779608 921519385 938775295 939229280 332283517 879928626 73218428 966001290 253818241 689033213 561255113 918788511 259980381 511101555 432333152 747742676 630356439 987026972 811312759 876676658 86699885 141184465 985699182 994481888 993949994 996967695 220102456 844530142 846458750 981820411 928312428 989431932 708770269 903357063 861594612 959605008 297457056 693623049 908821488 930043161 784127938 903869065 517682920 971518572 94545469 595927993 929579348 946666972 991203327 994468116 90586792 803002035 732188775 969581771 648547167 891049202 974995945 978052456 245902746 868192588 181785900 517799139 108133576 999834731 745259382 934647106 147870388 426490861 127097238 162989020 511268581 749775423 534230252 619691335 548339162 672825627 574204841 907123913 87510976 512765408 426409711 485727162 866887949 900188503 548776403 641966760 261077055 761215705 321520699 844128798 787492976 829657666 60498270 992172842 930436905 950925761 683630489 823336719 34847374 169343164 606081483 626047974 761930469 875043628 335006077 626897889 750027705 875380530 220577596 689244748 866155666 930352491 724302046 824772903 388884165 919749841 428564147 564928141 125120909 490927031 544333270 599139169 207014952 628474004 498054573 951119862 260748668 757654848 227530593 667451198 904141768 925428240 293369120 762358015 867010965 892650588 45331064 774097261 677637099 721783203 357881480 513397807 361396631 854927480 492581976 954630761 946269296 967800997 255388333 584382744 916710694 935338347 152495553 210027950 503731240 729767806 955177842 984118156 321751215 460522381 953003258 993066322 557388002 579449281 220327336 476218845 766190042 962374241 857893724 993097823 729055202 943344340 855982764 912878955 302566842 758286550 239473891 552505718 362529134 844451824 908660417 916534853 539403147 806660728 306017425 792603760 39497382 104889848 324891296 638562529 834247892 913126184 392276841 578994405 229148635 509626389 464192149 679555134 906080304 949097773 972188241 973606378 696785723 965353783 159205912 429804335 860087282 963477800 42526641 250524296 186183461 265725574 191365506 201260426 463611151 722580405 838637261 890526208 668361663 828937370 796184521 842889795 936582899 974309301 802859077 929027968 773199862 967738426 260962868 800668455 558256718 721517426 375491826 914030953 317376515 820286612 417312178 610598111 823393424 852754478 483795073 983967029 433215485 895697405 265079822 572783084 572169700 968530352 71183647 766392966 349191953 662184134 143948004 805898887 449502023 554419448 836065023 957047266 498444615 980294168 629300094 891260030 259777476 485595599 711156633 975607374 39257739 757110892 279773755 770740881 127580013 467976668 812705233 821370625 994216523 997874912 626882273 865017254 975791433 994412594 996879990 998886357 558078206 872060711 209081295 272881273 858883952 966969433 832083527 956276424 330118526 622692984 482357176 782903986 168858754 728453130 474116760 959475505 711500192 727288999 639762478 950773811 544723134 663270369 310982906 673930609 975766450 979008848 543368818 717989297 90091338 109590548 774078697 968443944 490402089 722602862 734914705 896925240 6852291 786228379 181967876 618508669 231619813 433185169 159832667 225297000 408572314 871104135 864759806 913958651 7638389 590796034 449212977 946441248 666996087 698911024 807561394 835473164 573217386 691783667 41589296 149942073 996252995 997886296 370316128 575554351 693402240 984246619 100360676 157144129 824717930 911852935 120485296 244285627 20059383 274058123 298635767 678249147 553719450 843842494 564886965 895425009 347376506 833950781 259868343 300806219 862329392 966330979 672612521 676220567 606164239 615917432 180745344 196310009 687391130 762796123 446427460 612611870 613931174 763019061 551058025 842056486 64862050 767577180 755164144 962592590 119087423 470134643 723255122 733901429 406419569 470465704 290154489 786313257 671883806 976474880 321383221 559282053 278687323 849467277 134258730 267190203 8225893 744977799 63448530 262509596 506462609 630293043 936114624 974249384 672420377 878737638 903355998 974872587 646515760 694420529 887307863 920462428 314628988 875251363 239174671 603249177 891065559 935195045 811392691 863237687 358590909 531494165 702217490 880590206 980253238 990558346 871869539 872623571 364628046 710870020 953107865 963691023 415025727 490745645 473016028 540170016 320588801 753207124 344451183 720224239 903131890 992493148 398290840 925584675 479747230 656308623 611943271 880392058 265008333 885805945 241076881 565599453 121688334 347106188 636116498 655099077 894128181 981893167 254573195 403751101 477778314 987708369 960169660 982768804 923262818 978638249 317534898 932492801 171005423 245255056 518324895 930742746 39114401 548234487 568432872 838518444 465703646 609109874 168208254 654621213 30140461 62943296 127943674 583230320 476990543 656868685 490638633 627408487 759323214 910952698 934135122 986462927 895776869 902750180 874979658 889709780 902902327 959450850 767962134 880739640 281093421 968360013 94730230 756002016 335867772 568595145 897864847 967865948 150935427 427333566 213058884 311052076 165662786 230096069 552032422 948004478 763561287 914540392 981991446 998891100 15191382 947348164 856490748 961088382 677008396 872485155 187022441 211744248 460369361 872558147 580620155 675829014 303932828 750117309 577638729 774771268 199441403 935338093 913650200 966695232 42111255 891662470 165468160 321621201 771125343 990390040 10959970 415613395 328198030 552649988 132299313 653902173 987455738 995288035 957083183 981826132 518604821 576526859 460491217 540811039 414972620 630199948 911114377 914063106 641825496 799630102 299215724 379093737 561994997 636369648 156361256 567257781 413032689 992548128 25606701 112959366 299030932 787774802 892220827 961842519 917497370 985335982 130998844 146000654 812435539 940673081 20783740 91020734 187688658 326409719 978894835 995603256 8574796 835545081 881179115 909608083 747244127 939099531 420624907 515428391 435976830 875271655 887466645 912331888 561195946 565863701 457097158 882110170 267383947 728065939 370794142 826643972 568158005 943922573 258967436 313874736 209390443 391816798 865010676 898002810 589126084 680269735 889151121 934602308 851733290 959599833 225030346 785918940 2568908 617816285 298031145 700116481 964151911 981616322 274972216 641230132 61573419 804323435 291828232 727669715 861346615 936560040 803137347 808264054 83456733 946003896 16130647 64257422 763204396 866619277 969220592 989669204 346629276 395876652 767242621 877193893 299147142 492025638 585808414 786225438 314125279 379241003 232744228 886392282 872614951 898705030 553698582 792785897 267165526 509402436 748611339 889467571 333600622 765723862 267019577 866796717 288706872 585608798 940660744 943531345 626415000 663444433 971893 68522726 582681569 866049266 626274429 703564113 703824065 842887636 579939279 885900724 605998345 797101471 892978090 985264674 887285215 913281783 893768645 969783988 422025178 851714025 688860973 700442029 461055522 631063017 617166646 887227809 651450402 863592724 651690325 731843658 550748715 906547721 585983123 801261570 577775848 844106191 113614358 999320821 573623676 765280890 484158704 973084943 498397882 713618281 16831137 186031183 805734967 832444310 434184843 881026335 324509317 636106531 761878567 908064753 728225541 759429089 586237947 941374908 339019960 876241348 46799386 121772613 958168235 980290883 256152411 919128763 53168867 514600881 288489849 514692585 342663554 896894267 525556776 761366006 155810371 540503216 51364041 556455147 92868974 330340330 76721745 186022987 61969674 834022927 892844485 930712951 999734211 999984138 248843191 386383659 440221000 629093003 508937136 560703340 124811229 752803402 307137083 478809972 863378900 974689968 74445512 654599710 685017700 845998045 528347143 893060965 43051557 331856269 46252389 752787757 40668896 554454280 72624825 322265366 10728480 532116912 745514731 750749129 392103068 689293714 788989982 960868077 543829856 801268934 799530184 953100790 999692190 999963581 8408544 127546934 662764342 750887321 929542278 941990333 926330760 967688014 313137043 880938784 504983728 662364647 444367922 777472670 451036143 484156546 587893241 994966440 51402561 378565059 326936783 759599860 256490759 590184071 601590075 824831225 979635404 991674520 386704037 681730327 729841382 788697335 642625136 668506826 729662999 900788358 558721559 953767602 197586247 727736810 50979447 960819402 858252077 901127757 298990737 337981888 204913439 555738517 555165587 649032140 404538950 579283419 744619436 758455245 496697542 993319456 955127675 985468550 230513694 319006191 212988249 259695798 219289305 910756170 917834811 923428675 114812333 501444634 374999666 731269382 405363596 606219717 593261211 674197056 580146583 657276883 345360331 399330787 768769685 839994061 179397903 961822407 900096583 918731847 344082212 456136898 491231907 553053313 269859353 572249625 97678762 154782501 150898661 288626702 324805292 634371705 480389220 653265857 543776594 623838388 87593199 903972489 985355274 999034683 791349512 865612758 258144195 548027504 941307831 962041270 699106442 944454485 831997795 928529560 745266409 980834399 9274173 443023800 938744671 953998909 732475249 745285757 892275663 910349604 310774147 383117517 751054778 951161412 652774903 883852732 498081251 988344868 608930358 932924941 175495506 448666559 214434659 879037319 632053091 897325232 877017837 955275846 285888162 813324317 729481500 903921197 574625059 624095336 577026520 939920859 429954269 705065342 422754789 426213361 133850430 169684489 765294947 839567434 852847976 888356397 89621573 383033207 88169812 111435591 876634281 964670238 978981882 989030123 534409312 714233413 180170183 274382513 938096827 968953762 822841135 829161352 735928797 986177133 114723026 154687940 899037783 921868421 263727094 666162411 475049797 517606014 195543604 609325994 609184349 856913745 773606756 889901905 797210430 941993102 862142713 973138342 46110664 842457757 700849568 970564849 247957242 294810006 942755544 966714871 363428493 456748262 904966630 969731485 251122729 910331606 354908512 858452189 611620059 644811570 903728447 911749758 509974518 774560652 897579385 995511703 399516701 443031962 661479179 723813880 489906185 839791749 623159859 677958125 767341548 802985280 416382455 716945672 318368987 393898292 241192582 446316490 109083434 481703837 454545324 940087285 585119227 670162676 4603116 165818048 588126166 928687829 708832438 709055109 578648161 898331906 435823918 909327949 108188832 786630610 1001138 197823000 404067998 505402822 630397334 735629747 135068200 144736097 354330035 599780167 838241096 864174103 452701629 816849706 729557104 788543932 218177125 386157839 946465902 963184143 521415043 967533816 55876037 708295922 360165592 911173996 677754096 770705233 442988484 931737898 710063550 836649966 964530085 982654514 378481102 519181248 249986350 521189344 105068591 679155315 50445055 286743153 531069359 883958199 198870321 615565213 432191595 602645908 732246833 854850972 399477573 449516378 184644761 799049075 698972946 987082349 285704987 851241077 743409705 750219036 930433437 970681162 501385901 796264123 90623801 281798751 351516693 779250022 2330920 952009480 369846600 871102871 67567043 857037092 589240444 654488985 526763863 655119232 774901858 985997970 519874123 584523510 79381564 138604606 805173273 838173818 902698110 967503299 50761954 393308149 175856483 496808620 682441599 880396831 320518998 820424410 545341203 937866044 664273083 974864328 521146086 733057680 461987275 899932745 626970521 896438191 743197979 805559683 854756839 940269358 838988599 851801498 508778214 696386830 670123470 722420395 361033011 448189825 854213578 940276016 490138066 998953643 318572180 458102498 286250008 988318199 748818852 778449004 158778541 721177476 137988992 231578429 95424858 541970087 93866597 935730646 524570908 865404043 172819966 421308575 398673770 682955397 609904129 980461177 39199595 50797030 413006041 919809523 592241479 909576164 314387844 923617277 170371908 637397980 984910524 996554642 339504095 456019909 868248568 978128497 60622225 384857197 888570110 900888360 403107881 890447238 40706059 770521634 666470909 706307822 399248009 485882413 466646860 710051720 289568261 823058816 368412523 898869562 325855171 786777955 568047692 729267820 356155541 625077193 747735254 827703302 895284535 988342958 938094168 982382571 102175304 761552576 742203013 833123377 478005876 563254371 731096978 840737461 896621748 977716835 432793656 463173523 62001828 814831138 683565339 909533905 338401839 421066897 897227496 933762068 556613201 673723886 454690725 711817681 889721546 970244530 127499249 140644830 49004214 384059932 654646003 735274180 161287155 201115736 790399080 924071469 767474548 878075064 226964322 820408174 43181777 860466046 153730094 306594733 922317815 923011784 142702847 576175200 902226610 972322985 446971482 738799425 85823127 721373104 136240678 556547602 460298781 644621550 207248698 305318149 714904028 915603183 755403520 967153079 749666543 894701320 636506127 916600499 889518156 900569070 817042643 993187913 593149683 737963051 766761514 847011388 227195278 540324149 259318280 765676538 76650490 809498885 614449434 777956181 969192774 979092038 793511230 909282869 308518488 705235470 168479776 860502659 689134651 816206023 842133727 898009964 451094441 535748452 97600414 532268826 864067463 895150503 706023743 813805853 718518962 756245234 121037489 173809303 280178466 370502028 358957553 911749290 323696027 922182065 598711486 763801319 965865177 970758129 171472822 381725217 288215866 984958147 231130108 429977467 654005587 786282973 390537401 460096148 936641909 975473787 197294094 772789519 177345999 348029834 309269904 407324518 244777966 946112194 698886434 957727153 566650340 821852387 788863192 795269282 989403175 992417728 939386412 951524790 217905973 311040430 733543057 808974861 144580800 155147837 571976958 757072535 557768 711992667 503172535 520037645 240566608 811755723 674389547 725454856 317572457 378039601 508239891 783558831 223606661 597487297 293057923 469227854 58707316 309708510 396238676 833645381 939542751 940466794 903850314 999374181 522877216 849318678 696630412 870368913 679711917 977615417 135260501 785017924 240408411 515861030 907439165 963800302 441565059 683632361 3581777 356881419 928924084 943641319 898735822 996161468 586399015 913449148 390254636 424784065 29752242 918709127 882194116 976000867 551013715 685461095 219198773 342793473 994638178 995799731 903156951 980279442 337449240 921817230 562025880 584514850 401906151 745412685 177786705 967574104 412333955 934897993 409826511 410584722 855956875 902943931 101872272 785073241 715407968 870045843 98366585 593770910 806666779 983193537 605403159 712332149 585743870 948827271 836967569 879620304 19467891 748114538 215953269 470899170 236537972 911318036 442664151 920522486 777446581 975501001 86916592 263766085 102482107 713351642 110838435 272908782 785251402 802809120 363788680 936476023 783278654 792339303 857895968 925936822 242014722 715210211 702659497 813586965 755021653 802137771 106584605 706697338 946320812 965748307 694994912 893619127 764335532 781432300 417057494 446998595 932565788 997896574 786983516 935223127 26495385 388694219 800524751 877011236 100792637 866715592 132999922 264417994 878437338 962163436 979848091 999563469 706838767 730736775 547687198 977900998 136225768 874598085 688710980 898397893 83800746 420509207 175682263 684397521 497778902 506094019 2066437 323149277 433116445 483877980 951176129 997298915 102855489 925718523 149028892 879964749 606350551 816634376 234983258 868226466 489637782 504596667 540880081 631971161 660493813 801930001 208827615 728576710 75762926 813478118 998184925 998347043 981109928 984472548 928635154 997100119 390113804 979575406 716127367 839103023 934120338 962469917 488446422 593588051 181102798 594925659 878947005 988621006 667818566 723099656 293537880 317612829 504646437 681172470 500488533 948083069 7884422 758146552 404028151 777351249 844494414 902304411 456024693 740985838 756539252 958786381 999606868 999904447 143298903 658531880 252700839 522152250 734627058 749324483 825100914 933017704 170667021 314740414 234113765 657538111 26808664 755179523 462491821 946601203 121787940 394683170 966926279 994377274 918703825 988475253 668256242 674706724 636547933 836587065 850189019 865134805 659998496 776164400 615589664 780272177 806009159 869288905 846602343 900163670 41736723 795535795 856892961 952565073 31864714 41600918 918592286 918939691 888816979 892679646 837906874 965906618 114637471 479518866 389339254 478553591 269781016 669154736 553768098 810738276 574977479 576817478 677518924 760287273 534072953 936130863 369703150 944865441 731906238 847227078 118282962 402872806 382471679 923400317 820805881 895476171 400049066 561290611 401614429 578681219 336202939 579644517 902995314 956147936 181904432 225806296 325215467 500612364 842900555 866961018 628057101 965300087 660856047 732627569 984766231 999198444 272775219 667734026 236062535 749586909 903785879 967226214 202515457 472283023 145327033 745464602 409280522 588796696 685433657 937259464 419824264 872071665 831240835 927962236 816169100 962491052 514504790 998066635 704521436 862870549 833179936 989619794 912118786 952551868 229202744 659203386 135988540 275650243 652146004 742427461 193858207 889761507 914666003 975155495 965732962 973672076 957057847 985389599 789048924 898623396 161096549 889305470 754004410 794580445 382300959 881923162 620870417 631704542 618159909 711481510 662737884 747147584 277850115 760456391 148755983 767774679 275641103 757442929 503045229 974027559 526432866 607757570 881035924 950862791 638041048 819117265 86144900 545104570 473656590 532054676 117869504 459248396 747338478 881209110 622731051 637501157 382600022 803982445 965345308 965756293 187250852 289945433 448208403 523327996 10268905 938907957 766885908 918186126 699452269 716626564 898957052 946543687 999831753 999884030 822540975 987750504 353528433 687805251 391481046 850324389 37875679 517068150 142291741 390577182 982508679 987393645 383054251 438752787 173760772 589163229 364715030 971956549 44335083 259421856 271216852 617292000 635967442 891871814 112198383 981571763 382096561 413775479 674211435 868922969 383026041 476221990 622811427 853024116 563376686 840229748 143655738 653002669 45908815 928967545 935830463 973900381 288797108 936521398 824743897 912727188 932828205 949570195 293551393 994933283 361373983 692883896 215327554 649065472 865762767 978905100 620447746 868388283 804184328 999301959 265086780 801807060 487095500 540130372 103349959 613102080 684880744 728583805 720839614 928983038 342104050 843876224 873057998 918733495 852814457 937329580 888803992 952636719 773252099 904204772 383041034 534043316 699424729 962533870 615270811 753385417 894018232 972701553 950746059 985321831 455301210 990264209 228127073 403103092 129779694 553271907 444036088 865798306 874306517 911612287 44584251 464234820 374616463 477415594 148694542 721757330 567952524 777235493 289035628 870185162 847892757 978609017 734313082 898064836 886799465 943116322 185737917 656388941 68072053 547295984 408416897 593147071 26554073 982208924 30808473 782097994 557637928 935387894 310801525 961098166 731020928 867709959 54892289 710035617 649233291 836848917 290939643 421145762 970406444 994286856 523099643 613660294 457682011 954080052 714583241 800607548 818933812 952040136 164355430 292341249 367939265 900727784 349657325 756287898 102456603 362054167 273306895 708973138 989562401 999257049 42774281 145159854 459042363 962655366 648074927 796060257 771677391 896254358 175647545 371834450 792398918 881853276 244881836 905165734 368151563 482647549 213028855 920593306 872264564 883077500 382610787 459447951 280129148 467713594 856743100 900396456 390763608 479189317 832876420 864072464 788450953 875545908 5608946 918349348 54303791 902917477 826841057 963054438 336212379 453521701 888662230 889253392 163486790 796219555 767079859 936115813 72894386 638965267 417833748 635002124 373157747 746365676 274161146 949373926 679808089 920491937 478797766 900808573 722142423 730575588 150451586 207187971 775802177 863594440 185166987 194022798 213073783 221721073 208855193 547616214 993009834 998656825 981678244 998934265 416955136 848511338 759582042 814892317 106314840 143883367 283726767 440666119 266034383 816325377 755520277 946823999 239347809 865962720 740693607 816907102 851712116 994732759 491045206 906909926 408542620 408801826 30834376 781556168 751741303 764948684 265661925 581818992 8799798 156757683 11715707 870423961 178208681 375201439 734870858 922314411 254097989 292476273 217297332 487575343 699361455 711970307 580954507 667685231 902538861 933747929 830923909 844273244 534672169 652466170 211125962 852761816 693640216 977619972 252150132 353852263 533479933 778464505 531192578 921549907 112531305 560443128 76105079 277049866 449544272 584196802 275623960 833962402 402573765 810530835 767655494 807068809 949302710 968848700 681129571 724012183 679610556 789160041 539033692 623042289 498972863 986465424 287569527 467140513 496894615 928811011 397898470 898049403 191274737 295773252 115616029 479114464 88800753 241720413 515426662 663824762 108133807 143620453 192199784 981998149 778986161 999535403 444548394 858007113 817474793 950607282 643367520 651987312 777906544 961717460 497605114 801676866 670426491 939522592 199851696 723370310 187166558 852287475 689770935 765679756 33920897 276418781 416771006 953071363 374303080 579779484 797910354 867502094 664086676 967150347 531542125 958389311 574378750 905074688 554645446 946561120 917707593 976180116 205360630 893717953 323787783 450710798 351524867 719438593 432811521 913172928 652187686 702986202 504372319 559752033 712302824 728563683 64202360 306943940 495068572 873300763 800984906 928502974 135997672 490452765 418105954 537088463 685033083 737547624 938153419 940161067 619810834 977074025 619144655 743663484 880721108 915551003 3322541 596149276 750836984 879501030 549428180 942153382 974837326 976578497 250388829 696726260 220540035 882386700 411111989 969376299 9211580 941489107 351674634 620640909 641374104 821421736 570507212 688687526 886136314 984921675 701099167 761343635 963421618 986226983 567917613 621614582 360666006 774357877 313780769 877314130 59188792 366183139 47265848 766961828 688533955 857294156 571207459 788355659 911880124 965937796 393877051 719989053 632896178 635487118 919756445 963804507 488150291 492634027 539418967 842668900 915602651 979683354 268575145 911284528 14967458 383065061 229108780 748640241 672323827 734395987 240393562 343726396 677707214 902107864 414108328 825123270 145747353 830205173 807974808 921928230 181254919 815354607 968213450 978899347 311310002 636112267 920069760 949909616 510111605 757879110 153507559 964542329 407643600 721949842 718838443 920022208 535988137 561473366 335111696 572805783 905184304 929003122 722158196 743629897 262236756 270000311 626119869 899340523 967025063 981871460 828163353 855732002 245901705 829059118 909333724 928565081 375340354 391333341 266911332 414281989 920979666 938470230 326194824 535134526 281995554 558536166 405433203 587415856 278893940 495869963 385859739 870949417 827023739 850417792 443766697 491532383 970851033 991428016 855815393 857039719 67039151 756679060 428241303 908027066 867680681 868983357 422385081 877900423 834503757 996508299 513953115 952756976 386792691 528649281 82018436 502528313 151183022 392563371 147301403 508436894 878104945 904648287 657013760 982277656 879243021 980788055 164538602 540971978 340892694 515272168 943739064 998257636 438611808 507669731 407779930 737521252 487433724 657837168 791402942 904188997 249819868 979189186 369871739 439591005 672512670 973853753 520402463 668174609 920269308 943192965 729773863 863525003 481799404 514455270 960272889 961426518 491422480 908553002 260792765 698923377 12224978 480947402 232224 897184040 311069314 554625949 925460726 948086538 263677224 995346974 923646210 983608946 736785529 839598962 372533203 928000976 279113303 462294807 758154213 939661499 899896549 906381154 128539355 679265157 662995796 921039418 152388431 551123733 442285700 469852835 29700461 31956297 283906755 557672897 729681348 889808781 800047969 918775387 433452435 714874306 931132520 995854636 657665765 921902902 932883 52157160 283120953 612126327 142882403 787689014 80697523 668166024 387705154 867124286 177099807 451458626 463483457 714721451 882957500 918563584 958307148 967992645 69159731 526558786 209717206 931066994 657972192 862086339 213789833 992092262 561491203 904992780 23972689 825996986 567809572 683193240 484795141 837986190 510898024 644853155 958034420 971682112 121526159 674209620 129177517 789620243 61318024 671736065 382630264 386566663 997979509 999258657 360696767 392296110 758928476 794182553 418658166 962622546 341711352 402602483 362314388 453861246 439819505 459577542 719107668 907455345 197704425 601706238 569473218 845012525 743663966 817905958 511858678 970314137 647111502 863191122 758310108 766657975 650930057 838839366 592356530 882778953 943990770 951925342 126422913 565700542 882778370 943493200 71621336 754772425 153835199 999283143 498406859 702606952 55576721 896832044 154000687 515378897 536154844 721541860 791906653 868516960 387246729 705888636 267561777 757500542 153531579 171836882 833186252 879985184 606648567 723828287 904541763 989564436 340058348 546083414 900192845 942609737 833108618 911722500 679181448 722398179 170720500 418592403 224260048 773567186 629598808 986201862 23602969 769265078 184802567 462321501 970394069 977316782 71069196 534522841 833005386 860142893 784542414 889962745 291121875 365668468 54186069 579031966 565439708 989348554 111530575 380965808 54032136 806523428 78683707 555924823 973385620 981904368 353224206 883814369 153764788 897831584 956066292 968187469 785684726 898442634 985530192 990464935 561957536 914393122 228431420 305401503 388817870 745519493 387570155 947538628 527131096 673638870 673972141 979267287 418900559 697201330 179319533 439710272 136267256 551535964 857374600 886090845 134944948 863663396 485635212 502597727 713292841 988527597 778294908 832126802 260819028 297031048 285712473 609310497 842116271 864389072 227557680 493405020 240857818 788945133 446590325 460102948 52954950 461702019 627369445 926325262 483347625 517503932 396516414 860679898 900133724 915636187 563638398 913213198 36912721 855758442 831141140 835119054 367288955 630461867 600971970 635368596 172300322 845707398 788539968 811712289 101928568 985210797 406391379 945373040 540730193 815774531 710439056 754337135 218321967 888718232 508948584 982894117 164815144 534116090 356264969 928150576 861437271 891918387 71652386 688380671 165427917 468050316 352064707 496488649 225420459 905445504 166932000 415046248 442025759 815011363 615571697 861340341 595572779 881016003 147938138 824333086 461014103 567276081 38184476 954925335 354889688 725570289 861769894 970664780 380748378 945039673 69175145 175489923 587963391 765782831 450076145 937929618 68606380 453745805 814117277 892377728 887179721 926716282 162800685 800901907 448749963 911024552 83886800 955018326 772126290 991753733 921562509 948160597 994364164 998669206 834172791 942411178 475734469 533019149 780131399 887766695 667289924 827575476 358228798 981445635 397550149 828001556 718840097 733459107 557051256 796680839 551428861 772298617 491280966 816045599 226773128 269685490 215907947 902480316 836253580 912321999 163698906 300138599 357773242 918958611 578073679 636445554 93916637 736186285 787817100 869716589 422128803 592181047 287204857 919274730 447712070 759736646 937944851 943872359 241674583 355855380 103064567 501286196 92290145 609587672 780169421 914384354 360719217 796804733 497591087 798038818 564022022 731161090 653971559 879186126 36039800 299593641 458974324 605074786 170573221 409472127 392924833 669984555 466758950 711844608 810983911 831177908 472859741 881692495 38871817 108394067 731149641 917582231 900097267 918073428 297642883 548619815 844876443 992218555 386061631 865899291 731442820 954566488 76098130 146404757 63543667 85624474 264746401 327267936 318649435 454954482 389960997 573383336 983270070 986080957 978217610 992425811 375951767 735141322 667851306 743176321 342315187 713564818 535335975 577707338 25274592 775584151 901967394 911785117 107370519 404027291 239446457 885925736 894975295 988021172 353214700 591688816 605773492 941664832 929137552 936651078 259754038 693907784 913185933 961805518 928093205 986849822 433046279 845619911 764611302 787100567 423792841 499165218 174448928 570675222 414068163 951859100 685608846 837895025 663633492 789484311 985176485 987850301 343804230 451416012 984874764 996146270 414460805 781145145 665482703 785771817 459585265 939589458 761825378 835951673 871937969 992855567 148900077 704073474 125289110 165601991 735727633 980510009 771400581 852338146 504081105 852012380 426669928 543752169 992939903 994707471 55544423 852809131 181729738 724360842 248658915 865457600 484075653 667394400 492843062 647966303 693290806 937093034 423192891 825943017 534115161 771761387 294530004 920800812 213506692 791973942 625819485 895777347 875922142 912855712 442171971 674683611 836519259 929615816 761389482 920917939 592039530 868886864 781433208 965327963 961021580 973785003 260385614 474154036 457747886 754100723 207587389 235656456 270698291 727597743 906066136 946580983 176095549 378371403 617320885 958260148 894320462 948168559 408599699 734854031 600390973 996613427 637452054 999912377 817077225 830243530 375338904 431647110 579523399 999371502 535523199 951331942 236129911 415647106 653822737 857941849 501349832 751435314 921445717 939330595 209902539 212546722 315635732 540968330 138405930 557619540 621475843 880623353 880245314 932784493 116422564 571659747 402346994 771896780 843644074 891362509 228267826 674224595 969480775 982431035 315081064 928875933 138571095 834678190 729795706 754274242 382218977 432516458 309219526 453754865 710404485 982500753 711228237 715405809 494104630 904402745 313481988 674594046 207023275 259437165 973964289 977633196 508769646 958877056 162783307 246033162 884866029 951562767 895695238 997749657 517274288 530233406 960452075 973311274 633225345 744708382 400319291 618226153 453805614 917746505 216277933 948919505 826341757 835959464 162082254 875267515 423650062 492138171 506922619 696639852 870216825 999607611 387029988 666483448 603277491 721311111 328884494 658259259 53339273 109453169 281520294 505788275 507937677 702480768 592974500 765363400 633768932 663005792 796064112 823928709 210578003 964275277 468439921 682027767 701336850 765399039 179207122 745291339 27204440 758662090 558718125 808932458 912796190 953319469 450710174 835513987 7738194 170116304 362803601 540209076 261909882 512491074 926766975 950720137 385008189 706820704 406629033 610920959 506459568 831200423 958399707 966833435 339073269 585715330 394876697 480844246 233235551 295743898 183376855 774482744 853886151 901851388 992119026 998831991 685290283 828287611 748130401 884358546 725868611 956454504 215959947 294481437 599521952 810306611 440700740 722339458 762108741 867272955 925382606 971438035 506928206 614020652 411564178 605129681 594406427 662100084 875769960 906406964 417784397 796364010 715411528 820806327 753410692 755941426 808559337 834248217 730726071 889955851 323664049 601721881 931320252 939583035 108351319 779184183 791546241 798373251 752193693 779783712 994449331 996025967 225118080 634116548 783175759 804828316 269344508 360124402 744216353 771070567 132802320 176948996 455934960 520498150 134411188 149005835 103982758 774694984 122431971 350431925 86153855 886738080 442081974 582924225 864198980 990699527 309997723 583329987 728503993 787620450 147345592 885069818 72480522 275221568 634808761 925055023 694000319 998583166 251695669 963136062 889309791 942737799 464960824 732583080 717799497 935618066 976300306 983287618 395351747 937281568 609939188 922755415 824421409 936095814 2133233 717806639 653509833 778248101 574508908 670152826 691582160 830699596 60916920 109011790 321137434 989227042 208038283 244463796 597871461 975753500 915314585 924799569 813736414 959989950 737764144 864192164 397901273 771372222 122821247 975909512 288044762 378472633 127298105 327505537 929546494 949723555 653375451 932138093 474416707 540452265 393510944 750991294 281928391 304954489 332611879 373224599 126813322 189685502 687529515 764541896 98659574 370048139 382725411 762828705 440253981 597153675 128688072 629973893 369399093 402173989 987259254 995415073 574612681 827068057 854858622 882584595 680457381 843005932 628436125 663957280 239348982 340007049 256230908 421913467 398436207 776988025 337079633 822919602 911984985 984858855 263360921 731358431 395823181 911942682 697358069 787667850 268996825 780898435 528459730 934258144 502081216 652281007 144828337 228358325 992216892 997088486 69890365 718055647 835384562 936692084 384451426 764182515 961519337 962692811 676263134 713642587 654006378 967232094 651772629 672015439 769483482 949020656 423752084 591770407 267309919 702051356 201833023 245521833 832804633 973408627 893411402 968705171 893261030 926464849 469391173 624323152 323095524 936199485 417600745 427571766 590431442 668817520 71229903 725125131 740978959 904927856 26817909 272721809 63662966 427279549 166501480 595425936 466439367 522224967 207223647 634832377 751516290 991132548 276205321 399170724 791054212 881285956 224333732 268424169 90781166 941222734 983013579 996023359 402825013 689979499 317334607 907135774 121442045 964686239 934967499 995499609 850703888 958864747 21471303 409913246 296570582 629775897 62781573 626033030 921672551 944616838 382407443 978407918 739941619 769570262 786267730 907092811 953768786 965259421 126862682 865183743 938909029 970183087 484260895 977922538 205314014 818327153 79095383 862445414 325287374 704289794 424023428 746684057 637728032 739844334 803172565 850328754 441083128 445158284 251627056 526154623 233294955 318999260 606437091 893668775 819296584 866319072 83764761 643460971 997372020 999466879 209565442 714408315 596229006 674385185 593374110 960781911 712909963 807354794 553195285 690351879 786455468 879214083 719319717 934494345 507364077 981815029 557999486 975566553 194439487 783344257 222168524 252833589 82138065 216936686 812201879 976662530 116161180 890441222 442069053 708028411 453939707 666194944 213486648 951156159 865988842 974715677 917600020 924964254 422716727 446496327 266882401 536329766 496882093 673574639 119721996 659815997 678789128 951932279 860102953 908571111 763383274 784540278 781274167 927038820 532432115 709015164 889831344 993873528 983419545 988901226 913397542 945717882 697639490 739401127 914481431 965783693 649429818 824445538 788630309 861680695 837523031 850237242 89892011 891575057 248665483 984615845 794840418 932576524 71457987 147488132 734815143 971835279 701873657 821863136 204500115 554148551 745502378 778847501 493486248 565291751 13034145 84607339 678567375 834446487 467715307 559996893 741071344 792173470 18351889 47321217 695226227 802801252 413980717 427597725 67642095 523863011 750046340 879799191 758476306 806999156 297505025 407511067 521330788 749047698 815749743 838835281 925556073 960324362 83954254 185755801 595828876 714520025 829804940 890961885 305061404 822051386 473153411 862119108 923460839 971039457 745891680 943448945 363211832 855730905 751174854 995211501 341835522 486510849 171370308 855638671 904626331 961516013 10890799 643843915 206645787 858876091 705074717 854194666 680228600 749077977 580380799 592314661 216825554 856853643 420409829 800811110 421863469 984159416 746773362 888020588 206011488 738009044 79158523 989489765 484395861 700965793 872952637 884269653 470595688 683092377 300858430 302824344 15216753 912099076 11530144 896381773 523329120 890363152 864232623 969866639 94105434 416467201 517167099 983644241 796864217 992103022 349770924 520460681 494254760 767134391 607388090 784298845 818872310 873523649 790477727 795802495 470738808 569315000 82140288 808434554 374114641 589242152 871588187 916061719 855149170 898079858 367395922 560091351 7710480 929166444 856586510 902685417 407574781 788024396 482684576 844791058 269580066 319593250 950668979 983488797 631699831 908079629 848927048 852521049 659832747 822359848 523699578 637980768 168436391 370787362 538860900 867412315 176227808 764596341 425059679 971220375 24081173 135532990 662424754 664550129 217206906 297734591 968678226 987027495 744130967 781070981 513172469 968305487 376249781 790883062 838454731 987102964 559438627 868254272 539080207 649696218 986630869 996292107 489705285 916213040 663165636 835366654 808200485 880856182 455489771 978840029 876403064 952619811 147458197 540443441 868106372 883657306 547381927 840878686 715210533 899332472 161958555 756451028 725003984 953344804 76756652 488503254 278214820 714278193 1312668 584551340 554449516 646512414 565420128 824433822 751649240 948304025 921409970 940312834 932991048 990237618 159087648 743870567 849745032 915011200 244753593 823181168 863816135 948393676 834331379 999501904 605358138 626489086 238411626 889322277 834486665 984628340 376978659 728027465 674790582 998452990 588767058 742607234 453056054 570193193 953161626 979897634 869017732 999583266 98100512 280471705 64555010 490906106 460884502 997558568 483971396 785304730 422146072 844999958 255044842 754522560 166754283 615104102 239365845 259335220 47528760 647702581 788386432 997085787 615394926 849436100 92527618 308181435 142848125 918707376 332353006 812024526 280864940 665065282 121385510 213204761 412100841 705398669 175983940 194274862 779684613 779956723 995630572 999687390 335270950 481135079 961964835 987186849 817444364 967182753 594073837 962468081 779912389 895092510 567618743 689292331 357527325 707812546 561045450 854609595 314899897 582273980 163407045 697357216 337342341 664247054 690589819 757616655 504171877 553479703 324019276 336019722 702935095 791624788 264617060 567341839 45584622 889709827 754314540 957686099 56405434 292741124 745567364 912921565 253855578 950316082 586131527 872187137 101722236 845995393 175779159 498516101 939733538 975493080 510264376 786499267 829283507 906530985 474235454 873152455 339697359 503843093 501079749 620616739 68908801 385603850 627474464 922055878 788584724 891695989 87989796 412933560 327577306 466766996 258534853 453797960 483880297 630184860 570739105 812283357 371923 579557300 422033833 658686182 441087870 751404537 846930493 927142391 794030063 964911634 298535842 349997604 624084482 861428872 521268734 537462297 474948976 538713977 424685302 609486213 442290636 835239917 938331845 957676200 162786416 523324427 578324662 920530051 330186707 918578702 181920158 468029458 172747071 576415634 190912318 406159464 287375480 944120835 448377315 481803137 528888746 691486908 321419001 678743071 975828356 990956984 445487796 697993117 579422489 873868265 597616008 703938488 793432148 981706031 804167595 853190773 96509410 585621697 264433655 455734747 527753649 726566122 180933759 481624087 240193365 258328799 208128398 415280476 129893361 803766340 960252707 993104635 363896191 610143285 488616197 889627055 60937002 610225298 983919867 998986945 321506892 477166144 732646243 815931786 358765896 994001563 492293532 772986993 676877368 741358976 918796758 959016847 472811268 500054945 789042683 942102162 642819225 647516215 730265940 893557615 335259171 841353983 702879386 736090322 956489639 978234243 832640921 917078893 519629599 768909943 892027751 913174154 656240147 731200030 916275812 957965047 181003458 201976683 943472172 998176962 856802591 871432483 326524256 932838149 358760833 906548333 157717476 226397196 338369302 776760414 208405969 401098071 362696054 587651279 808948642 839225559 673229094 733618238 158233431 276897964 606523505 669431487 981667539 986899729 770063449 802377126 965971132 990632368 769499811 938305214 335536494 401955106 28676960 441626867 2604586 57418158 719297034 860660716 214077051 963590802 706454949 979802885 96811508 649543348 866763681 881102026 800947933 920904921 234036697 667551785 921564014 950558844 912724892 914033895 402448754 641944317 277632445 493488269 102448043 134868166 223641213 765617443 701791816 851375794 250110312 639579829 631371952 777308776 166823935 420444793 583531133 977255079 643244189 778603675 726822139 923879304 358631828 635227326 194207987 639090844 45416645 118909009 265551666 914850917 119564775 590901177 802611172 977986652 53323788 776353877 851470402 923833965 699600106 885610421 704700833 723730994 448750375 645232065 35230114 551006871 648769527 840976479 249546916 905700051 674776992 845046630 760253528 945833007 422538299 652224923 911749880 983106944 542017243 635311522 267048562 508801547 775207741 978019989 872234864 941092608 650421854 947814923 387164145 686487112 146340597 714168218 305460193 387595797 495671050 705489985 965095449 996852455 254660517 738419470 308880985 484593252 992081891 995808932 130768620 481044022 54889184 261775661 25559604 718977454 478529762 793534730 775234622 972656566 148996693 572060222 595686552 914013105 297225870 902164461 295225220 815336111 118982130 622122563 348978312 853048195 688890174 902809678 910372430 954020165 866436412 998663895 458183641 909104548 961364089 965751971 205074463 677753572 978632377 993360778 709725803 737478651 995939559 996421836 282116929 791885111 538188926 826175879 522909819 751842730 31507230 158652317 823921711 908213096 591142728 827487802 263024800 865435233 534922208 955703199 13624638 970706970 550840623 666993343 242724851 534822783 707566102 712740488 446785790 566361034 160134034 398721503 497561318 869310144 790061876 945592272 12025062 584344003 445453974 988493338 60155376 844303683 436009562 839636709 823542635 962743110 27124468 790860004 156870074 378184558 563661621 948070819 67018015 539895944 218057175 525639358 149978400 964574219 238374144 944426317 267726715 536263530 336183964 367909921 931650534 979696861 53381043 781150791 439134037 716333658 499621589 990122285 513922403 969064315 409089554 806302830 750292235 975719504 235883110 434927834 414384601 588637999 551307450 820741202 126958039 350602045 987821056 989738720 651589600 788551759 522787943 554106749 579398234 727347408 956792846 973601659 56310708 487593293 154902254 881637530 995075215 995724438 696604737 797361148 758113187 930742994 357113924 801191054 113121452 460357012 728225926 857002058 293365070 818610098 787050537 986108941 366680989 442208331 302413904 596913977 724675140 790559220 106121361 547085233 712909145 980723836 456936118 847206857 96460493 137369022 602958567 965149793 313627034 855723765 280690265 361436362 960078552 989392931 851712896 954272314 569922022 723329144 866951657 934521996 456564080 960455622 652057816 899323391 880179468 949334042 325259778 459296852 949646916 975001805 75050173 249065337 364175626 660579179 925558362 936970892 453713723 878179706 399091853 404238963 566331169 825201605 814617440 954944272 76492273 180608727 391240568 852754419 384424202 589380967 220703044 511659221 977864440 990995786 956755021 988835350 746953522 886209374 311022312 695377785 223935279 606917281 888286126 907155304 314387811 610664159 539416027 808775601 329539690 975146018 482388622 687025636 16460134 902143704 505602889 612962723 959419192 997999934 933825849 954149543 358634792 424475770 902257319 943312379 273017617 781310145 987632238 994561563 774204893 964903394 978297711 993364410 464813048 589660279 367407348 706112959 216489004 893269326 923151731 949370849 2798242 870730477 844824195 976498679 426343708 471486065 932712301 990278539 382300266 635547306 222370809 964396058 19678479 300599043 643647309 648326158 344202158 514693844 156776602 187453249 313499059 759485006 135829994 465749645 635789295 993119193 497371878 945420504 577445239 590063428 829836382 858082319 871170582 924407166 447144699 797308067 844038500 986818325 812199377 975065732 684607796 925786356 272174944 870500212 255715547 973359911 432262200 468190711 513013415 527628459 869813371 943000956 305306013 483735239 402975054 662147701 83271408 347999756 435490431 950638469 812634132 959214026 947469995 961047630 110774852 686248989 989737931 991018915 404568348 737688133 74184042 463599728 151486184 182559926 834327791 891920909 97373937 117798337 926104438 982462951 943028785 955302475 329468561 615279272 561537545 673142064 557511575 668331443 147493281 181176640 152049448 518473281 738585783 784632002 846664394 919731389 201816707 549034789 110218004 497520288 235497458 280513572 9642516 566085743 223453944 329436607 312682246 910536774 25890538 617630558 323106605 818755365 350019130 432012444 782523401 967574878 233634897 463853200 975635119 996578692 795650868 879817425 156569907 486008677 674962478 715843611 26183071 623851523 332793863 809162305 287956775 968601118 949424792 968313213 17080222 872661736 661192308 807690336 309861929 805840030 961849291 966506597 281320506 857865981 468731325 535540594 438887713 946021143 944668728 960607793 394824599 425997653 204685334 385717900 67508439 590981655 178978146 800457046 676835512 969331150 203687550 327732962 964922286 981635931 971093166 995599037 14703553 54911417 545974319 748153840 209452607 651617518 519207868 801828604 456759134 918701861 278177561 315594684 702336642 789233398 913373245 945195704 588121500 665698556 275133932 365454129 568128148 583369679 214844990 656999102 102956398 742335809 446608789 721025498 884904035 935654694 20750187 717823287 55093240 136694095 457708672 990045427 524257384 531532813 137831339 751802340 348358211 399612016 68449682 124188875 308035603 561982366 412345179 845379631 233956185 830440500 536062173 781915470 664669494 868624314 873691839 911327051 412988558 778790254 379636550 524284051 436554248 610508172 925227941 994855004 433012389 869484755 946426449 990387776 766777762 888918291 622382342 775688843 218520990 297601370 188137143 275293110 19754066 164343724 325953102 696642508 314960897 614520823 506803402 946811734 863101640 960223408 564340994 744764519 836002069 965285228 78885253 301743229 931650933 937285557 845232893 946305863 465493236 644199305 132151554 849961240 745148871 906977623 990414386 990602738 565076049 971415381 403534488 814782309 376528617 439780865 48989818 935896018 415284043 935975976 786429843 945685786 755999032 964326741 762161066 814346018 988286965 997469576 917871377 925626068 765317720 800159872 629747648 937224441 944078668 948146539 584768578 822762269 116663929 309114604 366034836 583131146 630619183 635817349 238545669 617515509 747024871 964743214 161978585 901554902 676146566 797396708 678821280 953456165 71021049 313330052 635742467 891617169 292555943 317440729 350084690 765147703 85755412 590299030 685343233 901758624 104425871 850688399 369921365 864434357 934239457 934572889 473333023 989428932 849972942 899407434 263999089 540627346 890697335 909117908 840651426 852342575 935829913 975582458 592673197 668597772 426330286 741818081 660089390 820194394 150915122 291815956 488744570 609344447 222204589 251177367 495243672 683563300 747980653 869392117 317926021 924811738 488921202 724699125 477130517 559457446 334689375 690318533 642721919 960333865 418579632 922836674 943641342 949204149 655523712 841446714 143883775 176632229 449156802 683861345 727716745 938357991 462139821 634034986 969519513 969978950 220619496 487263768 738985436 832842937 693745040 758844720 958996899 962166081 65872748 572408666 547786461 574172646 741311002 825154824 498470659 628809906 116137392 150018662 413570267 830134915 164965178 930955457 423658285 819084971 403337271 688596289 950217727 994347171 363423552 695696474 279674118 827056029 684057957 867267743 352370188 585567434 852211539 947935208 170661440 267780147 589871384 967911641 383166475 575753878 74050000 608257720 713087339 817358201 138266171 980687471 257350861 737639939 878079529 913455687 763025424 895260797 743011297 769281038 211773155 940445612 591818085 999937236 100484698 676178942 248358341 960121597 88231882 318915488 15395730 598187714 793860315 932276351 572184645 950705166 238444763 548066339 986019796 986797929 515103059 662344165 838604091 871261944 234306631 858239074 561309288 784685530 312209799 668524071 897482664 936733210 72550067 499036829 987549846 989484576 576778067 971356137 333758218 919324869 438008753 563152960 406268831 953937573 539699347 864296356 653367446 762618315 953009383 953687185 996787728 999941754 47276927 167876788 731196268 989333729 113715409 310504698 95040424 751772553 493791387 605370543 561353414 719086785 756327567 796308811 949173031 989088660 148880367 593017244 81627789 366166178 36319729 687643239 47667309 908360492 970249647 994428144 227424036 660163746 830968859 923020777 955827058 971726779 702841513 960512500 678980636 968335782 278147117 795180488 804192816 978363702 359334132 987530922 115374864 196551721 86934384 306634413 392132422 666034969 644334812 829983609 708299353 926915681 65868896 677288903 68451857 770633111 484005161 916211333 225475757 729775455 884288480 990699417 95574351 113963551 76310268 704013757 47017583 866798729 641207259 762705414 45436578 329522409 869900844 993050948 673898128 835697419 970390480 995271520 948194445 969625032 691123227 780752705 87335109 904067808 255394695 697353426 834059139 994343121 348353619 403549294 574272790 998410308 625488833 866893755 835756907 944792276 898082353 985809400 408864338 739939164 671318391 733603425 104151411 109527488 453714637 893580645 422158191 819229013 193753657 500340867 890554820 915328379 667080395 893671727 122002343 352876407 874190548 931652712 866459641 870300045 362975265 734873483 878386597 992571330 195269371 606118219 171059079 613272338 26382241 894763790 810195723 912259001 617472226 656919839 971893403 973454812 255910109 999180150 146977262 508787099 306819737 500892263 162908562 964579753 836855336 963081567 303624130 735100286 761484873 830278703 781513933 827216345 999365397 999805087 972182863 976222674 587479997 788642288 309108881 441402312 108427024 265118911 776876985 969421211 80397463 101113476 449881937 813777116 992945594 997429799 590640291 734672319 672878820 846414716 599264020 753001018 786209899 970977831 188998262 638049350 925155138 938364192 834998908 890059672 933560839 989347461 599899614 883759255 785970537 900796485 808484320 887709382 831640232 886782974 524384890 621131807 423436490 526353475 723516547 999629327 162087608 771953358 306546023 449939994 142923014 415814709 787287153 796716408 888763994 936609457 634449457 647204748 319438440 346030637 348711388 707815816 902678341 979869981 600832713 946991631 450392439 767356881 59769146 663754531 119381404 716676312 764563739 825189606 383660932 684649926 735332325 759530124 878578608 899834784 178578823 618318184 622622554 746932868 106367717 131557111 737739168 879689879 947126614 949530680 455894876 670956405 960173292 969432157 808714384 858514351 194079183 727775845 566275745 882029177 323913882 471079784 730998243 800703013 573937008 865179490 692676785 931300756 248715726 703697422 694302472 987725997 449958277 532466455 832649652 979633544 305116364 996038144 364186632 902420903 236218786 967523759 588058748 774122200 772449277 860904887 258597604 369104856 657530824 898594003 352805543 934724150 193559208 319647364 723858500 920091560 949592134 972613074 855346947 919796229 386435130 582008051 631260817 948952396 126064964 373048814 272315674 652169683 197920256 575027165 250919559 558515313 429383722 587687817 801211745 950599941 361375674 639170681 380345773 783442260 52147212 593591847 816633011 977513405 632079680 721897188 28041596 863189602 646157869 722885770 880137940 931629939 117443691 973248799 847938891 985660323 969182287 998938890 196167847 577750525 664012929 820670314 648451588 950759980 568171456 789866488 903319830 918123350 748253364 776485262 718906528 909944683 545675894 578340012 946318375 998831597 862309379 945889850 55868689 626926751 351060598 382095874 218123609 544616401 47541578 624994965 481263825 586283763 736942189 912493151 847004031 935680534 65164681 316891079 354149033 561129731 775749747 890415014 529730490 825030795 648507897 723871781 783635960 861138102 51796471 710324400 363780375 979507713 158614326 368972675 331274932 486399579 120797921 995360210 511321174 948661091 137176089 982229388 535319666 697209773 605726655 736311340 16772820 638906067 794531313 804547835 733080534 942965053 698351998 889373205 954902080 961139217 907810932 908188265 567918653 592177039 576536288 943330579 869044642 988937412 206302599 310866510 314816538 906647979 653963481 787244447 982755124 982929357 676471747 744076972 601237580 924731444 199512810 933044776 809853754 828017025 478288931 485930073 688975851 844446059 613315318 838455065 76802215 811064439 138734819 762782738 144910457 738293439 190522809 604078196 734319137 824057267 222497724 310819464 373175467 847060601 190828020 815368901 796774726 843201895 405704562 920678630 471009393 706310157 420694295 664746704 503771258 719795692 230725068 459199552 354948349 654929018 940186836 959830374 498077545 739199830 217165091 912838998 815880799 897009658 871384278 905196477 69332007 715605734 451603402 894000559 232593884 523107484 808856772 995199238 192220901 917649132 954184870 994634298 254160496 493622554 468262762 876413628 601977849 722593857 907583755 988305333 490689159 818442299 648101315 917984347 354541575 847243755 360055677 620871751 266443883 796908517 437128285 727819042 212545154 982881307 702985780 941189972 990859180 996047405 356956505 935716165 508939968 826000644 871226230 873633755 135468430 912330076 904605963 943601810 146214439 325683800 925899513 974477581 903926436 972721733 721868816 891142854 240410654 946264435 317111197 394640831 924401112 968630143 111757835 345598728 985757565 986670930 822599181 912619167 817091039 856395457 407677765 460765388 934698626 968316867 523198663 883734739 639658997 883043675 308312713 610715883 6092501 214354231 637588074 762695740 624314993 833348994 402215796 918928467 772554932 858825376 87827147 811907397 493190535 497257756 5679131 18951153 99962522 178097548 876154179 913182359 948603986 984321908 748729033 846877056 741545848 747083907 253409230 477485715 37938205 565361691 846469084 956043778 689789947 783183677 224708796 986776546 110341143 135598812 304999524 788500128 850778599 942320992 390891205 473940050 551500700 557568426 260084868 531814923 979234924 996706687 755832616 815796460 545013243 829698082 656846247 670690170 790946865 931207709 897525841 932589086 105462635 807107531 864462935 872722664 32294843 291948502 909079488 981851055 591899809 683665583 632534269 647444190 451866714 692465515 213697109 340269171 847507136 904757314 869611883 960154352 118190507 268037790 794274641 909848457 452277667 452690244 825383164 890072863 869561753 873825641 211333073 564530042 956524851 957849369 143172264 618976617 776692598 969226275 458719476 605515112 348629905 947323127 468195756 519282567 410886390 463592012 574141219 639841460 308082669 734619454 941614009 991770197 828109790 888882094 664860600 934640122 875431964 955439360 460808308 797420623 265072301 522338872 265761848 402842108 174412953 886038807 60083013 143157002 359571480 419246462 685087537 979796871 683323806 784130513 756825865 912086540 558971727 837304778 481917277 632164865 558981182 670521991 337074000 576254931 483519030 491473132 22508436 877767578 942712363 985640810 290812504 848635827 570866572 630550633 501976748 966157275 98334000 792159848 759581564 904223110 720763115 895209845 140905600 366175999 790959683 953141273 339006909 804204172 37985198 849919326 129258252 299550422 370290830 937197813 555575784 801126826 306638239 421118788 488981468 668696743 371723391 477371692 545284516 958427723 688930892 994654497 583638485 893560024 464239602 668368731 755186174 995084466 456843544 773155936 980682750 997799216 394091162 770588734 619010763 883575876 449063017 486850841 581263440 900608174 135267869 734342464 364053282 897852275 472074669 885750944 680839246 698414208 459420877 910668277 31587118 65551879 732387459 964126222 639940997 949609945 452492967 786237485 744302677 879568653 485777871 729425208 690490394 866425145 991277359 997586618 269965424 867158696 889727870 949300750 509656819 915433557 953470836 981546660 11328227 338675751 82621341 923230539 837248647 842652186 554518738 650454474 325789298 933247229 259804105 493448141 124746770 219993029 618879921 861303374 65826774 200729573 19742537 972172396 940505737 960387477 623518211 642012898 306657343 573561218 830123964 946083615 669843600 942486428 504657783 894943920 361992382 673112256 811140552 934930855 162658598 560951234 143379626 241678329 125893310 667821868 792379622 914334625 23838536 510026554 795655108 832253578 535864725 708023263 705532818 904844220 604349533 973390417 20121121 401251137 960853122 961799992 449637499 584155138 43898443 165967196 531513260 880426260 352288403 933685069 173031482 640866727 642283502 766132332 402244171 619840619 44006032 684970524 562741965 999595115 373126447 424511216 149257995 560866188 574187608 829676088 895333535 908070634 167716216 298112539 906358257 937566537 956366408 963647350 223416600 891581783 101176154 334980381 732095937 935864662 934750801 952535932 717022985 906583384 279877562 678318481 417699739 568058049 274405517 873469456 43466986 146452891 820869198 951036191 196147183 372139673 59151085 834350618 340369580 670824496 15869655 433802531 531484951 757549228 992125064 993766329 595579182 888448891 585588689 667875969 145545948 302626047 382708056 828110539 510344649 522287072 472195600 882846542 441386806 692871558 21142129 757372286 499031375 524605820 590683475 626737354 930601519 964752216 674754489 686144890 494391431 714381969 806940380 836580367 429868283 577683988 188111530 595943663 392764034 462070073 775377245 995700995 513249225 849548353 896722625 923836229 292005396 541823323 468631646 980093326 183348453 322634808 850112139 949708695 293830913 882866973 934775828 937394226 876607946 926398133 227804396 752481272 161038654 844904468 802889558 815158153 51552443 880978584 587184685 723108171 298220236 859325615 278246962 559720182 430896747 693633439 359089681 880461912 875355431 947990793 555059310 596637447 179570352 742526405 635006611 662683305 265939418 560047671 500233164 556160873 608733030 720488306 192852459 325837467 339167424 845950918 834595638 928699704 472992098 796810434 621014920 621936409 507562280 697539834 166258448 772322209 404798806 706814163 988911333 996715670 354004962 426920940 704312096 706615477 1165676 222920418 574326752 992711495 532796997 754918850 454842141 530642301 84422316 751609889 118002170 164024945 82176978 807578377 450101923 506192551 128479586 606245087 389652185 571926462 900085364 946621407 177667464 320168803 702829987 899285699 218960147 619207581 246552017 917700128 461488002 623895203 224046548 550808672 320936521 536379905 579247644 743885415 610316434 677665227 710246607 742154141 428431807 689745081 810473864 840649942 984332504 994816216 546468064 621274549 600838004 869902056 914458068 955741151 15641786 910511159 569601701 678621891 627246156 753037867 901152447 941578812 184042070 590369462 446555467 464769861 176429497 845817559 131107500 688763736 152396210 866910195 423503046 666675729 807834646 943469689 76720017 718075127 939081772 975179931 505838666 806540058 851901598 864064041 45429779 156513743 498893139 926097682 386874395 422279493 875986456 967912412 441735448 977531387 411138689 522976523 360493461 910814806 26934112 373405123 93669186 558361634 597512433 673176765 526422718 986678430 880518804 960479768 87739821 900447553 282667814 839474383 192479504 535393360 897676788 994538910 2520226 391926146 692566505 827629610 685212727 990831536 417761092 594923712 554343026 854162312 160335138 814619658 743472664 787755178 235258193 512318826 97336283 925984969 234314341 860449714 838646359 876799654 828569901 852368272 104789929 911782250 119682377 123929632 860348567 961745865 92146957 660333358 635151263 664486072 870803191 904336462 202278787 218892202 268030705 749451223 842621901 913371379 646987078 681879493 785871668 981511259 26871859 111603137 73297532 638680333 284323285 628612477 446068148 969497265 687322364 967592534 383497217 625225013 535722135 827441542 829274762 974601728 374600020 793011976 615775579 831601836 200718635 511354418 902900680 978083839 558540751 888176432 282293816 737777668 751998506 985078726 239116266 356401809 919471612 921519413 668496164 897553008 685592185 811927275 145757357 336416323 939608087 968465805 968000681 985995202 88707731 848394591 805712299 809114251 623230173 695755240 973300914 976069676 62024047 439799378 423240523 557844921 517066790 520047592 900137172 968856283 259092596 453554019 359863542 589730201 481785240 498282961 392917756 825607200 865781103 980944228 525398733 870875306 605227704 762423265 690950278 878067224 211969239 458029488 434301796 842566334 712079416 816535564 998330 387665472 216554881 678432498 36870170 734265030 869595598 871306792 220265876 332358789 850521868 943397978 125631331 789876749 342696832 545655670 135058218 346887115 500810500 623788854 38152300 492087130 734717141 878018009 336111379 900454845 413203526 979395011 159460695 779767800 21468873 219284589 129408697 570461271 609124892 913346910 724428823 734872684 851873822 876772759 981410647 998379712 545730048 741775500 856015452 911212089 511403396 898191133 697776763 758503076 805721141 904063217 707188478 950973567 740358192 784405855 219562028 770325510 155027061 651110181 653679754 809681713 711208248 728870886 820097927 985893699 252364280 531065335 851792769 886103796 565348251 634047835 668117132 824930242 28992367 643925682 765784397 869867953 583316582 671318202 2067112 719519303 185425040 203942094 211526682 453604914 726386887 991889676 92086430 717242513 839846749 860496116 795072188 965895237 662354184 727149670 787635646 847832402 647443518 681545288 906387444 951548463 521273300 766596635 339778253 919041943 580797970 823789931 860441769 935308270 74818377 852523272 848001430 890335791 552387985 664419456 942362658 975054394 331309420 656418858 252029229 462346510 633341022 955859090 692956590 975198052 997473113 997674944 219545717 545793787 714412363 876503299 801990520 872166532 336928351 896378218 147822963 632153914 991086949 998773899 412878924 696803584 490858594 634274365 789308356 957207018 352329963 579029264 439277680 970731588 775366030 990897436 192657637 287244358 557440419 604518722 540266639 655431761 197590347 881051552 525277809 905452045 292019631 751296530 212816802 301666468 207706794 492915657 726245701 879411338 350191396 752635873 275712882 873017524 452200598 993607719 206968522 775217476 256827099 326759859 591490282 809776399 630013154 714560673 269614080 720789610 957329449 985285710 700821369 909536536 924825304 969366913 174136775 337062756 352553829 656700319 505078293 740962751 402106325 997540292 406450480 509345725 736722275 752824358 492842630 756998081 882331139 890493496 972729969 980330475 67662692 126775496 933738660 956769695 218768318 998029769 698186105 706070465 952678210 969847541 302488129 988361629 246641673 367446570 182039761 638177738 397688767 822659704 937797284 954045022 824263653 956407913 23492960 267371104 500345128 524188614 172434627 999980061 556808819 575574356 554783285 575862336 385684303 693455635 546009955 727210646 364225648 970717951 562629442 624987103 67658545 71494897 494568555 504183169 126969033 931186007 454799644 455488256 126361374 306639633 627807740 950990172 152061668 819352294 823493613 875999569 691033587 996949130 876549133 912371535 469281856 487281293 465288327 720555385 461955711 512965284 263815819 858750642 99180631 273112707 746754601 985480776 758777695 837766436 501504180 775827303 486191685 693907638 496567846 841179240 283570369 470815597 815602785 884439444 479025432 937220657 878779386 931776187 379472424 649150670 608945322 973574126 290825076 560386197 926838147 975490588 962294649 976602050 763141841 768028119 773187945 873512411 765981530 808066279 893845465 963124075 555096041 713584612 412885499 662443218 504379702 996900252 855180758 876720883 617977729 969671908 954385039 974590180 516624776 643760894 722323776 817624133 86657405 796032155 902084523 972713816 678408787 837477203 191314486 672809391 85810994 665954888 19474106 177985288 238558333 309093353 1878950 79288906 303290654 560004660 200221194 617116761 556135350 930483410 67523464 327297651 574964226 723490625 43477971 846393991 208689465 353987632 390255880 878807217 304789972 621480994 781061878 834076694 170149193 400815960 722362037 948431029 654404630 925541586 421761886 677402330 322246898 513673828 655976677 868106318 777696221 860075780 450979665 949725095 93315078 769113505 244466077 568516400 253845015 446485338 297421085 731569337 28755352 760648098 116552539 916141586 259064184 524918255 553211186 577047430 302905499 813655709 426586815 440479752 226840540 389821496 423959070 559744057 918745673 964806063 871402527 972783693 381921612 674848745 949750480 955441706 632054663 807474659 372803193 490761340 521984707 741008028 488115655 520241393 112661979 537778793 150414955 232123193 41354207 739353254 549622772 855121125 731821699 954797254 847576052 991007177 400836890 869792969 67662197 649711798 524422830 745247870 262430138 350762735 690854792 914133106 740377537 939128539 175826412 875988603 291134461 648845630 688019120 923459153 476837194 835481568 619513030 783843591 820709341 889865498 164045190 210851399 673766063 884632572 599619495 723784461 248035725 297518134 968353053 999489847 805296145 847706180 741011888 836051384 779902360 903078523 136496153 222998379 914316220 937201282 745612035 849357238 653977815 685481919 455641487 935951980 4377676 105911609 509918760 909249895 843943289 894010385 264380902 383466020 124497574 326329415 503011293 540663092 15269006 141675497 959288706 970954870 287135259 329554000 827184954 972509720 959248804 977154570 78712848 738071092 64704426 954562920 352315400 354642615 355742064 744691786 544088155 799979519 212013130 601053274 814735017 862222535 27290161 534172305 115627177 644542696 496928273 745999618 202655313 816931895 850730383 995719703 412643541 430230464 912912245 950188854 479616494 499753154 672678070 909827024 184763446 849425178 295426969 718055681 407136990 485406741 411949617 560981911 616481938 854110991 863940602 933263999 785042736 944089881 525108239 827571602 231701012 334524125 785107196 849330181 773526643 778729096 545142229 587164617 553536377 853638124 129656858 153527594 834696276 903510297 564892780 904838220 430864368 677139722 530933435 647760716 276141955 619730070 341433039 922232607 446853303 451984440 591623469 964185097 220520215 431656992 615960615 660112359 151173049 727479001 33255796 683108002 238950835 397299827 724936291 854189113 996633773 999157627 811421575 911594429 381111838 868093637 199530182 561011644 873314352 974129093 34095144 735997380 937100051 976384276 607615874 826647404 642426265 853189827 892450348 897678969 695689621 987464003 869872769 873423485 399557731 826893068 456864820 671992508 877192893 992458243 695322241 891515703 420475861 718617669 164571247 811781820 622429378 991249348 254024941 816927159 46938177 476334174 884689096 901120692 922380840 957591385 895685403 961626411 393089175 986472921 878971872 941519669 940974190 941911849 440842999 756824144 358808510 924250332 127308275 501486393 805980862 943946821 446811363 834042241 906572424 909985757 600815031 697892624 798202786 816463483 83592704 308982214 978087214 979719179 281251150 578010772 502720288 851139954 914580210 970397371 809319087 854293131 495278436 761592278 327762982 384970898 193510090 390339226 674737305 708558028 301244530 349702512 2725624 966861306 307252961 898748274 205014078 222195116 27993832 726900113 753517996 875424004 589735280 823790229 9893931 809296538 484193496 783574650 913485545 925676869 917951620 941386965 864711375 920575770 187567430 211030321 957043308 996627781 294147816 650182638 26026815 472426863 798655632 850959202 835651393 888346085 812052602 877739850 621095511 666941583 814488168 847458642 206019957 638535088 523330129 907868490 132714277 350235910 628595335 717675726 675986808 867418241 635218123 753011875 484270961 809827023 520802081 659217088 327090391 487357902 310092433 606810926 399843977 928898868 60284 438907097 351770778 518104295 885918873 953927310 512187465 877088859 612721299 742417835 675759829 792597950 595114315 793044087 345181213 348996995 245084673 882071122 139912928 840348525 412699090 914995592 936383177 984386733 424973832 899054015 974259656 998239213 205302702 848580907 537701646 767130698 976002759 995315831 575042179 620106778 337530875 569990732 868091384 998236305 668689506 725245928 636856711 643173763 918515121 976235525 258204953 753689314 62289183 999435792 912507844 930945139 472247944 875053163 262851559 717048874 537932724 993720983 91246863 816119210 737642704 813588544 442575893 510769972 250199004 636666560 979963723 995751575 11039726 67353508 565846592 983310867 67490192 344843295 613954966 957096943 858362820 935005559 173359885 438615540 223448145 263869747 983681759 997784737 305825388 368480506 347334520 510896215 434263379 579251742 166249308 528672623 532103382 776053789 953454121 984707582 734991655 841954503 890726257 982274924 779462814 808711405 905328200 931070960 910149697 963335152 229631647 892731608 317306902 968980234 995849006 997617380 401209773 446205576 908972057 964473585 549501470 765197220 724287152 753439667 468053632 998157862 847594934 892311865 692201017 894268164 736647766 962249281 158562836 929484105 199912387 627881852 555863147 880448446 993138738 999947740 47306622 254555545 965361540 994862278 711816641 920934880 251967644 732263777 179036371 445710174 7814733 674812117 70900173 871109865 938210574 973604655 253881850 550533999 861174232 946634970 670985694 762416507 365621931 970639591 131199529 867537889 722351777 932886183 856519012 935708341 157303018 257787097 16125208 872660158 966336022 990122339 419613427 559724452 97094083 645050925 291073820 585583572 75225483 993624548 19019991 650394760 675957091 807166291 957012535 967634342 915710059 937795708 901713095 904537411 208924605 527811310 233660009 707062288 975874741 988114092 378289590 502712671 413753020 684392436 658827687 785200244 95526455 288766121 256223491 729444326 394402275 857869955 1009053 863886494 88840091 808989830 236969896 696164849 399704693 579516054 983148909 996305569 320336793 376300612 150109595 256956305 731172141 731521303 603705878 887430048 382748348 586025551 687549659 834751167 718126162 747076382 83091315 939673867 801384755 927254331 356220489 908692469 845020539 847173820 462353586 532216813 747300469 894852810 948306056 999872398 583516168 751735892 496011117 668577777 567771285 764943035 399951343 781617831 919029666 985320806 157960813 288069211 794006741 889640856 533472927 759724444 385878847 813118452 141705093 158606742 676671591 854697456 943641818 988072342 892319613 941436235 813932880 925633811 517130252 799630071 505947944 809399216 643363921 833083793 450209524 518263116 582884819 754132793 916014740 930027767 915122283 929419974 521060907 982934403 831327374 903454243 527393062 569808061 209105896 812241412 96335305 217531815 168619087 306447035 527613114 580998503 438480344 942552299 452665276 913860206 304860858 762623295 152583121 886186385 615743650 972057279 253155647 464267189 836626339 939557791 491468022 850636999 789028383 967708078 676546421 804500833 531143745 587292681 949574463 961290827 644910977 815391369 358796071 378802029 87666922 697585219 991411808 998359690 626281148 692579862 111793285 373230071 613891213 940940343 706632482 754529641 571383143 828995092 397701571 412873790 940249130 953030735 851371957 919876296 215839587 252177325 176638373 637474282 568284112 954379464 516183182 900157533 530356303 902658505 293865044 524831782 549791595 674213231 384209327 553127155 679971323 951085030 455089292 691148745 348644306 903001557 118931256 422590190 583735834 842817217 347348563 666858840 668440777 704825672 280810685 575021349 368435487 990518604 774547392 927275000 350782608 903252725 864057185 898880793 149591865 259431105 811687134 979895168 799949403 943066544 399708875 593633557 560397520 723169169 81314315 804838510 503191687 804616062 807324438 815566671 241009250 446071105 767170777 777262842 364008315 689183064 905883236 932593940 219652496 792188772 737577343 753851391 435096384 970698895 700180612 991029823 335238957 678821306 481621701 835670799 957436784 958511574 511670354 997127471 661996656 996093730 985097879 998002280 773507610 996772860 63073952 476966351 314471463 389329880 926470142 985060220 896863909 908406840 352765976 424092712 102874049 110094902 235770059 495385901 242947041 772154269 30011366 568537867 72725251 801058672 85119773 961017807 1138343 328008444 117788327 640941523 697984205 762283001 913814073 971961877 68531319 541106361 777807908 953562592 568600260 977154383 247976095 794354678 863434605 947111526 109164006 523384021 959138994 967279152 344980922 953853153 570926994 997621818 145936888 509545237 85187699 632227835 453270503 974079729 258601853 837527953 674992408 703845508 609625547 962147215 128131596 132882431 817532717 965268137 25357865 940813641 689512191 862465891 639943937 773693127 257182162 998133163 644948363 700892785 419755440 950988891 729734571 844858256 768099885 797421793 451865477 873081154 989796249 990438087 327287404 363801898 37398091 411441352 68948037 466943258 941610773 968671880 49236667 179908891 154426958 259315453 900009589 962897859 136921441 408230363 332335577 903028365 883127939 950141319 615786832 811228194 974125928 992174813 388905779 681291213 408050255 749668247 507972617 710112705 380544083 385230474 331319356 823539969 780254371 887066225 775848373 992137872 667077561 760128727 811136461 951871768 86201749 928774756 213504981 792975021 439321616 560120549 659226072 944198147 42969158 158924952 776203127 805122520 131288507 444378893 753959542 914903426 913032360 920729627 165683270 314987544 75174110 788689868 737058330 993922264 87232014 266716803 318018019 428738643 830512393 839078733 189073891 764331440 986256540 986736180 820576698 906050510 440508760 541792752 368896383 934045068 185337521 667131836 774477987 903687818 52366647 545797139 39863794 984459480 978078358 978833046 2915724 557765830 165770719 955582562 312919527 507927578 776520680 992582799 156729220 297775901 618880141 844999186 246316489 791459045 499366314 862223172 777925558 931472998 987000406 998194105 500786562 705442109 71813782 273061428 189596579 450601330 665775948 727362982 773216516 859314783 236013423 947208251 138295538 156009681 4021342 709733779 861506764 899585489 377292991 680577462 789142752 989300572 40373429 190574386 965915186 997168365 273247118 818113448 188665668 272510108 464680379 759520241 525440187 685193009 871211729 929700346 524696220 731060064 387268475 790406191 960235836 962076004 484263179 873910282 875901718 965883138 954238981 997425605 424493866 862600657 470907410 915136952 90849855 371698966 333858313 583942783 368149089 990363121 615078766 811607457 975339180 978150000 425075841 869606538 520089903 879668834 68206396 974637125 252304000 558580708 712250998 826105018 503966098 664146275 148937095 448179650 477494169 597927067 17840115 833861467 527436942 896385188 142021850 239420712 746020014 836881817 274782518 454099948 878319403 967845876 948364754 987860640 318125676 328572863 944226693 993940772 806442813 910131890 679525635 912518404 850911636 950319832 679672491 688952319 682326380 916329122 37041186 691390273 227729762 907623145 386943561 780741401 954345528 994778137 316983667 412342454 811604456 957832391 249391876 829751752 314544752 935415856 187528395 234728236 730613873 991836144 409682530 517283505 903732041 904164516 153748784 614100037 163346085 549720063 992341582 993468072 903646982 987636518 321730526 443177640 279345677 615179644 321888192 798244621 620942442 993443718 813420555 880884448 109455608 519327555 645853199 931618023 42401314 221900000 421977191 616038273 647427734 860598041 965754011 978704792 134501972 650594058 218237733 909268718 995864567 998402806 937666414 953921652 435956199 889661235 601120543 840476272 144592080 721671983 875057943 967951446 66794221 986748843 873667766 879819650 606338775 658246259 447664378 594997115 765643262 954794609 622633287 826713862 218997219 694994172 658266294 867329374 454075621 531853076 928367616 968193004 390673266 429129382 417424254 711472938 798849354 859388681 858925144 895377443 378485193 429843647 320426580 954389956 501681449 953921741 436872387 756038369 99578832 463935120 27055843 471388502 349285630 813521729 322248549 489478870 101910268 936493957 218868469 300392998 404930494 879215055 851518273 946948107 140372664 711274430 768785699 986561436 60422120 714348784 523345849 749668138 153296764 617540082 902808685 912906358 704874461 763484753 441573808 671883469 793075434 856164887 886299839 993380195 480102755 623836393 621887780 660164824 203196233 983401061 559570378 608980788 252155929 848771191 145159224 655086154 113548010 897008171 749736002 849614260 167501775 515851142 214466176 499704849 545531204 662176734 230167381 690571378 167685990 603689814 874840166 877570318 685043292 874979114 517902526 932727128 519292519 738474706 406789795 780965596 35094053 513005556 837132499 852770757 67124520 172949401 232329586 408094926 121891732 942030238 948961686 979986456 614207327 918388111 233211512 259096385 228563869 900418724 275995139 641926040 448956119 971195775 917605920 941006095 683233267 747257756 976607520 999171335 960455087 982329018 907414534 923876809 156416890 253613068 101733869 943518409 492583848 645331288 482493938 652625861 524778498 525756068 129622605 143027669 675846347 753487012 791400340 968905823 17335976 330890640 541888865 637715240 451603895 550717577 742475391 908437053 554076655 940590999 45949389 971145234 585335355 609187662 40130598 533617438 526744188 960778151 312573945 783746629 137756808 173560751 880987661 900264082 852376506 922547285 822200809 914638661 812165449 876558248 115734010 224806459 500583098 552535102 334525559 635519961 200823728 768158420 92704894 845445129 161580046 779823301 22406433 515964762 792205861 965189991 874727026 942675723 269965912 432491712 270596382 997763329 79493402 88911339 442881120 447283542 587391165 978447885 936875473 939733979 634850001 721172636 535167788 722957419 865045769 970314451 962170798 981196380 346813758 692548519 664466080 696017735 182865791 191753674 246366691 852011582 805949723 980016634 240928799 364886095 969961554 991704296 577155360 811970630 973574687 994393112 66816859 124909516 500960739 864587841 34652248 673403866 833599097 970021518 780364683 819030863 134732128 748147186 21462466 339779198 874099183 972085642 232004042 717625705 303621077 656010698 400375284 766575558 582119004 716558924 1059282 933810962 445382567 958542560 644309763 911084656 30545361 378993406 725521450 970653049 191999804 621775437 954494923 987013830 961894272 999574673 717731465 852882297 105493204 498840881 727560037 857028366 566415705 670598701 226787477 426097153 572275255 899959311 810070337 928541124 585580915 681103520 838696678 842578938 153254316 711378554 622233894 985760379 804625623 876895759 913956837 950747929 133915305 311468022 892492507 983737289 727046048 836300148 548325937 844084963 774715026 903945731 229443003 281839352 439126182 951013465 384528600 391078860 915985520 919347171 311380761 955756684 325330487 630850944 272292916 900164703 23478206 486419656 636063303 951778710 203859214 780085380 86845023 611065755 392617311 535770666 758202600 808934051 623086301 624425126 627065460 729543696 564130489 752044098 919908446 963568214 858286925 888912928 3459410 840137580 670774359 982406418 482391540 534123975 275700259 897425983 504768590 969225935 974310679 991577997 876572619 976310104 230914765 683776517 700388716 718982206 862785950 883874670 643077856 956866126 989683841 991721656 570006566 650894942 846418784 875476755 96299043 407098922 335610693 994908831 174443285 437844084 541863221 904299062 727044453 911429499 506670828 762313262 971995787 993415681 604462365 757149433 855612804 864111317 710305112 914786849 460704226 732266402 860517056 879952034 463356954 811424257 926311213 989312400 397969583 798981882 230207515 647674692 768423265 841974097 605292656 710774363 541279520 963486498 468220829 811978275 821172885 964662040 571836361 726957393 958992837 987534537 816038049 886884501 292304364 952832866 905106311 935469911 571198241 782638816 926671677 974551640 360178171 722269969 263653564 295850137 992864416 997958713 546722750 669044068 380937043 902221683 176054867 951904143 318574458 358521802 486641764 838270926 994457648 996938222 194851700 911544430 698015504 776644012 591913951 757820862 433235665 749750961 222514334 484693556 570278599 871991651 110000474 605180717 25910789 280191474 53371985 807956166 81708800 214451691 657491506 959250934 429478455 952054635 748497211 805454521 300886567 942397579 430952417 724292861 451733683 484175423 887060524 900789448 857161762 951071477 341047787 720178438 710697333 838901734 606487848 820184853 231057236 879469429 219685837 255050992 373531118 511227357 201433378 743390935 715012486 832214301 3760 731296179 797229686 937665605 721738476 762239471 297107836 590766869 411498008 771772246 33039427 420601749 465791729 723404585 523249674 655379041 769529902 780491755 371468390 533015872 57278638 193585034 636163 757309580 124415247 334528705 523818920 622757869 206828861 762684647 776397844 999815290 636941452 985148292 441123091 883363809 483486419 955086129 905260452 955727611 243469098 265107437 184445923 457091895 824198668 941904352 664811275 932498472 45256382 122527193 80791672 901283928 48491362 974454120 582475836 693827114 596814447 693202588 358907229 719877273 115397927 654711894 985621562 987891150 421005229 459845464 445985661 593644679 664585675 762045673 536106282 717667878 983807414 991515194 795064225 921783304 266915062 626366836 151276823 563764906 215415006 583959873 201311446 511727403 755624476 940539607 878071414 898899783 778599352 970761195 874539119 996918625 908039245 987733312 707298129 836125749 147902255 837095495 148798366 911891108 13973638 308641381 763409446 961720770 921850086 947225763 369682039 419628229 415515749 973242887 119917324 624453169 904897780 954275123 954099283 993592426 238593889 706792804 416815792 452205385 670547078 903627694 279681247 409131590 973177151 983318198 239780008 414306863 923810974 999348555 148092584 562380403 603192607 952859232 511944904 652268749 672549296 732163295 919783262 970098821 364332932 949074044 739895627 790297681 168417392 962544885 56986734 406933015 59231923 366207632 421659214 748874633 255779526 704081538 527244768 667952530 340783832 766124093 992148175 997978423 95922179 367672195 115993990 448948679 234062105 976176851 646586746 680827766 624698036 807360689 646117004 658462221 893510554 975572010 937213649 955945369 802137986 930914922 663740059 935272034 284807654 899691531 688047107 935176217 62084349 968300078 245303925 285181271 410717998 416558286 248160980 842440686 130263305 619333722 723760186 809477939 330883516 584495923 90334377 453129952 73471217 318209135 289168601 636713050 17334901 543163127 49294563 635026009 870508566 971726931 944094774 963090640 526866921 819479538 561141936 742679231 505926387 771332603 35251603 662320221 629017746 780877020 124895836 741374927 207039101 322394076 361443218 719027373 876962565 943355805 273846390 987327006 444341853 917779835 948064506 974474916 717609138 852039195 19474374 474448784 457437396 964655618 153336083 569397285 116259920 534943201 190152436 807373081 234088364 568531992 256627649 740326986 369103756 605338173 808767474 826614246 215448295 555063952 182390130 339612076 261741355 794199300 908972706 954794362 799941393 915370548 608770026 772723953 678261471 974770706 747712300 780801348 666922631 827521261 30041672 885092101 873905245 966485664 281994080 749608100 61310920 663611111 551050773 597579487 53447428 155545548 241627195 584658060 960251966 968322353 210699356 497694532 205780832 237372809 144400358 326721964 451079898 796276501 979538678 979550387 190930657 706149132 480885303 750544466 377118312 789765727 91102260 649038510 197885999 312553910 758286102 955244906 207116301 763820928 168875519 367955260 135349209 289580096 9862159 184616307 595754635 747392101 98081362 437231550 211463512 765439995 622457478 971397781 164704035 860841963 983788855 995215621 569194995 679645810 489099607 795937858 380681356 636835556 356449855 784620596 276922405 815755924 713768985 778646595 313143783 963769977 673688277 690460049 810919912 942727179 34568142 289442479 401269316 699711965 611734744 955867963 945143746 967627951 61074641 785674533 952732165 962578907 209808587 373563369 312544116 869878006 694619311 722984156 405206467 724796201 375286288 433575035 840727618 873599726 17327494 380670948 138784145 255366217 572437714 603228542 506946052 778867948 475570797 618770107 952806569 982742316 532311036 822834049 773891083 875654570 720142416 814669291 241419874 545557118 830928241 872553126 451864425 822818130 209962045 587965297 185454372 456682548 72544497 997753987 396740858 806764888 634795443 821847153 204173110 314727705 899474877 967186212 413703592 618573162 845951015 865897918 955701639 992422815 885404266 989485429 761454910 944725896 268799984 906759432 66117136 829692809 219947642 732099140 99349059 622530570 331675839 656030821 74038905 882066995 567517871 643270450 543635434 940696073 297006183 497213024 741954473 918954174 302570996 982245447 609455054 789883226 201507428 742227915 881288654 901184088 544466995 787734087 80309761 473078055 987282092 994804928 993382132 995689527 870175316 960619225 912404098 996160191 263098922 875691557 549954513 609628833 834783427 881482712 728370346 977781077 211114987 286742680 232043516 604536799 189030265 632672920 309191065 330775452 920306401 966656484 331154762 903158583 386650315 766765293 670340007 800441732 913943702 918529025 656030429 892587401 148333247 295245745 987405462 995433099 46544315 577102359 648714692 973212440 807562440 844478426 180041738 931753709 518554556 695515659 979160355 982748572 326645138 890672938 697269394 765801065 525609874 582455353 256306473 764601198 564089753 706871987 453626193 794445871 293581449 334791934 556505000 929510559 62374984 861252112 990846223 991538045 518244622 666626726 853365040 970491796 699974790 871725941 496912585 787500642 170279549 575913844 701217567 750392248 892902244 928625288 718916245 769915201 90595904 646890965 891111511 986418694 454308373 607920580 196556583 749645455 729734047 856648745 808111763 955507388 712961453 892524930 332327575 361293161 310879908 541559792 247840255 988817523 347433559 701176193 68034488 770170204 415670135 870542655 525683629 954940670 809491930 861065993 924835740 942962857 244532026 581210021 595435766 596660385 543610892 627076637 100406956 352752427 871046392 883165866 291325222 317743711 439590380 985998842 601340410 913266559 399521940 785092563 770299926 828053670 275638894 941210742 530623907 978957943 403822709 609317222 961412006 986062464 646972841 836179010 346854437 873129706 331256060 875442690 61282932 521482288 212986436 337477555 960693286 998593350 689396343 728264250 244466974 888695385 114918208 904069320 671666670 973885187 854399659 872017472 455497035 744842877 385115620 978884283 247198632 720447696 220122258 450076184 356726010 976117221 714159449 901861695 710259206 848091073 135284185 356729189 866229077 934322229 230650824 252851769 304051908 849995210 748315225 901551980 328947843 608266612 271607932 510465982 208757763 580936565 968397538 981716013 856712954 857346486 124522958 931017764 613496671 844886116 380123421 469053822 944567664 948263199 705335454 971625150 463844268 860089074 250258929 588272542 741191235 791851535 179782748 233222434 306496278 981319672 583207692 753021335 995498559 999873384 701704341 958598756 657209950 780806252 878249958 942128438 769105262 878320873 12223991 461829157 69458379 934857397 599447836 933262391 216208708 528984942 89566363 303049502 582582251 843167845 263573067 969858880 201551215 805954882 232683195 920806994 790050516 850529871 662420304 937852616 641095090 664556470 226068628 599677026 783922534 905279968 398470285 859820738 942635558 953839564 694384931 876340791 174274189 952879510 892038274 965863288 377014261 761745255 847218741 958119183 254603753 810549136 998633941 998676590 40643057 634394162 275759001 909769718 434071987 552476789 441853989 496824925 364233222 716426208 998495863 999462274 912239850 982897492 596485652 984736349 672663283 915210101 392012425 574383085 543122860 955532799 664260382 878907353 230272161 921782729 98957688 732842230 475278725 516936070 897334619 908728188 983199014 996951466 418780621 968622523 384157169 688901621 622607527 733757160 534605946 652491289 614124068 791070660 502136916 598880393 536318399 752412780 968857308 982269564 979268489 986896734 304086608 956850431 11942055 945178164 914281324 926829196 225532581 978783988 374541053 877826866 104634293 666659958 926920340 966181823 396831517 672024815 53442676 952612258 9176650 900506715 944220775 951545471 92475865 188208530 408805331 920926240 391439155 439611964 239878981 731050452 903357119 973910198 306511452 515076292 481574753 547764798 70959004 856687548 256352964 298360367 366374434 716127845 92894297 628574298 773280504 871124116 119243943 125133334 549673197 720745417 697257410 809258688 786727507 913597227 545445924 678570997 801482416 930534147 434588180 689331273 785209478 953667630 822428023 983706170 666027547 815882824 608222465 813132558 233336769 926838573 68124527 655110830 828857959 922971952 402653430 922537560 450333394 602103754 365681514 786671014 452071714 767607404 668984506 767737858 187747184 639856741 529730092 805308201 30945131 585280005 235421949 656565483 129295880 352790105 48258207 624187510 740949163 842450571 215606546 817623193 680407902 999810595 195032164 332994487 928350104 970873273 974952044 982187893 615010136 818931164 193909510 212377800 601857169 918989317 897829694 952573028 89128733 591780301 563993404 616292793 390227077 637578473 412118 220534623 605188768 768648903 421556495 766023315 135313104 361696950 535356965 929366564 1340450 878321976 519711226 576709534 338897656 906819413 31925526 97032792 295393460 359199672 26087828 190092901 519558119 785073107 543460317 802133074 288318706 949284684 761332813 856919999 441626318 718950535 200451058 389161511 715648769 866824266 827091193 831140469 140757881 720380694 601695876 860323455 745199990 958690276 874093372 920660061 315632548 586558605 93955291 194672980 322822355 847718590 853810520 997638914 589133339 844389551 471571520 788640924 757316258 979637604 349563263 707926558 331100719 621738817 127406278 498318879 311769352 955138299 440525946 988822195 142109261 663937222 192399641 581734074 1734618 820589319 306979001 808830952 37032517 307139639 666606250 884619582 343664867 352144695 421986783 915830772 483777322 683882144 893101660 935162693 434675324 746287497 501745517 606054325 708700983 921811303 190506230 834183791 754161900 937682439 995165392 996960379 710834502 774739594 194727450 215627886 28150337 33529544 373611974 939206682 72825312 466721114 596383864 980084105 654088064 665295142 346269328 819721128 898838779 991117228 951458132 959483678 600675783 607177317 392106493 960359225 505557620 932709481 136607247 745803832 512400661 778134599 672827654 822780482 399759344 970055693 62421900 343947878 284078123 903717607 861804583 880687185 46346442 254261655 571209679 883096994 737417419 900467936 407484503 832805429 75674985 424449058 322543842 505040279 9417818 275352255 583823290 762592798 116810257 841035011 656685644 915040845 946338782 993740041 841304281 964310502 337514996 868511371 160071257 341879300 487514887 885213406 878811730 902922070 389005712 865803201 61473827 982420091 815981615 996125782 100260751 998114754 121573744 376306505 808516723 891719816 487255730 585770647 468312555 568059931 918300802 971701847 653377671 948358693 119246498 334340927 571021869 977299051 816285057 870937591 977494871 988560165 513781512 784038184 927065229 981107652 840888922 997249684 411552949 883888890 674989954 767843167 764615447 927452964 307903380 534048895 348612931 956848663 87142342 205651809 992053429 997986359 609935118 633753216 129536000 818576841 190071610 278503350 131715329 435591718 598563093 658466022 344090640 688874416 26708814 704262737 506232321 952586465 540731965 591627899 94167956 371328585 566003971 941384479 586496722 726503611 613008337 664576356 674624882 679499977 262802089 418650554 117373503 959629979 525720531 711556517 800353692 816581608 315082184 358726240 199228499 609222471 215528046 344442026 17216937 794781019 171704548 228632445 283045471 932249695 698407006 767553782 545747543 687666221 332086882 714142652 586787718 863975841 271408892 696834794 33118447 923262038 220046883 510481344 323592813 561514769 272569341 975572164 46368909 313542223 11136995 984594262 559419273 563541733 862149605 900387884 987272144 988235240 410824297 636580499 109553451 189920214 125393452 877979376 571224887 827269508 381697998 678729096 640305832 827955217 442796761 790211988 358621245 547796402 965204346 972189047 649433061 738874979 218634160 933898974 371955494 951564309 623053676 764246247 934076338 978885929 497839633 936408612 119548968 460765553 9410853 825665902 158437751 357914539 271817379 982325867 882699890 943137482 173146574 974090882 128083275 671500722 319225036 872719704 112733628 364981848 472274854 739401714 898459140 997280875 383155224 435998866 389598176 759003696 921163672 963511849 525733806 673442969 857982027 954210547 968572430 987865062 790403435 836183035 775762343 911035788 553852351 724106052 278628852 546296319 938732141 943024449 949395440 971236351 52309577 210056974 337943392 641248041 84653675 995101856 671692530 801196133 582544573 712564083 782357753 874750093 238383262 514074233 937219813 992261492 520826317 589577053 900735476 971660621 168910288 412812286 864386520 949869693 481105062 634671441 632741688 792920801 451671639 622193520 755111895 814945056 167513947 509764701 466118881 816352545 330779071 440686364 515902467 640918941 408598649 691049080 606727382 904361435 876604523 904752459 902944363 917327676 681032433 771015971 202602167 711001121 484709632 649326004 24122863 720458712 213441580 943829306 844689214 892539527 751831065 915985545 5311028 616351913 141692101 358979289 399331850 765656732 478779779 494522648 429873410 656762389 229504587 680860211 325339830 619547920 628215868 916386179 863443856 986373723 677649430 795153065 142653159 372353500 818758029 961697455 754824213 914031619 228997599 898481650 126988579 549599631 473159486 726207811 378072106 506646541 777319423 993044993 187951482 886677737 971337992 973755415 236691709 513613846 299785755 854101900 156540137 188503082 862670157 934955125 17171824 739545107 396005701 674934535 685148392 694092206 824686871 881414510 942981664 950579554 738267301 798327792 533355553 935147230 30143644 96480649 987034484 996967987 404315910 910941154 987167473 988819719 134153511 735463351 316607356 585890464 97825513 816188108 155633158 603918703 87201207 497987178 184845994 812223108 476338161 901682914 887923325 891816411 447732701 813998502 718024070 906475299 722233434 986290332 746899760 924075180 1344591 495855705 636933717 772752366 323217552 660777188 206521780 891717568 822228547 999649549 602442099 993216602 583501407 789310216 628724645 652488535 388745700 820888796 12867939 96220065 447329692 917356460 908357681 970314011 395374251 557922719 117958393 913232012 19415537 897004560 747042149 947528697 906312460 961681209 781784082 930555634 282255622 832861388 774483424 922143227 188984367 978303922 402907084 775452546 311669221 524492666 765636600 915517484 589782205 598806860 66496218 798516465 502068802 742658051 596313108 604637861 324250888 995045266 548901926 900415345 412036025 495961028 373550993 888574484 555198950 934971264 379915303 526423727 543234820 815477280 29066417 32981174 596671313 866677404 388371073 846093457 141335408 496745240 614403773 893949321 244346569 956379394 880276171 985260923 473939176 932737048 636467030 731716813 18484307 50953479 754594089 897917108 220288895 898822095 692015881 917456167 849978701 859946427 119070480 963113096 911671401 934915826 704390005 769037713 608313166 647096200 363307450 927849705 276291735 304108244 577984647 791581909 62430702 492418205 647367675 765039832 221557002 476730670 103309873 269518808 620229629 708252131 695495379 945594162 884915405 913880656 508496664 768490375 765716380 940876466 646421629 848530959 176585412 246818257 39484136 328452472 189991309 434754717 720092256 779858952 166181293 314523729 33797688 460449954 193859755 437967131 996214150 999854945 804400459 819812785 518166451 657976769 206690010 352629208 963481701 965801511 164316232 919137716 354354155 423293022 585225157 954777031 291260961 833100215 766628944 934277904 289232419 392464545 398262819 796979041 500265472 589683743 377383334 429924581 807138276 945256223 954323303 965832022 415165143 854049147 242254449 596834278 438345432 513553916 129908508 277409147 589922859 857487933 227199657 731964198 714145390 763346191 405013835 733526264 612093417 886323188 518047946 700034690 667230085 735458160 603534622 863642781 852798331 991516732 447746803 896824207 295069588 753664720 495844219 701562119 130298268 487067917 639439052 779495424 643230899 644009796 681691089 756203181 962832995 981601279 279027191 436264742 289519865 698100738 528910094 721166194 313797909 618661421 92564484 354837506 447249124 687063563 120221801 859874589 289642355 339029376 693192516 945685154 782285785 804453880 638746978 886023163 45602045 298679754 680585982 735869635 916979786 964261517 481373242 913501233 611294998 638394836 233921611 439330979 28111217 482398467 139097914 536613822 907362555 987497924 575715705 981405356 531767869 832592551 393102909 907698854 460171724 964728306 252648340 564040994 28780941 879709563 787449710 938002432 817525662 912103731 497376191 652297878 307164211 473847851 848928337 891550792 15503701 653162157 502471114 885975740 147625860 425806722 982185810 998770701 983639461 995402121 134782312 974593442 221086926 959538251 355996051 939620202 311362477 928884783 912902749 917191380 310560016 411701402 541357711 877639534 806344928 963543204 200612385 459348913 526904941 683553490 480562511 723700808 806000057 971650823 799512540 928934026 760294987 944778436 393838618 890682523 648626197 938383208 23793964 871990827 617959656 986410626 933346878 958056861 779505405 833608866 187843526 896219814 332077460 454766039 110229206 631436260 146754705 765551016 460843722 951501055 967599532 989518239 504827791 734274452 64787412 440407266 962333794 978779551 694709932 874125409 150783898 695837941 598221288 826119003 304259774 390705346 60556745 424376624 66123115 608365665 261942337 668042064 719281169 723200127 485393715 940209856 531827207 677146092 198206338 767326257 742393224 763259247 869648757 897711188 65299574 989203485 786745924 808330076 682281712 706976181 73555367 80787100 177361908 822694080 366175363 601518476 83122282 724458717 638061573 714413584 722201703 953875631 214604367 725791907 383046692 772359923 377204981 831599474 167361111 950106939 696029468 971923266 458786187 466029042 213849271 703422230 343752120 366570461 296748153 407019120 515475756 917920947 996717638 998022952 771332285 940803211 986395556 990776012 906991204 928380459 669846154 719398890 219431514 761782911 374240933 503105462 227031867 665193894 41786606 156661857 939779912 981663953 416882074 644890434 351339401 814552856 303886638 997804568 194318080 578838412 548054805 713668936 929926721 975108215 623602677 807975038 224033314 877359594 511536639 690422307 792714525 880697547 385527251 489816552 554482605 582486020 970060116 970558250 881002221 979984454 297408547 642876497 955153995 976693677 418898395 469345299 768232403 902628148 329544930 414617896 643399142 827163911 625808314 775202355 246111600 880986825 812372647 888144453 586399599 898600829 765937282 897966967 861212362 869515585 66565198 150875952 41371746 695867581 271132462 636351236 370302976 380105644 179614905 541026309 872451754 992430244 906330638 935545338 551211814 611228891 740044140 995484081 186284256 424375605 153873539 600526560 960807831 961049005 298973173 936270692 91038714 766817676 206710054 287868828 56064174 568729454 674140501 944065882 663582772 973556612 418431023 752507305 137811463 392030775 78515555 621232966 128772583 321376643 280635931 394858441 654787072 691746289 252156215 750960193 455822824 565415210 490104618 913951911 418079953 542122261 833895943 883925114 275532233 754578826 234247787 725955614 345754223 779717475 369892293 985463517 797096032 886048042 48281427 565681149 250439791 988989747 352255793 892023462 166954526 983912341 918170125 919555525 484221698 526374347 859101632 875828906 32934293 226774736 234453743 456738224 745276518 885638966 957730636 960746120 100792778 470946700 678868899 935158041 324428428 461730330 802161608 823425575 262064052 822769886 102901050 387676227 637426237 700566477 152606992 375940851 671520007 946588217 22816436 818910896 874169 559512783 839661838 873506881 96165672 340006717 680342896 769228277 74750191 593220058 561540171 947824639 738359569 964132217 411874845 527746767 31667398 523357883 898496642 986763400 352348806 856994529 632768704 822667459 316140873 869751984 814987336 932970634 507820732 957179311 546553860 699539644 586964779 868043496 319000525 664912344 373615027 890129392 592105869 592921590 35724247 250750584 226939672 235809792 839942388 880911519 222287900 228903363 275426319 696220621 33100872 240515552 558059336 708176074 187842706 734100169 257038254 288218032 820752329 954942661 681547280 789710967 626668583 699340274 769893383 988330818 831580511 833962104 279097470 300975149 333919647 886380367 11684761 103402844 57969108 769371885 116794443 446415423 983148860 993849873 395363804 787424649 569293367 730556537 947260757 975675814 977557782 988867878 419203273 564019158 877647836 950028649 788603037 924869469 8473371 572456602 274126399 289052569 55190197 659349092 339074509 576104169 106590253 778345692 431351545 541597600 383508500 818608336 675434213 863794681 97721155 728227941 123401576 351181544 208350392 856050894 650837976 814206778 400635093 670920420 691809652 938114983 292777718 530975892 594947117 753694929 424417029 707000919 41605189 872089608 110197912 753629413 652501058 940230696 188162718 358566823 94333192 99217654 627678413 756875133 178939093 620482279 27032710 316911827 783088439 995757468 495403082 981079086 302042959 645984427 859499163 956960377 726678004 876094186 613708458 963587482 96101295 763530381 556380346 876970626 143803327 684264840 890559610 925629585 91163962 268187871 706796456 939122591 689661593 767887032 475799190 517915874 138383830 480832883 106037186 859159063 697560885 978985153 300998262 539627357 985596598 988060117 177291500 804061195 695723019 911994520 186007369 723748648 620315189 971890413 986625544 991678084 746734314 864474228 719625835 869682936 530527913 923205315 132569820 515661764 689102177 847973928 270844775 470776109 709593133 926872490 675131048 824267939 325715426 670875022 112143830 466072364 77956614 389273750 510448256 969045426 574316944 738957259 975921210 993838889 135668192 207160248 98106092 593493426 955263709 955835455 495633923 946664981 834287841 842436541 576093702 894304258 489327705 648605994 146688594 400024864 653719986 734873167 756459282 935591006 901525394 980083501 971207847 996184702 672583612 684504527 395026096 946066138 859231152 982363945 703555987 765763931 343324810 835713940 961219873 968456967 140992991 517641546 656538174 792079646 123998134 953644103 87863875 947786351 714667324 926957057 99105737 141789772 416157932 927952666 639536884 823229773 924905770 933953859 164661959 580165965 713305947 735603801 339108396 746296266 437073211 622971929 956223991 995665874 881223448 947979552 952656227 955509167 44465242 928762344 78190469 993997267 423020781 976647021 610550862 654996818 378865799 836973024 871204514 933256920 547049130 770570789 44475819 581206590 987420055 993926160 325167150 369555910 933929383 958714846 458247188 548400444 28546052 861858912 631419068 737362111 585483827 685142543 668876102 742500837 950805078 981522390 321952783 785710285 592704746 816383136 455578005 764845258 323856030 739635248 596134728 989149585 502318954 503894043 946257453 970151252 200824531 532281975 854066346 896712595 457569149 479386118 295840406 308345404 183661645 228030774 592193273 672160184 851125303 944550506 963728100 991997665 95985252 123949207 93422409 191651274 374136522 442354287 415293568 989277390 907599557 973861959 540294255 830673513 495083395 568885830 637609210 822781976 960600601 991397199 600957589 971638734 498418625 912302037 166904124 936897364 289351025 763882234 664776324 665257832 35756917 74630351 85446801 642329875 149337923 450854518 305093192 629137747 595819574 669782211 541508016 612311714 55992264 669803467 30225549 346690007 595156192 918773608 446572736 625954033 325599252 548699504 843773717 849210529 666814709 885329579 780752509 918225880 889367861 898661764 665667315 901912943 250200870 317780702 540274248 902771104 423179297 978570467 163140844 454409698 674394455 810529015 392969538 894594805 431361492 854234057 407700790 829465573 691935256 916776170 690523708 966020075 973041339 979182883 571039889 711430321 726985099 776603188 805260499 925305876 861237554 920292723 71254640 795167359 525692152 909718126 801430061 991706053 971890117 981755716 3318160 150853586 956152971 984974376 278212507 560974759 875640595 897486920 761017736 896981927 758329065 897491917 319899420 586362204 941199201 970211296 240149555 471452203 178288562 411533843 4271767 788248229 845821441 974726369 769499721 928598048 684742290 883675354 428679091 497893654 813772218 859234992 349902899 969776157 888145533 917287987 748425652 766343689 677196727 974105092 862681009 984303777 189959558 801250057 51843942 616680752 300595712 953372159 272481902 832308027 19076870 267153710 808536203 959602250 568484976 955109078 824607863 878653796 405004522 832449690 975454867 983028598 944896248 965749130 649881045 890259481 594580517 671803150 419900934 829258777 827392816 890565693 941424950 975267311 332419850 857851570 827148582 924507671 267450306 933810465 468741591 966922881 591609232 890947653 870026565 889333967 254802780 830123614 309868137 584200669 380117519 500837865 427384969 575084091 92169715 535379397 46660086 681937577 406994859 852361368 836214645 949518345 860080668 898327006 304059627 706874678 221432162 475192619 742169301 888710843 996230796 998720296 727039933 728585642 79120809 242456941 777700377 865425573 116936448 841517735 715449204 939132110 441843299 482203599 655487867 661916059 770876871 816023598 642538810 900233079 457926161 731972376 127094871 372917712 236917251 807077632 783794648 917644580 720235782 733149823 435187794 896829365 441189263 655654351 43340019 957759278 814420270 846898479 721499012 884721280 538579236 836276582 327804735 743684574 999574143 999973387 479793985 966031999 540558795 766574322 567912249 863296447 139196635 510143559 694508317 905142007 894477089 912030505 781775491 895246414 618619488 763751576 630838650 891170353 459979724 867180623 479712237 480490373 88783690 722790666 749666246 910701891 57128593 923058822 730801754 963966982 326682814 336217491 996046294 998918742 526782642 965944580 889778912 962967164 217058482 485487620 482302917 850835041 469904861 703460351 757285279 796400004 893187946 924884376 906666469 996553693 678620555 924352035 963965293 994697410 112678485 625036379 173693367 660618544 954846532 955386508 367103860 652262604 565935477 709726414 835444504 835712246 167649358 190563967 990205452 990205496 561465392 607985166 363115637 559663810 102355479 718031022 366993723 612179332 520488623 628899250 530728881 667211272 874836609 939460006 969711885 974306052 363821837 911905360 706176562 944121953 203568074 550240393 82967623 519885086 227880159 622570830 576737668 693515979 841118121 924974059 494450976 654301706 572508626 963108019 444475529 539858867 148020416 171044029 798620614 883805280 100411739 188979099 190404145 844623257 707652575 923666193 28309246 649285144 542334466 902725434 86545513 452059990 944699037 990967839 201260072 548516328 720791533 870804497 506403415 864976463 293018596 724129453 848711302 995639436 489626794 565108309 542257499 618942303 559674525 830246005 932798016 979889231 67314469 138687361 475003932 599391348 726925734 770591562 794021215 942642518 3333210 173426672 608999423 847772516 713779257 818346292 653874868 988600822 475326288 574019958 877848643 916319393 425754746 961338168 926195711 942684888 892369324 951706101 678334830 855960902 737551364 946676907 464309988 534648231 380142758 794376986 828989585 833162050 1018339 208401065 996003564 997868439 795333335 998296916 135684010 406263552 797505406 968127195 745779039 889492379 305302484 720899875 5771062 861845831 603238681 616648592 378658451 635760065 857853416 897763430 339349357 522795107 981231375 986356214 408773912 829751724 344566232 803055895 670279225 735870354 972051878 980437804 502279024 810446169 406286699 566490089 673832920 738409092 93264970 457281519 575603516 826735319 261092585 382894850 920565096 992065907 923155296 943093249 137270887 564462733 78030235 574030989 539928386 984443952 939842933 948676683 237123797 874172126 714626556 889540164 340070495 682290431 479375425 598391287 567122714 791180851 1319839 579319885 489064421 937566765 443707546 963041786 414279269 513855673 83243499 877397710 139144152 495334561 940124783 977304195 44096201 746821010 83129272 954942103 29514222 578465675 88239727 251165439 393905000 551651046 286771640 722786647 360995921 444832029 532816076 638998803 755501677 880164768 98993727 827839910 414237738 805467124 636423186 821615870 176779653 849269192 972764147 992860679 531332606 532468799 27088607 957786758 790813972 921960327 521948901 969114816 583728502 958786320 984868944 999084926 916514130 946789141 812491201 921285344 816569755 888398625 123066707 253189724 896810916 975057625 833958315 999603874 986325033 999528789 31535253 933623179 819702243 981246432 408735965 517069771 218265349 566175089 990309133 991600861 645269765 803838860 654827878 863746189 663688059 899868628 779569868 868216314 971943689 990640063 6264710 512385818 496638407 502974884 405565327 427842967 178684007 895281149 538639237 792874964 970276857 989748583 842918376 943865540 831257904 838323990 886465782 967071984 713689971 851154564 705070386 870717389 445756161 616915068 780783837 986130132 800587572 920075152 151324487 768887611 489951512 806704655 331359321 908460951 318114635 341367086 325853146 820058998 781608076 809997024 998776024 998834176 263222103 672518925 793698277 958399117 466153932 590807051 27260546 848126393 639189952 896360397 983541429 987232903 637364153 754454302 705414516 848407712 430568976 768370138 931345908 993003073 727614907 911849524 624689371 881329413 825172756 973027007 258322944 729661391 670562687 904388523 712056978 909267908 148965659 175260608 781783132 787004815 6002506 154839652 528881273 872177051 813043666 850860565 584994518 817228327 333813955 605242748 235790279 424216188 877503762 881207090 277183715 685173104 483695110 789009162 725936215 828728423 368228093 445820966 941130851 948629588 791903705 886618636 861754953 930393166 696805587 911150179 224827999 881104820 497357972 673233999 130660018 335843860 473625113 726161879 667078332 795301386 608500586 758189909 690544764 931880323 165195723 353137893 120149281 821951649 934976722 946790604 71149924 273430374 286420578 965786208 815652185 829001610 730524149 905643743 209799884 756532328 919656979 942028851 385994771 797563112 274977502 687419403 662461143 761516423 832678705 898095015 485745844 709540097 590598926 870923391 407040784 670086079 197968492 504065791 617460459 669719060 59489020 584712472 260906154 406543396 141569113 547383575 78788961 698551256 324297128 550737473 260051398 758980524 285333442 348690488 561395126 930165875 999652254 999709403 134711558 269892842 876833470 994482701 620071544 777309579 171132308 377383612 873410762 951433739 70885830 738992795 566032991 713853817 70322299 963148303 958243164 974346374 274025611 884897373 525073833 868702830 451603584 740550021 940800672 980157556 955803327 989148362 14623745 175736200 510160315 524788433 549889533 815182499 713336919 955876420 663838081 829626297 512588556 831860935 305759556 942634352 566099281 924566553 110710767 441871139 467603634 508440071 463702467 740777613 75853526 892358764 763077111 893014668 713148913 819783683 85098580 761349076 538795712 666226562 202025450 902524987 934739913 939029449 243550983 381220957 10325130 506447760 116967666 993907891 809408459 816739696 583429134 584461861 906657142 940215273 12560595 304915589 816490336 948648961 429710305 832181708 768401760 990743829 56369473 342706762 183108248 211647615 72439560 842661748 59484760 847727114 582480761 768004075 258457285 646148732 417917293 468792800 190651116 807770517 344547831 855000937 456003743 576965031 628456478 809424521 617868801 825170279 44447212 688281251 412722786 740088657 632029911 765294897 338466654 918128353 296883735 762904442 411713586 753854626 50420006 193990465 1817194 390072472 510733758 736814890 970211978 988142042 681856267 968508104 65243749 950488082 512034573 891650040 613430914 680322379 541971368 849802094 844316139 897515168 866634038 972962091 304843418 998504576 425136939 768074018 586624485 601134207 482290356 600722349 89457564 562044534 545584672 864496048 319439587 428418263 267529498 744405737 240417191 652419405 281738219 552872141 507011433 842206169 479152578 817841282 545067534 941792798 544119236 689369347 476933823 888487003 477176079 910362118 948079945 975962677 253758027 946442453 553831338 724749450 312597857 546872184 403739478 991945701 538228781 578556180 625547240 809184013 381898140 437906058 845076326 913404536 797483994 976991933 684700310 846637874 473726543 981391026 265175567 622615657 930351297 996481103 73343557 959342411 946183341 974016891 247315660 772311079 548358611 767891091 663461140 904848083 419517542 781629512 283988731 375525908 687504560 964371288 667308830 834511245 10726806 22458448 555155105 594397356 385611504 969240628 730913320 881450939 418621040 678648922 575562133 774507154 652127304 811786245 923022456 991303984 703939741 815321160 750550645 957278283 535987536 880916222 284757233 794884496 948441902 968530178 667692033 888253249 252258268 970902585 663065206 982351066 371094287 795344718 968233499 971222531 315055939 601862401 746498746 795652880 459440142 661920447 743507698 777636475 543056796 577387155 400807849 508045723 101415132 937065402 841616585 900897545 964251627 974095526 718239240 936171249 812886050 862543007 329404303 782924665 927771977 936642899 634907333 953798509 352386199 479174364 992892606 999511203 42498720 784221093 837208128 838154097 137651812 931234295 548784219 694582217 482833106 838777412 219591933 297469229 309869580 918638547 874082255 924580922 167930647 716493888 423286711 798750999 974296191 975232138 939627721 949250297 999763293 999854700 309236318 330285899 713294891 791924045 563174149 639811660 728204692 833964177 433475830 614506001 431147256 940545337 272257797 436174686 217196384 746918307 406523235 963091855 175261884 456823136 825832922 911184699 582460793 905417720 373134982 746739102 969252270 990905318 75951270 466258550 79497244 825507378 345612488 356890351 699806246 924011525 374563502 580449789 379050148 590457985 879423498 953896711 355053078 766040456 580121315 731670079 494893658 977644725 258228560 342421023 346535775 555758923 399211020 436933914 187387434 630428347 13754879 72632934 39136415 280854135 202019176 715233206 890233876 946880694 75370284 379918058 332998246 512638935 295745932 400514765 455405155 769729287 119527563 299026218 415550757 785105320 159764869 332091181 85185974 726918233 420283035 938333408 914193781 934469188 896922892 898583603 75198068 719815566 750088473 855868009 326485635 393544500 967286940 994961910 562336528 651410927 318219172 931145419 938653310 985630997 889210913 930895962 308897335 619460906 542532652 605909868 631032870 692686681 134167958 961219045 929142825 964637247 823541105 835028857 536647114 571524000 83172624 140456657 696451236 767354818 684276220 795272217 967413037 969979287 445745981 567417898 841004076 869537163 759001478 918892707 960761584 990027136 647225404 670278764 277084676 947745898 98678430 958115861 942803248 966599957 560768283 567393742 547616141 657764865 448267923 987557309 446531876 523485254 791331016 953936729 424972488 584115117 242280003 673008692 821294981 930228555 640118428 940389424 348122311 513772031 854586587 975663386 147737298 513120763 513493579 715181673 280085655 995275328 809810896 876739740 759649261 827701288 746666851 777837409 312436795 625592966 272863747 722977131 414644782 564149730 640200790 836092428 133151132 480163127 830437705 838053519 13999107 575645285 544331700 866520103 1373229 629239827 23925262 409196335 580220475 626956876 42869510 604254974 702939616 981541299 342504632 966506488 388092462 866976301 952812138 995475027 715983453 944244752 922211643 990453326 308364923 582050281 786709160 907774928 258711478 413266367 290611700 661507458 764879959 959255909 820532135 921149800 195672992 357871032 54035901 354105361 12781264 939544708 614085335 777124770 970150352 972049549 355941636 596929383 244726336 614687543 680383572 937591082 176779101 202663594 300492455 420028049 289401852 932048334 970337599 994576180 819043915 919643667 866616970 928007880 534201926 767611314 30209945 870734361 76357383 194937609 87263278 161436317 297893082 298278912 591735372 895211558 800985574 844785357 554549793 928492350 252794947 975174641 885872731 969483479 845365708 907686824 523096692 916819102 263953563 681417410 601343415 840472032 30678296 76421081 631782231 993716025 395667886 925377152 869822734 922337567 88584076 615507105 590454174 933230012 200243923 768218468 663519899 894080630 937980074 973563660 700461401 809037608 903740425 929394762 589477229 925313758 985549919 986491985 265328940 839865666 994668295 998303050 95170829 404673360 711533798 833007090 33277746 817145886 767534927 797522108 189275083 827417588 624244286 706203468 170290205 188662392 175809507 415365556 949306188 997879173 117417160 389471952 891053021 983505958 384600936 576360584 714828829 814948207 152087316 747230874 125333748 135855968 484039235 549193772 488805563 889504916 244475155 732913978 105493150 255323212 23247835 804964654 503407750 599672456 833138362 859762673 193239481 393976581 722944284 983494223 421015848 629268657 291701363 315872472 927347497 993034593 654987896 801877240 876612022 999738607 763197834 979900566 886012924 896632573 419969143 826648092 544680185 861473246 845995763 942824262 776499125 964477475 300863646 414063178 999933433 999946474 378275796 409535795 228802106 301456532 574311398 801544291 506544555 847070503 227635989 562270495 637101403 881630624 292884822 771196548 548032958 767544298 52799213 401924620 147651796 886309999 822008317 846503582 129622658 498615253 113533333 425495739 934662989 970180102 568701681 669848192 822998156 970867533 21229724 232113997 61737062 726125083 250867837 724548542 116067364 830505214 352700738 600448961 375182048 921440119 650722124 973723622 882921112 940497118 205105036 469536851 936348132 972036214 789313413 995800511 311437954 973890456 327393138 880586533 217188618 288952895 533504780 614327816 419740016 896888174 438747220 623373280 94767194 490069248 989480639 990439252 235342470 671609887 944841868 988067840 784871257 844683779 266861523 445386069 301053120 719158348 406215328 445904592 685255200 906288088 431854505 899102236 103453569 304626474 466089521 746610665 99300570 723576722 240838452 770310126 935692027 950887753 387400355 686162592 272583025 841118422 416101248 946553734 222887846 412510269 291488050 832687234 522798195 792713235 876158187 993473656 437731438 518819805 518080216 889007046 869199779 888984324 790515666 923521968 675557602 850610379 403311047 881751163 66038320 120433417 124469652 453273774 21169357 294236875 152640378 773809255 513257451 612752313 230046306 353115372 228623636 949628299 511419519 692266505 394927188 874782416 536260106 571975321 469767708 582836266 570623935 966427339 827152855 894480813 624031537 750288776 506386013 871581511 458003479 833856898 502590730 785750081 471289779 746064593 105857686 783825868 208621053 999641368 14399303 728873501 22732877 649058563 109994624 770606155 323631088 773247889 471055829 874257677 612768038 760484454 842256009 848915461 286637206 534163974 246429789 963797836 387878326 668744092 566067852 656471134 46238465 228148741 792836151 839070008 271064607 288419413 303605467 489973831 382776613 647690239 597228858 705658632 236179528 533674569 155052188 604401948 587674604 788957857 703339086 999868566 973436964 976093949 29077837 664960600 563088924 918217732 212527045 700230480 513672988 836534767 122631515 823232697 614538677 988065313 348161044 430403564 141482834 179090361 890532849 933901760 539421794 951047669 854734327 949915231 129954506 517184809 244533551 263495651 116866202 157388226 383709204 937014532 333235546 423892393 813891625 993222100 406831766 779933006 193410407 320467107 876159869 993827167 743644759 787784473 660088867 963613625 427099643 439418534 77878841 814170850 903443584 916502701 772124685 796318051 398404908 739782368 805936398 815872679 75677883 668285515 46801175 783071335 461326193 585075762 266994143 283318371 305712828 919935568 397491277 700531164 432496418 886124509 23274390 473808250 962173439 977122364 602807416 739250454 343158875 447426438 534902165 914395793 219247104 358124373 943358711 961425864 347854690 382956739 473309799 501004192 651262495 665248969 492860397 531989361 873700829 936789267 713109285 970034477 420655509 535167758 554639621 963695794 262049956 979042752 585996666 622721896 353252594 373813452 545421562 800709159 41883897 87299636 119671823 495908914 122444160 398898047 942343932 996930444 821426700 975493402 833045733 897739665 250894120 377697970 113938401 314553763 748577698 814009142 898708679 937344963 824138039 864770547 467854842 635697819 977526713 998923639 97377053 926950006 124236918 240121770 218467682 711884699 184211417 341223269 270896854 537942192 690254598 736482766 693953752 790221817 801512283 813473292 591770550 947458882 991765156 993862647 809798777 897365850 79995982 992977351 597240665 799638406 63097263 250888285 145211603 441038040 117355408 209146948 730477570 858963136 336843886 496576097 448603700 467939128 95979627 647872200 832930349 997179479 763374160 824358875 54182632 130320905 571614399 751506491 828441700 854135684 368618627 920434725 210827696 997448580 928588062 955341972 16080516 576848387 198522418 251759819 718170466 736206141 756447588 802508330 989136494 996733054 716963120 918761671 31137867 737648601 777232609 853059533 553723825 862755652 23306650 943890542 213735745 925769857 163768184 680051413 210638430 600739284 875527791 896429668 361158650 514780850 725716465 808145676 785995026 827191884 585625163 970697857 580265927 580437432 619273671 881173226 477082687 665113188 217433855 584514789 307207050 475118477 610074846 714608202 429879304 921087223 406738423 949170039 327492481 586514942 141061864 383783794 906979875 974159934 945574025 976604328 550711957 926893584 357781160 713080193 29916483 939830035 617074047 882982151 250022469 527417382 144270534 955613361 330112343 926181511 533685134 958600069 169854522 789439266 841093553 893424636 920762267 931754827 10454067 240454816 65580477 257283398 848592907 914614206 821367293 970835468 732527684 786574089 907655312 980660339 398630993 663265687 361734974 886041418 291858554 674992031 281825907 450968316 705912153 939494556 703002524 950871977 200197296 306240273 244058250 309860885 377628948 705121140 274697011 529081021 730240316 814298789 787448431 884555170 346269675 422611961 515733526 846994938 2930539 414059895 636979816 735964317 200367217 561241416 253425898 613040662 497107690 592695365 820865376 852010410 383609372 866444164 63186835 324693782 941842654 997455063 8938536 916830366 715223945 913488762 323919098 893120012 97328393 125655741 702440576 773434797 702083894 715318218 821913952 938684149 946571455 974219524 828872106 933752496 832273649 982693834 49750448 847760121 45406275 333313052 829938350 862061902 137763763 425753332 910539274 928088537 61055332 687850387 514028518 596009352 429633791 720621625 557130134 600391391 758914927 948546588 865417804 927886257 835948081 872350296 790296041 897235595 985374344 990681695 262959543 465190904 681465721 881233743 50008787 561895195 935044426 988590162 858981276 865741233 178866407 476415055 78799579 406883377 146726597 718187948 527344238 954070793 47436318 229585285 678809062 941430607 276268232 816968957 44768982 620974278 273946292 437126863 821673953 919302509 400635647 981420267 302729553 730215014 259637994 453939444 383709116 533071038 913145818 916853691 468051149 894748369 102396301 137896112 425997565 552272048 299626793 385234755 239216246 852404183 592503066 926091618 797600934 846457018 551626077 815632348 466937378 928992450 762831658 797477480 706640438 711654621 237111157 345777599 897055622 946096496 121949505 149825043 390665145 405542130 634794810 723469591 800753580 863788402 757852758 955183969 659457516 901571825 176847873 271771940 669678346 812567781 146577880 973257764 371951116 573028509 32119115 416205836 442208908 605457179 996233583 997797605 559915486 579151565 783393167 840153434 720077252 806138101 584140809 991274853 285590010 557173233 644948185 935782171 47559450 825022845 925602615 934522807 297503884 871228123 91835486 349010261 501475954 995752259 295555107 680437418 660513520 666727345 597041155 690878110 278900297 591727919 985759432 989447288 750933465 903330895 376495591 601952945 993369896 996183140 950523428 966075732 884636107 985441251 490167994 985561784 636838630 964806015 498931166 952285711 324433284 723566265 745018356 862381878 815641283 950549667 4341766 162015981 365988153 746593149 338429176 829905182 646008228 751931039 1061922 707519488 438812744 506157819 170746079 410240490 773538994 862635353 147649585 968766223 378719466 940950323 890685641 899054021 338837438 909247067 460703778 888229028 338269951 835001275 580167224 719656257 475952758 706162597 980113839 990035991 62235093 172078822 586497713 636318053 106149091 889923777 761041678 806657343 159472848 205361900 213069024 768662242 434653151 879010990 404748333 830034509 236906097 734244418 326818400 427031978 205623311 391360749 396692761 824031855 383243054 824925378 305946054 545496973 273583577 285130285 324257728 631209603 77843930 626444349 160462062 805195432 447789225 629702377 827125821 981089301 969691923 986896086 42453844 255792968 272391991 968513798 985772000 993767618 775886563 860826925 951063182 999957891 762346737 913568415 190677012 895002686 549212312 744623469 650181140 652788273 295716609 839210007 785789956 949547844 834430257 993451580 414526473 650433240 399241007 971183167 274663900 283312300 580400398 798416258 588580875 909927673 280197807 561253848 687538400 748261108 367065505 377050662 790874953 882886432 889968125 917154344 441849673 894867139 865460635 912896596 750997348 995645166 295060352 605059241 355075880 749137498 286696536 535404678 863605691 942795585 815288436 925641732 478791152 815070902 359998979 976829334 843295243 964906709 211434889 383018423 897453352 914674872 174144651 565352489 548518640 734909616 112681792 355792498 841114011 883421545 554569261 883391883 697868253 823862102 20295478 755343102 421331851 421649329 80705607 193088280 93159747 347664476 839790725 840603918 738071367 797847721 279659322 514434931 310487154 652697862 783938207 976698734 243633210 350495939 91087766 577066160 622775757 830450281 841427391 861369853 515841180 775425878 913084266 948772144 495167889 832191997 288519252 992861136 187601166 638491627 265543706 402425924 793177024 944857966 682639045 963787445 87615011 909334266 159661261 698966034 390926216 400522383 454626043 642804883 969352084 970026200 357816914 807531701 953293086 995072693 242880755 665533992 515034794 958623160 931637787 986485083 947239312 972987067 191334649 578424718 465756866 868834380 508760804 869338943 287843044 710218565 963522475 967539954 18249164 895307752 356024312 860986362 527952454 547070367 847336011 862669418 163169041 669143867 503413309 923855480 124854451 256472491 180547297 943077577 928498734 948783245 544004819 997884332 837316785 969978631 995088385 997159207 590106456 865988839 319556880 836180817 989544235 990756893 359556340 765887119 83783516 302255549 957550764 959832259 82399803 966703902 921035495 959995144 968873900 969121904 36226707 218280676 986481783 996305106 520188059 646970362 625327287 837008969 444050868 498536789 663352039 779278568 788783408 835382955 262306987 569733337 79668212 522366651 692141982 904334229 696820636 727923498 647148967 996491788 309860427 875599917 720282357 948416363 741045030 992949887 822967078 864437180 787385792 815577521 448529426 762883578 269725625 354446977 243521417 386943227 104518517 457967313 420745861 801397219 232101124 587752549 780867085 875598182 819922161 924458463 786886456 898089739 706335801 829052387 103198224 129780459 214147725 279309518 478040841 620124058 943478702 963776624 630500612 795735185 148171492 262393407 708955315 797772422 178141480 298824850 90263307 446723485 479235965 830157554 579390357 867419605 745506616 884883712 96370589 851481570 321303938 690207650 5846455 537494016 296661285 388686764 210214569 916090576 104391311 265729932 47037903 560502753 490577972 510885776 797461550 925706428 268019084 562505862 778232442 801609283 383955802 598914282 743586595 993909737 300844365 750734107 998906227 999113319 273635916 428432678 325820528 338331559 410780538 546415052 867600147 885309917 267291471 676258746 60416130 448736342 918291372 956369425 805782368 956770416 492915373 824886849 308551899 840928015 178038717 861225991 903884179 974237389 258047690 312605543 493007360 502154507 662787426 869824821 996309473 996979610 383702435 949455357 231886405 704704770 539843834 895408122 13278884 410760667 843513317 902821970 34788542 478660892 733975423 917492890 267954185 479957032 838312590 899140917 33466841 871724784 863533545 928495641 87146674 774421344 897218805 913798381 950253208 996159587 241194876 728393085 657952309 827606929 142626954 851686564 594622744 764568844 371139502 483280490 527436435 775384089 625046168 654822106 708794393 983469204 340814808 560038527 116081533 674721786 23838180 425582989 763396314 805440813 778645418 977818356 558604542 993489288 234043856 310833853 825791016 963788045 464782062 709875793 238039577 958932328 754778697 786969457 991771801 996313210 514832012 743929301 461528196 480906327 217376027 282766321 454614968 993381047 97843052 729710651 253192771 427944931 856928874 914144622 74473012 509384528 465266450 728146748 404163364 724021105 608372764 862890337 824709839 836445853 810362417 897506999 356215820 852845014 812710124 918586903 205943570 815956013 284865098 556434123 697697970 841043557 388122837 417065527 800105528 919913049 498870823 872206582 791189486 806894518 950762996 963759006 215337800 601387327 430422636 744350967 309748731 620903824 449152948 636600971 98530629 537597940 904377113 940175491 252642981 443553244 667960993 713192110 890217620 967888009 665076935 694863421 229398803 658062574 852718732 867574702 191382187 869509645 139786455 826320302 142367953 503145203 308366408 875883079 261350954 399655107 620691353 675201906 947985255 999646274 626883258 763464197 412003737 833416093 598042197 709443299 735942926 946552668 190020959 639478985 436088393 506259793 777602340 981874230 114677352 909642858 580050767 670084612 989549717 993023103 784282509 975666592 981707994 998027559 485650995 993108500 712325327 937858925 726438967 919339383 284218006 967452823 76679296 634498046 324611896 652462150 68775885 540239426 312900486 445833162 119872183 300616088 301956288 748083234 53362218 548131322 915975725 994456600 291917829 912245659 391567361 430253608 360835977 409002376 750393766 794106267 414493791 498499795 407215532 418964963 384155899 823307580 127046742 846141746 934393875 938147857 990901759 993211639 100425210 678584632 121751154 675796369 375660577 462756096 612407303 864615685 901242400 928665864 81839043 250285306 640183073 822319220 549105177 971962829 540842624 946349438 186055491 360630238 665243424 999480503 882350452 960567046 960000940 985075099 492071884 982877885 736423518 868957241 858391427 931548502 87020245 357790402 553113713 606938186 715738990 795993941 389186813 693169287 129820947 288184561 601936773 614688712 710221671 891214560 505311220 522824837 51659111 577969363 449740761 565749703 703563033 821654556 611855489 660009078 262887238 569797981 11487836 982077167 872541836 951672890 634764507 890982944 787937005 959635388 579676284 825069236 440485308 825829697 6680853 927518813 742896443 946634720 405136044 821705033 238908301 306858513 146790829 798945506 649824983 709758137 406904904 607238531 113727399 170118092 125910846 874727472 982464113 991756846 999070478 999185956 3458347 642048196 373624657 462750935 358443637 757082265 772180430 876049777 19942962 392227959 409200046 420794092 105632362 336355053 667994121 700964184 112167810 598944741 255198907 983858639 636296918 883399589 656669323 722655942 273325399 924027729 889840374 966829394 447244277 912742536 823694859 971186623 731122306 859673937 735059976 868704824 391769927 983443832 492863515 835889425 947061324 974626279 327560724 961328651 433135586 586941441 840712803 997053061 13520162 747766008 818495362 895894580 269115793 663362260 124189307 494402177 279388933 714152994 899292553 917889157 656325924 911934311 290047997 471147305 941383640 968130264 471454467 883465577 864664016 934953186 771541369 840189135 472777500 600738495 580963519 763882897 189595210 912709689 459399508 816272337 490729949 688436825 197073968 657699723 28871713 706456164 251862566 745101167 56834266 129070121 608419636 992931681 184354506 810833257 726417324 973799597 715149256 743105331 328012644 757809022 573686808 776843703 687436784 730822708 916355250 924775802 645012298 813928264 537870214 874604988 658259480 846550228 283587655 339698551 29619832 586420526 916482629 917804693 84576880 839612041 852584311 916749070 242214489 861574035 27336012 194186215 503056029 770775056 405249915 833285312 923102803 954395457 285511457 687278615 987987665 990729855 464143667 804848346 86766776 148251193 129997585 359588098 697764003 992650772 595500484 970903632 340412938 684615980 274379648 733981596 318255951 852546325 864409483 941957396 994241697 998792013 597849338 631268326 826385303 920355617 44430792 289324513 484888095 627155346 867568266 960581788 729835657 852618744 25027624 481862895 828357112 878861413 187773439 787313050 312279115 929801923 254083215 420940989 167211624 671673399 380540873 510512789 687945403 734598557 895661040 970770486 867782535 890739587 680229150 964867928 489550243 677940031 503084262 733755503 706589167 781278825 602004430 811275863 32863496 632413285 845182844 922883210 474144370 973075455 160978054 241613870 46640607 183596364 440018210 776284442 224830093 572722322 399766301 830864460 597625478 889446745 505288576 557560694 823211045 997621616 942682691 952353056 460482879 808493559 229141744 350210458 629082630 891776772 22185268 116077942 517644899 647122260 446472072 990751947 990958572 997556103 436648879 614689629 886811533 952200792 180914700 905694519 580108218 741279738 679040115 687279030 481088196 635347415 575830910 694836571 291360443 914505814 900154696 998153026 257551099 985923700 146367170 867459879 702203034 797667408 972784542 976820234 573275354 882006572 434845236 917211953 301441452 517016561 833732015 839016433 270662805 282210214 737280195 899663515 302326187 641921038 964247114 970594718 165322200 441837599 549095971 905277036 489648726 810902052 589124141 985805169 82253234 898112817 263030576 281598368 912018983 979136752 826067833 971738922 665940039 728025355 973690999 985466775 181451348 699709050 750125937 856276586 485735638 650748452 876265709 908845171 814313689 993017678 4425133 944740353 569549490 897526464 354211479 764154633 627352762 765644530 76442449 738807461 24600883 611499436 336110127 624205138 330136744 759678358 487607700 958171144 405019583 638623170 323795434 522410139 278133463 845360807 162608207 401688576 411955409 522848137 203168895 595115560 257609407 629839360 285755911 734631885 622958292 638593190 592743611 922473929 455795582 879183197 359483911 737321847 78354775 192959276 320241971 552135886 317567204 563564048 804193812 976660503 80170733 209585358 60999017 701482671 566981606 820930457 441891010 574625116 567609271 914404508 993711989 998384324 205503761 716002813 92419340 647925220 76379446 775646440 864925022 909461692 794293745 848698833 707077162 956320493 640951372 756700340 265552554 773715245 986225738 998969892 891848025 932017716 220878500 453894065 220003369 303514806 4677369 823369477 285893738 677634257 451449115 662958690 727317718 781408207 736891940 886594464 866378747 956303597 538616175 661513853 926484838 960695859 460381479 695007121 951445909 955660620 145167418 276221872 462167025 462923493 274880446 959813303 447105779 496082729 973317196 988824255 894560665 939834345 524000410 526875326 698405463 867627025 68766365 438005772 834304463 839309494 278827217 612318735 914488814 941138566 444457671 529364706 847836508 858781177 65942192 292530891 782513619 886569555 715869695 940835773 930689634 963867653 334196972 865770812 329752881 789293017 305361381 708279941 871996464 873350882 221385851 247477800 252464341 552223028 859274961 928617468 587499948 936443849 875266722 961018162 220730382 615546687 393447546 521462675 579898878 789183263 764346791 993522200 719789247 753200057 229682583 844048171 397272298 710204516 965642281 969053034 488800126 912214564 150725681 443477431 654052963 777636506 447598336 788859341 813949454 925939187 950139277 973661649 654975324 950235951 338790838 933758390 670873159 878932179 809068854 826248011 374179461 473877565 883116536 954621570 697322475 847815310 977192522 978511533 934044372 939036103 372614170 940193424 886825309 896153203 249668427 642443253 103880393 946133842 747521947 934420030 236660350 265288797 876462066 975288901 300519826 970399188 183219962 697805787 205653803 878523549 229623594 555529949 971043527 972200276 409244109 672649314 117008547 125876409 700075338 783840799 80284987 202396721 659545811 842522749 596113124 642304983 498301391 558626875 368545430 630929485 80433683 469673905 124359413 575890848 938054564 971581566 635630868 659054277 161317205 971190124 830760447 974260421 177484906 581861885 214904370 593350892 578534307 695535603 535402353 977511820 905438479 951222442 47620693 709114410 725393166 892721781 671182439 911243424 868254112 986041574 894616394 918024833 727915953 871948477 548294298 807916446 460476980 976679407 7799270 483824412 155523486 717859026 249392241 986774184 323883347 977792128 79957351 283638420 93055222 266973879 532674452 677973754 532834171 643499325 575324141 931052526 850197824 862994512 188819481 386773830 650398873 775183089 226227780 955772922 970614176 984434773 492781139 832004638 364959488 742192755 997920555 998814181 404135112 809078989 176601260 348954793 823279068 914406533 131561207 777949713 521022468 681218912 164269215 348843211 629785339 860763451 851902499 982432945 670041560 755774259 898943327 937478477 158115792 826002038 623318963 759899098 864622038 992123721 939752538 977110055 573963866 834695649 823407858 864975960 301726876 638705768 360670001 376995876 9557238 403205867 614126462 623683276 999800537 999945286 48794712 198655034 798425758 932289669 864948634 938286327 427972856 692127295 450540529 542846396 377769990 570048274 135661891 399012172 508796224 832781841 511341963 915662641 227884235 823222260 238751003 472346704 786219071 798729253 945378855 996508639 972948153 975629966 334444898 613001599 919679464 953531500 548544533 853837347 527352201 799691980 470532920 575904344 566014056 860285409 506190992 568702926 79369740 552362723 841787071 899889947 227760026 905905642 68020979 229329301 30603704 982464756 477650502 885982841 207433111 627107064 546483455 837968998 693346369 865616629 768296585 926974445 282363327 921147936 218620580 319284368 748775167 838186821 472546224 585777209 172291457 910289579 961405584 989869101 125981028 492109837 899880229 944515543 96895695 846462598 109322394 307069951 442584870 750210214 938030797 968371822 446825682 656864398 13398945 58153221 154736473 840097546 288411549 586023305 809915727 918447535 369900821 889792943 249837765 861089850 495026737 849334285 472345115 687411802 749370705 913466913 210348700 931005332 347939381 513754620 86492185 862968336 231151687 623481448 946465845 977875960 101667303 362552707 220654729 885691330 226041930 528943807 557628311 704332320 695800026 892887719 590141347 808909039 558191451 929352591 62778494 498301924 450139681 833268162 84197458 371770114 925396899 933190259 287822588 287870979 856350092 919508022 983254084 984367162 376888626 762094752 735405496 782784855 571598460 908664831 404746590 805264061 962803617 991810097 283188531 623840366 419137297 619318293 314967601 647899211 49812148 585091667 300963054 893680242 512019789 958975171 329332291 802809147 775415218 852276831 313671137 599615006 42890534 922754116 422488254 424862985 581324588 899677873 452006500 669861783 944636914 969253862 442284339 875421179 802561213 804665611 870841481 967451135 586938371 677077034 651549578 669867334 858766773 924978950 664336889 961125466 605103026 837091029 668435434 801421546 152536942 964122900 146107518 161924385 388583690 997406230 246170239 281425048 554781529 710831523 441446544 980427062 494295477 907841209 379544135 966741158 685696616 747159378 224093590 318482745 255604852 602265685 985273714 995027270 310451484 416570032 966544259 989646399 665235584 774722570 303100043 621469184 956891538 980001963 760166033 971828765 220990284 946788347 348751000 899475145 979173205 979643544 208624728 311685443 310677357 743083214 179818124 918132038 539424431 885000320 569756724 903837401 875454409 886548653 400570986 401071368 754142622 859931283 172051097 322580390 18972884 735537967 624008398 901291910 448828314 662830607 710989145 858115736 268737807 737144162 134048025 525758298 464672865 783871635 101572527 971431929 440723677 679077455 170355925 760461463 959408129 986126226 282050251 778414921 239334515 723928244 67018712 467236332 309900877 820705437 138398444 198717159 538057686 802311362 352610591 735734177 641350101 648957567 464694303 785303774 635991932 745946601 211094014 835323287 56764065 674931338 432305393 488609165 654152401 783114770 190184334 395550385 378535111 774637084 291035934 579421587 614495809 936479814 296302348 380310712 180267162 725680295 213368778 770769131 562805880 915006625 586300467 967637707 520613254 539051916 227820615 467175980 997171883 998107504 354294845 636137348 437837387 946697054 701000855 870271822 213408603 722248700 606365955 749380968 607221677 889097195 811248207 865036509 430237649 827536141 878740332 954139879 705793971 718235232 732330470 769853642 595936928 813203233 268306133 346089300 362597079 884371468 749309627 791365574 546952203 622988252 230953005 900052503 853464564 907586305 109082828 745532325 445464065 885651427 498541788 750216788 22950325 566590008 782106136 980904185 273032012 534335873 512691345 822267584 713034449 820936241 602797273 834323472 847231290 971803333 432368066 763392930 946143806 992408277 683791982 842874999 994546392 997556126 361177595 576412056 153208071 701735242 492384149 776249037 18917943 764681377 802243320 852561599 36888106 715866561 251023279 265440728 699642245 924239639 523585257 567417030 122583503 540906944 606679808 886995967 898821041 910216592 596368591 745200212 329722152 940352296 836308443 947721636 191068020 953569284 917458742 976345697 181944829 787941444 23971542 224009508 43162505 667744880 742897316 871940603 40067178 151005071 417621477 782871461 442798806 633394096 461229345 550149995 704046523 910551404 434999870 882850016 82724679 836483929 96451043 685564866 91761037 965020307 238404800 397580502 569762246 723036767 328518960 853067996 334635122 570985770 148724298 443037847 638047527 880665872 319437541 355723997 527858935 968669528 720245135 860084611 37589178 405725845 589778156 968300239 139037407 906172696 897962070 991795560 749022845 997933564 47453718 442874052 235142615 990741834 484437985 704131485 696395423 713624487 145087601 472832968 476245947 850550939 72995978 780368339 535290251 786995538 596652347 924081019 263857313 988223044 850043938 941517333 742050970 881627278 400563649 799613868 841492504 873994488 678354298 864148924 68743538 85054103 535670346 807002418 605544493 872453655 888953409 960786197 576479399 726624433 633489864 926876983 310931119 373867648 743046887 908830102 934190510 965436145 407692592 607917868 670010784 875576934 756316082 765495194 387375986 720707524 314603377 848976344 47418943 146573144 795373236 837938673 47887644 824987849 171720826 988053242 983658196 998088087 913760716 934037315 727554489 892962207 644481305 833286808 497923082 556487594 102195151 581058191 229035466 458275206 838924858 997350068 800905940 826059221 907239152 974751459 541214198 632613687 50892114 277254427 976899585 997040748 882813305 899246642 580043370 606388125 572710822 952795042 391489339 393637776 115883317 802592598 91097031 154573432 129223472 886359377 333010410 417042584 634930779 984874688 483778293 716920050 155823238 379245431 527456898 593440222 438267942 640395292 502483522 901100557 456096130 672109478 677195660 801546490 245980130 889977950 18499021 348145029 749976476 798840989 629439342 930014859 615070824 789019932 274427321 671828923 257615799 900677222 668880633 808234144 7968373 299155503 597244494 912159527 79524882 209627459 719333127 855021331 657277441 976129935 934938730 942657494 957788924 999520662 139444681 712952005 692759229 873579944 910859778 946727198 423770245 570281395 852335168 898363027 92324639 901587463 24051858 148880132 492779627 652999179 842685224 845638670 332139065 661344272 86528978 724898964 86257471 456837507 29861007 474656801 615263650 839662809 396725203 868412058 537078189 893310344 553303302 678101308 813855848 934002612 880909695 906594981 603012628 805532615 848269992 872212242 999834241 999926768 165137683 983516911 350688422 683054996 701407795 908060431 821438691 962547624 459456202 825162025 539800259 936766080 807427364 906024685 560776163 669848721 38081923 744496608 333166872 493009049 180396551 592366639 598536361 982911748 856993819 994917540 2671951 754384878 212525683 770139197 297629189 827344952 470480861 660532182 193343347 698814402 608398659 921567738 130011312 755568317 828514653 909716477 157265889 430085938 33296835 803767996 815723018 931802203 737819433 982130198 540107619 657911416 291816861 903331927 883657931 952732925 105473090 524461730 936444761 940967441 479600291 708713956 538965961 737057166 588226716 864799743 730054850 979209755 691840007 930000818 906757324 957400887 755840362 949878466 386729442 594498158 292962681 521520406 55459683 762189116 472917311 523385758 967543003 982626734 163833015 572249194 761124735 812934231 113949099 949635708 400198688 772668514 166150377 796559355 702098708 927191545 226973428 960221543 59712362 688969417 896108123 956920217 610175837 642768197 586826385 751189222 242148513 401007230 141060752 555556068 683552442 709434629 326736147 750209327 644024577 898014605 175117053 780952284 164056876 808442482 762382899 928527728 872428040 882029071 918830868 924979933 59383345 159423039 576968510 662185740 587654054 965301531 915068652 952737731 743484471 970507738 317455382 865374949 515045633 929755312 373351723 412854965 518596278 939009344 592704626 674732190 265932537 808276476 492022769 837823108 955861738 967902875 244029798 434647313 55759696 844578769 150617165 862471173 238714213 618871381 29718012 822497644 221833937 825201250 626731922 747934306 116447749 328575668 144045308 820711089 969594228 994848017 380591612 541474766 710242345 841373844 627234536 811815125 740206567 867788576 158617943 619185660 152824144 298594352 7770283 126806134 881689268 921656040 844687067 992437268 723955526 960785976 649111349 735386015 965928652 988635164 731930391 811337956 225588233 727013781 66947030 243159753 662562538 992086696 840354020 961556699 708912180 934057512 849506134 854678847 774214144 994158723 648827438 783280950 573075122 608516276 792232323 836702327 499338893 501292436 846383483 964755690 61774326 578561857 295850534 535496409 26959156 277578204 493952057 774230387 120090557 884078232 498676067 715588383 669337272 796431308 373718359 472232665 493167693 806427090 157298335 388022282 793212961 995762078 25356268 995692040 584581384 975094334 754804180 774678842 435611033 449519180 625112626 731784285 33914977 606261154 567231156 789262217 70292701 297692524 921612378 999180832 593851548 988676161 445789074 721388077 257216207 349039268 301110196 472768823 822196029 906097292 658484616 754249483 762045105 780972385 457352329 626678959 806590611 997494119 759273923 931635394 475722419 724136943 459654574 981321645 421727532 589286685 405540532 423464925 892912031 952884956 536614557 710911280 822266133 835213717 144442105 236099606 952156740 955745064 456239571 912705802 890675938 927624520 126228440 155810300 856799906 974226563 474985526 805707765 476630450 984461757 153441997 484286162 411917647 475484306 457904727 491719804 740214503 973993381 507906969 650984510 965782973 974321586 931173680 952122648 121727650 361693263 621783251 859730121 674067857 911800795 419770165 905411638 359005814 770287622 854959613 943903517 637630554 765717814 508321989 915753673 20579115 119267347 626770347 873016391 367614480 602372232 227444232 364325923 3879304 456908750 936919695 989327138 637008616 950215028 439809303 518155388 336804103 712771280 283150700 974005884 95860467 375186288 567239410 898076425 40311202 99821598 189132963 959050433 968988551 973927098 166381359 638247665 895351910 901163065 411832842 609793165 420919708 666681223 165121252 628235767 581135 172973469 635677625 810680596 669336920 845536576 181798872 564915621 112018313 266218126 896295251 923452659 69768592 942563620 943064349 971344783 30080088 244524112 469509261 811988020 931060878 956236938 780333177 879183158 950999271 991846881 586808560 777187968 363133204 546278728 194849524 621533391 115326109 816000084 60079609 192413671 947207969 987360396 561543187 797495095 977937016 978763889 307479997 812294039 949265584 958781273 718788045 725327284 141513235 718233014 717440031 978434661 167855878 940450163 894533880 902455248 745026986 745194610 406427168 665759263 611379370 619399691 90820023 693327186 465507310 796390023 256881339 830671488 518018666 689859345 730045044 986770022 166889441 529555381 39056152 208114951 408538118 738293187 653739399 702488795 66617542 436623496 778441483 877895648 238765502 420442995 920310920 976294954 399543451 633023266 218891145 968742271 365117423 996671007 668905462 873176692 181010182 960669241 747697302 819932802 472089887 826169744 937801364 973059768 862137642 899975484 614026926 715416543 725002634 964873378 543807468 875583497 918560760 928386865 720932501 772310632 232614922 793580583 801421133 945139187 190858808 826651288 719414065 724827178 102159732 136307791 1599752 669980586 649453102 956087513 522223976 980038557 75341944 376580671 335611412 897666739 652381154 836194288 94983907 565761522 176152360 283163238 204062175 345570667 847972837 933613447 657625619 999168362 452422400 457203512 463253938 747556096 528518169 663555784 302066229 409021593 767987837 899062939 767684388 997474363 153299224 989753054 4182327 742380195 946329733 962208071 268975090 449416728 95968916 747415653 163666358 631036441 68097270 240590128 15661343 847188727 129259273 384946089 347256551 608821458 671960670 849909467 183873694 633325253 690461494 986750138 881917039 938133852 672105853 725067527 667488761 674919538 132634855 489105540 383858585 627722920 167758983 592184929 316731899 506309505 576821790 952676224 551900607 812943500 559939748 762031482 606671696 652261230 532062915 579537701 820453307 841628552 148588552 946029358 153030898 919129835 397670655 987752660 748285475 835515888 487644720 645197975 225731325 760902955 494072382 513064139 843362251 952836107 480823350 673755023 226341671 807601946 388812858 408373210 118418881 817656459 61615150 394921238 285476332 836860050 759871619 947024498 475559659 734005510 842630922 857687375 955794894 959966421 970156532 973589420 178870554 970156848 709302309 901300870 503171499 551889123 818924958 943183506 580321081 665107770 772957649 985520894 21822601 973369782 413284431 769681837 435559147 560329173 98606361 223272158 52063179 443628245 179557082 799718774 363650656 528448637 450258084 980315575 529458095 942134402 716564404 972103230 62988956 135348564 130419282 657072374 396167373 809051073 552905782 563404763 565056827 913003657 360828700 795160146 668681782 832785845 833572693 930856942 593634576 954761027 196237578 526923340 166850182 601973683 381840296 637434018 235332697 533068235 311558918 405261989 631646766 969075719 259417417 397876925 365988058 856571343 549775119 650585984 230784862 353208154 538743719 938589737 414315769 491953911 967142843 968420890 312458803 617227972 626252769 666605920 164971554 979767671 435803153 980019959 556371896 682967722 362733737 831361054 852120213 891142746 503563542 984840385 691659322 882778288 526394091 696414444 728091275 765675386 636632445 874671349 351414764 631769260 724183556 774870852 712619920 745657341 474080222 695387319 99639798 513462497 207197855 975910363 226039305 838473493 837595169 934414897 58371414 375531233 966697779 985427988 677957898 999433160 321996220 551073522 591268550 667111095 660289895 838930115 728052688 832915249 632619868 648604934 33505062 464650452 115726142 651751278 332401688 516445593 776725931 790920214 899699861 967444019 697114617 728067538 585041560 836653178 206576622 372040989 290355354 350570283 653239527 872472109 82044682 475161468 703850165 966260500 982223531 998480145 555274563 747148824 458911935 867350938 701490715 721351918 834187756 979181445 964968261 981810571 79153414 326338615 467116503 705522052 784490396 835328516 924222613 944244762 135404832 530218988 911266203 957199895 245744676 462665105 208911230 544328946 96953284 822959633 798086404 997192371 119226868 610138257 415378637 606665114 848280076 944000108 493756786 536400779 856760164 929872449 120790157 151385124 378435760 978201416 331165565 833355312 986623584 993296307 544323367 615607336 25802209 839878032 436931860 537217540 252352016 571898001 47172160 565086765 982162629 983792738 940433548 987337201 68984768 981629224 678669250 802005634 935929938 989895171 771342688 959688116 629953177 968109535 16687384 838620093 417660886 620668156 626619463 710005434 455224068 642594343 658043785 661794849 895047113 901839567 661105418 957401539 126515986 751637690 790930680 968822004 591023864 913057792 726985782 795264876 595686144 992941273 245516520 503498151 479907029 549340618 153924944 429774658 596231331 912645489 810790388 915721285 612003807 613308563 994372338 997139919 696237582 758716115 710722148 992711257 58711485 84770841 170581872 974389663 824894681 937763497 790676455 903683561 673451386 913657129 498356211 545222661 896774707 964435873 173693143 387591837 705129548 777691286 67985784 722627001 430715600 652790423 951103681 956008398 650841144 963492241 731289108 959292016 678615347 932174191 340841880 812589992 558151761 784777742 255852583 746369025 101524636 478046312 870550958 925950846 260939010 957886446 452892598 735002221 71598884 952221788 318314243 677444614 43400119 123186468 684497871 844983139 237780587 897284088 803488299 915451503 231172762 851183127 823159852 929325964 279723124 917271870 67650424 949121657 670327702 698227304 583055217 630098173 649011399 807162999 455044038 992037174 147975343 685247132 20932935 24913145 170243778 670814675 644373033 876469833 807642299 869131620 805412382 856439071 909094402 958554938 945782712 992582037 317036323 713794359 946253447 958727513 818696935 885512028 707022149 889226728 665654718 701855921 317364612 408153556 737964013 794883493 881386477 891378965 536702206 613061758 829422164 880534541 347569705 822355583 538241548 901545189 218164280 518908183 566978826 971059774 210286087 518195839 499943534 966373497 598863270 830635686 568622162 921632396 529915425 636850212 877222870 949302486 253633996 264687655 330862959 846387737 258086323 795611950 107510203 965372634 792309379 978907088 344583258 686708963 120648613 319930588 383224206 546722749 487188619 893992863 350769137 570754410 303771053 473719306 137792558 399895929 501411440 720966538 637879913 975162112 264373799 563771961 265647642 369409849 989687966 991645236 75752267 661692693 925134930 966425287 338163646 519682198 418800490 987468018 123794837 993605956 456419862 632207293 869910114 964202946 39588999 273096676 407183955 455916226 268938600 645022032 930811025 985166423 594126065 943437960 520153605 849781088 514108005 918449797 907040838 956813418 974144640 988719620 842357379 961864449 974245753 988232352 869433170 943094492 325211952 689542229 985768173 997441143 498373455 761854862 599370283 933096373 817748865 946915146 505188369 585004712 295292120 424688504 115428739 930268524 554253531 655467849 587843344 763536878 252316693 613623594 346377797 985343097 939175427 959002280 504262328 806089254 154206332 407145584 557619205 566151431 36284170 940235059 523204634 547963726 884196769 930490618 774446951 827954782 742403248 807486809 60937999 782473464 212128255 818946990 800242217 810785825 527284981 865768454 341029840 915728691 661588751 664421630 223730553 374886019 217487447 232492388 228403489 771797914 244931263 642700474 886938191 989908923 634067631 757291372 532078544 718126081 600216284 616293330 281444368 662910105 160260670 693816028 460994485 790303363 823474312 998518880 953052442 968122427 321056978 844060144 299923125 529992080 321556970 948360155 720050864 758679832 752074950 831694301 206193033 741152891 713830536 820167281 3723895 631878531 720879218 805012180 405193245 556022990 894659233 992947561 160144257 859784751 378308233 705536724 214199435 524825938 677346982 861850664 442148468 892268206 329314974 908790305 389748048 608580229 338794664 975585560 721776956 847729861 601268612 940476357 501304706 658232378 176996410 681492806 45996555 388800029 206078187 346794114 429549740 827536818 192648466 432229089 730536085 862580719 887794160 930673251 35894059 660153323 225091255 840322871 973933867 990898051 365810699 969352659 858147164 875995705 822982331 969679233 718669175 774896886 135075502 583654726 214024434 487072027 600990119 826386601 939024971 988541801 54916673 823585961 476047827 552599146 558814685 736366872 57581460 291893750 136023630 540703188 49639332 314258270 71396000 455836223 911581914 967928812 955207272 969826860 704664959 985065293 79714606 309185775 192970097 729772114 458936441 716822169 414391096 505339243 215824050 381406194 396693868 608035561 221636757 963908078 561048001 905558003 867752528 994547510 888171159 974690332 142559506 792943773 31854261 905895005 176172163 384345378 844605621 878777917 340950299 888406451 594450406 675641764 394844949 699346266 40234546 540820084 194305654 295344530 929565699 989377040 891656101 995338372 634146321 869869468 640943719 783261975 561134422 788741650 981752628 992704992 730875409 908670781 757627330 889176229 993716748 998968459 33310279 40898972 27167234 394668706 473523007 541676654 85600182 966525733 681574809 997764155 624722931 843592914 67471614 850061206 62496172 790723029 962998042 979201647 715150962 933972496 891157092 910846968 222281168 656718091 990617941 993273022 420071819 664534363 347544559 632271623 312344733 397126058 200806170 468608342 782686544 907881491 939458774 983285338 927079235 982059529 495552311 499802743 229623377 286695543 750488248 947844818 624000755 837603559 237648089 864744614 595256211 855451551 686177157 874235976 582329215 816771389 61272735 304574563 831470498 862795578 987002751 993025370 340452698 835298215 524055980 711907212 497994829 906078873 15019438 970745373 195706545 241005052 328711719 508988442 542380702 980192066 999495780 999803145 951385079 983388287 712114858 918730819 143492266 224822662 549442531 632114467 727071918 761082802 660615932 909158573 142286222 959474948 922655521 996001403 348911654 357491732 342905273 891221052 225397955 344969806 620000555 997811595 497592750 533377245 944562229 960864990 884455821 937156534 511242406 761905919 92610495 175924490 739995969 885308926 515085029 849049804 434107120 487234032 267593052 396908595 60521682 839816604 816862924 856355116 595545533 648111590 450259345 720879262 21960006 479393587 524830107 645939911 440598837 537092687 211613920 334734259 664908338 949642080 190933783 911844976 976002081 976016401 307892349 436664417 635413719 966458078 979057240 989746024 916103933 932587311 418012570 916198193 38152429 940365986 701359385 852012886 735384233 892982625 165826504 915267115 53721921 751558074 334513926 582374946 805796746 909038111 45228864 214679198 485812071 528421954 380052775 936443390 512861674 793297371 457719180 801053837 899072138 905912776 825556418 914885278 136274373 904308595 110975173 127961762 900871419 952139394 597430580 906986807 25715193 59863809 916912820 983941763 67255199 301153158 652869841 736854951 467680706 884029540 859603056 871417276 320180594 375611838 507179233 672570410 555754475 717688981 849423119 978721201 686757166 998589064 655434255 947695875 836120173 961794413 664450257 919896689 811633968 989568285 207849132 910175616 974245665 979757997 706325112 961467416 863873482 894714584 325091558 715297914 292890517 875042189 819788684 983007044 960252553 982098370 875855157 978481282 78687002 293692540 991612139 997878619 558260196 865669408 766216423 892586634 225871008 970193393 617883829 895941723 570637593 941327056 969671741 985826241 576064189 627843006 414522475 572966741 235632790 690370641 666789104 918690625 266512407 572128544 655606785 806908428 414005312 636555987 665527332 817823780 670269686 997607821 889331866 999931607 175916028 377517232 888007239 954557739 279225025 979315733 632622277 928467156 808709235 916658557 486306486 496273159 485004449 822370896 163873055 639322551 831451865 832563606 442439722 817898547 340792358 706467064 520470428 908542833 326969710 544101169 582152371 589614522 503385517 902047429 988184897 999206171 440509775 815223821 873727205 956357249 517060532 795518427 252772155 760546278 128099475 345909609 695080863 995658563 158223034 731893309 458793928 545615793 302095380 725207628 811087213 834920838 669739835 759870195 885645466 947617112 97509168 307198660 59483610 145473745 20340752 59002654 7460081 659582659 96174041 587403088 666490690 702632168 330294584 481750943 229249522 644001948 305990758 386849754 554827746 841962360 666302804 711266889 495748138 984220858 976550622 990752397 440092542 680973307 731202875 998254523 400254245 860471778 188354934 828946664 161221967 944711633 515320619 957951691 370679054 466518900 191701161 988968464 208401302 715358924 12575574 595702009 869815059 897214124 985024470 995589275 124455845 145616784 169343057 642904199 322281584 460341961 448683353 752805029 325243044 455718865 238833734 455887395 581347274 963764257 499453900 755843523 284149246 409949705 613014593 871271487 867501369 942656232 953550051 980238671 361723098 957462381 543190113 543589751 830168879 982876736 338753017 964691030 586243555 979433312 101186029 605504932 35827013 309595321 998880584 999381721 806818843 899575865 597250809 714711792 972633305 982917533 348198119 745436149 639731356 910356124 853869097 910284652 465067101 542942556 11558324 29420916 87990059 633760254 870628499 874033308 800017874 873569958 511172704 986941045 765401635 941957794 561532758 762869695 323309151 625700371 957324476 990038498 860379684 934141182 133933501 619989478 975770857 997246933 500288286 770291194 730527783 775388020 552234938 889066780 912847347 957539766 537514711 936521215 449437135 681638738 698592472 996189680 307371512 995278509 719121576 960228231 792674312 801455351 45348607 65527234 245662821 632795401 786099765 921489299 550937257 572037697 672479521 961828136 942515441 942746668 852879425 876912142 100096082 840685219 553668726 559509551 966439216 984888673 643362257 743451637 402472152 440459804 303366385 461660887 601180980 919879486 938541863 973326097 208131611 499719747 645107895 932340144 192534558 378087291 351903937 460294455 102599662 788695736 221327906 915806825 980513143 980906529 539100641 821350132 493764661 955588681 914086018 916039510 643085664 915184213 556574349 953055535 168090692 851550241 224877840 885399226 25812215 61643698 689631693 801218167 962452273 999693056 611187623 753155783 938656403 947438773 788407890 957637849 235811123 631588843 135809460 159029165 962152685 967624857 691313812 802698462 635995828 725924784 987990262 988487357 966444538 973047008 844767988 944674845 877491739 938370372 832749034 998543985 254524714 386311177 931039035 963647832 780595881 812912106 512028304 566527590 213673811 744867343 773295173 924851886 737755787 887503488 669861232 760526258 908011938 941994442 926337862 958319498 808025487 896181971 916557303 990552891 889442437 914067412 28661579 907642893 524324644 542515352 313084047 353606008 432651911 749624178 137551028 397388194 832999560 841212350 385709388 538970456 95591267 932438810 40966777 374339733 148929931 303682753 233486961 392881967 361025344 485869945 846748822 849371867 586537169 772467291 813836104 995956368 467035289 559225956 558010089 833398328 2159321 916066015 710029519 927176640 917056028 946793783 955863939 957677662 385571703 628788382 358866111 992180657 499522789 517633492 656286699 672835656 120934209 331484982 33230650 352530600 637163588 909103306 98201423 930907550 743943830 933832015 950483780 968583356 872126313 910046362 139740188 591489586 828261548 977542978 910090943 970096758 387647980 711128174 426973337 640309198 174865133 412813965 188384553 598653756 412693815 736101241 997612736 998244456 99834409 403998069 321683117 353519399 697956539 715494182 103397150 207009816 162538563 576208445 182107384 983050642 401802141 530110207 713385554 888749723 48597480 465165371 212710933 281038303 650137357 995638693 667848492 978532157 746817107 880953805 371396958 760022667 17839896 975691739 47937344 961681764 542620585 720133833 681715040 888250504 590424078 771020060 781847520 811586449 399951312 532321757 800626877 859633781 338282893 419744133 703812386 869204721 730799222 745977935 581766546 906792646 44025226 485025506 390662148 532613015 716231958 999269930 992124544 996049982 914686277 957177081 809854918 821578955 242546625 252212981 262770955 787166905 403847612 603066479 460621443 992247054 391944821 764265010 395207219 443192693 941355441 951510581 243643052 604621270 389370104 990189455 924377249 975183537 376502071 976406389 374783963 865483418 498419445 901812370 492690983 494248914 93200396 365167647 689893882 868181717 198835931 918332182 621083191 771631810 228069739 698699768 885851766 943662034 437919800 483734304 375512421 507574326 660166272 700885779 996980809 997054822 454559571 916257099 545572127 923075122 815966305 977364005 173020981 974772592 958351590 982008985 853104116 996015435 221611785 701207271 367872590 591759241 320541113 692943479 114579916 524139072 228559109 460726748 103614992 790062824 225048302 560227447 806936545 998276783 35820785 757914937 824585052 931847842 377234475 723851980 965432480 974206785 230254634 724637516 813037215 855682318 373386632 657817695 637015876 872498533 644666742 841820798 251260398 833004349 203871791 495338085 847840353 926164328 709570740 961128780 607294053 724673205 764439777 822663005 750378482 881640611 575251138 750316797 413041774 921017214 877836543 934913162 257213622 693130679 460408230 656863450 328230381 907142694 228188603 942136256 947722890 960814525 79139750 994719706 436632212 849409918 5872511 719751552 391373131 462607066 848930092 851217335 533360184 896659839 633472795 854368069 238239969 916954138 708193156 761477812 342140025 511268330 15430502 542721304 495359953 658840281 672846030 873124258 633161829 974032386 804804571 984301526 748133975 944737672 231438308 422258311 90868744 716037007 451110749 940801868 393322112 646947043 97175671 630311494 224117736 761991192 163198588 899698042 395752209 530197074 428689204 598123003 703247226 818762574 833179272 970691378 160403077 468487623 59902351 918020063 506881079 819474239 99919522 165099646 884120182 884924681 35369181 444093457 143131835 222008027 633490965 853937094 375393549 542569488 142226913 655071443 731354533 955526516 322092435 552535273 454808395 970771120 980415861 998467660 315581552 734363819 250094744 602237361 136440081 663410666 869224780 891295398 886165283 993459661 21611277 507961263 360489583 498253638 911128490 971286280 946580361 986263726 232768160 374451783 314444148 958730840 779855943 813897181 991317548 996100807 384431730 658395843 193290154 350306345 60895675 558265628 870781789 872522608 201387726 471281205 431037961 969404390 134084649 537557192 330839916 615370918 907524837 961128745 989710329 997361668 171728876 870055203 304770009 687728064 482240648 689629190 638357690 906955191 22062137 325919917 203119136 617416538 259097366 562162191 322811734 969051942 344064891 797008475 962366175 985533145 508283355 612580276 671436220 838782011 537574231 907594541 949894241 983312135 265811794 613465091 600354427 706163408 9871706 850430454 642945849 978955995 843988128 851995383 740406711 933614558 667999994 983346756 839592286 911413551 385093485 745432221 680065646 956960328 440105478 440841675 241966037 927837045 481073432 698517685 612013724 706562083 168749552 183299641 593027288 921678315 408866998 668702239 220399922 820595842 943423831 979846714 343728858 671465559 263471798 872525621 826294586 987221580 80922285 947590812 243842334 639005405 227848438 576164544 458559633 741118893 571502575 844387503 530269335 891140879 440585293 570789649 907541618 978158966 183392094 505451821 579719372 926743137 346872232 828540433 116095683 979376645 609508540 635907850 321042130 620716489 694557960 696039023 32943221 130403887 649800641 997684837 918044150 937989342 425974944 546889981 433515816 552969983 131459945 496376365 217783334 980910608 61481769 321806406 801174416 857328193 66274496 291552394 968845885 986382585 733407587 857720756 737702508 984118504 469673291 898010383 425131940 474659578 61149829 574091135 492934887 731113284 506335014 925935185 743441931 904981747 578041386 587701632 973477928 983882020 333397824 509559399 426530390 680338259 363464015 667758165 122848723 154750938 537338151 563096456 406844107 678639119 999871755 999920249 969481046 973448758 48542638 482051631 557480704 697910430 358642694 637929890 396419906 665925555 769354076 776571364 583184166 947645421 405919867 969813084 622708958 872306854 821666373 981625207 774289196 935013320 181898724 654438235 170291643 864472192 363279146 609367979 250701612 836779958 643545069 921563202 220892444 412331855 506855655 753956788 931569397 983788807 915092897 922093640 989606078 996338674 789796216 843795992 575586595 795631337 824518045 877970359 470442312 825482445 479074665 923514160 147967317 717653998 773828352 825878040 609893220 618348494 686385477 927931095 156876909 876906215 452755779 824053734 541395388 793497231 343703330 907095672 668419494 701861033 461832114 890876199 541569038 584732370 519066327 623604844 95547542 311415417 284771766 710776935 719025832 929440887 505149285 811851144 631498675 696084682 559680648 674038032 520001680 816590718 670973439 831269877 599943389 974223918 863860268 933528223 352105996 482524129 531233725 887856255 967544798 969231635 661452533 931375298 364678332 501480788 958076768 966859343 783624375 835406969 859835868 958283759 145409819 853424764 328708647 510895806 805782338 834073420 831426424 854794647 27038986 559893913 636914104 922771612 760481246 925334817 47242005 482335707 162008709 772765584 752785590 878784425 159561795 304091258 435969175 970579972 800387102 953069917 584060896 924064115 738648487 916145028 402105833 701164298 787510200 911431669 151669368 784793057 678315768 795175805 955623975 981898681 533162154 986838448 845165667 892054925 449064658 886085173 883426791 982099174 167991648 751494993 380420306 661372737 455597854 496705376 579376282 948863776 379362470 451813993 610989266 914226518 300558549 865985530 830699912 847555487 886058646 960819838 149536248 921943156 665526701 782978847 160984971 612770770 48001926 438752379 419246960 780980516 939153045 979631163 393527978 396091314 320356311 799662297 77500400 85557030 315071908 681459309 453584521 739431338 594422656 769381820 985566278 988667565 851037415 929652572 160262066 674926191 900348490 979413394 607606914 656818449 323554899 878818396 111703505 576792470 782956676 803902579 716457377 766647449 283130752 769467479 772083514 876685036 459288063 628189848 587997330 837892304 625649456 886872088 561959297 656687978 24423653 544336227 438946875 768129678 802454285 982855339 731861504 878871830 788391964 957380041 571768859 953382557 887337124 941167878 808338512 915038949 953512752 959541420 781607946 825791841 106560672 943198351 978537480 994474671 363217742 991371240 178930165 471231749 416936037 860082338 878667067 912956782 264354129 377275611 236746800 489260746 133719209 693360587 212680056 428670824 272753104 517478346 62681617 912498028 172226938 726319244 365586169 637798960 573435625 735591829 941999135 994181083 233251678 603046673 86041662 367312283 810368124 929822252 932808225 979464228 996643690 997590716 918024758 930457666 323755691 813813009 175929293 896223260 461097644 812231542 314007865 806003079 355741238 397201461 245588542 805714833 162035719 629595901 850918229 940127642 354591284 921583754 779585688 981944408 99436721 334940250 55538809 461432101 32387307 869549415 559898848 641793068 974510353 988517729 958142428 979893587 773079963 820682027 593003421 687176845 637770890 945052735 216162324 257773152 887262662 942421829 148139938 266799631 850114270 907728835 272245890 420284607 167269405 574951900 449328535 836027771 375491041 442882980 404585069 638893291 621111314 933344811 179143416 229614114 323362950 542747752 919614596 948963933 105558265 431765454 206190642 430380878 401060150 852146177 855207387 874876737 472488707 975704852 732335577 843298936 131594282 275372880 321789244 872879635 706993513 780281316 692215761 891376320 233037529 946797716 105006236 152250657 97365049 910318467 431013112 615530201 143693272 602182858 338438344 434670838 845216308 950391953 618079419 921348287 282608529 946409877 121124363 816035558 439687661 473254939 559914409 643946287 410257523 795171637 881365408 912410682 510765484 646258084 354050450 639280000 246159936 602113602 631305987 944279739 64118579 462390752 42034256 900325429 101089161 717807706 126380620 683636901 886628212 887512734 836932733 998575696 129295835 389738430 591892393 788910906 208835163 748990152 391249563 398362708 647966124 752379329 297140157 888762491 640140016 987750683 925287231 947856416 970744662 992179603 581492413 585669699 347586309 356885221 154896177 683117855 452584922 555466215 502403244 916627273 655025689 939578923 135536492 370917036 897275019 927070973 193748494 388792617 697079536 923469070 549996631 703739379 329448547 813878427 179366538 706438705 707371989 934645751 413346905 683155071 73271933 208987912 807663804 902199421 217978641 669080423 344866805 842070127 642020151 708130925 938501766 946427691 983165822 987676235 680212633 935709725 144454808 389159368 934349216 985310207 466502254 716319709 59570043 647708111 898230960 915681775 900170457 906497664 992227750 997098658 198368583 721031206 391941784 505294838 870709841 905395465 632492164 841943113 650907947 794008338 162029224 172640320 294894954 863223594 17164479 695498881 993123357 998862654 552139694 875996072 974338289 989791332 351659840 810033475 619122650 902686150 121226857 966158465 810481212 862497454 360414112 687966896 931569093 983950589 158370780 945898412 319753359 657109926 949562819 996882320 759687185 810814181 178893803 890052810 130910854 726988876 789529762 851503734 346209461 526493315 2898163 155709221 735777437 736774959 698523054 891399307 749420892 901547938 136192532 876951647 738540248 937343742 183839987 481764089 423311401 972765048 308147857 455096512 422296572 736529520 976605139 977748105 567440037 626383327 231860643 783659070 356617006 889345692 508822358 646687487 596539738 670586212 750680481 854987863 732043155 934042806 806685202 961095230 751844034 944866718 144225986 634407092 769219463 769392514 81365039 807756126 149968942 234943507 339278804 672702599 554374706 770492396 881795265 999689124 459744941 718535809 40319477 540501742 376698508 978350878 414645209 635265779 439677410 503546413 482269321 946599758 105458843 189503481 265720635 735897070 132923415 279197592 640388858 670262482 348086029 931738257 565642672 708719156 82122967 406750801 987530061 995060027 40240641 528733563 590654957 969827936 498386825 947530866 21190912 749588495 670603571 876486754 644594797 741087716 515900344 568803486 565965228 880956996 479476023 580104400 974603792 987215969 945799660 975771590 241476502 320190661 281486609 553383440 732044816 964757620 898069170 935866292 495935528 729725860 12710332 984052048 800528844 811957551 464878904 471974074 820733423 876266765 383468008 767245502 111870651 863098458 995767794 998486617 497056801 835895321 253200180 652736752 394129507 835173922 310694445 687292416 190178041 721830449 224411077 272876305 267190964 838393150 878731986 954764853 240419678 911321350 964081077 997952293 348566025 367600949 523714350 995047057 412903130 931927832 532238572 568398407 31008281 621355727 618900218 676175354 250733832 814363433 431919782 806731404 655542030 878623882 236828813 414439505 296513178 533655043 918433652 964172644 766570205 929383541 216623005 944813938 851685369 908094736 512397963 701743076 11081766 50273865 480587063 665434316 638880124 692696108 703664338 780259262 119507467 305172181 162319085 504969993 447919926 521912371 478703701 945409736 124157127 824418528 5345503 842691595 892099294 927799421 128273267 192609646 998538380 999973008 202496938 224833696 32782641 284210182 903900000 932316075 952692657 963991575 901210980 993726782 154414231 689031053 756174601 880029489 698678227 999145813 844116906 853879538 829351201 983472270 271780382 633314948 625785515 761756011 941664592 955745839 546127617 847767681 840150322 908929848 775225305 873641521 719085180 916978051 232296915 982390448 708497477 982497094 474037031 571628590 52175644 252787134 641413508 898702357 792889997 938516875 629458830 990490839 553099319 821525248 743608899 897345620 440309637 992486759 995856916 997222947 475301751 487407235 505448663 846020358 719717352 931097693 287885828 734006135 952285279 998519993 967209361 970103511 293308159 536657792 850562604 992333558 334247615 599956405 286483358 332743306 666078912 723439984 389552575 723080363 501427448 632281026 718685532 775078626 369409663 816623667 535255931 971923141 327510504 641799128 942541234 959756461 640464107 990535579 409821435 535047903 118287023 844875847 546918943 829926716 551998310 984028356 758543444 876306367 42727767 571536332 998326620 998830616 821875970 966026774 539545571 967721407 582237962 663756437 285147038 824834801 937611296 951139352 278616582 786040649 870471211 988036904 535741864 964984883 26323990 940545920 101845243 545024763 964754755 979789906 944819833 974755408 554564636 576804016 55664025 313061928 812025754 911837989 598826762 632783831 497548474 576361512 482964750 695263738 563824963 939762162 247894706 728656320 48732476 460809522 628321856 913074747 600219057 877193085 983793718 990333611 911428462 998894158 226357650 797472315 201442826 497082748 871304014 926674141 180143549 908505491 642446768 757812022 738079193 946330032 196482402 241887306 626062540 707544244 685828504 842272596 949569024 950423418 273115435 961069049 352433891 521462875 407229953 605589149 535923589 846080609 507799253 893462144 477990088 894716466 471708618 994064378 707869797 751089226 273600857 732232462 439572102 471003285 932593052 960674789 460468704 840514607 548512103 991439971 608509449 681978614 131980616 656947891 907004489 993097033 982043891 995399834 837385368 926024764 482991804 709878163 902905594 968689889 86868228 822606998 817904385 888394194 630816636 728725943 725547173 868377805 229366821 452543732 101932370 259471823 437895828 916767317 621296296 723579236 408037250 742145410 151111581 173610881 617818448 737746360 221132376 362351064 241861261 718555114 547891761 851985723 128515505 736909278 512824921 949137011 502657734 768852507 770635585 812817408 519645841 971626393 406177360 728251427 888889664 944505039 38311479 565066091 643226441 879832743 375209671 660701229 343868592 709963402 586509973 702874736 100763326 851278394 400261001 625810152 849179761 929463774 640016792 812362560 777109875 977677188 917382096 927344395 821145323 868591996 240036727 626104284 155250216 467578515 257750469 648634132 757339430 963332578 111923628 378855788 864760424 944059245 535004165 550430703 982803632 998099610 580916835 973033052 963295333 972322483 275361411 918007101 976579996 980727490 244418136 379661605 600511923 975789363 42418451 512364405 763573787 908815169 87389658 134681237 522249156 862435925 811688823 974570841 534844648 735861784 917590180 950523057 427355732 934283384 475604078 754271874 607695900 895848540 989630972 998358189 580169883 630632016 130716439 786028949 309255243 818017542 887760573 973950756 140977894 243043623 503851672 762478819 607287507 799215105 264413294 843184508 140261695 663977182 593706258 608814611 995280110 997041553 226259561 664906104 913516918 983462939 493837078 565606278 246899307 490775105 709138340 835533277 298375859 459178103 825581362 889080255 293008627 421992481 525515995 957005828 679477865 892495837 686680374 781256274 3536065 223656715 812649293 867726595 244059074 249039540 139875470 381388673 560649450 819057164 213290144 680688079 718008654 874585114 928343632 991745134 578767972 647051685 868513971 977040103 689910016 928823383 788773820 901931774 183563453 580230852 743979034 791982735 251003670 883906521 824551575 864429232 995244651 999666718 433572266 493511185 918928120 974924821 729085875 879047919 51568963 687241268 339792117 846472469 722225486 936850356 615840676 767841400 747716842 856936064 49928814 732928608 898151466 925334899 418023718 993598653 548009294 553960538 646334144 867167222 755531092 842320814 67254381 895207215 821531243 861821375 891866275 966059644 667514622 874354668 591697524 773449079 276010069 524806103 471655665 988707349 912018150 943400112 174750987 181290888 695470929 786917275 377378507 886978379 805217945 996591394 469351143 841006460 123187846 196145393 818080523 921476572 484365642 864708981 844629835 980761564 544978904 732348287 830534573 940163902 30071740 394037152 165473522 166858951 493609677 895340876 569557148 613834825 576312884 752898973 11467976 252008501 193942741 369353734 970934276 990243370 665791863 791957101 970721239 976644265 447213844 760261264 646068503 886222780 436344530 667973554 770061167 858786161 859318421 942645277 984007638 991870551 132672313 929360372 875637247 979067937 437819175 493106410 982456799 993888898 20245732 217361217 516166549 641819887 609041954 609528840 388462477 760722780 940398279 957974548 715056312 985786312 650634658 916608382 241992432 940175683 171247417 699268572 443018850 737416540 300770129 848183051 4751064 391757308 184937693 967143199 922402325 987051253 303165442 388421468 785196009 918862176 31804419 424930403 516639753 940968243 940533565 996286016 196600341 962819746 733769493 811466192 925743078 970295291 616964635 925414148 645312898 992815914 389349392 972527422 358450077 580353658 991599985 995174700 888431007 976195898 28118821 208067307 449660064 732039235 412610321 561622522 681116081 728282308 526151403 650242460 860275593 947911983 93877630 127970384 935129322 988612464 466056468 778826707 865891075 941383200 353490573 479780093 164314870 692746977 60166550 244604110 275579085 487865456 788959517 924075270 375260460 728605365 652467217 666295602 377015242 523598346 522665671 555746193 736996802 804117381 702014216 894787625 552044404 671786476 506818782 573957945 230112637 979859858 691475064 822426456 637938180 705025986 797372654 984336391 738253601 806922340 53655661 608228534 209326674 676990881 31013900 734146934 172886535 966312008 770533683 859283181 722102600 765613460 589332145 992745795 929027139 934122088 715842559 930546864 164287600 771825232 981873478 991303608 443274173 936105682 306923610 936071211 385151470 975929213 392885200 448688339 450104386 776283966 330020766 733662658 136437768 380999732 340399386 918046934 980644057 993806287 289284524 974096300 77391723 928318323 924546766 983936855 230038827 867185759 251104593 785245304 630544867 638808987 273815278 449476307 517477095 928482626 997379489 998123434 191002976 276846240 513026635 607495888 826702659 954412549 721930690 822350768 262649341 731666598 720844178 756861070 424783041 711552786 458490784 765093809 227015408 567120265 984182664 987152860 696646576 990790822 397773646 690856148 682328814 892868572 30711678 738502784 255529070 511348404 297982758 407621650 393879645 483804461 594911152 768813781 931806665 966082843 837876595 877722179 225989911 252410836 875325560 971947649 705566048 987922140 876026319 993690721 167069184 682905558 877379274 993102056 475174527 803315360 735678519 783190860 680211225 757450293 917912662 930155077 583948492 961788161 171094307 216763848 268356383 863432083 395528104 831226993 133141106 526974727 353584588 428215740 154986319 338569330 279352644 831040472 574761101 580240228 457326643 955669628 140671006 792460929 128230934 850924676 243282933 983513617 809856287 863959933 60017186 382554956 134839789 759297265 86198851 737326911 693868393 990794718 848213272 856289647 874955836 966262306 620520090 889535283 752442197 989020011 643667988 858233405 175757177 963673780 465224101 762100755 795416170 897280324 164917471 389187958 711708720 903659639 564183583 706222644 471427600 488861168 436981799 518387104 859663891 948287123 174214961 233498841 848241824 858447019 795410012 905783843 418978987 461818992 97591201 116686426 512732545 579079273 156435190 615005865 458724009 856676153 314766502 765968354 170779813 202315767 823095577 966768743 565901889 728397194 69903912 402734954 119792359 230383838 978664711 985176671 163835768 726356775 833682775 941429817 168868039 731635791 627793553 761509034 439573402 752967708 89980720 449597340 746375623 804553649 521374534 821290780 775020345 996461889 966776116 985592749 27947894 38429877 338537466 625350330 326254838 854850821 844588774 965702704 737290778 749071241 400326895 775027071 370708384 935257832 643517943 878924156 901619365 972798340 654231126 924127922 340684728 628541422 387637078 669531736 186673052 983282926 94569219 142142652 758883598 887407537 921144789 942973168 662160043 873077963 754011246 991631170 492445106 535501332 666603173 930622992 541223551 799207272 114652583 395765703 916223843 963853352 204015037 239210059 179019988 664456412 724316093 784097774 44074092 979168194 365588349 550995443 813108633 946348410 758946258 967580149 978922457 987075291 660699674 846424640 743187604 944280780 231697647 576557450 541031969 924889613 307758873 919737190 878837445 949633329 994741079 995688497 330119883 697723174 722313483 977078105 343019431 356358174 996242547 997643021 264213717 816375802 239916130 561093052 586378226 901289176 169098828 476144046 841201286 918744549 313750433 698303189 543179169 940929189 434430755 696702563 508561102 796775219 506357010 788509622 878124498 915316009 243909378 495397370 295665513 538785671 70113506 685254661 719345904 855425804 977417587 989368141 104945332 956317279 515174671 700452676 964571628 993859918 181452376 421013974 942167886 945222280 181668393 850580283 194592416 197695202 453047647 499547589 563316421 636356014 78576777 333390251 444070561 713480874 115797401 909000468 808801111 854481063 816754580 995843319 156113342 738982464 932877931 956127848 553175899 610186202 588562379 770102320 237729775 583754799 460623448 606595260 321090833 327173038 933468872 984922595 638249909 750675149 381785429 829825315 489493730 849775613 890195189 979012643 946593358 998259143 664323549 955426670 150244939 412787934 300801463 549939414 519651195 718190062 938270725 994991611 623798120 966777176 663599820 951191724 294715833 857818361 853068598 985107124 125787148 321142401 828227454 996842243 64241422 74052656 185460724 865050940 740016408 772955500 789715564 897707265 231414135 847012576 596334815 656912957 9732992 349413641 613471746 858820007 15235660 964835143 337294132 691155493 131464391 298796088 352454075 389880604 878187197 908167109 880372055 894502255 940661818 980630240 32008651 579438606 58036253 700519806 885632129 959153927 611068169 850289645 812855395 956391965 555805869 990297445 104673247 245325720 323978421 610932739 583442313 878126519 82541923 530039987 747568915 789417699 639897460 871955159 624287912 848612031 886932529 893053507 42774997 681481542 245138849 580999046 645501577 857116251 599058022 818044992 816727274 968469751 277680013 568350853 655613259 832289119 446763182 858253760 987364478 998537438 694857765 722196370 223162235 685983233 590426555 947279889 592751955 799968440 899528687 980108174 550291669 645915109 523374064 713467044 942602743 965138609 896212151 919826136 613314725 829244258 874819853 931833767 380474838 822921641 63221517 445910544 632673452 768353053 140547899 785591102 913889939 970397978 340894252 906328489 842558844 989352546 433014284 777908035 51170091 353425851 630924625 755940650 829596734 960826759 773208808 786506136 404512157 920807731 76781110 292603951 422382183 644336986 48572056 737169110 309557501 650550320 589207016 771647349 686410995 726518957 164111683 323697362 531988515 739336268 910319410 955788672 644263369 812578815 166142124 737849862 392118113 734995290 866952948 990334774 387734545 446950669 205778810 777763543 614607315 984350375 906636719 958637378 332511299 903090990 488337815 530909895 951856175 954488382 932962160 956242769 769953821 922152684 256719452 674714063 110117674 405599903 961549724 972079949 336566395 901000134 943697205 957833285 695777933 748034830 694987028 928017927 396724508 565108075 996753099 998050934 508634412 898370175 266539923 508215340 406374919 594480318 44084124 796999120 820871412 865999854 242473721 812234921 807453446 950076041 192250902 697357262 232218712 470674357 207090812 868871973 107694948 976065037 428609172 646593013 959678193 966138199 557490007 651656010 356750957 394534487 397994040 857423152 391979162 488537157 856815224 867129168 975850732 995966833 884324050 969324577 993180313 998520227 462477161 570545383 306866593 509312321 115858406 630113734 570947048 966508264 247858574 269040509 927003857 957850169 987825997 993733465 219808752 328040137 781742102 922841493 279112972 788936938 280334260 297303176 125173855 508065365 172592932 608529101 597425634 966626571 742005370 781126569 236534956 856045734 133115404 507944315 923265372 930030391 56091004 994241361 631039195 958094382 496688441 536723479 465633956 911845068 829520777 910334417 964010767 986437890 803830836 846019568 170001252 393643382 512514295 951741922 126568451 772815137 608756609 990375307 439975895 507544968 826867427 916937957 473982505 730257132 899964081 963173685 58792812 876591684 142282319 886485079 686035094 820205432 137961602 747225343 478573337 877265113 936401450 938743908 799008879 951134836 307566867 587420987 39414758 828962775 718098222 751849949 23342012 948666803 730450370 786484490 655350999 694232454 66365014 895436714 615401579 949273671 350625878 815044700 549831671 802808341 608792841 727584265 497186852 697960573 759304962 922388280 870481782 946831195 799991843 912758578 142407412 938891905 563460836 936062597 26940617 392562037 53223051 500049042 94413453 640322075 463034275 804425147 312469144 945399897 386961110 807130551 800374820 913356501 769087780 802324565 674188754 957397195 311603041 405252911 928094691 933221163 547418817 730878522 977700828 993366664 445085073 700916763 234140789 887475534 13449133 477237913 912037387 936541551 241484270 349399612 772207776 871292025 837399240 871693041 774712927 837724823 835923285 863313910 802395911 878441362 892218240 916738702 141813539 987401288 190587139 854450213 116418327 192582548 57240477 461460296 469889902 871280720 870476009 911706154 825835093 936427584 676295503 824943593 906573523 989843646 515056793 808369397 919225328 985648949 314064518 767456744 753377549 865311717 116701864 913770839 168219951 992125943 717847407 755476615 48405069 500533596 211308354 669503849 204765808 607144631 386662985 820151907 699211589 964762796 465302129 728902584 64065437 900205165 948089085 978622138 158928354 331548603 540129898 676984256 201860696 654178655 362307366 902360139 909449263 967247615 602826487 874132097 116138287 145840519 995962448 999347682 106747204 162146762 934307702 966274596 945814505 961600737 928358591 936481919 339567772 394956732 732708223 875415928 648395419 781773644 228495225 526531740 28393773 247030069 112777516 430116049 334181728 548639784 479205837 636118048 899959445 904673055 616520745 636329549 374755615 880831141 373002634 874151305 962942228 993688858 128902425 469042472 373929138 700093364 206046558 691311904 167811115 851754724 31439201 112166479 496886408 590405243 825391510 984198625 736220143 947379059 468955227 527408801 664087142 753465510 89103538 244269313 641803680 678263306 757869470 844633077 817721849 956553638 194852027 323434311 39578109 791844234 848007073 953310149 933196104 967932234 536128279 954406670 685781413 928133254 981415864 991754494 203702907 411219760 159974741 518140635 200097726 846119505 331007433 448139098 618581078 994978798 210406822 896638798 83207633 887424834 276994922 449548207 755165666 846609647 290285271 938486625 405029758 699972776 241918898 458448970 239766917 451054220 356214028 871961085 141950455 931455949 921783605 989207698 326404006 758883135 177759751 428018888 488430251 873991124 413754085 443232997 190957565 980065442 792435883 832793437 720550007 912782904 735592521 760993146 827666865 858792777 615177964 930253861 8915007 434424382 173883167 744827176 852619173 999560300 144625721 706996214 308846015 694768497 314200006 601347450 154316968 684457156 769810682 847169515 915674226 996853695 192576776 460655268 47111584 605596256 157867696 429526319 933104185 934012669 118331533 450492443 999423636 999529694 867731769 994325326 192895721 373337512 35989157 169934361 801403166 998421245 130732717 633172430 998381057 999006979 760544112 939234197 599928031 804179883 363475201 415908744 934311020 987782494 210753446 582809282 910908971 980933655 634642351 977408877 265701492 364751959 520339652 893440310 283285285 957286481 852873353 902967754 302990801 327836543 509740741 598377854 634688721 971048081 802393342 900941304 612446305 761759968 724294409 963869533 605341425 762641623 404448149 661829359 5343800 54470690 30467732 957875715 456779012 481395195 801216742 954320615 600549955 864756933 405365645 792095861 434726092 675249522 852478613 862804401 18168531 864858957 557351161 910914776 307629317 544676906 871339506 902229596 1192377 773517872 237025984 240090022 311149799 648594991 525243328 666371733 354950149 437158947 206885827 584603416 608621133 903762763 686489402 836086102 319624690 353917606 797484829 938099824 511860175 938877533 599790288 600609299 774476747 789799965 189711215 233835371 860407582 873387149 856668336 873894920 97272847 951523297 668995524 794240221 208096743 805089126 859368357 884323326 59531881 658324623 569710234 570926869 561233506 749892270 560714242 592549246 238633040 579456375 677320243 748405441 143160 796380374 490136171 590904796 252481190 263350895 907205889 966552982 547063861 607555640 818379425 917244432 845411803 983039613 728322637 947352289 847170924 971325659 244961889 984772307 512082766 652803032 331357694 343825876 863409440 904011401 100784615 740573019 211710221 944784084 724856497 730514660 760073702 794927530 663737385 759713746 752913498 885269112 494714737 814695619 537329363 701670652 610804126 682998670 11541792 435688833 159410974 198861876 688031265 807453921 744793001 852465713 35241042 627314094 157799201 269630212 649230335 708287307 438278453 584675038 231236102 569578120 143291111 341740279 419412278 749981675 298959200 468140605 894910881 943029630 670002576 997664897 807571965 961812393 725792242 957054220 399595422 851662654 239793037 651470805 154087864 706296322 417245659 479635212 589109646 702473501 261168422 344542083 98315865 311540869 502277824 533931173 170318410 983068156 773686222 946832410 845777409 918209321 839885390 864421513 695552517 802682248 238553680 260708061 259669321 833423283 660859675 743556560 57590212 686878475 323250444 363203987 656982813 821363728 286011358 908027216 796203662 824647008 616817754 633841463 682665385 875619482 563804097 993828799 219917113 472286630 287982810 323109540 350318389 816102232 925723688 948718803 978666620 980466940 463755014 874183520 765143858 915451659 453967457 734657688 335629148 458628814 511218672 606991930 103740370 814171386 750811406 820940821 328651183 407822811 876094585 964499019 767623844 916176162 802598510 832152051 443588361 509671923 951118315 979358534 766268461 856656948 763511179 997396071 692236003 853567601 522801090 996557563 802234299 830645374 335014539 366284180 215750011 578688497 514471959 786481479 525714705 680189992 765397815 781961813 249432628 403825920 891130032 906430853 627706271 946907006 406765455 437551755 794673807 975888880 266475988 790299808 347510994 888588466 714673496 973796899 184720727 910398634 5619526 142910073 886092853 980347046 580689161 644975880 448899199 679838339 801581146 846560639 140247727 470045947 831523745 890526250 393864094 650245454 988482974 994769909 830654000 847744955 62515386 308156896 953319933 956738941 41819016 717223302 620147459 947506501 968582739 972925445 736127379 765316201 301902847 439884805 199491472 512681249 336184628 979833948 345434787 593793903 879332251 911009315 10913429 275246550 250426507 478410907 810525343 856632798 677419000 960241255 432133321 642774538 141748402 202319058 998767900 999847736 59651143 168594809 752641751 858577191 157532993 520856587 662223995 827755436 560025810 995980495 737589425 869813175 577205791 730466061 864917363 987161795 538272347 768607079 479619924 545699260 163326919 568214762 545654253 917497812 506196105 871110313 888772534 895847579 132673261 812284747 38897130 428004026 669827591 698692010 76235802 260916721 821810821 847558436 803446310 831561608 501830231 510852428 612512125 677912837 774483753 878114244 784152387 968829372 417304106 453398485 818791322 930198980 75846118 661891763 865939298 990320504 87030832 956047421 648341199 793293323 929077060 937195433 424695601 567255030 273273099 892989957 194697054 271479826 612448315 828019355 59548766 662356008 193662430 211245221 337395469 556034534 48976765 494111718 409403144 525699572 378099061 727562307 440747398 512307490 393968011 618048126 310823210 906310771 191573703 238667901 979064962 997611696 706784266 748642734 497392853 675158408 501181412 656821235 806015545 988582644 190394265 513780606 721725925 851090603 763558538 816817555 480959623 812220505 920631780 943357903 340346614 936461920 918784579 941952303 894006786 908758443 264958322 569861704 501730262 849556315 783671258 949117550 428869319 870992511 750023454 926842868 368305497 637234528 663222615 919418406 102414547 860004463 180975925 665530767 350200577 719073642 456146664 590154621 443043682 800223004 878718370 894023692 405086531 847368871 762422136 863798555 592416306 604977909 718634985 744886865 323080990 971275449 431079264 892572002 922073297 965034700 232326082 481667964 653086285 759039069 23448778 322082022 612148524 636279418 872264744 912593688 729487384 770856206 679233177 742510895 532298504 835411633 366122244 973337385 975522573 987747905 750502725 823939180 120190293 345329284 126819513 696673177 622959882 791181844 608885420 698304692 198634318 304164938 360481876 378531679 331094946 765021006 238687984 383753456 684647347 932724321 96110514 99492197 262387225 345523151 968449100 979376918 225902311 824022828 809050597 975180584 780183244 904594842 117015876 586094583 386722669 842276532 482487735 533314377 493308349 690035526 41406827 241926742 492661035 874429188 941634515 969349668 359754865 935634479 633918829 821159448 482773729 893961673 32550382 158754168 345823279 750675567 433854642 463801614 197423996 276429320 520263571 744579022 789218397 852284700 802227661 874255239 737067545 788885040 449439167 753649114 816215240 887539873 560919744 754575723 939671583 957306194 802309114 896135376 16105999 272992267 814985029 998821700 384999249 715001100 363587418 769879722 401686745 448709882 95998414 817716834 668618040 900953107 899859536 914058472 212390951 712261036 841851751 844407369 320851751 455097830 827201608 901602507 940168499 949501851 398939938 956373175 605189806 899477512 868685732 936797978 238382592 861007161 745595528 998706097 453055385 666977825 134505797 502653508 304913407 359566241 634118091 738884595 167308783 666514636 511294889 737667950 156531578 852233997 899956470 960404800 78766667 604219135 937318169 941341716 885067045 894067307 744083847 798092316 73707857 561279313 862874737 935582650 954095067 974452419 101801905 537354177 811178999 820836868 166496102 576932576 262603041 545707555 944529726 988169332 101676748 623475709 50249855 892319680 13088225 681412388 568442089 768816412 721601250 828676979 61988833 397638123 675041448 702481749 826307910 875099621 329778080 338969970 750590681 821818530 524503301 665046290 847368469 901435663 369511569 679983002 420127867 671334560 261335332 781964036 807766483 958718813 419946023 963492245 903572999 959940515 386284263 991338993 686516277 773205680 158856566 402825018 168567660 831704070 680338269 719858027 626612860 904025926 297977385 541586961 363834036 760826485 287943510 783830733 33245243 429952147 58137099 757419549 473904592 519184473 845481764 861069528 287359731 875027570 597125578 748810390 150543681 938603357 333079640 518730931 34648439 518672712 76207869 780811970 24884445 146336276 122657635 192185321 498427265 759850978 562410414 727497545 499155090 703424894 721543869 997691522 674514819 890762098 1371751 896399448 332696127 861936493 52195659 640107246 392855452 954222271 154509323 732041019 196374398 572334840 563172022 634901894 525593594 737752552 947335571 995822035 999953951 999980582 894232498 977060263 393711172 829760247 312888978 450812250 474644414 521226227 881786972 974019814 562905270 688508013 224250523 889502436 761681821 763464923 640320706 912573328 204513055 638905393 712720997 937326007 809632892 943265680 367824329 984733726 566780404 941525475 662974538 739977066 833289801 933808425 139372271 481441273 594124792 936849174 651173289 814856520 691369093 732119610 820553014 991002035 199213298 614512506 865679499 873891746 491195780 566746113 721517581 951095361 213032657 862346685 217578675 308906345 683093297 917963356 614649321 756717098 318104576 458911697 802242693 805120580 453140438 557365085 3166313 64929796 124821871 312603072 756670937 968194265 896820669 903384022 804723169 836006963 171337150 391730055 953565802 969543192 532897227 624310374 257620213 770559986 866176021 937588915 953686702 984714141 880772942 906142987 202561221 279655192 913045507 934902673 731681447 886687817 817621825 867959823 552989839 993085627 65158905 719649942 290695935 868757732 426987274 715866843 555011364 690896882 147160065 618526695 235943000 247407887 565172691 589841072 919479438 941335595 898738791 939814987 681569875 838678528 22021655 229484331 205677216 909933889 722855626 781051037 209749286 653717814 118999650 444724996 668979516 815993127 584721361 695815463 905439845 926779639 804979985 928449764 442960333 511875341 658823316 735936296 151498453 505194974 13575711 911226612 404055827 442349069 955038092 960715884 717972052 983098222 682236044 967826164 844026379 978867611 443293623 685884937 859046043 946576020 572565986 848661552 113226399 507952601 17263725 374660809 300171046 445628409 232575410 800458834 78059016 660324833 281198948 974992408 664978824 957698655 359222372 765570825 639166927 692087543 626715519 734684333 529147243 728687374 739323649 759539874 143092235 756842813 859661065 894108750 136761920 311286651 275671974 320729294 502740212 965799364 779653781 808654581 266057153 806666568 667826548 981435695 358937894 648175718 173573145 255449708 160986048 400888953 792682178 831425910 76528669 183228228 179361587 535732118 470701285 660137374 801412436 948686716 873300966 911661994 587091348 972840614 737961961 864796523 593390893 717096320 137297605 509872076 746119229 884729970 192318232 970954137 376386982 939631917 945530688 980711130 736033645 934347824 465728067 723497392 823411758 877515903 37114691 901198245 649867870 995602301 112803465 407754348 385787003 972758860 968256014 980736957 147164348 348417665 991113024 992500106 378907717 743123567 563091441 688957047 585365197 938659102 847427725 924016967 846662267 953299368 859744074 962542830 702181396 854153518 282052001 684642856 360441577 666540366 773690466 979362367 513053529 536586283 433664518 827723264 167486440 217497709 827921190 843003749 425223870 643683197 159968086 343294589 534849397 882336919 916299247 983798643 766729060 948041317 222267856 577877274 547578522 604862326 208049997 550444043 651160446 751472593 162331932 435993055 897476004 900711978 428236957 747409651 215268728 847695001 33370115 725117213 793813626 866572136 373756645 437377233 417990542 945788210 687629014 782498135 629870223 818055262 525180379 755671793 187784976 195402097 520534979 990040556 368590822 871980599 797132534 800731430 686141926 705422899 927554785 996577441 653610673 665253079 855047729 866041599 345139384 790475073 739698331 900193446 515863606 958844558 910274540 985307821 133494406 766581110 394520808 423158890 327802723 451754729 191467958 249549632 485805998 489155781 148255408 193810228 395306186 506844212 162398391 864597822 8362034 399768804 365516670 941829141 563817157 784065555 584525219 996987859 983003774 986298586 506766011 633568054 933230838 943331502 242089330 252064333 289689538 452685758 895648748 944371880 286841273 959155418 209902441 268659147 904859714 985633795 58700661 916151013 893742899 905606630 747218897 934154035 659233295 830035405 367847533 665828419 544902397 553523366 138400444 391143148 126221343 454104856 805295521 878833815 637931450 832509922 234670114 621920285 519385721 656018223 809360906 982544967 345308118 473071213 82974454 482125519 446441400 909268497 915377564 931778791 549656527 916465842 75730819 140163283 822167792 950672308 28313538 111576333 315376245 456925186 272259895 911849943 463407 904407503 277709823 539411416 943627166 974665208 127419565 660989053 296731354 639305276 497492744 633534915 822608236 940603828 909314845 932258740 738379951 740202200 749032366 876305854 621409210 721694387 954192807 991664333 325931204 964947575 948204792 970615461 59785892 609191604 884570360 962356519 100442075 899513300 678817207 709409944 37407358 352284718 115690639 592585517 453856729 956758453 173773511 982046919 332825368 915272193 457997702 582508711 833271989 869667791 334237622 934338971 868556594 973819605 610557693 647796193 539814558 856495781 166573841 821720824 904321605 992747592 676395812 781677871 340549693 560973330 945922896 968056016 639746011 961552070 12171908 540457825 559580909 854837398 400621231 630722586 839506676 962165386 855643039 928316895 939466444 986182027 556673368 964739656 743452450 795732336 879898652 932886247 280062613 394665992 687929289 766165910 602568056 787084766 302289875 972374780 819813741 867945712 297023454 661474520 378669577 642009071 441794913 846329859 946726875 967347696 774697446 838268361 238518052 464669074 752098068 798696242 999201951 999961961 938607404 967066590 507131859 736028252 20990185 272440798 77977037 118818854 390701364 533830563 490688437 780565079 67222307 250684570 645970276 880675101 208640309 488873806 950481540 990199935 917755911 970918621 46846766 565790257 331493817 938453577 76380019 457038221 453027524 907381797 822159656 861901943 928703393 933623244 438137845 670445445 131081935 297325298 362165460 453445395 770274925 866307659 731714898 885089417 695915065 798203018 159095946 208740188 361007185 659230455 327415557 340034782 660456959 844493121 446103096 738664604 313689053 598176857 241467579 457714536 136737108 863492800 167298590 696927464 476995423 669881403 208921708 221453339 108007037 264836117 111411040 236263474 981103873 993694218 923295101 974830188 143710473 322723496 255101096 555766906 392870443 556788497 42225105 185942114 742163130 797418516 383527261 552892383 262360693 629173426 329828791 482365630 304532404 708768195 747837979 843579644 451024769 881627487 680004561 835586376 284318386 509690354 925694 176689308 812291105 821712267 968326658 975760728 971052730 993929435 24079253 124421115 785450913 805997443 968694011 986244236 916053257 965277797 227258329 777752194 152785705 808514449 42444472 66917552 383980681 882770255 242519006 478547100 856846018 866789758 370814474 975284177 241262501 717540988 432129685 857216337 581248342 585289772 193320269 675211177 20031913 785772271 333982235 895727903 357941959 800589364 862023684 896751657 528226607 761092376 804291733 969415081 394167776 803553752 470381527 609524865 682147231 734528611 323404524 999873717 680006506 942842517 187973474 862576110 675652899 773555498 844520988 940662481 535523394 827329149 766976735 821268840 100378852 266020461 689972418 897456510 705517942 741070477 383463984 672296309 161686724 360839976 462671069 466179660 109504200 208286329 867438535 974479604 91554228 409792607 976773695 994280314 42755556 976926025 872019986 941840007 925689700 979195607 743269031 996720130 292353536 784230951 259069645 676645416 788171395 947725851 559865181 914182262 369598583 622576236 596543152 987025668 61191459 827431672 203753074 737433527 247459537 893313884 98000878 908843501 361156977 364776863 84069731 997568552 530131281 960280205 99113954 317476345 657304140 904162987 691982412 930769448 228587675 828168327 698202553 927091315 681341816 972533668 591609002 962186974 132584843 579281916 664667904 890673650 904767152 943912269 669703547 913509611 456601359 584976979 609514818 698549305 487485146 738212431 716524380 818913713 789615276 810144454 805306190 900780842 859179102 983572973 40550262 50676566 260840746 920434825 634072604 661274090 73767257 400017123 218228987 386118526 899823559 968668729 974923235 980313447 23810642 648508117 407494808 695037244 299260893 360265875 133483492 851849947 371323389 460028387 509540564 565551609 517307513 706732542 916623170 921158590 515432237 994000413 391102243 459821119 36529290 539737510 922555458 923066483 973829886 980611655 962354142 997699927 783458966 922730636 640672891 892106283 454225491 632204837 981484898 991339941 980285908 984288465 881422164 887064498 150334761 816852993 430379296 830830259 142706848 796064860 4469893 836303526 362784753 764582413 260675712 526432029 556995039 905799164 883948155 955602132 427489423 749811457 658350094 884849319 580932542 882340819 315082998 377320186 923774605 977566726 235807936 687089617 279352841 681106419 6688945 853639976 739446822 844315748 91558149 688222020 251218391 451363798 68095505 79574975 553943670 868503739 108063186 145820282 330062438 624229416 861846994 949790678 874707256 917719402 997499674 997564584 267158385 788430190 796975203 852409534 333765284 462713227 745110610 995968797 196834808 481896916 911597861 913329728 760706258 761102838 706952917 998510041 798875157 943446180 833392034 893893186 488040606 624554412 354079594 580091453 265545027 539295943 560179942 755239102 537239458 586534623 605389859 642173869 981650675 996136200 9917494 922853637 576778566 798111262 89887962 833585039 188454538 545630475 515892998 784418426 719111714 932952530 269964801 455426002 802353428 845972321 903536899 919433557 183089773 851939652 19002479 352207787 894718498 990311655 647799694 695314397 865544707 868969741 236885875 473666937 165052993 736453171 613249895 963001598 377417409 506415074 813310691 877980453 428202931 722853110 566291989 571824677 621125591 688591287 818483453 994536123 557630840 948087243 65603873 356029696 241984234 697975212 523765666 711202076 375751549 742213364 442288394 839970282 920715839 940147659 828116280 834419810 160628849 222430770 774389957 871221055 712725389 742431553 192686204 739766565 678611658 919865322 943829087 994578647 248020646 906906699 307971332 920827806 182749690 222178141 31305200 137926873 972021202 979728767 923561474 974050705 805463595 849189337 384466315 637570160 961296817 999613592 558053734 903271836 636470079 864077977 435805843 878598133 700742855 964087303 549662710 994659742 273511492 923901856 638215781 699638944 269473245 380106351 959715698 997115317 282493716 389578971 537404398 667318681 907074249 990333235 585204251 743324845 7128403 147173883 509976720 654604087 708491079 766976367 894698963 967335901 860937155 937186295 586298145 773720413 583983840 832263744 535247463 901959874 370751833 461384244 725218917 774676446 370286106 765819725 272655040 925775112 500682423 595958399 357055421 488051811 804769643 975483558 138802084 168063013 109940539 499768298 890080222 969197383 850841877 892408517 165670722 448948719 93296913 949407945 614360198 718757208 72169531 448784238 882331660 909478149 75213025 192572169 795346887 999546692 676725140 717120454 87852622 911030771 352031607 611923688 151647026 792253976 254083636 256314132 651537276 886269600 996011114 998568614 443764894 628231415 870078384 977259561 665458778 877798624 800924788 993720812 730852452 877881743 963135043 973942209 525928077 856981564 335903922 658755168 315027389 578980849 37324770 87843129 252605166 792199716 510730536 511718807 153171873 305324791 464882920 841953096 702814396 708900378 772637864 789603612 482736435 806810413 495545434 840218818 178786471 359996686 730426385 909102137 142342992 805844409 499703699 587613045 720544407 829379200 741360780 800699910 710029050 769840420 528329497 810465942 690829277 727232040 683522401 988448159 689749008 981269235 594949478 692170904 808555981 972266991 271242352 580857306 888314231 985476880 249173926 959018917 201220646 934440527 636789983 692111604 465712922 650285415 986169796 996247694 400118495 403303754 805113365 977646279 870615550 943828659 111352587 343594683 32197268 465481855 727564900 852736610 364880096 709630739 343734379 823500338 988914250 995139886 485254133 550335497 781953920 799602462 761550394 915979883 779311289 918661542 849422531 946877207 82777450 102179047 175465990 916038983 527860923 824792839 385801503 575697267 856246100 887212752 567779418 861797347 617004704 737352644 325745692 742059568 880459218 902163426 282219127 690881819 736806471 842700628 327955235 708556354 442224467 632951908 821349323 977810948 886081750 935967448 930853714 934347972 492984197 871700488 204350586 563632139 941586116 972788391 501558401 775275419 671678000 823217029 538552171 849215600 6164230 694539521 819291249 872909970 905621305 951963404 682007134 731971005 63577272 334883779 761881578 899450821 652398948 933764687 216976397 339418753 15520767 81780556 256102474 752207129 724314201 806062935 977154640 998969852 717821720 938147442 37111954 237669273 140269969 759519819 747728931 830794563 594499054 971946795 618392138 880041263 607019855 617706577 618099260 767424140 258057949 339749213 966444140 985624168 965946473 971750187 335880074 363914760 200539921 968696416 917517823 955526378 505783367 638861333 652042418 994191294 364635703 639647606 977864336 989245581 809957390 974593526 756426765 889985883 365685630 964764262 745853246 852361897 702941376 849425268 768661911 820755345 767031983 931441071 741152432 862277933 769240267 862669174 514167491 671438412 35460771 427535509 73033638 529127097 144055963 741130062 630793425 767681607 137061897 157573937 570280136 574104330 61831394 500060890 698430358 966632521 113408273 924836264 898124515 959530358 351027557 782504047 614078410 890841511 152901879 344295946 73509198 193352494 481971730 651212132 418283652 989804839 421237987 539706063 67061666 298167960 612899924 918397778 272741311 810603197 971848788 990436997 279525879 292605912 980452301 988266715 45866742 113878805 471880772 899481890 982772260 998856944 318442493 983102503 74472063 679381564 254406168 749051678 322834100 493727548 867368765 938138083 996060897 999016537 888260223 906655288 430085767 435758561 194733091 327277071 440693590 816934685 740078645 964221809 751982069 782475879 575452843 664371983 234985356 759668356 605427932 931321607 143671110 517496561 957409319 974599219 497250382 529044071 83242971 659728600 897542914 909810774 149045873 284419795 420721646 992130147 485700076 626113438 489902024 924604747 767622922 968313086 136074079 574074662 615429174 783455813 547039452 684411551 87440518 883411417 511772603 543503441 648867141 859582135 18629905 397908999 510081958 891366339 270894105 755874608 788435958 818764601 223262956 333514129 356215020 628164427 280409591 836840064 579831166 915363500 50474391 857529121 44189972 737726855 408738266 894711321 779751214 936926718 56335680 425360953 865997645 868515561 117085514 156629364 375520735 829531621 423743557 492506234 18799135 664761821 837058307 851801318 904520352 969297143 424677167 580020798 13255016 898288594 330424249 439394931 682484263 902370412 476580081 992359150 34207430 840006084 173078360 589865433 511833807 853795754 457837036 681477310 531025251 675120177 305846739 835058655 724949455 946111393 282461016 889005827 56991388 880850948 304922235 382920825 612042983 820112137 17815598 18821341 785428873 860726244 619334100 705135275 279664429 417638856 768458135 906893499 882559139 977192607 488600421 586454346 147901440 161562232 589369233 972867751 769808993 862964411 133577530 434555556 718395688 854931841 419202492 846065261 611167528 939363215 536504616 642093553 784397208 892811647 154934533 156259424 425070365 939663999 187685766 842151306 938847845 942771341 419628420 880468064 339159332 676962661 761190430 879603376 672168339 707823869 132041815 232925050 757489446 883341467 513619660 793388476 883987797 923909807 233082915 306254095 484800474 883773801 427173627 853790075 415560336 597668936 670086365 794195140 209590273 395387632 927908353 942987761 907108526 956922262 350335371 462441437 637996888 785973106 657336722 662664501 35713936 183254184 251720139 986984305 204214615 347802659 69629024 683988176 545918798 621753474 803871615 994988210 249535937 557327768 178654960 520091343 481341196 813019877 29083894 568997196 800129882 839991537 311556965 700640713 564727733 821532175 585720313 740995807 901060900 994608144 567899391 803964616 954331448 995995045 52288320 456971461 549793901 746381587 156285589 906772435 158858233 570164915 80366795 355360807 314866769 877022622 890176380 989748243 91291012 634068625 382783060 720141099 54697512 393760336 175392039 292738589 473565174 926608972 294910027 725768196 605913468 661206521 256863531 928405059 938871028 942918068 664559726 882181992 383004277 536544791 509717488 605527969 355021582 699244357 484686119 787226248 57891055 914020256 85601908 954595232 780182366 952931179 48759892 967517256 68260280 144987235 25903609 358329820 780012703 834726140 745624419 885590916 49163376 483593935 557434249 870857582 959010608 981858132 121087428 701626214 501678971 700280560 951740351 985485288 356804895 742472924 642310643 834067907 65122833 458521583 169958765 457253928 108758011 745179705 105226362 810961593 616795758 848977135 956714705 999624564 205062093 400699258 234462120 916961184 95682599 400230539 833915265 898324803 876238647 907540139 456494457 474807024 436095057 914210709 982133657 996594928 414277388 454166255 343760409 558887826 626634580 872775397 69000342 939065176 759436369 842383733 115937979 774019881 203310119 646597590 285288230 859707605 831256468 951367028 908823601 975761264 683901070 972473360 136806455 242565145 353197788 805353019 431053886 841278418 834550942 890017415 521914928 926383775 400836014 451635623 205605714 961712036 568986662 962547355 553969647 656880666 651645474 799044578 291915895 679046816 563183759 666319322 984626280 991172515 514495040 997837668 621677635 735991433 598868972 631582881 942940580 994106084 646730640 920465899 547132259 660081124 519146456 814513631 540260563 889368394 327822875 793308878 143883276 635965511 940687710 987775994 651285128 684277067 444882429 750835886 885090854 972232845 801344013 970155689 343191476 823588407 257606604 723495346 56303369 972728056 159717100 386875461 869799526 917473601 83069302 238426412 740209026 808048878 278387517 717949072 100519565 584308384 539556191 919827422 406068324 820455561 493096821 951053989 794570215 895747715 66847867 622510314 378864425 395578004 314987476 900903542 984771659 996553593 947056284 993074354 174956460 646994573 737460553 955912572 211329496 418370925 119097857 415300197 736945239 818850310 959930553 979290042 417536334 568959722 318154691 840337714 791267082 853001029 644028109 730543527 647963416 746119774 760450539 823358599 189544445 878054775 956132369 998453408 801122218 845792920 448773412 549300370 895003356 991154111 688780481 907383677 100769576 464715148 665502414 938741019 515751279 725704637 68918629 191241728 463120035 650431021 78480668 390624031 242563746 780085882 217114676 426494743 606364680 833986214 729366371 737805183 837068853 943575162 52330099 357169968 874844253 916135574 793139962 841372226 873043456 900966570 639255505 830741824 770657031 948212731 261293735 495677633 67226884 641601970 714026498 845961474 541575759 780456365 874867030 972317606 424899329 925727460 967682910 971777150 873832481 982982508 581269243 750635371 936642425 955936614 76882349 877590733 908902167 934454932 73490720 754952594 771392507 828201101 549630065 732712243 540712786 706335507 66217164 978171962 83796274 629325699 125399049 254876662 325679839 597186107 725153970 888186711 72710963 219452342 9420060 932975357 204456386 809097031 295124076 699660948 871910661 922915358 296886877 534817139 593522498 771052413 993042123 997803886 792464248 949396760 156470149 319630881 52676289 87937388 568546500 919233112 229480510 393272542 158105420 273824693 848800044 877526379 769607937 800759257 23396704 73343381 733346773 979532715 767866307 991644935 460796649 678955919 481532421 623614685 559649414 851637583 608516353 929303302 824084686 855077283 397347678 444053550 818354097 965742007 625652354 781022068 142152759 854764665 364857440 667827860 338584114 369401303 811033154 937245695 769149574 945072600 307562638 534253387 977539036 992641796 851366740 875003879 689783645 923368017 60212845 428568109 427077028 591063193 229890172 848694832 910503443 971858474 461359100 636871846 665240339 780851310 96208680 985747944 400650825 799381052 694874127 754553035 101644580 197494882 475267778 669681746 65308816 998993332 426903450 962083298 819658095 847424498 842841446 898660945 574092095 600200951 27524432 438668130 837237701 918761855 246758326 982208297 718610750 871579364 376239887 679738242 490226150 533317416 84584234 438705394 571385031 631566368 228528346 807526115 499095164 584578023 102137839 541872350 849887799 912959999 667399195 840834585 507804246 787158863 383708891 651582635 199590763 278304163 706764067 779171096 511169120 926611094 68053808 543706775 825957362 853980872 19423396 242862754 380460840 713838330 3785334 146728864 919244093 975062593 215383762 369171110 649374537 972021713 107595254 426933576 51471132 286952058 950721809 999436493 57206892 687455236 943221737 982491522 862688995 933341507 161569370 273426225 146675196 845541747 622037644 923418005 866055580 878770240 857572464 997564027 187337790 187531058 11531793 418737689 910478242 956252575 905162781 917139475 783178903 978011833 741252545 831889975 40863991 86861828 112732954 683827028 359400736 517972768 447415217 813364765 969043805 991667538 413335942 921843480 505663037 899312913 747949706 946334018 943726143 982813572 148687480 240624450 584123911 815505413 566243635 663708405 821408738 987864381 67429902 733108850 602905058 662089415 668597288 928680355 595748734 904278703 469027118 709883101 876536042 981827281 843904832 888389102 827380629 842601380 392411101 596640225 234186136 261014373 829433390 920308404 931888990 954859393 762289457 859144636 145146828 933853807 318927555 611986674 81627425 961954174 285152498 417641303 93478969 956492513 26145351 769424766 197870359 360392220 659148392 703703142 871478135 931757633 277319350 992473028 964251449 974385562 452022971 591241659 711767344 996239680 435090913 895229826 878745740 952497870 134004705 454723636 255851571 867315018 988162761 992860190 610648126 696884410 800105866 842629538 208426723 217033132 26285983 810153443 153794992 618069376 919901324 935461937 872369075 950201939 506674661 829820934 545919092 708515802 580757011 585072213 934885947 996847598 688068364 727425340 422168509 575324144 798174357 867587005 944932490 958092518 864450496 883353844 997626913 999917965 386322330 700403473 530703286 803594489 852748042 902279423 426207852 580969748 585619084 693747453 444658073 766507845 711761820 891396654 88160129 759983622 717956930 827606048 578688664 661974735 620077443 945830893 660327212 864090211 707560793 766921179 517789924 768429643 169948648 670536216 294658336 366483084 923266932 975576941 71730823 970693505 544781773 991477369 473697389 991273893 892883018 941094362 503303160 566225882 686386908 768065789 844970084 940589997 819023344 854102681 607845219 844509563 869761374 972042353 803615585 958114346 627465079 751688338 25100716 850878803 775193118 955162934 205483638 873474687 588828509 668973699 138294001 604203088 260818925 453628872 297150663 411806848 66870065 296842042 424686903 432337223 884459506 995726329 400196428 752451156 74309479 320062878 316925449 347471998 929911142 966433603 42312711 408619582 586552808 854584109 369151856 566844361 527188107 679478698 646642520 721750771 695921296 926194123 832596642 960807520 419802879 550095120 106507319 364000482 608985242 886613738 40876043 903899194 836317828 851568057 222208821 917754313 387321254 625691216 192138758 221761078 824118610 948955851 552561280 821543212 378724587 978444623 63114031 277675742 231864122 511185067 152407351 516733198 317819390 365075099 801448329 913950291 308021852 924908458 93279687 380655361 862270805 973190577 13598741 678215145 371769058 989641830 445240664 698793206 412118014 645955364 492173651 653352999 509992101 862765026 112311742 480523788 917903158 961282875 805093731 946953341 376784413 896705474 976812672 993565844 282866637 929698726 299118504 333482587 306971945 714076715 232495649 922045980 353999669 993792139 859093197 928182585 683183857 889532015 62494654 918090081 458115662 584231241 774294182 837180444 638604323 758669545 125445457 507212445 835869483 972476857 687259159 954713446 439376025 705204205 813118919 907468703 810683084 878096146 907070137 984395768 189637599 194860987 695704635 993988739 561144046 923962112 367797397 828921511 454407359 800776484 973624889 989095798 703661287 744293393 226458673 307719726 836111925 931973611 48728308 159954610 293983315 696034386 765569399 907884834 370285705 837492421 508722596 832066450 247480868 968838276 936549825 970693979 173508496 644920189 907519748 967744745 738671690 869830378 947795476 995849709 274709826 675480257 997783360 999359109 637306178 833338588 778699938 813567660 16004756 110530107 870946805 964851571 500598635 701505677 403449613 484927190 126468216 438021792 347187767 692447374 519378826 995627810 91221092 755036016 538030503 949479067 110522670 935463677 890099816 992207236 383586528 528636380 238205353 761409760 153723903 825342982 748872230 882339128 77442612 178393712 507019924 660278965 206423504 384472717 150259632 591725719 326596643 442682760 959388533 990219931 930518811 934006011 124981054 883970886 638051184 708835431 773036349 939363724 284212105 726727500 453233427 557300208 629754990 803555160 609386158 955563455 487940477 987115519 639577569 812906505 129244296 168140378 405989476 970435345 651453930 841106329 809114094 814120009 983053107 989291484 225643640 296934701 91653626 893434417 63152033 949179074 603898131 954305050 209216068 725718999 161917348 954868465 162459044 475833210 129345444 901394539 817686481 856770460 883462411 950641262 852910194 961124220 977115536 995601965 921516537 995418971 501642228 694725981 346825250 771476349 432515415 677475978 776405921 868866142 344826651 951773945 944586149 951428557 434591557 847383133 444099986 962678347 592720495 859481917 165859616 865419113 930221680 936124509 521813691 817285208 37400471 739553004 576247626 930149464 75400621 772666731 256755819 522231514 7957335 62020755 32461353 443644062 553707861 959601314 721190417 943953706 122347462 446885406 79159348 205839986 124229408 912941527 584488107 624805286 324640337 714079808 730551082 941399155 290828641 842234386 178064070 742215092 415702983 543168540 443781218 819965324 933901613 964107447 612074916 983778316 661977881 932602534 692369830 824864966 509362459 795470163 996694750 998120045 860656095 860835920 794973008 972189707 984297155 994431109 887468600 935375423 513877436 804132867 612034183 761757774 534369305 842734563 725198516 728084373 496294396 546626350 336634911 884979070 31240313 925845294 284860179 870295264 27009420 616514327 127004078 671133352 60760653 817799047 597418238 878756952 684504453 893802213 243444721 322203985 464687910 673455427 393256842 506608993 857133480 885621608 926503484 999950468 489750260 682790813 564856554 743843156 136696069 770063625 61554564 275788494 551993821 796454548 425087971 867091805 778805113 886078761 954333518 972392229 305301008 418410468 516381035 585989416 775757782 932683206 552201867 739215549 445127935 718250045 838127697 861848764 764832522 905543679 983140359 984840163 85564592 508416609 38816902 388579792 105573533 656506440 820737054 988750529 363092390 518626642 653835866 782781990 136885097 430038969 486504158 662593021 788911617 906273557 699583815 836881016 885752995 949485263 52106246 733477833 336124833 507664883 40957775 926381709 646663432 723382164 176257430 744908023 211108794 571258229 340428845 989718448 174705922 959032255 970282117 984868633 354662692 919742425 638209117 745871152 348342546 667291668 633862225 696383066 789631539 923441601 860077612 922136541 898843344 945100932 849843812 944836247 975213770 989912549 231577175 865426773 792577666 833471335 25378953 535850333 181660186 737244567 286048681 950943336 446967237 533929345 843874279 987176402 955608534 977390723 998017571 998700673 36014257 942736097 483178274 629517598 246885415 817911947 607269184 903788013 371166406 870044885 391390450 872505282 164412661 612144440 944547573 959122686 303917815 660485623 800752087 845443366 541253201 817802884 969769730 995198176 707652798 772042059 674010454 818347506 942161499 988933250 543143528 924614809 778774551 997109539 834432899 927490415 175707972 670143385 260815924 303087273 684328886 975368072 452866565 683246706 178997838 484809403 554325379 717820677 890565404 954917184 143680177 775498782 990425659 999108744 759036861 783082117 603063457 811606734 874037560 992976714 367985018 721937870 267462859 881508087 153810336 899656782 642901975 968738119 453985569 688378482 104467180 348325019 912389074 922936080 236861496 715327382 583273483 789190830 755484602 917262742 683049985 821951148 624902931 707922759 541320522 927121218 935148660 972870147 640958520 857676089 818117109 933594672 582441113 809286073 561016754 913280473 275641101 660814153 400497688 475319891 393190880 520068344 848837912 899232234 532851186 839500578 278291197 480003274 423142586 505493528 204097828 807276776 993312448 994990499 621306434 981876168 254897493 930358636 506499281 939120252 724579254 972672818 883006980 890405889 228906244 864822798 793329773 905850850 767362519 855569529 839634511 929016512 59299411 498228094 950578076 964031089 257278532 812511611 145831696 217057479 400727633 960877366 818957880 989422421 898297040 998672742 993579527 998870866 492633076 863277804 694627121 981032965 960416544 963810051 580174692 828695314 382433333 462102982 974702414 982620997 340297986 640563349 469551260 470428596 352541248 910372988 160234641 615604110 20038593 634771595 970353603 976182077 230595747 367075273 668563818 975369863 46431085 818677316 717179064 879054411 148929129 949677183 821856223 929936767 900502298 959731834 1724458 856627862 173737368 750120901 172378780 295780243 57766753 65733262 764487666 967374656 64787537 806571436 210882236 389441027 884239726 892947168 92658961 129631236 684293905 725694039 194143142 836131273 315762416 810913546 131302295 279858179 257313093 845166556 631745430 928334357 21865978 832678216 527127526 810387668 942331064 979384606 223418684 960592509 436998914 969941651 226478646 346597140 145931221 771976937 758046045 787967965 389394225 969712201 102030627 719031586 219610245 375989690 25159925 883695297 273619378 335255387 222603430 543632698 182703489 196503883 53862131 967418950 813374392 957948785 596771607 735558679 659039884 808846467 370277303 935539960 981028598 983631513 794073026 842214746 485760054 834405824 11812731 431516793 477412475 598681856 702466432 702717157 328274102 683711533 412433750 568399291 10339736 359262213 668851294 921202828 937172392 959157783 96270748 424580936 943387858 962244424 411258264 728627927 34431435 641452163 58532416 156743386 825872205 921748648 865740961 891470521 335473646 875609314 854506863 989459433 401289364 436932948 668421625 669350234 973885375 980804509 177514015 372416053 339557901 470819838 959399431 991753436 957899758 973595820 140064581 497248206 872593526 977838564 137031166 820666305 865401958 870479667 592546033 804818766 728758190 781797429 939465162 954938232 987888332 999368859 485713987 628911080 45221580 750103594 877619450 985237282 415309560 693543469 646540560 686536095 563410780 981410215 206717254 805976406 975926487 987300088 163234093 495294741 255388981 312963343 61181131 975738146 657983807 983092316 178935434 800709516 385662598 487173038 923893072 988229560 286943327 604691700 222658470 280884428 554625954 641781406 95588550 305750216 577953259 580302265 634359800 895035480 290786243 831109803 10103041 863688424 132751750 156230874 371004894 891513291 276707306 507929002 107837149 371716079 916711542 934900331 527578883 707152029 50326267 945463644 297377398 358445458 854969845 868377203 138770499 340723966 755976614 883171263 480650381 676600898 635665552 838076346 499496248 908812983 555565714 605521059 215207420 263275192 994416446 996495441 960786184 979985689 972751520 983271530 130006009 145891121 692524775 981508208 652088338 743960960 179039012 641513401 132119980 962346953 848182589 980319914 309471401 920983867 231217140 773553491 373689735 473157484 120315181 713967806 469751649 952362454 354500667 768551227 653837350 746679223 345360825 647601942 24994553 260698885 623240382 798821457 500005094 776378499 663716926 787221596 849713659 901794495 868461007 941538741 230056712 408231633 848608303 904070555 402340990 590806840 815419453 996706227 469694286 833772890 9172297 589764993 443779042 497615998 475965593 650682280 53672094 371752382 438564238 906291349 381218932 601058026 327792470 967831227 393997592 423528751 404468239 654521680 727207677 784314830 824705695 983518977 935320135 951464806 656118992 794261085 653577171 888965762 965038533 995047666 91167544 189539120 976523077 997079033 738630989 863006673 883094278 961151776 477971636 751252449 543417600 868286357 71382401 337935533 21861178 797262003 5737282 863743621 205976310 696582436 8125648 248201775 96383232 103131247 957888242 963613472 349662342 937825218 664596303 956461388 54114595 975543994 403545204 479008735 157625514 832785188 544730436 890119542 295732091 355761531 133551857 715839215 686755577 939100921 941086574 972384381 4700078 980015244 688943085 825723746 705940730 843223899 45590564 146415593 425343262 836938739 213009664 987943279 822279721 868719626 43806751 239251800 999565752 999812115 420344035 641024556 34136821 961585333 325124185 771762876 628233696 685370153 405006763 899413289 787882027 951474089 880435567 937083939 13369823 192392894 692936213 904209271 458376916 698575001 787839131 905595541 692223937 768471750 612265948 932944522 841813744 969701125 783364956 860335789 860873697 964840486 831867118 869614237 901070861 986640502 148354348 577712526 381464955 545461489 730460795 919567541 184482023 837820917 109585743 491960115 356685900 785568468 995653546 998868644 925901395 951371365 205224842 526135900 881051143 926695383 476574491 760793982 973259644 981184739 77398509 539090491 540885835 600689374 602144334 690177251 7743100 233872460 326612383 476500652 529483002 776724374 953384390 990585657 101177971 353520686 655883096 833533012 757448421 807120243 505687470 567418852 166696201 400397224 579576257 757630572 616551166 661815871 423249519 859413980 928024042 939983521 728559681 881880661 802331385 874782579 503127867 735934114 132271639 443421195 388348109 589106223 698740945 852620000 816386723 995100403 772296929 926537357 215309085 484119870 454011177 483910682 727892318 874124087 826274885 844494413 318425042 626572881 207821252 781015213 272131554 443051273 172137010 634656494 313283649 863515621 725593792 910861565 35705543 729278573 526946333 855765776 770430354 987599031 145063984 833068423 805662984 981857999 804495032 854967281 402423765 429451064 475199537 674978191 431798743 902448053 782939865 949034448 833030385 884180452 801069350 892034370 98020342 798279724 686822986 976392896 660356488 766533895 934388619 977178115 32654532 134286500 34512010 105950148 312885593 824154412 600945027 873081582 374761983 507361242 191825894 695880897 824376841 998727372 63045058 387792641 934663771 969217840 886618930 908197756 745540186 779641718 146138848 905736312 621483267 981122340 432549629 598141495 857630892 885232405 363340748 795800848 985101166 999823545 504858164 590658831 742301174 997259835 259810349 424957907 718966663 810428127 825626739 988489732 15480360 86646643 326646710 977816796 356577989 436281958 180922542 464323424 163597197 658778875 103108671 760760886 345807847 398482141 605165666 691121615 340190222 942772057 899882616 935962530 400374312 909895758 170155293 420254532 156652405 954852942 788498425 832090024 247903557 973887520 804682198 991712128 560018459 962388577 935229770 976624237 782431082 967896125 756341024 854178654 996380031 998980479 221504829 500037505 398465961 892265943 555486459 558418822 958038503 994148791 973161309 997878100 449355457 804492401 722675998 975377765 742562900 934018360 125659468 643181072 966099779 976035642 628507531 696587127 944320151 968358636 490552569 886962537 367946204 431776013 447853789 873015456 104518916 977159319 792563934 979774604 519310413 894853435 648878208 827009235 436480881 991047850 118349930 661692124 986759310 999319352 928081258 950323571 445282116 460553531 441316679 546007604 820189701 911497090 145935791 990278671 884812708 993650734 860325943 930182745 78188758 641835234 191585485 906566043 478481245 740870076 47331070 822527357 242316775 914118424 503708768 886398388 360685033 999381522 843049687 872225067 931039063 993136192 435740828 900153178 39289776 641324041 704481927 737124983 600633492 818749273 273608082 319720880 296142040 753520070 286787180 476921060 104868809 475072734 438519713 741321629 508128006 559404362 151117178 198533994 377317585 887768579 812921146 891127677 438638433 714117897 832560452 889263674 469774924 673682957 479317485 988870752 24112022 750163922 410267210 792370440 498345505 529871307 235892861 528687741 915744321 962184522 162791923 277331960 484282065 624503092 613000247 856202187 883847446 945075967 419151201 964403917 364347015 845903793 385425357 780279912 484344963 541739648 637281872 898439932 131158784 629642080 49427822 772849643 104430849 312391190 252962152 930738219 850709565 975334434 610422142 691264602 248912854 639084623 293017066 650450935 355440448 594789338 492559233 657652270 906617683 934028960 950204027 951287885 474288466 764281106 87633751 97120875 775938450 796113735 435642511 961119603 48600544 201905398 464189482 883278595 128474570 582014991 555364320 636136824 977266870 988562194 150505275 934354040 35267483 801472883 262253918 809735950 913950548 971924515 665693390 960172395 520065127 542056210 791663502 860906339 537882232 569545563 767728853 774386942 212287660 654214729 167821888 731562249 521137190 891914394 956361124 983332812 795324060 953552759 632764808 811448929 180263990 184015165 642398536 866277724 931960618 987994955 530993148 561068885 814340971 931444491 383214788 945952370 607228032 937987490 463421385 777467227 783009397 849125043 487370893 815656179 911321218 937603102 848785890 887312653 454067793 730206125 910114410 931446199 182165841 735903746 941904194 991534391 977589988 982628100 178271417 741209970 788413904 844606734 574933880 624757248 365509176 856005561 294599843 361779072 577954614 610635315 524683912 550356806 698512787 796602422 590632690 864312121 153932577 891832130 558167487 587353634 601105951 764700680 207361997 373343153 942416919 959008896 534993658 693925193 68210817 595089132 477343503 821972000 574024334 778323833 333245343 403003306 301219532 378983125 452793709 545870432 652314121 978650092 720946377 896440087 678753565 847415960 567920220 884092696 4883643 386458304 659454302 998384768 566198090 672244297 461519081 781031362 722167946 976513921 396608805 534140735 2852958 614681355 1745473 962559510 689424312 747283606 866704504 911136434 468234071 591288522 369252965 825831572 792528526 799529920 227555706 916429209 902949983 943255227 134311205 261589191 483167117 778593707 976110274 980955600 826523227 935547626 804054038 985681820 426482388 565733120 148050837 807859491 184122499 430937371 239791618 923776520 482445024 844924633 668066491 863200331 864590130 986816308 57254285 218309442 994291269 999019904 3531209 986488726 14500893 934647317 220191074 810032590 117163186 552009827 906998627 978671563 160780350 849092880 145420006 154900599 993939513 999095533 243297028 979088181 414480449 922976834 383724893 610534502 516670144 516694343 447758771 863438435 255240308 949795655 478053040 963118383 533893926 774244093 288066857 436582170 486983724 810558699 497626269 696971436 188316384 429725755 852808465 889224685 7426677 770949770 100113202 642406783 869019254 995840451 76197614 494864487 178605201 977541287 649816610 689433148 945777416 982237253 796638500 928343495 560577586 902278214 860665769 974495880 491228242 572894213 166948948 761119659 397110731 436783022 834342144 881521511 596187377 602849096 988363830 988546255 201789409 243252118 864603163 954270097 253213072 792458053 531807707 890154490 338096448 968127091 481429694 507355743 38775903 80772032 288477207 813710123 477751335 611595651 991885213 997130956 852054919 881762238 712936757 953948836 274012051 444094923 622903392 753976002 231343817 924611061 52467137 425398117 279772262 897769927 87802834 408455992 559804318 822734170 782962598 979935120 162761080 517790609 604635803 795032450 401355019 448397011 814078116 823129873 72125169 116188116 343950804 866129099 886858852 953669597 269070781 279436516 802793843 917113559 70777216 110994329 349524894 914649696 941474993 982708952 860203373 898024397 652562535 780493094 828274945 976376617 465159123 866421555 165709505 711226710 270446734 281541128 682229678 902780040 375296936 901279888 397857077 853409684 929470373 948461889 593809206 832602857 192319931 431114214 320231797 536262518 616459499 649056169 174424162 223433086 554169248 788480495 572603615 824444041 275047736 573059635 994533163 994590782 367518693 938708534 64312776 511813424 164869349 629661900 421222135 892829653 338653440 606565934 539826948 794142367 105284900 432705052 203928949 834596790 348264542 426058555 73721323 721156060 251919672 846052028 388390908 470933558 396307018 732117655 182874291 730116290 575647147 972267664 252826224 923370879 74043609 628732780 706052639 791693026 533168015 922648417 274912951 411358837 624513265 900454268 151555966 843262592 336794461 940274809 897854129 946547602 646527865 854142254 224128171 982254644 171056492 533955739 847804526 873112691 565034997 709877123 905055557 991742991 183409637 225710550 764027257 943528982 925612116 983666483 389815612 729915145 828105123 985832738 810231791 818986720 568118426 761253284 347139825 931572924 784237443 902054628 300384142 525807513 775207210 971918397 70993432 263832698 985921625 992970061 185815371 985553149 439142869 680504210 656954257 887349658 584407734 977455261 357023931 456070949 539566486 663387089 582548573 645318317 254565222 627013420 670291349 689329139 446266038 610334109 987892064 999292472 290431287 459894370 509495547 585748318 313187109 657282829 200493410 325166134 164072465 865284240 392137363 788966531 251164262 917088110 894791891 922290524 73758562 665497183 784640739 931949194 643331455 837494545 361506077 917327731 651721440 747205252 426495538 706022253 119681695 937229746 903999585 932979531 635144824 644985461 96808427 878828708 338545627 598003161 133377047 504610979 559551403 967338528 106187870 618634687 92879300 646526843 514810933 787136008 764588409 862888235 703089755 905223621 316432831 773911096 211332507 782887016 217090132 573637009 548609572 657865098 528205870 809973192 684442003 995370960 893708846 940470802 716261630 758724424 543235207 938298971 801749674 895535031 440230449 962710329 84667523 188033010 595121589 784789430 506810337 837011255 147257571 209931697 833974401 950253332 531675822 887572320 500684530 682826192 328827265 652402682 949126806 986288342 477850919 922385494 456089766 860298622 593874483 938224496 984660019 994964481 225060038 354638358 215518622 453024740 868782790 999360613 46945135 145194271 908047860 965289358 824112594 830977581 822115273 858328186 303627258 782835519 394259401 441347300 930344336 934813069 253158807 837123392 834073862 835236494 889332224 953765072 51447483 155051622 361024147 644668679 820871313 864408936 900980606 963214543 654532192 814344141 648492300 988257986 773365929 814561848 608584488 956760889 117870140 820004977 709434585 718702629 160716956 939043228 169918413 960782617 359902348 769677754 386403154 912452509 7879534 215707104 419177731 494599016 616023618 876926261 321477925 468387177 725017137 729059848 536150033 823123172 287328847 981697681 549251489 616441702 631907319 737192327 441889117 878406883 935913097 947547135 341610316 344084028 619620633 762650332 96289488 564443066 928133805 935798630 683458600 714422226 545056820 797206740 740168445 973387789 721595939 884156604 211986404 352875955 323945012 915426708 319263169 980621148 778572786 913729950 773442175 781761119 927208804 956436411 453296754 565004359 790786356 823584460 91511393 984238876 651928219 940352012 162796002 752843248 402458666 495491194 278281833 597159412 506790135 853068504 156261108 195837279 455204883 668275804 937697655 985321423 379826744 550137210 142760315 297056689 983348585 993493277 988513008 992917792 10660415 432293312 766840250 945851142 398308117 538435857 562839704 763124849 41712746 62265463 245612878 325626138 855746661 943777810 58244927 746738862 485905250 755358791 637246515 820819648 484579515 636950021 120188490 945273843 454767994 529163927 641121388 838070886 470345054 778964697 210691430 640684357 101392966 941270169 348854791 507326018 507882102 941000337 989009370 995763738 720558703 859153536 216238575 946989910 793828436 825767107 570883465 601396321 990691341 997215030 797792302 963738129 926210221 971200089 814502930 883048002 939691920 957692863 126152896 518038505 960578269 998631594 803248430 953175810 321227149 978532131 97890107 221672241 31586802 796228951 693271544 866726632 897805283 993758968 880824910 923518989 590446202 840806607 464856332 870852538 409696573 967307423 661332646 780508730 552676465 567288793 544458378 980559456 127825438 448464292 821986423 858885379 743062878 813799534 840334046 876930954 788122160 954413278 169722798 548807083 134244306 765745910 414140300 833598437 742122786 837671767 298288555 954960419 487883348 756232787 956024374 996500824 314532787 825793471 249339074 921686730 908778199 961940519 707563668 974339966 485603532 737016113 434670135 695413614 353842155 849432350 686229917 785660975 607789694 988945507 222998842 703361280 470839246 981637080 458180822 991556459 921721117 945555086 280735608 298095469 798043578 865572078 124310268 448788961 344376103 570826636 127829232 762504311 80843450 449943192 869458243 985301546 792340639 885038360 928161802 999858370 954869278 986359242 745719275 869277426 330702759 685769051 41614464 225088702 904323101 977381567 867582770 919725896 723836377 967866294 380922765 434655841 705886037 770804678 976201438 988060268 335479394 404725841 10135988 298882042 772152068 774596465 348074954 880335300 522054249 591661877 259749653 584085814 391824689 442196407 970248556 997298740 768491359 800130711 967362727 978302721 846254506 863799367 117028298 793378427 28435517 753830124 407220550 597869713 754844693 879809195 990552239 995262933 654205683 925861830 812989317 817418866 979696976 996810191 888861446 933479176 800339653 831246229 887836037 989988301 80998658 968287142 281917250 357134911 337010622 706891800 226794655 664697607 486309064 691658483 296071015 745947211 757642589 840631906 897934712 958557108 484625908 823165959 247769876 314743978 750124897 804865773 604476382 744790618 425899045 709205052 834734660 921428340 33097400 913316528 27524310 195033702 335013379 927039308 227574695 324401706 691840387 723660481 775127879 977413378 197348964 747937543 108003373 274005315 616939773 697212494 294359027 367461596 557231578 659382975 878000381 883605830 912297226 994185919 782667024 983233585 713187561 750120464 869464413 949060496 387193353 543465116 404317371 475825731 362417937 663524204 94652233 835247201 563380895 692046380 360313657 804912126 172583288 282095189 431925661 902640236 791408169 912398070 787610118 975452603 69523883 420549019 834937698 937868256 991088756 999466647 690314906 757994377 777650257 880836139 987588032 994504848 392822472 859351027 506847608 583624901 542267814 896482279 666337986 669015722 654329711 712149034 202978209 929025207 317779588 343381382 97013446 220061454 722156671 862007597 338107956 716044702 131736153 250640172 66012009 472160557 775513708 863087700 832379013 855471233 377268281 983883515 372726529 762530277 353320750 873160310 503380154 540520333 904050006 904455495 329199795 338242884 967758412 969278228 495801052 864035151 201469144 622402846 38048676 623275628 255174846 416024946 153422579 577325356 236486327 860709729 738942140 948878739 255679414 969725676 344406807 767374590 477362862 914638753 506200603 953675037 432923736 571931421 305241045 927759467 727411016 872725940 65220288 358270952 467300522 477768531 192968232 696900264 252237285 560893456 887626842 928465392 533579790 823923017 136178856 474128997 243526770 323514957 814698386 882032831 38361185 53726892 700884743 939298746 913248969 931191182 445714333 874498506 655835129 830410002 485189104 625362731 132638388 636855682 23885878 344470084 195149211 943741805 62482139 539137434 324640162 470918155 993776619 999771922 583881594 885875813 99949420 640954646 645463669 723982839 908824388 929444356 475686608 952333587 574932817 930877400 614698285 674045892 945410460 997700624 673926513 794321286 572198024 944983766 647087338 792747674 418467200 578588696 63121391 816105493 257734652 405543185 232195659 938972101 47025423 545644640 495293662 887980518 709264156 711019616 906925328 988878094 426956722 550415609 93927269 740586723 661547967 840343397 972132961 990265517 146266818 472405624 717718539 887875217 103440907 366668684 949039669 975273585 809629422 852895209 727532825 822589181 161520412 672979493 650315481 793742736 486729301 818800159 46359997 637047853 864302323 929614245 213591732 308562464 630711233 903800593 615967451 633373220 853747107 908058665 806407998 993502824 171010190 271141177 482464105 830563144 146988541 794751839 935275047 956318043 461265946 504570505 458331244 835484798 675967576 750761390 834714019 871873949 656063060 962642925 13553914 395826760 233676390 993779168 617301303 852405153 384871611 576523244 940803170 954927590 101525964 999096065 282286161 392570762 927587346 942920838 313657189 580204007 802801610 869062758 191242990 635513198 98829730 227831332 337364952 438790170 80740846 645785081 861830404 976555622 254016375 549251489 707598629 967559017 184998763 836904077 595174422 742643654 372439200 570541809 628509006 782545614 372942181 776033026 431545071 917724386 742477335 979352759 986804200 991315803 353665263 686205534 973916825 988450085 539554424 890749434 133425413 361075933 346162808 498146886 954745199 983899854 776010304 917275971 378341486 466195534 754110341 905270290 925840963 991816209 323580108 727360048 814845860 891407299 9682643 626174222 18529210 630083635 242325704 619031340 803699934 847919372 667220528 765283525 303334605 418130754 585304339 785114030 808955771 993156334 274577956 681072652 170187125 897969258 940422379 952393065 936800279 946459471 280244056 512627850 561549040 593609957 301291237 331713234 25467124 557628860 322709691 634782001 10739349 807092434 941488808 967500293 948217083 996954460 232062097 678903937 9845168 196312087 188923391 471666041 154091576 962977781 391672544 783216072 495493055 974175381 506033432 878165277 164873219 329527933 113864342 414333251 582870472 772361089 707615128 776712519 924088163 994590959 818353030 924865480 617738862 735397094 634827942 908058642 262671649 489066858 850561931 935771444 45213701 889959539 257243669 652262445 552406788 883248157 620297508 635876438 485751860 937480082 755343376 936373373 19143181 645816941 840013415 978058949 123738729 742202421 299703596 834805664 896860876 960772170 116745358 395519969 579493316 816752849 290983839 303497379 286360548 447110978 906603449 966473127 483197541 805042386 14597030 98658623 409849508 670009317 682064093 778983220 278233270 695904507 582541952 686069119 596824425 904390571 247076691 682416158 902906378 923784407 256844878 438368140 297017039 765604869 831348099 954290085 889161315 914684751 458707821 996856930 46187556 102403812 718809312 923731952 241886913 706331186 759535875 924504234 962701912 977806730 767217601 839659886 673846279 896573701 983846812 999306384 659250060 946186745 695398363 730620205 370831278 668759276 978331062 980316988 748917089 950213030 329177823 796311973 475053787 583738795 788350139 952163824 640994094 650890568 366469046 755123132 320735189 906183533 433403708 755064050 969511485 982157608 678004674 724169077 861765549 976394743 470052291 877766073 882221657 972561503 991629546 997956347 589688221 790008868 535277773 575679562 169333015 174064091 491402208 698690524 295852851 612271924 211719191 390962466 652974725 944356320 61366709 118276908 804285516 918234174 635260746 920816234 949745946 989415629 395659737 601924311 158610655 359084237 144872397 601264770 396296780 665263242 744254275 803026047 832844652 954337445 135560830 830973066 465063565 608905031 594000776 735724082 791282491 896917469 709229644 741157297 892779844 947668312 944543078 971500466 96246438 978951078 941376862 964169748 642335629 780244024 834074087 852122943 258087029 490051576 454165768 867115443 445362588 700117086 595657504 804040123 306330282 846977850 506286322 890359777 819285796 977883725 44225779 816437750 989824262 996743903 224609511 771932993 636864800 959384218 909390168 977428610 458341225 599951875 930002682 959336548 187084799 822496366 403189927 444177985 851019208 956101678 330017599 780038533 573012583 703506238 384284552 739672454 846826700 967606143 441529302 993678490 897255840 916950732 784648958 990978216 596495027 718933788 554213230 572885502 690729203 977699095 246070433 863132206 659946775 742475883 731688442 778112043 270435543 845650942 73476434 419314212 843050473 991590285 520424726 691687604 711708775 859858665 88894153 921517156 124372897 459787489 961161002 975569451 886165055 945112913 634171657 936258677 275382270 290741201 775601323 789417012 238052622 744927966 649467624 854039700 351288963 375577373 346656554 603963169 554831124 559557612 716864273 878553999 789696744 812992217 470052869 603967881 825897019 933098866 554042999 913600932 47763931 832634990 46164683 177459687 908299559 919931418 778191870 852577898 944168528 969948201 923963723 931588473 878013504 952635273 926800960 937405771 476904561 867649102 843172390 865125742 551255831 910316255 650103328 775107509 142747289 401903661 566739050 937872988 470087272 902055169 686419063 810688494 218882110 407245323 750958833 911836193 480320164 816803326 275259254 866985537 60847735 77204000 688469872 831787521 893659429 952821253 434318577 478569763 564335421 815486826 61562238 387379787 528020822 800998588 382000004 385059382 679363864 865500491 842729270 870862870 599382773 909109878 831498853 833153304 912899564 995702232 852267186 916394669 628204028 725997765 777674444 881705900 843416634 928987682 569536662 784464934 604254219 658272868 56857839 833258041 718534660 845971432 341660268 616955659 698622474 946909625 371121596 382037791 750373915 754103577 606371424 787738887 421042732 519808554 414392342 770024241 557285237 588628983 114721337 845670274 331095325 432042916 486225122 619233405 588374 452072992 478752255 819589656 373535557 503204000 833080953 987259365 74706755 831178633 308394742 635329684 183188924 605725368 98198259 715559634 738864777 990156625 733614576 749689952 605380183 701397691 378734840 852499778 161987932 708433178 719544611 904558850 194103751 666450371 785584129 993597437 350434466 383410672 30649062 995217514 30225147 838940130 201014340 708843569 384604026 818950549 238486651 721724188 641511792 810216154 844705806 990855945 829283031 975815809 906759271 945917456 99890419 252814691 12872147 834400807 121981635 563209586 71658202 119143418 14340103 141504018 521503635 939796165 293350193 496916518 267481395 484211882 952765243 985377049 508925765 799963202 1524496 400864321 185686572 274696725 805342389 941213215 491665420 689980746 555810428 593208895 347787675 458340011 270209406 681011359 745807220 994867001 284334695 914281083 80579142 362896555 731569207 950936592 862973516 871950222 611269201 989328649 361903761 721571951 44779035 725106326 216534783 243649895 924032967 958044241 244852377 891933286 363546817 795110700 869873809 958536945 284999942 697973835 925120164 986411163 600211343 840311054 952954700 999889554 64891478 619355791 395422183 521100496 213056277 516830056 414375131 447652734 277432960 463818766 511751959 533243614 199604145 977251311 126162029 304506808 594609961 597246285 843830229 861107152 169728430 647302652 880863386 890959675 367728047 715367531 76168017 438292317 123292660 534410843 394650712 818305010 982557544 994887798 834338580 874063512 991867520 996523057 237549309 693932605 686124063 938467332 638406285 702238723 154315531 241939242 102475426 128458029 263377481 896984240 80682299 105601854 28586223 538701710 227600970 627557038 648549849 652191530 567822860 571903527 232915106 827420952 767574080 787495575 986267275 995105907 296107561 836838308 446065618 762713446 915504683 955688180 236756869 819259771 609407405 727107157 966991404 971389928 678408620 747233522 233802399 819233195 500490696 925308254 765216818 865449296 199821334 459218212 657653383 708812642 721490295 966702003 373697887 877207256 10009121 836224219 662212061 775915142 167798376 768738921 794705497 991108349 61495552 976553873 241863354 312041812 487316447 576935025 327419602 807617089 354005527 810021226 688090567 848231200 900061328 919026151 491016485 639887633 477779146 516337452 857310385 858151317 478837959 638858925 501272982 525708785 711416124 897948716 723894864 905849177 79077581 820410754 634796196 899219307 314454960 631786592 709353155 927532120 480775843 799171150 69741455 306250623 180168168 665374894 834733187 868527558 711140873 927992371 510128867 558650376 705396535 819474537 656221853 835324342 971952999 973787299 705797286 952708887 138347853 185926753 666449654 699759574 586450320 809833262 651188582 818368578 919454223 968636915 484648277 642715092 271192751 504475147 442094148 975145806 649876250 663767256 802389845 802666402 674016290 792133030 494840146 507562999 860956569 918049595 407853044 934453125 964886335 983495456 307016965 585917291 221079270 490271923 31727008 185376281 911266877 915619991 630622449 734434615 682648782 794558947 540748168 571606820 727849718 781324503 802159653 945530445 954441246 989902976 588858166 606812461 435847567 732814002 992821917 995336523 302045352 967236194 637066051 957706715 248449402 860518478 263276862 440036300 317723624 484605238 902966075 968022507 862640404 913153246 437109734 521497860 235317658 806965078 844662801 923502100 825952248 841099321 460606091 498811494 981370722 985815943 235810021 819106051 69848237 427398253 648891130 917264116 951009556 966343812 874204080 989050765 201081271 226506013 390038798 458197711 582974093 803133817 51234105 418276365 563058882 885759905 939511623 983206065 717049421 964638751 608589388 832577002 631946918 655077181 134185074 387577084 915561578 949728221 607380879 984637325 629504958 994736621 487731021 883279632 927302192 999678337 579539865 841737771 735678922 845446693 418485269 672595086 638167416 759318375 44241921 519147896 915167308 928913947 423993057 997050971 522837606 864489202 70061128 628994473 126295665 214818674 34477086 507049466 633531905 931270625 672165549 837596975 821397283 981038013 579203261 855792437 302165596 639903711 173393148 590735067 21765201 905904371 381551106 807209389 693441646 823327526 883759113 958993000 809718761 919185756 1505651 257635531 579335215 826261854 61347474 585799538 136358771 625412236 530384051 874219218 246084080 589065903 901577177 998709206 646570992 963554115 167868713 280754443 523601894 961170056 821475451 919071974 945219463 957960429 531220979 728576394 226797846 237494349 370002171 422416494 785236466 900780610 877808001 902831111 904065875 963465110 824730626 975979459 95973904 934641362 829971232 887017059 965331834 979421313 484553137 724492958 225785915 564758649 388541692 428028427 920381727 925964803 386857937 557201375 364463558 380387684 618648889 837219783 599570176 644370583 362369646 439582499 739411864 800872114 891450732 933349215 837594812 951126401 226376205 635509859 196048748 805771029 788957075 966537831 88475503 271551842 422123980 768892812 953433460 968432910 555708324 901813311 965867593 967131746 933264539 937986265 408501944 926634934 664801534 934859085 142318310 929408471 938329165 971690502 637425025 642094257 735357439 879084702 630506117 971850380 538834221 605328006 809179323 825739839 958320768 993725715 143881468 968410135 783212860 933422706 601184312 891193208 33923297 865283949 598456299 929001752 187068895 488667925 481771420 866674125 675332853 814430339 288771935 954533722 30098813 571872500 538176667 915157999 281308421 911300339 740547670 773383698 511580965 734422511 251767385 506448364 750176245 784864787 302750391 870780680 278922053 402874594 394717702 978798056 840170679 982121268 533125178 791198813 35910569 69662664 4458958 408031215 299559196 930942803 641147374 895657238 578416637 883333824 239694100 775283737 449594771 919033969 534097078 545457342 704335240 866480100 730826219 752609220 452552329 815821118 821973818 989849299 255442792 912885661 505341160 621703538 702215072 809629871 320421683 552627847 676349758 885339717 986355423 989119593 906090404 978309605 127706487 491638304 537016612 573810150 679980905 771079274 278578498 322398133 643747048 867619793 331060416 569576056 303024218 481335672 128615488 973827611 631832003 740837514 500218012 972382227 917893652 958348805 785786475 929631326 308815326 853760128 114552663 941620536 629237750 830560448 492910780 659704632 242872519 449804796 816268459 877248579 865367801 958739007 484905715 944005862 284080557 784932534 535868117 794783342 676356295 760749303 682387260 714299173 394076381 473307104 42014074 879885626 987279488 989425225 236787148 673000555 461774619 687552078 234984213 325583847 837139298 931824075 874751123 905410003 777708875 814066052 996258520 999561754 434580171 557898496 553458407 678590307 161515447 875131969 556577741 880689106 827905214 994107609 61731892 403327635 274026074 441273796 843536471 851687101 669190471 995087601 572022837 783358005 600764176 878968637 911328592 959660134 154763446 246923512 174219134 704287297 543625218 644574519 871583386 888443396 185127689 613700143 359640020 410295918 990126250 995400353 76106249 244249095 49513519 691544853 218914307 440738859 325104399 357879816 936458926 978034701 745541747 801790653 196235835 887017709 933191667 969414254 522846843 984175045 61297271 869243344 963533454 970726679 434690720 470884488 543280285 797919555 717280021 851335796 985768599 997929274 249117457 653479414 489646916 744741265 636802446 682469326 457314974 468651271 574367993 584731495 228972116 527202904 197721160 341552860 787243916 862664533 328634704 470624467 495392826 753001936 777834315 800962598 198909992 245865136 796145793 875952018 672805024 995066926 220112609 865212979 848720864 999757714 239582865 955694834 834304136 902556888 496802331 933665538 365879255 901379848 497426077 873695919 550401672 734157238 898490055 918837505 21645753 724499402 562974205 862212835 66829211 526263905 329260062 414659832 871199283 948466740 634541231 941163335 856071778 880260473 259717207 984754181 497776239 805607719 293910825 610421580 102707004 584409159 103172298 294259133 294310772 788943056 336902984 964447001 31253929 474385826 696033988 838266877 73855880 995826351 436631037 533097908 197297186 331965100 664292749 724521505 181351969 928463219 273832249 302031869 475729102 840217295 837598325 929394161 649724620 968871181 846629109 926162862 805479189 835890345 493191023 657074780 781199865 910589130 6837720 637712056 808728174 939461810 693935225 864527187 937304409 983700506 774243109 999811158 777978981 778550711 961479390 995528925 760888074 869298115 905052343 939831010 219412905 604968112 225822343 387815938 950800242 993258820 985401951 999248280 869280527 946575719 654354057 669081262 377895357 901434512 591722363 785361825 927058542 948856598 97401781 346068967 112358145 336731854 719612301 820790572 952788277 971742620 101531811 801139381 936134112 943153643 170563205 494038100 926410374 996877969 100125553 186066596 192636620 215461394 168076123 340710320 245599260 857122605 960344314 978681039 382814164 617947945 23694416 941686121 283584593 500129038 586482824 752356657 918413497 933081156 174794318 175119931 888213805 958085704 473527397 558295352 849632626 878527451 692436241 899362308 355765863 705417386 490787444 669149298 701411004 936374783 363617415 717386207 491432652 548669260 752665373 992785324 675611126 807889048 438528417 699569309 491533265 696975598 413136272 662211834 348284226 752854161 775601172 971970858 828708147 973665490 379564304 805110522 497687169 636845323 131642937 986320510 405847735 758957752 741898941 919107037 938374992 950813634 397237719 694270966 667042412 679775524 621932474 965528679 21987376 567761808 584054963 987581957 681973582 991205889 832682174 925376594 312657744 452384813 249976854 255379084 731913055 757885865 716977021 923802351 664166214 688835162 405257184 480083758 141097315 526757268 142307160 456516350 683340130 925889446 28105699 251019090 580236796 814381535 460649459 865181943 214251284 486424377 951461436 959472485 730914190 894948818 941878705 962343641 357985300 919045470 23641911 519423524 908327946 967022088 463391715 570034458 761312130 978234346 372554749 912021867 219594992 497306392 340717254 398232003 263795457 996054791 270066240 921376302 792218543 933502042 624810536 877853509 255198471 514278705 699072339 790389495 52861378 815707311 752069556 931707630 829490291 907696440 318861217 581185621 17498516 847676961 203619003 232300466 273361631 282480842 435178690 925988272 688676913 863718285 29914071 104232173 303424354 718974393 326330743 341101253 645031218 721108005 615971786 799518382 440236694 701410090 281796749 800091933 981062613 981534640 430172477 744364750 829513719 871392021 616184931 940761744 595483364 765420271 535911294 890983931 289774651 594611963 567516009 700136729 961445228 966708113 992920618 996697264 542930069 828196801 179350403 333856159 568686744 833772315 742602465 989023154 444298559 449168348 56860494 598834897 695603653 980874164 803120692 962003222 888518043 975949780 692754253 977812418 625343027 809554303 751978979 752558783 206005853 800406926 163611252 361628832 547776272 901292217 946809220 976544728 305209794 661843349 917471093 919944085 851389428 944232648 822391995 992953001 462809228 702295641 843570481 943537724 406338868 991224478 555369134 815712397 103197450 873263003 619886147 721433341 841494070 851311542 320886923 593378641 909097353 971460249 624802199 913060406 222759402 871021188 859064301 879439718 613332257 790186282 427748835 897388585 806090116 991527823 275152650 922523370 886662762 936154578 920911991 974385628 996230353 996565033 659770771 668759420 867487349 977516347 364374528 500156531 618150387 839193097 261997425 566523182 189370998 712924161 609679288 628620126 314484868 562544377 262018775 793129140 466579108 659856601 18234172 792808054 72999814 752728076 351833888 873254345 748644191 887660645 847221348 926134570 332734184 759572436 478430028 746774597 80156787 142995177 950282586 983172249 868384107 870122361 656988756 995081277 619683393 754311443 63231444 661929982 63993734 522857441 742537681 853372852 732040615 837474229 465957726 598156952 133569741 326099669 978104076 987629065 473993323 754439436 717540120 899647036 85828230 705810130 526908757 639968760 617627490 627753653 111241914 278408527 783832388 991104125 66151295 598199489 407654908 893174910 71444441 407370694 730634437 961690592 984187239 997042626 753894324 969821873 380680365 382377228 702938848 817227710 976247426 982164590 57653699 401548849 119045496 532216385 854372519 967769806 301777446 707319715 235998757 815221231 306682330 407477627 203864246 207571628 59843208 302037756 861489027 995072709 872894366 928421684 637462707 877743067 119692896 167311480 220389091 702128511 883157359 902902043 70927137 289757627 513842927 623437637 598001401 752347024 103448149 104412367 650390851 862366692 197705175 470562124 451157700 707976750 996109657 998969415 912531071 932484451 197755735 497015706 854308890 940384590 993540211 999537277 610288634 959157350 584317131 630616548 422507055 978509320 886639931 958703291 390038669 575623680 902583842 959984753 389254450 908530456 83203462 738501377 513175446 762514469 851269353 899364945 799904954 979012149 657507800 664356942 441537118 562166853 801782346 993493544 47437459 826217581 840044068 905458021 540735294 695802427 915483008 980362645 45829380 468182926 670485600 695785216 465800989 613254043 725839740 744474822 985813240 998508562 319014373 647338992 673549131 979239471 811040882 892391377 987285148 998019368 508472349 912314208 344191794 417498731 453312477 721199823 791562826 859062738 46540244 369554098 995561896 996741876 752158963 793446676 498743614 649660283 571132657 800341058 114196364 173994543 293641355 386556134 482690108 694530427 391475550 831864520 389750927 641006325 407615898 538104739 812014139 956217177 216087354 250866622 122127822 469304754 438654245 824740941 37580868 152031448 831890994 970883779 26950886 879380386 86103045 835961688 850842318 944549285 542654663 885086549 821593098 831796205 445502308 913994321 911448211 980324590 737298579 757048308 338441802 438799129 74844068 334137284 781391236 965029567 553754089 799257362 940243034 958457805 819481007 966127916 454728135 859510940 711745864 935944440 542189678 652870011 671529450 945424731 949004859 979327632 346671153 587659621 455418051 840308041 267860243 443645205 281050392 316642070 855986984 902034270 808609249 823820939 995098686 998305486 415334544 907369664 510494654 542993531 865047522 942925620 42994484 282095179 885672687 886566339 221615175 388063795 521120786 959757708 950478832 967317398 877175027 917926957 979057895 997441633 800117440 944693444 888854904 979951524 767823946 972688071 108542974 607482793 924914388 979326509 347384571 818427062 896203863 987890609 791755286 948882464 11164099 453440368 927071279 978712892 334273510 373387245 316609854 596273009 685487281 895691796 897697827 976087378 491564529 959500190 492188065 512430625 462127157 631444265 47234264 319871340 768839614 970350147 553167779 977645361 117740453 567266675 65918150 727143714 877247293 921973981 94029024 964439158 758593772 793558534 913755472 942099983 520388206 936470783 310367600 327950461 293017451 379025662 360637254 392546333 398320547 816027646 693106860 761153698 819675431 886501138 999434249 999750219 183858272 368051097 589208528 993743525 585747279 627084366 929481341 965730964 470722453 554352952 140821737 641741357 634239953 951594291 309285199 678756787 927959788 950553263 520132181 677803801 56604625 138981428 570922158 900573369 257328638 576085430 756062017 857036419 906619551 982944571 29522303 504695218 654716047 889782961 354028513 568161832 782057576 978973516 480336820 629411043 890301679 934534226 116309102 980597386 167360910 554541097 943466833 990312381 916817830 973389724 374308459 505588071 14877301 288161751 980562019 981424234 265092560 805608940 112932368 762915527 854406874 970913943 106235131 181079369 953715506 988975751 203622601 469387909 408979357 901204044 412560866 971305561 77701793 829613654 35727558 259513168 764304132 958548518 800887892 833819119 211134533 821000796 284046728 522860770 127080539 173859219 714581315 834419761 414424915 921903570 565526368 628436579 860195760 998962955 271755383 400031778 192197666 258091563 455136764 617304962 407213799 863033886 119644090 470773305 232172021 424257618 946758153 965498399 183381817 873977900 82396457 756039748 188853344 686495742 971635739 972452344 239097986 794884117 68671210 188856966 521720808 988799065 300711254 841508636 639041556 880772877 970725565 995793033 155067721 229233924 50625219 608488445 718298565 741825742 207888183 369440343 667679167 964872779 564446789 672441448 632155721 701365541 459090094 520428501 296008805 388264458 804846578 893324121 618966599 887014399 625445002 928460098 464299189 598253885 322220582 354887277 478931857 499638408 609013141 884453173 173290368 259126667 543752928 709000220 298777125 382165713 97455651 808319310 913170280 956852616 24349006 423597632 199034777 646838729 195220769 611340135 179862347 401244261 920906967 947043175 505831343 506847130 99067499 799648068 169207153 261804256 658670533 962920603 179473251 390367847 396264145 476188271 952481061 983978870 698575312 718868788 233583105 491494335 716837986 957103783 719302816 814430330 402192315 729390571 578173194 666195000 523950410 879783190 21048026 437506323 645341487 860674566 736513440 870732496 354200364 996731981 114421810 236818628 492574352 927749355 75651121 885244312 256918795 601069963 285928466 868210852 518010104 975348613 789822203 895457549 940513406 948810504 6965532 648315302 249808675 748890753 393557960 477549204 159052541 946296450 656539350 966198386 677506070 806656500 211343133 292313649 340249741 455982558 784186788 861956282 452457491 921468945 280402865 412444303 490626820 895473412 397863767 520274959 239337815 439515918 686610137 734019599 779448552 866641706 241979988 845006109 96205153 527587388 867781445 889944398 479348450 626682317 138666591 714240217 648025933 686194637 232155384 550650191 959678640 983634776 715264909 729906875 467095829 701759372 566786186 850373720 972645656 979405868 984526186 985695979 249466476 809903040 897256712 971559795 865794155 888133893 107987105 370802621 619847459 864539466 490896806 970445297 681443503 697744637 75776049 577236422 583474028 733399731 338815109 624595921 579606505 797687578 564189210 836397383 701393594 933268206 382018819 901390093 925012252 973197298 313480113 389719444 184801389 253846420 579995777 812046488 460610274 620261317 69057487 422123758 607749279 785488592 393462141 882469943 982401318 985433615 455103268 713359429 12506174 169338539 901037315 998075478 874129510 887952426 60706281 579759585 821102565 977393803 899605239 976649035 272988242 682098788 119633530 566763442 5774916 573302589 605913370 790048742 566012406 747269485 49074570 894627982 122347321 237150930 217334213 412734759 687291590 771736416 759460771 954047174 878216523 886505882 572808284 740080041 60708846 110175990 703400501 876397364 709223285 736464422 287304633 766540606 879038389 979597122 249251793 929700902 73871832 528870460 470268519 687673655 55212367 908474003 290129740 793888481 992022112 996105797 289933578 496021677 519359880 656682881 382560660 969824246 305253410 358845616 890882289 975660090 688355855 989892058 518424822 619702258 947820553 968914821 204652236 401562293 935735735 952120960 836880847 866964404 413667428 752411829 616866824 829879768 453330835 730057159 719406056 748053488 928336846 952786299 672338080 967130510 109685510 615703389 236032710 335897004 709857865 746501035 744496674 942980344 700836306 892379788 938869285 987686794 95027193 906426210 68121270 399185817 225581744 383177736 585954136 987560274 519239931 679521831 997125367 998099180 156719663 621629014 61696529 957828820 72853861 155057804 222554239 558550723 998788884 999265424 535933666 733363726 948940090 966240569 482819012 774314070 804690254 970449011 887664078 981753677 965024668 966746919 972399916 989665512 328243632 736710880 492309206 631608015 420733743 622199129 823064758 986178028 144306965 940196403 158918443 295651088 883788260 884168503 60034133 396670424 861197246 963001585 372049310 837805808 205627472 453129356 964966576 965716567 54746483 661861081 296681903 825688590 292855013 646288949 433615375 577421283 331942220 409123012 362832093 894195580 856274973 926243485 900365872 989257610 728896663 812613950 800320823 851500814 39613877 469199071 937054900 991719127 596863592 680205712 303863682 781868707 326025086 427421154 606103660 991859237 132589230 289431654 559459510 729498455 99562807 458634944 540586904 718293828 382490327 809876401 952805002 969569958 807928192 843485471 532164322 656017131 992013458 997022205 983690913 992994578 724077861 786378403 978505120 997835146 561100193 942871541 145217240 157373255 103700527 844900409 734153297 996922025 402830737 430585774 9241051 428923329 232345421 894165939 126514761 141485871 55218117 918557627 665353921 981371678 525982286 859787335 112846828 670010961 70696391 578156836 874250042 881653970 757182258 990812141 501814306 865102496 880396471 899516483 825241771 828879747 113207438 218579283 204248605 670752610 685842684 918040587 853922343 930618325 882597487 926460255 418833165 893820506 446428438 610324013 367371660 813278402 741098012 748383098 310228979 864570973 302760604 537203058 768049161 873728940 95896452 454751648 508062462 687144391 263063059 414494834 757939191 823184500 787704370 792015092 810313980 875487349 745534169 837138896 921114443 924313915 785023447 876022189 936471350 965485952 985481733 988925470 415127450 877482080 924833977 935366110 393670566 665148271 807848358 832183642 887513067 920829668 858537685 889803030 676489997 745464861 911551196 991821809 947805761 985558189 731503802 866803760 358553848 535820651 222794692 926478290 563974380 765385904 225954181 493490464 903287961 988561275 824132357 970929113 278931355 493538654 488250535 762509397 875641088 973236692 889340971 956235338 631927066 638619976 340699859 386853819 587317506 696022762 115463100 128751731 962214461 992831942 69262787 208097250 267846171 814573698 596909088 661650790 668856382 909976115 665043332 799125032 804167367 808646996 476455498 606406276 896502598 971022930 861907444 974462667 176930260 887065413 388952491 648114925 450118432 529038491 930658874 964209889 432193598 704327083 881481036 900855321 537231582 794110104 755552487 800215169 811812512 925287748 958332785 959662002 837451109 996960976 155624855 492945695 255471607 844882836 389446138 738112895 439060327 536327701 414213026 523776484 456294988 559926149 889556290 892976603 621336263 852990409 631240846 955122414 168380813 866544820 7706481 341911127 567900929 634170421 247386325 999871961 313480722 470569910 589497054 968141239 256125593 318506265 505386595 763396496 704616478 962982025 538267276 673451434 597594795 899498868 216103483 600661967 59957089 424076046 916408839 940440579 420999043 792270350 657766720 897034601 95555064 965795475 520187459 878388689 222568611 782428035 647113810 858326192 917013726 966256709 743137992 829561355 360295710 459770351 481333562 961529869 929606334 963611069 574753377 971334604 397304818 563273689 470419464 647548891 584977783 736536257 302505172 313745309 835039823 989927740 516057029 932406285 765255378 860633928 179371830 603600069 423860534 614608712 750175397 780723193 433784002 935895275 581193394 622251174 490059774 633958946 316480314 459201022 237943555 826155016 292447523 448828524 947263503 999523159 492596520 646890933 369487477 457188730 631283141 967953943 723421483 754788752 582878408 920153752 304217671 587143605 191156612 668571308 133880269 365892326 617706999 943838580 650812897 982458065 428470517 648200769 10813181 299312851 59187828 401093039 357609415 792347988 108375715 638593592 914605553 926546200 206819353 458770662 681607401 760699986 643860775 924962898 244781420 716234396 835359236 969044430 692508304 794347484 383877512 581003296 786361996 963366151 427710058 682821461 447778051 661843186 832096448 894687087 280103354 521126118 634477213 936168950 461132995 981628585 991980553 993447793 412021534 655192565 338753531 390588117 411730961 932649850 38422869 860286827 990341061 992003150 46971954 203381995 881738117 979799513 724134888 845900685 552130149 758861308 380964098 412622688 902703722 929331195 41087173 716758814 718918742 965612364 444773709 495382280 293744858 475933806 685319895 719889845 524399223 767278911 142477028 227949377 780955526 914537433 466667635 501533273 309009088 986782675 503799121 718366885 99335085 356104149 86427768 654146182 558045586 863521137 895970214 902758976 933310767 996889412 828637224 902232057 656239846 985196277 900714168 983760649 459216897 478066463 694486940 777449555 97414450 385496700 8081006 494843008 129770237 756881285 227854550 475429778 274916909 766323557 271096753 417178824 635356521 902817767 925785676 966500397 941400515 965387863 950377686 960623689 575504513 901180622 211463810 661501997 131977828 163790980 189231857 930826353 792989838 827656146 253086708 500565448 309456707 518172302 295175308 784238110 647259060 865624576 904147001 949599531 729005518 934688302 307220759 594228532 293593320 622824186 374938465 808787390 875438011 888972438 828653181 906168573 588164984 828179018 774676822 893484434 108674816 370461873 341763477 863472025 605211767 948752609 648037605 890556145 220647694 418510813 822904033 896134191 213286171 953012233 78800484 110937518 861345241 996592545 937722057 996526451 728683847 830871498 952015170 957449201 307641751 608409374 866904538 868238645 281450758 976379582 297665034 710637521 253300943 591143891 498194860 872647829 610966300 863104274 714797469 720180153 638031103 737965995 354988415 620709881 874000243 999907021 348080313 871438934 779360526 795147886 808694430 939723878 552095240 733212045 991793068 995459519 567782953 775290036 408145200 767231532 562044138 701519107 57284995 471753685 44185371 925054168 271577034 822022599 660984587 984152079 544842804 874116885 415655133 672646236 760101548 825443155 960657622 974152328 970276758 993609439 110210819 310606438 372989591 522870341 711067028 897966486 111500496 717971645 343685373 569084717 962865226 974942017 493452436 731120468 771194948 776709672 421601643 770712670 854519845 880521591 217359625 595643700 902318699 985056661 159244496 595745741 230593377 304121964 976680362 984106143 126511572 151314562 809525742 825262599 929776333 970947671 226463914 829525625 723768533 966926251 110338260 330435212 740327978 755978927 157637212 263176231 959536461 968699838 602616222 725042971 448964118 552652051 521946018 739619186 895027701 905951645 808201731 874707179 913983655 962400695 390601346 534585867 79040625 705829536 72733736 128652981 463635154 630624409 866745630 964555647 611788638 895804206 970873636 977477375 28565144 969466942 951058981 972689584 583563246 918579896 871742476 918005887 370865358 512533705 241964590 360012320 57935399 586579793 516453218 824384035 87810192 94550496 259192661 751417530 358632244 786964822 669526478 712207399 400391945 418988418 760912705 927567371 808401950 827088397 157897699 548136323 641434987 832686391 283196899 781941667 474812034 737890819 716704928 920961595 822600636 938931466 212620988 296144616 520975681 575491175 315142316 464475660 947905527 992804790 344957064 682234841 201158061 526112825 756297459 939169668 578792670 638188241 711830718 907927522 235525988 477592287 919057148 953567937 782612871 967846394 950260447 990870654 44124901 680439434 455849454 670183573 861929798 945897895 866935216 947680829 340733719 518405694 730851222 867400610 14730471 405722674 985998501 992492720 280902137 528621666 221948432 258272164 915174842 968815564 246845452 321356120 222684084 274207107 873187067 956159478 178587172 603318792 266441266 474297038 215577643 813801224 354785440 664663961 624893059 775140753 565943031 928103264 246757913 348213257 280272525 643189452 644895550 903388567 218245313 876746079 703902449 715520131 123824202 396824679 146789547 594373186 45300281 809822703 72159794 200825225 864447102 971693289 681278340 850906293 998085852 999720862 7000291 484388176 266990279 496158697 451621762 641429491 889377908 905978927 605473182 654600355 746548020 829078399 602446401 761311671 269784503 365878665 872202309 908939341 604170142 655589819 156730095 896780626 775231112 924535343 262239368 813045355 482488800 676552273 500363443 732695513 40112823 81067061 65150043 338577620 282645648 642384284 888183975 892432647 174764975 455792821 416877781 598301851 142995879 258214784 488926900 491974986 259014287 304985316 258608219 977841432 804519825 814681419 968303366 986609013 70868050 929067863 299767602 535412600 679942879 898637754 55585199 896555734 461828360 914419716 521031717 588064181 164496255 363443618 915403747 980589357 640236829 855872725 756086071 799413999 725161206 987066639 467635470 836239500 889119772 986663300 536583351 584456966 42499940 278577030 920426883 971582370 233739940 472870079 283988254 823334811 527269441 789517951 426328357 824921734 930291689 966924831 967106300 972251322 336412528 498876888 569504195 576770309 448464041 763760722 859133192 876086705 467084284 770529346 722010051 978442494 891155463 959405097 204929793 433217667 684160332 865215235 632869557 824583238 420563363 881272595 160228439 438013344 659878257 900523509 282540747 857200225 79519206 720006843 385949471 872377683 468247411 908729658 266696006 825033933 67774516 842540074 660213821 734871634 251028114 292123790 622893988 660434434 337285802 671759639 194599606 327606164 965620222 982450499 28260003 303993377 109960981 894494823 846918063 957720692 700326095 725727501 517645803 931509861 969660266 989072051 672460786 956516114 673342705 796934430 945254091 976184380 491239902 791648475 848579045 962586081 295145483 893507009 68260859 678332203 748620837 874397077 549684597 876770384 69618208 941554322 914799527 929430232 2279481 132356788 515780879 642396514 650209216 985027593 36105103 387521360 288199061 573455920 357935895 457755820 678638367 711644193 596351974 782274794 384216957 932706210 397043776 584528643 932018402 945415274 321953938 917403016 794591847 900731184 402850795 827519344 851217801 963145431 744087870 869545456 148795274 286479913 301291718 368838813 623934104 624559820 448616910 633255230 698245719 899176412 64480557 84970232 73698112 396689875 202484210 256850755 198375378 797673137 259840264 356269455 834873 703983879 358510489 786072638 339548408 397156619 753378753 887320739 649708268 699160228 956794220 986031752 60515228 759024701 445869745 576845198 431126649 444855385 662096502 833878347 747608615 780166537 50993332 944426606 152385536 642166610 363430540 445515768 525206187 796575488 887486462 900564824 330623849 551552789 953711329 970908842 3941312 835730900 804373602 928417492 377247234 382577160 542293977 970182750 827973796 949312873 531461208 567139534 246188508 261335698 612849429 683659226 526308599 816199314 308462423 330324793 26696500 689202446 75470306 855024043 654832869 788020581 210407476 609229277 673192781 810026188 741426467 893950843 274005056 564013541 271803926 275519125 344698208 869731675 175239333 818680281 625633323 850079242 247228200 474704365 990974259 999438930 290064099 454640451 305972871 548996598 729343746 737226328 523970533 610255129 471401350 825123461 969761427 984848452 516626071 937779196 216358198 562813726 968551901 984736371 473617578 565113154 695144373 829800569 39809356 714617454 550957841 869990223 722683698 925879204 356913156 706312008 308015095 485295814 480625546 676361396 311246840 420285615 102279144 167579320 631861008 734550890 404584611 470752071 409060158 912586044 996276393 997935994 598892153 930279958 55140676 445077936 42744207 165654430 318223428 404406868 882611500 887494343 286530868 714971306 732488888 868441315 954610965 980787200 462836849 964745471 508461899 830837857 858781605 866593816 985606914 986163915 979760425 997385099 198243416 868520954 136419197 858326947 810128466 938619384 702952423 759523745 858721632 900991822 796715386 914791110 571408322 777636280 891117108 912627692 94545596 215067091 317739407 461584623 311853797 618522981 536449863 989121259 718765835 985366879 399673293 478970422 567616355 858269444 402826609 821171648 997344781 999688755 57853569 909820864 217671543 872849952 750775029 989215736 396193218 878513574 298584861 398730670 292051158 884939996 350392481 593202096 80031997 374930495 76099953 457292646 527077705 786994378 533676459 876100140 274716081 924814530 306749512 419486326 934580507 950052256 857057335 902558475 527977822 750431131 551095783 643594677 725649214 876560217 813908619 829900083 921902899 954670230 176189706 909451999 124371868 411606409 649055039 815661343 821954829 893300820 788721421 958980191 404279617 452506625 888742318 900917931 501388358 518397834 88625465 569857349 964750908 968405988 971403034 993248560 438732119 822327852 124221521 878035330 421882102 880307448 465867464 510133792 45409702 878342175 426281857 656394255 803971856 945608139 429127698 792018660 348867646 742103773 882311084 885893082 558768126 626391011 544239792 666604205 114848831 688357321 497742274 979429183 871038679 886200116 360458658 729509274 854909371 918295903 749495211 992065068 456851317 840228064 419676836 668534964 256922022 463314370 486211508 495077549 13007188 13357573 745660752 826731812 154200579 781829601 26247971 393148246 900245607 995588607 756143139 827127972 250870110 923169053 929268888 936175451 710761380 867992295 313523404 831309602 464907061 673980874 118969830 332778288 241925515 574411944 380245998 383834606 327646367 609690827 91825025 345787888 115430846 913128690 423172205 916059697 79719952 649862979 539154854 627201641 305707061 480677876 499449413 712248248 413476 335488815 237163472 360745195 130017359 289585514 864061380 971584522 388350994 407358603 123130416 299968992 759331021 989808085 859404543 987510903 210658817 660276930 260627938 269565501 928277982 950483980 235124733 295967539 315005310 926788093 914801052 977435067 677521050 766751802 889222829 974025552 167513622 362581560 615061912 874955326 422356622 432022238 616796343 722487195 887147483 952553336 798454548 810470729 115924168 321043267 250194925 556136804 326796647 611093560 424918843 803965978 874440726 913596717 520810517 919174423 141441627 790792425 553206312 857490603 450860374 714723733 790880656 795565397 235058437 571499471 127562260 315634712 466877835 551223351 80038787 255642053 861818290 890424843 705670259 949349390 48049908 580060887 408771149 665070915 104742168 650261635 481515787 929399852 35706439 403934825 36670980 711421352 755000079 757470320 193296110 557553745 440298383 499955261 367621376 693703907 512958339 577612930 648543149 894483965 68999066 845797448 542807252 744696314 73817875 339569565 252226732 926856165 457243008 688855439 155436867 242274558 110384125 983380767 759539486 795810355 647372443 998963526 807858878 965233173 522788902 680018398 844434328 958986173 333820374 918942998 877523944 899836323 275022125 479045267 38045651 544927907 933910775 989719156 395161732 982502740 250493662 352372002 505217720 539320293 896068343 958581384 854878481 882154638 410225901 864958163 586179135 910579746 957144 76596461 32754869 501354144 974915076 993989824 793139340 956246094 429968616 854926261 273739795 468101733 7558423 983645183 655015432 823314133 810284495 962060333 472135980 943531698 110757038 789156111 126532694 635752663 134519204 599435836 766244272 866948233 768656547 790667286 146794228 718293128 78654368 872699920 749631401 887721412 916817690 994005555 604816509 679186239 591792438 979483453 390778735 411642820 406262221 770814794 665740587 926426889 908703945 975516741 682354292 986622643 993172990 997979725 674750584 751607235 325090342 596108737 938164505 963130162 676295714 843175192 971250841 995527838 794952253 873683629 823065777 905234005 296631418 297211608 569978869 940369239 382794253 838682754 298831778 459234715 729948117 844195603 523917902 534796941 822006461 843929322 831802821 893673733 105983045 391942823 129207605 470057446 490764312 709396062 338472829 738954898 787168135 944499000 158954232 944201804 607509667 763719673 766264844 871775569 669124902 823851385 713058067 738408403 564440685 980367622 387615597 441988653 693379358 708297386 709711514 962650249 153093561 539458575 899329962 952531985 450626401 983880373 15929205 228886479 626796241 864909158 491470617 653629577 560088444 570955689 876333710 903233112 988038185 999115649 632997478 764403971 539218308 761155666 569272805 716118051 208681350 529519324 243297618 972491651 879928451 914764665 48714062 486890668 33760779 555301146 908026346 942741602 248143427 570597248 339786041 709199489 884115059 897767037 563443506 780779941 753886468 916293331 41327081 813657396 942664757 958939885 589570174 688186164 733848199 736323290 465657232 811376818 190943722 508897029 639370091 859971665 789991819 987346703 325403968 485158856 634526964 759198976 402023158 572389363 147551145 334037506 229485771 870924695 85248686 792146251 538333501 812804518 267015775 889919597 761860244 999043094 838718298 970241953 800898876 869998538 386194272 468139201 80822625 219798013 889483392 919457054 652220921 686811232 798906885 907706479 380541649 517066290 955834706 960675066 299744506 798111431 110013227 329936220 200442600 769975337 814255850 957801916 91716057 330665421 65611160 723727426 384859764 843609197 972710747 977282334 790503696 844509595 297585153 732560409 813128551 852812575 766858141 916506018 585378179 928719402 531279539 683122169 939783672 971154343 593441233 741734326 775296972 980579746 202895081 479504469 855212600 867777862 720553913 773472822 998989663 999930291 922022926 948986231 306824428 753805264 827374013 878343367 576592298 685994550 125265936 187005388 831778105 985080121 341613164 435514833 225182320 356655964 407423296 604264343 780690986 955433308 14597789 680839934 418714215 514825718 66751631 804648759 761266873 945421410 190844231 991776370 914861141 954708787 332658387 905790083 263526226 707218371 17355107 972295702 195851419 683492500 457744342 786244182 419874322 614561592 460937581 664892689 65368838 602540776 511499178 762973715 484924763 621387863 454663683 575570049 537652509 910885552 306758572 444394741 50220049 424753173 549479583 668851560 50095397 671132905 147954462 310282110 148293177 408202530 169463822 894909372 323879465 760073571 560439688 773901231 456388107 696455077 831749245 932309311 799985472 843392748 728662658 757552621 205291845 803225807 726076993 810661104 502851094 666136674 816662744 908411552 134083933 428099389 688025403 809723326 384347814 989798986 85069532 432466963 36558114 617195827 46254464 623085206 332446453 537392912 981310333 991680780 131620401 239921272 732567874 988292689 928218754 991958516 598343713 906378934 704522943 997475893 577155479 996755786 628621193 726084659 741685745 946797961 895794444 984903180 470315260 831963027 263273550 918327806 625483880 787418905 495807723 958471885 767423152 910693514 841304300 925677290 334943320 819331790 802951432 844989535 531559509 983501050 13236054 822743353 810935542 869235854 660823643 705161589 48338570 313864578 137049219 446610192 523215165 975085590 151498235 312063715 405397410 998105746 396033747 829034107 254779809 724558144 121539538 466655619 179892356 990565397 751963012 830726218 966554686 985765071 192158691 914089669 248052587 906563865 316103746 485869374 726570569 824005447 926693105 998352566 900339535 966747328 521170218 694388156 796019915 825538144 76304378 185767962 6048908 377422370 907296338 995700406 968186260 987803043 842205153 859650343 464030759 876346477 325603266 783728535 911726227 941181545 85169946 721798244 607349862 926155339 914532409 920956770 164012300 870402880 88023813 667137425 911467021 948513747 954659265 967408694 709112152 739137366 770348834 830210380 17072332 133324554 736084001 894749399 862544067 919911041 292288048 378359224 206497711 850062818 561762768 717551645 881053534 900720131 995352493 995867606 176802193 448751853 789615941 985764944 941624719 988442068 429510216 672860741 26030609 40032830 604678108 995461065 860847401 898024798 280933001 742547467 124230651 651926060 230389807 731389370 18802813 144984716 874787789 879308454 162449376 175424647 10455549 352190082 745678093 938049008 321654673 512786310 31356707 599964010 796013938 836238701 164718738 329398325 167519408 348636900 243208549 548493787 775180326 790326966 175676587 820792057 222914948 539749588 607329740 816544242 884691419 967166704 817734905 877583676 229669246 384150935 648096630 977200380 39413261 771359792 168826192 366059266 452418686 479725624 773276089 840519343 982975616 987250398 654410950 789373252 550956868 723697181 136217263 464210247 698585188 905626190 118738348 811506481 441612089 746382319 477325736 490030839 868991000 989936969 939921345 950063217 496720012 724031222 725416496 829225408 292961458 723203093 645758464 871598928 421714173 558430154 545644540 662157296 512485793 640818857 677516838 750871594 373021676 504221365 742538863 875829770 605095673 671279269 57319161 250282239 959761520 975308385 894525253 986205207 442101744 595769243 628642565 685502317 464770393 526981882 424381067 725925402 595996377 874338937 368821266 747783603 627364804 805920135 487102117 981171214 92229885 133956044 798117945 956719898 678449338 934004277 481727183 663765204 17672250 342361736 492704697 855292520 965655992 984054433 893540918 999498953 44934108 422701550 148234916 195130837 443891526 837220358 750478708 951831343 884921119 919046372 360462578 386042976 92440814 462439085 376630400 383247009 473292861 588299128 892512449 981848680 436387984 530693303 97517610 835396666 182249100 481742539 613688953 707816012 991652929 996772180 471148687 568796083 559728604 960882598 213703541 732575246 934325297 990792048 256514547 758848956 535567958 593858699 371002558 427343385 815342217 961297370 365725805 421377204 600814592 861732853 219841997 661527551 37459553 936140724 746971914 958739998 393178440 704695838 215440574 463512260 775564745 984670549 778732891 854332693 234997671 934291174 724481348 825790339 110721875 295867452 801540383 937580406 766770708 970473936 196568280 299025527 259796598 949971669 232261596 613914345 83376539 134110039 647112089 725647291 936707697 957775436 83984327 466187839 20459103 372124565 903008464 960386477 500588353 763765838 313385556 692699146 486823546 694406480 864159502 958917896 506426722 665746836 27012727 546300496 679786379 844581263 344604783 559569410 473292920 876505726 128487486 655134807 327932350 549863573 797914980 899797930 186465393 660352927 774183720 845995646 557114572 799674538 445994207 455542704 500035810 623462979 447584502 914197758 300395604 356807210 924144232 964704722 531266810 797849778 925918188 939957759 669574682 957641303 743888084 857922302 453157667 752510412 695236078 786110647 382710967 912569641 497837674 620297785 864691636 947319336 191910127 415395603 114926068 260401702 576267956 603963879 776986172 940349714 857453807 903105784 162410080 417244766 508550401 964899760 797695327 825358222 510673231 909350685 409576405 870365111 799588626 933033280 32977486 737753126 628998677 666977193 514684060 588331529 987844779 999695497 696715965 775543470 129034315 533234434 137046591 314705565 517290826 520802697 771238237 848725886 131647089 380308992 866792674 897957545 762642330 839999253 205877982 794190115 815477039 878901136 554509270 632379977 886957681 928913256 572436270 830820166 176122864 513693026 839125773 925155376 842068352 882089284 389614401 693030948 891222306 979564945 344266309 442842846 931048245 993795352 996837760 996999159 869524856 940961246 52637369 750765430 282451236 896879107 584349210 671283439 96075976 119844615 355169335 861473280 577446258 965121758 602089888 647437676 232748201 956576678 764696455 896363550 407372154 669445459 46619917 727993559 453536862 998489966 986650587 993014812 259105111 673010505 17587604 479730529 127577623 968903541 845889036 936385279 52611352 452759737 437408968 848316078 519113970 804487139 581046918 688294632 353890917 550555423 874628161 917712535 171725458 379235114 33367907 378489086 903386030 933926409 492897511 735483133 115911678 565164557 463249762 507876549 701930066 832881698 613053565 865124933 751931452 857016687 415407508 779143005 152612824 980247447 474781994 663444195 954006032 960096955 285309086 431860901 416909815 899616532 465250000 726786069 900347937 906472688 297366627 302384074 717307920 758580162 261713445 759542888 626096571 789112752 685573015 792886707 67406054 738161091 536643888 682212834 181641530 301476248 321453737 626419383 617944385 864793236 307852573 921123545 847634923 867510742 529190011 682353796 874971310 967243082 223028671 725694586 275422537 618436732 424321275 690774714 466559891 993181930 528871808 819014687 11043855 73111687 603137831 627732145 298920977 387043273 302598963 405437960 888622099 985651669 5247406 829467081 985977739 987576123 595203488 763039846 414527991 855993190 296902288 926802637 652741546 798810299 941291909 969014519 365871679 376082773 447492404 807437741 522728259 548617506 16760650 287399408 138212776 293728372 858603766 933894478 812023466 876159418 312434123 799566145 319500745 693944087 129273392 568976900 723631633 893301190 460658308 468927008 54870932 566834348 127769400 193948428 217940253 627700424 743500981 792468816 352032066 844527062 307202021 725501120 13455322 986767371 30726077 892311752 372196555 496993576 54014028 84181167 263547299 656178686 622197493 985922112 10418681 903842808 16084482 351108683 740197013 833169846 341067074 741326261 233962481 561098010 477184256 834977742 75119941 303422187 112600194 527050609 747834016 930417197 326482845 955401389 57911421 329774764 993356917 997834728 377878498 672347379 172584776 492523833 96242223 499493848 92180134 301296501 954401764 984623131 810259862 998308334 502867854 960468292 3793465 410339146 247498169 988512352 985845459 999149737 846571852 896856797 481447699 910964697 73567806 99559929 430697931 982447317 415046245 993818065 223820360 569171349 560077766 713830985 384288252 551457509 959133024 962024098 38556340 143421333 690795310 757419397 468600026 815928727 607317730 999028022 588663985 778402897 959702086 975197764 545136754 770315870 189287341 904053633 135172554 503274712 762963833 960449161 12196376 454883440 656840261 822293639 511352513 990081483 735950978 824897556 226326158 254488758 474434147 924333607 697335287 761706553 6504510 256184803 978997150 992516414 189811623 452643797 981466238 999472996 583285378 664398037 518488097 712583332 313636219 976395232 558605113 851511957 679109263 771807056 177646028 651447674 139013948 189635206 935740297 978524710 847207840 871956965 430962688 862391911 84998853 634179672 331772548 718840440 348389296 636354824 562624578 941718974 123740691 857723226 766376762 947687684 25818093 119073745 912038156 961136390 991434734 996160293 813845966 948113095 931783795 994816465 261730894 495013980 16759695 531068079 376148901 746058531 754349193 965468587 626239601 890282527 594639309 678995051 628536384 962748942 505244771 655904132 214980896 873352224 19630426 393377263 606814724 861932504 473704875 474793077 328698317 747402452 504266350 944815200 952471509 966192463 314036127 891609648 976657505 995777285 617980638 650917935 809489236 967011894 41271025 755816901 704795193 912129644 280381902 647595940 621793668 782416746 648402103 686025628 749671124 876995449 155343968 528393723 302951573 508253881 405932350 476026346 745854159 895554176 48633961 185380178 336005484 586326070 859845618 866802517 77799412 598246115 31390919 514476604 600867863 712352421 518989867 749149194 724674312 796267961 136954963 441624593 785873845 803439665 17856231 616286842 703716226 975288363 359754646 997726123 263469113 878323244 166816090 379808539 539545589 730460470 581522824 946422675 392276781 521793882 40676485 301252893 204502028 431437208 582304074 963077756 48082494 704981760 263903245 941240606 470598039 841311272 367485795 581549742 665286054 873109182 271087915 311962488 305742896 915006222 911243217 997594800 165414824 354348967 593346678 886135396 958862824 987528778 255331970 963636124 253242144 552332845 286748287 336287164 185994124 708935357 18415602 652756556 933557736 945355779 474941918 822631630 468234554 974730272 231259620 488155680 118567887 675563226 213934628 939709651 847321020 947010253 366934484 974085768 984676837 992684656 629763583 935524378 266978790 662460320 620666300 750016296 849017106 918058390 799233015 919211358 277310656 386680211 285134052 326844464 150664433 456918929 932606959 984524470 495145677 701563341 207287383 297888950 104268136 274943718 367162553 554002349 255671430 708929369 810224327 820071716 852905521 859398032 28257746 405450827 554426497 815080413 173985828 966979752 636281325 637275013 860162984 942585213 218516118 386889092 569096361 821700576 115304651 494056759 366559136 644107909 952910231 975059828 634051461 791434965 861831096 938775882 810669898 976219045 562709714 854728556 327440910 725871364 721955867 788106553 762360661 964754064 603038566 717379059 285093844 382885146 940712157 990351191 117435716 992177199 226830997 891889422 940162280 991720113 741358620 789832674 924741095 932899130 879060088 885738386 658417673 849102144 154128112 567294508 105142431 505924073 848317538 987224447 349068729 991242428 71583599 562779094 797397795 986264247 404415097 574287229 106367750 135947127 102197212 596618813 872359818 877552028 432257645 897137292 410441315 983235379 143705808 554481030 75762470 973491615 22348557 471182961 794073205 807356333 602514854 991213606 339140588 982477640 489415064 671052275 113888317 451515855 912691479 996190618 762170730 832390008 769435519 961107001 551102242 719830715 713231770 833216568 514043668 732398519 146597152 910899255 770314728 813896897 352006363 684823557 157914103 998783939 932053675 959401059 981118578 982904923 459029520 737613663 304354406 783019682 286480157 624711654 323620446 623837267 125666706 419503216 962251996 974295789 977206043 994251005 849734525 939505658 310138730 522442284 147009533 867205110 767217330 897802472 187691506 206795543 147504440 815230117 678073730 702484345 109670667 518700902 894812811 899713340 59340588 869448870 837904193 965463759 640453884 931597727 622723504 907719632 247615492 562033513 614508237 615262735 695850373 852159780 433087465 855139030 80995223 634448905 865911637 950724645 837593853 952746795 886284688 924888965 903378684 914661940 911721959 953530509 369211548 838180305 479652511 489800401 219865650 444490758 790814240 880642360 208462666 666972901 838265907 878025619 301084850 571532813 245225513 677700507 495431749 760739212 141202216 688076496 783964402 871749807 912615865 975690428 63606597 358293131 396100989 739074601 748427271 965949818 984539880 990059577 143921832 584900869 877431862 920350902 66512299 351310339 840127681 844624805 220479151 585147366 896615650 902329357 298691359 716219979 61349794 869247460 874404157 951829309 772208697 881252570 504147049 842318850 254984830 647555188 887816597 905214487 385314240 757344124 449931523 498452748 690359481 758568710 374395423 987602938 910996873 941114366 164494783 876030094 429638250 607988694 997690611 998948016 502854380 516113152 873996296 998615582 216492284 788092848 551853673 638430576 250762906 410616703 860843526 993883046 16668986 69039655 164678431 951276742 694486680 817861782 53359875 588440518 420418898 473669282 206151990 523173281 298881794 737418362 557434377 644568551 663028393 799609562 55139075 324325351 519201007 768830079 761405024 923940640 26377010 472774347 718972189 884416711 968899426 999840301 485712742 734104166 957207691 990903964 590353862 728195963 58859557 780030199 881312545 998842086 256766130 526060087 834085160 925917156 824787659 887492980 359262359 576269189 615913691 799581355 905175668 937455499 153217373 697906930 698352920 873414243 315795557 423246465 404665464 770687908 372571321 745310395 229790589 876015590 81435445 863038608 382718101 646623187 896714595 942550156 591253898 610677202 155154958 817774982 623490981 809798280 323364323 875149447 18835178 992284517 816452315 954736898 282026158 463600370 202079101 624188068 513670429 729374581 68076389 131781548 427390534 873773655 442063547 611878981 124717318 589233079 243467851 772122969 513420970 817537375 951580582 958072912 228716715 997635623 327930662 966632086 124126403 602965228 839323339 917892214 995922361 997591353 706513901 859828939 695845954 793987839 838392212 929383601 535374731 604629656 818231172 991654469 553560853 821139663 254968594 420370789 809017420 865689663 526801873 916938700 533618668 587908085 350865597 953200269 644223399 769329596 724606050 789716984 719659668 907067494 57231381 752870974 721114195 739484698 249855055 679179154 551238196 662935660 627284910 677505109 178834130 193487021 563785223 625771125 567470162 930218171 967241092 981369927 854645581 927708762 111265922 489025566 30404334 637597890 665950620 722524104 659252901 934480695 186951241 524671884 827200497 839228835 310036108 879373561 511538421 592720048 391489401 968617857 545283738 753116527 688938343 858473289 530719417 995199917 415084900 472862553 510823934 762875860 157415228 627901882 290136089 538454491 607172374 716508941 658651973 848563852 976414099 993195486 324587507 915229159 904209587 984037848 420455845 454317853 23440869 813698403 741409998 763176820 584163288 801556243 840526618 991034356 451816585 914800239 762806908 884571812 668765370 940610779 24901335 636751391 869241493 901227459 110495466 318845808 288194825 350913890 836555873 966948698 187729805 930193862 202443466 671373851 608824085 962771363 118183696 267297603 934075779 968979634 758115442 868105732 926180793 927371209 258341869 717316591 702167336 805384573 288674080 490031783 595201650 895600299 875127511 924003057 160668589 578197527 768640389 817850385 900762612 901852626 297019676 939126157 201863520 358441756 278555278 784724723 694823763 939514023 271608102 660792987 386060683 421195540 614905531 984604229 265485253 741957874 326760731 864659634 973274895 993786151 528134560 870822221 678316456 841941279 854987726 941562770 420907053 449203754 126357554 738554221 488799084 865191251 426308207 874380017 762027152 833519866 913335155 964126497 728612539 826910685 478982340 984037236 229325120 879903196 946726701 956969249 989909629 997165338 14237429 156868731 349884124 355016730 677284481 888366073 451289935 613896855 754409922 757861453 839998510 854569424 324923947 680814091 296962154 612210650 283592989 642783835 929592708 969497552 971047266 995207427 245895269 822947567 158835141 271844650 221038424 478519326 788895138 810826600 776233947 903017457 104048226 279681913 536956560 671168727 204168960 630334395 291928311 997993876 460264825 558705095 64635192 648207829 4700781 535271328 940120303 962403423 714495393 787146237 262378924 532301033 126447803 336203497 326689597 714631355 349740392 891490542 940046720 993562492 840483755 934131442 984553352 997054668 484753394 927408980 594748465 965688297 695180121 958402096 200912386 493034959 935977717 992532205 305406693 509494792 381971092 696221545 149371494 190250319 175488622 643917800 151440566 210548076 16349860 81924762 399903099 861999585 903432803 936807740 768784766 819963021 184279252 206162616 175607179 928093326 693278666 947896217 598126801 974142899 518319397 542132627 920120868 949237697 804136536 810307360 876590090 911996961 506205990 859999245 670685246 712124190 67206165 513477857 106511308 985158314 684729380 877198502 462388666 758735581 797691505 892791367 770592488 995410260 809375090 902762182 629606603 812795287 243458696 581220927 696266400 704720270 109299000 147836364 127721870 468786709 1979176 189378442 162488139 677650756 494173713 763075853 665146203 682878479 88678656 615517006 490507006 960007495 780691158 969281710 207009551 866165775 273225792 666576067 346020745 889031736 402223332 649719597 550057537 917013452 925961563 951790189 453620080 938629002 61954231 574441068 897980259 940443543 310808139 792244419 379138878 957696253 789758741 880489312 595737852 947711577 332603007 786599441 767658961 937667238 84429565 747922623 632197533 987576391 898022069 991714673 457955972 781814138 394610767 785183569 48796646 530914254 676085748 773868555 946733572 965977801 245207661 606131408 305388527 410679664 501418926 651260519 775597966 798518560 142209257 417107420 749100463 949921003 672230630 999293905 944246836 986136618 319188372 647468557 283069866 687427779 744259868 857302358 997197564 997306340 256257585 495375105 180687899 980122865 361559338 586648563 899464844 933052996 741255013 874164189 647509914 799483434 92309821 430347831 801884607 905348611 891886477 991569529 99216800 767008042 7233633 935306946 944196071 991036872 507740060 882179652 347695326 636614326 92245039 182596517 645862819 814238231 517324467 867413965 447606271 699417617 85797075 930202425 697505729 763360312 938947405 951558156 448892399 915069885 742605116 977407742 663944040 930431880 626440796 922116070 901186233 955376507 271761946 554004881 498504779 674491542 384216904 669822677 122954551 276359633 899441828 978919503 262901569 805517281 522745758 630517872 201768119 787238167 750040220 788201606 654363383 994928383 788115710 878429527 119996593 845557296 907145458 966864005 16210709 954015254 7202189 672740358 723701456 941539529 926910071 959918740 997226133 998954580 164784133 429040790 347567135 544567699 767752153 901226825 76433401 148335829 118910286 487007870 813344762 919775264 148381022 471844130 752097486 872837496 913216992 957376531 96337004 371135360 982190331 987226029 980871297 985758139 881697516 959356487 416262112 790838988 637543327 873626503 143807839 479263210 570100920 581793697 314036905 507319790 32225632 647677139 449647219 880792445 734053931 850429274 145480720 889799735 319106401 731081788 289126523 716061886 936684782 946180506 938257211 955727565 482715103 936773179 583093132 841839209 880742041 940604745 693160524 961380595 469784181 551624430 922623368 962844953 324275130 670976564 369755558 581658737 993418693 997397377 70735021 749697887 199680493 726975355 510612922 680462009 54980517 401681704 538770065 970496867 433749234 911484868 729499645 867954035 157981713 298584103 279797071 624044401 755106132 895891262 578490056 987623287 265722689 348338777 163293917 864826918 881239500 904867461 803000431 860576624 859879612 881799785 828162989 923682201 958276832 963989594 983994566 995680437 186106969 342295171 482096768 742283196 177072557 394648351 681018287 850377303 817034350 948251305 788912396 845339798 659873743 944319695 702602782 859674539 410418942 609388865 559756636 791015384 284054599 478526930 310969542 640433561 960488078 983637614 667500226 801734003 177926455 706715292 908737853 945891100 352105634 812725428 640158144 708760226 576504894 929952553 840566982 963844726 710535595 902192793 618379576 769151556 368220454 382146083 163085495 268081634 676802013 895743184 701967302 762829659 821565156 962567836 945096097 992892845 241021948 886680118 893254393 910689927 791012373 879513166 191793422 331403401 148507477 914565058 103894316 835985783 527238010 739868617 891140043 959724766 558595178 670759546 268640780 460270829 948692165 984065361 490331298 911217461 539809156 756792106 436949381 549700893 482413570 990934034 919182673 923132778 340363178 505320368 844029332 865405337 130097949 479028198 516237818 902675639 772133564 805469998 205570219 319090039 612672698 972111612 113041540 440066395 967215967 987402830 514812707 724943889 154948578 971226077 833351086 869421762 137640007 734836128 424082831 602251475 728733474 731939464 380049127 615085406 594697465 908307582 634919545 886998139 58819799 297983836 96249928 381971172 740801351 945006360 83906629 823414249 256601205 928339003 650084828 675399320 190009550 883541830 840681471 940150737 90622487 707358123 959563744 993812143 973589543 976839445 705948040 952332435 81267691 182978331 811319407 971315969 235678645 885659553 536273764 592961030 14425913 88706443 92261848 559396967 425577524 659175065 522150532 732750370 95376696 838992265 423180375 974807278 876341715 969337780 632285873 849272574 52415609 374216427 549517800 698812252 261890197 754698348 932635347 953357794 942238083 984674859 176107043 430628059 296215494 521258555 859338880 930830804 874748272 985838227 622709585 804147659 120298035 747004285 99964892 412944188 565070233 820524532 188207408 729952796 327755474 865031336 55993252 443205857 493921762 969800819 540744262 988736250 915476097 929548494 889771331 990796240 346474855 928554543 39585823 267752006 966558072 981814309 404089320 950240452 278399328 532308466 254990520 614464739 715579235 807878170 449704945 982288893 330339671 678960034 920338273 992929896 869215688 930074030 209352565 319810036 701982315 719555676 610531514 716215405 739692721 918564049 700509797 964530042 447960826 757228951 256188650 970537317 285587370 892328607 622588331 791308943 78614467 334163644 233399923 827505907 521872042 921397622 286725308 386133047 595877919 665843061 698034524 783292804 918020852 986102588 460954888 493545561 68447733 550233153 89635225 939663820 132233758 690644282 438808711 577373607 834353442 895578916 915023596 920871499 725393871 741503265 129152234 713586967 822030387 966514930 606971716 923126459 912665482 969390455 660168714 743097742 670115756 955238340 220834653 347784540 25462352 830721385 745079989 776560768 991971150 995807445 106525582 592129901 62876022 226277926 8506920 654931359 963917709 973570870 263408888 628862705 854649499 974529389 634821075 834504079 301056619 439634521 629396003 989185706 504919444 856829771 130835456 922902909 554512327 585695959 500844006 859013918 340060157 346517671 157860688 772015941 864739169 967953773 916600293 921822022 441344783 985658734 253022831 427824761 483496364 591412300 596877431 626617168 638457699 767827408 915594353 967337915 722977340 910442000 982984660 983427039 393519524 866977549 992417090 994257551 905631026 948422696 622633539 902031461 445064459 962811410 828839001 982422785 138103647 973208973 216563205 904925860 686459538 850401541 671084541 922351740 565863117 632204434 176644670 244992379 928980538 954567574 348073651 377469548 259292198 869187380 778476488 972393319 645943567 788101630 453769063 582034778 159623018 943708223 146087232 723395886 843910476 850504804 957356755 992507263 439534656 518665386 357251722 459655576 225687048 818825758 39475148 103457719 821488500 904616922 127260524 675977256 566184086 835285048 818533036 984241167 670454520 698391309 882093537 913241802 338278975 691440293 898604019 962173845 339307023 679078467 378239918 927687122 19175335 549583034 117198916 277126454 407873417 686299907 754949381 916134251 818308859 841760095 39756502 175395210 11266005 175434653 760964536 887519783 625665416 806044484 603400547 669996209 796290807 902179040 677590958 742902081 170820182 617283235 482635474 781985231 392805551 846306889 200916220 213160798 439168861 948440080 532664456 612811885 711679058 996498393 404349654 731387350 761596131 840100274 313632545 749268716 784093049 833479411 287254273 706007935 744584326 779628010 693361129 830692896 385464656 734648735 904668005 932032634 918886738 942374069 231992540 621008968 914761384 995480741 54755917 81538281 587026212 993551192 225743819 838570837 764813465 915591157 520275036 610300049 350884319 677745619 525919369 809851438 707749988 738537384 501930087 723993225 569045159 781049903 683062490 841220941 324256293 398883600 181362477 321446066 124839127 903008721 579235212 776602021 309542420 886581106 535568633 630454128 400435228 763563827 215596029 841147736 469020032 829583068 646035788 781475520 842741231 882600819 733544052 961459605 691497828 859085048 686700724 764436555 510962459 866333602 965046024 975262313 185400590 920560764 85664742 102668128 240970422 348269547 101867944 956984308 545173839 830887201 252245871 688445318 646905074 947564412 397799629 832505252 862356913 958228890 317179106 563659375 822364856 905690505 265593835 336757501 902130497 942164761 643483250 961089016 741524551 959146730 209337241 525228536 561773026 916002959 978165681 998014835 343619266 485271964 352966360 529654106 60619323 91096982 615965178 953576127 134677802 670601479 528450910 825839880 919825479 979197179 895268628 950677736 902474720 998951224 120814133 630385136 357952238 648883581 464438886 779936224 17448821 666371823 336957847 782865046 948246810 968363386 750224824 837123695 546273868 868970491 302861433 970667245 519018968 704507769 83763449 980616931 361866938 573019419 939715903 961643756 254775717 966951695 979198444 995272180 575763463 930204498 673184366 896049006 798396083 845139944 46310214 376475688 881767160 913196381 487210269 861542260 35838496 591010115 848636822 851130144 472555045 606160545 757095030 890054846 725808348 801570211 187934210 226662105 858667941 998726382 492056280 688956039 987613511 992975463 391804254 936281191 102921109 345189018 252409416 607624636 804677034 940930005 553746925 828378342 235152405 431675557 430722935 609506707 409601356 613676102 32923149 985471051 312663093 661893123 212301536 302926712 959563113 974086531 6122873 754778276 422669614 803028729 595339389 794456543 682508600 830433094 949637788 970041618 254592273 587489168 249379043 882010399 178615405 824554987 456666464 532788165 259051721 625492357 41842867 203165071 757470326 929102133 776942127 916599131 605387296 730232223 86143539 610853673 874323026 988950121 330008149 459996268 441998266 589962415 693323651 924897901 398247319 883736883 52192560 851380809 981599732 997903401 601060010 965444130 100944702 573208929 888267645 927730973 307830424 989152339 509894454 628562277 881917370 883755507 725433307 925540277 614642561 883821743 54865176 491175279 783584301 926985559 59588894 414929717 334259915 630388250 777784305 786662908 255739541 396107107 560364724 704931869 673031340 918147929 176989139 205505212 753299130 821282342 860403621 869686728 235888645 997322675 653380309 810336646 851803512 911981359 456494944 666685861 2776365 102063782 956568289 984754147 710643704 953686559 965771302 986907620 426093869 649814825 202302478 636647864 302170728 434268411 399046518 946949174 196895504 455601072 379538782 926464909 830205685 912109972 432186106 634029373 695151953 947272396 130815471 467855275 694660633 694937394 612427905 992742117 510754254 815704490 609834679 632947109 161490296 785294460 559272283 683298866 369555811 602941087 496899645 703204439 506503197 590055445 773768069 886394668 655014920 933511083 783613609 946290060 887710508 942906658 835764380 953743742 351389423 893130147 794688687 905333292 920423841 961836551 480462013 523329691 674692354 982446899 987371129 994216769 549505789 642692457 84296968 250048962 981371469 983985850 15732910 958407925 249853359 908983693 141386927 926562055 463870330 610304320 343062717 853781998 419988874 478425312 116537657 862200818 310294377 950024153 119620137 166126650 268476691 994663732 564245185 640982985 274599341 839132454 247938097 852542825 817166118 947939347 897079645 958522992 636738727 860929294 915045116 999616447 763884859 916274299 453386082 722859448 332817101 644508849 931075007 956482504 552233398 824311336 377688732 916434629 477825979 999072154 226459926 484345871 337159020 841860021 17401388 821621446 663537030 888163263 400760019 617615082 652305934 715543875 800493836 823903828 391403157 795005947 595844267 878836689 21351347 831532474 400780170 887230650 215813714 231742674 552734645 837908768 522359334 851183714 398560163 874480116 221187819 740169512 748557310 989535440 72318718 587054755 353132282 840400330 107761810 289293575 407020703 712121800 368425814 835589320 9330238 479743118 578802318 919905348 791142261 823054227 156695463 723384651 941502091 989553944 559295639 833419519 388669750 983911189 44363400 703231597 276089045 889872904 779834792 904811858 862081280 886998474 848624035 865649776 896383790 912550970 810160987 979200935 966045641 976885251 491644200 607262813 188701827 753435125 482622104 868339466 835775425 924070677 556179472 651801941 267716613 468872232 915479353 919228917 905832846 971723519 542612745 748720308 526729579 819898851 667121037 723968238 917972864 976946663 356545095 741761628 347715434 395078882 897702187 980588009 633349759 726696653 195231192 201509264 91817505 571255085 596886860 991634852 559386443 910011738 407762195 662606544 392494838 409567494 980502307 994469875 241438865 293671327 316505515 950194022 996640525 997650022 603472394 748506413 710099046 751431878 17055161 68213467 424552398 798374315 512869383 935182279 827493262 949801934 583480384 810152109 852725176 956913076 298134963 677447928 766702483 964684467 466736218 857560887 266822398 882392452 213333777 764102472 304184284 506165818 989003409 991223701 55329956 629956815 551662674 676704009 715294142 843787354 736875248 963957903 969742170 975759592 432295984 570666145 893979757 988402331 474624402 725812605 745557503 939839452 152750883 750856666 35007764 924119951 693603406 974431401 806246706 852304493 642266597 967813948 443679265 466184446 413217900 606950911 613227600 786408287 619713813 669232717 230200504 917985175 964231296 997351003 47576076 714227838 74017268 614430400 648097053 651006026 970151746 986504389 725261180 861261043 281666231 533885870 72837418 272326709 289446412 511101453 551185394 853223767 36136786 987855341 132611155 408597595 524581530 945833285 340721087 341369039 957306224 971948623 933374497 946465705 187637843 757019868 296760189 372020013 483267423 949420410 370095353 675854633 67278638 818472592 905553497 953943041 586309512 805588323 242454386 567031595 424718414 825501010 169648938 577356537 464517887 794401277 801839363 960793984 375919254 637168377 913395822 965970690 885292247 938913918 215551870 800831970 906997838 922044697 288054950 353725945 265742488 855243383 314405493 374084797 855331404 974666631 474316984 521493807 394875609 456629590 16413580 304319623 27006814 389113601 83865003 96619124 657490926 688250403 978088632 981644892 423715414 999514617 308200276 491727849 324214738 469746897 485030607 743062850 396254310 968922495 773415325 890495289 362104556 393198936 772353859 834387136 961274582 984341195 685255283 919264917 758716457 930636146 258692030 744421751 480953946 746196980 470034131 975535482 228975273 804078829 549939622 947975628 841892445 940703155 786059275 793083681 266357721 821189353 390739364 565460935 440317962 758750644 209924551 381701869 542850749 785794636 541283967 895771803 617126656 918484533 792305566 832925171 880416991 990260676 815611691 913040406 310642478 979567246 956729760 997846972 579072489 940804628 442162622 978245587 566541541 764376246 833610487 880097875 173743472 771557982 408412553 858632915 73380819 880386373 841520242 859850116 113716813 542987290 567530935 886883972 936962365 961252139 57954402 390114597 282042006 816098765 868671120 972142657 377613617 670636767 779236696 872300087 224902075 541270002 896605782 993740356 889083760 957217496 104232084 510016602 982465085 996534733 539115316 994450748 254636339 781975294 175693319 285725093 463815576 505682891 291061617 498137001 203156604 334054348 441356778 524359812 179708119 549913840 923964928 988420490 494982196 867896400 406077074 729824648 593205699 908741468 303491590 894255520 345186223 484650007 988851121 993394019 984798975 984976743 47115513 973307814 322741287 607166232 78730954 865665959 651959211 887342452 766584196 799008548 520041240 613907129 214391319 863654350 9426745 723536277 762880018 828312718 634708591 873724857 894103358 915197728 246977166 442406755 283757703 975884427 237632733 850258920 257301412 413836690 742092746 999785080 226622328 846537377 953506468 985926082 571473223 640460108 700046973 985361043 696748461 924598923 521780568 585102258 476647079 574955692 560783150 792243608 173609345 358402225 195084625 735715760 628971421 941311288 479816908 913139754 680599847 983840451 20663399 791715564 239372191 918503896 746560419 846596676 201533115 926392908 456275092 477949947 315361525 730075350 585885389 777970667 854961304 939730776 222097988 388740814 207300488 208833294 631405568 969652774 879136976 949528845 226248080 936619336 352216158 761333016 479736316 895124658 935951490 980541285 109816755 835904169 281733504 686965879 102267756 642523617 3611723 76212051 210961133 502394239 731574118 800283582 832584840 846979483 569561684 587911260 305141513 352728732 823867153 931571868 63247142 718077331 170803060 264290509 942920198 959514289 702112143 910362993 774942037 828601830 327269337 822644924 228532526 917458465 240673988 861802564 950302395 986431590 289169755 526593384 46628834 762881572 916099378 986297148 248637355 391991349 170126254 699633932 969625892 991164474 221885298 684805538 759334368 938101086 328631343 901283729 548200658 595902887 695520537 763819547 483552721 499996057 583787508 785536349 67693500 581603996 610641199 859278441 662489554 697632886 146972585 350626563 215651533 291700890 390126053 872928488 211904569 234342718 882754238 986722828 180442438 598440488 151056917 806804008 169400998 883265357 650984747 867556310 143446229 406550005 329975875 889062514 666210906 733869065 943897463 959046098 619392044 758475865 591202947 953867147 485282897 605412915 532229618 754063447 944381086 968590753 460667184 784267876 611982322 838756422 736980191 891251076 64962309 321117366 706576198 813896879 27929756 138983151 991777736 991800796 681897844 842577526 339857584 407455467 732625522 876676991 956322035 994870378 595588233 747491428 590300798 635632505 126584522 730287710 102143789 544788962 467525806 982107121 539466809 606126791 502092119 856621913 680077513 984443569 90079990 343346241 223235114 372002252 781799238 960657552 709913509 747752752 796948194 847680040 768754995 884259246 989207413 997744979 870643197 996070998 983751947 998734857 523339927 572217639 280008992 651498441 192995226 330791593 867161273 928250502 494680551 818838484 412778047 877664473 176710275 406828412 696041270 752548128 207252534 988912239 683345985 926906290 175018052 735385716 170285458 561859193 369465910 849285566 202606 465183915 947238146 949632723 102625506 360609242 954526286 994963382 730835096 778664956 169349682 177195649 892083473 967799154 820616601 829452412 368700569 578325688 779684816 887254727 492652599 591014044 376856132 516777298 835715432 996234940 252779630 991335609 60986957 445103151 920406892 939035950 889176959 902180525 848964327 862184793 619592181 764055565 639922313 857614767 57254651 682457230 351896073 762884086 531292827 834885380 651015643 919387472 370394475 397265326 348140722 893204984 253540389 262267933 849978522 968638943 86145543 831899666 502524080 970816867 267546760 705424460 915383564 951353512 748114340 754221945 415003187 932707859 240909567 890310525 693393390 705469514 446263890 471257585 990317441 991389786 519778891 946954869 333359928 336501942 645398210 904000742 211241057 403278137 588958636 969932009 953794666 983976454 254056989 691895272 7764265 249746869 911873894 997711806 540522250 610339784 513369514 980186764 577012425 940912625 943902824 957040829 493627085 905602746 209313160 984685495 795751479 922019399 301004662 865988366 753243686 997817501 763686585 799894936 96381113 125180180 646781148 956031574 240256584 663536275 89401378 937700938 155253831 694645598 329533473 660667656 21658819 764770896 431788480 546259813 507363459 858660091 506682853 859025524 482994482 773112593 883213096 888187004 765294765 905392789 836055846 881021293 599098023 927255480 413073981 995828883 20884686 934937805 228393239 701421493 776720857 922618540 550233477 661682090 486631519 864077614 316217934 929474731 436046730 812340711 65745118 267619682 780658893 878631360 896791284 995220704 802399565 936886434 313317689 560301552 693894312 959932419 934532808 935673559 110166515 338327085 303323048 639459086 795084358 914929685 742010234 951458458 105641521 942799839 260763324 665274455 480174170 773429167 553295425 735142120 936278908 960967940 342063861 448994311 981261425 993394393 577459331 685457684 726998424 902958197 682569943 777268416 858500927 987657969 995718849 999113816 83862713 140502960 34785775 149368551 501314977 511222380 679566392 764088532 826815658 928040730 424627521 933696765 348159350 718834865 220872092 505595217 876246968 885222081 544265643 751981198 780826177 827908490 911726894 930424887 747627905 888807289 259647701 897125849 88495691 438662076 506085221 823736311 131892698 411481918 914254183 968592947 527038562 786585728 880626040 996526816 496875995 865720439 449457489 783092607 168682663 182536571 254005821 561516622 324087539 797170340 665371508 981467984 594743628 925431599 666909338 843767396 965485998 979118758 704202403 864167381 674007307 784875061 306067808 415731665 932633134 995958694 476861044 715847274 660944432 992202511 665615952 847076406 986690428 994030667 314381039 548340262 628075344 763037686 546991832 756206738 289117286 750756746 18980049 20804225 705156507 927031161 901264009 982955805 101779826 708898210 457435826 661285468 76589025 896125475 833174942 925591942 498573283 770030552 689740063 870640165 802200779 862691455 665520357 769070944 195757821 606648695 681461521 889162488 395013510 493979006 557045758 828188416 663422305 801696268 947861918 949261408 608880676 685697964 686518577 760608811 415332299 880675079 77643710 570140528 68535590 953726151 705265653 936662316 807876539 984431441 47025502 667974511 478928499 958752561 372289374 879897080 435990678 714824976 847372857 917197471 555667938 967613154 636474597 702782281 512275042 846145813 563880659 884964354 801117960 973512928 566118254 867213086 840698538 874671435 649490815 905582421 268093958 842580384 780688100 875453460 836562207 884174336 261532265 716677459 768718011 848613033 906522771 978260621 6496592 203873630 465363628 948873564 582887118 591475024 793800000 942942579 894872208 968010431 78573012 412212961 171738561 480259689 653249296 941271680 644381813 830585586 247106991 417673863 442241599 960757325 912976334 919985681 461429687 506201803 929296433 931577597 504029234 916354362 662917523 875980627 65519030 314425212 964008683 997389295 692958542 815697173 219949445 674795858 425585068 472222890 194944982 706058644 759220852 811574080 762233146 838328808 87220809 550090590 715558355 896469191 983152802 991688559 878095483 945634953 596943890 925380802 683593631 844402957 357613580 871157520 953715837 970491191 740001444 864629796 838247773 848863187 675633422 743093759 278140002 819400653 492021560 565978455 454187191 841275325 762804087 770489900 882624672 971055898 428406732 953566191 476004107 887236531 575202252 947557922 476159988 487306290 556483154 581938730 640802076 742670996 51603166 652226853 661656135 823180789 114286953 850373252 521722637 894427765 467502307 838510303 560762156 892668500 966891013 979365496 927765614 985973799 500908935 525603756 249758762 877023988 491198998 771006894 844122900 847868423 287140677 557231028 110278892 856055247 508379295 868855869 240944669 735674778 727540937 997858166 494039980 839332358 59097157 142325192 599521845 851901531 681667394 959524176 747106302 783162019 224626532 273890246 502036753 886431801 252006890 728902320 754090865 754240247 765595271 873098244 126581099 962194014 483895004 959616551 663471227 841542606 309267220 870198357 992166241 997612371 389534413 623618999 222979520 793279734 570539086 819936257 440478386 516868948 244386449 442938673 653738127 715062405 598954537 865135864 870547857 917020600 179491707 452391118 837232108 924489443 671513961 780585871 369544727 422026137 22040091 545263887 470525316 751403491 727391958 941648886 21971576 388458591 214466036 702270303 783348021 858002308 512960397 591343471 495739570 649280088 666612696 759144586 600871783 804043828 355002095 767990290 139540286 184801074 618201853 926889147 992802834 994684054 383435191 856543122 187806674 541997650 292147072 713856926 848274364 852699681 540573368 766871721 878874823 897797229 162353997 913777149 873422001 962598031 456216810 536010801 526817322 810586478 156453284 258211652 86629934 744439324 719124119 825213610 33215796 714685372 512454925 632374682 678782432 709960123 35337772 199453990 529612421 840737386 372646875 723903422 90517198 145691383 675507510 956498843 607436630 743447594 808641306 985655585 942691322 994452041 789930544 959036596 970297919 978577288 372038570 813211145 544518695 777091065 773370697 951044772 467389901 893658652 156789625 215513402 465856624 500233814 547801101 799366429 911177753 918277765 546501767 786562561 348027131 765775495 872793347 923009615 684484052 899618520 668837254 674626464 924391718 992439670 842529499 874285166 295647787 722561401 207306548 569434812 48349117 605543740 600234735 802588357 532107086 996167588 299451066 663851349 176682535 232129930 597468580 821082569 561176971 776069177 676501042 900566773 757330097 970797427 237337228 493103209 610699271 691109280 555013550 699382915 660959252 997510968 273841307 606400172 232315522 290425835 669818648 930927071 992921986 993421404 263075601 307562527 672054314 942515589 306641686 890365541 666522080 752505127 774012743 789534182 857789936 988833812 478206880 798887664 893849870 968834502 321593036 633281705 112739977 640832150 577495851 850008126 575886943 889352452 588356536 985400930 888283784 957396926 620010801 998983341 770713950 909987642 125055019 947118672 787814739 821405469 557557590 725535900 412688629 876075264 186173200 745714573 165598346 890915115 439005525 694034000 313372001 451660169 441869920 523950118 311323123 445383928 260681907 267564523 189597088 358515606 675023411 992627584 995600817 995680591 150081204 538908184 14001410 463555523 75230833 431781822 343345576 783892407 834187335 840120101 324773942 956860748 691327877 832777754 543670320 894998509 926435649 972492527 127932589 176492883 202480970 513555186 742082847 819688914 87479604 382530249 437852658 475090441 615770567 643370241 581852186 741021713 278013684 413306992 18958798 83692873 719010330 732654776 500781058 841227926 733741311 807428954 448629838 840103857 824902615 929312801 991885549 994815783 30060642 726660985 408801848 856437036 157015560 993858409 541816301 735912555 500934442 813338045 868309115 925846797 979818633 984335284 214500307 454686114 415958895 921953584 637765442 758129462 87171427 515939450 272087086 980961562 712785950 961502140 666620689 685189038 417109639 447953187 878753181 980724102 22568247 25906675 729516265 970984576 825931517 905012794 670644321 975506363 269460151 787951566 952477133 955880427 72080436 558699126 509424463 534810935 985976896 997094480 523309332 554071755 594860315 966603925 387253543 401455659 925034373 974171487 846067184 952873225 291399132 432342000 413938318 820425384 241838661 723999515 988199173 992911655 813008113 861303672 907176493 957551854 670176249 748059516 425218526 520850133 432597393 740666012 277166576 963247648 109338258 925960256 889030759 930383400 576030101 794516436 80916834 969116667 66879633 965225552 97558472 958315176 112406509 339784941 430282933 998369411 300380949 760728807 964833659 965303680 897192535 950672083 474067982 717509040 567448191 619731450 635480884 732665833 66522890 606423068 177641381 483867019 604759284 996003200 1417532 360342991 533219425 697760929 501930685 856030424 284423583 982944214 220999435 963926088 573962293 843056848 742319394 882811401 813568619 985438734 66852439 561846234 1412839 474257746 20337660 533592540 114343224 736760526 734589959 950948005 540032268 770561277 678183276 955622964 986380302 999745636 985234966 998698598 705594078 846819306 638129263 805653134 537177078 574472361 96982367 494051858 301404584 830378978 107256666 243732361 685881382 714677462 935738721 994060806 661781546 966962940 397885786 533545524 860616358 871592238 91413341 697576968 404037245 708661767 918047912 952042809 391492869 560702058 531956694 759853412 495834737 896205780 863539045 865187830 220489513 833128331 765741764 840440802 34320654 136421775 984099316 997357914 658563417 879066924 961818686 992057671 25254839 476233718 291186197 808249970 847462465 869873487 148380715 757029062 916659286 998060228 110097591 726162352 399908967 453749957 152005622 321922379 754521891 791462365 760948539 820143631 542276568 709020699 989089922 995796249 946407552 959956191 620025843 705396480 546361230 790984989 670718933 910744658 863784861 942471625 244319406 634161947 947356621 986497263 537890366 679516435 507391799 601206276 920997767 967843242 793462562 994954073 734260949 900175723 990190299 992670602 372537507 588507283 289901680 441196787 375009333 820854747 310368 607705061 366211018 885583739 696961620 999193631 184390527 777894492 640555178 733612462 513018029 667611437 789859139 986155740 636226823 672001709 520805557 585104025 520055713 983367485 673805715 954795223 196229177 322760953 234503844 895162171 473591538 814790781 136402147 255751078 812415904 844726482 591300366 756993883 684749009 857669326 384853076 574759616 147278207 466647445 531658062 878713765 720612933 924160501 997557951 998782872 236171627 576481494 248297293 263849760 857821146 883328607 778265023 965873393 37851743 653217403 114602987 666794225 172530752 931110288 475100678 780637978 402826577 821374627 20875937 983935259 443593395 580610440 417638250 926984604 351742708 920613098 289378992 724016966 429562959 858008958 156224213 574594961 626606078 818882251 413579497 468732779 316211823 427695040 785312651 922889791 98710359 992530605 146788831 794049032 414200066 694373118 668339954 880153800 155619219 853526689 146226714 967839094 207476533 442397759 56460885 987740150 377882614 625052904 632329964 923923573 791830217 948279551 331998087 899026456 849367484 908840168 828804974 883843272 466937088 951673464 585793366 889499381 891438440 901577808 258255471 512125806 41045726 524172016 626195772 768935684 918808970 953330086 66005367 684659986 254986465 418578249 958233556 999862993 401204741 975393622 997765185 999829720 867197505 979582442 63741277 87565193 65159126 356839691 779299577 879624606 656593675 686938871 304996329 690828282 341701767 712620684 619329659 973538104 759927707 877821745 455267631 865245712 336607490 361908647 686320652 959633764 857468466 872138010 261763227 561362845 344716717 955437617 426523946 807456046 493010209 974045390 452585920 748137504 119944965 469837336 447173449 566189198 396830869 543047264 6448638 426428008 3900846 414790113 500863406 774726310 24282679 902018149 286827346 927648777 557824477 998396731 710038803 949287914 516885998 552730790 439503395 521829822 442072593 515073987 509263770 523730740 966608053 980625324 792818738 974301956 34900655 472854201 433920821 729298284 182164546 871378324 85290802 381633358 28298221 839814106 193820321 709743209 552001899 929095330 76846169 857977787 122415230 531714930 719196611 785365588 854526135 926129629 724677533 888521273 850567644 915014853 262511355 924755615 9901926 24327208 72152303 436017810 625740547 748232340 409745451 795969839 430251219 515433692 332809363 556782836 58376159 867759566 447094195 662071718 156550277 760071776 243946314 732117301 344046769 705057359 278754030 604190242 302687598 601517928 445398716 479895139 642135325 834168955 215603128 807952037 179471200 553980690 47767430 638411456 289099905 631244528 525457659 743427249 66159136 343416622 968504541 995083206 826836877 923349463 727671513 891466482 130524650 940801224 21140532 978339497 862607983 937515769 88502563 602384903 975756099 993968941 103354537 442718227 8775184 550294745 482567063 950081999 1393194 64519104 384860303 845438813 243721534 620732022 592476479 656531575 377892966 398982328 124483040 449161177 195417678 722636329 524823275 666123595 876062486 968029101 910170291 969814047 780851640 846303754 532503232 817962209 473977521 794641413 517659065 759841660 723491287 889164877 484261849 559449710 247906852 411127968 355740184 502328891 235946589 753432512 503866228 714554407 354767768 756178198 525638474 769326025 117746814 862351773 120048874 883718037 758269705 767825311 77032644 447929523 25048797 574505176 997133834 998448471 926729185 941805442 484449222 970957945 441298293 764755512 215340571 985243108 492115226 540077104 111779757 342533225 682273762 846920935 187945260 344818845 45563164 710132620 989730034 994297390 919597326 923679420 766844176 793858103 197965657 656435104 67637579 498218165 560304272 994596013 605012813 670268655 465833180 598866641 572236544 589705668 335816671 544751849 192830488 434236553 748346084 760690097 423282877 827920385 356063962 722330000 347444613 760039605 687451746 850998724 416910922 776863685 435049134 575760715 433287098 503270703 12311009 288293215 679871124 853249193 991824019 999919365 438590322 555604223 423221912 959112829 304540212 902422290 581521964 967358594 288813060 874997515 604394368 821351595 632281025 720470331 142185160 477096260 803004444 996354133 575010910 737117308 353916340 878023579 315057788 911807768 746042706 746779010 490304866 607522032 679919265 713457510 963276949 990840919 557297050 732453321 677874940 982410573 989733935 996628354 898574487 991406437 947339002 980073040 140563346 544391960 157835821 593176642 842423354 993713086 512606123 945028754 862317610 925146140 662139468 791014954 357926346 456459756 455620984 671566263 698132880 727791573 710152394 737140866 440755394 927748664 574067934 823533536 940047329 964907467 82657455 363870576 913924722 924382132 406706425 981527077 884391440 944318545 989508078 991017278 706473189 727175870 207924018 451885850 557456528 772160350 355317340 878055819 166151399 922764856 546424172 834114008 919581649 928470039 453490265 628667749 547877316 935787650 118401854 360832036 850255055 907407434 663854812 818979777 85349363 955788709 318428863 611516167 827283840 869687997 639445124 825900372 146969613 894584081 516125457 749808207 807179502 878315057 815399200 984116534 428344858 550795256 352621786 738311454 565395791 798806759 386176501 571579414 690768178 748115932 77278132 572539133 397073801 432770354 597682853 929746290 666749727 964622078 607067096 664563252 449820370 796884405 677217454 872557249 796733343 919279975 328580910 966797440 375427962 385093382 975570786 992998975 708906165 720280855 913825770 991869728 481337246 998129341 850057568 919176839 288566210 895920359 770640078 963834449 947689605 955011693 991265002 998039763 523356351 869561721 965795916 966448759 90853801 762144372 862276910 929564149 141987215 712995104 752165678 794637608 234788384 585845104 631205845 748360681 92139842 591763443 615741253 699305294 319546237 413423566 212225729 627911753 636992922 917408987 157791143 947673357 783833504 884034188 976769286 998480472 160600379 761664058 659049909 923133721 722900961 771548361 867870587 961574068 919510695 972173629 113066161 824993476 686898701 794010542 954110655 961735794 252632986 403860066 818071869 972685646 712617158 713908292 966957028 993008750 122922160 788336333 573289857 780372487 941781627 980814730 896042983 983209224 256568507 838163924 770080697 884391239 665521142 903641510 146240937 796233441 384557187 741375822 796116827 991637710 39648784 185852486 679385908 679427520 884594036 996442240 565936302 666051706 961353575 979162192 508442299 895324440 25143659 326684862 940555398 952887224 481264034 926073998 136472688 736648073 324337409 443230912 124376427 354454602 32201322 747791086 58332421 526389317 909854938 936991513 627511991 857403805 931123749 966641230 302004172 925350335 962103316 978983235 126405512 429510167 481950098 801126963 904456232 996158624 540554890 984054088 248081299 905358307 268960121 504785701 737545650 749741756 787187659 852723702 770281810 848647680 660801329 853784379 283834486 592083152 23222254 571284791 309569614 520791963 690745640 822492265 609148970 986425136 478776847 552678977 772186727 899152038 737205498 989935387 651045043 678426627 102037555 247005457 574420223 595382865 218298712 396112119 737040181 967923544 78562956 620547530 729114906 923380543 975713570 982177423 386033028 603063212 275809811 304561011 196795702 305088097 725205792 906884960 902163328 979491418 97080385 236395895 408535427 920087510 334667669 464179838 929823798 963239050 920671326 982090678 73095372 946025937 860082475 948858994 222576687 799385728 46360131 687299510 845308357 922261769 673390940 887696794 383482484 756654046 865367276 922463351 694923829 913226656 244706196 939463155 759209766 962144423 419873858 549157164 402907843 582771760 433270557 963033607 63580320 427487415 720679582 872332670 983032850 986141601 357006521 581257675 899463521 936472268 215365784 840088898 78162252 110871068 600336662 997578776 830669305 944512693 156529707 880628455 492334232 782563557 180005040 486843432 735877310 841028031 336192222 340574098 923197440 955671105 678764552 810013923 463961573 954701327 232453458 654237174 82845798 414804113 856612630 883690289 350460658 464006686 512539246 615852978 836355139 976313692 372872008 412122678 244458486 896109474 524203774 623572680 813202077 813353012 823185177 991372323 289652537 510354344 767275246 887910799 879528520 897834316 815550196 861593919 145957052 958618430 293674040 303386280 618145343 688812091 209194877 846511677 82953239 705580015 348864512 402805676 861626671 926334566 482685658 949513153 363704622 839579304 299511825 507837832 984035824 996214745 41406583 514297561 768506210 883619945 26543805 583541698 362273673 689695925 160890027 344260240 275842719 284921894 151108210 761848306 377323807 972799300 450899903 514860903 438120880 546186289 540709305 772563051 648252156 707766840 447453160 981523185 627628455 989308963 917266621 939855062 237274541 703202815 598159246 672625531 286012885 615891269 896076719 918298475 229009201 834940343 67309440 685910479 359144095 379954502 339746771 364299285 256494410 320608851 875241908 928705425 407296405 484074825 581750619 757930187 438078323 498427437 818900774 972458084 550492623 604724334 395950589 739615999 912606581 985608244 997069021 999667068 684262272 853400514 703919536 844305895 307914017 660884609 37363722 415366873 868371569 922785289 897515320 974946071 76527961 452612543 428069698 451103813 727999689 744631539 290292416 586263103 876031709 908838614 837991208 918815776 853270198 916999225 214455735 666800468 737128443 814563574 920921606 982040031 990389986 991654856 954002252 972716394 673924922 890317481 244981134 670955196 891767435 935118698 934203071 957246731 745400551 872162386 920103893 952886358 741152363 964576788 340183774 642504779 615552557 686116374 938459386 939172128 635761787 763099684 250039770 522680698 834337830 970625274 799429036 801759411 74069036 158687999 496227081 657602634 430174983 664127030 516473188 735436257 747063855 845576820 296426450 628317366 928951794 979233016 163042170 211629962 189379809 255105029 565574340 620489758 756862291 910418896 741839385 981140238 599915970 851565388 443285727 920488409 960186369 985682861 929303231 984049934 63723400 330248117 559993896 822426299 72199877 676506545 116090756 424608037 849722380 965905148 139570263 873126423 762945027 961025513 893681460 901628360 474471938 610946223 474155081 647914107 551191654 820483705 416838632 923095186 920586905 936759921 413807861 979137004 896091027 967094393 598349328 970246590 318862572 649404058 38968579 434534202 606254194 727730649 433091313 614702881 150038198 784389836 238277894 739509014 216686878 780562492 562491250 868962237 904612294 930164111 315320966 931812925 965838240 987457928 374300056 684678817 176819598 928924504 97616576 921342067 72211006 491747738 40217151 71296782 234889359 561704841 33932405 760989374 922408770 938702533 359538000 627003488 240040269 863066816 222643877 779210214 315458219 923965583 609184559 689325837 7904966 696533537 303121805 537050591 976001150 995170441 140346812 302700518 164551137 177552192 489123046 977102127 766515436 896606621 322838485 919519527 141726080 695960713 767002771 793283113 184230525 826912050 39047135 229946742 524502881 949506907 605175887 684219138 617205978 879631144 583959147 756437700 724580688 863661639 526862745 958358093 758048839 899723905 533297919 650624906 605962076 878735438 630430242 706353411 152860091 640920901 462950478 749094453 149824063 507928665 165429469 372341173 624091285 627492043 838795724 905779803 286942045 973968373 951892555 959123357 310234054 315795913 407805160 891374257 940372029 997610890 166898699 277370141 850377662 899816782 794561339 811565915 319402840 542467228 719699387 752530153 624689994 815609243 639305527 717579839 404889487 676062842 220202968 290865909 876744832 972690798 716278116 939963034 152828706 524499371 407868750 669390947 23437638 548355856 586876452 891678832 498085709 569893096 156274798 926684082 20173723 463432779 603737988 954688832 178673816 185884656 204570198 791185348 712905134 844932000 11291866 152557129 283030100 397834413 330333818 699144081 2246273 169227594 686759731 760514700 1420438 498721116 539807394 827142409 161851551 795593522 57727982 312795042 573149326 899260121 84481257 925097177 658872166 883970503 973132563 996702013 15413751 636232653 409538650 464211280 343598179 540140530 571165784 576287694 709831790 945019082 448437666 568258622 535836828 772249155 9948097 982208156 482472321 677082118 620438724 787529176 611136633 864900566 305727269 812158369 905970865 986702542 653625222 852877037 458732784 688884599 514997023 558804901 643080834 954405419 905404299 992873215 255378772 404279775 887218778 999226108 200672028 501205165 537974452 584317756 365153562 466587875 835656912 998493400 779151285 860302474 806067815 857085847 406956304 570575706 725973487 959632704 443756733 853373931 337057264 923223400 236940095 752073234 857328765 998924206 832653293 877718740 984596843 987495871 339853272 586520593 447863864 820225616 579971459 665523496 523149986 768488948 967652906 998075136 671314259 961005091 397290064 414631746 219352173 981708112 802365321 926753326 807772759 914206048 786188801 930981559 485625366 655285038 237184499 683929503 979283740 980725595 351273888 487806737 719916460 768686474 686269433 830600118 948945756 965431165 605200413 817028679 469173263 663338285 760166666 798089067 955951690 980232852 64399672 674323145 48080883 560509701 571587568 965406858 543989871 613866161 310861084 744974347 99770373 463300210 231549352 422750350 307718078 722310908 507348382 841619878 491558724 734672870 752725905 958343734 127724390 378320665 416127736 870295331 423366423 834178453 977541404 988266954 566515949 940970942 985509631 992343837 626825910 890263113 128961611 704330344 756106806 829641858 561396770 798558666 540968695 741818270 826534774 851121064 932651260 941330547 487194316 694796662 787832437 866831332 572022704 687725059 320496420 593183509 1140350 646292677 717019123 936942950 358055474 495738700 52936024 902576502 585242852 647292363 74295095 503047455 624284496 684969273 412683497 778905547 652041970 761338703 79144132 267676876 453762788 882063270 20656297 742806300 704983360 998850202 539587732 643179357 428663588 603978036 940530189 984340239 221534150 623341775 296739305 351785040 290243598 317008614 631662384 952813485 15498463 665955139 429503781 483622790 323546790 718485297 46485716 279946316 907431799 934318372 553922097 956141132 791894096 800702440 186599349 778396176 374229273 983211691 705360180 996593699 636939313 679095693 430107429 742741602 200166734 548514864 587336557 906946458 491096283 675996553 921319996 956682751 335150540 678585512 938302599 956880388 328225493 464612668 88455030 547510407 861261747 968080396 269665633 880319584 757781704 877391082 137891245 447327975 581793063 929754180 85060352 806765878 267637171 774833680 291314785 619522641 517944663 903004120 468033754 826851483 980870213 993579099 447879182 613249784 399611385 802585406 169237659 632832831 166166622 409132228 52127157 808760592 545395451 548562701 91455867 835972025 629412236 725620284 103953408 548017615 647641876 771869747 604879505 997699700 814427068 942104024 540619137 812905331 314902209 479330710 346340278 956125603 359736940 361767319 203731107 571057390 530716674 973055034 278209521 907589532 370867258 642864256 457114961 594944786 606506810 897779944 874656577 895071037 620181666 836308364 448904021 771871157 398198797 832616203 936484520 973144892 800171360 881117000 847812465 893917007 825261490 957606174 707923645 976480306 225936167 842802640 764299302 853179501 605066714 683536847 149055295 214814411 527814497 640290034 149813261 423123520 373527300 385563875 289500884 566837431 419832764 490460069 777439467 851603535 741402755 773859358 521812701 772942202 308138765 488888877 765792771 868509665 222714397 474612167 138859809 825213021 457821835 962161890 401725308 424063916 63191783 200286471 522944770 860579410 571393130 722241891 208999740 475527039 583191256 784569538 164448941 673337633 269220500 974407114 320324502 474809275 465554173 639798645 523576971 995507622 982718621 983128882 114826344 313580691 662651082 969523995 172292010 986739542 542777064 734703827 471802721 502736142 641582420 782141060 68077851 88071792 738125662 788491315 758560926 799379108 73219541 837590506 547141247 780473816 446549807 734803588 255414683 579390297 87554361 670348723 101445998 221133982 291678847 932320964 93391652 404087161 618788521 950117132 143380106 220228919 407789196 880449445 999063235 999429286 389772437 874441567 710417655 778495588 878619885 913862306 567913450 981981534 848873308 895750022 287988987 446269726 610620728 790014653 674625254 732048700 80628506 731727379 403186728 451016877 949435087 975813084 870969038 920719780 878987118 900433264 319031352 886353683 356228291 763955754 636432360 673810566 648290626 681043140 383753905 657958615 51002266 742620633 972856878 984027008 258168237 742431251 753337062 853549355 516175420 635469938 465707244 553249911 362165286 380234307 274861951 637257297 13984345 953386643 140371622 650306399 545433660 651338652 941136133 980187885 351251334 471029180 646134274 698536761 46681635 784816003 628963275 937433666 735820935 878039819 188485602 674037383 558448992 913273727 128708489 981796954 526603414 656589410 522160991 589798176 901133443 970799307 52845766 453391737 627462300 687782469 172120260 879849952 226370813 481531854 96083879 174524155 366125117 653309811 292299276 316692148 558303586 886960772 212708451 541362404 823167919 904360115 454989710 822833752 920351926 977828635 720225755 890418157 239055984 383810105 179510411 567642603 411940102 977206554 480742139 712697177 445192446 750816424 543299777 753959073 912011967 946939940 613210483 684059653 243676615 708752355 146446030 268819894 866060930 934312802 606979039 745054185 150881298 560736975 271643550 660341598 685221786 812024117 531729116 937720711 449094736 942293213 373940965 500126336 181504024 217630055 226715272 784938379 268694204 279322922 584411373 656990233 491166357 872331091 688333273 742520197 512474191 857749023 346486052 555891265 86101657 440902184 681602106 724856412 806932578 938494782 501667719 904007911 413003482 617539906 294064342 356114585 283652722 857526977 260825515 304437908 250403432 826061508 47538077 496686218 409928237 880764070 93581136 390034051 523716639 830830372 183144659 487659695 928428904 944129859 329955894 915021035 894087182 941798766 926334917 987545574 919193905 963975005 633298947 694339591 18271128 951092853 669263025 882235027 140816816 574389420 198507691 716375037 780616382 941464637 140669792 939716838 205138315 316264818 592388691 811547159 288940079 414428174 601881579 687076434 462228702 676663223 96154557 848760980 442968798 567451806 449257825 847438214 423151214 750200002 624947480 725866828 32545309 329177969 885059024 947643411 936555207 963432146 906365768 947860066 825873985 875558611 424547301 663627708 8869942 251081010 781311425 861285442 133814870 865494833 113504303 644405904 962833746 991688228 929618431 952699452 355010146 498028311 334438796 425673895 694394019 734674967 639599964 788846609 317148446 444848398 987248918 998049995 601780081 886273512 522525409 601977858 496526075 891062748 995174392 997725981 638533278 801699845 726148572 919894087 141858036 385539995 14772898 126714151 722873377 757863318 613202305 680724309 889639511 935851961 657084767 671966168 325472818 930993133 501848469 618641657 298329154 802343319 35113663 796134625 883564672 927701866 169162968 795241867 259445535 587160513 264910147 686459691 949017515 951955421 344459185 387544616 900511037 923076977 419305425 733183981 883054672 962691468 895733660 950558743 451712751 931493142 807048602 880021876 123914392 989560926 493576407 530304694 748738325 766733648 493461984 900704665 296478594 367850655 972116937 988881795 719908824 905146275 647630284 657065397 555361574 581635562 46540215 413186423 519289733 577804542 214295183 884210272 325437510 404082999 954822687 988332403 65588080 887260329 490470867 608621586 850535672 914733708 575231611 785597374 804305349 808230679 222346993 536462317 690819808 824340856 549177710 613221446 86189936 240815641 89766916 149612726 253221639 547615891 986699808 995087625 770311857 980405921 201287185 247110202 61170564 726778717 280982082 315643979 361473413 686280423 43956010 851583721 271439216 992350869 110704546 318506780 752730969 848567779 441473426 948941442 59530911 524710097 202124576 574851182 515686760 860500531 830293583 869732110 500044079 540154867 840939465 954153024 803491234 809881380 263105410 524184783 6817260 918062987 85143763 190857401 8522094 874644703 541357052 816240521 693882989 701830879 241821250 882343037 761787797 770405981 342522673 732625656 694030534 755758606 176778416 452081581 123486974 496143495 376018858 876064729 460002093 650273681 840477379 982856780 18155628 256613468 524659331 904736987 344283927 374044027 795502865 989472732 348414800 984026150 274441987 537018612 399908191 773487345 144978888 896252453 762460173 832528747 754859177 798950696 104706706 305218110 457690843 809164661 343927148 829055268 912752760 947811545 940665893 950970218 735130526 896275947 80185973 440682857 849716387 971836902 39366116 185287749 581159705 812789064 202249511 874265361 815083671 818339307 147844886 490183658 682053259 885904475 106168779 336875955 920696226 948478762 140496318 849857559 320598529 355850008 58943482 133374734 824681639 892082568 149634304 654506788 142922307 944150186 2531505 814232829 823604447 824394906 47635617 502377874 26652750 878546447 900710789 961141858 239805730 720526501 609105101 964413511 291041435 777107501 467936867 860655558 28269604 366493406 515276114 519616801 502664761 665292422 112722047 706328277 253665698 618034486 125951972 363217695 472510677 882531337 365675179 922878158 677272192 790582316 613419989 687239073 444795981 608271677 558730804 880282162 968963778 999611386 862970085 963290194 61327020 420760981 266495269 615472604 291621362 378802530 816924393 963555424 199151280 690589059 73041149 814288358 779312727 856490104 435317140 864973055 895151756 968387902 117387480 736105436 107725205 271834862 490535277 516538184 569317926 580827220 506065144 659673001 295182019 492410050 58377145 749041915 589732996 615953558 497195681 725955666 825856065 991055577 577578977 658793645 555693453 910274575 443115872 600739157 67006681 714298001 221224706 598594916 413547116 930274705 640104112 687690849 879017339 940944533 955907807 984437884 661525886 977901012 412031840 600052351 483458059 862024663 541059092 786128602 420414183 537969044 809083348 915142020 994561251 998896631 684144372 778347148 172527954 403606575 28436366 95179826 249053261 497157962 379067437 780118300 379361913 429732427 118786510 120928047 966036587 977504383 277078943 856020382 716420981 824616093 791899323 868673360 459526796 936987486 215112536 604834392 812156228 980430578 656241495 785220274 207016468 587187754 59019268 532495571 574530119 854079095 44868589 934541970 493911486 849201518 642369934 726355224 101851373 355363803 286014168 572147128 825018581 920628970 89369635 237316713 921465795 999355889 274171422 750002142 954528802 965152457 50578860 665126445 604474346 847453221 54934766 177262174 621107246 960964692 742761672 966110017 619174364 919479077 414805131 889128457 757232872 969811138 101777417 626102895 947570868 987965772 484479902 914942898 861417918 990277608 942829717 999898080 245105804 990957226 878409424 992116198 246155548 698271441 738589737 956240657 680436393 973512337 487981857 834451211 266794266 766601121 564245081 800696922 321064955 606557703 125845165 441553802 184049238 517797380 813239048 992998491 108994849 605048324 951810253 958589702 122121069 166254148 676441789 843476901 669566890 785323970 226187537 940369440 881289062 891195576 439258869 994941178 153502307 189246529 980671183 985250589 952116473 968915285 7598969 55144662 496409079 799985042 929349 257344419 840788505 939875196 526525933 827259920 535670820 670424302 533000789 672778386 384936012 791076113 705104466 960141468 781776719 810641771 332013555 674019796 98777165 250382458 659064671 824794299 269929595 789243863 849799142 872480341 959680393 968241838 710450057 899684571 211995617 334617620 396850516 981040673 977878061 982227906 983823449 984099142 529278952 588435017 722463575 782196879 903207482 964840622 359650747 399750043 730631878 746516763 891008432 946452756 426354753 495429035 962631638 964333494 816541883 913255548 363404838 773585017 185770136 246899367 906263990 979858157 801945859 871222766 111577668 903470215 135612329 474934672 891600227 976338387 780504840 901709786 735611856 901633884 837718759 867670131 945341792 982222673 91887822 172724197 885433216 990589592 394481818 634631906 470698130 669434543 913023512 935434583 796789476 825132587 639849362 801599404 439982587 491794843 424193089 975250859 148833767 677532935 588974710 929883205 632520082 963041284 119351872 210158637 907957971 936963538 665003736 932799934 438657974 714376316 189151612 235672667 473681947 661960073 713391211 725903862 234517347 916674022 905670573 965881497 757038981 985418605 855113313 943130984 556852364 959217408 618132886 669550862 593792875 833099087 642660772 988039972 817067867 948370602 407545850 739466634 930011878 998097520 237377338 795199373 801773594 936466570 141093269 725060726 75269462 951463038 451097028 462007159 927737859 947346479 598955843 746649821 415124927 561493064 847810896 978360283 47126360 226582353 307366509 549413346 947884199 952120629 108752053 686601894 842739416 846356984 989752553 991981517 941001340 957582020 31613049 688001894 391055194 410712276 883992633 896611474 401821668 445061554 152469655 184124439 677519460 751742803 586495663 734377389 144604158 373847233 393276519 755538754 816140430 852072179 55345146 527770424 668012751 777050370 18996474 377201110 835508715 909704948 75153098 497825267 513330051 786382286 139136354 695391050 745253959 846010697 399345400 805990633 658014797 689546306 671511604 781657665 734980652 913296525 996159923 997075167 545977081 981723497 925425281 947491037 804107689 889012397 510103698 818854098 266975672 311302230 827155400 998392452 516304524 893249906 278530547 340662679 398583578 493139592 992285690 998042122 16812638 955438886 557576532 691571928 445134388 728295665 555348315 931833805 755481888 961782921 876115779 902904577 594283034 906464316 987648526 998406036 152554699 888015430 855714289 998572629 166677248 412711972 5725156 53372517 584696058 597183566 822794900 848769396 986696975 992100643 229465692 870657274 827964566 853903302 892501908 935248150 576132014 585264114 409087172 834062526 481608548 730804940 137123602 789424096 961042210 981462851 894631681 932050089 780782354 859729056 14974720 815276191 667136071 717904803 403954073 952657778 807412287 834450631 84196238 297246999 528972718 599027784 532082677 863074598 316264014 535099302 865942181 930426648 406839046 532915301 647736200 728785573 382518824 673242447 94572136 600016419 50796017 305422724 991263725 993298863 995003762 995637629 710384820 991195669 815540820 963691309 947137787 998846817 129861613 400385004 965568177 975859565 990000518 997556481 105571416 567823282 426069586 764617566 753636179 811111069 898335102 921425515 840217057 862056785 216451549 554657175 955690298 959009102 590375521 836373373 870397536 993178816 684232812 717057870 563667490 806020940 174933677 841384809 790948826 951627720 81900447 426044691 986695255 989054448 901094119 971515037 489870314 579787590 546876367 764519816 681473023 986840637 373253241 625066597 307039038 538780843 701338177 718591922 654109529 893285256 137979498 669347743 8485778 585042621 602093567 698268866 632297232 800857923 242061116 405034630 695105971 808099542 925458396 930338273 30913712 836330726 48743185 688076218 904471511 979239680 705875696 820438750 716724423 918659067 588898855 921985724 319196386 480046832 265456910 780079243 222670182 838692032 889039058 927548735 173008411 358325688 337962905 892193938 283962968 435658059 568512915 864823402 107963980 708742316 943746849 969152776 857350055 906572631 840742114 866614146 243446978 818505452 760388881 852103524 693460168 896734176 465619129 570918568 755303754 887674424 908676789 997908450 15887640 27099162 661508504 770054621 381692613 867765711 891769785 995526419 984162731 989917777 498765993 673859816 326226454 569403627 321872783 646392849 1633253 611784377 303494677 677273705 101470996 520572296 150106535 286367271 569688499 633696161 429578336 744095954 185286679 409267477 238509493 789073310 608017055 724405893 893470261 910574323 792711364 822273076 430285501 466728969 75589749 543075355 884846607 969900014 608266934 663077202 409945480 647570901 114487190 537552681 187223386 254979407 155186142 309900802 60905227 448940400 944264413 975933441 874861304 954536571 811045393 969304578 972187080 977462537 706479292 766236985 118305698 613088901 880979325 896568479 339632318 775889283 111487516 593370130 476071698 683713293 207045728 356987989 406196550 445460161 404710916 550762084 627896346 796314399 234241241 928890083 535311596 927239688 681269048 777743339 86516640 618913651 702691249 706598758 450490864 640998118 203179155 276669635 907259159 979604193 347449933 626178012 807263072 834959739 89013699 273869883 8501796 172865832 375586511 690384337 94293225 385609406 622777941 776706093 539104333 811498970 453618252 664092245 81700352 620763666 900099740 944157161 919487449 978969918 298534938 526691456 482519442 619234773 107455639 251612859 939783876 947316181 895328892 943014196 676945370 843338986 187151272 841243292 128300404 917568603 482228308 831959623 9596709 124720277 476904283 770697660 812385005 928168258 922314872 944851561 713596396 746095213 220195918 874804376 602990890 847543338 485362799 836683252 865584234 959577110 127840373 485114491 710666463 745014127 187727252 643647480 538657479 742092006 482241504 869429764 188540091 423167933 531173098 790571604 175007400 512240946 22460376 25775226 974508065 988134288 917840077 992368641 587038199 982269428 492052989 656664046 666008374 753880259 912918119 989059989 563201514 609040784 841364653 891541830 87000971 143776947 391356859 753790665 810960777 833742474 989425991 993346003 244178730 743264288 914972306 924430088 871204039 888920674 192393339 972857306 32096820 795834280 260409692 775104061 395322144 606274261 347096689 825236617 198925311 675512331 841155417 881089474 297026633 747418828 534672452 967103079 476314062 936489508 619831082 756634665 860050037 862532617 635011556 746073999 334333773 601979961 706925830 933343307 418563344 806390268 196571072 911598242 666129140 798385840 790704824 926787613 441004561 911843026 793462966 886099677 344103945 700831773 113961529 629309861 474338241 872014920 673991368 783782262 693984273 830154796 801458614 899804577 526614334 768486014 416114114 622152815 131155951 242799966 443726325 552225807 988078687 997997323 149382592 746462117 104700639 561593348 400347835 970552110 632988221 758154948 133689418 806312771 283800404 477793581 547771150 735740095 698702686 776410463 195587471 274890602 55267770 55800732 668354404 970851890 403440463 567697679 642281150 726019884 405522670 806896815 906545643 995201648 795561842 973210100 548691021 919598927 926214413 984013702 969385821 991247799 120743216 540356422 529304071 636124762 779375263 838305754 120567809 340005521 710969271 748095839 451059983 774749913 39920486 470682629 954120083 999653035 774084985 970528090 900518242 908793214 402954797 627990704 850621937 852783329 24041148 950699905 388816 140682439 41150935 656284676 244058563 843963897 337632650 567500520 540740344 721018155 268594189 313105457 506507988 809960685 295330001 958349787 609600925 809814888 881805556 954879390 342763600 605503949 916574912 916960153 903456926 950467901 982866736 992265359 293710906 970012621 30847611 356048476 815130602 861910183 31465265 630078278 101526647 478414341 25686170 950774464 317760556 501537568 47493635 951927719 20984013 660849923 122604990 914406979 953825900 968722360 182811137 587426551 544352615 765802189 407499874 861271270 242518308 604904480 797980088 928837385 250327343 903115107 683282674 781294876 10876676 763403449 301236586 882641515 940726831 957946057 754832274 826546050 266341023 762447502 135049400 544023289 756250200 853657200 906927462 922728493 544893061 879886219 76275837 317577176 991543534 995482484 21742926 854092845 673561984 870648320 474190954 930382449 365193077 805711675 709906494 766204814 166423257 683729597 491117585 760930816 123601084 329147346 342995903 991304301 426765553 693541352 455792304 936912530 61792532 599378344 301233600 784786586 543125085 865061589 368573866 614835147 67586240 277782065 279976965 609298816 662086052 959937697 897916535 977765432 591876786 692443698 562374205 774928304 955829726 978643872 894127063 900846929 131971204 857684753 302654907 321057103 554189119 771955094 907177167 932307746 650306250 739734392 16156379 273141586 330303851 453951494 344271465 557578548 707699952 872919224 189613860 766385550 944786880 976803111 763402296 833395373 539881307 970971772 36208380 209254828 665959933 708628053 531576485 882768977 456122638 680054017 807640909 898176159 162750386 549216501 808657133 993536651 436102184 808138478 419339528 544091858 590478471 648574873 686650725 916808834 885707638 897143426 757389738 894229425 952596149 990086308 141070024 178585006 516702045 927088915 526887185 681765785 271233702 814559665 640711406 977596055 102285525 597300653 691889120 925153130 512729682 693373525 318380425 631906530 782647757 867973208 620402969 794220586 823883972 832604581 465650520 570455438 295203747 930685133 963582611 983500172 963787624 989069441 964051922 984724270 110320995 125171292 35194163 803406538 773181856 917089458 830198119 848216355 483972677 774111797 462858782 746036972 894719227 896955009 689354309 854121727 253604079 888996983 89908179 721658311 487245477 523914718 944272748 971423494 175425584 483248701 55692365 669895077 885177711 937538778 689861671 912295745 311985018 688585362 232181829 441650135 861834021 868715867 145991921 163759959 688888075 902938754 698224043 902657734 739102098 801942049 242189708 699730883 391706692 704540589 914813138 984795479 391781212 754796612 578379426 872081375 993105302 993353876 497812777 990339876 207125799 676996884 669721535 846774481 124492020 945833777 682790732 841806212 53031689 974807277 476608037 912110972 347546795 982582061 646740127 954998781 183392773 866558709 157636339 382254666 570489244 778538401 990029032 996055282 56672741 659798091 858357047 921832500 144716150 789867036 231408656 761544020 594759111 800939516 917015182 985281009 745283193 968773561 225403970 424080862 798809858 867322890 274201913 400637230 745939395 818373619 599681941 775161206 615253390 809248975 989440905 999624566 427932369 624979739 695218805 721836353 217514742 879301816 641253321 798839850 255935510 299878022 737288653 879435672 437920922 686527173 931129347 979054828 656703608 743172433 592938934 693978720 789283676 911960315 417789027 561822614 759634176 785225708 976414929 985698979 385049850 865298746 387309719 821165301 45966211 83278554 681386207 996972702 262525481 284814275 264667664 786197748 194190138 620459763 913253933 922355335 300738704 969517692 171838490 471010911 272108322 329871236 406923485 678383593 159308405 588255696 168560930 433700329 872835203 908746271 948286159 975177039 29242558 319333982 166352143 987048338 956719689 961689010 475135341 805556441 160783347 889722107 364068352 499548874 344596501 754206750 85839931 267526255 99005791 662223774 350547129 380839205 279840335 900895532 720325254 813666026 586643516 956611094 781644466 782210309 554961015 638964918 352099778 792507150 633130430 827731501 508817482 573462455 568875348 832485953 948019181 972715635 815744768 828339463 521693628 867047414 175575454 720542686 173000549 420090493 824544319 998284015 418129795 490380689 287036989 473843224 319910772 367138461 983132460 988717717 442680818 793871577 618759500 942664179 885356877 997569446 643267752 994570432 817762367 965604891 398702907 920442687 507066609 907441295 720357768 901646841 964791460 982425211 428133855 832110317 826668919 889967727 64813422 929836273 325059903 878608229 296997389 520360468 396237153 928226233 70544987 89322268 308339435 321734580 54829134 226851726 641194779 883170062 376436394 992280347 94530049 393042081 255372920 356158213 70672075 986782132 56375752 713538412 905918619 948698597 598489273 984657114 409767445 512885752 894210900 978449978 427820100 814162109 385661080 997178506 332748495 505977287 806077075 940274221 443566079 468251291 688394523 856473319 422437601 878629485 542651980 740624537 658660236 778610436 107778379 887216255 374285102 393626336 23787434 722645009 202267037 765597911 132857485 396069990 725026474 743913131 247940923 305016267 422954249 598226377 239737102 480404840 474275963 749644037 945837547 957904279 465465990 951032369 378088582 994035448 272695166 390110677 790626590 846486142 416441106 440003735 485116 471479067 346108234 443931444 890366266 936336166 354543095 777707743 592136324 761589858 268231708 396213595 731656950 998483334 740147199 942417821 717548466 912012306 744042219 911653004 547159964 576652930 944671778 978673834 164248116 670460787 437668269 767371934 630302342 910079092 917057175 937888699 403742904 995461413 55344716 134744087 303485719 583954411 403670839 469252839 971497970 983654884 706058679 862784109 508178609 606239299 631343013 906021474 672757994 950432344 363622288 437706162 277672277 577884693 987304681 997438638 145853563 992135095 869660395 884221754 109792250 581552160 198101313 951795423 208103535 422771300 705330272 928510936 385444965 400346602 530150291 754340515 722059867 992705291 978414838 990754550 444020091 617237705 101749511 614882775 562384435 910803970 775516939 796296117 128910430 182619584 117002335 425093803 735458926 962761796 378398036 842720638 374607445 880820050 514881211 596223279 392598307 561070412 996990484 999106588 922023369 932578100 693679974 856466893 263225906 731057097 983776421 985895905 199843113 581248224 106268996 807229367 399473348 477526881 727573794 794739309 620965254 977566280 685570793 707361172 135893304 843786027 176001683 421490379 560555661 941074761 786405701 897494266 488069768 830990021 657841012 857800324 134082924 724922826 273390172 331119557 144208653 538036863 937266018 940518662 852192632 896258262 699982151 939235328 251345341 259793721 367231066 617159399 831682941 858271183 796441383 811948738 409123359 760226662 479691171 746954429 791497398 917543322 964261140 979631763 132782697 621712150 122570342 242981007 275244107 663727339 278159470 855130341 303285787 753570837 162437790 866830610 630873837 908256489 845501977 883419260 115015772 837221526 333628926 531096550 938821625 999049076 441877677 658269206 454035981 955154404 374738103 505618963 420911187 950126321 218787007 722017454 49159315 969961272 870809461 939073821 879864781 912186643 226674427 833625781 745090618 882160619 563827603 674171153 620653474 862771908 336353601 577414174 688190582 961646624 635200409 702318387 867314632 904589731 716617621 865135842 701296260 921074070 288339095 881401606 388790547 833810067 402314602 571614618 198244735 545855987 172503255 273236238 962270519 962638356 891234019 985069215 491622659 752073076 195302978 611558914 823351076 880096086 60615038 109459799 748287828 989023504 486140230 491882268 495758527 589242884 156644049 809650410 751730863 854771931 532955662 656299021 240756981 595366068 510579690 602601523 575935347 987374770 372835569 840095111 278455601 771688126 70279022 969326165 530324077 678965402 823608651 998211626 28259817 578056992 908263872 987123612 886508517 945867884 489455362 600142412 564813846 701438681 495217365 597106042 113478237 520325023 203307258 282906548 79920826 960327334 288568365 376902992 337858485 582151065 45327638 702180936 31920584 501309986 402875556 882833628 631717133 883538317 950746406 996827996 972331804 995011941 350591423 982781943 672192305 788523444 789883055 923305716 10335331 110403222 916702642 989398449 870109410 879704026 121692468 288866293 428620875 694872588 815537271 898775083 959738785 987753407 778394504 935405606 993312641 998140914 407924112 539395206 275676705 817196809 986404181 989523195 534648082 557879504 836446392 935978864 686498727 860264086 52806016 798898488 794130383 810230344 103224171 519120981 949915098 968085383 45811492 162944623 669342727 936501428 653669813 888966900 161754817 738278415 638904004 884270999 876015149 977113113 932072366 957491889 16426254 67809836 286471147 785002210 288457787 982625907 820925103 930150948 965082378 987891042 729093331 809702381 515946462 620597772 510178466 816246367 261115038 269207184 505962594 884388382 515240799 722910318 312360378 742503527 571640853 931682529 512118806 595005981 415276022 840116011 635775401 806109810 759392760 866120728 755797833 922694760 413141434 536280880 449749759 858029466 625154301 830962206 172340618 768106062 57915931 686183503 622823160 787370637 982280783 985742766 888460335 892318714 483856702 985475015 170638690 774694365 896233969 968928060 717888140 820020489 577739556 589539656 184575555 254655354 812295168 960704486 993826298 994264033 365770820 664063934 13497225 730432117 408879195 695509799 848823993 890867767 102853446 382754333 939325481 942676304 131753005 191852879 152126237 208260360 85152361 744107757 288749431 364889758 93977793 455505890 145167684 902808855 367784826 765535475 515434172 702145549 324308264 872105108 899537133 997561830 248732246 492479473 289842784 668095966 635761190 766735791 682632442 704231158 259946520 668919018 423644557 601014966 990009806 996433569 519923268 796199817 958620428 968138198 551918575 879987277 581921746 664763637 393496647 988717984 908667124 996903850 301525083 465454975 934372064 952427538 730643766 873058038 864501847 977861068 484478772 559672349 55007732 60260990 829209278 998405486 375292533 866585239 30661677 677620134 308248810 735870024 756056379 859486747 531775369 649967972 180072194 557649850 438279498 603989864 708755713 784807423 245555362 961644174 351293552 455139244 930669528 962883054 711200381 982120544 861096606 999942752 488190090 883253821 79375252 277643290 999847515 999908840 577666100 656287419 875958294 882700089 193568748 857158400 865460237 944480049 845226746 986292044 591901023 863082126 558170744 920063853 450558690 706583750 789527203 885268745 807359222 942379579 749324730 856222179 249369765 558955837 831759336 882090963 157416449 895675222 498308665 937811523 843533223 947627860 271705449 370761426 458008569 510198206 82675194 99847960 828346191 912287028 472028817 931993459 313031919 810546470 30234322 905319981 20455917 881128660 909840144 911626497 751489912 964512405 106182933 142115565 93426463 899489405 539636525 962214128 169004223 297814314 786241516 897954689 994969167 999124349 284119859 907264201 518449617 572099532 228457689 658769421 371043986 849075879 958387408 988896096 425666671 528193189 585074831 751571636 599692675 813784527 344987915 942787351 762574532 872954786 242718165 981863516 923645422 964691333 91342827 139435510 951837565 994786773 646888351 770328421 866745451 900349116 818034669 888326260 646255229 793967615 654627854 757925554 171187359 433814525 482072123 759694506 700567758 982578467 441468145 735405311 534583308 691716106 273795054 827455300 834810084 948758309 780368729 923539498 274994794 827537683 382463176 804792999 896962108 950862174 335265819 928061177 317838989 657457133 753519869 798136480 779149355 822027949 13546266 156079269 488429691 679107134 259055905 669520350 561416687 631445807 169527307 860236086 90586982 234461479 263448394 403049135 196227090 892522357 664303125 875892244 305148721 896864831 2807105 559579189 231218593 792656736 815239462 852569581 893586246 930609115 622074662 937307075 1003200 870264368 80276507 217537043 382631148 488765401 637935041 788047850 728657997 800713507 50360531 866915774 786832753 901466260 705134951 835784613 336350576 539754158 893394761 933594390 98273166 239068261 863535897 955410075 342382365 504007326 43204475 739993290 958478733 965705658 142861333 952767713 82910894 571206177 64449913 496024408 459861974 936056387 19989911 800164081 682127976 886729400 571875692 876398394 835516745 879830669 284270900 332586461 233555346 293749191 257164710 994059609 85057817 961289776 286003337 322864084 996097160 997861980 609508987 949131766 320276598 936117371 75008940 387275607 348855254 720849161 285448269 286594517 317086931 940873681 767748725 879663254 653506644 908701798 636785865 959105005 973058460 991172972 763247564 985226054 28024318 146359660 605443298 937808946 811891900 939214201 848570607 886203512 87216321 127632664 350542412 751474566 715324074 726788859 58732769 696418801 680002116 755719291 668027461 896481574 518086070 644351825 846157422 955853818 348553122 613100171 878103295 907495510 561368235 910963013 70747151 851732642 823226800 826006700 50198448 500235565 336198967 714284099 979515148 993874502 808829695 996836250 302039978 338145440 734983704 899472767 505341750 885457607 355189739 649187183 981177291 999485164 63366041 820541889 181589127 867858367 505493596 830393417 528559019 846549120 519225379 862687357 12267605 115296962 337060326 854708205 254573835 900739100 882891035 986559227 83223153 566203619 115519843 993953649 525355861 667923490 913533857 977196344 158539608 535125907 738997653 855244974 854329654 982784555 178367262 951775522 224914511 938218007 142058921 346152483 733373065 808795548 290493057 953421740 517647313 902584566 42122082 398663127 844165923 988220552 247581543 598228205 833615971 991241575 914981901 964539810 845788393 894526131 280247331 880964615 91425196 216543005 987871165 995067793 266814283 715391014 685812197 899338236 372643817 812651064 798535811 840775013 223154496 970072964 659528339 733316898 439683405 827124349 609959246 938458761 148881262 736648876 77194769 822520437 42337455 988716393 162523115 468177418 734224132 892698180 273733250 464025968 758298569 802644775 796903390 867142687 726043505 779847327 989744975 991968893 284696247 802697791 114208444 240269112 732569743 939320449 556823395 720679106 580307677 833172760 942071820 962557643 107488340 133112312 252686982 755486789 185725182 214786788 763866726 963859298 294856755 378692611 174575598 842685915 372844159 515983596 234002831 820723107 996651353 998737666 893678792 901974417 600425187 713376643 12449012 165737795 403568828 649697078 881942174 995954448 493932512 863619861 90510677 722781488 570857582 801883916 377883664 691607844 421667179 805374626 647865500 739738790 664937682 705143402 47823578 92910859 777704452 846456427 761631416 998724762 682848228 953734870 443679172 466080022 467377992 757369520 599475064 731668924 451715829 709081612 284317721 471846756 985782368 996889859 287036949 633674516 756366254 909427933 207561044 925250289 396686139 544531603 737834397 978728779 765991367 886017849 837063442 951742598 265127716 529616942 827506457 921908299 130663890 402720360 823954788 989418434 889513576 969661906 286294101 684248511 586777632 988863922 763665754 960955359 847257372 932034250 396810831 571921588 178535238 480401551 739634257 864982456 970226399 987622214 551039208 984387864 145716947 499822806 91105343 651456898 137922636 629462003 977123015 981870563 137982697 531141589 22797245 657588691 785036945 827134052 935398715 945592568 758602348 859725427 665077144 830832298 133519432 512383735 638532845 692989190 724077685 958393439 417352883 546414938 248360083 885411223 665228240 950952515 950580197 955849012 623123515 939414916 587708323 691832207 401304345 986427975 27989313 197722648 600448955 624789269 624959900 927591854 136249637 320287761 364380493 642134241 321779714 651582357 393309281 724139367 397110338 598721551 190544407 583056412 507122079 894109733 679264798 990797779 896191611 993406961 662838497 793857466 17698305 691187929 592178129 963142864 545564674 850460274 466179743 802300117 901340506 901936248 648777964 943598421 864373800 928226435 801196261 877811146 504240275 515452297 529394599 787858005 57428039 839261644 477356094 764711365 464203146 640930212 245915192 897440533 456846734 619725340 298749676 743873631 370963129 398039337 954467444 965118056 223313289 537244319 375285854 673933284 210979215 865783488 723051083 800933652 263606724 938604540 885141935 938228237 707920937 812456564 474408067 856404953 435517438 505641392 756199075 902068076 159499272 847653138 49388376 589338931 232567570 932010177 247936533 721009412 65963570 915475855 537042913 975755451 517420341 564050954 406003849 656788667 292237196 770318852 310297477 606141491 503830633 657122059 402207428 488712082 798941757 965975727 277540967 909463786 945812181 995755884 3800904 39085428 897091383 988443389 918879157 990310170 754884157 975434929 328189649 658734680 339392669 449510875 558878174 654254283 264384195 278686286 101334319 922779228 609585871 755087320 734758785 920252434 519164940 967977983 173170982 739096686 44873480 897329365 731098356 967232772 215111081 734651421 505225904 594863245 232455259 431116709 737021845 803092885 474138887 958838223 694663307 973489346 995181339 997883967 19550101 241233650 706929725 946082538 136635841 761802845 762461869 933574575 778281828 869512693 419640606 608810933 570456372 837609869 367286891 399114105 113681479 660520600 330187340 730613950 43833402 510128242 874877830 961119005 414542814 938276636 714298577 744985803 412360269 763885664 115946765 716504748 29008679 319838468 969199 50138552 388280336 674924897 830754944 892754679 783104995 888727415 327733755 910698269 122758206 436237754 893778242 964440381 352668655 525981288 453092693 550547852 968148917 980084524 370587942 496553147 178260824 477364490 101594527 834998680 905007740 940459751 483169449 704389633 631270764 666954722 218487521 431119693 652044100 903309412 724496143 842765931 886272903 965821584 701089746 982525306 41930299 224280109 719404713 839409630 323543300 373789431 96218680 237768402 22788797 141855013 194111468 572840522 445105505 879475978 476883565 846874619 307173796 856092723 328115650 592329883 716462733 870281573 935876548 991688851 970082073 981125042 56559416 947592356 410752810 810895361 832350697 912191563 343573616 898452868 553040628 853630982 831224926 954903028 78873062 306947680 640403242 711027683 749630566 959147903 156810576 539993412 581680240 896834154 89306657 664859621 428565256 582828827 760707444 918477819 356628993 843129851 613238751 857704785 310886295 970485894 942704550 970936417 764529867 887986880 152564661 413629334 853388718 921566534 991453464 995743656 551652594 862482263 940082388 967931378 90981795 751838566 770906865 974703968 443802786 711712822 601201613 887039674 770960498 783447417 968400313 989076418 109046641 150075712 538178942 758249150 304171045 852003453 918924839 923072529 525474044 543853470 892135062 942502065 707579926 726888777 75399757 749145805 835791641 865835826 109605611 638290399 3820664 421305428 8990300 243184451 449447326 723818540 839804615 895297345 557720984 685660951 837521623 905224128 499213720 733633273 607858050 949692839 466849357 540797805 149558573 172526278 319126325 471385543 511116108 886579783 519346769 785730603 532938478 919235959 688448702 741919092 281478886 647585010 750549753 994339608 370991201 725492101 243210687 629017692 215203951 285108220 112581405 848835058 560352608 958450502 456699345 567545281 503001714 960420200 730464542 987907648 67975499 386289013 234266158 619442825 700992385 832029125 973464831 993168715 386793177 867650508 90557609 577524662 501556087 587504071 317647587 899545131 759565983 847940950 16459844 579210711 126779062 662961138 731324565 810123945 825069109 883984556 3098043 95537027 195766085 936320306 596880543 688971903 626346961 935903432 428337591 713964601 903613797 983125936 413371963 650749858 233675339 919694281 784793767 823021144 907371224 983200379 833236174 985198285 964468230 976488715 250860208 985164244 805405792 945477505 993566270 996346660 105270299 310326004 995239898 997315229 224458555 404142536 673567851 904150551 388560687 709895889 575773425 933320201 546869915 937709607 963882316 995455121 21788512 929744589 902091818 975610626 748563333 866366837 399457309 613126950 445826270 736486710 910184594 970359864 22282350 714588632 974231502 997462205 143007071 689547373 145380688 907707160 280789482 470533752 499425590 941720677 69703250 398954802 916798189 965444786 865950976 978430397 221028729 806743038 274609324 844732232 93453851 162375319 561385788 913147807 545678851 990211010 377125895 854485156 423399297 468915262 588648033 987356674 277870450 401308048 23910325 857746571 931827490 938495131 122985688 157362964 297306972 910216235 864060193 888204088 765784336 893698558 724305026 876374973 972407086 986070800 294852254 807575216 864959495 986729455 422851118 570417067 476445447 631294143 58863101 899700014 533519752 890778683 958863434 980128126 623572953 672802078 449087968 563146559 25536516 532423444 417938971 842809509 721555126 769483378 429874302 723485262 495039202 573000396 948291990 999734276 672351724 778311213 187375203 764912305 933228189 991996566 941889164 947887912 917560465 995145073 162717879 831327311 186482358 188177249 990239084 992810963 793342467 857347846 572959415 729055679 107943705 195152315 7237838 628072062 648344453 788138032 788659662 842675078 30039053 366276142 927545242 953801573 357277215 543939556 979715749 996592157 510255653 579185169 414239105 869508396 495142547 827224095 54376764 200653065 101808404 344114590 605565538 631972982 202568988 520613235 568361853 711704457 890841647 955976987 789475958 857890436 384963932 872018671 906815226 953685784 608995558 653346462 287589472 926641125 967670368 981674502 722866731 751280359 225849347 828911906 848544855 960490926 635641534 689444756 649099312 669008025 587741449 678718178 189224458 676977200 100500085 266944720 56428504 203469294 58617359 727495501 981113450 993346802 606687186 699633240 438306646 757493685 820927307 985179349 421559965 993398382 200566846 472334514 220477854 464339384 372428752 412096691 524228861 652812097 992912595 997108587 76729580 615262536 152183166 435355744 541900472 673385686 380939831 598956155 303230199 677326827 167906183 727063624 725872792 952437398 699165745 751947944 386084694 471684179 610953895 698478413 123131813 157412844 456955343 731434629 946740075 980072651 161697908 774311973 437421683 681400085 646397367 750016658 935942917 957597469 666225735 860140389 319354799 694533113 938471527 993787924 600796554 789951510 749956856 854165784 574684152 756358246 87940725 840593378 446818145 763111228 506418464 697431647 113476603 854446770 910720297 956558970 398346538 737155698 889241244 904012061 540686629 578367858 766691259 956281056 19150165 672234869 783494360 854811324 637514406 991953826 36147196 150935860 55236236 771101522 887127350 995483775 716799539 829289663 65473568 188026350 278222397 856509379 985177275 994205538 172327015 530187150 934347690 968185563 235479683 613339205 980870552 995987272 500703302 699046254 291282448 510849913 54808934 121448233 553577883 615481590 967619011 975746879 352716692 768548592 34853162 908549926 611145598 646444760 614892022 738446860 710821831 816341734 654493991 803396151 823626193 858819044 2102422 968760648 49734176 74254080 14716987 266055627 421543879 906660809 844256326 890186037 532473223 847360972 275909428 497719640 733765958 921038662 480623099 766546833 433386778 620122087 889464914 965097382 26001014 369533864 419709435 680926822 100287912 250162040 151483286 989549051 213229995 404695729 383405950 934434217 213100273 869396889 129654936 394430399 949109600 960932994 873120627 972814887 621997440 873341890 83533965 597279473 956397225 975063352 627109175 941317643 373426988 805692159 107497056 601286905 685166738 725880566 981943819 988527562 738100215 811409413 235694682 502044215 577911038 642043155 581194201 930210811 176610322 761564738 611496185 810201219 891755296 937930895 117474590 209581358 238255624 584590452 611054752 619574751 54496717 126180546 595092631 668010883 197611486 973789722 792183981 817084670 714726305 981211365 295983090 869908499 445545977 655434986 93953284 622157083 885573440 981795014 947739666 992874249 706205261 714960420 158693827 207302994 256417800 419330354 587929471 834740985 469503910 719337582 289725626 431077942 282921115 691905834 452398971 827223839 473341634 930555522 311164109 610303946 964663695 980711274 123155102 307244377 717870173 731985225 944883462 946694838 910529626 942223885 260600752 453957304 714829067 990397467 793497706 869184560 453716144 996665766 873024390 952844725 402613391 542511789 54844304 745104665 153625018 460813685 766353644 834836433 137869144 275836822 380336290 888950827 856189238 933706521 851643699 879071741 392838876 588429594 44821274 842458322 458323927 552013512 660774223 833570189 17929681 771256484 645711909 898343050 619195100 974222185 386240319 556555971 310843893 992393273 339036526 416243437 269564090 951225350 4779430 73522852 469979221 878669459 407507773 772528188 253548517 971244662 81138593 182090472 988514436 989555892 654176956 842265510 592112306 879726980 464017454 658546700 969719741 974846814 88114843 808959772 80378346 249853425 581941553 820293238 458932258 508983886 502829914 686490700 135508294 334877503 751918038 885038198 271992974 441272751 660091909 919466376 676140679 976998575 735401007 781789489 19602164 968112350 336455462 366991444 294792343 524370928 20195250 267384839 625457060 725058156 135322360 754422760 343304696 428375408 427813667 819649978 883536703 917953766 486412499 552408339 801410312 847416080 118525667 350428912 704802109 780647481 599800241 789785273 60157658 393277916 694186050 742813758 284395082 750469868 849446876 976542243 248486264 427337461 310580987 439572042 397342575 459341621 115289001 723558232 297781270 560749176 490888080 711721045 570242284 829498881 302914028 813696847 368389236 796890768 597714765 913811004 151336675 433631182 405179262 516369512 999624277 999712280 647032998 725268740 688519685 743451089 595142291 801189258 825663807 831429688 529569952 857096154 15828339 179443661 587687981 682738419 810149373 832875647 233059904 476379011 578014147 894396112 339721532 912234327 512654668 939105556 401651274 657812608 817571084 847934782 776709328 856164008 431049277 681769185 909688907 955263380 42342040 175876944 455007377 691116924 731245845 802470195 716617641 799300003 336366507 745081261 81401460 599569026 857473099 971874700 183287554 236273192 341566774 637318743 867471108 947056169 856495971 974751707 323901897 545484889 392618255 820591342 112269846 596785711 78594030 557328573 330356279 847805013 354166023 680608201 963569718 992361616 923088087 928688907 81703758 502423406 417384115 664266008 693223431 906961318 933275419 940868771 690450699 891776748 788351885 941772103 388254484 747679229 629875113 724881229 119708640 243809466 257035710 916672189 656048955 867788011 855663265 981797198 146569681 993166400 434416772 939985114 962513700 990141654 547694767 998946901 766715548 865457478 1743653 718585088 818543857 983940682 848858280 977115053 857804516 931125286 195967319 630263088 64709737 262267661 188933504 856344047 648151184 865174716 521027825 611124645 676697424 825237030 649927852 855389942 125340008 286076397 777037780 903045036 287644767 516939612 820032063 962762040 945857128 951736091 986824936 994696149 156488443 560079892 814418848 952613314 147456997 247306230 727813352 928259871 240567574 569491652 965593417 990055617 385870374 448939368 684067564 741419504 639127912 938576857 240593206 250872403 586317601 905339915 732526506 850996278 509675441 639752455 181268684 530395760 584962096 689593575 772936114 896579815 428532508 737125289 748745261 764878488 612816605 757186283 732063589 908923714 750022574 882816771 203768836 963520527 333177416 520593329 684491419 969931984 475789215 552361625 741735592 975977805 835198422 860057334 76640631 840777143 458921867 475341051 89545596 935367196 557619397 915063756 59592829 169322145 421631339 881787186 156362001 332645772 696397505 738089509 360771687 433653220 428617037 669394822 945449677 977200797 376498858 551838036 523507408 810802930 220829276 755811365 368759124 374060970 998243073 999793626 32052933 355319423 171419876 613211911 273769833 414427715 891152708 988535154 440995767 711900805 534253679 990167956 309641555 428779180 676850029 979075723 562992621 652464229 815819971 968366892 942895094 965779936 423238547 437984163 594983853 910298582 743225546 781188947 357582758 572938984 685859371 724202307 414942742 996969161 75548224 149591824 964478483 987517427 200968368 455491660 427232074 750817753 774570131 884262768 699492407 785865977 99335429 453406711 632267760 833274331 215153891 366340986 962696782 969257029 323436007 397670556 985517892 988196408 628741614 630233050 670217813 996978301 938404693 980899444 533709141 850312794 681732436 871895398 330081013 634073046 995858432 996780366 784602573 961675826 76982848 116203185 329406761 384347306 395649587 961087548 927047146 929031568 504002646 785875553 208134198 799122880 163693966 832310306 88663527 549640685 846680818 987282538 593327689 731565799 735721470 816975928 984619062 985042375 484992160 489722075 197994034 535719821 968761948 971681302 60786477 287553404 740491999 810576367 450447826 887623429 274040176 701018924 152184001 390875588 25612758 187653651 329955096 926892667 943691016 983872415 551204351 741089240 303260278 941185211 225583178 880208402 554013885 917443630 560873183 894700517 361485381 879648352 683580749 979612626 721692566 796416635 633268255 718118666 456494928 621236037 274601293 960458493 975033693 980666732 329932624 379860787 470620265 491879361 73401145 325750945 972209856 975642667 509722166 745948917 735386552 908240907 944517319 969762120 113185782 663672597 15322800 137804919 950869739 974108660 156349264 716214136 89123370 635061751 92391352 284271010 1909411 612057025 35395174 883098293 297439101 327183380 527792218 779334333 37421382 378961565 241476716 984855491 962164663 970311753 576678695 895630430 611311242 877057086 34717482 312255268 31250060 101601305 721517132 878219559 875008757 893001156 596734506 805785223 938668015 960434398 163334740 637824788 455316653 911527632 241886635 736331875 36072383 397174205 333226132 613731345 214712459 664463009 719240316 829556027 792070149 909047344 312485312 974650518 943407058 944949780 915486824 921835757 305333405 463152258 877966687 881762162 851214017 862006079 599453212 781973262 120948534 878474268 343487447 773348530 47413645 412798087 885329256 904079123 636064844 744482671 210135779 687819590 351676867 537907509 781836067 786250106 390152542 850101051 66290458 614982332 202076334 752700907 982423153 996585604 829149032 965961254 524547175 980261102 273629049 796674012 375022626 404328939 726394992 848107637 890763271 933301146 163844216 991397165 234787095 266353325 533284287 639386507 644324821 774237499 208703600 738856102 878235998 914914795 802382875 813494217 283914646 986015876 926464164 958398190 121517682 570947410 98468104 890499494 275149777 312659552 247236044 583596039 261351866 493417294 539794139 732309755 804519621 806901878 354676852 707687699 89566669 219868733 460016856 655393023 761485496 791037969 354431902 433488700 963938750 977138771 201267783 733489091 110770629 378299638 64691400 160987701 814894526 878047247 160171101 409158691 887873515 946525956 77443367 773680802 998433101 998455331 626186883 942535359 818095924 977218742 824972018 834856066 690979885 866065151 857910980 937605560 643565159 723537301 857699869 906789950 823554617 964152799 195489535 540016091 874710637 943401276 415822378 763592057 18172085 548296038 92654062 605037238 392247714 988800759 103088460 139729366 787014342 910260516 229566022 324120797 837577682 882809923 751606973 784081923 31682439 285315456 982590472 995050913 42166151 104987699 601087720 771410645 7427117 988173951 460208946 640170325 771226153 889176369 656118131 756166644 234595498 561520879 353893720 958139537 930135201 956538075 700628217 951201755 773984622 830153478 678472145 803258777 452877154 491825566 716127629 937352267 541724175 953022407 567865665 812282907 653672090 750740507 320163835 480732823 547067340 830995939 894177628 945130785 568901776 611376628 609874549 965189765 455403861 785572868 467639140 749195239 340965299 717194302 425023889 962290586 497831294 840700607 320398171 534370260 521952323 619240828 156097973 956931476 999356162 999408247 312716586 901264210 648825920 808593664 770160368 902476442 878575667 946346426 850224131 902005086 665708896 898497115 663237442 957452252 399044917 406062113 802944295 978319719 486361369 782511128 176517743 425335111 487038806 798871600 620627394 781876183 567821891 671622752 981638429 986611653 913976696 951906237 671219465 879700961 655903840 993732034 461620644 889377095 324072151 913054243 716917782 985035953 630784213 869849457 842759608 934777992 234762959 367679557 132409153 965265261 836746408 880531509 42979735 380030649 36370155 654271791 30710457 695052770 52464515 831553407 167880186 943929997 207754180 991815863 107955118 111150027 436825592 797598574 325164738 591425078 963580717 992705462 562232406 948321433 345700139 465367144 372078088 919390757 615964192 693579223 649517456 709482622 153074844 278527767 882610674 886326633 706233948 733263568 825380844 990713541 751638918 770176639 873276288 916374906 138935772 745504843 494326211 934200880 639374172 736189682 627521366 799329648 39581925 696625002 625658186 819361949 330648643 527163646 515313694 701770061 139464229 989847298 1123555 849762105 858485491 863612127 404474238 947644097 618682546 990864359 821340743 890782274 867593120 936678235 965003313 979587150 104414240 453827289 438602783 465109755 397604703 955300432 704359781 733439374 81200197 480190751 773942278 884017532 974579070 999760775 315028983 522531154 106037000 365510608 22459049 97475026 953677854 969503155 918303970 997437991 705663781 771033039 833749320 893877722 752940922 912308075 761649363 935522726 932645539 962745260 662041437 907437038 574398822 937564350 958084681 962736589 601702053 864500536 181222035 535275533 548807944 884480905 675149127 828184417 480255372 782109314 211677588 433860224 558089906 803745568 353762000 974573403 925815189 981531876 378858440 656389602 982658608 999512909 513969010 864080230 898763728 979342547 679265109 886232292 597362537 607870170 179558622 978083655 323097414 976986825 753065339 860957259 964373963 971075951 950030379 988117868 14685276 827832216 370654968 914085834 376872437 442860631 21872967 481530369 834914049 952742815 457478446 975659671 34828759 941771500 889819221 899188181 942753191 991199727 229232378 333971475 949666322 986108966 896970058 910240474 125053655 785455652 144402824 522018334 656311091 808064840 316617830 781427737 933757905 953358183 284446029 448875555 994224080 996167877 804973038 982342063 710236481 946765717 997132119 997875792 193429471 306292065 72189008 73888739 140677816 971131551 360285953 771287372 527626260 696168809 28421213 146366689 176245164 418189339 745404869 919533968 602247820 666566216 902999523 912826556 582836754 642584921 881237155 963081252 228582700 780813180 36926341 864707958 158715577 686358402 10541649 994282570 133225308 404928469 622073275 910260329 357695723 864627467 56504067 606919694 485346439 965063508 63183968 493631528 546358024 923672602 382678823 431325430 361181567 698710542 879201237 900998924 170911565 267717983 935959022 960875344 957519782 982044265 682374095 743510751 417404356 654054841 606087204 937581745 735982487 840022252 158416653 552171298 9807336 238952584 752960463 855726039 606044285 906046530 520989793 857748005 235530918 854187387 428661887 983732030 417645275 725012981 368629076 580143417 251934313 976177151 36456047 360832469 408790619 769147046 704100915 758123193 167452551 391232189 387527407 484281669 598604100 727947653 288697668 975255226 371849322 970522148 447955276 452485824 773196601 911054804 947144404 962148784 322012889 716377805 672691972 884912118 892706367 913098652 858157923 936003370 168484768 569012965 641254734 870051886 823203299 910602248 606250509 645714945 558730562 901738006 411802396 747359750 867800728 898265901 385218812 748634047 633697922 954373910 723335649 963183780 509430857 518970548 40995361 596392187 993707558 994137232 561466804 598256163 46483566 926559272 786363636 894636943 792688355 979851557 80529309 176902263 972765264 992840205 951793292 974778431 222365935 558800912 465280816 859146397 41757931 937734171 849480342 975594013 259508361 817375173 211233297 971264261 602223059 650028311 212688676 733570051 510747964 611764052 173123041 410876278 586698954 794120749 221115215 282432739 27454037 372646632 74531875 322302428 710135758 834851236 826709470 874625586 541636773 623770503 622619938 795935254 688873795 713501604 712704894 780142923 515652707 869573529 784546672 809851725 873717833 961810320 35375597 681677782 654317873 851126794 316964718 417434383 323087897 646580438 491093111 765275935 657823718 810762315 475942188 552516784 630789246 999695799 726707818 994869139 979460036 981151433 82006169 597069876 159776452 479766972 682243217 828123061 295379395 923580366 814394251 980574433 917165381 940417653 463441264 846611074 542425244 544193189 698110533 742643669 605981827 656951843 811153154 892497274 170856967 972697082 86552469 271233812 271708109 541035970 677044090 967001763 115405067 923421063 135347943 853051069 880318302 926178913 54708491 641031001 55216843 520645826 434900536 487314040 450217648 817271558 85755952 311788118 227778972 764799356 351972188 780935732 63696066 158203971 123224544 882345283 189157490 664630312 564538601 952339660 996111511 999833504 923906116 991807839 947779123 950872751 612395170 859631213 744081640 892737307 188620436 397229380 464754377 669037046 10155185 222229163 110824131 413907154 577481986 775681148 583799586 777308677 127419143 913472016 359350744 919206187 360933679 588803053 394387245 490479839 109724116 789713477 603815230 629674303 294871371 932803387 653425211 928645490 497492653 702646386 100559657 416939901 568216960 922423674 312877142 815865117 659569019 839016491 748404830 790664663 549203762 573712296 408112230 659153329 289676663 348823134 19181491 751859818 628749561 639453398 487020152 986097926 659774062 863614808 760765366 882924813 484917748 863958136 374520323 518729853 358675886 645042133 363156101 983404686 201754183 270895999 9511731 417526640 791972089 932678742 975312802 980360743 216662356 269747232 417584627 891702715 852449010 898005940 168330324 825884723 622340271 648773714 101516360 926661172 707600744 777904348 741748930 792056198 246108326 463951228 384852550 825406995 727022712 925545535 646637208 794430931 610048711 981963337 692475292 729409383 393509910 890013625 836819529 902515015 344424600 768116901 820636956 956172790 356813183 711755997 481811957 680878633 483976312 885165067 278982706 518887053 960568489 997687793 263223869 747751898 821246850 939234592 637110863 973351911 290868008 612371431 475526609 971951893 341044021 447947153 227002269 767460072 414220721 942664819 371674542 808340989 331650948 652123214 670974708 885770119 499692944 953028931 722389370 783953722 897146713 942524945 826753800 916351697 551125652 693483704 448164746 508924413 40533413 519151935 506377586 801659528 909258844 928194841 741131454 866531636 757734988 871692074 415770085 523046039 562176163 586155923 888554079 913776761 358109164 869256905 567772309 636611862 276325128 548957504 928824944 973288972 895480478 902545117 251848047 429475893 669592354 971014604 574905917 578336082 129706532 800400688 227345982 485871080 664898020 814465102 390569347 733977763 316838267 899279888 725957425 814126816 471137668 779327113 499808388 951197055 537331848 876336703 258068840 753058735 432723626 860286764 706822521 924786441 707850698 758467950 988864530 995993087 541233145 794149095 368657694 685658390 756939518 880297699 775479180 968788224 978335306 980155795 837662136 955516054 539134942 982868789 449479030 966149134 522972469 578913996 858457620 945027530 555769995 683594577 202824316 417084773 800674980 924374301 575687992 742279648 842770936 886867436 834537553 876513951 711792531 767201825 659199896 818804652 674969188 926837892 417470495 518990794 566163580 917846320 372148248 809064906 903695217 928316053 84500926 588363621 826333220 871359894 673137670 907926681 578873060 833071036 1892935 816211728 926862324 976743991 748381074 906907567 454646245 577843667 737991339 915277223 154804567 841101116 238459939 809800617 12683250 352547538 928361044 962717189 817019868 927047921 607814930 633674145 933341799 954823204 61323256 247182525 640926178 693489932 130313412 636004425 342962259 641037749 24037203 562219579 989056775 994038963 996114744 996826401 84938512 257801038 208780238 855105630 858316957 973401384 621203271 825818136 58497826 969669843 7938212 948707259 306135054 472044249 67940795 592908354 878524240 975920866 19449458 898399852 987431306 990578946 6653657 80565617 498569703 803524334 895350343 927568821 228772101 287532192 182013908 689588984 584402458 720375042 505172950 899516842 579874483 614966973 965153196 967710110 729247140 795779132 779881949 909057852 228905713 618559355 461597641 642751274 674493492 947130752 407637550 598938900 204173864 730292902 561048311 949225689 936572618 953760260 943131283 952231304 768312058 928476214 475632960 914573328 986295028 986390894 420972934 424094348 738165947 800649864 837825711 923565355 68870327 888842048 145478249 259501440 194713680 665008281 55038785 451808310 575000798 883619831 144396727 279762967 338963322 841474396 464616497 950084373 257545152 365374149 223091755 775446822 871268583 907233580 181995698 609069220 987928664 997197538 951481103 975027254 772350153 841972688 541062018 544561302 609993348 763364981 159221989 801362183 379670770 442228028 797492194 962104574 315202918 951198067 966230028 995992040 295152932 397633291 437449733 458367891 952142051 987469367 87770145 367687907 503029688 746119599 889274394 967739834 12448900 20973062 332248742 484045880 304503376 647344280 259786383 282207214 192737257 966603596 342884954 379919423 441777357 771714598 46126837 517017671 869113985 956599867 52272521 965789900 838585063 875902997 800221761 803714281 767680090 771817200 473000421 670077258 171675702 287047749 885192326 955712032 152335325 664189553 668667086 963214965 986422657 995367985 533978201 630041458 102054652 620851842 207378654 342046746 603048926 959789419 446745283 650823985 100287981 902976105 120365771 968974676 375621432 957180595 55529604 537524054 754612919 851237199 62675996 789725270 108156722 876300396 797576993 900549932 683594492 955916105 779704550 844102623 711824280 868927467 631655157 922276202 150199782 487899429 844727464 958406554 653459522 867309498 411294443 816440615 97556527 625619062 536855316 793920963 509731694 636163396 109666227 952300709 102392279 539305243 450967203 702059831 76029631 383968681 13747485 580569890 429128445 445866999 896161700 949491354 15366409 375807439 434355738 877755768 779266053 970219530 270817795 293877494 839392896 892354615 429147213 670351882 923965377 969483300 915860155 929899968 268324009 532991247 572865365 727034218 570779461 871744738 717615588 908871507 316751259 450364255 782690357 805876271 813311038 928467058 478867978 970019560 434346058 504834075 80699667 390809517 908464753 968145557 74832557 488580994 340826006 647992422 313446877 535372417 912615885 962700426 216087736 634880394 752158749 861598402 643245185 878664840 15982625 358681007 266625738 787076952 792670360 909536822 357727464 866458237 901664709 951241864 792918210 948140857 252561441 539023798 697492325 900322697 689823414 891719301 503359089 832500519 615888853 672295317 593934678 799183616 841081551 984932812 622719009 843597326 917043192 921333767 696203932 961742951 141529190 597511112 314103845 655353707 710308420 972573273 658943404 837995495 878331170 948546362 696617818 741353511 504029537 883998699 285868670 920667821 546024863 883631518 530007090 652002985 938042562 955528864 290059543 551102753 927983567 979874159 458930663 476493475 779078256 783612867 317789753 442276525 735161040 882648877 764408549 994898893 751659993 835116379 70991172 888139915 718008096 719805602 401270018 911873054 167948917 319227100 691932596 754117338 96828465 405021188 871004876 894026816 283473880 831754389 727588809 902393403 671153615 998708963 285936034 509014274 36075806 644775741 10690822 112979123 321223412 535878914 267453082 869487224 859961758 872636740 720790421 853542320 841208698 946781121 543953615 928166896 756449110 871515695 81458286 693341972 24207024 39132814 414658599 928468324 768994671 947168303 905840794 962945416 464155213 884293580 305301992 636786994 444354814 920850442 388585425 670565142 535365623 884509715 592002294 664784977 700630747 732849573 829139599 878311952 894616552 998968929 780125130 982959273 576610085 711659760 593544798 723220379 377974066 935708666 10898502 717435889 278573860 335087877 250205424 285199442 853451095 875296306 438903219 746076996 526261298 818247261 62499347 616981490 374825466 376940997 303009259 530401684 273607890 357138131 387773463 791530017 617268303 801866209 775154754 796754411 791594315 976771330 740426703 978506727 676457757 732639815 59410525 520581694 180770058 446218172 918531148 936140386 270810197 687932621 247504508 723711818 733973336 865673216 334559915 731561215 300215227 846572254 437973207 844174831 8554691 168490634 778108367 969419448 478249509 542967527 900797660 985083581 313363822 997433513 284972914 995099146 523024325 977608711 343197644 620987442 466596300 898117812 736117392 819608871 603071913 783741328 26154644 130833192 276615265 813059553 237177468 792714265 811016133 980684943 397715459 525106762 643360115 873929525 294519917 323055379 986640036 999167214 845706724 883233989 221305458 650477474 634128409 852281360 282469700 489921129 162460506 688362276 38714451 809625799 69311307 307177950 551299267 671572342 396670557 954786742 457433912 579580969 616600837 702429026 497096269 958664150 2492449 989754488 114161696 413510704 11298688 293168454 294867609 660963779 543189939 685675314 315780314 658610391 828340955 978081883 130373741 865960541 812861456 830411139 354581653 559126706 133066961 193914600 59826872 832761743 624463513 957547701 871318253 949445613 997552106 999460593 821226212 997569350 64004567 599787549 598109874 599972473 835120797 911815408 819065713 865598087 863382513 894264359 650009404 940531905 496909354 815835258 312900631 949207017 443119438 829739645 762450785 865387613 489903625 794575553 98168593 754900909 457585397 666716662 24877424 756660416 448635949 960767150 902201914 924458857 370390962 397647091 60076688 237757796 463216859 526847432 743078892 743992210 950410617 971830700 205236750 404217989 803315719 851075121 383261707 620095492 968310884 993691306 732875093 960510667 900028542 955125498 580624030 609378036 164926547 397522326 432991017 951992194 535529234 838235897 784673545 958090029 653254831 814057789 777311477 970017809 210038505 478345889 9180098 41719525 384304103 958287773 549795959 648198603 42185626 964774062 823780010 836178338 41383735 758428023 870463822 903605794 349236562 491456819 879127303 921829241 614063649 802910191 71762859 603101386 655429628 893210525 878921009 888982893 709667334 860781583 555058697 641007802 966570020 984729046 595760705 606287500 985347972 990027993 796533621 882082460 419206761 976303842 59166897 553231613 466382016 725211069 865254039 955090749 986514886 994297710 321223692 596470136 866973938 998169622 897339282 933272190 916204446 998800001 544210980 738189635 189138378 932953593 919322950 993075025 612677352 760894352 768764917 780983254 191473690 494983133 900804192 987609187 413025672 830069813 711871184 921234501 535551107 726382080 951562271 962142291 613836671 981450686 483169071 684621271 161435967 651873174 547904804 666899379 660876865 781741925 418450124 856005211 236832797 998148637 498195008 632922929 794132074 969769504 612087984 781617645 325933787 604248792 943788420 982474623 372871172 392290771 260122000 793097009 869626984 985695250 560305177 916782904 206490013 875452626 798363102 840505554 981840605 982465107 742379443 959535204 889310452 976283521 734414811 925373133 514329051 852458767 971663502 992410955 271412749 297041034 695236644 777309295 345059090 917585624 55143430 596169801 938282931 986162067 605035332 898610841 304760872 379371656 664207887 833014944 416844250 902288152 630771440 928886478 862323058 920681343 208979243 789967060 512707686 878232318 916395042 950272742 402563 70400555 213846050 547229660 689198921 718207993 917680579 977810297 798602083 866555703 596832013 979890376 61680313 428109272 964471638 992681303 417003381 778209520 740656103 989850738 515407153 775016911 545236873 705911416 995304129 998245934 64766352 321986628 345283031 739164610 644763590 830634241 71069526 780181853 749109245 844093399 305168702 824977765 392063303 967394902 743338886 809791401 897633535 938549105 973284961 995340450 332903393 566841290 198297705 669052726 360837304 922517263 309470374 637274971 90699709 961502249 18049867 89943653 351894989 571584746 80470458 489033521 554678051 888297650 607238030 666541922 871123831 976715206 235297210 692101911 869733831 959154288 334674138 822847561 584913389 758179527 748256469 845502468 92965175 373357873 732050576 993271206 44789100 199825439 288622924 837378757 685312957 861193227 519912732 983813248 581873434 964206504 959742319 962224614 110860106 977059011 381475877 420536246 962550372 978061037 253464133 452949326 493663606 787776879 518118631 753930587 457236511 850782576 801160498 866066686 122783351 228719744 819502896 923570060 350997727 588517255 263088978 409593717 245509250 489450640 6058328 424558114 748868297 769758464 887689771 909375529 734388967 783832359 636559520 809984096 639253141 925835484 443046125 749084840 409043667 853370536 730152907 824482070 470037722 554672331 117473191 589721529 836036469 985705770 271417842 296596774 915645630 933287037 4283201 262915109 998032899 998202660 864846005 881931791 350998634 766112652 512971312 563238262 890072170 967849544 207636249 940040854 160509681 982074200 784638473 832003744 100413652 889285391 557291520 983359794 890007128 948538567 785478478 964817951 672219874 982814308 759385519 969024275 381736781 771393704 868824492 924061452 261857143 419733397 879527577 937946120 707150500 781725417 306293578 650138513 674519629 752725228 818132065 861419284 518673868 710735800 235669311 895470245 112965412 297825322 847406616 900067571 438155609 940545240 598174501 781746745 513113062 921442871 275798830 930990356 917300581 968107426 885988805 993970132 113875639 198591977 427290971 586557211 298200415 309983317 121616748 225078469 343080836 890152144 61539254 460355443 451578801 947703320 927860083 928868745 142156920 440086976 103576099 393233980 289086271 467867942 511022244 953372395 562481212 768710735 992289117 998488633 425021143 489349843 538285101 591349280 453184717 590398062 294403975 974829919 818308980 960661184 356070737 580540285 354326140 384987908 57301519 100284009 64006441 759877304 111257264 668296055 698406252 836581692 573783530 976398590 575100961 829471810 221478820 853291432 772387989 983132110 649917120 987737640 307965408 929384408 87228989 950790555 66775053 111854530 582465448 606684436 481722735 906309147 202862059 561595080 608946295 911350433 869309528 976424840 779099547 813316963 523106483 914383340 103701717 785897163 936268140 959683793 540709281 581025884 253370103 601904019 125230264 605818296 971418177 999924741 533002467 780066317 595997709 806423409 274796296 826408859 428677866 970045439 91913333 947343270 903923269 947384077 112092993 264218593 709866419 871408608 781737467 858441183 571252487 668559894 369589892 996781850 479192226 680113499 425004233 619612514 816132531 851352223 178802830 712257745 716061640 796595590 727273472 978019159 382286039 726668115 225162043 620095727 661445147 795840382 897176532 989836315 990342034 990857584 220549181 627668857 241530758 963815576 687387260 943965304 637455146 734208501 60610481 309471624 34463212 250003605 379990392 875376169 404358723 604362561 179604461 688057182 350537247 684832740 821909247 871279608 585232545 906890572 975195598 987744232 500955566 614628885 819659334 866414991 321381091 890137365 153142858 739028659 673578490 934774859 799326494 917586704 442968702 936074036 291520393 463485517 880942924 903584978 882538064 988755634 702620359 969353283 874753800 959891152 296078842 623282663 976520338 989360497 759781703 787625891 880718895 959024218 274958911 725773268 325899337 862938303 572664216 866211513 562536607 594744127 427607338 479245238 692167258 699683379 564663036 722702738 829922475 847500512 365851531 994971043 242498568 679137170 5676393 180142908 145763542 732620733 196801875 421000336 887035816 997751324 108710166 689071095 226730053 507690457 173194158 489018661 458745714 627643076 979568731 993347854 924988067 963293608 709510102 877886354 85914081 985297199 956588339 994224794 935520137 995018054 753173441 991652369 942976964 981083477 99160253 306574221 509982608 725491953 279620225 837870477 900830989 904094351 410855327 865933644 777159886 966406591 774890568 928038074 567270873 650269574 104150559 308767763 249391337 802923464 804548583 843878917 105937006 708495659 530888022 615032577 515017920 848511226 537678320 588421694 940833286 949896510 32669879 465739111 944774111 950756347 704433558 924870244 552101473 632561744 990050209 992348369 26342576 785555907 237419886 604377751 416821905 494690299 581669354 955114963 838452435 956266358 928203122 963723055 41277329 749636352 441358222 982908735 444232876 517319946 779492705 807338925 592979456 758326595 106086518 777259218 932647305 994384185 287921518 757839402 819305648 840833887 564573078 801316361 718263627 949473720 364196003 831172444 904350723 914900770 487666280 636322643 713561568 811375493 304862065 840932357 627191200 633368479 592930315 811025018 717688622 745971885 985117455 991160707 422671420 501107730 12480318 999840711 705952766 904293302 72509744 907711049 434977401 980016447 179288122 332264268 244650459 343273631 155998128 416243335 645097500 926125917 412349529 693345851 456286136 934115403 65942598 80344999 36126883 464708224 453024333 945716823 872608835 968774161 825196739 846319808 931446746 947292673 483152231 936655510 168644681 535336291 684267451 746669628 688561219 969575892 289988929 740748842 960289557 969402129 381269948 471863794 412710787 679889434 400916304 450486702 384392924 937051469 413281876 959186956 753945635 815519540 487662388 651298509 751850187 837045562 862989359 887781411 680948075 775627020 7472519 825311646 630519858 972064997 426273983 528572814 701016270 828687023 340458524 497926207 77872579 94755548 755911301 919259187 571164912 927087907 574729905 919098345 296853832 943475242 519239360 701628970 77466222 768606930 797637572 921682527 670920997 874743676 919445104 995255202 14082717 56349147 765779382 800136370 969415061 970492417 423480562 985527617 424732658 671846241 381790305 934443295 810184249 903798313 677080414 991209845 586707667 633095405 248099347 531891086 699309080 918148302 849556118 978532877 776808869 783408259 319086231 368181423 528392967 873628680 779743206 894054206 591995513 690451766 84040395 708441113 949650501 968001088 261491083 814474135 394247038 575515502 796038919 885209060 295849334 566583610 776254825 899854728 539113123 548235457 68076093 485841576 108629191 894291532 92650959 320185374 514612481 973934836 748973060 752503710 831084458 922932170 410748318 555083124 53689138 494318931 124733492 696502533 478394743 724361856 518520580 682008172 34652168 836262890 989742221 996503046 895461571 926235508 148532686 367560983 500977221 601677210 806387917 821077469 480063702 772102725 787394221 804910280 547151014 770702291 692887498 978904712 515393309 772687595 160661994 279343150 331051147 726841333 578750423 598259440 690834878 855159209 118166633 441482836 269350645 837089976 522161476 625379216 643524580 868278082 110491103 408052675 10183748 361177156 731744169 884845905 714574573 871173180 152672590 941731627 613790670 809438724 26787560 981327369 384018954 798974532 353223270 546453519 937833493 959479624 938033143 975103461 467219828 598291467 809959322 896455316 854270204 887259001 76304819 96881977 426019671 466125672 295898489 977067671 626735121 779317549 760477298 904961499 489182622 870431396 660611120 926476981 320077349 702682069 686592955 948836306 354196542 706367497 207877751 633600442 66608014 216071120 973717005 983254765 368545619 731805271 292934482 385061585 860544774 874266018 426373739 742864404 770517323 776495806 209081689 577171169 702540213 962061670 354513775 750340561 559786539 614767756 899825812 991947436 934793406 974019692 394500125 503582625 514896738 713089119 453402029 811838574 132883941 720038480 535220648 625938255 551766530 915164877 590004376 954605080 631049030 809986375 665107854 868853878 297017668 393615871 253670114 276239523 466610276 570876009 484071963 553198366 651461036 660888473 498084580 974590921 525801325 679427689 774350111 865626348 192035846 740711173 103077150 526370802 330258564 878524572 508535810 653287657 740306863 993280543 615624732 912453613 227778626 908960223 314915858 613703553 948987138 957168900 768844567 791541504 366988631 748796313 950005320 994576289 67515329 713323835 739382632 798581238 417399733 744135886 48011883 354813205 349991007 405870603 918554024 955079225 296048260 639206705 162292694 646584880 617808779 664785357 107138794 907638460 99011016 179781864 473895838 765035263 453725937 719725281 925113634 968260211 746273629 945117891 722813542 826494396 106236863 108426219 307681777 347114223 216695119 988713959 455851906 602401735 232948282 305164774 137349198 305916042 170360493 888818973 392506995 986499903 312979138 832601628 624000310 935706382 377784548 433612344 943282503 962682283 155663021 978984120 900390927 984493452 215613048 639088833 943340625 991610135 994000404 995777871 387486830 814203870 858694232 892083964 623662240 779683099 410460969 505974570 27660747 502147224 552184168 849193671 808806334 910424792 858012104 939820788 125041750 290711041 392544322 970242657 103108220 659771110 286213787 294798618 296264909 640801080 706644366 952694097 386185094 722431015 523022244 839924138 123907255 877979378 399101392 720974233 70952035 384493001 367322091 518266966 546677341 785843330 459490561 477475243 815114268 936934282 222905081 432618319 424767310 520782178 12718755 771996798 286642240 985771621 488435740 888897467 374444209 934629184 121524068 967052954 513075105 692203241 106780076 869254735 328177355 745697025 550951628 700346335 431456342 912100991 54485788 585222699 863491104 973091521 675287312 838344785 488485766 792717886 170653591 339534399 819908717 916344553 404382623 707512339 411333324 433312535 930441221 965213568 211640496 593953428 126435953 657584002 423116873 621850582 554426312 729104893 841271048 869381943 880817425 938946856 334941114 423500996 128100785 638962199 393920061 440840759 171788464 321425273 129004685 642662270 179960167 421309140 383250715 931405102 295560694 981430581 730830299 847992783 126609603 641267841 230310990 972026111 356893609 519209144 919272517 991769580 360428466 928745218 856109971 999734420 401803662 607121059 798808707 981447361 554206375 627101392 346833223 789440104 211565399 398585584 743389086 839944211 576165799 834524767 655235577 879007583 844589685 998407592 163009566 729871541 293591406 740794013 273181428 354371818 345672551 828737000 141692704 263037845 450529696 944661973 989460614 997443074 332213238 642908467 147079354 499801545 468633975 657741908 746162999 787402426 809675752 881737792 885423186 937496305 887429381 935240323 108716257 211291089 719423133 735378941 533871928 542335924 279771104 427388161 562843331 939337904 300176206 956345925 903542557 940266367 773981317 894232410 423669415 965161380 252647277 753851885 968596835 994310437 855367767 913916359 486227019 643095247 86325957 544982514 931289076 953993869 208920593 357444454 664155857 802850706 294953735 970113680 922036248 968978370 104742750 527842950 477790229 843089650 892345993 981165185 347581260 452346804 201161645 683108387 964620407 989775642 378220255 431723552 475228652 741520286 864203341 964121993 465586750 576798265 557470368 814513031 438945092 998370663 577135574 579476517 502248748 746056704 49992140 616799026 725736271 985888073 669425149 964694925 870033698 884310121 293090793 982390832 892118763 908436916 744269036 860626350 348493951 398120768 467486346 813253733 994142835 999910080 208830570 419622110 292125005 306299472 556597726 762785391 742568588 901856667 103180104 410298421 220657172 447998411 882193807 918457133 289391033 484125149 972117644 993201416 980054090 993976549 650971994 820773928 395529277 631304347 331329500 545333311 741131826 818582998 731088556 800886061 478566315 855506381 146572547 796476652 983514677 985231307 613796596 710992330 903477426 917667504 770654445 860725323 242878790 804514922 352635959 676522895 100923795 802140636 42652454 586862247 156353128 658342127 36175023 243936786 726072900 857919624 114026349 710567631 313690395 903153587 95860855 179649613 355360468 967504437 246369559 505048267 69893930 604886798 339027371 598217603 549919825 760690230 561887840 593554868 240032951 498920832 615734748 767038706 184575214 510750491 774050825 954605789 935375782 994608193 312077716 979842362 741412932 983457007 13481517 378119075 176418531 815156579 908178291 950187180 967378865 989380661 122661306 610659781 43048262 751098424 443037284 826974066 146135754 519493167 263281371 729006712 399648760 463807199 865133936 866359778 410572590 838868639 746933534 879903837 925426374 984292860 96951546 169955069 326570718 854256218 769161719 834354025 457391232 670757180 429395340 942751657 388174946 842550694 526155613 655331024 224809939 410420981 295921534 553689197 867146962 950636730 946556759 976431235 401365072 957757662 108553761 871812781 547136372 923366479 819577588 890315565 636007120 638801636 463334708 922629827 494157448 709016098 470902079 572688892 284516151 303556814 52085299 556291400 982909285 985987954 70908861 686487953 670768338 868717069 857016497 900961222 408742168 482118886 808976614 963513435 350602384 826889356 323184668 529132031 460957151 587415755 966323044 992105781 582765054 731855787 150681482 471228317 190446551 228315655 785296666 820681263 908586825 974291801 31377453 486405870 316131889 799740819 696281622 995514985 530030520 629172563 68138252 569752085 722238446 911578604 218749452 382770353 558609661 974565266 628195796 954017258 167631840 539014602 527716868 767604377 798159463 995768870 545952591 946621681 677667212 836132201 61394408 782238594 625659789 897998843 761430918 907800448 878989440 926906730 458075631 656756451 991801634 999670442 432942944 444724302 410158645 784950645 646616410 697048946 700055120 837519424 691820625 763418110 202836669 865274996 864866791 913999043 806886357 941737469 239336403 352885992 764018230 887295920 710188153 879873979 88271894 408532873 662519288 747670684 506735503 691029969 122855158 237327887 826447443 857692768 909099418 920480380 780863942 984081030 671859011 939210139 943330701 958714976 515954262 734745449 573748839 822549441 883533848 979352444 283199399 355838762 982168914 991134052 725069133 891095263 573338299 650640739 699105662 984598844 868982847 938506602 473029892 601357311 702524674 780751459 682669081 869412629 152098049 493567987 488533953 826885620 94554675 769594682 619036834 921978906 513763771 758147387 219119176 766272196 686735228 796206676 529910226 906370904 184780356 488349565 187716840 456206100 731860537 809262406 822489480 889095420 145207054 833370466 503217049 759317156 111241297 582069228 946687054 952986400 388314975 467794276 118562374 938677642 987119562 994594502 503510105 847827239 590653522 992231843 416515102 888927097 126638029 631935332 292433077 710849890 347683930 750281193 402241128 655188439 505812770 655343777 42847305 226149079 18283470 795577080 18515448 719712394 504912199 673750160 881150740 982078929 970195018 970379855 448411135 863950461 245104886 567250965 420302931 590772384 845366820 905209354 319230142 629152329 982629718 988661714 763302821 793277192 84163795 496516220 315998421 773719170 131029755 707772155 244637153 853126897 19335906 740097036 726935217 920856007 198303919 961964561 581013543 590986227 136288648 419430472 100826407 978793088 978362385 988350752 525686300 591249998 532420912 684390533 72829046 989225276 106057739 952361288 486489330 770299940 619845186 923716092 887154481 997588981 746176424 930134648 405136889 538469086 781267242 928036407 79930571 514992581 124302355 271477381 918279856 978292073 296292879 943682809 161513211 802957683 541240723 849784830 7667460 602878819 153751667 862366084 188587250 445205399 541544214 834469752 117825303 254427780 282438172 434522602 148548050 864981709 400234965 502954333 728882173 900638561 917857524 970354456 543106557 715734679 160111174 762087426 387996412 562908727 706046078 999862691 104862656 537457668 129054313 959639037 885631082 903963326 296725293 553874150 247322038 406105148 319690970 347134617 605348021 837928682 539628863 931087596 567212843 706635194 853896957 959704463 545780711 736724041 649893020 690834751 766266696 809343106 205078595 549793324 769659557 825663198 538194268 554793000 292931413 645331713 327139495 968963541 773617215 909640895 570181169 929950549 359159280 459554633 505211120 520892617 419933165 536752626 659969161 754912980 719597575 914645993 185074608 875543703 178854948 500287365 434277044 615090746 200253094 548612187 786125674 929522577 343473564 658233307 510378924 552278659 964610693 999946216 93764197 494659711 197355644 416692989 208531320 665931608 73897333 524258551 203882531 466306116 338045290 588436318 68173166 109755758 842363266 866896060 847238607 864227991 17420391 567765863 634969615 668160750 560871367 908031643 381316419 719092649 754886103 793321106 414051447 476154655 862094773 936279563 800024335 939311249 670298373 884183086 754052132 880406946 195073709 601287577 547678482 605467764 886681089 912588066 79510177 206537705 838668532 857872416 580835670 856855518 752683343 896979442 223783933 895321578 112867388 646662818 187298218 867418416 209093063 790231189 16893574 241153857 941078217 973620308 752386995 931174889 320843889 719660702 553905917 616096296 396490438 845297760 333206133 976844356 383500680 520325616 409742523 920828896 964025506 965237043 223694583 597625273 960350412 987736782 728810179 846062134 613496855 648890001 386879396 934421405 182645988 210889048 201727594 985214628 711822708 784679674 214678368 702003034 596990431 844075996 68341649 247772326 98278329 206604379 254886590 956127816 735762125 987538061 668549323 985355923 49940664 526190146 777009562 892202164 699666812 915841005 528743892 920639098 474847184 979563555 722551660 891328595 316408133 811546266 138731248 610572640 798647310 909258096 19543577 771114617 220167206 506440897 268987772 927988044 360854153 996315107 234425785 956584774 166596808 739829779 689869484 998512100 613335318 755706395 441936669 761416201 209802440 792919221 726925090 824861234 378415585 671032612 234879761 305377666 170865189 262294298 569085858 788349100 872227897 921267992 909175583 931405261 28272664 233720448 23131453 782912535 609937 470149126 112671006 327953605 144352433 840846406 792543350 893096720 691908240 907568654 900443698 964775667 573596176 993136332 517552248 861189365 101345897 542529744 545135896 633929458 610750970 724720675 595349502 990490951 193337020 700447940 871163310 947259712 607484361 708138824 307607040 881473271 502667631 579925546 271374182 827195515 281359934 543179157 959630041 994940194 106281853 557275860 700773384 911484032 342718764 752754035 503236610 983079790 543881972 844998830 760255786 963993831 105816326 156331774 172758784 729157526 367055903 956019436 79983508 500609570 362717015 828337861 549949968 716171298 285210402 652067234 620349572 994239547 22553337 617353304 7420493 746406197 140774909 302838607 844043787 934200378 455424243 630119244 708835524 895084223 230919624 533574867 731520904 832663899 839982420 972592338 606938050 608257522 534736408 964359364 138917915 741675891 820811043 873457428 420308839 986217763 393368716 677433206 705159113 944739131 807216985 997669905 246924151 720121620 372107319 993308158 917968994 987865470 539751141 717788059 939722354 948422503 975939338 981357902 507338870 739941267 109388310 600329145 926744330 927832985 515133196 735740365 77102665 453687186 850526266 874666417 804676984 994578198 509561136 992069985 655495727 950479050 676729948 922695742 481520219 909923005 683523741 818568656 766932503 895518383 487286246 969245988 760527404 851813604 223610324 336805957 304457553 724079441 406468455 971404013 465598001 809587954 658982862 695619428 935270036 937149948 857905383 927073119 350435254 687421318 545321089 886192982 545391471 744493375 138878149 373328517 579329629 817730585 861392823 984215760 407606511 417613273 203656345 858689980 408518297 594812034 129279371 533625341 776426654 896803811 634792847 786644963 797446904 849976486 352380955 971827434 109295570 539682710 426302527 494253969 385619109 792166890 538650243 865798142 410689444 499824553 745394532 902221119 693642555 732694821 161982907 335776497 261773788 334721887 476658660 574848542 485805820 832572803 538340192 765153641 158137798 944096769 407583507 457547279 437798423 497367725 707388846 957806181 561617727 657985042 213524753 446890856 820313003 852797702 253369584 985912572 974845106 990731566 450690838 452639112 354203268 451520974 610045059 848252152 334308246 610571586 233237329 932614051 394777326 403295912 874500146 937406238 17443336 276909536 318241771 719396052 38768921 785025392 234736177 418344697 312619569 533680689 973282506 999664437 940864240 982214463 458086102 642643172 865814409 984343626 181908801 346199636 394890904 734914846 754203652 924282532 456955113 625747919 523399953 569898450 491804218 859802615 751200035 990097387 755983558 778952367 819088271 868690256 360064962 853558476 772652495 896106172 258925981 260525368 386202534 768197831 205182144 432364834 433009805 543012942 631792073 955031085 437190098 530964224 693329040 844248715 451889602 749669459 651633567 950473154 288682977 451064676 922231894 961240568 64063765 241271836 968596550 995793693 604276609 732676256 367099010 739130306 483506330 595193873 537151064 938909775 672938118 786414548 573952723 853699275 369793993 640549422 8985620 333907230 526142070 537298364 518097077 616451895 668876950 742037254 820629023 865220111 550544228 920680413 47945534 169924429 26130828 344637372 292524369 699092218 857713884 865680023 810649619 871309408 840750897 857866695 170529098 397558962 812976705 943884480 779854760 874837009 230943841 954560369 548646281 783579248 416248629 947476933 330190572 405089101 893220048 991622797 523010822 671281516 210905900 510572416 728158478 981890841 716205077 824639281 912167669 994672539 973179925 996270909 829720289 868919396 639972259 676156965 681259547 816792405 221206529 525638151 308570323 975622031 573365677 589846475 461226721 618813505 911501905 964124139 82711135 396613371 371565561 948288085 352977590 587123269 245014424 957650491 708779481 813565692 318173464 499222280 891229278 958169496 887397912 936301513 987737198 997540754 563257079 771374829 414096407 548178531 8526964 411083933 45006215 715682792 536670317 553679043 331950149 873919175 517542070 628159198 876626758 954780427 323530771 716337697 961703283 995312354 958574859 971054777 538134206 824257737 505587148 709360864 561152216 861937398 705009557 779277610 601032993 899858223 542195155 625833655 857568341 860338145 427019726 939230374 602439090 653677265 41795872 804324436 415189608 977564073 639769774 841338610 749094870 818191845 679367948 720151609 569824181 736821355 111900660 583862475 885557511 931565615 105103870 527608736 592511698 611001056 851153426 922126453 122178267 403985972 81694528 310815754 402552713 597159835 69508992 650062824 875859546 922147946 469738078 527970792 330481173 715651474 84151635 661852451 673472547 789129085 37192751 62194693 283044626 762843424 858680182 905565759 531765961 665675633 131878453 218957968 620860337 893084707 999636258 999966688 16968237 298368166 901709483 934936321 52807353 489723969 425710926 776695619 583336678 954726880 99717061 757020731 221403832 248974935 419354730 780596870 942333731 961246608 950314467 972052855 361817566 803478828 490862813 868458951 131164037 618566664 878141255 969778617 10882 610804526 303819314 444562209 787714272 954470157 699564583 766363916 364229055 858015178 86185752 991180585 550104472 714785742 970527365 989725836 498988550 569448881 179003923 421357749 191073341 425006139 774728459 863137557 428728074 853096597 843550043 858867948 896049200 955344166 514204476 799978748 442789015 889247406 57692546 77613778 889447892 921949487 556548187 578144253 911604446 919771761 582326656 719032752 566191743 716829954 597105287 667466832 196649527 608100616 176307289 488467658 403411270 566406224 283603918 328424173 456923886 768072968 418237324 761959584 116830739 254192081 4132969 269215184 75538792 729299814 16583770 848461439 524410495 787882285 267292573 630540504 758916380 766729603 931841997 987111114 798797640 971437076 643378465 752847532 698493769 987260266 721131146 773945650 546046029 865322422 481854563 841732805 703174600 780962018 645231386 879959116 135724920 804250582 325048594 633173254 663549364 880557989 952170824 990828161 179432096 714274143 661497764 786780843 98275963 881964110 583865053 759882951 591062763 603977538 11891760 949561286 282057332 605605980 221802274 367765719 291495018 463840843 818121214 900068648 906757304 972277948 813010211 838534085 725255494 974485571 743008127 925274522 329946143 973720378 452918250 911960914 406365873 709906519 178504560 833856736 774877223 892378382 237881584 612294688 672305018 803805313 83686233 827355321 694700814 800227425 620474673 677123788 827082027 961042923 254179349 769307978 110061034 383157881 971091700 988957631 356766353 756760100 844939577 867361023 491382882 974718328 951579883 971416684 662409658 780361123 556020256 844965358 738726294 889852596 259184982 529502605 939687832 983573140 369573358 611952805 572300572 880246960 889885389 929237155 5701169 204153272 173237197 920726225 331688025 456008568 71193410 586266601 724094881 979575897 336715033 622690591 323423328 508873289 948597119 952157690 724214197 986526055 143248176 471282016 239689069 599999508 883086769 955520977 969348162 974341679 224693049 980262823 926289283 943116267 406799478 575640404 862856949 972709930 431771747 751515873 902377652 990238386 801906578 845357347 179109079 367941826 835076290 857133443 889620527 966509141 201846582 220265588 252762760 964241698 701863340 814818933 977433583 981930390 100115780 105477173 238688810 705476283 178848376 725152877 368698870 568697268 393171426 875906717 167401488 302153131 299559826 754602629 956572171 981415399 11760165 941117643 442224376 802499540 467781502 579447308 963249712 968059523 215445012 923458485 912841451 968986210 490634351 648767176 472713127 815111314 696858559 773944875 36407949 66649625 310230226 478967494 318123179 498640108 659374875 907916849 612752726 991252590 942339916 969782569 654132775 679816680 413091618 724186668 327728871 369226367 316924797 451923757 265124305 631726514 27482842 487158565 996280544 996878957 874368184 974299948 946508303 984664439 866452670 914608112 966077777 993788228 864109300 996343460 253884718 957307329 554686771 830674292 57644661 165071373 456896735 822015915 895955989 951283602 633902350 808267076 765063415 824146122 217229402 525116787 448549441 455405866 577684737 802895610 278403653 693135031 37049965 477728457 609729764 888302470 712484474 884172632 238224846 892938977 99563675 462058147 687523300 999425871 767248623 788854735 342499914 745797216 422771213 880500897 249039414 366886541 652652404 713001208 821675109 955324190 47585923 985513714 544650882 753537112 633941966 735989494 252665437 712367225 975568604 990899687 840217057 957048719 811791406 855172576 841378329 882887108 339928963 925093072 422361436 744181967 230255591 754654248 888018261 903811169 504326066 765315126 1642861 976322050 92596179 656855778 844456653 894058521 538474371 977495857 442118265 700310994 270179190 824681980 669799859 992341795 615905620 845488486 680488792 718955522 814888608 962850431 354459369 605937659 193190825 891890048 891252352 964814536 972686578 988828842 626737259 915582023 670733799 878123593 221329481 748019521 106519377 792098404 124832141 463949008 889002133 960624874 776920048 851584733 237585515 778624011 55449423 599386983 5148042 864513650 67734442 224896205 372625756 574793805 734430212 847008901 435098483 637996889 640931160 750659982 79925335 83984007 868000967 924751120 198864698 320738532 504785912 881564312 923922990 967846302 3561894 558229368 633685622 681777848 710050776 880736973 453917776 815773413 627731251 921968337 778824795 865619950 387178924 995420757 164311843 879033501 815031597 881076381 522076909 798436199 950940818 980976048 276607551 729358938 890045092 994113453 32308962 958415645 900171683 968183349 860966115 868350519 697600400 707904955 584132036 993227998 303572674 548369324 829909146 965390736 903905683 947965547 219001714 952926452 747407201 881884759 316187503 736388091 548021328 673550426 861684863 962291865 255302946 367743387 854178264 869851370 318916103 850036813 473649365 824160332 980167075 991376390 85389826 816070081 626568571 933788403 463531435 673769997 640328245 649737528 7780698 298986029 168841690 757621973 153770215 856455619 24222380 630011097 853116696 954530675 736152012 868499728 614041632 893383320 833708479 972541402 464304173 984382492 235642007 476581671 860134908 994406403 371818370 574290142 508848152 948437819 814372594 877718643 668337394 814927275 560432679 960034377 983041506 994695556 95962968 200129691 78788574 345822210 133592513 894104369 568924686 624445482 333698455 835337792 755089408 973976593 685079597 787337525 455355908 629913448 616046836 699945641 391808060 865624928 518961520 519028833 697514560 915565445 248159891 494839910 428028249 522363607 430508786 754515646 147146664 183709433 133038782 501796571 649876930 712230487 283079389 626868736 558187141 897171768 37254493 295375775 192314771 391684121 272062148 457705062 624829325 733744056 920220217 982037316 725745983 847539343 35062756 370225717 475963445 623618330 534783641 716905419 315579090 953913985 395344108 482005827 515651924 632103961 276990701 970747117 771931000 912036787 578889903 675132727 909127038 931534392 686685131 709385527 949766270 974187292 738708272 877618418 356612411 667313550 172962624 543800359 276264657 759121664 981664354 995500203 219193720 520888592 344611215 844358803 490919167 671954134 386871375 979718082 753704539 894693814 933579084 958996931 93538147 524504173 900180066 937980457 30171987 974835901 674664447 753227578 737277702 976816965 975471504 990477206 596543853 842237851 764563326 893505367 570280021 690182617 878087321 960132496 484064002 760144434 958701243 959639631 58311912 278866964 302864821 689063248 67296177 546377132 54055167 986644719 627792807 941897066 302885006 501582054 45536765 772997016 615986988 727508186 416620538 533861282 966840594 990676478 845298023 982394204 625269145 815069011 938041803 975193658 964347970 971701907 348832380 742544174 709737797 974946123 215222940 288282452 856140391 947081685 689262162 992311406 408175689 762025740 693544751 915958579 264195150 633003885 969076065 973687502 362771122 421192981 955897765 997370060 703972150 863261481 233222255 525664325 66495387 648965503 398984715 978739707 458388386 702298056 440547989 969059906 246786150 845334659 157859429 545177480 502707703 675140612 499341149 531691853 602599669 790726555 227195893 779707336 609626880 836768528 458744257 759905032 155003794 192909920 925190682 964148972 559332415 661655965 896510506 919016909 338592476 495091003 82696828 506460599 656272350 956913368 927779718 997294614 834348697 955689512 961293208 978602881 567485852 775987606 518284450 949642008 528597664 786546167 717563867 909855610 790998206 927888322 888772115 998356352 485257209 630204388 150436865 563917270 205750995 517200116 348560281 637427981 845862110 906712427 646985429 979065256 83908248 182996832 247160652 626161496 160768219 430528845 743050540 813229038 327611069 797569579 655700609 734709251 510584831 562501882 517718481 639263757 954198732 992498198 778578127 997945865 185116766 918639245 728458565 973375132 212947122 715700676 753839668 991504495 153870999 577529602 491307539 521172195 549160465 778649286 648163662 949592375 136313475 680150485 115584685 177361824 621331252 968173159 657594055 943002939 799762290 939464782 812510916 867516232 462539707 563124968 746028793 809975878 827070220 954559703 553923378 919885301 532677140 656077244 861043658 906633378 689457469 705083331 936805835 967266101 303980412 667646904 878829931 943161223 741783765 759212282 269804863 973490253 739511860 991595797 589293258 719522631 532573717 848458848 335274043 744184741 403995003 905070234 789050207 852484901 594904116 866223908 286676416 576988702 211953064 841224254 910866918 971944915 373075686 614494467 433942348 737307393 393571726 443399698 60693432 87973583 663575279 915333144 242296376 922737170 589034115 768068848 954673933 954795753 367843017 584939636 161075054 527972776 958061206 973303977 421352353 797960254 244549685 344937835 210653438 269552793 208345447 841884356 13554008 98374559 518417382 589419173 245678489 425244395 312804612 712877450 677210195 722562355 487403019 780605525 734157377 977994852 390235931 646541751 70935839 839624052 431807485 553127826 621068239 914074611 924159922 976114393 253057198 301845430 509475525 805698446 763598006 898442083 429966113 668324847 693664817 847939919 675653702 986723404 299347275 877840289 432511617 627376021 968135361 970206849 753839365 939954610 469412268 751907440 259107006 573271785 237710906 513192204 463765932 705799042 619886277 651201937 808981965 936749210 800437218 900731170 841495747 933902723 178308030 351412920 995096952 995588263 490756777 608095708 348893799 439592126 95935478 978543737 93940688 352357229 831830337 904407708 497826215 812660602 14607901 963494303 354336789 685071767 684174617 935754630 820930724 963763699 27046473 226270093 850057467 858162459 699004552 875706737 948210212 965884814 160460881 220473154 455011142 547222589 314845142 389666838 948169921 988485440 949348348 989311373 77140988 586954786 442666621 511095565 488043559 866228685 884276044 915080641 477759463 542848058 130167234 278181471 320715938 753073148 830765474 832607834 477667641 581317551 329721674 634490109 463842627 807232571 846652986 944497176 199088828 668053225 203457915 478897996 947900126 948124686 808533549 886894268 150396405 862002022 368104366 679006820 240751123 632103769 913391334 925394428 642693100 830400654 300831810 478610609 13804166 782145835 783644055 993194299 510327424 995445263 250984850 335609126 469584600 797641616 914723951 924223805 554802852 630149524 45457027 614044914 450497772 466544114 7894475 73523414 671313024 786055788 122977644 395885318 320545587 602158292 4436077 375129931 202453704 330825180 164842850 317254461 43876322 216255004 546524253 707503474 268647227 859319602 42365606 922301617 375398601 714108749 880476982 882159510 765166899 864458478 973081960 988647715 140148879 683500032 961042206 974279964 870166864 920440798 397468702 665230881 695562503 963314698 595380491 883550853 622001686 682197041 199145055 238649125 429426100 782812906 243580074 411325944 386189614 781853583 773184549 841023080 325988167 484674558 628899024 728082576 144781090 848965367 481476418 831436552 268936487 689294222 575441999 999299130 553586537 783943723 279639073 354744152 53699929 110055927 100623323 666523692 55478104 993603413 217096974 387672315 383195332 760506643 459772106 873256962 953285745 973930565 719046280 763949981 873018405 953363281 887982715 986928997 346349213 771605839 351234569 825509622 771102948 837191447 649723482 859671382 179952728 963677902 277298892 939791947 437421791 448523195 171591924 455275825 827702604 837544602 51279296 181300192 604705522 883803848 333659897 478389386 535147908 782926638 452831231 621145050 477463297 501929053 134510199 494336852 840234202 998449211 144419734 857302503 423221369 919241436 921284439 963377256 751027917 971205578 878072467 964780043 597657483 847740169 828469119 872311076 235728596 790047259 221433034 576004033 157177829 735108476 450714998 744120343 306744153 520415192 533707932 596893793 229728194 861318625 766060169 954608157 939723553 951622252 239350139 889621917 518948008 630826158 515864739 912506901 191170117 751578041 132019508 382123393 299492233 664709952 949507288 949613849 294096726 881330876 842083730 947607337 219351940 758257845 167600670 319870250 493826865 781641293 132626102 622135961 361954076 798128641 848293011 858663978 231744095 997443252 811005258 921726962 677153392 760690365 523707532 907058489 505790496 670625182 652800808 860454839 619807045 948085562 453015818 498816387 540943014 789658846 315278983 628845811 801092848 915513745 820468685 835304306 200767989 483997164 622388650 696630569 542397575 550580127 107084330 213544377 754388978 868732482 448900392 889362432 718085376 939552947 627220124 757055442 826664366 851784247 977040804 989492874 775914991 787661108 945842358 963581198 988386146 995962389 931810239 960467968 212213240 582245970 78358050 913734687 448453217 999871866 182126825 593412031 926168733 948216212 957833449 961560566 872628869 995427475 86849244 912551898 669379923 970162529 77983653 737004361 311998463 382784534 494074410 589862541 350420534 875762365 374073282 673337860 641349527 917909794 379944241 435897126 846132102 993167275 49579922 71651293 508308908 846058384 379737851 650385575 789325196 861384967 98623722 203170754 301994828 563398937 219089424 762747532 605435164 741256763 197371556 461417495 785356888 916489178 241466599 936911626 55025832 841504648 242710618 262662072 871803353 872340832 744085789 827562730 496118201 756773430 841021232 965891692 121816690 359593910 90397005 212360169 544339118 800440785 798054519 992773820 68519844 807590602 26871830 571802367 253246030 935171013 455736136 641143197 194498741 687654585 594570029 767501211 989256979 998834441 155031464 220200048 966317381 985201300 263359623 338093292 889010729 913249274 512725195 805423123 221190483 268868734 334038261 435405334 432920899 851457950 211057512 812597510 2070574 948886490 787356429 937427016 499932075 950414653 86606973 174705376 822073153 989229808 436258325 941520713 308114793 561351130 526805497 995195880 474053479 933908794 929704726 932583504 848439690 947805611 489445951 507702366 831554482 940022388 953975250 963929871 698108178 840077618 973757049 982983388 443998185 842862761 931875473 979603459 831981251 904710172 249388716 590135620 531013221 681582384 818576859 903168470 103376756 815788038 786598526 799280659 442429058 677424201 509392200 603667863 162744579 815939951 373478345 420389343 559630764 590926421 819067953 935993707 688854645 922463573 198162263 467691615 247650914 674897155 268184264 958634311 897652260 911303269 128011098 696157479 758214328 903027873 39257610 982077620 518798143 969158789 994700507 995364688 302397491 600223651 268301223 862020257 301330470 397083461 11057703 741565430 986134269 987276300 80774281 887782177 345117604 345595973 24528094 412861260 371297410 935929582 227391219 873208075 999966670 999988865 339854417 422044811 179046418 643735561 698020262 706123378 583108141 676557740 1490321 889275976 575739077 883084416 962261110 999813983 281570210 929887950 791834709 812996897 176058108 641593554 487798184 681040832 485580399 838121052 803145555 976865633 638869164 647745699 468025351 953650565 370346398 805169049 876424177 889917145 355102097 617782033 939617795 943874316 238386978 352624285 540386464 781422770 799312811 926544342 234005030 701104320 496672754 514764924 455214193 977924980 400024095 856704464 485296529 963102264 624504129 925345866 705154551 971289995 706260422 947218567 420638157 431838269 993454539 999249708 939607949 969249980 147551370 797363330 520913821 752724007 549374859 785669057 542919888 607236538 275990903 979797255 191499981 904464348 799561985 987709714 42865201 56491360 652126522 817302273 861850797 928623201 271267521 854785826 621783194 991813579 428865623 909199958 991780011 993115361 93644411 910739012 677253833 914168124 613789646 964553628 858794607 966412499 357008377 587215396 845707253 993630738 204469583 449597888 595796993 942961155 787234474 901045169 957897845 974061489 636986759 949699771 906951438 974983960 91632264 868428959 191838634 272099208 405074867 947854256 220328925 679213600 724202494 734540515 878991876 908291587 233433752 246719559 623314034 998138620 804739836 948512421 365541498 676236224 825548027 918225451 67652206 511314397 500862488 746222522 721451116 919259794 236829866 455713337 411706553 644979974 690293109 996594591 440615685 802709568 348319984 645789937 758150760 901718230 489656020 574975710 42109492 366319208 325886111 778442789 555261087 780994813 775811907 817379805 227024117 686419464 66742275 725682512 166912749 737300725 890107247 943949069 741575207 816237199 750656188 821604751 807305895 817888591 645958747 911542902 413451200 550734003 18454594 587093705 773037282 856354505 827945476 965309510 85441898 329327888 658017779 943718560 652254155 754548325 411226991 625871298 378286803 571521449 544524188 843011738 477386428 745622243 256508078 510533729 831881211 970214034 341106729 406502884 355378081 953978038 344084009 940867884 79763176 293864120 39987865 239472310 893713773 945931882 413499455 821135990 160982091 503448154 757925371 810062875 218467477 575042086 259918073 475978361 188300221 990971838 151043297 701687014 168185418 931670231 830443453 924580804 159262355 203174175 59801914 378240044 378127745 773601256 146646664 708981142 844662862 990761751 46074393 74978915 26323760 775202160 808266360 972134794 489351661 509572400 752840530 832637847 574809433 713473612 923224797 976877164 321922033 893931545 765985820 934810435 353379598 466433875 790219858 826700309 871755178 968281653 919891553 952666283 589967858 865957847 145555936 745184948 605688297 873286843 865616369 897948228 254517497 871923353 928302696 977741159 397442697 755423805 38686609 802150432 221351024 568223459 789594944 895454562 463512156 743484973 465228596 858425718 601120385 872790297 640690064 935659676 665575974 674744545 647532689 714656502 566388545 616766235 387585244 437717053 785846156 971388866 252549905 680568677 536337377 975467446 408995141 427180857 51054725 688564204 554243680 804057452 600119759 786045369 715568810 826406321 274302172 467644297 332179260 639983217 363839183 577529542 83742531 793088070 707213650 811666518 514422159 929389753 675703727 822079964 279634500 479450132 27149006 756411968 574784670 706743438 789652026 847354028 776906958 844984111 696651764 794578959 343602313 997504920 625713901 741234395 773814925 889157918 649130522 687200449 544956619 557960461 913064385 989582492 324557172 521114454 938947177 983192230 405557564 677794319 553322295 795313742 635481040 712212747 15883919 333844312 36274667 761313915 371657305 655043312 973631570 996799298 765571053 954809712 477350597 974612797 862759651 883481077 128921107 815250386 458250738 496238720 553105975 751585157 486633150 564861255 603515875 636274372 160422855 906804841 930648031 961625833 387940224 538636366 553379002 713101919 264391419 370157160 836010646 841184220 719720355 967808191 910917397 930105971 584707861 691767046 405376465 539784100 367302816 933185092 243295006 889470004 527811590 551344166 458608396 666011566 26423454 482045026 333221115 966599631 14441048 399381484 352664416 525765467 350781565 392591774 605873988 668805970 424067512 891861245 268989334 449554359 487254776 509242465 403612734 950338703 955667789 982183324 377206424 406075966 786340411 933074511 826070966 903669971 672273505 819226776 606763006 944725276 269768630 602961761 635604845 926127287 286911652 390753143 875649033 904253281 745338973 772924376 761972848 972094357 642636988 805725296 777554609 811386681 516983613 526536664 899608503 911580137 729633611 768853005 516653083 623604404 237530375 665697543 332740680 394580169 940840101 974553652 272663772 660953389 485357405 523889136 322727234 618729937 654327752 754329189 425210231 617397217 98586642 344271528 328978874 723958363 810089334 924766024 16730306 53976665 981920607 991246547 257161246 805480640 461558720 486242107 739591200 992544121 817263416 898769458 749161673 783885732 760458529 919918499 618131345 952101897 166213021 695379175 825694572 938055077 562097560 841012956 273495861 456801520 762489837 912846735 732629661 922818303 430039726 538914369 426976994 450516506 394679633 981342759 50665681 825784915 815207928 833156640 475908544 757804767 558972995 877104991 352116877 987743891 509566140 845446470 980167038 985336008 361705 851556540 43487093 265088284 684343102 889336035 999285970 999596634 990785260 993905387 457932203 871129290 296495829 491943094 686170978 746529315 163950449 388739985 97152969 283683995 320265384 786536110 839409824 858738377 806605321 865011395 960589335 989014107 598044921 930815989 304478141 474454636 912262404 935942162 328616156 902479810 477525396 512456043 632598527 808728610 504642071 584963249 825742179 836488761 919352995 937389562 151584523 322118660 770852472 864615297 913171421 929371272 68931860 672664982 637149960 859726153 512648589 857779346 262353166 844096507 68466311 874539798 996404342 999627766 822736992 965197404 588284781 806271201 164843114 184910143 634746112 845082649 892132388 962076157 360360887 499425475 284233456 313121665 400376935 560401718 951480081 973479326 623587806 774929004 453026761 721942965 780524403 805941661 503614878 574276257 96068760 269362621 190362486 592260307 776737128 996770885 760853065 953436566 798001591 989490256 389187283 973902125 488699826 880687266 415291053 900589217 74217620 672724990 927631260 982373573 69144248 915246235 932143710 967130709 562609661 642738947 186135840 531205855 559140306 687502737 702332555 841328297 787304815 897916271 797172719 975394739 62910217 431733875 609043727 799577591 185229552 499055319 746443802 868701028 218067501 554351812 994233850 998545961 925583547 980166890 920706833 981633596 765026587 863517869 26965673 748817726 176646490 327856621 851171002 921356942 246806181 280014340 85185100 619893028 541016212 692561198 810078503 865615015 722327439 817809901 520655879 929246754 135286972 722993532 875446157 889182765 237412948 868171936 478402731 488772031 881927865 887365387 21384919 297174564 321323374 592156733 305695901 349530296 430603075 462188893 262696815 422557965 510170000 679388018 167818017 767604313 248342583 980541780 514365917 794517358 233156478 617902559 678795846 778927732 150554181 970476166 107199951 192840092 868291127 980126005 833801732 836456801 129870443 848614920 643517122 990233742 323300812 388276259 406728268 891020925 948237339 975772551 579856639 772456970 671038762 942892425 848662839 891273433 125449510 858219761 94658780 205531309 932176152 957922110 752543191 821180349 968019919 976720762 849520016 884991858 122306557 937068520 67554693 625938881 243828411 657625828 214202812 923038032 623380643 639732290 180148581 472376264 196256251 284727159 129261647 667794517 564719262 980998193 76754780 350874458 175783173 626104327 480951260 579895514 333820887 794844960 346877971 485227315 204603164 488604680 455909010 905302957 195940757 980319960 74796979 769664463 758051407 838842792 178831884 686246638 110695503 114325117 202469035 756603655 53049943 361805329 391452585 422839608 577819084 933222448 522498907 974165921 111346547 738522368 601458725 819362965 180204430 985026717 598311972 795414618 139393412 539529436 274219336 943585471 72349115 449538297 322243488 786316635 919556889 987946184 467269675 919418805 943463548 994256964 630847425 784847149 946359260 981613174 480759225 797823794 934449866 987914703 922644280 973652956 851015231 893702489 126680341 347944287 278458552 397372151 39045232 594821819 944484491 989829318 282246260 831914742 581456080 649552389 102337211 829696729 359234917 959970607 585846196 585854705 631596763 817299298 444088157 895290720 317511667 353574133 550073449 870786913 722901023 973307545 443383389 515079380 458005445 587755362 469334222 928656862 220769106 772779050 328863792 682525887 239189418 539684506 591482267 834286657 314294407 948983891 932449924 938490184 607426196 935549112 774004572 979009540 14774056 15856228 236574421 576840973 689881116 893550059 547320703 951296661 263677499 803941544 771091242 854389384 314241212 503456838 801938568 865002076 799264436 972328016 98341450 557635693 304148325 702805155 66111456 720914344 728117001 824921055 510428187 726902820 449273482 802607764 582001990 916920811 419060565 904459549 927816766 949167359 516928564 732839236 929270698 936468238 731577149 851305391 939277869 964532389 132179734 314997831 448847741 884875573 905658006 947796204 747555148 911772192 821543931 981269166 259260788 683350113 698380842 947950484 254502060 696343628 146262334 636999028 530121107 886215927 972308792 991421748 742038071 958272406 25891857 472621721 640957060 667191362 979656643 981396344 110837476 186084656 712469091 717540514 971063832 973523151 969692171 985574475 402179785 997954417 624511246 846228923 216409420 929219058 970347423 995713009 71130323 496101500 39428835 539919364 322412302 371165331 966882331 975221368 466479786 596674631 323464045 517836696 559286919 747091737 487830164 757804451 652063501 790395358 362632879 828066436 288772262 726515130 766465954 938789339 454933787 855907627 410429039 601599253 532424555 833099504 801699066 893860416 749593488 828009692 629707572 959671163 543640834 935442695 868370231 924667487 877419241 921441484 646089834 867505943 387871375 485033975 85044662 582219430 617861864 774664236 946909840 959134873 756387347 980742734 437303022 479914078 848497884 891442034 179009430 519900977 921630604 923675497 297313549 303087153 577882391 921474987 631845705 874092813 656381211 749042403 854674939 863489116 400829424 793229395 217825837 233543799 688941402 851724150 835673305 985917689 535872495 866808889 730302375 732840294 611919785 878844457 203518821 213578897 918002710 966162464 423364465 744033305 443956 261886856 686916204 762109158 803363602 893263047 542871190 631786841 600023841 957481464 332207333 430222346 920467128 968428447 143348903 954473621 791386693 934595217 706373352 722739146 153673085 403538036 776536593 856640060 936445333 985907260 426109827 977969315 114659170 652108242 327773626 866521531 818069757 963908849 588331939 888415325 1477786 32209463 706005900 735870683 608919944 903335827 794528187 998587184 620211964 803343705 433355612 631545318 678885657 825960190 927783770 937246191 926608760 962444848 501728364 935873789 857246523 942284917 111524261 163830537 117701706 466982333 45194055 917414097 89340904 556777081 978565491 989125324 610408217 691028254 5864619 563527970 742943383 746760488 111557088 481409110 447294535 480106038 221931646 364702478 168348554 722221781 723787018 901640488 476410814 613501662 244540510 282783429 140822347 888899904 264290000 354791271 703441590 771604997 275519139 800689926 57998331 760897855 374627649 679608209 156397022 606325422 218818046 422085672 412469747 574752512 185564014 541319078 997997255 999932473 272673822 415778764 239089500 975202642 578289910 831307438 730651845 876385736 875544670 983710737 883170705 963534960 269011567 294584036 550859795 711348151 645023001 804747404 175632211 176552355 709530910 998468225 721752704 924151401 353917360 880361136 281745447 870728766 81333873 914349499 207691327 318251390 328442978 341237888 247637106 333518105 693319436 875854359 901352199 924025916 858117648 870433824 559227097 615417814 202412577 585909586 655238487 753090803 723485205 771897171 856408033 918658280 528551225 570534823 325029382 442861714 331042874 470944621 6824135 446716453 931816555 941360391 83228601 981497760 640195330 819709220 230405017 844184966 267778773 781515089 946666581 952230961 13942004 289061543 304129711 431237121 330508644 956038914 901903688 967798182 145892546 538146610 73310383 404026876 587462682 916005202 296681908 426388254 423614144 625510513 423552915 885940874 972998841 981098003 537460045 657435188 122998113 450508536 829350558 943162344 512178024 691058200 790313161 906977859 73971394 295541256 949216907 954091824 59263126 305368877 379602781 682891400 483761657 727774740 366289103 806269752 440523339 747324962 109640547 550959694 205456491 796498342 697422840 984763404 699084412 747976641 122827450 493342020 420854807 712054350 66880528 710209667 386924346 447514876 244515643 310494733 137734565 509476977 821635422 828902630 654506187 845044332 602266852 817889076 379937290 831489742 811923143 876089560 731310848 829457174 879917911 974610227 309598025 346734285 298735112 958056409 527781705 714624939 902862682 907099459 716736684 761701232 117745979 682135895 414458924 524540642 370249010 539136629 673311791 960983996 592860312 907206872 921757893 928191279 8281895 634878008 840422182 920572144 639077843 803187489 284993008 846189618 403215459 633327211 227213784 542534835 962646065 981504637 609305796 609599574 421918407 510849594 551466635 634190395 886533420 990325347 488803464 987484306 7309150 451618262 507993801 800161155 947706115 996396380 887728377 963941080 381362418 849835092 731998989 937414525 258296709 745879489 234808453 495615221 573904235 708131654 429150289 571996700 426124562 554494688 246092533 747282509 139147100 341733989 630236576 893182267 112718482 940761800 154645409 874162322 982040766 994226832 334521918 393316650 722877234 921338662 812763626 898189893 499923402 651254340 586038567 836607901 293748954 350465949 205874860 932425148 583901645 802429210 364023066 427562490 561271551 916771988 886861294 894504071 137509797 942336755 518474658 639086239 398036952 417706839 205820249 618290479 478018628 965703539 976834017 992534529 787367043 987986505 450448546 593118784 536396455 993359843 361157134 665620145 765947027 914230229 684488007 916527977 403792625 957895644 956987849 965284844 610203750 708208151 113791851 946104954 814306217 862621048 687568911 928902627 884261605 961447938 488422950 788524403 156963723 383597753 766828323 915720963 866488274 949490031 781361971 925988211 652351824 890884051 219077440 736293008 395319227 497556893 957650225 994579779 627312160 944284812 147131238 299713662 532215675 855440051 409716682 801661709 911733461 930723845 390282961 832307445 973251268 987932671 38869887 679646053 649066213 800348738 536106234 695563774 522368534 927997653 448685650 486549224 661322903 679805283 653829033 762293502 118112400 550303144 31268643 892549239 729301485 878630962 729600023 993442561 920699050 995895723 300981820 664722370 608141236 989221965 570999601 974989013 535561592 712156036 162313555 665334718 451276381 651779114 936440871 954952485 486987274 978791865 404086530 431995363 788461791 941771025 685740109 978678353 303629813 441752313 701165636 901765844 299301819 719150753 73914527 909817116 575503501 964298938 139166186 413373433 894953016 975784941 625237485 822425790 820657892 910102890 262787753 265340868 837104437 876724247 780842856 915420136 111484780 818640489 587791119 790010968 724785524 894136695 175488427 356998771 584604037 992580583 643974814 989614751 3797464 246751075 613364372 615646486 336261987 838173665 585337726 885970606 692169198 825220130 807440877 924463454 828307005 975039452 604739223 959599664 164188166 279457638 360097603 728000927 300802405 727460240 283446172 304003958 605785510 811956660 876277212 964480322 910858166 919786383 991534516 993842900 22692851 838718899 183051288 620119344 12471330 291045476 68891155 846029281 217869921 735595927 330188142 368135309 339958934 930660424 437367994 633063056 601206315 959470935 521574433 593606509 907356209 915842352 893857312 936096246 724056359 998174079 466663388 843605019 141995627 821017639 170646641 995053461 443462271 506953390 8707068 679022246 40442414 578724110 72492766 942983378 225324921 660268563 121568844 164424084 524165824 950400775 784013105 860739824 23915557 58939945 820382939 833505750 748051187 983720879 437897581 534525322 95506406 944584089 629190066 672647422 372410513 933185606 559964734 697889420 66428625 426972143 744207441 822900462 686479462 932490868 728255561 936597954 107829246 137002520 110223544 423511056 273922729 718391568 372073102 647808946 481290553 769230524 613774925 975308475 886872367 930561814 894565441 953810795 252924464 971739724 992689826 996266062 929513395 938601415 855308219 969319537 487419615 674641697 643576529 949155403 346177715 353441853 758543437 923905933 9301515 361333459 94068393 103372031 124619041 827974263 591833365 732414910 227096596 418079362 417051176 731421819 203108026 649242243 387028546 579831208 698946741 814070369 611191753 861933484 967550944 983527553 519150734 545427896 34672464 194724818 784497737 917585884 487038709 663063799 887996242 964931246 894934571 984356379 692556616 887210109 149626533 784383233 157524267 579376671 10867137 508521565 312111586 659495348 990805335 992604651 662533598 729064002 542440603 585353792 901118871 971802440 211264204 593649441 473397611 940841614 392557530 620849764 991615933 998101195 701552744 868790603 806711147 832444954 319795179 761866399 25013928 155463732 708264009 757914663 375023679 780758985 334575859 749985435 568677661 779248502 621067311 754896466 472474534 846238269 356386145 575533256 87397887 325807472 607999905 720955387 459761049 978698552 178487704 473453397 230375469 439166598 286209539 509211199 268363213 965428727 653854946 921042051 109095548 617539840 886574861 938119160 832968659 857813093 381705429 852680094 62067575 795326546 121481491 884685983 314746348 766889495 144662550 547723037 682913149 844572818 780575783 877380031 908341605 925623942 550914138 647868367 738337361 772945520 380753486 712099354 812810498 955545489 839943590 946490712 513544295 551812932 366019658 392407680 360586229 444816011 487949258 730343939 235530776 870521808 437889734 724717086 162738879 471216112 473549089 573048188 744910338 811466275 684523829 976558720 128305935 685992979 146690486 658451654 801424129 810321848 618855150 883068358 183452371 228619201 54037154 840481651 109288575 899026875 990679404 998580243 253421717 881660171 848865887 958338195 575792428 869918395 19943953 893335215 463073419 562365007 821214555 892491310 559580227 742619038 624472181 900916262 609863991 948399490 621137130 975132525 474864291 971242140 950423530 954958068 764939051 766589197 726437684 811027411 72829750 774582573 376669775 697177603 434627710 652883835 164806741 890439544 189262474 224792551 239730845 463178375 65263997 980936117 304707939 685276024 844271634 979806845 34651618 708455725 155208038 238240282 132611704 389294512 800938847 969904855 860674749 945087569 781265250 948751628 172415617 759882367 4403233 521530549 690698481 875485736 987768661 989428912 341574262 869218954 653079335 929415124 726568548 820419359 390117951 458000162 635123348 958702213 424390412 535052549 858956018 996579207 597177630 793661014 694214461 958228587 722381590 895810903 733136555 896315231 582932497 597783141 68404797 804582105 466019362 574970941 185354758 426874078 459440193 698850932 414222340 559070347 101004678 990923317 157975819 909766111 629609144 985088774 550932574 770602551 268904893 646781384 767008888 815104232 917856629 968555751 721447595 860933537 955006523 973334781 913123832 993660630 232585500 565446921 462166399 750588167 500002293 527079093 701362680 786680925 147253681 908220385 757202477 894578009 673645838 918382021 317451454 385138408 742042559 863427674 207800574 324673824 990591295 990707562 347417769 919335994 943632521 975094789 945668067 987877432 464153823 999049523 640913951 751578380 243099358 603717971 989908875 998298916 834659045 971818206 600772618 846164705 838259596 957242730 973999898 990122741 245046833 910353864 85865758 742589939 483126551 787226675 364569063 585272830 514494896 877733728 634054767 756891906 680007379 735318819 380596281 872247636 754108568 865830474 735405505 735414053 562170658 760707955 320259019 957813314 964542683 990612239 49981854 427160070 437825338 539480194 655003980 872228897 874572634 910401580 491203680 546271474 64335244 396561107 269028533 919011989 695698125 999738110 650363657 957745262 805563352 940235511 876909484 896581249 766377104 880881769 901367725 982675252 169070445 759571969 913745769 951861642 165513287 256401976 62906860 880250323 485713181 586838309 775760463 995193094 632750598 788812801 261121721 543599850 665558228 978190491 136482925 202723138 952496908 979119645 908377708 917444251 157885470 434918636 797009315 897418477 863741341 983184273 622910486 690381199 35162415 987119630 942978836 951582840 749793374 988076269 151307907 754900654 44290997 743145238 513216757 727828061 313850666 336166109 327395202 872787357 387775928 790345573 372662844 837991951 172233605 726995855 904681455 908715646 604085778 750210032 795405183 882104972 984307903 987241066 253815934 673365562 702698804 920358039 892124986 922476951 417556627 658002222 189980207 999707802 268453151 673637502 78457908 509031010 333169155 614747477 732462762 909029677 711911889 934366691 837874598 943420309 360080320 895966971 187617450 763700811 903033014 972403532 218803164 306292620 98644031 336117951 215598872 769724910 646069948 884510498 9877218 752037105 17175046 170753798 977300399 982928195 176375713 752110188 477180676 745467947 125378777 761968632 63311264 294201191 507648404 829506194 849197264 909809529 804087747 911027653 528159705 596944475 276011613 348341089 63221010 375767251 240856727 306945651 129211005 371485411 840856604 939598310 461585703 645839186 834724832 973282795 762318883 963724719 872505930 875988925 438206346 806206893 551331850 633472880 857267439 922451080 373731865 474412190 22577552 687863914 174617588 851821522 537402046 663377735 721232934 764872127 846138194 895929121 458833727 911140981 357957617 578030650 850199770 908979219 736543122 891742020 137824162 446481908 797559139 998971107 921303052 972382209 681404984 869834914 47936297 570702422 539469567 596184314 589325711 929673127 882941844 946143756 238004966 890309539 3264519 390471904 923097967 999549776 483427766 626685087 610140971 749559006 658426271 720753343 82523815 345124330 267691018 850217381 400935953 692205077 486922424 665788136 970619354 976133136 383459301 686173360 101375234 525970228 896641341 997990339 869616776 940046989 648618718 915261963 925424792 942207868 833100671 846130061 961105079 982307191 388678797 603707412 687426774 984051032 222183453 254176099 156047236 912854649 691907396 786279521 67276392 866004092 65387682 231687140 884145507 887478724 661046440 791937051 407287552 898998242 512020280 837803964 492759760 761650379 887219397 931656537 671627808 904497255 189960577 296200977 268878830 674982905 497469198 948197659 329102434 618937736 966174511 984536307 333758974 381463590 197681787 394925754 306742390 374237464 335639069 455768064 141891963 388566297 461628358 702443830 893071249 923544483 307791616 544593661 490598340 650889653 569190080 763115354 575820935 651735688 885377952 915724133 409903783 445483653 424543696 684055221 365263977 390284280 612795790 896939936 420343439 854239814 293247513 359218111 655056619 843048590 677013408 877672107 708189015 792412027 841225329 866761916 921248278 979912074 810992648 965341478 929946936 935016554 988775470 998969932 925533200 935726879 475155784 903282489 783626318 973058444 84564124 591117734 836537938 982671431 383527889 549964025 974515695 978254428 87799761 567231797 869908131 982772453 896744912 955787095 620645685 910810721 817139246 831780609 780213225 815062217 206400740 372350769 171054984 485776466 891851104 917402116 889436531 997916418 549853709 873972417 605901363 710877715 941825680 983397699 343802807 518958437 467865690 806993595 633751344 802929936 821064145 846971070 846542924 986268385 892248745 974950185 57444468 745350686 918875740 932292469 176180519 844586337 549116356 972548666 572483009 597813739 743366556 875276852 794823887 963478841 584041991 677619749 917069873 997463740 61396592 754508445 164872661 554309210 933585178 969443214 596323987 632142852 193557650 344683606 959487676 963046024 998347860 999002883 994458381 999819499 299275356 416726558 859390277 993519571 82847057 177497677 383566039 799433304 104583040 993274224 354651915 766025722 117909804 991485416 536997941 816581058 729443982 739769386 493565861 901226438 654717685 990417674 519273580 907652579 713045127 904088688 829345609 977369988 756629148 766988530 913229894 983654057 699224209 783840724 884903535 932422667 903720657 937958304 478544522 802823465 58420231 725535944 370523764 583402406 202706598 239400570 628177724 738026479 511366176 883573955 117961433 370674162 880781991 979414860 509221492 778966638 899158901 971161260 53619473 953197060 732865582 773231887 34144910 166414521 300917054 473838020 368316026 589787437 406854550 570743431 22792782 388848828 311843615 466721806 469907386 605925595 356853256 602607931 679482522 808961091 147803847 765670308 814344419 909767753 161365425 282341324 131985924 669456982 348810829 380765140 430497380 825928218 235791676 427558080 34057836 647326526 641398549 869664572 268405856 674606054 21805401 371414111 978961646 980545789 626315980 973663291 861279128 977638671 479888349 991511533 784171254 917452367 54881333 736521431 642765410 837913789 916192675 917543689 453120010 966555992 419232439 962037207 958730187 973057498 546128490 784618998 760968037 987886567 37829560 717444804 10125359 390736606 974015447 980493808 823948255 947719456 250477941 443013091 57643844 346334570 249045419 932459084 904143024 954660751 31625904 284635453 954585533 986337111 705032061 943596630 12345582 679230494 483359091 961078027 823157522 872056953 965719257 988497219 158322504 539069740 251652076 269760065 875950188 918984190 127341525 362141878 684418405 949600843 411286535 558755553 427915763 795086028 116571039 370593778 373658991 473845928 845657615 848473822 641449779 832851063 825571345 980615862 787248378 830668226 561756075 634408542 730279410 758504198 412154465 654955710 538203885 975022283 371962995 450120820 536873880 874200751 678908193 931522429 926126152 957715554 994775303 997441436 750234650 858314828 813709281 849398068 491845500 964376811 333793822 810554006 634443471 840366046 220214629 520923048 519546478 940867456 357352256 888850147 26000189 390147490 380553365 537775416 298312244 371883318 371514992 721552330 392552611 737572559 804101866 918086176 816760139 866381604 326795129 392369058 813942568 843978092 931462875 933081789 626388100 649761753 137427459 649180429 690805808 923375467 814833270 949447417 259512303 872507575 557252022 799093086 759024825 877708214 250647897 601708057 55323681 926632075 888737190 982876488 198162822 220569395 969725281 981378534 958942248 986002127 133653680 199253728 66641437 401960477 194557197 291155939 788269332 949451639 827799809 844303708 319665053 418442788 912079568 995082876 815621408 860951924 396006206 722037351 607646125 960039167 296872680 414415636 804418012 955752497 604354341 622242339 324345358 881343765 444084932 674664535 695482641 709713433 608305674 873044095 500409954 809883918 952699625 968252380 164004671 319309797 745205304 803230992 628075973 665608203 889167370 895861144 603106343 744644211 609875324 874453225 690824494 897191360 237331919 858440875 289079874 550724649 84773128 735833391 825817338 933154704 93691714 237610261 897274465 988274687 276267358 841269903 588261420 758719446 759219710 957038939 664223551 943343555 472623638 579542011 891343103 973259595 464646882 974758755 188155370 744302120 503408757 912305519 4358615 23907963 353925688 799480311 305667420 603443704 692688990 854567922 910088017 962574279 493438334 979451564 564307590 702971166 600134924 752395636 519844963 520194526 245773890 738220018 186590855 771437518 453158520 873211102 17508308 767206539 793727131 980071431 182159544 560029148 14746351 16617998 14687337 369698153 10538235 261020092 132730360 321400249 984238041 998821692 367542212 562310582 650488749 926576894 964105778 965801433 605851106 908698224 599926556 924905066 388352688 431499621 826859400 991734240 683181547 721818619 348200515 580112260 249357558 481285278 472534668 485838214 639153366 809035487 179648969 420511067 576110936 755688660 580479962 989840725 839353149 864160152 389642217 996304177 904241579 992426504 289910212 703534849 896808901 996526329 782656284 869758590 229892016 661243797 67783879 491640212 585243520 736871981 27734158 94275583 863534525 925434351 809326631 954160002 330253989 968667920 190443990 977836523 596339362 949308632 155065237 748490247 170879454 441059541 223366180 466540062 40717507 803086378 539006775 930370573 584664383 633068771 227883067 298893842 267906540 377333545 211464218 307309570 829099290 996650980 474834560 564600022 328337100 440851777 59963667 824586011 872513390 905509712 364432436 547313495 283482680 402381440 643946247 995797877 131522461 148040548 526928968 785936035 290878652 887393506 322222562 496007649 516770594 753697316 542402797 565362706 974682899 986245021 893293098 942832144 919346729 978158422 205892991 424966308 470097613 524656130 808768500 905641740 99635747 199117681 863205334 933985788 485788165 650600095 375499918 603762961 222997224 941316510 845368644 853020621 230015258 463954086 682327914 775788711 377066262 745194678 831563789 856154534 549261839 732573385 988336251 991754801 601517332 882247644 844384213 844984445 154985474 339399245 850100873 985704030 43139936 56759549 92424430 582180097 336236191 677204096 388038662 518606926 170842218 208615828 75872867 185122945 794666137 978703824 321687839 804517237 508757948 865268913 359894239 637967186 1911818 302727861 981422711 999274184 177741183 980743025 811939102 990572346 27538706 207714413 48234847 697971014 620851905 742914636 783160575 895158686 109507519 546463132 946079869 993155397 63656292 67313482 75093162 923953338 812302122 855952969 283005159 811880997 762445907 909355890 269259651 580524900 525716200 798085130 844405993 900259369 429047392 885644219 868067617 976177221 657886225 778247270 563099090 673802343 385541623 973444548 105630749 909999132 899120742 998777834 735385806 834539700 448464730 711991599 199401532 224132539 947890272 964088053 955340037 961365395 228475022 366821264 704161203 787058603 81510991 986777293 582566691 889836014 656134605 943418538 744906523 781095975 99973275 185908010 815517268 828071806 557331179 712934388 785055326 800402147 709352061 999167257 323579637 704359434 747891986 944279868 944739119 982682761 932531091 977213733 513745083 840935379 929173242 979444313 772834186 911430120 858346138 954940949 508096059 671233616 678376748 711608442 37113419 801065305 427801188 706973492 489564407 850852478 887214681 911443976 945344717 988214548 58121383 798044786 531962471 647007815 539617387 794469457 926407533 932836952 515294834 688107285 843439712 952618018 250326711 499731858 514248973 730605441 837619582 839959846 725133156 997185709 943333764 986584104 888902553 944839007 431215255 587681031 855581201 999168732 103642514 569393919 464458653 818499752 496680164 540554157 537789115 909461219 922433678 968186055 50982675 584624559 994487610 995311854 307305918 958024071 409130660 808783545 971864224 981214703 472672138 723230568 315938577 596795644 764605448 955820180 887139930 986664854 562859499 906469941 439467371 914065996 982789192 991361771 516950511 774149099 956445863 990446100 582986091 739510651 920072611 940510578 354191891 494661982 721597388 780204184 440618164 599369247 897991287 900355572 389740148 757099588 189212203 913363691 893966758 966101709 37568953 684767942 447672777 525558707 914143264 986996397 558061930 643712292 867927684 984926858 762679068 814255468 517749319 791167944 296122800 584650186 418411993 486249634 625295977 691775374 116043814 617089892 279938982 431208056 15113174 861123364 131628210 446567252 283531483 946095687 880419244 915471822 46331256 815825132 854370855 885289682 46866583 409374766 65217131 642025787 713889020 811833112 541042392 950974841 3971022 974460956 22497456 898818491 557902240 594501792 643068250 833617330 191098216 510083065 472194983 759042050 249297730 804511953 805190068 860770538 536014641 709772277 678043734 799647302 514031974 819095820 884858557 955803426 279735737 413434461 742071521 868787924 44920462 628690530 246826521 667287467 969115181 979425163 352720077 488147480 135979570 173779430 157489803 652075423 801461508 902240037 839843000 892710965 935150404 960623649 227067646 418792340 478354874 984276011 881778895 975803945 439048565 978060489 113036281 851101543 335880119 936950774 650489911 796751918 381360992 482177290 419696931 457191778 657806220 817374458 389914209 758920566 407416577 622060694 477670230 845335489 58933740 907733841 827122357 958571381 944481860 949531573 255864017 287127045 276172151 664312856 195726314 939191324 969158959 971706672 596959643 748731380 221805939 977321400 252026023 915890584 64539919 150310909 151229143 995819815 6507431 930023248 257441912 701616251 3959716 234893654 995228403 995364473 394704869 945426190 351937400 669106407 670256838 947109657 953126811 999051915 99869420 623956091 112082290 650559862 799543214 881597497 903655514 973827191 366896411 779820779 449677182 978336884 100975401 275696129 103252104 610773170 978893793 998629030 880034023 978146217 845323758 939253946 627320295 679854860 695532695 927183977 469063271 737972151 707081110 848726723 133557833 426878377 643771191 749538183 375351952 420674522 324928604 896071543 300117531 306251092 460264840 691892234 480374258 647149481 222206703 725927839 959865709 990038618 168348907 461563847 123456574 843717691 881270086 890665058 123830947 468159599 431556978 919327896 16612642 586099211 99610012 530638522 617763342 832163766 1730029 118184350 743452718 933104035 889140591 996899693 638978773 657090596 829403491 851222281 122755100 149578796 843801183 909184622 942922986 973831432 777308104 924581851 985223226 991930812 267649044 685363937 90781664 593064922 888978030 917571164 681521234 685285111 764416420 964164799 983420348 995716222 702736498 761246512 22287060 842804029 729797360 755890474 806873066 959774203 752076718 815220389 14872404 523651504 929355058 989464234 911940647 983717504 783721845 813000170 992397132 993197607 975853884 995024631 490286903 914896550 426317835 470457734 34906753 282164145 992516191 998962397 862223062 896125370 705425521 990762065 775224133 934958010 119567947 863290877 505874021 655006510 106519100 439004849 422254860 809745047 612469718 715525075 308844765 571435394 140046685 216059245 512308992 889316533 829852671 884287432 281242946 785245805 937095037 995365248 920456850 987595106 392453496 947002829 299774631 613989172 770730851 935694117 71262884 90177361 747241101 914437273 469143607 470749751 889641985 918878098 922652378 990796876 14734333 757441991 633895826 906518030 889635004 935037869 730908511 814779444 131194158 625871203 964664430 996030931 842846639 942496528 146430420 165114275 5016272 521618268 300336017 322465120 662392705 720807161 507262811 746382684 530133583 563393161 529639344 603265145 863906841 959797087 917461821 964892025 563785348 614603337 719371845 813099830 565685011 855173149 791637104 935316953 569226413 763696644 254189565 458153163 485698234 600756027 141382041 526911431 576588969 863311413 708401863 900335534 289089023 754740921 522508017 736285678 249466249 781992797 370570098 572193393 35592989 373527625 24400969 369154043 743770292 907845659 170288742 494938423 32161443 915088494 158246657 501940642 967158020 990927465 387663630 893824777 22953536 132614602 234626116 859430203 458693654 984172201 153192590 899248439 31205445 142262438 344178884 374746593 411166097 875667848 102429131 255022106 202944015 482516869 813898712 838180609 581518686 678961988 492491523 556429206 824843036 854794698 860674510 970499214 776798635 917620350 73738736 296679539 807010901 953855368 564941893 801133040 190663877 919219712 720632616 975066397 496926561 521563924 826960362 985805755 291310502 688489962 79736285 425585757 999830140 999993975 627974638 711336758 882671214 902865641 847047686 970170790 971602208 979384811 768842486 915325842 534632950 801503491 517097551 603227041 508672184 924336105 487000717 853508748 91157092 721735520 882932653 910352954 121760571 311659891 333424065 404265678 169405341 774210599 536365306 561032083 227042984 237517811 238320531 404722601 272884717 526835532 661289032 676834831 838420444 965636399 969716555 981482382 462384990 784079534 335629484 479867093 546054716 869881192 718491206 810227503 455177527 541605610 613194354 753474642 951055609 985196520 555847342 725031521 334150488 520073416 217140816 349786334 895651812 965057981 485126629 683279934 880045268 925975885 869745223 981112597 209794272 313796871 424041703 435903891 167156857 880709435 974174849 994629903 170224281 527154687 950326351 987124522 295781960 796575565 235789693 269853059 70671782 478258554 919147331 975781812 508195925 838016597 390052494 799587597 893982202 923991464 18899497 942153514 29715611 976484424 80112646 611673142 860247252 913766792 97473177 716846233 945819796 997088483 965490919 998571980 205945603 721752570 839271888 990812632 859730336 865079341 665301040 922980282 197385579 827752767 697178837 864299399 758518086 795419971 13283815 234887635 84655712 339247293 801727621 848451861 857143579 906218503 951169566 953225575 451175040 833338822 148921607 811343991 669088299 991431436 198950494 419174972 528221916 790667144 148205205 821172251 612533782 932160284 139959870 383889415 706753842 904801537 941542398 947419507 363328273 896790217 823214427 902296222 892513573 914997101 965560435 988541875 617003272 699544354 457281700 621870371 481112742 488131968 865135875 885473831 715707395 838010088 415671360 424591486 381101523 837671348 404115916 697643815 91623876 491695426 82780651 843237755 149358637 780616716 618944063 941095892 142590440 627625616 481016017 812461299 133639639 154903813 566253145 956565002 39430815 162728485 330183090 893045852 660354921 886115640 190822243 215802377 259398864 502381403 16094138 495667270 826086077 883718809 549604667 798009464 272934729 598519079 548122240 929347143 674559619 881069394 735045993 744806062 311871525 407427959 325450709 860793152 722959554 899991621 630197187 709099865 415916160 650424967 476359654 819256167 137454670 521688062 171572972 645538302 987598480 997807227 667322732 893011109 144498322 844720453 270266893 294369740 895499281 903517953 972196981 980667375 936736096 951083092 617788991 882100297 142601751 212744188 969780121 983716661 406113087 902372694 754583034 825470841 426789816 603758811 494661567 735591165 32992525 456420524 943154430 948860987 32845654 188536002 724336706 776753528 134205193 184738838 176613009 346206640 168992504 641607395 569495330 871488735 699705234 780287804 399282634 561852456 921921008 985488817 758755990 774701914 17546059 222089756 403445393 415832221 403549079 684159854 527681608 853122623 389197680 807734140 370949417 630021716 819330111 941564710 761377714 852599797 218069967 483316742 282493737 398442851 629856861 910076157 397503754 546404314 915765874 932231772 778187524 890786946 570059640 913516167 891407970 961708455 184302357 999432797 195358683 842047993 840347444 920937664 431238878 884708956 644251906 830151749 329336281 554519067 248809738 849364300 883793588 997689120 294574136 342436608 604998635 762173067 843911770 985225592 427752214 743547960 279398829 416387528 867817740 968035543 865078533 932603632 45920578 414857008 202990340 628202777 771841523 785634829 578227730 653439498 295308138 602552427 161969235 962272629 631710855 894586649 273862616 919273506 845297051 944811769 634923872 689041250 823564102 998201224 200081322 704231002 716873560 815924985 149041324 461193378 424128064 560890322 375048845 505028649 373042732 959059070 230653725 463038050 798596855 831404764 960478140 985153147 299659838 330596809 695167060 981040499 880416691 884897248 627906247 765609719 809686018 949511994 935633711 976041250 774656498 943088776 757276565 976473686 22405128 489816357 436713698 676699100 979991445 999154877 894841082 988769039 93199515 244228559 870279071 896708817 747726249 760237578 558867356 983127359 708959003 791536274 265335000 440793023 197970030 467215531 44780883 919149359 929843574 962062570 385593729 815169744 779091493 811804879 154371412 652441805 125916191 814752311 714412252 936637287 175802300 728401232 179561530 779373871 105145488 380583336 375108320 872581890 307132748 699177466 274865439 884066779 858205957 925187249 112731131 443450668 294055283 571141537 101700041 484625670 833395526 987493611 785762415 795017343 367227214 414175067 534919642 554564725 49587927 633164635 647882459 855183105 957395470 961954888 685482763 991503840 452414223 842538825 177255002 948008108 233223275 337015923 755989290 795363301 603884588 679054346 901906588 909464755 790319714 898816993 720033942 771969288 14675241 953326543 189531764 329648880 783359951 804955399 174827113 227533125 368847446 469894014 870771809 948613035 134841969 732578751 444630919 932351315 83892666 925709695 387483483 897453436 581106614 905892353 839114181 993309103 731259633 778566037 268864978 575555521 29277688 418624862 594410109 787970339 732151483 975576378 388648045 964497928 756177224 892494390 489848217 939136117 750782764 949547436 894410949 910404177 136536687 180456105 268490207 627273161 624943711 948651593 982534936 991501386 767985431 783617579 910244559 943422976 943868950 976570978 591413458 914750299 753591853 801132839 717014408 752567381 794954224 931802919 930667079 987289448 790202587 937630323 96038929 552423201 664569929 823952452 32087383 972120073 112553341 516550350 81254465 801920102 718939972 785327267 159417352 189644645 672740905 983822510 928680648 937633845 542776797 990621709 515440309 904192946 291847763 800879574 568896812 797417309 219612431 621068279 955046694 989497583 892885627 951686162 297189720 348559472 236339505 660473339 349111427 832039128 156501383 409104888 220926820 596777861 348504433 532914095 851359474 913076070 907311706 985719542 194749589 284389053 675836552 748839078 556760292 676758702 573941247 819692667 878266027 884303218 658330122 916799323 413024431 743508946 397815914 679130851 952479825 990233419 304106365 603753783 767862526 846691859 442579192 953279873 233552142 383811256 518129798 963902985 200381094 642090094 118182490 701488884 890610249 996732431 489176908 842989347 506396813 532956379 895426962 984105572 282728611 921453887 140674855 584176205 822926602 849206620 73036559 814291353 930916889 955104763 197537339 656373933 999933172 999940308 968012257 997151777 390062020 999618781 746842021 918463047 42982843 192312907 713389555 900804982 609426702 936841629 468201194 904969025 479095667 608603922 277267525 606954394 108149183 358770734 640712265 796547764 913588922 939187146 611952963 665536715 691414735 802066980 84773029 800770462 153624551 803838612 744907289 843697490 659361870 873080435 650597938 852798180 670778568 782116121 506701050 752026943 974421157 999572392 507191181 709770987 524414958 847966601 518400997 586733235 604895592 635172696 20553237 589065443 242829223 282795049 543507637 571319211 903160449 928592135 104214287 995942672 945712619 974183060 635266737 777481891 325089986 377079020 868242573 963270741 22275162 734275264 874229655 912471955 854890575 886322294 448337843 477917611 22975047 355293397 315737355 377042480 835356489 923527281 31257010 996604895 610677800 892688183 677036688 853544323 867365758 869361680 224024470 600182778 930549392 984122713 197643778 593576584 896282409 978370883 205508571 489700375 538564305 653745967 51779490 497587995 243271598 707772549 214855667 392967674 85100165 433797290 560081552 646415921 655038256 849837543 170024440 974487729 240858616 764242768 856535677 948914167 665539328 983000053 628098611 810379072 640268704 900691436 270960699 431219666 133828923 805975296 314439251 959892864 703075267 857793024 89590242 617249020 567648174 877616088 239419616 341196557 248122392 328988675 491402771 729699330 737938751 771281389 248840903 784925691 154102429 840150432 162752971 670424363 765135489 886491037 878475954 929306441 452233995 693904909 889920022 952856386 602021867 688313489 763794991 772653602 887394954 962239929 600625958 603148856 506045061 861941056 284879780 788607898 364710172 674030430 613254526 888066197 574093424 893669331 970577456 988315074 205842629 930799512 444409718 607007739 570643157 736074920 504235315 804222213 435796500 901534436 682236210 741762246 554483358 828383523 177419738 589486905 585994617 800952193 656194325 902835706 2647387 376187059 173772451 210695307 959955135 977883361 136609252 804676088 879912430 960260521 297227514 540227500 516699686 947783824 554311781 794409010 206081792 904278334 926065530 990492451 922771702 959971693 950611593 969510415 893396392 990455815 908126026 997793178 610170020 740194155 129297309 373514139 647575588 672970372 769014245 894646230 987549582 994087397 674306278 967686115 875313069 915630531 958207779 975747273 336220544 862015682 621348070 946813110 942625027 958077186 349655649 487676118 992632108 999601984 879640165 926966291 64462339 408153286 483337982 948536817 955967560 971371590 799672879 924750449 504893021 745310550 811192038 897915196 210973468 252125375 272066484 392042682 296935528 568344824 491220533 519247828 54505861 85306920 594854783 746700139 201046263 351284793 854761766 955285030 385173658 484860784 481113294 872898027 455317982 960906913 964139469 995014691 305747514 391013565 645866340 859384056 811694106 907712511 651898169 755979746 859125323 924439826 734121421 932495292 930210353 949378500 897963491 919915002 944502643 990385328 143767934 710087157 952234253 971879749 726487313 997283215 975901911 998398185 447588002 766573867 509737758 790730229 284036930 456786105 487698241 810324458 264173182 769242263 68696888 324377460 893752502 947590588 694638433 744810272 643227362 822408203 426544948 461332009 98331874 418190387 250599717 928391673 609143315 767994397 598825010 814420713 164615213 566954463 323940206 474853226 713815223 848735697 560005365 891872524 55523224 352551856 152486577 781067023 919236890 968514532 577378202 699243413 407318844 940005830 560733654 905143822 256517956 331162558 613066593 635824029 771097744 947188041 527318583 821868942 167358129 664668897 932293771 990634349 320553925 652178415 548894136 876265650 280573626 967508109 561120489 713312060 392233085 575804858 199246786 444148043 758348155 811189675 200072165 768818797 576889734 902122332 176250925 621060261 370036594 649057986 437415739 747852008 881847972 982441841 774085000 896964371 790933248 935307685 629717958 940316311 710311421 980381601 901241936 968680076 348247423 413551801 648619994 775554999 290076435 675379307 505230734 933074061 310549199 663611324 83007845 940014100 100672909 125925051 326091713 454238649 196652100 985023976 561309052 933715312 805754983 930805556 435930760 850343133 833571554 984605869 988230400 988717744 374472079 574639764 44075936 425014641 146349124 495897058 737619831 797927641 335880819 700448731 366366015 522345108 355064500 502398383 894515405 919897722 201792480 468174969 564408463 580924572 929061808 930753929 61883736 441128508 42711772 985503298 95515899 364840757 907886213 918823663 20748190 221336181 963930688 986801734 986077614 999744474 356359727 444011090 128877111 832761048 142354504 435867310 936532665 974261258 524192490 761203864 297498720 423976527 419707813 631915013 569191066 782728352 268099168 608780334 660333410 950343536 153242489 695285283 470522831 912971368 101339384 516166924 684692370 880794106 856118328 986918535 546986157 965743617 129590157 858087107 319296591 966096526 785295029 878131724 483309629 499115962 45678554 898456268 362195152 540788072 6816514 214602430 270101637 312318876 572656259 825149986 267345437 643738243 937265456 993856737 236595839 500059873 432972773 528611176 907664712 914908481 145072300 150148521 430572847 943225183 861306656 972446508 687393948 883218241 985424414 997010462 741228512 961978106 317213687 531469931 187378702 245584234 574918028 642134549 107454373 543245380 201904089 373126364 757346043 932354929 133505226 870173248 636669426 981491883 709106940 946772597 459596153 892266004 662522696 712282729 787766378 940383721 4723907 199521648 9860261 522749385 483933539 956222824 367628500 633138453 867329257 946685841 407934260 666983885 677673983 679449509 818532256 953110883 222778884 497525544 188744711 744963359 928905741 962967227 379010383 613770703 243224815 846961051 755264979 977998034 287695678 902425976 114362733 700283526 911695797 956950766 975917423 995623482 852267557 991089440 285485616 654350610 891691091 943135891 720939826 974226381 535482277 951412069 808548048 954099521 91561653 121632096 795089060 803482277 361261196 876677465 828491662 918014808 168933258 450343133 306018639 676923749 823272700 951708031 472536049 530203952 544488353 982044697 733321518 813761067 773403902 821691327 212500939 610420931 108084585 500499813 888136908 989485238 268888302 383900649 177722694 294682671 206440246 377990691 809207123 999052236 640824458 746390723 926664778 959679509 297244778 822136534 295085718 762634573 278500229 394641039 104957930 432675617 66967965 710497600 5188016 666295596 214310431 657820086 822047247 856636099 277730396 298027888 584149056 998303569 741092971 766003677 275369178 978821940 195248063 835203032 911506161 980537719 51335222 499524429 223474904 500837805 345336404 762194761 85299204 565186268 664449537 702632614 10550696 195651793 33918686 758665605 448544126 769311681 219152041 718675273 18801769 945319434 393109401 832883331 212739292 700090144 43706464 741897059 83488210 862066608 126782174 174936737 727447783 875308632 190060922 701942882 900344995 958698366 3392024 734479348 669680692 812711098 572059401 788697330 951326759 969888668 390998823 524383756 691602403 753254744 991623858 992397260 244499634 886408211 7503897 219917486 985785540 998557560 657597982 872612949 477609592 613734533 168743603 509862265 219320519 603619761 376658719 912626499 220648689 915651203 770949241 862821187 790290234 999208143 260173773 943089441 600552451 864752838 116276307 881535974 338262980 804120786 576046316 704686804 13019428 449263599 89296396 895268990 333133248 403871811 465330366 762922092 573110176 765761533 79908368 232909788 601939800 701515937 880197871 976850747 815461216 959914959 961971955 962609395 177889985 723803676 465190557 560366447 409706028 990040050 927370355 971238524 133119357 768508814 569650634 976277041 985293865 991715475 334866518 357829511 640524882 713509504 502813823 901464009 915697228 979429875 655685623 714347406 444084478 545031881 854305300 968734823 464975112 818077211 534822420 771484564 536742994 557601291 364697173 847159269 150931462 879587636 785094700 990073272 649777463 830525532 417815740 502781695 317215351 468283510 393744527 690377578 671033690 683083046 425638049 698402624 143906753 790528927 535851721 903094182 174506673 688956842 968692384 986705007 731608165 788326168 190830848 201854027 672324758 916862831 341642035 439491837 405747100 721954974 663050998 956947195 530731431 662192255 101201826 924712277 535170 385420265 259634735 658483881 537258961 893107377 767588842 982988058 621647446 688626355 471581728 538159183 530552742 873235576 911124124 933363332 748659823 935364392 279618589 906685501 29910427 582091898 934613878 963130260 851502291 914186330 679015656 887510313 6661947 957787182 707070429 871596627 399438604 581107296 801611007 916825586 71414475 183087212 633015181 808655941 288237833 713541522 36984557 739294148 605688697 939357061 650311339 665637514 549076186 863812907 884388092 965355070 390642552 939653650 958524456 978634304 530041146 806477939 869871229 881105750 380906058 527142922 737769333 983163407 210956241 873936091 883166214 946331849 393022493 827550941 135311329 355227040 608346696 850424798 40258081 607542224 413488478 959655898 29487225 359061898 433889442 436085345 675689851 806801251 57487153 419417839 792597490 892721365 199462898 863458520 699226722 937910420 230171727 886188216 796847853 840285194 123916946 371737691 330747273 956493745 17960872 180277779 959401160 985688008 392489632 486928132 434784209 504845064 253878933 279196729 425529561 474649553 15100360 686162061 155270673 917431816 226981005 832990352 608095706 976186789 478114987 779686007 296910321 505831366 421370541 539342778 854905238 991941770 416531482 500558946 559883816 915756006 666001841 906401744 462239288 650907416 954174767 986471781 806447503 989173496 152278487 510794347 687700272 912136326 258059063 544223048 232497977 561552971 31302846 381886558 784914220 953175881 750842459 978238822 77416076 381874761 335576194 822620534 83646060 688555367 344828757 585190423 808079725 889368060 935084113 951537460 208518886 352919022 638574307 831570665 32878212 247501631 8864590 173154125 935913303 947296580 168184065 598008584 484985749 694087409 474778853 497914257 547020384 620616494 789882514 805500969 495945356 755747628 536985442 721046599 46219029 890498731 591404625 970399442 310358342 488789067 719773093 855193223 228714765 305130485 827797678 856459013 821372470 865627454 993443150 998119548 560693039 774384332 988864071 996472855 515200291 850214994 338093267 721567210 127270674 537999857 897406011 971034964 206311011 840834648 336020316 684016576 674956183 902870758 417990140 812954723 255503336 761988216 951784514 955691320 875598425 926409835 869262071 979162776 854037997 936450122 973467159 999927246 519939468 560622464 418550491 892076287 191492001 390081837 877509266 940797611 151262525 204642323 224662255 852972619 991822397 997820218 829673331 955063359 435700889 969516619 210997395 370384601 347596942 904537549 171808471 462781315 401615813 500932561 100727851 567587254 949580642 985608733 513323008 733182020 2985192 292763133 68193221 243227517 320522313 969128590 960467975 991951660 766819287 849155732 433192076 904935374 485550870 536169107 257709955 934739139 359253056 833059303 187571871 430038070 53118746 264573293 269161310 513485223 422025072 632636542 173767914 707607199 430840962 686316093 289663740 986959972 198738286 501208613 190040055 236594567 758374559 876138243 312777050 944942166 557827987 973407087 969213224 993942133 582440310 763720425 581997306 941663697 3492187 503083201 86527519 317330823 209403250 245169954 68131273 160694638 343438828 637611855 104364181 741545173 357909197 974537286 203511038 424942846 595514833 627811645 892482795 973194642 50727960 519446557 846982465 871286429 980289479 982633387 944892574 983232466 467684532 653764808 164226833 497414731 84279325 90167696 461294726 870350122 846593049 871064962 165397070 236846636 9580664 928723197 680153224 958742369 799635773 946831135 688128272 858006774 40597084 301918409 617742240 913625419 147323488 939556163 273137088 714302659 82812364 891456899 413649782 728874089 685893104 866711253 380465275 795174504 352770295 606940767 542797711 677844868 611061363 890556888 223052952 889500690 730094817 919262572 168664766 249966238 840637305 919152352 437537161 888687774 42365704 988742205 332317866 881322030 23707477 416709110 199324128 646456822 308738681 657841234 714535485 940569153 434518164 989145531 729631793 865518175 126307533 346865970 670303060 982275932 43379777 354953475 430972378 755608717 269507928 409383425 415798024 746826356 173951145 432767853 66029736 626297868 310318658 496758889 339790432 675668568 465349036 585207571 821694667 898420667 710185243 900383354 224366510 838639153 649527479 977782305 945611299 990960823 583843879 842542191 219188562 967589061 867885754 913185119 158487058 710220992 791005552 842993287 884668081 984454975 887680519 930834093 447305608 978779688 789198161 959678209 23253935 636186101 162274820 555168245 589252320 745613531 582757098 638940696 329261879 559715412 823544417 936403803 687327654 702460054 134373727 252122377 992616259 997758103 723994968 977635314 572207093 638223865 133451570 502036825 97599427 756783402 39212100 715549428 854078520 958208272 248953744 397403034 20577774 834458388 371357241 778164418 616455687 712190224 5315794 280549463 823794130 901098605 151165124 303537950 600977856 622323507 99008728 377941291 652045433 849973218 508370565 793466119 19883551 842438319 138073248 208590119 275440539 943313049 13272388 344217614 492876322 643614380 607148562 611656035 264233113 319169972 924149916 986697256 76104349 663296345 766979436 871338287 161745420 690921029 317582218 829898763 613311100 614461250 502562192 990675743 967851353 969659439 174332850 745338010 342981063 702904932 768145655 860682749 778345720 903453371 390954653 773240977 578758956 792282113 172749833 912302903 336107432 606396571 290223313 439400012 305402925 973012652 575719510 739518325 144604777 150043504 635789206 903746319 735613978 758571062 739760482 897041843 689123078 881767160 399902418 686316936 157758756 844647925 979842596 983502306 911675698 942507081 253677920 923131154 747724879 990311815 576294379 716807495 636915280 852373066 211016038 275144529 344821090 672175642 239162983 274644981 330088553 748926224 350501066 933718730 786741244 817466058 664788157 730051514 322287038 764266623 223221906 515471407 858306865 939688720 568848243 796361285 393821695 924643832 46637759 101049560 844417260 970011825 605678258 749654686 724846907 834954770 473679238 620346624 941086409 956298189 135001623 477078566 615088510 757735660 399191713 551914526 118533899 341038060 177388150 825180297 181018372 862408972 34551760 335825608 243610780 398062557 37217895 101372483 956200562 970701482 244334917 953853260 420670588 872138725 864524347 890087049 102488251 275050132 15434329 333619279 715705347 746204673 107806503 537495231 651174808 823177874 472726626 553417090 608208313 906118849 593968637 761918939 989678631 997612238 74887951 238761504 385748641 754545647 678772526 989454792 152721882 276887484 65730032 754747860 87871564 650002766 155839230 347705744 861163539 923021935 208466017 446938426 733813441 906831783 609791648 992106153 710795253 892752800 570840630 981580743 104100108 250936160 524467563 934528820 934677664 969512964 273505859 374271362 842023058 874603991 428869835 997452605 247111650 413283216 812009025 852894128 339727396 612005861 707500616 736641511 238356690 971369780 975399998 989957202 651120876 830215588 821773604 845544769 392523301 856241131 940664031 997201842 174661357 388906488 951774786 978773821 329207120 440190014 129689090 821764989 276649089 572957879 204330740 447993179 312311958 556142215 485789585 614483338 8251164 493710851 869895256 933984717 482670908 645459043 359762880 468949156 102839632 227615827 301116299 747462593 619537817 971365132 521435270 643187253 501652185 986236309 204449479 383544845 888119238 918999310 158063424 270793279 263873235 933223402 512146523 705177155 545067959 738611007 686949493 707977009 160797816 229562896 289345641 829399967 481518997 521276569 829643515 908192814 278268908 884520471 712984378 945775557 784658690 805524056 700496040 713419029 286440719 703631994 477318464 593209318 531979909 678771052 387951281 502946350 446660239 726925600 392934384 969338408 743348012 938676349 707070935 781222954 76098054 701055783 656959935 991498938 216547489 491616061 431383938 981182216 8080905 990433057 57813988 194220003 221993516 411299820 111521313 128174880 92081104 383221254 450060598 741726100 248012169 947753910 178901161 424389630 316550166 708742908 751050275 892435488 603497095 926973540 827779392 860477715 222675528 768774329 657769412 958029419 133038552 968507092 632960457 833017751 889104188 997130727 474545047 651622654 142412509 324423709 21319987 128127805 992084820 993428101 52360254 677773027 230372741 310825421 369827502 741150980 399125216 980756437 514158798 552225619 343279105 385509814 521941340 983728607 938200479 967099203 95337571 493934021 68764266 628851287 315845553 386989141 747404530 865332022 649182491 861910430 501354960 744153962 968134475 996824702 761412538 772450768 925423586 943738980 912505542 917161081 879749994 986228497 393514738 646958752 704616735 939589039 52743911 341224989 223393354 637864522 226802534 607577480 298663861 537344635 347645352 635612255 561246808 753281598 866612657 888302671 651945174 794102572 41687084 256921261 918917376 943581602 550532521 996109276 827453876 881303894 680300654 981498825 947579698 975313178 993539981 995491140 546336469 592986665 202881913 259734768 387103194 811620401 617728915 946869021 423367794 675255298 236118808 840412816 4476709 205861647 452928118 660071090 203144280 825443897 826799169 934740240 522163958 909241869 383878854 710614429 757045678 920831392 253235585 534038323 917185021 918302763 869249533 920941569 927548157 953651402 795989992 989915524 13678688 831179374 995083790 998391108 790113368 826827990 558229335 989065231 252789068 829243274 180396549 255359174 255445869 668323347 506625340 577331009 95121646 768613149 160805163 963431371 569619527 949138461 831419113 881535561 565166628 974838391 262320078 843826042 682044177 777082073 138581785 498200824 714425881 829472178 537399785 960417740 616678107 851226114 292788241 718859972 804153473 967493030 285046134 355104506 415216206 945954295 781329828 951799264 161882900 962441093 492612963 720885770 89826453 527848878 650100941 957455590 223665597 964884333 843688411 866244744 633700983 951297248 108063519 503561968 847269025 978095123 114330302 578397821 813490575 997365130 48569129 893956577 960856742 968089118 401463662 981437715 997935325 999053327 368992446 708312742 7297742 331101652 73131390 749238789 301591568 793662953 535085765 966166572 896942026 980964431 139285628 382321595 889819864 955380400 651533639 689158202 674964183 701048888 82157522 558232201 699922229 792490369 597910625 917374129 58113850 472740445 382869531 633420208 642948665 668597433 683815202 957559637 221212031 797732501 992784174 998175659 700724538 719814189 868440610 910132429 589271816 896375237 312164818 805532960 395234222 557018277 195232368 251672475 667038144 720122698 138327488 276051094 53389697 299770366 92563704 189555528 787767861 950150477 916780276 988722456 140603845 384641876 874296748 921986936 349581261 833708386 372670770 456274307 506074322 677525140 386093231 684741659 579088590 687740714 474585102 892210370 820571687 966870344 573588069 706696909 463813132 514910690 817385612 875303895 425178154 827336212 194605978 844987954 175356987 824714767 776019148 822192757 352411555 360784074 204956623 572547893 874929835 886076165 172171579 384150457 300783146 671037715 179641275 223502502 261703593 464400667 933265640 941379086 480098623 533076572 463475179 916486286 574738475 669373742 356443558 698169949 894316563 947353139 425225447 661676619 317099456 745900138 44401820 100754256 1672504 901289024 586324941 883833655 361745904 873517181 144472412 995888603 988702669 994946157 976818039 977438998 344264036 384542593 932478275 975187152 272458910 814779707 63606782 795686158 477457263 732671219 34537132 85560488 490893594 525518612 36884483 348979261 614342679 956781323 643568173 915458082 878313691 971794549 869588698 887680407 493654579 978927852 359039388 998994720 663852775 986820020 792861050 920443636 827012151 853337812 851811845 961269154 952163632 990997217 355376093 361163123 503779837 966358052 118573441 520641217 517654043 637196082 447560116 510523894 78783674 753339816 572333876 582289366 166352732 790289953 944298720 988979191 350148787 706727069 729371654 931901677 518791256 932454129 660737781 946765005 177990919 294016318 827804972 870560233 702073040 708703005 554670813 829667376 787305702 954844092 13345584 475260382 503080420 532346660 515662703 802112877 333895480 713752393 589028006 848713768 898642006 916843102 305981273 770054885 209748925 904000037 693883000 942978182 371731656 801055254 683648295 991605504 200612503 848236294 458574734 513843038 236705102 951149848 964806932 999893168 68384812 785431880 545638823 712680144 820465447 913678117 662821527 744306413 335003601 957310725 184945384 832382086 239187974 648358936 257501336 903961191 235182010 272365674 23251665 620840542 312555714 535377808 183988951 761028790 802875955 882377857 744000164 971259860 538916121 590940222 828510640 857663847 691756048 776288119 120866797 682548145 991243134 993995678 632059145 865164337 878606081 946627215 658247742 995371701 240051570 348554293 821519381 850941938 586353892 618161140 911259446 981905280 949497524 966823483 879879156 894430966 880571090 964177163 347068995 663422385 727592449 891253115 900551467 975174935 533244596 555996675 474309115 664593778 655571591 914031083 943646840 944702165 2034774 937399399 976458898 993170590 486062341 831810483 723369823 866476903 941163821 968547261 148192278 414817635 879101951 974225858 142235893 634430268 519095489 576986464 990611084 994835096 945401798 951608023 31925993 267274741 151329562 633950835 437799499 713443120 488781175 718601645 216797995 894377943 610563157 941640530 685271207 769359330 61955162 295898833 815472478 933542379 732152812 967286060 709040710 846709840 394702713 438609322 253913417 792283891 312140840 446492755 871705095 897620848 925762999 955533187 860466412 910589089 929245028 956622418 735382719 891054792 938697681 974276565 433728724 964058405 551001758 717529688 579487249 812873046 144499554 232845045 263717124 910051618 122602138 491567430 395632205 488742069 307210024 553700041 161560330 919962359 763714313 919530136 730849890 813674375 174499657 473347423 603445946 998431465 152787354 723150859 966824144 994393392 958120695 987583255 697397132 847249808 262233894 903448052 20799407 181782481 342585413 783020604 761629945 767612777 312261094 797292084 734804769 981270651 368957869 942364790 717403490 892298909 777124886 928909956 219553332 421827753 778542352 870492571 295950454 574519341 393210417 853409275 405058866 742417103 905013635 923481697 690999443 829839187 133527317 336586375 357995930 511647184 641814254 817979074 476419932 597579992 444422545 905431974 661774571 964088154 538097226 621075304 586246856 617653143 560313523 765197327 192828341 315858716 272480446 897256741 807443637 923987987 495543412 727923532 605300390 758778933 826242965 870737810 357494794 580573335 875819446 980880615 155847982 350285750 239406081 677888212 26566805 400053044 216048525 702259817 147453754 482001610 52133759 314057122 757704360 951109682 482006064 495215302 486833890 886218756 468191266 788963236 202733945 294598671 396949463 863145076 968535141 974825386 230802234 798694923 463767554 871341537 213553043 971757580 475237937 591856774 615668821 671976792 538221385 901639755 642250778 696083927 644895222 962068174 916770104 939006165 615382573 815871706 776762926 857983397 466424797 908433154 585837164 743239430 599250195 819317612 402278568 584594611 833376912 994048983 781616249 995543581 777594489 865339377 911425327 972857765 959429792 992778648 109799133 561328131 342348073 587961406 917602521 931849586 466527374 850635782 461933571 771311718 281536204 598818603 975591469 988487926 435173044 876081459 181254148 621055166 230179967 237516196 53611753 840954327 176863239 967924125 669221877 850785699 613350593 779202213 76693157 84470947 562203397 619801392 899252115 980701113 791645002 793848592 186708469 943674946 220554332 913692550 480598160 542394507 501210245 849978817 282709104 318915308 383155198 898854811 248120441 767803201 230017926 406088513 250878002 432207453 489294142 886762516 698305917 773480447 361796175 406070181 340598912 792406623 944277223 948260607 438801971 918748130 774125709 968318459 664756314 984447119 180091665 390317412 513529027 767120933 15485729 759897366 743428243 997337897 234362558 451143900 41588097 947413332 766824048 910097610 670752496 771011110 730370770 762978252 333059817 434477925 959524546 983960669 429990167 681863721 498233577 584106144 184865553 680174402 574471770 596130339 53882459 350357886 723019539 765909385 88874749 551363850 296886244 317253108 466285663 631808168 430912283 875598719 465995408 681075593 235889702 763018489 142470146 912020517 945797193 968188611 84995970 341288860 435440272 989988847 373016653 999328870 877110578 902658104 990714802 991797561 680668064 755328122 147719330 785522222 488941766 699838763 972712231 972848152 423235501 442677278 677705358 941010924 117626868 343142968 591085143 975028247 572121202 674277650 597543433 815775403 81417639 684111236 842663342 965872434 461071939 859855853 811254369 967236799 564045130 702026136 913195156 941800837 96819096 626406016 671159561 932664114 228962927 599134231 750442264 810766106 310389503 383358912 791205974 942922035 69333234 634824340 872984770 930837995 364750887 853278895 864834463 906511947 399597853 822265648 102565121 605328692 128656572 196122865 491031444 581773347 165225988 775316194 944093682 955405956 700750601 842898206 543979056 788756722 107282279 393599831 623584072 789739501 731800517 777144846 516405950 582878304 294475365 704548541 713740034 885826220 412780554 463092003 601447779 771378275 416411564 484203920 34139050 681920299 579023974 749621811 641026189 740611082 457492824 627949533 523137818 573613206 888595160 948772110 562187446 991353913 469979848 736868958 114706550 199698225 396585058 526962390 460280702 817501172 954087298 963192284 465313908 992645753 506586354 739607498 646935632 980178485 36493561 489845982 265835244 290781106 344131744 925937095 981565339 994633783 792726755 827686046 361643338 863208403 456038353 878640807 327577529 544896299 480009096 696118367 924255575 996068085 403530784 718745729 392194464 826969037 286956031 721912028 17915745 622177249 1842882 920478343 15534177 520072679 625241602 998447833 561426507 655629622 317950155 899343179 580654214 744599292 163174780 680864553 468086160 947694793 15340120 586072339 185779710 470316158 905778360 996944301 607049485 828802410 343973874 863000393 156199220 397131841 705893753 738454372 501849974 651244331 994844533 995806150 178921941 801017859 40541815 272875427 672206887 675046113 390440475 724246643 744177487 808175449 265180481 802989631 171913605 823553965 651640931 838078100 216723670 489992503 505203514 979799307 578855415 846804870 556920411 890901305 277114307 867209212 342174137 884292364 612361064 670177681 244289397 831960056 941563268 979245597 978213526 999256383 817368937 969288700 14546849 740528093 849867932 873225689 966316399 974763903 199647375 771264454 158058703 820939504 362057700 563380770 571820765 596516246 738361044 846942160 550241815 756396791 827502833 851110464 661071624 996074500 320467100 363867800 351476398 928032806 789099661 818306975 560667907 921070819 171403105 576921227 473647589 581447778 973664971 978085853 608201777 954995219 636902719 653592106 960176224 960695948 67661136 525599445 799235269 911985657 318006764 513047371 200499988 462715085 547427146 917201399 720438791 844768992 533833982 582670286 669318770 831835340 345220240 886638701 58259659 277447562 135061335 532929807 761192607 975346221 363019347 466658417 478806457 864277093 605118223 751830426 922630207 925792180 503277086 659068629 840649630 899041605 886431113 928223604 368168555 737983790 24796198 365804909 265303733 949943749 280151123 773267516 970971467 993920387 61643554 910000019 210902900 438608092 347499885 697229840 700014008 927284983 246796224 306938170 891914973 929298582 231953092 388833392 732003098 829354273 929812497 980176163 750967426 835481487 649510389 758274565 995560875 998034121 672082595 693081641 865926629 929881508 45633059 820899858 391814725 630301625 932192845 991479854 913918142 928029134 53961629 103014836 746665495 945521378 184597765 436635789 554505662 793044198 17325623 922119818 328323646 938964223 713670588 734112782 4584888 584493513 132364772 148130851 36466187 836674499 234651262 958694151 993252705 994656979 736116362 979236097 386856519 529037223 437457964 556111919 963970380 987090162 337598882 599382266 466862396 938886878 761737431 942001323 29096312 982545464 355480006 638972575 775795201 921127981 161521255 932456309 792520214 817532891 439887887 754330485 99306399 301571842 170525109 392780001 119856738 563698094 104243301 231399914 727439663 943343861 681833551 980874918 983138221 985209498 308443838 847878570 842962681 893053680 953097128 992874883 364376386 926163135 739681687 811196454 543966070 598729475 679843807 693033555 601246918 701788219 757846669 806157685 519773602 969723490 895808900 945637002 742266740 976898291 695647332 892864587 69516491 823345098 642560996 900292264 174293403 952796604 94929615 264657877 105195134 857179429 747641851 842276691 872692973 896102358 553478485 926469243 221878665 564997516 597993125 978890832 466875920 610149928 674644934 975425713 673726626 953437900 964911674 993910012 267388901 880274017 883606703 889198407 991290683 999540887 918272264 949844034 674632199 837315482 31674667 586837997 414794731 991526262 227817598 360138210 652951433 969603241 340895331 807816763 908779416 954224756 496247309 796304624 748100992 749836493 322689982 539647927 510011720 734230115 8373583 869070142 712026431 774415292 129041010 358518349 761994283 857266282 309431984 851528784 731305867 992879083 940354407 951035762 726245314 963470761 724323496 987431555 896312794 987586495 97483066 410268066 280024135 947107081 924210406 983720931 27611969 452283113 268796454 609083932 936195897 984204362 591977810 748887469 991065803 992097549 931231345 994476531 429099287 905886538 391944056 462309677 666203633 694656616 804818301 831825706 138766513 419206403 252165883 838817030 281900777 456175028 339323312 776441465 186309933 932608593 137449035 986953403 378457506 929751665 249480734 257973383 750114177 847434058 158647744 865156886 758155155 976046204 685308150 963038653 26331709 787360312 162129126 266813188 350812109 845563997 294740406 971090566 931096843 958669004 249243404 754183916 362019757 423562313 792835887 859681204 252321455 553637975 814572443 922991529 255552686 730305228 719411069 809666929 284059299 661580175 259946317 946205754 985477949 988151805 226748589 371742257 444716738 877398139 340475915 867125541 884466546 911510819 373266688 971568565 163148783 526391342 227072494 321928150 577567850 839170947 191320528 841858145 183834396 462958215 918902889 968283211 208062590 528466356 778915096 903939847 148268029 180402257 415987326 559586101 945414984 997905903 324893713 940374657 470562408 605448360 117624124 486009666 134209097 559631118 56253477 492446250 447082139 587108199 541858193 875060383 55212268 996008941 574053283 665120978 601610949 823583021 664015152 796869085 457811824 694134651 388223412 616339427 288809499 964608910 207723554 681478089 55955634 866720249 734620641 893921398 790320138 814400288 528264814 716164240 516629059 889425948 411450859 806076576 670627651 891443076 15584339 129516673 436599544 901702815 748908834 922996365 620524109 940634278 648214061 686240057 596303938 907086796 265941363 476755514 853177384 880410166 147264865 171297666 179597583 633845680 212328719 777896335 399325328 475188509 822923475 852005844 374513929 653894643 322662013 922403476 139151595 199013151 556699238 775467969 281317021 388348491 973855879 977992481 633761305 976882451 704057084 915075080 9664549 89214942 537300497 678570885 25335830 332421827 742780121 796668411 400935154 995966784 334844780 411200061 324425536 982226084 218099099 520317291 761433052 886126278 89101643 987914553 676961084 710570354 958172359 998765983 902086432 962416397 560084521 851466727 739576267 941298900 532546559 949722397 351531127 983956368 580640632 865585748 661813335 804654103 580008334 942523249 710738158 848958795 85336480 843042087 404154285 513494194 557582672 702992148 566182989 750531073 653238497 784068235 191892534 961337512 593505188 983928383 223778773 593091474 381526562 783964777 158363732 784792790 115676655 675310457 653579370 876761736 47772961 745536425 71325807 105321907 319261385 428036194 328399472 918816046 905461438 996137073 406305084 703463275 143360869 980089678 322240094 739201285 319994248 601435660 333404875 760206565 298212465 418900664 964641414 974281145 730120213 762576863 587906260 707021078 300845709 661856755 433463127 459527664 776838382 866935325 309023193 549175895 915108511 966126430 852570063 912433750 991361524 997013370 41782450 62945961 675857142 988989570 971535381 979788497 781133323 812397013 669821871 879130065 792127854 793478363 928418615 938321641 54679805 192716083 611949387 692110247 872594321 929256694 375448567 969458433 539476559 677027949 605880179 778914671 88516276 612318480 236925085 681170367 253840138 773290612 418895790 957764891 318680801 357171018 584074864 695154231 494294312 929790221 828170774 917916369 566971194 838861324 128759753 171276152 154455522 348693726 767533591 848632037 836052108 944113955 692234523 811367225 514258032 815606024 160076422 665554420 673005986 938555713 597887547 907909597 466073719 812933603 356474631 404748415 972001555 976142529 370887717 419434716 239422202 660304541 797510406 982998369 375808922 806201486 44206781 839795454 743144152 773718834 673259088 966447491 57585288 767246759 221717300 893285360 138407731 861258920 375599612 406335411 850779224 886215744 46883035 328587809 232795608 255890770 666659357 965777228 106899681 477650213 703318740 860402581 331763544 354404096 563499084 721126300 383184109 642048453 895550570 958595325 193461703 677699737 447103518 637771976 93547292 331521256 172998200 467560945 177468692 340581248 640892226 993198837 842568253 999776996 641821023 812391139 281408628 414962332 223808070 914572264 148725989 696804009 744677370 773900711 615534628 691791249 699889488 723651400 795751265 837079650 736270790 842700108 537779838 722064889 670489175 747688918 40505090 505655418 241517910 852176455 354100262 522475971 780377029 917628107 658162048 864505337 179740263 648076743 801455064 829527392 210410965 861371430 227242763 768382342 777834901 880976125 738435499 994304658 154138408 232492062 507802834 993684972 554420182 850809298 947911112 949821497 981237692 985919857 108702373 295433259 998230839 999580619 969282540 994680234 900128185 963239815 980044458 994699732 723997218 909478340 178600813 289352951 395462255 572302919 594664786 717306684 13460935 312769314 68514215 520689136 844529786 941649072 86846930 933543536 768972811 792931427 822532886 843807111 342346254 594320994 256353561 922121820 904943549 951853511 574568516 744131287 791906774 870933372 501808310 770165829 451449640 454114251 274060266 886497165 426274133 713418303 969382886 979667877 944109797 971139322 378850869 625412047 51810640 586434732 367305817 846204612 430057469 509690037 754725459 923784925 319394786 517800607 931945937 943366450 406097822 600124025 7581082 492415818 339308226 598940736 260179631 560564461 865832504 993058163 709692038 885942974 795437675 831963174 816742748 899427970 269949805 873938419 269366488 820429533 835931054 953171602 592439217 895515939 567666976 585933320 209844753 895138528 790248331 938006592 922724984 948123773 71507201 850646599 746186010 826824175 912087637 982313434 943898981 962368454 86655495 548944344 937965049 995563305 781273305 889947397 182061243 202804626 843416354 972250651 809447983 885197912 117500332 124945592 553719718 936394914 458018182 548594439 881229513 954261862 987716354 996406601 328181926 696228174 223781777 297395096 938647607 952839765 736766095 744055260 185841214 833208122 689047390 751833578 240565123 630741573 848728373 982329396 490394476 669157050 181424753 953871798 8154931 114180492 574778725 755004887 98240728 165339936 834090214 861307287 189810134 785890593 38933145 952507166 946942476 990764694 148002870 624012970 616443149 750179901 648234411 695506881 951663559 966701136 234308008 454129162 12920695 273064323 222287117 323155752 198502689 991108378 911381827 970774509 498497401 839642251 645870205 661915467 930774388 989301971 378179889 732902315 991912595 997500765 625891041 825202739 563856024 677803427 612305829 745431422 745857784 801929801 452508409 726619900 868763783 958802688 174136431 213257607 464279930 758663895 131431919 244442936 925633142 997136750 339135440 731243763 66594735 365243302 876335398 948119020 594974582 720689198 849878574 870530075 876438535 919626824 560706493 889696527 190526942 402000917 335989244 808314862 417653806 733928316 968065489 982103681 614634312 977635198 925318224 945951976 241914960 279406808 448858748 517733110 357777741 452053295 222452129 900512653 990586691 992144816 599263618 609676527 508871230 589244397 492286158 719449676 369125263 697409465 831814449 974847273 821941160 838103750 553681030 631984772 13115600 809634496 53113541 930460907 747503704 986759778 189345498 929351758 783970510 924132134 692826796 737374984 475335796 920731076 532395472 556036727 559793876 628043225 952139817 969782072 969999041 998786696 262270261 289809681 439622371 735745325 893090929 934233879 464097314 611316538 269614455 459323819 265476692 324081793 152810480 531736135 831448065 941474995 234651361 427018366 903406281 993480679 848399045 965053506 214419088 911993807 243266826 308517788 664241216 840783296 340874807 751048558 420536580 578256990 636347987 986273403 235072110 380801444 871928806 878182627 825111040 910548329 187005792 515038743 822350240 998603816 682540665 746332437 594732457 865331845 359932123 465100733 144391086 179388489 309706895 885511980 528475253 624252950 900370256 920644512 880285704 977627235 304883423 351966961 674496997 986376761 106544340 937620498 370477452 422958328 85905834 827408557 426857144 778370778 799154142 837330153 706394431 911027314 209784758 345679127 929169208 990123424 692334465 747167824 688996239 964882504 91869781 160612578 305742986 832959661 186881253 820056557 278772645 582231481 53775739 303739809 60389851 824083565 523551619 859460513 593242519 873182691 689840740 812571630 835202722 957085746 651713392 657955587 422767083 975967951 196926296 770611538 7799710 536455669 892565090 895785817 281880395 806019262 61048116 347763894 723194844 839522059 742389480 799791773 17906630 64007909 710887983 869384902 607667660 698147342 853592781 940675488 962068886 971890326 757181932 860279659 905041163 963001944 393543622 547151648 94242682 782892375 905675518 935263798 253353058 760085455 926450781 985896397 602742493 783825284 729205122 906194644 450504434 539399742 632973081 636722289 566603602 992697191 965457151 975976622 402903992 666317535 844662187 856555056 723963081 948873379 849506360 967726853 665098887 743224182 110998 253510781 403554174 517406758 590018692 610379906 633560615 931904150 653275110 859766277 212362856 435005821 535516088 651353928 263647702 473107591 944930586 983602722 482615862 973038147 589378183 613519465 831542895 960724233 952050028 956848463 793483256 933363097 11560991 732401506 847191530 978525887 702744452 826988457 524112424 623848291 238710849 813142924 416631705 987237772 784833504 950542743 714102018 900475905 821727000 843051813 985400122 990245038 295421520 675513038 856794089 976207088 316024919 755840680 999534251 999800599 379033317 424669751 875685240 877004659 357105249 470851965 163911852 449775415 310711111 531778631 302862877 804356449 471072729 553239397 337517656 487696784 806266540 890066645 242931337 322710449 483133053 593914097 390936966 863170329 557661364 734817408 445755763 835909631 768969121 876450478 858872625 950921266 263156190 437680704 458125208 961561423 694417563 709468979 843690414 964844719 869497783 946205192 447115810 485586726 533510212 568911039 517166491 745568608 510239922 730335386 328464270 717917394 692478728 760983307 437828633 506854451 214335357 248065200 496828709 601061732 448187564 913231753 626710099 673617569 745205635 858121921 185712355 986386709 396708631 802314651 631357932 717950180 883403733 960952365 25684571 229796530 213846803 272381715 179239858 879261676 228346932 596677878 738993663 920519513 308140186 780776562 436206245 751917152 990117379 996318338 893072203 920477483 269109546 729754992 403936221 636063121 159852975 223391685 990193373 993614100 279835534 539315450 297159908 302818729 450386335 917491790 102449201 933117420 581460956 758197919 884243147 910898119 422678425 880073916 375227563 990953168 144035108 787705899 525277212 570256873 302492723 763220406 241637675 751828775 560264975 938590920 136367424 185415962 98099060 568930659 642470523 646226433 914355740 964769507 281147289 652224977 415456763 919647132 560683427 815997616 658628272 900667709 176782499 191428797 67008212 324846379 962135033 999642674 124373729 366530059 397839609 695741454 239836045 696866460 641263996 657140710 501318147 683828622 707466876 880727600 473710513 824460353 306380785 823596339 331871173 355881103 711122067 883822756 129784221 720192500 648225422 653023433 120281719 231835650 453481692 806041258 4131286 390379280 190857435 671005844 883545927 911935448 702743262 808363430 563791389 759340136 57046145 233363360 761074928 866433076 852317072 952076154 525437341 831067692 596074038 966301464 287957093 805194258 814118249 951890768 495713984 861102938 447474545 815637827 118352890 146379623 841966343 842646827 814944569 966217629 954573598 982744386 324132008 969400611 942607805 969484943 565467235 818143186 480884605 894856295 909971749 946059995 193376833 765220126 136048300 479015122 990144089 996032769 394379994 625348703 285866060 420803585 408484516 945975801 832639783 943811855 33063083 280914628 154214751 285138999 130545077 645519805 554410503 881040452 940815200 997469833 467045654 640409422 931212089 957342107 978246459 993642955 69235924 881306257 960129916 961445194 371303243 656390205 915020329 999115486 28488054 112963354 790919997 860282853 506741707 717588820 324614339 634239392 525774831 617902463 710228767 987873480 102597047 372265941 354569241 445310096 313166767 777673650 786980047 854389384 514101856 961409978 991668303 996787878 791893134 948657468 644493103 923017013 878738210 880095822 441526095 466232553 123790027 574543412 530448194 715093501 451973406 877060345 797560993 972688375 680958708 969273717 285598721 701352658 550059150 781307138 959864898 967042227 448542942 750900883 58676052 427594076 774490861 900210664 642404774 669585706 484226533 630661980 520704925 538270147 586256658 853825432 215756413 657114072 942070205 989081111 225860779 653580228 923334350 950730518 417989886 855159407 48039197 649881805 634016937 657862302 865279269 883980677 157245883 818875278 412780105 852375042 545796061 885194204 852689080 948850940 18250837 731479198 579224363 775270167 191705570 703565678 128105979 632432139 70018504 493769784 551407037 774890116 426530663 962411308 662379749 750635718 883793629 999014173 53104606 274408749 647078929 736234457 629727460 998089272 518198062 853916526 418947406 843723776 601826304 845797781 871720453 924698234 217512311 837326902 831873980 961203577 945849718 957411700 596675321 733277860 191470693 837725423 120219870 172409114 436549428 464549306 592132615 784324203 415519986 904331879 16772506 748391769 971992892 982419794 244322909 421550935 680942523 723488983 899818900 997023248 556841794 575583560 765784604 795128586 571725617 740047093 148726644 181434566 103054899 761719788 647135685 909562868 231323792 768370072 83332025 516693357 505147567 711459224 694582480 696168250 130365884 457647824 233238515 862499319 917983357 978824984 584933308 774332329 634191608 980162329 715715178 798291017 993322394 996830989 360665938 850004045 6463163 36096554 578520047 826333872 973845256 992874896 329978378 787845042 555416400 981556939 292728805 758236953 308949534 649498116 332217292 508577693 951983883 982295631 746195935 806823812 59923495 647495229 366922506 997558566 479417971 480167318 871214154 975841670 145347898 952864620 322440851 848066567 338040446 815217505 191930277 898878400 489682938 802598694 819240274 894081347 704768402 716328481 213022355 837770287 631142173 937192367 861604656 877084342 155581967 646507628 768909352 844081209 337174431 492486243 260679090 378837009 788213527 798792562 361120077 626211564 134601367 685441362 693860666 873007089 506785969 731071872 804686449 867091128 562737899 790941197 960747617 975654580 553045449 580994048 76005073 888843840 340442456 945453083 675968023 947457565 369933977 609630029 53617757 921300177 183052151 919172065 634383511 956951463 666309785 849873260 976545778 978409986 61460292 762914512 224839943 770936874 626263214 805618353 818671249 835960238 633606708 653051038 953900322 964322437 487297428 914564860 378045091 541424063 281608958 456442788 989174777 996411321 168774360 299416680 902255934 994801792 405852810 477011012 705908920 841637050 168470809 851924137 50218395 441288116 392971395 873586043 405772476 881495791 765818145 797897503 119759420 914818922 940221306 941670753 971116933 985473115 89743355 951589236 187501764 811662210 578869267 777583626 493878871 780723975 936472992 948738057 788246952 827735718 716161550 786317430 478225191 867332831 609082297 971977078 916219953 926140707 403379044 641546670 501733663 820995822 516215948 627417069 226182770 311035061 728429755 987096655 499647376 761941486 32299944 311507684 583311510 860608605 745992643 892164229 458790200 881961666 553175541 633856682 782918581 834329814 526185735 775255119 23975104 576928231 227746681 776698343 362112234 924299339 483214579 714130194 140196874 380063011 22941641 768285703 505360781 691962448 358007489 375358571 427454401 432283206 933431155 991301847 613123190 685494413 687040639 939246735 373201731 477941826 156063890 365305205 318933296 714530353 785366289 863214794 489765860 816166239 778817530 983315733 922320155 976153540 628774553 916271312 712195835 741865742 272446565 738898805 277276043 954477422 778153524 890236719 834397979 986125462 399254498 860921624 383464297 539684408 598612883 833661803 72032950 611868724 229904976 736500493 793123252 837903210 818346776 890262830 947461007 955923123 281739750 630943654 893611323 922470609 417992247 706618507 394472216 474423623 312987561 343628662 231192789 781476997 164499106 666986997 601657144 741056690 463478955 883804912 71464597 349459852 224548150 939860693 517728970 966956515 641118022 884330440 424323409 639036262 475557819 782536767 285799726 874914485 333083385 612237642 603854057 734337445 578389915 716806605 312548283 977888481 374139841 838097453 820979241 931929275 531197351 675996031 623201872 951599247 952462503 961364645 564287987 995785490 337551671 786195162 113481944 846848641 822581451 957224879 586249294 627267652 717996179 902833220 936941097 963802178 515126569 739549329 16297010 115910116 424287562 733814230 475191613 497427922 876785758 988679913 35385755 44855719 301175072 606476015 138053684 475956827 741975622 797844138 186800303 188100500 212989704 451027680 25181982 627764389 363564443 768558566 938622504 946783196 630626363 737571144 812050692 834166045 948253191 997334497 50340219 588370921 500569574 725818581 459044711 835632451 94888114 800518968 464406109 982633294 708201488 762885173 885259392 986146866 472920892 971965735 373402667 466441789 262974146 993889743 150043226 966185033 335745313 948411009 137797356 996319339 68526066 446875853 395890042 934619726 961446497 975338681 346608439 642240498 413192007 433326595 86468840 636406414 968692825 972436336 957564138 967807012 581319064 930561453 807257692 966271799 236964103 300591916 791670294 799966676 248354349 466772353 770401695 988006442 766339860 957750363 459019855 782265681 30525295 555545271 452085400 701291480 39910624 490049681 614477029 900023409 288579827 591170154 782143147 791237034 142549303 433820436 579987872 609618422 451009574 800359061 323344801 972474717 819494398 995005638 770422773 778926958 433204387 762712040 191391299 980954220 24577163 266271703 911983831 966473271 116055402 468257393 453716189 917110888 283200083 859130565 24095866 709244606 472480191 545383500 581935178 717451658 771850932 878098519 200678245 804031989 838090501 967866597 608025187 921151818 376877021 590926648 388316170 737748400 500175683 609296837 124577326 992215567 842580070 912291072 687025569 721899623 826964476 988356511 988340119 997918982 532223270 804789831 203028462 921366368 329195926 384658978 324187273 905559404 111722002 186870931 102955876 714390331 888652598 923652557 290747147 466858973 61233601 380385107 978495329 985824527 168468397 511049583 145402018 387838056 6214825 141187182 762524610 924910839 64283817 476630079 417765667 527476888 904794924 953819645 907197535 966675705 847893716 857196903 433672146 783599525 669068285 958092971 315745422 609475781 119435745 868597157 68453895 802435240 896887995 989564434 104054614 655291459 693350376 733540311 622083899 849791012 712402467 912696339 937303785 976513417 463059588 979462589 298541208 721782004 625252559 911650870 846557095 954272065 976742229 997257557 77886238 738373716 107851691 298513024 392118781 728534456 12784848 616655736 701627150 749214813 810695363 903405733 263997399 808702493 980664800 984948064 459979876 953101578 789505186 882941707 286634951 903140104 530538460 696468973 597905819 856080564 991996403 998911778 500354950 717098329 776717448 889134669 463862959 969598773 162336256 222435009 950831255 978893119 989677045 994689230 907792556 916157032 113082487 768275711 750086084 906960865 864037015 959950309 724283728 940181710 346332834 634746802 4366313 942835270 246527101 690947210 352704409 784898638 58601080 761777832 584994066 906447556 659487242 792930769 684908458 866749298 664200510 861832255 549353297 924481311 511851653 588908104 275374996 504613001 452097494 753048181 44781775 921882935 577805314 774063583 553751597 888325316 294352299 563709372 271624862 820404203 591095099 810823543 925505957 951649491 140585967 445343797 513523382 764934764 808799110 845373729 818884979 851737333 475078284 757909472 135991695 483158158 870506267 890145999 664709612 883296911 110938220 273315295 52154596 564913638 174846176 377947518 708979378 994144105 789083509 885992403 929185940 939822566 26395172 786608659 47818291 93846596 711086321 758085275 998774762 999889098 923792610 934961380 101399873 586852495 595653616 800685225 73650916 426651757 525837405 833811650 725809111 994838377 171865071 265644906 577401350 726117694 401409443 625689491 618577328 840441359 227198003 944459782 105868578 307388268 494990262 599377060 961124633 972998954 224696706 618071059 217833055 226015912 4263720 943545152 242828294 570010246 13658572 79999803 685637476 874473597 568647772 959920926 157832682 665792163 934088026 992600820 335853032 891435200 733191539 863794455 6979276 290742357 70090099 355427132 663916668 908375296 111447776 365549890 664861128 903081687 201697868 254681182 32920784 279621657 749004466 833825910 655944888 796527532 955854070 965510858 721537629 904858310 890761664 934080733 52701129 623212087 132375152 714598628 379578118 909819103 142878743 814565362 749330313 872223887 27165414 832241692 140461351 196560527 805501194 839375605 400000528 649544399 299511003 753556956 545854726 879759289 102587382 863516431 577822300 838956714 557516651 846743795 391793682 555662426 444863385 929489610 59179925 318174566 843133515 849429726 147049747 749395911 427073272 619081859 449285750 823381940 398411710 705699228 625881797 662030516 530263555 878869108 723335353 965640905 153030283 483999880 869871074 931872993 644442667 686421514 496082148 771453447 981032976 984753831 79406406 535822510 899245236 993358375 206580427 727663299 515170330 556130965 133750209 530575934 768238776 975992946 399446003 908341346 860459486 916373449 936147473 940763658 269636885 531369161 768078126 925214800 116760945 922332736 675457909 768206728 133252775 427189400 484474787 508575070 594123173 973541278 692666133 715547923 463618608 619777489 968313407 972715054 937921463 954944213 893848899 995765253 670464638 812087234 631498386 946235511 473214461 989933846 960065517 989228571 31198155 122617646 263826583 589843212 299069929 453869196 217958504 318967033 630040280 939724984 184806762 275761126 140236016 895526029 714430156 957269155 805409622 927708587 245903782 422214839 554987668 798575325 615005366 696326870 247170635 577348066 417382678 954121206 686768085 835419813 730337050 924002671 372323201 914259914 958754755 986416400 476362686 788620926 596321829 858747824 550936130 983991815 165589816 270437951 878145062 894692910 286666290 375290776 954210020 963908849 89982996 308603411 779672169 887065073 795871279 909547482 337941160 666145909 537651724 617313268 305128610 514980898 173073426 484309417 542408064 713055612 837111549 877175208 974489951 991419606 113331272 640299012 404760049 734536070 593769118 923251601 838668150 873533843 383211932 972934759 631817760 887879777 347327455 755211658 985546149 987545617 595323072 778884595 508879303 674414593 381816172 832363299 146755792 372888456 922605359 962827862 434267689 605132080 839479596 915852869 169928816 731789130 98960701 893241493 5820049 901284570 952111117 976614814 67908318 486558381 71379597 168888375 486104672 811391360 709938999 780227587 966740852 968419135 829974411 865248133 5165238 535271132 992064604 993737082 740740900 926978845 849875212 984568592 214793463 588383943 707409712 830537679 12000078 179301124 650373362 713883456 829874247 929704133 804762645 871972174 640754438 713272742 863465633 949876748 703477048 926163691 435541162 513665778 708725355 999946728 681038352 891004150 913345639 922699589 999341500 999373709 611525594 858912223 218767612 254133029 972609329 980000556 733040864 824609835 112489688 338573152 749928938 755364301 673803368 848695556 940283521 976178639 724404951 951573747 94065113 960465276 13824838 902482689 357796932 588338678 982538957 986732699 297762073 586606059 72499979 713833442 134516734 267516188 367022617 790230943 146470733 167428694 906000191 962891089 376397645 721884452 293734326 846911734 62132682 239774922 634367371 958080623 549717882 903767262 254606388 325174661 834440732 910240529 212417531 610952925 525107769 660541362 54807067 842955765 766220890 891479215 930395671 991344377 178751767 379658242 83568901 809073047 542697581 679369414 90760564 185359857 119051235 708745617 229874821 940223251 733987817 975275015 132161147 316785645 493634806 937909274 701109173 853975005 261274883 526539714 431247242 686080005 504290883 781041268 572635757 725175726 215422864 240983323 789512834 901698351 773916081 992041181 647903522 675017765 448089810 755593087 451987595 598740121 949911963 974470089 620640109 743405847 110763696 899960186 692460286 850096363 953012077 984102741 406550467 464154915 295198454 486608075 464022768 696109173 268930384 843552223 352013758 852896263 414501683 893758258 681020044 847668119 902192370 916572272 227706514 800242030 777709650 974913200 58533900 694397861 579149731 608791471 438347583 690895066 57088433 254445040 839896902 971975039 838810019 981578399 235135340 960388954 47226287 995112178 428960392 429281223 31884791 275024592 251242142 714384254 830693643 919202245 558973568 711902554 179087306 986873396 319609661 612388755 471852165 542038260 340697502 644718632 609921096 782935270 3234523 942854222 700134480 843029516 454669166 736493641 661211452 693022093 488991372 869479402 56305317 370423759 649518756 857159346 371889319 798628149 746395080 927640318 151303833 341511290 358859032 732366340 916150004 975461159 819912979 826573560 379897346 777569335 39096899 964441136 94101241 885397642 734823235 865075219 730428723 994197154 147181828 469328360 117719450 500868015 638660315 937087193 913195655 944009482 997600483 999602163 40145160 132889132 773108382 846136161 997967537 999567986 177523843 398319920 25425089 288121334 22288941 869631820 253735519 680252826 380539982 907644873 191914294 684455327 287516629 535401374 139836819 550508747 714807553 777892285 723421658 964550611 50150790 595246903 18683813 550070240 917398094 956996669 816785979 834585919 851130426 862190507 562195319 653563829 537931246 848397997 534677931 649656589 618118543 957989918 598076879 651500506 642330736 942398030 607309972 672702146 547443063 613345738 147286230 990102792 981339616 989668587 384041803 670056560 397995512 884817567 546796132 959585448 222714001 478453196 591565790 835795066 483315633 789192547 244718273 498386447 395646961 508472709 913343478 914975127 189251721 276214268 975650251 991876373 502996540 846655547 540189841 904761511 128469359 488139322 330616738 604376378 69297196 458070077 459784643 616346021 36577730 134492848 219018930 702366615 339502879 633273801 171342353 446163185 327687568 896672264 146306544 526421176 544442303 968545310 631350086 903798012 685472318 866908712 753528671 784911072 436582603 658526165 824173736 835684419 749544273 832808659 615665303 676956339 902926544 903377145 455431354 816663723 544122832 952845112 59344762 409763237 295752234 566709409 708451131 769384605 174570141 336500948 169777398 877507827 189744210 868338610 758427031 880774523 126763269 577256268 106539239 725997084 441019013 886044639 59665486 835308470 390563350 998498391 776817260 999963754 541152601 574331222 344110052 943494581 349157527 884030999 556626386 977557973 847465563 935081104 359999866 873934870 705776894 878196778 172537515 827234004 398564930 814480549 862158004 985186927 253377151 826636705 237464216 238505834 122319137 836620557 163625836 581932758 960723745 982933629 204344845 744520388 577233294 642970743 3408360 71237961 200114650 562355429 150960097 847122122 252972162 538043248 276554123 713250816 210679985 402602790 526204678 990459664 91346634 578064261 22418097 130215302 367807355 629500447 858066554 989965777 50266232 233222763 844033110 924600452 14734417 52590404 52060726 579583106 912840566 986345319 634209763 645465036 385236206 395586286 558242812 731806997 430087495 969620005 822182332 946718111 411769608 923673700 762367396 915879077 155775952 341436926 456487918 902050240 451810205 873305654 551616431 696317399 913156344 973830445 934657300 986767909 566451033 944178466 350118351 643924999 852852878 995287197 44610888 550952601 17132501 986013433 698361981 729015033 601625288 602303814 147710171 982894340 556328824 796889348 738615989 966424099 448355449 528860068 28398021 588030052 853421724 875833437 462412726 487411504 283319883 857505397 436289545 476268360 19260791 134654366 509133289 954258118 295839144 322318051 438629622 775857596 612645280 769107566 325610282 569186883 272526286 563381056 966152719 988755030 825022982 839186771 650220046 693160048 459494838 490576649 860694720 957166041 858435339 982418807 294748809 665992904 484562661 675602903 919426634 938894822 692693539 915123801 911857497 979925816 948330750 960394191 882533391 901166968 73017642 467946566 413609659 618411989 893209037 898862741 895020103 970958363 28552105 433453573 17070117 593089132 25709237 243201870 497085832 814813833 628651469 799345729 361567165 781267547 161007697 278639263 397724035 736490477 178353524 525157945 448932905 845484247 707875513 836095556 851425448 883711324 397982350 826774208 626214919 830946935 798649618 865158345 624257222 949943729 232091592 393882951 905130309 973396820 483049065 591951619 576386963 809993230 227743649 256207261 274347382 276734090 441261464 660683224 352784604 770068665 191880527 766354798 574426248 820483177 587679051 974331348 552377001 632613239 293689291 824811772 595274467 906335509 745043747 950798152 358510968 977761444 41778661 304057351 697493414 837646212 68398678 726911368 374539609 785111246 955401325 978492614 310985866 824223975 386644068 847322345 944487027 958784784 655528144 763436922 99411695 461060087 643847062 667507299 431600160 499900975 120944998 864139475 622512820 798047270 367855456 782259251 574902626 808176409 866916557 901532047 634192032 884175343 943933264 989227225 521156779 836813934 466996562 736720551 401994862 628662677 243419049 744172549 865980615 942844970 42352704 268780730 882571470 945325688 135355115 412438473 567306357 953138940 393112882 890667445 253725205 764791755 699516193 899724855 994721266 997062302 871716879 899864443 586051632 603097011 620452662 726076863 149600539 341034708 576649543 747113367 216052304 526203574 514041158 928790794 630172534 931421475 335838168 426075004 349769048 809155696 94568765 412637004 935855776 968195472 890965167 939199489 921427048 969115279 307014243 343467106 608004841 619151647 200455671 585105796 69538484 189358380 191175392 529640864 654614554 821313495 907509115 952443238 246352584 367705309 195368730 969350167 598905494 900263191 80820375 848646178 932997717 982544805 384313848 575833311 886661928 907779593 216655495 834187626 792640312 876171863 285192290 532562882 721097275 794589565 721244310 757287644 309885505 829905183 115685645 618746413 556105962 964309895 225132751 266283887 46818925 122433209 936157172 946877572 115691684 243195686 150955675 398174153 15772514 724110630 671368388 673013612 402714862 953457548 987607823 988166318 250340755 492517561 740314611 965700609 492277988 495069129 308539313 662507398 846805518 853064495 563186558 868655973 783846494 857129437 560474209 744336086 676602725 700705631 627008967 864202527 39245678 998049073 285961615 302446934 532090492 805674266 531377619 812161992 717618627 861316592 990354762 996808007 104864646 679048047 917312699 950330950 284820014 851742663 499764580 978193202 114871384 253560475 472647781 474438279 354355882 803933668 89865001 750240447 922893414 934454030 59537177 136050328 914460663 994294833 160779860 867675799 755881450 990671315 280923745 660455464 168940431 725632712 97652059 760623915 833983598 857719671 778208165 983086737 274401854 372516374 46851262 151729998 462922914 614252158 269251092 774531266 922682675 970145844 740862188 771977095 462784749 782448680 220950390 499239421 481973047 736997160 115383942 307988091 148888648 344429377 800100728 887692055 605443137 820960971 7039425 943109632 458157045 524061128 429298335 900825627 411553067 878138709 697321643 968661121 472414467 798498672 341527063 713019681 637310821 779287228 840583793 840609440 62558676 585904723 346052275 919684658 805424919 897357110 571248859 979622945 742658560 797748130 532999886 972915464 530117735 870041865 171486689 383468073 574807074 578090508 662982432 732414172 679735700 977825961 293554269 893859758 17089617 93411609 702872061 825348724 209817643 632300764 758091255 835994920 728927333 932705166 68268163 276384811 378821921 889984171 36167053 817855066 619443316 899943249 777191929 940649525 879460016 996036278 445143397 963914472 393204673 457815146 648025956 921243539 297478408 627463317 676181496 966587547 264657098 516497276 295535973 462639520 441110646 744497471 50647146 958106746 71608538 610823382 159344611 792628515 656311114 870934923 943182363 986310250 75633288 252380646 383609108 898560094 17202056 217818937 483188394 529330965 219630142 539248479 755779688 880842663 386163914 626233951 867868643 871642250 475701912 567054719 893901575 913668468 604058805 834298177 585104069 939541916 19568012 677309676 279117647 474393744 749877394 941116098 152038879 336868623 693965855 764653327 130290656 618748505 298310505 529711062 955704893 964001404 93249743 890694598 10940514 254660621 609268071 628619441 630563681 836770825 491878084 809040493 787330923 834533026 719168247 894394496 248407211 342821214 160202547 370042885 18174365 824734697 242581781 294583336 706445520 920870507 206107969 693986237 963234340 996483106 649709546 898636505 427330675 625465557 108279260 207754359 477806330 775900755 737689321 831727977 182718730 895217879 719453852 867951026 356297034 835244755 169221944 639077192 962920543 971425176 199587972 546397847 805330988 900920449 221154438 829997068 475624715 822247957 557023636 735687619 445626913 471482758 713944901 906347380 290873294 428221562 422269896 737316805 25401867 385032534 962219441 965067412 488621195 645508303 722429147 804753778 298337988 532046341 784538858 875736803 133564281 383282625 330659065 634484339 762526989 928963937 504716588 545819008 922463681 991035745 920287323 955949971 498572423 852270861 465656094 787067775 705968885 835679896 526083133 635950152 326057667 982420780 718161629 725835480 798962680 808303824 872480066 945954535 557687718 711148302 459683144 936220141 177713811 313595929 228946184 676394373 679536361 968765445 588590278 593321867 983484283 994303773 65747274 975734214 224224191 616188344 855121527 909807732 530435373 902424117 258529465 340049637 477393358 752958157 116200857 140010468 8204378 107169259 564032065 779279474 578625091 971563278 994016132 998242283 960291906 981999399 196423471 199890238 434092249 923993449 446913892 760349942 909017364 960886796 266537786 922233386 493080283 783398140 525071748 852182945 484461640 817147250 425988423 567423321 635884151 992152069 43546690 919886330 78599908 970089206 641609290 742336472 659379348 862486284 800905004 929590639 932661029 965195489 259633626 654833385 133663427 154577809 931674989 967920873 171775517 738168810 442757581 984260158 272176970 426595559 838709857 935259392 66243279 130927791 824562496 902774222 449483729 490381337 735228522 878648810 165634349 459812393 535281546 886773883 647256696 651288154 977371436 983425204 696246047 845732201 436034294 480183635 653384809 937740064 964850944 998669929 355774753 834925674 909244080 997579989 480144564 725752600 935938915 969228788 780769650 896921432 437220219 953851943 745419189 840704698 970416620 975229074 932355054 959087940 666682230 745707526 699868681 735778535 599795185 805730540 582824044 837132568 565754130 685512509 538994418 961303242 452260590 636237491 358535959 612985869 133526316 496452069 470736763 574214439 135550397 148927048 571290206 830906711 939616843 955325618 510866337 904228229 54584087 876837158 954964026 979720895 333805245 659532851 55581098 156668205 660151574 833561124 185014483 460797933 824535867 890749278 752301479 762937453 905958208 912632021 424219168 928876023 830838669 862708570 919009218 925525941 335186526 975786642 69351085 953794335 39867192 824279446 198376725 335642362 630303209 932272083 893592112 972920317 236940876 601045078 386725018 799266302 91814043 698291246 415067513 614122413 443641961 975285513 301808811 533137122 426972407 861797276 445791847 706201496 197159959 532512199 118188647 704352903 430681320 600339401 378200861 915332969 970391166 978112581 94015669 497517723 750018297 860573041 418241223 619744591 814073007 867315917 818340823 937077486 369612532 567790344 653057817 802568992 271174348 875241402 978000057 986084169 441032537 957693895 665671293 974687000 52293651 415825516 639111815 869389331 75921444 355321239 159112009 201316697 601138442 922523134 207396848 928277589 35371123 718758294 165754047 175346001 153492759 309500994 224689048 794760448 664523350 730535965 431572822 628298028 86887574 147410178 271065548 740835926 849178867 891422091 295683971 566019853 98904173 990763635 34606670 805323110 778372118 985049926 270587551 903429054 122960300 571057613 442465242 604759797 809110674 848954403 580025727 850279792 453406853 511408007 370377052 420430925 652122350 721610978 923219922 928151654 521798211 646860115 757528535 995913243 830398919 995742699 872705779 977420002 740423848 958642161 938407737 950844535 496543500 509153100 224127956 799089982 115693327 426645161 192048802 729192451 96619556 741888487 197391045 503998570 227279567 501248754 967021789 983609267 689924518 807053252 500162420 984941702 887580337 925929978 596774213 907288384 131835853 386638592 542620770 556465542 476360410 483201883 780235261 787050679 837358638 977531493 879891131 968044952 459658365 589743232 770067311 944168399 506298592 712522285 491592665 724859555 266687421 770401859 728684004 765035089 447802643 866146135 721066601 953892982 300472647 715016553 366609410 507224646 24254577 912858645 809011456 812241426 250909652 337683825 976902307 981811183 527914300 823984880 319110767 654536911 5987852 23006192 569684219 647133814 109901864 163210223 3885957 520237811 300861007 568665018 658549091 670445237 767922592 813546718 229084801 715831432 113789166 566899433 151339758 391672805 939515998 973111983 328145895 934517118 725574235 855846707 452097054 760608260 414650023 640178332 961460332 988111915 978469731 989607029 906708175 994733304 888701481 965262376 304114055 529353595 941135614 995406955 662745021 834922557 820867042 975921445 877094520 949065248 23843547 25492965 960497200 966753738 351707871 472251767 979041786 981341782 930492581 977335746 927629217 980827444 685873385 732698089 373499495 779052439 417470555 988666815 666594800 941241780 514185040 695367115 242353105 964636872 498450315 678772788 79310461 744702946 11279746 49630393 851567795 965334252 919120800 942942721 229331364 812636141 320733083 515601043 529377130 796598240 599080551 730729412 901673941 997175791 882105163 969032118 698911695 932546416 260618739 270012826 662544848 676675627 822501892 824662759 11544176 198337678 392614300 891459175 617706746 635655925 400884132 603181454 949742420 992105621 54826700 675593596 208150442 573251942 882030178 964925779 678014008 680101675 180164089 265276476 181342606 484979189 804107435 989294113 195794647 429543921 944976618 947708491 373237480 804513356 88015088 965909729 451683360 618190048 30636381 232385159 105631380 881789418 617492632 908770446 766781858 881765460 626036654 737451582 877915727 940901146 864163376 878184350 253739123 847224015 26246484 345920374 961712794 989333183 898501333 978568255 257138508 864001441 383464249 748801567 588306200 989899851 641817593 847981245 230880380 908764757 72913213 938920414 964084506 973258791 206894160 281170871 884826903 945801651 106600714 192331898 758777085 974167466 30482129 412170233 245389209 794879804 888191259 931253521 125649471 550922340 444114636 879985949 494998076 655428159 168139682 751329173 651582020 946016353 467677908 890645067 691310585 946523533 457170129 933568606 909774240 978310083 539640058 606124440 880758058 985890161 245457099 268447997 925529445 925591951 1712969 8406070 441202058 525460058 999721940 999780913 319599767 350164588 109369811 880734571 101029498 914669792 671860981 834881423 298073045 552654311 401345423 487203232 340418139 780246461 974649170 984742341 98318702 107462190 48173826 645462971 776839206 859266901 723764293 766398025 294569979 989215399 877156672 912702243 471899442 510126990 908238723 942216040 228443967 864415674 797694404 960884272 122453875 547668136 703487482 905654297 435707299 737441374 820947759 924726603 468899127 908561831 629279026 694867545 249230405 420586121 560799153 636963305 998316615 999150453 239615614 649765766 47859059 418058700 255223520 773699187 480966733 928595105 26271381 933023097 512930641 564694498 967769153 970197528 519928431 948821075 379185422 381307953 134449792 286538272 386491884 774590185 373493537 843763240 199600801 829113612 961635812 978190488 908015289 981351038 741630843 960266529 610722795 683820282 619345033 630355098 801451402 876674449 450579763 722589599 492697176 909985879 173856366 730878898 151739135 580681100 838376691 858532005 599390766 971519074 359423655 824747062 759461334 848508593 799483613 992258483 345216452 637979652 640339162 746562226 589968030 633133343 284978229 825221030 615987773 964651382 648821020 877207865 212306475 450492848 919716479 922404147 520005855 640061776 311145252 972227491 766026552 959884640 300890417 470270249 152875890 801360532 556944077 810959950 533856964 940391464 218541721 651806687 81004495 885043070 232462578 897201310 185447216 212586402 113486229 784828632 189862985 369816526 28633449 831445861 756113342 966286023 287157763 906393203 600531876 763790304 667559595 671861334 921408069 954418934 667601756 685131588 716907971 761133449 101356980 856448776 388951245 774512395 395884765 639569903 894660757 945737174 800149689 812439732 441698808 502483026 301934854 967978290 309687766 889170578 200239765 466504999 103597027 617299585 877804365 928018740 164544858 864656606 156063134 299471710 354662152 903963497 496996813 622830372 701151096 809976193 174354809 441573863 825225227 918339963 812096973 863416786 787212937 932893267 991399857 993548884 554360178 670701134 201990837 599511352 458069552 528604686 719074041 790481332 789336092 825373529 91416404 109473560 998566009 999135520 438792167 791843433 932786332 995216088 111067988 264684851 11595335 67639013 898359881 941139294 666726402 838401317 819511219 829541195 603153819 775002866 198773382 673612842 505286826 510218843 670338679 698976435 321481242 916170307 109813711 870658105 67209573 622148984 40072259 728932462 171058927 430011699 922526018 976939589 338639201 608694987 276137020 721489432 46112021 206751339 901267531 997482269 911177540 911690827 764687125 765502095 449987686 736215395 457498141 707667403 240410641 616354505 896941485 962229805 634801031 961896476 141604669 706569956 739066296 826264355 756490075 857949474 305318038 941480987 690922345 766110186 791453123 902945444 239736105 296237710 824893080 838920539 549833354 592431817 658897895 717298695 919760624 968541825 365936278 619023523 512914007 836408426 544863843 933242679 32978608 842076528 983098379 983733391 892661622 977179828 142798830 831096151 550791756 626826544 211352090 730340596 399446936 976224759 723667331 780961303 514249725 565490843 443897789 619766602 878915099 972259409 266271568 847330848 4393717 44679198 217876398 243531045 450232855 561348675 715293683 840663231 171044656 988223104 446850716 472427504 472115424 879976238 59929212 679400754 97216673 886903978 357179457 867805359 817325034 859151522 235592567 578065930 423694759 456134253 453726350 783240038 171818494 649503422 392181246 629630339 956164627 978112970 317114318 869899693 683943639 748866128 338581156 465151319 913946450 935253507 262058794 508414048 269862570 611836687 80405444 92119785 758419209 832094356 7710460 525445434 334388842 493610727 388013239 978991769 559135946 669710396 572590979 661487920 604393201 724013106 689749890 892920277 169098646 696447569 662788940 867356188 907347223 960346916 705516699 917279329 608146019 755472210 238032588 868469236 198329105 356168608 427113200 760442938 802554768 921619827 672927380 689630424 676610873 698621038 405767614 997243502 11511641 834815283 305856890 554773200 945824414 957769377 158888413 462310815 44414129 428383097 99416342 600657995 674784866 813375850 760245211 777357001 850055612 987456926 961682198 972879700 856028102 863407226 198664286 621009244 639081437 834231984 666693196 967343289 957447730 978649513 304618783 839317524 186262066 449282406 624833860 944961521 257094123 380439544 121384241 341791625 64967081 417332394 347050922 480548010 980796506 991249720 404938418 551591820 465077220 971277985 818212836 967284152 772277272 778331441 922055127 927534856 296584264 838746650 859570487 878696836 145899486 735939950 360310002 974602006 70990756 885478432 241318334 895776040 106318486 555025802 665537899 822037433 732115237 872019045 705871164 874624091 947593760 970599549 984460651 995120827 942726088 985521820 602015818 951413524 478518786 935725962 173982254 289571124 818922760 879108730 880035854 911682229 483483896 649001301 703192422 997704524 577839443 681704973 26898213 592331494 405953877 962026402 855619503 993288961 201774286 677859976 350243814 908710794 603223345 651675203 15158023 489609132 767902101 927133869 263744473 850023306 794642913 983651623 537830543 855503200 553951006 767099776 668941199 701384952 20347294 477124199 888229271 930664309 13429543 151713084 206486685 765543238 574465146 583144879 100102497 239661838 381336270 676290379 256155380 731832379 828597073 838409459 577383991 902877652 333578762 649521591 8808367 843819542 375434832 859738280 695628867 805317521 637084888 670878968 660568194 809051139 521549172 626650910 559606909 670007773 310778803 950499837 709540542 851332524 998312820 998369629 816567523 860730540 354219795 396130770 32514765 316628403 197959505 513062494 999920885 999948263 58592152 107481535 372587628 677754847 259122536 981329220 645576337 946963812 47899886 517189237 633418040 765024188 953209966 999293703 593540797 990451113 532734703 589100354 967616505 988231313 69579647 569392388 792395640 916283058 385592401 637717769 132856802 950026350 140408357 575569134 362671273 953901129 397074431 611656773 123004232 248357711 723145893 889949492 463026512 947473719 655763277 899084003 868771487 950816736 687583641 772992385 3050095 967248783 243627954 956268479 647795502 734619610 169723641 834206951 235792371 775138281 765059512 899325009 787184745 821387401 80470684 343828178 362698154 686002719 116963187 160186615 884344431 923295121 501322416 953265350 469561221 603212977 359729316 656448881 816335000 925499895 160890893 860872862 703299523 910025293 463301300 648813191 818467861 850687846 619769616 986439062 423006715 645884584 57130158 173468169 218624805 964605670 924609963 979111706 477631781 855074545 474576414 949294559 526740147 846420238 249425567 265337830 42677814 839912074 196324189 429720898 197663775 483664807 599833199 953375317 847106808 952700968 663440005 668164174 505881693 572386613 648210032 656141025 429845627 666911804 51672635 237982845 633530097 775831044 127251732 342278190 855491258 910448717 469735972 887977925 755469876 791570767 97622339 620361562 245032242 267408165 21952763 597786268 367581827 407683180 636340940 657595715 849413960 851316679 294456233 758112514 685299888 858846806 982946558 999668849 647833557 847877696 436882571 445962122 81251617 242726341 986116981 992352785 152237945 923765268 340854475 836333619 200938694 967882871 804294404 971562645 950362807 957497902 35085935 134050574 601172018 707810454 596234995 739398179 896850889 904077779 955619687 976919999 173378299 214729257 823735341 933007234 61040285 488876046 399355521 990481736 748637714 926305662 130015639 833741443 314940332 482461778 605397998 746294698 492120567 773063404 341994519 784797441 399679889 677749400 198170007 770786520 995274357 999106926 368300939 940986560 572511947 910323056 90588694 850070334 471327862 788255451 682702492 778009783 306710764 969125342 292961989 379850974 462072690 582345575 827967193 874027582 161160299 826878137 324748399 576468465 669785320 831399115 227103876 238309094 5703907 576675393 914623823 972342733 344492931 746696990 248153621 685238637 995369159 999305839 933759037 963857127 471611885 663635051 209143943 591599092 326837232 963672018 106289215 337575596 610402010 934638441 324675262 432288350 428709491 865224868 296182555 641894170 64859924 171788705 53616547 416373592 298781776 390673047 86659543 199704208 127968017 307120421 131796367 903559052 299955910 901230823 116542538 632149101 411035496 515773837 898596175 951362273 584695564 898962412 573648897 618423210 689006492 827889829 951627293 956915462 348839048 927860012 9494706 99155713 753877890 986548737 648079577 776963714 984505657 986974402 105517866 345608725 290988339 900328638 431227462 749953780 873514659 948806617 898335362 981949365 894658941 986269011 401043381 474670425 864238622 881641961 752800573 964294676 57866910 847355114 318252119 955321271 352207545 791709276 650934451 874373205 651952771 869879615 396720691 518470779 476968754 995754635 447104274 460051830 540256282 802706073 680874342 841560026 209376871 980455418 675438924 888644929 423767706 652382917 917326917 921430557 533105416 561556791 485680409 985093020 761952831 837302738 566063060 671034849 984636310 986324320 69099104 805431816 306318109 597690927 764517765 950878646 615415489 655502206 647247948 676522634 72503974 390191978 51556018 465230333 454044881 962571893 743474147 942675996 875078129 962949332 574751454 611550767 547860348 770637884 205901559 946322773 254153529 312623101 313192766 658320898 60846647 615805550 550111368 868314779 168960280 300917471 459756081 941032505 908764504 971407620 163306133 318032374 82930672 902472787 427913562 619053277 628437512 998763639 390511083 529820434 86859650 847402805 544345396 723486553 203320743 704233673 903802519 907966413 595160994 918873305 694912042 900383680 247395742 530223106 476778963 500357198 936590246 960599616 748299423 849310325 721996366 848691837 832163732 993368744 52219487 506775771 638930517 693297505 373279816 920636990 982371369 999780260 371016498 956407682 222362895 705610131 219736358 554497708 608305172 641386730 134039391 636275735 35002017 986695546 285073833 320859791 101511024 852427550 582805640 980412769 487846997 940006370 511778708 515850652 637831442 767441868 250205222 937788000 344884277 865156455 943592920 987006585 422956396 868892218 830343739 839534619 397646773 521106479 42039670 713211534 839355519 955876572 528179418 931443471 878543704 906890837 516121260 852280161 942931216 985572977 373313715 426654309 118978645 625652051 301905369 661275319 129245880 433580189 18727008 463621114 241419363 531897184 274453974 364005702 225521474 880544033 778736063 983733509 31658176 975621773 125255813 417833978 33464309 244595182 35154460 386033725 8914745 801009510 855007948 917012811 480273123 692710736 528409089 702418600 447357786 452999764 813205498 896743779 622806235 691540425 950387059 974679264 578550872 974640214 96272070 971403963 480590374 605942779 814704780 889747286 45765350 370949464 196105096 638246651 6782348 832807155 523336928 594493630 848892431 934512354 779517316 842492707 966663582 974433496 184250164 278728163 689164580 837921426 242880563 909923841 556127889 628125468 932330581 994269124 363988533 951202905 872094563 911997348 166930501 771054495 129361077 467974930 604309009 759938472 435164298 632942136 377113320 926836846 147393896 324098226 314817181 816281703 553623595 889691514 532883000 960725563 12757061 162308020 394923103 535039697 573226495 627765493 432483069 707342824 934765514 954068382 810186948 919910425 717040725 777790737 521435011 805107767 8954526 751873138 659317023 718413062 528824335 802314546 726719150 759103264 735785408 947822166 398061434 514881523 177865805 217853554 613619513 856647225 245108986 283074968 769984423 798943657 468067627 744332591 880406325 882342132 228006037 487457715 446615174 513812989 948557255 992844130 316503902 498418337 779387944 956299440 591018328 894681183 313252685 761781655 597141863 710764256 340240125 663337533 180219537 795286037 972001775 976378050 23068202 49103434 577447275 834483313 548937653 607768142 773375342 974111495 875397369 914287827 362163052 986705945 212836354 222361567 753852553 773805544 137357982 444259770 300008878 321644055 854411964 972918107 322122817 730005402 153888060 920758968 443610784 579740971 138032623 438874256 679959607 721685814 757148825 825311733 964272880 980999471 936486399 982448149 921503126 936077502 332364022 632201895 879546739 889123350 66404218 978831593 970402167 974967195 371178982 733423401 247525545 835835534 684008438 697908159 496376244 958942891 427321763 830052179 707911206 938604305 783035008 860612310 832448128 971513332 970479680 977889678 740307998 797462050 593364521 748240772 668984219 722412348 811584468 825569061 171668222 380045755 82792553 520128302 926750002 959770025 464710135 730823644 518790587 995006371 799615540 939849455 695942289 790749556 138545180 998522546 318774653 863166514 824492081 849914980 514654017 622977184 783119500 897624752 949992850 971198313 269977978 817179717 781358073 897066021 746853651 762369186 612025090 680527198 256384806 596231268 745152994 881050045 318979030 541849684 338626315 576124882 17318423 946523887 964716190 991669740 379968039 676589539 626789398 665783251 3028967 969065215 759177665 818334301 227898686 787441113 335060859 570214715 353425086 479377580 699971189 829928501 283690040 590775685 86533787 272333585 642676866 929041764 929919266 965063956 705207552 779337470 527634587 691979664 438325257 850812151 522206129 815792460 372314696 690921685 561107344 629823131 104188937 622647001 869925419 983213356 126926088 311495147 360322058 868308427 119114094 785719826 664712607 819792261 241920632 966718681 704760755 824184977 999923252 999947141 506405559 525220408 195573537 470452534 888678246 968510811 498350251 960121051 448056429 977356304 692197294 927753694 84209276 395557840 277550053 391187561 728121535 962468865 64928742 840005925 345387064 515127671 786970256 920349796 118868726 794450199 598387597 725645775 906688883 909218023 874161416 983312195 769067207 841271906 402438460 412126742 825411648 884176278 936984891 997494911 97894817 143328275 278185879 899168347 777762909 922361549 179171413 533252440 290844798 816483030 288228176 409253003 435787250 617561102 513202642 779151540 468063028 636013913 640727704 741388499 122094969 711340747 135696947 901983468 864139494 868162363 80634320 227554363 832251214 881405413 264730917 645031169 668238195 952047134 878036993 887399045 496530384 787135761 691281140 700525427 309653115 497018167 383628047 798850955 980318919 990124908 667271929 906499659 333997269 694239974 521162761 817021842 519277037 532587933 736169833 773100068 579667623 985518194 688015634 891609220 409556822 933823574 71188211 162795335 393348191 879184699 851824116 910966485 31885146 568797249 278447429 366491028 138927077 676408988 203830823 754831107 960421608 986911465 33286454 164360213 547719258 682827559 547696742 685774700 567663897 699340680 184788217 603985140 34928723 142289916 748913141 888828467 858441037 885362676 224174760 457290992 433137304 748128628 920128043 979586291 40836222 276349956 548504289 600691862 307105490 402224505 712375221 938186332 651226968 774835696 606926417 823145871 928067919 961442114 947131432 985526983 137575156 448632861 431277679 724850085 459994061 764712205 862893441 984140410 645077961 835440126 44177916 638683484 128699475 466917823 329190167 657635409 342112069 873312592 362139883 722519055 99407461 714287495 786602361 822177394 251745978 385780907 690598346 730286586 147376550 427788180 553951543 846775126 471522594 868407969 187657022 203056148 439285989 957014606 215517955 913212007 366945549 550743378 944065761 955201256 233980713 841483206 630699829 740383289 953982185 974061172 823612972 865376101 189359587 841317430 904679327 951672442 4876678 333597848 960482927 984601038 335409526 540992542 904472484 954945366 563350036 830674330 505943748 719429072 276468443 600153369 969889978 993269957 178776796 209728012 102804554 164227985 178055690 830487925 467561334 713421942 439189280 948002857 754266368 806978773 269029122 940118089 744771264 846254444 100753598 848834226 449764680 700187916 587489495 904527854 319797540 477625962 356922744 747380781 49269244 309366642 791276793 793743102 35466713 116106192 221470573 526990003 861293752 974979259 385314428 571134617 124776066 871524788 126904919 831190180 633270767 768169421 596997970 747962154 76747993 241668338 733130911 751064259 631337752 837147618 177955020 332381501 125002517 678512831 237773160 428642163 679272845 879247478 725852017 804727384 378653576 506244539 922473250 962339668 975604979 983502885 512265025 580130845 860536312 900676919 13010200 768726588 522970386 717859454 424977182 462611660 419626537 678005519 175305976 953014225 263575817 371844937 437820272 541395746 599823231 640029574 137081522 632210269 152773234 705047538 342103798 473274314 841191029 872416363 673064999 910050463 385491307 742987321 443406467 661543315 638597771 929448206 114266762 409347904 148302168 776507112 334993064 967503846 850197199 959362272 341583528 699590619 274511824 854596282 481282870 636532700 248031784 993373291 746795607 910250397 44291235 980576730 262084371 308753597 927726051 964642800 914425151 959783198 615563325 895504308 285977562 786610372 314988028 324829128 234344576 307599198 385971287 772104454 540678614 840598796 518844215 637481106 539098520 541881596 271502715 640045311 645574423 657077494 637434624 836386100 571098716 758497956 39816196 936529902 907986359 942041869 206216511 336861511 541281635 593780886 226580565 877329456 519409189 571750808 847263568 881771153 687632384 702892971 552442402 598214899 443982907 810299526 641517454 955440639 817286150 829918228 472902405 677417132 30559782 716308111 363842683 984076759 729321939 737277509 981453612 998766283 747869907 840234713 152335255 460178294 134751108 222776496 257624371 567352733 901930974 936685485 334791317 833797374 704311282 943667742 815826785 901671221 558444443 596516565 500294113 698815602 713162898 827802635 845760585 957108994 959751017 966801415 273356848 895480140 694292242 965965429 649809093 773614655 490379577 682291441 25356293 48011175 124445484 740090830 999993252 999993960 219179083 546153906 749618589 987420316 398337789 533780309 976083912 989712233 851827094 949121629 81627558 218327566 860065699 940751038 658465636 662022657 179953161 811984629 74114067 791022476 466758520 785341530 947700089 999493510 618177567 821705306 108909600 988558256 686870582 994825256 445624092 967965984 275925637 600166247 361806647 852457524 59393920 702439799 962166131 990247927 371207476 940803194 875215432 887106262 999865256 999941038 783835938 823020968 121127117 333912012 308812655 585756793 70287751 73652902 914938494 923018776 828401781 832634804 737031640 878062677 759646849 915204515 965777529 989973700 871041280 884288382 658336624 925904352 712205520 863634828 585421423 592405598 134065612 801949998 478773886 968931945 438494272 792265530 486338690 573181143 666927915 895353176 892951369 986434856 853410337 944918281 821027082 831519367 498224411 855408771 697774542 873740642 130857401 596582332 515473023 850878322 116692714 970936987 753761020 837627116 915359331 946364477 198004950 921330124 601083148 715980126 776690974 916792038 615032871 693987035 442425170 809777078 47294095 267185354 951631153 980064930 243607992 556843819 19647444 372363433 330092094 585065300 162418104 201151947 267210780 870812538 515098033 822678997 309644027 845143201 390420882 898153676 208722365 822701868 84166024 640699254 293502614 989302536 228216556 867637332 824627859 901555650 259197295 822939034 420005205 784559890 93539589 916722953 56585852 96543646 724218702 841578709 169286495 934999160 537434632 747288706 428298152 863015160 434555009 894069195 476838914 519947376 273396856 880514258 648669730 996149195 793509742 962305589 716017799 782387065 497549440 884762505 166919687 414321963 223852023 843323742 632095640 928135663 510338432 734212052 111187545 835181112 717278823 830699625 701974579 820808215 811245924 852690410 352700534 462058306 220257423 707134687 789448830 969341251 377835901 531701741 583607976 826884904 37888660 950961188 211687051 398758907 40860496 99153008 614130874 914517373 565385466 899590268 912024842 991898279 609426927 740387261 897766502 981906213 218392014 654433398 210304880 465129758 373442608 667336979 41544764 173307191 56568796 608397923 556361155 871149228 732014148 999008303 247375589 760835540 860426697 951415200 913280771 997126643 367967716 557252246 882701009 889018896 278806680 668620416 208255408 716765421 15227320 786773895 69700008 558800533 3445324 718869160 710931382 905171385 950627317 979847279 988291688 990568254 160149720 513465629 911607500 939888474 96799721 426928941 390475770 452163674 703650519 889799472 205264851 350795685 334861722 391495473 485639044 669030804 659407870 959942750 979392005 980073561 277763599 522067369 560513208 746408451 430239243 787383077 794513297 872944724 226659356 753901312 794890518 922774070 77816827 465394483 332152027 900286047 143508458 397988624 988369274 997343443 370917193 488955246 301265604 329477244 673203512 687266715 146816275 653978624 483340055 539878976 981227611 997861310 844396839 953130953 550151446 635162057 278352979 472609314 596671424 752363891 760296835 809186876 380990526 857156035 969863523 993678046 764169566 974023333 388433328 452590020 70508296 856621271 408204340 590847260 313764055 354750227 689208456 994571801 658276190 743003159 989233122 991893315 127450426 493443627 715642881 723756349 218486146 815506005 806352456 905342043 515049733 668827099 992542727 997107841 229399084 291814538 674361496 744390630 718960473 970586335 421782872 704203111 451343727 968096162 973587566 980339082 150448004 858760774 865326241 969525993 999525533 999774470 131927632 820332193 902467708 988375327 785349089 882568050 703565242 990195787 631701349 980422178 817150002 870540486 186684576 622726575 970006211 978574495 184274959 994343443 139047109 979825779 60424639 947036043 21038623 695847531 893763290 905070800 939516797 966429639 81391934 621534076 208559714 852813182 604206659 991604076 6598604 731390144 125891049 459824466 770910560 837220057 31350361 135953446 285105185 783494545 27487371 324313934 433455391 584366413 894855375 978306671 454545167 491347833 649483998 907760723 823162283 988222906 306925243 490378588 113464816 313697252 492674011 873659499 560515578 690341898 562404640 945185247 166310080 274425001 864462233 991736615 823040014 937625673 510753330 888764447 727522940 804185996 998610576 998753890 465954474 700722019 472408108 510772969 665123623 900806413 47162572 685733264 36201089 197883700 790467057 864472007 160987648 587382785 933294724 983099307 984371934 985718361 657662320 873363889 289210860 628018413 568684889 900265877 499739084 991023553 663067145 730253032 914443752 987183071 886207037 936197045 626306758 747685174 574298892 994125072 429294258 936095848 995412448 995563038 863464249 931292417 99562795 515817182 991888052 996229665 625534302 991996105 595021874 831635934 910176078 923493106 697954400 920903192 77028489 678464159 205981921 290031472 148314145 416911028 341996074 826454051 745773364 945156113 583006246 719681131 209961785 800670444 480588266 853644964 971852247 973770168 367210629 758633155 551182935 595894501 855357775 910843922 46775422 710383971 963890945 968187733 393636384 536302097 177222031 521351306 771911698 945509848 171932143 564114198 631995052 817443334 746885455 766973150 638474598 748966104 265333990 442787597 77700694 351143143 278312101 289549790 791408675 960125856 16051934 296877830 143089212 702404292 521442810 588599479 759812280 836521630 535019346 631220417 809673714 955555278 35058041 533593400 906343129 960364625 539820407 811151808 132673144 680247355 571259165 740241477 611203511 710907891 262188335 773321616 597010776 895638322 278633115 854739574 613845905 680218067 605364676 692934144 244964025 310902094 468918518 773151842 978735201 995583375 760396068 956087954 327769274 821963595 232358124 704323112 858343451 910761922 28965896 480615890 106826187 342418648 262193633 633719203 308591005 703045753 975587658 987859558 750647470 809751806 518085947 809797414 827408530 839004885 697176783 790413037 879861421 927672913 226634521 410147725 881007820 921468076 784793319 844976863 156603585 788745789 136109579 746265583 567873270 940880086 951222507 960492291 40672036 671916456 214792159 597242959 169734617 930084293 413724476 612567290 420966666 820442599 67119880 661078502 92843135 268313935 879471532 903261979 141093548 924267316 901141553 947134591 890993563 931807905 637591589 918440762 879101660 974197027 1978570 966871603 577127607 802781710 402788622 466509882 78610225 895631211 817656657 958239107 653993641 935436122 367301816 828134486 68933609 897401151 163288033 562596447 591947183 976608793 136941213 233879192 335422172 573169703 276476775 901105611 33240664 657333404 334948419 858419542 77276833 775018030 257817464 819854967 98125214 404502639 585804119 705827187 642774475 745168990 844767102 850922813 367427762 773428499 579229915 882571710 521666077 554541457 535592194 640233047 795997135 939949551 704337674 814055695 720206181 894040636 471361620 623530640 256906445 869823548 68857726 807865358 429996648 574893070 848913971 861993555 767150815 991250021 709716267 893935704 497785364 651197051 435162926 971517518 216807943 250118078 272905883 931556618 510349163 592843767 579800533 833973279 33735426 777034471 508967414 633366211 842312438 931199017 847584968 937482659 257119947 320595387 850487285 969429219 227162495 881944110 433393038 991059501 208851120 527599704 41037384 475384601 899730458 955216677 337956112 510657554 741086532 895406977 148699335 249068333 220469145 686493776 918837980 991900070 951827538 977173545 889956663 998843939 643280625 896027188 596156760 845657196 888233187 893708428 876713759 996873051 973125031 977568956 220672721 696281337 945038313 978663339 118689062 524813761 763772393 963675661 817117627 952756868 208388374 691030832 961578914 963392505 350401373 907490667 496296424 936872802 572816014 954024988 96398335 984223538 488559192 642672165 961623730 971149150 479769248 863959856 875633050 993402347 527864347 935272036 910224391 935704994 157509725 491199039 329758147 910746150 326740720 338152152 790342449 945379978 600123539 672467335 114195324 361014104 142412229 403460073 107052390 141446367 756500856 980698190 927151857 954435260 361348180 633170786 448779786 749296909 32271629 382513085 623396851 653222055 222266871 223157402 683839482 801247748 242511296 520393545 124848622 663009745 328565043 964534274 361482179 894203023 371585679 628298163 382808214 870129263 766033740 902178944 217733029 716131182 556250899 819942602 244390381 780139393 3196456 762206459 391027449 526504086 85658849 831482137 618226944 882348141 551924678 801916796 911501685 982209461 514320491 847412157 35244879 160770221 154468551 590488974 708625497 760024210 726477002 738798217 46222196 562501422 326125521 520366400 830971183 932763399 736274476 737598277 225196244 730944003 722922432 907988457 983465962 999164834 217364072 278862575 641351352 684729758 208576748 853815221 107143550 249275337 7089210 473425655 911646717 997525753 370345545 737093954 583635656 766829671 17874441 130384558 407746901 471643801 959762992 987572414 564089725 581517515 881287736 989223822 394643334 843888180 872747284 991844485 928403132 964032798 677718013 912362819 707695616 834360474 527556765 948949644 883106740 999522416 150760521 741195262 180516243 317108680 765944198 928260733 768051358 947601328 976486857 999741485 559184180 872953379 104696004 866680420 694215393 848781916 318401433 830736769 958042686 978695719 726212890 948203959 951906957 957467287 32898698 437212733 8634081 203385990 518516591 893488919 803038871 856527482 116399140 636753348 869139410 878043559 675501421 886685565 644586029 795854524 757167220 924234168 94296299 804285536 894979700 970337833 399148170 922712189 750398667 947280404 9864128 616911342 370057631 791523955 466155114 935346259 490398015 499382667 729996810 971212066 88319323 590294196 692290056 916109248 172288646 186386584 554392932 809464182 217791423 551787198 559822257 710792017 734021867 835942189 115912064 499013600 787937681 938303729 536828509 599588540 763354164 805953012 623299615 757025412 957900482 960350834 519243179 637507827 783521165 840152110 506748086 899484218 51468044 386601642 914740041 957848852 709050328 725420066 244508119 265987602 175079430 958034075 590845538 994175574 1934728 358978443 756851658 976184585 84086187 181968470 563636207 782031601 566437338 659059249 3200304 188747451 508524563 694609071 527336263 787640988 760295625 967180223 164507314 696601330 428561501 747860531 345321026 587010552 707754551 888712008 414680219 865540982 796820322 858917152 21783644 394158961 312925958 468559223 676150795 865309190 926997033 969056916 616150854 891361269 635032990 929084994 286832313 831916962 271263423 702163855 204855000 502317128 796883793 971372820 411636286 556405692 641297772 938696482 332964410 793969075 47692021 774691097 966682120 984823714 126105617 521948233 765592617 805674488 116591570 144123089 591315222 754562441 438019195 714767412 641990351 930333253 114390810 188979884 941345997 959925974 47875745 531507666 844098781 987939800 635266491 714645483 325553003 605432484 820253474 976945632 511870037 927600258 50590477 917721549 509317293 877410282 431982256 947867261 36712185 566083839 658639969 666952191 232292160 772134239 801017735 972885052 264519111 318404276 757158093 759155944 764136197 881833327 434818598 842074692 283359568 290304794 548142371 681219796 751203295 896800100 870447003 958815675 983525258 986815201 905410654 921154708 783520830 944464618 384521455 549004650 725770704 957830537 535663952 977301380 476957336 918939274 807286735 841826002 783081396 819400314 394198864 703677457 785550271 983906622 202970934 297656173 440451956 941698348 125072456 757104934 807735485 864175772 159497323 986000981 666084188 946569884 993766124 997708490 669428211 899478963 334338306 412912108 755859207 849826084 354768567 637305036 26278439 37249181 998675361 999380235 189468542 456625839 352900756 812592235 182981493 299157449 706761173 911033393 555615295 707511064 451283068 714398574 489250915 636987612 245158200 683078873 176103742 761752408 514799521 926729685 396774258 985146048 205927764 832924136 528460841 599099087 547009472 633542895 137603618 762036577 785849463 866759468 338528810 360000410 729547422 801193730 869677560 914734039 483973391 671886424 674078633 913406954 630184402 830468250 560636473 683721260 675957527 833432046 568508858 686894393 172556030 839823159 45561752 347759174 835307321 908559604 533102767 909825939 768049925 950227682 861819195 984036411 351376586 794725479 523345557 895132715 401432691 792877132 820381752 829494402 713301065 795239701 216155374 809143097 357617737 732061217 656215635 988164940 983375484 992515387 995698294 997522044 788882431 861282149 615214968 972667895 423592589 945689913 207961583 488758836 184826672 791324939 93413361 102333923 957838830 980530979 759385997 921010251 475935768 536953577 55393509 872715079 838093973 876284561 923676672 963998885 716288906 794768992 764848054 909002304 556599396 835833420 730532406 934860300 996220425 997748795 510501483 837381195 960909890 965968096 698035962 780969760 500147499 966273724 977820476 996753152 366026373 536370091 507008330 828559618 548862032 888850129 589474314 838430717 417551460 669273695 215953797 403926971 451146876 892228237 784798258 894036255 592061781 768252211 524852820 646162080 750775175 820480204 735212821 975717743 176435468 812794067 917918398 921242964 176470209 813991490 246286575 936275662 225445942 549097953 291469887 664163270 665004588 696858577 353578885 721167132 979756560 995100139 272969707 909350602 531727516 650551725 647355670 848995324 23618310 259603385 730412951 922098667 984367313 999284298 560239170 633364814 322990172 763296454 152252949 200490911 359522620 641209524 222490052 786231135 290512120 985391826 784426767 827943272 90948785 934682000 902702484 963790918 364580153 431039182 552808834 661105893 414294250 640175202 893287002 998939043 695968622 950590886 36654151 969479282 837293005 876345169 420303546 538989865 580890336 885807352 686141221 955860980 814353711 988629938 925633043 991099232 21553025 989924353 737086024 813112946 884155084 923516352 181837771 605426268 992326381 995834397 841094868 908703782 291470087 618092625 460645799 485512409 647535927 929904875 192358996 780544414 494421613 856008905 829614056 957047490 363528036 755081229 293707160 638104730 372733708 471382229 509882587 891244131 215479698 380497073 55567674 961821965 884793384 954877303 317130901 529647289 151861535 995337587 208567571 625276009 243169168 714500240 998098128 998525598 59624725 309409471 629886903 696449246 330023705 402820656 565913447 626855213 422241419 572957982 457982443 481537799 372229386 975143504 761191285 995306175 593706877 657058685 121142451 716160022 568176756 896080005 736981305 739909388 973684807 983729417 836064445 951878223 67958745 72757570 744203969 957748227 211124439 512854898 788874620 940563577 974995042 987464607 112842826 203332798 72201409 468953776 818834978 909778899 5207852 728126238 457702600 465316936 359380664 705379721 875626731 950380725 929424265 993326273 127691720 395010595 639345256 769396883 461588362 660448670 892284353 955252812 900063233 924728223 221131307 918633755 498770396 716017281 665552757 773600213 760285489 964514977 905238916 912587962 737283710 799673838 408955939 707359478 803285986 871781513 963226676 997863489 230981715 911714758 139721612 741820049 83469453 328834347 96427740 336758604 860327224 876920079 54162431 235311490 752497547 989329512 795479795 942268149 295526654 333079418 163073510 209988555 377248530 468692009 618041677 730214016 138550552 387103864 416157646 504318370 857915787 896155075 363735280 370362984 638552290 690088367 242775976 379998121 984271402 987537369 23646108 777448624 313768244 744856158 856869730 923922239 398758381 780427739 159973649 163759197 230733390 685676685 832471325 846417668 682326429 801711214 983942882 995635815 648355703 985436178 676417034 710164254 691953837 987922293 170364097 832512999 207833008 901790789 749997039 885777299 577866249 609149822 552914969 988020009 277432196 525623476 301406495 341078835 616923336 791477293 934490311 967568433 44464835 946377651 813298442 926268137 14735006 397409320 491234645 542663369 924872457 997086676 615351992 919165423 248863791 315329200 256832960 397388902 568726753 935692034 647915811 905808507 428879788 789523889 485320099 555063298 826041096 899605736 367504910 422258882 638860609 730666725 789654167 819921159 461474270 490064064 274647558 724431643 472880186 568022587 578033097 793941245 132700736 490759199 960069621 990598202 718338678 805294735 980200523 997260175 385713102 471438262 940719144 953471559 584834023 961684875 172524126 193771796 231366075 666444382 946826773 991547931 699739356 909205367 785965232 804626041 971240752 990143070 257834955 430905664 851495193 960240314 241761197 707998663 626655439 827772397 705743250 972323334 582425724 807711824 336881343 815059136 861774908 936475099 913797767 920144366 507557903 601565144 519741924 722104092 857992529 947339380 900489461 970322813 579226879 810880487 318061547 628335211 525176806 525444440 141342578 368578728 144793765 577823068 911695392 923195113 458814929 775951982 128434925 259167168 44076816 168640546 589099184 594935745 871301128 879985189 355811493 820687676 20321840 225867468 343413210 892189308 564530934 600096152 293244932 638825439 165259593 686457412 615430978 816649656 952103600 962249735 338792137 460428493 973630453 976593482 167409433 698626498 291868762 748824484 732474746 993218707 845389616 963937667 833795029 929175025 290336971 320118052 146974100 821075694 340625803 643453018 484705974 944215796 68354415 769085514 265739206 668727078 264526037 300518679 108386414 973565939 848444685 873439403 53321510 859181229 630064433 794030997 551500694 670300861 168138776 957648995 383930277 818072331 379725528 520611785 999959538 999966326 115347166 177096023 536662361 542763163 264603014 807813797 797932568 921727730 314439531 656481822 708002014 777037044 438621059 885872867 906447475 959098831 425755096 901161240 763486006 972717854 175538636 887976718 14891540 416334813 580257221 947397802 189055908 843914293 729441935 822674134 953509455 985861783 863490872 880488224 141085902 481653541 481938640 641913801 82402392 825016237 781959178 851850018 349136562 584641236 985036513 986208699 637900096 768100353 93953280 879237979 903611433 915289502 663520746 968785141 449442376 906078846 788884308 792666289 900350276 908282693 417881458 890221009 964217259 997300673 913149342 985680299 757194645 799358401 778239393 922748834 96904356 369737152 238658202 345277396 694922461 887277085 569482154 942266858 263444171 592274190 201810667 346682911 824666151 963364790 658108259 779829112 43070247 293226474 913104729 935163952 316070605 977494386 499860372 834521810 245206823 859144073 317186498 668730906 679875057 701904947 488075871 748207404 20705012 387774803 699731690 876947093 933467433 994736331 837030052 911370777 684442899 728367523 22767164 330012635 876427853 951093371 990070143 999953764 768667067 972634767 799494562 833696575 477072849 584387246 543718412 581884580 366865934 629245195 840669886 883225566 937659108 943743353 922610671 987655166 932546488 971779630 862355280 970458896 62156387 883138623 187261748 407063150 588531610 772748925 517644702 805104956 758997579 786509636 700044308 946100483 647728500 804412360 578593081 891819351 724789913 935050420 362052553 707593543 158401689 886981249 263509143 299147589 534633721 755156479 635090637 825204035 493488414 510718013 238408589 773944886 30605889 136497656 698548982 712232679 534846586 753260253 659356517 686956414 50621202 890787356 164724714 220359312 130733799 449871499 904378700 965115270 854586788 993258344 6350276 230259181 20792011 422242486 420563670 634577560 659933435 942548589 102361088 412778560 765884103 935233434 474174518 748958060 28071276 115749049 353474990 835811507 366914753 821948736 122676921 153004951 629919718 983254581 222200315 324249276 139118616 571380649 669652535 946805359 79833196 424646568 852920973 858109605 646053555 872992720 93627607 698230580 953029183 996198213 820273933 973646397 330769394 580816090 388275608 832020581 953400601 973340029 26869709 511384375 397506400 564888471 447162059 897024186 669629036 728438525 491630120 674221081 443937067 584574450 436522865 574968337 959898657 968387197 495944752 546352985 223266262 551523981 243883919 998207477 653800053 719698182 432028566 664215255 690147450 768367897 529989752 548463139 907470339 966150152 426605835 864741806 484428358 612025489 769095939 858163592 676883078 947502318 37932488 513457439 329547635 563888550 617843063 704570185 218151842 236587009 458861576 890716132 664410538 812109064 712192607 776377493 719842127 905494258 361850148 394532403 366958636 553411288 266016759 496283502 866815770 933907293 598465654 614940584 727502584 775451628 630975410 847494671 488150123 927428285 865581670 981963240 622100592 838905526 403093823 981586048 211788710 278468429 157911292 645805126 367755817 755382824 882217365 941967509 170037836 663573536 757958796 906652376 623311532 943259087 812489368 812557809 650391017 741846239 312301534 741930402 340054708 353550452 18240434 975508879 598805907 648471962 360270703 431808829 645782522 942592480 607681553 618482090 402142207 889370017 579300031 852729408 729923698 905932832 608574301 756884067 306580253 889942397 88769382 646332786 376415340 925959956 548110077 710877265 829888881 831670581 842955984 957933516 425756082 437855650 647797241 850992835 992887011 994110473 339575836 822606560 469944353 847643360 776321030 911734535 623119915 654609339 563373158 714119657 421728313 742356104 856274358 989318155 101526144 149724228 80061681 476037307 731405374 983272954 935496645 935862597 742345891 892944245 902387309 985330467 722447221 971600417 626647539 794487613 817327736 938872197 390739502 595164660 804943253 955062164 159180446 247217838 843937689 938738524 966612960 976066268 934273274 981737005 733898760 984360533 313248414 997546026 958902638 985523287 562889511 595885857 474780050 889251719 613556073 942409584 152564717 726858049 199323849 953038160 551003213 750676642 200541692 753950496 956946032 966466476 221485979 716087880 627596423 830869179 719722035 765236930 629831498 977890119 47039102 536302710 92815692 232318407 949502675 972998666 596728565 828908080 835932658 967033403 62228174 837883203 693317844 756248343 311237946 325811927 462024388 905287518 220166970 723443300 876854650 948832395 262261319 711097209 424196767 461715484 658815955 723232434 3123334 87202825 853500171 968163744 84164025 800677413 752171638 929879313 703350204 757102607 742239966 869500363 783434395 918604407 938400774 941916084 974961588 989844896 867633073 875286280 355122228 810136812 654444355 979902158 591419774 811191246 609823009 651940578 437840297 955708983 277336851 862559093 672568948 819942416 330338726 694303818 74838037 836957951 309814418 477887584 514277622 791339094 37645228 247876477 484350360 603355693 785193501 909187479 341478017 945004131 58943225 640969425 604451743 702922932 818546874 914624362 473211271 503365693 487772194 852888668 287107944 369289846 168675474 843718117 537409437 935738205 402028765 916309174 899961846 952217852 609811754 689988347 132644070 897904993 792052485 897524519 196734102 400576985 140287293 465283303 431110679 648659949 551727174 892342910 677125964 679015697 798616320 924178881 707057614 892738413 361847966 987318222 642012003 843273940 331275986 953031068 797968819 856036702 323963147 720293704 222278389 572251421 621225076 747063124 491055875 524575551 216328662 440718205 224783711 384696908 806607157 930695345 956733929 988583123 434532024 495124086 290405463 306896731 520087522 600630563 852923409 908003390 972793684 984797172 228645821 919475589 97475379 227405333 873997284 926594988 270891659 601740987 293031976 647234837 453743062 759716066 566169265 594607153 829157495 964427521 32982038 207541122 764461922 810051301 612921735 633381574 866933785 903690632 763676477 883808271 182032017 629866277 351946610 367014102 339326884 555947418 585713038 728234953 358737616 952838486 536814491 835576601 89978382 693321283 437180801 683616981 279069674 727650193 844410671 996110108 372960658 628398512 306315610 713647360 627696234 694795100 892065660 963375726 361779012 926342158 622509139 666205961 84620639 880833258 276749671 330370620 596978837 663975777 247254483 751275562 188614503 263460031 805433219 903610646 522723630 757738049 132242688 754362882 218929712 475886739 66147334 620658824 305231854 730132092 382858222 621586443 806569634 956326315 723719918 871410688 960304520 989801102 266351300 545445358 42427968 631144241 541307250 891631450 811990675 881833771 165655196 303941437 41236767 59089472 398136606 780746513 992564058 997678530 946067080 970806763 846176464 984393452 58570432 972873972 122861290 812724246 863615599 972240248 780637029 967035642 56802626 929371251 4874338 912968861 803727982 938896180 438971491 610208045 965892203 972116232 674109612 760192060 128258707 219874132 569913416 755018753 429481360 749090787 711140355 983979133 268338593 304082659 419814178 549787041 962157162 986282135 319573937 438936679 748314086 979584448 921171207 984142230 976566170 991806736 138333271 738821367 695025496 720927663 141796512 472598597 601062972 932258233 352650748 974540586 949990949 977202343 726935705 887310752 578562170 849697312 505326263 830493944 590124626 970466374 836230794 959941854 170513901 977373197 506995395 835192831 804953670 942684390 717508485 934895094 147197365 497880775 800677547 854084421 891226168 992688242 59355058 820898710 509613947 842122009 998148667 998910517 315338182 966607135 936805088 965851290 908822532 940378903 41762465 126774626 627650009 858277140 497474404 637384604 579141389 822696771 989933711 995321101 217064859 712995651 244533340 710183585 975973810 982611431 858990846 873972539 33231427 357429538 406684607 633105796 740000241 947145897 695923258 969656921 603803442 701177598 140934943 266832061 740897628 828185616 757764942 959250395 377209046 657523812 526696335 773258577 202320585 475911873 469221111 640134329 724117340 776863556 394476333 532012775 201290144 834421347 298548360 556794341 947967348 981330831 190736558 704761476 460382690 721673704 205754514 775422008 896425395 938284297 469840587 713159864 521368135 724949622 412881115 909520353 634380048 896803101 382949868 883514627 524436998 669766781 942901927 952877628 702949106 743619569 273404645 985810424 803077815 888772083 563084487 594147909 30396455 320935205 122076434 784591353 966310161 998858015 102423444 835459364 491343732 914185239 157323253 625001637 585212957 849366238 256330162 733677170 291282319 711944295 281797398 550730703 692294941 807426650 755386792 895438936 147269540 465546686 613658003 747612118 113114090 676397944 422442119 649254007 843408571 879706410 624038177 881002097 884751446 927095925 579025466 672063848 840734148 926000588 191834856 923793668 270059542 387080197 302651316 883867457 460905048 525601624 965822259 997645141 30199026 338522490 481453354 999712739 920191030 955858544 75431469 757789478 139708356 408240253 773477810 788682215 964772963 965490528 117342346 410723707 886852492 972740041 623736410 825281605 815451021 878579086 608708649 660274307 874046874 955631849 364293063 579477657 598625419 845903681 283070854 780586364 990173973 990316885 928443348 944713624 149665132 226090411 265064686 382645286 926039702 939376512 236407375 634824265 236614058 263101855 582020134 998294375 652507241 958642515 5712981 760784941 13556314 847035827 502546738 623522263 32607296 974155064 388978686 538393723 339399768 673615831 615875290 990815561 128061552 465941620 6051675 321875007 944011043 983369115 230640777 312762106 381765967 565553916 478244222 568168737 86152115 622687998 229579491 967724712 72633644 755587712 355280206 456166515 98307183 297732028 840323935 892475124 40086508 527397002 452471412 850084634 316802205 474520362 472475669 971621063 938770602 981530660 745341013 792256514 331943887 698302918 994080737 998854628 288237588 809486459 30814886 583274750 901313805 901613425 186935018 496222004 47604950 295169975 380746314 833316614 314704466 706137226 514521076 565455256 325847480 961565809 350367377 791881014 630360837 983623979 737405359 887198487 870621901 934024053 682644777 814217303 134447810 743741580 517036264 662764160 637309908 701424218 470387861 853877577 212773192 814918516 210406786 684676412 677777514 715836958 193643588 433021947 891997622 940907359 332102607 867064296 897540717 945593457 736867697 779323960 139229832 695576678 847500677 863142224 717282615 939017406 965474547 994358062 144009772 862199512 887074629 937100589 234015889 982854105 948079712 970758584 291417880 551952311 322702555 419574907 683132396 921619874 767152100 872530407 197109236 221914033 30424661 600263431 619145055 863852023 551749606 805817071 39208640 840982869 270959968 424268343 679901104 882491353 935463212 962588924 436516595 591618381 577012406 710200476 159608925 550152384 766235288 954762363 620715243 901941602 144898775 477517627 802953430 830140286 340302780 632273199 532852280 846973932 163287300 307150702 640727788 721750908 588658561 845077986 21730223 955322993 679869222 803610645 843380918 895529570 459328956 650340932 155932485 512479715 763503994 928831979 545383989 955003621 226901833 675066198 820217705 868027940 872343350 979576699 498422522 984966812 488174839 991311152 829584185 889501450 867782474 972248812 841438692 898552973 684154459 809341989 307508473 653543974 233789356 411074362 867658737 874527452 846873145 950506146 456553286 512749508 201031537 472269000 560683782 666888160 563160852 928160868 652811919 750574715 383113154 710890924 885993153 951359303 432210687 571011947 480862744 552309814 893812013 987232559 446181207 561436353 428332375 856542644 379908692 828732099 490136361 699091329 837653784 862481221 836113402 882744751 632155066 834557465 660875440 988833657 125627945 950274577 535113226 858466018 402861518 563204208 71861544 754864329 163799866 669092407 528422892 690050492 167685009 978379233 324714934 486318414 541000358 627302098 428678491 629871539 517170686 619341709 337183872 841104980 820913872 832200783 325868997 354440696 638244624 866376914 357481032 818248908 706611694 809821968 418795252 564098807 854572662 857195702 243111927 490779584 331129788 492064301 851263075 914221538 320848195 731389976 225763233 711176914 433717979 793091849 53280530 299227822 726309464 837026748 670360936 918434915 523603781 955829241 9270991 883178798 365942611 513449035 237140524 825789099 372760975 409805357 433206665 752854221 479665511 663617767 79415872 932266108 428142305 904454284 99287662 648381542 936166833 984286428 784565409 888255490 806279201 919296985 304955430 524552876 801731317 888652075 588855678 971452622 787976000 900203790 623837375 641843722 827020804 881173463 52768844 982995427 663038941 780338234 549034195 639085341 856777861 934032192 469541460 847367332 687150855 831952911 787057682 972433029 362576901 767119008 840401706 949474715 385600626 434905873 252149560 986746260 727177308 889913168 808934341 993388380 985782307 995886204 229913881 834733617 581062435 832219241 837972064 973745376 277834453 675143730 798160228 945885080 644103114 796682438 951528650 965853390 461074811 467865588 373859619 882347260 244358968 535742354 200233039 811147795 858923965 860872390 441189531 868020505 66402088 266413874 813347461 887056015 731479169 911511679 186783342 379967791 800125581 889594073 448197764 567791313 615107780 652445142 664362033 873867949 420877318 703730137 687279203 939709401 900163128 999693695 957744423 987065679 977244024 985085277 709887396 920845957 595723355 905006658 541534360 909415388 381439140 408091204 10607692 962323071 440007712 503426653 516568051 879146612 188848796 399141494 229281695 802512680 338070502 664374417 19814086 371286334 723124252 887005311 946992098 975969936 41907336 793391562 110358816 573709081 983747825 993933607 296659946 745453222 314733670 716474699 780629078 843799739 47956462 594083939 480055957 760887594 74560134 275730053 674074052 983570629 927541664 967212706 530015887 740593449 306965328 682443124 111145413 202197162 735379628 830172518 569843938 867169999 725429733 988063980 423977053 687935942 154034593 555875967 691876645 911006411 518260781 675850357 974960694 984800749 348271190 704212384 302166952 810179573 873635340 945875849 377257826 420243922 609882542 644823199 541288139 847348892 554901574 911898977 435848310 765818696 149717103 524336059 132524136 610801744 488399217 678386620 213442850 651193189 155067543 872517310 102805751 117674143 529959961 848923270 822860897 876475016 543306733 657681267 531367854 876245961 310098390 878352539 453214757 876197206 631234209 926842390 597528615 883801913 388369757 736480711 902667785 975420189 185276959 909196123 784417377 911952703 994381071 997915127 530202425 798796469 980209803 984563968 499509767 793111676 735705375 742724798 709207491 943509893 493362998 712290003 649829262 764528319 945169489 985764649 303569504 757438548 573921106 916443618 858919150 948939708 470663076 602197096 655428596 690949025 710530349 955309815 564523985 991322718 275199557 996333707 819943823 997292745 403932995 640578393 983164150 987579228 125784129 934401095 675426507 920833080 446214806 452107677 927181979 949378454 801037508 993190986 284886243 479399240 506308786 764176564 734198991 756193601 14366515 656441539 211151775 573106619 19864887 455594798 119589413 774003859 282019440 467236405 151045247 952359835 291019635 870417298 287479965 912924318 795595631 817291692 817899159 951703535 383636256 473940371 852496844 919567100 76945967 685647841 833693040 985144120 936037074 938800798 414959493 755744626 14113974 794076685 937863289 949780884 423317077 927349852 530580643 851537096 875646865 912878320 10423554 480566261 335195381 354074284 144157332 325993750 659921689 811621423 665430034 936134424 319638642 349499726 611318569 619319024 547080171 972414156 551479833 862512399 272327351 438556234 310634655 316273268 961453912 984868825 386036083 958391871 422141436 494538342 936218792 982949596 631772811 647226174 221829131 490666936 802219069 905330142 416056246 685580726 699221308 938729383 376277785 398199103 769246192 951086523 398906183 937131692 643141440 933311367 71959802 813965288 697222038 943356990 966707919 978502119 567782637 749172533 579236625 913139661 511170503 824086310 837268408 936165766 86372095 701405005 161682995 966083258 76416402 939652897 205736599 769970369 262946709 516923482 789642464 863241813 613749843 787351932 500935224 755257116 363592019 970736225 53567971 313927428 605019029 733153249 693216212 882475990 690531081 842680288 765110446 795570554 623516245 689093954 251450757 887832060 199354237 425181963 60044358 676948062 286715382 566017342 299793031 784655192 995312715 995907992 807911721 861950160 15006671 69048891 267257445 699159766 75430013 480830279 595893133 665521915 750454445 963790754 827409956 926652714 182746758 679212276 229532407 778527172 379698228 789243325 317364547 680572228 467743870 500032361 362088017 649629275 794454791 934968566 637109634 907242916 153173445 564015230 158882839 770856774 16159156 46945117 772795131 893256065 274163709 495016140 860843633 882269444 264408614 908150489 180954572 776096557 621962425 971080984 622694592 877319531 920550228 974872590 90327847 110949432 507388502 908675571 961084092 989637899 496602192 764026218 41688134 403637693 964734278 969782057 386036666 712916380 563100605 593505726 652842592 916242833 475346911 523797205 712086345 714791545 599626746 988855936 5127399 973171729 468996295 554313233 770454499 918295726 580291574 947274439 326004238 333522247 862574643 913330616 75487415 780909060 541664756 646824948 61476067 711214406 735242213 877363390 390334501 927211673 991960309 997457006 920782155 994078239 979959832 994107936 625551077 886849409 223849430 462977416 443077815 906565317 138548415 542667999 965965240 972047871 180203309 269340508 838971647 994746187 314421175 737414515 114914396 707791098 22573153 611285923 377744196 961952790 187310037 519127590 78587479 354321622 859332089 972394088 561580685 814576264 765969294 831769081 667296151 958472470 603081343 660239365 220539850 582593657 535762172 650630997 764936681 994540332 775232317 987760693 811832926 896193247 344332611 599410794 251543016 410956379 22986125 525580456 361643808 398994074 336754117 789036499 309202346 626267270 921804251 972488314 772241743 809046690 529218218 943638419 979560504 994828656 454758657 998294429 982765637 989744768 391642610 665339843 224380961 837919140 883943556 907840868 434894138 914369688 690919501 971972666 876589570 950054389 990306873 991287037 667473248 822846439 317656700 608851759 150312382 979797733 501216636 989345921 131391758 862878629 522998920 657453827 644534680 817591559 10476208 475651226 182060522 687309622 508941347 798509911 51879151 159507194 76688643 629578933 146817444 935232679 706113719 912301980 423654507 558825001 569908229 730024348 342853983 531631745 336871948 886893222 72836424 928321947 952297483 978354201 526980366 776410382 848538959 926192229 589972104 592915551 299822997 602745830 749058122 776980615 950901911 979641605 942748344 944445454 8186970 616075214 108019975 569306428 507021930 983946398 865681830 914350984 17400881 848234575 365159221 743400980 865607246 870069311 606517162 636570524 190188454 923237425 572101109 672647403 992484424 993073148 364718275 605359826 948950274 989035268 758009296 817629329 226084817 418653689 892823671 979076660 554073515 878836547 966908543 968243715 299298890 675603530 370848015 521342170 358546842 563598067 574022920 787158403 251963108 821844935 362293486 532178967 179521419 264350650 223979955 931353556 614805227 786623660 152259760 910793530 842247590 863470180 192702113 286430258 382141336 880506425 870535914 899669144 540804761 605833891 99861030 836761121 197047031 959671635 848716141 887317387 444803893 667448499 642365597 787320217 668251896 860108190 193597298 407248448 750752815 880722632 830409233 884532710 678432335 908215394 439675960 916665274 62220759 794453568 651482250 904794356 221506297 514013375 880291399 958530539 95257122 455841750 575757519 604264305 821305857 854938143 158681764 962212076 627082736 983124067 44674530 159578497 625619256 724535920 364849295 818561344 959660443 971764469 896284617 987226970 98697761 784291112 113068265 441909441 638041190 722202161 207111949 487753851 484941585 952842456 3061284 619392274 675098194 789462091 532930051 788081786 377594290 439800738 531014403 984748186 405915354 580932514 582827391 727672819 661588666 728908705 351182169 722168429 851890972 867578786 782024609 943571460 794399467 999101033 811682751 925634944 328054041 523595331 34080422 463039890 688074576 724550554 558131922 781836976 614940657 626660082 94488533 543647249 23017916 994769864 937609210 995700598 268573750 901386854 746314316 991169719 964132746 970752390 361428509 827052349 545745951 605406406 853447183 917410617 433697004 592502849 491719731 651604839 60671899 529148329 341509308 886861449 781217025 976705067 942742130 974166297 800813139 915193861 448509895 797582634 324482384 678516347 847082783 900884982 423329621 462016990 99922295 618037352 719972950 874890402 118031169 761090134 906323078 973051827 628698956 650970864 390427803 599108395 650894504 823863728 227428109 883139028 578488674 760731335 345711124 642209825 667235576 764853672 195711371 605691112 467897277 933982409 893378134 974503320 750785591 873114445 800499619 857499888 68734176 89745606 420827520 602177368 280208769 421802813 450081753 593416488 7854350 330723382 418310253 592596863 216712939 935919464 884653095 991203256 412743524 650199063 104889586 627779507 478482161 558741615 768630597 971868842 437748104 999076648 664240780 675402707 331893752 870175573 422365597 614141802 836597774 897668232 144373781 936530889 882202890 914390921 8622650 784381543 689500269 811025026 42076407 489470471 48541339 847671112 180189945 258036031 776792104 999964364 475119938 953378368 694788044 842926558 284524497 875456116 888669555 943561874 150342954 370112952 138909382 274720879 95891852 628648800 1043125 809932100 229819173 457602981 164700054 757237629 402733710 953211820 288600305 713745441 419461198 553030162 309415683 875643227 454370559 805362066 165368519 509394301 12395937 805075512 86083536 467977643 872793849 998200059 938430263 953416972 795106306 977206430 487058689 956319585 116078379 644256387 37818954 909896664 733041664 958232948 88673486 357490862 320900433 991503875 991118329 992970143 250716299 531461109 525658014 846335210 752305096 990671840 337025549 492918760 536742855 791698569 866107857 896725651 524189575 893924936 295196772 796997207 113678651 678299705 964063749 983995034 132951593 564239649 125087827 965005695 484526428 661188953 448223237 730370106 920652047 930025129 846934058 879853724 795186064 991221575 200065269 795355399 763298979 823964186 839937610 841602047 486603341 722842605 838590362 958381257 787454011 893494444 621291046 628392233 371040736 673411277 661320487 669405746 172662999 556166597 166879964 209930367 683014784 968215690 351129230 598213917 976946358 982635869 497062345 506465367 87993886 937127609 777339622 846631914 894617162 933026527 958421024 982987629 23986667 930946741 618919600 923731186 421615036 638794991 734303612 881787489 362515202 980895452 646647751 795025523 764163914 899434866 654197784 893308814 66953953 860252508 934074797 947669104 553880724 896371976 741724184 920906101 308112134 944578065 639626931 734779473 546644748 844333949 472062089 486887708 292162343 639874149 540172346 781037989 111565858 678687034 573670198 925889164 249371353 389565760 749258786 905160412 238485286 532789093 34661161 713024194 560547366 580031092 725769756 922914115 784293986 967231382 508046054 842408904 167164632 313292168 509496318 951528688 121884345 557690272 558415080 725673525 930434551 960224619 16998484 519513999 222342885 853790868 739041112 989096260 445435706 906133491 762467756 943249484 914730951 944841860 42547400 635430973 201238071 629213788 954794514 981465504 590923657 617181756 653946763 850044215 865044672 932911691 654231072 868456636 526298847 994469135 692996200 999186504 645348022 835374421 648467977 719496371 786251424 835337108 542884438 580187599 925257344 991616407 607545753 674067355 530379547 939355515 822062157 862730592 713938239 780052366 476081329 709790847 442369572 697811576 323380790 400567974 947946709 948753663 792802895 896436678 9272349 261425152 435888607 451920088 884706713 981186425 663260628 949644384 828485981 953003475 387900954 459259683 357434480 940003062 582824939 687971829 502223606 536529477 741816305 964719373 597088660 994634447 92257721 671391350 426652456 878787351 71468777 815025171 536650940 869535080 186281216 993336748 359694011 900919477 619782094 690736742 551500943 686024345 493440204 987687988 364041426 817653495 573850383 680081926 500232409 797226780 77044670 495365687 954925138 979998376 906672555 975342114 853589918 863549625 528816036 623711832 987821930 998644003 380379336 408135882 315715319 444457874 204645744 452623229 131039254 820157749 230618500 596601141 849623751 997539741 488886587 550001317 947179205 957812112 531882719 761803014 421126336 467065917 869179790 952978842 16186377 58199151 107912358 699620571 260777215 520017573 142495027 686021255 365307753 727067957 415387369 497146129 570835587 906074962 898072848 931797856 258996298 391991670 365931958 447492621 898194324 926312757 243646720 988773571 459400123 704484548 120444179 339046339 743693033 856309596 360661624 878963702 421339764 932570697 195147680 802322201 259621362 921316672 268748624 806119949 262216238 326062879 771452013 814976869 853260802 901154879 347770051 996701884 128511789 459058215 515545972 720779832 354581546 565747932 607578096 750296338 89406808 584363947 441127789 466898798 117904568 146861019 722636798 941142792 858412054 873039171 995789895 999146065 795898691 946612532 619118337 704933274 940215383 942094531 697059201 753346904 716715048 935805983 923585487 952820823 883154089 892772661 670364136 976848360 331941043 648092182 506860553 755399311 433438633 618882378 684907272 898081256 152056607 855113148 618351711 893085799 217122677 934725166 676833174 706337059 149680810 345394776 431331964 812034077 826545323 963703368 947683713 993851681 439537150 549405717 392659183 697838715 578641020 838270825 617878911 659362923 13116917 56955946 237160970 769404858 966257243 982243462 445523954 627751941 398090648 653346748 881263535 939526260 305827280 857391798 675793841 905584899 859946810 963953883 973282947 980008260 427593888 635139422 963039690 991142063 430602636 790824007 370161215 409895117 627733682 906656419 529067322 599882767 908804848 981776498 659131326 982465394 560676212 812636613 80021927 855512767 997149111 998126801 589107751 834497353 353246251 676946209 717094636 982806778 769487418 973448900 847941898 897775039 810182672 910600421 95860697 852938192 742934266 953047491 95770354 629810947 453217293 842417811 927929794 972587601 961128653 973779136 384495221 908899255 580636211 628324233 428576356 607213453 202269969 590000517 992610817 997588396 963781606 998512513 971225620 975055773 21332005 476487774 971821815 977185430 748622918 847975877 946023146 987295750 282430476 909369996 652923890 837582631 18236155 729366580 495154831 519568270 132969983 828707390 931788522 976173650 450374828 922536561 538067603 687302793 92386718 849744570 468842340 938463383 931941722 973508418 849175060 948143073 630549199 778223841 42105991 178822664 583849099 883097033 126100776 989149644 177435058 828621896 760486952 827389894 199495105 502499732 717996327 776226849 494937461 717986283 67429306 970554668 883284402 888839304 882379197 953480471 643057049 706300786 594478565 957486951 616581618 857682466 159360840 173386778 290818223 801996759 196593677 410456945 431345457 552087595 207760714 677175572 938060987 944454688 413531480 522580087 346118799 751312884 719725775 730638465 17155103 828725407 774829944 862135368 95540918 495320287 750507442 819089639 766848570 913075776 108101854 486544049 182504175 370632017 652620519 695582442 209679506 294966466 401333403 452595864 523982382 699614985 858533386 901566624 79932637 813104772 271434373 944582613 782220793 987600024 423183785 720030793 200982223 561199699 626791828 793194205 841602604 907651578 313857706 924917236 379507548 868533820 548417645 745904643 740877468 912756291 784693035 797061218 672333121 689500695 7255351 925507348 391772877 959803102 300343679 585332743 194954423 624841249 644039976 938372640 290668213 619303328 708639380 742183525 931163120 970026798 991824024 997767977 315579392 947396113 185289853 806752574 970275701 972658784 378246252 593673548 669047115 968762156 934485362 966311529 749068322 784683418 987751363 989152024 112319288 700704844 571897712 879716441 284750253 909635568 251789914 816733055 661694782 767166726 312747511 800076160 678695229 964196696 94937254 291078978 320535179 716430581 412455151 850906506 459316991 600287651 840196091 921414721 111133812 239032280 246903848 353898822 841678241 928010244 93870056 277237367 722669623 933994287 895072941 902687059 752277001 760565813 953681206 987023072 93437204 570580011 949245525 956808769 137970252 550254101 712257279 739619899 925417401 952402677 768250918 983624444 818588843 900296105 627071645 683396017 720430539 903307663 519018459 646816750 311366607 380748209 161162821 595983185 820311692 849842114 533384078 776092664 941541042 968798991 11995800 646228696 390064336 478473665 128864022 515062648 918298552 933189413 128861048 188454109 900296566 912994441 462698396 507582362 862161487 909622732 569400216 739772418 365239485 605107889 124366368 912122138 709142612 772336856 854825002 973907573 470607653 796590911 57236658 838319647 901539484 934767678 372679117 884401064 114146140 223325757 63455085 987464342 124337229 894157650 229372230 606604133 409809084 970146212 765118023 776280105 916411021 977873013 198171470 713270647 319828005 916970152 379402461 804980766 170588007 877688107 348293745 909340344 159508367 299129646 964997690 984039958 869728400 894862532 452549719 797223021 328677288 431664482 731302935 734000337 886739310 935206260 856198146 878893257 437080573 953654172 448504507 631199391 854544246 859453750 905846944 969813203 999533038 999866641 965418051 974164288 701767810 785711304 869860286 985851469 806323733 936217854 673571444 954293968 906272908 963553379 601671654 985227566 116950037 141476883 399276655 452186444 850550211 879097726 518921581 950754584 600888317 835803559 873677548 923409626 771713016 789721768 654790885 745671661 985677281 988207079 945526124 975182368 399241041 822951927 724372507 950749995 533318964 885242085 372174246 680437853 521093997 632059337 82139082 701853732 526108384 588512871 785756526 974331053 228548802 930629118 85392306 135937686 28993420 283536284 71788506 868688175 794058161 925540183 769149557 849193368 857582883 858738281 341350524 632316837 799257206 912427690 41235710 427609176 835078245 941904615 747195808 841864614 597475718 943559436 647144872 861013037 567336463 722931910 392291812 440551832 362441318 851547859 927264119 941355368 383373168 857035665 454772729 465301485 582876491 845697620 661351680 878920043 326004561 721580573 832846776 936736788 366160273 728310107 729253056 996157221 517067620 862753178 863846838 882471397 330248126 912638592 946224880 993259758 817574104 920049974 174863075 438991802 390764573 748854562 247356490 276129404 748114511 874893207 526880110 833087398 520259814 931312067 371898898 485903899 884968524 920782712 552986102 764057716 990136298 996266133 221570496 748517970 153096489 382782426 522167109 890148830 463655792 711222451 559550774 978737907 421647694 426432615 440071290 729629796 729211180 864200077 865672485 930653395 490647131 613541237 831591024 909936255 786272223 950868252 863699447 889830268 821856972 940605122 4135920 464975737 782266112 824744469 927940152 930283596 500648500 877421466 908148225 989064283 375647989 487612213 677310634 960843317 921591790 930968993 499462374 968290374 257538910 513137425 394337670 984748762 433955997 611336121 990877263 993801102 740717642 806101454 912364329 997093014 216668561 667374213 679683335 873136970 514738470 668085566 228380122 334528241 37732531 919493259 925300904 959376600 756518225 857277486 542720636 593716847 357580306 778465108 423418008 908522126 791151315 854513441 168444886 498569919 643467837 853630360 336134933 570853695 415511000 424579824 575604237 937845257 855393858 942750458 261874789 806325513 639522226 728668048 847262862 989353417 908686344 954698749 789932442 938325992 121774066 191446153 291698208 597117511 495046349 917054269 284619982 739990330 59198740 146748284 424852113 670529548 601536173 692051339 357791113 798943592 886658181 928169296 795337122 975755274 981005553 996393351 681765311 700394071 960709047 981163373 388446758 524386765 432261214 498562971 940492102 944200929 848365810 996758308 257415911 447190076 370628303 822756407 929345199 931040238 113352744 999040889 75055886 570117523 93493446 841513287 439384950 767004563 782024325 926059367 4595022 873586116 949946545 988681450 760740494 948278807 975766364 995748927 554438415 585373887 53012156 314202877 622052299 637213032 840103067 948422958 228632884 734541944 479805850 737859158 696046665 863384864 786093033 922747586 72208853 196446052 613595825 637862262 866694272 910038479 632803850 663989099 201429494 309127182 416772366 923963149 193995243 428290115 132085470 402840272 731089084 958851633 297412994 682097776 408996200 480805285 470158044 608697608 236758398 444678500 748526189 975965619 930284457 953940578 1728076 733412249 900738520 933974456 321651126 443254523 921849064 963503144 443158596 821651627 102757896 553817924 16839675 741357664 945647551 976108441 736796709 840201088 998412377 998839161 165573064 327839330 718746518 921742718 477345613 588939268 749586885 773975679 784426139 857683821 830304515 863277766 853007351 982805104 836789103 840791799 543800636 650626884 29289236 395121556 863494236 909246616 745963081 908061268 749625735 812880122 809646283 958515648 704454519 845546852 979513652 993861099 516412299 798239449 734699303 783736213 189079312 387637982 725619415 742138531 474222655 938658606 737028630 909460349 777465625 857200162 554550627 692973913 649922506 892939097 404255919 701171204 617271545 805873736 95704634 679036290 861523120 871044136 877756034 881624614 720992780 726077337 570753977 932039190 613235235 914050505 701743939 922143024 546007668 832151702 855561695 921313007 138149492 397649962 427863547 946111656 157447514 550954498 16223244 653014301 889585561 897253879 874940684 898721966 207685116 303507067 594765067 824211530 844464440 876353264 717423367 781606010 763230783 997848137 332939578 883358438 961701425 985892841 306558249 419433666 796081978 905117001 636605868 889434134 152173681 479004462 691303277 893463652 232935102 814898415 37497711 768565267 781055181 831733920 542922904 881752052 494399077 605633666 662251449 889054654 45177363 726273764 549543384 673494916 267895222 552483176 772810170 830281947 130453918 558005934 277184759 541298829 608489008 784353274 744821863 798447210 431695502 692617513 438901261 674594700 746926577 953651933 47293298 896476645 981500770 985447019 329440823 419350372 914387159 938476451 703463505 917600754 6294524 486268629 419735748 489930962 91028351 100443213 348480117 862488066 11146287 246988435 17628633 112497230 531846769 853610172 758274240 784173056 487727402 984933227 719510145 995631381 494977160 920538116 644579797 655438559 38631768 786839373 675828915 799432059 631876646 840050597 586982696 959520818 522875466 874844537 71240187 798153028 419225875 664213775 497104455 775798145 651061516 832624844 417439673 933952641 536269246 726625647 426418313 921831244 258839940 306999145 110320298 702197602 766086607 854915970 815145001 876167229 800384841 856525779 324043459 520361630 767440061 845982847 695380173 854696884 593286807 714684280 338120856 622823606 517067773 650944906 645048464 813113077 676124049 791492182 443734817 514133062 96511089 149291430 385250808 724496969 990018210 996949596 917292379 928143818 681963298 832370527 900169985 993785639 770787608 813670927 455722516 898535586 668275429 959255980 659852956 677195461 907567782 945805178 122022967 947702457 971876808 992071788 249307663 913111936 679795209 735176053 38285507 967416869 307543625 881742294 411556052 480319925 443657456 474638445 247800122 563822886 522538557 955605260 233930615 986171136 489115058 947840501 748127402 951361566 992261993 996010746 554448110 723030306 4204786 776993398 892504911 900900956 740346941 810075849 750555210 850641724 985247388 999112822 329997141 369759088 383881462 410418236 49338904 83492701 727927789 840175804 39690504 893561809 542431020 898033228 881764064 974075874 150070952 955642656 656399691 866248719 917749726 984518714 274282901 409207677 474771305 948868824 812712107 946246408 670501499 726154165 51989677 70807280 845121110 924684170 373590724 732396986 328247355 872391384 485656605 823364522 716476409 758429767 389094864 868429292 460669273 545402708 582672362 973634776 310028195 323665370 624224034 650223452 262964300 494923980 660222203 845747364 536226943 790554820 173343370 402195283 67423875 174051843 138291148 748832538 714417336 776356787 71100990 910454941 838003609 882338280 820863033 890555631 89688857 678178801 962353020 965368837 290128040 503255229 3523901 445098129 290629493 656732890 225412564 674470662 768047240 836654379 347494976 667437321 643404411 975770546 532963917 690705445 755311079 773293331 299181200 591840305 262138474 559478612 673850131 993541184 26884463 146613468 860309827 938597746 239172203 867415044 340029847 575964178 611153220 731981139 425869784 750126080 141912586 915768077 99301299 669710735 356106309 843226770 842656226 867621387 658262154 707124190 491733016 754865645 952468196 970229645 196358449 421123166 730925510 760734897 745256699 773564008 55668458 332445418 213588969 647434030 255461757 400774417 630924433 993220239 299133687 512135305 394208183 883352396 338890176 666865951 710217594 737369941 635862431 799754978 862995999 963488491 467630115 733208682 480554131 776806687 842050916 845378860 370734941 934804857 689173742 920667878 650185920 935691658 821125841 901167405 786526999 826574915 586178089 947577816 793706388 985440008 843804395 896342251 509732579 831999616 189240926 784956476 513150925 970133435 946231287 996357516 800457304 846355877 189644835 210479529 434479734 544524545 277613789 752239832 362013436 518868568 160055924 809609019 676186022 751816639 255888720 275809001 973768786 984900923 689464783 973116621 635938850 847979676 892109668 905370596 705184265 724868210 806488848 876830741 987543818 992559656 322679812 573614741 753129410 882298308 991149852 993354152 305348406 892383598 914944366 976199008 728953788 791054964 412051116 545226917 643897928 697403721 396743562 655455436 690850833 782567181 772190770 874310618 59056409 203246993 558853579 660197140 701163241 816319670 189341925 926276669 731735186 927045364 488662695 896254864 416191657 479903894 45949295 466963794 952226338 995948115 381250518 990368757 319093152 397566657 31662695 219622539 701589677 941762474 411861491 497022241 779376107 817912643 843911379 972157720 51562391 605240610 281731371 645328481 936576848 968825146 211917570 519810957 484753642 529058042 128258601 917585765 6868680 642731728 4878490 228304718 322387461 500715651 550723887 786418206 739890375 980646944 793765179 977327564 576005823 784648850 823957027 847773932 74392451 152384814 612759603 870478328 973081253 979409124 393741540 604523487 591058480 883627234 349620564 748573900 327192011 387964912 281202513 872865797 241993234 696893611 202554913 260218075 70261930 833903166 979576744 984672764 414097322 526071772 109022302 486730548 980218517 986234429 931518973 995413867 264711002 421378398 992384151 993895395 510910603 862795705 408324791 611432887 985053748 992493018 440744284 700864307 707940014 868221126 769753185 939925773 383620133 937780462 79177901 778255266 953244628 981082370 146942850 974938904 747394231 951408877 255483090 581610331 264446889 288837237 359352666 985682102 554625129 947953907 28731397 45322660 711274940 954387323 138923608 316995522 336012221 580567360 186025780 769313749 632142687 729498923 231911452 717800471 362166104 770928064 721566143 885814951 11280279 859118231 965212690 994060318 549237362 732352182 791887351 858187894 599663106 637288781 369623865 665742352 98061142 296875341 791828880 867528661 340789447 482683371 483665744 595974522 973443770 983265246 559531726 932625880 489987226 988005452 515015765 886614676 530470658 666098653 220201919 580477695 85694955 271112484 97369485 775310689 326067700 483618003 10423775 972951305 461605998 491425131 210274526 499523115 750808124 982209299 689470400 838996134 401347696 421958517 580025544 845814899 485506647 611326903 982339087 989356084 134644667 472705829 92385464 702258662 286332544 761574147 771498909 822063725 17698764 982839197 211213125 759563994 69266841 700615491 546441652 943323004 950608000 982623713 758035482 759670657 505713163 731860993 100166960 880526273 690348050 857400225 452399964 912819862 418400523 850288449 661950497 751552774 631231892 736402864 316250595 947458156 271037802 578241740 908558046 986291109 125589368 655383141 481998181 666475643 520644203 831445795 951106931 991269559 666711075 919133790 377040290 990122408 742012067 812941986 6096424 489678747 522248305 595955774 672872246 799110432 954482668 972091613 484008095 652012926 586121200 707226487 104696156 340738836 598861986 930050821 234950811 316822916 555249010 620332444 990107897 993590480 830880306 948174216 801438860 837926873 797521577 882912418 505548195 904405016 445578237 616428877 288946604 557108178 255848954 752109999 323087633 381254365 224604811 851429737 980455081 988327363 803386808 919082268 986745564 995124873 849677190 996173710 593449686 887141920 829718529 989732319 63657646 870310464 787106434 965827461 167378723 724816119 87609182 833211989 676564508 746977424 934217534 955685450 415252754 923649527 562459575 933134476 786765580 893964020 641012660 820413474 954712977 963329864 665664553 668333126 785147595 944245733 905175347 983801672 39539159 89124158 342991994 452228871 388152488 809399540 225436600 925273665 193988570 706096512 641058131 874391908 131707136 816772329 995920444 998875006 439521641 696225296 116457262 203916051 322431874 985869404 425514334 498167282 191239292 409068856 929975117 988364435 103267665 651085499 751330474 754061715 331671174 960464205 899755006 956093495 192710881 574209665 116338531 545658615 724893478 891009886 74798963 176275144 997073479 998737850 208696287 769290379 434351898 726832385 741404278 858452152 935799906 960742959 575343310 852867434 276100685 432478996 654056757 923798739 999783407 999789629 150939762 748296706 253071668 319853511 110635591 376653105 316476681 798070045 223390547 586539706 671837172 891764521 660682359 899261507 704446393 884704055 954708814 960882988 863069269 947833702 389021467 860142625 430344636 892353267 785522359 889403831 95165585 772068378 727805165 745315414 760477120 828710206 506919125 922593938 999581289 999678805 855035358 861959867 676558555 770335291 974950358 976838770 257452207 742238888 897529507 988363804 436720087 831097732 808544919 890399232 519237909 913603842 339764040 880935578 411554226 654374972 96365243 500990865 178729926 316334048 277864171 948144076 21090900 461631898 77519160 875055329 766821373 820127786 691961326 751752533 950364370 950894994 641088649 742902689 246549766 700047291 349816743 472007567 529345353 839603932 832708921 901254922 294201110 954901340 224419739 550541281 494789037 985681481 528390656 937363757 69440113 619439309 202245934 224718617 647397902 749686789 681244539 891795719 961631056 962298282 819963431 996561922 826461303 899502241 235177269 989858556 872881055 974556487 555728383 947856070 426017163 716532688 985387794 985441309 52092713 794915693 559269112 668421175 253105485 437164850 891998870 956911577 91853651 935114492 783962771 928516443 564124806 653907329 942706841 960569646 403982474 829305264 399409480 680735841 52912232 958620197 95761774 351379272 801548458 950853204 984310620 990788216 816115520 963645424 229446619 489280695 571980906 930188849 264220707 306248831 815267908 841602198 573842055 700219237 321658312 893227204 523039749 722841406 468342787 973722702 683876794 693955029 492611335 783049686 870022199 887799059 771164507 945206700 983262320 992817052 496157799 726794079 997081163 997774587 507002830 679673339 319055738 404405837 929950247 970004901 866634135 934143398 794450049 936407144 495004341 773259009 58344443 941722432 444513815 480314976 31591128 972807104 768705009 961441829 69093427 780416235 515402483 593481443 916498901 964965077 238416636 685852170 563576368 971179941 193613315 545870912 196996550 320511759 937216486 953191021 837805672 971965986 855379874 920670679 147308200 920695957 163535855 278923662 48001656 188049343 255348370 837437891 625582164 900402877 586233672 702797898 233308319 707457749 103286714 851325394 78864756 590456234 511475352 916352131 199742519 907459095 723666819 830888570 406411139 513240533 640172646 797209965 397445488 437362247 936596659 945738803 579581776 934672163 864993033 985813754 673125154 789885433 526736424 719504417 381167666 906511852 614407033 928765408 359440520 781332744 195656242 907265355 196246682 867117407 315507701 942663017 607209059 819760598 642971116 672471154 677128593 918428279 888719876 925048235 440465993 458600811 183918302 513865029 631327010 825302119 903561523 926306645 140884434 720528186 942427016 995277245 138951630 792706523 336256714 655220599 107391102 588162784 627441953 639555230 593154369 711031731 780789102 983423997 858907940 921264020 869593770 975497378 299810237 554524471 479398973 614847316 902081261 953825953 939529274 946146997 306706720 760437988 762258840 882880550 205198330 240218146 669711841 784563099 93815383 913392516 320081409 657382600 981444138 991893641 59379498 289715276 298286808 552875763 412978936 468555593 449811480 480622695 725705204 861752671 540384547 666344565 428750804 545248857 41235238 638709004 243979275 580649961 662164821 789783438 503002802 734411804 464272990 522401469 86913052 455071143 366891979 797530606 284371221 872908418 159305412 682204043 897219158 918296063 909162477 984290432 537482510 832332737 178781542 528748279 190353755 866160471 872119041 939062155 161844860 501604890 726615504 897898686 124982391 780167866 540221175 704996005 728848502 813228084 508724906 980446093 829851653 940203824 251778758 469765501 62550814 537536925 550616703 852059865 941697604 968973962 129663499 208361216 385785816 423206966 370326152 672344074 757133098 997557380 410629751 437465832 578113436 767656533 757557217 900760481 957551473 991853015 410024892 640854078 379863343 683145440 938020366 939529955 114746786 724567426 10164364 439828183 233581560 443193909 241342817 261528626 439777329 511822346 940842003 972160834 700580079 854836810 114903435 190144948 334717478 584965044 316036811 929956540 783371053 964406871 190716327 627475660 981888899 995369094 459076694 949831504 536450568 574497944 723729725 835455154 866784933 907299563 871737078 938306153 759870426 835022625 363903964 967614147 551617796 596416105 600925668 809214374 87376905 159068044 617497548 826465827 481758964 907189117 253220294 678828185 246700 848677602 50106129 180527721 566541036 810988847 179540868 429238996 239869042 445026383 718698693 855102401 604339365 797975319 978746993 980391781 282556685 301878335 394297556 723568715 179630898 474152131 36486217 453799162 953062190 968685131 607496901 823789946 913030703 930379518 910615839 956410546 942160962 982907543 422411332 970543822 416901060 906019060 379149336 759540900 71490436 710596646 920246454 989781883 927898490 979432340 526241549 626294162 494368208 507746493 971087783 986821555 417637524 488661799 329326116 469905168 631151416 732710071 84746223 297912067 803606547 986909466 104476763 715610763 585597208 837678825 141578882 361838364 335508365 543873747 686933112 842404508 208614619 601335086 378546365 553976741 383742117 549607816 823678132 980879106 895089998 907104458 213530408 793377785 109433485 753210972 959678982 967387252 39740982 229087905 174480773 327301905 727671641 746379555 288246406 844574315 656455208 810314235 456127317 694430112 671699903 685791446 960051210 975168999 386230767 979879713 772045749 957559236 468745919 675741757 357181185 722038657 44930192 647762403 450216036 768415810 455438101 658812680 304620534 880799415 868173052 977840231 149269134 535082317 876314736 878766565 130427618 191317966 295636295 953914192 691222243 927714164 144610940 456028892 174543521 515088392 295111136 568168737 77995744 754496600 902051637 986538111 952280829 989993022 339311221 739392382 478033138 862090521 461326383 691216733 741659416 947489403 974836444 994418892 29349790 546288460 498182573 633089000 114740835 148330128 920274625 964847607 796498422 992584284 90027801 332105727 863805486 977567810 900756848 933596086 276772889 806919898 230304321 701208454 725892903 805736473 381359683 390081798 148021560 501476382 256167696 746427705 910497895 993884946 992744737 993465055 344912520 680550003 381982092 400382877 186933310 586021398 59113903 500249411 12708052 885349889 40658542 419963759 283865691 336236094 241758679 516710126 399542335 905561303 268870217 780257208 743225348 951636166 218597632 441623907 502115373 658726945 182449741 464771740 229299136 883430546 540171684 856909765 696391105 740104231 169006566 234262525 254226547 502781510 520218008 626398337 651476401 901939344 622226844 876714438 357241270 688850645 890523299 987143061 268135008 617572683 99738797 813546758 596107932 671201674 435139277 853626720 26643955 101260278 815803230 840572242 287338238 449333774 950124884 989080319 126696873 449739409 744184073 811051809 441465288 567479168 422079611 919049039 781207640 983529075 97007303 211648891 577934419 589613831 221735968 719263310 11335811 361893141 934188225 997000528 271941622 786057846 790854690 966552969 194304264 335715714 907611201 997162850 269111236 548777533 353161552 759870482 39581481 757377241 286164730 936296456 840135060 855145472 638973501 770503606 916121543 953491398 657870408 861514594 484500469 535876404 328286275 929107319 377763759 821038505 750693371 776529677 419338851 934968383 585698739 743577716 775641600 934459934 762502147 816159061 857437447 884784432 266302993 496692451 7193026 248989167 545262839 963035488 995417879 998607966 328278226 384077284 163122178 358596395 60444521 78907045 126911057 774349192 576868309 963952315 895580727 958553372 26057771 402827982 324936951 663540387 668919845 907606150 123922206 215280627 484373839 577954190 340744853 846322285 376190063 810978124 871044795 878770370 64011819 833130461 15120976 142688692 892268687 918535256 350346107 682521871 788056168 978790417 872514956 957712807 340124912 647302437 201006509 412977306 159884181 589794563 977012502 977744348 297325472 657106170 85386847 311277565 216479707 801157032 784769041 796276815 756117244 871764055 806083002 980755547 781713453 847373370 103664102 379242648 512658850 895228577 659745215 676834695 904952989 967498812 964901421 989731153 396385834 943199061 273790855 511128680 799391070 853408901 494596508 815410983 631559192 807655576 433565818 755595489 522694970 548126725 190291872 484300785 120627400 141604372 732763654 920576709 90567308 572800388 258061583 825988124 572592855 625359435 369753883 995589677 327836816 565773107 704778697 752257950 994579592 999950456 232551219 581801505 649716111 666980518 160141098 442106417 426845015 456638897 82029113 207597291 672373270 884967592 500867050 584651452 858553217 997356002 833698217 886931945 839519382 957801495 354095329 580695919 558481617 981364609 291620480 388380827 28363027 463983042 212399154 287695367 45180264 97735113 671252014 684947989 230911615 398253948 740166137 815461808 312511839 863086614 320403859 377322123 473531910 572586836 955835505 962475472 710763710 828483930 892992085 916228190 184301478 206379179 424432348 830632624 819418317 941991331 238627184 561536489 778676374 990515969 138713283 220189482 179595924 295121128 626924876 670121440 237524071 455432257 436643670 698627137 719510093 884975218 496417478 744352398 576684449 941471771 850902321 859033155 203732610 279239960 379229769 395731827 335607404 982558435 622141956 653225373 912758585 956852119 585299869 631435417 36319603 433463647 70945780 214396662 682092287 909954140 380704448 461516934 332417896 649765912 143747768 289200326 115836975 885678474 462871246 562425234 658544852 923273365 277529960 765817174 610667611 656480945 42495569 659627497 226552641 737102116 231014741 948404417 908900909 992933711 894376828 932321612 323941441 658082526 929164109 969529811 105327127 697640287 190428143 246811151 480419135 743805499 328319140 617964977 633622223 984080986 267079340 764704535 627159336 726601898 806384475 859536475 595587180 723655765 959601818 962542821 325126294 978526288 36253657 913311851 497862443 841308525 464946278 495357496 292307986 327674074 136937677 294922225 985111380 992608509 667565829 864772921 180215096 453589621 221762747 524166995 910663042 948145226 477996416 742233470 977180135 991256178 428257913 658640053 364264798 879939234 778339793 802125271 728366787 800687390 575673304 715402786 497519640 761603865 605750246 909831640 788616697 896382157 669635440 789923957 234826835 940059532 906866485 997726734 860969475 869561060 198720906 679407826 126119241 240882275 187154784 535157429 709279730 747523550 925563506 974245644 52484831 703905563 713381836 840035370 703010232 976635588 83147410 907671418 950018439 950773378 769144788 913166698 505777377 795896754 596515784 740509668 402106191 433004969 506784170 765353200 138106505 298511609 336877844 504104556 45535996 810836309 949496145 988300036 823857493 976088932 239415965 724428133 494448438 932475699 654009659 746433832 997378576 998619121 9977233 878168262 775056792 953052306 533406682 964398505 938344310 954386032 331425268 564973232 461849769 998860885 946161755 968555695 895344043 903578618 22831013 891776025 72303714 623278287 164221415 173606961 724982449 918140303 820190740 945209436 620955248 955280423 256719226 580996092 649457026 850385681 837599447 902855649 375325366 578558067 921388988 981393419 373293697 525412925 352019007 775700393 425700018 816944252 969300492 978487441 735872927 823965703 207123341 941345290 998822976 998859852 113998499 420992193 383357292 502477609 655735842 986278652 759295253 773253097 703387502 911804501 685255991 947427552 716437677 797521521 300191062 869354837 793696271 824678373 118725749 510852829 487135174 723887414 984256506 995051850 43443944 286765506 157380806 441594943 324929397 597754209 729551652 778254730 870259 421004473 959465586 983976735 310085111 344563411 753948730 757651149 724306168 807992800 737069138 939132443 920011505 967221221 782631873 912726734 781331334 919699957 149377572 750856467 454300911 829261576 605064938 941666316 707340968 768674300 238170670 651008424 739283613 745616608 538491379 870517120 770546194 842205030 219012601 419963899 877399783 884742413 728661442 797151343 983869233 986307177 530309410 897241376 690224422 966254292 121918083 962712241 916718835 946128994 684965742 798312973 583134362 820360648 662535192 884529806 147264904 536754251 496496641 840439034 148261299 208174038 48198790 678104197 538735793 646152119 438304803 713946953 881669660 925537689 227240003 936406572 117910643 248460454 745884601 809611854 128308562 836072107 557478134 852005783 909447464 911249725 562736354 588854283 714652592 721440757 277497255 424516269 723575363 786257484 52125333 284772929 51393534 881942064 52787676 309733711 744404415 884710533 518348116 986951582 224292186 388676751 559703740 849414811 626620786 747191927 804844166 930218589 561264091 588220098 767124411 975195845 841202657 857550454 3922567 428471995 414080680 625468115 687803276 742979551 375775822 736989785 913290251 974029162 463275686 851496081 51654278 111587946 787800846 886428110 597107733 766066139 686351116 834385309 595370746 743650681 397237396 972442105 848444044 966106642 615056231 874800962 895544783 924755712 212608281 848567064 119359588 491289928 319589062 931855271 795924541 862608521 870012419 874408432 620722761 919651102 827485218 831294991 233439129 859018078 954053803 957829324 151450436 682790303 861722063 969602205 629395760 631866557 331347591 877777820 777288090 915090774 354306900 931599270 418191614 969828885 681185537 702230637 920902691 985098261 874799563 966199583 730768866 881099887 809644501 900280595 141566172 873086885 511691356 710480473 44716313 495837832 872626765 999474089 796403733 976174795 534344434 883668802 639560841 698452427 820291691 875849328 872012893 874271006 157049753 967148873 505384547 600891465 818496203 974751734 641925361 986486781 586042771 955196487 555219356 755608676 285965475 705656365 228892634 841242184 638908664 797714632 722838103 958690020 68772809 757681732 604984943 987827889 871919987 921743821 436112988 839370187 575982485 888125347 530545056 876898468 704567273 862766619 641408448 898258966 943410512 955620723 159554186 508965577 832120171 904479440 968844768 990517933 586078695 617334283 749085741 902882188 73945417 743389078 567419633 739942541 435344975 893445969 926742735 955704558 127839051 239198646 71991868 274315691 173385274 484385497 728869695 981498338 676897878 806961467 978641345 989304782 228424523 418284875 88262100 433929522 359703471 867785864 608918890 694910269 215461731 255155798 794955197 824422102 294695705 758554403 241752441 793712165 973920731 985538218 386292143 429104762 446189796 524440302 773961322 997901402 454697185 917750699 933064520 948264746 282055166 651795123 507638557 548322304 232437716 973299572 60846131 658118438 271347338 848925588 480217284 641523831 475352169 725197478 195382565 364897327 14667787 305967796 80404452 960424072 996047161 998179950 555818925 950805626 796859346 888157521 600720739 979485936 413100050 948042942 187736918 735348512 935965596 964330983 410788798 472840287 370029827 779220097 191019557 694859120 148839315 765700768 274872395 466862101 41946449 740786494 117462292 672379045 690302847 864937495 955116577 958135921 687198422 961221355 154175709 596615692 102783147 112821504 330237121 607041044 91168253 608324497 744308152 829917332 942720055 956747253 680068486 816062634 560787767 690710359 851083861 905949917 280917287 723030928 132971706 460707792 29552945 428822793 826120163 955493674 386665042 528178508 102948825 432188297 219104843 928410469 949905634 988212353 799779894 805551962 190044202 258142302 695124417 947204671 803249901 883222858 30690171 191776306 183483666 973645967 953260648 963288005 91536024 626463029 12292675 613049455 794060438 988713260 970576392 986807067 970154033 992458827 967491464 992595393 80043032 398208914 940057953 972467616 406788868 924575599 121708860 746871314 924047937 967760131 494425022 941604719 808590231 852500879 665317163 857929375 354685288 690951655 879022891 965374665 399896472 513583782 81425681 721213054 857672345 905810531 979610816 985477103 511248824 802661440 41669281 418402320 862320729 936564602 894624267 935181717 813754127 919877344 777348950 978081597 118728285 362270333 777725629 779108066 192228604 581768794 663979846 964495777 885803271 918005963 668572532 727957482 129138060 337488550 754141596 827594367 103791782 344676039 129349976 373876375 245919489 283894809 243191249 523255866 983990701 993917853 16189018 115087470 689752829 744623678 495105716 532047537 593999093 722737347 117785105 861176611 551507576 559031444 793137207 943263000 135006436 434744776 741514495 903385900 74410600 298627088 577478169 931135179 128993679 375526861 332262224 797119013 730106558 839097228 103490403 459687763 200706241 255108527 756706921 892722151 844812662 896466027 397711544 889879488 765990719 827143649 285406174 613446011 397542601 850457015 764672583 911150267 424196543 513852365 506302892 975125678 530843307 945586981 307951849 764467091 638588441 868821988 954529070 963550525 819666148 929807727 339297621 488098228 910216506 996094544 655205224 772774395 553830130 912242597 617631605 626775624 90833860 873874283 592689100 904914289 541051545 766824126 943618045 983104659 501401925 556375571 906800951 911141771 67126841 959413449 976602729 995582062 723133290 903792427 933688683 968110741 112035897 383499563 450878087 743626956 591918895 946997336 522316893 785549230 668788112 958996591 215951708 870434561 611597704 892763121 159723372 844647654 921173810 956090285 477878337 958702659 253921397 940033798 826003606 988433492 907726101 949428688 979165586 989048349 291960582 439854072 341380749 726279464 990361586 990439463 250745012 440522179 940324386 957261372 349040356 419355510 398863620 954710612 25658634 965375259 871449399 904459512 758256882 774247853 686622656 975525684 301091484 676723739 773002048 847463496 834506039 897415735 608063750 646915498 348238704 546785252 569309536 923429826 84537626 662845980 671414778 769650913 627008577 926036689 454321264 494306931 909980694 954704459 807391848 914016965 391597961 558215832 489360172 747767649 45714432 930342018 757292242 891051182 771991642 917519811 999737817 999778888 915438789 943232837 888893463 930844685 270781770 612010599 217970242 734985557 275034610 433757446 561586510 565889844 653453218 718330203 648287182 697119930 468428596 602177438 633054539 719864876 383425651 906855402 357971651 447892183 266770573 625500678 786297980 831111746 437844938 673218750 531172311 571576691 882131351 921203844 40551598 521440081 476072204 543493616 527294283 895335507 834481936 863216182 548849233 768612601 312713061 863101273 464077763 901046826 161041333 899888005 392421409 756670791 926249346 959882790 904135133 967439877 929302611 948389192 795543436 935683831 423800756 867794925 423262708 496854198 974499585 996085983 857996035 971568531 762284831 972463251 389185431 600738561 760558302 919645121 540900844 595948896 78248341 910643666 851471730 906777028 990832901 995209464 791968060 903337031 764277651 793242100 478718964 955617634 800988429 854779582 915441479 986602466 345438566 983166152 924143497 931645155 835496204 864944913 112162510 467881332 684007861 794342621 474789640 848639525 815725195 992769488 354697885 775085722 627927511 679222927 183115842 232127567 775782093 834447488 705762619 869100439 616840220 675229624 873008440 908208969 87377476 264989072 102859343 323005377 131460094 282492523 832564845 854047952 507199825 536287090 104993384 779486480 975286670 982913044 621182709 951586617 28916904 991935279 461919580 965529042 491857824 600959310 617441158 990906564 586565568 952211581 834904841 870622483 451266934 706768830 768391555 778384346 408377677 787243118 732614069 976966440 397973265 455625646 545795634 971217008 181213307 841046279 973916368 998318528 685350006 750893998 170751599 428634545 230102472 976428660 848956508 900408216 474808227 767158440 112355529 593248556 857792861 861055692 609535100 627750400 619220290 997398514 172334171 392027577 723504218 998061824 760982853 822952534 6786321 134211253 406766808 830300071 497623008 508490111 57267185 295309471 794287598 871830570 339188771 512616714 483056653 858944452 456967576 520210398 729082657 744035685 24123513 250175018 93250350 349606842 192419140 465147056 728643656 830858147 889282775 946316802 28701952 131485486 279768760 316825375 7584645 819732635 891074015 909622251 852695929 962324009 237038589 946226189 232682033 469634243 786402653 968961835 4672716 503278649 68888214 949898870 115335800 732763373 754897953 926843139 924077776 954197460 151035056 464321507 910785979 921385220 170924873 186931525 801763081 912986363 929567342 954073304 545471160 591277498 906311221 929069819 752855108 929439969 59141802 267611216 974671997 993809366 638743824 751110599 288101923 330029548 238996677 348411330 641551676 665747629 712808554 985493686 476645073 878432383 268057510 411930148 308203430 526468952 180064394 470207452 370628073 578812248 533058723 577625146 412903874 598622770 745731082 883523320 75101747 552293550 751536388 833527209 788485693 989584636 902597009 942600078 755268068 983356110 1612890 881581522 879067414 925367731 20118637 538731561 506055444 993026007 82471820 287581847 751878234 896608408 188033806 754485489 539327986 597965907 139315835 242227758 15055378 894486574 430221602 527697872 385303918 745214984 635626170 900834532 80823655 350911923 198466718 967509042 884055167 955360121 485567967 591291203 450818686 606456992 628640804 844568814 371657249 477751574 163668051 509627052 58383583 395982819 588933633 882408305 238993871 665561953 809342577 959631980 238964854 409153137 422094430 938113696 241271264 940987610 977734508 979416653 700728528 708465009 437376990 976730035 763907135 769330373 481886775 696198924 436369243 721801774 844133080 888966383 164318987 385048652 361213566 515381521 968480065 991671601 106104763 971602617 40281639 454584137 794109806 942764870 355491640 664871003 830591318 914955843 890351240 908991401 958833324 994831311 866479226 889083927 334577918 690664814 634431663 926869309 200004602 530210118 586230840 813023112 333048972 750249329 524992050 757468155 881116384 889633108 843567538 943543166 614257568 871425708 413137808 623264273 576082324 839800391 63236411 714198358 163540143 649618155 675017811 924598265 380144136 411655456 194290419 232906805 263484509 356903806 869405391 978883059 698344429 924458996 927058198 985746236 708931727 835589249 107909754 192174813 844953275 944802300 427169025 592994530 451800913 902381622 252208590 568640127 127239808 494582817 256375419 408579292 874919592 974467018 173836395 609691032 452623882 912617420 431568396 759059081 11012753 415884079 93503871 598364886 159939123 296000694 271428274 422531658 381207859 681469525 633885036 748156894 190209688 886017509 81516076 695981236 901611279 967529408 942443838 976014293 570492292 996899136 19142001 870741152 594033586 947637747 246733577 768735473 278154959 401015772 894568464 959647953 7091746 83026131 916272929 979386119 538083797 583668656 892336237 943754321 216792155 816112527 823181659 850333538 710445209 888111609 743676622 781576616 788788529 792474294 181950481 812921521 48819640 963569811 693700629 939948013 67657550 262135538 488205843 998741054 830260749 960404909 793176335 940903754 168575289 188311435 489106076 736248744 409458772 468274612 124360373 945931409 334080846 470668091 118748317 228533739 829661807 961729715 215827399 342697365 127747585 149984359 201157788 459599293 477444165 794672296 633002243 777101783 624055 512269789 332628905 335664589 363789145 862013703 635666429 890203453 458855257 684960446 833780656 962463752 269421645 322592451 368021553 768850969 992909169 998568785 863576691 915197459 490157116 739466580 179690257 987795305 92829838 704026594 940400463 970608485 843446405 854167404 37392196 122733405 386630731 995792617 773454876 889790007 972301234 977591263 782944085 987949192 3892839 888780067 959064442 991736981 593770331 939240334 462642225 829434885 175281955 528892070 946220602 963498591 180747079 452292162 714469443 879903739 950963015 958201924 515359955 568052664 267428952 765091874 45450311 95543564 62231820 342427878 384814522 857485109 970852701 980775571 115510917 165726583 463432563 495557300 339649785 753568196 53259293 547326322 486110367 617539127 797034426 946418645 51373872 586303569 623858350 887009636 580157470 662047903 670122717 693045292 784294897 813893172 777522597 838716489 509517843 919130360 542023812 762211970 156467614 469960797 253783102 317058315 880994007 890798972 242560577 332976072 189066129 231494520 927953295 992897760 141101700 441524999 525146681 895954408 532205091 843831279 283006361 295465940 78883237 136653271 142440807 361474207 564810948 998602327 102345873 174324340 332209951 983146207 421174010 946811726 498668712 814176333 428486788 461736633 852254171 963344080 20660612 893844615 801457503 897185557 96549713 477667440 583989805 628103026 431032352 843655355 660045510 892371058 681933125 836658512 745951182 959816735 774866078 972136906 289500230 463116868 94471146 167769517 920622664 959724520 157358753 693815305 568423681 854055741 30813418 416792396 688664823 995491797 230895602 371594977 667358251 947780036 809404319 861637128 164889209 460646381 619737015 636499477 302854447 677728171 3441802 858602200 816353947 952115843 10869047 496005612 451525259 725616679 559173207 672590007 392058592 679648324 877943027 986649967 615990479 727529533 125152329 468758034 621592308 687683990 380322701 869018150 20721546 30182835 224443382 424579693 431033652 602552182 957107739 998753672 485002023 542878193 271058588 359253827 454065695 939168854 713051663 862638216 334247823 382130148 302956445 567198043 465585985 635474290 351793611 849323712 857495353 925962102 701456866 814585288 395715583 973941838 754050828 933963935 658161317 698030865 74674725 441932602 873972402 909893586 476120505 974136478 482989472 488048843 144055336 307429137 952488207 985029270 77632501 260128014 383677117 844450296 485989532 661258583 665809060 941354628 171939468 623381786 973233933 974290489 456438484 756167283 986502501 992221282 881168151 938757468 491491675 631700939 422451142 974710827 194126048 289988521 557414055 713011856 873038674 968452995 192510211 351251873 434636882 773884469 932379090 950671626 976004065 992912163 650304358 855000292 102499929 980239541 247879275 408427404 327375588 899613795 352610822 856305063 335767753 970151614 110112985 761230050 431562273 496557883 446794896 736229599 84580745 356391542 919547015 975113490 411002218 960493341 392220226 872775629 868053714 916193078 197688759 809724888 856389964 973714332 513307748 805052566 356211211 496845943 19754390 120518586 87198198 744838965 77413862 97276875 152416198 506746719 175717611 909319677 697695852 902809725 380736619 461910201 68857460 175023336 507139535 740994274 102084673 413829899 946770706 961677782 631242147 640966608 481965506 941021197 520211089 765808714 157628977 674574850 346926467 576045543 898132058 951398801 25274666 563911740 307435115 498268921 3901509 909288276 901974989 918258415 98441597 807278643 813599240 875004526 918202931 952218292 791608616 859177348 168445897 547102783 751836561 961160265 995159301 995356163 886143065 922472726 382904735 937901453 980858954 981567634 30855208 341553318 523530573 671002607 344937212 730677262 670617801 934481645 287075296 870293208 466084774 652871325 446065313 744672172 848855495 934584118 892637892 936329827 925866105 948668301 960250280 988499065 967104308 977180519 525366600 747553278 275201463 892741573 663868965 707255945 398026670 499299400 872386508 930093163 366087144 944416235 776898539 842828855 95382037 874217195 569053857 955380817 353309074 436259718 132444549 754623481 969032102 979573995 267873146 943166745 163191521 177437174 73130512 778774851 161466944 347085656 547471805 639499429 927724129 966071413 424184217 880211138 997981216 998571349 201700110 826182428 793418856 862548922 216534096 440876305 469142684 624889614 108788700 463909375 582855293 995091716 787892121 941526489 841878498 862783967 470878572 494520624 667408057 713654865 114538271 934968103 825305087 961283526 802525591 869210764 451000245 822415165 222570842 519980262 195361138 631802364 974112572 990355878 867159885 944122635 435684301 466566109 954829634 977059886 748049121 996047649 657311952 866640677 621228533 625118341 664571870 694832177 796417403 978070477 834937397 966959266 386070111 614945855 276963818 953808604 73837372 190355297 30716333 441447856 73959199 171134197 839278048 890072291 124434802 529373296 356640754 856112706 824394801 944754716 469755873 477150895 256688751 660480808 942736979 951431853 732304387 795276798 917060982 950466234 752746287 848036782 290757487 786639201 811836955 960001505 649861833 955078771 964833481 979211804 982478843 992959755 559915427 714637780 386357817 597720265 34053771 148063008 320544203 873440597 717841412 743040033 629883298 976088009 410035583 887629678 458358021 905860519 497953225 961664594 179549201 632502034 445592350 972011096 881843456 896107601 483504601 597469038 45771475 962195393 699468028 992451176 162923262 758496141 984906136 998173851 884144608 987402354 918841537 977114867 178281697 969629950 88452135 561534918 34597570 736902746 843643968 886385498 372536078 938432946 956672801 989860996 675032574 761406011 599308878 751434148 109286045 922179949 416826098 675189447 904838800 991727358 41764801 462833891 50150433 674227789 239049222 833248677 863520049 996887572 98702213 548471868 539600512 953443192 428892729 877181230 686030798 982245870 774465603 781105881 473375084 607846551 803640448 934514078 740736665 772696767 910073008 979196748 832684994 891295195 998575990 998706803 789119311 809315178 246599072 310754383 789986620 929883478 708393107 989355226 228430746 452488290 962940042 991626438 829956434 992301169 60880043 102389442 614240808 661003129 258468652 744608158 331552030 351597877 575591737 987689654 461886213 755877878 455683025 472599191 219683482 864600907 333779254 902453967 714919077 817587913 894661068 961897313 273428278 948020125 294644203 981820821 576468884 928366287 489255220 706239548 468055268 645670221 604019859 793423999 960866379 991718386 881764624 926051459 551375164 744465097 597164595 942674081 886494428 985336474 829894631 896257449 773345142 877880907 27316339 622521888 386012914 562450739 514333301 951265476 366712574 659528684 179073819 225574085 516064301 821057289 279314206 520586041 887430215 964448577 763348055 962387666 40014210 927686274 434467810 864836265 158313989 315914505 795063178 923412412 307568713 766415538 777053456 931935032 260090805 641228173 565559474 573968770 744098742 826340297 724097361 945161961 825371095 941503995 708694126 792463375 846095712 997313203 842035071 860212840 53767996 613831857 371247662 979344387 650689544 654923458 816626034 843403118 923686387 952150956 252432162 383222134 394974415 413181959 111424996 536206632 888150894 969782460 49866071 182385424 347399497 350632363 390866435 513479165 360058624 361983128 175228585 729573970 175484225 197936542 168861172 504781137 93927515 521218187 206232341 513222231 871022406 989938017 717140224 747880531 746790082 948233430 294006428 884314189 541849026 903705401 323376016 634767523 758843859 878376576 772718737 955907662 592855317 902389005 724019941 858506670 873717653 937222449 200709936 499752096 526820837 730229740 607407522 830896244 675626182 778722188 680012529 919601055 292501721 506656767 450463561 721947975 380172649 781765342 918831360 995548533 975074665 982033683 94338492 195229147 97030793 539328252 924037724 932127967 851618568 980828241 128396311 366385362 392672473 434811160 937116966 980677213 228409066 325764933 829094069 857226222 526899126 839049000 562421233 817762878 5715073 452610585 236754086 959428835 250314033 421590658 155839535 497104059 765516714 802845826 995685363 998604244 416631312 447333160 11567878 632452453 606172869 710824941 257212069 741825629 254411991 831961622 929030201 982505535 747924702 856853540 735910526 946122390 392070530 405867535 776363850 959264409 950550552 956774667 718247896 827462293 245258337 613621609 106654333 175971339 663651525 837561156 743156944 925234649 236283172 607331030 519218295 970270274 496141056 793099784 502135771 702380553 257374244 953322913 650887376 894909341 86241182 529798863 411837552 930525878 830538815 860054581 272549389 683552757 389888826 541076769 23606745 695950611 176345132 193247819 815401152 869262698 34282646 493520608 918947300 952717598 312592100 503471485 947737149 958392887 822423289 854178900 751357951 787965331 831235076 874679008 63145223 198605534 945057215 969751133 850495371 856150356 786569462 846169635 121104859 805816276 682675480 725045909 234240158 874231772 386177217 710354390 453688029 493109705 712795475 847750769 710893105 938119036 177148714 909893594 453843784 481055668 795238440 985860667 333119499 538728886 324091626 806949821 781819981 887499388 212902715 650318232 479915654 902079999 632814006 653128670 726127368 829466078 744173985 968564740 552499756 743488963 616478225 952845065 51649928 566863608 259345913 613350480 568363093 646534065 259763060 707086793 246330367 495265886 394844287 405213489 141147393 803250378 72294193 233892852 85384070 438111060 962633597 991800802 256882049 294069802 808446263 878508887 190498530 639282808 924136140 964632041 723630756 883581577 189123582 411721357 16787282 82958366 955555103 962683145 14955022 118834136 94634838 878184878 456263186 875418650 45068908 136474012 172578071 805339121 764135640 958488438 29231904 495801665 319814985 476726772 400638448 976849759 453828498 923824017 314539480 688148030 635892759 931196232 496935268 508636507 900288836 982856039 31393310 94202009 777406227 998618142 511149264 954813653 162075558 342996453 45234026 836207810 93223880 346362760 600024244 899524898 809668852 897247949 615192417 911233317 227285375 316624947 90761701 990413451 234930180 663597984 619082412 824425743 271984287 287573836 976996178 999816939 532461896 855058851 333867601 859820918 750748664 906148562 90774214 296096646 114460981 585117746 255260196 953558545 889635821 995035223 307967996 640070525 906286575 926702954 173078700 821792129 783775877 964385314 431062101 471667505 45894599 402446263 249116874 728386064 888814519 912320018 475736698 654532383 85350755 712701169 700931974 814276201 638295667 929528929 220021424 423001621 799816283 837995479 679462479 980934836 864190308 871865017 235266451 938984021 489999994 805767310 965333335 977167967 114079512 455704115 805507414 936944093 278813193 320511026 741495966 818743368 589290007 999013172 369158132 544791922 369344436 527961016 758434827 798667387 336173500 656864688 557443026 814693899 769583636 974014115 921566567 941522231 598603202 738202241 77277371 291796872 429778451 984285325 978009726 981535019 907538115 994109069 855972152 860996645 854711062 965701372 467872449 703203774 81881951 361686932 970553071 970860418 684485074 923972373 438906365 461924964 636869213 985865214 691484121 753878583 606911757 949529687 971290413 973071319 155894816 550343534 142747369 860618576 200615963 550602042 234792754 329812503 96182312 548274977 591983655 936158572 696722084 829542308 992130771 997849660 205330689 387276712 97226919 275841215 892243383 934527725 404684565 597667606 419144310 563847580 41132303 473454631 903135646 923256708 984283488 985753358 897554245 954814840 958394297 999180988 516622502 679684733 375909449 605451401 167519012 653336558 510150615 529838623 725327549 740354156 738285161 890434256 193865973 972107440 374491648 842057009 132783506 429946622 210328851 757826874 186233531 444482145 502894816 551114598 682205371 695661115 812620344 817289177 177333183 407623242 645804985 860445144 899969803 990229276 367318382 783637596 504705646 721356358 36855983 810510123 813563702 848013242 792703818 794691436 623128509 832632660 441808269 662590854 149438763 817859848 375347368 390133174 176914091 213651280 364197739 517015841 85116932 357087263 213268494 518030767 793846719 918327692 862211178 974514404 404395948 974050309 299467073 834739986 438904998 686678710 859920288 878452080 436276328 795659071 51851925 605409419 967617357 975810177 218354329 927394847 362032911 678066947 263164581 620238005 745647473 904831695 190507914 811793803 628387355 769345947 69877025 763409889 723009721 843190756 811344853 836926258 859990160 950718467 66744699 263059477 955950845 975485856 724511976 888569855 709758485 864513789 576599156 617328954 474789640 866715661 265824621 435573962 260639174 619799858 802933093 899252001 256072194 881934589 387009572 749120901 838168702 874394161 936275061 956351760 737141553 756527888 766075023 940611653 537560865 630763721 13063162 311297752 976812996 986560068 730797218 930963329 789646697 796948863 531975790 742134845 19208008 766402253 401554572 941971137 547502729 998628104 380174827 909238447 519917833 705815081 412754619 525757872 111983996 161594751 135647415 314615256 41581366 375923007 973259364 980808471 360374965 718597287 301652154 929939256 14612369 191104258 835276049 874062920 766069224 820140438 972300418 988539816 822754299 879956783 238630360 749667400 210410499 824219887 109552039 200962297 763857997 765005576 145092266 754186678 768504443 841537853 703335986 805700506 317522641 616807623 577846661 718293291 364215193 867668552 960953001 992249523 625860556 692325944 339480588 754492713 210416483 646804335 776939249 973106785 438442251 996912324 133720328 513612812 717342449 998898603 304350244 937084362 111851225 798215755 804595306 974305855 732310729 971951673 168917126 815821219 440444713 748409172 108115432 819847012 95105030 479144334 687085586 738862759 728267474 865650307 3215396 534714074 112918856 286854081 532844007 808711828 375588819 991390697 275249522 570390935 273471389 286432806 694657823 956675569 235331019 876088767 914266012 922523763 765531759 877744707 129693072 678677207 868566182 997582506 188791438 540141764 40440790 864332199 756241577 762564619 716383183 880626346 48949338 397824042 130728915 882649977 2949941 17148762 69007119 409326171 838890425 857348658 619307296 791427958 474513241 515068133 858209784 933971663 43735193 277034120 177214332 242563496 294491092 351136095 207731355 354090079 303178882 933594172 234592156 842127527 297120113 356728906 362373454 766885247 756031375 932806030 719837611 983159808 246442857 283424648 686985720 911690051 556415031 813150151 154079046 340153429 348859731 853244930 736434583 981556808 755364501 790277956 195186758 314100408 996340333 999686024 784090510 784704797 640783621 665631123 962075089 976080210 964353862 983624387 577194570 864446303 318913859 521166303 717151430 959349418 533737186 947540394 679547896 746612266 738063416 944087024 516255884 661277195 226301869 255563582 239259879 592201020 519699231 947448564 268229155 339843894 610876524 693305942 559916969 814449339 186929448 630807387 813001540 938239059 397469744 900053992 79652102 86767327 194890239 697394818 156662254 809645772 19188205 675437878 441769305 549730297 841218978 929519796 982075432 995180647 991533047 994328455 476614351 536808216 890390798 955184027 217396394 925833893 124540508 580570254 394881417 514362606 520316147 592175464 261972934 864179453 260246364 731495617 986275739 990657148 384803512 978161916 295247923 834724597 13399547 367934369 12678330 859100884 146708282 783295843 280022426 462771612 189287199 777301447 22875010 650620687 319921905 446197926 238617812 510321014 483241795 575574036 995659033 996817847 102635485 547076217 604325215 883960527 700532534 903566788 379008391 807152091 258255920 345566680 257877417 814675657 957442117 991698393 352965532 450801133 554045585 857839078 379210734 816652093 359598034 365373032 657178832 947511918 27588222 67208244 708498302 968700290 601508823 754179116 468542865 593742043 804282783 900298639 291126671 990251058 283341942 410803397 151325146 960469229 27906863 576655703 355667749 377790625 812146342 942972946 786705481 822792939 475270562 992732274 99017489 735656111 549378095 563032816 520562661 980040528 55070120 593445150 478183350 944078879 912386128 948862806 530654372 940002629 250078364 983434710 67247437 339882118 204654795 976571752 489714163 926497475 572427545 657233604 651990269 868798502 923635096 956324650 190681619 699348160 104366606 685278111 418466497 939361762 731135360 904631950 89043522 227400059 463624851 696617726 729153638 929966616 21851893 586342292 933542452 986275880 389991041 626772968 5475246 978871252 109559244 605526164 369751523 702676957 208621433 365118722 630115306 668490511 549114590 593171537 722001283 737565727 537391958 657272239 595913972 823528464 205199199 644464354 767325960 945297345 526782523 532144658 76273939 802130422 128284824 667031153 155791358 697880066 261681178 602803574 113176039 256269181 915822626 966901137 661977966 974549878 787350354 875783028 390983198 905948713 761860596 956648855 431016850 445824555 454104917 761642971 721470072 954203079 870941720 957565162 32054330 743421227 20821118 865786724 150728087 341215933 538182424 978239079 55597009 768181672 35456455 401174238 754385265 760266137 455322112 688513773 208289302 644399454 506855380 947015504 177156603 701178357 56317897 991145574 663219781 961434208 222534821 655465588 985726919 988758099 423978659 976380035 306265928 785438217 245399130 669994976 666884232 817668260 86229864 233087017 267194820 506127173 888270618 915819928 48329102 795678486 390334769 564442272 590988385 741120705 561320454 695035064 77823918 155204539 429258214 895366922 472673002 979034996 732960562 756756146 895512476 974272444 243794062 495902181 661455483 763828891 725773166 959489075 432420881 526257932 816326220 982462681 787959864 925115647 951509369 958206699 318243875 994525674 190506229 891448869 46858450 723404638 498797211 698932046 594896189 716662407 853485869 960678263 149431594 296970785 362787550 666309314 29307631 916797003 716014842 793584987 590986676 792045777 870015098 894441538 872959977 877837444 883242389 998371008 265128905 426105763 820355742 878565952 873598146 964184299 917578640 934680233 881094473 951341292 603901336 839376160 844327181 966610715 107475184 926304787 294930573 741569922 616713009 671538301 730658288 807631059 294027717 882932201 559462781 675535661 93639336 785787456 125314494 143572796 921536369 933496806 673801866 713574334 811270594 868192261 756673690 811637965 125607625 590138717 187385169 520104162 949682813 960508289 316237779 906677567 777195664 986538858 855850081 897384742 719895978 838651468 882554202 960015928 749262561 757535109 17206017 298638785 758223646 980366830 758438829 811479234 899700560 996175076 61381166 969686524 306019071 663241022 18165289 301836831 991480395 995373217 691581247 890795476 109858851 660320538 314949398 980945364 481551037 730263608 661835311 774289835 680610449 810827888 876653453 908613837 381566356 939878018 430108640 999784706 336803901 372514793 872593826 927760031 810969638 915439242 958496846 976301571 521770248 823338495 296069893 676636498 390841972 399869247 398494429 906136048 961489671 970298068 321306259 609507010 689223129 935678141 272209927 404940551 3634456 164024437 727773652 736644013 587784231 937211054 439689230 445602639 316696663 955394540 645498664 709819049 85752508 265289834 459795715 957664342 900996932 910080258 185017822 479353129 689775066 826992861 260659154 941479343 711078419 755306541 191398935 567977317 337926388 749318274 67649160 243189659 791055847 911943445 295768483 447652911 690876549 696628015 72674278 499556548 11014630 384103387 151079453 490688736 320769588 405587702 84060560 655975363 623951702 857735483 801640417 956117467 926786798 963325851 709714684 868492533 946036905 994545741 113667842 868268959 675566415 792654627 694109700 970266371 745642951 957194563 629300539 661083339 199218882 910258985 144067228 651470948 380970392 508927920 16133892 253935082 334767157 452119574 81325433 285174228 962313901 997963386 980631952 992444340 491202274 846879489 757658816 894363269 587474674 788152150 975585628 978064481 315541577 999803197 614173370 793739999 699789622 910579770 864176789 984202592 904461182 996220848 74145633 744880689 68538597 941203712 755698335 971075928 468415625 942261483 932699594 979563903 562397030 703865112 427803813 465230315 558912011 927673705 733683543 835692856 381460244 880553027 894364097 972523175 324803010 752837223 677297362 771057038 788872070 826086102 806652745 944331509 108861120 438215991 117043281 952045316 765464110 766466479 904683522 980741189 663646548 990481405 871372469 951626837 310253288 464018784 189385680 844917051 541738215 576428061 20929311 678895646 483926967 571468864 947289197 986527657 965693000 997663568 259476103 548312494 925943419 959189609 258408734 590149195 308348330 535814663 963829591 975195775 799547104 930649816 998929363 999235584 749396200 817274847 251383094 972943521 931679195 972169869 156254092 233037777 157361588 853560875 649192915 750948067 331620230 361775492 11660813 403068463 630969312 887586825 995299944 997857582 881626743 975671993 252252527 388548476 421480656 860927378 747291519 847471585 385881265 487464152 555270279 855502298 254914960 970631600 306302073 582377474 539830241 701071522 259144877 574746848 499262321 526640945 810510880 982500871 185149443 296367713 288588764 862183195 619342168 966774040 427860890 658577828 939233028 994745381 167940636 548646578 348113534 443222694 997066721 999503721 257864099 826175019 267088868 951911606 90287809 209768075 98466537 301603099 520397437 816855102 430365034 857890299 252716778 507094159 626028351 631627219 301293052 682934496 285494504 718343348 508395519 827393387 765452795 850256632 453881151 538253488 516064063 576022140 432101344 727635099 313538420 811681760 117125305 548543625 313118316 971634946 809607426 869725907 915741352 918774202 371841552 781389779 912819532 987424011 480440423 565061786 436045372 461187708 624646324 781047480 803693290 862541573 578034754 825109806 665751140 693438942 644319886 811079309 562159424 644894694 92229713 735565614 278783302 957303093 535195329 760324988 226700252 886784259 7375048 252698120 188400675 627765826 171258034 276343340 369830544 791245007 985480552 986717565 689840421 997708693 701203532 750461546 106789521 990072585 208127107 227290382 302267456 405559647 848836627 961336846 75824783 604998054 600458097 929283670 57953661 608831610 590403570 707256953 230420634 640878339 454026834 645756778 759395231 909364244 43494483 258336394 755455174 865421301 498089591 702451583 125802922 611143108 532407643 655625836 23942774 835777619 96748534 209605478 713789867 833133719 938292360 973318906 210639701 258911532 513885542 667754362 824342041 826282145 118829261 168681452 348001193 460397237 844997437 909360431 269736536 833130738 121468194 430441638 320405391 700525925 48275483 350143529 137630789 352541011 336835898 532345518 696749597 917682218 208205222 275087943 781962307 971897448 811240444 889254307 268888651 633409170 600550869 983844875 435145337 483379764 708213762 836571062 800628038 837300432 217953545 427462973 349164329 464327286 885570280 888470761 795825557 968543566 909904251 990908591 672230047 967875763 340918681 472923371 643534753 812246253 632868333 982001457 751813439 801837729 46119226 536358580 759766878 964582929 945507553 957426983 413803591 740472923 450359481 569721215 541627102 876037866 691196180 700616039 566620095 706669877 47808837 720411537 295912734 945911073 423616703 487931721 893384276 948270661 285035386 804025127 297023733 571518022 335911588 501831066 845465184 877925327 956902870 963272908 447437762 511157363 992693877 995697319 446857658 454313576 734675551 985946264 655438265 890144002 987529598 988158894 253549088 320641558 96761998 926740839 171323122 571758135 643632665 762522283 875057336 946669390 199653977 632220690 133434389 560544023 266166153 567184661 923269117 996288797 423224107 969524497 192862547 475609243 624334178 697472469 224632758 475455402 904182378 992470171 781901620 920153986 858687323 931471531 651075636 839238967 127865124 887176920 945565871 971803332 811484697 853019985 344601279 707226561 237066541 350838823 263141704 912167609 326959586 416935706 185245680 970061550 513983348 670919040 581964208 728942511 881014489 885630317 843183100 886442011 437927323 571149913 526342828 960256912 202375485 226574026 881531146 940276154 425821511 647396981 522396066 888439643 188102778 577674383 338196788 754682748 454709721 744174113 127464026 316133466 871479342 993545523 508738106 857107483 845871585 975938937 182099108 765659288 528706967 572818508 409908910 809980959 572537087 941044947 258000206 370947729 213895998 992010166 276889862 854343880 771922822 877637946 31499865 627154919 118642834 958470329 343543464 872277976 262858836 613237401 726437430 951277119 286669790 744550542 349054595 777021825 937209559 965642256 786975223 821022757 851560463 922091922 823658800 930662492 454577075 846286679 52393934 285956585 829875887 947158110 772449054 928182754 430808384 447020825 318324924 890671512 941869692 946296618 154356467 922911960 980579861 989500757 936059480 990539572 766463859 801799027 890206859 927465116 484372850 778850368 965414375 967373137 234637771 612390590 318101851 812674848 133509100 649047749 934940291 954781367 440906628 868035359 836113402 858764314 409102666 909267594 119127506 374164230 288658042 787908534 705336014 792746891 215656944 829260087 822013623 843616011 527116436 701325287 359394521 926621802 435320390 773346949 111119728 400751478 513619506 621750097 327725858 797480867 23796697 635827300 968372378 989811831 852137602 968283251 957709525 968029257 144995781 266272833 405713548 661649365 636895792 903202009 892196949 910947729 529855803 846704063 914686573 990163476 286200584 847838465 634987145 964385964 323945318 876335698 260151584 588964808 78414405 519573746 198591660 811759324 949630427 951379257 78457898 877761640 826625592 911869115 9874994 384254254 818352182 819994005 562648060 985295794 233458475 862609838 179422757 229012021 270918667 465159680 797383625 914863008 580025058 828232608 606008672 727108776 611785398 617474433 749181939 932540396 7953519 971548868 705109562 958812844 66362026 805410228 675853246 873309791 921315630 967458113 998259307 999025767 570008309 609987458 607532256 840538007 44777776 646583129 423719789 678475009 511406158 886003642 352921407 558102434 66285306 981036721 906317338 990795175 556524785 954904231 833722565 885496202 892825530 980686944 650343202 846787832 620930476 655099687 257740969 370546487 501961118 814966251 296416368 896348530 898098147 954635262 910084214 983386891 770783821 905389098 685032142 957515625 962112875 986711017 693381481 998249929 515140629 639092122 969214165 992786135 43551096 461898869 800745483 891419747 591508851 997412344 169144342 619345496 619807592 892018225 81324626 364196697 824855297 998974276 440882893 919265575 176479439 967003052 884336440 959929749 162369276 871627530 401632012 662868674 328586349 771563268 441847042 566254207 798122238 810957051 541315573 590006871 261769024 971203603 359334166 867845162 620921716 749667628 806392694 867091273 588007941 876428096 817879358 854673086 652962905 970218969 615167473 830685911 590559375 795758012 651739554 793792406 808388145 955119403 864790920 944790891 958737981 964020274 675639348 841380656 184020161 735677979 962705420 977444676 919861321 930788702 113443512 333051881 866074000 874818949 615199231 924106654 505110740 791709859 702203227 859571353 321326209 659906211 830674314 874189601 75788698 581949473 37402471 400760856 173149026 194385240 491953131 676165252 813186450 970745812 182792172 305703325 169420244 225495099 509094406 793087108 799366561 881801531 593252489 713529435 815703087 850128409 934217790 973808674 485540821 527924468 677897543 693124292 384993087 510978538 374999814 701860440 982577991 984607828 179458574 617878353 306314191 512783275 942114464 961525451 442836519 957244210 707299767 931157682 489910830 930294038 583217213 690447434 582100976 970343274 845932892 895293952 669584872 797916221 882149845 889349344 935784548 973011960 153258624 553877479 156847828 698777707 347095333 568086976 96527704 551913984 797524335 929525175 552310205 631024822 857643479 961278508 278377213 889990308 72391029 225075100 52705962 763643758 746895799 834279277 619877201 851431252 373423320 524007983 693402582 879230797 578815463 915061364 555925725 631982606 452927058 577283459 200150367 821775683 122097063 590065528 349291826 876400662 603105813 728169749 516020494 850852520 773389994 953738474 956706968 995255309 791617057 926763877 917207123 949753913 845164461 951743754 253646003 666786233 967475157 967894734 333950914 966521345 670183953 783758280 976849884 996683683 677175401 739260485 278072681 658637078 697962625 780873821 471759882 794358790 206277807 392915025 225444867 680504414 689638168 859683855 473038459 951695238 196004953 494169513 855772934 909510144 108220234 170100675 186293367 982123007 68812440 567415049 245274026 469916699 235950768 411806515 955599074 959932322 247417004 949359942 533613312 582168903 118342902 350243526 628585873 719416822 291233802 896890752 962712696 967689012 151293053 440412694 724769356 927117169 599519639 979032768 660595671 741413718 372794453 736312157 93812009 191515895 221729008 227154793 906631725 996763761 738002065 853418347 584397402 659845551 950613480 977637369 769868987 886214074 553241136 628886528 265075649 364503971 349074253 981471123 804038901 823524391 148295961 694700285 461443460 558439242 227599923 303276739 698025474 844524719 495008901 870061410 797836689 862309020 734185740 949377258 904949537 914054427 505768288 700478798 399709033 529841934 896136902 918741464 468470800 698536770 586338764 780198780 375609964 851917983 812545946 968209427 68874722 596374409 674173262 679266908 101903580 178419715 961603472 965929406 533542644 965413994 320911233 742369544 263521856 704633305 664017532 667074853 319386019 771616979 229694289 572849373 977125878 979282932 553812296 768786554 938021448 953220078 265212999 368971391 640215802 668871883 138877660 889627040 360245588 581849322 403379191 638162425 277784708 471824476 748375796 932136837 435565475 439161248 370397940 384254032 425375670 488731970 847627565 849107875 86503076 260353837 33045920 464057679 553365093 954909229 992558071 995775958 861477348 907687882 881618120 916833184 531885058 946306691 53691384 504847017 486967898 621529459 501824721 525284050 915314481 934233496 306392495 917395903 821688858 898761842 548544507 908059290 949858569 953850627 55695856 121286994 801306154 956038939 526025340 976667811 829678517 945861335 176774464 339190257 414711424 743006981 683641168 972519198 121643055 313752488 114308351 736282689 852441362 917217822 523405753 884781670 626731027 931423457 172122947 574869040 676615097 930652649 337782840 556285461 151686837 345147233 657019353 892348553 1404002 440658824 582033679 657249143 230310844 960413983 944932716 983313266 967651025 997743670 834122360 946544469 731483942 947642830 751867095 819051917 250208683 798562441 740705863 944599423 870566004 879926109 412992711 993553097 969406478 979087204 254731732 365832587 130726496 794056451 9536250 321179294 555701785 807556360 224132334 942277769 464005979 876469438 746495474 781496885 453619930 749757285 360957655 682342697 153181298 249879048 256179167 426204623 541804878 598503782 917873655 953942050 607767272 953720262 463164428 618637727 116749878 550106886 912688948 930822567 222465819 481741554 151420578 504827038 65697376 356918068 64148647 520727481 14477653 573119083 914931983 961352464 202827825 516554497 18361455 415149999 677971119 955259425 104096868 743371675 492445343 816344172 737516941 746926831 129967144 325691505 143256780 860046700 821663869 920556839 233024012 923690035 933433948 937774834 127897567 772066825 31064135 136594315 860174785 894995978 574370695 579792240 559448709 665775983 543705020 596159607 473562250 751718707 133511100 175246404 585771134 973541256 130370385 452107143 230502790 271551753 345140548 605551416 436721935 556798089 198118054 403666595 347791040 591391278 793856395 959524629 623670700 628631854 274936725 805675078 739097056 982797361 459451948 696727176 755312961 810423511 615266153 663479474 216331014 544557621 515785835 694708064 568177301 592373277 943526996 984486951 891907967 917838165 726609048 799354673 167524261 929372616 428684069 577690135 536468464 902006555 960246112 963092781 48309739 60973354 588904183 795549908 138311158 512118281 602752409 946697215 697341226 840590008 596986289 662490669 928339177 982788126 896048464 900649566 466590966 553761553 295481583 709213617 65255317 250784369 599948929 852030312 59713918 696948297 720128892 966259368 440564217 908093246 558502270 797114482 208612166 371463206 685792632 906009685 443997015 853337494 878346515 900749535 875787347 930326250 82561705 202840716 603502077 871684960 295857324 995708147 779594125 949500438 259668734 579011726 988114707 993210527 473101895 530503976 786415749 851595257 355500289 718891831 524176309 907461171 834272682 883725708 84343489 949611818 810156954 982766372 278897376 961920517 893970657 999566641 917884458 919021241 532601555 956860490 462217797 784902453 411851905 972104363 685687259 880056529 57732787 857262459 552265853 998798394 190614676 773972263 8664245 737771344 925335946 960677831 438870046 488353825 63484668 765532920 663133946 715074116 867815745 901500526 210767948 815024722 903623409 965267965 2282691 941877046 641538744 827314017 57868330 779302141 425224159 480775668 648241705 910209593 336845627 975091174 906026289 961755608 757598258 920104972 240269921 744406407 582546145 785550723 378614685 819709468 865243299 899940926 72930062 929901997 445828584 916509976 270773937 679046574 63239398 641513159 389278260 599825716 382127888 813469915 473645433 809556745 891682576 933372960 988790401 999373273 382426281 917902756 478665642 725267514 231412027 581699735 596181343 958556449 938459539 943590158 39779312 651910446 713621911 786062246 4030183 701153707 410899414 977384103 3088459 613636722 561943808 844195849 317595188 386315689 889243355 927661115 513072395 686311896 847246523 941314553 149174199 810614937 72805979 869625633 384958444 966257556 467800061 865709477 30498985 672313554 415759423 940226266 515548060 852068414 14355236 787454098 454190566 740776670 120091500 200906157 946190164 954511252 467733916 827177223 515187424 858865593 631482039 684426076 255614322 801456971 460861822 807994071 31779034 217437360 422071391 495431022 968052679 973362995 983694129 998836504 324028555 417046417 509359940 922623446 522450312 547440187 556946289 589833981 11050224 887219560 521671317 915324315 708894758 801921257 409197406 820721280 128227802 225339247 425087015 640216856 939853894 996406541 979445517 991194160 783579609 840845215 260850671 492871390 292624193 701044017 918809855 996846997 592588977 615411508 933449445 965096605 695146835 770300778 99085306 152695402 554265472 983837527 610087317 937804847 653537378 983249345 762633528 860504903 776618835 989004212 96109271 389222789 831677521 969246076 816327875 918271979 335340291 509724095 928646439 998109162 310137451 797444367 807400806 937760723 137116133 226837559 403762596 528244550 840145490 896161787 860159575 971708381 597978162 950252146 316099057 439063390 170178489 612449940 181607818 616599331 507392133 632875798 76672282 929335904 364754240 971449615 995481054 995861046 183001208 783653889 51999684 82033723 978752999 992904001 224399422 346979764 807209525 815885171 541289750 732011331 856306290 921356428 724028375 853178244 591418747 835655251 718263345 755604077 184553428 233412461 700944917 751506799 780394299 924938931 551355204 856843907 876611523 996811919 116581628 329223154 866806216 985428063 924231415 962433752 545096231 780499440 793474708 811763473 540357937 890990311 699216713 935412775 618385947 978177023 10376477 233251704 665990182 988373056 455717680 729529008 92649793 369455248 772940165 817139663 607837483 982300260 548675382 581903045 361522934 379999376 443188762 770255844 465715772 873684032 521574652 633242047 438104101 642078448 2075127 659497855 54053371 491058047 154434853 683477728 843554278 864072883 699952347 712781105 154600274 188115037 526548849 545965031 286626855 568860962 741756456 911249421 793098871 977956025 46916603 406086961 125828051 387859329 789298156 918882474 108783649 267089137 321307844 349655097 33406285 739643245 981185844 995053893 614757894 740936153 42809837 718192531 924145346 991716141 179384966 795617686 241629561 823280052 305237912 916295382 797106594 804758379 907722323 918303138 600150041 810774937 199638516 761558872 627449716 801920485 768471078 952994086 67019094 891697347 957629081 958904474 885027068 988434940 42308420 524703306 773132574 923594713 905052807 940558293 752887709 791498359 958589023 986826580 447810020 452470815 310695263 589466257 743310677 826261523 799720683 973020185 249108337 811565182 248915241 253150246 574975874 971727050 192938403 713704231 94991044 303740219 45639585 867185379 731295510 768932612 713431776 810576834 353136383 744985956 499577987 686811145 268992736 899660721 653078495 771469350 753973852 919175774 291784617 509684636 987368721 997341884 58385480 640915900 910149371 930041572 876633998 957652936 543844145 661589640 908824456 977746761 859090838 967442471 819251162 887223747 464683322 645225575 74277735 482881217 286630779 613741039 949503840 959111993 457895143 533282531 642879118 922907939 624796063 787240626 334816905 987460902 730332242 736210288 380596395 955415805 911889350 914414188 28485333 147320764 375651601 803234974 321331118 956420898 175077464 605060268 779034009 810456082 193417959 769982447 65349756 776764717 444678598 940153704 927283936 971421052 830935520 863344034 111863006 167665118 141861969 473448965 509228760 516940486 138242553 334201950 399950597 914968250 434619544 900838779 725490723 826601973 642732520 807820512 26943114 148680122 825862621 832435205 741705929 983116129 849564945 908584768 11359025 914997541 298048265 761047734 640342498 926559447 827404921 896248274 684157414 719406402 443892842 997651578 310592498 825776322 31717303 373821814 538391066 587527480 698838324 735418223 212706896 233704007 668511315 745455737 703219324 845906754 936927148 990667973 63145864 574883749 121529972 852174412 281784657 321249790 205596114 866257059 878185761 931555937 871425769 978721599 53441831 866235374 737951898 902160787 831120792 904020981 332356853 998366639 926313554 962039579 366711962 627590420 431287838 822569751 656723600 789297921 657511589 706626020 767724707 975748016 662869607 706955998 277817584 856299245 201133216 302985277 609270253 976390564 873554281 904050940 813581396 930115947 42955234 94734084 400543133 703246457 921167097 925530756 109273466 177109107 643668666 936247671 855725599 872300479 184632514 480138987 879021720 911013528 366450375 736417735 576173443 993369774 556856725 743292327 927998368 969602271 366695530 426846201 488404999 730053844 776096291 861461316 470052977 905591079 546926713 680663290 122396100 331616141 740047792 812719400 222422218 369995184 586293106 832691216 546776306 804533928 529828307 795557128 642797990 905566198 965385627 983249531 551759555 779743268 787036266 962696572 562305590 881992688 344787470 627875186 345637945 528982644 431353772 965064558 535628294 557560446 863843485 898948444 49620362 586627505 771385396 973117275 418818161 695924715 641916350 979100666 598130429 736551024 308432801 922106391 85813985 593853365 749376835 865838581 251010931 851491387 660082325 837299690 559050199 684462075 457702589 809999326 798918239 883179159 577876009 832761641 46471743 614739442 910299128 948596248 402274359 508249785 173917316 364983892 933919331 945492696 136998985 417956281 609284676 999741668 788875406 921676017 884898570 955823005 851914610 955480413 678782065 769468959 247416379 461419143 296177904 806504538 319660089 414277780 653988691 738399661 76602580 92309984 194389530 797520763 650862452 653235676 590880779 743988038 230127454 721557184 192321495 383158511 599685970 974215751 647308751 747554918 416542975 809852164 57051321 299172047 426446678 857390020 37176281 522534290 130222775 648088121 948643596 969710908 857381490 988606108 582892214 936516365 228192146 788730224 810153765 871949666 572295505 735493622 727221532 890991466 668211172 845147604 484597715 566649748 811738777 899804070 47387858 809818170 570566231 979752773 803361764 860816801 982345388 996810887 998841072 999571238 647917566 991649418 106640024 582673606 76420478 361324823 899576688 926336399 441668685 474712433 326375616 951750788 782573988 924908786 196717568 450529244 765501194 992705306 426924444 675971599 783055902 869602779 708949059 728890328 33700679 985778082 144005621 608117909 711730708 796077482 504352329 713353043 743319957 807448803 983875527 997887866 201707849 665422047 466208801 984720847 877199906 941308644 751238181 802903170 390699166 761837857 769556789 933482389 360031242 568565883 349428801 834879920 753399264 856819939 526330832 943903693 519066979 782604969 465876270 770082105 23107248 368777015 264824952 850027884 550508532 666403368 544803887 896287122 59606791 761975320 648655304 718964379 19797386 84637235 396327774 953294711 157149156 469191860 860812492 931903083 411898286 746729209 46050700 880948704 645441563 951697135 214269027 534063454 673027960 705475486 845340544 945627799 655639812 851494106 532887523 925242715 261936543 290592351 824695588 889908259 805137028 879194365 974931656 995733300 794883139 983673926 160460820 745561413 67508215 449324329 573866473 857368503 762391510 957734746 874108685 884568979 114857413 402558285 389223035 903934910 806208923 965180988 462557749 931374401 87517476 371655914 595176903 754003365 520014857 795696148 550568100 589338366 659964698 691873385 221467033 299796285 45857656 577720424 488744401 743723877 609723861 640861913 120462913 132740856 254190958 953428179 371579262 784401352 217236817 892235274 138680736 532958303 173160176 884876699 67172829 530723792 614091874 740105247 17207555 184523921 12152139 863919390 644063361 645520261 788612328 819444966 593319027 866811466 722502188 841923534 768551489 969952449 841484060 859265541 501785750 739102068 577856352 972559152 507985599 752883435 735933746 821674280 197937224 399573702 190020031 555004768 785655139 851539132 168366907 253256077 219098245 666722425 648819571 826571518 492431389 656818759 530639498 635536059 956766155 993814646 382054518 400018056 707912441 994966106 132261517 574814767 242084486 773129734 707311530 956511047 757109640 987758904 532264806 919153479 183695277 810913035 974787789 994944249 228485596 617813067 920271264 974422582 997965500 999610246 409410681 483681670 50445186 100597970 387220183 759361198 994070634 996314759 810808625 879976774 980879707 995399024 418924189 749543827 849359746 852091965 96121140 287111982 419575009 834460117 6427499 32898715 841774613 859180567 506530059 861759084 743177076 921186979 887537050 920989201 914738405 947655536 686771296 858289618 826010873 896819624 766580654 824860279 596193464 755301652 827080018 993905305 346997347 688787839 890506896 983856045 376852925 710372307 305939996 885729847 497243144 819071411 47561586 853645963 361994042 386887334 213108245 240670929 164559300 564778582 275402621 745925198 750855998 958525344 431730506 675358149 544573695 707221014 380369048 461075782 921841843 985534235 904325779 972432747 274239391 985052783 40112796 896838611 607223310 980350277 249707206 556117501 100985503 910627002 288743848 354505836 839724363 893716555 181606067 796162353 933018792 981386365 539388120 843375893 323442966 590055067 637978072 641666727 210989397 676637995 734669702 756378092 649487086 894873059 821221302 911818995 769167287 881406630 145796526 677564916 174912904 464094881 443482448 810108958 795464689 941194916 580481276 784043990 63478641 561109008 988101715 995429156 220516257 310254808 787895179 797405963 272334911 871559188 52187471 778132751 791660401 817246946 730559757 983613871 959487464 967536610 613518957 845169036 35833531 416747739 648533926 670276163 440981488 470153781 742735041 885356254 680879405 987638197 459349234 489913591 665586671 875144260 146772704 558330450 160915127 643387215 53563312 753451198 290762302 577984213 626232510 885594257 559524388 566808467 103505907 841551827 133217540 253382054 141271109 252474609 492194873 814204924 106700699 857372318 967175947 980242433 240442247 354482183 446468462 971470565 99963224 225765096 7127989 103809018 489053302 527902538 577139490 990786595 123589653 890786650 785498504 793384289 146262258 184864858 38833040 308589777 860625658 968465037 695355239 877610364 181357389 725551781 988414262 992822700 420552242 926457972 717634251 744159565 604885449 704446491 992528297 995848516 873384408 933190550 134505231 532743292 376188947 803666039 827816152 920787708 437997726 800806064 625808918 882841163 584786716 678150785 944477096 956376746 243466654 759239202 432448255 485865917 302156638 615519467 358574552 676727671 695752595 703193712 824268873 973018718 361392169 959667151 233529376 265644630 688210824 770569595 153571842 305593026 481635184 768584680 49604726 696625994 577413137 923959505 374649870 557005929 247456347 372379484 370574969 611126871 982482668 990775352 195167611 271682716 722581415 875027917 987774946 996828484 845830426 942157147 318832251 824059121 631108254 671179068 129172708 191005437 788162536 933736754 559649531 679387934 680200559 704348906 155766512 885486873 850467814 979476102 979879326 998951923 335971349 829912598 834892880 870920112 777903919 792675696 674152918 842445421 553324161 965211954 313399522 711264217 655168053 985067070 11519449 252360320 634787983 825986298 228593358 661945813 557120332 560968035 820567531 856692642 29189670 495924979 692905507 961376457 243516886 595878193 501372193 678572933 455702035 602728224 592691055 963315950 498854904 957689716 338601797 343385585 3978156 316460264 322427554 893478339 197471628 708134762 753862475 784428288 158127700 551140130 381536410 475540536 214271965 918662125 473261049 615510359 275619245 686242533 722505883 901151956 732929165 904548089 655886145 821879938 491395597 530042980 43666277 653300600 124359060 275710733 674777231 823629756 90346841 164199523 779057930 786416058 285498868 860037254 787309335 811242613 724557658 808348666 701228342 746885410 858287226 872342165 965571602 981272865 384341071 571122505 803729147 878627111 811191135 987547820 840335935 899885358 591941598 821832512 277152593 290722132 343407241 800449287 539527926 990587098 450830946 823366146 900273436 909169631 438801922 895304282 74453428 368102617 375661153 809820778 497174378 678665451 162719566 260891507 222778853 831212971 727438914 998264984 705175638 868555196 10791569 735207880 138103939 989344326 785115456 826340918 307635805 906284359 248502333 389348785 174840879 333437470 947951505 988517884 629352141 890190400 939073676 990015022 364187668 770207590 345081246 495228073 98985735 989178881 426289697 675682061 956104212 962151267 558923762 834343678 794358896 913989453 994330289 999713594 189736218 593882829 231200496 327381553 408391376 993632291 811497076 963486413 61825431 733918222 634448199 714293054 930572844 985575656 14180979 800681391 271606507 685361540 113392407 616825733 454125063 710024525 309192266 833228885 675076065 922208552 533817714 943069530 153926144 543754910 427899518 610190122 67704861 408582849 735422284 844276282 527643109 552242349 22477646 742907968 88802325 101374489 990807169 996106047 483501590 918692639 725226322 826753413 410848112 480046021 580959463 878815334 36481885 102174335 453915679 459209198 977446251 987339554 42129686 452184156 544820806 657568253 130007411 460879640 310793005 824182178 531611534 870012440 473742882 763515912 848271503 949886792 236391246 698280537 455819391 592397954 169198612 553378476 578196737 716612342 910784177 930723306 534052026 956760200 490535196 989245380 632338685 831937204 366791499 563354847 496264038 571942291 905146421 943428033 671064990 820804872 994337093 998606231 115490195 576013699 728993157 952274167 966034622 971437156 212098270 898515294 643731271 870595230 672256579 898249891 443327555 761622189 767810671 772458612 537442152 626971373 504291996 933758528 900360941 901815880 536056356 979291740 732953894 801312935 587441009 946523946 676279840 939413448 17780652 428339124 797891171 806375680 980309942 997228347 198193399 536311408 181669667 425322371 726764508 965774561 185392943 982081849 455873529 551862167 784332754 810398055 103662292 854644853 672462065 760083205 523594033 578522779 187076707 976961308 828211196 895787022 366445730 621101145 661726622 769340424 751814799 946661640 873470589 884733232 235046469 731099130 603542636 636904965 621302865 731780761 117828974 519377253 780699412 946463218 456710064 694891846 121057076 489837716 866412421 923895058 152766395 877404325 805886036 913547915 908515678 928333105 174836556 434626237 855465861 888459464 616217496 875129319 947114501 986339960 536410831 976975921 25321108 220755024 663068860 909966471 702262845 949551335 75342501 197709289 819590754 986326717 329416037 969864578 211209392 602846033 116973135 907270882 392444139 539999832 38834930 578338344 263494945 584897929 48623286 323224533 1921209 425342911 984669381 987306026 848538138 867604322 960765235 988879464 711411787 809205511 239903462 242283835 572801099 921627261 981827434 987188881 959771878 991950429 832063537 834517349 138795520 271532466 813033757 988505105 888428366 921109828 518000608 671588577 527478890 540395883 276319758 364504861 22825851 812969266 775187520 941438117 454579249 594822698 668648696 958106312 907850178 971467652 613407144 780387182 984480408 990882785 442788872 465284553 241499836 332169950 470400135 493013380 395103029 648395023 284241859 848739740 576840605 965095748 159612861 500483980 119651195 636278486 11772883 437897435 439920160 716040850 22004882 942977178 689832162 949577402 696752378 959276450 463441336 946828878 296577516 730554849 76155098 228688872 284191216 622110071 267151681 753081218 324676649 537772793 695153134 913562700 506987337 658050121 179535803 381417370 175238255 846975592 977637188 998603782 423296287 672292981 8359413 222887950 310281579 773978739 312721781 621083574 950793495 965373654 876982003 977179644 465720380 716109205 724342698 964050182 817370125 932813003 903244277 919895755 701933526 896688507 211122103 798899403 484179683 661053065 998950273 998952033 331163447 578456554 635185807 726200826 838782646 989548021 327251560 661390471 297759756 931109777 468471006 626101417 744529384 926434140 332293734 346124236 484576165 776596196 621971292 856859676 24899057 806912442 388247906 442652025 634651888 835925623 220024310 445226286 59798618 306804725 777233657 919567370 265410547 962489140 531309052 937001313 853100956 898850124 361867642 553786683 77857189 602819402 428864083 864765573 840624448 901442973 724906005 749978608 169205093 732682890 56957039 710390131 352203719 973002105 868462262 908539533 296133264 912350094 484406827 522639022 623774246 644804834 254040098 954055031 501505361 691324677 848714744 940449282 870528285 976012578 373773122 779805727 37136382 647458376 741109493 825771660 536232783 842776426 612256671 832869491 305160127 365546767 779296547 936101312 798302703 939363994 138780025 494107240 205359016 978158075 889577158 942010927 857395695 980256316 720038452 902859536 555088155 734890059 614012916 996565737 531873015 596141755 173161548 336475331 933948115 997842745 681083232 739267379 75786049 236568803 671444036 800121492 626249831 643551238 179256543 597983139 789750496 863225969 901495939 946791983 398134432 692892951 832214782 840441117 443636268 708263903 329874000 441875372 76741263 678192290 343114545 696139828 507841305 610423040 571504250 790614447 764710064 998895996 311923114 576973318 439126867 674124192 909505864 930711167 164258048 425749952 343575152 649076885 567187950 743354278 917489499 949976972 348108311 560265893 601528877 958843769 526461731 745020569 585451773 701111256 542108876 676506709 510601019 625983822 489893857 587764798 94419975 832174093 235041000 321938261 270246937 587706529 605339200 937258842 68010169 933397222 849766210 944750404 843496606 996978467 112654066 141822559 255521348 885316792 817857394 937912870 695412084 797830711 857617906 967304506 184495721 694928541 465527245 784434077 536785293 556475181 14888288 655827142 638481297 992504163 758090209 863556903 546871555 677457811 373432044 761356588 704422060 738641161 785850342 970525966 625339292 723535029 987704407 989814208 623938265 934071951 627912330 796095131 716244011 876578017 582819865 904617142 775817697 816472042 579268218 998809087 148050988 455643419 272385406 315490638 236693075 637928093 778574771 841065468 591010303 770267001 961500257 971863611 28265601 361724290 920956963 955391111 291379929 947930639 618154941 854912385 951109291 955182190 120032557 563579075 867875006 941136537 669015709 874793043 752887300 955164563 17649709 125085845 465193723 942593861 930911932 997119592 782342963 994608886 575158183 665764153 104525616 566861380 7502580 360643555 697318071 800175080 137395271 725082093 623738201 893149095 660211003 682548860 366604551 902543078 912669255 954453020 274242486 839984531 257604719 591387698 935045525 964680429 898675325 973669628 491307363 768817516 89862652 882985980 166725430 635868676 863092840 979229571 535352979 726437712 956641343 980151724 772295354 918005283 737601238 946823772 877034452 966890827 775104295 848050490 693322651 738293993 294887903 349430170 646246105 844491044 899286196 960771216 840885687 851271677 733684507 784133982 814284615 988150631 998562187 998994923 340759556 343425913 854989866 978460712 224003076 390165057 21780486 501170442 342440486 974680559 677299443 857455090 486520026 747887868 95026058 688916962 946250506 972679223 994949790 997039575 516737939 724029073 654647763 659311331 294846825 544234313 796552978 921842847 401883887 541967004 643070743 684546752 321727364 962494434 197951016 965976562 218170962 528642886 747072770 811977835 961474153 962995301 730910685 888693458 715759157 816302209 515196297 532392410 799425796 804532153 225299380 672289932 125401958 699241853 897461112 904847901 605415667 610724366 20357705 659288232 426689710 712061179 387695117 855903808 990643083 990760234 433699857 579517939 439173835 842898100 437295601 506974914 902567462 985342481 216772881 989084170 618121859 638708339 380412067 867391688 336789918 427553647 613997419 674415905 615733398 718282771 479281452 884798127 787918205 806889162 33954575 254488247 742292219 788267554 325818258 717996191 399347878 505206268 440042885 768492676 231939503 905822521 968052412 986632323 615805451 904502359 44631569 986665446 871094551 941192616 948115139 969108965 378548926 818115974 577751329 594756778 653839627 716445611 428336029 929963544 278751790 647895066 590257060 772344535 637046315 830315866 760074399 864296631 752271413 796728020 696013772 778451364 791305175 813822510 618021661 758280801 826085569 850062897 496282240 559137573 689075567 907277722 596504616 742262269 535896396 868580758 695897753 739601216 983909465 986679744 134567035 572995751 42225372 431909400 339006546 644886417 411308919 839162864 997332417 999480112 448965036 471832758 168880258 298209132 870553682 931734087 332461635 470000265 873905404 950295973 97269386 963348482 716285942 884342448 321986569 828626343 380855207 544027834 178463486 340931977 712333975 842191391 342238733 708679002 483625187 984220524 712368711 794157838 81266678 255996464 38309991 818104232 753941467 760951529 21769051 932597470 524877805 697245209 299490006 805086717 110781672 709273107 993211508 996314963 351837454 530827193 567908370 761959646 836050433 939742846 665879009 720934045 956364806 973018294 819079753 975804780 748589997 877004464 685590492 990031944 554300871 567053372 819820398 887551707 304065854 839749180 580627311 861616500 829789795 870336165 933775650 984336468 636086467 702134974 882751491 927952071 448409409 762714601 629864184 795740184 117938665 808577334 602887312 996381797 22658436 839034910 93393667 624216767 196780930 817466377 738187099 788002418 332688616 662237381 210013855 411732339 978886865 987136953 263077027 414341509 210667189 927584789 881370137 911005381 30099578 497307950 922957336 967496303 801132416 835518001 351510365 869312182 607827761 781076311 201816512 539657777 122828255 327552950 507014660 587181161 422918141 755326008 120628428 862419118 481676720 669476919 877307305 904357837 329087614 415005013 938252200 952254065 747057550 869190809 800813858 819131015 45908791 194168311 496776790 744958476 3711758 223708905 156968081 270054398 242192907 374355610 388607837 634587202 431183121 453327992 857627176 861626678 104574703 585218854 801512934 909492109 636772349 656004473 629101922 803653878 400477705 644662082 964649941 994582802 787313556 902962818 569757528 934161500 241384336 618334967 230963818 706895034 995654259 995884089 723044012 805473217 478942789 603381975 326318282 856696068 368134526 826191966 879809982 888749477 626904906 825214166 973031957 974440858 877569552 923271240 358507745 775272553 947028536 986511263 567378158 757091676 579854995 626569030 843507266 993133944 669354822 808259048 384671805 440419766 498518099 846154176 653294583 836329859 169304852 664250926 258471306 442276199 244027486 999032350 877120888 917290605 365810625 700991584 136362394 921150788 343502125 531126390 712339938 890909417 138243051 227737963 922974058 986234371 717255204 784200445 341692653 524093941 9971602 84475379 758461684 825499059 987523583 990922537 682741261 696963146 892683548 949688253 283867460 851542403 354324280 845700866 84403429 934555784 963270873 967794092 704998744 771519866 852352453 929243798 842637180 892914096 382054905 383963237 372946590 691778210 914005815 974761509 765902237 845629694 279861519 573213498 54075549 266591441 604875929 915721598 274763099 918171631 196614899 302107440 932043950 995662679 583476107 819023947 182423101 844692838 762236716 938540636 601231107 608189815 942806116 977257322 783322009 947697274 326908520 827971597 280567117 662634098 739997017 898784139 848630985 856694831 68529489 109025541 833238113 985673430 150696861 469243410 389656885 489413453 616148870 728560333 419995697 988258861 408346504 761814542 515771861 768633084 679728779 830561044 106666327 312604382 312797253 558452220 26755492 937111979 997017443 998178530 564294945 902130856 558141217 730401500 761088041 990108107 459542404 807272282 443531168 543607527 44507528 808887793 966963022 980341679 493991178 753354175 764500180 911270224 766503180 804107632 518140410 692488982 747274109 951430517 247965542 837948351 709435398 867127100 47315123 762891487 23264446 141859564 966847106 971534378 542751403 837929735 996372549 997270342 96288810 806315944 267221145 344427471 283753078 851503941 638100109 683364757 934342492 989597944 13778309 509210778 466067719 834394525 557507372 989559673 651964315 824074007 100973092 553520868 862444507 939063588 571729906 979515006 411040707 494055194 953623692 959858003 362150636 906874727 967592427 980256609 915649568 937916193 691569019 750674850 926192605 976737186 178507390 771716403 657657334 993362503 155224767 714299400 31850443 661207189 756586526 763962264 724182975 859391450 71640868 929710905 757105154 979933794 345711165 762717024 924116312 945444400 783578071 799284867 640675382 719709618 124308064 289289966 3077885 281130282 6518517 649545999 74595337 330474588 670194488 757963650 905564599 994613905 255424850 612316653 353511605 972570895 745216302 925547637 789331127 879637039 862080669 987857674 894320521 919953996 692960605 851313854 544434798 711349771 310713109 374165255 372724953 737376130 896033276 907582082 18274171 749752550 823383814 950257250 578250675 681926699 531164726 845413122 153351372 311300564 998840243 999818562 968386067 973008784 579958416 685146631 353970994 765341564 233684932 790028126 543667576 710179980 657918818 723922164 290984312 976593873 496476413 881066262 35752336 757581398 366451513 751149066 625419637 868468800 52622939 192365143 373310366 965033178 313942329 543830802 264580412 769600690 99125262 954694722 453326330 671221095 607960846 946653013 893847459 916592130 114790744 650830310 379306872 580900567 268612772 765136298 678107088 779317983 721488112 738102155 625299498 846309960 317702306 382568378 496278424 563926816 35369489 828285509 340505169 442961704 348553157 868310172 255386155 884852737 113278314 756882562 169440071 735434767 859736465 927925341 539697363 720741294 210161498 685526378 547445624 862806503 443035657 759759983 265916581 351616312 530379745 842679391 5588370 260449913 63962358 902872069 213594492 369001043 948126169 967906618 622117707 802675360 283475186 642651714 287979026 750211586 768262020 813241141 413408841 458896573 360388497 443956551 339515355 550894517 650697507 675924562 776493290 822595710 939251863 949772104 620525374 654529356 54889740 589189902 954941972 981017310 610175338 913341032 91583580 220199155 148167284 535528657 879205609 940989604 613307699 667164267 389212667 585771341 492238729 551376999 107509325 270401804 966395240 994120926 251411667 862900541 881349777 914521886 512406909 914266717 869788844 977491078 379460988 636364412 104034232 793135323 836437858 941901130 109231456 900932119 846483656 935041260 202763664 818647222 735355019 972196673 801464228 925285458 482119830 716122564 450829947 725448909 1537500 116152439 862942603 950813845 309011031 791660277 284501125 784329830 547072806 941502619 48555607 680555601 645287652 813939545 207065594 446381264 630951506 848812348 40287246 160039860 992508852 992531964 434693651 852250047 554630027 903380380 133257828 321483083 238409345 706761032 81916231 325051355 367843728 875071953 808781124 875851522 853485124 895516839 978812219 996957183 534019265 711900334 732989336 793085700 336601867 525640273 912644096 945679601 420722878 550055121 858537977 915143208 966594167 992309282 20203881 428376504 751476333 763811699 785223902 960356454 516568714 969302851 45764996 279391501 588763281 977540621 39844415 355370064 845478861 926133046 866512080 908052302 143967085 850613208 697474524 706044051 824574162 910100941 296961560 620545810 212147769 756883360 143999434 667865151 61961635 159966224 326219538 674368184 710835236 882923290 83530727 415924156 76781457 394781227 321116873 948894440 229987057 584731330 900987904 981771316 298575537 601427252 441458301 805525339 988853590 997253533 730430973 926187262 835833326 962680100 192685501 717611399 626050359 776245349 974395223 995473099 696851545 921375980 834930735 843875168 866380086 968568361 770849123 915077777 895497765 959124119 379004892 662736441 820307361 965863552 783777030 864106897 864754924 981016352 729870354 748198638 526504319 587711610 626836372 980124526 117816970 130089614 500986845 635480249 198409431 993841437 510372259 801465553 251009045 663247664 517031103 817669456 631607320 988629291 143038293 257191853 147261766 929794838 491177974 807959555 450705544 899984317 734857686 925536680 589745251 854243672 477630950 566876212 641130095 721595512 39657217 250404746 123381458 691905622 92381325 941080940 286895125 668521492 350048036 767423979 383286560 724751574 313522255 631618543 775028008 990160796 938429883 996746159 885462296 947896484 909084115 960137930 598258700 789234730 161949269 846174872 275131318 765572517 241236154 326229073 524415208 989277515 636415161 937064689 919318957 935867336 637260355 950370441 359389788 742906675 796739114 989971213 863578826 979205531 375138610 453579792 453073899 917754141 729916853 976762298 356649605 890526735 599734599 630996633 44283047 461801825 565797668 735234139 697087124 827087431 750881017 761736938 553482273 937056847 949416234 961897793 796214806 872572684 248454853 999650257 863802346 878588741 462284152 996275383 195644732 418716842 680894579 821122174 678466421 756201620 121227095 451152412 714820061 764659722 583785749 995428138 516535187 541801741 398395511 479343899 679169966 783907678 339041656 976542680 880236481 936198826 681459134 768635284 707034172 745171053 259067679 764511222 509641167 952564110 210661886 654608769 142262609 654904081 756207585 955510529 558507818 674168278 907861790 978698823 690920101 940226667 121337690 538240177 895906466 913457804 288001459 374322184 487744956 508423599 471937723 484007499 453624355 643789051 438044226 488111739 9096589 727494066 982091771 994472078 303314700 508961624 676038261 887972276 941073086 947873031 451509053 980742590 362486234 574831835 150377875 397716395 317033359 542747712 925335791 944935058 783206829 794714433 519757250 690901332 885739596 956014028 134478588 517951311 158267017 328445713 620504464 717126839 19878064 726533609 91078448 654991265 180499441 449657943 550529050 887062190 32991075 594294596 16237404 84336098 133811913 322325676 274662236 946051646 726909153 913201890 41554819 519824228 181117187 494511394 87617203 133314492 353014745 632462787 609626711 839181348 933006361 966736415 448473001 483372190 308902634 939142278 977587448 994886098 642507705 914749465 848637754 855233820 10650029 417495842 848937764 922538340 628715109 917373437 473867084 667598380 534308900 961575724 17910127 516236434 977191235 981608245 869101812 968735058 532591040 649627757 576583954 628185769 638220031 671621358 670751368 995699352 466698019 845066330 95490413 801735353 83488820 889617204 842257363 870699532 461025104 666894356 916689258 945339497 243266287 595678915 270876309 293246575 507631630 678921795 912204696 965330128 910756854 956274036 497081723 907837047 441582025 468949932 96992439 406233199 289837606 911845374 378133244 971364186 763713895 964598423 323418326 413747793 246499776 281781842 525519106 915322376 510314343 607268199 406892616 922653525 99411114 990652714 343920947 891980621 983683107 986901927 786877981 836226323 65566230 837999281 12512295 240450817 784846575 852351722 18586262 874837060 203690933 581945120 991186516 998055748 110757422 982306759 516185531 656573107 103704340 884411375 34874911 326342481 346812022 503734707 279711432 748587145 549177422 782934320 760567563 897201457 453192041 691895577 136351013 715822904 138197957 550705640 601107461 890568958 286810152 819448433 402081152 624708460 64537256 139299127 380929338 593046319 519976316 751203879 271925570 526007789 182394752 733569734 24379940 102186925 632996318 749645855 610081600 648208485 706926880 864516016 251412171 885954852 908919669 927371245 508546077 991689028 325395513 378441466 829003464 968190550 431902646 530012554 147069340 616108075 157956538 218408175 145390362 507884080 978180064 978732642 92286866 299117151 85404617 575633560 977441566 984416851 914842566 994372849 508008013 801221352 49137943 72236075 308982057 962151959 725499888 976812189 437818346 753388722 147259269 653919209 86493335 276816954 462218707 973628294 326371520 675762937 146580020 942062530 137243380 748925333 154684156 934814166 535096112 918799421 783728859 819034640 876285535 962435196 377398460 435193832 316470731 469665735 657405199 701351497 137539450 351914176 243771728 342392489 686918620 933868061 681122236 728727457 665125218 795837321 189041087 567226318 285121588 602156681 167529363 488635579 272291847 375298006 7783694 740065124 666300767 887588927 916136291 956761723 845400576 872605429 531188324 602083900 53841435 670319402 527536536 637092567 586965060 903492077 659099476 900947722 823744558 834999970 462522866 726641232 119227769 466853249 763326222 943985495 427789698 821023262 254355195 552622627 913838026 983546389 682388317 756418734 234712062 303976380 976232286 988979506 166014125 308524002 690923985 908886257 531062112 667562670 849058997 882465608 39947647 959427868 682189269 807457432 618795626 723384275 954383781 965396732 788250413 873269965 367338346 461771024 328513805 867605654 202288454 953400494 399139223 797492526 629384264 678611223 486238583 825288127 500241795 624899133 782578299 855499737 686531407 746828757 450125790 571006851 615627643 667064774 600047135 662495974 349629200 405164530 845099447 872075549 635865447 881150485 672840782 841782208 372003228 742771309 791470464 940946188 699014454 699281823 537243360 782862279 750846973 953241084 456722296 756171589 959830130 996412204 155595315 212495099 876461686 991003278 489677853 681212950 624969220 836273960 769374815 992287369 104649673 407673529 903907060 925075121 637633936 640789163 960451144 995751335 903956383 985709245 186743136 197172218 820886671 827279691 89232119 969854084 552170793 592967313 90898411 460222836 977054242 994094881 277518316 893312182 108322515 595221111 635614150 905125899 260304505 726289944 579214651 727760715 29812296 489548423 617522478 857221274 677419059 977308969 602254868 991019419 694060103 942799799 433359461 894221369 713207539 969897309 493980715 984143610 93111483 650424035 640507731 692934449 567383413 824374571 393870662 567645630 385860059 604304848 735890532 871524454 609973977 657541429 655623285 757806354 824935623 852729973 370924202 827972492 345393491 819816080 260397404 465017334 882161403 992412037 545322022 851668379 635183470 954864951 593232018 963883696 547512692 595822489 349209337 577001257 502945355 876248536 940534505 981807802 525912918 584835540 541592930 969635155 584180598 852113769 10117653 54966302 79319702 836228529 251960188 969037647 821472675 870906028 162272138 678519488 5034896 912404631 526325689 565304471 85960472 887400187 103131955 476303488 570845023 653116157 465943677 950427381 77337508 525841936 546054154 793701764 842885199 978516986 511396141 610198321 886860824 962441492 238689752 984151437 542875046 627771079 816589659 927018320 87584962 88869836 454494362 825658879 517134495 653762971 800425324 869046650 547063745 854045678 250934924 676895080 360168402 618268039 975224893 980792704 354348068 974024632 744356889 874584535 213503348 991156984 206105643 237328469 369039364 628517145 514970664 799517651 521896656 727375352 394516257 492682131 216703491 763764904 149435910 751463695 212107138 737450982 840611327 865189566 457954666 893407578 228150406 558318085 445527323 958464771 710816666 721478676 762305366 792457222 837891048 996027207 915346132 976981074 559549761 570827719 647995128 925711126 41166542 152232740 247017208 968949988 11782080 367278765 602921746 942481423 56082257 428300767 790319256 822946743 7775750 381121996 57685589 337747931 424514267 604950075 358310687 403799465 983588771 993877559 578639560 798702659 209147989 878933619 554480045 774838249 404977693 726607843 407055877 819127750 303853851 776381136 183037328 891996468 386074744 568937370 335260689 807723277 117358898 309754778 586121901 635969947 299132682 928754361 118688790 547956403 954735165 982148302 619595009 933687111 275920228 616215932 904338843 995245758 188152210 990193222 361604740 606605523 664474938 957525240 58068323 518192671 692646868 715153955 139549614 430624732 470271837 491182160 484543299 780509937 533507314 631660275 2940007 153654306 478255224 484744106 886211073 983420146 821298693 949892396 177354742 644533420 666544455 702275165 584088446 675076699 668168376 707122422 550767807 631033314 755134147 761609597 166042941 777988039 295453367 385395352 192136690 913700078 557258676 634364348 893220814 980358034 972848330 983097664 137648121 304849645 874526845 984233606 333112188 718655732 74315279 561262255 210908093 588295227 761896990 839341293 267336047 343634317 608751792 610042213 296940901 908165158 539972106 678504517 924226000 946699201 241650090 466168168 524721959 779721487 92688877 491073393 43494750 682555865 932100889 965618689 837122555 909428424 880026431 937957179 359954829 439682404 145782433 715053992 616527290 713775801 902039577 931631256 291602515 738193276 893472302 985747885 48602688 990514680 579350083 901145288 133035397 390609331 629595033 709782155 396291032 968643236 739599400 902456309 643012234 979895042 431497775 632340866 294891355 498225844 423505185 441065261 924128212 988508204 210939910 615936658 863400139 993857348 208278621 752483025 113302198 426983074 298158512 622716331 12416201 86120536 243383088 607410796 298588402 713894494 83879479 282460173 716321566 889884696 476774068 747101271 191421884 847111955 454562064 970857336 41481662 674597430 137510834 338052492 425203768 427140212 524767341 971047369 47822104 488906225 600341158 861970763 480313201 954009579 68388506 888865279 645237142 729113706 367457585 540918948 501568055 575759400 283307873 703635462 697021437 754299480 494750366 775554955 915932555 998739134 343457892 379209481 437427451 678538503 684784513 894554308 864632954 896221990 553913328 848805319 262007269 466362670 921187219 953490122 74498752 75611305 596616197 791245592 118022520 854498414 857661263 876704611 907302628 929791158 552974925 794297488 817908830 919167004 933675521 953391268 95705877 281202857 315199077 816144495 579965128 703323102 493789404 521361002 548531481 740525290 695385757 961219243 122156892 667046269 224566004 753271888 209457771 888964365 516865228 712927670 953086026 974872842 783837098 854882126 826882475 966931081 872481448 904824456 915188889 935624626 167980211 338801232 655330270 773093709 535948109 667245104 696192381 937346591 218121557 889042149 662374201 665466167 82157407 941184661 806627574 847775159 232341467 408477744 987627693 988130255 572607195 964552762 455633737 459960728 97186293 875920196 649660260 781289904 734021837 752692878 85643865 573671111 388986205 920985901 850834194 928041490 874464890 918548658 754149054 767465785 667672563 784558000 924086447 929641787 861776497 869997748 513242949 813595164 46585194 711977439 294051089 900556938 266957020 940471795 296317146 850789765 133750617 827624244 178157631 945528091 752908405 879290284 182451186 833952640 848578361 885938880 894415455 962807901 386307165 708814471 506097676 789872328 812613653 829279351 515995051 569599785 953951565 957138343 609803839 637404470 855155747 912196147 377882352 532285373 221343088 333876573 875960253 998071437 32491905 396951178 371338802 682448366 74973533 357880827 380965324 393499277 952752429 969986342 755035901 771742293 253495099 522881115 156282479 309542552 281734038 859998982 695548781 787211343 783673113 981830581 848928686 971998672 598138836 607401007 200145861 556817163 551967667 810637796 216620063 594912101 619899967 640950050 425326411 623974121 92525357 378670606 808459085 961784909 674616615 674645598 738449034 888543083 453571121 848457429 374665863 889942295 359853870 649096526 743256401 988316038 514158598 900953144 172552118 537142580 770600407 875120903 769772005 827395967 77729647 134818144 855633391 995806220 870606485 986265664 534044215 719716814 86518106 130792882 805530669 939699616 430415328 805635045 44395153 451004306 169214015 417712144 938777874 940209481 399815606 981614102 950069560 957074417 246481767 746931150 740164600 891191978 313579559 481251749 747810837 941558852 691304140 866832045 35382126 556156374 457757428 992158931 147138177 707158765 415679242 891296451 960737904 998587207 564523042 570358029 107968707 662216388 475553482 535337067 744464341 897326195 809118071 853251800 382896832 574317148 149953211 213112113 29870954 440710526 962613448 975815729 277876859 704042033 587026495 969697497 657533207 919125519 872165843 999251516 230029715 583594950 543602373 566090284 472886348 986869202 268316292 913450409 549795432 697847164 491319627 639334764 904984128 973030399 729315728 830808401 55546726 349127303 991157074 993218206 757598642 962605703 524380956 619635325 201851914 329460865 202229827 584742741 339665849 571662705 88002083 502696612 3613273 668142111 744219969 796100449 965063109 977632821 939893591 985320999 574406763 651081476 653432745 948081664 292924864 671905532 224934942 262857939 129976225 632581169 209710168 765268972 809507624 880712131 946890481 955119128 893116376 933966250 961843736 998313628 656419521 709207704 728446543 815255900 415210836 984562167 667188539 765670013 437702177 905676027 726915753 768831055 53643199 692620120 282225039 482536295 244850491 508475959 883217804 921623161 245626440 248332797 612576434 680805626 775650667 977815886 588311970 635983074 224057402 870749089 601308569 912902060 627829515 867268971 879573612 976491129 658750158 735147979 518899899 831247967 806362021 876102889 569478021 725532139 185709170 934970409 805577985 989061003 866614927 991941309 734338891 914490305 265116027 413825548 358112321 715837693 90749459 97678953 661072215 886826375 494335001 968474292 288909901 294694662 740416352 827023788 21853352 99406709 419177082 784267557 156881345 187098327 672992039 939323306 80823191 611385936 711419547 825827141 61558901 631215069 384344332 955959690 138159317 927101512 446499600 610283664 203823092 732215650 254109152 652885076 459115769 834860954 300171095 708134475 724345874 975520153 351606130 930053808 306926248 702303016 777281031 802545885 399063203 933642939 339748973 667422828 757918272 865584788 482165131 873394283 378444417 487259780 789795356 956770231 845795699 934588540 515160351 799266745 318990863 813884120 709459690 762203817 213815205 806601022 293024813 428555484 703566774 869692144 815109114 990155305 28516888 927564630 63100422 581802617 12474500 621677971 323227412 809716974 730292276 897705616 749032286 985788669 881488160 973305284 104584212 683139347 197399302 479511620 146650035 890967422 109017493 229156861 321860646 402636245 363129672 440483447 778810522 947382853 544525680 920482898 780823997 844799076 216500947 311764951 355884441 955622112 617777089 686899652 934675525 948428280 83806996 701285366 31638959 587302603 183818147 279225055 449034669 972841412 680668242 773456511 950674867 994822546 560460339 967178224 173992083 774590375 935836555 956895616 29011454 134422388 149663042 996584627 803271621 859733891 142450920 680692528 757699732 892843416 924796416 936978934 836575678 898675768 223133204 943834458 542394134 775366844 357022092 373548451 139152422 967482012 919793285 949447282 984037131 990428713 882156111 910794416 79427785 915300735 689348111 896318412 956160705 972625427 467004237 721882814 690074705 890170338 87775173 373695753 110374831 173820967 491436384 666521801 93868750 121342683 993507988 998164281 915125101 972560068 440020642 648985386 279000967 557094413 886744279 960149837 77528255 756216232 885468936 969167831 767798261 903192890 473310187 837551535 649801977 954370364 897551377 995207430 465087843 794416559 834956140 956012478 45509724 221313788 577196938 671280918 147827922 923126374 186523058 347201108 98761839 221104226 901492244 990615377 299805101 464065147 914930085 926968679 452424664 635463978 245169144 293839923 373045117 380483166 663677792 732601596 46241220 286060793 961294244 966626090 278840189 491368073 24437573 297083190 384085620 995483545 670774323 858034771 910500018 977627662 572610049 919953323 178037710 418984182 252702048 435831015 17485471 359396241 320435699 559922121 449377519 844623222 566900539 715999000 945862684 983920073 236000406 279680856 465624500 563781960 459217898 922701698 810023005 949313502 788865282 963252878 668215150 939866503 368150662 520069019 662095516 981459174 269510211 369071681 810527154 946161261 343128862 835698569 353576131 826446205 441244483 778909761 661844428 901198626 588917282 956689008 42654317 530959903 119848210 851190383 142980835 635563253 371752059 834947451 972613740 992569710 703585434 703951699 685447288 790520628 194002809 962895582 457830457 732499338 590591035 782500599 15287735 529041394 340504328 650668588 323285360 723017763 260375670 751454572 753978142 919370900 45365934 814854381 630107744 699351728 863871611 950887020 801171388 802692423 954686354 961641520 948902368 994519430 659454913 699513705 844650635 906183987 542551806 636298195 412826597 919508595 269189809 274017597 112902634 993598111 734002474 984066405 921142148 990147619 145217279 379326682 288447266 618928395 8182913 10846423 384083866 908731510 438858834 836195844 879735852 889521586 741544730 864584234 803929614 900614995 672359492 961794584 782026548 792270839 138674741 189188270 485775409 787394281 461884505 525511437 635118266 961469929 530834580 809412048 300808356 723205671 937015823 986209054 413227949 672936908 431310865 509794062 920972690 931781754 759952215 816246848 98972807 319156716 707939521 816526692 399173548 959535958 921853197 948783550 92697174 972802208 682138320 948454785 148989495 464342846 959598591 999154482 874952368 989684055 655375088 894894311 825264900 986610128 121138414 813671551 545781070 931727447 643412539 931692865 989229907 997360301 391113859 844275691 494787509 973131917 371576018 972461597 583511241 785817362 180945815 650266479 476663085 703393765 925318167 988772096 955980371 961870480 413528299 685380642 960098538 969307648 717868049 863073550 746266307 926894825 311569316 438106540 147648360 637524707 485296548 518303075 855454594 932255122 988103728 996781367 985032264 989541795 190896619 621236202 631738824 678211478 939293396 978589345 475892690 705346152 311188057 773002500 432679979 969206064 644669974 769997086 805409144 898003980 356290052 507316464 391126691 536677828 537511995 781418426 646068115 764476012 339356738 460524884 632974995 647871358 277505936 827107311 847841342 874168332 781873882 871116665 481071989 533585653 685001302 967211973 73307268 694304568 410337232 687988459 813664761 864671660 744921 638992556 669721167 704792328 23657887 889598527 13308411 52749487 7418342 64623496 68910083 121752116 985619988 991955324 802298735 973059677 171750118 530004720 769399051 897639762 12129486 957754341 729503213 747950344 322696326 862337677 601226428 958394850 159028236 173778985 757008631 837032640 786056342 840696407 210077717 586600804 966188327 971260136 146975019 919095777 711881472 728374394 604854176 777728414 429343684 432346816 638069233 650805903 955732001 979781282 221699351 779240601 322308921 911614522 472923143 957814114 215698984 825518958 190465987 233225157 473586257 602948117 191488273 476547003 213019090 318884268 64496087 293629730 70780286 965662526 44145189 648959730 944363533 990997621 797869230 855535608 115829453 280802617 246382043 453567190 784365397 968248334 158763596 811868145 542308912 704088688 939228323 980551293 268264461 351046277 972857788 997567587 580490101 643734221 749445728 784174079 881060637 932154301 113323995 243588474 942855273 961456579 120911545 258785906 439931378 649444874 477029827 752856566 365619943 763478861 769949371 860227503 836704379 855876353 523822971 756868866 23471264 42801770 194806279 732792858 514081893 613549982 383379780 654326215 28690112 941465613 187036817 201923415 343844304 578576711 635045830 707759552 159399851 621763796 572392674 807902968 372224613 987109440 628693226 922410087 824300379 936664749 888942839 920998413 969429126 992318240 677844945 865865470 429957673 866829458 414851660 461160203 227871201 499527974 923647175 966890425 747385292 921325306 227986170 569025570 523734149 597736212 52507413 780662957 561161809 612011200 882683505 892887269 954351502 960517290 917051947 984204656 443120176 778152297 584011618 853372735 481250629 900410450 542866842 585411449 130022934 157073586 619961341 684789300 630515884 641043896 984834857 999653334 14600481 594145020 659326896 774781606 998896151 999699495 956574653 964726585 581087874 703288789 56976440 642501870 78053251 436673709 653179591 683472865 980272521 982914906 950947206 963741200 580146373 852707405 357930656 682675951 441968432 623767576 225797008 294077675 531630546 575361227 952244131 991486686 681216980 937437488 657030982 770434512 857511402 999387326 128768993 430757336 904168811 936744753 742396070 850512381 936514035 958543948 599247689 625346173 634469698 837693802 695630252 759871390 506155504 751428026 364734793 949636374 340200804 770148223 679706931 865585155 965554996 993915244 124364250 693635048 731709831 777032026 589705926 830549686 330697195 730870138 128671812 878665137 675397002 761825163 372542137 774204068 727346153 948942644 638589005 830238224 205109382 580902222 41703989 133266380 553115654 984709486 528239655 844706142 681628845 932969107 128888184 515607575 71577663 459364599 968256410 999724892 957854245 962632058 823656645 947964901 712794460 839262951 421213863 786514461 524697278 768743988 41093412 393815997 64030820 176933906 931036951 943550975 87573083 858476667 163653885 454382258 400060052 518415212 68333945 410430906 774312000 899595205 314084000 637443344 1455643 471993397 943979768 949681278 325743256 660075674 56803451 789256635 313425049 717308338 916571329 973631779 123864156 822527736 835998276 981508054 864623381 951718762 58892105 599393642 135150761 978837379 836867514 895247997 767787858 996730967 260994184 455185263 259996066 524573233 860146569 924110788 242117689 984381064 156359795 183707473 202652409 329871150 837811802 838057950 351552052 643025369 417049042 711586924 313852533 540947338 205917417 772063808 472582776 743502999 628589413 833349386 288485221 346387787 249323641 515143853 509980293 690646672 357032308 481251057 36028920 673841694 618620493 999409555 979884738 998327978 515748247 944760960 166820133 850017643 133201127 178069416 193178847 963059609 663716742 823288537 211899739 863792654 906281020 963617309 278417992 726617302 100823267 670832391 658300693 669377129 242050637 296634538 314225065 736333779 417831449 633019204 636986310 844634568 205104634 603649023 626881948 922657693 758696095 807453255 912976959 932699360 252584431 529457226 266391316 414324329 494319257 595789582 56886370 903644943 53377588 326285575 860291599 865379890 119951114 733845412 353780440 880008382 587331405 873578318 418684025 750242884 833546415 857355220 476725165 667928346 708510558 975261449 294751886 670690250 287016107 645614191 762543948 989158621 698049127 733793926 300689917 955701823 660826598 933965942 245504076 375732783 457642448 502738294 703423223 710495559 954665891 962513421 542472891 817646455 662943859 725308231 96453146 784562821 22200425 457580865 424432737 752795988 276766138 493859066 712092895 886412510 21767920 424782709 685448620 997152495 452882543 803353190 541943584 853548401 856983212 923168604 641116781 712613266 323872706 803992623 86657952 579120882 543399158 546777136 655851440 838867586 409690688 875633754 41146355 564231026 92303226 735608402 195401424 865314027 351877051 867461699 457507526 787349522 695851995 946683117 847236497 973482244 99931568 965830542 392736918 758762513 205291528 988901205 989884245 998975191 126148316 880825882 169016226 628602629 911662851 941316791 627268549 752114022 97007571 336333219 344505417 591605550 681784592 990692099 220735613 816482731 667015827 970285264 908016481 948557698 29921082 958979224 636132538 791359503 523799118 787600236 350067246 719278757 618512174 885325878 903450894 947565849 868609571 962316304 541756773 648467784 265930502 403382581 469428865 540734825 419046510 815817822 790523153 924123034 111222208 692378566 305195340 533331324 96256240 925251054 781048366 824611937 514357426 951766472 157818071 944462179 891290916 954873537 619956936 968009880 389796811 975126177 191021853 872801299 525006670 941459357 579719883 897496087 265661024 778071004 977091221 981387598 69156773 780005999 307864099 696234987 114900347 595663037 923963838 996936556 462980537 776526092 122026324 756189474 322212268 532162767 215126450 859682822 336518966 941976453 987719628 999679983 487833847 869613891 674861572 937799558 976615068 981974945 784336410 953773271 209652762 453992895 33751255 220028410 374834480 869983879 828910351 964598782 789106037 924154082 505818111 606206372 397525767 994140987 897303680 904143085 797126161 974736866 842751421 861926156 723427661 907672677 57475874 299108879 102849589 358234873 294869829 976134724 767870509 791629711 253946414 987932669 629335025 799888283 552627833 784851724 516547894 596553412 475366287 799919949 436746942 475210735 20786417 122439122 208726434 626531814 874107899 996591479 997220336 999325407 299602903 788207636 735978852 822631588 157097661 239603900 316132544 402244459 71521114 910333469 64612272 579863301 997501529 997676108 196412327 541018912 829393573 930763111 571209145 948455362 768695843 824994714 430775813 591705450 188645335 631622126 756431887 875987742 715736169 954698139 67914952 667189446 52490274 605635542 241297255 580496552 720628486 732971770 646063805 951022783 815166900 997730020 223721206 690709858 804644720 910976200 983132123 992102008 642753734 818599819 222598331 850534965 55159474 96134496 395748475 555619388 161523502 561938747 972338771 988923314 230282570 329835337 860254828 991311928 606939232 790118510 945761319 988848389 44242954 708410664 969449255 973746098 356533034 766629842 84594719 276814713 380112915 566777918 943297305 945771935 791106760 829378574 988330854 990703069 118780180 761313750 103403643 709843499 545183082 737711421 9299331 981520745 33459048 771176012 223903373 879804326 806235086 898224348 757134290 907881913 346839155 711911152 540930690 805736991 219225546 564168025 516139160 532185136 912979377 998669215 401196137 956319387 347965293 861792895 813772112 825383222 672317972 758622220 786985610 876786365 994730021 999399522 637328091 877457560 980659907 982897062 370264178 659651637 172728924 954454756 693102612 704090773 430158848 786501484 416665883 939833484 804372823 863679354 461453376 912856222 252736955 394288113 80987938 928900826 994421788 994643525 87298809 881239336 3555833 404486898 652174516 997182684 565916136 766442512 145563299 928987616 198508760 582602132 425117862 769386340 557463116 579100267 413808330 925687023 20408086 535818446 833377202 962262569 174486009 458551235 946312130 968663318 715357288 791105996 191194161 995789505 45103961 817460716 310507382 460899247 766938184 863998840 505145129 834782713 230811730 541551866 161604543 308390736 532098172 749460664 91212403 899537628 137952149 642746740 54214741 266483722 838807739 940466862 621743777 934047129 902680446 967841419 357413615 712096393 884293723 893512989 472621843 547120648 1602920 331727824 468560067 512511428 755026493 984763206 489434722 571646982 713359843 841791564 307112979 442773511 759976811 885700312 350073296 591797693 496861858 843995568 280099375 580319696 147485498 628447332 788775289 921696331 560890375 884562658 644957530 918646984 46678982 54639648 285753439 852303367 701689556 786076270 772975479 915791486 494154343 904994984 17541369 988655559 312754671 366975248 842377938 935258880 402350884 801607702 77877674 768552679 282944525 419208161 179251356 555592867 988588781 995668907 9076144 856790686 342670320 615651948 70650360 850813661 540239936 887148925 85752950 837838425 178573346 669865256 143875316 936361034 343033404 855154595 187189816 444907039 751064684 856446414 966656513 972948180 450832520 647683522 511334722 859389811 48486641 58367305 132515069 739661790 648448072 775009813 428623091 512339733 4099508 791472152 610045134 772176177 904736106 944378172 403948289 923620615 483826684 934176842 859142741 907276326 622215130 719975281 275569410 634805898 21679330 52320208 121390118 951170369 447493549 822462651 851319666 870767365 850992907 876338197 789534529 821039898 937766004 977365683 63359633 76517833 249686927 890055674 711555791 911593439 825957261 966523535 747376777 839178515 803948078 840823791 240380664 878124764 442424851 738482634 508343053 849353054 506108469 705752854 163997645 898462724 551800447 930756830 893352686 904501918 960497511 973143097 461328625 993815039 855811729 963711744 632672198 702589397 654837939 904694716 66228234 277683003 431793829 818507182 108166636 612559611 356254523 423603924 994434791 996692971 918549336 928322302 369870870 492551977 617470012 639500626 943765810 998989021 799229526 927832899 320363654 488580636 154586184 406991880 243646755 449020107 340177405 379829637 489962197 733660156 886359502 921535252 872535667 994357506 847334186 885702369 887038260 928415891 618552656 926584781 193659068 552097067 131446223 847676332 681146111 692011091 386109083 912372191 731251364 965107672 814344393 961692183 284269318 349456305 828896113 913372602 256330059 653464899 223590525 359120629 213934583 330910582 186135335 846041284 248583032 598322896 10951228 17054636 797712767 927102038 511312861 730917851 215331004 518293399 662448554 983045984 954963194 999013277 574108790 680777066 956528121 978513839 452260 493397411 548291152 679452341 371097186 531539602 144653332 889977310 179995163 548474045 95488299 904480750 464729430 948522519 264115193 405154278 668460183 790303150 745843646 854467542 43012847 183793307 137791757 356666713 238562832 809164094 741097754 919740581 105866994 525699653 875353615 918390077 345936892 583090072 886594588 909936206 356623982 532390832 404017082 694125899 596091290 818692566 292165140 452747629 231097528 354538073 677128020 860435213 711455133 774015079 646415193 929711483 742935376 821943791 401788896 485850483 181544997 381203200 142328393 365600256 175198017 644434027 92674698 576415864 763964565 998571717 97710777 360883254 585548605 633869378 923907222 944098889 156913138 800133497 932520230 964924713 163842850 723081335 841845882 842040568 45733664 763493713 280954402 386090924 954216278 973640695 692253979 763481007 494619926 661135243 495362521 855994341 911934950 935348550 205272757 603498210 585379117 764505504 475042796 533523821 2924051 710632863 215695241 557941417 33021220 54528505 284893093 453851291 694433503 758464025 60144997 167305740 901645035 902083239 784918907 798820646 91565602 471157153 14811637 721958939 985390666 985582531 775607764 777019785 941985185 971958287 745201297 988033188 483387741 929570847 521223219 598361352 523164558 604058231 813268004 988417176 153858044 259021084 598084403 930906318 762262737 938361800 439184437 910686495 918683816 951119922 194912067 774899998 586509796 845680309 70897366 122476769 168057812 645544847 95981240 683950091 756480923 947883990 569005368 771820765 672532799 690411589 418553689 623534766 335465558 549718875 73189748 623022324 49837637 889297234 506750743 961387683 775538298 985589094 971027991 973786843 997125947 999563696 217789700 322575883 720323590 928403890 428755013 593298138 224963375 660482703 836708801 919876367 599136453 883219018 505449267 533918003 551169921 887166194 70667724 447097285 786302512 924912137 763573194 880894512 92620687 464729124 385232631 418984656 586290073 964475079 186427095 375211515 395334866 864396217 255357931 774595651 837724601 970124961 437432325 613835075 575010921 928299551 881078072 945698258 330159384 442710388 286466767 840729660 855936033 914773025 435733454 830132037 396283079 583367421 548060072 652616289 916847679 998343527 510620276 691647108 3673453 391956463 559607827 810829001 652000489 820066394 669750015 927991220 213189299 224056138 411488234 698746991 678335553 706547327 907023004 908882704 128308895 390521154 38718101 53868561 224994122 673479373 628682810 817829964 170486038 648711674 856432953 965270890 737940576 876229816 837632006 941998099 451574373 584050146 850431581 939494307 146596149 351209904 29692624 594733731 525502481 713190633 226837456 510028631 565970088 889228272 835794361 932013331 434345905 708474830 2077687 980918130 826769003 852658064 302445991 455123662 900609408 942346338 95545204 620213606 59535912 366545824 9753371 11320254 863829324 971240818 866211462 940534480 645413726 923593792 329412176 683660321 416106572 549616994 478339454 906511792 147142756 551317825 882219197 985927941 473066383 898008000 12855288 495830064 931865345 948981603 180979012 790971695 957473517 982756510 38130437 320918325 277818245 895605267 4061540 9854615 51233558 719982686 960283967 989197660 317083031 623156296 271647638 575051683 42667693 191932286 521340089 831538086 425743048 842809541 587134130 748057820 364051877 832884740 669789216 821364105 93791877 351985873 448873982 823810845 98344133 954290617 720269542 998821018 570412659 885084917 441720636 453122358 632938618 869541709 586317659 891283087 643356888 715252877 590771830 782436070 253462231 885579073 855079358 948619603 243938407 362504732 869990590 880220257 589267886 756730093 37358461 409208312 550022012 801305970 642891725 939655250 368837258 542630196 882025404 970898124 838142468 925699722 493948853 969026665 33541686 603583034 151521049 602410838 215834004 901026568 90245702 278934943 954123611 967582124 502288561 537086107 699180136 702158984 794652513 803940250 177147349 895716018 334511049 583064858 308179901 670893362 632894333 697163101 118931148 454971862 908091956 930110000 532486676 545062718 506148907 586774585 42624361 450700281 489601134 670174890 917118630 945768178 932757498 951212907 182890399 735399316 440679793 586637354 548330804 842061023 523657429 546214181 547092918 883582784 495938131 755520083 237567103 967869386 484945552 838458593 346703997 609541377 593708685 978671002 86824327 266773370 191748882 285198331 502598445 903656013 632533352 859938892 402927929 597295678 414969355 953767218 684784379 906707675 799403428 852867025 288155294 537138849 305681770 818958539 874998586 960063054 8705549 739231504 496623934 789945510 539680962 768343950 568113399 880641430 807192132 955633548 677597908 833799203 378397028 826416509 521431346 582306257 229516298 799071068 274904869 833398396 764911883 909170027 648798437 843609784 167947749 519667032 386554318 454559991 544358710 642310199 949475931 993954033 244207261 647310737 149980129 262431374 145777891 764970333 697327587 791555288 4103074 922210330 420291466 521772960 630174132 897043128 347002904 358853699 87245609 368830838 668240869 756306018 500848166 773461690 241359799 492444891 894174282 958193592 198663847 943107823 43653811 254492793 947817050 959129354 686733511 875535836 452691151 798551719 799036816 999893853 218284181 669116217 205050368 999691088 461850665 572267083 961823894 982861542 793496022 977032149 49630193 62120778 648354971 676469771 78787023 935919717 835855527 912535800 402085281 475245440 446511561 693151434 35033485 821935861 700006637 795481649 835723558 891141776 727377965 996802536 500539337 623760143 133436560 178760091 431074368 992003592 952991442 988243444 369739825 651729582 20563098 257299543 995720554 997782630 88798527 493391425 913872122 987012092 679253652 686824861 198572826 916976214 202847872 749620133 531973779 557393293 282180115 576800492 867133038 909176224 709538738 848817323 680738919 872547484 151253272 993895897 211834708 269148877 149251527 983511293 994309425 999374490 447081999 447719526 670119515 687325868 810553557 998500289 434254182 436751452 933167150 959755799 73502541 909922202 630573231 856082109 624397331 872126280 331370572 495579700 175500525 830852391 261251319 642599032 911279735 953367307 18761627 914416562 188383959 671568307 654328828 980259660 493572591 639817976 942976788 963779668 597445524 768779591 849391493 898483955 821989731 882715450 384505618 722362668 183753315 278913462 555566230 761927177 613642329 940648701 527626286 703014068 307403343 909152072 757869106 954903847 91183543 496083548 654789574 679992227 46157346 746699772 381147265 692924462 34505349 744506300 975220326 976839074 307970355 962271179 382321439 887432976 912093461 948708973 166919333 327535881 876585269 885752869 989113158 998659487 324615861 860403130 555548769 844163511 263453842 854661878 82689802 597283319 602887958 916562570 305587669 617584206 756089910 997756175 677236804 722429429 37039286 244299420 636328151 752152796 205978477 859233008 117183598 526560121 108872305 121004741 189161957 991897511 286964015 782334160 384126195 792606089 945090418 981134129 479576571 764732103 251684586 474793966 125785875 318163600 102280590 725644884 838464187 956492931 441242703 841931999 496547088 893797744 828991293 843986593 328055675 988210051 939552501 964645150 937553429 986872678 517984107 845450199 967647084 974079771 701941758 820706250 735891745 789549873 622765667 716486974 839828414 857620731 48504166 432351032 417109311 652075849 829239852 909427440 839668643 845454378 712725363 822511586 53568119 155876069 521436966 981458825 753660780 973643225 595737431 625500985 134757278 664809418 104354022 452457829 757166106 996202384 829068052 852914756 834387404 918240906 124208029 456546395 331283325 583745056 577761372 750698182 958910134 980285668 531535354 546930785 426761808 582708695 996976112 997595598 764748524 978054347 54257223 713984188 60645868 775024240 288132320 758831376 590993977 905977772 434486444 486962784 656081937 872487903 925334407 956570754 185005485 769674690 147219404 739695647 322671701 956899697 470398535 562263194 997476483 998057523 697231841 897432925 901825774 961422293 967511698 973119208 5519280 538851342 848778072 880992308 921420908 940338710 102283304 242784028 739957663 896937672 829074367 876666704 507790883 947334190 887301495 906933500 107707018 668851365 111540791 617760832 508810478 571690515 431885035 807601560 41020236 612329485 49705280 236308077 232644544 881473015 733151144 942885825 477582657 650013520 498375820 656243384 142121354 550565456 379303493 707880777 132916960 241076385 817357294 958573829 319309430 573647843 407259901 650428032 310124697 928863601 358301025 384682355 857619112 934579412 415455120 843612545 914722705 952244895 796485021 878333050 898655422 967450156 940083018 981558627 781159048 984241388 597899340 858086008 349798132 986444277 819371737 844775447 369044163 704302922 40008514 473454447 335083758 487081391 112461983 582147749 433437057 686896485 827748676 912086233 498499883 590457071 457172813 505919602 355990315 546934297 511046468 956117357 907177189 932354872 584491103 987670897 933527290 976016367 468990268 828698885 53974983 334844611 9008099 474403839 483894360 978442392 820414435 906003130 812833917 992079432 564111942 701336202 885455233 998215303 339754867 620127679 503883865 525695136 99580909 602774333 791648128 984385648 978144015 984207982 44260633 488924108 320031288 450425949 704462019 794051337 548966483 700743047 906853392 962458442 93680359 279306156 174302306 660885119 359796419 695613838 376810131 812103793 531517702 935941865 131649866 883043057 263268938 631698825 480577999 846296435 229560755 547928563 970886301 996333666 992710265 995576580 918457092 948631460 942556515 991535204 96433236 867087971 251788630 822758687 730679175 860773495 306111398 624343284 962120473 991414198 810168497 854438602 732939244 999363652 867814199 913560358 284847612 292709585 862281413 948206764 866479004 876633371 763746563 767745799 516787673 580803235 353978457 798031246 289265800 632795890 684613320 813551382 325697843 685470970 520242008 891861875 287257050 342851284 891456732 937034096 525384252 789773976 240397215 572001185 565324557 834907366 736087845 751256772 363688016 412254512 313459004 933330736 537214960 790118405 973715439 977099520 265934391 474362804 597047716 770190590 715251004 823135259 828469209 868190726 940814548 966049710 445716978 641293291 975165110 994112823 631152432 707469228 592686814 813732999 139890160 913922677 361603727 610846571 816172320 980273333 689553351 858399034 185603319 948255283 76245499 809907268 312216471 684666371 736315229 859363250 529109824 792081775 473139837 882648410 505231018 879969829 308377313 506735348 490505849 839315428 803255764 858017990 887994814 907269468 700453923 918124580 252745799 511478658 11433666 875450679 978390290 979068601 303588270 834401920 947449850 959413500 722791717 965963880 16991040 430544448 327276466 332224099 181207731 948279826 584499697 776071977 635607709 859731151 86834765 760027585 287317158 525240594 768394113 855972938 319673996 957706343 126873330 466626856 955982265 978184125 176871938 458231291 480461318 804987214 656530754 763627555 700801523 845800076 444137746 918625367 217382107 415888073 410509583 593860637 881814927 918592729 175775863 377058079 764240313 924753329 255738603 573383472 996774630 999403441 930416843 979683725 302450299 911083891 291866778 373238104 852394423 876816094 332594990 807800018 585305474 886620257 167417757 290213841 742077222 990192782 543960358 612199691 259141789 718862251 178917238 975055291 282611973 672973499 832865879 934858904 300325575 668082789 538067345 807765646 440910686 625369971 882224261 948120432 957575609 964964462 155003385 865902481 411683670 781900895 324044944 957417988 219769437 542331544 684339340 930984173 714909891 716595349 651530190 935915139 199982956 881602739 15386644 941358911 261656724 652064769 539729929 840063940 413534727 649881766 793156048 865891341 79795231 248125790 768744498 828820636 828761650 984114469 742216210 986161770 783703588 784168955 802510787 877925152 222127946 277015043 654545573 827841580 536290765 994526780 23934466 940206272 746624529 944221077 59774876 997532261 770695137 817549410 670045994 783203608 366083721 988331478 978279527 990335170 273523447 351330904 939976992 973904617 129711163 361808910 681539306 703835680 306187965 882822548 780318588 967618049 775749744 789938641 22753230 812499089 272335296 286256020 585465996 620734963 114738485 411471027 279408943 846140832 588630899 737392357 429088042 716006079 151077657 550345169 915165224 923690225 748789339 995075701 707852872 903136202 707903396 740370243 885865951 976130187 590008978 779307548 577838682 585635244 32173107 917708829 918416569 970893144 348119653 971860406 916486948 992846059 605768219 991888580 560608813 822005000 479300285 848040283 863849087 878411333 378921351 833326376 681233601 958333346 122322114 720712526 52293355 431800600 598265404 913128919 516728130 561915361 956419110 968799364 791498544 959581188 538186664 608061186 559008480 879620808 220174652 535806468 724015810 949549815 29221478 735851185 975337824 994703026 498206495 850334394 435680988 709466594 5833071 355687122 514462835 699152907 603102892 723625087 126097077 152770507 274425325 578967293 608768870 952864999 192680193 896126562 137302110 252577310 725642488 737093601 673736867 941473778 418209236 939730319 82232811 116179196 288703569 698279637 610326014 660311044 538869543 627698943 996386996 997624949 344978955 468746821 943653925 985202984 940121856 997080943 410268002 889633252 475140711 985725564 709094124 709252337 630552200 668177349 931926914 995730778 314554957 953132196 783601154 862481741 143846023 280539766 736673053 804312349 143901962 963144025 546323979 882987192 815766397 957503425 452777274 624667350 259760543 561950238 700180694 829912663 668824696 952587668 371803635 611661075 621380422 815763973 180133863 334059209 152840088 887093772 357272941 395209546 712273803 785710518 35046191 456691285 753317453 981631773 887325815 915575705 261522246 332459591 669738097 888610483 563938485 846123891 212382362 367555166 785755854 916196847 20194228 397124734 668083619 885835803 357005271 544945396 435433714 562105291 919171079 946323712 977672266 983716857 468256395 921026960 932021195 954256481 588077226 958000027 300886947 955225796 369681206 936654733 721865542 876901488 888992003 930265350 250748099 938974600 244113522 558068396 848788454 971011233 417269176 613135500 948596540 989635289 523406345 965658558 576578696 674415483 384050337 855452054 912013287 933329616 684879791 810055615 991171234 994230230 156609881 271903334 515238436 615741281 723395892 994954173 133603973 536019152 920740074 961076611 716893974 838573822 784244001 918699102 830114956 865468670 149638888 458032415 834138012 841554199 175983364 648593103 178501934 544048001 850130446 899850946 707454686 994511535 136343051 508806638 493664112 819528230 884465389 944158104 821588994 893406710 609952874 825816302 885326835 912487292 912335254 975952547 280580814 852951705 436632976 585428984 791850978 800411507 466299321 542491599 890144984 975316549 665729653 745673698 528573248 931004917 334616349 577713184 875990402 886160678 394072245 519177745 752661720 955436400 53653547 347309736 120146348 762252591 303582410 305028647 581820494 727550755 253295806 516499248 432505032 894955722 402632312 726346546 240217853 458262517 574503727 893717959 357888616 855307999 522994063 648046621 10666362 129074862 922454332 970450728 670525019 983058489 178383386 635675415 533001011 782658373 882145863 895751873 70609793 628019205 456309193 478493331 990215409 992834841 527228127 995919719 783860279 937253129 733013333 915317026 934566648 965942983 867996067 944497617 886183298 970027832 209675977 437633877 450261660 642940481 801395437 975182493 267212831 683445629 305340130 419685086 448975368 937628631 353338676 666535814 306102858 967795984 814831137 994656570 907540224 908277548 678771319 869226428 97387878 415560105 537868659 784916966 527636129 605253927 291066299 676610491 29576536 731213802 726030463 899051878 277316099 742008729 721390084 957909985 631906856 773370189 643173725 750107405 777220027 792634713 108021879 471323676 109684355 904909723 437848267 542594872 907646140 922216208 514495721 794844642 841456322 901886613 60405668 695867976 326929381 417066256 963177928 976873653 420487509 536746434 300931611 876201821 217479459 234637745 445200028 753478729 382239810 698836177 855075179 875028590 403213356 557344497 296429856 373986632 547827401 847000509 595220196 783085540 772675067 942390663 549107501 825071047 702218952 731147512 9114868 277007731 876919784 954722050 270317693 499184164 340227039 523986187 637508706 888442755 84367126 694078658 392852087 726600322 662817356 749130971 557616837 727679088 159455331 333946240 673067635 983510053 694289794 832859170 696246490 708403468 498842837 801136012 622694140 942047355 188659819 428772701 377082320 842009768 92676797 896270516 224955753 687546409 502456460 592388720 221799330 640912157 464221886 810097415 60443532 762794766 944569284 994593119 342383902 988204146 144018362 376184686 821894910 976919079 774313439 996310951 89645417 193044317 898779550 927232047 441833633 572883177 961809243 983836536 568444041 905568221 57892049 831265312 917160052 933323235 454504615 985410407 698785892 981699775 425679714 851475168 790421720 836310343 194071337 849472819 285552398 289248214 500441640 708278543 700955746 856267553 293530980 507695538 502169283 502831596 391574783 923699512 984129571 999294467 542054781 623728043 842025281 918944686 437684025 987277704 201217555 911552033 912781114 931596682 874613358 935028612 962095771 992812118 856194753 982284977 576317193 714175950 249095335 768061014 433107531 455935844 241388891 583663558 217657014 618368797 200486589 297753604 765966104 868842993 346313555 360715356 296131643 748525844 923777062 931148249 377319335 504451326 319557302 713415575 852861329 990380126 629751580 950043039 873668844 983390673 43109826 235147518 41928077 521386466 575715575 683457716 766044317 772880787 982329261 984456225 716491672 769719096 919269345 968659577 892422797 908284462 877124772 949687195 119301416 768307321 186392935 721701026 549848701 811979225 4537155 220936824 287726632 376350089 477990390 952885712 749583064 911230709 769816831 841743661 56130847 835629280 409458196 657847058 361541040 431817947 931633940 987042231 66043057 900546757 353802761 506844969 452177693 866053366 723559910 840109366 174638257 741866418 706558998 908448085 110431193 201975919 690600054 958983076 851034084 954560022 543961514 773027852 36897134 956239358 541253452 722460227 967364497 985697402 51329169 408102604 104036390 333566365 728238579 773229905 122156486 728011608 581196905 948214331 143181699 946870140 20753254 27783490 215469207 240691805 864436734 977939341 949724774 997246387 982586110 993716315 902224623 923473780 592640703 746264130 832324885 865340032 637901329 879534619 498967579 828926039 377518846 392878124 718410017 790571459 232768789 897077638 69900018 219284970 968360653 989460506 302558718 908211562 260916938 960272420 749504529 940492664 149732295 934470623 540767992 968907042 232340815 980013004 121355618 665878136 783693168 950997180 168330090 898060368 852808088 991046485 374975829 788788622 684926886 963357323 16772787 482663900 586607622 777705462 934685184 961803906 304796032 915274547 646481523 689296170 696673903 728131003 827050008 990560365 217164088 394453547 734325869 826452896 457389409 612772098 657954000 674154043 919084998 921155268 76866163 93180930 921312560 960039724 925087707 974247744 485828752 974965943 828498016 980749139 177051086 759779492 938976263 949942886 423179106 854469050 592211291 670377454 374250919 904507478 130413586 782503007 255598632 304299539 490315391 801332398 160432659 304290874 916123374 952134496 490178638 913197335 501041079 924455662 703171966 877709194 360118261 631295530 315389330 435730326 311586299 318436759 828964118 891223536 929885734 945397468 605772823 957556152 488263564 802177891 337276028 584946728 977923852 994086959 842654796 862925868 464827885 995196052 282849763 905137987 119150301 762263356 983332479 998963659 53640630 237400769 346657241 855885487 415179937 603330287 646271573 827090842 167932046 687682267 548928664 728173972 112535839 227513739 120559165 208662327 264454846 363426598 811102292 858833160 188141812 380339545 933309900 934924566 934230741 949066022 5813979 850998231 178402204 507251192 230528315 763241965 432057770 855940232 753322544 869854879 290370990 799716138 627557912 836828846 592681688 936424244 534653946 858757397 591354229 771298055 857751936 975569964 344797900 363978528 157184411 713579053 478388278 994137466 210932765 485303046 576336374 701497622 853133887 948495257 549855516 590801195 704810014 704820781 114131864 702359586 684775954 757277798 745753535 989621869 374079919 670147131 927919434 973494469 141004939 525172838 256637789 582210612 612660581 806236049 873971371 988873841 27513088 960650994 525472438 882311617 4266007 93900823 851527995 877323753 208108276 390750336 998103766 999128518 806339162 813326354 64425751 943577359 345292237 506838168 185070531 335835753 687813096 911148644 137403275 337980739 578538125 944674562 579120886 931942492 947205132 992019241 409886388 935082479 3330764 295328910 994505665 996870238 143066070 871067383 346175002 907690569 438867564 859123596 249882570 873714469 864371273 974715225 961883590 993021258 825363854 906668047 698538718 860948080 538229618 800021505 629702162 699964424 647579818 855066355 555918494 700728565 451485270 708442411 433381281 838111877 161094760 182535588 544951738 957097072 489364522 612262428 895662330 979058192 942678299 987726983 880665946 997568065 396128296 442105122 31606198 725126318 993680007 997922247 563263608 779637971 700829197 900254561 758221528 854991013 862091981 985997037 11016917 676370421 727809589 909049446 356799413 952978645 284460588 850854203 200548214 733152623 578760270 826929911 437359713 624572135 580868370 911648733 819795778 934571982 834215418 952478694 344313347 672811535 20866375 167217031 389841104 409020506 936895162 976438557 862461504 904799482 416500990 956973950 935136979 941654599 879281000 949536202 44501136 562900675 90791677 120937629 277731331 976512868 661869068 935851647 509591496 695912141 200497917 782855090 616123169 907911131 754084136 995461458 244135340 802021851 55198504 629829477 680369392 946671640 935042924 953586873 157786273 681085001 228994617 919565658 154472452 226511083 832662685 968965767 890738978 921550821 53620755 67056373 141572502 425186312 508129593 631111742 769782559 844973439 419229712 665948408 916065782 986100791 967485548 993639321 74871935 948074328 313688327 777893005 334637802 341475096 330948044 398301566 92321476 559470933 825495171 873693309 710062936 845390171 759613721 928342936 172511301 182419226 405341945 447009965 59148576 609301330 326337435 707311236 734709987 953840918 624183919 752144793 487193044 525516336 103761135 464673861 391049389 536268370 307588742 791823768 989982335 990531484 958282194 989284252 715728665 854018914 292675703 677117493 72486612 284206018 856673379 916366374 125761687 378907847 630562116 750312548 606360610 933738298 384722428 924641419 833977872 949363217 374978351 926487630 582987903 922448638 857324354 973823962 172328235 471818933 691417648 871672055 366026436 955711631 822762797 841879260 170473444 404443169 602151466 939014570 297861526 861531302 104618274 544988212 933597167 996875422 225777811 821261335 324182526 579916097 98416403 326081233 265254119 988049016 281172520 710905386 469552221 875943487 287772777 947268073 599049216 642419450 741612208 834078436 895907187 908078784 982238459 995586679 845759757 921523563 630329395 810352307 607790467 902143447 700835286 755506061 565193685 852845933 57129303 709764800 827415253 992084623 275326609 849032028 214287483 250532653 285006437 474260771 625098830 687086913 724188345 755120511 802623495 981200989 575915764 972724089 488932948 883151072 155081316 358607954 329053190 992405916 109018274 867438907 164108009 386694622 464408921 730588249 9907908 121661054 8864131 490628970 688043866 868245212 683518688 856379324 48574424 309536610 348510767 466369238 329262113 512953693 833263404 975356673 710783013 975573883 236876903 561529768 511368627 919523569 155061784 564997633 488997400 523456992 445453041 837233023 161679108 355843484 372974408 922562397 699470943 786228156 495777336 622166891 708342958 828142980 350982543 517791849 151426687 697746196 172202337 460213104 660422436 765607726 476007646 952323111 771095531 901525361 314332258 802782053 229431456 652910576 971584408 989258844 902001071 916741217 101190609 433531806 447100963 601717891 189140651 467846029 586301331 600330756 793570736 977532178 946128159 968224454 914977629 963596014 821371294 960663206 272908343 469224722 41309113 196978979 160071970 642972525 713981196 740374734 810228786 950497693 899695140 957809685 461474831 625339485 325819265 604739271 505506094 662084707 90807931 312488347 921465846 962126388 921821482 989565018 298575415 936131125 214933645 740407577 702831736 896467167 99769810 403373886 193411961 400400030 198676140 445806382 870407897 981908950 110456027 157841571 507957695 748655272 285552553 422320180 574445731 851160635 765563491 832836447 855324990 993956945 867518938 917041606 825082218 843840271 404002718 540600493 20148152 692763318 395277174 684976137 623922833 937907423 371980651 775379634 806457288 807130445 469220459 470556063 289025609 742359089 697889209 752566828 827288118 869267982 14378060 67324447 524976467 986487959 891168566 900494858 966436511 997890636 374072388 922764525 903395942 922442396 31086785 918053655 982906790 992477260 209991683 651910403 389083586 569746764 162474717 911690900 411712921 691327540 760581765 857200022 545466179 916061394 211611728 586928838 260993850 629309247 298179599 370558186 970369083 977184894 167298252 692348071 91826057 93309166 808517502 864798583 965564069 986510325 79773193 671643418 927682854 948235798 542353921 741849907 383887875 437473513 89683233 676811393 35028452 564851239 707923407 772970307 945323244 980281400 179182837 441915511 279003848 329552709 368903926 694205538 947725536 991937984 98777671 225105438 661714484 739515157 867365495 901740745 513966297 664993265 314437808 988418801 241256244 432377256 652612698 849838509 289375029 396913215 886380156 968126076 215835323 383729261 503118682 836342170 68122793 668988298 931992539 965441123 469195168 683069060 202096216 691486865 234782081 655314955 208843516 473794367 917919625 970031079 147671921 875213327 974975167 990782371 607996921 838311347 697169312 964745801 79611423 813885854 238348095 970444608 381901683 630081528 178011781 740566186 806056762 896704940 296076126 481249676 243608066 959112276 824091114 937302120 442773595 745237806 887641495 996806956 141297963 977003678 123702702 599286677 59210960 141723629 230773827 669053426 279552869 827087632 359460763 717320674 37557846 73099371 230714197 670456369 269007382 643124432 433624871 592526740 557412733 912249703 795296483 981098046 416825620 549302187 524092000 555050932 317301519 648450644 774263500 978340116 349747265 505066858 537979616 677245025 174930785 991610449 283428170 853077508 39359655 170267852 417760494 895905215 864711232 895371185 854109928 876801731 856502863 977452124 251154682 699545343 801913385 863452637 555924883 840762139 327110480 510184353 475256348 690444574 768456459 828843120 313258212 760081887 316992088 556956518 326483144 591629637 386991566 399804840 707305493 854618337 922427766 977826375 244221755 280501584 41955936 785975495 5563627 837577643 453740130 867841048 703851174 741609287 33714553 62513030 433148803 814450136 141359940 357479302 228957550 735501595 283321485 544695545 779865928 784797379 196264604 513779885 290898545 448045943 980037296 991765210 921706753 957224409 569598325 807824018 397802026 503220330 153069972 645798524 800084450 943693691 429851530 920238473 389305829 748173111 865954958 871773341 142853040 435022284 306870610 859069197 936960801 995711624 468693964 598870599 958858296 972734508 741993305 826591583 274730399 539878302 671712627 946113311 695864539 980577677 536499976 690543085 952332627 992039748 745537257 848229189 510728468 664998854 479693024 691611894 266986193 822414714 2643615 226443610 634724375 883129320 335718377 564373584 180805717 329379877 635744011 708019137 149636536 374076749 75293069 79405644 804214955 817054945 234637987 642573588 204239936 553814668 301855888 987883231 362439649 916923882 659167217 767973159 449356997 969465104 434678649 718693661 116244577 323863637 246004194 276036934 845059241 909007794 840799926 962493544 53741054 200971638 858572961 957489401 176084717 231964749 939802835 980892260 33984367 419536669 637457826 892888175 740445164 999919517 61298346 148654744 892782902 910707223 833193862 848456045 737239340 756640408 95922539 899028564 596770289 600110669 263999043 958622183 620951547 745586458 34246797 843123528 52281805 224500127 460073772 611011905 254825373 379532483 954152020 980439903 288760894 578450559 822531841 892197594 414088462 576991616 404553721 912024997 469058902 932855596 893834051 895046164 929743227 945336411 23058495 304858163 304847746 333636008 310186366 465402189 602584515 899567940 657782592 736469740 297505946 584270097 992047385 995837592 993178192 994298242 566848997 758778047 73098766 252410051 676087918 826320601 456992923 656389254 420020558 733929536 377629675 559159790 944596594 977596565 765316890 987089910 373043526 589194275 593763066 909077563 966683447 975737202 577268518 723185946 602857768 881581658 598076368 691684054 79289945 801818962 987415405 991402671 593646862 788083591 73888701 812126379 789339547 898156571 478018757 904763176 685199160 685890109 103867368 930440277 227551825 970437891 640499397 913173330 92200850 837633845 621965653 719476498 887774421 932663841 303343192 629900079 108366556 645202018 460093791 524871231 425860958 706140331 630792988 958014166 418575521 601899696 450134385 562560196 36351299 646260461 315112377 931167138 991135315 998773647 927798791 930449169 388063825 526536607 110611560 941379645 17684339 180561564 465056575 467363432 881565976 926160225 623012619 873276567 912762400 959023124 652690062 938805049 98369125 567580243 113678812 401075520 330631753 717611579 571545723 615005953 779021520 910777922 838658296 995992516 50921234 944022118 319947905 554115111 268345392 916682002 958716781 995403815 238073660 525837507 870014122 976651285 93882335 149660088 602961607 985479714 519101890 548994693 361072960 478139116 691356632 949190316 640772108 674855024 358986702 937633199 609632001 944867192 773391438 854691728 808391162 892636394 958181924 979869401 960000634 970234570 433081892 751134980 792668277 811176893 382049100 612658638 147893365 611775815 587010512 716181597 381070811 822499673 513767137 815381141 742881902 855273796 24351313 247718249 634924902 887805385 140968759 249600574 364301753 890497445 383802513 483802557 74381122 803620557 379145590 996824385 952555700 996248885 597132884 657120366 737219166 776193208 746433754 969957444 200036872 970239927 839688761 852845846 72928096 288436123 58281025 846652496 321686087 360831208 260472395 691920974 737796429 847622959 777444135 959923529 642957248 902233769 182471287 590853188 745995187 961205861 667002524 732426711 990200207 994454496 5827261 189122195 324166956 887774106 829781438 891590530 433515933 626904207 447427746 708365814 820847469 904107791 148380061 413122196 314091301 809563376 795427073 932411219 834147131 909235539 601398015 634612716 677643198 726932860 442251152 891573606 103789609 277737199 606157072 787862556 625940167 923081951 720122896 914084703 459308774 643443203 598313207 736875831 625910191 642607619 916351741 972071372 853040654 944597899 473680206 898187316 593488256 772544933 878760596 947970324 593100925 900405647 797673376 822219098 516288478 748961641 423311005 632718850 486680058 792059862 867679865 899134228 70953569 568038700 132268745 847464840 368424040 450144293 590024681 939294465 111521870 697232370 857094626 941700765 222608186 953294043 112335914 415808485 29608082 847865257 505667519 539912881 466771416 738418581 566125179 570946659 717449523 755214678 377047365 588512792 751647418 840242956 515865695 701242519 992125729 998213303 489166305 874229346 677073114 773796351 869666142 875193881 326786474 734859831 937141302 939569147 897270035 954811128 395236595 429364342 562463290 793196764 670280697 801827010 476825885 987355922 744931334 767806953 278624532 963966811 722406258 748416261 770996754 963806067 184206211 876065880 761588216 980072463 258735644 791880018 419020113 997606371 331297018 868323388 621214034 712898834 569991518 829251526 844684160 944729126 444260995 846311449 556551488 574163627 175241010 734509194 386003419 510252649 124679162 180303880 731371540 936244995 649053560 932847036 649654302 796930036 487780936 801184704 543554683 988860819 991380152 991589562 632657220 681893131 481518098 595941521 267820603 843087927 234488719 845988084 267028289 481043670 172252083 594802744 276352594 519681271 327764009 437341746 130998506 657923557 152988651 305091967 222278063 375955508 81198831 129899986 786773777 876390523 474973434 508248440 304896288 336281582 338292297 790387501 766763630 974279542 416254757 718796385 448202218 921807303 671753681 932678169 421963352 469328039 748163964 830182151 131523771 360671105 556694110 883148594 345965778 821601654 264488700 672854692 766241973 912558072 17212581 141618012 741362570 978815410 990375952 991093712 155810969 737589957 488184433 764802608 234380891 570036052 322560399 601621182 665353937 668017714 281420917 596668973 437759933 869704309 261653511 418095591 742435678 811029037 511093678 638967437 384808569 996396522 918888814 941333467 603962287 844574292 153539759 530499085 814620536 989097562 280393300 788123758 916790321 946355750 916877276 982298477 101338951 773771995 739390794 945806209 301143036 993233770 211877728 797141479 490039533 927702432 682881808 738308812 898763475 970606239 439870271 447527870 276866722 496228460 64178822 502813968 16629032 412413742 682916882 840140638 814318264 814742416 214525018 783494545 905046854 967806529 392617083 669441810 543762888 607036461 246912897 902978307 614977703 974349464 871269022 921229702 843921969 956727610 633458740 860813114 856634960 994919473 441035364 805407124 542903447 589173046 517371725 851041215 199409260 661602377 350540709 990788356 312121571 780038134 19001817 694810601 613305438 792461187 896954079 904675908 523091759 796276571 174257258 516803703 351090995 597448636 430473824 495427268 654618712 957592677 655485707 933063627 976100990 996507884 685707646 699149566 316019046 476930501 268777408 382504809 660133596 712510863 661081720 810924024 448568278 948715882 284709713 937736072 988899794 996696022 947069000 973175593 81338182 123759897 45133393 984965194 562601034 986767884 730469275 864542615 325778507 560870225 574266797 867362960 283798840 424690901 490483197 503218040 104866170 931425897 809205505 973293125 834539981 834812256 300699298 533685970 893775092 940110932 193819462 750864009 510650925 743059796 814050482 929609791 640032579 650104458 73258090 109712221 359490267 641654588 746758545 919589208 734468477 916197195 530030442 674383263 656375471 921933503 588744564 901860193 221201530 830342043 305799000 817376775 985386918 986584318 944406752 970068282 894727480 914813169 950828456 959656760 337021157 723093887 608091715 697890735 721583499 954041086 695276700 965086970 179455160 820974752 390705642 499610070 294066012 896553904 37930914 516666638 904738855 998480216 247458817 743987358 35988576 806272067 982453761 990416246 643749670 849450648 632241605 702625190 389502924 467764665 999291664 999824861 473497969 631506663 740026760 896316770 924534326 936275630 10806962 447388100 344059570 965190103 895905135 976213596 621967811 806180464 163691240 411968221 653188481 950763925 48909822 386127590 816755909 820389972 558624603 817309435 89831934 653543281 236410137 722490197 129563586 169088457 519222976 716187107 42606963 921670639 636753487 923056029 181929483 397491728 516414571 700605355 687830962 920451260 66156468 569905972 837195357 943584952 79001723 218582195 107096860 716765464 325822112 561244826 719333951 974556361 18092501 845356396 290794673 919737061 429596401 877950865 823338143 849355596 70343864 123405579 368846324 505426900 888563794 994990713 647313025 862488996 102517610 846022619 346789185 989216189 71997273 207365748 89782602 845610068 163001165 775113455 263466446 629625588 634249157 869651562 952296696 955534600 125620298 308904639 699871340 748317151 366766337 828213885 474796644 968390966 859996252 954229519 620839152 843904697 310874719 977921236 296473305 830493938 59766407 755482380 712302190 828193879 767430571 880604304 908425456 934098697 312287210 807833496 262702516 908737267 131960196 227421665 345394930 965693998 855756178 919722708 207985811 324078800 210745952 702418487 26468920 706516546 551957270 621332753 187511572 755656902 720310637 801800883 412319293 913578309 504355217 721098332 367962 986271523 735824405 928351388 247696634 644439447 190680275 760027591 959811387 978433803 560231484 691819590 294578389 604563619 488234021 891092451 113695711 709311725 530005362 997687308 272585491 452285335 461467199 560242224 655708203 698056192 106016258 842265438 189073713 203704874 739024115 851430511 507528524 932528963 809241465 976516150 100796606 242147202 847507811 876008652 142376928 599731191 531831702 800115943 862235815 943358784 427976821 490422333 894100962 914386378 759868130 957931353 476194249 802081650 762630987 784817607 14454519 653950213 727660063 969600560 263200275 697858816 391022606 772433419 208042392 679182741 715408708 794740848 78187385 126376965 191728206 957976442 602357267 620926145 228717845 857750013 450912660 544462104 609606854 884022633 864875002 977913491 648319950 775138384 920897385 939935163 486343545 783684767 847373127 933759844 333543948 732864518 365487479 803353117 536645058 640796233 826860995 835322165 326652164 327198055 121432699 972406045 936847536 947578987 944257748 968257825 652892104 956927796 894752565 921937411 805516930 917585087 173969164 485581879 964303391 982560899 648177958 910602317 409726597 640764756 804164174 882658287 177785645 498903588 934456071 998269105 854815280 943401048 386663320 621444881 451048136 649905242 152033107 795826764 212916527 562603121 627824118 916244669 811558556 873970554 782510297 974258876 649553549 853836721 94731504 968135048 976046848 981755203 404369331 759913935 743381154 925577610 998065488 999841447 882191515 902323825 462377354 507252093 404443866 686838329 568488282 576484593 24944058 303494250 668008788 908214400 202676165 928775232 782495710 963248350 149107487 215922763 520841949 707206887 799678496 833152935 271379195 912934787 248778338 953091887 161263402 425271130 473729112 850323967 462023231 577979038 351021267 893911236 2182565 667964603 207203944 603061204 199698152 883707442 834177814 950128734 470784835 500340300 239386755 899656353 513428358 682340121 675219748 863993949 993298690 993572212 319805200 740595268 80953163 543769941 977559529 992023996 114544740 856676510 811884562 950409910 611289702 687805613 874502801 959410609 758252904 763001188 852971472 999745137 373146712 538682901 723799394 875933886 887397739 974650835 158069232 899974019 370252097 407279153 298297518 838277004 977883971 996341454 984416458 998988217 440679356 507632121 171729283 870076404 351716120 807331336 38703105 891644007 322864275 431370443 725013624 752121857 294524541 985788579 293036110 477456186 915896095 974553716 647403156 693519001 205709137 340209569 677674305 733410758 281416781 543803932 376743948 676262896 714797863 899975986 330041541 434918205 241005812 844585938 563025615 881712879 508899527 979172303 173678740 232940921 969557937 982936290 973136446 993802471 488853460 855757090 702082368 996741392 259723278 403128231 515504162 677869792 334669315 864836025 283313356 791872149 915902746 955984103 853643727 890151351 865908958 999271661 696647416 839086192 227769476 565818339 661328691 961180607 106096205 333379361 853225984 917467773 822797129 914593299 183168969 819914209 571552886 792846412 330069141 345518181 531980703 846001916 94692916 619226093 390683355 669637347 82377527 224852995 142274150 979133911 215140422 356046305 318964389 444209388 615262522 794095748 938130617 972189734 595587568 738268040 12658862 936635608 148577547 778439700 210594441 294576171 380080057 655067503 335391192 889169224 758590347 937212020 730851381 965281628 526217554 684079052 633164722 639467461 349084551 986964162 216589798 268869886 213485093 326143087 686544157 727006141 935559674 963345587 269389134 352880106 17690418 213122680 559019992 575473322 86951148 385213884 422022525 504209202 167046216 394521199 251389081 580822019 975677408 983794832 358755369 914857607 992298718 994555127 569343443 969538653 259669039 429037267 897620917 955771535 543867502 802641125 625314955 926646955 394301707 939188065 256516478 625723607 43661541 190593590 405824753 839553399 599296359 890845933 930696616 979379040 424121334 880023380 344962535 998949243 917701990 999888654 240165558 564219007 807144893 894877441 72132643 949220905 447561585 576927038 638714276 844781755 822076209 895247596 862446790 894529575 90454834 336122377 249924199 358389639 784472990 807356742 370266052 920826848 641621623 935100712 238631723 765046359 626293365 645787968 89142619 458924098 37970401 218583892 329849779 676551924 669590076 825172661 992167797 996215001 13608535 410788419 750366509 866266298 348137423 703470519 555204468 954905921 864896790 936439771 875191558 892841653 493642472 958281588 771783604 795013580 160224274 293971894 129258734 147683540 424559365 490923318 934372948 967954964 169531969 845621039 829189518 887640308 652478003 882938809 312432264 425455800 968364000 989676152 729633403 783197055 474105400 977254421 804625808 808042192 610531601 933744099 542542570 823187480 648836061 744186257 141709826 659533001 788357133 995355953 540187892 748985772 250064594 756561868 253334410 516138048 203003934 822121178 417917104 436984037 315975701 442241806 848320190 964740964 476159581 564756894 156491468 676929078 495225730 559170396 276920479 511613506 656064142 732043524 532460195 537141680 53132588 274652671 911989397 930330983 419754146 450546271 767757704 835255232 837234234 968623207 881625012 955463870 959224326 973787866 424873292 528762718 349543408 713943209 594496849 704767924 151154605 464127800 388123315 440901978 806063121 834751553 284995456 868677683 865822699 961746570 19736819 53889572 752608957 871843017 576303563 585183739 79881362 242614247 96843250 571102941 957990033 978282307 227350557 613284301 715917095 718667505 705960537 747872574 214057145 685603826 127503648 985807967 219870133 962687209 703267374 985981042 410731377 693341909 265334237 350189684 774672337 850620221 763553644 883767345 177517351 221606615 256782929 368797176 503967212 965625554 346837308 733917873 68870393 869017825 274593906 688025872 826235936 846436602 995844489 996841301 884963459 969992637 688075412 943319226 313309083 526743905 377598438 587607105 287459798 867355774 783218136 864642894 685925049 855553865 620668058 825271357 30208791 72939703 787275777 888629931 755931802 765754802 393867619 482604566 831778133 869607570 466958481 600221554 294667807 971744264 274062764 728263967 208690268 360125482 203748505 399128933 49516671 725123680 361317405 386175840 581606560 586747374 275236240 572498717 811788701 868439200 72153153 260620998 970607992 999564801 573741846 676447894 997917895 999227812 347216831 671214329 266167874 694202008 380400735 488234857 776662012 863042592 370734445 916123726 208883905 488992191 667167243 682159407 88157695 224551202 657793186 677952940 679075752 689355790 814204573 894326495 319344617 838953465 694190659 821639021 882491453 981456119 33276934 593106631 203175039 949569570 73149121 752392476 3024641 623602029 482621709 817422063 581991401 646475294 976287905 980389965 823573341 883485618 867535754 869179594 263329130 727206583 42397210 390032248 979842001 983470766 634785109 965216397 913760185 968322745 403450209 740945334 342017621 439875718 41098474 922931908 601810556 803298006 687781346 721902527 224915774 762203294 952289467 990286024 776499287 972273832 220079810 226528520 389810423 534946862 347700378 982430547 496116055 896504739 126875466 905800022 207913955 263289226 129229381 756280500 280101749 555772831 75888550 443260546 581875518 717438273 885602171 887594663 246857897 983595549 871029040 890177549 274059008 759789979 375380006 488166374 487634412 706854672 53165371 835155665 284559855 801636713 604361109 683234072 897475551 944769009 108434716 316058037 199181851 773746373 242035224 495910153 181502677 941535766 181923635 278113205 363588646 816718153 407038508 713540440 942878708 981723377 547727264 800881655 825331588 859580200 544781226 916344896 651100184 821020212 806019216 991796670 528577050 532891686 585058090 976296234 159535225 982650616 325736937 729531822 47653072 417312549 120959734 497327549 264212421 906739842 50528002 406350092 311313667 495480930 209531185 509238446 675948909 891759065 216587143 675288281 784408514 943866815 740234077 850641235 224306707 512365623 45683493 621501866 583901486 721516980 568962087 986056899 217905212 957525209 238888926 850902522 919968734 937944512 423109042 482636744 710235401 971630170 314045968 453891359 866849445 884871867 805551625 999001782 738096058 908173062 549830770 958006428 759311893 978525286 480899272 713551955 617433786 837453643 293121281 533622860 748442402 893647255 487569077 689157923 567752766 953881035 650312874 910508574 681213833 992818927 992312491 995199266 716975622 832537097 67210576 106326823 724989914 941893857 22336852 841637672 9167787 171242510 640600243 905445587 720043936 966094737 952319269 976220549 873605244 959808586 613839165 900831562 863594000 964872705 142169773 955851255 810836027 812566715 119313589 346655793 922380056 993056959 455076663 688456421 731087553 760161128 752198270 836075012 434240722 902398448 66356720 943124602 762621348 839223631 482627280 934326999 571067068 991569148 319405280 998496403 234600411 499366863 445192292 503608216 235548076 789331794 623484956 705268820 656485159 660421410 778607252 823422978 42961337 347762341 111283710 573413134 315248738 690259369 645427404 977704135 401904802 524780961 974529821 987704414 841312187 935002731 803112915 911654449 443467332 629325258 117864611 906481065 430207982 664705752 789496129 890009741 202893181 425857469 812454295 946211954 190627990 996393577 246697752 816915059 81407698 960963412 577507456 823230531 537367619 611437240 321263767 687867012 364155088 499210227 232510029 706190692 55300537 946705780 206811745 802685110 90403454 163682261 825084090 976100357 640862567 958813947 30825104 841720655 153551081 629314180 14034956 851021758 347996949 536348686 575655938 809392100 984649886 996690160 299431830 813490026 317587972 459246292 70194776 654979143 510060826 899474660 900777053 906077546 716644309 740908689 503408414 737787747 109340983 914145813 458409160 565084609 144482003 312677499 830293907 901878585 28940695 933126162 20170057 152305138 698657659 824423301 207392362 357554003 103320478 868286547 767062087 826784994 917764360 925504250 133689430 764992229 984086800 988765075 520590303 779958118 342104950 967763427 977979075 985696722 698280686 753839115 525599527 565369634 181244122 566185338 476197606 593203066 322658610 916318951 953223662 978194335 408182768 588447213 671296437 948767879 882137291 951799806 31763474 543241741 325181257 925908110 164297059 873434419 748936669 911940403 398290432 562276162 515472834 615136911 616279999 835920024 176182574 563773837 985051693 999524610 689509591 873057022 933137705 939536916 647489184 756233241 482516713 619490426 287666219 327700523 371282035 681258607 493048805 780694141 299138198 421829699 889052904 909968018 845802435 910794563 137344111 519194004 596287863 990011594 433431387 686747840 515543190 656001944 185755349 387251044 22970527 714365260 364810589 699875964 719770589 924198468 301696035 482575808 628077070 920242595 306467026 744284601 508658408 612664949 844877343 903847674 391437819 399569726 401689634 504693884 461862460 921491378 377723057 557658161 383822597 619902347 829089547 984765093 16464943 64677323 760302446 802051315 790903421 827843284 761288246 910583948 885330909 906594502 800411749 801480825 91124871 162268752 748720607 823137198 615391589 646240006 482507311 594088619 233865465 704592951 517661908 867871652 157718197 217957558 969076873 991259837 505620973 879764073 858797516 925243686 549950646 977821234 466443726 572462272 754537213 960013681 875348223 896426124 492657275 956357332 356231378 877151703 925390074 936539923 979925720 998379377 872571507 997067230 945918240 960318917 126004931 377739310 47631233 775366284 265024781 781065051 315068205 422550015 379880685 949757505 746039331 918739791 228086753 503279414 895919474 993831396 548141646 866822619 298531654 622465786 888255254 972458673 50103285 577259176 864207024 963431486 81198929 664704947 860071595 972898604 134872780 270182225 860213691 931842730 139815989 759414927 62282243 414068602 949831439 993113313 247030548 517312482 979554917 983984702 887099149 969667096 122724874 184241644 181494265 785559356 729874233 867449963 345857024 780137459 547054591 914894052 740867492 824647579 13524499 516316872 692676824 800443241 829150252 942462410 431689529 821508266 896038466 907748698 165357810 206893819 692072144 846116075 745811793 869042513 18079553 799560671 172739443 507040631 892561713 899020597 787095567 957610040 857172865 877627591 38306291 909780981 175782670 949298779 627387512 862588508 823601479 864059488 847274340 924487270 9514849 667374821 622754147 829296565 659916901 683141952 826461411 838893966 622726814 821978985 846398479 993142824 248876721 526506772 747065811 884328905 297723696 821662319 518355109 826247653 103900033 221742735 496797851 876645666 982245836 986530552 433721968 910221943 980128193 996597342 429926324 826424473 744772032 804661941 738908612 881910380 37114617 110638912 89959338 651919562 34531712 146493295 444718547 459620455 852108424 864627309 907052132 961815917 286831861 722890652 845242556 916805633 177336245 708283774 136358618 263271401 746901953 807401000 248404186 384240406 279968679 900339243 798890171 959251284 90755091 374620670 618026225 804549551 287844870 821935773 739639298 965775158 659241855 813857223 747042941 974433846 237996938 409290710 257448573 924286358 96540541 871673479 734538129 759136316 589517427 673306277 966509808 994078649 143023111 675775473 604895962 957997982 419790511 617375866 9131458 909329868 590927426 895651382 347913247 755531573 413122974 717872889 874211128 946111506 13618212 182379837 570494515 736971137 586520670 911677690 319743757 799047220 882110826 888606673 875422159 954253618 128005006 207844434 247378892 523398402 525532830 706269381 34573152 213826442 448734630 893612688 356713388 518653617 517582899 928824829 678141948 697997237 487848347 856718729 128070513 712960994 598470790 784338165 128859229 152619305 583570668 736182856 186933578 357738670 645761079 851543091 733812854 878886712 285448992 377416344 967334499 967594558 196300852 403368553 54693470 898916843 46348332 928856613 700640481 998418313 950862720 992791256 559440852 998425182 20769161 430685552 446774750 961115127 867194513 937994415 560313848 697868544 727713896 994326287 826975129 955755290 824556652 921995428 967122500 972405922 927259623 973544022 338322044 981404110 867640522 940000718 461661219 922168247 554448580 619088794 741473556 750004214 774758777 881982167 107809781 889646197 138399622 998945431 60701233 960407148 329918999 753294925 155344856 641018436 783315393 949361684 251667237 277323825 842985475 904396555 856666482 888238194 874066750 968925635 437125358 801304989 165242904 265456920 602825395 622870323 97314330 412171958 901882733 983013280 147434594 937373914 996949372 997221456 532794740 723899126 465706992 732950668 420461713 709273671 336522533 562403103 975427694 990389240 234056103 299736151 565967765 669451750 948732506 990699003 313845770 982318923 991118645 998872875 511022401 963923659 137308196 871041546 483839965 576246979 579726488 742808696 412685519 883678123 28903750 217315157 79283075 454385751 389539394 839068072 313147036 541553330 694230585 867968408 269394589 904474071 691399214 720971371 853641621 861376357 525495893 683708683 919152658 928397519 550363551 811033553 330020754 391099195 142565335 598010953 837134163 979231391 556774698 987686184 457164579 863852506 943885568 994813377 279853533 968217287 338626936 701051489 42589405 851031457 67023935 612319172 116547241 347673375 990664609 992281063 413523615 977039801 265067533 405095227 246338132 874376562 348961956 916882851 772295160 920545209 442079525 518685706 21321783 129214341 225071336 635034885 926265771 936588110 225972733 672165083 373204491 623047848 176305301 734130775 274628990 526160922 108714074 851638691 243131831 983747297 808229233 965360220 962803196 980115059 407343138 606204942 281761953 444100721 655132092 919427562 832523389 955280111 475771283 688530899 756766866 869864762 148616466 398887993 511796321 941673235 593801391 670737041 71052040 242969074 874287167 892058963 640569816 710157142 422711492 784672038 672258142 877132516 94970209 837777633 809318033 894916733 265426915 631089215 467929902 658252902 934646319 959152496 110320843 236159940 65587835 819773195 406393155 767396498 558569582 690741193 913478412 990400556 385870079 679822814 419820339 723810127 525067071 762150966 747038696 866191447 617702455 989557321 739267228 749757583 357444122 633737025 857209210 880264758 212351686 314376798 365315723 458122731 109724006 912398777 751300915 844921640 338433702 384155158 879251310 923779450 199011851 815661418 275856073 520444310 124680602 765827305 805917171 813394005 11072537 638392326 637667362 639639766 293022508 443841629 673881168 799410540 708464147 858163673 935999945 982709409 203106614 562382032 959541344 968866515 967322084 995918812 886337562 889461034 463449887 557777518 48685678 299266181 47254921 299336214 154626987 904062049 812222784 984842886 666683414 964689450 6165642 954274702 314566909 888516515 691424556 756421347 558302054 565005253 340812772 896379297 403659204 774095693 228133080 977223021 63355266 713675687 437403371 676773904 66276397 877684556 381618721 696134468 111261843 218059402 660157142 903780529 143968648 297731411 200419037 891658235 865395681 988813932 264906208 726457798 824861758 996665850 518139264 636842706 180491350 817132694 39940657 155846543 926736117 944663337 388841580 751996144 849811094 992895946 212855925 317301539 336396229 397137046 414048292 488685852 152628260 480540488 504587030 779709849 469234512 651675029 695539369 894861251 22858067 250505898 343802145 430669012 559850601 885105858 719188911 997589706 313642076 613491951 337906555 947385505 79022486 295060102 241999683 655482529 889629000 945181842 349172046 393515119 439584035 833170277 733086873 751009557 959354983 968585431 319435479 762558985 697790614 928601024 628085600 688312929 896775356 940202118 623183184 660885330 381866198 701397912 735461987 786441887 283699966 345789131 590671589 620820977 436298421 516118957 171221710 614329325 529314955 745348814 803139588 896776042 280846199 857147837 691629314 971026004 57820625 231899523 928500349 977013256 341377703 437536252 157931205 529219115 665495221 939666412 955156430 958952808 925748933 999984647 598366674 701044727 264048256 416298736 166778507 991618464 944976866 953158913 892755323 966679973 124343182 184861031 790873331 857262256 302252862 309461715 849058935 982692222 982234524 982391353 681931523 780106173 922453930 969119564 781658730 919142643 312034576 499962876 925412596 975453686 748510274 811042251 128506679 922925300 547438133 931649546 491906363 945180367 297905943 383265301 192773957 687432226 278155715 285420186 757444946 855363639 9457709 387193459 166587697 820635955 370361397 747741111 799445480 948456732 989599704 991696114 86637857 116875502 63271848 440923707 673182272 772214231 30900374 270891177 797380198 929821658 468722218 815642967 721220512 952060855 615286428 808961381 341658999 470469386 373626834 493829045 26563264 381907135 135146895 474956077 484000355 774333853 912133380 993248110 869531023 955987710 441829676 883297508 830615962 975557590 635660540 745387817 270753568 764445046 483208190 915252096 555793803 713841970 3933298 747007090 972158534 990702004 168008577 889862837 4143899 918230708 700376723 871786905 914133521 929306923 449428495 854166876 114595425 608487707 817357865 822677648 726908805 841280810 49834032 470094123 268720325 675567108 724600823 915468284 79908138 856211556 538726117 882324223 117850334 772023045 461281065 739712996 395731779 870492131 894116597 993109757 683958049 892435916 89729381 726175253 488293735 758209491 152480735 438546138 61304742 611515472 198684609 426955311 231923636 309029923 464932764 802441821 859386643 962731988 5613403 193907449 200383168 376060438 256799471 811621826 685065126 765819519 986851705 994978997 570559155 576050043 843318631 953690102 625251397 755478939 501985664 967674216 346482749 656752986 720875855 801759580 702573216 910547181 659023195 856377708 471704554 621856925 685832103 964030434 417545341 840603288 468269265 633324882 685996773 782027383 399287217 960653757 826342591 849720424 346043456 550350808 23475485 524813782 289648015 460801952 694213344 732002570 225707332 591948152 110049804 188396045 667091554 756905692 146128629 439525700 756907377 949583298 579389052 596994608 943472284 946888237 570007542 876047719 174213863 189946875 814662611 948239332 468510955 479715310 462968404 770056310 854882759 937027937 34365882 501405271 266103888 342166466 136434816 657526722 913640802 983188579 47234370 696640356 634823475 677957162 330768839 873231432 208069310 433940016 750770160 907543030 120806631 904915855 786529614 965872180 861191007 887480215 273238998 551288773 1004889 998715699 484626801 739554584 120618992 226194134 223152620 354909693 651000903 817882786 646732610 722509995 456917653 659265671 397209676 775035443 919352209 982154227 163790364 945239287 641612053 791176092 618125984 785461568 524345202 895336790 506973732 674194259 130224224 677891290 922728413 959101135 525664976 735354394 696798403 883708796 518105063 592975848 354675240 364345590 387650615 752972143 41375651 578558640 320531047 608842786 788603430 940305418 595717305 805085557 556844992 986451922 101484627 670450706 991131801 993836937 370945139 427724714 593420038 972152530 702512050 994408013 980749022 988961113 51541085 302094883 878773298 914051146 113996403 537564849 402640915 958579498 847505578 896270881 951830150 995985753 918664368 941661804 700698044 845394622 508753582 549508496 489706830 677286805 851229639 952853647 960722846 967879820 7193823 669095365 163723 412466091 933669181 954004138 549937484 847520359 434652801 511255342 280687488 846189473 651581390 996461761 664376489 794306002 184329347 576087944 7164090 232296924 6405464 64286577 938848226 941151324 576264281 890934432 276244801 681905003 203517278 504901611 33025840 654540133 3487233 527662995 163757197 747678295 574360799 697582053 663845496 664128167 464629805 612534337 718452379 886358378 754877955 937766949 391323870 774243194 56703152 874952806 856528298 964758651 305007084 480526384 549514599 743065520 458204743 786198199 5901404 381248027 198310588 449748662 672846294 780575079 617282837 755420650 463948422 478311109 181874077 799807283 393887227 679936190 648937276 928121531 225328755 298088735 314629466 828246856 115752229 883256278 872109986 874639157 171848196 845149857 366125792 758827857 619945027 908155840 853228585 993908876 671949034 763727486 15519666 289354166 854529051 890938191 725928811 960009689 203949868 823602174 289078082 402865999 549046872 901395285 285410515 968699742 272115426 559353117 492652004 519324459 388642782 546481303 221640770 706036954 800758648 815207745 493670264 983607892 477105364 798074393 28655844 763276159 304595454 780075793 738729104 854267580 894609695 936770523 983307825 989939989 655105800 926257946 506380739 875058384 937998527 977394193 614646973 912398308 54173105 197120896 314933240 534687011 75500428 194417790 109337270 475732361 527674999 796636489 449314844 874599368 327630835 701808359 340385733 790945899 270922301 585135039 602966930 669398988 586663430 850285827 821376410 921087027 730606109 764811440 769763112 802308022 862811358 951294550 693242639 737117983 248725522 956854928 463104898 830785218 780475217 789998882 707768226 878426818 151178709 660757904 646051947 927214039 709319973 715993613 261080755 565050679 700818351 771664759 516678835 729561423 186406667 306077728 868593143 868931076 45034033 200051371 799322367 996192449 599925749 706541729 923636308 979670045 851774611 861684473 523706214 964542661 963148877 966581578 64931293 301128601 44117445 424468312 849361869 965366868 625407404 787957088 927389179 964430230 953936957 968941668 941308807 962325056 188234686 305187113 975197254 999037189 64302191 711983390 522484284 935897908 131640674 569282884 962847600 964327396 547016300 836256451 48157877 84017689 363732811 698617825 896256606 930447457 103145063 404227149 700060279 707479476 760299450 925114347 502031301 774894142 921977810 943173242 494303779 934771307 969416426 969621922 247334930 436619310 611206703 617364717 812615363 943709481 263933871 451537457 370396031 699010307 374048215 501585766 968798435 996443441 689904370 872393293 518286571 613700879 423300131 945552544 479710565 499612859 73321997 573024880 85515634 526145180 992183815 992804308 236528448 593533062 765887869 978577491 927119280 962111589 343740791 707057875 157696569 724149232 131267131 769430287 995428367 997563000 392182447 846164429 544990526 559638701 465952657 510631803 916479290 975073748 230877587 849161164 838906562 922730575 90501854 981258109 304488123 994153092 710718485 936383185 825479616 829680666 793623162 953977447 870049195 894467986 125948342 519353154 389984100 687232010 32599060 809545713 243112672 677870271 93700859 560709392 818120951 948363178 922530609 987970429 650579378 688811493 924203039 987672124 349878744 486132086 292887801 356536357 291697026 954218022 148640576 991688050 50337208 965956801 594473514 862667711 989955671 993916238 138392990 622220281 159406467 748808360 396761126 549575057 570115798 596829804 771711867 891950884 327269099 907804406 695002906 961042403 985168720 991750635 650047903 831640786 403408032 769171326 9094907 14993973 656700774 921971280 727155398 779730831 183521998 677959731 700356152 828098390 554721444 581701322 600905065 826537516 964640407 977788642 429600517 977312330 639157929 742674689 467804817 888933898 572464119 812698103 793029639 948131401 275165090 479980316 332575117 760031402 455317044 962359421 188071410 908516199 559966105 643322740 553449958 866040525 740907229 767306552 909379822 942292879 518891721 858151258 763644696 870021376 714354946 885150115 971575360 977958306 779528761 922577257 970745356 993489605 267208093 867486379 396877581 968912259 196447553 797279185 566628961 609685243 952267123 972478494 645705610 855211455 567429013 810850498 932488193 935564938 187004159 956621091 174985712 290427834 634085385 652619359 249450584 980179423 24078566 370777514 768376132 880199216 344329045 738109893 931273938 991619199 554032530 718641629 776059634 885160139 155970328 793741604 610811026 970692667 265908299 834955294 380252975 731593504 181209600 905753538 240074911 749403469 485803506 662129958 74491545 868453801 5671859 879406185 577619152 650994214 254765315 399906777 356851875 713486876 916571184 969330359 441368572 776718587 265814420 828290441 984481377 989990713 479157572 574439168 167387506 965529052 951344911 955042388 97894450 527604155 702754467 988776125 55080566 715718748 417931593 496119627 39485470 720712678 136429939 615491154 374743711 829767114 326832868 692829601 341665182 678565044 513481782 830360083 198037973 558889239 744177456 769490747 369952957 601086324 423857943 507511298 627020133 736791639 741958869 868629862 641809970 916541508 279936143 461759222 771002454 950562219 193340927 284232332 186333623 864046106 382396465 694453000 677338535 723661365 501131021 800609435 90222179 755527866 468856529 476757350 308927783 664680891 505864045 585582256 376557070 890995096 351316608 382528498 654468357 856535541 953314051 963199048 910016388 948815476 319197421 552164185 372551622 757895307 304391031 434112073 785407566 819477170 111771345 208315036 925677863 948820708 428348688 495974937 479298316 492741725 92426792 903235698 358869377 839598303 729090451 771339378 559422466 773154924 508908705 656651587 368600504 383895105 760119569 861770456 74319057 785180481 873991760 985006874 250237071 446677586 520825250 744483082 98338212 780537699 441928764 779043881 125147582 328650065 50678502 821811688 121395318 442857990 88863457 340825910 373524916 799192228 261958438 531093376 226809928 240490145 89162936 210377065 757607921 929860217 299143590 931667552 853751669 941668103 371969544 838559231 939608027 985845420 223957470 670887899 538548322 615109542 362002757 878464648 40489749 860980553 213152305 312180793 317971897 521644019 572085226 812947890 757435020 883698373 964479631 973721725 925915302 973369555 817929318 825843113 449616415 509626499 431511445 728726588 124732617 578582654 429606276 876477245 157435487 597036638 548646349 671251245 979649356 997702916 648804458 654918885 708799915 977372443 596369375 929437209 411020793 672503978 66523943 254446749 358040538 722651974 415534798 454917684 141901470 891552557 535191563 713607552 878765827 945241986 819315797 975834935 725240684 817595256 582846223 694018929 144552743 620926331 441075653 533760931 586734675 718511403 82161992 679010384 970203638 977687674 71744978 303881962 246710048 612121998 322854747 521379345 723307173 883637076 462349259 922476585 818054040 933368192 565575755 655698279 271731863 278577205 714731682 801833469 601023860 970566373 604804918 659556364 819850459 893776823 307751619 623424538 978436341 999928423 628627931 782362529 439354084 664358913 331335685 624471989 258781329 632194647 29128955 206957301 332380147 590656963 935309243 997278640 405055919 922883936 149220523 406837540 861676032 953691524 186243714 194923003 238375248 311765712 428937229 665072695 967314355 984419440 228932017 687364088 311700899 954379097 56189334 831401073 723586696 872902281 814360175 917265992 513319980 598507136 563658084 722149997 65673618 489981133 627980487 979884609 79543060 369583820 124914151 811186197 104612055 836124523 812413381 914349140 898529806 995171984 389591130 393332695 180165166 762617773 844460069 983944012 845476653 975082323 547861572 744822172 758298083 884347077 911743472 944976864 504311656 948802865 850548792 926171100 948764058 959779009 911217097 931291955 931489595 964998020 658441284 747935784 422147996 667834234 399245059 502432022 388316812 978918046 542977588 914600841 113443166 213017719 953527948 969876998 456532442 539293471 187467839 439685122 628430511 642934190 3608959 316562057 363439216 605996255 376846958 477755777 606605215 952909721 539870494 699305042 101214979 109468378 187951036 956874670 597246845 882224330 918998714 939621217 804144924 953951803 292686424 477308954 336180700 393656052 319995207 969396665 639077306 804836636 917833030 965418691 969570779 985989130 617204667 647577351 171707865 387447359 575905535 695017272 611237842 640923406 481425701 633586332 236546983 284078130 918297409 922986243 350410404 427096353 54747361 330372262 776096310 868415022 515395571 753361408 670296505 788910152 829382126 889640307 211436141 803518265 997778196 999330604 134743909 208190723 266272408 327053289 442552769 920006434 801668217 954513169 787587809 919120593 421767892 754282814 143258238 578307042 710196172 819098070 951760312 981642362 716964598 885128761 399635282 583848224 592343756 906795168 568515600 910468568 548619029 846099190 839961536 987957497 87542157 984442031 788932093 989697170 341425114 824102170 562325177 803788458 914869297 985863408 214150107 544994148 807625782 948440860 882785450 960095233 536876900 779924398 78344934 793011867 827462027 893263451 849784385 920725177 9171782 294950466 492669742 671797383 380763934 781918323 951037440 999104883 707242858 762936129 838989566 932853353 692807663 936126590 765708847 968268149 865852639 882283006 908375599 958830871 273087688 402542843 284750897 609048791 924450812 928871412 82782076 812054348 358807779 768502954 520649310 655454122 759086152 941068852 251421687 995174817 247866978 654231186 853030945 976830144 54453845 598510899 440461770 472348842 731887598 743527631 855975023 994488633 906920256 978964465 209986776 814984055 387327772 814812817 949854523 956229390 582745197 772787579 499033799 879078269 808151635 930324414 598000879 638689656 299107423 525638062 386870571 510989472 543091040 810850240 4673322 472554020 803121916 940796971 825263485 953276767 318361511 415050547 189154949 366663001 274525319 494533758 385469618 881607788 928332160 974369320 302818922 427696025 81308397 813574449 551507647 905859082 863381641 932229605 371241728 457490705 524121478 558872104 2581357 589515959 846351696 878738558 21759008 956343967 741984126 860809829 867845246 914171980 887819263 963498106 67610287 584694342 924448839 982768362 506134146 664114054 943549479 973206130 675787284 686773930 839736631 899024018 968367706 989621306 208638043 678900176 298769766 837205491 466915169 934093759 332511965 985312849 709559496 851671959 326100021 968972364 989321091 996685305 758185334 836958204 218939788 971410901 189508330 717790583 889769997 921724415 487981172 692177940 357751014 810086437 670565505 957495548 750256344 902073979 811724526 898599292 529088376 688119321 396802019 781057000 65991366 476821582 997938962 999518948 823065078 905790986 367768905 730820311 785864804 955841878 415122895 931258024 318766961 551495531 390711794 734481378 961625187 984516038 519303653 851787263 935948777 957978201 985818701 989291947 96435293 159693634 485268076 693923779 739830103 767132415 173792045 335970324 740403255 746694425 812349130 907883863 545499517 903058545 557256977 603911987 336615270 591819932 993627800 993874787 514128981 644077170 264284796 968483192 969353332 973315136 885688979 963382235 355944616 604179145 987497108 990787863 126043533 405635398 211607674 248868743 684169093 988370099 489888214 806995933 421848521 970896250 914520829 983205927 450239641 513957012 693850844 996282223 672313510 760270162 986127829 989777959 308821040 869519862 670673537 846596707 587005505 684287859 402110136 448647813 965590963 966685031 928058204 935399657 304854776 682540747 370967817 411881900 838309735 855383220 851604982 876474797 623479966 674432452 537610400 867978829 402422069 875209892 131628350 933800054 820872043 823781172 342576750 840135591 731269600 734948585 528246007 852336854 784870939 819328155 606504097 850612685 932322350 973524433 875529143 921701794 892597836 942024487 109877224 926348228 381513771 792881487 167964781 945310003 274951552 311039116 692087048 954145090 349349687 522220754 171593044 710908309 948969134 954482517 594079458 663312568 80784516 471626811 824943617 973466950 568153393 879731894 981727413 995961635 255009860 727782878 942334203 964372069 146624972 338456911 48888153 808335511 699012761 829501371 844747093 945453969 910104786 989083835 629954708 960183912 906521406 913270762 653596779 765967550 601930651 821674599 76501623 548644200 790347541 916468241 150754567 635180785 68213890 410220187 684412543 836998738 165898346 805676617 810664939 912436969 258671375 725248066 939196292 978868916 490433462 645675215 340450297 373604334 593582615 878330358 567931792 702935670 61635332 589225080 435093047 492785408 11933459 703401961 367301796 694076255 315011806 549601599 19433049 147832535 107600133 998725979 914264641 986010050 543742240 988580912 871980200 903229596 866798765 951875053 250532185 844074571 372680320 524154786 404820027 967717770 70276262 489414869 996693276 999630443 581248513 652871120 213486865 225539880 82317222 694265292 157792744 712921069 9364526 979301522 734543273 883365017 643433028 724695609 736377419 867597628 965161445 978197742 648291515 817558608 527851409 629208979 368862736 536955163 866415908 910553533 876552841 951735558 24423926 815309733 944818394 990749053 416251586 422872130 502343705 794455675 711355491 940864923 574262319 831860342 353727138 545664948 190013760 413769270 408533762 547163570 946457080 975196230 860251695 930081918 1595006 620482094 955511344 969175878 810845143 840684732 695147933 828061066 833162353 892035429 692468269 810627082 826553929 898886959 823598737 995500003 674907243 953643145 656404390 834745578 434160882 499796805 773315129 922065785 990447177 992572100 740404759 975154496 571809088 766944373 851863657 966661017 137206950 384357509 120942175 942774189 207488584 711005221 883950968 961306151 513632554 826042743 923190477 970655339 461015537 501668514 813747830 866299513 284805413 832441645 397878426 805783325 183995643 421066980 61174464 171173455 977661496 993440187 581583911 912943166 37008936 860459022 631044575 975512117 779706276 929208309 337438747 655232714 723975640 995473377 407291784 506307332 812918669 952959369 426513910 831928535 105452187 662166515 522927099 546826803 583381581 771197387 737601867 790520948 605119950 759040015 432608619 597983283 470918785 497776793 432456442 766153652 40473065 852601853 995011468 996416423 299830811 567423934 905352438 984677412 802044857 818952947 801505692 925714135 351266802 707770094 142584567 939805725 910628746 946429887 351929864 582960320 562249311 921456064 339021784 552113750 56273012 170029005 937941357 987400950 503515979 613490166 559083740 794471632 295568969 334156770 192375807 200290605 312861274 684871015 811999208 994238704 32743304 307838731 551352379 955944340 943838957 993897228 184103169 321547269 373679880 377974788 767099033 867269034 224184250 284939508 195178783 694513440 396274826 907380025 889241963 911542751 933039727 948138362 122350360 566726751 411826686 893862190 450958336 700992381 552779582 768173059 783645914 907001454 11296048 75988366 713308140 757945514 990803054 997116114 718495026 985592299 356046020 841762323 528681935 862820875 739646027 894984609 303402384 969773852 946897060 986379050 738307044 986837845 23930770 421192899 930173174 986385347 8578370 625186585 905189972 914236259 178429398 542329172 565917263 965553634 410594817 722003181 533166815 730945597 385331646 822862154 12138311 693067816 412164390 480874726 991125859 997248650 467941663 949891867 120781902 584779240 791852453 842337510 729765406 831273819 564463314 619463825 302182852 863166162 16510204 276593444 792057991 832289751 797739138 957602789 778531674 782321353 888125162 976865335 11530829 389078752 752239744 986228340 675817196 860496336 887318772 963931155 991496389 994425843 988159249 988587207 334674630 376376186 441678757 952877721 676909954 766906886 832282038 960113835 325472513 965885890 826654543 848104391 36886090 543037923 301665099 671581811 508140149 631988354 136305203 344856704 938838971 954973569 398764566 662946941 789841017 993950488 471602609 732712775 664891136 939398794 302709993 988499852 446273962 778568404 854577224 990624905 674792557 836468640 667457159 749993386 374285883 400639696 708688694 835561188 261396152 281229591 896979776 983568301 42152048 52591886 867964569 920168147 905672808 947313697 498824159 688391968 400515535 887710232 369301226 941721170 957963766 960438621 806746126 991610877 595778855 916449121 465605785 648536127 412692954 540461836 769110066 792812482 465126288 572229499 488719306 835618695 413402786 650558929 393678437 535456401 44411649 744146168 940437715 974431881 269659084 460379542 405620944 614580268 449333478 903040336 505099948 699939345 436724748 727715579 801682287 908242920 229953605 799191746 197951668 498561719 79021854 207841720 702927625 959736043 303036155 635821798 901935540 984615593 819337159 957230694 377472833 770184218 230557007 545698939 16985994 272336208 476648280 890156994 111188901 815482279 229355231 682729565 1050365 544926053 414365415 797813909 936427965 990063536 592501452 687877912 604991990 885184188 79476842 325590954 92349441 580801498 64509257 336255422 750443071 832499246 534299606 732704159 492620570 971605224 926080407 954115089 786741076 975690472 644950708 803955435 485937299 872001687 1508088 7422449 610320098 853103869 682336940 685858162 736210854 746615348 126002021 796550165 341851875 752024152 349893365 892601294 699257008 995676453 476680687 586894702 522548071 645666850 662419504 921861937 992193527 993632973 751617934 925768263 103959419 765771232 604755284 807699645 177206137 744461219 586283478 699025047 485408576 885228891 641317248 722866709 734731283 835185294 710623054 951500674 957640397 966355798 753524291 859642734 317315708 384568978 51554140 488753672 42886010 401104172 641113346 971766743 979444988 987673588 556425483 563036296 4986171 657220310 463952120 855126291 578398716 706618054 766283587 864135401 800822877 993545049 319915588 923330107 527621558 841186478 621070599 834014744 957891623 968466557 251789080 747506688 576123939 748120755 762123260 893621370 330999570 695646835 852412560 986271953 572107731 995009068 784013415 877606057 543876004 647927998 101481056 568871580 962547221 976935708 672272940 978666975 196150560 265063731 844838303 872244563 284476330 999253071 22695460 214118440 802986424 863626433 456967344 958563437 450097337 530869420 325319239 457084511 347960167 838056655 577684512 598038347 939148391 942445259 823690337 896700937 66308561 354113683 359126897 474162387 741306545 919636912 947258987 968517847 751358424 898684805 908446649 914725994 547974695 845529420 876787783 903547967 198233809 242011769 992491477 993121443 804002642 866579235 263943546 891744912 994825535 996798602 223533842 819604111 32647801 355212500 36702618 748995149 923095814 958644279 361620574 552146867 151873029 622841624 597260333 804272282 303078267 910422048 788771816 911681164 605358550 834163365 26692210 884517708 720685410 751275002 628102894 860757277 717404376 943779730 105401518 999007408 267679904 925184943 449417818 904458783 484967805 832460307 946649711 978063853 325689171 879885288 168651650 416372688 133434044 281356996 679766289 757264408 863769714 974233948 982836447 990918649 786125159 927593767 578776847 590419912 423725814 639557852 632183195 824538573 529156363 934815510 467626782 572055166 486965120 518086442 974301558 977020158 96201852 997106631 906003776 941550280 817957922 952030945 838430334 866605536 864344417 929365122 824542519 959052599 206694777 918623338 678778729 770203870 850368581 965883298 874918051 958721364 116861334 585518407 670804667 983263263 315704566 367653534 287411762 656840294 133832822 447251575 68022349 719830051 991703576 993545778 533250188 987604183 386014548 482592021 255943353 640161666 465120374 972047417 15408763 703691763 315985365 632776618 774484213 996407059 748544023 800370696 671924633 750800020 207973022 509413590 219532415 279989490 169637423 323404122 43567184 801194649 673016501 743358116 726168874 856115676 664749987 795009884 378630317 641315290 378101226 792737491 546971657 730044859 290451376 655011725 797950357 856245215 104877973 400548772 995502721 997462299 101006133 729846424 246106153 786790582 184370163 836137074 76675450 425386541 369739158 751364672 686748924 852581926 771455660 938476719 256756884 814856048 59010961 599115851 877312858 971430425 196127260 598537717 359160467 724945280 301280092 867321157 976006524 979428869 432189171 860229224 469162593 955876324 363796815 730536005 36634180 630938839 985306113 986308210 952454952 959000431 727659385 833485521 7739870 941810081 418200884 852049898 441819312 860666476 67153225 775413761 701386188 855827328 113723769 325876174 828804297 975277383 742895143 838684229 425514393 431115603 377723276 826972205 973802155 994881845 987394058 988116480 56636606 432545551 9248721 121388806 231817945 716210921 749517561 790975304 692334852 694439598 825249111 854442764 262675399 957785524 240686425 347320780 308259754 500909452 463347951 536615683 895969337 899086832 678637789 694482309 659928231 660207854 442589909 582569605 78387538 311025904 181892004 999242365 219562157 868393392 129163601 614451622 846674889 918509677 853243943 866237608 353723459 689750368 400270012 550741417 197796463 596486674 77349582 166343279 283981269 449782655 359306801 431643549 289516170 517094876 35196028 928813304 689964742 827114930 594636019 965658110 498086402 890505863 250858472 559103150 562638382 564728221 46391020 595353401 634786860 723858537 501023197 533891994 590970956 817496434 428428113 632359401 214026628 363015734 95396337 955485781 403205801 765982384 392984967 469631417 908673518 961529050 653874704 851735029 546903965 654574778 896221549 956032441 186605300 592394324 814566216 926834994 42670159 924991194 49758236 218204317 646694577 808502961 363870502 365472816 968043660 976451251 200668088 437090480 542182878 998227458 928772869 970078149 411765388 428239856 242111566 509868131 620738923 645768716 899067632 953926409 28194562 852155483 932443272 945697329 302236459 411514046 730064641 844104741 106622615 446402139 739741009 984975466 587826109 695756756 52732988 762945352 640034000 900078493 331436849 460978410 635651623 756763622 27936409 862328825 813550455 993911404 107802461 111873310 942012610 972975007 932033037 957547709 292846721 765510719 48623206 980163909 253690551 473837486 843653891 855134889 520851595 886936250 31162967 364270625 496196429 611132287 409873458 567807432 484612032 671274314 725542319 876412873 449892106 995370059 342209223 684270758 213969433 668514343 728085203 855426025 152322417 951394396 898303131 965915920 727486325 746571635 842609335 901679991 536397713 831151351 104016322 972618329 518395200 948668119 93501237 185639338 823717889 972447108 111485993 254984330 302826598 408787214 409225685 825419352 154951679 888186719 886317278 943744789 521688930 881247663 261267239 934995100 83319304 361390935 291138580 433761326 947376283 985516585 288632645 500552043 358963332 407730783 676869639 788792346 718279663 837203019 131894769 279825140 313478521 943147234 670760473 862053117 687838746 702966730 556384163 841862981 578382436 836488711 261580961 881152970 684837005 920487711 946752867 953522267 31440086 971075744 434836310 691926225 846649987 964719294 582143136 762953696 246475662 969658043 468161117 704007346 827431981 830055130 794531299 829894771 192496972 576220924 268246783 399821389 387070899 577328735 256454258 389402014 341776060 926397457 76934858 316417741 610554192 687703311 860854831 912550512 263722910 999127414 309926641 840054814 56312021 720006495 232681077 447556095 246247066 581451246 563554641 729806936 815930225 852624181 698476717 992298372 612454611 692547145 460088603 506083916 837174075 970896382 386791076 591141776 200424630 359602972 622770913 776088678 874628418 917812088 88818055 484243933 38674463 557221079 577092688 910993880 44908154 123311227 6742757 372424499 789545904 924120564 140044263 325289835 855844625 987630994 216472346 397769395 915446313 979393753 766626008 831135701 956026947 993094229 579998043 625120435 57440979 188729773 138591177 652513829 752612689 874811534 826934515 962571462 387427007 733994970 732510782 944614053 172272335 826350211 711121001 864292300 77813307 430900631 186362578 811177353 788005482 809383859 765814724 806127959 598697357 674341765 841139591 899360249 644609547 803773329 277575932 328544550 272096791 652153558 963448733 998272069 279096356 450593198 778067959 907312460 273831983 369030230 47365010 951498158 214205465 699128021 375184180 951557977 863906577 880316152 393867429 532934119 258790417 871914203 549610585 772631784 181334395 187584240 607628200 677817372 267002821 957617568 220802377 925906189 937978575 990523256 541574126 802326879 449239275 623743212 634886479 758936710 905912433 942966373 201017325 917627417 746699625 921744348 312271595 716176915 97595516 680859492 634345506 726239878 70113235 222272975 143224052 477071126 251371549 392948962 828935780 842051493 724784916 726508324 243861446 937186817 401357754 742002078 899716037 936516569 765128121 858680598 760171273 867120320 24103989 513525763 126012692 434193917 794097123 828338712 587484874 678684956 942540967 975577677 335367123 367056023 21053855 934691296 613397121 616122314 860136256 879842568 286341150 336852704 286885286 461395752 25336549 60345161 364130766 959450090 395880159 885001320 372899423 699523357 95842312 417264757 536286637 548021798 96299754 450234221 84211690 398939739 427595305 560321487 737118036 996762666 524379083 921850380 275391540 485482455 707939069 790040012 459458479 497907672 358525409 467474197 123948881 478499699 122474698 703748073 380745630 579238407 700737795 940413316 672943749 869995439 345905339 790289830 579238439 807422825 168128149 668433423 165009124 343602203 364533358 482876050 629909108 861434869 335852609 784760809 584717382 642523346 626731320 782143819 279006820 360402860 499560904 673010994 351222723 598023800 943954348 986467706 255333680 493787614 68095129 436756668 535898014 541272084 760678587 925662627 742744382 857522750 22988130 715208036 834160975 995500839 563211319 679905765 208709285 852015027 678468548 771927587 260577653 775181502 799349494 879914916 886168033 987489510 24335034 524659139 300261264 713961110 669529086 745838716 156172905 235174557 170967006 796940852 990068622 998978234 676542331 772823257 717065320 737005411 514814550 626965413 760827783 841760964 856091929 872082886 475461702 869502838 615031097 889137311 763372463 873878219 287791759 505009860 720486975 964651239 440132040 725978796 733674723 793424813 115143721 422320876 786544087 931162903 757416167 879197945 102201656 776767027 877768111 927957385 710093762 925485360 740744597 915985925 762179560 925996480 889362507 909021559 868532440 964201535 803607992 946859730 717284310 812768322 67385862 617376399 199560506 341861462 139972779 985888561 635235616 937270190 710532347 989666809 347188126 389354785 61667312 213928835 163036504 631369645 515226245 602195826 478376425 940236525 286805179 448894159 3256276 193719163 580910013 587467865 113143756 545110066 206902428 472569336 10919527 32156117 734606764 892461476 236201348 540529380 878821953 991657810 558750567 634812893 21117410 501253860 318634181 368126511 894775714 929457101 85755419 326361721 383715597 738928709 112488330 510785826 881589377 928784229 380999483 927865982 253890752 469867018 402429680 835120502 421151463 542759358 963113463 998305985 55521071 841461581 644001563 990526057 305845414 317410697 572326191 907445769 841121869 937249666 346340487 783894029 934239872 937315097 791293967 817965438 728158852 981952934 272576206 627465979 385967540 805922479 32010390 375599409 751694660 855642848 500813173 559767798 525001035 823173854 525075238 727271520 570251783 946241971 619749002 756791529 572717003 699946702 850733142 972573135 464104036 476791306 137844732 266542598 106681105 896327393 308124148 558276379 802933428 980807775 658293991 961588336 743963239 787472664 29994744 609818865 46070177 462378450 676996157 860486611 444811279 552977931 238947259 811733913 340952863 782204848 221189938 852824798 791362921 825400983 673100806 777088877 659306222 758278429 333716656 459410437 304768926 911070876 519370973 552584869 265085300 897904250 296271841 415343941 868795609 920950926 815559383 928528970 882854303 891163900 765549381 900965250 141922272 507496740 6211542 31084532 278088920 930633485 541275428 606893328 683992130 728200084 509154134 668961466 641337853 711901433 310550575 561572819 402201733 540660282 855057152 982382461 108638362 450642886 608824907 864952950 680310471 887307777 840783456 970397665 391020645 926809763 816875413 924590269 866515930 879955383 887679695 902030089 740233 92382754 83729356 235058859 5836179 968430968 192292009 956963977 26403143 502412249 400629376 454949712 684994691 922764408 346261682 428996866 900617155 929618532 436675687 704240214 846602686 925292324 618939338 927787452 370423836 374213651 457510568 587332091 795205554 974589581 528734983 636964841 808314363 990995716 864677532 895171991 220199255 223498196 841144565 929746827 100719083 716532725 202788790 567192542 681979208 888975483 335918716 790773631 938003559 980213462 888090712 933213867 949087108 960878787 368012000 531534661 660725196 806784671 747334378 831796181 216197044 967820423 775575205 821828573 522518306 533219169 946484482 999607491 132606797 958423305 185958548 654275390 342132927 471164489 629076528 850421664 303667138 475549022 831020290 864895415 635903932 940206813 868992557 922887273 31156373 969840251 548873104 853915048 438830428 477209718 712197983 866503252 606740607 925612081 278858380 298040100 229793246 386135157 570053113 964768458 16474466 854276088 815198873 865734651 143323510 181487451 586953150 682335858 887780553 959732649 936612411 950575203 917304137 923753904 824269823 944535267 608651010 965674049 906729780 975317974 135274869 817811945 762880534 986047972 16900880 507087002 454365308 867031134 554947511 937710953 235454380 455797952 146218771 694661366 460774466 674017631 634775504 822752625 576757686 725221092 838561056 990139617 97579246 700142851 519101097 921975266 73949399 418662338 161839039 277600691 253717493 788094586 683378184 700911373 168138536 887138145 249493726 533657976 223338648 293824129 867155549 881779991 29784631 694865195 559588191 981321312 167230072 530607463 380547520 722879514 100634036 690878806 364284006 906876804 671855435 992767197 760144999 937952540 480087489 752132108 54341874 867766449 495405164 719495181 816855349 938083176 334080966 906398622 19659047 975349127 340944612 686278472 490406660 603316512 371314373 476502573 741279501 891166786 299884619 797697746 841715221 915732157 658604598 837862488 406638667 696642835 675504537 709050655 411635023 703675768 561451471 993392666 293555726 837210990 398149600 700569832 298225068 709124139 171665058 975304024 352258752 438562034 898168669 978316198 537791268 947008066 557867481 890350707 565663797 680649365 547199614 657814344 105220347 994455944 15166927 233985912 446854903 605541098 229190699 869755795 193596108 663828181 491381759 655302986 458268263 491098106 786663494 903954277 562697469 990334047 951030277 984996081 250906096 812330114 154169113 264060057 392343800 455992583 487027220 774698066 81727317 238015629 525094445 806169381 958058246 990267694 440148272 679801014 292352007 583657793 600874725 999053371 234751931 870759441 189563292 328803792 762046799 895786728 580254036 811272998 19438179 837158000 916251016 948723473 410362461 996719183 980308076 987129740 791734272 843277544 46923503 365307026 824153335 912171727 173144910 307344376 559272669 663159091 583758644 969005921 322936457 768096040 855850091 886730109 621755804 824708100 939713496 981041679 939350301 975715658 375146499 400820310 548369 806027790 644954985 714323553 896677394 987681609 374174557 925802320 156309550 516109754 806105005 928060766 701787457 836812788 308757473 794950978 320677631 466532518 390663091 480718874 182868286 484229934 900441767 908675712 765398696 773745603 610339521 694202503 400533819 598989921 298375875 320974370 183401441 774286227 149855669 298490810 716251987 976724466 531306293 808906025 220498281 369479321 859915329 957482802 631394071 689808628 880964720 953927790 352796888 758075959 102467978 182626260 312409156 961850902 530244201 557331513 308547503 743160313 590129435 727917327 938406358 954187293 634037235 883858310 571775991 769629594 652009039 845681467 402251118 920819585 309934582 377170909 488442794 550419513 931165344 983699202 880053606 929653871 159534047 522148730 208622947 257159300 726852332 915411858 661291979 805427615 542741476 796503182 385405323 820547795 862919117 916382145 529419877 634141073 142298089 175401188 156841249 358272395 797978207 961723272 412527355 529211880 778252777 788634645 55157903 140201897 120926170 948911225 261535315 444755602 818495268 966220444 740475960 801064582 992586937 996618747 746508689 809197246 9298536 837677810 61086762 850211668 109762481 595522413 543719811 560394381 978907953 996136130 818288158 853029312 456283888 951336310 167038640 706292077 903663022 914064647 186924982 940750719 112872299 854127978 913359674 940841595 467664190 552327135 715346072 855521500 396575572 563147376 641579455 901129521 237056597 890814008 59123372 466678543 435705696 455853767 485626513 792525714 532860992 661382191 464652413 807990393 956807780 999613265 843593351 999358918 285708987 351094352 658915516 930154972 618490835 923676310 706451754 832652109 424261319 649865469 91574975 539200913 771976744 787866146 724342282 914984240 563919425 694759058 724431613 786289387 926611830 970135023 777856542 810571128 64945530 639210968 569577650 784988194 801362728 842822701 688629603 776417871 711266563 914990901 609911569 795047564 378392232 751139952 302534757 307690183 374664461 448880945 699655939 960049156 356141877 697668127 179282326 495636362 621852099 745195484 750775734 963007476 73573656 912447493 65700543 108841167 749677684 843439287 549500610 560229228 759547415 789702786 301492396 754983029 169142107 185267132 154396446 642439658 74229523 846338120 165716171 365249577 117360222 697658204 442533582 532899143 469662174 749850279 566929712 681828066 903927832 942622210 778460397 812026882 884710136 910362873 524735507 770018839 64440123 957112433 789472301 998484302 751245038 943186812 712412958 894973188 600793429 974108045 947819357 949585192 792094066 958238976 279406369 704458698 421767236 890125558 194023923 844198947 105294117 486283909 136579381 989286437 272476926 354808520 848769797 879256568 436266734 990873398 33000677 799317827 772111233 980141107 384321079 398067734 989943059 994209780 224297545 247409872 169332150 795153525 153877685 899315121 996746162 998233517 249777022 981848981 961893550 972563779 286474621 303868769 492704217 592393493 847943195 947155111 612008628 984748877 681538359 973687750 581153981 585260051 31090266 650524665 491762384 930423295 196557060 263712320 389016936 510386600 725898750 902747629 976172119 994015502 404893536 865976434 792883875 881201323 644248679 795587303 531653534 570957683 816054171 939609356 142317114 262926690 576160393 736174929 543047227 820327378 997332307 999143195 787933284 918928815 57608715 693737302 531913141 875142563 489673375 605159504 984816614 999698281 95842143 99281895 839819710 845396246 161552066 980394709 225923713 830795159 908894699 914787311 772928458 844616175 367149903 943023040 622047906 660047315 51870607 443360714 65609568 326674498 574733233 905729768 617813462 735984757 665703302 716284667 473933687 501531294 650631732 724260793 497981143 969359278 582385329 800222562 204795431 534118476 153418635 171726109 453413701 750995594 922357189 931631073 695771997 814873377 908714497 941403246 629071749 817997582 107178152 562601993 402832728 669329955 406572697 855104436 428624132 584789565 830584072 936267068 930836000 990122794 400702627 594881934 409282362 878487834 902909509 924710806 415912899 941087579 952626280 967958617 518608478 549044360 785613340 858612665 145749202 161792726 951891482 967623715 811561133 967411871 154450859 386013871 390117975 658381019 126346831 208958651 113595082 447485823 641614385 675291952 424997871 512111939 348811861 382074838 90982651 796340475 838589248 925657157 612497091 944574885 584632070 622771059 591950742 916737418 228936811 410616368 65900469 422891610 943013671 963384444 67300756 633797063 673470532 976082245 203096621 725938965 117278250 658653808 631592754 677784579 735529095 814150113 202379143 970401966 589844244 843364016 747282615 923618543 719243324 878971640 260277651 342762427 213731971 267646704 303906175 950472867 785070075 873379784 149482429 673423044 444772850 658181539 810755871 835507357 971084527 999383048 483302716 566768340 723901884 894961387 19600934 996878993 508972888 794762555 8187548 293929963 339819255 387038335 9022156 160707827 655548820 914367687 714945394 772271808 927431532 982461606 918081140 953802957 571775498 987504107 920295848 983182345 889221149 908259820 56552503 650473744 146430584 978295939 831363854 833768745 72518829 763889576 93433389 289371592 147730703 577864268 666851822 734210360 911243832 947263642 560232412 579760802 262443857 766153741 950691834 999008392 43100888 749745963 747023235 754027621 62731090 253704637 363981073 709366002 412834104 766171134 955220792 981469463 831554529 865134550 401193669 431841637 488145648 760347507 557670080 744960639 896047244 962462261 964820064 991350347 12634763 432206008 56885181 486620300 93459613 732082239 446548248 687402997 304518665 846152632 418085304 624497023 746680801 851673329 15271787 296366073 6779400 59715727 127693069 960737037 860532342 865078367 322335882 450550148 973404481 998962045 265487997 620516297 658736406 825452422 702343306 951186282 918268133 949159961 147672097 806109883 781189546 933880009 112166364 684438497 784491624 881977639 941348035 980299510 266380983 321039738 14641441 945015934 840701557 996998865 17240913 758047320 125486010 958861565 952105125 992211384 292770784 793740376 241062753 314393753 399974599 912026313 494950289 641540909 112940956 206762130 393157291 801349923 880074176 989711863 894994795 993125167 109557393 666561466 354202861 384569347 389432376 655153849 99081987 909051927 847682447 865472297 472411976 677863164 218759209 745603090 683189785 793552542 567048603 759817826 68169584 505045395 275485453 961781219 549966221 669045923 595099556 889213235 659519617 912638020 708800651 793514953 774337106 826307859 928961323 997372162 227225719 780995376 311172327 620157360 455462984 949595786 777707351 947049332 510354510 720231675 714436168 817604763 380743139 520891923 213367636 897023608 802122661 808190403 749801554 946024054 657168375 673725373 123985398 920264854 683824177 690954238 630780093 847623600 810883605 974250763 429602562 949848012 613502608 766417603 751621843 849771776 798667351 903340707 285387238 966384775 272561596 553523298 148180395 799252809 556650491 783151943 429929222 588344452 502575292 869846385 257889532 569229441 705280068 938479612 122798702 805437512 641616240 904851251 738302693 834520275 99043433 236184127 695341278 893231818 572460434 800871793 267364407 416393077 178255325 619239838 923945355 982103376 533477475 834666821 27424392 632435579 632058538 943507424 279487495 666852357 695007365 755898373 162612373 871491741 826859667 998691976 269100037 448698488 684530392 686248180 250481119 266735985 690545437 868896370 885402049 953815867 364979485 553227856 774842506 963118177 904826865 949267510 535456747 806253513 339814148 750598033 648165799 699494133 56371711 745651080 250589992 703554991 692618627 841537786 230337958 386587006 936809541 973013146 987363784 997740885 754166767 990443240 878616268 892840726 938580548 948104930 569241465 570633570 949965374 991419374 194724035 464438688 621501607 848336535 404960378 766885805 499797419 970288789 843537904 899684299 804365276 932458300 347124165 686918970 668320504 676248367 943891907 946327304 284956226 436454086 414649150 610623188 376755739 426979869 212039241 775702810 73857144 989153103 200290060 641786355 413698945 988483172 372972986 384470122 466216292 875761034 754048933 953596477 538471185 688048384 48507456 152766864 838790057 947298959 169483355 404699359 916252955 942564229 96040345 448574271 861589204 978193432 859999966 874771488 703535793 835830639 206114771 335439510 247785421 285917143 30280652 807179255 555947444 570730986 820137400 885186404 470654788 507259264 89060839 789533096 675556821 993966575 5053727 548648059 617980952 944294068 564756636 937054161 557610445 968811760 11076376 628312846 298207522 422226883 624493814 628785075 605611069 796626778 531926302 645052459 533709383 776310142 102407657 710401001 848637261 904387167 789261595 881186408 496614834 648561739 225383544 815784648 409701357 487963423 907306756 912232197 974872485 998663713 195218854 815664722 299695726 808687755 519449393 563537656 71333344 806774023 822247811 971925109 62926910 636566288 384160606 764029168 84185435 127955065 777773971 888017743 475821160 852848192 778644593 837601191 242219221 967791741 592898166 614857562 881327781 980515744 819906580 959092148 669909070 671876144 386910154 495274912 253165820 491096937 486729773 769405983 613707851 870343793 289552101 580920136 346079036 650110611 656116833 741400234 826149484 837413100 256483780 690272150 414850908 702651899 999844293 999914816 201968706 576831789 256509667 406463308 480168070 811413052 861119823 998399555 37255990 676287289 618299630 763410939 452799144 751614047 576920396 968929934 901600553 928148138 938796066 968567357 385443987 823061227 946010950 954450288 461800730 624606758 834101240 975232978 103712924 860955380 24333894 873265502 23420843 494335920 659765331 831039643 602297918 772423614 686196475 941166285 954633750 965511253 774923070 952036091 332078985 767428127 335909142 746185585 243822985 249229202 687454429 951824035 144773707 899223320 743682786 793953452 592455220 984552008 451320474 466735390 903885525 965961156 255340443 497035223 555708682 813333690 93815476 675666064 435448636 871683032 672116756 956494382 34105981 356113500 864446448 971999482 482962730 939328347 3857343 837018878 508782860 636874602 461227633 721524602 316318912 617045687 793042042 918220027 226484615 822212462 725675489 931614024 276530272 530265699 512053599 950152149 970934974 995163422 914693112 953214775 792659329 991411831 172880655 786216510 934094178 963852940 744924666 990026852 18080314 558748847 614861463 953521708 499251655 913389950 113286238 517260366 982068552 985587370 543549312 891404127 661314147 733453316 72386154 811260735 275596765 834245168 920844093 934503299 172763291 972585699 422416944 882386658 119270935 315940946 647279391 746258980 526722513 548854453 339236751 489008253 217103838 473497593 537455279 962647439 822962434 992252012 434173995 838048924 526493962 622788573 997188031 999185825 608100155 719496528 429643114 776659953 4617543 782551376 996608137 998634973 562488980 941097482 455249398 618903841 382497721 459284939 238593651 793835573 489691893 560431136 329268637 645657287 280305256 773580710 311017174 761909415 507266346 778831653 122775462 489274373 239655683 434270296 716717016 981279355 491692538 737987841 726719161 875724022 465603100 938610651 913867348 988085830 683866147 748834957 248107074 559617979 639058252 880799484 662148966 882643745 73418518 390819356 615816279 896989243 922879254 964218382 953597860 986480625 739359881 877547405 927862531 976174444 215885289 542325160 682272434 766756086 748358410 958567932 560181429 630481072 867907162 941128084 488215885 821454972 104584746 532042392 757299863 883203429 483545187 903784443 265409289 509822480 64074589 802010029 985403062 993223064 659109134 778863616 548335209 635073950 852492346 972212476 805722713 931242588 207083158 220840310 869185743 940141787 122845981 766537230 236100396 376217532 393026748 827842760 420116328 447330559 458066635 739076703 125304235 428108578 345363088 880495790 615005491 761221298 736813880 993505780 188540616 348674265 416620232 853100078 82189199 903361166 689568680 991170262 67250349 272981807 244202279 605778849 948801466 976749921 746036353 934192214 336356347 752404411 481982786 687975692 311927050 594063752 776219807 791126966 151048968 350675588 545866543 972040584 648327100 776456523 983763287 990178674 694519983 831075697 917832601 934167750 449007398 638454757 659792335 689425575 68263453 701872404 414701246 559323059 752494241 820646809 865583826 986831852 8770759 153390797 934581845 947219800 199028387 263918580 734713387 943819368 563862883 713622323 622431453 740445896 93734869 471996798 254006582 768991143 100456925 248098557 168339918 392429514 325381387 829705131 18524314 85746493 923589597 951299868 471713817 765050178 267757569 324982596 870531311 946008954 757551459 942461582 88258927 346215400 815629859 981438838 65195298 750305363 130768739 878858449 677679280 728844481 222964191 912201035 830968918 992325075 248314828 922752435 219653332 840424843 154174062 740181895 828289561 871607209 688495825 775653848 784010765 961545289 894588840 971464255 530925846 727374806 291676207 983460607 757725226 932269538 193213262 489589690 218685999 344175541 429489274 641203950 566442457 746733347 146924119 573757368 512212725 881072389 699616939 921742792 429729800 671947912 514410914 541570655 790562359 862626942 184206833 685840300 212551651 812413928 426459815 975924881 293885772 385050918 79404871 952463667 879445358 953991919 486499836 784344321 315053089 818276655 102886500 880542554 241190013 516231209 834075716 996228280 693451498 995039344 830693617 983782386 666205501 721983787 429599931 439712586 794003280 810968914 847319444 854036893 307060518 726688736 733297392 860393366 446964350 701355676 84038377 852505829 69351271 652314646 287514642 629739256 412035139 911431700 134967594 415821579 932743050 958208642 377398929 670280996 306712745 686932609 684467748 881740997 200737925 512645911 694733746 912487020 488899472 853431811 84967987 370323156 427158714 542727182 212355535 781539092 28629433 744133883 192195380 749686854 408990502 506322139 399254824 515476128 638070020 917578090 443697053 902378928 999267503 999299564 943782233 954200239 176810404 583765845 197915248 849207611 259087959 565342575 356519801 656544126 80309844 740025702 958148938 999155530 870310870 948379706 188222176 203510316 460282316 839738541 664970663 878931820 141186169 571484190 574226323 831408313 909712580 939795683 443772891 641764778 125935922 230979242 286913414 602495126 880828456 908068139 451156529 911122502 854027286 898082240 679063487 743804729 384537438 944517823 816327274 964075248 659446382 747159540 354649897 365242212 387405186 869076934 881298962 890493362 395954030 581460781 48057051 471183320 831671949 858924168 888271248 911423114 774464152 841744321 223353720 967159096 906248501 924295211 879509399 895484969 892436628 961143728 858553064 860566628 528631199 557887344 504310255 659889101 530764282 605534630 684326239 914774446 288438584 363176945 79631803 625204721 326868936 860929605 400024290 787911786 404393533 808102706 399339266 403892790 326285177 774282494 208559070 413577917 691983527 790325465 486532483 530119142 56372845 182812429 770656332 801707432 30512572 390491656 965919918 966094530 142371699 764374704 570217948 613465043 430507431 940980236 713598425 771575118 4466246 58326314 843647291 945389313 77742269 784001908 285791245 525279050 141483239 412399116 62625841 870122616 33902649 846739350 44803336 863301580 624447044 768108651 867555140 998487645 617840827 775860241 693739219 806980595 647646241 748978592 493807400 868457256 988070597 994906923 933164494 982795429 954324484 978711461 399474405 658123659 315728235 694729588 197714137 300695502 94508856 562634994 516713768 894989320 494845261 565804365 554817905 805204244 859770259 965443537 548857489 799360935 289348318 954000422 398048179 729909872 324532298 609063196 315170675 625228824 444502014 959545163 552869644 590215706 486785299 574286075 491810519 976995469 545657928 749670637 895622532 953476159 157990675 943452469 877086109 976301160 584120978 635081271 729380454 800736887 523333532 965743700 343217422 887912352 536911284 807758516 635159084 784472316 216562344 805269837 146850090 186238397 69000462 806704512 207138371 400890842 889079730 996774434 481164491 588907035 473256097 601588388 228046412 793362678 578671309 744676197 871605239 980604852 412041466 917204874 253679101 569394749 53774185 255948512 698564681 797522638 563554265 708907999 27246172 758627936 477939947 498271748 582185896 954107287 82822651 457656966 146774712 155669909 469862370 787121953 454151779 773048678 142802355 655178063 25828614 967279242 423379096 432643062 787843633 933776073 345977494 711217227 641577097 742868328 751204675 785060278 732174873 888959046 971500911 992151556 71738571 782720450 335146370 916634117 240886724 617389984 385255417 953934822 446547561 842249536 402928606 768489248 353073475 563860106 233674485 500062135 485493662 710557302 668900113 835582994 240353679 563625364 338544499 715207043 750061587 774484715 749695085 985592725 783634468 955243163 164974049 416549137 502042158 998931904 668976159 951185426 189997178 409791307 1281576 391455242 929960501 930830317 442584363 663263916 54249416 746165299 42604844 876390362 834725587 981937770 331409855 461348516 281347708 492135769 810693606 897464235 364159713 925552363 164730593 692438393 809513297 980732632 957812448 999329109 777416094 915768465 928721411 930151057 873570572 923708919 17774707 472316485 135015220 718123799 840076651 842928548 480742675 613154750 687308353 929542002 29017849 77069980 429779302 913048573 767237254 915690796 28152827 758249660 671790675 968900594 540419335 756417377 898369823 972465785 305752063 878453510 137188326 365784396 721699110 799789680 377158269 647291480 821759555 885053545 598349361 692277808 725561197 823431604 400627133 853755432 354109339 713272063 5230941 45463797 638992342 776627583 617516049 861584324 978629880 979348278 16741615 847779383 304367363 799365759 567286054 595053577 560257446 839211482 320525524 712961151 222954522 499209591 718817506 760049737 793689261 854394066 798035558 951426913 422297383 470545798 91902882 510469647 298266464 809169479 196015727 308575250 757696673 810460315 973321544 996049431 159065827 170255221 672234911 679983726 806500826 936992930 650039876 736896691 507498635 611019143 970728517 979363320 784663228 925578395 550769692 801674266 587495528 881304158 603772604 852846304 321494688 432174463 756173222 983955404 654074626 840979407 175034911 416195013 666797949 988904493 171313554 410484244 235090706 450809601 365078849 447380363 32348578 333930653 494670500 543637577 519267286 710059190 173188737 845283541 724505559 990571795 252481321 882007931 150832460 543810355 41972543 864031032 346561013 787819252 444497821 470723240 549639323 787930209 283994274 482466410 598872923 944443128 434465835 669868783 124509575 645708579 336714946 947989176 336683269 834878092 507066334 787663829 863988920 949775962 837601226 933114085 181797229 327126603 663283828 786307876 130458575 964042871 441944357 876507717 610922071 936393572 306592192 714440843 468919679 474950159 75457436 133978215 994897866 996022398 651971833 926020713 592658918 990829791 991459589 991528383 576954316 706957523 653471527 840210532 172144273 972489568 429969180 652596497 271095879 568861649 802416532 872806687 530955147 541339365 931048188 942877162 44820590 989558396 610931034 716128095 51942653 205023781 689605389 919873052 998447481 999566203 649270489 853548666 910830793 938176305 357995161 994688682 205422671 749831387 356227681 478508387 847327473 994869268 886283263 944030836 979295474 996808580 954485697 963480794 202967680 592839693 203480449 865352683 709938568 745376437 419973470 595441581 267277327 766189432 284482092 636174833 165840352 410575332 989182902 991414905 827461189 903088372 129484247 180690379 106091362 409968044 678088527 708369639 291097349 498961936 866672847 994007089 483547556 653775361 254547961 337549235 107586724 703852194 849287796 905405348 34015786 261682598 718447196 853452275 939193942 980574166 90123332 292433774 117184406 307184828 996729285 997864706 802923322 924092810 193154073 493411631 777131070 985980189 860914457 913491821 916273544 929840597 446065041 693360841 64975293 855647756 170238188 773028211 268940213 772205201 910137760 933242722 733321894 807046733 614786696 926031289 197042391 542800082 132847675 641637278 878730894 980115006 235231213 249152436 545469177 753795737 957413484 971877148 484324237 781507708 391778520 868980412 786032375 795329441 558073115 934658651 247051448 449974633 549926315 644594183 790600257 944415303 455516518 826397504 252697146 963508826 253293959 658996948 524134160 831024626 582550984 681510185 192799901 684520432 961264115 999214277 554722237 586136230 571966260 758570308 785669713 882816419 337464496 650450763 610425095 749352775 494832943 668024459 181795370 529968908 17099091 54036568 855144602 897056932 381937091 657316562 315102879 663500771 466337021 839250834 760332001 941383113 957125481 963046373 860498887 972795467 518325658 763869808 116574042 749523950 766434834 848650723 569386322 911139015 892232056 967802287 238408981 806852889 83688072 697567593 304969661 500494443 20634921 420518666 88160567 481529833 425509405 889147651 481940267 689893802 910657211 935915430 831364109 916669377 855960339 935679737 602762133 648521821 374737759 767750864 69973099 424607174 664976840 669605003 115532508 839391268 272481510 332488921 124401372 631236554 61678347 705414492 670514345 778471217 627170216 839762244 41942318 311729001 236715917 591927221 416573401 850323395 310426134 708033026 249819879 476192448 479567445 815333724 202094084 705604337 311241075 818786196 660739259 890064528 660997841 714580910 797856643 815113273 294682529 502171302 989435519 992525220 911581028 969061074 130804568 210805723 987175762 995975963 672294235 870899166 768918545 878672542 318179689 466718019 633907728 810475550 756378676 886234384 981882924 983940336 878385267 983283987 85242758 124429291 777005243 823265110 250735879 712524184 691435752 811275489 709644205 985919840 481553474 612058775 632218447 859259525 993120461 999778637 888461425 914894832 836056840 942348016 369590982 610760117 371921539 943991132 596773118 598311196 262048383 975726982 891422278 985166943 834909460 869448683 622255464 656639765 680788967 735165502 996381899 998127383 927691185 988440727 147332797 252227764 550966353 667374183 219437276 744731057 980655737 997646869 960645010 972721850 792046691 893489768 521494539 619603355 977681648 986518301 620472435 624184030 641669725 807346892 81752117 992999183 175008079 768249948 542492310 931395348 6817831 928111512 169524827 785490482 450164580 791217164 125924450 338448807 142604359 719198131 853243811 932777495 5078708 848047197 86898444 975965272 458425582 948668251 616539340 648814695 233889757 740780171 890475818 976466161 779664530 865648137 748345809 973120364 459709337 889763826 422444366 716316691 180277547 625053003 48973877 518953754 881068276 946496098 672447498 876080348 304869478 896287360 88363489 580637133 197459302 575504439 449911738 979807413 923830560 945302096 959106075 984013443 944332755 944917593 292616126 345424018 617350249 964033472 260547104 982577770 664200282 810622646 347740468 834010343 790776664 889357946 314818016 734968153 130863136 178814609 921152268 980924173 65753880 954503432 808354891 975096722 567702191 692609442 551225000 855951462 6798329 651295436 855897757 890871863 530871883 641576066 679887377 927936630 265931283 791106380 808351131 868187066 457926979 645751920 95752669 296031048 477636572 811831230 109526051 432517583 874037023 955690837 797764358 840742520 949515738 971253745 309364932 945928472 916168620 978170332 79903656 203749712 343998323 551659610 386825308 675351389 397213310 514243539 385359016 720695138 281678287 593290296 643882457 798034783 662650760 855793832 662759716 797140843 928399338 999196977 527774240 634261469 741739946 968360483 536156614 891702799 177340163 887913311 928575300 984148245 614503681 914783053 599767833 992973498 642014477 762215162 571128808 652295922 608172408 670758637 294789076 682040013 858667473 875814719 867894568 966158886 675780821 855057267 585208448 636762678 890107539 993818246 694185051 992589129 270093824 931000167 209227590 414734220 72317482 841670222 101429890 483297220 918133514 980064249 66585056 303540192 148158250 946609776 869581522 990277110 48693245 613213734 149314232 661126110 497506529 622919851 101932451 859723448 642854294 943809350 973747728 981632608 291774092 607191799 752780336 753304972 246030975 858648800 789880836 973053982 98163186 527469191 723108084 782926335 353672586 470930143 459478322 972768021 515400717 709821113 339232560 351761954 420111190 948424648 278327072 653119501 456089088 539166461 613695092 659099548 166167611 791135547 671593881 739098197 910135549 974640244 966381033 972934663 71330378 648253220 486884894 729254849 405319474 537165553 663205345 800332982 116181490 263608206 308104179 404397495 939100754 952482916 667873717 861121774 122187847 135978616 348767323 784571590 351959586 608482085 366665980 992020020 609351620 748482413 848548308 953216539 329972447 935934705 376993551 927077681 986605229 986950055 61671289 483314618 41037303 636074896 807192438 884429744 190274265 695813239 775805113 987007338 896836938 933769513 749151890 972864135 202927267 832484686 961122705 966375242 179826695 334418542 370867347 481721895 208774364 829580134 306912597 324650022 953876247 955358614 342982374 796588710 673966481 798036907 788514042 878316607 662435126 686512669 684579623 878551674 772342364 911346615 13610344 257852565 819566365 944148902 401185271 435707672 353660018 407857917 900373625 930835846 813874564 867120014 116182672 912062860 285791622 887090570 47775456 121011679 202543286 349432219 432383405 993141419 594038426 708908557 8524962 664738399 587451482 611547256 533190702 676546808 363480208 952382768 720353370 895018933 451118196 936392159 388606864 580213010 628650944 648569874 635650381 874481075 203069554 703600090 172265726 982415038 952088560 987706953 378163087 623764842 337490013 754454577 486801089 993265247 408154057 649936157 596086099 753115620 960095490 984303473 83013620 642087414 587201963 687527227 698038051 925433467 91584782 622315465 670685590 928925684 485556176 757058524 963840525 986535637 190183205 318199335 896591984 906429544 172389182 830762108 71731510 805728328 348263810 839429341 217251480 223630951 184097313 443334770 757889251 877347569 42310570 345353028 32472251 878557964 56233282 918592863 680459865 758086844 927626312 988275074 358546344 896710133 565901021 591585098 234025430 845638245 362438146 379619221 247120271 708146890 630716546 891351065 404473973 780757877 222949775 504530059 815399935 927523756 963421734 976138903 266724678 654695072 155276045 476604722 27229603 942364713 872130032 909214716 511824676 891445549 214543248 801015023 221096887 308456238 681489757 725925852 184271828 813204688 842582989 914392909 475636990 565001041 523250572 963276995 654680538 862168299 471355495 749460758 106443509 421996520 548523279 719677340 258274093 335346038 740282738 783438289 7595339 876612964 977516614 992568253 522142348 745622870 452049490 850062197 672613513 780129801 6956806 639332731 7516899 743500583 777111466 971008953 884621007 950824515 158021223 976398055 401057195 654507775 485886922 831018911 454173823 848486948 736824124 964957759 262530650 401027529 230337515 602133745 808320905 982532740 493692036 622962998 605939368 707540339 191000095 306975062 697406907 865225723 522023707 544324447 489959626 519654789 100485878 863058046 262325964 987500971 763915153 999432687 368292918 779317242 117896908 538563531 531233849 560464390 615887768 654799222 889293085 892766731 907655553 965470456 564877279 825692885 317190411 352036714 64480376 352196982 219366299 283740105 437266090 466811615 841663824 850489659 357088054 748038126 69732363 174644693 752488115 998807413 25865118 184855928 316477507 390616107 449329760 646434460 662166792 758451951 82974663 400354255 390395567 957460712 563191816 779886673 775254506 815628490 824414288 954143236 572783497 774534845 405491953 728754213 347111169 408428110 293282300 485960199 694417506 820660162 882731149 975696601 461852307 920808660 744336153 845544723 620600901 812616199 522611041 666383056 796898023 838884883 643488023 860190579 299862953 638792187 322489982 912097689 514668278 663462983 435369145 743101157 367409888 497478234 26670387 994681520 691226039 743737942 241081081 570388345 248401926 804347867 291402657 322855943 27546313 261505872 170866555 403288292 273861682 577734686 519920361 707527557 100794337 805791006 199365920 256211614 519777484 978177027 651653079 914552559 186761538 984090559 290468145 815482243 61019738 756670045 633546302 737868972 206665114 383951015 449002299 638125934 397807066 420028336 861187562 965581644 870212512 898439379 540618131 763555265 336049259 879942821 481012267 567779578 342144577 831923336 218419365 693661308 288798530 430330290 121765377 253951102 770517650 792354582 569592706 596036442 434820345 787576126 145357358 882805033 802242076 830650182 746870028 772359357 852821655 948095710 728023748 764196375 480320308 803063741 673956463 946068403 159429573 666810138 616193649 894978323 629549096 847216869 364394006 955408291 940745288 966762465 293840855 880344804 288637014 361710756 957681709 975202868 35430727 550938429 286522105 555571444 51308474 942552879 457085499 752986641 826394489 933214506 911927464 973380629 669146364 878303583 520317148 786556373 129920068 180273028 878616989 957345682 557203162 801442206 773540270 882505312 899573042 910923915 922760122 962976736 474687575 974257047 930839108 983267502 692738423 707786721 285905722 735660811 612846400 854196659 108287269 836779035 452662463 513720269 378353391 575058323 709679108 849541640 416828528 761167911 160886716 711778698 995615718 997378333 291736715 590884462 519387088 954373751 118281532 676703046 14640134 346512458 396658692 733645176 350771277 794918217 779434055 982644085 391998450 565310498 935036999 974434878 95066229 681698540 402522236 830299347 795428678 860513913 714543753 872039596 650180871 716138235 981284219 989296022 340558013 885395835 53778753 757094944 243928791 421507596 759709847 919504881 584569085 935335992 800807386 943622821 429843044 718853061 1005661 780569905 852499613 935146412 743930024 806812628 508596687 972462344 859539947 868305829 52006949 439424589 440061012 683971315 91878583 740713944 907104769 926085659 846306762 965839086 315771566 663495518 231114680 430236233 575869072 913620457 234555926 964735916 807873953 962704221 490058993 518882204 518766929 950137065 822433960 887151660 61163070 245866389 399704380 954388882 251688913 440956103 51285282 837789898 494079370 859173360 439002384 809721917 465705542 887209249 157579436 735628478 695139274 769288825 965467905 998138878 965578971 999161506 919833528 942815869 111172590 229294675 187495402 249088490 282957106 657496590 341832750 580856567 932694095 981947770 197666008 486223779 214457652 574032636 894440700 950974347 200165060 550857017 94992438 815635255 278187839 788911891 319328235 871553253 825089119 906313290 222047835 840662064 232363628 800418136 336814949 768825846 75036864 932097829 26187583 891853965 224353846 566176661 589569725 904176460 178386912 276167586 979281873 998613254 25173750 715736533 639809504 840625391 292541967 767762985 478388878 675616988 165224570 608126746 464388950 713781653 384690896 413637698 990163922 991924687 269770445 720877223 461772833 870251966 7776480 788938562 590226436 990713502 493403375 917264678 352489331 479119451 292811685 572275674 121338876 668373139 423514531 976573083 608122831 652312298 397772318 675605732 381812417 498660568 603460 179123106 364778706 774739958 945627585 963619159 221658875 954966845 521387054 866818977 258192333 269962400 808357888 814467691 251625367 896806076 421878090 786041044 611189404 940406042 246463857 983500634 35694287 791385851 405941955 537604023 501585977 829731925 563757604 919565584 764667136 932693905 869579966 994217341 355959529 750380395 266971842 947559684 555509005 697625547 103546725 172312974 753665031 882467995 190169126 697700645 963119488 972964029 376696984 849243233 542097075 573061877 730058728 756057337 150859886 605067367 172655357 422288607 34988792 67671693 349664917 943681546 824913993 882322913 606537705 861334199 337816775 434691321 999679307 999799092 755922099 998652090 380217611 885098888 803681174 919350782 108482018 918430219 527544539 811479205 873844328 965269758 620107545 938442070 433131252 499971663 497478515 848105918 188905464 534779078 755752516 953017006 71578633 661983144 197089699 809423463 406161603 733828437 511457187 833445519 162053889 896383528 899665149 971977723 426160843 934720173 163182632 633753386 209201991 368435115 325479392 640710783 160005621 287710866 371704911 836588096 291915243 649508864 975333893 977894402 242187447 538480893 978677751 996542411 257628739 544758377 815411734 849790574 842958387 947076491 809930260 892473743 2671932 632257974 144024912 718207829 928391025 954674272 778449034 965195546 61149016 380129578 199162753 387769969 53243521 362400392 882346627 947511554 803543574 835489434 386160142 627241222 276744180 465199881 940867631 963894325 434185154 888148413 557671157 826328208 893765462 911313971 105114847 560176493 11152232 570866918 982620348 984620798 607859370 961558633 524714551 694233754 511746208 983068715 711353179 916042154 525675754 937988170 850271681 864516779 342911911 814542069 325067794 480108615 884542602 958830327 224067673 747927090 577184100 797377035 283628900 827330294 705721105 925459559 436661737 774390475 471344100 615970564 669192672 967347400 167778539 367986115 600478453 833922968 904847162 910342452 137791973 803833094 352946446 996582328 680978820 757899992 424846214 993763487 794832309 857938928 251433715 544346395 657166314 897443854 426835146 646293796 28341155 382516623 116701886 424262180 188967759 952654782 114373510 714944858 405274055 878198760 507586264 795202737 973104903 976898297 633660297 649647091 829501262 874325239 333357107 650275482 769938257 925834286 5147628 259405832 51234289 218848659 358656604 900773537 528833821 729141425 209410584 213302411 914935169 951824212 641977102 682069794 154824564 698813896 483428635 483576064 655413772 659748825 974490458 997804974 568582079 714115654 245392141 637854162 795839368 995643724 500815398 535214532 945416710 960122718 612310294 869118474 41451096 549438128 104624007 158093678 626928810 898390288 442872995 926185180 268776549 290667847 288535502 576319262 452013883 519822085 88879486 341214684 381689632 464187475 372068544 936341435 56894704 721936077 965096524 989433918 747034059 908499440 58855748 334459430 871149125 938334547 841801960 897514579 914055719 949964941 150268551 556139147 604367702 856644891 392789434 674922571 296056330 512899386 514686401 682781272 768041747 806269673 904232221 945558797 126940553 229745446 892229518 910693967 142069555 754927995 560615671 764509640 313015784 786889756 197816665 961291666 298160327 652686265 600612777 974461296 395983280 642026592 667462645 779411655 182987456 196738003 238717600 984026048 70104405 206277585 731351919 893749897 839468559 932397130 52947665 443243690 192136559 835081925 679088668 719794692 23379180 240424177 950526975 970247135 62609803 543216526 528078090 607644338 721263601 992875659 675419860 951956224 516060995 754335157 70919472 217161104 971293980 999971397 237636884 742437069 813495148 975542288 45640546 409418308 832853641 865819697 873620270 936797267 852864181 919540611 600223877 968961870 796102793 889035659 35486371 684289324 662852335 696315925 729552224 747998085 128404529 993351971 760168622 797966542 506848607 516177353 620041917 832765438 206955691 837725399 111460792 368395919 599145770 642327875 816788242 875904611 324155831 375046669 748799226 789437342 550811686 565893591 802468636 872873744 360889491 800904067 146788764 917314466 608723317 666132018 657955925 874089905 745584326 998724490 845067207 909243894 872052169 918853995 770096472 881894659 426874270 567411491 943220309 968250799 780896506 815306233 953670049 991960775 623197823 670353743 870104492 870286592 310010333 562991238 694441632 881749092 335562386 531009887 932485028 946955071 724299300 985102854 412488015 657721353 395733935 501009159 396225409 554167974 681735966 931454926 167835816 869933810 578123604 615890780 500021195 932083359 972013943 984562547 310194486 724681426 519252528 776097044 58531636 889990243 234937365 300734765 651263629 776596123 432708755 464537448 935689352 971614168 199022805 696780169 480395581 602601645 817584054 993767458 912990156 985846049 58636235 987159427 466973817 850182299 409279498 819076902 350410455 690279216 609867703 726055700 246476665 957065869 256200468 990490528 468889473 592597919 794051081 892885948 39625946 449424117 679487436 920440152 998867699 999250581 59517368 649898400 395682713 751609774 622696377 722798692 28277536 638897787 997865803 998727130 139644057 293027210 722721665 978103238 302767000 469189486 917812383 956935517 304479591 578558070 894051315 922602497 657869452 970116162 799216072 972217885 813731562 934298218 815768523 984864423 345722588 420154039 808478938 889749493 812420672 841151455 90281897 158446242 235012943 489156614 883908128 999606101 229674227 634552533 193849533 626499293 627687774 968705457 905564428 965970204 339700021 861393763 678075996 706648565 327337771 578984236 358207908 591442571 319406919 442455479 816933488 988563637 476902538 546439798 474616273 812649507 198587593 529529933 105773828 542776005 420694924 490634285 487669066 700968795 134178731 926759383 763336688 828670327 66565087 890715907 806657091 880950927 61298449 470267532 780196440 930739980 338603771 794178856 249365516 767755549 8430832 32310102 123356496 357150807 555764971 966293232 914043091 938202172 700589979 846159687 554707791 925397628 716261731 877127324 139178417 182193340 693151397 782546252 673246471 800005704 283297708 384687520 85882086 278208342 64699931 718512808 201128416 212504230 551051635 623149824 816016773 939627864 309575251 728879381 506225951 604642000 800589285 939650420 714160786 813531814 118275156 218524099 511208257 654488206 943714240 968270026 902255499 995716129 493660656 782595741 718339442 966513452 874131246 976817882 159469483 365253115 772973430 789879348 290998768 440152021 871224470 938678751 750285136 783240778 804708000 819310537 742814392 988881422 168933967 517593321 399901979 442485107 472959243 741796389 4990234 314631482 117095105 538596896 585574794 680308012 510365379 832437814 751503535 968952257 614342310 824423647 196828865 383182313 196972827 269580622 698406524 753737567 419074132 585985700 514151199 998693680 232366601 655747490 920978222 944685054 255067086 424897070 150809008 308312718 884109938 923876443 685301662 975810884 108690151 217580359 628019325 871072457 697303754 847974119 615012698 895467784 662321054 810693770 384865328 805963898 989625870 991706465 879056576 896968006 475253989 760655830 495868183 887790542 999374002 999454090 994927315 999215691 290620234 297306132 710100394 894857442 384756525 433592676 163567060 240903517 160832905 196612380 937948296 969034820 944754422 978757408 480512475 581801443 8020156 505873455 919204480 948567832 188754075 448586817 371082347 905780415 545607547 903813042 707640792 798455892 363083815 499492096 470445524 750475535 604252631 648854330 492623529 926914829 739556411 778526303 643683616 888460119 634321791 699773507 670220875 767048579 694499034 779042571 403344134 918470986 329687246 634481718 552806074 694285225 149787967 672466223 693840819 949985092 96593053 148209850 128495871 936487104 394379680 439640887 94412624 847562408 589752382 603537953 952199360 965262404 362145324 393909177 676643146 902133478 215566207 452510085 139657261 986660996 877810982 909553556 979055775 988017018 171592937 275614940 357713046 370393086 20872322 497350933 576305996 808052567 921148939 995400254 977406599 986384684 256368421 566027267 619690308 873137420 954616477 986976688 80526913 865808444 506350131 553975404 852134426 877590876 526530774 638910690 633159120 660835711 851077751 913556681 872281740 944595241 941599899 951407384 168257628 494408054 385757960 519345198 158611827 994039353 52740118 619685201 93430909 888115121 713164755 713996194 647098735 884853145 574108550 912528159 234880200 996047338 47776915 668706685 878676065 921986939 373936767 379488706 174767662 409406246 478233309 938367453 736933202 778309972 586418815 841244699 666785871 690090433 718640153 894749500 308726506 637461528 228671793 678168603 877657466 994827259 656049264 882924511 927525935 931860091 914636761 958287599 176514070 606067651 651494286 973072983 89136284 937543307 662052381 828570902 17996926 462816402 681123622 970519922 754909318 882256679 654806066 898880797 73485657 113530096 134388014 588730759 169238319 691312984 339603227 724624600 350275687 615603383 70588160 413739217 355049433 733722935 656073177 680873241 859925912 965946948 254466922 814833268 29966938 453703767 295716133 573025447 77471851 380756138 700771112 706494421 255534369 463848815 612325523 914635336 507883906 547259602 841343725 880900395 733876857 932943672 766274487 876724948 655972726 925806073 53244402 370326272 893925287 918333931 116801974 461528791 162855308 992153265 809126695 910325954 126553050 538893745 864006526 938870328 287062637 655939995 847948993 940335919 191030698 692807280 175525478 203355847 399571818 833549664 148823387 634364789 982186750 989812192 942504971 974548448 885990472 950542398 22091553 57574633 146875183 187807846 991797941 995705634 33339514 763043878 697192139 940583452 105666109 634914359 66835837 360500702 651548490 956012522 782109818 985009019 372843454 604416796 743414404 908858095 995561604 997709477 543463834 639764816 65271021 405686735 885154692 958052375 93009998 431010666 846277175 993519492 456388383 604045020 324667790 504289589 380731721 768667353 145161184 650519041 195930223 690846743 635568490 994366963 351845075 581921397 710409132 865901740 153231201 919895723 368199576 665193650 779000932 956011026 442300396 510738098 500189994 866333119 683121557 997815176 850556639 873124148 730619484 738019214 199094803 299883230 142672426 782754983 437568301 842671293 310195995 470505053 589008126 896426560 248359209 636347115 92841931 135136300 208408842 808989988 800638534 812583783 712862972 844701628 203839313 881975935 563698743 566065830 181728044 404358875 67091313 400819013 852127539 974442410 877310657 989253595 915522572 986371971 804901271 911076884 784862312 872348150 830979793 993905786 289301099 578022974 874638546 937727347 671075752 911443171 965690189 998279586 720113431 816387206 32719665 882214971 698801540 795035884 717427144 923286868 617830364 770979061 700165912 809711702 625022242 751688811 948993684 969545125 516036148 780577228 891807586 908136171 608507122 909521142 31776757 998516099 953682435 956900587 275352982 338233080 753021229 827447518 485266237 521111607 318685036 508259673 458450681 807547507 898682923 900710984 329952977 428074817 51611037 586800129 686578610 807541323 147274088 665700574 891357852 960238074 938318401 991404541 664952472 916274601 706608089 859489927 902309406 960367027 75144937 520990217 933981592 973716796 127047286 672004007 686156709 698362717 868197048 929477394 203307119 306865239 87482496 610661159 888339280 969987144 745637396 813966188 881773894 938223009 961858315 967539111 897166455 994851624 983884486 990762384 310974801 980299981 232041309 373428025 133959355 529219149 782108340 818381328 669119823 801379066 31338492 285049508 982030893 986019351 294457628 542134199 111131005 368980220 525517146 989549699 891219001 916556879 732002763 857634496 414692830 558405570 623257447 905267829 284720149 750900821 266380846 486477610 355919994 373334911 441371086 889102487 647289372 697611685 376572783 562975563 303601895 767424249 150388244 827488539 368973729 878221801 703921071 877793237 13540582 79134008 522157421 909858192 583666356 819491586 11676820 209637150 565450506 604943175 948030496 995005313 418546845 931674625 400490627 856752896 508833093 878893183 769266271 919639880 284768951 841891640 301708556 964041588 987564733 988944255 348858396 484197408 253452485 723201863 248347513 688146846 313609285 798369038 935567355 972843396 614328959 816931997 78858304 551502215 333709164 497604376 525850700 930733090 449253359 970337227 452521166 630371505 77051868 610624281 197039301 949777639 9070165 480802415 906913007 950763864 158141837 933529431 121637255 534476906 737033614 834605976 979370010 995843564 69316798 238114805 354686822 586546224 501925780 876797641 843105184 889851894 97959870 822237304 540654231 904367577 391777311 878578340 183830263 238355103 164524761 607594283 40759619 924449825 959970683 960288642 939988929 984802602 493419802 971664303 835204924 942142126 987516416 993392926 924255047 979486912 664571880 835032671 148926684 240676481 904080213 907996284 928989727 983699224 890087923 951168490 828354939 893905551 85991689 807486911 506578390 645860527 237754548 301381600 418822213 820577797 976510425 994381359 552875567 890255123 198660102 666262447 595338128 700824325 216491194 344538772 327678756 648965312 347712215 671286705 102873734 763126743 435948280 547999495 703185012 768853487 914603370 919751335 808742124 913622529 807960594 893492161 394314317 557408640 880380605 880400489 858638482 980820682 1551064 230506318 529781264 907380551 691068498 901857868 8811064 500953684 187954317 935889991 224802325 796203200 428878414 429788311 223263566 564056955 15304302 879402132 742392357 841404665 87344573 599914284 618983002 846524203 935909612 978117343 427685305 826726370 945567541 961033275 156242124 945288560 599619004 826128086 590303025 992623464 432899076 565390206 234638768 615744719 709798834 831156811 743350624 790626667 696503113 781217240 225748980 576230148 781076202 829123652 262309570 268747944 505171412 806687410 939458904 984696161 920405099 989756710 716297522 992555023 874919714 952249734 52232798 690791576 23015222 501838998 592333098 650925358 247213470 398595336 44539485 353391819 466946536 733385985 719618876 733272908 903494226 951960674 924093402 968078947 719852096 898389674 731418292 819564438 787709546 894731057 484517182 784138451 730440304 730690520 729899152 929970007 988154551 997678257 439349735 467456852 626384785 904226578 70563024 137651351 652244703 852012034 605879305 813634881 232823809 448518256 901402080 921668806 54759968 456333826 34946688 299030920 59835092 698527787 463948893 699536918 896432198 927843927 490095272 566288753 496897060 858621193 563702807 688942670 342950924 830314409 217705274 508280589 788049890 930064117 619389576 723126797 867094521 933112235 13637438 645220461 308205001 647445175 470382091 899369317 187299835 251876394 881161776 902448934 672090725 766701564 550981003 892814859 445571580 586922448 28818495 269768095 206388171 800936091 939812142 965382855 470543721 540501641 315358191 929804378 798586098 991732598 9082034 145227117 965528556 979942747 579787806 584912043 87253938 667584053 115178362 511573910 79081186 431286254 294062074 329154985 581574506 961094904 558467658 602993797 204587261 477306151 780231353 874325146 143582753 389446950 456803782 716927249 822403709 825794623 225386848 244912964 128733395 371124684 202367833 562886588 717016486 992668099 397210929 554769958 512501216 517588492 560470026 829099058 549752569 691608786 468951772 521397138 556806229 748380992 534209033 534331604 707124239 832539382 664828810 898610919 816892690 839775971 637376204 758953913 258590525 970878008 525781628 583280217 886229522 915000089 643994490 936073158 917875684 977631009 317826389 695172475 405494468 952607649 297996308 445316824 178045146 673241542 303278620 938182321 888078619 980634045 533455420 569344514 862667143 902910632 997015892 998834119 384173716 716872022 720247091 885372065 149651781 213610889 627808845 738497976 936959694 944338325 535087650 933848998 498231666 641085475 717878865 839517393 87705283 936296447 734376329 972453378 85801898 479301607 4343577 298739585 62181234 197465003 235909394 969797272 215031783 357957378 214431859 232304108 498163921 565843870 607358032 827853801 360489331 499798538 223479872 688700459 673125222 902992839 547241776 753712601 613445483 871516485 386612119 564528287 180672111 993512569 860517235 868205706 265402214 775620819 624608343 812855346 430261549 477953236 634738021 762527281 75312249 620001565 728228678 929393552 41554975 519187961 110968311 663628188 393154249 628058896 437506910 864798039 453452045 793082203 591661108 955615672 995839281 997321904 251660671 931235313 43382155 871760127 754050224 779277900 742012179 959316900 987130896 988462746 680936635 733239342 815152491 980553929 749829148 756171192 188986580 978653030 318966211 413043611 505691667 787381701 881074406 894005717 670476552 888299376 205535350 655763083 692535084 706198131 223164532 441477647 164372348 242569187 292790469 685171850 999422469 999553513 587836716 614035478 532100822 761972922 313107001 521129442 81277448 832288029 749137792 811730431 804741597 878964864 55031760 581156750 528235853 907960144 93184369 842612370 903089528 983380315 46021692 357049450 948328762 983253554 361676065 529981046 798027051 851244397 903622525 967573109 712937034 877606740 217306106 318988880 910753238 988528209 788243934 828427862 126073860 946802012 286519738 616784096 557711138 627762758 779446844 798757696 489939627 823852344 129582525 780899756 873502781 999590715 32592376 461340549 285810323 527002138 466561771 794705950 601719933 715795000 455594094 956010031 749415417 804370890 416366395 920744173 803064745 995242157 504241739 861757022 43653589 483203705 494048185 828895977 997512413 999054979 142585828 557826015 600979726 820139436 939202945 955126112 370824961 485190142 697183182 771891209 132798120 492950158 72942599 337112711 793018136 863039927 219327499 291110947 512213292 862172093 33594824 833860012 437025684 720254952 243224021 904693870 654077467 825753176 746879655 916189546 743137773 881569668 165217610 553826844 706425158 834933393 74021684 816155407 217739018 942427949 84577579 246833805 210186131 611365404 950764168 989828655 804184249 994475438 70968981 521336705 993625014 997801043 241538387 320843154 764611639 904305706 306046221 629614300 239022691 707452650 210719489 320821289 729727220 798576789 311335963 669790327 51880914 394571378 10203804 900280371 223504485 451321744 550506346 802719441 601261824 635785014 415746202 911388644 305352641 426952938 378309312 704326032 305742859 442995702 302083676 447787048 635270478 985441165 379104602 801170121 230834530 238983964 445335061 979172983 549906644 959699298 513048306 657209738 617056043 994597364 66607089 948220414 85408224 790366980 253003541 632202065 868028620 963883084 352271365 770949605 165271595 521064540 190208873 516608004 948994764 976405669 135062509 941243491 55225627 958465178 79938811 666697864 924105358 953215653 934896070 951111187 507722263 855190461 527240034 919996256 478548004 745690807 511992076 976330442 950938777 981758987 697120446 955687420 738134304 744011629 695476473 734270849 394999552 402121155 775534047 936494690 789751045 887109621 782100137 797824417 164498217 951557216 830292236 875911877 666502311 998763248 464867122 866844932 628603956 630011707 445337419 601593939 301437070 887816029 75624262 981824778 757937475 791335613 873312500 925216176 95920218 877876087 473491365 569033008 989822225 994306466 342399445 796993897 943085208 997659391 934659516 956916109 67090566 303968168 98942531 571190769 805807045 863047286 217359206 565654409 442402146 758989704 439237383 535843298 744668675 856898192 771536289 874965047 85925267 986761244 440977775 818033101 443225611 940664305 626268308 896404894 665013602 719210603 418079396 926460353 947991396 996915322 568918108 814407540 636941863 668752143 16869081 222815537 353020027 585829086 552610425 589124256 660423411 992112305 920110745 929124775 297847532 305661909 668991918 856159853 97606876 643005526 791131292 805525110 857330719 874338454 922235711 932460326 541597218 641190536 904863059 985803168 809585060 920064940 34831428 319465467 121526490 589945023 379850481 412385792 679717751 876322901 338490205 711342361 457897934 865889116 207584145 911939135 327398432 521707700 367435727 598275947 434188058 701714133 110405060 189916865 53648186 649269845 245027549 533188395 300191811 495880325 68850949 890007297 832718075 871170462 245750491 802540709 629007002 974887922 445401508 922213200 863291522 985609119 365251977 425207967 400881690 460194944 840937738 878637828 483796009 595714068 904585929 980511801 683323323 702371362 952484137 969150529 201931378 424172066 284799094 315726181 9710234 409850397 273367024 322088934 187821821 223657596 142702160 987120111 148000568 941432092 939364287 962708523 724047753 976381085 945933113 965705866 25445363 669280570 748889786 793261350 552380310 585034547 704191335 841742266 921699668 953425798 842658797 919547809 578007495 841050091 258973120 292963006 588430191 751145988 343062201 884671296 494020839 711869016 323730131 812385249 986857079 995886136 115403951 542565455 536977405 641196674 80162627 215955182 451784519 838967202 43400883 706538332 852594062 993936208 995454837 998714125 654020583 811239162 678410008 740828471 574922737 987348722 399745551 867327417 295826933 376695560 644278496 657377602 443626273 768179803 91859526 942961926 30894685 407185174 953924884 994027050 992202964 997458519 115240738 990142475 58960505 822215081 601674219 994394989 226640767 891993357 353422662 964450115 824257645 828353448 3491053 578231575 788666728 871579727 827575177 953711757 838152995 991845252 402607484 971939619 963353024 987534436 563115866 971363483 694532083 803108306 17451204 312368774 529762221 581793924 410607730 734318328 402137015 573560369 325149451 847881129 35164725 99618494 820784737 999599699 297431062 862720599 697622312 782639227 282077293 763378956 700628037 802441973 736230055 900306885 594937075 835169669 600910709 880459659 647644898 947053160 524471671 700299058 632440109 872390738 427377576 821508315 735791072 862182520 160716559 496343515 428046221 850565803 849423249 875620354 244181651 510693667 193650196 524729568 996252491 997341646 240902097 880951222 745640046 890817323 58527572 264269727 80711102 109324712 539821232 566194425 826975036 876598912 283471008 476412259 181972266 565547139 223272674 527125464 562985857 795838252 481202679 726974996 804955144 886814227 552301355 734072274 288167012 570657690 876802672 962027859 786671376 878058470 116194161 940949869 986024300 991073203 144876960 242606035 899477115 912947952 952465100 996597199 741393142 771503442 855787961 938740109 742693897 851333829 223878209 270226681 523211738 748080503 533926478 756468036 499641064 654017709 263664957 286743706 968581041 998309608 898471440 975735017 176428737 531864405 823234636 890465474 674992393 737288511 50571822 410000491 744521142 941027601 927880062 964297685 500111801 682925555 125700683 500944356 167722900 221876435 38092836 962405687 503222304 808544942 625816181 948824150 118007892 647340561 109941453 262983406 653190122 872997468 142896926 870121983 26345614 90395351 872055744 896495980 274173788 409646714 516480266 719866486 768644183 780719555 617516327 947492020 417370318 805929552 487329540 782190508 759534706 908372899 154034255 172553669 253484346 263938699 434511519 629732261 73028458 720235923 600817626 601724925 749936172 786560000 786579384 803793558 934313871 989123841 351417305 685727168 610329759 899789836 716889603 755811536 603942395 729500476 465619478 600002770 285744595 412184251 362538852 512727087 789449019 835690394 616363780 745075693 435597364 488478965 632720554 961877157 973623340 998218608 346490158 961703424 835387132 979307299 907282608 997283392 135036576 933400533 595070688 898384731 958015945 989036881 256198767 431975568 149754759 268015074 917460469 919401522 165553870 536356786 987467790 999440209 755204754 874469372 400591358 989432779 48174061 228735012 990509432 990885406 851618841 927582180 677657824 865177702 193251267 556367118 446037554 462459650 314066789 925399382 986633555 993956521 118160762 649202590 133316193 618424862 144207188 268216353 848383061 973044656 107238989 350373295 884677705 996685569 295854840 625044976 119556477 225147064 155573205 966054801 779333975 974208172 15944828 276130400 576183023 752271828 813012651 843323184 332328410 438979148 182519924 878902327 505502018 612336676 410603668 802700166 408739013 525886451 952508900 977882451 621384086 889416777 446816366 805928406 462562895 725848107 87827063 256046596 55376444 400405453 565172308 852084950 202868716 723023026 988206645 989195693 597440734 883846092 491201550 748987936 481788455 647908039 133336133 920067693 286838584 501919085 441658877 525980956 25421622 598397088 639051438 919429390 169838795 371188916 206718577 356127915 458104219 838717266 349435826 632707443 480558581 907715678 535985204 616873756 542058301 594965260 855835825 986549583 944497199 961971854 808491167 896277698 471720039 501945974 307280294 631971605 641169373 986611610 204388380 291391734 149501692 348224876 453204166 898787681 703271319 957671481 12699112 409379120 219601117 656210585 435331019 983221569 294449372 331106814 519107084 588665961 997582470 998999113 655337518 812599650 686736119 751548895 342273027 870841199 522803960 874799603 797504714 852895592 154131327 748621073 844500870 953974611 72284563 547719362 767459133 889023375 108740248 840613993 69842022 690021621 582565243 830434795 615773564 789494909 531913719 858348445 682145909 746350642 938246846 939112652 844343239 910680010 862894985 983946219 918917636 967086763 497373414 994001604 772335461 831798419 680307481 751613447 480955099 627651030 603881122 616580948 896301218 906522786 217948930 299496620 590260359 999180465 18783840 615053871 227800218 430807535 986184459 988640700 151973903 953412057 184061543 319565527 349451345 924550987 736176587 744141333 531230781 843158668 781302338 784358637 607985737 950071985 421546186 508717707 454058592 670782503 891477748 933064966 291496684 956133416 250629424 684780032 833498052 997449077 976193468 996354075 689320385 863942000 380591460 601331790 42096195 570763501 723504205 905857998 237158580 949884582 798698282 809376793 725761001 762645475 174889384 412304462 240723691 517182018 186977361 891550616 539214069 867576208 508908741 724248573 989300058 997929228 456584785 474700827 831838720 880168640 629525938 656687638 858074944 902604994 30485955 185327642 745269568 837115657 641448840 981193143 785950572 905266843 756198095 784648226 132455165 331640901 884244591 980548383 776001856 972306162 575828601 943682283 897876006 902596549 205107525 492271201 735283844 812261405 488366240 503221953 588954517 860355524 741692737 957540820 358933220 945138333 298301184 695958258 102172312 364819329 454972221 623085481 540726095 595603844 468969582 532902370 7157213 829195788 710146944 787546618 916251383 928829329 887075707 941861888 903217754 952941717 266562127 777244683 453434606 583972257 270747385 848450349 237119814 293073315 85821880 887708138 892002445 973496726 87996210 719360459 344119314 682803032 949271154 996062433 880245844 882013213 897198414 921696613 59698113 261117113 33398007 967756505 611984338 693724579 653562213 873574728 10332012 465414362 307226320 851616417 613443148 698130352 472208076 935426140 749975536 783454990 328229326 518592719 851729858 990491252 614822131 778386521 848608025 931942442 425247592 921563030 789529968 815819095 17397954 351915559 96028306 198820352 212794196 910041584 755506856 796301868 891353581 926984641 69958612 606819573 963771821 978667848 942604020 961884689 967710634 982223257 541458347 882907924 649044051 780143887 998824262 999031978 794498378 796396229 229257131 693603944 397904121 909024868 999088361 999990558 649461566 820550509 627521871 948924175 273486708 907157605 889304193 909479947 217742777 795106058 63481931 557448531 582030691 611019591 218012184 554015766 951961685 964905322 927492724 948129846 927865076 929922252 477660550 946562287 808793313 855473322 130001360 708040356 634589645 830129923 562364164 836967624 704743499 743623421 848543216 969946917 800458092 997550207 523163270 615755940 470597728 732842320 785960017 900593693 420151333 748341565 321724431 897648831 865512479 921567016 274737227 501832874 569634842 898946688 837277869 981765742 302699495 559564593 836052688 905587715 131404562 479913365 6561592 487162526 497960968 897925397 486396975 581203505 24479066 559977438 235812772 679348100 817321659 907563696 933162328 996065530 544972881 673927806 917441810 979623183 927192069 988025946 646119643 798030620 152806779 406480405 199900316 617456158 328642610 960505365 20660890 319936500 997373719 998591513 224525362 248077920 48129989 848503719 310286736 951168458 895095111 988883349 666952280 710323431 910724089 971731660 731450907 762076929 96647736 722557796 847921715 855394057 149327241 466797793 975482735 995839342 18309515 325782265 578137410 855150013 699515927 906969424 221772315 257393532 307307003 865787432 536177151 865205932 190225700 531079740 903085286 916463085 535246117 932846388 7318868 703598209 674825830 904392513 650322938 745898124 804004852 924232506 762234846 925493597 75638171 425037851 586057915 906006233 927463270 944469565 459496426 750536087 610545045 942151069 363273246 397790841 900416947 968628606 234497859 894925709 654516270 767477549 482856118 709006089 538037409 733095480 932663215 947328663 451704374 559326042 915142763 946996822 533659215 840823671 409731443 630917670 787456837 816300105 85724744 680470016 388291220 928694469 354987572 572841115 24036608 248787044 703781107 995232573 494422989 770168380 762846788 971909663 860479561 899489852 631595039 776121372 540333014 783542208 313789058 722282108 558993193 780365914 22307817 758979499 227385613 301851406 766789727 908585283 469268091 632850035 687574368 739387658 688722219 912206692 354407792 925756573 915762288 956689568 464169898 581744591 931577010 943532971 983581773 996265586 377173210 552735196 176509589 630035019 381972764 875981774 664907426 759650374 665840378 929658402 922627729 931751835 309522271 759922881 816890280 901886721 900535244 969616563 552866911 976283669 172319517 698613129 996121616 999019218 99073234 520856757 654606905 841071907 174821027 966488000 666033122 928031663 571812417 791821115 681759385 831350435 609723024 723713886 585826368 829257929 955106970 957868707 160712238 861197282 291128851 737415731 949757002 997548827 434557007 677971950 206844669 487744571 115681525 218534583 125319953 631684100 975170329 984045250 428607971 567800522 277830029 560140146 858330243 880857709 481511329 869827784 764410939 808087183 755446681 861962519 969526979 998515493 715888894 821309244 797972299 846995593 813600293 942233391 24164013 433151848 363866228 603913629 420150400 644640227 84979994 433977142 72170132 919577503 733300567 750328907 310486956 804315190 204846381 817105856 960613177 963540496 835755026 945361406 518376227 970721810 382550681 807797990 841783502 865405899 740205713 866407568 482205572 716402878 823175355 908446566 238970710 946239401 411983443 880676035 117640622 496540729 472932933 955581520 53144944 471805651 950504421 962367996 66001993 294096680 464607741 584332320 316810073 858607029 938940217 947539156 674160120 766016459 521030481 870398807 551713242 994874695 534111005 748414422 221862131 483157616 853075593 891698662 846785394 973948225 45096711 573786501 980453799 991873326 906327468 909579736 607441122 708857119 338310326 712570375 140272986 939812495 414509861 556826469 677190445 697991419 907478588 933991268 756844827 821832337 634242194 856646518 457077114 937063019 697341743 922802827 114640185 228804832 366380644 961242327 723301181 809758559 768364744 875646563 179328985 495883791 590263571 921306077 534672370 609831986 849688702 881152208 319696951 942688001 571414685 716346912 736203229 859992392 763912905 985478354 647587774 956385198 442727062 881206565 492954962 742813674 598714285 995763312 70457208 319814789 942240084 954684109 212385317 643010058 196805976 507106514 944397871 948838456 170869473 858254977 154648713 219848706 588557423 802089073 945145630 979860181 336777761 750264791 708384355 961745424 999512497 999520617 485087615 673575808 452527675 994465833 145724222 559756439 213804965 939564458 505937643 952558783 940272932 952518434 616867248 932493676 868153572 980423246 367589690 766345499 681161229 880367593 635887068 820784320 294218131 982017296 200813490 992069900 766337834 989787258 370721257 577273281 112557094 958519756 932507484 963342196 776484675 815990334 494412067 597369716 495668468 937845332 965281262 972385280 748500742 769669535 878656307 954403372 982039937 987540104 938987804 994793575 428219714 624963208 257944173 263006427 340218720 356360297 443586970 846730513 549466405 866311683 330559075 697831966 857525046 976765849 994743639 996189210 479506068 793525487 1808691 587316944 21918888 440333323 815434133 979272948 290808713 420117583 905784209 929186838 328625510 455624134 35543003 593220253 887076777 925989413 951087123 988171154 669078302 982835388 862304655 960295455 580005337 681831998 841014734 894802787 662609852 779769896 94418670 227997049 540958072 596380692 74433018 105063197 246804035 795997785 975039859 992066400 793281855 902962441 754998045 854265381 880738360 953964535 914696298 992836932 455579883 590444330 208385950 440280238 215826573 994080905 110894863 740734063 725479906 899191547 139132412 342494831 551235916 951969483 153974941 398791054 554582776 832686720 92696044 294154141 731296466 751699044 173479374 872876272 589097537 974322841 118610437 224680793 833793960 851531662 582125297 899405854 461746783 833054223 367953814 929318678 378499092 867535631 444605853 613386816 518176181 637060288 633364455 800273101 991537588 997711726 779492931 937451205 203954658 642259024 825761802 966897874 897682205 935351083 375217407 525944637 514233296 764918758 588703411 939508367 440313956 527075768 379391960 452662211 852168223 896856578 374783318 868132291 145670070 831374623 35347334 351994623 572632622 734704077 457054947 537726712 346923470 444273864 39492595 396072943 815887457 819256521 862372264 984084653 960563048 985164793 424317504 625945052 855685146 976151910 838941316 994078801 716432413 850258523 351528635 630606728 984968067 988762376 200705289 757418799 726238870 735503627 378433128 586282132 686590855 865162997 433634789 593376885 113606970 234246765 564337929 787474339 280931689 413250747 119253845 538630601 125676338 488769348 132010285 149967682 503156440 884463465 332055246 893177763 848110404 993627530 493155155 790786415 756491235 819159761 163769888 408938289 35649085 629770262 763514151 832223554 718120306 821068635 554482421 665600221 801944989 982593699 451869225 891485660 966223091 979135488 338457718 605901107 679950677 974928514 424912809 933160724 846174352 874316763 556340585 618843616 289396548 613469451 29227650 901030674 399814582 692348281 802286798 847264780 490401697 752250250 509859391 800698281 666367930 931781794 160258419 814561263 305382182 768807121 890652834 926674785 951991641 956108031 418624981 799572359 698888592 992073266 526606253 996527359 501721691 870726258 890509143 980991242 460347120 737095896 507801310 930370657 978204188 979258542 107509148 915207561 127261854 430315003 429909372 506469222 54433714 174727001 421794201 666182554 406345470 416534335 366460817 534732326 462003235 950525282 115772490 677038972 568299439 701272207 917779489 924103319 95771466 286768062 483157727 819606142 72621984 833714779 165355924 796752738 81305155 259636344 962350619 969102388 934483436 997361458 977171120 988443485 950196721 959706113 495147883 851468095 100649188 767120878 292649487 531062348 415366302 891798021 431807260 572662506 912092209 937309305 723173485 880092668 787460809 880966679 675824530 936012241 422483688 486175818 822194815 959248460 987307213 992229011 799005128 956981641 279654577 361961743 951238761 987831977 69392468 580329562 394899625 962762188 52081215 810085215 986453902 992096897 607972841 810392377 220166495 485510589 814345148 955544021 393350377 933402602 959360841 982055600 840711696 879908531 135237403 727414820 613166772 808352982 253367570 597505968 203285475 466445922 357997683 643962545 435385319 748179140 170104027 840259208 432100800 692092803 798275011 965952198 486560403 719841707 284498168 758160189 739341571 949315808 29807572 619745500 69006742 593569031 522756525 966329043 706987182 942542034 421285752 881822168 905305934 959074922 915525352 979865183 991205533 991374440 48007920 848583665 149555892 853487831 218542805 891276205 307051756 853733977 418982664 987621365 233047439 500493437 378921348 994851750 65346298 632747543 192122969 591787245 857691737 911495639 86379908 475197993 198634061 381524016 330374341 954997861 296334958 570314459 924889494 982713908 885419430 957199071 218332517 814008701 559003666 783093724 557312627 641587774 419400751 987839172 79399518 607733102 792086335 970867948 343428308 886432621 193004303 857490292 937022097 973773678 106856120 115686005 940755830 988989155 622459333 858616319 1143211 135160754 206298361 688957940 916964901 997682290 649042757 932844612 923615218 969668303 594636849 898255238 994089287 995086377 262226990 886372293 979472057 983478569 59489575 785626592 319291114 526440204 629057061 646327973 798293086 820667383 995030648 995440391 809562107 903900664 50640203 475069361 184429990 753859467 80897386 614765443 199143823 841745731 787529561 789932859 324286694 481675752 598509801 890334744 741981220 872764907 717284387 731905742 108959928 476974433 708454678 867085991 287493761 634038467 866065683 919699407 132294113 868762209 81069318 300574762 954158765 987228709 527234541 574870402 89474512 578754123 988701246 989806558 67108063 629444283 387629911 634452290 759366119 869140924 651175247 995407604 12192572 189765252 265754416 810508234 595031136 814208072 78455148 200026989 881645358 946473012 796919355 862395664 318833217 669767038 550658147 864511915 2658180 238737129 905129940 931860602 144445425 510319099 510323151 897645082 286293381 951257604 217345396 765328057 81012660 807087971 23008055 679211080 590033882 821310973 138090084 558932059 302831965 756266233 265648465 281679276 25564554 608388778 160785322 346041044 619177880 646296567 782518215 830095060 718441 970385291 561425002 946601990 931885408 963867590 829413898 920543865 160587231 454029737 334108549 690093805 925517965 939284509 318571140 374820518 661329908 968515800 773597082 810952942 33609926 208882270 215990291 528240124 548567889 944736875 477196290 755160295 816500198 866885280 101583605 885096526 815159682 999340941 483433824 557363702 473800236 848856788 648068246 775247059 754123446 886340127 548295853 844748247 452014383 521573101 357203173 563628751 934403285 973978928 918572090 929383230 881730783 957679559 441976193 984858603 175412024 348884891 597612577 897516756 859255190 937834493 912826002 963743173 596492709 856754689 938336880 958544067 331115463 438590487 887666667 925823624 700750500 918058465 976910711 976957916 924128080 983358989 189345170 960983161 764500453 784693180 554443535 826310046 934652158 942999159 678639518 932953453 550464596 697888026 694337925 932105931 53871004 129272041 620227143 770095355 355001680 888576107 857363047 995429390 86521216 270512339 851063847 932036491 921306586 978710420 174136901 791648564 404099884 770915446 95002999 526124584 409433954 458462631 966482172 977393930 17091925 946614777 775916123 843967497 197084068 618938382 927598126 955778241 79797927 550696589 585892979 827224076 879218013 903536555 315185799 596002846 883189266 938406974 513639845 739815853 142992822 252021513 210343659 744381910 616419271 786970025 400410780 875032626 864985716 887960579 104607916 847699986 46023514 291685666 138806684 534978675 340358777 746537743 781645645 902093314 488078107 490563032 545513726 877277903 985749424 990160919 541765185 774412365 930543893 969121636 834548494 987892902 335227622 972253808 314860291 336334684 518027979 720065909 755602773 947763062 987653938 998120610 758215433 903164119 75742967 434951648 782689411 792097001 559992257 662268226 473534293 897007403 993821147 998604201 167328681 269563818 956639246 980437734 757584687 958144809 747385979 878961400 565771703 728107975 481783983 571700971 407918093 843704833 264399933 382206380 452336966 889518720 132245765 502590545 778350548 852412745 100417394 829452944 181950752 197181254 532396462 799115633 346757689 535691356 53930584 788198157 173192203 291076853 747458847 948138848 482091483 906799158 339772942 654602294 175448587 568779203 471704326 893563282 29710139 92493397 691061797 829169204 947950238 979663169 362094388 515040418 749767311 996392306 245135043 270316276 759157701 987700019 939768717 990516308 23677847 639521412 837919364 857514922 211072549 598913594 662504347 809325394 432139336 570233505 430752665 909772713 894584633 966574057 524136406 730971285 268126845 537327734 186856712 786420764 989560167 997366144 525208496 770764274 70743358 841355069 200271296 684971434 501604748 951653954 299805935 960636144 410545792 946616055 538954596 583850885 334971114 901473008 754285844 844028049 102098072 604642462 598830181 880536038 890920664 940525442 378894384 591264156 436454437 505384312 734560373 786846441 463214076 853819174 295798223 661143591 218827049 978509214 853673061 974219096 438452579 977136831 948477969 971249815 67614296 679685734 537513930 977142595 915299261 974350487 327389813 463912202 968619660 983112779 202375813 451500369 418362574 468279070 19979755 39832501 557378263 972669726 224351588 414172631 414738655 967568035 905092516 973600394 375810152 835038870 407794028 479585068 763366311 873775114 23725042 781054658 727079695 842562416 694686839 841556816 514075483 579655141 107112244 871986137 769653420 968825963 381875293 986089958 386500262 842234691 943456534 970985124 999985180 999989795 9859295 650089699 871573425 875738626 737294131 860007183 829710523 946733129 641974055 918830430 728783761 758538376 759476475 951092258 333430867 724112874 486428561 774426820 383279978 892707033 463591372 504315893 483860116 539308924 844961879 950306674 38131946 463453487 281167128 549322127 46877087 856217218 871724855 967786091 434695108 723661418 621456400 995892502 224775393 460899948 399025376 664152618 67407137 183288192 651213227 653384582 807766123 956608266 72814972 903675076 576097524 739724594 687897458 793456135 866555364 942262493 922802317 956864776 283708867 319451453 942108918 947986175 433216067 632571284 768944735 786821931 784962723 915263802 842592021 851614433 814250155 849948143 523363489 882204813 388380999 469660625 990928491 999841664 231321856 287791332 96307416 345926860 708093795 820542444 271507317 522919075 289964423 291069295 165042649 957174230 251529474 421124137 264993315 841767087 89349770 95578925 226989126 708582232 683011676 739361574 41917110 599398838 268097087 977071844 171867245 898429962 420483242 540367912 234913301 792356543 342647047 859741508 403467566 405608259 745234269 851969289 964735930 978025404 233305345 810935509 647150314 762586043 900016215 931114003 818722265 954244995 446781733 923676224 757007378 788592239 301493535 668694301 745619002 916330714 240378698 963764932 936472045 955361272 782753799 901802880 979510547 997559670 237767594 844456824 488807306 739570785 516940230 880257793 792578827 803170288 495276606 546145915 713294421 729580781 377215985 712276189 209805653 296303043 121277752 808974608 367203208 565606316 974811126 997802103 540352433 947040803 257133710 846762959 289863367 857702477 266945152 673873317 672337158 859149708 328029509 848420331 187130571 880102110 334946739 868503780 283570934 517057908 64713556 355015073 285985805 561209243 608729176 871774085 52214021 397807229 885957549 942484034 558255995 816075426 425354085 838923010 839148458 951206683 174270722 488769259 400920707 569866991 568114195 648184632 418119158 535016671 316770352 861490886 723105268 958801353 557726760 740305083 335820859 851917577 823448731 835580045 71939999 951567524 683643860 724962912 445789097 829117110 256169206 710716164 309272666 862758966 764155575 840272717 337425587 454802460 161621313 598144925 777189289 785238223 233179341 916660869 205258256 300685441 605162539 769668938 948947475 989742353 722254406 901176442 726150547 798133552 958902178 987147294 341452523 616150417 44638665 418538286 805690275 830055244 794335100 893826965 487880779 859681139 370846183 652814238 398500091 656181528 39527682 270681918 672551519 822168424 17548661 124102420 231764663 699213755 377887424 918747077 923097778 954135110 902148455 918667490 442014250 485260785 335857513 771175123 986186363 988027434 63874407 784049975 327817728 382336948 136745414 399291573 477512569 785629072 66947054 719097464 893421213 921772180 34109412 411827142 354195898 519421629 87159373 95734310 516052297 634454907 415730869 433668369 885633305 947242230 82199659 122004891 431025781 934321828 472080942 861442196 795503438 841455237 393469250 869785016 954447932 970499213 467052738 878767362 455144158 690866158 131615676 721642214 275827654 452073890 149117847 637221355 116233980 938942757 58793690 715958117 301194870 582060193 448686738 617337335 418541942 746126475 609930218 919559506 168676677 601126967 754406010 772835303 144109385 840480682 932681351 933545195 794234412 996601639 780326573 802864969 387214569 808304591 787559169 848731975 762826696 839699827 655091513 709525431 195507202 962226361 64292905 197858262 678780882 705935602 289274298 925506652 623132739 919226077 694279806 947571912 974069893 984975340 695158933 787944171 617863319 940502966 705692744 711220297 121028427 727808091 58508119 495682450 145774726 923268978 625655956 970830348 218982596 469852828 933685869 939570870 704797897 798300278 601401952 848468340 335416275 628332906 135889881 362469453 64986976 396157463 314613258 492188844 655345485 987998714 93276503 692759068 643165328 820389881 519450867 782845417 694146460 698246792 712698836 842603278 968599997 994244831 201579202 498812391 75123762 551783599 495047528 600350800 766916972 934031514 164468732 509243282 690391038 830550089 643282989 715738754 338160867 731753755 718715116 891273576 394040801 780290282 856707236 925186905 450835024 755645700 934323044 944855338 278562011 370997016 371815017 834278020 697226931 756022799 245852218 561365593 76971813 120007639 1014183 220046569 159955326 983625232 328284645 842768886 978782013 992158001 859859750 952321291 853687856 997266789 648663788 901455937 462252493 906188085 171331480 664871697 985476135 990100484 200069822 273611463 885498818 941124385 419834350 801606643 795262176 860932275 854266422 890857628 197949511 434608601 603666872 871524865 11592725 964618378 392303937 721112805 656298906 787327453 41054241 547424558 493785201 819194003 186095742 838708412 828920581 909448283 102491957 186601972 242089139 623108874 164160245 806763485 241299493 793815561 795292674 817485666 96855598 661061070 592663717 955139575 823984825 931915911 247208105 428547332 932153806 942470172 814663744 928110996 28763866 453722790 730836927 902507834 553460218 844532041 467070674 593082597 386238848 673635949 762056106 819283988 235745800 923548787 959949663 996085497 571347039 715475676 262290558 704718191 391665336 778271112 677015104 907882071 849533692 866198241 511942198 749817753 61151752 719717051 670424927 692295179 987331165 995477739 515434409 974493790 231178703 627753991 323060106 556062347 175090195 678662416 655555375 657429270 908273744 997310192 747027640 816656343 165821427 479138429 908826097 923235865 431668922 990493130 319224308 582970163 811592877 939520027 118213425 588338564 110049097 340789048 17331475 242777789 464336431 680852647 127492606 282136123 331186746 893500188 666702728 708938968 170545229 229378189 293514172 906035954 424677687 812789689 951048505 971206275 997891058 997974979 293746891 538106562 333634084 433094624 272065186 460212849 823276780 905136681 90320933 630284390 624127827 794300323 546973778 850811471 208073839 327933958 40566716 90164506 706082019 929159505 87425767 112018474 379617136 927101905 657709577 861064075 87718684 370780441 471849694 692383620 320775143 449162233 56035405 612082015 753303252 798079051 352482424 942997591 587691042 917810825 873545894 880806231 970131130 995914351 789583531 861073406 50996742 557881583 137393949 401735785 894642110 954197944 347965193 395225728 673491421 748014409 715221887 988327093 165196810 324981283 515458623 974660286 758150483 762107309 980773137 984818130 796155862 968205368 663438792 931655361 99468341 626054161 762984186 914542692 237748843 460146225 643614988 838926046 487748842 778217223 196745504 235880237 25931792 874316087 520619450 709941221 510932800 512115903 889946012 931777176 364995245 450307347 506546296 855015895 942523279 993610154 291907488 747541591 707263329 949365951 5943897 508658044 994429659 995078654 74945274 441661095 588441589 605183127 32836629 976264311 108708402 271009453 559357124 630696761 480659802 818217343 692107444 709521433 176237969 659276159 253953694 629640770 51326394 406179743 996207642 996657639 866200135 935166930 893441528 977182037 332311009 622272592 122851033 238705094 187754467 928340422 378487374 582948245 316492037 452144110 248094813 721312032 148254147 654459473 404883268 566650893 262651170 341093423 298130086 559376626 695561548 890304098 775757893 996922700 183158409 910737741 199043975 628415989 934749228 969647563 547263568 591353363 743852445 950168708 964459480 995569579 75463316 87707336 679848864 816938604 996591029 998261672 526302164 758328631 729626358 958695933 189251349 288044455 551672487 571239686 86170985 90530865 417575831 961089118 581726913 805158016 106556609 444311389 934395607 957414622 589400258 689256812 593354941 927268006 967258616 973632253 961795134 965075646 176873545 390898180 897602941 954683701 577935937 628804741 843367028 862559624 16103817 949086167 621239071 653143743 715125082 995608601 822474345 851609614 468593916 584178178 83417353 793600142 940518692 978935867 526561089 647434845 823422082 950901222 24283871 650844204 530646252 985819374 434843000 939649277 358718927 995832962 261063492 588979634 572925491 764572363 528057101 985360038 752309128 874983773 39947295 632023765 961476025 993227334 455995276 923741664 813362723 993023743 949953824 983325750 726408021 868384822 44796017 490269564 941836936 989644449 76384897 531591678 473334189 978800402 306248910 415985468 227431621 856111102 852214282 913258499 332488950 895676874 167077335 409698202 632793976 858033828 640119057 809856532 628610525 754124660 231191738 526194900 494994797 608166056 919880609 924198317 868305452 944878720 792933502 952489321 306120312 755862069 237444844 648614900 837808322 922278431 776755179 899618838 64879818 799743719 878311455 988260206 879678373 930982911 250825522 517731588 733628006 829645858 148179441 740429427 96131477 736742327 150055386 423439289 870353723 938678175 515362210 719179979 400713416 770491219 360042642 718185336 141252188 197737833 368645129 371389489 501329670 907254785 24118096 100449749 916741939 939091842 694614228 945461491 668189733 687321848 459419854 539141519 933774545 949639072 278104613 495286632 829066469 941249960 590146082 832186417 520542707 754328147 365928135 677681687 533112336 747101305 555450580 883132395 776147880 920703309 791616822 998714417 284614549 928809962 588813774 830277546 976050165 981562302 877595801 907580009 28390415 231559324 219802092 661386625 812389626 922827719 289161833 331489555 472961344 723159468 886527224 991991201 481243439 629232159 577103622 740080319 659780662 681316042 813430489 916626529 319029687 603062458 42979767 695745325 338161251 456032296 555332069 686076815 520984689 803921009 101836967 445674898 726440806 758236233 759033906 997385191 24673349 598257567 144856137 922405004 720773463 757570082 61019535 685588621 986463770 987773702 435995196 655096704 143442562 531453244 799853436 931262112 802549318 953329320 921455241 968471015 265074596 799932250 349936267 524473197 245342709 508725077 800921027 973809217 93401631 642920868 671125569 672580256 551275006 718801556 588978913 675999910 169867265 421371386 39036399 461710412 18641277 982043576 187764684 452248662 834446734 967659430 792160278 961402205 832358295 894867116 647078536 819976464 876737988 914196854 846284766 933898231 321779493 406697886 897066172 956125896 734831152 965265532 537375113 805970703 777410780 881094038 54177706 445314319 648638880 669686162 851121970 940974660 390922643 755128803 147307092 586635492 753149129 847549319 312745590 363699074 537223345 679392795 343156088 706097451 954705361 966326839 105449785 281412520 152542454 442218767 98711582 560122958 540749103 900605724 515082005 587638845 294445770 556509699 574319467 983340658 907158881 912131789 631973586 773590284 499141907 615275943 223594933 246462444 302818076 716069692 847637162 886987807 282833267 736404313 77674451 473325118 716869969 803412794 572996663 994492757 734910749 956531816 314230460 560992044 415940745 619537294 422009148 976723036 446644108 924210625 208239555 558121898 476229155 576271909 889444489 988805654 746421952 776166676 917693630 998290573 147268229 268129622 870995250 978732630 596200728 786611656 594815864 855525095 766957378 913597794 492560214 874894964 658459495 726764434 883578052 908570441 473430333 792663071 224434445 726927562 752238856 827838383 298256183 844608638 851094006 857196368 602845458 959496585 318035397 576829452 10085849 776637226 695285819 988170450 46527500 852924900 87303883 202359763 635909331 812905323 978946649 998381413 480398927 534042510 96983185 297792917 104187489 219218656 566377147 736003735 121525267 667399846 98929060 849229502 730859167 783805960 820019991 981103948 675799733 913862936 687162271 917633063 421310896 750232127 999585872 999959796 600262284 978804633 898741720 933805542 958220384 978480038 935904810 956176606 163928799 749900466 780264194 884078725 636828759 955545672 861592528 902477311 800481776 815122117 561436665 759925387 786900859 821687782 448008415 504578601 777601840 926935911 99713796 139507652 254336572 421078921 657889210 732882753 609141904 898224775 274288004 400490922 27131786 322133854 961090336 969711732 983071331 999273065 809470385 867040776 773050022 945662858 739187843 745643409 461296446 837410986 771145174 827328021 240647932 285378204 710374269 792515584 760942007 947406216 728508547 816222928 571541563 646348769 175654582 319201244 750879137 952659036 999629631 999960994 481367753 542820986 211263325 211468107 915829729 951068652 691647599 874309866 512441320 667202337 580155893 956628303 215580302 363459586 902681618 963719026 11442267 539619091 302980733 303422230 240218828 388109141 538381100 933114048 952895806 958725028 628358993 711043588 56431745 177820776 563718027 867986935 379581290 668748459 712972006 716765835 963756214 966254255 27471415 196835702 671535600 827799449 957544679 976384254 469956877 636648314 214034011 916376553 441873235 840245449 693545321 870368152 2420694 763113546 268046643 748671450 228208583 928553389 155679649 922335560 376135516 432857355 699755618 786733698 269748169 883627779 810282306 920378518 130468385 236603932 311239407 961391624 275917365 293350539 342815511 665871771 291483392 525160886 530557814 618300501 588112523 719383544 252177360 799243098 168307746 935829940 916066280 935348117 35304137 483722344 33739546 773011262 327001280 361980331 926772499 964990790 115924033 703179992 981954618 989390121 151205629 756081970 906377546 924988664 395727947 450923917 649123680 960501084 52724789 99334684 214894049 555900129 504622866 622163933 154646791 376019082 40207809 78544849 178188314 446594552 309491712 422830589 215014757 828002284 73218502 549791968 767997418 829512146 739570625 834356740 54706478 958442533 693679872 781737681 39685540 198718751 537368607 851077606 860471243 986091029 687244517 769064763 672305779 778596142 568159644 919529642 529159502 898144936 885982823 993803312 929900634 931303960 209621978 697807486 542570530 838441211 131915777 136987196 575299127 879023134 36198272 475213175 35111341 691619738 331198650 418755086 788462666 946122467 670770535 802806379 869356060 960069921 81727104 141539115 485780788 865133792 508138960 511438972 260527837 348038486 626753266 892322663 767973334 774405825 232909388 792054689 53858940 605019934 278867133 821146079 462472807 584336062 14637009 149828401 935233756 937469514 61978151 216201324 640710224 995021938 556830800 835462719 907902455 952582018 645254490 852990712 913088424 980752822 738370566 745865538 232403908 649229869 42424636 752970231 452034736 563715859 635876565 654531123 233802279 631219841 131390960 657452957 414261130 993587193 377194813 446595626 136091621 821133929 84680623 736296410 625105746 870960899 9897310 962018857 291189166 575767783 11101139 454468113 563410498 898348507 56383879 475568504 297032516 591198749 250374720 312552192 309533041 570716021 981517172 981658839 548995015 955898374 146917030 444251679 998957342 999710198 437139871 663915892 600275223 867965035 998865330 999324663 43073996 694899843 259875712 839643767 141842209 654738280 697308199 921857328 601893396 901314330 391223662 508680117 36844621 263404109 136816 667589435 342200930 877322808 875066885 927004008 195778457 880468963 20750845 183714767 298913980 819097313 392588416 935065915 410386254 878176709 892075802 896673923 18528992 636383971 344026072 867296766 193213676 721289539 274760013 923723965 292272944 346652138 907374338 950949370 891102589 968939418 385894725 699082589 150597946 714211860 905403022 946897386 431512821 465978493 529481119 580890168 398367063 428549142 646121976 992752733 186927093 284951622 164626080 780462319 48791027 775319034 411425009 947583373 973504830 996108756 27715890 396930720 419498029 836000135 179556187 846285928 715720856 982628112 239726170 408393843 961284104 998978789 318726190 356541808 508069929 573724911 535922456 549658295 418561001 924100875 411379165 593011878 405396398 576866581 580186364 800770319 225332002 525334676 997781664 998746054 73320748 695140469 31621597 556256958 793291600 991992951 998749013 999020971 58378502 916564800 960246814 979540484 229811420 260548445 958820723 986508535 498122584 671565391 723405146 958799602 857095891 899260539 152581864 575509002 44387342 229682680 545471483 746255666 477720068 709900458 774466223 966709284 185267512 375891951 336136105 588563567 551387596 794983106 497499858 565337664 345511434 526159122 310742899 561785375 971517027 979237589 963995654 974347052 212895008 848874770 483403460 792177038 178407014 776632084 169736174 933962732 569658463 916163658 72220648 737228704 268870674 410730504 677462207 874239325 486407911 954834106 979176780 988042309 263400193 297197767 221441399 567802839 147654209 937983946 427969664 642061000 53343770 101335217 510929552 601635404 73010020 765796045 456446088 646119820 22683446 951638483 726472819 838358051 922464691 944452418 413377729 611851861 582138832 625488812 666618234 848908524 73161384 805591883 808319135 908446751 87577441 348958127 599664905 825543049 10410880 765710397 354680616 435275095 914875523 970674874 33424400 196540820 563732784 879234185 65768086 832595313 475272797 605555110 361403933 395994786 932046651 941723299 143106536 156280476 883647594 996969184 697592355 985353770 823156651 918964635 647598526 972176508 341803400 866293780 444056991 551077460 286989137 629646596 294952465 863087143 362386674 728336345 504852677 575286428 422253173 661927477 860853615 932075800 907447321 971662008 880110164 954591897 899221972 908406721 156623130 179934367 982216710 987501232 551495388 876614169 594897390 676232967 931048371 981690371 191606154 497027856 479116178 894611179 793871736 894290183 182590330 345621134 646776655 822080312 971809962 974357808 511678307 606384042 200915261 512857586 183912957 295493188 648925736 977856978 569581122 666873590 304749530 873850722 486551373 681820443 686689055 899848381 597322249 621335482 953158953 978873567 865387351 933844518 171199998 440866776 792661510 992403511 32461135 962411938 980734539 995287084 7059027 197890055 378470295 909864875 359390618 427656316 437508825 578949234 404022122 970212191 980519738 996163322 211349085 491449604 828693288 972052345 735082108 995326069 542120324 906158296 955634464 994164745 550751853 667521149 823250106 825278598 77501405 434023351 150697328 188128884 896537495 910146753 976607374 989223088 33834205 264486050 50042418 293436469 815056596 909370778 697263022 712164802 882353760 943249734 227875464 943256013 196619262 428186800 953985277 999350464 201724558 366332819 728846137 758039475 928895982 930639380 200303756 959558129 699811176 906827730 155646609 694061771 643566164 943161495 293926864 801158228 664717668 942351923 785729970 997628161 591386191 952028938 654245501 763494123 134631458 659336501 995944667 996490675 6676338 138170624 119552344 679349644 86766472 990492447 370312068 624685641 238686538 641128920 337318775 778937990 7991615 853255209 128377182 887393326 279381772 956794137 380026534 513659525 565121380 642206531 843424469 932707861 557539366 607972600 413141985 490335283 507365876 827205427 33688035 438923174 952777119 988958101 656241239 959123263 494529686 658235339 690133721 762776143 86127851 444872831 965563446 985264355 779366276 785444378 362258168 853033601 496099683 560982128 973842565 996913702 379530376 976013291 955662907 967759855 53103523 204360086 459229009 486870420 2897673 855050589 970258740 996224327 362094288 688628459 429297977 508053230 362425425 805472052 176026768 924516022 206434048 731236326 978332435 997615511 112653125 954847831 906900827 921261529 809340689 890339064 462135002 804228945 989921716 991163134 700834666 805815315 115054812 799355677 998381681 999933945 922390868 958566380 712825996 990643311 570781326 781036517 965003177 985758517 411308301 634744382 928685644 969151064 477595466 877821298 269466156 286569899 747777837 896881062 430393770 899849641 929302536 947636944 570798395 592985187 404561255 503056823 987712176 994062081 343490991 376732439 671609755 694860615 461223308 932623397 523011021 607540746 718690398 989658544 89417662 450533576 126256856 498686435 641339115 988411213 806915886 864379884 4834070 634683672 234885828 570752703 488649609 492337668 233250736 566396911 937717185 976140731 875705436 936891911 275365575 772453107 757099049 886736274 280267544 419338589 727055005 751861502 495174677 736002406 772004418 817178450 38893337 405670188 646551479 677548332 286684182 536451462 307358607 740275483 960899010 968664076 371279646 463089447 708706139 978795953 440489983 798815146 341786972 570593546 197638654 238978709 248282268 724497029 264939587 657452187 560450062 623935479 958540875 986191800 129950685 562533343 890818759 975978578 295325062 769419307 512411861 891862058 814541289 886180046 561714581 959438808 547693313 598308243 274894174 898938669 100539760 592293066 340088191 988383594 547799306 868028523 436663197 906792770 558042486 948841812 389625955 955586604 771200841 911949665 791019052 971743373 165597498 837632574 945685548 962124096 167809107 169543042 380325498 470448672 782135039 865018549 623484535 926767612 44148966 463534433 655019656 790599660 580282965 586911075 355758022 714371410 815221574 933992069 582824342 821600252 834051552 840175638 192023568 941142671 740353794 777026867 978521080 996869108 394384798 590595313 88304928 615137820 910514914 958389268 246738536 493292653 68295223 936144148 490860779 557858192 636498167 965749054 930783345 992855795 649062416 933417510 759533024 795140902 740082214 893080360 952925315 993685161 249853973 771611328 232104324 618868141 812090331 841201708 971905146 988825814 988183596 988659755 980784919 990212921 536561818 659014401 889553866 967070899 227220759 890028930 417685673 902136796 619581172 631031970 882650419 975633757 304201362 544310146 918334435 929606497 590645472 707809078 932227473 997543410 85919656 528806251 708292773 818948997 449351726 496594287 952608429 974409094 187183076 647861564 744978255 764796491 155771251 160951193 228884517 242914203 1172859 616601868 265723594 667410726 912932377 987297479 598875738 859657185 233065180 419181719 44344892 679167570 472362740 700974804 263244411 634689120 549372653 940196138 71355127 76992470 140093094 719646517 45870950 258209125 500329263 802124634 485747535 697872196 988281579 999506268 334684467 579918283 13167214 482562392 130629609 719816862 628105753 641193844 445434069 555401650 900374241 941517946 705536561 963825760 357107075 443370374 812120339 990495172 930475530 991294147 646770379 714923887 580360473 609980777 28775124 45768749 374886230 748030677 936732893 956176277 864537224 976477618 588737388 678670712 715841373 925712979 496683529 762067725 161025383 874732206 342963142 457058813 688383886 715502079 276215993 430166827 822238225 957558026 157450512 510136059 526588270 835649775 344817007 388782096 146158720 568064655 59152901 781550582 749623024 911651746 662304398 901080535 19236392 298733042 817048734 877474446 224774424 392030198 934227305 936525242 789582527 921216139 134535293 778431347 368521908 486016395 269321617 491856452 647139976 753027450 207383073 847280233 273657168 296872274 332073038 372193319 358718121 427678370 372086882 484791116 557672456 688141390 757304318 916141033 813664698 852465559 249047933 722804855 138401649 407615350 461906239 730763293 931147683 983154046 951352079 957708713 364851627 801311504 246563186 628998805 261526695 412362088 624654750 786182557 986131072 997658379 344175132 883631167 301211514 382411806 319598727 996743358 780711662 787357380 916752254 978704577 973212049 995700430 269776764 315974678 632902344 738792888 421408282 705590030 716324169 853546317 192435499 563903075 727817360 837063850 802587713 981353689 894854621 980429866 758824091 879695676 804363711 952250466 226417401 423729783 397378942 458735958 150822081 741156486 560817906 931701282 203092470 837136505 791635819 911689246 772264885 848758244 923186372 989677247 678644160 699841430 694159143 946617846 559302756 880933466 22506335 365086830 82303281 425314381 648841810 805224452 406853202 703736685 323989553 364271156 699111563 917988634 523069620 819092559 139422663 506428577 518695743 803151439 680892770 975542012 284358295 450389812 831946443 986689421 740774840 962109211 94614291 318594142 958143126 974006392 129011192 662471439 662271916 943789273 433803464 724107017 49259608 785109803 5623949 805216435 676309738 995423025 6631114 738857653 400079077 642816847 625262487 892266960 528834196 997399604 293650920 928395395 222142842 914563668 329862646 420449641 418171308 422281452 387149942 776587811 596941021 925613032 830650045 926391898 538195662 651982152 547423955 614990185 104300014 423775732 110115959 164064851 814207187 947530214 240352293 325914079 929385038 983742723 230736985 444785609 20552475 134973204 744189493 785946919 933193819 998665323 26052864 974253995 921873609 974275329 89416457 310870789 793909669 905820085 168849240 630171856 698505756 849275797 245051687 968619641 703158892 919026459 461618999 992707118 977296314 994590205 485317706 576914174 258413317 288720907 742184194 764272421 570204628 713110089 191344591 814487693 438841179 671097752 577930233 728632806 917638898 949313584 568830036 705876346 464608556 745313890 142298564 519373263 775751212 978342847 469453138 902652728 375212280 431845643 942219803 956009753 215068485 878062981 48734495 501494548 193220323 220252759 840278319 906215811 652793735 935170475 268577551 657802689 641023507 883959686 587273001 625705352 578066458 857450794 181455621 363573975 794531232 906371793 249676185 930519468 900848154 989968233 924966439 929105067 673754359 835764488 189466738 248978654 388637014 495297718 280095142 584321945 758851365 890757248 58669807 198836433 701027569 972877572 264726847 305170790 653455960 771017944 512999734 806507200 976938651 979803747 278813303 627122330 276499426 387558015 985504598 988218491 638394645 919011116 77441781 434934123 584188725 673032965 813126797 948026291 139125229 745805668 642023723 881663131 276159227 627102321 348748375 888804388 693150255 947890440 418046641 553122365 907318448 917283987 573144944 609008506 937896625 999158859 561989456 829508834 140381769 503371615 807423682 814387559 818095385 850702374 680413393 727630508 137953456 759329775 56596576 182948758 473530683 653503681 262972956 377893394 502366968 685273262 980553778 994083361 371200755 787125731 557158947 735855298 137514049 346446553 106980367 155000474 130148728 942660391 272589764 310294247 794405110 857006064 110566681 803605572 540287440 798013609 606557599 639675202 735238318 773896951 967159430 978008584 586896690 811154567 923453510 975767815 801843748 859625145 384033316 906982629 740267849 997624737 602239287 804071224 600202513 881823782 962945707 977799135 325077816 513045782 131859799 551483906 186634153 393682848 207976250 843653736 166989128 369233709 426797587 453793566 1846061 263666430 948920834 988510790 266682388 995784106 501141714 504040709 4437909 537196858 388778026 894857437 99956413 700921178 104143203 419319587 542512647 735256355 561351847 980651136 912717461 915140959 52233623 86658290 894933061 925188209 725086232 972673439 653570057 897192224 210713242 997419913 859649691 945319882 408150802 935405593 408046081 502514175 355258666 824757431 722840554 922941330 86238905 97330979 112521714 474794943 541986662 678976956 879501114 915430327 291838404 828019882 624670913 783183350 444771312 772526381 916469758 977983928 113977549 970584561 749667355 984298209 907501462 911173681 166332088 192052788 21517689 331700708 72600410 101632434 628670312 804600078 451717751 864969135 370256760 555742068 936470126 991059593 492641452 710175174 653841096 948325205 677920806 826096315 820718815 972402226 449169466 479593159 865969297 894080924 236556257 242272346 809503110 924068277 330416487 702747942 842060882 969488484 513933523 818864753 852244681 921588854 281611347 698950766 502471037 683048349 402701799 528403668 808463322 867601535 909346410 955756222 908617680 933236878 571546305 638578417 846821772 936957823 929573546 996713259 286876783 424094546 281451609 817705168 82617561 555052221 186875444 208041681 104741306 633029740 86548190 292130011 964695220 984455810 430038826 859600066 152183146 247353352 288250002 675301538 905146694 936296282 999354441 999864134 700477402 735662005 46300028 868585682 360457023 534518981 121546420 227558960 683723321 905683087 679853414 889771392 300522426 714159820 35592920 891694299 724055470 794433578 6759590 956516078 857003866 970812393 588438396 938742187 169469704 365093600 226315063 943962993 246980773 530825882 764240480 987329326 632999450 771354745 242650398 921577439 832506862 934353359 126992033 337892976 449190991 725945841 283881400 848225110 188290362 393602437 322108653 534615227 669504089 913885743 820925198 834258286 315109946 352984191 537832832 885721879 936198448 995817725 745161560 832144543 439370135 781631609 952099632 985703206 862703069 955181533 648339434 691834060 547883004 820471043 157243325 890557059 590413569 749671140 792765778 975319104 719892285 968321659 172801272 512637819 88408395 581377253 166973545 743413063 419520940 438442794 432728819 693100058 928376243 970328236 613139388 705324503 460349226 924080868 881452266 996765319 563168065 964055088 913453172 989414731 98819337 832735514 847303548 870087379 896115299 907879811 766534394 984788793 876885203 932853743 36564167 366456438 791945739 830685795 140510788 716533828 544599850 672846765 116469953 261961035 464677888 814725873 73017287 159523744 131134476 504281125 53391293 97408988 323435351 872413711 28480239 671157535 686060972 999961585 745892051 924670397 601259456 884425057 511527911 980560238 463157581 827311519 239964718 539847430 648877694 760084756 611025711 806290169 451846209 761156198 174441630 344080303 380530510 482020479 297031566 982485722 213353538 609053998 451114418 971543749 947215871 975639769 429515415 594041626 500405392 557067794 778401644 984277536 445136696 800185501 694999228 893133880 220777589 625947048 904399915 932202199 413245587 693085447 92323317 600621281 420670021 807681866 629385340 768965615 247403902 472430259 705967783 857983592 118592005 990794139 241294692 353255157 175359838 803765227 919414041 989270658 525023612 796184971 275311221 439172020 98203365 158588550 891291219 979679518 154740868 454491007 4532005 489318106 844717151 887435385 978397546 989048238 172119127 685157930 176786431 992699706 572717531 928821303 1009864 148518453 464147634 999845997 695549542 948046201 250805906 276394276 786451334 916966906 870198392 898793769 329946836 691889388 250367609 404703767 428569486 700667639 908417612 924336689 699238882 768489089 608319392 661949164 357419096 986869395 979585643 984727834 797307184 920746575 995140723 998211694 488481169 969153259 457741460 736899231 216456485 650751556 176096946 194854689 9939838 746653122 437588753 505318154 511322206 873737795 818488011 874567348 202783804 714017983 762614376 992545592 331145917 396255678 812485815 813760414 901944915 928998738 104564364 524873795 518316874 881268637 331164679 335949319 237560138 792794768 261541375 728839236 979630985 986948001 416690653 484481358 992888079 999378769 103846901 333208330 226089026 250620752 786107125 975360083 676041017 770785813 541899915 795635811 237227569 268214628 229232300 331870809 700724331 857752930 901312069 994061720 512353530 764896130 816015370 947498253 942132150 986694793 1877015 284208506 114763253 815203566 922570357 988169673 766470569 904115080 490426609 984039093 154469848 776991091 273958287 430832602 373773456 658738541 117896023 317255926 878039500 962773961 804812328 850213073 347136606 456704980 170098494 601359582 740421828 804687002 3026931 927914406 679341544 952343905 203644357 427216731 339005569 929548771 117846244 281891712 699259508 808036935 94464906 584816007 697655082 786242240 913352769 938971242 71945241 500113523 319151251 550281765 268315902 419244102 575314057 992871543 44387216 660800277 550210868 622726959 830513216 868775440 774233121 988936463 603478385 994917085 740258824 937750575 443703903 863023640 697945153 828275427 757769797 767791220 368848276 372135457 117097394 532292498 528427580 792948536 767588421 981451775 629882325 936553734 618058780 839589173 418357422 589095678 178405580 629224174 526790744 659243285 896493519 990647906 112168307 974057188 836886892 882210838 365381230 368565461 522108858 863816419 610271928 968037236 289617321 931802095 245734573 772311698 426516161 805023600 201308357 456119524 754032494 953225842 211201047 592779070 570245136 910387270 291985434 524308688 971952602 996975032 912479911 996749334 139788445 958518141 449130373 462907529 726473228 977149918 233318484 372435482 809088457 880238760 568904270 887915100 684773232 998949606 826885706 926227267 931405039 945798161 469526869 585047077 646583931 922709886 769926267 788129147 986328115 993000745 449384735 929565883 371977719 761873990 797632110 822219392 92458375 934936644 296221562 738784754 393224293 639911951 883686424 984219670 542719895 549924727 679915388 702610595 612733333 691846799 828740862 930751242 104357011 490072731 34935845 980700300 596802478 805249239 41936324 304706973 314406062 691743170 237731525 492825483 198126058 493092889 824750512 893017681 281452701 738202135 522002824 587389907 579546657 594011643 51056942 858827594 286939288 725115444 698762784 862385897 125352567 869295223 712223442 834332346 445028698 644942118 635378664 673223105 913286762 972339623 608432605 932257503 147172601 453251471 194524957 915511026 749680406 894778953 361437305 488444496 985590941 991357007 512037924 698426904 962462254 966713447 527708949 738363522 1514838 778020388 448655005 856039053 281419222 433203503 714617111 890849825 662826130 751275496 906937802 937131181 232763249 837867732 354572862 542003992 850175880 929213633 125981904 318791661 211045186 636892695 411762684 869440614 111629975 982943693 118902017 496560469 368564615 847509215 33255216 496661275 218794804 618670261 308545791 841500456 96444312 161832802 342832983 441553798 866190644 901821315 954040273 990832437 874193394 942121202 899754031 945772394 918185128 919465954 235198787 339414470 614756693 659056604 588566557 871588308 138407556 653798178 519599620 936676897 156365255 233785479 268568093 713274930 694220706 786894679 482319050 672093795 754845938 999259663 660204188 982189106 427008512 662735132 558099114 620013431 329651333 787499987 780469918 980401203 226033711 443795411 681479184 839449651 431303515 774908023 133789988 576634843 434531011 532383040 132389607 365623302 98901824 877335385 324876158 880953713 137132352 746849174 457863553 602577684 561887947 903281260 612783801 952875218 649591019 886587189 575452274 643018484 46046190 133077774 245563409 706011192 525741508 716257760 419781706 467825049 773575614 844989844 211221244 874538118 178997892 529718169 611681790 679532435 548296980 629686565 203815518 641009392 833956115 960344698 582718434 674903486 792472565 860680710 31439489 169787853 813077593 851171154 164422115 897040541 300214810 712926723 512202882 698562708 340673248 666186310 768839655 893296231 311122504 329640058 372531720 950624547 840635613 886565849 556592409 800867184 502060039 934491452 663764267 779999963 10636146 562613523 870260547 929334798 223213845 695842137 760059976 807971561 620424596 727358689 590295273 606198350 106202253 826792592 238611879 507313968 551319035 746663549 551508396 915933314 490799554 752513610 473484851 618720531 248309673 687573801 428532340 670021020 872118625 894348238 657948893 658759913 872460728 954003970 209402109 679470362 46385658 94092485 750664592 857952594 789919125 883344280 657620112 785186876 47185655 862397533 21551506 55362403 30361872 852411375 87069424 788181345 727065044 986634937 626073592 967003128 406096528 863109870 60918993 694043101 264624944 913005947 732506315 834938390 328480384 824049449 929532001 933096219 339939163 442628962 549176446 597966221 502516325 826636803 174105222 248936996 674112509 939873041 481255022 581266081 511527836 742235267 560199263 941676373 763013115 890727552 771883306 991926773 928599149 937715895 329089122 629485055 756661817 955223812 688033562 789929489 684965623 975680951 506828859 933688598 485361568 771428846 802322895 968403896 117008271 199028705 844983000 921598141 286157380 411348653 737920337 888113565 179308470 308509571 420090987 803215287 480031830 645622375 321000837 904567336 310016343 416207866 744840972 820147744 386756402 589922481 124896822 813492816 884612424 917626593 838885363 896172621 327678379 560754611 652715401 932506365 84895830 495937626 500035918 958180569 309946948 357417751 862318103 945300589 253001952 759588312 547635028 914478079 186233102 754506815 404969396 503738644 806722585 978315797 419837516 694987604 836834212 897798463 477405596 523886763 244868961 482343925 348856559 374036233 427008035 684523040 710240907 879400529 222461085 452675497 286835618 577479662 190410143 544098368 700329994 809688782 195916809 795007824 792279660 970742764 612015832 699049166 283678791 993541404 481658318 808428322 970702974 997359750 772657717 919091355 222292532 583714143 210577625 961668534 452664928 902605150 59188992 465807242 438328459 586800144 12401871 275878412 845609482 927889995 847214616 893288951 911717083 920676503 358477995 533580044 284348935 667568227 440595890 511949491 934408501 989388992 969994765 984615739 943242745 990736736 553522608 726715391 745227254 884707636 830971437 951244146 252477557 891892458 288950231 528969334 783225834 792006691 607198593 787706473 398350849 916976163 414970520 796549402 204401228 541899932 821611183 917285881 953668531 970331316 168532424 590606560 892947382 937048987 203028946 373220682 688240333 924664941 704471402 856836336 787336099 922200177 510516165 898751406 516099653 536260984 494608688 841465904 392543930 630077117 110336342 279753136 444495465 469737172 299587134 501308308 416622510 641470257 200663061 723098422 319503356 661522966 100041184 657047157 501657941 667925600 848089129 971201535 118398441 521743464 279792303 733293968 238822460 611351388 369961533 590137278 580735624 879481388 630512549 838323138 950793267 970139219 412250946 981190008 849565926 934204688 848064698 893538337 277181717 423186430 156379529 764575124 877927805 952113760 21070766 858210207 327815479 953417943 731301801 864612659 530478889 665974166 328742837 800206701 293567848 800916108 928228867 993332050 262288409 298875164 982820491 983382522 442153064 887991511 516950793 934405102 803017752 813662654 465868718 924333917 660694998 696551695 526381334 885521152 58337017 845305740 170185922 325185465 166507785 808924293 515802015 848606109 915020233 978016474 116054924 181812111 225008958 385133825 84880201 579033909 10610126 861976598 67854359 582017902 810200201 885470794 475970575 876262476 929892994 935284067 514612764 570786984 575241894 891439524 198999036 366548165 752375485 828774078 28927095 416663219 261971550 875122578 138888911 918864612 628433624 856677361 860020123 944041465 999321222 999609284 727418142 803821417 985588403 992361001 746472883 843102372 617470680 947162057 112208672 242193240 626446884 842165658 633171133 739838263 382218500 691892351 818136884 872980051 108353304 149717850 647484303 854874673 408243728 440442957 645253294 785693279 207386731 339005304 703942333 971661094 4590434 629718735 568023506 827548131 134358570 362229382 454890038 987129899 542022475 621264632 892465359 918257743 627841841 768828159 68501120 107511542 903683910 907699699 525918362 755801455 344767405 989300495 366011370 791479376 610026949 700427223 475086861 800339407 362980998 983129123 995384289 998837164 489383213 685086190 24258597 366973816 492163205 800575596 763489402 885855730 499997127 636492546 684528055 945532876 997624825 998515577 25078643 764376594 884675695 936441409 626654554 957096186 627461239 868645453 853985770 945154989 991489266 993232315 621869794 697235604 541731690 584697423 633625349 766221390 802815972 912634186 71124019 309126558 783948314 805733431 179808760 332035903 852676974 972071769 749181366 872070106 407300726 637346044 518115190 958464198 698835544 864577000 216990928 698438384 266623638 295172517 265267124 404455565 860689993 964174182 53469502 974778877 309932928 682902910 560926822 939599900 497962365 893952787 878751845 905492817 467072550 607907290 499643960 928795856 958665311 996214894 363697679 564622825 145591460 194797372 54100806 137264962 36655025 702008384 786429523 860692885 598593053 615864020 233130027 766693079 100970093 582205820 68505064 440348632 82992022 900812579 405288596 546511076 85798466 378997712 662416829 841074589 170648161 820869615 448741788 889410692 298099914 771002798 257967486 555353635 156628278 159598576 482463748 739813809 72936444 840024239 914213468 988691421 998743935 999680965 592159986 871449383 919564297 938236064 557050770 919164520 461431982 510228491 125429942 999887345 508485213 713960773 275068948 889754892 668960684 945587225 278900730 872314384 446793357 808480580 212396228 582522829 181611480 903366299 668941066 987780244 427801383 773510038 772219219 885584383 137933020 943199411 924387647 982777492 2159013 101941626 415109818 462475319 246863941 908450466 127842910 756373020 879469070 980556604 426233830 545131806 209051659 340367882 733811667 888232038 347624779 391996888 941281050 964934979 662594939 809282886 129409004 923297453 662176908 822996641 712271334 965186041 360300205 735350225 706907516 958416001 30214214 120553675 639079020 885258604 623209131 790632108 795525308 997984302 465411031 697588186 566730182 673429656 142885486 774873254 120157319 168897120 770186134 849842955 37329828 299586815 653735661 766250138 558929879 991235971 15271465 97084455 376471119 651196979 207242874 432289259 162819414 380069888 53879625 241759969 633337749 896892436 616141668 951563940 234942072 805705026 505392578 589288935 822102540 949858824 554968687 664132074 442609055 474685649 207270295 896439972 691408153 778366060 758439080 937535039 402368841 962925447 901252494 997689220 768628015 939007617 776969287 974692110 511798688 625717875 686369802 988670032 449656182 819272707 27156051 351611149 859687241 903744279 601045871 742299217 352414107 789603455 652505961 820722989 686070839 880940167 712738508 794787927 650549753 718351305 189260001 320311433 824308896 827114424 922552051 934007581 381592500 867065866 744094145 757915643 23995 60276311 601379830 671378808 709730643 856140902 460376192 722775179 63025746 232314909 972861438 974268404 522148117 523067725 521922647 845991383 693795157 906982525 114720609 510029051 558455586 722736942 51867850 382753987 961834282 968645590 730621220 848256055 576829445 619132184 241271473 487977537 563574498 932909292 919683515 961270211 923290585 954053266 730345597 933018641 486849338 791064931 173996104 664336924 928024861 971223861 668221034 720672577 343831019 752628078 129828566 875819305 601858594 918984345 880275955 979912045 306918184 925745914 803605578 823368270 759309525 934346243 476537362 984197243 687401492 784838729 2494319 219717329 964907611 992952403 812756390 975901065 121943165 491257316 405240981 501070631 262532824 273886866 317871762 712225214 676826479 828427574 363961427 440446369 287813151 605200449 466861583 486188263 586787116 736159365 418914954 655178854 28137720 354778298 293831920 465213038 990488467 995361102 917190184 965394945 871686407 932057824 258134325 566678745 533795512 912371252 58303725 498056378 524288935 861739197 688613835 762324958 578822598 693136962 12563610 563639385 844864858 966465412 403314108 599921216 224858242 639855901 54871650 702400244 125053119 537536655 47327183 215502968 355949736 606098388 854019287 940898042 745535066 942241652 883176957 961678124 48954663 427217604 142299800 533433233 340352986 836012965 702081731 909647813 634680825 645534893 365723448 375110552 9854772 711156358 593630569 706674111 659823375 993957685 95473809 626471470 767414634 807603091 34493168 585390924 713870612 879953645 952094535 981119273 473674923 612701235 850264794 898049476 327372222 354920327 104804506 111410118 707918042 812499823 973699238 986452137 994284111 997445327 543337279 834973657 206976144 511130032 289180983 550066157 655941238 785655234 691467083 938844615 193324581 792078490 72413040 951344082 168696842 635927003 900578073 910431232 288067765 702830079 570374 726464115 521396726 752518934 666540350 812807562 585938752 678660644 838225601 914871026 405253646 855762372 788778946 970044277 965363218 983582847 340782677 783607298 79670802 710509384 736334307 870945569 702385038 939027481 525363102 974423535 902988561 932133788 151160393 774347050 880108133 996512420 975006330 982052091 270148625 677622738 535051592 593635986 563055420 741053162 759021100 777518626 850607579 904706449 460503068 475486280 774445396 947626944 921417238 991556873 660692039 912420683 210004831 709526073 340432532 732947047 719330392 790001678 491105776 491824687 863851337 949084880 663137769 877116958 780455060 860297074 143311466 189676484 620417934 883930826 836375389 865064953 917510577 991551066 425867955 954359542 783206953 868208633 158044899 282025879 23875167 705438931 580120060 976675246 589599006 704467864 829431484 972721011 404215446 570610193 437606471 547672779 703076942 807542469 363521412 566350076 719487148 992945335 484268945 595800853 384475638 848304929 956912968 986431936 958414651 973712362 483742185 758078135 846506830 889114343 722265314 733420029 522675903 670114812 267778659 475969536 616250285 964976112 942166102 964397474 581984637 941808309 71730928 475372825 506109694 829784586 964419137 990486437 208979765 849547023 812005541 917562077 156235051 212968488 588371961 979555105 810540165 847491232 996109952 999973760 954876351 964134190 176848141 270611238 220330365 526771212 270676056 747281569 83037262 525841373 889018917 921531502 445221626 656563575 517420411 624894675 331187424 691422763 317445801 592851810 47738871 510448302 943735184 990738864 239832186 990270016 379480302 605623262 438846577 606606653 141976077 330534627 193563413 336922890 625026413 802497511 831277844 964272038 406990679 648973234 793036470 823047682 203253400 640962859 251892927 658605963 97770543 716200330 937674859 967998079 555113406 918986835 107066890 919288574 234515935 963780562 602177599 848385027 440523822 665185468 970378999 983815242 131386131 348457261 38181023 109932473 315878482 803481927 405858818 993485677 623694149 947428729 497730667 918513212 876770703 985523781 698430506 742011626 227603709 322896904 949491454 968190382 601034834 893052904 761168803 768723402 772061540 824006368 105878896 284831917 976353965 986057440 975487471 992943901 846409893 905083707 946605683 980416746 522024140 748371490 259272940 405156292 976196778 988373986 475739837 602093458 120476433 620138979 987324427 999780205 556402340 812595918 740051893 753170185 812829415 950347927 203753251 724621872 638698721 942033818 267194409 391775667 267728308 410157458 778002105 816735114 412762461 597195587 523793173 683095795 726155273 797297590 735411456 824385185 84317163 375705478 997400176 998357841 741573935 746890047 576927189 594675106 988583588 994627822 844236162 904664034 631721519 811899075 83510172 781832078 303715883 651353436 959598319 961349088 86473416 994705466 585304208 887411010 888159690 888781505 891250509 930952859 679221744 794041313 218170233 827967388 585319728 674807366 174668776 397313306 941870241 951202156 304643945 981409477 212533683 631960291 951745658 967095053 990668064 992652791 523534446 926789834 643808093 886992653 940544572 973745209 686255402 938665701 308318849 918151836 749060854 870019254 487900588 618824362 641767960 702193086 253311929 879127921 936766843 969050632 667223191 856102040 953130363 989955631 294907700 701461472 926284703 954546467 920218338 985713702 209898072 796575926 420838140 647937164 444918359 805736837 383735677 835539271 297326398 974043409 642416185 916633340 314295224 951218139 517494813 632897482 654695617 710790989 281523376 445105899 675437691 745813022 596916033 688116055 654207916 750770728 127255888 594263987 15176282 458544609 600631991 748583785 200231288 786854765 823396877 842828576 128637853 342678831 916802473 987815921 360761994 907055335 13485998 160621622 773538458 988386086 32565632 445884558 285540009 418576151 301098436 817165787 737220950 829225717 848458473 980004233 456044623 854003165 596219845 728183461 55490417 774333952 2035674 699243702 408176439 684483461 79203609 440043506 356224027 724336813 410098619 461385925 865263414 955666386 707432374 822333806 376173220 723391006 773344512 856033805 839814158 887099050 430410972 433213509 151676635 414779977 244047851 892278050 893577586 967207619 243363095 777730297 926043407 995983906 365779487 365906151 340124525 434204400 628008726 839925394 755017130 971295437 615772164 620101701 282591061 566857294 627700828 724547100 605390798 661847235 603373527 746557547 876758888 879587541 38260486 327058290 884164565 948299215 262860061 568243256 832461370 909036317 473339318 722108094 689139797 730160452 490601715 844092205 560868568 848453756 798334744 834416285 206671715 755609452 779154521 961237309 490606349 541690286 402809366 691059136 696212644 887016946 119235227 503722532 302148056 915433301 381523010 658357714 748535713 890298724 555350933 719587713 893947199 983085754 808313049 983145545 335583898 434641707 380247751 423811398 192947148 346340680 177568897 284141245 434492061 731742881 52542007 719185546 197663070 579913922 600312446 835467181 348733491 987421841 804364411 900290664 87739427 441902454 758736254 921908039 610820896 803257226 974930770 988909793 235845955 307460641 78486732 538072661 252930555 733718067 59502406 743451240 873414570 954929823 569826815 575110480 971954977 990253009 345904107 962691553 709599099 712327134 811325863 967098987 611174291 822292271 464629925 785372705 809969086 967765368 193721434 922441145 544450836 544961061 314936145 965467316 401327516 666850011 799395867 837693983 531991238 770178450 633476173 691001125 978781820 986237352 141749704 664207865 731141922 755496653 882508181 974787909 470358179 679248254 488959773 517028090 328215083 925644420 440802293 736650680 59110960 376141609 572591031 639952280 824220249 853339167 522146235 909125769 889025677 992706851 416373158 997658295 806091663 993689818 633624146 976177697 684618649 772847229 307700532 852262116 432756077 949857975 695403790 870766470 191938461 468688511 739679617 839212144 81625662 766841069 313863099 779435987 621609385 912230717 356946922 688142552 463924941 533383659 984959088 992404105 574958535 844657268 648555762 998030823 40142000 467682942 683328047 771793684 898748231 961197742 659670488 800147360 87058907 750709419 351687343 464792940 474689073 539987932 415488437 961954971 755099644 896911433 185906487 536329524 801775524 946542814 786278707 786428884 751066456 975057411 889604008 985664261 355326236 406044380 463506677 891304528 304068411 889473097 324212108 960612149 528269110 720098407 750955633 892309613 484685515 806783634 556596697 773139334 664676448 985926633 333684586 354707298 75914361 801399288 891469232 914064026 462677159 997957335 908275912 929142442 539227131 560369818 155261390 992679209 958897758 984734938 16039832 310387596 914783626 932650631 626309714 644753645 311879147 829626980 958596824 981340275 965169476 975235345 415445575 987039255 670613058 827374652 617890911 940857548 441019726 638715132 869994155 989170117 593572489 656583226 353907886 637602344 399456052 624613195 776151810 780343561 216218587 403490976 867563032 919550434 146809015 222967662 476686848 537510875 708020494 887699126 663666965 691438995 267863430 772801069 606572032 723885058 859495455 917235559 398448080 578521024 437262168 637900433 124210827 192829565 357278046 948938301 830387301 869789520 773796624 994353148 120181809 193327607 667063031 809515359 726566212 951543859 442038287 577214131 2188043 115616272 868909782 907156998 47573318 284935368 768895968 783840888 617167843 814371528 750276853 750756138 30221193 289989732 756307719 828045538 417474746 823941688 6472794 632424672 565380155 623285580 294821362 571464698 327026187 628125091 104477065 244275352 164346696 848017300 544245500 658599930 685031705 691531224 213090303 953450892 221076301 354177181 809954001 852439796 165198546 846028414 794337423 830573024 924932387 932339578 674973880 999096542 920470451 980687060 302566029 348647559 501750570 960246733 651600319 926846434 209640164 536864454 623784773 883108814 561205252 609639369 205919411 743185356 261502618 607380060 103186734 877720496 800713224 925662418 499775878 945595190 384713696 935833737 60728298 447466801 11666115 670504198 741927150 903874297 315073007 431574304 129076407 531450545 527425576 979881989 547659083 634665776 103467591 424940023 150950879 581092272 422553730 616033774 213946274 338156841 83771358 694250913 513160843 654639075 722661677 826516376 626473537 787179979 873604113 902412557 878673367 958654653 282957218 642701846 164323202 204392977 798044897 808273517 98967570 468492244 304926999 427195058 5325538 439719765 502590558 656713814 355398254 519571488 698206092 930784959 708482208 931822321 407583903 588092892 538553722 558529891 152730408 958287149 12116591 798480741 582410619 788562854 496216518 583127598 954756426 990597570 720040654 946745156 924403350 959802063 672291533 782078700 291645495 439646069 640895388 850765476 810759944 860647671 217971830 317483887 741057938 833319728 929552930 988251304 770664009 816182445 1657711 769030854 368783773 395975190 851076401 925547028 2215730 842898190 178926836 639106664 682783511 773635514 376268348 753359966 124536795 705689147 337141504 489037279 332723935 815013198 65918970 493835756 256312916 767998345 365220691 431954286 870365511 966596746 733580108 934006941 454233336 720768412 602283717 669685325 530812480 912621895 938570098 938703571 535641025 775508545 818742476 850711119 366145993 877580521 74243677 170377376 282745681 537996799 714589301 785435063 968098855 979792087 944769698 955606407 846453907 876492570 208148085 470553348 813265721 843954906 650087880 695920573 55619654 706782082 356662093 867222540 941199548 969403078 250243108 592949194 167898115 467977607 560543616 578018813 209426920 909763186 79652060 886076428 436049521 485989834 607742906 818954227 704979748 975255258 667444560 707257786 427557675 832582767 892877776 943631158 897842720 943031180 26015046 253142544 392650400 939779985 18477382 264780956 416265652 554714529 476958358 512392837 861215679 911449344 6813969 391270171 464459629 620110931 634659525 932590074 843299812 924662479 460993683 621168066 106768591 856676842 758470277 829765252 567603630 741789918 325420631 510893086 414859317 451875719 57484652 323554748 926540039 939741965 686226691 852418185 584202575 588630558 131005016 735352562 292136533 478661454 350167434 836325593 146991479 345349965 488738069 577939227 766751764 767364699 718354754 766282033 571762322 874348197 144140959 945854926 319102955 842999298 799646343 855875091 595556080 752214394 132879648 981225583 87086599 963016724 906482851 928743239 284497032 445830110 900886912 961711286 363271342 913625016 773963359 851569431 461436856 927058060 755992407 966571694 939802430 969691211 138015158 678530752 878544547 986147931 546780960 906127240 473820514 500102018 875087725 998235649 228031868 760866440 85345725 320011633 184664015 922944022 732182412 938253229 384459899 838843743 692105394 903440213 317186362 645576919 199042168 765467083 240371980 635252439 105302480 996511667 559792093 931744104 650767480 998917069 536443635 637243898 934922523 992993426 340140367 375295795 370718018 739691416 846002847 982793015 237203249 634059714 8710925 492403893 346716590 436641443 117258184 909960251 412182324 944360652 877539606 887058542 324132987 637377850 967658349 982222742 460175497 957991642 532804142 840075597 874837935 934611403 830823015 833945498 158543762 671928885 579325295 969986866 187735245 766367372 911085452 954165163 540098810 579944202 8354321 137967143 575540752 712199694 374522028 801726437 752573373 765469903 681946804 854086466 710615791 964059197 462025172 679626959 935569608 991055629 43144179 386598257 780323773 932797625 976252249 994960738 886610189 899823567 921175100 951937520 48457729 209522575 249001211 876945422 612646394 707749510 515148649 672101264 880710966 950394179 948746489 981620071 321398339 586186036 898721818 993873996 635286574 727182941 588398787 923915907 882459005 914733519 696432717 956393502 34705858 401183691 581734174 663586874 788751473 807028829 351084631 595330120 298899419 430300753 308154417 825974092 449451256 815277050 19625727 400993963 3550956 678236179 263814621 375772271 143049889 967244302 156553938 929109084 789821132 822627254 767886741 879697009 611329504 740597179 854044780 942475277 563854321 754365926 526158279 871535600 654898220 840815992 549043849 803630350 418999959 977491409 560597106 672017255 974291775 985975221 779643051 955531977 652414946 851141151 49972644 370231829 479085437 825304091 592264092 950393152 52025138 589055926 452728160 677357912 788029840 961438305 896341198 995218428 79243613 192054761 675139180 794491393 854556384 883110922 326404186 829490532 318259612 660658619 880132225 910714502 5915573 723196224 824611065 883647161 330371700 359142457 673480215 962371416 755767133 938727426 716613854 858614345 980440015 987801118 967767788 983786667 263526620 387703457 315019746 321047354 725800374 959167380 503447425 771578740 866820138 871418039 375179472 456037219 688654516 990920165 919913644 951481914 305870607 511843615 419909284 724338108 388867607 759277532 3094087 604447391 443247526 853327529 67213145 804812597 771613202 898604903 353925591 820263483 937937309 944368097 880577022 988422240 146125864 897181867 387714518 992357723 732466040 964881388 271957676 968332316 426994016 588108680 528179840 788719205 179262851 558165697 65864818 565589337 981966362 983641076 940016088 953321762 535718739 771351498 482294831 930851880 616833937 769363513 611613041 686287374 449217353 450145660 118922931 173798400 222442659 357264695 795633220 918039006 254211498 727904075 882571574 966380484 572146646 695597697 593428315 960598408 938813359 967631895 712435004 866863643 728949788 991440267 261280774 730388163 62122862 769399488 48309116 397834052 313240356 501864310 363849712 524004329 309693223 869486182 842398754 849398686 991204178 995625562 665588358 991711262 429734694 808493604 178722647 206949863 468613452 822720035 911351975 966518969 563448700 916180082 505094756 589684115 864344620 995289662 628828325 916057279 834670315 839116593 377608426 950397589 320852212 389680016 255214204 504176310 977030302 999793979 939018421 987633055 61310512 923605205 688628143 765381713 174279472 914659037 229011422 395322042 604799056 774205037 457490776 684886006 17007622 120656492 503870175 699689531 762494051 844284465 637409928 637545473 49612940 890500708 579160281 979714739 766083770 798148959 611754835 953380167 763118532 956770520 694607275 852291561 113631843 587963383 200242186 559268725 490749066 570909870 481229505 824585196 489379717 555401610 662469199 811010768 634532646 930888702 668238905 688694142 814736079 977057362 931694785 932879401 874974884 962392866 508261193 839018056 542875301 909368279 522887029 656211907 137017465 494083691 469674262 883916920 823226939 854945364 159032761 254078855 741432030 947439105 249733450 526922067 726282803 975352096 584719993 937596269 355631701 732363199 368857785 614508896 861589477 970313776 251100742 292559093 814427422 850711464 57186593 879543094 705657258 872450882 993832885 994816244 180345392 965530061 677256595 954431418 799529678 929239918 104853114 430848875 731424619 986898625 404387568 701151240 901024413 996603216 422944211 748983096 694908282 783557356 670961617 929067140 480509448 710472637 367626149 395128781 393657079 732542730 46056734 316782229 867999655 879531884 964226674 972091682 436883461 614530485 376066133 385377760 885558334 996057650 348772421 557904494 863091425 984329620 456613954 495906916 293831151 332046999 396897562 710350960 674261998 781892782 541440557 598678292 141532149 612703297 640586212 865754519 347476607 444114231 433341060 996354272 412052576 523218099 111543710 412609556 477470986 915272461 317472441 921970903 800497255 862908833 516576657 679888768 305811713 970144251 143365995 842180700 836477086 981912912 880987402 984444861 816031092 868370086 833330566 856073219 864603304 966541712 2093817 571661565 462362226 534283695 460265510 509864297 328093080 802814569 911929209 915808589 773578099 874348588 145549187 521562200 616577357 832744944 215407483 745189015 383152930 621384770 693150947 812436435 427388182 627293768 339710220 455948836 667876702 717807481 961508211 979611447 733748277 741264976 376159922 665237231 844265022 856482843 310188159 950172451 344872673 429137055 217551510 424252612 576498799 893215263 101435007 244283062 740939182 990160525 39240926 714467216 667080643 970980726 925675021 941907066 648728765 705960121 21498884 519315590 512457167 527757652 857571787 995453486 681091006 983690080 26889376 521482073 407014765 975850802 111274889 916803142 744181743 830755666 932764581 942986218 516683412 957978716 475275735 575854276 786861979 909067533 847063663 961854850 465803884 758301214 371135524 418082928 881037544 961799039 59303727 807961470 189523258 204904385 185681879 878958479 388451901 994716351 359322161 577162280 131778359 435692803 641969640 957965685 630037260 858583271 309339586 463435511 727734434 931950120 796300907 865516300 630613919 818549995 898388502 909238291 714195391 999466966 263052231 395354609 34462982 552887626 462731361 616204096 824628419 997163720 902999398 903763851 34022940 818781014 702111164 830981299 698678404 764945393 676032738 954632412 453472978 713896499 489444220 614571645 127854417 754864540 300618469 548510685 62192540 363352270 205545785 386223370 311148335 814529440 663480155 950252631 945853125 998008595 149237028 364830417 928692961 975768844 921243743 942322083 226467529 976070641 857714879 967182623 490580502 491132616 868260891 940841080 170352514 961331855 239417590 448425211 654962757 754603426 903065803 908203635 372665453 560950008 583285530 949654110 475834697 924624722 898242788 946538146 89012521 124581400 282748321 457894913 930547344 950273596 210509115 827411360 803511426 963108709 860598337 939785943 199893307 320793620 905012378 956142508 106933321 177564972 631124832 900434035 454358985 932283415 602167849 964812287 175150951 548580696 481795112 608646189 319076649 774435086 508580180 678142708 652844154 861176354 835899520 863926322 808582067 821980234 469056764 508326034 711925785 819458226 936784681 937675881 357495589 458753477 106564618 222718949 974816020 983349741 618809770 766936088 647463036 839513795 109877785 369942957 264001636 672997666 544188315 573761239 670941502 990708171 754467081 932121236 291822277 610770234 679272160 814824222 249463921 978919792 347491064 696594156 335104004 672052791 509201730 955675644 770067070 795055966 956611217 962773321 646568144 957254993 842846664 972153834 656962316 662074921 724531820 999765507 785825725 838029452 219179638 320559855 179241197 579903608 451710291 774568916 264105740 512169644 937712906 954898531 876905491 947845866 238695698 723337178 773303861 941998518 628911302 886873863 293606669 558275826 762298210 793994662 746578411 871579735 953344965 981401361 90594375 956853235 401499889 939065668 888931034 931648281 490297241 798297857 271033905 731591016 400861059 513462320 948284126 995371267 677121570 770891308 785164053 877998210 346328812 986287982 106559320 987670435 99967933 407646390 50995928 773052135 21153204 322880025 577429631 662430332 407916070 747657182 325112989 880618569 738609110 873854278 582303631 691768037 701243411 971079177 890275233 987493858 33688496 419759147 721040113 759611755 879028167 881347841 7519649 396773700 723907163 771446963 789022778 938657328 246278135 268592235 997768877 998268064 63028373 198408056 327907398 402530345 29811379 893094880 773357348 920310572 886360500 951527767 330850321 855005292 560646273 798476329 468912377 925448734 477468070 845048636 319818309 608639097 852745167 911247073 154983084 946502917 18735490 524989331 864310439 888890900 283052228 637024140 755177580 892365737 895285732 966611898 416776077 858353120 907147923 909565986 987078446 994975191 446521475 725442106 348807426 676312165 609298027 646957448 869604696 887814691 355033263 857740379 511411010 763559845 244890451 288414439 99789352 304519455 839205841 896842454 151043798 592467198 479364195 868246047 588227719 658701366 437888469 848439543 982318582 987007441 380790066 664911171 741546159 792918025 342819609 616771511 21320953 677794340 958456373 981446703 351125637 741692194 783803485 961084728 351676705 573136684 28059481 804369735 106107031 840892266 288438913 515192272 935329731 953665721 920408106 940276937 622391271 809581483 702732461 897005620 890743539 983699760 285119058 828699639 240431277 305569074 749498265 890033267 333247459 846757567 590560782 592491925 837603845 851982616 293691156 521308596 877223625 975286575 527987700 733270909 348323293 911341946 82929007 230220881 919782925 981607084 161293705 349994437 253124578 782793180 171887593 725706391 80782203 374924128 547344734 973211492 417069581 719879902 721851049 899186584 778784931 784250701 98750167 287062158 680096816 813936187 449505570 624043729 545322807 784903009 914840214 925260097 298558863 898835700 920431145 953093911 567149313 654044598 28196718 757366522 843529364 909975037 57152115 702350665 138159088 609906922 120727178 662290839 77077926 916074729 140748812 256237837 491799354 847059627 938463289 969161228 987026232 990603123 911971371 972518658 649809699 778711364 970946322 975858439 82894591 404668002 622524406 657859219 107054423 339207006 623778294 801831836 858952956 951648477 980321877 995612367 740925644 749591713 196357876 579686549 689212635 810920770 110161835 939526571 196802226 228605338 530541026 655644228 646995453 670814376 994344757 999325844 359862216 632792653 864517983 865618567 325733806 750940486 745556160 806488700 650270842 835161050 876994030 956279257 654532287 727577676 107203929 679066867 869250020 929349693 929758532 932268600 530022483 971226749 822828647 958619675 560523647 597017766 576685456 917292428 764764438 821558125 313109925 334509568 383675652 692312607 776906652 977507476 938064473 938520919 951259968 987748971 616998472 967948323 727815101 898891242 906960508 932411898 693461567 800265781 669029930 761191526 391681521 743035286 94541648 160758378 52011150 367996790 456060727 685947896 735547060 933797682 491855130 962633592 728991660 735201293 19708910 596151889 363224442 854737051 766603643 903290216 891793649 908785611 947784734 982399351 997144707 997157886 442393432 669268818 551029663 785347002 908748421 997020470 105617588 532538858 236156787 785973478 66428448 839786457 134645641 686299402 196069126 993471439 63919675 645080228 448370944 708254851 673489254 689466446 993927049 994592469 766790175 989836934 714141006 866723246 86395343 639348908 61750469 756310206 59525698 421133674 646705297 768274419 975739684 997906762 707713205 971846164 243186849 950088694 771665818 982634835 526353525 598161895 756751091 873913700 271438638 607142572 720901460 739282357 636756164 865569153 541871347 550624750 926631639 932035578 379270147 630784199 544927895 873223706 87200240 444205076 271998497 340902441 59006963 491153625 565002427 803187370 685944402 900159709 310131227 607468309 281243657 803964245 877326458 949496556 356196962 914611440 826070793 862724862 281651244 702010210 617266100 802393481 485540985 906574976 923341836 954691789 907091401 966521153 841095211 881434649 404472088 476057050 217837341 557983912 449317962 668242238 818234264 838385274 3395679 294172972 994383207 998581136 219446551 306660485 934812812 973525714 489556056 579682285 284173362 527473705 493835683 771489851 680867372 714708324 740936579 929928775 495174294 842341804 62275189 720090270 723455242 894945768 980260443 981734630 802130221 881335144 77970775 228817270 187921334 189827573 910006452 964188478 728934203 738831624 87239697 827849972 468586986 605910560 571974455 947301593 310056434 907554293 340998509 971687534 41613662 663202920 34915243 879102581 96022127 504563389 341509514 766064384 894231566 955778316 185446126 884224474 948180069 963324660 715102131 967642357 909127351 917482638 980355351 998765206 213531574 616620046 406176773 854549454 548829066 592133235 170750707 939418812 120732077 596873468 50954230 349564350 671305635 885453053 333847718 671988475 434546244 862128113 178580067 995826655 206059296 570864463 362549219 695711665 800002145 803468491 314173674 784449888 661375199 975752300 31528631 593375778 410096376 684303712 460958489 930389149 39331255 393040100 9933188 278359582 714540303 748019595 451508406 512915610 575888522 801025991 658778486 793725114 334354411 908809490 22601176 365513954 570032754 983656390 437398028 856149003 417802370 520071384 912949745 993352810 16292421 315566255 523340094 892563631 549375947 571741299 685792723 948238558 654232427 795994971 308804568 749741058 315462985 435995158 56043855 861906539 104075249 466540564 796641135 890667607 748050232 974943148 806417248 874229763 106822207 634647119 294415038 541188900 794365127 944350771 642297935 798068619 6983131 219936061 945875932 991342493 368242574 624487657 895649457 904784351 960870872 988898992 216113037 378555441 455701870 753383670 102846299 615047300 341789004 451189431 903420661 984516689 854206547 976498880 457415841 857390566 484589552 617706509 295124815 378942788 467918312 512111467 664678757 813297560 230832838 302031361 744623734 909716237 65677590 834544237 385141190 530632939 187359323 697043683 250905801 542012169 558959052 598589636 951171819 968906956 498504851 809122314 905831465 977206039 43383721 78277556 94408800 401324068 648603751 682895060 584087668 668969304 593690406 963039242 741802665 765775011 650749088 965103646 964022266 981265067 60526660 930169726 712627906 869731325 852339896 996303232 483189044 657836980 539821123 999342741 115135203 737301238 589250279 801468890 758797301 987878378 852029826 864366330 561015552 573110385 672368426 974709758 196231032 283971066 188452466 788892539 201138364 662084249 69351218 488006338 548300089 679205709 15725533 748675647 860294128 996203530 375086482 883775356 176819521 526202162 567334536 993238270 713523225 718538280 721859315 992785441 110078241 290309873 142241538 294400428 83601093 950882517 681888530 901244870 57519094 434325547 362763536 860915126 172527263 724080509 267122422 712569422 944910615 980855385 735217798 790421985 588040041 737872405 91367929 374704820 902728408 949637027 359065969 570468099 19801036 744176067 305338940 618534139 749922014 876001907 848502312 950353871 555292087 739116619 923856004 928359816 34962769 447610275 439788538 736613547 535936165 911545247 955292440 965747086 101518102 525969213 146874803 375646765 50518802 577252138 904277383 947244305 492705948 803725945 155096881 625331166 516723642 685931271 140156072 824790345 179850478 273286456 767777437 991272468 828300838 995856490 145779071 249248297 239564990 441885397 818050688 907807801 661953565 949830328 313252822 581128229 612089735 857877286 872742771 885234883 152798253 525600492 685433401 705500888 371640023 524058415 57312990 332024769 700834004 728074509 27527394 114476577 530292147 596986963 858929927 859767085 713667223 803213548 210863222 921795066 470686547 870875277 300418771 767352860 246674768 717912415 846863924 866372722 798975734 923774490 742400763 909225650 464650848 631687176 290235731 842927449 606414 520447657 855026613 866468766 890721609 901513201 239340436 733894596 672491628 985081402 521921515 875560346 151510602 905563768 510755347 553601462 842807574 921287196 171604849 896741974 496441730 640085745 332213415 998858372 833447151 875375436 576091388 737469362 959646310 972790308 368544219 607015866 30444586 821373790 299184714 877170122 237271822 768517321 275501467 749027197 361801591 611988626 209797371 544141331 768677100 783342322 139033305 940668892 944073275 996511134 130472931 239212890 147896196 299067115 151651434 371210430 195617868 976418288 668128017 730386751 264823077 284218872 527177583 543915824 80227779 979934460 165795245 484514484 465534448 975195633 23829188 281336299 739475613 861956962 556804163 751471832 607328086 825540885 776492336 807853874 164219974 994371449 716649679 976462734 406910617 849117086 695928433 848383502 233963402 653301551 94440390 839258881 771461214 957249111 568420700 997896362 785897078 803039368 534609535 671374007 406863673 888996952 855563760 956738681 791489728 935700470 753468626 996304645 18345254 842456319 917806684 922755021 355044040 622572644 115316663 510347278 379955651 830645515 248053403 772404998 603161588 783710604 802547862 847689016 626582298 674767155 903766163 932686572 801334480 904562314 610234751 721194586 714916206 811861800 335186223 602141315 551118229 617803306 60957125 656805816 673529589 891083781 682514650 865942659 458241700 487438484 796680401 972008158 788920507 987717377 489397107 666368423 91306072 100514062 816519022 922077078 985039407 986585627 289994250 859277942 71267596 792928412 371812283 438382563 545583218 929995050 393134747 826456794 653869749 878293314 924524500 999504108 370726272 833238617 326558301 945471050 278320406 296647198 99426679 206402712 744145606 801584811 65315910 188647011 72814392 552949128 711362203 795140107 271659982 436100870 562043211 831874499 306463287 939634508 923312112 950317613 327794819 900583343 839801969 859647836 409241600 769959192 656441311 892550064 519250606 521367348 476039956 984922923 291011057 527118503 327597059 985800692 92696376 799889975 285017364 339243401 385186216 480446131 115102157 311694810 283711950 721182548 210287913 637280520 501962198 612120252 505478985 833405381 557186971 847367358 704330836 842689157 744582354 800246117 924509700 976417831 160822057 208002124 242878595 384899719 784509879 878419401 678609708 845755178 871521713 979118874 608823030 847776647 534324833 822208612 190749357 723084937 110153771 683073138 724187170 928717753 942333238 980496923 465345770 741668941 744138805 921215993 282548348 782720678 408375933 449090662 400239123 788080724 670432547 729496206 781675358 967876306 204415279 852845276 498157596 761639921 465741330 706257002 839319225 973219798 635333125 863200873 624472940 821460653 360943451 771094322 533966078 707835994 432847895 890228350 764484579 916362339 602492397 853474321 209020244 912937538 113773488 765234901 628329427 888363278 913477 229960260 166809916 879072009 499520643 674429335 575934892 984980494 742728991 844776527 337971115 670224685 491175967 920076832 916162892 971668818 562232622 663364847 76498989 784368613 237152822 249240049 913410789 976196411 759125179 815690190 253724436 666109123 794669513 892650463 258096930 530651931 889832636 922305693 418212917 834278813 822289280 855429401 504608518 942114049 465256227 522149898 601948282 737310590 337312594 467280026 410756794 597949280 312648636 951928442 247934111 929728729 461281416 936455216 366175013 580861757 88429455 337910299 660139457 687177928 722493979 733273984 947091314 968014942 720367891 988138712 484261330 919899118 920890089 983416825 100420266 938146803 90046515 340638890 793814696 968642578 618555803 890345587 885088944 932233293 372002708 987439954 805827849 975607093 786898569 920671390 164036818 346872350 318762948 683509878 707088850 818503697 422231509 783368464 42701475 107779123 195808450 364526864 608152380 802840614 848452172 987860185 696857294 937538939 670809070 671487874 139439036 154507181 171706730 828443114 823206166 898553766 813639296 960841176 137186875 352490458 641988023 996786800 419305401 878464801 478715475 675778878 283505282 654401828 602201649 713652271 738080591 890469592 422294428 592430804 323832385 921038758 250784926 473899984 371789007 615964061 289061764 650622974 265380417 659231106 212249027 551703381 665837899 708944424 271842442 837157454 903370426 955349156 812652485 949502502 524193300 922935897 300142893 414916775 692740033 752806450 383672085 895044808 710856123 979383480 490249398 935004885 170690219 238942471 280921030 309821629 697505737 876793840 47297662 271424173 282068248 756848970 33773977 292465949 550382281 675466041 459603893 816231565 894804534 977209885 920769155 995645033 221339208 751397406 658993745 852277180 366993079 392194701 385686092 467503992 756420813 903381453 424313525 482142750 623894245 866352979 52457288 620043307 855188129 885197365 580662747 846090528 739277847 946638992 498577601 730988921 469607326 609929305 739887718 803376474 335884191 907530408 180772074 421996210 785586380 960888032 2904930 919076124 912834662 927095995 986192179 996949863 302577372 816929842 246361175 666888476 305071270 385258231 620321274 888402682 593016997 918251655 1909834 103042876 271119538 420008254 292771713 435678051 520408520 646316566 94981753 194296398 239714339 401518192 949489999 978961327 714239421 738928830 225909288 388811010 29399714 65588696 626571518 871908353 130203715 669720849 409981425 541369793 609413089 848971211 675151897 818870779 602868754 721781179 354575898 773920716 475325682 961776290 539986284 660693082 547008664 966801326 825054744 994304272 579464758 637325202 309562154 642721914 898035265 996435231 674265882 944769476 642349592 657741467 964021737 997615002 224054067 813809343 676505745 968604042 859011554 969179484 308032252 498269200 164830293 886008901 897688746 996570649 355864374 410411610 383635362 701920859 958894212 974658585 96790189 525748350 910192352 955901596 875342808 952603263 667828242 806287456 849373971 889156304 695855117 975908332 267087692 505694942 267667632 914792273 553506973 799209641 589506385 888423399 825966694 862316353 445749708 897981708 329716922 510889645 463076532 968910526 462981452 700549773 446356613 484894485 291307876 940595768 568809259 670196229 373842538 816143272 841706213 960518474 791381402 957988185 314390908 970448890 5511477 92417461 723045947 890519929 191808883 413388915 619803977 749862393 189332837 718689935 441385192 517496521 635677300 828320247 705816888 766693206 447270624 820272620 241282642 997179818 306876660 749618148 994761831 996648131 547575274 818764882 810467484 922595520 303891917 713218695 8338973 745288189 280795128 557546434 498468255 834776829 386974707 630649568 301460630 714715255 898627420 972827850 322734995 704358685 103183711 855290344 30111014 572127344 749485083 998561911 426215483 968419668 485837663 588196318 326088969 671813549 707820666 909569873 466945761 730632150 533587664 918473694 687173503 910229279 762593100 939929233 269054539 686818774 356872374 736950758 742075840 771007099 263195113 559315594 586594296 780836659 899254272 925092692 249404450 930715102 274327849 558202822 335235270 903593569 918759242 935818936 812225376 874918880 365395292 501076660 399536283 712179106 314198150 897323469 653780622 952473397 550481221 731976485 274792447 871401365 81359023 862167120 317925305 854613277 51716732 783440488 366314293 922354805 122241102 671065087 958952760 985443960 396567325 436003360 601715963 903412507 806355303 818056228 771895286 934378072 239446717 798616643 235297752 947544964 814204998 913560401 442820734 899442732 604777727 656156905 666874619 707312106 19945441 598675090 346680813 549133100 821664941 912759838 718255439 887949593 179432887 872904467 299478865 782377571 538211406 849072842 448610019 910541903 296771749 783671560 213665664 223312967 504230346 847317292 422382257 500298349 755165387 765104194 732950575 922975087 566387569 775847855 726077074 952810642 854248921 901875108 245369353 970038929 355598605 683031021 865295166 978134869 392617743 519370543 324180903 473369573 429129694 711772583 628023807 803160669 634701325 899920776 754917297 900784322 4832586 300136147 92912839 750226793 481165868 604895417 566282227 581155054 484054341 913864755 860225096 918187636 137798493 311413100 698524895 765761281 263360115 832603623 170615064 709815821 597924367 758768211 802066700 879490954 744835518 831805504 581524376 705264144 759003859 939681286 692373149 745735895 506684004 966918295 758699369 778630604 428006248 973670344 241500332 806721869 264426586 977917421 765471075 923316164 642340277 890155885 366050511 877162982 840344323 954869399 763807033 952597062 137643461 346651869 724570023 851409296 814174228 951453905 773826034 794466924 678075165 728822626 261530034 771993127 167371319 683636870 113021317 284538880 269618531 802175556 867621917 970301047 78067107 399551919 342401937 654869073 306910957 858107120 477032554 930985442 497968819 832262129 723950714 745052991 375968147 587057347 647360138 749465717 27646403 678734006 803430084 880064494 764272951 943345540 906622631 969361783 113517725 720580711 578131742 964120449 279894965 878739212 111713353 484927472 503461064 536389250 21401902 340250174 807209380 812761704 824086610 963272276 904395688 969128048 460601193 780065045 13054212 678621924 89145589 638668994 750116951 863186063 661752366 709226996 565405767 684268535 582810608 981256024 17979502 714196335 582074724 736731654 977543628 996194166 134383100 601751216 906614237 994713429 424542735 617365496 570719755 989895046 634062304 752557062 271778603 558843479 76108297 317412158 180543029 575618355 329909904 576283954 176371179 611262863 942003412 966804280 729126453 896736687 815578040 969025145 93185089 590241593 424137167 438773293 897198050 965652554 546927432 663676184 208512998 583591721 66968406 695236717 155774177 892137448 583624176 597406562 386663516 412401885 524258729 819434726 659263182 683244705 641358826 915641886 117444188 912696071 837586069 911142156 247499087 569443700 767387459 982056477 622008254 923498317 841786219 857355410 784235472 973132772 531748598 674232739 675248790 725382446 103235649 584331920 277873394 780266767 160402310 475028813 845817175 974015798 868082469 902132850 733833218 992626593 951516550 980077052 115585298 942662503 257654679 942149141 26769567 171230971 633294385 824570989 575545243 804554049 492057779 645285656 425133717 472863211 515856758 845239488 846542245 870399136 732832762 830322519 15995230 981534417 157901461 412721533 967343342 998297862 556672518 666455422 743203209 768875351 413547786 847233412 285719357 570994187 345294332 605041343 555638590 882276500 337879648 771766564 663485884 785211169 671677647 976576144 677752878 788833298 467330554 772775005 640902630 840570736 518095511 963287516 695875900 935237826 697038816 958943275 662328257 819310509 855427366 926366982 523684014 722927942 266597243 586311526 70629168 734792077 310150521 441571230 16815894 392628983 459363040 862431470 74655742 338340266 915418311 983888722 636333167 947670791 712350921 898665186 633609466 834322745 747739103 770647326 327961732 525191653 526023336 789862988 561980038 901739981 232282542 436513271 973186113 991423012 787175448 840392853 235740517 461903165 107512065 720405606 81843483 429351414 98706209 322985305 434561109 616285358 203311275 782376832 93018244 955475450 624776158 725205828 657161045 720047367 863640238 931301292 608660855 969137811 776740456 781711641 827923215 913490304 949267381 979855678 208983675 921920066 287058840 369334130 755202398 999176869 757169249 802684849 225797880 692366163 363214170 381041577 752469142 876792984 360288800 614358918 128948324 407367749 646623147 838381344 879577533 902778269 519710181 898142208 420799434 706103453 826350749 956636579 485455383 772811727 78855249 250646121 369906350 875647401 567609770 694322521 201947460 513418419 993469428 996367021 39836232 874415976 511331802 853559179 675010457 777847561 43382158 680354850 570162649 655689041 265889969 900030992 832240640 923299940 26817997 194262198 671219879 985164907 687953132 890052764 618957615 784256140 834612325 839884468 74995422 889183374 252197207 624545369 114063641 182391509 704235331 715195917 673984382 811244556 358988596 607526199 331347132 333266644 746314271 914336522 274136239 767183373 485701023 867913887 813944469 999296986 626702094 997727221 290572569 537802589 864394326 986720878 823480674 984176326 50367297 467282131 428088247 985183590 101164474 689524400 161283166 957421101 491844179 919424809 421598695 591786921 515225747 600599616 620519998 877726089 635778960 771859993 89408826 515148493 343622267 669310203 992711013 993408010 568142307 644739333 438065302 916537622 362191038 980197054 938927594 977465676 654138623 871973161 778055408 943966828 499119188 831916431 342360975 894549262 495895733 771244656 34618746 313981475 226698739 511439090 805628279 921840887 486537684 649110386 172471295 316877058 45831045 204330678 583980530 601909060 796193015 973264923 473425981 871553324 318401525 366212325 621986642 675016358 479372137 680940383 869154257 921796745 185195812 720932329 618609215 671355074 433105678 673706974 476995001 840533971 516245570 635259293 360530232 492821531 507207241 825173493 880326997 991151806 98910700 498369834 920977149 938244702 924136892 940055338 758570801 988177816 460404497 525451494 246531015 278467270 355698821 764962182 93661643 497940524 212463225 820357502 737627878 981164053 677568676 811545765 476522620 993995212 178932560 717190460 348168971 547985954 756111692 883950718 369002806 586497294 286629142 607194955 798819978 841927122 442352773 969928038 493396675 996573147 610505401 684094962 738318890 819307763 930241443 941445296 60809350 763945037 428117885 752053702 179162922 367202265 488157451 684767150 566262951 680004001 279994997 498422575 391463852 963534099 165052592 828281197 441941541 498132744 190120251 198468604 334948163 744821717 731044564 778737050 386365806 634960160 851533203 933368396 981579664 984985615 104902494 432901003 302928406 948769040 308709 644330930 981869329 984301245 624984022 663036747 190350463 824408414 917043934 945023547 705504045 943012166 302361204 380191506 599457730 892010729 198248160 856768661 322156709 592776699 541807738 901314437 518297137 737616432 712520405 899495797 21981242 880139706 469113248 473431043 437320651 874727753 549263247 569326203 234017067 486741933 975769664 983074472 769760630 864842378 375096860 827651794 875979545 950011796 185498494 319458404 686879407 744946132 426820685 805532204 39523942 731415618 132915061 817469356 1109337 324670798 172157135 644228112 978903622 988983350 865547599 934187415 569009066 699304971 469365779 488924189 353237797 810348385 303127685 624686627 997312509 998249368 738497361 930478047 697465566 922302266 562510944 828631742 231448862 540990912 223595843 270458212 269939425 456292470 256687842 921880893 79646757 149580345 340199915 990567932 806688359 819669337 981859686 999953715 758784459 856102493 544592377 624558419 124074824 724719316 503410406 870586009 862597569 940447429 353504916 872869590 540688840 696867949 308403365 814926042 432082513 485254932 927217688 990964644 983893541 992173037 385557974 542716246 587857123 740962876 570381708 622370184 576211277 786949333 69587477 156626790 369656512 474616225 87126308 106932985 468580445 680472796 298389995 792338510 121784738 405731517 793820061 796905002 620465184 830882542 708504678 980350153 738768553 932372083 740924756 897463166 381371157 677610238 54792850 156833053 481306022 846566843 410166424 461694756 351753747 832429932 80764501 900347004 917954504 932635217 510451342 826005625 121619167 424872092 949045079 990769600 373955137 409424274 823998864 925430628 240383971 661001715 326913156 692926617 472514004 679396342 541657403 651945386 322743534 968204740 941600476 965026567 383627482 882243248 503202003 646494203 214931890 458652120 190527866 627177165 999188386 999545421 882291551 904665447 298565806 367495118 397755027 416116259 309419810 625325973 660708862 781314809 920705137 955850072 886974834 898585831 701030867 726714666 369307745 371574645 689128463 823279606 302389256 723055581 744046401 854756628 888312292 906851759 662196328 998972572 395919755 891888942 162628184 255961290 76360842 643203574 963900095 969618983 693366001 762480228 742333906 979313481 898528486 920975255 621752275 860625550 830484216 857350380 887298598 894208260 210875897 998724490 133546104 202711697 769242309 976548490 165149997 626544637 169711722 644551615 843256555 973296259 909007013 996611660 509070643 933519576 282380974 486600813 382318143 434930029 469344256 738174966 510427335 664890172 683456594 928156471 238165944 718517931 484942242 956697968 582709933 844250680 957171006 965403000 645622407 782338250 502396996 783937820 671986561 792952538 224197663 460267324 486496930 559523267 323194760 430345674 745122476 910991426 582521867 789312877 988333721 997067453 597259322 720778015 971055760 994053900 417460307 622350206 663344050 761836380 284549866 628171763 575719583 982009128 611479418 871720711 708168491 784667880 689363437 712538965 604707422 754373758 542194662 778747487 868199881 978631180 485265118 917787653 587179465 691989113 409122346 894635056 523547937 821495739 802916290 959205831 791069912 805252715 587285211 692020533 438180222 720792131 788406587 962464266 329768134 480243963 929785215 955476753 966718070 991884116 800717604 995845850 731705181 805937021 544924642 884890936 29305118 910504459 443034627 852247526 736786909 822289139 699246573 962304352 466469019 633048425 60174136 322944051 614115550 885786162 779685694 899581527 394093845 474268334 947222170 968075497 90024074 705800047 312408862 632851749 156532546 973969290 551567234 644819788 168861625 805063913 210567658 704748093 575834658 941857313 670441363 850623703 230237610 897469987 954825732 961051883 586388560 864395832 855167862 908959991 495481634 498212587 368454631 414653651 583860294 971854203 377707452 469196285 900969526 987242449 34518775 538749216 808859334 897240472 273801309 534174957 96703156 539950668 665437332 665692142 887349329 907758275 685024950 922506082 688431883 878322210 722054057 751439399 403356300 636685502 516746600 827048486 666210051 834445406 94383818 610735002 568138636 869895604 388543560 966014818 398221742 777375206 968664073 978459824 112473138 275967642 960113646 969097242 904880115 936222979 680877514 773731296 778539037 830466393 790858021 870566079 602747579 735399360 822820503 832874630 798881723 872658494 180359222 561557204 980506587 994219286 271078378 522352237 10008193 63962095 327418790 866311355 386565012 908271613 1730451 478917959 278333561 840291325 318329143 835989963 436987516 751918969 984834584 997362102 963816663 968112129 819112705 953004768 330552912 720493620 841747597 893664818 15516078 564957002 68087142 562057108 782938309 988104924 133126118 579508116 530102062 751189474 397111181 786057087 75698946 289527079 688716522 723104606 423394854 467763868 59325383 897510591 794517122 867359264 91641999 343209512 293305665 870305282 284947705 309239088 39417322 793734788 613812827 761748131 795007069 957235391 296933493 642803017 57804213 721560561 303556384 422653479 786794226 930286973 890687042 964647299 171161935 489078445 833662256 912240712 340483631 484571994 343760694 744442231 923549007 944762337 640882520 969430408 761200743 883892039 124188826 868407355 728857135 886106367 946114783 949344947 59912215 611486346 567416214 786659961 401216005 580371593 364326892 747874868 228383601 856445948 12272358 486301207 811071114 881989569 813312389 919923961 479368515 539075153 431944277 997065036 689049873 965645656 304379341 914610570 16443851 324785398 999518821 999528805 228661010 351111939 260072211 875255182 766583708 926051413 650199266 820893790 807050307 819768104 284623755 433173434 125701040 982878545 506235986 852046771 789068744 817046170 3992471 681251215 196174819 253877456 833838387 835064249 72064465 563896931 529975913 625505963 899935771 974808471 654193058 825370044 792100231 946865564 709462291 790567684 493357955 787419248 546260047 645922886 969359458 986006005 479172390 674185795 883847784 940470945 879438067 941991081 245090805 991590489 47937772 297154250 821794967 910857399 844070353 930623361 837637875 868792611 582943768 592442806 399634718 884582426 638886937 672784301 116324857 130530990 945157307 967001975 230501121 888156915 964548908 973516644 833319175 878437133 136572473 850677178 846871090 973214901 891399344 965989764 319300639 912838331 295069157 496502642 76521702 836780210 155993657 598785012 557566295 843806124 808478620 960401891 810522585 872581190 784918158 886052744 108872171 239344743 756501309 934952804 449159733 865361703 275689129 723402148 141049612 789829335 666986459 956181772 324273520 452695711 901893559 951455893 708370898 744883696 827968305 951267595 573092585 854744597 259705916 655970097 855176714 907917628 940816733 966733854 322795155 693619908 499284918 696967584 142035529 594743487 518865248 673437040 310426975 608108891 699762447 881999395 699161172 934702252 73873212 549654420 406368840 662215577 975401274 999578790 379079118 735646248 228433807 580101224 703532553 995384798 82654150 398166120 765080414 824252265 737025234 818607130 442951725 700948227 7514412 706649087 324236293 520374154 385505954 664112162 106511059 692171141 453018449 552916950 564774861 581464449 530752511 791599007 619207045 956716931 388288026 719918240 1145854 685382039 64197861 917830975 619611757 654975608 241084588 423279307 630206868 933591375 206018926 366551366 739073893 752469417 678781767 870353561 421091948 711701400 727130936 741523470 478721280 496704440 164242060 530089733 731919500 923842065 92527153 378373173 817844169 948306059 565935381 827043087 925606858 981192163 208974897 482995671 203908353 510538702 222123957 967270646 741155379 929864952 598253399 695314413 509304609 546864064 425044872 560601291 107076289 901082928 404226108 489650234 403666256 424977670 886058861 963710146 362683153 524127045 888375685 959207679 768214679 800888429 836254817 929087306 641382796 805458051 998543891 999305103 909271547 991822947 297007047 531796824 393231916 769401866 341201239 431302036 713617153 788525143 169123373 429447612 327449192 876945495 438639448 538364047 355503198 463822330 393418773 870421278 831712996 900760441 93060990 786239532 614269931 855392825 616630720 640716852 18633901 759250716 971499509 985104145 773355401 871823197 471147797 551265331 819306879 869142539 44914943 182353897 851223335 957974162 213594341 841941416 848824839 918488750 868536137 909338238 737716097 944426022 326923732 638612547 579062089 976985894 415883898 478069287 210346599 213968323 960012446 998883330 760620318 803714367 282767491 354674376 643129377 728312247 468105979 660045246 713017998 910481026 965991622 970591785 145111150 793981480 47583275 783575677 300145032 681258044 918933133 932780100 654853199 785513375 733465630 925492654 779375422 919995347 446902734 654487814 642255515 917115870 809936613 842909691 92696051 458845454 244631518 291935979 226307099 400866566 325352180 906701227 785463445 790086056 31401156 426752222 406943987 858263177 627155694 998757246 687263837 859733098 141385732 649663632 945112101 962606778 142073485 670945904 317415365 799051921 606002576 994951765 660761978 897390795 702224533 782269563 351335009 367886152 625695341 890597864 330840391 922002302 19654423 148963368 4092778 366080121 316664054 942630565 366130936 998449579 745416400 948850453 701616694 965476489 114383693 296952534 198359830 722347460 66550082 127266919 434811643 959068341 343439641 559948321 595502919 900984295 31437042 106232987 664846680 814199183 588081391 950614836 647613888 992998183 285125059 529623985 669250803 831229023 792912920 956750680 95681355 488238954 948865173 983006374 949153222 957465774 988417770 992596212 687903978 720488522 648765753 694210376 924938433 979164379 430624664 660152213 818993402 910918227 938064746 987106429 957069059 958393179 992276753 996882392 197900200 364843014 590061558 716678327 985871610 985995459 223712792 591716731 449352178 872907838 617120507 752739834 843709206 946298898 302647244 778462938 770107522 985791172 92051148 899354395 930378024 936638838 965001811 978340976 293608536 492958734 908651493 931250481 312471140 687423718 533493478 806637678 483626528 507598826 842470178 853397477 302783222 735940049 350208651 514557966 101751120 975332198 731047308 785941527 171838555 693804505 269226020 713490730 355948426 480581200 330702074 827487873 301827750 813086535 547109544 746720333 455500224 500646327 123610563 732810974 743597005 878383460 206273293 982410654 77500708 849108367 15217634 423145661 317777494 339259967 948841416 954671870 16695789 487421617 900872412 937655596 29112316 957475016 701010088 866928808 884116079 914383179 265816536 513058393 134568679 866867829 616258001 721828787 593531102 770487916 369787928 961451856 249664556 944864601 236102008 771235309 871091627 871712324 227912271 362021560 213311230 678976776 548325276 794255957 794147370 812102669 654529550 702104639 329052439 754825018 222150191 735449148 301287571 608871678 341405841 544461425 161714915 847028838 968799210 971116801 97003150 770228264 903381623 974380314 520134406 935428893 365183575 817838629 290420601 395937993 116979513 183859882 33250724 502197564 206813894 879102845 62410440 911731928 328486102 786667565 401555877 971730381 547668776 927844168 489946425 849901234 24532132 513446737 752890815 891888722 303076804 509935308 807924282 973327769 903870333 940170951 773513452 851411413 110315470 657748966 499054224 909053741 638799156 674095822 668013506 757836461 201331778 584696957 536022851 636235771 950191558 956391306 813509673 879805078 573149804 882361761 843672198 870688481 320127696 593819429 62354091 544071372 498178222 693264708 640399541 683286908 194649699 263250074 99277440 497441324 777273753 814714876 45928106 582784599 684799051 740588935 746062914 759021826 136578682 813077062 554419590 889410427 221889436 427389343 88132862 393196345 474708436 972574365 175777946 820019200 113299785 515630627 906294305 913558570 32491028 811087611 188482817 460599188 413760287 964864794 415634163 949979451 23865406 339710118 730050191 997523049 62972943 182443852 653209001 820201955 500014467 583681055 370571633 694449687 144103616 935558470 191168029 409152219 673439917 864205208 523300472 826395452 922142010 926572318 357296443 593688390 346571918 470668924 281202663 643426705 121888927 651686318 708941043 950487078 455309104 583117905 947689406 982363506 368222087 737968491 250004549 555513580 945669125 994196485 658485382 931434180 868283544 986619728 416134645 425945848 479151382 757238895 470631222 496221153 136078209 889632789 827096003 887489378 252143699 669263402 855925745 980456166 955552502 964841581 277423672 457139342 925484229 932352846 535170811 681256318 1068528 994146467 644960813 664329256 164821250 419432513 773102175 980230523 534302728 594086542 997652792 999444512 798505834 842640907 421695025 710425753 875616585 975339404 686548152 739577003 710387497 797471878 910319107 941222382 592330474 701315686 71739010 702810608 927290503 965639471 917772778 959474530 772722941 934329686 546402779 650050837 998475326 999297426 120424131 912989978 926647351 982265519 769186208 930084373 303099821 597851274 52368766 217014870 666413804 983978955 623906817 651700343 451891805 811375555 835347099 891777287 317723589 380744085 655662618 759338332 904733601 932711372 883620997 894469507 859996953 920220942 656960368 857668917 254201781 832974461 138853296 627189043 252541598 679801126 181312731 572628442 878628925 903479866 290305258 575663597 323844643 761840724 278164663 472879136 292969655 465597809 525021952 616083839 860471769 912052504 294809570 605147982 533165415 674217995 206610864 797923754 649362043 833230883 841588315 974637354 605002713 884232649 893191914 995871098 71616269 708902529 531104959 603732506 898086621 996512108 457961897 778783180 164745895 571267241 23359717 548641635 738348831 900222741 113591044 978607186 527021543 989617119 569575727 734462908 908662608 954315113 817975371 960290715 558703351 573182655 703786653 738016338 70600526 793803974 391456482 526049618 266083667 766097647 865438473 910409817 744524878 920617419 647265440 890724137 871681326 874532169 840004906 978617979 195341977 619919314 142099817 574696133 169729928 584767475 151097353 797586017 405603851 815366941 174656248 915854623 314920469 932047343 891642741 991332653 766021215 894906048 251327171 527198150 550585192 817731314 89146709 974499260 665208026 895833830 79004534 774360243 912948194 939894309 897934260 987795513 819069927 897114566 927249507 978700092 511403621 903046259 207026391 217996665 278883304 373740564 255976631 557454735 493191400 964738640 615291980 674286280 831827977 992766822 701573496 782246596 929200692 975263945 222770093 649342453 362255761 624377146 746388944 901275686 551585110 880083572 138541899 458407709 799842984 956709781 236818781 654748572 651729692 989164506 743493443 829084305 345967682 613885839 362321485 820659739 917708009 928234604 595833198 707819332 25930300 503453861 473065243 590096480 180996940 973778417 993906647 996162992 237823798 559219793 390011756 829491430 859792418 873954781 626652099 824114205 164975842 253944544 733295189 938460679 763946543 790613783 158264336 906924427 610634078 670391198 876621031 985347298 727580716 911583663 395158580 637266751 811271407 885422778 727595884 908860078 532243910 651322858 50298093 421971858 702931051 752233711 748523560 916253521 771772312 943036982 952168406 954275642 535949980 896335815 26456895 895381350 446758241 747476865 267775509 613084286 218576134 963383124 806926484 879076533 895958468 922824902 307911642 412888494 203761076 560062211 237327119 357716255 875623032 923706611 273484778 523010396 39554804 566141100 54921285 267697471 881897574 915989920 440503123 457276474 819825829 884334383 633291274 669510593 820731397 882152339 635960221 929159273 615910270 773827531 146058662 890092543 600791604 734674204 858146016 962870983 842206277 947219688 605146119 723719182 93270526 270862636 711218963 988348272 151056236 744135549 54231078 928389780 724666248 891666617 960264619 998062934 671067124 838547415 986705735 995167696 718707095 799549343 42604706 596304576 569645828 719219558 131143960 969519664 865725213 983785411 246568580 822582346 122020781 674984251 855745476 925972947 95276516 967048860 339937614 732775351 624917834 872875276 557617199 847758131 875300993 900096322 845437423 990095027 827665747 881838983 973467773 981033271 610169015 622889982 828608420 868281259 354910027 598125099 998865633 999041693 757949859 930149450 210991464 852757408 121703690 739733148 665072761 889497968 306267148 604095216 70320879 228613477 229891331 729503349 686650520 761041286 541013494 811561401 277819815 879417250 547584354 941434971 753085229 944555359 917591775 978444323 413393748 865739402 584446892 666706332 910542741 915202476 736713648 933430578 257684949 964225792 689673955 923077457 6649059 649806500 412970844 543818774 477286712 612830677 891740942 918484977 894934032 998908591 818222249 914584789 278502205 960099886 835540603 848976361 108712216 565404560 314720086 434145297 810545369 963377466 120764608 956864148 272293244 750303097 262376148 426323283 777238390 777945849 405186844 590266710 739716422 998132007 220227866 326640590 494260 91272619 387442083 978883024 873208388 975763167 298434329 374798886 908801305 952409372 950913780 980877648 17523082 286673354 36402214 708828472 11084291 128038783 303780996 777370642 530353974 885286291 38939000 73762334 718461726 802100723 58406048 132671874 542504563 837227136 920248535 992446727 911311746 978445337 422128490 790401703 248409613 847446037 782839461 795039984 987244583 993583977 596657707 814867492 315174812 623905229 389379682 865228288 43285400 908960512 344704709 373338364 780437989 897413303 116067521 829592249 362876975 442877390 537203249 704462341 725530230 913773433 158152596 632849789 456007080 707367758 397117388 773721905 93191311 953200878 21890506 262029923 961998789 983687532 770815303 953052362 279450679 745665544 748121029 840666925 464207271 627154517 420496114 480058886 35165424 159494821 304512456 753276576 335558584 660759682 467564793 731131959 329781146 804310078 397450879 706356051 533159722 685101215 468590387 879227839 860493069 920112953 32603809 648157488 392558845 776252086 619580023 928540807 457163604 989023122 816499384 891711012 265490663 629197512 936827588 998959476 420292026 523711976 626030757 946048856 190971014 689422592 574665171 722180605 9897898 189319944 594721231 812109869 245069577 720598052 652359780 668910823 758475587 805284744 847832230 879797376 363512539 831677974 461397579 464787833 419426596 739705507 530276627 777963642 566558980 775873105 269253689 930657778 149308884 436798951 691569073 798879318 754296450 802970309 144652681 252951666 593929793 765585993 441447198 769646179 977131122 980660031 869915905 954788786 257441625 481936144 271554935 402796685 520670505 995833489 824160809 835541252 281205856 911633402 571421025 595787373 923768372 960616063 36815829 739648823 861629932 949351786 196188584 668414964 203902533 485068575 653923049 841173822 807423760 876935001 762806845 784729350 46537718 248993265 828522623 846148967 706753831 848227865 672183846 812466603 995891358 998794856 845321165 935260684 53873170 797496228 57412380 757171186 434896832 925754088 970958782 973253151 576560933 865082581 110210331 613398111 434626141 573174407 330251745 464032922 485040116 705494405 995243182 999926326 205507702 516718911 335009053 425116362 974276882 989840576 762929246 899342335 502905262 851216085 722387060 916616256 537206318 861719124 88109101 168534186 567984999 607077583 96489605 606204751 24169000 446803241 916755077 974907112 438270 238360821 250351269 833447530 787545794 839310413 145360020 665361267 667477227 881942613 613123357 634826737 849991056 996148587 72915274 118069928 288550 576521402 743134763 861609402 992192983 992204261 321105580 646911339 52861351 663133880 494179517 767492677 220955490 923255698 548891020 734891483 546076177 767274859 115003390 191309460 968389558 977188878 535939762 738733939 317316204 988110289 65474708 889942383 298461922 840503577 590878936 744218395 562488284 992307137 758191994 914084619 73874564 974839624 260009307 896032173 447676455 460560432 19125630 897598720 124632254 423259612 223193022 440100419 522405355 984846516 766015079 863971405 437453665 766980385 301893076 436337935 721953953 873796511 762115668 814332469 665623337 869483421 233969389 669936760 343462829 691903341 232470527 521238287 189931244 792827176 398779025 477301722 503908032 737056892 166368331 620569722 912042583 970199088 216559382 647164576 395269095 612693918 792096121 834999685 149985292 609483275 897178005 912564197 875201029 928231439 278696773 398809845 675792404 861562698 419833848 656385457 702447966 948590389 426667775 495514305 222933419 609983860 562220904 695476852 716489153 774843100 655548289 756268126 851171556 867050936 212424626 521636666 836790968 846196081 927295662 933009509 426132365 742122075 97419613 179738545 392664190 846682960 497476953 785061310 769572138 822091958 618511553 898542430 796509997 933916634 620393793 668206653 775493707 790827555 329443460 960919446 700362310 972617428 938718252 961648243 371615254 940108545 16717681 412365977 107565160 985216040 271296737 272524743 153194668 764294998 777080319 798911101 449592314 859937021 78759449 352936600 452974216 678484129 992267745 994159940 306977742 356686299 683068448 693977645 550590957 679444765 118901828 373730299 267080111 729998994 637382978 895454202 990862792 995412332 421926769 788250644 333920184 519961140 749654726 941588113 971258984 990707451 58372075 956483503 735430078 843410925 991269891 992730595 690210013 764005046 796066134 950398171 384383818 794957973 926435622 970561775 466114243 472490348 852922408 960686541 7026700 653982620 605395533 764708012 575224354 577596076 155465935 697389206 502385622 943060059 519748300 615225759 40152532 971822877 312766777 638929121 890588014 910415959 834017685 948158475 57164218 555123864 961485143 982174002 784243847 958824547 380868257 702998063 641211243 989369483 13947448 135303139 445151992 748242120 549055229 557190286 703661115 813699940 946570916 953721091 772763872 918930979 479195594 695428024 77652321 995141186 427815037 488227500 540595836 697174554 13383200 24768552 387816109 753374021 775445670 809050763 163202725 330408990 135217155 745581031 589031061 855019872 657507957 812642597 606482017 776387044 564921398 904975409 963357698 973621846 104018534 140247294 182184837 780961393 149875750 853943398 74565674 655649268 650829341 780336355 421399581 579640647 522024846 814224939 571149701 813315069 588093487 736914863 721856568 909638195 721514579 730524203 926070525 957523390 362699179 375708711 819632915 882219825 985347164 996685582 500144033 965552305 364954294 560071201 680682800 946614128 579700549 903759052 144487009 624699613 278447374 615583998 983334576 983634563 556645683 569128341 948252932 948464589 603034299 788927536 425277994 599723692 263415936 306556520 272448260 750753035 659056099 676829441 271690293 725661687 542731932 851731659 256744310 298094204 956815109 995920341 601376161 758634867 330499105 929401263 454400007 688148650 675424316 993332911 503388977 994244496 218852566 482641550 775628252 934844217 287380939 539872898 223651654 267956087 390304418 484151259 523813894 796724862 898043796 940775267 560096317 664879274 975248001 977176176 294195312 860917805 876073733 883866537 960999773 968742284 685044302 928117792 840297491 894627889 340374199 843185348 552524638 932065900 51505459 457101114 363276000 893983096 890486728 906358806 549540399 813327455 546209202 603134614 378192242 407627361 310328675 607195929 306798386 436494703 200732482 783697915 834895341 984499177 196767633 276224010 512957073 542169780 843640162 904750137 3271413 570297987 866839592 987569672 416009549 985009050 408292568 503422558 944742502 993354589 172540725 895999446 334465737 660990085 32035957 254211737 77147921 326448235 365430211 578203645 664276909 848795634 334370893 349657278 917170668 963819101 719302596 854423566 80000805 448063052 735321543 976681153 473757102 511661035 797405038 799178647 157571585 815499911 866913243 888032746 94284990 768548513 187779363 907887389 740061124 971216247 143314934 426072753 364452291 631040301 566421123 740858036 477530010 697255259 382873999 566946095 817802141 962191452 105242633 966949576 538717859 742247856 75297724 305426313 61291220 259805407 346547571 959765216 450964651 513766939 472154243 738023881 356600035 654197801 590253415 702644171 496912195 988920603 715269932 998307706 672718895 691032578 170980072 578616404 577322798 969691445 587242586 880753058 64219557 239929388 140021886 484912177 865875757 957902510 786392352 968939248 295957641 318149451 965360977 996963112 259870961 685900447 501306589 997428006 601485599 608502714 291769898 758327159 99123624 880329493 972758444 982015781 130389263 927750364 105824996 318429010 917815331 931110966 576530389 882172222 257665219 903020016 955508535 964228623 712230810 817847879 172789602 219867249 338777265 814456388 944433193 967495723 136215116 944722875 42522250 887471896 940240684 953941939 64389294 780757556 22649949 782309670 968434797 969735294 159591197 370803632 589833653 966566458 992836848 999566743 799962727 914531212 984384174 996702569 603298258 819226411 343334832 625712524 844838294 928024081 719854276 865426314 979098125 984042578 635510288 887422813 137729698 505454728 705951988 952337451 548686008 580801178 600780444 623432424 11741151 338948811 80640037 872594934 82565943 885845403 749131417 869452011 696213846 754451216 819636839 942046040 395922965 969707382 903181133 965042254 221654898 402337938 732793642 785126750 230888921 555177710 993098602 995412445 889550125 988933525 688208285 922350989 589602594 979356780 89549881 402490711 50457326 284488144 259113430 400868627 817882237 861268770 723414132 731180445 127716812 316842583 859095682 966953874 587196868 923976298 792898513 975031808 736153687 793281963 533698503 589663803 615802078 968178982 425275491 769615417 389251932 533083251 313826731 461087631 348724704 710145765 779819744 800649846 719374461 979640140 225237472 838719008 405969286 587086980 739077912 931627453 502408863 692917807 16763672 453887434 466554608 868508886 266619980 864920707 812218601 866331444 728952802 753531899 829993331 851803472 230169540 700579293 380906542 824653282 403803019 686110588 950438286 973054240 790069889 977802801 122430789 784012223 936085583 941996864 719231334 771633058 203610411 345357872 844259938 847020765 809184222 844095516 695520401 972367920 669535120 840086759 295869480 511495327 30171402 328355851 694291824 919862743 289831138 794368178 222139707 280921583 147196224 252623407 574858353 895994938 628019656 775750540 544555775 857043432 166361272 766287760 352431107 974746637 595725929 840517988 624787474 673226772 176368503 924271523 518415438 658507341 502339111 571078896 560454798 597940472 994938962 998014513 938049573 985707590 672365616 767790251 282114143 404509395 173868286 419204007 608731931 799355790 515825151 940855839 173116037 849092945 843565665 928540541 591313982 591613026 369393332 622915630 74401790 648611734 631277800 917546595 707433743 873753579 325314247 722267784 34310357 598168214 221931531 815088406 412446296 949587230 748592586 754700622 187293773 310948223 11235915 870280223 837315995 839997498 411911549 550668677 814446526 966953247 759653078 904417374 80906557 167526889 958124028 961760158 89102292 355414931 829456615 886809542 365417840 377704214 430633092 464647265 251638636 930937779 461362391 533680470 127931072 977412928 104269434 355739593 121436022 509279517 645911482 703829118 237589391 774744418 567837564 848598603 979420896 997194370 313761449 325964982 317857354 426503206 715109977 938662105 768912708 976055702 771905373 916865173 708952569 969282450 732410055 858987433 630359977 836061213 398386313 489868142 800580557 896515093 276080843 906364384 344740971 938290479 566227976 829455546 319768501 377545683 656962382 816137188 801448322 992259742 791017013 888448807 802721194 908068179 949886882 963296075 658528051 799885127 393109199 925097220 500851896 601865899 57970811 835097590 258157502 884229724 789779619 976252644 752495720 897480804 608248095 770544240 573137597 765225210 602931610 641258003 944326995 969888822 164796606 688394476 295829413 645110319 99928460 616346196 694713300 727899868 634952529 765089008 867534545 926757213 130193307 862089188 982841001 988348334 253707691 688703356 351768326 683969867 339273842 817542567 18504934 300717890 642164792 646693242 558784020 808095318 565046689 774210841 728448175 902669156 424335044 471261398 884486631 984296387 9736579 719470444 24452348 642258771 106506586 755137524 736791381 874241142 622332454 815283039 834714166 898135110 319948077 496835411 947342460 963825368 365055614 799206599 846690426 926437021 515905930 788352695 802814979 889019972 17613049 547220520 205559538 868307067 258464814 451775702 80878016 569447003 180545912 340245928 46580481 321554590 776800086 996510212 669165454 797317572 948380519 996031677 497977664 866037252 260980715 347905677 30536686 937384399 504137316 872417964 205106897 845198761 408439959 504598454 173695656 466322623 112586299 653654238 149037130 364388041 768921275 836555049 724433523 910882992 670280615 991132227 486013093 885410669 676011191 836151393 436360369 608678351 859649447 882083828 506948432 825380918 764864853 910701810 589023121 906553620 564567454 913505978 697151468 952301323 573671407 663295762 42172027 459367435 114660611 918301600 252464430 257553297 509956116 617566650 836907586 852744424 560657001 902326039 53152965 675509491 154922122 382371515 105786027 616007191 253866092 312340278 169858976 337711418 152118705 958853686 214814321 523400248 808196125 849581835 625483281 635425321 783649983 798656823 931514204 946789629 911250203 921153066 212025021 824801169 828169873 938405599 33768073 724273506 22788332 325947561 323530395 848490194 294349052 417669986 67053085 712957876 607836342 839926729 71561759 150531200 790691272 906696158 638193199 814215523 367922461 525317028 120438688 620535346 954502634 999846501 252183139 923135622 516142541 536531034 825499203 976259865 341145506 768354708 827302656 908757813 815080912 997732777 421588383 527784815 138746291 175262329 466066005 795809271 654464038 932890086 154981649 787340139 920802239 993349281 497174600 827836456 79697330 882410926 374280955 535713303 536826555 547263556 764135641 990645156 342537580 911924939 157790982 526369670 533531173 744178944 589064397 923201979 925472132 953060581 933453264 981998784 557081801 963221574 856279040 884901942 462855318 877923797 68787271 566370426 909350472 960829734 566125333 610690463 630855362 810471929 776647676 869868386 208080708 815889613 616180493 644354751 954540533 954923600 419450981 541175338 182691967 355340464 184424980 703341191 348678919 765840000 436114007 674129767 424113109 545720515 742586093 925643022 130289135 836078619 395365020 855891190 357719301 470668089 119663737 493773537 974243045 978825660 39931821 784901189 251087202 333256749 642569921 896237016 627224332 966783721 809910423 936062430 379911945 784315988 780966661 978842473 522644412 918155488 710859346 929102278 371148824 477607807 408997081 814208779 215629987 847527053 778459481 910152740 877431171 923192734 353113651 435274977 531922335 979691426 266497433 762093550 364519565 905165049 119655605 530357491 149211936 860003139 6490058 312503680 265356377 882599824 643353214 868792520 449940134 607725149 575524499 836558004 163168293 700223264 767822771 785404955 857855523 969721861 960303016 971425842 821911158 984524222 849544410 884824793 214388671 292665031 453540936 539958310 330836916 932101723 311679205 866425922 288381652 643964972 612887656 682610345 452611325 897951189 651463715 995726459 646451855 703958836 636246513 901969438 295453682 433066783 547585288 773230796 682459475 745109496 543782985 585088058 955724203 965446048 516483148 867971277 795799062 838745821 533835879 670337337 926718541 926915954 902692433 928935097 612685347 636055348 26101755 255812380 41189880 97962058 45247535 757008075 852506386 862762080 988448439 999315516 115792828 601940449 992011779 993849141 668692286 676473615 636677154 941873354 474122325 807593885 490057548 800555076 377339591 482751409 775889384 851127941 619261880 692875674 968835056 988360819 375549709 478446832 810921250 958545432 821254923 853490724 883641008 961376217 162675665 796376791 337068170 800636294 155060488 606485462 551819447 815696243 94268014 810516416 390350681 435278947 796183050 823443900 197194704 894068386 270456545 324148833 23894289 587515783 4187080 431512199 886893646 938724998 644428515 719738044 621031757 922533193 437448498 732809420 3401216 146769794 173200363 194012986 920266510 978883649 282375272 366035757 314219713 902620862 697780641 953031072 596340824 767716937 948830532 969981984 886372560 905511961 635542117 909171357 254600676 358405331 809583489 816738433 417873068 999199157 811471718 869387386 111965648 207037085 425538152 647163038 707936922 895311495 758378942 769710705 313680163 548601698 931357544 952601606 813836508 934082982 327104773 966946294 426788653 802689951 637606493 921068287 505190205 511772269 304240510 369599922 997566413 997919144 335355362 985996847 116183152 119368855 805849868 823386449 188742669 305319438 900794491 938597389 852300047 947319623 326533392 501588713 223167812 912840121 910909258 968741992 729931170 805910133 423054163 954923534 624609812 929612479 395458330 922578729 636643083 667790241 778402234 842408370 327597554 850233645 689229824 729471991 661753152 742013238 579444386 915120967 227283672 843704192 245828582 503572181 876574907 895818328 663529696 946485314 551907663 709398220 190320504 492116136 278164062 744758229 336484053 587788546 540103403 907947776 766983454 776467272 972665219 979781590 358852859 874951324 182859690 969791045 343050284 621274826 561528876 974751152 296017382 722864850 337606038 411913311 995524641 995959584 152170777 159468663 874844409 907253271 471488484 890607346 498162915 636103506 728738760 972654555 169002322 571718504 57412092 332226314 655803464 998642499 993833986 996403667 887909057 916782916 591017508 659072918 273300524 600132414 100608402 433964593 470540078 534800849 899928602 971087437 711847337 760387609 818402427 828373541 535123635 657186782 241832502 868802462 219838094 553932891 504462296 518442109 851910531 944253052 673786947 893770797 790078333 800622031 809426753 856802964 763762578 778877101 910291438 968618366 498864813 840223825 598699858 738733808 769078828 884241234 646662697 926843723 197155790 548389710 289313544 360022150 858379613 891330408 152225169 845350475 465560726 634434570 799956527 826062046 794138416 956119298 11211563 78791777 533080825 815277848 165383568 286045518 634716717 691312576 267423761 832091081 760200606 851205272 298288956 925298165 428036513 988781217 311850922 908411814 397958717 818543791 558854119 898957909 176434937 259272226 836517814 918872948 374728586 935305804 832868545 855665814 505961579 947156261 885217952 984843131 605806792 841977074 86991261 988906935 618263435 795409370 960582848 974762693 145199904 189036335 341912395 449810776 918620238 973591154 909796845 970844668 142093210 841388295 793040891 970291243 402040272 739113772 922996305 940671607 232904975 764637346 705990078 732081574 967310976 969787150 563200526 634043422 674744841 886396876 518245923 722342461 722026492 905339091 861255410 930273642 79341521 539310757 938890434 966968445 647168148 764900755 560173919 693216832 634390952 860465652 316746771 756506727 808781527 850789457 490995778 828232916 890477823 985342614 279960133 320070708 506958720 838540564 537840890 770413594 403167315 610996507 809602662 835860845 464561267 963979231 847281104 962583332 218871332 259824455 895383104 992875328 685847635 708947059 651429859 793218366 194164843 234743636 17601785 970193773 600829759 984588002 272660998 638265749 135399829 279716078 82635099 897124485 224479029 982326316 54739158 976694282 528670524 556789377 680978897 953187809 715175530 755962894 195135859 760766363 804259382 841251068 9572474 182173303 715560128 717119326 607532248 776556901 901643533 930318461 104865713 731566747 354160683 580191466 204625595 633595528 519642200 541599110 279995225 698943151 400291129 855660150 333816593 608772656 424281498 439575687 605508809 640821537 967488266 969371060 416080336 840023432 186227670 420010496 371981595 515113824 967939797 975144462 377884724 654349086 566501447 612623225 928203202 984407634 325234078 761192796 725830080 996240986 439426134 848612927 23484138 817908255 784328677 787132917 781320747 921648162 550585083 774123993 222351001 947268269 82367954 402441784 127586481 480549668 98854599 504411044 62014864 745073301 286888507 827124739 355441757 866198232 805604701 982262315 379333053 577521595 102062784 405413995 957451837 958410042 87332271 109749332 378192834 431353507 696175858 959663090 372295638 834163223 816848003 965715505 549946947 706539818 619343928 958948550 312328431 489183144 889403312 937736547 252402244 855497618 99799442 617307945 812741931 879908598 136186911 563616518 367958181 784521454 392789441 789622019 678366927 839920125 230694768 572261645 177698956 609289467 237810309 715538613 758349672 930392681 148538794 467621149 341999616 371892452 145022118 424752969 927870358 952785970 433578509 752648987 745976283 784440394 570948356 802817506 719878329 857280693 991769790 997553830 201475282 340473999 402721827 418302173 473280686 857358477 517071747 593765513 538171418 803057277 51034146 735836975 36848039 47001286 652279399 668442618 289424802 690603918 842327957 942163605 218307666 765994311 3985412 575389565 62585127 768829502 678937771 893661005 452125238 725741210 346661477 766519041 404732089 435873087 437059559 953568279 206549957 962272290 533274632 759074495 423382418 762057883 958082989 968888365 171979501 357260385 555299423 592274445 92836401 158037920 694000883 926419912 766771273 896907127 935457272 973596313 113336095 369939509 856647569 885227513 587269887 847288744 964240747 984992059 555701694 731799275 103667384 747427206 244438049 351354803 780082703 927005804 905848180 976164663 551479201 592469188 642907321 748903732 169405271 610351181 509335815 882748201 506259404 771653543 72756730 389151168 882070136 894574691 773083950 993955001 517393691 882727937 697511355 919129628 66414783 552284887 939674985 944832990 207283404 222926310 35157984 702378926 757243856 933948309 148027388 798512305 296547284 411089921 666193557 946479474 387183820 441599679 370526194 832140153 449341895 909197512 706996497 965279175 250562422 283542357 797483709 897836026 944707263 963352965 277133955 319553929 183121527 596194714 755752323 891436320 988825178 992792948 341998917 509039790 7420239 666228241 433386036 905720506 382410491 972067733 808020725 987717345 380003263 920086583 554455249 884292939 643472323 725091568 958740426 986200570 131640762 349994155 442290673 614360521 823618763 836588188 762018560 863574924 21418337 665075074 858570721 907712031 310795727 591501144 781965592 802323215 230294327 291098109 917600844 972607359 241216533 354325078 511899097 796110587 54791388 850963268 70374679 751449097 966873587 991966835 129731939 711347951 407597663 489078180 5972779 387208126 693179700 888111679 603225980 900906579 835382109 879423084 702155288 872787253 849959548 938066833 71839141 932446814 282214698 776360511 447981535 948401220 487416909 816943749 389577948 865647552 751819058 995970025 279201698 423458711 51081881 143343926 633748507 958989042 151246560 681778834 60189380 391310463 860593130 998066771 60661782 399142226 920184242 985982138 160867782 770564076 268954980 812689663 603061328 633350879 269355985 818402040 507876414 775750764 177891515 438713287 574518499 950526461 190212740 750656584 2379982 182803217 620832450 899424976 226052275 586505164 907969631 999414637 466141427 831434553 204053376 789824367 893284481 997912360 33470466 537201809 268610075 681542491 103146385 409113931 788102105 872622558 346354786 772316863 425882122 540195732 810200377 959153003 136759274 388083889 781300291 894155208 623582991 982923093 412878168 563216021 556331822 929113496 102175498 667201286 620942215 664493765 470905866 653010253 57595368 129023879 480692956 690372033 507980392 654934890 297325381 602394397 610785205 950427715 487899851 797043959 662685862 856884579 244454204 454593634 278502627 793217497 718432028 734779964 246921149 275512371 438422435 715622822 220353834 940199702 147596419 835266428 981195209 993215834 225368327 936169472 939129626 985157038 698183710 721107216 643597567 657336199 223076921 310432374 403813416 590701546 201220670 689818620 686313902 696360288 963238031 964297564 905422862 911193551 505003445 676205105 387628689 963799513 524703255 834888642 449599451 487889269 446531715 490871461 402951354 578489481 888249868 949487393 818532547 943229650 230622972 775361371 103388811 368078535 99301724 469206126 541479331 894683989 730670159 911026323 67619499 427356086 846988319 939120252 117210659 264899783 761090505 886420906 585224720 943826251 182632040 757107918 811970544 881538372 979636854 989374989 758083132 961116346 355524048 854533025 956471131 987242776 422097058 801944650 604057567 732288209 946305291 997349695 283635000 937711551 912569202 912786685 334487581 638063073 267791499 503005016 843798898 886456880 849742330 991599872 998747953 999103137 140227674 214987470 920304987 938615353 926142759 942577553 881297107 980411200 744281245 949098023 787170282 849137424 811912418 994065934 774624817 870520048 559374204 763195185 620531597 660277895 610508641 655179187 412515404 469964916 218557085 693585787 739368974 780700634 219503932 444404739 624719050 823264194 120164246 651494779 897538067 939608613 35956828 831972913 488554116 972269804 219391260 744771694 524951451 712424096 125700500 234425598 216356203 672627905 754153136 896344959 290949149 449612305 649728475 841685519 572217009 897072220 501621150 646589810 649987353 858776114 136784336 961257162 756878942 909847245 898636216 964904010 332851655 736860926 115908902 919021517 279282734 904292987 20375852 365782357 704779637 988926233 26433001 962970751 886205832 949699007 561232013 762027445 8308752 525937259 231624510 911458779 435623708 899031995 199372760 691337713 969779824 988905028 741024372 930321545 321002697 555719345 367753639 825985205 162520902 362975398 987570119 996605534 111606852 849422622 496495315 893785142 627490526 721300525 622208720 801372777 979494858 990540980 665483028 801410880 34921744 125462738 118048241 191052451 170721405 543859087 375348476 965871356 436944892 988430368 124706778 574541518 424513272 583919980 164580406 234456082 493604957 648784919 369062874 862483814 562016065 904993718 330418553 721223105 387366941 784922784 490180858 926844512 880516524 952910322 313586603 775988936 557560709 988675132 701348805 836900464 786383308 872225553 413627243 434213527 635453170 691568543 107297153 869724440 350355479 622740102 845729379 948009238 63605499 622455586 10821249 780347471 16996254 700245127 376609117 581953387 552483690 609968933 215503008 991736944 607508775 754496378 607810984 951798275 592772311 750690600 112625281 395432012 56633518 925495237 465687594 608838549 475484531 687391877 545749547 802550413 118308352 435687196 96564995 693549708 259481698 551529983 916704197 990131938 730257465 821923972 625951440 626001229 103868008 955900942 568315932 737069573 810091817 938349816 922135842 972754677 659818094 815163414 8359369 782567114 245827288 370008425 302446303 642353103 585242711 652367404 921592177 924943242 402733827 522864922 725971699 953987992 757171396 797219391 117521544 753060975 727198309 935061839 480957943 780860813 786997707 950965273 721275149 991749693 232703960 528819291 737028171 849555444 67500224 275951744 223962195 901040501 929944882 986668450 775362575 900687360 470166795 864414003 862772257 996004531 855914075 887287400 453339154 498394382 544437359 565798391 988898440 991457979 192499987 931273459 266055479 474961984 975892703 991148938 226917362 333598487 609995326 896077078 733687884 938726833 990110832 998929047 498775611 565443882 309331014 826977152 93866129 301305996 107348820 296583696 59385411 782720781 766469831 911714371 678356189 791605288 969204853 998419947 166799257 989497223 625948678 807845382 234335473 489478964 546318400 601542829 166219559 516326177 939886607 975217351 421053576 490982369 773588001 994317035 810248824 854373523 429674292 807423896 815516840 861100722 641617447 939825733 583538903 947138114 961624514 968938158 770514905 828994571 673851484 904990209 145100528 828972305 326474253 590742318 885060449 962243600 870346968 987099861 819584373 832215991 999372133 999428017 165390433 727455249 996837900 999725839 169732593 285433048 747866380 961873793 73542980 81944912 707502701 745691070 801667151 970155265 636279525 650902747 20514273 311072864 785120030 795197698 110976757 207455193 104843125 443380864 559127713 654512393 328044907 414220078 22907921 905775895 272757029 478864560 351146809 850874556 959335392 975486819 575369835 959439281 3299308 275742145 751607225 815549096 461779517 980495100 811036593 859656814 467993533 901379226 164519005 670923004 637792477 885815436 118100352 588998208 700076853 972977361 998223996 999545509 343402005 512546683 839217448 993100283 348047393 463305935 635828931 834299364 76824565 749674653 930972048 972399474 43023076 520557966 225748231 250607829 356805975 750743296 431121985 468377332 703817920 779390299 815106665 868109435 837682923 969275203 813339326 874592347 36637235 511210251 487929644 583017973 616953947 855870049 659297476 879955920 906189575 989073534 728351799 736336859 647609461 882739615 831258488 864968673 905047124 947004753 548701288 817021045 415577344 929835292 169952528 657989108 307024038 630363730 481137400 510936465 82125598 977465449 247404172 308670358 90374713 517186000 679269914 734393190 510108170 964496005 326874088 584424186 189667250 371781057 961324007 967806217 571581473 735453687 863580458 865788566 254039180 615827822 16219099 254286403 672921267 869144651 953549035 973779408 902817143 942112246 458550729 567443984 86653229 976620739 683624641 714657085 841233992 943966742 109324037 113451677 596813601 699071401 443682554 596803419 809217716 990361078 549058531 714820492 295611716 535433105 316318487 408419815 279536878 931125869 461062115 515651595 317017804 572656871 573868634 620991540 768369987 864230561 793923536 851375258 663971430 848888695 302562320 708736196 243175330 490230570 371404255 927956535 977478314 985602885 637465637 788137211 521853956 941052966 504826223 903705763 762118833 834179413 990417478 991388183 319640946 679501491 625763630 750786378 927298109 998140860 867286235 931864299 673181277 749528775 338416743 987780596 459901096 885143554 576769009 981246105 145469728 620987367 909696780 963253006 261115586 784009290 806120087 898616011 110637899 885376856 768546294 843769407 823819074 836962176 733094301 764341460 949915375 954502361 144650429 737149607 301598732 367027491 889992218 923702584 918922912 935706513 504821 757610943 753199713 778023104 985888648 986593449 965396680 979429395 610674384 810710273 724326778 920964486 183638996 811240404 461432864 521545114 742153099 857857236 128155145 673555449 986140104 993821058 367608505 904611915 610877185 921518172 189075964 402445773 388791586 500842924 713670653 721214246 378182513 967612794 947191356 987204225 247393917 991210028 653849196 992245082 197039918 197117671 966656391 992766373 843885082 947621645 949988728 983207561 480309733 507978976 952929152 997861417 989658434 990467182 813722881 961485438 911611345 945167293 76629510 102010907 323373638 918468763 352343629 957616649 945046343 949601721 526589114 552883702 679122043 839895402 756194079 804642344 632377938 707572102 668351282 784559740 484364543 660205958 449640897 999551115 257239510 623653025 469111238 590288399 297481190 841358651 555574772 628280745 561223471 870042336 260540367 312033491 513951645 617910107 836459669 866171948 172932228 606463408 825792272 845939620 936394750 998990916 298059049 454304774 453818635 972722903 207294594 561236714 51983703 828272475 137049382 661340386 284929594 637712795 733198388 930026915 901014805 965534056 180531385 606360358 679125223 699476002 516284441 520137150 634059904 859425457 377105663 998512018 379309037 867910488 261778519 359166998 903333201 949333465 281965883 474067186 925917148 962146496 443420567 625710330 279934004 827289943 190845252 781332315 633635356 714083159 722588075 761820260 79875682 628132047 831402878 987764234 689134303 948449866 408199984 435847741 829150746 965375474 870559186 996765060 203439462 850871280 29766004 971620900 788291171 965561789 367470414 572382800 2803398 995763776 526057494 593370448 68070135 172683872 717484342 842401689 71599333 575584987 229815463 878378499 690829126 757988929 282445383 333447161 702195520 801318176 604084426 875233019 957867785 963446368 731441316 743543256 759211521 934439034 113063066 229276204 808944868 840708017 520632605 593372909 633626121 653230848 219212168 376015200 191518529 469920338 202076389 828601701 258992782 990827287 575036830 968011256 276743509 769988890 318992 670155916 972482233 988702113 951703217 963325567 50097607 987969103 397294329 731168968 257781258 478090269 117195914 206615493 583006769 730095702 841313779 967994143 102011284 501889178 920331757 976832028 583579157 623792915 465059967 870925216 465015800 508294095 122355908 967966114 489600281 680548099 522661078 739590087 632289722 918177930 294460528 685769938 414742511 542768005 148311608 928320087 779881271 985611899 601881881 981090654 83821865 424896946 943016222 967724487 676425022 964147503 147779708 917571954 164033633 862888641 705292335 740779131 244152143 814098156 451527840 466234178 907489210 986177393 244079406 543485367 942513889 976697667 9761686 145039429 67328537 404227667 477096508 949657205 225301072 760987834 40433156 845583875 721096466 861352153 806303007 821182795 255993436 409427569 109895456 760163339 69043996 450735556 698250415 744431797 507286978 598611967 196167800 531768104 670396836 954491538 715103686 925651446 13651849 852670760 993416796 994061258 228243736 977131775 70650081 582833326 845782486 926452271 452147241 868393836 48202596 982871860 402100998 782707601 421167627 825524732 242733686 848843699 666444906 801736226 483541839 651452876 960104960 979864410 367541030 543987597 302744120 419090826 898764938 991102537 613762572 928334809 944646442 953483156 951844922 969152701 420216937 420888267 504228019 656670766 50074172 953982922 946233336 975303919 763403368 835393915 238443038 917052281 798441980 863341116 259464133 997092509 704018857 812941580 315757702 451596074 790560862 964106632 909552353 930272947 631103121 719451451 243425381 518242314 51218548 220459287 204648657 357504821 51315186 795468700 204986035 918366641 417436061 474995288 715654196 902185501 417531790 909051413 99055954 721363680 728066017 991086567 983107695 994032510 436546064 707788837 671707259 944738051 669660639 728840657 411908965 546692615 777967372 895371850 880766200 959169533 155939360 294224813 750962780 930374883 142306582 229505493 11417285 797349605 701687492 840249408 873056957 976854448 394617262 662626612 587651607 980720227 90905833 622540831 555226613 798219579 41528876 346685340 254302850 530915013 45005731 188412875 246189436 443891676 39020036 447107925 437425739 889845521 706335337 891758218 296209676 924132245 516525869 931093285 512649450 974849604 631896886 971115668 674617817 761860747 986392851 999271831 346399051 747174498 733138287 779448011 232138142 383110817 66928148 761947264 921450800 941524247 962307236 971552226 198640064 509676676 431807445 711752006 78038521 913973338 190659280 877766526 105239856 954160764 556160688 634958477 134263211 258219703 326058723 710427888 160762546 762599960 261141174 912890640 615342411 640862415 669155338 792464300 170506130 355495974 481143330 969046673 843022513 896625402 119374581 523285746 453036720 696330388 167647408 676682057 845795183 948354350 624148598 888964538 207995874 588222499 400514978 916808395 876596216 978698400 27310120 682954090 577138229 679424869 455908992 719319639 323726441 688684606 224880113 783000846 842662052 890249335 493043309 964626710 295271941 971729763 343456704 687345082 77821899 194954780 862341974 996175259 689372387 842615036 259750932 277290027 186961050 461733812 586571371 971691284 250407307 262833454 48382104 657063761 781566549 996159565 757365579 824007516 979891514 994049200 925906461 970202699 706826786 999104780 448421908 612370161 606490647 863427065 73315342 266195784 981304275 983666829 195236467 785080873 617589876 711737685 34235867 357553581 331535855 505570598 889414848 911023445 281019648 358981188 347951207 836399421 691866742 881367680 818600771 947400212 222253433 672018788 932672760 981145124 804016094 931087817 309040634 411089175 730176081 779760680 789630403 887693139 247908780 554538959 497440270 602745262 676776364 715186037 388651666 513986539 167965126 709957009 37497854 257595685 992405599 993514204 794055454 980630423 707799663 993099644 15626828 350148654 261546204 566537069 289453738 334003536 810937829 876349112 127815444 593251059 419799898 975895206 593030025 713097735 349951202 778957457 565265831 567063861 993106915 994202122 400241593 774057256 93962317 294998365 215121991 623393495 885567460 886687055 658100935 994014440 779494249 974028556 812878218 947646416 382084377 604212026 983099282 998042932 584020251 775494824 543716692 989832734 726879616 874254553 983925617 999683116 676965214 978674088 629409354 825962838 968989539 998897341 582818635 785759841 36085741 501151966 31334750 628160395 219813457 693081793 1386363 553175439 69851895 788822899 667297665 751850828 243839451 559557977 75231299 487496040 38426587 317899987 201842402 363971323 3532246 813660316 92489139 222970722 520929935 596081565 1945435 84731694 450661368 967760657 270989345 300940971 845198653 891417486 99849782 802705514 254906693 801860401 479206744 822013176 822340671 849639861 254306325 724486962 141219024 389258671 512797544 888828085 242190567 848804976 770960807 879086507 789161432 938268925 32314474 830053937 151988012 590487996 697689792 857289860 427234851 823416278 337161167 421644921 881479710 911312596 680849256 728683759 615837443 890243641 258127231 371420618 113430837 958750980 374192673 869102272 77495315 904794060 980282156 985762640 440585115 443444475 460113734 551966096 877196635 994949739 647816466 820682277 329409701 739556490 585499022 589965947 547289786 890452583 390093812 905495876 284259728 606298392 107073423 367246833 784674756 828470252 285922225 693957429 141569785 439498499 85114525 942357234 881286575 973863799 217983358 406961753 68861032 688225750 516909990 582069558 566668838 600263568 263274207 620902853 625066161 688521215 890601006 957635056 133629416 407226062 484598898 656557601 250684665 577101835 69261727 202190572 67515370 885362175 133874422 512118178 327267881 783117112 694329138 752595121 273333991 314784148 978946712 990823819 575958565 683129392 235460515 765229919 968792686 999951557 124190745 429590726 437929251 980125994 936827366 963146532 337994816 805620713 619027502 684907050 140968159 897356022 960604821 974589652 929643852 978309779 567484373 855829389 833952462 860103311 173619649 880569607 82199646 143314260 40452928 178374344 403625811 985455908 293917252 643452950 129791350 920512851 21306671 227122316 423451121 796699460 350806393 657012658 548124621 680515918 223443696 582856197 878518333 971166291 40536471 920484676 763685785 957939929 620447889 719272893 847306602 914455219 306196382 622545816 717358028 750669488 513639689 529688685 936367949 998871367 350544088 609874093 411218090 770757323 403756145 461884298 621845773 742346195 88223055 226919143 206030648 712011388 216379963 313007362 548913790 880428746 946240691 955274800 628714904 861817813 183090874 482693734 795778094 810892203 205224328 863515780 481361800 962271790 93527557 293155989 747812370 936293947 213546028 748214729 875839269 987640809 263359626 460391197 691336575 993746473 356129199 646007191 588016094 647588791 38116093 197325664 9113739 242221844 644764446 925723405 312512128 812978424 128687766 267169508 549711905 673861372 833252188 868591918 365186181 507162356 783580935 865696125 472274778 805810022 65506552 896649013 14172059 121450193 909940300 978707954 875747056 977007277 389518112 749519791 983539562 989120556 707018674 821114188 56351127 547774994 14338191 871505986 446796849 708457255 576824473 716114047 525687401 748311939 109018111 296467281 487318256 881078033 577821438 766878346 478489695 716692713 530019570 723535672 540325614 796286402 717199364 725804887 808832661 950386399 666384845 799964132 402263680 952429383 802216058 961807012 612652796 666012081 461399400 638523371 770075632 991514183 278642629 811857268 222933886 387813675 317513100 375608611 135994803 985043134 244460621 861636594 847728713 964290768 660644611 986898716 41418662 487063198 185509725 839734153 86821993 906952177 936592577 965416000 737507694 947882592 512379300 683819492 271496234 710219198 356370853 818201746 306693614 953961108 191164552 601604251 443171631 465266781 20293394 308065146 258400796 887264623 999131605 999476643 111661120 936640326 128365873 783076225 154405416 226063055 651599006 899995582 497954913 530671279 43987501 920271951 5952487 303334704 861621151 891776199 756632917 899877860 225846396 849699300 970113940 985220344 380402508 522182855 197656944 989395092 6950741 573599258 963760930 989684571 921968960 975546591 472092570 969140599 9499601 112908074 814949490 911250288 160387780 644667425 345789484 552732295 528205906 956277037 731615053 972193501 903582106 913742918 808966234 892930014 142273880 483305422 44584850 332889495 244149411 858554134 440779629 855292630 794410125 946803102 543910237 849297579 437168134 694491056 768092728 827231026 711445253 865457441 919837785 936113402 728319764 788878497 243659385 546240764 252091740 365255845 728785317 995988296 115554765 251775945 606692403 632718157 204107772 402184602 263000402 906380906 181877116 758606191 796065414 818297862 916316872 989319707 535850426 731450158 7401554 549938000 97703019 101189672 37882730 652032759 785438968 876420693 472013324 614562453 90392872 91714313 108280442 440596198 732060373 992120114 969536206 989235179 185328198 195039095 867027105 907083847 623252619 677373140 474695264 730706752 11166025 724831762 64120687 873619699 308711704 508687931 44535932 384188919 300514757 921750234 405779151 466118099 797617390 899169513 983966374 994419145 967548427 985029319 30873023 764918365 480051409 751767788 464093950 943591024 132203612 884870814 415319450 659209203 697769022 783160118 486723820 798013137 698768740 993589729 704891086 958622397 210504080 975319202 483152803 623067324 256338044 783074807 95884876 602889751 341335454 360422381 266441410 581474623 835086409 919687898 633969495 817513893 756911113 951417901 772275877 958842903 3679398 390375351 740230412 929277078 733856821 847945803 344394169 386634739 142224429 515713793 195058588 264936493 540366099 846128273 398835031 579145816 513251744 701322049 265512645 479953520 707082824 895787159 810759211 934353723 53212116 546965909 870369744 969680180 541837329 736939151 615339150 929241575 745003273 906233248 245697297 714240494 850188008 913167172 514151858 935806488 974046141 980847959 285616695 860364683 21956736 975154103 169142471 382648642 412529682 733219444 189024472 380872754 399700743 994712457 307081921 538362765 735461931 866764246 623627871 792282203 51053967 172821145 997352317 998394841 854159209 871836602 161656173 999930930 919524461 992405769 714929008 820044803 733568379 948869945 14490529 743683875 683134137 916782686 377838932 485430827 251331181 527224170 971315527 978963340 259680742 494489032 44690274 351405445 42806908 341387028 762838717 920025985 520756831 726700332 375450296 767459264 577897352 741475719 128201422 208212619 373340541 757747670 955926387 991118246 542507530 804176386 917651302 998224440 437119867 959211764 85979166 487518264 207256095 678616640 98592435 902480453 610668495 715577401 794876052 849979662 541333553 632103510 691171448 710714504 67864363 453328690 35592653 138073251 559587331 790989365 320360340 719412171 747060472 974441175 640199611 815097966 560170521 949332596 668453980 674172353 952960075 958323955 197285435 223720212 831912337 908847220 614660472 977627157 182558677 454026479 671029976 752825962 28131837 43685025 172694617 706373518 6929105 491909079 480925749 852515899 577328450 973253396 476613307 972407027 792968159 997608115 720550710 909553391 528952257 969597826 991347997 997395245 224596288 440363482 536083506 855216729 558472441 896721080 199540817 245923785 506830463 750071829 538722788 655192271 418758893 984079977 876782145 895339821 32796101 859484133 704861962 727677720 965140674 994452131 131071188 436617705 42507526 278437851 391464961 595247838 312393668 400318040 102927844 257670344 967790875 998169214 483110175 658226332 220071163 288029539 58318189 228019297 526166204 999190440 282888212 539909327 303561904 804068289 611454443 692810438 251225855 277292244 896001297 899720293 348644016 823994418 603521711 804671124 843420236 958512661 707576404 909899817 531068490 994167148 226667252 600114575 936010224 937499599 180182294 281630566 921126311 921720225 797526805 832239862 694459557 995910731 940693740 986421165 611517156 878860524 299431149 536636298 428874561 903854074 557677161 850793786 368567772 923539481 578012105 994669304 833685324 864498779 468004953 966065921 453674318 581292291 553845927 777013375 182081691 712718892 843878163 943186715 226434475 613180427 168059833 457937475 500775292 933341662 764048872 840464204 153709799 499761945 699983053 974409620 1126524 780595795 517566768 740060339 513767107 747306686 863082362 967435010 455584130 684546032 619842209 704448441 128762841 253087238 457432701 512612259 178836260 957344868 938473901 942184957 398902767 954886883 466478407 959231280 897668565 933904235 29246049 119797244 87689093 360445747 786157717 814824586 358050483 888614168 57722626 869505861 821462042 851267422 334660938 448020730 51421961 704172474 519994539 946331767 817020167 980906936 218827389 865494461 669641254 807969695 661856487 894359525 299825750 418770833 492042187 907310257 492522876 680441486 180774601 626741490 458971498 567609261 45248427 551343045 982979154 985733785 118992063 747818890 86459815 784987596 416780576 739913852 870204190 903562038 614032396 661247456 713235728 893527986 219053817 968213183 764867821 931419643 194987089 451681069 848267689 975482867 179653132 569795580 565922238 573740656 358525766 828533732 597782355 716498682 934969141 980648452 434736974 727584578 346839151 590252270 359435790 993780890 66853658 302933705 369527150 869877324 407832444 984841825 999506008 999552884 587514493 735801465 237358976 818112011 701011689 766518646 221236612 446347406 777184844 853366859 188264318 646802578 199307835 941318610 44622364 324574649 548388650 548759663 653574213 822127641 461655775 943272273 403837923 918928980 804165003 906824026 361601 503744591 845584900 950356269 21941409 541694590 526446973 724862109 18415712 58034540 352249598 788566512 894171467 988212858 276655046 769716048 610024037 814825646 966457457 977449383 434304705 987051582 608451837 781582224 550166245 661556425 58518184 388056440 697738535 701514088 636420490 748708959 383841345 557596375 430357481 514850214 309267798 403771976 251189367 603379411 896467774 903382113 8474240 573676933 790939311 823262722 99913132 239943138 149230835 235094494 368832373 510785647 773703693 856815486 977116547 982451217 617108245 893730067 176520900 691972723 987678042 992643009 807476382 929791376 563178788 858247200 209463818 562478646 541012115 546457268 1302008 645079214 835683909 931432259 377861885 478686905 57886839 708627174 900437401 917301950 559861875 710933694 675328865 966055505 458821210 969969651 826494109 893502020 661676884 803158034 694718701 918346557 327100626 451292991 723657540 909158655 747365557 935433322 537458056 794367260 763661634 994458198 528737723 537692015 237344811 921769978 444833252 637839808 240233307 461578447 928828159 939551657 342244002 887018022 664357515 912202991 214378572 309503017 279141992 540521687 249366533 868162506 145482991 237821200 104517563 166042163 791857390 970039820 474839921 686856322 758281289 872997688 243558980 578744771 378922805 426698170 556000653 847928759 355698849 637561878 411566509 819216280 255224678 348966144 875117645 898747856 455188986 595535356 791839432 953851047 292077996 510463915 474399741 795138809 342531438 791549276 718540510 763582702 41063482 229911526 767652609 881151176 400708979 604241970 558385326 770553539 340207445 340703052 751730792 986116136 37413268 963745918 535262262 563812875 971267402 984832543 990129610 990517579 863164945 955650575 233030353 742077896 588517133 669008522 625748511 883355389 237975937 423304797 201513798 695172872 196787068 562529231 315441384 769778719 206801695 315602947 198643439 822291389 412586816 835434661 729227063 904994208 214991322 944585583 223159736 311351945 478167734 680523762 967521366 978148131 471819575 613249862 286447042 665913866 719611617 824508184 934566590 985235180 289213943 924236780 175308251 312698328 172151237 609956226 113937807 673347881 425688168 555816063 965558910 985025712 627718265 641602225 659751675 701313156 557482699 898139374 190714348 868688203 270352579 381296289 701133731 897227499 568472531 673889261 291147763 609220083 562257486 847108300 845621432 954306828 691518706 948501405 692943639 927215194 948928148 960733089 619181840 885086192 704423429 852887741 40643543 359460681 324167409 453159989 95927183 498966776 204895698 535688163 109079017 709092301 942230306 954751367 799801102 912104792 580110583 739551071 637432200 912667837 813915992 938238967 998209894 999403516 196730966 631041829 719329270 768491242 5068444 538946824 354514085 697767891 300168711 779872283 791901265 994945932 904691301 929916454 207649748 613953290 886798213 976852212 146512547 184574656 636801791 930494244 6639656 508678905 736770338 850518557 60630723 88376815 171217611 384348866 227169703 923544866 508592325 535288778 99803379 840392350 22967613 602118439 359269648 959248362 979757224 990553598 808872153 862900418 895817709 978041454 163174800 604591722 361733364 660047925 226788255 486976562 510585461 527987465 386321918 814257547 608736340 719972094 373656659 674818191 421060204 931409652 157865682 539741845 653840758 821580927 850413271 948164806 924908911 972353137 36725497 36726585 208179328 724267807 469624008 973148110 591688648 980448499 344999901 681283558 415745181 461683383 155438258 952019180 163970321 590410973 107863197 898719140 30642243 57160354 693100293 718747736 787517573 915547798 875610552 995995877 339783327 569714763 454686039 744753676 849211643 916776167 611657129 770790211 180880937 978090336 868456033 901030757 347126641 396363159 497646244 522524763 93239370 354000873 234331413 477446220 437711695 676325251 258301797 900530854 770620789 938187192 778208648 978590017 837251332 984903256 367159584 773502894 831411115 975374002 170739715 984930379 943346346 964693103 721133342 919544137 823102261 885079899 199948679 815925307 298127252 956307095 278538542 532737673 123293276 709130533 666508611 877459557 471923186 546483126 848740650 902923923 349045403 539950502 403534546 889587843 558182075 764955492 858193288 881630333 191147003 584880163 474052776 668495782 334127781 782759133 674119104 948107904 899044732 978363851 525193511 965930711 48441816 797382109 142737980 480109392 56101567 670478072 737760993 874004800 236197522 436340941 763634979 775998737 59720887 784822609 140525815 377005884 93880922 827645620 91585200 335890143 439684718 973354448 115344554 368038036 267739997 788597156 421205307 603887386 800999644 894844012 443064369 894813669 353078061 653485486 731113534 852234665 134775233 599686276 845638703 903515116 728496239 784810968 79501355 938295062 940493312 962545765 650428994 818667732 947883866 985033326 796268698 855244648 411791944 548108590 866955765 892329986 586351636 844083632 65861601 540624686 465937332 936377962 675501385 779660796 964644094 995282724 614436371 667043766 766448233 902011117 547613737 871345546 320771641 966401117 23433733 402708277 332965984 671706229 400595107 516993704 23114196 169673460 219425419 336913283 295087772 322085297 275553284 314471462 627916049 666419629 933893695 997486907 699595543 847085231 516066038 820344369 628583190 813791592 166463795 710443229 605279743 861252124 707448258 877929494 333880513 784439728 703002059 827490587 57677301 851098738 439187929 836183284 328168746 800945214 492397453 904554764 357344552 737147241 281300039 498120895 10591078 485209904 864429519 985613323 174847293 573606357 495056311 618791932 663868917 689725191 758289054 951163943 106116613 410151735 647475402 906281922 11865952 350757388 506066880 949909792 332550996 773797434 320379691 871563727 729708633 897547904 549110531 937922876 856820126 877248703 490063661 753838485 786947120 927628400 266005362 611672443 521614271 985389827 382666888 715719405 800976929 961309942 886819341 950170209 884413109 947103076 616197530 627872403 779279196 807259173 563916654 718140709 277638372 524802426 338070800 829570911 421117369 525880832 898649696 926559112 643334147 757696416 277855343 879466908 187986094 888397279 177227272 389216437 745373337 811370891 337443424 789468480 28479807 985982452 758488644 976793164 669993987 725422387 877235363 973644549 974484489 986032415 263128768 941307569 257324625 398187666 927286496 954317400 889236061 979786166 571693755 959773330 249907639 998664318 326143569 600918951 996820464 999416195 630399903 760309948 459705970 531479923 646012778 915878792 684678 7606079 736041314 890243153 722800601 872868515 396759507 889160148 925961901 941597764 791730397 849266273 152791396 780105870 57657035 809264654 440627302 601132238 842103064 868009562 368782202 644572727 865233772 924550687 332245388 788530958 798863377 830366195 207016180 813127941 232401901 673696573 235069852 810217275 975062495 995000009 275201013 943891009 669867807 780881547 234852948 386850944 558373190 821613381 695369587 937790923 575020770 833961432 182645401 961139656 47250865 678960284 75436645 278311475 261261045 526350201 97287534 319165024 778986337 975001086 519004487 813170213 357960142 858718831 91623521 650873416 299207742 933722243 534515649 969542817 919447849 995268076 743497308 903319523 312891854 913482050 507499074 969830351 726882131 799524837 63161924 757710532 155626594 397596389 752462449 757458515 147038861 723639742 88251115 305662642 519752516 642456707 543682737 854910491 407491978 484099622 980831505 990657776 473909894 672382065 279355194 818839293 657672329 873418763 144041018 423716611 832879344 879633507 886280156 894729529 47052708 190040636 675913228 987724052 799920119 816543818 582666189 930946055 280466633 611291087 206129773 268491409 525870275 980972374 895393273 899758766 660419618 972440349 385816975 668565608 330444051 415624374 207144747 917479437 990962116 993575742 204746820 772122275 900667047 964383948 899009572 931975043 848296957 872546327 63124349 874298986 188341859 943543030 453749306 680782611 476589960 587000049 870128648 920333079 827632330 848531621 466106654 840292630 987569280 988606821 94510784 104380861 561478406 661144906 84145897 546294368 677234137 878894071 492978563 522352675 67287517 877524307 867506813 958456023 48265262 960274341 40984622 511527147 484838329 693242980 870593202 941059895 100473318 855904837 453792390 469419118 738773388 991224242 205347690 951165105 425950487 592223439 941128121 975238092 514749617 540695916 890006173 937605849 455005292 526647447 735900175 994634932 500130206 635938530 540818906 769573215 448309975 852733292 720916364 956417723 193639496 659782938 489503993 918213221 181896496 768182289 853107268 988806259 584460694 866863265 860513124 941267013 484710303 821811635 965087745 968329523 481021731 743117520 253788340 399013461 690145790 845408935 156635542 722078788 824398072 840931338 726381486 821174678 930488233 972491496 285808370 615360484 472026953 824229127 995735324 997193724 517298213 532091359 49842651 942771419 816854087 980937281 733987152 923403448 284280935 299761797 898702935 934535335 972191836 981314165 522937351 640605323 730128703 919327138 360891508 466454439 582164091 843704683 444959270 454943364 571731551 937364990 851078435 882755932 529399297 675345528 970637154 982367422 366660676 507806299 636041495 806032669 755073017 901839185 625220965 629625644 970650060 985535885 375560770 665480710 803264402 949645711 791579076 881975137 31127142 69475281 683843361 788875157 166344961 506474768 822449114 863987354 47162507 746899326 34291892 249408282 982203907 999028765 471946915 714839957 653756582 920306163 542637403 917326198 266333287 707908390 232773377 251188415 401008147 625395716 982938266 994387273 938469135 976273197 617331726 721887117 433665519 788994725 502084664 869077175 471016366 642800913 287019562 397708871 123321086 611632254 698659643 701846754 632504598 634124789 353106422 891196979 59589710 116780738 990728391 995217729 333267313 688703894 607971828 899780036 717546889 827255179 325810066 875981921 14668800 263099038 286333024 640367152 127641629 986195291 607115783 803496048 951970879 955154820 401444378 654626233 652407581 661010335 288040574 722174921 154185994 819729333 505513988 714706466 343684341 777477278 249380272 582271101 561620540 610926446 37966034 651394355 627418634 805991705 502626456 728674010 887957709 972022606 25601269 203539925 19438510 131076561 745767379 959459024 739776826 915566544 696315581 852251827 399821334 450687529 985272506 996215575 958935065 991874398 645207587 912155373 303223533 603687661 809860868 898171147 523525866 861679040 896399928 910337836 157729613 162748596 511569587 758986471 36063377 411344769 745237686 824311491 764532574 776282372 981408267 990373924 571132982 902097479 392607236 926551540 257146002 574974742 607628535 783125468 518132386 684102071 474712831 589396962 899108686 998955713 773484300 858650991 232681964 894606774 742645285 816633813 776853332 863899656 810728528 922361956 969750666 981261756 927935065 931430998 866894212 996951358 249924169 446979182 70739927 307204628 742723104 873112964 4228233 318891022 877327970 938879798 62150786 444142106 919652282 959297409 780354005 961917952 750270116 920460922 439299604 984420170 581832937 754047830 966667275 973400563 986773039 996414311 7845642 259703690 120931244 423019246 20219962 847935717 970294259 992087686 189207170 254467877 545951097 753562401 584073299 683061015 187940315 386659461 150630989 319741786 340644851 903969528 606897487 800028536 430426821 628977816 815670048 840958539 591654557 670408361 567953415 778876137 418341948 924785872 188679396 292602436 556375348 965324543 700210786 792190796 729925135 898051161 208085084 378759586 10019225 437981280 807356787 882356732 245859783 332764871 912081568 919711813 724555120 923019760 33590397 400140814 149660712 656509169 1794464 823849529 37791531 257858292 972264273 986627614 156738156 686751190 201242269 645157939 770848915 823811253 994931489 995791776 417148535 690783617 683704199 842518086 427719915 502190029 240293662 750560794 770119105 773510189 187061476 488768221 675059761 785564739 430186161 438359411 327955354 430493494 66998477 529048475 893600153 912156406 207647195 352683950 266015110 782342544 956827889 993834270 567714430 764853113 804054066 890202389 975274186 996220926 435233125 908085008 556570530 593908507 455274047 579827562 538228780 906547898 483641772 898964682 16678678 365356796 372219568 698054635 330718900 488415740 894935743 959768198 49002686 672891301 864929846 928120927 823799720 974744685 157349106 980174989 943860818 977812443 109360669 420837186 100746689 702861376 178212984 951670741 470950376 771734570 888560981 891277764 245337049 645921933 652812786 944484007 264407108 938192614 958605483 983222410 430092234 986845579 873619115 882038533 26863295 857620635 131030684 734423557 166719482 893658126 801166250 980249677 547378895 657838339 318710470 426107134 728859808 776190113 63502368 356015372 964908711 989921964 698710560 850238548 969816258 978367774 958761835 975463016 947264362 981568919 606844801 968042845 711013441 741714828 221179262 659037055 543348071 963874752 896385306 961973724 973547889 992627765 716057803 785563770 372094637 742932378 403542983 574297028 836764577 913887627 162990056 431630986 180378961 507927795 316008195 839554562 434715957 909037935 632692144 643706608 440659229 929682099 158871102 327377462 623665916 660203787 397836040 509776094 531083332 813836409 773523432 975949802 895753947 943402817 270485439 592438002 382949678 574304735 145913944 191319388 775474493 842418298 324269454 549223488 580912075 811153749 695567836 971105247 363035233 367308295 747049837 926139613 121958916 949497955 425013414 867273496 271546673 571692458 609873561 745844840 318573398 828198384 670567216 930512822 200357964 467175776 160445974 857154609 323763894 618078270 755806373 856667020 557412047 937687494 412162139 431943756 260422046 399501110 616674532 762963504 575027555 871533061 502853808 544165991 530590499 902780542 295229125 890095656 495893503 960105528 229991865 333217105 537091936 775469144 213596552 543296285 819690867 997207580 971357762 992141446 85858134 937591938 728965085 932984209 495500399 569309553 910082410 993639468 641925356 786162316 376237944 761515127 687180283 772165823 314620326 693988867 258704106 475995408 670656785 976563284 458152515 784964549 19610843 767862699 806590855 988671812 101329175 978644171 905973930 917396642 22302479 769751469 224514904 623003635 801100709 935843904 574188130 926168739 677831088 902287243 817115355 883826201 201953026 779106836 303843959 958331028 539769045 883606196 315291968 890572005 969948155 986044406 490419022 643788462 778301938 792655608 9599762 815820177 517278164 680832678 452419829 867498970 172022992 526096613 862851534 899210773 496177647 565177952 545066217 840059994 198750391 586517070 119541579 445922772 188869725 620613846 158659619 918196895 65388002 193987108 623420683 629306712 885812272 953689566 965197114 991299288 536044729 625379931 218521146 703838896 95227415 862934374 329957064 962523519 617127811 988821653 640212105 645313173 242462671 380035937 57956453 871959667 451826422 760667546 593948543 798881599 925339264 929553930 488175230 936447108 424138378 940730658 360916775 706398321 683159723 818930004 673294833 736375724 920776711 952463635 295253935 816169108 876234533 985321230 99204527 575710052 46656007 246183506 294152162 379435456 61047203 240739738 197870985 372021668 36687939 218527989 427330291 705775077 851312154 938213144 349996263 931031399 221967798 619097205 404263919 700685164 410150746 664958693 659360453 999332370 564654493 907112857 115723675 709647894 528652321 782740252 922510235 952997334 161106551 615496910 531508236 896224396 666183350 874911141 55153345 78336928 88950704 264161569 244158544 591740050 254701274 876006360 538108681 563984884 33728596 406966873 742188219 977734618 29714554 777975415 673272769 888452130 977837132 991792570 680418679 724641462 524120715 836029970 39286220 733597159 270474016 911611315 809232880 894281429 648734617 655438502 669396920 965525362 743180873 863251096 77273558 540915985 588553493 914237128 913992931 973321199 173055184 175753066 402552686 757162423 283746099 357800646 706302787 834060256 499905255 836100172 551449066 827424655 560725048 658819814 33260787 191078010 32465207 936950416 81180288 648189995 195033831 331989100 519685949 720691227 3238029 302296701 602151803 953013018 520951780 750075256 663153184 679639645 202109504 316391335 738137519 776296457 523678836 942029669 869487717 878320858 988422463 999750993 12193012 577367101 246624416 266535723 687082901 769473212 453304802 949804058 473180602 730629629 319568031 466938024 828401167 841898347 557247460 759538664 618299633 895026132 952426426 973650256 371310081 847083667 883257017 950093130 646490270 966635026 270476252 467791909 576645168 944216327 40519880 756213324 165361670 430658232 693416356 784631029 294307672 433846909 603833233 830891850 741930127 818006842 590700200 844055704 956478505 975141213 83780442 676176231 544142461 749390306 225482132 931894288 644225254 935293472 869182783 909701350 575993014 754782821 950566522 991672215 490306795 922189389 418375755 736584163 331015279 812172978 934673401 958371487 570213105 641991402 586574833 772615151 949239521 953790760 2917711 852669649 427655146 594994704 236465993 502559931 208016086 725299956 447938585 486151017 988774442 994542400 45798752 743278907 853084739 957054225 636953514 894299189 590331376 705141225 450664252 547544709 321532073 361779756 595370226 773689916 553391501 756657752 29901797 411496921 98964890 255817997 907084399 911062764 119831255 503079072 294131400 713250549 713241701 983235364 8242381 416215573 108476669 370384842 798442789 815577850 162562539 423911129 728061058 964810871 981005131 986718961 683171391 946247330 280940159 799553804 120387696 455396903 485402279 835808833 237046104 294060092 828405103 882296438 649224836 823344628 260236124 614525903 434566741 615213437 716109182 729225012 473845036 605647713 812420634 908198623 579934715 935105738 573859030 760422867 196724067 932054932 217968947 873888830 973998611 993257795 130896954 937916773 671265199 775796777 449440313 713962535 261540080 697281298 422858998 622234225 872472542 995313694 739140926 934865118 9415798 296896825 415609136 695901309 202533941 274438813 785144915 881889325 877760374 935009673 288081780 847481804 455749965 992920266 995580898 996713549 829664470 953745208 867615399 879093100 254614614 684735256 258700497 658969896 227636698 285018718 90102039 290348572 819066111 862685322 99344577 201757593 781457053 816755046 440910160 985050835 708436587 911279846 475005431 922318478 35636172 169046580 94778474 783799144 387216118 991777203 360920099 891154631 378138032 467218565 141497887 786099664 437409930 683047180 905690428 971278103 832926545 938106666 612891057 901727063 354059323 861553287 687058586 747556239 524739981 567132233 279881211 946212426 52016276 587947236 537598142 962183339 675695880 891322579 118297144 605101344 889499521 946625903 990265091 997602990 18589476 270079713 867174802 945118234 505025806 910019980 426232213 686370699 794079268 915009625 761121381 986998807 49789085 849570905 916504257 983645996 896679361 944336224 759066456 916408180 338893482 512663926 128999344 912124201 104895834 504133457 800453369 801993883 676667035 753028639 260996163 679669020 562464043 700121828 103914932 671217399 900244851 948249602 692971146 765988524 690246353 830562134 330794236 908980451 252481950 931268780 864073171 922683819 833068523 909760651 167199430 221813169 975957796 978105329 854196137 931497595 138460782 584361990 786404420 806096757 584523525 937274624 594053069 660045715 421918727 643547135 971092134 998894763 882696271 918424491 694755905 950759612 513420265 530559667 741083099 844869484 620910845 779822409 576263728 914578660 35546191 586815341 840608055 995989911 903236675 969369942 36324356 148919723 601276137 698578594 284702364 887979437 221885985 476363516 817962501 823847460 921683220 922124611 401742060 493919486 915921039 967384081 18076325 537846004 489024017 796740924 618572182 946076836 85940203 395387189 519845157 924592855 973854000 992848233 332785493 981323007 881379370 998075217 85833398 404823133 955204694 978461631 288077376 560870642 516987325 706279370 413188698 670884158 894163118 896926370 11318885 851242881 87081820 144050572 833657039 976921502 715080328 857228780 471263227 996067932 311001217 814433944 395383329 416729142 4877524 566930480 318650810 830927183 604445245 847677746 367445299 522167493 541819055 691327757 89439290 803507721 544054170 878254226 677108260 689500797 508274156 852171730 322438837 644669061 117559499 294782513 124451754 336719222 67061179 98944251 666963387 719421100 938529489 947841835 56801629 719582711 799570740 834035081 784201825 918823547 31035975 573360100 838545526 942347570 735114023 814893273 379887710 924456197 784315178 829196260 169046800 387998742 319891295 502353621 365421431 774234735 629170442 779407130 941077306 956131982 593083185 940139016 943510468 952686453 217814594 485786946 936408248 972169457 959054913 977374898 648395073 657124669 771298443 937260509 593416676 656045790 916427364 961186560 343739703 832198464 592231774 829199871 543065377 650750102 312828088 656519873 157817394 501614090 278840804 600525034 308217368 947819539 503168342 661455989 616857432 782746557 166267032 615943423 684527719 908538861 377659286 875041794 326643062 780985216 857997289 910392206 696166963 845527232 92790023 692645937 342361520 498249383 879226320 986387557 404096859 913619738 684859625 797491745 198859687 251404847 871415878 973728510 399044760 432984404 938409724 956871272 63940764 796588292 40937136 814748792 894292255 910905210 284498269 782068894 648297158 949985183 822802529 959665847 694856359 991357709 723673088 896099113 865790638 871306994 141931082 945174307 795789625 929795845 193469468 445422863 811271064 974862258 10653515 869372343 256516689 832606967 223056560 755692067 810836947 995253916 391992240 411997113 969237061 982535882 560902517 959072048 118471495 492894203 97041483 340590461 925107891 960731996 672923723 793628827 975301898 991955288 70365809 605504717 738373818 914096000 520679641 724049885 426102884 651689127 65810613 590410891 144938973 299986009 713611377 897135005 262116446 707242693 825551848 983549548 704305631 803565442 835604706 980320867 278540844 973738726 823542271 988844949 628820527 651094714 113322715 686393621 765086212 981353074 457340553 775867317 368239479 492701348 363233909 855491871 322809746 880229946 62298887 458676043 26142348 70434661 327349865 818842831 125654748 907859260 287229086 436267302 379969851 753949241 924727114 985915808 789684724 877834744 113874513 884334292 960287608 975256028 136366691 985414035 239982552 942022912 843460935 916439804 65793182 925329857 436268648 626759234 896905865 950110846 797254962 986925474 645067983 988831617 102292069 579832574 47318667 255704819 289025885 393746139 330532468 446115561 104336022 894835803 254546894 688411045 599361594 676552847 443672165 723826152 580702261 837364663 141603093 291569831 25585489 268429620 292169959 930997426 818036636 984009679 930593721 953021619 966213157 982672458 556226490 631001832 44867321 719226790 268718876 593378979 802073472 998055506 458412944 841070008 679503321 895004874 259707154 649559203 194341124 842266062 714771506 959983099 127817518 591387295 820833851 907460372 663130969 940542338 174407194 667985055 621191471 667129742 234369772 884816373 152085363 318435830 464393230 478235195 26080529 639512635 158181234 958350820 590708572 734299348 4145896 179427078 103741005 335779637 182122074 273444625 406540638 681134818 504207043 623996091 697750835 948062591 241601187 621033252 673364212 770002260 614591081 791450357 226786071 271527024 10318702 372763502 319080981 779501680 711210185 896166369 187564683 362552163 850493757 888693138 444204110 626806879 622994733 769050635 39893061 129030953 606268917 830342172 843824 957403338 199627355 772750713 106260291 953735842 595546066 971547119 230947322 574915966 847880997 879445739 241972922 331833355 651293438 724348499 118717185 503980237 88559252 730777228 643071966 685045376 164514037 998908554 995475710 996000262 771750670 895033453 49395563 511968177 126905773 164879605 248346232 771188157 672370838 898058700 547223716 934680894 541369490 669284903 481999346 590358456 167057555 775638011 815978767 974605343 429934643 803572853 602316022 615315108 809675099 949951578 35703130 578693988 501007919 616782436 376361503 781980799 795503084 861882873 70010863 657088955 337683659 960768367 907241926 926365373 90909612 505061708 249188021 643412357 254013172 658210081 711180660 920386437 416126758 649421570 882015681 913659568 4296461 718102548 9647134 211492984 937181663 959820792 427920514 580540887 502633703 529073541 91902026 325837429 974678059 992574902 476043604 638692426 169058822 523463323 444939111 887576566 505402006 938810576 274842760 279468753 679376276 887730025 204494567 478754880 890319423 951893382 305070800 991640841 514239593 678623434 244638790 911511110 94783221 632205300 785402192 875309250 360647378 398828664 558662143 680149608 120568302 782288039 446569708 633183508 664600042 755684561 836966615 866897750 984062561 986328871 182955802 943444546 152613568 405388151 242785161 536230685 324185880 660344866 27414082 511280103 123901094 527237726 999972037 999994319 792023426 866708879 774798606 913187778 989033871 989915259 824935132 935267923 407178361 677892555 188955372 397890957 522954962 570821021 461362953 770524804 405137359 964310342 349462575 589635810 449728349 725507299 752982537 948676434 491932556 671379882 827986155 947991825 604243941 642129272 61902760 981677825 981664875 985653721 812592473 958536869 638599664 926775553 943607687 946182089 187707861 829019080 928462504 988983733 40159863 340472075 672119038 736975497 146398726 776183220 8137215 214834186 874840985 888334599 595921427 800719791 386365081 610022517 523007463 612408643 747425611 786697836 249865821 558374493 626799612 799250776 22633246 790502855 499839080 776147752 508354520 636113172 919883660 997272432 132086846 802461832 217778564 804951923 962205788 994870163 332212881 733878657 402135040 585139268 665465185 696609329 275276420 461162663 424143690 978225816 385140704 847703149 808566021 989269532 589891464 865157476 429720640 612870072 129183268 282110189 367446330 776184114 193353738 767770506 513524375 616632823 509266777 543683265 697893635 758942392 728909273 776891824 636718568 729487046 191062067 865805516 513083814 527544062 343063400 680054037 763653616 895899900 800507411 832930590 66026537 719295531 667751193 705986862 131867905 228891150 358959888 969782379 136667891 355877113 588204871 879300348 690254911 710658806 568197465 755930121 411115331 701493836 927558314 952273551 770669596 884272537 166988314 417450912 431629391 993214680 39457553 54655393 286258566 526207180 974733697 999678236 413158368 964215755 911554433 966051238 603673679 980968892 480820985 841938771 216119761 244125809 924924296 986655886 892512883 963454916 565444217 580277805 948959336 960860589 333371189 656119806 606760521 989793938 427262710 701960155 41462857 107045211 369473977 916387135 365216169 751344284 631580411 808549319 89456979 95475143 954532641 995047338 696081577 917253556 790421886 914196110 405671809 525213967 296282015 721798826 101552747 866785565 191506133 703481271 836824912 884476761 928000406 991512989 434615694 938775415 984782440 993967846 318520866 806488841 551690834 920055826 378357747 710474206 495558688 650330517 103551373 240581374 437100792 574473761 116462756 146596220 522146039 672384498 669952061 712961520 232764100 718705776 734667764 900211455 642009448 702904979 210521697 286786218 525229359 674034481 967681941 977199738 751136609 829312906 323661156 728120123 827870992 876910825 684794865 826239209 577783573 693683365 592621477 814415133 638805435 821875490 89107071 455853498 124495468 427985685 101745297 501907072 51162269 232277917 720199033 730789272 819099029 859776170 174455878 730664885 93411982 224821741 420013799 982235103 124172280 369179770 322992176 337080308 608758420 659749407 112128177 598172664 348149843 398494941 902669773 998622152 999444649 999510559 717068649 852357292 801156504 888758120 139468152 643877724 164924402 354734839 409836161 780945961 439119874 564181498 466754711 759224222 180265887 631099798 604602304 682052893 820667769 991845081 584753658 975614508 342887984 946382564 673957610 873400785 924682176 967210360 590844350 900976613 333978464 420284469 607293771 910638717 36855978 435001358 399019072 707463805 812999979 941125092 334492890 537227730 651898588 890985623 112583780 483127901 802989263 901302911 370024152 541608419 214511343 480832986 590447262 828671361 849169269 953567255 45986498 733618504 918335966 982845824 706200098 709541689 648961786 677037630 917230300 999775908 824695742 854403896 81748217 614775373 960264474 972826651 467111296 865800775 225959105 982570504 477825275 841894012 744844286 790117429 172952394 276596228 21547757 404772375 529258175 948613004 603882351 964150083 266446634 444611885 295928863 886609984 716926545 742865169 338789722 362717001 715372431 776966980 250221359 263507499 855161075 994698710 409594483 720384442 699156117 790998418 610596466 769832156 380296640 717594387 260936085 896209115 314592190 940663285 594779842 670323031 431350330 830773548 171523122 239475448 997043915 998562253 708372733 716683344 822350900 868977445 553114442 781922705 505559744 515460117 396251729 519913398 219430618 514455765 623886889 938088536 777666595 942460823 860480901 939114291 870480923 939481633 136592062 373256292 680888125 812062396 268944148 345836969 652716226 949538811 346347949 469062509 322235694 905899777 408740703 980201803 544085104 831982433 801928146 980730956 176679594 976714439 918874784 974079404 554709218 646055021 774762351 788785062 135665350 310081495 851678108 952392962 315452537 755332729 712439098 991837391 700517072 707344624 45650328 810522457 860208840 936310731 821000714 858341165 965584919 984589018 345558288 441959584 619604999 953121684 767125494 836249786 58886439 457390321 557813293 950463842 85754106 787972400 875731553 978104961 745290222 804407099 830081233 894947057 217296591 235738257 575825126 819429042 650874760 921977640 879753211 968502485 224756052 492147081 98114339 276726014 41486054 604686471 480481064 955960425 820865285 861017669 633633922 767372434 409609973 513845071 427790130 634510609 858324422 877451490 838603753 900153082 292304751 720510135 224734697 849544906 35344193 608400563 268103703 362339311 773630065 809502637 600987087 778126842 268599166 675576636 124611691 754530776 509586253 584715135 748033694 948349154 641452854 951959849 647545979 899808450 871054057 958094830 371410197 492799909 255952582 822948365 115930718 185836642 749233336 763319466 438339841 986031285 839899424 919992212 623371521 685144215 396273289 633588973 859662969 881607848 982171773 994627446 752472324 938331501 951167912 957623094 187700788 841764469 877067983 946420939 2008870 801413718 166644178 238483037 711499242 794753461 929022156 968595558 116931709 594348618 402656215 754507707 541067808 890855893 954847197 992449628 470710443 965321676 595951577 985635551 879455188 934628910 768359709 860175646 303857821 976931350 815532527 941337222 317397184 601880720 161932854 714743585 909932621 917725878 614423172 989324332 438243510 873229082 698761081 942446584 911387482 999608551 60243374 666431868 853647906 918558740 825528169 955694616 344661980 811442744 969003695 969209051 629512580 812890735 371339054 658564648 318080376 489250470 723872707 738346182 722953693 967197800 786179185 975077177 226119518 340560401 211211516 252095737 308377458 903151206 380621301 721242927 270925344 520906600 201178560 946421261 285424040 711582816 192707542 950233761 84538310 364552740 131248544 490187712 677799590 941559742 576225716 677491074 149786866 952124625 32831306 589841232 855128822 952128655 458833811 813611565 953182051 979556225 507537361 745870252 694941750 897847568 318117475 625346762 806914767 923590517 693964217 968118210 108422973 226847105 15485330 853405249 494940660 704695515 57218978 636577958 208088627 520286912 491645241 944315896 253398732 378144556 238904437 543389305 768790038 849747356 67660785 221299546 705833438 919064403 887122700 907563240 166097891 497093051 896621949 936454951 447494054 485996164 952892689 953663454 631277490 854216067 665271186 683075686 53992275 901373264 437341277 524806849 292548453 910674341 896651617 961222832 928197506 988797152 672202863 705539740 577668155 976887825 854957625 887697433 674126830 987554065 198849669 384324654 788052275 894691970 836604798 971879284 441639481 758040146 151558651 717412301 80561787 533874099 788521563 808269821 909897890 959471718 379098030 855483294 321641263 534172289 643007745 644070683 1090810 89549472 500947982 658239417 526308602 564106691 907069903 995540640 993778657 998119359 246953913 439736396 655135975 969402882 723526057 911186271 248412178 761072939 792092208 848711019 820548275 919638454 586578186 766680690 823439313 852270192 695558502 701718253 472224952 807752724 198261230 418395447 6744452 29875667 930976928 964032338 949382031 996098439 205198846 327882447 528525282 737088341 192983208 253793096 246642874 907127369 195786020 291356245 592526795 805114218 563006337 944892592 371755274 826086701 423945148 518124553 634054146 889989321 324988878 418689960 141213229 568468832 762467028 940930135 18058161 716304985 120567698 919080667 129108902 832149105 520718703 952627521 877225192 968614833 864966248 969886531 125173786 419537217 273673148 469050503 130648830 780654709 381603259 890510616 885600440 976390927 83192680 754913042 223112777 769495356 321994988 762673418 725251659 729937428 427280331 810378447 258754850 538640657 377649429 495350438 552088107 647836998 286145821 406783313 561218065 931296494 311290631 424934448 16279801 298314432 462069031 715644601 528563605 742571863 43115494 852974115 663991252 898673144 431071989 590420308 284140305 368974293 432583734 648786731 200840130 863620378 502672124 904083553 33926300 238480108 243137364 503706235 774365545 948983938 415202984 458048633 922523082 969113798 913077295 958819995 593101186 787809706 877955536 967165575 69246881 996693801 970548195 988250166 32729479 527646798 250806221 284679812 891713684 941869830 844020579 925441625 352198108 778073819 207149203 415951911 966002501 974079739 170508035 624344617 535750818 588907669 59487088 502152331 60952209 846122353 138596388 202675808 424230085 904930424 23113709 717138249 623597712 838257343 776691353 868152969 530197793 930815234 995752751 995978778 75364317 259959354 157511985 211939828 25904438 821957102 167713849 334934276 508635087 998615319 841302666 929682046 425914765 474880065 111703974 426021239 83194469 450795707 485536066 921303453 796910617 838275747 94381527 196584817 205862511 242592434 939690833 967344095 374271236 418520900 322838904 869923055 323202299 443484461 516188373 553874026 763384805 995283307 91008578 832799675 826660570 912511228 86182753 854588232 672368177 751367623 544004173 962227309 295263644 426687046 399496703 678816374 795452256 962131096 19156602 474198167 448351405 674587776 914941376 919633505 811448409 839223149 295444799 811699170 589579915 757593563 202883036 372920771 995282928 996138992 306497857 614840339 729041288 981504650 55530036 397081901 165962529 623693160 717627896 916452625 502245298 533243663 233202919 768038259 310407955 923449265 919738747 957929533 954176626 976793295 962200548 963014547 598395874 768382327 291969981 423126734 665310035 987803828 791461497 978282994 145017527 671361968 24038174 193965549 914552243 979141212 689668359 727988017 399987324 983091626 986183738 996484323 381109638 524294997 903331573 918536010 505269829 899103811 600888686 959304737 647737445 711298499 429716505 854135611 477155977 495665530 345921031 370042687 687177705 762378746 143783781 886570226 815167616 996382177 592718070 605033525 466006587 466828257 957823960 977495573 977430192 977716320 689583882 980045387 776435977 785489252 77431544 886544588 600164207 964852746 596065485 931937010 468602919 713400315 809355565 871604316 70305242 337794599 547046461 577914382 103611706 682542666 323751170 367420883 673849917 916699179 308795482 963923362 650274284 677139442 751478732 814450506 229716547 467319178 100664831 736569528 616391175 980819162 410429258 443638091 825374580 842510211 332018394 858163919 171654053 193448976 248014571 543374699 331122344 956977165 879671253 943598198 896914991 952261550 937965636 976887165 664184887 917020583 381626041 394185332 69491663 855154302 894043704 980459433 719799323 766585668 767991493 904806478 206033337 210680202 514290730 653290088 887620402 944543008 158057642 533698489 55366528 776357202 140031532 934910868 644583224 727599338 159831728 206494223 612937434 759072839 419196951 747019304 749594917 864771833 440748152 469150084 44436567 516233019 567588171 714647796 252095952 425320561 844647684 882736688 44121686 178894637 624135258 634527811 232748603 660243830 372067802 661386254 481052945 807678411 778675916 781858929 647747834 654822309 961292463 971683812 473494699 848222122 706476112 742295849 214678871 282798309 985695390 996174354 846734933 995933842 601141792 823729562 605143275 983311698 54775691 235977505 859517642 879918934 698683102 978982371 295780312 336024134 219903340 955789044 256855639 858428277 839477170 861942523 971217852 984308952 474569999 621791605 992433700 997953172 433769336 757174342 773274661 943868890 926461145 948865345 463295155 622453960 927442564 961635778 234203588 565158259 792262804 984328688 200256540 582932903 9965589 525738613 463709630 781169340 319990102 700717725 865927960 888918480 269081082 838962828 469419849 753679789 475201922 976749388 743848849 803673721 814772420 925143670 580236244 739100197 322514167 915737147 249953457 279547571 955589711 983559052 993776008 998576760 743205481 979076750 362935547 497190888 239185717 652354547 934605172 950349072 527945591 984421549 613668211 703391342 410826349 993329094 599032685 974159508 379514071 924598524 367034897 990442023 592636424 861289417 356299378 478048005 33140452 359572247 82965035 251727557 742248395 882031763 148496089 477615850 399909597 431855649 228754202 685516971 499937111 882917900 853451269 936866951 950073542 983608573 401848691 775208453 520454174 694674152 255309357 649693718 338552105 598216140 471305401 864484860 257087871 844234972 860100379 861864830 291840059 403788926 970408264 980216856 376329525 651824121 182105659 396226375 906392288 907261016 774723506 778112986 743564474 971736477 429308883 969553792 993921404 998452448 709976509 951567141 131812398 268316676 358885730 698680105 628487259 809427474 833472128 839446626 762243573 813537328 130727232 957659978 459989592 748245074 233324939 799924822 211202732 852553376 492172316 858275883 557180961 640496524 901579639 984536102 529205819 857952057 603667307 865865835 355279986 555231282 301110775 988038111 523937624 745513141 940671480 995207140 419220847 973329217 956895744 991432839 113722607 312968285 582193357 819709295 545191933 806059565 66580279 407348728 718676464 723942284 649630376 774877880 436291134 464415500 444776299 693884739 349883381 837613553 93655608 96848213 183661846 804284397 477484392 917560519 391427031 917677807 135820513 779151485 131656574 296825488 265671714 862518163 188869189 770067674 326718809 713771518 420565456 737946798 424735368 495659769 352162971 506464645 474480290 876433219 93658136 448178030 485777039 923011033 913677553 995192757 440101581 488872407 781496386 978027034 623017879 825736677 785481955 823473487 271486798 388095697 458329814 844170100 259568918 519553221 107094890 432930567 190344271 684218017 889366291 906413439 884394290 996362643 684905430 785527711 323441953 780857629 655796408 848323862 597542768 703090877 583126264 704556542 383496912 805248728 276915115 292739493 941361595 968393834 635247787 708174459 11985417 167280696 944880155 955219998 933006466 965412201 647633388 976887674 946997134 952927304 924268348 971823436 403634055 737529295 492317357 570520549 555149611 690446435 114510298 646191718 259339216 646174563 177639592 865379063 607709966 646576423 64331229 223848125 215103858 456329590 764620480 988292622 442749220 936046996 43026883 859979914 295694890 933331748 571594304 913761417 23722567 27685312 799481035 986931513 572270185 810521640 206098521 770911412 617653084 815425386 426339027 588986417 107722870 766152398 867046117 883934771 531262410 740436391 956846364 973755584 116001335 260636486 685909882 999151670 631752812 771244227 783143183 891330764 214571496 295003408 442779423 581711921 568681432 916501637 718539458 831249426 677418470 720778070 544413310 573652821 66652875 80329757 229519703 322531488 865619682 925105617 779247543 894103837 243466893 900953721 756212447 800582784 890165363 937202526 952489156 986728386 421445661 566067953 624987217 817988715 811374517 898054939 913310198 946988660 445758837 591491812 27611344 669211094 718115900 933187440 878596834 988249166 765637874 995195819 585236096 796980124 871789860 998767022 306181869 982732844 961371032 990234710 259382454 445829096 546431492 853810573 967914616 997353875 91757003 652742201 726536073 897340989 579284904 748733592 47747805 60827204 564231024 889391131 480569580 910356975 631936862 713663450 785346207 843235837 484706087 939006894 919997044 920798319 200168611 841687307 469116271 503996204 610128946 877195440 937999921 963585717 380404189 983761239 826326271 996773624 336347746 820155397 925398806 962687701 835441124 965391424 561641088 783120799 127060813 642852370 552840785 652708895 261412694 696392642 481320561 529140087 962034135 964931758 286745776 874753224 120802919 410768431 264796625 410820439 997335150 997821103 313837271 632500985 29597018 513674034 794343381 950446135 906205827 954916952 546003890 829436651 76528926 821664709 27754933 137997947 861925218 931146999 868624090 889921404 246154050 311935366 947367511 994604041 409703612 526350519 710796648 867640174 471042073 628035501 266870757 358624434 335081749 936624978 214956646 378743591 877381658 976525950 35350675 844898531 387386001 662543156 404527413 887464613 606464671 779514911 671050282 990086909 333832540 743989024 860013076 906381205 556473929 976949183 718278586 940342503 553260203 959473108 782167072 895346074 417387573 992215305 847774307 909958423 778677487 921525653 882956277 889940473 454853854 472030515 158432211 284787608 908744712 995821822 295303672 372654062 93444082 529699708 857005384 896482215 18799547 410735873 690926041 836221042 203092033 687018377 980104612 980663355 317515133 360818961 441520093 974688707 721958085 859268156 111943952 951667649 417236067 531157875 734513150 871710654 559071062 570042114 792721605 928737597 144290512 314948188 309611952 981317095 651776704 908813218 376826119 455649024 540523804 903115427 703439910 762545446 837318591 960730966 447826740 776343045 976679970 986252868 346677561 767827810 825950198 885526936 914965395 925871044 698637625 855537908 753256790 861776846 133161462 589475383 371082935 586444300 695477177 902675267 128922600 407011813 954625981 979427593 917499830 979442813 144011694 612867030 887459973 891918199 643036106 854523268 262379567 825339577 552795745 955667593 812405196 973696093 34079905 417743585 152155595 519071926 145103348 816742215 134436173 263099403 23951167 554824058 36190355 480520081 712359141 848519869 725764949 855393221 436499959 782487686 393639964 465426961 483696381 642920997 61267785 189238785 455196620 683378964 357691216 483757496 91288380 692938350 546388049 815569134 564884716 942249889 875785434 887354276 870711800 893335150 798130650 805109536 618409853 887558354 405118044 883258480 244729207 409489495 759432867 990885959 878051096 960988503 513455038 560279026 321247496 475865643 356716979 855768454 826670045 835792408 900231203 968746765 166110565 657796222 409304374 821751625 861635474 962874418 165893076 556574114 417876290 760194006 787398266 981548131 712968132 811700975 404966796 589986019 887155905 948980232 994566995 997728663 957394218 960507796 309636494 478513101 521897886 597492930 967966020 968692451 633657751 894218463 420073659 867827615 735531419 987660066 968619692 978093199 339891628 944274487 733497811 859071028 49286352 974111738 678547980 952257063 889539327 948107719 898677549 975758753 511887783 705842339 941601200 958688189 95384886 146074508 919817003 989701859 801372301 802509427 896158664 983771564 523731108 846051792 29938199 615057886 947271763 977122987 644085453 884839349 816515252 983821513 145793536 904776282 374702537 947928264 590115109 627488113 192266802 937076728 435717242 479606679 845099749 856053166 958339640 995136758 324442777 359554659 583808256 810404740 826689868 983368803 148747389 595746313 743082638 937200876 79023406 659475650 311718911 694878017 631719943 765736784 709808236 776039499 517256341 555782140 203929540 272510808 855954676 980729550 217219567 417730426 710272998 904751809 104045709 438380989 896857479 986213308 813394596 924325765 729133105 838244868 273295996 891406809 429635641 939624232 479571653 832488854 326526585 599887963 823840994 997333083 78160655 689966216 926317707 945106806 343298493 414557077 613586585 717593228 752737093 995254802 84417458 557303995 310024913 839380199 15902629 905666244 411569162 805055495 185415223 247291466 609760255 789196533 944185203 964529812 379450484 684200959 391115586 528455847 746501102 986269839 826878847 880794003 93646707 424496370 904151251 944133291 631137132 654738731 722160956 925962455 909393805 939193337 578968089 589152651 837832404 845323863 153568763 638937376 388282491 746611327 192976845 492266942 656571391 680353410 296260906 616706504 128486430 403531798 338035305 580477425 675737902 690199622 848754077 875967922 162226707 827510793 948538627 989467674 905529639 940817812 252923283 773076302 273651481 282756959 607524026 968425121 351665630 709950014 797775163 827824269 234087943 490772960 229402106 503332806 211085301 310791206 805556605 881004261 92546595 932459246 238747667 417837262 327160975 980712132 899826848 945766628 697293964 952282056 181450674 463975488 620518425 994618310 238691198 438305445 277726621 780934319 364224779 527079284 697576950 821504302 839961814 939026107 800935540 965336118 274707237 451070873 678533420 846167503 429349746 721965123 50955907 634093538 68591332 926472556 202000428 399312802 379645608 587966130 929590162 946209838 334877923 920502313 101307202 937500459 70354066 591539443 33524588 821971638 242994807 993558278 378464140 781700558 681066098 744979422 494930275 820896933 879203427 922914053 471445403 835188178 849162228 872689900 482805780 740629420 879575419 974130991 264068672 435326608 646755311 893220947 808436411 941523186 824625169 843736245 913911343 952860346 361762273 400835285 2187701 879867188 333290386 824637143 6601655 664063017 108574871 936049851 302381422 417883092 585943329 618905184 299558592 811039544 973159695 983732364 36940445 114044637 958874998 992530867 863175821 869315984 274526443 447691548 707843088 970710281 682989803 736858960 259784650 744202764 641240250 859468541 136124874 391484152 826866885 941151217 749386659 838706118 750930017 902892934 826275701 843118561 804400975 895480372 737910994 808288742 109908942 553434280 125458216 759172701 899700827 943603771 697209195 701947785 863994673 922767319 856090108 979821077 724311310 861048539 531938871 806983505 590967834 728937091 960101594 974931641 686608032 998021697 777124857 853738540 47018648 246241519 998133999 999459638 725281046 867862689 913284362 943973449 929085550 978055032 717652099 966334769 493361297 543183923 834060093 863278347 187000907 859200548 931736023 939694796 253411316 414874893 289572243 964068312 723224404 857292257 729662580 940415514 509449514 598797906 459213962 566848628 760295834 847049665 64297030 295068117 966601121 990938035 941107680 944446952 586758707 676818526 997168230 998919772 495255093 523917875 113384007 232694579 659471219 722053957 643910942 993793476 105485401 149594334 825182731 845127822 942204701 994454883 474495089 716313040 247321026 787703066 251978414 634310148 249436231 428886148 852600295 995652790 483858150 847760821 178305978 601287127 27901950 239235474 390595022 723553429 154376732 656099311 989520501 999445900 466578823 918670394 195029869 338782314 493264053 870047299 525200662 920323087 746614360 864437572 810240145 827523303 135887349 601204428 103804850 906978877 791009474 952192210 191990433 616190251 836466375 963516800 157009718 796411451 198386616 630784553 659460638 785030572 388066207 899133537 873811386 876972124 472459711 846709297 398857353 535024026 841473970 930803953 376451364 840099322 767525249 807870898 36846780 199165759 183443419 707826450 363591115 840582274 167664501 606246327 794306680 878821951 106978798 725090488 338828532 800467553 594445887 842466088 950501708 979953020 745303067 928113138 542238990 864618292 339910083 904661225 213481793 313302538 2448862 463109045 588221823 651096204 68671520 203940749 209605755 738500020 444972128 661800637 663825023 958549191 207193363 238599363 328395833 923608549 538535490 609391774 854059448 973203852 502932075 981839181 167331444 697167550 762042452 825480345 175736312 324057347 45983295 728325295 936317495 936440693 26141537 432872270 553977727 890865092 40162033 861658453 905025254 915068641 248921723 740885770 19228975 105625727 76715501 996437924 772520574 856585507 604416931 668682707 297205973 453707972 77754230 329522133 331429194 461173495 617243587 816578526 36822491 141251624 934944547 990860406 98169378 341484567 660028009 984857886 824843977 868041978 640510291 849459252 49346121 225998041 941014479 952059536 223173507 818938309 639787169 884370111 569422023 571763440 890585351 999462099 808725752 832698140 867714632 929560107 734067049 920389405 976676656 990457773 324890533 771378983 527847092 970262136 218076412 774730488 73309314 476466755 597847201 607358246 754186019 988872771 199049901 258216093 894778286 928796728 81436489 702246973 44782797 860309371 814613899 904666852 136622801 432992455 32371448 773183956 582612929 916222498 51451899 347204579 327036674 539326943 646313604 751182557 529077680 904219141 803051148 941826899 299046688 841844432 469081187 960932229 173092445 797469817 681233577 778573726 837982726 907507823 660342764 945137083 24797357 588155904 472340340 954103641 383251200 391555394 975861196 988719775 739967321 876261505 880879697 917102862 959771796 989903147 125898109 406765674 312430884 451121662 931366732 992703304 423046496 524233016 528731415 874336544 893026678 959688795 588216754 699694752 70982576 421190074 794794037 995409752 93089187 725151177 810195934 908567636 275193219 598976417 351916074 602681090 357046546 530517365 796636153 956198422 175302370 672510889 140289930 633965064 622875489 687400598 236207241 850077631 868953741 949564144 57981154 978767022 538251077 996769839 872034489 875291076 138358674 234476554 76334580 658021254 79375266 435009658 948322696 980727002 929970720 981321376 675892569 803545630 447739249 528262567 924578871 939842524 826956237 905222910 504422205 956943959 422155230 515388338 59576847 832822769 922034357 984507274 841572123 944100392 425631587 519320252 837811487 880897397 647965396 813786974 417480040 871161018 137669569 158287710 511285614 899806577 55184088 583347050 601691611 784655164 937924111 995000640 10381938 413245244 441937651 866827195 7855907 505740185 759060798 770857710 330604780 420130244 954152442 983621464 715069406 737904874 141766073 669539541 674434469 760223059 125794997 450098046 880836759 960843353 738182000 927854690 746943925 836019824 679709473 734145387 110550354 594616937 367336887 692765875 549612696 914540616 627331551 718126857 579817825 756654872 600098289 766391328 167963722 242799723 323369473 875990857 238733602 869838444 767871253 841865899 700491289 985844220 160748729 291754974 484258807 858607637 206805615 324272833 596886082 822479178 703929934 921848998 57425046 185839292 195009637 753583092 788026595 875037484 508466417 837008994 454812090 789560067 966910845 989355834 306862785 678818994 253515462 342289482 956796756 965444718 681699636 780798360 392634320 918315769 246364642 920494389 498576541 853388555 647996347 651107247 377717244 578296156 962759617 966481279 226083698 351693803 45743250 297002295 532481381 627619338 901784109 927549136 813267829 939881057 592735157 854731348 860590594 905082923 996877833 999266664 127538871 604002829 29660571 586011202 168715908 330314191 132724251 760407349 257937503 522792482 868939548 921816421 994463738 997471742 156495565 393836046 282175314 730947521 565363558 946294106 540816860 749070862 546157922 883001149 321812649 520416970 101865644 989716609 965429790 976754676 865045253 915766148 634067275 919871834 147239504 733864314 349673053 463445666 6895591 666514164 8442783 986197010 427472390 628129288 938469520 962001139 892834973 989894011 426175185 597178532 599209365 901739300 735089717 770753894 223055471 758453284 757019336 923682432 218791933 649545174 998242406 999596377 423720737 487528199 206985932 773347509 530640964 983867225 744814204 981828234 986251637 998783003 966427897 970110537 382083482 686216078 644632645 874811551 571689904 941892044 823920533 902174564 167858855 991359431 633484846 658515873 862195479 993471037 580486828 947086869 913305497 924868884 360358291 613369896 3622900 850177068 807273589 946053645 158515026 219727254 459016992 647504765 235182671 560733938 94832439 783184853 695156948 736632737 159919536 447420507 270159331 635475665 995376594 999077450 643244125 823073622 394455022 400053576 209792470 403747341 745327407 775191514 753197544 966446399 439979914 986458649 507771121 884246979 121145232 757420125 145453535 696799282 255064995 372053757 77697013 509669044 406979814 947673769 602081365 660732690 259857059 518135402 219081913 321316225 913781971 936423308 720106510 743600298 783991140 821845514 694676986 875987793 370786741 853252126 38781426 291461790 987914191 992069993 784386155 826940717 96423402 519185295 525364790 994612462 220559585 603639060 209553378 450844838 754633821 953121264 258642659 383528239 346182310 960544079 593132321 721769490 38395423 167582206 614169775 791551008 227010023 332403072 870848741 891447264 812404491 954067022 352376229 370026554 265350805 303353392 151906553 640192155 926650564 975376356 889292098 907172834 39115732 421717541 907438685 920910901 747527560 867162571 111807233 650384259 204861047 662428853 257420461 401132757 431470063 452175711 882835588 950652798 324952347 643484784 59929618 964543008 190977316 997343593 122602191 898236345 837476025 888648597 133651259 758398173 820160927 928748631 914730875 956149902 362272420 639427440 260031820 966765296 153879673 904495490 780632853 898671439 692557113 810396838 808666515 962703086 241354442 822877568 900092809 945250662 282984530 404555104 565264600 796473279 298025866 803090911 875960390 875997969 667460751 683315221 8097196 355509989 705868970 891556144 777998794 995417021 129742991 525632129 320300979 927920115 922746492 997293516 259525192 423395081 902801439 933260547 921924764 992463337 61597164 877984617 298738277 758940475 571231659 952604758 257689928 887847598 851885817 987553922 850833661 909242401 728665671 957961269 888064454 907918586 180786129 504991841 612260135 737033305 826140440 939929078 78788893 626587564 890820835 943073077 333760420 875548979 314848502 605995037 596277550 618847770 577660653 902261766 743684423 765473541 510028436 761812984 607610283 654609723 531230234 827944781 6869055 268957154 871771017 984838542 111360712 204983479 126285598 175455291 280782060 879948413 805703905 907939043 8661600 996316001 760707593 767971787 659544817 708027901 574175728 945926549 527904594 832963804 25481344 496575910 50614239 677134109 359166497 528292347 789707420 795195154 814222734 958195866 363210324 818482998 296312335 366680790 697585430 763576507 240954622 382458732 160575381 330484569 869454846 909241612 798059753 913436777 965623020 976469125 478063918 574588463 6350842 772843648 270838313 534781229 960452201 985279925 404317661 474854195 286746035 737396347 229413657 589322056 52215570 784000692 401616019 592530046 29217482 452587362 158887645 386761695 794219727 974398438 471563669 602918846 534308901 942209558 885246250 900463471 16687736 516293852 839891173 852040997 649928285 969578239 994970135 998072625 875346460 967254858 376177000 872169271 510489933 760040377 467657402 611664805 480025846 632662760 276615064 863895851 669854129 718333292 381183882 444558751 352996026 610548642 973393771 984518248 214318611 606324393 153039124 695917005 687776772 885159027 765535337 920409144 682450322 904929196 472414736 635892328 595126051 670568057 462032443 953155640 886659277 958485814 229100760 728159107 727132835 915549038 311724884 697075305 282404667 687054385 710458388 949918492 63762847 976041808 920055985 991830098 936566863 939443916 520278670 542610994 79355003 550575481 42987049 906868773 628761606 734104564 834663385 882043176 250009950 568327048 762985075 954066050 819785360 937229212 245052633 371585921 755741869 942969982 684138920 958511972 101158081 979295264 293775410 681204963 875847087 972201298 839399376 948189014 74688564 310923812 2442901 588451263 728735009 731593844 439188920 444881448 148975154 607896531 368856566 538969938 718098102 957411745 816571711 873839720 186469211 646877965 712427477 967873602 765580390 856806824 369352545 614618761 177442262 884533847 414542467 894019869 94376760 374937094 143009785 950632681 265190917 854592889 505179872 879322805 509087944 898970350 260463150 333301789 904158847 957750814 390839620 622835866 423296545 661024576 48027748 159454634 157017458 168718893 674029420 728063023 28948748 464345038 267677925 904590975 798057048 853652319 497386191 851880179 619393799 831465164 683884943 912149300 975835725 999647531 327919433 718776331 626853490 909219795 685658858 849943567 28676786 579321869 640272608 916926925 472245389 504948131 56772242 537842950 571367203 831424937 160694433 581345949 978928326 979650478 47819772 716247329 403020613 720961678 123782491 269438712 617877559 925738919 907101196 990500344 173524655 392547525 587665699 937784587 912290751 975587295 707808656 811046506 744218994 912814390 78681878 97191475 946742134 950830457 350996977 471206634 885999624 974819651 317314724 442615805 458447875 617055795 916241861 944425430 160102345 963348254 122145124 794520386 314089259 849428723 889607058 900905017 350213850 875897473 518787763 893313430 237489189 599962434 920297811 972663165 36912470 335038789 227646566 911560085 565521481 686707495 993562489 995141621 177921271 796282255 20290790 208622805 170098069 865435501 334949183 699023137 364244083 545323766 329226588 834975390 674569352 938826743 238246281 518509786 753826597 826318279 568822051 698969909 171037734 431975123 966441371 991352480 214938916 597843313 631148829 813718996 311966245 742977458 162884783 762678282 12097092 682877809 9879791 485358251 245657953 829352398 442859627 468044407 51039947 706513877 980664698 983890416 381797306 928203750 898142116 935184168 216766481 823552734 794519637 894998924 538606662 564571036 175628293 524925310 240332402 972212640 609196075 766134340 182560729 993054848 914813372 923383152 143300400 542029504 528788761 641324898 790431449 825606946 950173957 988956619 438204290 631145614 134272926 511968943 616196600 820002544 169012076 928484609 907458415 938051080 295789162 305950092 396234775 396305867 612371437 810483629 163239204 337488601 335785298 595252536 960437973 964860037 269760683 843821102 953348247 987934952 501687661 922343686 13241665 529407300 79411361 350152209 80137547 569460788 301669446 616879874 739153503 790686195 48614884 259844872 856316860 927231439 525633892 765514744 155772876 535225252 461005558 826956225 503831495 529710794 509569655 556385101 477424792 635425426 551733467 804644496 481428186 774308050 336994736 434406846 599470567 667286582 112710739 218366720 76460509 236525137 509691829 716302853 98776732 875953982 221464257 580574352 283220155 299863667 996898406 998737233 881030923 984356807 976219041 994805697 39977745 866680503 562335082 685776501 735806177 755171935 602983211 796022366 676371814 727059171 3517239 748351393 845744559 853298516 342580276 943341807 833465404 981140633 868657858 913987297 625363215 741923044 625286168 878000612 920236315 989930966 342736418 398094633 528630949 673168855 740697957 891516011 30775301 341575303 17153310 51515784 392042129 516612774 971222771 973663067 479851612 597312632 885691679 920565744 998198948 998941319 885786901 913982152 192378839 498086618 953763808 963495994 439035575 934799533 666673026 940022623 686917110 926921198 762754608 887117944 928526897 961747317 226476656 895843035 260542681 830872090 61574547 866726169 641446561 920552160 58736058 156367180 751821164 914631244 699535108 933934997 417672302 853217813 688412873 834824247 454537304 664731815 368597873 685575698 353716611 500870797 313492827 571316140 341895733 777136698 331669082 455027292 830022750 883968602 235557548 652882950 330603176 524348198 270767986 883967416 437144409 636581762 282409825 334231932 288216326 723699327 155359481 721636935 475852567 642011985 462482638 919843636 130743252 230731323 890606255 970360555 792191052 940298528 650128907 655800569 519319366 586519601 512842517 928172402 587000463 931752366 612996545 930456147 968131013 980518126 965746687 975489775 968576203 971434332 466403888 946410530 447329574 490311533 991715240 993048642 976797006 991627515 22120658 886747267 967315789 976596993 674933763 936367695 400310665 865249745 815564420 832247121 228746810 255487006 687130038 879561225 446372883 650939887 467192346 779291726 326834909 583162199 4152256 483072759 302615024 912624776 809396985 978995563 578045954 942082281 332874803 390907990 277771454 949020861 30922975 886161745 135120676 938782493 637588430 941408387 122395343 659747539 555298877 783669939 597392314 629422242 59554477 652202591 827782512 906965861 207536775 926073885 713600289 895142125 233976120 844196157 862082142 894756231 17630574 304390349 143475589 732547453 11430005 380647806 556240995 621590075 883646850 897852477 735090266 814891274 395110749 841851729 278005588 979029646 613668496 692126293 863823096 867768735 40012934 435972031 454800268 768251896 132001092 627135599 368439509 597540600 553449622 699496729 363032727 632558338 49844632 895641668 450378398 525649504 555454632 990578301 298045686 728296945 170173043 582701701 134197794 981627398 520863203 637494694 246788054 850464152 927750736 996201336 596609711 861708793 314695117 937775625 771652804 994770550 55929534 528924592 327665117 586122164 129098666 913126035 152936264 357572076 224575029 896490210 718176458 915735956 979268756 984514108 505442402 620116095 154883098 957186429 760493018 769424760 443654249 985620023 850886457 966142817 678624991 808083534 272270049 985034745 961081373 990116726 650370473 818097460 984502110 990983916 771687565 899954110 779584624 921275376 297273004 806995877 85952360 372042828 585100154 874611750 447127389 731933130 23564797 944494774 176055394 603477958 376833147 783271611 616857438 800377506 448086860 481688087 224048584 680169671 239820086 806224362 131502352 225876266 321394785 978324166 578263565 751379246 101420340 429494035 160585246 586545149 644978498 988813808 126942678 868355496 224177663 361338009 836043013 900253996 311729816 740954169 652134498 701783702 162659062 802484557 510077660 933884172 409988117 714435205 294834031 425140940 719175588 917138492 192608172 316983385 266055129 639625877 444608008 705009014 519326936 904288940 789071358 981831754 377381848 895978953 589771120 937163594 576601935 834585099 507446365 592777388 150954575 989735115 856840037 894133224 614503017 730621795 700052948 717132307 58846964 480262972 595396401 683592666 733165179 830275569 888639688 974117125 980335604 990191208 100542411 883419184 891018424 901756236 319826705 732960918 43973159 431823803 4344395 563291565 756395196 904285528 613823577 641103660 195808062 834299205 947723384 976009812 637696003 690101133 235379518 748319785 694173068 913052411 614884554 728396860 11661174 477511338 591685483 879005837 306201966 729725427 708087774 871506825 658680610 786865074 589894125 664704824 17876153 100864215 161786020 360772708 665166206 972653546 540057193 622120207 51335666 962910363 459189736 638109498 404353422 924409375 835872717 902460946 898394183 941852984 659133810 768056624 555543370 850232525 645195171 974098964 669009553 914218598 453136968 658957589 988899819 995827977 376874200 553989763 280602616 841016304 267112251 882144075 84863031 321356607 841534564 876678515 841909294 971201411 375278914 826369164 884618075 974217191 395183345 571282624 260120848 635253346 100480358 671772364 756556707 772213399 372248984 602893678 556332986 905007871 465157205 569651318 787841043 945297004 847730868 895745344 248862982 845729004 727973195 862519167 55139800 400868508 430864745 888089682 469242304 874320092 806247818 927715511 469880254 863369652 630105586 854544203 546955445 870741558 665246613 777827359 303475092 931909685 693560819 872989404 415887989 441905232 746633113 798602466 202497358 501958538 143922955 650478320 430934034 434260559 362550286 985255433 116097768 645942210 845450658 888132584 572333237 721730677 909146868 961970125 662857675 817754747 722601909 942346670 920547362 957452215 244921271 686951744 506723349 543456339 944478625 991497098 870309585 899722835 819714817 942246813 30350689 901332863 53891754 70713614 532183721 579234957 50532371 791501614 695145069 818690568 656465804 944698582 89018888 885608207 136091124 418802325 851991410 979489374 631400160 952159701 212375409 623257043 539343228 562679218 701188948 823107504 700025192 854087792 189722346 880917510 762826693 790576329 958226093 974803102 825024830 955345492 867113171 953393672 681987675 734399899 161007600 191001162 229424330 788044806 412977528 863038563 637500429 836506756 239828293 494219711 825502639 996353912 491212742 810780491 821321240 957071350 441840308 752447350 611323829 810426806 412420455 990868065 625331664 657689119 499917910 524165228 909211609 970824788 380110670 802073675 204725541 946335252 333020773 423892319 78847391 779416957 798790561 857144116 39360191 82954759 301431654 945240551 782450965 819706489 553983387 937745833 801153040 887340762 440471476 988582114 801687007 868048627 829041470 840579645 918020764 929351311 489599908 534451967 57430251 107372250 581771529 964711441 121776186 263795354 317800965 353022811 674729213 741515905 378999861 889340758 450454816 704790423 87162721 822131261 920234114 953679867 491469412 696140978 238007843 850485623 209784805 703430895 566741479 956187051 650876858 871587342 14880170 341614948 800595247 946941517 494151092 848711940 324975953 641179536 633508936 645556109 790650690 961373286 614076535 712799731 568310431 793131485 8343199 685722923 226601853 787429413 46008922 599725350 437805933 671589944 291601253 656428751 928361898 934335873 720121668 932910487 657279759 769305637 113301798 368752252 433871482 638500945 785325288 892170170 917057260 929203499 871041121 916268644 794253220 945662460 97954145 128883228 643414854 857682174 657550853 667851360 797126733 962384797 610352858 953681790 501059079 942915892 922530913 944216811 73522794 229888326 887688251 923379470 89872323 180917477 841365396 944238130 80048508 82918843 315285296 339068249 103178764 592938148 736252471 777854822 202574198 608984836 312394363 726868171 654508673 754625136 675949584 865997683 502942920 680411780 101113853 253198435 516629815 589883787 375422066 482756463 420634421 513580035 83689521 541601942 133377997 255085722 401183254 930356747 706101468 950404492 318076821 916294115 300476471 989017245 492924700 943651633 614588203 832359130 449518238 948058861 15030059 695854912 552485700 708248577 509883165 829443426 556909364 713995078 741414134 926158097 515081685 935459693 9701836 485540031 840371803 958789046 532865626 762990581 63196950 447989064 669790035 950374247 445659644 573257990 832384820 885918339 123139432 810373415 956788095 957023138 645284642 908567871 334902452 586318420 749682123 754719642 773352302 896018358 264504703 692371682 169094058 331094792 790857712 948532591 78395799 886681320 587723439 910196293 788905538 913912135 212152448 238420344 365924754 800588160 950495941 991981970 276231994 693614251 102776262 328653763 227130929 391611903 2887864 977177051 813173029 991002073 118443741 506015713 904885696 967400499 844158553 945363885 136298710 726596638 67061673 875709968 381946762 545489969 170992912 192733108 513631677 727951472 840354589 914018964 377933119 971558976 865007955 978270595 474647655 595618975 623526894 626143076 429720665 789306627 185307519 577820609 516033834 784795789 727385533 992867245 115157336 148441945 905086515 950990283 901838216 969421732 978081934 994074720 378098606 741674850 705153601 895557189 263310303 715185324 973230931 994391170 89226148 240756378 621298971 851828045 442176525 826530298 66065600 503745483 566549365 936207383 872893286 895492322 472418771 484162161 525256758 903544729 893494789 971712712 771117590 815429281 170724572 719862891 673598613 977356304 102374918 822127745 696714814 721896860 737556875 776821439 937164028 982970615 548830893 992616667 109553317 787266085 256304273 915447672 69451594 350895751 853500472 871820208 466910224 495643184 45151949 447305227 283950734 577134945 476623684 507893328 742979831 783358106 485912353 583847582 594414330 839862948 266776264 892899480 646704523 690253993 926264047 980343623 328548343 432382817 997040912 998465159 306856081 503964108 553862554 800152927 874452327 968692532 334556412 909233787 175278713 454028800 38907347 539463560 309716990 822964165 129630293 682862095 640280723 902214784 735068299 739788348 363145736 516271220 612091966 996984734 805864149 965917715 447314766 895562466 886753927 904157045 555182246 618632066 815073148 901918201 411673219 746699995 484420103 662686499 46292720 93075901 413960180 810573615 761185287 860129112 42030137 321422500 896659608 924098475 937995122 942487610 794282312 863984188 498087831 854182462 816117185 818808938 235274467 753481026 470750145 799136454 352437130 832272744 965006105 978327287 111323812 242219668 92297097 918325822 864061231 936895699 616977275 738084755 808188436 938216134 127504560 820426133 800968635 935477065 617618793 751755085 308034566 313496460 658565362 872487221 540515412 946669566 56735392 392645035 842961458 977458951 90223073 433481185 246350092 805330344 710980823 840704712 593763235 696444550 192339989 387412010 861329234 971306450 376834040 990345568 874028752 895873392 254667694 977633397 281056386 974229062 683092924 837744093 738556902 849172285 293510618 602432312 811535553 952734506 290118608 435841705 265591416 759215109 444819380 445014580 569508577 673373567 220240776 678219971 831860540 872396403 15144230 333367772 585858960 905920586 799683881 994078677 542507478 831730843 181664272 371930457 542601522 684788337 747928958 944099743 977057162 983199525 810441452 902088733 919106862 944096125 971083296 985507620 831786297 905961796 719544170 720514364 300273772 811370597 964884123 997267723 641806700 762150428 81898841 438599179 452774665 851572941 729539129 852985713 152957288 227443375 204542636 268621382 867863361 885445513 706960754 856545430 358679308 952941958 710771779 840598691 382379622 662763348 672056498 870715439 915696223 958645251 785971870 845141587 220148347 872545947 826727141 964990883 882823523 961437117 481390731 538165855 232940913 498792489 30192407 146469541 624712104 960283852 292066126 486183076 126416855 897617168 586233500 769747043 611836508 706786886 767502321 868976502 175442524 187145100 308804978 836597211 597187932 916466077 907381359 922057992 411905677 866375905 285324143 498802541 436632376 822801408 301651578 700771457 353494741 900906174 426758959 545940751 871757678 990236540 134006266 568143224 410212616 560164345 208136435 435867237 545160969 711219563 516363269 905607764 481778909 867123829 371143955 930949156 499067017 606829193 712516416 742980550 560579050 621999080 121511729 496515634 628798951 824838091 903147154 915958865 197210895 822173445 57492822 647557224 824005597 985739145 815478915 988489902 251987280 447346383 459957602 881646314 202022326 429266567 4044530 975216889 884767137 915285843 9180629 775985573 1568025 842142739 46719189 528331671 525259989 715537390 369893570 584278440 537448159 705878047 16306985 102967598 277183754 945128879 349705772 998385864 554828908 716544040 129691974 426077555 597353665 687816435 524319131 671851197 26985355 952116455 494388364 916725362 346107083 616590145 961848828 963590918 338363718 494581968 594918715 793087766 276845107 636972500 52891338 686805243 584371604 701632430 330892190 643764536 334675866 923205200 393087602 431406644 630865823 799355022 944961495 947751273 118971958 821030811 392764837 965991892 897929923 942339583 730700959 770548928 313315702 316320946 441940006 771240622 355133503 596723398 895944602 946199354 584548181 865963616 620146384 729586564 861203225 886934292 501168594 529412541 431093239 863278961 350338665 487451586 20629536 148727981 648422179 688454833 246053848 397337894 533122819 577994741 92175972 573222605 96098142 139196040 411608382 537744369 145389411 163597786 923434476 990186940 445807374 834777085 631388269 635397181 626985951 827355075 481103347 548182104 234379875 259060890 165156014 563341434 384983330 810128355 850065950 905182094 282392782 317524564 359612511 999556174 796114854 966962216 677509469 963225314 842018122 953429780 45061077 234581857 916329455 979874206 186904558 355137261 628459313 656622027 992368384 995732778 400055597 718611792 202409623 873182544 169304138 896613534 186864704 819628506 85593662 99206076 553600601 950203533 644750526 659945338 828534090 898989048 938237577 952893688 361726265 861838733 981395825 985312753 975432993 987656764 723262599 864934281 998849383 999919724 106221132 451354270 405876831 820695583 876161136 985001690 175688026 309477907 133696787 662829920 219570629 672349617 765600232 908584427 951993290 980711165 506432329 784215810 485079269 499408988 363021670 386222178 503071133 623736738 956320297 978465574 265636543 696172306 951365377 953281287 837177149 895316567 922086288 995477778 576944698 950034219 457599909 557867095 21708097 53056689 560403535 774063017 636440281 883750981 17805464 159392146 807204125 947292274 152848915 835427782 978647890 980879672 547057739 897414749 521428194 991611677 120277528 846328630 637271516 830883863 872947665 999878348 386707359 958739204 478886270 534056317 163067206 534877100 759499235 989799676 265938455 723796118 342323784 717649632 529151824 681181781 307580786 836439343 315072602 632924529 508731312 785408628 83488315 582014852 409363753 748345304 845450591 858096298 695549418 785332082 685790374 879684746 471114837 925429350 589856654 903256196 193483653 369219155 714817598 775721284 641555606 986231212 526913416 619427057 835874021 974842579 328954204 750582779 911561498 965289520 266384727 859650307 372014285 997502531 904275273 981977430 811006127 973322050 242332202 494056966 978970242 996976257 631970122 840828599 39777928 580703902 867434328 947897461 964479471 970559290 394316868 509786170 409672158 848102051 438265977 977304374 486177122 655006151 955999042 964599990 657009827 666573094 833032860 960953959 780789351 917727168 646739702 819190862 108022562 194193763 427124510 434069754 291841736 504377223 665071461 740554132 916854998 943205538 200229002 932729727 46019354 375009896 489163569 490731375 382956831 577952028 145328525 971513250 573708440 920702243 639508084 663032270 349434697 716805325 793093430 868066629 622093026 855351709 317622361 815568621 562412982 996355374 915799627 952471652 343783285 920013895 864210642 920980340 301460950 489366922 471390571 483863514 563945894 753384539 737008483 787094662 672005401 862404151 753260855 948133507 676138030 828375875 562300384 753462093 366946203 494448850 322236460 750184499 170898091 951953458 495614380 532419212 856224909 950456869 480524520 783991016 252421324 997710928 436508575 907371245 603504117 839239389 779785214 846304611 38712317 54370625 668412283 668517451 701976767 861492785 636638986 766214042 334598614 902857587 291508335 401599087 595359868 871550422 51012464 455036427 321255587 419259193 334538594 566194537 386472530 869021319 845889703 928580802 615734334 842199904 709501008 800659461 549046381 580691221 632755750 734905723 629195784 678996515 108327410 748283704 27827754 300460005 828707373 965408086 399038614 916083195 939805143 989595779 513937889 932086587 416744776 735956717 689197535 979458025 369635255 708988899 127275507 513900736 492812321 556901859 532371872 788568308 550356103 565984852 925721413 932400882 996268466 998348511 515938120 670441438 54154493 686596336 790594175 866434630 824246522 969261943 553711362 685382957 823741450 999171495 721035916 953800480 845028040 913602206 110138858 425656617 286595051 944881829 550741658 797295382 810768662 882751646 946114493 954246703 693282531 826585043 666289396 734451873 880380215 967841036 635699967 927156950 476241471 937564523 420532591 914713080 916276873 968849421 993620609 995910424 561739679 902906466 415440978 805842196 781595420 840126988 882387122 928339278 253774290 575647790 527631325 660230288 222981270 999785574 69295437 579076817 106734621 254192373 181465461 597783768 183916206 314585420 269772843 743280569 919019760 983955973 454237546 685410378 140797054 589957581 501123705 849506174 824215682 838883183 953142930 955538671 73824369 121641946 531187934 759024385 402380829 861583701 465128773 917482008 993903451 995888129 463743030 574638994 500199787 885060290 921728344 945184784 679669479 693352442 364643138 727606578 844790857 906721823 352690426 387049414 655476484 678256178 308487528 349300986 62150770 566300128 2562351 97117484 283387482 537942418 279930896 926596002 849879597 876515198 919997739 999956359 929058849 933511662 229514343 501503891 512869726 639294040 728069085 804291800 953008963 999045116 275764266 984282391 596322454 856632905 906712016 979421549 378545652 552991535 988612935 990559028 118171787 587288722 697792992 731177228 172471635 845260777 907876410 956905472 932732623 938887155 603790490 731862907 929810302 939131911 241378168 915260746 960573872 961904979 670692409 995765224 717163701 796428166 162195913 947386350 973513156 992852846 362976825 873447060 436709851 849242867 975261612 982187768 101478745 874246535 764368617 781585864 822085740 923478237 952813356 984946737 137043311 960485385 556725434 883302071 755858146 854305813 909333682 978793838 541351126 657979513 754592195 908657688 428372688 503287892 898877560 948532145 806386848 984673939 864298011 941797736 292588495 724733363 401194556 893484456 993960263 994423989 665076073 689561892 314372517 660851342 690704400 694689481 229399808 618839273 605427806 755795512 88755521 330957687 238732159 325352600 494083464 848083091 107022651 629101372 379569713 571104964 19251645 664921917 661466799 884939411 683854961 914158863 660413121 824441987 870259613 952027785 88054891 969288990 117274881 860168227 733224779 826531618 105503796 362829619 421623440 607163229 649988374 730450672 465036207 797862544 139962162 994894772 697980960 740513731 924075279 999157866 938933070 974269370 553610329 643709878 393322346 555848899 524552082 863269989 164678114 927076034 833323524 845730530 66300638 169833531 725493113 852199168 454753084 572338849 179467830 856861058 849018785 936358447 985926519 987593790 347927132 701706307 781630336 935592518 18702400 622453159 448243488 869422392 677163478 733099560 313196821 452238460 592711536 958366424 776538949 833797546 768661247 993528635 673618370 691201066 224503756 540786357 293598966 815391259 96751651 494457518 570009456 613406404 357343748 404459640 657482110 856644285 474938639 544212863 56137274 154984143 157685293 899987673 611137777 613466357 634741599 722318070 542350802 751030182 815688754 900392016 684049298 888571049 48865513 294738597 253893727 980809607 618434134 859522990 1955478 565448073 457801575 789090302 498562830 942141407 258369382 778106184 791184549 812293583 415905729 651618299 164396774 266807417 30424516 462135752 32533258 874331696 250333232 947080774 786598502 926047873 928648629 961116723 828655351 834218165 249134230 866205715 84453584 418822645 353893113 518437831 662540322 708643676 614546512 950210454 783736314 917769179 567980824 715483736 635094770 855430057 382440808 903634205 593575041 961516794 852804893 947803406 284775133 784993779 453520523 609241967 695619272 857899634 525537173 680653358 229146687 613053686 265029961 872708944 840929627 966625583 478915236 713054326 435119952 676377120 545697690 802173892 461749984 471163679 425110432 843449701 453388411 649868733 785553444 832092935 867156225 913987239 316700862 916409211 329708126 869322273 391363804 851707286 460479065 515161117 881407683 933039696 790679599 973252599 426256832 530790801 401922199 472357861 493436890 544488745 234084004 377214136 998470438 999286805 110201108 624557063 843579015 862520082 853424155 892189599 4826861 23118257 862198473 999286326 314576876 956435591 811420480 852327642 704518747 760441482 111283709 448301477 415409489 534414032 843539036 988429435 212954150 360988745 426557635 488144044 699084953 759392764 88530514 685914878 491975991 828445777 224484223 482331222 822623952 833155154 449294251 755847971 433331894 641378038 327010432 423786151 473481070 981063881 153831947 696765814 509991196 700893839 287049778 696453960 471578654 610880980 251677806 725493139 218092907 424079701 917706595 917732615 398756894 855780399 906325300 919643278 948409804 985346377 471768221 499177655 547003816 966512210 705821407 789782895 318831478 743044997 7733600 103818620 883737189 923470271 273854597 346587711 330286235 910479805 127120868 716015136 226250509 715287984 413934321 693182575 651389257 836874715 657351196 968221570 342775744 548443676 677902862 904497361 491171727 851947276 629705777 950251603 69301658 503264022 96894092 997987757 859217689 953822993 591542400 675136075 862973063 867194950 900889408 934434362 171743297 593377931 924883665 970665769 776368099 889569718 376171817 881744484 594275226 842117149 703831185 961200675 777191356 880568286 41015728 830894949 983385621 987731295 321112399 379835160 175998277 538887246 940670076 989356599 448970171 796405508 79096949 674951854 863811439 931422203 740470981 832697634 117504288 878713320 220190244 406734714 323244803 834295746 276339596 925984816 114768393 718321918 220222534 355916598 885962925 947316523 963912109 966396718 577511505 950034995 916018906 952732641 335582795 516891260 603736749 845550422 390719150 499471599 541547981 968720244 3628628 13492137 577900987 969547573 510997311 877511701 968904541 979158408 650748136 712046084 817784768 957091835 472954145 537980302 224431483 292237805 642718875 709726495 212664567 512099686 914720096 960037788 625625501 963671629 71105616 614223406 421321307 459609395 573864427 588664905 588163740 995820174 195206460 918194422 404903011 945016373 138737530 824566746 656538908 936348427 111885822 661813072 165623057 201957894 148294933 991672466 623611568 693571038 33343852 609618453 316344808 841857724 527019163 621800357 741504417 987132800 709078432 846780698 694838656 969690856 115372284 250126203 282315183 553937501 890944748 974756737 891076961 924176362 558145484 950734484 482720808 529123488 370054252 983810380 990849208 995138932 395528327 661542400 526781458 681261582 562804059 875526518 884693102 921317638 782046962 990689988 101959759 441578061 228453273 483816251 620058766 723261193 200802002 664862234 337960320 835569865 829569013 933241234 392518559 424650269 516467953 906892820 334850247 410178125 333181844 929854383 564614505 654222421 152703704 608137807 24438450 231959683 404901216 687503792 628253380 687021284 210727796 760712984 767683138 914168933 19214657 108240313 828228967 878279279 823328845 836382826 635584837 638165393 962769367 989237045 366031150 423791791 529212272 643655132 30544774 532197138 800755806 955162390 87192486 402960785 219483966 913727239 238945966 790529852 817353154 957845750 991577950 995723120 971865347 971878567 620647693 885269680 99854771 566224604 691189924 847508744 929005655 991930088 179714115 970756716 962431706 982021256 262946312 564673653 623681915 840998240 797798438 798320534 561433519 935568005 749468012 856309203 406349511 640955604 588867517 624640428 875117809 925013749 306658609 850092375 578529151 882450297 294870217 856746003 196671249 875092633 668349060 708348923 1318007 733715928 810619543 912784735 229154101 568624093 976474904 990897130 723907999 849367694 886894473 902469143 372477565 663028323 285280720 809132814 368642860 485078670 520710858 927125141 643258576 799352191 359951264 363491336 786374672 966515990 575859927 611907296 690116051 919998840 391303304 779011748 386296964 660459333 448786191 645055812 630475911 748890951 234373589 969869032 889532852 982719592 203177674 246560483 833847371 838377917 590739018 647709369 2432449 322860150 946432988 954466394 522150904 723403052 589502784 766115385 962228498 982941480 951280184 992541976 608871858 891718160 770971234 837983192 598457942 957127827 649933932 772731675 41767721 456981075 267783561 369353681 433118098 938482784 593191785 998251425 376961079 825680121 484122064 975456029 808523083 933633029 854980164 975939309 176771468 661271202 579664323 619656000 957413852 975297414 171977017 804361934 41184443 970887654 320004621 405240531 205567239 867933055 880000840 999902996 472705400 594251326 161084517 572450535 372105906 886313399 313469194 335220799 440303283 474458865 685854626 787427242 191230904 356620583 995706630 996582408 577787537 758608400 817495505 958750343 692544192 703459501 661634698 693923660 874418323 883252533 622632814 890414860 352330581 667171582 317370546 539926659 60068545 966402064 566603167 839090828 124506169 216568541 254301804 389768115 577614317 905761140 713799248 778421099 588284538 695355729 948121500 973890533 841385243 891718409 603134430 619582171 585531042 985966416 804437151 958629311 967782778 984358746 104377778 308961906 665009149 719959469 449415385 826351160 477466775 923586366 48254852 686614760 377437964 525165018 67917936 629455519 694349474 697826548 611505358 780322535 240915476 706029812 995050126 997654025 585488521 901650905 482651208 882084799 506210813 689976610 459755554 603232163 259147491 984906826 583623560 657836475 997020529 997405987 803335862 974841929 433366548 840686266 789380255 907071016 885543720 946162339 428379989 830791905 64811516 269513877 822956951 869101723 745211767 778102453 910310355 980213348 628460350 849467203 843171954 980311685 491927311 816480943 823465500 935890952 319218294 718373540 282992846 350793601 678738947 946082765 578835634 729612651 882047653 980595524 915668250 966822083 896131785 921316841 100901162 229831959 821042642 823796697 943567090 946979058 499926427 814989729 915435775 983771253 263933236 329208293 104176908 400850615 565362361 586436987 823419844 862620091 380157036 926901132 566760483 834238889 400426007 494446492 799851161 896717233 418283731 916710292 310842006 867303319 564124783 617944604 726704427 904120407 643094641 829914887 815194086 999895863 367368030 629228810 250257547 353172305 685354938 851862997 123314512 838801608 401039785 979704216 522294927 838718421 539107658 734267327 513908835 781236972 854996518 990498250 496043218 556955209 381578391 489155328 140358482 264149425 914900179 961098989 822288331 850826183 560067299 645712970 752196872 868323602 444806416 811859157 444081285 665151747 380926532 586103952 544457848 787518870 684755042 872044910 828156495 915330729 536762966 891730949 888092973 988708586 560929144 906510680 531977473 611910569 157462468 842372323 191055771 456680408 4157598 401065268 901865098 921354698 428122859 433114120 460585604 797630904 440550810 888885212 586393127 624318176 594948489 631483910 771105121 961118846 654625196 935737899 290152769 823940395 516412311 561931898 231163717 807372378 67883953 82100743 684950943 738620598 452705519 606124176 752354750 798740327 316997884 933163328 928508409 988364598 877166183 945066179 6783875 273753069 502104981 999580021 221998579 497707265 323332724 467413304 234508999 683628621 870738187 959069214 363445434 801820816 698689268 952114356 872023162 882606595 486174212 560377259 372192805 875046726 613598176 951967016 652383652 892449813 678312476 811703597 627570714 975948709 41193931 834655475 472082833 752720728 320183383 590908248 669825342 676087593 211855745 937846359 173228626 243216683 201102255 721606787 87274030 645976849 35653674 420616426 843978676 922203450 574964589 807240079 352081355 557086366 503315737 675078664 330908008 473181311 217388662 951486899 418398962 627475377 459816368 974350446 811628841 864324004 111961352 388434507 424937219 456495039 297179268 843811594 858640428 950263683 141068238 856930544 689022683 727262140 672274577 873215045 88992421 185203577 554532885 965804718 888496689 907043899 26125136 555413709 615612803 956476315 825963134 852912241 617292931 872476151 973421388 974791391 369453374 515814964 426044301 503130388 305654853 999809499 360232645 649999376 972479514 984891703 589956095 990514905 72914732 402964191 592273077 816587300 638195097 925485703 206015580 390720612 835248190 964890837 933310846 972145191 345413368 887561471 835929871 863596057 305829115 520877972 392988424 895412420 761289903 761643372 286206616 388809793 900280460 975194241 670328221 965023892 534722285 579511106 731102045 865054728 58489905 762008642 598924469 880836134 835515268 891824841 977510327 983143957 838487199 917405357 652473476 653976304 926273853 981282293 697298871 827907674 525387516 657417159 343638890 927736757 36486062 723176280 525715759 846412757 854779638 916387179 538976459 963340898 140299819 817384143 349161974 622918499 691120645 971584773 625881905 915474736 267314084 935705229 26074049 821633014 700183611 712164978 610921645 970247732 99679920 173061390 273640291 728653033 780044833 963701894 479966211 958106484 277456883 914001388 914748846 988546854 678323200 929508400 631356820 726039945 745143487 946866380 391464039 550631700 532669665 990848740 532401511 669850459 683624192 815791689 170879414 899955270 136360001 966812408 184005811 250669712 174836410 287122362 495130236 826216448 536312961 872034757 576528687 829044611 939890498 942981681 762382314 797222576 206983085 635196393 147576855 291769639 917441821 967108524 799560198 968065916 583860388 684533633 961681770 985916311 462770959 887120274 126524134 876398226 781343146 927121930 677802639 887773550 745204474 911225211 570122957 776400862 552335324 965263157 983791991 989440067 655820480 884072957 752862584 789929972 183890839 657463875 895914595 923769871 581338881 725427405 795078962 843438281 143436422 306038640 754318852 764197827 29182390 89946955 476865652 877033133 455019660 647725398 175685544 424673482 118684680 605117908 770547212 776757222 255511882 674112115 991105275 993284840 593555868 977737885 790412187 917254957 270674967 375921858 531797781 791303683 895785671 895948891 721567866 833096651 343741034 814090937 453970315 871941036 242212626 467129374 393386952 938475369 290329824 667027791 481775503 730747643 997334129 998842349 660437666 851966167 371622451 970128973 160610198 762458784 328994425 639520470 372936051 772847918 848664008 908599809 825225624 950974329 263089566 867645020 114646635 412793870 785049564 796400703 78303202 625365238 39041529 925868978 800384364 813712532 563148617 945717492 592822438 946627167 660799681 811979932 575987501 896494314 102546507 480198873 825811863 859466176 421563005 874101737 545909394 731049751 26474975 226329047 221664260 375851496 458609217 761638780 114182232 870037848 904993037 946531218 365778002 394193012 742126390 792438887 736045411 853527243 596726075 854027630 278103484 923734948 526080048 797974637 17771475 241375551 513698525 744671205 14783198 101176660 980745415 991484085 706025123 920740117 863139166 976408695 276130304 977572718 788085402 924851062 436310427 439445216 708099392 938868851 232221476 537065969 640683482 988774088 876685575 905722045 515194157 936797774 389564663 411537643 790755268 960706017 242707221 434885762 526839584 602774023 812103574 843766055 487473670 910157793 593413582 788119603 684839717 712092308 596642968 657901534 196259826 650924498 545248787 831352734 269450059 698368153 563562930 809961149 695535833 926428617 671840250 726908061 831461614 894950495 850654813 903559384 272200583 591150275 841042539 928222577 402781873 910242640 561740148 757189249 337241042 627007838 199221127 807556933 201902438 256268868 910628524 978782690 362626807 695167168 710558214 754800012 571481037 590042589 903947194 920134245 501200547 620666480 33888990 857185234 706011662 997657345 321294497 977061842 972297596 996035795 481369130 659667432 609244583 765534736 569671029 707441253 177423040 607036676 194482324 527956242 881070593 917238224 795448724 969461053 570223238 799038638 986874909 990161688 212446230 611931181 920579145 959495160 2271691 309866275 573209471 855347212 199062771 612861304 697531741 786482264 347652496 754201349 900025060 976238163 952868479 973025980 307268489 473993296 174930556 683431390 461288148 495454748 142093944 849189969 555909120 958031508 134387014 554783377 748665558 754895630 530367050 560083609 17600282 383120490 108089894 465082401 255413514 526803144 705686470 751961900 314527563 396444354 297912861 310927128 669476771 776139969 244435652 470568843 460956456 893475966 832113877 890840262 571458037 634316458 970442386 982384515 689624063 933880737 36636589 425034792 551861210 718676179 623324965 956195624 710296948 967566215 162329409 445409184 290393901 504867455 26374565 333288142 664195231 732154768 572236520 669057454 406953956 842108889 445926092 633881985 432239270 898763989 69083279 722529431 188040290 466278179 568561011 796518702 348653345 771279875 544223462 641613062 465825817 858144665 808464750 958452776 329290325 562806789 111003963 396579539 927531131 979317077 810678517 819744039 434056938 805964879 255866612 488248413 857111755 913452037 16482468 873459705 168734178 321308844 846229993 914966882 867043226 902120699 498270829 599090093 804837787 974062398 908448289 911217883 194153497 414208963 724363996 742136319 938516044 961706681 147848716 970119959 111679816 456072399 462251207 556235014 304224285 984404440 623662211 682534103 37963760 262339051 496233723 855524496 186402367 908970570 978272518 997647827 60795164 304383169 523104554 603205690 388276011 920474604 916437929 975047220 157940413 598404662 948061784 952112737 92456090 378527943 64204603 936864753 640684835 832673726 580491194 635432113 878931304 940372192 198813639 558247595 352238093 626257071 163513838 555381551 765887934 990752029 947178888 974410189 182936989 788621573 498983936 532642873 957756703 997115689 9466762 792662078 841962641 920286904 430602964 486291597 349603576 893141902 433833859 739737791 425397986 706108430 373255413 772081963 746120535 843050200 83130493 178479864 344663221 654434515 749954947 805598011 678274304 914469378 351324313 741856811 200435889 406473643 899828449 988793497 452514174 866623910 792845681 822608246 968677039 985932524 981142758 981449646 322833454 889659651 162198785 779581555 351566259 914105875 443439133 904678723 995469751 997952804 477582214 908349338 271979712 428281596 840962900 858043895 255434690 345400951 75597148 986078338 594048157 885331528 987733115 995571330 793522355 813896649 611734717 815561920 438353362 701196731 133951212 769083910 118896211 851812341 876173014 928906503 190781201 692835099 371938551 397205913 950889724 974619148 17372003 105513945 379300327 542473954 380432271 494495212 345215510 845848846 174829611 445137590 117754021 272014690 759509639 793270177 612733260 698860998 96990021 301763145 968971092 989486507 844732834 848607057 597789588 840643534 890112423 907055708 732683717 900749928 109150536 837588910 850599187 914437750 668606773 798161767 85134500 707079696 370405793 863811727 634187045 793117738 72902588 874120759 906469162 965728939 929805271 996681098 270750327 643581688 203367590 271123368 501690634 799320560 550687301 648525451 409433375 853480517 936840818 986914824 883225091 972617649 704599216 751945897 218356977 224722866 249651541 941281457 842210543 892196489 285650816 749042949 816137636 964813918 197095689 577244578 865924499 877425569 454150196 867759231 731074041 965833634 742130918 773467053 998821776 999619465 21271661 742232795 852316014 858326500 29236552 879988971 271883214 528470431 483457801 547677230 104449093 224776127 960484209 963969636 110316064 818193429 386517152 691756848 60855047 767115905 806532364 894616446 793665698 811228148 522199797 609380093 664255507 808313451 741627357 878944020 677712337 767961341 96859799 836050907 820031338 826835539 533129410 577868101 884566664 962172549 132171673 488660778 763617797 964623494 768869987 777362146 576356652 759750174 476213136 788824340 217893877 894071270 578164763 827233235 777310096 783348656 712401911 823978850 771792140 831260778 463402900 494615138 429996712 485697330 950092985 964018631 489977403 577606623 572043030 586253621 204988204 990106675 121786882 691101588 486975479 487198561 825878270 990803272 138371976 644555773 151403352 534954823 278769118 468584818 915451135 955512725 328563406 473994328 385214942 766011079 434317556 997989798 375849436 893756908 494813980 640033994 75662350 658471212 442318276 669008870 941379585 972690603 164125845 356922572 412804224 618456624 279650723 739461456 97540011 138541166 612501516 981754443 883885038 900675752 230710697 568871327 872019483 912317843 150622856 864905356 972639749 973504298 692273679 765051104 192524755 876545148 643374630 904269480 238133584 299437545 463440268 579143199 862120962 863527062 448135054 724061873 80843554 652255964 169798625 849217763 649059528 869415789 934539556 958482636 413750144 834890083 435321675 601955493 998844650 999474416 597195167 999244816 458533304 815122875 116016170 616078985 362859017 885588491 210119194 526280425 19653171 98210756 856680973 933137512 190292571 854267094 333500893 992650093 788118998 954987378 636099179 904463242 735204738 922455405 422764100 597122466 871604932 999528349 19064825 602198692 955910192 958424366 458396431 794229200 142555645 533910543 717359383 937736321 523100622 664176968 426649770 566804405 612249205 650190417 610684400 812974479 615828953 945001782 79965561 503963002 759694931 942966630 910801696 989779446 595289150 898351918 251912648 268176494 771281408 888914886 168436933 915128623 393767344 410912017 536541810 537500732 450286947 476519492 912051242 954978562 115151520 838550655 709486383 774054402 170574944 279734424 392277984 481728663 411957856 447097377 748977205 835494874 53455074 251318758 508255642 630411155 903804759 919128203 709043352 820410002 792519265 920840232 895274890 967074862 564736774 976808505 354773981 906756965 831448823 857119343 723947491 935251436 137981479 629984262 13885844 221798615 879968982 935724683 78618737 473473015 484804439 752982089 369829338 610322759 758702896 979298061 357442039 600028048 211874202 970751774 600154418 748399907 492150224 641564550 950450978 951459274 755893365 901389594 731473345 952198511 961361388 990375957 711340373 844767980 949732638 962510102 151495428 687730427 862852564 942360802 842443338 994115213 866911622 981909968 651402244 920859984 143955192 576433800 22828947 431100339 600640238 736060786 517631510 595669742 479352751 720540588 44211393 606879261 821040949 881701923 414815213 786170141 246501932 672969146 668709963 690581706 459847268 918661712 127810017 985042894 626282261 765944128 278866537 466226811 6649569 653900682 323418826 953711349 123680821 570373318 856254326 884329011 872012177 950473676 905018992 989136190 928622631 953425373 21376447 951785964 699214463 963303151 50474126 803922678 698095980 781903709 315744232 801732291 517522547 726098843 708560169 959795695 455296 539907588 663637067 749502970 55859297 933440469 616512683 848761816 818676107 931311163 402338254 608801454 154606567 524214402 159762845 787012806 615354819 798419397 201688289 757138200 452339912 753416183 875108927 876079461 416161605 619199976 772257134 800187321 725502377 801183253 155439887 650656742 738259938 975629716 221896080 443981137 348374992 472069848 625234988 993241609 594213184 701207689 394872302 939843499 526982427 779377426 198229082 229168806 961488338 971958659 130137167 837185858 226534898 234894478 201077364 314983801 338370193 714989924 47056595 435018935 605710780 628734216 328569208 877617462 222666454 334351297 882532017 912098325 415526078 950268413 662948880 717314625 417811431 906573855 159805132 374615791 374476695 889147524 189430646 519813374 105432365 456613047 808350150 968505020 166188190 310284444 787955966 813955713 799322224 970862760 563000949 717908782 616089809 887187639 197352501 660825449 887035276 932025855 923789758 932640180 895674015 971641277 36678590 552070638 84227459 639289086 340713200 596766898 138874193 719703179 999463682 999855033 307643289 464590665 121515347 540299807 432109181 890768323 919401875 941651797 393728831 669670218 453672345 880210850 165311972 286023287 12111858 346075394 362654315 422643283 385922018 847334288 603278660 998513046 129110415 690275437 178202512 581595119 451838502 667619223 497716835 566528408 308243313 752439989 438145460 781532048 670544970 790370074 183663352 363918041 389513491 706389930 760465221 792234871 959738324 980940474 595300172 778728364 246866984 499379609 361051805 687894741 611446813 783899709 332900919 623371130 909310788 938716772 436769932 868267675 786143385 821457687 37286283 475345131 678767882 912168983 209692246 736963330 954790815 975487546 573887235 791836782 152217390 309556705 59372788 679037000 85162018 947710707 359170925 738842883 70763615 471432892 66719433 820209289 622283738 891441124 524974521 925959189 38315862 805787143 363542619 681292901 982665026 996899088 342458334 894392238 143310849 156238291 562965178 964798535 344011880 394701788 533354910 935481479 290877644 378571844 815359466 869726190 196152129 280995982 638341887 752874486 401804688 436658292 279931753 607884114 867112958 985825368 211769271 296833594 93591155 911397606 872482234 885539695 335171587 438308740 366881503 578807372 429910337 662371138 5327629 100211769 51690180 882464489 890488268 958048697 617671710 939743229 160398865 969145749 427417059 667211331 754463066 788622051 250233653 717760616 558524201 913435005 359261923 528819805 68264959 119063364 505662995 593603380 71904113 287151284 572773083 851039937 804404976 994140256 843684408 928745439 981638568 986945587 569622840 963959478 812448126 989161387 58451605 820992672 391544877 861964120 264722158 465555813 90325653 290488614 968581514 989595122 677269148 813882017 940305400 975436991 375294608 632716213 485301248 504329239 782415030 861395909 739613264 764439557 593873025 889714106 680210297 697223529 507874007 881835698 715976915 916052923 324702431 801497985 336578085 414966233 39773608 149231105 911054625 920965514 904902469 949242950 768378900 852549099 951889476 986909049 214868875 214968585 649381194 776630134 109168856 738084071 819316752 825372756 539510934 661760457 735258643 869348443 183332728 393973921 841480259 853540658 642952215 728853444 669769656 783663299 771264157 819793294 387595215 881376536 209498969 718214858 177432392 201181137 934110838 993243741 866853741 997293181 560907593 786882064 770405003 928250523 794874048 851779411 817746625 892273423 596791334 877032270 116649659 414079518 931728282 949378175 706551772 904304754 886701192 955322013 310558435 755935584 671358098 833463716 436149088 932871006 826319581 943407254 914236084 949913285 270386376 603944052 303767651 374251890 16128051 432068364 889658061 920606496 818312822 874315169 515223195 594394888 75789200 334641194 781493473 887818140 501749442 529160977 393823057 522234920 911009074 976136139 515236286 673590903 764201293 887305148 206815744 743518687 870706824 942284102 877102949 898410321 879816445 895717996 527564488 809587120 41990905 823608735 759887982 984439297 614403123 720983214 501991032 675461018 823180937 852855351 705594136 745946434 683625799 822882523 12304843 952486050 639955225 889323525 914278157 952994058 33060433 481740999 629193472 831466279 712378443 959694550 710158531 859843936 387860323 438032480 105247729 379035036 984746539 993062292 539780189 729198948 577620732 771222684 397209512 675009474 134694330 361742612 248077036 334789020 153645769 821330395 903287619 948064945 813220461 966029566 133552207 374158247 61509183 907919155 403442019 737171963 263124931 280200291 508797551 932055756 822074266 994653361 319736254 681137086 795970058 989830816 151737614 437585754 564598439 762339842 406444797 836517067 586842244 968490846 129001824 185970674 979150021 986884422 718672892 856323416 899618797 924388154 762368960 944262436 908831697 990277619 345464137 849464413 713056322 827410381 572353879 624666185 205526213 703579382 844042404 876389786 497238645 710910582 857497825 870834839 670404948 971841005 249990283 330613630 75891768 911602484 830543932 994115536 555431240 874431949 294185157 351605991 314740137 362022739 150049378 965797725 100747748 361146148 284998333 863407817 937094884 946566087 756137633 826783103 369984107 575933770 767876177 778672147 297830578 365921408 77767375 198151421 337893107 709680641 450058626 640353631 191997537 987373800 555153592 951388912 230196766 873016171 95223456 237249975 98359202 970415451 79947403 624202220 591939485 819951747 866979430 954451339 820655808 844486594 354507693 539699612 640715719 887524060 224443613 747927216 758473144 970499762 584754623 987127151 927378018 930012122 948465696 953650152 856379486 912107312 900363695 957995591 221715629 705212623 420914128 540924363 656215681 793809567 486452714 646194002 357975960 604967741 992457488 993347794 893477962 909678310 585847083 927853237 153856027 644852645 221144520 557984506 329275946 604993839 381455673 732931272 784402159 860879597 183503572 379059322 193286258 235562664 389389787 711858942 921033816 936388818 490705054 950157924 68234744 74741015 942897594 952157771 179648112 228310222 944567955 949118439 515240264 631838478 309878279 584522626 493604412 584621543 554568741 744540454 407088442 561166315 884782033 890549375 397397131 461597352 805494074 860318748 171310581 773759586 645785446 694215874 135940011 771332874 69745669 819662711 47824735 205475974 908391246 937542889 488536733 975072399 961488923 972840378 232397521 508149084 459899726 679664420 950394519 989707898 855265095 992023153 477249844 664035586 62783325 246058090 946737575 970251750 791827512 838755970 558835559 644638591 989844526 995061313 650875789 938718844 755841822 910956897 144543916 636297431 173854200 589639669 219888555 220070729 443622885 965251857 946287032 965366796 850231816 944877137 191003690 317990737 802737958 922351913 514765117 616919624 255230517 315080158 754117789 900576334 704846702 794365372 521611594 775028467 518821908 638787998 99635791 192934726 330798451 497980537 875493208 918874640 928185591 999291280 66423799 199914164 517169152 996332256 564661342 988119756 573881248 961763910 168239183 498425483 318438633 976826450 428670198 644696178 321348014 745797315 619162861 924954233 97591728 687955606 934697795 986720728 583510367 636562750 244107943 672324135 68675380 747954564 703117721 792638060 513182926 645109438 119270752 920122126 428236917 553910899 694188326 977664520 196273946 946830052 455138468 961010818 572352705 707221530 224718213 349091675 343245961 457833903 92278157 237560131 404119919 501465069 730398817 877626276 862181338 970051425 706416214 771626181 900388099 903842932 652379764 810854010 509747131 588580296 159816294 597143991 977778867 991607442 722066497 911254583 849456840 964144879 96075043 962549048 127147256 646729986 954618611 996438366 726434493 853213972 942835084 970526937 630174345 759953154 949950375 953987469 467139372 625763655 903872306 941611913 43053928 882749376 839117936 979025484 606175538 914899970 149949486 480522904 350332419 709627909 578969715 624260892 219355918 764124786 162332718 646273540 286586155 543856259 335640154 344946634 186328748 880811331 900352829 996188817 821526879 828852062 337338251 607310170 57258644 909361281 669686333 731489285 70109404 427110183 909916754 932840764 50689528 739543393 165992727 969105162 945967669 971319315 132754561 365799863 748363388 840095432 631606976 806693747 504036591 783349796 447740938 976480532 582182285 587044263 564264272 866277813 530630644 785982339 459388013 918360104 657406518 870289781 610689586 704120514 978623977 987598486 48835195 114518424 419972495 500242540 700567921 973042619 957613006 990945796 956262460 980639107 295957333 861599934 106639935 796885238 849136044 870094580 978970781 996280949 469971529 789908335 432190416 465996723 589499099 679067741 27994724 48552965 742394060 854751121 168210872 394931838 678322941 685864012 718621165 823969358 400810810 672063814 884076450 951201236 465261246 698821801 871414150 912027947 60095192 650820297 596120800 701525602 285363047 464449877 232697505 645099173 58080416 432044351 150501238 990734058 556252694 714435571 229577669 951955683 175213489 185192786 870056855 928204305 485199305 987812510 615996746 903696629 960863758 983358872 509341294 816835330 720182940 925003440 540090217 653123353 684063112 727219833 480590004 537672635 707956637 967725054 490594848 746057329 439497279 525492322 521235038 619426719 63072221 182712745 379858195 875108056 405096602 474844271 150751930 562430631 351930742 651736530 249305051 642271844 518697158 803338826 371962246 817099494 854882220 926593373 424377419 807524298 741064408 741175938 346960879 965432569 872506938 959305610 718391927 775977745 752761837 836614283 827874470 975902513 802065196 840023986 496009441 560790199 458988942 482405439 88599011 298778392 862836313 951942027 926198038 994086108 798773575 837322646 605907594 743562466 506361787 656897129 210611880 361369522 836251002 851527363 856443372 965824600 701225594 763746094 171982171 817842802 517062522 608758993 999345190 999857421 115469665 755980194 816996815 860163245 783189669 931753665 34179889 376445043 35853208 478699064 740216811 893679430 309302863 781783769 865992153 877412318 290562021 845305898 761604509 864907224 712142374 816275185 838015593 967241831 766573447 982193936 809967974 927218538 230326818 662567108 746007423 903850813 909242650 951156844 933258254 939539382 251092630 663283441 879924884 910149860 390880658 791612462 612804537 659398743 125537574 681084391 788109488 804293350 788560084 795087925 586984040 929003736 184291066 741319233 247044411 250370345 562602731 777617720 191498238 356990631 451224308 877614937 527981177 704356003 566731515 612945169 425062140 506675660 293084672 353455196 801613216 938544180 381253362 791968913 195832586 611433356 220992771 248546047 380961261 644722858 978098868 992427211 995837884 999327978 293190184 687330403 703534612 810265648 996693283 997828051 306929674 590293924 422097425 890842678 845015322 945110092 507299786 973921578 580088666 916018720 555533400 673980852 800085835 816709683 421696417 886022777 437220 63385372 445126728 918579106 943196841 966302552 788752599 991357591 733372151 818487135 537741175 965248429 29990072 778754015 481291107 628231059 423098570 617748722 244406459 673261885 186116807 910787389 699904957 708492981 986747168 995552047 123005409 591311728 57375810 656147638 509754099 744686696 717728112 798570665 965436978 978348509 897920385 958605258 935256725 974058729 478239501 909676627 903792147 989440554 267645596 974162815 49210803 614950050 31577448 975516257 319801944 393864206 136029092 885061208 90510030 265885483 919212294 938199150 616768464 770626796 956975278 972474546 406098988 722134383 802001723 827493166 715238897 780606548 413505370 563573244 432569823 437101617 979522153 983672355 921852303 992925364 48783215 161284770 636541192 937272311 285715703 749523484 596086553 756700975 755485200 892437928 656838508 794700838 975338204 975758221 665858329 908852705 500160322 655560585 459991566 884399579 846714198 945573053 82435594 367729649 257164372 346874510 433497613 604360271 793647966 966981160 664933051 800765170 147822282 239176526 588248421 787125018 952206984 996686083 909534350 927797326 666323609 838809192 858631786 946091748 994329672 998441904 689581764 766099455 716793643 992970334 96487281 723786144 659440849 687282841 698053599 778708349 155017173 337524578 811657561 856657802 21220728 283475307 832880160 895354719 335109323 971685780 64031254 356147824 42217255 159167670 266728226 984369192 800243636 957525180 142974631 547090510 923587034 989226794 730228503 820545522 402822289 756697827 803972711 909197044 887828639 949217253 428929378 518591001 965621801 981087077 619954661 661567563 479916563 776461749 123531297 467719813 539060748 698728970 215008397 609446422 604657074 628461757 997982143 998077237 346730496 784271355 744973676 981364778 106746661 936838024 409578090 585308369 965698111 990153688 994373540 999505152 744979699 985006615 82661131 787385536 8694589 141893635 655674757 718169752 194727090 413264775 234275360 458528975 176501912 261480606 754304146 814159932 864148850 967786210 716623374 793281011 262129798 845847757 441647905 684955542 446206910 579142989 75385083 874982913 494975509 848207610 957099754 984362998 958515845 988661173 512285785 871867090 749336255 974650822 436483565 867492518 263836112 665714815 372100532 394322717 494261957 523335080 539188007 648644146 642434591 888735003 154130448 726190562 582641410 665507236 145761133 877908461 696567542 794481919 929652013 975669002 81607937 294710743 952708849 963849846 295423053 367956713 982169878 991226412 465977080 837449578 642418787 721354207 654203814 757882187 83451030 379906182 486091197 913587996 893346347 944574258 260428977 319328076 842401518 915244698 186411062 811528526 862072865 983194451 950690039 996194035 28207094 381313216 647232695 691388712 417345140 677063596 172006747 505856043 84663682 226718853 784556300 793525662 909045929 949221264 705599745 733761266 519570305 658890931 574340398 745599876 636707677 924416307 509816135 577769534 145115207 303356553 933965507 994217226 577068740 880631448 917564216 949906441 199598437 335720222 388911704 990133937 360628952 419960416 150605998 310398308 800749465 946400294 75505879 164208350 657939432 939230712 999598991 999753946 138952395 628180919 277348181 379284444 67511907 939528310 492055247 543086257 967536815 983117373 564541764 620402256 573046330 786874196 718637143 955878593 378661007 770088388 527610904 694006521 943029003 948696529 128791225 682148249 121126397 835260067 134811331 377884881 853666678 854192347 960370570 984616609 461095696 844453015 126947868 746663502 348318004 498520855 206764714 778410466 976868626 993926446 92542597 282080579 330570838 364675822 896980091 975251403 292869014 714445807 446479969 582158441 69761153 210528604 828334648 841346660 456262626 962574861 153950543 481416900 69102581 887957856 668433816 803669368 919285110 929755275 511012110 540164582 696267584 893650423 212599263 425158377 658334809 921589103 846007878 948473316 282927722 781191562 359157525 603704345 999691196 999926984 26615196 920783486 479146166 918848137 709323582 904326362 641217392 660848702 337848904 944864552 229078114 257999641 559252338 946300343 515811287 634705932 32166316 522980713 849520247 977681010 4916634 771053204 159190234 722278819 673394545 867123285 84043931 651154341 69014931 848989604 677735105 741758371 318827207 568674020 310109005 645198399 624670875 821419569 622528799 938402732 171986473 538940063 76699787 473842472 131501913 132235125 56628515 699023674 886972142 936202580 924653337 989336212 433236332 863052891 947336835 995483290 259420630 616540731 393158333 805925639 217475872 819329872 852317280 989485281 787117446 828078081 758556629 877855944 753969276 795472710 400300620 503598119 649430591 660239101 309304859 667339900 267483020 537125278 142065141 754307307 909693513 927189851 701159511 961223858 331181304 624574273 827317444 967697883 707190736 997035393 136299480 435760414 426288092 812363016 565188962 865710741 969894618 997596481 526811294 932677422 178384287 319191686 269412419 565626700 951388167 991996634 646501531 917965932 407491958 702732259 243273464 584142133 708149595 893613422 857504690 946334390 965377809 989952805 388348790 630423821 865382584 944256765 319715374 972469500 661816913 806365797 700100950 967343709 473751121 854183100 306995392 800459790 842278802 997263555 478853926 879378099 666673343 877953222 882014100 887279240 155334652 159169724 716441332 972010653 214532522 976971861 397688059 458517094 830295986 926321930 571719493 647229969 395103758 652289256 963303774 986466851 212228032 325007027 885714289 896011847 758790177 983842172 780714939 817358344 270375160 793461796 104619591 820286542 511192214 911573147 300680986 373375029 304881950 998271353 859848817 872993668 17845585 492224990 841835445 926781121 811335582 856927813 950284238 985703368 841229957 969184242 782920336 831453308 492701764 994892135 729727257 997063555 345043523 486993769 484032428 716925882 224581481 916517480 641699934 689712168 34915359 954743173 391059624 545327463 49880858 572545415 177529588 796649142 646614218 908863558 918515810 946904082 707142115 912628770 442908332 938652555 325660382 877954014 221425682 581580013 554007012 868836611 870689791 972911377 845653868 920577182 3034877 189044325 707805943 708373217 726183444 917272287 207304731 530822656 324197418 646109341 506077604 665550167 619716569 996936966 905030974 952617166 965236937 970857748 396238641 813655514 350131883 831329559 320019339 476955339 342605054 883793927 342105737 722329759 353959047 793076360 695552469 717304421 248213343 695394604 883496295 998713469 792339670 892167996 750597427 758699261 265220894 823542043 618094674 870907372 517866287 739252347 32806124 260173088 234211897 709027513 890015599 949392291 653894923 745403062 858851537 908833710 171534218 632906631 893286384 922455784 163301193 943809342 514860974 680040857 751150611 829807321 79549356 649173365 879600026 949148025 536654303 999250272 222627440 444820187 199573970 560711278 540598792 568246408 805611886 918021588 730209317 921789636 996375327 997639301 988607854 994388523 654420914 742783301 233494739 580576233 70696320 568484442 590231160 752760531 817304171 835936168 993009753 999613855 174605322 440259360 707531851 856341235 288576296 756655626 288296269 558745279 60322821 210272947 622283872 827152944 213489917 795295065 67727911 738134434 803459854 963553365 641895737 829138673 891100812 913380383 881718317 932177260 90816544 247013562 566280708 844066108 763090496 824618789 428416545 512463262 615658165 924397320 648806106 897953346 47096814 776778344 438764699 797517733 19804620 681539128 147948799 629314581 929390177 976739532 408512229 816675477 406192535 905035153 292593716 738917723 854447959 892350485 656610126 891884242 966942866 972754732 723371385 988180757 296122463 898107381 215054076 309785411 931474383 966006526 667824630 966829416 846825838 856900842 954693695 991916422 946121194 946610495 792642601 905270958 486840239 533713613 435180986 740660385 626576452 937060214 483140960 537956906 842316496 981184506 322448164 795041241 3507330 802888667 219810043 808202346 473117904 701036837 188936939 673264314 650363273 745758306 696948605 847097006 292012257 934143581 238207100 442389987 971128162 985544617 7297130 799266160 35769577 414946009 896921918 902285558 143644044 637506716 771419398 832122671 674533459 779603591 984950531 992416647 707899887 994343720 227590204 369254554 824648083 968625654 743174706 808240976 764411312 829612342 3755695 557241823 564551135 835225015 454295178 927051456 961710773 994661314 548809836 659135258 471839300 755412314 264830611 900238499 256410737 712115181 930108715 941081556 66756859 154478383 209342973 248359162 546493129 859050262 701310736 948128501 144446081 280682286 859545892 961428073 252363286 902367983 28024384 422716571 357327374 639272108 753586858 784209103 636794928 734309385 657436919 919754691 21330174 159559442 767977262 818658190 858123620 869741792 784951222 786444599 64296418 641034448 374311518 626496082 684322062 907943850 907728382 919919685 554988582 969917099 284009389 649772797 787845645 941592831 123524088 337642653 745820214 877052602 570375988 868018683 756943124 766597175 33740563 174544375 752815266 937505368 532778068 711971600 895589809 967240298 533566206 780285843 566174795 772785357 118429099 644039708 545871850 849146125 942817716 991088522 381990319 739313684 833532771 982897371 528792608 627612012 555929723 806571134 130105072 299517980 306532232 665896470 939606596 998779360 178913904 557448773 622998909 737206939 553778068 555290039 987974094 993940774 108722206 113349359 256759802 945430708 753207489 905437924 296878309 793249259 830955061 871964032 483789731 904925439 478114073 953950700 240119493 660650073 665847159 918499859 897823525 963443600 10338959 299606876 353852299 493207621 838215545 921009275 269671302 864538952 48089482 296006782 844845987 872431025 879713781 975666138 403522823 774910512 922353708 953467802 230946041 835013325 319779340 351522455 103390829 241972082 517196251 581319187 19207929 785049425 657444276 986461738 756886965 887783271 70785585 520739107 23858267 92834420 936641069 964784218 771995426 989440486 832241747 906970863 666928505 866904407 620075642 848426612 866129113 944845298 560238529 735352749 359882622 427673300 775868763 968613736 54638038 620324418 337779376 605610732 626665067 815012665 73852572 687833845 810868739 964276489 872408250 887356389 592733201 886862071 436608193 457518000 370369870 996477844 335519035 686631631 376351942 902811049 53179999 286770727 901336293 921469903 291679752 700874543 726665204 908686712 477537237 660260614 265387505 702041577 850662433 916187828 515618779 608766601 94976350 726529697 297657303 571704049 104843091 372202860 921664150 975430308 24685339 94053890 847689937 932475354 61656399 985849925 985537554 998690409 987800842 993521246 218818264 410125097 110591916 801122074 101994372 104013767 881873615 973614013 309154875 489091465 296712015 977044957 122844286 461793631 526557913 851039261 728095414 925679790 743840293 995937064 401536813 581150302 990509919 998035827 804773251 850182890 486054950 859343096 533375864 853546266 817400496 942083156 504502311 548465128 519456743 649632812 22166606 64307342 320004074 884659741 202907659 618410311 738295549 988475176 784809348 895597147 625134092 818116454 924097580 976837149 846684733 912704360 149337304 803175674 213644501 325034724 453313029 547512742 385570963 472019205 503438606 932953722 737969402 993799596 713921815 843388070 863411564 883027562 892287921 912121472 782937050 953836400 312281394 846791968 950007981 997604478 997800117 998170304 627201618 729399640 223921888 249393349 118522662 607387427 149175611 155752582 215838079 633366431 218222193 834844105 986429832 987148321 723439772 926114202 388261355 590014280 20433702 484687998 989518478 998162561 356972489 819527700 615316621 938301062 920246949 997346679 895657344 924549717 421203131 930919951 202353904 765568691 542799101 629322798 531449131 865364929 346698241 668000819 127065531 842317971 850437314 907556279 931343803 989352611 707766921 953235883 428889109 882195647 207708639 603497858 109973409 762939114 294933258 453484101 435916283 900371507 14093130 244284322 937740384 955991372 306080551 766215321 169385231 771845906 640810374 832264210 870721607 931609435 209147672 452258590 448498480 882874353 77126494 982488337 460464313 995629337 175252689 930379979 642317144 646088425 464907990 971356142 60270621 93670318 481107218 510277628 399943314 750768991 859177256 997207079 893821377 994454500 939181457 978277080 97332795 971078087 755080423 938789249 511393026 968321719 169571945 750149591 327111372 550741637 175218686 210289239 463436607 601484692 896351175 961557958 218284536 403290716 275317769 839966370 479082653 538462776 632696288 801517832 226424631 711580140 537407762 843786207 324122230 925421501 681459376 729968306 902371233 923236603 110238328 822517780 459494541 462961187 687717846 833302223 738115133 803924119 714731893 924780837 62963824 361161016 594579134 934433827 866406882 984278365 969825718 997023230 605088445 815677781 717282544 963581502 9091931 432862600 278842367 671936048 106020480 157562153 65029432 117072353 908347708 968211383 272084808 562515737 660869582 736159160 561088685 922509495 618679935 713039032 902869063 919297848 163308238 797553514 526100441 797880879 420865540 508817416 798963659 872370638 663976488 852316730 574652876 840084556 361125933 707659357 632064608 734636177 461524326 645470691 19193191 852065122 868704382 981040186 283176923 318932498 150458129 969225856 985219393 996509090 798970416 872239297 990022385 993809964 362081307 476210964 726770968 879299667 609385246 862769853 640196215 684138009 952047295 978181447 704037665 962670755 527413263 563997578 556571702 982868564 205496366 934423574 945048456 960071995 125849545 661709343 388230214 625694903 297641720 786243792 338085331 616579661 610641863 662854546 171067211 228145703 548650678 840054825 197427913 391704756 197959695 635704088 765307918 911034463 954357606 988450161 790269307 808171207 746411144 762870116 116152627 353113675 469194991 884057078 745150963 965146145 434366960 631267077 159427675 456860639 441803959 517987948 468696254 660416912 37495199 990390949 302210756 774850339 226942350 998528991 966347739 977313663 386386854 799793857 554930882 731367065 659169494 715695521 500789526 595209109 955336236 979230659 137509327 752906803 995740181 998292556 125371976 669571178 15537151 556095996 411798318 995275383 512828522 527395140 713856402 926918194 779164882 995231637 18055152 87006908 722125304 793497516 812388973 978750263 733857058 780439176 786713931 840260568 920058828 998769313 576560726 856522985 367176811 915057152 790849700 959619118 541179020 807888245 851391752 980649996 752296333 836881574 139731853 508541230 333928118 340800147 877461326 909593529 398376769 734520309 476241019 795275549 677865639 963962653 158387390 285024201 868682799 893513484 986586602 992531948 974582095 980432644 151366716 731170025 520134964 765974852 539898863 559943676 176615593 848010395 408943076 633897553 121193618 282559701 594235664 907880885 846595376 891025151 988665610 998562158 315165665 938500709 901847147 986850711 543816727 704240862 933578787 960805364 111693927 826824873 417227598 866110363 882954727 978544315 620410441 993737854 403874976 557131869 685711698 804255036 11024771 776978149 857840637 948782629 631164560 646391151 68134564 545993356 953969735 958442271 563421303 953838141 39077278 662863903 542584531 879635356 852732339 949485150 124120277 778178673 724296733 807970404 735048393 838212103 243050857 422094941 631606469 893594483 327764148 917831846 999497347 999856551 610923365 751462096 758034373 875836836 616021030 979342402 928876215 988187694 254402144 331537722 237903455 577858163 837233829 873253037 573607397 846957945 704607284 961776203 57439777 646784115 816910015 920231872 231030282 592826323 118806642 223121863 344937434 986136362 153262282 227008719 958773127 968682161 446408286 927895255 576209143 923481258 827898015 915740431 848855753 907317798 297947531 406086039 970954248 990540161 436389451 877026764 3366807 886013914 215014981 515395389 594793064 882584125 47064795 443276432 427779564 969939096 360294285 751450336 390547940 982136282 383088990 635256757 613340529 640897287 737654268 915525039 762424862 845725907 124784174 633478032 351766120 460209588 488727056 939853725 116460074 354140965 773123962 884939384 671139299 716348718 676860510 727013072 993267480 997486049 314705755 557148139 886015921 962492615 191703188 868609190 736138498 853745854 708046437 773965079 929925754 953141162 158892814 429267334 828800258 992751892 255589156 926381817 77155648 200832736 740350037 754088802 494873086 602455479 179711185 974258126 332178912 383794838 865803575 948422295 376178272 670920351 600671387 871072439 717071597 740336215 17498892 615003111 230464600 834274740 524139341 777689102 907467444 908143115 949479648 956617779 216675471 344454447 4806956 807235881 883779925 909296508 897047834 923474814 788559377 902567556 557137788 774463818 454018066 950679543 127919709 160694624 194166315 741639648 418586965 508362887 939342612 944521500 2179061 834725335 823399372 961190246 303016653 913321745 740909765 806530558 486278156 820562164 783524668 936028783 89725856 735428127 229318121 843371845 812207746 931163997 33913137 196992181 588845688 652104471 123780809 782419855 692299863 992617645 373241470 772003444 393866 185923208 174473438 451815364 942216574 994470187 182590662 453556335 832715136 935829372 711799912 773457291 706503897 736870177 564541288 994659059 809204003 992771061 817939952 870423565 103149424 596640363 181478793 398952116 616936463 678119279 743483265 793634805 235862960 678789132 909404594 922700076 438411621 827258994 680512990 989344705 773913250 880950568 455865419 857991787 927935327 958658986 445813112 677725064 159270151 240061313 729264442 837853613 441107916 941033103 400012333 595071897 64676414 607456013 850797657 904436277 6353646 59481406 557522162 709174119 593415713 960096457 246839167 776053517 637408225 916403112 347533121 836437234 454162000 997803674 256409350 591183717 853015235 903271257 704750572 958328397 470622029 936383849 402783470 840448821 196364419 223293993 429457991 882590261 842304617 878732076 626671286 941659121 446047502 905333555 472221553 977729126 577138241 993244434 749204738 749372749 519946542 902942594 520855734 906753241 210483873 395227935 368600756 932293503 648459185 925047959 39790007 997820863 422622758 937884911 637643256 907206259 307303809 878822733 460558256 740250234 341606113 527394613 630552430 634629379 159377757 656456881 812442723 823956147 198321480 773071613 216339200 435122298 159460111 799735748 995034775 995336358 236783489 935754076 144172489 990066792 54261492 158291111 910733261 941450196 337503537 983221810 869804342 932361290 344420692 433199930 2285103 752329261 570733091 729935889 823017319 947533154 113461781 816459192 912183447 970445404 897505825 930750287 392295975 873844755 717177116 854083818 425037124 819925155 828924998 886429395 132179036 323102278 670451669 846902552 761587330 808087690 775155942 955140767 845391246 911974576 43863688 908918164 683489103 871720587 947204857 981001122 977598567 978579987 775601393 859319397 581077347 838462860 659396028 710366609 164927266 181117000 753440520 936224941 874273287 935289200 52449131 412927912 610922948 978872351 958048943 972008882 933593937 938170668 304330466 624147143 412277932 845778895 955279084 981067866 265819651 517858098 155503677 644802861 67666035 309627691 719940658 915728310 373800674 703209387 661399511 890862976 53436959 982181657 501015547 642648941 770866899 907675884 220015680 221450923 599887862 705910532 182659047 328591928 769898683 789931872 758872636 795081548 984548067 988180230 38608172 535421556 698457560 904494678 629909288 660060951 812435081 971126082 62618001 636290517 64605107 723864167 637746989 970398004 577521394 941099434 105187270 464989954 944823135 965728489 314955513 363838352 993098486 998868127 394511097 974918422 321242937 654005280 867089324 927319254 792072904 964162765 916492340 947203988 122331235 744354836 901336263 924033050 24450881 971156864 51636717 244698789 33272854 348267003 876525462 899267005 602044324 854012246 489915842 866245134 434914730 447915578 342963044 746873495 680689374 933636521 620923536 920612264 277833837 464001654 621901348 960382404 79626430 945023628 638953265 700959690 514057093 908729048 440900577 604162130 809244436 954005579 975697300 983785493 822268490 884796820 741273334 756988662 628024225 826246265 878462153 979508094 739477162 901386276 315460466 920827370 665293951 974212877 844268625 972775890 51806202 862228645 454980476 884954113 847238763 857075850 632775632 833487567 667218165 838819356 647821444 856576852 805054638 814022695 465339387 705121763 900544049 968820501 807033292 944026050 264953525 764536612 120844196 659662354 195890214 591675651 831317074 881705162 964898022 969178122 680026711 804436016 613511007 684503443 660082778 759224941 314526961 431941168 148712059 975382104 900702269 930072642 51419584 623688983 48002852 281781914 639882751 707244604 4766272 591910762 891186370 972974760 75965249 626430779 761357120 982623774 650790197 834080840 304245930 596822346 56637972 598679285 356958613 899147309 150648524 429242880 465017703 611267497 357800261 595734421 680470316 770867116 582376454 862166914 178325332 214567048 144905393 338486956 399699530 570590489 25427056 81848041 356599751 886046179 495119040 752474012 215278293 542106013 243789771 674125140 146731455 206348147 596945131 806977392 836048689 963219547 905275308 934591918 941017620 950280114 912942330 924734133 803705665 919395270 141783748 230811738 289726084 895126824 896143897 957522840 267632240 817379037 977076970 985364176 858703529 959908929 639420763 641012183 922841220 987860780 657894163 940934773 901234076 984580937 410664337 425414920 950388447 952340638 861615094 882808429 563849927 645750008 61141245 364465969 422795514 953065262 142342624 800438814 862270832 868733130 58744179 384039142 404453432 624040329 82837808 435390989 224989919 591040095 461172928 647981099 827024036 918856750 308442577 847292864 353462831 830482759 673527939 951496626 878023071 893632713 374265598 502473699 607563851 910743049 498906085 755914615 776395030 924055834 718588094 744821477 507988129 864675035 503181013 722052150 911985816 995743649 618943711 862410354 583649698 606316799 205308403 304178842 572467375 580989344 192591553 492214568 453732344 457781948 276920470 738976774 169379243 335844943 649478082 734037574 504750182 692688163 222465272 245524278 974491670 978265654 291309056 892806077 37207556 828768811 220417570 523829024 966027387 999720454 119547611 231250124 457821510 669322438 471222058 755332104 43853896 439273655 108102617 493583441 960528699 971311127 754563438 782235219 514096072 815486850 539338976 904562428 817509235 881946131 540479975 789906444 825543990 924708554 820456795 989035074 444053441 463924051 118666708 857067215 416341801 430771128 733621546 737382096 506758716 871067756 757440708 826044175 409826605 808714776 562679719 889152898 188701851 241313360 520962268 587422499 316608459 861996955 224378047 287822397 2010278 192668956 962228567 964977223 632431415 996988429 502913681 550165569 612289611 892911849 358745672 443629742 152677965 389040274 681449747 791458425 140110028 312281480 494208946 756335100 646239795 950887471 752171437 925381413 130439165 660623418 872298347 934228417 586137989 801556893 997411938 999151179 88700663 384709309 380027527 452013458 805916252 814840014 638428492 899505907 114547424 791563584 421108809 512594439 889954789 965572131 946934641 998658020 741873634 805736419 879648076 964503632 250843159 686288360 322586212 669734490 504840594 775540452 74835107 132272938 991583645 998302996 815656143 887392481 329286042 405439823 540231016 543092930 516235422 525027167 605587921 763237008 264856474 421812950 302429645 553743766 231498918 739941235 815332908 943871862 187651175 826872722 503568147 519007649 567027819 749300033 745215062 791207196 650236531 788433858 426137735 902737166 266816665 566988262 726777144 851335611 929350699 940081254 459031152 647914908 679700163 830022209 90901801 725748000 145390978 696026730 277487770 488649594 965887587 987114677 749203910 844427078 311264852 993496715 640466252 941010011 700654694 787814673 839566298 864135520 915615307 965909790 815955530 844913096 853823072 901436136 743861742 797039884 786526551 931587259 722983476 793552870 697861195 802496045 331207191 781000967 389241844 433516954 377855309 579184712 453169526 673691347 600026717 755129144 234895429 923489027 336239286 965833821 69005361 875905323 189676335 380513041 67652851 325619882 724599225 851430023 403810309 725201946 544660975 925811921 298818385 575843944 136232673 497180160 902536675 905727843 528359927 657060199 466306424 712393843 866738263 959285779 132525274 770581402 41486309 143708722 291776425 988346657 45292308 349280197 983251574 994256735 523937134 714461217 732036186 969967308 409783787 782797468 528095934 901412135 819921754 981513967 262964878 988102413 792914052 991162279 677850087 768682138 166008303 722957351 377156754 733998510 128047694 217178380 623362063 699099009 409780740 526699651 47661395 652910583 184043320 361699209 13447513 508121241 216904701 896084983 57989336 274507372 580026538 695138461 174314119 914417036 977591185 991319844 534524984 995657815 514911397 566817984 754727373 970808460 353035362 425361227 618447702 713814565 112344753 772955077 545792960 874703739 974092404 995319291 208855566 430235717 435101993 467888981 868312184 897436902 380273826 742828331 85415903 325009914 251959060 356574312 431458641 657643108 74254503 446521006 99943410 444003180 708825429 930839955 750932627 986074743 870620460 934919971 352088567 809662602 587417476 613713493 635442747 975771558 60607920 124990515 160138976 810241235 244302475 564518086 121641256 619616534 963946225 990667140 131524345 372226921 346833703 762175968 427303826 526398883 795821301 901362488 238472765 370453258 52768248 806279318 111525478 517076954 440619805 875044203 988552545 996309846 8909683 679287225 914102789 938783755 180324062 908162931 258192088 590275315 651339606 856162601 439300318 914474812 846349245 900047266 230026752 325738218 249195274 904461396 449210123 779065724 22092307 135301623 742067952 796752238 816776193 944913764 388484571 509936996 67910 871896129 162061069 468298765 711013083 854729078 781224602 984422078 421536284 884141924 106432072 630503838 757141849 921594490 50452276 355346510 741899449 968115581 377037959 736303770 209020744 704640790 550515209 979817080 652100905 890117813 117489308 160926278 596659734 977634055 899954715 964995073 49875491 818414611 949620894 971416644 104761380 802175344 814387197 993820302 893446234 990779882 547855511 826472680 249548895 752311768 901024030 923564350 134122093 385643827 146099032 959370344 879595034 912091576 801114311 964535683 527540157 891880511 914472605 983928695 238562969 300045294 85776116 635521538 654599648 748426230 267407380 657727125 355545163 417064738 155135812 672154001 715911802 843851116 486212812 592579058 801255641 855518407 371197746 604448578 325231701 632423782 971041545 986493548 968399751 986241758 389972754 441064973 746804699 943970834 700560071 995066584 212744350 807518206 437360007 885335415 676535164 890777672 119341110 733107799 989299932 989834999 434731394 544303964 615183358 636059391 327177727 867253566 333072691 705338971 286101976 595427560 736744786 740515205 299272600 523388435 732686913 988853385 731622314 916018133 795865864 922651362 604083059 788428592 450607244 919599066 532645031 576158340 151687569 987091401 231644719 487048173 747892769 899281420 975814543 997693427 999947402 999974837 498920562 818152168 256073454 290795078 344824895 353806960 615970206 704503118 863635731 967476291 143022100 405170668 417595145 703157958 874866851 920609096 248270848 711480107 226452967 632835945 392549232 813700782 691785582 838516337 316661006 534153327 944847674 986836073 227672913 563688432 453105130 734768107 42234283 996280586 669982033 906148245 365805473 696949264 602248505 617897614 272774160 449059858 10746443 675661514 195862723 450048934 98130152 531740645 513382194 660705927 3987382 98262486 490175970 808012497 282109898 974676783 953222677 984097715 653769304 822316170 406931426 901601193 980024271 981543680 75115010 938665295 979568125 989287618 566992552 608851756 15730611 947724032 768314310 863411491 225798292 911549802 997782130 997876039 241606371 624336045 641291726 934983490 316139692 745520965 149891650 166115022 202148364 584409523 509887200 552149782 573646366 829489840 936677133 956800972 310996650 330315711 936679221 963426116 606781203 730689796 334700472 367092403 487130157 508094965 101904931 845386774 186023502 492644902 304813018 906048150 86529076 979852783 248883057 766910260 317503005 382317833 619332003 756035295 686662753 720422542 178399699 282893582 266058483 473062857 775995128 965046746 309920126 770867236 603319767 659545136 445047149 521001896 556352635 615736598 331817858 508760487 82735508 175089478 281706862 768332385 156254274 675377775 613090370 676534501 159729000 347231769 511850922 934495301 284546839 857527337 676394861 756948958 370107012 833798391 387747710 672192960 564791011 647522150 960469007 998670869 345590506 692494400 461902681 887471754 231455186 587904844 634313201 685841099 482760225 915707957 446376104 603529001 768807793 886181873 221648227 286502538 2765120 468641679 832813636 965939186 79418604 673065093 187860827 729678637 415972831 428632956 70708266 816467667 347068855 873632745 420630677 594724788 77842431 461326955 406734643 500511217 597945957 902419156 79868208 151805601 623544485 800626259 616898458 750349880 779669063 880073558 651726347 794827464 778791978 876071941 141726089 935700157 277784663 354842740 214596114 690881196 334005830 541578711 299897984 763847595 432097091 674240114 428785497 935924176 811343478 921989795 167085194 519242988 331017493 550713129 307854481 584937990 17734503 313197814 808590458 862039419 862182055 940834879 732401887 879198460 198210838 289040021 349235597 904239069 637151403 890071931 353420979 515616835 224238843 730924597 971413652 994108851 833761468 876889886 671944871 882068273 917986871 937797451 218106656 948073606 751725250 829615975 99719075 352883890 187831107 876830852 778223426 892611039 89147301 225344426 96883575 272533322 282687593 696251846 742638904 940923465 280241673 446845677 364436926 691091979 189038097 364402752 440625456 476936477 217076810 739515142 282519910 985536789 682683911 976507983 310186223 826998335 122179280 136714335 783487913 931171877 11544605 688313107 667291543 690865956 978213159 993870685 479426194 809051700 38995681 332727278 142573522 761757239 731193542 777711978 528511634 859122033 549615177 966540316 823913679 916667774 473081664 721338029 766914345 992403788 536169243 999079360 305441327 766000178 256972558 585482887 593025402 620373988 131098674 449391339 354143446 540243055 755094675 892222125 761783524 960774230 249351890 841729814 515439406 856076148 278292496 656605253 494405921 816650283 488187493 603186760 69357328 167038553 146006469 527432726 588969107 918515881 835819559 997646185 183863215 835335661 524542422 836569967 522730301 745932626 19577503 662217132 622577117 846681042 282297608 934263701 87973602 810048793 723430884 810423073 982219431 988959314 475719110 611735878 948519009 957910522 673999494 937275307 893318935 906269086 86757338 772339979 269630859 893919343 715968236 875269655 73515649 142314960 378930508 945437946 48733291 54018045 524454151 597288530 89091985 785739985 997071505 999758872 846636118 993387009 199007480 659598395 289470340 875784799 472854350 945349511 96464561 273665853 223205305 820734051 461790300 509822555 199887893 463827518 36477295 525173258 873775130 883109654 283333482 424946687 769054756 978603658 311173315 944151846 15275654 684768212 3271432 93037700 759357863 777581490 249775971 642095867 535688376 820107238 366807529 758989682 34685872 684505326 644219624 700181391 213813001 352160668 804028097 886825406 660662136 765888203 557066208 972224384 371032622 430843993 289196974 710649500 211344215 381920127 332726405 536371655 631758968 696423874 277929590 352061621 884466655 884715356 507385217 836182357 956376748 988390732 982261597 999711474 455242103 830727515 418259514 800142740 264835757 557877384 765870792 869229221 813811965 984316490 243088104 939342387 508883314 955905775 784443927 819153010 526584550 994479793 684212650 778593731 713619018 991093111 23856337 507401661 666636507 914027918 512197476 610818264 744988742 816572299 598306870 666248522 382456501 477267199 406201854 587802257 495053953 643447891 378317101 491746945 993619041 995451048 826551480 930965831 274473491 675727702 982293078 993320882 993910932 996368339 750365781 888446667 979405773 990645078 599509900 964949881 802508078 875396963 96648439 569992836 324478359 584505720 683510953 956044398 382236864 705555438 352282935 901086628 543241162 670981242 116976687 694235871 221283783 484450048 992447387 997189319 367376834 716466966 102638209 329390788 168146092 773919658 530709100 786899820 263044326 897301650 319678769 481225208 228808426 851316212 42006139 408356374 109217564 407498872 64529524 304489913 859991156 987868552 509970803 596094443 174706495 618183069 710515304 989318356 726202756 756086985 808083314 829142479 771373066 987385869 359198138 880920726 326142690 720043445 785475251 841579181 486694373 577103716 165072031 754712200 450199889 522694025 446043901 727061753 834570499 966348184 268086459 277020485 732380781 969225452 356928539 861007904 383582918 809540992 581476849 984654478 696101210 980258515 112192447 477892540 664223044 824333557 964942012 982010532 479656716 960287615 455888673 600557983 198060504 410040725 323679541 577101263 978686523 987511465 773897578 927847052 76475539 131342852 341228346 941867693 55177152 520713262 118175984 433042009 738688561 858931971 31165546 853472947 161999467 993241968 26604825 202664226 504920233 642773516 126352295 986771031 800218443 843876678 456960551 884305376 523687290 952383411 800506956 952931827 27640817 386158812 764006020 797470884 786802919 969113993 769099450 928493867 467370042 818676236 280162119 923920693 996085816 999236311 403562510 857929403 435540816 436878401 577905297 871074796 245388801 420221289 289794550 844553099 823534552 884861295 582647453 958791733 51036517 473715000 287974003 299880059 705045385 723019359 483332929 985971160 708916704 810144876 953812560 979511916 761130887 794209119 395762593 922395601 868706885 883859018 32013972 68693067 499792830 503086326 260193149 478432313 848536298 893521799 7720498 499914385 421662977 770213877 482881523 785202886 636965854 746926363 693547407 895212072 392206234 823859363 610037308 955711982 595604946 631639511 502538984 928664607 493875374 960652981 543778599 547322052 129265229 334070864 898029693 984654779 906312805 971149476 564730626 748278668 700613037 908589779 551796012 580373224 577830118 722966824 328314275 834931472 876268326 895688047 827008231 931872262 202376400 401837421 823223363 849362050 911924460 941470771 659341517 991546039 870031550 901166231 868843522 939861563 631191655 841607660 491542509 755947939 910227451 985287816 423293417 766062512 404879153 997139207 359071235 589513624 95725091 475999968 615078615 879277338 238598372 712434423 917907487 949104529 126596352 873530525 281550468 489894865 645126399 922407540 462755037 633757268 965343815 998114527 806419558 928867794 442139768 862013815 139271496 324916930 708343273 891688245 31236684 683035019 944649341 970641985 477696546 788431211 629024292 703695249 619931304 960921644 375536460 865637895 749898857 858500023 324252872 609632728 496859497 951218167 688542911 817383953 151706309 494890987 344792211 822090717 693561873 955094470 187987508 969762624 68527286 106745580 982379426 984422103 986756642 989189853 876481864 918266606 638143932 744460909 514694877 855317676 825811524 858729630 461678623 817195239 677750874 918237769 76378504 897868838 467330701 897869834 36002540 854872525 328602849 852527888 163567198 662589517 574169749 966009714 125553719 314926511 529944451 920357070 446929752 875534218 157033876 658343823 735955082 964069077 993567680 997892085 291597012 363175194 40444913 187980131 674195545 687904253 184909861 787360135 456172810 722008269 146416066 304720731 419816034 434560037 411229606 783487345 459574890 701142910 179446594 719196600 952047211 988091428 596057907 842331112 241372824 926297748 153731081 893252715 180837609 919478352 509372798 815800163 483338394 548345276 248247668 606346106 790684705 889532078 383645117 618086488 320594384 326631496 791595100 792999214 252227891 272210865 98726948 301024410 450311172 557548787 432985364 659077123 3720829 115780364 905666098 906652388 546374535 547299381 168106051 952039783 24357128 474880258 845332424 964962823 99306100 527792088 851371813 902897303 826069495 899889293 880845158 888078000 975142650 988941966 706600984 956994940 214048182 270334951 581101187 771988562 524268893 669133565 859937162 988555479 680748267 955089989 31135579 476189345 605064586 944138588 97161712 937882148 412740436 757204660 601796679 788591411 279560567 427533891 738872171 818367231 298043033 664389663 415939113 449068980 486981036 614005138 53590212 473111847 369514312 960398388 276143086 569191649 143998025 988473820 170303611 452029116 863333311 910051136 570276648 957473554 316154445 659094784 170313269 804810063 416129034 920441283 423056640 736505354 684738647 707427062 787146191 814076105 21465089 674646532 384833118 461351097 26010659 600893367 500959043 642124852 558110920 621505054 774636312 847303023 577034434 727172219 796292362 811552090 204591702 804462804 211362254 807664864 346307968 768051041 236829791 764211209 133685287 606070458 552337900 663458746 722338563 773826114 27675578 549357981 240694237 906428162 590338585 776929310 146525780 435108114 606925335 690021752 886958590 889242476 72005403 387316113 768051364 920899850 276915621 403222424 775932010 951249631 739416538 826457302 215475524 524519329 173197624 438477924 325309317 720107401 600782269 820443875 492372038 991927776 896024332 903353317 323284488 590643703 373947396 702818415 151758371 979004712 765160293 999776603 728654337 817417205 264509068 649134390 785424163 851765164 30328513 486858030 404547246 625184857 7945465 419314578 978482931 987664048 769687829 828828888 221940799 303321185 924067797 973301321 928514790 941439326 832372707 835821571 110170548 795446930 407908691 419690564 31952094 392871317 496546317 532826153 256187063 727665608 97973191 160148028 718103445 863935578 680538540 682387308 88861716 945767516 461585145 682211660 79771574 659364984 583627083 920605992 756849074 971491964 765321754 833762870 489130472 556209639 973366999 974775072 257316069 351003961 899352784 975861710 374605276 535912875 607808707 997231038 521634520 699181546 779464774 867615928 218367573 895923131 700273685 861081336 332686538 434784069 292608697 509017947 54143245 443529152 468236098 976858647 256194782 807205518 683732880 687979881 207112682 526055688 701577463 982803265 90491194 709523378 362269084 867095628 127003699 502024921 584158313 835136761 6224887 849037866 872018124 922451447 664311224 880743414 491486681 845113944 400884807 759533259 744074987 861444157 29084345 836200096 512930950 528415264 722423701 784893151 431785053 497715499 320711228 765719045 359139795 511587958 694441679 735617169 313940294 401231433 40242463 907933322 863054857 864127922 960067599 983440977 600689062 654749099 605383465 647192975 364031313 524731633 377172346 853658762 31941478 477646320 892992524 972912963 966645930 969320026 619873989 972213077 691866334 877391839 610443277 847350647 171659267 301636978 776959462 883763348 806553727 857322513 318084176 746097930 243083848 939547715 328581727 724773232 431891520 690645287 995838013 996387461 203933747 376461186 459558238 675105267 208382003 455237268 22795151 538761322 150396071 606780695 9353661 799363904 684228622 896199852 495614954 572824788 413760577 738280153 101398093 389180184 164298929 795512857 731911400 932526305 944739075 983285111 543011318 869671746 131150468 138188039 149399769 308060789 937342289 946883770 50178147 340191216 238743563 929823668 957459390 982220997 90787001 847047715 957356082 991409989 855303200 974456809 775388950 926990214 818504442 963373172 52932468 905120621 600296425 938875469 325273626 432050197 619276947 655835965 365302925 400064712 436081155 953811280 578363277 868948936 206448721 881560365 564473398 608168310 216184209 808301720 19733791 542798081 93416742 474778963 145785609 271662827 613626844 670251035 877567907 981182888 562874160 980610217 35719433 560294306 810916463 854213532 263079187 662531830 399212509 862333077 938081474 961775096 738460352 993418750 779525262 867648006 36512675 315822895 245316125 521799339 858988917 889156186 438111809 668412834 34152436 720480516 714015861 998699438 979730227 982422570 2544729 547499851 543508997 945969870 190382223 745659442 530005371 707310016 710209397 892690630 823385634 991665776 832393033 927974722 470383033 743288664 763733435 920303320 20025200 564880118 261176102 569572246 60933029 387059423 368995168 419918673 760524584 941570613 99966668 586600424 875112830 958133937 665086200 884182843 35249344 48283154 498129610 590324719 698947132 783292416 725557081 936409403 967396228 981031998 98174981 789344353 468597583 958271510 237542162 527789150 567011507 691113830 709338271 929015558 561251505 792127697 497355584 966907818 625418317 944752933 713421038 983843740 660985930 721360568 121640671 902708191 580205972 875401669 510813487 643496757 115434663 270103360 610346999 903906342 810729834 867062304 878151555 986715067 806172146 899355779 466760077 702707216 467571030 883848238 892881405 996783407 335744760 445488845 285196478 464956197 194699946 554375159 773047943 867146735 77740962 927765847 653048570 724569827 144960516 216291443 823055890 921426097 512565659 879741743 38551842 610350210 941275191 999870056 773688936 914478265 582626753 842878843 947843001 990235174 303881929 493823076 883880295 981210222 902935767 903911377 859014411 861057042 36417450 147535459 814088579 973192362 324608246 588901433 868164276 941039250 292703788 549890956 91655087 659137450 977578529 980481430 275579899 562922808 582909698 891045915 815097270 868115686 25264198 260066645 364219894 652256812 556803689 917319796 862513716 952172262 172552717 802116081 578470821 711998531 851631815 852286834 309951579 832718607 473024454 641470924 7369872 682396555 834918085 866216436 887095107 912446041 306680644 952542375 999788133 999788212 116535240 119617526 923493510 978634049 492201601 614316875 946329706 991028041 462443059 633137437 278476323 587396715 139008537 388182216 417369532 677737186 631891041 681435858 591001548 972005689 485624348 990386216 86131124 219256863 51178665 731928148 634348985 935657089 552863845 839122319 601551553 661997722 852356789 868472785 901891036 994026712 913381104 976406307 935480560 993610595 117892314 885903216 502964739 927823322 758431177 884120428 885313375 886460618 527810418 994776535 641179010 677194667 312268673 957397960 430051335 738829789 963371095 984721091 752928782 906382264 37384390 173070934 330876923 448225689 614729711 812083546 914625283 953245046 511005599 912710466 488486711 720908000 733984864 988328962 923121870 923895663 37128929 348967939 44286448 462374087 915878762 959000121 978385426 993299699 750128430 811614267 843174177 896729743 733077670 961764003 373723777 817350281 113118125 456282181 194126076 634729176 989299624 998769259 133708865 762933934 371641464 867042578 443788228 821820816 725558606 862739152 390009837 578543536 944528506 969807379 327258449 588885574 837681098 980812952 149475303 877866894 666277962 777565549 341011032 741039575 242520705 362155540 377797965 935115095 373506821 836281145 628915634 823880531 361036425 439068198 443332211 680636640 831215679 895830198 597416893 673883337 267471388 894279707 481369403 832295273 593231659 817053435 776607311 952013338 997378110 997382788 463185567 948437863 855056465 903947264 386190700 836977225 465052730 730434825 75561047 102068514 137574080 982515331 32439569 173537845 964902575 975503562 662979604 753890822 555050889 795817227 798574079 815025592 494887411 891276123 636378079 909347974 203765594 957081909 821670484 914844398 42323814 339948355 21895657 513352608 533536192 713921764 721179867 914587500 887629579 935029726 238366951 769978420 933948555 961202503 447097395 508704258 889428114 958206596 991143159 993058365 732496129 878165605 30285212 651549671 299851272 772264219 319114368 401127451 65342878 276090515 814272773 970291990 793759647 799732317 979468699 996192136 791115998 948860976 662504247 762154530 501624415 964268641 351822903 556422070 368849595 484290882 516830768 786321398 328822728 451146211 856054836 931023944 813335833 821128682 243015555 597117560 790520921 896855521 646622366 910411070 319098516 420001063 170978787 706732029 499879951 831306915 881060724 961241748 37679232 280854505 926263396 984763780 523075380 650634302 948912927 961260326 77751487 824897223 105593701 298680127 693674235 770919307 485025343 603111085 386839270 867757654 688855936 867194063 646148976 847742211 452396297 735084371 597207205 812586499 184647900 216247145 766075514 859274422 648828925 779648963 318789831 957498012 824836633 959742797 955147913 970993642 655541544 692391338 602203412 738411453 157364677 403392118 406065564 744321169 279417777 609744293 603617684 837659313 537033557 733124285 70943926 228088815 185003385 742535543 686758732 890157869 614061120 786561234 876354070 987173053 653340748 764807970 504453381 700008988 671517502 837714129 634616006 676514686 430229855 538180362 76267880 767701020 12707159 404594813 140882929 659936825 202257438 808164678 788801406 998486791 901364738 915632113 426187486 768461451 485384075 995438708 494954115 972447432 459041687 477823863 420810628 716126172 283527340 898169252 578917638 771410845 125189119 856902552 157746686 344461305 612557151 870926693 866177232 871485955 392701456 924927404 18742734 769559649 148799430 460819053 529852820 633115715 483013624 827577652 396317507 602758507 870334373 938739461 197415014 202859839 277617302 995956725 275637826 556903775 955143447 988010199 737302766 932044003 463876047 836069109 351978271 693540180 126595362 873564946 858168306 973374752 151208424 357568523 368758392 442979026 153267615 187462965 451165574 661807538 482554890 930304819 985772096 986509492 701116277 832408485 220408978 579627574 559263937 564216836 800481306 894265676 625126157 992873161 467282211 963445587 772091224 827149008 54669218 382967367 778665697 867741139 202816394 703671792 749271223 874205110 807052170 863120774 766336892 983860448 948901483 965330623 562480634 642435175 250654462 638059293 89792007 567926647 581508031 650035563 418687900 947224755 973771314 994816790 671417801 774867273 988088790 993395683 910048978 962946394 864834228 900242542 98681521 636453465 484511795 594448258 915188270 955940940 502243788 675225071 144928772 240067259 28157417 773871899 398096984 679373972 193493996 444970343 458533595 762289467 303765755 728692873 665393783 894005303 226697867 377684419 957371475 974106046 873019096 977577141 23507539 981402087 754846802 809072648 527352324 845527613 761500934 948596503 799123007 857001561 519866680 985270044 89993769 806003522 676203146 735264333 837957151 986042389 461334561 975026820 216717586 533980831 138007971 408782259 947812410 973630802 92113697 450651153 263416273 954213479 696424718 879050475 379285880 858577980 916246763 945764392 744264712 922050520 557186309 943975950 894837971 958529586 713755257 869053125 93559310 151036234 96184672 825177477 591046903 765846158 382538517 509595000 184870682 882290956 952369451 961272380 528186936 796920379 449567607 699575976 751209768 902204167 440286143 520778535 75262812 636810772 590719062 605826574 463634798 895858719 11669819 442691306 952273477 998458536 486210386 662074562 327544806 760828675 474242722 576120765 495368454 509032391 618552575 669125958 220895898 552158026 17682996 950822435 342679733 930859945 371059475 455025669 804832586 809448914 870491006 955757261 978047953 996713010 570728072 716365500 590605251 930906757 38832199 533039515 789258642 980239689 102735557 522496084 658953961 969686782 808120553 823697353 749736606 985139634 704224004 884278917 198435995 895805754 873630804 961045060 679112182 683265613 68821155 476122641 353968366 416812378 587513291 920460926 117471726 299075939 750978879 970847986 198844475 767247381 445869272 935620641 707385521 796570147 164015230 867258353 735764248 903238196 802581711 934035302 532431354 956225873 703920770 789193812 901114624 996506531 600526165 733544176 192244469 628531158 625261733 786155501 189517440 380308955 315162403 905083854 506663749 683610048 663579716 920092700 682257229 997601773 101554424 862731979 825088098 998186403 281053244 383289167 200755627 878823583 310529965 412013569 687517339 870287018 133508064 507939836 306515267 500420662 797687132 986052127 484825387 692851779 207950610 506025947 767489620 834308969 293630463 889539383 121502289 900487740 370975824 753152620 84109191 609125544 251341270 742286856 225281061 498045331 956318151 982285349 245654397 347955917 945348608 973806952 62504026 851808902 615624444 800896830 718865913 791448113 173628146 892628449 850566672 926317122 134144788 878044008 93522530 443034334 299439215 529790128 103229351 141441750 335131222 338094584 550592172 954694503 299061171 746010309 846667911 989049546 981240417 999885750 829627819 910898441 116972722 716807615 977426433 988689138 945571615 983871315 422702988 618455567 512483352 976791006 852602428 950129559 853464462 908265512 695024629 807178521 900027115 902220881 180779930 800864841 580448827 961313397 975022564 977919378 572489997 587296620 223605375 887227683 179409908 235914203 959848496 989012682 744249921 924737091 807160730 838979371 382714552 930341095 490668637 904397737 800592143 948444112 180770523 998605316 201075059 854322147 132787879 229989398 489836734 746044355 734591810 770433362 349678569 728617162 97636573 618759774 1612040 634442962 990320789 992664889 674752124 731252499 136924193 742971960 597496390 917172437 736960257 914452786 518223779 849239501 169430859 445511263 279698769 366341390 815422181 937149823 179774829 665629726 535957657 876472956 190281092 800410581 592054179 804873312 876641942 884256804 974847618 982038564 69707363 443010015 14509274 978162038 804767002 840418366 545653038 633188158 785926184 896160029 659921658 944660340 643208963 782928224 917251948 920084226 348425001 593945827 500918727 625156265 870575660 976302972 415159332 863021727 681421272 905411078 877324507 992453820 305443160 947318176 190109221 792793307 636397604 704477464 9615452 807409384 825350263 996017780 114197162 290359402 664834016 770111842 605318266 992228151 534392324 849551334 646664375 745960431 515426146 930651205 831238034 840316487 949532613 996169112 217746845 970559520 626138149 697691277 59819230 66873007 238725468 380656663 419779113 931959874 19604102 832542978 45746782 755367958 195721924 737603567 509977303 612393805 387533304 738554567 262030969 535648298 718276451 785992623 842907291 904107240 372990396 754115303 747171373 832373137 423479167 468822262 85112797 358520230 453812611 552627485 484626694 754472283 224632975 382688025 914439182 973375214 799388866 971621521 483930459 916833243 449645521 688223318 42556417 246068102 666444254 796447270 676186665 677424310 749848578 928222256 416856520 733782878 65033329 773141210 255471970 258849976 153693590 909041460 853942492 874911773 536470486 784285630 420455645 858243876 927068101 998481254 278410277 724925656 913021181 965506491 101153607 482740811 600755478 842818438 192346574 670304312 615177299 785000841 983621810 983925498 555771360 624266475 988210896 992208288 495187433 694971666 631962663 888589921 406948530 414530843 828791876 927197753 622989340 634364013 267228719 351289931 636726154 905781040 741026703 748175529 171434744 518322241 911975037 990950599 838827850 901438944 839353267 981850945 935383939 968075436 319936850 425219912 850537910 882684373 971834581 988479019 338521177 355483878 906076591 968243658 100016840 373990430 325983240 587617954 147176025 153138912 967507843 972673383 532495100 547966986 126140806 715105994 724197843 798511593 879098155 894546512 870271341 884267866 338592828 609354266 907730663 918755283 846210061 986638955 372196124 933465967 220981697 520854144 29197955 367626332 319915069 807238617 470184702 895947767 617449289 957101014 728147106 909315113 326398857 963917349 27224265 145044930 461997196 693005795 707780738 978518326 893354765 934682325 640083684 748796125 880686569 993000678 708301775 919614473 537950114 687552958 642595949 642984441 189668782 699699098 857448365 937929523 291832382 972245397 163668385 759733431 244642383 260979159 986823512 987402967 669058051 776114931 353782539 765399473 690937415 875294237 138323276 403237854 106540354 915368663 312812522 846839690 527766651 940160432 474263636 964276018 126484564 159450519 720288578 951849111 549707573 920582872 19656733 336769108 573114728 649497237 250765074 792499170 834467179 964328177 913268285 980427456 506302380 895364864 768056789 867486964 800070709 897104203 864205614 930265558 829998356 858700437 595406799 950894140 80909305 954090007 779644942 947794149 343137841 559959936 98587309 257148477 610647095 732039295 727935484 965376220 373371898 582797849 848995466 902920003 729703692 785210912 658891127 955121938 670525394 892250614 895680104 907316069 839056489 885847224 555672328 957934849 678260676 766918472 798120899 909037317 443047825 570120972 482713897 691373945 393448856 519938744 247062485 750166143 966356709 993984637 666078926 719722505 411664197 501186071 1069792 902601422 973819077 984015421 506868727 985580217 274828725 848545173 126886218 860870845 471328588 573436080 14941705 640621766 613039060 968940579 765974390 843596117 251774024 907682179 565306195 572292812 387584033 812240365 310780396 480397410 702741392 952992090 333202036 837674022 963407998 997031129 140302236 179109789 660291960 978555954 199236367 312631476 878720793 982920434 277386578 452191020 212932435 283544195 330073850 883297879 630435365 645914479 123871185 236518492 518722644 678142845 145977617 190976261 829419202 941938639 572879603 877994245 98053054 241414074 30121817 160103877 576542371 802401358 650093754 709336148 192573033 335483452 408320903 801805513 830357203 876897296 610387583 729443865 501521855 616615190 836859021 976963695 677801903 920014697 59955274 420680680 900405352 983103415 838857113 923445693 754966027 847506401 764367290 825080060 890910569 968057877 121777926 578939984 155394774 645958669 409954164 914492186 366467445 796469609 399800439 965284858 873633891 951219398 156825341 837139283 839713152 896087889 753631225 938463954 389798775 996215814 508052313 696536266 699749388 734583017 736095059 800239220 127935015 454994432 619516385 913303312 355003738 793219000 916694154 951023891 152186079 541188494 989531187 989970545 308123827 855926242 720931997 814344396 818057748 934781039 885298897 916391872 576340780 593836438 720423799 925774637 439960335 582199158 676303220 787124160 597371541 884222290 637784288 910804399 138811811 711194667 981410254 996622101 599948297 778540266 189931763 928362626 816161824 979364095 705863653 730705124 613353728 892064005 21333971 921682768 261300001 322714604 656838006 965930088 564648428 601884059 723462296 877034735 860346333 939451121 73671477 827268763 955188147 978236048 918999934 992486224 374817870 423876874 396961917 824212131 55735479 398003879 853050617 911683724 996251891 999361999 627879564 706953331 48714169 204812152 253760367 579694221 306573442 648167306 621831824 988014204 15784852 173614692 980186162 985228347 512407971 922320832 904089568 986265892 669490002 847508388 196955393 949879178 83035742 88391866 983881573 997466316 636626771 921081509 88051983 354299486 229850120 379483197 78412966 262323588 450004526 534601651 388251747 583421593 516716204 590897943 103558080 587417316 823853028 835711039 881377037 941217135 964515693 982192845 396352348 708806785 524440535 644202286 484509744 850509798 464342816 476404459 584685042 849337447 797326254 973380067 980128692 997304247 871459262 885017187 694699939 973875195 690356454 743796299 704890986 789089645 99421600 623996078 489563370 674423324 503901163 768326988 932488077 991502151 56856334 517215639 939226766 955101166 145374788 690640421 750674018 961583680 65593089 467294125 743241212 985546001 498552254 889493441 696505543 885114567 116680663 235331984 726581671 842187911 66613430 408818721 673175183 854831097 546959361 551228377 326369859 966503007 463138439 586455925 645452290 784360217 318761757 863261449 922079588 951957401 219703716 924447532 994579756 995179652 117190379 646677927 535894818 710611093 319274832 706476020 393965889 575088889 252373272 334298650 870207714 953164204 24321731 807318680 807278581 837589735 570027697 924317964 692965741 827934167 990258683 992427066 941499277 949367753 547383351 955875489 792901588 825577525 226780011 618293475 82597765 319229825 834264331 912722473 611777651 962285191 708451981 865789092 40039193 544856027 517470394 858362733 928774038 939653565 858963473 929505939 632083562 975644287 984449041 987306259 554667062 714573594 856961947 868389734 506156086 540188285 253767594 751628562 59184027 263380122 501450868 519197526 534489558 538893055 805127152 972601331 580565977 706201192 669601344 712522991 520002474 725423981 352068570 384120038 247147038 550781154 244485242 739524689 836398873 849406411 826362049 994980901 971583643 991984102 719734008 961148329 741607177 803908381 983274572 995796999 880962470 885740456 463065585 678452839 720913341 732640737 202609873 723452443 822476641 854180667 850881135 870709041 885716705 986863087 587669221 986317799 195243163 373106031 788470368 869991782 322681459 693058248 134075236 179327537 30434070 454534295 236042544 821290178 808263019 839415073 992757958 995269177 180791715 777270636 476215229 654446017 130913290 629107592 748096942 948378293 394983304 854379083 925488843 983078555 735657800 876414685 247097662 338367468 382962692 994092407 43008807 645005079 225991913 362523017 303858978 500407757 387165685 437201489 289455758 720498122 708640134 934905110 956808698 973251226 663846932 801588531 449970028 881807808 847882003 986627280 431898033 880964245 395960574 572204868 377017471 884020267 968580546 998873444 156041520 605883415 226743948 787842553 9560631 877088966 786163596 841820928 83014308 604580963 210109542 860892315 584106278 656313816 482748590 840076912 612148910 764749620 444664847 721897674 596498482 945826556 980625526 995638660 862989779 972486758 77553710 907476907 350065215 886358342 768993179 800140347 694541521 720190078 93232446 479338019 825705043 953224381 233476438 645386982 126097566 471809148 14681442 775374120 598975931 991013281 537456937 926405472 513947238 525345810 651874718 964920769 868578636 883887616 916102700 995122298 789333935 790554304 360296331 762212400 326076667 342403505 858915336 942603182 930335105 958913088 707546929 982745349 872403454 948978363 701429217 949540308 264760233 469932701 606349381 792471538 428067216 494436009 513717549 735796640 553798300 735033536 474019134 578266331 92441583 923205087 410358186 744675896 751357625 894320642 62251643 104312810 871511710 959635838 374540720 840667294 180175408 943641724 154895170 690304798 850783897 994778020 329066490 926985782 499845740 940057267 697644986 928951651 182780226 307548116 671350876 781110430 640164609 868502183 984708555 996007261 956267634 996981524 466420875 767492452 629145787 704941370 209115887 532004253 33751599 330667907 689875463 712450150 714879760 756223464 217517038 850328883 188161298 714379563 251500372 753990055 134854747 448817031 471526863 626536823 500412317 891738187 784381209 791414590 869928174 881989061 736238989 931205148 850469017 859242250 182998364 629178400 119478941 475295640 854710750 899098019 528417650 855865234 601557730 745790607 524076354 769231055 479683466 530550158 892576324 950695873 802244000 817488130 731184085 747169616 605077883 824418557 4155354 903107728 339146626 835104408 968884746 994240081 361250600 417433828 11739434 713844320 870338606 894616179 69625706 468678370 538933835 957412867 133300839 298293825 833062297 882290853 154374822 486637869 326995441 743793141 588912604 648096498 654779372 721165795 7628339 116279581 769883311 960126016 183535828 308098861 674171757 735886300 76570442 310754485 446251002 467332975 427659792 623115059 379711883 674957347 548262466 704202842 386119850 511957449 257737513 895691620 315613005 690191210 468308097 779044237 303648378 710931278 707439156 948253717 490487603 999984670 494724869 514243399 273049292 663825492 312490008 648486828 548437400 999380634 487846424 811738666 219042329 855021247 140662922 496381675 35294295 181098064 940484802 997431369 692453495 959086112 512809272 697806648 33860453 250539742 691009947 752784947 476842362 945701497 797763223 957980855 613093959 660692929 696016793 997022585 946202422 960591012 814455831 956918474 389057340 869143716 804032049 991438687 946474528 973143721 172490160 981851622 302091532 937856277 197848818 595404143 162458051 289165757 981906120 982979291 658642823 832822979 64922014 676293795 882156355 939318345 394331724 570127319 754180073 772687367 191667121 884647320 562232699 933698501 949967342 975325859 304367064 686273319 857145487 904871799 227972474 854348083 725640078 808013315 14050138 173350568 301059930 989348775 173166300 225502906 94467250 118101583 354523270 535858031 319311153 597046030 878359556 916348186 548841356 555005630 440339291 709913457 967702745 986150040 168180777 988671119 119806084 938780946 976647613 987955021 260608323 578253495 852077285 969282384 341739011 849807194 581155330 680065860 115118474 995110413 861266921 966875422 308914672 969932850 68962412 943230766 102955852 298565440 79196845 722289290 832668002 979289623 307030535 617483576 478683503 593187037 644014874 886518751 629369791 804383516 896408331 984653987 899308217 904466115 599887459 977572362 796437056 823960758 64628338 637998459 46996175 153334913 184580918 405429821 207395478 697661279 592026968 637771335 757176004 899478304 955873036 980082591 15693152 526377913 873437177 891702868 906242283 943650921 79717319 704545652 73172444 788982387 99032182 603935784 386697897 928912386 100040283 550160269 413805932 923432672 909530614 934188910 622087395 929884584 110175211 984993922 230946158 850322391 290105142 748362552 589099900 682309392 674908906 831574928 744209367 790160084 749520774 838327014 741401642 969654201 947474767 977052046 163966200 700121712 740736720 827225133 732012021 794703238 491640795 925743477 626693659 787205722 248000367 587152876 276742387 874096417 66116237 637293735 220721547 411189533 454652052 959015583 638973456 894802774 894982413 942393643 496862673 720212840 393759124 783585364 41131811 643794562 381976205 408733911 573482874 639608647 867167290 927785473 220569944 983293108 212954422 507029381 130715974 832846946 134441870 280074616 767061944 882494612 21874381 95336481 727623840 806213062 212308384 492562184 385800389 839140477 643484845 795207843 671263297 682890926 362102709 811811381 684448324 684784093 145779044 559473635 918998457 980024269 225504436 341413744 201466771 288109428 785445691 984675917 27336497 897470699 377302245 950685808 377906312 949164258 908531466 984672140 605656148 959754930 539301547 963874294 420426402 738864204 781080755 958774894 790407887 938222754 291498600 482409690 586412728 779995607 824596641 881729452 808754802 986315073 835732491 918573646 654086336 708031315 135957187 411761907 232931406 533297863 23579056 937571713 37264264 799511229 280257435 578497373 251370172 324448093 856551009 903185657 897013108 913966851 96983901 142487700 610511375 727565117 622876647 965240538 170898466 970443781 897412422 920847487 742562837 809456993 990624977 993447630 552447416 699491906 471640296 533884627 126097425 451177434 296598901 298542474 227479232 359648967 119356698 660269450 975334607 993200431 573562369 690605447 752701163 879082973 690750902 878485044 99150887 508334180 797838954 972664521 355643539 409525410 441769480 552757123 429890261 810437125 237025604 928665381 525409409 901520582 708427092 780417063 263264777 389007377 289327635 700258574 609237141 749094421 564323198 703595290 921783276 925374391 995293105 995498873 526241685 998744827 525488106 748887658 834356740 859490934 984548574 992359206 452555167 613007615 776343995 907214810 67476824 855672828 131561230 239789718 594844357 934699561 232089862 832282338 142744054 186361758 266004034 483602779 760385541 940513368 505693620 655805912 365811700 555125442 385692220 475689658 936569186 985020280 162986551 853822967 370767481 688314964 4455551 640860811 595768498 981752329 406173903 661895156 979763771 984123487 725076436 976846107 167361487 711894082 552437658 622392600 236919149 476576497 797858382 870488518 67097406 231511097 15040486 162477976 103161161 476616849 631085993 885946748 607728003 804827927 562413557 804781082 406758962 900370640 476753178 534832815 337639625 686024592 50674725 191971636 102064532 570490001 45570104 251564304 704176135 949500387 800606276 840451029 871034814 981783252 380924318 920685819 501404258 752860094 757460758 823682466 637639547 927994725 971942015 973666412 727326836 848301310 197406919 841048924 78247012 600656222 668274610 738135033 882502595 923086037 364618339 896278169 875544786 994802737 553025399 793551050 815826204 966727419 346047717 911427085 404755548 905151354 471973855 504287438 950876748 954819243 228242138 545959597 899190823 984924949 213054257 353832386 723514968 850819970 919029118 968321201 814431026 868318785 144599625 962241820 47824938 949604388 299913992 441079942 119373472 915514099 281555341 897862852 343867254 882454257 63099076 813084865 660420713 846391232 608745185 686471931 534776230 671608062 765651673 944775858 391738099 856120815 308637118 522376153 23006227 826533830 76260452 256020099 55748276 80032088 549833522 782019055 501535369 953132905 5906206 244638015 826425267 983079389 164195195 447022436 377740359 966484186 960206396 963291141 543966886 687252555 952185247 970524125 79568006 580451656 50201435 221833838 887868278 951614416 174898551 520694258 866445810 913243757 10163605 235387369 611469540 916946496 622231144 956264080 674579084 789644491 914093900 986406205 595001121 649150640 25891702 981718528 4642410 893083232 858121033 996748384 489037380 901576443 520340663 836119672 92897714 602740285 974150313 982057981 350573096 507782461 462364976 962395648 125679708 883361604 109253455 253270191 516066229 673170357 617230640 801292088 138529703 881683231 330600790 866500692 319507251 555438585 191061032 979780842 594604976 839307714 895228236 906024892 692607505 960053367 334231679 647864459 148959246 438255782 732873641 983062858 177113957 727397382 279971628 520199332 993713088 994819006 700391956 956969204 326173330 391737742 87424016 982155617 116145005 966395408 728216531 740506928 662314412 872877991 880017453 974264661 426029962 828988512 5757919 170700492 38055857 684038605 359777759 499232593 410900707 867821511 677634185 755278061 886483379 957445139 336006634 708256690 197220768 259702462 120156743 821637426 670478031 770618345 457373588 797265569 355263723 591393553 359702095 495796074 51407397 816575345 900069974 993500040 930209010 930556875 878078223 983374867 391567597 760856506 207809148 859601012 603229683 859482424 323648287 379217635 444212457 853466775 616766826 935584787 801073212 995736047 280699133 922208217 56227205 152285564 117161603 322723657 616089691 711749019 170666887 750820652 510520718 946663404 256372588 537854103 535244204 840597005 382934773 711612867 442825134 911930483 72236417 385087797 912600665 976831083 456906994 545354058 846889814 867135837 494389039 533188707 259568341 945300849 2818575 886853895 925382146 977131483 996794320 998301249 587822483 867489549 538976982 990168196 89791406 708109173 843950961 969699694 252631281 624009494 91373051 554056955 75427054 174209643 745281119 852430604 410287295 823356637 836958090 979817591 272104440 651535497 734803473 890793439 984983333 996859681 139341022 229749448 401866844 912971436 576283116 997285959 656597260 987201660 764073900 856325560 824116510 975890585 655393843 904888162 70891906 840869061 526936711 850751729 516888299 688681038 192395942 409176469 279903697 465985564 480860694 830146268 588024828 661293142 474058010 942147404 579252646 636569099 97130711 359079508 218361449 651367634 718160974 798565976 89463548 518210927 247295541 379490051 300831335 859048729 185143013 561128863 46754784 299554919 460480672 491243948 52479923 474069380 358341649 376320048 549772222 652684955 509032249 699620863 460801411 766554368 676708371 901215582 301190970 795761892 24638434 885178026 243923336 354750480 136000963 140747247 89968895 115470159 626059806 712192567 120496304 155744436 344474700 570562754 613595913 752916464 651619561 859096292 563747129 772742643 914064430 986216181 742770191 927960862 186448789 795825879 107691247 117229091 107266194 951520530 917975995 992876833 408725282 596285590 38581637 246526350 314799221 491570662 141097648 826453429 984325214 989793783 910733015 961968783 231109859 410387279 309324425 769083476 493311137 687031756 864725054 955065878 334502920 878354530 737971201 949028502 554108349 642994153 830034591 848018765 215397485 932251580 405790853 718078508 896240075 940297309 188407919 799924313 492239998 880723557 218423347 257370823 14568264 136604639 100599525 499228375 805426081 914929521 794287539 812097806 321680400 774688922 757078227 986754312 885765624 943511607 101346094 384579451 93695521 160874658 936405901 948268025 875857579 919328561 419457630 933845539 612761157 961882446 9476944 599411635 68954313 865886506 647455635 694007318 537665575 873609670 105705185 844472381 325179602 727764213 690349558 823614831 804917700 823038235 550357397 790113477 13764638 190018814 956174935 998488247 872711874 898096072 44484020 937438695 64473070 592844309 83140411 592871141 72531870 743676005 919688747 981363859 62056509 327254549 677824866 825943369 646720890 958626417 915997588 941705833 852232720 894014455 62623815 362066087 278819129 532151773 901170444 918905168 280281213 587620929 432229574 988914417 619798108 791378490 6194000 901856100 791444633 890754507 920545562 970456319 254008323 936087204 822452110 997465124 597009291 896469008 2350943 776647043 153635078 614602302 159431219 801931961 269522094 790497969 398761309 999830770 405855396 641837520 470317976 738433685 216530436 601844963 655311998 763447071 707586233 709930657 862790343 868003657 438037243 932918471 656907863 872860654 249800844 809605369 252755674 992509949 261624562 800944607 504626576 630687135 770470884 998067924 313993764 573934554 432612955 909166811 924735584 963449103 527968439 678185890 877765212 907099883 105704077 624128757 602700606 800180868 401503284 501962014 172560751 874148034 533273391 789726306 769981108 893559383 738224848 936537449 932467057 966901849 856141416 961325908 637813957 968055007 150203951 416624226 545042240 765393386 668149856 686878968 174937866 816930185 309452864 852797436 615894315 688989561 189611894 275228642 154031357 867079591 898076981 903928778 88830511 170857971 505628250 591580898 94265531 433863416 843442341 881421787 11148285 395693259 854114026 902242068 110615396 529792402 854244489 857215336 727312382 736007977 939505632 970069643 714460941 880908020 846867689 917852649 51509285 699218962 383950006 475554401 141550559 299063401 250131936 809879914 762398871 897667209 862538450 873868020 821680324 864321745 397259374 784546834 881047321 950005747 260846559 712385798 187381997 264673576 198264885 309242569 617182774 866898152 309650609 442593456 230514075 812757326 488619710 569825225 575139110 682454535 426549523 979808507 849843687 989469749 266966647 318791219 851961669 979797494 882387875 928114585 3062806 798287628 200806882 880152147 352075041 812213799 373236975 436381997 796197931 906694752 189932911 216445677 129089106 426851601 77180837 425864695 531113417 828616631 590637815 618760690 735052296 892435211 656857940 903092363 240986976 955538459 408405717 806188018 351229187 833084087 740813462 761554060 313046295 633171014 845946684 978724454 552031586 637419759 976922766 984217829 898826043 990359233 575118655 756890242 349235295 770031886 519235354 793698036 176181832 999648753 740727676 946284764 721386741 797856516 194529169 461422743 348517434 357796378 337311954 369355846 305894446 478669246 551256555 933797096 36603965 817078304 422300331 521231196 946191384 997871451 358490580 837840836 9313908 361553173 902697501 920125601 239367055 874728767 101444679 607143786 368091490 592718531 605916607 713649582 205044140 221287694 235265588 594323565 18878611 978564499 832427620 919474973 803068893 956882376 630772155 723329960 546336055 551463648 202439713 871835133 452010009 486352536 107553339 273732441 438542732 481173957 378474607 884256928 701099534 981671817 565814580 965350714 382481058 698274000 257536652 630008433 34870188 154951576 329993310 487702610 201469503 654652056 79371993 829149369 281569520 628597999 367695516 696315682 804529111 853115089 866411345 947217960 443550686 717364391 763037819 924959606 955889844 973714231 334164439 711392684 426248846 765793152 811517824 877640515 460367148 622465034 356495081 420764838 222269043 395804196 654288040 837655236 279520476 631395451 711168961 795852046 245105491 740508439 989849369 994295397 737504554 782342560 873232137 888587184 71301505 100397127 188003514 924699824 196538985 936522872 159036480 544469364 243248611 440692759 610531335 880904894 801460723 818372055 515371671 713695273 147332989 807493371 680406460 951549249 626980504 772159245 677595209 797972815 757862573 804032817 516497597 923424255 477210647 813767988 84249167 518240163 281024621 331358060 855125805 996875001 499474778 770047024 122717038 901010023 309011595 796003035 792803845 815964124 713836837 934508673 518355355 538588803 366572276 636201047 310385284 344432280 707906585 831919646 153119887 714783741 299672464 353537001 850963836 949307594 252245698 340057268 736118705 879260209 123289413 254427526 609713740 952994791 412161217 894297490 221692780 453166294 176503240 425797449 932059020 991904501 426888895 984519679 323162092 449701938 578122873 884217650 312216447 735101540 17183204 349345378 148956260 691869195 624268654 812849910 510301930 645846273 152481091 661717388 397339196 565683410 337029842 919817252 440214815 973367066 607047608 862124912 330138414 933848101 272841128 335253619 670396441 685623343 977351528 986926202 254170684 584510372 425192311 434392854 785902880 860703458 759830188 812712856 792269059 921280586 260864913 978371748 130279011 154653232 947428015 997605089 352423449 614389003 537118693 819498947 549695261 896685535 321570377 326540350 693166653 958504664 488966269 733491415 10838627 691911933 653440456 994422792 327007089 627005647 623789388 636594668 132139896 433480617 146132823 339078915 947971344 965841051 259213454 825084116 707326747 711061425 227578105 984635305 281661317 585069673 759033908 817026017 769996606 877125621 217621387 993591348 496749157 998184450 299831174 965426654 525793818 529252601 753479539 921827078 172875290 758133643 560167557 673295194 807866205 943609382 430527064 542275560 684835516 973340668 72368761 566455262 600576838 880811940 735551511 952089596 514678084 915451749 568190570 815319194 949242250 976984325 908365822 970764825 956806778 975791060 905005630 988020374 596821828 948882298 327129145 972265068 625263670 642517836 179940017 480338728 723489883 787203367 290597369 825652142 812108058 998129447 514703876 686474036 232545542 324238036 964569963 988162182 110572927 425444039 587279112 768828786 607949090 985016196 389212998 449362074 340810055 606023275 372125448 786641616 737991882 757215390 418890875 997191473 67801936 426128160 717365411 838797511 825392173 928601340 34315368 666153455 123192819 235885032 477314422 971327315 234360554 427826273 387267844 731965554 528060406 684206553 935081093 962458522 202757890 319369228 376572427 409713027 71590692 505423664 385555192 544489178 224960295 322666215 427793585 617624222 756789723 917866027 649333383 767722020 952876074 980538578 455699699 856031652 554507786 602826799 242158500 296459772 518420542 796503447 315557523 350781661 664933302 774372089 40525800 237386993 914851270 975072115 567259823 654282577 23028908 308956807 46762547 591370897 418829059 618625755 926623360 973986480 863567864 915164598 708167534 819844638 991699218 996827880 432664642 827118872 98119680 675039416 36418353 413632027 733757176 780854076 847279781 869454491 887192514 893780202 90427494 243427329 750329435 842075998 49754689 883913060 82124767 551984721 935548454 937099174 852685798 932459591 307515670 514837509 524058405 528049403 923723094 957507865 994470542 994877615 152257329 832742455 892438966 918044347 200557140 623764670 404616776 923690230 404876006 606461598 229514803 722024685 913561455 992402386 359189035 847723555 406294001 639571247 835092085 846410990 477311224 682305458 828992505 852149019 854155098 906376369 464431423 693330449 592941194 626442319 805111830 824613879 350941895 878440360 810298094 941579873 856620421 884616598 594298866 921991739 617814539 654076137 293122449 634194418 732690950 861216798 530301695 750031844 260648251 833593906 48877154 259082190 852586008 942606836 842074200 902649173 865965596 896570322 138443869 141571087 919191803 984966168 554589008 983295190 738096971 765305059 959040682 981038437 199759984 291254095 922790270 985661099 865214111 915513939 783139130 902498393 337402770 692692597 888571853 897975566 305293722 355522189 341071485 984703843 881329836 984193187 877849090 891587989 911378194 959007735 508227616 614651870 326036281 716631500 101822810 710259242 56621760 664536328 625664509 738984506 776923679 830756473 124735490 934024426 605625857 611372752 364141321 436220977 495015114 716596107 83821981 470456838 912752014 994530476 446337650 909539983 911475446 936642474 417032976 876800419 412958514 628524857 169422279 774732520 851686601 920215027 322193291 601800941 88474995 172574930 696325404 834003044 638023912 878378773 266255593 552630822 22621154 893544320 117472256 915775369 984609496 985318039 171969065 400648042 229024117 296255948 395269820 602541043 113668635 948559435 571178963 895122786 694453552 971046393 111134086 867008260 505330410 914667149 850763695 887472489 224318431 682742585 198693661 844612044 757108901 916075204 62190820 78823729 752844721 796126060 13286372 349073273 317532743 647021570 897199385 983338271 443804992 793415583 555319191 594761686 253971525 323758680 135987998 884663471 340115677 621577581 148012594 242858213 814588709 861989181 656290999 968090063 573353298 603147047 658833128 912228828 864639133 964107614 568659215 935113532 642746765 837242652 582222243 921067749 837051780 938241564 954465570 972762650 481161623 516403299 976873255 991747964 298118429 686050088 685278385 900514803 957773172 988534699 990036291 996912310 245873281 368191652 321624678 515588455 392783968 762244933 448026373 494977083 457071320 879151329 622102354 968265493 94865542 368354266 762348748 992329631 346238214 460339554 600017573 990173785 946230078 952292256 464952046 594096772 738830681 917231859 35511203 532189544 255658403 608031674 639901515 978191034 304500958 342705565 903213539 915593000 365087022 953118026 463318134 915267041 455383480 945706600 707285117 795844163 631437488 710691719 753080434 788181930 144604342 519513796 437863405 976574895 477997289 908505547 588269163 712506830 871567600 981364235 843261573 882802693 729307689 933313742 47236944 650906341 186304237 787605662 780979919 961376346 457943448 524326131 684934328 927089815 273936209 521674779 770023031 811292273 180915941 401634639 617491151 949564178 919202488 919834904 490941240 931058009 69176108 165585753 76459184 554372902 194490892 614999145 970217571 987137534 678474715 936819463 961356595 965951055 753704366 776739332 2461399 796802434 440984419 846774025 386396642 402365626 349157565 756083627 954981264 991377727 660345457 716138533 409678524 543226234 410085048 426085559 339863335 400677652 895482287 935567418 412223773 425734575 523320007 957020251 382072762 643737754 192640080 854444952 498605367 762422159 360803642 380891799 636676034 946039102 548945269 556833342 449902958 808229491 927255488 966088277 786020515 838074954 234187066 912873237 989458976 997156531 418288057 982648432 700449458 891115525 102821965 779424465 869274914 966911897 676496503 788130042 930087495 976124879 244694240 853329633 68148864 174253269 638631905 698419307 628227254 654438456 573893317 609536693 174979909 184075735 549544227 923828423 137376196 399681772 876979990 887960171 315697286 316540720 477984215 562894433 78657275 126730396 824178836 881046908 149611827 675987354 411782026 516180387 275849541 835858132 843096166 899808963 788897566 880549455 51196850 109108676 649489490 983009394 713039585 758977859 331923242 656921571 208662267 336212139 698983659 727298856 874775323 990172823 356601277 517057362 496823206 815181087 326590144 745073342 585512163 766649888 825291897 939581142 516853843 585527813 421798250 956630070 258773505 908224596 218903665 893694351 943937907 977587125 232936058 594985260 613383544 757994481 330779684 477381303 811389879 851952617 663905545 957570020 15734834 755462198 18490751 264147089 456494218 477696727 646263035 678039947 877621646 959653358 123200111 823313734 939237046 976678763 713852242 723852253 604519032 920174886 673153068 709384418 355162081 633066225 690544161 971040237 963413126 988840825 223108466 536657983 749264092 819275360 450640302 874798991 818041915 974149772 49139305 609418091 165978055 878709431 620421435 969136784 509075966 676839602 202335093 273537638 251965831 346322645 26311581 315365172 34210443 453618014 124746997 302508482 599908590 980251472 400603460 677796639 430324310 755347602 469908432 720214546 122096725 184747156 145969480 939711848 933960493 984968311 972452869 978382475 175202682 523164479 34375906 929511931 31496627 638443388 517779420 572282754 430331332 653400897 372540868 910617332 697719265 796411451 407247475 978494289 177331142 757128736 943132171 995559751 173392354 537267615 485391134 501870778 436840448 879931796 53060770 475183952 424732001 999286177 666129127 679071790 269934727 865991434 796780340 925722205 768940618 778707835 454423475 951567731 811182900 925688924 483010172 833526945 258489898 827008666 279231796 749156138 56788811 879610667 994361610 996568504 430621722 918343585 348247401 861365627 98855094 863734978 744755996 838192378 3536398 474398057 359549840 992246678 225994884 771225801 825737191 872251478 343581468 831114279 933872770 976228387 294610647 504985599 710110269 842197389 472123183 985514352 427787324 687364727 129511298 385394173 419613181 832777801 904161741 925775641 497297577 948913464 399629749 752175699 931974076 985013767 536967923 771168724 894371829 897985989 850125838 909965618 568244205 865356027 285049712 313856446 541944375 597711577 940867208 949944305 764368486 937583634 429295202 946885390 446181709 721950668 911245616 974256152 851700246 995829527 17446575 319702372 298987619 534453692 739814264 945710807 679174202 986226252 388756293 608856100 900730409 974816707 256647911 522345822 239934449 503894763 202552008 765039435 559551604 803288265 793443890 978526947 281655667 396915075 369493552 509516715 835155937 882265189 426572285 574480000 20627540 787895187 117868236 354686601 655008979 908722154 20327209 851404847 47202425 474151406 22906285 970048242 56432214 973894647 505346008 586992455 662150649 694184914 219197545 681627525 245100198 741288116 862504877 946882321 726535211 913547845 43313138 912981028 437058628 477933104 404282502 943606987 813209032 930017182 103643345 402638719 168444665 951897729 591555393 699784604 19704197 693903918 581287035 855335744 622855940 651167660 94310812 585417988 746280075 797945679 181706687 981635908 660475331 825411070 606067215 884101146 676947638 924639157 115688698 896641473 494964249 880438979 815272706 963814796 398162204 467353010 48641982 316363235 130471779 376859266 464804985 562795262 770817707 997959933 996751343 999571419 523153125 614928988 685010703 827319017 583567440 949957551 606550222 824919272 946122385 973851941 581016395 705251071 448214505 858709149 775719623 961535116 744288840 991927333 389772328 804463495 477664399 760041523 118419929 246583750 341064944 759994269 235096816 550142874 652343692 983123295 620058032 899184032 376352352 468310725 399966768 855097367 566426282 865383539 526134935 725498060 743419510 886594008 777483952 941704840 331266772 871031932 252128070 709590699 302025883 859944723 923372332 955664313 717575938 918172335 975786498 990974924 483788985 490096904 991299961 997389446 264076404 775258308 554300025 855815427 829208711 886000805 575708692 895206254 386330857 584174291 362082966 843653521 137654283 764867296 360471106 995454335 863583322 956549131 708469316 916354428 120584037 457373628 124538885 325567667 158233416 853376183 117270833 793964268 721869694 870798514 722900093 989461637 375126489 399424882 588616804 824010879 595634088 628740944 418733379 780386903 774773130 918022200 944479422 954115015 461370841 818439600 772681216 918290316 375706468 534029321 892653414 987858771 604094203 960737238 874576314 891854491 637929501 706148159 20627396 479139951 115652115 690494046 557590262 645006465 611593697 782392302 486893128 893797501 874076784 933775493 619799678 882224607 863776335 962383161 12011130 37123304 186886457 606939599 930743681 984409237 254756777 787402096 840501292 984107559 136828872 146019843 358950071 611203078 7762740 461562966 594624140 868464316 571249137 937168415 576394250 585691096 322446162 429143571 646972697 744761087 577220380 796701232 243226717 414288139 331991163 531757145 835970620 928813770 752991549 982985095 46473902 852214954 992621229 993956854 574003262 607295153 552552006 886053836 854918673 922218366 465985517 641405364 576511380 681628180 185148394 994534405 62416486 840626437 515384663 658155863 792780965 915047880 375404508 648203521 126837119 342748621 401782469 923873802 69064334 175751711 499983447 581437212 405778825 732042677 948963543 979522773 774112362 803998950 606724403 671895561 262463150 675724678 37412642 972627638 220996201 754564063 49268336 668898196 155336457 483976100 227641668 974782030 61508263 486705450 377892483 512352248 622586331 751090372 967666160 977892601 625418991 862025303 497142963 995926125 56001656 312512316 790683793 888248890 484228628 790036149 247128917 269309130 159521797 503210635 245254139 301163226 397015959 859061764 865413061 921516056 447682260 791904061 793741819 902476184 500154914 614361767 182481231 657679913 255694410 750525249 210962424 217918881 405580780 864550572 175482485 841775380 831447523 951642863 245462759 714189210 705420188 781088823 84186034 717741846 168959417 944312634 282083630 534842162 122140352 269953578 449995428 878321627 284559895 983488722 112840304 841202081 563253765 889082972 601801530 608000035 848256440 971785545 984322258 984963252 908959367 980086853 711784216 952434262 210025574 497976668 691121285 917891782 223597713 246901266 451453007 820782613 500838296 868043730 653687052 676284609 609647404 770290808 320014628 407656922 835066564 913608870 890789027 959446784 148891468 759915059 829271719 835911580 63618274 911496896 272715357 273825281 505459978 804402050 636071521 969950471 195648520 714638958 568463928 614248371 415078942 634995418 326156590 493245080 990208252 999045026 669822229 839645448 601542584 675099730 515946011 608923424 449006483 528389735 794878265 963638812 399375649 448231301 418040292 609383497 218909840 567619604 510607536 753120367 822825855 984636461 24613854 226460422 740405239 787737925 123681057 737427749 553368484 629519424 740913032 834494383 99670781 212555029 298596100 504019913 106396582 897054759 266659344 964990896 703598098 738251214 314943741 978796457 424084133 650958984 28169687 184662964 925182710 959793853 584476973 827675702 931491632 934093557 955480135 972878425 346655097 369056765 883181732 920055981 961007829 963267900 291471714 946824725 365545450 975339834 871084128 997373138 754657501 927914033 810407882 814737251 227570138 522787150 196383118 929748422 594012460 923724136 316908921 653964145 336354625 484440610 773419807 873813807 734313905 998795803 545802439 547234255 29825684 445008488 688550719 866158687 872831711 962176998 185845542 616033678 994476547 994694052 784181982 939484834 670377264 751740223 878165649 909952902 865497507 965339631 232673628 511821604 211801591 304999852 350587253 578706399 409024094 884977471 115340622 966148182 966881285 989337889 712532882 807586128 543472292 991559138 661006090 968928161 171555289 243942288 233329780 501639540 865051809 991633619 888843742 963521254 286361838 346570927 179553683 697075039 915383873 940866377 417939595 531449569 994533987 999458071 823182206 892245941 68396546 125767081 336170824 561721724 839242470 887387217 150677041 268582305 830576028 863092470 642021207 841621057 785925398 985841425 734000464 777991479 968765022 976226051 779220416 878854483 854620337 993681539 310055031 310999775 470092730 508815596 242503010 881518585 707993567 910390627 589853394 596819838 921945396 946195317 789842838 903119573 677512225 813820551 485474237 706917030 593459032 852242714 327713754 431490088 858356523 925179786 980019241 987604378 996568237 997335924 256104564 846601560 704744640 971534352 998581672 999614409 52418819 729475744 823485408 907630282 841764113 871292187 423021176 976859450 91491147 565202604 129511053 967969881 317571197 853339163 451302276 578145035 618344188 667024617 870855321 984892785 277089140 970142640 705436112 715962269 940459266 947877659 988433460 992535501 823898660 966660188 551261400 670313132 507780286 995774683 209699086 527626891 80078605 924773068 56121310 515210720 328376233 427934947 494262462 534924884 899755499 950454876 209009269 547390751 805154993 987206065 164931523 214976759 571976768 670939646 535249826 571124806 369370119 510309833 227467029 805723839 153619247 844431556 241432369 621981786 614372188 698226091 210492200 914768236 691282130 811181530 589833658 759412549 321916530 663603003 238987418 965056522 417662131 984311392 94971075 762961707 945903360 961464754 743183551 855595466 818695145 912866502 412141915 777013296 951294148 967885241 562914108 599667389 863882484 965289297 159831441 695931749 890694599 957820660 482984383 631138899 778140444 780972664 878666979 956784972 369996838 965089067 266992280 281767866 105373681 625142547 533329037 786155738 444631536 534943133 578960955 646063420 67063638 666289981 670268639 848832304 582551937 997924062 126363411 582777214 327088300 961860778 444247985 625138828 272674567 627714281 974981184 984431928 172827810 252126373 395648801 418013097 987651673 994802198 295440404 906357738 504261320 899643485 892555370 931899427 703648499 990797767 665660842 999328415 367163916 399328139 690015942 890514478 601412036 997646419 67474575 621594733 697423521 716567551 638277171 931430039 529654163 859652498 386101793 885216253 313959841 387880679 475712705 912688219 770979971 974204842 422595752 503331710 444129145 761283730 601777668 687979890 478582765 926676204 799209546 970714876 801256670 933277198 605922005 934489349 103014556 287837560 88017057 459650032 734597261 812780765 832035550 972882661 242437121 495907238 354541676 978717085 415215770 447369382 360136734 972095833 969763933 984395691 922330941 927650608 715330811 875906811 159563783 840497443 66005431 159397916 582131341 670524896 129583389 493161285 423734665 551463709 765408787 839590976 205782847 339643479 142139499 958182350 698416906 935230706 733779241 806784615 451452807 513882807 89917810 127149529 363342320 459857921 391377158 721829633 588589746 871229438 213870580 840203750 181908393 901073178 346386850 870347812 103062401 353235709 214624746 462598080 334020324 545062419 945812810 976108279 820419129 844470065 323313759 965311790 2061224 17065970 840536518 967768603 926796039 954771332 32880012 367569997 706254871 741333815 973232961 987122610 629256547 760198093 711374366 996179910 505125259 884325220 456738053 979593777 990360959 999662394 632280947 884967632 412700428 449917931 211204553 777169809 686477905 775074393 859838996 878117004 466601309 745085749 128374735 226190579 687076039 820659106 171904670 437848863 319404455 536990704 851881969 890507774 670076051 907064867 649574402 737582940 612724247 665591623 678821100 784057155 822099375 939503432 46872600 890258128 427497531 491516474 212050831 694420260 518212823 647210155 208297429 601435951 321655098 617016431 869079961 969143497 407629207 722307713 964200009 975256405 528557214 744325950 490416186 593381585 911072046 929910918 598014075 745868758 68369371 570848247 300237929 729545173 751893019 927101075 394234606 796662501 532419022 560617956 179913762 544933568 481304276 687910086 874246831 974437447 46234015 243325704 703673029 973750205 930262150 963349422 186499329 851592951 440249454 477513528 675695402 904444184 538803697 719538320 183974992 787336356 896254835 996116918 41091132 640783100 882915844 967975404 668774355 976740669 186541615 517143957 88308176 164156903 334565749 919138535 737764750 977749967 882623413 998118304 346815620 501761263 871284470 977135592 926067110 926972277 109448066 856761611 97548275 367977799 618000156 694758079 477741645 955599856 384395653 871200184 151237225 899865115 613341294 658624121 786396340 928415222 321241484 934144183 271161554 474637492 741515667 897470718 114839526 229175332 409807953 999948012 896085699 949467567 586790592 707406949 274587550 802024324 990399562 990665345 442740627 841027682 532091004 876989413 141283194 691281289 938635066 969020273 149766759 161113804 59452802 842122689 850459361 940951021 93440804 983031890 849717811 986146497 306691040 336395612 49640546 781497582 194255665 833805098 963886822 968184117 578658928 847105385 64409648 449915357 887797019 933702868 470395392 941076944 649170198 765917713 734678378 774776598 659515466 876141894 741663718 764836671 156560595 801299344 583700362 885252356 884183828 987828202 891980797 975551304 312971172 405607502 268083811 464397710 680945580 996490342 910572019 936137455 968776762 975642754 637574846 915188328 561459978 660313572 988135932 995420126 270202784 430340098 540489022 755570370 457565281 689771764 3844833 292971113 485304533 848936099 118369622 538902847 632275333 727409082 444153861 601153358 282397336 932224127 569072511 856195624 226069328 901625891 928546909 974445749 378131646 401968965 280329312 734782953 442246407 768056380 951295738 998267901 72227165 727958900 332256418 365920698 135293120 487475324 367445388 510653638 235091369 367183985 48773562 418398308 384351407 711730948 906991143 973512286 839522956 875132353 746777686 880636799 22185779 821349084 80808424 966924137 753188715 872042852 943270559 983776002 404566593 799441992 209805727 508185894 87323705 737812378 529895913 903573831 319827353 460611728 742615474 773548977 291233258 786172394 278416154 474142186 297259532 695218092 620521045 834183631 294586105 728349345 52351473 52413917 907293146 980835857 845014678 983255136 95303832 622102679 886716420 897916092 222938954 513266920 733154350 774390865 462097625 483375602 324315249 410515957 892862309 924057306 551283990 948411626 841960581 987462290 794246042 912174849 306370876 696515086 111050249 762667445 352851655 461917105 227355988 407786131 582791450 959940446 647231496 862231967 986008185 997906915 377760528 485669427 923458169 925245026 86062514 370714790 958654963 988753829 982612137 983309143 121806322 288534423 813367566 845815068 444132327 514170730 37238645 767378988 464062387 576262774 405850210 999506143 909912456 943913711 803356119 844277269 601482149 820060979 131405065 544196599 252296073 407930691 321899535 546261687 391228974 579160742 657133442 846751047 940458642 946328854 104202398 876025298 934234525 945088299 194795227 757284611 79754176 419191091 829542350 956916947 153226591 347626897 6483994 879533157 452828936 923137106 665124963 702301404 947619470 950520929 552690590 569665169 624401714 896385872 421219074 941412168 301082639 946450476 530309148 992180187 509076967 890636585 319889896 705368327 150812513 673273770 843931103 887012653 664411945 935011911 759662780 796173137 911174387 985220159 214396993 511700094 595895625 663208857 718636188 933856997 20881549 44996261 594021805 660129224 914627401 964489394 535080280 572866402 725184072 841388722 273779060 275705437 541196768 604004978 560119187 890503610 418181589 963791805 314619842 488404984 538086291 907969253 950952428 952679126 29695530 279311068 1092908 21055154 581502053 920207131 731656471 907261542 241500255 741662920 235453852 743668704 935930542 948838290 960939319 995582158 280790414 974184057 91201094 552711905 379302439 759895315 326978749 903813135 192960732 280949793 670533408 688857583 472123960 822833768 272027214 505030717 236696186 283661036 277917408 904270785 332881550 404372449 620295583 840541534 570095432 839573021 901029219 987348011 417989615 798379367 352104362 649514962 394742534 449130162 343227181 904216627 286724653 964848886 190816013 902646516 496292375 724642920 846440830 877858196 441227939 846634344 44197215 380848379 33187770 536576597 434352588 549022678 717485775 861981074 313108603 555772816 894165547 946958637 47456539 602768122 153786530 859542306 239233104 708616098 736411115 872088361 897227547 929533827 367424416 373235413 760976165 886276421 162971787 527850514 587135676 744941549 491790704 638085422 588829615 703390852 310632131 967768384 220848852 956608234 662001067 665528652 978712041 990524252 346867445 375296130 26601612 544394795 390019937 757594419 517498565 553824170 63396042 946482425 981595776 981710767 765251396 938055888 422688456 758951940 203577835 295309145 373326767 946352117 893872890 897016625 212265645 735629448 922108297 972257249 69668095 465964088 504948460 920377311 843590107 984895437 279003594 848720234 821295091 908736365 240606719 294603181 349843404 906656901 157728127 834035110 966721485 983124462 239035672 973182727 308694330 839131411 137006863 379093198 491295127 774252675 626463597 966700754 385485308 598156577 968198802 971162358 682740928 995321732 637886523 855362936 919072450 941710274 697525026 829162912 330832783 792628120 677212 33328298 634943574 765632260 759103041 926905509 446198998 753449447 832429758 858991954 249727335 512825708 388208519 634064407 463454907 896631030 163451332 252368233 662071835 814627905 454280872 858558643 466968587 475151854 280748491 843428193 576623545 699188882 202700707 634432514 579216224 712342151 898144722 945085659 258612758 936184832 669859369 919049663 331074039 891547770 954748583 980178140 515398878 871765508 350928624 932822995 26970619 823778309 24208449 509898082 944180973 992689654 890367459 959439558 237037006 593763274 21015651 87123607 530162028 920625464 882890743 925632824 129859096 991585447 3455806 74796052 535814872 825021271 772110745 993155157 847288426 933348323 547495168 969645000 399094907 853612079 464946331 812138478 121380610 308991387 680784184 888982099 639722080 662162674 523339018 712980960 876265465 955375225 961471464 994029195 846413630 957273395 863582615 905866780 385359576 510190634 437940813 542681181 527551486 745065505 528439784 672301135 280976936 629707851 771101398 964339725 443491330 669517631 60860412 368143798 391708609 703881232 149829423 416054021 977681817 984434151 98420123 965283538 554460326 799358603 638709516 824330594 193403054 309370530 441609271 886885659 710638886 713751362 221457910 843470839 796556340 946335212 227884460 908488830 931242129 972170892 530843436 598163489 358968859 761593832 526269511 620317640 188964863 350025871 490282632 850873462 692220901 929421384 195998813 966246008 531412613 543622517 269193819 580263113 58673639 965511373 317902024 968455996 742027142 790965432 166578023 405495170 292417516 702257736 111165205 659219060 380805422 414958008 537671329 695507845 298350305 826071744 862021149 889352798 611664958 946278916 691684154 981217219 60875305 533063179 354047079 735098689 783868356 984979823 932285603 949972564 682545968 748455345 684649955 738612045 504101651 755554790 35918077 435647422 937574787 964139042 116930504 437658395 835930042 946393524 284374611 908227187 560109949 848363789 379906503 902539352 741766395 831252510 679593935 791723680 908716797 984671030 809305615 998465265 231261018 768504492 220743607 368020178 663724629 858589693 707781384 825503890 83868242 938570506 758557701 832961744 663322194 899626508 695395151 814189598 4010960 473082986 407870714 646130537 13701585 812863943 236222686 762003050 689117606 775128038 771038392 848439206 885845627 898115656 187276515 796370069 272962327 289698226 878926642 887556830 375989782 582007132 286570661 778748257 710165401 903089037 742059304 915032210 547416614 642963594 176447773 427568646 76571038 979825382 298078527 410649415 188965108 894583681 796971798 911917094 252951572 932898213 338918513 726626767 874327505 922238401 856287204 866381093 530339880 918806949 462717266 934403962 166911195 832233075 838265261 904082529 985752448 995633624 59945958 715751609 809864983 938678243 847880855 863958242 462033921 977288160 6470960 844922736 697128875 811370546 815674579 901948605 648482939 978059506 549421114 631922762 459414089 963519232 192452618 520017778 423127503 652556044 429954719 625694356 934406818 966788064 931352814 988326453 633379744 759395845 964887845 996244306 168111662 457117534 582780002 646894554 296914702 537766052 49682156 193026619 463280421 527072744 581523911 837254618 378692519 808465334 546433407 586593333 944983521 976459887 859529072 899125404 958799790 960680932 912654877 939095007 603520766 743543155 470947320 501214186 97529418 512861348 817381511 951518899 533798681 581419623 666730973 952847729 376183245 849789493 131468779 383784393 764760293 880362779 307785993 310295538 535247088 935539874 694066822 814335253 790652256 893745721 270954876 802180005 900036562 960396155 569309486 601056139 932281898 987746189 183809717 646153728 759265705 894237174 74572264 630002990 100632236 435127986 106775607 852677436 697012275 807117726 281552847 567943606 280899306 466774965 738769767 765384282 139936581 346778471 418237064 727114003 194288198 412822876 781553694 964325147 733203026 909012385 497498585 654824750 156516337 517471744 335340793 346505281 280626978 733091312 126523164 494350638 221516608 509197862 212003134 251381447 292996733 859373333 218269218 402733727 29195731 983823919 41271813 992899009 420971881 529121889 259705801 818679619 221610140 927115640 544337436 723588940 462068667 649407770 994877317 995549246 712459399 750802757 307925530 452932756 436143687 483083118 655042382 728417804 590384876 922561589 69160682 716628685 602902447 661710158 189068590 642872301 690898818 797788878 305605077 609045595 889022832 942779962 465211948 907130008 48059296 576345979 987632827 995749709 4207496 181171120 338114932 516864667 305880787 884642961 17655182 21457026 303474230 542707548 501549860 684746483 562937987 658893834 596778238 750916501 444383428 839576964 957935896 997342984 609504708 682845935 782364866 792854270 143547938 288862660 760085754 836925881 585812681 878394656 456581336 625952417 17830953 263743547 936801939 993611323 178865582 817210906 756171090 889129597 702955488 930268409 938349704 947864638 687831209 717068510 384617648 463132287 575609957 958351916 398979515 556066221 447874983 810539163 602815218 795195380 141596161 233754515 157015172 722359318 835588758 923495341 569348233 753179172 236531742 595507024 450994028 602534860 93651629 580168301 946941288 994074481 454323039 781554412 192084617 426519144 57982383 858811717 816305462 982717315 835965721 947269702 686597278 943610035 374263151 829732254 772655795 783358431 116088865 915228574 645308335 827361742 94270636 859103028 650081113 872435206 528324545 918614739 998472238 998616099 808678883 848613574 711391927 857734183 225254944 344983750 358662167 785089530 856210627 945632338 556806917 832710877 479416693 825094780 458595762 973620598 640008182 955824308 153126581 588803005 886767299 991600406 385857005 822183281 194312914 495811498 614424319 971614900 322669376 743584861 826907899 838988518 749293705 958260232 52933835 431761908 235867375 518333672 260234800 939486434 820149102 973276829 843937913 965324563 726817190 807969234 722779115 815601672 224515428 518776590 821897351 959086264 322774887 574247359 795665135 871535895 285931290 785198836 729078152 887758984 399544587 470125078 322415996 943633196 643237368 893406092 721116681 999720329 898974827 943002900 708291580 959666935 261057946 422847256 246043373 956626508 523319126 896562749 491832753 799139016 460803836 757258049 842777199 844852844 952480780 965737346 54842790 960256709 938361186 941395192 395689517 946480225 896525757 932493111 449387009 712418507 32840239 840632337 696885877 767770590 659605668 665485364 80222140 277793252 55905393 675305734 926733701 988625666 279856237 591629922 305375202 948345129 944022126 975137461 288063302 717906763 64838479 886118616 532940726 678895203 938713565 971114100 159697323 317736954 820649925 877566176 285913633 673702626 785929053 914120458 894018377 934472979 722885004 747287140 221236042 293559015 555283075 834081076 887112437 947620754 278998395 912463098 490514768 578105384 256948784 307755678 927486575 942109200 974857281 998179680 45455340 510678384 461106015 985152113 440621216 507637275 330136668 737485285 973177082 977796872 112033767 452595830 150039037 709733723 734092305 993511995 809654287 853495159 287824646 762504598 571360514 887077229 228314882 259864793 825011922 927263663 811869557 890540881 121192615 210000217 954325915 963444404 144287628 891324724 719316817 989233296 958671842 983383169 590450911 601491729 281253926 476019195 84419808 219515667 329415840 517901289 394676066 437656593 182071746 276220554 133512430 290999602 277713051 693972403 65073323 179236529 375512812 644698316 410553948 577691538 815065571 840783564 913350494 958684079 976261537 979447846 976182687 977714595 63863354 480296511 397938325 713807393 779350457 783933568 422636549 905150101 632983299 885311700 220416801 686450657 808803269 817477721 307840906 834528360 207469968 629223360 695764968 846873926 523114364 580574330 868008582 935439247 800323662 864952225 312250706 575634738 212953946 620481898 989115060 994623347 167383979 932899843 466914655 987602747 935152400 987394794 885854305 963474928 19326635 23662896 414373102 628161693 270599394 414916309 480101983 840284107 925179369 950087291 829992587 910238098 386518168 957561643 489861145 715413034 873927485 987857035 629233441 707762073 642708770 816202437 56509925 546835475 72282810 110326993 405774656 532255828 563806357 786774760 992262751 992330465 491357039 802133458 430847683 760839954 986670066 998369955 794829344 805334683 303156264 572963373 290011706 561926641 177603222 696546061 133576650 406027086 474760626 924410857 606150175 885992958 918055058 975422755 155206637 401779518 53521334 579557369 989445641 999816474 107570324 382635914 324913567 613754319 416420446 442313767 677517872 964605235 338336176 389690396 210275845 533427576 303047273 657960430 28626439 918698584 237303337 892938539 809196155 876618345 326153524 964215055 27958400 402455165 218697390 543823997 64601645 750593601 298342231 534287146 63846325 531896696 435707878 617937108 261060060 992414252 913175187 997190820 447911458 449840602 577314168 623152080 586286646 899989913 129276711 474811614 916709555 919425487 491269328 898687931 457252590 609259837 426556671 518817231 104011084 640971986 983518721 990920261 588174151 989327241 190405236 540118120 614959372 871008166 881091899 981976177 982827871 998993743 350349985 399439142 959754616 966485029 469634319 913156834 377505833 706497608 311651840 746397056 556049195 835146459 323375079 630268163 42085084 57816540 176466140 645162762 45436295 177108012 425185799 573344349 20346567 966355708 740677057 803996554 483479630 922050666 801170334 948718399 16696309 352230328 885769160 979735848 221229132 584298842 523819918 940308509 101080610 407626753 315701209 746902571 457280025 762717871 462067121 567900243 248472006 393012372 717699363 915714983 507190174 785110818 676412001 907680651 654700037 880700403 129976461 360697109 236236169 796734160 25456860 336980116 721887705 890646299 867996411 978123995 18750635 407963013 182404985 632411335 799383742 994829283 84314055 525345287 148119260 946807952 555544611 947063766 294204692 314898137 42773534 982170468 660154424 973895893 143391786 970337135 660609525 964488367 201478543 917513177 61430328 442542916 219603356 282024515 202134709 700590035 712328082 864718921 164043601 326724990 783111491 968403987 507941136 533749810 456360168 529779517 278807127 894903770 867863039 917196091 543923824 644947401 28523798 432818653 219830476 236803429 41115176 344212948 26435350 834072563 66430678 442433730 391180917 486429521 194628826 537418388 431924075 591256116 955916660 992690958 283884794 536841952 609083137 650187660 928505122 990610737 101476918 123479688 333722914 514042561 906454120 954486477 864965368 924055673 405850371 623990737 736805947 775743952 9527823 715441176 358132019 589354352 677256307 992414288 345821220 400660177 892053629 989322601 686500425 742383451 813427203 907736578 819097324 963570611 43602066 415525092 115384274 152852951 912985964 960439246 866107104 949986714 776978371 820555176 314924291 418093091 201198537 384277603 530990409 871374493 301530464 365872090 750103694 869770505 513346289 841219103 952297485 978209866 919801761 943495552 209093056 991954108 418073582 524074485 278198043 838864537 737863725 743479110 611687543 930368123 750216579 842003992 713645652 883806029 358900564 463207739 440618343 773859008 668927750 958729908 190206135 902965453 447761806 667826361 979162666 982999806 95747142 828363647 327737124 792798928 957914321 962226524 562370328 942833228 694005983 899315480 233767065 420001878 215140519 764486053 27043162 122610686 959102978 981190381 571142444 802551223 45202673 498933053 812012371 871489613 441069023 917036948 286520987 481126098 81476743 130251016 964056970 980369309 73446192 840946165 205907090 563835116 216201970 852805274 585024314 805361338 471028648 856136127 232818239 879571640 168048692 787807359 751544418 942822009 477252048 798386219 803378416 884034105 683399065 873407606 627082221 884192612 464149630 793412198 755144140 897891380 804879950 957958087 761611157 984432658 511622741 879622680 361200033 971257007 727432458 818157164 74792481 263075958 492901421 668517645 898108947 975896993 260205767 362705789 749959257 782799179 711632768 904551923 590676621 724164788 445009432 875163018 476971187 935298547 820993469 910635595 810713284 931618397 891963032 930851030 270226786 726247844 958241821 962724788 780374989 868669727 422694276 537292265 492353127 569477229 141164918 964266624 744462477 879177956 619111619 887592094 729339742 738964799 524942685 569606645 236994471 539143525 972297462 994966402 361129231 779845026 580875501 877883801 85812112 181216749 903055005 907244062 488336934 892553213 869037705 880438585 786506078 799908900 386309485 899420009 344328212 886395968 613318079 743482991 490466989 499160858 255264535 632239039 678804219 779673940 234002903 745978029 954767179 982271905 339631745 877306200 533844901 797227782 3062084 4995450 485868440 892096375 270567666 697689564 718641649 951653018 659125645 843570147 794725377 911061131 656780284 758384946 10977374 349983008 278521313 683933791 168260131 811704931 201342760 370662568 189527482 866807237 274078704 348671596 635567522 850304503 518078610 867704918 826741407 926038495 625020200 979317886 968705680 969549665 386240558 394170453 901145610 973985988 173733205 493444500 115213709 438469099 731948428 954397096 719667099 847201464 513910087 515812230 16174937 665161434 506205682 758564765 909424511 927794735 955395706 975850965 129089503 321965524 431645908 615990751 201479487 265170873 974407731 990685572 538489620 891402867 707483737 816244499 901833763 910409897 315307331 912227327 82932440 268485085 560601285 863048216 644301556 867467774 224929849 882004509 829004314 987370615 710075686 941074358 926749293 934992295 47618487 361530021 482227726 624236242 4992935 805552516 236339515 974518913 995375106 996566218 326907847 471849895 556310747 595851768 574116213 595219305 65785758 154573501 44663801 273890320 44314646 888020298 685570724 808398109 985934817 986728354 37925485 910431527 428232665 845828404 501587610 798554594 917047014 922596873 136674429 156709760 390114637 781913952 137316730 875752859 306090663 423812989 962789288 968031473 907719254 956796668 672588701 812250424 376639895 683993899 358171215 432419523 401876783 792771442 924539035 934914259 258473093 683379846 305645089 784343070 461466417 495554492 31324613 374614129 780279005 993719878 646880323 920724183 585412874 632443771 252545081 752111774 736501626 932525138 251533110 297865042 722795553 772419719 161352201 808227160 580068056 873767462 889314746 910199494 746128625 816352845 487361049 663860932 392924854 532527706 750413178 992889841 874179300 983396688 399040637 418726860 763325812 911103661 978861272 991127326 78051129 415254932 459824424 861596306 996582653 999367675 810703150 884854793 368526309 603879452 756445442 813222578 278126660 918110563 642195510 700443106 665681416 855126562 4969383 650242106 590123878 691741805 425335175 914247580 894223922 902774584 560256615 779332565 763778549 914568343 124263164 514494545 829475025 919320813 446321169 514212115 948975283 963830113 545933173 687605280 710977215 742214702 565807955 951215809 800815358 930396124 364619494 573038737 807525938 954037333 731832729 873274198 655286493 813432198 985331014 987226820 889014170 933217657 191269942 199424343 68679740 398322501 831946405 897739000 527994900 667340943 255090825 458911216 541661803 906496398 299620635 860312800 640152191 702668615 882420121 944019062 697130918 788885677 400302144 780253838 129429211 997824736 983972612 989450351 970106309 983356718 791948416 897851286 20045434 215680173 684870898 849603139 333619632 879129049 757023123 800013297 717990849 941415999 384392723 723377536 414698959 848437411 69836460 423378997 999296104 999577372 491481746 754690411 327240352 663790698 246410122 791951242 725935403 893662661 574339588 829840382 563001773 712784910 916115798 972103589 830754912 847791571 567575324 683244642 458334565 559947704 353100131 855943452 408958671 487895011 755160755 974490126 615047638 829665159 730598423 748748613 900934858 981377889 658014112 689737229 295578006 763551829 282052838 745968437 811126763 971584893 516609677 815592646 321056155 632261728 618422552 816535478 446137604 737400840 835887475 847975871 215894714 765553704 50561919 981084529 880522905 976942624 49539931 758114565 317457554 643984624 444088193 949026684 982109873 995455899 841703692 890536866 560375132 722315628 335553687 570546300 229873997 618753452 800519199 983081605 642962523 999316884 614823634 992978815 403909682 515394445 357136188 832334000 58474070 472274485 489149881 532279383 803819439 878105997 984725318 999365215 797684403 824960426 237055216 525518310 575238429 986819122 353046609 490873708 525293495 829576144 461239552 721214337 589080563 867553261 908445124 909569767 749927445 917398234 317399282 578559246 58113081 75094665 599460915 699626760 12690009 547640842 272414411 933908177 400045230 484607691 636836705 721015406 940020507 967364397 10716404 174320223 915006025 930908557 733159731 765278300 807238694 981647658 785315378 964708695 926082984 988624052 284150528 406748337 366753005 500911244 787161919 897725058 929068694 957941576 560347532 567858200 73592956 611567749 407471285 808476655 962137792 980775424 799493495 928788293 309207521 393307832 894696425 978881188 588684338 930375994 946014466 973935031 762373189 904238172 315820292 316184369 288581764 883350845 781170910 953465341 295066864 821172831 264171543 276950851 699776845 752716485 169730866 203122311 362099820 376898871 975303874 991880023 506405358 895716166 308020301 470263044 741273021 758864830 195178762 336994641 940113936 990190170 546099640 810218394 917059312 919877542 157927211 367465267 878255952 925300136 550960411 794989949 842275937 868524762 339610518 912542374 609783836 635062137 615674131 978257448 733550884 957710002 468444415 757001678 157935437 868372417 277055057 770508861 66330804 794722455 555932204 601762382 583715248 969265110 628125462 974853219 296195444 557622532 663790141 766956573 872818654 875521579 738032979 853949515 489102917 926345979 84787109 656796870 655543905 725474946 172802175 544244169 865654157 914646208 975776549 975839708 779173718 992045861 172769165 282309370 336526724 636043186 760762340 956569104 551920515 627297404 285273265 559080225 568889424 815470718 896781548 981763605 767750584 809001383 877452271 902139087 369051726 538225158 629810445 706645855 649386534 714277007 340471847 864107576 342416388 559071783 197966915 255983271 764575593 841344298 481664573 978042220 785495556 958046360 149210106 351490597 772881753 849502383 781316559 832880361 789044560 901259116 612199117 613991858 753826659 783499491 685059326 750706298 716609274 915196228 933458645 975075197 447130776 906896600 305669284 490377013 96663826 939955589 564092024 666677233 330291932 959561047 803547945 932256033 496628611 858522437 698133437 885781983 93713681 941842297 330107568 654337517 915336594 949069716 330359323 677428197 169437190 223230511 80233062 856339341 47052801 653973571 621344606 778351859 428820438 791400326 943471946 991357842 234873957 304604565 646104033 881853841 950205669 970945606 529643207 697850457 312071334 898053043 188916131 960404847 127185223 793781071 62370583 637867550 474309223 539928091 284179639 978282492 967431904 987480811 449834130 965534699 440688296 910972820 510051743 640440535 800105872 965706537 444161982 457923419 985739069 989277708 671260164 911877877 39189922 541745087 27468506 748696914 351944323 356124875 145261259 843962683 772254051 782231106 862103222 938208932 374231589 773379687 403515970 552377197 134084531 474637008 112998489 379257902 735384112 947081263 624703154 907973371 819594529 957268393 633859329 720753049 81578442 580845596 94697820 489704722 973587365 984120155 350730707 995887188 648671497 725878029 931230709 950293751 762044968 889797494 781741934 906657240 264125618 505388186 25099681 981217116 450507535 969058139 219504321 677379296 715935839 883004441 623938763 682856051 686256989 826587195 537317023 698232571 615830841 988270195 106426374 463155690 404938575 978653879 447889590 638029790 197892533 332452911 700020526 780784846 397940806 907304794 204192036 899160685 333288127 338809257 333311848 777307165 658281036 767830687 946324228 956316176 164665394 727380052 407997947 753552123 748221231 804004868 702441895 934554681 142834889 854254353 918570736 945460437 120806404 401634021 410805903 732011210 465001152 626631913 464154455 590927030 333378339 552332361 104272146 836030873 680990345 718804715 182449012 976605037 915746738 925131818 226873949 965064877 189760260 801012748 387222998 907359250 681038566 856019842 734994975 869979149 162542086 750784990 519565570 986652817 188999838 844040852 278123090 531376508 447821473 648094853 838854129 942851985 99110018 511429170 888782021 900944212 314245532 827107531 360058487 420472228 289172977 881852276 56207233 467494225 160167209 320107113 856880408 953939270 189582292 660193861 926016939 938485598 590653531 806639256 171882915 329430603 995678505 998221439 72441960 241847264 23670646 413808043 580742762 985077074 922635243 951276629 584652379 856468842 526312640 937174462 908407699 927405150 56769340 370710997 446817986 872871902 201200991 475939673 980353947 985441856 357732232 417635354 847721617 948429566 743729677 937246874 986099849 988086659 305895680 735474720 442889755 503920400 644428621 748934305 224661459 448976841 271090569 833675910 433127067 555820935 40184582 491704149 488942359 937555469 738338560 874107022 930263568 939118995 734799068 822710468 525761964 772220872 748650999 864436191 783375086 821526366 581408716 775216052 978008907 985145046 710467770 995402046 385476885 983066513 531656097 848591918 126943636 616396192 276296002 513063888 113232356 955906879 754290694 980230416 562116944 575724023 721143105 944715017 1817367 493470984 78763086 259484967 133164380 729654125 69225865 146658327 994232764 997015156 849190189 985101097 529207101 957135475 743771941 798477380 557360259 900177696 478605836 557355853 5193638 5849047 686256429 830021799 470527515 752832013 998813719 999304131 78246313 923655604 211105548 998546045 756784237 850959182 151287614 531522483 602934820 883704639 218902628 229818759 904776913 976835705 721993371 783244890 168858331 345147037 286415579 977440258 265995784 984167179 151272885 168609700 534587021 733200268 509209908 620951895 470568782 596159886 30764526 363167953 10016117 447686448 94452048 205340912 565190361 683529432 179192626 294363197 57609993 793982619 215769648 703945218 399781518 881371667 412273078 957210532 449563701 768198650 72840148 305627999 420830048 518503816 945406247 955801950 995704793 999168734 970594180 981102500 625236693 933082875 336285668 746014925 300168204 471525378 432117167 508368876 466736369 772786514 578018037 812665806 613708853 674601318 114299046 350761149 128963675 946600120 360474515 531969526 260791462 876376055 399654192 935353723 106049890 744608958 760547680 813641737 550412187 640659225 631260957 794622745 855524104 894823635 361979507 831629835 948968682 983272523 96618597 671292066 520148558 711282341 721465334 920620177 385128817 787022844 656299133 766153441 342940285 751527535 398091153 989099859 712692471 819645603 153249064 921393578 170559395 338478080 222057772 622720344 883978818 992988286 917325810 973144646 328556197 836530619 212086373 555652468 193986524 535140857 952010650 961854275 927789201 987896800 727626706 876796222 597594217 660438512 249465670 675642585 271742624 539728056 224846774 850555093 506247274 695424402 464227600 586122654 749772667 892980882 980030233 992302267 273198322 876960986 179993853 365347042 791588460 813851966 453061696 487431801 246332404 740691125 96472874 609871683 499820039 883639727 72007590 880557847 195081296 664337448 766650443 897924832 243582753 657870135 139404909 194506486 51736217 616904528 365857626 613213263 375475770 843397921 442572353 709926018 125871276 865935193 693703464 802007957 399986347 998492109 897266586 960123259 794226695 924873930 291267203 635058189 812386748 841399750 853724468 906967225 533495366 642711151 429861197 579930045 497407077 528669300 906456761 946677954 845122865 981767546 243204566 988016443 843701768 905817504 941106228 950384644 757464428 919399375 473246380 862014775 779901312 889346758 734939265 745102379 851006530 899385332 302446138 997680187 269201150 588490099 94827146 902850179 874193388 914744882 292612822 893296231 647376052 747748649 207264816 784268600 459620077 929980573 598029719 961162196 153102234 613784246 433955781 760716821 64789940 332006866 362747183 488715969 270896354 439591387 114870608 195225790 64177795 991453103 487036471 793039389 550615853 868364133 674147877 783009330 986013099 991030818 659345373 883619063 205889781 992153821 996616215 997989968 509984065 593699405 43087883 407288548 612972806 966719574 370180145 417617304 894600686 968366487 916751062 996701436 557527887 900641766 122177715 543784784 211075768 856639298 8394877 394844672 711582843 844687508 578610887 948138397 526289325 765889221 961819934 984907641 858283195 864747072 855686077 915965603 398659019 604017222 267544992 709561398 44861385 772740332 987323756 991267475 488106458 737115500 38379295 404100410 977631735 989483555 243841764 301295100 837800657 857912503 911976397 971622835 450550588 718197524 270023434 494311807 994532846 997237245 759012938 828343150 572601488 595742680 714144764 722695198 220975750 433943170 503886574 756761836 362747528 457403733 147998594 561719092 58411185 552810194 727221137 752681132 298035785 990813275 854845546 871429279 996681847 997705187 209342428 476441196 229050585 998887997 298006229 969278611 200950979 231005418 91260162 347829924 43613125 447016958 555249592 724633645 768404244 793734173 328171338 890426351 984853300 999017758 846038226 960263713 81784106 747525245 352212083 432058485 789669203 989152739 332312328 542769034 16801894 264242322 214569626 228596079 971575507 997476448 137116705 706140814 479459005 912273023 733683916 901883077 113272710 315105853 486723679 615296120 289170922 646112406 718404646 723722313 732730034 832256411 782618448 798799408 102986709 429917293 179068130 646961718 55157831 399103481 85775303 199873794 459905256 566876752 634626240 843512687 942456701 989393177 118207863 706653659 64707690 965733385 555344967 968938235 519008433 967158275 27936529 39933347 755038264 901244039 247392194 273724963 98176235 522946413 980278706 998324510 355280521 836175785 263770559 549383727 726382600 767525875 187930906 353336869 821288279 842602392 517890498 563384645 179447221 354882308 372432999 491165492 890955534 921409191 828857822 958219263 51448174 743727400 5736867 190000598 288813258 615169061 439279132 518971821 764493306 880847015 452738033 616146774 980968334 989773043 357379114 581002833 867691856 933696811 262471780 322118867 599411007 923991649 717535705 907313722 388526751 993430411 941217384 982650531 798862706 829722728 170698738 623341811 809975622 887776958 9035596 62343875 445218997 493246271 467435057 664473327 43263147 891709724 888123896 975629935 346485790 543946106 659457040 904828218 921259188 978053902 279357209 977072589 911356594 949210935 432416182 632641822 867741966 935621246 912803386 939810833 345867699 521793453 971284939 986763410 229128229 247785046 470212527 736803496 404226976 788392184 125850386 632947969 822993371 932455596 123790414 723340935 509085577 974675094 213266460 247811326 834422300 865061798 557734903 784277703 975611380 983677169 193596139 883417420 475387924 835554272 39143721 238509067 260648573 671062549 167998687 563066617 598478379 876564006 111859299 331197291 356685859 705472982 874368701 932607703 203268159 735311576 792037837 855223349 808951892 849225829 312648227 913485434 615349768 945210644 541725292 843019440 325093883 811963840 956780618 979364354 952880812 992590411 867039738 953735085 558788166 941650199 310802458 904126928 655598286 947974134 885804887 908241738 318130743 329739139 99522870 220890797 332051227 917931954 986437368 991528868 850885198 950578414 796978862 839926222 20981923 715296941 844589540 874181610 10694441 881180107 518815917 867615073 959828976 963140638 583562685 761735366 699302671 798216490 392168581 588519430 489984751 867388995 4768838 601040513 789260658 935359464 932924187 989689727 286340671 585975890 394502584 524403951 906500725 972330184 283120770 380039275 466047925 726973795 182353386 945488682 578988060 714162446 104964087 259079309 558687270 830187426 81060735 764777157 621723237 813010454 861236192 912688625 424216092 974784783 877490751 960155563 978998318 984069948 257496111 860861414 861345435 893985276 622698042 622705406 814968255 848142293 552272567 739206500 164402684 707091544 599438194 897142153 948329454 999890692 280957900 803570199 470091340 892997555 197947732 552252223 990211053 993566303 377163802 713848981 782813426 929071217 248494959 776163926 858525966 999209508 104296062 958757233 555661944 772714307 70719305 918029703 315501532 509830113 616254853 944106182 39935552 681420720 570875818 891355367 669335268 880871102 2629910 792318424 25012219 782101927 299176340 731265852 610514545 744940161 786612535 850147402 542923236 706627440 365437723 767158153 470582109 618011111 178647264 721274472 831771389 894853409 723011243 955860814 824730232 963565927 973089444 975605284 66787267 265731439 751665168 932424929 426350184 912443905 10367522 408939447 405210748 995477585 220587230 263220082 720344845 997565697 193031455 531774155 200192015 374592870 253453865 411048118 608261547 674086185 728818991 901369948 531091413 546219642 484107519 548870682 732512709 870578015 373638588 418578387 857476219 921198481 918426694 974467360 232883255 770991254 934691812 956610763 56679488 388109091 321696587 377147487 988449867 996153706 650971457 765867143 834672195 944574970 603704363 619207800 112080956 982703037 989978303 994963826 124377431 291676506 753832373 836206146 822902128 982152565 791415818 985211332 849780096 941134473 15898203 381215764 388801780 980284453 764556697 898818833 599464379 822121222 350243238 526257591 766073362 821507760 415700956 629318122 982831040 994960979 996082325 996410150 782089527 879004247 396424233 497329514 342730863 642090168 973761452 998302156 562451851 943062792 243191660 981254270 444840456 601590704 141933622 566566409 723722632 848199930 984822934 987771220 855838860 892351665 826310036 949609680 52257258 860536989 248117532 977512068 552283908 948033430 604724826 973179164 826323251 831792908 119145127 686890557 606252756 838036869 758105323 790743125 666264211 938589775 411608562 790137458 748398656 765781045 576972374 824773203 476044856 846224725 738482425 879983319 748259080 810293042 930937329 979569121 850873019 859580100 561442773 573617555 854025963 883702940 949402907 956879314 160839154 849249776 97563543 838868527 562426 706776797 669083438 707465186 632041789 725326854 868718346 870290737 713401483 911655039 689085809 994520796 795195387 855722633 439255665 904996678 702212574 965501490 92277755 543389641 297278239 487326692 609726549 694882103 293294155 923270967 225743649 289812968 638656717 736732992 219413018 431532472 72904838 155636044 48682473 454745301 854209934 961844055 913637546 994664712 430317041 561360068 888463004 895805145 174534418 785517641 139145121 410286985 529241478 880237773 895139603 907055083 560531493 735363951 544708064 910493743 21553861 391179594 163818661 426972495 581451737 955443423 544746400 926717568 596795389 951310590 925601104 958205203 248636105 574730653 750547332 768979554 98902049 308158489 775140059 801823530 288215200 852625667 491402735 729169927 329981770 790388662 566395441 873258763 122897691 826723452 502958173 644871477 819051532 960942529 439545792 934617786 670935656 696950745 682742657 861996795 362715087 623633126 175291655 412083683 761041677 963081145 91386318 782167620 214071285 676512323 567497653 738260889 664321396 951038232 290292 114828553 673162395 699981706 472390448 799784173 495073704 698482453 354240826 999561097 106986889 585412649 213788363 676712402 91475189 294552797 514309392 814581161 178474569 358312022 850025101 899285203 211029497 881994658 536894124 841834193 516070959 689387997 312353737 650650338 670938726 918282857 341316098 606252124 760778608 814764462 567291690 796209234 27161612 537191863 157316135 473734758 615695425 699719666 966696875 967007433 197635010 405761161 861666604 871954949 871148762 937245099 539367646 776859684 333002597 817129293 755317201 895592847 191276250 223568588 256503600 719985953 911074889 965122079 596477055 670183514 582449994 601731747 333662034 350690071 866621399 882407384 779496932 862279499 407269217 580132412 982935481 991839996 980733238 986587598 837084981 842567669 423610601 424440598 720617477 722572947 667956970 722444426 507245892 894063484 823833044 964021031 372248597 925025316 94743003 200450786 943740916 988497646 586522215 833060554 345996933 774542476 25700576 955924179 967879504 977036849 481648073 924601768 113957234 361040221 895473008 992089391 187445970 436478291 903096390 919448038 472969407 716654183 689529413 970685939 640664887 722274502 965253069 982321756 336651666 975972675 808591327 916169189 327748196 469201430 319745286 607337005 690046483 770087927 465122368 566776738 219788976 928240266 647531619 744058846 781469149 907256216 812910606 971044798 102561391 166282896 561430916 821357821 381613889 451111288 86385690 191750826 643118426 979289699 546901992 639771712 271368872 861952714 853616711 948272208 312054384 660267378 184317959 526384936 733092034 914079898 267120268 335498585 706731986 816060597 260176668 842116539 572795621 683736337 132468442 236072810 638573957 899678561 892817088 990218101 151216270 195544737 726891540 735451070 73721763 658304793 446318079 865196655 562912385 721897925 976657214 984309105 43240064 573255112 82897943 394725194 479672764 838143742 503846092 799058390 87233763 596514160 965868367 999690644 709050316 953386230 127254849 966551979 165408301 835279191 721031259 853060403 519990005 706762275 546863139 634538676 505725757 906747313 33776149 803769756 445133898 586912513 304014674 900474054 432792860 690771213 907499093 933817263 949054562 998109820 889047440 913114461 481265948 699629804 583266504 800933019 632640302 787795996 511204004 634316548 320360630 796207975 780843450 864450571 849403681 968451629 635482324 653379274 377200906 416742268 733225344 734109966 932893815 971562840 430358274 918902074 772930504 988491086 469684345 597743880 608841893 746271245 873298450 895386628 356996235 816935593 922311563 975225942 879533304 963600565 764053307 884399812 645034093 952690950 322515397 989175039 972071208 986204149 12989006 576885575 651097736 966860589 938922364 984328919 520100757 808633585 731937582 840422507 23634039 199143365 748458115 978806527 826512208 929329441 379203743 648744085 483580146 553875371 332849811 474566700 987738645 995549603 393820728 660904254 260437897 375151358 71931334 119754958 597797793 873413316 364596538 913018865 31133501 664486635 511144409 727908488 506945667 532809920 174854145 302589408 894920036 951437771 526282698 759047226 587419649 746868593 461863234 623484907 417266177 761808204 63601069 792552455 926243710 935539405 343966588 413361051 34706645 112332792 340856708 880727031 502363804 783956705 332994826 843915599 610224229 639374255 247766418 611418678 868268580 910716187 559596270 902168244 416982913 672702459 341653568 601905073 688384785 911755044 295816863 312336784 971552053 974157517 123932325 597063623 848321725 886308621 125854158 246258173 530712949 813894996 622815017 789339923 872404833 927219802 863275838 965537848 614156766 897748068 725695415 727840645 794766465 940988780 911576659 960653542 134829770 422913620 713512955 769694894 758583037 877553127 232784397 792284392 656190606 757385275 106163839 470420755 160522353 499925688 76150323 469006125 809165687 848857443 853027887 966192930 984980974 986392086 470910074 812594447 546530420 811075826 26808038 233333703 994532196 996729603 925650289 988279423 321233097 711682639 690116962 837232990 536601568 816429990 998680597 999255034 951838187 976639735 279434821 906295015 423646926 566639278 190004156 193514063 874556431 978558032 403744297 520674873 799212542 834051787 638710610 851819992 529686141 797255092 416181329 588723280 218036369 241302777 393193866 503557452 476531707 829776171 908589970 947028248 451813735 948172367 224370015 842269605 366262428 756774809 581680326 619868917 95478292 592408738 519573031 755095357 554292182 981966660 445961193 815478825 74274915 958391071 114298695 874552212 248467677 800340284 895458391 962919449 915951541 916404845 660082145 999170907 294653376 364100080 260875900 604439640 971785008 995163304 799147701 848972896 525247576 748328188 195481101 765731811 602476151 998250365 426001224 796732384 989818773 993990258 649565823 682582487 119228101 413057050 119898940 230263228 866222623 969367845 979309929 984454052 53742409 729171590 497814993 870024311 2262785 85894166 716155523 724901840 764437789 981440482 277180989 407663480 73476818 379090837 99347995 554040211 555435171 652331176 71907175 671144504 319221596 985620273 754189977 775017554 198016901 353247657 955070258 974824787 545223468 650140948 491509849 769451445 8082509 59563810 637493644 997716078 813378469 977115697 600284475 764104379 884582779 975712573 374396655 738429738 148554952 894761938 100933067 174738392 993977886 996113344 847563705 913412426 469369337 819205343 751510174 803735971 159071749 238203226 453341875 817425116 728854191 767687053 22402616 331238919 442961433 584867572 205011917 651746006 293920821 981270093 377072632 973739350 312706567 802744467 144744938 596931299 973291619 985900694 821589087 872066335 124297601 329917213 552273147 772176501 358377549 734335828 376489526 680275872 806151356 986670765 205091811 507973836 681609631 990465751 392532045 864136741 868042792 892720107 783867820 957117760 361775114 925641184 701620754 740323915 918941020 994014646 126314811 973144154 833488599 855010774 23354299 855210717 262909192 411684213 283678322 920475877 612259932 933095684 510942838 602941469 242039004 829300742 416745336 755210874 625107175 722345716 380834698 564940330 147201256 349325352 215930047 522782959 962869301 995069402 947441488 990291084 567903743 801814024 791581613 848658568 217258403 918455791 256025712 933975119 815850162 990322988 443560444 604068078 535670524 695146723 296830846 478723233 872737953 875072061 221853017 336335501 450817717 540770785 799042140 929311776 300967085 641275987 257532494 610181912 654792969 711492651 263000285 382165309 724370269 996171880 697068713 910950537 829261417 953329607 426961890 825255507 21819610 433467769 349299946 866369934 10245054 590344281 680569328 704092134 829858605 966064886 691608667 943243311 799406691 813602951 546078991 995114678 521552826 996725015 311117378 483273092 285272799 507175872 846152686 860664152 396020421 514519422 421992704 990555002 896157842 967396432 532630222 563136265 214540860 570093305 717983459 739057963 527091729 927532790 162178099 300701505 949796915 990553453 610225116 716003988 633204762 661541164 883909990 928307056 912788670 918091758 712365995 766801541 698355832 782686477 450047446 693647127 227703703 440777960 553342022 974827074 606300954 841705138 98283276 992547308 532005003 814727534 44259970 394265781 18343999 800624519 15565751 466551947 506230337 510167086 196075236 889511418 61208899 758602316 864337383 873288704 817281494 923142461 893579281 905754694 803834499 815229802 922053384 993157332 729551352 793855327 576305976 792532356 614099477 702157054 761600588 925655461 436967413 848106172 316289801 804668312 567459839 620368227 124787496 985582460 251376061 448262456 165876886 653231140 410415524 727994963 406379236 697821988 492502944 899941033 999133024 999966019 609327846 661235649 399835992 881476198 789669389 884407759 877726789 904499268 229079418 814799020 519938602 784695333 295845164 528963719 270145827 718719862 161365726 651222528 392514965 733181296 142938603 430796059 889052069 909503937 336507293 812823351 652409231 669573642 319882660 652781818 205345729 794870003 507494915 695828728 244898284 848476503 924614372 986349348 478876898 625382997 83977429 146143138 591373540 787072736 642284834 779236745 941297532 993546742 99231478 541432388 201027453 918382280 68640003 839917134 701509715 996758877 685616379 775854470 425368905 853792301 179927709 484494597 96876898 975534435 42321780 206067363 506523675 955362474 88719523 308970636 871934703 993205003 75556134 591824859 243576877 870094859 909761828 910508173 359969233 809030743 402562238 489777487 539251859 785789916 675041241 858788526 338661105 782622329 762397749 950665587 102248960 237427793 999821765 999920142 88286721 717116023 835915962 990183906 770004997 992711748 974099857 996817361 283591520 436658590 783398464 791010587 42491364 108794529 153173775 433430833 929728231 984394919 319512092 746908447 944931630 966379548 945022222 966176032 160719280 641233012 993178879 998447391 173661143 403768085 312361675 906055436 311928274 736311240 816611832 944373486 887973558 955589989 347812865 650205262 693066797 699218366 85599780 183631954 603423209 976165496 263851353 770712385 792045162 884958346 276019042 492932026 45711589 638224164 233896410 667410349 884674231 972831122 662055021 922203258 480551744 534878313 631128000 993638934 603168653 649049071 765172739 972228072 852171327 996690149 523603502 571270715 714762746 914874899 183243949 506692501 817735145 932506614 586620118 879910082 840270182 888935019 840723850 978873702 279206766 802497356 932888796 946588624 615026849 801403168 212883852 247778584 136102098 144107366 811892711 974858884 243053117 911731669 968535719 978287046 618990393 943532478 229914703 695295491 209509868 444162031 801696571 874109958 312885381 651311138 88559343 309095491 804419661 932831710 367532601 657846783 734382466 763317484 989453674 990284965 906761044 938477466 758935390 891256009 609373069 963409839 264975948 627695779 98665645 992849200 84237691 943537834 348501356 934345517 268671626 373506926 608499672 898994571 957078256 993703445 477013007 883415759 697426775 962108104 433435145 692622774 588831603 634740994 774598826 808937179 139971677 545384531 285894011 590071958 121500831 147682679 801022713 916624375 85233053 411368925 133871847 759641808 82465306 329114591 448469310 792438337 809209844 814850705 362369027 905837198 80774204 239113931 47997672 644448590 987364249 995850272 279036582 819382788 411841848 958215931 340666415 643871627 482372216 999330601 878721150 990273055 91227239 715893716 784719458 989398509 989058027 992978930 363485854 835385226 922564229 941338271 702660208 806980997 151992489 757245890 315536612 844272076 663457787 819624601 39962156 932721700 390874110 645479123 8588700 597704412 786389495 821346383 894336065 956748417 403796193 870355071 67468627 895153933 697572967 973307266 67290431 911934020 361577050 964682773 270803077 679565687 209004132 401968671 161555021 963719949 425099475 951882850 121374646 846197691 145506737 466385927 504170966 784955663 695903075 907908612 28025421 653510700 119812238 433652259 639300537 674984173 413007941 825429225 435600211 834668999 662229628 976554387 420372804 781008505 926753740 990796284 139272259 674324908 30839214 547200337 190600862 296410555 964726150 978247773 346864779 603522059 346484055 475143396 129183343 538689730 788078287 903513440 36654884 688702154 517746757 683433215 609239691 690636749 837496686 902716971 14560097 964523771 935878063 957759371 256678800 392020416 240301510 374831704 575271268 595914779 808348130 946591971 158123745 203712577 576986349 644444422 400025145 831186030 192291408 971123355 690078351 758288708 105999530 238278349 345662186 854691256 851656120 966624025 108007505 447779850 118354477 209512992 594375195 885476590 947244546 994064259 413633307 787911349 767047021 841144793 94082404 110536420 622632857 921764697 668143733 857436862 914853539 946978162 518491511 988373746 972821600 981680483 848081326 972901767 594347270 987865827 724836053 996530439 461681748 872173707 263061068 661261480 322551563 515087056 305999762 513952025 467569783 880863852 455473917 751885953 531104017 757356226 55653310 989877596 871400157 886543994 847258288 982080991 421752944 501535182 50537827 100658995 430762939 432730981 630053492 636738443 253412562 551631670 379645870 807107618 94150816 135227570 207104453 868103119 521791284 911500805 196579516 998993656 230687419 702636703 410390876 910999245 188553325 847969692 823901786 915700468 436452095 854652189 345590052 500665349 434692728 530055128 320278480 696134198 155359511 528372792 49993894 263695190 576951588 654042228 685138980 893486168 82582657 787321502 456614484 519917368 925369507 970325953 51855732 845137944 338437022 377649757 513449645 788285535 104921803 850137548 321149598 964400383 946726049 975231816 484112412 562211375 214335589 311366215 945950107 992887177 383081665 664566267 262861142 826668206 856152116 988319361 656351263 890550991 62060891 453897395 538033790 892748180 350006593 892863526 927631870 930007041 46554914 98198999 884199754 948664189 339199551 703094851 52917519 670426797 835388301 854490306 31641513 58975142 995199383 995213597 920227873 948311039 412494199 898531478 699850487 965958751 465805876 533410377 562533399 823882338 19711783 966604918 957701435 970502696 132470682 498069159 337727970 353870117 220356081 241833531 229478902 837514030 666200448 706695436 173420627 548473547 960633252 987745003 439818826 501413367 479018624 840847481 115909897 667821888 908022315 936736588 247755769 597407896 884967076 932820714 76282054 820019562 515345268 985430969 614477213 797921710 680695287 712423699 801757071 887853086 487272058 719005932 642969525 959348561 520827061 707160640 368143981 785706711 318003187 515747439 71958211 438865331 98793581 931242068 749539006 885043809 452559971 613221589 923742518 937325348 825730806 937765626 969163281 983372778 37022568 892800700 112490240 567664277 951829847 980440850 869169011 904250227 571370160 789099491 48326446 370942569 826429369 949273191 185743431 435027435 565691394 978556072 180288471 672404996 951706047 976027479 525863645 711172683 452061642 799932561 590265340 739706809 171551317 778829019 744274974 973829956 873891193 935369554 742149841 929386655 250268306 272845702 277474740 907814753 220381021 881697300 173784714 655968404 466709496 763573002 57754575 726383876 845040628 949487122 266746940 267714651 970957743 980269774 526105848 748031101 443020665 476594286 883693421 925861174 21853135 886386422 112590013 362111415 577859343 683032436 554656463 991860105 972246172 998651213 849889335 968375289 922600456 980700100 66989168 478257249 88155579 455740078 17330258 636105107 205303069 467258137 492282392 686363545 447391752 814134627 43117278 166575964 71576692 674230609 583586839 976461958 554322763 725904374 948143731 971010060 936176389 971867748 134391578 224782881 891299282 979835091 796344289 947918729 238748448 702525410 213070647 680335076 537593222 910438563 159259893 385437533 970952701 995267621 76289281 733333703 663571023 967871877 382348536 742024466 513674190 596881377 879671509 913837263 984937311 996174961 190454202 276254897 425199863 984617787 616705966 951678764 891501614 988933029 146683996 653081419 117745370 776794836 430720104 641581782 55391995 660178362 355849093 761752766 549489310 783834018 487294848 866040194 30354182 972752059 524407076 580761642 999407201 999917475 515126517 983850869 404794346 720005325 775177696 845303146 764576410 913091153 130591218 272561879 162493406 345151309 262136020 536085555 392489911 626163118 55033855 732338916 643992689 908035034 59568392 964177603 417911994 613575873 681816089 779298197 30400653 370964798 187228526 638886523 508882373 977843540 541615418 614301735 970128758 991351629 842443089 893997184 71248558 662691032 277553433 927201374 275352024 794232235 206072410 575968871 114938568 835315075 612641271 838746024 830125900 982750566 887493921 988615118 902890682 967857812 705882615 913395964 719807043 869354194 397730227 433966215 458718693 930867730 960538967 986900639 260449034 803831814 224272871 689304890 939480453 983891604 529391076 551126346 490435774 838867420 623647490 731318720 180386811 291590148 681933560 989362946 460047694 983978573 14587134 556036909 483362928 960180384 634033732 674401546 499554403 658140343 545292649 710083174 38180755 624524297 838335354 930002222 425585874 605705529 747206344 989996377 747607606 828239699 424923464 868785948 499395978 738722414 213355689 604541392 121345066 827940791 73764749 837172281 326069084 966760466 823925245 829484032 780944036 920706183 855749083 857897269 887507536 907185092 242650670 748928715 377695249 691509318 676243967 725345890 33465456 867638186 299536900 359918704 373214979 603197111 238795648 772526573 686728230 846335645 82380032 302830652 516906736 923956189 400566392 431579575 381969520 726226763 57826447 568674795 604996830 988890096 648815300 796595506 529538668 851529920 510326745 857001778 499528355 912075317 900211173 908169340 333662763 854733905 528714977 670781263 402047433 920772749 548907255 876066856 530639144 833682818 702224544 775005359 875304845 936314500 531320570 737042027 198455841 603272634 681131097 805194231 600996610 660159125 148680438 950505072 840089337 876848573 306718720 365314761 132583862 214291593 719953334 788641957 402447393 467002946 839141006 987144424 745963559 931880228 600003782 748265546 27535745 964779412 223712909 569324166 837374436 912082807 349066221 651397536 873608625 948956413 43020474 598011477 699160927 706242098 956275144 959614577 126944492 567423119 761301676 767343739 488711034 490915393 840953276 907577472 312570193 568957940 673926624 794163762 402525491 571610900 123489199 585732592 493367848 908613373 20016199 908283364 894591269 986026274 681841179 991627822 262394348 435406542 388954088 881015216 349742092 951950250 147228557 433716113 620083581 959232784 480108826 591664991 570144545 596602755 851220852 948167591 502779775 835006150 47642169 246664357 555073114 641423686 838035471 986353548 994295700 998949144 231143141 355277781 214411207 789233681 258769629 470278233 736422040 748954164 195029002 424085029 764752680 898342465 814452935 976390006 626378021 957519925 638715454 829340487 886377224 973133938 386557635 399649363 608925893 802844418 136628239 471719594 541860844 573549195 658854830 724747788 549961184 692512132 565888262 868840653 393080281 488486128 638999307 648107426 174776151 313158708 577938054 712192157 626435332 666174763 484563330 552824788 2786661 745210846 509436890 668325616 165634851 595314330 212087564 257913494 433461173 928774279 242386073 840185334 458836079 715821469 845845644 905444993 77370569 152486109 991316605 991859921 624494096 629125462 580516047 804730289 35549747 640949442 310841135 620439974 703191612 816497595 648649107 726861242 956725176 980101197 606706407 847274274 750779128 987985652 912389099 928514740 536906556 627813091 454590892 524359912 416298666 613949324 738442150 965976914 8241858 52494391 385788012 644355649 157593979 556744644 563416999 564079932 684035354 800084028 873613865 911538760 651070340 856863238 474932055 866908933 603594333 613531498 860589785 860915933 762053028 942678637 853562125 995621717 543324383 999735173 824011454 972973470 244171921 810047461 824794200 986959004 872776263 977214467 167792127 784669562 873096001 940322437 489877135 702268307 141958113 914984939 549461958 686851280 228599945 367495335 5349370 37903231 153624790 752167436 356395738 395514504 754934016 828225906 558016309 666542797 452266395 542960355 132430358 281970199 269944481 399702128 793130953 915337605 180800398 727723159 649104109 706309105 986863786 988959704 643027472 746560743 218737013 337126980 352271582 552079476 835473462 939334245 126505307 783157066 592443488 858699199 296491970 362957449 892782240 975062257 58271003 391159281 77430657 239202623 343351552 618422955 396396854 850713117 418885602 816418143 151952726 568793601 571042978 881307671 969241802 977066839 501763671 544797403 186392902 841312113 998271822 999514530 757664006 759736400 193641216 856489521 619861879 842460736 689737709 824645991 343922600 681428991 178628791 890260642 416143898 908672346 200188067 766705412 635928084 949085399 351654025 544760347 687238933 770907711 148244017 881479142 138516869 843328741 982130001 992776954 370727466 972519420 143923046 718650398 116397387 924352396 792620964 949502242 940439552 992034576 446371926 875342740 326945405 408998669 217520068 664316743 314649319 333070201 276979376 784302515 793151588 837796349 581109426 735034987 622424341 746430483 976194344 981243353 178439128 606820653 352796768 850492385 835271917 960012437 795464866 841292170 127182988 723361985 24484128 495528575 800292067 895164827 206155389 250019303 722949660 852891121 519068666 616471586 84065383 401123712 409063755 512975269 12939886 84407210 950174349 966630236 256705899 433417674 577414754 783867442 334469713 421978645 708426416 899276210 406792965 527409979 391262527 492352124 624314474 767977737 663333382 781316706 615218065 898414935 507360547 997436603 342395551 935231488 438036798 641485510 988849751 989735535 661354047 898031201 883743941 981683555 478264618 480248137 236085930 277965125 68032189 116321324 200325025 579097568 73629207 404135739 913723730 985032048 172996638 428984516 605102689 853157355 761295403 859435557 484194642 525689241 809144193 928876295 951579082 955684009 596629447 734214090 128916165 526605073 190236867 231195551 926385866 967839504 763596012 836630355 990542366 994028813 613388712 663439834 626656206 636612058 178132074 383342598 509984596 948668993 398382537 693793199 714177251 738503215 232317995 949381399 729011957 988260352 544543437 862362673 81724235 654126107 453482361 691254213 688238590 699905536 951146248 977502309 736476240 796174579 180342825 398246609 286776155 485647910 57311769 592321216 579996730 587522130 852901713 944504118 490625141 539315270 992071053 998302771 297787975 492891960 290488829 879108711 362684637 430955466 739336689 904059241 195545095 913950742 635045304 978726538 26958427 590466906 630937394 729362134 135572908 276402258 100290001 480524472 829143280 899171781 929191656 955313064 546829357 813664048 706920248 830217472 83252860 565899901 22994044 852111766 981672664 984492309 861684644 957260483 827543157 892736952 187469446 797697610 534559993 805566136 587710547 749644774 724424496 894973784 341568176 800193387 410156882 900745510 76837360 688806806 728325753 921087239 943089369 979242614 347901441 630134731 124659756 820971536 298116334 819517020 700765297 927714829 780290570 815627476 626794148 918575439 827649386 944950257 125502862 973200494 621961676 805621420 518190422 963302297 67397870 822269204 197227505 799248117 171934332 896415324 932982011 958534254 596187718 871008177 300696614 729739784 207427572 245279489 886746250 997413483 594326095 840979272 894463910 906164198 643666094 786684373 456307157 532601423 639101876 815648548 222451859 348931045 845738416 901813754 132363866 272694654 441898369 895478727 99756237 386369852 419050626 868085790 301378622 754469258 480061901 819441764 587974216 789792272 658867287 959872451 63493187 521558223 482421785 650542284 384216187 486503664 674087892 888780167 852218533 974622252 98949317 536617633 630711586 714009222 296320638 329826618 933324635 982120139 343407718 551725433 29278303 823359836 32347829 355572502 973186019 999924230 986965481 987480692 774839643 776587945 397561490 972693667 134324393 377923581 227069315 609428042 806938803 832732557 217293334 940560585 944274465 983462825 361421511 438825538 461085732 601132205 534222033 536430405 928951880 992103193 872744114 892145075 100771101 793888710 691715785 843656487 965366193 990602653 253709512 390164742 297837509 844989515 492623886 645337739 201408166 305481144 239537995 922018330 317252816 910616757 777038265 872388179 760040923 902659050 303642149 581966529 771687267 886248167 845149362 870227028 931826994 944217148 812699249 870606547 624399716 817384844 515640300 798445613 3569705 468509364 346003033 901248922 630882810 784171286 180142386 697449894 53271237 211998605 533935744 716290426 523815237 621089817 344081706 354113110 195035918 614346543 902104374 917661162 595720927 921277268 130883851 418040750 590030004 769996480 322942899 950601996 413658376 871125487 285656197 994640402 278287761 991670479 525470546 695748875 824246538 907191807 300969259 499686436 491042684 949463900 976036359 981367743 869644242 944962433 527635323 942142560 494866175 714138869 369742541 783921932 704169649 934793098 859684724 994494912 168543043 303339685 132323981 746535803 857056997 965762878 400375388 814551174 327982424 804668831 722020083 848023092 280267231 962780188 182021500 949780463 679941672 972531797 733424964 957108844 291866839 893842124 409385462 934350284 813518868 926042926 169940677 309621444 840507755 910329705 810127827 883900074 53965183 267241720 972861684 973025157 17060575 241033908 904758435 923054532 980549743 990927339 5552579 874134227 379330749 717517146 240124960 796949708 465341824 664287559 948535654 985653723 350474660 477543387 223801002 585157825 194885280 594394039 442561106 606673708 406458071 548312087 191561860 374717881 305736919 570798717 217743906 596179917 244094750 940741567 694402223 864844001 785973742 871570070 282336181 335156581 66806625 135760122 939074161 964445490 173063520 386773683 299538783 839210522 739423983 860321896 126380618 627905670 808014019 980997852 670494141 971569049 596726260 691601790 469921192 687390893 973214351 978632024 776480979 858461454 914987243 996992764 163147327 679017045 328627148 960764742 185765165 856541027 883837673 924433061 570879794 927211598 291120182 425350119 38228171 86989878 70568141 539040202 242162602 752017761 337409340 633820178 821549342 900233838 251475849 509806430 709806780 980582901 806789571 946088177 18008377 434282169 183645712 468642148 595063196 628156567 124711956 574893355 231538042 774472626 989158163 990894909 460607757 971751538 948307129 994680165 973866212 977792831 685327783 716395112 758986361 944145840 957192721 981720334 25578124 878427128 753516891 866309385 658219837 863336215 690688963 734752320 38527850 265499536 1101812 849288641 304714836 546859788 169253526 810751352 141858857 462392229 295958023 621858883 80077202 392777964 366415684 508431414 278503981 820330957 680822309 749603571 483134098 679933723 949169868 986786641 400900279 580778912 233611193 842197511 999444183 999777765 898734085 913925136 300151958 318594208 747060621 878144547 81125674 474556160 460645255 476836674 175568398 468984565 444569002 528142622 636301620 998511730 896774455 934733845 829639460 868015736 367167055 983619639 65218864 741163967 781514975 848614293 959675039 996944027 999903432 999965020 425861567 611256257 784266300 998566882 635367947 639820957 220589579 233741973 648313710 770463157 52935507 966294283 83898533 385316365 504990595 804351409 443520099 622741967 564039182 936810332 649979541 653709832 296481572 449584955 632486437 633219984 780073892 853770966 843422549 931932979 657024371 696812158 961796024 964259894 392129717 662378125 29115088 549022624 443314922 510655678 238805631 434574279 560731905 997204886 867245516 938942294 990588780 999190950 243744965 889682272 727011874 979988117 412254036 502455828 810408520 838846111 417767689 933210924 355848400 934634687 852507966 968477853 857411001 862406352 557471920 842359897 155798331 598411133 505624613 818378601 992605241 992849060 651887010 979190206 641531160 808681687 979314739 990772475 756638065 915881236 175754723 307193631 92535522 158714384 856306444 944986043 950961290 961878162 798416635 883081319 648277626 988962139 548510664 770818220 182782369 878075204 330364672 614238173 938329151 987761391 326610726 941670887 269201481 585364955 709532208 764811385 557136544 821788989 218151702 946383849 954755035 967123309 679213415 878553882 488202755 500918094 246764800 705613273 760691693 798995516 667700572 756261280 123271849 985884796 859925037 984235097 716854274 765221947 391910035 543478055 24633085 536320114 287855962 803138007 346847020 417957741 367234447 711881996 695298538 840128840 69967419 510257939 471223701 585780480 416777717 762493556 832407358 974773141 650719736 835601655 336854833 554858987 128408964 297572736 304212708 322803720 212985121 326022531 951166359 954820224 794391213 812000554 330639706 400865785 374558956 998864800 558707168 826824576 263640637 418524936 829356685 947619246 92802249 920126524 184281381 218492810 338205156 859680918 906447307 978330759 434541788 521810653 810247867 860610642 989670459 993607362 279054615 851712567 184797001 399910140 546764999 918410744 916459189 960295908 686429866 973705677 149092575 369826207 604112763 899529262 365768792 368277524 767417339 850031519 244970292 774131968 106091043 849887962 472784342 794953295 966512895 983463039 119118801 603772846 688253933 952041304 231791629 321098376 82770737 288530356 39491341 526084863 18580455 377300218 49116923 432284611 374652620 939649492 90996485 671878216 426517912 537003426 763370517 924841598 896390994 918277172 780731416 914831057 581299165 690855395 778016232 797296823 226754918 378578548 433265134 626831242 653427844 668395037 130773066 292768745 761583445 857198436 835165648 896913962 152507968 406562371 765128566 879180486 5218133 624872113 230348969 902336341 461491764 709432948 565616456 647622383 458774250 884843769 721104645 770696660 825382756 868022812 685643501 931722161 2779396 146599391 583623515 587190953 278439566 938818768 337817516 985643079 576161953 971615109 463553627 733045481 338530977 636082363 748730757 979497006 680670652 806213460 201960127 369568653 694741599 983588247 885076097 911507312 591235293 792266133 386032649 920440439 499434499 528260509 971965583 981458220 315287178 935739199 371242397 553236039 859040858 949644743 787494940 788575708 960060975 990434364 24190129 466402504 181960471 850839289 383488932 632115578 396836786 748965699 635447751 741177213 164507802 912968611 425408707 792468489 619758580 856162001 524537393 784480615 693420790 835907029 375463722 391928401 114498280 513934817 385664031 704672599 981773293 997332921 531666948 908544778 528738772 682585782 551672448 626552107 29299762 434311180 64983058 846070895 812858144 854179964 572365646 988600276 646745573 816186247 945745831 963593912 237676086 954491688 8535495 162430453 939870000 985427478 917580065 993633540 475396785 518376197 894325395 988575241 526936075 912390567 820533035 825730552 496404261 858740943 527631203 993551535 29564754 733219628 155549101 534401577 329287084 819262271 81502178 505246890 447721332 556349552 156710229 365458435 346505981 655080831 790284719 883599553 960150006 980192859 389003385 611536139 23649833 84374263 544533038 595885524 917245510 969227425 999464015 999688902 71036224 353655086 561157445 835886070 115654985 733933673 155367655 367027781 481085080 527496157 904856133 937886363 772240960 982353946 664568629 951712753 239252322 507880818 283358425 970400444 81195936 685860991 353838968 687764056 996018206 998685635 549580835 787876484 634059946 802182237 137897038 254092723 802742578 870762851 224539690 556431507 266523462 421795424 684288261 842573798 528391780 783880019 795059922 899922959 748785144 976383589 684896017 771802794 207528977 775200685 693341426 899920982 917917931 963226315 819807475 848653035 558565231 985282012 453802912 729686664 141582706 459800690 472876459 942202331 263282291 449527078 474168535 761237000 35109433 93836188 195185114 895941638 825748711 874453330 646188625 649154148 150520265 381821552 517637360 561540121 450530299 707417059 77661561 487443134 538813210 752630400 982247384 999737129 694400724 837746437 349568986 504781912 287393034 642588225 888697992 920758635 559008927 990368376 992099570 998697733 841896335 880940693 69006255 114942449 152826843 175302409 622564885 816758141 437607863 601085273 164975443 417502888 994962880 995896641 271357888 890827167 718822607 914052837 426681462 998977575 790036451 848546800 306798685 903432149 905458270 943118287 142261425 383269469 480452754 626006552 393514233 503915363 749761911 789965920 71112407 936270463 481578551 617588439 667600750 947104022 171150949 875514407 763819771 894650368 21207221 180038280 336517431 552385441 751737877 812138870 217072416 477044788 712574240 965767052 57180163 927253711 925336006 994777741 760215358 843841562 17499386 905673555 386733065 538003006 592204006 817856152 870538182 936711998 291777631 640826507 649313171 811246230 348925756 916806860 408592336 685349549 192767320 846918961 981205040 983229796 807933833 889619941 56545219 570692908 876520490 880578467 265802506 615672386 76359773 625009060 790662301 848941656 663412021 726320321 691010677 979758738 619659896 857956413 221063467 407816695 214858311 437523734 361012798 684869992 445915230 570728430 640771370 808694327 308599281 438441662 656493274 699351240 685445088 973650808 372213223 521352754 509331434 602162692 791669702 972160147 54670664 788960774 144781393 233643799 451887284 850221003 936977461 974994935 602634234 651687322 504654774 859594811 200159164 679558710 743251666 879232148 191553067 543373869 668064482 973625588 388244739 934859164 850201378 859668843 293698353 545551357 292440794 816722319 459227965 712165231 604303725 686759495 267476899 623001975 46084865 208306185 667423077 894998242 920526864 947930558 672133647 690177047 358705007 698996857 313952361 371888525 895912870 923301562 104586472 415822767 837061190 881401279 998076043 998384744 851026509 932811728 810727750 846539406 844434493 909633478 195432835 411291475 310864901 794697008 567929283 701371038 749234874 880463425 71853744 895514186 788948628 837067013 348063000 944525411 60166696 381051812 705864117 981667164 999702109 999922089 2588796 824906781 967096841 998043832 431363751 719826553 565054741 719826977 389545502 412497246 345654014 628923935 755062018 821453827 878394267 885994411 358855254 996886573 425069377 944089216 458795409 749469926 684008453 817400279 573638643 844375908 483868595 637706112 822031715 855639787 73575778 679045375 644765755 652836451 503064926 870163697 545080475 967084339 772440267 869245492 742802153 811708828 821254947 989506615 750143116 787871637 405064357 449295130 814543788 977503417 314755210 336892783 232965288 704401751 981221473 981838571 486953423 801122958 394013091 666542666 983000064 994711676 927348142 978350478 31236355 71316396 195289345 406790631 355755539 716005971 607102164 711404662 945115359 972905958 773500732 797665811 896988204 967973613 26895941 769963960 182939057 967348723 743212774 863337842 678777847 731547477 295601513 617199180 78800287 254202878 195646557 216941287 122703098 438127925 145028673 209215983 216170213 556455479 160280405 371128162 521732196 646924868 588921933 912829219 195716085 876123634 276958882 289241030 975519240 990962162 422347795 626130294 166664989 318523022 406832394 661189349 422068269 792875694 387613587 634637061 704212216 945533227 13766694 742496197 818782709 999820809 767661261 989737974 152884413 898468877 483468149 963092847 446095259 957412815 196624118 719513240 270377166 945391774 533772939 709578328 435328680 642315851 286360976 348095165 200256553 543980963 692692454 770015839 27512103 46808416 272456420 415536523 321314331 531631330 867259647 967031212 475036675 764877508 594218181 959699414 591145695 809075468 283426989 366406085 155607173 489575753 716701375 979041298 527040112 669923374 309027478 684141277 77685135 717320071 282433410 656113591 584832790 676933270 998853005 999285679 338906142 731914591 845687693 998845607 180132499 481816795 966401732 982005424 313579243 348412000 725616492 986846299 691874127 831028574 367344147 492558283 23009811 464233628 450357789 488296428 605987252 750989337 319166057 748820032 170795611 300491742 618417172 841907665 186969262 850983795 114969074 790508829 197761145 940313222 400590021 822040454 175965781 457768702 123053598 219252814 540262862 588523379 715838425 732144402 154371019 237327837 474277624 671898996 339033186 595174543 545284472 547671719 720355074 809174529 419370286 647511680 223334068 823454016 223736526 836781135 334164830 904305362 795707124 912234240 167954536 664126788 297731308 465700445 719022925 818123946 438279092 769924429 657128632 817525429 875054819 927868732 969544346 980551310 300861961 644111756 855113787 882758733 170532808 172558685 428411310 601045210 241548113 571164152 231583290 956126269 103156585 266091943 161513175 710760634 989729574 995683811 118004908 853375009 941442306 993980561 204874369 400806405 746886856 785228831 880346469 989736279 234993493 768597961 572094792 712964818 62986841 964584208 472374505 685532004 554012820 843531768 295877276 703828525 419094140 997709923 928281870 951741539 392422802 829246762 359459629 446880367 63441384 238620127 915529314 939828053 582116056 840358292 759521934 935026720 836614805 965066283 114910994 439314883 118288101 656444814 109427474 948017018 484631265 634065573 847513889 853748961 294309366 992355865 285320014 666471493 957160573 984099258 67816006 769433080 135863598 810090916 801012346 829008434 757901257 992927529 7299662 571492065 382353399 723493018 540268207 935657338 348533349 668675844 544566432 700776867 778778659 983956111 813379352 821458108 786283737 791424959 695137143 756166713 675813971 928094928 280176445 752627916 728318315 957963655 835833010 899458358 201681592 622302276 113528637 773631387 509522280 734162824 312621927 425191802 874630202 974811897 476002975 792338071 433513669 892546203 108605728 893988181 883881694 980751000 736145086 785732943 350321571 885457950 53405792 965115944 129087533 781081134 288363871 300236208 487828595 527575047 239789188 659605654 450215855 514586693 470381130 807138243 660874769 816107665 679866689 734729841 453022415 639907996 439056291 849327066 739476621 810224688 843932512 941120864 834288759 946847551 29631120 246244534 832921290 952193101 935935327 950858649 711084778 879533243 523924385 751628877 505199235 646948939 114175851 604829560 9617112 403197209 867918698 972255198 100990790 138769247 207181981 649978702 205080659 633931425 503652948 945587349 776453673 991792395 118046627 164994019 931283748 949048096 50812087 850913761 952903142 985631013 888373913 983919593 230995273 498432767 107219265 296384826 917871831 951588414 173851943 891088937 365171605 593978082 246422894 344424243 419927209 668776068 905268843 914539547 858689376 960210388 720251848 849420550 664401306 975983013 348403047 875421215 919538020 989979636 972056072 983970341 147672546 237759334 899166077 959764306 198468440 614150269 769116841 948057493 325066543 461498552 819136054 978067753 979840164 986543060 869126975 896821506 103060604 214302076 148927878 333557900 696132473 994566318 817496020 879590787 907504021 966800337 489604055 523897931 589980213 918384618 748138792 929715014 216327930 934520377 396139928 781760812 450431273 823695806 410103993 781815193 463203551 650926734 17041312 327131505 106965171 463650940 764814820 971043987 80690571 211500467 317666002 618563837 131650127 411868165 618083124 672411448 258624801 460787369 514318958 919718463 307219107 596851322 270178476 886614913 593154798 952186760 550617230 911412128 412615091 693974355 727837399 741513951 921390941 930896483 446590070 612390393 452047061 976057035 213254694 561517004 995947311 998955772 208239714 959331802 143644474 370509770 961165887 969857763 569430314 607860445 784261708 912656970 75507915 472310550 968729366 998327690 903151633 904289231 973086779 981199086 434712693 525221342 29887640 110500267 766712119 786378497 450428673 971088597 266432221 706438642 55444875 90636848 532041927 908012708 808269567 982297513 869045988 935521137 52481125 624872248 153205428 936775553 350167992 384391866 259620690 898292609 932033996 986400858 494252562 975929025 453512638 646235739 240357492 480564043 520181938 727043364 456925302 872018599 79090549 688259560 600178063 670702802 56571511 952922018 882789948 932486914 898318459 971023341 821008281 903572665 128491073 181134219 426891418 703527390 162577076 946566229 589485106 909582988 451048028 503717563 521507161 830916864 987673056 998141253 723485722 766387703 720989926 866918394 6687178 734887037 232958643 467685311 204029283 287358549 765629292 916118787 247385127 326610351 475477726 599422472 704511260 942105316 562678875 743639289 755562802 826771590 807045517 866470256 166693962 850308807 806382448 823132027 694949280 779974994 566130192 645812341 425508853 847699181 784515614 875154938 446956438 924502576 347200417 971915901 611327437 843596965 528098834 804878704 737450309 944220676 287921580 768029549 73632258 252853077 832557094 972475640 693079780 996904785 780287670 930505189 217833967 666191358 206952733 331689167 270566166 308096795 991153538 999903005 901177547 911808052 247080101 867605975 166789577 517096035 452274186 490232920 718231271 802288080 709242904 758863945 215725524 442797000 947429368 993448212 511938024 854837739 214286133 653719702 912150432 959624393 114903446 313448024 585253572 588068969 248935710 274519734 939345086 969407132 343441425 652713930 174559033 253402496 467812883 824383842 470972972 931538816 17615891 47437023 106687063 438820092 741183065 880173211 308247615 985369237 108938213 984877291 433114628 676793822 509168636 533794969 815679274 934216156 509489466 741921906 619435087 914319545 66011287 924259218 94227670 104336463 348253098 610346847 424416363 667732091 447461560 457995524 741734680 936889371 206325752 381033504 849510396 853395876 524204672 676430563 19022623 935844373 397048329 629008258 563512160 575127313 317898714 933849745 993887806 998049200 428331120 493651183 637775943 890716999 308478408 611161770 88503221 214510523 177654518 864400264 709413377 979590677 285443940 436617806 206318551 881276902 84268884 624361862 950573544 998294640 512406951 687119191 317316423 945543600 736823505 822422723 755499639 803380122 338976656 434980054 426309766 937284887 251074837 302456168 952476182 978088790 847298718 975813347 508592117 610235457 517534639 979943190 104198614 988358886 127531987 476394632 74168205 973154383 952170964 969641753 956755306 987087075 320260455 326220973 523653036 933424922 538076630 614331357 861690143 906803092 971160083 982381105 110202851 913575592 681954143 897069203 291121505 628015094 236584408 969678053 759756909 760103944 465766987 686576812 68105483 563472649 501547184 616099823 695806187 719289144 391014298 859398478 536339545 764542086 191283268 419837446 506886054 713007356 679807578 873666692 715956342 956868477 235326530 487615522 452284349 575616930 350944610 958613560 69772987 225255770 295463270 717246197 617421320 809672688 616319683 618126839 103423280 260128452 175622711 835536868 291059074 884698799 362104472 642171777 638315153 908043235 981261049 983926824 470210698 512224060 838619841 932650887 403042688 673752358 985238649 988319311 149876988 861060755 434976417 900001008 523606987 788516004 738959532 768492396 95653164 938052261 737043547 792726497 507766355 581271853 194756464 239309877 947473008 959386471 714457192 862856725 297539535 877820503 282689197 893771636 530177305 747315966 231711152 841079044 619384917 809399294 382984898 519567248 142016077 386960899 388208490 409231018 894549710 926054817 526298956 539193221 729204096 788015844 368081098 452153971 413725613 557632846 71888581 848354236 364375837 832910008 24564258 381003361 786732826 861169172 132400753 488991035 835714113 897066844 579288866 809484274 886810008 913333029 673091926 803682783 469923905 575017217 95367143 476148938 562081850 975730131 659150018 875737733 315315478 928448112 148022091 644807553 831936874 989821675 425519227 965131635 495572697 981398136 600358546 661790655 717706755 979310351 157171439 481050043 141561971 255620353 656607072 805523150 288643662 934756204 232578849 531373025 91326167 643786901 745297424 889637416 573031722 793742836 339382780 843832099 509970049 855470653 597765280 682823094 109093537 910888901 215555794 267222203 335437958 860724757 932126355 942151830 14687284 390336457 950943911 955956174 133337840 338336178 556049040 882175879 481306482 989333732 316552736 588753840 84044625 697557908 98571399 230901080 432485205 529263127 203360757 720577683 379083505 861429593 174422319 746455316 944219712 974470583 391716790 522408463 115864944 993295369 35209657 761606282 858025814 948614585 407160347 793952742 687577711 934019952 53505268 460094397 432669726 517774215 693737725 964595699 289445333 554483163 265486675 610175575 297571401 497151377 942270802 994341376 793437952 860320251 368558579 727397575 128291344 417332553 311715981 562079791 614958755 987688306 889815137 996149125 702956748 924918649 93897768 506591066 965278416 969348111 12345459 582948010 760458074 766003537 889869013 922859375 724418983 755026784 205597953 681559786 48796234 290222411 943243107 990012664 835400569 948232225 28433163 484666259 451442720 987208234 778850015 930174180 654186976 893210819 810733993 884867349 24555474 266549421 409106264 801501692 892673760 961080398 801119856 844411361 382299625 720437267 463483898 950782461 362323762 541902675 143432400 235383877 271245081 817150320 623241992 965697920 174306758 461726380 482992841 646799842 881490051 935539149 315977217 630324749 299109042 845337023 335225294 878544009 689809311 962880524 656193778 845434377 503814717 618087601 100999863 125639997 86779547 174070035 295975474 458918400 836720852 972865713 609576478 825789652 820352779 894182802 336074160 626007307 344685245 922055166 353187581 552581503 858366882 908841187 594743411 616648356 717743801 832592112 258564926 828719149 320002263 355102095 207268695 743383370 61275102 733665388 680621685 984387745 792085922 951296363 247220820 895913401 606063702 685465312 979805199 992208990 302258008 733871875 206993047 799342089 495656524 518526636 383914100 894013772 793886952 996197248 624433272 764167138 709140931 941915628 332428064 990894848 831726675 989985140 509441591 544341335 676300803 727411008 899987754 929091241 268007038 562817295 775237327 840019675 981138256 982017964 895861469 992274731 899936564 920813078 545333466 609496452 509488045 600103498 661463024 895593530 878295040 878608367 941134997 994745047 287912944 918400916 623447809 828690288 674089845 948220420 53627007 822803032 38052562 828796048 17162757 131093548 548118675 669404803 762805455 770796146 615813934 788207434 693874409 961286473 357955683 722264606 919487354 969456597 129417005 243347402 563345486 724390377 281584578 944310136 291695777 562313907 559270485 870034249 21115326 261701901 823965026 888083137 990919991 994177116 709265652 921385414 91680455 542426852 329256778 340349735 904717167 928258159 242799387 808774869 416612289 577800954 701749150 834398589 375341054 886886307 298116968 735424718 466594778 619008476 917583264 957113829 416111996 428885226 619477729 672509379 695423553 739750014 324026037 572317496 755202205 930168254 396634024 670502473 636968607 649941709 779578179 831060757 960287088 983003539 591289003 640494582 510087460 687451329 922393481 966846093 147910905 783776559 323917312 457171702 562122722 647194184 51750400 619433341 676446852 958427501 652946407 882512878 84849419 550550634 716747132 934889213 658094477 798634736 28641884 37462590 926806286 998267900 336760562 942257701 526863914 635558004 733193932 760587010 230381769 661401851 155569379 335392986 812502466 973940953 643415385 727504612 327925614 862221968 703470786 785081949 820391325 875392468 865576797 903846700 479653619 875647400 831282751 859935651 339646540 353286179 331189381 392612143 643487946 991629124 67115936 635998938 422420828 453844586 564208834 717001670 816416661 906408087 205212983 845199660 189266569 510329403 747749498 823102786 552455520 985127431 549458424 584622503 195582459 797389459 278924776 992751537 154161609 625739918 702330420 934125134 852928241 898418576 564657700 647695033 171063200 985937333 800866102 812722901 931882356 932201866 237176224 557018765 121739925 654041762 178045530 570597736 497756848 939175509 509082497 747530891 49276630 694683050 308079456 361900852 269799315 462035310 65693214 920785133 122285891 343100369 498887413 837105597 726887817 811523877 441681498 995281499 749301203 922750196 934305373 946679865 463341421 858369755 67940047 860787417 536972656 858165042 777502383 837197052 407404448 688829657 633105839 797565899 138508476 452890190 872558895 897692163 357002333 988282304 163449830 302131982 875509898 989416540 909652073 969127300 376429167 505330694 356806273 433811668 50160491 66890971 689665061 824272157 480073794 618054226 691730532 988480142 357110504 380771003 844293992 916637368 243971477 646499435 346042403 619235916 576057342 863223810 628825440 747656899 732462864 876672628 996007061 999583297 922936220 971076866 582929316 601285672 487625367 776054362 742734618 758749845 417827676 727945182 646839785 818147412 365898806 956174832 289083007 354244657 655393857 953054350 123594486 356090513 213112507 871247670 786583347 933335684 951609657 998896714 454428703 914535364 492855747 829976722 936562556 987991493 321829720 866995143 643898657 668214091 118733770 913644010 649322009 980218683 848242193 958157185 459797285 805874800 710347926 999490546 351472761 667090532 553049676 602499829 986637462 988389856 300504969 420818924 260416012 421112843 217948934 228704979 69683625 568067036 135782956 855132941 82522743 799743181 825808003 987958496 979460365 994986656 673415302 903699682 328929519 719664211 873685839 940862544 774944893 998921235 576705625 693027766 319438552 915152725 410214812 687761630 223487880 335318300 154712173 688941414 193063967 695980011 798617024 878236020 563762631 635642876 965595977 974550461 403209176 480755422 488434541 596643149 283548914 490808971 950735159 972693687 541232881 745611266 255780718 285725888 302536896 636987669 493937130 581869192 399653367 987769917 570311242 667656670 7026734 401817949 751412105 856903087 633218692 991907373 491442758 825101618 329154240 689252690 242375405 329249858 469602728 505532816 253278699 362783742 820000373 935011407 646027729 673682152 507396736 798307466 852090074 863530111 324199468 676646719 452381503 607542437 592969988 923486911 676829275 968105923 706833144 815673969 726258341 952325586 758062868 937597814 994093052 997721889 165699546 421208164 69695463 89890797 663958309 908675747 477521458 712807785 533521623 617319102 496060972 713684540 899911561 900135149 491840395 966434181 474476185 568082687 537677495 623603894 745935950 994772229 86628059 370795661 311197404 851704467 810024108 985012907 770191238 838770939 472798528 752379717 538999067 857194977 688299945 922381270 383563108 746628262 912626598 918229367 700095024 933694213 495187307 716662952 253347064 987710253 390150066 827123975 291163420 678426284 638649347 648355491 600033224 950570378 419147443 835905782 221739800 366920944 532547266 863712210 237368257 613559518 655356889 951188683 717698113 864318996 326386816 543365313 300419878 555798005 322712859 581565228 551267693 895890728 312198183 502450541 803737876 982711626 471378006 686013300 742251031 841579081 860623387 987948335 114642944 300344870 607859780 996826469 245487996 321612018 171251482 414891263 917850105 924883984 249612250 515943758 666425203 980270545 925830623 958420085 554922484 988935487 208468787 790020157 40746639 68562516 971140773 991456124 954267331 968051405 26027904 893870190 352546368 377503388 535995431 920857250 892894471 975353809 106454135 465562600 826997469 972598408 21941126 311476337 898239909 957695944 105874291 277416425 973050531 992762807 885185722 963351248 291493977 571309210 476073927 989922047 622063218 810112736 760538566 876677545 144194448 545400422 263886722 977586023 690223295 917570695 414260864 836984934 923921933 946230759 422528596 966404057 966669394 982216354 170946498 436305584 497265058 991564354 633443940 699361230 760375954 881561692 181851741 990798183 920718570 941789917 867214238 895131853 528999806 750983040 134286050 148939305 14595621 986433111 90834710 992698035 422890700 753518582 279612662 349001753 959373245 968930620 979794148 998365202 794775315 950273711 979345747 991476512 386203840 466320990 805745437 861817311 701133068 926970084 463038262 769074028 613794227 770319170 92200949 251227781 617880315 678858088 726792759 989199845 108873253 705614993 815068266 820218291 365765791 463580621 217057380 842393733 521987752 653478429 268507093 942770026 958938205 995925775 418906488 747110069 536534733 613305851 25234174 699193836 297243449 519852739 361348429 508648128 953031186 970236115 860099927 875515115 714793316 883682739 893231689 961616439 388239508 814434350 974354450 979990450 860204225 905784942 543458269 974245033 72415410 383553591 479421541 631008969 841070964 953529752 929839219 988896816 171243018 752026934 173995115 990918855 773889328 841494709 163518005 350876326 295471420 412952547 930855053 949081875 911622648 922437480 771950054 868936192 214479533 559270990 567617685 721215613 136981958 667450358 209415857 405346441 944362909 999464477 103746889 379184372 195892098 220306882 325468252 762912024 457265934 604391618 716480340 917041326 558715958 829596544 724359469 927091662 441625578 859171685 107255664 394917674 396177449 973419252 623600522 846447687 633022831 832053890 173091311 412342114 566866579 573210225 779509936 883726190 959204996 970761963 818234554 899405270 98011015 690513657 115157255 139981746 988581449 989647719 271999994 833442655 146353511 561789956 678439688 820109615 871318820 915045476 617896721 839002953 835080689 976260101 27335532 837766725 853805987 890133229 702798445 927792456 757200089 838792976 824698939 875320670 407807441 794740542 680216021 806741756 363329041 881906561 75818798 865328251 87594972 201318456 995644684 999236413 524041429 532389717 200517597 635882162 934694821 988822636 215684730 872082193 510820844 661337348 716438006 937096111 945629810 974695216 516647996 997543000 806262543 993966600 829305075 857088176 115190687 590501660 811154389 883026254 662883843 948112835 206584306 442763861 926039835 988680377 609906187 990379724 420148222 516760083 576964005 809649078 651439727 983146770 573884403 798897880 785391875 988515783 889031981 965117768 778957717 958541534 304633699 966884145 500651920 764963879 403000271 404420926 319139848 741837606 339777300 851997667 46282350 712419707 320904138 761975209 115606474 615555871 849393913 901462418 733659402 844010271 228656345 847157134 542818325 949437498 369335166 411927095 91715328 386241757 40964965 181374172 116871454 754348152 163385510 906848102 894474486 933759455 622836771 631250758 578145577 991427135 181384510 448747933 652751437 742667439 688496853 810445338 807461212 866753960 774735436 847412924 347341069 759979918 954235259 993443554 305686154 510287506 579402887 788464394 903401894 977791844 102308058 772350335 118757751 980153023 815220877 878502450 74141572 497551920 700442604 881045391 933290681 937840154 925052961 948649648 293189932 735656549 556999110 942155198 585164864 752264366 803343954 879216850 129877390 936318011 55011393 425983079 343509121 982809752 843880743 949199240 240140920 690395274 810851035 865397512 682667763 854468843 806964884 955965080 312004619 900435248 180974629 382623904 974208364 987086101 997617083 999524592 758993506 825261335 290967289 721483513 357310303 506406954 115236748 767999978 567645555 646007657 197362068 367061638 838836226 933826436 734906720 905343113 550097349 941214060 252830845 560510149 915997987 916733700 940710737 983929669 987185769 990301337 629543801 880958200 374494826 506366779 957228064 957567203 578176322 664950473 271868875 821325539 813666923 933686806 575500509 884139302 539878256 652290212 111310807 494555046 563256576 992691975 9022283 837668116 298216972 388813433 562149439 804045542 102562992 847689677 282537972 638597808 872115041 898171662 712710756 742261038 627007586 844869499 949506902 965304207 607916391 747457227 310110792 483682375 530363948 937325315 33249987 553397880 749451589 751564193 791838580 934817832 264842686 835017290 502842629 923943085 545875732 811323067 89758639 458790290 684022803 841312139 670725514 860137310 384836408 984230297 663558456 994624778 727184077 877147150 359026328 989721545 227281524 828539861 516496063 862043756 403806646 528986188 300353664 319073043 170806435 206436280 775352556 854754456 632246358 724963687 564516618 655182605 7918842 655779675 852657866 915059172 84809022 540541101 545452291 867555163 177514672 712575848 566252171 696767176 700240769 930257359 396577498 597123265 928210120 993748068 821332434 980925014 672065994 677960907 906166664 990359657 122669838 766297908 510125306 672724635 610921189 995492883 827522679 885665227 774838873 807008759 41983420 244124725 975633183 979442447 929672144 936007721 651969289 676070952 87118338 750883916 235323312 605798016 40226609 575156102 356881935 985585022 426108773 801134339 801479832 815658006 771649827 779490828 686335998 810521403 532132062 710110463 389754636 809879424 378365822 701023404 959467646 987751607 70966094 292517011 381270208 654099439 341228147 637382808 806266455 878376071 173396707 682094624 344651838 995983217 575208045 772174285 163946562 416900402 310845580 586448646 475026225 742732847 931453697 934901298 678435315 929916829 178713422 186593728 391477592 477391642 319762027 894620866 835433771 857766027 126663274 759677419 839130396 984761036 651954152 685522228 828241695 917860733 38485534 175982790 108947348 636302243 482170146 980751322 291680740 684923797 851574788 874796351 38037525 232303934 43056175 56569852 216637215 586249261 361092918 849988429 813003470 961298629 334564724 470803615 459062337 462402098 13861795 671589712 611190590 674312567 356371167 358733731 33409874 610889211 196016814 345151176 642334812 900799430 622304543 969715832 285991868 332766295 733802674 941037738 301824790 408751353 986175408 989757148 561313330 595892806 832404327 925563540 21096635 55770936 427470996 980493017 312663278 709906598 441174783 530019406 124467438 486760410 226985136 940118407 851982517 860996339 341918590 405634556 691891594 967399346 586856899 799524113 784560065 981998020 535495858 807678283 261910913 557866556 310715942 319792826 941557646 958209904 618254305 875559827 970799689 975086916 426746631 757131809 25750378 854071770 528491086 620637674 996352017 996921669 990987131 991532144 285999550 708080154 81561011 263745337 120326724 635262565 182018536 357400962 78624015 164609144 432601497 465764640 417245886 554166558 390456521 545018224 451502913 713177788 894582553 989958274 232150553 836477755 208555728 809740458 458492499 874275285 610137072 676285465 983250614 991124167 476580298 799038705 483911376 725943705 861614738 935119619 350186390 889079312 218377644 558336457 901758176 985139565 783157034 806291888 731450449 849682557 376171636 598857670 530325944 699678423 717879186 805714013 925120656 980063930 497389439 939628976 502099662 556142034 524750029 974996489 564434394 584871503 322049929 861519688 698063439 787197589 141766670 724511264 548446666 645381328 233862364 860142673 72199901 532201375 462932354 467796279 339917129 829923549 866458478 879704912 407736683 547555073 741032663 854832924 776039131 976089433 35387479 559719093 258492506 595857863 942105438 948306389 603802533 697970625 240642493 672574671 999621155 999638714 760558980 862703217 542092733 866172957 111731252 706914333 221515228 613285165 656157097 662056243 52078352 791783651 614760493 799469310 211331561 832365967 623758699 766401044 343767694 836332515 537443029 930208515 813718702 987439037 537812828 920742866 792883247 898661321 835538243 882021462 79640857 627496437 40846022 817315974 430778062 477743761 27729360 763398259 836037829 869254631 977371609 979849820 38314092 297631121 992885535 992980767 218336971 765738995 187444434 853427500 337443840 827747715 376866920 785026102 995021697 998023210 506812965 640749914 388404777 870577755 133419271 454179427 564124663 689570524 415448792 483481389 291249202 964239157 992193364 997686574 501716565 888513007 13118805 738509767 448734481 614046101 969122725 972357611 156642089 197915828 288488286 536010826 258037713 343940752 130285293 677173692 787571001 902400873 952535526 998202760 682832460 932286193 2195638 950374528 992134119 997263042 150453640 181239631 955103021 987660063 573268190 913191708 13759550 45166265 19730865 113650846 485027646 814966409 763029682 987661901 542695462 818129105 818903301 975971514 776752545 916227687 552971505 686394364 133292015 139732555 335219453 878208887 90454411 919202803 175413639 667573600 747844172 765525406 483271554 729544930 527362539 972893476 923705154 993805068 625427122 968896382 192981081 748793240 930921771 933598588 359002309 375382120 966233710 978672654 611755608 908230167 779936537 963264386 817718907 859006516 797698110 957860409 26735031 738925085 763365860 994911028 730983037 822400245 989029177 992398735 437732488 580463084 323103253 661963253 159099827 280918142 858262008 864562255 561803465 582339813 746482781 813237892 632266390 906961744 724223695 810685414 918318244 981946727 809531317 901918260 523245205 637849668 780795807 842790750 777992631 810283827 524622778 613796432 889833293 968387571 541290557 670394883 13556393 158439154 183835175 348338494 96973929 557632460 795159160 973297425 599954119 625370021 276433309 562395433 808196486 937011429 178751754 683696287 942945356 988821173 951331250 988105993 333754496 334309596 202381274 925109757 925419346 928936978 148876823 218659714 456713750 496123048 881773335 973393153 282809402 885664674 420099505 969606237 904986555 997800706 267065084 457488851 998907833 999083123 115424344 544956923 324236993 648459555 995743082 998429197 625514126 958731599 985201674 999132776 854963842 991083622 280306713 704954497 700577643 926339802 636538484 761950012 431303130 653757127 31544391 43254220 102579432 111172208 206908815 232223785 483412562 952957934 332974353 452480983 725345762 861021205 136207854 898137417 632297385 939753218 535582172 946822655 976564772 999305256 671801566 740607088 698556762 734768321 545151031 698289239 881942780 922856335 554115190 989042618 266804878 668433625 383228808 880149793 706374787 828510156 499371011 901627807 665118087 798465896 157184872 634898223 573261200 952832807 244110511 505452065 45275153 541756784 428347457 898481862 698894354 980908959 396993943 892888470 486308099 627419740 410629024 480007953 26609734 219630663 460388765 874955340 936350539 958515103 396585807 756834602 51589497 620325108 57620994 118070182 771831864 792899439 137179909 733962374 88313165 661116952 778850156 974975430 138971797 227665390 243912216 421349438 347776413 411501035 120373326 935802743 603330646 709410071 921233638 930842819 938572099 943177320 977648895 991714110 552553193 888062599 963476508 986399981 110938066 523125594 410534591 856203379 874955246 984833533 702178534 940142599 738910664 853604952 786735862 795787145 631459676 661261596 878409157 900708299 555800769 732102902 120376829 415513753 536105966 538576899 834397301 986642967 844772973 878464914 920997724 950109389 967531232 999809425 518852509 703181613 174278568 627457779 211952086 467658160 309399286 903481864 334010046 643328004 720132776 748754201 8098885 967622739 619933807 792245662 234207971 888385775 6188308 439176870 353400898 835989150 186944573 514324049 110250705 380776990 953324993 980213164 755329978 871987959 884204956 965568004 94270258 817910734 954986645 977560137 75974762 741069430 427154975 833374526 562253336 823424287 461427652 710131289 788169244 915358931 520245464 720679722 96917627 256900265 586030401 639670810 448031396 975030005 145350931 645608935 925978015 942699237 328433518 376395078 891480081 956111786 749322890 962813119 647086660 958260074 253225858 438293431 410912705 933608834 948703858 973093235 558779908 773476008 675141887 944546235 722569818 998205867 204082885 443011379 32022274 987412990 226368594 733155568 862234214 966826113 347848413 882403216 373123156 579962160 848944892 950300711 334583648 592956529 360232954 544014576 815968316 921577758 701140657 833891043 994208530 997814807 242418218 311689207 798356546 821493646 127997038 799518394 239580763 943409168 873921627 882338738 449025205 908302095 834112669 934353985 705892966 756744376 814670624 839964777 954071397 981337801 85120588 233099529 659374063 758513559 538313290 951174301 172542472 349105696 819672818 932693948 735390482 876028089 89969722 831476972 373214421 969979021 427542656 684513688 703117613 741197195 371895168 492072226 308981750 371007487 864618663 942247813 726011172 848242289 261280193 877847529 785779687 968912402 699861028 961100582 371782890 645465796 568983718 847230024 763418334 798508174 261015010 464314080 295329916 789416399 312960682 794812879 151798985 724698096 786008989 875760850 405444462 998251602 764333377 908059264 144630807 464901888 864671379 972836751 209423045 986750445 447479720 772621975 635714573 993169123 163946563 959550844 679673969 765887465 836350349 990265970 955822181 977602632 204760363 979908532 706766946 722825423 429463158 697049834 397906921 540801415 846778279 949017614 975636596 996808984 530227115 850651409 255687926 321252773 730921068 869705357 231361580 933928564 60861535 797304065 142164152 297805223 852732209 868264422 927392940 959105153 549029448 584391835 4139646 529773345 135060256 481293174 973694777 999895022 785278879 914253237 277386909 946314537 217954770 768017432 282876014 963012653 151409386 798908084 250779919 958900643 259136105 340972895 705042302 786182909 770724427 952206977 513376702 803962354 107978635 360171616 361808177 550964365 177512984 682083830 978804209 987270719 992285951 995997379 941046608 989622384 3910501 613132346 486427241 681164316 185812416 269098780 858702375 944134239 454692389 769228710 510122228 878460344 915030785 947724004 293673477 923997326 698553622 937163874 458520867 668531299 796710717 860346674 83185627 646860727 602937441 974216255 349652226 790703421 210114357 727836157 764951496 799204031 348688865 850678337 165579641 655627603 13493253 893424379 296480955 408061891 431281933 540763352 63775098 264201922 636462420 796023135 807316830 997999950 685124244 945164168 531071474 777461314 348709211 663819302 979962566 993482089 6869895 190799960 887613557 976950417 66705568 461650696 975753771 984478021 163259755 685833997 854774654 861731157 27446800 878763379 861055696 951893838 836017118 961148009 150478119 559335969 883516046 921561533 889950256 968367242 870051524 945321153 988142628 990921738 508382419 662843830 266498726 886771006 315272172 480448763 835273290 899712587 692419369 744519936 367073465 892899785 564420629 818582919 274897267 833217813 62995122 672131096 518923234 589317855 995250709 997908368 114752152 668722413 348541707 860885200 717526474 913425009 493215040 983449686 613223341 647281716 317457384 424840840 912316453 995647931 764480619 921818174 66035246 250822141 524851284 658140172 251803456 526635226 262977959 627453409 834832 408514182 865755250 911065571 718612905 999660613 929713194 963752643 919310410 921967834 89990525 224260715 432159303 433178725 176835943 258827559 518364538 994324707 446962692 896461652 512347956 702008812 776014776 946265302 374676135 574625444 637920678 829168709 156873121 700896917 713101469 886609455 140084503 535249007 617931082 893902418 718004896 832354087 928853213 978044996 832341253 957590123 656158578 798898538 79137814 946066391 383426466 507003805 784680694 913701899 475727194 939195445 629073715 780154338 567645487 704971453 534562104 550208025 23181534 283846467 217288088 959834173 837190736 966538186 350881631 436326466 173823220 233994495 947825859 958039540 527898093 931553409 973637217 994586861 372599529 629550610 726129345 750771174 2019612 953796449 41743072 244850513 412651218 674293658 369253896 993375693 232645909 297822642 67769494 724656613 905713227 907475184 573906274 576630939 860922868 992009624 486415613 823317811 319666290 577583057 866591800 946724246 676368213 779332538 904910227 936030366 927244525 962819809 434928390 943554555 857936141 998056392 187324626 532776347 955914909 982104645 904540299 971845960 495305209 967758652 556131101 980971776 895247251 955881917 563845356 700286398 528543579 895464484 162748008 950231762 322874645 958018229 604007889 817662191 47278929 998849717 958526794 989001607 562682884 863595049 254668865 842764169 969666325 995895045 333702819 402010424 249147036 962980435 475494583 488989068 246985391 393044404 376942052 933091412 412713194 873700869 744498876 846083905 682663812 951321902 304429226 456065229 598452004 842881826 205904023 525120332 402916670 524501286 140807698 973931438 727065283 921926637 884366561 926537025 901614631 958900140 856425708 976425658 843515669 884577088 583045521 672706589 448927239 841822164 7948658 233752973 280830638 885413917 969479796 993173157 537446082 562543730 524756471 773119899 788851864 996757779 539568780 911083432 990382233 993527836 322988424 744080546 873206776 882324524 649427796 998836079 393562982 434187331 62456703 281432512 796578968 881058587 948225994 949267361 955141935 974080944 985342734 999684030 303689087 751846306 19201874 651961427 967833735 974450365 298640665 303620861 946896547 991310486 44594931 916841175 332590424 794118701 109756720 317614853 716285523 977331025 959361079 975095068 839777849 971898784 186866888 459470656 768124764 967281461 685887253 995714588 218506598 560553930 304317686 707747913 629603179 752007865 629214718 690408917 872050371 919145966 792286878 925059865 343808589 587438078 816687897 889996164 423095357 701712473 720963694 734656578 759812537 822253205 39693356 963568962 775722732 820177397 858965181 992627250 742950533 863019182 531757698 900047553 421206112 909097865 612329896 901901269 757667590 967442271 995562837 996279140 291459994 639245321 668947469 909242671 130336676 738131993 491253397 874182285 940868186 992938997 814071655 899959805 348284897 704573889 100403703 867673984 481899771 583054844 432215370 844056356 105493579 453398776 361684269 371838444 787983411 909847581 585107509 897372193 201546467 651640704 285092137 931274957 206251298 275787816 976487206 999762943 697807860 859765160 169555104 401645391 290116277 469593285 231879773 609318443 960651706 991851335 533435218 878352865 818658835 949016077 52932038 672904328 194143071 426186006 411112667 538274628 220996606 236372377 975910123 996057097 496608914 599113772 898619761 952678936 212781489 487381923 827701368 953545778 475650212 478654226 745161165 919845812 628492549 720313773 654576873 774797232 919902836 949201163 475898045 793412239 358003976 400472561 117621507 905660811 362216409 785839784 568023635 627135564 532842197 587089170 996230087 996732001 909050556 926801496 682178849 912928411 181835227 314258536 432023064 466116482 150930163 384376813 413530232 859894356 974351363 998874204 538287946 938118473 6992303 998201215 592245605 630217901 143526967 462499303 306100827 432739096 780368103 853717500 888996265 889890215 62984178 430501440 544414505 596898649 785708195 959604172 764680021 881297405 978383976 990712236 379564755 452812951 866938770 975686257 802556428 902454611 355704935 941192158 274717978 700085408 175248080 335198864 934878852 987311383 65330878 617878580 591843735 625277868 94603791 291839979 211716101 739635417 829905496 940202194 702084516 809432714 858563686 858956723 661090729 855171530 159455583 930307499 776940480 783670759 778568905 872501201 633786648 993828188 160507871 711466662 639269590 881820182 763029752 848579551 719344926 869661990 465025117 478940805 506174564 645677040 217687895 710841338 633538408 658612620 727994259 755843579 189557880 914318890 332568513 854633643 643659447 654891889 928473743 988896452 299835792 414785247 613331324 906556649 838131723 880327398 68960006 479544497 691513417 786249428 622854461 701519874 694210027 979962388 83878001 693321719 54898882 671263194 866490105 917946064 871573923 980227060 565738394 716760683 872293947 906346718 453059675 549821892 607436901 966812490 59028212 896423853 641489765 733339896 898147693 916614499 321346437 847851855 823081557 941504368 396969870 481264383 797228767 968900059 654270849 871088372 227909719 416694607 209772333 891833453 14257221 725054307 506778085 870855098 732952516 869908481 683034853 794458872 765987527 961354157 79654432 403202863 249074493 515503320 662633474 942989279 500267588 567661187 695963462 965266038 47347859 164369321 718923545 877744515 780324578 962439042 75220443 274120044 918235604 938458830 459617617 847000657 861525538 894704233 797559917 914702834 562777469 595989578 821019432 839687861 628917199 776552943 516361492 845369848 506410845 561545824 460588603 489797252 8835427 212251874 763191287 829593151 444757704 894478129 548768669 848394327 230709246 338220160 792251528 876835416 675302042 826477390 89559557 99034094 734505435 938788789 432173389 811253867 951535585 988886024 58087978 349304001 929169191 933918757 925507472 946683220 763386300 898303426 449410456 783073383 314433167 732067290 203080936 960448870 894646736 913005277 986165634 991671917 889513563 907942841 817389083 899125224 358841240 619125632 805200813 871362561 393140716 402193696 878042487 945710316 82928979 796623601 496994894 546020195 498462630 519413041 704395952 934433143 390863762 408861910 392796100 930863345 693253634 840755807 417621199 778675309 712562423 940331205 311201686 661000144 151810032 702633160 427819901 997262700 376185110 501112633 151144715 186877678 468428248 696968568 281016038 655908326 269582562 520295800 775789164 957753912 259347694 460315968 818408394 851561783 142667504 574098343 849087291 933595384 889223642 976421099 252510731 309788869 547396657 746734396 295492845 635373520 460473927 647232044 155879177 556319586 883621182 886544976 122959767 734795803 620589159 977578532 168280451 692880649 564892465 988803096 21080725 124452910 853712010 949246061 119553943 823747637 131341467 662972769 852646572 938082442 227576141 758778899 847018388 864755728 235068678 391112385 297828640 753598855 649486615 667027352 142616290 869203762 917323692 989535391 63847286 872908530 266609240 393239915 646982788 783881933 87390092 191418597 654471138 961321273 626617485 991383531 4761160 328318420 379810855 757564829 422328233 663884534 816657058 997587203 547945904 591082016 92627146 715722988 640816182 796585913 514659070 637905534 535438323 625667853 632512731 937759962 770108212 918173260 62010087 377864743 787560966 986627282 376117044 436357978 619536314 998681030 477156697 681857140 825984877 901375245 967663342 995269215 577033985 707367321 918025182 928058837 706099780 880854678 481007558 833473116 449990314 744978980 969524485 982423587 916310213 957510432 454012411 985118791 587622971 872417562 613742072 907330521 841338394 966627853 154994651 708595906 380218655 436913405 742457886 779352517 817091539 978303295 925357374 926298667 249692895 532489447 255892209 537592815 946341776 990983952 343628109 614175954 312193543 830673403 960703516 991691380 766634268 841449701 630921099 677004807 167050142 581188252 906761061 966894370 449128995 863253897 692719459 952156277 488749450 786080258 80510497 599137401 765553086 824955609 902401467 959568509 470878917 622477788 490425611 844024329 878040735 957577990 715754988 983146830 639381033 849222156 250529172 586043971 6228223 466395998 15956248 396390117 277536218 414871886 365696276 943647168 228956487 564190214 342822112 524095692 34233034 292054982 426174704 555021479 34264491 502016035 875216772 982459711 287352754 491163641 788405152 943532751 213926589 679471970 54857862 813049852 782938375 829713617 775535941 836215960 993550570 994578540 171945831 930665791 531349907 690004289 135312280 669297437 769748131 815969179 50148363 189153576 339803646 492193261 117359925 532578356 376130380 639747218 805662425 848356376 569064237 640513275 313051600 666544660 814168826 857767904 762815621 993021589 164562706 914238072 407145349 800848779 600623819 705486613 763513989 962165024 640909102 818016200 292885435 841204208 717728046 877495740 566472545 727789372 799409931 864307846 559596305 647718439 530629283 882809766 345082190 949163970 371741025 410592298 690839924 721396538 403616440 832265486 96792411 714207659 239021707 812302467 191926738 714927249 844119741 932426030 474421419 970526514 655991581 942014464 913658476 961821223 665202898 724945760 510587239 532619147 796001430 821130321 416596778 705400870 969681810 972836245 846734426 859165060 73788718 798812424 462098697 787640487 62260573 398402361 169851523 952474545 55975911 903485879 961861442 966327545 268054085 990078888 643100250 771184874 793302279 832940983 357312948 513772354 711540733 941049148 603272647 991749729 293883728 865920563 778483963 921608924 170638567 608832116 786984887 986786563 978932642 998756335 790262890 931827122 594293059 856171103 216240001 661655084 307699718 824423844 311642928 324061695 18107603 350452443 786176004 826226559 61140567 739714687 206071776 945115437 570530386 932896554 731375246 932956624 343072193 807871684 555252400 848661454 289235919 552839701 691347659 928232547 111230556 323272738 94200791 331422041 543426763 857075045 861481166 953049356 886345286 902494045 296934659 329966449 753575974 880671080 126918461 186157818 668889039 691780091 105468638 954168472 326935344 608249031 82470406 415054241 538533586 895508123 328688281 885838109 650995092 961285780 818675262 886401941 62369728 69056322 823832658 995541683 867580194 927857206 753487391 832896590 762266088 866989664 595005597 982780102 919879162 942486940 204434360 986082425 507673065 966028047 873698914 995437329 989673568 997688520 51477584 364882345 747144953 872798540 821086037 981395722 573074387 856821152 855454412 973026981 403799508 559250967 470441593 489260304 345280389 802696026 371029519 876453660 377275407 795278724 922296541 946847428 811366346 914574491 212333436 986533217 120230136 933152782 841560194 879262655 134686628 465098880 265165032 644431764 583835296 976616283 23181843 361014280 152972123 865972321 86647830 159955389 288115198 432604097 393230586 468075189 446631991 696833959 784469214 824875568 15057004 467691918 529927949 666478286 258498930 634674814 332706999 663069777 710172553 768246147 51193848 557489889 836228096 865915142 243020900 991842704 225122267 581318560 616530666 863213614 115961404 615178631 595231681 863065274 642564768 810717351 746383617 988874218 882042935 961841695 621749247 935161354 572303224 757975197 610818127 639772908 43193 956450807 234764284 936004983 714393965 978335505 1847594 528146852 659027243 882959755 826371655 952083242 275999968 494237909 738841410 809022400 958981918 983032082 253460988 931267518 409664984 918243142 576936243 615439902 492304204 891216048 635669327 796674778 306966274 339937253 918933176 988618648 313811665 958690224 697678978 771714603 831177915 928712413 589400026 937075203 105261948 707357143 643633807 874863430 746254163 925935326 565651436 795462355 250508619 531600150 825199989 866158883 754722917 909712945 721901848 905591766 482759371 588591068 304375028 596312259 435248135 554658168 948989534 961302278 985802749 996683196 950124881 987467437 404859176 861080301 372253941 733648583 932650427 934362325 453818627 975191779 946483302 963806976 886283490 919440304 589419858 980995624 841722423 938657060 594502574 629983933 983067452 983568645 415031967 894147509 835469610 906659764 290935146 876660133 625444087 982386202 90064704 402906779 689404747 719709580 646606449 646922285 515246563 748124249 833630224 863081782 650648519 737822147 26949747 371008074 883937950 915802022 193597260 212783655 931314252 976139637 266874495 800359615 374275279 625176999 441189768 441869287 362350342 728693839 232389290 385273338 164916791 998221076 152947365 575922499 112104366 990980012 207986592 899784866 500544005 890457772 903093198 970982491 986630904 988551170 260872772 482962469 692782127 891274210 654422967 940588458 909193837 950847267 471232481 679090943 633460453 657943399 356879609 557041693 664652450 828658063 976017182 994393207 964214428 972654682 487793936 500029102 936561021 965230658 132227675 721121415 101894513 155397668 534050353 674343239 407336926 618065052 701911784 974900155 237219838 942247890 115690130 338680438 87566527 99530311 357079667 649086154 777353168 983818715 110127282 719254628 918653732 990636752 454872534 571256464 556828501 603200134 889678234 935218826 425187510 597983865 287814905 780892488 773645511 952864669 262837665 617900107 674384973 929352353 455493563 976627414 960400022 971902239 479370845 727241410 254924141 345729244 168490834 929611762 554860329 769029226 473519556 768771223 552093807 650789949 213273930 588893656 156118129 559930911 135802112 290650483 947805119 965458131 655234258 909179766 321105197 956537741 640439117 936433646 882755446 915289412 61892160 759576548 141710647 229932149 825386325 958304392 407317307 790889326 959931461 972427974 682325079 858024083 752960445 934064896 1348336 330987483 566313202 608865943 804390838 901063490 408841686 888638831 465362548 495251635 552830062 689196874 652631660 730924591 758721159 847444563 747872168 889515079 266609894 774466029 168990643 804690802 484152925 572580915 552725366 751462512 795177056 841805720 374743855 624910284 656243471 956043089 727784709 988982243 901141805 937922952 412593718 475085206 971547095 993915048 854215490 992934698 278786009 340498886 76624884 656629910 315102984 879242860 10415418 853051847 953658554 994253307 671852880 705781050 395383308 710792622 462806811 684906722 128601923 579838331 951148747 983107907 255150517 873545329 535120374 824338807 97852816 359209683 973680336 981184656 62021157 295445271 586859246 724858533 91168172 599304000 833345956 973536793 112229777 918922768 341425008 681486218 17207423 852565608 486087087 905384833 159693560 890038676 322773792 970487521 411464900 777624722 312274950 404114154 549801749 899752835 159423008 669710250 30953094 908091258 562741397 937055390 755526254 958261925 948785178 989795784 469832806 750556311 680931226 769119217 355776588 507732651 436669014 492536307 460245133 496964447 174866085 773716309 903261749 953995637 338434694 993864576 612789491 963439510 968331634 974603174 209929121 433941131 886563432 971697790 183184011 341299625 660756533 825935080 45481897 585656543 293411317 568603424 906719425 955998770 453281600 579227318 176438642 354311516 517349549 650489377 449922426 685340527 628848614 768167402 718635902 955124446 629995676 727562577 102705569 640017566 554233536 615167654 738761430 838810445 936466671 949166818 990371208 994575656 615265640 953451253 276558983 580778483 398392414 742005651 570664498 595723361 249731698 523959447 948024742 992002897 336327546 918472513 298413335 930049211 54126927 927205033 515099405 687458002 299469907 341896603 328469153 616550540 333097811 628448728 714458861 952596952 614081074 868561928 842248088 967791710 990946410 991435382 689933056 962706425 68988361 185526644 152366225 237656087 905975463 916944363 961963774 988973856 257080595 989122161 10985825 58752323 539281725 719509756 314834377 505148104 173861852 764356681 351491160 657349255 268991 908282569 916739831 995252124 594145345 605391850 93037255 658133242 740313583 795815740 477395588 826372716 77756033 951830003 387278492 978501411 549081393 773264143 172865282 866554739 254120546 968469080 729360616 951096157 340536170 598895953 963718574 965301568 202201552 958875808 652350261 966176654 753948943 777975675 725005227 821454116 946732303 966257769 44743085 258449016 992334155 997302892 51867353 824178750 663646760 679566895 142527140 600500379 276339231 583752223 715194818 849507665 909405486 946536098 457991218 957010860 692074578 847856654 888178794 921190572 330118221 465382085 734321055 869941125 415766692 791748828 125241948 785733988 940704101 999026207 332010976 610566478 759547350 966533019 297386775 833569316 662393795 764837231 783661550 850709225 883783842 901467370 932397466 995761114 672025696 800993632 115522998 678417477 801361693 891769022 614602202 623925619 706620954 902663466 311358838 893400044 728023298 846648956 822217492 906050799 983380531 993100005 924149753 964360131 4582470 981090686 491912499 584424894 628593418 710196028 197303821 885955785 820829283 948306014 42909878 809951081 434310424 956229087 190346089 536490230 25793579 617876107 270182576 473895884 449991284 559292563 767778981 861617763 187342680 980750150 738314929 776214495 814462905 833432026 897572668 903733204 896407983 898648597 843340684 876221428 49356390 723980370 125369685 835444174 74156297 612206287 810431572 900708515 229484891 334197353 238222899 599170522 546333515 560910204 185973500 330010065 822822096 832473496 982761353 991077522 176342260 888196033 582678568 958159738 24537244 880552258 497027672 543857104 459085453 488457309 889770820 999969672 993567736 997598022 614846031 707931132 883040702 914321726 737123752 935336266 875810143 885246696 716610788 764831306 269739239 613345389 807758550 901578431 733726279 996456778 812850878 912152801 859699966 887689128 233477062 996096461 508667937 528643021 744601296 993243767 211092048 961088153 854597244 872250569 9258098 428542733 508965167 590013792 653207959 949388401 266608 158651138 937133292 992002074 862060545 901768450 24414870 76404769 446189703 911620367 497244438 832390479 735294759 904760139 428848056 514292467 842489130 969882642 415302704 996862502 599364160 875516484 621852698 927365705 418116777 764214281 122592755 377064752 282499869 627023075 145721607 609202003 919789430 955109882 631375636 958780300 13219799 638220687 762916721 812427631 997732020 998677354 157467075 350600168 231887837 480682489 704358128 993378919 347766314 532223787 207753576 246507922 833648945 915797025 880033415 919233656 779640904 860570338 141209681 354404234 578404759 933448877 589970351 614004647 973264746 991487954 867346750 928443083 379226547 739971290 540912701 613260440 636077619 849674686 725348364 978923458 343855706 715652580 229217693 866172716 199641857 885602650 324405653 537910307 532695105 846527898 409487276 799342263 551325438 925658924 863848257 977596704 963624599 966579591 898661429 939122758 656213025 876206272 434755299 941437970 578005860 736035120 749927323 920731712 105561304 274502929 738596719 979304065 744670455 803878110 100225943 142603303 302935265 847208799 883852213 946380593 478742393 919742459 920578763 924925297 394100589 904957759 485666755 728053872 59946193 607212376 514523417 816143383 919374588 937144920 466958445 486016812 181313066 927419928 531685863 858837040 834528870 894992514 960014357 985990742 198695224 287834752 843182921 935842546 914938341 944369874 145929327 276068535 508897408 896966136 891964164 930002343 213488504 798271501 823073501 893710969 218915419 434705016 591107557 825782277 260621016 388866009 960449622 989680454 605100251 738914447 139986207 298388164 531500401 711042821 99075731 441566691 845505325 964749500 787064026 971485402 854627669 906048867 645646266 728715306 748905993 915380774 556300454 665774693 404083706 708432984 971853483 986679250 319747008 642456340 340977520 782606404 354800949 713827961 974921928 987210323 152890106 338230742 593026964 941631618 755586683 873730785 556538304 767597848 598607122 905616439 504572292 607718518 642370734 719910044 196166397 815241191 462248632 931965909 112118226 197743296 322103431 646297699 768211735 875025116 876047306 988110105 934519293 993843751 483510867 548448565 896268833 942659227 660641035 960962114 310875746 767805926 13339534 230187484 376780310 746590394 990022142 995571252 42789624 690030722 314976438 680425145 106060595 251283903 141549299 903709218 831951516 907663088 503053340 739760884 30715774 488651259 443630718 568839621 291575438 474122218 852470516 875705664 129885088 457164715 845721166 977842379 290279550 748892294 143330367 431325226 193030220 722624440 860292888 908336870 136892966 270853157 114602518 323663463 159126750 845381821 600923596 697315510 871288902 893776293 623800045 914185966 16249602 92979329 950866922 986391847 580370142 962765309 615389804 972266971 838636343 981133757 800406122 993652865 376114315 954087148 198539193 555462787 279273457 327426846 760917987 943543821 428261389 614464339 543360087 633226930 780516680 943952593 259321975 856353661 976989966 997094365 206881157 524323460 749812932 975854654 625820609 928844550 133439289 230536642 432611671 795534640 984824415 997824620 194694896 503116320 317068085 330773826 339631506 563723948 488235278 588058086 85099715 663677315 890883729 930290477 488682337 576069062 901189809 977327042 593937500 817548483 436695789 825890892 542131092 787379850 544180803 613385699 623209696 913680029 748453894 788646770 140699095 872831580 927617404 956481536 357057623 815655317 815340780 947944253 411741106 523305557 499229730 753402934 322374484 854351375 912474090 948773378 563647629 637289145 745051336 765011589 589207022 872813854 667669855 693003443 856618127 880435589 489735654 752402386 797394978 804560011 409282758 706629790 759558724 916848614 588735399 857319333 336238906 437588288 647794864 773578000 769692154 888215644 153636866 635182794 219045843 683169161 11854139 835142348 34819148 364793831 681519434 993456069 203867807 484327764 857310549 952150433 309517582 647456227 139303873 408881201 704421121 947217644 646581091 813120894 625766141 939789790 883290483 997047899 44880778 431214682 376118889 504099975 80779374 746594280 794061071 878411290 793734927 933093793 457770817 671373022 62455803 650497367 582090586 878194411 286116095 843002082 461863941 992879789 801698859 802158960 62811360 960782599 115981489 270430202 22855995 511163194 480651924 810157013 371899210 672245807 874098776 960894810 577290660 657443619 879273462 929072668 145599444 977874181 897607468 977640422 844903325 904046167 789670922 926864689 616162024 969909222 327922048 977235196 634180171 785657954 606451128 623075342 509995065 839174459 542240357 888880861 848033128 888824518 282956223 956307284 822515955 960240339 586916392 775305113 264296250 829811067 958728832 986586904 821116136 840661808 922517036 984043571 443174640 590701804 486420840 682932425 957481398 967331511 682444923 835548705 923894892 970941316 654168717 677199460 189170538 934223240 35900289 830412415 262857890 275171183 549582827 627966104 300876111 880914887 127475657 690528278 518122369 736432751 798346133 898173742 416165901 569424593 165150808 195664315 72865969 630219245 382421941 761249810 62899742 849724440 258658830 944544515 100266949 264342618 185879945 314870920 548341991 868592434 698438569 952725939 93919616 119202592 148082956 698793472 640862022 709023006 387288855 617749341 556807357 597602359 27204682 327389821 219630052 418514772 759177642 853317189 940453578 972629289 390256863 752505830 102663137 625599131 964188158 988232424 790709784 940908347 454982724 908127124 130936014 509626343 109502551 211784028 571747692 610322237 579132343 954403575 933512794 964924883 648672959 914158774 271365081 807539604 783000387 938759806 163928177 809662695 823880293 850506036 632703211 719056238 656792024 781624903 389996758 507776577 395227270 793227000 157057522 481294768 549765269 857128217 530011019 658672781 659279991 961537693 741079324 852491226 970005291 975707837 583545929 848535959 982465605 984449929 361487813 371616173 951855003 971190572 2929374 109029406 651589834 870214152 387617448 683023871 873961372 952885853 846307830 928971786 121104979 180746340 9900598 403209677 3210225 670480042 928827521 955635221 544967404 818317101 123489006 786339106 553074171 860824847 520239241 854105525 978736756 985332322 39956506 916695394 106434458 925332009 913886195 968878054 894162963 949350185 102626725 614447494 958635327 964729708 861772411 913840598 196237451 535026036 587716037 952362677 929025976 955529809 393226164 980253953 42240418 920229718 858517244 988357189 783756353 922724494 916448710 961863722 576932030 673862298 190567301 367311999 446964067 900685047 407186071 764690718 190107530 283185994 258761725 848724295 5620308 464997704 356597375 473676922 163189900 554921772 911314107 969643973 867712901 985834216 286963382 927395415 201608217 410021439 281108263 515548064 436448246 997799243 680211302 941035152 534043400 564863063 984091923 987765232 511569804 883096810 492613332 566101816 128500110 477912421 746598803 907226857 681182812 713387170 732908218 884675069 584950385 894541969 673343827 812361547 34197435 263022877 737053519 865742170 379639889 944451502 130571196 668651228 410371311 978269970 469892537 640093243 242506853 286003796 125831452 197021886 889587469 940788358 656224624 948909975 754938182 830398807 282443482 470830030 965934223 999607191 69124678 775294431 676947510 870228854 853670438 942799183 897004891 935195545 412564154 850885760 657156091 867053372 687117669 854969622 266516486 995192445 80247285 151099885 144487470 897609975 2306142 187383344 700823974 716264487 231426953 388879522 405332386 707506361 17136026 524401022 596009819 747199056 624634883 737785048 685394754 965514056 347843175 424503422 593387946 929717837 230859723 742149345 506614588 783902740 311368473 396671446 446954571 802287672 27606447 183799851 931691586 943771019 423716652 834013149 817285665 920880471 205309223 544963543 133520521 267472246 6121150 424060757 375814337 628915564 734144671 744626954 267643916 936547544 796131984 810886629 497735304 771108418 314929157 620306406 692975756 919835417 229149380 755030738 850207423 988347086 970390203 984304664 7519586 336879146 936412487 963293614 115392438 529920408 825072267 922853971 55739892 170800665 435143055 777718327 805022760 827711549 601775138 943261415 582923976 936582008 841339984 880832675 902545225 980162911 307240276 816087864 23592960 144938363 624820496 774067197 417736563 981314182 584540092 728805646 517547233 795746114 313682438 831993276 854760025 875136633 914119875 949455696 890998142 974749208 530893283 835281893 974756967 994695575 162917244 396339149 352035943 476886972 395219904 560620533 936931551 993995088 128559433 799090500 228164687 522654217 915002925 918649927 632252444 937528864 924190082 986943607 433369512 690552484 865964046 910604763 194878578 965831099 327344397 898528026 495024057 546388723 78082990 809113750 464783245 695960584 959541049 959578905 681729504 768373606 634157487 830897586 171446291 974992517 964023826 964735589 289429462 926280758 82892679 135827822 629705432 781348037 693637424 699167004 240905741 589358774 164487483 585596647 912688403 928263894 71854174 368151902 521348739 964282415 214150690 288144109 978509096 979118823 877186876 903879880 102942174 721609588 71194917 702147011 779160116 867414847 140598680 668996875 945997134 972704711 86442318 545249908 544701408 661296757 434803185 477332959 685771369 923433793 75584776 203766554 417401304 734578747 27048902 149988665 861315346 935847747 958620828 991673769 745535700 939774921 496065612 998769466 605820133 760403797 308514013 615582147 502062759 673834747 566830582 734014267 609207235 865461071 945263749 994746623 269973904 434750352 66551970 801146634 545997464 964630136 793772264 817962495 712085618 951587361 80800385 412524227 757225387 891627121 71988079 412713604 38368521 444766228 864363294 880752536 959339693 982236226 253761563 408916801 654201101 732707914 792959499 976608079 392109434 694947813 272004164 986329170 395514636 788761121 384627908 510178257 109885945 975349280 302513763 926941793 763443124 963398058 470021423 910790059 124619764 557175012 98220284 809799289 800691552 845389941 103993176 886895706 932399422 957410765 830164891 918275282 970394019 997313889 946083177 962176420 753437455 827427614 463252727 801216690 917766004 923678160 485711559 665866728 964879867 990272103 889033988 906842390 741922548 890057276 903903232 953241739 456460435 787560178 282307152 413894187 434381723 818214993 460104978 688687980 433528794 569175409 426068143 603629248 272208940 936374494 79592418 627458938 389178360 511531449 33011245 737689308 542889008 622680334 314061679 977273374 196555388 404059721 800936043 950562079 55481102 751046463 842793915 955152431 822199262 898241929 528246767 773600757 513105462 728605152 567898625 651724763 790204744 934975701 937301514 985852397 638992494 949386730 390111033 726749506 467972172 778358217 809302676 865209755 138584931 980330245 52115243 143068855 423446038 593612101 230040404 612588414 717230882 826088358 800433705 808144000 23413797 32927929 592858615 987921325 102285737 782530220 456422719 475660394 716266669 848626310 329197200 495607220 589053680 977080854 83113849 922717296 666700398 992469561 148752269 868819530 582449269 829917380 134320286 677191541 936108050 980829178 797656579 942845961 424268913 668887932 414421237 705531112 552131239 679491494 155337323 799255583 701276986 832841354 966219931 966720599 455743372 477138447 370830781 486115740 441726263 513795362 444071793 515032057 666525710 797769528 195095344 909329018 219114330 394322990 522064306 790208076 883835396 904729721 158610619 924240819 230091909 868017179 202890206 892607411 435362300 781646701 666621072 834823729 589768043 810911166 998089398 999528291 638227282 790383005 439261023 739355333 466495465 858163637 452930606 467403828 78257098 107683041 39682313 986971075 736016840 909213804 112945842 117264134 700062584 932454362 373720131 564302640 717227330 934143478 551485804 903023834 227601831 817808541 537336677 927383491 164978000 232658754 331472687 977922976 976241256 993565016 129601176 525948359 444334052 444624931 435864313 896806697 23452616 441056771 8862160 50971980 375737341 450560224 791701390 872141729 592792399 796388151 184292003 231011252 284034589 711318483 696989169 814821164 627904223 863519371 696235972 877261730 590113033 871691968 466507954 480061232 567841177 815357523 56062380 836492334 588476597 962811632 361250326 598323886 683887127 797019641 473509847 961273529 440538380 508472259 567392969 865534886 559130029 705081650 645639339 792900952 322000296 640306287 906016306 910159242 665140101 837229004 810075013 960063077 558581412 579443901 199690491 719723467 634290723 845648978 653044146 653193871 424111846 523242080 101723105 111993130 768604012 931431056 339259822 816420586 312074854 347609196 545607118 657330980 237246656 356141101 643340854 927350530 792132809 900548326 623114817 802401599 368736264 653840956 432359121 966017362 335421693 854831500 194765181 331912629 697243870 891701805 92138081 157435350 870885163 953790060 966110801 997368486 503888786 622896700 206393141 478731650 172447754 723409636 945154885 953090247 438348179 949553823 611386359 697386535 357477087 782416203 429905110 537719270 49119980 743155270 923285927 936905736 519873402 632738010 490926592 495346818 436969176 462465104 981436803 999786718 684129802 722482050 575553853 949143534 656097927 976039178 78813929 398503577 882692956 959072235 906801120 941461176 518453617 936632674 648831421 720751941 419689501 446039816 667731902 699641696 86588507 408049196 524448145 695618870 189359983 490921322 749677002 978277185 168271010 683200782 591699951 882360061 710623992 829322065 883650805 945018882 704534473 844382568 460876533 474231528 629897880 988735243 801116697 896537113 103204226 547476551 217787331 381086513 973166556 995339663 603601929 741237230 523277627 630437720 978302977 996416719 781201666 886285439 522398177 656148617 158601558 263602097 705878239 736262630 339124322 954312223 847142214 911512016 863590830 937476330 7567948 78626536 87026522 501118201 550463084 748970131 691815593 771387344 89180953 319306332 535427675 721341575 260583451 521323361 427489387 619066415 27670685 349759954 637543414 933204875 103329903 864964417 602510420 770727878 449359908 981618245 800023232 979613094 822469017 932062197 693461386 868731471 24034592 911595598 574964574 878638434 865311824 936493770 733755786 919502078 573846139 644608676 11798301 140988494 568943368 897670917 86513933 868609279 283401673 979510585 303492731 399008540 397164189 698803667 522268247 769576898 387379970 807911539 854898059 959876964 143405111 590386967 62459705 461850144 532843285 852830263 515317689 811539766 362121822 782871390 486935342 882124715 72625324 585990556 683112240 795534818 164393551 637385538 707649864 924977488 928295665 973924951 989358582 992168064 357099620 376450031 982121601 985667286 173723592 382853160 693465597 813286972 9587558 541388890 718367131 794527365 220581993 964149206 39836515 856468155 973993051 982523810 28188839 595889095 105680882 432636580 554937134 962732919 904266235 942622791 733222532 798728522 466451549 545142723 47742842 147700171 764530596 768440616 323437807 486191127 306492079 834293871 819162349 859988224 779830430 799326011 868365309 961552990 503127532 895707062 669739558 977466358 252399625 721116241 473242356 636574348 688781752 886913577 597399272 855896994 68123842 147855105 780760457 973379781 37504510 810239949 402582720 530030064 326547806 608413970 89195270 951224192 749636173 903103914 428911855 546938573 377691825 892192899 284421783 308856469 202549477 613186419 845428598 974049981 937767844 994480162 392475872 413807644 999428046 999592294 358594776 474023701 8233273 132457457 996627235 997973053 225381580 488663032 426949586 525515181 192872747 225891105 146736244 376340415 767230429 832469212 552109934 701121461 968427718 975424297 176211230 840428856 524833620 550881633 471976708 637717171 302325346 847308277 626076313 858673677 374754716 996261996 672985363 909813081 788281623 947851656 193408369 859444555 319584829 386702972 234831523 554618032 260631462 514915571 919456617 933702491 652635624 961873615 265370923 380352272 611476462 703144187 920304031 997079242 330467520 954497321 133875814 517734246 380105062 576657530 927103005 955078910 921421624 959596229 173082694 676935395 613923803 982864353 724907672 793127753 550010457 575360419 350591751 421589740 238883595 753659610 287945242 466365229 70966239 452657585 149397424 178624034 11176854 419321995 934553518 964476566 149084440 810907879 677643579 819225902 344000043 514992211 163826999 178241774 121455570 433619079 813532350 894718998 120324308 216376276 711289990 842031225 188125953 735067743 493937900 573845391 741846680 788201682 12828177 465417240 975730373 982543531 322277957 457279770 763981764 997270874 805421113 895053807 103840812 715330611 499395699 991702400 611751439 836390085 272965938 678802431 81446492 625722193 216797623 285267203 56582244 545430052 997562291 997957375 477650436 689160550 379454020 987776066 271599224 686763237 221016507 858824527 285343975 733472403 129981988 420633069 749339948 845126744 221931348 363306872 685914570 852136931 655174033 914836093 851729833 991221536 380284912 581985620 686657732 704115133 307940554 846947436 301869346 995400271 241817856 332734614 863731466 888211038 274805786 501109804 927389751 962482965 622615315 911543372 856890532 931168665 763140179 782402996 468269389 814678656 775316243 909442410 793990915 852152807 852453036 988597134 185989772 736025074 950062675 951255440 873575600 967832550 279997161 634923585 792977479 990232391 293813658 495906906 494131492 912054855 888659762 978453950 974275381 979246059 59327170 323364310 141734848 383685223 667852314 796303954 990115693 999354713 43918698 658888644 506811510 510151655 396137574 594029819 418801979 638615884 888783621 991155880 714119771 771252859 744418373 842925155 76564355 848906003 401102513 691010992 62155119 670321787 798447451 972879044 605069862 883500623 339126625 744674148 563370689 720602726 837248381 898752493 813737240 976474624 977424567 994861261 675783991 740705317 426781174 615854673 379090841 693083785 775717116 928384673 460401754 525074757 152441288 411405614 147170270 238414948 396780706 844695720 988283684 990146027 249706780 346680821 397253460 657553848 13730299 907382228 918954046 958493108 395652278 803922317 912008378 954668296 180297235 265545040 558184250 615023732 175596674 938719090 843897338 929906876 34965868 300406138 739687136 842040649 464068781 486660413 918766236 926739658 130217326 648658051 333777788 937364748 781862820 943386423 544527245 965843053 654178974 768461230 266343403 614312892 423540129 628012384 349412605 410448310 65512054 948470282 38674600 631708408 156417532 627664800 598034092 913455375 112398839 183143596 162054554 833841436 431137865 870054663 933127312 949075149 566159763 864832739 776496073 858763663 948456049 985972773 602091233 602954276 787555889 979682798 219670935 223260312 562580082 946896810 857373244 921036999 777449890 919585141 263098474 505603675 158143614 257406853 921343886 972412335 578766247 784895436 52121776 836206684 851783846 860122122 385347316 592122247 808547999 843994713 352982702 717963249 811692639 835346863 570054924 669928904 92991553 401984112 382203970 560410742 306517727 810552450 112601855 220072806 179427404 289327884 504226016 852193031 663923299 911033850 888550353 975103517 558817496 677016425 377813854 949659418 101148787 936900722 770850469 967613040 433716818 866456543 224343977 564302727 838326132 866444217 558321932 619655865 800184760 853956504 896368647 967207478 694524764 928213087 113503213 940998656 868316330 977212296 55823620 120366812 40307317 555566734 381911420 887231800 247942024 577387763 763119318 918287350 95674873 522735638 535150967 562863351 313454385 603173228 749536598 877536545 734390578 884605072 873716013 903457962 116523273 358461629 685522169 992016504 526425646 588676825 903273013 956824831 915049362 979166817 871057699 977615948 657248051 889105616 396105829 447875008 857676449 925124820 514929203 714290739 683886576 983215056 148077088 255740039 427584795 802532981 956093526 994256864 429472927 435587246 94292342 345752958 408627149 952284048 249774926 463044414 591384525 999855182 554146925 704482099 909890103 988938957 381942483 754371962 687084664 778489994 380035023 408300818 324837385 815238043 773033075 903062890 931765427 946254591 587518980 847602913 685693599 836676747 486526363 805740982 299540764 407448775 910115249 961033992 676936674 931823297 688326829 696772860 254222407 411232137 689240675 827858321 33435533 109335204 114770190 820259562 924366207 936589737 614525980 856079962 632796507 794364981 99865899 835625183 891579162 962888492 287666002 746880981 680250911 870747683 857403652 978411637 883440102 991203984 463999830 935501332 739652312 944577814 34493073 376431218 15831161 364325194 574532984 966794961 352227618 973426246 492933257 976874211 960657803 966087450 924898005 981185438 160925624 962657741 506178414 829097291 337954821 582161037 336204727 960901474 431139341 943381197 886682243 977604862 279508910 854566315 690621365 943232406 429213601 973328154 104577742 549577370 280977424 599071581 172285159 658529694 256714158 827397569 640567549 853704198 881839533 919973568 83361784 901931545 896452746 960311101 411758661 485207832 679142433 753590233 651606832 965018364 708531830 802571305 554918888 757518367 853755778 895037227 678440250 983709588 978733478 999615681 928655787 977054072 630249960 838049404 986442007 991463868 818309355 890830200 195867785 659344040 881294486 890504990 362467097 785252481 262285531 841350054 440514340 885516788 154157801 246069314 953988801 966044853 545678186 795701945 238955481 540780990 926030282 989017615 869201043 873263287 880582549 927849461 220743558 371400221 573685657 769139863 967599978 976991633 448220633 997740795 240347479 460252450 315069674 430978404 95349187 950829043 286364330 709655575 970375719 994604955 959103235 987542212 467108983 924654606 787598025 929542731 496085993 600656914 770416415 908516029 220373997 665629474 33155721 400634156 210535647 807205595 13043374 139945105 274879395 562064036 340965502 492182082 907248354 979055931 588711517 940562441 285558336 701666738 141052304 381832789 480383278 700739734 540618289 799242717 224485540 315984800 520439153 652977828 895150070 929016052 783918227 983344580 689773788 899898088 930370266 995640804 688048574 948377697 417470467 830125213 432754263 771400900 405941594 944472146 409151682 627340831 701358713 713484775 832497747 849100471 183459890 654587569 22577826 214421474 214211798 230207820 576664103 897608717 38776180 114933910 839633077 970465699 16438365 981070628 23092760 265952051 585601725 986467489 70078495 767994495 751287241 898929530 34745494 981431458 569765998 723922512 711069001 760198888 545813099 843965537 564177401 856951301 431729193 590792989 967366993 971036607 455916965 482098024 261922866 959154252 748026583 946311271 476345836 840779962 44788053 112133502 561580056 908675008 533502583 870076983 37416898 815257552 715480181 977939634 744999925 931156265 203262910 488815752 413819737 901664602 149615667 312688412 758784357 803837613 264364844 546357197 988229138 993880472 472132370 805036651 556223619 580040328 491629068 908530602 95186084 408818204 364605636 540399474 275303791 547443700 859780605 904454024 819943296 917984440 938472957 976837280 10686204 547110145 291060932 422124277 440158832 924140188 145810429 918063592 79099719 823039939 467248832 800582387 836716002 976869762 533217216 950111600 515723659 887439585 947226342 947667471 359782690 817903717 121817237 806862263 420114011 875159014 808040210 958671143 592035526 962004443 113790724 149433151 22414812 709791099 996357242 999353241 130366264 197876392 690168031 739803487 485291849 548387728 306628192 356348447 519343366 577054881 577300746 960600453 937643931 989398453 961426377 975389541 550291288 970443682 138882417 309797001 56035898 639162121 862281698 922138433 415859521 473340597 735819483 930706436 640863184 776098782 662269917 946843430 147305428 471311854 986422441 990704726 112274619 858947244 938356462 939956175 593091483 919304736 384379399 556401784 824106554 935188852 658718160 941283654 914765288 959003010 971032625 986897811 863178661 997453869 489997297 725408222 325231888 415946405 878505565 952843252 648972960 696965683 662514933 667220615 22251978 662190454 444112160 566826210 374221743 390723134 52281163 459098348 372210287 951354703 1725443 951353692 276808408 852447264 817406302 835919055 412077751 780564068 632243887 803288815 875164698 950023442 490045644 884891833 340879751 904682469 961886001 973813913 95907679 508845380 622138903 667116542 195718153 992580779 433405228 831813967 644523159 806589397 836904742 847365683 514418480 824403673 811727765 994101888 37153708 520667999 941513045 986445792 165615351 333466711 261967359 564424264 490525933 596349001 279311807 811426472 382863978 748989806 164020391 431528605 890104569 946166335 674526347 750348226 980987835 994316529 607006136 798246814 777425935 856755089 356696999 654429058 823680853 842107528 671843173 874892062 504185927 817199215 260109395 538180241 202057798 382889217 618538940 640424281 939112486 969566399 929458443 998374414 551556242 834591262 266846512 802626598 402461107 987995167 324496656 641138236 347703175 447850925 799790698 868166309 973457250 994127315 724427639 957719135 164885786 844682322 366585578 616865673 386730922 696993724 355350948 629585397 265836451 821558927 479484122 995312216 369265068 759417038 736218051 913271228 531799317 879670382 484273268 589517807 952201343 968365406 904061964 946227080 389597010 942718446 759123311 781022046 837383888 890191357 182501717 392050552 744380166 907373377 7557292 34027568 754346202 980816584 36239969 268072760 510721751 964440118 50449479 248337657 303724584 643091502 721368182 748222935 294199690 780627815 469096776 760653753 61014433 196951141 825444467 868930279 359226634 722648269 291041894 386426772 468076102 846154078 733902066 879339854 833634973 991944560 670955676 952132086 825295112 862125884 273905471 342224187 398838747 594265602 449079645 853236004 222207174 544388912 589910158 950590454 267746751 301635980 472891817 782563660 625029372 779062767 575158181 924649330 748166114 912349497 431302241 772399457 573949248 764528054 522752191 530759384 723075853 856829032 324152219 895495027 935408268 975028171 305326637 892711914 279216943 857415251 995145869 995902965 556836004 589004875 1735862 11070894 314361837 374886663 897720872 963382506 358425584 897591840 644533088 786008440 151771411 268006743 426443610 976271377 895265953 956155108 501734405 717047315 668953820 751174778 875630807 951259327 668695949 944566574 543774450 819840352 811084450 853017426 71679758 129757286 112962383 343954289 143935160 878657399 200989900 466422800 211659549 695280571 983095785 990687059 388702924 456598414 981297062 990780930 624741521 845349691 228061213 994980957 85543202 555545463 41994439 294541250 812495754 845931643 510623377 790985041 155159003 737836427 640708974 656936058 120013292 688347964 907658244 964082639 369941453 463972044 564695320 974272227 952316941 975792290 564428866 760783006 444837120 676145297 280568043 968270028 548804623 956392707 696676224 780816456 271641516 733255507 13838252 316113557 452401975 926285083 413817613 812542784 966759818 968818062 344427590 542568827 543429956 700864510 56558409 354496942 919771787 981512119 378612849 383106738 636081214 644011351 977424634 991128884 145021886 206555426 286138097 727379939 587918489 957167031 843915316 849481249 596752028 985780319 888266163 907513682 652824691 674476190 995878665 998648194 425082716 892504754 417658332 969346811 748658097 882202621 127011872 788244530 158353751 499102239 403143799 977371447 392726461 986313878 898184871 994317054 302874982 870981551 673077880 936981939 699225106 788944001 413341959 698291084 596724922 726689464 538585496 809176411 671874892 720604593 556441321 864766791 503637738 647278181 188064323 561505760 822221314 974587995 956632839 975734057 218407354 279609182 170466488 182522159 404450347 995565775 914286624 924261133 193599101 310496915 585595128 957046708 239473475 635359937 847246808 935545207 839808181 902624099 247566089 914053424 33093064 874550409 353652623 639894574 783705406 894856113 646958910 655316549 344163874 405516775 227700638 884811374 166814893 471081486 471922942 657182656 459175053 723704014 586739543 800857098 988046832 998675083 801781523 820353435 518400399 682124024 701880587 882660640 265709060 652140307 117615246 663797419 260371764 760392770 337486537 681530928 488019513 776832470 278363010 381744072 465564371 990183348 272749230 397092184 182700787 752629129 208828148 389518678 130890985 806419014 188934777 488422115 343949141 787156895 970832239 979173865 429111927 745425608 38160950 44082199 775830794 835824287 621135649 701650252 290644426 347500010 779889189 955992246 48104916 657593497 944882269 972119459 536114681 970036009 219221937 563430409 737409173 949383215 682339666 880540223 337920249 700185532 369561207 811018318 788453730 848405519 742118740 883728016 908253209 918222383 356602383 913823549 832378724 927971087 258600388 558493272 322735916 983848852 644267716 706008760 961542718 993211077 800076662 856116550 787709111 838257859 470426064 804361529 266105099 377348024 277569958 797254472 255130616 845879185 695264570 966540213 922364304 932426623 91261169 125323649 203088722 794385155 291981059 805176735 847430077 902705661 335738687 550853222 660429364 888460643 929750946 951538744 618288231 918653453 450859270 499557705 424119914 933401399 674841644 963788706 391975644 805083659 289051719 758873344 206900107 241944470 301212366 755443454 759013909 789723446 406777089 659107663 822708043 921413987 48113875 338610676 98180055 154899403 786408315 920701945 502586478 631053540 350403143 856437660 822594698 874189258 790193320 812273285 373726599 633465959 360625596 536860702 251284946 301418887 919095212 932187070 747957965 887564377 910560701 918111194 399314922 676521871 150870274 719800887 521293265 826910252 479349872 564336250 869873170 873776855 479803100 814993359 467057620 740643120 821620871 936776007 908707999 931808620 665806418 738949418 251769098 537619578 8706804 517163481 554903616 838862747 589234312 617986418 906042610 920619277 999414584 999494443 824044872 970248832 961301297 965184738 163195513 976568489 824505737 952832161 912702702 922427944 696968403 918090239 38434646 645752800 467297538 597064726 497113937 520365042 846017778 993384419 633274842 774949549 27822213 406553027 679066163 819477366 147064085 569754277 182452409 307044476 198023791 978766340 841515333 866540473 274145546 915856761 825202649 924543709 888441331 979611133 85576628 449428928 52675788 82745915 322063100 606294931 569082624 643062815 455316030 723542926 809782907 993906691 682502016 804689392 861155177 900406118 104065644 275109932 643554367 956625321 33780394 667683321 729678796 837747924 731466468 943622888 103012089 989616963 525175648 990874666 573466917 760292627 48610964 214638345 59514440 795424137 885861289 902482539 73192380 682315203 712714284 820443411 900635899 977929895 794613760 934399973 231758336 443058470 177098630 550925671 725682549 756406849 449474780 867198331 412212980 615436120 198990309 550228169 89822407 403177393 849376915 896077410 645526719 732684733 903020996 952357041 767428607 844054366 33601099 549604465 387857583 447805716 468231639 684857616 884768731 895309203 909245480 967730702 704067568 858552064 391844998 500061047 941456866 949670176 988577761 997852277 788812438 959945300 7893950 849150121 994672014 997038417 776103141 962617222 690048714 890242278 560498845 768003672 333717552 673943290 553822922 673073622 782237314 884649585 534675882 852371399 254795807 993804885 638248301 726328611 131635419 594905223 259941635 605971664 649274325 836306563 297632281 372034209 513225220 676130075 464090856 979057007 769405799 990650284 721248904 840228069 194161773 219797075 703880912 945869976 64156068 583394436 122283733 806234237 81330260 399226594 408348215 591097028 666261297 975638453 459706343 589957594 663024988 876983767 379906048 382006321 418066259 677872462 796946488 925057206 486773846 850730059 980024606 980900508 470750433 827393091 186733616 655521066 252284027 608893203 625349108 727310674 75079065 780298762 208484646 511337874 738103740 817961993 529412511 914991223 758953121 873940452 601533184 741707187 804786069 811778008 869644777 922396744 657441862 851153090 309027975 899991403 527659201 912246495 722090453 800264623 634152311 959682795 91407609 284303453 446386623 748826251 226035263 677216368 832521361 906845730 484003735 896169708 355804597 814980865 460093060 834483255 780954398 907292746 381943460 894567627 13398617 263426829 420825108 635160961 894688386 902064903 614538882 723776259 949759045 956779858 870100846 973107583 500309454 872456202 491775905 807678805 146918148 566272929 523756836 865546898 620076793 975719272 907058756 992111468 623650399 752928621 123975776 842171123 858904937 982223360 193815507 297051853 288900034 921184546 338957538 609321013 184945475 752671685 269341401 473904809 589155703 701233106 834638521 859885571 585359628 781524769 927997545 962224752 780420520 872758884 388960571 484765408 54535689 116130876 838242278 991819034 939569669 958396969 62464316 321255869 695762299 919766069 78452338 626821456 167587347 471690630 114620085 312995331 41806174 468284772 613446260 703369127 705344041 719338424 710063587 940079826 814727166 963154926 807862674 913809313 535746794 611327505 750248698 761414823 737674417 769980284 698321483 834226499 668285591 680165518 449089941 627305507 393488983 793956127 779112570 974698649 547602785 677693781 843255456 982150804 372000509 915595312 669776727 815585659 599818205 948650223 965581974 995595802 61418555 719754544 312106824 899684458 549849459 985801261 204197793 309604914 423647777 511227115 703004671 969105850 628655793 693204996 2088483 933408382 842197250 885868918 169648855 755744275 134798002 782956130 315916456 351957746 130556558 297759652 44208462 141859213 863203352 962455830 572243839 855754169 340166771 611964464 278517744 522552152 615147957 818064748 731861107 758355489 654485508 746465778 670501820 932950673 229664182 235820997 100637917 758286043 381574621 501941537 858065923 969481163 363393675 474129335 263778114 397476722 412597733 976482225 188992950 687863044 363362371 843282441 911549011 973646956 291900449 985608920 493482857 543451381 317448186 885404125 422676035 788038833 530094044 962999538 763647132 955268944 952719080 979590876 984962253 999078582 3870110 509641389 698781178 927864686 943915576 972635621 389568194 581743224 308015997 996084512 721092858 917108960 189094769 875935831 683384608 726703057 833593556 945341763 859855564 915187972 104479678 545761605 185093368 454782767 544236269 957623138 240760205 722044623 733412664 909853529 801045486 890485927 573437309 845075428 7937784 833750321 777792036 954123000 328289025 738588268 787106989 908659097 80829818 364802313 525438446 875065739 368821801 694142222 557384804 888790026 218782091 393115098 941305171 980006983 217144746 752430704 495226952 948369351 819597085 850490885 448083113 797803000 606950303 693448943 27226765 884631640 74237768 810907993 909427094 992532542 454564392 633908776 696171879 704277893 365785303 668968774 160019612 705786146 376367885 475388201 885330515 933570126 178790419 471060135 254336108 511016623 314896801 944425161 114110158 144437137 132880933 914950291 481640741 599901328 916324619 945644131 404382103 850989295 612980399 652786407 949211276 971302624 241401816 375749687 22054674 442676210 314594949 329755780 484741158 830244779 314056657 366612652 645669435 843753080 968066149 992446874 596541055 610339279 619228812 631192396 671790984 719798207 479417072 938329035 287608201 905503188 568704380 757131446 272991510 912380544 880192018 920639119 326992789 578718239 315560623 509416340 640059385 872681045 283887039 563252880 273170230 848565836 905555980 993481522 550476829 860417298 828307057 975658668 828819910 840124583 571641791 873724686 540397310 706022745 677737208 919003838 451998407 962437746 299160241 358500748 468419473 819118494 517826833 546184365 268434927 401299446 210976948 915301892 15937394 240989097 83164450 338306592 642435740 717331467 823865415 903778033 934800826 979266098 483670091 761706913 435179795 883117016 611326330 698098302 463593203 747461734 608059914 762937403 991999088 993947910 725170207 772593375 470178042 833454286 989337996 993092193 994126914 994694643 11246462 62061801 52299379 148468576 101785001 804517389 264043054 276964261 280248933 530252548 433011109 968352785 695931521 765651107 311707925 493489134 165212964 862262650 871742971 993552637 354675748 929147032 191829202 355685210 806612609 942809668 204760437 759405203 328449391 519980256 848847429 944210390 202318341 581904938 437915930 933770907 303276710 654436957 516997982 778388362 659996121 844455730 534827570 766574784 314132673 494416419 831630773 837884243 335911422 905125497 797341840 823012751 214569956 380658025 855599946 875748869 782840780 790023849 260700604 601381546 718724548 946402194 321926540 808815514 116430669 411604237 903779270 955848321 77545124 722605198 829580837 950946429 434322619 751234777 876079332 939621840 933403073 970208300 341864825 680601297 456457337 770689723 220591296 320234218 351297345 871085307 343920759 592913122 499583379 625486460 797635552 942350241 138804085 282774918 728716639 946665788 693194853 865265113 967569917 978398706 699192548 771799257 748793797 821709356 331193334 957506750 811260308 935654889 539521590 967224764 322228700 373769023 640271759 912939811 844614220 883102927 621654761 957620109 352612177 495118538 635900796 947506659 894223089 992932040 152566930 484256506 220383562 555074656 73986989 435549587 155774595 507900075 233804886 519393686 326055405 618681138 947221457 990187578 790161157 904430516 301288800 492997532 725793151 942127905 814584935 872756112 766211590 962625162 517938224 832467330 461387679 661047946 918237177 979468983 312692741 635403091 223116117 624104993 652931783 683903284 232450983 399002790 934059300 958486546 75458958 864690178 205001661 503932315 283177019 554245779 118025828 689462629 714909673 722723287 890702626 962137109 190007947 833326949 900612911 920305808 270461571 741004437 258417075 403410484 556275973 678262205 739190423 857672224 405080840 641426415 662858313 965155280 237381644 396631931 71979391 107433854 343026535 676694849 103691619 446527868 176308414 540473732 753252757 812703670 118907350 433499138 397242817 563780864 189605592 650049766 286056820 855130934 361956430 943396615 21028711 361044047 528535399 893946832 724873079 749389203 815378820 879911770 906284548 907626578 630953118 829762984 94143427 712629309 788307027 878752322 327125996 846404701 798144492 976143516 585353873 872606199 909978042 948142661 495424478 562934355 581882214 705380088 575156523 857536718 267942513 840922960 713420370 964744059 27109160 856126261 28088514 997229233 581595552 845976112 143072879 607668937 65978072 841226325 521252653 544491484 468940264 974698412 317936028 851230656 866762602 874536655 770180831 876787729 444660282 648080830 21587654 623352774 388284226 411966213 154523852 794438493 578692203 696550078 458219774 975191782 306290798 662097306 283809858 400302226 880980242 938301347 373006874 651607456 635348301 785287541 331964422 947371184 930346381 999612749 935197112 945652852 757756714 889055429 972298889 975156774 690816485 809025340 54281373 505765981 23673717 865128724 826286691 891108161 401884217 598559817 786980947 913117431 719727935 887827375 490814856 950350420 171586181 238579624 337546784 903895009 630874074 828339913 58830875 641424530 606588324 920337197 44405574 271453119 517472090 664814668 145448092 680873608 962555019 997565306 369143839 639544022 121808804 394574369 646630219 840046117 174288199 681657416 977407272 977599021 802953914 935590191 574674551 951843905 898044969 960821156 116789890 438711454 756684219 856171439 524989700 853065593 189131500 629845132 552795512 681994089 818645988 838711280 898801797 901229418 534743867 579917592 666786222 799207528 144637 903431690 433543481 787620001 101344252 126876318 261171769 724686370 525235747 714169374 605455675 612466573 409084485 647445246 334688099 898574295 190698644 731134316 550594442 710188890 982851069 994605202 313800979 543035010 215671845 558934908 261468653 642565261 203793528 535074922 896367802 939851533 757490295 955315882 474083155 549416750 750503858 895078368 12590312 59625367 139058752 509035337 192777194 740375219 439545875 700386992 54814246 213551428 790234799 797340376 480930764 565235485 777320814 988077886 781890691 892294958 718109931 857819701 732227778 902008764 888809814 999206181 673764308 945212709 251233843 490880789 251007912 965464064 936239126 965368171 727871628 841264762 507551367 573445489 631451950 780236105 787983925 913257345 564650857 769331564 656284185 967659761 111108376 311304286 718898189 929970281 835666692 971304786 993646800 996905976 927128306 992299852 242752314 747639919 513506574 620405186 864517441 913257368 222048095 538340986 911654555 944068501 51426542 584644609 553128458 608385341 163728339 355803673 38023426 977614529 968561670 998030840 988952205 991764545 440265762 520813233 614277169 875193140 962042177 972916617 737116334 937228122 946961022 986136221 235968685 281946717 874265370 916867555 571264108 684179882 334595737 401023954 697576355 707698714 14723198 469783683 361732276 809991429 540818484 608027850 240658159 941401596 153616537 720713058 785825445 885939146 707951324 907687585 551019658 802613676 104818647 149484345 318141526 810262823 415914812 680477616 857488323 890454652 831040439 942680807 443079604 906782695 215282222 699605236 24278487 538027526 518390283 570929409 845923474 899503341 682455741 959507339 428552305 741644124 715017544 783094206 814508624 915310243 164754352 234362280 904160964 984528861 101077758 447639851 130096356 472048652 59608816 880193781 772088337 795714548 441644662 749602754 213363498 997068590 565951476 724972797 356583681 725042007 33957338 186767480 294770913 634026596 156118988 305193939 66166045 986146944 607267587 936041915 647375334 651723551 625833461 752009080 361654546 818210612 671633546 685681090 387158162 926765141 974986594 978915492 837416958 850208158 640550692 943962048 660462697 973740577 700886894 981736771 467744796 900039511 834412834 880646964 390027803 727080259 888593986 973553227 212309664 427135819 990529475 997046008 716051483 861129876 221283367 529951225 664229381 667909570 477653193 995131159 650173175 884130596 969715515 986688744 421522100 443006270 266032599 393182711 235973198 981656396 533954101 981063484 850151689 945797343 946101823 977288833 301106019 594082657 263191415 366098650 813971507 934556205 36575476 371225525 210216170 597846417 771180679 904489189 498108362 910934766 181291516 592771734 981890455 989060524 887564793 939248100 762756063 803371192 497211458 889435488 279565943 401384144 724038209 872636068 155040195 561399403 204401770 482495954 686517132 901054789 578353693 924304109 583161861 629664167 352477459 773828258 705860150 879741622 233997847 405017850 796302988 912269065 866752763 940675639 478945203 654328198 781776959 878120427 949681831 952234662 171364872 200038120 943732781 968302659 656295783 939159404 415305093 989835712 435954968 659123687 414995271 511361972 839351214 925090879 991810205 997140429 683904647 995966374 339354776 795468850 146957808 897207502 207289992 239439171 775805670 924848775 518474723 562603619 211348609 802894214 420538511 969572423 268639373 416336540 222622452 652251215 336277368 957877909 72237235 399728743 254755320 651593221 770868777 870657820 558240750 668669054 85742823 301721386 163880859 451802814 902947387 974066644 489870737 648649446 702819692 708951114 725012702 798692983 59405309 454090599 141397328 729587204 244051985 412331616 349662137 671948593 518846151 920521578 655516372 764225406 759251496 773125495 982768453 997689726 72273023 576247587 108011779 980855360 822083550 961879578 278654112 476759904 991068722 992774799 114878729 759435384 907133224 926472040 619820282 833336690 1379455 117663653 768127105 890548845 840586960 855916875 198809573 642958002 745226061 904396902 418768695 739579175 966140013 986228600 943960904 984741559 123081605 144411010 957800178 958461246 921087523 968067759 134506117 755431009 828785381 917791686 914037503 935664024 686397092 814540014 393783183 955649355 286752483 829007568 346721212 423620064 349263672 907241794 754906394 952905931 55406701 293581880 867155883 909632011 796053584 800128051 145077162 408391502 512779124 862460190 101417020 899138678 794034120 937228733 36858848 771310875 566721228 657714722 421219933 785040638 763336305 825056106 723933481 995276737 539748735 830389272 354378435 771783916 830269239 987551409 701366790 906346383 547625643 716565298 40571308 442179052 335709538 658352567 268528647 988791459 650065759 758382672 59224728 289001120 258582823 486624401 198732730 834282024 155896636 975366022 769664719 977852368 341836603 985372346 749224002 790126691 230318589 549941111 560540919 638211558 626142062 679851751 396457316 839848422 135337392 466051745 385542889 979950117 323763165 504441839 213822214 672594034 382476946 743004256 584687009 711994144 966444772 988970298 298170460 906600195 642359212 741208649 519556343 676281124 530361000 720314809 244811630 642526700 569409398 760385171 707064119 754055471 852406954 935623801 340622827 496210461 103860004 611852049 413601345 612639506 780395621 810928107 141175804 190501123 118865708 766381380 498745067 659272502 18212801 363870462 356291139 453220932 722244274 808475627 986595025 999813091 505089879 543810270 292353346 354304941 487051820 660543589 335372934 757887897 220047085 593032006 918920681 958749395 161796922 838694007 938504999 977303885 124550054 465035048 217821738 905350071 363898103 842012401 531294081 901202941 48318293 678088767 772523619 787355863 59450836 325819767 393312923 658925869 335261879 609904881 917343702 996614402 268925618 326377377 419139086 428563996 297662581 431455566 469176412 494755809 572607547 666436295 284589700 475847333 255064917 527088399 731207446 797810658 217216268 791707523 848063607 938507323 651445158 959202181 719748380 902396867 475111074 670469200 112128670 219358499 997849633 999032961 541864206 769238703 352085916 592778773 454832492 556220902 337192392 927454034 108582578 523555452 314202330 839562103 13484120 997136676 832353910 839112222 919124058 970431054 726115832 940596966 373288149 435443877 150556455 171092281 798155509 809865502 714853004 930628642 982774485 989682526 803190366 986022095 52672440 843517042 510027193 595872962 59202359 444252814 251963039 844020350 968428513 982791996 807979084 962995323 663539052 808361451 796688162 972680877 317365121 354514238 18573492 55106627 468469249 557036903 160927723 324801022 445449432 752418469 32389096 762927605 809826653 947415509 450014633 546529762 308714596 566941711 240839817 566925902 843696926 944939120 380664112 850470893 623356721 674122943 253112442 923026367 269631285 637686076 899639661 984629866 638664643 729679790 171172531 682530513 691826675 701051058 395796276 875980129 525885726 712941440 979823015 987412012 816537048 846135338 382922599 754996820 419028295 434532727 652970638 880533573 862135533 966350882 957588325 975589347 925916474 983865568 412063583 860986991 635899136 766124240 449326066 669385842 479604503 918818963 215504246 529138826 767426841 897081237 35539610 863469688 92529097 246169929 904680054 947087865 18276519 593119239 366225137 808555493 177100436 447238262 174226025 897638894 917624697 926596566 542588304 952810749 213527616 939011537 408279121 829079107 731921991 759450282 154234463 487313763 979263113 984157635 984196777 991360436 338901206 685887941 213675070 984046666 374109962 584752840 778706501 917562978 301020737 708250429 386526097 783019551 413935669 660964214 865686835 889403883 117581768 993668371 959859453 998813480 397354278 944189987 727509724 827201252 529931624 710683912 347166586 553630494 871046200 989873159 211892986 759502431 282664069 427767995 823077736 846072330 97298055 360825605 562710556 567186440 140566052 407902653 457046142 615151907 777316811 840728983 207400641 306474280 977530429 999079715 990096023 992921628 319882453 329318586 655622039 812551376 467171420 648138299 352402230 772228438 802831669 814104411 547633029 796885218 398848892 849981794 664932271 833542682 43089566 79601023 717654061 856474113 279635952 656697293 316093066 906166723 844975247 852641925 83723147 213953429 264900043 558944558 788474594 978816447 385705480 798963519 768448267 902802287 441293850 586081955 479701480 898305116 321887502 462843970 150813531 688805176 110326111 563477669 742816664 972321609 740307440 791238260 532383578 795123476 595223820 666207928 178603595 415149746 761291532 915590700 819111853 887264399 266495235 526588502 619390138 625246367 933541487 936716193 210276449 632400107 360911051 737064628 76563236 732395650 131301083 779083843 810293898 899650440 250348457 684407807 518697215 778177207 263493833 793176622 292607431 966102666 191397648 710852524 64892651 221168590 830684543 909895057 101394330 727307934 920802294 947177392 70492803 457602453 981496231 981659720 651508043 856378378 458906590 543558275 824820564 876941505 605280008 753729407 408342162 451493720 816502771 914601199 667178695 936519759 762392617 965732323 549619485 760493078 698517977 816674066 264327624 700463155 99294106 235166732 684656253 689036430 39573573 62941470 724662590 874898912 21926555 441927579 270444922 665148632 817526518 853198709 413203934 730760727 967156872 978474903 541523668 800938178 56210327 972884222 546848755 731546604 294997298 478341436 956009614 999480897 311126163 879560295 112490062 944914858 332764561 487923742 474486013 870844161 685339352 799071510 419995452 898591503 925791163 932853436 971542912 994538471 773170795 965515323 813324181 898395994 621623632 924708405 862723601 941315272 789689680 811346779 790202272 859141472 252785798 538995907 955098398 995441954 48475907 200424623 289029398 791566478 844558166 882799054 987202095 995872081 974544017 984288908 865791809 959368306 350663159 505844048 642488535 852809824 578707987 946699334 567238491 645310714 629973333 918994188 627480162 639358806 544311988 973259227 715244566 907526151 414856991 418726935 709164434 995620349 878043432 970568394 891583534 951707171 460622098 804704194 474142788 805381195 519696519 760048552 471251558 536911623 447326922 531761611 591921749 610681477 102794067 558190631 786523843 994579141 541536819 841767567 697601033 804591310 402673133 890206195 640127477 871566953 56149259 57077771 255009257 314571739 776995984 957418212 648316875 836169225 701404869 982416942 216531832 850230965 575702989 733705485 966248494 983478081 955769629 992427403 567144106 895043324 901259706 969730656 864979298 937810780 881479284 965956288 909043663 976780573 612366790 923260774 690171164 815628336 1134369 967431614 49534477 870426351 952360982 958902931 433360208 745357515 185473554 615071864 40871669 772665075 76096977 162624631 397405849 975082644 158895912 191604899 876823508 937628074 117180386 235845751 141500085 625251670 2597577 305063008 419238125 478644730 19183911 684924710 539385712 720579735 54677373 344575613 251666896 355261522 350118564 839575027 270732089 411807784 83825996 565379575 930105047 994917286 220599421 931637956 760239350 942925856 565670452 771925019 454308535 702048038 8623073 707893063 214163719 967322705 774444261 801681151 241530539 740397980 267070760 480635011 853103907 934343626 704873040 845412621 459295350 569064657 511343892 970126883 427254796 478078006 842378957 944690647 679909885 917227729 497655116 584347955 168156556 408572413 147693754 667208832 552674128 890171639 59257288 371529112 945083533 975013662 770839852 962063460 259262041 447496987 452981012 589156525 168948835 232724826 203067156 518602650 284241096 556981453 705738137 755184869 343218762 415847159 850773835 893169789 523316431 627510137 104360056 389477014 996014395 998829849 588930664 905708470 386961310 973048882 431936946 847564819 795542789 915224285 305681371 905211469 84220310 793571050 877518898 917342925 761236975 994806307 314618250 528124678 762830853 987956410 435539651 792616635 57838261 538688625 70201573 184489717 433413057 907422276 341608571 833575444 190416771 841083223 818487526 862220555 478677320 630590208 219905657 614670558 398421205 783070739 88885270 690641310 145176626 477270711 259189137 596085625 858832072 907927251 754006514 880106552 598390445 919535926 305565431 890011741 155728178 791124668 823722569 899716317 606087229 962791133 968660047 994677006 814974220 977332668 811622060 827743527 252379423 567854105 594974630 805912825 316411432 830240671 347414941 752774051 684368197 867004998 521813598 966823341 666192754 801038964 356767787 567423611 929501173 930327912 147639344 149827643 936174989 944893831 106794837 970135937 26463744 446558682 189377294 519024511 31492323 213426531 429106837 852727540 880771272 920156685 116343419 234349449 643624989 921123014 905751125 976833206 965918282 992130710 32436762 758128785 465552976 953488855 700857110 866563171 396637681 937484402 646667037 772005829 203389407 490230248 485600725 514180836 754974250 988514540 610920253 768008116 444403402 962751767 487319041 800342201 641766851 974632516 75073391 303239867 87569756 254889048 945636456 983861303 388868470 872717703 719265291 995957099 780421611 943025718 607351202 912992116 170240569 525480720 670338681 707953039 183017634 468448269 976496613 985674778 992615541 992786270 945048145 966985751 509343931 861314969 242046723 977508456 100059281 904646688 942842957 998337429 308620892 798452032 194450681 324624252 489317662 710179564 267460421 776487938 503370622 946127784 207479209 858725039 925340736 962201791 358886044 443089763 123843278 689882580 546336244 751115700 197379611 380352441 45661405 302247854 537145022 895436627 353010945 941775627 801102890 928400132 564790603 761096892 85291431 408358104 547028714 933476805 469420115 852495273 554613385 987674958 703366374 713254180 574461707 660218619 869113754 925944685 993789429 997489677 628193234 658562248 159441717 771010051 595443598 842959594 902686113 995460673 692581819 991334904 333843648 906534577 419260116 626104191 961221597 995509222 773225729 956939590 707267341 912000681 148816003 247480155 286804279 391159266 66816280 360623954 738833352 931901301 436438180 498884243 587656954 702693014 692927534 696577384 834724068 880873791 267631817 889334225 340989439 921335924 927361170 997782285 312800911 733070209 186657893 936890529 549145809 854455722 853543753 945848992 464842774 631335596 252248288 455769551 336575801 506598378 911662735 963137762 330073840 946801365 855007882 892202064 870048873 930465964 639412560 741133788 727723800 927907551 167179149 209669109 946365826 959325896 71868883 313372516 822843060 923952680 624382205 836218217 809786929 974247934 426484923 633256716 208582982 745963540 975932380 982551819 430461978 925447468 554907322 819608188 890191939 960255206 62848926 921847212 728849668 915433020 520386156 574681429 577127065 918751080 737309876 964508717 301905805 776204761 395472802 510004697 873508443 877268414 352250463 813159778 512838306 611156816 465735524 953757266 302526593 990237753 31242801 715881979 954352794 993487230 386288368 600175864 396737960 498785592 251007689 740204061 12770692 771250947 986238971 994526122 319972806 677587976 735762176 789690630 658854551 750849903 661793223 727551750 571636005 596504420 540845124 828432053 23172173 929997796 778968754 958660209 654857623 844019745 27835701 958709344 443986481 516683865 882679358 936706146 688637754 873114344 628325905 714809453 137487451 602080578 374774431 648684092 154814529 924144177 555134009 796191418 724657286 981722045 229073694 267879679 521760382 796278051 368049387 641051414 220256081 716551743 276948214 424309392 119899879 161439654 259542502 874342446 56307748 570385355 816659070 948622483 931812626 963153859 694496308 766672866 426554960 784317258 462090250 504294327 887991631 980769188 990359259 990785666 991677055 997851537 658532285 694217134 188782605 333786723 57428718 895518387 304835515 445145684 31893512 987834278 395524983 453570892 915106700 955344237 574067304 756935648 191374811 320281679 407583692 664552527 606533957 986697124 992576649 993107675 650274650 996792577 661156898 876750054 914882737 970822124 90632176 338365817 371945182 611895953 585492820 685073814 983071020 983590470 549360765 956620551 139072046 705394343 69930270 355172815 789255238 833151796 174214109 523189791 15658748 698227193 677165627 685226996 948181377 972724527 226585986 435581228 149355716 542994545 31682140 550311915 430645838 575407735 301788096 848853998 897257825 954626550 2571575 445333604 170454264 272299208 815867326 921071124 673550981 810217140 278728130 317955643 924448961 950416019 278275903 486641490 981380837 984073973 446890057 648517217 494522155 501676743 973126064 985975776 95785560 949323604 491560644 780209390 850065390 920770986 819188498 885790464 735632717 793477396 58636009 722322613 861506491 939217688 583643171 942963531 899707284 980225767 38067785 336983863 199925667 776792517 756374202 872808756 955878381 972524917 198724298 222169310 832868745 865975526 742279540 977375828 468858959 992420802 92079025 606319536 544217874 711407788 723091243 949475125 277802779 292364498 651809322 921104547 835517237 887298751 996126226 998670351 983462488 986831404 471499628 560621593 840104826 960019064 519318428 867330516 656307355 704753416 854567450 941948413 468605611 998695277 828760147 866810723 624194518 726726726 50644659 560071927 89639665 574402515 339661777 761623961 435945919 478032750 66057206 283119364 418717520 801949762 614190609 984294000 299617271 763026592 178581493 359546734 910077443 955382732 534005017 607455499 186576131 387611543 531241381 930488428 505038975 940212528 878657129 933766775 803031855 919639052 177914251 999473450 239719123 571317130 47002020 449636982 402726037 636931146 397751071 876769586 512494922 623859367 460108102 534684426 277233101 995038094 992951259 994501624 774840379 875985109 922502977 953729817 897490670 946974631 38785076 759797503 362076141 444301512 576016082 962659153 813004941 874382905 213636759 935574800 329247613 896631400 832683817 986762679 716253122 843780148 442918886 943332074 982895117 990760123 486382779 562627189 567793504 869129776 858414535 940436227 662729203 856841276 414482980 562901887 646556332 909899309 620502118 773281061 739592120 826654406 183338345 957215053 796612704 911215597 566072149 916095984 153363121 833523044 723221005 954939032 295828036 782737202 785195462 880841009 241280803 968687952 562343907 699720434 622359946 971470051 6634792 521140888 540592335 999785544 12441025 994405242 988547098 990107470 714594528 849117040 146518738 549768427 68652349 877541763 947619292 984165288 275065828 674096854 222786805 963042433 871970525 989093397 765674594 904883396 950230660 988601192 903681718 955867970 724649244 781966143 122186670 598403770 916153566 961484697 355123774 671022784 850872402 978639940 866775773 908044141 37208947 884579524 9393318 430131797 759296436 800602279 236558410 764312968 833601321 841421000 687560088 781578190 495573461 866916140 885119127 969600983 366919696 765190342 51112261 658711815 117410901 686557699 718731546 911044638 15062002 183214970 689109674 755933790 279807412 846709483 184533388 949428311 309759891 583320652 809912313 865230793 32638383 185495497 705456766 926237101 369131303 565933737 307409771 513622459 244492957 550968030 932001933 999590251 631839540 859833502 903350965 946651948 929652418 971559929 757682899 902318677 121912935 390350990 622998481 637837309 66724035 569799264 233804656 802809779 371967328 792109511 481102900 880930190 689596912 710000162 81694663 837197696 778075976 849811894 910339441 929989612 51653574 794103091 783354543 812967829 941293836 961814744 143705252 926802684 629930756 770645857 561975689 796689091 139643458 428373432 534558035 841188460 34355473 241508364 326790794 869917509 552550167 614783718 664944476 739560044 120083047 596647948 816271472 918016780 11972327 102614849 874538966 936692096 243749589 835103211 581933948 841170690 386055489 832682853 805838771 892617979 612340858 790562698 630211738 770915854 655661497 761642311 712340699 857158729 276007436 962014050 157224551 484991504 839694134 928582436 404321690 930018449 837051497 930374813 247714913 957068416 638494131 711937924 460698277 538796858 92725633 833842634 548950999 783609809 300089029 657062648 852557473 990612861 791415545 863037559 597242978 944633350 180922869 457131404 173310334 592101641 815449986 916389564 692509104 746053640 734722751 996803943 216155392 410708672 612344102 907754359 573751849 940305632 842554735 889258243 538371754 689843056 75992351 935746164 403061885 620639251 375663696 810284875 820941558 866902351 505680545 619732453 996078954 997890695 79747387 192380389 198022770 884902435 976832513 977377456 123543822 170405883 877359616 981018142 45274821 910915257 593836747 700009037 470208470 650462557 916549962 968417158 321589507 587996373 25247999 866923705 812909284 820667297 550980850 727374142 976629018 984536491 64226059 99059882 85746375 932588724 300907842 626010401 661743932 713120815 618214671 924212099 538624334 660822383 312183147 706947549 953706774 961519752 10315 712264196 854321165 982924895 225067973 641615188 982174193 996947327 202424098 995855301 346685462 497265129 802930648 821551271 118109427 913992470 27847498 204631968 982919038 998123964 67441188 829998028 868446188 940992925 362282158 973103258 690154979 986357910 500147588 611293001 124024248 527789532 150738779 497594729 987790060 997292425 22530612 172336035 663645836 712394432 725886921 924493821 526163993 604288574 609796801 729876631 275132746 444760049 113658540 462168398 469485515 498343541 160094725 713744623 105664629 220567385 207944141 306275926 820049266 955146828 259421249 844972949 872784234 999728602 614342829 817006642 121714093 354072742 584216092 662390548 168163518 899079934 668800343 968917128 179251230 913103564 612268927 941034018 702016343 869862260 698469146 986791575 87532182 581873160 83240500 200300794 687489277 859059044 960077163 961820805 106379579 879501356 976214103 992741928 283651324 808780600 996112721 998425934 196592108 479309792 154219577 677422338 251372492 539633890 11844159 413210631 284362344 498978212 594933871 956257299 451912018 948255223 682719980 800194498 383037769 722477834 145675170 586777790 315435648 791836037 112179569 285380013 970753632 972854737 429080230 670509768 983828991 990247147 127289792 946321116 273471486 277916788 533751102 574763325 441293426 460561447 474248987 990661304 719165098 820764516 98463803 102231791 2497369 678211557 749546997 899387779 760370851 971813518 338142976 645061846 721127672 974241897 551053136 861463527 334780164 544434713 200490643 328336228 302503370 931248074 815794549 909347725 309113626 793813370 141087855 915120520 677261689 974634827 778541747 817741876 532820948 677310783 967407443 975228018 732792752 875116059 468010302 580081527 538889952 960358514 510817057 946901989 380919141 816370366 159680952 526362179 545567319 709458728 134625377 859606467 517403254 970782087 555763200 579571235 168088445 826966178 396147172 685597974 65326366 891014293 912457085 999679450 391494292 483548130 825197983 950355845 32190523 418195939 542199811 897716827 239133909 424486864 143703568 274165900 547033755 740214362 632278155 871295257 823535500 837058351 396775746 622994798 375594571 681677676 265417229 926960614 727762960 969045549 8688549 203683815 691311045 730832310 337351620 416433760 35931116 271261378 94258206 542043864 92457580 392828827 22159108 516389219 725640281 977856337 356506256 980650417 908713397 992691614 375751920 661581008 70818467 87116822 102241933 464144296 733854809 741918858 603254892 909284912 996614192 997722686 987849192 996481251 321630755 774525429 537976217 705376693 496801219 630745971 412537569 539387481 278974663 761724319 708859449 938274272 904938256 947954906 824787374 969364391 664740786 946706993 860634279 905125338 711340941 860629814 208157637 954654077 709621690 731854560 119418487 620796388 5408679 902727561 434187074 677426758 777017667 843256169 922453583 962795177 496691453 813798001 847905288 942075669 420143517 560178290 540211966 947431751 54845814 978248003 560869682 717127880 900727581 937666431 99019380 765323651 563267866 976569774 441492706 776878954 728986452 820926497 130605038 863143450 69977130 174647896 102150308 828792694 666373426 673249542 217855453 657586848 938389835 979600461 665774648 798458042 116208118 837296731 933396211 963149832 405227371 565519937 564988148 703218264 348699575 670530005 131620172 465416598 472777849 890602695 94449925 679634282 858863241 998077949 713181343 762549428 849211688 919369393 139186893 160062675 529225173 899879362 122102118 717624494 627765032 911175568 133617015 367636953 63285447 953186920 806748068 868570662 52122706 587507720 690950152 985361033 664793348 972411675 939005974 957048261 878963713 941357232 663229769 710625674 918983592 946037522 153153043 575876347 801043111 894566785 28656038 779679494 515848028 538015754 941138346 948645549 865174769 884975688 45607248 515651650 718747969 821790163 710315284 831018892 121280091 937895677 202443484 831043732 5782763 507461246 277295690 876350516 962769696 997822966 421792609 936878496 999079583 999557877 168899889 427645633 793226894 983076965 547606225 692235330 177842586 496435721 646443841 956204745 362079045 537482184 275518493 995803789 852560269 885735154 787658063 917503299 605897666 638301206 559422824 843918903 378119304 451262977 825008351 980620385 279263684 302813812 963914145 966867492 667457837 902193179 945540454 951601940 819067203 826076806 863787241 989403540 924549453 982908367 992087598 993124227 810729152 946742686 886491137 902733477 467403318 951540539 831817424 910880940 81146244 252668915 519816146 973007430 947898006 949329789 759591700 811917284 607430689 618735117 220916771 538066425 803081623 999571120 95063595 927500684 884433147 950065369 958046594 970227401 275203177 612003782 953576028 957750042 12838064 445812726 649354991 780778003 197406403 999675999 517387919 856593073 211634114 457768454 955515183 987141865 465850506 778195074 102140814 957744232 137436054 410377412 887687484 971431223 598527452 852322186 808608387 948982694 24367951 267189354 393850970 528440600 188582142 711492439 350400577 622808031 202686648 746461398 74282585 894464196 776231665 892813966 716665366 785687645 524335588 864251388 348951155 611499879 100348073 575913565 549766195 775796755 434578165 481613755 331471686 346652136 621571353 648354570 200980486 253405228 535243410 690325831 66123871 910470502 798026330 965235901 910113773 974570666 383662353 976909132 398168202 838543301 143742128 480843167 727275408 787435706 499321213 558518802 187950308 630924519 815904712 898396858 612971382 614486611 577726303 932980976 146580514 632540835 11766439 684678375 646225050 838311614 406207337 449125862 624733922 952816294 414424014 427230112 768752708 826996118 656130965 677662779 856590093 970855362 904665499 965059266 62765598 657430341 924872309 975775945 125416253 681770907 342462365 971639889 28484333 328059304 794886438 915113878 159002853 226228749 785304823 940165410 405702558 966650294 377795762 575429533 250816556 263355052 159180271 745264659 885436532 906288841 84342733 647685127 183334129 309460899 620564061 679664080 97579988 318717167 177609418 420095908 730428165 919530204 380743840 786594393 103648944 693078892 268841578 839426217 860816848 954452457 910396207 994499196 465560272 877466437 163771423 552376661 539850202 662705449 103378906 151866352 647066970 896085234 606792673 797410404 111004472 473191207 76246646 769766594 775381299 987333400 275173573 860386446 270037276 355450708 378058471 482318485 237886797 241173132 223844444 246352741 548227812 916206992 238672765 650542940 936207483 983820129 627591425 935408496 780795449 963524731 345953058 784144240 859149359 894371013 345926741 920972452 227078962 255916094 484282397 983448599 644665398 728824674 577609447 638070406 308910625 370523536 325203920 911982522 55205428 687704599 555992351 898560002 240560456 867680127 959573662 971399937 336841017 841852848 141783395 844464344 798497550 824891230 597923244 645397748 596489075 910015099 556633495 755063638 497775293 910287362 195505422 626296877 511202291 952211728 547099475 710639680 287174079 761906057 163634783 839107837 931848436 962641762 614445350 974760703 822238539 891755662 299016938 372773814 929980517 967797034 592657603 604027368 888945428 937418941 525003146 755892952 648064927 991218689 53864946 760501572 338744133 830925910 143030350 411141888 331057685 462337319 6562431 688309031 99664692 419879769 501477098 661479208 689780215 896612044 215222069 928916265 467957628 469339611 614371198 887612754 547692214 730948699 176738174 400369151 956481028 962208213 984748926 994417439 952904686 987420698 745210161 781941428 168667112 839930919 714078066 988353189 174656286 279281059 620957631 729378946 418180958 639372811 49090083 586213315 946364081 949678822 675407072 721304820 879599405 889375467 665438903 913334954 540688569 809855130 982378008 999744357 626016395 767557448 369695809 766770462 617066836 987488579 657481397 681964316 341246251 469809078 676370693 998325857 712549867 854247055 628238125 679688738 395230786 898496840 264523775 351477501 119694283 323390490 360423196 422536508 109709154 687906424 742237012 841379036 145264618 733041218 482428138 694150811 692849720 757117015 621465785 870465748 181596311 757945168 445469203 659481826 333707368 387173707 252762742 829213757 686078713 923829518 1052228 680071952 734922804 839133330 212845709 397948088 82230111 327918934 846227411 928618850 424072501 656605388 676465187 733480881 521433715 573059392 950219718 967662597 973191731 997341145 275493978 872608994 57215441 418098912 341406286 711881102 870522822 997196598 699625618 840360402 610743356 957420791 20390701 563246044 804537252 970485390 11537960 294802356 778151821 970463573 672205586 977520946 323906617 368975454 646032379 825046173 145790800 468234372 955901092 976365061 952018300 965886940 260326604 781829218 197141395 826229671 410908453 704755448 640990065 995982037 45065295 524857074 861328350 913699453 967367524 987110123 798787130 965672870 307445362 814476523 442295264 474120805 413298847 507602740 629505242 959971114 687049714 859842576 992275009 996154335 563228069 749696350 13708509 472254345 771220331 845710482 906191204 954130959 286196657 915834751 310017450 797905642 998500688 999364681 801604677 942613287 999718635 999973270 26836293 267495308 860738084 949437902 377254029 591063726 405092165 605152134 890526531 976221311 868120858 914452728 812276942 955662029 867687991 918067428 905740088 995844699 596615506 718619848 854097220 876102874 871602902 878645159 142433477 707568511 733207769 823107934 136809884 728680615 202724004 986888023 328080719 608366477 117430598 149509599 599471333 659715970 75065986 322637446 530028447 535149067 41369558 657383762 245945129 349671348 493373558 725328444 326906367 500161878 609468526 960314053 753675330 995633833 759104431 819992060 414056521 437548553 912663668 952666535 45604103 856858000 522230634 535069690 400919712 504893679 981512260 985940260 163944217 333596763 482636264 566212128 354651686 823393482 376356425 859277758 418650487 826659666 426184926 814414354 777819863 914264545 70301599 169815486 102391565 114534174 673524689 993987852 789518561 911417129 475560758 842096622 206204466 838865959 595353523 720264720 172126514 355671313 538716492 933039337 120375043 379850805 498285713 998427041 76344396 266196807 189016049 380441842 331458914 725404171 548654796 919249294 728580155 841287320 707614332 960752849 11416824 103285153 71884667 924236301 48791415 458841201 880334947 989289205 332283969 661626672 905632826 998462329 173129176 830090802 771009444 815098229 381283564 650609550 652457436 786049944 884835930 928028118 104395813 175827429 128766742 562591187 212005402 348884153 426661258 732104972 861678241 883693261 664644240 863269064 666060747 769456008 435605963 948571733 900155813 927383391 129983724 978181394 229261982 269198574 974098263 974266163 987987675 996916026 371777540 898272207 883809866 932717998 164240101 945546618 758605914 841592921 503386307 946486451 136341324 249116615 632447502 896407105 859150725 887165345 255506948 771257776 881749562 931490305 829101005 944821825 85197085 895889592 587426500 738439874 543236574 767835197 135045524 869410807 602021548 980813730 518686364 560437276 584008428 673577616 122594024 905963295 861834031 913590944 813874344 826474205 320246050 568592148 280650120 402466808 278805867 850419455 219186058 516007485 445274595 891538059 386913081 451665131 950373507 978561138 286587655 374737911 26024924 189414200 796507363 961741597 630642226 904597778 333108348 910540365 832137113 908668928 580804337 879051054 304280114 886297662 166597168 541555714 269499541 458062358 166064870 451421359 342499117 484100746 730341167 966111476 318904088 439631418 510907650 790080439 416269864 629519626 176719613 532581847 462332382 521665651 246453382 401641490 525153414 728365808 726983710 878324763 44330620 900521978 895599935 932015652 539635073 724541708 867009932 997060208 707312864 727646712 713821762 739077080 651965255 749602081 252150722 492886371 394877697 823158815 718202293 950586923 514032842 881710422 558662435 778689102 750855738 909967008 202434934 543442891 611175797 782741624 826348102 917928571 479619812 495949433 987507951 990499243 322964422 661199970 844435253 893430049 312033348 989470071 489847873 933596150 295348922 909627684 39354533 637430103 931457848 986534345 127912241 242677795 188606606 878410058 482104782 940985753 756652271 921726169 127312901 503684008 658160889 862700650 868028164 991060844 458011072 476032469 53290617 886897139 441605072 455508798 724599121 821921282 853302414 882353304 954667110 996735571 728017483 750986825 396894794 874894686 649391880 664357507 466928055 684000249 944400603 965511466 430206099 772412965 661768555 998864274 145437045 384567033 671658844 815513559 773147412 943797352 895262134 923338738 948655681 979522552 533026033 939957897 928355028 937896574 427580808 799938089 60531055 263696904 875663410 933329156 220820334 698751652 532952469 644692456 771821051 902154298 131845081 180030451 510419093 851370664 335626972 448868913 303961168 394972031 621143197 667957059 909300195 916272142 287165091 867908993 446675069 821954049 126965253 603255378 971221394 980906002 480097099 849091897 962998922 971935569 21363014 443789735 393504482 782936313 25297096 718670982 362973706 572649697 372898436 510554835 397925478 436556479 599090619 845411052 233048916 233978552 405718140 857152434 944763097 987238874 516992324 961245309 60265455 718914443 506943722 522607787 526833897 598586660 726028359 818990219 882441177 982142164 33017003 653190584 527262070 914284551 672731006 860693082 796298305 875870488 310304104 429910193 758270815 920418671 697844052 914953071 530117105 624517633 713515573 935124640 792109072 935671996 407042030 528125757 558900629 995791579 501412202 518820220 13934028 285230440 173118244 315497070 67827482 631536681 212509356 274635845 538240465 746533600 812452453 953854784 110481024 824978340 338034587 570626566 471709748 667462405 95257087 747021110 798432511 915335619 675981230 904333965 638779965 754779311 496839981 997315583 851566570 994007890 749287089 975078755 114542329 393572998 244395486 480821931 10325724 28974779 694689595 796526602 584507992 726359545 47938152 735495162 469962672 516920884 496757456 726353185 27402578 878432416 376871861 952751859 558201830 818925721 315458723 908895693 660391443 882941458 559681093 654357216 400391349 874161232 519662459 646180765 694542680 827632556 309799565 361342563 287471745 663567937 976605448 982367874 601478220 711148281 655067077 679287439 377350296 657223913 690109879 710312003 541493884 632889702 133954664 438897192 229579192 754518749 568722479 987982381 111980712 521954189 243979334 272258355 338539808 522013737 786417265 787872749 47184143 68764346 149318009 963498634 167237820 995020167 19339392 209792701 769374137 863322661 235802395 920614149 760345761 910871208 888923401 932268965 87716281 302940499 685421386 856806690 367098849 847051631 152679439 163390964 640640274 666270793 649749636 795620601 774799619 899924803 410382615 862651526 734854794 992155629 468825214 496664603 172821436 697621103 655970521 714561534 952486825 979880396 203843607 909796236 695181391 983002060 901190026 990249418 503795015 938572723 447064818 630835716 448888947 715653067 24100538 732329572 140272816 316189232 984093976 987066851 214855319 668497153 872884226 992875769 311457338 811503426 823012814 837481415 219008149 388646405 342477720 495176687 810232374 872020630 327507592 401046121 395044051 559680858 723826307 854735712 417352262 691400710 721111040 827889161 163545381 228200988 288321023 958572295 149815410 691916620 938912805 996506399 915803615 934481260 590200181 761396347 424648182 873694812 121481585 991478088 238801697 798627234 112415243 519461786 613761085 736670937 607273840 747388537 458295426 999721239 376508984 587386758 190275902 951048378 144825782 904498814 983142502 988671455 232031554 402301656 373754452 851175159 911479459 952872170 410074182 680734840 890409943 936244800 832697718 866708116 861657001 923291883 121253286 405782413 852374354 905302612 447125358 511885895 565253172 833724296 133740506 822183293 545923748 892864430 106221482 556296176 162792033 865602027 499772159 871605816 765658209 799410383 698837310 914761870 283795826 399400681 294871367 936460763 679918297 734002931 846672143 981811185 223536983 998978697 953719966 957589600 45500578 587884967 284792265 990827432 14133416 247076483 151558582 865105453 251643841 938145890 688344216 701875874 861071106 993583521 535584355 863480458 734864632 835216251 1783679 715285035 326740013 815141649 576433762 945716487 299377744 303566034 734002215 991667819 261201371 787809740 932658772 949624127 770614693 790536947 678435277 961626590 247813891 831470927 734575441 953655405 507410368 843112314 305079992 655902755 170003017 195159891 201501191 299068619 439924144 706761013 157270966 230352528 588418320 805485794 232707162 480488578 80668290 222197144 404121377 875263936 237594061 312749160 680148910 688928423 13114392 485338320 475058345 512812135 76659825 923632873 361372491 864850097 48489761 786402911 47353727 89251046 761135547 844327261 919478411 955247246 459382102 624160498 803690102 874556122 26890807 163597866 781726774 968472603 740039521 785171674 925449190 978587177 488551596 497813390 395976045 730829086 604994448 942039381 645299307 746857032 320814594 441709896 7947377 116627618 795395576 871203334 171003609 806394115 341287661 462420238 610625093 939870680 101363069 649307910 560262095 660206135 893712641 905398526 477087934 491275389 591366124 991768123 104717161 154189256 730148644 790592319 534118055 909331706 863060015 892946722 642148729 750964134 739420510 851144457 797340642 831172107 152540331 522598354 535890158 965174328 195541667 221716805 351806616 973673925 594776016 758073402 339024896 624403149 99471004 208805926 13640042 922778674 169391564 821677992 941910322 987741343 307161299 722527082 375318918 849595844 64907183 289295805 933188904 941326594 677192563 960974595 167709077 361702208 612972017 718105958 829408310 984361134 574513096 626326036 779942346 889396502 836202068 908263368 587524680 954060975 266333564 891803710 615132801 633031456 921732345 994890109 115405209 656521501 812284087 919130069 646648695 722686795 247418860 592065497 589526057 998703071 802560700 803564069 92522085 339055747 945225023 945820836 656826574 687669360 434044469 673265347 611418958 693507476 267469982 506376911 964756719 977377322 304754192 339558127 317603475 343277131 570599087 656122580 751447571 844351850 1746052 416364992 248344316 890151906 263040909 374488525 282133622 584548243 73955946 912908344 56199265 469282293 305482360 744547151 347397431 506832883 170489787 255483036 782603508 860981412 525697823 733734687 101359143 681216284 547472148 733079438 252204629 555936333 139735666 955757767 886263054 971314517 454689672 874024789 298767917 590272739 990069758 990213041 715166960 886350920 223708191 428093190 564185444 570305654 614334456 975324016 633570271 816391512 631754050 642343940 633875974 733602712 647002497 915312137 82683343 509931989 715961204 877117752 11279575 214212788 779735474 884429068 159386000 923604307 121416949 566989904 819962073 895312717 364049777 724898073 870605901 935730676 113969565 359711098 661080432 753554586 943266397 966967722 965920932 998021702 865641822 998970100 247944287 534843501 721933108 831564016 11860010 494911745 788983102 821025711 741893960 931729481 522262813 886259056 119749697 467054230 314623945 811329609 254208328 721529148 828858421 945812690 519407436 971012459 537549217 632759274 196583243 315539880 899707802 965939233 512237565 937010239 290591446 873127598 31143556 457338961 420383816 704358316 727359486 853448666 818674441 973203782 102024702 467167619 174114068 373853246 90493810 411010783 478191098 808901424 190316437 613971494 851574024 941490510 748363877 891837650 958465923 964952554 592079933 810257413 613765397 915178572 525868302 530764786 980082884 996562334 643992843 692017429 63459879 148846810 666509332 714703101 769314439 982757532 563521016 992708602 996308722 999862718 138426057 882439120 185210626 632689459 737034129 816915232 380027156 660930432 915187789 969961492 106086396 548471665 777925764 799618686 28213611 359457425 435759262 947129408 781642304 812386641 63111450 995096156 969408199 999041569 751433080 813405216 874531736 901507179 212615217 893498317 746961417 906420867 353154173 464584981 874088887 946468524 281245410 848463096 141519739 492948342 157337636 597526149 679437226 853120323 715508208 876762233 371339192 844499111 694783334 935339863 380446123 597460138 459645142 944452880 885929867 978260985 79935847 954311424 730180566 846991474 441821294 841943036 216917384 930262660 803668258 930800476 58625530 181815131 553295883 614804199 593321316 940088015 763912987 802352950 459584567 530204867 573383436 574037039 917076003 990598196 184131547 201787546 756980749 986171888 95477951 278384954 163616369 248036803 87108675 134864170 174638482 692867822 703699464 723097288 625627192 973765997 376811051 428441077 122418586 813521427 706519292 832117281 947790593 960262127 214410382 387695099 596543950 950974863 537098603 884404414 896920575 899095474 503870421 821751580 236848351 695810323 286025434 831938651 924014562 967707441 776863036 965572268 468376646 975379327 570390132 680797973 155860444 952037978 954110254 983185916 963452882 989067943 846649910 979014169 388685872 728975390 463091510 585829676 267581371 867675185 624009550 686173010 891255065 942013969 200912248 827942847 841189927 898992692 616862886 988285340 973289818 983434056 107761252 239567906 47670270 148304672 6274587 799216169 884449857 916968701 445878186 614917071 602630235 887870662 584499183 917578131 339617646 590313826 811987301 935981763 547354473 954715003 393650557 581051593 31670089 958978602 720418217 928514205 67497421 625538499 544772057 778691176 859052122 964757639 586747553 606658350 884466578 916131307 853319714 870029429 615494191 789043851 249626297 479625393 269882687 837649123 319545880 923225814 543069544 994382360 251745362 648207529 670440782 892893864 68220058 997142540 432432294 971476480 936182022 978815165 610903691 908359976 716126122 827336015 67783151 972029925 827011579 839244818 815588463 888171081 480379869 510562054 124741740 334504172 394938866 971035574 276727957 521624728 892203915 950797029 452381421 821558550 420663278 491420367 642381722 720237916 236743913 927060428 2105091 706634202 260350111 731749538 967801317 980849853 552901846 892450062 925372366 999056920 154031674 198896528 535405476 545120251 314161432 899230346 11287084 998781238 117485017 336629785 641484039 770265995 36723057 170297249 735480656 972784329 763308836 824846856 858183812 984306115 543157645 964461360 337467762 830253187 95451791 999212193 37613850 801946100 463771915 496779730 407472035 774088616 782806709 864455256 990661187 994932397 617363667 620884076 511895458 530620574 284086794 597562502 956482579 991692771 276614380 955246745 534537202 733317559 452825761 957658903 119658298 432660800 434863341 908934742 968764304 984649934 750483263 880537520 301050290 802815201 567803319 844080279 335256886 693033654 793867190 947477426 657424813 772187646 621193777 985972862 554141288 565883776 142794846 641830199 572839219 976845877 445841013 536735092 587121019 815582355 578521946 592046704 541309796 919830821 902491635 938035548 33257009 975332375 899169185 976056118 715624069 742351232 234108260 397785734 270297489 905830116 539209375 765970287 627988656 690461156 420659654 595864758 359317136 626795280 523581233 916177335 431034459 957063640 411833325 864013356 812456495 845810034 405757022 899202916 437139882 508801720 139053730 982247529 137656179 969081860 819321267 830213806 116638211 579349887 611656106 952563453 523160325 612282084 669330526 788108386 194558885 399313531 155305904 644633294 942291226 990570766 657580460 777802402 340010705 733918792 833820663 878750072 163994425 242606651 157659518 905151694 326554537 693152118 50657483 583154831 969534182 973993936 966260219 999076790 150392534 705291623 884068930 958880167 136998154 434784494 139995822 948788998 752574482 901224417 305925943 803103701 12849953 251532663 367598538 577483446 103093678 715142713 765911949 859361382 866558811 944512631 429016952 570544253 814479636 875407415 469457507 994456209 547240548 812160024 554771771 799469344 493916571 931047866 89380613 777471984 196717864 476966666 182942063 341303236 103837330 684046465 558796527 906929997 127405890 575130869 428859311 930813340 171958717 367071849 276734736 370623065 446878196 880604916 624314507 917142285 910062388 946162534 795156808 863328841 396980454 734363617 916175611 982376996 528794474 598622296 601323673 719030903 313784980 904452825 713157418 806175287 26860601 955949170 392652158 701820153 593477361 923135813 639617626 763083002 455544304 615955175 698510045 765681224 215885641 472471267 611808012 952291619 955121276 997184108 615522999 958019102 220028688 733576791 809519921 881863235 248558992 740785457 383567637 428579510 913200339 970160253 193798083 262517379 869810233 897787035 198870685 996072997 909118470 920270835 135271036 736798713 320592706 345511411 293529653 905178096 459332744 560389299 385720930 651869464 865428627 976120761 249748403 937481566 717427824 970201223 577797602 954943750 248920775 486848510 330818324 372895303 996393805 996868913 499021332 599350250 445610436 627140691 73415658 655411803 497623033 958076070 80864621 382191949 213778656 304160440 433002456 862641615 967313171 972764625 237062653 982951880 799034612 944752132 747041439 798686249 180313482 915335696 687385566 756611512 921488724 928652229 351322987 425956573 909135568 944993428 647362539 663970574 212145868 942124145 350201283 647682117 698821438 806434635 717764005 970267932 390902083 595223343 332621157 426615883 679080843 904716952 483483640 502015480 36054093 439626854 722618419 885995441 560307346 769621743 426468145 589716021 445481314 508113889 212372258 357105745 942460668 963943956 461132577 613617301 610026835 961584773 418179270 669692475 87090991 598935550 819305346 824430694 791647034 938400384 791149795 993136221 265816827 866484249 966268064 970881805 103849028 928076296 731042734 871738770 253904508 266729891 574715002 727364509 646516160 684608321 247798524 298354842 738078562 884565937 923477896 979535009 338080076 431057436 530418375 802477156 359558890 799910864 570211095 670656520 473528842 692381917 943213219 978961458 110969246 914527324 17927151 61436365 564364070 716114205 933950552 990137393 147420296 383263433 84987278 313906252 789292961 852948607 881847147 985466074 241527339 644651543 408746516 702348745 186028342 225689158 290137207 512742064 986242130 986464057 418909241 965690846 785913871 981169428 740174491 933805178 414670505 941948142 14718837 721993992 277199454 277291694 499606983 968469094 802058346 842780162 875026562 885079493 146441415 900321579 231296462 390592947 133466317 813018616 339264949 695049489 245655792 367833964 875333053 935426312 649618799 739157928 111857451 936099499 962679320 967362228 162909839 920891115 729277693 848377618 461118037 516957989 968915670 997382357 429054285 910114404 510796189 944047961 27130119 209776031 974158010 990677740 523308979 978779531 983210289 991325396 797630506 972965263 156806447 430033143 539200421 687411268 821524099 974187052 864959258 995896469 973467756 989564817 901166736 962421966 190828023 617920655 705113921 966174934 319852570 796958913 934313981 968620224 387286378 545193712 580773043 925627245 144810355 362820383 85902890 329252832 975464343 992940687 949572295 986504382 67419116 116394916 131684813 887981922 763831807 865880743 101757836 940170194 302728498 974680472 846652928 964224777 519597180 676401514 509806236 999967550 300388344 858554836 211294620 747263771 836141376 947623208 224233634 791312834 114425439 635538131 598214629 902067189 998501005 998709301 37025334 882080326 886379710 912710088 89326429 564514701 360154784 874065229 627486878 707323891 768316751 825544672 981383297 998404726 332041858 347953893 191105579 710757823 61338136 358895297 197598189 985533229 372991983 534106476 950894050 970928029 39844473 727610416 516317571 989737035 320309061 596815773 579039213 711295005 952398917 955345686 177268693 380247879 771997442 929297563 284462675 729462911 824271144 908238688 198113721 804280149 481117506 615846740 688128406 852274576 433568274 511007848 494099174 875612665 962067525 987028495 487209403 971473225 130693096 282007660 527030250 890081235 341947947 575819165 788998187 972376110 215679061 305992008 833091976 834607657 265908596 608137888 684301297 754881943 963235351 996482721 84045375 839742251 752472404 830311653 996681312 996971997 272044213 526964657 602965010 838476186 239969581 931955406 619438017 915159281 508544246 589511715 62250861 962818736 506828371 840933836 341409695 548357251 160087044 939867068 652601707 820356640 695653654 769883580 986155982 995996832 764395637 994081173 948052998 973124023 672153262 888412792 795222141 895805235 600874501 705124177 764678433 813364493 779871059 873249972 968511980 994632647 950240017 980492367 313809303 662925446 359338257 714082341 144777508 574186078 925905141 947886337 28742852 224117966 285017768 745295268 364299928 819975630 730470217 982393496 928540067 929992338 689579214 963599261 196544565 683751337 596685764 948676701 146123819 596929026 214060187 353706372 153377922 402650612 712339076 746075445 558262129 752069821 107716610 633872672 623664807 980759427 874209869 890837724 265296364 952574980 457522194 842970240 964850704 987062460 135097472 834407801 998041785 998439500 111902246 975468804 866839484 923450312 637958070 940529195 507208737 972343061 449911651 702652854 910364551 916278379 913788200 942521373 900985267 926852787 740188889 898949196 373129384 941347145 820531515 993500894 252950462 926947453 15161195 43144720 156994413 932037844 265829081 689559371 268480798 271086298 717303699 894979522 247325983 353185837 925633315 990292638 358885831 668606005 817975999 979121408 584102617 786995236 48814990 782091966 331473698 966993602 701692019 977421273 659261471 983643155 849033362 951448154 392938974 831510454 501478145 554337297 267217846 613820631 931905092 967669841 4127663 454711341 633859256 831538775 11254013 996339866 510569766 568442818 211946046 352427394 153597704 570391539 273655586 691669943 37961056 264547124 340073497 454802918 51422374 989838432 994446964 999381293 556363255 891672720 718082594 742564647 223996807 612875400 972764542 997690838 260874947 771199719 11007328 385860713 877226921 884786483 220219369 622521813 281781433 854177611 838270604 937779796 200229193 759982324 183118612 805996859 720759055 733328157 466667429 578159001 131345568 644515954 911528598 956414651 164228186 168308997 757857030 987040331 300979557 548141686 738742211 873334191 87724027 117603618 76562244 433188656 610854591 618045021 446782313 846742186 724621738 806127752 115418028 461608093 743730791 864378844 482297923 746150129 7469380 635495215 3296233 656003215 999842424 999879052 662733239 838883088 814119121 842675569 992687887 998725273 992460364 997079170 857595474 868939161 59664829 488806655 746596549 874555720 61724576 589687262 710254459 897303601 37519633 120950923 207387354 857239242 780083952 875689654 66149750 300747048 645515084 815270869 586352407 807716360 783968619 860952552 251672230 363082753 263777942 838966892 837081368 961893743 67448838 109445532 462164691 837501666 641516264 656856804 280855164 865625239 442742052 778214591 148419866 652888252 806328417 934077545 266954808 648261869 416079971 567480030 25635508 274250402 512993253 562911267 489793365 877737016 405574084 959371562 517920613 885563714 998850193 999479927 841941344 849601777 985211492 998623576 335712270 684478723 448049114 888412975 252123010 916574559 377705587 742631951 325418729 462630733 16299763 671895218 73371456 419428007 331582862 390691966 876467285 907109822 418521451 755296005 124729099 940427185 449168446 838394315 317685149 961451666 636582107 966852185 438447868 973476017 181864217 708744679 992381479 994063999 778554450 790198887 10000734 888400057 934460411 999313655 781339135 833286380 240572678 701382997 441117599 947852002 166979459 444518105 651365388 878491498 68863107 883849601 360191227 616025634 265701241 786841688 332963666 446108182 496107756 587091929 224129229 348569577 922884446 976475009 906256654 985139360 259937298 301148990 190857270 964293925 417046081 432503886 608108778 728089226 447441320 975820680 481246091 775522357 998121901 999297308 287374868 840225688 686184947 915999657 436730036 902528219 971444789 985734156 857682961 960458114 902293757 969668580 661439104 861697808 641501639 693234513 438936052 583150495 262052222 952594368 495680897 854035603 432249808 955572635 957279079 980573560 421686135 920589077 620232018 858090440 449025113 716506738 257635134 523817121 882158290 932641709 476632372 613436607 275494892 649007052 634462231 704800850 154218343 672228134 7293930 956656333 542917151 755972560 842280601 961168636 893129807 957984658 209382932 893538972 706313900 957576280 752619318 928450761 528322149 828780200 864748454 974746878 848408410 907835592 875655678 950490486 794828796 884241668 482810547 609734887 902501817 996049014 897477961 942347306 448890212 759878741 204775500 991361007 827140529 964977068 290030856 733542435 306030189 647747880 930014686 980059889 207918806 581249888 162374439 317430925 445180083 651975145 734422858 734557655 792919656 945241578 513563704 542824423 121876382 953187248 523227120 554042905 962887067 986354854 109064970 702848852 360928677 770917550 532376005 947577300 355827871 943735512 286539370 413106112 868310267 991261421 507632221 522655790 175273621 479464569 479551392 813140518 385846383 850138158 688281723 904335988 565591325 820765010 771383756 875482731 495856430 777094953 150229908 476587419 221073355 958501729 657431984 989295366 484484627 689866522 500756406 610300004 51687010 624458539 552941130 730499502 58970408 157222090 981399354 995131921 807569488 972039293 440206396 887239213 433284628 558128866 810206999 931052629 101829640 496847340 843592718 964020092 192750571 665518166 751014200 978543895 241927195 387772879 254143996 284761252 226810077 704755206 156620538 999455488 733216021 812572151 880608790 953379854 347632516 901871187 535913950 731806889 547181046 807291876 236543333 702970075 381106537 389840864 573121454 593762750 156247855 396099311 220614545 959392020 452198410 685409840 624762258 953755423 609372685 632127884 426658419 810685121 747314974 912871519 568901606 861906989 23068070 658111737 623499500 957854388 212491000 231122403 302250550 847091584 58709602 768442170 63864424 359286899 864872825 948332694 494405026 675611556 150391113 771706124 225973889 302972410 902852536 957728672 92799476 971467743 231047230 247895726 905872219 976996422 613179891 668140185 200189895 661917637 200755507 338361420 562622239 940205017 625945415 863104978 66288584 601466348 960905185 996217711 272990558 602317832 555709484 734868716 882656111 883818425 58310293 856982540 239965939 975873335 36888611 338768917 589132125 890246042 352754266 612670597 103785138 354278082 137144082 404208782 548889731 764823146 37065488 64676964 847058572 898854523 776930113 937123538 982979669 986983054 29216488 944938150 43185034 523831985 71529872 256317890 515211452 630108101 788033284 947032777 645865451 665864162 293194762 382627275 279223426 999708189 755575479 813202836 546533342 730431058 902323245 981636084 24072496 987368591 888803346 971767028 200696002 728212603 365535812 819824222 956652804 964027987 927907142 938051815 210401308 603780669 784434703 877010862 166199496 372730098 825289937 840561096 640009462 919110223 597469310 734563863 422987391 591532903 456230496 719940259 402211962 665989518 110189380 389312542 388813940 541395454 501061064 688379220 181797416 935952590 822713539 882100294 639817328 712484803 517139106 968623226 302603349 773265789 811182751 909878174 974095633 984579806 729029881 917054084 561058443 596491552 259255180 890527628 655565527 682263038 296329935 517151055 717988818 983110236 270639568 695171512 346076127 511725717 231343969 315107809 87046960 977952355 866184191 912866278 211273065 571863433 114703888 635074002 14101915 877263949 719620450 738855313 267132679 469469778 60782826 329817312 118791190 739537645 168090788 170408649 844839099 846141365 300342844 338123742 966164446 984775801 447669428 578241537 764938333 882794781 181818198 724143900 784758965 999138761 573650798 915354985 935176291 993955631 64965298 549046374 717857429 771310449 614985179 708654420 600833776 826201917 809764196 823650545 775210107 872439262 35443683 266511115 304868926 608982027 525237930 663433782 99113270 185316183 285960754 660336753 730082831 782444604 613590161 861023088 681108450 979987648 407276297 998156635 938045661 986145961 322520559 839302566 365413112 809532910 813467047 934665750 802225949 985987807 151984372 821230601 323746453 471599213 933489792 974052822 724204917 756195281 404652044 718852513 51406987 292642388 8454967 961676892 827699673 869599108 476685254 498690733 480889548 778030016 336770680 682953197 382821181 739788409 945280835 973671016 808505204 939762304 574636318 965804200 209665657 993184168 940858195 952660420 766108834 868640621 555906482 890818517 88010432 605980858 257400316 563960016 948717587 995488282 106828425 967251577 87374672 965064309 502303351 840430873 827558889 986949237 778246916 996340116 103624708 439942710 304079390 702132816 461173019 622450590 387214917 523015114 235262481 342168617 362601920 975418769 122632071 928637344 919616385 963671858 954358214 961250753 284760576 825999118 203579652 514003199 311858463 504240443 602290450 623517153 206703718 430540410 723240285 801045400 62099249 455800546 632831387 907250152 333843721 989893805 361257388 931518550 207375578 579563387 344064000 525348675 615257440 872984604 152359030 470578824 895407336 921478982 331465792 426538385 339916601 714058446 455005249 768784620 424052586 659755432 495948333 855849006 919807687 990127982 392652521 409773124 757109130 969749834 369861711 776353444 879684967 885588650 726692850 780758985 361748350 596056543 80636463 592286277 944035649 949676867 735873555 931373782 980895354 987593090 917537990 972736987 150963847 654505666 401907105 768324933 304967397 699382021 923819258 983345072 764075424 961626019 519954213 708198440 830365719 934040229 428578386 801630924 910108563 911189526 337958714 498380151 120203026 658983890 394171814 660061362 335814645 685088132 299091101 331337497 958189191 995390791 597346843 825529932 821025745 905944699 95385573 132550231 521090141 766705580 929838888 954448664 698446479 703753227 739848815 905951678 655531994 925210862 618032844 956978255 353866068 870648783 921199629 934039245 614758071 996316971 718892203 880445731 72651442 951530597 196185643 387850539 447981048 882924839 64942453 899943385 838722721 958186590 864804629 977227097 881421713 926563455 234919058 880962021 825574415 831128552 840395059 942645842 48577365 837199081 982560766 982847990 275513606 332640436 860257137 917148595 172250055 329044468 509075103 623925480 306572403 364569149 15633724 859879999 972192025 996917080 998140813 998704981 329313742 417081180 949464351 986739688 773398226 773862907 344501046 933030160 776910154 927526310 893497656 893980323 509996748 814652397 279109559 928820788 656965581 754182151 398945606 657218931 166288560 886991412 225693768 667947206 174648786 512674352 915347524 956098349 569647202 963453883 622995138 624247049 681298582 942839093 698615413 869172139 350753940 894150239 193679789 345694140 386372233 581614562 689523472 844136865 938510427 952265295 758673716 813606206 226672400 630136279 639252619 783538755 271594027 387049592 144717040 737977216 956928864 997052933 727081177 796445433 150891223 878666310 92172021 561150811 130999121 847201503 332406581 383066493 102370619 596481274 240532429 886266445 598238565 630293400 999725076 999744491 970634735 983776348 151961095 162251042 633040974 889002463 183014847 256081732 285755461 583876702 19013083 444377605 641329320 893558459 766315680 889226227 267866409 799098378 382645902 923369112 880168452 942076027 595392662 925586324 658304288 762161113 26012469 731481255 730902359 804412911 790946458 846875657 256140732 718134401 11270869 312701883 127174438 663768867 25368162 546393096 589213906 864456947 469056092 755424925 688322270 848611345 625810725 959702223 224117558 660659360 755718708 770549313 262577160 900945969 374979355 965686434 205784020 931736177 269724761 856173385 593434631 667447950 596031978 633820278 404580943 775318696 589836777 832500857 81976189 764524164 532285731 782807757 754539248 803459667 150264690 277326489 492156693 552173633 112500523 183715871 788549353 797291635 492804109 714626718 53388152 318528165 587564604 993819366 286258388 990148336 76991233 726784549 891677609 956699221 592407143 846696433 263633815 765013479 789285661 844262622 430588750 984049650 544634652 971692039 434581810 900865659 756129315 906083923 207055808 614446945 472790912 935388015 702172625 913584158 889146394 912732049 344848821 826280777 270969436 925864384 725569777 842446730 735645119 822395067 737909225 868087508 929147128 982785636 844212228 856446704 978613805 991675726 446925593 779589817 219825381 911281060 415403905 874191242 38779836 296250963 515772134 849433089 652917632 735678384 260348829 766219666 167446916 795109165 445305174 835803845 143341961 533067612 90650407 214903581 549551704 575492695 1306677 308431885 762543900 985114928 247311828 664529118 651515232 774474462 97730305 680808824 87353933 276260421 611914360 635054836 64696571 605104106 712322856 834519185 461620341 987731518 816958039 818657450 482087477 699101991 869860394 918818378 166421987 176658551 92936729 349534862 800923414 817755727 585026552 612691928 837318465 954072524 347136655 520892433 798993016 823025662 931818365 963930962 76219329 236036230 847355037 957664534 285675056 878610683 500884627 878739221 931865863 941187237 772787139 875419553 803771861 877259584 689346391 835108747 93798513 715831310 931714411 961460163 667485121 717593057 580103914 995926650 614560599 676115160 719953783 856345514 727580750 936527505 867566692 997706985 86517990 534234847 691964381 788473136 955496820 965432875 377670327 498877674 74512875 349540512 657001820 691702860 943512340 947859518 39733704 292477798 21280931 292058466 771638398 871104608 766162049 954222749 722714484 823593247 846185665 973634219 655778651 683669048 884191652 949226302 219078885 392130601 586343587 815263340 889736217 918431905 119426916 259082490 963660859 994968537 69560483 777766121 141717008 604521822 178962074 601967731 476517723 534837039 244470045 919106262 62722321 195967886 721304392 974143168 677298515 923693973 735798603 863781395 838422388 993014372 17699279 981388448 775549391 933701954 806160880 806162042 309434490 464408328 847280888 986398242 744296408 804489488 847576264 857456504 505332440 837606063 121420751 537656775 947997822 975684410 43647878 344059950 863482066 938869572 426028058 710417234 79176721 115607725 42360399 416537942 598305030 721270843 809919929 988320234 881935394 967306635 713943528 949528306 497425743 798301302 262032114 859407252 821204069 962421626 966164539 981099367 378691468 496008785 101987627 411817947 792839873 898230994 659658518 952822308 249034603 262546322 434363874 699447362 204545044 511832304 489663327 548934963 745996073 909675251 562849245 670731571 45080193 273613923 865729123 958101460 481702971 976161959 255463883 327240544 131017817 183076865 425350723 710400540 630240626 701662893 649564216 817518187 154047992 572297184 192720198 318563804 862809538 930654743 145090605 719311722 981692367 985335304 488566215 770442578 137825495 210490317 153760031 338172160 33607131 586400872 482378850 792459832 386706361 702915776 116670482 675926802 833986190 884576113 659431943 717649728 662391673 804877011 56243095 804631461 51616025 212091686 483649225 919945121 520712777 827677383 54615926 887849663 826901638 954527149 986621120 987049888 693246098 710343813 13544605 207631266 637864416 741549602 739238656 963680464 5197676 443166015 792654321 972023813 698559584 845515671 302365479 609427603 97654473 733119430 505996470 640353841 544103779 674924299 801929539 943334009 615975436 699257553 138484726 521477989 115676629 347781024 535993654 671797706 953333902 974782040 684854531 868210731 351241817 727469611 754311496 928320921 255830848 271837316 709433611 750860386 651226426 803725495 802444465 837753378 63818524 914378561 227967664 892584153 362681660 528422605 164843341 402823604 388240758 401449802 672772032 871558448 589848846 669250285 928446178 973956309 809254429 892610950 762965531 935136205 434038871 444258128 740002561 932347022 895761196 990050714 245353953 319380691 361560309 718705470 778373915 874115245 881595878 970886864 883803940 948340915 410699139 616790917 180318310 345143541 367083931 547706855 81125654 527567530 935167068 992462433 460198698 791801075 42498636 939332673 842212684 891971840 61536152 348412137 48813357 241029072 192836101 516597142 107817109 161078664 914574045 979701936 394321770 984328646 74766957 813360646 262815298 609811483 394253290 916081383 552456870 768106682 742730058 871710630 868813917 908583436 684975124 713214971 717473148 823228778 595557901 663189341 990833590 992147979 286548012 448338220 423579722 556628699 729224425 807697969 821352406 996354343 190565403 695797301 922995757 991363001 783583934 844820113 252243082 663764366 560847969 614053865 732527996 831679835 172129732 442262307 994688091 996610467 231459440 232838773 520544845 679808216 610933823 987865060 511325880 986516891 569762088 837413841 816295799 854828674 617539291 847676006 944521096 990541694 240756282 735725083 387843703 518806102 872567603 933250346 646267893 671230053 321963551 806428634 682089420 845474677 894079023 934527160 332910161 986945605 770892191 944861162 906135249 936019745 584250966 923715276 515824215 975724580 486229822 932785062 855853420 927728094 436555309 471609487 575934636 740192666 612505321 815533401 58010137 160730056 998760148 998868028 198906942 559810542 441800335 706334861 19506517 105581998 926475252 980559225 21856816 165374844 641194210 927857558 548292234 647855749 369399520 892746897 630589123 824775932 260266190 493195922 660781405 973052852 544624413 806968300 704055419 848181478 110748822 933629338 300186314 871387018 226164104 381192939 172195651 746443147 133242190 605911636 770139492 936542132 688599698 776337419 822288490 900227737 321528950 804657446 654542560 711939301 103114649 182536518 682570301 811733508 315734735 871072792 950338135 974804785 284676318 852657673 701587704 909561450 300402595 413859823 255276260 603795074 252856101 515835743 40888985 122814180 309851341 439040869 655709618 892954072 889238313 998568415 14966384 458294956 545906445 777423579 846195295 919359190 696378847 861544809 870779895 905718356 767328083 981291386 868096341 917436980 555934475 659618879 79579352 882353112 467426368 988047550 245764019 477482701 919362021 994892970 228460555 635128336 620142188 900825920 791836680 832493095 381282476 698572183 723286225 745359010 17160824 216236230 701069065 743238791 897806662 989655060 526011488 762751561 612154989 762941884 458722952 665392476 564846730 668176025 13407955 258991299 871921667 960755322 573324011 921510806 595274222 717619807 47582715 486718342 963047935 992571801 167235820 903793657 471593662 586925462 601254668 935902883 637611344 809726686 179789871 854194875 306386420 491550641 770146614 884613407 580306489 619137348 197172466 560871452 178175494 423902878 899649224 965876518 208934063 891536206 671269733 875579321 193218302 225928497 691182580 735891818 405074369 808401387 597575122 760840158 627168302 652453246 473656295 712928523 617329663 866785957 654188185 936873955 481166866 954306311 195440530 254744391 413292455 948448472 777526777 913178928 264734037 307420023 972299926 973982861 245555427 275925585 991560545 991803118 995684953 998600849 544083972 550736693 579791169 870435337 507803520 631235310 797504337 945651617 614568291 761880029 130048472 458640785 56678892 919191202 533827398 713331177 449255609 661249944 265156048 893812812 420762137 973086462 200303866 751093390 529218769 765039478 632436845 910876487 907883830 938179791 95731908 991626651 300538062 759131138 780106419 988990094 836573554 845521563 688858796 804381015 23421831 903739027 93429094 407205438 173815596 732609353 385646104 478811730 793100342 804823763 876216965 947223303 487090717 491583396 487990666 649927646 35000461 397227610 183892569 699009823 681567021 882999718 459796480 886272639 667572416 705233773 455702588 905198232 327430316 733343909 61369078 129420342 836509971 844826585 704040215 900035130 796740201 879888377 90971501 342902574 240156720 698864084 500858377 757561819 527419813 862405483 293423717 547776631 914182889 936635791 558213464 616773195 934803650 945132585 12689013 966386047 158839943 602388301 171469658 998459380 607998699 626562123 430765990 669165712 900036269 973475772 443631402 637987474 517086578 942359393 415280004 460891965 774039100 874775503 978251637 979204881 65404862 695306786 463693409 743502213 462286717 746555014 471148847 552508148 762399292 827700448 880398963 923420262 623466997 902648099 124341062 462284380 29703037 961568327 833191401 843411342 16195782 832130470 637250016 866551450 710989006 819878906 997664482 999496869 791296278 943649823 528900242 768884085 736406730 911016123 174734181 500449709 942608256 971868439 999016486 999929974 648367676 685956407 688626699 855481317 424510637 822404002 770684400 800062267 316628614 388039121 885891952 970111206 670398655 732545234 511099011 686889092 816878469 983162924 887685540 942976361 355360820 589550022 698209733 723628558 28741097 619648941 928683817 977556925 683870662 910018764 783387592 856106487 744455961 958733501 625331548 801447616 887827090 982288293 411394444 874987642 859656480 893148136 952131730 972845930 537113986 588286497 143679210 680854576 472926728 774974336 622427827 687523869 536682526 956151841 599871435 728915826 303535775 401872323 51090398 387285502 697045690 860728906 468466887 960686189 227655051 642798914 925543087 977979916 566211288 891238120 422890166 472290072 324275414 740983197 326226380 684477296 740346873 744741426 111031523 662787221 428963857 475183194 594901604 801140002 971955177 984068056 534117579 535422527 545567289 908337247 48308527 166232854 93636248 184926628 868728405 962083926 983152349 990506882 577668216 611463532 805546416 827274962 642862064 723780566 503671578 990655119 170630170 985852694 242390291 893297536 465197134 600508727 12077504 295579614 654406394 988651971 201946122 629870979 709532674 916948144 247469177 764234120 969258248 985809719 396201341 978656586 694262480 906918982 112771980 397937192 879155359 985511923 818857418 848812132 853996884 863946263 559096614 973594534 31381150 359450452 976336118 985078324 668496120 914075781 962379874 995187530 812344720 974841432 207131321 782310697 461023367 506350655 493750041 567848809 882745569 930635602 643468000 900549074 839780178 915653022 522471372 809967549 910686886 931846763 177443233 304771620 848357908 998041130 438225458 616211477 174393186 838823645 794203789 847240056 385627632 863137702 559014918 575792382 457667807 748513859 18318612 931710340 738361099 990976688 227543421 738102751 390425346 585174188 403980378 585926031 43331505 779512532 139538250 966807763 105297563 268712007 957040376 987107563 180493957 223286462 380538176 567271526 590899825 643544837 701107615 762006837 879799432 985678514 345244381 769296583 632300628 701557225 819132230 909231607 272160540 405036617 396712058 659522441 52847325 932750986 119152767 239440259 588740126 772701112 897855689 920575280 939970921 995293512 51999949 865783236 791689348 829206792 287625699 951315274 752473455 876944822 978525304 982629855 167085247 660724855 271856804 370679830 484505996 535093079 798725339 827763916 807524399 958548075 172602356 458949311 297462559 494977826 504283607 841800692 24554391 54427959 159302925 763466069 842995545 925804702 539824962 952055911 101881427 152133391 430833565 499869051 584017238 828896743 440303262 496735197 630686595 897589371 592201059 936620345 410400737 916079498 48725885 260100894 961553045 994750416 860018805 989818303 144067926 548163697 171691346 710907570 806992625 964380180 614078782 641758544 106336896 365382974 517984870 572145666 682562237 979103913 664458322 939477492 173880573 196550572 974688384 982044864 113481100 134070676 279594526 587070967 8880323 225009309 908416229 945158856 767000379 769895693 133743379 512926825 590756785 792367261 915095572 967509421 425939287 809863904 426990775 536591020 71588584 191047542 730890364 905785370 146869411 228774746 814523396 827238596 108860825 186974614 384234341 741719765 493976262 989726471 632021238 665729126 699028376 916011116 543326455 754854446 271499546 724329957 655727066 864965433 361225556 990560757 97862773 845756149 607290346 823618969 167070217 414854228 201922499 403530512 897199986 965629091 245377024 922325683 904070760 916091823 35784272 352284267 948703737 984143802 258692931 537749407 159043169 819803151 114207675 851000785 973902635 986601946 815496658 864374692 511716436 942994059 255456003 833042933 436897321 633482607 208359030 869781247 466228010 549774127 607310731 678239093 542629714 758906797 218831122 366854736 529496984 955957127 650939880 880247485 507466261 982036984 232854073 390593003 996280401 998072303 455389157 485397514 362266755 575751272 87957180 144452925 591394507 591574781 369550761 756979089 189363608 764403525 152003945 798076368 959256661 963967550 521978685 690292957 316667331 330996923 526157415 735653311 234810946 908775493 158960575 768372685 896218214 970457124 349315562 754363108 888025777 976340332 10189175 769334496 74294495 500284965 763405675 974745458 209848342 434897635 38998156 145659299 927432341 932711437 426605090 824989773 803472794 861217030 238342852 364813223 371541201 468094753 787968575 972444017 465470633 490349487 968651327 982578052 40886284 692305814 996497309 999619671 956655625 991465838 616491222 932829290 22955321 387369425 827420196 853763697 445207630 874627625 214882389 720382401 53317840 800564292 560393568 595795445 485249491 554250483 994550414 995821073 952382524 989827676 804537856 862309021 785906923 953397722 342070135 839756872 718304657 734088228 41884220 728438320 958120309 968317331 787911971 907892417 286488838 811368236 902404045 996156276 314246626 605604054 653337912 666760864 214803981 771588961 921214693 957881142 522416678 783582586 681987574 912993362 471951461 805857175 908747636 982377974 951840975 956968824 743216838 961728171 763757204 810487730 47686849 540757951 839747407 889172096 65175687 380440001 858190318 906527525 19078884 606929068 576253646 716468171 524068881 720938250 690734943 865885771 586751969 788683147 852691840 980491878 594558792 989966363 187721487 459976384 69779240 81669624 297247141 970227708 4309698 892860050 824857631 980066375 505986303 659127253 963743105 991412820 554426942 561526702 203444165 728984843 440800475 723511948 740663775 862953452 208348607 756260675 513067742 564745411 242564466 984593259 999564372 999667628 539474724 599152042 597429671 938477122 364649604 569102286 893392145 996178940 539282306 779681912 635867566 788310181 614744657 765021267 982061743 994983095 958999297 991577885 248918371 757126483 413440753 546750568 788160108 815341878 882382309 929302920 638886433 993803618 60053387 945471714 983743696 994747188 264647313 395315460 347659502 609954882 242306792 365518094 274992685 664847892 569566413 857164678 907669300 983312096 531880159 662368002 892309715 951979651 629431411 737564198 61090173 923728190 472623147 739110414 872587133 921515631 671909921 717619103 492129926 780795075 953852007 994720335 558092322 677750292 677843266 914242510 571088973 710440199 291786182 539100722 733738216 977852322 666039843 766716661 567747778 669091599 780035902 982708746 203122404 221283447 729246756 777948689 712764716 842980128 933845516 980881060 802583852 939557050 405118010 685565439 640847461 899128772 955976900 979283610 39810375 378030292 247801190 266746059 715580641 885621329 319015868 578047438 126117191 333659660 266928653 609866271 363962462 885368905 385770304 823586119 198550704 568257468 815264908 921101351 706557076 863364815 554093390 773171533 555691105 668854756 435941332 806562348 146836226 403615346 458800890 939213375 488518300 796187336 193609798 379477142 870022324 930171607 976184569 996492020 913025743 997007320 53276306 99369077 733339025 806172465 83942851 246842631 825581179 985761042 416313992 485628066 171922338 757388922 519005184 754432565 791281988 827234480 493391101 712541292 593682329 766762062 649242357 683297323 655878862 700568171 254765379 291004129 559492252 662717689 104062600 722517307 892398318 996439300 649155485 753738832 128531361 541607925 895381103 926790268 229032562 748946992 998204312 998387928 616592882 842673331 888345536 952210751 522318020 866348635 160623999 611615221 930184624 991588969 608519994 632609796 506002244 684434226 361629844 995643795 32196522 186198268 930081050 950927386 260035396 293029034 299194327 727981244 808537453 893667918 774269774 995344161 984718728 998329068 33757321 124322676 353289297 980857889 686277390 855480828 485253826 490266383 680165842 762413682 855077772 947457326 321839677 948479994 98578386 618475450 393022044 432260727 964133432 980710375 81416880 372144665 914545976 949013007 260876088 430514252 914781989 932679708 636364102 764566134 736019282 866107006 854846123 949367359 508717046 899944196 646426096 687285633 926887807 977183507 269699347 571804713 838238566 848865438 489530219 754757239 413432211 421955679 603398061 893853379 500324236 975444691 330803012 991168145 984442348 991635496 65971755 661437948 895513968 905755356 183923158 751172843 440002308 696499708 483648998 834953567 95205082 108930543 75564427 686388753 881163176 997256224 406736984 674850766 396245572 757390029 316684287 574339740 787537296 788961238 662579318 828818580 304030560 730331062 401370940 688403299 576507883 576563293 155568385 588133649 549494205 573167594 194162508 797158805 80177244 362035726 771124271 982126464 699835558 937266391 633733797 967238614 785012380 852505996 982677555 984212919 286597484 539703546 598728712 824989952 236483322 672181005 359860291 673953983 29566786 610431486 609801260 802222757 701758154 971775583 747446096 950038154 72194302 499902408 614552197 698578594 456020051 708561327 983626316 989056739 921801139 977373542 806154763 956699793 284934858 866986409 791178402 981851809 499061273 937964370 899354378 990993080 360078254 764816074 891701880 924594883 663149347 905434006 382385959 696024476 147364043 316127135 925066934 969785225 895149700 989202014 512492041 844970236 160214116 332447567 695087034 917252953 736766052 810126719 674865980 687638207 547275673 610434095 220803729 560228164 346934470 864202463 793494202 944801956 864564299 985885655 879822566 966706629 417877228 698845708 716525366 865829712 377314648 998793474 460536503 824044808 472291052 611019293 277581663 776081064 221509407 633328915 456653827 825310884 285121051 729299073 544186554 684160511 202764272 260179074 645537928 828010480 253807661 983169878 144401986 731911724 150736788 858597024 167752514 485839071 256313239 986233719 925885199 970005689 897742099 954823609 469806998 614539838 856957725 867144209 471905395 634479473 543759514 560017082 548771738 838515503 662891158 769801797 233859482 796140011 857585771 978344434 287249937 454970768 579859651 766505119 996952934 997407879 739339635 978989037 918958057 985956104 64341389 105601384 685807611 884063731 827999504 932761456 403482997 682724489 400678236 503739342 270514775 670200082 426804306 981717806 907651579 970988222 255758611 842733711 496379525 676045771 893514744 906263263 891552385 931767820 823121920 937029956 723959967 988342902 342238498 383739492 540056027 656812543 703927975 888572233 576328855 865611548 309922453 458891739 587542793 883332550 487052802 758156314 341734269 554049961 515128227 758752764 882312584 972059819 633939646 870321068 339860117 854113098 526550856 812461465 527404078 684132647 879685036 924175849 229795256 860914474 599937466 816575633 48100914 181249454 408112258 749823475 902884741 984203225 15925840 450624205 144514494 523707036 446171557 546974935 82712231 410612101 966594493 994081122 217373177 390308142 671880792 691110490 146622781 987417897 586421034 836590149 731650758 866267073 622111794 930828491 154070027 471528487 231034387 417813415 568479109 782011895 426938878 528594103 341832997 416458005 202200901 809867543 675821944 900297233 290445594 980452129 31920889 837498031 795741945 839892806 282806680 304432281 780201488 905761061 380108156 904049934 864085951 980804706 398441887 939813400 705991640 992333039 150486157 161372107 594299078 604420768 979292589 993055419 589063109 704683314 620708335 653130047 545049045 782879336 590521927 656942292 651056017 666456321 527484555 723331237 921464352 992561913 281924884 641380587 264523462 290421001 576467364 828450730 993507702 996086530 834051764 930555002 91656982 221763874 710869249 747563271 313938277 965125342 938713841 939910408 911045272 976719498 818068872 873152421 746935145 781604027 905570849 951915072 71505079 813705868 460919365 985841244 459305407 556797237 191948938 611958779 464421544 872474518 221418884 378130680 511811146 914979896 885156258 984141628 793455757 915841316 410385694 622427671 290147831 850086673 510090775 834276011 910301889 983594875 760458263 792569232 990660884 994798395 800564478 806707909 49453377 864193761 118053221 778515234 595830313 647531402 397111520 843837568 986553244 987553467 342643187 554763117 467836725 586064579 419563372 476855064 481932844 689022595 490840337 492011872 290189859 762345403 458983797 570503117 47662384 256314982 736580046 952199513 77684726 514988701 941017250 943544343 422114234 676149792 514821443 736471440 405157616 986593956 506217400 808943487 96797652 875702842 709273397 844796540 841576032 968113458 952227385 983289223 169634502 672611370 762380145 979285579 810099121 923209854 74759101 497142957 1756741 50898589 931072971 999713817 677471890 721997838 136492856 975384503 605022675 886158533 560321434 888981040 137393449 773299447 902582513 993491302 631461287 915920305 564658479 848991714 949744851 997563671 531743029 804136479 268783208 644170219 586125705 666357394 821901510 884575400 320615101 463033547 163993046 994537323 698892749 928780378 905930500 974884254 6179205 912737662 552553893 861483183 10481676 640613364 10535038 833428171 672811865 703690351 401655591 996012919 7923888 616739691 135357963 419729499 838023371 840484780 74076934 645280249 287792111 943839044 973064073 984495111 334202117 822033761 377184383 983156233 470787057 606291299 276324005 455867692 823401438 837234077 174048567 927347509 916912036 930293405 391099508 507505870 5046358 444887694 361045233 881645655 561368045 570461498 22586223 41365247 989272311 991522062 421754697 783033461 666418880 978330382 202347104 808411931 76457064 284554113 770889357 873056044 390921217 565836401 586475706 750362648 398130061 621005042 264129665 471598185 658984909 685815525 613591231 674563135 767916423 862917663 175163029 792569786 978845763 993345733 459980471 587576205 315266874 854811763 494787951 960499430 941609388 953861802 192459900 879558316 811257897 933185176 906831126 962741909 304371143 699327927 716999959 939056740 204120317 454678437 351271751 844132309 279569025 625788420 236368539 489373772 828949393 920659594 927731620 944849983 684168164 899808233 253894145 691121941 715684092 944637913 927899796 976653471 978179683 978229262 278556041 943423372 312665122 641285839 993543430 995301570 589545199 887322484 170283731 496468416 439571864 702477129 848099387 870809267 963133249 977613302 261426437 685396870 949997311 987913658 153128359 299765268 211806614 232428762 299709356 674872556 35009803 378447747 331257956 783372117 901412161 979636359 14264933 676242529 328464479 661055707 906594219 920545880 633237565 711997338 820673696 943681218 906609111 928585506 28672204 701901869 888469581 924646577 809675281 928014933 445230390 898212758 694016042 751147246 440529198 564556729 755608130 998921129 975799485 998337630 824333014 832723671 978303097 990507620 652280880 686599210 23393778 476613983 242958010 936888000 104786621 289828265 330435685 526293259 450365472 898200656 212858450 677240798 440561984 698223514 904290667 913461392 208850219 536957594 337444462 370837153 56307848 746181058 27960219 461424117 267897149 284321368 904374991 973687042 231262912 992398769 556035229 815755714 761637175 946641454 313937849 680166681 346427221 616536040 270762532 480768550 94466642 450420313 267730363 283342292 376739179 489596101 843218997 877790655 346131732 814381685 605949037 743026801 375091110 516076396 532614572 949481649 217311888 222999123 617241678 861447361 687563231 892221606 523842954 961901465 943424292 982295556 467977561 710479374 759150694 808754830 132912636 640839265 176584124 657797141 143549632 898964639 385224733 959595157 675271581 912210495 166821771 937909880 352121878 878462613 368775537 711581783 42213322 148686447 210313700 435175115 270723902 661042987 101234299 439639496 24189360 891941015 820462555 824225056 642440709 747198550 361249955 934795927 235347044 562114034 812896067 834611914 589708479 865603767 257053822 306026904 28882625 123404013 172025523 355779361 61508229 594506745 539581917 768525241 338186751 495421536 608244914 733875475 391216863 530775705 269429472 369821832 56955079 790150704 943166659 961397592 565492460 801360951 80875498 735341942 230605166 606977190 327769539 455849577 897819538 982206774 906804512 996414152 994125548 999171145 190002405 431671053 499578511 696977607 511711998 885255349 108293537 899403551 530119839 929854614 653343649 941173459 771397238 788170445 199215002 423977119 517504435 949230593 901154707 955312717 178147297 467340156 844614548 994164777 57109002 518109440 425544601 758363217 698220982 782781509 937554699 963164393 524750647 985315072 924295214 939883153 557078971 903358072 395618721 434927311 798771555 851868789 780514351 899438500 565946898 740817936 116595839 463014417 314872455 746470040 592633019 702984241 377127074 792408341 179350356 698177217 344522493 703135850 532233872 947220784 186058279 194613091 255964026 262659038 475687426 827422388 837008295 853161388 985639324 987115168 769627833 961501239 736404415 804867745 939900410 962925571 537094856 786695843 955367222 969926762 21164274 525444351 869013686 928465264 874570938 909063331 107414073 307036987 918375909 936073067 81154111 424468715 949430750 978541985 523911988 619752525 163627165 595700018 709861285 886708124 274616701 572292022 221219477 988363099 600161104 993683187 362361836 971190931 238139392 678194776 424749727 649963296 816656464 921980118 213358952 991764013 397721278 483942238 700847666 712795001 920889799 956032681 340363647 974532626 49588672 935191377 671609990 979630057 558846607 920967884 552527731 645210324 122106605 643028138 435510716 858474141 170866939 926766400 847142807 860109726 991470200 997877379 370498900 662690727 164459543 511333305 774787886 991203795 975906188 976735716 767701078 849528631 39919006 912529397 930231848 941834116 585014147 979669549 131544798 357211135 489612507 771826140 109966886 194580981 65478209 205155181 865399533 973319016 356153758 708321364 182847983 482601107 880801403 897562496 82344283 998906280 321356320 547369704 794793223 854771741 821588741 928838675 792983658 907313352 446356838 953522381 357965836 412526343 535258071 719827996 385592096 712110037 802997940 894189951 544598916 563747402 126106109 754870992 890679739 941460488 287300669 488557203 642800255 789991838 314414497 416016788 592236341 621651149 698113520 846278979 125961376 652166773 206681750 552589110 268473053 595493743 314963096 812704254 44636470 355139844 790639253 919016525 87393663 780549637 987809165 996639293 265232683 480896177 884603477 976493231 662865235 791155628 992567517 994144686 372989166 711456236 711670018 716794059 812538994 972783108 53900528 697197756 273924642 869091931 94841761 649308620 438282145 883500637 116632313 504553248 292395767 714759228 137674047 644651374 443783983 565818338 180738652 779753581 387413282 809714520 784464386 982619062 623884592 658404404 934916262 968272600 449729709 525466149 440646093 897229773 480159127 893846682 324987001 354300617 399531405 579235435 721691315 935363039 551312624 826188590 170821708 678161975 414834579 860010481 472642833 815775597 747531360 919744069 598545872 862947622 320675336 499365701 976622635 990615702 708146480 755944821 192668685 387494173 486911170 503352399 126768747 678148671 99365269 759489176 819524794 982343669 14128331 882764732 607725957 747472413 136223508 707277075 557782826 878026736 242505070 429016790 654278272 871032678 837842389 858576726 439682957 652802737 21186102 499698489 416614509 734763008 366181917 933241282 763674591 978740622 192039348 815636142 353587014 747820121 552850807 586818623 149496538 390037177 652934557 805547794 901336687 987249184 928517720 985131819 402060782 649000803 530483307 880818973 480824724 630221784 793349763 903829833 519063670 869027381 481893498 584446553 776297232 794049313 787697725 892843664 287746520 791383488 989043486 995179593 321852518 855105759 840475924 913477746 634110936 811260027 407798765 515155731 918954197 943148174 425727117 677708892 808413640 914016304 686710603 866830289 385231925 492859058 973558212 996642518 652708709 735313304 10867817 614280418 625853596 994154188 453383528 898558177 36289265 624576592 910672495 926930123 543556682 790856967 822333384 950822097 488510256 488832683 76926142 716048634 791945419 851921193 36976348 891919081 410906806 526651369 924827492 936407939 597853410 740582517 87742710 317961308 765512372 824573699 718117067 955358318 613319248 866945268 94320491 246606873 608190678 992466967 609632469 848350237 69893140 706586885 186495484 696702903 15721554 142345775 977745317 988989116 492295653 817202096 138580863 917590710 818814682 881594849 905390370 940834579 38934986 99427906 901281633 909119479 681774718 831356796 135596266 537678928 80402698 912957231 603687558 849022050 630519047 690635652 932628038 938893323 918385511 923641289 856922485 992264328 192425789 994456912 820438911 977790879 193149812 920742759 854356306 881613140 299873150 367913685 963204340 976033543 366156322 812185724 709485441 903206437 878233388 975820500 872505887 971923429 158193009 600667488 119075065 177784460 780289015 785533596 107286188 658426848 632091842 667643719 280802579 891995828 991456357 997125741 860745502 899061830 951975083 964681374 366064278 720093052 105991901 117459553 661455075 985616544 526047907 609279893 586196780 680835558 256417873 830920948 182778418 771527224 126679393 604101245 588637836 595214032 707427545 806704278 956024954 995333904 64659445 207730941 471947353 599674952 161608878 386126909 364310480 473297880 509939895 552454648 961673885 979668403 361877300 739861765 729527892 899221258 152246767 367914356 224270794 618529260 288752233 660651253 295025852 810228580 248234129 683576243 889202994 900307982 818268138 958202501 785510091 907548544 793146737 851512716 681968170 779850961 551182231 846913383 408733129 502586184 656457120 887050844 190941711 962950531 626147382 687430673 285678072 541477664 474846366 840371308 568695291 719020509 2663298 983529307 387845256 936849529 653979884 903870466 441783707 784026259 35638369 226166149 764812203 792037385 633171491 837281258 749206475 848908044 523556437 575322265 812935772 883709184 466222611 899410226 397834285 564225144 50390377 626199986 378869017 972518725 215548657 632099019 356759047 360251321 722157144 858068555 449104801 780756208 903061095 944028331 143738152 377511428 491284156 538475104 342184985 796634829 256001111 314934142 960672936 963205399 488806603 588524455 927115293 958850188 203500507 575425403 933283615 971126902 295530061 681603565 826454507 880009281 557541692 637392160 577522570 637853891 889092416 944604802 116967711 368303354 294906284 466081079 4363944 203730728 483146703 570672555 371327173 447276259 984166433 988194330 971190332 999928924 232107767 323885875 706517364 933837361 473197218 750017804 326098661 703490202 608821737 817337015 431407207 921639852 526696752 997490299 593172127 786089076 516690490 792600596 728090420 873581657 353079302 930125199 638582520 822121321 912780733 918072068 50557856 734642642 799620104 927308492 613111743 882180821 939388901 951143500 556121536 593652417 90871746 531677106 573292837 611181599 536097797 630203904 120325459 983939979 722082438 908401383 355205776 842524946 321207482 988851064 932943344 934250653 416221156 568879808 302097871 756556177 677088730 989371480 854567238 881437223 564360980 856165867 280474465 825149519 260130435 985385209 11338536 451858243 480857184 718410327 418292430 661790130 664397684 733178963 871217653 994677369 731164789 951946982 760899280 787412159 383901542 798110462 748699985 804413173 226809167 286621314 506321325 555103483 476856005 680802271 943535065 953142474 902884585 905432307 541893141 947900068 590128897 607518926 356961007 587981911 861671701 971915609 159486041 747240334 170697566 523650090 243474296 272431167 164021357 522892463 94441185 268511735 894732106 986144162 644306043 780363616 719532488 873438192 858695315 879497836 261302729 764291765 44870399 542851553 15792644 423387622 72048525 423424838 323238540 559050786 13527872 932615224 988705556 993707044 952003362 954977141 758505009 821937933 613592966 885710960 791734677 916282111 234926226 806070890 197653020 375220948 636479204 802512057 334704968 634373655 991307628 994798162 58554944 110358388 600512852 727691345 830540395 873890924 942248113 992412962 217158142 714703939 734169504 758464340 378224097 480649875 558692732 652872993 548881522 877631892 951968141 974546756 292430833 816750989 715147166 847492225 879587225 972486882 688881800 806469714 853711185 863590625 498477066 937474357 383645552 399956242 160461391 928853651 798433124 961693465 458735206 711756767 606523204 774466135 810331358 972470649 371908183 694352735 425733611 674098237 739666249 851811809 828778686 965789698 776850978 786482375 495900683 528262075 184721338 915887081 251959612 422225442 122210893 190344008 327683474 627561845 970122606 971833289 995331164 997062509 631763912 870667531 167371699 710488691 512439312 669494383 539177855 708259330 451015553 738508345 486517897 624636859 509097873 867917929 983552762 999462034 172771846 334602155 646648329 996443689 34294471 564834906 734253458 886742982 6097622 782137676 264515060 740117179 214735264 332291161 836280058 938286262 605545208 683388504 899973845 925668232 274979449 549674998 351635098 778136463 759761906 921781452 549686409 618287943 741107501 867847285 369692059 787286646 562533893 581608700 887726801 994987894 447494180 871162842 118996575 584017923 516017965 808273997 74033474 432068976 818513638 821629350 161100312 939388018 604240860 673659804 40367595 802602977 261617054 612608550 297774048 524136066 461556790 611529417 937446284 963949642 712726000 917666237 454767896 706458973 22277424 161615442 614432011 841079442 76699031 657032799 749281007 818834378 188933067 704887284 807623493 943613874 913494308 993923427 537223028 708745793 193017412 734440915 822130707 946855460 379854235 795180493 24335196 481366142 107320463 177196244 824501579 987370611 971732760 987482918 320204152 836315529 928288154 947230223 524385461 789620606 92417342 205233951 790291025 828816668 488535798 838900724 693736015 874527999 837997929 860931678 873480525 880704955 13084161 479782564 125803019 848088007 577010048 647601681 852709257 932524084 773253569 835334448 239833217 874759927 1344281 489598351 354551324 720646466 605017040 982144531 788930287 989838209 707753536 799572074 809852567 908891593 915656519 924586567 142563358 863479733 446744699 830347596 694673188 977525574 265906267 668541281 694006055 780646872 541660773 622683601 465695416 789769798 632490993 993913524 425453782 883379609 119163146 179030272 300237680 727537434 813771693 863497779 940447010 993060547 218282875 539475128 39687893 898012580 43824815 463616770 690151997 891837950 850659603 861369913 41111810 674424028 141207796 372185465 656154094 913473716 349870611 499996070 7570749 857177173 386814264 516161772 838071733 956876366 811287074 835296159 136856441 415472032 92651371 478303753 823792024 923756904 927535663 941795052 354719474 920132501 421467474 655231956 694906703 803070395 107825274 240017373 350734015 832302974 923253066 972019825 590753455 996897215 820803911 998828532 783532718 938787921 832957309 866795517 990003929 998880485 625582511 634211960 197348758 422225714 977800904 992579200 353562646 728860310 850859442 868042741 565899153 930275958 83853366 880531754 172709194 872672382 982790080 993451906 783125121 866913509 213666226 236877767 19493029 77580761 371078943 867636220 883486846 981673306 805949699 842820689 669924271 907670292 568972526 950432545 29139520 599908656 256580559 365165117 412008601 899419659 119763645 284980942 9070013 128491703 106490196 146013277 333206827 702865612 345011513 410418670 200911998 809329679 995892814 999069574 514559011 541244368 295670934 436361700 932262246 968035579 613391773 899525136 822863926 848491545 571199919 860081676 218864233 980966141 954407519 958063765 936081309 952602767 116284316 209785694 977697349 981962598 373967268 583333959 999101552 999730207 119145311 430156234 130882994 328651567 562970839 786913394 713028542 731118018 685757206 730393201 159150774 543136645 787214965 986785701 523333286 881592190 506287508 576647788 826259737 963186299 585475733 691537267 171476460 730705571 962132790 980389551 306552797 944707274 50507950 52372085 257925229 859092358 253484552 657781285 377631686 508202948 942614235 955952460 139983121 371112531 730714795 791751379 596164490 768025846 264795806 471435687 40217646 852002217 342305571 667350315 670910009 733691361 675090995 872239857 992287325 993396730 296410917 527882442 11631941 672147012 105699328 609446584 945252903 970429297 942567099 981984732 61397939 930746862 211937041 686477923 612219011 670673253 927431519 991546394 357787442 363669091 814927830 857807824 358444295 552216864 889081305 944512456 72919554 412562126 115681163 115906094 771449134 822648337 228975790 660911032 515158027 895096595 353502582 849303723 582759582 934220207 827474262 923409869 785867139 802897966 701336687 834069535 225258913 491583252 988598488 991420267 117087918 349399226 370774946 954054310 97177310 370965708 832755501 987941423 199119109 811264039 846565457 924064995 20887327 705249926 718275674 914354969 409099577 456416012 404896415 557492815 940142270 980684583 163300494 971895723 632144507 744946886 545940361 817447705 824931990 992882125 621130181 997879945 15961033 248593912 66017643 795257614 638142558 693329005 379196825 861044573 632488699 714888236 520780611 527824802 805661138 989985400 226330237 685387978 722463046 787477569 516543016 667660725 895389467 951364841 266356404 506294637 857435696 886064192 349075666 514833787 211262197 439283222 83044136 661202855 74283767 535338219 9157672 908532215 142367303 925684842 469744447 510916693 268339539 502473106 982967668 987293612 92813340 142302584 338146378 590852896 745092792 933209855 275772730 335991412 385678569 870161051 321908424 573538607 997987044 999232087 170151334 181255968 529719026 635394151 564977394 588700150 866050948 973008848 973064586 998019127 167696808 833488281 179435546 208748685 5573747 24270468 433323989 756539552 838026019 954594004 821329885 822146650 395814422 688117784 868848342 908049967 844664364 921023439 680266196 866565482 443109801 886836640 92102681 365531786 864075226 902532126 51381109 622566602 833221354 952809075 22453092 589585212 50228951 333310736 849313393 894926830 217387711 338412797 853004201 878244503 478747648 544164595 471419700 780348749 805577585 926959399 516726603 529993938 579800573 597390197 871702500 967271773 567912600 797018433 314331128 387137219 318773213 772374108 921406836 979692321 870591205 926497307 573562722 722926093 310612829 530039610 115377876 676233648 124545995 495283740 373141245 633423709 280460824 682231124 48953793 721170063 18700683 152453769 770817621 836884098 128776665 485761243 346526641 904081677 549565397 732408020 366319312 608578328 395413719 434843567 681243784 921954357 121815046 931171566 722204907 975028521 424969270 787260702 52467474 256792678 372124246 499893091 357227275 805137265 799310795 914623397 838752001 858461624 785786446 933720122 620092823 719967159 458937471 758110971 215892634 590928354 248189090 834499391 703581186 930407548 787191916 854902694 984685806 995001208 876438336 983776312 886966634 962621273 714803518 920315848 952308463 975200970 466086560 550389599 739969646 793377501 779862646 891981395 601400852 956254283 847133906 998091222 901184711 915519644 713305032 932215454 693110138 960511156 267292367 469205106 735235532 868438178 991584294 994249485 500381551 882179816 797846603 980093933 565538651 645074586 501014609 953720399 59701045 420793326 159928551 521938886 280463099 533521924 977705189 978993176 895124880 983118987 915627549 979492232 448690335 476856222 796175112 867877597 822816117 943132075 285782405 977898814 246566495 255766889 971875959 975080969 230492537 309479790 800248737 887147313 341819757 691475317 136222206 833090265 766652541 937536746 441185144 573147061 3325235 368447604 8494401 803506223 142794503 409995245 452829240 674336891 317103535 723086324 710700195 837774089 211152330 849604419 805720637 954875064 349603895 828987207 819809128 829773606 844262238 936496140 468825229 953303678 102387682 620349040 225081138 402004476 700912165 927547542 509875724 549272035 137107849 963885443 721536691 825046706 410395762 545768529 641775729 762750174 698960596 783733407 256623313 556604960 982278716 994293767 269072723 977175628 944182753 998448833 993908108 997017750 200832853 629268053 744355019 765952882 494467519 633138963 653436111 893457439 39249895 801583078 496289614 863369836 511524256 805581735 24676628 901721312 140402985 601024948 454310295 626051118 521804677 529823728 728923866 889501943 101036127 559364695 118181509 516024275 52812427 579478404 530300014 829668361 982037608 992060753 593035606 834105343 873522386 925172701 310361639 383263689 348647687 548290876 722920246 747236488 30918667 223761932 990721790 990750265 786904159 998219758 281669871 794308085 645499843 650294045 100556579 421840817 49585455 637885488 261233510 990672729 724612152 857591694 473734614 832239951 253062606 846110705 524864680 890316060 813119580 848385178 86831422 262344934 966702714 993710205 939829918 983730170 508299983 987539514 228983537 795459365 942537101 999606078 464328623 929948684 217724927 516531546 497804745 915329946 733361938 903040310 69806415 463722209 503491371 936712704 77684529 550382387 182359315 378784751 320795569 996872512 809661837 956298867 18779442 549696998 977571256 990408883 246607302 271180071 694700430 954213216 127474125 582294352 26010712 839614992 686131985 959016540 519453375 641043091 718049958 895429126 7272626 103543070 71362993 799746375 938460597 968166445 577778772 590361131 379253847 935243858 598169176 895150444 668015424 721115708 319707689 337705820 25112706 85471304 644301680 808490997 671201929 913890049 215736029 814194012 339021069 490906481 876658776 968488444 737855047 939736287 696396641 778103591 925559319 966078185 222180406 551685287 176058531 682796285 295788964 950443688 534649660 754439463 998083042 999763175 277940327 704906407 724199857 885469492 215550083 436197673 832614616 956374161 940888988 949867729 208330193 301237901 764770234 848623601 595139627 617570754 946696407 957289309 819161805 907453853 933963740 974559684 292467397 530651175 768702381 807529141 299205940 491889460 805576742 944927553 95092775 186016339 522698526 950791479 938121787 944000429 404146089 413520430 453016765 663015204 286701013 913242973 817020538 886020966 42578077 342117552 325356715 419562882 533885578 591215565 717152172 803868892 155152360 974949212 891392594 961793368 465594001 535891793 370998931 853715270 68318669 637638105 910524764 919450262 530664753 824859755 287160975 875733865 84151042 944522985 608905152 963274991 522623561 754536025 747959915 862836255 870962604 957225334 654461179 943072579 110090908 803971854 826832981 828366670 198931445 452501745 742337158 963364420 632797670 767825767 496091473 585563169 928414446 966556231 254945190 274166304 374024458 900690341 551301031 623345279 634266671 859959019 826616919 873385941 161321200 864548982 264050299 705556927 131450705 919188036 279578958 684752030 20450928 366240998 292878884 955495868 127563898 286998447 830425607 875069658 744335587 957941110 182784367 231012984 524414846 875690041 201521821 799408515 51372132 471811043 51931617 991549676 632685607 653588758 38433621 869123437 153800546 276959489 446759798 602144883 909650984 949528873 567222382 855388422 370931230 578031719 790917619 992957761 121678836 990633476 700765201 898661566 854030376 987313626 488243398 708754210 71667087 610570239 466548726 983355853 394719355 976779972 563783803 930248328 303913382 314953418 886332205 988292394 842649873 894153849 906181002 939875166 914323670 977726274 197477388 937353907 595140117 735026283 496286075 640494568 605620583 797371045 178469889 228915632 423022939 673907343 430427697 998959415 5601895 773363446 313674749 957479281 356090681 409338846 741208260 764154608 363993307 457175435 162249536 642735742 926045343 962006968 251034044 926143721 821190207 994968887 796430372 877693972 759594020 909016676 886427866 938814945 428329699 970194830 487346758 966758264 378994126 910441083 381846574 702442640 591292453 918641421 172935744 738773991 648136448 954817138 256731972 662650831 89447426 177592070 863041186 961449258 663881857 818658201 428913980 472846658 279862079 419720350 293520765 465249774 762047627 966728454 767717315 977964789 163984710 801648170 13680995 561117794 597949167 696192632 43614168 433623777 798273297 824680557 341775359 486807480 116248376 376735723 976187942 990562779 132504881 333899215 177599782 999053405 95235661 550676582 242264902 544419010 231556422 280816619 743892330 992828213 765470782 866764532 342355280 871280069 661715561 662763422 624906214 962647398 147165515 743877853 710513238 920148732 23644539 124406929 566857460 661869753 716635224 729467129 58802830 904209424 55222658 82065446 98581319 265077676 298897153 878589574 1979125 236250744 951547338 983059322 517066227 588618912 833254454 932971529 871834708 901198961 301419016 893984871 453187931 802826458 377396954 401752814 804489670 890519193 865779104 881010866 291496899 751657501 509236751 566425515 5805000 344318546 262216904 835000159 76599134 350564063 631123011 785478789 292588901 849019985 494662846 986987086 925141167 946538968 724265785 912890928 443195836 968112133 533629446 644868440 361039757 775821047 981629023 987266200 239221849 878774006 165796130 186615138 504223307 570998927 762688527 921970528 801369205 806721490 474310806 785101942 194552127 599385741 818869918 886811074 330297750 998848556 782392674 830315159 134293567 188742159 496073349 635794177 326730234 730823638 92505107 467372752 158750044 583040292 460582192 610404762 362581626 375271110 608027693 961108883 197089358 955829425 813750885 867035945 51062830 291263797 545373742 607733171 487802779 840217604 220680496 560896372 768322050 963636272 844972274 892489434 427207841 794425335 663929383 795871600 593651241 707159225 481172034 969661681 462051393 539523638 35273056 934141515 491583568 661526428 491555223 881407520 156028909 391117710 658076607 804537055 358831212 660792943 9225886 851304737 487594036 781865356 87344362 515435075 429574424 713645907 239258661 844166914 460331161 566445384 520655636 724298193 247911317 570747684 906702172 963352434 33916620 590023191 739916823 956457619 880058099 896103507 227547608 266629284 364724699 552986663 258572555 907406853 551709873 923410284 823513262 842895208 206264237 424316311 372100196 373645458 552831448 890163393 659563802 853847850 836651563 990695516 133387484 911505976 152342038 344382230 602189045 760934477 717110633 924439969 759383946 996932266 64640222 324245548 333904516 982306735 375822632 714228568 73569155 970363134 469650767 676253988 938553312 981670578 868131541 973284383 15927484 919000284 226918642 896237537 643427163 800811510 451453158 657286714 894869030 906008299 595808788 932628984 576682480 635038276 409081140 817172936 944039466 995572369 400860152 695625583 336748865 441740309 724453650 733034700 951723756 965791817 880701522 966275548 62986504 959608573 639040093 785531517 268510946 980016275 581885068 825711863 468806588 693143444 942846176 945893686 675959670 938400420 369490138 676353547 517577251 786261755 187385332 565217251 304558341 526944548 693911440 781402042 553915545 799206741 486447311 683870375 186540542 915785854 992172845 996563795 674971721 790109549 642718551 922623163 308158920 935416568 565239152 802720112 241340462 562461586 498677737 791025910 484348692 694296039 577595239 897435709 454966040 535590694 800703921 904367881 485645833 875310291 568097682 951009476 315997180 386090334 875887631 971735030 376679873 514933149 381538939 550232005 675029960 709774783 919630343 952929090 613166198 837020519 194237010 914998856 168442723 633065708 628707575 929233721 116816971 487653564 626530063 956531551 72413235 830257877 561255391 739849082 509815324 605809337 179806879 292124965 896355352 943209169 478618792 656087335 173808017 933325479 724162605 754717801 131276872 746381684 45004971 301118994 959600062 994243372 66255512 911772749 49969852 156763562 906064191 927979932 442428117 967199923 957577526 981693394 638668453 733275798 491033579 945105094 29326184 581768523 637765485 941056147 662230148 926648128 799973625 962426192 789039950 910274574 635469788 911695282 533510908 808691090 243344965 678973028 991287838 998045134 96005817 169945039 457464281 940682305 755515045 832673705 895563978 902470427 168697860 537900869 429985514 509324736 9296590 400636838 103708658 336049656 374977511 627278336 792996225 954900900 626627571 932967091 785406193 956601511 157278961 387000486 602923396 773644066 247186319 711449824 410975332 891308180 963582379 971550930 580648277 725587301 485197201 598996349 996386019 997642996 626766600 995231575 41635344 932290011 501970821 982051700 133404631 187499852 402149910 891875253 106342069 590206132 219236321 604557328 152198931 455370136 364988367 761576630 915595845 940461217 844838267 898042162 506819089 914246108 752899265 824342805 325714319 719540713 752345388 922056457 251853953 972468042 376233744 428126661 317629704 874192470 762871669 989061978 154256248 749272757 137404416 766798624 791908887 950436226 410492919 873611351 390643948 843019665 960064932 994568685 918935424 941749029 184189113 982455441 144853001 710843705 488601237 979734372 797569959 845937764 717944812 826882340 356530751 816171050 823290220 900184126 714448464 716993877 941841512 967804456 86942300 456729627 726270529 757917087 819369265 822763258 710746661 889835200 589673282 903370658 594628390 727024165 635577012 880485743 60275081 756656805 845741088 859644783 499732086 669423124 657490476 981876804 15984858 254643872 71889712 794448368 466581016 936690894 120970608 837832686 306174946 774503663 298780718 610642801 684553375 719463892 973283670 987146680 171598969 771658068 508063653 939731522 8586335 585652750 783917931 961678976 157663801 258274207 544482918 991712264 793470542 916884003 267491321 562879651 686028886 858454854 475241887 515666076 224708180 416654293 790767622 812845018 401202378 890300673 800579222 826624609 675063380 811331755 195705805 671974415 964757451 977385681 942727839 979151962 499895563 769581049 896905615 923357307 58998705 500477566 580122342 668642572 651384587 678573642 146532524 610436145 659546841 707059815 177387109 382190670 606551429 752928372 560221430 597555336 879024260 927995474 363830190 686673039 498597399 813224800 203822467 324360964 679228491 880780973 198431159 743429172 585523211 842448874 981889661 982125135 292800412 710445773 117297402 846802882 479783003 491483810 726850207 884408645 777163107 934294613 260958986 953879191 831878077 841466843 836314134 871795705 964486396 990843418 209534968 693133485 276710144 466313518 714276371 866568014 717112655 956062569 759358487 828461174 95742148 891738053 754041858 860208147 224361929 552349572 519253945 633488516 605012389 810721910 823381880 945248928 859377935 882098167 269156503 762219632 932511681 948805115 338009000 901510107 435410388 904394619 604482054 614799818 643796618 807017712 53334929 579540070 768331882 878878760 524295887 863613766 85336993 653019207 555253875 925125740 163245210 784761649 430473306 983628723 640689360 856045701 505018959 674714597 352175061 950462270 438802542 988771896 224438801 236973943 322291340 402548758 591394589 663284293 649765298 958251529 548352245 824506588 858149302 946704146 668592276 740943678 32118791 711579773 191635579 875610491 702593806 813484799 558268430 827669206 397724746 891221048 852260165 948659920 776817982 979117800 116595067 843183384 629511847 768042361 723529031 743805971 59587901 147762531 409129649 834570592 181361995 394909969 536051674 778909193 806540458 977589138 73303117 151314278 71781267 338209778 598869742 930355139 272120217 440991792 475743221 678636537 980580882 981388319 655276939 713213373 294551364 481438087 903976118 984348667 204357731 850905816 93659195 792291276 968926881 974943739 523226977 888337566 770996829 921156603 750104655 837131879 849501356 947654386 143234259 256818036 357001927 520531151 286084723 525821283 490714150 686249453 433043749 870312521 569006900 865452089 978861728 979903992 259871753 345180551 225396270 481507407 184541471 829401911 395454442 739268914 412265632 535808921 157795856 503725359 510938372 768539833 130912552 248460713 953683522 971358201 69952915 494191507 466863498 471223009 702690053 709794968 984041873 985947803 724281370 754444522 370973687 624703850 870422011 929368114 702327784 804379526 672568879 846339288 899260230 998242430 169260019 442017734 132764752 373640353 212319581 775077938 870300098 882277487 416974456 512866418 549373014 620417042 235450662 800275088 492379820 735196610 987019504 996839798 760778046 929149863 735348888 868792636 861242864 863832666 763030152 875908370 617966746 900520128 916032284 966277944 872278035 984709869 183234733 939349631 610823522 954503765 778991136 799322707 150389000 272144123 558677985 873514204 28858920 594403064 540656261 619802675 536554916 675098486 897762460 974073496 59099377 591125375 893171021 915646562 130546009 929781126 364112867 981370260 977774403 988126878 734446097 910226214 589045319 974814490 448746241 504691646 265788136 882712024 667074062 675342405 460581047 921294225 531782667 988345812 4036519 72720068 275953492 627528143 282867793 937870106 291641561 569532306 650874983 994624291 897918011 916158158 284046907 981723541 937442535 961817054 380918188 672497910 952868789 981147760 562279128 917726119 892530649 931960506 248702911 745023179 832505431 944986598 186221159 977301998 703660529 826822654 255567870 569816124 74143648 811249950 222072480 383085667 889465268 923448909 922577506 949678900 47532172 927149999 214746294 923120053 271651369 538455811 255481048 862315299 845326330 917874465 640049058 717746260 331300393 991972589 280339763 633021048 553205853 885401983 999009220 999865658 695309399 705175196 680219814 763395584 186221528 627777821 231095543 741546987 974487757 988863650 618016580 856798507 246067590 820465467 492692492 663988255 506769553 632825610 10399103 585251214 963588922 969547596 435840470 814633058 551383873 983689803 321459124 649942831 950166792 965342251 945777804 948633994 505975420 802779023 768106196 883917649 482824351 549961706 587363023 822376510 781652657 924822701 949685339 998933384 175204512 353479253 317002902 368050048 658883817 972534241 919404985 943478551 818007747 994606599 486416015 647325215 651965972 835961636 523098809 725214106 884179473 939750093 716573387 924076683 763043301 969912909 5834493 766425899 753050443 971262776 227597142 460239641 568527940 697309206 87953521 274015029 974686728 990354787 283641743 488611812 808301377 826611143 328148723 560479297 168381605 811409147 57622843 486444096 928281622 950443062 658247969 937812849 17140761 174308643 760986804 767640017 786680701 975496343 746727728 867514862 845419634 922926500 4207020 870527466 825422029 865486644 291581987 801388427 840996145 866586327 890983469 946865566 787089937 862140288 916078555 921464886 929373727 978677044 119388504 987493077 687815931 912312917 876468273 943391373 11709103 102943665 617521337 853254983 130874624 297635352 344545733 943357395 508493675 739249687 627285884 894531248 739663024 750407232 579844567 785928211 865264256 970512724 132266554 901671383 714684483 732077493 782342365 887453569 977442584 988735163 413733330 645615334 455403734 459063414 874669551 966936373 494791620 627596117 976679665 983166805 166954092 764243301 947101456 947760489 514235920 985608417 823962332 921813233 469513885 834053655 98763079 859332695 81726030 942697769 54490442 922935213 313647909 994707119 624183669 796499624 141613267 165744106 231224692 575393294 200846095 489615263 389713876 793137941 804303094 874109044 864813049 915764899 869553805 988133183 761124782 975044608 459556254 854224253 116364896 958515583 210306281 260605065 748809680 858242331 164006957 761450392 316805271 939469717 955674512 966155682 785037848 801250743 55780858 423417707 156710891 947284592 276218388 839615623 162126505 728696734 415135592 801271481 483600779 682687532 932142557 970570165 489249878 876703608 871580823 955903115 222828482 645896787 543751452 784623257 503823717 875630775 226107083 385383623 207781289 937135311 999389019 999593294 433706495 808790975 521751603 805225076 146345469 734972564 462535466 603023952 810696810 933431509 727884783 866333272 626188415 753924854 332422947 654510817 972006589 974691096 569096115 882064172 278967191 801530352 998022550 999393126 79296695 774784350 634834686 928789031 532835834 592074681 768658495 856761343 427618855 811860200 983325531 993920995 170403276 839370986 95397538 617374199 663871333 739312939 303090936 319072163 760151697 961729755 939229863 998904018 376256795 851796605 998977516 999428678 494359479 757597257 171096421 954353416 596839721 908035904 68911755 331760846 379195063 891819492 618473014 991159316 453333092 471925317 483364857 921586487 185465731 700096264 304244457 996815113 477286376 679806952 987244002 988536217 87668782 205120645 626888261 892458637 265420622 649070669 561968067 754272801 556923836 883647848 307835660 366431378 795591184 833081423 330513732 677443439 975337163 987742318 264129820 299739135 145669579 492502022 880547460 961780968 107170981 930421156 645632543 997505036 715498230 772954256 19072761 876581462 701157859 808304493 761298980 824679969 300058162 856519827 417635401 936115071 995803029 996013405 170397549 683323465 599211551 799668778 342630684 517065897 492266350 691932777 697306202 917295290 493194978 633395828 339718182 751758402 232006392 923173024 567827078 874629121 573988832 952064453 111463657 563057318 879738673 999207324 460891776 780653198 876240290 902972341 946990042 960536775 671585589 788240970 799478246 953692553 183703538 353860236 952435740 966184162 63767019 196305347 68765151 599526274 689106539 899915332 988966386 994253093 592859246 755755504 489030133 558882141 78394835 450208063 94320343 490861526 295552247 809869312 57795490 447987807 886388776 925913241 797411987 878168020 46858136 459285291 791748779 901044564 427648500 571646707 977597313 981532221 519869305 754509742 907340064 931553161 8535514 751124179 126524520 654635527 285059316 375662825 700630498 738420127 657653756 841555677 674471974 891002407 102910171 533103592 506219801 789132938 526703411 961069168 289112744 598921652 990348922 993973136 298981152 465706625 969974844 980652535 553735805 633950863 568774452 930839624 694626294 708024294 25375665 446578397 138940257 539205006 147177701 937230110 27751667 530875115 292764311 822607510 507161106 987013979 963023852 996565762 201121928 544973177 994651949 997086869 279154488 441859354 575255083 962298317 324809946 423486565 376392673 790009411 455422377 698009505 801153708 821267856 537994286 949251082 595550521 661869590 977722351 998267566 942005564 999030239 83994220 540668319 486829616 627772259 596250086 604172350 272564720 732385565 463587105 594395460 372501963 419505226 473813220 619357733 340408332 941107312 43442109 760658319 365625849 427078034 143499557 840871439 589818880 682841662 979601983 992268493 441424026 832443308 800385366 843985781 970754862 985452121 703796667 953495372 167723717 837281608 995981746 999698284 72940989 470988842 673505976 986118266 836815940 964261792 137238994 141942359 896525957 898412089 58687964 264611893 131506030 755346294 883612505 976602203 195545482 534234950 100087133 275714027 898697982 917097660 125227609 493467344 656634972 680719106 564814593 891292932 238058592 823787887 341992948 833412115 358273827 697639091 525020278 957026509 495583477 880488105 478668804 797033090 841686034 892229774 103689217 393765835 948036851 972092372 404642214 486827146 920666642 995697350 328128487 557050323 546208488 550803526 955213598 980713096 480112540 542496687 59484146 226146007 266235884 973538540 288997665 989919298 596402805 982876016 893391738 982829852 306021960 376408672 984653793 987983073 756234930 942785410 813569747 897468097 388589454 823631916 83616650 406307601 111434957 552133236 590955492 736807395 638538169 887991387 590456589 857466668 108144014 460156673 732496091 812671014 890824228 895022624 224454009 743512532 11552557 405015133 448113770 567417274 861607647 968791797 262805952 280258665 595807898 978733022 756940008 887184757 885830231 988236534 496069058 968342965 112815005 428811683 722056112 847271575 513067615 620526050 466397094 590517231 431252739 941868531 785818746 814582489 59489288 159635328 247383660 425120243 67469001 512126295 859800036 888773316 257176623 368517759 630811914 833127599 511436387 937536264 958541454 971457367 598130027 763536808 287842452 877062460 285931608 587736098 885940506 887979043 393947406 568348851 744061125 894352626 292528622 551421157 279895975 946660813 709880643 752400300 455944241 965452141 960026688 988460761 441677385 844889447 358424587 855728161 932952964 964493471 943890566 986293170 890766518 911185282 356229608 571466828 241836810 945597142 279061297 818996075 454752527 692448671 45164027 880344982 113138617 627098249 812983225 825137118 575388291 677887027 253559695 857791422 741739759 827326132 594569022 672288848 514872394 708470983 729045582 996113122 458170001 677522999 256702201 730944142 223007471 461926556 605890981 608559411 41246972 512916715 669140527 967526683 667535930 875638014 36869290 645937017 306165445 691711811 19968138 823127025 49590732 624431613 524976441 616912829 7284444 678130608 672682682 748957636 558726592 922088526 692319220 895425999 973973252 975881397 237613365 932791446 517208488 977766332 191313427 916931088 936184538 989311815 252546684 512134403 9751071 732794876 924132140 928135684 83456750 644712052 609063928 874920423 695642649 729945583 603601131 633951333 461411001 948291889 52885215 110933901 568526457 613687699 548581832 655097796 807314736 989455760 71379910 621344280 477705254 760421967 716723059 837227902 948526772 996292290 710770507 726312485 560881248 902795843 79411590 801790121 944766388 988965474 499663256 960323607 969393853 998072235 20449300 805105044 658365171 771786039 748424473 845928950 106227080 821716435 375130200 441502561 520987088 650725340 981489050 997674863 109407027 645536479 527812002 942135608 324957936 830127772 511977353 626970917 424981115 713985044 174588053 888905377 795712950 872508812 127085874 678158128 954140582 966596521 747338682 887723929 585483566 683468911 503704136 886932979 103832358 626815537 48278736 966376624 970153714 979558395 328680644 561901844 970294169 987790269 333327189 428257544 205732446 603308631 775683725 952472033 398205479 445939583 29013706 858728910 307017128 721993541 78907070 386292079 64674625 516757044 735992006 857339371 457642949 645418164 732849772 954274298 197530175 285937440 729785315 978750762 854152120 885504762 637579377 705503595 473487037 743513053 914672502 980465721 888564615 946463541 99961568 599310830 359066232 587348252 925001173 986228531 450929235 518438419 114373204 555359103 882113160 920861100 404340430 495567639 508090215 568719076 433116742 686597211 115829787 382658251 783113363 891450249 605908909 885211208 62777017 486221404 376453932 812994221 868628812 980030625 350346025 859059615 830807110 951779065 486442657 566539992 275289271 706010440 672796843 897032353 640424743 849843293 398653224 493360793 148136414 161678911 191970601 401575595 569780317 892701628 198592359 588325490 966703197 990830106 823437719 924939493 683861765 806532881 705182239 748433441 857255035 934854464 492326719 766678030 292971978 422069609 334474657 742745792 572260681 795005022 777455563 971729157 24561022 70587544 990525589 997422776 811132521 873627435 47675043 913619517 783518504 802910654 543198153 681462863 346264386 914853631 619905360 998300388 16718171 756971718 97437778 654983222 729872553 852593084 327965240 546630168 284401088 837617837 434401133 983235770 604109612 619273564 838143972 909181078 368660122 550957899 932221364 950293189 89185179 330770700 625897808 692781485 162694281 810310687 641152757 934262797 862710060 868661333 136777846 201407265 579244531 940559724 92431382 892422234 158674536 733816047 936276382 961008803 760836400 809899871 704353312 930293663 254042466 940006815 116310856 306305067 579769977 607050261 234616585 396107859 813669226 867158415 560741912 962291018 111285940 404704709 907219217 921124595 23431279 955063909 631110636 841011937 79873664 910674603 61247628 972519092 448500837 607286885 219272445 338862456 207389397 652503882 146368923 427412780 545473045 629645388 577160020 648731216 379347055 717310976 519222433 928676727 540087767 850974381 371659432 580604185 186439001 498884821 271805189 515586487 166290351 815958645 706542862 734161708 15695290 617616384 922509848 984277119 922102654 983857727 89806871 842065769 487666734 558753450 61557545 547386673 500741597 993939121 611713250 833386495 437049940 687108652 628162871 966334039 573178247 946858783 801007684 910544457 378052086 675463311 680981396 991204001 372639382 870428577 724248309 745233480 602269482 822073701 563877169 661784190 448298603 930261868 726444350 883222182 9378131 519383711 879032531 898362340 596275495 776289885 221081397 518360960 65211366 377521923 640563938 681221612 495956491 540008169 932980234 976013811 369087953 709708352 405219490 602843396 966249255 994310010 669826573 737953921 850996261 907607025 981651716 992447952 265582755 813706802 468072622 628753167 860266013 907058107 124229669 568251215 953214367 978537811 79019571 819821099 519841535 593236272 527829001 919288433 138042643 475904032 286430300 683527337 670187516 998347063 200731081 280720545 109452409 155040801 622419908 883116158 295313173 310390900 492981711 689287121 820307537 848490433 608478547 658410427 497198656 864747552 531151432 762516383 790922858 866869010 528793060 661739383 431969851 447432293 205395843 955993374 48452431 457222952 663557355 908172121 55254855 711597802 32030860 661899931 842615130 909524507 697643709 737701555 226923536 630544826 975974089 981812120 566416734 674265840 825990009 936554479 511330383 975420094 984551623 996593462 785229747 904602984 330426944 524169208 331317589 887180601 153393751 964210911 251902069 673223045 770110615 921181157 24463998 945837130 507328882 528506385 999445240 999534624 653909689 977764773 395364804 898931362 813265989 874755082 564146862 680970130 672381989 956514078 567303161 634066856 411200802 841900238 348567622 632690715 497928415 757107645 759766437 878781528 186717697 724392001 956133869 979600506 299161299 619915073 407395533 927547854 570779738 676713686 152475771 780487402 38439958 717212182 58850264 893607282 553851473 824488400 633833672 772826151 787175580 907918973 849455574 948240412 763793257 804360018 901847241 923334288 207523220 745646457 102895824 123062171 371393258 931947148 722859722 989879261 510995708 853654472 361755233 498961444 470959350 949955789 774436960 810429375 539464296 743669382 659020881 790440056 876559725 914569538 968119825 998302951 33590061 270033463 689389332 694759886 750448158 790932150 700099392 725472823 516526635 938772738 169816547 488512599 299821617 367309461 655821641 906311106 742771977 797330640 944935127 974805081 266122715 643434781 81685049 800045358 696031830 779603061 643369863 771066547 453790790 591363862 394322468 488356876 902527076 936118401 910073552 983152378 155277446 659986625 989629302 996896281 770534211 777771136 48610324 242091020 431622777 490083910 911850890 995831493 792514487 876115261 85981855 455941206 887768845 952110271 428760673 487197443 25583973 790089189 372918441 881202575 361647738 675397626 545373331 604294203 257429934 413257698 639848983 976829645 484665721 556049277 616831024 790112860 64291668 566485953 485228874 743659555 934229814 966687640 572533882 918094715 756992380 778786401 633667756 898827277 950023522 951980287 307469036 517595943 79437532 745411193 194918711 426633955 862347180 944482953 365145984 983096234 832068590 929895512 658501488 677549277 132885178 740507993 272075793 504903254 224558137 310221493 943611036 972984842 508476107 728699193 67981190 649965608 373027515 895493598 173152118 744612961 334756924 420285536 123244999 266180538 995935814 997719773 626619502 696411570 393714894 574531817 132182350 152872755 659994413 824609469 295453581 910753436 669267800 882823020 864767161 961341364 795345565 985742650 867534561 891623777 21059158 993227509 770647554 798861970 445529974 723351429 423653699 691112845 208219059 444733972 29714176 143208127 9910596 663394206 576901082 669026254 665977212 994797080 44012765 927316459 619679353 824937011 108624977 476208967 913209310 951701961 78731628 414486627 218750452 682694938 400060185 779731961 549113377 680045282 63208152 614558004 857459152 939216599 567269247 818683134 178360304 371559011 349720319 640267681 488645966 896189798 424471188 849511401 429284330 628057093 496446887 780202439 364974334 935710542 563946340 977230082 503478756 640902480 629421140 769115231 445035137 741247713 232643280 703892838 532150288 686427315 577363922 963387815 590663245 978190614 790669720 886348183 187437505 719018839 72966733 590853278 910197631 956705652 667420475 845347844 729422290 884522400 291922717 703829953 967558817 980383928 764498640 781966022 115185519 872862624 504909237 664919453 754812550 980004734 960835466 988610133 92524655 909293968 194185819 535689552 912142845 946175978 355984704 665234174 277724040 428686223 735854516 747719858 687735162 992030503 833229236 908418106 552751826 677491702 531950368 998429747 160608975 472390893 152214765 261218794 550516718 837645842 343969091 538299199 778813622 953901845 511152339 557437200 674655716 729060242 174631295 388458532 394571643 503845973 826441412 922366510 898672340 961765903 48363442 998827428 492231344 934231632 52677716 623876379 825986339 881287438 608355855 711806911 852167891 986219828 491177411 863887449 157142488 259561226 939414166 968124385 652230787 932684949 732529216 799614607 455682634 938790416 260509192 584338683 603861590 966025568 654320313 760319323 284043000 535230781 783706621 809262779 82277074 179373672 415935741 648425602 61474128 964550745 577471700 848660245 717782836 910404207 878417479 894549127 906710398 975160566 61921451 921349153 530719508 674737050 406986038 566151485 115086553 992292323 732989452 948035677 142180700 576537950 668036117 978901137 676049564 809954921 37939877 534974565 962696190 968294253 197336860 267312270 365614228 519479063 178958726 820284532 859204379 927502713 955987380 962899449 816960833 940360771 654950396 950589896 265241364 533557234 366187641 953810758 78286136 808804331 405783093 466492749 716668092 937997034 544292112 956664944 722757231 869761166 919811736 962819161 759646271 894428511 304466008 548648216 321726469 400454092 779895738 868458568 956464924 982895187 258004122 721895273 759820538 775226549 485324870 603119136 886260604 965939346 537616075 701098123 157163409 905936375 97996573 717712768 448618210 808236717 756884229 890477160 324098328 438087969 909912106 971684057 776746320 876646691 716073842 994663826 42722796 228569882 841754725 856443036 474999842 974399838 737951987 864952363 4065101 238700927 680986103 697483979 865385231 994168932 688081216 973409223 7078648 367013305 435822572 908590749 948738064 974712954 212296729 823391104 166213738 578431152 565009838 879332610 498294366 975001862 62532481 199290179 133525073 269742885 194741431 292504480 674168974 696278903 138157818 968047832 95623808 205289944 349063149 492575581 666011004 996851070 653966939 761937579 883315165 919523664 124762514 335617797 643743709 798789908 675745834 782179227 813999482 927789022 865574624 970212735 993710198 997745281 219724775 387096504 533803266 654028333 21790275 108780091 991181087 995724312 955583703 964762716 959561551 992654051 30142743 379287775 262145045 647101092 878159763 943872501 521762278 886407196 269575852 833731514 501500870 935941309 819553553 991700748 712151315 777060953 369871818 781064964 529996206 546122699 758950822 798558416 645048081 702437858 343138743 743558552 659678147 946379541 542362912 721403133 482897389 939177645 14612737 493470585 85713338 359891962 720014852 893988625 496819478 714525512 696132404 980359988 881525334 983880304 643289741 757778063 747193923 881133786 746139593 888415902 642458444 761632225 636093081 970956230 73050510 630074559 200625156 263468790 505873324 991968257 534179404 963653616 142563067 585295547 242469736 347722164 915859373 999032361 435074139 808980626 197257776 667675813 205365307 402775080 904147491 905944005 275638245 981947138 287364137 542355199 25040252 605036920 646980427 993793735 406386721 448421736 414323263 890679810 727640915 784200446 306111481 964818613 258280265 530779925 267554644 623702466 152229026 749808963 736285660 753133601 497390425 739208418 912746412 954074211 938378780 988506316 999288047 999493862 683096184 950535279 209197277 340177551 623672765 647791152 513680305 804295052 386208651 636428643 262672069 482681644 802506615 937305300 325848914 632693517 80991070 281802062 621907046 733815707 543338548 810802626 598282555 902548859 610059890 690788864 721693621 721833154 21605998 312427642 915625482 962263779 370307918 985349353 417286204 492791084 851910329 919460027 930923215 950531893 391735059 699678864 478146287 742205230 859421349 890704355 315280298 771775133 39421938 456744882 521193147 810350569 195226183 791456189 351721145 862208634 841868625 916065714 457087259 463020489 256748748 629038209 68762712 892575999 301673787 376843258 921487025 961764626 543351802 723962127 397831982 403389473 409268664 663767439 547253120 738935066 792209846 802114855 265005019 967633517 74001655 583532237 386345169 965160765 410782798 582097335 659347937 978618329 525457958 600474735 798687387 863413692 165598738 589778783 699926718 826193905 848529067 982332698 91511014 301840010 179110624 335145080 19191166 631073942 953097341 956188070 68563054 949386904 608914506 696509798 270250164 666369328 434719640 815397146 813608261 862735142 15853233 832798460 564933693 785601178 9827267 594950510 72514952 378731699 155257213 872774415 341122703 660454577 179478296 768724346 190624698 810386395 678102483 725862922 511510106 738205507 882587604 925472240 420264287 842765318 390174173 657242725 316299416 336406191 813795869 931976752 886957261 988569052 916341602 936812174 97899751 883560048 949688530 991520187 535207778 918388657 418713307 819611762 13895772 939011616 504982650 947046909 771077902 826340739 930614491 962851956 330917724 563029929 191433174 226542951 117278568 859050759 405516251 772786739 813571522 922894511 543486769 890277775 617520804 904454998 52183651 613516496 657397381 812670862 779282779 921890687 779195756 779613015 352639395 849190067 788453975 997112724 929181081 943521299 827429516 867096505 364891897 738036138 614935616 759058910 168098789 728889647 560301368 650641688 746968891 823676686 520629476 901530432 275867989 548234734 820050248 968356920 314533955 911393603 839769367 970438322 325798027 509147794 585922961 642849013 671096110 934094219 708355041 896816816 178329861 689206739 72196600 847794295 72116467 997211810 306209468 773810942 898463326 979891802 327578646 879036857 472951345 913241724 724400368 860575059 597835691 679925766 580979086 888899580 438511747 493930307 798791208 903508892 254334604 357475799 662287650 812168262 432993811 805373125 589380182 864169110 696027513 972813800 761898774 899210677 739326830 964609652 842019318 893354095 396570053 850319679 501147963 769595519 70284903 553381225 619722117 924239877 701333159 902399549 612949246 803058550 174808741 937689329 237623534 677721835 846208546 949659391 258123098 516343745 268258871 567606232 120377245 652544484 564300970 641249016 804349690 883210840 203290494 344149257 17618262 633748600 174571333 423803974 427118510 703103293 658920589 961487575 737093833 955621914 839589892 919829979 423342206 974228454 561943783 812191064 792024221 991896917 440871599 967613503 230852525 617086536 560400164 664330144 613767446 802766726 902847470 935884084 563676677 742517521 382505511 664189121 818480962 877716170 386254450 619117264 506287133 803341093 157402264 933497341 638847812 896350344 460540404 627025572 944240239 976206238 610707253 950452997 467875798 584772964 659228332 919819264 689728475 886339243 254508741 803534310 752356264 905549290 38888234 622320590 239535664 345561998 233479799 652653178 774910650 970133198 65161264 706095272 667075618 854463533 207833526 511179503 285535336 940770840 216214350 609120593 438332064 976722530 980631824 993898612 796308279 911697329 289101977 949725635 452624456 678576964 197157367 466575400 393216819 768598499 40032709 457042913 256289169 709230319 601211999 745591389 58552628 657965201 382651646 709292351 851436557 905317952 118147134 646280317 51611963 830721872 210633649 560628768 684648339 709276188 201264179 916131513 167931024 617328820 739793494 805253740 589474636 931711724 580671140 690041210 98113049 330940601 884532123 901632863 130498139 599479847 730950738 942324832 778154626 958775709 857007114 999898625 779244671 863633760 74412028 301839342 889802449 913463280 308512520 569682664 46494086 975792438 713037047 831268483 693882181 940297755 358315018 556051103 973223120 980716586 863684682 945893936 781296296 815556296 505050682 528474750 302805070 731586928 432854713 596106704 714853663 854920719 835974132 873130088 998807582 999870270 342746430 851096922 490351475 887773839 136947361 465823857 308907795 776089029 949539469 963405112 626231282 808451082 415260760 435030097 854139232 886116971 21117622 534824086 152767347 817270430 632969311 929884970 594351766 797246910 744986797 924832459 915053663 930798723 404778610 458861296 30487732 476276884 475721675 861831175 140246508 916259923 247229769 702199722 862094951 934370496 132667030 375744791 46314599 623469184 759782040 995757298 904788272 986039093 346778426 603654878 325479064 804555764 752777992 972486142 897285275 904953291 874745636 937382885 101892397 843672844 79274870 522388801 844568151 934775795 86691650 520511433 597995972 732485298 641782568 657343500 349658942 714400858 624666220 786316051 435898427 855080463 733431270 971128178 539707283 975367863 240600068 878758150 642137360 774110016 173607807 964770139 330424980 690187013 67734846 964751746 420530161 838938220 190245089 329418919 1080565 564352497 485790596 959697952 118289441 223693260 687751229 775199999 786619174 832592992 943068765 982709075 6823921 877730850 59235958 76254072 697273430 725513204 767511978 939263466 136749449 774186271 989939555 992815539 596675979 885483940 538418348 598108489 127699487 340757952 435886043 610681089 310505930 792546044 604374099 869524087 737382668 948138632 694201697 762142248 755011481 807937922 221587418 692755390 741910476 971444004 230572417 884204971 122072002 586170265 136165516 697031911 239627136 412458462 375314758 950328704 246693533 978329843 985116082 998577285 2482612 771698318 508898680 626754278 256625282 800708940 807348171 838987427 738603030 783311796 485916517 531919927 702216637 939466806 63233907 568504978 247754529 415360872 878527326 931725981 274271024 539928868 165271711 439011092 184665463 960532098 184540123 344737064 660382082 764440079 189631429 597776201 802357297 942008808 828831846 910948546 808383778 923211879 39301406 560602120 655016399 934105941 377528327 701592917 579846462 910496466 557936291 937629520 438605898 629284565 150558689 452542864 849681887 973461720 94050168 715716643 818248780 933426185 789263516 972563688 890520791 918746855 226935849 435759376 89474150 275223801 842895072 944719966 919335636 928200829 796283745 855184727 293100670 313420722 263843281 931346293 784259933 861766883 747805257 861031161 526323507 886618601 726968973 837545623 600241915 656551602 766783688 878131086 17869055 619808840 873845750 884237405 154110495 190211862 505053099 595818631 888724227 900660535 718433638 760729466 101275709 879519026 328697036 708151525 986955627 992441326 254331346 960477776 825493916 967675163 986014197 995979912 929409445 977587267 945478126 973502974 954354653 961432736 999990652 999991885 358327326 563427461 831666024 888236695 607772509 806613087 680481574 707352468 247486676 899992444 218587104 574141629 128004736 949508415 358376093 542214315 447554221 898215875 55352841 564677344 171553320 579077462 17533688 306719451 366306450 424537479 407382135 965523564 544347725 997144863 146290977 254677851 791882865 927118418 976977414 989649034 424284217 981827294 829912534 903239287 16522918 743163686 966256471 973884456 573009796 957267889 593157763 876608138 593346702 982151512 915996043 958709077 693754728 947092253 157980777 293735890 740145458 928760557 29706253 599026484 799748506 974673478 768378872 815926309 162365961 349786274 213381889 293687028 221595941 757435508 980991234 984104541 881464804 898387179 303416053 320456629 850309950 952270256 902518574 955226846 858688084 873296597 903542708 983005165 338747557 832373294 498269924 763055058 577755441 654792450 873215381 926690820 976601116 984966571 496878749 548926107 597206524 828408605 298744962 540786176 236479571 290148231 176786164 952354383 761977609 914316317 853996523 900451577 241184664 482012150 473978967 955809522 561054017 730394925 896217651 941050417 521382049 970226899 481680684 783376481 417640638 446335179 207892591 834928215 522640980 945284107 779401226 980686760 77533680 794442119 813730022 857404247 705298089 707223404 350108226 963373380 212155058 362656202 104700993 520046169 432061428 881174658 994996212 999672792 836191655 851235974 136476720 844407950 821789425 922510749 45769644 544788009 204411066 464032376 155577538 948078344 961404571 984362752 343157826 529279572 434338116 989661504 1797473 227047033 768024148 879959740 822408772 998789687 880908328 959935667 575029742 818273380 672995311 709919450 416519061 697755294 858593747 923686526 820858505 877955141 541725778 612959352 788797275 911656018 904516125 917439744 865247192 976008723 386319570 954815283 521512459 749221505 295460811 831318565 290854674 742325647 349491508 494852425 766725573 976855474 397543824 874893992 677862172 950101931 395120917 600143689 214838383 593029791 881420725 900373648 142469507 554234420 920779278 993140107 466696507 573332102 436491849 714254944 926405096 962059824 615356962 854911690 508929170 893455079 792508588 834975353 455088977 544131599 693688476 986747354 923002351 967625994 99592173 712536848 387185946 588325785 455545240 903399360 632295228 917419577 869749641 960666229 31386824 666756450 859544878 859946050 476386190 974812896 446618186 661565444 132630576 244293638 523646420 555475278 956939622 989019691 167236514 906284741 320445894 618674936 560886861 634562402 711752298 819538027 797396329 953390170 1901639 674931154 268295501 505096754 840177963 986199215 646217347 667853532 267679056 573698636 357051728 784044300 8077560 93537221 712220069 962473142 691300060 781830737 861927693 991460005 825427570 956914524 571765588 968670612 121638240 255522869 932083576 985663396 307968871 738549217 492360378 657764344 507072 821823136 742009544 995946551 427980867 465646720 963487540 989997644 421771447 777049767 595245415 716989661 271708309 568694353 922365866 979088698 215236589 532351869 465361491 667330891 520577255 839760178 144428270 147918899 353250438 635790691 295716230 411478292 56985299 265294576 782688540 881078304 766400696 951249184 627509838 918280619 21871242 723346698 145363131 990351898 580441265 972615999 883492471 921657285 871364884 992797738 327234694 645222246 254471271 592025805 990974119 992922631 329624230 847422957 487989158 784900731 644133147 739177133 449582732 479407948 728867075 995454069 440085336 865977849 148561563 769413343 680890240 680948262 875647969 876628264 918047363 927579141 6412140 474739333 24793831 281624866 399370856 489043075 30145597 689753394 452806930 852443231 101447592 872543719 54697449 864138178 85711387 328555721 907795211 952578014 251615546 664997320 629147000 979943185 425124035 624125687 96232410 649001633 717461186 976072790 225796249 507981544 785156352 877789985 383584128 468372837 539407188 904267681 841159249 985356585 838332937 867574647 697709136 732089929 642110353 938319218 653091026 681524426 748038551 935552535 938071564 977547071 347021519 632533330 64814894 685069459 518174790 733002252 433936745 526504859 678000822 911872826 137091898 797962344 739570561 994633881 831732643 875866843 221036802 963266395 304884178 979019626 68041518 317954064 722566577 731857400 510268515 814098184 454762243 865864467 259213198 792795834 712435902 785666502 644892865 899332901 950925919 971420315 736374016 981481699 378548592 478004747 786362758 992710118 813557012 830390746 344264394 956098612 764574010 796769712 842215464 857656459 259981970 479567534 62424565 818565479 878109765 959770601 235276562 821406766 827647429 909495228 439246592 958084298 504463359 757004791 392951218 555457316 856951994 913965414 159344029 888053338 968987707 991332439 200866599 593189135 508576284 875191134 470344593 563002824 488354197 861871944 815571608 946990962 568211934 891331647 888446449 992972964 95130654 740463092 889624623 980211801 522431872 793407944 355348103 934750367 663592744 672871783 50038758 910623636 144670106 700813187 305248888 977671043 381097565 483636287 442743916 981234068 849117070 923405217 165039209 581731035 262513374 430056343 347412489 362373473 788433178 941304717 363138605 728078392 998406961 999711248 286213805 899750684 515974771 976858766 681875937 988501308 90054655 962690812 95137280 936516877 667942757 695818115 128672567 507301640 47807320 992282378 202452654 651416960 304758987 619504246 805971050 951353845 291401158 668638422 258755611 389813157 744376269 777353241 856199879 870328362 76720302 134123395 16014751 852957254 205852140 812636178 62980985 346864560 120271929 889446336 21623620 324085690 835674337 952235909 895675962 955490833 318461322 492808085 626854092 971216664 643605301 922765476 390932694 852031928 421096825 598623800 172975946 890236161 345613585 778389953 334838926 377147285 299267822 890669402 897889245 919491880 51241781 746706522 122134114 973090104 31916146 72490038 63511958 472292063 720070661 998860889 245110009 278305374 873280067 911379267 665817461 793155385 157567134 167782316 164872228 399646397 318126742 840407384 915700875 933349806 635599142 723511215 778446612 910471866 754726733 944222999 572883719 613054914 333197660 717915639 726320855 973904923 615380288 840688952 669575554 975846875 100782285 976559946 217212011 436812365 948084283 954947561 614284592 952178013 18696861 105560543 144792264 471701585 168114988 978985401 635936910 861509442 268136241 434793238 566986289 592835966 963030596 991423999 473103784 530130581 35985832 505873053 396426574 884405900 991440638 992752398 341251507 406930411 329977492 773214351 326157533 420970503 229075393 369333100 576246973 766713286 72429185 551073451 597326417 913453638 707348454 731440695 24215363 592726528 707582345 831914139 479038814 887090812 391375540 970182503 313646994 726456980 786234468 962285045 157707633 933275071 556473937 827162304 265604379 780902759 994604407 998411081 815893773 823591017 629967106 690186660 426596440 556453247 932177102 958138510 501724275 934363779 760950756 796054101 818811153 864422689 741596789 900071434 620518996 878920639 135654072 632835520 522553233 842118664 492978920 998334910 589044293 853385942 504314929 986684368 675281922 804531114 988010235 995891003 929668200 939128592 716473078 819844990 888084188 999090420 229273030 473124335 660934988 749849218 632382490 868717065 810755716 967654585 520200444 724042485 308894556 368735465 172301517 524628073 494204833 954057685 632321343 700848619 20238372 733387076 836992479 876654555 179212850 341104916 469270630 809620851 181031503 716655063 367508488 554605792 402380622 479911560 431475609 687186187 309421469 733318728 207602673 716938282 244557365 582209864 401609033 542644713 3888810 278874935 922266589 992325329 19702491 744912408 295385913 418006066 387732424 903078677 21149355 594689434 478547282 584008063 47906292 145979181 540153932 624629496 300281988 925035750 359390043 612749087 769443774 871745505 399928938 542418374 514847935 643208442 589065017 762538776 944782982 959478882 209376471 466674370 146506123 255879001 112378817 581448810 929274545 940177424 443782631 594026419 777357915 907368417 305931735 365155916 948654899 951116496 820512129 981486589 880903181 910386947 243212359 531691154 816289755 867952198 560318013 588295680 15611903 297640341 637172987 933717119 736594463 867350769 745977009 866594495 335266881 581918019 411806215 465812370 385525518 413165514 372213278 620300659 869655028 922687066 765157747 922380331 511903226 768280306 145074206 378586338 720299931 883770344 976474026 980977380 628511285 821973434 591628404 731844987 763973101 970179703 173710430 971696234 583161188 955316150 286472864 576736489 953530095 976874637 113113392 714701938 642430574 758711995 761857125 769775940 664401543 693078814 103315267 610839165 218665957 737357561 201160314 385397138 582291392 746979094 926014514 975731330 667091341 798384205 370618931 414251494 351520649 889013643 273871785 977998987 795243741 812957435 510467072 552890867 385550449 969856672 940428991 992486599 169245914 322122087 204870598 939701631 562170892 790419410 965631087 998722937 273919066 585811898 848486072 861152799 60595382 878484247 584250417 831998851 133918596 845278440 219417539 314466114 273463394 854475763 504095555 972289230 483696099 550998444 656467989 801921028 750481190 957261875 75536786 410842309 759727656 902489469 527914092 717530819 563788896 727695699 106376097 967476102 229667375 941224221 123142841 894158639 943496233 954552963 121535537 851905226 767732907 924910594 455815519 761529935 35887797 366659530 321643507 625967429 307009195 404848483 768795865 926532938 173335887 409444134 629508017 953869187 710931155 711478004 873540908 920753549 796064739 971261464 958645005 992880646 789935087 993498725 721899068 868208386 816069419 837529103 124147714 917534088 603017709 814160970 78097562 321434457 894781102 930536778 814114371 965031183 50680244 810236254 773147110 784846616 880020000 963653474 851307792 941637050 166978272 671210546 897023692 977517619 124876186 411284554 218930787 488994808 89277774 383140080 237379074 620523099 280963119 825773795 126042635 185036610 414836572 908328616 531919439 989790647 448009455 834737513 588018024 631062210 59842390 888336381 783603215 814567071 231447459 990192386 984509344 999178159 829750239 836798536 25356261 631112238 994640187 995326439 244881946 565576366 657317 704024969 122440967 218069707 732412042 793370048 744161369 822129110 929641903 983986048 430459389 894931226 698471928 832556499 281325816 916622160 917869530 979415269 699173300 767517195 544778056 776830777 213657623 746538736 560300431 994995205 726041848 734395856 238683626 451925178 87030953 174823510 720901180 815243299 378424776 523013027 555283063 863219793 49894931 488211985 804623709 928312804 998937337 998967438 763101560 782370341 235100847 337100060 378061300 671956535 847451972 962603320 498919990 958288775 76606923 351051285 886057807 907085509 980477209 984619885 473256717 876159645 664559562 775461867 307181111 783502024 20860702 205523984 539102279 854152702 636974636 930767502 537588489 857675457 380055367 677555871 866818383 870696375 66087696 872411615 386244726 407027646 554018044 751407942 371326091 487824875 641547864 650908260 33991783 189624937 462520440 633899463 922992044 997035809 496928943 819339849 85507911 975555068 61907031 306759638 369360478 414634964 646512408 649789179 81056637 543426646 785323240 804052134 854407159 893871336 260016409 750026993 373488507 928921771 259764204 883152245 264469958 848111085 275930411 780867998 796862547 997921185 84370637 281649228 452632674 882816378 703384304 731026175 280499630 328627150 284221405 542962107 516901424 996365673 593022162 912471073 143235997 744397264 130016853 328411945 591202685 699726431 140104392 796783847 559494359 696628634 420114278 429472490 546433807 674411133 380114806 388387207 657159219 703230950 525056014 906985286 463940645 804561011 24265997 131497982 704958575 943366898 38686703 160348075 674319381 867635951 311150392 915015326 6234033 408281935 362236896 404772707 638910457 887615996 359937412 847096922 258684671 692098334 261971747 396229704 956445379 977332750 232570861 895096398 116856742 653523248 377527875 488282055 539491768 866366887 729605845 877233058 453552341 485906577 253861412 369733794 897131960 912893846 2897306 670253534 751186799 918121901 497804162 568805452 622423300 673935994 707492554 934971164 956222833 966846501 226245850 980972837 564178142 848463761 107241034 475617250 775633697 794121961 714190064 718408429 663876071 977237095 275348712 358025157 54927473 640733586 269379533 875279570 58520483 360662076 231954014 749408312 215419467 948552125 978630013 980866811 148588487 852680095 333597022 967832569 969430114 990314100 641961443 934438886 802765490 833780487 309952447 384509035 185676457 466635264 816997280 866007333 688660540 727152465 261850867 830617671 293304415 349876831 355027194 372580439 61023438 969304827 335840529 564236214 385477945 562443869 344649114 350607669 392608521 401374706 988364936 992271223 716625487 772653262 641361688 769184837 883200109 891159755 722731605 992942356 973618290 996471608 943256734 950920084 723143938 837374739 980294682 991537896 506005073 548958585 556961873 795054518 477063058 628982829 926725901 966233078 773204657 826776662 955240394 969147398 674026743 843107601 736684615 746209866 712990941 993466016 916584547 921546682 862336529 938094561 925684028 970465438 592860572 601848859 941671830 973219196 820070299 880270272 692463888 817043433 283942448 673469711 390594525 806823703 947780902 989709238 656498574 788805325 564111236 805875789 747483718 919241387 259564088 506832121 321840968 634222070 194560992 744871919 684644844 840495590 37201879 447796148 715996605 989812175 330594738 633988286 547468703 975841048 123050115 337658042 8745863 9003174 780087295 829477160 105605202 245341322 86774352 691777235 377028501 925970395 981137761 988098742 364065340 890359658 883346492 883929236 19055631 735477720 371859360 561167789 471200704 787108187 777071107 879762793 483251910 727756043 207600298 444524421 290304161 751378084 98394919 417747699 229557083 830789426 821033452 909714460 292850712 783759373 389603412 802729053 929344724 974043527 79285588 479060775 564327613 690062153 604959843 754210417 229531031 548788131 563208356 713981506 930036796 984330385 116483259 388147523 490024871 789429775 986663850 987913325 68166770 793990403 587119184 766255574 443607483 755189121 84629620 390320185 625332572 975664598 911495008 935329839 315030038 533641937 10103826 561883547 358686149 727255181 595101907 723863502 573553647 981413047 568357509 634790234 940638572 942245061 358850470 982715220 968936046 994734960 440352576 798557800 959917793 980777421 982572641 988713359 567657326 828522231 209411748 560791333 355566457 551976178 384824825 675223221 54990327 348567418 894514529 947505013 504636253 757868522 997775301 998582047 537030186 707773559 783305070 835971755 43507191 70444881 561718257 879772926 797671656 951015830 262465601 416630597 28471458 484263089 499275122 909368439 649853072 995019655 111563331 535340460 911459262 928996113 919617836 966351103 708618200 711516001 361892018 918361659 740058912 803712734 861051859 977041692 339110129 568067479 3760661 903053720 679168464 718795879 595013629 885100685 717469085 897462180 226735762 645939190 685515809 993548840 405662631 712848442 484475325 781656544 954457039 967073418 677295075 917616770 929021245 931890856 331392545 895524587 489592907 648689050 410348684 616000824 119607646 856735525 76850935 112828120 748928251 804149189 56237816 907499183 758571228 852431222 18174748 261240492 344967947 542172159 578225632 616793257 504051621 568768641 197077435 524549470 129740018 233643743 729355924 977443224 386559512 622218073 775720041 942952240 152242278 658134471 330420137 424755571 319559007 948942659 597778082 969645995 130241047 831725878 651121695 761623730 110486748 982338982 588587834 675282079 154547111 580023707 393562745 543390491 310359438 877783143 578010832 600181068 883034262 947155688 751292029 799288049 707602664 838239008 420439930 953951413 389426180 612012864 711440675 939878201 882664783 946412099 380906545 629855733 241454679 349240326 491534847 835751542 551616366 616668403 102700369 137679970 259364949 652963583 4138918 856246840 327217125 894843378 893186103 957876163 422317947 569217869 164712189 716277835 632501729 726372348 718359349 837169424 804542385 854130798 285172241 878381804 58383124 353394061 841265355 983987048 250688551 902095025 576529181 868682057 764009904 877775131 132066567 749712145 623551354 996936717 126153723 837750979 254895989 668394115 561311177 573049473 251717778 792406847 824630051 967208405 152186060 480624790 734881881 788545301 962719959 975272459 170746160 452671656 592091953 684295067 86009900 195886802 639253525 684052998 55771818 300065105 20036614 758659331 770655474 840288245 975880972 990484494 439654603 462674836 641549711 707228410 845395755 965611330 334560887 500567919 738852529 757904401 696403874 748349722 285887035 549783195 467354871 636815663 248069470 511807893 726755309 955295923 259848702 307844851 345668617 963361090 323455742 609375820 221375540 448278071 988393861 993941901 653583316 757439947 220948057 223599359 487765113 500575174 293854237 405362688 342808638 471013007 694692550 776416379 330025462 531264919 367150606 557169546 413854511 794067072 207224925 900620469 749571858 834666906 275395625 580148295 497813509 780432458 189393763 310897972 305778879 589852903 934630543 968956188 54506242 891444731 256297782 539637159 124606681 358270505 184183754 594300808 145147661 302387142 297455996 708925370 248066398 497604088 245382147 682282940 297176572 639025372 370790199 579181626 928627463 959709941 735285205 968323097 841540128 992940123 164567615 925158141 725872020 867707882 638963475 934717437 33895834 849873578 945794071 983182567 761748377 847379572 24419533 412158047 267751414 916507107 648309430 908056557 732057929 878043668 860473341 988100719 797176205 913775120 755642182 795610159 446273589 683496416 652427690 861239854 290910294 607930352 748141394 999418952 641912487 781579146 209679674 929718948 199037754 446861546 866803161 952125170 578855443 709799058 416152565 663725836 716527124 914419677 934605609 983804481 8395394 734558963 435833377 441940180 376657817 425845361 812863797 968019924 761008575 805338522 396548590 628056313 817053835 920900452 219171317 980494105 665285925 993268252 380552801 535995042 147578469 776820256 95634461 903477386 646266756 911580923 653810900 751648398 345395042 960608382 784744294 951556419 73584852 669763829 641323534 838485124 646466811 839277143 988638485 994412167 717322140 737589660 758466405 900400420 21968903 304733096 668471749 726594723 809058540 936941242 83582601 927639335 827131794 965530666 106632084 516646251 180547431 784683027 673126798 734791483 22920630 186250087 164147624 643272132 175033285 559295020 473009147 485816574 413155303 551747078 922071091 953603000 279502115 481975562 943878943 995182605 490299554 586698878 458845673 979256897 974817287 985138615 113186244 974671440 594438875 672239068 150095509 220391406 764550656 991473044 260344231 309174473 696093852 709472689 448383285 615130619 502092586 644178218 443088211 732914223 274289476 554784419 81688094 557424929 552511639 872564479 916329340 985969699 527863203 610519523 274635893 983179265 361687163 624737209 551098592 738821064 520471782 645072179 84452561 923347064 625412446 637739168 183411708 354747346 511661848 727876669 833932898 918279894 47328680 724560586 8793566 298570289 248262518 870317897 143139164 405366859 692010811 768362035 113429054 169594163 139719338 502602389 245999406 811405220 927765773 975708031 572357646 636143023 80632548 261089845 920860618 935333853 343027452 466885085 545390015 954372610 6319364 239692993 33761179 446735338 763760147 825046677 243025190 689043550 234009989 614092907 361505888 438598626 397153894 815554033 782258317 947528231 606933528 679368753 48576694 859129143 223583791 677980947 920353431 976082370 905275871 946016992 882130370 988514840 272891605 748396605 378223745 662422047 281527237 983629256 930588380 934860385 723315128 958756923 222738258 973696966 830500510 932770409 793573852 973028384 975656005 993447497 147175674 295924712 312321008 536123845 91108596 194435476 6176725 431334538 168847365 875929842 273091164 457868978 249235121 536610524 272545008 702198972 634386240 975197764 36523314 210334970 509129380 513348326 584080204 840416985 32981196 631195806 797036398 913126437 90379611 134323373 568365376 719691009 524085206 905195167 267386058 660346358 886690560 960508091 874662475 984635046 190717800 707598705 790489943 941360393 442465605 949172295 924981306 968047697 34554272 518543747 11609008 759445775 511184283 969882665 646437729 767651319 207966185 851202642 665744857 711543845 175286566 380070020 963330964 979514399 672279542 679716656 983588667 991184918 923915280 992413842 646311691 906755353 172376947 345553057 416581943 993571466 952854954 969430253 454730580 665989826 107206232 717783046 742270175 906129819 735774184 941891517 192333689 953496372 764685989 986960450 634645852 682660741 967077145 989621745 287184040 437623822 48929531 300868411 622056267 929946740 287465474 858410120 599808759 858289757 784205827 802908122 878040555 912509377 432954223 495049888 224686151 864313142 85484867 777179419 532035606 723584905 270953601 407932916 665660578 940109515 371736173 614847973 984287326 994374435 908650230 971112913 383247574 727897896 131798437 876139671 680592357 709656976 158856289 805268328 944419460 983788232 398560173 578179636 688598834 897981685 745691257 864628775 847734948 867384864 951830071 966873094 108376879 387963209 385566016 769877076 334691789 424525671 484243174 896950561 760390405 876323331 159407146 727223248 738187789 804116422 139749254 218624219 659443120 828482268 444923220 653504499 943229313 983735704 975259756 993164484 689828075 976562535 857623842 985532722 504917031 795514882 966027567 984351454 176672812 279702633 892901492 934243909 813847755 830688090 561332931 960729647 269330350 737059581 903433533 907649657 406569174 845926877 493613430 607678939 911165401 928656421 544118184 927133286 537001185 548494619 980642199 994408483 316052291 688375333 543791921 949850914 413825659 855162101 898711303 946334161 316539531 682408515 353002433 498328769 145988843 908485115 998771682 999398744 527231514 647677503 373477849 441529278 569272407 925121795 573732660 591674415 496179845 499050019 794308527 829547815 845851776 988088081 969008728 997338863 443664698 754250538 563538387 948094642 188879736 455638242 812014197 891893398 719813174 832947261 74965876 693360001 976815301 984182163 213730579 973442438 492995315 789015269 513118387 761972891 871554509 951866717 704476239 968153677 865652056 946815051 414195163 487804050 509729397 546880275 251177925 706390444 420469506 945116185 574554295 709668367 866015594 994801571 934698150 938066986 989969402 992972806 304886512 406894915 437537003 955860159 903575404 915837198 346089177 510244082 829430089 937782139 264974545 491243916 482735803 737160123 253500222 303922814 887616571 997791356 975440166 992807212 202730977 463746621 746414283 893810876 758617522 887388845 67272010 798259492 351251212 735055056 150707261 223707651 678119387 943670972 698710539 861815216 129792366 134594071 877976130 919034853 865141 997718701 671140987 920280109 714480679 811956152 306272695 826967878 896519461 936354264 42972906 382877481 302363404 544297368 904982115 992208290 300291679 650540195 52434752 569392086 664093880 692703301 450883092 575766888 928769851 972807926 698108898 848444481 330393474 577609062 237742592 940886421 54198399 571030572 646530476 881940917 17352966 489267804 732275360 776356736 388757274 667122260 683016353 782230570 752506407 852268162 680577425 711169776 625392441 949286728 188404538 695449751 841296621 953768639 962771535 970105329 90812366 525777359 37416327 239859348 629490926 637131512 747921818 938438073 642786214 653552617 791067093 997222786 798995094 966793359 308317904 659967414 439965104 869356347 210661219 788044470 281791041 914661033 827876616 851847126 771515547 781063314 725540050 770806597 518335008 975297559 121486831 344012702 359182262 384834585 822933118 877754167 491420331 650774229 265924103 742939502 685610536 722808595 293822532 384420691 684697733 757083498 14135037 973319930 470362422 706367053 985332460 985952902 22404244 963053408 321028333 485538341 414489605 868838922 985375485 988276036 614871737 927572746 909263657 984519753 983720809 984051608 56838392 464477800 936771468 953079648 358074423 495132928 485951204 822672117 88904388 699300394 662019629 871320619 95576087 931350493 443353801 548499932 253631136 813404309 658485386 767477405 683504490 986438579 914330832 961835574 177688767 558166999 494428699 743094956 116271414 137280168 753640317 812136919 955899407 962918362 100817628 664273630 907639970 927120967 745135157 981338412 909649368 982327242 919361274 987717628 962802696 994347527 929048597 936872595 308962344 858332010 825878999 999874396 129177167 843163087 328756694 784129092 406474322 866517241 789497088 903066432 938475716 938921175 912298018 974791986 369577207 944035679 215033245 253922350 978526209 983821922 105898429 367382782 234258532 598992620 590002770 869200466 43121558 147198452 167327448 593791991 815857480 908535503 835456817 985180309 34024429 172440502 137731527 813331100 525990991 678966771 528794848 531938777 286444295 634933416 22417295 332880149 233908770 837650039 890124258 954114459 531769768 892017639 873821413 893125248 749701363 929081482 124497558 755512701 566489975 626895417 231497414 510264837 251651156 411942216 604349676 853974713 137031816 991171514 536828947 953319346 485205062 817493694 34148272 563548597 922574650 931078743 798726484 984513126 447048408 464990145 51690746 562455459 255490394 365296302 740888803 975783980 853201828 910824369 924340250 974625390 980955058 999383497 556382437 811140071 953247781 995289292 925702511 988760077 954571296 973688002 691097193 830072023 293363936 731060897 714070914 978593660 705849144 798955915 882281223 918621646 889542630 909570018 25672839 997026033 156826316 782663702 996328122 998612308 505970845 616983193 951851793 998603082 49648504 310305422 722456279 838550633 123710871 167166410 469268221 738071467 636261317 874076100 440330440 481615528 353353045 934598061 835316100 952422538 499644864 980735614 362885941 579058944 871753606 957354150 712145884 940877417 387166734 689822603 840767318 946914676 570727813 596975727 711238783 882765207 363340068 366667157 252683228 639074948 549984240 720856395 86156896 386136775 854675302 879240273 804474539 993437399 6942405 674193163 432116832 660167242 401191599 918290185 667201413 721541606 606002544 745855602 115108173 610359645 142787724 308456171 333292179 437094615 249128459 515703940 499699716 785358065 242299677 326022980 758615108 925868522 957326102 967812837 114040284 854793447 531795872 539627248 492541855 939353247 859709836 968687757 734775277 785671876 380049711 536285671 422313893 681304153 619210345 918822726 926065949 977611161 854130716 928952696 590647334 648771559 199582963 919346511 339448755 425006098 421548571 474060613 407082623 939047166 807349898 833902766 667456488 834072159 250864093 687566630 275030155 785628254 714113708 865005445 462765902 735009219 330703203 855691790 67220183 622498635 353878863 532576589 884556681 969753072 801088445 808266213 460672752 606000739 190675628 695273384 642229711 898150183 310943034 774402699 991420886 992752949 370358381 949809658 642339774 982577550 914941017 943887582 411778198 432641202 324589354 343514976 634081554 789675864 172825293 664447877 942957035 952432244 539290172 764249312 678535367 773636109 801921058 870137625 793140622 802704381 865838417 945529146 985089447 997967456 926314297 982130592 473548458 819267902 267732709 799898249 914558569 921447328 968350715 980729676 55403669 932550610 186434594 746660569 766049219 946942346 581931136 962884177 71335709 609138843 746806479 967873449 348382194 507648291 38619658 869934857 67840138 244881436 955045294 984467210 374638343 692971985 951448661 990880027 65996535 827491998 529107173 944699924 182252638 241180291 717280938 792388012 423754639 685771970 333539231 473321509 835279145 876157979 609441270 820183382 650435471 902360478 979843635 998610530 284662650 372558836 268166928 788567112 291993352 608872692 627862440 635461263 696057310 986656392 785368190 790835124 468653303 751526552 381159791 835406668 188739246 823986620 674636427 726897996 783173182 849451941 41901440 743713668 186623620 627276688 510542190 594007831 4363208 82217974 242151453 265555924 37885836 971499470 824422367 946692377 181476318 689911157 274375085 557616882 665548572 724740639 425791837 945969092 6882565 185750009 466913333 952818635 122753643 197620351 349932345 413481838 352834814 999266187 198105619 359272444 604267570 983600888 278438866 280928805 193873796 776097206 339509302 497219841 41416442 516690209 989926098 992941036 598761009 730027101 701242983 957397079 64031376 392877108 236544550 483951915 106733502 836742858 345951683 843808679 376270554 818566449 833657714 999785050 307341205 838941009 754997015 959994221 890650832 978490335 388003681 659935413 851672186 969722921 45193973 127072854 392245818 799806510 854509887 908170005 18708671 598129817 851597229 920963734 874991457 885918676 841188940 894772759 167229012 198718259 364785510 803365422 845466765 902710006 50513292 717289366 262117916 664256654 933517403 946011855 800015155 921598754 416514279 768666172 644038263 956272070 368105031 850973943 797073720 899264943 413963743 524146313 14900046 172357047 270169332 994188731 311933320 834308123 41655322 198009349 638240802 839352229 919142166 947469654 718857685 969933163 253489070 948820657 33275867 884250588 252732892 425888137 575147598 925925689 729434062 908309734 167687753 921859170 980300045 981536461 889889010 979889992 406294069 718256760 834133395 835146834 327226442 377174855 454363828 492788621 375484034 426612165 517330733 698960942 178737928 270334745 128168144 676574056 865116192 914401266 128971760 517973900 878641308 909441453 406268529 463949304 484623732 902829212 615304263 723240494 951238481 955631143 637631913 969305619 225417812 871071475 434879251 861609366 996682956 998668520 880923244 986894596 137251249 743313977 736790032 869604507 402579882 647317802 549089660 923045387 695217270 826789210 250488931 901320448 903749387 962613683 212971251 246131666 985360621 994070665 373330218 688695086 360434626 745437190 512298608 553532492 403083225 426995655 673073936 764717808 985332852 998858990 215712237 560584448 796207602 912679517 505349657 889885430 314796966 842150335 23742529 774236428 39429372 589434153 448827090 574215869 40463918 316241752 646978961 780713304 105030338 856865519 655294346 697014283 804136940 978901164 731202933 856950191 427634160 665481306 220579218 495374718 354276818 587066586 419013349 728532692 189517366 438315285 273414395 487228136 367406809 537462327 469476679 788731545 841497002 939626531 553212812 571930224 799878632 862266654 922489335 973448567 955040950 981603554 303808887 823165155 491709954 911467671 155371894 443634059 110772805 414728487 225777715 366002507 427462241 432002792 336306655 722299083 744985979 838742688 784069534 947297551 404686103 409227388 812838572 872258797 272034668 919123987 170609535 782102693 98585235 492495990 173713432 301716847 820648286 859721576 333988898 480985118 472728938 722126444 311833773 490433041 242525806 476880039 177900055 194142491 793170634 885545240 541604374 765637671 425482417 510585639 454554888 738590280 361732182 609698537 867798019 981746486 30956717 590564490 286452927 813128096 343962238 479424794 341280353 551753933 948322143 954189975 586815924 814774982 53389778 264832312 671463065 944428606 231211292 616570282 755619624 790798080 368755365 375715479 305205870 570829741 378228841 592463291 364660513 697722705 496010833 753224802 694523989 924384833 349004167 432843614 579469216 688086562 733124604 935712795 377000825 486385527 687138060 925253918 836252321 862618199 978907514 989858394 888549454 935767073 359153364 384503001 85624452 634715599 770100390 805386707 634081083 921651488 394510747 821224391 605782255 804101354 251993246 969716245 592858405 865296491 62843961 381261807 160135822 730543292 229912823 481434340 823805187 887468936 44909535 175653125 282872857 411601593 956133516 965414509 129848728 339767210 861288629 989941671 424716329 601618057 668357285 757090964 334822127 843261033 543607517 975373781 249202634 954843818 938997952 970359219 776147581 912820629 355067077 606457460 74205786 799007246 206652401 656060342 924414349 972742515 67546952 433192116 791457303 997183900 953863725 989914040 420956163 690328267 185045037 471768814 927065391 967108988 233707284 660536901 774996821 872651299 912423535 937138289 86808643 183459552 292906520 805438634 140919025 574557949 171866003 436740949 561771097 736120589 150713150 772644723 270599950 300853755 615560132 790398568 481990171 892373020 120983917 728093120 978380292 980783109 43762243 241567428 911301509 924927995 299022951 829166452 123151176 251125349 884557888 947800874 579306618 884967835 201794595 358537909 614216800 859819906 561739843 691550962 246119567 253687419 165179279 207930795 410850311 481609900 530701244 923745219 104484100 312918374 226510907 265571689 216281493 243942391 678275423 981654111 92494758 751816882 399919707 440238439 555243973 632629292 406079273 448486466 163042125 884851833 182614987 949903673 906510364 984657806 915749410 937174131 440185787 801539183 873653223 901410803 501985668 999007623 482583231 856657734 836717424 889942730 403983495 617221023 67040407 725215025 261425077 560955560 620719525 956437040 953499586 990856808 379926223 652911016 606150639 958543972 540422946 753601418 104202302 773302903 193961100 529849310 119963519 950742681 712659914 726016531 113399330 412544757 249619107 551321606 178115751 410688072 564510608 923339010 453638684 570122538 310742171 830869836 281596530 674888638 334409083 916729887 693506133 976126951 39105794 814385414 68043736 469805831 682824551 747060499 191845456 866711979 671318444 728882559 590031843 774707028 14486640 314249598 67496662 644031690 855188910 982227778 398585437 435245691 730063996 961720182 480551036 731075601 263710519 558827355 343007938 718832016 500885577 948104406 536350210 697150590 382986376 833152295 146523371 923464129 452721881 741078115 124307337 614072313 282930192 822460548 494388467 994551396 353947862 756539882 234506302 742101474 146974145 441450972 175198152 870077790 816742389 845874576 831583405 893904323 387347822 654161328 542176305 602524219 57473384 259837007 869350948 994765872 545574246 804156349 934372910 945566844 28126646 505776858 911372394 996458415 724791142 922760366 221103755 466317486 324123092 902907393 420876254 938066966 711516235 976986216 410028587 794036482 864590083 984935567 706841153 975637921 817544214 890529416 745895999 916026854 875302060 954387326 170964605 420823296 724124229 914426268 221114217 480037016 887896344 895006710 546416673 796101838 799024585 983534468 53902712 812842719 937792768 984917343 285935307 623017122 246141441 722048759 994428672 998642720 796975351 862569476 500256283 698967870 756302117 848781323 652950840 711102135 293890913 309460978 659415976 909402523 747405835 882869156 387551771 545475876 161273486 276786091 748375132 845048505 942858935 963750642 387578936 455356233 6219254 328309895 799400911 856061341 410739766 426638675 204547440 930743615 42405051 209420947 354392276 583434397 331186384 346211914 212265092 566394177 281596729 937458216 593875530 867576143 689198878 995396791 701659896 877292466 273837184 976668396 843892665 918809921 505126847 601697982 704241078 932996709 596284776 617264640 414403365 638095073 276679311 473932836 14363008 753760005 991934071 999731766 627097648 935244600 398534593 542811936 97975586 513255707 946441080 966037851 125682256 488979656 61696753 131730268 564111538 754217591 287078468 316467664 402702693 916056483 443984043 886706183 858866395 925294217 787795987 907550940 737904780 829493515 936614446 952234193 816479613 874860844 318322247 680978415 212507367 311415446 639005917 726732088 767729335 871877391 66666129 345077014 400847705 838925698 284004319 605221174 741484711 751206262 899149729 985859573 376814427 668326733 618664538 959032975 801211506 912286669 329923567 376699471 423181929 966941262 660953547 765133788 280730455 523988382 310148984 874941323 331534540 956501610 427308228 557285849 668906663 835923910 681054048 685845929 839911242 894276540 665432181 836048003 966787375 997290359 294996301 449845469 500381630 984917877 444229215 471117336 223346561 605178026 128365834 896814770 427630985 998689749 378628721 813081577 114844816 480856899 309354370 975415078 571601037 852243321 958126581 960960299 836095968 839282924 773010621 859654341 959549374 968880818 120021926 930948988 630133996 741946976 930063290 999137651 989111978 991171237 812596024 866388084 295782382 913994246 215268229 643585590 440529116 690039647 564227113 963814976 511036934 691289071 666116785 973760807 874567718 886110976 158737892 576268020 683721961 948620615 570821468 585161237 90006884 370537939 211747786 608585619 964185219 997772211 650421252 870151105 684407286 976178811 284884917 594082113 572181956 975879499 129287790 434292418 595358265 794782574 876947426 920306910 166207169 547415136 126713682 197462109 20806556 290998730 62921475 536937564 754790752 961738388 549486038 966582661 3144895 365392270 880900388 928527254 790873556 849050312 554792322 881098759 86702098 748888292 156766284 526485246 35822697 401463579 265197871 927562882 478290329 697211620 292124632 657096417 32907610 209197218 147704460 688410998 189511411 200221120 356543686 552840420 792880384 843863815 496745328 874153564 221199042 346151521 633584293 679687049 782234669 886610508 760310301 916141160 688900962 903278022 814132386 964905871 261726442 502545193 889972127 967972721 894715160 898279684 153074376 169107349 309141318 398207547 389223616 547027587 238599814 685994875 188407359 963129148 793870770 889321481 789908315 790196339 509219380 555454470 337703407 873207533 455463910 805358172 928593423 975042994 974718480 999018764 75375695 574760832 33802007 839675459 871236522 910952840 708488709 887654693 440810493 980681875 544296347 631498109 77375058 910759087 504783516 679138324 557223050 787456158 896252863 961913189 804027113 873378578 875559652 876281150 846563607 953318294 11813713 22192772 347003773 598599700 113736543 993972080 899756729 949408437 577761081 912807539 753754221 801806944 752052109 822400656 746581174 875079580 98333816 537197271 941553393 954613590 785021059 863038868 286845391 858038376 619737764 908015281 428921584 583251644 926290611 957321821 568420721 944248490 3367976 645357410 362540787 532515715 474927283 772721165 10328083 166790017 333642923 715233595 141721069 420850724 257559582 860373290 579534626 986332822 447218685 930914747 60129972 918447743 149049076 817328876 585444879 589038466 322114111 369712084 716598741 987611668 886664741 915283679 977295416 994148382 749460179 930091868 727904416 889914188 348713034 523056551 365692367 998245307 457530000 696410046 207920325 574746731 841306512 889179852 651351695 915824928 391293631 721280755 668355147 736675347 184242776 733968751 839045349 865280772 770053064 854719138 872342667 968327425 2036845 719490427 311273806 417189312 59934886 264780547 801820159 826069431 265648370 516206674 458201752 754060625 647189794 868746508 13410535 15650550 238175296 416905594 750767640 770727723 264506748 287878807 910902044 932507309 706092569 830730021 946322069 984821945 90977693 769836745 765659784 884219171 851524036 993605561 724938428 818741366 190704205 698420622 246583127 844689032 715285316 836485465 155934425 943916679 176250493 357534339 848449224 895590555 447318151 987066507 661592602 849925839 202688751 954640651 497240985 556335885 792318760 809388692 551969897 672593508 657170426 756343033 442498639 770260203 887086572 998381405 420859878 731118858 182229831 379527412 352242969 700410724 319219063 971446410 754658828 928617660 298567560 854914072 119517509 930015654 968722893 975101655 651464146 761377270 686246073 906929236 93975615 209204258 784193420 999041493 765736969 985614099 655716805 905627106 69220266 520684423 506869462 817868597 811743886 926465972 463522322 984809997 692993694 878430887 589878266 880974542 841708196 968312307 605701677 840183004 353548295 743235154 994442249 996950368 705717502 713089195 729424225 877657238 632339324 676708179 922619 46064431 76296533 673139335 794966069 875440763 168618140 943505219 148521493 276848733 68391945 333844137 349510984 910971872 123342834 431923016 714160720 968307569 485384232 766548465 739650099 941681904 6796287 783317508 707128120 789818659 988038403 992181410 705830678 960074413 688316225 909105996 516757531 721728729 583270424 696461648 789304854 813395408 872137619 958738444 851391569 865854281 250385077 710494283 499433872 851475864 841136622 861796798 638251346 912252221 589298088 994437292 150782176 578537913 554991003 807507904 473765441 800561913 875936217 926978162 29501443 128805213 231698166 357647903 805074621 970362182 703650012 752494377 331143097 526713579 911526347 996692860 271975898 929552197 737944872 761103240 623034394 693410757 304602567 601475952 736996125 775065779 359446458 778912911 815045172 816699934 582598580 621196792 609541228 650302791 243406119 429203322 331528341 936055201 627977496 964989799 279050043 656761266 698662301 771130718 650267883 859136556 519022196 790463965 820177091 940562759 310560829 826845540 820134813 923386286 417300759 570750046 475618890 664238036 716211632 890056963 773178635 919644628 987304032 995454590 855146440 923531674 818921297 844007176 866515070 917827012 831519148 913046124 445148942 958809007 645041854 997465145 86705822 778505023 83853845 831197669 792145773 794154557 849214205 937593532 299191825 312146485 353607706 557050047 778133649 988780581 385258226 664842908 202463268 846478589 804922581 922560254 319813633 484351686 376481449 673599699 388517040 755174373 15914882 183160613 791984548 860328611 132816390 923399871 952693613 980166965 273082537 414435086 372923800 825118773 637052332 735703480 714693421 986473720 903497246 980003769 242536977 542919815 976154332 996630643 83315656 991976012 396576653 438836276 93083450 581185813 57338528 725350246 627811048 738560320 650724824 944670001 933788528 933899300 193921557 552940019 245776019 561953373 480049232 938164894 203144745 763966886 722221106 878823893 555727067 721987251 803630769 939365405 757722040 764588934 859714866 867016721 444566944 578740640 846463465 856248591 751404677 949072232 545210231 785570084 729611404 946080310 573634995 638231536 87357637 865372587 664623410 673772125 101287146 785775488 75298168 324115453 381835527 505392084 845438819 868690166 752981869 906493810 338492734 912816767 772004298 946438728 745600036 798132196 830924957 838788301 787389392 904002600 233843551 628940755 589030808 645778004 500716159 751062239 985651551 992246101 572379222 744972507 266772628 661781547 850124583 934529745 652081762 736190017 316961532 902658263 773652419 998235490 249557975 671589880 979676831 983555237 361474366 771090004 921623588 986040964 266034128 639918442 339857227 424156465 992893710 997082369 250363293 742272335 755062096 950782417 253707206 520378189 43799506 416436739 441235148 740233576 37853927 424543415 854575335 971129732 630629866 683927520 738171962 842567768 853040059 940110301 717456215 915997844 546345692 840043195 702299767 952433750 20945641 109412300 472871922 918010702 520789247 678515159 590024300 803077734 281456702 583579187 128242188 399091931 74101222 587801589 646407561 770062037 913621719 958655074 766511244 981603355 119561696 250219955 639453736 927265142 346774358 993348281 835030033 953384619 84426122 296970894 335567607 360852358 8558327 701281683 741618340 946470733 634865637 911029532 618777357 970713278 574242550 603477362 614561059 956216980 156544011 383092865 770198060 883538099 959108126 978977033 409039691 847319832 355345363 950793539 493340963 903771078 756084779 886700398 363942224 437578700 189914788 557004082 183185223 309714974 48518163 731556856 178614548 733270432 501828804 966006265 902694224 969568592 833589854 959707231 749037460 857251065 193826519 805883134 743072543 883576890 940344325 998743154 714959942 807477845 333689397 564523807 70104712 878581305 310962639 493068857 741700105 745560308 841439397 940301852 649715841 998478966 732815765 797302981 994956073 997786215 474796362 728830830 613441317 806736379 461431004 570615961 24460093 807508604 49548736 166316569 70185579 229781398 417410998 978232627 630985495 638397624 119572608 539479367 445595593 968314670 683582455 833249438 957467096 973210988 56215074 743516417 577386980 992771085 293269275 670829325 954838425 963271306 421794340 840167686 518867474 970103890 924494390 963606318 792196478 883050345 692685610 709501331 828911040 836828084 141372240 567444527 442902079 798250115 536407457 714454791 789512759 908083575 56874736 652340836 548273984 995749246 399404277 860410072 160836865 272803095 304071472 620410669 320923363 877806519 529208771 891349417 378058103 846796032 334121837 639313044 118587791 287323308 254271246 779458283 200073971 418427250 158562185 477048223 74733597 237229143 737355531 976055193 247135243 674943632 481157939 669126566 318208919 977747426 795521086 984383652 366554058 841013579 845109465 981198219 334752227 367146982 451666929 761423820 319635589 359245225 339002136 427671963 785486385 923537446 565569750 663128651 161713345 530760785 503562042 563717091 140967363 937743611 164985471 325506470 895956517 919975825 796505250 877966417 481030286 519384790 535140583 784012873 640557323 804106838 929828152 993510945 80427039 995678834 47871041 571828053 139483016 547529674 651033391 921166246 678970923 867583968 726650577 791031824 734918588 942066431 408481607 807939746 982567185 996280647 60968589 797359435 780750757 862834929 320599534 522242005 180372813 897503719 782205440 841500812 629383499 891105392 146331931 160985614 56162563 655879892 5949283 527228803 948653692 994032209 984613791 985796560 522130984 854980888 616494425 966358184 352386995 661219406 677254003 822996324 802151189 856812320 590385464 620349036 117718351 566413060 127506447 857335785 855440781 886919871 540970635 770103143 30325588 189705746 521954814 565772236 203014446 729138962 760336768 840605947 734722470 746365722 894183360 955284515 285928943 315488313 285887909 854401104 971311875 994481907 252423197 848756195 933456604 977683113 246597686 936602153 686198629 780331035 94389943 554845933 440552853 738542134 169621870 239290052 108660700 915181593 929537082 956045010 542081848 927083851 876551701 904513110 453669402 780457041 472558540 720056557 57837400 253144814 513829204 918757685 263167269 313641660 586383771 936982757 791536518 956659403 134765399 920446559 378590512 617335930 7710849 770784962 618670014 698357539 96089075 371017604 680612268 826669620 690619207 719844768 753076431 960193741 761692372 899807178 569795000 687141368 831135058 969999929 549747242 575828654 269127704 417070575 212108331 945753569 458045170 976365453 171847917 686607763 263695216 290590992 272976073 560122612 778568866 784107818 989020488 991066581 274824625 480224890 126640309 857652970 78105683 974340155 307887578 390941670 460881952 562844832 755513255 765100623 642251068 817981077 688690817 747338972 705755555 893578316 473259102 782002480 846584497 935139977 102264319 718476386 202961632 676645558 112119417 789785271 791157782 800729327 42535159 139137727 901246477 935585803 219116345 660438608 989360831 990791674 411708454 817287284 226430048 321896002 532540088 925708042 799284689 800082229 227598116 379840950 571773029 662492515 42554292 781830103 697648905 869905119 976357968 998004601 632440376 944037744 940772930 996092113 261143650 751625335 419947465 901758660 108361510 211931641 686888836 772528747 364197695 417946731 219363979 272071644 703183129 983874663 736368459 867491100 524552143 743085382 329811213 956375644 98178631 448618061 909418290 912602653 840069206 958413767 120414215 821290190 163243750 254948823 778682549 871571095 769397164 863185639 358572379 611262627 895054283 914503382 971268999 980710335 305568957 944603248 885789860 987822942 106152736 354293870 668671943 716154770 619499171 690013065 301505026 353132320 785085944 819006786 233765245 963839081 30470170 282059470 946556518 955148068 48649562 440061771 889620112 950525604 355174336 451039406 613999613 910593167 302921085 840481951 565473545 835283969 840180215 869999582 629983711 724225549 589967353 908766132 167482098 398947269 883407113 985597188 271936435 628742564 500221899 592329874 563916581 863985031 775475068 806487994 762459164 914283405 437956083 886632601 98060380 490145139 154858311 610695634 516833510 555649469 772981273 814863425 373626511 746550266 173261921 820321039 265508527 936670455 475350973 706500740 302226026 780753827 617110769 804834582 67706381 736879247 53039856 299070149 983771070 991100761 418793164 653130896 640361239 791270804 233088989 441522809 452634043 973397155 470799913 606702502 829840154 928596280 934087127 965090166 928478393 965697483 328761728 608115485 445366368 972127739 107321740 618987256 641262412 742366973 869607788 954606591 897676581 992643974 74804310 289616355 754929088 886496255 36653830 173349400 145911021 282898335 30473001 989033891 23454521 926897280 206987774 542717202 576942073 788014473 778423464 845477445 524702980 604087653 779254040 875827515 483462844 715377977 158058562 757116475 11182746 800868963 161251548 163802957 363003265 394084643 377968220 944112826 891796131 925760003 934032993 973272135 79099870 802486387 143286448 373220604 852430976 872394301 606382432 859289112 292087553 904826174 964905716 991608417 234479409 681751147 280747687 775768733 119118114 899632559 432592253 632815490 126080841 464854004 524486726 583487870 961235967 968537979 54405661 200708100 289982847 852569450 705898321 880819970 50504411 502759935 752011961 990693417 75909541 409601466 417495457 743213067 944128495 976591278 817636261 916990592 750459193 955025735 915434225 936651422 725314276 952738159 264372400 528496139 425946471 542500986 65657517 450445982 642621866 808858761 609253382 814746963 720175281 842473200 571340895 773637498 29724702 174147781 448668812 594717281 709255424 834323300 213385382 504778945 82015395 940252425 479126953 759375427 554884713 887311116 794555939 811732489 76015681 685208412 979339887 986264818 765018886 875135585 666576599 826838518 574300159 706967518 314827641 838777678 520538060 547994832 185403922 485810584 310278278 362810994 696970474 882538721 401127054 880229196 701229610 906645298 871037679 887679324 540827199 693775568 987624025 999893608 195959697 560344614 553115468 658074402 980702511 991466461 201630834 737203376 459630385 525893941 922212946 938722612 845197618 870116191 375034228 934992134 789245607 937445681 315403980 386126113 866834637 887292824 125384842 579308387 710128260 768852932 351362662 883522880 663169995 763164789 481166230 559776086 970370301 995652693 843619239 926123515 289997977 624636398 561634002 903170234 128775867 906129122 975763961 988002617 410958427 712621667 79592461 414577141 832732193 903371722 625272659 688248904 389314580 961676443 732732890 761467292 485687686 733338731 76771535 738702893 440941407 846822282 590067394 843862605 902490013 968607421 276393433 386022664 507693589 777458579 819816496 975993822 856031182 941311750 186385009 377409801 78978186 230516995 211177492 523935405 90940584 786242202 366103367 396635402 413895210 713358538 963983665 992327987 711499034 880571713 501658420 631412515 518470293 753887237 104869945 952265805 695318566 820534322 751677647 935976352 852355629 998311218 687109520 839929841 274767967 803618381 183006922 736459400 188393710 827538690 660577196 847285410 331650333 930130755 468260956 530326571 870561067 999099028 809276527 825923188 966411727 973288731 643760843 715600201 457902731 753058275 904364403 981694887 437946305 731990690 447890264 649415086 74616217 523201962 983852686 991975300 325347294 763419469 976025657 985899643 472918377 855981717 432264019 979818764 378120753 413729193 661466743 838546773 909937178 993999612 555631164 628940611 411437105 496136253 175242049 632271225 638642538 639164113 551386823 745448482 333295387 928267943 116234192 493008011 827455185 907327362 126782786 382231211 829439107 882506282 518593480 816597557 905043645 952876458 640061252 680392387 37842548 190204050 782944301 882499434 967720367 968703796 466772064 753648425 984994639 998561369 943651640 985137535 815674417 830444803 213821462 922870825 422447951 970258495 130187308 868351073 346117246 499244243 97391926 469326109 104628062 774131245 49420888 854880560 955024480 993469865 322456553 692696657 232364341 628537267 664650086 810016952 185360988 690354317 739242946 883822699 121762615 688166061 686245386 704850633 65593243 569951987 326337649 923819818 105030927 986496717 841394945 967916738 65808557 123133330 804470557 965621853 838271502 976068105 466877140 881522525 763624943 988263950 631450509 786309986 211872836 376942681 243597081 826615161 689317250 987752672 975814016 992550349 924875388 982320075 913074245 915871824 390853856 432601384 679324489 797219523 172697010 888272393 123658672 313397157 563696672 628981955 866037452 881800452 569088983 832678629 612640418 680528099 109439282 242406599 174583152 424465555 230892799 450034278 996447999 999277618 20962347 618488753 511911255 559704103 934474592 995064867 631961026 840424863 305709016 445904765 2258671 985434906 548556932 664454140 792108065 957295148 315713552 627145534 354381231 545690951 786687338 961335287 694431835 977337331 880716648 894745739 563811562 787949928 948409346 968990316 511256054 795899731 90936822 823705533 131131163 832186055 695452105 771349082 290635058 874345937 239259924 764997886 962354589 999050837 505022306 988992476 629968389 764119745 947613657 975371046 290586313 595228939 384240437 977885612 737481107 870479447 472947961 984902744 469862722 883097436 816261735 907122903 199784047 535488062 779412506 794876947 489678403 749014346 177469283 701642585 759479275 959639574 230039432 524266976 231945585 608525776 770768691 864412751 405404286 689412381 83503064 124537687 700886718 805177442 37952870 715412227 201797171 222853546 552948411 604590010 512595775 976632772 750438679 791606544 467039915 762905636 86717879 323682833 97561839 709968013 127608060 218069764 321208428 576645996 722400691 756100192 606678789 646007067 571826920 700363319 696269393 819749461 744831423 930788228 848275861 909729793 693099554 742873612 185242259 913658931 409076399 475144510 829435935 949882645 54341872 717456213 435722418 642645677 152184299 589611722 622546174 632202729 773721850 892945068 578552985 735619039 808700443 855376059 391515455 704842332 552268248 816832120 577879238 681512528 74206861 705618949 312375479 575638902 179743675 390446455 618641331 812613930 179185380 846783747 368363478 695877056 228922482 994532150 134864851 432071837 107751313 183168523 557087829 988382542 682804218 788264424 221651841 965680624 911878383 957362280 192385237 672932522 188533624 785472147 983491418 997900030 547614942 901956133 362752238 874543358 265381131 347758135 667145063 891330300 965685587 971730608 288525219 455019042 131608416 490749140 441896767 620954554 155964522 244448025 108696789 773502240 445436022 634894850 469435257 907584917 595121182 788341563 62377813 392501923 458163759 878719226 838550651 839845723 672480490 741180544 667021550 929707328 333906514 354676254 148524780 609492983 763316920 916994669 386535126 958113580 722334988 724008655 509527673 896042903 615838790 644364658 299265549 839983015 270525756 728971035 574442033 685883106 281138110 282100409 374884746 926668574 522439993 850998784 179577282 929700640 623870912 892589809 11890807 179504218 482540755 927134752 91100500 194536751 823927990 918158637 780782290 965687083 709188410 739746184 845261179 973002838 453871514 456568422 231908845 935178722 569037817 843212529 141186826 689515885 209629626 803336561 763297352 978428494 28726213 124845682 152378773 606065850 714948026 908349876 747383365 911320169 599115480 860961831 343883713 484670625 107627652 325740756 398528205 625348092 88777659 629507336 275728242 474667742 834902428 927274855 749907763 930399519 409953651 548002580 103552189 457529961 148015413 651496035 974527298 998601305 442719390 628527644 541641699 920605643 908415237 987736405 602265550 783094917 450999803 848395199 346143623 642440610 54704115 573441952 518996366 525150382 320641081 539344187 279516877 539929496 172476834 427689410 954196876 994383201 813394767 883930060 397494969 648130361 312814806 805276491 346902306 801801432 108521518 478849307 665909616 677142940 87262787 931211629 516239169 599526154 687230096 795119941 885649543 920871299 985032825 992686237 935019782 943586937 713272384 895419067 57266783 311439537 17669013 288804983 176872942 866322845 561279053 784169449 737903932 874519777 423911181 655851118 414241825 558876926 541274304 717744711 73352493 993302756 2856008 526123078 617977175 855830429 583405763 784915958 968871171 975106519 820068784 867446023 214884108 796373052 938518449 967446099 853579549 923385014 856424454 875125716 135780093 579763714 520435178 961127123 785832389 793327813 879868485 942547251 930673454 933604215 247284293 816589674 515841996 625083289 313927666 874083788 762639038 937061304 583023221 594220193 569712910 729018361 1321232 598255917 36056089 430244889 175760982 871560028 994906 782509064 442706268 968764183 276877831 890603727 115515574 697921658 512651267 911664925 266104715 616325950 501887220 504940378 294711118 432597349 348725432 504072218 636517056 936180851 136334621 616487979 837659460 978996508 544722087 935574232 466240523 629462473 663546606 857141340 501855418 717481434 912876485 974151237 256753241 347706333 25951215 203110820 872141180 984933688 343128863 857793671 50971807 869040505 435626244 783801362 821025725 938105554 619343325 939542967 23037341 838388966 575877237 760237972 949808042 987140079 780311076 792257740 141046738 457212859 931982229 985778949 705527413 839804556 664569647 736003065 858450034 860279811 265652762 388842442 116894397 632038751 261856514 617185909 695042671 807295314 327076830 841182728 392537084 639390915 415756004 886993261 409657940 763733479 704070664 969301271 528481518 697379687 258216908 300642684 468685627 730428103 196952662 615251941 923459199 979712358 86426866 515583802 252249046 255350606 679074462 962547390 871372554 899034690 872031282 940060442 818976152 900950463 399886508 860633572 265875331 837881803 941378777 944280752 853509436 929805919 125978863 170155360 749005184 944052220 188517340 213508574 248569139 945763110 961580858 974057515 4789332 332288605 620095987 843554856 244018247 279835883 810213069 844032942 24990766 807018476 236661157 577127430 787067635 798113176 459825799 824837774 350321482 866854689 726362065 932193177 43411108 392642266 713706821 744948597 781352068 846073959 135581727 516383703 839244537 963644700 556535785 929353847 431189749 601263846 875946149 903823087 558509714 927046741 274727406 464970801 172916531 270073664 893875828 948689757 556881734 594075800 632945966 667219442 424318096 567205575 788096836 917821653 96255894 180771539 30119760 893138722 280161268 767494066 923381514 975011054 701969125 856052338 381049048 885081918 287228107 365616346 165943439 530174994 208393883 628279893 5568532 646504970 859946056 964757781 614131709 792074468 952054705 981280674 533205658 700032037 757026595 793999490 611944320 984221490 639257773 883554733 149363220 583249057 560858556 747892456 99171418 538500019 381816629 441873665 659403931 676824420 516861203 635405726 131039852 226836169 125566136 458100554 352641907 466033941 791874034 909070174 521858660 896226796 376707964 737966131 530076323 735934616 718447711 760503325 231518405 307803919 45760688 98635175 467422284 686452881 206525671 463698178 99205812 649839098 644818975 840568034 674093508 960362758 988823781 991378020 651721574 951376017 119996890 223001801 123075300 815912445 133027071 831465485 389509039 513890793 714830364 907056948 510005531 912993799 213366057 825251287 236236248 992049608 777189772 984944331 540219489 963422483 810361465 917565698 877086101 902823509 817182737 952104069 750836186 970148029 714216591 855450660 301010941 712154359 762784082 772664513 713449703 722948726 857426196 931459958 161423820 415336929 814733210 853436682 421871185 865350000 884196624 959026657 875210790 966779910 812891919 986704557 604639213 998299274 633892079 809621171 564955870 686567832 591282024 916232324 461997636 810559129 803069077 850312580 581871394 784851079 803234952 913326818 253226744 401559414 970400346 982441802 175859335 602441135 260002028 638140079 28416922 214417322 79250527 895651303 193942787 309289705 67633482 672472872 710497097 835848512 818144833 833385157 61272316 797562171 900255181 981912338 378346342 923591613 643662919 679711712 140719094 858253989 537343522 885428086 241627983 787796360 352480276 648703734 3852238 864297562 965831215 984787486 792412601 811681151 541009517 549879969 982222448 998482787 374172090 771015680 777709998 853135134 493097884 611230705 464220782 808023079 829380063 876946313 302203264 614126308 726357634 796367465 296726635 933748119 790674601 999523495 470962721 897088904 454385741 764493400 916201501 937504302 663438735 735122148 823481894 839392717 330685642 783871983 406268545 909276941 478773020 995036755 264657037 566493380 149202926 889405139 217089363 574210154 430495156 891591708 441333397 925816052 524071252 583435629 449703088 800517513 469060305 583897805 424003447 685724988 436162801 507239614 438491923 766826744 885806915 908703418 824503473 887379843 606704879 626514849 320477073 838193305 812885010 877556488 988275037 997650701 902556666 937056997 721618374 824985230 337442514 631860861 864339071 961169280 797927886 859020188 294372962 866708313 689505988 838032652 414419306 957157626 989614200 993240648 287886654 714137309 3352141 384208515 436922463 846885584 825132253 928227709 553607458 968691715 11341690 961019287 181096941 591516236 755074114 979555120 690318113 763810687 559960321 635296048 821789346 977888435 310020767 764135133 218759569 600432944 678071248 700909399 527546902 651638140 601801706 714373692 162132911 379144732 294386828 912663455 797723886 870561418 80851 423184169 950076564 952028271 339906119 458088850 370854909 657286679 689492576 806692138 961151198 974220163 316692860 702137060 21519331 79664244 530420386 805579807 850867239 996759190 521481011 742185135 650576793 715627443 846872867 994613232 825758284 901371020 23572894 452525434 15995080 753673258 466545725 477391964 576965992 756257289 836379028 866156904 569893306 588359780 763481900 906182627 573303917 731062579 15953086 920900364 304853214 445441587 441772639 598713164 105374649 560594942 262584330 841568522 944060646 962673517 449803021 736510513 749114613 889852436 554727271 925177514 579411741 804500569 173251790 571697284 21412573 693502027 499450467 773433806 401925386 830480556 77389103 247969020 976350355 990466195 677953776 756970058 269214551 435005085 412458226 588497476 533795834 802965977 370317463 574549945 326671059 741450746 305025104 908446648 464647018 839656094 630490934 836393855 650815597 770953252 670166541 697455843 242085127 333007872 327917111 731478522 952806235 964554163 497676816 619666890 662182926 746715602 314837820 514273767 465332 868197962 639692073 858941044 521577556 741253044 375876587 718797053 916889891 966747450 40569650 735141973 404586061 532268342 272375045 357842386 507990759 739363371 971349663 980113384 978664554 995355334 987199095 997135920 32363299 740183145 96021960 879201307 54356671 153913969 847148380 990483142 540093020 886909957 855991562 943751056 747513397 752642836 215719995 949148436 857325349 989624436 819407426 859548372 425336775 890004415 139325411 875934891 484244359 967113723 977867885 992181984 64782980 652965574 223526769 597910050 681485729 930734480 461936330 543209146 458969087 774242546 584977420 735398532 668845619 993657657 56999271 428620904 428802285 901255854 913265755 952102603 974115452 992181873 405199554 846376018 638125366 935644521 488680039 785631948 294651119 911068274 827357476 958714454 849141140 933492623 397516237 865059616 859761872 891531431 735669021 843684206 411179358 760342592 370225857 666581024 797733907 849052063 324295835 773867952 32221528 888876633 165504922 908020309 157667568 768012203 918224820 970646946 162836762 698063243 818801602 868124596 573736803 669773085 815417713 896016404 345707868 769182390 745215930 790612543 978719254 981002760 260984420 603517736 504408310 546591685 589489184 781876716 201665352 460934461 511337994 881761935 309955754 621556210 286376058 905230728 655376460 655753025 986105824 999299340 165878287 526344551 220926207 267049296 624270275 681300105 99138298 688058096 872640811 892418003 37420268 176471554 194323048 819419991 59022088 202030074 428130026 526852302 422401268 639996912 325008186 451753335 177444930 788146124 735250459 854401567 795056401 824835591 568940359 669689983 234213877 799686548 775774855 983997713 132678158 816517026 554801011 920470823 21378824 746685945 534002980 959333444 143155790 385217773 377498384 854875576 801323257 875034775 211340342 413915980 810062272 906571039 638278060 801854922 929560429 932354073 58099571 970867942 589519200 697293769 773214407 934844924 629236312 668847721 318060793 816994582 990349431 995469927 504175108 558481595 997644318 999179121 312570991 645187807 462117895 939674060 364668137 814457345 629987357 940713493 379642212 498221137 81179237 758837446 880719323 992815762 109722217 860479619 816179059 874835969 813971260 908265169 413744135 724659257 4739200 333883716 387940655 883629558 942069307 948689887 350693487 892280810 220735401 488567442 571884616 669098634 795881526 817322843 79300369 436314730 375651462 977521803 831916947 877749701 541470580 710713184 842439751 937629501 430179676 629265325 216807154 283594943 40983295 171630001 787310943 825496136 555179981 702595404 720918229 769423391 442530844 903665735 308652141 576545377 581043108 615776727 994673875 995919068 548492855 772341243 555807385 700753642 306691979 322001489 622951630 999657437 593862776 915520853 698396550 771983133 54276014 535988751 723404968 998486760 562447426 744778319 833712140 837564564 483691932 798690653 124088617 482157967 793624711 854772002 44268001 462446223 599260439 977985868 357144755 728714708 406446911 662690545 102095692 917661167 864869113 999554224 889865236 996254953 511867777 534372578 756940760 984756758 977802874 993929024 873938975 906332784 24084923 806459386 799401843 817055718 777267012 855378402 924033801 965752264 454650891 885012480 361848344 601227412 315516336 486041310 862355817 951080581 10797166 187565779 778758726 919052035 585606603 918977548 729033593 912385725 703242775 941664031 728462348 880935996 159671011 933747633 744883881 840579553 613129014 646994029 254122098 460723222 488254842 655790998 233505379 845784463 153567328 884818842 124574008 477863500 705609877 716749948 109708977 381656120 16509722 677747370 762943330 961789632 3769900 12690877 310800683 778485401 657703624 847059111 61903424 935582575 287325108 979550068 13556504 854149317 224733455 879016634 109371425 111394783 659337221 685238602 207195886 737949461 506341764 999977116 120647566 837094174 351920913 752753467 597766663 944826777 996737321 997588038 868526958 969307079 145611393 726061758 641572330 679501484 523144814 753806479 838210674 918076989 517885602 870697274 421678054 699285749 736666582 738200436 547111237 560838572 649102437 827987815 745209711 767070089 41946689 414361045 810736471 894803395 816228239 829948735 60297499 372909175 749962706 838314172 84529153 633764395 829034902 961014308 293120439 678682184 566656897 643103536 727985378 784248176 870251669 924322935 165162835 816492621 399748612 635124817 435394583 751199813 525107446 744470589 933145069 959317480 15830396 792081921 496281292 743327282 857732869 950994816 535273078 929677606 269212231 806843373 87017769 712412602 417087295 905984756 150416164 597717132 7293745 872612891 172078008 809164654 752887833 883716816 835372887 861612597 492641395 641125668 101774685 955316321 689772280 972569172 808027450 961108682 41440402 438143780 10834538 831201970 899152406 923103691 144385621 862407831 199595445 274247373 158179943 213449992 979182966 990997966 587049995 681955021 206455245 944668233 563485953 572033002 199626495 714874124 198848516 204567034 179845750 495684140 149301257 598597237 240390851 809717639 983305686 999768405 744160209 765796196 85971239 985757282 598739314 630204980 295137946 410992967 590241305 936252378 237371262 435027966 190276424 292764003 776452376 981964013 639804594 794571563 996071607 998188439 263434306 274590986 461567950 679000824 108444102 938895429 520129592 812841424 74088294 548111676 10749688 471050501 172737854 212511131 73334917 954924893 52648506 905655936 294035586 356600471 693995082 957051518 105797931 735677789 290353734 663029903 37892488 216237595 286869232 371977478 575576240 871058738 187590546 977754198 631942143 981662483 872581447 988147313 379585187 816419533 902622574 994228274 89758253 622801440 886476035 969626927 755382275 760021292 910583909 949842837 669616251 855909355 280288591 350000946 446218481 577860118 568954079 676391344 838571517 977964577 354267015 636852954 125268650 187583658 774501196 824850912 644990995 768718543 224606945 231262304 926276537 987024363 699842177 762362869 992045797 998519513 837668024 913129022 846310837 991506770 523696578 712735683 663764805 969254592 345224216 862356704 678723857 948915282 23641017 636617286 466353885 621810732 346041059 368238952 642645043 643233661 849118901 929156552 678592756 751061676 686382487 955411439 675129866 832002524 389257315 424679972 877139011 947112331 125271907 316047902 778746667 951261768 398112708 980370354 332569357 372584085 405000898 765611962 817186592 817672939 365197984 739762711 963695424 972019889 914091683 971116243 406992294 703604832 887767533 938438497 45685108 165410694 570088533 838710178 570921337 965899964 93810521 272891643 141768275 881262421 396153117 572634395 42616483 257885157 651304345 966009148 307396939 755461694 887523042 938790923 894118426 906657340 862082419 888053019 331038697 526759915 353594369 576900698 205938230 714526977 564075938 581617982 869126739 998199650 80700135 717239269 867906489 944042206 407472704 868194579 613422221 729947457 69305567 742678256 776115099 908549736 857277885 947832788 864391926 976031706 746477347 755983644 581985870 676165527 108027697 620059439 764356932 875227117 839015867 937406540 962048250 983907163 804001705 997118270 36223282 769287453 813785108 869904041 147865888 362855664 145738203 540835410 236802584 284447979 821050934 879625329 55603258 360687135 482669647 890461384 673833725 997715025 699637398 991149295 58971657 214015583 388377456 420141272 205244262 383948225 359792505 665560405 589668594 680052799 546312521 650985043 822750009 940749299 948297871 973141294 786869511 984630249 933767251 960431695 887819815 898857274 875726359 877405036 773810380 942474198 620098693 999803264 205785970 856769378 999386203 999787035 326373326 669290705 115490895 635885231 490586250 994675266 802776221 873025377 465158226 590230619 842417129 950890581 704666874 946437853 178075992 901188384 257821871 710369236 64429484 890545508 117095046 226063103 509615114 866099441 154208402 369774443 64776437 873301098 504706067 829455351 204908477 432995262 109848948 462970814 866768393 995027859 103346594 239615707 634344767 641816174 951025527 972419056 600328493 874801606 910818881 914198451 878140094 909501696 201043232 626971519 432300390 947504967 196337777 996142502 825398073 989026075 479981294 611562232 509428767 638391483 155504483 460013625 715491381 870397183 312513191 623200492 59771196 404813082 680602023 703297205 576574454 660684686 543828597 791017505 719584182 954143116 654552278 902142276 272912514 573890962 157346572 444957189 918896066 944313675 948101869 973466468 689719665 703070507 28622875 896407685 929967990 948970927 381909834 682424541 718419873 977269838 74280249 802549693 593822968 921390651 752252678 777654650 823696562 939921626 700878587 872194042 106332422 870939008 359918328 466893600 133341888 940437928 671660639 833245894 907215394 929318676 991642458 994135308 6030055 246541293 647909439 664564182 28395323 877878103 946829070 968280296 611016189 929011852 326203454 564736626 305496477 724514984 476365796 777032273 262894847 368669825 232821831 977494955 249987503 714230117 107512601 738744910 368643248 858155091 975330465 985916971 894652686 929729980 18725565 284873262 370536889 814694980 206104275 808489616 444639537 960091318 502147521 674847219 698450610 854429191 759075866 994900580 664199427 904694252 419587769 494198916 817678054 906624939 567845319 761993544 244949768 888707511 738989198 822950595 787530215 853230038 572942416 618272140 431285680 995654991 626393668 651882793 822061770 861575202 702001841 813976522 816726802 923530654 978095324 990106100 222815540 828140230 780108330 958929030 694179570 831591969 976390696 998643173 846085609 989514123 533942816 900289548 961305787 982399557 315576720 451027457 854536303 880618902 666178296 844189687 925771055 938478781 176237231 868115607 592477271 595053535 123073859 305597248 59316441 955124673 346475767 867797606 990604174 994191499 925525754 995272291 829595363 905659114 428967459 660429543 658146424 692488337 925811862 958024446 990020830 990887333 597571343 939237506 633357418 705089850 802739003 963907080 993394999 993414208 180599894 496916686 966901884 985857148 62983656 263606678 930437081 999512618 100541362 531655060 879491678 887052505 266059991 317322150 27090906 657133540 649349621 767260908 915800438 959189624 356800598 875956046 743839819 840049003 113781492 428129087 119023269 189210195 574075302 659638274 68529925 882101053 698577179 915480527 787145654 982680765 4552959 205633271 505918947 676771424 322209467 803773954 964430619 979337307 183428640 643023823 961086445 982953122 125966379 288017188 414681184 827564741 23527055 149390312 716332449 753748072 657772344 833551820 743735056 812147779 893791446 975120908 107669699 195645238 900498627 990973078 496145808 940663631 275561009 650333369 322270361 373077423 530663976 600624400 537859175 845499949 814055254 956210627 696138571 868916883 688686043 850322831 726757289 800499231 622338039 641574198 631022424 661281487 646083570 807403836 338388232 566111538 187349660 411349039 640558400 777748036 176349042 653281048 65510995 543168339 403096169 448604149 142389559 672010032 511897799 951333344 275297809 912251080 219047813 465620770 104987190 250077542 602617513 904630062 279460581 330621036 276596146 590029097 491886658 497948173 737305450 783877043 89037232 613593511 439607200 743249253 271649834 312583367 290388195 954721530 705068604 717894612 487407075 761884919 448053577 741129038 231078569 658497362 21013271 51238299 605324130 921889001 921448105 986497162 38384957 141884235 352277131 592259367 260790661 432360442 946509602 974692647 816148066 867530521 872259400 905725135 142051523 923297037 358332061 903514667 745741856 844674271 147453773 815200891 431660930 486353024 307474138 424511581 584712379 735480205 257799490 266896733 732363019 847586547 305535959 388538399 118514770 495628860 415031007 747565212 990247959 998853932 432875951 919022384 524562281 774777536 631685741 806181011 461129925 474295244 344004794 570423503 18499202 773120817 145872242 412551457 644571785 702201940 888616306 981638178 187434215 733424171 997868863 999095139 558680424 731634998 457813605 471469434 641822983 680097810 979935007 983443615 821622396 880149083 688693546 984142703 266209674 377600462 276105507 438330925 381961652 984204931 902126664 938524968 477522180 620285338 306911540 807448301 445852967 819512108 868252018 978658800 280841967 364699925 626373279 630071242 276149364 947597381 776698034 869965221 729679508 967478972 571875543 585806322 303890710 955488527 354170395 582358442 856562177 890227978 617718003 850669715 943752711 985903500 14341476 25508719 729624472 833188917 628642069 991529430 497056023 527305881 696423620 711657965 43140514 89638435 987243373 991548982 915546071 960958257 421117371 728781237 690992497 782427817 449637168 885240332 87818510 536031605 443146257 523345719 242672102 603036635 552901277 925968122 376419871 942769447 619962523 673545983 433904273 689326418 388083036 669309043 205656574 725277098 456421812 936740308 834080126 969830993 131652244 429774252 497680818 784246869 708474835 790348282 366155654 676087956 647633870 966379251 294051622 795808085 230594436 564311422 609603 157104178 631265806 984554828 111521827 522391116 358833738 769093526 296190427 406245073 805988108 828071168 649971757 955432321 213508999 717533623 772739388 873784827 398654535 895568734 997550292 998657444 638713526 866996904 172521951 963848023 514079490 981186080 156653984 956479977 365231983 721902835 793440879 963739381 947744699 979320016 717175637 866024602 885941741 946692019 742740106 811557077 221386422 868431458 441959694 647676043 587968565 887187280 544357481 556523473 987318706 994672833 335862476 767808047 374681987 956255771 242794682 563067803 147874504 352751912 879479942 936442808 187393150 779471431 702423401 758418323 294959591 956157682 265929460 755419876 232629869 319518671 735040531 902549660 210977719 381229180 583802064 895447851 680841422 835242145 49187643 66388714 1972383 650379047 761106455 789484653 799697283 847356743 954381431 961088329 11866431 872088797 318986925 943005729 715539483 816488438 207644996 958387018 345614358 739059953 506096382 917391292 100476454 686688667 716819558 812064931 819290577 959734695 673027481 817814160 875541167 919866713 844456488 929491135 579486711 744331529 415374214 687148752 710341039 804895198 541893651 889240739 848551880 850566283 492975963 792646021 509376337 881209558 335119718 614185554 717850426 904253421 974107456 978208149 742899136 778945307 992903962 996226992 475208105 606461587 101320932 997554373 52605148 785570642 533496502 938245872 79005304 141860362 307269655 804712983 17787068 977879918 975409329 990269552 795448028 954672034 83272787 865235557 373463444 435382193 734681088 952260508 733872634 742272035 490240979 788498462 804161030 959923268 506674541 661864601 881769669 891728331 32207197 480220331 601932163 983269169 414269290 924081170 756569585 771340897 967871049 969111312 772437537 865788677 931084425 935645484 498071287 904167281 798641392 852653864 438705179 439744375 457362677 822676395 495012747 758322303 953903134 961567085 695152428 813959504 488007049 643297063 995494779 998338261 727870746 819381507 945967858 972590794 567476741 733538245 48214585 145432308 777483580 797803733 227832947 629744004 241095958 409725492 422703463 878406729 89566247 394671843 607215437 667526755 337157977 486171507 110140613 981022648 299669796 575237975 954020369 969348609 933121565 984789248 900406752 915158099 817147174 858835337 638649283 720105996 633982073 967401400 370277143 786687736 8135209 513345107 476094267 769429049 607281097 678374212 908299623 920772700 689978219 714685780 392310808 533408750 583984996 871237641 314491176 637994522 912545332 947694525 591459123 779141896 994268026 997839414 200839234 363103925 369313383 852713336 391155358 507007201 800339040 910960041 961208751 961648189 851668269 862460418 444745064 704808785 949028820 968225024 616152217 966308435 919528079 981993870 728382089 735612830 858686827 980321517 724986595 849568383 276253729 637615595 103737077 250498162 504677330 925715656 512995408 900041180 522580858 730108946 479240860 949838295 591965658 684669385 43969955 784111303 283240879 832036280 908754752 933046423 191277559 993340722 799265519 937546621 833680972 900570605 114930271 618115516 479224562 669563913 5741380 934509033 584226699 652566251 281483778 400785551 48366056 286147789 472145287 514875253 466325870 921494088 3351342 771260539 153525892 272916248 474391682 816644260 560094480 777157036 254515536 560308784 123008986 605213188 919751241 987685533 562100911 824389081 74184212 952991709 769863736 827037316 580741485 751943863 585057945 681832761 986040913 996389517 868894645 894566172 724216699 962027404 616418800 704125597 536888326 759939228 501079950 657587651 643748160 804961848 106784466 620147887 376415948 933147061 688350943 797118058 645572883 699623415 985479559 994805323 354151920 678342174 807205123 994344571 812201393 955744761 669211618 947927450 540686059 994803150 995713275 996900192 495768616 515417256 64285011 310867790 419224794 582083420 902595197 964260631 660672263 705542352 413237105 612477874 792706660 898552872 900200658 970260715 491357687 612403500 739651543 839866733 4266106 131951916 166915720 304822840 447938303 465196646 823449317 958627868 536793961 827413194 921350921 942079760 417585499 772084189 820034713 968863789 137437806 637784913 917203920 923351747 547076159 587741376 203342265 818403080 472951839 576513683 854829803 981505834 592296088 599325183 212771396 720312136 214345638 278828101 657036844 826266058 612813108 737009035 739971908 822869715 939641722 981922437 932419513 933055881 790152595 892832182 615230754 911282504 26524289 544777748 239781880 847177186 912011560 923444910 834699436 848295604 344753727 379243117 567940989 578975564 782566236 865714291 514432268 953669131 411069050 632240176 66773442 377732494 609591634 740652065 249257609 465323325 503424723 958571495 726884359 876671580 599646094 812730162 758196544 777185254 833591789 895610297 671390355 805920995 556707131 652362860 587040552 875632459 777022021 965036616 59808121 330153184 442923446 810781159 132224674 577478023 192984925 779097938 451229039 829200954 955485450 974714655 860503708 953184117 927487206 944793143 634058512 761747046 589322630 662919381 899775003 921041098 548326372 718683335 561329388 818787722 441968647 575073660 419491326 721517562 611374702 887532834 301731588 584685674 538984326 628762104 617546027 957359254 199850986 570136763 432811989 864632673 999738700 999967889 793515680 926442143 641960076 883517153 190236452 986001872 930160147 989341016 215665622 431752592 272660222 369206200 270996798 416923277 968830046 968960757 479787180 947869753 871843199 898177212 936814712 938389209 973264120 981963264 423808701 745555165 595203395 785484644 636410133 861685190 482211231 506514701 226387454 733675269 974273161 979763850 747128217 815010333 351951871 509429180 400393020 407117057 927243947 953170803 513866608 902068089 715773259 991402569 764849849 813289194 607264805 628688401 197027940 858718202 859623198 912693094 351323749 506090123 250236741 779840504 601664930 874991326 296007145 354803184 920549998 945596341 867943539 978266581 571823206 775311866 430223885 614154906 467485054 679107434 484111988 930139508 548183186 703410171 172841634 977119221 456725913 965627281 366918230 927248644 931946797 987795599 931177040 951922378 410247465 718140084 286098117 953368698 858064010 879023192 502307437 913267500 62764791 587662545 553989796 870433573 650038002 784324028 226742092 488163784 326217460 889923823 728970641 876778929 627238522 751744766 932577501 981484390 122302433 422195800 982654300 983745096 601921407 688047569 791909170 951894757 590394903 690770786 170378060 962805150 772251091 958293144 802620905 912507872 25837072 891945408 601048490 818664995 646263083 834909148 992053182 992459093 798506731 942678492 217451636 820108117 919437321 967141961 149390822 475949681 906954243 981127202 788092044 966871892 828027903 858185483 456775322 672302046 875869491 919761111 572525780 962161530 291833057 396020929 109231283 541934305 274924618 293242317 275488383 892326010 350390388 739211200 677943331 801264100 261401771 412771656 745685305 946500124 481123396 487368177 588713801 668481377 396721552 990255997 352234858 764596299 234823563 594581182 446829793 976917728 774871088 822419478 985613793 991093273 846206892 932920987 247347557 624737409 347862738 671013165 173429978 319641950 683415688 739335335 479761907 743738114 833888538 840983310 742026762 873823588 750984491 806901415 570334747 653291348 42605930 635407847 921898027 932942114 878679113 974265434 506780325 649286101 717021889 805493414 766203895 887112670 422798417 993448843 133216933 793786846 467976336 803114912 169873464 418496337 540957127 710662241 57728183 421492618 629471157 759749295 554584823 678515518 149248937 827131629 779031823 918021019 275776525 937150852 423135674 470117124 477040004 888551586 765844982 876629107 874790142 911562426 166867946 450994915 943775511 970901020 887836942 889022467 604820617 842396644 602029650 661389163 648615332 776206381 170458802 805220508 262002392 303712091 230076500 313338001 882314701 972642129 57197285 929170980 109699142 232144911 658883414 950334645 457147090 608595732 232123774 259562782 302708948 800148670 503829036 575042892 498443721 747387431 858252045 917971136 487221013 905425486 132248501 404403939 315753438 355227552 745187926 808990252 845611206 877709042 474249253 943342852 916749383 999751364 590744684 615066187 908913887 981063263 137246312 757015827 408823413 638649536 838799552 960637322 780301110 817536735 353464354 473504599 128894943 169008602 337005732 712333198 921324432 990436930 607995001 616351912 77382346 727921940 283806248 627250528 777228877 920878642 810241087 869771989 340844262 625878573 424717041 893757084 778277724 896452435 352932094 680557867 424996457 908018547 660918493 748843160 36349322 484835519 615013420 812618377 309949527 561754042 757923145 989653685 15705642 79598811 739782799 943696263 729040424 874108115 757589652 902560413 542430349 779948584 882065823 990989610 665015153 710195211 249095340 824027559 543344638 726046226 358860023 515330356 559634615 917932051 795511312 871095179 315949092 577532064 80675004 366010421 368742422 775910264 348220958 655107614 281069388 438620955 909994777 954575678 39538059 783313832 207001228 877132858 979611367 988346819 217898533 770890876 377955242 619054039 400302186 915403322 321311055 533418571 722551685 886015002 116654498 517255035 188075704 485383032 181238948 668133887 490933532 647707940 780807300 951699595 751294977 989450334 187523192 387233226 260670233 338480617 541671342 657717419 29599205 201769903 640760218 715873939 592688186 946354485 734642970 827921289 68893003 140542354 56876649 188793100 126275247 511088443 138943146 645428411 380741494 569017077 540796433 914948596 862055472 875339931 783381062 787380246 752261235 939988146 662549678 745161148 127011744 438806641 490000398 916653745 463215348 673966251 921492598 963053910 852078287 858672786 404979570 845251718 68267509 425093231 360999739 462127780 518995632 906129604 490674442 859754491 532020784 721376585 496744518 713067600 78041526 256241209 102665544 185185832 126332263 499599027 497097269 861820046 374736854 606715518 766776414 969383972 372760942 964710637 252065193 879224525 330328678 703676998 913453773 957296308 200451576 755422943 202979227 369033267 759329693 910866873 378395496 653253732 143735929 585426619 572508265 707849074 794791136 842165610 378596702 712646541 175463699 196164857 307892801 821580747 889090757 949088706 164337446 278229485 845069197 856533170 728681067 732782385 433138868 968975836 403165218 512363230 933070829 975573725 800754777 855142283 71786071 848538430 702846139 899914972 409580424 547008252 144047200 778943918 388252928 682214787 286823445 768568802 483205491 942125531 819434122 888454582 172827442 968877793 868991231 892118972 671353426 885488316 441647599 579171218 269240589 835780472 457304930 965700474 235545540 683413874 766744243 825759526 613881952 620273269 939292808 993131042 167425319 409191658 642769910 884527292 852483793 973851044 803768890 970659830 258745791 305106480 705616699 840062878 530709766 676248723 295575530 301034306 416467827 794591131 762590355 983328128 819959348 994041242 944693239 972869023 163685483 648648029 429364237 782003547 363622050 379753155 57877414 618715729 516547920 517081143 604426597 736811507 946272406 960528720 321470264 480700493 840030111 964246746 865968582 932126308 678455806 846493817 425125737 540982482 811095065 948523264 937315771 960232188 93411087 956256746 360624900 575454872 844971928 939711978 363009060 752610719 115230825 758849823 881343990 938215442 983157672 987547613 692727575 915833315 323352397 383026058 554942247 913771384 493624782 550943311 261792659 928719910 53496565 673767729 960869063 986134885 99945045 233632801 595040301 655843436 132500352 667386761 829346241 887962797 254435851 424482849 382209933 515318511 245727467 423918390 142360575 849296759 803262044 896134452 454104882 793091017 989566952 994234495 698052016 968607962 574967710 798268668 520101501 748335458 201453839 612793077 311379115 655263828 84370282 157957146 46402734 684578580 440133102 817140384 135339969 528818219 938945117 991623599 381769015 742421600 348794071 836274875 747225957 976474933 835816008 925646067 908418199 933423177 480398588 552932097 568616264 827086572 715044221 867926279 558362031 763836723 767537258 889010894 998409014 999180540 872641462 881656280 905591305 919044582 81297757 978938259 199769788 523753292 468345474 845216942 964410322 988505023 735235812 864971974 812034143 934297896 304284555 974606887 312794619 601880461 885968662 920149157 273008721 486450866 177863724 869551125 562583459 914448336 481178194 764134593 330516629 912945280 247165903 889223497 624611660 780807058 88692648 740040475 233873006 732886806 726505865 848487829 304256451 361936108 926407460 940079026 725971551 936919534 21499702 982649627 912211664 931946547 406659308 440116518 97287106 492820498 196888685 506429021 40077493 145112872 780424611 999946259 877713604 931789307 585546550 681158258 77209170 376415372 726323578 959611727 781842392 917111875 371273406 882684687 715157705 994821268 173832230 323558148 684958335 934669817 219784526 876922699 702441064 894937402 240660268 787557081 555033394 729535360 105525838 361365199 941057011 943946415 302376584 519866747 174282470 262796394 217108737 331442322 796859255 927435611 213198050 253701751 391442742 864472302 50928368 222435157 316736099 549744355 302998090 774212755 510692607 894853994 991939871 996603204 997346082 998702590 868706690 994992766 619463260 708217090 150677180 545798527 982466304 991496164 519050031 982954993 692562286 953349088 676806802 746047203 304000744 548389063 276560478 634768519 400674043 412457549 327528263 397879316 595010038 787463852 891091630 929603026 753302891 996299031 659974721 960365477 351483774 577581622 357914342 937142707 144325064 486269286 727005974 807585769 203583621 793364793 176026724 837556396 100537044 599311399 822450620 983123981 299977183 891814362 623394484 640695903 445221408 888980406 430190325 923180213 133129621 338682337 47991185 189847440 406199565 824166975 431175170 842662443 790359669 942425113 100576558 834636520 923614206 935227233 247105865 267467700 292765955 789450491 46221769 536591824 107734951 621064520 423090565 565724944 293686315 530992987 697358288 858337456 792197841 883218250 19017418 918002296 136940128 911483880 498738683 572182969 191640866 446759777 25210960 896072420 148872892 700974090 943876548 963011080 926525192 999157745 337311145 642223572 470619997 917273065 859249448 932187223 496474184 595233976 972819158 983705655 534155064 667700260 232465469 629064873 527335577 750240031 989171953 999165144 471104353 555437761 984684196 989115288 170710227 347011110 997404621 999329012 512135897 579569151 294566137 825102287 192547536 628690151 231349749 366561050 611168564 776018260 963667463 980744902 233649300 255292337 271062329 860160950 154489346 458347850 340496622 995466912 760652802 897806834 622756153 893820540 539877056 549179355 442489000 733944128 980396080 988404154 391487325 656194138 249718273 259876167 218261525 309171531 58189070 501058118 407712156 538615078 633836408 635804707 908822646 998413448 960056397 982670299 860736437 914676980 381114095 516951927 895588298 996960413 601809065 858856096 445991225 453161482 788281109 954037130 542945012 789428331 422967770 838415578 914033734 921205658 777166244 805184342 420278438 423482460 531573701 733611508 474014507 877753921 915979427 974382958 10168331 544722659 305148220 413888717 124061492 728514265 551317569 811063935 379978460 664360329 568130604 973818083 871107463 909106212 581567292 777934224 500850917 578214006 23460419 380731643 739892385 990495809 53159254 656247383 342989487 751371017 46932898 111861927 35536370 123039742 764680912 789961875 60038240 85626225 527112150 555180476 3018193 709223590 913251074 989895246 844718464 871805705 727901054 975846097 44274238 723897073 364267757 671693889 797097379 956572789 579013365 978366308 404040117 993955432 573295542 849852421 654701395 665739346 517753506 754167831 900109703 986247758 813008601 978452772 195119385 859605789 384209898 701434352 910594471 995036097 566264082 964140758 714510287 953437785 148725444 712537506 377793188 981252263 595626332 787261154 640638397 993730736 769872256 923558662 334683314 945224491 55281495 518179700 66971285 952505839 871386340 994815507 431562861 758605493 158596830 207405420 753436013 892993147 203752285 256570772 658099811 770063497 735627312 822311967 515068834 991208901 644489795 863094811 994421698 995338529 308832118 664685195 116480098 866709598 381707550 704942571 610182880 995362982 528830834 841819788 101986634 411456063 146294987 628335805 77274266 315634180 710921223 973975175 777497031 921772427 751202846 770261003 269751162 949733743 831913168 904373531 84903929 976427883 393688475 985453553 957802562 974194719 918837634 941782889 685440347 864235593 511411814 671027177 632953584 721376484 233538833 631248397 49523394 323597121 924927963 961531479 589095073 686148768 412353483 990003778 592204018 769451619 452417323 863010640 410894821 985651498 657333659 781256088 365187934 848340797 986827346 993021237 630813747 824676460 359088643 816877592 93450104 960978443 538290226 929672560 602504400 943943658 188044062 601312617 172079959 982892754 498719005 710455684 292163945 499033762 25797499 557037736 636888398 766811716 716600 371203932 909601771 989327881 841474277 849861749 183317657 854012601 383746849 485730103 345820808 803242047 524486053 842679032 504366033 746675393 368661587 564709177 759066864 822808891 321513121 483354516 751340234 810005889 488692374 894873582 301984195 351900078 464342878 989529601 610037454 914286317 472056920 597032448 146843534 935479000 220755886 587743247 917240246 960308339 476421965 749557731 277659744 363064479 924406294 990811595 286389523 889352075 503932989 942724624 720142310 789109353 190441793 821938062 325256856 751075455 414444153 564639436 389541412 624681269 684496936 721447647 617223499 887493621 939447263 975536163 398547677 693536148 731161554 886323779 1075341 285470250 322286236 850181064 943851802 968920569 896639697 953524860 261457280 281658548 163732863 497135386 41753312 702952443 886180902 975184853 481665719 891317474 584664290 860785510 739904293 768362509 334725957 352126745 182365909 487001805 176300725 759196009 865489455 920547261 5170304 664923015 941461275 986877700 355112318 922110730 666458995 870499235 713932188 724925485 451371671 864658071 601023716 621246823 676727714 713968550 313465091 385334082 988318670 993934947 808605235 886967875 954589463 980426731 966009073 992540264 542985289 807362457 934886964 986101434 74425720 123920747 151661274 976524099 143430312 758839430 913823458 957549629 718654681 837570113 635087501 748138592 513499411 992653113 994751713 995886833 390265390 816450125 455276776 620762761 63638480 92664809 58761592 181415356 307639879 644792900 427552901 885938198 588748015 938333292 28062365 152635334 244875970 409738021 501318759 829197080 252422772 904755968 368581512 546082786 281771538 840669267 718659326 986572980 250937905 506570285 692629272 869841470 709787258 721493755 444022857 759174725 245083565 731185904 341394039 724221354 345369493 926618996 561238517 825503796 469127235 635497914 721255247 839907740 66945512 911201302 217481401 502505563 215147512 596146439 945871947 964219024 256665203 371520473 407591765 691455918 787851028 831570414 758311857 902361674 260366513 565288716 758120896 804071384 200299062 593346288 572011833 813036697 232926622 316712436 74076563 795841159 186938205 866304568 704075589 825261414 811765289 836432369 555657924 578036042 711061899 850976742 188970343 890497650 261046690 790726534 470780753 652567350 934633760 955740470 65003683 268071032 712442854 890799130 2028909 6816987 437300246 736235219 463649409 538284342 16764664 474800710 863892156 908958426 770732116 830912117 794831157 958153590 183816734 963189105 433263056 458562486 651135711 999609968 865403397 899752532 420110523 989457137 689374939 749790590 640342937 707091768 446074743 903341786 506478349 691743028 962468955 999113401 199161930 236161176 654407493 712404242 572325242 574669406 502523595 885499076 585619931 600868218 765115863 786890041 849589389 994403821 546096222 861892070 214456090 526316316 688225461 874385572 472745408 795575227 825052988 925667878 551840519 839310098 578115546 730662115 307809651 514299290 7241266 962174068 361192505 887103321 494981364 794687077 834281223 980909895 479873599 591042732 876534411 965282065 793179151 976352540 345006248 715283645 396040843 900077449 398123083 803982161 427706650 502986305 678955739 770652703 930766217 988174040 858756463 966846659 691165813 727417173 601860276 924219433 24014454 38929116 39819935 317650133 278943697 800110817 207621463 277839206 527011100 923506789 723571252 807145171 567529366 699536396 192099447 628013574 429676695 957546209 589379552 905405399 995183361 995279377 636314781 722870297 767890250 960133045 86058300 393939927 31045082 470165134 230513105 519317311 605747427 636869362 178241459 404132553 553542985 848373067 668440130 864482093 968613844 987671137 376099865 710792231 940141781 974284105 287257936 728804069 265579306 402909088 584751050 885951305 869697840 873507795 270761936 300465172 943823577 972267196 964384692 971764985 828075765 933212503 231354132 403539221 684848463 990427233 47292879 521807287 446386925 812898335 918025836 945337789 896702798 940292023 591223818 833747301 800488857 872250790 611889852 657159082 340455401 552837185 394553241 395344845 171091961 462292663 356547024 770119705 177838063 325295153 664303229 669904726 788942356 899228318 881021257 960618436 697055246 922388838 512114418 827742352 507414911 606531138 819282285 957526144 90095076 159421035 939740258 978596470 466238302 567359172 226942135 520913182 937328470 982784360 626771343 724565142 728507681 915308265 410051591 446004565 759490410 905657820 531626032 627702287 428702010 737379754 381388477 524384634 451027458 697244485 405082692 434954978 182363975 384089293 184723650 602706956 868004815 929142499 210894033 983373017 224504335 939100909 356764818 746411575 529226170 795120032 847695875 896820133 89308941 334073404 188959174 365578187 163559654 520993224 111489821 375718436 116788839 696657894 366180715 778633591 572354662 695060421 380926480 491976682 322700529 710949921 920927658 974045247 83201619 294366359 161456205 342452553 776848946 794103279 332163287 829063056 671921089 850365826 417433092 678132862 58176794 574152276 348436487 863896191 797766957 841837129 976767874 984308051 961907953 985352273 677551806 773767661 327290349 812872389 744877261 974601464 592079438 595961096 485900170 813153657 720644952 822792869 954501626 959192627 927329731 928313418 736261531 949800813 473048222 805799794 929163205 959461504 627355589 771359325 209751412 548206513 227509160 946327009 378475786 838143624 559582766 957344095 263534101 486939902 199131650 911655864 436426601 706131607 815814836 907040978 984425685 987704086 295700497 407541634 937744511 988208600 212302304 330363083 848778245 882126938 607624523 905881648 706021800 842204050 343611054 829363503 177843782 869073156 292003188 446313467 866214862 905220401 671349589 742613211 223554774 585716223 901698230 976841348 881649014 947349743 685939936 880374122 573673609 674628246 599900380 645553193 232161697 546510494 618601751 850770997 692473405 976303224 814214132 965936231 504187844 637848711 441197045 780279267 84095075 476250361 753399307 894581199 460507974 470666939 649883625 903755380 194108719 212346444 793785125 862529774 84943319 275931839 733554112 946508794 120454174 638000150 50331345 647912642 401281349 756383002 936094167 999811512 43362889 347013879 778441404 870133566 382162882 617490179 434413675 451263745 68014951 990731622 925419424 995814903 204967070 227762549 263816293 584077832 179267203 898005677 491024583 803868705 648078030 709734490 492681184 957888725 738954720 899611828 224497900 275513306 575545465 954093262 118700344 324854056 373152801 477559914 938288824 999811325 384715018 844068805 870086954 960449437 265051681 552947448 207010858 260280040 412692965 694721034 741400737 805346868 33633941 186330103 826662671 829431050 628330025 971285045 983682635 987185688 546691001 724906161 185607278 518182529 608896957 639725710 675729836 969512741 370136456 761352313 171418430 742068864 981114363 983085745 792736983 796373050 137822372 839022263 484945250 950341759 163462261 627885691 780660556 935678930 796647706 824266083 259230348 590282201 200479243 626794446 3304819 654863920 381587185 902058892 906307488 922124142 493791363 953035634 570057128 764247554 599671880 848435140 233279943 923352790 850526829 948132031 122739621 973265318 235157281 776071500 319748720 847093978 819021847 837887411 396254991 690823343 272935181 539794487 290032396 940511349 780625016 864071760 185341774 614277569 90773594 847713558 933203696 966809138 342854090 398052211 91489478 674539637 811437038 863458609 343009766 386972670 848911559 943338835 376294278 647573470 627176674 798871738 963727108 994363666 111439353 528705185 968414003 972880606 104356462 156934047 560592139 572018674 251845059 370051827 511555673 650481598 7010649 269975142 135455432 315091226 579489364 947411186 307471351 903355996 88536119 946372859 758681946 857307122 769045305 832484578 364093016 701911346 645397129 675964058 306790147 386362261 822303537 890902966 650271281 763746850 34521453 540765743 114898744 389620200 191335570 346775813 656223906 865228423 569134356 770808852 407402712 859925793 312866933 961321954 337792606 445730426 216780681 743099001 869207495 972965406 257572902 666318439 128374760 676495176 888968073 985555215 832284480 961262011 401757876 624114988 158073900 218039589 681064708 816064430 375012328 765450083 739457060 931527794 838765827 938227650 409781845 814302815 840419566 919415870 994744343 999794735 146518481 822114557 925684597 945698213 343120033 529196519 378520345 943226574 528662752 740466250 358387224 933200423 923421572 935071822 660709786 970992414 873837587 999214168 350644744 964069191 378856014 517305627 678765495 958807695 327554133 996492355 919702938 988231376 880575026 890717472 82153415 337650366 746769815 868163399 746301739 898747426 372737648 798907912 527084193 835570142 280096717 800489203 628333357 782105292 168662986 332704047 275697220 527181954 278239881 658106448 242164747 737990151 776477119 947332713 131283694 382107183 232971678 240446298 719291857 761015921 402771252 811254314 960334469 974864863 352918437 439560340 931015790 956428345 344613751 726782270 365164678 648947406 819446730 839377384 569487267 758359439 94569260 385530986 211073235 496754559 712167713 926167434 734010910 752499838 537568269 675346051 439978965 731614758 534520880 987194578 166666762 398353788 820453329 888129582 968497276 978532160 845196557 989876228 774921819 790464636 57854521 528890207 794127527 980175844 273235631 539895899 985697316 995953942 941868956 990346714 960991496 964563020 652739886 983415720 172696060 850408732 759152958 869667890 900408898 938600355 772275555 921892049 918920346 986198817 515610102 888036104 677184935 921053411 293575433 778586992 936557677 967625343 38142650 225576111 917213444 953366367 358346183 916220101 2639662 833191901 219927818 971414099 834990079 933374650 17622968 947378401 556387670 702655627 601734976 678230689 458853834 591640829 269220232 290783307 366664014 726382455 258700916 561659752 292404206 915971535 141005272 320348200 763635871 944607612 385872105 765115386 16933352 613041221 365033625 774724473 408430633 962289613 181254278 311319842 957655674 977947146 107192154 542377642 599223166 956102187 141327739 174652174 865551631 934645834 452565147 816310147 81244194 754876777 303405690 664707438 542282987 936536326 165656427 267978677 777474593 837607736 322007898 334414215 550280940 644253089 591025551 950039891 746605458 872628974 537171370 844780242 148365435 557375878 956933507 958594979 372297333 562182660 636794585 642742304 878667896 965442747 710788527 914322285 451323300 488829052 51272371 857145746 458877869 969906236 512381467 923461571 54496982 913056479 163716223 618167468 914368141 984250702 286009285 992363439 160507240 484178488 191876902 313146106 561882317 631227038 710348943 791754730 758776369 927623580 923620919 936711496 489033625 929684712 1114483 982848979 486781094 755151964 15556221 890516994 89962598 500389626 879993307 880842627 517633431 902162502 956776717 990052468 213439951 954686007 608719962 819447854 532441196 886693951 302570309 337432358 673675117 696978031 176277764 419331621 46990342 225126961 847682097 919214838 283736188 754721479 462374877 603359186 604606888 636029291 757768387 853274800 227235807 711204751 199552122 396098193 99996301 369037943 732605570 960750829 473668783 956485996 942602426 984100198 686193272 703034784 113011503 453144323 106111781 726596519 674106315 751746069 193783838 416693667 576413899 753163830 173618529 175733885 935822669 950948881 783502626 816055419 690305917 921600866 553314201 829236271 536877897 637510073 541517223 685172423 9660817 237306481 94915657 287523878 972902093 991505577 903736524 946656705 545119135 822753767 421611756 916277464 613361716 979908828 263221916 375746393 71339635 317869245 827641554 977242905 872629966 954583449 668185452 945749011 268327607 370714968 930898343 997024518 578715946 595540089 433547534 994678461 941901231 981548347 935162518 973643736 333829189 970820362 549294213 726845162 730923369 856772080 551904460 753219112 507970196 975528452 940556109 952206555 736190854 764412163 229012376 778737081 143748678 345284125 467063112 478266619 365717606 544697744 253400682 381235417 930210783 945399004 918766829 961906823 944027238 961791580 461760564 709603315 7842340 361763695 321648868 824105595 761450397 996493480 173634933 255206767 278145376 745007319 370687065 827217145 678687567 966746338 134909007 516745106 729912102 924172302 569404891 915340292 586849677 737396687 525416421 538947309 945814203 963284963 381496392 997254831 213620084 754506571 917937973 983755839 344249750 400152256 139658191 708549294 257216505 562169774 885143214 934931431 321978435 463969792 824940638 955318995 626822199 941012145 975147772 999061245 923350893 956627764 481183320 868537229 940249705 962740408 834011343 856769864 500097113 860954053 272854888 979332843 387063778 792779348 956550074 984828100 769484575 861722072 193378966 993016322 92345793 824840167 401048798 925993997 318535102 887542933 840923462 905066750 441003239 568409532 339896103 569604210 860771195 880593619 362913663 702022660 751111966 789254084 110334284 263217895 693375517 984822943 780369274 861212126 980126896 995612854 437139027 932630589 410524203 489497532 869385243 946024248 422934039 772458309 169555337 998167338 944441259 978819010 298342802 575917195 592872681 915653211 368227165 441564989 92110229 386817211 955512556 996780384 32761939 730387242 295191374 799629535 178785220 739975820 550667941 661716792 518587443 794101146 96211701 393353392 852089154 963766426 466585235 954112272 506984657 613764961 347220252 407518940 101707158 509175146 773207548 905365678 559521579 751269237 762011291 828828230 381236200 788314202 865730605 908915496 99468151 761840141 675652519 990360749 112609179 564922644 116648033 206254492 652857893 827649774 885807750 888200924 659116136 857266976 830741137 851094937 261207541 632011178 243945789 973242608 228601724 748830052 782181040 834715250 1769606 734249985 624028553 977444185 184501700 691326642 140036805 663299237 870308934 959142254 807555103 868059184 231897218 708312758 604324048 817682445 458345608 654343930 973004577 986645177 876734227 970241949 267270988 655066661 581487971 930778328 782138170 793811458 84039877 395229933 56684627 57221568 669647518 737725227 523058367 985265012 326176602 842469201 792204802 972570131 787868379 901375225 737871742 927204697 26032078 117887514 916108926 958680774 786706001 792350486 90471561 703796926 210703617 430226802 629777282 738916573 221135721 651927078 325719062 563778113 25990545 254792209 575954949 653433009 974804468 979633766 225174562 552635561 376867966 847307189 131970658 637863865 130864908 436061347 171411197 869337117 386196415 476390355 962042760 963999327 942343328 976679680 888460883 942995633 214237868 388475016 776136502 797143166 904194342 929374221 793157536 850284462 445302871 465902475 757471264 787038060 610156892 849335436 485253102 485544060 30153688 781338299 775908173 835708456 229501908 269533220 66846984 90151611 126021193 963741929 32911740 157456882 923093221 981586384 650708862 829419076 525661458 782003579 344958096 953865813 657625136 947366036 407515232 579116250 40904318 942765896 588212309 840815658 186931433 487076927 342420408 658774590 44583531 839542366 486999994 689164227 383597386 513950990 453790141 980699163 30786302 261806342 690068868 968886143 711715696 889431288 408844245 564914995 39639255 126893799 565797719 602016281 914326887 914536772 625328972 688558588 48510851 297462129 831265656 864524252 447784154 797836212 13003667 294368700 241667042 603334820 187843055 902584339 902475191 930844006 489980850 633241423 979923485 999279379 152055968 333320114 392043819 402413930 118920323 430751225 939249730 989385228 358072463 862211455 712673321 888014994 393627108 867694122 282523536 795702310 247227251 252763444 766833099 913111347 739040894 770524805 532043664 799622882 580459634 802171236 270878449 855347809 638918578 897063282 175141126 727106469 36768921 769358930 122718284 715439282 946385911 952196563 775793434 802448891 567929877 774249926 478341924 560003012 458079518 906043296 300597281 757363528 895726727 987264790 401740516 787208408 279905630 459787708 831469464 951666614 464643444 796311176 278872083 857654789 816320587 956676156 205417585 605511004 106641508 748655269 389663508 598455559 499167594 895236216 962960870 966978253 427818952 760537672 146523513 874754516 554843485 893765862 640944969 738824445 620205637 636297543 79983991 999754247 253047428 594772473 4515165 256334628 769227104 801297819 928122478 938642535 109899629 467155623 353441802 793221995 726269161 928812057 34178503 81649237 305936552 802820024 504362787 728830724 209190483 814672708 460226246 872394257 936530850 982421955 559425720 655826175 966076073 972088718 26341472 598189424 379604356 546862187 52530579 373708977 405498833 980212117 51493006 986996020 895323890 937052863 745061113 756924356 670453502 676973752 494579323 498640149 1569201 115563125 901639260 956555609 292502549 999304214 967886211 975520740 137651745 991083896 274583463 309571714 914757039 947014907 234187607 677253154 480852627 956160203 7587415 795376284 71243214 766125330 684467557 687734871 431211257 566025190 156365652 818220522 348594836 473150691 748091855 914465842 316556501 676621274 576979646 824646907 150688068 500378084 48389032 297736046 134460175 832021661 968181056 981638261 527525599 962041797 262517431 879520951 538516064 801719613 767883622 783196464 296418778 971627753 106594683 674775796 867746785 952325518 755904721 989591792 395404897 790429548 391918459 588645312 806235148 861735832 607030586 698623086 811864505 838315239 335125488 617529836 953261713 989804161 154331902 251556333 944859318 960234269 538882595 851617040 316426681 838810277 709119629 789771596 844147689 909975644 572497406 886804795 540383961 713207543 614423807 942584364 312064931 529334121 35732569 664815123 794975100 941324093 859008523 881612238 367454939 412475814 886707449 991567494 747458289 898038446 483663911 905601951 584392937 745871224 410420583 659050294 401395685 446648514 840246093 868361549 25436889 610713421 873932408 968413448 736395076 799381656 432983387 675767390 557448847 780808256 289030362 754410810 696150360 814067780 271600761 589275150 88552013 945790372 898393152 900162586 890089497 975876707 225647915 459350357 226251074 679530512 764647123 995948584 717352972 876085728 213916478 262217907 837730458 870364012 176140048 260467577 843779866 970410794 338622916 973063238 418114596 982986211 835877123 897409375 830402873 916570310 23996731 790074303 929464821 949434754 103596821 993060234 748128077 944777870 683783184 835543408 962592575 997561470 787821492 957764944 672365309 873604595 66469122 276132781 228781415 840306056 460190212 590185924 514739229 534462333 579981448 933309320 567335500 570483693 892609440 913847583 972629806 986571071 171960484 293510214 915491521 919236413 594415659 893376048 5471801 539095727 906327006 952208662 634482166 776452091 136500111 870901669 921582987 991430058 770791016 842886644 215551303 564985251 361031464 707002949 768637077 981297891 450771660 867404014 887612758 948736816 395031193 736895316 467671711 561776118 210243392 263131491 745112188 778785116 308918456 518230080 975808886 979961229 158723740 205119090 481946453 658656467 94212633 428202177 775691542 820973209 970710191 991562354 775182387 876937560 73146041 578747649 274816200 810630464 45874300 188837517 477365320 601382280 213163067 451848179 279796325 640800014 926102872 958689694 575797367 684715511 465241060 684869344 862199580 903721547 982002940 992234141 4129382 556929712 397953090 623646714 961330518 963712024 284718796 296851661 122225961 162960810 970034081 973053912 303933523 939189072 201587593 480251331 781076950 969383099 712142298 832329302 835413377 936630759 632160398 702526772 23964930 360385500 680795081 705463673 528989342 802603665 268954562 300898921 408677691 922237806 979116964 997146540 593522958 950343030 692561539 893692574 85236190 704378884 641018874 844894136 904933645 975343127 42614969 694448589 285036723 676851481 226736901 880900311 884471554 915700901 469470025 984311385 197073112 776311187 992031976 997580321 584591466 722406633 743864678 863008293 639501000 932426579 477099932 797938510 920113303 938410967 380185898 941959490 902598858 937663301 840038055 931823128 994447002 999719253 118471000 561198790 654684416 864354934 246252664 441004209 505337273 919571566 416801600 965134143 277175081 442189817 698562298 704910833 145713414 802648925 70076422 959514007 433143808 953376311 615234478 615265548 10776313 588440593 968772028 985588294 885125155 993613640 981635646 985861465 221502450 241844764 156547080 645824262 140858121 805911882 590854733 956696139 978539549 989032128 941712558 955874763 151216181 585222853 678955880 693733003 780435841 827320822 447727212 865520725 157942740 259080264 31990358 195911112 751308229 875771225 195554342 454206350 736207846 760784770 830649599 911458164 214765419 307183008 675383335 933156803 913510431 928693366 919451054 926004534 662549820 832659685 485180587 532485817 36746943 523511080 747850326 796030181 507288127 884691443 903642957 920631129 95809445 450613443 871519874 948597066 462843933 936477516 98054783 229747216 535973245 713167863 542106064 926994261 520622703 783116381 518998736 877874776 229564225 757620988 782869815 813177256 980875935 995540872 503342606 893213541 438520450 633607713 811541212 902989246 471598057 813997484 638237700 985021306 662870396 666344794 172813081 731676068 880979936 976830433 934495565 995198262 440448697 739777626 929376743 954000793 147752412 211734421 53792316 682807236 551710509 758734712 3681000 277576636 667215971 671008831 175508155 273244127 842029024 885628463 598214718 785879368 38034365 546156307 99054531 382254645 525779257 882226413 736527721 930037226 814750930 889231871 169544671 511095764 723307666 889044797 257703237 951637140 115271699 370318247 150404422 331920692 287229689 962747680 796246700 824906700 450208567 806340443 227708632 494990969 443367301 456773298 453996322 609581163 869679939 872035795 364047446 945674467 792915799 950144444 523214952 953997788 867432812 940023283 749931735 793130575 207221135 339783762 469055603 770215169 390052315 845607388 324457571 324705679 232609539 893481237 189652961 940909119 517933257 960850359 301259888 851547443 23680202 167083379 269043571 937423683 536776592 768397191 877057540 877489416 265152725 878826557 459167379 515482401 723743681 904117470 895920335 933259036 898976968 998344459 529342182 973261358 941488518 980115862 657015962 680822129 313995938 613714952 504736556 907081613 953669064 957240530 250408884 732561297 632375616 679425488 270556157 669737441 22794034 249198051 11843485 361526508 612109753 631885982 186466806 316611367 515679786 552399109 993475210 994940993 886410888 918028731 780668186 856795568 996857514 998149071 655703490 869988800 778197570 841407651 276871228 820242348 682695867 963655287 647596131 724591862 221632177 681321017 750463476 826240600 358977760 864423144 292448403 802168474 727854803 752223004 179527281 209565327 499146170 731462930 967621468 975350276 327123472 446030900 464702343 659957788 709449269 837038382 632827767 674514818 103070487 137402504 490757333 518054742 854558955 875483809 37184572 456690533 824863475 966368537 628804638 847227821 132817563 946143682 457553827 825016232 190319111 910182788 349081364 376491826 177234923 227599319 130951740 156461152 821183760 840393950 893301378 999811658 827273278 859187816 463560087 727521029 274981205 763461862 422597305 657923297 234956671 254115279 748435614 957995397 737289657 954025652 344464902 801968250 836647192 999397125 791591429 842483376 814187640 887678318 611257612 637453957 533606861 912960099 154571188 726933158 528725016 534514354 549890349 645317030 673457115 711108908 313263242 858240297 545966155 914566349 709894553 959309130 779143420 865440556 467602662 635271298 922998910 942758784 446266795 994664076 144148038 540609830 562993744 565595926 906302205 965114583 122908689 611695407 281460174 329008000 799430454 880728093 972529682 987944164 603384827 753277151 367373771 899598316 581275403 889143134 396880159 690119065 772515929 958081348 113462320 756741138 820724353 944582523 890621839 907097339 455352611 690014844 172512121 712789109 144341922 596240368 631962306 956003508 825109265 950242241 984627479 985012935 601236101 929389780 531243150 814197538 429340382 452096948 388937304 827905257 979810631 993462701 394178295 658516985 592147961 628323684 512515249 882886267 514356688 854893890 540678038 781309822 605202336 742485708 585317987 893894285 975300471 977757201 888973726 978891868 311095707 485632658 311862532 653181413 12648239 515063418 29135260 185373728 446611551 805705053 710520143 737190152 77219082 312134344 847868125 879419847 400849536 515127075 998028015 999283996 380900460 623512316 542096594 656928055 300752824 928218867 109786808 506758811 444102311 468084606 162943104 800631690 980013747 985237403 38428600 343355150 886388218 928838309 508027622 983570321 47782828 283392095 802445531 833303057 256824900 926673933 138892222 307130225 560589520 676303840 410541502 729501812 854023114 897817861 509319044 675228776 634863441 799427907 640911829 912021120 689414689 839319222 551943820 769117135 180462179 731481389 819699670 930637299 303818114 510358851 302536666 392983591 477636609 847284360 37260077 531563298 436788490 968801599 553752910 726283920 299208075 556469211 290407131 754364511 849889304 861504711 27559910 757224625 650777657 813401745 746297836 829202304 134130017 157535222 64678915 195511568 785655939 967469519 721767083 896432605 553635726 875678255 299672397 873698441 163087408 498999436 58288743 274405836 787004198 870088572 585437698 979850083 40508806 929016258 339787434 721388108 523061664 967682446 259688586 628744739 587626826 895914143 302832040 802506434 142179517 603192142 6237057 633898502 829682426 862056016 574649438 836559286 426104202 438471299 203833059 883796485 207447350 219564012 270122825 957338722 318437287 865749969 804641094 898549454 706591007 838472525 950907360 976548129 840389875 891960877 829888142 943755784 142305975 195650337 147580543 767366600 133473610 967671742 451428286 683885228 221171113 837548978 828056203 830227779 250662501 952033007 155233312 841087299 309192130 962223653 119043886 699358492 422604196 428061202 310365847 980367939 496521337 529609464 798931583 839429570 931644243 937775742 428697872 743317103 191996774 844968303 797542961 810818692 271684204 374222131 802179707 832100253 880659197 946354088 586659609 818852659 523938881 983184804 55191098 942825947 438790478 507522743 12390509 357580428 878172624 911179252 22606959 163370869 853583908 858263651 154114990 302885806 10934575 314536822 907937730 932575568 983588636 997370759 146115936 210968257 488257003 520810890 366747193 917186587 234281081 929074883 366398059 929493553 230036197 608831485 327938825 423636797 575770682 933849115 754103513 799875654 568260425 945584435 533735192 745686455 88763564 159704855 688814352 845450901 120109504 445274450 205698236 492696780 865566169 910372661 550096377 839892368 161485003 264161149 313619448 586256081 841866577 949999852 228777910 361228192 481705395 952190033 238897986 998378487 462907273 734926787 913299275 959120431 696404944 772062549 360338279 776424507 565358302 711624810 320601692 677231252 124527127 566943497 631320881 799368650 900883723 942346656 23484387 702816137 65596351 984215477 602399437 755628904 78031503 112313605 8970049 287515401 460720899 603329173 450451481 813594904 430968341 865272439 474734838 825184832 667293318 829909697 902981540 966077894 460126964 608876699 708533209 755723816 853133364 962575025 685803014 995508226 729378822 951300789 695201150 998692222 814495191 943912856 199249250 681348032 484244168 540262674 27743579 363177970 705596262 920757634 180755729 249932515 456954150 950535756 126949344 723423811 478510152 872695997 726602900 984616355 868500421 968203814 311626314 728002409 840399871 967643160 491500519 636930975 216976354 357870540 90464164 844873204 207462409 275890759 840620732 952888436 19289250 602583360 746639606 986724107 724519726 891919138 403966504 550609565 824061348 913604892 25425706 263457991 484536117 555045686 19810273 429052459 885777297 920371924 680776358 943872951 412310905 825428368 542355096 635211188 499399680 914228581 563383239 777533877 956134212 966044605 632477283 851385157 376606249 932454361 755021015 804160420 910949679 944676112 677179520 745674624 375475303 859052114 808537011 966558051 304471979 571157518 247762311 816063243 614610876 882159441 431692894 765634218 273527670 888800836 814423465 926255673 384207262 518817298 550286499 868425466 860585286 877257774 335435012 613450533 464653705 940881710 567362931 919722498 883499333 986966648 684929016 801921343 587038197 961767490 134659311 380185801 805468704 814288962 928364715 970371822 496095909 682897966 396580367 724365436 140942972 753562091 836059156 947725603 129949095 540148372 522013430 825315366 872903753 975828099 317157283 492724971 619893461 816082569 52784661 676602098 807084322 910633806 174807646 524439106 19024242 257582222 171805169 282788162 88467562 563528445 308379532 655474913 498404214 519238904 765474225 853776428 113304854 290467255 333519355 564451496 40721859 650747124 666840188 810659984 570032682 940949735 179771647 626093637 609921119 983986898 930225938 968321253 310018748 983846247 316966654 934342986 228556883 530846495 156436873 311500717 470545107 769485398 94459625 336672853 245626771 585112883 627824070 690346023 365721909 768929315 922405803 959644871 534722887 883562314 8815723 517056255 477017677 753477653 389772437 785840825 561093759 708114304 848182679 970952883 62192781 429834558 225905460 356802315 449038690 529478554 359405110 597533220 523213840 611638322 231338422 988338922 852290467 962671339 612064123 802049057 429732287 750201498 943095557 966600737 451440987 621984368 222672986 821614989 941264832 978990817 344449711 355108041 635088424 787057070 514223100 992304518 460097634 536506769 887119217 889602689 983099184 992322761 240059688 763670624 434939541 550690413 935625830 939699646 573702960 907757125 215909690 333523878 240780362 378958843 250350823 436481983 166290695 384017752 214223595 574805267 876729049 876969394 924542209 927850720 72006907 938538279 458670471 757119247 433822080 836300717 82585350 125700344 897037748 987781985 955397550 978930316 168863965 715147404 864469177 956004422 378867076 780344067 962565536 981530377 670853906 785740492 490948869 500296215 743692463 899426655 894901246 963793485 543712484 764689709 841928625 931712639 672002954 968909930 763946943 781004802 31124721 987772848 304317121 582864252 397915284 575545908 673277289 819978633 521997192 662811758 574482562 777843473 874437890 995737944 344290895 354288478 806220474 836310376 733671799 959774068 432071318 919616475 52222983 900202742 641540920 777151514 675599190 713631086 544254396 553931399 549784245 872489921 889062853 947807808 692468931 849400479 609756827 856432348 767286627 907849323 87171193 157213637 649473920 918828033 440195856 549643122 929180498 995889361 577470886 987643700 9638400 697419184 779246271 908262003 46493931 971343538 962039399 991203516 467927286 819353517 306756511 513198929 415348629 738175003 483782012 787047883 331676540 382564786 624685158 739668769 994109386 999764390 884481863 910847659 924529797 925167415 811239588 814029975 331551840 508783592 876156967 988335295 89785009 380597661 463581201 885997670 834881761 935643986 911239243 963033901 542398105 947885213 742136430 911400178 894940716 942572547 981422121 984239606 533470360 812603632 740527240 932349248 16604667 44042956 232224638 834312073 549828575 815360567 709902107 758175659 764538919 774149920 491488400 576787678 289924190 713410863 805732417 988336514 829276138 851923011 429296420 791755522 222371835 427941431 338635458 639832594 212000784 497235741 407012660 417262032 742510422 842660150 403332622 781783247 872481068 903932203 166184367 698127571 29625230 615786554 861524964 924387735 292141790 872579850 934361371 961037935 621708108 771936930 934929323 972172261 763118353 821677547 808800628 898061308 443224119 552269183 718186912 957459617 940775298 959432549 830634741 995034619 585334674 857447659 125081365 143728561 875133050 973318121 314731810 589685783 856253695 887703010 795877078 839885002 119842028 377311661 2151023 61951902 169971489 354352235 497116957 662222907 823647299 941123215 181317174 985007858 309085739 579420634 790192193 981518933 451825030 665241109 214968984 226836098 64778407 950570032 449366193 935045526 711150117 751505280 279219746 592032556 136407874 198448467 453226049 610789398 796642573 867663334 835773881 995388027 267425852 941759610 341385562 682862871 52888850 336149567 346410625 362480019 361160305 939306885 684149727 980912164 719378096 897149138 819727798 827338169 440816560 743951145 704957494 737522838 901642924 999667970 376779001 604196357 13624573 140821179 274732104 521525989 207030445 447258561 787866549 939627376 752424377 758290989 180845578 299899790 582481264 919219987 600928941 915063439 992823267 993611352 438646059 594763925 965912396 972320047 938192088 942903308 299540554 589517995 782676471 873740958 976233323 980249454 612343026 991666475 288099699 506819123 429506861 849916169 876393026 904875488 90151252 704861464 138294963 323042858 611790475 765356383 549171558 879911865 516764678 576663499 301162962 353136325 224645651 970547408 972435660 986251533 336838961 916127242 206231789 894035127 446648382 523683547 211931742 299887696 326778073 777502369 885562266 997419298 56813266 384587357 555164740 698957968 862528271 883924622 808955607 892422351 573807796 685475437 100424148 122207003 733943662 975901360 778478459 914596524 98194110 938414590 584265664 696846276 413508011 664783904 645239822 798041472 842365652 930506215 230863796 561919198 578354991 840704284 561116566 974027570 623949391 732332474 493344492 595545564 902659356 930286923 14523726 318519096 75000384 368858207 803758346 871420743 437230609 963622309 16832199 388408068 928500316 960648229 622587886 962308744 826545481 946314381 394407093 421953910 922416076 923464858 10965007 423727191 846515844 872188669 532866959 911283072 658174909 675180413 673732484 977190188 978040870 984233095 159961689 531143176 230231644 635204568 729245590 917215680 852999141 881755796 559124292 665309631 332981995 530622120 3962237 905860393 290833476 655401500 64691667 646054866 894425471 965835901 543448911 878315846 298801656 836001999 672320219 929515753 955729932 978595362 768784079 855587109 322572390 635937244 273279298 581424972 959497402 966161380 524438642 689449237 306765914 513226676 712650579 919642654 975836310 992444928 698332768 997406620 47749288 244255105 525533622 597181698 796621368 914819004 142666101 960044221 273582839 545889661 624997922 773867107 637370611 999697725 434528464 859209681 754501194 818034777 322231338 382093514 931883224 943090241 54073973 696063442 380739233 401661029 743155752 797845569 484056634 848012360 66838843 907805334 198508377 723343965 201094527 320311408 859256961 903448226 938555953 978388604 361819473 880356384 801815538 834336268 154600488 499167152 623635812 742222948 944867218 984446879 482218577 584073089 9133250 494381183 496705442 642773729 774826508 824606485 507162555 862916604 474819718 671595287 254939190 922523917 787990299 893775362 8292935 194196092 95914050 922546008 640807162 853127595 378085277 625397280 593522263 681403009 678074833 781832130 947240594 993685298 428705421 533061362 595578971 870203936 202530075 676112589 833558880 984611869 305508339 902470746 310724861 646649524 412063641 415688880 773900205 945678347 780905205 966715330 27371050 107934994 226029689 792179428 612377737 867209541 62272511 533053713 467774798 512031114 485887812 774012711 83828853 200033358 914439025 978227961 486380085 625490346 915393055 994561525 701183100 818425840 850612833 911978547 561850376 757266536 19836288 495945843 779015742 879680235 474519877 887448032 107726961 142826396 910579791 984972630 506554746 962230305 24988684 368913519 99842015 895344567 424695244 454264959 218664294 603355048 275037208 778879851 276881554 805848316 751535777 865169704 413500459 553470887 288591984 601046927 96412088 618075017 584591848 844734228 329875886 673263013 635346598 988735492 576993634 613595260 768763111 776711222 945458967 973276891 732469056 907828837 538571754 545157883 363665706 430070420 38201467 510045012 556396196 660556701 331732229 649523368 338437294 737137876 378676443 895835109 159073081 820565991 593332664 791334965 57951343 992256305 473672681 653680400 56751459 199635544 877150339 995634801 480398115 576060441 461399397 561089420 812363615 990239095 876547929 910093705 802200918 925907765 651785794 980863830 522071544 722842072 535596256 926431817 429743541 467648153 57343540 297297925 488256159 631980757 206965599 497754176 703582525 896975078 639559995 722208940 484491717 985984636 728806261 899176961 245357415 600517392 421738625 747283904 721904472 769399566 10164178 603793549 228028370 306581082 197866829 776371442 770518994 821040113 209485422 537504716 703305434 771492572 734336012 854993034 372945762 924023082 928263783 980770831 267397427 892165633 370109304 452359835 445846435 917035900 657421004 811439281 248731836 376821183 234910248 797749762 554652451 997541350 15405611 349041634 352944169 531738863 565798503 643001425 284748888 723582549 565117839 904705626 743583690 765231718 596363590 857012133 652781185 711196781 352972786 799074501 753324464 938155092 679006585 737692225 958374078 961821332 869725634 923535760 932939643 992120725 650732666 698283116 221220038 647276133 152949693 569616855 889137668 974468160 406961394 877769222 292081822 738988964 525283112 950491123 872338403 969100543 750669781 840990452 272100149 939591893 959210805 988656702 116740339 148192239 815087874 827171400 281982545 409846104 924761381 944520985 750977951 752231781 909372669 994539285 13251104 594786031 535779990 802701164 249308688 905011692 508519339 847239946 680398399 905849960 126741652 385611537 628101965 825691029 974377159 977976677 478860667 670559295 530476670 984191228 937467393 955573457 38044374 392917825 800523027 819245140 545346130 960745526 603661482 644677098 850516460 932285455 185014384 498212277 687157336 937932037 866729087 958634223 209699428 826548184 977644455 986831527 941358295 986824508 985110685 993009959 909552453 965705580 856359012 888208842 773636924 982237993 358077948 806202728 342772117 826196498 494768436 724526557 762219337 773586919 863375853 983168681 442616337 632060671 493325141 651373902 55092672 247402771 324258324 901722741 862323741 905193935 405885014 820056598 818230479 928340047 39477856 697902173 461247628 815947835 898005018 999339719 881130896 962602985 128289502 532195180 860198941 958635617 439795199 662229220 849014977 882393438 881562860 889384920 487356248 814680364 237106590 239555511 85366342 856163105 493729065 546614365 798235297 911926714 328957265 997093020 85822768 880907868 674513039 970001255 979807585 990368573 670511104 926131196 964218361 970943645 749294344 937240653 153460799 510354619 35800027 779249558 346565148 849768213 351990725 367877910 831579071 904314898 588599826 714244412 269963506 683864408 983130077 987891252 739061237 755355435 326022022 967856506 338119312 699465385 539800572 693854621 156120664 982581455 348633124 659541998 806015017 818422268 800861125 820351449 986123025 993183170 963842945 985268434 373804566 955147662 49682954 641873450 267746105 376657501 634607850 843424042 425113230 792571034 77290648 797635886 69187065 136558422 712024386 765139974 836464748 985641214 605213446 975132705 265769737 668492975 466488528 487019621 220868422 770992074 150276269 980261636 847555250 872187073 896564255 905577605 520090503 683856548 913173261 919851174 94854227 896448459 494078461 879688983 445813377 455834041 519379901 905642237 881351730 962012607 733804959 901784746 521278236 643855618 721940439 942242622 929507823 958782342 806317448 857431170 169905359 816710259 802564819 869279303 235469255 384883355 204257124 830727154 372637809 784866767 177560962 919023753 636716189 689082912 402249214 902923066 482328570 756312971 203524466 853639117 851393541 964600776 126924741 128327234 223978786 283317802 480671962 489717994 130183892 304038617 756828358 842290088 171307202 924775302 156801979 442619194 312461007 877295103 871668693 901086014 971362543 987354328 966059512 977855653 220722740 426687516 787898346 895997423 423338855 868179169 812197124 930643239 922911374 942614223 828856397 871757345 227166282 840441580 923868183 933152032 921086103 953646852 223297175 717363824 104059090 150665486 609638327 758445118 220624628 419092933 911944671 968159699 728618612 817619683 310088702 416885924 857282723 861014239 331062279 869988829 380452021 867092923 632299047 643405776 489885886 860920146 593288860 928960369 250343381 681168402 179747304 841530025 244137209 749614375 915810439 972793635 484096259 725220899 327089587 969748871 81489376 952083875 877258604 938226531 596044578 817670978 81275413 734011721 257649224 489529181 773327578 966439543 274179411 291368741 14366394 829103638 323029527 387496452 557061459 974079504 139610544 263966281 779670505 782659256 964881860 972566948 873871212 987356147 447673662 949266207 105652903 524854741 43292532 407264310 236779751 970028579 23852989 675038923 492550857 820832437 603141430 991474549 478476111 874179763 180986516 541313368 902429866 918854779 20372622 792070708 178948991 860446822 695296337 783483110 288683492 773796282 614714612 879818791 434615874 751532266 647483171 752700785 894475187 908555724 343301418 366312954 944769029 985918530 297668644 541504721 701649112 876575426 470731161 790681511 452524042 809044254 893582263 914738432 660051972 879453695 28445544 563311686 826683383 836408895 128905834 742406338 635620179 735426254 740142183 846047544 635251659 817354577 674188505 732116191 763657907 988081861 756653485 787996414 416150710 474358047 956243943 965103229 768587321 969277537 575078498 925979269 151976660 711100444 181133054 863986557 989324317 995863117 166319079 327080050 580471560 958025098 191590869 834519600 212518665 936860091 889366944 926651868 674808403 700238987 990934093 991497359 957268753 990714203 873720963 915301921 900265641 906186873 916790188 926252005 888958526 990000889 424446083 488575005 540637130 560428275 601817187 839156448 150594159 260583496 144916618 672893542 637188399 825564473 939226633 980263471 85274053 541040057 931916936 935246397 627668872 799948195 185477781 900290965 652139590 733016900 697733349 860074042 255080563 474753868 162606964 968238903 993842355 994971645 63487900 448965451 674179869 773218204 583220382 731035093 110876064 473466812 126242463 551061782 47145559 586399020 144568239 970055753 110841699 764946457 237399544 402235047 978588470 990721680 178248632 372040928 501080676 911179563 43942891 76482006 846139917 944424418 815552886 945937689 140261313 598578885 762201188 838146616 88070200 92417632 74060160 745262058 425181598 979800644 785857626 845439284 974337951 995732665 264417219 977890634 579045752 787342124 546504998 876832429 371543214 809151556 44393948 555572063 121174791 880651596 11006965 505015585 36001542 62475864 585305481 952282286 57050395 641597946 869237151 884671745 341624175 971723145 654060876 983611116 998939540 999009387 685303217 903071882 140440490 686624447 993289449 993431796 921284599 958024924 829819009 914091729 224439087 569596763 87185775 802278648 812129852 883426319 975030688 976107244 902628068 948221341 643255305 990244147 198554199 699546039 785526271 888499075 495836897 866216785 476901576 835659250 336990608 805326550 131136349 305962592 871625683 953623123 446979184 528690755 753966975 938128476 837021093 892188089 520572013 561182171 324685757 879778869 290977851 364175012 102014525 671497803 368428918 399373731 425139259 708824357 688079089 763619506 512209391 688958671 974078536 994746646 194137592 217792298 331296948 369293288 893746658 950736575 811834538 825447823 741082718 822786836 365895026 545187314 340267328 424540921 216667108 244714835 483067805 776430828 247095078 793084195 789213546 951343910 653544438 681433344 794893264 993208271 23565338 577469139 70694991 842024112 695526589 917217676 452465049 922898271 704014789 979074762 278695718 355095774 464391274 504861294 852407108 988006468 761244293 922319605 871983009 891988223 78177721 164508961 735443720 987865114 831537671 856715361 645812173 957726607 105792689 751364606 993322858 997848655 606226333 775950155 866688710 948738025 848184906 943854848 290356561 386212136 274678842 958349940 156029284 939246867 170953955 447192789 733190836 793549498 401412717 612773279 449744166 582322469 790468673 999976360 97407447 880031947 876172907 891350842 730366390 959429960 832640782 888372931 744056827 990348241 303806865 544366825 270949377 905247869 934560881 946787379 991716863 998619251 275324361 513571168 318976321 942058869 650796143 926600359 694746073 944210512 778784876 891488179 399308325 925023767 742412271 930906407 184883786 550115791 477971735 850917020 780546443 835220294 673266356 794144792 338195684 858791539 313874904 687619953 92707105 396463938 398770669 892951062 948724787 977601374 928280288 959533496 165845639 838337419 758474139 962683470 998437017 999934584 947133357 953928442 753934659 949024126 838521425 880127675 147112048 636674910 888111686 922215122 376238701 745648792 156851137 299309157 352282829 568646626 402963726 976274474 485043274 541014127 288334445 831907980 814912454 970944885 677040005 819258392 992804692 995920684 916261631 951784969 340941301 706437366 61265131 439978112 624327301 791333538 305736378 856552314 534523203 617662205 770342310 770646760 113243321 787210419 192942548 226822798 608252669 730950824 87366919 519864106 85960969 180036808 831168217 957695336 678999259 931531649 752905445 892356272 504118490 963867768 423811914 762787437 515353095 827549364 620677191 874859959 741481222 810589123 968611732 986363797 895269727 952443867 925112976 940962543 873823510 913549964 74528744 958006756 770890773 987623750 539238532 995516573 192728924 800599317 824717665 906719168 675786495 960675600 707569750 841534387 864505347 985698319 775605248 899399026 496953670 504755789 137324303 717459598 126278217 452400236 155323529 200824594 373019743 947949833 958645985 985635709 860078200 869945030 378748936 930428749 928172608 987565807 161692094 169130953 96209301 289253380 615039446 878634615 133153697 565788731 616519663 740072970 981583702 992592006 947155231 993176524 613152023 680115523 941658039 955210455 452132034 784240666 628091390 905643560 90334262 521566936 667273934 862518163 101262654 371999725 367198027 680960474 90284185 689422675 637631536 927319279 899763107 989097250 10231953 779164512 356737614 590322246 550492228 801700546 908716946 975515516 726951367 976809953 612493634 880402769 843797257 958945832 672962149 914693286 405415684 911790532 540857947 567737991 118754785 614944012 137384772 570476368 187416389 988196596 142365333 988010746 790497736 923141325 371954024 385483731 898058541 917397668 66115724 591147331 442843434 686011814 979896556 999164796 356212152 632338602 429139140 966683997 148354870 367765465 13106223 823647022 756152713 775061550 833509612 834972838 315886655 539405461 810372247 853315737 944487453 988776237 760440345 928689876 466734885 584975724 450367952 519349628 497427356 766097799 680217680 881569804 977149836 999107863 660701831 713802456 868573163 955352852 559539023 736461028 541832153 883271765 415175582 685082732 823021801 862679679 214590731 933811389 510037351 701328469 451329582 596436907 952385927 996049152 384267045 510236636 245960887 384721250 708383503 814928477 73147644 963766090 772258854 878903300 141819010 403907491 432897977 654915960 768999661 935565779 255321522 453491850 635861344 863090773 713714593 807295464 590307793 907365801 109468790 119033876 123440461 558936243 47265759 702373435 991860856 993724646 472464109 795323886 733242598 959863344 954895853 965231689 409189659 843086685 41491507 219707541 837481177 889863145 748496099 926681088 127871577 646496754 578496674 775537520 265178381 594818602 656822144 986245734 419230002 829417817 544390438 832651834 285111481 497732229 391981318 533840254 528198019 652469268 692667419 985822506 217499450 755576670 885944200 917107822 700787631 986222114 126778766 621540394 159796559 723346129 178525703 259064032 395314399 456782615 350871489 588252807 655543003 817772795 246492727 447318214 86649889 957776408 952521538 966328185 13641202 229467646 311416261 344870347 368786472 831086768 184295649 457853224 67433524 244210227 350186672 753654297 544827139 653897135 13403774 387651455 740317278 990661804 850459968 910129679 840137647 958872225 167577381 690233233 779005959 926279220 693289680 880259438 536003773 578270630 367107746 687495202 659269789 817412576 429569930 436939152 822448680 988743176 731734224 927327888 535146888 887893045 881458324 969787705 433436250 482133997 651046400 774320282 253220471 385705404 52933836 948837679 980824339 997594491 692550409 789872446 824147097 970072098 129945483 792275585 907947298 995929201 712684830 753420645 999052724 999293816 126771311 970916987 256892150 669812357 246787738 492967377 205944555 543459303 578531980 657402075 666408495 868885926 512402981 652109829 451673548 938555593 245060065 676307989 883960996 894844872 863669917 933338569 554418749 567594296 166248667 976169112 895076330 907760036 137175779 521515498 556828643 774546696 594640347 844405289 838857644 866210707 460886939 619198141 47800399 789920056 523095908 821849315 419014487 779118239 583820932 602455690 98715273 665666384 208879661 618469039 810112832 993513763 985796447 994808601 151434984 187449217 513597351 908947774 380878966 533063103 213834275 796282859 188892219 893531138 779734204 895447053 86002673 944876472 773007670 893188492 7430960 15721536 307376672 873007658 449426551 930125932 905624010 990305464 588570922 890269107 516311664 902732296 144425958 820233979 931116609 995028137 398307301 516945573 856268466 962818030 524894938 880097736 432344307 742949427 634809115 948922096 366316813 825499067 504639018 785060284 75644232 460726149 989424114 999470363 732324830 982038057 268611942 307839001 425101741 996000178 793224599 900629827 723759495 952516610 750307815 846327863 320817486 351382158 674851861 940259087 619707264 974197748 962904399 996600554 199446484 841726302 495448607 525641809 871720194 884793802 341219982 942593839 421678480 848866610 579293214 804245347 386352881 751349807 274033269 929594091 178722860 405007803 659158318 883488870 995719228 999059995 833008638 873401231 390979130 584078700 248267048 991310534 335125761 845726685 351507205 723029146 273938318 623064955 124072248 733320274 346428199 474091867 24947280 782618964 943429826 945117338 875009743 941522442 619074478 779653731 788378664 921616534 266547735 828162097 381600878 709589213 944756787 951384479 390617912 620848246 514842891 556877296 308977468 810210811 297791442 462183248 169619334 262598597 440094835 833189444 61550221 827250872 259611906 670277799 227892695 527802610 229543190 513287061 186348393 577875731 680477090 889004000 176273947 236314787 517216995 538066773 488363102 934985362 536360950 823977022 217462353 773582666 70015663 884024366 65163317 65187781 800870152 910552839 994011784 999916363 557023740 768391074 197501477 458857582 658056688 788899329 719658469 883807094 224695866 780604591 562687107 879641162 760916687 909534024 409301633 549289105 417059075 896057829 71708240 687652435 302129626 317566710 541892031 787370966 823631892 885015301 285734772 635334207 553039776 915052969 12832343 602681594 568291822 772176736 945849880 954100381 178160955 473616613 828324101 872266956 431721166 759987633 439540875 873742647 24194887 694214067 49542596 478224927 904079969 979865956 253565409 693502481 320240256 387750660 266481667 273785775 492277960 888901925 284688014 509311644 294577805 548783990 900252528 995225933 898908830 985282204 253310306 687763052 81574613 724719921 85026149 955567576 939541680 948396781 53072752 333087014 551489523 666375982 635282134 681200572 713878677 824682879 397955110 595547691 80270742 578996884 724634335 867159509 482985599 616512060 773867545 844891212 274688112 406755494 347539487 475674138 437728947 919851741 211961247 222266961 843461835 990333956 112047380 442648474 343244484 911994010 690710732 929742912 446342160 970467754 200984206 318260783 957923506 979930475 551948011 673570137 863142351 866994042 582962897 685149731 143809414 146489389 631592530 677407470 862834690 934450116 879942107 997380905 404127890 795163145 848372167 999500813 865009453 870565765 490734489 911366315 369732360 828617874 193891709 646830060 753231524 920349297 888853744 909056275 129959683 838913797 812827752 820997781 976920517 999559063 253133984 896309019 765715909 994028973 50896754 950231030 620364263 764587243 682943219 844726038 551338007 967452262 608624818 898418521 522845070 741836744 975343959 996264445 925923168 977622103 546803714 941131609 685126536 688260975 580098393 747311489 71141539 307482699 678538237 769944144 47323957 929261214 316597700 936062157 168251997 616018748 557657388 693311183 425721549 608362381 720562789 959570811 352833666 511798126 255253831 693841418 900768271 968739059 648935295 990462982 764525573 922595722 175752918 773311860 464921912 824011455 909424301 922290307 590828444 635371654 707238632 785265740 209638043 585527830 122718857 786872883 436704133 927161835 410531366 430789794 322816647 326930022 79402176 429507851 656800891 664653906 767172562 950824625 41846287 314448910 177964278 330565515 53683431 980225551 669084912 993459816 939788866 999334840 265294012 979198995 431092283 996145106 785791064 988884403 629733169 805848636 178390479 780790563 929143940 944368814 275631821 838374021 645314731 998635045 277738941 843536819 451205697 561998181 630316442 825972062 617780802 975179130 627856493 658625010 866977605 903670593 455457529 605439942 356330191 855588052 587589827 928319325 951145899 967926823 974013565 978365849 933803783 980782827 654445881 783745186 884896834 944922812 90574291 313070181 544268358 832555723 512498531 821006825 305566464 495733086 193683888 488776059 207022882 304631568 245036956 490347362 769996619 984725496 963658048 994433383 453092416 857444628 628855348 691902872 263051007 449923374 329443586 461182397 828319494 930201831 296382710 821060462 306173388 510618875 481986206 610077749 850991303 861502889 773881925 950506146 362120209 970257618 391133691 933284637 931017770 942277212 122890214 780642893 392042540 649832305 115546346 145031482 720399263 896936984 240406018 908944064 663820370 966933103 863856211 929996273 98147914 509500639 72094262 587847273 91944046 310787933 62615806 983119510 323854286 731541225 454058989 762238570 723974624 950043299 263787215 578859751 312292271 917934060 299408458 824080208 154211173 277501191 993279357 997624183 695065409 810646428 23628140 677572055 413893541 688826172 641552518 822886426 516150300 850523592 510487932 563167295 237587868 998883441 39532360 930041399 310758709 336394818 386354931 447510500 67769219 492258118 81134865 119301990 296214341 885755346 610790020 640579029 273440102 982935032 522289429 641820666 595643000 646790492 524602224 880284168 181691362 534933881 10799063 944793014 676774841 938375007 486368082 890732662 786336637 949394925 137200595 638397073 975804440 992737423 409170076 778378718 919272042 938068557 926030901 947759629 787667571 918122278 358211389 857481551 45580800 586792951 297015988 956864819 456671436 850079910 873511835 974597143 795057724 999831262 392939258 654344363 367119845 673371458 3731798 821231944 122403409 986332762 459317926 658025580 880645398 928889772 139208103 672710466 614050698 700443089 750699058 841165275 854126692 985249306 735929541 863405701 292076513 834594750 254933590 584347490 456442431 732076101 737069923 795290457 130379200 699528031 510146243 853967827 339275132 430300911 846086753 870648068 325605407 703994092 124903510 635626732 531732989 597043770 161368013 762258851 505299325 777325355 391721515 690623172 150915768 368340800 436924305 732530561 895934654 928685070 494009076 752075137 678821845 901365205 726840873 976635631 536940197 956531050 459472209 856720460 632242886 643796709 870092723 961175597 678022329 876550541 35857814 814982376 18639781 624678098 626511994 904623066 785576869 850952388 694633817 804547056 971673756 972397383 268392578 642242069 885672053 946757011 289410415 509214929 361037235 780568662 893992506 982530620 818179206 893996603 987472469 996381635 75146098 503670603 273565991 793542933 840455673 913520332 135927994 286745997 267957471 289142107 470679271 671869900 561588635 609346555 527387236 860841053 470517315 534971962 468533481 709985970 439581597 940105619 873936150 977772476 447203774 883949648 154773524 569266960 932188454 971503904 807779281 853283217 86120876 729895840 65658133 933108347 932398276 962586916 599265987 701875472 386477438 774670869 397331089 802121082 773007393 933196097 725495332 808046656 660403461 951281050 33526595 780095249 598254035 987857320 49113205 673784362 966940838 995571903 707662110 884705519 750187066 789025355 902650696 917000431 175831377 984012670 564847536 819161832 141489559 651359794 363475172 619579119 584751279 946278698 938409548 958977978 339073426 499380794 413934842 447212931 927354077 936382912 151785362 446337707 343734109 850958290 254706778 467986087 822170687 996250890 832553108 906553143 50043126 722130575 759949583 912092638 792237619 814564995 469654942 748954233 391867526 568800070 435514200 482728513 972984981 997134276 934267874 960886913 999962541 999994169 542102475 631142605 571126920 973810133 324921522 944022760 436017641 537452581 60435740 782636419 755450506 893103464 221917620 779645716 823174431 989190869 119778358 598008312 731530349 786726744 142174566 268735934 237670900 385578370 651873864 697095886 73196050 336806057 783367370 977509520 578760503 731790460 583603848 688334140 720001220 901808210 53277852 340950127 565490831 829117670 315040588 592037109 418161391 771475943 860429818 962121215 37839002 586644500 1834929 960176107 245819955 994202448 40373330 350697337 493789382 991307864 917736392 933421796 982734843 998424758 805786714 899344188 298863258 392640564 183194257 285997084 984453108 999707691 648666952 781397133 638176614 701397137 206073212 997755453 243343019 955506864 391105802 781554049 838464210 962438486 350474672 510587697 206585666 623950721 370534642 688898403 100297863 636518413 985345407 997397876 994338161 998486349 493904403 982119321 407337940 960209726 329197802 919296784 922167193 958443326 900341272 959908934 488556644 915151330 608148623 845348195 615147013 647052756 872852738 877366248 126329259 261113877 5576024 295585802 261439732 286592950 353589047 795804833 808024612 915855217 284336612 431514570 187819333 705485369 575061205 752402276 585940809 836678473 841806780 876276020 77930661 220258528 34504229 980970013 193352602 761234797 876250692 909856860 808980611 923189343 714137075 824616438 918745581 982898603 825833792 947937864 981717863 991191147 552998156 720313493 806661231 880252167 519087383 919856662 756443686 990814956 810956040 988289649 277413410 954628760 226749010 729734894 559019463 742279126 787209941 908932771 58983932 991089618 869585022 957489501 863627718 872534576 479690392 626566784 628463535 720539111 471769647 917585681 167312194 881755454 764923250 923595344 715918414 907141253 481204175 988580862 971187724 989992378 353945711 687580388 117970568 203950018 97232981 137571969 939424381 985379590 56675382 691807942 257099813 527685784 80430325 817670186 396830630 878668231 439308488 506463889 430460779 670265435 116213747 940490303 111138441 230076645 424949135 931289883 482864590 764910365 186879953 212427631 932648290 994236383 543860003 860006131 593898534 731541168 824281481 968611178 799389680 851668733 222330767 808195657 798429500 886136350 614990116 664913595 909425285 957557375 121693471 659987615 491134137 771056729 345405208 381000078 75787571 260669219 798911758 821220386 367604740 848463385 600322188 960878706 686663257 819036756 681110516 754983785 284191557 467561224 216185208 265021949 82345609 974324794 255263806 326337225 283895455 942079519 838866820 885504032 42343926 665534295 76123374 749638061 14209685 800138994 788892126 973043270 14158638 211802389 89428368 906615462 693249976 797895869 565650770 991799330 447727434 963601664 421921822 826748772 477406036 799084070 667545909 923569149 55224008 278867625 944914114 978448421 918032179 969908599 889066399 955464240 872308020 877188372 703295550 785552531 677336143 951578275 332140132 915130748 983607340 996131794 40317774 873155892 477635804 953313085 924108489 989776640 618977501 916541279 119271248 509039810 494155915 639255044 285927307 520968325 642202613 940802467 767891369 912525018 563938795 624914724 22567913 206871903 246586287 973158592 693193133 835104184 830992077 933504236 320765128 480659162 406798377 795327910 521971165 629548455 665208449 956650437 235338207 401480685 401934772 495424409 297168777 337678719 759653430 923579387 76811831 546245111 876983795 914596219 989658499 999598867 390322241 892441678 709753420 899586563 774589548 857100369 384070245 450386005 595963487 661624074 748699125 809063910 932042086 967073689 112635239 786977742 696249305 928862220 356090029 990607134 68332342 945014009 289565391 547910946 198303372 283836311 782623674 890543950 299500956 754527821 698621686 756750370 646873129 750556358 415858914 679217600 869683126 937068057 246323639 849623836 129214911 870699522 485907115 853944018 74192411 882046255 754507141 898281025 655744227 679428613 705727349 881538382 740645726 964590391 278847225 436940329 60245956 553321021 904685185 924539388 912250129 946743584 908757973 984332098 51178388 996459316 562810808 678866530 589574654 661953325 754153834 940574691 150342228 958634114 573865569 747766445 672121247 915958733 525008291 948994096 465320014 570140033 200247419 264245975 307347332 410326676 439660322 613142711 91788377 434305280 755931271 910329471 163117242 439309228 668393760 741587709 822529040 881483626 929732859 961520290 929741599 993968582 437073240 649611147 73325904 950057418 857815768 977870846 94598986 380222710 96608881 361632719 749876090 849524529 506671359 637434787 712027244 746381288 78857368 558411407 216567867 841160521 382165005 686626181 932282176 972238784 332131372 345901306 209357949 301682892 87302391 481519958 843956700 909584478 447693906 585338793 85199708 796327103 567495772 671337701 308759513 496201442 79530087 734472909 342852969 604465027 245739329 743548980 57269421 607175592 299161915 644683929 901635727 913311009 136417022 430080906 462385661 582651412 946342097 995352993 102613976 152755791 743959412 910878006 865143589 937873711 419290855 823764129 972226964 978638035 563503154 573466428 22763805 589102033 91734479 794156832 637650298 950839589 609736935 830447650 166388197 295307099 240268577 614374109 259767861 755950660 912611082 971558091 68432239 986821850 764293349 814737391 902666933 941777218 124760356 489136499 734073185 904977198 803017394 931231350 238154831 401848606 86824882 760261570 173029351 813332349 418498004 641923998 276383597 917701819 738700543 742631750 158060545 645116758 191207590 712937026 553397076 853877229 305802060 865946966 134771613 278001257 374253387 995174018 379859134 429689220 595041373 795770776 706424839 969659610 466632465 641541468 10815243 174432996 613088768 704677814 912506661 986487974 628093660 635616112 495406223 576334994 719709837 761645255 310105834 853906844 436093414 833509363 372124171 934361140 170557579 345617744 66312671 521111254 835811443 912235535 38701295 700496338 496825216 885650902 736677691 936253234 777725177 811065912 43924979 800096646 763382016 966032205 964189236 996043775 452838067 814721168 367805041 831381365 150109479 860915912 541229064 761955589 2592001 820262411 844867195 869205985 285223085 704615817 52020864 224288006 236876881 376938931 163054362 451453040 228195065 386588362 130201675 964235710 225832765 682517372 61759374 860174559 71274161 855027530 366774807 422671340 100696473 984322778 962262814 986506844 866475807 935869842 617447657 975568691 745151442 985865180 912910533 920726647 301436792 402358512 164859026 849079159 56087001 356462442 159525206 430960418 548083275 872438083 87949240 579457080 133438695 790312629 94363902 507326427 132938348 214858870 755570951 820846143 656406918 773746636 947571416 982130431 368423086 959583002 712242330 819144648 394002912 978805251 987100326 993242956 711260426 866980694 652077373 657298787 203879526 375181562 32166211 596588915 393305108 859869211 672130200 943996648 260398670 971688769 626044796 973616919 302178003 575988708 692811481 811495391 408893226 773020884 685620894 914021121 325000343 445034285 239341139 935725563 238045078 397353914 45179868 996260979 34191331 144608821 222648705 836993955 189469268 951950396 376027353 998430342 570260551 628550817 482010576 497376985 651598909 931410784 4719855 467447001 706726889 905052681 520545843 541698720 927832113 937941032 1476779 548580112 506112486 610458703 93111868 545834458 391056332 456478932 666367053 692184350 76871486 576850190 871382995 903683375 413362494 453788937 957138428 979828355 440680519 810923955 327118238 436164153 427947794 608150427 41533670 688717659 110871114 783712386 337298948 527040441 759902336 998832607 775649923 972038930 149495012 186840817 535786330 541312586 20479056 112178307 944512276 982997036 641397796 694834369 568319585 660309999 558345609 824557959 398386000 832386589 304703564 577486627 703987256 735385930 233245572 369914099 578739356 777954969 124591343 320119374 905091970 933491423 838675313 911788531 412880749 762857178 189566339 513074515 430449183 766335654 963483745 988098515 830476721 982259624 745782637 846254977 691444370 906566288 956104783 994887408 765984625 894442938 674296925 805334329 813875919 916482096 249905899 810269778 839891861 882632172 632882089 765254943 926047611 998795105 801035317 857429710 456887258 842506001 354918399 971757938 152927948 962019027 334107022 340106359 276667580 360570104 440030167 503694783 425886801 686097322 524808955 940753160 253423772 395517187 283930406 662058963 614871405 740305066 49940482 184845190 782597128 853843580 643464866 909962779 366193587 901713405 393772956 886273429 510322536 899905109 468274597 591794342 861273552 978335643 906423704 910016126 109408352 387001444 849527955 889457472 398914434 576818409 303870484 944071429 586298151 905856499 869920437 993268874 900335783 996699395 376239922 832735558 71130402 119932896 960732348 994059023 670154685 727083517 565006430 795578722 824528022 882819264 322486914 513909665 690583936 805637428 940940937 983812761 211008261 797694714 994218645 995080048 972848592 995260855 499810447 885819531 982586978 988954917 427654292 875387752 60283440 159088045 571964437 837733462 213844253 359903201 357005722 556553099 680820311 768336359 49736216 464665834 647991721 856455194 257166448 614743496 460459141 490363224 218550548 796466612 982506489 991816270 892419558 983858602 818032409 879770151 954603201 998337507 126928174 696717565 720595070 995167366 202782478 738946739 413418501 552317341 496168723 971326805 349446885 501976925 481915603 941685993 672664693 991688995 886849065 907286197 895322982 952618831 652560198 944124716 332768 167146734 327356017 854101749 91835920 697220708 185775022 719154794 262876070 701406335 27749170 168331115 335616376 900585587 800178184 882855508 682999422 923275580 804545405 918492391 793891709 980388063 605617387 979453576 828169898 945613674 844969977 859756932 36994975 442750887 247501032 373167212 478590629 890043071 642871123 753827945 209565187 300797399 835825485 885179205 509119267 956981647 575600145 888317435 584835607 781637785 330032674 827969490 924804783 936872592 977141819 997645867 619304127 652147702 462685093 779508462 178118712 574702331 460933168 489842605 79891930 894643221 680362638 853130559 616942463 627440247 970481781 984279173 650385086 967125474 633012959 982222674 888983600 908137310 822118570 883149226 2602447 790071711 1064070 22970464 341901835 520988585 268791571 691951708 558499086 630767932 891441056 893218776 451729134 496458111 802000440 864247560 47878296 258311699 869712317 914706873 580509902 884023117 287180312 753935448 29360169 172857294 999637860 999649664 293858468 682795966 549669399 983938503 385238518 888661861 301742865 704307960 635321078 968193815 9015800 687533691 46375547 976780093 835479817 981724644 711940119 718728981 369325371 787926865 410301979 963427395 240593128 546274047 357094173 960688970 198506031 547400778 456361887 549324959 636579253 861518397 336801457 990081661 188299586 525310920 903821272 926387443 469809524 920632842 485307467 646622694 127958457 165697934 372941803 660096914 640743316 977421616 244738720 385141801 466303599 528318832 161994891 525901497 536554576 858096900 145919487 490197766 655359323 749060655 868055183 941473379 52693957 348318438 641063676 778118807 652609023 906141822 450126124 652390488 691928070 730906162 685654064 747061972 190488096 647036398 875989616 978592192 46836510 419719145 737985009 829364768 47227993 87894305 815083528 940440440 106245619 211544236 71102226 299393857 225989615 871460854 773975567 803568141 1473464 251145114 397992434 701632633 882268480 996869119 586699805 879790393 310566797 851033650 79791443 283872081 715496562 891490156 281529793 357172102 551629320 985118418 471616054 616423539 492970926 972955160 783056370 982431632 970164578 996396144 206111104 588252286 124803716 189134608 336667427 409323283 806404147 903288519 668354181 973389851 262388885 740501453 547151778 646495163 63097069 284611552 1623339 519261673 205056215 560508377 450965952 590942936 274071060 854887998 260967305 756039187 373914289 421191648 611189515 641601130 751270476 990662703 176047240 375126722 140312090 480125158 852267768 959775842 429900162 847433413 633743101 976724257 177840913 793113232 393803338 903329200 201896927 862582076 811156805 923794239 205832238 847561107 672338523 783090464 808672192 930600329 882290716 985078816 9021509 615653521 587741999 995679342 204456411 737838142 552991849 598104542 897105079 974559577 560688058 573448666 568992964 938700965 933332165 945486582 451476494 691648119 593805829 992929448 667358787 967735335 912771283 959928308 322950304 489230816 17722916 366193920 60856871 282734284 329858421 710846378 69188926 873878149 353261376 735537240 633017397 776582253 885148247 983293421 220712708 726226185 815353430 862388717 847241383 895331096 193995789 982817716 435669966 834100681 735147620 762582181 490616184 620262626 839984168 859136249 439848386 648090607 555496692 722877771 235486621 530013653 800143914 850987152 7473776 547619727 798577791 833367803 313410962 867299753 644892532 896495586 960125603 987037945 674861269 718060142 929038415 960479314 76724088 130908924 126167850 202255435 963858430 981997240 185653303 252275371 686864972 729574660 288939108 952690863 916675711 984417686 365754468 885365732 371713870 848772440 34688937 381491814 181597432 294794996 398169964 863436722 54901064 626455432 834222387 894399463 500979882 528820923 118972963 308933401 54833240 532809415 325689507 865891306 847701981 872275454 514908072 518512951 638415510 855292212 890238841 908127868 667281760 893777176 381840007 925502796 693811402 801828997 326950832 692042315 657272475 984641354 856874290 942185346 400946076 612982072 477433129 581495447 563583965 826131625 956016649 986432083 14466841 423308439 25863237 457708774 193367678 694486085 994790959 998315501 33659010 624818574 320686311 879969055 563741570 823506807 245084597 958573464 312365224 998320544 363987684 529006484 557344189 574451804 187358551 373992467 620960862 734933498 503191731 890314931 565878326 658905619 809322964 946766020 628598999 872985295 980448656 981696105 666419991 787674165 727631043 747656589 544344326 883886942 974063954 976497967 526397745 568037204 759713712 780688357 375818207 963727978 105018641 153348571 998944310 999792773 489082594 942767640 521017546 779966877 345142400 804039796 847123336 873648218 982702638 994023884 865441986 975121406 77649561 195769356 629076647 781019928 764554885 958387188 522125422 842368177 830461284 884700015 713720752 721878392 910218313 996334614 379375783 426186273 539578901 646312466 648440831 891216027 569635812 846405367 117892449 390512138 103430339 533507255 353593215 790551785 737249890 786225480 65612859 568075604 483125485 779038269 710127347 841067845 974669813 987280567 286844085 645452637 188141548 551325556 5398909 273149361 903903903 966579429 238287151 731993018 564597559 821686838 815068244 953106014 697541179 820074278 684186640 761950672 472106973 596845834 505284408 975657058 232681955 510275473 758470775 973074333 672490878 711227964 371148245 429699494 248046459 567934860 49440664 291090684 660175326 767705146 415166107 979955821 134851211 864741221 874241753 932767630 876946540 920099798 279510891 343467490 326412329 977951695 202199685 497204243 448657499 911685211 771781132 968791376 470456580 573312848 81349082 757788720 721327035 872051815 141319414 344402385 547121464 730541347 739885615 998885544 939597961 953616165 321952212 703697828 224863709 493406754 121817689 397683866 949590584 982960591 912640052 958153363 918089954 933776385 307185074 530361451 587488883 812927012 366754087 903262876 240043709 848845602 65238173 481401536 254357153 430626423 749762502 961020824 640186023 939993263 187200035 358919932 547611281 583640029 927254115 939600248 678385828 929886774 110025629 724544809 125729983 321120123 3969663 849742599 91561133 749110259 700155172 855455476 163966731 385829299 487752833 860128617 466892176 788591557 655157351 977775097 63394671 71919419 79592992 859152599 229558179 630561368 410417529 928649917 847099833 883251647 139924275 300882900 788403357 899322901 845220056 996866272 327514044 332811459 175304771 593881056 805538622 972887743 396181632 994155615 606479919 893714373 141483073 248983235 468054256 527490143 804593833 953915707 306634712 403697832 555997044 587277830 224110236 493287220 588166055 913458565 755534866 796915445 117395585 378922695 474080313 916538550 448917506 453620266 440112701 645135825 605450552 889684073 201590651 765067900 270566764 652181509 608689093 770390371 590030860 725566914 607442069 775226554 277915261 712453555 577733156 853219317 605948760 630387062 953682112 956287133 516974403 700675616 325933774 494790035 187460914 516064179 292183671 606063497 576842947 699219763 171732828 448029350 915992484 978576255 930672174 932496733 343934353 556668205 867955806 881322097 124893202 290923319 133406066 249850460 579503294 712710644 516592105 941204712 222131167 229959458 196974609 524606591 219380808 233709851 906742722 997971449 82170375 407029821 685212808 877775605 756098027 802517373 720882434 722598264 657185461 734662008 969734628 990527218 844551835 909820565 338587305 414524124 717639327 794146470 258903692 826758260 135094228 818024633 403903464 554509919 380645601 492288552 43593466 606943693 716017815 904969098 595632279 944936289 293816137 915284589 329149693 479297969 480333969 560224951 789476778 990580252 90011113 522640332 538728589 766665551 548244908 707774483 226069445 719469939 937070945 952118687 173531707 949490938 104098272 955430466 922413936 975383789 59167221 83330563 366996156 531777280 83262526 438038958 394877877 647159085 179610038 638363877 126328923 863432928 208986234 355903027 478829745 965030587 626645429 888228752 914475361 914718140 333846421 709391710 299204135 516350396 915588698 948427682 708470388 743690875 499121515 738399965 80238956 449463116 857605742 910495172 774415242 856698847 409588357 832987413 816880722 915216088 61944489 78974878 262093395 471513100 657321724 914828270 621119907 948850779 121044345 155696830 568367334 814950008 979050394 989897716 469139939 841516524 550252703 965797050 164418103 252337264 227528870 660488262 699116003 861806507 775956126 796540385 229714466 236322811 40108278 650285347 529442461 985599733 806959262 874648327 170499723 845180303 884072960 983492096 476884028 967706739 579177347 851889573 649075398 918538174 193181513 390732847 163712059 231714053 464354147 749920640 321136579 630732382 150936232 954693178 337953325 929231395 915769482 972920315 463753837 654544579 627072565 730308660 737179875 867958314 822716624 857155787 709687908 990845565 992241191 995009008 958618376 964902659 416551174 473192108 317911792 439435384 633505793 649386109 551097151 667806926 815426686 902057791 341357554 649061273 254191406 868999298 364602645 488404067 526459638 886129646 217950214 982729539 399038919 987107187 467690194 919624830 566188306 615676638 126881539 935349821 776392227 994976661 158330412 361024610 714439988 734993624 784629557 795689412 585624637 931758171 573549361 593869189 12699823 216787675 481243936 660146568 68063525 179114049 127148224 987677858 358440671 424776843 720079987 941219678 448847392 880584176 271171324 715726655 659538583 965059262 815626703 922111791 411312400 615198181 420723446 808360020 289713160 935037208 898616418 916736635 566990782 717564264 679979631 867071934 435463557 772066847 904966123 998264430 281074006 473636261 694593635 826889096 171901621 637756650 415048694 467185747 440679307 670548326 314485356 323276730 740800734 878814660 253970807 791532967 85292121 972608881 853629989 957844325 812990359 979656996 831287733 835350879 647558915 726401609 91005846 866621307 278560547 972727617 94744474 588564451 112583106 536458681 505594429 996653122 808705835 910504220 276451787 446206114 317191245 611393810 788523962 975783692 188211910 336319885 39675617 811906872 538389297 704265825 182644527 261524411 169351064 181991171 396767413 417006338 822017193 871282297 89576282 243081464 210359093 518740121 511089770 576901779 210205759 887677702 892030456 927406354 80457978 830836434 996853567 997474276 71064945 877055299 416490544 749662497 916189714 971333385 514497352 727180651 383137318 496570251 312656353 833072966 225984677 606041350 879080569 979955744 79293659 442076436 378253127 585641994 305174594 956735428 237067044 597549722 129919433 485807871 202000597 792054588 668712298 690904333 290489221 335244018 844465087 947753421 593636041 599203443 693581308 848943163 462124062 921388889 388548180 403250025 545113433 838796124 126377986 217513793 672864716 992476015 643533865 847551315 411415687 532508872 77396675 795942471 67513911 570112871 295928711 352211491 581374585 947403900 774539 30611475 845471121 936312371 748960092 750773498 58757965 428586365 88915082 585277842 637222489 842033385 802118059 963225924 825859768 938338389 52659553 835411691 698629744 867219303 480925153 848954269 953213711 997544778 838019152 967547419 662841844 818833245 174314091 623172313 198940312 443561914 880876960 921187382 216288896 376630926 323389162 489823472 108535764 175473570 908701839 952240400 779097533 983950115 107938431 712771120 4951737 265431968 656536970 889755933 860568329 935972102 254386400 921704840 686710974 744876634 834588730 885829801 422843703 488185065 424817322 763127786 169173271 576522458 384478573 405810227 779092069 821904262 9864561 470757959 493456427 975489704 792978994 987776168 797530613 835715982 461122741 999872294 997802368 998532725 796699536 977378013 486853487 507090726 614161431 794455579 111963718 559067306 57364374 521469605 897705871 967883545 406126233 536788621 705606488 734759902 889937223 915949015 517275723 526550946 221779982 400469503 429255848 538536927 945434439 965073049 426395176 709351487 221396057 650160712 295539172 647630041 383192541 544892168 396722649 974733954 323410540 657322754 436865572 569223304 995552807 998808714 725519539 957685602 7958797 132450307 778619219 972992089 941186884 994205598 890203145 918680003 692368139 979327072 158869691 570244126 228998805 977865737 286279699 328632859 197185538 785831418 526062803 686473683 599118721 968414260 720876300 803608652 712381560 908513893 553308007 891571744 738220604 856393212 138925906 655959841 492446838 940710875 474164710 742011793 474821736 504480968 611683466 721970030 219470985 624477943 883076611 935224722 976746664 993285408 483562425 636096301 469588784 714946131 925714258 955622403 628452984 889678971 865340794 996841017 926727296 979173364 92620343 624968314 405726977 517018368 306591107 325695914 964554279 981518913 668317859 695985616 785452068 953505459 86483762 853324948 165701269 189609211 900618154 903462459 183939493 821946180 53577045 350030821 965920035 985296164 187684044 692965554 252300616 301068293 715281958 816859846 575695504 733562430 124761691 874420010 140121862 855825228 844888304 933793450 363307616 649097220 748704195 781016025 923984525 979327805 545588770 723784611 186881675 708827513 203684833 803243727 834264382 902677931 30562208 801730462 278381711 720108421 256353356 579058873 826446347 918300593 903219526 973920877 587163203 587762582 477013579 613886199 314244074 751893115 245388325 365926315 783342741 955695216 342940153 849949449 421049129 602739165 737115904 924522922 500341244 905084420 363052937 888359907 195621851 964076110 20272400 739175803 450290959 590774407 19093604 105202395 985555763 986855666 845380836 982859728 697464206 710195479 116959836 722672388 486235405 608154803 972304106 984719611 352378525 469743619 875826090 892986505 976148749 977615619 131182942 153328129 322667727 556300271 690490370 900658985 117472406 516377576 42701065 287464213 887759391 929476802 841835133 865426617 438082504 786306682 262086456 954964521 370660686 851774381 44528024 188101281 428684968 684743766 873639951 893410496 136222872 881590703 834965954 845778448 772672918 820749376 575982970 764619950 443866092 958729958 519472213 584107629 870147371 880182063 119107781 591250306 248177778 721571095 324051542 603798320 441323910 949050297 493144920 752743888 971725725 988796360 905491128 995219316 383397837 742933916 638026406 647092867 390159453 756120963 461012481 741564288 188878984 733005212 621567792 663526721 882631548 928044999 19161957 773008219 174147398 734013892 54781573 365094924 348444344 722127136 627528932 716039820 983945233 994405924 57270763 605334612 8796443 760306065 166823336 832161718 517310328 817828069 296554395 457985071 841627836 938889411 993894020 998679624 252659973 722239638 669472254 837019059 621882520 655544993 765143909 789301917 102423217 428659647 439539137 555692546 81545732 354509494 842756225 887927129 988094467 992530382 858992498 929657843 877862269 892260464 37901149 304951708 469650238 667792890 711400396 888195622 17217100 899656303 249782934 931912455 226221783 980913032 476638320 801380056 504175563 988291432 933414587 948461937 637895249 765451945 9045540 999724492 194781625 747117431 598607160 609091477 799493998 960174170 802602902 960919930 453728215 709728861 739892136 820887861 278609828 318410295 198901725 238090379 508693405 691537207 597450128 941782944 389900760 691538438 318180009 720868646 354287104 412401961 158409275 365642778 804888817 955333926 971658349 978777890 998627677 999934943 743088253 972004345 929662961 959121996 464266230 531493240 258708755 744112148 941759249 951837501 467388047 956651206 187455331 330924489 624684624 858751253 351714479 997712289 327023027 850427417 542591971 960665929 935299955 977321261 358048439 366279781 881264150 882734112 479384094 663827854 26818551 483229786 424250883 658078332 896506290 987355727 622168809 855865269 8044021 787847465 490024418 637114883 205037292 974312519 295098376 390695217 580563090 921511569 67103264 179875145 588032938 627228396 411081322 769134016 594685326 714954945 406173441 438419561 876502950 982068468 505723986 936218419 894053387 897146758 349867527 376290148 586669919 670657679 949948295 971544931 606496564 622745065 929630172 983513051 344071936 685986323 761378362 901706782 207008531 321529885 403919283 905323200 293821638 549322695 488306822 864530678 556615033 737315937 329365959 616691621 610413888 639466841 163589980 273654079 83824072 366383459 840835696 858324308 357672196 860399536 52771567 523561586 94249945 492423889 233894393 676890599 861301938 898793965 136189321 751431295 164767247 836520376 192794281 874148321 918035928 999373491 453131563 806288124 44242411 883447676 914651400 982739713 364712397 722384489 121389946 813278038 954525340 966248460 209730192 790650844 911503280 919701125 558630807 922713516 360286959 691056142 27966344 159732444 115482141 769648664 300491305 513521198 544524565 931458067 704460972 932338497 362004433 754196640 493610214 611301038 133565858 405247719 130602257 630347016 485454440 855562083 256399601 651318631 609905771 981509775 417764403 605187241 847829568 869574720 144691381 828209190 482725357 987866756 172123703 524146502 149477706 467071981 148617682 467122807 70494900 688776973 131091676 310932385 824481590 867178093 711462446 747645892 870779856 983828874 615044370 806478343 402770071 817609559 430067054 623271659 942503993 999111888 37452357 907910337 251437254 785546186 209267806 349719973 733551353 749842406 463854839 556999670 985823194 998069734 851062873 966587582 207806063 806928574 195611982 460631499 922639215 984657436 329551101 858787403 631389984 960805751 15846317 271662414 624000611 916670371 622399460 648804324 749038381 756608936 429212890 809457014 878368362 880803826 58160529 687716335 888177741 952342601 431375672 612327175 267646333 415105106 643047688 912028077 634729268 812402477 476506899 903294836 661504179 894189006 253564445 617541723 654161594 716886217 912207831 929689718 658360710 862165488 823127484 879378733 386224923 908071340 75266042 226544619 603962317 888338795 3012298 54898971 297265084 835584778 776175992 788962367 955080758 974785394 827290167 991601521 569930038 817476275 190339585 277746516 81555824 520950789 285739474 346163898 873055928 920640030 512859823 714115352 260833213 439036140 552968101 588831280 787256523 920895341 624006218 763391563 46967419 876059619 588782989 929881150 547370718 699942969 491890134 995180922 134314059 415587322 226471752 230765866 756339956 795264983 272084475 678136773 354802051 811518496 962570265 963864192 408058041 669566444 114782958 249472268 836354725 851824828 573936023 582685532 633194718 775298626 831269549 949200889 808850626 821291896 438119664 645246302 975811373 992790315 334040315 738772470 698114078 826954755 616894392 996815308 565108435 987968117 993536574 999509518 512866296 860415521 540315693 743020973 237127540 762191309 653129626 738309916 817852254 857042869 774958637 953137668 256286983 408864156 105762218 732450425 289002583 335728775 855754488 971685053 330582564 658795500 774248055 799614570 764470389 929183716 508459047 719030212 997055750 999711160 787956300 947295920 842801707 953264053 359569462 552960946 545786248 952430951 252425213 865029568 556712361 846451586 658656404 663024372 560224912 831135246 223274266 660347917 939914712 988021908 598436830 984329654 780045757 852952577 837124695 841663187 659599730 715303706 146284544 481236769 743930174 893450767 92204628 327873584 968998896 981945203 324188594 803203624 579999286 790410478 624655455 991621349 472926087 673474806 61710853 698756294 338139619 764738661 748237876 795057201 649595660 799473540 926305841 941731261 624850059 937746297 310377375 467773673 835033530 889096396 245621167 544551836 69523068 598499097 866199706 922089603 402069752 707449300 899495013 904094094 638850065 739368452 852208646 910513771 882629153 897299952 541526484 572311275 640027759 781879742 916023185 983805920 279958023 828546425 445098675 876918295 571051985 953298759 657358826 666722202 763719266 846745773 951586647 997013513 201221917 932331091 181939731 262305714 742006766 946553069 207430300 828903388 26561465 625566284 361165967 471347252 746936885 826675124 582018319 595018011 886919966 961374099 736703369 869971317 33837350 816458458 574680392 798729011 140191708 468866378 218677569 682781500 325833631 527903345 761669442 854408191 373384910 935714772 909716811 966388282 395948983 632421563 414979187 471463216 236784206 705909058 748013931 902664008 860298033 869359987 559594699 629639885 934117078 968875579 820459973 933290017 942303414 953003252 555374521 916292894 203514526 285115213 418120911 659130576 862642742 884809889 600949354 609810081 984862394 991968424 831625435 939808110 287612422 452132301 104053114 518020993 754896207 756390542 633458995 698595731 265836423 301154372 711351783 790599018 42738812 702402654 863304292 931555475 108667337 509530555 357673626 938099746 655597840 890925366 2914397 994974339 915246832 971960387 161039573 273148367 420001413 442128144 637577043 723005713 628416069 644994894 175191052 653522554 470123942 807726387 275817277 639392900 823142333 890093174 265464344 792748788 496090918 921311995 496809610 743697036 857181720 882852450 832704099 867783495 262188682 508196821 791985876 854131268 737055891 996945340 243509592 701559345 100523650 513096059 308058758 766492879 81293711 752019564 734254090 813698525 183984467 340719560 388637141 454591616 344371050 354868580 647438546 755416155 996220164 996906592 373423015 730337696 617520182 789694548 759230794 846467614 267733229 989961186 346842216 584088836 871236807 903406173 610795440 730128714 604505500 979511193 155838540 402321390 368366355 668550264 780537430 834165572 538333523 955792942 660048649 758905568 165517316 993194824 389858267 962807194 809595735 852422171 820764936 957484583 518872333 782547323 345135434 486445374 538748339 847058621 545739726 960640636 163494947 743807953 660723245 726611761 521725131 976363287 839726466 849020320 895836852 957993434 879012605 928381320 800840894 817624631 715308435 762253266 581452751 731880686 186498441 190377634 675238838 826493489 190503038 267976694 846157588 848942366 932085658 987127008 645755429 679545071 420034003 999773925 721333921 981854667 522258078 779595395 237941250 712286693 723535147 768157940 320745889 595556082 902228218 934127270 789837742 868021065 46045731 843836396 136458098 437395034 215153232 525452322 896077280 981350781 890268120 939625367 205741008 374542825 151231030 798162564 540487770 820856381 379814573 916401489 760372161 773862691 285814 45775768 862731183 883737872 675214605 911980484 485934625 491128324 610709442 657120916 477032945 872800039 636557915 754138674 461742318 953018259 474015603 504598861 2128739 536725343 839306004 877051516 508856846 868306249 810565180 907334220 603244324 842896697 268500066 769291173 142732264 567963604 835108317 972666553 736606762 744532578 967090447 973684091 665338693 989789135 406860582 470164573 632974038 755732095 716090943 758648743 480135266 623361470 188421986 686676512 924957606 983899573 217889480 789448556 878732373 975911435 690561632 714505994 866233650 975995102 214394826 295321420 888865404 894323971 628242515 985103822 735801067 989449792 696075271 944482214 513548861 741338273 5636641 701261943 666899560 900223019 55021191 747397085 371585750 914349479 925173552 931154140 130636909 677738957 56736556 855056424 526272810 641616675 705712189 718262357 442854562 689052161 953208016 961600353 229125724 755589178 608598374 755243370 698402391 967445157 54985697 983751184 442738769 924581525 410048069 449103636 230358478 239249316 167137928 310361612 45521450 440996366 248897052 336012938 58338049 574028290 135971932 844066102 295759501 512020550 709401085 969480238 392288435 924865235 69106077 116772389 262958339 894150901 363184488 838056777 557310277 941678895 32345871 473474954 306366362 375682404 133806249 744592026 201792706 787495456 951891915 993838141 710849548 767474794 286906924 867292486 305123278 546142288 376142349 749025429 689073212 809292742 260081804 446793430 460801344 464070321 667440268 876411157 903844555 949784899 565312201 773393849 813407402 861654646 586342515 817252049 877734976 889461895 136976660 965388196 756182063 832135364 645900315 840832575 809141643 946536668 253194720 348456633 692246293 880770704 880932815 944466401 247876291 951372392 539658525 974323668 85558047 699346950 687981057 916994592 293760654 394017674 390380766 893298940 868881450 902828345 188868846 981418519 705244951 861809005 565271345 920974740 757739921 953214679 195560430 642658479 477244449 575534973 659268939 713289008 865171406 894582271 228350821 607536011 890140084 906742832 109457060 608197857 722911834 835666422 310451372 628834188 91337228 518759662 194197063 387378876 205144914 332320427 89122383 697100993 898283929 952252746 819322661 897350010 862726195 993782935 786080940 907999313 195099575 678449316 407776783 430377538 636096957 803418740 894813645 923575824 998568860 999659762 252099453 652587082 856872113 920057647 759415521 997660795 242235931 723220845 543935030 645061217 987647635 998480384 425254624 530383610 821459450 896769958 241131398 729880834 31116333 172537295 858212688 964331970 827409055 859772987 712356286 832827864 207327042 781230333 948348545 951757039 922358737 998363876 141221305 500864493 819095845 865316695 214684784 890237922 387391616 512901333 594255732 910316308 751498416 797042946 217974463 456160255 821514081 960555658 753641574 780050818 173177184 334289379 239562657 482120408 2531378 548591162 250707781 355676744 118870629 697239441 578052629 822028619 463486904 943636288 101836299 244016190 697329671 752684766 273074598 728948568 503353646 980024858 243755603 585982499 252088827 412898745 21722332 836923299 990775514 997626897 308878008 737089488 164425851 323972721 347684006 778579967 492458962 649708846 540676175 948442253 739822057 852620934 271233948 553263712 254165357 683315839 224440549 575739198 6037023 798538855 156112187 279758984 856199465 918538748 216915196 965923144 44341353 991188186 408647018 976623193 642517789 862236599 84956827 832817301 398276876 846958809 483029820 952930940 878402607 936956763 524692055 881533566 291972182 940936461 133203816 465808765 352993388 807190398 903624589 927880051 98779909 577669691 594144123 973966155 447277101 740453197 903391994 983831500 818532308 848287982 782100084 924036022 593200888 603797209 74117097 769462917 438472366 647978222 8104572 417585840 723482254 994030369 750523040 919933331 151655413 813503057 461527079 519545401 496229445 565794287 350202003 839042825 147873313 943277802 60264491 894471467 719475526 764899167 536480991 537307555 574385805 585600351 483851594 501519564 518496472 726150039 487136767 565513700 666869994 737808340 568535090 990209533 284903710 945425516 535456662 844767061 771709373 891251235 977743485 984306755 452140835 738641524 876000390 944068733 431269770 758725198 275916351 542773618 763130791 930158171 653391209 948830603 966381363 988893982 718479233 976878169 856403713 937449800 940603417 962919096 381046434 397192302 817206700 895129344 889999211 929522927 379548342 408347954 486370560 559238273 315023753 483956973 781655662 905807649 769505869 898055415 431294419 701515723 531211496 774603476 246441910 350573822 750368863 826664791 596508045 620106963 633721547 695140921 60083363 126510660 133837007 466724918 58084264 197896304 488846999 995715033 54785663 533837391 806666824 975525556 903174590 949276866 600805178 868184510 402805439 439381236 538486042 707966495 587379804 862318958 705869703 988166253 463300744 810081458 768473476 887039206 170246663 612188881 788320458 911270934 802257198 935622669 459491763 859829425 994450230 995558629 102285313 490567363 722111297 965738931 23764180 386811913 263571121 966378371 392702324 657906858 245671006 670860238 395956643 524851321 627662715 964039802 350519786 931133295 321563053 613374915 953593126 969103206 215023028 261271156 230501646 554730331 140572374 175215662 101173965 799512560 102520308 853246109 684525788 787120133 509591416 591770549 947336039 997506966 275007969 475118230 606799311 606933192 299581746 974075563 833427201 881080538 291186680 584517122 344793918 606808759 464661592 848961374 747359430 871263683 775364942 889003734 281021907 308347656 858048067 910319581 618307679 908962723 173275740 754400989 544847968 998598232 22993621 949110723 131825944 344854111 944341097 969886937 597377846 783134597 926886335 978416444 56033176 224478339 184088963 500716774 518291409 746547474 62197337 197646913 638893090 648566838 627353329 985726231 927622790 932681362 421696658 609218597 530095258 685916192 236565675 530453845 386211123 683559331 968411556 978331994 756778561 775187257 941392205 973159828 623067917 937368360 579558500 880490058 192781427 315289985 75490528 151549788 744953801 949510338 368021881 495485309 773370750 816355056 422648778 691497451 163277979 658623890 401906799 486051208 703071800 796428502 404851256 586327365 346186716 632005180 196735071 425161483 651023206 687451160 949796309 996339247 568383209 659222375 713735625 890908355 303656804 488904507 4452596 436503968 576783908 947996122 637980239 859466127 533689621 726582536 614828348 804616067 570441549 660529285 182528098 931768840 397378824 540590754 934335672 969532196 845620809 995132023 283441680 560782152 691612620 974903870 727084833 954217907 984410111 994225383 547840624 671217350 484205011 834669754 721111466 959473981 595643341 811272831 810283166 882364165 598387775 978948899 464210813 492136787 904089175 978315235 259596178 849237438 698797503 924456666 927171932 982057481 19808450 430580688 567285852 867954147 945039064 969086196 67473897 92467687 11016022 283146679 246007773 633242206 350540982 704680222 50977443 112922122 334465457 595244218 384906037 660623885 674574803 704465185 943081284 981481696 231141630 619283865 364882462 498662754 815322548 944028311 58472395 779402851 204813923 953883069 689556328 894335445 290583170 295887989 938809163 942709046 876354794 939678472 386748432 400250259 52012693 134295131 872042065 922032756 30865442 339425898 884681550 914350541 914194973 937013598 224766623 344137578 223029690 956027546 870718853 901050132 203988474 917475422 531379099 942138148 936335750 939304588 304488850 753605821 138545393 595352228 243729425 965223768 763728166 921211033 803292660 926345971 363012041 688075506 72003474 268965838 243534000 956278255 740595717 896483390 820993403 943166938 208637939 315367531 514252863 932913632 71023468 158100641 663068130 933044722 61989669 237439551 888618141 973052920 788759674 838785322 18332961 288269693 71204442 557870482 865356470 893152384 595823120 818457409 28944439 849248429 408121984 718520248 829563049 988188527 34501188 408506479 2691150 330044085 611126990 689229693 626214650 805512182 880126441 972022804 150745554 457810430 873873718 940292380 120634072 611377741 632731121 712373414 676743021 733839688 583769321 761945421 221110526 427032139 16439980 236674326 11937775 178267787 136359793 762425363 982236401 995768094 532852310 919310291 463850441 557139723 899525788 935783420 199687573 453935196 487788388 817204891 704851703 803152557 928850036 979163570 783771025 838912055 185967838 460459562 788047143 976089633 520749692 543797934 91733046 471738626 508328435 710861074 323802779 514981054 580371540 678132990 484008925 942665896 709998174 989139279 159107349 622333190 226015159 438136829 171615262 412074976 140259103 727383275 729891479 771433375 1212881 452055806 409468202 788066033 731675076 814966106 431002378 545834788 858202553 903054981 248982534 703901383 307439644 383730665 748659053 775812728 823306876 889708324 910839112 993847111 358254141 393641952 351972696 397798381 866440114 994605237 571761695 596938770 652201155 751897735 809950550 929018588 542606043 932041000 891224492 951922127 649931625 681665649 935844085 980804166 683564504 902186847 111151519 598002888 516658892 826497963 197075325 427378894 815370504 996059279 149771745 677488380 961755787 966005973 249116021 800795562 227548564 642803052 429558691 603823484 418304041 495510348 727178683 731627883 848759029 925582688 378582528 601944048 958130543 975867725 822536204 996709799 463080395 575027152 489513448 559431669 848093881 968313792 525159929 943265943 418110040 631013091 555824816 819129926 24014657 671667442 610588258 733567385 91076777 590400715 485748416 737288368 780434417 797552851 919370476 987048136 808637495 879206107 596963704 790186896 690723989 924205621 717041349 867204592 881795101 960606004 606509806 882181922 412539009 826559831 930754640 975468960 398342787 644343769 723892545 990046572 339140707 558835905 928405140 951117186 517298926 635577413 344547605 352481561 279074136 601851952 40316205 872432315 833992883 954901626 941271077 941585133 758743820 912145958 19361713 324401806 403365200 777945406 410863621 467656958 564842670 771053032 425520808 543628328 305523192 323660457 464629274 747994946 691434423 700100533 869531732 955378016 324771422 675699784 314917300 829525853 537849945 873146344 907774358 992318568 519526190 990420143 615632050 745738840 791805397 900377674 692254823 916761454 773760008 946543921 362113020 812043184 852236178 880555071 435388866 913129764 867858070 899069490 569893289 773740574 250671366 411675137 76397006 830437917 961765524 985805095 374053858 485482375 989632857 994576012 799354965 959817770 99200894 717558241 556087636 898925662 349198860 586490456 183327882 593527476 280529816 414250536 667721130 838080948 285005105 855483733 204757928 657244934 200911244 725938817 740642858 866060338 297556010 397887922 322824374 487210671 630959916 879475017 410288863 801157387 850811373 932492199 783034592 877710091 52906163 91753782 602506531 901730733 425251146 944480900 78950276 590804109 447863295 993402216 6680310 513538344 874497229 961010905 252269365 292844471 862030150 885841796 382469917 984515559 196469833 811831179 232811679 713604529 533295742 854977643 267898515 929484005 152536642 941515147 538708926 741131658 210146717 893113850 875085614 876973908 455829797 869287155 597036184 964352576 97247927 759494735 443168623 479378117 38345519 215491919 312468685 768650857 712218969 917413604 954895402 985902115 682230070 723006916 524675551 938671700 910373257 977772570 740900997 892503673 421991385 502852067 85048691 715492050 110150646 603276637 517574648 608348185 976825309 997956217 264615693 480463175 607045179 908493255 109233305 122397725 925660353 989899766 556432820 635338922 333988701 500544580 549954649 571128588 30808031 802770811 9663036 501717186 969450499 969952611 913737899 966917660 855925500 917917226 350660223 594240588 476060393 639882513 102524021 431875478 600893603 985280969 866077473 978046037 677442615 941340469 323231230 794723526 121977942 126866910 914113327 978556753 928329330 952261630 530575635 752375361 521467002 990112679 592999425 906488612 171084921 862409709 193682089 270030429 229953066 912092132 500330533 846654669 601175328 845425586 999689321 999923165 441862944 931314338 932095949 979834770 793126332 862360515 230220657 525444141 965108578 996402890 296510152 678100172 887528280 914634641 564106757 680753486 227817165 647558211 769034956 826054963 748367059 770731142 61689421 676020089 532097546 885309078 664114603 879358694 613848307 831656435 590932560 796267502 3019084 452136232 975745414 981875761 715446366 859366385 323936575 743363102 287202700 724232490 612855355 995194538 371139807 984000950 153943169 539942746 114272575 442120723 333441356 425486251 594725495 887592086 722199131 897661291 927970047 951431459 777692223 792131839 136584319 254672060 635834233 763271050 500129029 855992201 515204898 708114766 688918786 922045523 789306270 988513474 125421454 987814686 276226718 333206339 916475519 984865295 110058579 144093197 2652896 415318817 181000737 590011943 925920505 956637374 667649986 729131168 461238684 777581769 508108094 552152643 522025179 974184325 647698997 944560493 822739254 872478872 88572329 571168016 921522319 988532592 898347967 907798818 159739940 859598943 154634231 431348288 48647569 269645679 252665323 576321723 5706976 171632671 137840466 771054041 970765512 973014306 128117610 490241960 455338006 500652354 840047792 885524581 546870049 682979730 482278899 680815413 266335221 728174593 162322959 637651897 659265866 725817134 81419509 282758978 271513064 993187592 497195460 602895415 15053772 354682166 625865766 862825406 913170006 986846750 133747917 386752130 44090415 538361685 98475731 854293186 996927474 999144179 281197911 499819096 619806079 725263563 795306845 906831709 849676616 873634702 946968489 979380564 390082423 765990655 227756835 784087251 358000908 587628547 202293295 244128373 798867843 896761706 942123111 972048186 657502332 714114784 672939544 823193029 399587052 637226976 955027824 990228452 669001590 848953123 703518366 743414614 695794539 711356351 362035020 413256596 212857334 450912139 153300415 738503736 38735055 937172413 723103812 810663889 173878288 986422243 761848880 821913361 869189439 941934277 704284799 785692469 288874019 310806756 678103140 708174573 542330604 623504741 390312851 582295323 617794910 682357686 286891195 622375037 868524569 977822533 362634746 548810964 865472884 944458388 407726267 678109895 75284374 156340561 881099565 986533117 5211550 418674490 140724173 636011823 68186917 727929814 594045446 942786857 384064149 594878055 256827053 971926584 607409107 709210093 411395290 969567167 967254736 979137149 480883031 556861090 118772963 146381303 151051239 898340585 863226420 898112417 141180496 194297242 698040214 731925185 734926308 879562563 321881811 947337806 12076837 849895009 656873701 762968934 280385458 418505559 783476094 858282750 468729900 737112343 815705114 846011215 583644134 892393025 464464522 640475291 831130421 998419349 174145700 700156521 869396440 972180672 934730139 980225381 345423995 526825340 512331080 654335215 188170461 695254920 386564131 446384222 205211661 515119608 854538518 884849141 699245307 811722768 392407220 425674935 56037911 275435154 764859584 966869032 9876621 114299797 335682061 508555458 118285220 462396198 492771710 992737629 204217810 917437941 932981200 950552448 365061815 699060610 105929171 599983312 56573448 215959388 857411585 887234043 852452678 899583370 149007244 507311369 197876089 370618820 123427292 905030167 854605424 861328912 321256958 816523414 223733198 972851574 458689055 839376466 702868804 987256232 869035325 895588383 544673419 948315666 808715353 890825699 355234904 548289817 607662155 621803512 920628739 923730334 557783077 581454541 672956639 898711986 511568739 955184454 232916316 360683423 219435586 407534554 825106125 897456599 217565316 791892979 395898224 919321927 404202137 872788394 153852661 571811760 871633596 998899335 339436553 374145371 819394088 932043559 654253556 714982045 519110412 841466796 636517407 855059340 317695744 352063530 188037298 752817925 747520045 785586451 520840577 922680054 165988567 754371122 559510516 994822963 162501133 492742358 353778318 643767138 622838364 900971762 971479801 989568837 820158799 845070042 460089693 673370669 961853060 992954102 361091714 608238911 690401796 701853255 90778614 873899353 416634898 845531811 303681134 996683311 615762653 779390536 539544448 576798743 223956752 285160471 479824927 601974576 337948052 872692572 526636240 722147922 673402675 956942130 765866407 906916297 902767603 946203312 405189910 728647412 104411422 732474990 846675011 886666977 789197972 790384559 179350024 373850233 295405576 339642423 241959751 459993583 680296790 968183023 998930769 999040306 690673188 895327830 627889983 958092090 59321570 858573139 931474763 973570783 56569115 119954142 324911677 377947198 333532979 478809146 920391166 974680453 428397383 640488258 428028139 865023220 819861738 963672468 596395236 823976043 302924323 644751141 261457898 294535983 656010599 674361061 724030842 786869731 92553886 893755234 616166120 809401956 294198179 829216017 72056602 694435209 90433492 191634746 725891097 921253694 229617920 649363033 370539899 784981598 96708742 297831394 192712588 704965956 360061103 735541335 521960039 736316875 545110755 995988704 515327247 809131728 30860593 476558327 481000091 618628600 841334171 889808775 572053588 696863067 842422354 955823988 350289341 514462480 68503403 728048816 242717220 977586139 930112971 954082369 27206025 923923295 535559552 876245844 591484364 695817309 918364635 919068662 404590513 424911455 254576858 291580026 992386921 998355354 689444447 979980744 185882752 264520622 249834457 636525794 219714227 972727126 622553557 738407563 326953624 992683835 231771678 833573561 529382000 984201253 696781801 935814471 450557157 516062609 183816775 834034881 813733129 983245539 9475997 66211810 406460472 865743046 268979013 434741105 425641655 881662280 761970511 844383260 629508090 664970037 919301393 978049822 835994690 996704117 696943155 758278693 94048465 552987229 926955608 984412154 98485989 811106441 533344606 593933422 485889930 900181265 241746963 785700792 908577736 993061269 952642052 971590414 560786527 631542622 558777049 850506451 806644409 925232380 92866000 737617642 461410962 687856730 678564398 872495538 52139336 898881149 859498850 989646430 33780821 984141804 814015658 921047845 831362039 847525537 446641449 788632443 865979373 870830041 166887394 757371995 964545109 976756649 867858305 946241485 695398063 812676869 556241404 908545588 235997872 757512793 72358727 970708660 949320048 981285109 877459051 977761611 555194038 816457091 900967754 991658375 556697699 643660227 430815829 634649057 634149223 978516120 58053746 401065590 947183671 950182229 757246892 794283775 600283074 660963421 849712872 925162771 259611319 946095938 996073093 996148195 57627443 670875769 908161207 983875341 365845805 695100247 227427718 286930079 62507645 282547624 96410652 179642243 100633373 175107770 418434149 971709312 866804082 891302031 390316166 981981112 543997258 681345785 583325574 766651140 374510646 795689036 823241261 861815770 756299777 833645440 210604735 472484422 332011049 923491824 846423651 939544567 846833742 874231596 525527045 615938010 741565763 792084579 631106518 927735320 277044516 879511551 85385000 447653534 604036001 750175006 363341641 486712882 517450393 776947583 627029123 964184840 325191599 577826811 193797291 694430309 847102696 887463879 757596467 801896862 885340833 921629266 111774141 607998914 889647461 967562751 958792049 986859839 303085400 538035554 967576995 995017536 450057220 821624084 641898509 716220301 696987097 765583496 7598712 474127137 177028996 831166981 279480600 962165809 341463819 575022490 653926615 783774360 523969693 700747051 728375593 829293345 837501986 853152409 952136345 977281163 892478273 991166177 561505750 924791553 134705289 437079317 165394160 189564698 261338254 837763922 586545748 881157052 255696128 278001775 713886051 920058998 366983624 917810399 726824107 862547957 671148434 735248509 958417766 959377335 881730011 995020654 413494844 780489860 136773631 334282824 424024200 441788528 183342446 578668104 367867411 458220437 842171616 901447383 550617919 994408491 885449857 971533853 755999544 976382312 628733696 660031496 481170049 739915534 879507991 936835877 385019569 683647706 78024071 167018414 61093805 323474047 8832097 450865422 892392354 926114687 902676291 998856564 85155639 202187249 266547286 422593877 951984515 971998385 954469115 979636936 629546665 720238965 941384928 967408502 432800726 891860416 649893369 657932120 993549541 995422602 22819157 202729425 596141739 892964345 906252785 972924650 284110005 894914411 808595341 974541074 12296853 597507418 599661424 622016078 929187419 948608794 838409334 992651135 355014033 632477663 58031019 451744135 804435085 852582590 806877158 956356418 506248667 616528013 282105196 883997280 278547632 867775710 857290944 987123504 160255449 312982138 410728312 745850959 502145762 991220820 791467613 845759017 31976311 525625872 230474031 328702814 852486231 879684138 11366407 553668159 803050533 849707898 375456310 781512907 522698347 663259057 942557449 971872139 828111404 990653246 409184691 484913856 102603271 636317652 683788535 892240345 518976350 759407393 18550102 372316333 524056258 999454878 715773418 933921290 798037301 876881672 620892678 897613633 298615148 498718726 978421580 985435265 865884601 926713792 399080543 423857262 781893317 971395694 581206129 739401702 486009265 869962893 500129639 992572839 469545199 767367071 494722066 696285388 603892042 672727702 845148631 986563334 957020698 980543941 395423187 768853090 521920541 743254032 198745088 855153527 850272861 855017704 863305657 976875208 614698112 881252069 8527491 366351142 430432347 837532772 992518718 997799414 278378492 678439219 554063339 679297686 585374225 739802391 513454591 838875257 872420842 873842452 560162502 635412804 379862441 737759375 794175462 847644629 743259258 972657577 111892232 675696024 277533902 887010449 744403115 782876708 780477732 994460613 41561971 669816318 908034231 924987816 686983190 812504056 893742451 911412191 60364181 505532761 364558890 896203001 939610244 994286543 318101286 926223528 221398297 531777275 257353976 923737291 95883997 834854405 600370218 812683079 780428918 887585249 440545397 791270404 429464534 672225676 246497774 405589751 872702723 993210866 926072880 999286974 469562517 483357187 791523481 851687016 461565397 759241704 739621114 752932361 885560967 944063623 659694789 975140364 969447699 988394784 314442033 388291957 27240385 808621938 121791424 958484563 807924524 818430740 65888957 272084231 277126615 566913285 411282319 935519271 47421774 372083205 560278632 786161600 732917576 867073952 467386498 751222475 467721705 572563491 689763846 905426925 915003341 977024704 75303692 511942114 997119304 998350547 98366364 595969561 883516182 932158855 175358789 867429369 934922841 952380007 849135751 851005187 734895772 966485564 257313640 597706611 370744034 678933264 520989323 982300398 405303780 708884456 468717046 994791633 57593677 631195515 681168859 754098176 354286204 391432385 294605701 582692501 680298960 788457871 877249695 885381733 952576337 972815514 801495609 996616684 42976295 799741809 64595842 494370444 857452716 965079244 650056168 740972286 273459632 377363409 41018626 416518674 33354828 174521966 141336845 692940493 540870601 752204942 230731303 605613979 847304985 917344726 893056535 995706713 814637224 913336633 354464777 441798213 260089562 916799111 415061735 604237660 850335564 971616018 978509532 989500041 552785847 652002033 235479666 887630146 397189921 606368654 893554376 932347413 402823760 852307259 957257624 982335464 44160661 158910329 3647813 139097520 235122522 354717245 816266695 905064819 726754606 773352627 285256438 624651035 908750431 961421069 732568393 905801375 319604618 522105173 79718816 236579020 325009925 475110181 291294287 601551913 920074662 975760100 393812257 586522062 755342160 957112748 192407064 915553776 375001966 897987232 820270864 852030840 90806773 708915765 285460770 808723301 348119991 564299906 152409971 296200225 353891754 764780152 535318450 957394289 273380895 907601819 924608257 960879913 34082465 992528061 566095621 763722940 199783008 889836040 305626500 593069568 884674695 940290285 226762105 807666176 631514709 805838486 569769611 817309151 242272325 416666713 247058432 954019433 94531376 554894847 354625604 469530636 760166927 891910023 14888115 42399097 788419546 887360335 996786190 999278163 161187668 496124271 631431774 721322404 921679205 982116769 737334033 937559097 124073325 383021652 958493274 974003858 493632934 953689275 423642332 624746568 927498519 949185980 577850704 955202513 501548624 874921801 691458073 760479499 234881245 853304065 218230464 932051481 779082880 927341543 668177577 775703663 919185957 920676532 964721722 967531853 941145737 992137525 399616237 842788851 563466 921332857 400185230 832607915 754216721 867154708 318021044 722395140 288584092 454452108 184738997 301711633 878848411 884709516 14013895 68711716 105032692 530942575 958451015 969037748 486485793 584958419 20344532 821214669 613197434 894257885 841814312 862521256 847709662 931873521 134567233 894844764 271074468 968940389 24917250 48579678 883192396 975174450 7056578 319345134 40575225 820395612 835137970 872321038 250285066 624455273 175494377 856665129 681456677 899837214 905789111 989766678 870556209 871725516 284477047 659300126 783440760 900613729 157708054 977510112 982971397 983481883 283776431 726711617 316218316 470261588 849311188 926049324 900418156 903031514 599226668 659413444 94422429 932169813 537081205 846980087 545201507 747071501 379223622 527052391 923878858 985217621 858339719 971753274 666910893 882093129 49667824 832977188 762706310 790533241 303394609 936311138 452344804 723088582 293762517 488170015 885352932 913548521 975844942 976445747 347216444 865305621 826318321 926187166 926372290 979734683 543954382 663533991 819709678 963457329 580213754 680624419 273679990 583525869 54432591 562852908 904556907 966578727 122426438 307596644 546871411 893286177 198682514 989736566 491127069 602176700 217400574 568472932 352697172 495626011 223634110 577062643 515531307 959591296 173726228 727192994 110380134 367710639 490410658 890276064 823178811 961218591 250551162 500552691 730003427 753745115 752718475 991371321 525286967 659794042 758402882 787150832 639086230 913569076 225950446 372269828 408539012 518208311 958442777 977703265 987228284 997928202 147395204 189936434 417402278 539825848 131001673 937531021 612636958 909855217 873139444 946110417 89849543 895293730 900810899 980091864 927628180 927756404 963610117 982236743 999867112 999909445 902140592 905926632 187912951 911509446 918358692 979873854 162036063 391563321 193804597 342912911 416087814 974188323 353889218 554818291 811478386 841874665 608495215 985027564 470758538 760519868 86822441 980095493 676493799 759806614 289316469 565757552 894357280 920509168 163715415 297796188 966338639 976293756 363930700 537967328 273722523 377628066 960243043 979351819 425784508 967589576 166590247 417688567 587508667 920444371 249081514 567886998 562710554 648908957 495229787 590263117 935214477 974712132 905616688 909374932 480527803 789594410 903794052 936434501 708921735 984788668 753058735 816140503 914073949 949394851 256301249 775791754 412384668 785320397 392252603 567399543 698036107 799778832 968155887 979304831 158905408 832186854 572182241 859748477 591412204 854681863 754727944 801499413 104438419 587910530 471663311 524761003 564320401 691329667 250565833 734186225 3791691 98153612 613943861 797250004 999447234 999669438 289926289 326989139 983040595 990382448 522887403 947931900 813691441 862581575 858804380 867835632 400200675 698081993 433265483 448046684 189707249 299708392 498156388 863779548 629080042 877506154 673695079 800154369 270109145 473544516 346990400 366529792 465796230 885350990 59699828 296610247 685475277 841054120 817569433 939309887 30902476 465699844 625910499 965318922 561143967 588547314 729811981 993326292 162991770 804828776 191754958 507689726 100005206 421548998 776195308 808063866 63152257 805754366 551517835 995665163 185529372 615784544 936716050 972223060 616337419 666184419 897686225 934885306 182015267 788518859 114376851 568515820 260805566 342710675 697091927 997095810 729046327 998746690 431710824 922762275 837603729 948179527 293323926 626894766 622266686 673878067 900477544 949460171 303250858 444689032 231334747 620314802 476496730 524388879 435070632 872534159 294061192 808062513 613268000 862263726 572955972 945125770 748359336 976171193 599899682 814070410 927201898 960139013 979468882 996990593 434425616 907883110 608077699 787175585 463105001 644753305 5137914 632731370 833734115 928083116 994353214 995612507 471622308 774327980 107974555 420679512 784060478 816019064 4595851 604459110 709315504 763486450 696365438 800735241 346008691 689236327 588767161 978909936 468676847 897258266 432196388 432654480 706687336 780443129 646011604 994685714 555530495 976878008 92558127 101315592 600859856 948464256 39613454 831490360 290069571 855012867 229836077 515905475 539494844 858838237 661044181 804992987 583183621 869230012 3726621 496525668 508937847 773555343 185672591 466670445 58644108 101924242 635117835 675391051 726250672 806267752 182733978 837055311 120667391 271468688 988806445 998807637 678002105 777572122 733983137 891675353 443083735 678055092 98898018 935189724 535662327 881593065 270977340 968702948 290132491 360897844 453371209 682506371 87056443 707481349 144295601 637270831 324545616 354991238 943767529 973679105 963879838 973800025 640337444 898660700 699727874 941365999 110730077 219086892 4834 13721282 178993863 607278188 740437198 809773107 122762396 698223308 922833949 991360036 932554238 936905519 52997403 658701607 83630015 322733722 159781383 732158388 737861719 943946406 222274903 230759560 172327281 182400278 231670535 960239092 656384283 708823039 148204208 854725507 390378687 549424405 386465321 612764880 726904696 851925648 659477016 799945519 798357916 820748075 791853977 953554502 490225360 670912453 326447745 465023230 235871405 976730531 579144404 865410232 918082981 968366021 661556596 832916756 324686942 445710585 519756231 768228528 561504578 618710657 178484669 443053643 880878266 941380682 134102764 739590079 462688487 463483954 476338443 912876671 718961134 925977531 825537706 890935521 99636311 895788433 241855669 594319057 68031066 293402681 184610366 448066233 494943350 754543289 95284611 177058820 401019246 528822199 910981770 983160228 104504769 706461379 450718129 988227776 594925318 845340173 962773787 964196152 136857531 714408537 323927035 509033503 195049740 336431471 911997639 930148353 421126144 749156384 573455410 784125518 263265085 952570742 338559516 818595441 384481032 963589315 217093159 835394839 865782601 891702830 954536609 971628976 339822507 831653790 462307456 863270515 183622237 606673446 35228438 328616230 397832940 657928544 97418503 387387190 936466947 965719774 15288155 842574433 259362197 723860033 436392593 716662477 62591809 444791336 782490429 889455093 833770829 971432085 212593081 613147324 406248650 892125520 870639392 971683569 48005285 56735672 818068474 924257767 174752001 631080085 393854319 491466042 822989073 977028944 688106334 876315637 839268432 997392048 307629845 707774034 144219163 474966467 141021553 234231258 917367135 930489124 578985445 591436925 380130562 634350389 372249749 421476533 229466733 243931594 866938031 881786562 857476809 960650597 425495517 583482255 290135420 975202819 889873311 974924714 225982156 463984064 242068030 960704625 212055926 271652186 321767247 755362903 172447389 257315379 542923618 882426021 537679432 750441940 87946478 434058648 154671545 596138049 249215168 498199133 677559757 899700904 7765423 213194613 268003755 288142147 795247905 812241871 248115091 628614929 680071026 765919352 541146743 597907896 491999716 611120978 396521478 428575247 422171360 776725167 320218105 353593868 303357228 768387419 489770131 892976062 769067023 968327113 967754386 990862671 16376690 226337449 78529083 221700787 157424139 851520716 78591778 447988955 86642463 280859295 552835763 842001425 917098896 954535697 36530987 484303791 2110737 360381263 852402614 867205926 692145020 937650451 836680064 846322238 56264266 283679246 847766314 906599266 842404887 935842935 662795667 861536406 370070168 521663741 959189636 975505756 445565193 696663706 245622228 691829483 965465022 983695018 607104801 741650830 429437377 442442026 601418625 809287123 145140465 563361756 657248302 702747762 450712227 693174299 869246917 939805683 372078540 832211071 760642851 963405684 185094658 287352262 929225697 957659400 420043443 755903025 782642721 789550086 232527971 897358018 333687907 422448592 912484725 948157564 937619981 965276670 968382590 974115086 60378337 239685357 7968833 764174210 316420760 828191426 24881647 568305265 867433909 884034585 71948379 82975162 765760349 885811266 362401167 968947556 456063111 513862313 339491515 363430519 170893279 453690628 944458837 989899110 912379807 920390577 551090733 666823291 421719491 544069807 293574521 951192337 347664115 759517292 404323832 546562380 558957018 917935058 947674681 994026951 267202188 696749891 623385302 942625085 564652411 874775959 707534782 948573166 380366087 930599694 43032543 169389341 646131549 830762106 742539751 834821612 439387916 706917755 981399340 982636880 391168409 841372080 240885024 720608956 480780510 947713182 266410506 387542987 192580911 669063685 198249863 543680957 90271655 901380917 120512625 755364133 858714377 859958337 728673903 750685517 360730348 581935029 422253830 676329165 155950192 307098744 75539842 739323008 318923722 708773549 13090382 149488780 115712400 851221785 796263406 979565025 278193215 410703588 684779383 752347414 613311456 871802904 122943087 886453106 290028693 576411270 618189858 802188995 796432197 802210431 415121192 993574667 531811258 853002623 426498402 927844211 806272700 889612359 599478459 670252843 766373760 792622251 788718718 940041352 671831614 854833444 517594017 665709610 559885986 872459490 947943279 975648834 838781202 850851266 361662804 855822777 953361781 954722056 574509654 731398925 449844512 755018078 674883897 938319012 278892389 750012915 965409310 966048902 700749963 857587321 162441999 700753511 96094949 278699138 863523188 967547886 499695756 874988792 347538962 903035003 877800983 903941028 760047889 999467885 577692241 907958883 394077242 874101845 304109283 975684812 264139176 507560344 885010382 888624454 722229242 990719169 657540271 823417595 265511829 589602393 811096326 841053503 678977834 829493336 559022225 747457306 660466820 923525032 174409104 447634803 616382757 943762192 136573759 731037792 53744449 964986771 367698691 998384098 751380515 771311798 818432508 977793389 914782683 954319389 254855027 574394085 177001024 177125516 668852758 669624669 75306766 755347595 97897131 627152498 369822731 560352582 151580259 197797736 107053945 539421765 858016647 962243496 487165119 552766343 143677804 925125257 180608016 787786163 665173014 718696164 238520232 392985341 562777423 753489990 954971852 992860000 902903821 985798582 43427086 150893208 443108525 866421893 801595569 827309728 395697611 506049355 779170172 929834698 179168604 229090670 403721533 471943495 754451402 932632105 687965233 724460403 898892367 987287481 167386452 334096020 247456124 637750585 834493780 962384125 297843021 763305081 233809656 618135526 967434883 988645705 512212592 656979748 359484428 590364491 896696820 952105397 993927006 997293357 8588903 748303483 325028446 727043056 282742923 730942074 724598708 846458175 238815548 570650769 626385981 691704882 74234700 485981448 206841826 538132522 822816813 888985660 156164042 490465094 706323638 973886080 685990697 817875027 438156148 633965164 200217991 343264516 974825349 990464441 678671376 774093030 331590289 543149506 59937581 807671696 406629288 413640833 121825224 406852777 62456292 122863295 985546261 990476456 630529050 797530224 450844851 810792067 25224352 107265684 665123010 767476325 333231448 852513313 432337019 825798308 382207540 557939003 910908030 979990319 344637842 851323565 108123501 685288980 833839480 865448561 577745847 660575502 679711019 765092528 147422292 574384056 636621286 824126394 201726726 618571511 965667185 989773684 637080884 982856815 336240829 742559339 127535552 727332219 991946184 997325735 209282563 675963622 734405681 819736733 357020759 757844466 982773415 985259962 789449971 991691808 924613872 929590102 746338966 769784867 923723453 953107755 500825625 567426607 516760782 567087514 63867672 785469995 128770726 706337870 347833886 982060342 304573422 526568021 511947256 553645727 280307661 868031085 322922223 414372939 957197855 994632048 829668706 863422019 511410336 596257665 802930892 814237613 718732857 844027099 20491248 975590282 659396153 663261612 334579392 707725694 277060678 361300891 865505370 963625381 243182719 496547888 180916899 416345971 44120688 337939050 384731523 990498549 625303206 856374668 716683587 805026142 652525075 822873007 675561143 750803167 514371927 756902958 526920392 618436985 949021239 960460725 85065799 288504673 601809419 927491001 84371447 651798471 92465840 943340179 712747496 786236128 505279119 967793376 620079614 700384069 863664051 889003690 829928001 943513692 165627509 264450567 663741750 700422018 236748479 534454049 662374396 702111817 128936384 294357023 109697051 899873589 720609641 726744599 26531955 207238649 575664228 987623815 341856500 866746826 532182000 882125168 948281644 964087762 356224119 556886256 519215122 529567759 897121696 935881598 808266822 998769752 945043133 975974008 468833527 722190559 143253179 529964679 238521971 958396875 22880826 949410854 989201930 997308296 841089893 933214281 696183134 963383475 540156348 672866368 764812068 878101578 269485461 277471090 901966416 964096905 379551829 546201773 186340823 978973377 721350643 982481417 108524927 856287003 618311018 700207220 870857222 918545633 903280694 976330620 806559387 949901957 897816800 900436571 754294318 795157423 353538197 707428398 591291383 761556031 619479418 874346389 607977180 669513613 413099492 939970298 237350400 418990581 844037312 992007748 74369861 969411512 150860989 633267920 995305691 996251199 270158144 705962683 162440043 938404578 692036933 847579111 401053256 841527319 235632480 250490457 570911434 814096794 390978944 853574266 44708408 734518036 519372445 932871749 283880102 966672450 913605638 992458358 538383021 939678950 575811546 599110525 391143560 449294883 993820483 994114250 276063370 575447880 995172278 997389287 995531431 998706630 644485310 788186775 71856542 982661141 354232267 927498806 164890653 501029321 453559231 551473753 741795635 921565077 798973038 839462512 115925745 466261196 532993919 693480980 495472676 972745772 363381933 652116034 184600603 196642241 352845009 934648713 527890978 929041224 836722682 896090106 559318172 928243865 710368297 826561459 102867041 755395011 588085749 966882438 221126585 949341645 505756311 933604525 99353502 759047452 313355273 480450999 364119605 652301556 454537284 485507826 941551835 979891769 219984409 805977214 233468824 722486293 419834956 556762634 105239245 856170757 301184693 597273067 549425911 880669443 253493129 801213485 126040001 254868165 721051807 925448466 798159939 919759311 928013907 931088384 717275148 860711702 76105468 533061835 839862304 938057218 438443000 441851514 215889653 856588762 728879739 873593616 355698615 687772458 979140134 983140917 224955610 272834368 344605454 460323186 384077580 448765324 890677220 931725698 408593541 577465158 975239523 984228343 383059418 697167992 124693676 861316934 311797595 888687591 667425926 956508828 335714492 418381845 450237081 555025879 574805873 647888632 134868980 402404554 207852003 663693891 844286113 902779512 991161847 999379933 701644356 863831181 95642723 380256724 314710797 516235866 46849079 275414480 741502464 815036675 643083362 783417094 520197893 688599323 899188170 903698467 312952187 542729229 631056042 728026435 262340907 398290546 244019965 490163091 642638321 787723690 431335174 914473250 783964550 883915463 812600709 915218515 486303608 676903785 734785329 809511374 674894363 746680229 262362595 303916598 711029518 875504273 73516716 327271619 692216866 967057944 946974781 963913878 646221947 909183892 616043372 917514210 927495816 982600082 668920633 718171471 119553008 782795380 139504542 474370406 995150626 996179969 474342886 725965146 767967770 805955300 664225488 725515236 323677112 833011311 96744548 520995984 107373748 547500288 506982296 649383468 811286414 950454548 185463826 227412554 650757690 944673420 139712062 778434212 584690233 977531639 780817768 791998321 391788721 475225486 509378257 616802600 763222472 963401024 494780751 885227545 233149584 943296622 849063404 921523145 190180447 961018845 883738972 998407201 611085963 837975465 602477265 610624212 451445230 603474747 387013700 989235400 703797418 806350023 795373727 993449938 342079080 546829053 239427384 910102374 144912706 185220584 616179017 806567107 837805159 895246842 79122022 220993471 832174220 897336722 955597103 959786793 940453162 947476899 540590277 642555967 829522490 863211598 274381536 417758303 369672257 479773566 853481131 982682273 632167792 671242430 507219784 977950104 302396850 986944614 997556822 997965001 219781979 448496028 408621904 905475594 59803630 169046671 212369582 477892876 346088681 553228685 87396464 836074770 114036970 342308263 501918290 773987135 701382393 755318404 835865982 903588426 682249891 722761124 12795350 511502346 431789263 574839309 586136182 640526763 845327661 952333744 290055342 703106247 62753539 225636419 150433761 388889347 628331082 734468911 579463081 605501682 335891499 410050730 310532629 319912311 795265353 960301938 439254080 878638578 141231072 343059899 16109509 940737465 504672370 711588028 764512728 958459894 526951244 982196522 465955503 497573967 354119480 655562471 639853194 872829990 250582703 756577300 395855379 702534024 862805703 932151052 865112040 991576724 439023038 468763534 306339778 601243893 957218258 958652804 580953717 625810342 407624181 468264846 889593908 903025358 727874174 998315663 287027687 844761805 815743516 938482294 719015870 964710132 502525204 982893153 20089719 894744550 542343342 665740413 568612306 802737448 34200864 827383449 655276576 999374574 208858428 766377694 522362528 988924025 104262696 667501859 610214153 922326984 147164914 974098292 17536807 203503728 114692999 470846556 938226824 939961976 72829424 477450179 89952894 891684292 504948764 580493999 400826786 576814226 672706603 774118117 726219168 797026628 510558351 884786830 231496703 354648032 864988443 968133355 343466247 675821869 80712384 608953994 95616499 158538822 943342196 958291509 227054964 708568888 532652966 943645304 216265168 874578694 126137628 841263407 155482057 500717241 933223331 960875112 531767859 782534512 272465478 983949018 906650280 926204319 269792527 559542504 77342031 358388469 297645022 879158197 777128462 825690626 285398386 946061264 316151660 687055886 199781236 945467754 714959965 842927281 735210978 915996377 654532989 886861007 302809161 382787357 411714161 694900374 477794022 634066229 650342299 950366379 435330951 796316931 183881278 239235358 609227893 787804856 338928796 436505828 283843578 835639501 290345907 751051571 47653098 973635785 109854909 754672895 540442649 768682072 495247602 676410803 137837661 808455452 227039234 462209214 399175010 924847192 536060883 575193698 403591876 984598124 764753123 988840590 616070603 925979931 294582622 475306107 497628328 930349052 829851984 961418937 394710523 805791799 803153674 923714262 809084264 886995951 794851701 834732175 605409559 685605640 250580212 942437205 274081748 818678303 294187937 623733059 285091548 783798926 594968168 908992696 975407506 992652518 888199721 986834929 787335203 827064484 60575736 97338927 429803648 477770650 2654822 775174345 448708909 815770467 772935970 977084957 113368960 363996525 692787826 892601375 652900934 667425482 222954739 450389692 548622436 848501010 516071998 657522190 813165823 841983681 515360987 763116202 895571548 940313921 767479468 869464167 579156521 620397682 576510485 960430151 784168651 891670385 177728714 535053548 311007268 949676717 274874952 519927283 587347822 837316417 20914113 655335863 927730816 968082555 998344470 999773562 561777559 768595077 17229352 688740776 458547996 590057368 910826071 983875390 707463390 909957123 242906306 769596649 795755293 849826743 587694202 807194178 955192654 955730765 3074481 373515894 258628041 693747526 161055959 330173368 503295337 925632929 591953889 772031859 244313360 667401105 68467110 387083567 744166858 919569081 92085755 872017022 334807955 992208624 184952172 917512690 524454520 622257106 153578756 702872677 587854809 633704910 845229583 941170989 676732782 697062124 16157795 525012709 508136506 902264150 810043245 878419675 897467540 915635345 535035188 925914959 192201568 431558678 63030136 535362603 327501555 332958128 348360687 631565172 157890862 286396570 577058238 741477960 195387884 287133424 396857096 501111981 385469851 626580745 466802080 682230334 384949831 711197029 861083045 897409591 377990911 924591185 305477815 650987106 463612056 670659989 722874309 842857212 714324332 769270958 640443677 740034420 728930087 805319907 764166235 769878905 792144400 917173848 390927962 703807579 954883111 968293640 390057799 939951725 122826044 706535884 538006458 538306864 49024446 82548939 245158841 495115099 134810092 918016261 285542737 287838675 648698630 708324930 323468210 648894870 31899341 114122028 942264923 966497243 251090114 660460186 405390199 890466210 923106109 975514075 762367107 942555044 680865211 733785162 329972895 502285148 893700732 943371456 96607166 464132295 628683933 953067376 222285979 668175515 309820695 336928408 76865367 748842983 141891520 990742007 210382756 345606922 531645450 695660071 584529601 650374931 605081856 912305192 323857479 855402024 695217393 873298651 88159960 461872588 929655548 947421539 778025377 850762410 941028069 949741940 819283622 947825018 964719553 966211228 259628118 845405630 865681462 893404267 186923911 606808974 351276973 750395325 26878338 135168004 913407207 962837451 359831047 925156295 401149447 752387788 768075816 972736017 227986249 532876286 901144628 994015380 912170763 914706491 589262532 688025126 884818546 889890673 504163989 977161976 98351624 414987725 635862348 857706851 217471681 746002275 922697325 962219516 514171028 669049835 134596723 147036779 141832163 148213135 493661451 632270429 895873936 989692958 11268506 52612286 625564090 778832463 318899405 846983287 414764506 605503379 419034356 442569198 628075574 855615499 356534405 874976353 734756098 790567197 739118111 879592157 957123356 967927243 983673775 998831367 326160954 656017943 653592912 849930184 639103157 685725327 283381628 959826566 849078996 880604706 334462513 529706345 524907065 889325976 149506416 910602315 418006060 845681400 195340807 970837957 396590954 658260086 496083920 807120463 498538940 921387097 220393520 977194225 684154550 989050637 122968144 180281709 591982749 965548162 23971448 621505364 551605706 551814680 531725712 690159287 915201447 961315380 588795874 605907217 598169122 625781272 887179407 922915750 807595945 843042625 322688583 492083537 814292293 839054454 675551145 710699561 803293145 983803741 206981583 486848325 947164339 995275219 821137929 979980106 533833269 845617704 562453080 577364665 961533116 977502508 889572868 995640577 313405046 447611724 625887921 711985739 570331717 717333425 727056527 862123529 512500396 806506490 477004756 485134927 155413705 986248052 205766252 641858216 97742150 189669065 86333390 663327534 620841424 718436895 915489365 972855503 165009479 545025519 44351271 52596872 379853411 474544405 960970419 972910113 819436724 885263465 587526216 779259817 115512461 620855903 339767542 526817074 675329076 822828357 531893359 863736794 845369158 859676330 119340539 763160090 506610531 748681091 298566520 580569105 987742505 988404822 796284930 970679624 331703897 730012394 205441213 648730684 305266032 671265603 93641946 641807293 692480071 840937407 675407254 856195577 240155503 261763765 485109704 575602705 748837180 784939212 275188016 814428824 598485970 993469170 678633811 752343930 647873380 855022761 905191199 991876351 819991404 944904576 81191202 696654331 248606224 943056982 460419901 651928910 419941830 810282848 872156207 937052826 459895988 771827262 74031061 79659267 959835451 977295260 985990123 992535520 915825620 943135233 613944037 769702309 132634390 825755038 259956854 898593913 210644722 438938529 89809289 752610881 373523137 439527227 921474898 932969188 56031410 630322413 888997457 919945920 525256923 860653315 142292895 828287506 50601756 592593226 181214562 769681195 873812697 962422713 115505233 763134847 943106777 964225523 897379951 966214898 782726445 985034325 821542659 964807334 841656986 986028671 151992264 920869537 649195820 880015794 942680077 958042846 314507968 520257834 471299167 976281587 364057951 388337499 990483336 994845553 22139386 317942301 106240756 184082740 559932906 707629447 497773732 617448635 648884497 667730007 741036034 751207236 969918605 986563944 757859147 968145241 364196438 603233015 479257283 539162087 691569270 817607927 916570846 962625381 273423139 493133157 717125981 741212533 219665116 760487364 995245641 999458023 794680040 828947053 348753080 734603732 897998289 903266098 349243199 739000066 730293098 837715319 841785989 933746454 209409682 375650068 140665785 489156742 413600931 903551905 1794393 602993128 777815885 827502362 596326538 643865593 617239726 878763121 872559204 969647659 792865847 930760555 562830425 633509180 942815085 975006966 811634374 972012069 878329572 921813658 522948412 975880730 914166053 934036383 796624731 836179841 633777408 663539941 813574297 977761365 250428184 892489005 700987056 710766962 644850273 651717284 150580283 167308129 90876831 792664759 877445863 944577011 718104845 962485979 407428527 419621467 677737390 917069469 649379391 721551688 755353479 927433856 215930037 346171333 360860414 959009158 167092331 530195783 194282168 660166375 528515400 609651669 281125535 710830573 905951614 995336749 192530398 437128031 308521675 492858007 76624467 675281052 272914757 623021742 984858439 993944830 464330683 672555854 526362437 567648904 72290476 919766416 197864303 993024415 252086290 356770863 414692766 977714551 883586178 981437389 749568393 838657643 862891672 871187260 322200422 427315410 153838961 942989840 205234621 775720960 599047743 921857979 769757587 921476313 338726199 848830257 404010043 804507377 216327999 863685062 35046446 787747410 502049890 577667901 775038508 911659876 257489148 855351111 840450722 953439745 598517605 738325815 924104686 959129491 919749203 989129767 940366646 996083466 547587120 972919379 855359303 863747941 561924642 616186921 555110825 600985676 199901766 379423326 490437731 852887342 289641910 862547393 918837294 924382779 257534544 591371936 501417673 578372793 329406964 690843680 655264127 718618927 414329877 958715449 525302649 977638429 281806516 596216113 307712656 819118743 751508178 894465870 620628262 931577510 168542482 792335750 673730491 753296310 228472085 875141919 977225419 989789635 574989398 695476702 118334517 930928438 651329482 711048445 84751888 229196935 286192030 758977262 32207738 133538923 297013996 374262443 437962539 575367643 14767914 628260344 149461164 638639810 445313302 862273757 520720338 837490735 157792702 455877533 841880327 952239378 408980587 917227347 411543529 852379841 969272158 970508982 942866527 943537404 627184697 853420613 380373441 574276399 817420441 901425553 812547601 984446656 62328431 324139635 133122000 855508496 946241379 973678245 45321469 994687852 204952439 565108734 758079532 767499992 816464541 946350526 771052207 921836417 503525201 899273805 132441061 715521502 650796952 761862590 795762331 848837708 647299264 863951851 842116841 945360507 729901559 912197725 694610415 848503230 83299689 617212667 297301290 625621795 695608469 870574495 937776027 983432452 439808346 875936223 380471480 818636806 12536493 367188940 729201229 946095467 534617571 840162746 80560253 442475445 422811873 465759478 495222529 495672634 381110676 484601638 139525553 676455742 435038201 978454585 270389855 315012303 173552749 535519186 119995856 398385099 398293248 884078017 976269200 988329495 480450666 532137869 661497373 661930965 276914401 580684596 11980192 929057732 83371025 176804322 377538465 965524311 162598357 771985498 668262205 702851155 626636353 815383488 390431977 876948594 601079659 629776100 537971354 791199280 396066627 941972360 349782000 835557865 446739500 653488678 153390933 888390577 103847232 935435387 737446555 764298674 248620983 395003129 608939361 938499154 461175495 790356433 7355981 277338665 856975121 964999885 424610142 715772855 502986865 760923284 802530901 851106384 642509531 758984975 803825532 892456894 842014081 842101860 329426486 478460252 270669211 382173183 878168812 954124926 595988664 726774427 260363821 265509830 570673651 946226556 753106591 844221761 409957597 932596783 190300665 331853461 137005215 373470125 914327986 950944085 826868318 834430311 576685530 699462932 353343737 580221027 278992281 614506462 264510848 680475053 792923517 965375329 576705222 941507677 252377459 858069681 86749307 137260056 652498969 934209756 792815480 834771099 228815450 400966389 236397359 641232186 428791974 577741041 868957429 985762438 198193565 486078332 831436995 888786873 489130169 977237903 477343402 731592990 416605900 497712364 649828603 936585501 918223955 930879934 284682605 503867545 406312603 527354114 254705547 721223688 630396703 790104805 536001491 615392962 611302336 679191301 2747310 891231596 654626786 851589308 725051372 802510663 572661036 996352956 888649895 889147594 14104573 840709048 627603082 908994682 621676331 982520553 135977474 461097501 712545869 964637478 725639342 906401958 896421473 899509423 874201074 981149676 898035028 917828440 126238970 673738639 990550345 997363318 568917637 962621912 779627777 919853308 499241378 694925824 942325072 991547516 328220659 994981057 711026379 885303071 529247451 591602928 659590194 901900203 305839675 417820467 848183575 945814304 711856893 954066489 610988151 917973637 417765664 877941180 334695365 710970835 154801451 327119186 588304431 971561194 673746004 826007872 640606279 823498024 794089225 794727719 56953107 866843101 505138119 661251347 898557737 908848703 922470620 981069360 194195166 908114166 74572920 555712711 994484205 994676588 798921168 923490489 86525187 263570240 998852535 999475098 833509693 889874025 696572741 752082967 21057688 820654163 64351136 540007343 462043404 718851637 96370484 475343158 752180275 798844161 769552784 879092922 44943540 355802193 723302743 939090499 703870083 852716340 780047304 890839269 833449189 998488478 63433378 575493022 139294813 372488968 968246666 998744463 757644747 763116022 109050104 581356010 438033669 874209894 541241823 923458895 199640462 936968950 435441824 458958927 82554727 782153788 975266422 982876068 596335833 951954050 520285619 953878772 616021033 862256420 944506218 972300648 741768708 938904949 653870532 930437139 525627833 604924854 627477366 797773335 630409362 972294941 575547671 800601404 396260843 531804954 683720932 998150728 546886393 762856077 328937085 899241093 851301608 855782951 96227037 441543924 12887807 538785602 219444444 806670353 840695704 871227968 879109227 883784378 291926231 802222277 588808484 856508561 32013391 437224856 672900176 815741762 844960005 977179197 841693721 924775947 713934684 775502872 856000391 919355309 469989685 589950791 883670570 941504881 714724638 833269691 249473264 663991741 970789807 996492649 697853144 745076760 78026603 643008979 515971848 817817812 651181539 889538913 454347571 778369457 360029762 507524331 584962452 644099180 101912587 382281752 141671458 350756940 985653018 999811056 400559281 565596006 611868617 748570081 368053357 850480506 877062574 883299456 579821857 969413104 810610237 873560882 987671812 994025239 596399300 892488022 372477336 715882303 913338735 917905117 436053840 580557500 239251520 941120579 799758065 991882645 526151833 537661736 208225946 774334429 892655782 893713993 83178452 368332064 698977312 929299598 709107798 743200130 447322687 604588265 17598923 118594594 802310839 953279811 728162585 762405347 654747321 764170007 968144671 971799053 210055637 367609715 903697995 945948685 278053723 797233122 409641436 919455185 675413040 735452664 36336037 262466866 843750344 984781564 812889064 988192692 938535445 938876851 990329490 991474775 785039858 826482255 121363095 535082460 481450099 825004062 100933680 172943301 489707044 919270138 315826674 632240862 284118835 286888282 986124132 989848957 16421335 331472046 494039500 795948873 752662880 811549113 693314143 804031670 513743084 841505493 409889803 550015715 348135338 888593850 923698341 950451035 803885069 973843106 678496060 940833565 971046939 997646126 312600755 353587405 529681649 693434832 358897766 935322510 83794758 688112118 29194113 181506000 737590325 777967881 89243884 388772988 169098681 884567797 586270931 667958021 313561132 895244971 962001405 966664340 451145059 716489615 936109614 968863378 102892998 825905149 932722052 973733522 543686794 839408239 373288908 662809514 747299260 849845010 766416293 792451197 370460641 411520995 72476787 234434768 371013171 998422269 566090473 631010560 367057345 706474309 212174767 639667710 270414953 423276514 709888684 977622107 917954415 969756645 917528612 971960651 476357102 483520712 218662021 650170724 433057384 608741715 820130622 998455264 289727134 555656367 417293575 447950064 910444566 969010522 445012461 578782887 917752332 952126672 213346497 593458857 10432595 774311384 725574720 750540338 600647867 680211726 676560125 877935116 348720300 937667848 782015626 839766052 215391430 797764935 990070310 994385895 823267326 870291896 881435390 950162493 456977086 480918821 13134638 614833355 507894686 782243048 849364241 908695016 993450465 998462519 683934580 879017339 626415276 801714087 51584412 628920844 606320402 872462168 481693644 822791900 648597646 812173518 657045569 676239309 81413827 264318908 565605440 910326294 627070759 827592716 890366775 934851343 941245283 998815144 855929814 878226874 533140312 725489280 504950173 591180900 176752329 788726487 54183730 356138519 756898069 876607327 352087051 737411023 481154259 489193774 78989336 541175011 269490038 336182999 541082624 761656191 383427420 920110405 16116169 660712911 308841544 547480295 583705954 689206791 442447706 670426402 468583260 720576159 878860123 932438711 235286040 850756472 562589405 619984416 877047635 932264962 249457659 971014534 484061119 961459169 410680133 544054286 320665069 390291614 399663841 500862380 361701972 574772299 960168019 965974972 633428360 678975369 556773240 984642793 42696857 427556291 119503560 971214721 834331506 924428708 366940252 655807119 375647675 555032594 573393407 724421493 605961008 949075060 451691213 847187309 559475596 816367375 319571 140395340 253190849 412376579 408316078 486560168 410029245 837121561 818192027 957862197 561300243 680452400 615070655 983036192 33692162 429345359 662727825 729507416 196326217 492117137 321497032 826580833 467845911 954215029 568111885 991315014 474368266 973883996 168564894 451528912 962013204 982573403 116724702 436624795 903797211 978257752 838803943 942373973 597768950 832455106 586369324 871034869 253902993 976923786 886125449 990493854 328202422 450767716 135030154 358362101 274704138 386186966 935987677 973906967 722486621 744278379 640506718 766226341 558543483 778678041 275471283 874066535 949786945 975578291 856820048 936864212 782727418 920357485 801091009 907125244 582349929 808136823 223498991 290707160 984017420 987017491 301553431 600691067 482145270 900403788 396034690 942117310 693351902 983252780 210113251 583582068 962703069 999167856 638407017 896205538 963905203 988346942 244551800 933763273 232444860 570144292 588753193 757260019 526485677 850197572 200745362 784655929 474857128 484773258 390988155 657640424 228424272 536670522 944739584 957452950 226398289 606684156 744930136 900843462 845794146 862936021 931887467 932766369 157901355 278048235 724721167 949646166 581156646 939692933 428874493 483884308 864428856 988299329 370276068 446643345 914536255 963848454 157618335 927166065 522765275 984266716 369864630 396365243 404308870 553776319 734943453 874396099 351776092 962612979 736320407 899636510 134034427 589620258 203511662 693042850 224371925 339454604 189261717 420921376 288426971 759947072 4652126 941234707 790748900 970762185 24413673 255391902 742446147 926237129 375711073 823222177 292652115 406816192 722962402 883128871 741105396 767839420 126286818 932038420 600627479 651767411 845681765 877466564 938648845 958072819 669177864 861026437 817072442 831282634 48032381 244571793 390334539 892079647 199282633 513640697 946308776 982761131 882753823 970091701 857539146 935382080 694855320 712237584 125793399 460357295 555566667 883512259 528430408 861775925 618186281 909125929 994323516 997355164 31835382 862766868 988886634 993055766 75800327 555703374 977984080 978924147 310465255 800550191 861979424 862393992 393809471 791707077 464724802 946290529 937936294 941140910 890748219 940808723 26984755 525443614 124991974 138189498 813923108 837326850 941101418 943554744 54314728 233530890 848608314 878559518 872702903 880593727 855477931 940961986 100913305 731195469 291136358 472525476 656550419 844533301 566058336 633864289 189059201 592946428 97543214 870412304 10350813 696529786 782573180 816366122 181452930 580045589 585099097 684741743 173586797 953172623 641181877 909326053 670027022 918899238 806876361 929258080 497792081 625710640 520133496 890559723 663433535 925214636 866963359 900438564 919501643 992653228 601426292 639871811 763762288 826885740 969011223 993889132 992144177 999507270 112228537 921803547 921439007 934857589 826770473 903854949 190384598 509695353 71123352 670372959 243344849 778656648 423870518 977710679 94289815 819961339 690213941 690876687 448695859 678483833 497707574 518976991 923369545 978082118 552875522 635957635 444181149 748873236 997523727 999969924 527442335 946537896 650226540 883092788 500345397 562464168 993430908 998634357 859610328 911825319 459456117 557477361 149762702 897233825 826800067 981497981 291666842 783288664 708409024 807588238 175687866 876186908 831366139 979301919 487096964 804716800 978631997 990850194 548160178 560920966 840070903 877643844 915838476 951461615 506397268 761608134 281251064 798361285 639883340 937643024 867610123 893914433 112313073 781802292 137387013 669979240 659989156 810257891 315336511 716119544 911838186 962146521 928970694 949589460 843222003 861913653 719364208 776965353 820143740 854368732 518751373 615904782 785611595 828467364 879599634 934433229 928721195 964857284 897547143 917408683 682355680 864748431 509273098 961111675 139617890 908742477 276728791 278041836 497832826 528745891 26939792 396464510 684311410 860010772 289098657 455312380 65204675 579559568 164551024 809127293 759270686 784716408 693943617 848109153 49661583 471879586 810141135 827330630 315209113 996535338 694152757 951551959 676260404 836964762 373129865 745676540 131144495 988453127 949347647 989437423 813385952 875718222 177450226 300000925 907727815 929671244 879691977 915257700 643154590 675708567 601292036 670520471 605973275 778853330 109584371 236769450 430831060 682905178 673786351 812058910 650208994 688852364 912431694 973376206 179270743 610201758 668438683 728589427 397759433 785764510 765807184 818449590 218978132 402378701 392699968 884526933 813819462 873476667 226110504 740302404 508302404 689670412 738802928 783295848 138717030 725857394 243789605 939328995 783976163 969427510 25276156 764453317 389243669 575632636 382713832 439770097 249424079 829264528 104412217 188773683 190126564 593985060 251396154 680171435 864334012 941486357 872598372 922493233 6484698 196646626 452970723 780066253 701576703 859677089 408143748 505196094 422305270 793237166 515671889 950403384 947736716 951804467 97940220 378639696 647894010 940648607 633112453 913531329 400996696 668721930 944463718 999065490 972591830 980477246 424208871 571832584 286144565 964489601 280714445 707299092 771555118 913177847 131057592 142883309 100696829 374592365 647163509 889327533 201658008 249058017 946722281 965585318 374028700 444805707 382555457 410681104 25030447 652033457 169697197 793700626 237656704 271161180 92242302 111842946 688791900 996970011 520937466 721087289 762556999 827822136 369818062 840420898 968245316 999457527 748735128 905374098 584812097 831022671 151044825 636877805 107491128 421083512 825445591 883380301 878731039 994486078 495113365 586167054 636955792 948393517 670793024 811902633 199300832 584569097 485931464 677063652 449593250 758554188 826147007 989396151 889994358 894477469 310641023 845225607 846688007 847744312 562986407 749079605 131239532 970551151 605658968 807972599 241689064 552697602 195770459 583966330 759682501 962802675 329018243 810802308 32938177 875230164 502921587 756656010 780289987 780312451 236149415 438043460 71292925 435667312 348928643 842720799 793738141 932735902 686435520 768472519 573238484 603859831 823028730 884487900 361075665 662762057 717904910 753371020 566354228 573953124 746441139 977179279 289641180 959752490 884628076 945240828 491355144 592320429 597193879 966710349 692384090 760882670 431746490 889366948 278073513 493679563 642958363 691712576 855399622 919823186 678666793 809573171 988790612 996874811 468810302 551831913 959818275 989200868 39166226 955228334 295086885 649722108 928008690 996665774 381308747 679449777 556954816 748344649 315063686 944889677 363311452 708248737 596451563 915429561 174726025 738810654 764144447 825471861 568349606 824222770 170220967 186202556 123714041 324539751 513236180 744605547 195035748 284897677 820015344 878178426 215148131 553594306 621701251 913389852 663789407 665698594 907048687 998748157 149152554 665917073 641105926 730929946 271411634 634632868 103982315 915174289 926377265 952856761 314600235 519486718 492864751 566269308 644633180 662111502 967562746 968150592 752995330 994809141 896558226 951269269 943356425 962767372 87475024 926042709 584909527 725847605 722846108 878247015 417424075 876407447 352506860 886348109 257843657 642310813 273843246 313131667 222294294 332422031 299137542 754227119 15345297 437769702 81167520 556085794 370959966 651830163 820152337 841617561 932205677 965235815 161461486 517394867 827598700 835981873 924086444 980572010 96888145 492611873 17311622 338604599 299366831 910137783 170783612 965424347 487205283 912876091 807992563 900404432 679052531 780295298 867788153 979348439 530019427 646258764 97283410 112052296 778004324 897818506 393839541 558892302 278454333 617945507 861695747 863349388 955489206 957668956 662041842 738979442 698324420 766128661 419749244 848632716 927229283 986523418 149672524 973689599 425032259 617360978 174687644 950097826 728495425 858583961 39825447 420125940 32298933 435467778 796092995 919309940 322636657 658703019 506657041 881371707 46203801 153627909 231875916 763750133 904304847 974082200 939182927 984137984 849579637 986922343 226593608 647020885 505548649 629990455 315848532 817693266 924805350 946653160 903722485 975592075 643070438 721558185 759281436 993616671 810055685 860945489 389587483 498375203 590176287 612438155 478892364 811115321 355809919 684401677 998691088 999049804 431885872 954218090 462031698 522794578 442435503 669801222 792649000 912838302 919353570 980656725 941566846 963996089 333135974 879344632 362279893 472277889 427915008 680242029 422378083 648755747 355684345 748953806 133553327 547286422 280577767 690683855 312500974 907321456 799272500 911075075 231559223 510417936 484476264 766978315 318864774 560318246 346752690 834135766 329777073 914340420 250196216 980390727 184234390 498687875 506506841 648634828 977294337 995573895 397383926 710166120 461583626 942105453 481604020 917474501 951183592 952371157 832105934 933734456 239260887 369997323 708913327 775981181 428182076 856673668 241594140 558274258 138946551 798996125 70163723 72040977 290552778 990169083 390841597 830532227 36158861 402070947 907438193 930168079 18788130 806953761 358367919 374699053 84172506 353612756 247772489 420354972 470408569 581640704 967331830 983572145 719031868 875589270 319872101 704205828 536034219 678861946 955675814 969995728 277021242 586590876 150739913 617517620 195362919 642886520 15024210 285937400 657990450 835037934 46899583 542704413 626688429 787370484 339835909 477357534 29090253 204109643 778700187 964932485 431750462 923541131 1249105 221638908 499085265 678617691 620785303 884635779 367063072 614263151 87178592 343148042 27246485 721372536 971233282 989463326 561689164 928211765 741619773 800167765 489394107 555954097 773532143 853848648 40912383 361770995 929019235 989759139 840981144 995349921 603753420 913243523 570471980 586621383 595575110 623279970 871671174 948360505 162337144 253018398 140774152 383371566 100616009 612613380 205785048 860234877 429426862 436391222 707643181 790086676 630481902 919551083 773134925 927783947 428800355 899310519 936436415 943246008 455678117 581184554 113021535 758302901 617842201 974297319 539414883 712245984 758655746 768464143 691369235 888429224 195556325 308941540 821077730 972096110 887236930 944440376 526785281 601843458 75473358 656310285 348270627 903179062 163293018 905457853 456314299 670906463 596108348 944082538 287098851 634627256 218044005 922103210 792337015 947336815 107024032 581227043 421217737 779286527 953441000 956338522 866100994 903405695 171729801 422427597 309409958 988124936 137228777 409559784 713238878 833775698 38801866 587436024 642620551 732802775 459647394 533973442 405822988 788916944 131657770 807382809 562369998 695033624 854387633 930361327 783569075 911963644 536088289 656149775 87456071 491675952 216646147 519526159 348811143 962317200 864560306 902129278 933227871 993006244 174982304 224421150 828815053 879041498 68640958 474350869 325227246 370818776 359450541 377077664 598033605 643740597 90963524 458782365 986827336 991811378 346837546 993964683 888976356 981854622 930413799 973106902 546504524 792473957 112851490 945565456 142416148 832538671 659900392 697087657 481400169 839595685 304959509 357172178 103526524 582107816 466070862 878505397 825784431 979391270 205945108 762329836 467345534 632545196 511301379 786171513 618185009 740393494 732746362 797921419 782457818 796470360 371553954 838568271 830985275 835599434 993998103 998447661 362696043 598243668 171900153 342081359 614151592 761265477 885968808 938339453 199274833 788779879 745039048 854229611 192937587 467154297 116272958 507906257 454475668 486695890 745287059 886508771 21649065 26330093 164728856 261475522 398590558 399767874 14922650 951124590 674334911 946727163 767972132 831804675 457924634 542011009 116223939 720247198 683168290 858988159 182276160 483700961 813568286 819396535 746705572 857807464 345113337 380999056 840099495 881849338 446274450 641163801 100635294 982832255 304411722 771464173 709406369 783632037 895287380 970109171 187393457 933775843 202284790 580938072 228030746 379741044 661529215 694035136 716662455 891091171 380708721 790751667 256259074 618860028 16323188 650859748 613822449 988524147 638037789 746247597 598121316 642987761 251187467 502065595 887076798 901738825 100712576 880501245 596415830 906460717 338798310 960610869 337502195 724266308 16317348 923444642 92184949 95688607 140798597 677061078 772436081 955716376 145068839 331669511 605685707 850382645 56793725 754200917 179440699 722199450 333780683 814268857 180548921 318917816 58614099 922653153 151829277 407688833 177198351 479239868 410300593 544964683 680366076 983021622 585486168 925233571 914409407 931343992 821742842 943826877 676151398 677136678 692607899 851293449 331661742 769573417 189792607 475487805 424643670 975410577 311237527 803907047 596205191 741661169 530009604 989043928 924799106 936645018 281352739 298905972 674633489 721603076 841282221 905631652 965576211 979183704 683468482 733807243 867175904 886588033 368467183 548757846 237129807 548514482 173267010 222682428 282625094 505095484 75631751 313853245 236896719 420257280 877934181 880458163 72357272 824050488 328133351 718511154 149675220 217433642 997176475 997488960 974638005 981534094 277570577 858245408 588809792 739288772 736443974 931622689 87033010 164381899 398242605 547245367 636596735 803870547 881285913 951347700 60206680 352531376 530439262 921177544 722738005 851771604 58830441 346871478 803609874 926757467 292118844 472132870 601322170 676938108 758518955 857232601 643792081 664239030 627388601 629873134 460486275 889250339 773291932 892590969 934352970 962402093 658293290 821770805 568428357 961189862 60360386 399749750 501349380 715793181 541165456 861266039 983659115 995096651 737764135 953159287 635298313 804574423 630906104 732832186 621863671 629913436 422948771 789586234 602750779 931134052 215267957 368640699 674622216 950043483 471235372 529333825 543627450 545505484 765903675 844478069 258931456 803484432 557103556 589054289 425839231 928305828 937160525 940994351 253998306 288338014 307302586 461149001 837584726 919069206 706175145 893087195 770269588 842190179 218403262 308879498 926479091 974013335 1425390 349006036 368055933 725526842 387236543 851971706 853032045 973552289 528054846 596170753 857210953 945325463 306545075 641183711 195656476 912074613 941214565 996435315 367835761 968523527 561193979 763530582 276063340 658896278 619368444 640935934 688137266 862795718 761427562 982277167 192957788 962547508 668401689 757318376 505981144 941336441 405901984 587672101 512906291 811088714 450529400 908351106 589612600 893855478 938216129 969603051 253416622 279003138 243947714 839576313 359600283 373048487 795348161 972521106 893072435 899782778 504238067 602224126 66323944 106262697 729345734 964223138 425509521 735190514 799614976 823121278 890511849 997801852 508103018 914000458 531207698 921044530 818795692 871322511 40040485 476762553 760527780 969147484 906049999 961763133 780585102 829958728 857779795 899641714 603851713 956719862 89812548 513834520 314951956 797234740 602152177 790569428 576448634 763248229 714416290 800408651 527295379 951193717 288115759 699061860 799366304 893456239 513036809 968818949 676571060 970163091 218972143 700183002 177908147 519523146 237557188 891026376 771996082 860480519 456059089 555929581 76185638 605164101 265251142 909420366 629569294 871555073 173280643 603256459 301704358 352216324 324461079 443428511 185302165 958776734 449040672 679296720 707613641 760040697 283754695 401188578 859010644 923648212 315672182 921197512 43797109 247060551 585359681 780822716 235799948 907439146 685797836 797745728 613066427 697443813 759889707 906400156 757885792 943138524 65773995 811309741 99501131 811729980 331555935 411472451 515727378 648185809 670666912 782646638 107227885 515168489 174941528 695592693 518898979 846894189 349771361 357740777 632408350 868370206 85466804 682422284 488320453 535705064 915551788 959604676 133373198 219596791 847567424 859131580 132080980 383872807 25230645 922452084 350224214 479810468 172276669 498239533 48556290 989467609 27583055 348247677 29462887 503071202 791010412 825141808 801717226 820297572 360117067 727038889 882733680 975382230 244869016 802939127 774008190 956243071 461180280 578329321 992998615 997116293 276287701 690426203 528510104 843531751 737923713 853718907 751330511 894222729 52598842 492284730 304351305 980126397 20198539 99030315 42291394 245160416 75067593 285388077 769660292 992211224 513105398 656694832 101794981 127158311 754474015 846952617 427613338 580477011 720839718 924260430 944759139 955235941 157566704 671321898 383606442 903541957 427545327 688249394 344025841 475095456 566704061 992759575 283870984 391147617 750608790 808900708 427897449 648297707 732901995 974297711 84999805 275066051 739649899 874002612 741887553 800870692 849645235 941064265 26618776 438039270 455581591 899319093 716590638 931911026 999598144 999843849 501349909 834285997 192996322 769664840 258849644 261940840 22345052 890252787 720804280 866457823 921344070 985768644 996996583 999388571 42096182 758440607 510065111 669554814 797219413 934808564 897325785 957987515 396633974 789456697 454069553 880601262 615268712 985499293 780945177 904495072 230807543 759913113 518171502 703672859 632906264 835458368 536884558 771487413 791145833 835522731 829555782 905367872 124295827 661204010 576043301 599904557 799059666 893263605 137087646 435116827 317518856 489548649 803359761 923530486 379449839 918656479 102232255 895933045 497262675 569415003 35191994 291278329 417506421 588165202 311992245 427922393 29800905 186655881 7640851 226054549 358032327 988131178 408907033 937122071 471108327 823123183 621679894 754489453 860337388 880968467 172430048 359374188 466458448 631674653 404154596 472580801 502373158 950090110 909994491 940036284 783891197 944404030 24262555 533411603 925885162 936471040 755958479 785209732 217970161 231409189 674375793 762538324 331695853 905573923 376380286 760241480 607465689 636738213 929112221 998128398 811495296 877781954 601493743 680894683 684701554 828331061 330626656 540489451 327316094 504668120 391668453 572173149 234101441 315779275 403016258 542757183 919148598 973715605 117512970 194656812 834982955 889074825 1492020 349249308 624981607 870681050 598173985 982088446 144502948 447865938 182672608 265049597 86413626 505628035 390575835 952842391 710277646 857191362 843213840 908952969 592546730 645444525 860580458 899876709 783059479 879979627 288401965 562850910 825636359 857405268 989470606 995870464 854853883 969470667 399546237 683307306 806802106 861777236 827314298 959295486 653940407 705979599 196491076 558041227 691890491 852544945 735445617 823505084 89747887 789733824 9391871 822753479 838846186 950610231 20648957 761163201 969609349 991660701 916365758 948092416 348528528 726209602 975824048 982291999 378370696 647702958 583098359 808999699 815859282 983461079 548944881 789317806 259789839 503179905 274617741 579977297 394878119 627722576 747376028 928123008 975026259 995232300 607920385 974095728 666100355 836029760 24115741 535910882 416909452 741710838 23614941 543481886 623589242 669686134 582208969 722982120 551274805 571507590 778939984 826438806 835739245 952612598 809925600 904968281 965023148 994916202 311832902 492263927 998558662 999068039 233190336 587186512 745293589 987244040 184869444 447996603 422154299 698033200 292513549 804379378 170029275 340052391 744124930 982415341 233266087 961578143 239202210 255996780 788513428 932206194 117913447 790840637 729061522 988275992 76460857 596630514 907906000 943202098 279887406 856425965 171990717 346320551 353052681 836622734 267691995 724166387 225520002 738797010 177991519 991996029 259303929 864335418 709739996 969811705 86961838 208957417 624878372 858473524 873055195 930833481 526273254 942345084 925687855 926126949 247074144 983578602 311287689 927409286 854320416 902540543 25032748 879124585 867008883 987627357 143753290 918951976 226841547 505401612 734103194 878031602 605368765 723877319 21939931 775917095 919015045 995117047 91977394 520267264 873220579 986352032 35683459 756135059 218572028 318913467 194738783 493633579 655101356 824587191 722343351 744102406 232742213 395964563 579263649 771800160 889288136 928107429 51608942 506624516 823249406 982275859 683475513 735467019 979292223 992201397 639177780 649022235 707648791 800481231 855569339 880991730 669113493 717393127 864373138 929684668 722664809 731855910 977637095 997676841 414889058 884154308 486369913 529097259 107474161 169834138 480105884 622074855 848648674 885773424 654145314 871616587 223611526 717133385 261087172 861668853 806311431 893255445 66212093 738226234 337978703 949166592 21770799 869494708 740429498 761682280 62396775 499579210 269223542 924437206 551889439 770689334 465763136 797734587 337997821 790744869 557253351 697319280 662812600 703677352 114365134 576760810 802687520 910733365 601991501 711916568 679012436 889541964 354498120 989608390 216185876 794021626 505209996 887420505 436368650 746232466 181072685 847764088 414895209 621614422 16863144 81766681 566739736 736010968 529034616 645401572 962689399 999515960 63821483 880059060 719149825 795401104 431803389 522838631 123209243 563241294 365489742 536638974 52358333 708548015 12993920 823084158 954870763 961075647 483415472 565241202 687912511 981270939 656996258 732441429 372019291 435256731 289527395 726268965 791642386 877605216 92672091 556431604 499806991 664449273 489001516 920867131 941116453 981961155 241033628 961302529 99359303 237780712 525491383 734944109 844808840 911311719 293803224 858295136 146544671 984630984 375713683 561938397 575460493 912930565 649766919 936309834 833690714 857542622 569414204 766705958 542090941 792673168 72450014 469702973 125608944 569726793 149016892 481855940 791844095 937186111 987871410 995716621 705348479 935948033 600191051 655703085 310187945 317615616 364968407 956957240 499826934 664599776 604777005 702268661 568523970 935013776 845612225 951764819 491502192 673466548 309710712 449784851 935253797 950591590 854994938 940307079 236680710 417036296 371632916 736535323 870234108 955193657 952975837 983489047 799127110 917273423 791439375 803821860 45632394 558784683 614926065 615355332 235936781 546233849 606384923 798007287 362678511 967836672 426819865 763984940 989850929 993534614 144696729 951793533 178956383 557306464 872264121 913641625 339402307 700090034 870274921 944082702 474926003 987478833 490302131 594434169 732380867 953794666 321775686 541802541 442575598 856668526 720756780 972600059 752415260 976885462 29857837 616498912 187657520 391510844 656303287 883405447 261391106 949115345 127960992 184860558 914083712 940678040 844262330 868675120 476437766 877200071 633051021 666531291 854031313 949505152 842815645 893903562 723147949 949568833 995487396 998445940 492229671 613364219 330717972 908091582 570041364 636475588 713737484 817987298 577847452 719361611 997911055 999085615 763929580 932800354 38174449 561019565 361964699 656234917 550866527 557644506 100488221 415451964 786401399 809329628 68326469 817778202 25663570 209566722 349516830 565512189 710133192 938313295 288509596 428317877 551056127 876597239 181798573 640538747 79255512 772523701 273286606 314285533 868927192 948866501 803467392 958541734 490573463 853287584 745647881 880473884 41719879 982660414 258524215 543349908 837710659 926817849 724683055 973771630 336722616 766960123 670046609 956951446 183764202 703399420 908447930 951339775 319037032 761736655 254425868 730944235 7926934 166145757 308149058 694742792 326111214 576255456 665761879 922881747 13771031 949902649 991758651 994766094 937223886 969219391 683326630 942901391 463605215 907477349 702143661 921994647 743716413 927902311 18675553 758260198 347261562 982449547 557653782 581971723 416692048 539614420 63658647 833523676 865290529 905229585 298467523 666861877 292039439 843053614 254030033 335995868 160657321 515224127 709020151 840198322 849277678 925677075 803341304 916768207 32863204 539438777 956221435 985925121 4219041 491556957 802083798 849794429 667234818 852481385 898994096 944038575 999786306 999969914 154850626 475215918 262482986 860148661 789369681 888081097 390664633 835817263 518068015 889426459 188101975 715393740 796327934 891413544 889195607 994056639 391180066 551201648 935755084 978831045 896161916 956306072 24311997 205058406 991881228 994881429 684300003 940597090 962215626 989067975 989994155 990551246 591395550 630960626 346798129 843912195 969291926 978099597 792619849 828985420 599141123 813690038 273690632 307145621 396806425 987060186 390046286 529279470 323028009 867062368 641846414 994582700 494198722 516304799 205070648 559850502 11650323 999703812 967000163 980136547 564845036 921035110 4471834 528615636 21145805 623228739 426767538 591503151 567131824 724205787 423386610 766282928 773621044 859050662 994008414 996818432 388689354 979682944 998784746 998953548 711161048 765212611 306174202 597303476 872293990 910920781 920522513 966721061 623912329 648946502 493058951 886958308 632144191 998145124 13328563 447241170 457484755 976254440 61195006 155947648 194777118 245040049 487481325 998571104 130628831 482924925 964662073 964893811 599550668 864297971 980268907 990288224 436696364 833577510 347146135 723895773 688355101 906367428 976349870 996190248 345596712 945946158 122437286 307865703 744735588 857969190 853896290 974226129 529747334 577465756 397231409 466353140 993177794 996663147 185591991 948243893 846926571 991784995 160250906 880117961 577619202 787079053 886890100 997120719 562177705 852214879 739587569 860630730 275006900 715126849 801697953 995849743 512829224 930169220 24214489 111636430 915188680 967126949 658429643 669617452 724196286 946699112 781103380 965710114 88803982 625006052 849660518 917031812 852574508 887054240 757182495 818706951 57683085 626877722 353263301 579800252 448186117 572577090 43205042 516761615 644253670 683840036 475586516 888370716 89293857 242396940 346452388 397756697 455652641 603745907 663132786 860867055 390098285 864161917 252974013 371831005 413768661 936512655 947069793 991439593 457261178 529168277 225072707 471755795 223321732 500968255 649253518 808077646 362905094 940509696 171203544 642270272 249428837 841384228 8402549 384664743 259303425 911951066 394133638 472305490 936928101 988352756 955650136 968870750 476747318 559712272 892943306 932586661 307153314 830417439 827117367 929992564 87998045 832397539 816387300 855698689 623716565 939181125 659162726 759008356 143499850 662993366 424792717 437376161 117191642 395129609 52215481 634047667 630271393 873376460 960284994 973283828 27528779 955206433 534677532 981186607 976530488 980542015 319715726 933327735 985561510 991342743 253779217 261344880 889635672 943004829 961481908 966736467 588902187 984141456 629925661 946449501 855809596 998138734 63825227 754554608 320306167 897026631 261555153 495198429 769913378 809943800 315738904 880238794 15875120 768398475 783832905 867560305 864386884 890227204 30282916 963044590 244905664 823775343 527732957 834842372 995103515 996754344 570719293 694410495 908061432 965962661 980249588 980851567 385559934 904263734 157777679 938951755 381249509 614421114 209019309 973675573 751112971 903220064 876281176 893064815 883652130 936131532 786188901 882770680 809900451 936977573 764416154 777540480 868014225 933384235 660548967 883482847 123069066 733231940 419704723 587702541 35249621 835701600 454875302 845338065 775840229 910053934 577050155 738167531 834433655 984103626 904080597 907497806 366347689 863538472 566049082 829153646 689651277 715194974 862752168 973602656 79488402 360353839 203687744 822787792 791010734 826794917 135788036 484391985 140895634 916540392 935569962 975873069 56468723 120525821 596683513 875961045 166020724 505775632 191047188 278988835 414136734 770118593 830274742 874716136 811555513 838683906 168977170 317336588 812880976 940185772 273442884 483201943 787403645 877520353 855811950 950238270 777856853 948854560 172747415 685816536 842978496 972339810 545036707 613575727 255796770 355624315 94434181 116176167 48978644 51256083 462877296 564353677 809912375 855717523 245672140 866462190 931472791 982704538 731788952 943087918 789137218 969785798 181758802 311318192 867001396 972525561 267696519 638617333 324464056 340864473 164228053 448099656 670524332 804110394 470833429 842093752 357210498 744507676 118921911 584952849 620802379 844828003 119437339 565608328 64367291 122052036 104047895 794841685 474673583 952812120 29755249 436145728 408616050 424352735 467510270 489842774 614305726 969288944 856476472 963732485 163850931 401286526 142596026 419607035 236279582 722760891 206175216 310331088 48181831 138272322 712616530 716542624 187603004 881732530 581768724 788680502 410132770 480799469 935528339 987095671 544102037 666931450 689512004 943608341 45990990 861597305 463896561 740038419 454264962 884204840 335104312 596915219 175854779 660252954 847235557 964031751 823461257 940056581 385130907 476155951 777687990 818913705 223657195 431161296 556646588 873376488 912414064 937507684 600089978 995891699 901609955 992040299 905931753 969180217 363242573 911422056 571532350 703881556 226754073 605782459 960255666 973751315 501980419 943405994 678762201 757757652 262407636 682953833 959126668 989739785 926139514 931652784 394461195 744429461 527133601 558199172 701639787 725627520 59214188 516324871 297233551 546443572 702878393 791415043 343539178 854572159 822985063 997353997 905315176 999395256 296613134 651425512 710482759 965476604 827914149 979361570 460291480 475150579 185657016 348119853 597983115 783143921 116396892 841436694 546460329 745993642 794154516 875607690 682670395 978557386 872321321 972752644 527987539 580581667 109240349 368197404 937721222 966787815 446100950 711770517 622653836 911411773 474119404 816881524 555289405 635098914 728515350 886289880 174440941 810821980 834330076 958272656 833405495 932681584 235480920 669702337 866322607 957592759 875886764 909189468 984836986 987279983 419630133 868516202 615993353 989698085 968297621 970614906 377773397 798262028 506604347 672287822 882035056 922618766 888666258 916743546 764960087 944406208 859029049 984838509 35607691 685352992 526612490 965612058 92851238 491127027 139345768 342536323 152185086 161263847 12403393 657635587 438419032 664579004 314087963 930442820 174965806 332002451 877261382 978710625 230884193 796263989 858374907 918367835 788279183 833736635 577768449 877242174 231447085 584794788 354602183 790824279 360764900 981090049 416050280 592677741 302989555 828244827 555666603 982298197 27340972 544784344 42467237 618516732 942238899 964546168 903534019 911009872 665141509 837116784 797131124 968634762 445625941 447613359 165412462 350703977 694987790 955210110 411014090 978416376 442507091 911699891 465462773 587254821 374782501 721719303 246877681 804223274 789575933 960467033 935016531 970030812 776143899 910217974 524419735 871611076 974058581 975777657 52175803 835324277 730477524 950539648 471139736 781420694 657081202 979171246 657412521 675659070 182894534 461470550 91765179 129290683 375058073 958835316 643317495 945786764 145843325 695194568 532338113 834622961 95158288 890850733 598168496 743656001 644289716 838285887 218566252 828189828 988058151 994537550 104813371 127403273 848790691 891694193 835909249 933679923 272215829 718568445 525780969 994746846 782548714 801191967 636144367 683700739 684358774 787119685 299441529 327442478 283253971 344616291 886648934 992135680 354371761 882923504 918936642 932880055 68171843 856094032 520022175 893094039 378157859 710143276 75341013 176658350 639946136 787195762 811334907 904845488 848964863 997125924 898155471 980825364 249587624 323146922 787354987 958916413 760284356 828954647 627683308 871865307 55120534 849998674 749220194 877753661 194331496 271730097 927512730 959530850 619746883 898239666 114339349 575715948 953401807 985681519 936667343 961564661 692488188 774180320 449090431 962490189 112987014 647698727 95685927 641189268 623414406 830657582 938421256 977696317 226114525 878518330 770126588 918865669 969060263 987690372 50513446 955835690 662010584 819739585 217546683 279900689 866280504 889070507 321733223 643993013 51443730 807752212 878127505 950178062 511661869 523343884 435993122 778448555 562855117 671637151 972619488 997969615 943107271 954394914 484484298 640333032 920176145 924282194 569669855 741798870 29908874 282073994 819342606 958302575 544965133 849614374 800375332 848600580 722327788 921413651 365935459 898476919 955253575 988429537 809605671 856703659 125707568 769801275 93232921 127736789 593126045 716644686 578375370 812045598 642100467 714360798 289738488 561131983 464788748 619579322 12192766 436301314 417266223 596465650 410553884 442068070 519392741 726574255 550152778 996180414 821851981 971028082 999959684 999972790 424039399 751337512 872136511 981698392 845061033 846857262 280428408 332592062 71148693 658625264 561649887 583587599 821212899 965605124 600304137 808941918 150187047 360753336 827316957 875820998 986818282 989809320 229013462 298847636 617869635 817649580 842483640 971224676 958383961 964436861 319030089 538546987 829333342 861708865 399812882 682006558 647977023 707123741 208660886 679271726 820354567 977716357 97388546 397293570 737183250 745627319 141297105 761350340 162419324 606659581 661985943 905095116 469320425 602226885 201624939 965245326 837911193 859314359 428823021 580900392 875895571 889579368 757121157 928203416 110986583 874367828 434398495 512571414 826694742 851973713 139412391 434044936 372551732 659464393 350059402 375228797 110394625 809327730 720367929 941519360 106072140 413643668 212538360 710344221 617473662 770194249 767952797 827113180 541426597 846318534 998731429 999513048 747904937 807787130 937955759 995483349 799069505 806628915 92802632 618822249 150622595 233364075 534787567 787269427 188911971 347377950 357335287 571116211 587614121 940224286 908636688 949310854 38301195 216341507 746058789 895891242 690973101 932003803 64580497 446370278 15882865 140740245 865316443 972370175 438860653 679403773 816691933 905821046 245512165 871025154 273379727 679332586 922729001 970962748 867651250 995344169 880420728 933318795 179461846 407678116 146053427 598566017 263960576 534709803 698545887 753555819 680806996 929260559 146505529 934938138 223401480 727736600 584378858 622690407 865635055 990259210 271406829 704893334 582242729 620662290 742747827 958938034 480635656 755841234 652903353 769344305 167319270 428268974 79578172 504926410 30517120 558410945 734216063 924050280 669372660 792661871 726726799 783333356 451375178 503383550 535961160 927475504 392106420 484274307 448302927 826206119 791088243 871253676 706431156 990828567 708092541 971813737 294707762 933199630 162995735 383880749 463208212 607056404 698300628 931723180 156589986 219802553 514823467 705136837 389782945 396354265 784599175 838430813 952675773 994437770 667418475 822296239 493838907 816400641 324638281 350889078 67032346 569172410 316173398 400104211 730008667 807197478 615924433 648603788 806534600 992635752 117197835 843905334 604836056 810234211 882890822 964817922 700096334 808533325 179485922 641058849 947280674 976499131 620723530 977314106 6228045 32619946 451709304 735914593 39262232 180275485 255067643 690628520 798260175 909952694 262712881 939839501 894570171 924122126 829377153 887844080 384923974 837388852 770299094 870837270 931481622 940617143 199290458 690400282 187182194 190106084 117312919 627118651 477865167 661605561 68156904 146660148 984048135 991667303 572333887 967367797 460745149 634626653 506530687 544508841 763835158 916732458 169317393 398898194 832795131 914889352 267698722 965327523 844374891 900420731 510365395 706800018 997685068 998534599 789560670 957137029 425407556 905796208 204145337 961204805 480073438 821680817 295724594 960841825 522295507 986199026 512714859 914238148 900298012 961123718 315869179 902125039 874124923 919791708 716356461 759205369 366022404 851136343 50968035 216576281 260084085 983752234 223391853 357701003 173917860 679968334 920819339 950287978 354395919 811243232 771726690 959470422 66333250 169730958 998845772 999571796 816110514 845942694 404196373 562249040 498779928 650271492 872897313 940598657 886992064 925118459 752733836 775317387 48014591 809475376 916079290 938090134 627008685 817087554 245977749 961174063 182176485 389444096 675465942 911569899 714368235 746794885 824543936 859468460 514247088 640259513 717455197 970730511 29795319 94098589 256913161 401002420 120415615 271315308 278779509 405015586 413108995 620914668 776502980 831570083 683415926 749778901 998694625 999399282 47309736 537856363 149047806 395608137 149732701 448123596 64111569 789047606 777309340 814613091 52614590 549594777 516857877 625992084 460760105 798433621 569977859 865802451 398377489 519824611 578103757 656119959 276952571 356805625 683215786 744936485 337306776 628112418 660249546 997069576 962214328 994205186 866594927 926770321 750559037 973368611 752191706 961136308 749299759 844412417 973939553 982458448 682964418 957042092 364445520 916160757 301824069 328036324 449283595 660288066 115085313 524414956 340525595 780469758 968689965 995145518 889689219 932576709 891582602 969566124 776199770 950396503 608205365 698965275 53204899 726101874 778870476 944783061 516567765 896596150 153206332 902305225 998041426 998386045 4684244 449391102 998396479 998477059 297609676 988470796 61555289 891677761 484676988 711886093 589401163 642311400 498919782 986738173 338637687 684277686 240950680 468534327 327286916 735358457 762258445 947648486 730792361 799533072 908098265 974486924 6676463 806237078 799214727 956554611 805719859 926408890 769410063 938815448 9296856 352664195 26938683 806744090 299145904 665691883 951430988 967748864 866862087 914073749 664925119 959091282 697104902 804906308 877308394 919517092 738733168 741704451 807565953 944641312 65114139 590123798 174837764 634529160 338735810 407165252 154556489 824393203 414337881 599955906 721406214 845164167 485268803 931094354 905241127 993607135 599414263 683458395 670016305 874843804 533300896 546962916 365964486 790121308 898071149 980256876 584099995 876083408 671434493 865792570 824110263 962760829 14411421 347477325 647785064 922428364 89452735 480359489 559756383 702740982 545200383 551677534 455863024 726050209 556538290 604560793 728887665 854275149 640629445 954452007 307784517 331390123 829869760 982777283 710017979 913790215 648824515 962305253 266053016 709203932 874028363 948375336 69727278 592034766 503166212 522943038 94030089 501571476 435613036 719128428 769772118 927104469 644586001 958031688 154634759 805424813 215705910 772208376 529267998 996485923 603711156 813268874 115611406 828891934 134660854 408742768 307248588 912971927 785721116 942491888 684999320 713966469 870218979 971958864 751170825 993350683 465797446 570708946 227266491 702339663 383972173 647972373 128019400 608763407 354460834 941542508 899633366 907260694 858250012 951205825 678089090 684971936 874323798 885275421 45024090 297478692 990499591 993746247 858657001 859403019 604171691 642632707 160054865 719688485 557850684 924135770 268590084 955217218 498231781 680505389 550966309 767401933 210480001 703774235 343307898 496957156 423190628 979561723 432659819 765868406 215497099 903970207 332738161 675399372 853797594 856848580 955876028 992226824 463071421 653256879 970277439 990972449 238609088 572696290 385450906 611425416 431122636 960195189 684177713 970616336 9361725 430634349 674183624 803445086 590471308 793885787 494894526 531199261 703130725 780312135 590298111 935590793 150619825 652474273 135596194 531027201 205099180 726136163 53687958 309682783 983287757 987591431 246180371 926312681 269980103 373204347 678849536 731920970 767498005 919595861 938119170 975852620 600433320 744281289 719691339 747265474 876976152 944563765 318938008 454694711 115347920 433664427 345387939 534281474 279915167 576098763 348295889 608735756 272587638 916410765 997988331 998135081 481438999 745813618 830646835 983137782 783294917 890100794 231068094 741164945 513297004 865183240 236845652 933277337 653614885 920922760 117601826 969161692 518649120 943361234 428763341 597285234 84847254 770999918 486379885 601762122 867223929 948120664 405261042 514005178 768230916 808335994 986338349 998405106 409879753 485434692 10101408 721229489 599887395 660921056 32786966 618175348 892045497 999056080 574700518 762385699 512588253 788878297 93262344 542675863 987685742 993498892 703336587 704847148 604080056 802770684 440914696 610895403 58785909 465767867 283551472 467240532 183307740 980809234 160276746 609963432 519982418 692344744 615738911 972892192 331751195 686616772 802027267 878281408 959966493 979639702 233892613 725632971 358147496 899411643 480126958 787679952 636494998 971178334 50482913 591195759 339402359 479134828 828637976 975706300 371443188 589619282 412482331 949294499 211380305 720479861 690329970 864020384 268503437 912410833 555730582 773641250 533320594 950452512 165338635 175840398 693544653 894311577 512774163 688423077 867560755 974029904 545493233 563411473 178690851 934393183 201691777 899950706 479017791 563535441 756830316 804369569 376825558 448605893 871336517 893533206 542360803 838628132 273110541 312686511 995818848 999558371 903543253 911035328 1677499 882367752 771780270 777104399 162246545 237339741 748593796 814094334 48165190 491059250 620826599 919928395 30780875 652254366 439805172 974610720 637424649 769781364 252504744 302816925 20012686 940205692 659397241 848998476 817887866 979679074 189044618 779091568 703370908 920317612 955395409 996067713 696576805 749565050 700569920 892620353 446694764 513867321 276696204 335773887 847303932 910951266 677447784 931272344 716250686 848792746 5496979 552974740 931064434 980831512 873804193 997191118 497651256 609820253 674933676 939171409 437069665 992407692 37168934 112672638 560649192 830898321 680223190 853462952 287412752 493851397 172763599 698270713 903360610 939097478 992624227 999632140 445594985 845731507 972002129 974983831 275456901 786114852 711749834 917854509 275162188 372088687 506249316 883184275 657737615 816297128 921450695 981172458 162358179 257506793 401138782 837320107 575734922 810205684 181131032 381358300 373910973 840618743 156863733 366288508 989288723 993813624 855428592 909580383 134313626 823278367 949454624 950861149 80486204 750084323 382768638 401286112 226307358 729530446 678190241 781607222 78150991 708152583 466471271 471476879 791037108 903165206 67436672 665301596 83448978 728181580 778989570 939629759 30962386 848924699 375183361 865265063 563866354 594538978 79400223 928434642 724365874 840755897 314509580 400005718 915807020 989661905 810797395 841400948 911782803 914704512 701347088 732975523 829517513 892645034 50975136 149800167 388927647 771097836 706081251 722774906 809206167 931098024 257540420 540989560 765877235 947279794 960773578 963526525 872833816 953084384 673702172 726329383 659976766 846508146 602044540 861224517 260581180 965482424 117722369 427023519 741386800 779741027 3551873 606533728 826453805 838128774 784405203 826538959 805583369 842538798 203916350 925644871 821030093 884148432 956402987 983421723 741934952 783626806 886481282 947455154 200144621 576733151 249782277 912746695 453289517 689951276 906593493 956474077 16860796 611672560 293236807 799377886 44375485 716144892 15869899 245546155 323871183 903939368 656179531 834258417 204536439 542065591 365947780 369959158 88397921 202925996 297635036 490613462 357165607 472916139 383709953 636646889 730675560 964929581 852854386 853655903 616595518 981838668 503271369 813559257 926095238 968585388 206397739 371198232 822542624 911067381 623844546 902764551 609428585 854107376 200943486 913867042 140112511 453428491 902496745 977782850 554828881 843715907 140319390 361925396 431003377 786199104 64172357 627812348 834900977 963833642 341198434 941820163 357685252 384047439 19466653 567746663 638079644 762954701 207678775 369761074 618658514 840373780 534742726 924548763 695373820 882566423 35025955 603324212 972962274 984659470 3979693 207938891 220538040 927328013 754669321 764434392 87847336 113603926 607368346 630828978 617274206 908765596 266137991 518163110 171232030 947774641 797324405 850550604 936649988 963933299 630957878 930523728 285019690 646609916 226006370 919768621 410674451 487974624 321826341 907530091 798574764 861807221 425877475 568618246 938730759 965891772 656476986 980252070 605558199 822051109 929145906 939657788 733306670 932596626 295039938 521775945 729355466 812161007 69503517 903724495 365571012 438603385 579083773 967182805 451556639 922371591 192296227 618997320 294232064 653979941 154936357 180628371 280610283 398502886 258581303 747273406 529673551 985298880 812632225 858068033 141485445 396555284 785975990 988361101 847213480 988247414 746253786 791383644 861833686 927638316 950428761 992313552 333766793 507124327 820172923 928172729 970182882 997863697 598166847 974882025 381387725 827907797 296679402 890119352 914709550 952964738 565656143 727595367 557307710 957651729 289276497 958938461 984580123 991227806 809811381 883232083 662909568 741903160 867282075 960913547 55923769 598920461 892140702 964855515 285196501 628005177 782837285 994849837 831377538 957058295 386637602 759161866 200057510 672454278 307295932 409306266 532091282 610599353 828008548 900063695 392403990 416224999 313432970 698486542 655657841 684100684 37034187 412953441 508289870 966614683 417204250 860381110 565387149 970404832 38685705 785032400 366244752 804090141 312594274 653880488 306840370 547705725 514571988 825021683 842562747 850171230 587635769 822519087 397485712 866352912 20636459 626518481 406185133 605392045 387355682 410980156 217539793 870897468 542811268 667221757 497553499 873464278 791263755 987765083 176192892 509672361 786366103 908022845 745903803 987941184 852355015 972296427 218099416 756167141 253961096 838217917 502176798 717482880 570406059 879757691 580873267 935093974 181345874 784564946 224225991 294225249 597137166 845948327 693627555 748752499 790447039 829437906 96067368 282261203 584419254 792836981 533705706 606029636 196393791 529368980 785723205 860525946 177998202 363041191 175843649 726689314 878290345 962604339 39785527 682952398 179684798 973375980 718708948 926013798 987585711 993434457 209798802 266926973 276175722 606326236 267384541 488515158 453320309 459956990 607109785 943837432 314750618 948904844 712509906 809520642 630309228 786710281 463583815 792512570 851349099 957344490 264444444 470596152 600812110 672062565 320730239 512973003 135811544 851972513 289868973 998170972 60914732 958022167 237302333 969033044 170312455 622237947 496771604 948386527 461918882 987602127 135429591 419576040 134686472 475293327 917820035 968088420 968415669 988037444 942296591 961707892 188197446 828145952 241056694 913503622 688589657 956193636 29464272 252971343 492578243 891735067 784666876 943200519 381016006 663757449 678788194 872546137 364155812 650333556 739049476 848951858 726882632 926383482 711730748 932572105 785406400 962672468 369158879 454462023 965936188 975559789 750578688 778457938 101181453 892540138 252626330 738009835 378776667 748929280 539929301 774046204 885483615 954049567 119851470 724671338 94207814 540329736 580488134 711766766 108486115 661886881 870427649 938217442 340554566 800095590 19622330 825080887 871677984 884254855 640596885 838092075 66576139 659594226 337253182 841140972 163774833 600372394 181874679 797827281 751049798 939959194 934633643 964884579 953033137 972582019 764408179 893859956 412130954 746670369 896953281 947148733 801114638 967086679 189279009 270044712 125842534 554105409 131715976 563800227 846117859 929480580 313366619 887373747 274504802 760414034 42654606 469325554 531440829 708766040 851878991 854730064 769590937 990855077 263274307 503168259 506623813 737266312 95424168 209312432 702622809 737938160 969945645 978278501 923945157 940254207 173591670 360034733 42336337 648164456 213427190 324836614 225711883 362117550 703962696 842691805 637831018 653797254 669911102 747734092 143994151 330959195 758537124 824333345 58264911 659929231 830896090 914043354 906774844 963049038 948439338 980896990 745098117 794428700 110860963 545003764 614373890 948439113 44113073 627260808 482121536 917826650 98088771 977795670 5900506 496406972 374687112 927697337 606881122 692729753 982780899 989136696 921640574 994624313 145897306 249103367 331961208 784645094 479991145 741343323 723309152 737065760 505978605 697747403 331932149 554784842 933454021 939628056 771383940 806943712 241046747 785613740 296752647 772053762 323879344 590385849 669799585 937810601 293458801 416490744 386254980 631886926 371821086 924396053 450954798 786510975 180950247 380008805 213273818 423637127 939867378 999017677 929967731 946620280 533593217 638483930 607946436 711575996 948734678 957853381 610619572 915792278 353681800 974497994 668707666 941997578 148095041 482678087 728632331 870789545 742882123 863562060 958394439 992296500 471237956 571923021 489033851 951022059 886721396 922398345 859782414 866991040 890864649 900534596 462649609 680508430 124375477 575068035 819365268 892901993 521109796 686191703 513316296 663084073 714283291 853298171 178046459 384058986 827500042 923260186 805192496 923132388 153441170 937130021 770814802 824292910 556072811 636190897 233729528 790618662 699681335 960098319 735486090 951544468 660163559 953206452 139585968 773967479 528624574 949347097 188595393 836746156 269362179 740951720 907222535 965723924 950028373 959681134 774820824 887364499 499098907 833812903 740446871 928603634 572750839 625764484 962917030 973375779 385427874 679104495 408886889 740675478 481365366 689507408 841046635 883103972 121247528 168436027 682734464 866812718 526942897 994945884 69161371 484412865 952225294 995387558 146981801 865638942 240688064 331976837 344957036 517297813 301837259 663879639 261724140 866037014 2438915 505977787 676020243 867473036 473303216 504124420 924865011 957608986 567711121 979839145 868232483 951335951 338498661 865248534 681645001 911696964 86928312 580577147 339689500 732568686 769956847 895187707 427310420 659853800 336816254 629358942 768171190 811356156 325823529 655063930 856584681 957283124 352651918 940444983 176624252 692799097 801494776 899612636 297412903 562355185 781495183 926214026 682795942 981351176 851729053 990469026 519828408 929287339 960828983 966227714 487636807 975821551 413078433 798576110 524991386 897011316 74608677 684106507 300108624 878867973 640623724 821626187 667970059 759523594 966684998 976251119 915841803 917464273 322631517 582377902 251927520 300800896 251262995 676282729 866769195 971478942 499700581 832876706 818986857 968380180 257742006 738937058 116371514 316761826 420971967 660133423 772997894 784042625 150482881 174341827 687855541 871997377 558771964 595718580 303415316 455781166 292386346 540985045 91798472 529497073 982129129 994324905 952118566 966147987 800585175 913335309 151616830 186050614 16335807 549219141 173446391 295627908 195592551 943805901 481751209 740906906 594485734 739206330 683042533 862965695 414679434 465042273 339507314 751072817 408042536 813695383 590822439 868727347 547588275 697624890 865906273 870830146 25110558 812380101 353831325 858997581 33768395 608965662 104601246 274783430 36771792 992013121 601331110 820958340 814548530 873156291 393347783 803835673 2074829 595091311 754332275 908850894 668530885 788953194 349174200 444473297 466538165 511193314 668120300 678596320 165947302 328786436 429632691 640196692 128015664 683312832 268210761 864620909 407798771 870631904 330004829 912655195 328444480 807007609 762868073 882824734 710620018 926382375 17496273 46415236 594768594 919764678 684354970 943916731 142900541 565032194 122478457 980677473 921227138 970327593 66055895 778880474 371286999 968542290 605875444 772857982 374353975 527092795 609360243 715378495 654008117 917595380 436815895 683237553 767790933 966596252 441536612 787491392 632052629 735432867 127976272 679334564 254625084 713849848 596802096 708234256 890697552 921667101 299516028 638925733 840160067 989276355 66168183 971385899 926513616 988629540 409664241 797162823 562539004 590307673 614944676 741699064 785458755 837275003 434222909 830769588 277233616 892770197 543259390 934066290 182748996 736404127 820784079 929223816 843129087 912501193 862974988 883651538 793754002 882749194 846863006 893958102 164852211 443360243 729724481 998212295 811897633 921957720 693533999 921506323 685313191 808411137 783232980 851231559 647253439 893212155 536562772 985380605 879458818 932094563 449335231 838592666 176612788 251255573 761955473 820634600 968248787 987125953 486315598 709861516 971921894 993322276 366483513 833344586 62888274 761884576 287261378 933043962 223154315 584160691 801937343 982698407 549987567 614382722 316788468 577797246 555396959 626282614 102476590 466263394 995448384 998058706 821437131 922839892 763858492 816196392 986005308 989886975 170582250 398476113 465489568 576811541 456318300 595607297 984553743 992217697 767760551 785002681 867655595 933604671 526618908 650400680 687856225 806376825 24620180 447666446 237012767 597059062 896704710 951942151 410346072 461864256 205659455 723305771 455011800 768437229 993621974 999119995 390021882 843730703 301634234 449038146 905885657 917690145 300773113 698220473 128829690 385970997 606399660 754948431 664132075 745609307 358871175 449670986 48025997 165361404 50600570 462463562 892712392 982202425 887508250 933841909 532220968 823302614 465966234 891181563 876081009 961606231 711974285 806188349 366753292 369402470 846613411 919244865 603427378 643369862 187344041 779316724 999585409 999774585 275639669 696468514 288248751 714233612 218333489 445802449 221709845 603324830 434518290 899458174 960775914 991547346 33400018 697902516 908990226 945186095 482629203 584114987 397787916 873281833 683940716 938839261 635326146 659551280 945050896 978007249 247479998 827116136 333403197 682564322 577813689 637524019 604937182 961673860 684240721 811663737 91864689 298337718 910122134 930532801 817824285 854594774 444937793 682843565 843449695 950938741 51973875 270595491 388259548 881359149 638002363 907699784 605306212 838273526 3404660 466280913 995527161 996803617 581170067 803010858 565086435 969579553 472184665 985240997 364838228 812212000 519419479 537691370 598032264 626479847 504757643 951582173 112925466 684483319 585794307 883674919 204346763 836641312 241004102 729314251 805577023 830665916 346972612 637654134 467864066 733994674 890283725 918474419 545702785 944301491 232257553 532717481 893712473 926725846 12370813 381784377 473171873 643932842 872953392 951707487 913651098 989683633 577801399 646407716 603765830 656820048 962991467 993179669 868770249 886196051 426415606 499576495 520583097 918401572 391351540 491815943 888171980 934840445 539110012 877269393 595358092 816584520 584413985 938086032 291024134 985979981 649550403 670322864 278855952 365129548 989143561 994338339 210655318 429456901 567326526 715383491 899179916 909692312 186328259 645521549 611030713 942041612 807137015 901931035 517353885 600801307 618098402 619601734 261401680 708116808 812120038 833425136 379559812 713480610 520947232 712882530 341987334 685953725 44966108 907982151 534776537 888833252 916111151 956184293 509093354 830243288 482482830 911971082 304288017 488962623 774220200 842818881 77223913 211830277 20959677 98427552 611378555 927208315 518262459 931456327 422354969 426056394 321422401 778084299 917376496 999190928 962611730 985838686 887981435 932343329 112048761 625356655 847308478 928924005 567988411 770388795 843916193 991985630 367177601 858459019 403029811 995651763 291044508 463541264 547886138 633997987 440103536 557429840 748601537 839683621 478913346 646606642 538155072 827493465 218938533 242221653 818499021 980665704 203128940 900729420 974942808 978919547 129239137 780240320 505760772 830510299 454439754 621190218 495205910 538519046 952026570 992936370 36908746 500707039 289344045 689916678 635922558 898777867 323447960 477424513 162834531 868710798 164990421 457537281 376045106 713057201 500771766 877792406 429277943 942443465 581908786 751549293 657818443 951293795 235985522 300155658 665474478 688662326 229623718 359243490 330186019 904059623 903289533 950269828 469764143 966437048 528729412 536065865 355729155 921123942 387978767 535198620 3952253 307621067 466212347 574588373 749303405 833127432 323994606 338269813 890203874 977079011 230271651 398006704 339989989 953283916 522164116 695466028 525275907 972959072 173091025 743336537 737988818 923181033 667240430 998599024 104736544 200047473 33463533 90574615 913682198 926134760 136655119 362993878 326538361 737770582 927991225 993474700 765681955 803350926 311831132 905533867 592175086 841013926 902774083 963855214 165031499 274489529 210971522 800306469 325969675 784711533 942818259 993996827 518328074 649739281 857714770 955147435 521257636 924074055 495250672 500512931 728716131 738411166 147110008 220822171 716860548 783605417 388982737 653115232 381849795 585192239 69914541 845309691 694957693 864092700 305186720 482481035 706591214 812525806 927895627 938456888 675958902 892072315 556506321 888781436 427806603 936801682 330443395 481715425 472296720 946886788 72877946 821974665 611017539 923368765 37434642 833947384 368891533 725843172 626991536 966568576 132561803 986270408 455632179 589346899 911613216 986007108 309095174 777477370 925880014 978554498 241632502 707017260 282167850 638835737 742372323 992131445 634466183 685938280 662414430 794085414 129618800 890835378 676855680 921769150 944429580 978673424 208958319 212814898 464647539 601389884 632339945 758610109 822057148 840383687 347279179 953932429 405604906 980501655 287280602 933552516 529763021 699635244 340451133 928111801 218208221 437199639 770706955 991355044 173419377 900776751 474456175 742665487 85324951 828150837 132355971 736255502 660333430 734141894 537924569 775239114 501496999 680618412 734274402 932908154 106335580 841558592 264931460 591221751 258082857 321682721 7093163 666665885 599730276 758949389 744701700 964155018 511461940 587369765 711239152 728624466 627317761 662729174 194916485 853816595 784719859 936331770 702404950 878942301 720388556 856015805 491678944 683542580 879361237 892217204 634260384 749708461 342704235 949225256 33936316 588188314 183819434 342798477 854208300 969415778 959079537 960500726 710023395 995148662 255572553 280935120 751437364 974042324 64242564 489276636 458035549 856807906 132926025 399673445 379727210 628547550 744309907 842870044 574161038 690294153 910786650 949660877 351747802 914392247 586141419 682028074 937961580 944889723 469473801 777402324 734199738 857323692 234661031 781482742 423285653 694693526 454590587 468830525 368826791 766106374 930512222 952327190 756990073 846123960 900725074 918805618 775420571 776492766 419171268 597756652 599757743 886020652 54534712 746796108 291570714 739490192 367605232 841798310 809109974 879325895 10130617 352457587 250475718 506542286 388608720 485147876 977748623 990834740 900353653 903915323 678301188 851251761 307813794 749077725 452308327 578843372 108525252 876330194 966459049 986936275 744246092 885206546 512375476 893243314 301470779 553274902 921905618 957916845 69929187 332626030 99234855 713975895 308080725 666662854 791369129 835968292 47341007 53823124 579802207 722667515 889438574 987980928 94373264 283862553 352096032 950066747 856905785 971372613 292751700 772946226 278415425 367764754 550615694 864758436 925810940 930118648 254865278 432505363 794920093 987122620 809787903 840573415 648871578 760598820 659618575 870020379 532062047 753363847 494846429 594751504 414496141 721978519 152256635 771975364 297015785 683921455 442315283 915569567 206520666 297761161 818416729 879481254 341981684 874456213 126348652 326902123 84094475 826859004 163063807 417539679 6515250 897470451 433061636 800746135 865602972 881506099 396007864 970525586 309198161 740830023 491313466 530847026 635555876 643092235 722610625 889404837 184202007 676025395 995166476 997896274 200626086 375924350 91423155 324827440 326053542 557776949 693078956 933559300 755951075 988548902 253382025 449539971 14464640 463687293 791017406 865779016 607235655 889445691 765992399 840131069 497975386 538849728 651779491 725668388 183603298 883889391 754303709 782363546 248098677 265065459 284603224 318994980 601928668 788038964 949410873 962500163 814903835 977189651 459795803 854969532 547343327 959962387 520908203 610713166 361918296 980064527 372629627 652989665 518872565 656038068 484837353 593252629 929057286 974641205 517814827 570351976 56760160 122432865 539150611 599075371 676284191 758947143 65409337 192978284 606477685 968937557 314946038 627026393 993193945 998145761 427764284 929259323 401594407 966082927 990666282 995006296 552605687 823927820 686123781 883708027 136108696 830932476 945783765 991736171 484115970 752423126 414247089 559370628 918216219 976832221 560100011 941044374 34029584 38904606 708453108 820755625 377818783 423022642 587070671 981088853 841852795 994128529 748157547 867369372 511116390 601000149 505743474 563798975 892952647 935429718 998079132 998927068 491174969 883438693 711529633 907264552 259009374 477171873 881206151 882368964 562281241 847760482 827773119 954775634 887529541 950545029 983514175 997877361 428039142 809859250 881461409 904661513 930959318 941193989 394727340 616443910 81543869 755040855 453307949 883940415 955843018 958007031 658519599 912691498 802653984 859783827 234939701 983283243 143003572 349142392 768831042 953789657 11250639 266367063 903773749 918820462 111015330 596622211 618250136 801021515 130237226 693360929 352191723 968437037 455146691 508922211 585956388 622240824 391190915 694710470 923849977 934280250 415227589 458299906 387490574 488121320 903187674 917970510 490812469 664704614 89294704 843812070 377102199 770365951 342753645 435320624 820382801 841744126 831858661 914730132 437240960 788964898 284803387 710870301 840370547 886055188 392573858 557414896 200858778 506683037 538017090 893654089 454177498 649706077 753976112 903289681 971864235 987138079 286023570 377605186 252260864 756741304 869426449 988874676 761581501 863117817 208755620 223404938 644970902 756945409 107096581 985952827 982059823 983203144 704317538 844409219 556802148 559230585 955408440 984383038 636351946 663972344 774285665 958410623 857540169 913507305 943237073 967835190 23155502 319977275 33024465 537963779 948648837 985717595 155821963 671468057 264404298 352096226 919613426 974831180 296875807 661839419 494160726 923865780 532148294 758760483 836005550 932643335 868251384 896558897 367897812 541872832 376325466 581433427 967694672 983104717 24310673 734261280 629561344 685722380 589282561 835844748 715878622 934417573 339812895 901884386 172937964 439013949 483242585 568362269 177620034 943010647 782614356 997696022 257090606 322945759 532428297 943483890 487617607 820501476 341080895 959225731 726310387 961754505 963039433 966470527 185671649 892960649 330827293 630393310 343519140 609102479 606599440 832170969 764252327 861002926 269483329 798725456 661809274 752339031 275589012 753326993 613338212 756714880 826860626 908496448 651465934 746506437 724032945 745307855 411331853 459844286 514271250 739700912 778390850 827009258 758630485 872601859 114807934 412107233 353259947 843831066 972646978 992057824 209506204 627127795 770220285 891963530 362237239 709860481 607491252 700988651 951631356 988344683 41466892 961834707 137030585 408934507 703387867 793961721 112888657 352848976 683332061 907507962 441184629 949565955 499242301 548934030 613090395 622241700 773234289 849591768 240992805 948996249 625865245 662498946 367749070 493491581 690801418 836950353 116280102 477909834 562078025 677942872 645307212 656172681 618266177 880480813 73573567 871676056 870828857 972609445 360878544 767901298 148153083 300466892 563272591 891168630 40881045 123284834 149050919 930319024 53466790 492969156 773503304 834795880 636214777 870903555 623613851 708449207 212772070 987785078 510818051 795269135 932098782 997452835 260651537 663016120 953972944 966782785 281587136 911044359 445713589 607936639 10397120 628351161 971424772 999459633 792720395 901877592 657027488 867521756 861220501 996450827 921744364 954353674 236835455 897996937 29871396 732540304 925390579 936637360 359694535 890342593 416330691 950196977 383617295 762806033 925096105 954001744 135747734 889617935 712228733 984069232 859747963 935121167 282712666 637933315 562612696 968459617 813357057 833651241 456036884 577187251 337973460 604362265 714373316 855639275 841563933 886615300 952415935 960925009 101043832 737332586 699575279 816436155 24821349 29203264 955520136 990236659 882072052 935201350 814203098 935839427 21276406 565890234 906454265 940406680 804936411 848318785 418763491 702947598 688913866 944781710 654111810 844410294 170250201 410358753 699553200 967736826 127122669 275818991 456181425 621680044 380424184 726608209 943593319 967461183 945831074 967254966 896131718 896639859 454854249 690246832 985143821 993532032 953261717 981715248 828007890 927775961 28755061 103357614 454910183 996331960 608996028 903437590 724160623 944982213 730182615 856857835 721342263 784102720 120790167 782412897 260100694 486131357 811708684 885580511 601137450 996755762 401694185 657022055 903465085 903848450 369909083 643589740 355051111 799185371 496608557 561174011 794621409 953964664 310679584 370979041 118267838 462047481 457500403 535376298 569345140 572614586 299268243 740635725 467159100 918043202 462337093 987881300 950756408 986710494 467488908 829191694 326420241 579505104 470512449 757445133 925865533 935000951 739438344 875019191 604947788 992865151 56358538 927290243 65849773 507133480 853964155 961580468 634432604 731022398 388676277 689623813 196374070 971271033 245455206 399342839 971780788 996726606 669939885 911514361 110505961 551346551 779798135 803234993 530475570 609462283 147838030 667247352 423410791 830036783 533218622 943666152 618298899 810940669 906108250 980263037 988153976 989120814 794033511 828472763 169729550 347687312 339463465 676308251 326576598 873168479 847475639 978595658 594152982 810221853 343580549 581812328 888583673 901204113 258175266 560434779 308441225 375338433 38839050 878172191 390532612 921525338 927863891 956653611 936154877 990747668 848882371 949650310 358723243 770087150 936376912 977026540 108392731 896788765 368602746 590823518 721216862 726744451 62976467 752830084 703910450 891404830 353966188 861057518 691936362 896869173 874449640 938338564 931392533 972459062 970659200 988478814 313378078 483721541 899855241 985227079 310232646 565568761 469648504 715739846 78871340 919232788 513026580 996836001 942232545 953576691 742893578 761220344 148961283 529963157 38726475 980528198 816758141 842787742 7590322 985790581 215746707 523091986 369877298 973142770 28259534 462152981 94117331 586535223 578952206 632326228 595468813 771036690 678188963 748348767 329644290 436000893 459526160 640354153 478165464 655493756 110896380 199631866 14374297 291310151 304117562 369832246 390900638 822790682 258633594 680364619 536602764 789925119 590552849 916946702 824171462 910927380 956794766 986391271 235277910 482566239 348727693 941347113 73585522 814456388 572106395 725653168 8412318 231555709 926833829 948392224 103879087 491647763 499536805 999021141 98403599 424190183 26722817 375845060 399605473 485285051 147455816 529824571 117215943 425786529 779369964 852763248 956482836 957630724 600490867 815129423 660886266 763812884 374677823 774062944 728385309 980155109 568225310 736945239 425727309 758180770 261832939 479572333 985643001 996220031 956114681 971302452 867926402 972571445 81080029 585672855 864978240 952837147 767128782 938086887 698280070 700782104 897547986 931989755 88701446 307957288 886417503 961068220 408340095 589285971 768040880 866109802 692995643 998902817 769094659 971335914 726091589 740297840 598836855 922545581 982772320 990970920 918859924 990401584 235448966 249792690 792175287 891602986 502020659 543378799 857793946 888115719 169714500 269491174 340932693 414028052 140776119 188302875 188176102 587563374 785436208 975350992 370874206 842546716 435905625 688212098 525767614 796503530 884979550 914847119 939958931 986091118 938676652 949298318 706490160 845909101 317333862 387901975 287981290 611870048 789814203 796440719 918442334 979796784 688775587 968317345 550850315 968942581 478851679 971900675 653110325 681055220 822634450 975234154 375080714 919707045 478901645 979531170 7806399 648161333 610514451 646257245 250741110 883997672 339093563 393191689 239979343 257668278 523244362 599661262 287935463 293803548 764195379 885769835 40253835 920383236 93751001 318202661 693697698 737370176 415358629 838439161 800641260 860625459 632318687 837082664 110371333 845424492 973443504 999160210 249309350 421920682 828695025 934928129 308650481 335769079 368840632 825154184 951947750 993434925 392787235 871880167 475690174 507936000 751259572 937368337 48831507 99285866 594649856 789554196 219057871 807380862 19046446 587661509 728247534 941880652 58949895 892561745 157762576 308914248 443883412 970522322 344745239 640279682 673823439 741853476 51156719 674829344 513842100 845855197 944593275 990346110 825256624 871580594 957793954 981940875 168592281 967432213 186902531 593784991 915907467 968061058 969789554 971888720 460380308 867207921 867323974 872892287 612275726 989082313 579449358 617603696 68318679 217696249 655226031 803412090 339864725 716554243 902393877 943217190 991536693 997031927 435269501 965973421 255804709 766927169 594428974 937983457 687241874 843743588 685159005 808344280 538340246 665242679 681605081 839898022 191439287 476777905 198845591 372193969 748563680 916059768 221054333 925076566 909461960 918630375 369173939 593792872 329964059 536196076 727702729 884546990 837140894 988082826 629496295 840386248 689547417 750424124 964576166 968968283 497008181 798196236 415450573 773201446 942795124 987471325 442451771 801212006 38223362 542591803 645735685 845871416 511452361 825169861 674206893 763403812 605677359 690677262 796568492 926503790 630791668 874478497 919821690 943185703 312061255 777364077 587823830 735199476 352943227 538067753 260688245 462875588 692932244 761422878 929568857 976041999 85825474 704478437 691414786 835862374 505369188 912174431 854645080 981456618 331817290 371234878 304048763 486428182 228157703 524083988 816714056 880957555 13703090 852624710 872876060 967988997 524570715 702267764 81832520 801860986 117873273 299323925 181627742 737269226 497157336 659258880 980595988 989218708 685315258 748897188 157188671 400823799 522613016 758279576 139272000 695335443 947243866 958977845 394167564 485215000 157353353 445482392 60531702 482469766 303898224 361830458 415694244 535143433 705570486 946230755 529688753 734299222 724622370 725890642 457361420 560171475 794316685 939798124 771436495 860575115 934285812 948625248 34693977 745049205 134834692 596602314 660788767 972982915 459462839 594688648 66700390 137683410 198270234 708581676 266035127 700494055 786631021 966468895 936424986 998626331 721769666 940278568 407418257 648776920 184251863 582307984 951675858 993712064 270310325 864144233 368383334 507455108 363528420 888789389 715781547 851405094 977150162 978154393 59616940 894077237 581338966 682358512 83853419 261994030 984158349 994889073 94774913 752107366 759984448 801146246 402897051 904338858 339802749 393380836 997923312 999004650 615952364 618090096 679549024 997376269 636163545 798272698 703350693 970508826 426854364 635061703 501759250 702736180 822131788 963870380 887883031 988516980 543432716 996489751 122563700 710172541 968825232 971607217 303438620 980424383 950037122 968407920 391529613 783997593 89313894 451886621 1979094 16901678 974310842 975884550 360682770 717791518 212090355 772928482 755036355 914279316 751717046 934349588 219569183 521353709 539940909 808045010 856421483 888148991 645177358 800512729 48216037 436743663 180810499 687730501 183563307 753178063 40164352 513844790 591732833 868833675 836540802 864300074 640235339 664773375 778014850 816306359 719438891 844791106 323821759 773405845 84771774 890596540 939101581 951194673 699237581 942364936 634800970 876228355 266070010 516016459 222513113 723240035 178615710 753757743 94282177 714024261 842414439 888515641 91498129 642396249 275843583 871392148 207812025 493917744 677933021 812549229 780534423 908487783 685147868 961002946 240117572 733706723 952003593 964926236 666036617 679969994 584688442 623444117 966392292 987077923 605444868 686907440 422372251 827929577 717188086 722349297 342756186 781753259 928091352 991698690 955342413 976545169 796765690 929361354 380230943 631293579 597669633 640738967 677205349 970185663 2761209 515000646 298456047 801524266 150819197 604595282 589455537 915955517 693568507 759225290 184030830 965282151 469023776 976693935 354783922 881279982 831559114 856294535 444311152 697333001 711392695 873006220 722332590 793170331 866696295 930844419 924469140 938027943 197192246 999057417 886382502 903001945 945157036 988070515 986132135 986666361 189188211 877113204 652076857 731273944 981969778 989127852 527578110 560022432 531640043 668009936 65455929 180303754 139945887 483568610 321580264 804002437 406100434 517397914 545941027 761775559 778273676 846292331 174951438 290608297 752523251 809779817 824690344 886137406 61460471 615387184 987957035 988857234 972612112 980225952 970202219 985502293 258399999 552882933 897495079 941435579 234374606 336799607 140641938 374726250 956954140 977901827 356147837 636257400 763291386 787379333 32660364 692869941 633140551 993301873 580234970 955119846 36271630 966899556 553804957 947543087 525348847 653381960 356175783 860138011 702530598 782122376 583511614 588559030 598485240 646072685 178212247 338177530 895754647 991229277 877034019 951439507 326056505 875349789 859127374 892953315 762986892 807911988 870203590 937188957 16497640 301211811 66446945 820767102 161603638 587863519 673925496 899269686 889185688 952493293 485208266 975941079 815441174 874708649 527584675 631285324 728949768 741609180 712087527 994158837 224655537 275699835 818987310 991154786 531834737 624341267 200327570 216205485 889143897 928447893 470524963 941261585 731675500 943614341 280752008 692553725 530120536 727315441 324887177 866886540 291568332 566036474 921848962 932456596 891901432 932942111 33576677 140471441 687850836 748140036 131361977 405088887 234912860 793231900 616011211 938941337 167084079 319600306 807283126 930130258 173417549 776292996 998796634 999325749 409569535 798744073 325902943 524817775 309610192 939236607 83327931 144439667 415481035 604918355 515569197 614352545 838457149 956859002 720589684 746231061 675574346 710515746 748902611 889546312 70404682 770646398 600100941 918040394 12020287 241466183 885428220 913588615 464649369 784078532 538599972 665645749 111402453 716735199 618779691 967032383 298135820 722113430 509398703 771979434 34324158 237878669 186456308 386476808 963151377 992641526 124262083 528310591 108982102 946137145 676053324 808285803 211605574 500094016 754839567 771714263 207366616 859283025 881640040 921729526 111843629 115193957 437508201 756643204 29190738 336762769 621191005 742594244 898807456 980535742 394644161 823091370 236020305 564651326 225977512 580950179 270017036 736888644 48855569 900876396 710585841 845925699 735953495 771306963 544096019 885474330 432413318 469976804 390181277 799269511 182178274 846725442 877370996 878197071 722544030 939362896 578540259 891135475 282564122 352854980 513529284 897893791 164536314 708294821 673396895 934234692 415758207 547612393 724639329 747974198 667121115 886068480 607357910 641826409 795012099 870058003 41483843 176964994 132285816 225890705 223434396 317192722 427952366 895694347 600020537 810676007 322870470 715354461 787850610 936417521 852440262 974659181 594433480 618901714 772765967 948256428 539620453 896893357 84657249 543887032 635961411 964194370 638627203 882852492 738437311 935121304 972887559 992133932 857501459 858053098 120156357 710002055 438187931 556083436 9844637 48166213 435974450 972648827 545642405 917755034 496710009 866473800 500052777 891309894 184219992 977312357 632091383 718140456 621972649 665385353 951284755 973336668 627324573 762915486 259606122 646000300 927585166 986276059 676486907 999892972 646804999 801822941 232641803 417655141 400455703 576535439 600691527 943000571 593449603 738113360 979622884 980580463 968910987 991876468 589301894 707938122 756160392 759066685 160064356 405886049 324947984 797508491 884735465 994035922 879212161 936201213 338855784 895912889 370660110 507669926 481590059 669634234 671122817 672434741 963800480 972211264 968867451 996649311 582564597 662737835 719914784 946052295 72283236 163314334 397724631 939735997 633337171 654071108 413545020 583807785 643559727 977257394 204982739 823731269 582523353 625304796 617866970 876659369 983767159 991182630 241956177 486457694 952286891 989417515 267383687 294573888 106141788 624670608 207029686 317992128 766616896 920546438 961210070 990329199 878558948 982077106 290547658 454402969 214254415 941200172 554116225 685855686 574972632 804424859 274944979 776855220 983205182 985765854 34898334 375368221 911409221 915784874 339939699 754955993 472562175 778071350 298511917 460924414 411283812 527314727 860898938 936348386 27754298 547420258 281023078 341123913 119138478 140993897 177817650 900651759 799693534 873476721 953460755 977620412 926859342 980949900 176079662 447488442 598920947 909823038 935886595 953913980 745241623 888024498 104781521 335875811 402580940 885159894 856565157 879535521 71308431 806252716 943869957 944291077 430174212 542426376 331367125 483217370 678711483 822889844 16057721 438298716 616336198 760342071 239084801 395857190 194198648 703646847 7775015 368286968 71740542 443160220 155857446 326326920 313423245 749026224 233230812 245444885 763220051 781431481 163759479 227681200 22838479 902197167 515483633 918248584 120607730 594923498 686433303 981028050 725188277 804924122 559118890 695223993 294995207 804238087 539118627 741638184 335642012 649744078 209946511 319728655 408940750 667530264 530402102 840700316 817738525 905327329 906843885 984030784 895828570 963529421 542983425 545374429 443826245 779224361 487592995 615671665 684787426 981888079 763120174 880187065 912438955 987763873 527739157 908084988 616962065 643651477 971364144 981435254 5735234 694257172 948811452 973519249 525613200 671503346 568779363 969818626 279764142 735193563 726937165 761200690 621064205 822167581 45823091 491803442 163127152 851261921 954990032 989063334 125660277 934308406 741946662 767597325 156169769 546429210 532269011 933699589 670461550 940345526 773059829 784489309 854387211 920163913 68148372 867437938 135339261 473110786 356722652 987218629 640718952 849399651 916462075 946092789 400092331 504782306 282251779 437612632 138472688 804097276 193140141 698684779 140567806 754233446 636703912 730007453 195211368 990924474 737339041 903298082 58962768 713580335 833288964 925571819 257642217 721313806 170753307 845500462 879247087 960747211 888638809 973433306 906737211 970244556 107613836 262220591 810339880 891517306 404858086 721065421 340002213 493190500 529299944 846681292 987909149 994364273 970359762 997399652 479837562 849508776 989942078 993410492 791166704 895144418 679201017 960451063 632637006 932150580 57102472 270952569 735221985 908434619 201862494 598730268 721286288 790197205 353873012 679453740 936951159 947967194 118940322 365372146 331886680 361641337 39335699 940605714 677656621 814461225 80496138 849204361 260863756 763184906 704384952 809249524 21666203 989261170 484633180 630371455 261650779 985692425 267673483 285888230 886468410 901661189 450325070 963549324 700588234 928396419 140623889 782588299 162174603 899271730 622461417 700192060 431422519 707891911 143715493 159442988 423975566 696921357 722839323 730627777 680132897 694150967 137870690 424403051 581740540 791625426 203845669 962239418 289771381 972893152 656637651 848997855 493707955 549763070 167586079 214495566 880990382 983357684 771933365 903795879 32168893 823958963 320844079 365600191 272468509 917348638 459645362 704927580 234776505 881718435 799606472 946245231 667834686 841799884 121077552 957233655 417582641 846336860 171522021 231879555 812655103 972033690 185046223 973735595 505821067 999120966 925547748 967145731 149388668 610245047 695643516 812916850 927880559 951054292 582819072 935129834 322579601 970172728 946402768 947378093 629779534 819205464 675770261 697301397 188807720 838103302 334345110 765411227 480523491 501775916 251434267 789783641 856473426 921336991 496506857 821354535 70857817 484050246 484764735 750512182 143762821 386982631 607012544 923334385 682049005 745970022 569096993 721291614 495250419 982040561 238740105 696584560 959305524 980468153 124222551 533519534 508032777 741558709 684128402 807386239 342083304 493993878 872610472 982367502 374151282 843689576 360562709 803076667 497226426 996592164 830657815 841832198 749729790 752083092 840339040 915980937 514080675 533300213 28544496 252576968 861529253 993705449 302121787 651670975 644597674 932880087 731091099 846054654 465286935 987205120 84502764 346145454 102313831 586631506 869327956 948683673 362221693 773939435 74401870 772489454 622050935 698476874 503918160 669364593 125034149 282455035 821857691 981841316 320878056 717226841 401389752 851344029 764066658 990552559 671926781 718433638 924330541 980183773 567413966 970927844 817223179 875354532 544343184 831771486 960541580 981223367 139400509 557860378 779378781 834709232 783062333 861881458 273824866 671723580 971631889 973743383 141360863 218492050 5791848 651612501 219379046 592581403 672338614 678455019 493958290 724895979 764875864 943580679 7022911 792941228 798372710 949031958 744092912 897560604 942508454 999304725 956625665 984616243 915429974 944434744 54387568 405886340 853642032 901775184 420682243 441380102 298572230 736520623 650336084 834566173 21433450 549001810 831957013 835919175 403961938 653123191 186625153 939951459 728538842 802098883 774714051 932044628 247327778 609252343 508707667 786780259 735636182 767424243 103376689 225803865 351013307 532127280 856901778 962524220 589419533 727537043 703970642 815072080 219060109 887890296 388798793 438128959 811219055 812824888 389964905 660003052 771425810 779576410 720941601 912691863 643227306 718880246 693224488 972701190 234770979 459886468 25009406 275024774 497075352 545814249 820410244 904355018 811694790 988155884 446230647 696239372 8892897 837036559 883040319 996134785 4455844 90671458 789412214 928700439 446308465 577850850 929556090 990099780 719891405 938123589 640436947 675274775 765257687 925663474 3242003 986870837 658872774 876369615 905453626 938472875 865725720 924465415 898756902 931952971 126534008 517953228 353387054 642652273 854610959 911100381 398451610 459544019 978372831 998682134 733036589 975691365 260441154 748832584 273098917 872467558 926565970 978004599 290633608 602132053 990852709 999279833 962527692 981902003 29211245 954539178 17808460 557354597 209811500 357334257 484739570 971723903 943384943 987062815 745576460 870184257 743679485 756334398 785423685 998596433 360350361 525803390 858443768 885644216 110911728 732649199 175047011 183159356 190234365 652349503 734264078 858840228 966226565 988646131 845757176 963720542 252804521 702997615 760467090 965988820 942115263 998315935 321451365 562555496 353948959 446540069 921710922 980062677 189584479 657273064 27651995 730890365 185271441 986922942 185683400 204251808 849494250 854790418 163218137 375479502 333348293 443731542 489955859 701517409 616232898 775971348 4574938 948497322 700875333 734142982 52305766 978706212 499261212 532112109 486204792 890104359 773531784 895037183 295785093 847600712 93357774 909623109 610288398 851495228 119499350 160508485 78693612 467700194 472498302 755871348 879672282 893870770 178747939 483740380 250532130 633750824 939438435 945350512 52522963 90438808 851461895 953861957 909363800 992711369 482903810 515746369 448562159 524296868 251856457 321734459 868742615 982670536 444705028 454076034 515668708 876994190 488439287 648363687 608085257 690077010 387798051 646285238 127066967 168276758 690158894 887992517 413726473 794034077 205305793 591075974 290250354 703861826 548244680 847807187 805562327 819742170 28189888 262518646 67060268 78413576 304986987 597994225 195186120 478812081 714949275 806969554 174669730 729480717 950351207 988343138 779608201 923758542 634025455 993794212 755366510 806120069 293639634 579170115 720165617 804802978 27032403 248087678 118043450 218028364 496417028 636374201 678199526 955562202 61555556 804336530 65682089 134898527 137717263 162857803 516998083 703976574 276473306 386277843 90455590 841149137 444717571 650846211 874352644 907734462 763747844 811929050 513350086 705192344 279322540 723850652 241108756 903152499 119648313 721605124 702839679 906881207 117981916 637383123 251110986 382498579 496547370 972475959 435431856 562968085 729387122 768250727 956520087 967560750 483527087 676515051 560333516 620279826 201005037 807897367 437870414 841794102 635165837 643739125 944313763 982060599 254999840 941305110 573023787 702856863 664624695 681973732 644735209 673136282 398996178 628493710 36562006 493067180 66587983 368718686 323832605 376560336 579890755 690320138 856865348 970901702 259322551 981133041 914397611 944011269 960105298 963204569 218291601 704727097 156430225 989809298 613094064 735897617 583843032 996518329 781233519 977912659 461791959 941781281 713851381 816196271 689435251 960089601 672792886 796417533 814408756 937443100 870638573 971485890 281792723 509311074 260356349 549232496 773368151 910688819 865641743 926741035 518413429 831169282 708085948 774028397 129800866 236037169 75612359 244442646 26284111 282006080 600606743 859908964 466334061 683055108 737560671 783166489 593637653 729148170 432910913 957483890 795131769 859334634 440584799 903908522 727688164 827603361 171349885 672817877 955129445 972232920 192169226 990813595 583193969 669879562 43874251 524626818 981301892 994558816 960228811 984642065 462542951 861208090 569694491 636191539 284676831 391235159 800172984 829129225 489550984 632780280 521541060 937015589 683032045 706941950 27447782 926066459 305839011 730513432 745787353 781985777 511671320 568323737 964107678 968328693 11602710 814076273 429174377 619191754 594952970 814042316 12826711 597057392 943651032 979573886 388604286 910600701 70533728 99842365 310591337 438569107 193597270 840531264 778052792 842324118 401635528 778275444 936005414 984456882 636029252 664852889 987100823 992229044 893022419 931408379 115759651 603029116 999451992 999657620 692736880 889579460 19567099 490722288 44473189 491148033 231305361 537268769 249267415 559145055 40669917 200711740 223059349 549993031 128458847 729358294 591197574 884958689 243304107 872540131 414926652 857779223 486107608 627416317 387403342 910603997 656705966 916151240 414268994 816335432 587499670 873456038 144380498 302981846 686117817 781441284 15676312 891868758 689661502 889142818 333689372 710939782 386565489 772709286 581180607 863614031 966121454 982138876 977852170 986784820 488301303 539443270 159710195 348447122 934030267 955122512 372261510 630061120 70948658 258443008 370796356 621788607 746827026 791865435 913592590 995570707 991398653 996817254 520336785 691838465 878802602 962444236 725620244 752049109 596860716 890172761 416959539 682507054 155996807 477031242 387194431 623472947 100393411 366149086 682886752 887782322 783428507 967315230 978807119 991892040 404205456 806172126 947874486 992063470 597943739 601523113 257866502 854152672 586676077 893443309 635176532 828652844 95666813 829673121 756434227 771188350 539977392 659950793 429172416 900401594 383595713 761659758 546126974 780529768 320205879 924446136 301820693 527895065 937034669 992202175 482950502 800012189 766850825 852951696 545504561 684481181 617324042 976235254 697811061 960632789 715638946 754096547 623111810 911128579 264834988 745093928 554249902 558157006 386746413 455751273 969889216 976614669 850220823 877518938 177245697 591158700 429005727 687494139 749498080 759394827 518432637 702815729 169544794 175271214 145206903 560824191 785882122 846628109 120199244 673069926 686572789 787046332 336398753 677777817 881392487 945389687 625224310 676931917 131778370 539011545 598317147 887577235 993577388 997758296 443509218 774994260 109245249 112953512 320952643 999914668 775301720 888989424 22152191 685771284 536474137 612946562 674096933 715436561 45354974 133129436 558641160 834739597 762336521 936787569 909804504 968795276 27968321 945236555 626215338 870144175 156410061 971358688 63609356 765732584 890708187 918760070 421815319 925792512 458808288 571221362 365738351 788119913 965985647 982410648 567197908 582535490 601101621 618295132 673360618 937085813 412740885 852025548 786254315 992698678 927146222 968833232 717736119 953029046 29086539 577337390 679657676 921391399 2704470 828148720 640117347 955211601 160451197 754351522 649121458 950889027 209373061 229454393 81895691 777635393 666039153 820794184 621629053 965930249 403559012 548036129 548992461 634145508 699832948 850798760 484654819 537181303 853143043 984122277 232917491 297022097 948500988 976446549 211989177 400064331 358026488 518959092 55459915 148371746 174883727 979175771 989815250 998949393 763046182 827182151 317375041 609557190 561857813 720529010 618047612 869078244 389837420 461401355 786738567 990788760 675710664 876264825 617587934 922874222 122288890 302417657 20808586 664719542 479098859 678106689 787982187 799054487 164300692 389557992 329913465 780538748 869558287 925460491 393509285 394192461 556600563 961762471 27973747 33926831 797976276 807421902 441794992 912578602 638535002 755642708 153012046 378359858 850518330 932336440 107461041 402538404 279915874 363486501 903643258 956520160 545772847 546370756 371002034 865190645 145593469 394407797 169102929 542741604 497782210 965466976 421311592 660935966 71175855 255540039 154169533 811104796 188028628 993446275 914179436 999028824 849739256 889803150 21424612 566462516 537536340 767382635 957742572 990914911 258043738 907151867 719008424 965847142 280302651 286448655 728779393 803568310 33703336 685392007 615913933 706380855 530850288 632442690 184932467 691716467 868550802 984648135 331262771 506282279 419959424 901276712 926594843 974703320 866496977 964981372 970835653 998529991 683740318 848228340 590393855 735114055 595237053 769362476 808029698 903952049 87034188 790259808 171990966 470478257 55777021 72188012 138835347 287070121 663982658 776542701 602837890 818790148 654116758 763937356 481751769 697103355 987404905 992644658 987083160 992415145 63251419 655975071 735227867 818179746 157888397 619282947 118377562 969161059 245502666 555795141 991080459 991748710 745264789 825968458 475165429 559733274 132996108 458085246 387515929 461440236 724443471 795019226 433447533 858171340 186979835 978805379 583584239 981271778 11374784 223552857 474436584 849188787 668596089 898091763 160183882 647087994 119258987 137319941 742674993 964288187 25015691 336548138 719997366 901104528 347533914 589797402 47218560 761327054 18825247 957867611 208041714 674702839 463274167 615428218 47504546 188995415 330239109 336361712 853506500 923484163 985111696 995293424 63287397 129022873 963954799 969221244 258186007 501793336 197206018 671578304 194613376 237005920 438713219 740932684 578070271 930760211 787250418 893460557 693335817 856466789 412763312 879903599 416597861 890696375 546544721 571825060 779117152 818587901 990032313 998093482 941960026 992276073 835465252 907430261 32905245 864270121 554270141 770180382 429944188 920655691 886496378 920021405 106331138 710098830 974466575 976502234 507837165 602639160 231713615 465556140 948019405 972006533 273917637 383287388 246959780 900672470 867790292 995370517 973186916 985336005 279470252 819210467 360610354 522098822 383295629 710372718 456433150 659371655 867440965 918817043 184173853 267543122 478905589 783436656 80928579 627495843 760472697 892526735 275808239 533541450 694437093 817962955 211744214 704061290 619488502 856427118 404429205 927469738 460274733 582071749 527289372 528440871 213189314 573235742 667781962 844619314 249952264 289730916 546536066 557456358 480835461 747282039 243897347 931692068 455079844 772327900 678645838 924872830 30240637 337034062 307813258 613897684 161636352 757486123 505079592 676302298 993142301 995999248 821372313 982502745 359715043 823912472 195022096 211076092 596996851 840514542 601899181 917878312 209629735 992315428 767940040 963836224 360574102 697336528 359832545 977156232 873015916 916895781 649124432 949384069 233458040 535779932 810541824 834083030 530084117 549901113 695559983 833426699 553640955 932955546 24362435 667504674 614912924 969408906 464849440 824661497 696745666 988419014 48515250 799031391 522203895 638214483 457755186 962590106 129231608 264374984 570580655 763843149 756113920 900856347 732970057 931669603 470693506 846198727 526669631 635354654 174389990 352606599 611022468 852007953 786495507 934165379 766019534 836968129 499939323 874394956 456974647 746781054 237848753 906104326 138673743 882048955 575318209 897475417 745116918 754061359 168646859 807417592 948038101 980721727 3204053 126670925 742576714 908594553 261501523 599359189 827515552 955348171 979661475 983428488 702157500 786457049 141522917 800133734 326813732 401677981 498750157 535845870 657705970 703494245 186664075 294878831 925717065 994717376 728836852 902615825 803758563 868049480 347287941 873911892 143506743 810059298 915724199 998510583 711393260 991675409 8260480 351936143 930571777 964155814 396804785 710869221 834722736 846612330 816613340 989519902 141681349 821811049 992669219 997110533 355618227 863398529 199392287 639381873 324350891 734846025 898434971 984487931 909680193 979154239 394002666 765508210 104978301 869132850 605120215 954591047 880674295 912055837 24284984 308476729 772733171 849034038 164277777 727809277 522668833 719180802 625845513 892606796 282359356 612109540 11847918 885592308 9780681 239863420 302165536 432613431 561210988 600545280 58970492 733969449 960490785 964762219 895100033 895389043 599453535 822587848 343916880 881167066 265287176 995495968 505427352 883029840 157693854 608344351 653957887 747037430 817821721 840443678 646214508 793521690 848565865 967587336 137026098 352896858 91877635 251531145 811856532 978734158 153128084 572342892 506481196 789056281 889133589 944682876 876355644 990103351 173565394 770296502 548807487 871627945 802150457 977706046 77553164 621203976 653180431 778533168 72851650 439261480 350299274 970147017 444740527 920387118 737943345 979447410 818675557 819996888 732452967 926879061 424627830 504896419 675250563 927487535 774593051 971044859 749132576 837923510 965900566 999932046 887862487 945504611 358301656 589761081 562608231 762490975 88981473 908422507 879115961 982980277 399285614 964217304 881042997 919484453 207531518 660340904 580279796 756080506 919812131 926754775 830647838 940122248 338601077 623594099 16091337 476074315 505192020 664586685 915618901 956414087 640649034 670034698 73249280 289582955 876802688 942862150 489057852 652294171 209094097 617723400 288199548 636154436 787455510 834991974 509785751 598512673 388651000 440566007 743054790 895670217 368323207 388630294 963427558 975022759 754406187 985970505 636192255 679167901 191309187 773021356 827493601 839253111 180288076 610520617 664920921 920042919 161471782 989637335 749552404 814946089 613013033 693486060 116610172 946498051 849866580 966227423 935637567 962486160 2386433 213528958 437485418 847353030 230275427 317384850 614417702 821314937 472359618 711503592 241733775 369388544 406112506 805238327 564430595 953310233 842578323 924437092 950778718 985974737 936398622 969782237 90139214 111165350 920580470 938157218 977442995 985099991 587809302 786066727 314248823 372708292 270286143 649447915 45126043 285262408 663467176 886674453 597187050 885002616 435836882 875813546 455218979 481627149 520866578 708539822 71349498 896750810 776481569 970110793 936491069 978929037 356589537 651323118 240296531 859955290 339679294 399051621 462156302 464301951 794571571 873020930 499754701 693311202 812039456 966774138 367028348 400744193 842578078 915189885 736640813 927888020 741300604 849372259 853988177 908330904 321646534 548951295 441110233 773800625 418566820 648266857 222221113 549368238 699804695 780434372 533063477 768198163 37936602 632953866 177332681 267449280 439177600 689102687 345253992 538219351 455195841 738427752 385981286 682538400 603245821 740146469 724933097 846290910 913428509 928840102 892955968 994746446 277183528 282934403 722647572 734509556 120731325 616562819 935293213 954597043 117580185 385087723 846493440 915945373 996606194 998368841 188160312 462292613 35912993 603566267 550177050 658082354 595235204 963770967 255661479 997897543 346287692 669577465 254798657 350876937 460143225 794283433 537063513 636563069 632596291 700448938 948939359 973281152 464999357 607552412 87891071 944608186 731233057 981593803 527184983 906506952 121861188 339549117 229775338 379401622 833669890 939334218 137700886 547009946 492551307 994737244 522107683 921458080 149329478 769833596 182435198 832323738 929562560 997953746 172120071 206441764 721427401 849377831 160897153 531625086 487198876 783787426 87614979 280088309 620796888 697275716 707669300 859275787 131974280 319233248 797328797 821974914 670142892 743612916 794269637 945985179 494927731 665476808 513350746 679023267 384916966 528209966 823845096 896180396 758198124 946017941 718414106 914126746 171996738 500251693 214154201 495078598 648116269 931681297 159756269 878981534 154048300 802254250 618498970 777591798 907009904 968050400 229588521 258822425 478383080 923987714 607589678 668012013 21572638 165764949 290907467 919256086 673071414 686738073 179633173 880740523 776964307 891371173 49906434 929704774 143677551 744940087 475644692 814283154 879532898 993050596 687303535 830560556 566651066 729839532 997873207 999707257 622059071 892199182 151678532 239933184 435271153 968332464 953533313 997677985 225236720 889949427 584201538 668202489 724338463 953463808 700934877 931696564 403908730 743038165 192702354 958575583 560417 708240747 138111785 823492578 211788037 864304410 889943599 970694123 843537747 860663664 718154269 879449396 840721339 926764631 367610316 430043346 625975180 956013119 344877198 485830727 961722068 979884979 960783215 973189812 629386965 828661790 436259620 623846963 744961582 813959525 112293862 193509163 555993044 675327916 176414418 860660180 688274036 906510216 680664773 944713957 484370807 942051780 743706637 763292262 896658108 959461181 153773095 537770309 783819468 861685889 32406649 855637938 548774882 889867807 530493458 996730693 152986660 486231708 341528458 700655028 378809783 549454512 649431632 827798042 647230997 879333181 549352508 654443747 530856467 968326530 466458113 753619632 389835153 554205369 77788261 999949483 183701122 301243267 696412014 903388596 689844611 982521126 291802199 805121702 744252579 944787392 188947548 436520530 285077286 845299600 501304082 898199184 72875271 284432989 243935958 523573262 52188674 286557535 780203967 854431708 837382299 956277821 722238124 951298313 777781990 830315053 99831003 101358652 460683 850731845 824915250 848477455 166197474 892900548 877577382 972023249 180386648 550564498 368398770 753976673 505855685 579234226 753771380 919731542 886002640 913205726 238006112 689685042 988402528 990367627 965069205 968525256 795470026 857101966 465312871 827382612 629113073 762516630 701919509 833004907 14627171 254231816 353702365 727966751 880828084 886478152 401753167 695239755 418173198 752845800 882187040 911000006 154286408 920226695 414845866 897542274 286436291 939083563 810834192 927889496 807592360 864421696 436545455 675223083 519196230 837083160 458245962 473760213 930213644 982362899 988006934 994785695 768262928 992779175 954074439 972307149 476274819 653657660 20966178 607627774 700339540 846658917 838182395 901424432 746533395 854983108 380838829 467136487 681966740 786839258 409139750 519210082 316471662 436096428 427501366 887587724 458307186 492502512 883662499 901134971 395983400 561073130 549277337 796732261 916572919 944241395 182422 933859914 980119142 988272883 581438881 787121335 778771778 928547029 516762940 856874029 945745677 974442328 614082814 907518917 776022571 981210069 293995185 919624224 933738592 951108985 665279584 777269794 416015484 453383376 134050963 605369868 621912672 896081353 87322146 706059623 933519482 952831358 442112340 516556866 749790720 843815971 442969956 907981524 838934079 947861386 530839707 554274159 541140865 869463753 147417063 189386821 596590533 623399561 824490091 996352720 512446905 790272864 109423570 832730917 502388055 651814650 100110810 173623717 652430747 903697067 577109038 903283989 349890599 648990255 998931947 999990146 288247349 594088219 946545280 951777744 747268721 752959663 417507989 718864161 566934695 949249180 201573956 579276249 825740128 832519965 59842556 752704150 735307187 961511773 90975648 389889633 882849472 938074301 966502553 967249805 430036994 786803675 684065805 766580375 276913059 355702481 6878991 927525649 356444692 568500179 417974213 911726827 93722932 339417914 289207477 736639653 739270475 921019106 165933284 674596453 334369355 652377943 126606399 815003891 597169164 905312991 366285320 872019080 529335879 800227322 901912875 907204704 765052856 972762163 150057476 162545016 186270387 881772496 242912780 663227347 830744034 954290115 99879568 486562930 532145267 796391668 684653429 827976348 92571348 678396579 844115152 925350609 553472937 966271861 964628349 967725981 703685080 981720938 617910748 849597918 960195834 995911623 203732072 682347670 389252060 439844393 961018390 990506947 160576651 855937938 894251860 959620778 589883735 673428231 237868132 673118669 851904937 977478216 994238150 997970268 813907981 820912806 749910636 885175871 828149129 922589874 491102733 787970498 45473615 307993003 402389065 701376802 244207103 369871570 87808495 418509201 965573003 989887299 144238705 249198717 691003058 955403514 38430175 577393806 669904475 701686490 152796443 299764134 157077998 219494294 390094878 484955036 594165864 639383202 699380477 878423127 770352010 975326537 854843608 901662710 123116499 705690378 638307076 970730689 272791422 830819514 141625563 338849555 97092757 370546693 153337913 625549157 357164396 650503671 426282700 876104629 170523322 731415316 224070632 273387538 158848389 878638976 774214979 830150332 344503521 937254497 654240212 689015799 495958782 576191529 593359458 727987520 73745482 524308850 391718757 496016519 448433260 963355518 907321624 969171312 381156534 428632826 795137885 826439733 909299138 928233481 178440903 988131060 34595473 214171996 619309692 825889625 257192689 300636404 655685960 862089369 262187528 515057654 2182039 962201880 338041399 520421266 415410286 510957031 44680371 694125745 976489418 990283011 360420144 601340560 375899830 800659047 928436510 928795157 967948259 971479202 655310227 853803868 129793207 991518975 719672442 842257305 531032282 792727201 194509069 400239918 900415247 973780290 316407560 457712838 463777400 715683035 321380734 644583677 670168816 879877829 578407923 750576875 473883523 986537031 317278778 323383091 483497311 514024736 130005376 824059444 226373501 298298357 480186082 760094635 893790341 929760149 978915389 979630486 334919840 698896663 609918126 634678325 563098491 804166868 667777899 713077517 455911634 718866522 347719988 995210051 198979814 335486344 57763274 392975453 971281987 992889907 114605989 752711727 712664703 842146193 663382286 869511472 860286719 978785079 606091969 882471023 397835093 766442525 534590709 883730660 122883323 630752935 77003139 786662238 799982882 993833105 265219700 370965004 180075134 558677903 746947472 925441368 617343252 823817977 544433507 637144182 457474030 749433481 768598137 922198730 956113936 994611973 442998518 629992272 763309021 954041319 318341324 851989293 889445125 956696653 206159708 532492984 421460925 936649905 703795281 901855766 234563514 626333975 64064667 568153092 924844430 983554113 157853439 850924644 439615627 806745233 115956296 600150049 890765516 956305264 416214820 617560170 305309738 847707749 442837540 672614502 824355131 875051054 89369190 749330634 544367714 757087977 377534400 603772851 659553595 963581184 780816343 985459069 627932722 798244807 974794050 998045325 581540527 844997928 265221370 407448365 575136731 601576215 236866105 930536463 166155447 741583770 943318300 998403522 36220773 199674531 413670243 832825252 392841863 851838523 467275049 837951932 550267104 918996338 241003223 643353812 304121485 452184226 929141851 962304329 942322945 961165860 535433514 797185019 26620318 595077191 157605568 411230621 692396927 730279520 947973758 964226848 994951863 997748176 509647976 577485423 838820659 950952434 561435845 869616389 666411478 820781945 621766651 624415598 317450554 525869945 630890265 879958516 591919051 723878490 584483565 887688512 441512537 802150192 800448904 926164962 979054092 987280014 63032401 873434560 595777535 808299757 802658103 808591645 418682729 584301760 766367608 793489096 860293555 919270165 204663810 307987964 863744298 881557066 961330297 981807513 985477683 994524012 965180659 972584426 495766 242265302 14741704 265734423 689024338 761098768 280022163 389916425 903044400 973023636 330217090 379462028 330125281 809663586 676226979 883711844 56241731 386135605 70795817 183736776 264884217 543359100 318603170 502121527 184555428 896724335 33112585 46527849 180903745 848554946 950146195 982663195 195672674 455625511 106262671 618785091 280395169 931469635 759456717 885998880 521640226 980842002 747033792 872953433 839446996 997792862 914534038 936376258 170568989 970239022 653609324 795596522 493067334 534754146 795820918 858212832 663501934 920422114 368782641 390334536 230263600 739326546 851909313 927688981 166603689 760331647 137803188 167107763 265038541 456367609 557919427 729559238 857949914 865095115 445732459 489727697 210003098 650006949 891045948 940370349 529190062 748868739 418112589 882876380 738615182 813374245 300669089 668595022 363158385 737853344 508813038 906941940 825504510 863997690 354404460 729194354 47000369 568526768 927523032 935295217 148640412 533156252 875778257 905008603 912031408 918637310 680183153 874571099 247575460 702994440 192349220 274182443 934663150 963287046 43367619 660407862 676343974 759506059 904855582 941570009 736466754 759504764 931511014 968966010 557106997 698019624 749865387 784169232 447028765 513314751 961636644 984686507 303933612 874165447 190771322 747509490 892631517 974623675 825214363 986404274 59951053 518211801 167577395 905441065 886805974 904636778 227148721 999562349 496591209 650294124 498781061 735340351 434691353 542547912 368855843 576956596 986316039 988567026 373944607 863877888 270248123 757837371 305601460 408648490 810668977 977651374 262555518 826314941 911429041 940861242 848580891 866552365 449932456 501616122 387355927 891211706 1863232 429160796 940187762 972042676 557883628 700756152 686847620 738067524 514717035 812569632 866583196 925746482 984711735 985703003 242156044 924780028 587586848 810938779 211239786 489910568 183814974 978808970 657792851 887628288 718685696 883191254 284181358 368110510 665253171 911159075 955425141 990618204 815804451 911796581 942877298 959900124 537223226 977163022 10570608 253614830 526562286 918186278 125765249 372151986 967745366 972230675 444057290 721579881 58312886 958650076 306940625 857626488 220211152 274433742 824343362 988297407 963386382 993306846 129392125 743288854 924942220 937771723 914183630 953264368 499518246 892008518 606096851 649519749 796253957 816139674 939804762 995872943 416052151 586986711 104556707 768243018 802983139 932516803 284834789 326466573 207936377 932742915 630722145 748910484 675895847 750183667 303749969 387346600 700288801 728775883 488832380 630474329 423896010 881853538 449657549 766712057 248176662 470552137 996023362 999256096 382072589 993625210 635582369 640278824 948642885 949703213 347965601 849360508 401388755 752740450 790438609 964150338 337759364 695845777 596779863 733417158 87301209 811076784 402019109 528530797 273009161 781630705 885800980 892093532 212932814 671597705 985705839 996148788 36518030 124362480 393567511 437473411 182349924 372690226 771115006 877710018 180955951 767622702 703422422 935188356 536546899 573742932 50506498 403302321 732025680 875180106 456050953 858115109 535953307 760960923 764346875 865580977 943348692 959389578 156375270 953603860 781730788 897360869 99419940 276439698 309005289 382696668 446670883 807984406 79135538 243088439 185430803 365114905 447747893 712881601 519278127 784427010 371052763 622820538 648465490 684222375 370341511 440872271 846218726 918142143 412004392 668426260 424403397 996814352 498099165 870775193 854088415 964206146 59265955 868730859 653470846 798580493 645252984 996871882 620522114 652754356 595736274 999190937 213689019 747448670 429038419 948252207 839912051 868856360 636556007 811652159 485513173 924475553 707976184 816939645 77862037 79984821 196363584 545878820 541924832 903751275 864756737 972740059 291128995 488959960 817142023 910730521 780787559 860448051 617726287 728589116 260847725 689760978 582983915 611667648 566955389 568418841 5203615 236499806 209181167 627161412 603888677 867902903 173460860 189227026 122001109 129507787 468408017 917788992 781155351 952604608 20013133 168855418 225828421 397390824 153103399 353518595 5385660 463272094 840439259 857113471 674848645 865649432 350730493 729705649 141673197 600422157 350394785 735721628 817110594 848041531 52656070 940905782 435165103 988458473 333645902 701903706 508480255 596376189 320792648 579100057 998822599 999316065 244900768 763192318 759933988 838226616 418104016 678534354 512163210 748658244 572103134 783849877 398758517 662607872 591225334 682603994 727748741 915066110 560086477 783216369 242011484 999313182 451560369 453314678 975006330 981338151 377651461 572966368 777505645 906426061 217167616 218544905 444917037 965803371 622443183 978766797 927505738 963394754 607760844 955377349 175435063 777088857 199990324 918003803 329378402 408464239 632633277 671930747 346067093 628119335 217526054 358682499 249552416 707209116 191391018 678041947 712732657 828446098 666083617 813520287 221676449 378745034 368099846 688997334 321235433 396708836 478880169 946370438 657412718 727672711 672139986 816684733 476934539 575156310 5953977 42045688 342473949 784718101 35830855 679476116 951612235 991752071 418863672 447866485 860879910 936871236 143796131 733801254 188406795 205358055 250203985 534826018 399229512 794842938 694466831 835662691 104036618 578686422 39498089 100533619 216793159 380128558 666371534 931816639 538203524 969251139 306393441 604111334 474503197 887357499 108190662 490792512 102305560 166291622 216515088 218521794 93693457 618373629 282196773 615363857 57042210 693616931 281977544 648092900 288053127 397087165 84624378 806815585 486980900 587516626 705536782 988126672 798831619 979208007 757498134 821308331 466470131 760969863 600556570 947162950 761299756 904936510 394432575 503250341 638716491 830499673 559916454 721370211 61343060 142702050 61431112 692738833 847301209 907213581 397882223 896215727 604342930 665784786 565817022 917694427 949275060 966596080 412382215 935065201 847500359 950306418 891320205 932194528 113444085 431954862 137325222 542730333 472975938 473090972 851712311 925208715 472118971 523245257 355501272 771218325 969815051 982090857 645050383 890026915 910711258 948190966 583816131 776621359 95291251 928434557 357403620 908722892 26994100 673073329 538911789 646508839 341892198 802336905 273438287 578459089 889341184 912228221 944417183 983676613 537777049 999364349 829808366 940186478 901520928 967879566 940497283 974891153 253981845 449663607 814745888 895863226 46666164 848691675 764014890 931888339 808935627 910758234 287397501 996807053 496244706 807153215 736610272 784784499 857189992 983086955 149017548 586686156 838378944 953948368 107031998 695929292 465153064 849625299 464883645 603604211 410936797 782946586 898659214 919383753 42127578 577403452 731595416 818068163 283651238 959204126 897408622 916007631 85069414 202419998 928107197 963185387 815982849 822870938 120025111 738886758 201253553 587676161 532146727 610005038 571679429 662356698 691678298 844423394 692451795 892231798 307523924 858927503 498525903 655725147 880150993 957943694 740798977 954448125 883034900 954771393 404967473 506088737 759621349 926625911 86470756 724061867 171381298 446738175 551761708 684276477 303927863 790502415 593031663 944767457 705489509 758341911 56238105 339180159 574154090 733718724 677478338 744599261 212242704 904745169 419866840 521849906 356785941 448495421 653795623 876258873 724549609 737241107 379813560 621810238 247185328 743950324 123201615 496044700 797239384 932152981 806152374 844460375 681923113 794846662 473865401 989139928 693455323 848123836 805920924 920631039 175020541 549705854 979053891 997563091 545196454 597904110 723833882 975706083 189090035 893962705 627360803 916469625 564882603 899652379 317513192 690180519 18741636 121438973 212194717 471591795 185069957 638793394 813703719 938842325 402453629 525990817 64329384 460194437 980769314 992745039 636936908 727494341 858124208 953421227 139384071 320566016 304043924 951158706 432635370 970066250 814938388 966131460 761438727 931600797 847713716 968398561 528188547 920023398 831809913 956061189 748786930 828485012 853639769 945754713 737202598 916585206 193379618 333618705 134407045 972622163 343533712 958514946 659656342 912238861 409767916 935338577 447054851 969735237 393643122 648558723 908172578 984313725 911945630 965472299 593044174 809367389 438685209 772320329 390243610 650613266 907784814 927651047 902862052 964584617 596252489 992081762 380134690 707551699 339594637 671921774 280410675 730109529 149162900 239368131 160054861 979263023 733468033 841621745 539523460 834954690 550441850 887205766 185707495 639013340 938675463 994058660 254571833 752462035 465613692 743293131 949319480 987783146 280712424 647358911 88589615 805493861 182013765 889749474 301156448 660132061 889422283 931207210 326581620 852657352 116923871 544078936 829186040 984526075 805233080 985940277 971608357 978395240 956041007 999408001 386290521 879755356 62633701 481319755 826687914 929803068 683185176 832867315 4460269 231479713 957368417 994059792 118161706 680335262 664716365 754829074 522660598 690975753 248248382 400145516 419476615 976830821 698312921 957188193 430637803 533213863 664775753 913746278 785081014 807805573 895177613 992570088 34695986 808084355 315035579 581616416 199661100 235895155 940345150 948226717 893962043 904032991 821022486 864513283 724545085 969932246 532893509 692193958 43639064 686403917 115840654 699003723 928824729 980827529 451043875 534235605 708029904 998441824 135827245 915952699 598202471 731422500 564353246 801654752 661770561 882042298 189676711 633532686 737066965 910581599 867489869 996843048 684331867 696038037 859427143 976527863 424792024 937393488 734739988 926855876 871910839 892960638 142562091 749441154 542831112 612809870 429094568 959570831 970550463 995733366 731225104 847348337 902071600 982409125 80228933 476503439 716057724 975059081 369227422 616466561 393020005 745832724 788182734 928724334 580015545 930660009 790209300 946768415 390922007 441418873 822213636 833750693 125967731 992444846 26331337 256368340 131009845 451481709 16656970 831458005 654089240 997650543 256837201 770865970 54197252 850262865 808326563 908242504 731559752 833652443 499577312 795139457 175141856 579663503 142335157 925694955 572134430 763894060 283057030 825147258 677689836 838028382 810649454 840627556 153023502 711469249 947024285 990597256 545958802 758546757 406397564 453289294 727798940 757759482 661320689 942333868 710502210 892970150 980885816 981688758 553851585 653914968 928102854 932407700 343913748 496010287 399704177 695271498 380144595 736454154 127719295 720114311 215958048 614291936 139046769 811469483 607931963 705697882 309067232 705618957 491772627 784434892 390833989 700283927 145138545 516650421 595787050 639263745 377650849 659566036 789293460 919100719 968663818 975328978 412206353 776469564 284950225 920779707 615464555 785139331 362016657 968601435 408434276 563147465 124018530 808654289 468120461 921860998 249243388 699062843 628220518 842537106 665236463 677166428 190092188 389452449 394244960 736577490 280155669 532393633 421573718 529366185 503954669 893356818 855422118 978114398 570153727 781389912 32104763 757048260 662037823 895700331 748179926 838484983 318443876 593669076 894432931 900253722 279551420 351480991 510809438 906004890 843476299 852688311 53580655 593954093 835587251 849810853 747137022 998313065 686213688 832030121 536318086 635163105 830896335 966600387 661095715 733181552 985904918 988504307 207906554 852987429 624500660 652284581 754583255 965099507 650698901 883188481 687845626 724566362 389418326 438856023 4231106 825759854 604791380 777438807 435126520 857432786 329676605 920351211 981216972 983983389 264383206 970869208 268926056 344393849 582353789 592724827 96318862 796292529 709086391 806219053 300880706 435386305 651989306 715263372 621767726 708393755 259652898 760987791 332673018 626927656 479488563 927365424 666180005 964152038 5551962 287236166 4578069 540190153 273258985 282127240 218440774 516433466 145631587 544208292 501662098 666969304 373319505 793888131 952247250 995027777 376448027 912978662 619825112 674174422 317529130 982665941 961210001 979427682 762449229 850209906 262457516 337073478 598161539 657054789 929525653 936816972 810865026 882703014 100106726 308537526 973997068 999465953 974253731 981113909 121647551 679495989 36944802 488680721 894186194 947340793 383762125 921021126 105010506 604769397 782073036 839270529 562368987 966688256 114241127 750359431 911769812 977730103 452109710 979318647 842631987 942247733 843126681 957034697 26061984 658576266 692050919 821606185 127044463 510650448 121288866 440146639 795029224 833912963 491684227 946346674 830896630 955631039 732638006 897132884 865050643 905786837 359340256 815504092 188891362 831407250 752157643 965828622 232795371 900154276 868313728 898862946 711492911 793834606 149751121 469780928 86463532 776553464 300707476 724631603 4041923 730644951 465706161 894298518 200839940 565919022 177488516 912713118 800798323 859004956 719411604 765424929 778391944 977441450 539771125 566153908 121819577 410155743 275127795 465767641 811456056 924306824 31598725 954287201 810285581 818272353 653054642 674913922 573524921 596841243 789573559 901525930 351705002 705587256 200390255 730699904 619940581 931588886 190367944 773542242 719814873 917672204 63094215 743610362 387945043 539962340 313656280 855736535 636756108 767982873 728230706 832266783 422592178 995924991 338601665 759760809 94026855 772193180 633040751 688584309 667101233 742567820 759590597 800372591 817591387 932318766 153828307 951423766 750674634 974167731 908829528 965177937 391911951 679878956 846569636 957815545 47096340 970172117 317438172 364916583 130860814 714834170 735610533 891719810 787720811 927906494 880307985 979253834 133568346 486480043 407110679 689559745 581034263 614617042 700093102 946140472 477932285 866769201 397172483 407620490 766922004 785935130 229318430 275556285 418434125 477048459 253827151 405044431 627364384 970998197 886482163 966716922 672180564 780855780 149242275 591461194 412020205 899262568 75638268 252036827 828460038 866925123 780760781 813578845 390000906 688660123 936342262 984696300 257689739 772295021 632343365 898970996 358710088 794545489 627334716 694109325 354871092 857675037 285070710 579738234 117668279 921941610 365312442 954231152 933295803 970020148 982366913 995396184 990944849 995440626 267387285 681694448 372463065 943092862 617750167 676607471 937448819 952661389 640678996 846708417 349459196 662644041 878912231 951364550 158245072 381301804 320401879 366727251 88694066 793406121 441385670 960060810 683672227 788983951 261016770 502172036 275779100 576289375 553757725 688718601 614912821 645252836 159596347 669476583 398925249 713889996 769047221 838403865 361029784 635132970 23999195 713351646 394505218 448300686 502180889 704965562 782134523 791288077 782052291 840344674 913759079 961377351 67576110 927148118 473365477 729343286 674108442 892818634 756947443 816534589 379563219 700217015 783818395 886721554 925973039 979544008 550349529 795081374 85018153 788090411 946848144 992197557 440128276 975009882 659955634 818200174 104636833 800962419 241212726 432201836 690799014 987171813 287278349 499167877 767417098 958245595 336718689 706820614 944454562 973914011 829981367 945301609 73668564 78593159 103570421 998119815 107760298 187104157 972241301 998356801 459435685 664889974 506765360 852937613 349387321 612175987 882212855 891406906 410172326 945760068 479658215 948965696 905668704 907395662 901866949 928778478 834584137 966029675 485116599 883342451 975387911 997309871 751659617 946740421 549254158 956621351 960022788 994411906 889787858 920465826 217518209 913069927 437109190 738418067 962420329 973727197 128343081 818862648 92940046 645108216 293106096 606142504 903168685 947881790 376164904 599343307 433801379 903551724 369954091 374592279 712146604 918095597 369152713 846504538 637475305 763507955 969591667 997427302 269674674 718698947 550082285 921311706 217757501 759197068 940390601 942665152 856941878 897243627 322066197 744193295 50332083 359133004 918766959 984082513 924319479 994788282 934422343 986679005 852901435 986801486 957632336 992897597 310747845 653860813 219234589 247142357 637064469 888805299 696240159 820297038 321239908 482236719 652639287 991696842 766441178 792926735 95443589 940073764 227631653 998114650 89709800 801271906 129756163 310753587 283672437 618019447 302352477 396714283 657900937 870080095 207975856 274447110 365635441 386321977 277845795 536486792 885890210 889782779 572029173 743261395 887149835 895568110 992879965 996613695 654499865 969535668 238637343 592437691 857234153 870909321 18381508 559602103 303103260 864027952 757424776 777536126 329157011 877865143 248867703 589744783 624962399 983584495 791745578 992419334 282735549 761233036 460883031 625950360 883201535 891406900 669774262 985558845 32582913 365912222 196864920 431835596 952554244 996479336 616706353 912306720 501402377 763124752 701217493 960549458 126255061 741355922 659986623 904858969 460897501 733251073 442965487 953729731 993727593 996961634 575991475 938666095 905977227 906581380 681266464 976347284 549258389 759265995 675240533 796200111 147824962 537326064 174559042 247462999 974258551 988691832 792358868 936865696 886109852 925354433 530414847 584661639 58232161 979525088 125111346 577659022 143133342 148632815 865584247 889412019 899014855 992241882 628032636 958621550 204008183 526189970 553833765 632089646 558488530 699293385 175611896 305034241 576186142 655391572 654938053 865844148 804137191 843632276 954139590 992128245 87540670 763839477 603564343 712715934 662009284 779424653 993605071 998884281 894342510 992325218 204776997 639591657 276255049 847098991 420671101 828809510 123066556 680268184 622567975 737449511 339233971 697734916 564521513 669233733 25651265 595641933 860223122 992269670 341377414 374704451 269246566 651649306 56920065 584650170 808885378 961737409 620934274 841160572 16438274 261017981 198591618 867645334 235968380 383607535 983435719 989742728 840225850 905366123 700826900 847122136 165144030 282572668 400282948 731481103 543829065 757158923 954815925 960897320 311459888 849417310 828694747 886706133 979642547 987524622 735316246 777285361 886962423 949000076 975003682 992848184 790927185 823495820 924606846 978807762 838554131 970990425 305614072 438607732 694169386 914973030 596248584 724777822 477777436 895241182 560250676 623012641 764833643 928061079 856024689 928557114 489447696 632112761 440512094 567672384 802333798 981305380 298318480 539369013 61252804 954661528 431814727 457765082 333971378 600715058 669689961 964124008 539402446 839267604 945142955 975668538 521305808 882747368 110074722 910534762 529698029 972752909 299578095 392094905 315024168 966814579 974416277 997292714 956015800 981911561 483040812 640376582 510211264 939131070 322834528 950591118 849772155 915700545 324600246 658066312 996594241 999789897 251135373 372451034 837336774 841543107 987539924 998702072 348180716 847580542 238191671 683093541 179489592 342497902 776477161 869921788 426964581 988041557 573804279 636100517 362414826 432194973 902017517 981120869 632710396 871209632 884116221 901355788 979587451 990120533 199251701 984521317 632880385 985677647 709124959 988442185 912821441 971505497 107624769 129776901 449194675 462017321 240271160 297893898 381264808 755639497 728496809 835276319 708955350 940659531 874249681 983516930 289947378 464978816 646250531 891337857 868035608 928826103 87204035 402514754 157839383 679044108 591350024 877244995 914976162 964993878 145248289 835294868 470778276 845828082 118696730 209240072 475421239 575642050 493336999 647544760 748507464 765555285 57500671 752802213 749394629 797106360 695952269 989442646 580587129 795804591 39621241 112950835 88190043 159176277 592893898 622515629 492402669 747866059 836588258 907478845 234434503 996547304 159637603 482490373 61177676 460668070 533215869 873063651 422658744 567763644 173147580 697665681 642197687 821054709 268639272 480453782 464863335 797614990 195393911 492157712 511102686 615504678 3795314 336189491 719977282 815070532 694278096 699180203 107818619 383627926 331921922 486067983 534007990 710378649 163490690 560897004 358194614 554274250 633033559 763317609 874466328 933350361 608537260 621242100 97584584 796359406 290119987 428900173 800688279 882407630 178189917 578306297 830740189 961290276 631680821 767480638 152102190 684424271 241731259 363143044 674991448 931743191 848767640 884695454 760334765 906691121 293436787 597199705 19696773 883772337 40487284 543713276 995709393 998132355 391772803 884567050 577657092 864540692 63804409 775337473 300439566 859815446 515828345 680584460 774724013 790014131 431210984 440182426 602831677 991091042 331312857 909767635 907301396 931138563 48254215 261096979 805149759 867582429 900118317 990112475 236833255 374066812 537175766 944731806 680685954 752720358 129463877 140083738 752353237 847790527 997935212 999380588 532301982 687385187 925655014 964876816 646692745 726167776 699417446 750759775 805818985 853062451 751566749 911928304 57886447 550988662 520531593 962954176 872384090 942715129 370270249 672774343 302733952 443845647 251237971 823582460 163202609 961203180 898598832 936703779 467834474 777680417 653608596 689011088 399857558 622150353 481693302 724272762 757195996 849602992 446157190 662546938 68863068 236984090 469371387 486098709 286502249 506267394 587143733 836500268 719973548 904851586 235441315 528320899 460299617 825033082 416224761 762788218 123119842 487694493 340060410 751058474 943423386 988125168 825355425 951754578 607159336 961679640 894503445 959437104 630681263 978878934 850534979 915535402 22870679 914752832 644864253 969985263 63478960 146782881 238496100 853622009 764313437 987534410 898871101 985191262 895414928 987368300 151439063 402342514 772323552 857999461 658921400 751954603 822135633 849825499 811862226 945972046 343265094 429063935 282847243 808248066 30629514 184559612 719419076 964995243 895034118 918202387 961221599 967661785 801733357 943289330 877709119 889750197 843138980 853481388 194061325 384043686 346841195 516372025 10807221 968730628 278434400 341278943 713464306 833809146 129495810 785279210 186404603 761283701 839661651 843421145 320704219 393326994 104903630 358069386 815955529 896422297 517128724 574710974 27383292 237825869 148920578 951151292 604325175 725122045 295000957 568349983 271547430 960539122 364060809 956320513 914579415 969995624 141198016 896573296 469034284 856472462 338939107 365987340 345607026 663250152 465895494 617835031 871274815 944247499 641755617 792674401 641145453 752582733 116238891 885911857 335347910 396958497 801110550 848381570 790324855 953825013 899369407 912588349 294898023 871892701 752894807 942522113 437113178 516111160 45220710 830336289 320147816 400394170 646586905 958924563 883845733 884565893 854975739 987626978 831578588 854393054 620468905 853886770 942261360 992726450 450530105 671680838 604187029 958100812 988010404 990891214 560968797 889949289 656410304 924705561 847314460 877087156 860276988 963120829 624071698 993697911 518843575 842982609 604019934 997013104 14409493 765071252 398834233 659224756 906830847 975219871 627182161 737416504 384936428 409317690 872649896 942480532 211424605 584213463 917301092 930170532 982335663 988025540 545273477 576096907 64301654 761386010 891454595 985167906 957694345 971043765 712309298 827603019 402032371 645176109 972707127 982013949 652717399 979274121 455121271 824527346 185086224 538625403 2554099 377779570 282460677 584591875 991344803 994556850 20708785 810567148 279255653 901877175 700208373 964557610 456366259 809285437 901377321 974891513 568896042 707894630 898602873 964619005 221187686 546276532 255828323 409672923 845011143 888437255 676219940 939555546 351252891 801654730 78884339 328607616 970697068 979290667 914114119 938071509 614171847 889597270 905145261 919803181 175616451 432834841 386757484 998187249 23538372 953547992 137810121 806128397 469436133 750278357 914468456 964864496 882478645 887826105 957561171 982214868 562598821 989919441 385497155 455944508 224272259 258065865 745314301 874181542 338421319 773171472 797773237 914458551 189420179 476058697 147748152 845671413 983834268 989851203 281277984 917600103 336743762 602020867 168488561 622097222 348932686 500472016 55643407 607389859 29179574 872627680 16563208 707122400 265672396 761971481 395825671 513281473 822341158 905685681 288130158 934092845 373812800 632149256 335200774 904618353 10363463 659503651 247745366 715415509 335837707 628610268 516510763 601572441 689733498 824590407 810814398 858252060 982204818 993904184 661635742 893108497 136680773 449339523 760604491 941452285 620026987 743822892 410495285 914332015 234236782 331030767 129771317 541836255 618888240 808498016 500045267 616538773 491958636 667386039 513778164 700687505 162531095 822791738 992484779 996299775 736230467 743968367 340713535 669019417 640953621 680244182 298216228 463728687 907118542 991938524 949005908 953377142 441970808 789366164 818447093 946434030 481233662 745805919 230719685 402486765 653079322 875140948 896885565 962147003 466524950 765015247 914081218 988455356 357449044 890846050 886712323 988278697 669335530 885403275 42957738 667836546 516764938 924909408 745800390 749544851 365977212 555641011 860398160 912418144 844325574 877014462 345879731 789829255 6767290 224745347 286565023 997266300 375863997 692535022 546656517 817538792 51371680 84558539 900712188 912164776 502476636 918182794 474450994 485535732 889085634 961432680 895347652 980631802 805068748 833123554 975767383 980696126 562123228 778170357 474691668 530899517 581612677 955209658 117829827 567120438 741025173 951025184 246584107 393757951 603207906 980162236 208290632 510724300 634128191 905750830 536691679 591631828 571997886 602869518 808227661 881897343 174222943 881944023 417956792 646130846 664932264 715127605 11682062 476820768 182714063 712775235 991263801 998359727 341648959 961201753 319657504 675023893 321434534 571224947 11696358 950240448 717789023 884702946 160758827 473613780 800253850 839234039 828272102 930911048 329480333 772230978 619688204 989554304 546161567 927364084 189130057 558149473 578157629 589728591 246529588 259028244 927934158 928487616 952492216 994505425 468301272 650553519 775676570 796722213 859638023 990819080 942521185 954327596 450732863 744234140 314563087 943732113 500497738 572550442 27278068 914399484 347438521 472082326 880048970 884800211 511230757 976891441 60981206 630366472 545285478 808778210 692563424 984772005 165057539 973222012 809952469 960127952 889548708 952559579 85168010 492793139 943636274 992234238 573078175 774398007 252316197 584912599 609144392 801893611 344370373 714616180 771379381 892999250 435108250 538213366 268435304 584624439 147148637 641524460 321126151 801259314 995855999 998187804 904939365 908153602 333370083 403025094 116227459 207871765 595854651 736815588 885701236 938869668 889303633 890759407 65107866 807483456 921377997 973392843 763523952 768254924 219890151 662292870 616351549 917167205 822793498 881622173 985753073 993019026 267215237 982739537 292112158 341228565 357385635 818747720 319044233 486155261 197881397 679161611 375490261 700559904 896180374 902651343 643631340 931632107 702206989 977220970 655761444 861930180 648596829 721522691 747275059 898999829 276597887 491867782 354400903 653072926 645823113 908140711 145579868 395381878 863739980 881538438 931241440 948145731 470110759 849883677 814783693 931681568 145751868 602000830 38591010 884574114 888750380 977149986 390708401 966491602 292494925 333028832 391591958 804746949 524406586 808389648 9553578 186204297 850454738 969759058 604677395 879295033 796764921 919980906 657319916 856830547 85140224 92629699 344920566 968716813 4323438 361503716 692376024 726095557 713122559 891843315 356476566 513308641 361844479 899069081 999005256 999679395 663925183 719154626 133169022 412071171 862087558 907373164 809107404 966882308 166405085 961218039 361406713 504142542 9394967 778831116 648640209 692121797 207732897 517248895 315788851 461481178 364972098 752115669 821900305 948935888 572152960 670499843 216493912 619897462 567721115 811504500 276993979 961588689 107206883 853706497 539179746 566125656 386728956 888458824 195186778 726936763 251979466 578286207 441768788 940414891 515600054 659868445 184987916 371275931 37133205 442638408 475748666 984382610 576042333 764353843 54739890 934075648 216413160 893691188 992951871 996858071 354439870 534787186 511193407 710081001 926684 148766882 684228271 921447623 94275320 179406090 822277984 835052497 658871175 936741099 657598003 931291586 594741213 724779669 458741320 556821447 394715587 457996752 554094261 796540699 257081915 608237132 636317918 982417091 597090166 749343457 985203398 999545287 966514685 997581084 706172272 839385555 138966572 640885738 163111477 220984968 780418653 994848712 47905738 790286415 967778624 968366523 33953163 632414428 376206270 640008874 83708272 339716491 480023061 528231869 879148826 886195349 229945141 646906053 105632621 625007943 667359638 978164075 692879369 935368538 49171306 202049479 642591722 810973863 393238038 883341642 714984867 754712794 940754824 949834629 847248678 887769731 130356857 780013754 209336611 226510586 273882280 932069350 11201220 370858704 473306305 964850796 825029010 846449503 921593074 988703206 426790503 837760703 820649265 839347704 135852388 208004202 829440526 836900278 528353688 721098938 275554919 303596943 7185930 182292498 224839823 532798853 643515378 747555125 625696884 934429184 323457526 479089560 981083219 998197736 240517438 470966463 198830259 843895240 384387411 455870295 175905180 411428173 401213703 552855844 316748190 507784438 902652674 951466010 426970483 624329404 94601176 510611379 131022806 801612233 398799990 492322969 251093721 855113883 741939361 861565275 912670081 919275879 89278599 548632898 730379681 922619831 368635867 980783801 850904938 861672135 995290644 996400666 850201803 987776601 322039941 945535465 13680650 834144501 809482745 907567460 242309417 801395018 420611068 793108526 443713332 663579011 230839687 923743636 981152298 983106166 203616340 892249318 830969611 878735248 360962392 839414061 529064851 803167777 384601612 866659722 667171432 934203123 731495303 751500797 768554726 892625392 748081692 864226703 400992033 967825728 568278625 742019574 475884106 544130211 387937857 926870339 742907524 939306011 503074288 851221793 321670249 561150841 697798162 973662017 442035973 805263954 907373427 926766769 515225695 638690793 765035326 923195187 283148364 323293665 369054523 419409000 19440255 424366636 337452490 588988613 985499247 996575891 645721680 664228709 331929775 891274364 427404991 650305860 197746096 467236541 695531225 908785868 867438103 941047584 411295621 645060822 833026895 863822549 40946469 259357586 323471221 735088678 76995172 685259211 374234084 408823293 422917645 829727683 708116609 829065658 625919273 807281504 233217104 387547303 436463093 560776739 384399605 741911555 794508647 922343038 313067946 940519733 168219461 592121078 65889551 975124955 827773634 985186148 274811623 898044345 271922669 967489770 106442255 284336123 812978753 963820875 57875225 217878197 674909165 874002006 516065202 780783146 480148677 756268076 31397869 981048546 396316704 429269882 646929753 965021914 173923108 688281537 616559962 624246429 366313706 812008680 405050391 767970755 492683449 599161815 471341745 485540255 876459949 892055936 599106071 759918744 374007211 745772720 337607881 474002237 607912961 839402287 730072906 961087485 855838703 941834260 854411366 983303299 276848918 741620342 727578370 900241889 123143659 495706647 871622691 872205267 243605683 606259341 151482611 961063729 491398817 720376391 851541398 875975119 463044463 810438682 111807513 950269929 14331947 22662918 409747796 697001468 992138474 994536489 518365581 835395688 421775181 701927260 696985806 939208519 899196902 905775464 753503979 890480464 820637285 856628754 511230732 683090437 335434753 629249591 608726867 804979106 563780158 837196273 646331554 844198130 976301553 987879086 867064903 938617108 923171020 982206964 233761952 430679292 309116618 552399746 328499944 871556344 168216039 637800239 510838720 854353748 682426923 952891383 921333219 976225180 392185458 429199125 75755307 327404511 45717756 297866934 332202910 585102240 50608745 737114891 984217597 994086771 989334038 992630816 282839326 636536785 125055942 332067807 321147465 949740160 352650138 490781640 749848895 801950372 246122222 300687657 310714266 562467108 896370871 961153792 143300092 437718440 472792840 638725526 495499596 526805150 250123019 751343973 720502101 777421830 473785383 507822652 111709087 437213625 666512044 766637550 529526862 886022170 117024757 446293619 75524970 528576597 406151964 906282406 186421566 438198239 661259841 673980819 952659443 981576525 397949677 632827990 623098252 938965366 19133938 292923398 194466090 267344560 58940685 244773774 528313819 933740837 98931284 356565484 117912781 856229088 953482656 994718342 880339748 944311669 795094283 812653506 586106216 600731153 288428026 854561087 973588823 985477953 937470523 986429604 703048101 842981029 835461169 931367559 324900062 668251588 951438121 965281664 774600153 813417157 566237396 995810477 963717328 970178292 585690400 903905482 164785584 281054934 428021843 754478748 667697271 950843112 269684224 320195424 71968089 141852036 394052059 513625291 18175192 314602181 258157351 962239035 308414324 790787785 853125642 995728617 472064257 617319659 896403292 931776325 305252558 955006990 588707079 844937724 943572596 952191303 18924828 860042932 11261940 630089978 932994509 945532373 868163164 990700798 668125746 702789997 434973164 468725243 825383105 880497129 176212884 803947288 812499547 981772244 115318609 850072798 139522425 443395578 412953594 715469235 910643025 960356519 126490293 167779812 230862734 645025159 61155900 486912468 128024415 400406609 597843941 840680788 397700908 782416944 685545531 810565188 972769274 979621122 123950496 142501774 878442358 925003277 544122566 714162652 815706308 893268389 690564557 838993778 943441447 970425201 61216935 482970053 180709082 914825843 829011026 952788962 698065856 860798493 971141417 995871932 712328057 981748116 649053063 649809341 551809259 827380559 625758084 949760376 481408813 690745158 411543 449725610 733575803 906053728 42418314 926558055 430420691 641200895 413280698 807862272 476919798 695650168 83532572 656666571 183670374 276506416 246456869 836229898 576048158 813144532 640036342 856278430 939218487 957184673 525107102 912710459 373145661 816658161 984946543 994104622 456929204 661109953 509763450 774431015 986819938 991224776 283286529 746666891 998439625 998980759 831765626 877627791 55410502 554342529 777707417 815215315 146658126 716767589 549235709 559159311 898047020 956584785 867723474 876690488 1086946 824765633 609635302 794746830 485907099 642103417 853011634 915384104 897577007 988209848 123399907 497906049 866133173 981133431 237529682 903544689 210923174 943165721 70861848 251557854 522812561 651749719 918515843 980319639 941892376 967241535 404034331 593169046 487323179 806623153 792576911 860435193 739571121 850095162 89627778 486644623 871053199 898153008 44807885 241872250 661962893 720260614 681783102 930741465 845563495 846872781 218802315 676088210 170553803 808191230 882695654 912651202 969560668 981595697 599301077 765334234 112500882 997125669 287206880 373870177 274268846 974627691 506014484 566898241 767162107 991935783 571209440 941780931 981228489 989825486 781870873 964540199 689892344 872044357 665531622 899107741 499215766 788860157 874390474 961810079 29177729 674500698 1112200 238026307 820055662 957731453 591973536 957433838 208602319 250049544 461614116 851488994 526702221 940143286 455866580 590012016 666524526 711306890 711746554 722987577 18046065 541276892 300220393 661047548 823746458 977222528 748833891 815225313 421772000 500746363 945789651 949560643 488445976 631571033 84319306 281851112 454434416 695026966 692201691 943369687 291869003 728595515 983580758 996142125 92394510 254882035 911886104 981378358 503312363 838722701 508182856 841790052 82939630 613679032 878048346 886716406 76291221 875019881 281909814 410849202 757250397 918064005 348295782 659133512 463415636 770271610 480703930 848644026 143426827 418828445 766484287 862831953 446665861 932407514 18570088 624864072 727940032 880668067 753376078 878217074 92718369 281721476 307022152 928956912 701913678 796143568 8222332 938203273 29254152 881312647 146983307 480768396 222963815 394835092 950199946 984739795 959026678 966019602 715221098 914902114 59225914 744886745 317855249 907494288 356891920 905273151 60881001 529826555 889881907 969642435 770700119 895830518 509859496 951945992 496598581 665797984 199259540 619366000 389764706 598248893 735982811 857299096 214772982 393853451 453235983 564677399 684804873 866496395 956102678 981670683 44927231 401643728 23554434 342440442 35415421 633018438 469056924 984918063 324318381 530629994 635870488 966665973 674965792 788738058 924822128 940750972 650437865 736662788 293030799 815618374 509501836 665240727 436667798 921984870 972285008 999839139 113481933 479741342 536913239 575351366 903060454 919635823 913037899 913369549 178226908 808244086 117197366 488016458 151161425 474732960 948504779 965110011 511291168 946231749 565696083 747121956 875465359 914821330 423447633 660396131 621817020 717786703 124719911 628889881 155481180 836761903 278075997 803627653 578497029 610624647 545176209 599191410 133810353 315931502 357842604 556777786 898924989 972515057 778438786 827038891 351100205 495839710 112296846 747319691 459755031 902896759 219942224 833100764 802696552 913817783 297288457 306861754 662834855 731713559 375913837 559307093 568899425 634914035 648914462 714893446 715110028 783497523 70203354 600568522 565014623 677113225 647852687 859669759 610684931 770872831 340581233 831038285 606684546 759807031 252586621 336005969 123300187 875907435 544844236 612543524 814942156 952711030 282331160 363482231 2971483 776823416 114892084 150545283 27132607 88244977 829975737 879537495 956595402 957546853 401227327 771969002 971864864 973857480 459427965 463686991 196022408 628900951 197795782 921591145 63272820 248743966 411336784 725104800 277235320 736022113 496832546 929346881 767673069 947532372 164973347 915210826 993384022 994848303 824426866 997440950 970217981 992915861 796555894 871791712 222266296 256760343 248425480 562435751 12968649 709038111 809089099 900832443 858675512 866096967 842688712 916215583 279839283 731698081 869211096 920706788 418797512 965128798 289567530 934852196 825975419 933411490 150746791 170196591 91444471 290965233 933896703 984553170 511361473 686759951 245228473 693549573 875808924 964990050 385559586 580993555 754560528 987573771 461708477 970953846 204516929 252608735 352828692 629778638 240635764 783750550 984352391 989141518 72411786 395647658 68775247 505886119 968347528 987800313 233920156 265443165 224923526 913833275 654726844 666336000 51483077 84395569 286697856 605217706 741065121 966167422 527461921 757449610 295549262 447345785 180852041 648366866 388957006 513437154 248540466 284916635 196759164 498385974 181656591 433925664 40852794 828437696 96528749 878856186 461767567 767735271 461494887 600493752 277713388 496047378 144967269 938283435 362743019 867327242 727160232 830377297 247057734 512393183 827308609 891428435 59302566 273320987 748541278 754165659 270164878 593154602 545781908 851502012 219320935 931859706 822960223 909802677 101959222 635328275 548428868 557184701 916009508 991084388 304840205 534528765 697321461 730443525 323106909 992869349 483038412 788024755 350674695 839429824 604110668 922613617 597626697 863823886 687328628 733369271 894269649 978738128 443055270 774115537 242131176 678379410 317815467 581656541 122797895 386189417 794165166 870722479 70695925 180791579 114777542 412442158 253375850 514480595 714905178 841240474 461851979 691729520 116259122 615720300 421253642 793358577 342149824 930771860 345536440 371554882 870533329 910581235 911165933 954279468 447378511 575523169 891767464 923417375 743264724 792268237 233404831 858856235 633402628 730081883 118510030 484556746 110429341 542863002 776278721 980547254 899846047 903098367 704103008 856004373 506844637 986290751 442680545 663158879 157069500 541960328 311938554 583462790 708041273 880802259 515480321 550868258 994754805 995784790 11213266 812884396 682698129 917465430 631740893 989509785 220061916 982717903 818603231 985016755 314283974 358718898 38640466 945973656 117932917 194392828 954799232 980983331 760575833 783452628 416432352 619370926 857271830 942557189 411063713 447656482 102419356 570662228 655799161 788308756 771473143 985326261 723093099 929451748 901243676 927135012 982291567 993258343 62131174 387819491 630800204 769965857 110854276 740333315 676426536 950159561 367683642 579067971 282674546 888499552 45540636 490247114 746308922 781643110 31072331 373622084 992045170 997778833 224035383 927210556 185184887 398008306 821640191 931020463 753405176 959998342 611215268 661031168 59055777 953779487 442326773 570235005 677093007 870901534 450644052 935682725 888896713 929203252 14429991 636543904 818360083 983645201 931921964 990852901 363877511 756389888 58255578 349500867 963707446 968219242 562438523 869687647 990743746 999972161 977637853 985628665 10244390 425652934 959683032 964200928 205819603 916291158 100265199 607982405 168764659 644110876 706464237 809919320 859887261 959178555 978671792 982078315 113467263 238106835 728635556 950098411 67285900 916604924 482061852 725059373 407172240 606726552 855636247 910800603 874312085 880702243 177134029 347844139 431986936 566220439 403517828 953106671 24333714 569923497 697287634 838614985 558538936 593361756 220121426 952134431 207032593 895436767 114065353 440338566 236741295 369736060 430607051 550497625 241091476 531483647 814176795 884854898 494820055 552540647 719944639 793122109 903059097 928783417 312105092 664959454 940624892 980918881 258579783 905173979 327398136 350248963 448342489 774530364 185431012 894772322 890035358 954370125 788644376 850380929 663374481 811738595 965080351 976023373 348006020 497736644 148100261 891945178 669970994 969403961 142672257 753435733 308728374 900183350 521243289 722405672 87567759 222043764 174460806 479180188 751062919 788735362 139149562 867183524 289509837 743146280 437650424 481885355 304457067 877484943 670182884 919171135 630952458 989749632 203087289 483517123 45670483 930865819 785157988 955213688 616905753 895866714 871847959 912902051 934941345 975911911 270056524 449559142 848490963 929711138 738232149 934349425 631369639 661248774 271036643 732880808 165370642 584259217 847531999 971489459 338601183 350730875 701779684 740365826 280999514 841965007 328160570 458848560 14772905 210583218 128758596 169970935 280878600 355145263 262637403 794157539 166008937 325993674 407513767 935286440 379554864 550791878 201740469 292272862 202813997 429857702 783232889 994824698 502867683 864544351 962873517 983383208 732465236 970565457 809537570 810261232 135168277 556708902 808303056 875007703 206346136 433839033 705869286 801881368 588236335 874788075 554803338 847554353 905514391 950574618 432979530 783410272 925704301 956959128 188566566 612947376 361066567 983449488 574338666 631571692 407474291 493533606 663869270 958486110 217959943 625054092 867058979 940433315 607958184 963764501 951194871 954801427 431681640 477047835 779689795 999439104 480659676 954278359 789489315 935088593 548953956 883900485 828954667 893427204 711206119 808215430 682089517 906087840 343958691 979123791 976571121 998443247 103343359 118552851 624880014 900792881 114157923 560927355 267851736 763896796 907590045 992547766 261195978 937846529 962023729 994077562 48870171 704564115 489062082 743386842 447758102 629271623 854111231 958614508 105736468 474379458 532785786 939464237 157854144 714329896 565246680 931159793 498596968 556002168 772439460 852942794 71325262 683399018 201773393 499669431 12131534 946955964 402721882 703147647 3111534 803908363 782630250 960629541 52917052 245561877 503368866 618024714 936417522 999780531 506505035 508619470 655409097 810618336 936399951 940437034 527917796 640403798 379144832 638131987 56979543 911210079 26569236 234228990 809102423 829372967 577249719 594717305 644678237 743682280 531328929 833950497 163082051 174384138 691435906 967125144 127509831 602624817 802961290 904404686 155306782 342540703 506032971 748130230 10284486 567170729 748073670 955494079 877227149 973613007 657909167 825064066 479291165 575843312 159586411 714889470 305717497 455688586 527527083 611489199 618807346 868683237 727887872 872366915 634406085 905983481 674488883 863934330 483402757 996831956 63774787 933843803 201933710 331736368 701039300 802537860 384044016 668828167 540760251 950730114 688455788 755047493 401572627 681114867 300788778 639595171 319427266 400784405 653411602 850867129 535392841 782824548 722269201 772564604 265576344 652917584 593822251 626909100 586698668 747807109 406417193 495362134 391369283 433296669 229449300 769399841 499618462 822026193 410749527 662218566 891332137 955298771 161488086 784147621 445242794 701310999 454938122 499833903 229793568 745798851 319622698 667370672 899441897 967045219 961912431 998793173 637359219 966021366 598640150 836896498 382774642 492768145 614263236 869664306 905546270 994067188 180916739 475621260 43784470 375401954 358534172 707895105 470460031 587213635 960296101 967259073 895961997 920425849 852657103 976965795 582720067 689139503 188001441 481999926 147849551 215573998 309852626 332362853 374624736 750657600 289726680 987003891 71009067 323113919 566098384 576715382 188052983 245956877 516241793 759739094 722654491 935230824 875729952 951324151 588589717 678460515 983023537 992221720 986875529 991985857 448143751 916875771 166273974 724157855 70901118 433958061 547522668 869341098 610647864 876729489 567590927 945104695 112141276 859536978 998860354 999568796 526302913 856573916 210160997 398481409 410303341 975962331 603581366 749831322 107358881 402594470 464755033 673581678 526005115 963270192 166176464 245309595 917091864 949942285 255106677 936452282 823623935 835643388 896246161 900510430 673915644 723582786 790136187 865719420 118199270 521827256 195958515 410462505 800797175 915035052 318030944 529704844 801166716 878238940 673458371 901150680 420437095 800588624 83980512 304263532 13772934 783262086 812299631 839152214 105445917 947034766 914769084 928411958 997424874 999063945 880377223 932790280 87973533 731325247 303867071 988212000 555570542 699352574 588673461 997524561 919552528 925525200 63537118 172207401 712195794 891957731 357462749 612341531 874794820 992987980 691961627 950614247 104968320 867209075 885970515 914406416 150517298 776975225 271136122 427409395 528608175 804732854 916166055 925263778 119893479 419058186 194171979 686790326 524402406 870287232 137321067 325776843 822525297 935485752 311648085 465630957 105662903 753071559 728072869 959560867 161285413 270020118 364197971 549291907 964124958 969384249 349869274 539593157 326643740 342815703 877944981 960128697 462076165 934905783 643759218 762121976 120641357 781711112 945497430 952083478 560097634 844512203 12813584 95756125 581263748 828447893 777233014 993963330 679846555 787644497 483621993 735309044 20544540 825145134 203166832 405869423 603634180 770835183 48084894 891785451 955413331 991501031 828663892 999010876 554910336 835760736 652294390 704114005 517496216 935224492 614398856 751939834 677089445 906666260 105681990 311467968 656423956 934653430 867115663 928500553 498399213 970092695 657987247 730449346 872452808 884031660 630744036 781879821 252016470 529290082 667858970 744174979 403825165 433540158 547663178 555420591 295448571 932137941 298783391 626198547 674427513 928758939 942556706 975431626 106550570 373326945 14932773 647645667 866607089 987325797 569900712 594528285 453399681 999822413 530050604 896199321 767876776 981038881 740476561 790033662 632388238 985113895 836442127 945977541 580035904 997403930 639103680 872529255 7046447 570076286 568931450 640577294 830673807 967189141 532137182 918652566 973901882 983550663 173672576 435204300 885731643 977186408 293377349 504872396 596393174 966055156 775739473 928669013 218561564 490147737 133088549 630113074 624643624 897289263 450546415 870607818 984883874 995646950 720683982 728122479 204390845 582621339 170496859 403473410 957806005 994493471 728119954 950759174 341910311 658435743 427935319 995361932 684754583 752624438 679027966 781388637 823083888 962290644 903439248 931568085 948464614 951916220 860121486 918715165 485902137 582833526 747465328 958588164 370725964 662672116 987583160 991243639 354795932 885369879 783471710 820404872 787827104 968196249 955913727 972648631 822965864 975891857 935104582 987059417 927198897 934537711 200995406 384984215 718747553 991564569 190257062 439330543 97891350 602351812 879888245 921024036 265296683 870579602 939035253 957084347 994918382 995946468 375440807 742925681 895415747 899922939 913763452 994380918 500878831 902815733 233754682 510513917 634539773 689451356 990483475 993182443 110487705 485057252 814738793 973517857 558850760 810197054 123549548 823371254 842766923 843529495 739914393 764832947 32646423 117943465 77037072 893867132 653474576 879010868 438590632 691782657 959304039 960040931 149589380 676779224 267741811 991565040 250002149 537446499 136471337 818080582 664841839 844751548 733924664 754945574 376264928 624061226 857179982 970659624 291339032 346355204 381510870 654644554 62485869 549050458 534484899 727008006 706244366 907231721 976930177 995857476 90514028 448240693 492920523 529079583 173756974 960595682 618615959 621358886 728209260 793935463 19799815 799225317 790408144 990437618 382565097 903204261 962321575 974606285 977530679 989620108 822515885 989226790 696857007 810355885 682444015 733937835 448466396 629000232 9194742 806401359 265404551 913917789 999832600 999921368 221403929 788899780 441721738 755562576 697731582 771677100 321114309 586637087 606543589 673514088 527767768 976243136 463573236 496253451 163264363 668507182 674197969 862660168 960733547 964051563 285584529 308614005 548719529 921579125 536797650 599473248 570279617 607505746 237582134 731646132 221893669 551770320 13007844 644868220 457988726 921129693 784011958 894950205 498863734 939584764 646251242 908694121 608882718 641200237 998255825 998369398 892965998 987004285 948583465 967786669 768250292 995508552 209846650 332475326 310959159 315482488 514429980 729436862 404172840 742252034 955983991 957729922 892450434 968886273 24751035 758559442 678549480 784977590 740795355 818503938 843817602 973615304 875974494 944469175 260624818 755403083 11774513 205496082 695844816 965928315 33993407 780031702 559302745 900958483 97125701 835675004 519129737 868914398 862516328 956709798 437832518 518244338 736236739 940714396 200834504 317922261 94091256 898611566 381713343 924744332 656216409 954217167 190892466 761555363 327702242 502436069 686571020 929730222 4906641 136109144 446120448 490114626 711205065 815050601 559986139 656329702 735502916 963036306 916612407 928139047 580758262 767000661 476708576 977012953 740562930 781498737 260465236 502513162 322577191 778949799 741260290 951674158 844840775 846355886 504021354 715474291 393002989 716118454 100354762 409613993 28066669 434167451 458930342 526005439 177147549 499750559 667404795 680587624 3926768 999472916 412430466 623736232 992570222 999073710 415016693 849560763 530506247 895431576 446099378 998874116 187203856 353189241 429526847 512901430 503128799 868620938 74661964 654173844 589973649 936835785 160440399 450193193 67293572 477979404 280180594 581254274 92316753 721106493 311572715 944587841 85367405 742168479 668609257 831038146 114682701 720527937 15637465 914069408 380417486 532386898 832785212 838648292 447969551 672769857 316237991 681118731 324025707 510465278 46944469 610440111 222989930 957204875 32438937 582168384 947516214 966518583 678487230 861190660 912514292 952941207 923158750 934485057 127868921 821541168 200132549 275163791 733257165 898264948 370006911 391662429 406406514 951052904 599088875 630383326 546704501 810824395 431573836 724366378 308168931 851044192 928599304 931835953 307054195 929012799 283175822 352046815 348009290 959563260 916165235 978490911 824178211 974729732 487914849 968445043 238414515 317809413 117454544 910618025 826693872 860400405 105450679 542985325 549920736 804015011 458632816 541001207 636447012 910627665 495819760 648927155 497411925 953402289 195717230 737474298 112186458 572713788 704386099 939343158 320644531 690786180 703315247 795303190 717224545 786615360 347255460 619574106 358974678 763307313 507279831 549457635 173213298 983872559 954711660 968222505 933437522 960492126 176825592 523064267 732942487 795821715 270833520 686774877 489648060 730952963 256070734 443955745 636652260 672251037 366657412 928927691 514069996 824894523 650805764 959049632 569291581 991238095 644103458 855249038 560952324 908459191 572847262 907066043 310721947 708579373 699703251 831739833 302608911 908614329 211523800 845794168 814105726 860840865 983834895 984000852 96438741 208440014 368940811 930369173 994429721 996276701 865660936 882848678 130829306 533326743 809649819 922918630 651409323 971778385 137651213 457304324 822061500 876499405 977108205 979563160 671139277 807214713 157415527 327421359 717601109 961456438 453892119 592949090 597671566 969289606 804373829 969954219 283809493 962120741 863396454 904469581 799564929 859811689 520307035 550447938 665845228 982066284 239642862 452310015 388280308 478573047 901442760 901699188 602000577 657684165 8518364 729772614 903358070 959406515 10316013 296227661 135071164 788201071 641370063 847918739 549268617 994067877 332041791 635692308 632146304 964657004 304419773 867886306 510231920 571129374 165906422 229916452 470870321 833553029 626432375 983842387 710023098 889691314 798829270 858568466 849532272 915127873 122772992 522065894 904750430 933796961 641810444 843370068 457352557 877856808 604400791 812262533 664760636 924865040 275644412 990734611 426155638 719446684 276219591 777253118 311224654 427927389 366891117 431780898 478554826 943339151 308064830 323000258 991925138 994588991 998203571 999699792 602734365 604866442 299424248 457112755 599276801 891811001 948941229 986947610 914298459 954822642 988422584 999250487 196958040 402996561 37703580 347371974 313426523 855722664 794875962 887239481 803453716 880081818 779295102 935443647 758354235 930129703 723002607 809910208 619379437 937337998 534031896 565793662 662766148 681912753 51463754 869583899 955550040 989597630 131593342 634822825 750635387 879813518 645114222 954340064 281961440 830395191 992302580 993351659 830127580 915173749 623390547 700113763 217173821 349568170 312609610 326884044 258792278 627666499 220310476 295825881 552845280 753240934 405185235 449659280 508234057 758796582 875144861 884695329 552370515 829359066 264143418 501089584 175325428 724798088 403099935 507541582 69733138 108651931 528321654 825050221 170997108 528828305 198205146 621119900 820989893 827044971 549119695 830613610 431231844 796830157 58841245 119242732 311928662 466352412 781326161 917784696 206012459 862197511 311153967 445901511 478420128 926929595 210034039 296489202 694440722 840226605 17751905 736875706 62708032 932200581 168423234 885612132 411722346 556335709 442414757 742495606 785992616 889284861 96116088 582210441 353753200 360322439 58421589 845950607 840888659 951706056 234533317 291829879 703270421 718597712 567434890 656123668 187694890 823353926 855010952 885211506 685915488 780455047 187946592 601944237 735114128 822052866 935857888 968959026 500537703 707103723 202823254 825371550 496361263 746059047 44027713 371828626 113009057 863849562 907746677 940700493 240651270 411083392 449824221 541816837 752676234 798751060 536783923 578468858 996384256 999276984 322046266 978764799 108739328 836928235 399418976 868693354 299170903 621763327 564199096 791313258 301671276 686009586 642498610 964500144 528614795 702584239 658027231 872323896 737754344 813395768 725315687 869905537 148588357 162954606 777668641 874236319 721771197 782142152 327395487 964893209 413696644 798358839 167914002 213612098 622739201 824238147 88917105 342369392 603679956 989823626 438197984 933403609 795303338 815576217 69089093 716664807 459467124 888606764 610410332 867724233 511199817 701235874 850622118 939224934 581988888 847677953 657566738 946533914 335753754 568384728 124315872 738986040 360969015 382682175 110020386 802194635 760091391 941718180 63022030 84279872 224051029 393838650 754018716 985659585 400631700 782386061 624052126 964031365 261537663 986900837 34557648 805810988 388362395 581729869 639535928 911416835 958064124 971903848 280415862 894344213 466320064 734805495 305170221 692893574 393747483 695910283 326757939 732555899 537799646 840998057 640307301 916671598 173332861 283018109 415050634 581862438 180176925 433659176 457903288 939410189 608663674 680850304 302846657 731688812 256143997 631577651 952623682 964651578 940957221 994945052 941441965 998549648 192971545 900565367 573779104 583299833 873892662 983493525 278650861 769493951 36232815 115873905 709803758 751827176 427613637 808289695 768956748 854576839 663728281 677602192 361449125 566483109 679907791 760530478 518321813 599629714 448055069 934869133 14708453 609522416 331805152 352834091 257067547 278733531 26594031 186821545 47615190 790954618 976088416 982329305 40048475 429452645 942179026 975890296 735373818 985454409 833060702 846748094 215248830 779441760 236512580 731754888 513346948 921496583 92640065 391236249 576381158 596285831 109064821 698726667 973741677 978510124 679566771 724073735 974122988 989081299 488105431 959831583 116898385 506749117 333541684 844282511 816853194 879029413 728748813 826445851 238554989 280737429 749367377 955728423 873641233 969633101 577943598 686148370 898680539 924637602 686229392 847849274 553878015 843794012 814659038 818049273 597071721 642865935 724969231 919091638 911740026 922625702 365194929 574242947 481643614 798404486 200661326 905126846 69116001 749228772 227552330 926324515 792897538 803711230 927664366 951179087 749715232 954470766 336419944 375784357 104417155 994817036 406361360 561212057 460870188 480618365 837998377 972170264 358831782 748719897 240156069 936764954 530555807 970134836 364248811 783701553 182885153 306847306 801229644 807450339 743731438 919183907 702101464 751316371 202919534 406954117 41104642 652321578 687587759 809547838 377461897 896051715 172004718 245844474 677606617 709683349 209486932 416348989 967154771 972516046 551364351 930269016 248828233 502628125 805644548 809599196 112273810 330784451 931334647 967102758 452487554 485331942 699676013 957565853 198467693 230560254 314519583 511197690 284213911 418122419 505243280 603392176 813354372 923716330 1698380 104981112 54895227 250504909 797674416 819291569 670344321 790356633 957546664 986707303 730866096 975528032 433544627 817926733 851590049 961827382 568319938 676818546 498119188 713258006 305126449 843068690 132181194 996077121 781235974 837502531 213399816 933693020 45688361 419380353 128676873 589573236 189734397 292100649 344708051 929875106 657672996 682516177 746848754 882255923 988889999 997696631 676808192 731440472 314743473 708929275 347344058 468766337 379508129 395662287 498587986 731943733 815325101 821596361 515499453 657654643 962955846 999738483 296158592 670718504 401272509 582179263 704264983 932799149 593664694 943265616 481355620 553610947 176282912 417633187 840119807 884819834 361507939 373829382 184291133 601619164 406154502 858621162 286289050 906515003 589055066 733198884 113793654 435725665 992538157 998670185 422996400 905087017 426607308 932576831 432347303 661330339 910933449 935851092 298810542 521561430 951517942 970020026 466038951 997806962 389301083 482309119 594039477 979219991 325672539 961238992 901239404 925732786 981622320 984078094 405170636 522881030 125210494 902747184 968459142 977976219 416224265 869828727 56413135 126333893 246968929 784151199 910801379 978187722 512968458 730686460 420746775 721164459 286483340 787219340 155385091 436654643 69045327 537841787 248826139 519456559 586287266 685413418 503258134 830823828 386035155 406242399 912401586 999063983 329533071 371244320 420402939 918701460 377580211 549594275 994970456 995755119 163917683 405958923 192684552 806581382 543300768 544730484 491140197 728070287 742334639 766997686 584376582 985217294 341243880 874904074 579004765 628009958 888119136 915443278 54083560 365336337 165197832 807685730 675248563 942644051 313712861 809962914 127056433 151933911 831747666 970971574 449796623 514468503 553059215 876381463 839233335 868227252 988698172 996452991 431373883 708758244 158368598 891085641 500302752 955629866 340305723 448010664 837294290 924215708 292602951 551975140 609201407 637704675 676162555 873431466 725324570 762139512 199416137 492486505 18929512 411683904 34331284 799593944 746332648 797432456 69696276 512878480 74502740 607876457 616217092 702212568 410788268 488376814 829268372 910298587 718057881 968689411 776156291 793777769 847978162 982178270 842384634 964798758 236417584 342191206 975047257 981197176 987071114 995757965 699933823 837614848 852242131 903052272 611023718 910299482 968162339 974413541 286677078 562265251 350124185 879570141 520752693 999885622 149686815 508531480 843899447 980579672 165284928 777634143 374685035 409438477 601163950 912171002 972636153 973939586 215736997 673483666 718517756 728287257 934503135 971439007 940533326 976524387 363674468 889487717 266938632 269118426 552469010 613035781 824160057 998268010 842875864 998808396 613906654 838180568 768545235 781056101 841271112 876870855 644594163 853411938 478948015 800368876 578359820 999931088 99680533 257181715 343728679 950170159 338471905 395275065 28872033 274943339 749106931 806656041 662346766 702167138 976302439 985414604 879995944 894787375 882556787 995610034 357294284 491330980 293185222 306096686 245512180 879357927 624830574 765794786 237968535 368470753 997039100 997190149 64788626 328941762 50223362 834416868 101918031 247760247 55086933 365017464 481372134 977130663 902288612 965415652 156223032 444402001 930597185 996109222 653843414 913404985 985391084 998081330 609725023 615879349 665998517 805833301 697503545 745144344 248999115 360741836 145353802 890545372 911570315 996216309 946998967 980639384 584519074 857653476 937373373 960501754 69867069 965240020 446812955 641454183 887387953 992343135 135600148 574725928 385655604 737384623 820511655 961124063 458967820 791776736 857233599 924159701 387089462 761527587 887570093 998479546 514898050 848668950 427299893 873374163 48641588 845277824 626746924 781254088 495993697 534883966 854055263 983124235 162840804 320084798 12832049 701522577 189620603 461698567 102391329 271604706 110569286 573761497 242410433 618059527 926068837 969309867 679139638 920560953 764655987 880975675 993238642 994075296 368503189 555537796 540031767 699709150 883300453 888603709 544705000 854581977 6399079 869768744 983307372 995647800 567773349 635328128 595840998 664613698 920192490 923803257 543154127 892330925 409283208 452779260 902421252 922961090 226574780 309069231 569414837 609116447 470215956 799281816 814210875 897374023 170097965 722026053 239212692 816954386 714747576 909120681 571191215 673712887 272071671 883239331 890839859 960171182 431828430 973946902 831463879 832838259 604929239 676362496 385214674 812378962 107416972 194121130 196086914 609627410 923589 911864907 917026888 917843309 72666777 977675123 96355126 795727060 899207786 934948181 352816766 394427900 636118207 641248188 199292279 453779440 41116655 805029111 534318473 711115945 131402157 585214272 935957322 980241415 749904322 867338614 672149282 783668307 745708634 831355479 807721502 977524804 106257529 365095624 242111550 358580917 804248463 915480796 725444869 772108861 597982686 749745293 357310466 904861134 228414535 524201070 510135912 909159530 601355070 874487819 731076836 761374088 412333153 969010966 953666251 995595959 791183309 868447758 385060039 965050443 617504868 689575645 131987586 493196452 951817029 954577211 597573446 630103410 503179587 738925398 39539674 975484741 746562737 841964021 146139089 491293878 814209898 891901022 591335983 848342266 761074891 882723825 212811579 620676381 646361692 800381932 252458126 484537757 208725946 633536208 18502274 980094425 579327514 762418443 867030470 983580994 179586303 650103887 933904395 951951615 230251659 360421381 975639431 996752830 967068101 991811880 971281570 994473082 157202279 815124111 482645965 740173918 710645750 798900762 609572654 697147335 106672526 656690266 338276598 735410351 671120002 970128596 680338483 806162796 682606745 905292225 962466098 975964928 229137978 612530345 90781765 572308653 725619549 939082584 69193512 871545219 987002584 992155327 10138465 428953555 18243279 92321880 469210335 771536018 401940534 546840824 386139585 766430004 242420553 264682624 140938687 489960841 619343799 718651469 22654299 181465095 681359934 789599058 965217936 982337719 636700316 936413068 867166167 952378563 56328316 544539645 650495876 773517907 133489483 957125744 208051585 445513748 560112939 909949546 858175811 860374976 164096580 875916766 875663993 988360775 822064309 996910874 532814914 712841182 885905931 946794430 400148597 459455944 20455853 292666864 761029692 850366654 534237380 659746816 90997105 829369430 905595622 912681098 104999918 873349454 123395748 425419595 525158020 760363740 263221441 404635782 116488477 498055886 492480795 572714472 139182449 239967924 309836978 520854910 705926870 785988332 554677660 901496043 307309000 965380148 128851288 995820093 604495076 959540406 149238659 702350177 226671409 339913338 689372139 950854474 919665762 983235090 802306825 880699256 333314218 670365287 72849548 457446702 138351078 641123063 178343498 502206360 652517713 747886308 935111697 999277144 277397524 445782162 183058441 744109396 725322465 862398483 629756645 790913205 882658585 901038536 902387459 975782895 981090239 997238299 659588546 878646251 906798471 991045065 998016891 998313965 796845399 976149257 106818607 693160181 668237094 872937996 823122566 863167249 916767893 920481494 532589081 985478914 911358665 928081944 930469933 973932840 86841726 616465711 163283151 564670805 987948327 999504166 245520714 886401996 968916023 998606670 176757513 207501992 791957228 938048644 967298254 994581316 124537310 582542983 869670913 980584066 869080850 877562232 176727743 482157290 233002575 674619258 385671652 432670081 743063409 955011936 159607954 482006407 588712745 774323925 855520216 859069367 395620694 418980041 532001368 688628470 112697822 572073898 396088942 599059116 827585091 956027725 906586556 994610024 818581938 959721311 706171336 865892949 91216950 716244325 315234255 633950589 12430313 345264923 418093838 945565559 986241568 986801125 470256353 689875802 102573086 215646587 71884875 365259487 548954081 704418227 348167435 579785746 954688712 970966088 762794856 888671775 870833275 872197096 840320147 853756821 427778425 485177000 577988955 882076058 446463290 752318652 196267027 963832253 577989260 628705992 165627598 410336946 725752711 782995069 766973834 999762892 959347069 967318253 144377201 753558530 718584257 921359693 635258435 933294871 34283557 906834963 470573514 747079302 820694897 908071706 839983824 976575507 334010318 681593217 826871996 866434785 132553735 491609681 188181661 400496951 945995827 965038767 459929474 608255659 650981423 746068777 148337222 284468586 5454936 404556543 272507104 534917938 472529167 643485420 149715256 848286951 489656195 906945590 599819644 968771720 101533062 966096796 679562610 882394310 181844651 590714246 76958079 883014600 326638115 767728415 671747621 678617501 976373383 983453466 671206711 885740784 143088661 342251281 474780757 934600107 9264806 628802040 362593869 479668986 367684750 673369707 951742057 982950507 1385858 935015270 764476759 963405106 41760924 660202439 473538131 971183532 976123239 985135530 807292413 932629480 488086422 751764131 290199552 385300615 536476398 996566421 626105656 973523951 552377375 739582252 666832974 686566741 984280598 990768772 931893997 966921154 123539180 286569874 431044406 433088818 557191405 630092838 617247068 877450112 253814904 543486842 795211453 957100585 105821868 443333796 722318749 858748214 939375429 983675543 540156183 585057448 333987027 494382837 802665624 843023952 192484916 346321938 211523662 414016414 487148156 738950051 767767864 993755610 921440091 962982175 270279636 672540495 520972704 827687371 572279664 608744030 729966601 910022686 765994162 864533324 957918539 986009274 469023869 746116148 70948673 429298219 533481702 781964742 444838055 460252651 535638430 936154380 448008179 762372142 362497712 424325238 679846845 813751716 730926847 774357117 162560081 689720802 691441658 849368463 131041047 761932501 573127635 609926275 414414487 447532693 979295029 995063012 385271083 453488506 429475340 877776558 168223594 772229731 412593676 738730060 282491607 609654941 84227181 741871688 458007426 993282076 569019679 920037319 727107066 895499005 842117756 877180771 313069023 892654024 985637420 985915289 289789385 602772558 791171690 984756351 208503247 955129294 718246393 798796038 262166521 577713937 608032445 749665198 234130180 339732976 611115926 687214635 459370746 488112307 782315646 916337913 826199813 851031943 153290938 360251696 652712750 751445221 633242262 944150975 285101485 563930111 855138052 976016254 785385222 915156989 101468550 951702408 581521800 849747154 488903048 926661970 280538305 382446273 838863520 877519126 755561745 879807776 641246019 838190584 887954069 937649260 228378437 861527666 880185282 943395338 333926552 497274028 505789253 966432330 144251470 410392437 824033082 874078418 117801346 658912245 237193261 267913592 579317452 611548035 698649680 957070936 998351090 999676721 391487389 951585036 514472203 775013991 521247678 690324699 439682937 658896403 68348134 257668773 270798297 984308307 805606713 834828437 424074471 731026801 280312008 372235870 448732404 505309963 402116519 830978031 465379478 886995053 926892935 967526810 746134333 900721132 528837170 893587787 153049872 852285317 20331986 322505693 142889611 887218971 300344990 401513211 222510725 477597976 69816073 686924124 94205102 507481079 416342269 459701880 521810462 845061649 580439881 977726170 338364850 579981073 615989667 835937896 261233335 416253561 750586954 925572642 950519071 977211229 578269635 583639992 319447273 431584848 650329061 661268993 526738058 948338399 998898155 999446822 343153400 634762996 12818995 337882596 119873436 311941307 198391333 849085141 844036415 902885482 476762944 573310428 310498593 734813117 743403600 984640011 628215578 981341703 275428998 562500633 487254950 934099045 658276795 973386012 69981242 750167695 743017218 914805578 646899849 808026372 398671046 619027335 92886031 125089759 878855404 967028578 726922875 783230147 44609246 158287369 98519560 540351194 786497084 849804665 77084747 837768294 242664301 296896337 975233090 992353747 363509404 504098887 185396137 203975801 243639249 481559938 783957327 937215693 845111675 927996940 359726640 619245686 138618861 892341098 381627339 669539518 843890913 906775418 477116228 821689592 415196402 925650970 706932057 862927453 758729846 853307725 366358859 924827367 432334458 516292765 923304947 960457203 829604369 844821165 974593273 993579591 854289863 861417704 972101392 983491415 420920947 971043971 910561154 949602965 311896704 914085229 179967592 999494958 154201869 281040748 184491962 459597864 934942113 944435918 167466759 742374767 148873180 806888137 174885411 187891666 940602963 982530564 881243904 899075264 27436731 767359326 402412582 875694278 960450816 991923040 725551989 929152413 425832430 722085156 921413887 952215302 493621230 994172998 531810079 648730783 83877834 576982130 444889274 665297477 631944915 771687171 381501251 490579484 240588476 576337301 922851244 935886296 766314631 983214200 340723135 944619820 398765516 447629862 595529703 827173011 873335440 988974114 560087245 567238122 399997064 954511297 370539764 761080351 716450839 791178400 482406136 979813374 82739158 226414197 847493835 853936335 603035616 965426751 228639941 326345874 144966924 421061337 383528191 698128744 625054790 892762065 681016642 842998264 293293043 633708900 208635227 450968378 30909509 228297692 59979255 777906725 10225735 554683129 656932575 965088581 546767480 987992887 869303641 894637020 715858074 870348436 702530181 718492790 262092777 938275657 29097249 318114864 334279973 404155512 834031469 916796022 826540318 917890254 488436587 830017604 854370341 926247200 828632319 913679547 592090012 668836951 319769528 390502504 762195075 763693637 639032842 658222308 118189180 178219198 857363386 941851008 481802260 520990822 889764273 999546354 93776665 230820495 845344481 994455454 824819241 829244883 328869233 777655278 994897145 999630045 339526912 972107110 597242017 639983102 888213009 957968911 144572106 672771909 475722303 803217899 271986391 925871228 883298921 968595526 177385325 987178422 825013196 926243968 915217453 989680294 315248818 457684178 920627642 956218359 448288728 817509198 33168519 173369773 701837132 988312424 595932834 617852803 722764025 904174654 609645060 894074766 437145985 563665641 303131472 369918549 230205315 369284951 468992378 863199734 376705930 523095785 287979282 295949240 94811193 802222243 728153177 739697926 809723286 843591564 531332015 688373089 903445410 976188315 246024219 787956442 824949994 918629476 931893797 943868429 517023193 889404732 460787657 860817306 393553326 632611901 714059969 796117152 387803261 678921382 305205764 398306297 767176975 790842102 75198511 542320774 623414418 944427289 275534131 504713710 727606986 737713709 636668000 887612882 318286931 803430970 27612928 193640943 681149514 935483481 416038991 564464907 742287655 986816242 774713583 789876950 167392935 767559879 300976478 311692705 963904828 981264500 71579455 855573314 684664265 887649916 540137816 809471665 390533761 933256582 146416153 539403910 162547707 666778776 701168146 804011758 180018555 420951529 481147444 834682984 56535490 331432734 198970 426192155 314320276 888749900 877089142 910835126 530949810 899253905 577130313 828517970 596375928 879005486 814245406 943759050 605693602 689365853 905468772 961638842 7767523 241203810 479185070 587352385 619071789 653121325 579549140 790542340 2651461 296199635 558054279 998487489 381194047 452412815 747188725 834675131 4888368 949759635 375860609 390838333 794774253 948000023 437154580 855710324 722111237 767440383 431606611 552889321 623567589 755800696 231800271 426917815 699894278 741560544 892353263 919730521 542913645 684091187 903617586 936791549 981845686 987215246 299984648 904159174 614642464 863790591 105454823 980342156 124074257 924474758 455101943 734574148 201468374 585549665 25950655 106882753 255189827 381918485 794615209 894390100 108010407 142182113 586200474 891186364 782929084 791364903 197932038 962226827 261463477 272563419 944842031 982790433 607876683 820797896 332260240 800988540 661296434 731287370 240252716 771667381 980393116 990397817 887760225 930951547 864210405 900568986 745745624 798155528 262807928 869098899 690396376 691360984 893911932 973992951 691929016 957856801 956906896 977391051 509251853 830584515 635816582 816092943 146950437 760889601 610922610 674907542 670579419 889120413 846175460 988446038 598871192 716913205 341040089 556469258 43915694 87684369 789894927 891632038 98392459 313117392 622811320 841563515 487007046 580079369 355898783 714746982 657165542 672091203 148788163 305090726 647274402 756498319 43207055 126889525 744209725 905978347 626497488 697394460 928425218 965751384 501698530 573336521 340596285 925692015 582045930 976660064 223187295 230246163 703059324 796998192 527591171 864276022 825360007 842876335 926796684 949412242 524245317 669465528 241050776 469384468 816245277 834415454 111063062 726416236 962219371 964102900 881118312 944188447 937263369 937821513 239475011 979709225 948289401 997278258 470599870 653850907 47665904 246479536 764419098 988308608 755813496 789724456 164659490 930583434 690501177 956576930 527227285 784649381 525474660 737814857 966381791 987802281 523641769 683364405 255946188 850600882 722780733 853611465 22760405 512112597 512834007 908899713 949246173 949434590 987861024 987998464 194781295 681545247 43257083 383262053 630211010 674191530 562349880 699676923 782562762 945139433 402435363 919283675 584994042 923432897 825412447 966585363 598321262 839918826 693823620 942066134 171077353 809714006 744579665 940824934 33319296 771298478 752453479 913878910 750676345 755161196 77886457 82269595 128957318 785657370 69990896 255768511 345313830 781709905 37153529 770685139 17499425 110236231 916072069 938493073 423483062 551126053 528729597 649985992 232132118 769217156 168562169 340960055 362459060 755644329 775434184 776204473 740662813 997291050 462389220 592368239 99602962 767443296 675667422 677305897 621956700 861338559 438370673 806161275 40225213 440097460 943195105 996095381 684009810 795678761 988693410 999980312 371930126 700590565 994549308 999509021 3082577 973909905 392735012 491802748 77741818 604293874 94650456 757056090 477509977 490791532 422751269 522741826 742214623 973222800 784926571 787162680 803091039 993983539 699905774 799584121 473858478 677659201 646745865 710552516 778224949 865640018 9890697 468642862 431552612 711447091 411933266 652247034 535954143 781314928 846698456 988786528 928698399 956575926 856647372 966831136 865002899 998415924 735110884 936825966 349147001 608608287 784725612 807819049 125556627 774552818 100862089 689428213 828000923 937985923 810127652 931840063 767043303 821408134 840355515 960887880 31754698 118014066 947390301 953062897 397041507 609543970 437429058 498708806 505509082 636075463 524295636 677999138 286331409 697294494 601118326 965221279 177170293 922352240 631313425 722824316 149386488 418631398 376774527 813276968 109696342 611331444 362527341 458997896 157788667 761404997 204502831 455016774 813349449 837398887 762202068 801768854 299015812 506495827 729257434 853008407 63392335 831705420 413970524 831917690 838239515 931807832 842056232 970465190 198864668 204620807 810003269 866217709 712497873 887411017 137776145 422885881 704832756 898584319 13252931 383849905 894650118 938239235 529235760 695116509 890327988 899919337 126555589 441642346 75318705 529022341 762709098 946525894 82825552 481512239 222612838 796346401 593495108 781949966 314937851 585403080 591300086 972180636 773663274 985559694 483152032 716875521 975047166 988821138 791191973 977895421 257337458 921541192 601482620 981051239 36057943 357159632 971459478 982548851 688435183 998555476 918838661 956998373 996958093 999456042 111627568 698618312 816705593 927105669 918227348 948693601 73634739 202945458 628453898 693165765 543743624 591447614 724045159 807714434 586522171 685251419 903907120 989971703 715757231 811792471 212382666 598746367 216788873 695943801 465756970 546801367 126947402 342343828 52213439 320144988 269117165 599659627 783143345 879004552 273355298 545372875 471345178 516142315 184784084 487558189 170840072 303469933 639580933 993600158 856687136 924393351 651380884 656857285 578355207 771698505 233867520 625908920 158223225 161735648 832836000 980744283 219279346 682246884 706398207 786020122 399566952 997583230 911828102 949783087 562415752 772464677 783080144 783229159 372776831 875069420 166180425 750562185 673929472 890220040 219790298 772796274 340816035 874834092 323328604 819563991 430594022 710497578 602116564 936941906 985776460 993012285 381883368 978630094 189105214 840453995 55453270 522332780 589695930 996946323 354329927 417300231 274495922 857992027 394497594 536620897 416367813 530820126 615413886 688025979 133307492 265445920 687612324 869736371 556515001 630262374 255889175 666059802 582549305 588469600 762056090 851583914 564724969 727705630 777145545 944888651 698927682 732384721 185971928 580009142 266027701 712986082 78158673 695648703 395853900 869764376 703368985 797826172 171353519 655012816 526799047 527038550 203421820 933113251 46584923 259564053 131775809 554408821 618842039 722419391 922128718 946410705 371326261 391085340 614933511 913202057 63213658 536268006 526196884 768295459 603881337 975127984 985154316 986028656 334235925 771215086 129636212 852596639 365580261 592296432 85524537 983819916 874471966 880826522 152071624 419860179 812183269 860175622 406856693 456150833 456011815 566818582 706267145 859268949 292816840 530226900 712040478 889773619 168057008 947683530 823245542 863398686 699300855 827794790 197494669 793411384 475332787 587337841 508413252 617737931 369216084 545239885 173998945 406751443 844745208 865185757 848179475 867298091 568032437 967157765 587468662 693099130 935539784 936496104 760570241 893259696 407193550 810565882 408670761 941555151 827790025 847383023 527793020 714909408 358712589 685996222 69492112 813844257 352575442 904813091 357793523 951419478 874299529 938875948 836264693 995800589 274031349 985665643 53387332 54893279 787427811 916046380 244758413 445576461 30112858 306528594 850287861 871985984 509536178 809342745 1295766 510034582 140746924 593444964 942906627 962684796 118646624 598801701 413502473 851608125 777800412 837818419 412831258 663931710 814602657 825018398 512515195 605771552 851997289 993333409 687505365 949614405 48306846 979413218 535465666 744342481 135413514 488138309 813690226 858205985 136580795 766246630 42284819 358964712 126294850 593657985 965304568 974596981 441786944 954277078 647114033 692279575 594885833 874750244 630027128 955773297 153965346 552089403 316668617 861766998 84788728 369839209 736885803 840265812 760890265 964328110 636937958 886301050 43484875 220778490 670846548 725071557 12699305 141473985 510527200 585427404 625396131 631392883 506157618 650357644 723651359 882768496 491839108 631501964 637615564 702302246 171036222 506662683 154118315 750738341 270301821 285323789 690168477 691737723 69833829 143933994 667727563 714534215 448954244 541520676 349087989 587385223 83432724 641367489 342207390 424442040 193310133 624340179 467345285 885453473 520274672 641053108 935219159 980007993 604179536 753130583 452497996 657573378 294258665 479871139 727417739 874006213 751748747 905747171 910090085 971445186 53146098 205011783 787418986 875892520 239999237 990003713 222679111 506225814 682391310 859219846 178948287 656458582 231752305 880538080 394268355 937525373 940427586 968845739 294548790 708406046 595550439 845384717 891473160 998751694 747697227 939363264 960029272 995993071 382959055 752350283 129662700 793001957 97946744 379021850 597657257 883645064 478683092 818649943 312467866 353722184 117343169 803602933 876485197 896927456 947879894 990883770 214917798 915101214 111802291 112984115 82504716 382825395 721797960 851515631 123849205 947104658 650008190 891927282 569293611 873481208 555535018 727958341 108817715 874948620 399539635 503048705 278139280 979614392 921185708 927856685 166122139 399227362 513533691 980663126 138272491 364167825 1198865 545517861 925069444 978974803 529067784 788897948 583875363 651946411 672172766 944967028 332320231 870527487 783090642 956189185 799249241 890646690 101825464 761768128 384962363 548853609 136105564 175230341 794154633 846096590 583175068 986198672 844016671 854830544 14511907 266519372 883578364 988358663 426171815 891424755 125637552 503025993 433595395 467574331 906683216 985396179 867935481 989432153 688871825 850084627 368570943 863967878 744690744 983663724 512180543 795724318 96965402 290456191 795600145 901245297 947341449 979288792 376675713 486685166 515300678 854926361 714454914 881184639 92037662 175495423 633706094 768756767 380364558 637573007 72706146 911440986 184164062 518254805 289494309 784492866 898136000 939345341 54449334 357410093 254160297 607793634 102998735 482765890 69173207 103863244 681184941 776086636 700687715 713639236 782134390 954500567 447084130 630519266 735760832 789943867 333195471 786761286 916996541 952433620 327898913 621510104 183978122 555283758 928228251 971691339 447306801 964505139 356417272 826324737 546542787 801386713 249886355 489035486 285875578 410429023 205366258 475825171 720614749 721136694 869549825 928932656 819612280 993608317 961752584 997343745 921198752 937334356 72011064 353484675 88559716 500274186 105212289 611810701 984523432 995133780 18749384 525669795 320479753 397024980 715982986 971970487 982842004 991162629 520363938 973539200 835343999 947363394 952837432 993079484 972096948 979676570 51401263 52689394 667438286 772042786 778212669 840210243 98529301 792221103 981514729 990798758 256745412 316189812 560938358 732234460 32156665 753243874 876797290 884539237 594482249 836312881 326265845 454037525 219282384 486337018 582218413 666409993 322263937 979941005 698371573 841025061 898015789 959326084 234803866 460327880 254281576 327225474 663995835 798740073 589787544 669008550 53818585 944350697 476630698 552300599 458607496 808321240 457326255 820092575 296811598 328439464 78057913 331775727 924899161 948544175 981594507 991887466 445966670 553552294 162603141 678263744 473389238 599708390 141466168 950729317 537106512 726664875 491824303 648322692 795954127 870515350 760045011 822254986 237886309 447541023 546960631 767487708 233411164 274288400 155715076 538601852 236524667 457197370 732693035 893149750 840842300 987085639 913476692 952407877 784378024 880092032 59970165 159614153 286910567 705893408 873656870 977886573 943706304 951515701 601768173 999219054 155035708 525391582 202469230 960455036 229069043 549595593 345103438 634107934 132440939 155840033 498912172 542851274 967725864 999598377 421853184 822326467 650774532 908549409 252496526 676529239 92794766 209912325 632043749 734122610 807891009 894246060 430571524 461234732 1481916 414769140 615972410 653545776 896814206 907243133 785777107 794464990 60065294 618267072 952485131 958931143 245502177 416703235 823231291 968167348 589103602 822325135 860348773 993933650 505178315 564697461 171305188 349617063 932341215 991218322 25691880 514915102 287979945 510268031 990231127 999208148 449254597 826784991 168331203 188541889 472390299 856872216 201574240 464412901 454600209 517148679 103456936 110294325 312584427 371270931 578859191 799213185 381743754 906411153 895594463 957277455 119437278 513896403 892796022 955574990 443596427 468972456 366540884 858045451 580076597 620494278 274360897 681575040 369856907 374460995 488239849 622040725 156939537 678486510 249770244 934232051 7926796 287140824 767225030 973028482 911664193 996790149 923041639 927027591 129098820 378033050 667858838 748327836 423118638 974948749 837746843 867353379 95234204 825518742 718049624 826192051 773119041 970815240 335223659 948138041 277446584 976916746 59562296 933165806 435711777 986033576 892631666 950604406 533248969 848856967 731743669 776526015 831347600 948648890 445701017 891639717 320727020 653994532 590683026 766339980 403176305 709365290 213838380 924914095 97897597 701937277 474393301 994595039 294137407 810099322 170231517 765081864 548711959 608211961 481684098 507729475 622119136 916914020 303963096 537498558 907773533 927031473 609243367 736636929 942178142 971959133 550118781 875802476 501615164 785865474 408978668 765445097 643359456 961212540 287231560 662489571 601842087 848148031 38484884 682401927 112662196 913435239 404532076 739323065 63732288 736685890 590759545 797777361 824043818 987963403 962324187 990229089 429826234 494549490 369745951 809087534 664998536 898705003 780173433 950259277 885090066 897671227 943746028 983279550 409333663 529295251 193045974 999106557 390118534 782477379 963349067 989059319 934769592 964174354 205611418 361882453 343351893 978001767 723397889 804749188 660191342 931955731 988869665 993359916 618945116 831677154 665465889 955479996 565989671 965795127 659298169 741144219 816344390 924616833 170067169 966353277 865207505 867397146 246463989 776186930 152689960 729405386 759297969 980296094 249247334 576853082 233925912 528168812 999579707 999609419 994961526 996894889 298151399 386465168 749735496 920565379 50109150 424963965 86667147 687602559 776635 948593089 450919650 549476235 982351619 992508328 66269289 320926227 178912828 973385911 356922963 669889900 218880747 862501069 856981532 955409781 794530376 800445950 239191573 738701023 57619508 129835093 676763218 843299531 805710993 848077084 504614046 675943800 229237091 631230718 327743880 953619517 976428122 988300490 594630831 688047073 613748054 888170863 1814460 62559013 320461032 865410317 315061904 792778487 46667900 371075218 153403645 337343858 807406467 934726079 843061715 904027570 838496096 937154525 329570930 561872558 321694116 449174467 912008773 989987670 673460512 874586967 681992095 971699809 720607273 887266771 163468456 683502188 216855539 244365504 218398662 818169061 975534282 985735409 36280104 346415916 525614851 980408017 919410411 966761163 495990028 649156129 288791186 536615238 867010185 918820931 515667822 539661981 927718203 930587203 11136794 223493942 33038764 823621560 811383217 857397266 573711311 743243022 30034831 808304918 551656352 710355133 324683298 904192430 842283452 866696083 485358729 772424332 35335348 823026199 242705361 909669395 616451365 859362298 16441290 171699606 913169365 916559049 577580137 609037010 924565924 944639874 598827124 608336216 596132260 814282207 497079895 944971610 240457763 340912218 25062973 494735352 575993646 967779219 787331964 834337738 713230650 843024347 789506669 843071557 570037854 928115248 478928481 629423024 540510337 791447043 821978401 951882666 500940106 529862419 767518818 922292974 166912733 759867662 575959263 851538715 395444570 725790244 248570707 535989536 785458639 810372095 866664701 886626192 89664388 876739457 933752159 982223316 384958760 530886599 935155502 972054673 617432130 624230616 631679333 643512602 779869415 794621254 361832975 800689996 168098213 325299183 974005471 978902192 191379264 758431449 146383511 356986307 578605035 780006160 456946704 728071370 754829801 973918924 178692092 910056388 105146156 239103432 280634488 552987490 363158819 907050437 368261584 375795864 678584238 700066830 247694416 604863613 459904205 733214890 175846347 740879221 168157811 767102104 708757245 768666178 309932350 626521010 412481758 462969205 868380877 990460542 316636161 574996312 281239286 674839629 442694932 960159288 363981772 776082067 6704926 402804483 312077012 831451515 47568045 356749905 149229655 150087765 628205648 665690115 59685976 990075225 693649535 724828289 574412508 903238555 152294109 755598658 241964095 618437413 110772544 368343237 163779017 995885031 565230826 658387096 384833479 952151598 639502865 731294940 522086969 554785071 370529813 371372891 312794392 431815780 169331604 968743411 77756996 807398847 195462129 791513914 515140082 947567761 9349856 86915317 730491981 970913583 78549212 739770966 43677501 606365969 61647966 251805815 532544374 959639631 460404885 839549210 983512465 996459247 711202734 997688748 545421227 855259035 287490676 815273484 903623405 979936256 477527270 541414292 243275036 824834691 835115437 967668070 738627564 863583086 952924859 968498671 872027043 979971472 240206652 553720227 184896206 299197222 298060681 570160886 154175397 901853129 12432558 456050717 764447948 881464273 312721618 922369393 472546201 907902307 622289497 957882199 344798684 468560431 734936371 774042403 776856164 898667035 169741716 243851519 866479488 914867499 814584670 847609415 899495827 909164037 25545333 333850135 324894079 508734686 459834277 483799519 4624497 501143875 947101083 970762617 115339064 308139354 300731853 342828046 113401942 640497683 449310106 901051492 100081972 829627795 932517956 958689426 415982543 759568186 903393427 962271995 426126257 596506865 978195135 999774158 360778085 404233551 579641175 965180663 884732595 977132954 181344299 640782447 680618392 680644289 384459760 510683750 680044576 694301561 272721606 431144298 804305807 975561859 376602494 794062280 78574624 139608025 815970409 983621743 806960201 956602569 131817883 940554591 792500024 923255895 317463219 856737962 692162399 954733920 680841837 796399253 855374755 911074331 465889581 724597865 145145255 508440518 243725120 421618854 219537193 385093034 321585589 785950392 30847526 500000987 546340479 736401317 409573165 930292278 226011689 944765317 580745416 908035637 213021297 420304553 42225462 343144231 24349162 916326387 680315947 770087324 179237345 578718378 599910375 989481267 572258699 910210153 327676733 958715146 83610827 641765061 520837262 728718097 771562412 911583688 25643076 247651283 836746114 907847477 577467183 899361194 205692142 983066289 322099707 957772200 215096974 999274474 360516442 977281106 717728239 759851685 601811977 653527899 920786115 969708208 989911246 996466386 788320709 885550357 724463057 921033192 13725846 394211249 732410462 738084894 901441069 930384625 143482398 875136645 700040694 833472386 249296055 802601236 556459213 790460234 72471126 696836243 799216762 803475840 732259486 927871912 130603970 760095850 306489584 788583932 649316392 765615710 565751341 725223262 449702365 615729430 981737249 997215691 35711147 507981348 587617338 847267637 795571016 944048405 33149798 951506276 815056367 990626714 311000289 930497191 965329393 990700564 281629021 635058264 821331161 945946499 863341316 953324614 440015359 734890088 261987920 756684014 407031998 499253525 589194809 925698784 936387796 994939275 311516698 443806916 5678073 698451378 193987404 913717878 997860241 999054348 105561297 409058907 302370649 631765657 840969679 982864427 238152930 346034111 939819372 986451480 117589379 771677510 951669687 977316770 561748953 869633148 830525717 883652130 152951335 315797867 524764484 578120032 425095193 615303408 147807658 966085221 918026134 921583648 207037521 224659684 494854496 495712238 461591053 948066493 951972597 958615836 771955048 900449323 94570660 333869411 860918786 992203086 975679301 987770715 218175009 490480099 87000903 880650430 3792322 931430690 836463918 945291989 149341230 967645221 848330769 908881499 600278786 831983498 930687442 990794739 710826148 812132724 646978604 937071990 269125227 996333268 365900510 661778228 201992387 816240255 647170799 878701095 928718444 995855180 121748600 496776531 965313187 988031554 190212218 774772895 951810883 961381431 458619431 904856928 585792704 953284318 617870135 812647460 487047138 495196412 672653160 737270697 646320132 908132726 440477856 897731715 378346504 607741696 947813715 997301922 39500143 92138465 955266239 985611534 735419704 969010335 745187356 836850927 383655423 698918412 129106772 271913757 876957640 968070693 81738600 798345621 642144061 924205951 649064678 802645971 36615396 612733199 272726565 899803869 887491830 906442587 48365052 906141157 602949995 935692019 369893296 618117865 216538414 706170448 30916081 730170343 248532095 654761707 556410037 908999547 864316195 879833230 881167129 932229372 28370784 30288916 204584211 245411971 208282445 925636462 396388917 693277988 316551983 748647365 109943149 110082344 664040197 865054666 503371505 593244291 233837771 239502927 13255590 995715891 123441462 756171543 453683686 822682115 320524823 746592079 940328129 965703759 337661561 643713257 362753390 407078194 944796832 981870549 291673874 810180433 132325310 567735649 965840468 991228378 542654557 776168232 320804400 380094160 135660060 828871926 999935833 999942563 423217086 987030789 953472236 980917722 784268431 820578509 675979441 909853365 738198383 865758038 463129912 546781809 685710175 849236508 780668944 990628551 871393618 925766532 297783568 693016675 823034114 871678261 104044291 763654221 148266510 691664737 384567684 603934922 586448817 819383532 363248566 684752331 198424905 839103605 374318131 693548095 462076249 958311252 918673263 934062865 40721514 564576771 970326717 988811290 484875698 976978635 413245725 579102824 905265564 957248578 505498758 993126167 797420701 802610905 217521430 684499043 337843934 404821811 717119573 741468180 822202286 974665823 891007302 953849585 764972553 889859804 189993951 943553592 806027274 946319278 374702055 766632526 582130878 668168186 712453486 954216354 898379671 981842435 149695353 510137447 975550935 994807209 465326284 684724306 133867603 890340282 128629220 964499193 247069833 351967479 669959108 864448024 921263708 999713433 469280764 974700583 557352536 897202610 558493541 575864179 475122406 692697993 640700465 797160783 784927946 911299441 592015909 915972125 656858612 974838712 706179800 981780028 812095178 892768971 938044255 982103105 950188609 989384512 773411880 832502444 785305209 952477134 398515437 594584047 508722428 931992867 4943758 802947629 260085830 551361751 619241202 633627027 367928387 467034872 918826760 957174004 553961470 601613158 697183392 957369485 640870566 842877935 766697315 976396804 592252422 803314271 276783653 595674206 85834473 714021518 866115406 873755113 553273624 636968371 692124165 757986703 651695330 723307230 225234369 259622043 180938527 612830909 117893679 522554241 502328200 666793979 495779327 511574989 50489492 107107595 472434558 718167039 242281186 924743035 170714585 310319616 997558122 997803570 293380412 566528206 582024408 820061832 520225812 734888988 618202464 928226717 65161422 491726393 69395934 686824059 769180718 942872466 786387587 861056461 606564989 861904790 588631776 637852641 608676032 975822871 763327347 774417859 849732949 922342180 819316348 923048196 420192112 794409994 607471626 880293835 996055829 997180156 672291774 688705315 136672023 991249202 542640674 762243619 838545838 960560736 710959091 937818486 798973057 946443973 572845394 740283047 850919558 887292105 800080737 933118824 824863088 905654555 763741029 862450362 618031913 761841488 257554208 661663222 973339053 981478323 911951069 986426933 755440507 868838489 997598065 999099139 673768916 936672151 767607110 771699599 206280371 638044493 622102403 761288276 511493339 859817839 141268747 999112825 470868723 523790564 110780659 765759000 57274726 129096738 546709010 945557151 92816635 531375519 751719735 812543884 789253515 830280936 9917282 367693348 993774821 994172223 965181457 992053033 378331209 571294805 695569024 981624134 222594256 743163959 158957262 342474184 269842552 923568544 815227512 888379700 358860797 693815996 419395293 659822112 647421764 889871363 930311178 976018433 221837533 702676261 682331485 842402437 897065708 956512149 802634907 998376315 50590173 467474205 598784138 743607099 6519181 837264238 96623714 569178340 869142007 891050977 543168428 934299485 754595999 786003182 777055822 855013118 498653802 817174284 617862210 703577764 125430907 897198072 84415429 894445766 765930033 885393641 331715968 697208952 556176492 987622691 738646035 985126219 210983716 980696843 366528974 853152045 642088877 963600797 92863529 410539914 277873117 808248735 476977960 864203487 131101016 254360508 681651639 948801859 316076904 982581248 955796592 964716936 184201924 852741764 631604442 714184153 699845937 847445299 26971774 596803518 217230574 335258766 804723148 934513246 918318267 921224787 160282661 864427827 136872411 194972401 601637224 805599496 787544174 946845576 934244815 989939010 672781982 690684618 721784389 878644336 973437421 978769320 258874605 597870015 481425231 849496842 956855284 974652779 357197583 580786234 964347922 997755952 170222020 765049910 43678334 467901721 911207779 999522007 796607295 998054568 659901609 995921670 324573527 699253389 717455303 748965499 385643981 917487626 698375121 790131993 768129695 950040959 310611214 736934027 761681887 922326419 177094022 354303434 67914796 126318259 700300622 833334903 281158555 604403792 808947997 967888882 908804573 916571030 334787080 724430391 147329096 729945459 308486548 646942380 127853353 932962124 456817661 963291700 503145357 531351509 603376536 921407807 708376941 989468866 621935285 700885537 903788847 988106647 143018990 449518207 217772776 927913132 518781798 538792085 512739608 581302630 639765736 902583573 995614655 999893149 470472322 508467815 407645054 509898585 223578519 866274746 750878018 828301396 161206610 948517812 944416401 949216366 467193242 515495295 709700346 867740582 258502262 545602971 148898021 608549933 754198684 963053500 801682227 984003702 74677909 313310822 92441824 878535440 427036651 805404960 907694371 982106923 681686133 904664168 945379426 967996934 820715997 824034796 576736194 955144181 389046427 612034089 385504220 720033708 352944699 682981738 417561829 668670890 102819664 485071081 301898620 355236285 733695427 809928095 615691547 635124476 784124560 998636615 321474646 568898654 303027225 352926129 359992402 912324088 704475740 712988360 552820515 591651352 891586511 997586571 71048095 767564072 262453818 280522159 396203767 476538977 745748162 800826392 161636634 596752075 752592551 916738738 781140261 880703098 501834480 744997384 6213925 380326708 845274239 864764535 85199520 808412814 541777253 619982887 485203669 873996060 341715671 975434134 504228609 666901924 9819698 488081730 991423010 994412699 224869017 641540798 863665993 970353659 362123237 652682097 953061695 971527133 356282574 410327270 184364075 267373747 80035118 88072393 643674903 791056269 645461609 802583305 731383832 863013013 529316978 895148768 113488267 228647193 282473879 806782535 657507707 800793498 506790514 729818735 990914556 992788761 393372655 950702385 117985025 795485764 670598602 823740833 852858045 975355467 927329984 944503899 607203057 932540182 292456392 600980675 520033815 880246872 869795143 973594307 790195061 965917548 302013892 324221229 868007231 968672545 201401899 557360077 47245416 571042414 503732823 621286879 476246956 662152833 371079829 761137015 107233329 399167711 223304018 289390727 583505413 980122619 770472795 808933321 898635754 969235935 186780924 623140530 835468595 965280283 477552781 871865056 646624460 987727129 189945928 442581457 572692720 874959819 690519522 727619776 473467947 854682660 959691122 962351921 263531509 809243757 512422898 650672569 630795555 862661788 932317962 991588732 348849931 942328464 727076994 825420768 553974084 874864802 764376052 855464742 713654921 826214579 706219766 785426717 396201793 444301073 500837680 908813752 698992581 883361181 554790219 974735060 800217254 890358120 210530502 975053484 928727751 979020927 304797928 585272918 304210916 864750019 649691 735197137 639394704 839360395 595269560 673491772 198679645 578977834 975138946 998122927 747979260 806841857 772874190 952630331 41943317 933259349 115830592 209624933 560593311 900698579 603264728 765613857 682606433 710637368 896151255 943320797 858439499 972941847 227751648 983481569 782684056 951467590 833257519 979778439 939957378 987239785 674742454 898828444 408292398 933711842 267641654 752240299 888448132 948801448 184068919 880437266 787404533 855300389 772808075 897572928 374892884 973807353 103999958 658223794 10879508 652537911 668995440 981954452 543284702 978782976 937481345 975657720 895451364 957158070 487164772 625202637 482518355 984034339 567697122 669566186 452965851 492990555 984748859 988634062 608674338 911262105 130763545 391787404 142527346 376711657 65485459 772389750 756830169 798870929 311975450 918016018 125328525 872424082 154793605 312916247 391383675 969311590 350264472 547495422 146389831 174963381 596188165 615458833 159916489 814181510 657303453 757069322 30217253 574394796 108385790 421620357 128110767 455172720 357639086 591133567 972511926 987178207 7261146 422687745 848326251 986115120 763017619 987564846 485514446 600287137 599406216 846367407 424727396 937903129 549966584 737734257 851885627 880887248 685341842 695337953 45813444 744392671 456832644 594742395 54269390 605196712 650785996 798111185 724171444 770576450 195065760 519693016 513385245 717007490 158972483 579971736 234773124 305977317 829936253 844284899 907768113 940171120 418536101 897453223 395596577 779643692 679842463 703640087 126304075 547145196 625269553 703135604 256135347 342011546 635640054 767028404 778800402 791394740 321162419 670576496 220517942 479120768 127675396 459609447 289714997 657886080 402997867 920936386 963063939 980471331 216346965 258235657 552420822 761695727 743089376 855766496 442493907 716871021 465434393 541045023 975054948 977082219 42069394 553963291 702283245 960506674 458152246 714352181 395640453 580899454 746747744 806326185 541184485 821659083 521821087 583768848 939836277 948052216 873193723 977436691 651137377 873218465 78279504 368012953 517421914 586034160 552100404 862821341 17833895 795469025 867776389 929779686 586171119 737740788 750444178 790398860 692784202 706927583 623686755 984570764 920739693 990920367 846069309 944388952 926336539 963440689 54713683 114239362 862476748 967505558 137998118 605471104 139826877 746266089 193563477 924386920 988751721 996423647 391772874 517126881 145388417 309318130 14320461 271064726 777337806 874668318 105843358 441188930 262948121 364907494 429769731 886323284 150653202 165346910 384534174 863161979 863402941 987413550 445610474 863515669 104627612 740842153 859220210 955831533 446067189 799176781 707888558 909281707 756979943 960030891 64192521 748156975 111509279 532683682 150568002 599617531 726479441 828036970 408151525 768203802 310918127 633515975 251769362 475042875 718541997 878883525 697182858 707322427 808048912 896756218 87440174 651002832 131415377 204708506 58710339 276891595 402949045 535393557 688491282 807081219 143864585 561476675 341214816 357499213 324028382 984704828 464171858 690410286 285540247 821301651 185748730 667319682 445950709 776053929 418889283 751123824 352204754 776770625 244761784 688171227 267784237 441393692 965834477 998249602 759334429 768888572 237781143 808986140 312429821 781368229 830568725 851654204 748114994 935415987 669085672 864710636 916488164 934962919 996752143 999475400 421246477 658867634 229193743 359429695 765581570 858284025 603334444 848733338 372060612 911798822 244372113 304686986 743762647 854075702 882117407 971974099 839569926 843110873 728405338 821117656 981360498 998745416 347755095 596492494 745122214 983483033 611391458 622671887 70207648 429663834 137161817 651064970 40419985 581469671 757354394 855772249 640583276 850193323 568022184 737990187 165536338 257088593 282654593 619033164 590013932 969130251 773864238 926237591 926266046 989434715 449304586 756970938 705869459 749401771 800463290 808314903 278057894 415467812 232156522 508992618 61181772 203014318 452607581 929089517 426009883 622839455 695282081 796274224 2930229 893338638 157481079 933169943 55533732 572749290 899956766 974168998 20358243 580475585 386013061 903792761 70615269 756742512 288494871 764464120 383132546 602073534 385312330 531221421 118725894 295469518 90502915 539112166 759775495 934272195 575073940 826942008 350105281 499150860 419267269 901143706 235236525 847748818 349237998 358541981 704878351 969085690 770905514 974343045 418798113 683790479 414441092 621335585 520051990 651487421 257205131 505391004 318133932 975053989 836858195 863146507 355917857 551690695 781481828 961306938 778683155 925004175 315290251 378187312 92991057 481990230 516877665 634073773 634607201 844430395 338768009 402463690 658258937 912148072 297916906 396710043 666891678 789232552 483955709 689263904 28784415 227202031 36360119 85523662 356117291 694237058 193178784 449096637 378136629 786168378 300173701 863314249 535065626 985855420 573058888 857033115 720912770 838172346 521473718 555088376 423626632 472270856 801928159 962815407 587273125 787390493 34351577 667453035 278910263 766657241 52908798 293611378 2495849 683607446 675877171 894568406 71229806 619464367 38530329 889791111 200122360 611351877 302917813 740554048 979851903 990716021 623483975 980831446 811264765 927791908 368148201 584758978 93473204 893431216 422421089 922478662 565725180 971609268 409674027 682268227 765646898 909560376 69571269 434177721 861703416 976043339 249950510 501147512 90213229 425198378 697452399 706623354 982529868 987138186 89009711 566092946 307547388 686650670 729226629 930003148 793331006 969192471 899856657 904085532 538193217 769533369 958343302 998059349 552282373 716403400 126198705 474254956 899613510 954577688 514253858 661833560 909458655 925285888 424782792 887834333 779389274 882190066 685794841 884496321 649680843 874468230 385827520 814290028 212406930 590083570 955970840 975647287 350433251 633423607 917950981 968656641 320986106 729181512 762179815 912805870 10086118 425700922 128326376 353206921 786562658 796028076 294750826 326021036 819552781 949377639 42137312 78468502 58696441 525841487 950286472 954824355 50030339 732943313 208356386 614698642 687063514 814681902 280801955 453480790 356025293 368892516 630612824 942967347 987752630 990350670 120810584 521330738 717819740 736702937 511334776 695471497 856205684 970396951 33916409 383952072 322758640 507498142 180242667 883662532 46361844 303322017 247542922 543894831 640398444 710410715 415096576 467059854 679265662 996555372 216302647 913910697 94539949 592070301 971210171 982579236 1729687 915674882 778844632 936218609 388380028 463480282 550952166 742447778 684471238 846583925 929398968 999848656 398005607 604595592 921963199 976739580 331789585 370491012 671914111 763986954 632711649 681579999 994398020 997206704 158899818 170055101 369342011 728396713 752407378 978917071 829752225 844950913 475032039 529166164 92067522 836645087 515467197 539520445 879165295 895986402 941505191 979280540 499882497 535436754 797168541 954241497 320014039 425458986 761057458 980026481 899376146 956283139 991687622 996375120 386106906 774264006 49395931 834376326 820896133 980216164 427681985 938351971 960732057 966492698 298121716 791400286 76894679 115778119 90562567 666373147 650029383 782405685 69799166 441975573 556378173 875540642 537387426 838915362 226070974 546906463 487479226 567741500 629209509 767053842 904434458 935086696 994072819 997343560 795168939 887664579 148033 570923886 956535607 968108414 396953564 600960958 836292333 978177752 959164973 995389950 303738416 877122207 517231427 914254700 332758618 774475880 722265854 903722731 958641713 981490572 579992643 593310487 548128853 737928744 849752614 984664739 575570710 975592932 790403612 862642973 615909963 978459484 487956226 857403432 668516397 847337322 799523110 905376165 697903840 946703823 904527451 957217030 723210401 910540359 82884375 172222971 577390140 637663997 958628497 978030636 155148059 758485030 351663937 372501497 757813003 889188806 822174232 898724510 858611527 925542211 771901936 802545759 736658200 807221498 159450593 958955764 277300654 946514295 631104456 968237688 462755770 662339365 585888528 910936020 559805156 950401985 725032789 741575469 561041107 698087234 121962154 846088098 726616495 943017732 292861040 576651982 507299272 891182225 514675886 612873497 653048850 745530997 607462362 652269370 792989688 838903375 287860094 637112791 937025719 950710458 51785689 511902150 190452410 346043744 71228864 959059251 380923083 418062218 437278901 510479861 350550061 787504125 888745450 918475506 608815331 815530181 407671460 885707612 613750550 903735245 267382640 899475084 977153498 991598333 521278083 947915435 175750180 828848916 349998119 364326774 915591631 981461170 220913208 720098638 129356499 392371657 789887634 847536288 556248156 706060972 56243246 171316476 229776627 557109618 676354607 981869517 114593573 658279979 17147424 120106285 183810391 198560493 284278837 627189564 595161926 804153318 39609181 43934669 182296463 777033457 781145529 965900651 243565316 644065022 499420136 558416621 174291316 278299152 460595622 672673416 373528222 394986555 940517278 947662485 950091385 997264281 663921253 883603729 134402409 905209707 495375829 522643159 123031002 529091156 520326264 791195300 951249744 964748677 881641441 954260879 612615842 985944249 418669887 742376038 414767285 674731688 206589535 786759270 872171634 960793447 207888231 374610443 611694871 952816967 105870003 700652113 271642113 635530500 973186229 997040973 552254306 712548841 878821519 943445885 662125872 771727478 687161591 983691895 941653245 975486692 677633865 842656253 20949554 652241900 890574830 901164683 413219021 933160757 254220271 489491943 576861593 899617843 131842141 990116293 161848369 690290360 294622309 846430890 981562647 996854893 410323301 512398832 351008978 888211243 925891113 980104050 203589908 327074104 629646786 875491381 335350685 869866930 653266794 740910527 46411952 292526247 573943779 680168768 504764920 992995377 232057626 318382250 208857398 767041744 318236265 734589642 541997846 593687432 477587851 676932414 989277113 997352129 388492814 693558506 618385603 857496929 963156351 986198615 986481558 995914704 565302789 673663313 397033221 571529980 999439296 999863274 520412347 714572138 831138091 957095902 288497364 546045848 774792345 940817920 21469683 634744889 94605790 677227801 997156766 997684530 253537955 355955578 386656411 897176927 706852615 735733751 420993209 884542502 358284198 611831101 862910134 974983309 133398078 893578741 559365440 856731998 420121096 946722507 97991973 534483430 117102937 418544839 411532492 907138630 418397886 707349177 492967384 530509263 934304317 939536115 37427356 727189603 901959443 964824882 259149825 305517955 947904352 967621676 125726110 397921401 582908828 856003853 72653542 605275727 594111670 810020779 647453280 878361020 267869288 500136524 81928285 476129120 343075673 405361359 625313651 970356567 202669100 249679891 285162777 597896850 514957356 554500798 563767007 925018102 336089573 776207048 92689199 531033619 747117444 995373792 288087555 847191739 817048711 933259749 252771382 521785021 965657742 979205661 894397929 916697329 83501407 118101757 964957791 997529070 664668454 950521835 343823887 545466580 928307966 934757591 238625998 549536940 12614382 100852514 415330668 903514674 107224160 798818181 705975638 974222820 375814355 751801809 33258487 373094514 861795746 923243412 789777223 847271504 788993252 938608207 52049907 591458776 445424869 478935848 349219340 470900085 492566407 672188201 617101230 713150208 205822431 864948111 29319077 773054660 676497609 680128826 674310930 989362282 300079753 363345881 117228133 981562515 370656952 574789978 575978732 754115515 908222557 936944153 386238279 439733842 741899785 920136929 356637639 942515256 241437558 378917988 593528414 672070653 485403218 673733209 470297930 896023465 454611137 752509920 993671832 996311837 1394010 594316749 353168521 710545514 509370098 685858665 56805287 586996412 426645236 795004594 635818531 727230298 776162729 822662141 836673606 879073002 355925114 726592366 92788298 741240261 124231621 776152444 685552346 927497606 570680988 601960529 233211921 399817995 307978082 446193909 913208828 948405446 494945605 739675578 861684096 991104484 775723828 847235192 562400800 938097023 959744136 982584350 760160244 796956010 725552792 848490396 11756511 759954076 727860475 976397453 291276406 767258292 986127054 993602288 845674444 990994443 535648682 738279433 897765085 907798558 651153248 814419845 386675712 433870568 208102487 715473302 388958560 709647540 252659970 613170837 380508901 717765818 520963371 742324228 94977666 547190425 850106711 967019712 442909097 626923678 664075044 945253059 976649362 979521669 826548537 938296621 782327306 876658451 155740523 413059484 432394973 539933494 811350721 864162444 973385713 983444122 728909001 950150327 980845005 988704884 907161901 954026415 114538282 795395221 112338624 210214477 200437286 725379951 200387074 760245785 73871845 593196110 322602633 713892381 260723923 414777717 343812935 522315791 264620416 560197823 847543652 874025331 694694550 784112329 29244498 619275289 445732341 456899431 291133098 642302383 111958440 973527596 439543019 944169040 118138376 956299177 805124499 861427804 999233557 999705317 965531383 993973149 742343357 865819776 843232211 937154840 804075153 987248428 888822209 934483603 356549790 440474436 535134859 662414863 439523760 577948748 246726548 908598230 297361050 369329170 267161137 877032184 624719276 711735557 877363454 969151791 357544254 599047923 398595436 411833164 507611716 664308668 11410424 969209813 786558977 831948653 320789405 322712382 784706636 923909345 980211961 990248011 943007452 950345227 91205216 419649584 64540219 73972575 871541068 991176425 399901492 710462313 651756008 758111226 438019839 744169595 657688249 733745297 881013647 953648192 23531146 562098581 884156860 946550279 133725369 456285516 549197635 936079051 135191938 413095689 224857997 843296892 669349984 790667595 61942769 820570992 724537957 808388837 596167505 988920066 484707015 954984864 129061581 144495025 246527475 257539121 591379548 836021010 654020994 955501489 239615413 380139582 42463579 606136238 820578955 896391922 180473256 591105364 691292755 992729778 967435298 970775418 951151218 966680805 279177155 971382278 162692070 529084270 909878520 951592495 65319326 624244642 899622030 955155512 475919426 863196939 560522663 842367554 70676776 628699543 43408974 859406522 515929869 811579403 108001629 970341775 844083899 890434037 841371141 967433067 559524733 611170561 875228012 929598160 426226261 848098532 288477134 517346712 264442778 736434452 606898642 911653780 805990602 949410424 489473923 570290782 581895468 613415684 586419779 837056299 325882930 993614179 237442590 288250350 120146678 630339237 501410143 878983498 811898928 891883885 700272691 880837068 905453086 916309689 702039804 753334011 302609660 553705468 34227018 559572141 47112502 815370412 128271691 737347225 122387228 253666859 880543600 930116129 532046732 732591372 895754089 956059272 305351508 323230185 191451058 638319430 345257780 609703763 216176141 237494142 97012636 664452957 791501071 841310041 833939864 961302278 714172602 818861364 500968463 960575143 505810723 742618199 644930942 942804242 165637685 702980676 793416841 869581633 56635793 883291695 538382082 878114678 961707915 980032276 934191517 961396064 119148111 363788877 657485394 929921337 954424510 992997824 892516177 974523563 96876991 327248528 380306911 619747709 836032895 995586597 628824467 967771294 703806351 802344890 698930961 842970522 931013615 963009406 876442057 926046884 194001479 738428199 808675082 959631578 830396893 959900353 271622842 509301618 350630118 475909311 77671105 263830007 69486563 907860000 686724524 971888908 680429938 699134399 619671790 801306453 366586818 441456630 716505305 990801590 774249126 977489256 632149648 891890136 326786515 520649721 922772233 963754654 123791782 763712605 647176503 710125472 23859689 977312670 225773083 499303072 992928703 996220161 207391879 565468860 270495586 601131501 26740531 884612228 410440981 771008736 869793990 983633439 901169642 947324563 364201890 935725490 339490103 867050149 130545132 751721375 162085118 607700623 240000148 842319542 271924117 316309727 745937652 869513221 201050399 565772013 470386478 674038499 442294668 684636298 123361996 784649939 94778457 635897558 411576786 647952443 46796540 731987442 132145936 561807419 466828361 861043148 881723724 996839691 705420541 821565581 304514472 532036434 600019137 976202597 570486075 809949835 656529480 686698358 703591673 920212304 569302215 897040291 361673818 633827227 376627282 789614834 304304637 566771022 42451753 367397035 175806750 894902329 338414551 746930064 587334417 881266152 513539526 657840386 248501852 886199904 872352733 922554384 200773733 756386582 565497719 865993684 157530643 556599404 756652467 950943059 464792478 753250118 873483578 926578487 3829920 850088699 89903869 454565531 279295115 897294746 51273500 221600255 362605503 398022164 279802609 577483884 714957902 973825344 779712700 879882687 31214879 605565648 932532361 991400833 969867672 991490164 786577337 926966337 913121273 919152062 716805134 727831665 481500693 482253855 119479363 947838966 446313442 876956616 98923128 886971132 658951666 754231857 491999876 640124253 263618435 705747948 556551592 687642582 222722559 597476626 646734981 951475910 576661783 864349078 285188991 831405045 683304774 795903133 770390768 943801897 525225634 664269245 156163379 659433937 106605242 540204138 272438592 395154975 284014854 831829603 472349168 679084709 174835802 670059685 578993532 858913770 181755766 372850873 594093441 795924648 781358947 804728131 921805744 964350225 409036850 584735956 612812259 956065979 51125201 555559336 754920779 778710531 578402331 752405680 16112764 499827974 418514101 775640853 466843917 982398518 931627485 974674931 700446584 882211876 558989001 653806653 939116316 988447354 74730261 694005870 880713617 945710633 331385076 899915253 84060031 692179479 432358572 592522798 275358837 702844731 81140446 110106295 919593294 981803321 241108153 977544250 598477188 623397840 47045549 971034455 422609109 741140203 642551109 689116724 29942646 649794267 569650138 673958511 479310100 800989306 483376897 840800225 578674993 721476832 908830882 948670191 688397060 941636181 725989741 948019641 725822298 823059514 83974525 536190311 777533279 833386283 338849013 680311808 653751402 739423519 108753735 133244756 118276232 591691995 680990912 935123198 390664568 774478761 440158981 801247375 509859557 973622531 418611346 525824949 846991540 885668216 854085668 965817510 392283658 596794801 493812930 910551996 335152972 766477053 113517689 897908771 109584685 513235382 885874343 935616673 716653893 860103183 471883523 886925029 54076434 721177664 180132003 216508782 276775389 593470643 799017929 805715912 661942028 928617933 500968153 724039959 647254296 894438356 413877868 779143166 667480582 742883767 780591549 978068292 185171091 867384257 208088565 923753211 60541819 178719918 902870402 922878031 648452193 754016885 654409126 752342819 508904991 910148690 946819595 979347314 434335216 506664229 390372248 829141792 264883290 400467198 93112045 754377029 817229718 975002916 798691471 801218034 910261740 961014155 624156725 808456093 179683488 916650408 410763650 882676894 713334225 751867616 381528692 856256297 855666083 876462729 683260039 897957154 64095152 629904666 257567629 827783455 334215716 545693617 748756376 979007863 314224853 613486984 542981638 698660795 601364254 903961017 712508743 801988347 882129705 970627849 574053655 809522863 105014309 992521939 772775590 983516486 969637752 973915719 407540941 457262081 75152021 573660025 670211964 697014380 147975534 982144673 340349326 680056761 245540561 816264350 610716141 709581775 913007108 938865463 559101001 570053998 736146739 998498052 929763564 974418774 549551755 993762218 802965182 968165658 688276537 997023735 46008496 933956016 408967646 937946783 126019961 526742284 873542194 979153496 679857973 887098005 283047287 577189415 64142093 250044305 2327515 797370834 817584494 832500025 723691259 934147177 567273478 962137213 860603899 920616013 938523848 987428168 488775360 949613580 123364596 259772717 92310203 808155747 483070422 985032136 285502180 555535092 340982316 774404137 480250828 940152721 850530679 991843239 745423588 947115847 213780741 240605824 544705969 958500729 292658804 567442730 10264991 196445738 813684658 815088400 695754141 833957929 546062059 698668905 413453792 917692273 465029270 997896389 926337188 968480329 843153655 961011713 216784380 358174887 567009005 915223940 388560959 532772413 900412393 988038208 791059700 859365786 529966423 778888204 702161609 964563342 88012920 593157002 218551438 377894278 950393131 989769998 14707150 772720485 472348483 799615531 441745223 518700044 107222839 847085642 34611637 55965462 131485341 370980102 969708772 979463066 197857654 722915643 886218595 999339196 524910996 955299935 37424818 205670838 914415697 989538963 683837229 725807588 67523360 990542827 888369413 945526783 361708862 931244694 322824083 497630654 105267071 274078360 212703411 875084254 786967617 874825126 124881391 420323611 119167056 949432175 267974019 313856842 72097563 801842667 838136366 945295117 170029881 710142948 963444018 984853952 311444199 690042543 133967131 939234669 440197047 586937101 561995020 817268920 125918012 936535804 210870031 278442543 186649804 838690299 255829110 407755606 804414225 833833236 26000889 42109475 274578978 849728274 424165871 574286151 860957272 895279963 387101979 991306632 96883625 344487770 524298731 956674359 136344522 884943543 926011514 954632509 954924762 982825765 686478402 912432225 674486354 693001318 793526249 927154623 562941821 800015356 706208680 708935023 718197280 832866777 714604579 737387862 118588152 530147969 138117227 874623595 969345318 992956018 570149103 680736752 373947174 578882510 828642995 896809721 156025476 845394300 966362644 981081434 365035731 412605333 356314351 769852569 27842100 984450254 196828962 963990354 227042437 366087486 350103396 489026435 72232969 528928835 592236059 670323517 461138337 821588283 64954556 601261978 793320565 872410932 226671669 421430350 265690240 815272426 538130610 974414359 433938786 643778298 597054881 646786960 580988185 922593439 115097273 349110419 315575063 632689913 628210535 674551684 244054503 870912312 418670218 884934291 830090579 974498618 63809691 198823327 369495630 573883492 193311102 332617848 839615479 984948747 388700878 675677710 22351817 266070842 900190247 914778256 582266970 891827756 187462954 503054426 360474792 479998499 696814102 956631578 209093568 966094275 505725988 905489689 719457916 896852751 175064783 827535632 420446899 530445460 92046831 978494271 977260350 984219832 855021284 973545981 13329921 828105959 661067698 968235530 409277688 825009376 482456382 902141264 408573080 608307407 839963052 843031324 434563943 723520111 610355980 892860864 483821386 705480875 316936975 562530748 262798135 611627976 156598509 343642378 33010926 921242167 771901755 785536403 355226829 433476433 544346703 639960394 118783882 667029970 7130923 464571455 283778338 946028128 696898558 835327702 503832970 587890443 84772216 696305186 495168051 903947076 916796034 995330986 593128522 768139056 103135717 419068930 967072945 988033714 388203588 749325387 372194915 761108223 73044252 350945686 967283537 984695992 672402744 691254766 415832129 605417866 445673007 575862427 94037518 134757576 601220500 615686612 671802066 760475793 52289984 767378463 103677219 248408831 222102111 892025202 337989154 560212042 49641556 739261923 119586691 521419736 271737392 567682111 893775852 894354810 252069287 492067363 546757408 605699120 525271528 709210478 7266360 467698536 357935395 626354527 657974661 890890102 356654529 654050344 250364706 871520195 245631401 319484954 582604899 901537444 391364334 952411636 323999363 704553938 816893676 961780228 995475008 999679087 141008888 288549337 576917688 593138000 863199581 885142919 876599220 888975430 693860238 905489069 174260950 758567522 362272062 608281154 705792272 877973851 250636149 273520226 648287529 900442363 74443240 784616018 533393534 800234298 429718646 928518179 141287656 223937130 505104013 963423498 854838951 903065438 660661250 703421154 711018412 770156782 265360705 681822692 734876781 921339190 930453323 995145387 918499395 920899231 256013775 264544789 525224229 816999367 394203885 790141127 596711779 878727672 934737683 976156999 663173536 797848401 315568896 598862620 770018296 843582122 737708649 765478004 876671038 937708384 16598152 535074421 374525827 693774876 467474127 543164210 844388748 869550191 598375100 784633873 231064996 749166497 337474282 953609620 636005101 911456828 488978814 788163719 318523048 532334238 139601910 644281609 578628064 865495891 602579805 771873641 253087884 410980524 305018067 833661759 70729824 288516280 466270222 547940446 190886977 385282758 994162192 999844973 865261660 972094714 662664569 890524586 10081700 287946042 526958321 990467773 352535350 396603569 773371315 786645291 301144846 745999575 239207298 498229854 974668393 997555872 461385749 821561651 182149153 945857906 635254554 815496628 986918960 987038398 74835670 376975701 256346803 323511076 255213663 909219156 298426376 703511775 910376660 950169767 594660100 905046697 59226746 262588743 842876861 947650351 480915239 958631259 924283142 931095467 487719559 570054099 635781119 927964364 308238841 619952709 135053578 560466123 222799431 451115593 580642656 794612299 100567998 954274616 671561554 731690766 792963332 862584658 415536719 760009130 589628642 827865281 261628317 484824747 145823843 755298441 425428541 690057728 578586419 898105316 196444275 656487047 560285295 625865628 910850006 939130150 25612337 190296530 868644086 914482735 67802689 150289789 505553284 733138826 421977907 650384385 174113658 843819546 825264289 906052967 603222474 650408421 754265203 914237053 489141797 901458675 566255209 579610170 55333244 147776868 883510327 903395283 69918401 187068682 826350028 978189850 103727114 469254918 490816912 921294664 531563429 924294837 310596844 769404474 85290775 858422932 663511324 837145547 500727893 978336398 529170881 573532717 664298771 978945152 201936266 311132771 132474680 870531257 384676712 905950570 766253745 985605124 983407541 999830269 538341739 728014400 151284181 574959147 732393978 868399129 820784629 842811962 756251797 848408094 965092525 987482776 266053286 974529546 994227078 994835748 645200507 660473149 83844646 573075813 626500087 984005335 181309186 771442766 788935123 810059200 374730824 712159426 357329866 496150133 714925846 933172302 96917724 204957833 42733145 825255931 632280964 727626414 561828418 849337238 164952535 497695146 232996759 598542603 122737590 365391442 19878541 666338535 698986796 951776263 879595970 965168250 741903549 842777954 899438980 982497371 350345448 855213730 848603251 860563211 873172161 877303235 682827336 819856543 952885805 970170843 167074909 885571856 223152178 279407544 851890731 965932836 907726966 950534089 849483967 967861449 963803159 982979017 853793262 918205487 233450086 580611042 543205709 730305092 818804997 902397218 72245205 602818744 892607436 942057346 531803733 572866278 221156210 763233471 910398286 927732837 931318662 977907205 144412106 443607258 486132439 923104559 543864245 779059421 261272368 975746704 614104578 780161575 53543259 484360331 178045772 394420937 168825795 866932554 257206492 703724934 62821104 245147243 119626034 810971249 641030180 894033053 359355818 752388219 452940300 943154538 906732251 939413093 380638881 643533023 972153028 986720110 947537563 953188789 433522222 631764770 974608828 985997195 42421171 751664438 701291620 939369933 746993186 784616709 483303813 856043605 485227454 592663395 850126535 922983009 937279276 960349427 550163668 708837611 810821614 954162390 196705612 256746767 984304996 986988890 643978811 974685249 25009457 532515439 237383812 742607190 977258766 984692927 34558861 95947568 144849669 460962311 398593709 550475031 937172206 948285035 762931224 942132919 59641523 305008569 913767482 991266861 618687369 858005640 988211743 998156092 445757142 500478539 978561263 992866908 411126509 785705722 774918387 963410922 122721734 665041515 109505231 507430374 924467317 925161964 585013647 598900347 942076531 987727388 429592157 956589200 71662492 737272675 341479846 365440426 812030313 876186965 244421949 246702457 44876592 769326646 161876278 897301696 546493167 932794621 541508515 681816041 735949805 817952154 517440565 590395883 39932024 115362219 467790157 540811921 325838292 561303675 90031603 482848447 606852558 970865901 374268419 536586866 698593333 998488836 641564312 770738965 195403087 779828295 963853613 989124849 171778651 305572904 548068120 947552306 391155276 838290233 570834905 754003270 557337374 762141921 606042647 977430582 210764864 764904579 265230140 502659307 810403058 971905575 877716792 927394855 392969673 658416961 822797203 966423216 631221606 706885829 470585767 576768883 126313943 428816983 385697460 990078632 81552470 85377299 289797320 947533977 293303839 728563112 451493606 674090032 577596240 799781792 402372481 616606542 671036470 689232628 748600410 908647659 50681081 685270260 642547250 825038684 128254756 857003603 893487305 903613851 144226514 683258032 891406031 901594974 154320528 261980328 157772599 992313074 609187830 783217342 637239761 869355969 283522211 637047275 974209866 986234978 290298864 918447035 818063085 837928203 32848851 505395235 633980877 759343809 564088564 960417540 886403271 997096243 882455143 915295250 106200968 134478772 44587070 235439737 882541370 926269538 321808269 445152998 17711395 305116964 153973625 549647031 715338654 907091504 665589745 752301526 79439709 886949868 508025935 559561527 774582890 803579220 711800899 851519843 805939287 969201088 363871545 954683056 990544915 997504059 550550404 558491540 830248549 955191679 284167319 338287017 679767000 980916877 601902935 801250475 623938459 967498266 34895307 213105270 73929518 234721523 242614378 964972385 304677372 487494653 89949248 267022981 412875484 424060323 511530480 926357222 273492132 442814939 573449858 685103771 454163038 829743677 20011230 989499287 570818496 863893074 259738064 312173094 137666522 783504559 538518875 658359185 703146571 901831877 829387441 971822925 932611045 973312796 83886504 139805494 957252508 963828250 275344637 393963021 478061516 670568943 918076715 958026025 15889430 118495284 25330001 649917088 353003034 618637647 239042085 382219967 58845061 80262180 736493992 815985976 677611342 683910979 644434446 882093059 270714174 733220038 708061479 842639641 672677838 817947990 304809664 656266624 87237945 959468932 814262087 855656657 402055288 734116337 621191728 780050072 725675711 875560042 146820784 968760824 691351270 702977573 513391264 661927213 729855239 850204346 99497715 929933367 703090671 845290577 913674102 917798813 989976131 993058427 944709359 976298111 958592676 992661420 385586036 511594532 724679777 868793575 507315498 737121538 234050975 459488373 163926629 324031541 152312139 428719001 780042034 937842816 233533414 474907770 945350246 992525039 869230971 967400931 817905969 891751845 153322889 677627200 328750563 744442818 422879935 593385428 846934203 949148712 388645771 465832388 877496559 938623714 865131430 994971185 836283050 979063027 49376904 516726093 787397179 857761632 523339345 618440404 66169362 183834199 586695322 671536631 457373449 856070329 968642289 982273065 186242918 416052848 855573778 972443009 647583893 889846911 28795083 690961836 580575045 937830313 136036073 988311203 153850434 589474087 303417525 440311004 958032480 988101970 982624357 995317798 755680799 762097871 45169069 609202904 639153455 949336855 625258770 719588053 431812386 738596719 466233509 537660619 415862210 904702370 467920300 916088418 527992078 570612008 934244422 969109366 117797936 156446532 841198527 888147697 515816532 628798772 288668434 689613109 8572037 316437837 456864135 566093303 778230044 852556457 534799802 904101271 719434683 721843006 714166015 985441064 690485916 851668917 825874929 894054928 499571598 897648927 445753797 447832670 55983262 920076034 984964395 988602909 505714656 551659744 387859704 719012378 455793067 597393080 841435519 999451265 392721229 653320735 851491999 980867370 893904745 967225224 988962025 994671852 844945489 981760788 889242869 923170620 166860537 886836475 108347388 701570207 520178946 687008982 91553350 212467523 697661169 839314842 196763758 922509619 13342055 227226027 632344707 850831386 319178696 954760164 592522089 707876728 972758334 981248657 241280120 364150265 700547980 880994162 797630532 798728662 350388839 845909843 637427671 736978625 11123011 949845564 479855629 495076590 598230500 779648722 735877116 881873696 184809 707832728 876077547 940672094 10829599 647545162 907995804 977759467 887976748 954773918 719536503 995450620 860208508 990769665 199713796 487388209 457003025 880687259 871916684 918166430 763410066 924799292 551704916 973724891 835377740 904426513 959347968 974857712 832181916 867396845 931023366 967909179 76418177 789442162 283939613 657487702 764887307 778890106 398732656 460733903 243660616 772277390 205127243 838228779 580592202 989167956 266494896 350245407 236639431 270061960 240594708 796866655 548985743 656136998 133708938 428503621 757867089 839733849 336829092 970690707 917531205 984916816 292119704 924654212 201701504 617831398 761555767 785042449 109335261 695610666 234472789 829254098 285112423 863927580 641433247 659896733 222084709 365195621 365933189 948461390 164533031 871322710 30259019 701403307 7265904 531439923 519565605 605000347 859675863 916914979 394171155 432699404 994779504 997758095 120161819 536857172 63301992 463838993 15010988 411686236 744185369 964859984 121686298 690478552 228095984 704158097 693440957 934965876 127297703 992599998 672495218 976193750 842988670 870191804 762638539 954877751 458376121 845351857 249165904 326270659 748912788 912123449 482153750 980450458 673507697 821442647 767515757 818775620 367158206 488458631 818846336 991097488 602665814 902512611 251476399 471683124 302713804 925731182 60933209 309140730 358541575 712450163 245417586 545630889 768340205 894850221 907117479 925887267 454609960 916143051 165421586 774650982 782435191 825378380 650777465 974015989 208061948 617459504 12309327 678508282 272749161 456487405 449842447 672702577 4245549 867638937 114494233 743053183 190610610 839857325 958291334 988665575 36853115 223742014 335953732 778441974 713498141 754824900 165995689 952537584 236128564 549149189 930092171 961149873 89834636 388480971 118217643 244845221 871444965 906611848 963715029 990216638 635981637 677011043 509464436 922374750 872743550 967196046 9188624 582106547 708069563 836636659 718284227 792475500 734234035 808334360 993642399 995578058 401087716 642569551 776471593 889103495 582562897 635018006 271410206 516216306 315119518 890637842 336081341 853292531 657813782 876164200 390851149 613773867 878887179 896371468 401726147 843023646 147003763 339826081 689132494 999870292 14967135 469558313 457762164 591991173 9124181 108930730 545964759 653456698 408069913 571139084 835896067 958225498 933188625 977905202 758743179 804023129 268477517 465179672 483269190 538779231 47922058 955915447 387411472 751200569 440028044 700362569 794774644 906351744 304391997 550616020 487802865 590041879 171585131 873004286 187565337 633555271 362287070 929800274 10618563 579692559 38058915 919598313 2139196 146623162 56676200 498318610 414013595 488241710 551662096 872450310 455217539 863417010 465749328 660411215 524944793 916745845 875120444 947938871 241418465 622382608 411862801 616119633 990240431 996817660 413109290 576671848 313656193 426220191 394771210 882731434 997538657 998037131 505954279 968545212 290469600 582607586 649669482 926705518 669695170 890738636 285339290 482187124 322693427 957443145 376953441 930712776 958890109 968799497 981578355 982187258 701586885 923349080 736899559 920266278 331731837 911676702 103921244 945857045 51100935 317661787 714788100 985316538 810181880 906867078 355137632 991146297 325061058 394381800 276617351 816388791 395809146 579122943 912182571 987213424 399954469 733370220 702563297 953679389 27215890 228001249 789485865 812774162 880795913 983508429 562785439 914399523 333151762 616390156 374956878 466191632 198034597 408452572 312598556 725695628 764863459 906855378 709355443 821611148 172665513 704490383 225504139 872884108 704968762 876215014 268055845 604803809 58985794 341961180 337581556 972985066 447971326 920297651 320090848 910259228 32681765 831030477 686881010 922115795 598127937 669870012 677347451 743271810 773492843 824398124 880955447 962588771 493874874 649939623 649696169 877998654 975910925 977790563 737622683 829399172 359857156 985603899 513723391 560219114 988365509 988434785 326882432 393657586 826654919 922585773 66996861 869362869 246497172 699252521 309924497 441818355 643456165 838426238 378037983 669036243 291129975 412376454 91932753 422885632 14678152 553005683 475432415 993915778 271314172 980392070 916682682 962169033 146466536 866806278 16162894 460928770 513111748 867136712 610026164 922704740 985340053 998507323 990580532 991101554 955637872 994929412 238780193 509377530 981255687 989885444 844573617 972867550 644757231 653484920 426050690 842657058 176657319 784932007 851637947 909010336 607595428 701153960 548452927 559931688 730248787 879908782 675862318 940519039 806069921 901455427 342032276 983092540 914673731 999412343 636543892 839343711 74024129 891660855 16171792 785330179 846770179 962881839 172664059 967483835 817850377 853226973 383320636 711908314 468406913 637294414 169527694 544455689 996078953 997812410 544912654 878298503 645895052 984096868 520213330 772462810 482576119 795864337 233199009 798484075 432046661 768723466 194356803 866006139 842245033 999889056 238808904 287217774 56307551 275421243 891752563 954792869 442090284 881233951 976876217 995569266 24094412 280055875 670281615 735257236 312426311 636498471 534806409 865540017 931950428 978900570 489756810 617188483 646638372 864443408 971404182 990339750 537443780 545836711 807553315 812261096 456466392 577053657 422819992 712538036 281860822 759398929 956797884 967744417 667843555 879287043 773883459 783390986 842187865 998778965 371462370 846497017 289017556 792133896 777213748 894259953 683363176 699618181 188414823 986806119 469605770 739769102 545899291 897637448 227971396 372679063 114618575 834454859 386859031 559467192 95090159 967389997 372183503 772763245 70448266 749022777 639231324 745927193 307889876 655787672 900218009 930013449 574673952 769492807 961804160 997949844 925551440 950132250 692500899 939914826 828196242 920965645 593185677 596310202 663604738 686063147 723193992 961338740 361252183 361487691 909851584 963499016 930133919 937992855 267916625 484076279 597518068 619866921 936793151 949984996 722171073 946174794 822456429 961315929 128065216 848036547 674456258 742732053 292509163 483780709 317701665 366194609 705574958 864375581 723930176 818193831 405546421 723728616 737204719 857105225 935342580 976760578 725770530 867063000 733104415 738511797 310338829 489562417 209600158 809641440 723942995 960226781 739646833 947315827 752415920 971546336 390969842 663374046 881898730 908689952 94872662 651862438 340016386 909159034 196685027 812095639 858772501 945536715 652090370 798899273 463000502 747496596 64655395 184301388 46519703 218021921 628401261 809443021 255740681 837089039 32981697 66722848 976791927 983877408 31739273 684083030 585181298 741630525 205155468 937051373 142857085 932377024 887110264 942637529 743054069 896553813 423918360 554802706 597558099 626851613 615602312 902886389 875366394 946730736 819566524 833583183 262581169 288038937 418559214 743324034 2955070 109904928 526338482 961298820 400626501 911312280 982873262 998864915 70369868 317200497 133636031 326602338 642996387 816267705 485113246 682546806 266206501 738776513 207330751 344061855 132915404 203232581 617722279 725497662 108974790 662944227 216853366 413230883 454296433 806152091 473985429 873699889 539793516 552855698 791918411 931217559 389720029 994237374 823394373 862822430 888462089 942769300 647907619 870803108 639566662 920235694 401502837 654859679 66700107 886159246 267993083 888288317 847981842 967520139 399062232 759655829 167483563 499244810 905907482 917999853 34126495 273323846 371367674 541803923 4119939 772178047 258432196 684107773 875686090 946628963 653060266 868918109 729932823 964365612 897005947 918174465 418347598 445941182 136993735 462512384 740125672 886482716 842386222 917933142 540126213 672571331 375908217 962433081 809086537 857412155 894455027 997758529 853143578 894757283 798668432 942635259 829693578 988435621 890394717 973246107 398980612 614765073 624978727 977777811 528472170 690566770 724020280 745032403 719166126 799790974 156674902 778976947 873120959 876938639 422611715 553108815 111849407 700623751 160471415 700256805 153384125 543893171 260606395 514657640 45976963 195218436 953327376 971672866 428045145 546063422 354472993 763771079 722118973 868941261 345527101 589994552 312732412 561476229 638841813 782528920 987669406 991992395 369080981 656979257 274449780 503087545 845637163 915801256 130157184 534274383 13922284 461010301 566338619 931423554 318405297 511248898 822307375 899183889 415258018 943562577 910946819 927813611 411656337 825582189 800193732 973051088 651010289 734991020 956375824 970031534 22160587 918709453 977826853 997125969 804738294 919764667 470836148 753011167 177723547 562870665 120098534 293697718 369906913 371017325 479993147 874663927 912377768 936989881 871776435 931578558 670639523 856923242 220507259 766703667 17921538 143534579 389007880 814571331 498305435 993807358 529391815 903243682 130209363 406470275 313148095 785535613 530580403 930712618 77689298 702415049 245680184 638936288 895818467 960971371 825607573 906572276 69247968 646181182 827373561 853132402 584361236 677056779 253628105 808699395 324242005 560697191 942180409 975320451 153358389 594671534 517074039 919213755 129642887 980246292 474298450 980942829 538834466 714517320 543070510 633090081 55203446 747352392 537014837 888509508 570020957 696696938 918835936 995389880 28456625 283037385 173382831 798780453 811778751 904371163 489998383 943662612 936155283 955711173 858495835 862310384 232525370 260437179 238751567 447408869 225040624 562741277 168839391 926826874 3956399 30870255 69794505 508679266 118545375 996523159 464406078 841864434 119382096 599039653 631270813 964498003 988352408 995810770 511706150 645287300 183313810 623660904 349673176 922613422 52702462 97995084 209521514 913342430 426749494 465818512 303168771 838496703 308090778 693175355 967822116 980231180 64834938 893755761 620269440 629592686 52936825 414658602 173316417 418333289 409077225 938784606 529135668 774620958 367137656 844554089 685020963 834079567 544428898 756816283 263611839 593892955 753435028 839020967 734685305 760902001 625220946 647802590 681505750 923452367 209045898 395149546 975140875 993344070 251410114 872647523 254446626 323266263 289555922 650082417 654373084 988467945 440972760 515402631 819319686 931394815 557255742 669911207 133864922 210776023 274931570 561952761 172128991 510751992 824636246 836308092 141321133 230582867 868121041 961574323 904795624 924884455 440233319 592423868 441297517 603540784 571600071 594148248 992425141 996639103 391543305 457956185 468213720 997708343 873190818 918569054 64691905 739306928 926112027 930029293 299559025 340781712 94837394 382685585 228750266 884185583 461764291 865735702 106554992 334602915 376878630 421928815 602372144 821006052 239118450 655227429 834600710 924353098 928615256 936399769 20288404 482731534 840518367 912211565 43566142 617207515 809889810 996025606 449910939 692433248 774022840 990637120 619522890 936497833 616085843 932315832 75004990 649703288 186086776 225532609 656323672 807891500 591023385 594395366 486690243 820140518 657023326 922078608 231995327 333575737 481320833 922165714 130149190 866601455 732144278 958920760 168891756 906257032 318518521 523304048 533426778 658863402 963743723 982187117 349614830 971236752 611103439 929419014 756242291 846826161 296164564 797799022 503812182 792944928 503330050 979497062 705562101 762182356 475120461 708092850 833189850 882834062 868722018 877504031 937215578 976529065 904969823 941562023 374573297 427405979 64779883 433900667 728052307 860361836 564724440 603001501 496704649 884423265 631190799 858856640 930077556 961813625 17839199 158657994 52569028 687507703 215216012 644782337 107364854 975042140 839281647 936954946 931386354 938882624 849565581 880209945 168214737 280297352 344581787 443670351 462776207 751264290 102814199 170443583 950976358 958860226 510300270 755691348 740308294 809976592 799580314 911949359 670286557 750273716 590381868 682416571 60034768 294777152 257620443 526863761 911809891 966128353 593203613 968021167 555045384 950207553 708140811 739843417 499049323 697687044 730337171 888254718 452143600 564117805 927351608 940478824 463725385 712749488 249303593 812527999 645725826 981569395 563242964 930972861 241205878 646835842 504553271 553105928 606758060 926487661 278326700 523914342 149742983 923411176 793363402 806075146 356263531 614868849 453661820 550126027 697013723 866513278 254522321 471101191 252689103 471335893 211129889 586633342 763737098 978588037 983302329 984923362 11175931 656822673 777962902 842619601 379266927 620198085 428194959 819601781 19240668 569235597 305144090 777251431 244107398 760263174 217144104 325533836 840272735 876876495 566632777 954948063 299806879 896226723 81773470 702410440 340034403 697047246 467058945 990675575 275472474 910051223 840285511 848262214 389598983 882823949 275208615 997776083 174282397 254348246 805443312 979241391 303432989 440412555 49165206 846266710 989215754 998150476 33989833 142996908 876548516 913817142 865106499 909125698 578596404 764129716 574763109 869156842 236883641 476152661 404851328 575088911 590098148 985599409 217035506 633886794 699946554 825415697 8615083 782062627 541645863 858226951 951019315 993274256 129509058 130405266 502107879 986974643 653797844 839423345 541623233 729110662 10044337 676569789 184203896 273587460 796960527 987427090 445532513 515646115 950104682 990000542 70987964 683100214 566428955 578361421 783907108 842096542 476095109 816427206 169567846 476688148 751776653 827172487 946412684 984232305 677374666 792951306 752475600 924305697 36753348 486848068 453875899 731157781 657720240 799927160 714514017 834785258 980380642 995046744 46959464 539013792 115818723 202196510 212033142 648225155 267014573 792936459 944029373 976294458 757667946 988216877 518226780 607666336 732669775 798821691 554449794 672247902 490827567 835287572 126524613 732272642 788775272 870881262 584058385 597463467 918264031 947746261 841228624 887900812 635522931 834290863 426208065 810271400 1544889 847633432 464201611 952924591 474619483 833322549 327885385 919031104 585702110 782096029 372791972 923140873 368395931 951710641 560962011 839618115 710475526 728307247 420320224 538746972 655563399 882589413 337235107 574242702 788066847 909223652 160920896 727574908 429100208 536509742 856282632 989003279 802392342 864280058 520524810 666456710 319559404 966164185 307180486 313255857 931222007 980287696 584491211 940867962 87250412 860396651 58543015 562603535 602636297 713240355 258181016 727113136 987593126 990537636 958888122 978090004 222956828 251028034 566720937 633580847 601029437 873765037 434674323 557331960 487708844 577780371 18727064 932954303 361184731 384238166 352673897 852715062 832713783 927458301 414303023 970509998 241606168 940839357 777824549 796260834 275820222 983490567 853901568 863869988 686749568 727750517 262450235 708338090 674796437 749803449 675537203 977532541 553611857 826883920 230498588 979837138 334982043 570768507 715475924 809181087 639506112 958328727 593317407 761724915 386851777 445209891 948711432 972364699 412699252 668810937 589967325 845425167 245829540 655071971 395682177 817273694 995046909 995808062 775153330 804402532 927804193 954681387 842047605 952689126 568292666 952206828 686495070 822024826 202855126 415431477 172724207 604904193 693241331 950868726 459040230 473493149 650298151 954875043 674454690 681210170 334539633 827688720 755373730 870896683 101358574 117091200 36115851 329298631 540061348 588209558 149739614 826918372 433921260 831926916 234634188 663064865 720356179 835213991 81218018 208551104 561047347 649414736 488550052 679081498 160326919 847041559 341886719 951744714 958902401 993579717 146481965 168388078 824157433 911217962 914686711 924397313 541512345 721823042 419574860 694244177 585657017 635432446 976848836 988027631 340877188 817612853 988575033 998724705 284571011 742916840 977362103 987060184 493788456 796814552 156139408 538313671 709330826 975759201 329903569 930990256 125809585 919710253 254489978 642506125 144897127 525199891 740189360 944672134 482958421 822923691 787744879 993658834 938221912 988462152 286159600 693615346 214099436 772252005 493711852 593915956 217739235 958700816 384629307 894615694 552307834 913611040 850391680 964345298 740048857 930115443 955522762 990872525 56298519 994421216 80361906 393425722 336313812 851702819 511954916 677298682 545036 433842987 250537447 767678895 95686861 942333110 314348550 512851301 974350332 994045751 963595236 975855054 491970298 860114792 565592444 588066418 759802254 943833963 180231746 477135136 198050498 566346373 312467173 621233072 673691891 689244950 114603074 936263027 475333232 863346175 377495003 541737413 324349006 716984536 871604015 881683463 369307235 618066306 741569749 855621813 704155779 897887213 444325573 725700691 682625802 899571637 737994394 980584966 628439966 652312883 782179223 845049911 79562089 515156626 682405769 855216833 699908415 713413518 435388375 833692043 696849720 854204279 282559200 793923599 923726710 928033753 11950618 491224235 998059615 999922152 420950168 764495795 318818869 360052990 946823437 993295828 262434402 766921594 2842934 429056750 246123524 770428020 275905094 775952044 680326857 726960186 542595314 930049456 139998183 565302588 544644980 647180391 831519772 997090973 950198663 962988707 474592787 647819672 71745329 401244170 757518255 985182093 518267571 937862944 553048246 986407914 959662455 968445975 686221410 947757649 154256847 436336275 714303742 719940764 518633569 998303911 794336627 944373467 341628383 704795356 764612031 960979078 233752169 924975224 637705061 687847579 56793966 367968684 611232493 662899334 579389266 646150241 209920261 296005989 780792367 977461584 158041520 219862232 504385630 733459907 748512475 751215186 953656151 957274809 205319386 279828767 663576486 984414705 733524693 940813831 704968242 762179325 534268781 825940991 220631513 236091699 336282645 826394911 259224677 452570149 927129610 970837318 875900404 945051879 425986224 603921017 259705604 553443258 721711173 970680872 613756763 874108228 599921907 603005111 623553873 645166624 354826317 467269360 988029216 996599137 846003582 909607595 689925989 965008854 961737537 992336075 239210092 755119616 845110010 880525218 967708948 973711686 164787985 768750100 768340971 943467137 242931946 346074905 920318535 955539599 429903423 669631270 383693398 914701574 813966220 825672664 94421272 381888918 321042487 783859669 648017921 871273977 39072394 875659931 84935468 536600154 616956461 710659227 995992454 998857988 245251509 720752692 937506940 962557825 947981325 970472274 123873268 962765644 519683862 943289208 372308254 493204070 844362583 855452026 111491304 789230410 311145149 779785266 449659387 545949231 755601258 885678582 788199222 969724200 245702623 684208587 463864841 575631137 753416072 906406032 181809918 778383022 472695683 536147955 933641752 942081102 869367579 943682799 806655605 911071592 691155821 805662816 735823727 763489834 588048949 613303351 147319721 193944488 188097900 518741430 249238286 972441205 667230514 702631948 304606579 544540141 540296983 611101474 719565943 878087291 196467322 824160095 10094431 505606310 177837366 200897481 779823589 886650743 713480649 857659375 201118203 499102028 767034877 792902316 6580315 644463015 455978998 974840351 181418878 532526217 959688031 978641346 775864060 789189142 479516622 707009051 977812775 991621767 878233831 943602211 259109224 262658901 806759624 897660813 75286089 945966614 787881863 868828485 777854542 883544624 883427916 975270156 484933905 552695929 801368339 858923928 97430841 655601320 856073334 864999852 466597319 672998707 719724652 800065617 963170414 965612415 423068650 763645798 573455066 693265908 517466695 944494791 628756189 737355611 274512791 717622436 937118603 999340288 603352327 872625546 857937733 940220983 172153540 443800327 389992404 862995555 766028542 908519700 576464822 968087038 98224668 445781131 902436144 976473683 559530169 747166645 669719020 997895903 313649305 939163711 586084350 690988509 200822385 337577647 781504897 844673301 596146073 620385928 35706637 334643967 11429806 293473825 623511957 879647087 416986365 821169726 359539923 645223166 42101963 903571832 434994239 903845040 250687106 952217063 780734132 783217460 760959823 950207196 846351847 851196141 349578473 783902964 221245870 778984873 86295060 385700017 579987673 846217104 792537890 877183833 581710596 643424697 295858422 588208584 271483360 666129542 867898949 869092318 448624495 981020885 503636924 686370776 719977842 739367756 280912398 325951643 835619657 961102030 370743301 962062419 158937706 415475601 472635607 867186909 916530650 936905526 883285895 890832878 697746554 931425662 946805078 974132664 319307516 338735210 627559215 661906726 777439695 787133474 853560359 971677303 703220520 952148623 143830834 934412114 395547287 474925411 949702901 998763716 452215769 902069679 680157989 755554331 661889567 725490651 53065739 762767783 799666842 974805043 92670920 362705929 978667031 982341083 920035523 999852393 991559180 991722861 329515636 399834990 74904608 929690137 311605517 640414411 439483423 694231842 551086922 879563477 674012678 914777621 547058029 697903458 16485983 352958159 462424441 539713241 371308518 621191002 971160564 992380714 439238082 443598054 83746228 357725883 22041775 129893866 670296692 693176468 917521800 973009248 100994878 903806461 673436211 959432326 716571544 887356447 65095421 930948836 621610115 784539147 455962435 512055055 609179353 979048737 763576589 973418386 555810717 605996785 553853312 602995828 595001463 893977584 548961501 642266320 786649429 819643620 61396292 795921144 58932807 477978267 226951143 901346438 507432500 760277047 681267344 803914719 635916253 993998901 366159214 541174163 714703472 932560020 400149532 607278109 164682748 707315152 814095139 880525345 794203169 922751984 507619394 712733900 339433992 608820509 943978038 958656669 658573192 925230054 184095622 396199328 221749442 660764380 211985148 356199570 240458620 283061396 497013856 791054964 139043011 438642544 432520976 579762699 406901099 676798782 537822337 829300395 50869890 189464996 903723167 947657308 779476631 892921667 733558290 774342941 204335554 296255006 217405739 513690968 970153287 997930921 712648691 835531885 480994561 565663455 417647845 929643036 781100899 862406592 357227608 937779492 651666689 748581568 234304787 899515719 76717609 594689215 873162723 923723656 484934151 644440956 93842811 186733195 25853918 480452029 587006035 608593773 63958448 707529029 335668409 376664532 626256768 656992743 51805429 151335483 556155957 844921455 133063426 429707651 175965954 912969262 546858413 847270123 403986021 532507254 734543999 890134325 403017883 683075575 184870751 290116041 829030705 983896802 248766915 559756116 301903102 414716175 912364121 943898741 292025490 960061361 821910190 908767181 546259263 938307808 390692743 596256104 609707603 994805723 699918911 805878589 94632508 518592259 501581109 701576726 610526841 855052638 514966369 779940392 299412925 877335606 111156105 755476062 601647909 734996742 99098143 406031947 385049944 557979441 513171529 910275026 621317756 771036731 640736396 662986110 201656052 582714283 573423061 833383590 267966909 848562176 65307558 157532053 794874017 795653145 35369875 142362851 643477855 658798514 151608498 997719743 403328270 751496110 115176702 769463055 846585513 987566169 702468604 848347418 882705865 966663138 941177508 993296603 990737224 994627756 663833806 724776752 755007600 948704087 274373693 563471815 139310215 627669898 132547520 378956864 259912551 763632623 847950357 922136024 536362925 626642274 597037011 782295822 909307807 921701382 288915320 839444204 258680576 540362717 101449223 944021163 8548122 316968232 225251869 286233277 396514193 717943511 700166029 730373380 734437683 794295424 304033613 382673836 37813404 674878991 334991069 648899920 957897489 967391539 977703425 995478139 599649853 947753836 405384694 818246937 152019704 914134252 529243970 691747350 573610975 727514414 946429862 991558068 902389303 920072321 745475422 746953591 330414279 729220270 202178219 933762994 65390881 428954386 995009205 998974729 865060298 974788975 159162761 860373104 327085229 997662495 329112396 332602812 272774560 520748862 171113802 877522706 112453696 165326681 85626833 461163600 967895797 992805122 939071561 939914457 328777970 993106045 415391902 918670269 367422061 482972853 498090671 923289062 261572508 579204519 738279368 768013807 132541851 203893881 484412097 969765721 343340217 808815254 349401937 687752505 522816342 676221354 892408044 895362059 750540307 965303999 801081661 856938503 32580950 498214655 983676519 987393109 377156648 699644978 117618998 599443302 392188859 909915197 22106274 274705579 875638428 970673324 658109220 746896445 543949032 734601002 9438179 129987128 278839882 721525365 203429140 536587621 986102072 988046454 654755028 909411613 915035839 999000674 58684132 932397333 636966932 806332358 721562695 814840992 909450452 941900075 386940401 427457617 440304802 675349833 193607443 720606134 63006226 685099038 829916482 854903985 188243988 451269985 82747598 320597426 572520786 731255330 586158845 867321515 829885756 847152587 68681800 89893460 944993735 963543932 322417176 448003575 976334505 980325034 737447217 877006024 288441478 429561382 464422904 713187320 819770012 961633644 706717804 898833273 249616156 535832292 517561057 802515297 307501363 403150415 954356207 973747632 403968443 432196755 519228858 709845311 413346745 743755860 330137420 476478448 510396309 765489759 115274986 632483932 565187046 955189470 600077627 839504888 570318451 780975789 715822613 857062006 199614673 910929934 453279311 915579685 690730056 903827583 694305784 784259930 298799741 764239957 442199631 621022841 176277040 259650307 401364245 650017078 784184225 983060673 793924868 864074879 804100166 957569444 880386901 931126869 699656451 807628122 894667633 962431075 204427546 749225260 367108634 700931355 838999591 897269301 766868381 833750054 111607991 453443851 784425288 824362926 228657070 842156887 476513405 526601732 260375990 385936966 508286473 678234466 92619283 276010300 622044432 627902541 390950178 756717739 532921028 862376466 393307021 973437270 620035687 788032571 399020808 998162823 450143548 738237988 221896652 657759205 184692757 514346363 781212068 916528631 559460150 869302898 574264447 868210829 973628133 988949958 779261088 966194349 971064169 993531085 523249126 613097023 225569162 551676138 324278158 970431846 70200511 387312703 858894787 968576488 627123832 707796099 47500517 718714650 268956877 963711703 143839952 788873459 60945873 918681847 54253650 733090935 513035726 582350970 173179045 608149403 39010805 948352759 509160715 876959039 636712839 784542804 481188907 906641895 103408561 711186904 257169962 517125782 42928304 299008555 280810806 292889221 560326324 648973882 706264996 813731822 748353819 898212122 484012721 638481979 742204363 849703843 836148610 949749588 847800114 911628428 772743591 939851937 935850926 997105185 327041145 583786368 96701088 393430729 404061033 734763806 340461788 835878269 333693932 884648757 558342026 865227643 172608359 797988085 619989403 963131086 459878320 640256522 381105918 649973526 878043795 905774808 682119681 689250382 602305119 605163361 674587296 892902710 432710283 806104220 783303493 951730819 612724426 880281635 429272815 826956714 854167814 943813981 828989737 925590002 946374528 952632171 13837707 288551655 168595979 235549846 499148847 660247651 334800202 572046678 891171120 906466490 144376528 833076410 482831657 504627377 278942530 504521814 411470531 662663546 213851757 783739795 609397767 767275680 780354056 874387774 426786101 469039955 935682206 987688097 95002095 946879624 786960447 984817303 624382170 806662072 113473213 830727272 135613139 200876156 173324247 888087016 648017778 667411311 746087922 974051175 60437688 718642953 389580828 527746490 707045355 728246915 963682051 963836004 53138066 75466641 912370639 992178404 164496048 687364777 280236360 990193489 667873586 668385224 563387675 686538456 951543822 955124362 689333370 734878527 978740795 983896394 683236075 870083360 263228052 357125939 921906262 936993425 899954959 998919724 378375758 466016054 216240676 889847200 499712700 902649850 685407430 805943347 23875590 949289047 28861001 586868449 401438003 610140943 859690457 956913928 647268131 965933489 458044076 912093324 158399834 831581513 684626025 777632787 960669940 962376395 251765285 353567980 749825264 965302862 628883269 901202852 318291182 360049133 330442393 868699914 387770459 505384537 940723957 957716917 957730253 986383884 656724079 770309361 206275158 568664290 846404455 879970566 503652409 655220701 353903563 881752565 917950437 926051897 622874451 894470548 366119645 889348208 523157481 552182760 722360167 871606185 463725560 683737752 259314725 370882544 85131392 757618103 772842917 810458840 921801360 979085167 729905517 999799871 816481098 963331161 893044692 916917429 477293623 688122976 133140635 555601606 414476529 976484235 751161695 819361561 798392603 810495209 594358431 714388447 913165798 947646784 466490358 609446853 696466514 953352642 819797373 968547392 888129197 904709209 425046587 502987478 338267369 438908994 406694898 427738343 604332644 946905749 650570563 701296124 950458423 986487588 311913838 902472201 91427085 451548791 997043894 999790319 908975025 929427414 192644306 664837731 22572407 665663133 133006167 266620114 676358663 677268953 458711591 574045381 260468219 692719347 709917442 825568268 437522965 836741015 348433011 518216937 2458504 293335146 920752968 926182905 86273662 544635981 840495716 935980813 696137488 843350335 596000706 909151533 990868204 996825701 155186170 393592078 861819476 876348905 814928795 950779143 164423117 766296444 937690962 951647540 705053397 885551744 817240078 935943965 697274604 824463744 338336478 984971596 356879051 559817036 459301791 556138851 278290118 867158267 700270545 741262709 914705946 932447144 442611839 451191360 274306086 457962028 23444220 739960119 597647415 860666236 983621262 988336824 514476505 569278785 701043152 740286747 192360310 491055883 774690092 822222268 379311200 625876559 266518937 478749059 895869935 938681515 18289465 763593568 983876743 995542621 87397198 204412680 322428758 424340923 104483905 674945569 30393919 862717882 885472043 947814737 895008216 955613805 63925637 256922553 997127637 997991322 601794641 887363024 129730264 271864962 502036579 869059282 964019602 980581865 562218037 905298582 629500343 811209841 993070864 993431369 701571769 995337999 613724030 959983145 474457338 517907051 185790090 468099077 83984022 647825344 245663128 382422969 987068846 991973099 635198195 855301126 152414098 545317619 392344115 746608107 256792499 889910264 741598592 902238041 825242697 870096539 957490658 994949578 770407001 963850956 531560998 619969868 933122802 985987769 614583603 959346080 266459251 417860717 799682802 999033920 504592411 897944047 185348022 794810453 396388537 593793517 426086761 973727290 768773154 905062145 171768306 920318452 908343040 958917906 909367558 925524357 761957780 827681084 902069793 981230703 587447806 807737484 3025941 694221321 196009914 349633389 858305188 966021127 203058385 976172882 790696945 836378837 181600575 466659680 909831526 932431183 296029730 519867164 341543177 542232261 122001445 400390544 233094194 329706760 747895684 850170671 117871526 188429901 165738353 279619815 563298723 935456159 95533061 833107539 637025879 691038023 502780140 598748036 443684172 709341130 872816393 936856331 135740912 144436259 26795523 178981001 810603643 855535448 375745812 971376610 64898022 519544668 557399473 852625277 182299182 573414139 677077778 951821121 415320364 805259412 41752652 392971273 369977765 866813604 166882212 612736355 951898839 957200262 778398721 883278673 839642925 860960325 357148262 764337907 755034152 947669472 166732106 874234200 755797354 880956220 307509000 461807093 299811647 946455500 240939161 935790711 956447120 992826647 699470660 923278012 976159637 991418728 390178591 410973264 494586056 575562228 902065520 922783425 82564736 654317778 503962613 869144703 846734898 980747263 457941210 496111857 942310457 945053838 678043359 887767456 347268315 904435790 385730793 515161069 114313324 859758431 511509733 562093809 6503980 66621754 15348796 97906440 291260340 979599484 142875015 165608937 569028019 818174144 358352033 578355188 960051345 987700482 502463275 561926848 249683534 394245832 306711689 369677021 705758063 986114713 33847531 158576328 41599436 456565655 366296723 614727740 45721814 84618344 826161135 896369568 458718383 474813924 865775874 978988653 473581709 708950578 514519303 621330787 176957969 445756372 451951641 810415395 683324666 957585099 349671301 517914178 161815853 718903283 255894379 734224067 355893564 366601543 637126311 904209648 527334460 736784913 365035084 724758759 985278692 992729355 497291121 898518929 980880482 986567642 110459882 614801600 673352829 818233645 999433749 999582108 717245412 886812996 675233113 736771599 416321108 505769324 972738575 994336429 149779292 659902927 666138103 894428302 343290081 491149078 738379621 948454424 502402025 857324540 4529474 280316632 710539827 982921387 359664144 822466214 839135839 895644359 670403639 853419773 903423740 968557825 113185797 750881073 653023723 917227342 379676791 555535526 835700111 887448747 982322682 998149534 995294750 996547867 530070144 886640029 442435029 909996711 176549531 771566986 765630537 918984023 358084323 360143124 422339185 962733622 172379952 305340418 703946792 717940689 417534455 661400258 121133001 363289126 543203719 944783885 976405923 979703361 682119710 883556638 121228120 468730277 844527942 911030641 13074474 244624483 45307276 974457197 291609544 973326265 60876631 349648957 132450824 327895944 759937621 961623290 856902274 895963175 379875868 482785002 152075827 671858679 615100105 783427514 660451973 918022650 899160661 929778422 681681698 854222981 125630456 796931398 865553492 917142585 957385213 973243977 411152252 822521048 553912863 817888713 30577730 441887486 807373976 934160613 733975345 888971040 89582053 407038211 873005481 926788909 848030139 951081744 733363298 970899364 142140287 832101918 718964035 968350270 299512589 730105599 735204964 859759634 11832322 550558208 716097424 879235337 7903875 475202740 996502463 997841059 559113436 937382336 195329783 293733695 314147953 382998101 87937425 752098724 60299311 122551241 760440627 796903881 559744836 720172673 941824334 977460545 183086783 646971517 430085656 725650611 101638727 620823887 699959252 832023423 554158003 849099887 338493878 791462228 535648928 756404767 97749620 711799426 645838817 838373070 136465644 560674487 365953314 808715376 147503054 387676801 144657672 963259492 476890880 707195271 440697748 645710726 737434193 960739525 642020321 983527343 695443220 956714890 162947971 475581347 806671848 990130979 286201741 391577558 74996829 243036161 382987230 986587248 871795970 908531610 436014746 974658545 335576525 712051489 235651805 304474315 437819789 774520292 988285880 990994848 150752997 418561799 496744344 665002456 21255645 975720434 776774051 983323726 481453380 841328509 869300484 972160083 835350477 899820957 627576035 658698504 648552535 847581137 609950604 901796873 573636914 628426522 606924311 901359088 503296222 709412276 588785981 816964991 154245214 995994250 53500440 658167326 305386827 706524189 961736421 974904651 700003732 912090935 801229062 983765155 996573571 997997560 903835522 934577239 792204523 920087483 553171423 988242053 567714883 624872904 519396549 755139998 861192267 994766063 582119200 714415391 494714711 752747677 973629613 976203898 129110543 510519291 836079915 964989217 519953883 668040097 450613620 457595264 623191178 775688969 386680335 396214034 154776887 406893993 268832012 957433363 299126810 714330020 886108592 891108803 511695870 534802293 224402305 277959448 383424265 490763368 823188835 931251765 890068879 941041210 230486882 728001533 137583703 319709021 617949974 821315816 990665113 995529593 219703167 473690759 418576961 518662920 477678237 679362329 409066927 742645067 613655832 898365519 634587534 873238580 145166676 922346914 470283571 516249964 627888498 913229375 798238832 942429167 84529272 339474754 917100854 932127251 978444237 985874900 371001434 745360217 925103468 995695923 69354843 385591822 483506527 578282202 517913581 841642662 911134649 988161759 735759614 858868969 178857872 704553311 333402048 695139893 874195921 966941166 455835744 968764989 643095438 652076002 679570939 873477267 99210610 552217352 517950979 730531245 226178250 591945027 146508887 650943274 652638715 709588635 469770624 526364058 437223076 453468248 892600281 962496066 870385565 948948496 873994738 889249691 943933351 965338501 832140841 950066617 269767846 436455115 304978795 791428963 900094496 909862894 648615923 862178944 836475126 983404596 266450972 439160192 808349522 916102249 40133877 885255756 789599487 973929333 185577353 359110236 537035025 576208476 845965745 855869595 230764660 626362178 710214903 966621658 865988326 992597541 48811847 502740419 805408585 979572074 682429960 925221889 761241416 815913445 750388765 934493939 636451484 785602418 986757621 998932445 375230373 554397645 644010467 701964569 67693313 938764531 415471878 596907000 186643273 650661831 293283576 716800600 335730242 474065588 656355631 964430184 861138761 904596158 703573651 975550782 25373819 587570183 388355973 547238906 5869825 944001975 676067424 709464724 467094658 644898637 149055441 545910798 7671003 138426681 449375893 776152069 51236788 293382513 105400392 150522873 771045127 974889717 487142611 615295707 800627112 932735828 323079480 720853574 545740104 684440176 130414010 345260105 444290451 563093462 218278304 448592580 654793997 691338310 43077708 660026799 208893288 219646402 969515282 981553499 119846542 528296581 50222491 142301465 619864822 659801235 351677730 740018140 390045037 560343807 458543495 500761985 429076800 574017981 69898510 313715799 596650849 832204390 278826805 602920155 941855713 995209464 591182795 753539342 767291054 920793531 928456887 984796352 603889161 958023862 208954513 437917821 992045310 993117545 337053407 772885957 545964228 656008319 254072478 483375485 486747218 778771625 68566499 839080847 579021765 750990472 522596427 922488186 221472306 992738883 428121955 789803746 870902041 892267987 323835494 801995988 666965117 707516218 585006387 862432532 475658281 479817069 345243808 909456397 142121618 150706242 847923402 852343178 437302929 465767891 528213996 995385970 796957913 823055691 958626632 991363275 18647396 132621399 333768138 351437021 990554459 994260008 378831068 817953229 208384327 993577860 671636053 969933208 507870878 569376787 386722466 968872917 710243806 980779651 685663925 751900566 237558068 711349203 975593618 985214002 353587723 929550693 251502498 536570612 288838626 679081453 308127615 588562404 581806171 762760884 309615152 926645463 430669534 444504266 547580541 898267990 822183203 830305605 472880392 818553749 87789806 322235649 233153821 671695170 409160602 635878087 469459954 844790811 46636037 516786249 989988519 993737164 469468901 659988152 487088820 986239219 504628264 765050348 714506019 841189715 249846821 512808249 361313899 682837668 662811595 853770960 880826975 939837354 953400564 995612020 557968344 839280750 243179996 258868160 880189823 886701635 622342799 986828759 553007649 856990937 341531994 997410713 863387500 932762383 24235895 479212001 9235987 771722997 143313640 602128643 413878986 597848006 526407217 666487719 187843980 990574093 515113412 825273214 925185057 941049479 95227320 725747542 927754418 976776758 791952952 800733906 872510607 916441177 163795162 199104728 646555773 713846870 584310570 929025678 238334384 565187718 463387216 891201013 134800976 376845232 102677618 308797825 678457752 887511097 634485542 824759704 306220467 854404435 222386995 606529606 407749448 603850433 492854767 573814523 201236480 282287150 240335753 940868475 144611585 392627293 628179629 839448573 810920362 924476381 674357315 864202417 533721653 681075365 474524753 968737017 872252889 921894779 689732075 776892091 668986297 884621627 943403351 993117205 184803494 885679678 36426255 689793542 63676513 690409951 960835093 994167204 748829911 850112344 185538383 980825221 49074250 540384207 329339836 771864728 263580234 615633376 172576559 964209871 117301546 315569654 910416016 994333396 537853399 733792038 436453007 765185595 24185987 766359234 891391636 952278501 698068041 886117067 817764070 998142374 650213459 743730142 552475187 594771032 979444607 988122102 856344675 959184061 228738468 666047354 508932673 944327320 371488670 665520377 370205210 384511211 589390337 698760266 411547265 421267381 770431253 779462857 410920338 580209144 214950226 248601862 840628822 941721635 993565996 995007165 144263589 821556653 701891762 759378970 988448393 990993824 34822896 674854503 96842870 349908196 154132133 904729332 757919575 779221556 492938199 615717606 819348798 978612247 418093766 741462363 425695912 528304445 152006726 693337216 138363551 647814024 593858074 823880635 868837281 957290490 513819361 746299363 464213360 473417586 604410535 738377568 175796875 199769101 676940258 680740517 541234202 666709123 244308668 996122874 304480090 514636487 476814574 531052594 435449583 948614119 5310524 550928120 932496475 989106271 697207275 947498414 27724783 717571831 710193573 856318259 589445644 626251424 498929101 902713935 72609867 939893254 722092893 961416239 706630595 804421479 602145660 791685160 888237014 928073918 994774959 995917226 758671203 786434795 289629787 742558924 492537022 496377619 502471375 767980860 370242600 695635294 373683955 655819334 78130745 404372878 260039711 568013302 609102437 992559114 381064242 406511143 765800153 789052471 86677116 157502442 672173439 893164881 809508078 998361869 723660674 982069427 495960967 558574624 995543282 996339182 642998278 718163710 114322888 265842667 639950619 997181254 520185096 912082010 146020161 559530285 648286427 764318725 764577476 822091531 199392602 688797124 96308439 378010470 929476176 959199711 147190444 939718810 797344541 981524109 333015478 574491948 724651234 848298810 638855265 720600766 216760068 406921762 641650594 694172437 425034938 439519657 218718123 993006450 675331193 687557822 61084478 306485493 579914604 680887206 443928180 702566172 975812350 989699209 523672594 830996017 191426526 673529483 239295021 995358135 584045781 597718388 29726016 890364730 337599275 531464158 266580785 380248722 735936203 981178157 120097950 481338749 399079433 740731273 65806126 434800772 490295051 559374774 1415045 702646818 29345470 544117101 359694395 803997440 743953984 962513601 195300622 842568781 810007928 920995176 680031523 918318190 871253893 917189496 78372112 978571806 336564204 576644014 593677845 940642716 411360709 629796702 925720127 926911985 754215506 978245948 765153598 879184157 132891435 401595016 925946315 933940173 950944195 964516243 436986605 695716737 739538314 881080549 947607632 990747889 692264132 942848358 430420535 487314551 630759361 786010007 715575914 985955925 219331251 316757608 341224050 889782088 259970849 664221626 719704623 795590369 373621807 604363376 774645695 819409590 994477283 995702803 981794872 996622429 599488153 722350739 311402157 337311667 21906656 737580169 716461594 896906268 71877243 500711906 149731435 943292622 991920157 998861902 276600213 574976551 365274956 897754294 982818368 992297323 87677970 344175067 180632707 290738321 137053736 656473537 941549082 954691139 816278626 886409459 300584100 926034202 221762453 997943286 170793699 996335349 230411333 502128449 79855311 924918363 174311509 551507308 135310250 449795745 244223718 487420649 692708274 768605413 207716196 517000496 65737972 659255041 90261883 254098238 994785458 996887188 343181072 853449570 72115664 502101455 739161249 794379867 847613793 897654234 945484552 957623390 53528543 305330157 848406220 936172285 896387620 928306638 525047441 748917094 865240244 984013844 866540664 969796130 175844468 492821965 403888692 765166532 909720959 937359631 880655156 941556854 430332334 720139652 491616630 943406383 998238417 999819916 907031941 951821466 864125736 880809343 136839968 181492174 986529378 998116732 285841769 438302818 262784428 705639429 689658534 703989238 113322941 772029179 757695591 808652279 205550856 686239691 210764911 361934140 978765163 993633481 624047286 808492573 217931790 753789657 698325264 783692795 864714482 976167679 901929827 952883922 260053064 391646128 33721253 174474111 832587169 905652729 542043639 549451264 51205471 769818224 446086588 490537442 17741551 882138344 784428478 893321654 758979800 984788771 412665172 785469132 444653176 768560641 712169113 946622171 32966490 411067513 490101500 897266368 279929483 898233561 915768390 997667074 501397255 746075069 371496987 377484775 392133436 904770782 693637035 826549896 628163282 654920183 324450655 757392374 628078356 920261306 291399829 555655990 476718639 873695128 29394010 325370013 940295687 982992408 398966455 747025389 154628276 686284570 209297280 894340727 975435066 984251495 244349436 988030324 378991618 673229385 69317013 585161406 167297657 562299338 2547715 693018619 413666379 880558168 670469357 890703396 444454153 627754348 501346678 805544698 424914588 693953803 997669118 999974188 292294250 860286266 10232636 300485939 830707084 969966539 791245284 921434842 963399364 970800497 883572251 936777544 997934660 998735139 163298802 198101957 965619919 996205012 906208072 960269597 408071902 652450927 665350783 893198203 100495880 597778936 89035888 412459025 91902024 117861185 741810204 907425145 389048061 454387580 141876 62680788 307456038 935462977 548522986 787254476 721654950 794431377 88771048 483803323 393510017 899170295 411010306 859332427 632092576 921470791 196747911 553118591 958838969 959412585 363409228 998071655 254383760 612834894 247481856 329747020 462344305 733896096 183409510 219840535 381019970 954567501 962176715 996803607 149152584 481501203 575887945 935133024 554733981 952889903 698607940 744078441 970441209 986750879 179712842 560216408 356665959 626549847 387937230 933887638 562196632 652457386 494611656 886911977 698241352 766924791 817544108 890794259 704986345 926113546 668795581 847652839 183979607 420954963 683483710 736752248 674407896 973129195 456354994 894953189 193529688 285751374 21943439 694062747 778082194 987863720 397206421 661515557 167033978 741696570 233970147 617939294 138079730 556599539 923637315 971370831 355256505 721815950 324223674 903683308 391245827 728776967 156825654 451887686 588489806 978838062 640442779 944581730 634747664 764125213 333499252 366463353 841742961 898939783 976349669 992169876 505193166 914698759 783535768 827028012 635336015 915189360 294779685 414470699 326515682 920657423 293546767 857474570 952020459 989128036 591497037 957241031 686287079 748216070 849705801 974724319 437138378 830057133 813661082 953539857 244042901 721402716 234832425 388081371 691048219 953042562 356057348 526721926 164254302 888895209 721153793 898635591 12737173 964371246 939053102 996256666 331916617 338455354 586937389 693980133 914827074 992368867 229716725 955341913 720383489 829693257 396097909 692783423 626204511 995332556 755628270 797509897 162822352 301480058 540829927 712099464 759965491 811010966 368856467 985039360 880396387 931780097 618083637 877808326 361183298 371457776 280455637 634528487 42093015 683879886 603383670 920680786 679332427 708808029 451275246 829625022 361870000 903071719 379455499 546404544 706364787 738573617 667527092 742964787 305235826 515801113 626569965 629766185 785468504 995915163 1079376 999008160 944429630 991590840 358902461 941072184 197322346 525472793 449104256 459730648 125280588 867190807 998031515 999457705 246787919 559063817 153525279 951106144 48291419 56503664 398838188 853937741 652713155 983987095 789613987 807181044 95526211 622498521 132286620 698932187 445108166 630368611 205188186 630919089 512326948 754912638 835937917 861211407 981926150 981993357 702506532 718715971 483613938 960478641 38502050 713378511 139992934 775027562 754735247 981974803 129366132 245318664 471345258 895209277 562230854 644532312 299127185 840163719 614852559 821786175 551628719 569373068 594774883 922160360 111320525 967321139 661123196 718805988 660015096 952699942 881758598 909513549 835725616 926858710 644620750 932082768 771270478 931923369 843802807 961268478 946361973 980725043 348809362 903684855 377707843 424074457 625026776 662465365 579146204 630914394 628840981 642657107 270991650 359692005 172699911 766439338 723148886 977730421 772326328 935137209 803801477 946554607 11155144 860935477 75660845 330755418 142421801 749145899 194747268 508877944 449493986 678312437 910185872 993353866 783834243 897438489 501700935 735391262 82340074 732321185 280095645 782482153 74899009 186928343 163619602 602399099 778500742 879823283 162151413 809994945 9208709 214394215 700646264 812529831 326397500 852837905 932146009 937275030 276508544 744525834 478815025 533377671 463838525 470015142 873448083 999213699 706629708 973864474 116795071 289920134 963878681 976377374 982672284 990058059 771347640 870408322 377709499 514620643 491726909 837767538 461414928 633249515 762911808 889686651 214942985 821525136 1065641 778505581 518713186 576420786 401960880 934105407 708030271 924724151 828058107 954159375 143064199 686253028 350552742 459227441 614173527 730496001 396876878 408618490 90439824 715901024 882706497 947593136 519276615 849034699 362231057 992251023 961604992 962921918 12796408 509541697 940071436 948054556 151770052 442503950 512106289 572994324 404542619 752755382 951550440 995776356 215510833 938047030 554176316 695293780 31250573 508764741 803834498 965784915 346137140 937715047 582739773 744841586 113879413 224496660 489784152 547315897 22410886 443266550 895665727 974011848 390933182 962368020 794476854 925594978 803241600 892993249 793267695 912696038 753724194 844394176 462558654 938732686 941421680 971634254 372212960 869647761 445106312 901088793 827641458 956225687 651642443 967335891 923395422 967196878 910266117 991842486 57775677 479192710 72862681 671505429 712623105 916902243 479355179 509363738 193185180 303498985 773573482 885786181 576046111 694227981 672401 507116330 290142419 506506677 981377528 997715374 231512640 999504273 636156284 996342245 547271035 590533876 373456258 431752782 575809936 683810198 319606855 647422282 198269316 854204139 996710931 997865605 965861668 989991819 232441065 990071285 779207009 807791245 288272951 870816331 857449504 868489128 492063290 675946584 566624512 686642576 972912257 976390463 753240064 959345926 993879751 999829870 296659499 656957791 986844727 990133391 41178513 654480268 417139148 655787932 925237755 938667632 676769497 963116860 39563513 188658667 855031272 857941254 600589873 770099524 952112861 953615691 813327547 963047195 880247061 914040762 421863081 648013931 545367562 781448651 677030422 876785715 342900138 847922569 441828042 987220191 904201856 945158689 963133305 974318367 364252190 697995255 528094726 720223985 574954746 866122949 200971695 753190480 860667429 952612288 136083773 567002084 428997621 572038212 18834735 289542785 996620102 999008002 949402734 963153637 151523988 763020134 578155346 967198239 171961339 790498018 674582151 895424345 614935168 783595904 679705366 680328078 222795680 316522319 649528207 804557630 227125150 909909904 311114343 908990988 857215065 863830477 982584682 990589680 33193818 583490026 502385583 850164241 387465417 925202175 410165733 716548280 716777982 995085821 780614064 790513859 244655272 812958596 258611469 945264448 272715565 821659062 357642975 972740171 622842805 744437904 205197917 958411021 266531865 999965411 529087332 829821122 221282708 653124931 901360854 974575348 395869468 505954804 29636727 505033811 643148099 977227444 609943435 760271178 210638409 823852628 647025437 989441062 898596028 947563432 830016719 921887516 585303996 910660982 520666718 708082774 779459156 811305512 839978399 987817893 977514005 983522109 679656800 938362965 223497208 876945254 464791024 950061998 445125685 973819126 616600571 962180480 153969017 849888922 328441696 433771659 32622186 815752159 125243332 287287562 646444895 885159979 731262050 817802030 657903241 658374341 903833997 956670697 609820932 916854841 891038190 933534857 237168258 986304152 607382828 691295170 175064266 220579324 124333059 765602461 206390207 256275207 329566084 431428912 436442744 599403938 547207850 940741947 970968658 971653359 666457505 672997519 802345002 848677514 524747653 850387801 764592478 992917620 637969142 850850396 875176681 888196253 284713556 398674864 372681357 673685226 546117674 791229636 941836867 993878718 44088825 403705877 319640807 683190229 874516089 994574147 549763264 632566466 57919152 684408247 654211949 709310744 586222817 928416083 704584168 819481190 860666920 870698621 744872453 950317513 643426379 991968738 2723206 425943445 632420234 932311885 898305071 979416459 544947410 725537523 723896925 874917936 148697806 822650886 594404699 733648179 161026290 811638694 596671281 790663055 738068282 756729362 879463901 976236614 335376657 773707185 805748120 872623466 602971954 788534393 638629902 871895510 38069434 675517566 792760544 828560440 440502270 826714818 110688103 386461715 937115593 977861766 888272848 985030580 855331098 927784776 396926511 869807742 503413783 617426399 379937783 869909700 135794938 707110956 281691119 427070925 111420392 896625245 958616216 996011000 15200516 530684698 321350762 524202647 92113729 683985731 631087318 652571164 153984398 274271471 494804425 823319938 437483374 802477871 944114465 961334241 443415112 655095161 794165776 816050766 534397295 845004733 965421655 977617478 904732336 910947010 197193507 255001597 44867604 371222804 902169092 962456038 421267537 690878783 831980544 922951223 749300124 778068859 629386198 987083755 511654836 749450489 299686725 462104994 229220120 481361720 151974310 537487750 19079111 544416515 205173107 281989813 867317351 871187586 418779241 797908891 255815693 865041500 904898872 908676735 771867374 980226882 238715529 423568880 554803024 806042707 209737844 537034988 401112839 855377945 287153942 744245975 166170929 311479131 239570915 245416980 996874953 999070693 883804890 952234394 856051634 892365017 612979207 797500523 168539306 487261866 924082489 994792967 354373377 769523599 877612766 908799862 175393678 245046411 807737580 965582984 535180299 729553899 774090036 988836233 408634182 809026705 837841898 849044060 532968702 724965620 694961185 920102390 309799736 958992246 123536967 512321730 508627692 919749199 999608497 999804829 45857142 834200333 189180657 630073471 592562656 719376833 767041196 996963352 251141559 601166614 660182286 754716093 195896604 254276995 204729900 337695038 890034480 905560993 156790524 789053330 731324035 776051722 900181006 919035844 486028584 604567234 51168061 86582268 927395463 980972690 382665407 437189018 665009068 783916829 471289389 726262484 953713194 999486192 113378742 390117961 194902243 819990263 924197402 951907511 427046718 628440017 868605158 947071306 943452773 954163696 180486589 816150037 471852996 667445257 968426596 995343172 583178502 816972383 490864201 877245430 228882716 738812767 5499367 735966092 275994262 377824929 708633029 987884154 675228521 753788023 659644098 690511231 62315951 727394425 604176356 865053216 310901268 581906017 836151641 943536792 562900799 978266351 466670060 534291332 22873587 713096266 523150295 774709747 758749268 890751972 72206745 492652722 234560661 600369432 134087006 874484919 811657313 936881200 450485228 863611863 910227697 964730134 351323084 795997963 878200330 930775285 629116222 678007966 411238846 679575814 72455762 768123732 574753550 628915723 136105550 424652095 121356618 616438255 405627670 530425645 312918115 884471300 627425717 971022610 436494473 733618959 954227206 996562654 753093569 838350989 891160266 941177923 125861863 663294470 271709220 700982721 209008243 615835184 936468912 991247280 438746761 654243615 846839117 992763353 325282902 582041571 729580146 734373868 387010930 776463164 737563264 897884156 529814484 590428724 241914662 399617281 702948503 998385316 189334318 518519555 526552618 923354932 641362486 934186749 183141733 509406368 541694441 657572490 896266517 898815052 440444535 868920587 502717682 978852535 697247741 975159961 961350852 996584068 587019213 730651391 778809112 783754953 730978901 941874857 229867102 736130922 342053132 971720049 486965869 851303862 355299656 647054180 871998311 954464491 962074018 978232088 687026514 955384188 323324449 902855809 370345181 883706690 525602998 759703982 711358460 763828962 25097707 175074718 145155818 298854077 353036668 813574845 745778267 995210728 19430303 858797672 697403324 917583157 807750906 973712235 775407544 838050000 169299299 772646677 90499245 182791569 364335934 714715235 163581060 740445424 522405770 969902668 385820157 948950345 666507042 928391097 355064385 940399944 336330634 983451448 263535156 923186887 263683634 625037554 977576963 985168992 762211174 839298382 640748402 691021606 455812617 553670301 480288985 520453462 500168109 989334696 750183791 917591415 353578431 395793973 357308712 646266482 35297827 389468555 745724598 968632159 535015945 746038252 874818546 970990613 557126582 604158722 306031066 339144136 715724571 847915010 903310724 911800517 483335354 782018487 655941034 930886009 235121371 695043355 487663606 957536030 157466872 567515042 933269618 995445036 29531099 915984993 321911615 379331774 752586134 906569516 324132839 811065610 827598016 966468393 431470981 519102516 10992090 816052095 426022000 528682754 17585460 660929463 929559135 967742552 164562593 752393846 527596937 639561243 698202578 866665027 477115781 800283857 520652038 582546591 99330097 764919918 910722059 957942369 113010648 454055271 556228472 705446469 967796821 991145173 526194367 736023429 584755449 683528414 234866796 867637157 476841219 549672061 801259783 842446930 936039737 961794842 783727934 985260000 203043814 934625883 973251036 973712282 575424112 608322650 453899346 599770047 905984453 999007416 277471172 567887645 892424298 923365238 565498818 859613110 389127547 517022970 61475744 476463722 413823675 740159798 631201604 653153896 327358043 426296390 662031155 736387753 491760910 555923282 186735586 195887839 950258333 981635416 562270059 758055983 911935892 968084740 452715959 493099378 844600818 874567055 854529339 991352133 906173675 968621655 953607647 977696342 755163030 763272507 442516971 528762221 954497017 998548163 153504625 869433122 355629403 657951367 919836013 990857435 797660043 859416764 795320814 981524443 507283367 672310561 677684310 778274807 591623890 642717273 133059119 705538360 863829733 943811113 456701647 697889590 547930097 962270534 978601906 987614775 913192154 965111362 283297318 434107258 581596459 716520467 893609082 927319659 793735261 887831934 488510096 758378650 845006951 857872293 318180759 719991264 74665691 997227206 418896042 899164794 371327369 946268242 487870620 937960976 230124728 390130495 806652193 953444695 784989290 882408949 213959231 440516797 957478164 982871759 183280642 768982582 80155996 102312167 37964891 515462336 520559215 708145999 231605412 521408489 283729081 739003799 744165948 829492765 709994821 946233410 385086968 510172600 613288015 827961386 158948219 394790612 424126997 841143865 921948585 963646859 348492567 456596265 138079274 496350017 100510176 874427476 643544525 819794833 70993700 852714050 355744662 399981965 165696881 464446233 812311211 889436161 63005417 151715029 884886134 946812785 53391235 841123943 108109884 532991497 567033018 657500699 907056850 930503115 137562429 742921651 401394149 953931731 265891525 464728861 434300309 444413935 113546265 710874690 169440704 431307303 555826907 944823183 718031311 870515156 459887446 986979058 155045626 536699075 3096775 657429838 396371133 533470307 265811581 949145809 110935262 696412373 841717389 952587499 613113362 736098891 439026809 845443817 665915250 826459834 375116849 962873228 850449512 972608038 390934834 767456796 386805771 997924315 564784622 763179153 299823420 530178338 989188453 989780562 275145560 558253233 201153035 543539283 145474740 483710171 301469532 528145812 955623746 974902475 914796486 932451243 939021431 996167786 600886369 808182116 349977885 872306921 490257633 912966537 981283733 990372883 261556109 822793252 927997537 955770092 748368253 886351809 166936421 570404859 8901119 260164820 748197920 981903618 301494219 513590207 302495412 828215314 120020835 360005826 560856604 809379192 192147954 449784375 615115157 966282139 635291226 637429125 67289233 800574074 133128246 144505836 791638557 922647451 299486797 395045779 266261887 800386483 532047758 939722577 590313603 678364026 536811705 743332550 74022321 244067657 3148887 293452471 506464569 695227451 950757810 960047075 759972090 932268410 627738231 879447939 356370312 892817681 479916437 613014776 362660130 945283558 497155895 752576803 599156696 959814474 122336169 954583122 11142894 317199206 649553831 846396797 423000179 658694122 192604223 446227744 161101784 773570203 15689014 975147630 813877112 844262976 12627634 552483328 797193155 797262936 522717280 855941469 40589603 97422179 835803713 947497634 933643992 970738616 73500776 433051309 437509851 613520852 267226967 454927766 582357850 881897611 517207153 585642714 448664763 927652794 436731659 972496170 563498494 831407829 316579864 986053857 221062415 658339143 621890876 747728802 303636213 903812496 287976956 781987246 636785755 641741622 53501155 290596962 880612417 955926481 447338686 766387790 589744134 992554671 94269539 232433555 495971347 788310884 534983769 746222307 522885001 871260892 105678804 956506844 114035718 606885391 37551851 528822185 288237189 751239349 314711448 707913522 995513765 996038688 745217997 838525016 545256935 927462983 447526190 547088050 548561135 956658367 939584862 950006608 993206993 993268830 688988755 781986627 799709002 858472950 99959430 218030314 665550351 955148382 344310169 850244178 522335237 975157371 406325832 530282734 22474897 64069338 434613351 656183430 20194098 21760422 679893982 962416623 538242383 612903531 356668756 685861238 285129491 354625073 129313704 363723024 980101099 997397778 405415049 721501676 882575211 946974578 803091508 917226278 247717672 642056495 383867016 671786637 31438402 275585251 460902215 471550883 694628588 937871601 784345244 904589105 848407232 980723415 784865314 811207738 256812951 707278516 427344441 461978224 954181653 983859968 90402881 630366946 504157644 751236296 841280635 875969671 523363770 809963290 160429390 582058477 396413891 761873827 754597639 876311461 392443694 450377521 452205704 564130578 552328380 898726704 426819884 560608085 974721793 993204758 634699410 857258032 691563003 766719907 968745552 991462940 85557718 626263360 988927706 999121540 33984827 288598772 365514935 714142162 27789201 89938950 792436882 920737505 503281511 960026881 403804364 446111786 288561584 544874242 219766581 516982099 526126017 660614014 635419364 947550258 206118629 312749945 13497856 385358829 60090505 451786724 249028827 481204039 985665965 986694086 639578540 707434517 693462535 856630629 673712777 830431951 320545771 435266158 33635120 961556197 807106196 894648709 218913977 945871568 115200218 525419604 61906927 175400443 473866078 815024903 609374374 673990148 236964073 652988548 37513047 827321892 842280891 930761886 690816976 839746690 178515033 312031210 130545008 373097495 586202509 839944111 253930424 670509362 456943946 811327678 667376480 807013029 396228569 570283283 15316935 457507921 411146101 846000829 425706 752830111 491457697 606110119 854223118 968046203 752509366 835688438 828599341 995977684 506398679 802684287 278021646 378227650 945421946 948966824 461414724 945221350 92288413 658932695 271178824 804321787 686980359 937945225 847687710 876120854 173659008 865800685 953973836 958181035 131672123 771647626 477956487 624042254 12159918 466621750 445230541 787821195 552807657 584248012 342181228 403473957 963798690 996407063 880019158 923328611 561298808 938434963 189925135 756178763 490509743 629650001 340731275 931138087 956978125 993696935 940303449 962913422 119964276 186343438 346212637 518712053 724264090 984441455 961082580 963865109 644605270 804482801 993124866 998004441 351566099 892801761 734207399 750679857 731249776 930016087 460096495 962752686 514410829 867405949 65522941 184689180 489760979 928047334 333342848 938338262 995618683 996737507 114010822 221394361 63226174 773411830 308506706 818475203 630426576 806701437 518559035 922023678 983250838 986620891 667518291 830375071 688850906 996211292 806912469 854282572 309669576 913612489 387658938 437418860 514703717 922128186 639047549 874642637 373715291 388657893 725010083 878672210 882148135 907854424 378957181 792581501 62430444 151419280 291239003 315154572 469103959 679105271 727977126 889943634 849465082 958082443 789823661 869246438 307143837 946611022 693022519 983476850 712945582 859838305 839500802 917350234 917167378 986391143 790595757 826400044 541428468 805012235 574842096 853956480 682788713 800064840 462618684 852821366 484768041 759310406 433016504 752181182 989276148 989832210 346059574 703219522 960319442 988294850 439526516 811238766 686104437 789824722 159002853 936241346 599227657 650747727 30009430 289864568 147135276 458884675 156238931 281297897 562540086 854787852 395654988 562264538 385132181 397611175 693886960 812295495 421272121 607756027 111032354 709359031 86250566 161397041 816342356 999187409 267020967 734304805 255341129 569285545 675542850 793615454 186325476 712156951 578990088 836616903 944644153 959496162 310305989 366308086 510733762 910250313 700070291 740402012 123466678 678549516 966765034 979851856 685538809 930121253 441904106 458041841 295298410 626128992 949646503 977144405 940156271 972636261 919876940 933861501 868350390 997437805 79910601 308447328 204337255 928723356 302517685 510215061 171396620 598496159 25174597 121898087 725664943 787292541 409067969 701877650 310531818 751188024 727082940 760849920 6826273 115793837 789932147 953968110 669482616 711813319 692401646 810891957 798905443 871816929 448954729 747765608 398429221 965120987 939082425 969087663 207216429 550083259 355151348 854561545 121709261 201400819 539065766 662337971 652599357 842744206 341775576 825378950 830680544 914362335 169849111 285634618 762923398 807418384 305262714 496437023 404359187 578714917 343857945 864128237 84627075 420408109 848496306 957298806 425598267 882221980 987891426 992665474 899111081 923687506 313180276 326001211 986392994 995361045 704918099 925748959 727926700 789736694 654472255 790242150 582031487 658231771 360508124 372299612 35390284 613134708 740280939 772044361 151327025 195004366 734661714 771326566 991037647 994799307 272673349 891370310 572038152 857516341 496815037 763192923 12421939 821367234 571703750 845283930 586834993 643560172 61194659 614509697 157770141 211383778 370793165 470983739 157369721 868951921 391007806 695965198 355253667 891903834 565000647 924850590 123915331 296413267 299474375 932423550 172807337 700333582 733975692 769166495 561752771 838570687 846367956 876189029 714384840 863262299 782053949 811624407 155990380 668002578 969657722 987938638 14789629 712652572 381923394 522484826 972322360 998492521 557441504 789903152 528918960 675085465 283426003 478022379 392622549 537084524 798833727 932118146 219120330 837753820 391407588 405699443 337401001 595315261 581615179 781083577 695089811 811679951 110665998 122533244 664164613 824582155 483204906 503849328 567514823 587415284 802971993 913281459 216352792 233280147 55197677 158958207 983219027 989767378 32961011 853330873 608923881 623308084 225918196 972899447 944949893 956084829 269514112 587044640 357311183 457124101 708419161 719828302 398966495 408565025 525253570 687875514 53206803 663023509 355704789 811124511 672066048 786788254 231910232 831901931 563454970 646153469 170640988 476421649 706021678 881131653 356347931 615176097 653023925 946068814 872979207 975369058 633164096 673210978 709477858 787294060 931448382 977665709 723054559 884353674 196197514 341557223 898352597 986791211 716101209 792453244 241622779 627900169 599456584 619672321 146461922 525424299 164194236 880264236 451181934 778567084 201392674 500755793 611666754 699192194 92194468 730806454 672744670 721064167 919034095 966527891 483949163 697485137 225902422 361115994 939806897 981416248 942132046 971996449 274674507 368327265 618070313 750565341 60803844 560098362 458394666 701305541 279295941 950829060 162726908 358528775 303258639 519553812 798507449 812041895 764802981 893092949 312103197 626758570 439414723 816889343 206484907 512699968 28523475 458237237 217693852 969650375 292600723 901000452 492127792 932398339 247551892 361787758 606357194 874116329 30132292 167990972 103762482 250670371 257418440 502964531 333966326 625644519 913139149 930897582 964620230 983448158 435014781 866701891 95325476 867123663 245563316 318812772 667389932 876514123 689774503 944012167 709556457 801173782 33050632 556108270 211199413 837944482 275734459 797512851 828571452 852845273 272236596 376742140 557641666 981203186 450197395 756302027 577064971 703171082 159854486 574985166 826481821 842172896 1137791 497605029 468823511 855206260 93776491 765218957 339456487 512852678 34987445 592987806 862975299 945226088 253755181 685855704 985289640 993469167 384766487 638579685 110878979 339183073 628911392 694479479 18569856 268931181 340101332 716130244 24856421 509848444 715633420 723811302 288392417 838833725 656585581 934572834 170405594 852717215 764135943 903249724 748219998 807992389 149774082 707238778 375562112 420600195 705554545 844632918 685793223 846271167 104710058 243852710 573227408 604742875 355918876 703606817 908364022 955254857 449219409 631361638 992099218 994756727 130105571 181433446 178101980 875311900 701531728 969830203 901295440 942197095 315699384 492823809 323655325 482460546 491283020 637835612 597488063 804137020 838920510 850960537 119849712 764821479 269395770 481885679 832960233 970765362 733238702 824723739 513983069 965920239 579203084 592161960 83030341 503754933 601682387 741944219 174201538 780879006 388660854 830385940 34744278 211859499 95746450 920485599 164405582 942492884 562805460 960284061 350029134 536329108 779954469 968171541 138511997 507543181 931100406 967929849 156785193 664135243 225766543 434969330 865643565 990167310 44201744 435242227 805227081 842139713 776914215 983441513 928708086 957364992 659533454 687173478 32156764 495562702 644623971 728868130 320685064 971485122 2624374 707171082 283512547 986619325 6099152 903326277 413676759 798722850 365846645 981511855 679475550 783545162 307184287 845339292 38084434 294244595 451437333 493366721 73731051 366371556 858776208 952493314 237634226 557669896 186980090 208859185 71714378 541813013 165924235 556127434 604050431 850721052 324270977 911658149 763874442 872750377 228905062 535550246 319670878 951809573 190936652 401421228 563561210 893711606 112097567 172146330 885646844 991402841 78797793 613920777 422960974 910171656 116581810 598924150 936135853 990739086 841904144 907585616 146706842 832621729 187932561 587893759 803886915 848533218 979062599 996219279 693651001 742918200 88446989 804330838 341138646 402303448 548754480 895387691 395461340 574913763 866020571 988089262 642095810 794981543 748939168 828867632 19642621 982506737 765978608 976587585 882169029 984739047 923906565 968579428 815517420 978585006 187653646 233871178 56331599 579563334 857648407 963982748 778878755 782204285 788521712 839824391 584647597 856367026 385434830 880547079 913476744 957871423 5559155 456387547 497659650 696379455 755024420 989770556 791618145 899470784 320398986 458418869 333682610 996298060 439519481 708321363 56888843 340883021 54453154 429663172 476354334 815672860 285534998 425982289 102235480 565933878 428061179 836933640 499485106 951961994 832071435 933008372 170010385 346857816 724248280 856297416 477682285 508194197 659346841 958652473 949093254 964717271 30941082 971443608 944007536 994568774 994305381 998364709 2470888 885964820 273485957 438162263 233420714 345745808 540126612 874630197 801601631 929058395 232793634 460201894 708410437 864752226 929919557 975589544 529790248 981509645 619761727 933937921 45562613 875585288 595797377 842652881 149928413 772013621 602632528 954680249 703171338 930937954 792829275 974000564 600681804 985622915 729822575 909507676 603694931 967238029 771156447 951454272 296016472 798526220 816600084 830109015 928286104 960094448 279369815 530924311 234739636 440620011 995489198 999164014 772691967 954965769 195311194 499672570 185554598 697347028 228028857 777833842 951793623 998247860 508235164 676596396 796543166 813027239 711511256 757288551 967991470 997635858 693208292 969685842 486719432 784229420 203236526 488220793 399747097 457190448 257672629 798442912 108149864 439154693 682834591 724131429 211197789 859296062 902407743 981451247 130076046 394891028 823042710 958412908 60719399 666213810 842042511 982012679 450482946 802422225 197166990 552202521 771725878 886088115 177524844 861491049 946546777 974742636 703647643 737991219 971534202 973050251 724524860 830855608 931161261 933647817 726596920 963072521 384028602 769994260 478986975 776392687 497753100 596455193 157320058 784386884 763523581 847164788 331543362 975826356 622010805 820073662 818255178 869479017 93408540 452613766 424523384 816346766 244973084 262699203 67080427 703321232 747627351 963865888 203774640 835619433 895316334 902836935 528207068 640602241 76308880 389566915 4335069 779640271 487542657 812802613 592607706 936233387 647319892 998483704 378458457 505537908 715762150 808913025 904670738 956118066 926408777 966471150 647448117 679367995 403084235 552128667 742534860 976988641 617829299 871360187 198070299 525939766 924612205 976422361 747148903 798954622 411056111 688283294 223728148 933962995 991909007 992251866 300651568 432437847 831845190 922011087 777756186 940583397 594402771 603621513 515811116 807208707 792844121 902383045 367629598 766638182 543270200 648375081 454730065 859162730 759108200 798407180 58744634 591882738 692357758 994110672 772876473 908285710 464515057 866507383 872858861 969335531 191080448 211785472 622709631 950301065 758065338 766893704 419697605 897253694 656663556 838013203 111936663 663028037 853205534 873092417 972043021 975046093 112444188 559707460 432509269 698630968 84275708 976444292 157161673 610890476 180546883 436696307 438197610 479731742 346162851 995096444 754493002 860865678 825036186 994479700 83863626 566853588 236913285 458919210 529646300 937025944 562771451 867340303 800339897 944411258 99040990 940604926 631154087 984518006 378761357 683485168 32964500 221364112 293619588 417617760 452892701 788703221 412198329 643170757 718522617 940236989 771087533 890122560 546406900 734203595 588725217 986148210 850819240 908407533 46578986 391441710 528242965 623128398 73713556 446276947 808395773 866791569 927597295 971038988 229124126 825226567 799482174 875687399 245514228 485361349 127797997 170717089 857977780 996878052 529856826 532316019 148970571 993119555 392465614 699384293 517577373 984603490 863400659 945517524 901453620 973701806 495656309 880085006 555712346 767836985 160603010 247660463 173463129 853332458 818372451 852522054 40356525 597163102 169117958 183933474 113856060 225432440 661127128 906616956 176804013 252048474 559570144 595954955 615023226 773142549 104559694 274909298 847219847 986063549 634939190 924164124 939696977 980323727 863183773 894704292 347147001 590347985 108347568 254967012 620784185 990447131 879859186 945919435 808078586 913204555 739535734 989881217 683751464 773050833 173931751 466212129 952205944 959613432 293587865 873170678 761881414 764817820 105414659 940553064 778212479 932425469 386021278 387137307 167132396 900713100 980204629 986748380 354974992 824433278 870021484 924482373 324641588 532642194 842287783 847463222 950341483 990070991 15627048 315924150 376289935 687863836 210325641 729959330 969006474 971541033 964675388 966881917 700944648 895310234 907685727 911019296 198389513 819654305 912125306 914449640 974649605 981637374 976609699 986249369 884813666 922223229 850733068 866102888 176495394 544829131 192909829 866574293 118677118 736404894 993487895 998161477 647658709 764378237 761596160 997741550 988198991 991989195 964415192 969473833 783774074 926859107 277257903 824533438 418558867 808389421 747422932 791423291 159562329 991992708 545454425 752638065 531860813 688065820 821092402 842408315 484551654 832347281 40298857 604196948 705548757 779483726 969572316 987112244 553055057 727072589 453770806 747182578 297876404 885294359 290367318 393093020 336298110 404872195 528364092 568825160 807918261 818250387 705175774 746635756 127435675 444579891 773419442 929244909 257512409 839042359 169796617 931240727 367014822 906783916 678402676 974239057 442608849 963838715 346858682 453266448 288690612 646332055 857271209 902789212 96022395 254623255 181032429 495151504 404915204 696411726 238649934 950510083 954549578 955945500 851077862 932943983 642835964 718258581 905644862 949927002 828069796 888712075 566424278 727234862 414792393 481797867 239490961 530604180 906298781 937704877 58855159 509684272 484589123 545072951 633923525 978351135 907038433 994260102 134166016 645863531 750339379 992168908 814260031 872266727 241443370 698064736 116582147 140699821 112686777 548006106 443785111 493049898 368806425 742944595 121981315 689941253 951522110 962240984 735763487 854372412 160621987 915188075 299250000 979576671 23748240 556827294 35081656 204875174 666596600 896172393 977063514 987953089 265052518 942102776 700745233 836525592 958019152 997351060 821456415 920761616 545050555 642060267 41629668 354345317 934738945 973004070 803380114 806950479 771468018 868404624 123900276 302905289 472477213 981625515 893569307 958899923 399693548 717682147 296557722 510682415 993213578 996467973 665903138 859746190 728044896 865885494 355977786 833279419 490846613 608753321 581567607 994143479 63350898 614689249 652891730 935400525 615746989 832900372 741114446 747591517 939571472 951690415 21400009 231334942 346857334 808529732 269015433 935959178 265782567 869423638 144378608 910720651 562728173 912964416 577871564 711668012 201801581 410512179 473977730 842920100 355875256 923501232 348958895 562535810 624944218 930704882 173912694 995957602 295726251 508692769 119691194 685385799 646874140 895498628 848592664 910559869 958021455 988052375 915664240 919963579 968037592 972456386 956717783 967304554 523112525 756044366 568958364 683350683 925670275 945398583 751351373 879028746 121708972 441316752 267597250 349033373 53639094 713850975 903400492 923230223 521891306 642652840 699691083 781345802 551941682 672276990 186899510 779312978 120654975 464934563 62581246 861865150 306466089 895794676 686821146 907594909 744959373 834274466 983102693 999913822 678026151 899372590 86909142 260572124 174213518 569951376 50056799 838623554 618914579 630081578 136672044 770262131 974366462 979159384 284067854 415056387 41916094 883756622 26334586 980494057 442264724 688248578 373506863 587437881 921351741 964311866 325508293 534370617 319302646 441958523 925048362 942730775 188179941 331200167 988298694 994601943 275934871 945940805 367174158 918822152 242468713 300163608 889563595 996858180 984004379 994890513 1766488 940627207 85083184 762984360 460112212 589006963 502875974 552795966 410902390 881963906 923080159 928165409 262035139 988454244 308577292 404270732 238343861 462831581 92104556 346522090 155464269 225178175 412229178 566375733 985277819 987318066 102777175 118469375 112583521 831966424 976814728 996880016 31509907 831976992 725466755 742463169 348928520 572462504 378526722 688020890 792013828 933677851 232602003 504765738 122026352 425059436 599970390 797380046 851435661 964137989 515232445 870690118 588226129 786620902 21508587 480528552 903882473 917713409 306619358 430389161 337163470 850789046 25399255 884004154 993646622 998020153 825116921 877843092 709632601 730156144 35442745 118186348 628038276 800874427 143308382 836122720 280890741 720443398 975946353 981089542 381757015 893137965 954320382 956616485 730673437 829030480 677265259 954022673 789587690 863864706 279774014 539580599 68157592 166460556 741095526 946189042 901249025 954354339 904949026 908693026 775656034 781186570 318792001 368780038 187278924 739583928 476662453 484862378 281323001 834748833 650150506 712977453 579621847 835389966 9195701 471939286 865862898 920374554 568431856 617909307 525974544 964968715 419147887 834387304 69857565 667976229 231678458 513536456 982678750 998956620 418706584 890808210 747763859 988643712 848896879 982804755 482298945 549204011 622263544 666254051 808179562 861362377 306928677 731088415 688579721 940532649 748439761 839859191 907195071 939394437 371592219 959512557 843180178 872299901 393850606 409771153 77569394 910198515 427701200 970584068 915742626 999855968 115138028 322159112 530258722 984557075 159911590 507999895 410811251 540705555 612427113 770255612 674161984 924236929 32209360 720774288 296190725 486160302 348996936 638289723 582881304 781250234 425129689 653274836 599540638 684129806 784205528 887996260 75989929 724162103 208689217 582575809 477025302 995416332 523983409 667011746 499177414 906555810 68293281 795662107 233844824 865194248 123527745 607099250 994387677 995599526 174358599 243900931 569682830 907752325 55950876 389802821 119654547 267575338 104424372 381307413 455821513 550050662 802210330 915920237 860556964 936802903 419709109 891448597 957378721 975174756 756141287 913038615 238411821 328783507 121462612 812811714 222818479 810597875 189056933 567085566 842021658 853408463 212050842 445666411 464474090 654999132 725015520 964551841 765667897 776699796 572670433 608898172 61507773 187775832 153787141 726731870 30331624 771380696 87394114 770126511 85592736 395095700 725369038 814514110 221570007 691711429 296427722 829536728 944540770 982687876 158829580 429262058 793789853 916357793 783662191 847784235 159329839 600442814 571750210 779266436 630550363 868557781 306138857 932543183 755605797 949866998 560582669 637792891 999189220 999269257 342547306 914123801 43004046 687025412 28752768 470715515 869037738 987709684 531387670 533976452 594418005 927186267 117998171 122571677 530007941 956165035 363578842 787263095 840877948 968376126 223150546 968247574 960378860 995613799 768187116 914148649 185222702 386831019 42264736 673596902 84693419 764425146 65105730 487364304 592611889 876080667 651127929 890957557 871726645 952192898 937686054 958353255 710961190 923530337 42472727 682280865 410435236 683887081 588390775 996149363 186200075 648656021 202483628 228239841 577202873 895368713 85503388 798562931 326373331 423091483 796602266 858112255 434274934 939936910 833650333 934105544 231987577 783783080 132195667 539571959 948316559 998339795 542630285 788126781 70204478 425884156 282836601 454304580 81606040 957345390 439028620 572818595 95856185 325137750 383454046 762663899 540587067 947722515 260489600 297793362 861146605 889363911 670680643 794887325 1494706 308717159 834115415 983510716 479071360 974631133 11770069 794743148 861479640 910630602 308172543 471587247 32629786 338982291 944962552 985081876 680045935 696145057 546722323 754005440 874445411 884918847 719297251 760335821 294312930 567502659 837122829 916056103 158025719 743145103 451854818 619998556 861145329 957165367 850331405 918397707 924321775 983179531 763512243 776973824 597685959 931269531 581434394 931686833 89089930 311122200 591570800 653454647 156190030 650392744 791552184 883183333 984833402 994030903 575297732 586346097 756062807 992233311 356800696 686927387 259838913 495307856 530948131 925853081 372663350 988090468 114598121 156100044 195651153 206223208 697241493 987303181 489977345 788654807 138606440 883000158 736784241 972040110 347054541 703816546 123901199 561352236 879366936 893482144 44949226 547976033 548102523 801944497 589049968 663387867 46429777 112294117 161132704 968209149 286556312 819611368 885423037 983462668 31590294 809622146 575608359 904710648 9252367 755304326 131917740 998752769 635437795 721604474 275321758 634833872 490788680 907502922 473479730 805971133 88445115 809128306 847103505 866050144 613466476 880403222 742712186 774542288 503831529 626011832 23154959 129093099 379012969 550326160 956996136 966473712 581230368 792901341 775466172 882938901 458686861 969382407 146186298 163660533 508008835 991550432 347498651 412575565 627418078 730713664 479598899 771545452 865572069 891903324 932891481 997491618 153973140 165674783 117025107 230812894 819507449 914563836 833097750 934820895 813107827 895451957 843224260 968019823 308278594 384352039 842481291 886772522 871202429 924026082 66593893 222151500 509223622 975180924 727419754 992792737 861661718 967025668 913302795 937843449 417143058 512362593 8808754 643335602 269314758 725962639 65977642 870479239 374612647 765450207 947992822 998453666 605929660 724389616 822456938 997891307 182934349 588094835 426060804 528471994 28596197 742780648 884449289 993194595 799019709 815218286 674960440 818057107 280425683 355700181 243571121 749099632 32531400 802109496 92871530 169894659 539477647 802464291 920091839 924156486 311731638 734760567 142636688 616993588 880454096 924119417 493810774 616551771 815521288 996267934 373404738 412516394 482087440 711615644 953390532 961775047 219659683 273167328 138093769 530993930 472565712 642762951 694215851 828704044 790475631 884517372 730392401 781658871 605042099 669200407 945206145 995038932 4151922 788843707 808161814 844967694 431767198 497950611 145586351 314266478 641182733 954466040 59202775 780684562 261209312 902233377 377388598 550826145 567212940 601858466 192116224 400530871 851985907 992042017 563218359 872407519 364004096 800468279 714022252 746024808 756376521 810475282 637192637 920428657 542763796 887013094 949400866 971153516 902446409 969501084 935121906 939565256 12784034 37100623 755820734 970333887 38476671 302477189 292150958 966463039 977402356 985005851 458993959 944015563 31128900 283769804 673550721 940474155 439616638 898604176 668080142 996352879 920090349 971101559 61722263 757528310 140973350 511682303 367980882 947435868 742548616 788463742 159908396 710455788 186851506 531663105 153081431 472052026 997890652 999503370 724187512 975697717 584988250 671018231 221699797 604007048 595639192 985331971 695554922 887113572 568279186 820445322 879214560 965918164 656462711 814923806 185390799 882443057 621911221 971580732 782720250 874005124 456243609 944008476 626360137 810859059 404736863 928595634 381155077 522835462 197094462 822870213 961472040 974101501 447189015 987047218 453342307 500401355 508885929 832780578 435803172 691230311 537378018 889846101 603734170 843148613 226468159 307650045 864056997 999849415 66920748 505556723 816289103 917372889 674218854 730928285 545329161 613875948 852072008 984455330 556493121 854013641 186401668 540413934 283287779 632248638 395725179 651547239 454376210 728921129 48018624 876241939 936270267 977659730 808148688 879025829 543645381 960434386 539830125 948449388 39440947 551714271 252394674 490112194 729584934 886222815 432072623 526355400 158523098 458304270 557536959 773217485 241723571 871822504 707698158 727629623 831993982 889201242 183181637 771644837 349589226 652093555 682203684 805017384 739454317 976543045 534306498 604610759 935494735 988997564 970781911 988276056 55085643 958059786 140568698 645951820 527280671 557661654 886751825 952256735 873397320 900422464 431847413 461455758 14488139 741869854 828836935 866210490 518711673 564280855 821960332 948913947 746519084 969151315 974441494 994958366 93466196 499984062 711576798 762314749 414945020 643915601 639660751 926740356 536580466 751204601 763588577 778705828 578834401 676730378 579709338 692829262 571821018 577953965 965067827 977641420 443886657 584825147 867830407 960982070 968636842 973684047 635001670 850167359 938060805 941204226 242053394 393551476 50610163 709558590 695525167 903278366 488811707 965534037 175014876 827195517 982557616 988309750 940858048 990088787 819738692 865151244 639036943 851357328 62716291 900921902 733255650 878837841 161056961 613155165 587344742 697121845 213846199 699629963 215639145 826364591 224021796 361588195 459542664 848067211 831774419 902303438 35826173 578145832 12991579 928110070 792172084 921001073 750640231 788994227 731907612 940403068 681693739 751853480 828057478 907763672 570484795 937021454 411287589 864403718 74037790 713475248 477289878 860436968 585573893 672065540 715973120 893721188 508908142 805490730 243040918 557160584 796941435 831182847 520509354 601424181 778663916 960922996 104267518 919800207 76556645 539320383 653217331 883749555 16300017 53397090 319249371 429877469 856060711 877067257 797330495 941463421 90811999 239877881 640121743 795113768 121695385 817556654 677259305 787991835 756931503 790718613 695646976 735754039 798281538 852786150 212402644 864784218 340110506 946848757 503372324 607483923 135357306 944118673 42223133 638489760 989293379 995260471 798614722 956915427 766132190 773300493 718109663 741832715 645043278 670550596 163065434 537865266 251174223 456110931 162074586 439535948 407409698 858539781 853901088 941935438 144985995 325164867 639930022 703229778 58655362 715505628 739017949 935460971 396499000 554528739 999770906 999912044 552002496 672901723 621635498 875106944 87734321 715025139 926233502 989345018 917976868 931387602 458396357 782942572 730968853 946508709 732878725 874587970 317993489 504247909 814320737 922093084 839452850 931709672 793895805 822751741 429095709 678896476 421645929 481202342 608629607 734293957 129069810 475056511 546729625 842216751 412078342 609288597 835717553 918285594 501985369 800998773 548550764 949819262 919342835 924758737 983117287 997273111 945866999 978651411 89796785 562593517 303464827 354881914 441327612 793685380 458149657 606661403 565429845 725591337 593439652 947722080 351207714 700433628 216053524 647014046 894385123 918789561 206860077 486036427 572415964 761379524 329095239 685906133 160764206 848741530 78786369 633085432 788787157 969343604 941439021 964960248 276463680 865194461 131279751 413225207 117470623 168597090 341775108 633388865 352173323 803449113 918800041 973747869 410905905 716985262 804013252 950413260 777989581 915288842 89360330 678513058 686388373 700245821 655730268 827066543 769343204 883113442 75945470 766809496 481442935 903922332 309085672 623157250 323931792 338520322 155832998 535589745 883359520 888299477 418850008 945951078 424174883 873771972 726411468 833742379 371988605 671977862 912734711 988916612 381683788 441625892 151483690 542911747 728663568 781026510 162041206 376825959 579948679 827599820 85924399 293129274 403598531 431143113 757955609 813717355 918969331 995589494 808940860 876500553 30908836 620758599 485560070 532406551 346285056 968677685 614433229 837666957 491880511 598622841 663123975 712688698 816733050 817360755 132167883 623861423 802129004 819282255 787522824 962094328 797694019 934194472 772640502 950778148 418672142 650224029 198006948 820424018 417539301 597263472 879640371 937538847 849065994 882778209 47014472 806483255 242756674 528784483 251480905 445391750 390101435 600112993 581495456 780377928 324882161 850831238 200587673 264890459 808287759 851072536 111867124 201321827 51599967 864542608 348911502 966967757 469594537 934288742 951872532 954141771 757269045 816563042 396458339 784193965 987249416 998862562 398054703 444269074 69344552 643001050 767309478 782237811 133739524 879069808 642822034 952738561 359458370 721546619 389124334 983478459 458728323 975077314 337796260 965021794 494394112 674927470 255753486 707869890 262828724 802523886 230712787 643581409 19782625 107193117 179242665 757793171 630637791 719867393 375732222 421410739 41083689 672113158 893746056 918542098 905954093 929982862 245832738 396604277 404218061 462471073 473921241 977402238 280023549 445551147 595894411 993294403 921587471 964524784 205276138 602097243 343464807 946287492 748211046 988140510 390117063 415293467 285598092 643566752 787866259 853155333 21221639 230354242 747002714 778997827 395256779 895632346 926604665 980459250 613516711 833040077 701674661 734950779 748302126 838849515 518954326 708982758 819133682 958071611 854285786 963208866 621786300 676279056 568071604 681262965 81396196 566246391 106696781 580497237 301391926 983575035 887088414 949849886 752890004 864429867 118830023 736355287 185667435 438918565 65768471 228625362 970703729 979568970 892375171 905044688 868888343 900924581 758449944 799408695 223570424 226198767 356243436 458722018 119598015 703968704 595541009 835340026 605188817 635036695 452337781 572165496 134731379 335310233 816956982 859495367 691620280 781243641 544282974 908019231 73331975 877975677 458762097 472597619 671537683 906272071 956161223 969569675 323880264 503339548 346191766 647554442 262932177 615537097 471979469 611807225 499127678 653455746 788125275 807155633 597644441 955749314 332826447 860357916 724496690 903852282 509445342 874817659 514606209 744946766 621282087 709614664 421324262 435109435 757810801 788856696 415643668 650399786 17838534 709077635 759685354 949449121 489545625 923976851 939328939 942346394 273760871 766795049 97782354 302560465 741736527 871261904 538076597 914055107 324108622 432916792 773572839 800974211 592763437 623620771 494549032 774922174 161858714 539357961 166413521 956728223 240250296 283747648 543624541 980219759 184742585 280381219 476328612 745031692 201706981 489160866 762216563 944244000 355946807 971535563 793602685 922123412 752272818 992811386 258293599 528674069 24903460 201867822 846248331 902640081 954389480 960583395 505125539 783493151 438057685 645867552 425444112 608386093 936237503 957894296 114587431 575356736 841328917 919373450 230298344 540496008 17972061 966574216 274404715 546944029 89327748 932426212 983770213 987396792 621893261 627946350 566958735 737600588 35938662 304259133 71185107 282780737 919919605 965865365 111013252 323147555 42930494 44779370 318935188 668984857 351350181 454413281 9025495 410125389 803251295 849277195 676899062 984831941 103926216 441732150 693373578 735806716 597852952 623182155 386337088 507456898 104971771 705282660 216459947 370864923 255148333 307090001 450466303 763585754 664968247 966578831 665317709 878687455 970387786 988932912 34536122 893602214 724997664 831605399 471013318 876122371 895676592 901253522 949397294 974088123 363708732 695935046 886186731 886315947 446269836 695986311 358317234 924713594 942830680 972688986 906437079 990574949 725964936 827434648 22345283 296744111 564148109 856981766 782143760 973657506 868553048 935130746 326020309 998730691 616777826 769418458 799779858 893537343 652964031 905352132 622553909 624538498 854764254 966300339 416780261 709124931 917213291 971026236 898028419 969284598 374365374 521654413 319420360 525014090 126854887 619724673 523375759 636630077 781259804 886003920 40213876 795561978 929689352 980353175 603504631 824348293 833147942 997126600 253032785 948590668 411084051 689967494 755200204 983379350 522827808 782122809 925573538 963210447 946094576 949501323 496391760 945567311 449788286 911336295 736437761 804256967 898702077 949276624 489860075 857837390 354647093 399343854 448022091 689246466 678361045 742203040 504905388 575010383 947549907 965798836 278734915 433457685 119001688 205884309 585839834 886289548 14562770 667229448 828125181 846626075 457408021 847220475 102813331 626618572 823385952 909010929 822400787 914853751 899371845 999317523 32518267 492213890 533350935 609724335 101285231 355245514 802122802 957963413 74374570 381464919 464618349 563095534 502530838 813753311 268038011 758537562 643445313 987158524 466151386 511068999 867875969 935105082 263604805 593544852 931737561 986467931 387176631 414849518 153847277 825098327 435325898 938732275 755148596 841797921 779963822 890582601 170759013 372411921 276145215 980724651 320459549 523962495 308445274 690185186 34484497 778859045 58844694 942284039 709944092 909799131 482623786 766189604 950393247 995424414 486220611 843651281 260074356 347633356 791947442 889796417 332952320 820505486 488367260 703827813 311290962 344095295 381129553 623766308 253262114 406741972 63840292 836330499 389642215 472378497 782277526 855716854 905328572 972531511 98444250 890648924 158827071 707649964 197512644 518939902 520380756 917311662 938671436 976010878 330961956 550757380 227020081 446600460 474216446 850668332 644512639 945979488 433255536 991614126 919006440 951698440 223802222 691392541 402381859 765693400 793602511 874610011 428641075 832352364 615979717 723073453 372181806 919807465 640051573 757221628 849354510 985526662 475350539 502398399 935125242 976390965 146218818 717997950 322649140 523092112 824364904 881435783 93408169 597960599 957379862 991071551 242808203 529468546 154663089 400014768 831069074 926758793 188370215 706784319 344259621 680820270 59244331 822936297 40625832 881429013 267548094 450359801 800805708 869085763 876266527 929985385 687859181 989837426 394042059 657017154 621544712 720120742 432631483 792348099 7448011 350140046 181342048 707499122 303192934 928564454 270194664 534247136 750826803 808711063 812381736 864725521 91974866 611563703 956994583 958704195 659072132 784503500 79584502 818095210 633943233 814445604 387672803 909891468 123938708 620607797 520035335 823612799 434018718 942835352 302373018 847856204 965173308 965356546 922793414 972152140 142262174 909496235 845876287 986337454 229475028 645848325 818662924 842375062 502316761 540548063 458013569 657442147 211372503 827447487 205847244 970698859 360524505 458048462 5144976 397294131 346522780 696827831 136222775 630853743 35897947 110356479 272132958 622870442 359272261 414022557 900068036 994041175 630387454 843707522 289428032 727654947 927163095 955321354 13378644 187378684 380938557 565028691 763604514 930455299 377746469 792248667 171277169 770797594 179051384 879245952 62060226 552082706 213002531 574481143 614890404 724010916 802228118 874277758 777130537 909354544 678752205 819813100 344782588 558468934 990402476 998770005 284725610 593683898 209933847 711624573 658564271 903367336 720398600 769634219 211425060 689936659 816025814 955227153 323478879 538436172 275108177 641684088 635392173 972561455 60490497 237575423 263156166 676961340 775438850 957083526 326175285 708218809 723935698 913670098 518547308 671001296 559243475 817774919 318836874 506724027 444088887 856522054 635210325 852202200 532110124 660632853 952357392 960981635 669608291 786876209 427906106 612609887 658763815 844870581 426194286 935099211 26923193 575020182 357554397 736128261 28501192 399851802 715529611 938396137 841005001 991680184 240762466 548395976 586155734 751433920 27575149 435308025 161553502 742571684 374641400 676744524 620073368 985162278 246632060 329994624 674542041 909115424 106524166 628901041 227710045 622819014 582469077 739513753 472311323 671444756 645462104 742788947 979326470 994296303 917799862 919185737 276432098 497427401 66979420 612413555 24870169 306815198 29018544 661737264 96959585 591909132 144250010 405122435 227048134 710366778 497543831 662439647 234252199 493373467 697747254 959261109 494437542 892974532 406526657 865605790 317201604 816167535 342319006 481137691 970452562 977688101 762352731 936842826 574743259 722351143 918483470 929115324 987609543 998841053 320228092 401899732 147772416 185772307 962658169 999842743 718804454 898715310 23511871 535684862 326019922 442205986 640540348 780627411 949361565 988015515 858959719 879859104 476838518 607520816 356076435 836801215 973291908 978392477 138007045 510655142 458360220 503361495 20910390 600489994 73682591 909562283 598411871 607920848 550602933 943016754 186617776 900038993 223588871 723823074 540263363 835815569 224310652 424193698 795611474 941006470 890220676 967464609 566584873 698229836 282865365 415631342 263151755 949001348 256564818 970682716 237258654 823651045 805860804 849591903 186414457 926167232 519857583 869916804 92489746 772664292 101743436 801537268 877896364 889737784 804891729 809282860 200787788 669806950 205299362 660585274 64780462 683332291 142358635 366081021 591935973 704059107 350112912 637886854 120450979 134554509 850440852 979082952 980884488 993303745 195455476 370396381 857984573 950654767 954002801 983394926 736913216 742215168 660611224 673498893 769020593 858873568 235983912 679762859 945657149 985014955 468080733 538396128 546345904 873076047 164155406 319249101 116221749 890603352 934712526 958992814 82677966 948276042 298057594 514484223 233919383 945733127 561801108 587866823 291279617 973842082 824066732 926125974 685262834 914819756 581648900 681700725 983588443 999859149 30465917 342259289 907189908 928121963 825610770 844161480 163801306 784423607 468137031 794357474 39438427 63367978 308369294 355856465 248166349 802518232 874768725 915434893 373425960 414486281 197311519 216218341 154402609 792205535 458965609 823303776 841234696 963430905 355100598 992189626 703049732 774841105 404514873 471206074 441500684 987558578 208920196 507281616 215970642 529328459 796288088 917246882 510673689 883649479 710054641 886839033 167060433 566308813 450048800 594650296 373654603 391824904 934282809 940441404 838819394 888353352 973652537 979795894 38081771 750642294 542064585 873173775 629922329 847791778 345423807 717049990 845275407 986015547 761691448 990343061 96857096 533832097 180658071 913739650 419821772 423671522 774961572 922010121 917566883 981986210 982766837 986579451 926101156 983373448 255406282 796331470 745179750 904117995 772684626 955936196 660499443 797136683 528955904 713884781 674477906 997758685 990845130 991413439 259214341 695975483 846510054 948317851 847034334 999540690 348091819 925808377 659252676 859121216 989201002 991356477 103106457 304034058 317443850 723981126 674070197 878806687 985684170 994280008 258991402 901801881 899406399 914884153 967870890 992035005 375922236 525507466 160081320 298390069 542436474 814773976 971954771 972592245 380041434 902783146 364965096 893687262 458576929 552052875 34796955 140326427 375604839 848836975 453272973 687002930 974985950 998983981 119899146 587817616 260122856 720064011 186560457 728328935 707428568 825024268 988152035 995369811 286487281 679645953 810511691 978903974 7729379 538779414 721413313 761850935 550379200 937973848 299093810 715889752 455478752 798105782 215022266 343889669 367923007 913230250 418734926 559738854 495446418 957776802 14177756 89251648 678055412 700170514 301622844 367491173 297105229 402664657 817163748 900002051 261825390 297056043 2068981 582341336 689257808 991109878 63442376 111257131 880895073 968151127 95191730 919827821 302499655 575897924 495977001 928113735 659530397 741482349 179377636 411056545 549798410 859907291 287979611 487690540 213968555 402331711 246095101 333183906 601695095 840353243 997138425 999495772 11791959 415577266 195742360 533609674 461646135 502369605 591208489 831885577 64182302 763287959 137198069 253485779 88267661 398775673 796906201 923714810 177967695 922389818 846625597 860785427 289333870 843355113 340660227 887469161 790197190 912883322 81110074 319790681 415546381 572064167 610133123 710869709 866301898 906517122 629827454 818903486 170094393 475395079 14388721 680367267 930449221 965830152 703247733 907749895 553223749 928703811 855199337 858665546 85225029 591733789 908619677 940770172 592374355 615194644 403351014 475383622 740539666 948869132 386229907 834430496 454592859 726549443 261573534 266444768 433989219 904732812 356388022 421268100 970561747 997551082 439945685 935929891 470257710 685453906 578193289 968010202 823476766 940226948 75891463 177335211 871249547 977160356 838309369 888668450 324633422 674994512 9155737 831441231 994296736 998116121 704296362 765470282 656917656 662969655 523179042 817624461 919054495 972353634 310232484 313991516 356822960 640641542 1854925 473287141 840891309 975044565 102016933 934813659 463965715 974015232 517142813 695473114 880129528 889225246 402420348 454599421 332645720 485115026 451172368 967400960 868899805 978522595 573921883 691414015 770552420 898977051 817849837 955932432 288909648 445623787 244392837 436728707 205060727 507703957 54343911 484922415 889669182 906203390 376682196 809778011 891540044 956232080 416890635 710068579 522964271 635204405 368988304 376681261 275802742 816109020 536922978 928876746 619162440 775020799 609641509 639827662 245512496 441888482 573757273 586081877 977131239 995782202 371439485 895786268 389777965 981797257 485626506 589742930 308356933 332247086 139917119 311567856 200833896 318604577 489224081 820852873 274749884 548001643 316664290 837655576 615692390 879167424 644831699 956909664 115657333 487840782 802852399 979420208 552011576 910260717 948916414 949755209 739067801 973667302 426271945 456975888 266798417 308592397 566867453 632856520 302823214 670533831 753830370 991031322 712521856 908497968 960846314 986290909 901058263 968481240 681204358 765077625 816333203 953971626 47821740 762255821 269485818 738900343 243842609 558629834 937566771 999311512 571940432 619341570 308068543 700824533 464902710 948356146 828257478 865945728 912164375 928731887 502861173 664055676 688519320 736799873 373485346 914081274 871937884 897158009 296314356 904142440 702629510 937853182 904444282 952957409 457186309 586835954 558026721 651121248 455216038 669760572 16794518 849377910 122521738 732094098 862899188 927312115 664105167 907115569 419353978 695226410 249131534 288245743 339640117 567024030 173858456 905477771 406852457 714880864 803230151 806002965 251192432 937826538 968130243 990080169 788147392 868021322 318362957 361205799 624123988 993892840 49479789 962962472 473526254 588486898 381037618 920718002 166262470 208412760 897096787 984517556 944840137 977000143 900877761 955691196 109618343 998384528 647480090 756126470 388063657 564030099 641095093 797289995 91249117 992803741 435944641 483027541 741525387 970940173 159620084 925365970 30071581 396347770 877221399 976248913 919264802 997818797 483487464 945838548 980820150 988478330 386220582 901077509 425701783 955353663 47796027 458505908 24112528 787003716 915124608 996974486 521791902 633920103 475094267 525026400 379186457 526304361 690031527 900173418 894877368 995046355 709571737 940730278 968251582 974707629 344775545 527202975 192526283 823185911 318870635 783072219 658514232 995105426 590150384 747349576 736086986 920450372 845741510 988929003 987041418 994882276 971513345 988020200 540685401 781645707 391804658 900465806 316584005 861951582 777049091 779954343 185318274 840594376 590380112 848672285 469788672 963915801 973832596 996501446 661249709 795190789 29964607 616233624 790755146 951183724 52618970 772339114 11536649 900599333 953892045 972669268 969271843 990898563 395980714 901737065 933094555 985720273 814983832 956198280 823832916 895521647 250185600 591614990 240397043 977992379 666524581 967149258 503422804 544740348 535517117 835795563 459692549 568508403 690015978 794077591 435536195 446369278 464634822 500764023 943222206 944110776 171881927 935048629 768702393 985746394 914701213 916689898 826755314 877809559 801860779 936233276 263069562 789481686 622950358 979024344 719986164 841900087 326577194 993644253 921892095 971852194 419316728 601716013 645527805 713964162 772894619 840108816 664747412 737491415 960417352 997441463 374631205 468560939 235387664 508711029 159302731 278778793 985805191 989377576 973552759 974471436 475704360 681793443 420874996 781447505 264871251 269332919 43904400 153057915 539476998 762492282 34701914 163612738 515836502 676971053 254979474 476666104 634421829 693131033 862269615 908770808 944883120 997739006 443521258 672439642 130648741 844910488 107547932 507949759 701965235 904781161 696791700 974973293 153572307 357161423 329233373 611752633 11054452 401653481 190196270 417297488 714554684 866003660 648614550 852087194 922266726 990883452 171225086 826472382 46352454 481142515 171150296 400218720 168163250 906608338 694132804 920816734 578141500 840618921 695154175 908193012 166257867 917447347 42387097 181563514 863861642 980094002 878806391 952115003 489275156 799231142 359424997 650331887 304605771 556188075 800870895 809714172 59755080 856551692 600829622 932635443 871251678 906209551 570518450 661707091 902694074 930381537 312710983 979096295 30547989 731617309 919187834 948626055 83393974 557165912 9458042 569224217 30608843 705202379 455196355 565741948 529465483 538895430 623911496 906039501 5542932 228482474 375708203 786925853 205923109 493390995 113652034 476332594 402346157 818356260 183738093 464052620 474542993 820218752 16803730 739757669 646558686 654742733 775759909 957850730 413975968 611166856 218685486 776799587 13604873 703149404 65158382 430501145 25631161 556073521 526335984 826109369 710762207 830345626 47873028 746513808 715443625 987060705 114845150 868748514 466841615 619497090 886257957 892886290 67684750 780074541 586600074 969263790 451167473 931872049 978194990 996123432 226824991 952310563 819663450 976255175 485386706 491299429 42317866 86082650 403935793 413483815 312499950 745155349 785254246 935885335 518588600 671859676 193212765 874979811 433869165 747354362 489705308 525455237 974917860 984983336 933972280 977935292 887694117 975486224 570949578 794473532 336319204 771105129 222434305 565351120 129454815 169466162 630074537 656023537 740161842 751880590 590959978 850348934 333534601 784697920 456211343 869403602 276553082 837262817 375914773 900919076 340013022 808761462 164070787 213194038 623619141 704129212 653904117 736123090 42698026 185394463 907926177 977403030 459574505 706140870 986520484 993862209 431994785 762422727 149274758 213257841 604359880 990036725 317736446 905374484 444559028 533157628 823080956 833793439 374504344 901352679 639047845 964617849 930096887 949215002 859610054 885294149 109137352 505524935 43233009 257222698 495241764 993889115 100058916 366432642 790797512 910791695 485186243 801307563 137201067 938510787 953543915 975346948 314477786 435986970 255807272 531388881 643523024 996511843 523062563 607100158 105913565 133165345 806125027 829571956 140778489 693682991 506549094 860428773 786263151 938525645 448984901 894946229 182405769 958074144 794537914 923741642 440237893 767878122 534739804 803577471 79687647 403629171 821017322 948966328 35083096 338274727 167168650 475743582 532345808 549748341 624499519 650305598 182906826 750903598 731070898 967645261 866974796 901799218 528013111 966381118 704605336 982537774 736980960 877795364 251532835 776140460 96142139 147938558 468901296 632583807 833503544 992862863 426764215 547695784 319456149 539213451 665218010 897695695 681154081 970763477 234300438 426253225 506374198 821216961 282505883 902329785 341733942 527869472 494070653 954052156 66940322 599538594 205231843 213860179 671320912 703594455 134085150 142492023 714778561 777256690 735629711 827445450 438945705 760791827 121574146 439339363 608623793 914759514 802212427 946802345 459440558 826357288 359880929 383013825 426607445 444029087 535305174 933930628 409166968 845883809 343495587 865064790 866694553 867792410 799038578 916010349 971403391 973115559 501321256 874563729 601963505 944220089 99581798 363050902 737549528 914865187 462759192 637826898 491621714 689759118 817459565 904280919 887187219 887720781 268814604 624295925 955638214 957460304 464515273 768789938 902640358 944611335 682205977 774264917 283145475 621896369 498217502 934650691 122660136 715219274 238946384 966794940 20319908 586396722 871368481 989065043 252604139 695660398 290925088 974287935 832715311 991206313 843777904 933194875 776811205 904742224 442734414 921953238 479103945 879356495 178337841 240036681 539139568 870675543 180367151 630126405 436410669 947354665 922962872 982757519 901730724 904176208 848807981 989809693 79379620 691370606 724506722 794676441 666894387 964364602 637195621 752373059 748478892 823177139 973963081 993489235 488384743 805816812 315467190 357266742 574517550 619880097 677171892 723721379 498914812 552550263 338482587 414368135 931387613 992385776 727744576 836285147 530188725 888832677 732827082 893463678 801956640 843380657 629522749 701466312 574655201 991811144 724654778 788260707 368322163 554464573 389917916 477351942 193464584 890303562 513329146 552798764 455711933 640412163 73834306 423016826 548523902 659423644 722014966 822299834 212938996 440497240 491802609 883612869 751210431 902503425 525717815 891774444 616869853 693999821 74483132 311705353 185936809 647587473 709144280 928798108 833749982 913491268 93587525 254489352 239139134 645980698 419868256 660950565 486574660 715648446 483926086 843664485 180533639 394586844 362976268 863391243 793305126 802172501 512617950 559509290 81026322 847201270 89470778 861863047 689353342 745620888 293606191 345221338 441666479 785256616 640983400 983387305 818278641 819401677 820614453 939118412 575224421 634358000 836954249 946431718 193939329 801502724 997965803 998033268 733305407 916240069 260657115 428447603 556925263 956992033 601528838 801184829 354963153 761494274 927474601 934862240 781133339 791553211 818181573 924921677 205394034 241338432 50758335 647318252 170629796 795450483 374138449 379520021 568154822 937642499 348749563 898706951 703489967 935986906 503264526 944811992 776485190 824821721 613988256 842318788 316352789 967831217 132710542 930850310 554658708 985781335 245761872 971785545 662635188 997188908 509947451 925763908 243629115 871908647 572066681 992981679 154834551 157491834 45103005 596686085 408554421 840600472 395380854 977203058 993258553 997211458 202219777 655948321 760985386 878217455 804435804 995464372 804073317 943713870 500584238 516902213 943542626 960942498 424149149 627766335 87895758 371507153 400462188 942881398 520314915 869691127 642940115 968822705 529709814 846063302 547945121 714935653 96794632 761357099 263053072 309685052 947842247 970367848 679431549 930396223 150488454 587187283 481614129 755422459 449801494 731563870 933496518 999502697 786699939 911332684 308287533 608356150 65805199 620963591 244564466 743393679 522257626 871277942 522686665 641970385 259124752 342141074 579554536 804364015 558568486 706000966 129138073 182776891 687252868 952825732 168172601 710098521 249686688 963636781 41860019 523163603 696531578 907953883 187470877 651924943 481793326 617714905 242606042 753187441 722201153 757667043 661580676 999045752 389838185 695526846 895719169 997063199 207349170 576064369 640501474 698994335 303524671 803202577 232485539 618112582 261431009 632138130 927991055 946219740 513340133 864096745 599358399 745241036 804570601 968989676 316553167 490008590 660478371 727946176 499538128 934944458 807714600 810488386 94792187 575452152 508262562 636001828 499965475 527000009 475631214 479390174 492615909 626621537 921942835 927489941 181971069 659755259 479600888 481781274 887125892 987047284 745723963 971104600 280441557 972993569 960571610 984407797 741783984 881143782 721840613 783943003 828832011 886750297 840601033 937233250 348847748 540550971 35459772 95347075 85820030 831576744 603272517 951239213 717581983 790286975 50952551 316323960 544215527 942089439 376975959 551184941 722132062 787123248 373012863 454484123 913684253 918315579 101362041 663612187 134497664 462035073 863303015 950248547 440111408 446983987 105934438 773924582 234525619 629269899 958941949 971697299 704494215 795062845 300522710 698538572 100721696 971318079 240545217 701050182 182257937 539937943 867509374 981501672 61643386 170405019 83120685 833776145 723453875 916986484 228595514 989399988 641569696 692205841 741384534 767952638 575435348 967179079 80208248 81737902 532043346 566243334 199683625 393817019 334184777 826490683 182120097 881160972 378390628 884476543 72186344 684207145 75100839 588820928 696148937 787397753 291298003 531503099 867587762 919419708 885754981 982614056 861877006 929621361 71274778 241134259 305456660 355047631 494204744 680467882 753653553 999223191 268547824 974810985 55206617 411074467 838237004 887815354 488765281 555698310 815574683 850378623 377123101 391670893 712611354 986681014 637358809 697287304 482317441 769162810 204754599 708236661 280064924 500162396 634346747 832516725 620174314 897848301 799928458 990298774 472628845 549501683 974327864 987282662 475703073 540149906 497914562 670030920 875926865 928409169 154663051 701048735 161136603 237695635 105618652 416240325 404669454 997287757 599479065 805634929 254818522 605555279 648041593 690853004 408299886 706925767 780947544 945447742 644917944 679293511 589118622 628723907 428848855 598662755 358244157 369515746 460645307 534862941 842152528 956069149 939028804 954203131 921144766 992108220 29550337 159934626 521320681 668272365 581928685 608023248 796112724 834318807 757340663 912908290 260625467 296303961 87953253 295488525 158787491 693364616 254717352 415386511 465116826 622383801 88656289 943944378 862499541 950351206 574569276 997830560 531656095 871181815 954661839 999562156 836723045 846443313 767760277 949707419 139664299 509627673 966445058 981175994 914293058 928786021 332583069 779231612 635305290 736747088 640431529 928552490 85534595 121586409 104177647 893653471 347398414 969239395 138841056 742124172 304717479 750773766 706030234 847607403 335924693 401970082 6906727 779141477 32714261 459260235 675156061 766898915 938743654 968336857 380225708 493117462 228035807 568362184 494720534 834038221 36655507 421063287 127184399 575903354 404893369 453622748 852260325 954093283 523712949 772080136 592629088 839891214 924687653 965380789 906440004 997037223 165060961 967909623 810615369 811529792 636118048 714340672 494132556 576864245 790139707 965687359 658644650 978720336 454515208 732182986 237248450 981365095 569787702 909692722 991703529 995414901 229062579 568559235 352154678 527098743 93302036 117099601 758492643 764927903 295465111 750702476 432364435 493302294 434071807 878055057 613446989 750040902 133830524 438081706 829526922 876799039 173567767 876070832 871005923 974224266 103737376 362118559 219221043 710377791 432566645 773903816 145650814 224200480 186628245 315103797 801550023 878984222 913485428 973904756 218201225 239495473 560527466 748804044 216717675 948782535 567365718 998130561 810289467 998901991 869408138 885514744 302218697 480142490 768086591 823217970 992917724 997061546 651280701 760756255 508044810 927577182 867027042 984511292 356587251 835070686 610693892 831039043 796506148 966172212 549306806 893094340 665966845 833539158 838076171 902759411 240691494 322184592 394349576 931178075 664809607 934566245 770840202 827405341 60870207 551615292 209719777 776950012 751158725 845424587 103318638 225138978 230343644 602241801 98791375 758108475 944727027 951417301 111656680 380604228 762966644 804860423 988990186 998687425 431811376 598412876 516109749 688640430 79545813 421952450 861196371 948177630 74236954 226500803 206159995 981825046 895723330 986245138 201521625 909126356 687787648 738486599 546653445 829684993 870678425 918137323 827202395 897559955 17589791 549631629 609324376 902295658 929124564 933288775 926773496 941608374 99802716 996959157 226743315 686553470 45935098 399688530 785927847 960421408 439228318 608216112 856665145 916873265 815412866 899115613 323621649 492205302 107276173 278273750 673293524 810226836 635168044 665845874 437099688 815151955 645655064 857966507 980940595 991599172 422808547 700659214 783222879 799418397 823639424 954920884 242272626 822537012 498854628 891190376 310891250 325227746 74010245 734553951 636147148 640500640 941635359 983225910 826721691 831908969 496910894 866870887 900484870 938181620 986084948 999868650 884611940 889515930 621356481 669970455 607653769 919701227 116347957 550545736 592619482 931697416 238890580 744945862 742342943 815837963 956759443 973667670 700554000 917063281 156007273 348831775 786586908 813598257 933332373 949751826 648854867 856006191 996220079 998988099 325601845 910030266 923118731 986535552 92558524 500247844 744160791 911076985 962209687 985717084 976796498 985723686 163148417 231641582 466815923 838347118 424982113 976919679 697332476 854758416 94896002 120329672 145754032 916398617 413935870 964227441 726123535 760440542 76554051 958836973 988396793 993948587 50558792 342133230 89014399 896655988 157173447 474880310 333742888 494310747 821600532 868483127 518516006 786756796 731556239 880555397 973160196 998653613 112287886 750262299 723737175 980369579 137980694 859052846 231423974 232980360 166911459 983123545 325298819 473099639 348212653 533585421 803617810 943432011 602303403 895521500 347483388 478386032 308553825 650856571 13196896 901973748 452379142 510160404 839344121 995781015 822186546 934214080 663496380 664305959 740108815 947642849 13183064 866237304 284913809 676335619 650299991 755569322 246549747 305343200 452314044 959057296 830457016 841674711 757640985 766355008 476379578 621970077 45338136 222220606 599679694 738679689 709829725 867249353 182510273 726921118 428300277 720911218 764578737 838634012 223715713 906975791 432128566 914639047 764799440 864281492 567506774 754260521 369624256 994636301 635805276 989272253 8180828 557594540 13188176 880444626 816185057 913558721 562096257 566971250 708581027 901274770 266386902 992358435 177097019 196435408 313863675 373830552 449676498 945240127 686492223 836647985 803464952 927593510 445039062 478694259 641188366 957830838 252285758 900663918 925082639 995242584 859964498 929484401 195583143 893486172 461437148 742891494 204587360 887046722 537070228 657832468 666023227 926692857 991366247 995725122 376538432 898523091 274220741 659290549 173497791 611431876 95050740 278809804 47720839 351942028 764623675 783715700 458057752 669179636 413597895 531450344 780870675 787847638 410966148 693830362 391545703 872868683 436881713 568279697 19480165 80619083 405834361 681730049 805028026 992363379 767460184 924258076 676726688 859329624 345358071 986204635 983702463 996215904 87107041 557124734 582778782 975540952 393743905 518173795 743078638 882123384 25430321 543107133 477058026 533656383 563367170 692227550 476116842 642684716 609823331 847372176 424982836 677432556 809846278 811742994 438693531 768627358 34251321 183478983 379276296 742528501 861598026 972728541 765927169 864178032 144112326 819734414 422918498 666215794 198700021 567718316 278680357 722834421 910264287 944323934 821328085 876126021 60289895 542004245 745938374 863101945 502672102 536579938 800656103 821865057 69186401 943630968 894930625 920869210 408370256 472922088 591607366 794376193 621368356 963737544 337704747 373190324 317182453 990109080 583845707 769988825 999571669 999653674 553694393 865427506 382640828 619745911 618982406 752720992 862839436 887238002 273441520 741261622 420623830 673642374 854388646 930476736 406088658 643470219 634123685 772569054 376493677 429969249 195768232 685791814 720232262 867171911 724706938 995519576 226636112 433697898 316959510 455151708 403359098 467174792 202344319 280310398 677290870 933579946 276504205 870789833 627253330 650052348 61774406 935456941 159696428 215891389 970911122 976660429 326844661 340030988 47921874 382237336 767430536 829262548 647073346 649869526 173492791 901190005 158062963 548045098 935510484 987432790 151662859 204790676 709129529 746504598 936815592 973907668 334402053 463443874 681699558 850585491 287139237 849676581 137158129 687604814 664346706 677769076 282935040 514317019 134927 693414397 237684266 559203669 908879626 965644475 240635497 971479438 477060139 519460491 184742140 227633760 692418865 892533510 260847561 398572640 718478232 891606356 635488009 787955657 367578754 800322177 127679901 977486065 44596596 359095580 131785757 559010318 93631772 693198501 212921833 317801085 286602406 952070941 913065754 949941134 657881592 698924791 404515803 981593846 985321801 993195459 548022287 931492898 933120139 981770244 82605989 814323904 102299608 452519870 278165474 457105702 962676853 995637222 43523705 644967182 13726058 977019174 791384181 904363433 363728076 380492499 244916787 402562087 434324393 743293023 163387855 851276765 459953192 948764914 181233611 386019541 584836957 953690730 268633631 321700172 808404043 816151722 704401553 762239626 277900870 318161591 481261846 745224065 629008883 964521338 737288569 994355489 202147495 494101433 664503034 879328734 588268854 639985899 115031059 722931915 414464138 625367686 504455461 571585782 47424035 261129675 971576632 977486897 625891731 814738856 949973548 963491227 569513740 621804524 455899513 871497444 264286154 549701967 744706156 990443822 549992052 695201632 643321613 673276452 6822029 490901482 76290677 132424351 762630205 973993469 664176238 911737641 30573471 344957991 393508470 760388653 469506634 927561850 655721765 709363214 312938073 757964896 195374188 918729692 780158996 856255084 798342333 946662039 951535375 983318580 65089275 119732311 272966576 807256152 655803554 703379134 570290351 776286523 734163510 965062089 183764842 956485526 240830662 869412690 331849695 396200472 68477870 116823687 310494862 687185691 20120079 383638706 18569389 865831143 254561222 263677066 45213770 658053512 201553048 640083604 68792753 916102200 499976634 780908601 418163483 948486276 777398706 853259647 80060217 664982499 857797454 957715194 116709339 616964303 420491007 449643770 160722011 471192787 375714105 743393110 119842296 397722869 287534847 512547951 459157569 778131086 476166354 916736999 708083451 933091886 503420932 544421453 181835159 344211931 871041199 941433570 256251798 474815338 421641149 525965224 48287721 357169499 835568809 888768933 414498619 646381042 46630224 960576732 752306871 884115903 711065630 842020810 622242853 963659831 221841501 592531446 819274130 836707121 199129430 722943501 503186605 721204018 336502729 747589459 129772302 147276113 727208435 746022474 706648516 822018673 248147336 425978982 891609206 999287494 898101300 921589296 553774914 657166361 352305005 878923227 750695787 753047206 348460171 659916687 896479863 931312859 92907266 173791541 297485871 890517345 108642815 895981405 256760716 599247535 619815288 653957616 524472023 724886470 971973820 986725296 347369880 500370011 444746322 900139416 204658030 595526745 107063105 846198262 675564154 977209368 803409455 807746885 732737881 753708332 786758811 838917581 203218068 872001441 925024798 933157731 586245524 907115933 34795093 255642521 342484046 538608109 44042410 811400913 594812334 717181207 247337372 545750176 784392826 948251259 927499946 966822551 460663144 547068475 659584421 724328164 272585964 595100992 954694664 996178827 319361135 575188088 908851676 934852346 138443392 213485862 113397631 239229593 749236726 913935550 116608335 367148069 215537921 911920945 2382147 309550652 49581271 465009376 302251558 510599305 676196604 806341393 212607201 436133373 337594457 612710897 208255109 462055681 580471056 907309642 766870239 803311589 156128119 587964849 818057844 946631897 105460259 400903508 479716945 611225581 197151750 968043344 932887172 998973097 90967421 558469499 129476260 244893572 110975125 781373691 624603870 847746724 932563100 956893515 847996248 929477605 860570464 891853048 970197778 983519801 540601211 562280587 770699498 994850275 391877622 801587798 961113713 972956428 294876687 448977387 899504711 949214669 573869048 723531384 738990618 893840937 8644711 931640243 239445367 310827550 727564801 925476143 332407019 513090583 379608576 772578395 195482295 205466061 380129647 993354655 788744476 878825755 441922879 633986791 972441479 995961934 706509533 735564859 720234554 866864293 68979088 228998125 663024833 995425172 135803224 663946741 932187073 998641681 121171052 823417822 737829176 856973089 137950115 903511733 82408237 404926601 937557308 963192274 880878088 915591775 313621289 751946016 329240390 496242961 506548901 575499218 198654551 367901937 781447636 982636899 945859813 950676802 631503342 941521255 734378625 923953705 410780336 658617355 890770180 956948470 275991990 489894766 463237422 543261587 303783799 702249054 316699714 439569483 246956969 823026956 798040433 929271923 802830299 992438767 312599509 364305493 929947118 933814257 653476663 837243076 517400335 539053659 134751816 470010267 481513012 884492867 198941003 633369005 474448356 700591181 208273625 673513540 603075907 653692488 159446459 793885253 842053207 873191617 437033405 769086302 648048179 690322628 633676955 741852139 856059570 974106016 961157611 966219201 436327895 476260570 846850666 965842229 604708109 915903262 732115949 911775644 580671685 910192290 668911742 807879332 540023079 596619186 856194031 995630369 844023772 989261964 436285553 734076319 414610875 636397764 988360214 993672821 430576030 530812660 978618228 989600461 459469168 570949633 336486902 516775115 99837975 898487342 617420417 938646280 432960110 705736787 966857782 983951920 923388113 950199263 415032943 714224442 862359754 963758275 42210548 653802340 159798664 707416790 268978337 697146770 442429130 620375235 184018502 517122357 884870057 943037144 308307663 715675591 390912856 533198537 630616066 824799613 218568659 622123861 476787127 829745181 506868466 632635169 961317807 964982577 22386500 875643200 685334994 896978474 172908224 428175583 447123957 666256678 747241134 758993218 183294348 440181282 53658231 397970652 765901148 934522654 909545820 993708040 212329454 458406507 416890650 653325968 743802786 777618455 342083450 812013055 697819934 953709400 695512710 839199792 467504666 596498937 396593053 708558422 383659062 548429935 649449297 856962036 366543719 434947300 421386407 810788415 457670196 665674306 442306081 719313870 659623859 773109589 107463280 940147231 573613838 768543494 675824174 758793277 828329482 938284251 106938643 116733970 616037756 978345157 520858477 973554138 153254371 808747382 972413065 988614591 596538734 878278751 376003567 871145937 48950486 180733515 612194996 685227888 758281501 786285542 118610013 803733748 200507046 917713506 773650562 821418256 485193527 596685122 655692503 773162673 185217830 747911304 839641074 861680146 496322359 996665852 755613564 865276350 192940964 992399114 894089922 991828550 710971813 717312879 316600358 895509831 532306072 578513100 233566103 924188512 609576226 943031852 678215182 831407793 73741982 414908445 143785807 362564823 800721619 802089651 13943166 900935704 456919605 794958157 994698305 995114489 935975354 944395230 703119351 821753136 788883402 924976205 480702651 720113895 202922587 535744386 246947088 807509067 11936403 522833022 448999840 666587925 310643740 876068070 16515766 531283551 710761196 877159687 830049976 944052412 905400804 999134099 978981463 996610751 917183607 976559973 508449633 903772984 616795419 747319163 186763818 439519560 212050485 765848074 335806933 747516364 953677570 965477208 668186320 993468266 298166195 419337819 738557303 802820121 343626322 401242820 86053353 168188178 377750814 723878747 37536925 774155359 107444927 827463610 922655968 938772071 515740721 588998897 85204471 392927489 349471512 870690375 735865735 784070161 32205418 833032164 221217900 256275964 577198352 769541488 890065245 919071794 326410652 692876075 529318911 985576806 371128923 411644306 253624779 865913508 412445846 612953022 941779793 986226742 513522764 886756388 40988016 131801248 20852970 519360161 722662553 741131110 582035223 787885987 477228025 519482399 780669136 875943739 991766566 999856415 812052191 920494949 860080981 874424760 803332228 824659346 547435667 559411873 858271311 892997588 357802452 997971431 152900592 648897258 354009782 836948705 729496915 853472268 577133770 922996462 235814579 369134038 502664556 520970667 981767752 988240232 940311947 978106493 104361171 287919152 968160745 973950721 641313489 670447603 127779441 479100594 511799856 658708038 424202034 533950491 202435985 450678180 441409207 799302144 494218821 892508940 680336131 778134747 406982356 915938597 692641 172047497 898055190 925397031 964328218 966352803 427494232 834029830 970076068 979277612 622730016 929513595 929179056 938359537 595410064 996356097 153096013 865964367 626650817 736983987 139909657 471306665 910167088 936779579 556917716 959263573 807932360 825530952 301656354 782250616 361830769 897234603 765673132 765877974 582764943 771827927 571766353 902908284 252066094 519166951 248642964 919777312 634313312 984578032 170777148 951043764 956756075 973981598 225639490 348229558 490238882 966051032 688584230 932773485 511757875 632748351 342104710 800929672 52106737 998798548 434352760 853744329 832192768 928294012 237140473 290457502 750230212 921685179 184986564 500194345 843158052 995035669 423711389 673428488 318303928 496449827 276580128 296652483 629702913 961327461 210771783 485667083 439121402 906270477 140468463 801897440 783194523 970644084 965453958 990896953 12791438 661564970 566827952 576974906 255969125 565339651 474764119 831387407 279826131 865802074 644427296 940260128 849356203 958360059 500093765 606844541 809913554 814990042 540163925 976547176 436388282 528936602 6193239 595097284 470062322 890540446 311161659 784010184 133770165 549784241 833978213 863472108 541909203 916562655 288116722 811993001 945016220 971917218 597078510 755767958 301700920 735741048 827940749 920424891 303649371 341675078 709701601 812192898 706412530 736073223 120538321 148892096 899852170 919119405 589837331 714401353 385680675 541065311 974252018 979009998 599089258 841816197 78377687 738305707 385668443 608719405 506274405 682494256 198575608 496178581 116504150 894716507 627062071 647225745 596288752 822500261 78397165 475430386 322430741 504479870 740841041 816989737 737721821 746786439 120033030 927763972 54052151 758708517 409021346 990408085 502448454 861177132 405387098 479907162 409064951 908445964 871203681 877893825 581550445 995572804 354395393 524098010 203624138 642773050 317334940 429244464 552137979 993850078 405289041 834342977 206681363 211013661 940974211 978899793 707845857 813281596 233755674 621248258 906049841 998867400 451394312 659930673 915561786 962084031 673209739 744282883 232066213 417985649 11912026 368378055 613273272 739257335 126194244 255082099 332937532 863022629 887299154 960471724 589300475 601971257 56399855 370913317 740142092 818255545 169044916 712325638 860452499 952254200 380369161 390715065 285960183 336660577 666489198 782658996 420883123 714659991 849807537 964006247 591985756 691435108 578818215 627789239 896997771 930088140 161912519 533294997 137325669 404695229 498936393 740047864 328083565 993651166 836690188 902854113 575895644 758042768 481572403 878160618 139886385 942972920 980559132 995185145 611582294 735343288 202571360 904489557 780129140 854431266 180878003 645206041 628253862 968432622 221981722 942679088 421480818 624399388 758351266 769017113 896767554 987203626 386289689 609802183 584484099 949351890 522283530 592254707 464419368 640879425 384336284 917649909 305515296 525919566 825067812 893882443 648093876 899730204 514040022 667920630 587307478 759970890 402237922 713828813 801147356 890696413 186510543 288154380 166019491 774177607 633623455 657641941 820241746 987470831 554640775 686217841 112627971 253131828 784231861 935910252 652443398 949610334 679710917 792998909 990658597 994577009 253074978 676512154 408699285 875273114 755492109 821840651 351443815 457511668 94210318 626913548 739761905 909576319 375326190 983250547 740442858 974758171 229220295 459906729 892428422 955891033 307672424 853228578 230886411 237356461 863177364 976338594 310384186 434343022 590827112 741684976 726221365 799761488 825251246 848026975 87275701 453261159 739679913 855287796 574482643 948385855 704169993 754883300 63953024 885213396 834485129 910374419 563529653 872081969 304587969 712440125 194294372 623836133 315446250 941220343 639116575 643893987 115620489 752717628 783121598 909589103 691051770 958590944 445726887 561444557 506932410 795238521 924238568 980712057 668700105 680976160 627908064 792178661 650563497 916811498 827836404 993983298 885058475 935428685 35389511 910741371 865033618 983596447 59229996 236001841 379250731 506265608 28889674 582308627 410264154 715723033 281925153 650235685 362541018 754483920 799536687 824349841 377018482 802886824 592474125 742363490 464055452 635575048 792828616 933008586 962185676 997201687 2009051 787926278 50862580 620583399 571773328 878359586 893270273 960845279 335789963 878151044 401698814 559195703 478555890 518218982 214634379 215614557 196165419 615386964 647188134 960922055 807849468 983850316 571467385 731355890 773321758 848502045 109132895 905745549 477040642 796547196 284346231 489631964 472799452 922611733 937323790 981197116 802113199 895691066 817738301 924462136 541579303 571657210 232356713 792377883 147456055 421236135 804403410 976188289 609447516 815132569 196138101 678485895 239924338 521484022 366002834 695517099 573667667 610886809 690469783 944570491 868683795 963071451 112828191 996795563 360830934 431511008 851818881 886898242 370236825 562956039 688719902 840885886 796333433 857299162 19690948 189950802 715187616 775018336 132567120 336088023 34350825 389640185 83932628 204283250 913025869 919268347 231346065 781976640 839364559 961141865 942621338 951211464 805884275 875093616 315057625 706692334 830251238 918504576 532906364 576873752 740852995 873065569 513843361 979584047 53834495 593929569 938012149 980841781 788660845 974726321 918534960 945470558 498920215 749118807 265537300 758314632 511213370 931887770 993594465 999486090 346529629 980603461 59255823 561094446 388070774 773436151 18366580 468628154 560076328 853652364 874823182 978956911 763449501 917067624 751908224 761237420 634023639 810198836 924927737 979556124 967554027 998775369 500861547 907364400 513152303 597515815 84456231 630119282 845625342 981780153 526715555 932080640 535147723 903304297 389504731 594543469 116212120 321549278 402387109 897510717 179403705 841595831 937747887 986845788 496165161 574588915 115782733 309572317 683303728 815793736 628017816 817586495 174466443 240144115 665316304 678437268 863422466 872127650 461736525 649227931 594976795 874265401 987600072 993531460 669709403 818687797 125188453 148088150 568989743 816087629 136545094 153582372 73103000 543458877 23290862 697954054 996778185 997544605 652709070 873102768 575306512 830068730 500701222 917456807 269130019 878705012 251633773 577650387 145314628 513462881 468115398 631394904 538985971 560806784 235805881 705197104 506523459 869350321 174024872 198231106 281671304 927992227 874099419 874166432 472332889 640173046 157746009 692509952 993209089 994191535 704773095 722687219 223132697 571787029 304817530 667340248 627190057 962202911 974890353 991033939 208072854 247759117 28529113 175184338 873217856 900763704 541377020 834736566 362907827 747085747 242357980 739626075 855600712 860364209 163490407 999161907 390381725 733435470 860713342 967532256 609171837 632763443 683718295 975708011 248535488 784025817 57063194 709556411 549356552 754537902 196847457 449370402 386096452 681026369 861231950 875511982 850268879 945052512 344347101 409172428 419442478 465851922 762181836 801165194 329539982 863391931 988175425 992585286 582394470 649688429 606222015 645541346 268294823 630014176 194708335 780936669 136687800 384191696 709237984 923916270 562727707 952642649 39023135 834835846 89499992 365631342 313103013 903588874 401082956 957618994 101672467 541863069 554199891 625099731 734362925 975071156 501112879 753061614 572926255 728037188 811203844 874788665 484296083 895133087 209452273 291075404 521055426 747944883 357912732 407685874 878884975 977332882 931320574 947093108 29440395 174148652 633179857 940637808 923303499 979392505 543418349 612194460 133449722 573022534 839505607 931170359 444350677 843031739 800891693 875887096 868623398 929328865 144723303 638153524 3690303 721354966 249728299 820654509 529404917 810920771 613325286 727900248 56538560 193803502 694349900 915625428 992620028 998036789 485127544 682305263 288059032 493243523 651749346 781918430 835439697 872500198 605074897 732739199 479031002 928970558 587818900 927175944 523121735 811254368 443987408 542325719 469033903 796897590 676308466 729911882 642517793 991940982 857255142 954490729 965844681 976773835 345214079 888038632 7705823 315449260 706820302 900387462 306955150 476755875 268441086 618064249 800999517 938162823 460229882 465295916 14146697 259748723 525240380 998998883 968474858 980666144 212152555 459016110 892263859 906694746 673197817 815930574 244515740 331341480 205004686 557807633 955597021 973809761 475777475 527430514 82380296 527407400 536964283 784083172 622085300 750357750 929939071 999963762 10787224 582642498 495092963 575526054 886674927 963092506 804346181 882839527 355739672 998600588 400829756 897676851 536735331 936585351 799171933 969272672 955116271 994654225 557876500 848791996 253641272 276004876 36879346 826341996 511641885 894773163 286865158 771298847 72237710 230841243 860593521 971534382 894353063 923296398 169280642 180591764 367285865 991071368 765385756 794914509 485722521 518521057 433259929 546056988 939859491 969834460 868568728 944208298 864544053 954885489 221046242 727488487 664020436 894510662 707902343 986875665 390741959 470374479 584247636 764207232 129061840 809927538 479950193 559931142 304331549 825577946 276182912 412078555 259486450 744967242 233371177 687189313 145632697 961094726 937205461 938145283 760820425 801360441 784888963 964081328 328049466 452295469 426284592 612943966 926644940 948161805 349417909 382058586 782017869 870218778 28575565 184484688 829840852 969623274 1346170 199653291 956707349 957013779 894043422 913414892 184667791 250214621 130330030 246749459 84969816 379633178 808083988 875829277 282221172 624839265 129671414 427624754 549018294 846197305 308586171 572550753 389043644 903726338 628768003 718418449 58438091 216766047 699548351 758955513 908110199 998145806 324779279 545697633 380772232 543208280 912622171 989581551 840378635 970198940 702039754 908750254 322625392 566282263 407979682 528580859 857928523 861467721 526781384 967006687 229751281 532136507 17788832 946286319 803349872 900288695 231649216 542720183 525938834 836492408 542824417 928333708 270131832 956412029 946121151 954331615 988246942 995160780 194712387 971117723 312644148 571975729 901315225 935685314 735727355 736298681 484792184 516420648 174839570 529959218 847359651 976086646 736252012 829068125 449764166 690536052 559313785 996738779 40888196 280236527 292115161 397494159 121695468 626562299 733307321 787651633 884641253 926954617 93993197 991697989 874540627 940813585 152643313 906013383 544337524 764294838 378846239 853301385 203659154 814093363 423484872 611065760 480038932 498263249 362921715 650278947 181895800 383409091 638699577 794635165 650900179 691114470 41610166 229151252 758451020 990775299 530599125 561045149 268504675 990287073 382390740 906363680 893497833 893523227 799026832 903308251 915984096 984754819 458136602 548588029 137420274 502873273 26056456 814454580 806630505 862470642 802207543 925953678 242598085 398286417 882609043 949573353 535577819 886354642 783719556 864965345 316080647 866294089 164999408 281261428 668152411 681832415 556675523 736027207 189072927 905611723 335063976 385799968 33139385 651258271 739949935 931281766 684057040 708678787 629720951 948953496 182539552 766503563 959123753 978806055 363066166 965534967 45697159 275376900 766886869 908821485 727923490 817689319 709701751 980223553 305476145 725283830 857793524 948072716 936452507 966254412 369921247 548288772 563719319 601420112 620801983 691434736 415168094 891675386 958528321 962196246 846484180 995635419 205165017 923601262 479594919 566537721 700404552 950637268 766927345 941165769 68232418 908424170 102976667 732342479 599291284 628879892 364001686 928258900 224475964 618044576 741191202 875848033 575222322 942540402 431488445 797225157 675906934 949307721 168586806 908081284 911301405 994951586 434972385 694303450 47565323 777111077 438735212 787983811 519439764 976970988 568315207 649392417 68277421 126113552 625533100 735964015 726786384 741421442 356908316 445227465 952474060 992590601 234698548 264159818 806963991 854934196 210915133 541203886 936738544 949186116 84910520 832001804 19375318 598288432 955132808 963853961 145402449 802678048 288819125 987457542 666798955 794275121 429047444 926264963 178769393 946541700 302534587 934346166 829674400 876626953 801392478 876637476 463893639 641285285 623664368 860038927 401313768 610620850 614545168 895221108 907603310 964411499 162695421 229677493 842552402 917400117 625927280 851947613 722164480 727681486 563079875 590786922 711061065 777262741 37311866 410876045 165156848 795378509 567213950 818919159 908895511 956177602 896095395 905926776 762722859 980247160 155986921 460461017 881299068 984316834 925052481 939332209 748124997 879233801 965108045 987577589 29222638 90541945 826674719 830373808 349080740 396130508 518427522 850902181 314130786 640768445 663283563 754876153 947809104 976465244 377042351 754826379 906696844 928211108 73008955 922003169 557464472 976684745 963144206 979350423 377020462 969608736 722269874 812422051 821315606 990042990 152233806 513166719 696711424 972138379 925784492 992674937 226353083 823524904 728505065 815965271 209910997 991073975 203978975 762674579 243059165 971150924 881071120 906835829 918731486 998788723 142305904 182403326 230436396 511279115 911424148 952547918 177580154 420274930 359159722 965745137 925079756 994809115 995001329 997695747 158346951 277841218 379714459 963130646 836848906 982563458 119307299 465131988 569137541 755955355 657220276 794627527 799770099 940888106 653625377 766721961 209933503 569201423 858086814 973106429 297563098 420241421 658286739 731639568 354611175 589440650 51440868 878184872 329034349 487113852 883179214 977521571 494670143 855866005 613270279 787603223 766406494 945215678 494772938 970265099 821172621 977066306 259592428 497164472 762648642 835206119 558273356 750804218 790554684 994343719 891902208 926218363 9988929 828983243 966550763 981248579 952226194 960673522 268363397 637404912 479714836 833654165 896425600 980448135 330979650 640859698 844305976 937538175 62257621 604667801 978033624 980584413 134861122 710245779 589336257 984928507 224904365 760636073 230987397 798763926 463485816 600486602 688015153 889290572 879715628 879872171 108351811 909030795 52750724 841280947 404243789 612221266 787848412 844811471 43385966 829568037 631574800 654491689 116261389 908834565 759866611 830599497 449387738 907090774 980392425 996292626 710835850 991841743 677106033 834242063 494803544 616046126 146572773 218155198 780648429 877984543 590103253 782175762 53499867 279615460 25381817 371551517 627457442 708410921 495440273 590059634 967163296 992578371 988187887 991793385 838517193 968306169 263608675 463026451 663697213 782048822 372364489 662072960 436062048 775657331 319913674 320213547 706273111 714868010 871370429 913091114 979522395 994110369 592880246 978093772 905574302 961060448 265573135 665211570 119195274 793458515 825425705 871339727 460057560 650106338 992595316 994645996 977670652 980286568 328107668 697148163 686243454 814089485 500076125 610555476 94452627 804308623 950636554 958115168 827518138 979687501 43979372 703581205 130080122 263665717 691292323 935579042 527596034 551934146 713802839 861878854 200612892 263365987 59290168 76881604 184147794 461327274 72452660 557308923 741765196 917447731 971877132 981720856 705694238 865548364 881094557 948638537 524050322 674443438 398945880 561736295 732930013 818947195 934483085 999900609 387473074 640126432 215145132 693249135 745251611 817757530 146189228 946561065 654134197 844262525 59114231 526956385 209739732 455020134 537793423 692788666 637655127 704410214 517226464 676875372 447587320 804136756 854164505 894425337 180887279 181081993 350451097 883460406 498028259 605813131 754553718 854154787 411998832 537852997 342289260 599882186 202220200 837262688 128713791 541965577 53652938 592684322 215649411 600656329 878102554 979444731 376446584 715268943 511986462 589559052 163252268 410985531 323171858 953921168 427194944 461671312 939903999 992068382 352679999 867425010 519199989 881392116 389647847 795094207 286425361 747783856 170409029 766659322 760931938 990414618 115479 600635427 323205492 816603941 829527010 895416769 247909353 921624811 244830848 496053000 270293730 980712180 849770052 851832279 629187303 786847489 546890623 582088975 880756767 960704298 500757 403440296 118247079 749656866 206359087 863831135 994739415 998081202 308695238 427584512 623215376 845091327 459386088 969176087 214672575 582723873 234108100 775987892 920687840 989375320 449504494 457009440 931159087 984881981 616597690 952731723 401824490 519279542 620696958 953772944 411083273 991288778 802329497 965830870 691880820 857074257 943818031 978111022 977728910 994937897 369083144 950884040 387417702 674131435 11040987 253783208 690735620 761559223 882218235 888754574 158074574 246600897 918576069 962700813 314673711 612481287 310620363 340331305 847897205 999974216 369591931 527204661 260737418 526506889 799635533 823867698 598531301 722436250 417827163 431719313 936006373 966432047 191381267 692415596 948201162 993018680 556773866 595834488 745987202 786070188 113663413 513100667 881821769 973143948 668836523 886500225 646794187 885249535 981744096 994528204 729519215 897213358 365169375 528600458 436268290 691974441 283615344 543019724 497522041 901418137 583847589 672219439 705435379 997114145 36740113 843297295 315049734 973550785 393614906 551634990 18765344 458823118 533386871 536271079 575336590 968024658 86750162 654438319 75106396 556791989 774223388 930947571 631831379 820804892 839895748 931236152 244542871 451514689 244336257 586941799 522114141 541721718 79537217 203451437 244412039 389975758 124056647 567343530 802220460 841677684 681085712 695356184 387150298 861879938 683998826 786617543 535933260 601074320 927668866 949397327 341347894 627192652 199757866 995568569 356376188 361554423 713925730 931910509 982705971 984448114 828013712 923536915 459873635 986060662 665961730 994964090 686977844 916146523 292565368 457102062 566669806 851663570 752151518 936159885 280118820 929324485 118546642 300448397 558376216 563682245 475880404 530040573 392799786 502942894 421598135 573196769 489173530 912993117 622611128 680883687 161096131 598154829 380905543 552634527 906312861 986430968 182990110 892982354 887652419 960303870 892580980 963970168 809818056 827235290 247361273 781812657 328351423 558337010 113130173 281905444 208495657 351647353 852688338 963502288 954743133 956987813 318872127 398887090 452432296 548761131 415277173 757566947 392626580 970913929 236873857 840203580 464239877 765320909 450293816 513429693 231370365 857290420 806467814 845356923 555580024 611626350 887091365 989551117 483934335 693436298 61877717 451468705 207045083 680980339 344653787 734779239 202116915 874598349 991443298 994569907 330956997 555121271 192220568 937430925 956843534 980942177 140397488 694349309 10106682 660285690 235944939 867366773 204217200 235397392 203600242 844518930 772142206 779726314 804130422 996142640 869275524 955330274 970416873 974737249 701361793 943333421 877107940 922324330 863637630 992964412 113086482 152949814 186224541 782980924 138335153 522101125 709808608 771453970 733877511 963328504 22226232 924602531 252706726 713663327 799162209 832182972 429939679 909740092 96352561 163156182 62917858 614202605 555515208 953712290 331543127 973326981 122616967 602406757 814723825 891203284 72809610 846185302 440725732 834663799 371783725 921803093 966517217 984321111 919153154 922512974 540080930 617900833 99981054 978874244 991738956 994735575 628536170 691727804 83806140 260104010 607978048 777004696 170123447 448342484 548561871 603382129 888641119 931012141 920916912 980441783 726807325 856607638 54574013 498575886 108525861 757058305 661942815 898138100 309908602 529559032 147533247 389956701 893652604 930354204 814771297 922704245 183223872 475247968 930171753 980937653 585147361 921019755 864189291 918584550 867111933 936455864 158879473 445111892 668458299 930574002 303832739 477909024 514113701 933612678 612691222 839806938 25364386 927430899 565678138 832537154 232476895 481797920 126753294 809449919 486163432 906964768 877135899 889860909 866357704 974591796 659411268 946111631 857307566 974295593 549146785 959847856 810712861 945687087 726452031 863675353 362265064 396576181 293908646 395352768 330024794 882540205 718294226 847892584 306855924 714099011 529646626 931899462 575724234 934270542 129693858 873542432 522872639 576607315 40221697 705859827 490366981 575497281 673555802 724501408 954608097 987736784 889105005 953789427 493539434 519562298 443539303 717147991 516990426 720251506 650259205 871027786 336529184 767531522 238148264 764164141 893435056 990952011 10789666 104630017 304451714 401796384 668429915 718969438 815350667 986665815 339791680 433748257 466640767 980147165 616351266 890496721 521839497 695799045 728348077 749728319 440066645 927967726 76454921 169143209 240418640 992714355 67131959 145525329 757291523 812896747 946199948 978388652 631675130 893311446 168102281 610276329 498047719 571618599 675700293 927618890 120720067 588578061 582837247 875850144 51072035 702069380 972839796 985080513 733803104 893978546 657206605 697438998 298013942 727701591 325779251 680930813 181715069 351750329 376076263 523572833 916279982 992392632 38581669 281976147 259797224 885304817 430098188 953567899 441234794 847614142 915296996 935064648 273016113 820957742 981686502 991897948 824217287 906793000 38665492 468156011 385972528 705894279 220574827 980149724 345509243 629080537 473541858 479317927 90078705 435047277 908180043 961224132 181927427 450075528 478993576 569634017 201055574 710685352 47007863 869912546 153006563 682271439 150134727 792940605 148762877 738397841 731855104 931923397 823201407 882407798 162574837 660720822 541539972 769479291 737762050 837800920 571356016 666561507 566605296 594189509 80604689 816557756 928655337 957354178 454248561 799236496 693364314 916949225 710101410 780662834 445577891 617723617 249842163 481448553 302570981 897151067 31277930 854436426 172394271 800357173 967194885 985525222 321138000 852946154 350669660 481271369 315579844 944513026 356418702 607403728 331217063 381388064 566062204 954339327 499174173 918500848 171959880 392380426 853297400 857149766 800362949 988068438 529319028 608125548 144631196 211761268 632169794 956813218 853423599 856903848 482266593 874515653 207575060 580026045 882849800 989556169 159524240 309818099 397255210 763663416 198878071 234325192 894283437 952253176 701850149 737301898 171951313 978476503 792826238 965337277 578273365 798382423 480623123 873157039 855213312 868276376 773590646 925452182 522351375 558838027 611123500 868994318 725644750 974677677 475778078 637446804 676808014 915699520 335296795 411445681 239111078 301580113 129888132 825053450 133486790 239551765 573013683 857621449 661248224 893797680 187122668 472717124 878866137 911138546 897699815 970689125 522586054 674441969 990436094 998545057 942737739 997259073 837192746 988295274 609568453 752535660 894218874 967392716 475282540 740050624 862647170 940112610 531877321 816793102 882470978 980639426 412305977 788496863 256644803 661080692 35608727 892030618 843887138 955718577 935393867 974410863 72827316 342005452 224298722 499652987 141670095 863422039 251248677 741999830 75507204 998332720 612907955 780037465 572292565 681642449 967312415 988103295 517545047 888181806 851830535 959721158 199896843 752194113 949489958 966437340 73689723 667558672 906132827 987923725 114686576 129297494 958513307 959356212 688829788 909605284 40898763 708585224 339370716 405861408 604738354 648440698 887299678 892737742 853723614 897460542 410157989 598296887 592854176 714591359 872499547 991638868 304289374 769055375 115148167 583642893 85591086 219631438 286909261 363802580 685836329 968069613 632022360 721839105 389515573 988673759 266795095 584147434 459671679 494644735 750144935 799280163 447635255 710758289 411306498 769233113 421687768 925184996 351228140 990356041 569555579 765025158 234032446 372035666 25742590 614805746 471393350 960418682 490157492 640937999 233688622 411316092 730276886 753465344 390666189 709891671 556241211 561538015 405478263 820835406 920330482 958756161 433982184 841206294 913186556 999983579 413650856 430790463 709815822 733184011 302094032 393900380 480166724 984904646 637218116 784731338 713745303 786910591 294118602 325867318 382573732 918218554 524016111 560351720 418836738 769027284 175061769 996770413 187527021 729838578 67352108 514603458 236193615 374123076 183337679 623196414 776929339 963485844 738467188 988641863 323055221 921460642 519481048 874420129 961713910 974654721 587541674 820443202 256358524 746511205 579045503 885082018 890543044 942842179 491361172 785773569 202087189 209689600 860838249 905021639 233489503 495343980 39931760 464829660 577320875 900944333 806120204 830185216 359298716 811053519 447216986 529172855 512615989 675273804 817126509 850923123 47581212 370746506 723041666 902386491 74909073 556263118 338445388 395751984 131603195 676494193 457062056 978523613 85959234 399263800 544295214 910044741 169585292 219391370 717217370 800740510 851003932 866951230 849262544 859295316 982257031 999687159 519415827 613709772 303764563 597447797 689469273 926003190 197556766 675454874 815006491 991664143 282628010 946739969 873404658 967961204 830977193 985435859 903738416 956579783 503757391 550275756 900012673 902443522 652923163 736487479 767429843 773374320 224860773 987881301 747542332 915136201 212584354 522212916 479850399 850613406 933504219 946479871 791727278 815563366 341940322 892728775 839405197 979763004 352113522 479547911 288133277 409801677 899776810 948703268 945072020 986109940 815981608 862396616 874236316 997656469 589763896 879281991 832636489 882136360 216447604 520827969 130005018 172539294 437522646 961036901 649265373 737572345 261944687 392585126 804070043 809453101 907582179 999089315 657857543 811281784 877032623 879541679 182294401 702034037 262902142 840202438 217669448 818342412 905743759 976950687 39865748 842364474 806596323 898760432 665734996 907167938 872400345 974124096 65109451 587984566 441850062 511256792 407849809 845763406 75287676 459562436 463731083 549317363 151838400 609646638 891035498 983386699 261407060 411132601 712599310 866872798 834180235 984151806 4342608 720339532 651083464 889792696 110678156 454677386 881549511 976348293 649411437 904493147 98692785 595783192 556097591 929011789 44180028 953964052 188570220 844059807 38622649 490389313 765951664 920053175 449401448 711006404 347246019 663321382 769408233 883814211 340548759 352972371 986516602 988636374 599002238 981289707 400176820 418034131 571459367 759658923 493034359 500602109 208124407 606338748 749427742 981493340 976077061 978409410 570897052 771497648 761089752 987817932 426331737 867119899 446650571 685186530 201793480 726713948 239545125 564747477 498314422 839256439 379226605 677942669 560292628 816042272 453715850 571692374 295521754 547253920 784446474 951351559 917759494 978062440 74262036 899227713 168940919 707312687 309111970 730262523 693771049 980761476 766624637 997994273 597542443 804863647 922804668 938616621 173710660 925280294 801552775 973110073 654056958 673244502 568355003 624475555 719375697 904216013 983498881 984440692 301372653 335532626 73117624 208576276 151246572 508920294 566050497 948238076 267436812 480995862 450150636 479699688 619212528 723630318 704730379 956225012 597687909 808692256 526519669 838032079 228777892 927068646 450495947 733121459 425851833 474053015 134973851 268074465 975370439 976982636 650617242 657747506 977456599 990692633 63482448 686185712 162953216 905879927 683116865 886260093 561357912 663694836 247424461 932996352 78906882 130613221 560858933 839675367 663579101 899409027 547352052 964949115 812733169 909621984 92473959 353145249 699979540 758483594 485575596 677773860 611543314 936181301 571763832 691548753 722413009 997349348 737196907 995140263 979663761 990759612 895685126 929887572 887288073 918798471 295962906 872737707 607458121 870235253 306798641 464403875 868493165 878900709 106189966 359173278 730302346 767299287 222969446 851038382 127130664 189349461 187614005 283619331 190730731 974190503 54574727 983095682 572210276 839882075 958067475 974954290 840644673 994342078 518218583 859370403 202559771 214696508 326836350 434998563 697416369 859646073 797148550 827719025 957767793 982161950 709339136 784949440 122379787 238204668 357824439 998370404 531155576 661665689 709499777 835618371 333274435 729167286 34511918 745785631 149456217 900007232 435793994 626858682 614103212 643360379 406958763 906099538 642312212 947298139 141338549 238219892 780328451 867145630 322325831 478249310 320162508 750339379 138227989 407174041 440752419 754981136 847862461 890544618 720822085 818345311 22089358 377499921 614391815 980714418 463451086 934886764 7961539 716462353 682956504 807777964 1642704 954500181 596850854 737986723 210990096 370697899 482490887 584834575 685736286 790206056 754205966 800707228 634003568 698962216 441196040 556765918 903115644 964926444 211565179 295497483 896786119 947652220 937512634 952536095 856104835 933729764 329442317 841230473 933063856 975527965 213332485 215571924 406832332 741090129 539782890 882841958 688857790 819159262 214228587 398028144 49230753 453837149 409007783 494137990 78586754 157162681 838287217 933187986 848912432 899284889 635440251 979051103 403066322 931474338 628921366 951721187 554662288 817073329 618313274 935082450 93569407 963139187 208996724 350540511 145349962 831124984 474188193 959006890 169216458 385498861 503959627 806015453 293494710 474986901 174416656 852844675 131664254 995350126 68708555 949722735 823223463 952022963 640034286 775309884 644509021 782651015 646303251 813381835 709571730 948877198 413341872 886366948 935523335 979497681 351773818 809597702 260077740 968947057 115517094 915679712 959645673 960877399 595233733 922018601 45683534 333292238 544789249 820377909 464499042 736301728 578102496 977716879 616162703 650565657 313647031 540558695 650059328 919282741 96788175 992485109 782778932 798823946 854008835 854681694 433517614 670607981 452989126 712699609 191142631 331260277 740228053 929894881 632945222 810492551 425550260 663387301 463427416 642440232 387063891 730940651 948572752 956721282 949186252 965196009 156241807 916049700 833690801 974529571 875670537 948308087 246021417 422063975 695758922 769788927 338006062 926889639 764762014 962506714 220793354 368569446 251994639 500047474 314587398 412431145 590049778 711057551 293075867 962064507 876088503 913781368 919633794 921096584 188774043 734360537 262761927 437475303 697850832 729900518 562661366 922036619 753606765 817916493 133591143 406447666 329587385 675579820 196195299 453236222 431147131 702064628 992914567 993836092 311586397 794105641 257136719 855605345 202408572 674594468 694713842 888996234 825902499 873831938 231338156 585777811 732567865 887615486 70425422 185078411 349380635 457370086 62814422 964318145 803005865 987644432 871692009 977721626 827425139 916314117 189498409 452179780 640179696 928319729 521675627 673891496 702417731 706958468 764071370 994137732 305250285 537869575 724347973 743001241 598822750 858578528 714466254 824542097 859281220 980344526 418660436 582908197 933893937 937966743 122783063 725450726 337378250 520480691 310989625 941513008 912221877 924894493 850185222 950763242 873958686 906780649 433271533 761122478 433101329 565919235 167460114 659579812 43184557 371187472 2731582 513297962 322617419 468569143 607396712 942291862 234439126 406771719 972765648 973299283 654750199 840768903 689978590 769819036 185452044 800239676 951785429 997500279 647061821 845312560 743868241 807899714 928275994 977928791 111047996 659606255 978470607 978899019 541203371 945366720 693487340 695049660 733757125 770150333 583511760 902626492 878340888 972090211 168858003 714201674 623421128 887101743 915384821 963570724 136191185 917249352 751429825 903890443 302996769 699232036 811961966 987453326 3484818 787427244 615309754 724883797 453212265 523688078 425573979 819645602 31951467 504586565 636264077 728148429 300523105 635708095 865052533 967310340 40336272 89881909 535238695 539409361 462040717 497395874 851316930 884762174 207907126 586005160 23957425 758765157 293034405 501638971 761495119 947427828 630662862 643432792 426982366 836018679 125476691 126545266 835377687 842343326 597932468 920760894 21355119 490318497 874441312 874529017 522929943 988459535 837766411 931370094 923502495 946450952 661547452 871683135 566838088 699216013 548582629 727286393 391535496 646863481 542505148 998898713 694023723 767696029 778011658 936069395 698809728 934308348 998996912 999162741 719974592 909505219 732074812 926695591 881922643 975162917 263205036 768229156 220044356 677482381 757672878 914177900 113955723 714257785 301859260 801968822 442368211 951439676 459080448 649421339 734678636 781971280 993184738 998841163 897110238 957074657 437318449 743746430 541811528 707976494 292728355 816515972 982036837 985568046 900469943 942842646 713527188 930766092 688780163 857002498 405069656 977646285 697935146 947710098 420029673 680673800 621028278 789362595 880370091 984233100 229898268 514284273 427850961 559787257 457973176 494279639 390772694 811715218 526705544 901635847 929018605 930522990 211970739 449067144 825471417 987249674 797862213 933020111 866817104 982244883 201988940 462664117 131596625 897577658 377676940 467141003 145835236 540261301 798193340 932786729 804073777 893334693 26694941 88729747 486081745 626483127 739379079 891413014 44964501 593080397 264662680 468966046 842723011 922614706 454907401 583674932 541232290 921655718 956874771 957334860 141748756 558703841 258835363 376210908 188295530 818163958 776038779 900331182 801904055 883811006 672718132 759447380 129300094 970729207 636274906 655400112 364776055 600676136 536787248 569273261 820963754 932191145 869186915 883637233 824156862 906752086 691677400 998158550 433010226 905081465 412609626 890069115 843246112 867819995 965891386 972645839 141606260 447933201 597885283 930868576 989151324 995179069 152048148 629620545 280673869 691667207 824234499 975498855 315734123 725412527 724351235 762652530 631635619 895949998 976422669 990764472 282597050 817817289 318603431 488974415 132572773 557735621 715141513 924044448 17125704 563624547 573120533 858248138 180540869 856718350 823607212 968279542 950691972 996580229 321408317 597823925 315176460 922617141 614039301 902732738 586727847 921220076 594988267 998821219 124336606 352152806 493184799 815062068 83988616 819708222 374609672 529670631 508703414 907414388 758502322 784284531 586155772 845782662 833767914 887730000 559365969 733108731 410865755 958155057 296581749 464950883 723155307 952522696 105286567 427785777 61512568 195896658 189576050 591938372 933846051 958650201 525278636 783124451 530125006 939635479 875611857 929512561 318148207 805226829 76037440 309258086 129984764 744109885 860097654 968753901 886435393 934324993 195867835 809434152 43636199 636454968 991098086 997890713 450051527 570788985 340131293 945830778 168705986 568167540 806734621 908824643 551287992 940000288 682475922 803472222 235061101 626245214 918230869 984895916 347594799 685517284 195409068 803199300 111786895 682400496 847162918 870630779 352014389 574418244 238486800 343968858 800031992 971262245 244973644 448745687 513663896 822823398 73786085 642117193 670624177 763162148 265884436 561746659 504737089 579209036 976778118 981851295 461466044 837710776 429439490 743771260 207730743 631344820 372381524 950499069 95942634 481354317 491882781 723064992 91710023 822672185 923894528 977107585 628346340 681229417 567148095 957683229 391712487 801624267 97959992 652060080 496832601 785967729 162969816 979650755 133284440 941798353 272775020 453420465 55031633 425020596 317423922 915979597 827634509 961679181 282154929 690772531 890335194 950756789 593164663 929440530 95662483 404804458 874067402 921056558 627400205 998339602 873393228 903253190 307649995 576884177 146209441 761237856 57219192 376864492 882694941 950630568 613352604 801698416 206737761 611611537 390583093 644699873 426765731 865193811 295077368 971166155 770886203 819962733 648541852 751901918 766571945 875739831 986008777 991185824 908069715 924121176 468596254 647983665 539812120 698806720 308034705 759673844 442403453 541832843 855334615 913015118 796515872 897305578 961357923 968798161 888781069 955011110 45391719 651700471 359380223 967497456 804452409 850868382 635705287 644964315 868060404 971951634 707792164 833449570 561182342 974226209 761751662 890049958 968017462 975868724 614416681 781973054 790250927 982340741 860842751 979685880 727846616 887610914 738618849 886102540 725316848 893464727 618686414 630760467 771418070 996439270 801229687 899908741 650467774 719100177 54877300 816830644 789912918 883291665 681103312 801263046 216622383 636871080 705906911 788339806 430763727 645136484 712020408 926942352 996442695 999789439 316672119 654442917 439395824 849127264 115121847 338888265 365617061 511876004 293659827 959231622 296744935 968307713 791130009 991519121 359490112 799610558 772959744 837819727 588485389 913426433 509514848 583816790 278395778 782991889 976945487 999139181 111772382 420310442 670270699 958648675 137892110 660202596 772077497 836719120 717577776 993776975 69655972 788918739 536102643 569322025 512652576 608987505 191141650 278991296 285859321 680702090 822127249 980886835 190742019 733375474 700276628 934656659 632988779 921994606 570813632 581324117 184477222 838458744 307460698 418725516 296156500 784739293 659498864 879512328 192963977 497862824 615274960 747611298 680912286 720429676 926680803 966256709 694657623 718294383 1810622 557467662 840533765 890846552 952519060 971061048 261685696 306043720 495654205 571390558 123090139 307704433 723500128 882550823 13802981 214178603 6089951 73152135 314797906 388484988 17953023 236005732 496996550 816056764 631747538 904517268 259867661 490893668 910257844 963445800 380029176 838294321 896325619 952822216 830499806 877955899 174555515 773152129 482890108 764867491 540994693 670988005 656657789 689142798 264205238 765909112 732201308 778372073 761936105 978399098 38565583 67577675 628654683 696191609 840717989 901371120 785505822 792118312 673022166 776003122 451504926 672000295 988782879 999128899 447299783 907721435 988887621 991602189 306943146 568879209 59080027 229494196 1266747 763699720 698708871 914683456 888606136 976046680 105834560 231641286 563782860 944086812 175997986 877185855 250401643 536990222 881569598 938311231 260431419 351409385 766088866 840242595 751407789 955908171 545321235 620226532 746842968 919133761 860888927 939306727 544760816 966457706 148373623 611719663 671869463 697716435 512550090 796286447 347681950 848892513 60814962 672111355 407978529 927603511 66187926 541594935 123770927 291524637 939209895 968728904 384958555 459954952 690126106 916827929 458403886 637212754 693351 533075574 804141284 895129668 798812023 988804300 908243800 995945749 28329317 388435281 847756565 986629501 491565901 512297468 734051684 993337877 320395781 344320831 518537496 799908348 751177706 882189618 556643085 793417876 816106120 992615423 774980637 925034646 754526833 923299900 204708408 884351661 409383568 796049644 72949416 375498406 415895687 593506094 489159347 634067049 381780784 514220145 38315090 831435279 848165261 851424213 920735448 982251400 616180745 893344436 291153778 874294868 973752771 997537368 162153810 975411168 321111324 830469521 20395862 453297820 143810189 704690167 767183958 961878616 795576492 980020672 185658055 914360494 476119021 629330886 382751889 574186980 17870375 619906794 291299961 513420655 908825225 921592545 351423657 598897847 95421063 675580140 554556240 580136469 976536535 977120917 623795116 654181733 549722429 876144559 603184242 980154716 285128762 591185464 668112905 937840325 516742865 733923400 828737760 952064399 587196151 595127424 221605705 998195183 402649477 437884517 267001454 965009399 182307307 505327337 160597532 815946175 535223100 864337692 498796046 926983068 365295643 997745290 949586387 992657007 500734254 707119958 723941846 837122116 317819862 328421694 966355665 977800261 176720291 315124080 252366844 564777679 142161299 980188530 856801512 956309937 670909255 728158021 878721804 930182067 185820260 821083793 902898042 942897409 474875779 619355879 846882794 973516909 435405629 753070263 547137468 657236256 803125090 892171210 567862801 626430377 759292907 807625401 425423938 561375784 735458844 818724123 946235643 968629000 541331326 588450004 45772331 591737102 905562349 954240006 787980037 937808893 534281168 646917466 703263324 915670534 721652576 741552513 94635841 157312707 56953102 625951778 790831839 924916265 722754933 910927898 747057676 959887814 746707552 846797628 913376395 990050800 792295727 930478839 896631513 906670435 722551501 750561543 127539484 808013918 890097414 943669875 668830875 954826456 816714987 817751807 417550460 661880739 36912487 865147521 682753418 788181852 768661231 953464681 293603660 628485924 119657161 255523434 571454802 884210000 705063810 947063076 852063673 909499947 784309164 933512019 462084425 627804815 356703217 830762849 99149017 456107522 805852931 861878426 237996803 586906023 600317958 700103942 523575515 548257677 273038037 436073324 100227701 958335022 462115664 558567860 416440559 570217768 837641553 961960353 59233129 638361609 777692879 794554558 390567506 810617723 191757884 469982600 251749714 544856515 693160570 705924224 405303306 727654970 231843142 583706830 601914329 932444738 299286839 564471045 904337527 920630838 846428385 965430658 227424216 880616560 666477416 830622136 129014395 465379318 307244704 761226198 146269194 806661336 975686957 992509991 965887591 974290700 315696129 820492181 976156489 989351167 475694071 553628524 61913420 573105092 343113170 626867317 26589729 665236015 118720707 586327025 198226047 457637219 944238178 999412023 111452544 485146315 293848416 865888993 836471167 993409201 744301689 952104263 928237681 995015946 954865930 971776369 204010972 549926723 400520070 891020308 758543334 763955232 197348241 656217252 392407404 975747195 945666088 963122836 429425460 430362670 475635502 909865858 769988845 861498955 666081313 712012391 854921499 980696326 574333020 776437057 779298397 808951083 757030258 849618274 547614108 662459170 860419356 894866945 443394117 604558256 449062475 847418058 196688588 277414392 125517737 691896582 740814643 942606984 685959157 785214446 379558737 491998164 962986086 994856896 452579721 943892123 325090574 703124470 384643532 434469299 584718450 795909031 478702189 754739812 207658695 960110128 974725086 974821814 660770760 970798931 865074203 964264984 887356499 977832017 403269654 703113650 899944706 952151736 249669129 359957243 844971853 901619669 923982504 950497218 34602402 105551541 19021672 215415937 357772803 953563827 292456125 431617743 798908997 821409455 931724012 978707841 712320463 974222889 907783979 961277490 63712472 176994750 437349508 775019312 449618350 608090234 307376468 971216884 315607915 938343883 380419095 409943463 177108876 542924157 21492014 561354232 11055758 529695038 968251573 979697856 892008119 981726672 622487303 934971765 443659907 830480291 960102636 989463901 159957174 427455722 840092275 957103070 823198535 942484560 748258665 996874864 882318367 906468368 306235502 622168040 633722938 771319746 117229929 251215215 75860071 146173775 738140320 830308841 490701798 853501070 8848346 420083625 526938635 607993210 790893444 826913650 75284421 584469363 64925403 705577238 85344234 534963087 83236160 808802124 930230494 967714343 149887371 912522858 99057244 203929398 604736576 806861998 351746904 859918312 952674703 995283460 475301580 979344278 41899064 331938043 191454782 593180291 546123069 752239902 670990964 810578709 552145216 922468285 447595725 890942980 938249182 974105900 60950674 302570067 102905966 810813996 649961877 975621768 182861039 242142327 780352469 809041510 512790272 861823516 958506640 988843835 671183051 713192545 835766836 914722475 178637267 911101718 5866831 66796383 982500303 997988029 588667765 922494131 980347184 990480186 902514309 955219447 334599450 950640977 501845517 733119190 752636855 931860412 371833240 402190353 105878749 592714252 646446687 895200849 228004272 760039201 114060917 492222978 871707069 971785416 237145484 907208694 370446897 979725469 233808190 656841415 281966530 783436978 678761729 831477796 163734918 358378516 952901183 975146212 637977921 642868487 252789896 460305490 607601178 991670513 581846512 780268280 604498337 881093867 730053381 895813184 336989391 990135568 935235921 998302794 20179874 510859793 844350580 859766076 649117568 980441416 222561346 506363820 51323699 905694647 459416134 717686668 292506312 938253286 103614308 935530360 672833690 675786238 7207504 112179265 586207018 964647363 439583196 944865122 73159417 129042141 888587811 912144406 823638994 926650518 707205549 742804208 767262695 904210702 649133207 960437058 357940877 871577243 246076768 801556694 802683801 804192373 368972061 575318525 770429732 848456333 849927365 917876337 875446545 943462114 760059478 881546915 226183491 228732231 96309166 285135264 520070175 906801423 294981532 446168231 37773186 479536235 274051648 772675818 189727617 742954043 129728541 216590868 694580447 884710211 888524859 926359826 365549993 895069034 633663815 903566831 53701206 506034739 745614286 915493247 942818059 975672786 880032432 910171914 951998067 972828506 475524367 826001047 375567575 877497849 59830728 111038091 262790248 569363238 642231885 876513005 423472906 858212737 345129202 916251771 693474231 754636290 954686383 967460908 581652513 617818387 197834903 772939900 391123385 438802052 839841730 844965902 673115144 990530196 242804912 808417261 95446457 960196923 147734055 625523383 756901234 980725557 725590261 809402073 656232049 854047520 130918496 222368321 771412860 786595386 724029103 814460036 251209017 622513255 387431928 823623358 269470017 575125730 296385296 652729102 413366951 695836125 687194409 994929646 453762882 465162025 837177732 928204159 185040557 963492296 212539648 667696629 484378923 716590855 65798380 297066373 388162807 827496814 441748962 665240288 351331783 566125077 270732457 867416717 125818558 671011721 15966705 638740414 439501573 825226500 517091344 615406701 523596 868243724 626003471 846035672 517032028 771502825 754338696 793571071 166953340 869679361 825450195 910611462 178147410 728801251 604901139 828946052 293459646 630779413 553456990 774169059 102604408 143267615 382861826 640365666 390298954 653574254 320135843 468407576 888189887 948018338 311715623 671375583 304467702 661547822 924486741 972435421 142044024 497680999 641202601 691402932 560857707 780779550 710127346 887106357 251500506 302788350 976723886 982461462 993708926 997624761 534552774 842521798 729057868 925195480 162603517 563998492 329164945 754939596 73717438 499130361 201841669 441265182 278265178 526052353 34505866 496262069 13384341 440483483 327618937 927703843 731471962 908077402 873816815 902404433 34193 618540731 852820966 955646185 156095935 441615699 439624924 925911904 428512712 609046368 534001496 784144086 164435471 344764540 833655141 899647740 979288443 998116414 518847914 732098900 339645132 990059363 751271585 933603773 563501778 564765754 459194832 639472734 557295502 978183924 910864899 953958238 55882839 441188666 972015725 999033602 713089788 879249932 541544342 653205297 330205154 567669056 598065023 825358417 381099450 781870491 131576293 705402566 364193503 395458034 506262808 893263862 373469321 497789584 650988182 729468230 672589282 693374740 414561513 416177954 446067949 639709259 703964353 712512655 462533784 846230773 22323091 240166301 677077501 971623269 130916627 798097453 359820414 734047965 271288871 836673904 817350758 926299574 128428701 377098396 423361647 824554973 768541966 778324645 477702098 662369145 89017270 323612984 543952177 890997154 222484915 522173580 390040042 445146311 887080534 957179694 198349770 417308550 577092411 719349009 919891607 985507753 37758256 447393615 910273784 981375888 547277284 749297222 81925243 425258473 229039352 976430889 989581306 997962317 239926501 314049032 907453342 932388716 396555714 411737142 251326036 580252809 723473834 873136628 808559632 831051077 368115980 745744277 484911410 580033479 223339306 651125079 990877707 998915449 94947935 870215220 931091404 948555991 858688906 902127039 926765068 976171945 211151646 544591512 223814185 265588427 90420434 296080213 744791704 839711535 267584017 585406353 206500007 865224380 90841843 436732149 364707931 570602119 897507816 967114395 336411227 459397141 382963532 868985847 476528954 737314467 980231373 999175303 771630190 850046976 55995749 785030715 191978447 634243306 492865701 724450455 786181554 965258170 90356191 787660038 20492310 327952439 175552770 458943936 426368492 745175443 663174844 705491120 425564092 522488816 250170091 273207101 550551242 552725554 713231805 869282508 407357236 836246044 984114367 997526271 586089503 935956249 290089567 942331633 365076497 836414820 766711779 876845146 513006754 784359077 911996069 929325653 8624958 862512993 984039033 987347651 461646347 871964610 115835850 273810634 802192974 835406668 230198985 480260740 955692608 988579884 572591208 681040658 85221615 584505230 754395976 974242506 706033677 714286452 967111446 969446807 204353553 491053908 544197785 568793435 28337341 849192117 211880634 925164347 113292397 512457504 300909034 503585890 516396557 950116669 84668363 805782652 119916867 406007119 399116011 635416368 779621616 985368271 207420163 417308814 577663693 856932055 322077342 846960224 784146089 944443014 270119257 282211449 57969480 298747743 380285402 541875811 416257009 980477597 658936659 857767693 3379297 538787960 533315421 706154198 80532002 547350654 586442042 690423463 84975243 906390856 166462090 621026562 641289088 719159332 814372226 892337102 472174604 869889667 92503252 696403463 769005295 830495460 101049856 540784772 781276960 968106504 961041802 988386616 997386734 998716287 705155065 720830390 663353429 689770610 514795037 997967024 706199980 925732769 922366784 978737632 484033775 980258689 167828707 262440554 162839679 799819321 429185062 636326146 95004735 575630045 836272934 909892611 958367260 976140352 870969411 956313830 135245024 841846454 985354850 987784610 984957931 987064316 38233763 106566362 407196084 606247907 584577462 934753265 34639394 330690491 359246107 863935891 43218256 804803493 227857884 769669438 958850301 984632622 450351665 573886585 171565931 253261784 257668909 787008539 899766372 964445287 250842445 787441667 255777498 707967277 452352193 592783565 516102220 673285873 675230516 817829042 80557089 256063636 497548320 657600055 236240007 958974086 209357061 399158561 938035075 957288054 613264849 794318822 302784914 308311288 80950279 800200975 98830732 709049955 250793724 693684546 900003499 910154629 22924615 996021700 560940540 772718613 429304180 529439602 192789031 825744657 563169897 604351082 378389051 426105848 49934867 523746954 353827134 491379842 621557941 817020949 612999741 631514462 20613021 82570370 959666084 977985773 838123120 864705394 528386384 967439379 789518481 857496671 84365939 746168621 535226719 719597620 417534477 702753559 665262328 837976081 222951468 342723825 57259440 566706280 815077980 857344998 262942220 340113409 241113508 531109322 625271657 871619093 855351874 888332638 375510312 581598214 750572989 782435397 428561148 776016546 838869347 899555522 948221686 966335643 825097496 826277805 588999565 788266843 242076487 547219356 254567926 414604615 48464095 262342041 175703197 871530717 520061271 834013643 975610640 998748503 383902923 633633090 713715896 840027487 917073359 919073367 556874432 886543459 140863470 616644697 706000126 751446790 175262757 398874020 928665787 957665718 675941533 801189871 85522835 862358923 980598204 989369601 681240341 853776988 606902809 692245200 317941698 927304276 957052643 986862537 781159764 966221513 821577624 852714316 987179754 989868179 122443692 960809723 283885037 957256283 522052796 871661156 911171150 995047790 609548064 905559362 841368969 923503619 657531423 909790771 783239957 879948609 438609224 700353108 377927011 608815278 971530348 975113942 81996438 564230239 759055419 853846399 870273547 975079605 905973980 911371550 194121935 995637615 616891682 789098216 770500670 887788685 784805215 982715945 939654584 945490795 704839160 753799706 105543107 424881389 198686923 288967213 945168999 991877590 472899365 577293987 657709312 869247473 115427210 745716847 967447819 991724887 772777842 783114750 951138977 969967672 700483867 988521863 696179075 877149155 711000037 750966834 950467336 956309756 192777267 285738024 284877609 686413384 941673878 967217188 262617715 941058013 8634951 529882006 106704632 589783660 591580365 634791927 519103692 816690959 385676736 894873173 177502489 386449118 485175839 488775693 282301219 728764843 55596270 569561892 118160560 406519492 552938878 719831071 895055643 997135841 783697764 927581973 959533743 995180732 495608443 957331266 215846552 439372928 548030121 654431719 976284287 997662909 176504614 465303366 830317891 864379227 841232531 894281771 318592292 702627146 429488125 915480183 512178929 976682455 889168953 899353960 49042712 366781416 688567272 813873516 63550359 507109438 717636691 994232110 700922960 892640970 550482644 775819702 772975352 963972864 966674684 988973596 844443968 857631406 924786224 976610178 948314759 956414197 373724724 990765674 499934940 503629398 302613839 769925393 419916082 886911488 289257685 890646224 428401149 734528720 306867125 873726014 307533748 386711641 264680724 462826545 258277950 847706549 376898176 573347527 529641363 714685991 947368326 977685697 428682880 526690866 93436830 301824886 325510770 519980760 247536471 354079702 464670468 996478988 348790955 910848886 257640588 981496447 383888067 407309943 545069538 567015995 560033588 744285943 526908483 935217455 492304017 694912941 974444124 998814540 864370431 876512157 285626104 915637395 880686379 917441366 551125144 709135982 963836099 991754039 88976847 423739181 649810498 950795294 760182878 978145946 142577173 826407786 816737397 951158306 123360319 815460284 567108250 710742520 674747381 978356342 525936285 564127438 430385845 834633727 545454062 816189254 551575717 561920445 609032945 655692370 246405578 563171498 891754272 908268541 36226669 816247736 601407605 773765292 233277499 365931400 203125044 311343950 120402016 649162143 803591659 871076986 11456786 672831558 976407448 984730141 187296843 622643124 216890109 859745294 26485865 641482657 329663102 907024682 136218679 276120379 18075149 73372921 559206948 709611658 302860514 718235220 483242996 746538845 719480304 733738343 368882775 822557580 49025392 171189499 577748573 900662933 618764230 704062276 490517968 560639546 929721630 978525538 788190180 792335222 453428242 812878619 297229766 496529062 744210757 774866032 251422194 423843338 970967315 982924224 541574575 653234090 397845572 708929561 722425675 996142729 552364910 635672161 634147431 673776869 453991711 690676538 289866374 589222229 814888355 938943712 627355287 985768944 256477563 928968859 312221383 730884563 998366356 999515045 956178868 970878093 157785500 995170511 673189700 725619311 836417411 918657822 445985335 727130964 187708087 864243425 146399132 854830688 703658930 786754688 665311192 977110824 79882362 401439858 335348539 690803319 739109498 982729766 419660877 914959839 60943429 210272742 294604765 960544400 551134737 985589671 673471729 822449093 20750193 687442223 701710610 711143023 388941417 613675674 638212985 838327312 153837085 513501991 660244773 951706078 494903839 697990314 659823545 719031256 211856196 459512414 520330853 892834622 764733162 820824237 110056052 189488474 936335739 976157422 48854906 838369324 686706690 944144457 796630791 933728866 345206467 930704855 687003893 948882748 609651113 926475449 259150165 589894713 749118006 930095514 470316941 879219857 179663719 626211891 517197665 539851302 744347637 981251306 551232165 927411440 584989424 720900374 442704265 897527130 713431822 809080872 90299713 107297476 55408452 393983385 333694018 645366077 346753209 395761601 947745703 974904665 758770428 981716067 680583987 753678448 125696245 186638427 122672850 828849384 324577339 489231179 619698317 620985567 370720371 909602409 590332422 676371803 769937516 823349856 864595287 936072047 423806148 963622562 638660891 907548411 373260389 545231212 951827409 957987321 368330814 804890844 922326361 990238959 130571406 143084118 64881163 741246015 618441598 996988449 659965191 937994763 651661738 798541407 313269208 517751365 552876402 675674992 554504663 586710735 614482241 821704233 256012949 637708013 23721541 612105778 183725407 525795920 616050010 831503433 401342573 638075821 425156310 889493799 86319572 623469981 488690273 886775620 770213275 974362232 94458172 882693784 373332232 755721844 173790182 349695012 584920405 898019672 421970843 657338312 595611832 607014959 717215810 976153025 384250674 427356788 996196335 999378564 296504868 754251711 475901852 987910057 176329123 280518872 162604805 293438660 756280485 897784440 641602728 686394977 160724553 432492999 308056767 905273849 280641820 422027045 33951515 175124853 780497004 933678526 375342437 598816948 952810735 975164023 585850428 837410126 998580029 999390152 857333835 867247728 525931040 918223308 401986305 947786036 117084918 930216687 613934342 911559717 586549193 623973127 289083354 616814646 661259345 923734170 434999897 549774078 808670111 967904890 450728059 793033257 982166836 988685872 123783950 425314021 968463957 984567663 453745189 661941307 487866287 972778912 39626485 787678993 172285317 528930244 51355696 874111129 641133549 731229997 249761938 477860511 204772521 291328936 160038242 565124168 267558270 442158858 778131779 826893765 561038941 573876819 927632677 961072636 69580056 498797677 630238940 938550319 623201458 916171722 860951163 881265111 962840852 977316375 953917807 993939431 693865158 883611456 508915074 608430069 95302544 880825914 87617841 772690803 801824648 863476428 232589936 891479228 508726067 560208359 313562593 390113545 516526411 711637765 382158025 868092437 917916079 922706945 296363460 797443591 619606334 621888009 407287819 530033077 19630954 514674883 298368030 983162835 690490001 901781328 82848967 191910821 663836269 945625367 645741870 709080190 404617006 698839561 651418031 703433399 927510399 980408636 229003810 292265941 662692641 991888760 567702327 682054878 205067089 746596403 915244726 985867112 878163805 935846793 606227839 966988436 790182495 983227673 233115931 797346048 972473043 984620651 849928197 998618435 505829279 700367513 979734404 985190434 226040955 953273566 200977658 602312371 462379685 759194552 324993922 501531950 978907069 984696614 421320357 479586069 223722747 306697080 538579111 882329552 623324841 928203068 888924498 984198954 952042218 997413312 298880913 720189158 128008364 799250873 618764303 681153424 730383753 975592682 537282481 936503363 397231857 878933101 141156699 471323673 465092697 822155601 785525585 865893896 70012691 261678612 123579445 242646958 607203494 934512349 97533136 394751424 104739361 525962807 157415606 985837755 146336271 235743765 412267906 693243133 451062235 996235187 754434935 775753745 746306424 807631486 210559687 978020882 806451635 863044904 815285151 931133430 707765326 884302648 674308772 720895819 317618628 689190943 537402325 953658593 847221231 984241663 94122855 909285420 457923419 530254395 538762855 699051060 171828853 365407925 755400009 757832627 506080259 559384971 186637852 582010204 893488998 980487946 726974776 901516251 637743060 763428446 989698822 990525763 977129545 981016295 397823222 997789972 1480176 177391226 217357520 815489090 502129198 672190744 212357248 300309085 302799880 827636286 544542917 632880002 12246769 671843995 866058730 980852239 336685189 374045625 276081907 841793845 171304211 998799038 816116381 880327621 737900533 979519625 130304151 862945845 729329938 952810486 396071625 853759411 327716139 978941346 590286910 681386655 160094517 470406829 780835730 879835064 366515490 679708335 151294245 751976177 453626195 722763645 887313554 965133488 835325023 843533836 477826931 483680547 193989830 907677314 54181738 663766878 507776577 770835572 657828903 731556194 796248713 811831728 4926172 169691300 411728261 537073289 315459053 559341660 349869325 706697975 49755785 978096498 69591327 649971762 270548071 417763149 553076120 918657563 645041338 909553647 168881820 507422390 213102493 408085928 49362412 850329907 897607579 907411065 757742016 865837796 744157195 995799104 342194992 900827394 845162875 899656969 226890443 304729098 676885595 848853785 712601165 759122121 220953478 637144139 643964237 728891517 291308474 740441416 813823508 882317698 789388514 963615948 986603468 995956501 129630441 943126985 488818952 658864979 168752945 342602434 385305722 553200773 334631199 362313925 486989520 773957304 774182065 806269495 60138746 111184467 699500656 844035919 825355113 987931365 270576966 667500760 85518339 408763506 210136990 633517115 529005377 564834515 356687344 478806921 416623395 899773394 944971932 987119306 438165386 901935400 347599453 420124950 71714736 916689528 194239295 739161824 348485894 858086430 786641742 987870699 166415396 760741907 559887409 829208774 888268005 983271669 881068691 974671492 556295353 646419629 127519753 420461760 538705444 786102321 600036383 871297942 524485897 877882799 92338398 390050186 874564217 975639422 606038199 903945529 243953672 963765572 274582055 824083048 798585988 929679709 553978417 766507955 414895256 595605251 343116210 422193512 846717567 869596837 670902449 689540862 779874048 997830854 135823549 997473909 940198601 955298750 446402257 520719144 889658466 895176339 362353564 996046390 512091965 657336045 84637094 958960822 420203686 792625216 946874530 958214303 786752207 850316168 416320674 742615301 768629292 946820631 917797945 937209660 188750201 939365337 375763251 783364351 398941581 872361099 96737628 345643963 359306796 972506991 773619903 866647354 986474321 990581424 352016674 739026228 626252837 639467309 137031670 980659559 746728720 963953430 621335835 874551271 540487813 555580390 593002195 986885810 82848635 921643898 182105396 446060961 295179773 354940193 363753499 895522348 827369661 977949995 81637775 564608007 180050571 184146963 856761527 986654043 86050803 227713842 752467290 863007612 211970584 509878830 991479896 999646490 500086251 764193786 332628925 337237998 687360702 919968661 948735212 975994502 761849034 811301193 350578644 442138740 751488158 768085729 716957128 894273579 731151430 739940178 256007977 428032034 529486572 690133309 303021142 863845627 446954576 871950438 226075134 451356100 307981748 693583796 751801580 874595730 881123903 966998291 822141443 901900313 557938038 745650750 629771083 653449375 968574448 995952235 55457393 446848559 504978408 623715678 664565606 856474532 728918214 791707230 951399769 964936062 17586187 328596469 856645510 906530076 651947059 928100994 39690373 458539726 568707211 862030286 115489338 176482361 346449397 439870661 506481139 629330994 639277480 951446627 619059447 751329663 750547612 980092566 751462349 899236815 141560826 953869311 988927805 992138074 470207192 772438925 707430420 876403133 836222333 972755709 543301323 991491869 179752843 497357235 75903852 152188342 447630877 871214717 809332316 821535037 96886912 556625600 97414013 581456579 748133811 842680183 616144904 764574593 814388090 977625382 707228478 851435063 778985549 983297599 627571821 985975193 599143817 785750800 567246833 924659151 456362786 459241317 640808786 689672840 157978235 370280001 317644396 478166613 259454561 952328282 658240191 933106426 889609273 975467757 992813340 996282501 11724957 36309420 431155414 520340443 188819901 515936218 500739530 606060624 361967517 369956860 622961112 709417422 935260666 990625666 327837590 982598285 361055535 804440363 499273343 856522384 16010264 76179150 959321822 988851842 880164459 966824237 821634820 975554102 146579625 246349094 487584439 991142406 771650262 881687531 661771331 889091441 521915972 713671622 988285130 992629575 788118996 993959257 334906262 438349467 975540668 992774188 759448834 860285515 367439517 645931774 717197656 723436133 57271042 287070175 882068698 976526663 619650151 805671426 777206572 971733360 472591262 957806626 712865852 904054043 483182217 928802982 95003862 205581129 118999807 783282752 522307685 541416050 447797833 890958820 772474587 932716425 268329726 960579410 949983203 954928398 914605109 957756504 270680754 466520632 395287629 869888198 574305885 618244705 487021326 858176899 530394725 645627386 42900463 843286716 218865544 994896833 817168015 866064705 572001360 618200694 241572571 593448295 607363197 975713667 794458295 944490200 280695699 467701789 248106317 946028744 411353789 470479747 350752323 870257527 40436201 467158563 415697089 540394255 199619222 782630509 944000693 972999866 297012974 593473079 680493942 852060944 101748763 470683679 200281790 313795319 944679685 992680422 670598130 923369835 476462928 732469050 732078321 833484871 928746471 944370903 223739665 453031908 594481275 884453841 464403716 874687986 455522025 599633038 32405137 574579420 795453667 841894556 977098834 987528477 519995236 852794665 967075296 982274776 951935707 985188132 179431681 811157699 897839743 927363253 644592294 790469486 796571398 911327279 620312555 690856456 61021242 265949118 89828587 586477146 531797567 771464555 329268490 689003829 569290189 827643024 569514457 987645942 610572338 919499139 547123801 852901509 378677940 922012058 19728648 897361017 271440576 753440443 370455232 382246270 126679708 800063523 879478074 928345521 113587084 922539113 624870938 919064432 687503072 812749727 149680404 893996616 356812792 598793367 614260348 910169510 418550348 825565360 763280128 905499481 856127854 865318208 773441979 940355260 881314749 954100885 653502909 771473107 69071418 618151920 826854683 848383079 686016535 996555954 950864985 987440166 575562082 803016421 443273897 818138357 613211468 819023520 907273738 966939909 764880129 775712241 387540772 517436304 433355931 835826413 255583741 858745427 23563395 570051728 863815200 944716470 605462540 790321137 206812748 967525747 825271400 933937627 43425982 489103910 110520360 319551205 745504683 878489021 314614533 660159341 737631075 759885194 8235928 45872754 14169204 589736875 667035125 923442995 205482700 222621294 955879803 985472788 381807877 621620663 924485387 977098585 29469320 870127034 414137278 735215967 425076470 989416565 492961887 520077661 509805556 747450446 154672515 865102502 244899289 697734784 882698929 892918726 943681035 972580932 308255169 838078159 850050332 905579451 423823149 463871564 425312363 431446509 164290827 610757352 555380076 611709251 702832758 804805733 621553768 804746744 438451936 680030044 423160143 896574249 898636218 931350850 265748360 459941243 271262939 966100018 687091246 830251968 608336409 928436855 146534696 604323937 503526864 659459415 965374411 992963484 780569228 792958930 236521895 273182598 477679356 661042430 801919546 985802282 433091080 786557788 751806232 815585359 871497056 975123029 87969867 555657657 901950947 968967460 400034804 427609027 171167344 330641203 221737600 532159295 47007132 892677605 267581171 445525973 39706742 391289703 354923001 984354732 493807601 666174450 843860475 862458257 282078478 859083426 521794027 595574832 613335845 693427458 549126698 899729371 641358289 907027977 814696483 847385971 45701061 678330979 991286562 999649094 682359524 761045097 571573754 951539318 322066644 763795052 732748943 930194317 10263751 934269681 156801630 834968201 905484930 912725036 561042633 844964825 205143348 874194316 207315823 336448840 795245979 805566516 228898598 276747844 637910479 781524659 15504068 315728555 837024648 918791786 931686991 983281093 273939803 281579609 946118436 978386686 116491623 726233310 732458457 964768372 947206225 998625125 231323996 975463684 605317264 896510635 793661723 976533265 181796651 437491963 464480724 691152901 747604838 811566067 247517846 521483762 854719818 881519946 702933763 957331504 717343031 853544525 918322290 958838594 185449580 665411674 66532434 121777018 512392827 610693633 581743894 857391441 87691443 458469531 206859998 334260439 717501043 719969965 195698744 359085190 946667467 973444616 375982523 572513796 730211099 919072695 178093155 642032493 235768952 416912955 112854486 819940952 33683085 450687060 42248585 67328710 246911403 513269295 532612090 919144983 703148971 949153739 512149469 969904353 268967179 798475026 606043017 786809840 269483368 340020376 563501132 687707937 68742125 775765590 658448765 825012786 921581174 939647043 544976385 625019667 711970571 892663135 869761653 931267250 857142314 987585084 232162999 699569566 479089589 810962675 488648529 563526314 369138086 785495594 633319130 856306872 914847823 942092393 89619036 757660996 745508248 809379422 738742626 788626930 840536898 899137275 814231514 863757454 17291721 274644151 231066571 428379226 702914593 711461922 715779373 849705362 421620146 855134920 354806409 837304962 365091924 895493639 823782232 849134685 106965910 594147133 628336301 984424900 304501253 420222737 255824760 313179647 792406687 969159680 222599312 470237131 747146994 941994356 691946601 760120337 313972540 894980120 668665322 730269284 446735418 483002910 496444920 932558798 884109473 925702546 213820143 863785277 403338537 906884456 677289772 680992278 501584206 851838249 605821499 633252538 375708029 456215216 173333517 623920714 993571118 998956211 791506534 911626210 125791130 682155396 577515851 937706174 612222370 768898980 616742284 777302187 226606238 579109846 710719530 834327533 369874205 774368907 433094605 952383886 346365794 879654702 745035773 911206381 489670660 607834770 764048296 903798173 908821671 934889307 92988351 233271796 341947490 700220645 290425310 875126860 597037417 851820257 565355080 754229080 205898522 533293772 891814242 932695283 272264030 918156651 277478918 293999522 312742718 787889802 840711376 968842891 366994956 818151808 287445835 936422491 511381783 854109592 152142385 416524695 568538764 624604543 796379115 849983094 287232927 959406180 90807976 124664657 178506774 185591953 698259804 730791862 942157641 996638124 773329612 817783716 524600426 956375088 756389057 788713802 622836432 720455678 250888589 449410325 706559950 908400629 990789033 991652952 677829359 749362363 502677463 638099718 454707528 677210532 717502833 740788775 215741106 811815676 369137215 885283048 313996812 519625375 25029718 930517651 693056846 866334466 85868884 199638287 686117174 959807372 553327309 860096282 414052528 824497348 220855489 525497279 261448994 346333615 486304455 983782981 991726971 999872328 62414730 553020449 632603630 673587006 224006630 980555229 217437302 758920797 794268665 872708417 42054654 78536895 656238618 922044446 687095917 851298938 564614167 602067836 451831882 538140390 581107732 764041303 629362232 782082097 812057650 853650157 634114560 778097162 849286827 914162590 767572509 944859092 224798178 266857064 593316110 660124072 288979086 696927387 15143591 50977131 464647890 528549106 528612725 903572422 945053353 970538404 302217980 585127088 346334167 365415522 133313982 869086814 629230893 923884497 560175347 748194794 253800666 914324098 551605590 564987703 377606160 988173624 291843295 460961236 709398543 867345040 93587913 219143883 985513014 989136187 598358262 891895982 258758594 828645881 877749274 913170661 638062164 886358901 413451585 720520740 936293340 956248484 593842212 768770286 58388188 90769526 937578025 985290734 979998963 988557429 3064787 848468506 119572194 274370875 924741995 981491077 348519451 835043335 644640263 803580571 124082345 788868266 968624444 986402032 359575314 672586628 145510382 855588500 367441342 882542771 54934172 770335049 820233461 936912425 519741867 725185405 24567322 763871148 243762816 433959290 275450416 365492085 466749988 655450501 517371675 886750855 385605806 809937165 868158683 888286491 848726387 918045282 984984833 986665621 451800610 617750205 2100611 160455693 75528951 913249152 84704105 845183222 927540235 959781760 668327477 763583042 81297265 236246630 885068130 947709019 340774149 889870180 840716807 889550995 61035266 473140531 451411736 704615465 750100777 907716255 851395865 885933145 70173774 733291642 576942027 756078770 9941225 235989653 707590293 989082678 311958968 809548619 427258404 720246588 163912184 952993502 944741802 957238324 628501421 743637358 341016749 675942332 44276273 427076110 19936876 686250786 566641791 833722971 688497554 796322956 884939879 935469527 631355892 691461166 534075432 572492471 91462783 443826491 950702287 959602140 243457460 764400128 893075112 957501533 736859287 771455228 263137624 991906125 978298521 979293780 976017507 998551579 355420656 491750844 677220276 757748553 630916757 829876470 368985988 425539575 37754889 209660271 41080959 511938239 310125788 866978455 695105045 773272789 628616641 933418975 538663678 717898711 39663617 103309703 796186951 899215843 346555598 849374294 47382348 506005705 941131970 976852126 621654639 955381280 423366948 578814783 446402074 848408515 237693637 316495148 159340651 981535823 877959883 952548138 559297898 710561122 162762662 568879707 878005521 999699530 732086915 838734275 863542855 884435504 648169933 803907341 731695807 846156490 129776389 790531435 163251916 261979158 925546372 928623855 270288445 876951140 590637768 652580755 530112256 619120562 469257233 832564789 259502692 852416904 375739063 471102868 435139001 581338772 164138321 960625307 641698820 834418692 994604015 996911016 947100341 962235670 125195269 529497225 717569296 824593912 662422059 742017757 388876245 756652687 298924159 784075471 925494815 926885472 50733302 833948996 221707729 522979752 781046446 857070977 327088310 820578334 31211451 675083092 4772558 858627340 65414628 511739000 931243942 988803056 932647313 966412748 212850918 880633759 37690776 217328152 184762896 626256372 643567757 737689372 442272142 703084853 551923392 560229803 602446000 960219018 410287058 998307142 917112551 968099486 181627902 548858646 370196038 925267340 544108573 639044712 429339193 961321087 101010844 211185520 194699881 517747005 955722074 976402364 684158811 791762756 776229832 883353958 845228531 968218420 760464862 983642732 589270036 788444477 718648162 790418985 242628356 332396045 921985553 927592715 627097566 670283636 305814099 937247719 628983549 929079742 422055829 854721800 373099621 594553710 466386554 570799904 732248455 980913629 119551129 318807930 592825624 685572407 395253497 649619198 62278660 583965849 984953715 996342531 629422924 831340357 332824524 464856607 587479031 860165304 678715173 949197874 610307843 986928476 782784518 967149586 34014629 195641750 630946994 906151812 740858826 881578847 212177169 814649907 917416135 950983514 714776154 776050227 773555185 945888171 930086190 938678434 573649214 985532146 729908157 945672843 861764765 995176673 786961961 993904900 926343957 990020246 789803811 833381836 811089480 955904340 640232749 835711239 951336805 954595290 577215351 958571741 917973029 952960016 740805172 823147076 90113529 254555660 458230691 765863589 396499949 574327694 255741731 830853018 621670672 726790292 349479229 366224986 58018051 402881744 105536217 971678339 45603941 606746791 53843374 251651354 292527673 514440235 603387973 818046871 540344272 852703482 111899768 801968672 703334574 984953514 692107200 903191419 898120013 975529277 914026326 996566160 731189938 968060314 671786225 869027751 880191883 986656616 107855364 483305896 494907044 840788454 266582263 445420834 15688714 258973095 20125943 336421975 187302403 556373866 646679276 661938947 402280217 892883570 495453905 897123377 792087993 928051854 686148804 705858973 701766547 787907784 445495173 745844632 208670339 640769598 352956537 525608528 868531624 956730708 95283436 771796305 625254779 891365469 470060869 814660845 363760137 495267532 7652370 649154508 915316420 979238265 417429889 727197981 709426308 795259191 799142011 988378268 392861625 851437229 994917104 996435923 30728144 37334304 160146302 724161019 126643594 904239297 804869730 945916864 120837688 776263983 219158543 383892914 92492474 304925859 668923089 974023892 74186869 985142590 410729113 768148539 255222790 305356350 820069852 831043929 243039091 629158314 796848210 818345230 352998032 969514005 814445496 894485758 845166367 885880472 432629792 589583001 67989768 745016295 367508733 565228337 683174523 837985872 288600309 494532223 183567618 514419074 244806975 282920237 893481144 972569718 989767177 995665387 485569339 798825271 272173087 698189419 652248356 928708991 815754638 884601998 758978769 956588979 547378695 642902059 77298307 832342364 853169811 862151132 198535487 945895996 954362562 985992625 52731439 925708616 107402103 215848807 204983702 671737182 399448634 628798614 370625110 951169492 2766510 594457245 274781941 780013059 414425359 667642740 709427800 823817132 548315574 922584505 578899084 887687282 466978795 850176946 282893753 517479212 2859005 578516190 194541240 987243379 511787536 613902952 402157312 658193487 199988842 406952877 50446456 730172654 840341742 957176075 501478463 692819435 378803389 862213899 94924564 572197606 415540792 948466679 24173244 415072340 235590154 646568787 57768396 346662648 612011597 973463527 397018998 734091347 563275033 938429270 490712201 579340944 899560901 993160313 634852959 996127321 954922296 957402569 955090223 966953751 307105530 511177244 493756662 970180055 307503016 924157784 285366266 874835857 295330031 705938639 442520235 744973647 130958746 271184524 546290712 738586667 612321586 624945381 960001773 969448063 800920026 808117759 58643275 391193101 201268397 508057325 601745230 853152040 52173542 523468111 863645858 933954419 709276725 715106121 338152300 553644252 277207621 652335460 508792229 826437308 263318504 723969108 785040586 921931270 780675416 965024962 707895333 956048697 306717159 547076129 54639049 884758275 210849626 231590764 113930694 255564158 10721283 821690401 63543726 945438662 81966864 297571192 197849576 861761940 161875049 243573687 432288328 477755575 890654824 931068297 37319049 180767429 225358883 377733409 726258302 995441143 760213693 947819290 386426774 849402589 324497180 803506113 59450519 722233767 155578165 176454364 492948691 865805094 29966782 311629436 248598786 556184569 570567259 897170990 400840856 944151162 592712366 879570036 686682357 799555761 283264399 868683777 302839586 584489392 269224740 650973019 235134628 763096892 860001301 987879052 820278689 919606146 769286937 885160312 807277177 985091182 5049034 481746864 535285373 855016640 943102737 959237469 409877017 843211665 10278127 881780835 149243512 478983462 734790343 980110721 127383154 441329013 230277691 513752096 16947190 443829679 647293146 757123059 142584383 359958580 677479411 682321297 689570771 987419122 207131851 457756349 183603085 875724058 808970202 894481615 167707217 302750804 66869350 236900820 735828753 981766592 313406478 647609601 958676854 963781202 391586659 565034647 691562605 747139585 622129201 697649322 594738974 845752494 425198371 705319995 332209511 726952300 310979881 777226343 754513143 881757073 147487038 928788219 998052214 999632856 730117317 774664875 589918426 773375970 599210070 944096861 822119065 839386251 447563136 517690163 780807182 981873879 226768624 440758215 698472531 793546741 880734844 976920560 765396930 781168390 832195565 882667150 591683667 612151251 762620437 860272423 672139113 984134039 315636637 548987663 208227020 586879302 604439082 661681220 265462054 601731935 550829615 822208508 673686481 719461332 404508984 989798923 579344310 620456965 4918236 919058066 214954763 757072593 595556003 869891404 465042569 502905465 148592059 915413707 519291522 898430968 894440895 927785810 228615495 589217360 373970284 480096069 670382784 903108461 5275876 249891301 847527004 930353611 208802129 592325817 896385006 959321195 34725131 438393876 630701402 864061557 546283863 690958890 956712103 981592975 126195062 304532650 50060945 306070046 164863747 909440932 406910556 934389512 605451040 637540078 666030280 935290331 808016054 839207492 262578347 604776214 640975791 964388119 281864303 389869441 548044135 700767618 395500144 769108921 572600921 773604060 115385698 683479729 434869703 835738983 873295891 907928248 994991440 996058429 146252046 639557668 954047607 994929040 324970307 557086472 873935973 893864604 370089940 475114356 615852565 876232513 21853326 124339555 252534098 742682681 802392297 813387107 125580549 867259842 587224940 833158097 604609584 733735130 114089980 601180070 532122737 809998742 783555021 793140304 735774566 904058094 43879647 372666589 328628891 729676733 149191797 497913913 671718189 677751163 551958256 740620209 405406056 881128755 780274998 924145043 696847189 979620801 960926666 983204240 492646790 535249939 326330654 380387852 682692461 736831082 381522383 492365410 745962493 753498319 141443137 587820988 682062109 804863764 961929941 991421358 413839729 445374384 20560218 121361071 697078442 985815789 420067881 840430905 290465049 677589016 271279116 411644296 160240978 237852813 180527336 874361138 181596771 543089802 449580073 722661432 802842269 927321500 267683861 513544626 362545127 633667552 240809425 591801570 345619156 749282774 80781910 649052947 687937879 998020489 490238616 551540420 631285954 890454627 635497368 998634726 348771187 449539228 983299244 999342959 890542513 956952288 968146999 970740779 554501327 768403600 12842538 464244633 294262203 761725537 562031797 650563737 852966162 868720673 850910194 958811445 137246289 644165264 909241194 988542640 953020509 992086021 998289819 999138244 161689395 328697574 223824885 843212514 721018956 786870253 859272566 938538180 16278105 130988219 925800903 978842233 997185366 998189067 705066939 780748285 138355405 709981740 341427455 935352478 490946606 551047717 562666717 734545305 34014250 209210381 536236593 575190148 29266608 948924126 526672267 890473481 689667809 846601098 546340386 628481348 680861571 762469084 284630188 623038681 12447912 356442846 538152740 898562783 698743872 814583506 762026663 896708842 787028121 955136425 52326063 217954306 567362675 703460710 522955518 922123649 881861654 938815771 440914760 748760486 59218580 949009921 959467224 961597853 25041590 56957680 512124228 520898654 192012301 543723499 636970597 998925961 896406975 956940826 78590922 222573693 349229168 571034691 20721650 934117582 215503878 584593339 589766959 855577361 981728214 998568169 47437901 114806299 510959884 863347046 395676579 502483232 83203694 953289825 374684158 769867013 253571906 767691858 416420322 485196445 430635257 631744112 741170613 815618381 419013136 531987440 73096152 757657793 458665615 639996464 909312588 988606053 831362713 901173030 252032444 951350556 967918460 980381561 217278253 554576451 620494835 722678904 370033745 443625352 846414009 857825342 345468362 462036850 80178967 122092903 172835444 497380288 996218720 999510276 531703586 598881721 889736474 929059388 875763519 891208183 780094291 922805218 93694875 129590516 860656991 934919404 270635987 355302822 574265160 759101655 589019610 840530316 386879069 641511281 936306057 941935441 459119822 670077400 755573477 947448174 659229258 677590989 620366021 989591961 429459050 770573405 98827018 291983589 141810757 698913825 562091477 931747059 575672066 655389407 853114083 968837798 823038396 860839718 876850103 888369299 895981738 992254984 740152085 748464913 571389565 870651202 887012221 963979185 954273208 958133340 86520456 123251703 416057601 497814242 12035315 439545873 793416113 971325727 498088447 643137261 73295736 143952636 563192568 902630597 795243980 920355803 930594198 964268709 316237312 706359865 912037091 995392535 705366698 858248925 59093075 218983192 638154578 981448502 744522866 840042078 676654079 781139725 154635738 866093106 352318017 522984422 215555632 853039618 891342799 914144075 648303733 907552646 147405785 323360476 873808056 992887206 208371769 388562784 788447052 941002991 527685326 972730530 686123040 791631113 606758945 907010044 726877686 925277771 140753909 590329663 731199781 982454770 108940321 762401899 347131435 933585954 196722387 710963432 980925591 986151447 795609133 911475443 710490455 990518864 278015244 593928071 49272901 819789740 881507402 930631213 741428061 991725322 679840934 906159780 384804574 384950244 406072863 831557673 888389416 939043326 781176173 918312445 90049759 878178869 930467824 986058382 868208403 876052104 997830005 999551093 236737319 691374585 565342545 737388287 857412427 941398030 689888103 908441925 208378723 218650804 399287789 732543317 47339993 200037655 534642553 629116806 248533792 551810020 433408542 459055716 333370820 428702128 905658950 949884529 199233946 470374229 234260285 295087601 25199236 394480409 393720592 579926035 979269307 989202620 79838372 578146699 926040425 933991420 317786736 461730416 620538291 695445500 823962801 976703079 218147538 228261477 99784500 913761283 663125911 830466380 845114220 920871440 21859879 332420495 230484112 465176509 102547616 914391367 609683261 801212498 415003526 500864033 83529770 870669732 896626021 896914332 244015137 867450132 894442161 982814105 717591286 805804672 487215495 578757132 912557118 943995353 374764306 681359094 934636584 945513910 688856865 843860376 707577327 862058909 259502616 498008658 779569558 796146841 154769889 862455545 86494951 914631949 75441883 838563866 982767131 991292080 202541046 221662033 710707749 939705290 324878724 793873706 747142107 966896256 170067649 475424992 627680972 970812160 255871415 885408326 435177947 669144624 872699852 958249762 47061231 227006656 229224399 499255671 848910653 900511701 759379772 837200079 51495867 808473621 47869351 325253011 560137461 887527999 400464611 975515440 857887734 877360947 891113817 931298186 774962432 775053117 919307677 985231607 739877509 788488579 372395012 895136434 4936255 577216195 972426588 981982248 829505042 882491317 464936568 656669487 878568728 918727274 170268212 179034917 684356723 895898672 415451219 888248352 785699947 965581442 816797697 981624777 847224795 888297167 334994999 550955567 104746277 311669303 438078128 943584418 852755371 987716515 143522344 404707924 236265784 725415303 220910160 824453059 133564544 567810040 819184601 828744815 935588348 963974552 824340163 889996530 882337924 989402473 738198154 901647233 522622351 991864742 294123208 689750413 698304266 761919981 634633716 840705426 274183012 982246101 371252279 431022237 729358278 739343016 866040397 976399811 775361669 945697322 267023855 597652707 770553995 971170532 235993764 531986924 480882714 531262830 761990792 807728269 553260512 841404523 789197690 879871990 508127184 844319999 773939389 800447604 791806164 930995147 526521416 565232034 351747034 721485025 324141994 868299961 337212454 757722550 421696220 848363811 566623456 603608058 31230513 574431809 785900620 878512567 733097677 975987657 816201803 928233795 388243889 699798874 820250536 847397836 882628123 927092672 457409313 661208116 932689652 939726729 726514263 869232035 136127234 891480937 688501930 723484609 234099204 563262406 698319858 938946678 920810977 995636585 915610610 932454190 816497534 821830786 921818179 939591639 299403480 856795372 473884965 537036284 731121262 948843519 840515643 875100318 410539774 725515265 29625648 692875548 871963052 891535091 510777288 886659351 826004050 880787393 52382504 506522278 337887572 611096758 647678404 963312070 457523769 474180571 549546384 922222327 578457164 664039458 642513714 979312607 329652941 557394920 723051596 901152918 277422911 368441820 645144356 828852183 302676144 452623061 157878091 454951085 936673276 968051540 464130410 637441398 887429337 995441937 971869126 988098891 289557840 926017680 137370248 706316933 58839830 949899414 495473130 957888975 333907099 368024557 425477444 640419612 908912301 929102734 384899317 523935938 900508032 958083843 606473032 693269240 405722677 674946060 280577693 598625775 949476496 983799452 524257761 857305599 9942387 382508427 513361367 970940538 615638722 744824151 436119030 865050271 836539074 986358079 302287363 850103300 811140144 811978841 95154106 819387282 974627286 996258489 888542496 903703954 104831403 825710512 502078444 703547458 669618652 944908051 543556042 696068106 918466352 923786038 563366197 674650550 307258121 632234566 359405412 524453551 188999289 990711762 920933436 966315651 292254992 309996674 413383519 752294902 326400537 539292037 749370558 835512179 300656240 525953726 819741313 966226888 612629299 788300799 161785309 839119215 434468767 467737991 68522762 948297137 825590329 826265404 380612938 442332350 131385952 588247134 180007005 860473878 3711992 512201310 724743795 787997539 851835596 902882332 345826962 762347909 866816287 909343560 242118289 344567365 178975805 243082117 702615597 785450777 667718663 987698898 405038618 631566804 525306413 642770323 636882249 681897220 838419495 959581380 36839808 608440941 95051895 205356390 141994360 993082956 836002990 849057031 791346785 835009967 894490755 945885997 886818869 897258119 41439278 580484939 642149985 849569910 445335782 722405701 195833950 929643635 113415260 658201374 557049661 814299551 656755207 820717320 228879315 679023410 941806707 986086351 884746331 975354778 588392653 790852646 251847699 860571787 477773420 985182255 558280583 818256606 212500083 441978533 712558417 790583504 207121898 234333934 283393442 857594083 849012445 857435859 153214850 189657391 630218703 995912943 585243199 863952158 132990597 189470346 212343163 962501810 982311699 986517394 81791269 102706783 25921608 77113170 887679984 946473884 395772432 575969565 910124865 976590907 708017557 966228016 354690456 421728686 818554613 928722179 9679407 916202147 108436894 755095326 613022004 987502971 199232689 950944327 448562879 582756696 970965622 976315613 733610280 928322546 253020675 428408054 231838571 835386331 573759364 810868798 176834694 666305457 409935545 596489054 661506491 692116698 748163835 878694978 781322851 900968278 136183018 559293805 295695941 945949119 265947672 944817069 344795520 418652924 677924800 792680806 321252840 376031268 262876830 738816285 499689086 872430232 475265033 870085752 682214270 830517402 66638614 760299921 518597342 870309655 302992476 890617825 587098091 599129409 507920389 894252900 368388993 432765888 457191720 550422725 681746114 926155820 948234171 957872546 764791483 873631156 725088991 777735552 442769190 783162812 635834408 794083447 11494972 412926793 742450419 954291990 190013823 962583112 788987391 923471058 630463144 931264051 714229013 933400432 969958245 995660359 872406335 954678394 841689798 909203742 765455933 826313043 429670844 967227103 988560765 992245891 498170458 586861439 9597336 255224747 751076169 904909651 808281291 885716424 131990836 957475469 878426787 878847318 996339458 999241890 965013625 999936991 976107256 984462480 826420239 839373038 667811892 933719156 11986029 705134310 282664796 857556334 927447619 948184853 16402011 995972376 502155654 945781643 409259271 431914369 880298388 976673751 529453391 863859208 282277478 307097790 84062426 158463049 685013839 744511750 271224182 354098580 817654792 836662991 440322941 448304355 401508084 440494580 403659041 420699977 414727813 984672842 77248719 321658844 266795149 285929230 120176693 139632078 892687957 918292973 507699668 694164760 226670654 502441213 880330474 911081395 699541295 821229954 257952014 773320784 607892347 622316438 896103313 919445622 512756511 817068901 332904105 883062362 988275417 992142253 957018444 960502144 865444869 885633668 562193434 691093558 325513335 831510932 687172803 689947571 471984724 827086325 249770841 285720888 417794476 653787767 570727225 605844174 81064463 136760530 811290268 845749707 910093815 932261163 174917600 208650001 510219187 920057757 673813669 703546076 456630474 794138614 348120362 832568933 238055799 836621659 136218994 246634706 233859456 870972761 173509025 890186370 710930506 998931260 410118116 611426247 132560414 481994371 669675658 782074011 807718583 848752189 355705129 833226860 97507588 425935527 738804785 897342341 378719354 535970985 890395364 899676058 481226858 540622563 129642863 894334537 648195531 935117202 184381362 266378793 870401224 872000521 307824955 719153602 49475166 688836484 36170704 379230706 267140296 488188141 861713544 920548528 806998229 814499787 894473541 988159255 101719708 334989304 468803705 678496315 553540466 757535279 632726764 638305150 692825658 904885776 877241443 935023292 445387242 570698707 751599911 808542249 138784694 922610866 908958208 920599210 952222385 975118947 92392059 820335083 884718001 955171951 659401710 783472424 26845773 879966551 378628304 383802860 338482484 596663421 112036854 259659873 983010522 984656177 445780305 451989634 448389993 574506809 624120619 907383618 444600279 484155258 287841986 676805789 161265808 251818798 928485896 982041485 962873098 968773005 403859586 629882933 479475467 806826939 45090580 621187703 683023713 890301801 770042944 896220854 399109754 890617279 759429185 979860393 999187139 999721258 580704545 841168239 809244834 990020516 73853258 821789775 39232820 911315854 164836269 996357039 884450142 907721037 559572227 610053504 684863847 790906892 812681899 852698038 618695815 694419191 807489380 833590233 145595715 782715735 663361164 728540076 800362106 838628652 897736065 994329768 383583451 808622426 14037894 299497082 794720427 882063666 566271729 886540433 636571568 939537276 851895581 900367141 867602045 972049954 808895513 993254971 976066412 998566905 296721889 971972064 324127382 902799688 624104254 770481031 342748245 404493329 955596506 992179270 627045133 673818079 459174428 555808112 976085559 984163959 151056120 655454722 11085299 20350198 438190551 544118362 705872108 764254889 360547830 675398173 565672721 578621888 508334440 894372524 904104173 967409745 227727383 893440181 12242865 983198110 440743183 636735144 349595013 663541572 493046159 988877611 966970181 979354424 229405984 233574077 338664106 810018849 423343380 530608071 55518057 433165603 71107148 204112235 436489246 491046744 997683889 998872821 57734530 359631324 94621840 833185288 813232942 919278142 518767647 579078476 216582716 678869707 726600139 793370333 146492328 833730446 37379840 65744162 956638057 991424732 495393927 933415224 265403248 526003444 575802094 940124949 364745765 565769985 729815446 855382631 533369383 758676612 358286379 888631712 741507057 814690668 810131895 824473756 539480361 904724604 110183549 669217957 19747179 234752539 137817741 145667491 958980834 961178703 719381792 811467084 969534911 998924925 28248373 926666551 897596614 981419065 305365262 888915465 737968645 867842856 742583240 984721197 873244375 992776239 225042067 743322287 935251149 947165563 467854261 852578339 527802551 693632873 961874986 993028479 32449222 107684047 622604505 666021294 15380327 346211966 96385872 420071881 850484446 880985860 463716101 927595765 138883943 169389102 980860706 986181472 92735447 487327526 838222649 884587663 750182787 955794062 496689261 514844956 641745561 848862636 945714949 976313961 39225704 874898999 736438662 818004806 234316097 456213247 616593702 759055112 585255623 727025945 878112905 989548665 399287702 723016430 24683198 973335763 710293880 762085810 678897109 884023606 372404448 691749188 209101094 503677226 61177175 936034731 525674575 995883001 544890360 758059951 149798992 698478971 362809811 775783085 347604915 573496195 161076936 690178705 269246014 842406751 412040494 815091214 293156370 656912516 348723097 719659291 937953429 943454498 572704509 643508837 581203902 800391791 43247911 755436735 859546563 917094019 993889574 998289063 887042878 981098405 580799693 990539371 902984529 998267602 260873231 409061977 222829288 682211578 306116153 569106851 716328310 725466940 546793518 769570307 472309227 893537231 976624425 991449287 868091917 895995968 686973827 865873231 361622590 515412923 504982602 734484439 327083832 762798220 378724164 570930472 160307405 866835026 951730032 986487837 257802318 602069261 836958288 948032536 352483346 809383125 919691977 920403726 635654267 902345276 598963477 992366377 603154677 945280196 675127894 743889972 76041576 714141138 33433163 296595414 227911211 661186429 906597304 960046092 825497276 994766041 114705803 776862059 565325932 686903820 833205756 945747062 867903058 936824504 327651336 444595857 114823055 466960406 867904122 984832487 269964780 600523253 162178415 637162412 117265190 959683197 961613521 994097433 847607410 995139866 898854113 950352629 334513931 862981451 166979125 756874814 475852132 646959019 955225979 983037685 895490862 958380350 428542619 649461507 248851388 514922054 38997207 327656609 971561096 988468565 338120815 360117160 225712992 464857075 453706518 608285941 763575669 852206121 657608314 700399435 547646125 878948309 710688316 961624580 867949540 948246945 298795688 369307927 871936697 920853203 632223442 999116625 166287823 382999793 14401959 154838020 499465860 977177366 661238902 960348102 616404269 813722161 34678242 754510064 379514349 728303228 739760408 929296164 183093946 599424282 821723548 959668256 315135272 802382203 486608018 620201728 244578229 556678565 639609542 672846833 927055350 964905880 765472014 819819828 87675220 270811444 595807861 635906154 406914295 868166643 887184630 968005539 168017598 985708500 771580572 997454528 986213150 992849052 151544634 389439190 166741606 449857916 648516239 669024984 71738225 819119070 400664395 871483381 536792633 847442002 832851968 909509959 656341187 850708914 680277861 943999347 116675643 652167893 191212975 936762224 838779323 974926318 721083109 830823845 197081760 609591035 215208309 358147845 9328170 255314023 206847681 696222525 794317614 881614636 885155898 952205725 455619067 885042598 490765872 783888063 144265958 468718012 428078625 767173887 427744234 519860047 61783921 165959180 729465049 835325557 698187005 814231286 627557901 758110860 61305371 168923377 710632057 728870322 573942226 882721839 702735980 875553721 442939302 485887392 444001419 451071869 6316895 920672559 531611513 802524013 88615823 899091164 754248689 900204715 281778240 538226855 651818810 884982373 952262729 996097431 465508254 605511873 202782992 661016523 16682279 798423950 562316455 827989593 44754839 885916093 733535000 832514553 626463634 903943824 894294901 978906493 289526717 423185958 491718501 978224077 145670447 274997722 697864226 970662713 655522782 862658593 522516953 910253007 138285412 931444374 723956093 790813326 153644600 191405449 525116616 873155520 252628872 287716275 530795455 870296381 135573659 560996225 698045647 821536382 955716021 964249355 196427101 778565557 125338548 204199477 305907232 515910274 234969793 957779668 146988942 352354169 231429352 653040694 919126000 964854021 115905989 122972414 695554177 832615964 265951605 686670513 834494186 923413096 136800539 949639059 828530479 925448640 128048227 143343184 134153129 154575803 310357510 876243957 121374102 986658480 670401021 968742298 171710268 390703236 250808461 805251751 873128151 993493183 352893677 622104901 374590471 449088396 781264120 880367017 326531726 374998616 149890344 311319160 756919253 933070776 345569359 965108391 896553402 992452105 847524965 957849377 99905567 265256127 377051338 437179102 820470357 827552299 387349309 491377516 830805207 900255318 229571303 718634159 786531471 863198745 535347847 648447735 956570430 960630249 14933414 19054881 189287718 441216111 285744399 669561616 518184869 930393852 494042025 500393889 804588770 882261496 796878777 996498031 887574625 976839064 98063025 971296207 102290203 511635989 29391865 440936929 419811407 921780092 932193239 979967744 54603030 974043231 199033449 512930015 671815796 957833875 810390581 958615027 506610694 800406686 821410564 887865407 240253409 243876041 697167231 889498437 859336122 900609094 256480034 801224286 498492610 813888112 704580051 929729495 211781338 293938547 467186125 594377771 103676979 449326659 722846031 791058718 680971581 769744900 271907388 414815871 266675732 590771194 701985629 845261284 388061324 874721926 648183176 820868768 529439357 758085625 698318074 991260150 978802393 992961789 435105684 810205903 605819104 669313867 916579415 964486387 918172659 963550742 407811352 784742883 837534582 957419615 25468473 372047277 280257010 676037880 40744835 503501467 252866892 580593187 182871797 975809844 589973794 640113939 968448666 977512701 629792768 926748068 605929070 685418646 949799071 957391568 706731779 855844892 151174606 999846084 386976260 800189017 758380742 851024213 69144512 297571862 702481979 984589694 220047175 612441764 737473046 967048519 326955908 618137919 955243790 998228630 562241886 841147027 965594074 993247227 337631065 434298288 572917549 851189262 217994712 665959847 767913679 985561826 486578685 860165051 575740863 955780715 484004574 781961744 696562981 849512829 793095620 880180648 673814278 866250774 529974668 795793985 868085983 969928487 526573075 571715217 957368487 998911411 277770410 476265044 773464530 835000620 532476516 889965944 961258602 975404529 784374511 937126043 21501124 74574809 250361082 553148517 823008292 909503617 9934831 918647031 641486613 944321196 970565268 972115825 633119919 933205661 5489247 500700194 498958295 531905466 132996079 214974401 167748926 693563406 632725829 682450548 330388456 687234271 767222853 891182770 989974019 998921272 151372338 371548602 395448039 865025190 679572440 864597674 773065906 966901775 832517291 910027872 41986228 749629306 612197095 833341489 945793676 983893020 537624361 713714482 248889946 851857090 257485222 482256560 409497331 570446340 599658206 782611234 719378887 809231384 289993294 756432039 929562333 939737772 825031469 888235587 190446767 327480556 468391589 993701583 843637528 965751681 365586785 465289013 729411353 909127947 732530286 909880546 32132444 841838386 524422400 704626993 44330525 929204883 260714501 642293507 715568027 987335720 87991432 824992542 953901273 999691025 320172870 644729962 921106768 950662690 25754026 405782535 624019053 830060484 334702207 526119817 963989005 970022469 441746847 930518045 400915133 595318788 341619148 654306058 572196868 628199833 177399415 986951859 476567908 484911921 34001998 618052762 372208990 532266977 563572033 591399004 11780103 341777741 621819925 692261099 750258946 996977772 449390135 629061496 667876055 915177608 476829308 829083419 790405886 827117461 816611556 819116321 97247062 869664955 667556067 905350258 5855214 308605845 434886215 583959368 983206927 995308741 43606826 117968471 237103900 462215125 447307072 895483090 201652656 346725699 176090531 920904905 268593000 904643550 281804300 679853732 917884468 923885893 915648480 959256685 277203509 461621603 622115782 878730635 989504426 994165814 864046603 986287610 170623818 765544624 339794016 353686326 296983712 801392291 973420549 981057323 638101826 734585191 336040966 457664854 660781779 773319055 24416027 999690857 118749440 299651127 591663789 920139038 881015315 924759352 519679590 691631049 346116889 917385987 585160080 906991779 537455261 823634182 451693499 567186940 956419359 964968654 656293489 929696190 583090009 620543006 307952143 615827570 838505981 927871372 162420577 521789476 572910235 688369588 604918794 900794143 305302826 963214525 904868114 982755658 151457933 347970832 250742112 947458615 33511709 89073498 580492031 907385476 127513473 194807928 351042050 727349113 894533067 994098330 162504120 622830367 781152160 861840541 304285475 813117977 701275917 965049623 298156249 911962148 967348499 977474264 944815829 972759866 414565635 775393469 846175211 954452742 473281646 936044142 716793480 800918089 508777257 570379580 557164719 700496407 329129478 417153042 644093222 699458057 556370317 693537930 491551535 648689926 427572608 711163026 216259831 454143207 272523136 798941115 664829318 829211215 790702965 881537692 334132153 880117659 952704179 955338983 83497761 257721850 436828830 800210314 129344404 704530877 824366372 962265953 239217008 974766291 470803565 895610846 142232844 634421686 727601593 866321479 958911781 964299644 403742376 681366270 839198142 945626847 521885380 536741439 752797542 947326670 648519551 904917000 665045224 810114000 512067600 666832087 572293897 961786526 965219474 993195149 476368655 639230698 571950393 973388978 111716049 645325428 785637448 980937014 676051964 860889883 633353110 701775305 486309405 515162128 676605666 883307004 655787704 702289714 558959858 612269069 504851027 758611737 267735641 852334733 369019056 715194880 983010920 992685473 119782757 436138330 74390764 652078384 751965592 860122704 938487684 980241314 493029547 563303692 144666829 502350532 380997684 559875294 568590378 916425791 698044030 842866427 122952848 949029804 151247058 479211050 553841703 920326424 811469677 995440745 53861005 731857243 987753335 992915291 861889133 873638778 600309115 963805245 326202999 774442209 929168542 965483417 245803845 257317111 25489936 355830634 396774486 432946281 28618397 793269324 339261961 694082351 363854625 583376591 515328796 998335783 390365890 714430092 22497347 221244778 469614873 871865877 986954849 998315716 385077616 550356803 949417448 969698369 978472367 990623384 254344364 653267045 464132633 641765594 521664161 991555387 432881642 524213682 918420532 976363059 228591399 832885943 209281278 427909403 138274750 903195910 794154722 997116396 876141709 927744523 285123906 385733343 32710301 929826533 896258327 901269478 188610108 268266091 870174395 972009543 914295184 944960291 409049400 780959965 590329762 831527848 538324941 878235805 300810523 481229778 741583462 797467275 308280548 997058943 78381339 172501002 478980140 567836841 455713434 984745272 940291289 989430524 172326514 804634847 393333951 811498950 651878269 767641063 730249143 969027479 259100162 872253796 96535917 740192679 739593146 763234148 830921925 907960018 673287396 987364152 281820019 802716364 15018144 347600824 682317674 897853229 972262453 973572402 69281459 847028735 320125241 788796106 832893544 876197488 293844406 324445425 668496479 959699103 806963618 954062696 113150390 150673565 879743900 983232306 749786580 988171338 229569340 651033354 611140226 977660906 145220940 184797174 852800512 981049441 315289287 952635302 305630443 590266593 799397 953720087 717487257 959126126 72768333 372266158 713047173 788219046 308033045 616050084 116761943 266124691 92490103 551309014 14164411 243415879 176519885 652087532 847772715 881371719 895818179 988332983 229329393 730032270 296777459 472935712 856941433 960763156 840043508 914833390 945232025 971893560 242945584 787272051 360747355 580168065 9686603 954294302 78380044 987672281 935810231 946347552 135099414 634898905 435448149 811820437 197346897 352720080 162454623 774301888 783548837 876885463 230994992 765017725 75512360 422148113 735515562 858464274 634033888 790920766 144820006 406103875 205541135 655378223 740009064 926977779 729733978 801778608 395444050 882842210 141769375 299455782 916197616 954858465 630500722 647018346 64072956 308928578 179688346 798716579 704350058 731918978 619335571 859797305 272353092 476037899 544851861 803537278 665053549 924255116 588896605 851565172 337334962 716413672 245775301 564623697 114691132 611784804 518507522 874086164 543122268 869980335 948491767 968761627 407407703 929468483 811240103 890482347 535662378 590932355 855327973 962171335 241292654 698841015 912774514 999938192 833463071 970771940 67553811 251085062 605564868 904080256 527977513 977488563 685640488 765647547 546013989 878767994 856347848 929225364 739444548 987299633 353530304 550624064 31799471 820224330 406586438 579902967 609206446 974038719 269109025 660315452 579650137 908610643 467744316 681787689 146127555 686101957 469604055 664282451 394270055 497114971 990497651 999213624 962356073 967760716 858435514 922715255 382838128 389251613 884517583 998105466 370424388 816551170 860759193 958516485 954590719 971857431 234666136 509847149 356254695 957149191 524504147 870403825 287966952 598495844 903148310 932020402 782172936 901569333 638322557 680487353 985067169 985111402 90704978 660586274 398213525 939694658 565961222 690022937 536013756 998855830 399234416 842671960 520767985 531045261 864113086 991416709 323065616 532945081 100937572 656426268 441171812 511620330 257054530 538926157 927948031 989106822 850890499 966223855 28576593 786055387 125144770 169636059 544084225 941245547 310692954 655538923 96537540 314671057 363005004 624550578 551780592 990718400 624343214 940874359 123224361 285500158 216672832 804150842 418738181 497221386 281857567 694683531 496713594 585573564 549456507 752835875 835220385 906232177 532328608 654742713 870871387 878651448 217072887 293932446 546136035 928738610 740032283 820506237 660012533 966437191 19705306 148448562 132749132 150468213 125488706 434631838 590649548 639216391 609727887 849313325 947580363 998817140 732005657 854444306 880242908 926684059 296441465 715308751 282296381 892821522 478293221 745390055 227448456 961394073 255824601 664459997 46408988 504437544 37437770 466873004 614826781 685751790 793318570 841577763 451082662 650777666 107779164 828672425 892840515 984430749 62671223 498392523 731708372 771213857 793990513 965621210 805346142 976541143 902424186 953170595 474789182 915832917 397406381 781015967 398494590 716109502 527023549 771784872 174459761 424390006 393103112 816068647 237792777 654866020 552898663 691025094 51345545 89614582 928633187 937148985 825764321 941036874 9921934 524956326 605420687 748170323 433516633 761371593 369968105 411050065 957238197 982675046 169238558 504411468 437211475 928992399 348514307 424084538 37030251 295588955 660416421 871495687 179804348 326501070 270197410 929573010 854445763 984757193 23214233 534111184 458558328 931187772 21830058 460737759 187080269 575906780 264547763 894897067 483954689 516409678 250184219 400965011 27525364 559532072 896764534 901156068 356870781 542477759 445419373 782049609 690856177 921869127 861612094 959402219 397724003 703263784 450499547 757509239 503217955 950760004 581131979 709161486 319006934 795951487 140996207 360705318 830587042 868776346 391767737 903761440 497636186 743590577 702268439 881892741 885929562 996689648 250293358 796445894 454166857 946116537 452383058 869811798 78859196 479727048 105692764 325223306 884229723 976513207 178797891 260774729 84224745 164321200 330216353 970357602 317772058 631540314 761127405 893253974 525765665 969138408 266916048 688284596 247367311 462162202 608187079 675878892 39061075 105462039 421980776 496612926 901331896 988744075 585638752 809858349 234747961 645193061 631484687 776310325 47597689 373498442 436903035 804651521 128047308 817539290 740323673 762202989 33256795 717736049 611301743 651909292 16572533 761471215 426382722 668901005 157926050 231763508 575934457 811959344 528650171 856084758 482855492 987833984 340119957 539288458 561473152 967742742 395989798 588922934 738809073 887907727 261755537 886798133 355459364 375104201 651359137 685596041 94083974 154869108 117947623 472155113 416726977 914183591 353370530 477433278 676409835 868781207 978835494 993506345 809053525 867515171 201456017 698500520 661566950 952105818 127543111 778938151 215451318 728267053 558298243 631757596 793678659 974501729 8962231 441573347 763977225 986819555 804188966 904451163 890345754 894679809 304213960 320439362 27218758 83430684 955319277 958080167 819054473 886462823 642180053 976011992 889496504 987086959 930739306 964709766 326051587 521727036 952254708 964349532 401212535 468393965 852125435 895049713 304302037 641814008 933565028 933596317 93533243 569530625 798045205 955536947 611985720 720068032 72604322 204034424 568125355 674865251 201145966 547309160 218641007 824239494 742682847 923834976 560337899 629438903 575523658 594007714 562778517 748014060 653870576 735157387 202431088 367085880 387913053 507068300 261427094 766797253 14504305 184932264 758739707 996437996 575834363 759558807 215452277 513076577 659367844 876363143 981144510 985786555 106784214 125999619 598727288 985135783 113332584 681871687 862949703 886850101 974734386 975824599 442230747 746294186 747601217 752980632 178071345 349302202 939170078 985409447 390367933 461419485 160834888 791194935 517461385 598398690 671586456 848033625 7499039 125646995 265813691 305260814 800200119 981233253 369901225 994772653 682035520 759026010 707808726 975500657 25360731 279808831 755637344 797006765 559977843 752793823 759674619 857798801 761153230 893457648 734589890 992694331 452101481 730302543 329861335 332552607 516082903 988328189 86131145 434167641 501221192 901744376 58734412 550387516 895518112 999905408 22509947 118004085 738279108 835072285 978956108 998116335 136870660 364118269 150537621 736277683 498580479 842625638 333867524 918989866 265982407 943063300 913946738 926074093 418071542 725207365 761408230 808977127 887916201 984491683 884647508 928606366 391808574 786574680 800336189 851518451 761450825 892110621 109381673 659122246 430294626 817220515 342676067 585278799 208575470 906975832 459029403 590790415 99354005 233823231 583134579 995220250 966714782 987772584 706697511 855778542 172115987 516583694 995337511 999777164 934964707 948674168 156211628 959092602 384204346 979382110 242922559 357002154 748956154 887382828 87723884 237852033 283358945 323022005 483993361 677571629 49088601 469732958 185755009 484173084 923763062 993409407 802762073 950239854 833334109 834205059 534734269 861462214 265733921 473167825 173752226 714403738 129931848 547408131 389685227 549123598 872070477 907025925 836844447 992358547 147252510 173842168 975917877 980853948 636498699 690234320 276520516 888938290 913815797 960095733 305929476 676830361 398550730 484204865 204652780 456433534 594430042 717955484 169224489 729527345 743258446 986408874 298095171 337523779 43361459 485295837 485940581 687996312 497309020 644206324 519427435 612552904 912932746 982039205 658299111 673411522 530255465 933942356 676227364 869485023 735586445 888480531 234675992 480387770 3296879 957053340 545231250 648089229 194102409 959595747 324525092 765141784 76978361 630402494 602300358 683613905 626306787 794226367 238345487 598616231 823101709 940589501 806946564 890479311 290515519 883690336 958979593 962367025 367747450 502958653 347866131 929510320 210599195 229408426 577137587 947995099 201753898 519610226 6882262 297120946 809388312 895995573 699484293 843336224 368340972 839159441 485056470 723496230 517169601 660274850 335470786 541312277 854120358 896199947 640701189 796248076 234713293 366605788 677155279 790447917 484797897 764977606 26829566 726357818 511336166 752990827 567532946 642623045 171933786 324136792 939854868 949117445 476736900 497797728 440594726 807372746 427082813 652920357 214515891 726661837 437891094 714283784 513281773 579510199 666118466 787672301 938213926 953335721 102709776 577923004 535016083 792664083 743440122 889232603 339556438 685036258 460458055 668207512 539844597 768229106 545382788 972648649 720529444 902492286 270926841 311570409 309493687 465857303 89242830 695221530 609164796 886901474 66377514 313491485 929566936 981938455 253516411 411829336 500538722 760658358 334120431 492968914 316010744 771930211 181013334 285134716 662000459 843923685 701366748 907018921 113960652 756109952 403745403 432816631 126791503 251804100 90447257 175273155 13304057 261462377 237935791 820225717 623320291 731671266 795440959 820968538 829213980 929937197 283253930 559007152 618786116 636790149 33825812 964919996 226976728 963959149 243143314 888667513 909081390 988073173 430420089 900681294 52858788 737851968 987216638 990996126 472762131 979608468 523950493 738254409 384411106 690631591 631956168 881611423 364548212 844488298 884422254 991955103 684656941 922479571 491225558 844755703 449352802 459194228 456158019 749385883 914049402 954518641 244471137 550844512 851119777 860154838 820940914 841987937 111888245 167184444 463285536 720792086 250392619 708217917 861091368 979204452 338127297 673266413 648930462 757950651 50039446 77484427 703975532 848804205 525949224 746005845 264237915 990034843 132332243 633586265 818948078 951387672 910948570 937949954 898747585 943388608 59065710 654188994 991349498 992482246 448637610 957865513 410942970 917553389 743042474 788644598 708610195 959677566 67006961 143896775 973394255 973617636 510389474 937532669 426354704 462715074 97220332 473410127 543396274 979151421 595177177 880376905 420080692 608796834 553525707 606391687 780063584 812353127 135590398 907540900 177456484 611896035 560322227 657029309 465617442 769675096 693765455 785963913 173335268 574211756 972532772 999054760 78609464 938261822 272563259 339313877 503130354 608758317 174541926 683960527 304464628 957833819 125197662 602978568 345626900 542613565 686165187 802651498 243543464 273190189 19601889 652235209 32603366 868334573 495087594 519980582 142163006 231499645 455016200 703240854 323530807 948373267 332083828 823256127 77170128 219645289 44805626 993446720 648619371 797088835 12807318 197431131 317752243 995642294 257025452 302398829 154526581 662610131 912043581 964136826 99648708 916969140 334189973 682188252 72017771 227848410 399612420 447246181 900520504 905668426 442618319 797448032 569899687 737826521 623409863 662967420 776052626 988470799 17448882 477788588 779101015 866432469 396962778 692725837 730830782 761409915 441999571 512153688 546972360 802380435 249735884 462043877 379705291 688316090 420561722 643530615 142664606 675617913 229297312 615541212 830744729 862543289 9043418 18787786 647096483 696253014 423713793 847290832 987751823 999675857 22620741 319452703 125415966 647150735 867988689 982812684 49647513 367397173 453041963 546504857 264085158 397288736 431613959 569643001 591362928 997798108 857349688 912594045 534447186 788396096 297747083 756028152 293050970 351551027 193225588 811172415 258541432 498119798 71962287 872703504 376454121 663069306 123685102 811790751 786443476 939958363 415859536 832789819 999814553 999859008 334236789 826129198 290756931 810567467 594185271 960323194 337452122 912829893 27487961 357128237 61694889 463990456 611780883 619976818 948279201 961290703 488249611 904174170 665064379 895926653 228324675 981785269 909901014 989259752 372164851 893855370 300560521 589869313 488127042 988238682 340095657 662057581 606906050 840202228 655099033 927370151 203520300 776507413 506167431 818069266 164716551 205156460 437152428 989446123 240433218 310734348 499239550 509919238 127527317 921734415 593632354 661294602 693223575 780824923 633161053 867589635 484033628 810050276 6668229 849631418 378748407 726765560 767326321 992277775 343290855 653592697 295083950 594047645 448413919 569202100 996855628 998217186 427653825 847144392 994811472 996616642 260025236 667217563 519627149 693285734 26010955 736925697 311345439 858113185 859090391 862555204 960621714 961066629 545747974 641661438 852155701 890518302 18258011 63011705 98601061 704398735 853944968 883161429 313130236 759913709 826629851 850038609 133164812 963082661 610462516 978758967 459427771 785001300 372249858 777084696 21212049 140671806 166423389 591275609 999101476 999300556 42018769 332642716 2598955 261654073 22061550 584190606 461375461 606009135 497177394 505378172 212829301 564800976 990098049 992779244 513074605 644224614 704689643 832446567 7671992 692830520 810992465 966846770 193847326 227993429 450985593 956052817 801382714 898608034 353339896 999586758 681407685 937519117 476344074 681894932 574598484 621324993 837691838 921560394 390321973 945111187 178979564 252652400 117010661 376946631 334920576 494124573 7834308 10241711 729093771 744757745 16523593 441368327 9876441 618741531 12301114 909983818 895689928 981337977 543673337 629880879 288797839 761470271 880294361 906564898 350824988 965091562 110090357 697951855 743539317 967147623 343733497 443794352 329344836 595933038 120487414 409327998 140206256 712592622 732725698 779095715 439741549 727152808 202786294 418966196 350192551 743244477 800276815 811530986 471014062 684386617 861917090 869524199 214209618 354947798 723452809 959643553 354200107 947393331 161610356 760692205 670135224 674541266 460012109 555255177 460264960 888359467 444180301 862794314 251053857 804399622 136578832 657123701 152908734 211930268 408295459 739499505 105283914 191621893 46385717 313722493 989084569 991295402 241205294 661039750 824298021 996724074 253472935 526390766 565148123 577062094 125863281 869819724 350178364 738123416 78712078 455517032 954261895 978168074 942923031 962483604 206985774 248300701 176187303 275425543 42792690 728842732 925585722 940738953 394477502 666784854 280408201 304069962 334985253 486463453 945936017 975834378 690364493 717148703 554163529 783629897 645522627 956839668 80184001 859127507 972006346 997387026 490672150 651356287 652909476 855215934 266769299 677618404 875270852 970896531 24426373 593278923 168947468 402975178 957193557 961311352 924695746 959947250 622396214 967431955 494708697 754812355 632697152 862922673 824064101 958218625 895869950 925323641 25847897 706598459 651582147 665965143 440909710 728995346 473980611 850871584 423158428 586729643 466175167 522255850 806012317 822608629 667137197 824276552 525646812 968228801 858562752 879482282 825937446 828382029 326654013 917744155 230255488 436948383 512055633 517426380 642419862 985752206 512769336 934288896 913444396 920725074 712267345 795254516 589182423 796344916 974434313 981016440 232091161 624723174 966814583 980662404 100630422 750196334 29931552 102415510 599904809 942448188 732396749 783184428 219497453 542832589 787303257 833616395 445404841 595847110 841165194 948509161 774771554 775812224 965911692 977198881 628238872 990673989 690804456 943422289 91192422 368224417 863584894 930684345 979907111 991673651 495028348 504291332 379677677 947562030 202445290 586113658 726007027 743676465 427326842 716861259 421960673 771122970 498034365 840877531 351396223 915564844 589982678 652856496 856221925 863627974 829722356 928002302 1277280 354029882 382456735 431303085 629928992 869346506 697444924 820469720 566999770 642570926 885122914 999080505 392884242 526289555 468522211 713026058 102995119 489418126 24564586 804580339 245344643 819058305 669806329 690338511 921121191 946748109 20217341 60761327 94421095 806038102 142397278 158098475 831862912 936655518 878097235 902079456 703098177 763095845 498886755 855698251 736536442 934144159 932762927 944013209 81869287 706465262 398504053 629940090 677269308 790810242 276607187 626269549 19681069 905588349 271842223 742349901 11272613 947820792 920503550 955585713 144570924 292095432 685908084 772033813 573370199 819999507 419590273 449424592 684540787 708042999 105459939 696822003 230564162 782613683 918126276 979945870 322986522 505101142 983297711 986653950 472699633 793323255 605064789 993579084 376452776 394664966 989498241 996685467 556082369 885687531 197911151 981133009 125318351 909230493 105423831 658088175 11303666 537983306 775904747 994204059 545824974 652207450 527093556 945743348 437335832 933180738 349342335 983181172 248542631 624091168 208865124 570681450 951157359 981021190 249160456 811153488 162185277 861753774 200705391 848907740 656907890 919004805 175591513 485361690 757757635 845689631 969716350 984673299 473813230 500870604 399915361 700948686 796668194 936925814 101070925 929308276 752487464 956510846 178066191 352152641 828280585 860448356 887837422 892541578 393059719 719069046 830362935 854976807 962414316 999555352 562690003 565019888 984297222 990319994 357728685 497766110 992496267 993754389 133783580 766472671 276423693 642340639 952330358 989937387 961354292 983548135 674044457 956278322 833860657 976169334 247977747 594285130 548429829 951456524 293275646 355049829 102088002 193935817 473852228 845700304 32052465 518897042 338714253 397822447 576654325 618991629 154052630 976472028 460802071 485793254 946608032 979328161 260044882 443602051 726197287 985186439 670653703 792751281 174799371 880404520 152780435 386131636 324539851 762530085 266795719 372966239 539709426 991214944 772736138 790163040 215457976 563752405 134508580 693807181 249705642 365765914 847250478 970184006 785263986 858769192 484476940 772626044 932243826 977566285 442237854 602820274 703948807 782509997 815816323 816537791 993676237 999320917 282695418 504494736 205045896 437715199 681618913 785448162 327915709 565388897 599373499 959164091 534009850 969005168 616087369 755472356 488178971 849008373 319690540 940154314 993577770 998019207 832903922 962167892 743728113 766813856 745974201 836595895 242515248 825922831 902342458 946418108 158453319 413385679 854346417 885791791 94930327 490705327 348882256 811862780 800447551 993843247 753584854 955578468 760131754 777388136 674333120 791613686 760271037 986673153 621766378 866291379 695014066 960721335 878010832 989313361 776827558 835678301 849831896 975053827 651961653 966584280 523436508 741683484 745538298 910124355 830550881 977605311 36175718 415249948 200604337 233801563 632497073 868801788 621314285 728993941 972441769 999904565 487311934 574100452 573147561 592457625 516003669 749589610 304789845 679952319 710515543 760219627 439875571 531998181 533871114 611436356 69766039 634459074 734996413 786260370 259573347 817865839 688320806 766024815 897473280 970447337 441934781 741547012 914817938 946114969 668009476 816144625 288683866 732439029 220364462 862135515 850455037 995781898 181102131 934387344 876204150 997738526 197222697 370537785 483695771 905819936 609825013 775526527 488035896 583018373 13314643 383929067 556138554 731687682 563274558 939088027 885925222 928809916 260119799 673317435 440515485 520990063 456877937 649744180 628861959 839432474 474666604 940481247 813097708 992187088 45187799 721233296 462765073 901393647 346901277 763909344 620075262 652728499 136147105 804171451 815484542 945999797 855663176 999529170 83272165 572401576 676977397 835297004 607583233 846873133 140517982 422239800 782142025 886095951 625336868 815019068 188746701 854437846 403788902 454239895 885322776 932527961 813350466 876355540 899329046 961183245 656802073 870020593 438883146 932889510 152511069 861979455 781270872 842704063 649141722 867600252 344500125 625301741 902055520 957918308 677863612 794089002 870611866 929993126 55844186 142309687 503599482 980044076 364199183 574781786 798328605 827767315 348689359 552317696 227712899 334621897 377411893 663597674 597858316 775675607 244555166 790358053 59333485 217721545 878548678 936886682 35226624 426140411 690467264 921241427 956221013 983486813 111721086 618908358 856860734 928939868 483397466 678547008 927939963 940440129 192322532 707452830 480928828 750672027 983228111 999763894 699178080 952960009 375886942 943464043 629073771 729599710 614057037 956080078 230335831 591118443 382970131 972696254 657915332 827440120 996639407 999716526 265250164 602830312 182441152 357074005 79576505 485378027 574881116 714835759 428688488 492776572 23386255 251634884 811868403 905868782 594355106 686460926 436261518 460011527 327004954 431516841 439579728 848287312 189382349 391221855 652885015 788817878 178803382 401808535 515908136 743896777 380905504 494472544 4633670 996300125 849287039 963164321 748446420 956664905 326062345 647512565 95503344 814009131 793232895 991580406 743355680 927621002 302914568 971882958 285160044 388065321 438558350 473676316 286372094 724473383 483315908 682320752 439127166 934965686 242318870 298769991 612252855 830014091 864280898 864473810 632901496 930411675 936001850 979957887 159647413 511790564 388771280 543711978 951318421 960207207 137860697 676172947 719116390 899907208 274405753 377194830 272020763 325449187 200767151 486119423 868553994 951156797 6722629 628466287 629860986 830328797 173869036 200607048 898618828 990049669 961905926 976318834 604421934 692706620 778874317 837896614 947861496 957028988 123164798 666572378 78581140 345955216 671080208 982850953 792592965 892529668 779634226 854561267 715514646 969729644 604657399 883188656 730866120 807996800 190403449 537845061 346269576 576661112 255607905 550918684 637291869 758563699 78520636 431178396 924544430 950932317 174659320 657618044 387695742 499231011 482816433 650848804 610350828 763441836 400665884 951734187 525955321 904828209 810692537 952496854 817406748 961152263 16656826 213756261 686140415 899250627 364758363 760201353 21069819 373828409 79405811 520366134 547356328 880318054 42719490 887391737 872269179 914527173 793698208 825716383 567063862 575575277 27576257 237646617 299154003 764421952 167748900 863906865 514727310 850201330 880092470 889330370 98810159 536039429 681200174 742793789 369580059 774887021 226293622 321502159 518602624 563589367 395489446 791439945 884354855 994417654 326560606 545183681 952418203 997111152 487941392 597674090 950797001 987643757 532485010 701927922 758691563 798394655 42995357 656237263 449792056 808476396 283126367 888117697 624716898 657942597 936244583 987661590 60268390 846344629 153546191 988975284 7878131 480290712 978717734 981000262 560784309 856834800 544957948 946328223 501057393 988343699 829945339 948884463 970978538 980522190 679317065 898299693 901575340 973170724 134774123 279312633 952492137 969461351 857126976 859549085 573340033 790241695 975925690 991083015 165467570 688987622 473207577 918001367 522993799 953969581 377992928 745161244 579763736 586230214 257273177 445187674 367440283 635972723 425138548 745134469 538734405 868594893 477315944 647425074 750257973 937999815 841767658 857231540 658595718 837347565 661520644 738748017 197695009 804496723 17744733 32031760 680374680 758460773 460249002 901639973 734496272 878372893 699725702 737551580 691163047 818593015 998457636 999709500 824440933 903462123 994608356 999845298 140876774 624571468 648511764 795343981 325166483 835377465 676879140 686452210 129233709 508529372 188638690 815245921 212795878 829523269 924386328 946983922 466146657 961587094 972216473 976365212 921486372 956823180 246797170 804327316 718066712 948660530 732816460 858174831 704680609 877185596 616914845 857791629 825686742 864644026 915356163 970033705 940996786 952324520 646823825 686865921 644218971 999705510 716794006 728774640 113778528 422344337 103279947 562131016 771084117 885047141 262922095 498753167 184895378 510749911 208430104 897669668 49245953 808889623 366487345 609062518 993889948 998151569 233618513 851393588 530659404 933794258 507790032 972272199 121166236 714183110 205360317 692284253 425093673 822160122 562743870 622304132 657186120 792404687 856807033 913328377 347311438 724694866 135488237 374233466 286517180 900975721 384679416 834564706 359009083 897246567 699504392 935636143 738995480 974331336 753591052 989362844 861557289 906756566 736457629 752846861 547083214 594045408 410044949 459205732 377600598 733504484 696554797 854896607 629657302 975199885 732649414 960680597 953906072 961378521 277434053 349899744 154845674 631414799 752094565 946828791 983683103 990982466 156879224 869863573 988754505 990196143 339738144 534947407 589871916 705894355 887991688 980065301 970778241 998840561 150775226 294798114 978973671 993557296 388534670 558592826 999641632 999900093 421811857 958545395 281678737 744710847 687011022 893649320 526864441 672234300 347540271 779911229 903476553 990551354 822927862 955227012 359135079 488992418 806326856 857934866 147415352 158256867 545772173 568120713 90747807 277984797 178453785 320020315 603090795 627049588 58451272 912328289 651682783 806192802 189228535 645882361 423191581 732595685 284290171 694525300 447705461 885033604 576799218 812954242 853290254 856163392 662733960 785897266 401385501 543225841 728893597 772250004 342007559 788866196 136517484 698288989 594867786 663134372 72799331 646862590 605887124 883392840 319698203 327540680 997385006 999148416 98864790 994733966 2620693 844625936 780389825 876685062 333043141 865728251 798490612 941438594 441709307 822777562 322231598 363333299 180769099 784914537 673753034 816825298 457412793 729653063 363304183 470767782 379444543 829457981 304518314 791074258 351836392 537329391 204500305 803899624 238644478 614874974 871359413 885518749 38372786 533127011 744960241 882594843 211591497 699164491 609399839 739539774 470914901 873165614 427348974 692749140 75121224 564934661 226143240 918292530 260361200 805253024 476305633 771010359 734549883 864435943 592300006 636529114 751350304 923380526 674312204 687484952 779172018 831848095 957672847 964217153 365091169 703900855 310439678 772215709 173335631 453194097 628876845 877807912 229821207 373556172 40469651 647679762 23864604 905835461 160632929 847624243 606828459 925147309 285533759 532928061 856979514 999430957 315455206 664709577 12738050 93764643 712932655 954775760 464553167 615487774 623957821 778253863 424904936 603252801 800210261 972296339 326011198 593666838 829897651 871664267 695119701 957432295 630733264 795269255 931453819 938505581 276257362 335649108 844191836 966496252 773846625 936296689 69481909 992719700 299330240 650597153 569455207 583662046 288062239 592242547 777124765 955775663 743771620 999172779 989190678 999983130 630450786 998253231 424060049 557186317 530691122 730738392 958198243 959340642 38675456 916751489 280125823 432472017 363470982 707192938 920068679 930722867 756989751 760015800 701887795 829754595 685750408 926315013 440080989 891443213 164857329 205431821 301638449 948516392 912983870 944380601 758699052 933005946 582871147 697647617 915832056 938526932 509341602 900514895 875883008 963648639 651169294 884010974 217330331 655260857 9603901 262512751 522655302 722466055 885338868 997794115 207808564 725571946 305427947 882532308 511113846 730432401 35322419 148760701 268687940 613303577 148951571 649669039 277149030 516767179 576455156 818290993 825942785 878058663 106714234 573644508 256419886 638602363 258637599 309016950 117716549 877011210 471572364 736405767 1327530 881654965 41296315 213164449 245704999 338044067 143656578 998585102 895179855 927096716 69456509 708437266 85857661 537854232 680107699 983023755 312132416 546757006 627627776 848444700 359588378 483032046 901156869 976768919 741803725 965527152 810918292 980429292 783349240 842966188 726519380 963799118 113975561 394830692 596201077 818873061 304804485 517376057 673133051 979793098 580504259 891465247 268423271 891587060 71058290 864192905 178230677 890590031 181983365 955140991 389509396 836058596 542466386 821109210 157012199 342680281 302095936 893982977 126232657 252670811 816066856 924375277 667931988 828785333 172525577 178175409 685482598 863605182 208882341 405177913 330546016 897265774 981934836 991614453 774262157 812016837 763960256 910453268 136333783 406458169 219978266 245395734 656036919 915992049 5741482 471437359 67699457 513910455 146826482 167093786 438920101 565331658 314490887 456180910 47327544 903251678 316182590 473153755 448250124 510656474 875339740 912067187 188909219 356088361 691710797 802034048 277258643 783974984 174218147 768690475 136114128 353606531 91488647 550939636 796220080 983608778 623676699 774610040 256444283 584765928 48620171 407418380 575062257 663590240 480361436 876680872 368728087 869331533 342842347 725438707 926050585 968461619 84119175 343024968 779941183 825275339 874349852 992953872 386542255 648269326 462371520 554131916 101684154 119992784 721324113 809446797 947021333 994492983 609597318 956481437 411762457 806051514 562734613 797918838 767873037 768601289 856439330 978911722 529126750 578129655 669270292 882210174 754703358 879497387 810472480 965556855 253796004 438238210 109778181 237977359 87550951 462834412 619434989 681453096 382904717 493893683 867437209 939452298 88969095 236654022 501220979 711274312 577263047 971766011 133621290 348797907 296166098 315398373 300350597 715938323 459670041 481563917 24292861 948955602 839243654 886890890 997103683 999989037 319436295 344837915 81647465 888834038 498408524 847931665 442647360 729357753 655272191 812912950 242916984 999530159 696168070 900299926 200196290 695074100 872624030 964015413 73867976 583594100 535205610 953715910 249044476 690490576 121827647 995335153 730669259 795458675 158040463 956007191 917979854 955286040 66501607 105193730 911139439 983320889 177825285 433210356 768896127 946010309 679755631 923863434 185433254 921949356 172213141 495968362 368493718 607594836 658361055 880800577 712169543 859179105 770800997 992195953 475198554 990937578 410179595 839584986 169043363 806492060 559202765 573708452 824111097 981858047 202759008 741364149 32053250 788372930 100909806 939859098 258961871 744452960 59710443 815003883 963008044 999024435 603220373 667755611 843176365 980696925 841546941 927076944 962763015 997913436 224556329 980525078 337035634 818240658 178703803 593368693 126781169 843203969 166257245 237527804 67839287 438884009 448882204 568723724 986792346 988843347 15547051 644491929 213243731 600328573 522313697 796341975 757726719 782754717 569520482 792389417 818741144 837166451 789293038 885785987 177482426 452800343 167390868 491667312 714234827 833960099 290881531 421677313 438619669 796538257 936243079 983078830 801662970 831694126 578609527 828741073 978278793 997943538 265080510 609082986 563890008 595333950 131133523 585725077 41901026 590795225 335996409 511931969 676854735 994422489 12690347 264007272 113998873 980332825 377842195 640294726 178912961 408469157 781540710 958863086 355345023 495815575 464985802 972579956 487650410 749548347 827967561 890751853 893967612 906633112 82731471 961307117 173550631 822534371 922369502 969071086 160386690 456717088 77561760 807859024 887023821 891679017 147298009 147398242 354757650 924959284 490026224 836529087 346923672 808888124 96431006 592494759 633865278 932648767 850859826 952546899 819778058 862618210 917747395 971183742 925267289 993318056 636502646 693941765 809345713 815642876 785833724 877126979 419128047 571175606 698761821 849226922 830846624 926212421 970450235 993481709 611851876 700458713 274424386 377682606 819242362 959385427 13164021 652174275 826382963 855443030 419449334 910657887 331136495 525608390 177421788 352312625 138368802 318274731 798055177 939496696 304220992 582415283 54353757 980510413 57330457 300906497 852155856 903775584 25429421 863408825 416696935 616753355 187943098 325378517 950196305 993303413 269149672 687380923 358623705 613446931 756645296 892116702 969217250 975233866 149206737 589217755 147524450 450455313 208922916 756335201 638445500 851893636 796989082 947242149 875853674 984501520 170956396 180415335 842420810 919863103 296197804 906372864 319356560 758245279 165023099 451973115 298256065 441026529 973982153 988100320 769837289 797279224 596523476 892401859 925835216 943468670 828336206 967306665 310131301 421639569 301464019 861206589 444459020 988867436 634528213 780246809 210275764 428636493 215990731 390660238 307333387 728868344 507872952 794351471 204217281 422001105 413027559 882950733 357658614 653981681 73800172 602871219 770727290 809861589 985770809 985908812 312764345 878996203 705863745 783186262 734220979 914349986 881625270 961665900 25521721 530645930 976841789 985506808 809389007 828647872 729197770 819850693 787034754 938062216 31258912 925568285 411792428 971132150 307122769 858240950 19855679 529898932 324334080 584412269 781747851 924271118 647400941 712534466 798937449 881401782 55146594 532150737 749724776 962437941 921693374 986366938 514754560 578463006 771796605 815542017 166884085 951040734 308500642 992075014 59168198 106409169 446809797 693654429 481877134 956679400 571539681 989701420 310273949 766647412 12340294 807901721 224302124 775567885 280759076 946576130 521018781 948246569 614396866 706574543 888109103 905604455 64648749 779004693 895121705 896242713 729100410 968722551 639858779 839209819 536432566 855536933 44862623 870434296 131434959 762212896 497248020 514498967 58275152 496639993 522150466 668993472 765752093 775750378 84444391 674451369 824770374 882811662 589624338 741426229 143283156 670433818 593541948 825172136 97190109 564464002 482758500 640699416 548647355 719412952 608239780 938089794 748471744 949374327 809110384 971905366 773907169 955774954 48862192 468492709 937912006 958000781 613794937 649460485 907492619 918305331 902344347 971431278 107774963 728828445 606665995 762655050 772416003 993245794 842049858 861249392 113398032 429550003 160625510 428122366 584683190 596664869 911242759 914395176 480533275 832926151 358537287 889384829 748462634 998734694 381916846 459126220 453889724 611521346 726241801 802009820 680551438 883073576 31017217 433154916 558945988 753729603 510545963 638891972 247131919 804326622 939747885 998339796 911572373 935622919 462246908 776427447 222100506 530459756 690109439 812159778 570592253 771222246 299003041 740883645 90728612 217248321 316060971 750661394 865699923 880436134 423710560 982181203 578891236 972489572 627686424 939313505 362452938 841817764 965258020 995423741 93366670 261600518 731653237 740477660 885833000 980134527 254308766 991442744 772300611 887479542 790478707 828389632 428415246 844664509 140707866 169686699 666973784 848276740 703003631 817882954 128281708 652376731 100983026 364783392 645913361 792125835 388880411 941469934 837962943 971148061 666444799 887359793 119109107 629154587 638688846 855935303 822070637 866167096 963299125 994216180 680261679 711617392 205301497 474995026 62366933 413660338 240457637 609890613 498493173 658279211 211189866 871987407 962955398 971020844 636094097 740212900 447042542 959424170 438975588 603463518 908863626 919489130 577864413 805588929 438902041 482395661 553776880 612569531 822521301 947335675 794896936 885272370 362575909 635753670 91743881 144720059 222011512 723763876 211891661 252654126 246569600 639828785 854746276 970471520 590852272 990277741 838784275 892287589 451289766 882552138 289625513 698082891 244500003 462722186 143452880 552606091 237743999 351891442 184112103 213885950 479612677 782986095 636180915 954787162 740882919 778533215 137884210 169608323 520833782 801093311 445037611 857268286 677073870 681242517 617461270 804699824 843013804 884291153 947641201 951130614 217527698 968107097 467594310 898718734 327619983 829022707 314509844 447945128 257555550 313665496 778782176 789745082 755140422 762515032 995435932 999186857 217542785 237695975 571130789 808467557 754970809 829992231 36185864 336082367 170233836 531030820 961436877 997415267 76966299 271599971 765843757 829706768 36297357 675039314 258086492 686194236 352176145 474152090 145148208 830440180 845583715 853996643 207790416 945964104 606409059 849302700 471049938 894932740 126321886 758765089 737594891 895181086 432857928 441244619 813639073 873527872 404018431 606036381 97758075 735286721 627348882 655561764 615946573 699746102 368067067 954872116 509236184 905290771 130580962 906170338 363119196 928883475 776918045 918707000 414519875 631669127 82232103 650908467 80637139 272635435 76396952 311655482 500352938 580128532 365526695 835759115 13448165 396008692 81238938 709836384 650684223 660414882 812801283 832806232 477779346 986564235 826309518 964287497 210985759 239126312 819674286 992295802 240647235 504300717 677679549 718249559 986393652 994808510 773976728 911769715 470377277 943517011 459575354 781301142 851895124 999676931 768268317 774538634 491094242 864093696 729116853 745486622 372752729 703545647 435986251 464175818 118246606 796718552 926553883 946147212 885439465 962333389 293851707 808309139 832295114 868165660 210847766 876221291 6287389 473985711 537921936 685556137 725893649 862196940 139935284 305464173 31188954 624530822 244224566 789531868 954277061 994193755 255087855 709180930 809850629 883943744 348908029 660185222 747624691 942660692 209414463 990517465 944212430 973497679 781381550 815547990 375036686 683588974 372553137 596835931 515530187 654920721 810196097 903554161 516933601 737244071 813087979 986555811 809649180 992071920 182425579 582050502 711989570 741969231 235768730 468292661 948262756 957824417 826226631 852961499 575034423 799346115 356011087 379940503 759094012 846169878 535146103 551923697 748888316 876472624 44174918 297164019 210812436 675046249 347633567 550610810 988240095 993046964 734911599 850613387 206671349 408624514 622328752 742069843 491283330 799101007 714543014 903556832 212311313 488733370 513784551 928608553 454572640 671721801 33070242 269517905 922697348 992266022 349970944 729297573 528202716 572016977 546579014 761714551 113253529 274232893 545251756 690247127 987350825 993779191 287671799 906661653 30580089 369388640 610447582 954507619 301506241 318404320 830744286 930933932 791255784 874065364 730404483 852694935 403777174 563308039 280852900 746580987 789207599 942414634 686338880 923024480 712790672 749568655 793805062 987911091 184922048 941722432 827678634 831490361 379747392 690800743 649108151 994027834 93845367 159698017 997317647 997471830 644907810 848009587 223408514 670743252 498825860 986685120 269296390 496479064 974038058 988553687 38207056 746668749 568716663 974660499 644297307 720884910 225842812 746449685 473698044 927264134 9933385 119508181 111766519 444790421 542955431 697447594 782951932 985281466 72052938 95783379 421458800 775995661 158013258 664343096 327724499 332811417 920713187 972030652 650046611 725442159 58905230 506498568 554527433 915818518 174583437 849424352 226039669 739691717 805732477 951215276 818812190 827556973 900290138 924011909 688728306 766358907 800620857 874742340 736198178 877487440 44143299 547275310 517677119 572191092 33513563 140422964 885364375 984675898 164391018 860323960 350422148 875554110 746036397 959678288 486034968 895046978 502948894 668584747 273628352 417072539 703152266 915432639 585747833 883785848 369789760 746962512 184179982 839181199 897050542 914632787 574520311 941292818 949589268 982120608 93827513 510743407 580568310 633221011 885965453 992352769 517876208 834462174 380907212 812892778 772323036 834016769 20847485 421129655 564634685 747149447 485123841 627362687 671142555 919971264 67034772 721989242 117676230 964069121 865120789 997667557 680820932 925037829 115503136 979707493 575462633 951318757 797359545 969381320 638305484 776670592 729490965 979525972 926034848 991065142 611027230 690085742 15156304 772492946 310224650 870542366 976530856 983504793 717155219 802991942 59629516 595629786 681397772 965046812 367329479 960421471 642001425 965924315 161108729 310416120 281583755 386742137 344888100 610910017 719097354 870828204 498651792 749053107 801959086 952969965 65644560 591936028 457184346 472061583 664535513 726588964 992314645 996013471 119909477 851675291 673963021 935478092 694037991 712784125 447362437 631184083 552332405 758921164 490478261 698048014 101890380 646122979 569034221 982693831 187573037 255516342 222347142 342565864 237002524 421937930 563656463 886563526 419790846 845153271 346557341 969760766 171169927 320365789 911751874 976960751 314546339 411810059 700931506 956948240 346451448 637918141 132597063 604945443 364223015 407862605 761873421 914184677 773607697 859212099 40923710 467362950 733429004 962640316 60127541 258341865 59634057 760910118 847074739 887684034 775128456 816169498 880143295 955975694 347036253 926241865 962317929 981109796 502829884 860925009 631558708 725251420 784696751 920315590 185944313 845020681 583473451 647642426 827318158 975214221 831523681 910364113 302935575 633765091 87910722 518643615 388867559 998089474 243575771 321069046 133180012 621607623 616045783 816759791 181678385 258960975 860522673 934472966 808739036 924536877 398262715 796666217 556049233 867515020 515135692 711175160 265657637 335072222 481166656 675393350 789263774 943476343 582453995 960487401 564804767 816898628 145923475 514548421 291493959 671521568 213132189 861460944 412185 191626499 885341410 974591424 974027256 988041436 184101912 392892934 672851004 881807321 733939160 754998703 204073236 550022080 884335803 971155851 442001165 912917562 15769240 626912537 931302430 963781568 968634180 968833311 529873873 790007701 828281000 932661224 266772436 757805738 628762019 682029403 547992114 831647994 561326474 964481873 796362594 910819352 825244651 891098729 611971790 651931443 391296780 581927486 284319446 345052763 844041053 880890246 187187727 930395629 301369471 643015967 293003477 704296484 720710217 945620744 586606164 954057339 924203983 948117746 51710906 471127738 353556713 876540290 394402213 815880732 817461309 949843670 710657097 801108170 144785790 498483973 716458829 910562056 600142380 983731721 166468372 357104657 131399453 537323049 604186920 631014105 955999908 991772616 416232338 594470324 455946282 459532462 489533323 975742354 454561338 460496288 537737845 583720553 346424802 936113700 526762928 846136810 317222523 807132165 660267331 880578154 634565650 972459240 558909721 986893318 678741734 877831657 889517184 915063894 443064182 851338934 869261326 997007057 321531712 683825559 581326769 717659532 96398456 572406107 790476501 992148835 423001189 727721724 703902354 780321952 125438904 293624690 308287022 349377369 321843296 696246528 330262958 886337914 220159281 555788002 712565180 715144697 466557141 883020059 65482164 327344920 29013518 570163840 58400559 146103641 247738474 922320458 607563287 987458530 410183465 853718490 878997956 945148591 524912123 676668355 736368000 793011612 324315612 946370073 152668376 200157534 170622586 815527973 974103906 991124532 165173455 742442637 972551159 985048836 588080036 986252565 326126385 843430586 265967918 363026553 721692353 894144312 905975334 951496347 611094781 793064774 200578777 582717251 625351438 641620978 923630477 975333697 597467952 673548815 790362449 843287943 383695391 902526451 12620877 882851819 592045836 637885264 242249149 948773695 933522813 999317719 54582413 402293100 998083117 998408870 333902821 431858852 946801147 997088323 324073906 610014637 292531493 654118912 326179141 595451143 904337753 957925846 305973215 330655105 788071414 865585077 468078018 833208222 827276344 983957052 238646168 979517419 468914316 876293151 275405338 880901029 155958311 634277140 940184655 948716686 145645794 671602727 528189157 998636459 357436235 892909308 468125356 743051873 752855936 993666615 323151372 488501849 363404808 513280952 895041169 923613411 702471514 714685210 803309178 974771442 283185916 530406799 436713197 537739381 924712905 956478347 905328322 959008352 163210566 194013535 690054774 793993357 97089027 150460973 824061747 832587203 68322024 504947259 622305329 624537230 904431992 906114101 710626638 856348643 322527905 439918373 357295480 630185741 637547325 940972132 477359404 536418230 476388269 746708144 345793666 909099661 900680273 956253290 827093274 830696328 430542037 997965328 211722604 981019084 773309958 984356861 476373742 919864942 243179075 405948950 536542238 988484816 238115161 792396240 567042443 599091662 564593280 850365537 425582011 938114088 140867175 692085275 298210684 614789176 451970202 502309453 238996928 817470538 160680355 959779433 251017062 632001111 583638594 865307725 844561748 864496278 874700287 880840582 969934529 991274065 845020462 940285424 851107318 869553010 908909209 931546440 577068820 609452542 973453947 978337770 540096969 922786559 720016947 726649253 293882791 939797697 100214269 373800542 913833088 926657686 742698513 818899334 303532600 535200544 637385989 740698395 265580606 649729744 807969181 884576897 821033615 826238213 614809540 680248550 313682158 594412997 285497062 833322128 107331711 695505034 785031073 924489050 937061507 979356907 994589031 999265403 447337689 667039126 41837129 625948564 360432842 892226474 240786219 625859713 272564590 782794320 21235487 41162382 174300310 651301485 513355396 523911860 132297713 784613998 860250667 981100464 825443198 952368503 422414458 841033164 170823781 717625632 929621290 978940375 844039145 976428822 912827528 923199080 177024733 608960803 922043312 940193587 524098805 576027521 655812314 793379187 893510592 904090123 571057720 836596266 279134348 877664628 906283102 980394453 478118126 490258008 771083065 815636119 908557121 955924482 245647222 295774270 84868909 184534479 492970044 941909857 989832862 991329610 456983841 484764838 639669404 884234880 917394941 984173978 574728192 850024190 29923681 125442853 814343545 883458973 340435708 925900492 200350090 438198248 622789811 701309796 22047191 780546787 460373736 695292057 887617509 948703867 691359263 764723577 708718758 789546483 822437614 860676389 833989353 879775708 326631768 840626197 573264549 583628845 535008633 606264649 202080853 487081758 557661445 985719698 146180292 555090247 724701212 801872098 454263863 512512844 107394393 534819944 108107373 258018719 553072944 602377093 674068380 852806813 652184715 998635106 823561675 990111260 969520299 982757434 798629431 986432037 615275610 698049834 400246099 417394914 498726157 632651795 429394850 590177654 425777202 907242534 554528789 660034391 134502356 868928993 746336327 992739118 282774652 798281798 720858826 989094791 480322341 814278245 152280369 196766750 869308818 994474822 336492962 612380147 441952449 445975880 921614930 923585184 848839555 966314083 930990234 960942102 318841375 352174339 847232050 940019692 321395576 779175774 924413528 997355171 586011653 971241935 499081681 624044950 641729807 876197379 891121440 915732272 987699091 994283027 621973801 906468673 156693867 532000316 671897566 756797085 338455167 902854518 543864855 999235316 750102646 895663583 905150766 918741022 280431359 732980501 449895737 944828464 622665806 997072156 531593573 624668522 348292570 906584010 154991206 827022921 68679323 437162343 311297856 376500630 580191186 949756798 584998051 814554174 318747981 814451411 904226552 995209689 339967028 585631358 289608537 369089362 637270172 782612465 964747709 999459793 722194817 998337081 396725469 408149546 167182155 180926393 25418240 598259649 23446008 264120502 324037871 810560234 601682505 625740696 537679380 853571993 675283756 707242240 683699377 985626743 645808765 670452320 135585301 812109438 228490669 752720602 256107575 735525207 441059202 617407140 107324011 447504532 60991636 720996102 758363912 892426481 235312748 432619206 905941363 979594223 912748880 997205756 965012972 996134245 672271745 781330043 351181316 600944719 163165731 918135278 916445273 987421027 870551629 918797935 173019390 325300792 467352643 964637607 818677179 879030270 27787729 30420427 488385818 540860341 188564989 682399658 918931757 988641530 146528219 634983809 552784963 570567771 887159452 963632614 282248331 548507493 525607791 655945556 589037638 980278625 796894076 992392348 645630681 775214981 169877679 361649445 452156548 787662838 746093929 870842921 622291632 903540810 987445065 994934565 261347458 447950353 789112364 929208889 893976605 908793101 912211611 986087992 391811715 731807492 732120792 873980368 853763443 916786742 71673260 461928507 960919053 983720482 769783612 806833389 404328444 947489261 613718970 845975153 690118757 834959298 126055050 188393056 484588573 792286379 611245567 828735677 751093904 998602770 435402742 464080003 812469267 908555679 594126873 897127328 168327175 387046097 843879048 872183626 462606371 877133092 178334697 234674809 82589327 260303581 458715488 655323664 189843616 760340949 985217316 995483173 284364307 642325809 119492284 674548338 618158541 825558952 69479297 387702806 878953804 918673869 84854384 576728931 24448407 495147680 719472431 781890504 9253750 190989631 905329225 930128617 111865290 745478731 409321475 845212186 543158616 882361494 501849233 633843444 365780069 417182931 885844219 925240366 859509654 936315289 314933258 787914849 544101892 688592543 158112020 954060223 258668152 447389238 394518438 439592027 368322634 487617112 678583738 759403612 411949186 605316221 870632221 878253153 947690355 995174305 533614712 837089692 518463262 681458296 641357161 762501766 549309167 677276882 591171527 891984302 967799249 974182061 167328260 494790193 902591431 989043451 91726444 896927863 807114383 958003020 852048695 940512706 684897000 824818165 732131438 782186495 806167463 859965028 129119385 707169492 591195734 958883500 808678116 859836882 503007842 517449188 41458141 601840258 265749452 718708392 695673110 833787797 887363002 959904896 721314225 908396465 682546759 854094390 102205203 837958804 734541060 908369961 727750443 812177057 470447501 915147802 857670803 971246438 180838042 920406710 512930008 670988265 514233853 918573944 163958811 757817021 349700074 418571927 716946081 998718045 974178417 999490669 928605462 937408045 154742372 872822661 15446937 686598604 640031147 948270072 912453300 970468501 982560448 985953890 60022090 702684252 8245452 270791033 883755585 900061204 25054001 771306918 1414977 320831219 707654573 824157892 598797367 859521079 648520446 786693821 186445059 949252834 491228432 975200949 133085888 774758245 530201350 745202243 622263690 729261501 876870298 976034637 401403194 822087373 606725692 773554742 552686194 692780011 70942324 581832817 838651677 933944289 852814069 873116322 710801792 846853986 585680368 599694958 371213312 661634078 895750034 943072285 39694872 448701765 202811789 605426067 204156703 673393845 472330373 823560375 6199849 60203831 897063677 945546294 355289101 755373385 256118913 660223030 953113294 974849080 520973964 790826370 926709789 933801041 194263755 966804671 204373238 417266776 568807684 751353733 700952125 819235122 887980769 930319337 507814395 894374107 588803464 996420801 994223092 996948252 699777549 874502543 366438183 641865518 51600457 809074005 172958612 770035823 567471314 831911083 701343810 850585058 150572984 475905981 726492823 745539902 443172538 946945190 776094934 957137389 610475584 826773625 413172530 629520806 948839055 989854582 841927168 887314641 406822251 862287228 204717568 490423850 216637213 501741008 427043704 846316093 623331906 763268562 634605302 719952078 477580681 729647398 697674463 873240596 867134062 948426025 464077340 599973921 14992271 586944696 953726396 998409409 158724267 787467858 173934157 715361493 317197652 356167384 7998838 604082187 984181236 995738419 367789543 975597020 288062164 977017354 840250445 919765749 792102710 847347323 9276302 874069411 754723205 782219258 98654188 710240901 299505754 979689384 275852070 425825462 629776371 915305639 946497253 974118182 82140323 273340617 710831249 770530382 313632162 676820135 803861982 945844531 81320516 532744914 43259709 100399560 493964958 614572809 159290847 559333610 340781042 342531135 990206079 993330495 132712495 560434437 418275161 660718231 44831088 225770722 121067881 513823725 341365201 670766065 746282850 963457624 918637935 919173783 909153977 925422515 586035325 895752731 790895902 906142169 927882284 971461376 898999039 947300723 241320380 757700119 443495788 952751045 367769556 790845509 351461648 383648563 890827549 975311759 268361265 482818408 941067235 953139941 961075662 967623795 80926961 876028283 501177318 521200139 410266845 970388831 15670016 913146428 964380304 969428559 450446725 840233589 689244838 996136096 112229593 284309492 107143611 947145306 642940093 679548401 786850074 925909807 4828602 944646376 481503700 769319331 388838070 889446001 206944624 579449676 707276639 949339349 23958621 569319816 470815147 908716003 456087786 734943914 505970453 994246037 717490329 861993001 220179092 914012830 803801168 948970111 292580701 617371453 195242690 385874386 767968618 924799607 747826662 905809879 541369018 573993846 13395614 937684559 890882723 983866621 494667209 780523985 421280840 733094410 786678106 841492063 790979269 968204519 65772973 554489684 659504833 899963484 904990113 927119889 665375979 670769856 62255407 222391708 283120361 592430958 417306027 670846645 154635657 644468246 896886843 918252541 366597675 936031831 301781179 720323157 528437022 868300715 381605805 598018922 265302313 941392093 262956168 482076767 490250478 717031583 96747379 742733146 813237719 955577780 890253038 899360939 986288859 994081393 511080099 554644465 136493999 259911873 530730148 644177054 217319120 684675851 1038230 743681493 127517574 697712638 740371447 776526400 8887064 189846706 847392523 913453888 960969373 971210895 911473388 972369591 470180618 900247227 73992872 124904071 789223796 875962867 626569150 825981647 334821771 691794579 899775074 952352446 382441332 777817793 471740656 544370652 830624434 947590201 261657184 534577878 742758789 755292392 655953872 783677857 343947929 810159093 766567381 792839055 491137563 742727142 924860698 946899995 293958443 452883360 114959529 980101211 874023420 957804965 55317337 602024087 989349911 996180066 102605369 492674916 604998025 764212820 90384204 539583237 458792176 625388069 306762507 737359704 323366829 459593365 186373996 817539795 520556422 889446995 233661750 425272601 6893565 643400170 41830298 620811465 72064192 349209903 811057932 875955468 407674249 896740211 261334141 396598148 896784395 986543973 128263347 846175527 497891605 727683399 311206201 700329751 183528586 712326157 855315130 934422048 832975769 857005977 802803663 858742099 532950548 850711150 435718328 582976336 475965555 895230606 848898447 923009971 174677335 787057513 804467614 927511594 241218158 904253268 775216515 960909077 857871775 960766198 160811721 471845324 208103000 923611395 496909622 884761036 816076923 857617099 422143923 541517168 169363617 910762949 196670357 241965486 616876615 843006456 939455121 981166336 768889303 919507027 525299149 818037072 487914634 666782993 585421286 613258601 173146446 619985485 921563664 999922698 847366308 914155285 424516065 702881374 76797575 750868526 433351066 631863379 889871634 929529328 704559157 914605064 188910027 657145116 499968057 815787565 996102823 999557473 667001162 890286526 117605884 267138849 384357419 906827282 441170568 875300561 568968163 880909023 360087046 881409560 520072618 988690899 392331195 657445532 956454011 986789414 995402245 996952304 112956834 208738823 582708245 648089614 162751494 344481733 505487915 545708952 509771058 954843379 376148923 840127651 761502107 800628888 772362041 931976961 250334375 334140732 952306054 958736820 277659451 846123658 684150177 834794886 708480822 911458699 180340120 997009087 191390687 694151144 79803254 423593364 946093250 998471043 295628218 871584963 546736820 558315451 338428922 356257705 155404667 241653442 687022825 739178501 115076011 511150967 223354862 359293246 766286263 931670880 828955941 928932499 948519614 974263656 861040555 899139706 284655158 454538412 575274643 748958610 860063845 951073944 482015887 706144798 209486096 576943091 963283069 975335983 989540445 998594049 489643475 970977879 918041963 971405165 375525123 929785721 778497159 871330721 460568263 721846404 810404350 897748092 50575546 157977499 646933570 852679472 468575396 675092054 112659450 921151630 309425544 839021448 598592016 616888746 480695677 938272175 904565481 992781826 378364916 387819531 897755393 948147308 154111324 475384975 648019836 747799640 960311340 975430356 427270094 492234463 201980689 907190285 722261656 966031613 375850481 999545105 548792733 792904826 642355858 907713546 439138674 479997975 27146921 408096660 128713370 900366775 660626044 735052426 668878872 793453553 157146432 178385849 613863689 820602989 365744390 936703569 610912209 642806321 559423411 981614235 428388402 721700592 57047135 227568867 175341290 748482475 602833161 633475837 884842684 962471650 278324257 786733438 900387627 923649115 826115379 908862128 108954651 285619088 935005265 972335693 697273390 811143556 522335799 571912855 96343978 705340899 317201928 748616974 277740267 465839801 700333795 818257938 205223371 956242222 230482866 325530776 837200304 864391746 573064524 798872108 298365582 598431634 765788174 823087356 686597830 773859662 579237173 863772480 797146491 979282264 237089372 888869572 110264225 419216068 183480953 330841814 116978376 433365166 859291194 864099764 871815495 935407198 161076558 976168152 226216855 619784214 459686527 561393305 543004113 680488939 21994583 103437040 996914656 997295635 300621448 736014454 959513334 961871187 946250495 996249026 719436343 767532899 845401494 949405793 126440857 155192721 773362554 777280616 371685882 631754549 313369209 325087733 485650487 589452418 899381176 903109516 423910075 632132743 964904453 983208727 944076447 971902892 333823359 598279361 975161070 982459511 640767865 642225714 890941804 987885999 945512763 964755383 164882738 408867918 138271921 774153168 791115544 851815881 144763878 388790146 5603648 964402063 967285491 987325629 681315112 878452248 662474029 763899064 934994339 979984787 359888351 862694791 620030918 931258245 786079745 876504764 123389422 263505849 743491797 919354725 119194113 584563007 254446235 301129712 763904221 926902445 706034898 724868533 375314253 471515117 637601535 903653569 813205455 856485654 788680000 799048804 971927868 987269397 932606808 987269787 129251820 865340121 503778456 676453051 202747324 653948062 290430102 756071077 916320143 993109027 790043273 968042357 878229165 991850776 59943367 308839830 881414823 923094582 966647348 976539055 695359722 755349305 734498254 930877971 677380735 960784604 916174908 995597872 288568390 423630454 288347454 926281627 666572881 808370617 54483167 494575127 562753314 661631869 965259642 972719877 755509821 982659904 363469588 642428454 596136094 863770343 109248025 975925608 493562168 926495988 76374654 927215285 577336620 667717018 790952118 824944244 812617786 990138001 585951006 786011128 23504929 222923361 527926727 607163973 441853157 787081638 445523380 580105735 71270596 199732040 431511729 599770633 377715555 838743683 156392375 758167164 525848537 940237218 398470534 634214869 840038123 953427367 77214539 882075777 739636562 835684314 848792554 894333603 817609242 832149823 478725463 610419515 40031277 268001329 161233726 949572764 499501126 942360779 20480286 861711465 681370931 734463900 94384346 166212118 20893034 290166164 92642824 968271771 866426329 868000023 613466024 947620831 507815105 872391512 525063232 852130613 16469342 918712304 826057691 994797668 475623565 480815890 93258447 465509318 410812507 916334895 461130317 735322941 39869220 224651586 815107903 926973311 909187872 933042766 433291812 541224298 432613249 743241171 982764969 983938577 205678106 613074250 365316499 984175098 59823293 492868005 91568063 110272177 946096051 991923681 674808762 687180173 479625447 725900636 591151272 664147554 663482413 979618373 428828798 473350682 942653962 961738837 613955617 736766840 314229935 769482522 412475849 955291249 996905471 999307297 833815576 861002731 611426928 783236218 394157946 623445458 158818087 708090830 714082233 997901816 920717548 957092470 933704836 994659189 42306423 962382538 830787733 852147828 500697484 885408926 750387448 888557045 324007584 868919157 361208156 819615468 554097856 763537418 324220771 862111350 883700800 885288644 325433346 730250993 380153603 572109245 728283202 784191862 557398197 928930742 626839790 899619321 824529604 996008687 616925088 734760538 304541389 754080741 62492487 625305558 770015626 890807255 50406077 772014270 848865677 921703578 903490371 921951853 826440030 916664640 286458175 806559759 78790655 419031698 263620806 492145846 667357417 785314760 414427303 940141353 324111166 342566594 419641046 510078858 161312065 218149412 281867846 786349891 761600519 892810542 11524932 727116529 115053452 886236857 174969235 760299277 409182044 812115630 234416314 495405629 160769146 522218118 73461376 397960563 731326710 761031105 754215488 845651259 531708862 724223036 749168301 931252372 896002156 937820076 580657905 591538599 134034017 184232290 447523614 867163682 879565613 986514786 473801821 619681567 271618691 612268311 80844391 385879046 706140462 758936939 157349834 584150644 181806813 715440154 704508844 906464868 933744142 943949093 66799348 122072846 869492061 962659965 648496851 855879592 420148200 719921662 790357368 980689619 574180261 960045430 322206663 509251693 308146496 936196593 584618509 910900079 472026365 868109067 317675562 807567907 584638322 841716864 878969273 956220028 593497059 633594776 519781176 862117993 270974602 687361076 118335512 612587856 709201763 911825222 928796631 951722878 819353484 984633323 297705932 660723549 919641495 996456136 532226980 737579674 216490224 602184292 865170395 905264608 98558365 603232355 998147789 998730634 334743025 773914408 807292850 904350898 354627773 453827160 153198184 895840300 222085443 720668877 863384310 976695497 456170915 975728053 676031684 834265490 806219160 892090654 769528435 974456655 373489529 964581459 395609347 801110232 483397864 672769427 555426902 840454765 15673379 433130041 559527588 607016482 658439096 900228917 48448853 61259836 598868617 888716025 920154626 943828469 226753729 843056033 757895903 939055313 564058660 837281873 481223841 802504815 489404182 940447303 556530068 567117569 208696303 361393647 362513932 941585623 307309556 529932064 61818524 160662046 592860820 745323165 683531153 693579963 716082548 849196707 163756815 919710577 889255852 984915800 736061843 972668598 221339898 369120366 974117938 981543557 75533334 553400745 24233056 570102899 462698213 799948034 189697114 330550944 54013496 775262106 348874140 932527577 108249291 624151497 949161477 980151279 654676706 837333438 811458911 950460089 596209234 757850474 315086372 716845861 151335793 224848814 772772587 985398380 911279774 993289782 323096929 795009945 780930802 883099693 813462966 823666418 12221299 757279641 653358846 798448093 194898705 953014906 461892800 854226331 290756392 583187082 362765389 641678627 513229713 522629832 993345273 998167108 226429639 995620823 183122344 346691159 356116129 855667507 236466947 817937001 547442164 613919734 822827901 892940532 873747969 967521845 899902950 999675344 204162580 678068584 466616964 528095996 867496246 894198925 947753093 957584326 25346657 762309813 401528038 995954470 593894096 887537877 848848989 945567332 915527274 922919471 230006842 672755387 236207682 553562665 405560365 885551207 865295237 910134606 785042487 914414960 176529937 595857443 449849064 553748061 153885509 953581774 638374390 671926969 446222025 503686618 905466867 935327452 812967086 951307057 760664601 988142559 505526966 751478846 759338471 992567621 60492273 877421506 23564402 903645971 856227176 870868154 855108976 890138762 532102335 942165491 740328799 918925378 594776227 989039278 112097549 721440473 137020200 485821401 724751190 806236197 239373361 269764562 215932377 944879801 145068203 719767268 194326966 260450683 383106030 971554852 174327881 911642524 616891288 897939106 160537481 211444846 779781352 893376162 427586478 690498707 487470221 822657208 835732326 991560511 771294197 865585051 876071619 900107741 330623607 355677702 452501270 707245768 89384750 186937821 439122997 605333236 394061605 783763764 595511471 695943793 514351252 616522613 582321227 816615603 746168289 782103019 167268322 354836672 317423329 399117915 441108841 446736891 238247162 411065162 95817887 977512564 994528828 994823522 355961724 607290441 80789255 620952506 524455457 688150541 883671159 938845255 629829916 942242848 899440351 970502932 25869881 26245588 892361225 976288577 919488779 972793248 75150005 910765629 818035850 846076468 48524958 716151908 339451894 342952167 472579917 962538889 533834636 636596507 843711106 960135822 169877893 395007406 536468007 943937584 692325137 867838407 76945451 240516280 212469916 746261988 431228787 575118792 579734989 661158227 825750854 954712661 562789151 742929580 152339839 367918902 111553562 531632592 618407222 768669172 476928587 696442989 181101134 685564071 898924782 966257788 186566270 187597463 97005555 557487293 819232388 994385404 732568315 876666079 797203325 907011909 666868173 808194754 225714303 720752787 750971287 953266785 602409853 763273982 869059171 998663662 479448950 986418350 869045605 907204243 339619911 711351644 339156932 870925945 333099538 375079821 257949196 467990079 238974296 563416822 313616613 751088814 637674995 933415015 344304459 516771352 901020852 977255289 902226116 978779808 369553621 747394668 706914957 770774091 689307720 940623117 443278855 671393110 259597868 564954721 976428750 983104324 409493113 529180184 867447922 917726520 956350116 963069775 236596037 256232927 270640548 584930703 769342132 820088158 225024992 844028122 863762082 867213835 256151199 283995749 568233267 743052197 475689822 539877368 659422435 680362061 750872848 790460400 737909767 899659057 264129785 692956860 806760295 862096617 544199732 984676190 311879002 414522488 829131916 903148727 325648759 923555169 880818822 965700135 693936252 900037899 171279096 525701009 384680903 609762221 827973108 921155571 938573511 962721912 313912397 670526717 3120508 264823828 848731164 974731091 206616455 739831805 820729158 896412082 525760951 744692129 945140552 984175654 367233108 710056918 690388680 876274329 371118365 907928450 699864123 785478636 373918651 502105770 541588215 607657409 72909936 802896286 686069806 831674757 458840180 747708746 312117737 561046290 459765313 955033316 437523553 561248073 706681517 909976791 413898200 777766730 989057165 990790681 170804095 345810299 121307924 209764979 981351555 986815272 558606621 587386016 634406004 809204373 964379441 985210990 321775957 598200910 230912543 915854300 450192245 834159101 432851448 976198557 238583565 600557429 615506432 953647805 596349825 778705401 169409592 300673247 638159136 776566021 644734190 828550053 883082974 912491481 749610984 849028958 215486180 334310115 438504624 775847310 853110310 895409326 624354288 637991875 873449161 995705968 870979920 913037365 538274586 696253355 859149288 980489126 175140765 186990089 613884204 933826663 544449640 582032939 800847570 932766286 628270037 993041266 594267355 865667686 793689358 819440613 77505675 992467773 195300757 866031582 609849028 760081493 603702299 686337236 59394368 805196004 161285214 802622466 827410167 979353692 663865153 956835302 639975149 944772454 298873705 731320900 428914042 573587842 880904786 960964381 779437059 835270252 344092348 595485216 843097059 967672365 481311043 797070072 443000078 966077271 616929501 730827826 148745271 777081993 721516751 985511181 164400897 837946311 2255181 142153585 652640731 902870018 379466114 929456606 669441609 959435546 291174566 473086464 355383715 749302695 682644382 739396204 815823790 849698095 496478075 560027818 985358184 998651873 846622302 991417700 808121893 984794021 126009976 979935905 768458347 927354826 705279876 855171637 549786510 746957758 640247199 645535279 649326293 690239087 173315855 817817155 177722838 803160540 3948732 827012443 308574821 440039952 62238105 563107863 751735522 950831248 571850025 898024689 129036796 145189969 628477985 712232596 724245759 771763808 568051326 797974117 737739020 955397983 937104455 943765233 375987543 684191748 378063954 703310242 419266959 850574550 380767811 734708067 153925578 559329109 998007932 998436176 473468455 930076374 252260232 961306059 110328964 608262783 750038408 799191055 924809666 957650898 50989100 455552558 345574804 489152359 557288794 932277448 920051094 928646749 845069638 900446897 337655278 621212869 913889680 936227261 298628679 908408534 902764692 997571892 24170657 332776518 521576690 793360910 156833743 729540659 710268846 955771055 993170215 996956457 864801855 956519219 710861577 887597170 971653925 982719297 253205242 965713535 745658678 811764946 455433971 605104841 884335141 901352812 626393719 679086617 586539509 737065952 986882097 998818350 725875696 819980600 610825425 935466265 459010231 490219498 302736014 381052037 563779017 897812290 141398658 701094639 296119208 618920133 39463704 107515548 343103691 690795246 823401934 893653878 429442222 579616582 595156933 666416437 879029286 988130336 198830275 384652249 326210434 701301548 114703556 822962312 256905048 364026191 810937424 942094518 157862978 248782972 260206349 325634496 700056105 738135048 799180350 800256348 478634541 750464639 438155517 509980248 870260608 890283761 915586656 951794924 890970352 965169150 859510600 884039358 977508321 989161856 242050218 861833564 947041253 991638359 298461291 384220978 156124636 562463095 904246836 913606410 543599040 878046588 125500256 203176316 783826420 927106509 91531820 752789400 503658244 755834112 965835599 972616877 691091781 950004089 145866394 831422458 565966822 972021096 21675604 715758566 87629615 311416951 62119786 643708954 170661365 979401598 913393694 963743760 786482157 893889021 674549720 831546176 444734257 971965711 33338473 440336169 714458626 802816544 575992147 815480366 581071875 648912834 410473918 611078228 871697704 925116327 481238298 744720113 220414965 769215346 988394432 996014481 349153150 568016361 698445789 735482905 10721724 940154615 172205611 849721272 686914210 873695388 660530025 970396402 429786359 948805090 904528682 973019048 990094649 995045427 123398740 919697573 73903025 429419105 650287254 848186456 272830794 944693525 324172589 712813039 529896676 685072143 204205671 739974596 780850502 815694391 320029388 618908566 684907821 835759003 727852381 745297603 223711622 901751214 560354551 646651483 245266661 957979273 298819638 751019940 315280475 481732600 510292545 891360705 693097927 965511849 666947695 883814276 720072720 939115881 174694618 474241534 262123519 851170622 731852577 737587073 691869091 892493381 588995124 603433016 550574001 645054463 654758822 865937142 566366308 673578402 855814048 920511179 972387890 990817499 287294428 697243713 752282523 952218707 982832275 988499450 132662803 929801792 838401647 935183566 560163154 942117200 552193658 662069651 391840457 815220700 23081510 511286329 526628692 690706958 874074972 888651703 34302726 442481173 944077490 960893625 305421420 831445439 540082591 818132256 961454594 967825661 221333824 411823608 464353113 664726578 459419401 762386565 703927740 855273723 530114629 959023783 583919578 842477537 744466534 801273829 242813742 540249689 181285291 424698949 965381554 972848863 578816656 669617386 192057119 413594204 975932616 995035522 282501881 953074386 795241492 822094109 384572234 542797166 276352500 921659776 570624514 960096468 209232807 226447034 602765145 688385607 746510669 766868485 96767334 920039091 731007941 869191884 812745813 975324960 61744938 502913511 109000790 703843181 884165955 930179838 555593693 636236182 269900292 780949741 870520619 994657490 403501454 775651683 249210610 923362365 150215987 569021601 733670272 909164095 899842780 947116687 111383592 309366344 201030009 534013975 294526208 991749344 262562951 431142017 466455222 665026535 56312794 465459173 101356179 699426464 756589939 814141181 686252024 753876691 447260148 942061303 409208198 896456280 47793147 177471294 904762675 940469743 849174728 880367708 984746826 994349016 795779688 854919603 553127846 597387323 395416795 565663489 481255208 699709933 878368142 921762559 745803665 963558549 696981244 931186737 272961179 609792281 105105002 987769813 167326538 581626405 487959887 511439499 832787485 923954596 346135827 872764926 757249796 989086738 517772863 704439032 960596540 986004766 93373903 957523908 85957685 721909896 866756699 923057911 485538322 600622930 424846246 884464453 992009921 998851621 594432965 792827660 813614850 926028272 237603627 375764650 158232155 863204168 806877847 969224573 382455760 723065343 354807344 786466854 686278945 913147199 439817043 936536260 406725196 576616313 995566656 997732896 422866054 629102821 306880440 522435633 300150944 871233915 354264870 701534514 197163493 602271872 985223511 990382356 503339805 817925084 486507719 584624831 154492837 690935331 437211808 817855889 157315569 381972490 626994296 829682422 159628880 370945402 195166470 937011531 806104261 809367288 595863973 848070639 883439948 902303924 389829740 963663320 326585559 690094391 462639265 658420227 366779528 461768101 597059365 840566450 379980321 963997312 87511057 765209167 533308274 754445427 399192545 753879471 50579007 353118747 660375495 709776630 183890604 186335298 438565106 858933332 4456802 812781844 282870254 984189554 277455978 921987603 112784834 599789245 805970256 962521163 775928430 830979424 704283003 750217350 844927492 899394689 236914956 889363495 532855133 658173169 380452200 430740550 101472357 155012596 591931898 796677826 49617323 539309265 455275272 780400725 99333537 133941364 355337533 924185002 406245722 411118819 340997300 636042300 979183729 990765660 997846617 999128007 785812018 981603167 712624329 856040714 128477863 566660663 58064942 327006305 713862180 794028233 650272562 861806583 924802861 932008751 504460889 634469447 690472789 800320093 646940881 943230297 709339262 817792798 658515399 717071016 496704920 949026835 797758076 981479155 198680371 838741978 475278949 853473809 985439339 995728184 812364233 830821563 966282314 992349553 149961708 376414543 524618047 965684024 787383213 830784693 141737219 437884281 223535464 481717190 806770739 879181214 517724224 698044946 317086572 769393439 236534445 619462302 652474292 922471800 307667885 469386579 671167904 831916895 79740828 992903803 534833331 987193899 344031353 762419160 706903576 935399807 805853786 857467952 753464234 793262929 741442664 868618605 858255582 902262921 81260059 96439977 912303526 987861207 548182618 707170942 564203255 606890690 982928876 987924241 663995302 738930843 636501467 740534294 297517973 734356730 19404329 894347532 502329450 666265775 907106925 917558722 907902223 911375234 642880939 936164275 685646262 808711751 61203926 436138433 957154551 973538991 267236969 536720389 914811009 985046085 953505681 979819162 915006604 942414635 920772698 928232819 125472938 589710125 21143516 536347947 890707198 953850729 807061851 995054122 875469977 877784024 266692164 499143274 657549883 665015606 194928308 980140304 254697278 807344611 649766612 672177895 648451161 935574042 668072525 838336604 183480613 979559441 884650983 956630430 241426219 352072293 950091020 969367325 317616301 932751892 535427048 985495982 368830577 919488217 954885449 993343260 452947716 791881009 7882426 460615269 871281561 920493819 925887624 962874535 743285354 978839767 718172430 831234217 167514131 654822462 819933561 922726510 740284616 933545476 695721117 942104659 940635018 949438456 816268931 844735096 587252554 735482507 739236120 851813808 578742266 634307456 467321345 848466815 252405273 526267707 68277418 533902194 855728736 960191495 433736733 695605579 572415796 831557159 123854094 740057313 919175689 938365494 398289805 429821374 457736481 725093597 756522841 859837126 566987191 794926698 377542998 608216046 93885342 172585427 869781512 986698236 520798697 634511960 22292563 608401401 74004812 664339480 658714355 663038740 103718148 728583892 83482451 422884184 424135856 597611724 428523084 721878529 763336812 857473144 119942866 829761556 608439522 900838337 874865400 917139603 34219559 485533713 153283226 692742114 197736253 477730974 274978915 976879054 90876424 105558632 171168702 509651240 157524082 516475235 431209938 913349757 236377285 754210011 61450576 291366897 175633649 301998069 538838365 811942939 798620532 860285570 663473505 752794611 798781432 997585621 824078309 917911672 577511143 705686768 403413700 907194768 433350044 583848103 476862684 902266151 781513163 875196451 435567678 788607692 172976315 429517441 184084194 941564932 799031088 884241517 676273749 748682172 617319637 983127133 444563466 666847484 220352682 932206075 13910242 359644530 25792494 855096500 550518321 950848840 87541740 719069272 29552413 372011289 432221116 850005704 795374072 989937394 457054755 576597997 430151731 565335043 188289685 244273952 836213435 875559666 910802505 934553912 491474244 587925268 53125542 430530110 140209415 365321982 71851530 559990198 611002460 641836888 189566861 838760978 351605635 370714018 406515989 604600516 41422662 593358921 223642847 990233877 851188143 862903722 12701019 165039971 524686206 820044269 677687462 884342952 658523295 782783191 763579046 952610982 806635279 993751390 238392367 778621001 150636144 715220931 982995968 994825818 103464143 725041688 921036553 942471858 808612597 932118554 591097134 725122215 442610404 744827977 476232405 996913343 838185239 963283860 632495256 671345363 65883776 255502704 533153466 641300593 470017048 589275481 982412377 999628811 521541311 736740586 364624939 740089304 157607278 260756571 676806611 755681116 397366706 912447207 212755285 735711907 611314881 665689448 63425243 837180733 570453951 672989688 23494305 726467726 236014521 983253759 256734647 759064305 902754404 941207440 265873536 571918215 130279982 550456983 784436818 913655329 787489434 852710971 307306317 951556487 351097484 781758172 398238586 830632621 961352836 963523869 182361649 397987885 694161879 788898897 770245152 785207221 908340029 914383917 186519557 236280242 686701059 902304521 362236044 814354158 606011827 893026105 883946730 999916310 646848754 895433647 914623950 922584524 293294363 834176446 986939868 998274174 456511507 815882232 717865932 732565415 611663794 661194573 444647029 586328918 150864311 311987114 952756805 956915851 229150049 290351319 125761220 300411943 285758594 451955330 625423624 730450290 534308913 763853134 877402073 914892893 189936090 514713196 44679695 183480384 589715149 738788162 159962889 531584298 424952275 543538280 634654064 806208805 987797824 999742944 541538 84637004 765410519 857242847 156415129 673615156 329646065 400210565 531372208 613471872 947251570 955057669 957536308 985408266 511341910 629618434 154001695 503637932 453819049 610914875 697255420 851181496 504889426 998275164 92512411 962671929 280465688 781991048 334576410 541301676 518438017 658217036 367653198 841857564 349952597 751855401 987261622 989331976 36385137 369666247 400768610 704095365 733002520 913421740 659433780 876738617 487999545 602001056 410026175 963083422 884429887 907059391 227126930 680035876 538251700 724415269 233261609 766909740 264513973 886584115 563301803 682200168 879707906 987536892 540383295 946109909 299106621 673504779 567751 287035332 898055788 965535659 70392846 560553210 761956848 821138947 541863883 765310952 544648619 547751946 457295832 511376919 746859169 837261983 321928644 828846287 36796523 417787783 627306306 992495755 729322477 964428695 622262630 773643588 999859005 999898707 120322894 958444798 161730018 390045085 75267629 904389463 330755278 956388744 44493729 51531517 96292247 560789559 888891093 971924303 11989308 627733926 262720375 400390549 543770660 656980854 371499050 844355577 19720256 845510448 30313903 51700742 199816935 706892730 121843539 810739694 97577086 539804330 812235939 876998959 436274594 894738259 419513996 854699305 454498455 918070143 561901949 791880918 223772324 857148094 848216322 911236295 217718295 527407238 895321564 898943760 359221553 752536888 770857255 999618185 74182180 711599032 530834257 980871809 44052461 452901537 418442951 967060048 387526398 990465757 402435453 753462452 162295965 958065186 164643023 717926675 210683234 799172264 354764056 850878220 485520436 581227303 915762536 970949518 271073727 307283122 876867772 937015674 207762587 584896137 643290848 891701338 27466553 688856604 617629526 937983409 749958659 956695166 678128730 965660951 292600784 296926138 399362870 561418281 188335579 425747440 792400866 860701572 560238855 692976490 121879664 406753807 608386220 665678411 230057904 351328942 376918250 528156313 603759403 996357235 954410107 980453961 718289816 889588373 232404011 620959424 239198214 730667417 952940310 960072898 693252930 735714907 185012647 779326411 299733023 724427234 778738818 855618702 284268422 773576636 146775419 571374784 569701264 700708299 703350834 759091905 272732742 982922230 167778980 519934130 506694667 817750815 84770670 878173923 657220307 672604509 446351781 774660799 680297696 730187895 342393779 957497085 615643971 828874874 224645946 372142517 984117718 986788283 165536179 859586883 501040298 549815535 170327820 779474997 966276389 995721485 686949820 840804487 110441716 858039254 375438418 483814193 407369524 676547439 495072301 578964910 351076876 788730998 4947382 268757491 478122361 872869611 739813521 872860216 890226637 955524024 884773557 895877741 313745984 814657214 104332998 808734651 403921523 415505351 729795855 891941162 80696445 954724875 329005979 958210349 380554704 764422145 361612112 903245392 754400404 914110316 578806651 971101259 134438563 139210564 662676117 948082868 45093236 351220450 658804726 981575434 678760450 850442749 913521717 932378445 106095264 303760367 142749704 282052633 965062185 995633260 680302809 971861351 964639909 982603207 179551873 984826965 12106035 41424742 140788746 838469822 768337604 884078296 301575321 958662148 827065642 832413177 28947815 562958097 900287696 926953241 768354706 868948016 339448500 875802366 298501279 712915411 282286400 613034465 262478651 844886488 943411984 949692164 152628899 347985572 639285701 744523861 208706237 565270695 190496462 388176501 126252380 482088498 360266107 706041414 632016690 881503282 586883073 687599747 532513247 904549240 20961244 935829826 605065298 752174366 13135095 352690053 437448968 774312499 275546029 516123661 448763972 974250333 636464143 919659442 904051914 983691862 209862160 232679232 517919032 744757292 551999200 929277348 805531283 882900105 692740104 848638185 258622820 802932410 554751914 579399654 646142516 997275749 829587206 939356305 863724896 892042685 479683925 737427939 206440206 457134003 211946656 406598263 185490979 560515408 245953631 582029795 41611808 749496119 975882240 989988422 917020389 920637827 533987162 875842789 53971492 687679180 265883331 777830798 604754849 629388468 999895570 999947653 3785116 361889613 80910464 559157669 20884140 868687379 753668554 914645359 64990058 842381566 125163366 863886692 157309597 656928275 774353984 932992154 897875153 912047127 841833829 842548360 482529233 906117053 192050008 498261302 42505910 391797710 626630326 944059160 255527313 924472280 452190508 797616659 112286616 573792418 670265190 965278870 840565654 951345197 338011406 836599702 802204321 824242274 73637984 217911802 201474293 354049675 671197954 838137868 561648925 711273466 885140593 913883180 287404055 953820048 894125116 982726485 915281123 987909812 38938210 408159086 309597472 811272096 920363102 979648135 383510325 821684875 572076997 661607820 402906200 423789666 115798917 292588308 644173305 730057927 164973137 364125298 255184360 541885289 163324341 265022890 738304425 871927670 911122319 924960790 612901828 725001253 950787368 988678672 20879046 242406880 803971543 850239380 744409859 765609682 352675886 979977245 714428222 981534099 878452738 892203018 474396349 789205273 851159770 914837026 227389736 861637610 555869896 797498575 290880823 366243665 566367774 803958391 126686217 906046131 32939962 134794863 470430012 805720435 154008447 199501479 56647636 132978205 256011430 360187167 582741274 818789532 687142009 757517756 417477223 984635680 376715972 416985854 873671560 968991839 155559955 775509471 742967780 804591030 424960205 822704138 132054610 870769009 584766147 811529096 886641120 925786976 117850849 440223219 185985083 859966830 177535315 510089694 593585126 670857663 771649869 991782651 900110144 935390360 656039992 726746848 524831281 825203662 483148076 835616168 455724390 623039700 381752689 680173470 919336745 926420290 111438937 928988305 381370662 802583756 90899951 495852665 37934875 120570955 767040887 777292062 323724462 985358552 769444868 861715616 548488764 955381893 476513167 555019184 132256872 630154884 644214179 743290614 596562722 975636014 150163101 943502517 1111837 766406939 196585016 589208539 107185621 773176202 202598810 318958924 303765821 456682623 761887992 777679898 901869898 909542736 897082753 991176666 576228651 997313721 112383684 936383048 339538758 762676038 575942382 711526448 308394623 709378487 31035810 432517935 80024721 373032822 121946033 848867697 114337854 145858176 588757548 843821850 286282427 856446071 715399246 781355611 583073373 939737490 188561313 598568386 947450053 990477030 217965778 582492583 550617969 926718238 99659573 915132606 617955064 719330786 571373936 667133253 197056872 394494838 937788815 983361076 404698285 860146972 21324857 842858393 972355598 979500809 339943072 597480393 994027662 998175791 953446641 959797177 13671244 171548287 414098579 429148828 165582762 965383157 11204832 773323810 313059246 889303164 307398674 394687499 331510048 857616974 112822209 566282773 529105410 552293156 788442609 797326514 754240500 896950453 691862753 694095468 318152657 678611472 888693854 911766991 872235863 887248145 960595007 978628037 977398151 991820005 360756043 499347963 820549493 978976976 835528430 887063659 907836988 960702607 54338701 745853479 255416840 669237167 600940365 831209151 391897340 957868427 587531746 873402615 193203766 317117690 213739966 306047649 646416166 853439619 59222561 640298244 343010656 493794965 822016832 983539335 765679337 969626513 740893920 952568751 734336722 922676291 243453246 376844322 316855567 625110515 936505466 980077117 596435965 882590479 625609743 645963010 351416309 427522520 700182672 943978525 675357867 837755888 299263161 576911608 567067998 774404191 829574877 868455845 578029339 609115712 85321138 94579795 938694437 972110545 496921273 817955575 895644937 951969223 160316397 210179947 695258119 708762514 281905907 609415143 660996241 717292968 159616919 560447211 477184351 828539095 786157337 985323797 208569938 722511850 284710028 343290456 978245072 979983504 647171850 989263905 742592720 858624862 855200766 968949502 184672620 230287875 486071663 994056074 893963586 959678064 844861773 950506301 614597840 850722223 393395933 462623094 794126521 975819998 105831111 843452440 712502339 933260796 295935123 844143840 748035863 973272189 994767533 996091703 110727006 357128311 468354471 657463363 439393770 758881427 966634838 994646408 598936894 861378460 140738526 275102781 105532340 392112209 318041902 454403939 309782017 740623333 843846880 900291762 459238310 523608930 626732372 644860530 234375520 466187326 600280596 921416401 500256112 924352633 420640740 508759870 923978010 949443297 284470995 319888388 662481817 669806236 314075643 414739914 75201386 676220605 479199758 584518069 952775839 953076069 699020687 760135965 640017933 799367008 378985782 396050489 781293597 813057099 355472366 757385475 600039191 702500070 718271949 947448875 159699517 248955863 171063022 876991484 785216658 820821325 305137820 551823856 983416616 986302224 130293135 903734847 119819848 405940783 373454410 796096637 403794357 444409954 442583421 612502905 309852107 545101811 420854823 459862769 197666639 790126548 505906229 557420024 248308305 655968857 759031612 851840061 887738533 975501182 694322792 982122526 530077948 880477983 564339898 712134313 540850996 970438910 764239995 891334149 864306933 961779835 734114464 790971694 4606197 595542727 835316389 851649402 735528519 824222151 814703985 890291802 764260049 802552151 62641959 192089981 958523915 980218355 861564206 943334509 509101214 863956704 288314461 512092741 733425168 733662337 833163261 868127182 804518510 919615250 250692023 776474234 496233513 628388545 655199997 842941882 980426297 987230898 953291258 980269344 79456853 90077113 79066107 464862515 883402084 985272093 735680668 845058154 90735157 228112570 823187626 982578812 236500322 750943329 568547913 923227988 333791645 860748290 353030315 989482959 99193615 345031059 310170226 461405353 890110993 974893615 985848017 996426944 32684886 590272473 212702620 573978174 924814405 955757194 979905217 984748189 394597539 591660140 568157606 717626306 762853742 785142496 609301347 718353770 502647941 591844797 515044669 573006171 532628133 835860065 408903498 526843658 468240330 941658596 675186071 993811899 713243521 804660302 774639697 949038397 602523987 814830134 782214028 789212025 327071089 785194490 959362661 995378554 687658706 695273320 612403273 769886004 742577199 846646706 201660151 730926950 319402064 959050424 264798273 316536174 849583221 960316049 424646793 677224261 214435251 841904675 397584969 577829164 703706040 870222224 723490978 857666652 467443650 589283982 511602384 903301869 154443408 590964603 936989945 937885207 361411832 372427148 828398608 955795259 253668445 294216661 245485869 316168716 169302908 972545921 935267431 937937727 220047587 668545128 6304845 613974798 403615430 788484293 460356505 552387946 316185562 853188866 572484504 679923423 155630011 598753125 822380140 954422701 912700045 972042029 973976347 983321186 139752733 537125092 247704602 274229658 547633917 762746065 833551546 931550729 900612500 963271751 265307402 707828351 546785008 939551651 633472523 830879671 170261618 490136050 521402817 709252232 675199167 950039903 366129516 772071354 153161437 573359115 217325060 486525388 236949059 249691976 800616091 950102648 657379849 758852198 873272882 963698360 608720982 772412723 293062392 726894218 681702139 943921440 596371957 983379947 669554110 897070232 849409030 893084893 847059263 933828584 464993392 977925783 928597569 960705440 659513722 972827784 81376025 389727542 854009005 962698874 682939434 826997667 276520793 896957075 710865109 889687753 125694018 460527518 99965696 309146680 946795819 952079022 186064212 819069310 192019566 218283629 869684095 938971933 162308896 669011856 706583817 900742465 622966650 845267413 362187633 365013335 648872029 969140939 574010592 635711401 130544861 546353514 864546515 874203236 593306724 735193968 579076894 795606618 185865502 622441930 141691341 172965021 356314258 625570313 218782804 296027715 725265423 848070970 793755710 957848968 116556410 270680209 305977391 852876426 35476943 401254918 267206696 727342309 342578013 918060794 679433279 865612796 981509230 981719058 220379544 223852240 956618211 972883333 981733118 986132671 944985062 969193905 105912327 969482440 479791511 999414762 797309697 903004934 190798200 667351258 135226952 332028011 432087462 730158495 197054851 699400522 48422869 65391222 315792551 932390943 463536233 918184037 618530597 644497925 543806445 812620325 376145670 638313320 717379907 932271306 753418769 777158579 201584548 824794499 405874183 623125191 567772667 836020974 6283296 663387544 685051951 959311540 246173649 566805499 223794780 645591537 576451643 841148677 653902439 717550117 848977362 909650104 748880642 994857708 761541216 907371594 868591566 886167803 542846930 885675963 655257383 858769778 781319104 967474898 79833017 260362965 279276998 450496221 768890015 770565610 548710674 771675918 291465514 786817083 689897055 870872314 257445199 665107773 228752166 598282918 859617190 883313378 35558438 259025750 286474628 422214462 552584285 565205722 515678831 821647217 464550340 903151967 315547818 872151283 134732803 284276262 647812443 982990753 206716931 745034503 846369377 967105658 15525242 109271795 159243006 788157735 942064918 975786254 439287261 602845445 764451604 898277641 591308093 684615931 42545229 886603409 402096090 547602151 927760846 930612729 177680977 766616836 269749757 722709332 539332050 721609381 20382108 270933544 551243386 880088297 513388306 934316454 650808321 941730634 469991055 788349966 94629361 144747717 111273904 113473023 324568225 875722628 268606232 364368962 253069363 939313612 267170252 291470975 718602711 873270367 986158586 993495776 895657185 944568530 855278075 879626087 796162309 975279724 114633924 295067869 982714381 992011307 938541175 945578465 903065454 979277377 233208426 474320264 27770272 329979121 377034394 736297999 225144380 992467184 527933911 956665487 165033442 574460531 159947006 422031222 803067247 940068215 462119031 573326336 700611855 864667756 527583907 714264266 237921145 648982745 545874076 679771040 458076201 989682268 813053703 885365744 811070502 855917837 278652842 763256153 832101444 919309864 274644583 608250678 386363975 388952770 16827870 309905293 831790968 878292498 51356074 284899614 530412793 543590333 18843056 54176513 58980135 552418505 527192172 925673020 389131835 536405938 421429119 627637413 663109020 909512253 270339856 844128319 593230483 857147092 103466125 921244601 595622927 686833777 169735712 580098025 626297258 806158111 871878038 904325698 688955418 706928809 704988544 959431524 927726164 935285242 392425233 492180707 752149850 986479085 628473913 857109294 666022358 907421532 830862143 994541486 920730921 949666029 998193192 999386531 891233744 984247723 918367487 995571026 431771259 946110905 378807408 822645513 31303853 73140187 39914419 220287387 381524447 754125825 332826473 793136953 322178227 734551472 559915171 747082918 313589706 657996236 319281433 348858739 271557354 588666047 954958329 973162241 420405993 594269686 74184560 599994444 842319100 949566091 757802346 969420949 40300041 379991614 454571905 545127086 642956227 714205351 940241846 954066980 972728119 974517659 597596773 815266616 609304891 751177072 997312976 999879793 616687809 645405403 900988938 960017092 249302131 726497539 649077476 756917129 884082025 907814882 53133678 770797497 739047710 992674986 825791018 842013812 594024462 822266602 262430599 820550779 826872064 987041634 956210888 991170783 262930323 617404252 686750161 848397225 858911178 866190919 957727909 961824348 737499209 833133023 243692614 968789823 533101353 731119937 592006185 788508939 867488338 936688826 379598330 739575793 451524751 719527506 599755990 926421424 593377407 882315208 537713587 752014596 399060891 405886938 52879210 439225721 695516293 803944375 4835963 152090034 497262770 558979841 371131303 531906905 560427278 587938360 704651653 759152517 299507338 952571811 471996363 514919073 107263696 423609256 504054082 943454615 508853005 998428791 424719745 492488559 272647807 988027299 915762058 929205766 710615040 737289686 521261576 559289008 944367765 961465986 276509698 648848420 116457888 734433827 965630461 978105092 646933114 706905067 79062272 533936190 732975251 783199219 4033047 95636757 270554868 874430129 92196556 114364960 325132387 878648439 807025435 907558923 970648483 997163053 358855119 526244193 441308234 554546133 846021798 868659417 79838863 913731781 638746315 715327944 894474027 926019937 557464184 943910758 280089109 837903292 709580693 770575064 272791455 799950716 395146030 839286906 188286779 492998444 843766315 921764463 619533745 987091810 375378497 966626647 18792486 856956052 615037230 713588230 772622041 929141415 573688795 671772878 944410573 992549126 831040108 856185839 720372987 834042361 698276283 970325027 62192549 916080129 912818269 934706870 613438768 960770507 331187712 925934869 740668822 948238981 677737760 948226705 432333165 986392302 555682595 571644796 602749724 938024980 816715054 873173552 865622278 979391600 693342909 753557002 267831370 502364990 553501244 570877523 388207384 564699330 723247923 789381360 229466934 302087354 597816148 657631458 466637313 814075687 211029318 385804991 843580611 979752628 880350538 903532549 359780378 456432911 264897820 423074848 606412512 637355068 57844977 282596571 238430187 881225327 162455620 641302504 785297705 966515923 290412621 541656072 482256128 858067218 62676702 237404306 129864291 373265112 322252111 446400771 311972378 382295807 930141175 961298664 606706885 856864272 679694104 851951746 74803170 982918926 723056008 834626541 257514077 394044015 266348922 814094789 852320299 905029244 161558499 722940440 757800350 837165799 642999760 896259946 14353760 886248339 166491770 203742568 631098837 760933701 155241420 747192346 103126752 478133703 266217104 743252754 65716415 945488849 703967011 969307549 513154438 516119340 160753102 210764626 857953550 968186576 82717971 814299026 969916873 970616113 938215548 964151401 191326010 219878077 178804234 198045620 37463596 54615905 117166031 359566711 648473705 663600752 874699092 891493937 863044530 957699816 995203385 996138253 397939804 734484156 279178335 796425386 140277149 903736328 207290892 957658995 170352344 360980767 700131483 936862934 955132601 961800581 862617992 896254188 534921022 920861099 367419904 407221460 178270265 344746083 509135404 530687954 967381928 982043671 867976904 948488347 138673150 681554490 41710188 415979547 214887471 880352109 917548148 978310405 676125120 837568771 642272339 977194766 766747109 913801549 841733193 845897392 802820617 874316790 201111589 853738739 717313623 741824401 157446774 744738557 296524278 760323477 273603909 834547561 956906205 959517292 428497272 453159751 280660561 683453741 722967584 727053773 479327511 510202870 348950858 678145027 570878160 595523210 555692948 978088195 591513508 812846081 142078732 306732908 971337634 974703163 420141670 899403081 154878411 320374819 265792944 621683406 192841615 625075299 920563971 976643674 942778848 971312521 81710509 147633847 958897664 991556390 196849935 833263118 423151780 853344350 196277392 819714975 347356589 449370897 654095009 896690811 658742437 853285657 262089274 620803463 716470469 866079622 534928345 543181928 215006204 618435929 64379309 896420823 724390817 797470051 767774012 781475763 385815583 392842452 573026266 631306970 939579143 949317218 166006385 614953982 465565893 741122467 596476920 695805216 888762868 963376419 267015780 787735537 590888078 978493735 530927584 878269037 684685723 748604651 573381430 678052968 661248451 920877621 154437616 281846536 205755931 811778855 556557183 856880619 3165112 106536478 15081565 655660114 953260218 971862172 655044998 747749197 604817518 774880562 285217517 633214136 572051849 912323368 784811815 849443004 575389110 867827434 225017966 255393841 979283085 993102902 251536546 541236935 919538744 939275363 475210413 878935640 773796130 994949542 856059359 862631280 853848349 987522444 714234879 969819939 132791998 688545728 385354043 562623867 617578193 753217825 246964630 817217825 142491503 379140736 526408598 787094588 775724380 920936864 981873546 998449942 736703864 994943133 649976843 790886186 561824403 919414232 783727732 793266196 671252545 714048979 563117774 938927715 821652771 876077089 28890352 573334942 606133869 904650860 30357485 513574544 123663296 791294935 330513671 835223034 166675916 756658819 558757774 805192730 615006840 847732838 243696616 344394095 467082470 984752832 596304268 879110712 327130879 680853191 501906983 761984430 776612902 849687985 541484427 694180227 243050160 399714129 70976212 194369885 222542899 509983167 972903716 998233392 464879779 555749573 877388397 878126695 147603668 826828685 610057222 676963662 679468544 992638129 940895771 985477396 880712065 960986528 573822469 793920142 874367321 906394448 430651753 459691552 4282442 15567753 918392179 998993480 704450528 845774991 506429743 933019437 282587803 485724023 710367625 955771087 282627747 656036519 897182146 897387560 965176272 997135194 800077150 943373257 146253880 678414539 595103190 910215704 57009338 71834977 524688288 614805216 844026153 863130620 538513135 901664564 501584156 777151539 478647355 953615614 805670332 937752302 105310622 912710605 700000490 809076827 370300098 921958331 328220627 405607178 926433540 933403375 357451706 496445352 888618638 902977792 517978543 695372319 161629484 357563869 920537780 922698821 700066435 844592987 217113236 745099113 155062410 917009376 189793894 516659575 753873416 819656011 681654247 756561033 935909493 989002672 337774815 476181554 317106965 790955792 991597842 996427726 504231010 755538292 112757266 692357189 899300928 925212540 285106998 896371118 346502917 432615677 902817959 906919051 546268585 727920117 873502141 965087567 339088043 475919953 781275309 881214609 700733348 951533286 621896132 667029373 125684100 577620933 858014569 901045138 298818466 848872659 323149414 838082444 95596067 444579302 142906761 368821766 146619989 790396462 708959776 731794997 844009680 985947017 388411425 949500413 279790022 320643655 602231971 651267026 202476385 313711310 563624953 770120660 301621336 632747649 959198532 999733029 305281344 964862497 986387443 999112161 783024115 999534633 439754676 970857105 66652060 704843093 430528785 842715033 195153304 957431186 538809942 693348155 214552190 774457029 826229295 901225744 608684046 800901504 352100607 876344360 122289905 951128527 921143874 968907067 347358043 694397374 317689384 339342747 77917972 325872789 817742716 886634391 15224996 746529570 225438835 753680701 513501159 895039719 593859476 654925641 515385898 539407264 50792909 799122174 780041023 829198247 60455399 474152850 182848120 599562252 425747368 455731583 644913225 910718883 725125328 740266963 728481837 827036146 854859729 910745589 418929222 791704244 677303266 940777464 26518711 480035015 344672894 864262324 992811956 998360688 81100749 269729668 50030581 957999248 205302925 664206622 515649951 643227319 297540653 442379065 287127735 715437962 99621662 855269709 439771218 635587052 410907912 518966118 608200960 947192201 502664596 906647671 945039426 960964474 675850505 789421217 726548170 936813268 113593096 274403506 318118300 423377631 330501758 979168412 892100719 998787659 748975160 808925487 867786058 987091340 544383154 874807592 944365972 976004814 132007583 549333223 708946943 766641872 884029625 953789237 459762358 622491636 913668155 926331480 180798232 944534462 231691904 769845716 148712254 422796364 364732947 864815427 379674070 760770203 42679988 865722845 404881598 993254544 323264184 538446309 493230908 859563431 37609009 335042266 567885299 795228397 681921713 756170928 337736035 618262426 876030819 971385650 238553130 312422297 953256103 989781157 129091159 999086845 338316196 749855337 784274425 975931180 101776546 328664942 345378721 859078530 233981351 437740469 742727775 941572929 268253407 361497474 693692361 985853599 867019893 945675253 602439879 830771829 531506433 563585285 995847909 999354973 260797981 327021180 980915162 984951311 438716109 902045380 934475652 979181799 984220998 996141539 707889134 945611133 345652442 688992251 220673828 459803542 632514904 680474509 940188902 951964051 581312501 831409505 905169941 948979965 269824167 364213258 592833164 903859472 819020521 867277344 698896605 982087170 458487765 977721425 353276216 904724001 463504205 502207892 580689494 833190826 999007154 999248869 742399046 904588002 888631370 892645467 561490569 969811923 418726496 762542463 777187181 858362232 262124241 309692498 26092650 889906632 371651363 525022581 730029502 964090439 509500521 982360403 360936749 857834260 36525311 705551028 182969660 297524833 275606558 432741574 463185258 988528710 747811707 878371511 37859766 276796904 890040569 968255338 891543199 985678658 174113236 521394347 978305589 998159165 133533683 392412223 354326452 977789107 939820941 961146532 816295930 899542562 327098746 608575365 985643872 992121937 914638180 918112951 247758740 837175702 775213087 833363128 819017975 903228060 259380470 640657906 324429879 373333758 734342998 976043718 192932236 892853013 231768944 840996435 191982350 655951379 411536182 719573028 28840793 128276577 817451799 987740980 610678901 977730142 285841629 670110618 79851807 790817803 865100001 914120370 374829049 509660853 298361688 604733292 268971189 885426392 27277155 834045052 584224308 713652201 354582601 800304866 442416041 574688123 587282139 665036514 56861884 160209586 548936302 816935396 649431666 750585778 688536343 732573783 9261993 141242405 135832798 206868214 287178574 978151250 945827160 952926886 98290614 279662488 866628989 947216397 670752315 671575979 724660210 796463211 871164824 881384198 271033379 536156870 999390882 999475494 214989211 544847503 548777229 873434556 525342802 643570077 733081198 865211763 258620555 863042082 208830909 546197401 107011347 577202985 2462010 487683870 249286149 455056529 861792079 890958255 732650829 812112388 302429368 823990329 391943793 636796366 82124745 393711029 923377132 955866975 631372460 742015646 632810265 656494856 260413338 567024313 999926799 999944147 64868505 828950802 154198741 632427832 558803242 978239937 406403529 741401299 7793577 594043243 873723574 910773886 52264854 287581089 178700862 269029504 536384141 739573455 401987123 485251908 976621826 984376047 254543354 476128869 141939794 965177451 175587190 178337514 153607733 779248256 565026293 734019932 619977836 677037461 194447424 644132201 517893294 661510029 213113535 919507541 733833625 973287042 326824194 529656526 852286285 866384248 312946363 974735558 270806984 332783248 394345630 526731775 534343309 849954909 883677366 987059520 182168459 390926759 912927638 916599964 207880749 672299537 447348036 740162686 779730918 814995187 139407533 421693683 606866504 639787127 660387688 734341678 390541800 642201047 540145226 582218499 800960863 968459839 388698564 956431956 575981840 941412158 998654916 998720186 874922574 972915656 151874905 500392229 807874162 843777441 234989480 585216599 515053582 850299638 777021331 792313477 392909013 957693065 564261848 574605699 643114079 824770795 121650380 806027098 756356465 877635017 254845500 714134375 211041613 586179621 89116367 311060664 742700246 771154353 141590468 545514497 785747197 838164586 749452092 852125392 114303481 343059789 265297800 600446550 960039748 970484746 890841172 937512588 718554068 905763737 224551221 716647472 872598817 883920213 882052498 955889615 44023197 213798846 459697730 595098761 391451787 708499417 588076661 722490585 847800362 892558562 641456631 944090793 782803074 884241443 204786843 830501602 439605350 476225312 140641585 235194622 488046615 828182208 876715271 991364174 256789494 358039103 440680245 798052280 533060368 916817059 55946393 534892715 350880159 980980056 289621303 907824135 143811928 457633335 457758057 919681639 541321120 555559893 18385694 150053686 159805225 385202369 536015664 592037943 853178052 897673504 694582535 924428531 678684661 705893678 87692228 532492081 442453606 872344764 15210989 864039756 388029659 429289150 302314803 338000485 479340707 931806812 347953355 547431164 324392098 624197757 219506667 367648484 989202311 997619527 859537469 913729570 521549437 758043738 453848819 764251593 221751103 971875205 797189199 907246819 404144699 642905530 274472528 496888025 11903615 146830175 628305122 857793112 157760940 609053869 898223893 953162272 659165847 897235436 398384679 548739821 257174331 756310249 96946258 232055180 642059080 810933422 526448324 681465654 308945424 992999991 824934387 938013732 152564824 397223230 764079831 861337789 744837418 884244423 503535205 808609586 177743330 992512324 964614103 982851928 169593238 436831016 873299048 932007015 48173126 878743311 119413389 507438451 180511304 884158394 254725455 341147159 130183573 705087313 697511518 869019209 522403084 950441020 682500185 726383497 734854281 799036140 644052236 950893383 50526969 620661356 754528894 796840045 223614916 735433843 237968069 401797386 74847732 245528495 948912972 994205680 794335309 843083093 197447508 270637756 984367987 992070858 723630176 749881785 308533990 404349589 366554739 628019282 369212906 759652943 453748034 630045389 219861334 645765253 477037256 490353224 317141287 948441135 768477024 812816821 961070422 970141202 916102932 923702396 648977614 699543501 701314731 878447325 935512348 999990056 772138423 858000570 200290710 749506310 687375623 886232426 522974273 538718351 454232322 874731322 496128459 545862472 217755004 895666072 491055195 637978600 512908022 777863773 500977163 533847153 562533690 585127647 809756326 904517884 721388827 881305578 44831597 667597085 377988756 920362465 412314760 615888276 49210255 252734208 103805366 529398585 411267848 565900448 471515093 667704781 462181426 998895636 52317301 475810483 953279563 955755240 131766252 776108195 714709396 847168029 210693569 213292356 247552513 982063689 737479920 861079667 711042683 793577799 44102330 481000796 644936336 724765964 331200293 939760473 453198000 733476881 652599693 943234944 611669441 787118719 610717094 729585416 502268811 949238966 286392054 692308699 817796394 983012484 258129966 790401873 489076561 602817439 292800813 807182475 826281435 856022573 892847786 945981792 518867395 653655566 53152610 490299742 825388585 871102825 898353644 981561948 803321512 991635140 360276945 735836224 869605453 968249789 375107581 864257900 41085468 42011249 662361640 846665518 528573448 597680811 499977343 893183114 787732700 964625164 248398157 310462228 712338065 792688555 403950634 765485547 883867193 912363456 546309274 625952019 29670122 493756738 744011847 764404309 913317594 949112425 311298709 565140158 310773348 402097942 5499626 237819172 822036973 895299942 681179473 887444520 358035084 703410033 369869566 439158646 825704060 930671208 557558627 847843521 185777302 764233481 912061396 942479944 328213455 766207267 697116596 861754865 72717945 324628667 825400477 864955127 549974286 663316276 364839511 886093934 199532170 563095742 912937570 994483844 994917855 995862696 64686665 771623327 116733285 980545886 716215411 882892579 890436846 997731790 428291526 736958744 881495090 985372768 686122888 728664316 27518833 884045641 654670020 964875661 419511112 546828441 629554285 956747105 279181665 435326032 710490292 946304110 39158208 354580856 828220581 882013414 905797154 930135326 742853419 925932807 856875444 912844912 825971773 860872161 49877130 51153162 660743557 974752222 858672049 934794350 52496061 422881981 742833320 755030510 749202344 835607928 393404760 912600491 223609181 981933019 768248246 893388241 166822365 309303405 699244424 950508206 643723515 775910320 143974688 993143145 817038678 913065960 775287322 787784293 857384236 967722407 865952308 871100284 628055807 965946548 374029172 699938625 130803663 591186909 996070717 998448170 600750849 985651374 69356936 703044468 628676993 706813593 435234377 945727378 507328361 691511079 396266008 895858285 20939629 209221872 261836890 708938240 111253933 318794113 591591922 945492035 449957610 512754607 860380132 945206725 136439897 563380837 18001077 844568067 23772461 312456603 766822256 953555524 991058911 999021644 959563060 998986059 686667412 928267588 806126710 861470613 412972472 531517853 272262211 780068058 600902979 844038396 35062640 516066609 423689580 897963444 798515895 869691111 875718921 994697546 719291010 797705676 602840463 706813354 256387295 837346678 258437251 735592700 583386559 905530684 693792356 891944842 577649278 697425877 715111620 753934762 216622449 888910452 754208074 760110690 602025904 788465108 914324431 988445195 535400 539630216 744477860 765664463 236805324 650090628 229384437 876133969 747030302 768890787 600418778 906639790 696952690 879374458 179310857 643841913 408212052 529416784 369490928 575593715 831616274 940611846 953955547 978801142 777722991 839967912 946343440 976757926 17611369 841925490 554607915 680708988 8326608 700940926 818182439 988119384 235603404 348572094 917487719 977182061 691497219 941636949 958945603 984967042 560657312 584272910 151117074 164964373 216768698 331211974 746475240 779608476 546824202 627034650 526240586 898250992 871860549 982053732 673390604 914009902 381443338 574147701 965037809 974903331 585283804 800373831 918577139 958343119 251678592 449386163 98914302 532842576 854552038 869821014 511696009 794494680 868495146 949114894 844070061 997594655 742272514 895841093 566041025 958363757 959612363 989633522 470375664 692477202 589830019 676138609 769213322 862296509 241568349 242860476 508583116 692476304 971024196 977941498 688507574 936415058 660862409 801827864 521978093 814334996 276968557 667927967 142706059 214604069 950271274 993935185 381296814 605350385 464053149 779427472 67002926 406959591 208904314 746530335 965472880 970931175 636778360 674827938 866911190 868624366 309263338 752850921 353494667 401503454 666487653 733235939 640593079 901743341 56986647 110276367 238708859 930760407 320822624 740827007 412157416 958349675 745932645 939020783 499029158 572105883 777946736 793897322 599364900 681328462 292206331 793358344 273304135 659973925 20443868 685249773 2480073 452174910 818857214 910004453 770202312 969906505 996086566 997040953 168492434 324167054 853427715 973546751 939604191 952348192 732834270 913201644 109516936 403912525 69697793 119765007 185950354 461967979 844859652 978408640 217992155 424121886 235727115 480659653 894210451 981446457 358940407 833250444 441637921 776936848 943010736 989039882 955503855 978321871 800365533 925706806 867332968 991406215 97961035 383404672 785425803 831906308 455838151 524241847 963703219 973837795 357800576 379181527 241578005 669133001 843007887 993922997 191427813 401573933 596712830 964803477 112687719 672267957 52005647 757002976 344217020 410781273 736061419 882862526 219793632 489821004 620073109 680774209 209407799 295935201 494956068 746558005 186565965 818580890 458677890 760783206 17883121 171753055 166769408 352059343 66710256 386778559 524690391 980610062 349397806 798398619 309141595 367630152 627293660 725591860 832505272 869955552 489780782 700594162 837874890 868430145 121996269 826178832 95156638 501442231 471316521 818069708 97719035 496827983 335841390 660007362 112853035 615376995 179505982 402697350 13929959 104810332 874817374 961569071 50697024 769869275 556839932 979867541 611081844 896340783 313312819 937419920 904292963 941155072 125885900 845112963 70216930 811576009 243123870 311039005 200303366 714866844 260593775 888196228 140197689 794307654 232332605 765011508 352754937 783127432 274478669 774204524 56733987 141645717 784783371 834625204 641842495 989774782 267888275 331491979 555065025 569387293 267426073 541158363 385496696 746907982 275903272 867092116 352664369 797683763 693988706 932026164 494218303 640089870 857463082 967300933 494726773 782502420 174292064 430940121 613581869 897226179 994035248 994898406 32100476 199211695 866796501 885851028 733977774 974426802 454982581 528249046 311455101 740298214 813181222 939089449 231367068 615865908 45759569 669209249 359085747 883354572 484626431 619813844 541975150 831001738 165387928 270260572 366483250 474005818 212111743 830707543 688958880 822834682 285647481 537226356 257620171 423840507 328071545 615660776 358667093 575692015 171097873 360427290 586439603 822085841 390348591 552857064 896134175 921193018 336380277 740342053 640745954 742964735 90870741 782099877 200448154 967254542 100237781 639464517 924647519 939275534 809129706 980149228 977133216 982769162 492808884 522753874 249424371 728775745 581954856 779743143 327789064 575224540 164589467 907258079 5538202 365063125 960852071 975978921 242125018 861150769 868820129 947899884 320650417 850444141 910880258 983440944 696746112 886129025 79784033 182088551 145513683 977904873 965176243 985344056 514666685 805197574 868714678 910743187 280854860 365102859 985980481 999131721 94886842 745019065 757847109 868914537 923301939 958534039 650294879 658911521 518245429 847194542 79243795 424165776 813182628 817914316 869111290 881145974 803859085 836541537 422953853 813042053 948716623 955862005 462788469 579947379 936129187 952783969 416590433 422547141 847052164 985775602 341088214 965501688 691115533 753762934 978791993 997174432 526514067 634274067 826793616 834308394 985995474 993879738 430485678 753244239 852242332 969839269 693673674 873992149 766675028 796241067 135638613 197527294 228686865 885380868 737532605 873411116 548786820 903077987 470869001 949233930 362525268 973897530 587125446 998280130 219766697 479124461 254341511 957685708 247025866 258112360 382752390 852684409 409986064 846902868 185457966 879299397 432839855 821484036 536520983 541855589 847883965 936344757 790428853 811257639 737519598 888839901 348722029 553706854 231933298 713336786 18749774 283875855 350800974 863773863 388201262 986840455 30594693 113394978 69304785 756746831 147994144 954359602 100450732 412575696 140344206 963954988 488173663 668946739 972075699 972226332 899151590 906426898 693582084 770708863 908980719 928331644 300085825 969940519 973366277 991610339 39431743 873521376 142412482 927953464 856937637 917110131 672765793 824015426 566742801 612782643 444907196 558013774 428847605 550988636 153122794 286139293 68457337 303314079 530868734 980178948 881554022 998210791 467067061 607760588 400694437 442642045 286533286 511530307 579582724 628995932 182190558 926682874 84797624 959932805 46630510 656850608 757827172 905960924 400814993 446402507 987495194 996774620 552889102 987551372 225209130 554771309 961943255 975914247 106810625 512587003 188011139 933687709 914768999 923646649 634950806 763680052 922443093 973624389 4094417 242105479 518457089 519782954 641044917 677485964 423269664 886415584 112231069 658106309 289941423 798875351 2355317 582526881 97758874 709924785 525886744 911352381 758267448 965186879 373205356 542361019 932513614 970788370 82213944 534386598 868433041 870144530 997800952 998284193 794698788 889694071 80983165 827131459 891651818 948849696 130087195 821323879 547229417 762369552 858587918 893506561 742527891 943742303 975831656 990870027 612875298 682308685 787184490 946272666 365242806 408396777 979784366 981517786 109639505 605930883 810798164 978214827 332530261 687225357 684203771 929977297 550742455 762397774 262806360 496527158 106008292 258915186 391559017 679927008 573011617 713214131 308460430 419252943 67065118 74676841 778838081 945790915 311434183 728518576 991176807 993330750 351604175 863657078 767461763 858116930 63904639 311970626 55197732 99622909 900454137 939783799 321971749 863001357 978054096 997123731 345611394 844535045 202253253 364021428 221028523 409559826 425262774 806224740 639647951 654053081 444420211 882889364 684404055 959057071 988056490 993716488 812448601 908816430 593006079 816057872 265583255 463733846 40772756 997765922 444651144 538567765 110098763 944781390 37047394 864194228 45417128 284471096 384946871 679165395 357098964 511997183 942308783 956458521 432965564 646756718 33309794 124613850 821516842 840987014 908977463 933546883 162356774 356008285 785224442 958539788 599740470 777455614 770540977 922444648 707592615 843782683 401217808 818550977 522305042 624613330 173618495 701524975 87187145 519446835 538286150 634345437 901066283 990105036 664000805 743707532 860270866 985073937 577511887 705210129 620633453 769197738 66468595 226159434 242336099 537142638 46842367 327757304 160012791 673968395 370234041 891197755 799542609 858967698 722734702 773000551 173474485 389680373 930057066 943295669 763719943 984006491 696978679 931830942 535231387 636607409 626664542 837458937 405168700 998852938 717866261 758274414 728375631 898058033 46761585 802706408 191025116 686512936 131837816 803312498 600029558 678530220 650189303 794897747 278595899 791438873 700358751 709351334 923547987 937201610 547829683 904024022 819293229 952832239 794195171 794892904 289185885 377639665 508742195 973595225 74757035 469780925 939688120 958756649 415472731 547674282 706255497 979198989 195950231 251056976 210192491 790095245 581420464 758339515 151479831 391150965 417362401 483485537 112293924 784973549 90385632 740418414 710771210 950139331 688793936 768214213 652907999 861756909 5114260 868645283 130562235 181809653 659017811 851335822 965839521 994889317 460078505 896665671 131202640 598882802 998705147 999348717 627196653 735389440 107585226 553222487 584090756 990357355 684588130 932589668 454534713 832084761 480489850 706327993 501137112 508291930 414945868 860254208 571753511 608549047 844352228 913220607 856406261 970561059 350714603 387456190 641364052 813057854 257411350 931446259 274101750 417797517 909647575 973042124 136090384 303989570 359180351 965942740 999878966 999885823 938341144 938561724 738920360 834653278 53660485 514592543 492081341 656811254 298375712 302430160 267145159 776091927 584501855 665610029 567921081 636929431 830530031 884378090 37227698 340094414 894979916 942496843 618195913 935974666 726724169 829619773 961064821 979865265 729730120 784591054 630671398 788398661 43594908 62307172 46409855 101730294 623506689 811383320 437034465 472387024 635399331 645865667 194998483 557774646 175905387 403764537 806115444 947657636 593957355 857335568 75838508 192475367 870475618 902825333 886817628 931524438 540882450 970002948 157471960 803402959 642715292 812008116 120932584 679679245 244934869 399480866 132913069 892406958 160956073 616371892 745380467 941418251 57896931 981689353 682479540 846029070 630956916 812727682 313327663 693286690 747032321 842219229 629575955 992638576 91010657 304452691 618019469 930743379 859590701 994099268 717684491 829187275 19470181 193972559 789786439 959975795 187423144 941218764 579928757 685473542 112584261 716850414 232758226 613348113 773332168 967312341 85181460 756822394 989233282 990967670 399334959 476252104 776225817 920754608 418842871 986547621 117515513 165941241 677150669 694400791 329450887 805202543 291827743 593069080 246501822 537803387 472575571 777821853 624686649 916290497 486545870 589913611 911000838 956130062 811334710 815383428 419133478 680344519 766871652 781511207 174671876 470212272 546534467 824810441 640640481 812164606 367098934 943436045 937564164 988033584 719722395 778517723 629817383 670882655 51125003 324572576 22833120 697835401 327459227 651143877 543836678 786291335 211439680 654885493 561335284 701718716 420028546 711780289 616957265 789389179 308576179 550619202 450550848 553464582 732594710 978558020 790482751 932756691 59233515 781147046 679245248 728445902 889314558 955286297 475905098 570627445 266845977 750554538 890537102 958797941 349730721 361816546 204619829 289175688 687101762 868911335 599418168 946644237 619810070 635759625 565211020 889190159 891300819 999724290 662792383 859125170 952158941 971887471 220392618 442037378 320616286 661811338 314227190 674457992 425668388 957615029 966061492 996279285 988363056 992546288 244674140 809713425 276609644 300622230 611503058 664828757 801554614 979933361 927668218 996085635 65942964 340448591 70169155 293634885 994466842 998473743 378004052 440916077 971740304 995603931 31196671 696439946 560339489 874926989 325474383 837673034 45156980 624149813 449333044 971383726 949432245 987030779 819799265 886020187 249674273 423794156 792937258 983589063 427304983 576222258 979027077 992638489 958993158 963122131 187183437 856052511 711833564 838139962 370177205 831300768 903116424 937951102 17823221 533284353 354193994 791393484 421425051 942885792 954802248 964188158 615970228 868851351 164292767 736293419 188832851 296151522 524417287 904199107 75399724 850967453 231945055 724707852 522202966 774688383 73926792 118031215 90966346 842440015 750399546 958029441 240791443 656005919 496909090 949955498 531078163 748146448 719622416 747781035 707711767 936982229 239625500 261665469 548221432 953518821 334413480 371123591 842642184 901333081 200826054 460295840 197771272 827472524 329250033 953358750 37546414 258790686 2820042 288762676 494408623 829015540 931609697 933740518 504207603 581336475 314247101 318774813 445454662 948964656 220576970 239818423 587871661 609126387 835014930 992446413 322872732 474287649 821355908 975727500 284315914 885637678 368523195 457911391 864425133 940587069 816429384 970504924 138036427 688443648 345304893 949702600 593334676 837828238 299072969 547001911 640501000 910036548 45201533 113533056 288669242 649667537 126790587 262485769 573907767 826448763 866810117 962087926 246184347 985563721 68884722 476031371 375217136 709803341 990654118 991386052 53862250 230054564 934999783 948019875 581348719 696980817 905456774 943164550 139999792 737986115 456169394 905636138 403733234 972658405 36853709 849698621 319481059 472704899 502512094 910963479 897205810 946151646 52903001 485374403 168392793 723237872 459895383 895811873 133467396 136483639 206030524 595388685 929418046 962834964 278364387 678267663 357367592 821998417 675666043 780099567 779921686 817751285 556591064 961425339 23072069 311528230 173808408 879938901 104300157 892761653 29945411 450608327 504806361 966635999 262351563 707429493 146746556 685831262 559694619 890287260 340315745 379302251 834420374 970922800 688362680 833732390 579276624 909886013 352046952 951279709 657194580 745006515 139699793 762446525 953243882 962422104 542010519 753695621 602132127 612351556 626944494 855552182 870697553 904141927 797374238 912280563 177811227 329975320 860373710 938164659 37284020 166567508 526130922 791544866 776658157 777092708 631378773 875833800 330413196 846642541 761037244 846762160 676722492 864390018 862160523 937086259 639158260 857550727 342860514 450961714 204365694 841037210 961613943 990220846 539593865 956160745 906739117 931352682 592734667 964390898 526679498 720968816 362965833 815330150 705520690 848081951 185861354 207363530 424827780 698305763 336886745 593817379 891408037 951489595 433412053 433684513 538989647 753096781 64072896 823567451 496979045 735840994 700179615 720888128 784401246 813543137 877059409 980832491 820408738 876683337 534113191 692759961 874151399 916916122 865606749 936973969 874801194 913782571 798490120 991932561 895831335 905717684 931124037 990925088 935022875 980030435 32680600 133986024 283172038 990612516 309720279 409431421 991421563 994058992 972963317 994688749 21626752 900972842 939766833 952127083 167651902 570696686 753848612 893903877 195860967 469878745 216931656 353086999 54203726 145855691 515428813 728835295 847385465 910617142 557976819 764353317 200374261 986601607 253332076 446774746 864545529 881084090 761251534 789811120 733177195 752889320 805271147 836025617 965993341 981317512 691060901 789644498 807650648 898575006 441066117 943340435 364539486 616710049 19060842 225011031 937591564 968090066 564182982 716754674 987835402 992725610 903217412 917716337 801255510 990020713 362979543 975581656 55030597 475446170 148287238 272236748 86915610 832676411 213930001 661160668 872506192 962563266 619844369 848282242 122102525 453800388 790192099 866034890 598272924 879348956 661650314 718080778 540927915 549989911 874537043 967803437 461367014 752855664 958912364 997859394 918243513 956328290 688339223 741594067 984058440 994834823 241715198 494932386 259454897 933716942 452143279 774489789 794543899 799724992 491273327 544433279 63662644 201147819 318442076 533105196 70496215 966084726 918465413 959307373 124019285 725948028 277972735 346179956 221424914 567559224 412238658 426866097 182655320 255715109 967576010 993211284 789784079 858048862 813964978 862889157 336880732 580905717 817129759 996121150 683875096 909919230 159154983 497514438 948980282 983766793 774794800 905063125 324987751 782579851 639611062 930457949 479933900 671078488 106125870 615664146 928180454 967898451 867121524 971504770 355152914 643551820 982151299 996217773 672933279 810129532 727904739 798530958 581699082 740664570 938596425 982328350 965390765 982158211 145042293 563285571 893471780 914490738 976580558 995914657 802141429 919140968 806859961 926100538 984120634 994442382 484533730 609345427 809801474 859588211 503852394 560304167 420645346 886967700 823060290 960594843 715089468 745430002 636593219 719854294 935715687 980290661 668357685 779332628 274855559 643673938 671906902 801129698 943793482 958253182 758235610 938392301 556593225 805793840 651199768 932495391 952003379 969381288 205273330 700479079 602552531 739486179 592618069 926403995 618128510 688066455 563481455 622486624 644781906 770567650 317652128 333176333 915866969 990362049 797364777 988095736 576044719 650607927 436115316 711403617 22314280 290304604 46885661 112826911 477226176 846296661 890970581 989658376 388753913 883883218 936049915 996416529 155184468 762689296 945739031 986169408 578024171 599758134 939764667 984216413 101601531 885087236 340062066 782909032 935986417 949658559 54047111 972861447 14132724 139885748 863491554 918388273 608852211 992459721 383900992 994523467 708744676 997612926 135081949 861288153 532989735 734946342 32016819 105546328 766531432 801918856 672946551 985460654 226923051 919776462 387459755 782511080 90539514 762758963 642671090 716046690 321462270 547647243 406513755 744393631 782168232 815620765 969808009 975882286 317016011 701651635 525398643 797587840 586444568 733686076 45584095 281635733 961303096 977190779 166190297 779736439 645183758 822070166 223855669 971346051 159644780 235005732 920765333 991535332 600726356 620639547 752636585 797972493 419493936 942947226 630476258 752409471 78508805 428957265 568539587 929394633 464141517 965970299 221583231 465047041 726274282 924953898 103015234 261484110 279640145 840512496 516905458 702260208 733572177 966986739 908448243 937646888 759014515 879268121 667723500 886523631 103433296 140386323 754900283 974241034 273881629 472872401 661951809 832701195 505881247 884824901 368398928 597371948 222636130 415109425 576238421 770324642 416725354 519436574 624859062 970917768 403549695 700116818 646287825 976270234 433089001 434708561 496952723 925912837 92926198 951576090 741870875 945909853 742828908 920665945 784415839 876921646 960765756 966599409 486071863 565086636 214429873 941213428 743478652 933406353 625310566 773695918 189033628 884742421 894913909 948185259 950061963 982633861 164244435 223194467 981785825 987161632 479678070 791944351 63837065 832062079 759042902 763624635 435255237 969923493 138641610 366499286 328702172 859722597 420003774 903586444 684881678 904375098 679003583 981013127 295613470 871847488 899965343 995223961 295927608 591430290 597466468 767156845 303678928 764868944 949010611 981777023 301004291 876045100 870411721 978957377 774451183 827592421 659022136 727628620 245298184 528425120 100030780 747500346 476549017 873583952 723759027 805609423 185474525 585734543 196714879 799981839 267854052 310020150 738749378 772685227 15347431 56888295 935305348 937230321 802938683 833059455 676486264 995259150 357713754 697640025 221461494 737749179 136360275 511123689 272311894 732334630 937284021 952927007 407053805 438514986 116433946 915411205 872381159 943709209 98790846 990557208 765561625 994224673 94355640 806256858 959109741 996290445 311193431 654890072 731743101 976952812 57258225 975223316 645082092 701561520 107410758 385903323 152340572 810181200 203762739 571801680 538996552 595700875 731632185 775049114 36429793 76316825 335185649 987480412 666473701 930078156 822090681 947925460 711907383 831170261 754998045 831499465 704872524 812451751 855661270 962494016 29126379 319569870 218052842 578547624 869770334 995567604 465067784 982340689 231873945 473264716 21145514 873535153 152960073 939860389 459395115 839808152 631725347 717880984 868171274 886958161 745933272 963945383 558604418 727546243 618810910 748666728 960552024 964756852 437968823 945015599 626677188 918830438 299487675 665778803 166123653 653334838 975471299 987673719 928175341 968835304 673242904 955422002 420004388 822036436 859447375 859659598 757085123 803532703 462520758 871311628 391104925 657768616 721076334 844126685 358230251 908515319 506729719 980529360 194556629 401087388 786873768 789292298 607658129 715988745 930239244 982488192 901210395 945938220 271102490 869555265 978246011 995607404 707753948 815030259 705409488 725053333 984429051 999000327 876121891 893705267 346641362 813467086 772886620 817768875 291049646 534115503 693827587 720309111 88176783 653242581 173492454 318080483 388497024 492605075 134258750 899357259 587346257 715520427 753382273 756484632 801662022 866541718 552881848 961132257 410772736 489880601 697749812 832216449 888840557 896401663 697361857 843335878 1121223 245516568 661774235 878730119 242092174 496686503 688043070 833950412 814483482 938416840 45388229 63768233 242399113 608075889 303082738 628783166 373977310 615947937 297544552 435193135 271923976 318929644 603556406 626411867 715539160 965514362 838466521 947418263 439466806 580843993 776089284 882562688 268816153 542520076 424739838 535756099 680456690 727716154 854083588 883784288 205197288 961195715 159944331 520643989 696251765 808757597 541398516 759500689 168283949 206546001 870294388 953823976 768217915 831363613 202308364 795595256 9353398 201264745 730320660 929074456 947796326 985736555 411694293 844773189 766532050 817904329 518870020 841421250 864401698 868396306 739926916 967565688 977465979 983326953 676833805 772158142 808536012 913165635 891220247 953085647 439061081 945012974 761985548 765231816 72747721 441697980 885060126 973500412 923440341 947623660 940516514 984932838 488000374 540843303 832622373 969612419 169882177 633011182 451035068 995392541 413169727 767294804 618551908 666376093 332759586 890530407 964035589 991304999 625845727 765900992 207155297 696004078 857313612 944449429 910384963 950752657 209502835 684969216 504721495 587628108 428188341 448308652 632912976 640348090 207640493 280928275 927189203 930219790 194346517 888881003 861036160 869875666 462944246 918321085 861096194 994318486 24318757 468016585 575493334 920313343 141753917 693617699 720366339 947000185 55390596 576057353 84954278 883456589 833706748 877434877 269688858 900235486 661379720 976106768 258586063 640644709 57974490 436282898 3408510 527981803 342352578 828562145 487836688 602633657 922512719 959936027 324931717 897021197 263661699 384743057 36214070 756969182 998127072 998391191 543236960 929046473 349625464 942478253 29560982 347648566 938389538 969863351 352743318 953429596 105584163 611526623 389516645 552200707 235924577 400224269 560753935 708176093 626671308 985562879 902609703 970743741 415632565 994433582 391708131 862751245 649884762 829366328 398963268 425391194 354866750 736400442 81363484 95888690 519745445 828042550 233085075 542674389 856693055 949592162 393798155 571915506 469537975 853673902 131634830 787175048 34185477 69989234 456836036 918454396 278174712 798545510 25484917 717957100 918255749 928185407 547863809 819618894 426676401 560335227 414022456 720776948 453496152 489725241 261648770 402754969 134131329 346485557 402676683 527890347 614809894 831541238 504746422 881715688 422403571 626048811 445715730 613694740 363954109 479930583 711534666 920751974 695222670 766688779 847739849 875296842 21157990 659979022 277797004 584626420 396716789 511688283 799000087 992647047 564338549 664930342 470174471 617029965 363259011 704627455 593677271 948249615 663046852 749871030 158160537 670978928 124516161 745161367 774517583 965279998 849907009 957699527 509842967 594319159 681733757 980388586 349920455 687590380 510634002 818435817 934324829 992998357 863915125 883001335 826829813 994811214 444257054 654603499 187495729 663054392 512218552 991680172 893590855 897357511 868614067 908916837 479823246 751379565 868939144 987324086 828543277 997081189 10714028 611487254 138302710 149259121 762982727 764614801 239565377 373296253 580123449 838519318 272503967 302534018 774110927 800895253 610021881 891325895 29500640 569523141 802941222 844479822 903663264 975817754 679673607 737149324 2356756 954715462 102707750 211592411 262701800 669192743 694622031 857977506 832735488 952004138 295655143 313804366 848399959 986768842 22413103 571754064 160471663 365060568 856607932 985945316 865066977 945859013 868348389 918358336 353421777 714971082 597262658 657452704 484301133 844016935 814425405 845688470 390092116 509595861 277584089 826713094 650694785 706413674 472997724 723187899 719585645 889441026 55760766 722838976 822466313 873466003 566855302 988680414 130858166 561765693 883208488 923198481 696494293 856982814 553101476 737760014 993450975 996585390 395776175 603556015 33125041 387625991 650392367 877825738 929271811 931729688 761683621 882610567 496800660 591215106 973368791 999295992 41679294 214532562 816501603 989524726 285826360 728790569 771643151 877633484 385330268 687877688 288559212 330809039 990536751 991328763 780153773 974664953 105658133 586168773 50089026 640518846 374653332 801740560 904996498 959794093 158155092 804570881 687883220 924616909 915963857 925759694 370879844 529551930 883958087 938480605 747831276 938964383 213601444 489962958 538166723 832658135 689117311 966954893 171294984 551761026 947678756 963962727 23824386 157501996 160099545 245759102 530529042 829268623 513953571 883804723 719716077 877816742 476297336 977732268 822259827 900022259 824082047 945740342 814322440 947190127 748486056 958319325 559494298 640969484 333707132 832651592 100513027 986124467 308289550 328919658 347710954 491050831 436956575 887386113 940065471 962871729 957471095 980777537 945606783 958757698 945435750 965662714 226707000 257639598 182528150 473909597 197154419 589526711 57313052 395175079 138229271 313808081 247661960 374537858 167192729 174929464 494683411 949444942 990534391 999184226 279187490 742116735 406691946 503449703 833951362 996240199 887104886 993681227 904027871 985226587 777883517 940073186 605549749 965318069 38988792 348046624 722923502 920840764 725729358 971942738 664601400 832888722 962700776 988753513 379029778 430188040 931850932 960834969 749138423 792438168 760501544 788512978 167556623 931199569 324551412 488136095 219460638 974459042 874916857 977041115 211628930 933341943 75857411 663724270 355757920 796936022 864695186 960804093 783428965 818831618 842163740 877780741 434145775 966972424 21395261 430786226 875542840 893599851 695934209 873094266 63611723 875978743 735499171 799104968 48496290 656441776 643155237 643634979 940026231 946083780 225994023 501850390 401060612 892446884 153658733 579384297 459291296 829577852 948959621 988554951 315759505 924708320 59884110 722470500 76741645 860760133 234948792 344572163 321979964 463329496 313226835 328182112 993298388 993586287 534841705 984131161 737601000 868272426 831706119 911790558 769230979 781911688 66972319 421474623 910941998 965508110 22976092 355678678 338449174 926243652 277202272 598745687 966854237 975282392 782397207 919941392 229669028 378117157 95497398 718523889 744738739 899529273 329375565 849429918 701950157 790493397 823263576 961270975 705853064 850402807 72532277 413046622 792803693 916380114 811719284 926946038 43509407 145111176 502718490 531083301 362713193 659080706 170912911 452110714 550869901 831482283 409409197 756919883 29903818 940386786 363701494 389025644 948669784 971792866 921747101 953681326 924190770 970947134 806795928 930582528 482715058 659860501 671134232 761868410 709138584 908065533 660468289 853039132 654136712 718117367 508967645 531453339 494739791 885181697 140032353 419180204 23694772 810275095 738688596 915183306 474083518 683098566 774568991 813585055 436897012 958895803 263364077 385540078 968490125 997854408 590142866 995542638 197124378 289661134 537303334 811728724 687675998 697850735 459625008 839659492 843181029 944139631 38555598 978889168 457033021 831986325 360384996 665613393 416486393 658187693 650277206 998350937 324851028 818463555 585889068 662738610 508136014 891489740 643986301 856784641 738255481 780524014 352487131 543786513 865121196 899956537 475493707 872579872 730658629 942752231 470073155 541635392 385431475 735845188 18552371 892575167 649743319 972948453 994873828 996873490 173293736 699574968 968927708 979500131 290417097 985913066 841460672 912252173 725120957 987924984 430188469 464591224 118968348 839076696 576461052 836012995 169551348 982666246 842778934 854043192 46574754 397449278 541717854 761194240 544950888 706647913 976430481 989510930 902672103 963639145 482004123 482720621 161924914 186246370 866901899 930649432 684499939 905717015 886787684 962119495 544155494 851232265 262094514 794736844 241131989 957013773 63269879 571889625 426378305 783054328 796842315 821584312 157710819 587805250 459891332 996375072 502382150 919531973 419704181 837202023 480749058 991667437 83286465 360000753 414001794 678676563 494570355 824191094 97725444 859926190 811198519 993255746 407027267 565804382 865177810 977091741 950274822 981304521 704883374 711327729 58808131 214832601 836502856 841089383 88111402 496075189 704013104 756913586 332979795 828297050 356937120 730073100 816194463 986058298 229551492 320424716 48141295 646432983 693152476 854342372 152162529 521090652 610907895 686710549 414039973 965341889 302329410 330541280 407874692 820220993 663032873 841265919 838486448 936611465 381264957 941124683 145679913 805734186 327184043 570809988 398422540 948959248 919155876 972973857 801671083 829580566 565330193 655342769 869486167 981369064 37626358 932410255 621286342 631939364 5353633 498575147 419849501 876296645 862243858 902082612 454539297 744767941 334600815 379959599 517492540 972454126 537504480 759994676 529522045 775580992 139759785 532585741 918890038 920132426 703863178 764589812 563736109 919043651 284323853 867801840 282045594 896275158 22152784 636916424 254689553 618047104 483737681 880465763 672136914 932764982 153176254 633333893 571087897 610473324 779700823 879346265 424816241 774160110 231703309 345207082 218334098 852707233 69041328 228818271 64106600 508444150 76975257 365990585 862569982 941524699 196595383 759085577 510582478 645877790 378817552 892698491 220131117 326060415 844627286 890761380 362297365 872400168 38622463 210029493 203777243 874367615 509176055 934914782 264301529 509413592 290122551 742863255 830292655 882026839 958663139 994533982 389388689 935849810 58846471 958496462 787660516 821197018 358446658 757047659 365770317 656385276 4590900 515645128 614447288 925122106 970180984 982641871 188550816 669754372 313038098 924350812 418006465 934947776 138645940 680466688 418869320 632678607 12241298 426403313 339108324 720860629 431449401 561412864 559996189 983815430 179016040 971824007 433132154 847016909 888501171 964984151 528637201 536665641 478133766 998564987 772980554 822271644 390980436 798257798 168443800 838293289 621403791 806222288 467650055 750609749 643545099 774884452 480064995 748345095 49478178 94557488 815806488 852490261 64073224 677919190 937722770 940905301 965361788 986911366 267092146 789778109 952933446 963010386 865924120 884847473 499028051 547596948 116018154 994669299 504896347 604842614 543571275 916614809 312395780 379775757 560363145 929600923 563344613 689647329 992746788 998420122 690979612 777413097 228598474 347323962 16366814 590156568 685508546 816733702 300857120 639724074 480458932 942582415 326491236 868907975 118062344 965125910 612863313 987422553 501193621 796082020 38388358 517235687 485138283 834788220 466438514 805375003 498426206 593303887 170646581 176357764 927973980 929719605 176911370 527699621 647535005 808632955 23948996 99359170 982171771 983301144 31109441 39297687 907743100 984689963 943895876 983418247 718759066 955788110 713697863 873199584 334526525 448254287 723760138 896961274 898592061 921534775 149093411 383209559 476480523 624520496 309379885 715930962 868469408 938474815 672534077 716574262 621773885 935731302 219334873 328148092 508076075 513763738 594013673 721099205 124068560 491865971 21774600 73899172 505368077 838191846 157526601 755512456 556332644 569297634 132386320 699678572 195070187 994721051 958748016 977730122 76679797 88082039 850786013 859444785 950813697 995506314 469231338 628816589 271135597 713422485 223605014 961479625 420212792 460678974 402568734 407907267 496779418 550996093 242629157 866908194 169564541 401089407 497160353 757233079 601001801 860579877 14282773 759168154 94837825 810764558 597731408 600667286 413560977 734762276 838596469 896369483 660710259 798756352 63493467 895515371 542600372 546154007 498934262 726443196 685331784 723575398 293702576 429536238 531027184 867452992 539306629 888537995 870924491 899140721 763708093 877425974 554288747 650711146 684751286 724329858 663559552 998494222 894166825 924288114 384777131 614411564 490282589 754206743 630593716 981641868 600903273 689771315 983654916 986953421 380883162 397236159 540085084 975976380 494204851 766560809 617258593 873603438 528165060 947991225 624360336 771189219 770095528 806231511 523675609 716801147 440693811 981174075 168324781 820655523 54590673 737644323 20855745 697138137 748877583 862454188 155384654 209462417 941087433 989905809 835896166 973450233 554142990 624202470 87078027 187177178 246978544 699560468 608904785 632554131 333428833 804002031 980374098 989071465 545945956 781649157 306394643 372434253 942765132 955468397 651953946 833653602 381610958 698900850 480394448 865169849 498654018 981557275 353290219 559989539 364972040 515845909 238567884 758176592 841863927 900589362 39490640 662304025 768974245 806423894 958800021 995695455 201132650 642575900 35410553 76920342 447677523 630735443 655986326 840164227 289664929 955865589 615982757 703905860 472785113 510434820 217223738 618700611 200868095 861053676 204159895 358660419 564140517 900071994 446247503 527728720 683101879 917286080 398072842 803605785 6753510 377824132 182395930 512684338 55778095 800250568 91520137 908065164 776804911 987282439 795394907 874608419 340652289 725066210 149662196 540671638 193057345 659132019 504136805 650944870 918054814 953943938 854917508 992580679 870137316 976666733 652716095 744540754 998026985 998872152 611826756 849544423 556406943 622994986 720783470 970651041 900198168 935655685 145397679 465998324 351406931 932810890 587614304 607022612 915641209 933706587 580011015 711849649 479926800 627779674 52601079 261445468 191684652 422258786 681257321 985766085 863825007 920705449 185232117 943354652 778443392 809550964 134115455 147181162 24521652 258578087 788436681 995689878 748450216 852369390 239950015 886384085 713655213 741333448 291597913 877813000 16586804 153709765 611893512 636995146 231434591 622006433 408357621 753049106 556182886 571969637 96692432 133447489 348125930 995159398 763034827 879279397 379253093 830109125 90219280 851640135 682598630 805259326 216473233 515988686 478741544 510862278 46720233 415373104 172076694 893049684 206248514 458419855 967875121 990314293 811788842 835816281 989119829 998871290 529638893 666402569 47882620 670849689 32804056 471663614 937276312 963388013 512800587 592865266 391789424 795927189 861104039 994527422 45267896 224369368 165586932 809112301 626974118 773293254 196255211 699197737 115508020 656457567 986198013 989185253 549028215 704756951 713441197 894878249 924601005 931919440 719797070 919211193 336418983 925255946 319032978 504004226 169894587 683857566 956686022 956695868 442453501 904154823 721379649 803256295 973547320 989587142 845713421 996318211 364129704 607594066 418335061 499220172 24720517 702775671 167284988 370350797 705495263 898763535 401521762 563061699 911825448 913747597 237294379 482624513 51003413 295728592 531587347 820958875 764601477 837714234 998748523 999666113 166168662 362450514 709911447 820617258 364746096 980440562 463332002 586780744 300831768 415468148 571351806 747277598 2078888 737287488 613321940 895995475 770747314 940572371 269805998 656487166 294480610 313230406 102039085 436915393 606894576 970721639 960703666 994866878 265368674 978139319 835219766 857344939 654890789 702415108 724020908 806441104 876691925 913012154 457825325 583443819 331897285 458096030 939645847 965743885 343852871 432918824 143150659 855813656 234946301 404085957 682988729 971973532 583603526 923552783 442568143 901337725 330092173 455909735 605375978 615236066 286077156 372222231 345537681 855666830 570511655 786417018 618305186 656215293 768206882 939580351 795164109 996918719 326485347 679774869 112209012 425993997 948544236 980713894 310019329 872196455 359564945 997359582 450284037 999316362 475827882 583952143 755387752 953477493 897471943 973521214 93126145 132231472 479750796 746745621 959454949 966601358 865594174 937339958 151121545 291361954 584380156 917294286 181136373 472804949 780755517 828535593 652540430 782273433 698261011 765315290 842715267 867264995 452343390 652645683 940314894 958830234 480716040 811160292 163546065 531313079 750693035 981170283 125211885 789755361 332836683 398479831 542776106 788085380 79750435 224276823 835874612 883100135 64875425 367085941 260227746 479415713 930668242 990129436 411461098 990244564 778880015 994072731 911209006 960741184 140266995 289274207 956179182 962248202 637686767 857575145 757161423 996590346 632664860 642985658 450897803 631112593 836822378 927121304 988513228 994666147 618488922 796247227 455629694 460317596 516761185 827454058 667158683 943667320 170759783 708493089 548104807 798890468 727485591 797649211 87193053 352612432 671982599 942360657 680272304 995262179 179757696 655278854 536777375 683522825 738384488 848467935 9170272 734428726 97957389 250070285 123903980 249193569 83808885 780009537 485209125 545109679 449697685 944512138 744191155 859511229 866791837 888930685 414365707 596921278 329094966 809266664 69583904 595316480 436263644 790937085 801417786 851916371 12189689 177175389 244657668 791355173 49136805 98740641 301286127 684674470 948996040 966599643 74243688 645978517 874069583 942453958 830266536 850843005 855544546 898001379 55283308 565316747 192718181 831707624 959009518 990003686 948081007 969260993 871472352 922547533 25323333 72353888 168896963 570340000 747746408 748025445 831251007 973416971 680049519 950806667 438136553 580748844 435683723 983564043 401319138 632886153 541094758 579800224 883349231 904499909 582421298 997146800 290882687 311945556 512987106 757654311 307871343 578033379 446257513 619413533 30865444 280983316 298982505 856331718 73913854 524855968 393952094 551157659 202144435 629805494 907580410 920543002 44213815 941301457 713213603 866685623 563955248 712526903 333398449 379888736 996801088 998630661 795107336 815274507 900598738 966234216 115417769 125453632 557977895 923090794 654340302 933989246 111937814 642015572 537424527 782152993 692730134 903556677 368911943 748623882 45896605 855491128 21379080 613890050 984945313 994607207 33704813 167940848 629100421 676518866 975447662 996344049 740053225 942823637 353986224 498527740 788722865 975515936 551022933 961972351 866666816 993966532 498390341 558761534 826449875 964878721 99184775 881812961 418487944 966910688 69926566 547478998 616793529 725995448 874937739 895235834 939146533 957203422 854136427 953470784 988408789 995387931 461549109 849406273 755377041 950382098 321764372 781437453 999603981 999850367 269168939 470090142 30483675 881126030 601724588 690784212 373069964 755045776 73506214 897890945 198151422 406649286 932336564 995997488 958193256 958519722 651733800 967918173 492934014 586169848 91586384 903584968 444720489 551089036 198993550 263202475 189653204 649082779 695442079 705449847 454547351 789785953 380397048 430633170 640392032 915234419 994742740 998117727 389681805 455135558 320540698 386893765 862315465 998117738 966199280 993064461 729172569 791707099 580811165 694741925 498747615 804410184 261392467 631907271 81192321 753494778 154266941 336622650 199792033 860349414 491917191 532363698 778142350 941629479 792154524 798049774 838772804 896099118 263350751 566525085 811879607 945495897 239451093 527358933 543627481 632788961 785379191 928895740 454567696 703331155 712669302 928297533 815883960 904797506 433784641 662024958 178165014 475223474 876032359 985854428 840157197 941474521 865027814 908566997 816666475 958309008 890253152 987359778 316534827 979051592 878331798 973275722 427935806 455418828 739532960 760177637 922003201 934634367 31641148 114572500 674183237 948743751 995660218 999814233 570357118 657427476 126940946 518746173 431822712 766414654 785119712 938555097 942381283 942929701 644655651 857290788 20304671 868597580 711848392 816403447 695793152 854654188 614281983 750833512 349765422 781216156 277199309 363004655 98101302 209242745 501483295 512059522 106149364 935319331 999650934 999778113 874390572 979028244 824250470 957330784 961080610 969757836 306489269 460142015 354683023 604743772 126865472 694200110 136636616 845682417 959099915 978006397 327199427 852537004 674427197 779233673 321303051 979909620 653966965 932637560 59742142 901674634 994674326 999210676 278176270 789636970 419076550 753415846 359922169 949544670 393011786 883677129 174536136 631930001 344911629 937916944 609503750 755070110 399930081 574795487 496983193 820908426 85817862 200296507 319547404 885837193 528545526 751685278 658917431 882773641 809641352 939364033 580655540 665987808 390824555 676479398 877333009 954389423 210361613 695981678 192069946 970978116 909173209 974438157 316880186 860075902 789812976 958731616 214169215 481646671 341059518 510252816 344961264 738291377 481547989 513917651 147071671 456933165 799138222 941906015 735102651 901670466 34353159 60339958 43874227 434648060 723482235 868884486 116235957 795470578 275468278 809324710 377998171 600726243 36939480 855364268 273754930 992253917 957005364 960946161 718395459 754991220 374167565 433115013 902891154 913203305 979797135 999477283 876658845 973834155 95906453 690789954 623365040 863521393 397827724 903399139 785511147 882835948 190527400 235517850 814243303 967183165 818246878 882170961 300370537 906085185 130703693 440700948 885802401 950692897 348464741 708951537 699607048 903190469 41273004 967999196 25251698 121702823 542339765 554173349 677285308 753632291 54811104 636547191 736768838 993971110 814261096 896405171 941416560 967298175 249682299 691187293 968027462 980255061 963570400 976069888 420827971 606389398 958621103 975961441 153817001 204411153 406209244 852125369 42549326 554883956 828231562 832365643 79713237 120401518 79830065 981329032 211650386 504812828 111101162 838055883 782332666 859606785 770573372 853700048 578542090 936470012 464763643 833457939 830994367 888131081 584546354 983277616 817704625 973337853 636718478 693747842 188768440 953950670 949127416 949279912 86424193 964414887 699640577 952306278 640066152 943991903 934496161 935202418 799409790 898341326 295329034 831996494 275935112 346845161 372662183 493985064 87258477 948617321 147291099 835077575 960163774 966105453 292046421 845269623 958977890 983063049 891019998 976017805 656382068 666374934 127984010 418755980 743913712 871117826 724024412 935861632 77197032 676658018 136708340 488037064 921251207 947122842 960142582 978281238 887870688 937288043 394867891 702410901 256568480 663512266 291948050 925653874 277312650 665214440 770647731 955480786 231881991 408945448 143554749 671434526 813289528 962090957 699310750 941277849 488678461 707965836 44749159 438221155 140935501 533668613 110799575 230391905 813852450 933079982 576061885 881744826 106181007 665621421 176098648 305526336 348953253 715702489 810257026 928338433 975789754 979367772 289351169 644831563 926466345 978805435 149436027 379808306 260360880 438825506 532804265 570416470 747206435 961733390 796148554 907003254 360115784 444428755 97014540 778496670 752392735 978327739 959332621 978823392 689969632 754568411 359612063 431712282 371413985 848942735 370373488 745506926 832120182 834606959 607203380 749211968 901899768 949539519 573129438 737194418 600206860 712181480 764544074 850731391 235066180 588599896 318953674 864179421 904376347 976350697 585908485 600015868 994219864 996411026 153090202 311162354 898245149 977078942 803659211 816761608 510278124 574121965 346231114 419522095 562681284 623116292 891097442 936465484 347521211 432466088 178758920 814395636 657704238 986989004 904628335 994877692 64180581 673946984 624011189 846883346 856181335 936171525 679956539 940687048 2099496 556306502 880175892 973298279 789346604 945116139 724068594 736162794 68789605 432530021 960134481 979890543 426827369 692507140 386462971 733368961 885359832 980691180 370721577 640375039 230331246 314851535 691520638 752167863 437417606 587088169 977168757 990782501 933711969 970992864 927175488 927821623 161797114 423350728 19834432 347141203 514849963 774409585 878568605 982353003 113969994 215876148 399063100 825859112 812431142 816017538 980832811 989700822 933405136 947256025 183982204 386035069 945471007 965483900 570627580 613319372 760596149 996186522 357125957 738707967 121378712 461248759 708514434 820634232 471095015 902779111 545000048 740054420 852300062 943145219 47799682 94556067 800133469 921839540 123513942 998570465 969520889 989629530 715179638 729752672 59537144 757697389 163927849 880012089 903866590 976283083 110300811 799249674 180867672 505045123 35961681 66605724 677650595 835743159 794540958 808999296 270435622 737603718 456497143 499231815 62013919 925190631 515909778 837596040 236887919 380253744 64057966 252494258 495681927 687105438 833102840 892207692 400531098 613903153 465247417 537427551 993744814 998523552 748611641 890767247 58365457 688548810 445096680 579151508 737041654 825561103 760298978 958693965 201666841 411962318 717309114 777600284 408653959 701471254 3350521 375947732 232048286 985450051 378528245 584884357 450831996 494457211 728841208 819389112 436878120 693495137 302661515 509307766 734999937 892001076 912005456 925984040 974948546 991922559 617453202 849493330 819704858 904730524 402764639 594128527 840236613 939775683 581586381 703544077 23265135 980990339 626171368 758237161 96380111 935690964 389364206 881641612 92868217 913362452 64441443 686533973 906494792 959540637 591907017 596071478 125744978 576283083 666641243 948687291 129016341 154092229 914036738 979446013 737990405 857418077 837415616 864584794 573039735 897121711 97423021 738873264 919907098 920990575 819580602 871222475 503480318 612723044 891323173 925335805 447498869 678509338 939987251 943369566 788010137 793110610 739641710 740306951 93502039 568934372 238327495 917658883 676965847 737144780 134590647 773811747 394804381 507770490 986305546 994941824 567963382 881621498 484932675 662923864 777220913 961831583 309595226 328289977 76360590 988334873 199266537 459840643 386388613 682415406 131744466 335205168 485877018 909250799 570056814 612087134 478821224 791000959 792127314 799417667 499304652 904370657 152382037 438810353 645524260 913825330 81589985 336366960 953422644 998479659 634324624 836577658 72479137 356767398 550248354 711624844 465723278 808986882 920342648 975715001 815456125 827587808 309114157 861825958 113515760 816399252 934696486 937918427 354657840 408913411 456347898 750025309 500253184 578088967 515320315 988846229 687704438 847274508 533227020 745115923 419213293 762327522 220050385 934567787 860016250 930805172 199584790 378884436 844305268 997248718 229457473 298401202 763989127 863130914 732564670 972599181 203217261 357949908 757905933 798933247 32960746 869027980 982520173 998180373 419028497 579242065 986216818 996885578 725314115 855498868 899882639 970931830 860160733 912106844 220844415 965652718 11592910 983224194 644865395 819077718 181180315 671254508 496242819 874819536 409195273 692351687 43343507 206956805 773370782 868322810 977452110 985611939 53951812 249611633 714815320 918655445 287203357 453995084 223765404 988622154 341341518 791173116 887651422 986139170 791406914 839719324 871850217 956206920 420606382 938766350 544890009 568310968 575751641 851490760 215943644 931657061 65012272 303808634 603916726 893638556 197189567 627478727 160451989 940831806 333895115 650504737 111153781 340928289 461113557 604349421 500478775 615976973 54807274 751237525 661658620 928606018 244950439 675081293 805964972 922854916 414341402 674621317 805226103 865232375 842107597 979382196 872510233 995248786 778577207 957758357 313878291 847188860 730825789 868214747 748014321 748584890 781371353 810127898 790673340 800668094 80724143 846534308 836916352 888607694 199964752 329750974 234850725 532309408 400914001 607478350 637468898 680515021 81719260 284520397 917460473 926956584 82899973 641836593 583057088 715289152 323904880 745331572 651966787 896089305 908724595 948667330 435906093 460590175 972842669 988830397 44822331 373131263 982511540 986334039 172290496 837202308 336210313 871214242 959559985 976948447 111487596 197765230 451506631 872190439 796779816 871003398 956899274 972723663 682009662 872199550 189119051 586687697 307272023 594597933 628215406 987775567 148233188 674918605 230893608 944945666 694364980 956897851 275834627 489866880 953897406 956522459 424516186 521732521 682902833 744073773 621146844 956263521 328326476 773329258 121197985 486146796 940780410 983227332 769709518 858761543 406588770 413977217 5743635 298019788 542840568 744240233 779445663 845001131 550754388 698812440 506943104 823630151 127022042 983173826 948907650 952295513 605347610 687935287 871087932 935408009 155375358 218639550 930575795 969001820 407253164 584822163 490345795 814376281 617790104 873275695 968746739 981739641 741639788 976352375 980390290 983599558 994190139 997433202 604161620 648446020 990635853 999641284 899741697 989704119 583328583 920712530 775238661 783085017 950751166 980946962 919646100 978971745 822670272 865580975 531936839 691646690 16535764 336143424 527409343 636872163 219017646 610442315 941013635 967411511 693388944 968003404 498284011 805691730 503545604 830891717 943289893 962180555 386824238 621195621 869265581 881118265 628511278 758835781 688907197 905707298 391795303 395336525 461502910 960315067 22827377 337654174 195307514 552265760 867206746 892864919 594833301 935348257 201418004 602999873 358187604 600583159 692065147 774476451 754794669 802570508 265580226 999892536 215164027 469967835 718019501 953929078 384947320 794946796 474502304 664660786 285483160 747450298 42890234 804468848 839166133 893760344 367847641 732978328 553866830 879953461 607469276 680050435 335291025 371352150 131816892 918288079 723982651 750921129 886142845 936758453 110895113 185831043 225207293 501317086 793708660 898157219 310689580 574920191 180362267 391497624 842249422 878667473 851112049 964158338 595002969 829025968 571065107 769676649 837321887 921238348 833610300 885568642 240904746 556949203 84232143 744328871 950326021 989942149 705335429 995821354 749049268 956153495 91783275 548924701 813521741 818297213 147687870 275811662 330920966 939687416 168375178 572997859 959504652 961428506 819712272 892878296 590903809 607405809 968572961 985172575 681801083 871682980 831798530 892321516 155919648 931134273 405159182 724669371 913033522 916775007 602714287 753354481 885515433 966126230 446063583 788408462 235994535 710796266 612465857 992611108 29397230 485837305 302821787 521383455 146641 433556881 177659279 989989749 975567080 984043547 371554674 830341529 684289486 800588093 188081079 903990602 400276885 471720685 290813688 408132860 8904434 165180442 137706345 238018502 353025468 821407230 567415141 912308476 850070782 938576047 931908996 954245529 117493697 490093123 482495176 667831067 528495069 963318941 555179656 906528265 723649435 769764647 883485256 891049891 372569202 684841658 527670814 601831557 826676723 851204193 882511035 995535076 513597398 745790217 777144655 976492009 231059141 847433074 540463381 834350846 788979061 975858266 235796453 648203822 460594293 596936153 783664089 960749547 575736165 844060367 740283703 897417958 269997571 540324875 637611583 982689522 201300416 743764016 61889177 749009535 780167936 850940471 678046028 743136620 757588534 989819069 471069929 483955779 826819558 947377732 636909306 652503783 39236064 309017161 490977457 879048468 639983973 899196193 985370761 994134858 709411361 888897746 358387548 598717501 732598826 893889421 43467990 648857886 968925950 971348576 516861936 769195548 114428252 354330728 724583765 910724882 102360343 153778467 618143539 774551084 402458361 785598576 232293236 870743289 201951143 435146632 610679837 721375155 657726461 898899495 40270836 267939094 684308923 912269511 564218999 624377861 404392080 496125819 141539146 950945951 58237528 361563431 819022206 956854584 808482033 959410012 621017423 729003971 117572236 353730106 699658816 976219090 378541813 805411370 505845835 853806642 867959913 883911695 448701644 903265284 79993575 823428292 393606277 436124533 875423628 935450664 503784366 545237599 301431931 341447017 489421353 706286423 336038057 893795460 942716752 969671596 368473546 465961938 70644037 641453757 519661348 670797585 610320733 765008374 408887741 569880404 152445104 937089385 696679266 779361597 230680382 301231100 715554884 837126193 317658786 804367135 627957307 840711926 133774189 369576104 627313605 821235087 417385833 643990235 888621276 965013333 970453753 998176700 319149765 504593222 994242435 999684119 518884915 943868031 938878127 943583905 846991689 969074007 885438499 911656449 82031668 841065001 9327490 868535544 138153041 683516501 374314333 625292195 896268447 948292410 528618143 533124566 872603447 903166459 311167186 845637924 809713311 893819652 305850959 815503286 300491115 550670835 197639025 476779503 523740398 721845094 757970291 915130693 430171603 712749323 196517932 661297737 850615134 972171437 908746776 933722826 762737152 942678504 337950540 763797986 441592196 836481708 968769177 990326578 443497616 970107249 446776231 958349873 859107478 997829021 212397493 294705932 626158823 673164943 402656498 413112864 84488473 172968018 11517775 483649137 671274809 774807451 618285841 709044008 545151695 616512226 911212448 913599808 617585859 811891709 48457679 960413103 285017436 795286804 394962151 771652954 437817638 813348079 360111939 880201392 882026633 916865142 315721085 972665063 203560832 509634237 638524881 907876585 240605059 279933090 583456020 871528563 324585384 327216160 161999334 708792082 617980651 832341378 806523815 824583370 611652860 842950406 557297370 939728196 261054308 571230671 214690969 268551752 966160900 996166733 668267621 738230301 787254743 840897646 771913953 848803692 380583281 827438554 259472068 809075532 974783511 991443882 664315912 836483242 40013383 372644967 525899388 711616687 302400471 892631065 477642871 608231454 78179657 154677710 304521281 568450785 644585113 756855760 535213956 767637475 649599303 797127773 71788948 278124219 48291767 534239657 62102514 120804748 584834252 920890224 344380013 785862818 430726186 705861577 92769614 680711484 641834826 810362580 872145678 917001290 220040089 924537016 294974920 555409525 177156327 686204338 313599553 577640618 340134043 863512266 118702105 836839326 760931670 932884802 733238822 787186709 151913617 156488102 836070656 897827263 576635488 913582735 727114811 748868478 831262473 892736445 944693588 996807139 9451313 797937107 228184604 488653614 469245886 828309271 997370330 998690134 460526471 688458265 596717594 799780549 965155352 974358004 106442204 819636611 462672023 974777579 226000118 895232472 257024573 360607008 948469 300844443 799727123 982851535 240073034 946065098 505031918 816411774 134406947 330365662 196593628 787201017 780458609 948644083 517856092 570592401 683002943 684645850 600957625 967016151 722298297 778885813 330084757 555890157 257096245 491512112 419012271 774005376 460704672 883087572 238177580 621110247 692479914 751635562 520720518 625969356 799318544 860147550 682176288 692412226 781003739 798341055 644650218 866684372 955999896 986451943 257376184 678917612 913740040 942800954 22709142 538233864 519729934 786715055 686885648 806221635 988319503 994601703 236508484 814649527 713905390 853885342 427388386 742677327 538733450 550794915 405244002 485772151 220111260 668065178 144409146 653092015 441442634 464651346 658591504 735938229 543644955 629522854 838749840 960212545 732287180 819558800 648019709 751745309 361166959 370077416 439149088 747302649 998233243 999789287 879589313 915149280 382775878 885246179 837645652 932663945 969481627 985605658 100542981 921386723 648303854 765946867 131398295 137629553 720745809 917868070 901538495 980760724 840195517 904845675 588210620 782563687 264259809 365733881 186635226 799065896 133012790 277968287 844262635 998133382 372558777 803004605 371634292 894309291 444280241 766663722 116258264 625723961 475700283 733841404 240693324 682769342 277636114 900742661 675177818 758847747 821108323 859575693 570613364 591734938 772241828 990019212 839109667 845153389 585294147 926373626 665357644 752270953 464504070 739499324 402669470 682482399 378949273 628618006 910080332 910742726 245965088 386155357 169792495 650926531 305738443 451593717 232470784 280086737 985032101 995456621 334303053 873964180 867596815 968454594 745620790 797128199 730888470 738013879 795364302 882895199 565800634 922526105 254002147 449154201 147839526 814549500 537762342 930060843 899795290 999956959 448768867 666496362 915617110 996813580 131415129 376203627 623978940 917985594 388049890 982668146 649585577 962267048 832347133 970050551 374807975 861828007 233960167 386854381 562037824 758041770 106664564 962371967 448637985 783682036 839163637 881047113 70875121 571233925 591736714 882924864 537726818 678534535 86861060 727545737 247693237 737925789 787666847 851636638 866438398 959328914 46115192 151474652 867339692 979615130 550900424 600623958 501490473 592436395 456492482 910849655 660022278 824433358 562811947 821870671 137615104 893830497 930763665 938540892 920410059 920425125 833916594 857722481 462801885 525425471 300922985 448764278 743519468 968714931 487979733 593141971 602330043 985357635 772030239 873539019 647675122 993997564 408319858 974935950 29451445 803751930 862167909 940559834 770703807 944285405 737417126 944013819 98785637 354563685 677002496 907527493 983796092 986981999 977826531 988334555 150207034 827119035 521167186 813810012 708702535 986606020 678664187 757034510 795254156 965709616 238542675 446762812 721369000 862471700 922202981 963800767 278490475 806423186 217872077 559395260 226914494 865534152 958853676 962556929 955064533 991863808 234887565 584956222 572992916 799119373 68421811 730382416 821250288 853807902 173114450 839322562 465153903 893619320 512001860 940505028 389579029 700990648 655272724 849250509 242206779 714184692 716074049 739132027 412822038 699857595 569416584 765493907 489482617 701519479 518206140 900157002 323988933 380037979 526745636 557570087 394221258 980934986 978513890 995052605 20373780 348390773 586588079 842716635 185057282 459847932 637907542 800681713 109029989 313649185 629786107 843978530 574658239 647263603 514153744 856097597 637777194 778263861 791241583 874564004 864052008 899723464 775362263 889288826 209767665 274354221 131061939 577409391 680007055 754459645 34831511 471454165 617258919 975351079 125474023 688747359 187137191 794815219 809642408 967279599 90320957 493765533 928923972 944430334 182091620 796998502 635226624 996030497 616551670 907277745 229902885 823274813 763015919 867532294 776657133 806655626 118137017 292619918 373928625 708273471 497449464 738527440 455573880 476709471 778023605 879790951 795858172 904375343 708621381 824848116 319752791 848016269 880760919 923560717 289681333 813752997 163966723 320181459 668086792 916615271 859062034 930954367 107265330 641974955 106240267 727835877 496049589 625017633 794512223 832438200 859912464 937976826 5359803 585292938 321184565 949762433 666152669 669660242 330687404 538121503 800697607 894584927 722845765 878953403 164736500 278868480 919522851 998478549 285102748 362245893 127569176 312697619 842621628 872444732 152695690 406579110 653156964 935113528 615194196 730071600 18526564 283492487 121147641 889490708 751244474 804958731 41031707 388348188 660130033 969514330 247853692 539792789 802700575 833489271 774155771 859468475 136692691 549789328 35227637 587548797 301385962 787032223 409025672 851684345 927039115 928774024 767107998 975167711 615319136 967451948 565402635 825594409 629731785 932573411 210462688 979446558 734262032 769727421 67810925 585023414 912092261 945630892 333057052 925984794 784612673 896834898 974428353 982946294 148610452 695513378 996884782 999812454 224458788 785369219 576040400 937154101 73662958 259657014 727318785 794833861 768551951 770382328 754618930 965770048 301795663 751469577 291297708 874109055 383586853 405467603 498008181 953014853 661535731 753657789 341033878 884978017 38757344 403065018 62721833 674918321 641847123 822197193 177240315 610332635 85845267 430575704 599172854 948324299 707062080 897697410 213753272 300341497 443360815 701782462 565182419 637093880 693690963 825351046 219670857 255961092 77346222 605566159 649094058 702103071 649163604 685653260 156844159 310530324 254333450 869578743 621843699 675846116 996309796 999968138 60923397 110789807 289287415 714171167 545317448 837406063 271792101 377066626 495107883 617901239 214972642 338282605 525059859 858697415 695441945 748920438 758374303 819943762 639371930 750939672 262470260 895105956 188933756 412943782 187759805 420407128 86121216 406525710 787052680 896707423 772679551 827546971 338380002 710848217 897282423 964978062 349764749 567558702 136826217 257271547 897290824 899883676 461776059 604054794 813160589 925545636 201050530 296303701 405300467 435894468 925020228 938219477 69861609 708608256 446486492 841194479 670431097 705179678 110789551 662230719 38384659 436307833 625766283 952891041 844496755 994938717 652485145 917096285 910257085 941445987 860641696 870928890 765502775 935912239 775086074 856437720 351018824 957838241 258855671 486061507 369624857 379590477 356138656 685228933 448616434 732460521 75886576 741396463 744359574 985982374 482976789 599778956 146249976 306480503 257101354 616631261 985403086 988374541 990503807 998386672 500574611 504622665 854971309 988723481 109827499 592739456 713643100 978902774 337370732 511594112 372983633 514132691 528827503 614061606 176249848 964190184 921181314 937661038 503481356 779929825 538376951 558684161 806862717 912152735 502581027 573480123 657292914 889591998 546319452 674705480 132816292 885815496 629537131 923220360 883693696 955842067 652362615 881267039 802866714 886460941 252878487 999913949 302455895 467337422 463306385 940445693 195818444 479355640 858089907 964170476 402867334 852335209 487087206 921670746 88488333 937911088 448683582 809698392 43383919 117434890 781705890 909046361 517469316 903296384 214286136 788520709 61102245 115378575 384612660 659351488 843681074 947872343 79300841 81568958 693402817 980783522 882285238 995676400 508688223 562267352 568271691 915638917 616926632 694800692 437478412 658126238 696493007 858756974 511607579 904935575 841208509 914266649 799066419 841437999 171716540 916465736 910578700 993400065 839343898 931935651 891597878 982290489 297948108 860753418 602920041 779995086 90974324 718274412 91982557 538517860 684733952 989230015 833960161 838192403 229601099 429005274 296042301 671453343 945472277 986649124 59674535 680998545 234007202 601082742 936698407 985717422 634682070 831863018 670951959 813406768 571973898 719433449 979324058 991057527 974383157 976127523 762802097 774545362 139132796 588443314 488237215 711586723 910815831 944115711 496921887 577756808 484429731 776556730 20117140 681942325 862091919 946998409 473900303 925928901 478913882 789769660 694139122 885899089 397877671 663324720 899134482 949967838 78105209 609935959 735348517 975246011 834288495 932299297 812749170 910021527 357293999 978628203 972973822 982013144 126939836 288596260 493637311 813671442 922397739 990155020 938932884 939345487 433933977 882342422 356771907 523339231 989068360 994411260 713262452 867216585 262487974 433304327 736519076 878362586 989134128 999059191 196782479 775794341 696677616 785421607 143726369 420431124 529670843 608100441 236168939 711631284 455760705 831978839 330191356 642676860 738967299 792976010 494573654 785415496 733283358 887382003 401346259 636160927 797119651 811593071 236433679 426232363 851668243 924499993 973924797 999921264 506294878 717848959 930886513 973297354 185935234 301989855 770186469 991408138 286532510 664380566 188004683 311636488 489003715 688283894 99153628 635975768 867665958 903456870 245336272 664717296 754605752 837919870 633972887 832209362 601053366 748174620 746646778 977051870 731762580 760875655 209338061 376441355 591854474 932005352 633388500 834810290 312924345 974060681 723406567 989292194 205857095 267210350 718155303 836513687 668432213 829656529 651724032 801580293 515464755 529566885 902777882 909308049 710837772 805129110 527417285 742820899 753080382 780577138 300077801 863539444 706224250 883351538 960755374 977495428 32824877 208382931 971941003 981954246 172051751 564701862 21485965 66735186 758889023 830986398 913032220 978653572 960914121 974744163 475677586 853748603 868970757 982577663 994127217 996012790 381006261 845435385 455952438 865221953 357409295 964925183 906308133 936106280 215009941 710056110 473728250 696273005 108436588 121103879 970672379 976254623 518727030 818045181 998066858 998546600 357312772 470017176 407647983 928598288 239278710 469826413 959644860 996396469 374690114 565351223 297446533 900988153 243326746 848205669 429246092 718564744 492847585 620759164 498505724 827991149 64533731 461134117 113141 715135207 307396701 671969025 845496273 860424251 225027425 324095410 890104454 901733383 997182037 998242004 341992667 977766275 490371653 936475666 82571905 648207719 46844425 901026925 142139900 945456810 813405479 988768724 995714699 998421183 477717131 577691662 913289896 963194270 213870202 302069334 915380714 932832837 637665190 725868869 108826521 365019077 10647057 130515667 132166458 787099031 837775330 881736172 179920018 281378502 676006556 807801449 827327563 865178658 68715401 108651815 60327683 125747048 250144638 607707205 455361217 519923155 23935452 316088852 424812040 749170131 338908811 764970589 585850484 986701198 582851897 982338191 157588706 607737760 548389168 595859872 876316773 907171652 887538137 923605445 938566199 972620331 205589307 357602078 975175020 976790968 712210851 760013397 741907017 885753347 920874003 966360860 920215186 984306933 484245255 937572251 721999706 863513316 732897654 765988252 692764911 765466411 572100535 957045886 617244950 729485186 249963965 910929753 248290414 545617391 760808765 959904210 733631847 872233598 460439010 613811928 616920093 860955236 485438175 506985515 232551398 283954235 56948627 233646851 702352946 954374147 366434598 705473429 749082784 985449766 266463418 612296925 936418910 990725594 447314130 554764711 88562 654556280 773540607 941693444 339028927 697983501 550647417 900055615 81523210 364930889 936015590 979877018 891404279 946646266 40416931 671872873 44202143 906192382 86283537 216152976 113088022 969145323 895551429 941854282 65095904 725536738 110272234 426656362 127178552 867411907 546893656 591303077 298996562 501525295 759978163 888673076 435669061 464094949 556482198 891789722 250465821 310984597 832729774 856262047 242672472 956162493 287645857 573031544 537956984 627531878 198434670 768747350 925403968 963060071 357417313 415880234 136629607 989834811 866852221 919425218 316615113 390481198 526213638 738289205 934163716 965663085 352708846 715989762 273179744 400801588 462588426 476674248 547532590 651782923 438328173 484972898 195317773 282913827 574673750 828418753 812726187 858614806 50882733 311172593 59610174 761487085 540680004 717042954 188438733 683352215 414255476 757243018 254462472 610090264 658635458 711157337 157954863 535349686 996801949 998430987 623651947 970024854 244487664 824239059 943738333 951675120 874269587 987017703 941873502 964711208 579020402 597459342 696470361 939621085 495705517 606562748 671696810 724468980 742464386 977180726 903922494 956789308 78429374 706954241 157640681 521853451 652896874 855301280 563564630 773628648 936463508 970263347 494026882 899384708 741516620 889413250 103067216 441679956 98405115 801499426 184718559 554923350 678833603 931717414 792416578 920711224 71732743 849672058 624605115 662390589 193906961 677201958 956392851 998910936 743322520 963006765 64448476 369061621 452274356 781052101 777758805 848426602 723347328 750336444 731984932 824397691 317303041 784348673 581956720 930363721 175292832 632431075 633898927 988015634 22445202 642107981 342180206 967827926 268709348 486748971 214361384 591849442 885400613 931451674 406102975 954456264 963938266 995413649 473386646 891613925 302553191 705405141 109934730 550330438 305642242 792275460 40732472 118330077 736296320 907832652 216181256 954979422 867508537 880990199 926722672 997284128 840555791 928482258 86058759 432680078 17366608 267190439 241817728 253837449 274594709 483736459 860661515 883082219 683275029 709714167 606771528 911528821 511050672 771471107 174784155 335184846 922986511 967379958 474884992 628845720 944198512 949652774 840504647 999392618 807199493 982537812 804597200 986564981 111275524 212940962 15549655 228816812 837035464 882064928 228629666 757353722 410060711 596394999 723474781 865540547 168268820 363836519 56071769 256977482 457970859 642311096 535294768 694819229 696143586 712228769 598208768 808366126 654399540 926574421 400532394 440846221 38015691 674382929 175426973 910753192 395368132 440791541 732716309 849399342 310829762 768334209 951367203 967000474 552435114 888806255 621706692 873095927 765046310 895266767 980818819 982829223 700776318 711169309 56927953 397071775 983017166 999276569 922150199 984630455 662398567 854386538 716501410 958152641 457845874 912731127 89530908 592967815 380884839 469063195 108711216 775622676 205233446 631405850 842543869 951574432 681332309 848569718 962343218 980443379 559579618 571475965 383091812 950525419 441867986 546165425 835856826 885376977 759377321 821859404 720251543 839563265 201922349 585296336 615801973 940933366 247742242 308327327 749403897 798897606 595007373 659593524 868549364 870420172 330991093 866440132 915942587 975163559 939973194 943860195 52077273 666351663 815981749 914766182 622193570 912626960 879823270 992151004 83075621 858348679 751781602 862120622 168689522 625559868 251758656 905858455 152378641 540657609 129912683 133357038 324825101 463212209 584325377 662129265 720514515 751347273 976187375 998600607 651137215 995326182 989403711 996761776 802358146 809685692 673603284 830733664 846075231 989457105 495481429 808744694 840774300 890659901 581607704 954932547 405979097 532564438 444116333 837777465 120632782 271490405 768360132 918880934 133714591 329373341 730695266 816298004 330986402 618932077 635522627 999531937 954223739 974673962 24591889 664081413 700148608 842158477 290246563 618292619 238890727 446260792 945411715 989642135 475692579 978665627 504850583 692722143 417687068 701064104 872274448 920571946 315673737 675972202 877369741 952193035 204336873 608725801 166997933 204092232 348528754 669300339 193984280 374864140 409340159 506596009 70921554 754826918 215424342 245825541 461611936 700141659 694473608 829182976 568810785 768347998 786360666 792224581 564048477 745705373 537824437 989062048 977210976 977616391 97297579 121761278 618412166 738222234 706687764 990075570 889656978 896399187 399860108 723496794 609040568 777225790 375026772 599150203 886637942 921424226 941959701 952583003 550816314 718566201 523932934 997742814 425796599 640907271 336106031 738326655 565003011 780256377 514502824 674492202 731080557 952771606 52452216 307414249 933004659 965991590 831078983 981815155 785321671 935866863 264508027 736985670 214390789 294111009 788448811 873082323 687272703 758163429 946532627 988462359 861760624 925837892 615034492 903669945 958420119 966664595 387613043 568814076 141033547 959181216 785395684 863637530 11500232 439556786 899838684 978732738 212947018 537368238 213733736 643069849 957900438 996707539 981027254 986468863 910742629 982991157 621491367 969774142 522399023 524851878 565781842 897773461 773070393 782617403 437169567 702463116 174754710 996316514 387835025 851753469 173185331 489821950 248325240 280931158 432774749 779298470 93871317 319693675 993889400 994721963 746259018 849802440 129439850 581376192 749993268 811263040 983059711 992129973 703321320 718159587 11430384 478934227 785865953 943953374 629366634 920711635 745178342 802737209 948478838 980203294 944241175 946157529 99024080 296397912 133194847 344277056 525324912 670462368 229648975 380372316 194494309 362480580 417544045 418776103 242793221 576131903 481289445 617326410 899936068 910944668 857402739 877865460 767434195 879525032 717980228 799246097 821251317 901881595 971466034 993308102 581559745 946164798 823989657 852410066 106530478 540298424 317052591 710674063 660882084 802711668 463502302 815420600 933578260 955667960 716879112 968429966 166072715 762113997 979022328 997379230 30369145 734853395 335520558 998020487 743426820 901823780 208619267 318692329 795326883 998106832 159383861 876942383 600018837 775089218 320184813 852747573 701996680 856820559 138470726 372933910 77300453 674079322 724567842 851957059 609708752 887834392 723275102 810211172 475513640 813437017 653061943 874907284 486141065 941973385 681323404 936938625 454680705 683484275 836207823 876287891 953532970 967088349 60949829 264648093 80950563 920256197 553049282 757564450 185841918 510952902 229377060 581172587 597554505 870641598 692484296 883640533 568361982 708669568 344974155 640456934 928733470 933984352 364331380 399330702 238126791 758991223 916400401 930070775 669022531 880494183 765384145 920788619 98359315 283292158 499706144 642848092 94373725 856364761 628664554 950603878 121539185 739995771 204641955 856603045 728308694 974426710 746519180 795553937 686236184 883346411 188463538 722662324 286652290 319074363 118626701 680826589 486070622 669576671 730365179 921754440 196002666 889100845 36626040 634381242 829578829 847279538 655237343 807435472 14421588 372522874 625935030 842554452 340003058 463527244 94559857 826007900 545752034 950786243 771811193 790459836 42001939 532333205 681405890 915021629 439295806 649996446 647067586 822514262 782744206 995413301 121917721 746351992 684119197 778606237 267983455 324995728 383683655 664258234 255330954 873515537 956900777 981198580 826210516 887856482 449022021 788478760 95792854 900527794 787610255 882793680 156332442 876290253 844986069 962688145 90289001 216532718 451033007 781574227 622645343 817681440 13190608 686024615 505328263 924643158 890630494 895214516 128977051 200242883 20287488 837680371 438289130 701891047 964772461 988869232 774022265 811607761 237012800 605626284 31941588 513035128 678281836 808160694 664376280 977311121 198107989 996992212 926649995 944895682 473638427 824084984 22006559 270100097 915538622 970554298 370231410 648159619 173152314 678450719 741334897 885988570 290405979 433037853 877851842 935660420 14689553 247258752 96022597 864140501 741652363 772802138 815417933 998652520 289937312 859150389 237232384 347256523 750080925 902117889 114962398 746667751 158496296 474635138 317593914 574469066 343933667 401649234 335269510 592344859 146871941 603647272 143556142 263195542 915693253 982743359 883336982 913849370 660512241 840091832 643050253 951392604 381266249 777466456 310375940 662529537 418677942 590302766 673124293 943164646 42627033 998509514 269219636 958614522 197727655 370281615 14388338 707952694 914322119 947253512 390719387 447051810 816274997 986463404 838864170 933294592 896138852 985323820 955750773 972144517 531822539 652280600 570672663 741615514 253548098 759128420 938693710 946505993 170400355 475926656 363511429 651863828 703827070 759266471 80607890 199595712 5768073 781069416 654308530 738309043 66199744 397703058 850709554 953673210 305153108 933319470 941955400 943570899 422021796 641169988 732126834 827518502 95781896 293427728 706963691 789244871 362567628 822296677 356187148 544476999 80383767 365493434 34901176 508391189 868455287 906656836 928129776 990229024 121029137 694158349 432710980 810288934 192076984 282970789 775394304 880565948 580694466 738743873 338542521 930554503 750295266 790522948 220341942 754769733 170312171 890208849 869866110 886130737 389905605 695679841 843542980 850838497 210644488 339751446 779313846 872589938 470868642 851477286 952218364 981850360 3108091 962279986 463317918 949580117 854768455 888708651 982166373 982569270 141354750 222546998 209716650 240980321 4308421 769764311 39563412 209565207 930490401 958743519 891942469 968726203 783349757 842915152 572884894 976443607 799932036 986264192 848340263 956867910 896613655 897478388 430786565 539914366 886259796 903908886 906888110 998526663 293708021 740763154 665451430 773123374 33746476 626824320 895609763 992960120 100332871 403894413 867005834 977931767 553656468 822946066 939243055 972422296 499473744 710703227 971423881 979921883 339515445 637835370 723663944 733793084 174246922 235876354 854672160 988091414 411600258 964280676 318347374 777309581 281382012 420259888 35376130 837824536 480406241 925893706 515110802 720477702 198695880 692394043 461287172 855754651 996322918 997716029 172728318 856715747 745937557 966509874 216502212 815003996 447880637 633719087 980927616 994360982 783389105 983215723 770488084 957121498 297006290 616736467 420141263 905192744 592623358 924114823 788283869 793250926 733207386 946288184 595228810 696535412 754271768 777063591 235728046 857008337 663192613 779102914 223950060 806245875 749324237 871214533 398111441 864985411 517614000 604292106 891833220 940073264 533154527 998275433 824722496 999430056 879514844 990980296 762664192 963703084 459711859 953177242 771862103 910601229 573037434 685297235 210095329 669482638 335340278 391671327 241178019 930030816 825125387 914235969 842773638 848500644 49345041 747833794 685032224 763981067 728847316 968577436 238904548 538184447 109169432 800168817 187305540 858325260 138464351 463003808 517324015 950047796 236331887 966128157 759314024 991929677 394069627 962264504 633627735 659532845 907911453 947320183 301563515 996163025 75092735 415596560 894800682 976700154 456548551 881559203 515015205 839360732 469213791 725767711 326119043 807595022 474417765 641773981 353807848 412910779 149165950 440407926 280742606 844637542 210159231 723723860 404107605 429265876 284734541 838749945 156947729 318054844 722544138 803088193 488550425 595119142 57394429 130235885 687930954 840879711 639842432 717531262 839580478 966429727 292240503 913600183 303766410 589853969 868228736 968083044 419655129 515854305 542326040 976982183 616058585 961571663 110037421 954472042 946985768 959634951 520927002 706593266 157561676 596565305 406336829 609729716 661727014 957262224 40260104 483849550 459579073 826741670 260865451 588884707 862043264 871385020 774784046 979692402 804575997 972866658 154556224 901767262 256890863 739401126 583627116 962571293 616036613 900085768 484226128 920656554 209895805 511194374 466028072 959268543 295686615 762678578 900114477 928760994 702540619 749208345 840365965 859534301 447561199 648214759 527632917 572948004 25282516 446590936 910084569 969009635 470084711 484401591 901878410 984244008 605088377 755382336 40373677 914346121 779568600 996283564 663444687 666796580 605722464 805695676 324395700 572739179 102643764 267761885 222017357 566103557 135813919 667421890 861833037 917472208 903456989 930039383 554144006 661129829 449340444 838580702 796679856 951534039 545846825 771254370 704732757 955734239 397543457 475700169 706591159 845011274 702604686 718494406 45817961 332064155 742115675 894739959 939736950 971527282 892462960 980813588 303953618 431367998 120280082 379842602 642562781 783181679 653693787 687777843 547160457 575997600 9171672 253767596 149203018 253056277 428696246 933376204 16583995 385648141 826619688 983871699 132894455 400807776 780542224 974853711 847981054 964935329 171924228 357931036 982925918 995242418 854979449 891247137 623350463 758406226 677146305 928957018 241476159 467050384 240772074 650305726 456753116 457467771 111586036 401746135 182385116 570093867 346126399 499025278 760175082 799243215 978504660 998059451 616618197 673139826 16096404 51019635 72646673 992471259 139655730 911241743 635588210 706777165 106496331 938019470 80271016 355801388 521894184 782776353 359727676 640002909 533461436 588629639 406622802 589767705 100550329 488870865 956033754 963274902 590542975 916260861 783099787 877929802 288845073 891873858 346341647 835858525 871446886 934895453 447427872 564616127 64250590 763764355 302068975 698076790 2243933 816216331 353395172 712733932 20331435 492986756 554024252 581729039 778555117 959491004 347155772 361905420 26567947 748704289 692733381 809503266 139281117 526834256 827202988 851865723 87148383 360573790 986131197 990686757 651712351 677859712 708956605 814493683 616218930 987694052 327355097 983153951 998663641 998927930 112294941 491421830 401442950 409743573 374752983 972248884 159362140 977012359 939723526 946630332 8615740 999483906 922805783 960060622 838228547 898619433 542582056 919976884 483454456 895102776 121239797 819599177 895591427 929666352 250035492 377150017 785430621 987278855 818728937 884159927 192237506 236371176 952371227 958293183 246131976 933429903 928327267 933572710 846640508 986429885 898859605 944885836 86813808 506616222 301395667 901302101 392798022 968040782 978594479 995979138 240086975 324900302 490881846 731435091 545753380 983772157 595480842 768213899 779549197 988770223 383492752 607447427 734359882 992198476 987545149 992593326 615405409 829660467 849268978 920678092 497407171 798251572 851689279 880085200 620454656 693083579 561591611 694014144 35462185 132324240 118362809 246864165 872723372 983767119 109469126 925052654 39567389 827955021 605408448 798231986 239364954 981000545 188257828 426485049 664171978 928223763 24415716 665540806 129284266 583453330 652622198 961105320 385430749 691171916 596270625 794627235 97160021 142924373 728533821 915676634 138668637 953742794 819390037 865475971 294474433 728012199 861135868 933725011 554848979 945820782 305977749 763010356 700478290 781824027 165787478 774474099 720579117 866350902 414450375 723377315 903057348 904881728 919262868 996021717 951423087 973497625 960826341 986273408 857392539 898264772 124374588 202779969 230417564 989303752 588807164 855959521 585455511 785026211 544925137 736907643 501120793 525742213 455324600 695006760 409013750 471854291 732779171 844644298 586693809 868121454 112554183 461121009 729614182 967606509 773211369 850828254 850775772 991035096 443836485 519353655 780148580 981087645 906694132 976641708 617730711 750030729 641089175 878963020 239015571 615090051 29002062 593861616 979581414 982551573 222662495 257980281 492748651 635163150 555175598 589285045 761039724 950714665 673988211 683249554 838379721 946560596 325603986 952109849 263867575 888634893 134645899 226568657 239460500 353291584 408212341 827081088 224374607 292294402 205043395 806320667 136646474 925385779 739455759 782090458 7392712 716479486 750636475 970446186 365690279 437918816 100266884 526578895 635178773 825958221 308132688 608450222 903992116 907667972 176439308 217867143 113012041 901786483 63115388 661972328 606025941 886132676 754585826 839326048 500881147 745396547 900934178 968908570 256958203 699963896 119966651 414110916 627669460 861769322 904678069 948615893 199731716 502124900 246758098 697306751 306322988 534851895 674609997 975020264 375190309 577130788 860638738 926905465 36964453 928037669 265555774 646771402 311696078 390174893 631638892 889828294 384533659 706922384 397555236 424488710 753189252 775371390 181317173 761467839 734173650 924714552 662069348 904303702 950039056 964540274 505929102 862055749 453231727 560671386 888744470 891732488 840811613 954841165 826059094 832406602 616636466 894724119 707272115 980254223 42253843 908218813 976034451 991114406 821052431 972637534 874841035 907926737 426607993 872455814 978968009 985096543 432637223 435777697 110653651 470334379 911810565 915630085 851335755 890163831 681443556 964539960 826240363 959324436 612249388 714251105 71783479 586659796 99518153 770602749 448588248 478545117 56834651 648824237 198248755 425972332 96862584 330464704 60025350 626269594 947771100 974027019 879654142 907420381 721061159 953788328 697137620 850482730 325436790 332795195 373575786 430519098 1527544 193078143 517796048 827502613 538405016 617525187 22662024 381939941 685254657 732037799 461793387 584711903 977074395 982981558 223695082 608497126 23790749 524775023 820648402 917408449 694670797 920298263 167497517 826939399 996430794 998667183 803379565 920615007 648061701 668448122 187783307 843108689 533466131 844013895 708762939 815505079 432945505 577011003 795782070 831958668 583229028 789603976 722606572 726475572 929141933 998614017 224215654 411311107 382286570 687200788 323522913 753800390 668392671 855103363 817717107 943541343 396877466 855275503 892710077 977680358 758155850 822372615 107964722 277504144 315585708 759971272 247362925 777764216 127089143 137900249 458774609 886282655 867516341 917985606 828039581 958338013 928720544 931154466 301900828 429401885 257084614 726578029 454898452 958175390 775068422 886899551 15117428 583348483 990090748 994261221 597505381 979759089 348653854 935704489 297258557 428535223 260632549 543273525 835529349 934834298 279993377 952291757 385521713 776578708 7242981 885800547 50033142 995732235 718673233 990482360 578639624 898816898 274746828 783967041 299228640 482003818 360103757 766105935 3596392 930601064 592907457 899117551 132397641 700856165 596608095 714231885 982216743 991006259 757663562 940117876 654495510 813994945 420505926 926008804 229043853 633939624 216265858 805086248 455246853 962668882 293466050 872354343 612831848 925110613 943746591 968474996 122600010 370845548 456112966 962994228 571843949 683290591 698954193 800344325 565410220 583249923 519539509 615193932 820413261 939403965 657618606 730160313 830172230 893365314 822433323 857041289 913253010 990091464 847218522 849201301 789876765 904165760 556430270 933022937 391580003 715116588 842999011 851213128 957482931 997343878 234098380 413168036 258328462 727173028 840031439 967208504 966396193 976427651 238050369 636626316 665554250 767088815 697896268 734271585 101930371 637084631 116229189 863767449 727392697 822309987 277482643 664162768 233451110 614100318 940198532 997228227 898144424 960006328 491396952 625727960 909845938 936357660 77824013 231289075 899967851 969258547 191100723 802672087 500427153 850073409 526162156 878817940 110071855 596852514 76973321 543400162 767425960 905923014 521395074 984461043 949396946 952841558 703045482 711225010 33491975 553007473 646530077 699503487 4132200 133385425 112805305 766785919 833597679 869238945 121625900 894109886 135407834 708949022 950050472 981974375 490999454 794686089 843273064 883388683 968593079 971289018 503306595 740662677 625409693 816529581 85785939 283188409 881820724 960372312 990741115 992710896 44598025 723560123 383428898 806091327 210015829 521517278 983169266 990286606 732266795 858981766 156267832 438908344 266998100 848226197 849960638 947790660 807605909 916883361 304398389 836078980 210966110 437996540 675497212 957161005 268590414 935942224 634571067 696674753 422479265 731510927 990631242 999069365 209503506 259896573 144955133 259084354 208872993 516476439 939698365 971528778 657287896 741772262 118559267 342843842 179077074 277736384 810173830 836499702 374530395 989582942 227494100 343555156 269820036 453352202 587757476 601155489 939811861 981800181 451754422 559030662 260398932 840522169 88003559 721141667 581697583 896185279 962978743 967690507 222646050 363441781 24638766 994371616 385618225 982922800 751918834 816532948 612347996 875034574 371625097 853791041 610855521 924944560 344573398 586680163 565983172 992424842 237669652 475113023 8249320 36620252 348340682 776011279 773893688 975186510 104966890 293757850 909702732 982049441 599188445 701440784 957031711 963900683 519768070 568376438 161675430 937397206 595222485 859285530 172623370 843123101 806518466 847058831 173897906 448074666 890970328 916532847 522252632 697519375 177308071 720106300 30504216 728389744 22503853 88128678 405560938 896755644 115216141 270753705 372284943 898556676 289193353 519048067 41487577 100045595 138374335 206599954 46138143 115822624 375122222 751279719 688121406 718040809 269806017 314927680 872020817 915737187 478812486 668976598 520916673 961643944 236672789 668896657 347050731 516577246 505150088 523382424 893632391 921957324 536281592 598526626 894680595 907399016 15942499 875398430 727939604 936528889 9974696 279724683 646012737 763087590 43847431 736792040 402489258 437187585 219658125 285781581 285260727 376876772 599036855 725171262 846875798 963491973 50036927 556788219 946994853 959186171 737198318 778427970 93768382 964815495 438496660 755519821 265297789 726310678 143269975 520395940 698981968 786443097 582611080 677291930 357838759 417136623 535976348 785562199 955183052 967130004 690245817 799505865 896211758 948071253 60735471 704717140 387122109 446506488 974643709 995896504 295308598 912739905 804753483 846881707 626418291 678197287 559932568 945104333 33860092 318304300 779400331 985171409 367728796 542028582 79983154 417074905 668844856 886915796 375227846 679441498 124562163 291621250 403708347 487087459 892703376 995200780 221990856 348571677 448088903 857393667 23755825 831179246 142166605 879299980 807522540 841087866 879383983 949581632 427451714 802121414 395896895 777591601 375038506 940804427 271473096 658521745 544635163 891783702 120778492 558971706 933631935 950220078 26409599 934339648 935763945 994411557 854874842 943611328 234318030 577826339 831606691 842595622 27344183 586374213 369907356 387012936 450035837 790767198 350502763 785045145 273339443 960447485 726672660 950082083 205370068 514570520 696852939 722277534 902735862 921771364 172927781 185114149 667009655 710682930 541717918 901341039 673051754 895029585 394395981 588686458 989157548 998829729 471719350 525502837 272021295 783491413 332022268 343236885 767119873 967136852 386581791 449866377 107874059 232821666 43297478 278543670 735230241 746576509 920771691 945771329 245903421 383212961 887904012 978032369 961524472 965849369 420136563 892592258 454232511 526252142 299133612 806013513 848157435 957308188 336311404 654649307 408512735 740000752 81723136 699401074 966310865 995938971 452002017 620864457 687806706 832567499 142109850 633002891 880543472 902444981 737794908 835567152 326999128 928504158 919401832 948950278 486640928 538376148 142215063 532917765 241571012 325356189 460478722 780612450 625085289 822925530 354603788 511078068 707388821 726773268 69797792 926596412 769889486 899554335 420615322 806847444 890929950 940856129 236369722 243269603 631014666 889453506 562711043 961733845 897221138 996148368 726966591 795836720 138338950 659825713 986030426 993281523 637560433 784176690 404222088 685672237 324441798 747011425 814240633 896526405 424216013 761871922 983226502 989839682 800936213 898023028 880024585 918938249 949169721 971020603 949170379 955817575 639721619 859703533 773400690 854670343 702887709 758165786 357836308 524804125 497017282 885849001 687964644 725501607 213369705 242295528 205662966 992646682 654658323 889099045 157870735 955013891 623269942 665185738 675311002 983459403 16026579 324291718 393707917 643453745 218666120 264862896 688806641 752712586 541785350 634521124 463882992 744185059 51620160 59055843 917344957 925146474 770672965 809716102 168397504 707026189 399408013 566153734 528142103 591801575 980211772 982586727 795274486 922573348 399310910 806152890 681039748 854064352 80732412 498218350 509009688 602809904 691032504 713754219 640862104 911835014 232122071 903139216 780904409 948279509 392561074 507291063 763785757 817570226 562700843 685674574 712142402 940823170 352216477 771083597 675344128 796700839 74579178 568602606 506923220 541201787 864420338 923984800 568983349 666278118 257536107 292631972 384466403 757620981 842699063 985409918 547765802 816676780 303244759 606084415 534689848 687441151 33512309 963761691 25598444 333976599 595709956 909089284 708007868 914504864 503741692 805931516 114655823 842979136 262909285 813712729 936082390 958107401 958778610 989743371 273302727 494950026 245182742 374337417 996098114 998156177 549198540 955864445 473353182 702586903 380461516 916026701 26539985 444749226 405532390 972650496 199410989 870035634 258337702 466258843 367444575 455150305 665060047 878043534 442906070 756754303 479712428 988330005 414348704 558477677 192800915 439330635 5631499 342386845 44037376 498588079 493677909 822460062 629348755 646950743 227948648 963785905 840866127 933381348 308840361 473257102 140093755 281211612 342727384 391879760 596035534 797590889 227515519 664293496 188587112 819009683 764254057 964919068 531540790 909460568 863522064 946084627 275412699 418627151 968352217 984142279 897920197 916911109 606904012 903802531 848458917 868722588 405205104 982223128 473306656 846968817 95642134 864783504 158064707 353327445 61208142 450180955 181819964 573652820 321246788 504010592 194763414 802663459 862287469 895079372 807478470 884841106 723262030 984496077 106561934 502796897 99313622 501795097 32933552 686339256 174702688 330023326 636710584 945231070 683004356 766774808 465509053 999033701 290301074 486561780 86088317 541638480 78024099 445156434 281427973 599614820 452497091 960652521 619089448 742391775 532523998 727503514 428548424 991965946 635354750 774681105 961769416 993646294 969610536 994262694 826210279 983512922 927296489 938590660 510632669 990923290 8714662 697197691 836382461 980340841 154745802 211394391 88044738 919686650 322997734 391559692 917237614 971858780 440721809 901229495 301044440 556340660 94087982 717470042 877515804 939398127 99057265 767916066 772870990 838673127 388272111 478732328 557223029 719633479 143757288 829840441 837055850 899239733 402503761 448609175 989271966 996177676 145920823 579250422 526731060 879676714 279036102 694561175 115804111 558021454 159186313 298211555 814854372 866897769 938575735 981011469 921094916 985568112 454173734 884319738 769655963 918257849 181383241 826133760 241395611 582607122 858621765 956135814 463004401 803972169 867286918 991311613 835409394 957863145 955291817 992036462 101698684 239727513 669586053 987250272 29889918 250380388 342122090 449930521 371710200 375336211 469150483 714546220 858680583 880372080 168244773 910892398 326190101 882258340 377431669 870565990 210531727 456474579 186646367 245112355 518120813 533748581 946414137 956789675 151714449 387238544 822132646 984685175 609830102 721550829 878633081 884097988 993636754 994414489 851851403 998401301 540220739 815119747 462253892 550493039 125488021 468940263 885841571 956414427 367638310 483642933 757353649 904574676 472267038 968728221 21717966 202026442 316262114 778090895 935799294 980773006 545892445 766425586 269367535 302662601 267343599 404191461 285174610 504965547 255347644 743384680 370455993 411887025 207846416 375769409 434273266 847636186 499439822 848391957 296353096 638353704 337679377 370601035 833209578 924475664 305371163 576299254 215140950 251646203 913902313 935502712 955603923 966866020 480359456 903618003 661406176 812920198 464928419 766886914 187253492 959330537 241790948 600996712 992877858 992966698 726903965 841942799 948894899 970507648 98869283 113686133 867455640 998172504 615795095 910200609 276292639 349742019 81134015 292788926 853443422 970760094 477878874 602677766 801270203 833799752 133977699 427193188 313416976 540723941 567884408 754958436 76760633 789445327 724356050 952933717 4114898 308483424 576904131 799167301 895983651 969553007 314029633 643659183 555410725 794854166 538205920 577065266 285996405 538486314 997748657 998462415 329052602 841974613 688953148 726070661 709843115 808393685 487012599 595706452 746882631 944677366 373388091 766176900 37409429 705363026 398390879 565974085 170975059 196315104 488348793 891293886 857430974 916503751 930999246 958849278 463960373 672565328 540035175 984528472 191235734 407983904 952751162 967968855 343246627 988729755 317699917 640896313 519072361 603013017 763172514 820187034 351059856 948074728 771578120 910392786 783143352 952863089 897812303 903321107 890772485 914217474 543341086 646761932 689746719 950252662 234800071 935243745 619517684 816251085 749615329 928260423 294616175 471529191 158095722 484501672 630232776 832559446 497706246 923776215 877665583 982922734 41151383 770177409 58772142 119737204 790472055 850066592 929961383 938745035 771665573 925565712 431669547 733410317 553230570 965700371 897865389 979694784 423585916 531691573 176280152 233089983 786422261 883142525 704640330 803144855 668497523 889088145 98607743 503571315 549666841 910795816 693397098 903796939 553057649 656091933 568860944 915470315 946612511 959053967 480486808 998364771 783318082 993496002 612777644 868523218 280290043 341968627 889523042 934351969 138070155 926419581 733110236 882114286 627358797 674034865 744010058 881013340 71787138 864341167 887153227 938120418 684865898 736470454 961119668 995249685 52129223 180887240 960138665 978630209 879102237 942233170 496129611 865281144 57562428 955854184 974067459 999718474 862702567 878633869 376642833 405210368 162985801 527038827 836578108 889526375 539130165 693771050 935212133 992011058 147948727 370967657 609725481 687681186 459214860 959271073 163379866 185695918 181942416 241251064 492635234 748648281 167934385 277556436 492860630 636621031 584055246 793133306 517441168 958857954 589744633 733807359 280148506 348381569 310668065 984961646 997239511 999366099 817445073 990845863 907574176 992623242 523613163 722123098 977054553 988247813 356548021 666654373 760392336 802179730 826696433 939265817 793057567 857207927 271540429 930342528 75905253 844392171 126213097 698276902 851948631 966686324 274077823 969621151 100259602 578238354 312549231 892116507 945329099 989381890 654166699 880964294 312960135 990668663 43036546 379497173 739075914 888222047 479112502 857340629 853906824 918878145 519002483 598081592 200685286 252747702 901710862 952068106 616485567 933014441 757262037 865629109 962196981 962752157 879778567 897854730 215073767 774249215 96294099 232511726 136222027 465233286 475858061 705195605 816155711 869087107 391021897 865413517 786859685 913284160 750713925 844525549 625254144 968362725 267392996 295069351 559436740 649780856 121698435 830688930 216001732 514253329 858925873 943859386 660842810 738361378 989798762 993473376 167924585 661744920 495899224 584482746 28443644 506833256 516748159 687145929 172472191 927235675 682170098 928942217 794195637 916676794 177543745 531208911 894757629 976661163 289836317 602181702 768467091 937543532 394094778 816887525 92048166 220960072 537233098 553144679 385404211 824900707 93136372 879461364 977006946 994276529 101772986 178279599 539293070 600916881 843422180 946738995 76324731 209784860 490432046 729294530 322739734 426605908 14141286 31827465 545958553 777222197 684248193 700344146 668859769 783311456 875142811 895303618 879191021 914683447 261428876 976115445 819269446 915942960 821217658 839905600 508871392 544022037 197262946 990122502 12135082 682498534 999928393 999989655 810981276 865251155 577888732 770636222 415210304 529965998 405314188 665740255 497409018 850821196 473711316 486131627 442947269 536228379 655528277 877118334 148731782 568462082 803936970 863813312 703044118 782499918 311649888 642623861 324531957 438835993 362969537 704812450 472003858 646108854 951622684 999538964 997717073 999819572 697055219 888394484 326771776 608927264 281254691 799929732 844087226 861948080 769667204 889599314 336836743 660032759 704540731 933939776 43443042 337134346 391571951 493620236 410949855 885668791 773684465 846878146 113549665 719837688 201433028 213397496 239180360 882799139 389138541 636737350 960067439 965436624 873942716 937609964 781929210 908715815 531061633 783053239 689213121 780576625 998726139 999444645 680013734 798627861 776376258 875783807 108792073 641333478 133559766 345250146 367551063 393347812 154801510 625438202 439358252 801554503 249011132 731048789 777531311 979700452 565187593 690474557 158025508 549027932 411363440 733839159 149208909 237475384 671059685 720165916 93974524 282586208 587587055 673435528 204874810 394499913 185385427 966668770 269390436 859667505 715795235 864689313 94172294 705225210 573007037 882732330 155869919 932541884 950531392 987724464 549114606 811043377 634725788 786053496 239625546 805454684 764579680 954575519 64511566 824211238 565369509 649338858 230256615 752441041 228723420 483776969 335485947 577545937 847123126 866298342 513879726 690578058 144863577 210712116 565527491 785183008 820034143 986108054 256933106 282077034 515161161 728008837 565202595 982830665 804725574 952090019 739517088 973555925 574621603 977508552 373583428 895372242 931462494 952896489 841407982 946915634 618602327 983440030 199663436 334230626 852768875 934610770 702492618 732744466 135274364 728975122 215168208 984510502 393273222 699343742 95001964 725552790 851302013 955350539 718722884 987422396 773507394 873342064 463258042 712438107 717535743 813745567 745125424 856108799 318940907 673427314 928648693 931753089 123646981 215474722 63620560 796473854 226378247 863915810 331591769 848824073 921027324 958288438 185005273 916755011 1645573 430275605 506813544 575854257 839315804 988985418 353712607 953403503 15129300 268500686 765608743 926894206 136369459 629115758 710410320 746438024 191443373 208242747 796677280 964443004 720877833 966765332 557095696 690775990 775778879 933988839 952602433 964204629 220671027 732972997 467139218 520026438 452341190 859745554 48902813 247181442 431220158 745019018 46678004 533204455 573237221 962671098 687561841 869989265 488778726 947509932 131986044 472734417 998393787 998577444 759543245 868833765 934488433 952244020 660525243 715373334 712619597 978638026 433755346 839910618 894614755 950979225 139484568 955546766 847287305 990436015 26305600 368640497 500329947 506341447 640397183 653780287 881652847 967189627 331590544 385632795 444579320 468690313 756972885 971484040 740368493 923691989 764588041 799537861 612267720 696294906 722029730 770890632 954860560 956341805 201983465 325048137 383106610 470579980 534353822 875891436 718236258 829320845 38809332 781342983 956354529 995884970 861571637 988583153 129777498 316657441 203724449 585673944 894387965 939460260 293163562 366495282 439379802 913390628 182009864 715143860 473745330 688343825 817568951 958331290 615261670 934029002 73878689 850994649 130812142 712164446 51202777 923160986 564694968 664885218 715787657 814938776 81981536 237654673 851327772 994671568 995052833 995476117 707615071 711775441 115482435 521543515 448514143 958907437 761660828 972898261 229854480 522695615 33610378 68634136 981341487 999738154 58580549 854959585 489170085 788399665 963712666 982795041 30804616 306377327 432354675 580962894 876682987 883313648 187863197 426092624 751551914 904465701 258465967 702753720 383809316 861140034 538783285 721926571 934203336 993130402 475971467 675877492 118136221 870535505 750546145 801940224 403731645 604576830 918026503 970132126 258544663 867372102 521494770 751579737 707494309 848619856 228285010 619086492 478551897 898843967 293428785 682421047 545290878 551319964 679699157 762081671 708459089 784293757 27947505 785289774 624082668 708874170 602288235 909162580 463952166 765223936 773192945 965432536 75319046 689226580 712881135 892892744 108391611 263531582 467746886 718169912 256670560 713113148 939008095 939183018 530608554 719799895 661551322 832554743 403225047 437058256 880167827 907463449 132305605 314580818 130496594 409387676 590108062 815120759 904558724 925130849 882765265 938889503 763321067 781651721 91810150 880827635 43023050 150268591 899754327 901564990 850730857 931720415 389182568 583698614 129647485 893610471 752544826 918937465 997743608 999562248 940100786 978465795 942967454 975722405 833264296 871170544 425553358 490137877 325916239 788295086 165799013 790145198 50581836 850141794 954677400 959863969 779921716 877882328 834164091 978821846 81187460 578965824 849074510 938388524 14116664 635493141 864751485 915810773 582338190 591557595 923692002 949253778 698513141 959820607 712452473 979000602 631809038 649812878 706927335 957997672 72707679 213399265 527455258 890879515 252108489 936131468 74610464 732294452 346772763 739454962 301339326 423585454 996168501 998252173 161856320 206269446 52565322 627459311 132550049 239588081 742851145 771324375 606055257 643163122 157843587 201223169 796083046 956653643 679224873 922049941 999624271 999660317 769971657 995931421 922885556 954088012 23950884 268505213 833980832 855985850 895062031 976742418 157708302 823011914 447380038 559186270 319785385 822936887 621631888 726309065 70465539 405841477 817596077 888408334 834834769 964293457 630378900 962871623 405781357 891081616 354163290 973513236 743745676 845986386 10322099 104600339 853217800 952240438 355960744 894649022 206076987 803136100 144065393 442369531 551146507 909931762 357994537 609067879 901321898 952804653 572197937 784303859 568478320 945486100 273243298 427449483 793846660 983246917 882059800 920276673 545646212 991550099 897739379 996298519 162742835 216406748 707834126 849565285 728036765 766215833 557457373 981735632 910699069 924114868 822247122 875323999 743908014 954545027 611077281 850237865 752425475 962675330 869411573 971287600 948211508 959559187 386723116 786593282 706255535 934718026 630509549 938616164 120462125 385425113 154192379 375821619 784466902 848985687 7310881 284942164 800202349 941622852 653529954 962154220 57316914 360773780 575901607 648934134 883035017 957299344 867238905 921263078 593822784 627487903 990107588 994635608 292917750 595991842 363665658 974273714 369161352 578130737 653616195 661534080 67015490 244539445 655037321 706369478 722164691 743473510 406056122 862249436 803709249 946364676 575221585 586590652 574454662 809215080 444017151 457379468 700874067 767839631 760404726 909372942 814720542 887994338 94946393 746218600 309116492 645338191 380273497 755916000 349293701 500470034 19213147 820544537 660092134 958911391 145867431 684457896 117333350 700332117 943742597 992421880 561053599 770697664 656732969 902361367 114388578 149963578 218484420 296843422 268420502 628938771 100421494 568225161 607004260 699582603 858216019 908662814 435367362 718512943 967696174 998081587 798734837 994938751 656847139 724972238 4012206 863462242 370525843 961030518 863980900 982781679 93385765 959326417 779476773 863494655 804305043 856441361 684178204 707884251 776808249 870438647 273972142 767544940 170268038 691745019 422617336 483909927 560197367 834511741 352422191 925399369 82964517 994281299 586424299 825599864 646426913 739002679 391144711 419330176 332197210 950038651 123100857 708954202 216644547 310081022 890074732 966196524 161912016 573686103 212348954 826215167 826615630 913323124 83257508 711731153 44752629 827317159 249478264 273694191 6733801 494663769 286145522 858146355 123850808 422811734 617249465 653168164 433389407 523460494 728102561 806848849 789396844 910462566 905358155 963571495 846042821 861339440 371235935 615474821 290998706 976785710 571067202 651298912 848353931 905949073 658963516 871188322 171384092 733256863 774143524 804267740 673933754 911156815 348782995 637520152 910443210 916989133 108878560 483494793 232916417 828907090 687581526 768695219 492291973 522851587 779643562 867656390 934204022 977932878 906158591 983836016 878966830 973756181 396717296 715718349 123271463 277598286 412635254 530637301 209235618 867211665 863715942 944483621 778550784 949070138 365549042 432077474 713090185 832712406 96714637 973756220 958724886 988603900 554388637 657733867 571436667 877333291 377038268 636365899 936484769 973734423 586773878 907242832 566803049 840228274 206941094 685541138 303400708 356053768 128456449 518925142 608201976 981645351 569967207 677775458 316861398 459648691 36786669 156079795 991779548 998384182 346817097 458355889 194520019 932117628 153219165 614127523 997663984 999846600 505144828 791154900 134410305 982490736 995944062 998804381 262551397 624270430 600570225 782719176 866873440 947426391 395465692 850349183 789714476 860245883 639472428 820952345 598116545 988787598 459763323 827744004 675107095 795146851 438403493 710739282 423024514 470129287 753839922 879525918 715470756 890664096 240975151 681348813 594060472 641721065 846874590 983019846 964933788 969987597 212907074 481006731 132409181 355424811 375642366 494772430 911723030 964282895 628742623 756053848 152014682 289693897 78992972 699011539 780210927 805389797 162193057 373243287 722026844 782636391 627370270 832193626 920910003 937355020 491500070 947603064 774332789 971160222 486759702 997494225 343765530 986388158 114971456 276740209 830649028 844411300 671415815 686144448 842740854 955090512 540899021 866974178 726303561 877122274 643093379 779058968 32190870 404079966 765095289 993667215 860195399 892418314 204201758 930390036 882362689 990427429 480198250 725323106 920643742 939805699 491504303 682010990 90707704 257196079 822150513 886147907 564671760 616505880 425500043 471765255 80351334 175101674 383533092 439673152 27405744 433260796 994318402 997082822 403825735 909271642 915504719 941263685 909844801 917888001 301404839 912168800 233110594 981077996 800809855 899740715 375378190 487872778 772052598 938241900 276712266 807944455 368335264 906537528 827666739 885752887 591347435 954616617 791755615 853206232 156747376 525390334 908521621 937139906 208016982 957785404 190144767 747452963 89611556 402736498 630484913 918929264 437343724 924924735 57798116 714042520 455140923 649317481 132403498 469592690 816048217 943008787 593009604 761464094 143171024 533102437 230373940 776205673 481144207 818636815 120625059 925788056 222675403 590605577 406633709 442078590 936631374 982362663 74644699 371984054 596845338 653885438 305243541 763241301 66291389 212680859 765361146 914675282 465663341 729589213 821418470 890988377 601797019 825161488 759799215 783344405 237457577 256348433 167771779 547847100 470193919 897764836 791806894 973406481 216033861 818188514 566050163 907250949 958949628 983604753 720351691 891213734 383585905 406801939 450496502 830129253 20589118 261824147 842577575 855978065 763368852 776081491 267945491 650842048 789285615 839887119 692433157 734107646 591437106 862258303 388832243 743533523 771233992 789059619 285028692 410078623 829472090 855951304 577905591 988653044 609423123 763399066 173426035 723870252 774115751 946269560 857889470 899897805 739937969 766131560 144175096 884632545 26578319 295735509 703845442 969579037 47240880 289015562 807237429 852979724 534819469 905173338 614959790 988190409 615804427 844147405 630670719 832371710 143414983 633782516 10435828 467785550 619239313 733502508 864099262 901220872 886306242 924214152 239244626 643603348 995360146 997600855 62169469 185096933 662807927 866181783 98854453 179891354 826626153 904463493 25319850 206850373 39403985 164531180 223762099 895814432 712229994 977033912 522770522 760087695 596619303 877301800 457716362 586531316 545008405 833860857 23632539 986740873 947210981 955287362 431503554 991964193 128878869 441304103 40705703 415798842 683308038 720118264 582158956 796885077 160913534 554614927 588544192 762551607 349477929 686078086 477414449 931153197 420533731 537330424 93807674 624607327 492186268 846873151 498725559 871536090 850937526 992044354 374562283 591246638 586740159 652888921 324768576 420833149 513826039 718996685 615271013 805856776 546481617 773614611 714549621 808359636 597280594 887219528 452493658 538835470 750786607 801102520 22965789 497524869 977537292 982001102 663124351 881368674 663076369 683698167 287989930 612181150 912362819 953785936 496961792 635772641 262838767 911574533 514789926 762748317 996166203 998731993 770952465 936299990 733614573 823721213 25128827 483340681 145945233 373865643 133137560 453361524 640598702 657938363 959070508 975541674 710681463 713658563 983020039 992219387 16822181 881561329 430198134 990677228 968092264 973346756 262470982 478625727 324107423 984779170 520864480 922051714 679756024 977086453 470779784 854397366 360837645 625681106 544979809 734427108 85250490 489901171 489779013 930693937 5671764 496851010 55899031 527231534 184656427 633905001 227044453 777252243 810581232 921559543 330409827 358639097 440836732 491019515 71235792 736855348 263539852 313805058 394363492 426526949 581134842 973756096 210006699 548964934 38770901 843221607 127055903 442594827 715742163 922109058 411656877 481411817 478663891 544510537 391970701 698324471 391894063 911164956 167512123 258763564 92586779 484134430 9047310 871023774 150482982 630569865 396519980 935912897 888187461 920702004 520229864 785016906 46459083 780573166 21270388 152639458 589809852 802162744 178403682 778037476 86717252 620666303 66233726 91808376 789905024 800397277 246636138 768769800 150951606 235397945 125452640 770283094 380967048 707480044 516214087 804585364 782444491 956990768 593661540 758664084 592364364 736481957 536267126 625290078 883974493 963891592 130845717 376548898 292392046 799838838 142584601 909996642 158907465 186005757 270525819 398648028 403326224 488690379 750588953 948783062 811876829 896219471 396579909 827058425 880281433 990365039 731258114 833634803 221681148 418002524 436392710 784678015 116191773 243404505 121538252 945472141 506213039 964692616 546283383 793899091 748754981 952713189 914489122 989219678 996097054 998882073 380777126 886741438 468587767 626518047 550040257 942742407 355000598 739199583 165876685 296132781 503390810 533292296 939914958 954661218 494353454 855901742 778944944 793766989 829125800 918799637 847687068 875432670 252585007 804271280 709954560 808211997 671784350 833684948 150937993 957412371 794931838 973372364 994495387 999598596 970911103 984190973 355810834 411803411 525925009 820048582 300179600 857253228 963784265 970007514 623560196 848687691 127161243 500052980 441004571 537378963 993134362 996635519 966983424 971260649 513154830 740277395 205229347 906257764 725166968 935348383 685765988 753811719 704057260 711389078 162789405 169381499 919930316 936243590 632321746 863806776 455333124 801740685 963343587 983475045 356605366 953570327 203018802 420507506 771300491 974958997 716268572 937230964 668508732 724565395 988678527 993912105 595919137 918226430 892208146 993996591 25685118 898718850 468440135 751544662 306022433 350298194 151183123 209837835 467105703 842380604 274638883 834705993 465318143 469486609 157104577 512248145 317535551 761063554 890393717 977092155 722501318 781409875 191690335 913394763 509926033 627303397 879123954 941179102 948340706 951209636 731368184 792705604 942225142 951563306 429393264 533358849 30005974 112704906 956396317 997620468 915048025 942594879 764599076 896536197 136244770 981641412 51899489 459859037 580085341 959846591 668815468 807981028 117277598 187805615 773858442 925623783 446705472 892472550 464437086 710870495 862177407 891751993 761453905 793284931 97306589 286926242 822571808 928231097 613392558 709919966 96972241 701363562 179688904 431454660 206544267 534846870 496407539 646101066 636275183 666139336 95427078 173941242 630960267 772589399 153024330 796925355 651520433 659357112 637849368 809374220 440696266 800668382 209955121 428028326 170785914 753554584 81522726 143339141 822997266 899400278 59650994 818594653 4649091 345415213 440468233 470979638 691602495 790825342 970442760 984146522 476390224 909332119 842401927 880237192 591027593 780383834 679650457 865110069 424720853 854448069 775567767 820484777 330298992 418934569 787230636 950399677 678266599 770258524 751186082 880477694 722763980 863454012 893676347 956739942 584337110 649500706 457668139 876294485 444652681 545279813 882886708 904416020 765420428 982344881 356333380 935801204 754140393 789400595 124554792 608285357 432538364 603190184 839491498 955334623 67152088 791876418 695824720 863382741 768073894 882328184 364608490 837356827 453026042 875360829 702356532 885056599 811032564 964908127 532690249 796778231 656938248 806726854 160905653 895571812 808187291 852851195 36650110 993374160 582063511 621166853 72028491 504449477 495343682 745545821 474294463 976087724 763478503 948617783 632928160 912983670 787138557 800986343 759997728 940612038 340467440 806999031 797539061 814526257 790425402 816150392 446780918 586362850 110447315 249961953 878888320 992966293 602611610 845458028 397000081 964238613 491673449 934057159 534840314 627565031 862439476 991948562 575385066 646415553 263403665 714286812 9827464 258144070 565033954 758740603 149752191 411527089 953014910 976730869 43512200 616268630 30904110 300558973 426464369 615584264 129211521 550102520 737720831 943644739 256044865 848496928 567375288 788727848 84503129 366792198 877815419 958441290 285760026 937730986 18234831 954345871 706338216 855303271 858645356 864051139 804482055 980856616 126389824 663105675 589677197 605535064 806054815 998568780 9735935 75725287 448067654 694561575 200725692 964532687 683991261 764787844 141501521 517708884 690857352 801959287 581914778 912178346 808159533 828381794 181787146 977620557 714417657 868585698 632669194 855754484 280850371 599103394 146348115 894034387 313968818 699004440 488926422 654880995 896929588 899635084 852526404 913709917 475074273 798000260 683759062 890062347 700532280 748647930 194710871 391861573 447033430 751426299 71375843 577798570 460725785 847380968 151500468 364792113 892481285 964114520 828557781 893545222 137820573 386592306 585404037 631370892 255594163 730167635 415260228 954296305 525732120 574177998 604056934 953277205 249793266 571328683 40834176 701853918 593312152 992838378 299254103 809384327 912031989 935524224 836317855 852740886 151326079 542307454 187433762 740667423 619679316 899102779 190678293 669971565 6714788 917479658 702322053 788972028 172132790 354232752 886201199 945309093 367722211 832711251 354009540 694056811 585965840 849083678 158128912 971777595 934172730 995608144 606098418 996315625 155315144 718160746 471346896 813833223 716822891 770343404 858084346 967214513 658151880 915445871 377737286 747906738 478088240 973934826 878670554 988629902 860667666 986221050 717431678 977372018 184606453 975404442 463472115 733736895 719386504 997081977 391604875 925479684 771209056 835854720 940909220 969857126 872804628 991070288 99926493 519635190 281752751 856381968 385541279 438511083 321703743 600151425 328545068 370751384 831883938 972753073 910632256 963094737 885636150 986935056 621823601 721147351 60204105 766862917 656775923 735346819 856823436 965195232 856138198 884823552 914730100 983377871 983977431 997636429 703488742 913024925 291922827 349241314 737789722 964327604 306235407 672543951 946326918 956382696 908721978 984126130 505693263 944315237 606551885 837061583 529478246 794740601 577969894 780419240 157494756 345123139 342379432 482426044 666774502 742129094 547208011 938508698 406653631 476331945 814977052 961668668 413513493 547472215 526713541 551639527 896067951 983922709 668354966 855681002 454598273 944310280 127710516 809808732 927374855 977414204 79785893 468553706 163586464 317499247 854201970 931506828 111422729 374961141 896667141 962848749 51847177 620018436 855351473 972784261 289122644 501819360 608364051 997635020 263096029 733980500 601017299 930157734 987831759 998088662 296636188 610618901 501430181 781723614 23963096 937728345 350130460 869624934 619091197 643802666 392640859 705540073 32581105 812693501 220475182 734811696 519882344 978088690 383744874 494012920 316484038 713594721 823654903 890451561 203413875 905346349 615725485 828258308 618156562 994042116 818704519 885327339 218882411 564969474 837731531 998729368 83460444 870310885 421044534 619245961 570410736 793626606 9461639 356334363 980427459 981022840 679689997 777054027 694838139 812660626 743174683 892705946 945978455 991395278 587429537 747597193 316045313 608163274 955759103 969092746 602628721 799027602 25766210 783411283 80790657 719714314 463263728 665741872 382012930 567828534 11889354 67412427 758236425 810892583 804236023 954702318 69099825 141156561 615248039 936099433 784867277 859963271 354570883 709316912 213259165 523065166 422537471 772669589 519285325 723998750 179850115 926566158 129040479 343615373 143694612 460037835 721486859 826250560 754702827 758546086 810973395 965583747 480184398 648199002 154951590 592636724 322940687 641681651 793510777 884196348 180932859 285574655 446917273 966497149 271414362 511230937 200075390 597489235 965190961 970891143 863033084 983162363 64347233 783609059 550906503 917919382 667915385 726762358 355298899 876713933 402770079 615681630 722724956 865576256 494050586 732242806 885771716 904866602 991828664 992536746 451187785 451768371 896646138 985927798 498171710 713062217 370158765 561563138 58914169 417904949 236482682 393754002 390987637 572219832 462562857 959252408 55820518 389192437 701061585 874956213 875770404 895096892 668060199 769294229 580281130 668451524 622474768 632402166 115775634 940046321 515713547 981660886 970352317 974957425 379448287 494107521 861409143 921786328 17442909 504505332 74445680 421296839 793265817 917620518 716286214 836702571 76749260 799631821 823568177 891593403 596592351 636855158 437053596 704154262 733179444 902197632 647596175 810975699 170219797 589201412 474712529 917718086 417439310 761747752 393487474 653643535 108274653 422915629 539774736 867622471 997726572 998103809 708386594 724301433 684218196 884420301 88453305 209339521 825259990 954295112 428841134 943414378 447480166 860681372 372450218 377325997 729734483 921250237 193253831 654576066 646097700 731327653 889847033 930147227 789415500 985920497 788567574 915251260 694728427 759882124 603394586 942559129 512649024 608167875 426433918 763723578 449786851 724923153 173043823 860649239 900967053 941169098 366036362 506198409 593491350 729708245 67638808 351907497 540039172 799907946 59924954 818651069 512385498 615813410 172261853 450464996 94015638 198630872 299732235 649570844 559168644 612663473 534910133 909377712 110270303 824967031 379539503 907168289 298464621 369438112 961780460 990163542 836769727 918385479 899193169 992678359 75268320 126132956 569515063 686385800 944709562 946892423 69740483 873641399 875090699 957409108 142649608 235242192 726577113 768139465 118743170 839146733 6495115 622145467 706826787 924561825 804086891 928454373 706708506 965898359 810727308 924754076 609429329 663534950 863204736 873388414 320009971 372121525 239044694 560794091 691664261 716960294 947367012 975005195 880479463 894139045 819666624 856355890 671727799 689504704 426403754 634270718 731557372 801601179 415320381 802360430 323937389 565747693 31140622 371938125 467624577 687066082 462439260 573592810 130857280 196533255 910895129 929025932 306080350 476660110 192404353 678991536 417449877 970979152 315039395 934749026 597560602 904836412 120593647 715753605 127782015 754398530 409651883 554914609 103650547 724446396 685341512 805332791 107463783 408729097 406055999 918987501 801414771 942960168 882450685 893499602 132749705 166539174 996126997 997683151 171503980 830886017 431211194 579155536 329788600 465325855 321632724 951318995 509038529 956344685 72666660 114790162 930837557 957057126 929330009 990454742 25728811 951244903 326513049 740776244 131356994 752730865 112074291 816340934 279230788 979132283 214966894 998094170 852305869 976129560 712705628 797313568 384767326 462482508 881432262 952932257 111468022 442073452 594228682 935111881 306645025 473379628 540804378 679089812 532896561 603498015 743395565 809129394 569441921 632214025 174262213 441748367 304869589 715914621 352311422 770591822 427242767 700655167 742491274 910566632 113549020 998680024 137455004 883462906 485546133 577083820 780334018 824004290 740820460 819102277 787491078 976388036 292016421 713301685 963978093 986551348 141501427 645210867 539689749 636757557 973243576 990700482 958402060 974675137 321343300 722276074 828199402 991551243 797951760 958415531 267731270 481064131 636387287 713011475 60544577 226576836 124449688 294354120 932411468 945232800 276697236 661416496 486627942 809183301 571999990 880710976 237413202 589522806 219222161 908856577 125889180 652998119 757400663 990172274 481656040 666062659 687774824 830731655 641586234 991453574 791407761 983247773 368879786 603824098 115335219 587170595 707496912 788516374 362853755 612620952 20045928 872487696 366539676 960765982 180670396 222389366 405850501 656396101 172383811 379108977 267824263 953458669 595532157 719166571 960067319 961349669 737075293 740422699 395895878 989762413 38143109 295044771 903533538 952077553 296185901 634043340 385648561 838278234 467203586 845845778 367093736 762983117 501620216 748614943 354242993 869979021 685184630 960023416 740514485 923458864 753840366 947771699 676284918 763584904 921960381 958465524 641344118 653763080 499513272 838312071 732610654 845651673 650894585 782517021 473798949 622939891 465667048 473686274 513482831 597452534 204044558 434304674 65038331 638081931 865085152 910582419 984286671 999801339 953390918 996501971 227469583 958209965 891304477 996444419 813311289 951961587 422726816 610710105 823420117 990139916 489053065 669967178 818787033 964278890 713135984 792651491 445192919 686601410 561499965 740536194 67563654 694086512 431604687 989906494 843973412 954647077 32932743 422983613 267811465 617332358 372178594 386352816 847641521 880362757 726552215 970751568 724801454 834978523 932352768 947352910 225608243 986100495 744692288 756254499 563824933 657875553 287744678 563898627 692589673 783398664 335479436 717806226 507816504 629362383 237473034 791768506 66239793 270919614 222456783 765945243 706118113 717065145 430867519 678615991 465079343 727446025 713757799 834374045 843170454 966665850 348699985 950580527 735958025 815562060 70029569 313615928 557215971 790359579 182152493 886276823 519106601 528749465 841311920 879476235 786743604 830148538 962000527 987105002 613044266 854391974 738703232 809615370 602396213 842429981 547500107 794550086 898545856 905962293 213623400 946716934 313742144 502569328 261238361 526132284 901011705 983596752 817340308 903839514 425426749 891101191 109172877 637034625 667143817 701429279 354818443 968998505 592807722 791890145 652632294 986963190 922067693 968293423 604878559 738477031 676873366 773697975 581977662 780255321 707234536 730104478 145224793 849525981 680486548 874374715 704568714 797705697 241395201 610194882 888152971 974004229 878185765 889941932 787748323 836000986 633014946 655080691 504600554 703284553 295838143 670552127 638574105 678245628 848337985 854761320 418233835 622842079 678965039 893249828 27832303 536448120 458717163 770092514 843066752 850920186 984049559 990825521 517665504 767858312 585963570 986339813 286689049 797283869 889703922 908018915 229232488 549793376 547511152 891425784 235773948 953835352 194555565 889170898 280152976 488302173 166414663 420919065 564555117 784433505 408143495 893335860 819273416 864130933 243257180 493468948 388693188 982111737 131794357 797291947 874568592 892403513 508223249 615481357 988028394 989527677 875079758 878353095 965213005 981118507 123740644 403468896 931630964 937992798 305364732 501605409 178549708 826583734 780973151 905467397 975814918 976030452 762552282 840544584 905597089 942534612 639656193 737264720 434907092 497156923 751650348 875065390 102312164 227920188 170742172 960844385 893437055 920025857 991325149 997790471 583507542 922227076 770883965 948971705 749003966 866221977 15559233 289637687 730737295 924733942 48441930 705175221 318483682 740364817 282031308 920564921 946335170 992854650 583680905 835792070 657721221 957518807 873056177 887887098 851166595 934602649 451526241 990908929 841593858 927486799 570428362 927581560 858824121 944647447 107833010 898326046 187790296 610346868 691457303 718727785 330070322 937575142 539790593 817410472 262158574 640429252 84812424 390617383 651868472 916731934 960177478 992794113 510772903 531384640 852886328 882303079 153896390 306915101 203402516 594686670 9597336 429623280 315631501 876245884 684132026 728769957 361391160 979635711 39691373 932595104 537933463 893113345 3067784 300542702 569509017 956850314 743841719 994585257 10727571 758638193 510702628 616023664 20888987 444908558 192657660 355855591 488204954 876463888 397166735 782905407 838182161 993894398 989811554 991848942 113841338 908165497 809833038 933476357 253984254 606762403 190946603 373387038 349406100 775299368 374549806 900172289 894736220 930608288 55365682 497276421 320652745 789604137 854295012 877255730 527143878 805070777 610057187 682490272 111088660 396594906 760832667 971292578 950992962 988127099 687662512 936867141 962523486 966000817 927164937 980839929 778978129 807092657 667623620 987257950 929613264 981021634 936097548 938927533 171389825 407880855 619238586 884986860 862028972 930633055 394312832 752313347 758394039 888929848 195889203 279588149 128453899 377503064 758167109 878131793 676456355 709603804 841161545 903072997 315744879 802488143 591606964 897756740 89192423 501500565 374198587 840526501 524345150 645839580 121949171 924736274 334339577 598619282 781192143 957709481 359057796 606289514 311115036 706408058 658679371 814086654 571076350 923759725 422800963 577866111 717803004 952017746 15065767 900506937 793457427 953128231 90961457 681254604 141578920 407006387 357325017 804058872 136335285 238059081 407772212 577728372 877785726 956604034 560119457 763429479 683016282 702848650 54103957 127367142 111559895 660397246 673727063 909123692 427379097 633289074 323089942 748424721 572185303 747826196 596229966 905617455 609866117 950441717 296539187 708306344 588838331 960511381 855006199 896346243 259779443 292566193 586482911 763018879 390421429 916108688 631807886 913942146 493301655 927264476 537693387 902545696 108570556 682744123 954768045 963199073 511945156 674756594 234111207 264851203 804713306 892362701 244972066 314159876 664179455 911377661 81549581 292203513 651348594 694677150 291146519 482808881 533877652 621584782 315473479 782982390 104870793 108888655 393915960 456099537 814342380 972179009 298423367 766065983 751583222 765994485 88915073 467768404 383617948 926480029 666394820 785353714 703412516 750289357 873568966 972014772 511502409 822570882 444298038 667500058 122036591 516894172 700029726 909757588 522277756 586351867 548766708 815607187 268990596 766377782 931669274 990300642 978562869 991749948 842577213 988501811 777170292 951201406 262960404 801188422 483450923 801690528 718219291 855749787 951911775 956996848 368510292 543386642 639174935 822038057 201978327 692106182 506291076 834782483 402618677 484424170 866095080 879264155 464880809 676810494 451419514 610329156 368104061 706908370 673883627 685855513 979044483 998374404 110063064 821600909 604930230 795256819 250149260 723938602 148153230 380420096 384869366 388401889 317894014 542386449 79438489 218569391 296928502 653907575 538104112 688304084 132968134 870239467 721523 476858112 882063999 926574943 948812150 958363391 721713808 808358182 542880894 947120936 444523360 688295444 184081122 914004742 183481523 194400395 702348592 799569393 523568717 883944732 927041330 945665538 844052414 940494559 194187691 522925372 578561399 752720519 46829353 139732295 697900920 786304777 436358165 463107581 368519403 877278076 482074029 810050426 420444358 735388503 371793363 587121401 391337043 612701668 379378570 988835142 740959918 922197105 154437922 850304400 129059033 714603757 524336153 801448508 310399485 641158312 557561389 737677877 795954368 987461038 162319558 917296487 910834791 981031082 988191987 993350710 849677778 954459633 558645971 800493532 174363444 416311848 828946637 967868195 624951300 959733963 453674895 530745316 360457981 865942627 426363915 749486340 323287784 806775430 39445402 447665835 934091199 966153866 168306217 885130004 588248810 752354587 824250050 848970988 595322790 608542332 420857988 944450756 171162148 193258889 2307904 574394781 301228516 498731298 767159258 932541562 319949506 556093369 688794287 909897780 760554956 801697882 318940683 419523059 837902526 900957332 342687814 509440596 513823102 631374341 914793078 945815713 915769161 917115028 289935000 823387805 724692778 987078265 229487814 416773605 571163513 909130244 371996313 550623449 363796972 516541027 48597471 749254389 664462195 959723835 215999632 600913374 260610216 444824788 38134200 679898153 122465988 817403307 128557133 968801558 471932467 640729507 87590218 667879502 17193310 240915340 969063949 997686583 366462462 505836579 898434913 960650892 531599870 733386228 937431641 998271889 411085364 690410495 828885609 965921107 727944390 894937867 277473061 837594985 692110354 883605075 743960292 899967412 88667936 725579065 305683315 593599992 767693958 790830323 299465702 506276315 365531985 589403561 270743296 734514480 983253094 984614259 731149111 897832948 193980981 987196659 77304185 838228502 638507826 715916341 327749537 945343040 217917713 525111478 566718214 661472932 212968737 560680246 544201779 681416823 536728792 662518198 601337004 837758677 682033650 816556024 210759401 775127820 351917923 933911047 5741666 781285517 145945315 291841801 960908447 964557376 405073143 976835121 557478587 796509014 848624841 946622133 634248173 821534081 182115799 392197741 43605524 825293130 34871707 482126723 692633660 998009706 995770442 999819706 25180387 618441377 209395293 605244523 815495847 886527148 725112908 819450705 268492524 480227454 255642590 593660961 532014892 852504357 945123206 979323398 808789632 812121720 443285548 678726818 513776912 683849662 782735889 915205995 252930113 706847492 125162655 542973501 328756811 449430384 431116674 976200796 843848601 851793677 791697438 845356463 689111746 773942034 888489831 987373204 912370428 928436782 692414425 958722625 730890503 869703222 621728461 916332737 488409771 756746393 487855248 988898315 331945675 797788500 147120600 791846039 842775686 909431917 514513193 973200172 885223458 909475455 461359314 722430111 720504300 816218503 288480744 748181101 890402931 893710858 975274664 990343787 854402272 937320834 700221552 739931518 987672399 998402955 261918171 676112333 885235608 965978581 643148386 725360811 507439481 718231950 357056635 912801363 603111106 639184668 665611886 930532340 820807840 964741808 866923967 950372271 78140978 871413530 821886186 867915461 738416920 801188992 384571356 429131060 112326097 828887298 254190023 408974067 841585276 857927851 284750415 444232524 24022536 668672414 212258300 903973312 73388047 608372816 487996786 764462734 7746970 663333198 624954619 899812444 356920255 511179368 620785985 822268370 558393492 625774667 23886887 681650359 799460587 824104223 835870298 928145210 303523510 524241103 667596413 790935179 666040956 715351581 563142422 955948157 769476515 910756518 126196254 521288437 968713235 976735219 686318279 912860022 790436967 932593405 112538223 759054230 625081009 644019569 256557717 590759254 90371573 828961296 279501650 651310743 643942069 853152766 51858923 363093216 645367501 852101996 439905938 679718066 227440231 317494007 613131085 764176444 531354965 921713732 234530481 323196344 876736000 925902717 454974020 957332228 108337578 996285209 967083760 974602091 651048909 682059719 912918779 973780865 521238366 574419597 106200070 660032404 369937258 801427698 396779846 567399426 231893376 642723316 771220872 818232711 37851923 737857911 467796976 868263975 747754459 923774513 987459358 994721710 475094010 766140228 322349557 724466876 475330109 798975300 957178000 957981501 154763516 721752617 663690206 709350156 66130452 250699864 737588494 893261675 165583470 792950435 179955298 269367023 523599707 679390794 2678139 56798461 576536387 780671014 420582037 656699425 826498636 964485637 374242930 835334855 539003417 559355415 932150173 940300081 773358036 842533272 267373552 364232733 760264810 840168940 524022213 543805811 253734156 850565940 473739606 982543416 664951818 855888827 74106988 207446520 626437957 667265205 608944166 897702315 861984944 909652076 566045757 756060931 862061602 886030515 93268514 947172126 30832665 361141163 435643816 463361549 676833525 736396234 631887927 683864753 655144400 888791308 721152486 924966037 538390093 987857210 930938222 938187875 291406303 557945069 149955513 787416922 952505991 960418351 124399455 351314459 640169193 920043046 897123125 902208993 697718495 777086311 736400614 847860652 382523697 501562193 95122188 529590903 927726338 954339431 252757675 639622057 792074165 919849089 694442727 840045879 861991963 991755661 371730386 562435457 698650132 778420270 631014748 891736421 958576306 961798290 935442858 942911051 348006994 621894292 228160908 285727987 722387990 726203608 263421810 984876658 149778906 796611009 521731552 963243945 681564733 735082976 323217017 951700855 582156177 934764115 731744502 816168687 374360495 816026773 784455644 997793965 879741960 913087115 979971497 992372709 821271716 847522858 325402246 507934875 381712434 547773053 734508074 753441408 270242895 580634289 510904770 707376586 719555868 906504425 530681986 912101624 863877220 973247283 348170566 993735787 858604720 997787967 652819989 872871467 851571554 998230630 857629213 997849263 959017669 972053732 658183979 728633329 108574901 904687881 487114220 881160217 232222000 329590815 567264093 989964556 37964579 132244790 730625232 929709443 952926709 973401559 857062461 897447055 176178354 320476093 574674465 872773479 201195488 489936621 1026725 399963417 659516611 748692444 426468943 568710584 24235937 118036079 856581076 955287077 995640281 998519630 710733460 820001159 608844365 821245123 821385601 949948312 979498461 995865203 885659282 939840980 930230316 943112735 187738439 880633520 539810811 797224028 698956211 905593568 188949709 546131439 963396699 991460248 654421470 661631372 845984436 932438212 624643007 644501857 486404007 694333197 546207769 987802000 444417669 929645195 785282090 939515206 130396802 605743198 789109357 941618750 541621697 556716619 411401369 782434252 275071722 331125569 464928561 612354348 389608862 436444615 143946653 952507223 71800124 631843729 621590579 981326358 240584303 340189042 537386312 930145864 445966332 768880704 541728300 603927292 222642763 897363586 428734380 869653663 527226523 643814617 910637819 931899009 219788659 609503151 341176819 427714453 584274707 984589987 864251414 961178608 686892010 890357836 171149358 911450748 783675706 910310950 137395525 378684796 987871762 997002676 41290573 191961555 429619768 999066175 276761141 800315286 257706306 518263658 262629219 991205448 682173466 865134936 965609 664372417 821877716 851386610 323509426 812069151 233621491 939692988 140017690 146064734 854186894 926052614 615635738 703117321 558896364 952696690 984324342 993020770 820156857 859141522 870549171 884263114 192944405 567436952 915067787 927486393 647407606 703795715 103191431 606608593 326659097 791839669 535657738 620612889 188630710 915199685 714004478 723961065 994578220 995377951 439005228 472423175 232369261 344204255 659596625 947659306 639107835 927753343 287016297 739209347 194881976 813764589 58397650 392519068 995807030 996436740 780116981 906112612 294812166 909953391 655310265 682345317 373858218 519236341 17243692 544508446 635556421 653666353 852169196 889578408 796099692 944394437 219755851 753456444 27949255 969080504 699658401 702590322 24602054 176112316 434645351 438209538 412820048 437072292 822574555 908779097 248119287 764004102 200712376 252480221 654305693 749587029 701059743 747489980 222636956 934406984 958289798 958353439 984984122 991977693 221554040 629745205 851836518 973252870 926643166 990162634 978328426 984040352 788166034 958834895 364111917 568551127 816559402 869522928 568274811 786863940 713647985 847420026 391290143 465085954 899256586 947482605 481629689 819163339 173030450 377765420 687054502 763535480 256989917 946636896 25954234 815670307 626162573 696408245 546273520 970479433 691172469 978231192 660704634 926174076 811299897 897566807 567669099 647487202 648330057 897742851 392042302 535358823 591220421 654163607 450723505 511343367 406684215 497171840 714067202 871306038 159363617 460261561 500006108 716922767 974870222 975000939 249092702 961107650 485843300 696453529 512834484 826192058 236764906 884624684 998840453 999356999 586404202 935951957 809553015 862498672 542960969 778621844 647626923 991687160 327694233 413221577 523476096 602839992 716279194 766059403 464523287 735344029 718874346 895114265 532944405 633306059 117748502 966003394 625600877 757890521 104783593 170699384 629933869 857094815 735816617 981892356 97776971 443693598 289541919 747274499 608815248 962648749 227884211 945468699 714430351 917306788 308005960 516548514 345041379 508337211 912589489 932738284 246288705 951594754 757425097 798651266 913149258 979287953 705814524 819805785 660975723 824509498 228406737 258474724 347394166 841687771 247993 522754128 576241676 870068828 214545180 495289575 627674843 854179825 899619915 954735502 511724389 709704518 12176674 63124275 300669156 375988047 529249132 613901001 836568269 945280722 614318508 977308445 672512772 798067446 798043250 889755341 969675560 983761335 609120890 775669384 763751566 909303959 56921283 382423362 712941306 732856399 919188148 978788989 74847998 630886792 215879912 901817999 225493854 451606653 866680556 993031566 312640748 640453124 463930076 787681822 837687376 988723142 380998313 765534927 82430219 489890571 2546540 8285723 778109516 842337688 374656734 663420662 280831807 356465421 965268140 975656312 274596543 452876077 322018923 330114501 195026417 865736968 320285245 915393843 456943679 801643296 612044204 680893292 937447214 946955041 834742787 921419778 760610264 921720576 146788982 324273818 863523963 878185697 777850843 924305879 306703936 515272076 231453764 411033683 347462181 432882342 853971992 978343970 956076035 991368075 826503699 893668506 243013537 434087879 811666032 889076539 351520063 394246891 807435022 949726818 443094921 855680066 97741482 215845719 103517802 357774459 484389494 737600252 282105582 587753548 719512231 916007711 542537579 937073575 734229325 766696748 539112396 910786234 11849145 138324624 153126880 379192733 691723336 900803811 437475564 662696629 533763260 632651566 37970654 785972211 390158379 899037573 240756307 849244125 595997612 892399823 254730258 644620788 622682570 644629062 697896784 744729597 223363016 559306822 230643085 732952217 2995733 474126207 94809231 124113064 81812871 794429294 362036678 626178570 34818277 759814772 429411408 792100141 220374137 377256298 531262374 918688045 11229658 496560368 885693515 917588056 955820279 999858428 452730001 494620767 810842832 832574732 395908718 533015237 388005802 730028901 617937169 809463322 428825219 940710979 267811571 369297465 914733939 957124697 55489605 636081596 396019479 790903082 96387083 498368319 680507480 816760170 348368399 855946804 249177114 646462726 128634035 886750202 921276643 939191055 776929413 949821479 608487130 864400203 740591364 797145999 170582771 540097562 805008468 881410644 3456289 106920686 554738068 745127051 655940788 925552610 423886206 733310553 680475669 928560497 787029181 808816320 157346539 410091860 534006215 664163221 95202237 116072697 919379947 950657630 844226852 969450789 69403871 293449887 413589107 820094914 436367172 840924339 357299589 948108430 311054598 636026475 405193094 922424191 262696480 421655978 988303109 989861246 7725189 940364076 492597570 790234871 176823360 276867924 14778160 538480261 309608682 956843897 280619542 714284547 333211316 747494089 702939944 797430136 30158665 614918616 124024910 223736551 87636449 481749656 780600959 820454456 473487972 857360844 898863175 964147751 165122441 432116053 864199115 875511367 794795512 927160579 582221914 611304430 389947155 896991880 960585108 994814728 421401904 899731930 30946961 56489953 457555469 906505509 967028821 988929988 606839962 984529190 985559525 986717478 590503842 817094780 752723326 787669442 17951411 927901002 542827665 703277645 551702261 849040047 431225013 507458402 968792177 974871380 191509948 719639896 522599171 567213895 93106933 631948020 241553769 796027620 237744932 457108093 258513977 705588828 772405434 882548466 728017892 807548849 5243386 185661136 459743373 576571785 701936548 900208959 963368218 977304016 757092250 892508005 109955457 183625709 676705317 907068968 827776516 926031381 566569539 982423617 10219183 607326637 73034312 190719142 626718402 679403568 911399678 947157057 474693894 539358403 952147835 969190233 403518186 972274666 314560178 964108175 681491856 853930785 320842253 680360430 62921452 249617560 458349280 566208123 401740402 419357445 835810997 874031313 229530512 729480749 928213069 960928235 409745422 956067464 751752977 975631148 459335209 804566170 832698928 875802513 303923648 502910994 327258879 419083857 119251503 370033033 392626605 654091724 991640518 995743797 717650153 905371740 182763700 939933979 118905962 637832767 446755661 550503919 454877352 569371036 148755040 693996388 980840431 996511051 372024395 665020604 153232766 757465638 680524439 752219274 655016100 942894131 434908182 798586983 945132716 972139652 482621265 882704031 548512246 978775057 589497745 622744845 104285888 923770032 180166814 923911734 383899680 893017923 148405339 512944906 927895517 931495726 625580616 713997648 868363659 895567026 417983757 474532694 741782529 805343055 158250990 539718227 938003287 990348287 187725277 212755067 373739212 952921836 64014376 170295508 78968003 116792526 36332670 395421309 442583802 907547941 948376466 978235450 592998570 938922626 789590706 807473297 29505393 498361338 860217027 922449321 896252483 920782639 719191978 767943639 687251009 812371977 543820571 774083830 765957102 904233363 441622523 530457247 634280235 807024178 793743903 819460054 911794391 985142877 607318409 863908592 498013661 834075991 974013031 987726395 909336173 955201012 240220759 599433904 973029292 976167147 522347542 736477371 101181175 699173672 34309741 869354016 426751531 938644210 784805431 932104416 717133335 771114870 210182767 389952695 852379703 933635344 492540890 506622372 987730309 993561672 821372016 832750682 546656248 892676012 575468580 993378798 397243695 760471332 626503985 929538157 163195280 916823931 312607222 519142955 637076424 724171054 72710756 547209923 431022089 964913488 948350923 964781133 523380820 652754911 947645299 969474334 705351787 846883727 673465935 802405794 341907667 798730487 133356078 164681788 661607044 818690279 335848430 954675649 867578705 980574485 729374509 775506425 425136854 890539379 72281215 860964453 206426002 853907922 658119767 883117212 285301012 740356610 949222093 960693984 580348216 689340754 288755280 678997345 625627169 718907606 689163564 899246770 469818296 509796589 463111132 907186440 107809068 703331399 557172377 628370666 550524437 672175507 400689189 531662372 850607216 891568980 64942716 451222963 494837420 551863134 633252425 980433367 956459314 961630183 922598554 944027618 714152076 885025475 344783598 615722948 210595888 632371234 392764838 800602324 893533249 912320071 76111143 952797263 250830103 340065358 335838312 522292394 939095590 981826136 163679375 757249952 334677363 796030047 898062686 934674594 901986812 922382709 25751705 770519258 235161311 377021192 610441486 646368435 735903074 873252535 382092577 964276811 21096372 431742114 222057098 270058360 901372581 935427886 690061586 891133420 395849379 980030374 344228293 860339694 593050916 777386260 849147974 973084984 837363843 931348959 967094278 981179647 181554170 346832946 713007591 857229758 95432665 139518825 74934963 998734861 975810766 985308455 622884939 909140647 169287583 444124508 900058701 944104957 72180022 363346048 789727788 812509512 275349887 732440037 618578429 747634190 451256493 620167175 974253909 997159703 671359159 877031671 178136607 340512665 441821676 804672859 719244565 870400398 508887538 725552667 923068310 989400847 368077163 951852182 9033139 768332861 71650818 510343723 631342641 968190551 635637503 975614735 553861364 745891378 500361077 721295320 184220031 546938080 520392696 548614459 593131058 597097664 683000522 966564465 905124973 993737756 399664719 511362213 681480339 922186482 610874743 891373572 922925379 928142842 556290678 956861120 803735681 833651126 541144089 815638563 798796210 960613141 685980916 816525607 864177735 926487253 434031258 715419589 339229341 593485266 657414083 845807560 285411305 829643103 609641998 773562692 749249767 799193977 584349622 819862525 399810130 936894670 587895351 710333258 874994124 896579229 452997374 999269235 179138167 240350229 149100579 981776870 71218462 89324521 715126395 815136753 185002029 496465414 292224445 358715589 877553823 991600926 6312801 125062650 907078320 955381954 766396420 816023318 805672861 926542744 391723627 706862644 535556089 631203177 683518192 937841248 165592862 517610665 255543990 386940440 851049476 859327262 598520280 794540824 349487914 520406026 125626402 253138981 425835310 613926565 676585724 822710336 187800502 920161613 428668252 587958124 901673093 947921659 401334957 593894668 947023231 976079827 799588946 941808394 237400227 366782352 689735368 703909113 987929580 993803530 186405237 299230176 550533193 990677788 558718328 961074904 253374865 716807798 500033865 550675817 453243803 556833770 518863483 807788400 420419874 669187767 181525751 801955304 372099383 860296301 300930077 531343299 867922766 986177499 92864485 480007096 526188533 904455101 190417113 978973615 153249712 595787468 961228528 982629682 966211396 993709404 646402652 694806794 486495872 625872848 432397776 893071660 480997486 851964101 738699168 901597428 934009036 993870012 942983030 945389812 595337338 937060473 47707729 762292138 967561636 999931484 332449425 752159225 625494669 921561230 118393576 402890404 325062984 546536290 268546870 981525138 981339340 987707795 408950219 725014886 847458691 872275033 576709596 744064518 7501382 837968498 319742691 339531949 409974410 802619087 348128072 492980672 432437874 667597524 103226096 134293612 778691244 824363058 620592569 708883424 590197171 760510614 28446827 226156857 931149423 968914025 469419569 847637149 272760153 314837089 431296868 610393708 29652670 892742838 551291870 738342204 344556695 942682006 213984049 988618959 627007619 857619488 459656138 616092785 14505268 778896126 135654719 326928140 374486399 398106876 462409675 957294951 425263221 977850435 360295373 831961109 171906846 905471106 462449334 818336805 326672262 719885921 865669790 871165204 123893204 576319470 891259041 928376729 532304943 759446746 154593993 454270571 246072855 964861517 662970917 738028287 168389665 585245362 976971866 991454389 74947824 300743823 923731895 986593759 573367149 690305069 823558695 879032654 807272455 882770009 689946267 987890470 496899120 499139664 708982288 938912934 300871064 423352823 212526025 832568419 663210332 683807715 798883953 801354118 650981552 683270022 845798124 890956094 870811062 891506275 974247891 983400580 622431965 749569513 467824137 614506438 250914248 850925145 757433571 995454362 687771407 847813012 335728902 970463686 862095120 926669335 310747051 700373157 915241789 986842053 784792335 888441467 831625723 895515384 738324442 890011116 5035413 464644255 474660510 878682942 749692225 824380901 466396793 855631774 385918794 447327806 497454517 764748532 99723737 332037276 963697692 993161832 438449912 842629870 660084784 721979373 907265752 908649723 418022377 787732952 736153496 950015357 563317174 686844598 87073080 978631923 580035449 930520317 817341554 902121774 254226259 909961333 560978180 814897369 405577079 687317858 33844087 978968731 908784247 941947022 582320969 788005918 497147470 644125743 115033992 503499452 774966757 989571803 492780112 503730428 891690108 944168560 241069019 649478949 951409007 963841964 479523856 520945956 733108927 802215221 682659331 762757524 478937244 653192586 221043199 633903641 545480460 707394102 604494580 712021800 516966112 912657024 532346031 553360245 238984983 387323487 25327771 366063218 998561211 999796682 542815965 926997385 163706319 620165099 797251471 897660682 358097229 803850979 602946471 769210696 585043209 769548950 62398975 368840143 896903257 910872922 462566526 917276070 502714610 753042294 420195899 477059990 191838869 907103715 693319353 804867946 367739629 675750943 122577984 998410725 489604306 835210996 700982295 990528853 11364393 142698011 353242243 754253115 467013326 516865034 213991248 801934201 483726752 529362088 705141308 871239745 807736296 882180315 461428452 532567910 724082839 742146646 779655217 917698918 561613347 763846948 783662013 983814098 197807230 578931113 906064894 965147349 555949223 821091372 292351342 441671252 201773058 402702592 143681670 525588487 577936192 922890543 951923170 969571770 941272069 989892841 946943150 983316477 479240408 553719859 425442887 941991864 200045567 753479720 297111269 649750500 964507448 980543298 430872000 794359018 715831845 816794013 303839837 984191194 993821022 998708083 204969679 484733994 934805781 934825299 95829471 469724410 604233108 956427907 407341878 686786706 589376351 862603861 32649328 619731396 934552722 936707940 873733694 952588587 109714860 361964491 120452060 343793554 301844612 853555219 860224622 974543184 836706303 880634174 391153953 517018497 501127156 528529633 1219526 927572520 509722459 797085061 47270304 509557845 83804945 552895577 708690593 887639766 476136339 616758863 620381498 632971564 736388234 890685443 779329276 825583783 793307253 982987092 31913691 326687269 256126563 391715832 580685366 904771600 325712751 727133362 953837876 971168939 20001536 275580071 890296665 916420681 720316372 883338914 264060301 804498730 381779350 395524586 187176641 914130137 880217328 899641904 995036675 999706963 89081947 980743450 722033397 932281621 26290590 997015378 873400257 932565099 6892559 898186426 804917378 990349942 38263019 225701870 693850758 864833607 904519505 970822229 367682368 912842847 422561025 660839155 272167742 860757780 591186412 649417684 738368050 893574905 698693436 898048311 649735042 770023043 296389905 553279436 289491884 405905582 450956677 798748998 983780324 999718143 534454570 919498924 586164688 745863911 759722326 900292876 724780119 826040340 270476595 428812106 279764637 538911721 534278627 800117489 291988243 427905535 440923929 782530710 128872655 803993336 213132155 734636945 293616691 862749064 117939144 604405058 657398255 809163351 584925332 698028523 331333719 937891316 878674105 955733742 340306862 926769267 783378501 954656825 283287357 331398726 653018352 748680913 676713178 797401372 431725505 827067459 650366518 820111383 128049135 660893157 856385228 942748246 527015951 949914547 69753812 90568352 340959185 742163913 998312909 998584580 770620008 947040103 241687922 902577794 814575634 910917820 341898868 902631255 385481907 948831148 393239939 398350692 227122466 446352361 855187335 987544927 643772754 930224424 945835642 996915425 794179022 936135151 921516290 995704841 250727618 916917740 410855582 438547413 256662987 726538891 954730536 962977809 407576695 633093876 540208855 621911594 784098119 940642315 960220385 999630056 397623335 410340154 154282849 159850220 633753783 813209320 861180889 917463588 641359918 681258168 589353835 809949171 914291112 946495080 399738 744196322 148226424 394936494 310874057 661622053 973253661 986111261 140809503 241755457 702137106 777241913 175288061 402448172 629744613 703317124 923191143 930487709 236195149 372085086 238725274 253295182 719192188 766056344 159623744 665518508 692635211 700005834 857274485 904181738 167219488 720763276 16871083 293650435 659269025 917836068 23605798 898238538 506900634 744086550 488068174 526277990 761254351 861430717 739154698 771343543 209224995 378724318 651386827 690983730 879081284 942470112 101069687 662210113 849654760 902872195 982849938 998791645 729629910 905976706 841442504 935535454 317189381 587017093 854643720 877592022 737795676 811337382 77304926 404783436 450678603 923920203 841706807 997108103 851168164 985905761 296122294 508262055 657930324 968462909 915830379 981353140 257930557 346836433 205946025 324266691 62606586 175967265 407190279 931968531 989173199 998425524 542579360 850731294 743216145 971445675 715071532 737390826 488635957 735554194 225440161 540401252 258291139 519259345 444452205 589203181 758478903 880918644 885605063 929354088 829258493 849427994 781100459 984911714 482878569 833826286 745967456 911909947 868305105 899134355 630749695 659023591 129570325 463698899 278105642 786737011 523781226 970155477 631072560 838476422 278221446 952308047 158431111 443775461 230768680 403443730 202572944 263055649 85990143 759840038 744195443 761228248 347547889 498138061 336187098 424168724 782231853 948932187 289383348 319141880 94563512 210576199 349112860 594218103 196530299 864721023 369484061 625636108 434887266 495741518 462926089 826306630 836822470 845594492 634228112 710134127 263619074 826339574 693429680 698788981 133148602 263521465 945897065 954820618 690894913 740655717 265343161 745865427 18765734 487955682 22919005 734310096 168864855 509250733 991095221 999400062 392971848 746990647 600108085 614413034 466204989 669500409 172372299 629685405 732073621 765775751 937801891 942798808 822411803 866747078 965387129 984941490 413775225 495427370 909437577 982367559 121127392 122677730 471570855 781743958 206549692 385639389 904274074 940226664 434861261 742399664 719449291 741315691 683472085 752259075 695296621 965880426 937761417 947254990 39557875 863983856 680035294 923562962 697968978 984300072 74258259 971289892 656355453 723682415 398324660 480844243 349389271 624778356 469490049 878692859 757758219 773980744 385679624 486227840 941154106 952345598 394484264 933280547 74114984 625938302 232280536 427272024 438507085 550823261 23115431 387256249 978817614 983728474 634757500 642823850 629179070 725281115 499448274 920751156 141853869 252090363 545193973 569477178 35542379 607395825 125318687 158277496 368735859 551441396 172534153 660340028 123777611 601334755 109985029 260347155 507206015 636716196 464036083 823107552 183996378 672330112 348560209 621893112 587532886 932169200 833118796 874417275 634440787 646112948 316471483 824633000 362140652 760186368 750674584 956643398 175240232 324651245 414343550 570515289 923190193 995792473 686827686 859051824 423490976 648830782 794909359 838388880 518896676 566703162 181878872 483750721 421941691 618614154 612464081 772165316 376756709 411529771 684006323 928139629 501198681 866310943 418398859 567174014 778331327 976016842 323040035 686848091 740061039 968718050 814654475 912690436 28527904 469643945 219314021 876554298 898471270 910480294 883780350 975557313 854761278 997956332 601896210 985349659 876376262 880168231 969191483 984749667 763402377 816930145 210579863 676490416 306961792 767225100 366045751 867516926 868850248 906854717 811242052 989813133 446146820 516639449 220048194 574559477 751449871 982190409 563974322 887051246 208818201 374783768 305220720 518386136 65936860 255236263 876572428 944821656 729014084 771541611 153707516 491053000 215196145 793327058 579419070 729730465 562466330 718143480 498075186 788400606 960573299 999839510 633105691 886823966 439243020 930193904 428342311 696079692 720833178 961965900 181864937 636737506 213686231 300284405 616155561 971588696 998712135 999152252 794554508 983266200 329268541 797854713 428233312 587623467 628169990 820643044 707159415 888312204 164412524 928439044 10275122 551664077 895154707 974420299 444343104 810446600 662437486 821456123 492532933 620297787 671621583 944898812 385054383 904987852 729567331 990251391 912512242 938864016 932055754 966716289 238730482 369527598 344150283 423163104 200578809 980642961 580600171 739043581 247881275 277730066 131833166 960633828 865893547 952216898 875949880 961583476 940789887 946670512 902021971 925239442 331949948 600225364 503415614 549281249 312493068 467597432 890765114 951992055 717849134 732938310 826054454 908900990 200459766 266672064 526513037 947097150 504442129 930033342 169998588 364193638 776080105 870941663 928179883 967254015 955295628 971714373 254634076 986209234 942137658 954777182 995660777 999168530 18327231 188074908 744463379 814625314 507252663 567125626 667339405 888554129 111574397 676555781 387404030 944818107 263923666 600476284 606231713 935553126 714012403 765624145 438828286 794772715 279738448 290976697 930893566 951095012 969439154 980352544 410427746 876530118 97656824 316708970 192094718 684344331 960182169 992371688 995801288 996326794 198934121 228779766 381228072 932116096 726864466 951581510 953729588 993407425 550490083 759965461 392840763 589394799 331153472 666951740 217116158 418089424 227058421 342837353 811025381 959109751 94621181 874724571 106890200 456030373 967052707 999868202 697572912 958296795 790582166 956230022 941065110 998053278 155551098 449965970 583407862 756514576 502462741 990426359 741348808 801526175 799747105 985037145 599494775 828066673 838596227 971494312 448409292 995850533 569912615 616078614 887593569 956944526 380200351 554576183 733016347 801834891 321083518 594649478 12556165 859952658 32418668 373634516 800387493 996846494 652361049 963477503 813674079 848524056 29583442 118393833 632283836 922212267 335562857 470010787 944758809 988788169 314374398 873251070 161142548 345119873 767831495 850243393 557744107 892264998 996815390 997177410 549270423 624405911 597009371 856412004 594777316 732246705 464142469 950998432 814668886 846957585 183194567 230018819 257343306 761451360 711157813 764994057 959671608 996510565 117702647 753333159 40837435 710728507 214120303 720950277 821268389 843966216 847153672 922345662 71489822 732297385 160682986 991227595 69214990 230590281 635639592 754560245 415492170 936137768 510451114 657175162 796711893 864361201 143831101 800070032 639678670 946524868 214214716 343352395 655526436 960811792 380565689 618379301 727260968 919923903 851382064 885829467 205335692 850590509 93451164 107671973 614568286 906092356 145010147 347853505 588537185 822296458 287605920 792438895 555504503 942694960 956675884 957205496 969739038 985633856 985832993 995514907 490155128 687575983 993431908 995220629 245050621 344837564 671177866 744798408 21341014 329063660 178776148 645622415 266320663 455197345 192673905 413194456 559373045 623759169 72157284 365699383 631335724 852518447 542499419 885593936 121481206 284752715 102737537 462804174 476870218 720330464 783793917 876688127 695538367 843134738 993723238 997092424 769196016 805698139 974222510 997255166 527720333 828814148 329532191 725311713 238845228 594552464 700950971 849695266 228668070 992148517 311898651 700981034 779235152 934851022 321492177 444854891 354631493 950908954 252242628 737514403 189055600 219915792 819733452 920051091 140506586 274258670 874983013 931857318 52018198 424158390 853032257 953292181 610897129 622884594 513010526 543899555 175193612 987094730 231335712 310069054 984355410 985837646 379424959 890590329 924853234 990993615 489549741 836914520 665126097 751560140 755898186 943306762 268427538 315597024 703300631 859683423 961373908 977482584 42682147 109908332 100911292 285407871 928166797 932741040 52981803 77412862 950964071 976698805 200259969 437005682 485601427 489498208 459086248 986451427 501188026 530608932 40225461 421122257 418832437 443002949 841762619 852960825 565238592 954474635 465319674 574528482 579165795 976264002 656516225 715480594 307811355 806897683 429083542 975168508 453816367 852363214 370269153 403724295 544227262 545782795 432161032 536539769 123725056 174992531 618018217 953260096 302551077 610890133 460606479 554125779 632628728 970316897 813706854 947486752 925282175 927822166 934014805 973852638 770565916 989637704 766321010 918273060 750124969 969798464 735726367 956497684 902846389 911677012 624425373 750035026 28769420 532484409 490883854 847301298 19616212 67485055 315304067 750087334 567060405 791581990 77617800 430581502 428033059 815498665 898416983 972022923 609617709 749787245 244304709 856923752 575195130 859161126 518642323 819981755 117550535 249075514 291750622 314957592 69474518 93155507 852198640 905590714 496608443 844122454 53224749 141729614 468030105 847099657 152442526 902639769 164790264 409999381 791470662 895037568 423964511 888814462 592147935 927758862 503722534 617137978 958180738 995248345 283038781 646594399 610203520 627903513 620243397 950973494 724165367 879246681 887277490 918752887 334581672 821986353 436074694 981845264 392848165 400852626 545663431 788328885 172425825 445420348 798631705 970127719 53119174 614997290 632603558 822718623 824978911 876752222 401306779 870856804 735840295 787896746 464749699 872978840 8956752 143504300 532428956 812644604 883222773 970365439 92003078 482152931 191168564 604282367 993699178 996206932 807928656 984048141 792060988 989403339 301197993 511776787 650419527 902260130 147673536 851728413 633753006 966925002 153282088 607449337 617506856 747015372 269270661 759488074 601694512 879602938 733252189 895634364 341721253 968634304 465230340 505104573 773051138 797356189 435521580 668240232 935547756 954277521 300637267 963547271 441034979 868536680 66675790 805864625 104247829 905132675 960078453 990251370 43365869 801790558 111896265 350276243 297538246 860699108 596185952 600695929 609017286 933905846 388292704 815711174 427776162 927621481 315143978 747474787 304391806 945291409 291806681 664525286 934876710 959281237 14771380 426051927 550195148 744641657 765446790 765839673 204171334 831655876 356751084 982646765 879669537 990883838 40059135 63473074 943114061 977947971 222322212 358834195 122848612 217560376 406162990 439270675 811096045 999640055 523005907 786268664 488174058 727652322 389033811 748576759 837522067 953939128 483890570 789192757 495639125 526761284 970049064 994650159 117834317 185653516 243196424 708542150 192381987 253263561 149193944 693915144 138878327 977311711 286504805 923090177 970520778 985181360 994288266 996571362 737442355 858681014 392794961 717472043 610224744 947784031 864419388 948794882 619635003 697978016 209640757 866932870 512004910 719339018 590300356 996591304 69422690 463669509 863214436 948809026 840331019 999961133 255842878 265153041 653634434 919693151 385072003 716286495 852165757 964646799 607476259 918207185 483311140 676897630 354817417 461870880 132980620 809332756 167091547 530470782 192538314 804240770 343256683 645228715 634832072 782816246 3497203 838496268 91182164 579784279 418068223 684006174 191666050 934169609 270990561 908043018 456159869 995458190 354521771 750653010 480013572 640942816 237724614 756318675 654111163 918554535 959692992 968567959 605317084 886284098 841237893 993733330 993323067 994031645 231477986 750893419 731981580 784657798 896289908 978567961 73118040 552841561 50021900 943076330 156585879 782594434 729968834 993246724 366373080 871381086 525666680 862048254 726371384 995450604 638390556 762687255 714634524 990966378 792387021 860383723 619861052 855263494 205700652 743204132 232394443 286870132 545422587 701611110 442727441 540539229 983568918 987928856 49300087 774789108 948174686 956246786 391132796 772773906 124278417 305673962 289190188 682218365 876836116 998181470 661948757 906247526 471524581 991624100 810959673 972063306 725486905 959886246 208657359 433744891 866181721 928526394 722380333 876577345 812248328 953067087 806940449 936725637 779125133 932409010 191189594 367553623 648323290 876296043 687412882 829850726 992439998 998416358 281703436 943748139 554777042 849125276 101890149 334163300 687177793 938326855 273741847 370768641 714298762 970872557 318205435 480363744 560957638 700568919 201378992 834727317 124751320 660499327 716062019 997806771 140242066 705658185 756225538 780794525 483052165 841128883 563826676 812814091 596779874 705760877 637851125 930007506 268021675 613969764 258834368 982427953 46263185 527953509 333176219 961040708 48358939 458344609 599114183 900560577 34063430 760780113 457162819 939801369 210282275 438345010 582291478 661011937 569358203 885120078 321851716 618344664 630145934 952505966 947630205 975098821 238928777 862022199 780599021 803208793 686802598 866221461 242577514 808221617 144767621 748766592 611352888 902989445 953380937 974643471 35496809 936068443 753561590 765599333 22995590 452398212 173043043 980599800 323452494 555626110 819972779 924707676 746661539 919548622 841965680 893349806 972710324 976937139 428886329 471479819 120922386 393130437 164383956 836063106 874797688 947695014 570065782 777907188 303533446 651386574 36259105 353282925 733807576 824789876 632719888 965133852 886091887 943002220 515537607 867122018 664401720 748766111 962200575 991433033 748012727 928059522 953025851 968721340 544610857 671598147 466756989 785752967 665359846 948808666 990504144 999956767 400487823 457698290 704522940 730959677 35737360 795173749 14990641 860815177 492151150 721760921 539748894 835922582 519534126 933897264 459014371 503145854 346325578 456148994 826324529 832216801 728823353 782593354 217957568 571931759 795855765 937648635 870906270 885498341 405453546 706761890 476118290 766762548 140976290 209485525 143339697 550975485 257654007 987257200 64999396 159274768 655910998 937494071 217958404 308213263 392212986 856184159 489143105 866515678 549138929 691987929 704570394 998431115 401194626 844327849 71042093 276435468 836377156 892243239 94258824 302020537 686421524 883788755 600178145 609448665 342643413 852975524 467720056 645193477 320713365 839686061 676688923 969641802 169757652 501443961 869113168 898350719 835659021 905910399 187226950 908057293 579376510 794737057 478220298 754959818 990424562 996126151 564251036 735515999 413065134 794754974 167916114 633521371 609088716 672364317 66844970 764895327 386235143 422071739 484618217 711200765 134174316 299467330 148560891 603212046 740313863 923389253 426666434 656160033 328834031 942455000 276382046 811856911 81816287 523278626 487654279 934780963 417227942 940157054 266470662 343748452 15058537 784513270 530239086 961209946 610754176 698316925 166358340 894988869 131552480 774337833 648124755 993910931 868775604 933934138 727281704 961546494 855436245 981499767 43115587 731061539 790113192 820656937 298937312 923319968 211636722 367321358 759131958 774931921 670789771 793980410 442658947 638389387 489652374 737989759 363634856 690841007 705361123 743565171 560892398 778724360 39716922 961300488 969707664 972167369 100539286 842526448 149714429 757513313 358867721 592708075 488436752 964254064 184382183 256279399 988214636 991729917 773948634 798316541 165644452 526137400 642327813 890719342 835291902 884200344 462046732 773536381 819111814 907954143 572204349 997660289 825941385 873891002 95490816 125433242 620670916 722300841 939430817 973931557 384377794 487088424 12798366 157183837 632030511 691636995 335363148 394228521 910266547 922168250 879846654 987992531 559741047 991360056 718949649 775280478 183881339 475583581 182739433 188612648 59661598 658264153 168077384 695013553 285548317 567056972 800713990 952036955 360042344 762926543 168471413 460930480 928288057 947649511 885994075 886930883 707638216 825809113 607797784 950035494 92684332 240235647 619856013 968871096 103135006 848287381 666166392 902660956 655751694 774910903 810877372 960850886 797640160 896506555 253400321 927742682 527918551 952306573 419067405 822387896 9714524 977425199 450645593 665678809 661312205 665191108 9726753 582769318 521130090 806902009 989358168 990411774 858962943 866225340 677592528 751841276 581355137 735438471 598881060 600902812 696433136 709106555 935055064 983175806 281383264 671433406 865687427 969109894 44001074 202736244 29117129 761558390 334231964 839797449 427500948 528884043 546633200 676058824 695406525 812833143 163778540 926541041 432329297 638227059 997109438 998827686 936648296 940367502 196143251 337649132 634373966 976735509 317854804 717761550 823900693 852891450 192942910 703955324 434048840 715475390 799049828 879031503 347291063 355448747 556742841 683343231 88432830 677504326 528297333 557442321 966630202 977431511 528031957 599529856 844753842 972152451 682086546 916212623 535398498 678164517 614509649 857910662 666799850 740540026 851187313 934486198 861928767 874851266 389516488 953116232 650829315 989011746 480055589 658271765 600917979 648157965 829016643 840701602 302781495 684425025 945705895 985636800 877677298 960344806 723023412 779706309 336925090 755364042 936518715 943498595 954881454 974446600 480535801 610653439 731581649 863807053 86010789 462180688 601150647 726074345 258840052 641108452 802125153 890892427 440843192 766582094 258477262 334782146 219808074 728448825 888086728 903707042 55986357 421672883 202838992 205222825 270164997 843440500 229485609 876057301 445872260 693056913 484601436 877882288 630229788 742509329 779420478 876796122 124768618 567962279 843029014 996539768 812443594 864925630 263493215 769739598 866471888 952360402 923259062 978484161 9124477 225646943 249613735 424140909 827243475 981992984 308223643 922609239 636415203 903360065 72893529 798163794 858446385 950393649 509157055 739227395 839323538 913116009 371616989 815108487 533366988 561580333 427043994 996198122 154321344 959131062 70837631 912248199 420821185 667385028 74629348 538358821 66638438 228438255 51804404 549062914 765662469 885019294 270782835 734080424 858044287 960185898 345010237 429316065 635952881 664538865 125150154 594239695 207370664 918148878 289664778 402242487 792116892 976887025 92504817 506761712 911980148 990854153 872890570 954462528 298377884 391637846 945469456 996167760 574865159 600000515 659658700 943450280 763990060 767212868 435004993 583741104 475681144 909975059 265043697 602868694 864602870 877578124 474428019 895888045 492751205 706420657 711549191 830573040 788396640 880435728 161195056 268012983 240040916 303400488 930457988 948821674 276956477 396218984 864811463 885533456 792997501 969925575 511947871 587418063 303793602 788222490 620667679 673877240 7048128 444929746 536398511 741965059 498358977 942391877 501187365 967779441 567141299 681150399 206491086 242137154 613107208 707616939 512327970 939680169 440272077 490862807 680809711 827300365 925839638 990046068 472776792 600649444 699417485 951558912 605417290 773572577 613457000 704695994 519934998 973687234 556363545 758791342 560573199 641593412 22925380 692283006 747505955 919647495 846714972 928955202 266718419 827901965 546391581 761276947 806481839 975474258 429189398 545890551 79229869 745494671 464458550 507680466 457743733 821847581 429698015 492348461 198120758 450308524 7251047 178883265 84124780 229009197 237787411 912581056 64214249 255073648 954054110 959892977 565905474 893697875 133651941 796607953 987123771 992395480 730854248 843260536 205856802 705680655 812558512 866454801 184468949 424916806 551186335 920619006 303861730 739871016 630031086 633254235 3550217 453528677 661461422 735527423 418276343 774287739 651037827 816637150 840559807 972594812 170457601 793709487 184403332 904308688 523640455 708984880 631395519 801342482 168419641 994815318 864384636 866299554 572758475 762753051 564083643 884672497 951724188 954467884 141827831 983665775 780226504 935276637 604559074 851031413 767298285 878107953 603114160 853416466 35345806 777090803 367415430 612622693 285326149 401969796 383134071 942650399 187459729 711293720 748920654 778430877 668265902 863407500 252636723 519233232 637960929 782978294 319565046 425960845 363264774 996583198 517118177 973908232 250310468 501475668 795299002 941972730 52802966 430349193 780269730 972526498 410556881 892500889 887890263 996054747 297664572 798291121 960424241 971660338 871409431 986916597 921877430 964429442 260371400 857502986 203009602 470968807 210381145 424107992 54528590 582275254 574427072 766082202 270987983 352903824 543091075 922208602 552402690 895922135 432044189 940469265 292710521 894073531 706827385 800274628 417399310 795612930 382596848 485960208 434456661 595103630 548068170 825502761 680485357 940109929 979611041 984802419 761015073 834464011 976790165 986096393 28298311 861857927 84987061 734481453 721430461 853914916 748509237 878372259 647583905 812030278 822771192 946815389 328610020 647495748 5593970 543929349 722824029 932565837 733647271 808991246 229138280 250283548 340233153 497315415 188816507 306815369 300691203 481340211 545782143 749963208 412570784 801762707 207068620 551666506 523955780 621856416 384310490 596487181 71948807 947935115 468833497 644237073 826113210 889721945 882251092 932384137 951527877 984172044 617229221 760323342 509853883 973505654 731024801 738614509 644618586 654818935 5082179 339334704 917406865 987230099 482269152 998439920 659975149 801378881 881466360 911284714 836733244 896152803 662317369 978001095 769890082 850483033 586589832 669496193 108550047 502838572 513018653 882330386 162446255 296979492 835511376 839099799 417420756 474899602 584957934 756605361 438583010 749099545 651927723 747041640 493042563 662809224 910655878 988803631 528480195 594567050 838779679 971234360 676179758 718412794 540940007 642589730 75702493 692793130 289346589 501810324 324282125 722122882 144655463 364392249 242120930 560274044 974974392 984672006 176573493 871218377 717930857 933359664 814820169 986143741 464135308 924646340 887263997 930697247 657088240 802913494 36132007 550860775 901951641 985829036 242917279 637570583 147908809 383087034 506699369 731315412 849167937 922738542 567965350 859190799 316595531 935364082 513858744 654659304 308491823 334465864 24515731 122297928 321381702 929543733 811869758 887227223 83665362 829097642 741408818 982714317 919167665 932354635 695700197 779098460 666616068 801318246 349916976 595215638 727763055 749509711 423507815 744492419 568872367 641146306 845363598 982449440 781696622 903476628 413825997 708726116 147025566 859148397 872231440 936912699 175503615 822415975 115238270 205744180 689109427 987438678 709743990 772835547 740944403 861679548 663353875 751815454 113195322 736601287 669269075 973429353 622207623 840288145 797340171 832278071 207838558 344313507 166229673 578975376 852079269 864918911 694922710 707967151 46309508 775883103 453979456 747481660 509998915 859620470 759737901 848037552 69678655 753994799 204033600 497950437 550711636 555217455 359868371 977602935 256994094 591044823 462074308 953412423 285329071 595140688 272843004 440997422 595243587 951872548 330067854 686303123 521455613 952948940 679179512 738196239 892202734 932413694 265565987 288541978 742074628 924043848 585652093 813514169 513724709 849520250 911452390 966906678 848766821 950201015 553498970 636666397 514935397 723422935 497939924 685826683 370218127 515849915 316970124 623037565 965249176 984217046 905944790 959146462 8112767 679778927 902612717 975208684 195594087 728920512 558840403 785506630 78961226 466921875 957321064 965720291 222564974 406506725 852627686 943986091 10673179 587677589 646779220 731881218 51854271 377591850 367918437 744526583 543538837 603353563 215591270 390222243 381593148 589281252 291946835 366950948 440328699 925213298 346532337 622490801 227480600 572315885 101740990 362783551 238970417 390620477 930758004 958750195 293686860 403291519 874395431 910397560 887359679 967491121 142761550 413754991 986679132 997755257 188680578 289999977 926322253 946976085 975624946 978434883 498950036 706042261 47606348 287914461 494834135 704135229 999684928 999725983 448369059 523763748 19505583 194704509 615328894 911924900 46780692 880184443 683018749 868156286 550805580 788874370 233164142 850103311 857863368 899429048 215734902 820053359 217345644 496660920 933698564 989764712 30774679 958281914 295026316 938123093 804720390 854173388 551500500 835191319 846159718 936194965 336467843 636324601 365962712 701589584 517827575 570557821 518293911 547212559 106317006 432627295 900492368 943077053 865833374 905176995 293809200 892176815 915508416 976114539 356292269 986041350 728002869 851946252 314034146 569163073 893487924 893824919 640703333 800854250 370297419 630904768 542578657 616629468 218169117 909302976 743998820 801751114 805853957 962522702 776530544 856977249 574060202 938144362 138502778 839764722 560821359 773788981 975862983 978725837 488607885 913657724 789679469 842680775 290063248 962352176 253021460 731000056 638793111 991904332 132787509 634125731 329498828 533124418 27446636 151538296 230511307 836130090 921568352 931718730 159366090 676844841 574720419 995219587 767112021 940378238 308610383 777390031 348402081 630770174 702322536 938624797 674261966 891254529 80215836 836585943 168913589 327138152 203058728 383135629 752861506 850903257 248761839 887364212 391169094 640956119 275023837 275125404 938231506 941652291 766904964 883681966 648634312 958000298 696858494 708637937 951817054 971104096 88071661 203193364 899933873 978719776 527106973 723018620 466089042 715580296 94106379 992597806 196821988 488998239 684511842 804369646 646074818 790192005 481686460 740306016 99316156 867808500 118912978 752393482 159190261 640833323 769616246 868365226 372054235 546072998 518242491 602502668 768481042 884514857 140900778 265752344 110404491 464698995 155213152 207169285 216765249 539140312 143008727 999377365 15903475 954092582 961439888 980413016 767980540 881205679 789515880 890160510 669587517 720411801 929080273 969143172 165849274 879972210 940689368 982908275 565133080 792222102 719909076 781564123 963773230 977331631 689899612 714532822 478898516 757970585 418961848 525430553 217696528 454532300 167729313 803672740 800513693 911884915 972165574 973949968 373375548 463704500 531150710 735407108 585237400 948739343 589754763 903023969 775284941 776199774 439500655 518972153 460860141 922195868 818781124 904391328 635349890 968616974 654433491 685056028 569176836 812981636 127137928 666159418 291390052 649847539 248016889 511163105 633285751 793702873 213888501 867385385 801708151 827890815 304456311 890272161 248164601 728824995 135201724 422164569 319227645 654382098 880556682 929292641 51335522 201999062 242367278 873233513 906620344 920306711 687955062 907340270 281216388 627518629 700386232 781416747 83391746 710737307 278852542 910496369 149107716 854419913 83717136 503736994 201147682 385337292 857203445 990416627 909645604 999096574 729909784 979529967 358977325 724884260 672221597 702152169 279285729 947560520 163162899 755397985 543680299 930762954 521415146 630700805 663657563 732664770 691141818 784073600 81191754 315941250 612275740 732407575 288790016 931854404 450811458 961097040 879358104 896320427 537679633 652790144 208242264 599353804 226605640 753488689 557197965 818982970 465060285 770944478 363097550 902020690 993271817 994629786 999907712 999924296 23737320 579330213 562980184 621474497 2000305 674886873 912228421 942591694 569462256 848088096 628090100 666582362 929133476 977035381 230970789 980656394 696679295 900311235 183933476 831545659 601345706 626512377 820846218 897155686 541548583 949335540 49343628 393395575 356177636 944132530 349827020 422664259 512971500 611878243 792278252 909954705 380541263 618230371 709710129 864557864 256286627 595865036 900466422 975577664 17313938 800973969 996759195 996864628 967631631 980257648 218607661 700445971 895990262 994466717 782753179 785375372 856918185 949548584 336266877 510814674 770528379 868824841 392340608 954500480 456184662 481027151 992314803 993220366 128360963 572685857 401734218 872340792 329497537 825710129 71173554 787475673 531547632 815884958 703703168 961673650 801679362 873028626 157576269 738756971 269905957 791351922 494465016 894428093 575965134 927950122 371999797 435406686 377278646 729586046 344717705 779569069 458754328 792254696 782294250 956068735 454012901 875876664 361095927 605445836 249264036 677795415 113135905 994419817 55879732 850440421 828563723 948458012 705506201 711014190 355544557 723623522 974644924 997541317 405698826 581384674 354780534 794375780 84858868 346926727 728792354 732612074 970522124 981442111 194042305 546980598 789331020 973550913 648146229 842733729 507293177 868438233 699441991 992066010 879021857 993748278 500494153 927361672 392280796 735403253 292382606 472575866 481486184 630348540 112673238 742046002 203728265 970660637 655490554 880275323 659304240 994280448 551770810 821978048 313767277 515355756 879242216 919367470 448553540 899014489 893468925 996592888 624962591 828199670 243358117 813223355 930080968 977708836 578832991 823087295 958207491 987592883 826090680 880961541 308559454 474159918 768928322 819030184 848687513 861045148 967090622 982700128 630215145 772424229 337153787 759108432 954226630 968653496 600765449 750046559 272934588 526334316 870942729 888893058 723009738 914026175 240985848 563192499 175743250 416784756 409641703 857996829 275393856 319730146 380419710 546111074 799377546 945577874 169303471 208905435 689564250 725537438 682416417 910175305 553829049 970497714 567929327 995671682 350280379 760457408 289673367 745209915 619493627 631492134 819470630 926779380 218401264 379106378 745045609 785186237 536295340 656211513 829564180 967535995 266143713 811527212 257634965 687500126 643821689 722765590 146063147 892350592 245972726 944783734 857135965 859785863 30535196 972976320 385562747 981263970 852058157 887658337 665371658 760838212 657024248 963853166 415934491 441247440 780000536 884620316 672001697 910386009 412184702 880879565 562589377 737679004 317572474 685022506 211636389 622380441 630155486 936785834 308885572 433591343 193240127 510592640 894518822 957999679 241455893 831253957 825033251 946483358 176027498 864836465 891927896 942293417 744379297 790375547 593706932 759022262 886410145 993753402 937770236 943731520 89726441 535586124 16535803 143921415 589796534 685071011 642011380 989686055 821374891 986227482 766063297 990065355 758189002 820626132 659993831 958230663 86673823 364462243 537049814 928720513 143542983 522593476 740707248 760275147 297749167 938418292 930382064 960059198 135107626 266609071 311224235 605559615 948495034 965543902 508529794 578991019 171203163 388349549 231355479 811109430 475831576 556208419 911489014 952069225 260127986 801767437 258450116 660897433 246450951 300266074 907599655 987686159 872992714 977980871 138737665 983146259 611651227 818706131 768530698 953968178 262782903 873895916 455405965 684619011 414044930 642779822 562557315 601416448 470194489 921136397 397716315 553496839 753097065 900772675 216497180 415374361 787166973 797010389 830023595 896143220 609501746 639746944 674747226 785713106 655019201 867102583 634040678 760167317 227041841 720402812 752314619 881416648 664414248 902435560 564137160 694389218 762036104 763033435 737399889 784368530 785900422 956147090 285598021 928267410 978002577 995385503 902179265 978239630 859247074 902751372 427914407 611408898 145659061 679816704 86192795 497345279 504054167 520110172 31190940 849435435 785614572 876629424 347212346 418146778 525460797 692467458 892262132 908673592 279154959 364434246 132321651 725377666 688591936 861399388 52786225 670785058 508282507 663555644 836706588 920354155 699418223 866218593 292791730 689880080 183103445 415249735 49183804 623289313 502259011 559911464 290683455 898662033 978688980 982848158 699013971 887467411 177463064 186941469 548418032 554720317 514419597 858261070 33340895 850514613 745347535 860452118 590657437 946150884 435621419 858003169 250822315 790153508 989521117 994252955 952503602 991649257 107406770 322386635 669007359 677264945 3152541 325613862 836183806 955848585 439220838 705785753 796919768 954487543 515740939 601448703 313936529 740092540 494496712 682066204 464036141 532331272 94455029 957854524 64993381 400442829 763308381 972341664 655245530 664143511 858521233 897918602 449460510 939928876 234277596 760962339 166473348 199972595 610838221 727387763 695644154 925050815 874164667 896324246 44674792 234412970 243161450 514135236 158786368 673830265 19311117 732863300 510518384 622268565 522766135 615468724 983035321 987351206 433168546 609019999 27309546 375407024 880592225 932089241 114754829 722173214 714739874 719479539 190697009 382452612 586671565 884461516 814870976 825854840 165939020 172795308 305469201 781023788 637538580 648481592 406188812 615792760 945674637 971096079 221634801 861808228 677596569 779072071 522093187 855539363 554460413 934321455 794351412 899144017 822347752 933206130 535076084 609800409 706506823 978955221 816416723 886583875 616827149 621976999 504647710 530857974 320631568 716529333 87905843 539042725 529994677 883696132 437235587 968609191 83338789 369723182 66561229 389131319 272065305 768719172 68944463 387465983 5525798 36107821 602769599 892512455 689929273 860146354 427213758 611373974 774032128 817178755 957320224 978446579 498022202 701324484 743757734 998795894 1134142 17125652 1584293 543309234 559616933 977682384 909519764 999083398 950101090 986489445 875883094 889335033 52758223 128690298 881668237 998469906 112870639 760860862 196822765 217382458 693717645 697736954 625865656 937842829 986082096 995326449 605220640 797145370 576862388 772977379 181886002 362747940 686684669 815900069 627382327 728151030 843945156 848764583 903386631 988481386 404944939 883609632 376998863 802680825 235742252 545519978 247333190 607789669 145325304 676639643 224010429 574371694 70191459 818923394 355164428 803868626 118218473 651589722 226648152 836958857 641437749 913633537 700763321 848038764 200205818 543768458 938755423 959047638 835517984 836925085 524142912 708302321 355288067 425780687 103489959 463802800 825729653 871916269 707251648 978612948 913981146 947560786 480200682 754323433 543923016 822608663 238159560 986526819 501150845 550611899 942688701 984361365 82137393 550592927 812334502 835971844 983022449 992720093 408171179 455652624 719919944 942618026 459377328 842222913 961925582 964127536 913065679 986815283 421012809 597307375 162224495 611830101 41314406 151855832 831113099 938491278 528808651 569184948 833406655 878473724 963100907 989129326 976612836 983029442 159992120 366073809 43489863 611312402 333191641 710732887 682357094 711013077 249246133 394308477 468333537 733012138 948326937 997522603 859850736 998039990 210291765 548759892 828858007 964922646 769623656 901574851 349493040 537513080 157927353 203202376 614834692 660243028 629651431 944111667 90897890 532531958 934692697 954471819 833040385 856175356 212877091 339158726 501446520 881160233 977114544 987992637 424788358 618014094 195642476 865861242 549177203 916495670 117095514 573306514 704366342 913376016 674393171 835979154 857804499 960851334 902330453 981087748 839892308 973806513 69539960 743370827 882164416 895216611 976239249 991935772 944904571 987997129 782638299 922950892 44911232 913718038 106641624 590504374 994046897 996877689 707342318 733298630 185535431 351066292 631779583 825650082 494038576 670218865 190329278 921512452 805784234 982852593 692680091 723360528 538092892 719138167 755525470 961528646 434801234 689785537 823476476 855602337 818648291 847756180 747967491 828253690 68903037 693821819 822823602 860924240 96561866 797799403 818635119 945910394 260241260 586630722 409786073 677108098 510516995 660538493 20526806 84181076 999698732 999762674 750545116 896597208 370575394 897194250 682412060 740947289 123660343 504288922 640016160 816734937 302568948 672477866 79127243 975465052 335652418 656295584 247264136 400205873 915850953 923670693 768141292 933152304 925299489 958531980 361102512 656064282 787402403 928379672 916744896 948352729 968153949 968434347 325103673 687853046 503471861 732866710 723940651 963646669 92999263 828534409 931617777 937900666 200624722 281283264 807800224 845910885 722648461 784053084 120397165 411162696 256954846 864639396 188089034 663616417 635384860 745371586 485577976 589293237 159508294 919023042 730299691 902208260 310982644 460493784 903564529 989856462 702497432 796374802 641853469 768999243 231498952 982680709 121103636 812780530 396144 390159059 825527939 971922429 239373338 656050163 247823980 526765439 397124165 478797949 462669078 708498262 429003078 499189923 927301488 998756973 320038831 415505534 454171691 978652415 588787366 783868187 444544758 800942539 496949728 751137779 856547142 986171997 782319796 959840231 404674531 726424139 925080930 927043544 605923687 881438883 54478140 258286504 328925976 809984760 13251537 683940399 848710696 939530937 286137573 667859814 433567398 541693271 328611066 914382208 485985427 974890498 281533172 490496904 126116678 553249601 571198999 642670386 735857363 893039258 278345610 633569356 417848718 760568484 465580743 502616350 350879819 368825455 248438016 636727394 314246918 574485101 48709256 932586450 647664763 900570989 334608433 750413269 456244490 990100903 949028515 980380664 450925415 632084877 296993993 307199162 236852540 614992006 506124295 842567678 55143837 264109129 871548593 962809379 136325047 340307823 387450522 770909387 765059933 781641377 897498882 979324790 590745508 701156170 409064346 936497790 876249244 911904177 933009703 993289339 697326235 873032973 590539109 745597950 946453952 952536193 80503540 395111419 793412383 834662428 59580007 767853663 141842108 463763002 446347637 840264954 707707289 999631839 742690469 953653507 926926573 980735586 786660048 949123940 745649747 933043408 220297568 642291480 752253967 895395140 952876784 996914037 454365854 510550448 281933239 368881547 272325040 339685674 539347041 783410802 243757123 722953308 251384630 922881132 326822976 853553393 499652175 872228271 827283446 924867043 615634603 778940218 283010915 324552751 499112389 797990241 754841169 952253786 932230888 938243385 35109688 757795576 367429698 396259243 469523760 885125973 416042788 673016682 935627143 971311716 205557497 356111486 86747196 934082012 689833211 771540837 481188988 601973583 483272451 723932704 420338745 442309063 675755955 891662752 695352770 946447473 744397171 771140003 584396889 765778038 480734342 929761335 323409387 441744198 923704648 954372529 77842900 428659270 251626513 883816581 862689420 940811317 830578006 882068760 511664623 978115361 508703627 546538959 565859493 864911830 863831136 877166917 813880513 970462125 943469155 996160160 580134384 679800334 783623456 985470250 750299160 768574490 447876743 885540939 900827131 985499404 187816146 790124738 474176601 753966789 829969963 911487266 460914135 630917763 547389000 705270355 433924669 833950651 889197978 960575313 62881886 240950510 982057219 995147053 982318766 982652012 962540323 972874701 764378333 922272664 908130172 914636458 801284863 974959753 155637894 163874842 75546734 373500020 733694840 872240240 490480422 497187745 101674236 700731413 631657075 677659170 928423508 999183992 546756765 983602054 55641113 366331842 540202917 699706128 661246978 818157027 692183612 818281568 288458474 304400339 160299190 192506503 637581237 722526342 773622276 779906803 690203753 706407544 526375259 709638618 44215233 132817750 829750182 849099284 86585305 571862076 1764908 705176124 891307546 980384892 486768856 963487296 58335361 655576486 993881737 996126741 9303339 723282548 71445821 192939276 626095898 734657566 453017473 655829076 175054612 475612593 152084467 659325396 924401776 991263866 4161193 324434059 305026418 814017736 644322744 976482316 362108473 589223972 334043030 925267270 722362628 751262377 366132635 407320099 74543945 850191340 181741048 230008798 489935941 611824237 166072092 438217822 785050538 902297659 644583256 852530398 824116201 850333452 840249344 945952768 568844754 670446999 690922872 752218229 878393325 979523601 811106129 967927885 62546121 783492429 956775715 992149077 589610360 853690000 475625124 539925493 554130896 914783124 111983428 559598229 887582457 962729096 852770755 913475517 837289482 931579801 107332243 377427028 487281928 695016007 769605938 860343986 256975144 556473759 183539972 747111773 782978807 971666015 598031386 862550490 408221206 430655995 844735284 953595045 301444464 875157468 260866589 978115780 396827354 832742180 741978190 992934209 688934200 777956009 652768072 674834713 985263899 998247739 977290889 979277787 745977353 817364956 130399230 814009999 858101325 934683086 504586816 747991889 497369888 920273779 374599809 426153220 214368235 517072811 592170122 898828185 566038086 740170333 868895126 938961522 152845536 594623369 849248976 976637795 331157079 486067180 696373297 880686666 489434442 648029633 905902948 986605094 860586303 867416884 985709786 988398397 76888115 195865859 555726263 679463752 461376193 754667885 385340327 909818134 931493631 961199967 113554643 975967722 297623320 564115170 202096813 521681358 208254409 636193275 170068656 589909079 601505448 870969359 904093358 968252693 202152342 598150578 88601178 739517839 774320227 861080384 199474326 672304710 498161678 698428714 477944385 738971765 428991932 673572063 644130782 976909981 127911929 153557300 605997735 606991336 79248440 262590783 236257893 919326092 972561017 985970089 828699457 860245983 610506777 610847024 926461707 937373598 353730827 972558705 883298746 932905455 217592688 902238852 828828598 885680205 288209434 762036053 352110365 812229880 193667924 819804638 184228767 394734175 728967100 879053320 201114847 990973595 96420099 925838177 749795531 834401843 624860117 628945807 486878023 992194890 819119608 998882410 299521847 560684455 337056387 422667148 69489104 234733432 232637342 395880223 942553994 979595159 685152424 956970831 838592195 949597034 650741879 921268549 353915722 472008365 296141977 651263554 937972055 963503324 942331949 956717770 443908852 837840448 113901 494692189 600835893 778678575 565153913 787539086 989222130 989861375 187903527 939111472 257660711 714314100 736766852 879786866 933063046 947699983 917245099 931108910 837338871 898217872 106668117 543700128 410006273 578649597 383472804 666290341 67063032 389431180 782668210 933210205 226466949 486056513 539518751 907846963 414423967 775679422 714585969 985863002 981259888 993298617 774894845 970508359 708766702 942652943 60231581 72446977 800960729 889481820 403474437 944091254 358448431 962408019 683778176 686324086 813676258 968702184 186001023 228175355 407714364 548154254 366182117 383648285 539893576 730250668 681802085 689977014 666017268 731745980 499266924 744239587 450421317 526789817 172406423 285954517 623702347 683337732 718108003 783556089 168288924 235602949 471758632 966686604 267775859 669979238 341892503 807839024 259711726 945051803 933174520 952844255 274891371 848855216 68113669 124631792 440956285 909046062 867763861 962050839 457868796 574271404 699100227 806922519 915021693 985616959 750937723 940876319 711241288 867858941 542090210 697536294 400711708 930457013 266852809 878706486 784957142 800921891 52510745 992357798 778202263 845135525 579427726 792587657 588067821 702194733 165608512 272449743 339634712 649978683 666660586 905544124 491581343 618275619 995829180 998368482 811563275 846152897 989074079 989260590 758701304 939372246 326079339 334795984 718402010 855191883 655466437 919052217 526287233 753662724 149278838 720292764 563804038 619269427 813172597 975595424 426801178 692162158 814964314 894473339 934507034 976146859 514270228 604677396 627373313 707719020 274574091 940916359 126567561 572085032 565245257 648295008 704077511 876437940 629750653 926745849 743739166 825853113 217205259 466577306 393568143 780936797 449680217 697607155 873631477 919041544 230784027 364751834 316559185 861645892 906963886 936233310 257039383 591815604 135353924 916593368 622917613 754882905 330145218 402527470 660316741 810192734 515302596 946977650 687805091 961386190 743230194 873719256 449844730 950288399 308754452 797909371 566404945 830878473 714699961 976528910 753279900 810938612 717801264 954158574 549071853 574396879 803654032 947588123 549918302 988454745 612649886 759177742 924727994 926153036 22588402 562309573 922027564 942661457 363580076 379974802 612915990 839529117 453874998 812853054 854953505 893969873 821137926 828724806 845577572 953895359 574557334 878128785 24778264 261905533 372360332 634790446 935876548 975404597 54336303 508095592 377225454 558196817 439360013 842600877 193949212 617334133 794123026 822529332 186036888 393937339 418641432 471597002 142524868 762899448 221149806 272029986 547149027 865553580 240684777 726703920 859333639 948434680 675054784 996436940 822225184 883609760 140075433 850387827 777460590 899049692 324704864 624325555 920418600 941164762 991159492 999306919 77277021 497282394 724016924 794288875 965139791 993987341 433639182 452407044 142967503 289010259 934892424 949312291 860562175 920487275 317907234 357669102 211828914 238164373 76123102 329745511 916229262 932731106 345978503 480343815 138203470 760073824 493192842 592876177 454287076 509712464 171322683 341709640 871411284 936544811 799240271 898996955 909968607 980866348 902663341 980273077 595993074 688431991 349995705 686311253 907970305 951136727 930502108 988433120 603681715 704479768 933006450 937139887 345507336 573738816 729233596 894730829 577401146 639599213 163088407 611672291 703479948 977274056 800200179 915834570 118286444 509524045 134302996 954138747 675604073 841097457 755651996 906518487 875035990 886908293 214810982 758221155 495745687 778303216 765934677 888363267 307923335 313497805 315263603 736643864 785399106 926573740 397977649 511624614 959323005 981508641 840733589 989446826 127943400 240434200 866177538 935474131 508459204 557590844 65008978 853068223 210304892 239675577 479216129 687582922 872403477 934892899 983118741 990848602 326671968 895469453 947193083 974034297 499292334 824348586 297011623 643357145 806970610 846683061 858705077 859465655 135259212 837630757 141039697 888403398 635425424 956631513 251242242 617147927 297342460 967141876 277708632 558290265 869715750 926903553 289402056 457763576 662364407 797015873 642023214 960508189 584982211 957360382 95554478 137426357 814767731 989515885 710563543 790245967 198955347 972644722 639414964 801911792 589064846 999578341 598601344 885316680 281952166 838625854 589221620 703851772 170400891 555188726 618948420 695726605 279360046 926179243 625275058 719875928 26273506 595887914 486359919 606959971 482181819 557634277 75769870 697125057 416253692 802440891 168176607 655777153 103237853 630751150 560708019 617399617 165766664 746912713 184860132 684822159 342467333 459865257 341141619 412965686 749054192 981294740 509736902 871949795 439179959 535920024 335173805 536920686 601089162 888667604 755696147 913891050 6998352 575558636 112608794 624319075 282921755 298396810 497968166 750503160 393232161 690994572 193302276 697330998 545159723 716054242 513626897 916408701 77333279 86295134 100878478 191572539 145998174 678219082 237002205 970904124 948589444 968806442 399167945 496964722 200743760 423309668 821131379 859225068 547768718 838070004 992182735 995113424 658264358 838398353 235292802 643848004 365968493 660878369 33214502 112934389 937300761 992134636 466444653 685736205 120183539 369309573 467727545 924764855 112969832 412135973 389552416 680123906 45308038 460903450 319722644 319841696 693753768 839259746 493152827 641356268 523455450 984912451 259391993 986506794 88935466 298909591 254495016 536695900 939548095 975292347 591658833 834198221 507458059 578902550 942578092 978326243 911282146 986978415 40340645 778870657 427542430 933744799 960413030 979676713 513010057 768177427 436527565 843787344 790174080 954639340 259716332 424565031 874939528 877797689 373213897 966089458 15602719 609813164 232532019 600665068 318360726 876369744 971275877 987859334 377576545 791855802 928722922 991042719 6446309 151167244 203278805 329834374 815449232 917448208 141046278 668763034 411599983 893905602 262983723 272409330 24433269 293135551 785169312 974348367 755575660 870250164 832936559 863082353 299314610 708049933 405573094 467131024 907459777 942251160 588840574 814529542 285958052 854295592 913781773 995212814 537889084 824988691 397269198 931057266 756150856 866338053 563287048 622744226 835429483 875518992 699226452 865542707 406390567 627793640 933163043 953302539 184831222 700202395 880501712 902394380 659090393 873744302 653253739 659682995 828153701 995920724 755274293 816991874 521327170 563081808 343472424 972420649 501424927 999963502 955021380 961014307 498604152 654760434 460933162 847509519 444041755 527132384 399041154 539313099 627767546 987463812 705684328 937825777 754641063 761146348 209539611 998386246 541417743 705137302 220846591 726244834 89662376 190760263 323644202 392958595 420573307 630523733 701716769 932210275 302807229 856406995 802604178 974307566 202555352 723724237 208495698 935632858 769231919 877398706 124451785 733862358 563879205 925334825 44949946 744487991 511702287 992279305 268856582 730616077 379503894 536310033 331476134 411769522 272551479 735250585 180689958 653447860 852782382 943351021 806528245 842033789 747768660 895681799 228731825 797956541 347892690 470077141 876168463 931365156 950087171 969840029 268620676 426111583 179299485 383608069 234412994 487872587 588642252 805321988 845084536 869688168 974094489 978227181 253661063 976875704 538739068 560420639 228954502 612301855 835748338 851068065 224389245 991851140 360198067 846755420 646184678 908803009 106476300 408994799 218620273 782810134 915675690 984965519 420248414 733050598 518062446 747860607 948748560 981188180 403051631 966726468 466563866 874457411 663708756 920895454 125767231 524555902 827278951 858429761 827322750 994798295 482843576 942890671 316407421 604455862 651713059 926161531 82533933 505332683 636440191 669383697 193008065 446810015 356554633 802108965 162539947 731571017 432509438 888100357 704390495 892667804 900938691 930101700 387306485 703320965 645595760 836009421 244434959 937182781 304829890 582643169 715063041 838418384 827458058 877451993 894031425 964017449 331237140 578988586 312863616 976009695 325869203 673586076 204291450 866400644 412442830 910959236 914951906 934951296 606480026 966294477 397803041 934084195 77806430 163128923 127506991 813331695 1867569 720846177 900822693 930082154 189665515 529282400 264936524 892119966 390235603 447145879 379133584 675639171 190256951 599216253 26712856 534489314 1515175 483778073 696097916 855224173 39371350 731883604 933704439 955071989 165375115 418638018 107583536 538951635 383187259 903010692 235117621 691827125 854466863 990225872 177063510 880486548 206746417 909477459 388024363 554874084 119592880 787959905 474602243 772689035 177945291 912340362 125106146 533728662 972039243 989133382 419508149 807063046 87049968 629554134 745479945 883511927 286941589 423578853 932891720 963343438 349010887 972747380 719187089 977870319 685978852 745465114 126445012 221973560 15676852 641745275 420741010 887306272 466712065 720672058 435860246 531312681 232901642 713367671 131639277 494388612 619152896 863001585 893310115 934990722 702666559 984894544 738884430 757888267 605305584 839199913 696315202 712368734 499124242 908931702 270983569 930529830 669878576 695057103 589304151 706094430 298205004 885313688 477333057 714963555 258745399 964033349 263418007 493436010 991407762 996687288 586700121 847510276 64642651 337372390 936104936 967517579 443577742 794883486 745340496 945314861 715821425 952330286 810116691 820829366 98292378 186819592 78133832 322416468 34195771 537960308 773436194 890100805 190578957 244129051 172404117 233529748 186230514 452322338 961341975 966797716 438747186 514169389 104626055 638915671 543772679 828735260 600776805 914280544 924092443 926531033 987124805 990952582 957126849 987021288 988318217 999898088 606919909 810348395 799403142 813772199 116521407 308829088 385171193 983580182 658474869 865411483 632371276 694592226 598343680 816340940 970106074 972097335 150163383 351879740 406109862 599085343 685097340 902258225 903478673 974146786 735332356 761780805 912210340 962641769 940884846 954977241 642531261 680597228 470708307 489292065 285513823 288385185 551664924 909684467 460187560 787840795 544186702 894835355 799298378 988887753 133116467 836943131 386081548 762926502 162619283 574497380 800625199 924843615 954232857 955740653 891153908 983904870 676550158 679633924 209508091 475939935 863719252 940377732 661002299 997149097 550453170 654568129 272269122 285255934 960749011 970539484 255478004 822895246 266114662 982776603 726909724 775659766 842148635 881397303 684082473 776467860 111222929 439610294 920573834 975914148 829099665 860276067 86343842 161280728 302067552 348506699 801571634 822305103 357283017 365988834 444521333 553037321 864133535 917454127 903077260 918649188 668910305 976073265 484210518 503216515 594242268 803346300 262427729 723620643 614861103 698395148 554590984 941298743 693996803 901331746 395835177 973644545 627040991 722309233 900877072 908436353 204596273 307066577 485672664 777828805 530241565 551814675 820065683 943511131 475046976 884778151 871222054 949163131 397294743 989415177 675748184 878924679 160369360 450816888 109288864 662821589 926434584 934414266 751987216 867395484 176118480 841363926 967851015 970158108 719168659 857054982 74403655 589592899 900157841 939116908 708392942 947138636 814545592 823509264 240863720 512350637 746190957 817019517 80078743 586748467 310484134 392467186 487574582 891412825 270559982 462335552 590866018 889365666 795555526 950171979 638598584 677884463 159428651 282566339 290488006 396408534 209627621 577175581 625498469 912881667 318338213 899245866 761318475 766178431 767447134 928400169 872247168 932633078 933587186 957238987 49867552 648660766 53096734 644693976 59562111 913384095 804238857 900520189 518936430 862555546 676722267 700396076 586965708 855154097 915475537 937000541 356203731 909914059 359287136 574030321 155955630 322543182 212484453 538826892 117752940 833496186 99064549 328643065 574276220 871219659 469307339 882712119 72726403 783118883 35745163 789938336 546839710 704741305 747639727 930944759 907669332 938042768 394234919 923500602 239936681 927718108 105300016 616004260 365683928 567405374 716944832 914628750 589421174 822666313 951562277 958801445 564999385 817541563 189753151 637845331 434567305 960906021 862950407 974498903 282508852 375558152 885685063 998727592 832357501 915083371 831489228 954124932 463518904 980227121 550129293 802132390 87604356 873358002 461038834 595702873 807550720 854186201 616036112 924343615 120835030 959483579 119285744 603962719 907921189 934560226 248342672 899789438 880523479 900552262 762550061 968495471 918006823 941233159 409461312 533329992 300734459 651861723 673991529 735773816 621984572 907211866 478719044 691554213 280479177 944827867 394682899 905757473 364314160 847895054 657236902 832137712 418449728 599097457 725372477 790695208 87410039 252965972 75379300 954657013 254351341 751015931 104858612 540729336 228351551 627353310 19384099 127740224 619679524 938231216 144776037 836178339 800630393 868274893 713430022 971627480 343790990 587175847 610066344 723389372 166027051 468843776 63739353 157977718 369400360 888790752 648658978 979701838 399339061 483684270 497726316 818700452 930802786 990147476 625673977 784469742 956714291 964358130 634811957 896541449 469634036 768752717 517300100 814016539 828329738 870250542 520026009 616051094 294854527 397528871 600773471 959220574 894637344 985785018 805858997 846535854 871429756 941852984 257386592 851248409 870127835 960280604 444664288 927511434 359994557 836856772 533045282 936529321 369107404 700395167 365450065 604025081 654752036 943043497 303824045 514598211 951606107 996885679 602582444 729706045 979073880 999602138 734215065 804244306 607224399 998642430 424224594 892283639 302525210 888976829 435091049 679218910 348773259 844074235 493989802 877739565 731563372 795616366 583073573 861030295 805890663 969160673 925215734 950358791 870281175 921375573 265889449 886931031 15904665 606802483 182678776 610057957 375021815 489459262 78361690 277521224 170923584 871817528 490314462 539557171 202699453 744366504 476296459 952824660 814936399 878961249 673630799 675970816 907368950 934704649 36981873 376465390 696831608 802218305 868406623 970667342 961502329 985585828 367453622 771666174 983280569 985856356 836851084 853730014 234351100 511050143 499340332 908460572 440470751 864835287 412523783 715503536 383833519 724420869 292618401 749939866 248679669 308955477 323641421 734782636 994597724 995753115 299940271 741419172 694809633 829125216 30187874 261667579 262450784 620147422 521999020 949999454 761962762 980480664 23602485 178878756 432474252 432862451 430295417 951850435 133994923 239275451 618316118 639144318 355303339 976675817 60570321 635844413 213166165 293412660 404154031 938595832 113238164 360106821 665186742 772375233 136926016 287103344 852100302 966908431 407734410 845590583 9447782 160257818 679691053 746517758 698755762 943209765 531086702 670652687 324605434 383154671 608521564 666285091 737773369 762939733 651290962 930470349 17209242 412772256 598706217 800688111 824873404 856923281 208022287 777065213 920390230 953502604 273813227 901909554 897106657 942128977 610918750 949380858 425294592 693013705 548838399 870049594 353178260 514872292 244594956 395881273 506709254 674121849 418075429 560595363 72488939 193481787 326170294 997922295 758910856 783071440 698784657 893023544 908537252 964483904 273792593 444565803 518819103 677209755 222192182 900161186 593330595 594038698 217330538 606750580 429143657 809051241 847298004 911458403 407283459 964994434 840995613 850602721 741510645 861794544 597258432 780944705 369637343 949844329 925886926 985478731 449745062 735852875 110008223 550148679 413676086 905998840 736137337 753544464 200024376 217851688 96070479 735663325 444118702 742151625 193270019 230168539 128314261 155114224 604562787 893399514 525073838 912367882 568704090 859410042 488056720 681033074 148814921 609362270 615309107 733452184 356127214 622040028 844457156 901244040 710569221 995260730 647797579 722806875 423911621 991070613 262126709 853850004 617020103 865680205 812043782 847564270 592843881 654156484 881730371 981941619 953898351 954918302 981539168 989291055 908537583 991347594 70183674 498829890 287051350 554862684 12333437 66117708 899566497 933752880 549582808 587931150 915547244 977125352 875946293 990676723 412882853 519044865 474212208 708785736 338976680 919783195 352567688 964957220 341888616 445693753 262752786 874377498 524728520 606975476 587080375 907363727 71171017 550294761 143791534 818303660 84818330 373061819 384126988 655027106 324918865 894615881 935723023 998389918 439628891 612528560 726562053 966304175 326360304 624955308 720606159 873657860 713391679 870984278 545480446 549163311 282364676 627594690 393583046 664281435 849085087 953752430 604812001 708091127 709389105 825807694 200359552 296971385 356956333 536388095 241962367 840592777 504852351 865669434 462925507 618002448 508305227 625936703 220455114 364916928 775152417 944317844 809285348 882040230 515840603 646642139 910707767 921272992 739527090 806967116 770713706 966446241 692621689 818062050 432397180 965951326 922009398 930267351 728864366 785171896 121352711 345131854 213848827 754613990 542124691 803340054 849558669 872120565 600566769 885129720 717298297 980748346 957596825 975585756 439279988 989333364 163268850 793084752 967770945 986898844 526588929 539794017 293352489 785003924 123790826 239558898 368473627 950775843 604096007 763842949 128760690 825188009 792305659 883476492 596533443 944908933 41157832 374391450 404086818 833776066 403865862 798272252 317242397 520423262 624832295 993131348 114429397 287498745 299891805 679923931 84286356 506852439 669661091 849436618 285018108 560288927 661386739 697221180 637546683 725492492 738848422 839773294 242145272 356423653 465170561 710407914 7237284 33212160 120630724 475180841 610051780 734720196 463328012 656689820 254896841 320581901 292863832 471120743 937755242 944556953 847703077 964985946 514311613 796505725 765757481 889416494 596298993 832461750 522111762 528855024 917863623 994331730 468720085 514230144 34150804 919341507 79991920 531417731 160561237 916753877 303953492 920059139 841035881 852239442 103996928 647819431 454196804 475567103 609616799 644499668 632780055 898314617 214511747 582066275 684543177 701723535 747604546 792929805 196218223 408144266 409600239 731908602 774480575 864809135 976757896 985760705 4141244 650819305 743762765 872692827 452211372 985787800 403848136 853910468 272589770 319808463 327786097 854188488 843883394 894170535 137412112 259960039 15203241 632416410 903800551 995691956 695980225 841187122 833199848 951030643 763734585 779575369 451285425 552134585 178473630 455618790 328242740 776215000 196144076 801008230 909160772 974535838 966784787 978212083 968569872 970676316 777144483 864620918 419170216 893597533 137982632 939090546 219395843 348445053 388389428 650971586 347212426 884943570 794559319 943047372 789746515 940613480 507627036 577618845 598092290 996245774 662413919 675436123 448467388 453016710 533205806 644034846 531768769 707180292 433624761 738762700 964171378 977050029 696385683 837197860 823666111 894182711 380934873 754509506 97831604 684278549 362851864 869714441 620531959 775806096 94665940 253793798 510991880 735292339 483078848 513736042 539185122 960712208 121142064 738666352 464263251 976189819 600980304 978366792 169730965 712560643 203710748 688565140 54648611 530156904 347377716 596412582 456994970 868377960 143640424 494713210 518308093 784527669 481979726 826423245 906171213 912487565 898002094 900862102 151388742 899848062 479426316 849288679 646720334 698326481 491057725 714620309 23215472 894695162 949733181 957157964 876295653 973392486 638610571 876904303 710610592 767333142 427145600 871685192 660004608 841794076 465909358 891620977 919105299 937651198 981168926 981506961 704998394 810273303 402399796 534984106 957917672 984459368 647938752 987167402 609495133 626225354 217880103 310397761 361510650 534630691 654600002 681733668 108179719 764246576 254853349 764100599 694895426 976029246 407494175 666938055 655505484 861400601 701797251 887451360 380809723 981572786 345605974 637109686 192923573 521689989 520436528 640778825 770767758 888856342 577509245 782580799 626297614 871345680 14819231 625844915 643980091 783850846 113403291 974054719 538835944 743109684 417410501 474948969 513642490 818775864 113697977 507518321 517927989 663705054 125236325 282451733 583431128 654407973 133596053 713593821 640110536 781915411 978794727 990101465 820989915 845316001 206060626 337664908 131038923 502703233 457829510 844019635 278556129 998376627 416059188 867470011 622175904 864783300 992357839 992522125 873759389 942691505 621139817 925589122 492278620 516774632 35059949 894413775 889908347 927344379 887874423 899723585 803949163 818721851 805198172 874737365 809025192 838930290 94750691 607576537 969848818 971811431 353554610 951713061 456986558 586206646 389166458 556932598 935679426 939606072 219675531 977221378 448472248 583970002 444366868 894167946 665277646 771579638 333886024 728150083 543170337 896690981 468927708 617951599 367012417 564479044 601783772 721779751 604437456 729934279 653697146 883186141 21159921 107355496 921769818 945365199 65393712 81362486 602270693 779518463 662976355 674029128 384991128 959259090 65343414 991666818 104437169 485686096 678521563 844993448 131473668 627181847 534321694 918123019 596585211 830536009 994132943 999389985 943800793 963942982 403581936 701874111 967568758 973510673 556375880 705466997 930600616 941538047 811184636 972069382 90506400 190526131 168866875 876121096 271987210 655852621 299878958 387999224 641426896 671854929 971031214 971198938 399184446 429921439 161567248 710562979 807977302 817413195 314581549 903495111 912366897 925212403 143096796 721763366 691495621 910314804 508217766 632503603 825007541 867051221 369682432 685783567 873383915 887623049 475445293 796191101 407353833 919708181 841934957 877618376 762542115 901030892 554256473 772287676 33522589 237859823 15389633 825490754 596159516 628137933 36751037 638779444 437111376 630292373 332253336 772303517 308868687 466859694 20456036 303590520 364725119 440077718 165131160 780849599 147247052 707656571 547156065 709544310 665947530 960295554 609991649 674938393 473932375 733014498 547303560 906172750 460472680 787238595 28030515 788390988 300929421 758124623 274003471 627948896 964137114 967861883 511993393 952897959 634723522 862209366 353679427 841797397 751882353 798415182 766220134 830095211 374486371 933370032 378734868 894753845 91023977 478404900 371236850 549478716 635460645 722126412 204340839 482545693 733791809 865705433 895195346 917174568 655400050 750888915 557795764 567297908 218983162 451856317 478086100 612605130 651134101 774639319 529451570 717802377 569877920 797619345 519347127 849348040 740814157 924347275 154818073 393863876 559246350 764568024 441556133 794394076 752375738 789036360 406532034 588721229 54334998 112525790 579198509 937058461 721427532 914429819 912488214 964696308 463646629 685332240 854957923 888673686 897367941 905385556 893098113 993255506 82207203 145366038 981014409 981465431 124606320 412274794 419932519 566823599 902260267 945122924 718262442 736543178 968150814 980408830 684104767 714755094 87726919 112044891 19615963 198311034 628405257 650921806 352416163 820274134 221044845 357288216 586380155 866947408 219884452 853295874 164424972 710700619 958447833 967737343 272568035 295529215 234863996 329596291 919082147 921910531 129967281 773655281 500119755 884878077 790997966 894005786 349820133 549518617 262294704 325904681 723147245 761884396 476612266 800878530 258440793 718226543 951292418 964381666 291632243 617013740 215002072 986868852 86669110 776573642 800209062 852985976 672281336 808404588 121720541 796380614 563170068 991081018 195399493 558316166 871954745 934123018 432976362 573113362 145710906 801575772 370566398 551054035 694468472 937084527 725164765 917377196 169278137 600891016 6935880 7740477 708462602 848724803 78566105 771055998 815423346 972956086 452819259 909340300 463865078 531753651 59973407 520697845 132907516 964713060 112663324 177608367 621670678 648723117 543994758 607259029 405682343 907851192 452726177 802156157 456913774 931268189 246970688 486980076 767708709 951249518 116347724 569959429 335497495 539580027 809394403 827171411 845720597 997969922 253120769 516285753 55888254 553314446 191395056 588565150 973199572 980958183 674549180 793675323 228840440 286496850 732257995 840513838 443460026 801435556 906063227 971390109 750991729 880668558 840480127 850552432 229163628 563737162 49013629 364901042 507481850 986874151 407761353 616169250 126720980 533007925 664139147 665683788 392181863 988286064 822215135 983483779 226367680 768719670 509627303 742112973 288626476 520150703 489894432 841201008 524181958 958715988 689598705 732057440 915514254 949230020 761428295 872979094 172898940 410767186 519979293 788711205 326667512 815479591 560278776 674445460 231683128 930553478 612671330 993012269 760579615 989303211 155940285 611636669 761763913 818793483 806830321 978180588 654512254 876986533 256702486 765269556 166236827 600848915 334811644 609555036 144286929 177071710 908962378 995569752 610179262 738843664 683639748 715234648 207833535 411099876 202056124 346195372 905003717 965974352 7532920 194650349 21337235 624863153 668909201 795241030 692629406 821591664 537776053 887534677 764438759 910082766 423770456 539196348 813765241 836463404 519954193 800014311 567693689 851665538 655862946 815294135 841341335 930888108 289937187 954652763 236569389 709990066 514739335 607127202 526617920 707002597 695438729 885020181 520842547 920270980 38684363 223213947 102299759 643825430 403116318 553173913 992688120 993905604 256029158 880249992 200654695 615753170 434236356 967823211 977450565 981701188 408506023 868866061 257977132 459527755 439061237 569731628 309512479 643091833 733953744 890326808 749750016 754852291 901924061 963488920 219112202 507390281 114313895 698767567 96358615 910886859 607171741 918494824 66179195 869839547 216374792 649002291 8279220 358624048 289406625 636983231 476722738 841438040 285000397 289754774 803184830 963896407 66614472 780178045 193956065 409324022 671763544 893869766 872736530 997859073 98856997 204313342 272471786 330534088 111265067 546258494 635848671 931829635 5085214 213851070 109601194 368107472 174624972 961585378 162366425 351697102 428751115 755064504 202456061 674513572 104847707 611983272 788439108 844830767 152077978 953535063 55030927 592997824 935049986 993173563 769036900 853080493 175814692 941994580 307653015 446207140 948263481 965927347 711794461 712549065 660509154 775478224 818737176 862288413 874106673 905223944 284060815 783892557 602328782 694122689 833729406 940727093 756668351 780918023 369008760 464657133 386302288 481074646 982134001 991958402 566069934 773874830 939763056 999863303 387207103 891497000 127637873 853492946 176214049 709796774 562019061 946176661 842312121 881830512 215836637 322125869 309852400 691647553 160727585 623930271 8181534 478701977 169112248 763088339 207908298 588004110 336650430 890531954 241832271 420157223 526070787 832542742 996926799 998006204 769651309 947609469 764021968 897761746 873270116 953259889 427008088 977971586 662799244 840176394 521022667 939495604 414254036 682202914 53185258 353496431 345321392 662468234 133083785 628032862 606286103 732328003 721483116 934586548 3575942 12436027 817576881 868837666 605378554 717237436 710542066 975893931 448676548 685567492 818841887 940281985 553811109 850593220 240922543 606805388 314496821 960652873 979982397 992895350 701655267 964069989 223623789 857603272 151420169 842163120 539417835 867850129 822701130 863816680 626070843 892470387 710386729 863633390 222393894 412484371 91918142 372936061 541799903 832346551 810715614 902560576 348226963 368507779 581174208 811880025 144074629 838923335 123588157 738502834 473696713 831582594 88121427 101109950 705882417 745042872 679388728 865667303 752696278 876514319 199471522 454144260 519473336 976148171 779069731 904176582 139853565 204041301 472117347 860992333 520100361 712432145 796793286 986863445 470820337 717438693 598677932 829119578 333481008 909049222 818046986 996235795 489175557 996802620 843156951 963039484 982571947 992158471 692744441 842912131 655572038 774785563 693992208 990095191 797775376 917799861 992095596 997796059 291426802 416165088 342519252 701661123 670584841 838574557 222885722 765236489 27992399 432355235 326994905 414713346 6171738 770392807 44216225 988497216 903070730 951421476 743141534 840499611 638095171 802673691 701919926 715153828 251622607 546133143 927636319 947915481 418458580 432486370 294910232 527647083 52766677 572808188 339997931 735423649 926542539 950834617 903143561 922267767 264836914 886146878 25199173 119343662 670617485 950313057 281455695 809846946 615892193 901258891 815980136 920741228 974044506 982828135 266273762 387081573 180596061 834390993 175921530 390878014 867188064 911122206 706971912 981365717 673625862 963388910 420132921 815434007 780539378 972945602 826579181 840914276 760500759 886117460 362106941 687676495 22219498 223958785 921691363 989351402 678185553 868257811 662378717 914537809 983218125 991488841 255431774 433576311 53272821 208736228 485867661 703303212 200592204 668488618 572740266 724570354 105206176 936981737 234750873 395986611 471667151 694045102 334156926 812696736 237353596 327312427 474110855 792247355 639108000 944794844 199084074 794525174 168488231 583467898 737290216 743561376 28058969 806672728 650484863 656539995 710917474 923012495 769258395 829246007 143070812 994644572 200752158 988137472 452400883 829013644 344165617 999499441 503563252 542685905 585739125 615811489 249543197 447421175 194552409 310299664 334568645 916547335 388877744 931144350 103711087 475695447 628276132 705749366 651570294 841535675 216625100 777281452 927299284 969409186 774516859 962423965 492895640 862526307 530107407 678427433 141151688 639342284 708494845 895302142 592241079 958344554 413101936 757115538 929992771 989910175 787772258 821922766 994495569 998915062 414873912 644383228 574475761 711317478 75056812 834832860 261992194 472895642 327892611 836743009 393940874 751085674 153754852 530230127 818247622 875459535 432337119 499271953 836657183 894221148 506579100 858956496 803566237 929501633 872186145 915253740 914111695 975666273 608623115 936176954 232077694 315585292 639579408 940581388 673703995 870235327 397786835 906300720 760716573 927010478 166843012 967751361 769931896 846884953 208296147 878030476 907058207 986644747 46440513 233343002 298606632 353664251 529065017 763394510 414143359 556286382 306481290 841617614 686655466 795636031 469697592 764476133 498315090 527905474 684933 33543943 348340631 600761366 652848604 771327244 618073961 864542971 538008175 771664258 610233417 983159782 56469762 380374839 555348268 664864315 726814282 824580513 405197639 975471851 623341658 868770149 384123965 939378530 261080974 949567274 262789409 275204665 310557163 424019899 272549012 985762023 447931262 767442936 84051384 817125906 877489418 888896456 292884425 709716861 534359981 550019259 10384693 622915313 845636033 890536627 971577678 996014778 40298223 545272023 794784443 845382443 988405281 994546543 7496683 863354992 422027160 471149475 700764921 979154105 444485221 853059616 845404001 848322951 532872925 968697112 707335041 898708481 382807039 751586532 9736934 157491379 845820579 934355794 959657611 960270410 505381236 963943411 886700612 957590966 26141352 739924869 868314132 981313021 761436656 808308010 821982923 923207624 800320368 884851479 57797767 792810015 450283327 600979491 430793168 807242660 586440081 617907468 642366441 900299170 52211803 120030364 404972276 515041038 61105339 95944266 15477281 566049509 357128246 760945079 917808683 972509027 445512998 511503784 283298294 743552433 295147432 338975007 444204030 697851526 850789024 876895568 80081932 855725661 836401962 920201040 427650703 872842000 667869076 961049156 53957867 234592493 805500316 814442251 86809688 369796900 886722683 985263949 119610742 211810882 171926814 978899543 638029202 991973065 968629917 970752640 218357339 912530749 69240263 861097053 103586638 825090897 287423093 694259434 784436888 871393427 554270705 919159994 793630399 803316968 926435781 968719322 174009011 369556606 74122525 202967044 440116516 977268549 655842177 989117186 445239738 840082990 90168877 276962964 101050556 790211365 595804753 843412822 648785069 758271049 999736132 999769040 817117593 989385365 53477284 799049025 545998130 679975060 82111221 443864569 277402575 397186291 985715844 993142317 776166275 842058155 777317353 988427574 517683095 986524289 884194150 904944262 668117628 823914797 50062516 740924240 366032792 473573052 651910696 971198612 823874555 919925814 612495350 958437427 836755164 960505477 268441193 701575374 645085872 937371715 861270196 879116369 431155744 484850036 417049718 526459320 960878839 990331225 652147988 948720434 323597467 414985136 812442943 923433466 562108380 925248578 14343558 360806980 867306966 868548466 214019496 387664006 474412332 574308035 307353990 420537194 702526111 972831307 44655965 306062458 138929505 783005839 320195968 792680142 118114186 994638129 747300066 944899052 986752696 994401592 284652490 794174936 950758605 973780864 192205728 368147383 177690735 759327384 560108082 979256295 219060956 222765672 209997040 620252009 471393839 579060880 864140724 954432653 396868724 605536622 336872088 706829733 410656455 930303310 339207039 574340741 212043725 322991822 268616606 665047510 436835161 627270609 66278846 414911587 119692157 921285887 483902258 550118095 587050656 924048107 603789454 730549298 709417654 747937981 580185075 930240966 568061037 980999391 585642043 818009240 248198427 543494326 763393403 959769593 779315435 867770799 965346116 972907449 888648143 967808020 887183558 992062749 898052566 994365715 41387474 947318535 486739173 943647033 660633409 686120145 539733362 600501875 66960501 803573501 734780805 847948734 257525143 601859503 540565072 815465424 660365992 746476828 437364180 491128744 17894718 221321909 771693186 855463023 249507499 382811762 865209371 986421719 38849625 753000704 707658544 841211100 311923384 554586665 623973442 829842798 760522576 905885723 386641352 591670498 662587067 921326388 285165630 446786787 527385784 969929328 605890861 752633851 692857031 841785441 517488864 657175863 81156194 691029831 602286953 760322234 125175668 228546293 946125346 985423897 376455694 799984325 46921314 963578922 142995897 226907052 408626523 967970704 735312025 790357899 32752538 136925673 778163310 994033923 323090132 816411916 348949287 750822015 452510082 876905603 459512474 779576011 799885663 892664451 460094787 531264744 12370058 514233534 128109747 344937513 435367666 835736055 623594045 911251376 91227204 452552037 7043552 935659844 877937488 985410158 452926379 503580396 977924492 982650075 900885472 935710103 47644754 814975960 815059346 925095180 428004748 760300761 905198739 931090217 49011399 473277836 423113206 503013466 799857974 869034438 964379647 991727708 389136155 797395772 877834163 885788957 745323832 856602726 908946513 943301977 371292376 810474810 824635111 959194856 712123944 946400810 840094446 844951784 340104964 445943926 151170614 708460142 389237594 813508897 305966052 683922263 895835598 924546278 320142075 728154723 229536919 884474331 619332058 889044941 818926059 939880351 809223158 892245277 239736873 886839178 92279700 167053720 548532500 835351789 774016061 936435107 881942476 930795579 123562043 765739804 467688102 634694674 562820762 815306786 951199373 981018356 456922154 590640085 495291648 644360892 217582855 529196886 106627056 359189304 834461464 908880455 615967117 918730969 11981067 402766039 317532258 669078541 700438353 864246055 10195035 795886651 270503324 701976421 814633761 839971068 411422306 936421693 942625920 972918228 450074180 937744984 605802589 807091375 213411986 964570935 505798820 848144966 487372187 627774253 862393799 975188792 101918652 817578002 111526587 514196448 876160701 985607968 538398829 846838160 976381008 984772970 646413912 875460812 60653918 353384024 90613059 451029587 269303437 836443402 398453910 958453194 481500400 495893649 630973498 860928219 269719502 706705744 808430560 934593042 969597290 986760803 368482004 596966465 855558660 991627524 604248596 656881051 155387174 774848731 225116470 250076618 690456141 949624015 84897033 921875269 80983360 993271426 666161730 720507988 162041433 586763615 368619106 775957097 932423410 984018510 739961114 847486519 876255709 985268738 513571424 856614942 43928395 522327702 837374915 872529580 641272008 865452718 129709891 830671833 91620798 503337565 725855165 815084163 607416833 682201098 19711530 868883150 715862826 861104825 866422994 868364570 709532193 924608297 92215312 742464768 266888659 722700066 618362738 751435903 629698816 976640747 953338425 977549121 565571232 800230949 258026901 937275450 868606506 902204997 509597507 737403868 189803451 395625149 838912679 865948007 330859304 710539602 648983403 865524229 994105903 997989509 638881956 874629542 95016433 167391531 399458579 949803825 96814559 161557586 466948357 686340435 666954730 748928514 205394866 777298497 222539696 808626529 76044557 736464337 262920225 340435664 360481779 431213574 952677013 967957577 385052265 449040241 345252945 796114859 407540235 528856058 234979645 757835037 66984313 741376003 994455565 995313949 773154094 902479020 110142433 686417033 917501209 977707083 582543362 688852053 813841859 992008471 677238974 693856755 526258341 706998785 4923103 93683475 206654367 760120667 415194887 475133363 442318743 674850498 250793279 781897886 786651779 894731006 803593272 829636534 91015968 208665771 895301644 951422322 688887619 777905550 397661453 461684555 735268783 815632408 453137981 503694314 262324667 768383710 585610755 919790800 162379479 403308056 356509337 726899009 661256006 808885758 483216115 746840967 637906776 799792920 249267076 425161013 316212481 528575618 405708429 976287091 20654704 814119963 81592741 674539469 257715690 867282049 981625704 990795817 367075390 500480438 866188168 954456066 407860847 984097713 547109134 811639242 528297799 781106958 602184999 944446983 801695038 822000005 769586222 956129034 212025174 801545798 923152641 980421736 819300242 821270927 954142107 955489460 524243916 927097320 568500157 775341168 588606808 917126396 707920067 971764970 331833165 673858929 783309408 848700759 532629013 755356754 614429654 713998942 435258431 660031668 222103414 792728409 390270503 406778888 783937398 865594320 949742789 999054953 609896458 798969742 155176334 953216804 837753555 996701221 565297959 752352332 738230540 833364733 977185332 981570303 135313347 194424644 677557684 865867688 928100925 943350443 8534358 78329910 924532390 945532000 984392850 993332628 851323124 887297013 178778033 312711427 332087103 689288265 282670785 678134919 7726769 139965415 99654054 299230045 364924347 484679772 905633248 995741437 240024363 246088850 109736724 131117209 28049596 984933177 320979618 941229590 126266490 517865667 398869805 973940474 440016306 483387891 803807071 890472493 123313548 964955460 454675875 754646833 428596237 747048483 147377498 993227398 769753940 853930117 42816510 794801155 894403972 994619339 875902134 944712801 706351166 796001925 90728073 658163480 439374126 844558426 922685405 931943183 280090445 452794882 853828169 942399551 653530415 677349575 536137953 780871746 102807166 329338468 136198210 725420929 183762903 704059712 650165557 819742833 567252306 997013241 946654805 998469434 604377247 842671144 846009463 885157678 81716229 549217370 846336682 871007293 985227844 987811827 542712304 975242095 830244739 854552833 349417570 592128125 755405230 912492203 714514358 996760157 880515570 895314399 572751910 877567607 479349299 998574761 946901942 988222417 321572291 739785236 632826395 965197937 283036501 543804368 122796420 974570598 630074329 684370788 705358119 936409752 812135988 986790759 396908781 418911334 143388780 284147317 289088872 496935557 368062082 501569255 319725398 438051743 580803054 624580301 159345678 554868497 979386687 995942345 702053466 839342686 677819952 820913866 716422812 758554129 849969413 863008341 991527785 999166559 150843973 592790274 64922443 158868235 11121727 666859519 424886742 550268777 80890929 357050103 756591709 992383801 711880422 923128713 188134735 946277870 201012122 450020187 849802366 947219155 665021480 741382701 791427332 823098721 72304495 344962948 812053720 827819329 552365320 553192633 819663245 837400157 322026660 804334293 848464410 983740462 962728185 971728204 66732872 991378069 733018203 799081851 581084232 582004554 425117310 597937204 166834817 692958643 694420910 833543989 444882667 589812009 227676746 934908008 651543057 763486183 64907661 886260373 423925216 489586499 674515513 737238813 412118225 989502886 198787821 498553440 191887373 994592628 766510379 967977570 599983889 679292677 324579424 362165236 322025256 333323736 688428931 752807162 524377726 887213783 773452392 803102799 253616000 865190729 513170204 823407909 3120409 575130959 408138920 615041230 662830254 694507502 592251662 657446440 416234075 813492381 935798602 946460190 680665195 939452428 844645893 850479083 487342146 630782090 771244580 854672367 386216597 721326649 829578940 971188450 650735743 928324491 148051788 261405547 58186372 905641100 984983776 989622277 934624435 947876846 140699157 872606224 927279928 947224832 974479469 991034780 248030431 560644699 835903017 953166133 45251572 397398217 716967351 852280458 103174080 130445710 294102494 645838770 568798279 634072083 73598204 598343428 532761280 545297481 519164308 925147899 392404999 870836954 472107904 814411279 735026877 979876327 778600885 960576581 223699043 683878668 91539563 286331314 191276652 647804233 259573044 808051918 616029574 825480168 530187057 939829601 795268057 801118480 680157610 770934612 398157823 524527789 492512106 988541592 701469054 827357335 567264341 568624961 103221008 268608813 28715063 350630675 494644348 873150155 155743929 888044047 506483685 696302666 264675293 715489745 63806934 434052886 754042811 862397797 348484496 389817746 871123217 989781722 150979287 612451448 387545056 531149412 393923155 430261717 252726838 898833908 327827443 431108343 629258606 696690778 869315395 972838313 840362479 956288374 163267041 580580913 636099861 748337196 703743085 968856604 16975898 281694651 905714812 913533879 425417318 857917861 814080682 832042022 386343090 467409395 204643443 651036362 943611371 983482704 968628152 994860219 96849605 242736676 116026048 471438542 793798076 892708321 32607328 852551820 886264799 944149934 436333131 900605501 308890087 761073997 847276850 887630838 775054797 997176406 21375950 87142070 713407361 927208725 276024124 413168281 285875709 608987951 793708428 798597024 973870767 990378953 487317778 761866098 38943472 277207956 188671824 574181814 664179374 941369994 363023427 368505149 319708785 929840466 876789522 888947114 713409933 931551637 870401512 991506557 139216137 628722750 555245461 818480011 80347531 911725421 441155822 626678801 843353132 958743155 484658559 643405195 15734342 51725385 570926301 795050491 48235766 765405140 361695736 520340897 403906355 567390068 936001284 948461812 918502691 921518017 138592251 882947182 125358640 475034742 211918266 689213521 952872943 971763570 689270738 901252287 921745415 947467604 35300241 364610899 19301282 565979863 952137315 978144917 859799397 862147007 966113387 986832700 149215415 380853770 624373820 977099211 618885839 858814860 746936667 826778719 697971477 812756870 920445340 974937172 362629958 792564078 887366021 902300120 691544481 722527850 398937662 507379999 432147725 814077826 344838813 832681133 109572306 227967357 398764933 526817607 639416485 643555800 963287671 980088224 803112862 820124472 946394100 956217204 357560085 779505259 177703792 350720024 36027391 359046404 941064201 962465607 32108169 156636459 363810372 464453251 26227232 281189081 330910303 580254179 299654261 824773191 508296656 917486623 802077401 821941367 774649501 831303880 690087450 699562393 272207343 916239588 955888802 960686035 396980137 638550520 536757560 538732710 148732908 349520042 389802115 813695055 170879068 226127393 938751416 992623383 448498924 614658870 588128084 592347768 497471556 996009195 387983518 608396706 40709641 517334256 450228766 744813356 664359618 893007204 569638612 775152266 166107790 594750311 260118432 926273418 895911988 984487471 914788102 918101790 106100797 367641750 12811763 84766897 685891924 740411424 845192427 935344617 506244375 716431011 189639702 997471663 682356817 746272754 262387302 269291004 147053732 330626351 277171038 888365237 100888747 582326862 935132373 993119345 754719147 897561012 124141680 912940791 358067236 364041560 219927156 808130286 248471070 292085467 985753325 990964322 552800659 864700478 783822248 790588580 884575850 920792242 33935229 303955149 40900452 679361957 973765511 979960315 1674167 793220697 973825546 978310968 725769638 877185577 676752316 818174873 899692917 986427280 741083500 829042083 947605513 999539688 441297321 744349891 377286795 868055848 642885006 909589461 355034421 995572692 520225185 583019039 440798640 504999377 542264744 847169805 679730521 852403907 187753101 529747352 561936242 995443926 68563698 325207477 996017965 997705795 240041879 818965106 609987980 788587185 729079657 783828341 818307729 980435350 113349510 555429957 307019576 694668804 22022366 151135228 183390975 814936494 870681869 974189804 545800513 781904780 702467903 787508558 530792137 538089015 41787775 241553567 30453210 555172864 587065775 635112589 252667589 769477544 653043044 936472267 352908773 576786772 225068311 882323047 143807088 442607451 517582328 705133888 454573503 864876766 432391455 914873187 940580109 958992739 402698460 753351097 790392161 985616695 715090811 760415633 647044105 822899514 620432210 715739631 546220451 896478734 315037334 782831577 811217281 956379230 831945976 998089440 644203977 941446862 697687143 936854190 670792819 851231368 115503530 249243219 199431292 215267376 303578847 636120275 561445514 731522418 477937079 596262270 183724851 787018670 865252593 920174530 689230051 905786057 252514872 588555480 309526225 397726469 551833708 859935312 21672578 151935655 780696952 784089493 843747844 927690677 220474446 599295230 15089707 436127969 815594907 923000173 815169257 926535766 202281358 966310981 444253089 567617402 237312367 309801952 223675184 606243005 230843677 543612848 180629684 283825900 409644033 594549714 273969688 274262504 438830351 885308089 436692419 669402917 303035211 619405011 492189977 951063893 844095130 917244710 507462260 668052990 821851358 994611153 933879304 939743430 139217121 968074063 521650281 632510407 349114287 930409121 224790701 409370299 720709040 838328825 255798952 358858756 63130558 876790958 973863938 987853979 578678866 669766655 238064685 594059198 878050118 881136279 552464597 842026205 541777197 899659483 42968544 546505761 898453043 959039889 63786526 867770764 859810815 912250725 517152773 964817213 595395067 657156927 488936696 983841614 23831280 925018341 390422208 844759830 515555402 794966430 156621887 841073174 465877771 708363041 183783140 543856856 649442243 684477644 849446375 915144796 90411414 713582604 537400199 662546776 392805890 765830271 874725592 973073625 361397787 890633754 873329925 925971401 113978037 326305177 342704153 496578945 114038975 895234700 29020364 586002779 952656777 998286018 337263045 803590073 520150366 634805572 9137380 9779977 141006504 933486530 255384380 833854648 884261730 978120876 870043964 908073334 734694849 851579238 302659105 587098592 144956818 155325175 607677654 880647012 428062929 908475137 488883490 940582970 938529785 952186645 605971500 963631486 597873557 840435347 353920053 835052162 390368495 895381346 970388163 994333070 207043265 945774480 243958340 402545570 793954303 917573249 94596004 499506380 709454380 843610043 46139277 664307107 988638841 997010338 523557137 791517072 90870666 839417386 970971522 999863844 307820634 605966768 692289045 872889938 767537937 879122532 420463559 507588574 473456003 528521756 725002029 921367883 34747431 904134845 273967241 437315673 200042472 816042634 781020848 888828170 213771396 590440390 901771929 965050356 388327708 685100464 859712572 901598176 917001173 960162759 302237918 427836424 213590037 252551034 610296172 959496404 227988497 586394348 10359461 815891907 613214568 779802732 889882830 987266153 359471409 933055206 262977300 898711981 142605365 536809902 46291453 798180409 945988857 998478455 313542283 740606269 363696 327519917 142273746 721150998 609401898 651671615 240579348 308598361 625464807 659281738 920664123 940500713 300899583 373805057 593931812 601782373 141951286 164953220 828340144 929226494 946044984 984341551 865503079 991217061 142622680 463631138 957216814 971076904 60363259 849825154 517379485 697575352 530814915 922668583 441363343 856031968 526227761 976358874 752750270 854834400 807581994 942857829 975104839 996482795 254656253 475620472 197409323 626053610 625430187 905915878 410357253 667597566 173564400 546248261 265896947 270316325 987709357 987756351 76502605 419309590 143799032 396118905 619987932 900845169 917064820 942550054 637598005 964688537 582995784 886726833 568635623 806128890 552107353 664654821 176986448 467726930 248010298 250701961 101299055 869015624 989742904 998786229 562606317 938747270 650281031 718355140 758974964 764727044 69303752 293446373 785026185 863533268 813829343 977566045 45056616 459737140 678637992 753553018 910244578 992727644 313659104 473379250 124008178 376074333 184171190 662071159 883196920 952733349 957776482 958310224 779956373 945026756 4057610 549577499 311088891 936190835 583695954 996395560 885498421 995147012 460528558 524919594 131347270 964451874 543879804 584219575 100440187 984813564 848133753 930941033 605006793 689558594 883401208 997016490 279373038 518217655 72856235 430979139 441038480 534967707 2876521 168023785 634023657 717730279 690776503 746072223 241820412 512811681 188548330 916396793 530515074 753355071 853675282 969337316 60951705 385067154 252411433 804076730 529631682 625849993 603388050 676820431 331970418 825960641 37796145 250844050 326986616 759697578 994396015 999637160 783246023 854249326 453327001 868841643 7911131 46231279 944362287 950084935 679193026 703552116 699587816 977106155 70026775 366109307 900385847 953137181 784393989 901343868 739699801 817153513 327937204 748529011 548836460 701483915 106945659 231003596 810394115 939829336 853117984 904530691 200744998 322687910 551235106 745067463 418103208 810665367 371852286 712623972 498264767 951309102 804466788 912477071 129134083 322952971 737825893 988402201 519868305 604887127 297784720 936462528 23014871 826605654 915961603 977005726 177590706 440116878 170694091 731474467 126767599 839297798 255547520 785603887 104171259 151071488 376493955 946087703 437582595 554634732 573611148 989974297 202981373 211131067 910301821 923777186 733220599 944285098 104847578 985708134 909578933 952423128 476477859 983384836 492446424 792657334 334658714 694489281 806990937 920628094 782496341 802569475 600973670 974066777 339949236 679803311 370172513 952145550 467744031 785750678 929808458 945039017 30196581 982243622 717180172 927324140 12604886 178194143 167730579 774413696 967735743 996825843 875060559 945334327 792922811 940587434 668323115 792514472 379241331 994969008 545536874 624968756 511790644 962990956 733410535 767646297 213296619 511786936 355678513 797565754 714906993 866026147 667693587 912002748 793260713 824935771 57526048 108248254 145910165 247837961 105408212 788531530 359605091 440190466 233114402 891602957 544196285 591153455 197165880 428222579 748537332 989725936 73196168 706971639 462022352 619811039 457586797 806360763 243767772 432453945 216313329 663530970 601717510 668748395 337717802 488353921 803891899 999863096 467851133 512572827 484170183 660506389 987941425 991092623 216430230 457757178 648958978 771240488 307011766 815660819 388884850 573607886 314141377 955502760 162636210 654901857 226367496 270149173 392906984 491769719 884743707 992591143 305001353 821135256 401782758 569117572 697412698 990534002 612571848 888405717 598091618 971306373 254423678 669040502 740483682 838151960 87116401 408324864 631714273 633889846 74728429 528648605 898359542 992594512 599956371 715545045 904781854 917474451 588474133 958635507 969530208 990284665 553007447 672060153 49376337 274092338 242235976 832895098 710122126 822290423 576909919 837945089 222108956 520881689 342653923 772381792 647773620 938773154 649858532 708812828 972199305 973898773 777079986 963587689 368639051 533796593 359845311 699873527 52948160 469282358 891068417 965180029 516891005 579666539 367127261 393577395 72766563 261385125 704917183 828304845 886843923 948963194 374157592 683921423 470678087 837168605 165646269 308563963 579127115 817364276 421126880 996641568 197151773 869044024 310821631 507971580 207215918 652706096 884616263 983932998 385138161 895626944 130886475 161430662 113501934 202412212 935893782 978779299 403107957 715380287 894597975 998191239 810207712 888538412 176832453 405357379 401941999 686479539 677866937 968425286 999120762 999347329 645598141 866170551 976322634 981987096 194737243 749559942 528849783 670793950 528387668 776622033 936933425 995480366 283713504 955897016 544306603 964327409 537941572 887356768 553574003 910780039 752959519 900454925 936913207 946885499 700687908 792477005 389802555 929725037 680678930 930490991 558599629 908812574 157885058 892213269 195833960 948666423 451222909 509272912 915085885 969885368 479186827 606151746 946873019 960144425 49234332 951377493 620137144 624257257 692402 748083317 64195299 949711048 375903803 840969714 516521280 819022982 423428081 588343252 259736960 707992208 835600478 894857748 57307520 418028205 622206469 899025388 48251899 117418800 774788774 787658939 881815853 892240249 638701336 786821633 267415228 733119119 569130410 748967535 935438858 958588093 275574906 332297114 940637183 942553554 502954216 898639001 905502922 917855072 482122075 794518348 50875258 80323783 858662543 963922387 638640243 839089846 651816126 755251246 638877391 686494746 822406692 982878223 649318357 848907453 451753424 950553541 242404565 519998317 319244399 373772854 271712293 362320614 530417634 878143277 143512621 950550974 224386279 752766223 524968152 731447666 929635522 966355322 411356769 418132770 977927417 995750609 946733198 953457781 194647738 838131107 802817673 981762213 537265584 839791569 872942337 962628817 667671270 933528772 684271281 878086884 541827425 649085158 996844491 997437186 501507270 762187841 423781396 509217322 253975136 544634653 69581162 390039053 524209273 588930454 878507224 952801944 616403637 938814101 388573428 520209750 957545467 974082266 671641140 867365027 522854244 591538079 926156801 929636453 178112237 841259260 78742403 484951223 144112885 698734881 612374318 936527889 25727743 130748342 669134994 733437001 733449369 805737639 566669401 890035818 784001374 948700017 979751411 984640763 130985836 718785948 953373803 982644008 535353218 897372837 65234321 971558087 947531607 984142890 704427903 884621850 956385141 979856524 731146842 761066651 586839211 880676384 615157517 836092405 863321073 899613564 4601499 431636825 213762256 533962973 645975559 788845379 899201664 965728520 273784299 720866654 545202037 778914563 513477002 745236283 975675206 977692217 230064804 778372603 622305919 910500600 601592586 676534524 401838710 518528746 733931417 773179771 382257059 549536421 586846239 841824014 869240981 892018522 511546578 641441388 778152424 810441474 52230095 832888654 198006668 762281603 510379472 751753389 187924040 695877078 148661226 985294549 490033705 742713402 325187258 676117184 94111072 558017132 994540507 997159649 232567545 279184561 629852079 907998747 398626025 559394329 316435200 784037341 867621701 958034171 569126669 781679937 78690505 305905266 770980130 782304715 115323907 672122673 29781845 214268544 715928309 777697560 922456019 931412024 476006354 735548422 799204314 995853693 347102615 976871001 879586611 944707999 182352297 860709700 19967693 491667226 453528509 639801608 414076496 930150335 404566193 494110933 830577145 941966864 444041691 599431059 180265939 729793974 532116741 712564800 894381976 989694404 428644884 558329456 69606399 192226452 820772214 875376413 706013361 749771373 543962478 716314579 630738604 819615878 165639723 613998510 594768947 950099708 961218713 971200215 694179635 890786353 26278282 803731490 660160064 873512550 141712106 232922435 648858298 740602936 801295065 862411542 37416988 241544175 879890415 974522935 967132868 987522051 309981977 522371036 990763848 996876491 450626115 690006515 857720335 953160583 441163261 742304444 413595736 436276514 149864752 905968260 327279529 959845988 925253887 930455212 660371901 782480563 102310209 232910643 766062726 867508989 702125847 839959758 171005845 480907379 730980105 837455822 744370098 913962396 363128421 725793694 695784783 848905394 391353434 887781611 124355358 675107955 185420948 576190457 66448209 530335820 975002622 994567179 692852864 860418229 112310517 574112755 228242531 467820148 459575210 776906615 989176614 996025837 311632608 340450776 294240060 555624590 327131278 993373472 11463947 200272093 682167440 820907452 470145151 945284098 948604265 987810221 243013102 336984022 332645692 786405127 547655373 935975804 997920312 997931398 288031630 513466821 906272178 972892537 624224864 825683201 454151304 585796842 128025914 939762909 942217250 958248266 348700050 825775393 902369531 999684402 394891002 551524281 36141747 47036869 33276390 396623614 193827425 413542540 746444306 842564075 824795055 926178489 446031517 724135374 350512150 521661584 337085399 614184958 728734917 728998193 923012454 962398562 544888423 965568318 898137074 920346405 844193330 854008263 385456611 664785701 508250480 916028953 594087400 880282841 729681062 810130089 543703023 630322589 49455766 522156080 729257558 776533021 842133721 933520937 213262805 914129719 58851178 323468942 790554894 907528774 40669210 290791476 109604948 471443785 716554382 750266414 140634920 752943098 771583027 919701977 713741547 834396323 837681708 964740237 908951462 968613846 426552288 770427702 900842028 967221720 367877822 975640490 501604023 983800549 440548631 640992532 918051531 995933121 260284770 449200998 361395965 528490244 574042799 802143204 484787436 513272870 573458662 832723777 532194831 898592694 188178240 687478437 839858276 924568447 545343936 553328170 390454953 396914661 192111012 270117532 511806670 720858004 446267778 961456640 398717232 640912780 504312045 713513582 768453224 934441056 834053769 842675972 812934707 945941435 999295280 999464632 233766692 689558940 380664098 917096742 110210303 437357952 450369618 727215548 771455681 916418654 471535699 907882396 492696924 493770711 39565198 240358468 134311676 329994738 129386412 142610172 794865766 879044759 791434494 872479860 829438053 935191447 474577698 573089046 661033175 952750071 654312482 889397413 9348327 173622016 429110898 954755129 177304604 756045454 188042572 554515383 91594320 787576233 157173222 208811343 85426077 715263938 412443417 865966359 58636255 83063293 74393896 593785392 99590665 691019371 847443174 910308679 943249092 974914942 475508821 773301048 981033853 996441185 612087391 629772678 514938237 520806835 810557028 883047271 168747365 460859912 326697621 466954665 557537152 893433673 961037218 965681389 37530993 397905411 205760360 907153295 395603474 846272875 25126732 672512153 45055076 256359415 145798722 365195896 777212358 918951617 132317545 144488058 163662886 490053812 283825565 649431691 621238267 847313753 762569524 804532397 658223600 962651801 619884309 692377368 375766160 938361205 145606374 721777354 977772228 995888478 878161656 910601909 782146381 858803850 438145729 838100928 935556148 963141317 75785245 666609663 611031228 851467762 909939557 937841947 198463072 342321670 741585657 817183022 511539300 525628699 878276523 885623654 408401818 589303068 433880498 613258270 257410655 866017933 957785589 968252444 517641099 994784509 434357134 533193981 404590434 632981600 783343947 847900414 45362030 742278585 883316979 896834645 526929198 755684194 924792677 998825019 911417547 932596450 128893376 729564067 794924933 997743379 98103998 579443226 938447484 961666168 361764102 554115354 777215705 968740373 569293164 998920625 547081843 927688892 838928018 921126143 686303230 914381818 906596235 955250486 767986739 950800194 281193727 610250889 233180249 402348661 982043185 990639369 306842805 391466948 180625256 286008333 990761405 994381504 719550219 868278907 252262787 500068411 419397437 691975086 337267441 985222181 311670857 379334684 200911393 241100488 798158808 920082989 826299857 978711309 694512528 895560125 546087761 980124809 642893486 962439743 578293475 957933730 428273917 889455196 847580763 954459778 33552809 836599655 600444157 664751855 758649507 837476038 260660853 530024194 368447488 988400680 528481060 626164034 429947237 955543243 392341505 617295226 72052231 840241229 141105213 374382570 606130818 641578784 944934598 977684233 531451904 552268127 757889825 844756968 856244460 861602178 75129739 140433663 32316292 336790006 711995944 923195630 430162472 826533858 499041805 858027970 385362296 723824609 918105135 946035264 409450373 671994092 167127190 605792757 235791600 763555603 244638558 609885759 217307620 369203027 998979538 999558872 692017348 717701742 735853279 917967164 997398146 998803041 433837059 797274439 389713455 610156308 840641497 916070673 861749062 911507865 181163993 650259778 272131394 772305746 746087086 909593809 710409629 733698809 85706459 310102672 333565478 879278972 50847207 240473519 350089277 945836195 438856064 717394143 583299047 926972302 560854863 675941999 490594270 663833994 39978626 634225464 833965990 872021610 229493153 301240500 828452605 942604279 915591304 927152907 51931046 585076372 286562526 702012202 879017407 913655782 667456652 969830236 228953284 964518711 571571805 700149764 662311647 682884816 653729060 877517130 932353838 980984226 191791226 920623672 603743921 857313512 625194630 636799387 786022862 803958360 143467921 318315834 808099365 977987989 966464011 989878984 769724198 806805498 708894591 802989661 362971221 594632652 932553735 989192568 987244481 988016622 194626388 605255312 811405518 847802714 760179551 869733505 541458158 573308230 409856108 812672829 822287579 850757868 462278594 784161146 467288030 989119941 727836758 763441720 614254444 671754775 550397913 788786018 868646132 908889323 260436323 679024387 162626057 641724536 117047753 719730930 88476213 177095595 787299485 933833334 57297632 570020312 742159484 761189762 976169885 990636549 428402960 542467230 428696139 502489782 508892097 612118421 178580814 895831402 798274188 834726299 332121030 748234153 763923225 850669781 297926806 527655425 373446416 635558970 428401808 594894817 181304225 832114041 610176746 774092904 707203025 946678384 511137371 936565980 210839474 420835556 983108956 989618208 150498183 475698967 777903871 931519419 674529657 838275138 533773331 902518130 466790051 782649040 742174855 974535142 824293519 845671720 822204813 888457469 132482894 782739898 70768171 565197144 760257543 809556334 955618484 985330795 603231008 747411663 148668299 588894406 856989145 894787436 102818077 515534653 809604448 874891781 331666110 724358550 867995374 956456357 374608801 753101176 274853527 731759872 732549409 920701222 487659926 791563956 286623450 892779586 353400330 810501010 592462260 642514676 296000347 631507952 644164377 785256250 313495556 382856348 511796534 686184258 732973668 806674502 275752233 900656165 361632543 960420932 551268922 588756286 755364770 966194816 560244910 846676447 263469544 498539044 34032068 688730958 172272561 874118537 61094161 487748085 442944041 924939496 624012207 789467982 694855497 755549801 19298636 72563281 76208844 185520413 683605374 701624126 89718659 379561553 481903170 770227695 847288889 892860449 197937600 814007246 460610229 782029301 523490194 713278508 829528388 854182088 182165642 265258096 905739617 972199863 477856481 660012053 675764929 893406987 295232631 939634702 934624506 949440340 355361577 515936712 605353840 769113580 785458352 865688892 240178537 943365664 232992600 322459586 930840907 933340695 565922240 780233923 4258521 266101460 783857566 999702318 143848534 388286867 372633513 632463229 826696822 829068774 78518302 829855875 187863725 776997944 164873151 633389649 403477950 637270391 271372226 884737254 923546317 936927554 406833847 755207729 744986362 808331195 956158698 969019671 576095750 694350658 201912006 454979746 385384931 933864910 665846213 825689071 788762024 823638336 351302854 379014461 785715129 808588304 126685334 228098361 601024643 706245477 632942061 824325308 217649096 496028592 856344235 869183357 67142536 116602389 165677148 342222782 688516282 908910602 334533717 647745520 156804262 674551832 791669040 804081970 279586817 563056756 38542535 320914971 36116437 795403280 763791384 900216716 578702506 816878869 321923564 900910374 314293340 453516880 26182364 371052240 519815670 790234025 882480277 888583943 277734017 596128090 575114783 580025277 185713835 828003568 788622540 845525517 855035093 916874169 168538930 559741062 963070504 983060676 203431000 445905587 548250188 588698034 768649243 769886544 317661126 767262242 704930015 762530949 405940037 416413792 373999415 689390404 202882904 210906769 112907451 663222104 648425986 930450292 36764727 854236012 584405985 807593702 194954203 629462990 142079207 304557382 347090161 524396070 536641819 903589087 743928246 962556112 747839185 824186488 29407867 279698804 846003461 852961661 486894377 826909777 339250642 446178529 717082359 748882229 214179263 832597061 588047557 852955200 209372932 589859026 860276237 909449802 596893032 734225798 638864500 916319731 502185338 884946766 506998724 575360518 762234661 968866187 454911136 937828717 632198685 842517425 300612235 528136928 690706967 905620480 525861562 903323145 408573823 611175053 536307542 667507632 739122650 857743112 449904340 949078019 471881398 705958315 831062444 969811825 879219718 981618592 759761393 770560274 724363972 857276538 598967104 816427151 760686001 935917631 864474916 920688338 422160336 771323482 256210157 451223897 494944924 591350202 326946654 747415225 520959692 976805223 809410124 886444950 945962474 979460408 210872576 567730894 498516324 923584725 629822722 753575972 391907993 797155820 311500427 967821952 687775212 712035163 288201373 524880197 573195947 708704959 353354984 791508926 844698179 907572145 494967676 736411663 843722053 852273524 476510292 503583836 649715165 909625003 551507588 854010427 787817922 906016886 86872777 423346889 95332866 715115328 128046997 309058053 20878604 765564013 515223458 902171482 784069877 871808991 678163726 926471409 183099074 238962088 813580735 916185306 811406013 935025620 50994468 699623263 772107519 927853098 338271209 509688940 625616969 945855644 30767878 524465589 689357910 792851378 179776915 222922825 942363710 972878614 696195396 750447269 397372188 788720266 819180272 827004489 194338105 542542486 795799068 830257769 633583977 997176301 319336603 920300524 541634224 588876333 158548893 899572627 781597105 888030953 133631421 882237363 758642098 962152306 520178428 620816219 776762060 923860430 204643621 820079056 974926673 994702076 519224226 631947184 225687261 434678853 533752411 676949001 952398298 966427000 987858047 995698480 696094000 959188422 101926880 905205259 719326929 733944153 967883226 983800081 403511153 546225426 793190220 919895970 800710257 926516810 397694498 484880242 295707826 912828112 570690405 746471595 324485719 986400076 841324595 848861611 680305779 783175254 541913926 846510820 600712273 967774869 401672220 493778768 309915581 428187105 303278364 738667436 679670532 682932921 249896124 426497531 480311342 700788206 936217997 972242827 178219131 536068533 251235132 666520452 191108779 588774162 496965452 904727496 672148755 735277027 217363543 702885899 790169884 874231194 384620421 692705554 304371036 504338467 307800037 376796898 289626004 788204074 491106936 883599743 737891451 820944375 771726178 892743739 957011588 994962316 364975874 831226778 963778251 978679906 516850942 574323503 482306825 559415182 207031732 334621816 531515455 554257801 505672238 606900561 161424921 553499239 266799205 850892313 252977848 307774172 872020284 933330832 427953378 556013960 454851646 861511382 706522610 913620745 502404003 936269624 905994753 954760825 502972406 832175591 755108446 959277519 816176454 851089581 162354907 239515511 348272238 839277826 554565111 664006502 24992497 333449123 148820239 350830484 977905655 978654488 737951628 808516779 17380519 200088661 717581409 967777118 803152458 962496922 450119013 960089824 472093440 773673839 318663917 826795906 639641789 716465250 35997154 878703148 665601839 717075591 214206686 936772529 907703576 989352083 398838871 805385409 456221151 811489933 258032553 671401244 390748792 995078296 897550154 922641556 50678103 684046067 165629888 318777682 837417110 962621149 128354550 742782244 134888644 179528774 821285939 982509747 58842279 62435994 806943688 851415077 464899304 505334940 351015648 738099102 925418055 955032723 706412384 920169821 517850482 940666449 315796164 404884724 984872733 992280996 343385883 482539085 703586352 892087623 754973949 864116684 696034000 973086518 471448752 634338663 330293871 367191354 914849398 951162726 251580525 946819001 863588799 877965649 346518366 800677251 824115899 938390539 494064765 686614055 766278165 899881648 613684868 787054906 917815818 919234994 489316869 742440378 615117464 972580657 954051122 960236723 567127921 700558212 902185868 913391361 423295713 827909651 618382516 980559116 370001660 646411750 569508332 726150154 880276327 939199113 410009460 456629102 343041949 853266980 665468431 899136178 228200222 276770309 715395707 949897877 602113809 639645755 794720618 897978082 790189466 844468494 271784527 320374390 546073255 908771336 364064399 475310719 846519568 946454641 324888563 744993290 103302932 898552150 607989533 689154664 543341528 556516454 131068584 994140164 442965679 633567673 719245195 855612671 778304328 797256048 87102103 573031401 378478891 956416940 427101478 939446535 313633360 469980526 927359695 982758913 853476098 906677130 407204656 736883795 11989476 946211181 959836659 967352655 328887392 560038597 325726833 748769232 823919158 999368846 20107024 462934733 261366068 928466813 531964087 675417404 859551465 977778579 378968271 607055580 721772945 833975579 228509414 654386030 97499740 764180246 137663589 931982380 757620648 762688417 470742844 650384616 306420948 426280559 950676515 989439238 553505221 815267592 428100076 429589669 943760944 975664468 197569061 264063728 466875760 776062916 397244347 919866047 808687574 878515378 625757443 731757774 238867491 864936566 703817001 892661341 288625346 539479105 181304795 410640242 772720531 884277285 610253470 920219337 314564891 908360004 73620223 312544375 832471434 938340122 679998715 861802857 794046380 814198781 916336927 923642309 222458349 226625284 31640235 564674340 968319205 993061901 407234903 728294076 712240841 937231886 564736286 949776736 377283318 909098957 783029520 934819206 539118798 647417589 424173395 937409442 761602389 767833169 679868659 872960471 738914202 765293195 17618502 344786925 198269999 570709496 962963081 969787531 251581107 576874513 584130771 787339365 240674913 651032026 67862292 811155495 792191977 862684197 773181099 927557514 697413972 977061188 919239757 997557387 926428525 993836722 665487280 957073239 595022390 709963526 152344573 984404634 994896727 999317288 676768671 892568818 569733127 742405896 414345692 456359539 386741409 509670960 409578646 555126944 531396 584909259 28287582 62507535 169636284 491804589 314101747 589134597 73600305 789958996 195502926 986070798 463671626 661071070 926898132 966372170 673399920 991366408 173792043 279855356 504441165 878388445 924747895 980781436 642895790 693000349 328952142 995540511 863277202 941074314 107285216 445037315 115783219 528947890 64420519 512968996 271291594 361450155 824133942 990492606 412328303 660353757 819861144 971940373 353082402 373794853 922515030 949473271 918733690 946432580 769388235 843118393 922758940 954281156 273510437 618367128 43668292 61433741 138749342 288537205 951350658 987759416 725308377 813799775 832810479 852789619 428098206 958243281 105021695 188882927 366600600 474677281 667094643 897863092 334550683 409114702 773170492 816441031 728249451 812943111 868705171 979330082 987638466 992666449 66423617 543073306 914203354 931240358 823079669 952379965 898252844 942784321 311265811 637349420 879014814 898216169 332070979 671406460 655992249 893237329 477828051 964058754 927951314 990201662 240556680 970154803 988072296 990516828 891048140 994279307 964610104 995419444 373086009 432501413 247248181 327515093 183862605 492284713 943239678 988219113 706862517 751869198 666643571 797571367 725068155 842262077 966543520 994048544 288962746 421224119 741645290 752230141 690105334 997689495 563658139 732425634 510604922 815282365 230992149 850377928 425073139 817887964 180394228 938884112 454981815 827016695 218162611 643051419 129479901 283789487 107602772 741731094 755781982 932858311 405789684 623182034 862399584 866684426 704877851 712220513 782390814 963679695 498385227 934363927 244515528 281908562 235433094 498085726 461081126 768299233 883922602 897782016 807959784 985210439 561238129 874630209 146782987 814400527 789798301 973821920 823719396 862115224 581754217 966981155 573229852 792411884 617128916 680179628 785684464 930151783 122588817 588669924 922538918 948728109 474629498 646255478 939467544 979504761 208533377 859740866 609846976 689771237 431609351 784492553 14666285 852908751 573455516 886085288 169131052 293790885 840661917 864189438 594563095 672344770 992232195 999223277 256240918 464143936 400520053 892031920 332695608 729051553 353955837 465972114 653010442 833091500 695386898 826664601 784150880 846177235 856799667 911460169 577111427 626431387 773994074 801550297 762691119 922697122 843566897 938435504 833486048 863395280 562162148 809813004 162793818 533983687 245096844 640208532 986129326 989139333 936537223 968403213 536318381 877033420 295033958 336562641 374186042 616663997 600472197 814057066 42640794 985848063 408468743 636406631 57092480 592959566 239502480 638514202 852422899 950896808 272183984 290727655 451552106 731182036 734270703 824716034 574890317 661966427 755237080 978011725 832118187 864232177 786811178 992223144 411438557 863809921 272341400 995956879 910998012 949837354 937274380 942030802 341795728 799859990 63979222 815546139 919706643 952225312 264924279 601075643 594926052 624414610 989396666 992138781 665064724 670157601 864155250 958544869 601501655 952540813 19511397 932052865 637306359 938169004 35323139 916612019 890313535 967913360 346645009 972124179 86069154 92146546 729555716 842633031 589395340 956163005 723137427 775127335 243405920 758578791 720939289 769137305 168021752 344002097 833982305 961895789 644939486 897531606 150825973 347825654 535175836 766151783 217039871 845196056 353929468 607594169 94301859 569098194 10961630 305598452 960183624 968249019 343210182 761027705 429906496 667211857 240117582 402923228 883996368 892936606 942310888 964518966 311315661 404384036 260476812 339960844 182376639 681850944 368903322 954622804 208262910 245398973 212147873 972347578 610083818 963286805 15917718 528735937 243292943 754099863 926829546 945172764 107169414 356878082 23425913 229368573 502513067 912278773 626053497 942261411 704650777 967823383 29239113 957713709 74106325 173412811 605141913 934401286 426874969 861002435 111832800 467051797 830628995 978982744 579730625 655235216 783230630 929487654 355999667 691394678 289739153 941413656 913301355 923249712 181495697 461376953 469046406 822212832 976751644 985479374 858179836 893079603 41796661 148564784 680220367 743138238 647839793 944910519 508825992 513831737 914466343 927172502 181456921 485118661 463471527 714711212 517606204 962454857 561745269 998792556 100853000 430489832 452585274 558972965 461368583 691255519 992412042 993473419 765568148 816132900 805464569 899220231 600131561 704099107 41881631 726064882 4613341 384471289 749963368 790409248 449434448 532999432 216792157 802274528 600785235 643779624 108758962 646414320 746934521 944965213 947313638 974499926 272062519 786786622 741892515 757152812 542363320 781702274 609048841 690306374 205881734 784937128 481944605 758253562 571119005 757800106 54542846 135655999 135507702 851297768 512115255 627015601 323057863 435857098 176757194 518871861 354426162 553847954 412704846 711263888 113982680 567081772 387644528 432087539 888258641 913055639 794459670 883515239 623018444 654661914 232899931 364008421 508603160 624851794 544448856 561637261 367588103 937568196 280052838 881290867 990915880 995707693 327693087 355788522 272418585 962098738 939377538 957368108 151446274 220450027 263772820 885441770 729465589 734838792 185724690 198447660 985946548 997200533 99220463 253606246 886552114 922883808 776717394 830638560 91942596 235174317 87155562 250766381 606910478 811526163 24829209 860367212 41367348 274930336 603454730 691320474 175360758 505628971 903999426 977352110 508396620 711735550 818613155 846217428 991257618 994352344 153213767 231055239 588646981 601935809 897591024 926089362 412431688 877340172 727131104 974082788 481112311 640169804 413298131 828320266 540945852 680192826 854771870 894751994 189865416 422086477 713731452 970120724 500441950 853954775 174901809 498370157 71697676 874271143 529430078 733881608 65049530 523785710 240007847 519656763 639033518 962855599 595280502 689187787 685731244 928075926 678533733 899186386 812444829 957775828 187829582 623001684 592895548 815399752 633483684 909963720 649973067 765804516 297698763 415806476 945828476 974977570 195086283 506405948 798747582 958032214 752527890 983213633 494109398 549595971 785691440 991828345 618673368 815957481 131096211 244831598 756484748 861436155 607293 41057393 223601331 577630010 976662811 990949868 149626203 254795471 263992265 473708399 159412066 475824524 279501422 873712881 457372449 843814182 681335821 945980048 289060905 663746997 344266113 377455418 34561534 779718417 240111162 346237618 539756898 941719969 638042754 715457682 128906003 626426422 565151674 939973001 780276126 892625933 391909147 438428271 896224696 990434994 695739200 789717756 395532220 960651653 244528853 874813152 719711198 934738146 364233356 661455809 975513477 994986529 767716848 841767712 123700858 290837688 631714817 916692303 165701091 353603125 419349971 658902435 228259645 999468985 981195194 997836736 796830407 952020604 881997416 986168066 909740407 979219192 175546245 528300536 194091119 776080112 437808270 666462321 253486899 850359361 671358477 922080916 260055635 793896559 413374244 869757656 738818684 845017147 101011852 325033350 290438952 948041106 262739307 799371228 119820826 765503975 771189579 926019381 347901787 521337103 573283512 989724938 129739087 658244836 354366325 560217625 211379585 454707473 973564683 977593234 469528759 865081796 846002739 974505081 120731398 813913049 667542735 902690783 600204027 630035521 552067038 971512063 74936654 93533348 854643739 887914691 349968021 714344679 284726976 685763188 161104099 666197296 592589183 792078526 439968575 864827193 178759263 729244941 218544475 423829040 218602662 246579742 893296039 929478781 775860477 995695602 663863109 713060229 396733621 911142031 434577572 702237521 359455936 440446839 177805276 195981370 143532221 407061604 83306617 395248592 297063618 589487663 771763031 775442227 411281045 889405319 589517600 940502891 389837907 580686636 912382550 953987080 396944205 546650135 809436856 841160888 54114863 876951403 467202293 722316701 395411980 851061631 146077986 273548399 670336355 869628863 922279357 968608040 97005604 625546730 890074745 942420893 493289324 650438928 846875840 909404845 503604252 723281209 278762027 337684928 792214920 800492958 352604662 418616995 431599211 888708939 330746716 676382651 38004080 780608929 568498949 745995057 851346323 982465439 852878301 950277253 428536742 984713619 328850608 341945965 715184493 996830547 852889279 931102148 955295144 993658341 146067044 506354541 745148856 941571114 668117138 888942088 624829481 975143886 507200761 954109815 568921344 880281142 753840416 811056057 374344037 462286962 54329729 284366275 884200615 918159855 472479201 643993836 5315635 941163156 619036167 964784132 351572081 937603909 81749034 140227428 236155543 358783809 867308679 971955050 815486994 962329338 144386884 966833815 316883014 532627975 60399616 925189093 134898156 499958339 439841238 869722986 712230007 941219984 959705239 961968320 687179097 885727884 336303857 599435972 788736911 793924304 42274224 830843655 470872239 627077077 602385725 767262916 564638710 764873308 628781190 667243723 602578912 607614163 162501457 470950416 73796005 175710690 780189855 893439609 536567015 932755507 904325636 950673303 873377329 908258266 365625334 515925696 868330366 979056962 583954051 616275098 228776115 645459482 656734767 884377602 955258157 962755987 59425714 586574386 503813169 921612084 119435051 925101833 971437123 990783461 977064334 995472389 988658147 997736285 28132740 123357850 27258135 871068647 439789200 635341920 164916174 711768543 913283271 933169130 285307258 549267352 368795511 562302192 278950803 299112352 50313535 535642841 111698044 861656962 404051046 619342900 639845557 817035479 695204905 827018856 575541392 650354143 143199854 400148318 764782200 849156963 67867706 252231344 531508671 642518688 742635729 910523310 186537977 824323201 584657286 926478939 780956119 981326667 721079818 913436556 274566479 929796232 799522978 830260779 825606225 882102269 29362684 671684120 715231416 806828727 738188889 947041161 987329349 997644635 923292621 939218707 408268037 485034168 486204453 800461976 628488810 831909764 962696238 991265885 729873645 753668459 530627819 914474598 874221999 912753980 304789051 986798369 119028947 375492202 486348531 544773654 92036370 654178467 889066974 896316367 511782877 796962624 924591222 983450469 679863401 737043300 410010444 675752744 247930840 553584434 629249805 732002992 675561576 684740244 341495834 884943030 524037931 898129263 347958978 565264854 485192486 869478127 37230380 831962933 654464186 717017275 94902634 470833318 287819454 307792007 298235688 601022742 125470953 656438751 322494498 609852567 82981821 154439533 49063812 660467137 983384349 985836627 61906599 104434265 811325967 990012560 518570070 777800569 729608983 806672947 689376029 689770068 151160629 278276513 410729932 486123622 624791584 809917462 464690337 885564227 104315897 514613962 58540596 263703978 830358648 832304194 513306793 798273506 886012586 905042751 622613832 774388974 590885413 978596454 613705110 645055675 112166301 164258788 354769582 801549719 660541740 997183391 789581930 917946791 415026087 742914203 61143980 413351214 988935383 994527218 769863768 772886373 696906605 844808741 181490710 993244440 705537837 985872594 278702859 951571585 913444212 971408855 23582787 807343173 974115163 979643980 513980943 790362294 851605085 950211324 77148507 894780382 116461446 395653710 268000620 966415809 250156119 939209058 106015099 531546382 868855736 879247274 937238786 972078446 570844241 769290314 728302752 901511301 792181186 844606368 90238240 140839279 65447355 931754440 149926215 414056935 419612893 603397823 792304550 981060360 908280495 963204062 179396354 933710080 625750290 896486722 243382424 606778086 619870732 746197972 327174842 882336578 554973171 689366102 784478904 912634766 599159967 625018304 809380890 852519456 171621067 321520838 78436160 718433930 4359 444690838 89228267 222825302 186706778 856656497 141826153 279308036 481020905 511087908 515836391 587973773 969770538 985214687 988191999 999994003 564836986 697618386 767607091 938279296 555511169 570444834 999298037 999383465 413935017 944197010 348008972 554321850 661702545 972660067 805264699 916289694 744530988 768792979 185652878 828380750 447214925 638770283 852025872 899579468 835931246 936501177 773242604 975586803 94388963 948944560 269278613 651472633 258400317 344906173 94374707 219803410 307376244 365172649 357998039 548678571 968390741 993563334 257380375 864496052 538390755 613705373 295357157 970759161 144310789 544911294 779185268 804270211 716470713 913248254 173717928 735960772 387471428 924161855 471951582 660833528 981789717 997424649 614673657 808934993 477592790 542053853 604248221 994931533 95668925 561931937 883203934 995310996 988916439 993423486 352718432 737029298 294687994 691127882 744528940 926443512 729311954 899473363 264734129 545351124 193329805 625303546 427325476 758253760 7690737 752185491 942350226 963067033 772420139 945409641 67256987 860414277 305796454 617481515 674416999 864470851 790705322 914493647 419772510 693288321 464976969 697208020 930988305 938361103 604791528 696049100 200315559 488677162 885596685 957187339 619727668 916159293 1644648 760882542 336328254 663099653 807431765 862331224 247888158 401332037 958119875 960890252 791114850 808853006 650426725 974373298 174708427 775831719 382572096 845602734 833662679 915689186 54573408 281664822 800175633 994592349 631356888 758807091 640755915 858767008 628331764 923173268 867594588 916374225 614766846 911719589 27942718 458839439 420580952 588893204 458815133 709112789 963968652 978858698 721813341 958807636 974837098 983428311 382927190 681948113 997010370 997536434 435493858 445789101 920588793 955050997 31132510 855069444 6399355 486326413 342194941 646580776 237345252 456947553 737215950 862817172 522812035 888688129 966567553 975619783 289660943 480970111 752482905 916872854 152043222 372071077 842614693 982679412 662121362 945191804 515645279 535788354 775810374 919884530 848653923 922540918 982566786 996655966 339437305 499328348 465477780 868107590 909861893 970079987 720815491 758940117 849240501 886461903 659300242 680298461 403329716 566224293 540299270 824990373 277403975 701496711 900120347 923201759 565517805 673862614 35544803 524884167 389353199 663521871 417311255 574503734 602656980 731387872 124928916 644818656 459969465 565204110 442884818 838232989 360296686 383141305 693886756 891467136 72215093 198340817 154014262 293497410 704014924 957392019 596508361 840441172 306305509 512927901 860220109 923619132 614712767 910765505 241002898 265826281 42532997 81328214 248319194 379917954 388708976 480909679 317686787 499043961 390179437 390943903 816742906 846303559 760289236 825389830 121625299 680108898 767515382 927244011 703321645 841786205 519757215 851104864 452657162 914190120 591439927 901952331 455711508 910407293 748640736 882474797 418765490 985872758 506492853 945927476 365059373 676612905 601059135 715823455 790768894 821621365 907036819 981628811 431616689 507540474 496405812 840852694 241623437 953922341 421530512 946906823 885719058 928833707 857612580 970564405 512190622 830600359 156890168 612181394 785806532 998716315 162463818 992953053 562472075 946764426 977741457 980491859 356876065 920167123 947665117 986523511 310367455 868684205 298242478 389548734 469239682 777352450 407266899 555209922 639688969 898670530 99853558 740204888 848288203 944578553 767096366 900708407 626637668 709165486 851977388 893303158 741258400 833742197 835842553 967445680 703358428 953016802 40099093 711624692 568315418 656104678 916967862 917513505 233022405 776511257 117465894 456537430 414205531 766815634 60110253 758844288 881750153 924119842 980300068 984814311 778334682 782749804 179112661 862112914 267656700 842902698 594346981 839325080 364323105 521244096 213515284 306262306 363967475 838747874 506032538 570100695 331431203 820973156 860492047 862181494 469044202 728511061 850786821 962730595 538107169 802818172 71325225 736132166 347823130 576856903 257985945 312762757 38201063 198416655 554989142 927574639 483177728 824217168 176603349 697466794 474932966 550596997 54881237 916719752 306849407 507939319 363380481 557800782 730687599 857969623 301414653 941950965 106052591 576558391 684213199 823275358 54897448 346258982 628130045 721804256 852402679 878529301 320170021 846389120 387827201 807045232 949467440 964280209 655232295 674689538 866072295 879435211 635569048 857343348 925251178 988363651 939978087 980804579 377403143 393394985 943484335 991301712 556908725 840872948 734975824 774704912 305278899 579893601 662384915 754553536 979420704 981156491 543405823 634008262 148866544 461974781 729520809 758298657 550018274 595385039 26870414 748623309 906595055 990720503 209199750 762658789 223187114 437341344 426742039 569313869 164370754 659630245 536486391 593109237 902745955 967703606 646346260 906944116 659437331 710165754 491563339 760195854 742266893 857617155 798206036 838992037 314109966 729093476 62162340 405468109 903209144 981376383 503899527 710308643 974295764 998030085 194380693 328516486 241963964 670733566 4891934 794908085 881232187 916247012 548058857 891717986 268849155 464403087 711544838 958814212 208831918 363831925 103203987 574915243 288698645 669740724 439907118 476868963 281624780 731861956 128258719 821106420 319546191 995318474 259878671 814496775 11326961 156232227 296290510 543217450 883244665 901252042 35590775 528021093 453827792 682410408 528012904 768495718 845818162 970094980 629399032 640155368 837709342 912740619 940430597 960772559 875105011 921513589 391305808 903742270 72277266 100930503 252161891 847522011 510109635 531520716 782625517 938860472 273683418 741941996 392945372 717114788 20058163 198548015 773207773 836312386 913289148 963675196 656087999 985348985 915244996 988024558 426859106 891948267 101483377 931719457 278726620 769301602 790158699 949568641 120463432 702369400 191938654 840594690 398719517 645608036 582096537 614699451 793713893 847398935 793754538 911622605 606349517 922733450 671934449 730953431 259635497 856617888 684782000 862324373 564093335 707477533 757618439 804124302 360095801 858012633 199974014 893499199 949331330 989680265 460011205 652376618 356575408 687544338 757272651 780791718 339561469 531864358 836724722 855256610 958761789 999001760 311899703 598553033 394299789 498169813 85806100 813213387 41660384 184652424 872496855 990366246 120617466 184913538 820929608 965340268 245460607 855433431 255624404 355291462 375647327 952458275 375166037 963067304 508066305 615016015 348393851 845321647 155861464 351145866 941400530 966922417 812338884 941278222 91994777 954239570 795879061 909489866 77646412 458292975 118527448 909570249 8720226 859064172 958707090 960597000 507124071 770462243 23428503 24720648 145098446 969962709 529611794 910524944 615338478 854933552 284197537 621516832 820238648 947427254 445265567 976009211 382675667 562743941 827784442 926113784 652432782 808897337 179976860 287992494 700252364 849112514 735892468 987753071 427247421 715299550 448016763 564553317 884589765 959244710 754900396 786361740 189792271 687616705 969661454 981579109 452694326 453661824 957782282 974434086 794329791 796239085 336194085 630711875 245953192 788331812 691284440 727027132 205884907 774183576 458033308 660572626 637573325 965811528 282795453 451076554 962022685 983484632 146925640 895589914 599483363 837605713 423246043 929990834 813146096 954245082 244068095 525796940 982196623 996623132 585434838 612093409 87076898 946466926 141049564 258523434 593122930 801568400 583116035 936026336 657282224 683377645 979610717 995143290 237681159 805964025 107024606 253020038 488389683 628410275 465365127 846809707 382359318 630275352 652243648 763948019 860673593 883952758 438034379 680829835 773552341 854109750 789620387 989251276 672259783 755515169 52075322 913054688 160871500 311297429 297397805 527928295 446249659 685266112 929196506 970829802 366240246 520216082 768346579 932833277 770402728 941247541 16287040 413656876 628249549 920174775 258606180 569594277 363388600 600706472 723050594 767781909 20150296 967105677 505115208 829112832 754986426 943184095 110705751 333322645 676031227 937692745 822876483 953544447 425064860 614250982 781442218 827666264 1415664 754914939 801748365 908245137 27854903 524846986 320660340 620328206 790221865 966239012 568172666 729656278 562586546 942087347 339324390 650257713 738245868 801527781 7646866 255670498 541733222 703792086 256464115 870536398 502156636 834024201 374431764 844931672 732123659 908837186 508474113 662340167 894690052 940656497 76862022 648710101 38122398 110738719 368274301 563144652 794737936 876153950 849723926 915670235 956090770 961625260 145734437 947344739 379108118 646309477 563685393 689374722 121756003 498937501 311914599 442001378 732210107 803434251 301853345 309965841 805124460 918183098 145855588 660437596 344501476 685202437 451437528 592511271 544574436 988358325 109661915 549102656 1198122 842665562 880754134 915947065 657751233 780914717 848921881 863994504 164769076 729492627 510421092 813434205 909508358 947986614 398672052 450172837 875885481 908163424 401089233 611198483 654876869 971281418 784491698 956862379 852548633 881183204 714387635 867186193 285568863 937483776 450042645 632878541 620735314 643725541 928121237 932078431 468304167 495973104 666305571 678966768 48829207 832627331 542531581 917575372 668776733 878713601 230655875 925499414 525966190 687222568 815705273 903857503 177769971 362781392 256770140 579763209 436594461 601729565 992774116 993400970 191804512 293223756 735916812 902358060 503201638 821661745 223146609 624629975 479067191 787451171 284732715 942919491 797919719 927079025 888289923 950178825 333062700 645488876 543183484 927926292 402645458 582313468 537811488 853143153 533556124 671222511 438230992 799397868 420276365 835034943 659657879 947770332 158538890 546473438 458391077 588058308 47766780 676010226 447150073 533649384 281333757 532338868 424308582 763581309 423153988 778351606 734668863 891902087 671357155 988658380 839389732 955294434 865053422 978566917 168546157 800061270 102623921 845590270 849293108 968838309 150886675 263309174 440997098 709958970 699702325 798313254 557047645 955024879 947239639 982410155 279275768 777557358 369059496 485627663 452185185 704187526 623871130 679226990 77084469 211526992 689035331 815026361 194411031 409451505 468775195 871087145 551344350 829784203 963992974 976615322 780502391 857716679 612127953 890978138 277502414 843020358 183059250 827823704 688581193 892170415 582293630 733080530 797697599 909940515 313088702 375659096 615066736 741895258 457589914 938845734 828248199 886140774 481682836 722060592 731144632 903804898 418413170 921275933 172949731 675327595 403880357 687100204 88241775 467742153 32571060 93974174 590520558 748630380 115689896 429974467 503307621 522541376 968057358 973937511 9986916 648772093 119459150 777313808 349592133 408970751 996462760 997078325 188830579 640415133 75112568 230333524 974065803 985301971 977263075 978030451 733251628 972512278 216222280 824050489 615050500 819949562 895341449 934512611 105210726 477314778 789504837 823649789 587661193 637617233 260829440 548916369 296429063 823470196 126655274 774341874 888450619 922137633 355319387 956803655 355330924 888103621 155187314 671105466 756701070 943341880 579884158 881632405 572256425 682035760 140247594 147323131 949161881 954452479 146878948 537365749 863109861 867568787 361476408 600131186 491173404 608971691 225452282 801891263 118559527 535591140 885418324 989231678 262966833 524222331 179696073 375396697 792131437 805184434 591205469 943246800 76661150 464581857 495308649 655269341 594154108 838331697 439786941 509269336 51180199 820237164 937220611 990394501 937068886 940903828 662000921 836585554 900603826 962349093 619693081 824744484 834871134 917199325 133191605 401516937 563566159 785683361 578340857 688060620 683613522 959596888 781416837 878274231 11839425 414762898 449836258 659080229 79472519 449945302 639232502 820468241 134440744 187732424 176672343 647539354 410304990 564633597 810083709 966903503 636235484 686546526 364872097 382917770 334834097 372122074 986823108 994646832 504622652 954585289 907425806 963021027 399993297 774301703 998236584 999599946 480538728 963506107 192940354 662464845 511464566 710193712 380710714 392415428 371830791 439825049 656093971 713712565 417510459 746859976 342668457 591828232 565502760 992560552 189685843 467710568 21967402 324055041 145945522 768153347 512462675 517356554 105916691 995688779 739557655 927928812 90169403 147937738 831209003 972905110 574223361 949183453 383521737 964028807 483734346 781215419 826877411 879661713 728384310 860471276 877090363 917359654 883191749 939518546 130197682 779072660 328110221 347756396 49253668 677283634 960834030 993738938 115385014 762863356 462503661 879524551 657192992 763934086 768270026 864453714 55837118 169221115 42249647 201299313 122323980 900988561 524754348 960287943 908054805 996079174 667635721 750072824 444582152 450082114 969521275 983953272 437792843 831152047 198691839 922759103 232571341 800828876 90197554 986062735 322131795 780601223 846641944 881382447 71907389 80840647 453939599 540077068 977573660 977583828 284589605 665333699 145525535 688882472 421230903 472477064 497394653 702159407 479569554 796913315 893322593 942616608 472710956 830829013 116760681 854609506 36414559 751874074 884973017 971654255 980402081 989222340 306870582 973611011 450793900 990610285 46031833 913887852 801554284 914990011 470406804 740793655 617919406 963487312 291082434 419294508 665622888 799846936 60554256 527547472 912188017 916726320 838682160 978741770 556726852 953896830 931226737 976063396 902035053 903799571 295281300 604578426 394657943 634642513 338593827 388251093 967244020 991050797 563496957 932990400 886363769 978455886 976134002 991814036 12291796 798886241 286637570 750587383 662471157 967203441 698169547 895208721 435794218 709237534 546236343 701327285 751536397 943277495 251214562 965621872 856347322 958264677 857935353 921767527 420901739 720390986 886092308 967697751 338013179 455847470 483310819 743360768 854622782 975881407 414511867 829271581 275561373 847176525 875106363 985223727 333991318 748682847 54808429 124488663 992069756 995995907 339883582 711480470 991318806 999489631 398988759 703479317 742339289 816787912 723099134 733000734 830142637 954634366 268981483 556038509 244024537 408809530 498049933 748698875 97256126 368809751 812085208 861532162 396017996 750133123 494968442 655603278 14985083 978044141 817981327 930045012 775739372 775935902 152586068 364879234 666274729 929428477 165357230 540871656 41467041 569630382 876964771 947276646 878727646 898887683 304841864 309576107 736606199 926775019 37002050 859344382 169562215 474612602 219380262 318878903 613997657 959917262 894209606 927123342 322322904 558485867 368287989 957019262 328332369 466649077 223397090 336933593 994859817 999314070 553784265 813139227 335632357 921142349 371735417 915760518 750600917 893230503 781328697 960373958 543862100 652711093 481781503 845001431 718685722 950695050 686000734 902154206 96910715 356629766 336239540 780285164 540445456 664991569 637571454 866244856 554968917 782071111 864015570 920180743 569635804 677162589 633877305 971774486 62421025 995683102 131660524 397017489 190550249 850321923 702178972 905139732 616226835 810526175 378216412 785074808 822121191 860117049 399155740 842976236 542171169 841976116 889176458 896097271 111320547 422333196 141735666 709834563 65089385 835210376 445832860 780210313 245366524 416541882 214983264 353516107 453483964 843734390 241533850 620885397 938477589 988377533 864843041 905249693 755473059 977148502 567933477 631154738 864316683 870335057 401601245 589294113 672997430 688270216 766545671 990321788 896547168 931469700 276216408 290248522 177110650 367280601 368151019 533321445 614865913 874561799 605870585 851943289 832381363 926878167 456881681 720917572 360971739 450139266 210004024 818805702 396874054 821955691 763657394 908244272 432230697 792662872 537926838 922704415 331826860 465843269 859873267 995859978 642105524 932835661 414976954 551955499 828833612 905148511 599627279 890861730 211627984 478668694 683308004 716397913 298816330 304149825 6358420 500317400 531638869 854034522 968102938 997535385 593539756 667266179 375914582 991019070 775583561 847342285 233826068 382573599 645590261 869181815 999994986 999996105 551879172 698500406 31596722 202259052 113974307 188517060 876626960 964911838 237304441 938747330 777900877 843651604 283255728 840397036 771694897 892853438 527393213 965309610 896599373 981676382 542062470 614761596 608893728 836650297 31263226 773905892 840847776 965542090 148354250 403943619 561131739 584916715 934387434 980124261 798016313 885361893 855569448 987299058 811486792 949231571 614344045 996959351 334391288 515885449 292292176 456262694 614269626 874238247 306720431 782574786 225148751 608842544 538296481 919688277 521644512 574438411 656576128 769369526 435385022 478376219 802089854 893640848 387734376 437622226 91071717 100800426 602252284 647385440 972896 94939537 90603636 293817197 356288420 494763842 952011715 993681786 649239437 653176017 116473172 797890610 467332816 643966698 988566870 990260009 511423717 945054694 763132718 807083927 470866088 908408852 273788208 415969256 72368194 351922311 176823158 480562001 698828272 807944170 644435624 717525963 824943883 953158417 402043022 402669720 668269222 795022921 626829030 737544640 626496721 752718431 951414279 975215192 72543308 684409466 881800889 990596195 291414849 752920869 817180902 907987343 481897119 885358171 916951246 929596144 689693824 773960311 363941976 857174754 193289310 295967341 540143280 774279660 727012074 743233956 903184503 945951016 910061864 910580372 400368145 660617569 748303115 983761922 511610792 533809173 523061222 932508690 401293308 490597216 731121782 766225684 473594875 759678496 339133921 352737183 351338326 879473377 524894980 630340190 160063467 352646919 910638707 925494949 430172203 761241446 881612289 941198638 224013104 728449446 154465187 834769754 509365314 668264322 545826376 640291006 360996000 664613719 13066377 701145499 376186703 528554672 759878007 960720076 663776640 891055664 476110797 601138667 124098159 440911931 694881673 936800964 800608270 900292762 572035542 601780221 843228236 972409204 873120134 961833197 829060864 996035591 852625175 973920196 38884915 340638917 861807695 966919210 413795934 653879035 595337052 888971329 517031357 771530505 584824001 764829056 755792172 925764845 75933663 887294016 554007592 854864677 865914788 868734089 397218800 572480345 245737035 407211269 410533028 768514500 971523046 993792093 994426985 997678186 514420990 550406982 522068906 897859276 123685382 600446769 663636844 945096840 890952252 897635267 494476022 680707265 421856664 784662314 396147436 906555650 762755050 852052119 127408044 476201944 603719958 838178819 439260192 839943491 567278447 986397481 657018649 758496973 458029092 467735432 438796564 969820848 324963251 877392088 15924016 747323328 547254655 806428417 54287447 341570170 747039876 960951091 342385119 996842152 767746886 975938140 648731754 791773583 564539445 723120304 469890828 828029187 183434640 658777724 59887708 465204830 497005481 994906663 397951719 688195060 515522723 715138246 40256771 755183289 913892541 947263470 710887659 882421609 921253559 982717923 678023765 863279856 640181832 982205238 567664313 953286100 552611974 999094178 262263287 666721806 311671669 842837625 188749159 494860635 764117180 973763273 155463300 596617383 70074514 920536142 292260525 597783796 340167070 951634916 906042446 926046282 201373887 288115194 219185573 882893043 289299676 770306791 519776958 722341232 913288740 952746557 930412982 939425831 797112489 920938399 389351363 603778091 542151157 769075417 464611268 512086142 114273078 120440003 804067436 856209300 678288110 882364190 42385869 513458161 742004930 945327883 733491132 836481114 210862072 251391080 919022437 965702288 763644841 847541967 28372509 867348873 303292382 695939063 201479878 875607353 715962290 866653057 596847014 685905435 576481050 847221155 200009458 810840912 809875295 869910281 398949242 964189432 721747344 981625463 800984397 884682100 140933695 795107973 149446000 859451708 532790337 614216583 779208409 865665756 228803697 793004812 921478620 953719235 372149954 559793200 748625171 925633501 428885707 621533531 780060641 898106356 729352315 730570013 541358771 951260992 219765815 944870348 71350818 247506665 262389188 584809395 862929947 926348163 87314657 886479655 474935642 936502806 765257353 830205031 789026690 918812639 712281047 760458035 394140259 869580118 897735967 957684796 242421759 953388207 491051882 856120240 56567522 637984619 401640505 442591655 155566212 351353350 760618658 998918268 874637400 882082328 476920329 541544463 990397920 999827953 715836950 778344252 565237249 753270657 209596797 992606745 503772936 551827889 527009179 856199353 917321074 986170649 473851392 959557814 193409620 766579894 673308302 892168272 21226948 37361578 522593704 589200216 596512242 988835765 587225407 784979247 940328992 968184317 759084425 869079262 611542499 706676178 776922580 939200237 237628731 296461155 953947222 957720189 968661056 997403300 755656156 989601481 7374744 607168913 865233064 899930076 62227532 491574435 738876605 933569599 545871742 957679640 172715699 921909734 773056554 830740637 570222245 817841693 862420123 978040632 145592276 652012577 207194427 465296838 533713476 587926836 793687783 853317230 959497387 987846353 29565937 822819873 644613400 850794957 716638819 842894015 642663657 855024210 586339241 612369673 836572930 974444226 351102359 378357566 392920658 562397866 884512924 991887653 153104508 774837434 528892873 862480052 691810166 728205985 781086455 797321305 56972272 693276214 514631472 899008462 132040879 544666695 203715341 951457573 93985710 161764909 617709671 722931104 942292759 994048102 873030252 873200880 967289890 974590646 339831789 674204779 492216634 906653273 764950843 788723859 755721593 792005814 57055395 143969143 31229764 681108331 134048862 186223267 556003113 941015888 929522074 953274898 539933215 843794009 192926959 948108227 91958402 516921513 116619661 582716680 403486748 677657570 913309047 962469948 442578852 768066120 231460847 430815469 584834568 872854543 353611040 548284779 968786086 974020161 704474143 787361443 732714294 900301048 478493332 857196429 446642057 637442220 2297968 371647722 665510693 668953154 870945132 996083963 571976051 680636016 444493211 545215222 223722150 229663884 770176800 974106617 24313582 895404677 905438827 940332884 424807071 540780365 395347547 505415967 252696981 485893577 519609085 981526375 764582929 948086985 565603763 916275537 580802566 846688599 427101809 735076186 835036524 849866096 233952140 724987755 949613165 967126091 755218404 937739227 157509697 794666201 272727732 542900930 403312714 455602690 810807440 989931559 986643084 990656270 886948248 955709960 109217416 168805845 600457955 610735887 489517529 784827767 137577624 463188154 741747123 895407859 470843830 536883045 795801477 891139647 290139646 974630169 736321939 954537834 427820304 633084080 952814554 994463466 87967245 102306771 532601799 726472507 598181188 892740279 466572398 818676240 275332400 614762113 124257787 897449045 468782333 787845621 503182745 560438709 397007967 692632888 58726127 560271697 986340954 994601359 275952867 781237289 852401647 890040611 157717814 969625561 750551924 852898760 31676044 541659490 452780076 909672640 809737894 923542329 393965800 852733784 340463704 748193146 483185078 701638454 586204254 928483224 300348782 371984072 611717257 753503191 332909520 601799230 434869898 699611197 640219665 704580454 443139074 483723911 853882107 948894008 268933791 518751988 405181534 452552984 49323031 555999881 815763776 945304669 223127798 596333717 884488154 921879560 499065682 693362714 897219687 952417057 278960768 628121402 15796196 278278847 368878134 419920123 10468603 273504445 791022882 855346523 951364609 977190822 792048195 895551843 824161301 909574564 688334197 801173452 235406424 551773442 534530143 674432771 760705057 968479530 450865567 512195856 52795414 452811366 241381712 462249663 400978690 538559455 846988174 876801345 342033160 936232306 275931244 330278818 525132619 765640914 901134458 983359220 427380936 649487673 418062894 418962331 33973713 496454460 544619825 847195693 599023732 825277793 158915281 898738370 461955984 809597803 63464468 908880932 861690295 941264803 726364291 912102818 692347839 749453238 197214108 267572971 791351146 913642282 354144105 406733278 257170488 410380555 120720067 329545552 6182028 354333715 387570538 815258466 792911047 990578885 772144253 985857778 908488652 953717056 507687328 669632198 990037133 995997576 423204316 790931782 783801757 890365376 121126039 436480369 387454271 757284546 915322766 973031137 146408933 490047114 922154289 988318709 366998675 913737046 613860958 727683442 43612173 682763565 838906382 956413080 306742850 315220252 548198808 654803544 409315047 587974948 240681408 965511809 911444378 920211826 250301554 443403490 418987837 643729259 874570101 955788974 896163916 904917897 346580000 593634834 914066980 923318266 712569136 797778991 991026023 998149861 772155267 875190380 783277332 877437706 253920687 413571573 303915653 929252214 271709326 632671187 470699946 780806681 743789089 875818291 466527289 764019908 651108503 780829247 162969957 446080213 17952348 141728843 727810963 816973423 504760401 954916514 284381393 722293016 745357308 755295341 445004346 790067828 109211608 325905315 77385922 443157967 68261543 462082922 258310394 531838915 223638694 984648624 448455120 458245627 26807623 408349872 745854898 906354722 185056726 826299060 288300381 411212449 378586325 997691539 25646187 801013299 169878991 975502488 262468068 527016288 499445596 994255773 176613685 788123871 82823482 266624143 12781228 313403440 253858098 720022218 543702638 621040247 766514867 816789183 266530545 334021079 699038629 815747911 362025126 379351201 774836787 953165749 364400534 734824484 962500618 987837383 513406926 585313207 30718815 282164501 357332332 911360146 205814056 724705086 907956919 979580415 543729515 547583388 808342420 827026531 743817911 746320988 271525881 435872560 705486754 974402903 14624159 252744048 968794162 991379927 333430124 475929721 542388478 551278218 292044804 896438474 754776643 864463120 290411851 867589911 38525831 70144267 955888726 996385044 956796048 999262847 351880224 803087954 596146353 768746626 766757060 885147220 670224719 878234411 348833272 493164935 76132496 334739090 322784073 463274133 575298010 764277847 544574906 969855018 482084598 836787404 946932893 996595343 307784592 538427153 774716091 976314284 41817817 383641058 693624135 797659851 678272970 995702808 224660334 904152352 91045913 782273225 85287729 260008841 77985452 898728792 614769943 652406784 181437153 442289477 501284804 587835056 113194466 358002124 327500089 724561659 775597549 854076946 278555858 725387317 563874249 692717701 338364688 866254693 330400802 881703431 393485489 784591504 127212132 238269702 773344894 871910401 995278090 998353376 174800084 240149968 480391042 995780767 152372011 552695105 365968678 475461133 461640391 943780924 74982008 666543332 558243375 615517048 410907133 506100334 315324785 938643657 899064164 940463141 924053751 973755000 291954963 711979650 700328778 958038081 905647818 971197702 712490336 925108764 638218152 939421976 229370503 381176683 260953179 397102040 3243418 625404015 803037927 965199178 621167651 983405275 190020292 538399648 273446522 592209716 653869485 767407038 133884437 977128535 303368300 749907173 729261302 936423032 199903797 677869884 330524866 945728454 370578746 384973725 873622358 962051012 846571687 861429892 130456172 928568104 274835421 712029596 827648308 892974968 285592853 916762669 932179542 980036934 197847997 539283569 918097673 952977251 410515423 606932308 29851910 261980071 482511542 846040620 997868824 999344900 886014417 999504661 424447298 578624097 724872267 784984363 640692926 645543441 883688282 998611183 730336988 776958164 647760729 809019612 519751204 809568793 208920832 644506828 230655500 928744669 360410822 472575838 797165332 974595413 325061210 404712012 408625763 632002741 468933297 696325246 790329729 977425417 37438769 636640710 5541362 113659802 391331234 908845572 121352167 820861684 545740398 753995133 820054607 882392141 70797744 586077961 936588562 968651332 852432428 861662302 30065341 320753043 388772599 790243224 960374018 984685368 952672763 959289818 227298870 482859440 15145230 734858898 96324157 274146092 612142933 893598715 967114200 974985795 602863764 660289365 216904429 673999598 852132628 930474446 169622560 238649310 964441227 998420984 942826624 964585973 486486900 533406820 485972499 644690476 889150863 972139892 692767836 959556207 762787888 862976563 100204151 140446363 750608822 786449329 730274520 841619145 167747350 938582241 469856361 698132564 970283190 999745316 284820692 799349314 308046263 932673197 141912276 562440082 853526965 999394966 997715484 998682964 8752297 319671882 140074844 796702460 672521241 680680108 720621567 877258237 495534076 687402926 265158652 349626330 637953215 883093913 35568265 331639123 565566977 656130552 757216204 976086747 801800863 916002591 319560872 415982206 925786156 992884869 476024070 497602157 971208405 998254879 674140499 969855712 96705143 120259973 494867177 595098461 365578425 770418106 980813230 997164573 268341288 605747223 653574822 974525799 948247114 969131788 123064053 329936950 238657685 295562123 324779470 728263374 296479476 334784175 533092568 629259798 98080318 192424899 69100115 533559216 418645295 811302612 98282094 581247293 209970730 799590483 907176917 978009014 277832016 706834918 163512920 820938976 983828993 995810676 850032099 938784821 277828499 326174590 94298675 691950719 553469974 695173702 673309449 848791214 621851363 899940162 124497053 283781671 187375136 538058446 580087086 902626006 622781487 730860143 469311726 813259395 813637273 840564934 30633703 52505514 471680655 558758069 621952921 709706200 382157409 667981346 394329873 958441643 358166742 811034901 63064714 525020513 86554893 154594519 902657851 947058834 836930751 847928275 879868254 943349912 855320154 950720086 127339628 456805494 362718898 936154427 210874821 852751458 679147517 841851437 509185741 527649898 639407249 734741327 474793215 849154489 154321897 249488994 752032759 863628114 779227406 929627589 686504848 750121253 110538575 774484450 174270170 409944234 291902258 949629101 666057542 682103417 566948988 983474763 980638039 982859362 473114423 662467184 562380368 851051422 944977558 969525391 675928055 908492083 389247337 983046649 25806414 379659805 876911568 877027512 594332530 875476923 923447229 963337886 693410234 733514361 952770076 955779775 707590493 817522278 650711751 780537136 184744785 657083205 307891171 768314076 11976719 813329320 747350844 841537765 214372572 982360323 333006074 611516269 685069103 828665012 357869035 810083637 941966018 945095227 137188370 966213477 943403842 970437718 64196114 408513607 93745756 284122022 94326173 545523635 502321034 676652933 531988463 801804750 598770312 947265840 927224037 996501383 707395792 723537047 863369085 875792050 388809391 584699322 497202451 620119887 215538559 370791563 956967361 974241926 131419338 541335262 222604420 774528778 127471041 209695567 333498275 805271767 700078743 876343925 974593917 984105870 105257775 679846034 473409339 775793419 209826536 883935158 936276046 954085919 115161607 914151627 182495054 879743510 708094069 732999395 42075438 320327149 805251425 902041867 307533905 407781802 794774762 932394938 327713075 712559392 438272878 497909424 996384206 996765050 646714065 746645543 848485924 897280989 174650352 867934311 899785308 945381291 580251593 872119478 418504660 448536976 700916222 704211860 408883722 609606973 901921289 997564682 905922115 921549503 115797033 430397873 557406360 637262981 421760699 870776358 554461702 930246766 488174397 803621305 189380492 694943788 564530838 715076400 305921083 710377132 780296808 853397568 432510460 823085961 391091916 720275391 934364171 953918874 887630104 929713059 305507300 418954640 143579260 380633524 894042431 907703152 426913396 743868708 203014279 860318632 695125154 712057003 886545864 994436680 902510403 950217721 159615984 411356002 548258330 585318968 818778342 907519092 497840685 628633638 697827928 770944066 539996693 547401361 940130687 991344527 700283929 975288968 163443687 334767062 619896800 858315799 356550058 577533419 451035470 757460593 633195692 971751209 911057100 968134843 281123257 788179893 507932483 736345140 315049264 549455870 699822958 796383048 460968345 824897959 149297459 472314120 542476817 717217233 261929172 294755550 591250856 767944237 590879236 663674888 211505569 980792158 900335389 921413058 895841171 899672289 466536255 528999474 857710879 868503771 598300495 734575093 896918559 923958759 487951017 912678446 785971706 997932444 849866951 871040761 315937481 697025802 761114972 859660378 275513269 870316725 418206105 462575049 867775339 891447538 946682248 994179552 689591806 875059990 643054287 728119774 759354295 814661013 595866340 768749209 668375149 739606866 146526044 612131567 105140982 906293353 326981308 674167768 878814593 949066292 895197392 985147862 50771740 166788682 367632730 822593931 568536715 574279066 391126452 393792803 872394975 972194589 323890088 638516715 71030459 131560838 51212499 597489530 262647151 931447601 448623659 930204316 15029522 645389594 20520555 220757419 824639608 825192851 85626006 283267150 368001154 521815262 865179727 954071074 151467279 581850957 825313403 897788913 954393130 996669032 797241527 846491068 741915839 939549995 572939386 853692974 799177673 949269762 120896753 987728420 575518689 640053005 532494284 948021321 124442564 965084006 725812008 860224673 969410485 974318247 747623245 756925460 203506309 498726386 270192528 989448452 646749071 765962128 596680096 925070357 430210963 463905583 828636580 878843246 700382577 704229613 653895607 747473654 15111686 531279812 390368708 970437162 249118032 414094570 327783500 496865643 399665535 510939456 661671993 850772924 483797531 507551101 128715653 758664471 501963527 527958335 663444644 756571072 173267866 362804809 421127992 723823418 426579534 592183503 466806367 727245799 685135147 934819302 535104886 639480278 312768106 409742328 361589505 704601715 308365984 947546477 808920103 815464167 582714297 704758011 88305395 613572667 417933970 570296172 109550252 145791263 617001895 826078819 537477256 987433872 971552748 990705387 506267308 883688751 168531986 296256685 736466905 985945445 722878528 943100161 778311128 846896547 749180068 774168896 402038934 640434916 469660839 568116081 373278386 896122004 36334389 747762047 205149135 451132935 975499053 979352095 320890103 409597018 926594005 992484014 439491106 758295045 991160983 991526081 355606297 566892861 111654318 319097823 728594201 830889450 451466930 751639827 20056723 803917431 884491169 932024511 613808230 811359137 288270256 860372249 362830640 785978888 84214152 790754504 281897662 524459577 489758705 605811674 727552017 984154028 697777094 958768182 21888212 691636838 512639725 691824004 871559319 898045121 905593184 967765915 271380752 443279204 441296221 576981431 101149238 872980520 419955299 446283986 499669442 998386152 683076367 977268837 209262309 738103530 881009593 903997258 616914267 627612721 167122455 575019143 707019315 909704411 143623762 551608675 410313170 489844401 487381407 976436181 640319604 698223619 860154514 883112672 591593684 885115261 175171294 654274916 744937718 918907645 772335656 988021822 361387414 976641604 595796701 656489252 561049599 996781564 469935809 522882223 832465945 846160254 793580017 807413435 461315228 647426012 654112321 822222326 429172112 606375131 130546606 147975068 158962771 292457294 109990501 966154294 660220201 749111731 23866314 728371558 836208512 956322960 265051232 767381133 791125357 800781238 234580635 425151547 939052830 943221396 323942862 964091268 314178107 480299593 88395450 495416283 302453274 529582013 113367705 146029025 356322813 540300826 85787538 242544359 231377508 678037756 813140666 985167400 28072585 667502502 915633656 979988774 790593125 952288575 587612690 821737320 165787097 376380307 410835918 698947535 928395390 978437020 746930119 923113203 995803728 997824472 290266183 752793234 498658637 673180156 473217661 804994117 46370032 890003477 505062006 957388366 320193846 596736110 531709215 745716414 960903170 980176742 705862696 707703063 440253280 619207998 984005491 989897073 608268888 892240866 367787475 941970947 464277614 604962249 449611400 483900645 293785487 842361287 72561953 967973429 324881918 980646592 61863471 384433951 43300559 360744276 265637938 607208276 141822055 757691289 850943948 921787468 338724458 916396740 681885525 751707545 330986690 938378594 706114863 926719700 857393071 993057513 997277871 997846090 976394296 997764481 522781977 900556838 388841179 505195493 755339073 915114830 578411075 709375519 905265822 954022955 369604331 438848975 331905315 507498944 365299379 946737178 945453858 960257829 522980101 563384670 364869563 455212103 760435698 804901351 410611017 890891505 840752329 923107096 94827795 741253291 207368082 297869994 975405901 999404551 74117203 310920426 57295793 500243375 838123998 888782411 895676793 979030525 975119157 983353939 816586813 864117266 40618192 819857194 810667347 911451657 339477008 834679723 572249346 903688943 537011836 544449365 406298190 908509265 560561494 956618117 741517688 880781434 413268359 891148993 721674999 981715426 725146769 727184247 457600695 702284747 677585589 813275658 85405222 853823905 914142893 969899548 643463679 811271924 146563588 433763119 96828200 583161634 794339895 826631955 697885361 911838632 170782839 226052698 310467237 998742772 411856362 529169375 655243718 837570853 589556748 632127492 388970070 952370682 605339961 980730100 644775867 854761409 143140585 691265642 45778553 323691385 892259816 971748466 558003573 616641982 496790277 518058091 702011654 975796974 256360804 715906389 277369411 783412539 457916313 535034576 540367806 680137450 494260596 732628985 481225106 873472183 974305396 985808319 238549451 976204767 612400884 767605785 330185221 756017384 58803836 709521482 579986018 862482341 987894824 997014471 702400560 781523864 500623508 791106050 307637347 562656154 766088883 910540000 36161317 433924407 226968903 592419304 588079824 901273593 849183408 873440721 550554999 735672461 674111767 848430589 369099540 973538431 147266283 158217192 328658835 823582682 23335502 989223404 561657233 859496306 87939412 919053543 312312538 874997008 622578566 692811979 357843310 487788978 770523436 883596111 18408603 159314831 659855462 723826189 15662585 324870035 312809224 383312900 995065646 998133310 706931942 798523964 817064031 859017215 941774543 983687782 252717750 593296735 620109408 860040784 287205005 990251380 79168151 375561412 876126348 897485257 462295253 806803303 70095963 285678639 113543099 936104027 106657113 421496991 594315208 963904991 246257259 531079591 311947992 656403413 430906187 903816558 787723511 988129012 870990066 894951798 743070970 931377432 290271161 816485631 266420441 311026613 441946202 632549052 916421412 995698197 200524394 808040603 492251335 727450944 287529702 566933976 735926288 969950029 915506154 997458930 749158728 770490287 926151300 964444920 224626003 735525704 242227178 298473128 290347606 489145620 285827813 924730282 970948229 990336186 262007904 457382674 292194241 667090884 824362300 943974860 636112823 660144384 740669112 843933096 503275327 971267298 33940417 283032322 324717820 810345682 617409072 718038377 196085587 816662001 906388334 917471090 388132443 647564524 853664820 864919660 700401939 718152118 41741857 583175143 157227167 979843781 392127099 995682511 514218577 588965902 385841548 658853320 251107518 609370706 999131160 999838815 171814424 400809178 355694785 834929591 947629095 992635693 120783405 805811214 469688233 532870557 543179075 681680984 144086599 152960819 122729202 771278433 50263451 93154131 104945863 733644057 10255733 22109900 626322943 921965997 246457393 319859687 246530866 786436029 926741763 984237261 627948124 934141443 64645884 120165067 514407045 872188921 296613605 688200055 255270702 596500661 463913608 886939442 8561771 324188277 988606471 999903388 541940436 963104511 988333287 992778926 71638921 439318641 509136844 967861877 329088830 716467401 764044076 877427982 825725140 829734261 33953547 140554458 928849454 963667745 734842742 985465352 466810196 994094440 31422390 191586279 883304155 896275341 480344471 860247066 658269484 670629670 518388796 687377659 522268457 889939526 869669280 938547942 610532496 794520506 683396208 764674494 392263439 706865568 862173343 891676430 331819077 989810785 961337548 973576871 912953377 931640206 87305011 213426012 399892268 668274648 281001448 451905703 862225454 960291869 712232917 787304930 58014946 597950878 834567178 849091118 79614985 387310123 664812688 808867301 865329153 935700670 798562979 817802720 742281886 842280744 274223026 751387501 842281976 851518218 714410150 806529852 824197390 866152900 469449469 577481272 249947253 874135580 73374673 365368668 271371672 658749592 847971798 875054182 672745534 800809199 672286150 855903438 151868641 280218151 836847271 931044390 455352588 955212997 976808073 988861275 187503339 617301096 25051816 749467199 988648278 996536458 788209501 900670137 756735041 786892720 783689395 848497065 729412414 729879411 557563108 571124779 277391888 742685022 643055593 852385382 438336953 804701998 894375641 960271655 578538118 620691624 2613760 640640018 77681682 954643363 511653803 699150989 198811914 747326896 405553411 520431074 967169493 999595038 708118303 949901561 741572726 786024328 810536721 830439202 55687401 251283798 647148514 806633583 760238620 798142545 775880326 804571910 394251785 538112646 110752549 206113430 529644009 852623477 183301720 957573133 156588051 205772129 776190927 789259292 745149312 915127310 275005686 988019535 845288867 995468487 292337747 829276345 125375103 214011498 302257312 310446791 515564649 804427115 607699890 623855356 847439526 922057465 977255293 996058807 950618418 966382666 154919731 723719454 374445778 807506483 142990443 319215670 603596030 628086603 923175928 977325745 802443766 939258399 342529115 898759754 25052422 948952592 672062595 987935790 408428529 564619349 100431611 932067151 566721343 983671007 862663757 885861787 598443248 620220157 822074202 910621627 451147709 754159971 981528422 982846132 431250582 607258774 588655199 609911423 726035333 750291548 431159982 898882886 763509400 916521372 815041455 947005732 607317626 701464466 663975741 905736597 138233471 526148835 520423942 646285862 449388337 665658183 423368079 727467766 778648608 992433070 275991383 865616074 395391805 608283703 166310746 624179895 24678012 851818202 650261127 671299629 469876733 732713644 471859884 794873334 135833631 945026412 783927066 913548754 861270834 968194824 21289020 906411143 286030960 486254667 946441391 959990371 433144230 549264797 8939636 196231183 202097497 632710726 828041856 966798374 123126663 560604627 859409758 898338818 685854593 726950530 789018074 897568450 399914557 551351062 132580449 343879478 333225051 936152424 231833003 378867880 759082971 936779486 664554377 852806274 748809330 830052807 422044264 591244427 352796059 724248233 803424962 860975389 556412576 929666943 100599898 944747065 669940058 929933527 712983094 828405632 803122264 899351106 184054743 293637955 981041369 983273315 278866078 692692438 142210473 923403569 985301668 987181934 934204735 957888755 66490301 516952718 794630278 961760681 526789945 999001172 695685908 742121770 321377686 736209097 376258734 669724631 511701489 963413098 707531069 947860905 551146676 934056660 334345304 811435423 29025676 782149713 95806181 727169950 289216230 937117689 819746867 896851698 18600856 20608225 676928453 741291457 463209050 515506168 429120768 431335231 247677274 666864933 439434059 800436529 883101388 889041331 804642957 834753760 240275276 811985074 327486022 438258624 186823298 715821344 499236496 735240149 498211712 519675780 348036598 679702823 980591010 990028679 543657193 757664437 33143121 483583032 923928026 934995007 873803273 924495398 357763799 777392014 955959170 977749066 918564449 929304632 913563013 921995077 832486471 906384292 90751465 578642095 489021271 675416483 604384249 981695106 142013220 213029559 514213384 724566361 617425243 855180785 194885076 661245497 125885227 603281201 340734993 897414086 870947017 918344983 248131345 769193233 454954824 551617303 404134742 947221918 791394309 840801563 609887849 821693687 436117777 603284630 488714278 568247560 844250364 930389502 703011984 735022339 753256944 863088187 483226174 882942721 176500818 714590078 865194994 969465593 45427539 202961566 781103030 852611951 301167507 648440028 643140695 938155435 664380941 693404625 402954811 752450176 447966975 919880523 255297529 312897901 855720747 986586680 527598850 569416140 420397283 950573293 569732825 806027098 680829929 787879300 74493341 646762061 10536359 153064824 11911553 464049270 873827417 931084262 174929696 616552049 7344788 338907766 598424922 854199822 400084698 422396703 762528777 823685764 341951917 957897066 749927648 976232020 250152116 784896378 562549208 930114101 891406527 969729815 830666426 997333802 947078203 950606196 865880720 934452335 902338078 971526305 229930285 583882916 496922738 569780720 796180390 813525113 561299427 819953165 237524604 834695609 42542207 991869663 149748875 543527096 262163950 710024615 794477214 922199654 158826033 529982181 115582575 426876171 28845207 156473785 634582977 641290557 884721734 900728226 180510161 235557460 195480319 671157064 152527755 985188749 405167010 924219943 176997878 791133976 747863970 874104312 545539920 590121231 784964624 944375404 311162965 355958536 957329988 973304562 765710460 898239536 922966855 959280205 999434912 999723541 303529732 913279817 724077953 977344726 945729714 999683067 471737962 472368540 517582060 891321460 253112142 613225085 461758023 671748062 523200225 654552634 770944091 878564654 824110781 889062196 761683033 952305613 540490027 818211334 960447343 982539693 355130062 899673068 725746434 853165000 932791934 997871698 911323658 951740897 344540225 684985869 392162359 453539638 569720670 829601216 66270039 603987074 636266547 898644395 419233866 688974924 126701462 328181373 176262310 706805873 79233802 516334522 619144310 808162545 511939670 891087363 3414195 51389149 660145580 815213926 145807705 388741334 886980019 994116043 803537118 832940138 783539153 872432288 691349689 747079188 74687491 358925822 84163486 245281262 770934207 866799767 133673677 854090196 941324774 963646528 777538968 790899024 359860677 434331185 557669572 563813613 976117957 985239703 744541360 952748238 439691199 934249582 479854515 850546505 984791403 994544331 781738000 926057882 51477581 946368342 637498516 880522825 118739906 474521594 817518984 878580627 105799898 163376993 571600164 882261199 327570446 337007073 556144519 784693740 859134406 886266090 787868576 859780472 784013821 960282962 56682826 884445562 99656662 902801005 754728723 968251487 278727162 930181625 592644478 971726289 997137655 999687146 947306977 981091309 616788920 808230584 84988332 727595980 623790295 753717003 31662256 228390233 116013344 971747191 118368551 464309328 161106214 895659317 466582116 560629877 552265799 997723747 600767958 669612769 32840820 330963147 722024853 907538093 461125051 815821932 763638397 806461694 622817399 732508194 543919294 878270768 458564891 949192943 37186506 141979087 923453464 954652574 648203779 891269053 619725994 840324826 887775479 921218960 738346828 749836161 735381056 756250486 988513190 997348057 586378327 836353097 641549154 837498610 374838320 559294775 340999268 594843193 525341024 995171146 695374486 904427646 578398944 586754975 516148624 790637067 360799140 512947756 293366567 656941446 840296341 962830212 517704866 571846309 485064189 901640655 952075565 955933281 952916392 975288102 584447204 848435225 614975625 948329354 198020080 221925490 353588512 963931218 10202799 56444833 73320534 140326681 375101659 616946519 190031086 339896999 116162900 967340381 31592081 36957264 582286205 590054461 453780244 947091462 75999103 914125569 377279641 870384523 573583690 668316240 982011529 998635052 654649730 977614583 458786238 689828366 603174582 690811830 708932244 989579293 697127269 816559866 7401806 439301949 503342506 925515416 77327738 825295078 664323132 742784860 329462151 586100812 186655129 964337825 65591669 666598860 386018086 777682741 538279704 990669325 376443480 557167604 711044962 740555380 533352255 588177454 770329083 917156245 617409464 711709045 397470910 715384762 577796822 836062951 965490783 990235436 218562157 536872625 493478419 960309661 51820675 460340417 737171777 764757798 970421101 994975131 166340732 673597565 143819117 226075404 740198768 862424680 657721662 661019309 945939615 964263742 280410468 978110984 812078562 954337415 847999673 986305519 971907920 998132738 256123637 680213966 103756379 561747591 814577170 978579716 919103305 931278341 151772878 636856334 547608180 609443486 690245978 754902218 107373906 181083588 724933334 796683555 252492494 533576806 987464651 998231776 767031728 794905507 458290887 688043536 279898159 533607570 135802394 462393090 611597155 988036116 923452828 992337266 413635439 493890513 150426973 955187565 918909635 996284585 136144367 281059810 611081490 946382374 748154116 917424239 312079687 949055613 217796620 836776224 798535241 976811836 127974800 379615848 479011053 870721259 468360252 640787144 72005143 840808352 200711087 908637084 655563526 990360654 100751932 841163445 723618687 733937946 114776839 413851878 40137870 407082121 315458685 484904396 649666248 781941566 667404094 816232097 311952796 909986444 2302224 405128294 64372973 810953620 772448497 925724035 535157150 851481793 558424933 856321304 394795770 443091954 640352293 757988924 552206275 945122993 863327578 995541555 49656075 58326692 540784451 964195890 396132135 972592314 349129424 710551519 321630586 896850398 905913042 942124600 228706584 411331396 755470696 875132494 770289854 801836681 494750203 501750052 862105000 930732612 675365846 680864962 836182033 845754894 666859853 947514660 786939562 899769200 510518825 849445387 363510330 887798963 229416044 372490433 502412044 599107299 203441193 667656076 697377908 993249754 589831277 888219693 569790600 831177409 418263545 986319155 885625198 930737799 297277043 857927311 846797664 958071785 93776185 695267544 346198971 903099415 12146723 948056683 578990353 743850467 257892189 323432378 209359692 764153064 899364671 916755549 968469388 997403296 95814169 315336535 299065341 966299725 912071236 973279044 858483969 868900839 527319163 804669523 977323625 985757861 930993778 993158179 169347111 536458774 722934075 859842291 711485507 764987458 348838331 897626823 616914629 949795160 243255135 378851016 690155242 807420293 808940197 861515517 23156117 257123370 368475508 581293046 443336097 446914711 825625795 861955685 831473547 925915881 253116414 430714903 234079826 694870395 535067134 604256080 685945669 720304150 241662487 965822860 258493726 448314939 157871083 827684699 23909653 933934277 923383563 998957610 920818872 939545681 868790843 874632843 860780430 951223320 553933861 768639888 994026973 996902295 706948131 976785838 973361337 993775082 289731662 892091496 507592340 926121377 826283119 913800965 346456139 521043381 993559640 995784388 766408958 788993023 273808859 899112736 227095414 354246180 100456220 244353809 871066421 932730346 923586932 936043676 22318932 983892827 535264300 588192767 252448620 654064437 704267005 731558656 268453982 809663124 578207187 903725227 887478810 913527506 103704959 757213578 112615465 440488192 838693907 914324380 685507574 789871485 606112086 809339244 185507610 373572066 232783108 809913367 732184681 734939908 792442235 926726348 924041629 974751728 284728049 433112272 832834109 937549219 187234508 600795424 59905681 601710623 600451670 874612461 56205329 283982547 307882182 892116036 34103849 577261975 925729880 987824927 80257586 394822260 558263539 783441593 119945044 654271965 274246098 347895929 319917777 725700201 725344356 829441862 527557906 971527671 287196693 905551174 754918116 970079319 776111372 943408307 37306434 474856519 196209456 371782518 562956317 838019544 223901694 978280858 847933279 943793603 183292853 355048227 316826747 380711857 49856905 990538657 881411823 946182332 349208618 910180537 322322302 883513337 325087231 564600354 613275183 981106543 384932871 787836722 902026911 911534775 243897695 696484197 820449434 910443714 509919803 951771740 974320406 986428689 601697213 894970763 75294975 415893300 888420388 958198060 301953649 954485662 814066761 960190032 969199173 990784033 414531119 986347211 479133931 930166949 444182627 797994363 261994279 338155548 411401198 951662506 678703410 856692624 461715998 688375136 365719545 623525640 134134109 657866027 46653137 727441268 762039817 894773742 112931783 866617329 657221510 794126216 887149590 936143481 895182097 931248892 239696364 444408534 533357498 738710531 609493909 709256231 51182543 434156248 276201366 940023765 89057455 773051056 922950820 979203489 652807633 924934024 591251478 997197615 954640314 984441920 316560426 592246675 627123214 850439461 995019023 998234523 813831228 999863580 381595482 843007817 174095861 339132216 994610674 998045203 397966266 922450235 29291041 292984441 29470575 655582879 879704794 968706936 391738695 654818401 822591365 883729147 318555153 661074550 782758018 852422614 39569848 669025913 59680039 275893569 313228000 977539367 879600387 890269946 520992694 607042609 614919958 904691032 721808321 978514108 534487177 599974584 422549139 570535545 437137501 974955218 873953196 969743448 868162204 966658910 980478233 997705873 692124165 869572264 667555253 893423978 999310344 999964364 902944963 910753768 142688773 768431979 61877173 342949644 838399251 985302395 736929504 877125892 41017024 714330992 291671574 943805782 18754553 235849472 238777878 338426517 33501065 902217064 356583835 480970167 806930297 815151436 918143796 954268636 90631192 980092232 75327752 918113464 794194172 932013595 89675852 425300170 596575527 818371895 561100781 850880044 333923141 933196355 653732869 727581137 140528247 430224132 256597461 915031985 208469823 571446815 946320127 964540764 823601167 857814322 358668902 944919205 204731226 506685493 481742403 766272931 422881357 943927404 380374277 525709667 655732492 681080688 360095890 469821871 205945662 524170378 283087538 579495850 877644571 938280361 163595877 407177828 647349477 875308934 399050641 961883941 597242785 998543104 500696783 885216298 563361337 616823871 660756374 852660562 300010996 482940015 611750019 933366590 642481797 889636707 443230614 540740796 731020609 732635743 780324616 926376474 125994812 426543012 85147756 906843987 213458576 698357997 327860386 782905975 316830144 536380620 968203072 997641356 327134342 948158891 167736701 804339163 357683917 376009219 372228720 667222808 186277473 865180346 193066124 279773771 946999293 995901182 966302083 993663852 408933213 671752137 436546182 550866978 807441799 961805385 131730853 564181304 802655798 836189034 524689326 966902359 429111432 663306649 771879646 858445797 520607415 842711141 746886110 958790906 167003454 697557421 677073132 698340319 984050449 985560091 887502807 975471542 283697484 518066435 774142735 860914243 508182081 881969459 907317817 996730412 928676948 982613872 326400565 851116350 875472084 943625131 418110377 790300548 204214386 337638975 331209555 710576411 293326572 819085137 115954566 887626781 155834560 348487081 691161873 919248072 334001241 685695932 439915168 467670817 307178605 969856217 271919083 548422709 688502864 700521930 668567122 777130509 596401027 776312695 189221679 649952944 222755389 375890691 933054356 968047685 142664840 848005024 580883985 906383797 281706705 659030611 261295188 340335021 940729091 974894832 470812289 480043665 957691030 992378767 239534395 905205844 116982696 704719023 564723161 613318480 114403607 464898503 628739565 670592075 674849524 766608042 114579297 798939639 555237843 961415361 92864794 903620060 589079313 733232217 509817879 922877409 940124026 977292345 538424786 578413334 673103261 970931528 275872444 778963577 217082820 620604282 888906325 914500784 763576225 787275522 564313735 792009439 808740607 911071054 11865275 730573110 799980179 911558671 433428106 666476472 638028091 865365503 872331031 963605953 891062281 909352619 71945049 649389201 882823838 897941506 499558242 866975347 892978034 901196895 423432115 924870618 162172651 838993533 814513501 892659347 62055889 311214650 393887037 715947606 867187902 921195636 567117981 580706445 104097133 304764145 261880120 290291968 444555795 666322707 690414345 940413938 142154640 663883643 47996892 295406098 237143789 678318721 336741852 963978745 590878350 874388314 284975230 789453290 395154320 435524648 410709001 895876731 676854629 869343149 989059706 996050908 877084076 879050097 787960526 873266718 410187937 840349118 41097206 913967543 486941683 989947615 15653988 119291845 4169674 202583390 140355662 521933960 134905748 619941823 55544208 839158493 989229647 994641084 296391020 618374902 578843211 839671078 999049623 999391266 471326954 939097972 876808767 966476118 772916378 971956894 91450615 548588305 482465524 895627519 593741843 941301766 44660742 513777705 37992698 366699983 289410533 436651267 467544326 626556843 617048176 925080059 934845100 998779366 320465665 792811744 499215743 863473970 578891525 991126805 989163152 991857611 72585104 898183728 231752323 680483531 318595259 873794760 434127087 527076180 571906428 829724013 358985091 950319790 528774749 996562193 423699356 798291089 714368512 984098474 946601756 987130196 857008175 949269522 787681072 892160894 301795111 712336643 458950812 837304169 622798941 701037998 487716415 861414328 583762087 658826152 513796334 802557693 382696132 697316225 981263941 983902561 9453159 822531691 881156036 916839655 409254626 765458021 538983212 731662189 422315073 753297923 156389636 442668162 288528502 757493486 358636645 972028961 664350210 672852393 12940478 516004665 890692059 931255194 603665494 852313508 886259885 903505593 814086185 859008365 892010437 900536973 94214220 921454083 626407253 664369054 594156172 895438397 532075030 767839875 688348229 700454529 505898967 940206787 266482477 991061322 49256006 579686883 477463732 946772366 500269266 721605166 898802601 998923133 541737371 826925795 429512146 833078721 766811395 979596479 744652319 889813722 410523060 872401289 175265957 604166426 956176670 975983697 427570416 489488735 618842090 952525413 501966133 626769603 738643282 827599861 66028091 734540021 477832410 682849146 416220576 804193847 115897425 145495605 20111269 342368704 927145057 963490828 482057358 992268056 486594894 886445060 686226320 745776487 959809933 990857664 484406077 718658377 794900714 852267935 707388323 763478978 326839833 562706840 851000159 960160858 386039471 459572074 873554239 897439581 874824058 987005025 634230521 948549396 188107988 775936539 772196389 890940200 875594167 906113984 821099693 928455157 283232050 365479871 180330112 775183175 710525475 780978779 724341983 923697243 465135143 545011720 507150836 807934307 572493977 944193119 438174418 651063421 917872298 999843006 557591439 857817206 319824307 406142703 452107401 738008445 578186085 947343136 683056226 932948601 292812021 539939113 758031915 849206841 218620610 414225246 454904151 995725963 756557371 837411794 290330102 776234783 214403525 642319979 712938081 821169320 838225858 914812801 877658741 889190377 249719408 982442344 95234297 806300661 844992735 969768357 516814013 735113041 364336299 981922397 433448920 595826425 698700323 947650507 14576335 995971623 486869538 569750056 596644173 608633463 415719370 715668941 509966132 762913647 129280969 459606201 210020188 622635249 940490078 962081564 397051724 855948095 192727996 425240004 792229788 899063391 707380826 967713079 221978054 256787850 598277406 973235866 899989996 990945878 318757109 570773868 622856310 731846638 5744958 859182092 167453684 932734381 370321399 940963829 29935405 209077419 687402018 865634623 553917675 570218296 933805159 952827917 800909997 817695720 833145477 872763762 584841176 743638532 194031907 593080976 137796523 435613697 292473961 467928683 942241117 961567799 977445712 977932304 344427543 938130642 229124229 822555045 179771564 962168598 535142774 738460680 12977850 660948199 41131654 639558006 329783912 796780685 694888953 848896482 660468504 826125399 693483254 889101445 648638582 926006700 251803605 398999943 454809007 669187733 722955576 792453079 774512360 931155083 206021715 521094331 460958401 532692017 17205750 889823973 937852012 951597590 301476913 901859426 508701349 584367528 392739003 731592946 423749377 766682624 98048235 693820848 259724520 915421493 323895257 504525067 123362016 193594860 16617826 626888173 285572534 581185243 772447030 850349141 406221797 533706583 883688004 935123732 610276373 972725335 153370476 344040886 478429835 992956515 702980510 814995722 80566420 174167082 400880558 808222905 208089109 398561978 77688750 758596362 210891286 284548881 925541614 959304175 707318408 943815109 920115404 941420158 384806173 754511607 369716819 693092401 536849605 552517234 484204786 526671508 162987036 707663326 603724035 723052835 620082876 698103958 676521610 858519756 860415708 932978542 565814424 913489965 550608236 919661315 911358987 920395800 285748587 695561441 770735736 975860991 805292533 900393497 274273761 953708486 863211840 910699251 721361277 956779931 566654969 801660808 144377714 247358276 196296223 953015940 885853294 890668971 931889940 999357759 575198249 593450869 182288550 358702389 256059589 548144519 2655103 303085968 194227601 907988856 157798752 203757483 345118859 738725714 476059372 703329340 311790167 646579510 771351517 777730252 701420490 901142718 400102852 813179824 781542199 891150598 659862128 860174483 776530093 795265787 464628309 746032394 295841637 549522845 482603948 802570130 604903456 672275357 860347767 860845649 246616506 378538102 221701389 857049538 543255520 633470918 653658099 896236027 588552450 857463236 976476091 985110387 104163560 502988792 577327586 641916215 823027536 996615345 987472615 996177452 569445896 943464170 939684417 958951991 484135029 976286310 149376805 219628883 758123051 994738181 814237429 918951572 619271125 692150160 740119900 787296653 520032065 830824718 743229204 791932571 992034226 995386140 446957727 723839692 553058537 838967787 616696417 845821937 937275239 950073559 345428959 674019494 637963323 959723817 413989654 414143574 631573040 686853495 258774200 344821383 282101389 780645417 698228881 911161158 476382575 643633116 195720058 338429789 398101215 684800002 653327225 914542242 860099938 941263244 781378627 819527680 432409424 718784047 878343955 918241028 428162543 743227382 817807067 934227255 592404967 753094895 553290390 899085064 683356519 702442299 545975256 939598981 732782776 968879840 54202182 677665949 900227377 992599748 349758019 751049418 397980855 473240681 225771792 805834729 11708132 903400136 494825939 810394291 181488760 651358556 635947775 701259711 449672695 846855163 750676094 881702606 858211015 962582262 505868988 938156805 747072643 824494626 607050038 753008543 627812722 977178596 532887 798792700 611661130 851157380 254436558 887516764 553083852 978107300 185343399 437546005 44119792 523466398 771201362 886538409 8237277 39142687 844082597 980866417 426378986 767247613 726642684 801112682 13520768 606251266 155271007 779439575 583973947 865249398 329003012 568595887 546022907 914720658 773487125 954574217 306968444 656834820 776841224 796521722 822185611 896919169 388080796 866565955 605231983 616521549 608883838 626769920 273331582 697539537 543307626 783940783 719384949 942206356 542438007 639022554 141050660 425020764 425682105 485818518 322460815 702343954 56558357 401038297 333395294 572352853 300078982 734781315 136825841 204693303 811127503 840183343 675187786 685949107 572991026 665462097 514499190 866635182 852439191 882960167 242769470 551648495 625393916 938452095 637714171 886102588 666566270 697872604 180395940 696397012 683809641 879536401 991282977 993926640 695126085 768724821 474912137 712261006 764993465 973607687 99213372 617093137 980587884 997128083 905015566 968055854 771539724 844913868 882510840 970230440 729063431 885599653 58983822 528219089 124216879 491268041 753621835 964100891 173864973 546398128 610222488 634239474 52764925 415805892 136477173 317309548 157821940 312879491 779570370 862833729 393430606 487951886 820637160 928511565 16340649 206861055 207515999 226417858 255906600 579099157 247265362 735686125 521105916 984274167 162692951 207223407 107226783 720834903 34884438 543396136 125451858 218002149 956560838 985547418 593393563 598972188 295480573 792937872 468461219 633658557 951059543 967104140 759958110 860604248 511924921 817238646 472299852 877100717 146593489 417169005 530711960 694217447 888164418 900500581 616761344 671643903 982621490 986772058 420490038 656571178 657845003 945811951 514955503 648955864 212850744 447983049 670051963 847355660 536691213 970201076 164412904 829143155 504870984 767438749 592677735 699236693 983355513 988202205 408398385 848096814 592641593 652990881 424060880 486634885 570560637 982909101 626059578 934131653 118966989 930517967 931017648 957187020 30021804 875967574 743600140 859257364 312670691 625035507 970730835 999521738 826929928 934961874 965830922 989490529 560755101 993145700 394273136 969712159 52509259 584993587 648711689 737755309 419476076 610701948 104560114 931131933 625534980 961476848 840456055 991808688 108617190 819869507 820886565 947484508 546432371 926680935 319811451 566266275 526846079 999075331 977502493 991256633 364123883 400383912 697745543 720257437 692095077 864818034 428437142 569322144 797017729 964246798 459284826 579395283 490473790 811971218 26144933 229630603 522204687 763908829 591152114 792645594 793061228 926822260 306763197 871784785 22825235 645506854 896534848 944312000 78716669 556723204 539050981 639692610 797922936 824860696 691879918 795691818 63227358 685143471 606922381 927444869 989549794 998979675 525922960 962281683 253632296 851821851 12011276 396974116 339024871 647454555 741568006 953532806 180483809 514494404 346488007 425705855 883951657 999796314 276758408 656646925 788559410 920342861 108281902 316357788 567256818 776170017 934850598 979944046 274252100 554843346 207607383 232514281 642089992 856220212 491232245 997547916 305541651 936972995 981323390 994649481 120492823 194660276 542746068 957245097 194327696 980095640 800844590 846736537 996662373 999789061 382458755 439448584 932336425 970924081 404363830 972976571 577004173 756954864 956461771 960936493 624479773 833030760 999637585 999936902 99464383 100425786 512834705 550214320 603837905 766146295 547390537 861612109 47777432 693520521 804463892 998616401 497390772 652211123 285982057 894401468 742111574 885992763 156276598 713680769 172019161 909630005 813743450 864109401 530520921 970040475 712455686 972544905 708641387 806247605 968162644 987250236 747281615 753897874 820920957 894433694 451677376 977421981 939490598 980885199 857240581 899715551 202683318 929014223 875635092 952098553 913449716 974741905 918315729 980564458 330344505 373143753 538926999 794010457 56844114 971327544 507331739 887733013 717448174 989266932 449345228 869473670 419359648 846523439 756146249 832288429 379300089 413835502 212858677 718839412 796076295 834725079 651890249 683377396 937044844 984774422 235339594 260081486 399537717 823959325 223428245 324627831 61421229 325479721 994118510 995954571 782322205 815254729 693161505 722446044 184656531 886888253 653447792 805950467 683065379 853106742 206284959 692279832 166786786 906694093 664966029 676879425 286603328 557394414 660473850 972344270 222695140 735062423 295449374 993783704 137179387 988100952 82820236 781662839 463702896 592717289 602404935 824228976 392670296 701578104 610798056 917525634 246802280 454423573 966843910 980258218 928125855 942020744 295198352 483653516 395098668 716143004 220686827 404121807 416807642 482367672 527702486 559434503 765197022 935860762 692401699 737298322 727633706 732652768 924056837 946830394 671572634 999664732 175193478 637399080 197514379 442323348 709863534 848345679 400907230 998800820 169200498 947342118 672813413 921312520 299240611 983662846 423020483 509447980 187555052 389849138 736411569 987269647 859466357 866242015 232578138 987737156 324921652 891925742 179493583 642592380 977129126 979615009 401127395 531477955 319127848 322951865 964479952 971344478 730073509 753323241 207901651 332748268 851484781 855959320 934365138 951812604 268505559 804819962 639141305 914386654 617369701 669141525 394165679 892202685 677661468 699387428 77131576 689294522 895941289 907182019 797374000 953383566 300463273 634237769 433412805 845175291 382437448 846067656 877630746 961851260 820087523 899924261 245033272 889311331 395906386 607497027 314463811 579719254 654011918 943345455 398670940 503571955 779639955 936456798 336141679 907235751 974514252 991507332 781217921 854321452 129504232 239880322 646066633 924511649 424809582 521435251 630593944 767464023 434750236 448240192 680916595 785805781 333446178 798168843 401847464 542669645 24966677 940921988 3951056 399811917 350886669 770663906 327013180 612063406 60568482 362294810 201005548 399554482 857491995 980426904 271864300 615616781 281946767 745031215 532247392 869092988 514208292 647344033 32509855 801014137 989614494 991624456 588326665 839288988 82282926 91502941 667424722 869693770 15525647 632851794 167043455 788765330 195428555 239500142 725300354 788519489 128473592 915713917 777489613 814152475 786524063 815618710 89809372 484672967 261835719 385623124 535328173 634573045 259591903 469073680 945064824 961264946 770500750 885464555 276411410 305790772 487334214 809851944 364728947 596161041 970885847 995261511 554409093 986688270 160258655 536128390 420373274 592415075 478164387 818060849 310019592 923486991 549957962 800077797 136192068 631631424 496974377 634567451 158633166 410212118 578512706 936715947 869711100 927506023 511436291 947011708 901460682 977475865 754500550 782190710 452520398 497300176 531925988 882830364 106160433 980261104 240790802 526295413 21901540 233961367 77314683 417340202 669649281 888874047 432640902 535502010 512799734 846679916 219388386 310284613 790561336 859317961 23694454 387408644 91485540 957046339 740826422 992294612 562344180 954941880 350984001 841647682 523266295 647248932 996875034 999241970 940263913 968494993 254403473 800715933 220635174 951603001 445515097 827009053 427113441 719668881 5758500 450530992 65566545 106580266 846601211 882075241 365026861 762354489 345771172 417275850 364714832 793466526 155749411 857686789 444807351 756022064 818994203 975534870 136121263 405531774 545977932 948618193 156265426 754321937 182388899 224448514 621063885 796996683 347954141 849455527 9254912 97919848 674779899 945919925 272522488 386598457 932597238 999802322 238032984 630550127 880281655 975878377 67953843 622422969 989539686 994477766 642800031 840713397 512636977 778082663 909825035 984773909 824523754 907042607 844891923 991662171 424021521 742188491 828574301 936289412 190792230 334803181 912938251 942297190 935627583 994334355 442721739 681885235 481027382 927561661 161371765 339757342 182526664 457665974 904814023 968655574 804869645 812002071 572716409 576860396 18653542 621334412 94194927 112158363 611849847 876138465 39300884 294836438 358081737 847242622 12079393 238870485 318671842 860068787 614805437 776312784 110507143 365397011 679595281 951109795 590102434 594634905 11895535 658774495 387833486 791183446 793610597 916980020 33817983 81054116 907472470 932493752 679706274 722315723 480564059 595832751 694472862 742848743 440526862 683118642 806212566 833885198 407744810 844290404 758298755 983909526 892826939 961248657 198183751 876860576 946213835 977957641 735661751 746716275 802414397 976370229 869651948 931628171 272306780 656128910 505444125 900793813 872741726 961948535 500069185 638866169 865458949 867071560 377489298 834765653 323756446 483610774 874421139 966071632 814790395 869490155 417907939 581895166 636527073 834916289 808168543 887165453 689075158 957804810 656005605 986819618 366504002 775594287 124030559 349998474 903221739 966685323 376496063 860820069 80447285 452951036 829413368 835751115 61089289 937517045 241089596 571003735 668197600 852917774 750423360 923046679 745988304 949880763 342832746 786537796 199087898 444099895 380636161 905486804 132945884 904097143 96753184 470914990 478812812 904465868 363581085 959421882 435170473 580178104 97519440 428288494 570625638 779336628 415618687 676694580 185025666 489294522 691374941 722121676 542891498 703571543 859462135 974783443 614770311 671966175 602147511 928347806 310821821 934447222 298115725 926096092 964186384 992193958 124124954 438586080 264703348 507350458 367984690 991872886 595123353 803237993 323715548 769797219 827090895 969876885 997302161 998480918 673591697 743687259 919020776 990979471 409884864 659506484 44629112 577373786 7004854 41626339 923266441 941309168 622646667 687857152 159686607 678454060 679762783 794522754 740331738 853659144 60678089 732550374 540236761 869364587 898466566 942949517 752934490 880119573 326190335 354142993 400399125 810322835 704011386 724268605 468038717 720653978 695309581 935706320 387141708 926530061 895993466 912493632 56646419 221547090 680246771 854691994 79080053 572464374 331392272 961261789 245417161 353372931 295094504 777914994 340381240 614213203 81070538 489311424 324776070 835506619 419905489 762906818 183571321 314589426 719781950 968611140 49224200 863440901 623836855 736273355 487919755 902588396 268186393 595908830 737167567 914768775 854895357 918909592 719403696 871908558 936784993 975936440 636488091 768882306 37442759 916583723 658100785 978344343 348631140 982892367 351460423 463326295 425641327 750491891 534227863 713128443 36913151 701837261 548965893 765375176 319464099 376006603 66183835 164214621 616219987 960292866 424680211 429636259 927599871 959774288 590294880 703290833 592128034 803665430 293022265 431582887 115606270 173117453 791966889 900299912 581249376 719211964 627620279 760268379 785246549 835940124 807335103 985404163 591107869 837614561 620968259 731114320 669426676 859972608 970880565 972022301 886483978 934803307 568455833 882659618 273818119 612605748 67273041 964681556 272438838 890525166 946332202 984512574 438777576 444118433 511849034 816991810 709499467 864374203 792040717 842422218 465538412 715726188 660484606 688998355 627462039 798129215 937566977 976200341 357399500 569154268 854926814 973024142 864911885 877399081 34924815 918946248 412520877 660752951 348070102 958915848 186410406 922042829 179824557 555868355 319990396 892530308 359302544 790240992 990127738 995021731 255900600 614064669 223566373 642501874 219131549 369375728 393986909 830971749 757580667 894479974 899311951 981435003 617598076 895548550 795481939 884016767 46212076 394428822 745976577 893593922 735624235 972003022 708434789 760230658 751349412 920639174 176198716 545119477 634278829 719639938 65552828 734721076 497812669 578011259 980461867 989574320 391152000 782636500 606789745 956488523 802949683 937519898 509032328 614085287 1274036 129606582 665781724 689869592 908649872 960411338 812514559 850072838 762634132 832874209 773240080 923266170 385832284 677974641 518505987 885941203 132417028 426295806 181104168 234866961 377236151 908025578 949342735 955380679 998782807 999797511 709347867 714239493 828317314 983760655 760593729 945253145 969236298 998682211 327067307 572793200 10357497 788572535 573198298 808531933 137175796 708073238 232022571 813218369 386332327 667440890 231822908 630228606 65453370 158831523 856519476 954672661 970118534 981028611 672253095 767524851 628135790 774179426 830880459 832959854 595723170 928301022 765223891 977353477 597997720 842625373 470321106 928486730 227815376 646478049 975304309 996706914 743771630 987479584 208435814 993917622 297002578 835358786 944865825 967553623 260320471 408976097 327365957 788856427 737829420 948839545 449286689 669442909 640437508 665145070 269020158 506205518 759512466 984083806 794911250 802096075 325951385 532562522 118676623 212247339 886870642 978176894 109412249 404493866 982603347 995809106 126891447 231954723 886367625 900190597 140860400 273575051 740690292 841802488 964694321 981450003 621385095 972410884 761366313 885603376 288924837 815443694 847165842 977894808 601253236 977624060 446861541 567301719 337155167 858910046 65722898 471560078 834196583 951476053 6132964 421056136 244452306 403480440 141278930 541188443 563305974 697921888 502214468 950387336 471767412 624658788 57230326 57496177 151883068 726939098 163549217 343544969 138690521 747046869 506369245 844660936 859173610 993761065 888466932 917646829 51909755 322006620 912141873 993652217 387958865 619366761 167354022 711923695 355249763 843121410 670122651 825210905 105654432 968932232 281209970 489378566 505156107 744580782 719059114 809633968 728971325 730425872 392787399 547699614 133318639 653591831 16990468 168241053 697145554 803690042 65230554 617126683 593171221 731514122 918923812 976466168 171326324 291686877 340891045 704323449 602246986 822955635 386840766 767972732 184177278 627168789 797939813 857495784 589752814 657765491 801741405 871390684 979156121 980431045 495949702 831707182 598771615 931571039 71068891 852589960 210882309 300651842 160083587 465444401 515936516 928841330 193679583 408682084 873862748 991071300 684621387 907608138 327574367 558576858 414354505 937013963 946997584 951108525 89831641 702384083 269585549 469850658 116823665 138687536 567384023 855466783 85335257 882772174 376364618 714979339 964918206 987402068 268347982 818488455 976880704 984998317 507955604 925988555 400023650 615917720 571775017 938152502 222073014 355965104 934392514 974029012 523712159 935734880 715752478 977307236 665138129 959922679 152108941 303139520 230803006 699922441 377173513 881992751 862186678 976777669 854723066 997747892 929733344 943437991 562229519 720781679 663554667 807917283 910506398 973047888 735070187 829673106 26527780 333250421 109499420 691610451 855911584 989049733 369884143 743699811 847605430 890938466 338808780 843857015 322514038 846917414 431788387 908285025 721543008 916603905 199827166 972406179 555372755 875208672 641785738 760906822 314557657 539925206 303212946 848107829 926248776 992795858 754791897 847385799 993059346 998202873 875340912 934590554 92500458 856119156 130281568 332372029 107733300 959565957 290987827 432021617 101730639 161950741 767850180 965032288 158598093 331359722 18781113 847555971 380326670 695323272 291960540 439882829 349865224 557040380 873394386 973756084 749368277 781637290 221091979 843997913 414744177 549592746 856064487 983107082 843913408 898948415 72581279 698359600 484900542 688094427 935810699 969986250 363648403 769159575 923080332 950674222 594693336 638670247 957592677 989212001 635534194 885130301 728113583 743962482 809137625 975593605 732842930 796345617 555515668 974902185 729940321 959610226 142221675 938384268 276465915 325791541 196675002 323872791 748265068 891939523 191085907 494762946 875905295 949869258 262576569 678915711 61920281 831177898 829197841 931174706 871943844 923635374 30592432 838034407 683680454 686644846 949028396 980165384 65700515 656496510 402230537 781588401 272479618 318702900 209655526 237886187 583231020 688735442 365054680 859777461 400868636 516194265 124523007 833889316 70259210 410173059 811568055 963190554 63784084 119634644 217424502 866129660 405927810 920858040 81461683 211665351 129216700 667133028 563434471 968269037 226400481 689127580 362309236 588613037 371860242 860349391 654671111 860554908 802552656 916991912 459252368 484432821 208264526 860235992 692337756 880289714 391222447 803400671 772343272 933987261 342136577 920177651 730087990 736834826 549385226 733416531 675358681 999652535 428148175 554755547 89765155 751764102 452526017 828197028 878942027 979178059 408791270 874573255 693156395 858846989 181439448 297269770 269238733 881724319 936334545 970774178 716423910 880830688 405535963 876460064 953736055 980580469 233276275 612350583 390406817 721882981 404460512 446176416 747004794 790365590 140008081 944759455 528270048 726777001 775002655 897254646 754438382 964257920 603770640 652120492 594863365 797495922 962104974 963282746 330463349 415633082 634725633 657114496 483335584 651570007 157211156 641440621 96597044 232961345 807472941 904869750 991931725 992983981 478098710 564482371 942247026 961848402 39006140 625069357 134650433 147259492 526309266 893193663 397196448 616390047 502256407 890913795 7574550 888003683 100715797 188466481 630946977 652673871 336161789 602698389 585147479 763033251 735246603 937757377 364506920 418249429 658013654 831102041 667037187 802227522 21910241 408551343 229843414 338310281 539823034 858009233 548069693 950582409 970478775 985399199 991474652 999354009 341165858 502694907 671501099 719082999 420509196 850135751 290184434 323142093 565206249 750183745 124099732 363945471 101882069 859519407 332410561 395517974 184519604 590039008 501063919 864447112 721313490 933302197 723449687 872538205 181236256 629725980 79269384 662062790 364466829 944577060 468209339 558088726 700373495 889332509 585310477 673542913 357352548 672310948 969373106 971955247 912037402 928738755 406431902 678614935 444265210 506662577 242637650 663759543 462904354 787418073 724559650 834796615 695088081 803978466 303231253 544260861 384968705 422793016 48152051 663004040 568924353 967927651 732077606 861124326 132594133 943715802 284024618 406175141 343126215 998588369 9403440 810324368 62449856 140979488 164041266 382032916 488425755 510241101 787405187 907564075 737692510 762489206 504298856 529162245 629869624 969370921 670144788 813009144 787822046 812560488 55682511 164735590 696360448 750380265 987211904 991467171 46306868 235289493 347559251 903290567 339156436 673702395 274793856 416723635 223143270 342661476 820675944 928637634 962325962 989267507 889522107 899494953 945477837 985843413 887629666 919260074 228047407 653948938 47520134 665544943 886138797 951371130 920613179 959497657 328130481 721297160 208340868 755693409 993976517 999294882 749451865 766010538 426024252 866679584 115370825 300796067 274527370 842036072 346735995 766472945 773636634 821028790 418650397 888840910 710806703 754658871 361705281 784139686 483587286 865337022 339620964 633927499 661525914 856354139 201260583 700053857 37552193 925209700 159836354 857213014 396348597 503571861 138602685 738379172 863458211 926045382 120153530 536377352 953945871 987696126 23734920 824526311 916819084 967565355 864186593 981684298 735592955 749255269 946177586 977729836 376842144 648167339 474793971 895600972 882110576 956225628 298902267 939748122 685677645 802605565 918149506 990521839 490308316 640431048 965302623 987366802 894602234 994516302 418088240 582010328 446515450 596042200 6777426 142192004 807049884 958249069 918603715 945777015 39660452 631732026 507306171 846811902 774781661 952557273 120429425 852746174 853338464 889429358 571152383 619176704 378449818 416658766 216330358 623091251 177999313 579884870 36056000 229521630 641599148 904877582 595638362 985287445 445885632 662229402 679190609 809512294 383315272 462671866 606635354 818227738 6441585 243581773 131144723 438879121 288461674 801189440 680473939 778409674 446880184 480018535 35430714 284612198 301753884 600075254 297428413 872882812 510922058 895098800 662229122 831987347 93945350 280466915 23760722 991142090 946284744 999150103 570072072 783770532 544710084 740613742 726051510 801106891 948306982 959484394 6760659 695502130 701465599 764149035 838568870 986651268 27565732 472321816 25424289 531657901 124720277 763706661 501767221 949634092 869370595 913441013 417148052 673508198 509188537 821849857 787337884 847084605 771533332 863301086 640866192 812401681 235050859 797131056 812189091 836153215 708871147 796351569 767780714 870558424 211066218 748876140 358293038 655961700 719811921 986108919 781886305 877545407 82778065 152467712 210590265 764594257 46892759 429911776 712695775 815517709 523565529 640329364 980120735 981337295 845043540 853023342 190153438 952090771 430709236 803478100 983609654 995972093 933187875 966435986 411980852 929305269 100179530 299885813 957478796 961063092 353301177 552253158 481972480 700930928 697112724 770351522 816087880 973992631 710570914 718026181 734224821 856804999 490480619 747324321 773543050 781172517 104429960 978654309 758865549 838011445 651492773 803700154 42145099 956913036 44568375 903558899 845913039 938137891 823330531 860693708 648971035 673267224 966971740 983896077 825141700 959311996 567907031 774453831 220493582 585728178 988857466 996573526 607167677 794089885 592677973 593528528 4322177 645482760 950503852 958262201 818209604 942255058 324636227 507770626 655001705 913500920 111311551 699833204 458115360 763579621 144311135 927902732 996247766 997351038 626090877 692160207 433253161 764811988 94342208 569357557 189062222 536866077 876385928 911178990 23283249 261397306 373042160 844097808 431503471 677066705 326030877 600552436 925503606 995499661 487684906 715049719 372378335 395599061 835612354 910913086 496049541 844361697 920485150 925314374 346364186 743713429 950331355 980885551 753951148 766993797 605815497 772075673 172630478 665467010 964889584 991766540 336647408 637475235 677765769 982907517 435895804 971536292 240190388 372226258 720767404 743809922 262596654 756508306 409118232 983757258 105709531 941133321 438558421 704881750 375682354 583799064 888559221 906355151 427843287 672131980 594099177 744359611 405736705 728683203 184844734 398965907 352489519 440635745 581058023 713954723 961786881 962600776 912518847 987861113 535562378 890791871 12360963 121388739 136056625 556198588 102974653 312578305 767382108 938293256 232851568 459765796 499593687 563081384 773839320 869900749 206721160 480331558 374070760 508213159 119100753 773081107 13871763 77894253 326963672 833077648 12401367 77925548 902522781 966634249 57588887 643109912 436186172 853366059 904647809 939997579 733933385 999395583 480906283 848045592 938489457 971037745 654799546 933764152 195936623 888076449 695494057 907926939 239954088 267860455 448044678 488011570 556178840 705254382 711882682 886799189 287922419 854172824 616847603 842933904 206770874 518476717 391172580 585749821 925268919 949906949 941271530 951625820 218971820 742319315 802220154 881218785 108164082 541951396 841189643 989294933 102643663 127318993 302688233 528616057 154119328 913914168 179068074 786603351 975073084 979739332 456594290 732468543 130270753 732631324 710116854 969549642 273737241 625820686 813527571 932469568 294040891 527009745 846380117 957071103 768054512 956837207 866364377 896205418 586182403 701230132 396406006 449820865 457730707 480358159 651472937 782112624 319657434 321228119 716625860 964855151 891467393 961723713 373438647 942293931 66961708 933976506 922943382 925358712 185185264 246858577 435531088 756002402 945360619 976767756 615785078 653320891 799458747 951013277 935986870 941299588 310589354 592593777 689816067 710711095 843240514 914547026 449343918 516032784 992302679 994374628 350430449 657128235 837384727 955569439 551504849 753415922 256256297 471265271 391147019 585963585 613760676 833115751 369995873 483072558 322550949 773081184 727254415 874794601 844514610 905761470 588549240 637192915 318073289 327290988 761640045 779766471 569465754 903561869 836756804 860173204 762017178 821852436 638930995 941285695 27380512 683322485 781384517 921122164 620540518 891727587 89984454 885368309 406587345 875087201 987093354 996909977 756218417 860735233 705508418 905158930 522907627 997973676 763126122 821223735 316677082 751928075 596317315 824930739 223917868 881371073 631608427 995803681 259696599 637205529 119093863 321660629 478652958 529863891 524985195 755052556 163081829 902385928 308521361 761443165 974038351 984943745 893530529 937910353 387781260 889884948 845483981 902839157 512528594 901963744 494350060 823447537 235686488 670889343 199056178 844443728 283815792 603303736 378556845 438694169 169442019 252961557 966066695 977818414 737085134 954050988 749565285 785721891 612021643 692083012 95127689 135455094 153990265 393376313 161067154 473161288 238505820 535515095 144665734 524507128 541116616 658680616 902438816 929271162 246636850 838650633 676523029 739323031 6868022 439183955 357022397 763249522 78310536 868764919 773553984 915141073 158173503 183001264 524896042 896975142 904425278 968543547 76055851 500890753 169532500 701339180 376511206 580224813 413962349 704902448 431761169 965761831 609326782 694299820 663258311 737527919 998864540 998949322 922057553 936023550 606501552 867435265 726110077 890920637 304194890 638732903 967853428 968568361 383635678 646723012 590909335 843141616 748727445 786388832 331891072 627534920 490293690 606225049 50974666 559673084 453837667 778140714 508453389 955433005 667133575 925295778 966487763 998042575 888627585 980787730 557715381 870275434 33978938 596720446 402176839 584909981 13465512 802164535 946690448 972373572 925189576 948468699 347328553 360785520 611107394 753036492 620814865 656786808 42815674 68299113 832573787 960679480 391467784 437164583 999070330 999149949 747273656 837546828 522126217 546025356 854928238 881652301 307949778 484089075 216214819 912382865 372339908 465250801 800376052 830121838 170459157 966336181 440831253 805098643 287669013 866730380 537995864 554935294 579040308 706459325 461115857 898766022 774580928 776524798 86134702 667898399 293378277 773465449 888237326 997214230 318340255 841799744 511806422 680735893 231973758 304704312 418387162 994501616 681588661 846573010 131289633 685487288 614162255 946509945 794551717 967827570 365877354 629326061 224430818 680601623 293607507 352242104 852930309 859463252 721912084 811990354 628794886 730834445 159870951 844779169 730465898 883211954 912957198 946797949 194287811 657218609 194639730 497927973 163107741 549836978 556966564 861870335 525014013 854980780 140892463 848867537 607559040 863678152 242136254 695863856 868935401 945532715 179101065 433238796 804720261 944844053 938968514 976755196 824135246 871564517 361626899 606970899 594280866 972708133 580904003 903026610 656775535 840966107 218245169 353697443 339008546 573101265 302729490 685782675 769163990 803785496 59036191 283084141 241053215 508406025 744786423 752223244 452097771 997920742 204774865 326448125 704112632 991030278 216220310 569964704 673595227 748843892 461119800 537922188 386262875 518603278 385920600 627840578 931468976 993284617 524512266 764141953 488597541 841387096 780092169 831775566 257999170 858019342 898619183 907430546 535313565 754939098 400194428 662982993 898164535 907874784 429648653 521442766 419649627 448393810 608627447 675205659 826626937 921963077 634463621 839325101 615477639 776621517 117651328 811228974 211553217 281748797 351202330 915738794 228237061 787044526 407194842 679058268 515604496 980683035 366420286 952910438 992283861 994056750 795678242 996139501 195614848 878646868 812368889 814865260 18643528 801318726 924999675 989931980 542485614 747344468 729878941 848734438 689070520 810639041 68475189 158099919 334835448 819945469 244582600 579886795 771579006 830924196 414929333 451919665 995757462 999220701 983042608 995266481 796647311 992840957 175201569 714735941 414983137 671370450 112407278 768206458 438396817 475542361 768006878 821285421 777495919 998990526 958726447 978667404 116996776 456166805 98055254 426593656 913612460 999709786 395476415 666803889 481803890 786642049 519217658 786732603 929025884 945015801 838786936 995352329 674811000 955635297 703985808 780246701 203020687 584370065 316329932 620971791 140595950 303148171 678986711 768081788 711962544 770091302 688603050 936241742 407608850 845224889 930717512 954876809 381036160 778470252 234077033 733949332 881424467 951029018 240959345 752494875 168153719 867647159 253773227 897155510 485604 919530520 312907186 447323754 379447459 420835905 67500706 927616456 498342608 732100704 290052297 914360931 954998691 996421242 708887370 967998770 999451902 999466415 478747504 531648264 110688929 892105174 861966176 939700013 253497796 620874887 47638593 552852580 956972464 998506711 487529388 711578144 235693283 899926176 151011199 463920419 722306352 962147365 398046836 662972708 3438516 797895556 612326219 909897739 805898830 905439869 90208125 670371282 488538854 656717312 58337395 513927319 213740876 428578255 900101846 926822370 534946214 708607283 181662508 268936661 113404169 654400110 400211030 628618054 591444659 614683738 280729447 724520829 564440746 771437034 72709343 336174485 205979579 446235317 330078563 787834793 618731966 800840774 820161140 887156432 231700874 847701721 3878153 941555850 837322283 948234980 981340644 986622862 705514412 739588228 306840726 326078342 194158693 968845784 407615335 996813540 256381279 387950363 945418277 973841129 474531156 791533420 133906328 347772308 891714264 997702506 527886242 715919522 492676826 952231862 553189948 749786385 916942822 989565052 738001046 774519848 78302867 893557869 304128844 428555630 228886589 466990074 392581791 401075337 948573120 998306509 501500248 959413846 60950104 850279234 373940454 869842886 296022235 669728099 644133944 822274540 522483239 706776688 124049138 406977740 857457185 888387096 68778825 402413723 729035676 931544389 218024463 858073692 780952933 851667831 887794635 947371332 875857654 904664773 566983017 767583863 450028433 840380393 725458350 836404115 972591422 987602986 789048160 962530014 702444420 857171124 102973270 130257374 275547215 280898265 40672837 404831874 448414944 648249813 992905691 999419902 572259969 708310868 203755188 820746134 458224636 691111566 319850838 564939257 320829044 378720217 466287358 639727409 899105894 944658512 583354584 765835279 434142720 875370080 698368512 872304428 877423216 989401377 3665103 595352437 339352739 818508493 887731304 921611565 614205142 952006968 955427045 999262942 112210285 502249902 766869643 791365211 302649597 922898817 198185618 855282771 139174434 991521060 259880267 368030406 631731106 994408685 117196851 762095267 497706496 902363172 586888462 839391117 377128360 460444079 617322239 750843583 266997678 722699244 456044996 736113172 8733418 783750565 938340023 979135098 63181684 215844202 512697767 676944585 687628548 868445487 228522579 679314464 977532761 997260863 741628615 865797547 108677442 264676619 802381827 989226403 387193865 742946331 335379781 898608063 932895802 976068102 126550436 812846072 702244102 731026237 104344375 804022567 840890952 983947485 14101200 542916128 66195383 523277405 680437872 807747029 125992956 869496161 278481492 616510846 174390340 683602532 15365613 738658282 539453134 712052825 948248978 978247702 526141429 577989101 613856179 927493520 952106453 958114147 101943634 751746664 889533274 925675111 712952423 916648829 497865814 810446897 420494648 555461661 123069267 396226172 143321259 769123107 902113005 936144697 433734669 557134110 794967948 921655423 345448039 854485430 826351454 835357717 807623903 928204497 706269829 903864424 690359599 752488604 697240733 709963629 977926669 981495673 102985817 324164777 389557449 918124091 949745439 983562634 327624236 348776719 614105031 998325079 97829942 379072199 556034919 804353139 821814467 917983986 791354171 934076639 165966631 417346033 769461177 825183377 900393837 973683205 891106464 962059986 614043493 882564802 903615802 968576842 893291914 895730112 257044510 510631738 517264446 864661998 775330405 908172915 220732927 854072029 631716220 778027768 519863909 683656686 101154456 131823242 931519199 973038703 64941032 339548694 850042378 935958744 10866917 187485576 267261129 354618598 96926465 344453116 501838410 893627580 704629492 862401225 414843757 854340876 906512532 916726972 118866129 634774347 974748646 985309870 353245477 498278924 488535696 849325370 958877185 993672654 797845795 941361816 893420369 895417613 705158084 742409910 113505050 394193222 468688850 554292669 674079296 767790775 45812304 389297189 353949301 475279223 98431349 448679388 262529751 570907285 441288970 770707706 184613877 413118318 889703099 995444751 847608733 875443118 876084286 949961071 294453246 742003706 722599974 854045555 325972146 771264790 520836983 670306710 661236369 968304535 327504666 407216818 30809568 761992884 761909410 854737332 665697646 702134066 172607371 242657138 989376901 992702159 867550329 945995847 887704335 922649980 270763067 843653857 332326776 391830712 172801089 611669975 214568600 250543003 10486770 576016264 508312260 957922085 357296954 674096856 578668904 798319828 474948328 621008829 532891730 555300613 772606901 954880631 949869157 958725811 774051571 801927269 462830375 684348268 436322272 604162264 426900428 630358465 53525764 407947363 241271827 904477418 925988013 982137021 892940039 911934205 309112813 537002717 163848486 508221847 148676548 343473337 65645371 824460335 230391762 858199699 174212678 495063585 764838024 797814469 941575277 959353645 570294946 608163988 831154700 944597988 604173781 912171661 949720645 991389260 400244945 589931123 313911148 693071263 660805975 882947191 827987577 878210807 209688875 286798712 258555258 664225857 267820135 716874611 295278522 672360840 680230038 922407181 664129723 949940874 317950084 600596050 87938997 492089321 612695678 805434240 462426947 611125655 179767871 951249828 946441499 974107920 696249197 995418582 929754938 952766682 441585327 566857878 312136746 676835923 958358753 999064550 568261861 588629952 230688005 410128445 930246494 980955146 245096222 979529921 342884971 898263639 502715371 565245502 725390896 977126875 952828420 960473477 782289246 953440973 733108328 892435879 793242564 913539074 328083879 565797217 549592949 824589383 314164904 740577927 260035811 953449759 100486450 160126297 225396823 696253573 145516818 874572347 678336936 952257174 481803916 914092615 306564131 991304818 677860035 932856705 76999516 532953029 902875968 944248890 540243660 683870187 828021498 984433472 622212746 906038279 98566254 592777964 113375089 296827844 239275384 635154549 241053348 519399350 184061483 515018238 612729914 891139276 651907360 675746075 291520162 691641805 333110270 426506666 878934677 975266669 818293130 965698710 726536073 945263647 863396573 965330406 617487028 775664297 231427361 302988907 740626570 756391911 823786775 879418622 196928567 282357404 103711635 372851107 771366235 957910228 63123953 205178493 466200026 545336919 571884957 865969513 107589134 967280856 355411200 867386098 724472734 984046907 644847925 871177937 51433164 878643728 105618206 474366381 898088841 962016150 219160254 353992959 748217247 769302951 62997273 111505410 400937403 751687298 393938399 522278195 914621344 994493400 970781533 973898601 41440264 202406038 100366949 601481529 50024894 276777163 524472617 969324863 649666707 711414276 4324316 966714320 993803887 997900283 317441569 435189813 763554351 970920675 717092353 818494426 98103725 327932941 222018889 329237319 920334163 957909124 340515046 906846262 689558325 880344791 732741854 830470511 893161984 984879629 930360981 979524213 714596464 933348152 846258561 873373608 185987617 450325850 320816931 380590558 99506466 276525583 193710570 612311990 523150075 577044149 589389402 741984995 366672376 770076764 647953328 986987612 572997602 660572879 400287173 643072445 704143454 999766068 96566280 152569014 336901922 545941845 132353581 504495319 927509508 931762691 427437582 479298235 264095482 901439972 798991062 942621944 554502372 608725655 771039716 984688891 571976974 794844422 133718548 274538723 348716597 465063681 139614584 349326478 732178637 891046403 238364692 914046980 182586389 762787589 67857332 242897833 715392618 886637596 289199284 663392388 833197358 964357884 581878232 838945920 783968280 794108600 7517377 35630726 732982590 998546321 345980883 638514330 226043051 359737384 764093641 863644866 455440397 563472964 98331993 733844431 77369406 494462222 244546825 303037032 14972135 49452487 339824724 617036099 862582391 908125920 502601932 883755801 980688245 983576231 582644496 931869363 754590833 925197904 461611460 702597040 206788239 282404949 382845912 966364249 12140068 164484437 30835896 267178157 749585500 942555638 705755294 926495280 4487045 197015113 659578847 692698747 841882810 950573348 655312112 847088164 425777112 897448454 479930592 865173068 146920254 598351829 283512639 937321926 58618591 182660470 192616084 841299350 525835490 693510984 183379345 502864078 919079622 962541016 702579753 754632963 528602707 855782154 56137977 458706876 714162241 975311735 838884312 899822516 152802129 822888518 259570211 502241956 183913253 300730718 309800745 490011960 764195327 878695700 75680924 84754068 988757604 992092111 949551662 957444170 869387700 979913167 636462475 830495366 559679827 981835990 47228829 80486227 830999516 971103099 213978473 684978635 539946527 777890576 522436750 946856800 747809550 797828145 503916870 859113700 115037298 693732018 835317805 866553649 914498884 937285983 517078195 618097665 827883240 996309878 780338075 913810551 60064937 497172045 789553563 989865445 344861761 739636173 588005724 839047368 24310022 224492649 716708377 949736773 727113407 820523841 205296113 711392442 521967793 723352279 529776578 871181774 932361849 964609546 881439258 986034912 101566963 349309942 38736803 891156968 225779136 681461585 574899644 670244007 521171301 652560490 385436391 604914610 989623727 990847392 786114879 820791405 8908167 652152532 225147396 982273382 453286496 580691505 164931053 438982833 60595697 587475301 396795039 925539410 58871077 896599594 519842628 925258962 589550732 598725610 215390764 588339636 643851656 810124148 322895056 989979006 284854197 856379993 543552458 771683334 892367638 947150096 370012146 517120161 148094252 817646989 937458147 964881306 323796816 472853248 158632551 211425511 701924288 886634860 382990625 664278316 506778380 563258598 509505284 854353821 964499347 965025737 393486638 558818019 613491642 858842315 868742778 986712158 912775560 946245323 804070296 836453819 990401563 993432063 893939975 942808270 240344771 882386429 371442969 531319110 723939670 999285783 655270893 660358288 163445692 261014661 54350576 140926164 455834621 457525015 826484833 850333649 267800202 982704748 614327773 813406981 184368637 468265472 229485969 984744305 32675653 391135589 819791118 980691205 664218733 714919389 636289143 969579076 856238939 911605689 526230550 669664358 763944387 917188416 988384479 990167781 370227878 384749736 60352852 237094856 355596532 724338334 55554376 825925729 904520077 978789971 17736688 326245975 78950547 389329546 218356343 365668531 926991467 937309432 157435240 722031233 981395880 992422801 207882317 864806953 219522947 795317061 496330928 694996966 28146326 678666857 825104632 924865207 557717906 850759291 980251294 991377988 373963328 850078672 36335723 697959259 195913422 844964521 162928366 798307156 380470519 976671102 29531653 540375529 112503484 186270351 780232742 888644866 638374877 974372047 119252980 410670612 234913439 808127808 478158625 482204957 501106015 816995591 760007778 952659710 223335182 861830192 367075464 952873478 290863535 302808938 397642254 981541540 159325568 956412745 837912195 919885773 943279213 967655610 335793260 784140540 343523660 885966824 498105101 983857186 946703 979578040 908548226 997583220 562338477 787604789 426729431 473106209 310430221 365115544 181452924 585320180 578730669 862206573 135044653 328681366 686817650 767782353 209919176 512065564 972674858 982866837 470273354 537281291 763444475 814276373 31872302 268693425 601947124 855976616 497432505 786159223 294148040 948531960 579114205 612894535 46124045 453231549 273206382 515244537 633438726 953620786 727028219 870538568 109008219 950358561 966516319 968596814 969015534 988146459 942090065 973008302 618665713 736795026 315279086 501506900 931655570 950442063 536356977 555188758 617087895 996931213 280227054 586372441 984152288 996342911 980987325 994063965 200468571 624567010 732936987 764620570 19633731 21520270 566585060 595663076 294720732 911349882 420571087 784759410 670311909 860255779 958966649 995718552 898009449 914609649 759898679 931865287 200959609 555507681 357338064 633695068 963931277 998003172 801173686 986072433 257798441 317135517 9642533 631438504 423552739 663114716 452189 784510497 249846093 419827418 399597669 850868691 492911816 857951261 688983283 779671437 761954589 793129334 554744196 643917469 443529778 458343326 915575740 916118682 933761378 992431803 660920083 913065799 389917109 481606069 54872364 919174374 242157522 761366443 93065221 425344348 336633711 887710481 945641992 953021828 189326493 771408431 468916480 549208154 585782846 761120479 433105519 948652568 311480206 767462142 748044450 953649252 346957911 970944272 578107729 673492196 160107932 179999493 736551400 945625000 609291749 830768625 332956002 682695894 818168256 988138120 686625431 834550365 681444993 761651131 574172266 605094343 280423603 343940722 329355717 729339458 21559069 541376766 171212264 430458575 741397873 999673212 218947788 937719612 949744050 951013671 754227486 827576216 829065373 949836828 210437911 799601277 284616473 953874204 202414725 657186078 543397154 642893226 486112741 818929538 695158624 922261875 645504112 799380452 327110742 724511949 402411422 464193912 629015600 644569730 70875523 89277110 219161172 697140785 770438454 841591462 934585990 948439325 191997161 531438256 95323506 604109941 809467583 900554647 369141353 849405333 672117481 675421854 791777714 807037267 512986734 771848092 705063387 772329372 79384553 241265362 389990770 700056672 832250118 957856199 956988397 984848845 174591528 336370460 931251122 962523034 308216800 805526640 243563357 299980893 850340584 859699998 600143227 761919079 68153531 147158128 424758820 858798215 931333329 943621030 758987032 957605148 138858963 141070036 497660549 979355259 927409242 957115365 416837053 450241433 873657426 971584350 448738336 763129200 751533575 843889540 280025242 787770066 587090363 833849593 875643505 993114666 699707943 943227578 332060527 426307016 638100565 775203764 306286548 771956103 630130167 720235876 604811705 871895234 528903462 870690169 29205568 144464004 420833128 914398195 694992628 997697644 426050104 433933446 17217831 359458694 497598478 774122847 133592022 208927990 842665192 914579613 314899793 877898123 731083516 833727374 198592595 928848254 263370549 736729537 677143893 733757571 12644095 96757530 140501231 449006642 516143432 941070384 703637474 960420107 395179956 932491481 789595353 977724973 394503567 518781442 535202167 578309727 192233972 264117190 200902505 582559626 838639751 966043680 574462285 712558289 729170544 894517986 53562844 327074722 175661301 671830814 162582113 871394969 182698753 809785831 905260469 938773405 926047023 997219525 268836463 948470984 662712842 742396767 621472223 733926423 367382247 692055394 29897007 953067988 434226834 824895154 633940902 943224690 369800566 958473675 689955365 934120860 410114258 423604727 864250825 879505135 230274647 547708674 940354461 990891863 402675523 497295235 383724574 718737939 769624730 996417637 146232112 741095337 264505752 899197891 701542417 909819953 852059137 932616868 934897088 957478950 908180286 983044385 147769538 632761104 408359348 410752248 675237758 750188988 105316896 147525616 759861026 993157249 932261585 944952354 848751551 961526664 955965121 974359308 838408105 991225241 939493976 944701938 871968115 882103124 589936688 997724851 358507678 676991880 969844585 978445367 359128629 618110295 592370411 968001983 43611557 97109633 545381969 770538932 736161243 906466970 647714035 950842917 639996508 744327134 317691851 322034180 949111933 973006817 823941790 943551197 935110225 955696687 358581239 725909219 788083326 960279002 357758120 469125885 874700005 938674995 802554834 893681875 816049373 817455825 825093937 876809551 470607090 758639263 645547026 922507716 860523232 994898373 56595160 641866934 960440951 997169114 625940338 849842903 313696962 385044084 498897873 842172544 148014843 569295919 344151701 418048643 500955807 844349498 161743719 608848896 49945528 375000012 258315666 584943899 952422550 975547166 330535027 551332679 152783560 713946456 218608860 284523878 823209838 984256080 988398690 992395706 8502522 51690657 569136455 991145893 525665847 627795907 854546552 932313656 881098486 966202620 475703999 488032555 214376051 369860484 797815349 977291342 208622427 421449183 21353490 319570430 933532465 966115901 342518087 597475641 652848671 821838034 611493927 766840564 251936368 996552387 989189637 994849492 718063750 740477931 263645101 695794347 425301077 702325373 255487661 809654992 855775294 925107758 584345003 954924687 584071329 733456195 432702154 987385844 472613847 535472926 974475801 988246580 591117378 721411317 198451856 556598348 398930375 957148243 274229946 543723387 300394380 983392904 142711187 563663252 265042294 869730923 896962270 953337787 731192777 773674136 564685949 988767359 259760875 758483566 673144557 858206127 480571862 636433126 557645564 558649435 857394681 877157679 766486576 899049200 373227921 474772180 173619809 183723045 439069563 999431999 33356781 871390604 488726441 870334980 90669603 485280528 552830819 572077473 428904342 948239942 424806005 840544771 124792013 128310258 229726693 824290331 911262635 993121207 921768800 977381577 802416156 834060896 337520923 531066941 22975542 742995469 691537891 815488151 915435178 932965580 249038543 319393491 534431500 677273591 343694299 509575326 870392876 994599632 942251978 986096095 605286283 882090828 849699178 946212631 394584354 932404633 96669387 601180373 795541145 871293143 851866894 927100463 242230608 926114619 19936156 215177961 328057573 363764560 131928150 833571444 80355623 835130282 939928882 996130265 962292064 986217719 371619592 864368812 33121736 774889375 767447553 899949236 174710089 731857485 669538712 829527207 463253598 522176098 253284726 990198082 725219004 950905352 68987858 419863934 55026021 832228100 609101903 610148351 827897575 836265210 514510980 564568019 86527606 536739249 117259919 271030628 233389511 846974051 315229253 378916071 38223576 334794194 744037289 836660479 221453017 236723890 132086128 736652872 738502569 874723890 918510492 997957789 284939755 309335745 698212486 967478222 763740248 856660385 333830864 975032083 144339 356748136 63711675 753058608 133806596 930032354 49586930 164621720 712944853 902518917 871492721 958304310 257583944 625756102 758314894 887606184 1883840 737811873 687430768 913169052 265633193 541751528 567882504 784981110 279935098 605302514 900307324 973252199 530113883 807681926 951873686 960321971 845829874 910134651 528056583 733062321 274282265 715500767 933003321 938061729 817088330 975156793 492268604 981565805 899166200 952321950 912406755 994479865 536704875 963077070 306734262 515186605 694535269 699059169 689711927 983171346 82329310 415295872 908268202 993301100 647523205 897187354 562873206 640076890 988403966 990488567 74977877 645254119 554874759 865363523 635611484 765624405 538651312 631295377 324132339 452823524 910376913 957831097 565268947 679503969 764395195 770506816 182197813 861858591 170254560 421184633 564348132 717026831 479880201 918172931 954594928 964120331 416761555 854097396 96591353 573573190 128136174 448622090 803073722 884692921 476725126 852838711 967784686 968953853 45564597 836282007 149882390 495184332 20336703 705226589 706482821 814260312 797341978 888331030 478053604 777173382 729000988 802665864 252060744 949470209 590621600 809875616 577710776 780797678 78518137 113956023 988392855 994247888 252864740 537797870 184711484 577367655 157462802 743698936 119573974 686767610 506305493 674963546 37127449 512047714 240385888 648719255 556311347 673930975 247013723 616041719 26092641 394483565 339980432 918465651 304184253 418403034 475644146 753286073 309833196 505064383 765989861 898842044 960874550 964817141 259224724 365854677 439997436 927329207 150083085 342614096 924404849 990261899 65757765 287918094 159962033 326855075 256219252 779293196 448912695 813254266 772440776 912950297 433139517 872520490 669910736 690964095 905077372 971770668 462411397 475159771 137298037 840423313 846765202 879938334 13915201 949360864 235556724 723490394 994943214 996776477 553862635 970420015 735331392 749000240 849670824 881752034 946648651 985584284 43309164 642387395 207780079 534843978 718480011 968684937 105491305 122489111 122683059 717315388 544621265 887398046 467645905 857497106 292571360 314089044 609360241 636763603 206506360 857426116 379366550 687961223 926527299 963935427 658654708 751647140 129709553 501941438 401478432 465894693 28610896 905387493 172445229 492282995 821888681 978583985 303441981 492255529 791796213 884586957 189772631 506465982 201322635 281314099 565672889 764637042 441391400 678524799 190343764 242167355 548073673 558428983 343206137 749064784 520732814 935404629 10127442 699384828 218718049 756576681 334666231 634292566 562494346 898543016 495254339 646958601 735626459 845735111 742208489 928735480 20471297 63647000 156330716 956844110 141376758 286514639 640010395 917296588 648810238 854208084 432024210 972016590 343548106 753943670 12112890 363964564 396355142 701475086 744064897 982109584 826216195 990663858 997494201 997940698 183425739 294497415 744444842 877105935 951616719 960526770 900159042 990219146 327641185 543853779 69277797 883478574 501881296 905993951 485918240 855150070 868396591 961607755 64474909 735993857 34181785 38486726 942289969 954542030 218122435 793682447 573139716 989724968 47668818 136624359 401804462 687447126 895225165 970458342 683789332 978964198 47915165 85683752 349428259 574499316 224494096 964922106 213397789 755648672 263543756 411138405 831897903 878284750 564914011 635936366 67394121 696630008 77653630 196026477 199851860 512621207 663394585 972176251 578187163 757965084 461116669 954059148 812451312 877385695 368879822 609053688 447404874 878084633 266267235 314402849 844365178 938545579 870561668 959026444 248837557 907400342 844574659 921095417 183482648 426517876 349689665 401945205 782585078 928072959 972646415 976616772 980681669 983581194 399412832 420001876 603055019 948496627 375269024 694524827 331033582 949389479 876525824 989823510 912247620 966130794 657375383 925340087 470102255 473637119 751678339 861027166 379599033 704252635 22281793 726962330 13250592 749788911 88245140 992770189 964373722 978262263 565560794 974164548 901805007 991280537 671184932 947381273 254027248 821963436 502915239 797258760 67360308 344161291 722012868 896507737 327690969 402529697 672963251 753369868 531180045 945782593 813770558 986206905 898700373 996960753 670483683 710237134 182168324 574536610 97210359 937025142 86895183 453828648 864001188 910538809 238971363 265596318 587032462 824277038 842102741 942879630 484332095 632239627 141021341 202016968 283075842 619465747 461500533 516642571 99820659 255055004 800793784 873186487 943890543 950606504 248759525 254807276 78300742 821915207 593120762 629354029 264593642 270987478 574365258 953301916 953797942 983494745 893988054 949919227 713945643 939536754 85549179 801258800 589692857 964241224 433125798 509004774 213902647 967189753 772370530 944439932 313052142 469564799 285237492 799696732 897183674 987259627 530658836 581918976 858003852 975522828 152479462 522165380 430787663 540426467 439926144 734766203 796447784 833159797 764243384 912448182 897602911 970665644 340200294 485091338 7904507 312058559 917916671 971998455 183814343 382704143 900397410 976097605 293490078 767273429 280584094 692184052 614671946 920825603 972191639 991848628 587346916 953431576 734537531 859351700 118340299 933273755 812977162 875095955 348173512 549286261 553620482 844470879 563830486 589825217 987348122 993962799 979198209 993514934 230584041 711441604 726320425 878641058 990054965 992261310 469825466 944964254 861856405 991843315 905316947 931741363 642941591 900022615 911083661 960017522 256677604 288816647 452215008 856454978 527734742 893517075 528500197 940286561 470617429 795575411 30931550 116123540 757447155 862456067 52197004 628608208 440902448 723423548 762516637 907902372 979241322 993104033 33341772 358912656 102593074 352078487 6652804 458657207 647187835 900967541 153141560 615582377 504696082 656391208 104148293 679841763 532695079 788717420 686142534 897608423 785502321 939207281 41313606 293799377 249790090 623566795 506840336 882594926 695657181 939753650 913471150 964208700 844154678 855735918 176447188 773026921 751862536 856500124 156021060 718579496 543317299 771225484 886974395 887120070 209221661 994723151 957220083 977797968 862586306 898363793 302435011 628602078 657289125 818475139 265627087 507007156 602310397 824582038 199112851 338452323 184793838 619451089 609710285 981476299 214323120 915808286 790871560 985325049 765236538 924727359 726559588 803507275 13206639 385650444 861279340 867361700 577093695 660661310 830252969 914838962 652419351 974990655 11454721 787638072 332906366 823491705 84881704 432678573 423962266 816975530 962945122 988334472 954808534 968505269 861734980 873364513 251602934 932622797 211808127 586367854 679414934 870117477 794484315 888709784 197458181 511779684 183365160 860424999 965273323 997627558 110991197 743859989 514164633 684836851 414072582 630519582 245211399 739626015 686401243 719596373 428164500 666605174 939099480 985115937 853156278 860384934 575639962 925892068 436179798 510612251 826152541 942204926 460585320 725903811 532032150 801676748 676579043 841756056 911090704 964935305 653836650 886348383 150464607 852970445 150694320 818945382 957628962 999649916 465875906 498799362 581726701 742261583 864698035 904333681 589800698 696341706 232845221 268225159 820283874 832641523 601023944 916372435 557881082 889208047 612611398 900920577 272320937 861743247 105688956 454121539 724840384 986029542 352191538 981894656 357485623 694327376 581770933 652968109 483412498 952963051 229404958 597628880 247240241 527341110 219998267 255217356 824568789 939528838 513842851 807001531 720361001 726386453 619125331 706785726 240887045 360891407 849293476 889076431 696003460 904300454 730497999 846344288 744161735 878732301 15072251 667701789 919091294 947243980 22072790 28852323 312798353 453443183 101037000 136743829 586069598 753077335 987281853 990661648 623450770 939969413 272444597 410113489 475246112 780185647 771059649 916981025 512194151 953828282 870772390 903561596 256159057 505236542 775415088 943326482 277269187 330964698 311411301 322538596 695600765 763866454 464180051 486347435 452561279 857755556 743226113 822354763 470815604 729221036 95899298 588798484 830455409 847703510 710632247 800277711 324848622 749928729 378504010 449803397 954446437 996431868 145401393 718256547 525753780 907134195 798333887 802668466 853815237 875756622 634100534 751653994 880175959 935002763 129269435 519317559 161288394 695951871 311201977 357007579 995238758 995396600 757125353 928124317 53334860 479320471 391276518 656327398 271483409 792346785 232123618 770131973 857741736 930361189 378738222 952405122 293573559 824171859 319430518 940396531 695534582 802306060 124151117 564233643 46306436 673134097 438755493 517031436 924019938 995584110 543503857 776520570 364109825 392266768 985649868 989359546 334347275 653664449 984936012 990817589 659161844 815811851 751554489 864566732 114724412 687856790 953587466 999180607 962355383 979336912 135268389 822325166 30594036 32686241 225622009 488828978 408270303 763225406 605186491 821854666 20342021 983537129 298210137 671723763 443357220 713694721 914650834 975179313 172709129 804048399 623196718 872095030 121577932 263071881 539746190 619617688 202388204 772418820 268266484 575752346 784958339 868956328 644566172 917874577 687489620 972102564 175664775 744191316 376726168 802235383 938752837 945525300 380344440 390800607 453444416 599028550 705832497 905505259 961677920 986094477 111754981 988321399 391560495 683641538 547237645 797437424 709421720 817783316 26912080 749127809 691924406 779744661 500688582 562264121 863205189 951004329 322659752 445120570 922354063 984659309 504354985 539307510 410341192 458096463 114271298 564441113 224634105 740709390 933831990 974212045 950404496 997942746 923974703 975638009 232557203 385218269 213167851 318085631 536963276 674793371 430931729 911231160 253101629 545760182 461235682 743470697 678097313 720777281 257727121 855656262 451372776 509140598 860159941 917568770 394550522 827318057 889512898 910419566 614786579 662685082 581898006 604079144 815226643 835390382 651664504 929998234 100508081 876286725 986932303 993752159 914974162 917862023 174329021 978089228 767479482 873721792 45583011 839686659 404389189 832976807 973591858 980287185 779433207 929543364 751002280 764811911 600868554 717809228 543476031 846946545 991006523 999143058 734216370 793775117 652012672 747288841 866185065 941040685 445512940 698331452 749583101 849326333 136654343 921144451 151257722 621562139 156927893 246563674 584532481 858196838 218828304 848345459 113463560 266786352 331517728 775501184 360937314 551231974 412025457 720843941 278563736 747637940 152958188 243128431 263169694 833742504 655295682 757769164 799360659 905344703 189041109 265479011 346852642 815552832 323569017 455950671 229358813 561606069 565357267 700049539 395894069 659216022 609255377 723722516 764622218 988848313 663290661 740090633 270686092 352624759 544380941 927821528 988459896 998253074 996038164 997718333 502314309 898552140 797897431 855415428 483990140 669999989 28027758 703759481 874094787 885172495 628058394 765931490 648313049 801023295 908692953 944490798 848484838 943208434 762443870 906676741 245106230 421295242 856383461 903890502 359731037 819467555 877015131 996634946 735439498 793414883 582222617 839443840 818329594 961113623 795695784 812662451 604572518 783746327 79197445 616165410 475886854 614572011 985012061 991101070 115367966 746850003 690351494 876797989 736609005 992558198 958465848 973272244 454179141 858295693 274582545 375995707 598635524 672119243 828794615 955764707 604941167 683859393 965165343 978040150 479082138 521990229 283333298 585240866 453582125 681934079 7864674 198897558 504464338 598704459 678367928 840886239 541056344 802829132 187555800 402294825 721760521 839361583 297721967 650845459 914599952 980510027 584348851 949234949 671011586 958563578 440748061 847523700 563301236 840103436 826553948 990581125 299098977 431416762 549403465 719887941 874195120 975169712 498279026 694257941 966960692 977224105 188166490 909685491 851259991 999630928 139743380 178887322 804906125 915483629 19228873 265203687 635206089 774825717 51274865 537414204 748196474 925761437 497242898 683366105 893397946 960953438 280123048 354795641 817692210 924134912 690302588 762967893 807214562 817917693 856714892 934678059 831666033 932057650 660585764 817160927 46958567 893093474 557078032 718852449 791840320 851018672 329845865 592615493 904199660 916709032 551682905 649598456 306446231 682797757 750636128 798833305 667289187 670993829 93139738 436930121 363284768 436328248 298198393 848766503 310613146 999330254 123496440 720897425 815476246 990810193 287435510 348370957 448345762 908437261 574368403 673460631 391430954 447337548 99429232 285812277 800497868 917518934 872967198 877892299 269971839 805390612 109275530 904308154 214455853 424822265 229112061 746545922 948978195 983961164 114647346 412333161 550851162 843384318 155216734 694188452 642645597 909801447 887528988 901152975 887815334 896473333 36396135 860962509 682890581 899526731 58380166 608735237 312707002 707894491 553163135 952808507 991868501 993757868 552606391 790300804 170768762 648202033 504503827 661829651 235260266 786607168 412074539 421050141 570744523 913976600 165046657 615143186 122944054 595208817 571385209 610720674 648757643 860199207 300423965 314142838 774806813 843221172 625065436 647905540 497570771 928560960 875890031 981326422 481234543 779010379 126630522 139083081 258709684 718802891 881983347 922961194 538477485 571313365 883645699 934505471 91992743 521374180 533415997 864797563 771652504 888391872 887817070 980047294 566121566 659452307 860802565 996129290 510579069 531735754 465388392 935893663 148907109 486819751 833136815 922122489 30453886 191500194 997740805 997883797 712035893 850304991 563997248 818537632 312599983 628785899 548636627 602075124 864805535 969069979 966404630 967128868 603678039 715851052 170644222 632523877 701488664 822688453 316878875 792592830 39885906 923838106 118314758 218579965 687961688 770256238 976197122 996772993 99497308 334032273 555363562 998023983 930306650 977354544 35444036 68878806 726247478 837345079 900993998 969011183 162669345 708588197 736209382 815182893 389354963 852281427 853308526 926608074 392729350 639091156 783256883 929716700 689496781 967059167 722911305 765809998 668952203 898147918 122186990 820100469 667268108 680977876 986790150 991892602 420103671 619395424 905219999 974819521 528776888 603846267 152451687 690917113 658040857 902564612 189305212 403693574 509848360 563915745 914263580 955394693 616656935 920138975 578425727 800530125 180364658 225684268 251111595 729099055 111936054 327854772 709015979 786845402 535690027 536150296 278335634 490708788 724408612 750895082 552510656 754493999 620371203 665350418 819084175 829500079 94640394 480417662 361156173 525940894 570236508 940647400 866313248 915036382 323115947 722098715 441768698 777381469 231784525 238417407 726013902 880196232 443060934 715268502 545441163 759280971 707610537 819021131 617814047 947711228 878310494 968532449 430618332 618284230 256336792 769094616 87735632 844574369 652610394 733143159 550655009 604100311 749105376 839607484 776472448 953477879 708275402 823149536 158893036 626019926 623663994 918991662 16670748 174111190 255085107 670602092 271933083 776322370 228014964 700425580 926406731 982380606 616996509 900243817 919021805 993816688 351069988 622846194 627330703 756058928 735897014 899626192 611637428 873924811 341875814 955027105 968915679 995572644 718300375 999787617 718446358 814748981 338312020 819576318 218084466 585619008 110846600 969466455 66045302 386953450 774556558 816685442 688034337 922431956 109045808 562768022 527216948 846429340 267656385 405328606 937258367 943208989 26984220 375134292 74980673 354268413 482534751 599178015 405173741 706532257 426549520 827648196 166985123 860613942 846944943 863873452 994628667 995019691 838004386 923397251 781625630 859579805 944208595 963918514 169186779 385107675 252812430 992361136 53710278 631124292 150609061 877620182 239437616 661221177 582023640 788080258 46781802 504202824 637738005 881400250 142171678 211035787 321647517 800031655 755055442 876940625 815006798 952605475 414651830 744387648 761412619 899289962 22884654 51775221 932796814 982074398 35734430 456999490 15191245 903510862 385803297 560191574 555810862 622449064 745136325 954722020 3344352 590037098 800475130 807748241 915210195 982826548 331192658 676974730 413163224 903804949 410641034 448099377 380689076 488675313 61513670 222162360 906961707 939149475 339123144 963309732 815079410 950680663 90674742 228127445 439960770 700639645 915158719 994880226 924829037 928310390 849067969 985237188 679041975 767714939 11718568 391677162 485206649 883196028 321716655 666013597 652867604 932747048 10525711 300025132 992790091 995345544 627278616 709163627 762325078 830487672 988192908 998779818 423005687 614796777 696906291 933742344 637633567 800647725 279132938 726967395 482718050 593333059 223467963 355639396 345973398 887255887 346526135 637397554 753125304 889406657 51435327 72433176 260351857 695050434 996134981 996284325 575411103 646676918 905401158 987137316 405202530 866624450 551576799 923516271 876795597 927356854 743212648 943298344 425576739 619771511 622453142 798522182 594705083 728327075 890753342 973559116 496024357 958246913 39913294 394628658 8235447 711158212 230125603 875699568 38284610 546354378 276015279 441848177 676025488 948785268 385442263 726981275 357465292 960969794 240623154 747318230 956771825 962288194 828625119 963860030 849109858 983372781 281164919 352435572 853218808 947369891 169615619 360604917 888167333 957019525 762947887 978769519 99744155 148621154 38905440 272755447 115300964 481922866 934142000 966970152 207960043 478320101 67020981 406778728 972823935 992865348 704690248 852697375 892099123 918168688 859515422 985485831 527926735 552266460 920664830 947531770 857381934 901418914 622569841 641640649 724336243 917206398 885790157 896246447 40830308 162270337 720509443 849270644 24372585 630357534 521049034 935780575 189350452 374960603 367877685 771797044 505075686 906066315 274360701 762997144 814588741 878062933 594177322 832135091 420242946 449047363 922613608 962732410 86110458 814618389 567567130 683643072 357149068 810046800 424502034 766907978 519669287 796322823 712911059 836462916 89964945 670982804 676653571 964082092 841644018 875794264 94996160 405051988 729880291 788435127 454849353 571698390 111458195 889045988 373633740 841999155 629426935 971834584 118902821 145581143 535335784 810564174 560794264 880829485 488487727 568624914 491758594 706471154 409806180 908249728 225242177 760008203 454633351 792786436 644922520 972955231 381411534 939969339 375007305 649232005 484112833 973461242 927039923 977820735 356995687 898234614 884075858 950964737 435066774 880456944 198947201 245835987 211763200 700348881 833132641 911911380 266329569 474013138 10079506 404952202 575696272 820324921 696077059 936814384 389220699 399305258 356305007 745165889 341398773 344283478 749215709 790990032 139350066 312137656 406172927 983975551 505416897 686222590 3049870 43220015 981155748 990845391 822847962 910519993 6711658 391115659 650835245 793016114 10881894 896258070 780465894 935280685 235358094 317530318 404340647 969125519 843929547 860722990 442180436 824951507 54189240 851192681 10396167 615312595 922666059 950855751 825636189 926827104 76440831 820231329 393366652 772763002 752149955 888540429 965554049 997793644 913219054 958448427 319801933 944991778 673560136 743267190 698081622 820998666 976694406 982255165 432621936 986472176 507377683 686347120 525296753 563356684 199323392 649376226 306430545 568775428 25748768 513394188 422966893 613358634 262866157 933572844 990306245 993219295 619960258 939133753 589327735 630318187 207628230 705514964 689047421 983561657 984533943 986004377 414221228 693941570 441890484 600390627 70506269 857259796 999801621 999945647 487935047 698085546 599882594 926967044 386097576 480747226 273094477 905848866 319999433 447410371 450012150 621789927 695263051 860111576 929682276 974133522 107235951 246244491 651210045 742112245 413608008 621867796 915537679 920214723 919116536 942808675 824400191 962318241 771548276 856154739 665171564 877523781 551302808 780038982 927453279 957978360 661863114 880299054 404409228 716845949 832785006 915417605 720087999 780555522 229995140 798437301 4309785 781531982 669783014 708856655 396249792 749829560 902738938 965322737 483148802 971997400 988105357 989596483 868924660 999650897 396527730 788637449 851179163 962384188 525400677 889543957 67402537 697957015 761007796 921461941 192868745 278390149 124710666 520915544 794347000 919858490 585363403 766352953 626308625 841248353 876151361 970572068 347837925 677263717 181129085 195848729 450578986 860996049 768442695 811427058 794238056 980201776 427411185 479591357 314489570 412061540 810736638 991018298 941604975 983791231 82147250 581788558 771724047 771727253 902801267 923411631 347674991 640264336 631516617 893420076 985023491 995552727 821956904 926911380 754453032 902065416 276902325 514520019 646526632 849583531 654340228 719743893 879123903 993706322 960997879 968966133 389185928 640130169 550797349 601549849 732348027 785927309 118602540 818900827 674789251 690198471 51709150 470119096 758639164 759024719 36964709 766421841 553706319 694008802 135483876 388720207 553719188 696307842 316993324 779392216 440293854 653472511 87912212 588726804 191994634 539766814 157956947 830085945 959593832 970070899 307445194 542728899 57939580 113955039 808618613 904719598 29397175 89518614 192347754 981502863 678409216 805781844 936791933 952538791 235433181 956210855 219062635 575667223 965952884 968463301 881088415 913658934 152638794 693763704 805589573 876679432 46472329 942824489 107702117 539352523 897917925 905663534 832383548 907594204 595791851 760089170 703005203 770527791 936634614 994052376 786088450 843252078 7574369 158144904 508282707 665511968 164130518 268241552 968576507 980364640 954042136 974069632 107013153 869254274 579751221 663771591 34166093 656242487 271476950 662898586 783602011 973736743 239750714 329761902 765322569 981004297 648380928 755448770 536189413 997177483 161090823 436969799 43187379 728341252 577935378 811079162 735279013 839692340 346623938 488049324 891320818 977759246 646422089 945249097 703948782 963325764 618480082 990170098 967643460 989274044 502586940 653042938 326713892 549098601 514271143 797235337 149574715 540393171 362357086 698110084 518683318 600042023 438982095 474115752 620230356 984844566 259722282 358290813 227938015 303591654 207669747 504344883 622673703 833483701 531342297 786961107 480783256 948821378 522719728 714164097 832800304 881650966 819245567 853420957 442462280 593515986 354281769 980331132 625634135 697480057 733432407 938156327 5998027 105869610 635778955 700269108 119202003 495173596 195652557 356931565 853383740 943431339 304999903 839052461 217136180 997165204 749995459 966238106 234692753 930615058 851704630 900748938 535157344 916400683 473088345 526228784 600829251 777913857 398778690 900702240 579210949 976321445 350207535 811501896 37554308 310318544 117524045 216856361 238625869 697618795 745390785 969852746 450858342 831237833 171083228 604503012 522260078 779347975 463145141 614457441 682873872 934141543 693489024 706283486 561684729 930796146 513981727 708888780 781327231 836407457 244480132 347445273 934969677 964975486 248069135 476193254 502862603 591109542 473585141 550413806 639808277 640748544 95511762 703989002 178394235 220197437 841557862 853873524 877110989 970364592 318007567 379650698 941230803 950770610 752961568 789189875 751607453 776863542 803680540 834861188 963946582 965746280 329385001 966931478 263268480 898748497 631635907 964919460 947768075 982445967 65690181 150106498 52990517 233374599 687644687 693412215 120514485 678235991 661524216 769876416 980339646 998396628 455525519 696391988 719477980 852332849 884972876 966937714 713225355 940832585 623908124 876416483 90640868 227550388 596651581 731453409 367524855 654979645 144839760 486766063 966603659 974878034 280525834 400421956 757255577 907241908 721815246 738092695 686676090 932379591 905667461 917116390 45363820 960475986 17966886 279147122 490136461 761940796 158647575 409169293 360523580 795860624 799903297 936966079 199184346 496517035 496362200 756855495 606040366 608604924 109346026 855157400 720711171 976754645 194161852 431262349 695702476 878190545 985741264 997689292 436566415 890320751 30869519 520684500 16385485 470950789 602899851 810699196 112613959 606757343 201766192 261286888 206491278 384426465 206107587 998829041 578466093 630453891 65851343 973812168 770556376 795310731 613655495 708087293 425644255 522559447 528635493 568162106 185758995 882179127 251545699 514386273 60669040 273403192 145849154 964250739 542865399 883855477 242323004 720728875 193762100 231144858 537589320 961158973 629260693 844262328 480213689 913883847 703782417 983115035 676199833 899195110 484962532 684418816 401933724 881372680 781467405 889563652 713410546 717758872 295777578 872996826 89295976 802436601 672337103 895708796 151986298 947797161 665540032 687695036 602116788 661263364 255262365 755475260 547369069 926126891 728882783 975212205 37655531 933741776 500131934 883838546 64234545 504317935 966570095 969329934 709714693 829626129 432968278 710409837 819219952 994214358 631286750 984257053 982316854 987366169 469426370 581429141 6809337 996429964 39990475 70436308 47052897 119129176 287708826 472897085 378323682 475209324 324851280 811197800 467480377 682233498 100312669 453781078 255605921 770234231 246370809 479246737 593120543 639379708 525313483 585466196 338430610 934613990 972753794 993085328 515417535 797374397 438092858 788555710 831904475 909705449 522420196 837456500 828435171 977834480 853858398 928236650 105377761 621211242 370842146 767264821 498057142 591334816 296023199 590962876 721188075 775887219 301651620 644769285 897509461 899987082 359460621 981569155 369996834 809504536 806025855 872037954 801591585 947647552 651795993 964211632 696630945 746010928 492912487 514759831 977978064 998440590 205926359 327877396 916601774 936509382 46759757 104460632 605103059 825694629 870398414 904787735 297235796 596152270 747767135 781207964 566407901 741118811 942450490 952925888 644594552 778850773 709749859 910958482 569597988 579005518 978310804 989043317 362178703 984709355 770245103 898105781 286573155 308217843 362255286 744253698 550677279 607974414 870571927 901077657 942187025 992504300 92769300 620340290 595999474 850630078 447413141 773734525 327889114 367659511 340013180 387133549 999922896 999980055 64996296 425383653 134852690 343680370 287129147 496622514 549205227 885710483 844417368 909281448 861462020 956782991 926288470 939253216 199083841 492292569 7694948 751219253 679978308 891928338 527900458 825952273 212381171 615250188 606572714 906161315 898446203 978479807 73900237 187102144 952593903 978347947 79029963 254927836 49223395 941363297 310182596 434720725 372685719 387068587 842052512 914997091 418853981 979299135 54130045 844721638 800448226 893938514 471885685 878712839 242673005 411640051 895961235 947985680 635259113 960376880 888791933 899013388 907402174 975408169 473298081 916370915 696331948 761717914 277836108 468359934 374365944 916822720 268945895 575248014 591980859 846850869 460406964 766313240 816895540 990001991 965599965 998357332 741880012 879244939 323199384 611757149 848936125 890953053 949840791 952373360 959991029 970942776 474025112 994829989 910426852 914488252 354169414 517815274 342516357 459860485 17719594 727705662 857951096 976664590 594710118 980350746 318132199 634050545 445038092 901119850 753805539 821823364 410065066 845677473 95790792 296172582 711734858 847116513 91736705 949555967 20872909 179582568 503534363 960272962 20980313 717411657 258837965 835139496 634415900 715475615 537506435 599874024 170454436 992508141 135796238 988551123 996473738 997802722 421675406 979095965 681540041 780006670 238765757 982296292 931734280 977121076 64660644 914915721 666059289 767162235 547336275 907416747 637644537 932681640 550045941 913451075 297751164 857399520 274357078 718821440 769988655 802498961 877039823 925993480 499362303 919539513 129683553 965253964 497084186 544506915 519561013 780869878 118801267 486799686 720899890 729941164 106323145 651677829 566579187 978891187 425707544 447606802 480821663 790494157 348987160 889364607 718778739 769967926 199323876 849794100 526552487 653528428 689093230 707157651 727826019 930503514 697012339 732652293 619861529 915364262 629335861 998684833 751213600 995056534 481150257 834144653 163498196 667274987 87382798 466840183 645133369 976208493 742598438 856421506 307553880 335562149 282453693 931683785 83724450 806747200 941923809 981577081 512017177 894823216 246780323 438121166 575954871 655795256 31989022 89971880 818690803 976278777 4993380 517437483 141246610 253377857 251240614 569493845 848296674 890701593 917501609 982102634 516979258 952495093 496763912 914624491 826178826 911587115 906804450 912187884 699586420 950674269 781271295 865861249 343376862 657342870 324119212 751192927 376881533 790449742 313834374 574236407 186041648 351055529 386239057 982909531 735875887 761627105 828932382 862783070 186814210 428642611 538116739 786989305 395250044 497833579 100793174 776202022 550000582 700147001 889162802 936024637 55969174 945568680 75602885 978109836 108957966 174330355 578882933 989650003 714814197 927998058 4391903 422171500 632419455 659793870 378285701 735365036 611570461 953204122 917992696 926996792 753866006 843079336 659407460 967937808 964714957 997368979 375917927 916894597 77828800 461882876 114891946 284202609 969110837 976672915 445948396 814749097 649325692 897651097 544991233 701804715 190556611 630870708 193971311 613289983 686812660 859034402 885247242 907364264 838202657 948122137 24080169 599556343 787891173 997017395 200382081 503396537 339040317 436061196 385208694 548742642 439802132 952769457 896417151 968768709 81997124 973357459 720410302 773486064 911776983 913875111 405233565 601927771 612427458 995407764 233839482 793624653 266927824 377694144 931904999 997861610 589040269 853909955 859104796 896639616 813541290 979774346 535552940 782650163 911567078 952736775 453563901 575954404 286841569 547036328 807915799 892776050 383127274 837262636 112113929 440793550 483006706 918332130 743974439 953857313 409516289 822780005 53067229 827529522 815301694 917597486 502272164 798777498 849229082 866333562 887414068 937342296 670060529 806723884 188367584 906177735 121040413 867868566 510960022 794777014 221510121 311861210 402729306 642691254 615869462 675257817 420463923 836488439 884917497 939078315 373702892 419020612 800241241 920771437 225926890 579181916 570369399 641954138 982423505 983354527 423078671 781988530 261558298 823869349 308924336 770546556 674033296 985315879 881215740 942386598 966115724 993662173 365808837 924972128 461841763 938341927 862868114 878019914 675540756 927240090 278995952 954808664 960371872 981493567 957971567 989872445 596801788 709979937 156833138 861379461 985966495 993696758 488322585 967009048 399293666 749411179 593030476 621353658 181422216 944769713 870180016 936224532 996586685 999357258 187478079 668996767 440995850 978460543 160754328 734786315 230752837 341141038 247212286 569432126 644130331 771436142 134925718 610343946 132985838 865555666 409583588 700787870 465491824 580143943 512941230 880589247 757344202 865767671 807069441 841928081 99662420 344266016 523242411 700051010 818771247 830380552 635617945 730826616 218601696 551317136 851358844 891227140 556573845 649107748 700443107 915169996 242832493 392078392 488610053 663242420 454541551 584319458 599537891 947194407 695455048 932862232 267422751 297917943 93703234 542800312 734115869 960861196 327607445 861000299 530974169 793732441 40160172 965661461 795316140 870684077 504674802 698193532 349671869 792452968 495669411 627592576 481208525 680349285 120590898 314287255 528278218 860036592 701835293 744166342 621408068 657643701 179142694 217131791 520043117 526314686 803706190 905440599 288185414 697362079 326347437 607648131 403717138 539734740 776120150 945006324 385817177 984183315 223484696 397203954 931488034 950835061 823028333 865106173 940113892 976763264 217923633 282742366 245677579 871500321 682682417 835712735 329908509 927020451 907837887 971854522 573079150 606595565 706934039 997778739 475289392 603256348 572614985 769397101 830050398 988891058 5924721 918119457 193823621 909992438 168978029 988317542 572630047 733863687 530239567 661286804 148164743 519410496 2575690 974340544 464446999 536145013 782637437 990054758 69505394 252134536 14861649 509526480 789749365 792799460 748012892 902745595 316989099 526419209 125859776 823494349 244509360 556430119 967581219 995307391 915587041 977207419 872497452 988939907 332055723 913906001 766729243 782891539 862753077 990260506 5043587 783184548 24450866 201810387 456636381 982756408 604000939 605487179 38633902 232396813 682148374 761387051 52451785 769691575 561951971 908432464 254242318 782373103 638963778 801174193 248833715 945621346 886379374 918770312 708991464 944031346 231701934 396524488 727251454 751345756 629158707 677535414 544884270 995880581 327440154 790296669 950504335 971168762 386433224 793942260 777867996 916814917 356377092 581613537 550334595 992562214 284994649 498016152 338650941 963198493 44344691 375482624 50648356 479691954 846002142 974719844 185959592 921824361 858124419 860746487 392956297 941444974 637456569 744385405 536083641 855645613 199474983 438313841 932582012 988537897 761984405 821508034 77023316 764856186 845181157 851798975 998675727 998931402 659150626 900234134 685465522 793573793 407865039 762599729 286641619 793096367 303044587 458554840 581987948 857145628 675978926 935900704 171955458 218375256 640148290 660683903 75418284 462479635 271710192 770331882 927217418 932176455 217342449 698146700 952282510 995712949 787923497 861705310 234975585 495179235 320444041 482987589 633185867 899727803 422441000 829228353 167087131 690288697 299348478 382975570 41342305 933574030 537631602 957460353 677714485 767355263 105457842 498657453 624243820 741667766 6912906 419155923 172011509 951730371 743262411 905254612 658874911 764490706 11521061 492297781 873155670 944899381 677485987 886244174 849611319 950254297 671318676 689761058 506377211 797457653 48653061 515208451 674025884 774024700 709869371 741151600 388314636 819804136 883754985 963922579 80665398 527546673 322239340 639086877 745188634 980755205 754125885 911990009 885996883 965481900 606109692 933630132 386903474 910158781 433286386 505921232 869604053 990240177 496534557 527658460 54553727 610673478 699265981 955940923 515282786 579026358 869381964 969252999 663774738 974744777 761271119 816500486 968309587 989484972 355950558 454186051 848749570 982683423 422532299 754367198 985943108 986103168 812292923 911782902 715219691 863988813 829333525 866108612 596197690 609144193 644174081 704377648 812069209 816596611 266287287 297360094 683975300 819712079 126416843 361505246 428446218 685778417 374240671 691288371 543325120 671149242 118370592 941217339 395446028 651987370 543200627 627418266 67420743 462041000 217626616 231516181 412207928 677074011 945906991 967051174 366245450 646516081 503285124 588421868 689272454 842379517 300999707 447521881 193391890 812785741 51481136 560121047 945157269 993709901 692185073 920006892 676938994 677555841 688925699 981858215 906371338 942987431 575885069 685184269 782531005 837740958 607939936 825461771 561313458 774775670 75883519 504061858 317926863 512318258 270890228 309406040 649383790 837987782 246064968 478208457 347604103 988371561 234312812 248139376 216764320 780995866 103970510 238564393 215484961 966616344 945163988 991683167 867198388 889902771 385065613 572341579 500982754 697206503 776776100 804489200 745521644 781427938 312097210 578721652 606091932 921648568 143218012 451039388 456276423 850459253 271006595 422041883 905085575 959908710 736067288 848140161 286953265 644166105 521607776 650794871 763826509 997793911 233664242 738530779 37939289 612719080 629270147 794449107 834411971 980838891 146549131 910429166 1809936 500060565 694201564 717946495 262882345 883845805 533462458 654212052 614825969 630865570 394791275 895954034 917390706 924754668 862852559 981494510 314379042 952310327 553652072 772754194 981979771 997027261 952439392 985937845 501287361 688804465 77592508 124182681 406674851 846959304 666322620 910371656 179142188 489169182 580340366 875642044 753769007 997141716 595054060 980522452 949000049 957302589 983942417 993695491 206594961 635237842 402074531 859516108 198370912 606913348 28174804 862817879 983567632 999193084 721067769 884102747 954909407 995451395 124706203 785361067 628796054 982990911 832423240 912715445 951442598 973674483 705465107 879721121 659476436 839505251 277970108 347197684 139389059 277197169 318741820 338990157 258556066 306846177 943057583 997543537 869156537 964814929 960611401 987335779 496108549 891831126 109194128 685979208 292311123 374487708 397692337 485386489 912108577 946382538 257890816 383287701 229711999 769934188 701921065 786872991 66373609 240040577 338852688 821131251 138114856 875353425 300162477 685511206 250731993 321483003 925627631 986257458 651041151 865439327 634499365 942020511 383092578 888526269 250577361 647185236 535941074 623424044 866710439 921910994 304831839 637061435 418528654 431096208 379038616 956637189 651223702 968578658 5669641 378484635 703165879 942630363 844606444 891514174 201963058 928669131 890456819 910219290 4196773 578176935 163090312 321489811 881296138 922965031 685435815 719878355 639719076 746259515 711591212 775071169 468032293 835411563 999207415 999902065 978180525 995757149 433454610 979212928 59336198 131617007 113024305 292187904 996737894 997026251 113846061 300423302 701502324 901048970 51752130 988560195 776809420 953682499 886936535 985919025 76352619 762484699 399817883 404565540 480744352 832698182 20893022 892417097 56223720 243566488 226599562 778045914 82108470 628781874 291187297 405623332 220289469 297306693 490107562 611315586 868745900 922097466 62215618 222283324 64695999 281445969 75424440 130176659 636060851 673773014 902272884 962567148 187168275 838418045 159815412 220845103 663247989 957203610 367046157 937744346 315419919 661154737 676783985 822660301 177349214 665758197 478062743 615265176 727194406 885203252 292068763 522909817 528288818 669542945 446302309 761870924 668103050 742715116 250339569 780583929 570318517 698947448 984531936 993054122 304695848 418311307 64604138 197418336 599208555 985191954 272032856 313823019 338396955 731265304 588873966 682395344 771789841 958206654 164105416 826051148 111407176 210810903 531159069 759098568 357909107 761360669 70842362 151120286 270481531 925666788 891801217 951871612 299815821 534331452 679682145 959534321 847272647 922105883 659963160 864296514 435324729 642387118 386297420 478573278 208622579 332950689 73504660 269306751 7775943 378882658 315604964 748761576 306068687 731514047 134987667 705660128 507983659 852166021 165877671 743257087 670730524 772207619 739963304 864765670 642153270 781190683 485525399 858710965 964546383 969935698 479699616 737877461 59634393 752958593 73940094 793785719 551619433 948094430 6385166 567805392 799057559 814495207 77264691 793718469 226078009 629072780 842001101 914234531 325741569 362702613 146291924 239377215 106763426 614880954 153779110 222694758 60970646 343332918 73013130 663982432 779727588 950097075 188083711 981868417 850262681 989447728 83006660 574830132 621547242 634728843 43682509 81549455 876537676 954949337 537647249 988806035 907816062 941534180 758936631 951013159 645778876 848367780 318032028 853956520 910581541 934928966 597099666 748026622 671238405 748762662 964412167 983046862 347412849 994281584 808782571 844771652 917699731 979621412 889075158 984865285 488290783 520882687 193804431 628723964 610225711 886733281 500236941 643325232 114320919 130007692 281142634 394746160 825975340 838198863 344161901 593649082 494883331 833589358 352102075 806515312 211308998 811937185 779932919 926705258 954012442 981884930 422241882 705938594 568947273 920914119 947232950 969283561 897312711 966801431 77637115 393955411 515765369 882909191 808392568 890846139 890020848 981308945 591574057 619719081 57263707 460210792 649790963 781460077 443096747 949062604 522052993 955576088 334127386 415267254 619615449 820036200 920448253 932529849 490053648 888495771 895363126 939362505 244826125 481476654 109083964 253001844 561324858 705005120 245086048 564006303 132820622 229634723 514603631 993983114 557405024 602640460 5032663 127064852 110240112 795956947 576222090 680287198 508574678 831058010 391627107 680508311 505672419 957149080 784385125 853417943 442947755 595445314 706273473 717885232 803568403 985730046 345588481 599564665 218235165 565281895 555067971 917826361 859306172 882528530 741138004 860031564 10522733 797192138 735534394 964074130 428328549 817387534 460431547 729900609 675052681 807086000 661479087 843113447 546078762 762274042 957498153 987660466 534542352 771924386 118517264 820946825 195102062 593575371 720910818 868890023 218753534 466902455 933211759 993223902 673553944 715154029 647673276 809590137 474716285 560620118 229950283 773496445 628826282 786632856 919517375 939445040 114292679 737764697 816924066 985459017 868862041 891002679 814271765 825197988 401645538 779135049 155043531 994016728 639953349 962370686 982877932 995978428 997230456 999616526 72767360 973403429 730706416 855645848 878852862 998949294 910840141 912424771 720298969 908044764 761630662 938963048 834993182 848490233 616227494 734301781 62921718 225907207 994530455 998737496 220327891 420224426 735531992 794928345 830276573 912132348 114356755 968988237 498940063 776422286 990190718 993285381 979686681 992199810 537620276 605552816 884830784 991968641 931082170 980174422 80074264 646355127 807732845 835682064 106981454 955896619 136575079 761726266 118804694 520409130 29391829 183957719 677916939 866880755 291327587 295911125 620594061 707924039 372320681 646182501 477165208 817537089 797200091 801346026 34478594 782893049 232487182 237204860 356339656 842676472 413110672 568220711 738848547 893226768 180409144 726395426 681558048 777266899 520450329 760403699 72912281 952454944 621465817 697383723 883587828 933273176 338809739 918014051 651704737 800437997 293900246 585918314 5919436 290033949 303126258 437937207 815809747 825101867 815329471 840759074 290208842 494971984 221432969 560165598 138869242 435046322 860030204 980477204 466478528 919835543 296363976 520153440 275329843 557051010 242865334 896706186 48848503 398137780 990644168 997479151 363300770 603128143 469930839 612548468 340745225 535592420 12038502 570690239 341286525 948835866 727015163 773191030 699769184 999320661 744319129 953044736 251357091 909707076 943091981 975069347 724453973 796757836 967211715 994187290 860920660 951897469 825836474 897762419 414145492 721577189 34996989 207049005 145147722 592050414 492718930 554757483 843130695 995188520 33993930 423251242 757460203 915008323 428041010 453612917 705536817 957457619 631548294 902880121 169378186 272642053 869773666 876185954 702325139 889901670 293082352 834187758 737433081 927358052 802312021 822617222 843042772 914363665 941136608 978866786 582740196 688455098 211920652 405593747 233553551 769471316 513129890 554631029 483068329 975998452 380373241 561578672 653462117 702251503 870613261 895003239 370748816 624904683 358629263 756312298 947100943 966340907 13998905 718390989 688432159 911492314 576481331 961033047 312360880 398781330 692272332 871199272 119135538 701026468 38790929 623269703 985232336 995144076 632806724 735067150 390167170 569082831 197431614 457797155 443562193 578245993 112911396 805543791 408577526 859384172 438099619 971821428 219350439 689804772 258019573 577939505 948680830 957725709 904274698 912864143 763901555 887308543 558310036 764286198 170394229 862345915 433741199 634658143 774861121 987339447 529106790 591275278 440738746 888513379 13079615 691151919 906142716 994889712 243430565 749561275 242191336 521555958 443258480 484494033 767275672 930740966 489497626 865648025 738933326 981532874 32379715 758599649 398932737 511576852 2987014 194117379 188825680 235733255 819970469 865313706 782205779 877363039 738346083 762888802 837184500 856329307 172603117 607492576 65194819 655717409 282229490 616614149 646117551 712621230 529346737 859939009 837596876 916840514 605872883 674638224 799294596 811086998 581869638 728692392 738076378 970887608 430049297 550986743 129224897 865776167 898699664 967248710 194799091 906369228 13230668 939971526 673253436 874175861 582523270 624953129 736705913 972846446 395708308 627417769 158446849 926728787 391682626 738067874 514389153 679396117 289703232 665341294 701000674 916244136 805406817 845760903 44851422 833879431 812085478 894449404 32007295 905390300 352234340 996971870 995912233 997301844 720890089 754175587 918746146 979384335 42684478 343823816 226164675 983028057 503373347 642570332 167029049 615196923 831172773 948777416 268669049 805265781 498921909 618614686 818011715 996851223 204180948 463690115 225746612 585859776 900398552 934720152 889181817 986848370 742681354 835413789 433960606 862677070 378745582 487172165 41875831 344821926 449279586 573532592 826625147 831241237 951416997 957634434 723159170 749733322 23813857 897470143 326768160 990800703 692807 311202387 868107649 957031853 723042378 966951718 772685231 804247031 265204304 820164508 925658442 975189286 76739227 420543412 514776534 975818710 9979705 293301964 743350172 999167582 258611550 776182862 645888109 956125073 346397695 825926258 941333131 952336584 317962835 877824761 691414600 922973090 637788114 774243210 403410366 800247704 927519809 932111349 134660699 868832141 609498268 719761484 515784950 758837133 116364976 701947710 514892224 952857348 920963524 988335300 186335863 406576284 450016740 935456901 707125086 775608186 28122990 474951235 120839486 774251923 517030309 568395124 470929374 676284189 97501006 450509398 797222659 812587319 114464599 183622466 848359137 942680812 538796719 603467947 179404206 284527043 889365460 941910640 797674495 943435077 836469644 934753426 550598858 842518057 625675828 715007492 340160921 993961918 322867546 641066429 801531444 864041147 96054008 187948635 851332389 900510244 257274069 621428130 40909593 681210281 365285060 559178347 693705014 851638416 244308208 919837255 330505364 451042967 230297083 507654548 466194166 844925253 292811485 878224093 397084382 692223002 559424377 818758640 954336840 991574658 891485852 957166765 688415741 816433573 331054216 895046619 392293918 965003250 165411423 932428116 346085841 783422787 795962140 942009066 371212261 743032510 68033782 277351885 742741736 933371437 945765834 986246357 382333356 507955108 593905643 775789392 448024811 702463546 464278168 577144482 275939381 577553882 310488881 319153509 416623754 710690500 325296337 705163310 532239020 570910658 991136717 995033053 357180492 828839608 687717203 713966225 764462003 880168184 371797914 809110530 792675253 954505376 550678493 996746063 73495159 187859277 463807431 610445448 84618462 179652431 229643115 253515188 409850181 860370990 632340150 783040425 615651187 952310525 73784184 809280238 799188669 914040729 835495438 979536939 699667301 801368636 214900744 900912595 205322974 570178853 278206851 871723768 892081333 999011006 532464834 640824096 671747688 932761512 166162694 233300152 676593730 788033870 429997507 598064844 790505090 793217524 455688910 955158499 479581577 630070328 314711763 420583514 385117616 390106152 26008596 597682568 65564161 336225669 451450320 971157595 503639685 672217190 50079503 242688377 407031079 959147535 33373757 855202320 80781872 479501059 424206985 775116386 35993865 116516718 748548982 945245974 247242314 955084186 124232115 702097626 129732148 446683201 739498950 835902419 169459473 844502530 704731703 885647596 573933271 758693313 99180525 142478004 556582673 746561685 10490461 285044711 904264216 931574856 41225604 212566256 458470772 530690901 148159948 767702545 391307863 880082046 850988172 851199465 179726271 368695235 969389111 989417809 930198471 985392763 365040150 928965464 577228353 595740931 665147809 683331309 204104982 493830394 881113330 955268902 372465542 382315106 613647579 938042585 205323317 273943474 988393961 999934788 932252235 997580954 829545536 884211348 698030371 935868915 614511228 883798269 119637850 598738880 88307784 263353291 563338487 605166700 893658375 908287670 360915529 628158059 879241980 886800902 150321143 508650351 690927540 753125822 982749732 995798916 522538844 751192262 613499428 663998294 261356490 751369486 629760043 979109642 863568879 930561320 746808840 994295147 707730831 920412038 665538951 665560925 304429708 893778343 563547387 729263124 343347169 503766001 930561384 950523257 267472534 606453569 410269896 490483251 536974053 590341091 75945931 935727670 457908753 597287625 874291653 891609887 70493772 297255616 158762287 874981610 405677904 900310937 22646852 875117184 434877989 499547441 869711146 948122083 128562951 759218267 979729910 983120837 647523031 734339061 357796062 567048177 380161752 678652339 219626604 691756375 817306151 817753445 784023393 896757280 502232255 765738621 789783232 822968622 673506788 952104640 135293990 344602205 680129149 958582576 925059591 933064911 483586038 765332921 840791822 883183859 323470425 576445888 614513574 687442996 536740494 919206628 3811317 659269512 782090657 983704246 6736604 363846976 781007417 925310780 945591766 961962146 363118012 468075540 814129279 819761500 271402598 773909404 560430909 830314197 64835697 316037976 40024010 598442034 195630249 536567170 454965603 834353162 336699804 341734397 652862310 780237341 124865999 725484624 29047890 844267933 643355448 827118419 484819390 568056620 224334420 648905993 276295558 294994736 382641785 411872933 34880970 163274807 319093996 771923901 931154819 993183318 645463506 930863424 974818286 978416928 534524819 793628985 934410183 968997807 319898708 923121104 815240556 955293627 90016786 959499661 647246511 919131935 85411022 381658308 844288843 884125832 670218496 781012044 928864964 963076686 502730003 605457369 440100172 843296210 926295096 982066703 824721574 909766308 941632074 985619157 980056193 983155293 835057152 879829582 851458119 982286258 842828757 919684733 817239889 834418909 958079435 976682700 595345973 735855097 778500317 931161171 451670046 780396559 14268844 370176312 37729431 614961284 718176521 994896917 757124274 802799897 652711711 998089262 733735503 906457924 578793151 707120121 291199556 310728331 267837145 733219146 998906303 999409120 151908868 395665558 402723025 508463272 672148823 878711499 684325953 686973058 275631129 691614239 596355211 912136389 535614313 645177343 39592364 311395255 221501897 862864378 343840129 734258292 430673777 503516810 134581615 969281300 238772837 829194088 640089348 995365071 220237316 790201963 788077729 822654482 704245094 782900117 46712266 376489032 201412969 295844237 491474677 866875554 485008566 624528462 516390295 622997480 47324312 542726206 185755956 248537776 681179101 966096081 916844774 955505659 570957516 679420862 20201152 147801103 871671460 989010348 569259312 748716969 33463220 556422149 819496877 863764810 371635598 459374156 991041228 994335032 339252855 589524507 604721855 982888859 107710904 395940336 950650767 986845519 164991791 778252879 194317587 947951809 93460935 711939557 501690078 595965096 94914770 764236728 574958127 942176988 612848103 738847729 733781753 940191842 748871564 781767670 153282728 926089435 241140676 439175722 346582399 631368387 297520677 403305629 94429693 671355356 668825055 712457968 971965619 974431228 943411267 959979801 755848870 974789544 180231084 350407932 620440542 824260449 965760641 986851794 468688554 841796758 671660346 868036293 20447229 375078593 739906408 987173509 314879738 410831361 37161284 355186413 124271804 542414841 952472468 977180820 997451615 998033265 445355197 890469533 299288041 962471775 178742812 661961262 163569733 477530177 539183171 833235919 651045226 851114814 560167833 589062934 560608904 998830554 16738279 89025779 342662146 741422007 624388753 993051565 993444070 995417294 927122150 982927569 699491779 764493815 503139603 945452308 767915159 854968189 484246580 972646780 528616924 951660753 768652827 811273357 291549437 808168951 637935229 762829069 306467430 680889196 252416890 761455495 849425472 869376727 208917757 612823520 682757746 902659721 90348472 311386762 289545826 706204618 158496097 915160188 64411686 276827693 600058563 614972365 718119592 789486299 19951252 59302687 651097226 712677242 178794766 479626290 121482438 294632451 346368303 881895554 744427907 750737599 840042262 864770518 907050918 963612604 502121790 544488545 563213605 863851316 270844678 498863170 103071277 600651216 580326767 798127560 384022605 517221786 80823189 848980332 743195429 980585504 463404725 693898012 525443938 761499815 416227582 963782242 154877483 488350701 262430686 294725929 712966985 867753384 292237399 469094918 526791326 969037811 983473965 993796325 133505844 885954301 708022314 873045907 620979469 788892990 878057597 903663323 614493709 631531566 13846124 469692189 285485544 549816407 824981054 955257825 217979827 304503845 530104974 699762250 672497013 857784362 511651478 983999326 732037574 876302094 556919550 880071171 24029582 262500802 15092829 868303776 737932952 770945094 492658684 616326772 213580600 884093312 758115683 925643060 55196983 184009629 997912448 999578889 684074899 697271724 246305294 691081003 621928351 770591112 663883086 903180303 757560693 967429589 824191293 913912841 118096596 649668504 961741489 982301638 70951455 991247326 746245273 775851397 520680540 741078982 838257544 929392377 991849425 996983094 475667921 928644095 954049874 970352405 787264953 855518253 761383546 874376710 474369414 954666644 665479955 916633286 570023708 710108648 185116064 903592774 177904228 485709829 464617445 735938732 390311399 408388609 35758206 385520454 677744883 998195114 728074133 990262247 239336149 534325735 880948170 913936522 400116569 808338970 553340458 858378028 859086154 914292341 160894902 616327757 902518521 947879781 521009660 537883741 980066346 984517344 15401192 749956066 549132770 978348111 927749628 941585337 425226171 915687215 797503510 809616728 657436200 716122505 414437614 762438682 890481870 920803041 91825397 144477713 950691393 981954494 918670627 977510380 681273611 914041475 311502464 560070192 234464949 414309645 310971215 691741257 348988920 427180334 117814126 435026251 208679620 930278211 462003659 725609610 916621029 972576298 596413123 886697114 891749342 960160288 500918146 650038561 913474140 956129186 416106187 624366918 57967435 874713195 230952536 986266017 254202260 958791213 422336574 959117690 956445105 957716167 756802441 838203765 213685202 316894493 303298480 466462821 51058639 667128751 947217852 983855975 572028590 781340324 513978082 950884668 522301172 943012585 651004834 963992910 262070890 870349779 670977800 801468572 519526646 808430043 782636781 957381695 645782526 820426229 917685491 969901435 341561165 515668991 200742456 972501935 82384997 177781350 558441062 954218939 282648297 351371461 344961808 945651713 364407149 847828985 718480337 950461360 906357973 960529910 788012051 826066676 649549801 689238303 989516567 997564758 912572454 913440810 12472840 361071385 406071293 803630802 647008267 852280252 577581812 969614955 326350400 617803708 96534983 423472412 22507646 775356563 452581803 650206351 329568117 434118638 502550442 891358067 382116657 987197805 378411944 895768737 197745906 741068094 118227211 276521041 623241876 925309750 504340063 720675440 529996784 978542184 811626637 891382598 562089346 797701280 167703773 759558962 573487736 724205170 439755113 621091667 296025235 615992077 596394305 599788309 463545183 527003653 456069387 566721935 737966090 971030216 880219778 955332501 503145749 653252532 899541968 953336342 406290567 669722429 400824771 853948432 968928763 990402970 694493213 857150108 134884277 648431870 637508412 700770315 270668539 704274621 41993696 881051156 176121217 637466819 156198819 821868281 239349071 591144720 500840865 933421489 492728075 533987873 983060658 987038123 83822003 378486224 892684960 910715418 39731783 245521667 435852102 673047016 960201172 962257415 566792856 992086704 199932374 966330777 146345311 158817370 288180619 295436740 744191658 782973125 971632744 991832673 262947405 653429477 406299577 533863688 390181447 756038832 765798316 945672150 41348802 989620129 579822848 977418700 859376008 901704315 321359967 810353475 267585659 362006442 678488906 760300650 113220389 461284447 583229366 721346231 602143850 712949539 835011075 864332429 686505059 803375398 808746685 833361335 924221147 965736705 584845923 686398422 823935866 903886527 583049279 833861065 732126061 859217051 359063328 641431331 760053036 850596961 325238685 765856618 557982877 642044975 820191074 899337793 752524575 940431163 296381544 639656177 772582317 966047500 636457639 752606748 994741893 996656697 126877831 906389348 890206721 933050478 134727681 684011428 96792912 414328551 657149261 853344497 932250709 951989130 460581306 795614755 940706473 956958278 902347007 924737742 912830503 913547641 194149480 215219034 65876620 93902735 35427471 627907544 184903869 237163747 709042825 813097021 886442267 888827663 96210016 955533524 25730670 384969667 226399462 783227748 301780564 448407027 298019590 787074999 60330991 204666101 598215163 885978044 816393132 939436143 993900484 999726126 300512784 353703107 9384443 528048825 161953526 987106434 914343466 932210489 82400201 686126251 886080262 949076475 372455110 510403847 254871504 334228851 553834302 562075453 284417367 840903240 191388803 550079012 852253563 976891494 623345800 875168988 814098949 943863900 491373728 668100077 830379868 922944372 626104881 766506720 811490821 861444201 764536880 829575079 241972905 297096820 988074631 988705259 255344880 940762980 686531702 958203859 838259299 878840594 228767775 592511867 705716068 985750790 496970545 742370900 21531853 593026856 18335718 421179212 791453793 978711262 711179809 928052992 955876111 974490586 333599557 733363687 696205754 869259061 15244781 485072901 140530507 315696010 434157909 630592062 482535432 847953405 544347118 772916524 485766340 693775660 115743470 210219415 272370467 932567560 779151105 979710166 577894442 719077543 573501926 842380496 587334082 831158132 947172898 994550313 970417416 976951436 681766551 974244146 159292242 339512612 390192434 999793759 537934238 887351968 264116074 938618416 21841678 552787370 381321079 649197763 80441907 649844365 410554800 695748506 272994457 293206200 8806424 442728003 357826610 673608870 989100528 998738463 696927466 797322921 334971545 682836783 101981771 630573485 867353664 980301314 659284779 959150421 332983773 906527764 742252678 841230740 795593799 957115739 28795548 583458105 980242555 993118434 562836360 968313963 722276702 740409434 532253710 755656121 633898824 787767075 882503314 960951706 272328400 589162030 638832 907153153 267951142 469947510 520554957 553418679 340846997 424915765 512763841 796882162 724127951 809574733 446073121 456798958 187571923 447919530 129594732 956033983 879011265 988422421 961720262 988431048 324533123 927986616 424899494 513700837 819325902 941578659 70242488 892245431 168599147 391858139 304100772 338339828 511838880 764137336 263400246 482048000 798790993 981798325 199967479 549014046 696267189 836866028 736022157 742655745 448153462 588433703 977918627 980991942 557473419 761194659 822605840 912907748 829552356 840993579 879177771 960432805 391074460 559544993 991228715 994112356 166005974 562010863 656636727 979357000 247548633 920254270 112108740 915184722 381694579 647569693 447786035 876658679 421404793 844741591 480864318 484160480 785239862 925483313 798228067 882205848 709613174 891194177 813344337 837937140 119820825 967515960 884955456 890012724 457758702 482485176 601443238 761769110 49538569 992516706 602690809 968732485 883966662 980490547 468031384 482842547 380076159 974762266 52131538 964932158 638395365 644366399 380995374 788006820 123001256 864093331 525218095 934411679 324658061 941361175 202461446 881600362 565437364 590863905 933242808 951045660 632026820 904934613 558898217 825571908 687855017 976900489 799650422 916213004 327171961 538182477 788934552 820644640 372241687 586337472 49654448 268288229 156786407 574055019 937492885 957358438 753494727 848939852 703435563 885515694 331101637 585197349 696244376 853149206 753772580 885488201 704326084 840377314 680687844 878105656 365953647 586042808 755013344 879227031 33385167 258719999 211416643 307089500 52455488 110322536 976219918 996470076 277738069 592518837 123200023 580106337 447539976 796049847 593925852 923980028 265810582 502592843 267831328 309365467 449983482 477300915 176959484 219529794 588327534 663514395 667180318 822223259 896327142 907226304 442424633 671986833 429426856 452685650 998073758 998756716 305519134 581934108 557948138 728257550 454517726 561381279 263090896 294000700 981376183 987863070 484080232 524273627 662013727 887670694 194923549 877583976 94008622 254504452 723620035 743569068 14762454 948225846 394269808 474087082 310269563 823686329 387521501 520726332 121207850 219320146 21026767 126574995 11330654 663278828 292831428 933609278 383794242 961466119 70964611 407047414 178411671 485405083 48263938 200148676 795759974 846200486 777527468 879168179 261808401 720747250 990156472 997855523 754630367 822388327 627649482 647174889 789247565 843193676 113673566 903664170 631537595 880803303 200735204 733888607 268986076 974115262 198255664 332338680 608578811 700283867 915895133 968572088 396758851 921558512 357021076 558207780 267566963 696581375 683291409 898667783 794198253 998992215 725581050 788054167 428497337 759616340 16983497 559214024 170635262 590524827 343009499 466714131 277975666 509447129 363260022 886029578 857735238 987172857 994108078 994167800 844251082 910928397 734334865 975467298 838522201 872727417 509126380 677783181 75490611 877769774 51588789 862832907 837558261 884606326 82928979 244201907 938682535 952752605 570924580 812046308 870938048 913261620 440666067 979352835 862830342 864452777 827649321 869836344 392682398 899598815 296735566 383639215 501943248 730282870 677200931 726548804 220637764 777042411 378941898 463414502 882922541 909523963 834791074 938853443 455791086 890385148 14750286 589336755 473400950 866775203 943241927 944020614 49329376 332852252 687183862 937477585 308887852 424009433 679138557 942466416 929816777 946948370 189942914 818381276 281711968 394972078 368224696 569313588 260782955 937731055 211110380 241577021 232189593 589019388 76003752 885507642 100959017 786534726 449515591 642780526 479152536 827573359 247654451 584077704 219376322 877665003 39587509 855214118 136080542 574198039 369964994 864957244 580748732 883026345 360227682 699722630 553470957 587995234 730437799 896596816 596835358 873422329 717140809 780067250 198767194 764604171 289419255 484694101 527984300 645301806 343104416 607799877 813661206 866460641 957231192 980047815 607074258 977822915 941780241 964464408 728745555 964584476 192090839 936817572 520767150 562796004 110664723 311170168 564258302 634810387 439805769 911890490 950285878 998061547 20858136 841698886 964230594 991027881 674798910 777087717 561290360 643249001 696826811 981959441 691048084 939861310 694127650 745127322 970261220 990234997 768448488 964349241 184065113 612376164 651407582 764339426 969746484 975041440 100705014 993319279 278671456 840375615 389217019 546281069 810842229 862218360 832896051 976275736 465418449 539142604 964355146 986638506 86945856 641557621 184044673 659761815 351414860 395080970 733627881 924435801 95711955 651238386 62717760 142094414 678012440 951806486 550542524 752952449 182523062 852947194 407167884 870747427 192398271 291948374 846106097 992984473 570099538 835734235 520209857 644175168 872323496 948181579 236536909 610544315 426087387 923462529 135450271 722904779 142082202 344490657 471030225 485301569 698891922 826213780 103642639 917414552 52080320 714578547 83340034 494249496 556968286 692213182 304981674 655636336 296941929 487032208 518546310 973346809 703851322 932931213 545790014 985943310 867641287 937038443 887018421 937043209 180760083 304354781 378763400 881531295 509352556 948376440 481561361 906854026 770465011 930753229 962568863 990674446 659543463 875199568 812984669 996907846 124016381 687788487 270097708 407177369 663483673 984577977 404602029 862730051 689222183 889081474 950868680 993506247 446354028 608712759 931108783 967530875 182692560 571221785 762604533 880195470 512197545 703803780 189403234 452925443 465691543 807536386 227314383 997821829 431147396 534777737 74752990 259367165 539040881 577617263 903340856 976451710 671202737 909219446 63901041 797166804 380674763 668688391 986059441 993018520 507470711 564027664 292251283 818057686 361695880 499646781 225411030 736535184 872835197 875465314 886251403 987486095 51900067 568362392 471010805 573497118 928397417 935110463 344832290 359286812 903957710 964688777 822481093 959213256 422514972 448297337 690524238 912512285 837600357 891239874 653103278 983195232 884385090 979996977 794865496 803578142 994786019 998828435 55402897 109978162 372143593 639978288 319137459 421071635 388328151 628862362 666830410 852818049 452337787 944478024 226632698 961497689 540118567 765057818 986382363 998531005 720943387 798380102 390149574 873323004 713995034 803766940 734179899 934085636 135534009 609540266 495217715 863259786 777593765 894490046 920630056 994619331 795310948 846841239 723046469 836262047 985212618 994494226 639930103 966955823 847731888 973469484 699796929 707255496 822138728 962227555 35774531 64336669 858413577 915542204 811192810 940631156 15993168 246345376 370966869 793120988 326979597 402715842 587826380 815660162 798640493 872772243 704197233 989471572 738910038 972655244 220074785 660449429 212370661 630856593 531616292 760052570 787580909 932829564 252951333 578107721 607527003 841074878 107979934 318384696 313116286 896774080 449523755 670701002 943124292 985199312 799129154 975115806 856837268 955453390 778993934 824706119 802986850 976190249 164822815 416163577 368511165 753623288 987282959 988644874 401337118 451943674 993690712 994223748 209010379 747890842 74330209 533725953 798896965 952880944 253466985 496992139 768279270 830270030 665107482 807909695 348785612 600143689 948121934 982897369 991404860 999667710 981222423 996070072 751824527 891049958 292374561 302072686 239944265 804616781 249858712 428772193 640718888 985868117 275183278 956584415 979558093 986689955 998788139 999453202 990792711 995215472 872047975 891644748 377236118 728212024 686894846 813382416 19025272 665924575 895914123 941356149 314941506 705392065 520666158 754854335 13593769 793252727 317349745 346849544 363582706 857329062 350465431 777473142 760059804 991047055 974542985 992383762 397522082 899546547 650936411 796090716 431219212 991841792 759616097 811623807 879901508 919029067 243530044 443248140 415153200 516366530 878168694 901371157 583074231 915873932 393621541 769830695 331704188 669856007 487372804 770963388 63866438 284860600 741656618 973401253 463310720 884049858 310460001 410932488 907329168 962298679 789009751 841388860 174546335 233626003 854693212 891216925 530233177 972773671 879680070 956151368 491560520 794697767 261183513 794066282 559972090 950995243 521335637 614909732 294482079 646840857 425177034 636100420 553490934 744043672 692820103 807728926 54623278 740836875 888186214 959455381 665557226 934021110 672628338 982950556 178625279 610661387 290081064 614681641 723230051 847268419 812604374 821503887 684332635 687233692 109894657 871063945 426455698 662618847 77695341 825079486 766129239 850088505 460375799 524011859 950373099 973749210 30104991 557872606 880846432 909036220 518843709 739085289 649874353 661079493 722698651 809556176 174985802 438303495 37880230 758079471 339031136 909363934 846188972 959321540 61946636 998770444 453090498 828943214 925503986 995630904 960473531 981955108 503806490 893484672 943334556 947734258 220844844 670150507 350621196 871199771 942336175 956397900 920666899 984092869 614999995 956993200 776944860 821059397 660711879 842870532 214821508 566901272 373591929 777715990 789072172 969836523 622715449 779475678 440504450 868743572 534952700 707912247 292453203 634852357 769394901 973700046 197171893 381866011 542605351 556598817 281795030 820318847 250814424 477359524 302436382 573546183 617193061 974215489 730374896 972297681 268775122 738089146 212208319 382385073 310767659 752822210 406028459 995002923 133639168 932294213 203508992 512627621 169769719 848474089 680719796 951873379 573834629 972685475 53883430 790760607 180997364 608040044 951501449 974500488 826084514 910723669 637274273 783587834 952574238 960116601 241405384 880278045 595650389 819070337 902185593 947706085 676804547 916949222 80762959 332198071 144754198 296372784 536893265 692599988 913037901 962884944 664092248 877255576 24734512 685771285 312425300 923646770 880031146 972836121 385219083 997469746 149439935 544557002 619676479 837482776 299418577 407997949 42126248 435493292 672768051 903232336 298252506 931543090 369137766 968436404 893750127 996834416 280416639 912674501 107538843 837547187 133909892 231695958 747385718 777128983 244464274 904186885 211884782 372129361 247826496 562444427 534297425 865818625 591161337 984804758 634240523 722805334 620715652 903549568 27413531 343195381 688248301 961760490 938676933 995510144 267508580 786571568 76746636 294316175 326957495 964971977 311483805 984562873 550459333 959970398 900061845 975687397 466686297 782746411 973816799 983334182 889168662 925632410 201543405 957268892 122113277 684634413 369632778 439944446 779075638 816274906 275218998 495844790 652895163 837311535 719632493 745507741 316443646 867610290 254954540 441850027 346246974 392005946 416281903 602526673 830685928 883027589 800093823 949354756 12342616 121304215 895851743 971563039 8927998 827434990 254880328 621564049 466209681 505412212 232844112 302923882 658381897 989287477 320881489 532216658 181484687 881201032 381619131 812595479 845492896 875568701 324455618 690069709 621458479 927068923 176442201 427469731 999789144 999912690 619798955 865203742 292017838 920941626 188226262 648084014 345121505 486854147 815632604 857719116 178636900 598445951 364436491 986633165 768891562 781700609 395094725 941865770 988593166 988939038 933684342 973049178 73844543 345883032 992023198 998586023 449287254 540984951 345844912 808823193 317836070 721184954 791373225 860692293 911083741 988256431 600017069 618089405 454799024 571411648 140668209 326456961 5493941 692307898 356890048 378415557 910809783 961898440 736802036 847091389 184547346 217664055 467265579 479854932 530719782 809742122 674046429 765992145 249275726 523640812 625075360 811484570 193383002 756387019 176302453 774214174 468399568 503628942 253357900 329322737 724958759 890998880 390451607 760228701 122675005 461382225 149023497 407300304 498452681 579103136 684519936 987107134 412239744 893626035 51519640 95277299 700850207 994358923 520095443 971428845 217002883 245796831 503696642 613127108 231979538 352097129 579095051 962210202 605356965 964006997 229745215 594275568 364821902 368468100 785148994 827815064 753816324 807038084 682974038 783623752 82241588 593164903 890964007 945055580 124812828 597493264 420403048 866580816 961281735 987248104 287406576 808198757 460658317 479353318 175423105 832139666 535226503 962445993 110685177 564116790 565925952 951599067 94257121 443462529 166858618 880979381 895170788 914786118 110695153 322424583 948599326 996445187 130455461 768038791 143461957 399370067 558875030 791047306 653548993 981267945 978730041 993633232 741130644 918510931 309991003 712514783 964561505 973971795 926850311 932642738 943020132 963784289 979162852 983565257 586772217 761843668 175244695 471067572 731240700 731269686 939207484 990235071 44472710 856546195 369999806 702373890 894638820 959974870 128318713 838117946 833136163 938753890 568793510 873402394 159334178 161526859 392538570 747474285 944327593 952464925 73061136 157776851 612225450 987333393 545107918 561477212 24985807 199802343 567789275 980405823 939490469 991601096 901608945 980512874 587589174 713275206 230736558 261639376 884333457 941876949 829692778 977997109 645362796 716850325 487242885 610415486 857218908 911483806 978484940 997238171 364232320 693264753 630719736 690368372 325537880 698818840 132250790 410055154 676191918 695524390 952414368 976260348 339200170 531235077 164039024 237895399 855583397 876295973 757304894 878168264 458333964 661778276 532699223 905990194 491998429 693384663 701524476 851464499 186520472 489803423 228713975 570188963 825292449 900083653 34362477 221172699 304611830 649811270 153424954 494250444 298045601 687093593 959783191 990799167 813862476 891805827 245167841 297436629 797602950 995829314 715492169 840800421 58803842 713661461 819861390 842688113 44581407 781251925 443440716 946609685 648346905 770509959 346266040 545365807 693168894 863237024 557662198 650601468 976866146 999417814 662508472 975687216 641337301 705342019 50089755 298410666 894860250 926682207 697272588 853040930 172602989 498213398 224117876 374871473 201475896 619681814 64083436 906739071 85955824 888257839 151613973 848193163 696619495 941418705 521602972 701044572 613741889 924956615 647388681 861169192 705212882 740294935 880355841 916593091 504988493 514255139 786022322 963456183 475719987 978765362 189322919 462116933 101896807 770949431 469909767 491307317 716514134 983044084 412747613 767321108 812373804 915822231 120725663 912820963 717163724 762944758 478915930 671107169 318564063 844435938 164533421 378896484 220078565 564826685 522208407 668005912 295721997 448020954 924941640 957058768 292392580 710690036 712784075 964448471 407769360 713926767 932527776 939791934 148194627 200947892 375039067 977654413 223189801 299009584 27130736 479071882 103305657 945680632 828289857 918893918 948138403 974015248 7574949 222703683 36215265 152099295 414287442 633923002 789404738 806216533 558892525 606364885 685434939 845623428 873059051 993174598 729803387 732300508 998732428 998871256 553778028 928216764 442535431 442691584 317188856 702110543 286523886 559454659 256537633 579952019 596441081 728304446 772694572 897819986 187311483 251406579 543594107 842499948 698423249 844952578 563866758 934149826 212625428 495368863 82260064 939343111 704748750 737770700 864095280 926821160 508277057 744078986 687994068 813849815 249859873 860843091 273893093 476772009 390415297 954075428 366868284 519680772 784077095 820264457 316254370 423715918 783047003 786994453 404774191 908524225 793547678 985217078 996778666 999800521 390146932 870284868 595918563 863249911 800336248 966211521 411023267 948323811 168991497 451077478 321120864 893405426 348602623 831010146 916549118 988155241 252192718 694026365 625975388 781057989 270149954 394236184 663803445 962011395 589030451 648641417 98138419 122684762 680598728 958026004 239144493 967354142 442154564 992130120 114937327 626257133 553195292 697685638 819600158 848537427 659158338 758388087 933452805 942051218 177558915 790581810 120707946 859255067 347237034 720730532 228431353 591541652 124408008 455120140 187334581 948921187 35354967 830910613 110742063 250057733 985339178 987698018 472473212 785264840 494614927 717273379 531680778 700206159 753557120 765683667 165720652 236075725 640840217 929131571 726747736 784483430 579102958 686584335 620569415 697099198 683652919 745162275 899412128 972271446 791820973 971758798 479070642 936483832 304893178 762628124 602849879 745690024 998777679 999037180 361578256 643016873 770177407 828548973 466131428 525767767 850464960 863086605 634504482 801513432 68172033 527388414 704816053 880186973 706237528 897411590 494571436 974002658 337000456 684613829 123019276 433615013 891314439 994092844 118431788 153050085 651725947 818788254 630998183 684053783 438028478 838091477 841750627 842867716 794004802 910766748 204745451 225209816 315306639 497777807 947178153 963281824 310983614 673331793 593856596 992049257 55560051 632587917 381815979 972930758 437800600 785139228 999906837 999950933 389676187 722784603 718829905 963731090 613341534 953588568 254202564 720941555 286763963 568310307 200897846 627526412 283712464 816056159 915434255 954182903 127283568 906659102 554490986 854341768 945063437 990950502 551324080 892922007 313365112 669209353 515716204 526212951 106913612 357330306 258463065 440619343 791445484 953326199 169170110 650977286 369072148 643627684 542311380 903198047 290945330 991292635 925371837 952532674 310716793 721270223 884053265 929451813 784388121 982338722 203689137 543173481 504489947 801662344 538148520 729998307 993134551 997601525 335708683 338452664 582891530 801672321 781887180 798970421 792908173 815065174 677735054 898288879 281119750 756973457 298463241 299529125 520156308 631110101 463324300 742536005 239202432 941752323 955160988 967146964 720706427 770465136 620520842 820052334 59202532 633413468 241599700 879946699 538837373 808793547 440962659 840578587 272277712 457510741 182159189 443376990 397739498 641258804 604634120 779084854 517628099 745928054 834392472 865083286 876354066 899703570 794638390 925636160 222761685 650258648 732217295 970158527 858688704 912748445 493647390 948011649 126930543 255319893 10755740 58425006 792716850 946108414 186172498 961072002 36994864 157903487 252553461 814560574 28390234 147106331 347210876 933241348 98854722 190474479 613698671 850362452 457879735 891497678 763969782 989137358 876992491 890226256 319148898 888760904 929691898 967391093 921103361 990972561 422823874 494702357 690612280 982685291 90035548 498119698 848833194 969816473 36034087 576073336 272912819 810814347 450929952 965855933 759799085 972661864 637822201 871764752 752584391 951252572 109436976 808951916 471756443 897510307 262479531 295256967 159054408 942041906 248611770 289004439 497947850 848839530 51203473 985151403 360967745 720077650 512745515 860886842 880737394 938937270 898531066 989616076 886065023 982817132 319872126 860460252 714286168 940048968 378763229 452079059 558975158 735501922 49997460 759861829 489942210 571749507 522753263 527706815 318836485 912771357 580987 615286202 529702357 916654764 200291152 731951151 63774616 489212978 61692338 843919204 330731442 411763044 552095034 998286674 432142915 731401799 461297357 799457145 493222878 680848676 665841032 680956520 25401821 771613331 300142310 547455969 693825372 967672077 174191635 716045003 634437841 924312581 757571554 910431074 217276112 477642836 597934463 851082074 257754392 702902179 999856610 999996389 169537480 983613954 611298682 763187113 131524142 475462116 829758155 852967583 765934015 919405816 110574608 115966610 500113614 504313407 29377144 202940492 490242368 642010500 62256724 279308488 620345268 747193549 984111441 987094924 984058663 997472826 192335230 271893499 52918244 862544357 500706275 721308129 818890202 851000982 626338121 806660197 253095697 393491385 649540147 706941750 702458641 787397756 110594777 781198376 352472005 389796530 987989823 997066942 751176237 841183686 21913251 337828949 879164593 967073638 281605373 939080818 426795273 941390059 510006042 698433158 112792223 613143554 524432020 947330875 963076791 995944949 961489784 997688719 820784379 958047992 183394407 990688456 707737136 824071320 342209961 491037591 511721880 560366179 330674179 951955012 730228756 940435938 84279463 159891722 704068020 805867029 998926034 999916208 320862419 620210634 193349469 688528304 283811290 356032501 624695542 912676551 9320784 737165608 899263179 911395047 419624054 423319315 374561630 867797446 824680996 897418852 349998843 526983881 417954185 498794849 548937817 645796916 144983458 718627506 874162584 970387497 99520210 977231712 10159053 587531741 344285614 483717319 157464036 699907578 105967329 464449275 117336198 551239530 83476733 889292220 133748948 211497706 905237097 930399825 772634676 825547627 832754590 968849492 7435391 353509809 721961532 744727637 34548710 580016810 399578737 859220821 280789323 459400654 947026493 956196262 696787157 945993791 88160146 894686265 333199148 391900497 944792773 993760267 692074137 805740682 156463261 564707746 127465721 963755928 525134189 775152225 33780957 457468323 733026398 970208734 740444444 977352161 601473007 767288386 774714391 783871626 652856515 791969402 394283858 458722195 558717858 699636701 344630365 350160971 509687195 766631414 937508403 964052628 778322925 832156212 730261939 990707368 434378228 669142308 47508740 190514428 403436164 553816981 364598965 566621023 932129613 957315926 912477836 990005097 745986304 790662793 616637599 772633641 824151518 896443860 5146520 444931840 235094800 846753186 347436265 787656638 334894314 629809703 784811169 835683619 12589805 984519922 493804515 909409450 235281760 843393110 373902425 777606873 371879071 939732588 860979628 877018814 726676128 865908294 475645770 614399130 922755612 932577110 178787316 282460252 162196445 963386618 431667391 651895307 935994014 940447839 628564407 981539303 194383136 241622284 201217681 512299031 987358335 999464325 55677899 945214555 329435889 541325649 385091345 837477883 367289866 946646705 340162316 649744426 712958083 758780595 455581697 734302621 745522778 925959800 150818372 787073975 608301395 694699559 318530125 844542477 452471960 567033073 944811832 961638843 202277543 777800977 319421651 573668303 721623634 832650238 265237477 612733388 538282154 724027347 234958896 967296146 222146754 243890585 497540948 615155042 680490524 939292212 754984161 799325304 760891783 957507667 997920121 999895441 478581697 832159940 433187727 788252580 143836967 831906833 797715313 940602291 934163144 955134929 961132170 966272870 515087868 805177086 916080271 917899438 20365956 646932688 392811183 564278508 10092822 879509136 121818595 781253608 368011946 776216491 740798757 868041800 710299036 804173965 752138473 939677372 252164184 617693494 278251685 615011597 959774062 969234593 122124793 328768368 39994804 759451998 752687410 940009251 975933139 994600549 588423252 916677588 484661836 910363125 359145328 710091000 274609928 369270234 871952509 967121068 994384100 995648095 745271880 902584010 483959330 746649368 61637925 541011442 160031688 678558842 567403279 834889256 418786565 744283549 965864986 995173405 173633840 302096896 69825275 939031400 795686096 930689995 388485907 908436024 808932331 935948374 78449357 637214503 113102010 460585614 211063307 222852315 869680820 960754681 664596029 887433894 458624487 625713432 369922679 412844987 969783625 997963747 236288151 805953797 525018854 789903201 740875011 901166079 701559224 753965008 268303304 830222854 114854919 925587354 852905139 921977514 771171242 870051322 460636426 907964443 585601612 995617476 71905012 413641072 385842766 952110450 811654366 849202667 615566786 839040044 525212340 796427497 909331085 913592697 762198865 845732341 581690066 746874957 956381978 970394875 258747218 646724142 555813158 697649075 438161157 674248992 73341280 724914161 376065915 622631581 332203934 607819692 46417679 852041379 963484581 977087645 876210 138907678 129207256 453661758 355014906 762224309 539219160 905525790 369016444 804086181 909823746 909966543 96552213 596245018 40400473 125842781 831422015 999629104 959097897 960641458 253038738 759022229 124049740 193329988 958196537 965774446 460373179 610788216 183190753 792376765 679469892 924625633 659631613 957277824 702358752 947411995 653379592 972721609 900133870 922175014 712386190 819092896 389243011 758294595 708776388 803033287 86750910 546098440 889006070 993439311 86096848 826546470 582224279 658975403 883500940 959096706 480082854 558585103 714889181 778481891 751282642 796901668 330857439 857798190 538561224 941886761 829559291 941437330 370399934 797424319 598035551 698365902 762853949 823719087 175383861 386860414 64007192 910927663 912148786 982348315 803202158 835701358 688138885 732003451 303707820 387696402 413764 361571167 591910515 998186534 167358690 467462560 147936975 206717291 863789586 965718592 738263842 850168934 517252984 942994859 45768461 65373518 966062848 999043254 61224687 619079499 370754237 733719627 914793670 995899644 518967859 596529701 574098586 776158344 741704745 821431725 724986479 825572619 627255912 655623420 642524227 732829132 772539223 834097048 383922603 815693612 100040855 384559313 929711617 981434520 997226730 999581276 736788931 816331301 403364001 553193297 919717700 992400551 828433001 992037611 148314589 798049258 234828070 328383546 88759445 871765267 672146609 915953329 18571705 441509144 48286861 515056070 75100081 351659043 470440833 696893145 912314317 913748086 617737050 747805833 621173634 700370507 349539920 421913601 455239016 899565174 897115947 928389004 418367894 758872530 638321937 943472780 860815375 906525555 219998759 825245067 745574172 748995088 540022818 758171195 907536206 963098714 91479472 505706435 319707046 351514530 265968388 424339581 607946550 995075264 445500448 474910590 585840513 862570924 225088122 383196059 316761063 865314716 421451712 500708621 131275333 569548144 19586607 426915379 68185589 922413613 902640818 912059516 949396326 962483470 662766788 882548680 616040180 727649558 471800494 809742639 899591109 916946358 256400352 723020339 313443533 407657311 144825581 611532274 988088814 997248101 106193981 239010505 287511253 601776809 467925316 644805297 567827841 630885205 192167416 952397777 805586140 855674864 782155156 848934736 173677499 686418716 695186814 863832079 50079034 645464850 423284716 845345996 554822959 769208520 835619928 910473786 783757301 985554799 409318701 447466890 426523509 767580627 510847863 655874271 312430009 679232041 559492946 620369621 942010555 961977683 330048608 955515078 416005960 990072460 773521384 837082784 984463153 993120129 797628364 851975570 900465748 953558403 31653586 761763639 590828141 864465078 823582506 852855124 293629650 523354220 830883386 952000563 941017844 967867857 21434346 991006596 761833232 919760405 718472917 827550620 794046345 905369521 125011223 173938197 105481671 321008821 467292145 957497754 745420488 848864880 756473861 968245290 879702054 947056611 22491155 152386445 32177448 509815944 672974977 925784753 767996700 973063422 867990442 995572028 548672327 816216229 344916112 641294155 38835882 742998075 161546525 414750785 827948150 870210381 237556881 552256661 518129240 857008164 444332391 635686949 323870990 556298694 720895371 949608425 622941413 963285027 249931600 263983781 364304052 830896139 80653102 273351344 24535811 192761711 68099240 177438972 120742369 610579788 86001338 475358995 186653367 768620850 844040991 964476626 355351152 599926854 517560165 972291420 876141838 983175067 376190938 859345341 560362128 901469907 66276956 327765242 643439474 907126717 619562445 826051274 724647063 775236319 352822406 969991549 664720555 951641704 263730710 989117147 665682313 727319313 734615291 783410939 403347320 455831327 939985382 964956197 527398941 958408169 3915128 559747876 711559643 721733873 505961383 622905791 32366663 930043501 361096621 846773597 885685713 947093098 156519367 991155799 323956944 547641015 949934162 995851844 252667960 825916693 890990278 950026155 894269313 941677436 446365117 471538392 31266385 188898459 414744409 497427197 269544551 363884097 728494228 814925547 629391461 722377368 543059891 889847752 389188272 685190839 618366298 991704919 919821187 954112008 80980602 837043439 305716091 919974505 876948997 921792207 223560238 862261683 484997315 915694710 436997696 790443449 249624985 836531388 311550681 609010837 600977902 996524828 141788649 821702824 333975998 510714985 44187326 502074601 894805469 963033170 653541951 832906780 498745737 960363180 457273779 936493643 28152404 196617559 801387779 964701339 705924448 947944099 477551475 633286506 966073782 968545616 32923772 955368924 518941019 698878854 812801346 900077087 818574477 917648696 248410484 765562875 542590827 651730750 23104390 933248840 117627803 895721621 568998858 675935945 278462042 826577837 764720529 986046507 930508959 982677048 649067312 802325915 721086023 932559404 903706480 919718272 497567703 540042840 433275338 845901377 111774689 341056598 955702741 970099301 851957202 953539932 182239083 626260468 816891797 998679354 671372424 783677018 3890244 982583134 840148349 910329780 669262675 684285670 305237731 721314298 983031756 984134236 611931604 669802254 872298605 960075444 928690400 979842015 808592696 846301694 356692788 678203402 560111260 705945865 825570528 999861173 321675950 354794936 802091946 932553096 295595957 377623179 531518527 805144328 388642538 614599648 703676542 759576871 217978816 660414841 868283909 917234612 179224736 241840832 897708080 908866699 374931750 600732402 174384711 520288314 213508638 385257447 836628755 981928880 291354922 712358474 978781490 979892323 406686503 694465926 392421737 478518983 573186411 858527120 792420008 984016486 802339713 855792175 622781950 732452961 372166523 413521983 80366957 924540892 414762816 906675549 552076844 585221403 16631793 673741074 785061677 837666963 198775869 402330198 299858480 549479403 439278042 764597578 821234985 841557263 272174737 528373625 621646744 744127352 773194051 782155639 235426288 552175623 968272757 988994465 256552112 521952735 70256721 545870831 941412004 952721260 501440328 816540161 532977338 851163384 710416186 783249297 529567322 549763865 36803373 923906446 459285278 870911857 676831621 894539500 153266712 359721484 576428379 576704594 36629269 118872047 751116053 961291657 576553683 945792434 434846968 495129302 46876089 319687578 926345047 984939780 166674082 625546134 28566958 531526723 780542393 832688504 30453054 350886454 685710144 842184078 662076271 982793078 285913505 758216613 844327498 913300489 283170626 434174076 180985305 628213351 270577967 611447336 650444742 657180716 532747034 997531048 839904226 871120098 532157338 636481568 494282999 947999887 178174404 615704913 609763187 871935412 527324062 693125816 917312451 919136462 928442569 953741131 502797082 771203549 915250203 962132133 946713679 961533821 260541459 265294529 308632937 392902038 34538957 230908363 427378719 848548535 515070551 689784468 392040060 717572970 722332455 737623702 994870139 997758511 816505583 858686545 365082195 828189679 947644798 992766839 184091108 407393464 611810624 639132039 651736014 982319898 973469389 989841520 36311144 220088421 250433046 627207669 396384520 947085945 836675964 968606229 495558269 856094076 99895417 619332219 601104681 944124070 851237847 926633136 351582513 357296364 142597129 475848475 194060651 736464755 330115905 782919236 736776063 848545643 14115046 622216702 716157700 889647581 915887087 970897347 161838815 578762792 715052909 862271619 33820748 780112451 370087122 459673115 692857333 960023697 363610088 590384450 190935045 396176062 910563595 942172494 661888584 825326262 739740692 763014910 837248850 959469449 130255978 842294633 787175690 792498633 425097700 518682020 689328530 939749554 493425763 562053757 462546493 521683553 847608452 940439282 336982870 781668951 943014567 946974058 351142046 398056631 447624155 531297515 53796191 114518576 266809182 749731227 997856687 998887891 691432521 752722527 151481340 254708757 337969461 811620793 338763060 720619216 477124934 657120955 766257942 821854500 361790141 994569244 832358634 989854890 568316838 993804558 301381490 982203229 336410795 735905621 379177018 676978845 885003803 904760911 83827272 424423000 288003043 865555399 423138827 792348917 986162213 990318535 784425897 842104315 856980942 954025823 331356434 453155425 822709053 953722082 296620782 640308420 415322888 668216760 383432921 804018988 765446205 782444101 654165516 841735754 146038441 579143032 335512545 725396046 592979111 922336883 776499710 862725377 932145013 953543209 225687889 260534499 775636672 824108230 735320720 888345936 795318257 944811216 77633356 799485226 262037309 278459317 106665412 879532471 299069490 737387178 482967289 798492100 205981380 897148184 590752850 957720509 723761892 899259335 769887166 838004167 399910438 657216856 765353950 778545965 956559116 973436520 490960845 942090315 893831586 980741109 295824025 586040059 844111050 875914874 763500761 862227038 318807355 668095492 387097021 797636469 309157072 498744906 938010412 991745359 624197151 751626777 891311829 955049406 283342651 534560625 80797241 257824472 807636788 916851055 90031149 567029099 244251669 677931665 288671342 941867151 634132616 912459922 73126088 373361406 372147473 684079772 633802114 705123811 198337534 715216911 79383415 830557859 367362372 478785619 891496500 990578262 924453182 984867420 255482405 580392818 108985037 431865716 179635362 520601409 819843718 840633890 335382339 922299580 254590408 693947124 499979476 707749791 598980065 686814891 856297722 996141267 513232399 943506221 589498080 600756269 160156980 870812337 308876747 895964350 497825298 740411251 796499067 888775893 559124017 895136340 285069967 822839409 283838030 996134507 262925418 290752116 884128445 922917553 497012237 637088093 668496742 683360526 791397915 805714918 853773212 877300805 75656032 946345605 989646072 999833516 889450621 962617556 87304918 213948114 236791353 609169548 97397954 980505278 589922635 912234607 382656336 584821245 996732496 998144379 275148479 992948307 770982990 921757988 326583642 821750248 390250518 824949678 122928277 639425095 724138886 814840660 232993898 958143186 490370427 706644056 111208817 245814235 31403712 885834885 913311543 951473058 606053837 711095762 987801172 990254735 580534956 630876573 140052948 358283068 237489579 961697848 773868524 942671810 462405757 705872583 162190164 920752417 886819024 905992747 251372109 956524219 5095638 775139394 842847987 869381970 568956087 721244994 854888007 872946450 149190368 459758909 494997993 535895858 645969195 660724756 62249989 794993241 553421739 646312877 356216883 871058691 30872839 744156760 714909645 742507284 163427192 668323205 506166557 849516745 829646159 943110507 429370296 539932790 351579660 368716788 555301384 592978576 870210500 974327245 556553099 624678013 704069364 974282846 306877319 655219967 525173253 828806502 282780160 582092202 574363616 691860428 539547138 985095125 161114013 913018843 637138998 960302659 834369635 958028200 643713759 802782343 318944982 478373936 330577422 968410631 3142423 38378152 424186106 991543508 768338167 774936504 342238070 489829591 836075368 997733225 69346882 751926001 368421879 790904356 332911801 715322900 524590430 704472954 702960443 720778291 748031713 769473065 45030526 790459038 366562384 454743666 880005770 886910115 634097960 725130808 962749961 974755051 209414483 935668647 298593208 370034722 586216849 655781706 342855376 758018820 50694658 735022319 268012877 929759575 858069432 992312841 533579289 824774227 335857066 640175551 44008797 311712353 485018332 940137349 930996892 947566170 481933260 549006782 907134278 922017241 700302851 959684822 903393919 960604964 278865015 622492706 929919820 965659213 991915196 992209965 116049315 670357292 832206595 853488311 803146013 874981394 136606722 922226809 617935709 977783640 759035059 938136408 729184601 765962877 752381928 920786892 104238607 456465789 185864407 979086736 986087201 996776877 605827897 764829865 126749022 526681966 77033480 729063440 364081607 930837735 158746919 430118636 453333654 905124600 205695000 669222257 315504354 971968874 990933132 998242733 360119403 666176932 52178509 83029350 412319100 506878289 108649566 481747271 418483303 853596410 68906010 75736326 477796129 621124616 520739579 565556593 166784807 504087410 721253258 973047452 605525311 784327456 784764074 788335953 47605651 873383801 875366445 942652862 258630980 731373864 99307885 844086183 265367545 703835498 716887463 936725592 977217558 987981058 306797037 454163058 611708296 761327037 924678518 943632385 540273914 936918849 616456256 763066595 113502774 754310542 587029116 591836330 988073705 994322692 148341961 580940060 725695913 997035884 698913058 756897455 193456520 212289335 350699205 844749434 600276955 789582767 91261452 450779645 920910233 964829548 566944702 684605855 765479865 967951733 232001457 280213323 969988539 994523783 834176619 909072213 36169253 733889418 872803218 887365635 220530414 319900767 313324241 978305823 646711452 789366933 426217903 569639796 347500594 871329402 733406610 916196056 228703910 734679945 487336476 797304612 726922827 750370457 218150308 629933428 208913166 683553068 878518069 996519878 63832125 807280616 66321816 525133747 92035196 96747576 129153544 537886058 223322469 929110510 296599773 999435421 195600713 481816910 182559543 242537244 77170385 929914397 351096502 726677761 591030072 725896925 902036588 942643130 278968434 920478716 736271174 877943083 941634858 986777238 548723085 737553752 297059531 565921517 514992108 675181637 235066228 983629745 440188368 766970458 154496667 846875074 586841188 936355006 422760008 669150356 199926876 249593125 894327000 965972869 453954524 695425731 938200353 941582160 671873965 894566221 649643981 693252101 950816519 994762605 854341180 932796833 91600682 290718711 768517841 927631219 769110612 864873894 14882259 138557991 151684217 470124219 510528559 687583353 81777496 792413446 61384847 755267359 620425166 701207109 189344952 582854304 521054681 560098223 387042097 514734919 328007263 851148027 244712437 256015005 863827169 918743940 716130587 943101498 809139577 911516599 427459339 530931013 336172959 943796142 40208881 759001925 959264623 987032356 929271394 975407438 851983462 900617830 370053147 701355805 843478330 964202729 946305878 996193816 582288821 733938179 283792510 632469118 127687487 590245025 857529671 935309737 297493289 545875821 116334013 377935754 309619586 753167513 589637618 966477488 228951922 539034348 724582901 901402510 572599486 695568829 944164488 981112291 158567030 741964265 70601661 949616299 31964556 141317474 686375755 796024220 301422113 871778670 728256120 920643476 407887025 923814203 160339442 787407797 477916141 519484425 203595569 909340058 915415673 945187631 662197401 955230969 29947544 202282968 866089995 918109720 331656482 913141143 555967426 909982484 996580655 999285062 496523137 726565739 626215469 934849574 630568319 775910062 319746078 948571999 414140146 595552390 382913499 719647688 996835019 998038071 706330002 866092025 733796542 979421322 342934595 965593453 549956931 749361489 856079171 921151974 457032087 690914362 177075295 954947412 287375825 951168937 516395513 878291820 700360921 968866653 541573036 859479855 5288334 829797635 184815836 959309872 5774703 69036613 911364397 976691306 245993414 767189970 315213892 386855602 847870662 886770364 746067029 773172211 97776423 662887679 632591898 896721458 98520550 503477594 297754213 711220255 676480007 899302428 143601538 642388368 244881576 391438126 203273022 648876161 659282242 711904812 514013045 973531775 33670050 670193061 680851870 770344336 875558186 889711263 258778573 886440394 210062410 839061325 629472549 652005488 199128225 772886185 846887196 857652002 245473376 675178997 693172873 873986051 636533643 967107185 810416351 914302442 16025526 656687390 714163776 742612113 841276905 851606823 218215010 719142123 78982486 335513720 232306181 287890156 967945212 972824495 614124585 980944728 296034525 805027057 913463727 996799850 391428142 739241592 480375164 686286474 514106435 525276505 565908300 706792139 792162718 961206760 82580932 371488904 459334385 605754691 668981424 860564514 824712417 997389032 806845362 974647715 648895340 911536041 474487320 935901612 10976400 249180516 544223026 606863059 764770448 774432033 722645327 736027080 962811395 983600995 679665768 717848974 124370757 409738077 806352134 974643008 394539336 865550591 990380221 995391999 54131387 231781892 905209084 975127831 166423730 682227289 508573308 841787544 367304365 708324745 620064848 905870754 549447653 775993833 757267070 907734317 179044996 660986692 797511153 896010860 508688934 597594833 823771525 972357653 375317454 666496940 439915054 446916552 406521623 800299789 55072739 495870463 26393285 69656347 645635172 784085513 505542760 682141912 221393855 978132565 883681547 966319400 708312657 812074453 334293069 860162801 217625116 601119759 490494247 665644877 479239576 910679916 858499313 932059655 981805395 986521259 257849838 840782528 396941006 830718511 731957671 980011496 479338854 756579942 65274833 161650574 339755061 476978237 90346562 494303275 487157254 519361794 660541133 935186653 370168913 718410278 650214452 651531724 158569440 731291382 424434728 469036118 182579201 247891895 654956135 828790675 719414994 754812517 732727071 878923889 51137549 676411718 386530257 653634687 838313648 950544908 934910509 954291939 641018149 911288535 648721167 896557716 326253023 625064742 278060555 579004633 414332964 830999118 379259950 718749349 229062855 516186245 568144788 803492885 511808034 635927014 319886803 828359342 874006059 953652517 17430753 947119734 13051599 82794041 259932778 387956276 660266128 850262069 237534226 257204047 729290424 758236908 714910243 916243232 128336405 599630548 935467408 944069408 176918502 259090931 182611343 656589648 141906219 794221744 649909450 756971798 611687098 950711850 334097948 845399524 717893239 821556810 892139081 909619589 992830896 994229940 159033418 389471233 319328231 629918009 156206971 571705800 669334653 750881611 633379988 985708488 340031538 488050123 521730580 659998868 741364033 980165092 610026808 672112329 148999914 777065834 477634873 925717991 338654453 736588984 921505839 952377994 198355051 681422030 576517801 642066457 901458968 914490143 156623701 486944124 216370494 972693120 35441379 873390196 286834945 569605660 305114280 656816381 478690737 580701850 134097939 420026096 889683481 911395646 426042104 757519044 911835861 988119945 934756654 992129792 11661788 473296502 450804342 823101437 156873160 163049298 324851195 844864742 867564714 911842540 155919170 235408475 713661042 983908081 668945213 708240980 613616331 687421744 656476360 700089210 914019905 929816607 254055351 477919723 951209383 953693715 40808804 574546470 688926498 891749025 83248619 329312693 462881120 978359786 14520025 862273747 298052051 427492951 28004711 443148944 953627956 981557119 177665151 560816469 390813641 406514806 159173545 208915229 360688904 658147012 79782856 973562746 937689267 947674989 996867064 998089067 398567861 550921932 729228011 837384627 885229249 900211020 829633947 842400726 512476257 565433728 620314702 743108665 926044022 980288136 426336943 960996330 822096494 986827175 993580578 994988350 321546898 575363303 377248645 488812180 459201406 849990500 829231172 967037274 493227954 542826849 239090090 294746418 364061888 805197782 331642645 545205006 789593619 944628398 763658148 878730016 589077273 958284573 975680900 997836968 591946601 959396085 399506454 860417826 534052609 591714654 152844203 189416990 182416051 449662197 206846857 653415469 63163823 718873465 924233819 983068027 963679782 988771570 418741805 561326977 185007119 957761761 646556384 910778396 156168345 600143064 715954476 882327092 609173137 647939464 578192953 923725690 892676167 969003810 383230723 958855419 307907833 616950213 246292762 481541255 597787930 929276647 90893813 951913994 502996113 510817047 178408634 260390807 322036782 910319792 340179690 562340986 234942096 881836637 900202143 964413558 182142988 773674282 427857046 806648595 162673463 188975317 31462640 88300415 281512425 638814805 929203228 936057928 500082289 590732409 735710637 865294389 359258299 688687921 815906940 958735691 663501440 875325448 883319296 961308831 712345643 857227794 204975502 617538408 888533398 942382237 996640035 999434069 183164178 855246537 93139498 892633723 268022070 278893587 22561997 283620834 310558597 638671954 590663393 937045346 736269381 957817571 730322190 972680192 457010074 614350532 670481911 723511696 515605993 650475679 918861241 926575972 968275113 978456262 208023808 593607613 127128135 593317334 463466096 684440790 455705536 713025525 932905980 949951951 832266182 840144413 849464507 950621335 70194018 482419600 805218924 938927231 656228971 906187989 325130490 620066149 995868477 998847991 192821459 868942068 893076066 956818826 661741188 860644232 439527927 516770884 576823892 867680378 890086191 912946189 722716031 893588750 300609388 803212251 864181891 933065716 416798995 957179759 667179966 743705090 221289228 294166073 266834929 351947253 843317009 973018023 855242101 957262374 843619516 943446714 959290262 992243245 712122684 726544935 785883628 846659779 655987557 662793077 944193064 986429422 359779057 768255829 254985712 844695588 297047486 535266533 606159938 816985707 510727630 897939599 501446093 748994991 287759761 570459953 571625104 958053864 310904821 484400418 106290840 991344053 805523658 912765282 510431598 857385216 419855714 966624044 203799577 375047779 458382874 945362700 339923423 924260645 368173949 806918941 469597420 737484997 989556012 995841220 620587565 859469012 648367067 936977618 318910119 519879237 519329237 622315496 351670332 456354619 63988183 812911199 549440736 652251204 508358636 980117657 955661219 992707721 29391409 866186332 626401741 932282890 534285671 752831627 209803543 308730507 707858124 721147332 520552095 826787156 841398197 885068683 940044549 995122916 207119200 738310802 98581099 639780769 395229654 471876711 181142017 925317046 157083437 248727404 894178569 904857433 876536296 914682090 687484682 934838842 355772332 820627171 658950098 914218328 16434097 207647557 42263096 953419020 820079657 821874787 13716898 768076391 20687920 466701275 450624994 910962397 73294222 320895552 577313988 600779574 30280710 399002276 64861129 498132287 967053802 999283797 465253879 693736182 933387308 988928407 668678228 872973090 495258033 575936687 126785663 181612170 801051890 984125173 381518797 710112477 536199515 956967288 141996725 229533842 134198278 877319670 248356369 562896960 561911625 791276982 903774205 934928586 456358564 981103322 350795101 606210499 989452940 996668909 47621428 628596901 482659433 932022820 481139543 924279631 752845831 848224124 677784404 860264306 193599142 915964274 982990701 986283368 69046883 183617698 127880127 399386109 807884001 963303974 448616036 490417263 875013959 920538528 519506596 993844928 351524217 490088657 978626748 988256841 798126634 818840885 894943955 981697350 564156126 941098948 204913526 615007545 74942889 656015997 774309485 900873268 303745434 838271254 54520580 563700352 624228361 852359130 910234776 933073644 91592877 610950224 744563638 793863644 321705220 946478645 595791265 660209788 374807946 904439462 690297397 766893140 36089181 933240472 194634101 250658945 635420372 823694002 746380026 916318891 885480543 900222904 562305909 585737469 359780017 588004427 97644860 292459308 258675821 922754964 191369903 262688302 919376967 922179449 965359799 994348757 704680017 875014415 331624662 566935123 467597035 817758710 791402751 874939159 550827801 743152577 437479802 915922729 505779712 769572957 618177562 749061592 954306535 965183356 967136294 994906010 300816192 321642958 919283277 932290141 934921162 951513881 845199574 871712982 309120261 922571549 75102844 630452719 18478922 485894024 547268001 795821754 162565141 169345083 525920035 678855292 653523532 980528707 558324559 894575515 834554248 920297724 240016371 460273436 649914570 838642022 376883188 837651849 404267849 731067807 479350965 917511956 867742333 914002592 179733847 596843592 645028000 707419257 468935774 592872405 828451585 893857711 429789300 743560033 199164169 359554151 902973252 952728087 993594105 997252189 456461762 821428460 732701692 800798131 709736569 771189539 280728769 558662719 833009357 842567869 951296410 981470283 845513740 861027485 210456285 463099119 923446861 946949700 78841319 261494911 205909090 621667406 467875176 486918529 180319631 451657706 529398710 955838675 839047194 972109989 497569544 854333837 722416932 778224051 259161896 311966937 93191152 426205908 923784549 979372545 380566828 411534665 481556125 899766857 792084598 813087778 531072293 539759305 888180267 993891776 192241243 789300627 19192103 299947062 163657638 208282876 655688757 784513969 653699804 943244190 331793848 992732136 444682467 975305654 87915549 671360737 653445731 655532641 952447020 962356188 330400841 382633382 484395995 835438501 208458092 537090399 890907956 906329611 643804792 817836628 903372219 952251259 381478307 696752002 912245561 988287760 372211627 634945810 207684398 466232647 793895378 828350624 19206581 738273828 483430681 628485154 986526321 998545111 732733096 805230002 115166377 235384916 564432738 617407029 59186779 677472794 393707054 852434309 355211163 828095756 401984162 951515595 105991593 401214767 431249352 512468226 270708671 849354464 355672068 852710357 10766527 911912439 399987117 716575924 357529457 531196732 71025587 820492743 455015068 846249328 52786090 485862760 760069731 841076568 30002316 235994510 580390370 729061748 80006419 627979341 256742590 433143121 591664346 806663136 810219452 956875545 910627420 976637608 142135927 968275887 960682056 970450141 261991089 497785101 891609877 922501333 964004410 987571872 715382296 901216565 575458349 730934190 725899738 776275254 49356218 741215079 950152945 960117861 342056103 814375794 297471881 444728392 556755251 937768053 209901006 885230788 822905919 929633534 876133366 897280638 936143230 942910431 195809110 890595128 34150251 532466445 839573059 842513354 183586288 229326608 596568631 883120254 847250216 895175188 971389900 989799426 781539425 870764302 615627699 793979857 169427423 584301486 307636429 352517932 916837832 956215683 28339917 787340438 542108350 947481520 800093708 866899498 735864033 805596261 733984634 810009697 744022388 953888059 886429388 992143803 239476896 570303425 303802383 325938808 786375124 842454467 113185227 999690692 37954385 444140869 283213275 357568988 540347106 868518405 883531540 966716197 595724094 916402856 454206745 882376884 811746567 998887142 441534560 631095419 178318677 982360385 616977999 716975438 424551261 594788797 801261694 942608534 275004237 894745674 213793502 271308788 556862029 617098646 257165452 807590981 996700241 998521872 868447591 869893490 745861873 914174867 960021192 975944756 933067540 989945408 417319331 720928864 930719899 964597510 813303593 820868040 238657997 443202608 590558206 788052168 522403205 767703171 251156452 823771300 172722354 351866668 395408179 627793109 519773044 826188510 480713086 988290987 26604592 418942911 553237562 862431772 572536521 936015561 834610448 961522710 155298616 200059217 525019749 652581694 5790929 887283369 11819553 893549049 379055772 839204035 483023349 640802716 852402285 997573311 258460197 351726871 751743058 962178662 436528610 870891940 727960533 765426753 189594811 370649180 599096766 749036380 136053698 921014462 181720271 626642763 348651681 508601836 5820426 363806725 953317702 970167581 43951172 221680127 195832363 462852621 555114627 684821318 276268126 955440635 312308483 769254966 307378475 514478288 341130087 703825145 525985577 707040963 647447992 991339817 826299509 870277471 33814061 291370586 959604172 982552683 958055023 992337643 778806770 882577706 343203211 941447832 898431596 966214589 315960540 798800865 838282029 881824671 940023653 989361992 581697984 742256104 27098982 824573351 362038585 933704383 358542264 692462205 434106484 998875240 496614248 519641809 454652685 922619326 681948152 845790160 779346411 828682751 288354033 939854732 770499470 922181961 520769086 709708255 579205530 641160026 218635006 460592659 624955204 669795536 710374519 904986193 650747152 707280432 495003324 622622537 354704921 703348299 706436177 808980282 148109343 513010322 939092541 964970709 602724161 911537665 340757483 798975125 561069009 829906135 874939207 925585521 288162370 406455924 353240721 891418553 65398322 836693444 141020593 534485264 902514508 969219917 20147473 375656149 910968890 952317039 996606334 998096616 968572847 991386543 655035979 895684476 308435839 620233701 236122323 679610850 829184030 862369813 89788355 299731015 46832830 556652383 448823183 591018203 857541162 935132113 838336498 950918920 563626040 928156907 521014205 618160385 757222036 863701862 397634832 988080929 492303724 661842531 575721936 599107057 953230257 997035964 304786941 820877241 992464818 992897558 131921603 781112348 422845832 622858930 655350634 707979345 578767131 603480728 813120469 854976810 139211409 688170399 102689697 697228130 921677819 957965905 996439834 997612246 235179523 285287345 110167620 768144446 29746183 933085161 903429406 989875026 604407313 630589110 653476837 928172216 560322227 563120875 720663998 959886723 206423637 458807265 337841036 492284504 910144667 964436788 97749826 740073080 243410376 627071736 188333620 858098095 754509137 950634264 629444583 902030686 14205236 868130855 240226873 757682452 217066239 397810597 206920084 744732246 320925554 405917246 719383943 979251153 878301693 957969847 267728998 510159335 582480787 669907907 218288585 698377965 792277461 949476754 555560924 762849199 468010021 970577340 348021922 372215261 4030935 990091289 143053955 797383625 839693490 967642766 952150412 997835409 671101411 904442178 598353626 908167971 202764901 714550328 98340666 119000648 850531849 878835418 946199162 983675004 904427700 948618301 835887530 927032405 282561901 462208126 848999443 966029026 796768567 966852813 360087885 895578046 227401106 793583247 862741071 986952916 85544952 185579200 329950125 827417169 944151426 969563239 896765159 918844999 105702653 133838578 714341550 982034159 838082755 965277181 772649287 982236321 546570976 682735329 712740470 855159173 32137995 256460458 288365073 336336094 842579299 949744667 460646731 659313397 961751289 970795864 343403545 482812120 933055629 964547728 929366572 958258770 720386548 814931922 294029527 447829137 275382938 381998600 670510139 683199284 685209462 942668125 226199536 920031426 632970841 661177453 644536875 989524134 397402135 605476422 651545577 944390427 252894907 339820060 336235631 499658772 864847698 991060052 885368102 954559900 160669321 958570051 984768418 994899902 151120071 641763886 703887731 940386878 400774209 841506648 338198952 351657450 36640378 552919869 254834872 637278690 582041574 695801526 114804355 384462673 288769107 359205508 809748181 940513521 460128501 677453951 705155428 992952786 430570237 996297604 253184624 306223341 25331075 750421255 630312235 764124810 867812272 938866049 148052863 907112467 388069532 635570904 950058091 981822762 17679102 471296303 699078679 895312950 302973907 531456958 760054858 949922226 542178302 900398531 557866340 961193967 448895074 907935010 251343575 535580247 666723146 760542803 867803744 888582210 138405679 578377363 74359144 822157231 826974680 856091998 239632815 393221292 314304694 682658242 198341161 586372535 374302237 450232822 359276777 713020746 784389230 932921621 579704324 785231491 809022977 945308417 51831402 414493555 188430783 412799645 112917411 692340367 159905986 424283443 199866409 290085036 955103313 975920752 669277611 803673779 628567461 711777756 936280828 986218191 696260932 858051925 513971690 546445078 799439877 841021263 181867716 932590044 543905886 645337186 826129127 871228819 336382857 951556793 679734942 949981828 91621648 402096953 263886110 327818917 781633735 817298751 562495714 859179663 616180286 937501910 371361179 731942891 418510142 749983376 804320495 963027949 649854516 699987577 112327797 165074409 555210496 860273516 314586251 605543119 821106368 850254191 961965422 991552764 312639541 705780384 48097821 137903138 327426126 457402879 729135939 824109545 168682997 564495728 67333289 474497250 949804259 990484504 786443604 935575939 929124113 948776666 295977391 738618774 465138516 736419933 202267855 763091859 339688081 580166156 760015752 805021173 366431963 490828975 21693522 836609589 438680659 508344803 616767218 763645327 625884474 879379289 795982360 859829396 760138295 959493906 78172298 372172097 294445255 366590668 343483080 652278974 890516977 975276193 930925348 974487064 377270272 954169878 682565549 815859052 553875434 831751286 598018547 722623961 507846484 897777345 617061213 689397512 726184434 978101280 206133026 796287005 470018136 633178591 736101122 838914009 156439249 901800193 214546118 448769376 801177235 835730767 381773711 583429759 385677110 933017256 274005711 313556874 616943148 943855586 171403614 454100453 345439538 345607946 421766138 890187027 542469222 777203174 777634299 778637294 277671296 458984189 182274981 930411020 319130479 674224822 692338464 913597942 466172921 627495437 762039152 771904284 268325633 330864250 543558105 993738447 488465213 514249672 404933926 437084236 785956175 990051711 908363014 979677370 365187644 893293367 177636371 467416655 906647045 984223594 560080027 919243653 909056502 963923567 300376987 899149835 123167782 279049763 457139527 767630818 917281090 917368607 255456749 315128137 289648494 877033006 57997661 846639427 845690620 870631909 711534700 844869323 24650479 656194757 114331795 664783130 355296707 992870840 354812009 876567196 172167362 370326076 497216737 536986826 821611064 897250653 14751472 311803707 30098394 391954728 701838414 904281820 712559008 827279722 186039418 912072335 394301954 704258280 119772151 126596263 971625960 978560512 879009240 937937727 938674119 957860226 266041537 781156549 993796542 995739165 123937190 586180004 392089803 728361648 313737363 671806063 347657476 801887627 694140952 873697500 152700502 425551093 195212543 618260250 320494146 330389456 199368723 648985391 541133695 989487499 973713087 980999786 658914145 718231926 768184810 838823615 865263873 947179847 436306960 802314376 885362838 908814928 311088402 653976528 451852208 730448375 621001632 812554506 880400051 956451126 477883643 539458413 230180761 693503089 898637971 960970307 334691401 831028475 180533324 289148910 889781827 919043800 624977574 627228738 481246808 567577514 803684930 883383222 603546788 632126439 319513106 694819181 999355590 999829541 995039447 995806317 412999691 425589341 16412838 572332875 495721542 588613541 915654461 923373256 700267322 885861680 782042378 797533021 406755956 808441131 100500320 255127717 819306021 893218569 863319879 909899867 168666041 625918361 873211231 911637223 267035108 494427819 562329540 885508703 445648649 816167408 649466634 779479855 541928367 993421414 35854630 572159361 112736706 483513514 378341164 832195122 402155085 423897913 435628461 510552448 936245375 946912437 529743179 996827599 864626621 973843845 585105565 613689511 110181407 763002604 648373524 833333939 66264918 104115029 287520454 354269044 753471262 822260599 425372963 909624643 469134055 787009847 330829443 619700856 405100068 916819729 413869759 453788823 279155429 394834485 810133837 838427525 291765861 445420663 998869207 999597249 950563560 950758167 892151799 907504591 94836133 920179099 130649447 534023911 45389047 274070966 228569442 829329999 323503049 986832167 427688723 709870772 392251526 535576557 593926185 833854052 905148123 963242214 925382391 929850582 251881897 933612587 327480971 676980409 772540 582112707 381624465 899390673 616170470 808434579 871545781 933568392 35224155 62676257 406933601 481722579 18135627 897198104 848672458 966057299 77888855 332243444 322713132 688293187 542928221 877353525 687880281 997175655 753175620 898573728 607133351 854202646 194164306 914642815 582323813 940452603 5714936 569637459 389462600 945244501 183629189 680837168 202951158 945468383 801190433 845811765 498557565 847622792 317555747 620661248 95924788 978387494 219580158 643011178 690807760 851633672 368121333 467223437 351054916 492954981 896641900 909055841 225286334 308184276 396203155 928192577 777751059 794037981 746969897 947033923 105231174 692170884 799015683 942815642 474906834 724012474 775676486 937984821 320740029 886044457 722324141 805451117 828312864 909192872 498408062 706327589 693380298 806104654 845085885 879982442 881647638 936472911 938605436 960496989 748001335 918166523 493556545 827085212 117828537 362638941 504821173 831961857 342068674 415511857 322789020 434634372 570421331 893408313 351935642 582434030 920349114 971600822 610112319 806611853 705407169 913166345 831167860 869912137 362924846 560794521 890804359 999318565 876480832 911232837 445835432 567754824 724388441 776488962 67531152 885960742 589968997 880446778 188563904 406145767 242087513 377990927 901166747 997682417 797321922 898687628 538292659 777349397 129556162 819869453 727529438 951087046 223008281 719297863 114197056 990400712 816593616 837558371 399193093 977334547 409823043 422917077 899313369 917280861 912493 862181725 589684908 742274653 440458163 945490681 263625953 284428424 210445248 801041222 917577354 927359745 554239497 934260578 735403683 987910398 423189545 785380141 718904064 760562573 783164926 851404955 609517573 722853562 23830792 450763086 501892724 887492306 352609816 385639414 54017328 637309505 892513530 931350311 2259066 764132035 325795514 392753996 343814818 760986383 528538767 533593880 87673880 201578480 764894840 908242337 80916513 305443758 808474148 886813063 75597102 158762803 222858572 804356502 796926209 894607097 775004407 846761849 191865201 768701792 983333012 993646609 562007613 757343893 361716882 407508586 265423402 956461136 139831485 297554663 369379190 886184428 729761689 738676402 319649635 350565593 229094994 413165818 450901142 930161099 329163330 657321087 703040547 862657804 486821981 994167907 871962046 891755983 797070523 896675294 473867237 767569771 91667220 351033401 603802948 829068688 470570383 858475350 267510229 905354846 990704471 994315657 314181697 453483422 55492426 654638181 348859102 982061972 814837524 934836879 233513141 852689138 87780488 194939223 573479737 930334314 529375672 693249321 307954321 873045927 172581815 687268384 423953807 828652176 641080645 708612266 252309700 883526074 802151602 985496258 71941075 890880610 647871234 675447029 133138160 672398161 222792093 803497435 404869128 571314474 253688636 903895424 466643037 511591381 915463472 990673484 643094483 887887452 11635478 867798351 408076932 572169279 936061788 969873687 915975097 944416187 419723299 933037748 207381926 270916859 187090875 524760239 679139632 922007654 290702358 668790828 455637861 726010938 764164264 859193454 768800664 940842478 492447588 873422247 944757615 988363215 405336198 693357629 846609911 848109719 997207751 999547870 311402379 408449275 89747105 152011618 70797999 255489714 744383320 894603465 368296543 643091987 316754338 441821027 557511693 914677724 999793229 999918625 95546493 247930528 287998679 944781952 992710130 993780312 850200119 868981227 428208287 451958731 862389824 993955513 72955390 687963363 513325265 559568642 725756442 994813795 936982129 959927928 6358766 960439519 483097429 486872232 979393415 997065079 37442796 444433344 106398979 239262866 91878803 808708074 995321040 998003856 847271752 854570401 355259292 536900804 844991447 946340530 669981898 773943656 356307544 829816309 217829873 370737190 177746799 398627365 730901338 774421429 942515808 987379842 105719392 618779987 638664787 762838991 795299692 955728878 220695729 767635744 574607947 698041473 377971661 404330876 972441236 994297935 416007008 736386908 526748794 567193535 259777614 933947267 743053825 986648307 812773199 917046570 984776866 987187231 977697146 982188287 877081877 940027690 183944487 660914562 686652918 729433491 132327687 646512156 943169004 974986368 46325050 765173119 339714258 552802256 432111139 570655585 216716184 621656798 423969741 549349321 739703254 915580956 653772530 834662734 228741750 599352951 260412808 613524482 507912644 529703709 325286425 669796011 706052988 993905809 349616687 479082649 507045771 713331206 363388369 786326770 934722062 964728253 573317374 576671068 883738101 970875195 242313295 507337080 86634152 545033706 607616914 770850897 518699710 645918776 340383150 578575494 77835753 403149453 376292968 674160582 342462052 659513587 808290787 884255875 415300792 745372259 258988485 368447678 211335681 342851003 10295620 138269101 444221702 955272986 60811643 495704755 549767299 669118959 946900051 961763148 15664438 710363203 292126698 456712327 666064894 910153364 316255704 948911854 290130271 990032504 513385294 909857498 362810091 968188737 997177619 999200545 911969712 913827657 521846632 859947484 459127921 536441377 981868327 988040363 691809260 965550892 986121908 992032779 692167638 956359150 775007841 968591343 325294360 658743955 710617455 791238208 302711504 471248052 309417817 757068079 627697294 799340956 70271017 512349282 404334233 893914484 878867440 888315339 401830832 667366594 596388053 806490680 876644993 901069534 507915691 767731610 908416402 940511306 212726369 588648092 367627554 920234054 681847573 851665686 538744823 966564841 541118993 774773962 281551031 735643009 152946109 789882197 241780158 911698114 574543276 637008606 638119609 862518578 722683713 989456187 553911466 555783885 500479393 613781225 277017658 913822721 791558200 815748267 740139525 858910067 494883418 938760584 712523827 772195400 283698123 520444142 98964384 896611833 668634578 718334877 803387403 941701175 517641947 537785935 815073045 938165223 847260871 939136810 90428646 311607039 814628655 840473586 701344867 841140116 339176322 357596472 401323877 888190684 156938816 307693755 297442650 811062302 367181506 619299336 705041915 921411380 838009703 914099793 573557 761796430 302867954 551817283 621260439 838021077 313717025 730262010 161616380 229864722 451762880 911823706 920493797 945136714 643417537 646288378 46461640 486755224 186022310 601217300 953031329 961569571 827978328 919877283 407196841 492407479 875815900 941221494 946328624 984463851 66286413 456226762 201345204 795619915 525316108 740344233 843358269 994309064 128121958 817444522 853622320 866400576 129706883 758645053 492014729 945684666 265843854 404377669 657980575 663465713 278154582 671713630 320027252 515596266 639746084 877686900 169116478 820723649 346791226 598173623 2060475 510794796 388486636 701679477 124365876 895101965 571505675 822215810 702620296 908101555 887122125 999514016 776055846 799240042 313892792 546711759 976509432 995244881 988219820 989024469 81272218 903895045 392850184 618459782 932773265 998374858 674426412 822917587 519125826 634802732 200166805 624171642 827603424 836730356 170097568 971535986 993303595 999816017 731945677 897561334 108700860 305085925 4409138 861670346 628425095 841183813 843056546 885904618 764541445 800975646 878196402 912011291 421736917 777720784 650099895 853321260 44524125 91659748 806428711 972417627 743666254 995000834 204843356 913243151 969330410 999556892 731287517 856170932 120266377 279881951 393238637 815962479 944918780 977218757 575871745 945146785 759686889 815809671 294811277 679775081 905164330 945130777 562242175 574413228 235370933 960309960 235825667 610715538 494844955 927695401 434956209 892420512 719386535 915865639 890226530 995198800 15188799 635215243 627501261 670549342 643498673 823812858 455450074 853610782 688022436 754575310 162402416 687268467 255742832 274308305 944214422 993855786 303555451 704556529 260827814 489358228 89153934 244681660 345116334 607493792 878442743 919012725 345796064 359955382 722930823 933570869 136491815 972661693 707888749 971788184 530756553 896733079 27767655 585596735 425998164 926520334 594242475 815573396 671868310 701592021 448386005 648471489 913303112 936389800 256892537 914418832 99212265 648765030 411309001 492283262 753490241 894301767 689285354 841252067 986296118 994962296 115745325 231098793 591336992 684988882 6184299 13445027 151982220 877766252 329148905 747189696 922034735 976845387 378053152 578552730 715596022 756829436 286563220 601931805 234648500 423504671 389676767 468297182 389189524 829324638 541608477 756180327 814623148 974806126 107838794 990392446 780468236 824515130 838562113 928496879 488382737 531698562 111976244 380496615 312352195 780503066 169217176 633140623 799589316 949506835 151924341 825839294 876553286 950160339 992698265 998898093 582342327 893687275 988696665 994433598 801756207 957838594 32028436 260926372 896486480 956558107 655278933 897596998 697585525 960421716 714166190 734734796 443150050 627779758 889154429 989742638 237890950 628415668 397125953 752513904 770404267 783597168 335751522 625571532 997621131 997852348 920753226 921590554 241215347 543791858 396362209 915767110 768144614 947543524 677882757 958024891 840894721 896437016 541229809 775845224 101775547 670082861 755194821 929968242 528059177 768907258 627719412 937123111 849498042 956875034 146369066 551772754 35435507 396554308 449592403 750192668 668944382 939805042 898867426 945076194 425516028 997332757 625239210 945252567 938333367 983089261 540185547 704578148 310285014 682474045 806879794 903180901 392105235 987750670 503121777 818659095 328730351 909567029 741805708 898941138 778859679 790163363 598495565 990792669 386179478 554728948 486738793 738776094 392013179 776418001 15403614 555506448 727941568 901216639 352636941 790443699 677471692 688795558 201902272 555092229 608044449 807327564 194154950 716959984 665499637 976759470 823585885 962844097 941999366 948020607 939840971 983504576 144578115 245071251 555750969 808027687 114236566 963814625 303408448 455388809 717634511 801924735 415942187 456546076 856701730 940714284 414517606 959178997 440412831 555371871 544624656 926306017 663017926 665240691 10756517 961028506 606013774 748701364 578477033 742776205 332073043 511317965 413442828 527875174 375278414 906165145 503675347 764057607 566809410 716339782 270962157 441950047 556166326 822829343 198894252 611023197 547695991 620674770 326315112 797533084 139156787 275790318 160757811 515839457 779258928 884678452 727982622 882518297 128574728 572060814 455203972 467243011 70314931 206883319 991952124 993249450 189883183 988621103 525789208 625504480 67718732 355283929 708885632 964700155 31253524 219551353 555902562 783781541 859567411 908366599 137453018 592858835 851309717 890006643 62475132 606790352 62510486 501561739 84426947 133011304 933058187 988721691 852053776 908893721 639284009 701126879 335131258 557464637 796351585 966776007 850833133 939039499 946131500 997772042 826534739 894779651 442712968 938661205 979217477 982447191 602534979 664859175 384345818 477443069 20236813 68484385 641718518 941812702 791553721 807956378 329653947 556943417 341135916 643686819 189171834 342423120 261974194 500030386 941098079 987092244 492659556 872335736 485867347 579066506 373516513 963563091 66875981 648331406 218140066 458038313 734756576 997268433 585889890 747318661 440904843 661007173 94294978 538095021 596922265 765004440 788426749 916950929 989205825 990138342 487627930 499444946 681398333 801806179 187315921 478902222 806536566 883228662 52785097 714106468 797536874 839074527 497576795 674815067 348203486 488220491 306861191 758546766 141622231 146127078 632959530 803326897 908491045 996592304 403502292 660694389 885448256 901342602 242005195 422416230 439826391 760704672 413206176 958117308 142335423 995803649 313873211 646722732 570044400 984461436 987953955 996576159 147180304 639855004 679008481 915306758 578478417 701750612 965690498 972235091 217597464 839427813 389746209 517763642 409261254 587014953 284307809 526849731 307769292 658973993 357772399 873470009 577887054 939870701 20045717 729194677 689416083 904659173 941668324 988234247 657662812 814444661 641587817 879673185 721254338 882730316 877187231 968513481 563587302 721990845 949626821 971498549 389162697 798938977 620986627 950864882 66078191 821030690 318179022 498088569 856124409 878637034 969998215 981700264 743269776 994293923 401690110 693817087 687988844 912351615 618856255 672319463 129824902 135075698 909043518 994958153 467822759 796327344 60018473 62994872 495977926 591615389 433807958 719936023 52592736 948090563 454563143 876710380 797728075 798139882 747753683 909283658 284060092 382032616 680034365 756919346 640389363 701967209 83649427 286923651 617684258 874264379 771124578 777346930 964407909 968682381 913842705 929731968 359686882 370040432 114795944 676280808 704572662 849559721 810364812 834570896 641484360 992308512 119657207 504350501 336350247 839426412 290181540 712819061 340220661 867002032 71453636 929544801 224142145 922954524 758489782 855508837 555331486 831555777 139978358 598292044 74914139 951905547 917929890 958769798 280622687 786911266 620176217 903481726 641345038 712392782 113162579 966354293 470849899 814029677 87891356 492264318 722258730 738484228 236018172 276441705 659344513 810896067 186545255 766604729 49804175 327334403 140548826 581302792 535886318 673594096 282042652 857652251 189356414 675142607 979328309 991161047 743488014 770979434 531637732 661208949 294476526 457743319 443510997 598394502 557588733 655174671 705295738 930249860 875172828 971989414 460514301 737228405 28595175 425273401 639860383 727364987 810702324 999937435 832076558 935775872 558870255 737693791 613802118 831451640 545345510 772765982 53439708 727518539 246764851 955840895 284098655 731084476 543406849 852990016 766219647 809522459 696643714 795535500 464090829 928045112 406253724 459812004 456857482 460208607 630799646 773529224 884336899 953171720 479060999 949840254 537126578 855800555 257870116 927073019 194181223 214105246 784981012 972682303 481758297 829341124 824776761 984272939 287665067 632718804 322954433 423259821 828313026 894727314 270941480 730761912 182877775 678375528 775002229 931366442 656411381 984748888 827800879 889257382 383839469 936621793 216398475 275816114 685539575 870708625 71569812 188228346 42602897 392670421 895009548 908674408 824156092 897735163 9202856 579170532 489004805 772387984 973663584 985022298 476391837 960871375 773587608 822065196 209613107 845645949 503440689 551887926 888763763 906426797 397206095 584354778 869817769 953829430 812770256 985282670 110923118 153243936 799007415 839663565 231720236 652169875 985609221 998066659 545468825 655143459 369462294 619893612 971614366 974082592 44522117 586800231 398190734 665913885 778568482 907152535 152316426 549748922 854590348 980348532 699772515 876536518 412829722 765866525 410325301 982042396 971034277 985869548 694608279 938080815 975731808 999066064 652975374 914636124 248249694 567429202 649804425 663971578 815196318 882589982 502805419 607405242 641941234 679753110 513318642 936649854 579213253 819152248 526580719 930873414 338210499 540685937 462954731 605782405 835101698 849390941 869087566 960954322 344098329 666312234 239805315 617575072 284869166 921958121 682873960 892785685 128067945 455092702 786604993 807106807 842989227 850476030 946428206 978361549 519458437 577186565 948102701 970858407 951858366 956992074 438341284 787840914 526934279 882107954 885154000 885914117 794827120 840428282 298593272 516034585 938291557 955027703 155017464 560252524 41693596 910786838 532979403 980398624 547319784 811307324 334585072 524748753 365916700 634903750 437047840 970295356 230836201 770896107 822938256 826462769 596029722 650092454 838654451 972296620 194599844 270217536 772267451 833619169 572825029 595496403 984912499 995801546 462501915 556691816 455959584 613534412 418384128 877471952 451214215 869024975 788966790 891482214 990795335 995174780 736587833 981926149 695368316 872010459 685709002 982661541 835965533 970145066 181718097 950605098 180969436 433169270 42849367 515010813 527810604 618993990 151745423 239151788 419396149 638719461 453888646 531474394 332209150 840578833 717741623 927076702 781866197 928839044 836052219 907447244 204226151 589106857 430013429 769985942 583575508 717862692 470748065 479760987 376250118 645017595 204257679 216023895 399585316 446162872 564582674 697845830 644682496 722315638 641458343 663980353 732188641 968895887 623836192 738367877 106890522 447618425 365200987 655108396 599670865 671857160 992721028 998028496 142768000 863311596 464030643 867658984 581853085 930250313 467851163 967493295 532979945 810168858 393125348 679705935 603460940 683140644 709271034 959695546 781883470 978043852 701730255 859694436 456726800 660298920 687065144 981743361 817585049 996307250 670839636 996856226 293778178 895962361 683453529 708409861 415791332 561944369 583781473 835837576 29552991 730619374 87565241 993517811 244385855 516414009 775726404 948492491 349455055 791583779 360971096 486547167 914723489 924638804 16942053 780544743 397337147 676176657 946104008 974566194 323188073 893195994 924281894 991569129 79038839 749836910 42645889 695362116 217097420 608593777 723475925 927840764 890564049 982957956 252935017 487450178 811379442 861713714 793991727 822683245 591081959 687690950 643871189 684123086 337516680 775982401 995650363 996873265 21163449 190520028 596077599 784610116 216867005 781247161 397352762 832965833 978418385 992082161 76902725 793969741 49014959 225344284 486187580 990537224 374901858 384477890 82031723 198342276 410964162 823973303 972329428 984358403 816212244 902634052 704982772 987354910 782628501 876266133 573964417 673451450 142651322 695918009 991233411 998527010 577329334 742286842 582102121 674980723 895709307 937134762 916806995 968265583 52464806 478490337 190630853 464638213 709338695 790557564 624118272 744038924 784874612 798669318 943007168 977919125 295792305 659407361 976633608 993308496 937402809 967891827 81744859 599971264 908145982 918299263 983223762 987919921 972500486 974542959 272419788 329259053 173770159 375341166 579698794 661220982 907116744 914278281 686317589 945706453 150953519 987344364 164179886 700078466 570097961 581487567 850510113 967081698 911424776 963665680 780286786 827113209 370387964 394358556 290877996 572998795 984687314 996197867 39431973 335289473 849766524 891141111 42457940 282604815 626589492 970196362 298460781 772198144 891729508 984315622 577939844 655114133 526043834 630798292 314466514 893475869 771382445 859071979 578351729 828603266 840579341 988942703 944605500 972108545 875972170 887820869 639405146 782099578 816269642 939828355 385610861 550103684 831424880 872762616 181313502 431765759 54372059 332343641 141705619 909579395 797617279 894163870 176017595 474195008 811736385 947291759 647068410 993274144 687065038 823322626 292747253 308173316 317992042 471829891 916283777 968532804 848368708 972376464 184059249 438661191 593486220 879711681 812823247 974314264 497227860 612252918 635637499 728710365 306270655 822850796 792885321 924240906 822642669 866501957 993561205 997302078 745656705 941522812 867152056 988748846 172294462 866710398 708035588 940075754 356244020 486830850 598208675 606114320 57743638 679876228 425631742 474346721 284967755 693503305 197163509 819061859 271746131 536894154 149618836 394088921 929624011 985279691 972061551 995603723 869874675 881789059 507089329 682501708 652644074 905036277 638927198 810084889 239676071 783283193 77043831 185813487 163269426 827047843 826441149 870165084 956489131 994330564 424863941 575723313 62971191 463678289 835086802 896769480 732118007 789262831 291563271 867499620 869273053 896811454 707161101 959834566 987357566 991885044 562951315 753519275 829871621 901367986 859162382 890587738 508513006 939006454 498023894 779823505 928533079 932112279 591272442 845284193 359073969 971282384 320031913 687738731 186254733 399427051 508861816 614054483 89605672 928409041 172448970 498741423 534254785 621214180 307342676 872402616 482365765 843423262 414607460 482667948 351189480 752664260 939271573 974361726 965275013 986477486 372976412 593020005 147682904 379486927 961153938 980161830 798259032 931450680 908899959 953876623 282979509 521361882 164768807 537500580 66722439 906645459 634472532 800665224 531259684 826266277 803458350 841725934 650136950 926165947 656768787 963309595 53128269 754335689 271131261 743511861 650180244 908211634 973176240 995875163 166046069 694535870 383423239 636264255 652357221 689227273 493096422 674501089 296491329 445984182 515352216 596332166 241858016 521345320 836483726 872962189 750303562 998812643 54293987 388959360 675818339 707590768 920372381 952599530 103107923 888497514 91745682 814667151 778353009 800023147 896828025 898422712 814691015 941178014 429039270 711410894 924745475 927584283 366951099 446668759 859285757 956562287 986736205 993917953 41583729 372519067 623762956 688928926 483369509 556818243 824873960 849669175 952537194 970687572 640554128 860247647 627604661 806155402 701020409 934454941 93511709 206366561 439812887 663996616 698492613 827343518 109295525 858041405 898927000 986451038 879290383 951909598 646667010 979337578 870944369 905388568 422082674 976844788 708371907 900526433 755385663 807394586 510613083 864462050 712648131 996084145 706573948 843095489 547816968 942031617 444292086 776834162 80773303 582576739 69419793 479165721 9551506 412937929 266349944 505546910 341801569 860643913 212939010 782017170 750371610 866834305 181844047 424706899 98280737 299811699 775839443 868130186 242125208 297461065 94809496 688488201 514454968 685248328 233122885 490164852 283944766 555236316 870955220 953955054 582996669 872738258 896074800 970425748 636028828 925004943 101703174 408423435 144033646 151203494 266422207 705431486 946134675 996181775 924869393 937292138 731646845 943987524 738152747 960790066 481589552 983184371 918852915 969272615 712739715 817505081 106678711 189551420 267419871 771460836 906730682 920659417 601405398 933576205 126847794 588459318 626511167 945848083 649691033 899354930 702313439 880951902 666583412 875276063 937361633 948050222 145434684 274807323 897176729 958342899 266495713 492606428 851926545 897321762 543651880 867242612 616970712 651943479 736093013 895984030 901864765 991345151 354418861 685005426 762667823 924740796 908316382 964124860 38983619 946746448 290830540 673974266 99075522 437574278 277829592 469449226 430260061 932463424 467024230 866642519 818850608 904102407 852948293 984911858 702567106 779683408 8585759 697551556 85852568 786075446 884825879 899898532 465831018 634210344 849473629 986624956 819616480 865400892 312732399 660801838 175852043 500181146 850955393 954551784 686058971 726020708 556931708 828147416 45528054 620467455 5830486 520006576 853736227 902008129 389762857 723716396 404269245 500873033 250067849 692726076 298214670 366616962 172236461 730362997 744973286 755487945 566977151 726736392 488805847 690235883 690976944 826945545 993398346 996525527 801411899 858859957 305941870 431792713 328027607 890031332 80015542 287411533 52170389 576867329 875278716 976513939 364165211 551890680 255766275 617556911 918558123 996694994 539686069 600868668 698336458 958401159 624892771 799770440 159244858 891535398 591431773 861912953 258740778 706147095 196752032 250393981 177470855 724834051 808115564 887981977 505916323 906391128 266134756 276434062 578467549 875566506 170022980 434857569 220504561 967688589 557597313 780958095 568374535 750141431 777446963 839245879 901842026 979337717 59901599 788192173 47287317 500467656 706536446 970906804 815195031 976758386 756723178 975007734 824438064 928951626 736198366 796657114 401434666 900452255 682068027 914259285 493895245 643985738 16896306 568442678 959911861 976778881 114982489 513366147 128260086 493200712 728405250 837540164 717760670 892076383 36993836 581529904 89539531 720969361 364012495 739506722 70827653 895256427 117536167 995021248 341618603 346758802 889761923 992730176 734241057 856803767 511724096 620680893 115680004 219592288 749795758 933585008 433243408 562890459 125692159 574137162 595019328 698657897 88578162 250339568 183995199 197122020 143115533 758884392 203813927 581034236 147665487 286295080 29409246 107543361 211305968 954700407 511400992 955468935 901871007 909684413 533980546 662330388 555345142 650954651 603656562 960892503 339610445 709870842 715513359 717864575 420473369 885333991 859839314 922864571 303983745 846906530 509828004 938216451 586671176 987357379 840679809 891652553 187619284 329192681 502887517 587937994 617219369 928497106 424018019 955754474 483285584 936365007 73238161 363499003 349173438 531268777 588748995 593256081 135331776 798741841 863088860 918605151 901095267 920919548 636407740 807456980 523842942 906741299 265458601 944453481 198910234 459158728 369772373 412563357 158289019 651402061 550427482 607984878 797242447 916576617 232766248 837916881 322222403 343161224 550586628 939350249 147879024 746156825 793847502 983383780 887423580 934586957 726647764 818916179 802888535 825040732 453292805 462278235 205675027 658024082 36859534 719874185 790452380 989959688 992242308 992907111 177956786 939378146 155172725 634075551 852117984 922554481 633497213 841047279 91689626 566645802 666982169 975495926 461803342 803072490 544892124 660030052 823909435 905225630 354632757 730787379 911428241 981432781 859856311 879596782 575544166 662584117 537105383 638381248 670137393 830543567 42984190 54577066 667775981 668399825 25469569 82145608 559559631 643532017 728974102 915484444 592510249 786859017 101553085 239808084 814043235 908192079 3694925 670085318 251354286 355778483 454599231 814364057 32321596 934061686 640325777 932431808 248505841 667953239 257922340 471269551 784189490 930163538 327752278 330322930 398044884 945022910 869855387 937631202 919849912 969270472 864402798 999414275 341960801 972817157 844480567 859427916 58452629 291805408 747941727 790916308 811361440 836501475 488874637 919396056 880853244 953678792 162227086 243426458 749343272 765290221 548654291 786850174 157375057 798653929 838717934 906348886 626025103 913150411 253310639 442149715 191347261 631073404 783484018 939216358 662774821 799712241 76695311 347359576 895545860 983946252 392446174 858090944 512473903 840795750 422645253 625505762 161700519 224739138 923176341 980655981 578318787 708560435 549809196 557292209 776543734 801758270 917149186 980818057 28195904 487871471 590460880 995098853 575431421 614225827 726242332 731241129 969357122 976513809 196124573 446083475 813193910 827286274 10543484 485270003 48502344 902901998 148502195 212918143 77377471 390847892 81781673 642998894 292000464 461187262 928755634 985758424 691959744 692980099 764586026 846884803 787442917 997208089 943681223 944391833 262876499 932838821 922346563 986257132 636396498 647303701 674571320 729350405 561012609 643857026 322791218 803260438 949210420 999138838 699814625 864246510 322124854 836529770 660493182 968096429 699412241 925882692 221462354 491797681 532371927 761156767 457244551 935174629 921362959 978800701 273876781 472494220 719700731 910091785 463460884 485506177 160831440 233419528 899602813 989024863 254678703 733508202 9868819 812439654 506293752 858423715 257049734 916245131 914398339 973955085 788079789 884401598 795832761 829910772 440377550 838058148 750458838 941106924 972000940 981575103 817381237 967633106 511819710 761808883 967820556 980774116 347996663 544260435 462556025 940206800 389964503 456114527 486960430 593938959 988431066 995113343 715220404 722489739 964942255 992670894 813813236 990686177 744279046 897904948 46867293 940527765 299169914 420635605 351185676 574930225 373294407 910774655 119768029 125049096 421960040 767269185 581939794 829437684 940782215 993266189 830329308 848135979 737988480 915978704 500909 967869765 917799244 964366394 164057424 365313289 841863751 987843619 531825583 587055609 175979006 197865332 630541481 710403131 598719902 901356651 217150008 982345993 135276926 333784198 414131244 802418960 178469175 755109019 406741345 920746765 341628437 484338427 966715926 968493689 136855088 397234232 685737589 773573961 315260083 636943742 907250121 953243334 758187811 938477446 360147173 812373117 471943757 952409661 260285369 940576074 28902885 749673570 211010380 676788084 648484738 993025869 951864036 961826783 228102373 983284955 962569264 967555046 429167211 441920572 909208447 946424347 902324138 919342483 449452604 840589580 529516873 670290078 135021043 562822364 776460341 796550407 236091962 974924501 927877337 992356770 332749434 479716852 212938393 553020438 175486224 484195470 462661632 959846483 570787300 689337027 805832641 847785460 607391371 890407043 144403009 548194836 510066343 911237549 84004866 827037259 435931937 512207261 950813767 976292367 691039642 789816663 553231810 793444350 557074138 671050842 94158822 320273713 494708047 738334518 443189443 968251861 642943151 902831019 905823618 992004023 724276172 956732608 386980251 454309182 384477180 608029656 315485010 533972390 170216478 241805283 912589257 944932987 623812927 859981481 435453794 809106728 76798872 832753108 7283440 426418344 532473002 707015877 495843321 741202310 125615258 155393271 938043633 969427975 997522976 999047255 119007578 729043901 210389811 477788766 924619519 941928025 255824834 792629732 514760581 987440479 861414906 945109409 53750593 315140304 201920437 592174529 912330714 950032288 913257773 987215836 472270296 978982611 67947290 862284105 164663768 662437259 225079914 706855842 826834472 992361721 646973115 912905468 857414967 926173475 443154306 624657684 57554339 785316453 35545234 231917343 328012597 566289323 438536076 469320060 374247793 374945625 652985968 914996827 78689440 232382689 415537069 951113997 459615409 546873180 243651428 425198515 732674430 948142112 16703803 761957824 88516435 121369576 869564453 876652111 413371744 853652152 165097009 924090597 715326275 925226914 335199818 776904224 52216451 300454869 888344837 966150548 966272857 979196587 313818330 801353553 469019025 515828925 627568173 722284789 987497309 993194533 227510602 835068288 999710027 999983096 594873383 824963423 401483043 639572698 108232240 388540569 547215351 644439057 559621429 851812724 850225789 936925088 842586622 967630920 686223901 711887556 921624660 929020034 118790288 197706543 629526913 951780395 845237998 859872763 114633550 662635511 68151047 554511858 279356581 405877693 88697891 925812037 870848770 978773342 291789846 368937317 407047213 676915157 577807260 975360979 685498652 695001708 945921897 990560302 22747927 520246426 361599512 808651627 896922544 907684568 754944440 800750409 592967594 948339451 310670429 840013397 679549069 741186920 644340485 986645472 490386787 810386635 479488200 808511738 588950731 922734397 725739029 751762973 740545404 961415023 807466980 874436027 717618846 732368929 547359563 638236020 534647393 896883644 27946016 150633356 979566722 997777253 516718340 552488203 517281510 932792761 946542541 976528041 646093311 690411724 911578475 913549831 982272784 984402475 883708230 917838802 970399660 992924542 644162388 965460743 914659384 916810085 232263342 636479202 985470347 988386430 914888135 976389181 301537164 770748270 259793208 879477040 806961107 815848685 682015083 753670550 946375507 965497896 98319197 729172694 834378819 913218420 115980418 584739054 692881345 946289895 188746171 631101778 337226481 835036634 851007121 879752977 611597829 964653621 58137235 220318240 631788323 674438148 699674192 956766101 578294678 790830746 378124224 561661014 686829171 813761447 24089557 364954658 608462802 890161525 909384800 957278655 863427966 922574938 473469911 489398230 824607817 882117138 218778150 593528712 798811706 836531633 899880655 900860518 503357403 787374856 35734477 411431859 607452232 813341903 562321950 711258369 109169007 401050460 337269037 588804820 344461079 900234277 410609906 513649621 229750449 940370449 564219553 925231580 523780633 785641405 325532055 679118641 66540123 523594933 566597088 714384712 305963893 567014289 673876556 747877820 593022345 706332915 336459267 683637549 583755458 887513456 64973500 829648132 331091249 918003491 609106003 637306772 167209073 419385123 797661684 809316256 690239411 893322407 896819362 907768182 224050155 632572783 850451600 921312551 718408829 795459786 537620188 570672241 459861034 734741385 513561593 523826537 283452826 655376620 588346946 769625535 957860552 982382732 348946087 852636626 659679724 873903155 126932235 645002756 62756333 291018858 332930420 980534351 476992164 656530215 175039308 564087023 992377960 992440089 151777386 370391926 236396686 282960708 4954204 193602787 977524534 985451927 259819249 892325684 409984176 646863346 43132914 247512916 460839589 686523985 372738491 867164749 414154085 958749891 557329488 780290644 721924539 911598816 850389608 921951347 263207979 657094620 468381042 761331363 920995999 975771475 409497253 876932809 393747844 608029422 574286202 992663660 585420373 897964341 738766054 793152233 546520501 769388461 81560935 834865132 891369302 969480158 954075440 954133844 245450676 484129450 560791161 678930110 655246197 808438786 342407071 992260059 307926995 596772844 632143545 854407221 570904770 831319467 49438793 799843552 774598029 810655808 46951112 224096578 141635946 265073167 222839837 510866994 591591558 748850271 927386937 976667966 581635909 964522294 649064728 852110580 916462032 959084638 690085378 836582656 375237373 406617947 566779278 854912769 302167053 911789227 534323043 697037705 747582492 895555203 165411564 197133348 696828379 706308104 81992874 166016013 292747622 969781407 712411056 715235593 392591924 603720268 86150767 812120061 568097053 828789249 199885300 901934652 101877677 868379462 180250080 218316282 85250154 418787018 189409448 552833622 580471460 676632062 475336151 712790206 661761212 668867572 759970732 905658937 437121459 626945031 856052449 883530492 982827315 990277775 211988904 889012905 77078427 375992525 452786033 454495865 993249534 996383395 366868241 872995446 336600538 755574911 437360517 595960246 316599552 521418248 195655610 948147761 68575904 368346706 142855856 951297169 395093406 455604111 7754263 880245892 186536013 747472701 206583067 537408999 170313151 690519200 261924049 703086210 616217080 942896134 815010961 898473190 552754502 932232947 979723908 999273818 9167668 503365283 609347461 636639891 332182461 524159640 851193766 883818759 261592853 408678188 555756816 940277403 872769388 884491454 259744359 491235267 301658667 414072738 548125495 570226150 937458585 983990763 203071916 286857844 681381600 888361845 897882029 926094107 73158863 308792742 729878777 733975850 610602641 794894830 192283028 498536766 705821932 949565211 252977281 417274571 912404153 981940820 853585663 981727506 463344867 722843996 144996800 605170930 727654959 756554987 680002740 855292504 688526764 730722938 898909727 955171843 955845902 992995407 589568317 949964350 160938548 820590510 628733992 993013493 21540122 283693025 250406972 539994258 661422619 680002031 611003174 704082464 167352112 987627654 534187011 924141538 676405399 980945622 304249789 536714133 417078833 628021046 902957145 904550266 293909550 349014885 899519237 984589943 162565156 454530309 312818031 701839872 782069718 909134735 640033757 953392246 927985992 957749974 313307581 884200521 232900232 573391125 580101839 652347117 675775511 926234217 45321905 61058186 717965652 971484553 664800801 786642046 428142544 927744674 482218211 692030749 737324676 933329990 631856687 760473140 937709592 942421226 931799435 987347005 185843003 836182138 755965328 934756796 311187255 751664526 93694037 94080045 451804467 765611305 137810206 889651176 315042368 794991790 680673872 707908492 506287612 620403714 911037285 960055608 287321424 588894696 972728756 976316492 948503312 967061440 228325202 792846690 256120438 548748085 998387784 999469689 972140881 994119996 633953229 897792089 619219818 922994374 503125715 912688410 593335319 636660495 99239278 362279726 143401663 402399286 342468291 521945985 283297829 777551695 989390146 998847060 831118124 990816156 420364709 953367745 859025055 892698195 11650138 202540532 36669489 765907714 733828251 953497357 91210097 773051313 161306705 862330095 416138427 612138123 250155593 609065466 921047927 997005981 548595507 776704953 502235776 552241644 932002583 986577621 996666134 997113457 953454041 987822324 661657107 748164210 924481797 942350360 604776577 794671830 265575971 350576807 541218155 649884422 829920495 971985469 156428725 603474875 970627178 981186053 879004667 913505124 594570189 636493221 663433190 675601635 524070802 781014002 254293567 395738012 605486724 899095586 154584155 156375035 825238169 919883886 938928432 941748702 326823751 623061852 690945958 937408434 329740414 645585235 85694704 844694839 444074666 877720952 986374040 990348174 262872320 580609226 748802680 816197390 136367715 292620720 503554784 592457249 7792676 742250721 192167144 257448275 374793159 641233744 811227055 829654964 555348625 953966637 759902761 878363522 212690465 511343441 921578396 998567594 981800747 984837557 25931097 695795208 446659356 468586500 647071166 678108119 264167978 618734132 888189906 944475854 46518318 927034714 921500866 961575734 370601221 520379979 588295338 725066229 757260626 896877936 732655329 753703554 980230397 980424279 286775916 837502630 380465033 543703375 301513666 595723359 223116018 633925787 457968930 737815869 733663560 951381282 456374592 562893279 829554559 866415704 729560316 838616996 621703487 973338041 415374812 418330511 161801541 731468637 631027296 794004471 143890073 417506123 682080334 927557015 321092278 486377093 732976361 804998792 565124506 959929887 643443599 870084370 892417934 960376833 160214864 812202544 138499040 939552121 962207993 992716700 956798447 992341957 670670440 693208015 666818771 746303298 974403922 998589120 109173626 898641370 903321667 984391211 750518733 912841126 797786891 868739598 135397245 991549371 887257335 915316755 246929460 474699296 720038351 812638913 821859625 872364253 203963388 701677883 312854862 317625312 962962962 993542231 971268879 997934448 478831799 627197263 783513892 995126423 100073815 200286449 825382767 907688982 459073471 872553992 893367803 956000003 741504322 975439240 822786128 917452469 209514402 542626387 265230436 387467532 684003349 830857330 15211807 714783007 284689961 526854523 830919540 851459691 743590338 823171451 83251475 959446888 937007453 980282389 647058144 893296628 121667509 297906759 205381392 757144263 701483679 805460862 685837603 918891782 191942623 439937426 664709569 977066388 35121484 453465069 851475509 972060595 818620251 969144047 357141765 866185221 210836341 580972717 993975181 999349426 900591609 916885051 844432656 941544260 159855305 514179169 298111411 620815975 839550252 892333545 51927462 197710236 274063288 732325350 920254355 967093185 666276979 971881095 142010867 779786269 218873456 387231042 640529899 842363214 462613710 631687230 73142830 148757903 743445284 972537828 915007916 929220318 558560760 706583447 12168589 389193728 635324656 683710425 105409253 856585407 45130509 906147418 806072226 897214656 590791736 606911816 729437820 892562059 141992716 528165587 581159536 878378955 810992192 817404345 75219989 990245180 799765445 956335025 327068050 396269594 972818271 994951513 605692930 949217928 413114405 958426126 705084905 885388568 340176678 644666727 438293744 751893201 282600581 487351653 229866394 322202011 561265342 949505441 335618108 779020855 392506725 894540944 12997443 172219601 538106943 807536910 362914312 448348081 566078926 755093518 902626007 909502274 594399533 791655702 150019206 493608507 31598850 353749146 987893618 997916800 696282992 789644258 621796519 966269100 442579470 519342701 493763725 917053293 323362283 608287637 48886428 536134782 672578930 731145971 923220157 985570439 157790005 387655477 148557067 605741981 569406835 820733430 130375217 704039233 749347546 778406566 745762478 931747092 231134577 858120437 751579791 884661815 484750804 722663779 382381981 974976308 110859288 566366631 401124354 713220183 846668056 885493416 464687866 642570672 393071050 742412011 764664259 986468185 111224810 928939119 721656303 766458460 251043462 323268042 8440478 893459496 997944508 998151323 530845856 881236109 434752556 618368576 976957138 978207074 72843691 149526612 97666446 765122843 24394082 105766086 37975967 935920912 798673501 983678690 59744057 637247009 348730705 928174693 617743780 661383785 743893493 858418494 619275768 756359215 542156412 734893745 469729872 514678144 161240917 398724880 286063393 517896194 893681835 974427585 726972742 860581209 943812665 970776116 228272601 669543147 756531463 978590685 76826004 425427637 183946266 208988861 859205588 906975749 654903328 743185194 55483161 115826843 122179950 271933924 724247020 943044395 106269156 385370969 493041975 891114319 490072268 681938386 593493302 915844370 563371206 944535109 556249542 889026083 317458443 483635290 143391395 288110106 191441377 733561293 526657485 850027877 477753735 774189144 531022911 559432669 513787785 667202886 221272508 813489841 67707561 947387044 602402321 866315675 577966792 764112757 141122660 896786657 252315002 862258580 156788314 892149485 289716228 635940831 951233198 960768137 189137465 729210520 592408661 938532121 754653454 839322511 773605638 896321194 803830823 977538299 375707657 491129196 369687940 990553821 778771771 850185872 685598394 904043395 823454131 909718598 800215234 888787199 746237137 939594021 958390123 979905990 736640152 884249118 962331543 978243213 631435764 860051621 138104896 848216041 774120433 883832971 384434905 769019572 810576146 816367395 737644476 828846372 963970149 988549816 265504972 861819418 642940660 944345578 80696023 81051910 506888484 564368987 318847438 537322876 136430487 154611215 16807829 869831654 416104761 437939261 462604017 478524008 273359887 300385593 876144107 907310710 519569047 797649558 847659545 925950330 895199709 989381364 308798146 892346124 773347190 846555174 239657615 382521764 591215249 844895366 500079638 977043824 99871922 426265899 627355738 874950132 989408164 996735688 503315771 509032611 331158188 921419879 373410302 591402060 912601801 921444643 137022244 401702025 53603395 414168664 634893471 967092175 858825007 959869328 607465217 929336964 722884626 814505479 293115784 601259725 787734201 998112321 681774397 760165808 146081662 567035241 46017184 854354367 491150070 888446381 485727944 895211581 221639739 492250450 61463779 557991632 674054540 912930142 160093781 332902793 43485900 166917460 593989798 928889107 406182953 836500451 859165652 863763942 688675455 692420064 828231130 890067299 408058001 756566821 801344514 901937130 128055181 331366932 304660600 953294377 556675204 795359800 207242304 695440064 662714042 799209245 358498587 745041327 92280706 639932850 244244033 984955005 176498398 510342132 698935735 975597511 448762151 940999062 132005220 932265857 12938585 256756445 128551256 518637035 895063761 996159740 99710576 385976773 88882380 263439353 701303196 946645426 587364338 946508016 460509937 650072476 878488262 955201272 131218974 270883823 956392991 957937096 395724744 654164531 884644588 984636156 944611716 966918715 574198576 997904196 995694641 998470880 509051978 593184510 139792135 556996575 346889439 818347128 886990773 891320277 199507378 801638867 52042265 251652461 250055565 653109191 710073527 853986785 66222486 828986409 663448382 784473470 107285900 276922424 989625089 992002511 323773225 584900356 268195281 600172334 492884496 615227289 768280588 993390481 601234270 627404201 555957725 571244374 208245250 233594555 210285375 533642346 586765456 849665302 431588371 868058239 315582481 846612034 688650527 770804939 245325463 872866153 805580772 897463674 610979615 757045835 139309370 495823913 363268214 859456722 784637360 934151312 720408565 838653013 724486718 767256004 886866432 893991986 629852553 940204701 219880625 609514850 652767107 906625086 844831476 996519652 930119612 974227368 343692121 982453769 979082229 987133839 397124414 940161071 970851775 977896670 721345607 996886571 769267096 975463913 371869254 812388154 83057404 252763658 153813475 508909822 213804561 607584769 754112608 846713868 957869052 983455139 522592338 964735011 427396233 538130494 842200578 985962088 861508798 901199089 269510576 642845444 402931495 800809462 291269460 812564411 936309901 977383260 730937713 862276629 466294154 566153096 227327775 288633413 644129709 891499532 323112358 958131366 1935254 662266826 975024544 993664520 855115865 858773890 858590221 874624398 542553475 720262615 195731972 549827632 726480127 838499120 409174698 461018219 120442479 261309050 558644289 705558464 146049794 887837050 778735904 895206713 844466103 952110623 225275337 397082241 528047956 543716825 781294359 842864020 752534962 837062351 225505519 656671984 981057432 990360223 439414173 861206840 463195247 879651527 98139650 141105096 109547961 163326984 166933933 231299496 288689632 457475691 528890917 565477125 148213900 786285972 889213420 947292920 651431855 943380731 57822443 270009948 760320841 862360930 910784292 980008047 340611298 497084596 978555468 980425293 67837021 954581473 220879636 276640612 140709866 440698233 892219719 982510926 217205715 892934821 588223521 825124305 557236111 658630916 556371471 585753977 643464709 917600588 928713801 943575279 613612685 900609583 67005389 634253441 358623264 701326717 801673604 905955584 678527505 685351732 270673863 325702582 233031677 720610897 779610952 840694015 236505905 283054145 131821892 597788014 984297888 989169477 356066462 422488883 669065096 775244689 735856565 820418053 285181676 812004466 202857562 635030651 867593646 902270747 461071369 931092858 605914526 760593031 146638540 683243469 340573932 437330350 780409908 837150626 850135247 993742062 415505168 551415609 465441634 961273997 561708336 587971444 690147809 883965582 729271988 805373574 303607183 643934899 650933073 852993430 317901277 362547797 84927339 471344874 446734637 914031197 239474810 619517648 502228379 969872955 786143024 859990333 732042999 843793178 151769791 364715183 294940657 625832912 995341388 995502345 773014520 815300214 650925766 830154259 819041159 929662498 37392094 144574320 594372658 988083210 422944475 884643982 237741221 615057770 438084482 831796838 652511708 791355740 16619287 866542825 402343566 997356684 475512192 597311246 589771106 839779884 601317375 866935427 668252651 811264963 123341657 991395425 203640563 504780319 471815171 701283047 443751416 487025285 985633367 993718919 977520056 994745756 795595134 805738021 496912235 577492840 341569924 460111454 505959262 717985643 213378656 745223558 821734573 822364942 420952022 983584362 568044884 927113595 189055209 718720458 477361315 775903070 285180305 294905424 178440111 765345031 56147545 646802136 829341549 973957379 318489306 349468235 301315444 648867081 876256479 881823736 785370976 934727558 278810715 287927579 813838297 860485767 739451687 997396341 299339407 387833874 600616883 845933745 469771068 919026389 174137135 537362355 101979575 737232407 206533523 682984324 774214841 914589198 95287418 514968638 107517824 770419966 330162072 900810596 7421259 724933194 116249757 757053519 24633819 430137319 607240032 942859912 426963082 979026776 306551484 661319351 225758195 301155701 430990452 920737173 438755846 815289664 362840586 512374906 151430252 662321284 318609613 729851965 977613661 986129446 536588882 780711054 520479903 611386582 554054363 634569288 869614742 895039149 428573377 898724652 408549849 634102087 838369091 896931820 556420169 873928152 595548066 625202004 142554077 927583477 195681378 783556208 779769125 783732543 384914361 686031332 603943110 713850891 931934754 956269994 291351457 535676488 77079337 132040177 817058158 976514495 383922119 694567824 383318843 849116958 984060020 997072845 264204065 749966504 247018864 259484073 546949934 709355968 614005274 813138604 923867905 978760679 418308196 790670740 207278449 609756980 872519912 910694556 163378726 258978204 191407972 815492709 267173645 501784365 852589992 941026689 462728607 859384494 947139167 994308410 151475494 589914136 954080440 993317821 296396694 344325721 169916431 625393275 367878163 954717931 125650883 622744616 614350031 724774157 6706682 309395938 236806267 927209868 775413167 897101401 174592334 272759359 302018168 327430548 531764355 801116211 657436994 835062478 221870207 516325310 546132582 793315513 357908866 748065263 993125119 999927414 567588919 748977740 371987629 777126351 415911773 518178550 856867201 907529041 189697798 918747574 152541614 999915735 825565584 864877206 316168268 656653619 378896257 975803097 555505395 816375606 288672996 654000777 478118361 836505221 445477782 950895636 785300184 995494218 790091072 980018998 592380641 870783144 560411997 706333431 930729970 941500517 28961714 186997201 604642765 815069595 712915440 920499570 357527037 795705215 999776286 999845886 945704662 984111498 719755824 751576070 878946756 930530972 965951890 974890732 20147017 381584515 684745826 975347058 167690150 549644457 996053838 996953255 367325631 805145542 965879824 981209589 929720197 960295663 86139981 916377353 770531570 995582539 295160413 311614907 889682272 914068136 804893046 859940827 497905122 656089669 242220613 322667746 639787536 750366905 562865799 780115016 958675504 960153584 529922056 650073582 188766592 344603035 507258168 760172741 700903571 831606751 696385838 843175657 117130230 811088399 642091093 888277835 925155954 983208714 506347289 801569349 182420907 787507911 304363653 666417284 38783146 358578263 291499884 672251751 334806395 719776704 501590117 511775937 135655030 263778734 82538595 772845590 916729912 934424558 859548683 867722006 201755051 480496146 248739309 371636693 899569254 922155204 864298899 939762795 139835936 486702604 646071593 735614844 298936722 654643078 648229285 912315691 641818124 950554940 340374308 590051895 94811491 860584427 176516673 355913662 977320011 989784208 668934881 988539358 638393994 647817706 226983861 600992474 377209334 654038690 518701402 692173127 602532169 828678088 630096669 999597466 209141812 248465307 937986537 966368869 975614092 982257865 165005564 603827729 661049854 854664797 170160527 956323539 379681516 413901846 460757738 835027304 975351525 976690174 166768156 690673387 327596720 450179899 948105304 982181020 47026659 344796324 940829763 944324886 462880471 999102961 415349773 840628224 973495746 998666478 294974484 334643748 338936869 814975189 619002906 672363835 633397078 891624303 797422286 859842058 636333409 931602910 840227991 953546512 81588261 429340337 71570205 694964643 841046996 889363585 396172084 450606973 23882401 831408816 51200050 81724566 726034741 814542631 600434631 709046182 626522374 861899139 230007275 729834262 162714145 968200230 140918225 649793466 283354805 899542138 483590249 894460486 946147171 948800750 182488897 500120490 769278650 900899259 944394791 990668321 983984992 991487202 171652518 901251188 127498597 448727855 871919255 885241604 567677005 920884234 780603778 820457144 659924208 907082089 844250789 932915556 825263725 941579590 498636402 818416131 278979610 702059948 358781445 861018549 95277774 290893638 104149244 324336212 486007512 609342863 798938714 871613366 134023824 920235722 836744909 993258429 775042298 834726228 776512269 778296833 381487191 669232187 339117287 639832480 291025578 678778099 23506809 443363374 783783372 944989534 311030459 578584919 55643488 104913800 844866254 979418205 198117193 692275040 472585513 871520907 891739817 907055000 411776333 567466853 605281963 678136100 177260309 530348807 477853817 868072085 235446086 937968779 91029714 987923244 698876450 849191260 347098774 498626744 386613276 885214187 199673631 535841148 799218504 921749485 631454467 642559965 356739120 651846903 489858777 926685694 596224918 714951461 188548509 872129124 400584782 832106261 898314484 981668702 543534875 893693141 264645356 674568697 175401157 238384164 651799120 985920984 600450175 795415728 827619609 946182613 399053439 852652673 946980875 998117366 848042884 879386539 344153161 727239589 84105404 495157825 678670279 733943830 30088364 694840124 905779267 946253504 70279578 579543964 630165738 704362005 104754873 709427847 624675397 860083456 723047952 846040270 773256178 981040725 989600586 993061691 275987219 329007771 797537891 965759136 782460490 855722170 132351135 479276165 47647954 373627014 185445082 690694769 751897897 760322165 447076082 679418349 939134189 995602728 761943045 867628786 593771768 924198404 641499702 671908540 998479422 999940831 998901409 999170996 330154320 330638588 169048854 732151867 856136354 861574961 267596822 585658787 621322824 732994063 801080035 808163995 21966737 406903836 644007327 771266986 903216436 951552866 523955288 865455247 89850771 219158649 986402190 999980532 344221292 494034824 30593271 695713053 712431655 931702018 868426812 890709871 509724470 843167394 170918449 565240283 685315460 984676440 641353396 931903237 826000094 943218727 775038676 816557568 816626287 838243793 755496608 839117654 731480259 826992810 360131452 542454482 121183158 801332093 371135709 556962231 540779941 775574862 339672618 593652897 327177268 483856132 137976470 737514036 873556442 956267160 264050025 625273675 25390409 991736764 312230063 315552968 30632605 130046853 896940601 963349522 193966904 840981775 294813952 930798783 694933889 873253497 774178709 854759522 371615712 465406933 612457946 632037946 793911881 900953355 681732090 978129184 989446668 994598564 680122483 680344954 49822126 505686288 116773309 532369708 380415452 705672086 95743992 389587639 657684676 958539667 124150370 702895896 186066723 460402673 34151827 105511866 43726475 606276404 140282160 339360308 666552638 805865806 429862940 535910146 542875540 741433542 211286207 971031109 595254477 611285048 390687648 966121038 328751337 764779356 877087507 909113744 400768352 473120507 332210561 486944706 368765570 840766997 583418606 949150211 927995071 929268326 570278698 940172072 922075959 975945011 280617726 364210284 542370161 677536098 114069605 568900570 442130842 991035696 401856517 771932464 797428921 875830418 180373938 242998169 284455944 554384642 484757808 727551659 355962959 471103513 746309081 976845989 478598970 912467409 344684150 717424660 108153798 350500712 916723307 982504517 272873566 357320129 82754692 690161780 520407349 761510668 735663994 888476451 831664083 862545038 258986814 456488741 385449168 821265304 769919967 812799410 987018707 999880125 264113400 641321325 372716676 741940756 87609082 979649641 856264508 975803093 499571815 652168937 84198308 557627448 179309046 914516281 453469325 546354886 296010953 984370006 894329326 989889003 759892800 788614474 11908746 514640264 16429710 129407761 460640225 551099694 695362371 973656523 492601294 577185401 18365585 586776741 847268918 866036056 980952460 988223107 838102134 967009284 798847251 977934547 528642245 683261871 843731691 901332550 419714265 768529913 131756310 252586009 176432770 366986620 135883230 322536775 86117852 128223002 884174924 961673166 118656365 617697406 2461439 300543097 867277953 985363115 248026198 798161236 211911021 238942147 777128902 940439282 364489470 655560667 691038273 922261349 709631095 769859757 373864411 927473012 467123424 915019559 85869413 638071864 855948897 860205424 358941680 608749805 868233961 964549124 970333190 993009066 141396034 857008875 469222470 801370471 407431054 667667152 571595027 773704294 20288568 39048668 180276794 996801638 750552303 873791502 837940594 943989923 176142595 572685627 53072604 863107940 595945943 611300229 952603245 992098170 598615251 805024054 135574816 202564345 136457975 273735430 501258471 853329038 703652939 750721451 203810749 521098173 138327614 886410226 219654271 756846349 326311273 391267923 600183358 628331204 597342145 950727343 965769489 997139104 820003753 823629002 388783701 623121476 755332999 817759287 662863520 848627602 220202773 713660373 458870120 569575328 719398892 873609927 3898657 603162075 48086187 516618687 707081687 853501583 975439944 995854048 622900816 745540087 68815517 730719281 855027120 981467089 523278394 681837681 156366746 544356092 569876251 761786444 484218373 763437727 728096387 734831679 527096346 966900380 406835790 626637169 567657431 781104529 173788639 659973765 52338627 555862948 778695508 986291733 416954127 955186929 88319752 972952053 116244772 235694482 512183862 763439442 73940617 799846045 127746147 572626007 717041452 751545259 45969939 50507748 533063821 800442306 515542646 530116941 298152477 949681709 536982612 858252047 885809356 999000659 904984025 986915923 922137372 952584992 476367848 926619875 759829017 930942198 73221371 984867657 902452097 991854524 366732880 879267462 637128041 974313196 529941544 888457744 433820028 759222520 125323722 414025049 366859606 784326797 214879748 251651218 461387299 686069245 652677717 803422926 283030887 375492238 823163694 852560655 497830038 521664433 76950512 442156113 272742021 800929182 941764020 964713495 34816670 535371675 774075208 806805692 605340060 769451779 218257786 509722432 901906731 904249081 408860489 959224979 426241371 450599042 445599739 719482194 788676154 949031152 309626201 736775855 538452295 859885456 63645897 792219832 108876044 834518457 323948852 452560366 384261851 578565699 353406849 579881512 523985799 562821305 396627952 890259514 122005251 320768127 369792420 874438487 801363715 837139938 493955641 882743187 628565521 643432815 34375670 936274074 446184963 934730803 718909347 829685844 125955242 444097339 442528266 864620661 295126390 747837710 688027194 920698086 8260126 528336020 871602483 967319835 68548094 869735948 169498964 666235567 686158224 798390520 219201207 874131381 959442128 974550643 16318455 672238564 616346914 699432132 758832286 914465300 428928618 736083700 448705392 475855743 946527636 963971929 590460279 797243364 41882112 926633248 701613449 961967006 186114249 658134164 854127227 914124305 959538030 977531737 421729301 525140704 587511338 615654493 655111017 934362503 893118260 963350005 444796199 455479798 693705702 902131779 784641346 925236346 193841232 977541473 258124989 284253042 11098246 277140806 179069871 880814228 942412790 989458098 407408589 482192592 907138429 986441137 859366362 925778373 188549625 716873798 550765941 809310897 953812424 982868745 390402620 405017145 405941208 633616154 780951768 965926774 19240824 324835121 479092622 604549349 124137239 752449230 641997853 892003937 238471879 727059959 576956539 866790573 144493058 921419160 509560981 731511537 647409180 812550122 467534330 731816621 441725548 496899410 382030789 574260004 704991969 836287934 891348605 925702883 467156368 968897442 529412581 717408439 771393901 965987904 751866705 835611744 514207466 899605756 82662141 585900035 729322648 996097835 718032552 935685838 672368948 898536606 680266566 971075960 415449339 481960017 778376634 821793690 983551819 994117363 929332489 968109569 165823194 290004903 359488659 603720765 15304542 781175103 681255259 866402337 1164901 300108124 440941274 992169864 362126991 435182439 150714647 461329438 611034838 862051019 598796646 964813168 89059925 386225018 861661212 987574801 840353260 840595794 813960774 847884950 174859427 798964081 972050495 975551447 908079929 979205071 861666732 968380063 45404535 230871691 12262060 500651881 983533215 988225948 295639947 932750246 416616183 740938092 70211113 957653052 224422106 950123796 225594626 293885693 80960707 636727689 89539330 617068483 722595494 906185271 342947707 949266429 529569710 933650011 245178385 973977319 86615216 530719440 286191567 345196179 758105814 777521922 886324073 961637696 492369608 908391542 289271260 474210895 630534742 707335781 373987679 951925764 862973639 907055133 14610319 29237929 777729792 806134062 891200180 910189500 833793325 953589983 61651278 630107228 601581099 656372711 348708633 827233800 282557006 855040144 516376689 938372396 258347091 749444121 585810654 917714691 762137370 852762783 301186278 338986982 219144896 521657863 877116154 920948284 574593722 705806754 430172933 924987165 185689639 331526915 668467201 886776915 313900027 400431325 583392363 947770308 441070269 993219020 164685483 184222890 786679792 851143750 81028076 803208978 123923909 396899239 402568989 904091159 799596831 831369914 888581237 991910362 821919857 921041980 954839720 977544916 626482305 703120663 615244500 995706624 781389499 929259634 132731284 708658335 871495753 992184926 818226175 834238844 380900748 877665469 322303627 502707109 398529653 571551160 990442627 991169624 16895764 418269413 390303983 523993865 249049431 550984598 557350341 748230262 175835625 610361791 916514018 967687734 354732261 761368172 872545264 947737569 888366143 920974355 316882881 424918398 343448825 391821401 596536158 837637170 763535477 862799499 197726825 567066191 349099022 624281340 457837973 949697920 900696763 957097470 907405393 989429500 28713415 488893635 484525530 566772529 965429573 999346977 319123950 659527965 661131959 801243577 636716719 681548377 441980442 991083275 6583550 499478581 377320801 992670259 686282964 700010669 432105977 517129406 966776851 984254894 803825178 868254953 278721054 509669993 396531152 758431486 168320492 315038027 651196165 920042621 555115740 715402424 466748633 697032630 229349143 660830132 677952157 763634872 482347726 626975364 287782346 743625821 590611692 971085726 472511719 610946867 977849945 989752557 161371668 330432966 697110061 928681042 299792713 305209164 814782525 937676557 116233362 661724775 473254031 640001745 157077364 535406838 174566828 297943287 521583869 785057688 141776101 460577008 186976154 732150375 402625830 932961441 790863615 835899624 48081679 740857276 128171186 529861652 862392120 895511138 788690802 817634496 911639539 929088386 566226958 627234996 438570644 990919429 855317044 920223482 833108676 988581382 770853044 970434612 29748973 405939337 866856582 921543123 709039373 771557024 70104 242456727 881315382 985828478 888227483 930857686 92516866 953089462 634707804 635280408 553463535 791038025 690686587 822524466 517270727 746161195 623080076 943406546 596843181 694811967 434368485 891351306 803777609 883118501 599067460 785927676 288822480 733932512 383555483 827455726 151044664 800756278 362513114 777079926 874777124 924657861 955635574 963281908 773957437 803442903 585522105 821952411 396442832 411248754 562457037 748261413 973134811 985438834 156641243 770232172 85382726 403396070 234502873 379874273 620639867 764069456 907190179 999926319 294661002 610455355 67958363 352301292 199738811 643288063 874824608 940827922 266731573 482088188 687964194 963379436 450202428 777986174 481453074 584950486 445635719 985992094 600526401 706154641 974388847 999103575 628948160 719156928 119575543 933503947 653712251 890529141 628145887 935924266 973923447 978105730 921287583 929735156 270727224 384059810 957616439 969504326 867384281 985287337 111690700 444668211 653098274 819555647 654718011 780390405 839103362 973642988 500790545 687490011 304128086 788445618 528446262 931199357 967513395 979724690 894740135 982359438 417395627 757618574 104848307 356380419 221870734 826713874 375015103 434533313 894716496 994342649 852904801 941054260 94106177 798618652 421879160 623001414 709730146 975852634 103471467 739605328 523403732 857105607 462809533 890597459 547620167 754538627 718370825 749999976 726558717 870965335 438007265 875445325 478068379 972484324 535575836 582120199 986377001 996818359 159177906 524820459 702717762 799165922 532570831 638814351 115281629 288532067 104327268 667955494 965594491 990396419 357121837 366714692 569472651 704915007 673742607 973427718 298188029 920746213 228935146 704527487 601562524 699537745 51309177 633766764 676513652 717263981 359300479 729692534 271414644 735553465 451008320 481362746 298075776 740807685 414940949 967273493 558112971 687000046 445465419 470693494 90032424 539073780 993296321 996901038 470216671 889507576 30318440 758158552 740709926 816242013 799518321 875461589 339771833 492059084 151751177 444171298 300048039 342766420 676710157 734181274 322901039 385058052 427298914 674388671 581025523 733220607 779523683 810375868 887906344 999581787 206159464 500912149 557534574 863927086 74306200 776147253 259391525 921451537 938961557 963951753 90332390 864841280 188126150 663244225 855407132 902323560 979045277 985168682 388103321 744329911 661961006 845105371 334681424 823839828 933461620 946070184 149625868 740908646 314910790 878723260 396303404 557702133 275549053 871867778 524589493 912937476 814554593 871434607 392797000 597126935 993972592 998066066 501428949 813884972 237054805 455347757 143056043 363093030 389138357 778803960 991830267 999653199 969622042 991882989 737856266 849393768 501910006 782142965 187774421 384096212 153351884 334403710 545446341 697004989 277627238 810084352 888210122 986081696 866876970 999296800 629644268 829004057 878017848 882229675 524209625 574863802 26979851 680803873 81944573 861786276 573795276 989273673 279368036 754790836 454550585 536275259 27926794 860896868 475292339 936062229 804157387 845955039 98022318 625528937 203950302 509604957 473355014 686334278 55540474 178496656 783897785 969181799 257875183 641141801 449580468 789436231 893243595 909588239 728228895 816034475 992612325 994194508 170963745 174014748 226149477 653519619 477448963 912283990 562494785 727866662 274306671 320482206 78605033 723410325 440846892 886007789 199574736 520863904 822818745 858687409 498095930 514545244 167383311 569657175 549176998 610724402 993071758 993958070 507355399 959082982 877749361 976765833 620565350 902516851 955368383 956313494 383328912 795302875 331865583 726056198 357307356 709213614 946814299 948997585 402881976 770817777 563333231 656836224 998356577 999697954 221995149 556197814 833430712 909061131 582702423 854075717 395676867 970172581 208842694 483040485 209615504 876493248 209995532 253184459 662786941 679911108 762019359 852307271 166279792 346089384 960594386 967814087 623650061 660021020 300243439 473747479 24656067 942812394 815843413 897825611 959581479 995096830 220254381 674377368 131984807 614104726 565688985 613985618 682141610 743286290 585714734 811451529 163062146 506805111 905786788 958543078 208926048 922649930 980981758 988759709 823764891 949784408 824573058 888727395 67711498 728162553 727995547 938586218 910537812 946150664 338245651 664438224 769059452 937996707 526168 451885231 308065220 310319709 131195072 964280845 129244675 843745099 571113359 991213799 99989461 999603044 830168614 906858786 459691965 474062203 351115617 442063784 88499977 664829038 70354741 371771177 884705874 923679927 526112153 801181946 923577033 971428748 932212954 942006253 12269598 217256910 299828269 927188209 56336286 268505291 759095330 845870980 60201873 214630088 317507244 911184443 920807202 929075553 646547871 750816525 184800196 949482077 43131026 453796800 103442606 644788359 490442120 676987158 445040868 650586001 855661161 941769592 719489228 914780753 181495146 468548217 12557574 682443278 959541611 991092331 718140794 978053912 635090033 915726608 348160291 388177455 637535936 717264610 240094579 502103115 624834902 877579677 617894021 978345138 297740732 883521942 111578788 771453191 885838458 967071291 362807185 707043734 987609449 999457479 524250724 986587153 845320412 984857901 931084492 989831107 315339603 470158894 95564230 420535045 454006887 935465737 532559140 534333122 482218823 577303048 34057052 443929340 35512289 325879240 133213377 881098846 425310459 836566383 989474255 995615756 410909034 512894606 454019270 946017807 402470845 866908438 971551321 983143996 166056684 999105683 615545480 915784499 478533143 708800630 197679524 221546648 932769995 986663551 11303386 905534343 514468421 679940636 311924001 992101872 582103479 663603210 384594071 876525008 767769005 993716664 450315 315360448 358356566 469961961 546773386 551048790 304656625 315189271 455600112 532637558 452689228 633102747 71648355 823798492 442506016 707388314 717722192 978946437 78752281 803948930 196074375 630240798 793350424 961987858 97175095 616756099 137920371 603775656 630929058 715977216 560607614 941205056 598001699 962776494 779381233 955639029 31264445 44804990 513480227 691193625 30177321 651095815 898010808 906788893 145169058 874049159 460911327 955539849 867524724 881906583 434491357 833580148 483116489 963012599 50775187 580348323 832894925 955389065 197114795 284913364 868496145 910322498 802955984 934518120 410821092 936775177 233717522 827465148 553678299 736097177 44432372 244850396 618842009 780238423 548610239 699498315 35599301 75515589 627796469 694633071 935943371 966547469 867320654 909007262 714362347 878709240 266326656 994627354 688130543 713863278 507494548 786931166 350382445 835232641 203106035 545752181 303563967 979271465 41822635 540909324 676763613 804002572 417702656 577125682 476971689 696136297 756765977 858713938 294438478 298283674 321543127 706749419 154999446 903207651 179368936 264934143 755516989 824490119 100130436 778682563 892180205 920760560 74037116 768776526 236763001 956458364 352351541 444750168 658933939 708635181 516356018 755578279 83152092 575402742 691902301 776070612 301802022 479647645 828503262 969197249 874239043 930704885 63665822 723727125 382559936 991226493 892845805 978625981 347496330 423393275 744094235 778216840 256804770 405610171 906291594 975334050 880227264 965676235 970570872 997388059 563734117 753857440 33649552 848713396 40661741 507989218 901013080 974430735 552948013 986742750 327776420 359011585 778172394 982650240 412520675 788046159 261460266 740137737 342812393 353418483 310069254 563058141 409967298 597447246 268734222 341885667 896083196 977234572 649775912 912494447 550157731 822519555 220684351 344497163 924880239 930697974 383749359 760467544 738038586 981035806 140399825 393925568 476752136 927159648 573749460 898278683 240847704 481725084 136300049 622636440 476142755 531365734 796743309 860685156 681709215 932119116 369237925 401046164 745246932 803130385 975197426 989173922 889042696 947796632 996160153 999518297 38393814 787559135 589765805 598502623 313760414 588053304 228502426 866359985 944673204 965125115 700834018 755825346 162489395 210863817 754143530 829794159 827909255 925730135 727942716 822675583 497813475 722729071 514424069 886759735 338998808 744857530 317078097 832083666 620151638 827659248 743344656 998092392 451857434 872445775 256749603 931835034 455361981 666316196 920168286 985845601 717244228 974539776 730681378 938229146 932169859 953422287 811392068 968078239 531772651 721935242 156199982 763436861 664709934 727445578 611022018 756830926 527520685 851081068 404026427 903404212 602734561 941134576 472589920 855457836 483137638 561347560 597050727 816101663 694362747 771147546 966956503 978703032 847932574 884582672 864170669 953543996 291079438 401934250 690218240 807992513 97895777 270302537 891988691 975955124 406927241 408351665 692873724 908155753 28866986 475384042 956152754 983213293 46032093 126682531 999976155 999988094 707216080 998126721 951905679 954392414 114612009 960504272 952221443 954966803 797208544 971391761 274822897 652858163 39801852 344082196 178066782 572010912 611490719 699250919 582895753 759927044 128442205 274373891 759847443 886388525 443528927 784849460 676075465 839803695 141609000 681931953 653295063 846340647 895327919 903818393 148510709 625128806 995972231 996063413 910074751 998047197 649042632 713721761 227168624 267196306 608383934 839180869 675201284 941214449 295134537 942197033 456066643 715307552 374964293 488422621 953206313 978202652 706764909 892239694 109563450 796808255 193447867 741895924 872935707 940565276 680966736 963076259 1576520 347337674 66755379 857516119 438573559 752844685 517607321 686916479 980970369 987932877 76506796 614722541 748045454 907923416 808809172 819000759 340321667 534840769 788535662 842563158 999802122 999945152 397574547 884546481 532156863 770608257 737558598 902326772 483088114 873478688 213433216 245752812 544930350 910922547 352002163 692983716 930576231 951937526 869698994 988503300 110150408 861981795 821390260 966743129 188069518 317747256 696484253 764391254 226261412 443152007 625365104 704209835 171954597 434333784 460938551 649267119 442833770 838884604 225949054 787973582 527019939 906829722 62163151 202300490 544893842 703674330 852865771 939864523 974680471 981747590 646697422 754445073 720926878 988473170 942836968 957408289 268492409 895727556 775762345 795711209 313001687 530219872 330674091 727115620 952041761 957804489 148371348 246107875 840038258 996998908 435123255 542571488 614477925 975308318 509497277 847856111 228327888 313890314 465469611 511635075 35735107 630468554 85970007 300539968 543579418 740321387 296014452 726482540 958374992 970497352 913918921 997376462 877432373 999833294 592156336 699239393 671830579 882253090 251219151 662959934 826910264 939692317 28739219 887605575 729368607 962608605 1299498 680810080 570734340 816409931 96443110 849269938 594300939 955987934 986752446 995486211 643778666 936304498 514784538 993000569 141658301 961549535 974533470 979396480 55277712 965973592 112114400 214632181 768585014 928429376 931396736 996475056 626247031 812016493 956801125 992839012 406340586 942924074 679519687 799798461 369036088 988049096 943610534 973779437 346085740 529416099 525130971 811593337 426077066 588950142 448524447 740171369 705416213 826191589 780450156 904012010 584212668 839101121 102641698 263208586 961135117 999083352 410935028 442229455 962368643 968178527 799935610 842397089 731235586 993638535 632178527 665314233 632564348 887415563 609058649 786107213 661418952 894735043 514945586 704044315 349821992 840652299 887181822 943251206 980053308 991334886 445548807 665084366 431392410 589919800 927747596 984557277 546294440 737216240 685474360 953679954 35927457 385699921 849193931 924704307 203198330 326691285 567076381 800315897 644960333 900970559 23401049 905630034 237014519 703274110 192591788 789169853 16527455 679988987 383172883 924149078 259302703 814391836 436280129 665178781 450787048 558552146 7903669 263945690 827555334 863920400 341616961 976169064 943739534 987876827 92865360 550726227 435914353 812772160 424506549 822796475 856791798 955359564 267629513 333886977 311440391 411639160 575681362 672684034 565314765 628249691 231700758 910826665 6829160 663196718 89137196 691572805 828601140 983887949 427770312 467921138 950974210 994512756 639827282 859107020 733907660 807233727 566127827 897422797 160790883 685289115 274257685 316180876 104011860 442615136 433929366 576866812 678833097 967953485 822215774 894218100 322574821 629006182 457889046 776462167 241736357 403691734 326358269 440966675 767366693 866812785 798656547 874302879 57496174 648187379 442748030 931796565 816129935 882004959 614663242 889537263 552130595 636558553 486867374 856964020 743334698 901253678 246667743 885823421 801273999 911173573 858005833 952807975 325466486 862930799 67680709 805951266 91883565 495080151 982414656 999025231 999321429 999454092 322003954 372121796 370554729 765899655 130567580 720271815 26302462 232667694 950328445 988693479 840159620 845905127 19349283 255608457 759432937 876375821 79273071 209472150 749482863 945688515 446006912 692212371 455189755 520441740 243733892 412735285 206858992 579801492 213541498 703442383 702441976 794025037 539660556 947037532 504260945 954000063 246447154 886812324 265220726 846932062 705498193 762806157 20089446 29591523 542983740 720787201 592391976 917552954 343600902 747140444 779943252 893642813 382172913 924705512 775641396 811817974 875922654 926946358 396688120 896020716 568762213 679745619 268989366 892573626 641332659 664576156 486634540 511409675 994002611 995508536 786251281 862717217 860073407 987973019 903403751 988715553 656200161 705277678 402258070 648943578 669724252 826640455 358419246 718135950 185832689 262842920 958673716 992791519 376261096 630331711 585195787 771030813 17861504 200125494 932640924 951166340 528862525 703953248 500681489 527122677 244088805 983610594 9831935 769461727 690730178 929670273 158145622 221606880 473284680 765337187 121690006 917871914 857823717 859303980 370145323 425227172 740042955 778719584 423695115 463083718 198900320 353938453 156426218 248678575 471166748 887778755 60086456 663393961 687350058 777309689 349344642 398108597 505244964 706986078 578381599 811751900 273190841 994302149 594941856 749507565 655877383 692904480 190869472 458737951 296962507 811317786 615547674 853111432 35931355 757980193 121182377 133109131 598413755 820341743 715577484 720575973 361254023 555431385 372791202 695055657 262931815 755278349 276127122 705516469 346835776 871346070 132355417 231723859 64489682 776144504 680319249 994650659 103532216 971625418 589678920 838897133 820695752 905902827 172410576 313293270 448068206 611004811 929579058 947997094 930378209 957497522 841373700 977534161 897688299 924466733 169742168 513156804 9201686 537366080 808963091 927949981 507239049 965654833 12002598 426986384 794317177 990479149 830610212 888450204 255752767 930188804 591228743 706818313 742934542 805730373 327428 673204411 262724485 351377304 328133610 766223100 535120103 663159892 164494846 237841196 873471791 874356761 857261069 913402006 958396998 975090703 592325667 985797052 440790563 641822458 697070864 699336395 632480078 802192786 730049956 867856778 128882358 803606050 668403517 672751441 663915805 855796119 416025524 418535745 796793459 981678099 293630412 450308525 949605254 978451910 317961812 626749249 366570332 424878897 638061304 969153839 748699651 999396121 961325412 964692532 374806660 751815588 907306245 973695140 822118390 896914845 705372478 928627673 943629669 961784254 236847642 633632846 497230582 771061143 668637729 956504512 643374245 832495263 743754800 862571338 281145298 704576138 351721977 509595732 396579612 952416463 900092174 993717098 417707262 583767506 454087615 812450675 510911182 753225719 305611824 906847247 740316823 969539794 510977610 736428152 647256286 660298929 208702968 634894163 425422839 947793452 620340029 869730490 386484003 779340655 578842135 889128025 203253741 459544387 599718521 963663588 405772658 491640100 784077110 974498630 87991220 172118027 964350395 966869049 824372596 986314465 486896407 851464476 679755088 878721090 882296105 915303964 744074890 765900880 821764327 883003375 304021363 388762705 34006247 548845192 859242996 981257612 693915322 934062792 548705034 898896491 468319412 881871466 109782850 976735507 907433074 976488356 984463812 987640990 325641087 974590568 954423927 958128881 648923416 727934130 68167642 244332196 855662972 905307111 59246034 176560366 953521599 965541111 16390009 618071396 864955248 919328191 478507774 956957901 488077311 689505852 479393960 588823273 850982361 906777671 305593873 491662915 141165833 514388278 632270402 730525892 829045547 966725213 133857857 657997855 550011834 842696112 933647457 966557587 697800327 746863962 415974919 645553309 40500606 103177383 796193025 797184565 72374 728815556 88638957 654543336 622484470 704420820 792149513 927847207 413246655 681488591 319118236 506605098 404170789 795102604 806455737 865881532 760613058 918456165 315512116 631432982 145036851 593768314 597504736 666962823 908544075 911934041 463773713 749070157 88087393 831501389 761582531 937380432 272099523 730460555 886158650 914490059 880943404 991425825 54512661 733050771 842849388 931049545 139119507 526295581 646155004 827048221 712775726 908404612 682534152 687532932 257529724 408545859 712125222 964873845 101502616 428821748 931708830 974571963 565274775 976279297 652745576 972489597 865459010 995128981 173455232 370756362 140491243 214014703 424301452 522613739 673272086 890878389 222280541 666018631 56035057 323007178 548249409 713561581 568320597 802964539 719217385 789271871 880867462 970321061 425699540 658063483 439022819 643559569 179773977 557907926 539089133 899332119 258419618 517438522 958936742 991093073 962126631 974505786 980374594 989451982 275943398 411785100 376745153 754061618 239591830 323040262 873695781 892772650 588184842 747839757 464456063 742046763 293024998 839389990 742978874 789972329 432913688 919060841 602513311 846653755 790027437 886345129 868354832 994605104 943760221 975501015 585327867 652936282 249898206 310033650 802787713 895527553 490732769 830823626 658184497 788607684 605317498 653274202 947708706 950087463 493207201 933017321 873872789 921133393 376657762 934460584 223418916 782355246 428641832 984451178 742580233 973528968 896099124 992126737 207109383 658181849 787799320 813981815 884919089 988251601 794837827 946501379 378625055 903716910 608072487 897893307 408307658 758581020 332806010 794847609 786315698 787703877 519593066 855763170 337808902 860320066 641379073 748620501 767377302 891918568 771099081 844890859 722934414 802221757 662929947 880616536 943123995 953234819 835513356 924297481 802282558 829161952 872807482 917534006 106034582 387793494 840491455 883755038 998730081 998843857 242475993 397485911 49151339 227780529 664351640 952164188 688058270 758773108 880857686 902597863 452603408 797864221 633623404 642809019 594319615 905580956 661329538 874650291 425463137 693277371 503404300 697365223 577686584 842179272 994154021 994986292 645869523 940408473 974825942 995444420 170305644 507502555 869000806 869094435 124943026 827026106 756741609 818714710 822158099 903443795 624906442 886652669 488973417 722336304 840662251 929621487 195240932 723477356 890603776 971718150 42032066 923360902 780143531 836976204 976558456 991715554 493871270 899941043 641060705 775747844 233840088 794190888 418791573 965909435 378245602 443000576 202664070 827765614 20481579 939610025 972953218 985567360 610562173 729881394 719445924 972383344 700681626 730446613 456152059 933353421 637598577 773999338 305861235 463499561 726090368 758803223 713318161 730959434 992302905 992371963 598966393 720474819 863915993 960391835 315298750 672811973 611709498 841677511 133240713 195804601 809334254 965656505 533473962 612042921 917171631 970824412 975934696 997895751 43648045 130473018 77642915 591079230 638038409 724019157 331153241 711804530 963441890 984708716 710537249 761846955 679129027 981909514 729679225 915182295 765727805 957662529 911568864 994128192 730457688 999810483 106196844 131415159 905769161 966509325 682270909 801471424 547373046 933263575 347337249 465626280 613626559 687371113 396095250 935566261 540386751 571437713 725531145 977381060 707904839 818762563 617311628 792262743 786929861 855002181 65887430 365308034 698267027 748770156 65886008 110763134 951417599 963058438 731633013 824128602 964134318 999802200 557241840 901164118 678706525 756905336 73788068 129381413 594556025 925666936 391191275 658735001 27616912 546722967 985076555 994631695 761733936 873241676 347437032 976739606 641890501 743226750 420698660 488952884 993850476 994889099 430506423 961040442 469013823 496979981 73692901 456374636 693340022 901489999 376984921 906363336 56505909 346512610 665524014 846456320 200543081 520870679 19750931 727967058 932916253 973677084 755181637 824630059 722115164 977718871 517645870 942037897 564858286 638070971 792155545 821992534 780213832 869731781 715347176 860325366 451203604 722160382 473758690 550777951 934313145 948558129 795066430 969792836 353934388 998317801 803378589 900548286 931662561 971140387 729378203 775239638 695568388 765378581 903426914 923568967 121693223 153884384 290742300 620089168 762262729 803783670 440118261 719238919 306565057 648910924 808120689 993904360 398232581 555642502 806060361 978602012 966923945 979389192 896474793 971776891 675183561 855251937 348961322 453974031 524193314 697617478 775540095 978708127 983124672 992953748 90313018 104500256 559311223 864374539 605607446 918753057 266608518 780030020 763560735 822138087 963836518 973485881 12580984 101137524 659843846 996875223 231626518 663155449 171384254 208532296 547073328 550501270 116113488 316047173 544867721 710721775 805460210 877572427 611627622 860314562 197549368 808898579 600365513 852515450 396691550 650995530 742104270 869021780 780723417 789689655 404467990 885964768 526304409 904288997 78785616 400921906 350310137 489092168 962553879 992916941 625975179 887778078 979749569 980983147 418477467 913524381 720014910 807426063 814576088 850471470 850635623 918050354 743235918 891038246 581612418 772328617 236259373 789654465 848101154 900897454 784412646 991238316 841989656 991401101 663133279 975132347 807353577 915188138 246288395 552661758 232941308 979275686 930920807 984372332 326109422 602126408 541314693 959864662 100066777 165286464 768821359 869462361 841097258 853010090 928985276 964280034 555046377 947654973 919880965 944680872 522720038 824612465 983378724 996596293 103515231 852975417 658987044 836693854 649006713 958261965 254384796 927159691 865457355 868754871 427699575 776884766 143467304 684674119 398015949 438828512 721874189 768422033 995661270 999701767 119408612 323146641 659937093 882303475 895346446 937534401 242863595 942570750 707262987 758264277 672152911 911210544 519392073 719437253 487749907 594753414 793045966 992017575 830334199 882140198 719970577 961400018 560597144 764676206 47790848 754558040 377699069 775225520 627566898 777322655 349801392 773759927 929120702 976860317 810678324 879965355 665457548 851993141 764398416 904979927 344208061 976307057 695532674 939471016 633684767 927962375 989866268 997203372 637516391 767934522 131473109 433486499 804643444 985718103 574083784 761853759 374802855 376228511 1734765 530656280 63870354 320345449 584813933 767780168 787237186 944780327 891640562 934254154 959908305 965363468 930440896 972140012 768862893 857484280 179327857 619792430 7440015 245604632 498723406 501315432 592990275 688307365 909683511 998053724 680825683 711701500 867580170 933372850 683286537 798253137 79929677 843130038 260387300 537570145 92109052 676207005 755247127 891983398 566945603 842717371 198803902 677209016 829974570 893116992 456202745 460947351 428757673 858592095 463176561 507062740 326021356 929414298 282561825 625178761 403001271 449540687 346298315 870390879 908885747 943985530 541123692 557006288 698178651 948773051 970384691 986236879 82594802 351193841 88526822 203974835 819124415 994274217 879365499 973586280 823345751 866389354 135858185 321917961 452177720 470792424 160370166 600262065 911565823 967362605 276625665 812920148 196743246 804219485 900089072 999631901 451002832 533328966 889662555 968655603 712303373 839609662 176364605 429165328 96591225 673630911 738137321 982443012 170569974 647779625 124262806 630139722 448964240 746647614 578388889 729256798 46225543 794994558 922350905 940025519 129205361 357645925 148540845 422634733 478624218 625060827 694988051 758926681 21330294 296655790 931697212 952356518 963118249 974536080 716649900 726824429 420937984 490734695 700860320 867402531 257305192 544421053 597932042 703205841 441314390 741014387 561531661 689663882 509461794 591979916 488914706 652587482 728017847 876720670 724217790 766573343 74116949 168159866 745390133 772011018 199172484 506926345 72153548 256004951 75867675 604201951 780651379 902804844 987384109 988198576 314667062 316709018 410384598 791170618 765477434 970740069 851616399 872153997 774221022 907782397 847348058 936141950 529955358 549652110 122821644 215762086 642884738 838608417 252845082 547745629 883027836 927598938 801114461 988445687 644054463 816683336 143206106 920871509 576011233 688475575 898207864 961863043 794875770 798992694 267310696 821451026 566781243 914288705 249929429 830415895 359102660 835833071 667906167 944949813 372288070 886098969 264428673 408879430 381444973 629023622 241492412 475044524 137290304 551450570 672550 646975264 754050526 935480673 626676049 967074414 877746290 928477590 894754158 996786317 105795087 824317336 127290183 528443628 589196629 790384006 560520592 842830554 251378752 786539752 572144071 777328499 976143499 999853389 592782620 617925715 299994294 620008162 323971027 874405304 762373591 977679901 617122412 752105573 360620551 659635859 388034201 792519703 752441476 930978585 569302700 819766699 704091782 981432745 563818857 646090256 218013380 734453948 966593753 969553679 836821327 992450364 852850822 940972766 402918212 589771621 829339221 847898168 206610283 620878811 145797077 727595072 260267262 365583137 280648817 656680616 627322065 819057396 659576925 709313072 614218932 644980085 544732733 700972841 974813117 985899777 174433053 687687376 292725602 642077031 94624628 115978855 490398102 624337914 357935435 604002607 981142456 990742933 284812172 393042742 966325299 976791974 528714677 900556193 950996823 971685727 40721825 895505671 49818926 209822030 32697914 348074926 196021474 827293306 594234854 604462534 933767881 959866535 328445424 654165723 235907677 428811250 275780776 550186363 137067041 931378021 250009836 325707053 942894682 995640886 699391460 998948725 645740401 896707453 419866484 816441300 478624791 569132946 601302663 887099625 226262070 532251955 688911061 814866931 284838556 692698567 429753542 696781664 349622652 824819001 363152660 675762672 271301635 570372722 564359779 804624905 612972865 897853100 470757571 678356065 660750255 996668185 115091011 392905471 329821575 873881972 850236625 927783479 196551488 752448071 936893022 976470916 332289087 739234583 313827463 489701714 873509576 982288533 207793263 725973285 104948269 203935220 622212068 692164858 161732741 165936427 366253524 376424571 772192785 867525649 871665365 905615156 760084319 791459375 479259108 557151996 766882375 940707837 768847922 906820957 523475797 850366519 702662030 812916407 875260468 942683277 144853466 285949965 974525861 981711146 345759226 837188782 760788737 860712546 798506259 855417559 692021043 829375306 50983648 760142582 284176361 458910472 89917745 119853801 586100360 855350654 474210333 865176495 162428874 357209438 44648222 312250888 424189001 904522988 695952391 722643396 916596997 949287531 658648668 752314768 509485619 889926703 628528435 656839136 576400482 614272574 711603531 797211605 828822647 860708540 756068572 933090246 635602612 850091593 696337617 853035141 157867654 168539893 734595538 777182404 717129908 752165927 724724349 795156241 446418130 736725764 968588573 991647962 801713106 842241099 280257606 957870286 84048832 455760181 638324753 651545105 933114368 983643600 294665269 575501264 215343567 888888992 828125752 897130173 553153063 757985157 903127680 991672475 530156505 939261165 721793691 748463239 712748986 906771253 515722946 734333619 871165120 941865258 866456691 902494967 128899297 407826355 290249345 895143281 28325806 223443753 783659628 900990860 591420790 624425326 984752304 992896217 752458547 758068444 516241384 989839303 43195300 74426677 523378340 956313746 374578675 431901529 96628531 602751558 372613757 944732343 231634745 639543650 93605966 476525096 724075961 873734166 791187735 887587678 136619740 153215133 387934044 663144688 758401585 823634562 94404799 822979152 85218906 888960335 848368663 891517549 298232069 579355246 624648208 748670984 137719382 620748056 688416905 843719390 298231185 771943208 920865649 954286002 360820272 578305607 876962943 970901924 787688246 871151823 375472311 713851142 170992294 487176713 102173604 812771096 176133534 827771143 623218789 755120314 958193330 965569696 716787379 767626697 624851351 956751917 681677272 994179667 789397700 793960808 671498082 734668537 931865694 935509708 428334390 431838390 120329609 319714822 558223802 562506094 548050270 624038794 966073617 989982242 998819685 999970533 613716780 743930197 492723120 859477439 393377082 835630796 382852507 604334418 619844645 926097812 387237887 509191359 380650061 900644090 745450377 752062877 550540395 839309606 601293241 733125493 720807126 746879203 37684031 440963064 125822577 821814313 43902519 808027309 641260388 927575047 984130866 990565006 211255103 843330511 287007049 745089554 349758522 489764787 486453294 629120007 450374459 497722387 365633103 962156993 750752952 911670759 947815305 988430945 294545634 694282062 448871461 496595825 843621496 923406894 377837614 855809085 185758192 677378487 208198076 616351458 764919835 989992204 312228512 956129517 702955036 956731499 207988302 918468748 62876962 629243743 810548139 878691561 785065337 897391524 65893062 139924354 425105677 718294070 208114641 467030962 261414303 376604017 559377870 687359422 485268115 926678896 55791483 439491747 88390338 740167665 654954239 962630363 595655949 828789983 640971185 968192357 884246881 929846524 531660989 681401720 194186784 627391469 649530656 758708426 887736662 904167330 783258726 961743876 861624582 927540329 839361614 916325965 213110559 370487897 347504186 693679451 311993928 599284467 32336957 508291603 353535199 988304833 262450121 681408417 97114295 216808164 466749268 529211929 264850789 289950056 178624094 628885397 710424063 715652393 644037565 720564365 668244109 880908419 617110513 760432797 284755758 408382783 738387766 932003281 194486566 930809280 916387537 934033279 357586204 410064286 371735652 718408734 134075452 218925666 347912073 622007631 720083365 822126783 853752115 996836132 650329248 948509726 687571442 977193156 125272234 675051905 92539996 361051880 926120491 975011633 863448269 907717923 697180393 819297537 237916888 498128585 902724856 999049421 620897703 725408310 764571544 812476536 355813332 642551845 538712532 821119562 209374877 927374858 463318290 873181800 18789311 165391699 124835258 224240147 902629215 944911411 958060861 962570405 538901036 708143299 221318745 755955529 623163448 856250189 186067629 514492548 937416792 951772533 3084497 694449704 214505312 718256633 932851861 953262083 237998012 575936416 47229716 716520010 524632751 763646873 91582869 529093503 404446452 788339361 393072203 511644438 28392297 53157685 409582184 563328371 86940515 941146204 394817534 594508860 901686855 987226901 273650996 728524785 853800321 867580547 850954726 964215706 184214049 876474814 12305324 309931352 937457436 995458686 489123066 617254815 623310796 624997189 550349600 846342347 254223414 988127150 494744247 729787586 499314558 621635700 497896952 769121972 493585843 854035849 841031125 960662212 922852200 980584451 599102555 756286128 179185351 622454029 111032659 634584978 403507022 603440186 368144591 633252132 341577213 478231218 711853352 763177112 693053892 963933498 964501998 994370951 934755777 954202094 10952897 486181644 772398419 974406945 66773900 623386038 296214973 869897304 848323140 925673238 959381585 964788143 609521448 647331876 599205631 607286034 713103541 901041431 319856079 416808232 602164104 627707647 861337811 924429576 574795119 593910809 863235911 913859410 77410952 660983554 272098578 918923461 929799213 984255945 478548164 559537853 790045365 906168927 87735818 282279728 512990360 911037515 852147738 962553137 171965961 799080785 491161599 565593222 120805763 506297773 341433518 876311013 152536987 709485517 664021146 810221406 810839765 848012206 168946523 498678439 750385113 988784422 962161005 963450533 338581042 833122723 48622941 82931556 770502933 873345727 136563535 374281509 769552628 777110933 788488703 904282293 177856277 493253810 51479261 90181083 531478386 596395019 832136503 918847493 725426435 973695217 876743141 886220193 830485800 834059606 146013598 675495772 606192902 675582796 104433034 745484800 874747010 966868955 451910675 513999391 821832361 986499095 435493428 594571456 539681151 767118524 954498751 966447145 236412373 402254516 109010064 394811808 707149931 758065827 915811071 957100110 498679949 844605437 139278630 246034773 161813508 379725470 35595827 56495263 114561030 801577989 151468374 912755264 66074553 117415823 913492431 998944403 28938591 463541693 780383400 879000582 214960361 989521385 245132886 468576252 700336186 753116294 74417645 393163270 915298975 936936139 206033931 659469740 449651503 730500817 910354163 931920981 191117658 658993317 57912171 294948880 62432758 467156121 179255678 328239732 378686119 443406643 791168501 886267726 345754028 773293551 551672928 770922842 912664339 954640897 972391602 986652179 111619153 843631937 259132009 447533825 732617348 834523339 787207509 991310367 500762286 554734180 725635894 992769470 808392940 966361834 309619505 604449306 379791602 900406273 93597162 893447385 27440324 693183286 879512692 973571870 502265730 927661659 436597475 546170918 852723554 902637401 12716694 35572286 565821037 875254613 767010706 928804527 464486260 799872300 282259046 533746587 555455087 589875458 725991956 828592031 437182093 842080305 916424896 935454729 586499466 723442296 209096243 320772840 224087632 625844638 846909129 985984234 418443964 654744319 591187166 642861725 697984751 943075584 636046572 924465158 268422844 986167464 29432747 151586923 297301196 584182409 42293309 847671610 898908366 968709325 826038387 839014281 367399478 400093446 119430145 296276573 516902610 646430824 436342646 704612062 723947082 888941335 185343901 940021535 155993593 232894475 204508186 562713647 541615582 771000548 145916972 262859347 52455818 896035665 900910442 977286236 52628385 890188403 93027552 173042879 912848083 965382095 622341793 869241448 912716843 970225301 528281557 760824927 128031667 576208864 381981684 479547010 831954134 994731969 299306555 822652348 838607409 878816532 834714378 889739450 340286156 521554353 55437186 143217281 652472752 963499589 794771485 947842472 855974927 895337875 791542459 888203919 71092764 950609575 581916448 853359538 303563556 866520021 695199028 818564475 621442293 841967014 552491062 741386804 224615 714721975 256238179 673892211 738405202 850268502 647176480 724320735 93266020 848721691 68317808 514720683 435393353 502095563 423079103 547501086 9434101 389353915 909441295 951218397 731687532 754522393 654225617 961572508 832739457 849962470 762970565 911317464 675736780 882975211 674829376 908251571 928758738 940914204 257309607 451271508 833271318 840759171 974684717 980635450 174272590 180935943 797146488 816617216 944319310 981370193 626745026 999727381 467385243 645561460 4259716 628823299 438417817 916497823 552964674 985674027 367173196 428418785 853503005 951978091 897726263 976682724 987741216 993879019 507424907 541127756 214171102 930218653 819460222 856908717 866771663 885970451 469212600 952544973 56641168 609393524 606130201 627785679 161539853 368439317 151630418 725454358 697281868 850417453 860837134 949360049 795832762 971441303 268584566 435767684 797820084 885509591 899183359 906297886 176818581 668924295 686919621 982620675 773709384 988202088 196258440 243703847 369428581 387194200 424117777 532002188 792479043 957703710 609098460 873707331 357096996 953113111 291467712 763500610 793904126 918987033 516026928 978761983 733178623 744649245 925452741 938785787 500759750 715240096 701810092 944636296 753127445 791136371 63497203 64232530 170014505 954408928 368113409 832913403 638780787 640459932 219652105 554377593 733897736 812213479 801743645 802649337 311993080 789944849 249838763 855746884 508966888 583744448 412513538 918173472 831324847 909524172 767621039 989287085 503944889 927763948 4981683 350981317 360365502 933442823 675928316 957660747 167304918 770107775 317128576 621300748 595861958 864320808 23097642 957240803 657322999 736274306 760994186 872572400 213422714 688184992 73777052 276466537 154409517 981870417 437636114 452399294 986660542 993897497 726731094 913395402 159595042 710608202 505048537 798191713 632024064 962889760 251663081 519612484 284781728 783899121 785103042 932253986 147012120 440975454 632448781 903449649 715770924 728284836 290179215 432599287 349008156 397639338 653448569 685365481 635799295 845769005 908200760 972462098 95545695 270482798 480375538 646887870 747702070 797246025 956192183 963027741 211702116 677122947 835740257 893598822 128877861 964735871 30896897 870863589 640465256 713077331 622352731 857124808 358205938 819833463 241719341 631813769 952544851 974217297 423355819 502002457 190670560 636383714 633530472 642952076 113789702 190507348 411428579 703056004 156858510 270890198 854672649 944565538 350076062 584664797 570701564 748480011 346616379 404132816 652240233 733417949 390217759 837236070 263825634 278291988 128608986 250859856 922679838 953236842 64697366 459401444 19308701 523812565 39449260 654298351 885405092 906238441 525124792 931138037 373222986 852353992 108579140 138262179 775459543 901843451 109263681 292939030 414044891 893008991 693831826 786631193 451086533 720841160 607696907 969669940 84486746 148780955 511653061 739586401 826816133 859559931 850403310 967257707 13973774 626555632 207890059 892173035 307547062 592745570 807675569 871928821 408244697 910615685 429601834 980450509 686294601 727358272 63164078 513591402 190348706 897186471 424729151 502245262 130591862 296352983 590879147 778969360 541382865 753813283 206253434 570491352 707005294 802949831 544374855 701409162 163486973 300519445 634946746 947804195 607917279 803545785 360581092 514777543 834949631 922272403 801205906 859792788 634972606 719091610 7873089 563712767 149623825 535209536 152612508 916278437 697814120 742315078 993812048 995590037 150857916 798429746 535855495 923232563 523784601 561572215 645284193 930813054 688994236 909014860 692538595 932442718 495843583 767295953 671095739 969953076 45734164 324443584 915506412 991605384 895521624 917278018 697150553 967780994 152118449 888306510 827129956 855828738 453134964 650544339 351328072 385845258 902867875 950111684 920322053 938366268 572312192 716300917 407474613 780764548 15391663 399573574 503201701 513402545 203351851 373992642 102059626 496726422 643262660 942004184 21088665 184936726 966307446 978073718 635013861 818700818 50088063 900585022 469053738 680032734 610635794 805600805 284484370 945250835 715901804 743619510 76746892 312282253 884170820 890870870 163810281 887614058 857174507 936402049 30453970 637517204 486782918 908583996 820163341 961768607 884024516 885592753 982782255 988464812 332754232 538267724 525327167 657401929 917520707 994133819 367104227 779937793 811813466 897971204 975716887 990602953 352762416 923879714 215797977 492741667 163545609 450954519 543387249 624342884 560019500 614484585 673837917 930427093 869662834 941849578 193823558 462000101 104051795 443462700 336705085 900584617 27401730 966774983 36443039 613175168 871895287 925701112 85991498 766220598 699425238 830308834 297416171 903118927 416085867 960898057 165792137 884714732 298774577 540893582 99218572 540480890 675528015 903790999 746528041 958320032 281568920 922204909 132256361 518359283 909659408 910775589 152156285 330363997 554405523 867878573 987198526 992219342 966240951 983466634 576329110 820480664 518114909 641193692 781056860 970780805 364279176 820601585 806968598 930745812 386960726 401570222 419725575 499916622 151861745 554194018 341810709 922067003 158952003 936284445 100812916 230158069 798119365 873859848 658089169 686252999 298664407 603969448 679451691 736820427 250174074 950369905 259737551 466698895 391835126 513256285 88617945 101189941 596750963 867110818 901800850 991940133 640352394 771350516 3553201 216242320 247151067 318293867 573148539 780653978 3143525 815241694 306090409 901597452 895775195 993944229 713287899 872346591 763054337 908373692 783670481 824913538 567676353 687644183 664961046 673920267 929567841 937349106 60331288 163150604 693768074 877028480 956156791 970173219 485372966 997100215 936640089 983505768 358564762 411112197 830543564 869369345 455209480 598504256 493793090 738613057 846597224 854904266 721733875 732140035 335059196 867036103 669372595 904670040 737816805 909526687 879481093 952300601 990549014 997221580 62264421 913425161 370545066 678265540 716716443 730184175 273824990 852505594 387143992 431305256 707624871 874706022 666951721 905356591 586625060 660887568 163473450 313094455 844164258 972918186 53919834 822615852 269455357 365171968 557773267 970173058 547456147 608516808 998096888 999444767 199602201 368600560 185043712 916346217 71866715 811978797 115327284 699452591 101705691 470064380 318014419 964745009 837188971 874590069 916949955 952612896 206752718 305104479 141041729 855536551 511276750 722725615 973945002 996968096 977281864 998023978 762580753 892181671 176394086 411783356 898069821 947078318 471951622 820192389 580739568 593156753 815865975 823070562 754412531 959865334 572861025 785836071 797142562 851016514 122782642 596711289 694719799 929326977 526956587 675486048 905451770 968223799 703059536 914652001 835528435 964707249 898887238 983896017 295553786 302786747 9862041 718659705 556298260 741249745 561446836 846196238 51875304 834176571 480923362 520992219 873943690 887613506 917153537 944364912 791795093 982864811 877645466 909213230 895499088 996978480 816380024 867792333 69702309 490479053 752400394 874374989 532671578 975734361 558725403 879099183 249336384 867748979 42988817 996266221 693730633 767013641 523259452 836270206 434779497 746456778 960708829 999567793 315740465 715760163 878492456 937298109 174376477 741521643 710341437 733520770 344717154 697969611 708729645 823217930 422911335 503871947 287152854 372105639 559438010 615053872 22652242 342125130 921081237 922704944 57836505 260180714 729047542 858037964 199088113 260694675 628641304 687761497 967981590 981618891 445368267 599727586 577027385 634052454 916631971 966323510 163714787 725903083 992723333 994275110 878458173 977235277 787183815 869983297 657077 775537263 328704556 523270322 537704240 943909855 991962481 993986292 753227024 764007325 773863361 980832121 335518416 866084303 632255709 804322567 375779376 868333660 225311366 867255067 133824820 655298034 892805845 950003866 562833122 979336534 103681924 770011456 223310456 888942617 900879957 903381338 380660473 998843948 228507153 409605388 587817872 629936212 521667444 684168340 626835397 673846879 215114249 524449384 185631298 361115883 817982387 959602550 743792369 917483679 12100985 888663121 905124540 922642910 933031437 984247715 304780909 624105522 36340604 991135900 994238539 996840754 679869098 781264207 791745343 804750965 356853089 973315588 269696761 982195630 173551213 985982370 921750902 953995323 208825214 748986958 563749568 960790973 778578480 807316202 497798938 951156970 392675626 701363940 792455888 824459239 822896008 929846850 984115199 993023019 799446649 897274829 290961287 309983935 890765898 924801821 398994819 461110786 42313603 835325341 611837871 764713004 573220775 580737263 846815781 866554638 429800160 557035270 723092905 882643412 279598176 529720654 357456779 510502669 503070687 735288397 964891421 968865064 243194946 700908860 932494964 966403931 783146999 891222317 755954890 778002382 408723379 628852916 433080437 614141110 72297968 271035179 273615123 996028073 990790740 999302850 494328558 958902216 599434653 837834581 950333899 959176622 279961982 927893706 809650880 854905317 146693168 601529032 921547776 944296439 559501518 896274429 594004799 597706405 770738972 787628014 702499058 952369426 819598418 961533566 994609448 997221136 175100934 806610162 463169160 872817148 877325554 906667192 662478574 824200897 185549903 879508499 237071807 403812219 718791168 801381729 11855149 235870027 928290130 978890171 196460965 818663443 414605182 830120249 869415778 965351453 66304411 198979768 44569495 173590854 305131549 425745584 269373559 911940389 670246971 685543571 852835356 899086745 443014939 686896313 353997122 827576868 934926064 996148420 492844486 792007229 87986036 282142630 81834491 716156704 878308707 914955255 803467031 969029480 317723512 395980836 649782231 989662494 866916334 871271623 92682495 850465293 864488991 981270765 19182128 118561476 944516161 997583775 276477425 403769585 581350475 603084687 640859986 904667483 716147023 984361982 947238559 952618766 881168274 909382146 114004093 193454905 743702777 954955550 870023152 890123645 208692124 369030273 299429248 895644987 707216092 907309807 129090320 450864063 851535920 860342656 161723460 338099350 853950149 982280821 851323249 890251878 177080109 268628986 27575782 679207354 990712815 992735204 90858611 797186864 385259685 425723838 743665943 819184762 649676815 975919125 799667953 915697751 370772549 860703670 984663119 995041144 547342643 959809422 282633347 484093368 178350018 776099072 921774661 972808740 175733861 846597057 192627400 607826414 688255801 987067124 284883307 288700408 663770302 867848023 363872446 900158795 183912458 643633482 336454932 735266772 16429012 165844984 407961299 876330652 385075386 802582317 599294774 716425574 910841434 961041108 334241464 688025816 614467515 843402509 244027035 675703155 893947123 972009628 200458534 289715559 765159041 973094950 410851313 433625326 706520055 726535872 397595068 989127807 580409485 776843715 956137256 996517270 527031763 966805356 267171465 994499722 151906109 515485306 715906891 847049800 858818792 902548750 244383899 549329972 822829207 850928827 321451521 352180170 106841008 808492164 508126970 563857640 86601091 618806167 93401406 650822978 801724597 810721212 621581543 673800167 926449500 951276474 84523727 452558658 160955741 840867440 148349505 390176918 105783047 570783570 268716883 336836931 33018524 821657464 418874347 922272773 824368491 883749583 588363032 914193476 758566595 947287768 440154918 552494389 141698377 767706438 690818770 912942888 441541984 725695763 700049147 798605479 537248309 560143942 477476201 765701229 326437158 718396452 599983207 820925583 624073367 939596198 960692071 968034213 794162414 972871202 707981885 831179261 825799152 909625213 650983398 657316059 203885475 578579251 795297986 821939254 645835228 720913011 62386224 232165972 180458598 891728309 640596108 996401819 62888870 327851428 333817477 725936395 132325647 198133831 994129970 999952716 717978719 936075489 487598900 732439129 666745413 712233239 597244574 970927978 366758934 553378770 712597725 947861859 452232122 854681722 899400592 950409103 671756198 714036161 129125362 823010113 233663553 315193823 197704830 241920132 290747643 409659546 447248799 937671923 585908216 909699912 798797722 902794695 143358246 413705836 123375033 136964879 650322590 898583591 291730037 713404640 875471577 886373727 248685789 514691844 606341645 638290205 430758625 436629999 210128823 578469502 271489196 996621456 394826595 590354117 722209096 800997445 505963232 856280157 51443859 499623485 611291122 998382787 936108057 980083005 694859421 836229231 506691583 721362164 296345595 575891334 606437044 893029573 357919968 536159713 779112863 982703706 378503794 747537871 229850491 541121881 227132436 696925394 340254489 642085888 257974335 374121519 981550762 996191764 725111799 985041388 232547396 532645060 333837078 761276717 53033539 612590749 385493344 887297825 952123183 968986091 450365447 804657442 27903611 867905267 777598698 958836491 766988052 942450198 556786430 938615579 469408778 746353043 891476469 934660922 491598239 958218168 541953566 780314171 614482157 983870167 940549603 959939916 910340637 941890229 277094072 703721240 809305291 859784285 449106389 903423350 286432937 586953825 131018198 477945034 444028176 817717110 548457217 926242807 76780274 552608615 320684074 394577705 997560613 998753209 998892161 999849264 527698051 858735855 962051090 994849364 739665780 962854130 155866602 680693034 312931992 804415041 350473462 814924505 667340375 961203915 579117970 885881431 70820433 73815192 293438120 758036432 208024156 747058491 39445038 698370714 208641646 393125980 671043114 945614721 809317711 936572896 981522390 986224396 18848736 114512520 388958268 831009756 509674985 980067116 355342210 550701374 17644996 288876347 432897566 609992326 731220628 916707482 960087686 961122076 548791572 771192337 556274832 739181719 36529255 257673564 950191845 970872846 920749728 981884897 891097477 950722558 349797897 999590296 123106005 453304682 654040646 690141440 950862336 965566746 464215548 884389168 619158253 704118521 307841782 648976648 307801230 365218369 839853837 893713836 902913391 992751529 583104867 979646905 73986365 589045438 158882809 295378548 457232346 666731708 236284500 838841063 514283417 769912457 295312000 311297664 847969624 998549238 435090194 728303441 65120315 187776611 240554432 853499866 69511632 110914032 493383201 784480328 107780825 463021010 209625290 737763444 347123867 488133129 720148889 835467703 208955888 630780323 686892064 994852453 550674334 647863620 947044429 969832008 120450090 284779610 780424621 793749205 9075167 924775075 869108588 895345058 69749690 575025865 263032122 891142063 938077681 988895346 4299907 904640206 152247435 446328045 247484282 895849345 515875170 895833979 26710152 191568315 657891860 665053078 416196628 605402280 562669219 980765705 77813327 381146092 862152562 877608511 867419653 981637155 150224970 822635450 389489456 766895920 814690909 989497523 463817079 501189814 92144791 564933022 10226542 508554644 23236309 465106438 533037990 999804315 979316253 988608185 244420777 842741872 222006145 929302415 594378098 659908285 134011597 591977775 936898789 995352084 750563285 796181154 374619570 775878783 583807366 865657613 317985041 466786258 530019575 680485532 972524060 996771627 824567266 969878010 86601328 362989334 27236359 821350892 501323147 581259984 317860642 600106423 445724713 699760636 213996338 510168710 235331967 431280766 41860814 195255775 539880636 734049760 851920214 889899094 365627485 832005468 261664603 456560001 898348801 916713796 386428782 523829314 531032103 782892830 608425556 625651525 937596745 970303017 133724125 188239886 925170132 927477092 303870393 920785531 339720237 429372537 888333461 906699928 774410565 958404333 314512836 505563213 981508852 983811740 324583219 741626104 448232448 723632850 456112754 838492449 513616510 815974346 484120596 680585356 59426383 801880143 399621168 580574275 107526826 456961713 750308095 924842737 400626048 551762704 473117343 847929650 391994236 610231022 480065485 740636965 744341307 964666665 417244104 698925539 466727557 798122153 205741836 879862492 373105138 722585237 540480716 988181154 712458250 832814433 42851990 106340489 455342402 634052873 31005923 756280523 395123269 931989046 760257708 820601707 937437838 950806046 431190754 904255375 11882052 965623287 14951586 986858951 173784901 356571921 824150050 938701729 333241924 532177938 405223770 467954510 88351968 723141108 196692448 198218308 334081564 781204256 115790800 327433029 878883393 918895378 673768603 831328562 843017113 849432916 548589333 864058213 539163870 951453623 970394337 995540305 306414188 554044567 317607480 969907344 299733202 361094392 80224453 840600326 141949290 265259372 649685666 968784211 642396998 833916431 599350414 979355698 380988124 909128088 694505980 851426470 758929008 788820730 207347329 824517643 806135763 877228236 231521341 356297980 888793468 961059943 290321228 970856852 386590064 657642120 54879970 535420522 873704443 984186428 881838283 994329034 375969592 916441875 629952842 756858503 776934493 949135938 532105211 817370308 235662665 771839648 661128905 929414131 822246150 944571166 460889656 807051656 423305253 941082133 805421872 930096914 631444916 726308619 57438940 80468848 33340800 452220502 109031909 392027409 166792791 295332914 32325910 138622338 463783385 773801823 68022547 387401664 458084809 627046443 635559478 706304261 646366609 833684270 683385205 833632999 786624180 928449487 27539642 152889328 877772619 888641950 267708864 779185914 797767850 996249626 356244518 503546874 772170783 831627968 955839203 983384134 537638430 717517536 375965585 812765485 673864444 918191609 788864342 862354350 185619681 981423602 705782417 881817680 177721141 463947708 601332494 629017109 766293784 937529481 454273361 992680145 147932019 591237251 440229771 734769919 808669573 917887654 829071044 843955689 332566077 698309087 88278114 248507786 92113281 987669397 998384023 999502036 442734355 837685844 446507169 615842915 487453668 806569306 211904821 777661692 603442034 708851029 149129327 314392651 126282887 764195964 978729162 982047375 131906256 793623477 340133209 968953771 597879389 683189011 438783379 552858647 895807703 930331083 226471910 374425898 90811025 256957606 797745049 904494088 700064289 725932538 544790786 633106822 718575653 998607580 289867717 984593105 498343213 931395079 20732619 854289193 930010331 971249718 385277204 481595503 756927170 793005413 139898721 964725941 398816937 603925618 224838707 227672034 971494587 991498506 833457471 942332398 836855114 881353389 63073887 924162245 716914600 996073000 899132525 975635983 90390917 539813249 622198793 884948492 290267660 390552217 839614089 980459750 980387893 984145342 105023798 632481314 6537928 851185115 185425589 234396644 23573761 554245848 373744758 529104720 527601352 544432702 521986428 748370586 100735438 372681425 719392102 727563545 941866448 959221697 859046081 898760416 225003736 607757862 83787030 97271960 50291533 121066043 540796928 937823270 38271663 628029418 867843700 984249737 428722163 518002945 471641073 989496030 880487496 956313534 59465721 469676679 756866367 914089124 451797939 991852740 923368052 943359307 882265129 889901173 890064824 892124925 16530307 285985642 422498516 812013576 37545872 887873386 498211076 769804860 944296583 949863678 619548691 714446923 728452664 907035966 740618211 889753981 15675252 163334508 541746503 748123163 633859700 997114906 394988275 583634030 638171616 728380710 554737328 872373942 307946099 844326151 115061140 525105879 551297046 588150007 913284173 966962715 517116164 538034164 773317250 985728906 78287547 778319599 70003549 329083813 9211624 117030366 581439827 987407706 660567104 950902698 10445902 688168455 527677290 595180858 810918631 848619705 782528771 946348244 100290617 718729480 560749289 807975730 557499999 592832289 806129572 968508169 624678147 928852696 94049417 291673956 919307065 974506385 677164836 685857334 640691576 922778484 661118303 687573336 904669827 930426631 641799532 967253156 79762578 996410569 530339887 804573899 62173651 488196141 158278600 805765288 898953079 974822751 869920712 956379860 725267085 842108123 704364851 866160270 344148750 995246633 743538233 868884602 795753667 953175907 216030764 639715954 888776162 922076071 44842629 111643689 34357645 507188355 933646923 995436743 369156832 468696217 460786622 538558601 999113951 999918019 21743374 57159653 259533278 900384024 661161529 686295037 453524746 645959757 406829799 505921215 311620089 443301411 888679941 955647491 985455776 986902177 298852913 476422418 755903290 778970209 674867073 864631049 807334665 925036637 993254969 999926783 563836721 937935443 310609881 670439980 636264370 670180799 864648082 940338771 504883393 720752476 267837182 734658003 119766280 583573497 500490150 584142671 831399655 950292486 287584480 814904691 520108842 981511075 666357925 733485795 692322125 751900251 491058927 966834697 363927310 893530780 473628627 683544812 584428490 978054082 128609066 821093695 314030340 789641252 866808347 993893161 29789372 136629871 786291161 981979076 520623337 848542727 5516234 818246200 762525582 838563520 397121111 579734723 124578512 400873273 348620026 988556665 560752355 994500622 701325612 987460577 220257909 621529605 873667677 947836812 661326161 883332748 748512930 969613705 485507113 582295471 3678390 556053310 655510541 694913219 158065758 300926384 189943103 296751221 844195020 889818455 958950251 984220376 75842949 190988080 176498059 307061533 2705550 407736215 751249392 883950078 938563502 952749827 738336900 960359613 57008153 359239204 807102147 878409647 272003857 949082751 892098927 996616208 749461908 982554301 679000914 738140426 468102943 703466315 839870469 978286406 94685369 107006804 781579974 810345433 66850880 882490593 393997523 876211409 427315280 811220834 675957204 906561116 924903887 994992226 163120521 749574576 932787312 943960835 627445904 833605729 45404228 856467146 166780803 968701353 161052602 460618551 136895846 734177250 434566788 455720556 274655481 402189164 457925728 978079165 454489134 663537200 895209507 926865342 34854557 942500300 150139705 534620474 778207426 807700302 971520670 973345766 229120014 566912731 714013202 746718791 401254409 589689864 335256671 693314894 481919792 949268885 802696786 920183286 745185847 842417395 241908092 845952592 922600361 985275510 842257333 891761294 751383870 928956330 340726216 357047447 7679375 480633175 106958632 808589600 869504965 890313094 15040687 870866356 955917297 978711131 236396414 828353200 438853818 703863358 123152507 836736109 423340825 536023436 530063797 703950173 424569128 441952986 345477536 565784862 494344609 867523075 665782127 782177159 771258459 923038653 82453871 790556422 854606708 907038941 819749503 903009411 770902166 897039366 227304501 252892766 260314128 947850050 95294421 255364377 37757917 966456161 44372396 265303485 540437926 919230603 615387633 871051150 229044914 562783595 54379138 926814807 174146109 197328831 589575019 609040617 333081681 754568928 515004369 764167865 608958091 625920400 979018114 991295353 915755205 979618308 512339855 612042896 406866300 518985822 77767010 929452036 213456032 609997861 15939565 206236956 994398295 997342116 377799739 997837812 763625812 854277784 746699255 999971776 349537041 822341143 222173970 452760796 818724674 871037975 261194708 954100763 678315813 726198354 42814485 529528991 632448432 964481937 313493197 645676160 27811476 387458436 834067189 857575026 708903472 950942106 376797820 620827929 341982028 364557703 346715065 769131646 474883631 524040660 614560728 795949376 851448746 874729664 297223431 956342537 578852875 932569370 147108622 304288558 819399676 903445334 549294456 559140743 690537677 840880059 769681590 794578069 917670340 997527281 42922709 759701182 789495694 920631605 305837299 431491586 255484744 994172960 777666604 977504165 679195775 728785569 158617826 219030340 822891458 827101456 617805211 953222189 991364408 998966484 732338460 932556834 885438170 889178335 23590785 804118473 16790685 19762448 888071402 935081396 918942661 923477615 3249563 573365328 771640226 822360877 687265156 867011353 646260045 941875768 694568400 883148592 842553206 910703518 228119616 811627884 4317317 319439387 355879305 837571270 49137947 935308461 462691502 899682953 974265505 993654360 999400159 999877404 353499680 791897552 296984326 949111252 492643352 547812641 1467494 585721212 724201785 961370621 533713389 684459023 118717839 567932289 818510022 895201624 179718631 878030991 925616098 934391598 447538621 659580660 492328517 642813845 129853971 795351872 424070127 962867117 708070254 881180647 519849042 887921118 174581684 936823104 506889801 726568589 460011644 929681547 530723762 638353029 347672236 748832578 279765268 391521661 906029091 935544053 532452303 911628114 12012473 987453892 654686968 800367933 481745243 956064667 557390674 901913183 764348712 765251625 170916511 781365545 486923780 493035118 182432491 693071231 743377945 953052864 363129705 585485577 821134835 839296303 957728185 971785094 188002266 867976199 874406742 960916714 726948466 918124738 737010400 769620485 474784306 478033324 761842260 956267066 196347378 284796364 786862038 915794979 43261617 481984621 396502874 725407116 700316243 941022517 624131818 637601242 997270660 998104738 947616050 984867282 27489475 415665345 878759524 964696914 474245492 888826761 624158505 822537398 349674815 429293767 556128546 862397334 588874392 638830009 377122191 816147915 254674192 597589537 182671360 640201860 812510845 930219094 10262671 702153144 876766691 986251304 903324111 959899005 851125057 907290758 525309848 710238336 16803731 748730339 908569107 912037882 820907136 835750505 71206059 722420856 113337432 711006354 753977467 870462980 157666335 500220338 894204960 957693261 724997186 944193076 34037438 965309559 300823678 327742676 125146778 814563310 274177553 286162046 795536102 948493975 85121733 819259134 771805797 931034084 401487929 909189511 182959231 501254284 789213504 970525967 744721563 986127102 652566625 683397534 513815283 807621962 282740503 707859465 911667660 921729808 349219194 633105669 567449255 913106172 267895652 790048182 698181331 900252460 704408922 979855451 54927984 999548971 118253733 308283909 701033684 947263940 175340568 223863472 808648302 873885625 874506645 921507061 887015669 920969742 224694454 950493602 921091455 985986206 827996212 836284377 417611316 839215610 278365966 836353550 349581848 664247487 127485069 764101841 644968613 803716687 882720567 892672040 71859830 87562955 311033786 893324050 485806685 958670028 168837240 399517707 277560149 415366175 535017196 674229595 797623768 993030778 758164489 917944117 521148738 686648702 961411503 998895374 416594292 657598714 358678112 476529571 809241775 939888040 153771040 462440643 514467115 584479634 414784789 763439258 155657596 225729274 434441863 536129173 856985785 930881029 550683706 624021896 197053271 826136106 251289800 620715343 611886759 968616921 514709172 774528997 508796412 556378438 907403113 925945459 364773143 652611793 303351798 620110747 338995651 734467232 912231947 965537511 642274267 863068873 577675270 917064578 948443236 992417583 313351484 965415222 943801930 962138064 787807462 854908053 655539521 752222930 479057206 814274042 246739504 802336409 764376702 983527882 998743788 999592618 777168288 872826406 497705942 627181287 48078023 226615877 73977472 321721423 435105246 831711952 527524755 620017926 534509915 697999215 157741128 916463362 413662388 493631221 218228477 952828134 85367059 839558327 349664041 377852462 900068754 953069820 173117945 573648813 156171489 418075634 727205885 739102339 100308790 243547790 389654800 915810326 404775910 995321371 376942894 499401819 532791933 632981745 318782479 843298373 97066730 467817481 525719699 912593883 319595905 854835507 385371912 715892833 470873718 790154765 844428060 883495510 858250103 959334679 215229382 513309240 286783094 808604395 8275911 873236729 146466182 780820942 277772689 565483814 254844578 732743405 974722778 998193620 743380837 945999304 264213850 347146732 179902667 983846459 692096333 963372589 678807636 934933533 425567833 560877387 794331718 988770548 544151305 752503864 473852084 536498130 131553085 231444568 232166647 884412744 272737895 334969879 329143893 536919314 455370128 555573033 553169898 838052782 652517610 772481261 820440050 853864333 511043382 845526084 163691205 872455552 923669779 959749764 917456936 989558292 203034105 867614691 192383654 956056584 480984626 844617960 292876740 959553027 37178329 332498229 706338017 906980182 902160221 948945813 121548977 234246247 964237285 996199879 239336969 394431837 73725770 996377385 149033476 631610171 108400101 933056776 243901887 927858895 777289281 886463405 88559043 614274896 17343108 143132771 512861173 727062372 287458378 429268581 216831839 972143107 750230729 937851275 614048326 677437100 861518812 961664893 781914614 875189687 131528987 679605117 546578421 789347671 197776539 830031676 805919530 834304815 748039842 934860834 32647053 920656936 918599209 921814527 210650813 595289015 992115512 995408780 775065852 989057277 664630447 918192637 606871601 665931914 474234747 699263327 586401039 613074072 587753901 982443874 79789468 426728469 659072507 851070875 900574739 941396375 760086081 784166575 372573120 547731302 741795676 872952814 723270756 990861330 63169123 316780451 530935368 823467583 237632238 271991432 994984597 996148709 845674610 928169489 637933656 856507459 9253675 260140755 910096968 947436999 554795522 887047080 300750765 904167215 236928985 896456293 550305855 568499825 327198508 847155612 68221330 165890958 765953030 995782600 562272842 886371106 177644207 583768289 211167796 887024614 839622817 916175294 630350507 863070491 418693989 639414943 708899333 730779167 763377575 789552662 624355102 757541755 897374982 986678164 661010482 946240517 342363636 802079269 609347147 620820041 848351217 907048272 66237170 339014088 826871030 968474731 130821771 290075930 688673766 739231817 621698073 749216883 830750634 984310924 669653419 887949253 150813540 211296940 748648422 815371847 14401791 756517826 519739028 927599826 61438214 673449233 866608047 959061170 610827593 822889943 347711122 459081277 490293026 808955746 146936669 850625302 409536788 953959410 176809894 557664458 290999757 408818792 198537389 439608193 37992415 176373720 329482754 648001465 717460098 742744281 783024809 904471550 72039505 123809592 967131124 994162705 629725337 771747600 864825746 957576527 749177502 859355372 597909440 698113689 470634401 565195699 27260092 767419035 19064853 771327456 182123930 797996155 646680501 827936891 96128921 205971918 713842233 793540562 101464641 798227085 912418675 929783755 176627162 832398035 52130149 998318756 986525672 994290872 217463149 873466172 295964857 829952745 13372510 315747005 660611735 838630306 667209063 946028564 586384339 739473102 320404523 549163963 38400242 66909198 11223472 901157593 79354593 309089291 986419271 990740065 216094097 758726965 163876395 557818357 901489811 902709250 44250665 238950679 363588929 650411540 234305785 513667705 709881519 793501101 996891192 997532440 459082649 955883412 337101102 886955158 945694060 962890811 55504045 607065413 578861100 626477965 490729494 704946166 308181027 710086190 407687117 597490896 176545075 702188245 43167850 823128190 694217132 984285593 837485764 995597607 130918305 619427005 544747107 656038915 353759868 518784184 581991275 640746066 499406173 768400199 997871580 999139892 537333620 970407042 848940717 965137880 372638745 480840012 598147166 938610419 352610407 773158733 680878225 821653424 493007007 528544369 911198185 984490945 481920081 737467736 620858849 631344744 394722646 556727158 689223872 842274242 440382169 740929403 565067804 979117748 689416803 793016555 459082488 610361807 251425639 719539066 543084954 838382757 400297836 956406947 556645773 892348623 782621093 957375842 883404954 918801968 140697783 752713849 263490146 691779627 843511143 924946546 116215153 607205421 444129456 782849516 410041039 648728339 962030734 978421797 228689461 407937932 869144821 919798289 438366313 627537319 998929444 999144460 762309753 884705682 842338989 979220992 467442992 776166479 624772161 827680758 600125293 906865900 474543531 734629389 802368488 802984608 453670230 540381733 319154051 355773873 138744317 720274954 293580028 587952211 183628718 224597079 527980761 640913665 763851204 889674506 231148195 609792658 126083388 174297931 992715573 996614985 651102319 672666144 39449842 777934341 641798825 776082249 12570620 472339567 223749250 554796855 893020406 981304548 952460900 960858727 259678437 823774072 312816906 471419203 385369 487968645 64826101 456931077 311313842 482023623 358166969 885850586 824261567 842264024 793227733 815737519 536297632 785144975 463043177 971902471 865064745 961650401 255926051 463768517 92071226 602807463 206393011 612141189 67992158 484676726 698612916 816416297 550419442 637497123 722801304 862481203 883042006 931161868 917007728 951609876 935066331 948155114 783375166 968685838 813100576 898015964 487532920 660715187 248160896 316130757 157157380 691687523 117405782 921163366 554595797 794810542 298795298 779640012 542759146 722850135 32631405 294241919 455202463 477728059 978431116 989352455 361783146 923390626 977893891 978555144 99500282 546387323 880494075 996156029 693323572 719621470 364871162 993359665 727771730 906214595 62798296 837179280 536473169 712408857 648528012 681021578 610481724 701587373 786700211 912273931 254275504 758427929 334374808 407508383 489864772 711106280 552255536 637953864 890943069 947496567 562757421 812314274 862172005 934957680 744879724 850316074 658207832 803627319 447064509 816658110 816458758 881130413 1945247 120984659 949516696 957799791 290233910 622814583 672327874 850431320 597036937 693567732 341953956 819349407 255032091 293646681 853885279 936310722 439742408 520944692 523416072 936983902 947144976 974893937 428070225 613913800 982375657 988376225 421562460 492784918 210546942 405831615 317686163 470357206 10453561 218770237 716096577 880369490 898597310 926371941 24919592 142379054 696567855 844572606 586207733 917342798 491887816 527487194 915753522 953118033 263265514 993963469 117057211 400114001 840488148 876235443 760583785 813752992 822799860 929459219 717320326 770769195 840641812 926503168 979122450 993968086 516615432 827452409 241117137 947284570 32878912 803972952 388961026 520263671 958023712 977149385 583440648 715045291 652018126 895739356 209505143 660977134 471967893 886797827 266502000 679799044 653362471 824803333 908749447 969962734 181726369 950731019 953744155 954201703 832670963 949987320 737190433 825626228 210344790 677148911 458743358 459047431 586229544 911324715 286487844 893491893 397595834 792844422 13148958 177169007 89062638 545875487 882968272 992060369 695916399 726566830 170236429 392793460 902170398 939283308 974282836 975265993 277556329 546770543 875510427 945933758 3678408 562107170 966113856 984584687 754424196 759431177 51670706 836025578 514471021 672635740 257140889 691629765 430971336 609487670 688561750 916350497 676552845 990099181 147438130 469461205 242168319 964849977 157481984 201979270 864806503 992699813 805995807 958564620 445875486 763173113 899962901 930105298 46430323 765154831 915804393 926866584 172224579 534795675 115103514 962381696 839496427 975471433 228289709 278026065 16896637 488738062 485483211 806422626 340942735 748353546 979684291 990021686 55921529 559532773 366381253 955898347 89055235 561683992 603598046 808764857 249476220 813773934 991401485 992549400 757705630 811923362 744986265 894829656 214209812 454953682 716002374 773927003 176243003 630588050 772670833 836210172 912753317 920960080 134543874 829973114 428639414 879245440 449686379 790709281 912052629 944925806 467662683 579118626 622382586 731619548 837583765 929885957 803101499 814898660 254930834 294260986 121371438 252565819 279393173 870536866 366056166 991257899 523924497 912770174 469525873 856480596 587035595 969059747 549250019 734909784 248638246 710833378 412717114 529270572 559204865 891493967 404004688 943052389 14606662 344536254 960865463 970507720 9591360 701036126 436868122 460172546 896414135 905047285 151395971 569594557 692378367 734137861 878595187 988209257 617038824 939751291 632581851 809556441 830079878 973147615 698841998 723367917 821749064 968287788 369114671 943261658 645341385 738203986 118862705 641004674 477978291 928914352 137085566 905729809 619946471 764714889 319166129 394884572 382920390 913173173 379437596 897080709 104769595 206973074 285127621 862914123 609816110 830003585 207533603 893922394 587105979 987607402 101699263 138162738 798615680 888692230 94361508 965047040 75456371 808052632 626546637 739024624 137596853 772632560 239406990 966923082 308503269 436920336 896936651 923542389 741617475 795699328 42294950 366852384 683301183 766133511 471415648 520147475 420454216 803196302 535703108 937910166 285224932 496740030 788298554 976271636 184464367 251957395 313965911 904487261 211729797 937251726 516762779 955258165 664065522 878004424 209861953 333223036 997529700 999901862 69574775 296873244 628842287 632002662 336807873 357791968 986961313 988421571 50806883 812029329 882756545 932434926 166088561 603505775 177921895 808753845 411617170 497714969 516435045 918660811 671906325 853984370 873145945 990897080 315016232 950277772 713674059 980161179 10947221 201136300 31204223 160737455 565539741 863206153 301157592 518165376 23319230 613837766 481840693 889752322 502591753 706732280 364689611 569246099 847580439 950994175 223400960 898544146 5610007 227764483 670863628 847726291 614774795 759210667 692959180 873994762 405914753 498020498 330263454 423531362 594044636 677751144 78900471 770893122 543242323 813917606 681269002 838259082 967401949 968499735 817977639 985177984 848136561 954174032 706264903 842378694 288643997 453696497 299894541 641754934 238705026 474547114 507647777 985068620 102664630 773952710 29717172 221764088 68621344 215617477 873272796 906267708 507473715 908406305 688696449 791684249 526081751 963804670 895936505 938918487 992165674 998284779 127883568 869281324 488462086 550466690 121710432 342132799 283589076 513205732 790277707 997833046 812701381 908348969 190551267 587745960 188081659 250270741 243325642 430732124 78452781 924222680 256854059 278902139 565138838 914369705 597635110 785585401 120261085 521629421 72623696 530745896 41964001 334374022 696556339 696667313 594167248 920682520 987247747 991435637 610428969 990439650 894026840 988208101 207532754 872350195 66606990 575871952 744889035 802417219 506366745 798374788 147115048 323920767 372429453 996805386 625950507 718642812 707958021 991440035 745051751 914494780 554516166 873324913 450243714 939508495 767378070 961937076 646443559 855219659 328971721 360837762 337216736 937875570 861411849 917454320 783250094 926121571 119663059 281765617 444792752 921569631 527865555 778612580 593232804 775519031 101851040 842618912 450077556 619481922 888558693 920066532 354229529 582382616 587981784 605948315 809459820 869116645 656035802 906766599 285802655 837617684 399240683 766819298 889532614 932355032 416213332 745891305 799955030 988913496 485776473 540062147 950777424 995546068 498442866 832154184 812197636 982070063 754492765 811856304 299471085 675250118 675684419 912716685 189109412 529233317 925478302 960738160 56910759 306940498 533740902 631554272 709704118 752360897 840529828 855928184 745279040 946759387 962190656 992213346 732813276 851917954 435945917 683885372 610201368 901318863 141466086 911753285 495907023 689281406 940195474 991056317 141484916 179474228 607951018 987184520 759809827 956062391 432738243 712953303 795410409 801394810 995043864 996676490 809469977 933845805 3077850 83130520 473342065 754264721 756340395 996477800 595478817 606728238 76887068 96566090 591708837 866312240 137936578 727010801 756520267 857350753 740840659 934706413 247795980 285361908 7103464 74450176 423223826 851177094 190722906 986411261 603591728 682784905 840075739 927179298 824611988 967969194 148387235 464017469 609282375 811396025 786588088 793306865 648806376 668611815 396214169 798229915 23503835 715734569 222149139 582921103 195095296 439672062 701719839 970273466 594487334 924594332 103794742 757157576 278798498 619555751 68656957 366728696 744218410 769350038 322283013 447318375 57250067 626914023 88709290 807693940 746735585 916842126 860025841 920518566 350949843 666457430 331271210 424003693 830073367 873820270 841107525 956828518 224011222 350048369 314814016 923119910 622092640 737294502 454572831 728041285 813326575 851984350 379110169 910827891 406442503 969620716 931927420 946236708 229831726 715309832 654587048 899835059 353293953 949657490 104181814 235015957 453998505 853338826 23101985 104904967 845479903 904312906 261415011 884461285 811852446 843887875 165052804 645123916 549463788 838644716 66112600 879544201 348355539 509940413 58336100 322572934 501905493 684229852 243330687 678403319 632647952 675395673 859165703 904753857 323806558 617627344 653992035 713554078 898456316 952022575 310366668 603398186 268448492 290066642 617380186 933064907 130598333 627081976 317360849 891815794 458740352 847436863 205996478 797286796 663168742 970400639 63989843 290725774 432986214 494703585 706216224 856888518 550728198 873430607 995137217 999458737 443107162 906242633 333614593 897744784 800468362 806741917 162106227 300028932 57666816 83438291 644180735 662094698 148950482 528128912 590048777 666612920 422532007 696610689 941651056 984844407 82762670 477102219 50857970 199702449 580279201 881767387 680231758 964834911 165501544 302065561 242315012 385923017 92739658 175371489 666904994 986978234 706294867 710156252 897358104 957049948 810525242 871820239 108650598 401525941 880088904 945113203 862475649 868276962 338344650 733215580 733626514 827318622 758275397 810868701 526080929 992599289 128794200 493431431 882850519 901436428 575778814 921683472 356872479 750600091 160172276 298432715 134024909 791877769 198647409 635507899 426789631 517862600 450090677 879781767 166932122 331822061 437587764 636624729 946922137 962751011 311206070 935032159 225414859 494681011 798646876 998587146 932046619 957854291 207769797 770835377 29357561 806688873 264343849 517980157 654142541 884029645 510359182 879866376 139827552 245034965 922421588 984517561 974906398 991318890 124485925 935947843 739583865 861499584 683151833 965860329 810096872 993256216 781291966 862899565 226709424 725816020 100615739 237452064 982099000 987501810 667510859 890792473 259757231 435437810 920377346 936972755 86604380 744745652 614658420 935391130 156754617 283192268 214758269 583485300 656366877 838614890 298868575 765821097 466528724 789385172 519414132 793320461 20764615 390106711 512664121 671190184 697489274 885719925 353381417 730495642 748741298 924284173 339594102 396621802 202928095 943085974 791873310 812554867 104690410 604937158 969400451 992953631 227053375 696806448 177217621 685484797 439619959 634223951 772686199 794847470 703753244 815652628 949460948 996156864 683332413 693950051 704337246 981975525 103497884 934546446 539190738 596313313 720580725 758434435 218082999 951684698 376553628 850411024 416326357 913442960 732867188 983584660 201931596 958329483 856376237 941383348 333193214 627239304 477874405 514904039 133315934 668587617 475630638 485867549 644481935 972143754 378583420 426043679 202401311 408676767 4606144 824698699 162696964 618722207 268369823 429335177 761912252 853231268 785383765 952337926 868498289 906783943 272416780 467434410 149717473 475721809 624017659 795146170 577261022 814616460 378868957 396142023 284439600 597345043 848678061 917845340 578442855 601353027 364670396 950095104 555512058 889804314 323012615 786733333 678950021 731922304 511888051 674721369 564946394 868265752 649593988 843665127 711835689 881813655 294847190 627494740 760727868 895788946 128801048 790742929 416551695 751072219 315061398 583740549 819897796 910690143 698441297 751323119 150227745 514870318 624063953 730752489 442085569 511851069 330272699 446003953 163342445 662907672 542751495 854598898 752848587 907532454 261451014 658871842 110134132 586457894 862942218 939769020 205806186 663031782 433340479 945930926 375874192 687718580 408724974 842994830 516954652 716081035 639798138 852384409 605969244 957002126 972499305 976691301 318709086 622112769 862994912 869120039 409888602 849830271 387418366 999165819 519073933 849203065 229336026 837049466 725592595 866997367 567877430 884293545 120590551 210945635 868363979 880200606 239735161 293969689 832226892 896642479 383625147 860190602 481962295 594219759 192184226 354136190 985610127 989807577 508755645 988319308 80472686 944005694 142582701 365941525 308741136 524234594 433730416 732541064 143075246 275017612 174707529 782615795 143831796 416352377 200108977 993192318 777690365 905992507 119064733 177054063 379505057 848304173 743995690 902117012 201300863 724383115 70964270 290819758 136030428 828389308 958356816 965924489 334174492 403796003 642407830 844315871 122268880 873206182 902692305 961911130 125966305 972360204 631696574 954123681 340632211 986201121 137253339 233320964 441589715 982544884 524091601 628854334 318869304 444278686 573874921 722102324 718625254 953005698 146470650 193501793 57715620 63760338 800849047 851999361 65241169 501373657 406312495 584124914 414549693 881245766 384117359 875471191 278452975 308606859 841896487 950914443 409346505 617974449 118396183 503311240 373641929 383791183 675259900 723485438 284590645 829592936 218967739 466893761 401665929 800068889 439514892 912573062 496001548 674266603 576047183 760189539 489792310 688373573 237644699 858614635 785168321 982334848 768199012 792852685 393546843 600151871 134981938 303585746 948654150 952652417 488209266 859641775 764713985 848071023 263498121 512332101 529840662 549306290 85707315 502505223 52427704 161022444 780165940 948421836 654600428 897322132 185806578 914484184 438357816 594859683 914186267 918692929 828316386 840758659 741423911 938215619 223562582 714887340 176092902 727077598 903941058 982544139 896518140 916051476 340914043 861864383 933210469 949713942 963330246 993435762 734235114 791158992 126225167 544743706 883295015 936316828 864338969 910283274 328861303 430427259 376419110 745529160 637346110 947258637 492110823 519309016 245742732 832800428 143328260 306539835 593558256 638699193 537056185 743807888 22961767 728831345 404699718 754403572 884359068 987579241 886863045 888833732 871705143 953208096 468093531 820193056 786719102 981385075 121637630 547381661 354307377 849506213 460941008 811860507 963690850 983760828 118740606 556063505 950032656 953949286 548216941 796840219 436576686 757946105 690815386 762578848 965749283 992493833 403113792 527968289 971760811 973305851 335239926 464109535 735390951 868176777 373497634 375200244 150496722 825537611 940347564 941378629 370126155 832060656 931009910 948316738 527557236 694041480 777767920 804551575 152401065 980579850 884385970 918217116 529005812 720593719 404064508 415910196 715160802 938266934 479106522 857485326 774566892 946721025 923097071 963872484 442465375 634678203 182594326 559079439 127609105 845521662 905812024 959740674 683265191 866494648 635126665 863437202 5953489 542091378 620134501 733621667 444588923 907505328 712596421 768355944 629723305 855040007 424111742 748523422 938757065 969802214 298838980 871696512 338540635 520140772 994488199 997470227 469168686 705260675 523324424 764077859 766901826 974924638 337070279 944155311 324378881 714247030 962012796 998750722 279843566 449912219 425269921 930160366 196243972 912988548 667740557 778339833 175269516 665424623 146854953 154358373 648278942 683515352 242457212 528039034 166623084 843538099 651726206 693687259 515483540 909180262 525051321 617388510 905307387 910323677 376960919 443562936 869302343 967805452 154817659 320365828 530701759 566883129 921974362 932309625 854699818 946098488 159478888 628306361 310018094 663057457 156827782 219759415 195663816 504088265 529101467 807495665 396104203 510702835 994486044 997800205 545067106 859394112 325579130 689402625 365691936 679299915 82235088 223057914 204391564 293223987 648204692 818280788 973103107 979606369 929999442 944722510 104074006 214590826 829410672 948081342 527832610 984884211 658338621 992081103 543308941 967165871 813801132 847467140 230983500 253380262 159579501 552544875 19304587 669449732 252137209 486424587 785021341 786539226 162810268 885724744 590426404 816556602 19110720 312579213 558102232 697700671 29139404 935184863 793638089 926727441 988481149 990817460 776524410 919184135 331774220 402787823 444380586 732123111 854610265 894705142 927340412 937931523 617558974 673516301 414044164 887921926 730650981 960287005 116167799 245094810 145197958 471281947 695987021 821392238 773260913 831777994 420023996 732265661 130445034 275045050 940287969 947250868 850280634 862125657 233766303 681809288 680212122 739479466 425775034 455560483 148818651 403876110 166960427 832923340 705761969 799730335 514060896 620185963 447033325 518439295 628185867 896209703 379616507 772785865 855532392 887028052 479859598 874915457 413800580 481207230 520987416 833421007 77809327 378224775 179373401 493744318 442973362 924598699 70226796 377403981 222971482 984258473 963948766 986724032 492120732 784729442 413808714 631322967 876020800 998534896 170709163 694004219 249062382 665046071 305394155 917784502 44161199 799880737 36926252 693414737 642598665 736812226 558169042 907277494 105029349 402612454 328435141 599661026 148080956 730418421 90973338 806981491 680046987 965033046 540448704 636790526 816266373 930223092 911688987 992025669 440160046 859124831 527381788 768016684 664141263 852056981 319993622 857395531 588672964 909236364 31030592 294899375 587808189 661037109 588763745 851634555 961160935 982484031 767371957 843480455 439418279 603788710 172478982 602688641 839338549 994363393 898942990 979938516 313608050 328201972 489342789 922042608 366120634 590676288 707394892 714230071 619052061 835345649 224193216 300415816 465766272 958187604 527510132 730018377 627752446 929404755 693392072 780487090 430867593 559548109 231440566 632913691 403002091 981470467 531720382 758553015 686105377 897594786 890934629 917766308 107953502 980106862 243521561 931848353 908932968 978061154 403683598 868242495 259895813 755900902 817207280 905867367 233359513 999467354 403090186 776058454 603461138 904716243 751393989 984524550 254554966 851206586 397075751 686366546 255962824 639639044 784685584 966355100 743153111 765375106 235804491 599059502 913089831 982301004 29083872 874389677 152805765 294834470 250925790 629501208 620608033 958272498 807980088 966045835 873154979 915935978 447560223 670567822 896390227 930006195 883083762 930659899 694514223 778261600 109160641 548269058 625847849 778868507 717713717 723486248 916886499 969017670 831173273 840983612 292838900 960274243 764446789 940462487 861467 654186768 250810225 897956774 202665317 369722517 336087479 453213233 490002384 713315701 766223621 836024627 688457450 876516027 425037877 470912411 833518725 903333229 540939536 541971201 410768321 775941652 910759184 969827092 399417940 463021288 335792861 489026711 741432778 880660693 751687685 968101296 268047224 335970222 867242457 965044590 493345400 864898878 783584945 947669395 476190034 508422267 282654125 517573851 263998899 545915173 895310241 934736414 432840665 977596617 469536219 629087716 549235243 891296072 489755256 995721280 818968 703279153 33099856 449034253 577765967 809521496 624997706 953883542 176247114 891435399 264385790 277404622 660061175 741644563 607296907 800013941 666571301 695376397 557352150 939572379 267894731 958689702 473216464 589606777 937112524 985866472 399896733 675507714 307176888 541678193 858653514 968716963 863402406 928429824 758458535 773600269 33224284 178775415 124228701 607970675 513387845 528623015 183728309 241031671 807187681 823859604 704567272 722778547 908719029 974330441 838219729 916525275 148774267 563891391 557926746 732078741 749580770 797849889 125587310 618962473 138711705 168525512 520601309 846414644 939049880 941003307 852429087 905898596 845441674 880816229 326439776 435247972 353217648 534697793 433204837 477117937 660594374 882635537 728416472 932392703 877007635 935554025 196068601 270750931 407298819 528446593 698134015 890077060 131967741 449333170 316400488 854814991 558385901 842379061 314855058 463527262 690641873 793499317 407914156 927954950 625079457 728189524 915534949 918924177 291358498 367733066 954486554 986551361 720365987 773066567 574208371 859863189 864354295 886628110 994915318 996616394 674260353 801546026 853458367 978595668 819817078 908129498 480451567 494532415 841829588 909638052 926207628 967513894 799891246 802184823 926698870 981983186 870118193 881633861 898630728 928356419 203956969 910249665 494935729 608580979 870391442 890872440 841076735 937738794 674551360 993201817 807394650 838993450 936331397 990462240 153569321 840130824 154182259 889469729 740413313 993766604 826249971 981967424 759166914 874503925 382144157 486480880 178925086 227081293 764662302 966392602 474568259 711997408 92762698 389349313 361821732 410192837 720823980 803163359 703364970 906682151 364485952 763828468 902946391 992120108 560442073 759004328 219544128 553731678 370418924 463742268 814530080 877398929 661438598 774195386 597695032 966881609 145649445 636540619 503199241 976405921 790136187 901388375 918836226 960546454 721690607 813592478 401156435 542471813 763346207 888051311 634790612 834404560 442530789 719187072 400010338 780033881 549767680 982068343 877099911 929098318 924815021 953368136 10221107 798885513 922691323 933051016 258732914 382469860 116894018 413958121 704786778 869236801 624822413 976463968 507864852 733527661 343973137 954536003 316216058 476774402 157387299 888112254 934751963 977309696 909840991 961815865 860357436 948321039 23719656 991234640 55220644 666233669 145761191 516044092 966281204 969099020 921198391 986918934 626339236 834393382 54179549 734030663 621243801 796426014 362342378 850504441 256391057 931577819 597072356 808614626 154900163 231176534 520485470 917074521 623010381 943474686 728541217 834931482 326426997 782664618 567609849 716920766 998464724 999434534 93304897 471297426 414755417 929496421 671557385 973669484 106646213 479448542 303603862 618531420 99092253 859639820 945389401 949391736 13774433 529049481 832296785 900742177 289268813 975306388 332138641 973093677 554968431 842803835 724573201 779131272 559001446 697312864 648050495 670575422 966511301 987227101 523492679 775793469 495258907 557020622 521280596 553722525 104043774 171731476 995704970 999963898 309618011 758942381 284239639 442799099 793074228 881492766 239056799 994560392 558514777 645265015 540975667 962151515 304065571 719718411 911106291 981219779 453218642 473307779 328822893 972328371 310627128 712436584 735555681 905078657 59274722 182051798 847267084 926871091 893760640 977715311 278224228 756471201 53379757 839092407 329738953 862616431 336602845 444516371 583862743 976634049 361545846 971974898 956871941 986364482 843787635 906153417 78683046 608270870 418133605 506443838 258607003 470667978 70621544 704784488 814084488 959006741 169459056 307993391 855048392 941910242 80819068 969645370 526251247 847899243 292831298 616393749 613237119 874106037 691406536 731597045 812042934 949054346 667141792 979864620 330256621 543683105 98104058 557806095 334854352 858624610 683533005 921813381 482995667 621409748 683832201 936502164 197038570 590626393 403834252 989266114 30809880 513533196 655036258 698282997 406583523 851179349 433782499 811886843 862175650 896225424 744866499 760265229 478827638 898835585 111269100 717199213 982992708 983855427 422315569 593771110 862853558 940279919 744029432 972303685 550708322 911719348 873748653 944180185 709996050 893223309 721830149 752346174 409251255 864214469 536106545 634124873 127564263 308050047 975897626 982907346 426215399 497905454 622657551 631728660 503081434 912356953 145673006 892378704 715839746 785093127 24098119 700150185 994556749 999024117 939832343 979672767 94634911 270071606 920511485 969440895 841492627 923665360 504567866 855594116 938324553 972165310 732088291 927322884 41438720 245754002 883356502 896728869 722952624 859655600 956879078 997367338 884565632 929080716 183375399 517637703 607121306 715229375 910714497 989032158 275735970 605343351 405277546 956040638 227136505 493777682 652336543 783620000 320308704 696819362 985025159 992759763 3160663 424295824 470959408 690325534 46498597 189932937 506723890 874579692 58307940 796915471 276422074 372786963 488477203 841324051 55779485 703262758 159154157 445233918 611871962 683255836 45483996 194700850 76947045 723376149 793691599 869278254 623461150 681845519 377645132 629970632 557516501 578566231 43991858 377340195 232842649 541161866 516986372 685242426 17450487 915408902 861382751 958371764 821051482 835624196 540781015 688423331 392870456 638187616 628494749 857436769 211580083 456421977 513534029 634341976 764158372 892340753 73691538 152022319 191423918 529835444 525282334 554709375 286676455 710047243 711288723 762255483 123958576 724106630 163514286 414417575 281580757 666506996 799855233 866377685 22972696 544870435 52957961 199174787 57262405 622971168 42489056 728864993 98462570 876519189 983737085 992634903 936548873 992973877 397830635 759929520 960131164 997950512 407766068 998741183 20823371 328400204 787218362 938712173 960598280 961033573 842929754 919788129 293431141 969234402 410815490 543462286 277741497 972173302 489072880 668218695 963677074 984958887 90483196 544580402 731542414 891866995 697616443 898599087 964593361 972846533 316760480 692298202 487558265 884820094 595522770 616208449 599926608 648431896 473773700 657419363 245005937 576566709 293740162 365798279 90200286 893682256 211809085 907538756 770931657 979129957 485311976 576516058 417809916 919614838 270506092 553191107 416052849 617154001 945494490 957318658 516425807 935016284 337006375 877669657 429074535 514609435 92560954 653828060 164601425 190622871 990830214 998069851 268734401 376700963 686115103 769671839 50710998 709031632 285266861 697529469 566214068 818515222 261318430 826192067 1472821 970111430 941351396 976351034 730830520 753707761 418749607 551263688 987159157 995961650 439216253 908967946 650889378 867550505 583173955 755398656 322385646 594886190 865502131 991615026 207105983 653715604 681347280 757565785 700671239 881331318 563603597 748162133 255692466 306211096 997904443 998690577 785081558 794837921 624994001 999798921 362272141 642420924 213759868 511604858 918433647 942169828 521283136 668244392 512900858 913645160 197952648 264327657 723060647 982160397 727928652 891854941 302549612 834824468 449381907 846118295 55909129 63247032 462924812 789593705 864710997 968934141 939920389 952851132 401865339 515087677 46665455 285236390 405109315 718052960 135324016 328586473 433221564 817948920 524621572 737081152 998267897 999114585 757437998 892162005 217083839 666418826 344863136 682106901 959424345 968945340 834014713 988581085 487270453 967757185 585318693 832326187 383988596 902143697 462349122 738419526 638276326 747378579 975477779 979744740 935396984 988403937 143046314 797152446 382842786 418776012 41419268 165844007 461839342 683004661 445580632 483371460 769719019 847547636 333638392 536043299 541486299 819166635 509891934 610807059 424042127 430364432 37247509 658605767 755419176 865723581 954182851 987623957 892376246 980655432 238417011 974215474 213026132 778941319 588377556 703071818 434670327 782699032 443788962 524655339 176882830 779693579 470085370 500866770 74813823 753255578 727944894 802560044 631622432 931009756 892055148 989201977 89614390 722980598 871350588 955170364 471930509 800393505 916371906 920740844 789541038 998843319 73781268 464856478 954865158 973159046 336126357 774508233 17333345 307889747 162726026 404186766 852405088 865302471 105614965 890446710 582092386 756555936 860288379 924896017 881348517 979340012 432676059 727539231 571202181 681073835 130023744 809573886 783611769 987312334 241856585 296604829 144825075 443191256 646578616 982803682 159457414 443464069 380704112 536245501 867728640 935115501 521310632 830232813 381700574 863833209 962728723 981121937 192096034 753053163 123792736 647406673 724286349 746277783 7665868 694265304 562542944 711990516 753900780 985067120 769219786 989879513 202701064 990585493 838054258 894056621 416237629 490034457 876944042 948357059 657310101 937105959 33868617 863535390 67785171 791290628 700822821 914044308 618308799 866987882 78275176 629483912 809479921 837994720 111134163 726325551 49648359 297827125 211608127 770245893 985197569 993553852 252679324 989339902 329125388 389074896 903421165 935640280 750498676 985141294 730172972 837754512 645197186 704122761 613940245 876406154 962397556 995842292 759520132 892597582 264953120 644570513 854581053 872504850 873154474 916014271 71003348 914806757 399673781 653477890 656211382 756205852 838045446 960933426 384877374 947065321 95052429 260349955 849681219 887442817 532239649 865125932 506007043 779266415 838350876 846278552 906751808 970456540 62580947 453971327 619463187 885509849 93601040 792147911 496369520 652816228 882107585 886875564 905220330 922289555 77601572 902136463 225023007 870579464 418636583 612057434 251266092 981347811 577874004 643624540 79719958 578298040 833531226 937322111 465438514 486059302 472603960 728326597 626880127 667717177 980807190 995792645 910375782 944510748 609064613 759925876 766799401 933621860 67931413 404796265 418323266 436195860 336483269 742976711 242044308 913801610 38661907 746069367 158257085 648665870 175983589 237322250 220144212 286375742 988264908 990266731 544164813 951781117 481666650 988429779 812385691 991391028 615997724 625692483 541264969 621896803 43963125 633107545 186319041 912052896 996045151 997947964 638901678 904453200 29256150 480969932 55289442 903709811 33709692 851737382 702534302 912901581 355722650 605765366 113040594 496367725 817185935 905282317 588435068 915854121 927829494 975924068 535912552 756724787 215769326 636501672 736173613 879166412 842991365 892894310 74240587 775952819 351566468 758961537 519595196 576437569 466579592 486940489 593684502 965038466 865461752 942201819 292888232 849414726 420790654 637439386 79050774 953111053 752657270 777342474 607515670 732821341 747327887 903360396 298179879 371920969 758904136 812960164 683120802 762257795 895171975 919408349 815283961 899847681 497938942 604191973 907171875 915870471 299727917 301937368 898692931 985573986 341553245 611685802 867507568 878076120 306674216 912848887 594732247 902363615 351634471 711612749 650343211 830554729 753261298 901914306 890094034 958468661 146588172 620812624 339902418 989850898 426996439 481811966 864488771 870798550 691610571 825199729 513072724 600347387 841292620 905987698 141076562 333402008 986627016 987450298 507341046 856550869 959754849 969848335 329692574 969294704 845231629 898951409 659111810 850422540 660246910 934680654 59654206 148624631 232491227 474349796 325703941 688235926 301038802 865036384 155425176 654275988 273260848 340256546 800034555 973260953 207272880 385803787 423100957 751419513 559971712 622935815 753617199 922938117 174084486 844769452 960745099 990524852 416989279 653554795 180908251 821975650 135858267 316727397 573154244 705373409 179943245 844450083 478310726 967775808 211900173 904423887 727268170 822979313 720601880 793648665 261644995 948634393 652822854 745535466 105791259 634201407 937793725 948987277 639345125 861253872 294287155 734961521 325339197 641175434 994882109 997815253 135302530 367817775 795696735 824856305 513292271 776039335 210384948 905801842 74944404 387864424 469262280 705323482 808556651 965761064 818508275 839370238 494659096 989089708 969044069 993815984 514172812 871034099 963487991 979931392 47563883 266746351 669470191 758933427 453796959 953992399 992977430 995213337 427878744 812477493 288621946 611933133 673878676 767282770 804358799 904996138 874153106 891786310 317481092 413122709 915233794 949887863 355045877 972339362 957229080 994614982 333104646 461859323 630904827 810856561 42103735 662815504 973846549 998618618 533173487 769934562 691050319 870872662 197218912 484073752 869141658 916503034 771012073 823129227 499628988 804886658 151308546 737073800 74661994 951378203 780220452 871962556 175662554 597677964 481769775 602916611 208585266 894707345 568495775 749871748 68969457 578347039 718492388 907532618 249664409 889958933 160925823 703584792 505683633 638262411 732497255 891181249 134348075 385256092 91321707 708766817 661702175 773509641 142980399 323497193 410095299 833848082 304694013 728952771 195231593 236425360 918500875 962692239 920880860 939447367 84944789 221593070 158438148 978847770 852383916 852779119 194691002 422978352 641557353 707676590 260813363 586831260 548125081 557961603 275507904 564399494 978540049 993023853 321028254 767584937 978567461 990639266 199206684 596136517 136843851 531083755 821639152 877626033 938829981 993067427 744301880 818411206 38128169 186124938 245363682 378850598 425416404 789592331 502303334 571405904 341558609 755262766 467851484 785713106 615597344 937180927 449123389 493385149 699844436 854903403 699191744 862747220 498978836 920422545 947262431 948567070 481391862 736873844 574964048 991010516 737504113 906861468 645172471 692521179 692466294 885717791 320200809 347349099 692817836 805879338 971317065 978469984 47972135 963407069 956036852 962806374 751804028 983764608 684419822 804150139 639216138 729530573 698707212 815197290 64394308 221678440 985553744 992832950 897310538 967985647 370174113 690310618 451812193 650896898 597427514 694287285 598950189 949192711 518011747 633545706 719674320 882728869 717434291 957560461 851274108 931432515 487538200 882481972 32671770 902812127 222314344 366205705 469299629 894365244 637934147 936273319 49388312 971599521 455500922 881388470 940234661 967980365 425008204 803801979 803449726 943914628 34867953 276075736 337871869 405619064 326834476 928027614 500113590 836159063 528543947 894060306 329289070 896279991 757857081 859210952 624383202 885324781 264687788 409468196 831188739 984479246 450897230 647586691 110440468 240290941 788359472 854468985 299809141 978788401 1746510 100244899 772340961 925025439 738949699 960169417 230349890 408847957 616551232 861934826 106366873 466913861 891386863 908691333 502645533 904443034 40177617 835538099 982541043 986511576 258700538 466477854 313707262 487390073 579984935 635651601 533730598 755636234 369299164 376371919 415166648 518736138 394285665 947494020 586459532 735243125 313507815 320927524 260370104 317547356 996886084 999792326 113704575 318509070 759638419 927122656 642560318 726235452 741224632 919612649 523574169 844698043 278227149 606440427 702488053 717794101 379326339 812930516 489034508 627668732 398493596 674718932 889587791 919880283 827765376 871287718 214643002 318849112 646784142 771146779 560594516 770139352 28544841 936941112 425645896 717710325 412728101 908332406 550394992 636284240 689384207 984284386 544392774 771269037 711632342 965533584 960118622 976631246 770261934 781912275 754195193 969828436 517195548 657107453 284879189 557759993 21204806 965015425 261658090 442195079 187805749 922652206 288164269 314260595 90026921 433781583 705346071 725649481 572174394 844901589 263569290 449692216 827992079 966618218 585683983 668094053 468976517 733577356 262068298 690029493 152799210 756041535 956142667 997972855 900782353 917856405 864035156 913899359 722166033 927401134 180439395 365255482 929148836 981319337 400976269 876750842 708297028 826149987 235141069 909670890 195970110 793718278 677906067 737804810 481336857 603874936 379950537 889378618 968332917 996280075 716819162 970671372 229195122 987195938 247580258 342796575 420419638 904946230 641132692 824642330 536930413 902395067 95803631 313752599 744014355 752862911 806980770 922083277 201759695 262062470 32597745 469146741 794357763 962037001 247904090 662618383 844602944 924053735 937171260 977784320 884900911 944711226 518042474 557602261 138414191 482930280 440953132 732632401 487995144 985515905 136165740 590115588 479794987 943299833 274635602 754500661 482778633 984971212 220285711 554937744 684736057 705772819 468560514 635987568 605816202 698260185 522319141 951661181 817865065 853074840 526316775 856430493 704241325 912811738 322095153 629136833 241179812 983722592 526499702 740859525 733071750 898768019 662666056 697167303 158627226 742651264 942993513 987449653 582552208 720175028 960569982 997585625 180639980 789753976 546414084 837309654 332918342 540129274 46082671 937345589 383235853 822032234 373842274 610455878 336560668 436170910 62906634 685235954 174305689 895109315 779853625 784179565 246400114 542901768 60865422 186366377 682639361 883511944 834158235 955985917 820671475 952054584 116946347 745510481 277988697 369386781 565502480 741943977 905566856 933427575 668800868 958368219 886140040 894366086 825526077 830184171 38861310 875473718 912749865 931063968 662666707 761842300 265630224 916348446 414261490 461359478 794561244 930829129 965322170 995662122 198549189 780075830 95224866 903287551 974215683 997660952 230194705 883256444 248314926 274000857 140952917 552460393 630583628 897243387 503666037 643025343 445423297 471140276 776824962 964338179 985184980 990227115 911961423 956046693 273348828 513634915 769949610 889125473 443531052 559312680 659113735 950160925 738485209 779716921 195109118 586026900 273326351 903538706 116818992 250464086 826090569 869994716 1338712 195756753 658473887 846794713 578552279 675706420 859093292 905545575 911080364 920810766 198642700 831223974 902663313 938905787 640782735 761350429 3415906 711491410 410692654 560716417 307592153 852823010 127016447 434880774 658146830 682293367 694702584 953834083 159931110 271048419 469103457 763350003 21290792 200563501 658640835 968299390 911648954 986730248 149904645 619161517 571845343 869075928 303574097 557644070 393058417 608635850 157779909 643520544 299242497 379013318 930832958 954791101 11274699 305331164 649501328 851564260 397860932 417383986 284412421 720805142 283737552 925335084 860174491 930540909 814215513 985046255 210082636 309285615 438589450 627162717 136622636 697523069 577799372 985317273 131303211 535627152 164461688 296498532 469504887 703334860 410861187 528762817 86223163 817555433 660640177 980620026 261620889 425073582 681412040 696840721 504756134 920473852 389031760 687122899 159357110 849039990 485478624 710679578 788082627 872703627 965189807 966797256 841282262 891314270 352541995 511150684 407836400 844323401 430895230 543064098 337303525 983433525 70972254 577401563 825819557 858313383 459436405 631292212 916149590 962412147 441639890 488224049 712610242 811681628 242334254 796327146 514131089 622035551 613959287 829312632 652576739 766345406 559841293 580365733 622089941 742038760 672584316 799484234 891256953 985582647 847218414 925422288 969450096 999082313 333314550 704351093 221115263 438243387 123938756 325308811 676811896 866263847 168293693 633431948 848436324 921734727 145850417 178212586 417790998 504852868 153171136 562604572 215169463 843599751 737664596 903400994 756582095 916419722 404962745 433887598 674255763 978614538 671155402 907385879 246079357 859617967 121782424 637951491 229823183 595146933 937737780 966926614 702900868 721327784 189338502 416276089 199154051 651651955 266880471 644110369 462910454 732685598 739690798 779875832 672563383 954331628 518309134 683172454 470044027 985279876 881542028 990334336 110157826 462236146 54038856 683722936 807842098 983317568 887543273 983860186 564390770 736354247 87308860 338046228 622490649 835195129 298860427 513301632 226568992 394138039 962799085 992829638 485052790 580845425 450857955 694326507 938432757 961284990 417889482 830569240 536887709 552476526 306861145 527453070 948331173 961139299 393479428 654830008 357713897 903565225 862182103 911381702 698583616 985230785 814867381 923375060 303964861 515789826 949143061 958273391 898413652 950378941 6425492 761166185 188463986 576571154 733990015 859139690 209892846 476385439 216494983 817748481 890545994 933667749 671097016 684019373 952792063 969517639 463752946 583467101 319415672 586781723 14816307 919497565 814334122 864164267 867425876 975190044 519195428 750859533 961348053 986545712 28996587 784212049 398097486 915240340 532004173 965766924 809284753 844401575 935135158 994594601 79071617 386895143 619854737 778186491 152320747 317307132 76848393 748305916 22738820 424339210 964806938 972146966 737183727 813694349 897271780 952993704 586113608 917785339 873026649 984471609 598800843 924391384 822391753 871039118 26446182 335779581 459559597 966951746 549750770 770812507 991893273 994978700 984760362 999080707 680189961 908297519 179531984 868850081 223307910 802509097 463143208 887750041 571551699 734251899 490463192 848822497 876107305 884742633 721570982 824362106 987950860 992359936 988840533 997622757 888086682 952301807 895439354 960992259 860213269 893129762 217285672 302547361 273403958 700485733 61747064 747662184 554139068 676734625 44371396 87653934 152134792 878847515 611466408 695901832 258439666 544970829 772936564 827279480 236656368 689223133 275444965 953906267 74422692 884183281 989836116 995317441 514176155 596892505 467290139 587514054 297352411 535140919 441059641 829208126 154047755 970257195 517696243 776173764 507751368 557747141 366130253 829973236 501586134 907136430 205498989 969839903 876987495 931694215 80448772 596797994 340881051 422339705 503781222 610377318 796352110 950324101 750470429 927758938 458608296 997059157 677075771 723880874 143400838 388957361 214693762 714805216 28657997 737363803 590408522 683188910 304469327 817368336 232139720 526156373 884324146 975822301 837649721 920422216 820333659 873565652 571827762 646282151 998845994 999175182 502904170 900610197 522109048 851255467 615015879 826027194 951545987 957164119 346724325 347662295 522026806 987150745 160556430 938629866 74751577 712524592 923707215 946031268 509724973 804397910 639142937 717609139 448571724 938738302 804772432 818434915 38977428 540760391 619210977 929186180 112712199 276257501 473360507 582842122 631023799 750644364 266042554 763502271 793935350 955968650 729776235 933730372 385116336 729347688 434028 494119548 409926251 693593242 110741026 288083948 177384904 387404942 682237431 855614808 691326330 691351984 839695202 912988232 313290623 936628627 548219396 628759609 872085704 970246191 198189718 643726805 999008814 999387894 361243207 964649227 440569710 674623747 476899774 773102972 447575579 873627779 276900393 631323060 918687340 996269981 357773894 595248003 910340348 928577028 140523347 207263795 232899410 706435286 215642043 220730008 229707723 823009433 291889134 496647614 544297352 757358480 999071793 999273868 921662830 985915113 44513364 214872896 971793644 986516019 344915796 362832342 760307954 916312051 172953798 306604138 64304390 274585598 198094266 413204916 790865269 879480066 831735286 877578391 377074562 452804287 286565443 576489629 303793085 714031010 168722483 293749115 794099277 849762057 636820933 756141611 211974112 459127096 625533337 671785102 260802831 494642218 495457034 780602221 243463218 251284563 720822605 783550501 610893333 775976543 687088933 793797548 578183051 974647658 926834161 930694937 497952903 767187554 330721304 900572343 602104455 904730267 712087146 741167730 768065569 834192466 117720160 795106996 126321754 307820415 215791189 518309175 361977531 663128483 746810849 777925820 560326126 975581789 803859381 910593959 123494254 163206408 445659218 704653422 338875463 717712365 794780964 867767036 421225973 442453343 46932368 314074935 519021765 670230891 427368307 519141493 955550083 982372102 216601119 572706751 922041513 922744228 295489637 535436490 689653688 785786010 712581803 743715602 671642788 719333433 748284022 910903762 628733104 677729186 440795715 697131457 24246124 473110683 30754940 942409244 646365030 969162395 798980244 904935194 540878310 924706735 748716561 916219456 996880614 998461010 234502753 916091458 41470354 399749681 921808118 967740189 289225969 332151041 208420220 465504941 868188100 873574139 989191754 989469195 816897769 932416360 949419249 997034168 364365931 881022999 464115768 894262195 599776598 789757234 132957035 895534928 461800264 787814889 341872325 444609239 816070462 867457050 593352843 960249502 524885079 988511082 445233145 698023708 544321539 770648304 778832904 872649138 645653585 938024910 875933808 906102191 957781087 978274899 146102520 907360159 769527587 837372083 963771077 976781942 407814622 688996241 326268571 627702477 951656426 980914696 806471532 953103073 786873439 974359099 267932236 560497843 6773712 926679212 480566881 800855039 188735753 441913430 299890542 722786616 380377043 957939082 307331867 696599901 239123172 496612565 113398496 556942782 947266900 952701465 745290919 794092205 237755901 781436815 645543527 902377312 26940727 638518391 652428981 804477030 756572554 995224793 42906396 305648468 695164634 834336191 954940963 965068454 691875062 884959328 811849561 959486148 928969496 990226352 78079571 788636974 641221304 992612781 316463706 717489374 569028613 874718538 905431265 983888406 184972165 292554770 862576103 955862338 729683643 855896125 704251119 746186205 351309336 487543362 487721993 806626309 254479871 516082022 389335306 658421505 631789523 706123453 598532647 613854168 702470803 959717588 153112881 925323326 140778532 226621140 335957730 993839286 239760484 303911477 356369237 396848615 209646916 294350839 766869104 878389187 79860601 807091251 134981541 490859944 26271445 457495095 687803532 876872590 274087204 469868802 484941070 822900887 345651224 604554563 935623086 942966098 627444501 802009541 690635245 702470610 658800671 685829852 381881593 627735407 149842903 500636104 286357042 487264931 135567282 707641484 726205996 890183096 441668267 821303714 675940295 735977592 794647444 936536677 495185741 635897938 562764576 994633454 665384060 966134331 206488413 214771006 941700686 978285623 817060308 960046298 569011595 865097373 59654710 66909297 98246590 849875071 415935993 498265358 771101510 839421295 649408696 933373501 562341801 658289054 844994771 890850873 231657149 676814277 728974066 923937810 324430470 827638571 511242263 740953508 713582243 885592441 897921972 929776142 591523523 844563172 393287772 928390056 747700800 829952829 505295283 873126484 844088282 875602701 660945047 731548625 389370200 494795317 630713254 691181988 55781199 993700659 867849166 886261884 805289183 842246498 599351115 902272614 999349552 999971004 942094159 973467060 466663979 702969333 36625991 341459425 233847446 820890601 800596030 999686723 536612596 676921845 558939119 907239728 479972501 560623137 417494288 622149972 421789806 458598746 967379576 967998772 757199031 975104683 404181033 861467489 701263973 791138188 39442292 801672773 723757956 762989442 302508891 375765338 390523251 722482026 615173422 920659929 426634413 810336896 517179683 792088840 988878650 994040164 909288865 912335062 41673601 730133261 316605722 482275322 230452253 366097058 253742903 301902142 76346354 807103661 25966155 866070692 513074797 812178227 811273778 871664084 121872631 553756052 141520016 561274135 282494543 319906393 159853277 857069839 46877242 183040787 573445925 819800087 437218700 639207232 67960376 180441471 852795518 876078953 529949648 703485231 352910611 892678249 691723866 692036743 145568101 955245453 323949935 408639050 514330886 922618717 299667794 738095899 153299338 923883431 268903315 855238108 396851229 867700845 878496239 952567168 392005739 995537302 51619552 528082893 71807670 485498037 114107784 374787115 126202211 437801656 481786325 841132646 510078501 583309581 64458697 124685172 179368958 571214635 30932665 783824336 366164375 788628021 605594175 663675331 904308542 965807296 396287655 548859735 785769575 832439172 957607978 968782241 118490543 507921160 293336798 511880818 571386357 910865471 314004196 385019300 837236755 837751449 923722126 990010473 306837542 660143316 384484320 994496387 775680510 828208053 565268921 961833417 694119902 934483655 99689794 621686328 233534268 644713391 332728080 918136114 62093119 644876502 115116645 534431734 39789387 126434757 601651195 773275764 970771173 991910210 70938991 105794652 39587635 544624370 921756367 977120836 831001510 948097132 430122173 454202500 60987283 239444491 728474875 843845859 926529594 961867901 859250849 970467617 733677532 795588907 493157143 637861561 151679954 461905472 338944681 977071193 933134080 978303718 279934068 891488556 987375104 997209320 552832612 924162177 845406257 931947983 928368051 932338746 800702852 834506457 958947674 965251773 131630808 577713346 919357516 986542681 248530859 608894480 443124046 474474180 558498075 641364521 333564317 990367634 601147493 703952658 738497742 898996293 364323655 506728862 540114247 863318399 753069482 959303349 643345794 966937007 357760751 738580798 752195652 849140577 766063558 776294157 67284901 101948916 160795672 303391269 521558120 782548757 678791266 786718539 202022573 596864268 919073498 982816504 673787253 717823515 786099221 878939286 573677907 592472812 646893565 918705020 828266637 974237704 376614910 999517574 919747490 954599614 5113014 145605028 914679072 952925150 645868848 659090179 830101109 861220642 620368280 868623977 191054293 797246775 107692104 747505025 744173833 809024444 477599230 995989549 968347286 975048518 956496467 967812429 124238659 661557737 180064092 423369618 580203265 743207276 376169968 837689984 710459120 806276797 897426403 913907520 885100607 954878413 820717389 919267521 30038859 627758465 823860835 980613560 943583489 964990459 31779100 871072483 687197572 916630937 996961777 999311458 483151426 706834526 357955400 722903003 889778232 951308619 9980569 39571003 506464579 569593617 58563902 435666721 758372596 982868679 148708738 298189996 617500287 726084013 587704337 777591040 926817095 984786942 245532149 352600242 320886324 911415207 189344826 245471408 286327819 987414586 887339595 921426102 633558154 713431534 184489554 463077881 359667257 409108658 521865206 837175103 159375737 475077941 206013043 957713314 776062864 995947453 211744397 391561570 538446422 644039000 928757679 970365722 214754982 983150355 21074319 794943600 456946193 810513122 933570797 943293572 334304182 557374687 524581188 862827890 330686191 797646449 909301750 910696140 220333407 587136041 181372925 223237110 82569290 88510620 662549951 879715199 75388488 683432937 304686669 580265538 242518652 797353330 824314495 856721730 403481619 951695717 798079217 947728546 859868925 905249999 634758871 838515242 305385427 695164195 154922572 635628174 551612323 591895017 125212368 606370935 989921366 991084929 98376323 517227451 387152762 886221659 14490832 460176999 278256678 411710877 327769794 770145879 870262632 944961518 912505812 976166329 199682045 561162482 67406223 163236828 151368264 228501995 103578595 563618010 511346354 647795016 18757467 213316493 16250180 541906046 967888688 981557964 254806856 412759727 992544056 993288165 202114350 807687255 92793502 337355214 986766849 997833358 381052439 569802446 27821762 143434879 699623033 780566819 713051888 825278408 714506612 897116578 700249090 751427023 475318369 844955177 659836227 855324587 585094765 837402614 613803825 934888489 167280671 597082216 318982732 821784297 820206055 941066071 423302360 831911441 277320844 972139593 242856479 908244743 550148960 572596146 388191823 908689346 231343631 874228749 58861988 565765889 850718123 982039026 89384706 671519725 413927415 977344041 600170150 858087924 673845190 878589346 803560139 905321666 469535607 897376308 205662137 740654538 510977876 670690634 709375397 972465197 227503027 835584005 266522775 751121687 242731482 704485780 321948477 997317534 28428664 539391085 289391581 630577953 927674747 987319346 123656048 979271839 62749410 755749596 556470074 684734133 22954324 558879833 867105918 877720159 696243091 953610156 589380890 614824441 162362073 447474884 620918945 827462840 988464988 990026417 873373311 991405018 503564959 547176617 582742999 780584596 682303987 960556443 166625843 796980497 400079836 625074809 420418499 892304148 820297666 833482483 554316906 901442213 247322279 430278571 489307431 969891495 276421509 515915825 172238102 973425840 824273900 932791108 633942634 662525407 376735782 463143481 535258357 958046965 273276026 432853268 530604155 706814453 880617852 933655973 245995219 380758278 973100387 997027194 544013243 621211608 659612406 797286733 643897201 665254489 568133950 659679686 668724396 756301739 938393192 973589502 615108461 923622601 590397452 955646325 756638440 875500551 999534431 999807334 487823821 809355516 94760203 784053191 182431598 451168261 168865705 209171396 309237275 924592730 867230862 942170152 370922425 816413623 913141111 959404980 72400567 523785617 656656792 825409374 296691783 694698066 784163173 929812486 160892583 206859587 923945210 972504771 966561320 969058718 392422117 897379096 362093628 453271866 957015669 959407921 392784568 894692168 958159963 982187549 385984608 857137972 959293299 967637496 910272716 989669188 112606854 365849010 819949300 896934165 321728999 759940342 907400003 931723323 742088701 979500603 910304003 929701044 708092069 755644574 169827103 625861452 245651089 940594631 640924087 848854225 998257974 998275337 404323167 444223008 988131435 993605665 759385380 799356591 562819319 630829319 426475014 555872916 587923606 680308087 455364478 564655385 539913719 965227539 784100167 900374981 748642454 865020178 26012178 675519664 803627371 972910087 791732609 802309136 937559239 995744122 10043109 45864137 490512926 638696890 803096837 955982702 664000334 972126390 898401322 939506112 243040994 678285691 308317913 516718713 814022563 969484590 765294212 966578340 864070632 903083932 957191294 966465284 618639295 995360166 395616376 912543072 856967600 980592952 235274697 558220710 861908978 969649095 172709249 231500061 792279097 842117927 541160395 679295819 642886168 991993596 659833422 979192311 153235866 638362366 170098265 890697833 689693604 823941701 502491230 821147034 841460811 845547890 575992686 654326751 249497375 507548431 295754830 988722060 177291882 879873488 622974774 963461526 116002847 488329566 536226273 909150784 815546275 889286934 430396094 633750792 517982996 818395012 778722102 857581420 791477699 819261639 138125294 464049955 19895030 447675911 778085104 992993764 490333350 521150782 174871306 811849069 313879825 433097982 179727646 473288802 94027003 565774156 704118755 905052967 984495029 997336946 321609429 941039916 841337223 923256792 482202863 594425767 648768885 962644324 301312595 802532366 56937597 956554540 426865196 844238249 249166429 973589710 46602000 335880799 803032503 935273663 685050506 847623489 427726350 451323426 725293722 906369989 988496612 994583067 409747438 921727504 146488011 805290810 644846177 831493502 549317545 898262896 424879054 985457430 665529661 903018407 911990348 914333422 468238468 752293908 937373654 984845284 60458418 611656643 974954571 990423018 816049329 883501937 281379125 519599152 151109501 651308209 722470076 823480644 129933799 239655080 835319470 939542784 672917973 702440212 501051890 539610366 690267009 944375864 891509345 921185150 100072859 897693703 432567603 744330850 705909369 905483320 887026776 895806880 135230543 755197594 108423217 163010003 998586204 999714669 370571876 390540432 971628815 974500331 551926621 647357519 269412239 655271902 430263969 515293007 196188739 622423342 945744601 973447641 51290663 350924309 366757083 593676338 829915428 838025857 623369481 946593201 239453653 848362949 300116683 727003824 560516673 929812375 72266483 994604000 727075724 826773737 648000126 977796294 47365109 783716263 294509598 648284848 120192375 354347881 974440674 997673799 180520977 996936403 931531851 976354120 938625837 945445169 741403945 917898474 832119327 940972207 483865747 526155603 801698486 944122946 94778442 264634649 446712619 563953532 752165968 937189326 326623007 633402420 475427506 773996441 884467534 988065722 467414226 664335412 275218900 606536993 776728769 942657705 570676897 938128855 990841925 994169963 764957325 893811725 795742926 849821851 706056718 807771152 482915570 967098800 108815207 817131824 192744844 545194336 329051593 987643647 702497513 749606696 347705021 937374816 938538390 971032263 785040468 787624548 393398712 553520527 951189828 959160192 373410821 614046914 653868455 688936007 86723133 876626059 555100255 940845807 861592486 908641161 360699640 689187069 682334254 744890550 667190485 878529493 853680968 964801468 240379640 281054380 984831379 995625894 40203014 829175604 868585689 929854465 181179520 295092709 17329517 210160788 121050458 963164282 995196977 998518453 602069987 910783896 858617872 973880355 684389560 776863435 358205391 580440418 512756725 518271243 369337074 753046030 237675183 252410259 877267659 994716276 435308428 475898791 315058343 884745281 800475435 822823333 119789295 381496935 539046426 980483294 455982431 557132731 834727379 859964904 920509216 991047233 925430176 959559115 646044568 952291677 522095644 722424144 754533723 760508047 970032264 984515289 470498351 804272964 139668870 625964410 42169703 492073137 404127808 935271379 623050630 790342771 798450700 945601231 560911820 924723800 909185333 912301410 871452471 914511474 350277422 665754439 230348347 509249058 332813338 448446563 580024125 911027311 312854574 329390209 999380294 999727661 129241207 477135485 500881285 672423470 366404010 994596620 474319832 922086090 324377493 808738370 787028685 935929175 343550703 758460745 783804906 945802569 14057185 816819708 337340785 354530845 937363926 941047157 921005563 999913301 714996305 996853058 113063562 473167639 106192024 324559781 230610182 912637008 763401774 886666485 279578988 825446957 138258952 303645063 70758797 538324210 88473189 126570550 574282131 826163024 804368784 961238138 472707740 746479369 39267994 965882386 536629120 797683315 502437936 614505812 56887473 294064348 739931115 791881041 723644578 895988522 22625418 658353280 371512816 493101508 666318028 916642552 653253988 702408271 772224611 870447354 597368006 997768616 467588193 850106927 946769951 969069081 836344454 837955978 344427266 484988149 232928931 727516097 254739489 422951747 311950041 553225521 893783161 938949808 54677658 138356426 833333438 962883672 854119713 950081660 286840699 388795706 188294650 614163623 43303417 950696257 35157200 592685495 813988643 912258805 904415859 973857009 805400472 919888142 636984817 799555127 123244954 365524729 383144027 908440860 51617301 198333095 134493844 469236001 779614285 806647229 500018833 558519207 290551080 942157565 83834909 338499176 559597287 797935814 611610044 993055231 51248288 355264310 297434095 567123361 344862215 908377023 132632564 772549908 702109386 966856289 986668649 994199333 11810532 351305752 283250691 853916740 892113124 916080036 979031764 998646781 471794421 970199559 982439956 990156131 703937346 744077496 507596966 595080906 495993274 672220289 347613793 347885194 591542803 995473519 627225099 883369611 925554865 944571100 192708191 221383174 179220921 508824965 777685553 899423735 594556873 808117687 189300195 721720708 491405640 672864690 577200108 593293672 235546324 420208263 547693336 647714668 32946855 541592692 262112550 729183978 283726748 366926106 462312760 510414936 35779273 560440323 604031115 813953759 712158248 929733294 457227059 849045932 671433867 950539580 655658014 917938714 105831321 389250260 407357570 588017646 758391534 866648921 888175629 936956251 401634252 887349690 598936944 890207029 608183714 614658622 899273987 986204079 924403981 996889934 68196021 230521118 961117827 982702732 230968159 349250651 805127587 876164837 376029562 606849554 147103837 310313662 840704810 986836294 946481114 951353760 395123857 729767361 769555328 844001504 694466337 840504104 790871436 950603805 826442010 991536354 654298694 792341328 661412556 875906021 999037524 999645519 161235255 820624764 547288976 616321476 872307564 972173872 431379316 644470255 294751186 879339228 348430613 775373144 406742125 742448889 619004363 859554884 364403221 659216368 67354840 323360711 911475367 991621550 262035755 511875979 853224308 948735794 921476960 950262618 906837015 968422714 675205360 968410792 361866576 495960126 600350626 809143991 477672046 708709635 506113307 920819635 2482254 980739169 130776475 694747241 794478685 999032839 351684403 520397711 298189076 975265138 116227253 365535325 125031331 446629378 640566715 740595010 176059661 215529011 249163994 520785418 141656692 364381953 682353719 967577334 628942193 938407294 644472157 683427195 463831495 728819060 576094854 581466681 541236842 932977208 372779193 541429643 973023166 992928969 572824826 614997146 322568894 917760783 598045805 810119937 29946735 521448608 263576364 945476795 514510705 625060876 931997071 990713162 769466810 903364486 135896694 947411384 722899316 745128645 780226038 996979203 958287417 979286355 930716900 947611146 854781621 955207357 799590 8649252 198658891 794698279 111384901 964561007 997296024 999992871 691857087 730547692 376599925 559167930 368312974 877014032 873064419 980006561 900483061 908029215 537151590 577499793 247575963 594010607 514485398 521816444 468893668 955351850 181111457 584238364 361510340 784481099 500508718 527768289 712256893 877616590 310465594 402107508 681069427 736380309 466868976 730780432 388287568 559000809 554329558 864728996 627407149 820791539 877927147 931845826 262031933 848649510 917440142 978406159 897673406 942453172 230385688 757358630 519712782 881609400 640569041 943210830 34545171 700917613 589807987 628691288 155758234 218464517 124390893 987694020 357308047 561759097 876418909 950218090 964840996 980851263 59530809 796946294 60352678 619897675 281399935 846864343 770131875 807260123 497296662 576886201 77936076 218887253 59802828 713878750 334902105 589694425 679817052 713129565 5780458 856610191 849366291 966918590 687692847 846955497 736579531 956543339 176583686 766059951 370267285 607644006 887611460 941760092 713726430 846637595 830910483 876277973 438901678 985041606 374640346 873194459 260679502 856586903 37864180 684179247 547925673 865695715 43829257 463765959 28761871 112412391 697694550 765312325 807783297 829643465 730663327 750297662 246517664 426214381 262580630 512958816 777539664 968430014 764632379 944191166 867508039 891727346 700212850 787900389 75943605 417838244 836130114 895701763 904823512 918942497 182966792 593543779 375511516 552946208 130947759 908405119 795606280 887693294 173064304 640544900 192804360 566985710 521966226 897704377 100694536 407899442 152018014 329353468 366559124 429344072 269276773 753288057 515403875 909623049 936363351 982191504 869178868 874351728 829223030 934030341 83757414 630208403 112572498 315998918 773147833 960499076 457319588 969279439 662236234 867266866 334638369 851769893 309479263 786019698 213500896 235889098 323876641 592810650 224348969 483427987 241650742 261170224 497284483 641908193 48727059 322383593 647383348 740412870 295323496 423305828 510892234 923256440 178418676 288296502 657304550 749296671 711502428 856100467 367241562 904216846 417872445 797784126 363199056 393060434 640662083 805416788 210252089 920515736 242427420 448867050 682907466 760850218 777113464 970300005 581409548 958988755 954018897 995777005 294927343 994360286 296541050 994824644 846055065 994334283 951956999 972777143 443567600 904130289 687589453 908033688 180656941 367603516 52950931 705440319 376313529 680713948 273884388 627524972 735448457 877180903 650897521 895881220 37485791 348261752 601117801 698932420 587862554 928184032 872790859 927056663 274767790 776328773 84665604 996634948 634347036 753799118 163484951 317031024 265046612 822409628 26813815 817653219 714796879 939594300 141467783 917672258 476888037 496081382 51958610 428917335 193042321 450108490 907226309 911247980 933178477 948121966 983662033 990475530 569683768 827549452 501762107 845971056 13837176 622979049 356811033 805606400 994969395 998951300 275745023 711304110 737741279 750095117 405834592 909660382 601936041 743574253 360448567 662709522 164711275 490466640 166461785 848047376 870658483 925734705 126003364 927245858 117828627 382976059 822265494 848705340 784111307 976954495 475348204 585357389 217641370 529077649 46240797 711421235 470966997 990865612 698882397 975319824 362222678 414728501 872602646 890633388 440769894 901648943 665835111 774503777 173860936 858312412 563702423 927369609 738753060 944531918 564089635 744557108 14237058 297787228 231607276 909740312 685129634 931329472 533265933 597995378 34472564 180272909 218673242 361002584 175560893 669214011 63898110 152198065 528516924 692629528 391612644 770149102 177136439 188710217 624334872 788920647 808367801 870003900 987466307 995375200 661636144 855792135 22050381 279240249 50858864 298338319 935262723 968098529 498701578 504101388 188316760 405943928 464228093 644634124 14168441 852301759 74238314 780955385 727047316 957624061 892999981 943161437 660675810 812048065 417463495 632703598 817815008 948584235 230679833 672858125 839302797 928736792 212919175 852285457 852608834 864756479 258248870 700942144 770175935 796455899 826617631 999811678 699036986 965446516 533158371 724091254 26883133 444351651 917152492 970581852 215864153 957360558 385972325 699572455 881275859 908525862 161876951 260460412 109012507 111572179 975573720 979897221 917528295 954770801 145001243 998901698 856904199 905251862 669984817 900405653 945914723 966211442 240488455 252158449 28352174 275604337 2558083 564317523 279371341 841369583 916222567 997152236 274088878 293880272 798276719 898364325 612562598 877652372 845451116 966465533 58846162 174153756 420925067 963794446 85061942 966359116 651854636 822458369 315870637 562307404 775809929 887733572 746616956 826940583 641735982 997689591 792270242 928585678 805263558 941955144 626598060 846414024 990551433 994284176 646746119 947239095 664728773 951799923 167864802 941957167 899386916 907833641 880107923 905055276 59875082 583852182 440633173 540515440 699213300 964339566 615334054 737269201 253804919 522538342 517282274 835941141 641746295 672104458 231650977 911868541 98328855 478416684 254192140 951610101 263672226 380315028 440010688 714763238 475964214 645789138 920963607 942066754 316434069 350244871 155311531 633058736 75381016 799842254 251368162 691562546 262057819 480882343 617715214 973560321 894838214 945546049 236188067 343528906 55809602 746674963 320417858 342099338 556215623 936496701 201530580 328911826 547057050 768864480 883867194 895132477 122581911 811637926 875860703 922327412 650660928 788953498 624540844 696951584 920644385 991558250 146046375 739210860 214061575 321181218 379415064 408898899 5148152 325637391 248358254 671701614 787983077 894065221 791973006 813020247 627764536 776787077 903116607 980797910 460062542 504750213 451937766 953679677 43813713 813251268 43435031 894360564 912509112 995522119 83452606 668626121 347395900 551166697 676267005 827576278 365432736 997449350 948829326 951588720 206725971 546782908 852977680 940108501 502189064 980677957 249163031 435253006 518848269 832261772 176002683 820542692 13526229 761585187 866926809 910113294 441568927 562583586 896790143 935919418 745541323 752456032 725603959 813585811 378951735 506731487 912981989 953146089 961770861 999015678 161056075 899612993 1393177 741326712 371218194 901266187 147359438 258695158 308241845 969169485 76465147 307619608 691709593 856250830 343874149 479627659 985791388 996774377 484775881 534388120 724332433 857208387 796630334 924060573 776109784 865386574 720798613 816933608 144808493 238275685 287194578 616996002 549688167 998269141 294536094 594858074 746203546 846959472 872767866 886042403 627313667 897710045 848428335 986335652 213868684 706782196 73050278 878411589 568177364 669314374 361507981 793885049 518727709 751446636 992955036 993417283 912486348 973294472 302584407 569251661 212467073 351103002 432975677 606710928 503653140 651271364 394024234 623216993 38253634 493305198 165863754 935148536 386525078 782130052 622424580 799301440 920735465 935674328 191519088 792594128 786507828 867905123 606755410 836072816 421433816 504590337 416760744 794826889 59798650 710171759 846563857 878628542 154660737 517730732 440774389 588025175 43098756 684320125 108219250 133710532 804219658 838899546 249608916 810716698 187749849 719734652 74849517 963311772 349453411 443340656 177256768 971007459 736657849 783395842 400717668 739062388 252718815 522673557 448489687 587287439 484576068 715610975 664847345 818660368 968889232 972692763 968225260 982599107 224963458 312040676 13378091 693581240 605437909 926320659 874248846 925523140 620760716 775444891 140458161 370840602 255400656 787039682 527424838 833913882 667721315 759598317 190579121 265826982 749173146 787365848 211309872 629698150 68500092 325915635 213496595 641814679 126982884 989179117 956237348 967844699 491812366 680581283 477083221 975989246 61817146 618615822 667932283 967006053 846313969 994831892 697519783 747998585 142877041 443111201 992449891 997460242 944482150 978525617 240257615 650341494 56501837 731864121 124833874 333061014 594848654 619667100 582863785 632656476 869561371 942129838 624286106 681914015 697346595 894431364 968038599 987292538 596588569 651083967 27446065 544563436 719637865 794986180 20056608 240967434 994609986 995948579 615773563 922901880 641011871 992895888 523751047 791700007 19507053 854039068 958374620 997939572 205510375 940243004 490230191 675860631 735776678 792284486 327981468 489430470 284796318 989159803 114606503 850135082 17632066 794595629 455511619 472008204 804545311 901166442 108208758 629623841 207994873 942701922 648255395 942787989 808798676 818688616 304734784 917071621 103034337 284331417 379589186 769163903 780564800 945642121 53821647 361211905 390668584 823511328 308272393 705583666 85649997 490465481 772928358 788303112 720795633 986758115 226716668 377309944 822446708 980754357 768981995 922698033 624890836 822653868 674747744 675467428 519426881 895363000 720110485 858268953 452895493 550659937 107468198 965278894 142282899 604383874 719519506 986004773 906491029 994312317 322791657 923965214 833134267 897034997 111627724 204809309 205784328 320351453 708469894 716228806 225688204 737630634 792888036 926170043 208478709 675131298 128100674 702376028 794454985 913924320 46941302 100224715 512638046 723578514 531133736 720748289 34858217 878589535 195778426 852504681 234620613 366795769 127470410 599801157 503936873 765390144 95713317 305449603 283930937 710665430 876396163 925770454 618552507 811097699 444057085 667464652 24122550 462430567 674528097 823712906 112495980 613052801 278042251 937046556 931011966 967237679 296671046 612042436 526116436 583563522 405435218 551430182 226388016 855266488 965619709 994355098 98891330 610192373 127453883 707646254 882684790 914028863 435858796 744908073 347736750 651690221 729877869 912982567 392888461 619144293 970620242 987135715 437941542 893768798 721311839 761118273 87746999 490171794 110240808 924493335 983492077 985274249 893708108 979090926 648128993 827904897 701809412 804261073 294598812 798256789 245047705 712614880 710843838 920272503 601092419 728299488 364138392 663362553 389099873 681547099 407322055 783301926 755408409 903472747 532967209 867671012 351693109 488603921 912498387 955773317 25935472 642581442 611430170 876706731 210430132 324091908 807697154 905695852 664265609 922393335 637589882 657238647 888443111 916750059 992455862 997188469 720162885 857760748 381684389 789627226 109263947 933407203 460126138 858183269 715096409 823565089 435064763 860262138 310444660 930977680 219425241 433306670 156863813 230964632 649860982 842045059 456102606 552534118 200523007 266065103 750512558 897404400 557543701 766176933 277716538 516874194 397866502 527280963 594753171 689866345 731889304 886264301 929269616 971727546 257314464 976209811 175235905 294655900 909633514 936453812 539618586 995679379 75761951 450664101 962887155 971611212 649149937 785658668 469154083 800007772 763040424 899395504 786078999 796265345 607825261 890336197 510815540 942028632 326130243 960134488 246278408 997244264 358594579 432158891 123158165 596745373 665485132 927864990 16328864 120705797 350212930 830730625 360050181 607869968 883271981 952726549 52896428 819144664 278540301 927200708 960976713 962712270 921805779 967232469 596886014 810498199 185011130 562886121 183415888 474141910 407988465 604352491 124691735 533709254 768400951 828766862 117346015 357134332 140034285 315596924 974537223 982053856 356649732 906509690 228918155 511894426 788361071 828090556 891938679 990760965 568060769 838878887 603108884 849880758 818290222 910848132 466794141 539297936 41838269 292991927 143885777 646324567 522853586 906516505 830692959 887449010 125317496 283501593 985116026 997676825 832655928 967477201 652519943 675260622 901209260 983944252 295533060 729310061 637889522 981539110 919081924 990011603 270992942 596837301 677400146 747088479 529051330 751356341 521660658 564582787 605924138 951054442 861026402 955539665 928935027 981332006 539050299 783623676 642247672 677978487 1704643 987635292 879912085 965342755 823558193 882727481 277904187 942062361 826647402 937380914 903987424 986741762 938661715 948745999 472684689 788655835 11700686 885381716 635686841 695588570 540122016 935697507 909062229 962619864 887067089 961250342 236982507 894696337 450780736 692161595 753308640 893489804 375197166 735529075 688441279 958624421 245698582 635894649 346620902 647112020 794460766 996914173 991418706 996472994 296968625 831363268 607923163 823470301 904925102 952382704 576921155 817973888 683756613 832270939 174188085 766707502 384758452 476693381 426509833 447438161 456574141 499615990 763760670 824694902 458872606 474585343 900568854 979991620 968035890 968590922 513571996 974724899 596915392 729153173 117696138 663605502 208184137 236159222 427830237 547909457 779656203 936622112 796742875 843126028 449970520 802260279 845982942 858120443 316358381 365625830 82536602 704114003 614359597 899235968 137923015 705690994 699712474 796981192 224629923 353132873 135184975 710976853 420205556 432079024 484974522 798177828 170922424 204864411 83149445 264508829 580544014 892892844 37653589 434762994 17928315 465364414 930655926 931456849 786504354 827421743 164501061 305574384 496498392 894300142 9037087 161098806 156456963 869511561 677004073 766018309 548447480 898548792 376197991 840311118 910220168 999520581 957658295 965808162 671318055 787660968 518968080 961120313 872651616 921694041 3362392 775782095 763251411 990545284 486899997 698996817 641338265 895716512 630700434 832089737 663875509 938501648 987143726 994047576 103559391 505487367 121483985 880564354 426481479 869149057 985158203 995886590 179845656 370124595 683579617 896286919 303272065 314365938 925924025 949668729 859734811 951066783 851810221 926006436 617258980 787920148 430238347 666281903 466359137 693145980 668717172 702995703 977429942 987542452 321837662 589193280 312717990 556974172 905217548 963222173 76070301 249413375 906700940 961308385 524485193 822269698 350851465 840827934 273674865 418169364 174611096 566166247 540411218 836396556 607726858 828507443 887449826 893267572 227922916 798159075 836853495 937215595 573180675 659655763 843438216 966224497 417406506 997911811 530709907 715495720 618831396 748133880 658464299 733612153 582626124 804836727 297034818 877324285 659582159 696565634 981296953 988663295 918843935 967400119 229133453 328860389 103331067 173727036 784393381 813689590 542350947 626865881 676401951 917804349 795169411 921481052 238762900 684184209 9916188 34060278 960533257 988228769 79428184 366063771 245264125 245878018 302831943 442641692 855458233 870661073 915900502 957512558 53814881 182699765 806014246 894783990 574843605 944675294 205230138 838656267 52854354 125455271 457620373 915069453 483976565 746992578 549380185 716310703 371195969 942386594 261562935 818356041 140434240 639216171 968424762 997427809 663097183 810652769 300603279 332626406 447434350 519302796 17618857 838744677 881447147 941174312 519664326 678347322 995349145 998334401 18857805 920548583 539388060 574150524 94108553 639122165 794980005 887503749 615616876 920335031 92346144 872424552 743989059 834510943 168991218 191327701 172389271 866997598 762229769 857601912 812463278 905652066 276553907 586733079 225888402 759299586 597925911 774720709 380400342 965788975 642198165 937407366 444295890 490580123 83402664 535424326 375399348 395406859 816036041 864414457 783316590 879386960 831677625 867755113 735535105 813380478 891398944 978845317 279754585 535045270 487644910 945701721 610686918 984711504 872720673 896172820 332737224 977194629 9535252 50381057 724921653 870033980 33071313 475102121 199462824 513115825 622423317 685265146 626486575 644393429 488102843 856823558 203978246 705832730 663839476 782296706 624342801 737438277 665361924 679074230 237874048 847597965 235780552 808436997 612981443 899844728 295103465 511512433 46836052 527775098 613813898 874592139 174492917 608672349 307870950 532708577 114775512 777480729 500143666 706028107 984368246 989466872 639106782 694549498 376538864 869331906 603017981 965662963 966167714 985920710 368644524 659817751 180390667 272751811 388297309 787259058 362660346 945227608 169022009 193700845 974621826 996797106 797106759 837070075 855491890 936034403 600027949 998102526 541969614 603917535 677190527 969159053 154666373 204507961 272913807 573256766 77402765 893407299 241204189 541794948 148849375 937876593 997722625 997893155 626903178 795110186 394526584 738459691 61046213 273861743 20959809 189575783 648864408 687234938 229952159 755268696 314112900 771149109 774492670 999937608 680683974 980268924 205956628 692964065 367703997 807829096 449340843 873602369 689053034 997923166 54466924 837115800 725526925 979452123 122723378 861942135 846374410 921853955 703910526 782819676 270841957 922967330 930046533 933537379 591684309 673479982 379355929 924357001 417246471 433153109 833665086 999720781 705063348 976314780 925131007 941256154 723150521 820689661 823887607 883744212 241593348 369147508 120068183 966303770 764188142 771436763 519526232 786292136 365162988 961339037 330059855 512899837 329872527 467005137 836653061 990107810 813431270 959149182 109845665 632542059 365661872 524168327 679688554 802556341 324340215 727022518 649711230 678690683 322040679 448631778 592714190 905704730 76400990 532744692 217455002 815412159 157288011 315958110 193639547 885340877 353423153 740954637 348326421 886660237 555298650 711668263 71617827 702521993 104848982 722678256 774695603 846992752 208820395 533084644 128375132 765221451 745755866 935917326 131959099 805037513 231072897 339624920 725367356 917017312 583042431 609694363 268258203 516245520 614525880 884005325 582528088 747099014 53798833 880287486 761562498 934255340 569386886 805359176 315474469 534521182 423337031 933795729 405648157 979250122 413662376 889362347 35294069 806026761 278316230 551698057 92001477 268198137 993967467 994903203 406394335 977110815 974728415 986902231 222179834 296522140 40831652 931226406 743554194 911454753 323072925 854121827 859987617 886916593 317883465 329395367 352344499 884936519 870177566 948011004 663809146 826237942 992246615 995522414 612190648 952514734 389254100 636525103 855153269 986232319 726230257 777692190 351292347 772112170 965750768 972274302 974834414 975639489 873265251 967509310 466491555 956810867 633610058 895628750 624771390 775606165 100082981 382210611 811298805 908972415 70416253 807696506 698212198 707954650 993340695 998812898 855646399 936270481 858047463 973111226 40613626 755603574 145812351 716719197 576350900 826532195 504680116 611589764 106451806 955870554 816295861 824845535 896344638 912381965 984579214 989261930 632811457 825188306 527001320 531501162 226808403 309276693 960381681 964662945 675188501 741876021 225616786 406262593 218164208 350407294 63950346 760217703 604877853 907016267 274395597 406402040 651513386 844969620 609795117 766392377 857835621 903136810 883974982 887589765 866132835 913419465 993766431 996855643 898452553 916162655 621853283 844075535 944293389 983130551 541121900 599426803 804958898 997833070 518439221 580091469 562302482 585786707 782123539 826926325 317201602 380356044 474879887 951241482 416581009 660891659 750417385 888210781 284699807 462836972 66008863 364878311 151762907 931748980 266295121 646110268 588024834 962666377 421955637 746917206 478983740 557263778 606751881 726689265 614812037 687182591 918872368 966643186 84621250 646243728 149176896 819928516 309707303 794680784 222703203 525086906 390880647 900864194 973980797 999586476 981186224 982109319 999351681 999574722 905357582 936544437 73855032 328089200 175409729 207519757 382931583 593174439 516297033 566484811 627042164 834389534 166101016 688191375 517426880 531673810 517069295 752458876 14006203 906056309 11030350 306001698 340695076 698492147 348380187 404765718 620256664 770502481 414651007 625906293 610722757 817900082 630976634 743518537 95482605 828064809 778641123 943596519 917252445 983165438 355836123 932692421 353534975 814752097 142039445 789093481 30672982 289062585 868669188 974065652 310871197 403113555 464323204 522535531 713320114 842990561 967480270 987651904 44905198 577427537 664222565 875580667 360311680 718558039 778381154 842356745 870841377 968918077 26350159 172207093 30738893 192550342 910093725 998162617 671821354 849103791 748668606 826945144 844724263 952564989 549164944 947669264 73989621 747989161 915253122 950027027 486936676 561972976 631908235 667024624 403969988 658072651 411510695 709268930 919723488 982236445 270201501 537894592 142384346 662512985 404289753 573603905 923488629 938693934 899765940 924932844 595547837 602361893 764020522 829596742 79163445 79386059 969096622 997217586 54182296 491404588 911749074 916615322 485836598 942627307 886902776 906903154 745880258 972876568 659087968 900640438 667137867 738105510 383159117 585661733 828498301 939198801 415337006 965588423 44554458 772155504 670030764 879929483 424972057 983470764 452189844 826807271 189775187 706118736 50451522 729325539 321537071 364971380 996551178 998345288 853322336 930246132 39301600 882736903 81245606 257143388 214521655 664966723 995398952 999962273 68070508 695987908 624441607 773036343 555663857 812839099 942202892 989086572 38537729 250202359 781597701 826632931 318823702 366497719 723699658 958861494 540028434 679981502 383493951 969148752 154482693 751612332 597158396 897538849 340639000 868282013 349313366 661721468 932481960 955338122 193670808 794555964 911542087 969133922 531080513 565108526 334452310 838954706 718662678 836681744 654425166 924540032 652825965 716699710 635037271 689680748 941941043 953825301 146092974 717087866 389525501 645447028 196703526 395012132 686164642 714595503 306524478 687571925 845287140 875206695 719030638 890917618 931314497 934346673 28659709 539810325 552006579 976824370 160617866 236227869 466606005 857938702 595610680 667197642 855402765 868659223 339330648 938899002 471279529 935020476 141548492 751567108 804665169 964848280 507019570 822326965 944728730 985813327 836510004 852116135 397831926 788971794 346626385 870367485 939024337 981473736 330031624 467247638 841061744 943903044 2249723 955966361 828906801 917472990 878588618 885545332 709383487 987828657 921285854 976019893 619831600 726209745 656233066 668885838 409496509 814709459 884511115 896219336 453585038 816614663 71342030 983427891 417550919 448932362 794317985 848304332 892391595 956560522 503078552 626416676 528016222 609913370 599556484 999857975 144201298 411451609 205498368 513442992 780865729 796071584 714957853 723062611 200867982 588388204 667375634 965012302 841574278 941351667 934473006 982162100 948722955 982442040 20866284 521495999 701875074 789713812 377576359 519412233 380447206 873742977 623080286 919213282 531722118 857993414 792301370 970832827 754714353 807171685 306151503 341353715 97386320 631560246 605516139 889579645 942790771 943641332 50408293 706664839 470063000 980231254 944704949 976416516 284249691 722627921 843041051 947911592 5052440 840667650 150219905 288445896 361074935 771449406 552099075 647112024 525875025 641622070 828186830 886846517 280434589 824943881 22237352 730083205 938017131 988539530 108568733 177205200 914172123 958817358 873913025 983393951 135471395 583798823 37309654 106085428 277281968 515638445 108485227 109362639 295710678 551664212 964354740 982517684 844048612 989607359 553658538 571404722 405587823 742468712 694408543 724278523 163891210 909055418 749253412 784812329 829556490 986857436 542388120 788672509 914780107 939869207 235626389 735136818 696573575 745771574 645947477 744372111 384531072 649132192 517402898 533894727 557501788 991772106 767198074 826508001 506194793 737519504 503179793 814283999 900048243 931889600 392003909 958120284 215627408 852735520 62815792 749605039 753086745 828638393 300589155 880135395 113131503 346727589 102466261 617879039 168184012 407108355 438767507 737360062 235738662 670994117 847454389 908240055 344457443 482397220 789744333 820716273 220999587 779479902 386042814 677926326 182754084 728902075 48567376 161142323 591251162 935323503 309351259 613583428 668855030 904706686 593566279 878012593 248022909 408143743 516548572 920094540 763593398 871827883 846373388 952545627 361370607 609616278 538650513 744410922 264842635 794689791 714165835 938484677 667461186 887454366 532890573 566999221 248827552 936387759 53671410 681423849 864527715 960417542 924179463 981929048 576251144 669417254 214311618 604054653 286757487 974600455 507772657 992851783 32639322 69739414 32932352 244697148 384002056 541353091 101735665 694473542 816559303 971580692 141768843 601072389 708712941 756805452 493756196 544180913 779833107 899451245 292718116 577051829 824317485 940374165 153773697 769970951 919815299 935553421 556821677 606340637 390300838 731515824 90127016 963735009 441757426 525250910 589439753 738015880 12598828 654096482 339596874 345944863 606875807 860165745 624824331 645358603 540008056 686115465 524250749 862154114 732443731 741661272 492896705 989398455 594158672 632011887 284696475 628110403 990356282 994306408 707633116 760860837 29307400 588102256 663012651 713105691 314837480 950154514 229126198 939511804 705770675 797556064 768288762 878862049 172006923 878721756 465568673 957320726 845856615 888927756 887036994 942191927 972717608 977532275 513182816 632469161 395707651 781175505 708168420 922811503 381128512 983842571 121137384 244818698 831840420 953426346 224261462 609364409 877637815 926664292 100509945 114679806 931803918 958295360 285104956 695560624 264433032 353113000 879980566 912193488 249934946 402668172 971831299 994189584 629565467 648110303 881190143 910795778 142014510 927990587 565726828 734029533 483355285 799670897 534898738 605088092 37572092 898380661 443500629 823022875 276786265 677056351 316086565 735784314 541593885 548170476 137143419 333138668 612542799 982243278 850745937 883233907 720886702 841538429 967060141 976154811 656974751 819361015 987063783 988343573 182356614 673159991 996559832 999555078 501803821 695740501 399103420 652694183 993559778 996085704 116860195 382779977 453500856 503218037 807294313 953861849 408692847 915090907 631500305 761768860 469713125 591748158 104076529 428207649 297796440 681518423 45226223 904102063 103781107 953904363 345462246 717052513 46467113 606198814 272532785 752415074 448796217 652862751 778957476 865298503 213906311 666030068 309892909 924483727 311788621 419531986 400002363 572632425 365833890 488278082 785992262 987532173 122865848 653241933 559441247 587010484 117567214 202751297 313309147 721246910 302909882 524443140 287556785 397693004 352124080 930823898 762771887 816254246 928154794 950182644 970090361 993758855 101118817 233320732 709720963 969274660 187425711 819390152 183809010 306431122 817466984 860681675 469061938 516456599 438914550 909982417 457427135 586946495 44000029 991855637 708455589 792368247 847393332 867361225 938449323 956558579 319527598 727001496 826613390 837893364 309415368 857323277 271615790 323092144 745304242 896478938 950446869 950981089 359639844 935018085 625438731 844838471 792221516 938392410 94469751 531923763 677029110 741180715 338662000 476563563 875236169 886768853 470243099 689813963 620658713 996315170 689057639 853373248 863218888 987887460 523446246 839254359 141020966 705705765 234952277 427666678 146149025 825743277 795583814 948740937 591302008 816545224 298062590 675267718 460843634 661491955 125704227 861898797 139477844 338761100 844012118 943080293 757537471 810074583 911738206 953649816 829443531 830547880 49504591 472581346 360224923 363561745 412928494 820121312 224568681 227585944 828021486 984512279 522095184 984179153 185075967 824800945 998285867 999764967 776966596 868216589 180628912 711845217 77760541 171162230 712705882 788113359 970202569 976302150 586071743 647561392 759445734 947208775 36248888 769930882 951386702 983908951 254888839 488125150 194609678 392338184 249479153 868434635 865931373 915128813 716099356 745513671 86499352 489851367 183358751 620264476 387872042 442892700 673019748 689954259 64128778 208141615 804944842 874647011 547366640 948462315 53147641 629468914 806714466 819551932 680388960 760462578 545904362 556307573 456538140 946959921 389260270 722346549 502204242 896803119 237277211 771206375 760075842 808829318 408608830 686704675 599907111 606537971 764614507 987936991 991289198 999835846 613670243 794525253 593060841 893547901 680721161 690431970 491495227 730904357 754525892 803661271 998431290 999648297 85677193 570358567 586502419 853417373 346500259 736073559 905573071 978062492 759078754 806224896 681920219 847912052 882555664 937274016 683056219 796649288 229105819 433682594 355626286 594276693 540547110 574082369 980715694 987541685 680927011 954840469 289367008 689931983 143328090 801036434 535398786 650689198 989580419 993960924 115255180 785480277 520972836 865465157 300455482 813998506 413522824 827333681 211434371 426815096 156255863 365770982 951827542 998026934 208342252 603194994 406580114 434423689 488382195 498113674 579553889 812388978 571648963 730273130 125440558 535240664 208617937 453767575 289658402 821793285 733372952 914274488 678219124 815694327 949904842 952631356 8874417 299753575 445570122 716455203 698638471 885175602 517876632 703403234 974463024 988466283 837702602 919456194 743656515 782762697 356281830 899306587 220491579 565865464 828561129 885444565 892745966 948620997 980248319 995301363 238633260 419068820 630092783 634649621 812924183 904887291 688826525 919744303 787614163 915098290 620381944 826776519 725488153 886799406 894863339 933684012 854511659 891263129 62724633 416054241 159003554 400780848 826572918 852001575 99008107 276545154 66328748 456255074 307766616 794385780 150235888 619194847 380998967 692604015 817375031 980849514 552315625 608127177 185601311 783654121 510334789 642179201 756739541 992030781 439768524 736681166 483331480 767519189 803186075 912599363 204615032 554454906 880409083 976237502 538867708 809223309 933077005 959152339 728727542 855974957 422233843 850405773 601800562 823190418 526406211 935153089 921340901 995860544 136211055 551151010 724194011 732836690 126496222 185062897 408532647 840663997 426377954 671800698 291009904 736153275 135112526 782519213 399254596 786494526 244680477 954610430 290459584 637249821 84932884 681039167 900309696 960044934 757817616 978892052 490918041 579563344 747703850 818056473 642951003 886851151 159669290 904801729 969379656 971535553 48049117 847873306 29893997 544422220 254134328 501013542 280324242 927093284 644059816 955738572 505215965 768537897 239280237 296412978 928032067 941932567 811478391 877390615 332870917 435800746 193753085 574044699 497277740 646214341 259105173 365053610 216534896 950751268 119483129 787181718 65475793 739951110 962311008 974529198 640829911 964624656 834642332 877040860 994969016 999117609 462914135 672727008 627269504 650147353 604375561 929799352 874465397 992816513 926534929 959471145 246588268 995470529 964305945 992269254 421424649 751262086 340754877 458194074 905349441 985653353 790019381 991898371 991498462 999651552 508677075 550021855 163953255 226319045 887579415 927162627 350405299 474917368 176252263 290599161 248645510 516151978 844694353 863704321 280792686 326808923 371229838 889420742 607627808 939205001 426547036 923017898 783548538 914628915 349449867 624953468 398262967 961191636 809000333 866618026 341270753 530717406 90819429 112092032 15847282 491398403 419465325 738283881 805062718 956592624 192415841 627445333 786466689 975721159 725929502 944230976 176597513 289617338 315295593 544054593 317759245 995698996 868582948 892511295 646593756 884411104 260506054 688256498 484878660 575896289 727859222 947646986 85762428 169655756 239131205 991883733 917555042 957483885 331284549 470936197 859708731 981728728 156111875 233618836 829425682 954994633 278468729 351500695 816577105 906332576 497975265 592123557 927494177 970688796 163792448 472644776 417118316 866126308 152263997 295607930 209380349 215923836 20858619 22509163 194561886 259615809 548250839 830634140 483722151 786166501 486729771 893395266 55637928 155062275 896379396 947102467 991571905 994736456 24811468 45374498 569160557 978684017 961823530 964698566 813498211 930961901 820572365 838972324 174060458 908766121 989733583 994432385 775658770 854386541 440056216 844376036 26680806 796239027 187026601 359921154 442953389 447341069 721693153 935221989 55552746 842928327 627094816 665801246 675095604 940392564 566267597 777326206 452380827 642641119 988387531 994202501 488292908 793715837 796184090 965601669 752594304 939736520 305205628 596506842 823778711 868227685 538848190 945728391 120884507 987403686 290012211 819862702 971415707 980128645 396009005 880273063 674395670 676329500 584236382 895021818 116018485 485145331 427824799 867754847 120149538 849342188 932477280 946590755 815511995 950633259 785463388 949578109 825408452 961528463 982786554 989028020 800369882 943195666 678721383 991411965 650511504 733425558 16749527 183854757 984687350 985522292 212316468 644666345 82322726 739058625 23096421 879164757 157335780 890822956 498147306 579043217 121768943 255676144 765368592 851904633 483177255 752081760 393682985 697151703 136727928 937514526 6643524 155617535 736762113 923198248 326292011 630162463 649881934 908524627 617794323 715845511 1468282 875434962 860933546 940088400 801401374 938780568 70776280 742715197 128156635 133867464 44610047 554657958 424603443 522385423 537388247 924299417 164612862 330262319 522714995 799121999 804352488 879169985 10541140 145276843 517257353 950904800 731841022 800636446 108911311 657070491 121505496 314413453 743310621 785739502 14672971 226362948 777722818 993361340 589922638 909416791 962252635 994915767 729111231 822024356 991663816 994629237 572890539 753963931 884818695 985047258 538140096 708968760 994023610 999861724 153233351 959351497 17392052 888314825 878669047 994336652 33208962 990919141 406278010 640799426 987262689 996178496 637836031 905593363 994405403 997911508 99849946 163270223 525777340 605624167 157440129 592578120 189244736 688866428 371310972 879546244 482970185 789501594 758243473 967615590 591519997 640136252 477856965 620324231 702356704 870422599 311223903 839635911 758035002 950140104 418116537 519333775 227332135 287124180 489735696 945609002 669360446 752403910 50398248 239220342 458160871 496995383 606427419 787230366 23317561 331286007 435031126 749884914 723343405 806411387 259389798 723109750 921766437 937530643 785261382 793367740 388911442 869513743 992591686 993043642 916508114 926047496 596365978 740883640 388488378 831543457 630048010 896038048 932656232 951119546 95776990 705081795 876009205 882599740 970532891 986542777 838917797 948799233 938891222 956662569 643269896 671409989 121466149 572614490 579897719 617003222 894311920 939567982 139521644 984688797 346027316 506461982 281771026 980223180 243080828 665252309 913966427 923402339 160935250 752407869 426917752 444657684 560662816 916138793 79440437 912457072 783949635 901505445 104087496 684217357 533999825 946194221 91827151 527321728 447391235 734681220 488238716 951608656 842678731 843593971 719955950 749992670 715307861 841170869 82962152 642856262 69029936 218909142 949680870 988481634 337027330 763832936 171738658 769876671 482591126 888548537 807959995 996768052 466895215 756500457 481400055 903303075 431982637 970490894 935829325 942739816 138691724 793996720 923655953 993887467 739774320 877417207 389989095 475776790 423431659 725049120 975840615 998881533 519132566 954763849 111369805 598634369 525582714 550927825 173597866 347551172 143119175 858488760 252801811 486930267 17205183 611859491 164333428 903402696 766263254 876068292 785522741 889953109 43815322 117200899 506469964 915651206 945004611 975154201 861040612 938182328 849709705 931872274 694886795 745222121 232572843 763627387 794013187 833349676 725395847 893976913 661899316 962762145 541521518 674927850 1500691 530306599 328211676 390417253 224967576 656982876 800657031 867539790 826869241 958954240 773581333 828973352 788840426 959331089 536518186 724189438 666504880 871467041 314556133 814189910 480552090 983865698 623742110 792657132 178695153 366807522 11093612 423609674 201030563 785889724 127500669 230400791 278578050 383890919 842975871 974009258 810629370 934435309 363497173 607370243 993312907 995484666 748091472 845035524 887589453 959150033 345041365 983433932 399265599 740881602 909222778 956700761 180457984 500341152 856633799 904107263 515844695 933875209 935434332 982968263 373933630 896976753 309055789 716052602 211002514 546262078 82193022 864693473 969824573 987438005 10563144 280744355 34155739 158631349 455964924 962590354 80249405 572138666 323377783 780266791 234575321 522893478 433382806 979949640 243428345 947053901 836125322 905273575 562570069 736147420 718226721 997223632 332965990 938205154 955244440 993620734 53676036 180407519 963090293 976011542 448447941 626294195 947709941 953749738 274164676 452147707 840574685 941809020 769782530 924907590 647383487 653951228 191484495 632190060 254812286 342139565 652538392 693286693 498336941 881093614 996729895 997339873 645727111 974972937 475170214 881386096 263487145 954592896 240647350 687920842 280564200 424970528 41619310 227341707 184868988 993282643 377383419 527323383 539245591 589657336 916549186 952559033 736920556 893235205 6535279 181345983 324269969 421323168 337721195 520640872 41971314 887532608 417628136 902951326 470845857 642035980 135965744 826584411 887584400 907087196 972510311 981469249 948125611 973195242 640129105 969459887 760383233 971320773 209897322 919641888 517636438 930784510 243730548 780077348 775092586 981072696 337315895 719361934 350662096 373538670 466849222 559597972 122505857 642928164 321983882 475219343 989564767 998197996 297256689 520156488 985769570 988377788 601373549 910274956 146950842 782585827 646320567 931390933 55180375 81553765 893758423 899968979 667071077 785495974 830471031 870076454 476533529 874408818 323377604 579630636 57310254 380369442 74314079 443448602 889833011 896948391 733370883 982217486 231843400 599488147 274907394 421974461 199004286 910953130 602001331 606809309 789946916 973543341 475871561 820757562 196765012 716151000 870533634 974969422 273369331 349988277 48504234 967614476 777748304 865087978 924112675 926850929 373760636 832599319 719315359 751895783 99588164 253970770 17640647 631199198 887988273 970385655 762234418 789405193 402045292 922731138 884054561 971683491 260531381 979725198 576848424 817486040 286680643 809452392 710236659 948207641 168965237 843307778 249691276 583303405 344944478 783102397 233108710 434655624 702710946 846296420 324216193 688619312 452163181 482460073 947497299 974186417 767154039 992077614 92731386 109204666 762008806 796874023 987607733 997641096 50557274 312371947 894487947 924817261 357197520 423210389 275934789 310597182 493820568 964438477 334677497 512602697 12669988 649987689 11826951 579584662 584636365 702032540 316536171 979688434 455024591 939636988 176123961 574033969 652455044 672268965 930139307 962200278 842017589 902722915 80732079 239928166 622998627 971325525 678175786 965886019 641970784 858126397 207546793 365665371 706314693 713035418 42685273 522674189 241215846 301835200 591447293 612648753 764097539 821231621 748230307 795411272 611073201 923781086 212201078 970995124 250523265 665821928 885291656 908146557 583891236 802527729 38064091 124683636 902203357 908535784 797251261 998311375 156906858 421906161 558620732 607186715 114585038 172768311 18121194 596436539 865931607 919003448 456542467 506237307 454244387 936726246 425618768 519718192 300642440 977119920 631400420 676501329 936738633 967278387 641632980 984486262 12598569 218632991 867286704 932403263 10048008 871188631 631370850 863847078 73936761 799682983 748948172 873299030 379309672 497133288 452724871 711989734 585653175 769737842 40888394 664687191 531290531 633637772 879453572 997390810 474165046 692261851 101692781 458578514 627854025 747627531 129782646 528552300 169643864 332988610 262990580 317368056 728018403 932289322 993814508 997576687 421154876 865560922 363199335 612591583 155384214 237792691 431543001 597093132 308781136 746609937 346936426 492319701 522372478 981106420 193260292 945942804 603638561 720065916 254454501 740543640 162391633 532825585 127983710 187251885 313990623 576015981 253810068 414334980 590891435 686819325 914670845 993607804 904991730 933740858 793254840 988471088 636402638 968861919 450551103 608267754 287847352 608951853 783413444 944362368 712704701 994911386 984161407 986561691 489612799 776491591 195004103 212966074 245913121 797112079 88156051 322033127 459672101 930759906 387866012 997816016 476692649 951167534 135440825 549317103 341430178 707110730 112413298 957893654 58189403 614302513 13735639 378827934 519038659 721928522 806714920 864573244 218073922 425238671 166161064 906644166 277796840 856725123 149469667 958590762 64320009 453724509 253497757 864114894 546132648 996986079 633471061 895527213 500655708 650380021 139091803 586939486 676399810 827077810 116177729 291173170 91995429 643289041 551965322 921403347 414124471 651871652 679925727 885546600 423300479 777126718 963989539 999070919 756554533 876263971 531767938 539309797 995220407 999746539 687881835 972688280 248675166 995781181 557437959 963196771 277085391 929587737 334025588 844154196 104001360 842199163 175842026 863299457 492305521 533305737 169084980 414172510 583266803 937263833 654370588 825218455 199719128 627673300 528195750 771476472 737351712 850533984 154405288 675131435 522193554 654800499 582873898 978168705 296929726 539748734 24309275 196095174 939716151 944930282 76300295 595813782 628569015 635146500 140355420 481766501 147672736 886500872 239300062 895460489 459543396 484188837 536252452 566457371 298778784 451077834 791659824 996720400 535015256 575183535 624620094 727472728 560005785 737803035 997319168 998863865 982121859 994762017 903004596 913483125 993508148 994281463 109923616 214213884 508486207 698626955 182282496 932258633 907708807 977358382 752910103 831415579 601277773 911868253 894566526 986914775 295189427 552042611 152359102 838899281 692742000 931204618 595008393 936263336 3866690 399291834 62262442 914575600 718256772 880252922 306663161 881392210 432391534 561104249 786325406 910114113 295487090 547785541 10893196 255233141 347841236 570835444 242284301 631207994 271924384 773087537 240672525 671141008 753115438 907503065 984064566 994723683 121799966 670495409 663904239 764318155 532595013 639338283 773898859 882663012 229508163 630619435 956937005 967979224 304164472 512801865 539549846 795701371 784745809 864569008 221662180 680109491 795099965 986128671 437625369 543633419 735369568 906478376 973395476 993204859 427097307 964581516 362398161 772084133 719194278 752082658 275336504 348818648 178787437 663774651 435121413 534046825 153842394 908122273 758878291 775033951 419050563 720701797 350917050 376921985 861519888 993534176 425140544 639657134 938421737 979800587 553711426 826618950 78741443 257355350 835257700 930506247 77557913 376202322 205139847 354023555 569566895 742469740 88877029 884851061 945010647 961990110 712279232 777824069 33729048 460755821 576737705 621130389 479183377 668149696 659616796 763346564 834325577 856619978 326943778 410163213 347456938 505454182 792452608 931184806 148688760 997573323 47012533 649685755 312066202 677769531 272807113 447297644 93965469 668542625 777276127 856643551 647701231 747918550 235166141 786501069 518542105 606031402 15729394 516651844 560900731 920428728 44364629 416602103 80273633 831195954 58712856 662051168 328617071 508186955 151687226 904370354 452092117 989518539 142027767 476661246 513141994 990281549 215750593 757113654 538012968 596305760 874898758 983202734 220793934 339270006 335658993 428563028 87769985 831810452 536757695 727625632 388589234 813096832 563864123 921890397 968348113 980524446 218229956 938454356 204370819 732505556 23245786 169563453 458990894 924920662 934640318 983160423 988175561 996396476 643759475 704061915 554375894 557781983 232344797 334446071 469185220 581205894 599237128 777783463 559427682 765507808 136982474 475853612 62565759 601570362 559019905 813648591 391707228 469852189 329646057 756533213 265975902 412097848 879225536 932972419 294629891 851009547 403759562 479101735 830444629 877108826 652542203 958971553 405630187 425870002 299249765 371097525 193048960 936026221 201246173 605379464 761887929 931332455 521454644 738530280 76564766 761082905 974947571 994477157 277748805 704301028 359773032 514433123 90375859 846360050 463147400 909820025 945876159 974108425 447736970 588182968 326835684 424415236 995601849 998924905 705897619 827636077 178510448 462029017 624220037 902185532 638889863 804472439 661685342 842336376 817440249 872345494 341762471 556523405 631215291 783144787 428548693 890450142 716870272 845528371 1363837 918891183 708515622 728939508 661494955 994410722 202388464 806657957 663261075 806523124 412557396 651184168 666967131 797086147 81248646 608830438 698681841 913933110 652483423 876809678 576385972 772704140 80907654 353194404 766901184 991037064 675967051 819729246 282971954 315652379 11015058 623793244 282619730 974279765 774402260 864682128 535296880 770624298 962888642 983293729 154573573 653848889 9583356 354561924 810054868 845850937 279520022 622950434 579979091 692803020 537330139 758591357 57138564 118942794 749415013 925866406 554550658 711227739 351698837 835531744 571174733 935835506 737000912 864813753 69026640 912759005 128802984 435422200 377759345 821957665 675592580 842740031 999852063 999920682 328555183 677098483 367379478 731049398 364715934 984398568 826303025 890639794 889293297 940917636 742656916 850978737 768026231 791961419 907166765 987953412 600237714 797949492 482585701 760101952 853873805 861656439 308070241 965261784 963441988 983861338 978060891 981184142 40433523 857487779 127730940 507686636 733084891 981644777 462338079 847293345 908685050 955015789 613956489 616776439 781392052 989571968 173582910 656845598 859434150 889446997 534977622 545645384 567144844 731602192 936974257 977842935 782923065 917163570 265499489 389975225 581819746 716890107 762392845 850603226 208942090 819319859 425311634 503829044 906452086 988736746 760956685 890322274 590714485 799952809 196924728 542943573 716834436 951296138 141892854 868603608 953555686 971688989 726114951 881353518 882616473 913989587 17515526 324062494 205659218 544786623 140899243 475714715 934126638 939409569 156729562 923194312 784521055 894873118 515434226 759315173 662379361 717179821 814257014 866706882 392920354 625464900 816806401 988245525 519381835 551665150 858591257 921116334 3381557 235487770 204188091 392340567 14731324 156160642 935996905 980923108 291874458 390216447 620504430 916977808 895785638 943663618 976131741 984093850 733304376 980958542 629908464 838848568 529071954 980810963 911669600 998244475 850266272 924910120 619469296 679570033 170496858 512135801 330324594 538523337 405557839 477526170 984429577 988144020 904449223 904981013 260336878 965725976 365714682 419818601 907876681 913113282 671177053 953397215 946707533 992307038 794053780 845976320 801189064 924480550 215030270 501978546 239317028 280572695 522870374 598890162 982310332 988773986 933456600 967381376 976783169 987880923 912334665 955748048 627926049 669359348 824945018 834481581 269712487 858913732 78748912 466875936 331992940 707707167 91762270 776525360 219441483 870733033 979896346 997886618 551911449 726897097 556530337 642903593 989600650 991795423 758732453 791449403 426414890 855891208 245141239 675486193 129021588 877859934 316235539 919161524 250086055 577291528 908061169 945874177 387494793 882923919 345523994 744382823 462158487 726489075 798646810 945646453 929020856 943100739 859013280 929434276 306781678 655993219 1893470 607599102 865854633 900186120 803939568 977313544 87037335 437549955 17596961 399684074 637186175 647009127 197794227 712120644 893816847 957566323 619763412 764852678 114571940 246745679 872880057 999210615 353356802 443298586 251858327 982064852 299988438 983604197 439976734 977807379 645123080 660960060 218395101 428637091 712647482 855584029 619951191 628084714 622313997 682968557 312585507 829883374 555006992 953220355 130844876 324265558 109906871 737949685 9541789 440242007 291514552 671629645 493385499 521792622 536286145 757464698 99059236 552374722 988556542 995223300 987967731 989542459 572296854 984335956 755418206 995494406 321871569 450102513 264169104 471932924 103573475 841440728 418404585 980340318 793411820 972680991 582701772 943079784 99176225 309570504 268174655 618619454 195037113 643704296 571594648 828654626 746641764 869077931 374936425 911272180 540554481 606561964 272968747 349794222 196292544 612623974 50804657 689972249 307219652 978448591 452344214 853361673 118928140 737351126 272413097 425654770 418034474 485991989 780297471 791729559 725712042 937899323 315008475 794634140 313255722 769034641 811278973 875165260 99469168 713961617 884110925 953345343 247308115 416784462 750395378 758477797 822290181 866415644 384502122 846411670 907390548 983586986 10619014 744737914 468361071 993417315 295213173 480799967 532647813 976888231 714586393 862515133 82839132 108875629 893590098 934436596 985802903 992700504 984473931 990428407 770787873 973688426 55745988 194053384 62846983 223497287 258180596 661563023 567820958 836698265 26323185 629719845 451509210 530020084 361236340 652020808 207932332 894525183 704200684 777147614 633592638 737671636 114826199 807327971 427607400 626135677 331963947 766425577 520214208 742448485 838332194 884094113 481342846 985049909 993369360 996210956 73241318 142464798 852343716 868562513 43040621 992676537 752381033 789201650 122609131 282952570 508884157 806623636 314005704 787163268 120812978 230889074 466236317 976163771 662424346 780313950 221942989 314248479 532849208 606128370 756787006 798144397 963101490 966758737 99423696 674320327 797391478 846996800 281462023 553649099 959481601 967550817 369005393 504126044 395839279 725844164 722145918 855708269 62765626 182699697 541191352 670427281 310939047 763041336 577758457 748962748 801274426 908925375 840691362 896764390 997947982 998477102 356308150 399546543 125455885 273711462 872738006 935199022 299632414 448728538 456064111 795685303 572486629 705660363 737646401 962661588 175247852 832882087 965296659 989237006 669320690 732477662 982549412 994040808 923197618 930347172 794318793 935079930 356013290 402824286 312346288 864376772 525046137 704861293 60667023 390811797 893288844 935424119 798985182 829762228 153880350 972537653 258023200 326646720 290677645 312669263 918905895 963112151 28461407 605603243 786152924 997682455 726963611 853010850 2317614 920361660 890898170 969861888 753149644 883951793 523021330 707057922 616160544 796926554 520950034 979472481 206783402 272225234 455110848 706754210 129559104 721640482 310179445 860392454 902173998 982800192 43869809 647855959 340697033 931176214 409211082 528795589 40591592 792555741 813348923 875333838 607740797 734454024 501880241 703814983 70329164 717742739 923472423 940398036 705244179 754657615 216177843 730954059 363316280 643859327 146349455 960939374 885915514 969087163 386760008 856903743 377968178 759945647 129910950 535090871 209398281 602740217 872476181 988191606 871784649 894515777 533697871 623867886 196844797 546180522 102076049 597432876 801951247 824193521 207181581 844715081 355374716 587276809 860624000 975585631 18234226 153856143 529963392 938434414 84125727 84245822 472786599 816260261 656525596 943094090 400876001 693410872 846378965 985574458 740722194 816598490 958556352 989111430 79150931 144153467 82911932 888767635 347799125 634022871 847874677 870004790 998131367 999525278 959520727 978191485 981371750 993949132 124629098 302759294 989757069 994960495 488150389 922958642 652091914 783798421 85822556 703600763 90446746 579079139 519585847 838415607 45900657 477894831 983583851 998251201 267814447 606848610 543020031 607170058 141333936 303487311 330465327 700726133 135558047 949304569 351848942 812414274 914975957 974673659 253526064 567340888 422465462 459574165 809809690 837860532 258642696 874285934 335145124 598895801 359998328 956058249 412293812 956038880 452972657 588942414 56708807 911598748 908148969 939788776 485823180 508260201 282055110 328870804 36228680 563155212 510016342 828486263 898192857 903911755 472064987 665912904 105950317 757839095 351040537 361016002 740072025 869645932 384898916 754602329 335613097 755190401 821921146 967327690 952786222 962527993 677406917 749138813 44872256 83062371 352540055 932672587 704345015 989996720 858114044 943421740 714882431 873397513 4959684 553530780 603613601 720782048 45026072 990786000 89816270 914472677 356340578 922843083 239680702 990651247 640972514 885931154 713663674 886103128 68392502 275022514 824964361 904065048 953007781 986141639 795869493 894522239 206470098 310628713 811501841 964220301 302445409 802168126 384152085 490154790 400990863 910412443 274889755 995007750 27433064 533489767 856306231 993532437 728267827 884927020 208242846 631450304 851043694 901150680 61715630 868394097 385779356 860034547 968093730 989898741 245649657 687289264 848681174 998139670 486717360 643510615 428831852 918659159 879844048 954505994 966100095 998994777 454723407 816019631 90028063 497036338 847580178 975380496 899931402 981262352 829536385 862870357 354827260 597211817 955798425 969857169 21903572 429006443 615374500 956792901 929102609 941197588 267482427 893027925 288671313 881543353 428306458 584265936 476690781 561006099 508867414 587348301 440762766 535561588 457760137 799543407 314497964 732525655 56001662 329357291 188730717 282463882 869610171 972611930 113299665 470202814 148034993 384226336 469608940 826922692 180637187 406674664 975127355 986237934 34970523 625263251 130090830 715737941 695252006 773328931 448512203 729152368 37755646 624447034 570370218 880900518 475939850 692941216 391635547 845830349 883345303 913256840 439517678 998283070 501220882 711971857 338898286 633883544 603524841 737994730 13115399 921335976 933010226 935772550 63855747 605617452 979584233 992216594 532566835 842692981 499186132 749025305 438710474 620056220 321038600 542544567 960311165 973394704 840172192 933163716 93917783 555069484 457839421 757917839 766480888 891392513 607974367 976518061 115762944 511638304 446242576 938766666 89192305 735106878 581267913 983528826 26094439 98358136 163516757 304628131 185525164 784945520 531671747 777834501 652741038 702358009 461282693 708184839 917517980 952863830 143562956 222878482 832548999 966165069 535434729 716471503 161708216 853052753 668980847 796069182 555184384 793885267 664019138 826381326 528340064 978983597 356665988 768809503 370354546 514729792 246412849 621340983 422599565 704784832 751982143 973079132 378654939 963336333 771031028 927349320 274750578 480113985 452583548 958993860 204284581 320370472 652554066 736809937 619482570 655607549 69935714 88216624 389130691 753445209 962091083 979591617 477736508 494724161 829762093 860579702 809561458 910125371 667699279 684011927 675484723 726599566 887937567 928399631 288142427 959955986 531498182 767049041 176582470 341118465 601963283 698093718 666687883 974800362 504437478 768206960 650331882 752522360 250277928 951176241 497247705 632055640 93476209 716850724 117042889 156748978 598033607 645974589 412096334 513765604 533697549 788441161 358808007 847057033 879881016 947425454 408106223 734593987 965135574 996740324 595271909 855397675 69652452 380246276 381885567 616775104 515829896 832264431 104246703 356605501 17255799 725393008 515867579 905634206 962121988 980011197 216665938 329384521 262780117 686658822 279024927 929924859 153510571 820233164 787424328 836456087 760918036 831415572 285273765 488333684 619214784 693829299 660698386 961465154 874383929 891574022 944611677 957680924 457350299 729079596 383846685 577470132 25957870 881208721 57173036 769796587 884678621 923373030 105485414 736462309 728786514 903306253 62389095 619078988 891335031 981227501 724185927 724859796 814478073 920138887 693300419 990149211 564962053 857316566 24528947 293785826 167351942 656636684 626267302 790996856 788844771 949005886 818973589 989219002 391535538 515514871 735134571 889198449 530458288 777043502 437459235 645908086 211707763 723469688 556701412 612230862 893950915 923591386 284902438 476360918 964334427 982343432 311585206 993954340 196274512 783159692 906215873 977049942 778576889 919355885 588015825 822285560 221548574 701708271 734928191 941511713 609780006 917690057 447633404 459668420 354835990 826970772 413946398 959581547 821638591 942055774 465478857 720390036 167216432 564840073 414093445 469638868 935866983 986170363 289419252 608545863 387494219 959534163 451686942 744271829 306410715 519063679 715282759 993213258 351213439 453439403 261098846 363513794 821717859 933187689 114954296 845730971 825081566 961352769 259652368 866750407 417839446 485795993 141874258 703909032 705495415 768280045 817695541 999789754 269147319 572008358 949828053 972022894 617390773 971409729 139114418 414647303 231143662 938807713 48167318 919518738 557205549 876084941 287771186 348708841 481068139 785746888 686898134 745692801 78701157 964164557 799892506 820042064 940710077 946512806 941437367 997060154 381862898 896574560 747365163 847489055 157107818 663321966 624984533 850096129 787550208 987920155 808647925 956150918 71876751 217251246 862703675 930100664 897750818 967278663 302635886 487933048 809742374 942276723 885375151 926901388 302568069 656905054 652939002 903271606 482129598 536895439 461620470 769941365 698503243 807809260 749372190 771470296 189847546 520073344 266581678 962015833 159324264 845722286 258223355 354434556 181340204 511419837 293949215 515923627 957290618 981112018 663684751 827270906 984311877 993122739 988299305 999259592 173451300 943334890 926239907 927905769 337228007 809615357 689042285 741662175 829883455 980132981 441873254 573178791 237762440 792690793 785144005 976459822 762226024 901945516 646837361 685319363 498893971 573385939 125706130 478892260 855422793 982624477 262209536 491484465 329297840 535111647 270299257 579709022 323254823 963202729 204649187 205855710 40328769 612154343 546386879 651504466 892490440 892691015 784758293 806519712 892375575 974077566 557560373 828473398 751790051 986082553 372589337 678845056 500252986 569081896 833761276 866789655 366307870 944283961 113608503 437015521 737624254 825661772 285631603 804888651 661956731 756752303 36993027 528712858 423038621 477633451 61776760 619735107 800033724 840293405 47783330 445328531 671862479 940226586 671683892 762068510 205826517 242582087 502095382 873410081 839350938 904962866 889500804 897609150 288633384 495501565 587113229 830067041 164459694 272782877 254535551 480081630 372987701 393238526 912116348 999084143 872642809 942438064 676607951 822683016 345248083 946828517 116802378 947720416 745089357 790466603 849437455 854827568 947493231 984447286 76820308 419581398 213065379 418033038 824010706 967118764 597070670 785703011 902947231 999564656 887802450 988412222 617331133 675729767 762264360 953650084 119605335 400685233 985703052 992136772 478299043 479482673 154656538 529568638 544983566 857165701 419608466 586903553 11525771 487063145 612389636 672813474 44098407 330423103 197679747 366079408 973780559 999665045 905098108 974896586 483922964 809759871 172396996 737027360 527264618 599544952 922111319 983319863 485731477 864862846 142055948 642108853 283219588 700248834 203202680 868240708 208577454 649556572 107970976 768539509 364543594 595946995 401894295 589915301 458141551 936021182 241629333 430657239 406656685 689713712 495393184 672716730 865503875 932797040 719930814 783417281 330622319 778475291 860823228 887489788 127675956 370773989 535666073 795095011 892747500 994123165 273779086 742012108 558490060 764255610 647225685 743059086 389739491 863671740 779071710 938097474 237712923 439443196 707249773 974136777 29046782 92898726 95116388 942997279 52376448 345500019 9236767 421450276 142295254 381178350 860146421 929812437 90979060 245595455 366384692 696521015 713068434 794217312 862499045 989280688 182373719 320021336 345041158 792012655 34455249 102456007 599125485 931002413 873746202 932232703 646993005 714596193 704831825 815113425 52363729 961986577 246080350 746523779 771785322 846138866 384153297 756297654 871453035 898783022 3345422 934938243 91439056 768895804 253511711 480080352 32539556 157953174 63084700 779908340 436921748 624455448 127467536 197430394 710728871 860866451 327630629 974332924 136032369 422750646 365608105 691197139 564527576 636520082 741816529 944390605 890006018 923232449 427190001 631525851 861446516 990727280 533198145 679251050 378024134 928205291 336108542 353104300 200364926 903125847 760195493 831758542 106120976 174072175 988152175 991733870 77993964 945165008 275693870 362267812 365361522 432594770 92549194 984381731 85615008 271149307 550011472 663393611 100248080 624371608 762207859 775586093 826506476 977247697 913992724 956325276 915396422 917080222 242528969 259432097 440625407 815993436 304047278 795362892 746969588 891890163 519890842 531544085 136270001 825844841 347905851 536154055 344418667 422676786 66206532 86661932 67016015 451715832 663073511 722729674 123266488 517138029 202719283 984395985 578786047 934930965 194688322 562735622 743240880 969525082 447366666 571064274 369514891 659014723 5431947 711192200 976535417 996032137 250444160 295910411 490911374 999859909 553435780 583545805 888330643 932893539 245451138 334710243 384514729 510313558 586493301 627815945 917805138 942006581 229210936 465695353 463775256 771880938 131322646 855121924 13316095 254812694 813109980 954108728 139352145 245596985 991826941 993705003 877883537 995120351 130320203 629180819 636028992 965611709 699394750 929111633 674465386 944472902 300078946 944906254 895436192 909498994 475375943 620906494 566848302 602051797 651994749 664769393 742994138 964841155 325961395 924153777 654863761 831953293 381456407 645948775 274573836 960075227 275309304 662968354 421266253 527190291 729610362 798820798 782308886 891029905 572980767 600985593 660145601 744455860 75952584 850066788 604226038 642637642 985122093 998741382 802774357 875363906 64320126 654729629 845269773 867864300 954939930 969383021 380245110 555807164 437344650 630987716 132286530 621033800 781903733 808524282 674604706 941382215 953431918 972839064 799482606 872462610 557392721 607535418 419399164 432635089 75996065 924195507 78444336 839623109 115870835 192068898 620852373 798331855 679484014 891780326 269379627 680937449 145252107 198369370 933982193 985978186 271829269 836679409 670434537 890412839 654190953 741839886 330724055 416658356 549249996 782697371 72235856 293726934 304394815 768814415 887274638 950152227 220236333 256837766 46134443 93501722 665903942 744880172 374037392 762691009 64141105 239221643 144592084 522987915 901965606 901975110 324969981 387280582 328323450 959068554 275454132 524748886 76741755 311543139 969055899 970644414 944453304 953133709 710497656 754677890 276923962 529975040 684920994 730511893 920524322 952649614 22310565 462774629 763687361 910293350 644272876 769716792 448547596 551827314 630646052 912774884 252643059 421827257 413537753 955167517 751906634 759322054 545011555 604201417 225702748 484244211 155954728 302158021 469423643 643955903 447639637 590610633 92735389 178799884 629215496 830536279 178763066 727380772 209019284 898336398 287657225 288591846 302612173 338803399 376449441 981175590 622178978 872634928 9637881 144636806 162446983 406872048 701750571 845669179 690507499 839741818 506428113 994420376 492681271 684181665 868660997 962631115 834326794 960188676 874863602 999029343 339192797 613804776 903316785 974444970 406203975 771196099 212193224 308796071 390616529 492451411 101072234 542175459 518580422 525459261 327185869 889684020 604706505 855225277 368042512 969671166 584370027 893456539 458369298 662995742 164730001 756542267 417939550 782227909 464470193 584696311 326830286 743318682 753738817 937284781 768991438 788634699 30859611 817427391 801343123 933848680 189872995 212765863 910797464 970428969 678564920 742773324 163746066 986115374 244530116 556893389 700418569 800573221 49455529 50848171 332912575 620516339 113527656 496990870 363164112 605625956 83651518 704119585 889863834 919814882 358350607 382516668 243411453 902420630 159934912 994625838 38123313 955304631 867551133 980383882 415919602 745358813 262591695 648669358 324647378 552333981 517001717 810899079 984995612 999076155 287972911 686715921 365020030 608761191 543098525 786500761 217741349 313252802 726883298 991363198 143307243 875463441 633714259 875125410 83588864 624090503 593541213 618488863 812536153 877684935 75318345 442011036 483703597 853151295 912083270 987751399 950566930 999675326 38371412 613123236 387190166 650305612 810573472 980441378 876582292 914365740 415548303 487779969 627531696 959160707 479576844 711760551 622519108 974519636 74792226 648948391 300482597 952368582 829058456 994271886 424053389 927669609 974248709 990717552 618862991 922660561 422619324 494768951 914176428 941020501 188094284 821495840 667323348 979783161 339490561 369456145 215618996 715946606 919722004 932567410 931612647 967789840 961009168 971201166 985729126 994763602 354746219 833956279 150326226 669606793 571631127 795009137 284130286 405252766 290438841 600955750 605818343 832729325 385598951 763493245 708530750 998856977 397769160 758749775 491980602 623122574 377017641 655982862 130208104 692752264 622763251 737029131 428808879 729670904 216169764 287546728 307350722 764124155 663169555 996960051 371994338 528097002 214174067 591023581 858916417 884396651 478119460 828665861 201093670 537927434 330572489 916610369 967617822 975033248 735058899 940972610 519694794 998276522 914090490 929083800 696424335 875016636 633107877 935704975 545250643 989353636 640911327 693481708 373686454 534323975 653674491 949334860 155256723 446900471 911049024 961256491 66044356 731001343 648665593 875115337 593828045 706417546 99302351 625625728 817741178 936801596 470129947 853797492 761175194 986701423 4009388 873711953 418520438 857940167 983499719 986828254 274994679 521416413 625416584 661501129 895735966 977975869 108709206 770171404 321356867 940696127 278792466 415396302 531270809 823741062 919334557 921327657 335852908 942832600 404489306 414812377 762710970 891147128 288036524 392548142 876306110 923739441 297362560 926317257 443625601 781727388 346289213 963609712 463894667 949559904 658189938 869964705 602502404 677643259 403296509 560094868 61952537 595194899 833541699 953907474 240086540 515342608 131279995 441314728 736671227 897171422 239071880 410201896 651743831 713188730 232605812 595596211 364701109 740567866 151433522 311602173 547407942 690341939 397256162 755109305 973000522 979019999 119522808 299028428 66291670 310824262 254179453 737842366 836407982 860217999 312204968 887028736 474815471 657351343 802310712 855704059 134295125 308158094 998098425 998920336 12340925 475645641 400420672 667356381 940572856 974764467 11672285 423155063 527366933 894579795 615112537 886334410 785655278 819529035 45090773 636557156 992244532 993124991 893315457 988606754 469975587 561427503 163170479 728391768 341028898 503873303 458624205 460701361 692990747 864679163 642462754 899643579 288625126 867262639 373030170 712320156 978626629 990664965 781088190 944308635 927565920 970233253 824792281 880456807 228883866 459546714 983099356 991448723 159093717 389863298 352748372 778417341 678680136 999545209 67342081 571885393 681577018 703598764 45851155 156735696 487858413 642865712 646497688 767535744 274922769 917058020 615025853 910090806 436215536 933715997 574737097 881396621 216149714 762222286 584054456 820873542 549699669 592165773 693196665 949568373 177554803 949537102 275577612 495578118 409371071 861433889 572047371 828860231 343811906 743390206 408375360 512471397 546938133 961545088 972409448 973848840 561858249 609435819 710228269 818412121 248397972 832289802 825142390 925697862 57877799 172313354 211487437 832963861 153370567 916859689 426984185 641319689 431151445 447700143 825216625 987066883 882536499 926028613 468596045 622218166 726709016 739354752 628675646 879906541 748993845 997153665 859023407 951594238 879572505 941090065 983173723 991123951 26645752 227697517 815689535 943503219 936524828 994555293 256813684 693171370 125839226 563466861 973268234 995503828 325822305 546048264 622232367 948708427 852810962 882141703 268717686 673471856 869877909 912130628 22610417 658992090 188967281 787880689 845195223 979286442 982872902 996509981 658398507 810702950 610064433 619082419 266574354 925839714 372126033 753404762 719202575 856691811 976468968 997269049 254495519 897539426 811397319 993528551 626070205 781086841 502921129 631654962 864778639 965623532 930645658 941721144 718680976 882032552 730734273 738833625 613695565 647904000 675226370 876989341 165621180 446246783 319928803 381269971 16191872 118345889 14884860 880597288 100754948 588287256 677895446 937474430 381261461 967491592 275238024 444441292 894130821 905758163 874915629 998315755 365631775 378418604 567261486 716300134 388722831 519352906 494854575 762721459 836632430 846174065 460716695 600060693 713366961 871035473 201638735 960509429 828498114 894047722 26447495 218667925 57394096 861443229 364380203 595454688 843662093 934737192 782522878 948185745 423594602 570960340 233000599 456176076 448938728 985110145 307785794 500523972 402857819 420555725 220283881 703221977 986818719 988356040 473952484 949388904 794362204 983108313 379854339 944234972 132342915 577188123 170417214 371040686 340387277 918062176 702804044 972722760 950926387 968222270 135803404 601272155 300072653 403618422 611851215 793359243 677045595 746713951 988176588 991761537 394680096 551057324 783338156 846965713 340125087 649063955 960821151 972250902 681858634 907047416 709601882 880639743 675832124 890394939 172827600 234872010 981199490 986898519 311764888 899033790 629255975 776256786 26496031 573558839 512585381 582745298 825919225 942350368 993579497 998668595 753147119 999254113 706868173 725932401 362225697 565364887 765800691 972605224 577073979 605269261 541412153 800976399 893750864 944938104 608684882 641252207 963104749 997005617 854974715 990738423 221238802 788753341 472703576 970097542 870005323 898249981 618760753 814832800 342254185 416629369 41582158 104897320 290177276 414718546 623636822 756300667 275140603 322129007 270890340 762455244 752933248 881543435 3690108 557251046 35056755 558266282 954836849 971944786 674884261 970748724 559713962 676218822 892779706 930408989 980619009 999053524 533264322 930296636 769697646 988594708 547105105 646728153 484756537 606825021 820622812 976872334 717777754 902461683 991186685 992744004 243187750 409366390 679223130 694941454 508746861 787729997 341802305 455164563 859362056 933726249 588860693 711992114 989145836 995216032 51233114 192755132 536699299 875400722 681210525 887080566 341728382 428608575 391833043 634541461 84492386 763435399 162555523 310755752 877493326 934584815 690032777 958001105 274731993 913576638 585924264 689409949 347823162 953371477 323394704 384798985 198212159 231420685 961577910 986395093 103440028 239558516 980131672 984237801 563847923 612219429 258829347 272885760 51701862 143663788 115996793 240381570 545870551 886606328 531982463 912903715 344844522 829216635 45083642 762471825 606499812 678925957 174648636 420260295 875339454 914727610 743054302 892218214 358222213 610762284 277158762 777850201 552488941 558520955 107663504 945330839 550637892 913034403 280251072 374056094 256390786 451262754 636362337 897739059 356364654 997819079 165425702 860133768 715916410 754527267 676520878 702078343 865957044 869784383 598808433 816068302 712490564 877512755 415436522 657767960 434942356 838262892 15760875 196439986 86302655 556051004 162411372 846601963 466145920 683583945 524837012 751935162 207882400 558685061 722452823 858330689 671169924 879330874 721118172 822356388 379061090 735333146 803258005 962355501 75467110 366541631 714019348 740811079 258997586 284830669 60500175 742663017 105906470 340090386 922884007 990945693 286111962 422828364 414343208 481893837 344626509 999507840 916741125 941304349 692099004 918430547 930315337 950236105 381543006 765263119 96435831 218961823 383405360 425509179 974303295 994851830 340673094 623889959 664282194 697569986 590569617 714718012 491583753 541345680 228589402 299029229 552332583 954274722 798801065 866916423 659862293 992100971 674790072 683643697 149842569 265777741 871124247 887401561 938384368 956031790 580613155 916797319 55530695 260073833 316833960 534826793 736415308 856003660 681653889 700342538 762169561 840989113 622479800 924707478 710882381 973612955 56624886 647336359 90130398 708897775 589865678 732243663 62466845 128562805 150269497 560600923 855845888 912597232 533362951 698526500 1951493 479804486 237049157 905832668 335662987 671832407 93611377 822776497 79285735 632430078 383049068 722772624 650178407 891858406 508392534 996234528 866760006 992539548 616592185 938483579 413102040 580107008 478828279 838248361 939700168 949380312 482164895 925868142 423280519 931036166 886468303 902666987 649535943 974010872 419717220 881914748 711955772 834902301 679697184 795084426 331033413 489844846 699102925 964890322 32568981 432926185 210736644 871636760 785647650 810274310 800676565 841557239 928600782 984456335 343448265 717185360 352180841 531600844 513793718 798437684 149336367 476934346 711221936 825433185 450583007 633788025 300677692 429659017 624363776 752011610 290225561 595149311 519765979 939190690 44803548 924297932 616282759 824926078 670696122 754624381 633958891 900644808 109886242 330785120 536601031 975338379 654601583 836849247 172355680 961305692 695823861 844428945 582982393 722042332 304657882 815477656 393082327 726562530 241477187 964148086 5231384 541473984 474940993 825031218 344361942 655526628 659604577 850199228 811369991 821656239 850704043 857352486 931423065 960641393 5221338 44072981 701618780 796022302 314681128 646548740 355497580 973811538 510495774 934757195 96230396 148823820 185865031 252362315 125081465 172669374 86339001 941141898 832246342 909218861 129077954 445986480 43612289 560744506 379145231 542661575 81917156 317005072 989534502 994328778 120123749 547462712 463840755 985025056 544819839 615731135 220814540 302132793 533438669 890123817 519208305 556742240 171568889 948619864 796989572 903983269 526336867 957596539 868790742 922100342 484517000 576645125 239061497 483746620 30016271 565660133 82474253 981109491 329229320 906929082 459837927 990921058 406869498 409830872 989817763 990892930 314736966 356414549 111375864 903977856 474421657 537005975 459148389 498035430 195075865 754641792 339205225 856726606 364288439 669790476 369114343 819384387 931877773 982117433 26999911 935068106 767835981 852924844 408668290 861296551 266243250 303458099 485671212 942444954 543885243 820795577 383224164 410853782 744350850 994041313 917384643 924884594 622165548 818495460 443222193 528835568 679023710 744322277 792125632 866586088 86751888 124602472 536428890 661247333 200245159 845426262 849145036 946870949 837764081 848338081 835626041 840990578 79674807 256759255 128616835 622602482 665630902 990977187 768409175 925720443 481869212 874538920 622791787 633385123 379788592 449899819 646880078 703113003 781066401 945475093 660731933 870666729 707283963 953153613 63744508 335005015 25453344 57191902 6108196 102209049 801300027 842480440 261445123 413288848 355479713 425402803 558975557 720217174 474354044 924783610 196880079 972207125 466028025 757271357 910823849 960046524 899442185 983059189 518691258 886715730 911769061 989994908 808905299 886056556 34433203 706726223 911468920 922992982 89581490 375133942 473176025 781344485 5545262 143956016 564178828 669246352 459010438 722190751 118073419 494746579 418811027 532571932 223496247 504020182 232371750 615462267 68106379 800114452 376524325 584996916 103631991 664379689 510444228 750907564 110281196 842382193 606481346 983672355 88505444 782192311 359504875 498433736 957213771 961428540 796720671 848683143 120014359 325184222 844078003 988435593 56041064 852267299 799001657 927142463 703676779 989882757 629638451 835544203 630137004 904642033 453372431 585476581 747496664 764144510 696665815 999932826 943376090 986307152 161718942 600054422 77405091 190603076 797131901 807383989 320082490 701023239 283834150 701677483 192855141 431274929 186541992 906644010 734731164 877140631 488422476 865447780 679575534 728391078 172277233 971055153 7967717 825343121 475553246 580285771 525442695 605653013 550748452 767656194 587748613 910493877 233640384 733680483 377703376 908717014 327726173 612132839 149484125 786216268 757490688 919696689 674149945 894703856 114565596 303918457 36956310 918310528 644039989 858838714 759271768 852060062 942030452 953201025 656740708 683010325 657587461 661557260 259478783 289568851 383292429 973370385 495342278 856791930 209079982 438275752 735865559 834251272 506288252 631412806 561299868 891317518 817703577 972286269 218946079 542999366 229670309 294198787 159623040 493538652 884563248 908319900 618124581 622207014 711739964 894609844 436819123 626850519 727291837 761881007 463658055 500537989 553188707 958735395 420801859 912153781 808715838 938821891 742414114 844316765 163468521 856544888 681241252 903669173 437490892 614735438 995267915 996275755 262738214 949458675 175822517 524246192 674101744 770189830 157217485 750694692 23265379 661119457 259366089 586800233 322559517 785242770 130601397 966714945 962079688 982127088 884996002 999982725 382219433 635302962 802047816 818151209 489164379 889613862 881508042 911087908 833457658 996540111 548043052 605728654 70921060 260161182 41878116 821997200 899972658 928459545 474259494 575313929 908828253 920571184 643640781 695288362 334328270 502376261 686842760 935774072 832441775 968854603 285198388 900222735 118364097 592243622 483075264 856534958 468362830 900430878 865114354 919194675 829609553 840966554 866390496 909609673 933049087 949250824 676138748 975847583 305286094 735545963 277554912 927432626 236057534 670861790 917869185 949042353 289442675 649052290 574719121 585554420 939981017 966188835 5343080 56685805 289282300 858622213 718535887 856185882 678790002 980642842 180060062 749641477 960045933 961312568 559120000 651977906 508060349 962096271 500394678 672101057 708021279 982629550 91277063 111820795 860605876 935586799 469183529 782852562 540392077 635419230 314961018 919934170 135334249 943617549 390598677 554871287 693092384 833227116 179313504 412970661 17475221 715091960 74763388 982224492 524013280 738473756 209665003 960979641 229974341 368933602 432951720 956191019 920755815 963048824 728978834 815826538 496082605 988783450 777858395 845332349 418718946 698259779 16830209 286552414 505428404 966895623 602274729 705174272 457159900 611146255 958181307 962352234 778341204 940774724 763387742 998931486 329115890 892558743 617996805 918289052 23832660 55128335 412012612 422742420 463125798 949059998 647531913 775515931 531695903 548756922 520608030 646762733 969748884 976655151 294055863 732033695 989295596 996145751 74754044 294937411 668729863 966068601 835200192 873426101 550516290 947195452 662498488 826127003 817651923 973524103 970738402 998019134 977644158 990659339 113076099 840783539 352986277 744918290 372853002 851502393 20127240 938824398 462441999 721171523 984412905 988023667 673097568 793680399 979100732 990588278 60367493 308437541 707604998 839707236 671746892 755149699 1153370 460267762 901966202 944757656 804808918 833591153 862739203 870807680 877830207 934833488 871945330 875338029 485636681 745783753 820713557 905594005 797727863 802409654 841483353 858175374 365099236 867306083 169111891 508686887 298371966 599026500 115168126 692186810 889471282 987907224 772485097 954245554 919649886 976650540 575292318 593330292 481261501 520724630 987296640 995387584 26639213 867497128 238167989 364426569 902077094 940498877 849478407 941187337 769171883 971151264 818114940 992568024 604718362 755671388 786733230 971247540 153305017 932217509 72742968 467485012 461482493 925848400 510727631 839282169 50963614 483014410 528818065 612239435 704896209 732253979 272125788 934518196 776446876 811645287 128779707 843123659 130439211 915238449 463047290 469336221 188442919 949856633 443290425 728176233 322237736 351353694 997177560 998512946 797611609 948726884 87747498 428986989 819921753 830168708 652229694 827333649 210282983 448645163 690629347 944525174 897693785 955597034 376474618 558209529 977775546 996242232 400991537 452476057 867595432 902336355 895904512 947028493 447371905 759136330 558425886 579875292 218725493 236708170 896332656 901947354 354491760 990713375 865787778 946289585 544327295 979546431 896288977 906907657 900943972 909036022 654478486 850735518 770396241 774712983 94944215 634262276 409637111 416285762 908849145 925905722 962300123 990785929 646742719 717599918 542061401 819280859 145032021 513038926 620403359 969038874 511735053 986219633 234964843 763910156 788445497 957774038 537918063 880594791 31866606 864343172 554036635 941644652 175670711 901583001 998076467 998455655 811577161 869481795 670979783 936107475 437331363 507569161 197856562 331451404 486695471 883039892 884938398 928240440 646573883 678393162 762933499 856807017 113535453 584166337 87127817 754027729 791930584 933810629 193538599 657392399 233902361 898681027 547825891 559819679 833804175 998156128 98824400 349643219 468431750 757217942 316836756 783672048 959973339 965552951 569790295 933685027 53404669 174554620 142105572 267282341 65346622 658797199 927636376 987013440 442791995 794621667 386973864 876903612 99420345 623365165 729308938 777121368 15720898 471834936 915532709 950099403 665988384 714732438 3158048 164090585 128186720 787732530 52888006 281490218 923071144 968354497 769723864 874069318 340625260 908302079 49999459 561839549 99696222 346250483 623774821 727280166 794786127 797126794 226414995 855943233 566728033 608453979 40196415 641555284 571704063 948668219 453997760 660081159 588770178 819207227 991468075 993825171 762607267 804846452 626308321 819759834 69045277 273260336 485606292 961681916 213300538 760301567 341228132 805998507 380973618 814884664 644088322 898400231 851084901 852361561 229813573 537597084 673994422 975530306 132746526 407691186 400643141 896102227 911571925 917655568 682617308 788484541 403564477 936790191 220663543 971480411 340490333 831790541 792229702 850297603 355581085 673019244 606153743 722705335 161991409 163661649 531983146 564914290 236959680 976038433 452939675 864373519 661588095 781322229 591802994 858175153 638347629 758095158 787534868 793078594 658913758 851961507 426016582 797420317 811103272 890806544 241747777 760605152 883372609 988766717 142207082 811145469 311406836 443743626 339052793 817834331 950521588 971642568 939409375 988973250 969517375 996570181 236768815 385276447 189033036 920784561 947462036 991342022 524872058 749116947 715879760 978125214 110642626 468004118 456899125 753963255 702249492 902414102 510887285 898700417 648497414 943597252 521167097 772154571 721067368 919717609 127183373 825088050 232095376 923508243 428477995 519875956 437286838 497466910 438453533 524373124 932030603 992671752 410360957 786523137 599924579 623548589 361978905 515984282 135975387 268948191 916248794 976087783 533948769 681521802 500007622 917442354 162852050 498291196 890312576 943803162 223326994 823065241 237603526 431857265 901598196 960022648 504392131 832021389 906666741 918312535 822503000 877066519 293824027 878563286 203902198 526847518 22755258 355007755 433829687 464700917 152525854 264377967 840862042 844203545 635957468 994839786 554497821 838383524 576657869 944532096 808430286 878746512 596719385 839562979 19982792 414721594 558529670 642170682 336524076 367024962 622067127 920230700 290285649 888003841 244468203 279093140 944035857 954339600 216496437 882127198 679144932 788877306 177357174 557507031 444277660 780428447 248027277 516246852 510776163 604421947 710364552 933022508 188508327 571976271 835773627 911005561 751330573 863799548 727400717 936004004 658853768 952255980 794730812 997228881 644771533 843950621 16566789 566560609 372081197 825581634 484800637 669530562 158179120 685557572 206820187 412699841 936273524 997159179 676564509 773708989 564159923 904150871 373883108 758692258 403993637 519296775 990208605 994031271 106922120 240411778 890345980 930977503 496676049 522487742 705234475 962614020 151215822 364806569 101542343 981220798 325199174 423436080 739700159 888565577 662258931 667919418 571528822 712587115 56324085 835809410 774715275 828603574 668362258 993014300 269717195 924855124 166437974 381143440 415143219 586088715 588039131 654618028 731950413 878106490 161633587 732029590 31826886 109175496 911429807 949243599 769840505 886324867 169291139 367148095 803435600 869734110 465429733 601696197 384194615 388960173 284411769 911830891 71370572 866931024 858139854 972987090 848478455 945145581 399217975 723800143 542939039 595941280 415735283 438807093 154397320 821944509 520243099 615858245 870911265 986370885 203751928 834864146 778908479 959171991 881218689 934732759 545385935 819790271 284871006 301988275 538260442 823471319 922702478 929011274 743075279 954961544 361527127 422754054 712533603 944461956 882798341 972322312 971899855 995537932 981945163 993307328 723442012 905991837 424637982 722521114 866678116 979717992 810794319 877721297 751905189 814649718 282765146 658052452 798907456 992400577 428126529 547666483 344327992 723057646 718379952 899855920 749397901 763917675 412848742 429825170 617687023 702042083 785732122 935891015 249596010 317902833 881880159 926501647 86501992 125274800 875082075 879682979 679534024 970696727 949092146 981436184 393967112 601010185 306644652 495821652 816507183 822879066 146153124 883319568 700775065 866047590 317111218 745891019 805251642 890224783 25073292 809942097 876045794 958744911 613182621 622950844 876041950 955244462 904088483 928815297 621245226 662134360 399644359 963742051 265296897 983639044 337905038 845133751 822056469 961100189 378777882 820725190 253509117 453941272 470288066 558372818 895862856 897189230 934058567 999362032 791036054 985899844 849324623 974655423 482813753 662638590 364894337 827680457 47108673 836806486 684364635 813524135 506778188 886383133 908576781 933870045 854990862 878032015 906423386 936830638 841930058 945970279 937380438 973216996 741080029 924610246 964943540 998268984 766758438 953921372 329906307 726238996 47619235 409349133 431348115 779135082 432541407 852352420 71494251 131218387 761310026 872310720 679295381 745052450 783402846 970717317 635363454 683352967 223659448 776146717 742968747 874682013 372473056 703070447 970131735 985656890 336674307 395628674 839195659 989405277 661050714 705882141 985898205 987745735 151674169 576328874 265246889 640492253 424591546 512461805 572329969 601344289 906349642 980094623 365660846 508087390 759613934 937568823 82107488 996718843 778042816 781697516 225668972 660574954 867572592 901786820 575591759 591055276 815314116 917500163 260651722 830176020 744002000 977902749 881922741 924514144 357951270 946683659 591147635 899182383 198784822 434409788 835804345 931592618 566495995 635931872 737333029 881096080 770266827 842026104 583025442 757145828 557184654 597794843 498000726 551424651 31849501 54164243 220010405 570234343 705659235 852391720 855973231 906913471 911376547 976828319 324647605 411091044 960037286 964766238 75270581 956275029 989732320 999420157 397711584 715851034 383017949 839872217 612973340 789188378 110602141 444221321 353167475 957146067 228614874 858693854 890585446 904181766 359570988 669971305 435092545 649276899 595844002 628411690 367639398 423274147 840182629 976223819 663439305 926404797 858484625 885881524 84707554 784225221 251273654 846389654 674881993 886705984 40676427 305989445 220284417 934614845 597232189 744918000 333671200 479206249 439564568 919103825 741280294 883773709 348707119 801083266 690632598 812833175 279602778 915810308 830712638 936440601 277528828 996222901 324005126 734650041 505319389 509581102 906108708 993825456 947014396 949224469 880268259 916408918 565411608 723473886 691458751 901955199 450754595 549901974 173823163 887944341 205419486 611251036 270544822 418561279 619099547 948856132 186017062 857142544 109183875 815299125 598429865 975783353 522383904 886403364 100045044 927386688 220549340 549904248 211753076 754306185 433652860 657152232 135748938 506024562 906325051 970943219 508418799 851750186 3221931 434079892 574273138 693939789 207693141 246280582 152190882 400177212 709470775 830786958 247646477 677004371 971487072 979924781 336354969 907105249 436097660 743108803 213108167 410175708 290736873 454493500 258532359 802947822 434517086 667571124 565868990 609457274 905756376 988014739 475298245 734168644 975915876 977238704 253406199 383418935 570384006 588467464 54556334 911163413 347287506 873856582 753851198 753996055 216914466 889797955 976333075 995268337 484436812 721292153 516843716 615414596 318042843 844057130 684847302 757332333 421934045 947706495 203234556 525085343 724367371 732031508 839808337 919677717 115321306 189106820 635875605 941920823 487695901 882013120 88445032 678557934 474457647 802378785 98577006 872381576 219328024 224149295 437820004 787648590 792401776 990371082 151691013 928393640 431870620 640866508 865996900 949486028 967514341 991991636 973306159 978063192 912298327 978484627 967243581 989678039 41804956 417806249 805325795 927133038 962961357 985908150 98463532 296578642 743836171 885009647 411524869 890322211 995808368 998826306 66681806 547868188 947412493 998520479 945065268 985244740 996363384 998136436 589810731 805754389 349251772 903421858 784701415 933905961 511402539 742325380 455740746 526292133 320133880 706119683 396240623 935796144 456763189 724781931 969771290 978024095 852270119 950674813 540679298 808522448 112290652 406859846 119424187 495736352 833109799 835995034 834762330 980989557 550074004 923317720 634609481 807958221 922709009 932469262 134581055 861140419 840652548 975416562 601336964 797403692 486597199 499618945 775651581 974855695 934320513 974540969 686962296 939305229 959026003 974827006 677724968 693114518 795652406 835119767 19160584 207287316 46422596 59060923 337984237 873704304 521209663 920685822 393525359 759172504 999074931 999430526 723240757 843493734 521135332 772714875 360869963 909946598 43086741 217799209 374935826 830454195 691215350 705200200 717301745 974570170 713113659 725810845 751984273 825291046 886040455 960863827 242061162 533373179 224011749 477968859 613513231 913304970 89249348 408713556 851203630 900241509 128935339 910467691 637205934 793168967 234008060 940569551 190439402 337585940 74732702 207872294 641930904 929087489 9960718 617522896 657057649 688333776 720863227 876962566 872001072 993961204 556115627 627047861 506055035 710024984 919322410 928440558 129146987 958377187 155166362 276431309 408304035 631929980 980826877 989985331 460782740 955314669 958114735 971054156 743708090 824350548 589044119 864223470 665718581 720800747 932683759 980569252 287791626 999969147 434565915 822578084 132055962 880768837 557632519 564363631 665413264 967203548 494568081 523107945 678307305 890456222 508775548 991651647 592507189 609717173 742657926 961417889 626690635 731434677 776185727 797313327 375094167 573722192 445914651 805170585 779413476 872841757 875675184 975819443 733225349 960131703 669797469 949277537 442855417 925995547 221210198 337604060 385461334 533785029 933949137 937219678 821772824 895669174 905414533 972668081 975797263 991943238 987785977 993604202 150825276 472756147 198563875 342937544 347450264 897861535 388872533 490605213 752759009 948431424 874868545 967838156 633391560 919966518 239247956 373467093 145511261 404409344 88274578 404196167 319685553 721938049 227618126 480725008 119922772 742119639 321770727 473482519 198178910 944874715 534187707 539480821 158716894 574470196 869546295 950780753 299752920 868965876 107039046 642059083 743553247 803323954 889879052 988795401 688501053 851082935 980957620 986663071 562533177 700117295 723332734 817414617 365133264 922754453 713745332 855257191 96128171 313071491 588357461 648211355 455354682 768826576 702954267 919786325 981911020 985712873 474094271 501534790 709425038 836138004 496199275 497916860 909249809 968754138 115785706 584028626 327845388 383850943 761437335 973634664 566743195 949359384 884533506 920406285 305973 677197007 722990370 920066000 256514888 468566660 983221469 993806411 283086979 783097622 684325270 775326563 642681781 779326532 675130429 888554037 820608550 845240313 24912621 421077545 725265457 961993180 794184171 898424341 753498438 848047100 952342785 978226331 338241772 792159427 293545466 595479239 546571017 687686651 753288821 918690875 718939372 795334012 966075715 976047394 794337568 906119947 173932397 516630060 321364486 412724622 175099778 319147640 682577746 780173143 156617784 778122093 960947624 992604796 697699920 929780389 566649110 743025872 62566145 876101839 477975230 606275641 991629364 999734369 379643895 446717276 152038508 933460164 733649984 765545743 42482651 819589660 857356063 859512127 384752470 747479354 225497010 453416809 21909976 201033958 306933202 484095106 622431303 695588665 940672677 943670499 809267942 891549917 597699551 968068504 186244310 523796479 498432518 650247278 595571582 745701482 109080507 940014397 19269186 80122997 995146519 997614040 910578520 958196709 721976341 822213133 573525205 938989144 394395364 930046576 427937440 530556146 97447881 198128940 16020040 748988889 436934930 799694869 235404357 603151255 649724873 932757127 405956322 646681108 161747985 580704462 40643064 435262177 36098007 413664710 475085664 604934282 6676198 391777953 645539287 853851056 775992520 937779664 546276424 870919094 838749576 990512422 653822694 664772140 494247258 802511815 994742922 999867792 132072239 447995046 196973619 647172089 958980005 963772653 298560445 917595157 274663925 440557976 181497374 286777392 746446928 821499790 254840462 392039193 985099116 998950650 30481447 420352479 828215365 875905277 853954862 859161856 527075083 961387025 706467333 715516210 304763644 409513941 511501723 688951422 756922550 791388020 706749112 991354290 515232644 924996983 525757212 897605815 927066896 931639445 698051723 774529132 410081236 598508691 107171338 579348527 804706474 950058546 509910955 695954661 538166965 944374096 244233459 555505268 546589233 820387475 118026307 731685917 208591303 811898229 855228630 904898882 896229497 934265325 61447930 275075052 701059227 718235500 167925816 977287649 631363240 715296428 892450007 900331611 812925156 882734861 846849964 961698340 689767993 954396273 869714921 874474139 421104828 709791405 706566307 821871871 551523944 764354127 167695994 592023249 263215624 477466636 367397725 452181925 751720280 816839293 351486981 872505522 418212542 804238909 356738567 389713260 56070786 605164519 109210805 841413575 449480733 482811475 624663971 716261849 200967210 574726056 626382355 967401844 84869535 496726756 186858655 681301814 131283228 793976892 631240901 636720809 397780096 686686679 971857536 978481984 7014029 147165944 128289029 348864428 956829680 970272477 622498035 696736956 977896398 995139787 109021925 608820062 209956578 366742886 645770836 956975367 937212186 952813153 77376149 669922507 155155436 353289988 363635748 609560842 814614226 972085043 56933904 124814276 668021689 772765472 16740396 521927656 924877847 984105539 584474261 696408678 493665906 927960692 805543477 939546318 714633761 934870915 991781163 997752194 452471555 778632017 701097420 929625172 452454685 846695897 974077723 981594867 971821702 976267014 441017962 906543635 581634920 790045359 186247254 800060547 95764072 562908450 52669266 601271232 764267497 916871616 944462766 947094928 786975902 839342725 605686761 867484999 620942837 804292042 228163927 234996165 90143733 733552385 309136745 782702127 938972224 970575460 48156917 975686552 759436325 962783167 85728771 997526078 736102183 864152229 287177797 701122366 178485546 706765892 780160310 799394824 542095654 636778911 235218795 913419897 809223214 906869007 136759809 218121743 128752079 265291534 639549097 831500926 826098473 921505052 891486715 948410669 938159324 953784187 448087703 594816684 986759579 990323880 943329133 996742659 847306897 932365857 613932870 881078763 59030196 985137234 831077141 837296499 560838050 897165089 941665398 950690914 477664132 694816928 884301425 898592571 806271926 878275812 432141130 446657052 180113598 904741999 419478923 695137423 781536339 822377654 426204376 717849089 571220273 910238424 21361599 262813965 467290672 862915502 124617988 786462470 115168972 356811009 533917539 660370077 866852341 918093369 744978774 988131365 437872305 664062847 218653549 504342977 768705041 911006722 860946259 977635649 756849766 842333959 419181896 473737864 27177840 89427835 732325759 854648967 308962263 626310153 419069173 644529028 612399990 826387818 309481565 618222658 929716024 981466354 145860904 534913454 497034182 610765396 290310258 632365359 136289383 210365922 693456874 808531342 628192077 968174968 382149847 810776672 269040794 911039951 625875259 841195661 716099031 747152917 234893400 829139194 198558844 728318154 802728475 925777467 604992868 898546326 111381031 221250373 493097137 522698078 562400147 941000836 172148631 323351708 431172919 724484252 800738550 871570541 685676553 905028455 103622398 134996088 522936574 874160683 651916133 877564376 576418359 667588968 702916335 738185361 891484285 900578426 670142734 856637361 128755100 578817603 490490213 679343296 604050641 821720619 310901261 469834396 446087929 632000837 994746268 998514507 353891031 662768608 222101234 436145178 297519674 782135348 742346581 970786813 250520607 602780894 550835574 587696011 378306191 944168360 478610557 578331294 502168192 540232857 503927857 966723804 998541059 998903364 802367812 885126320 801805982 887912163 356532239 769309673 411930456 660835630 866174174 925276766 298833363 812259560 13236820 169597602 527455329 645095457 32427307 233460970 119580875 665798374 75959012 519236301 462878940 898028787 596841041 773229080 532626665 787214120 168962879 939981460 18046553 935485252 541534637 733119097 235374487 659540380 316147596 955454788 982821501 990606277 36606212 132298375 943828515 946410179 886993484 897685440 820066056 871280693 694975775 916064187 505477839 628328470 775596796 809582204 772183673 997089484 272655676 650374492 915474326 954707026 408993529 541850630 768424116 852979968 618944287 923396565 462734372 891904497 329139052 983313716 471893006 682350142 93786762 323287930 610338947 723939074 672025896 822870621 569128052 774405585 634562653 646223238 195559155 913751899 637962270 816121535 56003134 762944008 857104054 913550649 851784672 909909187 155316394 607458287 759243105 985988106 218399801 547172240 876041197 928356288 815724787 909630509 847483688 900357989 389548326 489902064 53867173 943653820 903561334 951516043 750738245 924323513 356810431 907374616 178921641 980448825 578546116 622523752 402694728 758459658 988564856 997240181 145876881 565964129 8487246 769495255 921026257 982948029 415370656 937482356 934318789 959243053 352810086 404421001 858312718 919829865 429808662 463165371 75610181 509678286 989955501 991552383 130260466 720822527 612618074 784474459 952270558 965331427 894927253 980064544 95379347 318860770 383509284 485893559 614916277 962066003 990062126 990497206 981152863 996930232 790585539 981370483 256496457 267605508 447425120 965674679 221809804 730481356 74202334 661452074 193051010 822017097 8612255 909096667 63899851 958295031 882393643 977342428 547566958 835722387 795455333 863573088 682484191 926108517 135805564 436195824 453587760 912381100 3609323 397553648 847449650 890567410 326630303 369257059 514595134 624925542 981796125 989696996 562505090 973884798 65296193 168693622 566940529 704452655 593446729 603278797 751701293 828102758 584652935 742835199 366378698 451898788 673647541 715757890 494612884 742138635 445156050 500676949 309638982 911205807 634636209 883553992 773481524 930204940 753624215 962645995 912395033 970778363 30328987 66868473 271596747 817442391 403443217 833731756 647592746 849093338 95165732 757161413 120140194 193265010 159971006 593959355 565161139 766569638 522763171 872301374 861179703 995849935 925889282 971394226 222931549 431824285 597026998 989873532 364315633 532121770 188505625 412488266 278613215 508980027 888245956 964236468 987305153 987355198 64160087 113289014 254448883 964500651 555320776 646323676 679484441 900465835 687553370 964506152 802419263 926378542 160925582 433614335 450030959 665848422 52581351 605723709 282580154 545011273 661006030 936577023 897353556 913816762 809068926 820259572 983358280 988163153 499194516 709038352 54363117 288833849 23070001 296533081 360888880 478152463 594341672 866478399 102659983 594248511 767187187 803054807 639515176 814002836 103689286 822116350 591399955 922875286 292716916 931214218 314100119 500865549 937295832 994541936 6368641 96819779 158216892 781372413 146716298 414754488 443522563 661594479 562472068 669374640 522878140 530180443 66924810 219745113 896725795 948177009 164671420 666979891 140888552 293226770 71879559 803626052 400434574 470778262 555501449 913781149 546453251 949451746 327916108 585579256 460661225 515342379 685382324 762990892 380822227 861474358 869578574 919390225 295037051 441529923 952706384 992831770 722818096 883014513 262621409 960478580 270638524 289795053 170230265 293604558 296907350 946508307 465315013 912787549 684511587 770680065 868574753 878377561 352437115 548494421 281766731 658743945 141650988 707478467 383008825 875850072 964062806 991778315 949726738 981880517 317989826 788010922 676979269 955317235 691128644 722846949 521679776 555197537 802483766 969697841 856978848 976435439 27832972 270552790 738751272 847179230 558981787 706901234 198315205 201321625 821808913 834555390 250205671 367537303 856036997 893209185 37682395 567208071 212884828 764483397 346026773 728342448 395862382 999741791 966269526 979551098 855726974 975947259 437072357 448542837 995799216 999241506 130360237 738394178 336511041 559654471 397200547 960153113 73695155 928241726 644915241 925209838 467433167 654063848 937391779 968208006 10825071 393041559 590823988 963637302 687255832 819868971 766703183 848726821 83673171 679198203 708946918 901401306 58902836 431159131 949273166 978244104 245760009 931217504 154071697 841187990 446587335 717935420 226849639 500186633 470537926 930102711 146742533 430322592 652480404 742467246 466860791 530946662 607798041 847748360 891810822 921115576 629409309 975888936 222730855 754594698 362994327 687823912 809633262 842858533 235335177 945563356 970420161 991997002 343595640 374928736 605325272 615683397 536937391 739007368 190637057 663581833 732300441 760768262 137331405 613843901 429940010 916450709 957228280 965796725 340803417 641306515 61036606 67051203 237354806 960970143 582898560 975022194 582902765 649942753 298916246 778292782 15039914 300099762 432338381 814624827 549116684 947646446 933639945 989245656 715446821 752840933 876220650 982949435 98889014 326884289 146114431 873136863 937490521 944698162 373911280 825808766 249202965 707159744 447394252 654148787 844646223 945247664 2295391 194180643 155157269 957211352 169973482 240537942 106588125 303563399 610066750 891622800 852063421 863503323 123523761 782644769 420912499 508579628 209838093 430178929 228810687 235693938 626807569 713480582 253726752 383358169 32728480 735927793 488042271 493875734 265114810 789834739 812956258 842948648 925913260 969162101 995887247 999431784 729455546 904291133 124821691 694227291 665255485 800108468 13920967 834841960 17124640 548319926 181134943 412401765 85153762 187523004 461612070 827950126 143079453 461457411 551018651 858433671 599099837 809756219 97166758 822845460 9136788 181293885 30448678 970645475 474526605 834698924 483162537 733649137 834715155 899523978 597902807 657224242 631669383 763542158 251529707 575959782 851343969 917431579 713474247 717450150 343104773 663329294 920836795 954749945 4941443 174362178 976641218 982106077 485639323 631424998 853845016 872408238 148427185 983853555 168663071 535108246 231291884 683053560 7349458 179852883 439121740 490418911 236101946 969325295 496224587 971127534 918102449 999081305 810615122 939137024 745319162 984462354 755899040 916892915 879707036 927004172 564058964 669981963 698156821 910758031 529085901 757528734 488461013 858855132 488624994 621100955 678528722 714627649 257434059 402259030 643935034 844729985 274900198 938152031 953361333 977163236 610219815 971478678 751552793 824512448 337632205 579226253 728714078 832874099 316505553 849220950 172778543 599935751 52523103 207841928 273356576 288038637 448085721 835113185 222373353 595202593 749897963 848300344 565220446 889129898 645060620 792979373 745238304 827225711 32450792 399078826 134207743 717172002 41883403 47925765 724370849 944116503 45731438 544688740 794317336 851225857 310679213 706654322 722969013 740938306 622241446 786339440 276947478 320157209 469050637 908659067 969021667 973777393 674773118 679609515 246740426 674629718 540203586 829942832 722633707 727575103 150337396 925025132 586827473 828505766 386630753 688731570 650799197 957051890 33326616 850549072 876997405 949004151 579651668 824936977 220464813 692147230 527653882 891717654 524288799 885872633 763938756 920070039 355501152 474805215 146534389 777619786 106243069 553320064 668749226 835379637 916900269 970242257 228430281 803383084 916845263 961028471 499432128 872304922 531362657 986946319 842883670 846182836 948782671 999601032 448085502 945354112 698142665 973149431 760780236 949095008 778594349 858353501 336754096 367330150 74369479 886614432 277896585 949145076 519111013 982085142 934381917 935087035 268710602 461563781 724504439 864446497 78928653 166724515 908095127 940942808 361034370 662452424 764238224 797793971 912689565 955321012 555481636 795498738 89175406 482246260 84763579 622389963 260290691 972399035 484198921 654583081 872043083 929034111 11836333 480720698 877531155 976983391 641465174 817793693 967163208 977998578 687218367 775719386 661161528 936204168 261007485 810888661 306738133 988291494 25123839 501993102 867707362 970496990 825887866 888769870 418528759 817114807 230558403 363878029 458020507 994699769 458611784 811479476 373887145 381992831 849993262 941311439 420978893 775079612 240375229 796208985 695761491 987529901 297514893 608213254 965627666 991700837 710854510 711126293 248070578 277040146 99798361 109699149 79684301 189035547 380019736 778673887 7681483 331122867 785127104 850128518 603919187 996936652 65362766 973761882 161989685 492545159 603272448 751761558 547349512 940934518 719861962 968977434 23493263 946420682 816814008 943797339 252931574 614044018 769419851 836363195 740636117 952916682 751384222 773301556 160198616 314796045 821772131 955694028 961398166 985854196 422245283 426383047 422219864 644415800 889493063 988871129 227406257 548428277 539024827 714087523 25825983 158416983 210664052 816699779 400961095 884397585 823924704 875495596 866231269 939526347 457183033 744469787 885541495 921958874 794289353 956146096 863338461 977965512 700323559 704449053 535546462 597074198 682667842 981226580 713242859 872385480 281677252 287479818 555197193 987844639 617805595 645613964 958841102 971214105 910433376 945428277 529979227 556656906 583457205 908633161 433549703 513213739 919759223 949145203 685135989 981903164 327643472 669146411 163766348 958666022 478694407 749017508 295730481 982129633 916099113 975085310 174521712 533322477 782737406 984857124 135410976 624920959 606343315 806767002 707720868 879242514 832606357 868646030 65483770 732965918 420087825 635466240 225125966 303103402 784168090 789697389 847833019 905980965 267619059 368953989 855410039 871373670 944056081 948649898 561730757 983964128 456721890 881097682 823335369 993635083 399283956 425146367 289375850 550919310 845725938 925850395 423152823 712218646 450226802 997485233 12649189 410980504 646425637 777898270 84595136 579529815 706581128 858627122 946428425 992196130 300193344 816581568 852822742 863560919 671544971 979121678 808916616 845835721 167550290 321647596 689497503 749279888 207089787 582958617 778372442 885730415 456115145 508575112 666403302 946110442 970319962 990426672 581004216 774754003 481849869 627744666 383630612 758661992 556625123 739891974 799281530 827623669 337336545 958752357 804159649 815844388 352450774 916687988 593106292 942705364 166138394 892399649 831201237 956319365 938907007 980464600 366783167 995113482 414559528 821295118 536075849 661605961 56545983 806527082 511012978 783475731 317208179 617898842 824048692 896286185 558142361 625876551 246218988 789654750 194422566 769821696 925674543 976738067 152059241 392105701 958152643 964256509 610926303 733405015 290252076 446138419 973146136 998346881 835056597 995265697 691068476 767792989 910205427 943381838 368315929 421200475 401023308 665268935 669404048 711693712 975769351 990989946 323354843 675309566 989024274 989334143 817043797 865232141 581731101 901318377 428569164 707680332 457961576 933071216 974780328 996364179 75006871 913913936 383334630 830644314 60195360 70674414 867218458 984594042 391593038 886081440 803004459 848533300 658818341 914524161 405957827 631907173 997982405 999252457 822791276 998140649 663063765 668121518 118971653 163063737 645902369 682678453 251037833 332359717 66808207 496760555 558177714 708668677 69841764 362077212 209397646 417087277 607457962 855480749 974580319 974660776 609655242 867973519 744824064 931324338 599430791 989621792 303156896 333473293 560486356 581745112 1477137 978327206 414430518 956800315 225238333 803821963 25165782 517305704 206154435 693886875 555280323 848578902 949544750 983030874 690741924 727729805 426878525 500747665 16281924 808362258 912968490 973758784 608032983 960629705 535816292 778859559 167585516 708162191 667719570 836288240 712150214 886895516 95297285 641012001 818381424 969496768 103264448 697760294 58500815 931633107 682337379 957126053 970891998 989390722 700458836 877462522 527794932 783178615 814391086 856188300 466686678 523356160 904659796 997486247 409706406 885220004 567006204 853995070 723812587 928440743 724456320 973630259 578742702 762102752 403915897 979029588 12221960 393626530 600268358 689049111 761239119 808748083 43964263 97016675 210427778 232409680 459878770 591459672 972614811 986468817 616614104 855323337 977593245 991097036 231782532 312261938 254324781 441729926 164046842 869824095 871198909 959712379 89368549 581165409 264204732 961444065 285941896 475900274 55358860 402378203 373976037 480213978 255804230 515629939 531059500 870382612 995435381 998509636 47077592 300799866 488914201 536785037 794786030 891891915 849646836 867623791 412420057 791783843 164749072 836511385 804550360 905352216 81804367 133830750 178894804 370246296 242316827 760993817 738699867 959842050 791250086 829127097 163452075 185752443 860164447 996010646 675651132 707359422 810091913 999673718 244620282 608206759 877148744 880356439 784981309 868337355 792465755 795265425 631125448 981828832 807009286 871150033 629891356 914491485 13681437 371360549 768495837 884152160 965130731 982206758 4754305 56679677 83979172 150244759 303548303 774426732 238154738 554888454 723486204 882457915 534528817 979687764 32485556 419255334 979956113 983737306 300353691 457160657 965123553 994182187 856467294 955497005 455181439 541621892 429124062 538981151 160521809 737847035 284054631 845617367 16154225 589654559 365805613 810363350 692750572 943583778 498586925 767111829 976214827 994769289 568369437 832072599 643282806 782829856 1208162 794633370 955267366 981825353 265963098 823692353 140277429 168522795 776717358 951012115 817458053 871745927 799672282 848279664 338045747 657793592 145367397 615711776 715107072 915999225 327783404 598265786 132176748 240622028 627789009 813444018 148005400 474291660 674060953 953789582 892982029 965088565 242075402 604906903 604804886 906313541 560809959 781983237 114267102 451111773 47080478 194863942 43527684 327374307 718247282 789973289 283581547 888973125 237596045 273012273 647502311 741929786 23030352 207923996 574040664 741156888 898688771 969972873 276504561 363443534 301630741 858317371 901713193 929307126 591736007 736862169 35442988 489366147 62654866 226087935 622990149 850993818 804984792 853608560 276869023 713858125 889340515 912916888 266887523 944834571 578076516 807790802 502239600 935030700 295497077 483645393 268973711 564238695 251723396 983577575 66928460 367929065 431030081 574068327 125564228 546821686 192351234 389887856 196290773 612016232 471125327 820987244 439846708 841577808 125294043 843451466 184823959 597270273 773416269 899522654 340294642 591037676 595501239 604681856 987327758 993004138 95859841 213632006 766068941 830594080 719486907 829392458 545358478 834800768 494150703 687423098 863208418 942492049 114240031 354189555 610656894 814923310 72504585 240319747 361255385 363617957 589995125 832416174 829309639 993215748 473539742 950492311 490802912 841923124 552034566 672608229 178180589 644949922 196190332 960884329 347814684 919911599 414099942 821946627 527911218 542010252 669175011 976838257 384332275 818358826 559409288 833218829 771637432 810744320 551448204 826729996 575029441 765419062 613748915 942536642 141172577 689009551 623118776 871678018 863087726 998006963 189910465 608082297 31824862 133110263 453966888 469486858 677290709 729026379 143719197 824615885 183457676 715790447 756612521 898115451 608838813 887517164 192931725 597406613 573815146 857803164 613535802 949409883 237174631 515413197 435798105 779883670 328257090 618354030 26219183 649178259 654944439 926963447 11256954 11559362 125602594 158008196 318163541 527882764 262201228 973010754 913539585 920779808 173579423 415988418 212390356 405832339 550673224 962124293 718677642 815904287 907182194 921074058 62638190 915727187 857777109 972797858 189287312 428610536 776469148 975436676 704950440 834412366 808173544 899956962 428331309 695433082 87889476 620729546 777017353 961245784 307097727 489306680 529786018 862762388 726275345 842568967 268669781 803860610 939454012 955081170 814761665 943177774 765166152 960355887 161800150 495776378 201977329 362841084 711045241 944286192 763530631 933320556 556325728 685619167 395781795 541749844 234543724 417965421 555065087 821546083 354861755 437347528 132909820 165001937 992463030 997847131 359726751 982052284 58972891 116040554 255901930 588106206 131748147 206584072 607230215 743637391 344790087 399845595 443343915 673835655 670291887 977959249 835423413 967399745 115299450 777714339 309552208 466883422 513119219 717162174 329976201 593980925 994121199 998785305 579472797 626396903 943800820 968296784 87805790 439132907 227544109 434888274 340567778 541716650 135219884 689916409 16320828 651429893 466574230 933951086 840363358 843195835 352569816 828158794 883567964 926695866 466648488 681739228 590511049 907351129 663352758 895856365 624114058 774490392 256202352 859112554 252499598 741039242 298694599 883676918 209939270 325900865 254612593 748234761 494771942 947538803 15373290 995714639 640797651 669560221 135399553 399604070 757667428 973855661 395728733 602633500 809413511 944479950 958769892 989315280 868541591 875753877 496141317 514418930 485406832 784837508 32747818 375937463 22061012 86950208 640187995 880880562 203921073 224094731 46425300 447164056 939217335 987243659 751444852 981894718 418399382 459015089 551151446 786757639 642491154 991200049 805080781 978744596 2964547 581900824 930381673 939804130 850889792 954664098 295853610 965645744 930133375 957357265 253560559 910472017 83300435 226717318 894044063 953648770 71455497 162819905 417939124 698963553 182132535 720869814 996979149 999843874 313114669 818699832 602631395 980528675 693542128 852634901 788991280 881007078 130053915 912889907 559415220 815529906 630884991 990329422 743611224 811672801 596254710 963738918 582590623 985982710 27970275 239433760 284672526 598570675 140448874 602621132 603865210 846331393 313004648 396492273 883267905 976510204 266192593 470022727 761943293 882252585 785401235 801388531 591445262 845936931 263813375 969340478 110903838 716023152 856627231 964132999 194365689 933007824 474760389 596210387 539447697 910202386 822222634 875853661 68418117 694236480 39540797 278349383 809048244 954544739 733549902 839047125 235540043 501459017 700823741 903274868 402634276 790506206 169557417 798964807 576964662 711467403 76532048 432914213 33414020 914024411 793252288 906163916 32046814 568588722 824422764 943508405 735547861 844310688 837500716 865567639 958280439 992216133 801145041 905935864 652055958 962543466 610421566 731677685 821058026 918364514 380478762 736109160 327724893 674140998 558992933 736350255 966189174 989797261 423783009 593425104 843147894 921030049 672831062 713311399 257785211 846261619 953756760 970602840 167680954 198921050 523885538 980836562 573884903 863358565 925416078 967423698 833518787 852907152 223204000 390185912 263878859 314164584 773745500 787541938 722353505 730607055 98119677 801664142 187586411 443665395 368336645 786878237 780302985 841850715 276726827 709061123 844270811 991322985 969798386 992353153 546840402 901234567 801094081 801600519 264120049 820547759 67309584 386455336 519047932 763709295 194514770 872868933 543270311 697485760 429025861 846342331 483097090 717968648 585407867 805573322 231560176 888392945 50601989 890041702 739439734 895569696 410342785 941575944 689631282 882574402 350242348 448255468 122892804 777449869 221041822 267351593 145850827 508553934 464111410 726534057 236746466 461999348 10735675 529369953 207752117 896243773 164178420 421768388 353899490 558344452 965650925 974690146 188089053 295716595 829259026 952196496 724969573 994890114 985872106 989507829 694241957 990968471 732818893 823588293 510890727 901096136 53913132 69240078 888825076 962084390 154893425 910853729 878956204 958833905 973932508 998601900 508897974 680995471 310782712 637937883 334154530 566958618 709969166 777127986 351019605 959924053 56861713 457823764 786018538 995732740 542550046 763279864 155811982 644645410 245403021 804577746 517277765 922624285 97086151 387256792 266998393 877834963 516875113 524714468 269335452 772968940 460978696 629921397 985573829 995455199 355309490 993486468 381909511 796560319 506675927 998820353 533389809 907594146 71095577 568722513 287269659 443951708 267723653 289915572 827132074 901749055 42079697 498534176 367240191 789969764 776145746 948101897 886033414 894661020 799193575 891359870 242909796 732027298 106004813 989701217 766178210 910219057 14593712 810102539 673693968 678720668 934113051 980233632 781068384 837941677 315127632 411704730 260949797 887640850 179986004 716541331 954682928 992207972 212496709 491595967 560977461 975619012 832321591 964838430 648980840 858723508 155064354 634583953 986717988 995323105 847924611 908052132 692017466 892436848 394063910 909739644 433154271 797865040 611836713 832245789 215547279 298673339 721163856 988268565 440199305 542656830 644193990 692673917 17396640 208042737 965146201 975039902 20876923 781558226 262506834 823540813 287007204 415466484 458722574 468504576 267295026 950715491 519562725 615749361 32574963 188457828 908932686 990882287 372237918 721407396 185674805 953640932 277086503 799188298 550640307 975090930 536625285 776787767 511080901 851023932 794081864 884068156 644632460 815584384 616930971 854722186 367512936 914047723 176933483 206168639 668436606 984247348 111216477 816222119 24178198 831622640 723406357 805944429 410526203 851904896 456950790 849731672 492672829 716086470 80042339 272635610 353126635 611462980 148379208 638382132 932591589 999988517 654655944 922547635 555090176 812276437 288253747 432301020 823658418 912856673 949424014 954029358 602460622 877568367 496364815 892421974 207919385 666013096 353021608 548868325 22254305 31113818 424119559 822480034 354596176 432277836 418994845 700309471 677523317 928941024 24405818 639812088 743788658 978267802 679335143 883379492 494727893 611916653 57011566 632782554 965530905 971894755 115224394 501266932 754718443 937082468 374519933 809570125 558286422 918769831 367128062 670662529 232638712 470151347 572150410 833528295 91993913 605163773 852072638 933782003 22954032 553722404 30325954 377466222 53848025 337181133 599555061 803425859 27151821 383907252 428429133 556665517 359686575 518181584 535188645 898281859 452074607 571037000 69833179 612273391 808955004 901200385 544265784 722511959 168964144 390833135 856266639 888015615 189619830 355558565 560599182 763262924 841179498 867418393 988218764 998472462 646366814 706388199 63433495 387398389 637994742 643465887 529159976 889531167 294826394 417855371 518031701 644894013 254419886 574349851 846778939 919035485 50381692 489654911 446516080 951487577 650776531 983520791 24304104 60433311 739091114 875819451 467027025 687335946 699570949 974922112 430270186 607647122 407790956 670257575 857021793 868250926 750730153 938160191 181848330 754367440 213226808 868386069 377824422 408983143 481418984 866424666 731946424 828856863 425314656 552644805 743567769 838738033 821065216 871546675 31045495 629418976 147184396 579241454 868889895 893243144 475082239 535235657 377268614 991407719 524654773 647112052 163108063 312695561 90713693 658965442 868224780 881176346 122305873 864425351 209195407 528527546 87124851 631044930 314983251 989930730 812103137 961597854 395499042 717999098 190700212 223628029 13948027 393074356 585083552 806303181 39955110 941948975 10509727 70402421 64895368 227852308 457976215 490494469 609627812 627524956 41466479 253001290 733180648 748332211 644836875 890324275 222161520 225744530 38424815 902557310 496505031 952453141 122207906 204579083 715121310 991831726 234032129 691965541 750127159 954276852 955020822 983976583 245871014 712588258 43777309 174242892 533283677 907657712 988324165 998038667 225948399 944884755 520771673 539443151 892779456 996824909 761210619 957842537 521761004 610523425 379294192 413357754 279312552 837713177 454827440 683559498 357713107 394054869 953382417 997838110 33330666 874922067 628248084 918297500 637140822 903586498 144561262 225869137 243094658 393572795 575489609 753275563 521264607 823841606 909504891 930668389 694245395 898456192 1308411 154697414 920351346 959082992 695565513 751399385 113157069 405770953 952076443 988792769 655983404 665721193 911006911 928893273 38613548 108791353 834927839 973955258 644090854 900607886 876019549 889447135 186697875 243526527 60289527 176768718 53396201 208317548 821719610 824783432 136050261 968868747 285400593 409922855 338563341 790456379 527547904 593510336 832473159 919623755 129023047 463908218 916257489 965048422 682830765 849869514 753801203 825820399 351320078 607860183 963013745 972123858 703878583 809571255 132219356 981282694 485075668 583035892 116803918 960008610 978238483 996570618 282543460 949138879 889987798 898918790 773409598 807831660 566186970 695955950 23172259 448269890 50528160 143690187 732474725 815019468 20311755 566355230 411852791 857418407 851123967 875483784 745878348 795362646 314963240 798959975 829105 720581400 587112100 695903317 737825339 990145346 134248242 465848897 554580633 685610547 725314347 846549795 443911581 661843806 573018858 597998851 31361816 878099604 820795854 939021054 997024355 999270151 413482908 597777426 119878581 388942413 421453369 781271949 860341060 969984193 926752462 996589709 234078591 840791361 862288150 871242688 452040018 471792119 739963416 919903576 870373638 879868895 583780205 806761663 569447299 752317287 954157926 991725133 999149100 999637105 273119511 542589247 215587211 261664226 863159144 945264809 324133064 472512171 611789217 983466954 467185872 668787746 230446838 369840743 589947118 888089565 194419917 759126322 793280156 846905580 688952689 820659416 821988991 872874773 450792824 620515898 248644324 804970344 566174586 687513434 395986007 517779261 634144807 725205276 901191398 913449702 681913659 843184688 699314265 999125653 58932369 688919292 668794013 987169309 291052835 993674033 338540380 580367293 520161957 901939788 953666706 983709864 482433274 536107622 906342981 964410897 233778580 891357589 822512788 950311783 251503244 853437656 598119792 926218695 545028479 855256508 748956962 803396505 762783135 994544713 500914432 503759472 555502847 645511146 861018596 943238378 365266958 681742388 653698801 950595765 228877817 936713163 529118748 740344577 417709989 975069148 534763037 848469417 223587786 274000908 796036225 909268820 281725868 390421033 519851410 810102137 34130910 614013445 149701658 226723182 848244254 975615993 708828621 721337782 51660344 699470270 287229639 942100933 936830810 975319759 644665461 713854789 693168933 988737200 759504269 906740602 291438252 352236145 51773656 763926786 557873735 705836284 789109972 883941522 89411533 825268377 478216122 924599898 629999436 955029929 136405903 174401687 795972936 870034646 718254994 816907206 617265835 915714433 102918314 319938799 746416021 887461879 661052880 845646285 550045700 835772856 304956604 629561660 594057026 909590856 676469390 801016408 354334141 554112507 963797904 977414658 49723508 805383827 212905631 607050597 16510139 321286938 819993717 947807760 996103568 999773760 11017793 409047540 344579385 855098619 815318013 986769162 458021658 730472431 393974350 475540490 187994545 681204373 102788544 367846062 540832011 608313523 762038772 766477405 339944049 692735903 612040214 661976563 60350648 957218309 686789876 873539625 80894459 83720898 520666770 664789203 705937852 773624987 428237316 585312621 32604540 429968900 911522317 968831925 199029541 764520583 916306015 968114535 904515181 982272136 417477396 887008618 72857291 185573868 792656171 878299045 599446975 766554233 544427047 977748222 923406587 924591527 125832642 884446891 565790731 695860622 869120407 886514716 992517436 996117705 475899718 713334458 180434117 929785779 88178856 901675601 827930591 945994089 186555648 310915652 137854967 973406598 712019187 882609253 833799644 910738395 932198991 954065655 535785320 732258914 655211928 786239320 577980831 876363557 198006049 636973517 92141960 367792309 559671836 933396717 614194704 642645599 438800196 993538105 96963656 367271450 996228021 996647086 300298771 855648390 406052973 630880689 587768210 732014694 83068951 278927069 134234805 201961159 755300742 806838477 708561816 727953213 471660851 557650269 821928852 954603939 31503911 514296621 241225947 457047678 326514756 561359272 516105275 594270218 874225880 953534778 391019398 624536827 636525398 969310113 769832738 775864892 168733397 504166915 870367604 970532917 334175782 931793885 890823516 963228806 803684144 951122246 107739655 448678062 681440558 786403068 760072657 840133427 296073987 976043355 8182480 896403076 460912198 935887062 697496212 868175132 817116308 828120846 883632369 890968118 318949610 911967739 291240459 577059127 187054379 494483773 244480381 765453485 432476940 920529200 334967646 531371826 97387740 181675960 412950205 751595299 526716033 743834107 903920298 937076351 703313975 866423692 597763953 722215886 818396377 828140219 613105430 647246360 480439373 801060149 753652370 857395965 922235220 937117781 609706391 693608724 222607328 259553715 791042756 832976428 904600205 925308072 122626881 966735239 200006788 742418453 400662077 547775491 22206753 582783071 707131592 727271738 751651600 818821225 112403617 719721381 104865362 540479502 792569665 852669938 999110962 999637319 237117475 519302487 421122497 598290504 251006663 914786397 231546281 348134039 507747232 695117065 513527315 641222738 246722851 791150844 102993194 344738258 459476078 682502682 945499340 987945592 575325149 745800058 537988497 573363171 321530336 520621474 405459510 526656301 645440311 985930448 36903012 744562766 589042528 944909657 859248657 954506450 827083204 941821084 626876384 918370518 431958522 982814711 520983818 814517457 801504647 807799344 780962361 955316769 508525844 611336051 673066937 966480942 52433970 558699996 865561936 980292081 82417601 726131073 405024597 993325141 314425730 591133389 833745530 881321105 879155585 987251926 754775796 920414543 669460370 865852965 102607941 431506242 577851540 823074375 726402232 922353766 27032810 340132678 231311182 594844927 875665579 925979826 639811803 691097088 475868705 780352178 721531463 983426640 314070194 456077044 532850030 826579157 668698843 783732015 788711162 849675072 783898419 968590049 957669077 971423698 694001739 761168194 736188870 886129032 813444233 835923683 229813209 511570162 826852673 948971488 729884887 925882205 648127125 849748979 144841083 641041179 453564055 860707193 876908962 975115923 580235052 967519447 767426136 978915023 212289504 800934993 37897480 784249666 457127566 532676842 106203684 669501872 95711782 144536698 968441060 982600971 765109396 974375081 654770275 736795541 236247694 638451337 754060550 763431486 612065971 838538039 184794744 508423586 357416507 637433092 270529291 319204823 963183234 981063122 602622020 832077959 711857344 754046755 596439971 615398816 380467481 715863106 45399329 988870094 919542863 982307351 973690651 978935774 555781402 928462359 130368153 900355365 87773053 676906639 61207602 995185483 850432402 988753619 427745181 626753402 267903477 761511775 169630345 303204190 850794824 954680679 456281150 810615954 617141376 768846901 217893801 936511878 370145979 816628038 195731025 883983799 550438380 793932138 336265254 780464114 27906823 850762418 836284236 999485765 284620903 781596375 92577066 770526716 775996175 987572677 795313767 822496167 141433766 876983850 542219230 690867089 781945520 989685980 791530284 869344578 478560798 525678729 619656706 880018192 793971845 999158100 488331338 619067954 89447949 239079856 693803869 890795351 603284596 953294154 36902111 170940095 226671263 343757764 992242866 997760038 216586048 752342822 127421715 362759927 945834365 998594228 695984368 750287561 720495671 830046232 109993772 917586606 653387993 876716990 161053548 997888363 922394190 996529599 425030602 992964988 109663233 712187394 491244370 835593320 365392719 698007456 872418630 984980895 740142210 905648911 529354196 672308338 418663577 757770960 488841272 926161500 654797901 903923167 710856336 969226062 538930663 894816581 95815200 166561751 619698105 839725473 513212378 761655574 773566054 968065923 618649833 956972067 544782489 766371791 542885338 718903849 766230710 985543548 731860170 913171380 314385715 978772539 223904747 959474920 83117862 851959752 793959597 991084554 42078449 148207073 680519276 745174064 812531486 928895140 143441886 415161708 892797741 984779103 826427672 939301649 521961130 555035336 435996423 959434298 536303076 643829086 831260471 930611420 949983832 961025839 486438897 536063893 917231661 991180923 763530363 990665070 150875459 325976900 839659688 888145213 181074859 635506983 386733868 659149506 654327747 999662375 101923011 256974163 557189446 628086294 782161108 985690199 574097346 760793122 393522570 763179082 177488912 392935705 519215369 852951245 298819946 656895354 467348670 508581829 158957334 584201220 126485803 777819783 433209295 860531727 563744167 807301625 492719258 815359225 905919126 949149577 328088281 425534773 116995002 638726210 978468734 989503584 663264553 681010047 187399848 298515803 692255156 817540830 977059351 990656606 101861176 407861334 806507762 881566201 76272464 544433893 533734671 749811217 992020815 999122046 692537736 914237608 319613066 385250789 667202770 680048918 964918488 966306294 180678579 680634984 360059240 474840031 857816924 958906587 788413982 793455576 526892531 592468043 728965881 820864156 82754295 160737569 222139542 367585109 79123187 405024392 831428311 870232171 727394577 943749126 78907956 863528862 205090733 589509479 390244532 966045335 435554063 706198604 461699949 866254919 650384221 683643134 959778075 997340297 123147681 624976945 572302549 850069513 58853001 72454733 584846991 703194189 848521786 906945547 431825930 969363391 544764225 960617129 122030677 921883281 712668462 931411040 548388192 912282684 329236179 868024259 745246125 958495401 281434244 796357213 65205629 270308395 682417747 779574248 109689139 376832171 398345148 704270904 325728894 366160264 205070617 547833674 607304505 853850427 859677681 900514548 124728596 164716627 737507792 902891106 953161281 982996122 271303681 683322709 514098789 941645282 673090276 805716383 785680823 925543285 696410912 914518854 249290146 892916610 879300492 914214130 413822070 653106287 249941731 874781280 106115069 191704245 695314873 802765701 762154637 912171324 405590707 791850332 673989014 763840053 474182805 530258322 899288732 925700571 829714280 918578380 667876880 926570901 955141998 966831476 422528633 925303658 282636636 606649368 236744638 783520023 326257267 373766363 779248919 988427172 882343674 888671430 662598934 690810147 128382159 660178271 325594065 898758934 924751831 963632508 614598448 945610888 115194025 423331286 880818601 959124516 99505421 355805429 639572589 930530826 757475569 821519100 194885152 561635473 963448388 999977794 807406827 984103743 317079626 886876739 233258285 926870964 223281445 952451468 995723774 996834102 732753928 870551721 455136426 492728204 321706670 548123681 618296645 941379562 105865899 802644415 159402068 860448100 674871792 684274995 858356384 887577468 508497025 897908518 866764725 918635963 920942929 941934662 95369807 919086999 708028086 755610179 664468422 962247110 890647554 959508493 615229743 732236682 781453112 886632383 527414258 531747032 612364173 713148571 219065978 394424600 739476474 968077324 430295206 868973215 444127167 640051843 307813913 702043083 741453762 933498144 154630631 919752922 513977046 713370934 998894848 999203948 405500168 962049160 713531932 736909020 797399886 819113913 160672369 358211726 540803760 645443485 728893175 883750843 6063261 136990956 213521538 290012388 57251278 525192646 249059269 928236366 611251281 683499854 618854057 986968121 572992939 970093634 70471816 834486423 580599687 955200385 233396354 416671561 557769577 649862090 738664459 989575143 685563594 969930084 938561803 992937111 703339243 914172899 874661716 997454023 902290633 959261627 559356784 567988756 230869435 384682110 674640926 717290910 938695607 955962622 666330450 817635232 193525359 597107902 449435588 561847665 319119702 575521666 22961810 490576928 324579664 537041227 366893074 610967546 487124384 944932577 396878206 700135060 734854583 873006511 423904430 542278804 971429992 981925846 712830961 818117166 650196501 863376518 643940252 888096760 497874678 512099871 852217801 854566387 717653148 800053505 966567664 967415772 320426559 523197579 722127768 871961734 896215034 942417760 276342132 785224488 858074261 920176407 305466520 762956281 200394528 587350608 45192711 704663330 238838322 451857056 50748716 252370243 438980149 657325268 823257103 924847070 706952447 828685152 391691166 751959163 49673846 100744894 608515508 681542426 77835474 945102081 2213279 266687211 482843564 895352682 181928836 857431389 721153732 743772043 819996420 828600580 804598965 983199563 557652033 915862305 254048230 898926588 320025257 614461318 144614676 291658296 9329510 332515632 975342960 998817017 966839448 996287735 799010919 988808128 463250487 874413496 293133891 991528296 624565857 738954835 301086750 600790899 766301886 860514398 57808782 296909863 536576446 921355473 79568730 218348492 948075637 969650720 434939256 570113298 47089728 239088731 28387152 442943647 784575291 939869436 197491819 429511703 963710274 964636273 205025060 722542815 726518758 991873273 754576869 807141420 40070005 542855011 887329712 905004182 544352855 696226113 77325837 323343232 745580349 949773522 89367788 246765786 100157520 412888941 740043263 833826402 284970585 957477611 344032844 653946854 306432641 316189499 833246663 852057226 559061288 898254103 419425920 690748786 912558192 998872717 11534116 389964038 36589646 131098198 898665559 961784251 690227388 785977221 137429947 273886164 794595109 934129739 6421097 566782054 346739596 842592546 790319661 914724699 502371028 517705662 373491540 410418670 647330644 732742171 103437357 248771412 431848187 539282321 98454781 306943267 109370515 423102488 252151752 291386326 140064669 931849713 942839634 991972701 969638519 992839855 704139573 759715304 644452452 686692590 746902036 792783305 466197427 530105462 271697354 919984812 31692495 646752595 809324605 976590240 540549846 632908804 899538281 927097630 566849022 965031573 899117808 998719896 755264285 777402908 736439396 910215410 876985136 949324868 385459609 485457857 952949051 989969623 916580580 971581766 349476060 596472906 952867325 976358360 278213677 284900494 203542286 549929183 5518646 927487605 235790765 800575673 341577364 393473881 661207833 905235755 642299646 927118874 172819348 984033908 297005931 544773686 598230577 617417717 568726886 699128503 963466831 971982227 149148946 456038377 457837912 911411751 597713707 796212424 762918195 897242239 33275274 851750136 835105838 868380004 860053851 966857881 208397958 903244962 73696591 364795848 481451699 513961456 514055326 844598015 188831742 234468465 259826817 450285037 423022306 897179207 239397180 391838835 803036744 934047203 62471811 549602298 912598809 965545544 643214415 931681263 728030811 905367079 615372260 702702780 968499995 974261461 896396986 988242795 586876606 735948324 782536121 969475332 64382267 225304362 272026826 711163681 623796136 761780457 979804417 983271957 647031484 817165764 132899143 229472179 500154320 902595305 410282465 632830574 296249459 473139971 368932959 476788027 712137923 747554929 982311641 993323348 205568703 206185808 792145201 799918653 852444787 944557896 420575756 855716159 148683803 746385890 5445994 718165170 937139285 960919995 533865613 603441942 430867546 740852826 454121454 854068102 705980942 843711016 934853602 951977825 122507683 762015149 262724634 549249770 199155225 316244358 386507541 842903503 324178147 926500553 95552265 489422531 600283630 940342429 362415249 752413939 83677307 461417812 890582544 950847405 966117156 993109541 641618119 912578281 960075815 979753791 111264280 455745129 665638136 791076409 238148610 437663228 892563123 958441408 345371393 686883082 246911304 906595011 901215962 904701029 435791298 479049498 991851223 993090301 479704470 855278965 893627539 925045704 562057658 693568797 283776212 655450578 170728217 916439534 151607735 209578018 538915400 641664303 770607252 918021773 779408074 988917049 86609965 458995175 327123091 803839587 102165832 896300727 716780191 744406233 559693968 906229484 376931667 745672203 215392723 429087871 864381914 913496006 39853286 743837025 607385985 972426904 566716960 603732101 921479254 929426398 616602087 641667389 405766065 605158434 649805686 760420840 750117582 819589889 127289946 899816007 242047300 536392503 392615461 526471338 995399308 997352159 993954618 999549739 897108322 944292066 403925866 746007180 338640276 937088493 671228257 834123377 144906057 913288378 89781478 690983959 145167824 545021560 656998966 964561056 208741451 420206697 631808361 821645741 170849353 690778683 742378835 961147703 561010219 890399871 932736054 979294473 786812261 898734056 375863957 925509326 693194424 908019122 934246408 973629696 604983697 699172134 981145690 984402269 897176508 901317303 120213904 705221682 733278227 814312078 880460166 947515197 414557998 948359522 431569229 518308277 971839686 979287521 973020170 988265912 827685659 954317446 58446150 716293379 637555076 699757063 855244715 991484555 945584429 981557707 309936402 642578408 503942199 653049714 295882018 443244940 720370988 926160377 832329066 881111609 687357420 936455604 515911768 926948030 267622460 835829806 586729625 725827712 686599160 980894699 730502442 758715325 296305607 977380911 45977958 228392294 163699846 927016698 219444301 443133739 768533337 875532402 807304124 973813282 668488408 736741045 109577417 808397142 930413678 937971110 456037488 657693287 121126754 983459779 708071011 806740030 524336965 580917477 786688088 800963941 618867899 805491005 218690000 902438968 3818545 980309849 771116671 869738107 897681785 960257658 203208389 490450765 742726947 804990450 42494866 548703356 836214644 895938577 245962426 315586584 852976219 965644943 359262030 413336409 907258313 916254583 24966472 547294113 559387647 669268552 919917704 936879145 415667566 685481028 488969083 493605153 309536174 644543393 428231756 926694706 815193591 918649336 330055540 992989413 408752189 912841138 64972353 774507621 107894392 446926637 657639305 919791455 660642203 806193857 313457009 760952055 602952841 748929350 241893722 757519205 61491220 754936938 396502111 460878207 654823896 858129972 282911425 350164547 455458366 545845685 160829288 732175597 110553721 881330013 583256422 900754678 974071843 981490504 758538365 986508340 99862296 463344020 350030064 620541652 331431099 812523164 917616776 936137748 561778341 642675661 17353340 912613111 236752466 873414840 659431149 791849683 642377600 742010543 977506080 984533948 753948316 892871728 658241975 986722337 999073219 999099335 624221067 855668328 732580795 832921404 454660586 889811578 692429454 746285934 90912203 555246995 29361354 598743065 49287012 925032992 242996505 918910867 58303757 848021647 434557718 682889573 440716352 488825583 241324724 274994821 916769272 939280242 722405363 728613172 265559845 637076413 821862799 996187942 655847498 840659351 726501798 771436371 109791512 159205285 633842299 818806320 740101536 794403321 853638307 854137078 964759060 997482596 31721143 553906229 709812852 941765253 28548285 661037273 540198114 899043070 438412647 467100698 822041584 892767322 515351899 855859368 76334776 173626668 743658708 796412694 702587858 758327892 777427578 936090793 698523614 967921480 133226580 667642022 832226122 858318065 508286215 774460872 784811185 958588092 730750347 988780878 611683901 680938666 254998783 286446173 62700127 979369176 718431334 729558662 206901783 689997922 696941612 707091700 234366289 485922426 272160564 350020829 616074336 975738583 245729399 587268592 393661872 500002615 981831123 989350072 991915242 996982639 773562657 978095288 561561099 779979491 532087391 826687727 532039684 856101539 828494074 991490204 988162767 988162854 270977214 315448007 152866926 241207376 969764008 974580885 507373234 629609596 949203278 953855089 345172596 629579401 433824228 515201791 669935607 926210444 58825322 294975006 178495725 904064321 189156195 964125359 284477977 687249926 573893502 682969043 823078601 922972686 941941989 954250780 834231550 962611881 308506231 379352924 786973672 877022047 544795261 673524530 924012289 974977482 67496635 391774167 955400866 990014405 39294421 972488856 768280046 857928174 734357346 856345716 52245081 576217294 394085783 434956074 42614578 730231716 588052187 842161956 544124549 641765410 278970356 588398237 263819394 854871528 773413838 795456021 47960598 849343329 523673044 872628330 223457457 977860834 624677962 925617403 165677519 501054416 969254516 995849369 918309674 940998999 174572915 269632756 543935554 901368058 984812035 986824825 616043252 671483329 668704822 892405254 199482352 706718723 82653229 421671426 973577481 993782453 522668177 972135796 876636623 885725444 226735138 534095417 137298091 647338562 242646727 618140916 637110004 963382572 224876438 989675531 752675882 910420050 538119965 755689081 115450393 646968316 292655685 739514721 844131699 854895940 367575996 736094958 736742469 854981217 277538009 514167781 535960423 817314635 549679975 770809999 75316795 853807394 483642798 563465125 361563839 582348246 819555529 891488895 881227988 981555457 751893799 922705035 196285189 692795664 567715813 610567825 693173446 983499806 669399753 923904838 398577215 568547095 648229899 693781769 565369763 570193791 363223954 616998006 406253936 976149597 315514012 498589624 391444791 563785693 194008501 749255846 226205613 409817010 184574574 754130520 178112516 209885927 388548923 703027133 668572203 864144498 259773309 863744993 292824207 395852652 258922429 584795669 215249407 673475395 685622027 989432362 191450533 324027199 831279138 999962519 913184058 991733450 514779289 626419144 744874123 745710859 471217403 690231939 898377287 991391426 725106598 768762303 898447857 937319973 297194026 888510390 771306632 881393493 348236269 437336580 847527172 966742401 215686111 541913765 124751170 944505403 458039292 592309859 203409006 677453978 444311325 604907308 355371129 445632898 901881825 984834753 236104598 934699745 610532734 732475972 752053105 894138184 480064236 802508131 733452617 949067623 484322409 714903784 81959837 948702944 159841760 188089598 803792745 994394401 515894381 896680490 154858072 550897029 688161434 891220417 11530119 626998412 313912031 669924735 58390473 843286187 298451397 452791287 639518717 763296774 920363224 996921998 350914507 403447914 960319881 976234554 969857217 995076129 758946565 883112138 2540811 141025642 627943594 657629717 628335425 853589772 697583109 975448371 928778031 991973282 541208823 994598635 726396491 852001831 590892745 704644595 55922586 929419941 55802014 174633848 199694625 563403043 326440650 641509089 855184444 914553907 146913825 666550444 656721337 676288380 378754509 705445119 900364055 960480179 851366734 857129786 710938293 964808201 380199567 940066396 212020948 277780234 760599319 967233964 571808214 952029701 790059103 827053267 935425792 949960585 989030172 995454825 695255976 816312990 185299240 836061742 759409987 920989046 937817179 986815653 662045986 884581633 380750485 469166046 229515010 969018781 254992855 825322371 818930985 850817818 789808538 801875751 355805917 710220835 170250823 707369790 536654121 606167289 820953129 846531509 928782606 949054229 193518934 629501995 537299716 920680784 812874342 943277011 854640681 950815215 491069663 581287477 820774968 971522181 763781513 933643318 384072982 576599943 159812686 657918073 461841648 699059352 241643952 884797117 214279431 554433391 164110128 716981344 283256146 543529449 516838167 575542327 177452058 926022033 729275921 979649083 986304134 988283632 59887801 769347652 200647251 290062149 99451247 311007114 628994037 748238872 394796545 759671251 170652278 420621309 821799730 940515788 208507594 694995647 837862154 942247137 459803670 468214195 564553967 994766546 66783824 799711703 283989359 875040159 358202523 365777698 177266361 302272507 567817237 653722801 718937347 944173570 952050952 961314865 117424304 660366252 73676276 919260244 332608903 337351504 919501672 954704698 295052325 326395690 219699909 815656385 417611169 926039807 954484822 963886329 846070406 890431364 444087726 490589472 499210369 802866319 408577517 585521902 915794403 923685161 451886473 768648409 914278063 995274078 276418728 327781595 493288948 659517005 288819805 812619649 788778216 980751855 944369080 971152677 53871398 307110239 998957544 999667318 823161175 946058505 952244673 955292158 317239022 629822281 256906888 785739372 465192127 941751199 700566061 787777923 152161606 230639598 117625810 259928277 919600449 948145730 273406310 914049099 517782383 543770930 649231487 754789693 141025790 733914778 191709835 389007988 456510580 560265448 494036591 815318839 752321788 913198744 613245249 969961740 566154676 640196247 971151461 973220633 329872578 632851057 494314304 990445643 114991213 734635392 941181176 995516564 108789471 463827653 756644559 764679108 531249576 648260078 446850425 790217111 652508345 774382218 148138778 284950949 48483139 152425885 807069186 898360272 4286772 966017136 776936623 979338249 26771016 934593082 8504464 704952052 22204711 818528454 829708289 840204543 661344995 740362123 479336162 873989851 994999685 997792801 66618720 714989670 664119699 762833701 338897211 963732485 124814725 819585242 992117099 996444045 119807363 937346984 754767671 837911753 172981201 498212153 743610932 887377785 368073779 628515282 187809112 964103244 312267572 695696242 178370839 639377823 188618405 201161178 829667704 979669554 810550198 877489347 494996673 842351296 323737060 660810196 543455391 675895117 319181941 693697381 525506362 961320375 472390989 873211452 617334164 815115464 438859193 633421915 457253863 938271009 991559326 999879266 511729600 891634445 878441173 969488588 801084691 979323302 341352000 963216445 691279615 942828111 567835697 762497784 544730143 879082957 844451522 926633181 337457263 503738789 516487248 861709588 99168054 862110454 546977720 851981833 981947083 983240166 768597907 864850380 920684230 968940877 865209301 890554992 459601772 569288645 475870113 954124175 927183714 931479691 9765165 437434601 648279154 825312387 506357418 721499490 246650328 251505647 456425127 898481350 299042478 429017982 636648402 837675422 631149717 945024308 575308276 725550258 121618064 922696379 26255466 270928017 76899744 357554753 846072902 970237267 721470172 826137424 712999618 957845761 452055843 986568338 520154087 788613887 439614510 593881049 942494318 975740769 834228914 933417343 483205504 927528351 723096738 845144462 273191007 791459940 973429015 977735614 200064155 974611514 355162366 782326313 840452761 999007577 417335307 555436122 61703870 196519380 261043404 558359125 202305878 991481452 269392167 992145448 29030883 627513620 997956950 998056653 74845075 637754677 86755353 643969994 268816473 525137281 1185032 21731529 107248958 241013518 905442114 940734033 899802705 988530572 802874452 859987723 641167956 824714955 367777328 610840906 98839815 496924575 306949076 583106789 513800919 677490467 448165458 613624271 692435110 914062185 259579534 836009144 366855569 507804692 462001554 979021072 327631294 490730197 884512908 980438792 888806500 955985972 810780128 970905946 359212795 862516628 848295539 863746032 902605354 912252838 992471814 997977055 749658495 792528088 702199612 983421381 697020799 879143855 285376456 336330834 255230732 510999725 427351601 801004644 226407551 977663757 218678178 777019196 144563634 847484634 95973729 995500483 851538644 898649436 301808108 937258710 760691935 816281078 231748683 318816388 555338209 739377401 863789965 998771614 757054711 956296538 122301886 362334896 817376679 992835829 378329714 433945277 377673662 626389152 517223485 995731285 242724457 453004772 459331472 592304108 758459312 875652173 771262525 793064469 965743877 998478306 841438294 858172332 888141874 923790438 508035107 620221309 191057535 965721740 826762230 950957985 769618704 849314785 296909480 658658612 671430439 851482382 855287591 940978399 428138079 832874136 596198292 914782946 707298530 799385087 993763750 994689886 620326977 995307318 685588666 701882935 485703227 892671725 948721034 964770588 869645495 894991981 511492005 995427948 205020242 331311460 816308850 945929301 554220741 999302656 430272608 570423870 418501184 668031070 846526343 917302086 623768830 918757906 962894953 998119035 133511543 239045353 214965996 425117777 371591753 964124174 165922001 594243922 471540628 593906784 277644735 729261238 117320629 568551486 27401737 755811879 373245792 900015100 377120829 519489014 909174454 971593875 312398345 627150562 948443691 987184242 796783194 942641117 569654248 664096321 250196334 385072134 501850629 883653371 669637367 684399870 707761763 995523421 302153320 653974447 854563953 935351346 104531178 166748378 317848337 773116394 637852885 647833560 653841346 820930119 505096017 619493591 413630682 792002024 245900360 668592283 232549084 674573562 334472239 799621669 621644800 692650661 581034971 982559673 42264909 648065158 15556165 209150859 801474517 824793555 261864486 277153144 88983335 875039635 781533418 929351963 500510420 945384242 342878253 712001154 989416338 989945753 376607029 967061533 92681881 123995090 614036960 653313270 458950435 957280536 558265630 620183375 891465810 963288132 898228252 960687517 158716862 226548315 383593030 936549041 60240132 801482167 152753960 290451357 693679301 983182091 468788884 910166289 270095057 924222040 768047115 834831056 361767461 520891057 708152863 937822208 33981368 698369446 161132368 485582275 65953613 696395998 22536039 838873511 891909776 949990140 591935398 611401956 333076436 416799822 303476459 496169069 788177682 847593436 941504320 943535446 336631030 752782725 335488109 714054271 517289800 943816896 523846588 988817864 602684038 732284267 286217721 445415595 32153342 106073708 542046730 822177436 561842083 681551930 484650096 515312767 487139849 987299778 734791791 836006951 979182827 985691275 965219056 970292718 344741859 450121353 948392909 958218580 742992650 911481571 193419883 564162176 181482436 222708832 580960249 790984021 995007215 998801697 410535652 418839196 731013930 961653113 982548425 984575132 877888321 965777940 728087016 920556363 609388266 916010035 542837870 803497027 581520406 895346859 283089131 574442021 907427747 981644633 200711971 324934626 593409558 832814035 340714425 865470487 329533879 676724440 498819799 548108507 264929460 735006620 457956266 791601803 377956534 884703736 165283441 447663125 441729524 724103452 6237419 47867714 850080052 887052281 289705372 562535521 812219215 961861868 730631441 962709241 976293248 984046138 122254661 424400972 132273678 336248071 220379393 509138495 271413887 949577552 835273853 917140970 187508809 874354070 150993690 931794341 901716635 983570939 452299905 746227517 460231115 607515587 346326689 421145338 654251417 674023379 419879352 841427645 561030077 927320301 954517007 999771005 858801022 876070167 362860905 477468152 17286742 922464104 831914861 879545267 506403738 905579920 848627448 956418634 372341893 707116012 471154239 865812044 737447497 806334174 650641371 713677973 851185978 984868935 940568868 973667426 23653886 310911172 393411112 547107274 186677200 474021365 743932309 974160629 481036228 759627517 614907960 661501657 848873477 882499619 669720840 687604365 101293342 425238538 183004304 627186955 612946985 992383134 300977555 673383413 913961453 955806974 752439322 756687009 374138162 433931948 577642940 923837177 214989111 795095918 778986999 793927694 334904627 605883481 123050910 324857044 41800230 989765614 274241420 868510613 566335772 803291239 610274073 768114682 446870160 649512928 586603913 824151929 760718011 887203779 370247335 457774423 336297715 336534793 156864009 584258849 315962208 672008221 829289833 864238559 96195993 207723572 131013007 982682012 526973825 987978220 46977977 320052488 769325713 796377755 503726643 634020228 617016832 733651667 141599988 255814001 547086013 556742781 730405833 741028722 542596941 986236000 248210806 570941662 524635773 638346053 713228208 718060335 40876992 563442162 231811962 386304547 295385090 771074175 603863363 961363699 832291585 903868843 961291627 994375781 189101414 286624162 461987928 718517181 380495716 766333856 111746329 996324547 923203944 997425626 456121580 603402829 564100957 565921142 49905768 278661310 40322043 324490737 882151362 965629170 138266665 644066396 470001200 983435846 882721800 943891092 879858908 967405934 527724234 570701005 556985709 914539010 223546727 359237662 438959563 971646960 140893624 729581933 829246559 833720288 21758613 880945940 890499188 894986951 931754745 954274480 626877820 723272093 428825755 555442991 473641124 658607991 807144020 841400586 865372180 894455180 943711316 999746511 714665510 950212646 962656402 970846122 93915232 687332617 643404813 898958625 693657390 806142687 278626849 346923750 821288237 895109753 921678984 973269952 568147613 923761330 662166606 767835163 422796872 453104520 406005258 882914396 12065524 558543828 963700921 987480596 944561281 970655263 207964276 269607635 746109865 817539295 820127036 989976976 868991900 943324102 183715732 230621823 989736654 995335288 731189818 945540157 997270243 998094884 849604423 935146869 196074059 763575009 479655410 907806488 946203360 966566802 226147448 398499725 425201574 811267392 837604232 925303802 975809185 981605137 835574874 958783338 131059768 475747902 501189457 509552373 761136503 806595207 263890554 930121285 153340809 451009211 43244811 876333507 892967377 929802765 877856146 952667329 47517337 868510908 948493647 967420731 762997437 826847911 748019300 754662131 957410712 968952862 325673032 401349300 430257989 985498931 356031588 871484099 210999350 904531367 258377276 505622819 403826032 404525997 96670936 128722614 895722767 966069312 948268819 954175462 259575850 781840037 148689307 638311227 296559014 381397345 361659924 494727299 716217164 864454928 755933300 847243280 582099408 637786538 321164841 629650886 449448885 719555780 955760860 995249862 116311726 219326457 531848854 570189458 636465826 878708156 96884168 800086077 917402181 975372370 898437124 938021194 921913007 971193881 944383878 998780276 37126120 40080545 26506649 954863081 237003944 440588751 425771975 836048745 926215185 956165326 110862426 238777978 786201794 930962403 954334551 979642071 338563928 835130508 932109738 934418132 387578242 768632925 947667562 986865005 41341644 280572277 974663533 982157996 844136163 948426444 994426152 994872399 862295086 922405162 628371117 640376579 752233839 829022945 334778984 555127019 909165041 978255642 706055183 841637414 59146933 578102403 297820959 550343425 893074725 967014055 219823006 400435364 348086391 489342869 406787302 795751765 695766565 827812000 206674461 860713492 345957920 552931499 335430652 543762179 698975730 795104414 803093108 804276673 718754310 760967646 962394858 965540964 972232628 984030944 414108302 823673662 419719664 431518891 865950951 996248248 965296374 994512264 784414410 899597210 860402848 964499566 706148869 957245656 987256014 994425740 617128845 797692502 252252122 399253427 121925379 447013659 492545009 764101484 164440020 773849535 649876200 798178684 963371308 976105326 638699481 715455765 974666410 981395979 85532191 170645985 407920724 926080144 361654587 916282659 492358838 911310438 934946746 951033383 636084534 675669202 574189676 689421640 989195089 993156134 116170652 978912436 679811364 739662970 82231706 91960511 20968187 69271325 602665121 629655337 951372635 968715238 647582122 846705662 101688416 134262809 259969936 572716041 420128078 847590699 219822018 859890471 217033589 908456913 244793258 860592457 575442853 690854912 512666324 987237370 236469543 563289795 934994477 983623831 824784345 905014368 240989755 390900557 353061398 889609971 125646684 222054805 450431743 745947139 526339045 566365317 121448214 511826393 256717567 575621480 976081834 996522107 259680103 379906641 954006482 957239446 262938432 342094255 492392066 644268605 921846071 974929591 270602192 546218484 51572512 780073135 168853918 733795578 866258096 959986147 774845811 938300384 23445830 649225783 120064069 125149355 857978832 998541583 530553607 662330729 990163429 996899230 839647800 967532651 936608672 976704081 994716469 997658388 182145836 732709595 257388760 281284410 202652047 704257188 643628895 811266447 430204594 668169823 653878967 897050091 280541919 318046023 503138320 590983395 152638137 956769220 793685412 824942709 207105345 290504850 989136698 993167374 828084680 843313264 96591978 514270930 743395132 858106345 834049778 889309214 87190546 383620301 786500157 970303355 721189335 967085143 244018587 280193486 853424897 984002342 50938740 621047884 675101869 747825079 886699711 918891165 356757998 432881959 392280686 951854931 915248346 998734638 797227632 866323777 320624761 919231771 824974546 963639470 313866563 912549520 648487374 735989083 655739885 756396386 489603835 630547904 488258859 575243973 432305782 648428593 498565604 648911659 23660560 451855504 75068014 339066419 586065749 783098724 886482397 980218189 353391896 416208034 47480403 440373885 335593183 890650199 864288118 990832297 782156487 813177162 405610781 911269255 699579817 886304403 380132897 998216035 810969221 977008771 924777085 989104003 704628911 793619670 803445453 934479203 866317922 994974294 565731817 934960546 657089138 697972422 874934077 897685270 507264622 591529262 48032195 950974719 532549515 999659309 462463155 487312383 238167728 730789804 718410903 829884221 619582066 807900629 942135466 977675432 93898662 214415394 412799159 451500719 498250347 763091204 601309231 799493418 538511075 613217705 184985125 961186052 805517480 972662058 286493175 956816431 171721058 277474374 266858512 415186684 70549465 313914051 400599946 800487578 553539615 864984997 972434610 984743464 666391696 989756757 592794947 727307757 845510556 880940017 38049125 470696027 796509714 889638301 689248035 901129821 887373823 894831738 595719014 720112012 347966482 660066335 760843445 956583408 240793002 968722173 704710589 989137569 367214882 748352444 375525552 812213580 782566753 998055913 456854749 914248374 31097838 75297143 631708826 738573113 778967384 838996690 81720604 143358775 866479518 904533662 608669879 744554623 294183457 464646270 180481052 680313638 244925954 738804833 133149950 839665986 481824274 816228504 549365104 712798624 475924301 864999721 749949936 980526400 252311021 499033699 804234471 928726326 337322068 818039396 453888082 603570924 229162109 262057530 174599279 866800123 861380000 982127522 29209784 322324576 522124211 724772970 551023886 908994567 509158017 717021323 619600361 900474655 117474727 868183009 539068685 938240976 101479151 154156073 233254125 849806756 441270093 923234975 267138112 828477772 454073956 892518035 941387401 974726929 196614628 587209689 373433015 547387298 232722934 643206919 347502040 996152543 494532590 882116283 739848256 873171386 226313782 885868329 398039246 988266280 332092478 395608745 814542066 938419483 465246718 465907381 20505154 967661204 39215973 376582121 345680149 468554230 107496408 553576064 780788042 961604356 605357772 856076973 897295783 924389108 201058168 213874900 267187513 966039491 185150959 514742620 803222489 943817905 529811646 644672001 209890809 689133978 430845967 741399446 900887789 997907475 95615945 304844202 633337012 880762704 757668860 928250615 678353338 689168796 205947102 483941453 752851328 827708075 470011872 516357086 535895073 686040374 164275260 222069209 280274472 771985081 128019691 376346835 775697437 888328223 585988714 904202923 359009504 849556557 829480546 965794627 865852622 953645900 318244879 975609862 952108262 985799055 997714351 998264110 799182079 994446085 557731456 894853158 231389213 726897531 336974360 943288478 952122713 989338854 299233737 917931851 873589070 881208147 612715977 960707550 533131906 663562211 768299722 909333568 233585990 268343093 362092992 817726197 937018834 953299206 791339684 939296733 360398838 569373357 523534417 782310552 677238512 691966249 987914531 994695571 490923055 559913929 33258999 728878583 468550755 471755024 623167163 771596820 932409686 967918772 682734821 883665503 34558406 181100549 855419486 860612151 273661063 541479745 807881262 807999177 942450997 970666206 213914202 640281606 957005574 978858744 424815866 743802525 343545083 814730559 927519553 976146208 920595512 987286063 910582980 979913648 18768929 847330577 415618687 705519636 959255668 998679307 458073519 900875764 909200145 927793185 916285032 965736843 292734254 775492405 574850838 641523927 750593910 804387401 294876622 857922380 641255273 678421043 261458945 720386342 279996240 688430899 505309203 559841594 455474158 670391942 118904614 465257138 712539151 905338975 521305441 646799497 560877381 671604651 502585102 681113741 749913851 980958606 680998494 920270843 80972130 533674792 659265313 871768652 58187993 481226645 650288694 839817536 874579110 975585523 589409289 733148432 753034841 949772090 801571858 928336519 746715420 842225305 485087356 939369194 353765122 914802615 460876699 557380156 849562111 900346493 868464405 904175361 759059922 814074839 530403551 652040208 355394012 512713821 545070298 939596698 875667128 977782673 572305495 768053682 97118128 463936910 897386690 950430874 310397525 827949090 769462592 878519100 769507305 825975088 993891573 994059171 318398937 782521620 955861600 974594450 26552761 455340967 266319305 994789415 339432468 695578645 512861177 848542988 899493619 945055378 528694820 866308831 6794553 584236224 295605869 510376065 709944280 967516168 985162104 996579318 12563728 585314270 351360142 904460360 141259391 663777159 172791399 832275061 912889413 937703460 387771722 806987134 61377571 192602936 753645627 903321159 109330984 279568119 26493059 867940468 231579937 732348070 710002945 724544304 211463682 596360634 342879344 767766795 309863646 625566156 164157556 319790187 172608507 270814806 365118326 947234726 648674109 650771328 522848861 642780896 404926051 407420155 213555629 217836079 386222917 766376857 335343251 451052758 451423996 781413408 748176797 989058113 899119378 923493143 402866590 508638997 745509444 909739130 824140729 988387882 206881188 792854174 852964906 907988098 929232120 979730064 485501570 887004675 330109212 977797840 950564593 987047823 199126923 244074881 811213628 840279296 295631005 450363255 352003363 903414455 286582326 954606433 611579618 958978097 804228527 819779015 684488584 839074563 219774423 391093110 66774956 166630350 523799478 633826495 612225484 688507583 503218617 534470852 638255399 955126063 871806487 882967073 262846116 497271805 584316197 603084574 845770025 895826178 42364989 233325895 243174875 704619006 346089569 578650671 591792098 808173186 610717784 823559385 202553026 265877173 254658173 930541797 88673120 642624313 628473516 840567954 59625778 318125509 48663164 673197447 157736898 461140900 524973077 753992606 238353420 892762329 142633105 475377904 340848248 950708690 527258671 654982415 42750781 593102624 500977048 960179240 338494181 692163519 820126748 926013235 590151319 851601030 215369905 669713395 888713912 954333021 859497247 942927174 339383418 862275483 495907106 916305408 841698156 921764566 983134388 983375547 313595054 578789985 99165735 482330703 610442682 736518337 100816336 897451552 864711638 997731587 872519006 920062791 535663853 921533289 98169028 212800561 22031021 207377480 210792172 225244388 140418262 285402292 416969581 958299830 834801377 960913785 148950047 429739397 252084764 410825373 243599795 279537017 673818555 754923663 983447896 999115721 677302911 933025372 485273489 994634723 251989465 809914816 986423771 994159699 302550571 881512559 155836099 760815737 385597519 821530795 237248003 670284108 237354999 843661822 403818604 924593190 879901849 910866355 685513986 716886153 371563857 713011778 242212611 795575513 247746769 861910345 680259910 847063835 46572261 485645318 118286537 300892024 567059504 850071808 744296604 877712093 249275008 465745500 516232046 691851493 588916100 750374104 923658622 951197149 158797964 799011005 763533312 998732284 590416775 687091057 940335418 993540967 438377540 990133025 887453734 934674804 623808944 836438245 14534556 785279650 159341472 468201112 736669666 743621123 232287468 901308857 437381201 927847322 961053398 996934180 533993391 668277731 552877283 685331079 205202020 990110872 86597245 930173639 419808500 446329451 858911786 908063814 551540614 723846309 187474830 976073853 294938206 441826619 996160902 998734209 33681523 189994033 959439397 986467208 684465732 990334223 391775932 586392055 138074471 578949435 261906075 314326103 12665792 172567576 171408656 556213999 990416933 997376959 84368276 382702991 39776187 311567995 879639732 990696985 359834095 726858694 374531370 935287533 757390016 967228997 815437545 999283836 210273850 985618630 220879731 546500153 626612640 647977770 165720505 198394644 726958100 802689146 45265285 317117323 89699478 579209663 951271335 988275141 239022927 895820382 888254491 926206022 671893695 901022023 921900491 958185886 917231185 918413176 885915980 992994523 42047223 918736011 642373709 857219817 360936038 754627196 897731622 927898079 737988050 833308175 924730523 999885685 246386554 395727100 326499015 348812346 801772150 898785831 783177024 789914481 206515036 640518753 971177242 977421411 400965254 767220885 984845295 991000901 163235720 340435797 265542932 668448378 700980935 924497771 732166494 954832643 459906933 846103773 792449932 847918986 974778882 995537195 918082533 965094024 876566467 927849376 430411532 856337157 215304990 553658200 587551328 710433342 474998539 763332611 177825836 948364975 601702232 948561869 950084052 986675989 489649229 998147049 101872376 520721505 310777476 689223744 468253009 668797312 708439591 850023654 864994074 867383660 268279781 311867653 588008729 891346158 951701332 969184295 760493989 840251071 428778283 530421271 21264561 324358468 641663125 885153011 59807099 533511398 997289880 999585562 375060656 526703839 914601975 967904399 961969761 966501285 895181875 968216824 63056028 908713910 640383574 994446981 434891763 626439885 101203160 998650805 257352376 708839193 64066581 767592834 42139022 688302352 711931238 884249453 756881814 936544256 579105089 670568238 81780080 792956969 742426614 801209743 136805977 562792639 530969515 644285750 151725071 308202213 68623585 231614775 861560633 906873011 985521211 991917368 912222062 943429342 184423729 726301875 146617665 490649559 279397825 654377664 61424990 238712478 359262029 515163657 687734493 790342235 355202507 535184464 224485517 344785796 225712180 582737526 552215065 987558017 728923482 931411652 266306470 556057411 909300700 946878761 311071869 749970513 677532949 831977076 880966622 990945597 174596618 520316320 11537910 700716545 966440032 981383310 397454704 695177565 91417611 347829904 39714856 936116896 749581795 778765271 576450182 968220929 140840254 554555947 912482252 924871493 676631285 749098219 839837979 897994524 783204097 956867765 142219537 579612632 416675839 707832413 791677527 937971076 509924122 911021700 966835801 980572347 145957968 222941243 949117639 960825361 497376179 590876092 919134554 977409767 9959700 959425592 345875559 942403409 910350090 977401379 541788605 551406035 180666898 731542287 949263611 959138004 535971622 792756647 223234016 491041985 160357423 458849197 435396738 721373151 640871734 888658878 218071192 666672734 937831275 992018814 379907961 401210714 102074293 806914565 37127542 106225597 96223142 686732663 458844440 735748577 485819847 654467973 674702262 902895474 4844772 794578483 237581414 783351816 328064725 462476904 162542851 518016644 670860183 787718287 284411959 660943973 387682797 929702679 565282880 727701029 81347972 658981375 297470367 858934812 465163598 683966746 68125643 596936975 905544138 987644124 566318086 627628982 597662318 939969415 317088071 893764076 960663043 987470760 195634865 628032136 721729408 992627477 548760573 585998560 535826320 861808657 624118834 814819320 618418048 730505419 684943500 861964582 937050557 950176288 883207193 963075851 170955122 187249865 115426043 421624957 176151626 401646181 515788530 858656293 559367075 582781482 426585996 440132641 349965218 876037829 244579004 282125550 578979439 846038006 725280945 745864661 481882091 830807517 496794719 633709979 880869386 973174126 782376054 878740150 106962869 478603699 616750754 865607417 814616154 826132722 482610811 993320340 601502257 614722318 266541853 333561500 151381372 312618344 11547762 458432960 226045287 586140741 980942558 996271651 809497904 896986186 476837950 857748529 618461756 950371824 797256578 868992797 115952675 143162778 354645943 834872042 521477418 716252073 49995212 930913797 854830136 985929625 83301056 451995047 416063128 602064219 866608897 916392511 602215135 823723481 692823446 943272562 384929629 794969389 251127524 778835033 425332895 825120476 789103855 791993615 711400647 849863993 761529350 863480959 600760438 991978263 244657844 840887716 807388981 904367488 75363157 507375512 657404727 913696960 77717321 405944589 330649398 378794708 146917219 418072382 119733112 290490612 378327753 710873933 805955517 873160370 335554424 907759170 389160332 907198474 897326985 971123539 382544144 988942074 355038223 826609119 17226683 602615564 165532651 761664234 435746490 678768404 374641450 961127046 464836318 771237094 647050129 681385722 276067926 454952559 170154799 967192482 963017763 993981093 968927942 990595118 491393339 651226592 935533611 989029377 682708583 921171030 231237013 734271421 793135918 828482623 21894568 552352197 794482712 878930319 2904072 574637542 525509231 784110343 462857411 714387957 897465965 955182786 897517349 910159609 998618801 999502148 857274854 864967901 311762508 524434230 639397338 897423869 639754975 698623720 867781652 906218702 868522643 943512567 374000480 563269594 406659109 411286100 932339920 988297353 980153215 992078845 81565795 630092167 67442080 671362720 575574043 610670941 310494799 478950855 990203661 996167851 693124850 768259755 698752142 727090957 69457345 246338513 79414010 820254066 146223670 837245622 956523914 992789610 532908712 552025665 308977776 965876051 239026093 784080127 605351036 772080722 514397942 738487715 18494304 553616428 964972631 984660775 392160865 662626619 168118160 941221843 339222232 974845810 484372812 974345468 242471235 279436022 201957571 908858087 640536110 940211607 617802311 919614461 471048742 614502254 302201948 422070690 643054817 782770837 465429859 663667788 768081790 794790039 62322385 139181216 814511512 860564959 681197952 812289525 550592596 663646982 19910129 412915613 558085018 889541380 495530059 694979208 558224646 965479603 145623969 631021887 595142108 907581605 888791162 916063741 411977870 726483106 622294972 982917189 221293637 349797005 712837216 969314356 458903252 532325110 122672747 385889653 331826770 461233658 850702691 944544750 520240120 585587912 633411179 634805814 143308117 622427047 590468024 746813948 990859921 996397791 587829102 892363291 493660314 817951039 967729328 969978678 97997766 438036960 673395522 959969672 159928060 353401351 389972682 870452221 305197627 689934810 298614993 726712651 479105021 642680228 124121406 500626299 269368128 471873829 895967578 946563298 815129459 878133856 629437548 819824421 486307767 930607579 445192938 516008412 684087181 920470579 489473873 891262560 68981106 487011353 161429197 830386185 362447620 939949202 171811074 290082376 612972823 691884099 493167579 795424472 902633660 989876317 445743975 968788563 226185464 602055348 643873982 670256386 901884138 935379443 677924666 766187947 498069318 929659760 484489275 505731582 640550033 744605901 456068530 962473352 948623760 949151602 105106949 864686598 170104943 846840661 156912046 762055004 587553614 676029061 216968188 324722834 102655551 609886387 467521288 813697182 653765925 777781224 693801489 729411310 993367408 997370223 779918653 939895439 473543121 931227387 89051933 802311269 609395441 697174952 156200765 722504651 619645139 839741071 523065315 789461412 416280148 472206110 3025603 53294403 93634937 999268296 783193160 828325662 701198644 727142760 156303059 664675982 107369941 405906283 712397066 997592593 609734676 670687910 664105068 908722248 675407618 796099416 885217963 892099906 545829134 641306387 185385207 270693823 773100562 774132895 739587578 947821978 18426211 618486513 698694547 885125652 191950721 483081869 442223460 445978646 259613545 677462742 505729514 652134520 237179016 843500135 637240232 865933390 492030701 906165888 776911001 964948283 227877775 549301413 567545517 827642800 752966596 861438486 515093626 939536798 969422656 975003226 295021288 668915205 769185382 985756802 475273029 698470936 540406559 742751613 758304250 998928456 785678360 809605470 771193223 915210805 334683103 723901899 360983224 607535047 79382460 223943274 260625055 361592006 577570813 813775883 726256625 748181365 250170685 648298272 467645529 872679819 872082691 963697161 201966840 242697724 690691631 852058941 83655361 86982561 662946529 868575553 323814468 779191102 63930014 170959919 258125257 808289965 247221455 623862758 750083550 902716646 358016199 621128782 76365113 531605591 374404813 917269652 515439631 629781990 221310999 678431710 528962717 959004985 253628936 985358707 99930821 908146001 907027367 966703165 308663824 956613967 25156631 355419370 362359877 771574412 848182495 958366551 746299568 897422376 906110377 968564114 654624974 671805317 607955545 922003156 177121587 241590649 941218982 963027496 372150353 700568281 161876654 232312431 250347047 559946963 603578916 851483326 67455833 961969711 490718288 808497914 730084429 733080296 957739611 990648236 498071769 917023825 985597812 992234456 766886650 818290785 156114624 829443735 147941332 604888976 343976852 716037950 628172972 864830776 775531587 801899754 437836698 483643941 265330201 402150823 494168683 849692733 308651419 801386720 482866051 542643043 192485621 916753613 830831526 920547896 725197701 804411185 580576525 794277416 387955006 792405766 568175572 866951995 842000270 995308149 845564291 996296398 378202077 810321080 843824675 899034696 679473050 902529152 872157143 916737288 19098084 917149688 383482170 772188445 162098387 588117000 602504514 707366066 247141094 518797846 485131412 801717187 968645128 974431189 320460711 790296951 331847327 480071012 978342745 983257972 181572369 370664800 569676586 901241850 392493251 656518876 976798608 979438465 559241706 711565687 908974043 981608877 595099733 752759169 776717794 980102028 272066426 832120420 508315657 678703722 447525869 974938233 491798672 963595100 453934038 550189841 402469042 461209105 589506419 968842675 836943067 998311630 443106560 942686944 707648746 965273359 378222563 476879649 992974341 998012962 231623506 680369660 788110513 900922546 154859395 994970730 148717311 175144741 519461349 625940552 791122769 990614963 57708157 601375598 288041760 866542851 334558727 625446726 122846528 189650295 751537010 921551193 304560526 496219714 211635379 412112993 63732275 716522260 47012367 995175176 178156689 544697416 191435808 557443031 563209812 680538477 535537350 651965762 617591940 999724594 108674444 833746969 673912624 956234307 629285128 680917120 603425165 677514691 75622455 625622375 547021735 977266416 255279913 754302481 289651304 367010208 700634162 717349919 867773468 942610559 50679592 465907742 880623316 967074572 420208499 921022915 635748461 863925964 352280332 726381727 741709245 814504346 83691248 353175269 81329499 293827172 21843496 985096354 810990907 930455292 260988744 946991860 566122956 744363577 476583344 772235658 781366483 805111775 370076672 687904058 330452040 361876192 457080325 867436877 65492126 575971769 578682701 906485815 80300839 626303330 65347738 939148999 518653402 531180904 95479901 482362108 131434605 485880847 605401220 990393680 114950886 770739927 392409420 428026021 871777714 888157243 907770945 930593327 375392348 842764602 833707443 979237257 540035285 794779095 229445732 538322488 189502884 891420612 453231665 836579823 747659882 990303374 928039846 980913699 626280289 662803951 201792819 767808485 330231383 873052682 932848500 993252100 579464229 896299652 390053384 558075835 8742508 101067139 113551638 919934821 344806871 521094937 95019035 939579201 526320178 988385989 937243496 968237675 666750980 952618710 639549767 811111176 978629357 983291409 361903012 940205444 348698262 363984136 907812898 997701091 311080650 829974448 173898940 191899055 673819496 706235797 301352027 573959008 484497916 679566701 76504697 135107423 241492544 883546940 946959957 953041627 759895548 884946175 873320738 965764774 996901782 998388767 292250928 972173261 363564900 717574130 610057532 984962020 749976695 823886390 856165614 900137189 224346180 985867089 102506947 761862804 490793099 533197712 59737957 982563578 771075274 963161647 248860221 538458275 780821578 939840577 206513919 746453348 251549098 936342410 604871861 977145301 991157966 992319753 856750174 981176036 799965101 837170923 939995624 944284809 19748274 531347973 653844724 846619541 381077348 823153927 409030681 926719519 402529924 959745229 784570323 937318590 627362776 933562861 497442722 739431738 153390596 391361172 222905832 968985159 482685620 920567926 857040861 858096999 176936071 416779260 799715138 973831139 644597162 822406236 284435932 640271298 878555133 967601755 526196519 548039083 281170420 337456925 489008061 991661363 602379333 985159103 117455335 167663680 688105234 922441208 143500144 218633984 998836238 999375963 341983484 460715507 167654499 388731674 660018804 929371893 142182904 655953988 565225958 792384864 889252522 899370975 180352298 670531235 802220623 937632869 244493919 962818420 531622667 997902103 45084296 716917632 232105 467998506 36827264 395017040 804921851 883693150 436832483 939861455 498836539 946506964 960516572 987218554 736066527 793787201 748385756 898824354 553961679 799603268 422916391 906235988 791007990 828597720 26634716 182264349 930877453 954333022 103215398 868182858 655051287 796614593 914946978 915760663 768400935 907292297 702717105 829434078 747339851 811477274 916281091 969823315 125163373 519253111 271007984 633467829 14251803 281381910 280462576 367598613 736374270 969975080 904023110 961812239 53481584 917251991 985138147 995756083 269891119 650713470 316920402 780487772 345155074 470223634 691527786 944107134 531639780 576994898 821435833 956734769 755975536 831170962 35229190 395014508 97228275 301736999 549369298 594625467 333342659 972076027 680193550 903943436 985663412 994739812 305309692 833427193 142124304 900143731 834316446 977797937 66354917 138194815 22351891 870548399 473060494 526689760 311731968 861601814 582300155 969990329 519473654 849439193 386863797 934053301 880379423 890530823 838639121 841629812 687445936 753480548 356282218 753284326 402504912 658913983 922979011 991553271 64000109 724692170 278713722 451237527 514167570 985663691 492809191 814909696 881336356 969962146 282018666 378384804 936403587 999816725 20307787 350948251 258643210 934608342 328084895 892346956 442916983 570694772 277352764 382521809 839451072 936767051 369521516 551477837 545601759 573524140 468353173 879170289 724756493 789077860 688593238 872117490 30636433 706486080 140064604 930979511 433733126 633403807 767341442 777901087 235309355 270661665 668957284 991799186 315391205 734905422 897605792 906125693 761200363 783693277 720844311 756190004 903642461 994308290 432156506 961041809 658481945 675713640 181886031 791455708 915346280 936129198 321717219 555165491 567249025 630547391 474359245 905281856 476556539 672320280 819263862 848879906 541992692 804868701 930179266 972880148 94639779 984402292 476502661 916003895 304764739 356191255 903543762 982627343 282938828 378989648 355036780 796262725 506659761 740979542 506359002 519310205 826670792 892379513 170487183 234415680 590200712 926939040 705828561 953799425 416890697 763628724 852347392 939229735 999320890 999753449 282683412 998362485 854263941 907518091 430805882 876581281 330266789 956870829 804869527 903374216 839720731 952578660 380786152 423281522 885783885 992031680 663027698 736069819 962789315 973565161 598551135 599690122 54730423 589466172 779148546 869068039 429771154 510857849 424053532 429482459 245408860 262981247 806509790 914857120 762905738 791612404 903700579 953959034 199326671 938944518 650089119 954014863 899532270 913021491 751256446 958708245 743607618 781410508 85071690 710233380 124306855 546359859 661840338 873099514 589925155 664914830 632578383 967759901 917603509 930297557 796558223 935220839 144250090 829393075 790056685 892232833 359888729 766226589 526143933 887243278 337804661 366123539 699106700 780589532 757149015 942702512 51993117 339295527 41729594 421696526 919186502 966399948 618420138 925528984 59283755 881615315 578418706 712782458 965876687 970309688 980189343 988054127 288456151 885742342 966728912 991124943 50519934 773065370 670429153 745791227 647417612 895843110 78755052 717031066 451420901 491591855 371652789 920177885 663673997 916303937 244846701 526128806 16304103 313482578 786592192 871923002 949969871 995905278 269957417 490033149 203252998 234934700 527615572 891660923 88844691 689734821 898686913 989927455 25277938 464576808 261221781 660927914 152199038 998580663 156798260 220476164 64795736 905145713 434245561 499261603 735246057 898548271 539532747 612539636 604460581 652935393 678061255 887260409 647870934 940296491 434947029 503239039 795351048 996077738 749476932 754737171 221204676 299176578 169671790 215422429 101529732 344544771 118593980 196428460 990275105 994811352 521271265 823154210 282982084 464224257 479440490 545434708 336696328 493879216 964407004 965988032 608415924 840970151 300388253 395149874 548296165 743565954 850885351 987175163 139608075 179270715 202522173 648422256 285824453 364880388 669429662 855801680 497087577 733651598 350787637 926017928 307158395 842847507 840017552 977286090 337762950 341498870 490249236 723166968 409926681 761815378 336847031 489844340 599462699 682215823 701161013 964039174 761488567 787247106 963647818 982460287 281880394 379502360 728941394 833021763 519861696 909155720 571098739 666428148 923841233 982121829 984939129 985184823 540727632 830641088 389162732 865338437 617839087 710541305 984889073 989518430 693135530 768894338 423565554 905868662 185588833 255888838 113907493 809509768 628580284 982777943 75031267 868832214 323808179 563464850 540312721 720737526 832794950 962768299 230344668 510957324 272357634 798265892 585255644 996536915 454322102 749814336 585683674 702251616 869332730 983368541 839732729 972227402 267697467 922859730 136627504 315137770 972840505 974477363 210837042 664006716 209871986 299491347 678852485 770921926 782726676 847127704 993454755 994117130 684608414 748842910 481693315 730464354 458007606 546377066 981438346 992509682 479768414 634448766 265385329 700228482 87955591 690506423 854763333 894646860 347867068 931561647 158075024 172036525 590263512 601021520 527900132 927302348 661620397 964456863 343074932 378283093 413516679 680895945 97021594 292514832 472608501 484101793 360239816 852664885 976914978 977597861 108850315 895524904 130306460 553545098 328986498 984759182 145882325 761438167 145931605 513925471 967198225 987983108 866755499 973369633 707017809 955667255 505042862 742827249 675342377 725580399 498333888 621706118 478443242 509506849 636863088 838341015 391053435 903567225 429145120 632733692 156258479 544536680 196795529 264467786 323520608 823018518 930268279 978501154 634520988 984271430 909540715 965927160 695833320 960923621 783336244 918172224 245210170 953876196 176898554 356700227 705769088 738695284 665237855 949702249 541105258 574840582 928818918 992306893 764999469 916175096 122492375 149406491 217128555 771121899 725490572 901665477 996268043 999277791 392623945 610209304 445499123 999859768 210437389 606118352 861293479 980393288 684983869 715680779 495390574 725826225 57377197 629728159 88738696 701441285 846821084 933797906 199064348 741806370 888959368 967816010 682592949 792230198 73409220 101524892 892717911 939496957 306464855 930090624 764051839 887135407 212511792 741403539 808753425 969483650 345357859 992590028 873909767 959485914 978488013 982081415 159445066 852000713 784836891 797172524 511642540 889324261 659733733 954431082 408023142 608651452 222287590 719245792 742025210 860427924 13036976 672772364 496342405 811760664 103850765 565729428 606551905 878320695 257643293 530719476 475011839 953605357 920776093 978392514 110111101 469052919 217865910 664830108 314662225 784687459 231722845 812367316 554530078 863644136 955372829 976621665 692773866 841007199 503385459 857055110 242727764 646912201 320317210 820767518 971658793 999147580 304632378 454123466 884408482 998777124 324816893 964204109 677897564 733252837 939641911 971060206 125448181 718567227 588095280 995492834 229717623 860464312 503178970 655198854 159957059 778417270 878540362 937359182 987019012 999359424 198209090 540791521 767796983 833792865 288028010 541707931 922029408 986567725 751400440 979873500 682427275 700694881 401353210 483679733 782924551 874774829 570173052 645688478 27640453 37478514 54321099 299694631 956399488 985948645 77817933 665543390 260555688 783872876 303734411 733617952 791350847 805338631 670271357 726198660 75910519 444358753 132931689 545593401 862197900 959726756 672720204 863342325 609547435 857054978 747688829 978039862 736716558 740819689 28161215 468561869 935500757 963552852 392901696 878424183 2390657 952488915 348672370 569007886 264229938 952519406 605801261 618045599 423659817 958520382 414775337 445435954 809050105 816655768 474949137 565673422 25358809 710320699 640021809 689341379 494791694 596810500 465047023 611325555 150061996 520524948 727849862 994491452 918164743 963357405 766201980 868883464 540900585 769115590 225838567 836853368 449558862 897909050 955569130 961875561 795309443 969997173 295914565 903379006 150751645 360837013 541515914 896131850 629367010 851532733 473091361 877147148 595049074 707890019 480325833 536585326 465645997 710011345 159520648 538135320 913579495 993574903 717637126 793880075 25980159 513373273 260795724 907016105 567959544 734801305 98972430 173054330 504232832 638081310 762644070 922516324 181286652 297144779 156330520 512802143 843481788 846377336 849726673 908661228 845429279 916182423 330492363 851631810 451471482 988422096 214758158 524379228 329883293 863725423 980503710 993887209 151578077 453464180 765279885 832681727 591094951 707940028 454056018 668807517 495089673 821900185 500264288 954620579 912998777 941369335 676167485 830751876 839179054 860927374 477686442 826188768 857651498 915092703 640671176 740990364 479925387 557801205 507626420 637416265 78920332 704892050 372009294 588087136 75105995 620220210 608709456 917217683 956965678 979685201 499702091 825186675 678399169 972026762 297182093 308946488 80754 845372451 42074045 330415370 413609881 447044416 97629492 302819412 508933225 518665929 265564321 527954786 755530339 795190915 104117335 635723028 477618105 881218118 239723762 909054331 245420239 810454286 390742119 815036221 407022294 467585299 639841889 900525872 437976806 594657875 14995234 571678856 795542034 945005075 492218068 659819190 336090735 361042651 787233755 899276859 122366971 520754111 312424845 886644382 120117976 613629051 651031588 903252902 120129827 789748693 733901153 741711525 78951548 146659471 448570289 824630384 940164869 970449314 490464388 823449884 872472095 881506974 844654148 871508643 58089737 196938723 326675721 959708304 663329238 805985539 981909734 997556150 186421706 347653417 475841820 539382839 406059367 892367552 385106834 759136116 963348466 966307768 833688029 848530195 708601826 906385161 77377738 184872937 39200952 402394069 602932897 743931901 497444143 519912035 906405525 965449818 678009070 859749000 663066663 663190095 818930144 942685709 228572182 352045292 17879495 925279303 204047201 394476113 604876607 633920440 538725389 974260160 957075488 977951194 543162283 669315392 529869721 606022604 912410396 956717569 134604415 158993684 422862709 761291458 118858006 127748947 475137205 865702552 24725041 836413388 414084725 915868915 837587409 866535405 61210748 601066408 593906534 652039359 394094286 780086777 867183004 964604036 960805201 994067099 874633542 989909110 357032296 673557552 542778462 706257749 31038457 116587883 479115661 947087527 454082203 601581915 891358881 963935041 358890405 999099958 88071205 581839182 926288591 951686361 604375256 876087047 256927322 991050979 129456594 454300407 822421149 956347750 23499621 429698882 500872555 945582165 601095357 732404831 591977345 771154631 1648929 723828032 855974058 857300615 49147766 347372194 333135355 435708818 577788956 839767673 692198159 916769825 166472792 204532407 499539870 765009771 36357361 852068400 471731017 594168360 163235737 275222463 917021587 955873454 813386562 896480498 26345912 702729897 642393956 857643463 99322816 264907912 621400080 674852538 723044624 858509967 518740459 954298839 511477016 524191254 376612976 909027208 93021207 230730775 603641991 683647731 79113389 539322488 746252084 866523890 42211458 493992577 64371607 673331164 549604711 561238095 78876067 362770795 342406510 572152991 891632354 965926402 716854045 853341286 85978758 908616277 81970245 322988648 819156505 850661821 791054595 880824713 16288437 147036591 745687058 822323129 137192906 877427952 150898588 765388129 451958678 589603941 300830024 629982586 717622953 773691852 24655583 292362929 707039224 886675415 422584450 576919838 967603822 980538134 398679744 957081469 618718330 933220898 94077260 512319927 4353891 913572068 169851851 349424721 826335640 959490600 87835288 242349888 384325218 543197664 330137423 976284892 989638591 996824942 904213307 904303176 643017219 691872926 786710431 856055344 320535974 589304521 554474160 688445331 857402825 900473695 600179845 837769423 134180263 377375180 124092320 819912237 495030369 964484554 373099245 559299073 67004269 781857522 321902919 380132732 199259724 694119193 162468367 374542978 251307364 372476106 489585483 740077113 796551290 969219698 155445712 717205703 268143637 478570860 714062309 793513745 763982519 782473025 760906497 789255339 300474317 848223434 40051250 307828740 563007103 849061291 374635309 381311194 911529175 983874027 887393306 947676391 625309510 671420452 22524950 789850004 336123917 923473584 926646533 989031358 565939272 640995323 623410675 699904633 550223074 608065947 871546454 991489189 151953206 764195705 945523042 956197419 774717767 956926658 797557327 940048154 407566301 506640539 861214436 888914779 219401 264425109 748818443 778831090 407298435 614714177 625343844 651123060 389643380 430707121 305295608 663771528 387540334 432603960 73811904 131171514 683304356 777300812 947047518 960869409 724489672 993730540 428210503 719107481 806839248 977355911 108834588 460424835 381286649 643640431 873968668 925831545 466361979 682366965 325753649 787087936 951051374 965472641 776895740 838246386 23804611 212590210 718897357 946576057 763541262 893405871 4839455 920338569 786982219 987669418 230998269 607983199 312859605 514078591 809657929 843857702 388122365 668433960 873543291 937804949 384340374 715711380 844131638 860141200 961258731 997794698 278194721 516693691 445899893 842993665 252896501 827886915 865217671 919362688 627968961 968991906 33081654 221490994 865833694 874919562 146046752 713949295 581575487 731548170 850206440 873274188 953867060 977965941 236752442 576868426 583078616 770384137 211634782 590876507 405709085 635148770 66841051 738858876 678135612 936842080 809141844 821887759 85632028 334879500 85400805 776449806 10453712 543145219 983932246 997840480 740799670 878515651 906659591 916206464 157455159 635635865 879758975 931714054 317943540 662904455 473728295 890174549 116742009 897589441 950468351 964762888 952746472 990429852 833658575 894955292 6843186 507378797 10046585 891926496 920415404 971477781 590991977 614683377 491850044 791481196 670250276 817947762 499713636 896858536 324292702 483806424 296271199 935016203 289029823 678153616 556682553 918318004 912276760 964961751 114025227 642462580 225514517 834768583 865279115 963971565 393450536 957855854 740412320 872764146 174379275 252925631 942073597 981969478 921935294 967373455 463748294 743326789 867603731 889835994 317502890 755480146 363292139 451190378 605778112 618936481 597454293 800243191 760725983 851321382 800548364 861157242 209148389 873147160 579910634 896398661 193405431 781847214 527796841 641021277 10980097 386136028 709045778 892533898 920026563 926389898 963141926 999006837 297776387 600027474 343334775 741347671 805678062 862630623 546629791 574282766 310224977 826739771 52466551 93056330 636242143 805363592 260726826 470670249 226331361 402801949 582025050 724120798 311608455 432484963 916352979 935907871 506797948 561685474 539870948 753324989 935266456 936790222 990289259 993337934 881069155 906403863 390434076 921880451 249590931 284273028 73285994 511385638 827805411 934098816 55428292 132915993 389034872 482709385 592602668 714416409 748177948 970393015 29881857 194647722 250341837 686108568 585625702 792386829 818044353 864279313 299460558 954305696 103806017 695735646 10946729 161284320 442864943 448528462 900698108 982519036 879907282 920337603 750251643 842803786 647558696 844379501 291919259 822401712 564293680 667292927 318690335 740381867 881894120 898598839 250438139 778325944 61054611 111871222 916415154 999669320 860607360 940671572 984630420 991637136 941098298 993212699 279124320 623079152 699942122 702217695 728261897 812149250 42124416 553430982 502491959 582929130 637274441 706160622 968474048 993756966 418589140 836511832 185136991 667338637 582333382 980586424 761694271 981547378 89988178 653574620 340066900 767974996 935354715 965310057 34999357 520849067 80242419 919978598 4710425 494200793 628973727 860137094 101994302 797507289 815262412 974174168 732808567 833958049 332783474 505179701 616332188 658828349 321464780 466287968 362017612 662456204 588747066 760226931 169751168 323433974 644142006 655414059 579505947 868274295 185728837 439498740 832500774 931163527 146314063 527613846 873769652 947899888 694427951 925319587 771113750 776775865 861287541 915459116 437389274 875957259 318553351 465411734 907783639 924573592 985195303 987093545 322154006 756571605 437410815 916714003 524509620 596645962 585731019 626044676 164917055 732693226 413989482 868390553 92683740 429660129 677867084 787815145 752361611 995890733 514158795 693027737 220409029 942676657 708378428 813544572 625833448 683162311 476439600 819348582 989866344 998419992 47537340 589005747 832729297 967815519 350978992 430044812 681572077 683668544 936646407 995968411 328060072 973975771 260820860 679102161 487681228 754297545 646522726 898543371 154896560 187483249 521513605 811988103 678965458 982491939 727423751 816806684 931031440 950628031 605740873 903239276 464698571 571892724 170903942 551172111 364789201 603565508 486035783 582381020 133093100 218173697 88180482 153501524 657081374 885346595 497232558 889296541 615274268 959686650 118250106 570542721 753343755 882495830 691929115 818110358 981109534 998085168 133643675 909900801 781921577 954995875 631642703 684188472 618868790 849763120 361817632 904636468 631254248 678553308 793642846 900664521 641745929 786177694 906712346 907670170 874766858 933306624 244501112 987939765 477351018 579267143 601155438 755327947 220589182 401691189 217460057 393831302 717988146 999183439 796331653 934097785 493952719 502480688 388888652 942311884 888110513 918630070 315680354 365298090 93027086 246756281 979482792 997617794 984270231 999898470 980862019 997078601 516665422 844734416 67771572 799007390 346853346 728881476 901085061 946826303 296736821 913034784 396553176 890776074 269762313 539498590 737847919 772683098 710321498 809318758 646922949 935929882 770487230 976765992 911662698 952708511 343561528 431121087 548243455 971298978 354937152 356463237 174562092 437305573 620836193 876409389 915956962 971515490 253398820 660050871 687465187 698015624 38092077 880755418 756913415 808724795 644449567 743304594 363090866 550023116 320145378 460514078 683817149 732896512 172798244 545184169 694089680 741649157 802384050 992605518 83393238 146908707 101335100 651205116 243963340 970695606 814155053 951343553 356209162 964091864 950304323 997322293 512461853 781558556 329589257 740506567 290601021 904380389 447462047 972084868 445539009 615973370 430733382 858023530 622504979 687456991 127568326 350666101 925966095 937833651 622903899 882142416 630434441 669358820 100833024 332521788 198398310 798924151 329934852 414627408 106581082 148424286 672857660 801041355 867115212 874644447 152665500 154063478 830950108 981055612 547313306 891840608 547193605 888683001 506859091 888604643 447845342 731078701 772318336 982201663 686038034 958691130 866736446 943487692 867094003 944730046 185981262 361209081 899271394 999008538 300062484 818357277 625202151 629714274 767761338 949988545 154336203 668298812 234287817 473613180 376352915 453935043 275335054 927954604 332188516 500740757 446761224 664841098 594319171 777969455 946240121 979675114 81807771 361005246 833379520 960946938 736718536 822413586 69631256 862969042 345146519 406995391 600289639 956513806 29769622 862513555 182806707 638316614 378873857 806840139 836192215 896342063 369720224 616544777 506441743 802260798 678769696 937642613 936884416 954537344 786763387 979211801 404747113 735098826 690792958 766377685 507053388 583395222 945543264 948635400 358522898 489289894 852196536 946158674 361223803 544952932 884289847 965913380 357799428 595310394 86469126 255267487 519776943 701810733 289790738 870670803 972211517 990734286 977184442 997524369 144852556 299310522 888773577 892331310 967239988 973850034 292162321 408697230 752003416 839785609 567485700 676331219 875432144 940447165 440146957 764031078 58106558 309095854 65793496 768757825 171726192 261692449 421220565 629638030 179894962 351214383 76143071 736301969 695226920 874863679 836474591 978423892 979724791 999944059 40953672 963424275 582878840 873579989 544906063 850118896 797070678 942381462 668678306 991245682 219564729 608986428 984000767 993104552 514130939 784132233 895671828 924304472 16114386 584235788 494377957 655578264 615250216 839271781 742944154 813031231 29757611 692348874 932979937 979982456 268819863 329456180 189936359 976442727 513184188 964767080 97527043 462933970 573051046 676991984 365848205 851895082 187717966 643401098 355138229 737054628 925001982 983101494 331907206 649616286 71229478 76499081 603050105 799820767 629700460 706015591 636555830 862005020 214184063 745281625 333641703 469728651 7088318 315036050 424735663 629506961 935767293 950469793 897703510 906962036 447305659 478862824 424009994 658463159 525719088 917882782 226429871 392399352 536473104 992388106 140465950 347575057 318567888 543494232 890135603 972752938 326440624 751687556 722338061 878121506 97475450 833918128 503149231 908131802 754132556 835251660 217685766 925131035 75081938 258114573 36231372 525016371 475465895 680131273 486589785 849533041 773064393 778903253 521872711 587200630 432953259 676107851 527081186 783828028 123614709 215940085 772060283 795884224 71310449 539871508 153520309 293402113 819950159 822788499 313009499 841926403 176543398 394460502 628844399 869400769 961394759 980054662 964232276 995515014 204862374 366642900 237688874 859079839 532474951 741068267 886326902 995593728 930773492 979798382 37183346 399973332 434443515 882763179 900126671 907629691 316877720 354229056 807334256 851191977 361501974 820403885 229585621 818722661 805304913 872941942 233151893 485359086 575242399 645034764 634626009 701765006 848485714 911996774 855438919 951054575 887334942 929477804 923342615 923365663 730589602 919313890 622022431 866461366 414813246 710547788 396282614 792338389 642865447 885100842 862052726 953796671 293318489 901481336 838785507 881614150 332851804 435153503 57266273 113158962 106723653 764563325 338844464 974594711 280989745 504657282 8637682 54084924 295516135 586138111 570381463 892032046 978573595 983708142 121598798 405514112 419034160 867574339 798824868 807953950 560501817 989401952 757103716 796346600 821647469 861544766 689671522 979149229 869873802 996770860 930689412 941810399 286861071 702702685 429386587 677247940 158510574 483607155 757837420 789153266 912065371 994472297 369315795 957368923 781833180 952509434 854448476 995470200 683593665 871791233 96285139 699382659 351982373 646966902 590717926 797984125 937139659 989261032 318648795 682299104 491425972 964552569 369305994 868037183 903825145 990851858 172963667 261983273 993726985 997104057 787677108 799906558 399619076 921342897 7836820 522741702 953863788 995386879 701281393 995640804 549502153 909417500 342940423 501237513 210499188 414505342 503223021 910472036 757253510 859192459 289336501 563211862 236548347 307583159 110775242 507453760 12809828 126176914 69708571 435304275 848550394 918774168 734270402 737487949 644918559 709893332 207033687 422072875 236044278 939954227 91274218 864766840 388169262 605728987 976661020 978777205 622034189 756843457 293892486 592134108 242408879 264973877 32772653 597401796 616883391 951089621 500917890 689194016 147567973 921187968 280422916 364214207 579855807 614547247 192705879 864995599 74537831 594543349 344499280 995236996 767305442 797174161 801143439 925825794 722393612 959643969 583477417 982873546 140178292 879828626 153360166 367799607 858829099 969920859 991652743 993386197 325985903 682774366 793787350 981077814 704899531 731165860 441235652 947957585 734874703 927957398 826442758 922982733 318123943 820264026 761624947 964970760 435165917 970170198 481758028 845112794 85824472 142885859 839071041 892913207 329027799 374891171 167329456 304050600 81327103 170473777 668243027 675031326 604380329 920743526 874543304 900479909 63562857 894384527 479818177 499687372 182854304 455706970 234012697 493811184 795369063 990364782 1095391 769827364 429151225 539004099 416405392 462597701 558710709 669334011 516463876 645459495 434696005 850495194 163743773 684230302 868606450 892244357 844449780 892242747 367843644 768219662 765549560 983317248 942647212 977552779 550581179 673706557 23602549 849651819 924722379 977820291 241375081 317375909 450705116 985703612 913385548 948685874 404457231 747487129 607490238 772948897 507114580 698553992 798647378 988449538 229272786 448797181 341256893 475199081 785722776 991201119 87113462 105906749 347792940 368666445 413823632 950169945 105101884 551544808 709019548 895559389 5188922 421969269 884412914 894707278 64004023 138403100 839088901 944618530 832769782 980085236 508205819 521612463 165596358 947767742 194269670 625816713 527934477 592329456 27137845 828545335 102202231 214723432 390816025 871004262 59946687 830424293 306267516 410804126 311215601 380272878 990330190 990398245 997729401 999425830 54151959 746546375 268992077 894909382 984369169 985018008 22922257 993296861 990993554 991558475 554137821 880975042 984108276 984795824 179525547 697799763 204408871 821207835 893302551 897667338 415982126 497471384 837040426 977222105 965179474 999192847 510994869 604222284 545661539 606083866 614242496 768641012 961769108 980308701 174370741 411996298 289552777 386951297 642239357 830581428 675673705 708926581 286090385 719688964 42848509 936939820 654327731 900949871 718321160 740323013 321155751 773502252 864715275 958720985 592033344 709718432 137330639 363380947 422018643 923948221 163580564 351822894 609318019 646061120 223372340 569839652 943628395 986151750 165866185 899205985 986874264 987162795 220890077 981015532 899123870 968079669 725332677 780966041 432781777 878454282 635436835 810602401 776125329 955994200 583215722 652915535 892150604 944657643 379711261 761031637 932189929 949129466 141888133 516260947 195437001 413334293 17626461 55295219 56370121 314445217 573671830 665091634 67615593 521115346 262340888 998285734 889566832 987835240 262947864 366466137 821643700 917118248 60628110 482489503 502528230 866779899 195988136 433287116 144057291 540873076 991745173 996544798 155425969 217115367 396839490 644466869 788204014 952683068 760323106 774721115 533615637 668953066 513692194 875228587 973908901 984847262 515357652 877569495 245245946 375885893 981477423 986873860 983487452 984024932 25979422 476740489 506728647 955354517 957279729 977358886 559483768 593032212 477161162 702206875 167369399 499179161 292992585 814632158 740257367 932565081 931216379 970072837 40066683 91060430 439950293 634526859 446948549 475000421 931855526 970046784 107351941 913779700 989072773 992418677 742220760 762574855 395212682 789336101 467034506 634876681 673419964 791029477 181859708 382933650 538930811 969602099 294721951 686726632 882835553 950065947 52880436 701142706 577210678 733098939 952772978 984835259 278934566 280019350 490952709 962902723 269562769 576941913 559866833 907555182 415414474 914235963 722266582 795704600 505205899 681079139 598927272 734078399 839178480 988403005 843042109 968089749 754514536 778115866 233628717 298601533 36381261 391553595 682991145 978918515 587854024 709775881 921692740 974367857 628901957 949242362 158592468 712081431 496102684 973580133 519679469 555362920 149392178 230333796 104381990 917067521 957367312 990227085 378144208 405251067 327085224 726652095 62841172 193489548 607649628 760440762 385538952 684158070 719870057 943357296 560307437 908862246 300878315 745520463 988093267 991032936 521011668 911502211 304359772 945034735 66932368 162363309 713365452 891744574 304570214 336937673 255929941 677631595 23504683 843036578 479430920 582031297 898191294 931344050 881119208 926200687 625449472 934384656 558191771 636675629 235720515 834511189 294419479 550110996 666829680 909738924 688219242 813438921 319733319 470213599 546264937 970134312 225810003 895167258 141819904 267600458 572188907 730048956 745100925 978389874 379164225 528693820 826797492 937137606 766545296 898820268 314272863 615086358 529695933 829056047 558447969 862060996 180580770 385609713 731672106 873562972 320787543 554638018 297460024 488745550 205148701 583861401 130226726 590579908 476603071 624246746 636490232 963623354 786245682 919768954 850254772 861244892 896666205 913101687 95474237 301119417 642775341 646366434 412672620 598071076 789475497 973658042 454685634 876319020 177911430 815183795 315891540 886926047 178946990 515407935 449532850 966731186 609754537 927547038 870888811 926263865 562804717 742191900 31525614 285495616 783364971 896664074 637452186 933164312 176391566 247884234 917439678 982030305 901718430 920527266 175901444 384430034 735621929 747081689 72181342 93837621 494058898 928212607 160208406 605916887 503606552 831258760 525708489 751321693 588263027 968726568 408768182 867766625 214333977 702191525 584961454 885104614 779952337 835814826 575372296 971735389 291494975 722150155 193710038 202536642 967237938 991809973 615081095 733785457 325482943 804265099 370000635 684630780 481126966 763244128 871765367 976460932 239023648 518882079 802679174 962611389 552343287 591220806 439849090 752164891 81972607 311305824 940697343 962662863 53919227 491125585 965058074 987771585 894227247 924055309 395661160 945093187 667248443 869357243 288046056 783971935 347422025 383736506 865144056 893356068 81417319 85094204 720967275 879769689 487397549 951352999 948426528 977904624 735757827 869805133 975857248 998985486 26326588 288916119 878919386 955874657 877970042 930907087 949179551 999299000 620712400 992561292 96253562 770411441 596849575 628191577 512034095 616307012 378520852 447254467 688272154 696966830 331676131 356134293 282114529 390260876 989566109 991804324 802989740 940318569 204091506 934694141 580767562 959945001 285214071 580064121 463596292 679702708 135684374 732305713 755746646 991285013 546791019 789183519 476126302 844427843 810646928 973028067 180353182 583143606 912611910 956115262 347047972 510890062 659292460 976043977 497731889 724618445 856748716 987385211 459759376 898491687 56519518 815234183 257623365 310880570 870983208 988835992 959217818 980472808 25563193 301372114 498157282 826204501 352605963 876750584 611763566 967615578 681454160 788897413 570894468 967437227 688527224 966854874 609849614 642661598 942426613 954774429 46516910 476224075 771153281 906262745 481512411 644637774 731634755 862635193 713490035 942064353 448754800 654852244 651175357 677915568 725525594 742394676 411806460 654205498 579541374 830561659 286228879 760081382 65156787 802627162 53542511 641243109 180196969 611153287 49797252 710172055 692033428 706915563 925362050 987542232 60139342 81839716 117426572 528796264 622141428 643745896 104038184 898537524 686811913 793508816 595201204 818464202 358267679 946908316 701138745 762835742 688202552 811926061 835026222 874786644 557331553 655745494 176345695 426644193 992592940 997000750 937784823 938076653 293575910 844642579 322071001 991706209 535824764 766377849 904228279 971338288 422040220 938689949 713953377 718333365 331370224 627910645 309224498 882440661 120950087 244426828 582451134 628048555 525495219 716486127 650559082 896582906 440496079 521537784 187447389 584964005 599718654 886992501 907273547 923382379 79569310 578944809 900674313 952600925 789193088 906290613 803193920 803671064 945465192 989204380 665821078 794710166 989915627 994379600 370842335 985217332 167873350 382480188 447482315 721925233 643191410 971699697 24276314 353944517 16894683 894619216 18563625 57374030 883792161 964202044 506280548 726061632 118630830 553586437 927118524 990657632 398917965 403589654 901983505 974106930 122447017 307676202 879059338 930298344 501327949 549129564 500878201 806406163 354457352 543873537 614977028 706041674 62924649 237949825 613719517 620392955 333141613 964830847 571901514 766631601 927271978 959390294 234477123 470622323 922810057 984890140 640433966 739706142 614913612 988249185 456449275 475448610 513584484 577643485 81913206 309843993 330613178 952969359 885441629 974776359 735026016 738859781 135717141 970609667 982406361 992735542 876385701 887822551 791545289 863853560 919489236 967212131 61817680 257943054 220388830 988982719 233144229 899388316 896115058 900763008 238686711 994787919 865628892 961104484 454761516 721888748 513554199 952389585 235537290 443281759 477398571 905383089 13805617 990655118 187640939 788125829 171852829 655994830 711920650 967998862 721656884 804405329 808311387 972648515 261914241 421979907 188455107 866852900 370893719 874504128 3027709 971720824 220847806 409451544 98449802 354475025 717858292 786661127 671989018 863966186 743908648 794142959 945309470 970492310 268579760 609639482 71538411 133640213 291803903 497657994 56724288 685967127 914446280 917971744 784143505 838923521 797262545 946193775 742920863 761011924 785812244 955188668 800803645 807373599 18088171 251310577 764276016 999936372 316342308 749013189 762557706 894310707 758118700 791992906 790682412 882494229 752791004 785838618 561346006 976914288 321500351 432630762 562035976 688167014 199449457 736081860 440656433 857620513 504665088 905691286 268690786 589540419 634413482 753273950 474415414 832581914 641321626 669229980 364013740 516698796 966326735 996661830 708613681 999990206 997412677 999276392 8752273 818732885 881404962 973047823 710906483 736213223 815612810 944886811 423593477 436256033 357955569 788729163 795257363 987768406 614982757 668258292 326899367 920736995 190741070 405963620 140594770 597132206 799115112 954643100 560821239 949776010 81975683 997672565 957602117 966045386 738082662 838127991 994372666 997186372 818904530 987376455 332887522 453350611 29179721 885984469 537961030 566905693 150720908 965422355 411710733 447125115 666678501 820812495 436696917 553761969 1902859 121319810 857316393 858842899 404601225 485577108 622399912 930047509 564188553 646805455 723408468 922527919 292530220 305647889 348557200 996547226 552122686 853972297 599237143 830891222 108468789 141273655 364143157 850018559 848474638 964500668 267890251 368697533 462896222 474601710 480177232 712851308 423459623 838686883 388177474 778932653 339963653 567666167 93632490 165692416 653007265 727400874 507568626 759379934 184283244 932546449 959994571 963988859 386318249 830538920 642897888 717750519 79141479 987779844 867813975 930019271 836378765 872082369 451714563 941417437 944325690 987667587 170905626 821477290 171992153 604187263 693715452 938437357 71922598 369340126 771009934 957436789 856443947 924548082 585809531 947176735 426001656 728073339 433452275 724389306 590799049 943438652 76292268 170144529 7250772 252117961 560467780 677820515 556986933 633032781 542499716 896016791 407225754 819983160 512978991 927681035 34531366 819787574 49503887 815047685 693399370 727752027 604392777 810381538 420470429 819032537 856457663 916223454 445277703 860814481 179274976 714502947 848582409 917808125 443210731 460351563 736483256 993846022 630673682 856171267 572656440 635639105 133529946 972775554 553211748 960839002 633651494 915589326 376160419 398659063 414980533 876882769 542868540 826906890 64239504 349562990 64632392 402297673 611828192 640103078 595216861 669718441 498787590 842474308 151257667 827506362 164547751 252494866 310467385 643265641 343120030 973084897 523269024 615501387 991502893 996523559 926704080 927662220 599608501 896966447 583191429 731798326 708763210 860210943 924741836 973898168 968485717 993959645 61713624 563838596 739566421 877524603 900521170 960895923 341277460 833848505 874481469 910334459 415337951 820717434 298843332 777038512 539403295 763955624 541532198 638369235 99663583 725070644 125154779 732495503 71027172 905489429 730175655 960727873 700454406 852797142 508543694 793062327 236987128 803553478 13603591 900782390 407659915 574763590 409476305 954587162 210783881 688915863 281336340 411554369 74022621 983337258 592358385 655370233 592779886 781684184 644762681 940173901 262963606 901325168 899497584 933172867 116154540 194549203 89572373 706088206 582125537 805199774 567650983 700465549 401156206 547395213 40248799 495769470 332947597 745075598 445372515 753060344 311414045 740018579 745121509 810545127 89163174 942265565 828338750 900490998 405966229 892682676 23748772 32062225 974260757 980672005 183657699 645738257 918505238 959125872 997723509 998445975 314330110 907359644 261966171 414882868 272226047 311572566 478004608 966249479 318146345 371769280 81305604 254484792 610634555 791882002 867553695 950906907 599448468 755544068 577793315 887563741 857042037 983757899 793592954 965601563 582384333 908896158 161791939 272744862 491330349 906587904 44277494 699158173 782232833 964918178 293727282 745610995 799072719 807093496 692270939 960109383 504081163 708539348 282514020 306510702 402896072 989087138 772500962 931451718 552742994 854922217 20240600 933603749 33135251 536548039 690175007 727630510 36251721 89162127 724857326 798112741 284205555 338366232 398742340 504258307 142495389 994386930 5737818 539023359 195815451 349363941 759456885 779500744 158208684 364937207 49975554 418222719 174452973 781667160 21733235 550283642 760893906 997367678 750721488 792255268 188927289 594686374 709952165 858463609 841484124 989664617 702893357 756774695 848151194 893095090 19954523 137975206 434474300 722827760 876077045 950497129 618936877 739712735 957846921 996395998 75539299 244502293 361273445 503068023 942486383 976356740 460563838 946347208 605377781 922032756 479800026 534136263 273520539 411618501 530514809 756288291 14151635 358592466 435783851 503556160 520718172 900124143 809019616 992604116 669743974 973700671 807656360 841593700 978281440 984252596 133091094 887821573 475682127 672252223 406504970 848125173 967372444 991242030 709834501 871510508 543496340 770067497 177807643 882850824 10787959 497908842 212818589 584761764 867362563 993437623 554798850 831844872 293385182 734601568 630119965 962776634 561336408 946359877 156478424 910058881 509947395 718043757 372336776 386927416 270762966 526334705 75984360 473761874 346030948 856543514 862374260 900114321 726791953 751194126 762626934 831296793 556506433 716919819 897062800 946071404 866571412 929808900 631103905 931521115 975058861 979708772 792390546 830737341 532953620 640298145 209333225 744933497 445699293 509565356 402959980 631073755 695302595 713852258 249230572 756159691 56004134 836802632 341350960 617745103 372070469 809941968 565158186 656539306 34700599 42484912 450364870 744493020 478883501 596293631 538200756 771484987 724787196 847292374 46522263 972752838 924568730 985912728 612511797 745106362 74469171 183123264 370946035 521593034 81176839 907814871 382373141 805072762 978224501 980380706 765204979 824371080 318615230 352024287 492159666 748815391 327416195 757440082 963197296 979821459 440286924 782235233 668226542 936370338 593972952 685350756 640426961 799271757 660074259 698344508 853659507 961849970 586533995 920526976 523477007 719890294 135632432 292548867 89465182 324915821 375009246 915666656 857341904 896434330 850897302 922426128 133207816 982688356 612149452 899404761 426839828 823720885 796098045 802624687 67039002 258275301 40237922 541679362 342161825 873021922 39102028 716714010 605244983 607715915 223099104 387720829 528812777 587001896 47243442 549682661 268120204 401262794 892706067 909011496 68576192 440665181 952956975 966180183 597671790 875019515 472963097 898962993 355535075 524980600 830029877 982859468 587590384 717593755 16046364 743090641 625314702 867542446 133379611 345182116 535612579 872346080 910232399 985905026 568209197 791375036 747199808 975800713 322630331 584516569 390396910 949716057 369787836 523358901 941522636 975186001 495301162 683103337 131781996 206011204 739162320 745775756 772193879 966507037 491590252 776186004 681401082 713410539 286874160 739521790 125011926 741948807 892283545 905607124 798138810 933893015 949482728 990840670 603342134 605220063 58602539 405051877 389901180 654989938 535434388 772141783 372411285 440969850 256995465 455544470 59167410 340878764 663637325 857072107 314603906 916703769 462438670 935763511 290348920 507078128 565414924 912005105 739417140 765333602 64884880 135885441 402125630 957498274 712838292 770919265 237281255 396195016 739225505 800345155 717079707 886687222 766026878 891130391 54377440 749449108 274294331 968007482 511627102 515113624 593837626 608032011 309875243 643668616 702343625 834280748 783386218 846826232 329809411 400394262 982707751 987488128 513753429 897003425 47920333 862941263 195687245 275186463 149531017 362818103 256892801 573631408 94763287 891226393 686644492 895835406 489981016 741131341 837628646 894796316 752625214 965587520 430973943 721213778 28900598 415044937 580458255 857573774 636456394 802293344 406439321 578130036 655419417 877991719 867542436 915014996 321161965 410253386 69132381 141163785 885662358 960718364 986393669 994681614 639814218 710573523 397663477 429402872 895521962 918343130 68174197 974872414 290240368 974726107 72239429 772184297 526813023 697918549 219446295 428362456 107819508 445423228 632562650 987559426 665278829 837351129 403572557 877951546 344563343 426366122 168443999 928882276 242188900 605445947 41401333 261521405 351774590 486388274 297320676 455040823 286031133 502954105 890591495 951529414 712691728 959215052 863467974 882950292 479816511 769346783 619503184 947678909 515890170 523721134 544453689 734962017 849751833 896323751 10153956 149294988 105217975 728236205 532502821 847650687 883648448 934133004 442311418 923716664 628957869 775052208 569903354 933710513 619948742 658929507 640623999 820053724 606707264 939065507 908022453 915005734 395730356 499345200 422081323 738881378 472225105 476320216 166630780 376792348 938099270 978637768 51737981 423839671 84668425 852666275 911146080 914060415 790945815 801861062 124164146 534093748 397603906 945461297 930500768 967611848 407696577 718288702 491561588 977554546 176185427 642466409 580233598 814818861 880238746 917425027 288106126 758339034 509390124 948999888 864886274 979311886 339956593 550831119 580771756 739104112 116328473 444605690 267219240 940754788 679278402 701904129 126348854 457374137 534539259 565584852 401305786 449511740 812990656 864063855 494366299 782332742 118680053 829247166 447881366 617678090 152034728 763800570 306519111 366260700 735209483 758175009 982707989 998301878 483524462 895217856 395486777 833473801 495379316 640339994 227828806 741777003 837769656 847335511 171603798 824790977 880886897 975117574 88040718 489957523 495671481 818755640 85471775 554409535 75838408 477478003 579911518 874332825 168789860 193577049 213576084 844453102 906896491 988695385 825775364 900989928 197090091 750155392 870764641 958393170 507776066 711742748 673620325 746720537 739219166 843085123 624424419 959469279 353093579 403156377 908505814 978316758 868823029 976108034 676514513 741149528 908641753 944947867 979202915 982060762 107100490 268249210 985842499 985857136 84777290 964718465 458415664 881520805 867243902 952213590 919066996 952846088 556286535 854240090 976996505 994361548 186902147 989033291 837748133 840960759 264346660 754592851 376421233 385904433 778606775 973250026 616781014 926880487 225494141 420632259 325828828 657076797 934671987 936143112 76354475 105608371 460341299 751158036 184760055 423088030 476902059 739067442 853868742 860095963 982213807 987306462 791027429 970893994 583969284 880023889 728312976 995399776 270219772 366106987 541632969 974763195 704736099 950582144 837762610 913718999 179428990 782964937 364257217 614046600 854014397 964089286 232491233 621843900 643041091 814887598 190465016 813942125 332728496 880342402 281886822 750833327 542250311 577352496 338009514 438176546 496791686 730245418 340890717 660735003 8116274 101404805 876927667 903715053 362884707 918562029 184062424 193291050 759858476 852206553 399392934 603408753 487181593 758121693 390688664 468981339 235553356 369296525 654915436 876073229 313767552 900258001 747916087 777814865 713727316 840607715 530191674 777638815 299264096 944958947 726148702 930308857 719322642 910166425 428801608 888961526 510545310 826755287 697033069 989908740 35660572 456485540 252618124 910178149 411506823 518286620 953772926 972214233 5315426 114651980 386011054 684281227 691984018 943522024 583362440 966628177 654883036 715652919 437729214 507464818 731751145 904389747 847659645 902789555 88089713 167163713 219347250 431744889 993979628 998557227 273039395 868752035 494479093 522987192 393810475 716597613 15649370 661710571 654836108 992730794 500098984 563550462 867763454 944549706 975276183 994004467 195038760 556294544 551609668 594710035 368733673 507443803 909961728 915861039 743060134 832319607 90265193 831890252 377721 162234076 822138912 990522313 502937472 739588739 165982081 848087127 441252492 476669467 791028233 808815776 188495296 576857185 66890968 203697074 148003671 643408344 131212579 501107590 403785224 838066399 331309841 882692245 135119704 691890253 202421260 496362016 150028553 954026027 26304480 915660667 432928247 669246566 321023833 928092545 517511684 679686671 729933383 900036458 982072096 995517780 166970162 445202677 380806134 468035884 16814857 767105841 901537270 941072537 543695738 958399619 464422261 519406337 642875688 902844793 900066614 915743098 277474031 878452578 401139170 992288195 238835712 339098303 273838309 453155475 317840337 347619264 307471814 745770592 865467639 986256744 138541730 704497966 538278116 825863184 360394735 613525880 847510579 930373983 951386940 990506039 881003404 888930936 526402798 925819359 157870186 462482079 68559191 338044763 13267195 274400916 577313170 872477883 273250342 571946243 48270950 466544930 145031109 524230992 6458938 621917247 203888 817828798 541826730 812139913 14014265 115749995 34867537 555942644 94124257 427572853 534908452 818663016 863226008 907208230 201073126 680551593 516427522 630456777 915481210 948859868 753931662 903496120 979903590 995672810 225903766 506143146 797458098 973792523 761095571 869176962 962600126 994823779 479632001 873502998 203468124 958725960 688240954 775421292 90331375 287775131 881533763 883154698 210542203 761382693 39032660 526505752 43051495 668025707 880358530 920885101 56659925 442861378 355920725 630627463 159481843 471832801 920972922 943235594 524656022 760145119 778598876 858820249 112289737 895141235 462593401 760031349 699849071 983014796 920490891 967296550 859393728 908146543 788212089 928048872 520657073 680461459 640568033 942817107 234843013 326569964 935951983 947333906 375574277 511874005 280725849 605804858 35963918 821692847 471349411 801222593 916329844 920424197 75450986 925312005 336123347 352084907 782295222 932305287 356959902 880241431 90068861 547018684 789412115 908881781 840140431 963114665 55810424 382191803 294684111 358144800 234244320 729485951 740226965 969784382 524829142 646218728 101012850 537262284 507304480 791337519 205709606 844532486 257263292 745619865 688809212 951571811 880578545 920505126 102031333 181882775 973214090 988558266 465677358 862096482 482286981 855521677 571060396 637496185 840503017 945052170 12516696 73120425 123127372 870574678 649330249 795896135 117376299 980463161 110252274 827660034 695354976 696176555 687649679 914013775 887545908 965832647 699619868 807030103 333553929 683847568 191459925 884683396 868942786 933899948 792305235 933903075 266587001 964068243 297620660 449998369 19618099 967585577 656961503 672528836 765581797 975095181 743836842 804509551 412317677 522686295 820114960 847508379 771155344 777576977 726164081 736993417 979573113 992212931 356445187 687141448 231824203 763952948 776229127 990993973 959639812 993815888 852502295 974283813 510895533 652700028 479826713 789231290 97062394 318213204 892037336 927197360 882954555 895637929 824034151 964813344 983089035 986032888 589687499 835143009 457120553 663864235 690768969 768115211 892183259 946773736 80292829 384408712 942987102 968118001 296520889 414419701 134959536 312203843 904939807 967912941 940287014 981922645 668451086 888676087 707568453 732766368 198723944 791191651 449354764 721840858 717799195 819820580 207806626 407771724 951676815 967452557 792480877 928057600 932943372 947132257 804885620 896320761 800667042 928150623 526306413 857221856 45840137 651762372 514976127 928516203 918527873 943812549 111590331 727975051 886140211 899591354 963969119 991576323 550589204 952246332 239676944 640381807 754023829 829310692 429429824 570687809 281386137 713621960 609125625 741882191 161101700 747186245 388231113 787352317 431828636 601971569 235771187 806689160 920963205 942729611 674678872 822021098 939689242 957134009 869589841 888982813 398836640 803963387 189030767 883102553 839519556 844951756 780526779 966997794 880917163 891032416 76762404 866918628 397344218 507742710 417773163 640561919 773933034 812637285 528376659 696590738 181675433 614505565 919276469 925674708 545039686 970373482 36049662 165700221 410161790 632498958 313456356 990667357 303328012 881163463 129595285 333657949 239561972 453573528 208162817 271383601 405289835 564177913 877699354 987118555 666380454 874374378 490474645 574575129 980528862 992794279 138274353 267314879 544692210 944498772 354182572 399906525 522061822 854240375 252207278 587383503 84238829 416961789 447824460 661265850 494623912 754238134 546698098 785649273 588890878 758930339 252144148 981813987 52714987 643890903 393712211 785264712 898876476 915125494 153837802 774799236 482651664 941248937 553938241 896060768 481825654 991988366 470610245 850975729 133781997 809579629 762348736 829676106 477877957 968350027 87509274 664047726 390609641 437147592 887056260 914717316 77319343 817569018 757519206 965070201 96717526 666848734 587681258 833838072 302027374 652802959 117548493 902347163 193353858 551071567 557580262 727466793 962549245 982752868 577442373 876074813 985468048 985508207 324031905 846755904 828020158 966984554 306180146 783484696 707931183 905390341 217846681 763832889 395938556 421528945 174924711 806266947 144781658 931226953 259181964 787072875 168180804 777975333 270580913 435573690 864344412 886780099 606305306 880089469 10108137 908094425 405734583 841699078 862341078 919892798 30902670 871308500 708087598 890985753 176602684 971729925 372698996 747118960 600223836 881374756 532483732 686046804 501495763 693442575 553401888 998838864 127140855 237750422 749518016 832331621 882123445 888042052 905339118 975793396 151724403 411300815 87976442 379134177 915482665 940987336 277510962 622433602 931330592 990927356 58197245 986582222 396523673 876243784 303352347 817196578 661371173 717721952 913353729 952972590 321182083 418692738 382718584 683796063 359982517 563347423 353930547 939187931 11996903 99143591 721735402 753332867 87977463 825368972 169295947 453365165 756613108 997684033 95422039 590416015 289502043 965028139 301073036 560035357 144518097 551035719 598609701 966883688 549765408 930787350 201032737 427471950 993221600 994872958 387775555 516161966 553750444 875619994 598300792 930888958 615411748 887918666 294754396 803999355 684234838 696437412 85398892 121360148 280669395 435561836 657332905 689712479 491955932 791636986 948703945 965539485 866406817 889784442 458037248 859364689 151766355 554249674 462477414 591044926 193157557 639773896 651785462 719031745 677250352 878218959 512846509 973248562 458810526 963571128 400833243 972634460 723605158 982205146 188118032 231939972 115227426 957695417 620525505 870747580 527703934 622713928 509410629 586249570 539900656 751325629 826015526 965646003 528695491 792135970 285552878 870198941 627533044 991645679 753941426 920425980 574197421 740806169 524382914 627010267 639380060 665022596 517370547 856920816 410773689 868427846 290314424 734280961 476680668 702410518 680717358 918479250 786647102 914961749 94624857 252249494 679042020 968435018 340688949 575555388 60685269 271976252 739258158 827167175 272844912 704364714 307039715 497994797 614564722 621287588 85296368 333078128 256921995 967070864 777265644 935119729 587974492 819925405 997292276 999181977 350062006 859929862 779517440 900554958 429433584 916576686 313743314 851041950 455102066 963303211 107839704 968291091 906784257 964845894 561258669 813249675 880595021 898269626 978249929 996015336 603119902 977623709 882560017 990858508 297652500 972438109 893832489 964672377 527610962 616311017 109193063 730109405 14090538 600828504 791734006 817571889 918877863 938020656 576991561 729363068 907230203 968291846 163958766 579254478 923510452 931196441 836720615 942393584 915233417 999085581 404632543 750732605 66446258 489637553 16945049 964637217 935622424 966221461 699472600 742173911 597520426 771041084 53402935 239962476 321354812 754906474 589144886 935538459 845065735 958589662 931001206 945163958 689668445 693836782 165734993 185688417 46868920 604968317 170182810 804943409 327938811 568008505 496655495 775050709 462722124 466922711 3044068 866311502 1109827 126903532 284026070 503827007 534444663 991676338 736871322 922354670 290998485 868641159 521930513 842656509 436570246 466511306 504587256 828489739 138853466 208983907 847389202 862909542 563448628 647447039 905318507 999178974 929865826 980105543 751052192 905780647 875471171 887865630 891718781 909128796 717709068 939316501 609446424 761661479 149653652 161449046 397974514 787794102 965026682 971766368 783617085 971386337 851112027 969453718 544978934 925379174 361493887 491377189 811208459 907046580 953285824 988188694 847507672 889717740 168646257 784121207 911237848 974431267 983586208 999236966 133001693 796932764 674146003 840019988 404163931 591763812 144174387 432670826 621370744 640470729 425055900 980639540 289354969 945125939 350687339 895502752 196053918 221674245 809864418 952472128 981591386 998504477 369232140 555996330 305573792 837924722 293828050 439926144 580164428 594079347 45592586 291333873 952952163 976611582 226608748 752999415 249391397 796322363 472208902 598774820 580409763 855460519 282266850 496234284 130389183 302250141 537742160 707241003 87667520 798291789 603323026 650851773 47031827 111198644 694711129 819745104 54613042 214697895 888070011 993682695 538940093 737876998 594483302 609029070 227921259 709702838 519539331 783171782 432892506 512134062 340602684 896144516 430874972 903251093 834103127 898524358 367000215 711879087 24403017 166510967 545975631 707677246 994362167 996432552 133758929 796829028 858034428 915978955 639980813 947956674 39091130 679349906 89594458 357145769 818996910 915938075 477356905 823754954 368381869 462686056 189560412 809445420 330418805 831764754 997121544 997700845 239902065 273249130 990862579 999034613 396633243 570825672 671544526 837824619 352028250 478855036 637607702 902850854 555860517 836748928 94836195 465964922 882407354 911193842 672337300 861572802 898136221 912358077 276217563 529330143 516827683 717038615 324918764 573715317 330751122 721904210 987313838 990985782 497006531 734250111 161337224 373326126 158439745 315458149 378887213 391312386 885243911 927952555 24379711 658346871 958081118 962629107 327697434 975755430 423482461 445013339 650054746 659719791 45092153 146859126 466693524 735365434 363794077 665330319 117956523 129552682 888263781 940941019 480893996 674424753 723946938 813562374 949598769 996707854 849095704 915387728 753122983 994081414 948502614 971048610 489499893 707764682 256008247 293568779 329607767 876720860 841973243 846706715 699558678 997247458 168786202 645427749 673963729 870318139 585954401 787200667 295765243 929005356 406300133 566107290 979051051 992206693 939035 615093819 489770368 854069461 832686951 999728757 926381106 957774820 169417449 244579735 394356435 841047104 266624113 628276071 557203579 618143373 886613238 940911146 261223217 649434631 544679140 867226632 145640763 604150370 939401998 975455741 518003929 817351736 551892181 818006861 217685091 846788480 304447491 858194526 799558723 974244076 909631234 935878094 449193666 610824656 18975010 547770439 721134947 877044424 660012012 684652359 810939327 911667697 188801371 327704535 326543734 896802466 671069564 761367022 312265942 721172711 715890821 995825762 692035161 845890569 907800663 953184531 827136174 968758908 785154472 809776908 241591475 776204265 826926801 898750850 949790519 976823424 84138228 272430275 654524859 744938507 19226331 358602594 513577375 792107238 440097476 988563592 341668729 888474449 715105421 924365552 839891837 901875939 950145975 970367318 979155357 984075421 714253375 826762683 555318093 724182930 319745925 587426550 816032515 956832275 386248687 647378957 655663316 998044231 586540901 601133374 913905627 991073145 634392990 728747833 203836434 584270907 362045778 610857132 210074846 917474472 488240061 959877407 587603893 980122932 366319164 733630037 566086277 767503861 557307201 944562520 631078804 700923229 455756412 483840403 560973930 992988036 849993326 968846288 370515660 457118243 342727210 606946605 840454183 891697289 560364167 882300076 848904502 859395385 718368021 845150080 752307341 977800321 594180317 770310341 271583781 912533122 186209706 563629794 928547193 977599986 530108850 660849945 811716805 956915947 155334066 858000585 334273183 510582426 416624238 460091839 141528304 252986363 347221079 752947953 192850891 963395256 121153841 961293694 969286694 980561007 805182873 907508273 984497095 998414052 945728681 989795113 212490740 561965640 555375882 889210374 260775673 297983446 923186857 948578894 796806132 880155905 276656100 989098187 631202652 877375034 732384285 962630758 552957344 749491551 899299065 920995929 413983356 758463938 39493302 311436609 926267134 984987814 136847257 970647755 552654723 725371714 68388599 791089158 685822191 981070663 781043120 835292433 281264090 840535564 722058590 909804539 626791263 967829402 578436738 805126577 525834932 755617122 585674839 948154738 124787963 161418173 299594869 737129032 320967734 722277536 314646919 996581768 561579029 816497967 905827367 980060194 129089814 778593945 338493817 992606706 417590270 804048605 929427645 933049038 940393492 948216248 567849886 998116296 532001635 669378730 430711699 452808900 887415442 920501825 916947444 982896163 427002223 650347180 359370403 932227749 502740231 977489587 8297313 785181999 529673449 736151547 301457049 350144574 801265144 923917888 865710948 903586058 927805197 936524732 633160548 719635166 849199593 890153205 477138155 492751221 788066233 861291489 649401654 887368328 463891028 915560866 588871137 893679182 100719853 378304299 417485128 868449271 460660938 848593765 781911493 876420453 889176753 900854132 71491844 730669633 427367551 570788629 298317550 591956520 221020351 598588565 283384588 781654360 59866651 880026219 426588717 990897997 181590477 723151357 988452670 999843748 572449333 789345330 327248593 372795431 552982401 631116156 482360160 854962840 749144335 899060647 330581112 431869583 972096463 991406379 716002403 717856872 61840933 298190540 219884374 246586840 504280941 812628591 50333980 911224735 79503927 975952932 570012807 676366761 22916057 670509481 472096496 764008132 473685463 887505461 46482261 153307629 889419214 971034964 319684140 966890481 415864250 702368544 860523019 950953864 206837156 665788743 531999848 917958400 412234067 769421031 767369692 946257881 855345052 996355406 140930704 468433900 834007090 894694528 590415286 616166963 721292306 976430838 244900639 691069452 281005661 922035563 924163241 993146996 4343587 77045412 23375069 647172190 225251071 308757433 703918464 892103547 762166779 943761896 517679411 705419068 563559439 986784080 71857017 775887776 382006433 868791771 845792097 848522940 575892363 632039596 634292458 888729568 319754612 841622013 586373740 795800694 641163461 940001853 305984325 676847909 575905610 685957982 556257115 868326787 988730129 992471404 889586577 969535805 706503380 788211286 176217446 346297680 278771466 654571349 280359943 975584610 401037345 851168046 7511779 210557833 616901197 947748012 844285072 964028155 176969408 788483240 608380975 846042118 190495270 625518562 483080879 825524913 520802886 656456912 630938931 887041182 77716837 227870363 958549014 965237444 237412552 903159469 86844506 474136835 553438663 637934627 376411483 585853352 634473004 809992908 975421253 997620905 102089079 666322687 839021972 962424389 619477175 634585407 455475226 884367656 497502593 673798398 962634888 985995959 350302418 783630972 477763785 543218176 558685008 724258031 641355056 783134349 765633598 780194750 250406241 581619615 275380419 954229383 594747107 682913506 526180893 772780146 697772766 750424272 829881157 885856888 542306212 848039124 728933398 834106649 163034684 387557846 888110479 951580891 429444588 437485817 469243820 517942670 389131479 442200250 506377580 988813248 14246048 249339017 851651453 852091149 939468375 955125011 227127975 314684832 488434993 875084093 950254316 998467571 621868111 853073382 517700274 575629135 711293980 721187536 524568985 648394032 815659318 900337012 987259461 989560718 37471250 322938568 697192763 954681272 3663774 819333566 209258884 560887241 877858318 995678814 941983503 972812904 151236884 601712039 321490160 523678584 937982271 986295576 204200566 276998111 900426138 900946376 939593650 957969914 332944826 725160174 257548709 465043899 818598709 890697750 567226698 885301940 26854231 43048612 245886303 258633371 868981212 892470509 254819878 918047319 125419559 997163659 887233757 948008031 449100255 733592654 86888862 295558026 781436832 977407194 62851104 838693699 901459058 937963579 605962630 945606792 318034237 581742324 766083421 944695709 696494085 973701032 320121752 958606306 253723691 700091550 648265417 868672893 410969493 946119078 11043988 607156355 807289119 991089306 992787572 994641224 742829111 840435659 775580553 928655473 379589849 523183520 417901669 859938080 756581313 886705970 931254373 990671897 579388503 972264866 124503940 461029430 235352695 743921031 319862340 727890581 962337025 977977321 867235770 950947622 582253949 942086752 427460010 458183082 120651121 530355483 343809612 759788425 650544319 905610868 99497189 542610247 355173884 720634761 253452719 746733481 499573612 970994899 83042409 880725900 18412406 403231069 302435246 992447429 722542195 828457265 606416968 978956899 300924569 564050131 101707828 598468166 760467300 834234274 512068756 896908497 437943494 795048889 416078726 612181991 238902672 405847921 800698538 822895138 342330259 957880606 136899121 594266680 690973202 940521000 21182314 117151529 529744826 730924956 134811612 662258732 47028247 705567477 238869570 846540716 403217666 824121078 72372652 370103856 605223047 688386569 414827393 445860778 565585545 578790739 143605227 343975115 422392108 906503791 716325167 798412085 751213227 812628259 733303718 981801620 452470513 682745288 456423964 783864384 31198262 310371255 867073829 991540315 777116234 951221496 820420769 947743534 228286311 316620019 340865216 854073080 115177432 377055402 858552218 985992717 539381579 564109751 980633831 991456918 881789849 901528239 927256588 991195985 380452895 538926982 963867093 986417011 121958361 839472668 174211672 538638534 960898367 965093367 902171947 977813500 820361843 986447582 158591424 495364023 683368973 869152282 682083594 885219921 105226571 884919862 371070702 428996951 392854633 435649704 837727689 979456707 377619246 883083968 446024332 779794256 789820241 849301192 608845344 649957578 577672288 790765914 813616369 874562290 993169929 998702786 90101489 537621236 994001181 995098711 265569119 448289514 808372898 834938382 556978357 773208374 20604439 987453489 459056692 465439800 19075292 314184482 330187878 377317526 686158672 900071894 875991050 958341604 732647282 792879079 579061090 866972059 352008979 647791971 251084878 798378110 320762903 679932501 540579465 861677636 918379300 958278872 742058840 828082549 608590800 971349450 550179484 939672836 938444178 947115341 454262579 663139233 63902222 286703612 938634875 955463404 341773243 675312025 426508000 504642135 830877292 897691566 703873962 748717896 253573858 298531033 397217274 755594834 565151519 948643929 706242802 848673966 509140567 941929705 570853483 677593172 364280363 859347142 667852522 934795236 373423981 883736753 559998475 565690286 558594133 672179664 749035604 772499865 533097228 714653551 406126634 881276248 757666845 791090845 789822739 802853604 266558211 777153024 509519607 610066741 368756008 665689512 678961087 995671991 182246731 575381757 191141396 255809674 63720562 894884956 596220175 792087840 301745955 756074973 144734782 281277290 415219424 742632861 124123662 174347042 449952400 593077113 120861620 851190445 612288436 708738746 143476714 192113409 965951832 991283798 154645668 240470475 44326718 773361195 686317251 963554394 509686170 931129156 813441453 944914420 187284611 881456453 397014767 749161090 222398170 625868962 329345939 585620705 47451519 606487463 307599398 667396906 972628061 979251151 655820710 719941140 913334996 939380625 313984780 672198041 193862406 366925588 531366067 610198501 573205982 693569808 531624212 836694492 906765882 967265373 166874152 862916628 711374586 866506961 994813764 997928121 161567109 945724188 520642021 595052467 220125196 558759364 611398264 928562443 172592078 259812316 857619143 936462547 424009513 838163536 193975332 757699879 844411666 959370505 194097512 748615419 502881619 657717578 717790663 807611005 403401015 452280542 182005770 832286329 567444435 626917119 309110307 471782913 174187990 734020884 24905828 888587748 151864114 987723894 316606070 681603678 751273810 854427868 476556715 631274267 157295693 998316088 812003651 870986727 710036955 711759207 725441029 822833383 365778355 561018837 424431933 736898869 602445157 610769347 541034925 809120478 909646315 979498575 363185844 581938486 696059435 990300934 111783422 296831789 997343022 998074504 403784375 676997087 758317764 808264766 192477286 498129050 226773344 978036894 639334759 971468964 844020469 890663616 166361188 212758442 172084748 220971926 615447387 844046096 325137393 746143622 236741548 974562511 166948067 743568601 834181085 950235737 778947726 837195650 252776313 842330904 142935345 333704046 144758466 611803471 287744866 975159331 556212344 915698743 526597159 907311582 170249583 927535786 756342838 831776090 346794355 485921264 885819087 935723110 413560216 972352279 344531603 761351718 994222668 999122151 566608695 817636888 253238783 480475555 495013020 620240531 286127948 434584002 558170137 709961190 374539883 900845818 968799521 977186841 853664049 876923166 596583218 902699545 834016343 909982957 959946616 992254106 888055478 951181763 800023558 827622149 814846933 911741102 530456051 736391874 244806549 507704574 612368899 939084305 696154090 842487885 857058265 877280429 657782881 679736169 458551531 799912731 57883580 377896468 631221643 755964863 985457212 990880161 906548340 966826225 47997157 822162324 280191560 771233336 621064808 674632730 73523468 154753281 11476494 287707920 39602242 875908296 159090279 342492940 783366770 849320132 737342022 940220328 359629839 821051085 432245559 830520926 568852061 688760934 816165488 904143641 561202489 842338462 471779550 960890655 319572469 469241294 662788153 840825863 981278744 990742027 211929600 761211579 581819736 636741133 855881310 869877984 3010068 426331918 107817718 532037846 78078822 963600340 967360900 985495450 715573450 753583405 763481308 931247634 257933975 849143883 750965642 970036656 532154182 710432877 251180243 621079425 559492706 924353726 465710236 534015613 364936097 719353012 783369479 849033580 237539118 663985036 638635154 715126155 786855674 919626619 978173137 980306140 820234586 977413142 404159419 982942160 538099311 791132316 1558648 914819735 698924685 768951687 75431948 424589453 601231490 933294763 78823582 865014721 959654091 963265147 524512245 955882677 901048671 913093282 590650811 907324939 374614621 936277099 621962860 787726729 440361147 887643433 680185461 991006130 918803861 963234545 920444245 931011622 682010537 724479469 992128119 997700286 998997310 999041906 483146373 936902453 561796794 992016549 244929550 952876351 151698394 795005570 647081450 813706547 420799237 737848626 497259103 689200408 203232389 451392098 275611144 339245560 939568666 994823102 65116097 342272257 732271635 940017015 241012641 264703598 554726631 854658863 938134866 963307713 776450337 955695669 314089606 853186544 455083041 786458445 346574280 974962655 524575640 919881942 953203382 984157956 21491899 611301869 748363655 955334482 787627496 881621907 570836967 626985748 803987381 945481311 572416394 804455277 913610409 947439251 379161981 417965194 61613215 424467899 104630275 951331868 446983267 819849556 221890172 304316157 698821356 827590948 526562562 604023546 916159642 961277282 728231396 751683302 758967762 766457950 752023365 969209351 386779238 652192257 773204156 961129469 555991748 726078452 864533370 986449109 665699939 978893847 765532491 884278668 205050899 230164637 833025335 915338639 6485664 174289834 449726469 793626315 524366631 698868508 880581912 947709280 290153600 860838031 799524751 964341597 71465408 349990896 941090262 997894559 227863625 312944628 689888424 871035230 794939456 822730252 357371957 647123823 978934348 984463325 396347210 622616541 366722519 411041247 729810772 990238916 190020715 864011273 88884722 779818263 604706703 690993606 770783593 894982309 405448846 913279160 576648339 908911114 946138980 991959745 136744132 594167181 557950014 726557919 242786445 461347575 103667994 730982816 375620782 500037313 145420428 520719444 880783227 921958018 744295647 758568917 915237284 989432603 159541051 822686067 339085205 387106608 700588118 813081001 729074242 983696924 490563983 740186778 950104012 983105141 881173742 892111503 639375522 718709578 316494246 366507502 840328090 956846186 837055422 880403827 902502686 951200927 652504034 974462422 351719549 639826887 291655988 327692170 745585944 803979214 350992510 432623249 540742753 885266322 384814920 801816696 225858619 263713357 516954670 996251688 790113661 807047813 893619102 985310964 613059008 813862708 726781793 759168299 496380203 723375704 58030576 364910160 755261095 818690327 815275660 823295207 639232761 816281728 481033263 866670102 829261177 970715228 295790121 785382797 124439216 995060267 154069213 729751220 755455119 872693299 40803333 810970736 194238411 540376646 497561831 954379772 629260631 776192525 508342416 704609039 859515991 932075583 932253967 981230018 128949167 652865903 904355418 967710317 283314852 461239950 15347238 558974041 564626431 635648805 199443755 372588271 716505042 949052420 645903132 715959407 82468917 809034269 570161304 941939033 698364267 734585862 862435371 999577383 300416832 867254822 633933228 941352388 426225881 913071948 450424874 511823565 91839477 211264096 28531792 279037148 455882266 489278920 863101346 950054194 209695848 875207283 873863799 925106313 626571511 940171619 91795510 698638518 102226006 376473672 125679240 654208622 459455426 717231097 881831645 902748555 615431642 735901650 164716073 316910587 164946572 873158662 605216127 999091452 953579496 959966164 45037057 778587212 27236029 316544909 561874214 629151172 346369211 433345740 457526056 507100938 787421341 995431753 261649378 648894519 79020671 614282591 580171359 608218018 200536710 359521454 536736295 666718347 591895955 651609759 375917456 697006906 952210249 974614068 22810192 244329461 779729197 975794101 892651676 914087711 163594148 474698969 303782094 859449075 320217516 475917357 180456651 744259753 226029362 902059359 705137068 891870237 55105250 741676792 365776230 971950980 15342437 728493215 858973924 927909278 377038332 822842602 908102638 949151746 398838552 630249426 771233115 794055297 177099656 763454146 56951812 205603602 487584867 683428198 378900153 623448159 957566265 997312359 342363911 484577818 900961212 932706949 753328713 915431253 309993893 327250576 132907919 158630586 79715070 491791509 723950428 815840384 302450051 921245924 303332823 513562212 328499796 371504718 657537245 961247464 10196048 468807369 95317145 298571045 114776703 972782480 508356283 530682020 284067941 841939484 374966641 944541736 895521366 983089470 232307039 684240428 866537795 992764241 804748247 889746849 690216309 715907488 457756341 890895835 758993166 901655505 386715190 997064247 245544241 922117876 435948640 622473778 962108857 993259638 991128400 991340923 698365460 870364336 422974406 989838906 637980863 714801846 6516093 229421068 300137113 477628481 831159931 982906164 380145012 881697767 473619147 669387905 478188027 913016242 753585003 910794025 708971763 784464048 973943629 988274353 702103077 791290906 325281084 531875952 548409274 723015686 676070870 951082554 697734649 967188003 459569219 541748501 966140259 983475445 775132910 826753104 666717008 924931540 413830361 892233826 797289328 956913164 662507504 724890525 236852517 699242855 542352794 796290849 190088230 261011304 950535395 957264285 113293365 364034885 684803296 871783480 78334701 212993806 737866205 819322242 236414303 478304973 594527816 799873354 598169229 771154834 602539369 984293216 405957078 926251608 122474313 697734242 193348388 562162320 562416497 650124867 891604863 895926370 992141742 999284220 981243674 986979664 972337245 986541730 943519822 957408915 812947753 819794855 304196633 886505857 719082952 802174424 931970074 982771071 764485319 844812907 31630566 453544554 684477689 794137485 413042930 635828548 597609841 750519483 548570900 965083815 467549061 701369027 486702202 952881784 337167902 444102364 617354384 977667499 24320474 245923022 718354838 878904732 81672145 945061277 352888823 592999472 712455554 989110505 620342424 639412311 404485027 762803964 381756503 505972314 1956053 977568543 30392037 820285198 268231666 647199094 514265596 721573427 312527736 673450788 497862712 985923331 947651461 980807480 741072752 971336215 553783385 924104287 722081124 758218531 984348080 988950501 170357241 736945184 237180479 943586683 304988910 469294703 654871059 681681549 351782069 737933820 153952413 396866126 322008583 345740833 855997478 884129802 851775237 954609590 33847024 881828274 218719599 718936256 888221680 954715678 517671074 765373688 973325674 978261577 200258431 910372543 442957444 945884949 314252647 618025228 741856419 912404789 266776082 352343338 787321178 939082062 840377745 944158097 576003543 689823687 619969188 946696381 968336282 984328468 901405688 928740810 343153794 657908326 739746708 881000111 68102163 128014305 934680271 938935872 494717661 906440197 574508270 951882085 943471153 998989588 50471190 805029310 385482107 841857922 792923147 916641564 763019381 782683779 1624679 407073505 489271632 511004270 145156278 489821265 297242433 699643239 835127591 914876329 783853388 785834538 797701204 946807552 827327529 974750406 332661012 492909334 828211704 927566624 693286494 747468317 199805936 530370545 742850566 870124543 637959972 858986703 902679748 970844514 315193579 751297765 695996947 945674452 683955376 904345196 52290606 467546647 325523928 535979763 589460749 713848498 921398036 957134628 513240516 648405754 216314414 725721067 521457537 642427946 430981637 808959672 206350154 614157411 420595026 883923909 701632215 841317012 161051460 953831635 359292222 907306316 432028495 759819250 17799452 591142985 709683884 930719889 162315889 193720181 401203164 410975219 714194859 944873846 490271616 819214635 72175384 360967723 244513791 781573207 158812571 608720317 729484142 998368581 897427307 906183480 79691455 375069525 823795575 868438807 942739877 943574614 725770681 882669234 438290339 632262195 371073722 418986471 355071249 805367607 874561749 912952174 773117295 897646141 447328071 476368907 896096483 964172361 890078685 964226596 485505180 954768592 819177861 966951120 574593448 712045026 516113602 796343143 143099549 571001675 621666249 752955089 209169042 852966359 781214487 807875787 876479967 916150242 26374044 87975908 977592690 983069064 347654508 377286963 618550846 857738234 5681214 362476351 897143851 945420834 572912731 622294639 24913103 827777353 781404087 874669995 774143035 992218732 756843271 778468405 273388845 976813591 601877014 918461001 342199188 827090788 680226476 939056380 915611684 932985126 778503675 866413865 57331663 89189679 124527339 915535270 901210193 914237416 41500446 77445917 433255138 870425407 555719619 848517912 706303013 894643533 793719130 864140229 412332275 617033649 280968583 732168412 335284360 698320691 601583506 854652462 698387011 736070242 350002295 357458964 505134556 825470746 992912948 997168282 349095975 987936040 494924936 973405692 651739069 835537043 798278601 915625190 244967960 481158611 984191545 994723335 152396762 566836053 355523492 852649745 658668189 851361096 681180752 984056646 448539135 953065617 721767761 778444997 301541155 490969686 86024765 294911169 614861850 881337779 764550318 904532151 748315849 966582717 263333402 678175501 463774279 990068109 777401767 882851012 188245795 614846598 896778601 972715405 587470604 689402749 413502762 597735073 107272753 998172088 66605300 624032951 267372366 907166302 552479976 663463330 927557649 937308447 327428640 934888513 260086850 851486120 394048682 882810619 839628903 898693795 446687773 937583524 768788609 806490836 685596612 974084370 911757271 967539788 43158808 878701851 559994244 853474077 68523114 304319926 908814233 941673301 197733052 928148275 683145797 842658909 94037974 154534671 643132035 957764706 984305104 993546704 39531147 552224767 758869356 995161255 612419600 765819531 861535390 992559782 569782464 627593325 762700722 934117467 447224254 784764510 719709233 988413689 774097546 887261359 664892713 760694324 13959710 916590275 152828690 993806394 670048085 771785110 450628239 989496120 411008825 985384619 115502143 876194851 523126998 559507182 472336881 745177941 623369238 781777802 843747383 964756626 643036158 888957046 694698730 749013236 592916906 938572215 72206293 367690374 564561690 736654665 849647017 863249513 169471111 544790149 85347710 608131985 617716573 667559375 330232969 667269778 134415641 549684875 216162719 645707198 262359661 729086570 165211331 937114740 519695270 536356927 418218507 457443524 859646860 860998982 906368244 927188414 282327923 617887278 691116488 839250966 560597385 829306643 839831970 967679826 760791517 885092135 733910380 964223270 879838252 930889227 781680347 865478978 480304572 792215344 633502885 791036995 271660348 742876910 93939522 964412722 905259200 982581321 451258905 735676171 311227953 610019683 6487460 456565040 914733526 976940868 169006060 547611730 565215314 901773492 28459570 800165163 72986880 107115385 198798997 827760534 362523132 490396786 530120430 895093190 733785955 994633824 746197150 972829303 543676249 605514955 103088084 723632783 643711686 896466358 737597173 822338786 165453472 384037657 16514814 744230986 625111149 932367768 668189602 936250301 672568457 810103970 79394825 808450391 473286283 862391313 997911022 999047308 515326397 777737669 33915802 50669034 735681944 866040028 19217985 647976143 895583511 922443344 710719347 818983992 850020434 890109339 776917957 931912724 647725959 768457341 817472538 916552690 604828912 838676637 990508935 996942917 147589817 266082182 64314991 557992705 746446378 773875554 119546005 237103895 132118611 270403660 93356946 540460456 18225416 958042683 977512955 996015651 950431052 964273201 584252764 784623943 449565077 591281426 804276580 804831151 513985714 890306391 945892296 974368235 427588168 628456280 889350531 946660022 100828748 326774579 614861302 961619137 25920260 725869562 14357568 374005139 889110179 973439114 545350713 787223634 413475767 812623969 190986203 452446069 301898569 985995163 666811124 816171989 127001045 769507147 748481794 877971728 450294245 497683919 474871315 607283772 312010014 679601106 765402480 987401804 472751560 634204597 882346329 931603262 953793589 987241955 782026143 855969912 541440030 679456694 133975713 973295470 154816036 250828438 588420948 951021657 401504490 702533599 374286831 725256515 408267211 577267703 46003928 713923718 175635492 523363051 604917289 632612380 37817352 313820960 490900373 816478184 779448377 975041356 427221902 582482177 497306052 844260605 569016945 922989885 106319099 151233350 71303652 87897071 836422705 896514340 626430152 634401087 359173003 612895343 87872623 505807815 460601714 569873918 723590987 725371997 84873836 577724733 61019597 327338209 923941127 942246140 117755123 643294128 744086921 770081834 448115051 873074613 183350542 543595301 170150396 355844975 237051981 886309723 331494116 968147706 517537612 680632910 429203590 829827516 292680614 864988853 875286725 901316558 117313468 591643978 210454040 713392584 437255484 486006495 811686240 827748120 658939890 980648873 928295402 938255640 547915500 925022133 871766108 967605563 576106148 648807609 367713161 682950481 667349686 900787531 254497144 745457154 796513947 922276036 733449743 983252729 132712051 431145283 156020211 341561106 508612844 738569238 250674167 584015936 496314385 938021555 31315852 666518274 494222817 634284154 68814336 998788909 305105691 430467830 957995538 960078247 916757695 957074963 959062104 967343189 84410184 801304814 935704205 958348733 627363732 960303611 38871759 122980524 384254573 830860544 375583323 785756500 38108555 580051503 852192511 869636149 326309061 637902016 515694239 619209689 728336416 887956634 59083934 209504167 34283846 913157662 475045376 982083859 820814131 902482793 726943221 733927613 641625118 888626789 87255550 300100528 640870227 866374080 742209144 843899658 212429972 626788644 501307479 616520161 848867455 910110920 890003611 928257491 168826319 561658877 235767336 406776437 213296210 864985485 347747573 643363898 866571360 919469595 426307139 750504409 740495651 801199852 703156199 999489712 777591560 935687086 718478686 785374069 776904336 863400391 765730504 857404265 564821837 762668986 637659877 801073876 361129364 522456405 521432298 952820906 782896565 959003893 745099889 817242161 373936781 957202218 429539989 880445923 14476189 424782495 965244004 976069573 953613417 974266134 313056747 970801870 329005823 892653240 495582875 844506815 457298130 666955594 775752557 954589603 312698650 455986133 972433888 976897171 515644578 775390219 411203155 987444544 429530361 643607261 693388242 777380529 714209527 991179266 365154644 388242580 317357124 699373160 614495678 998248171 771659624 814058349 99872363 777382135 605547291 659338910 819223116 910202830 945886839 983172374 920248643 945582147 702702187 992766274 954256182 976167964 506266749 671182056 587212166 925238889 865794081 908114293 588118067 724406478 911366253 938391587 297003285 303661800 567449480 835841532 897930544 956246896 790389423 882493825 473388986 658955422 23012427 634295709 622600674 910226006 10506720 57863132 342090812 621706028 656511614 708129169 82021864 101810689 868851106 933468170 245140803 256035646 817218116 896387504 925959199 965407823 648434778 781227181 822171076 945302643 71498306 280243357 299162781 396966765 731838850 777489511 233853548 615718154 360286509 867558466 46819607 481866780 85841205 187140347 618693163 689941219 266178869 986850533 128522347 833624993 802100572 858664831 711229173 725441754 470327271 973518416 686671470 716558613 855667463 986238768 867748044 960528927 220889557 768221965 49974374 670337704 615605896 698755964 450160884 948278006 101493717 395787627 771957039 953770661 74767819 571504497 61033337 192543926 858997055 948985274 41126848 636324818 194015141 196047615 997953109 999035368 511997434 945132368 68410074 917590541 104014531 315586346 464339589 726971428 475371307 589862649 915737025 982141613 954928675 960483953 91317200 790743991 462736541 712217120 774397457 966857275 45468388 94645362 219843400 799390899 537554837 982366269 940713404 970247607 938405878 964263016 124522974 868636964 193615998 894442743 521956920 721113604 148831145 767633732 625261689 656599471 152113222 760333819 145854027 240582685 912775945 989481272 24715615 899901335 222957052 670388409 692046001 897704925 438820532 651020540 988529735 989324188 119286852 755440307 40523179 579939328 867772377 930233253 915240110 965579518 274570416 782257305 2733924 155999159 86468832 549871795 924436364 978187073 252674792 420980363 536020945 799247612 168133484 825728457 616968684 745478711 219970971 338425964 803188538 922449997 954125670 981848997 85569100 97614153 594008593 615917567 786580698 916873174 440365232 769406579 395813733 800553893 407472940 502784091 594945790 609082361 514385153 587791918 10125640 562567110 841921553 988597698 208056888 408084198 759845293 873690951 728755124 772802008 557848414 934260286 745420099 777960258 862953030 875997189 569813613 821352717 464335381 698957027 406093155 921100789 588784497 917365472 274050810 889250558 731835599 989529690 156162838 645461144 998716146 999624697 790192650 807968967 655639151 790010392 99099233 915113567 592467065 849803175 815137180 920006366 851655186 923427087 252254542 430688279 77764848 959557561 134859609 371227468 759990393 828281250 613522371 781732394 301713492 857675561 801230996 854306834 94373353 422819161 545225098 940778174 583310733 657575340 290300839 336767068 878963795 931457575 354645095 478170703 326012558 548192050 515342702 909089939 924926565 954820945 770035097 892365282 917840927 968954590 511451324 774316798 55071271 185057688 141547379 768225406 913023792 946423735 92109912 529687902 450803665 943514408 7599197 133084894 207857735 664045091 552064582 839402256 364505665 401441355 594058568 893726258 495112 805084131 684846227 840650630 148271853 515470030 446688536 703145341 254212424 748444576 271925933 846324730 86265430 145369476 919716782 937181114 280257955 768443824 576940340 623153189 56546495 727418272 112719381 826062884 616489093 690750862 236636147 543265116 246884347 908943369 130586397 148400062 185442541 286502046 346424670 444260102 852355582 863705990 576511730 799752273 546784762 630381978 232609557 341628411 882457097 898237401 522855030 837987375 522920749 732318616 456670771 940282849 518473056 994487519 191848974 593733300 953136462 993010664 52863771 715495975 754277511 764782847 248668799 986434783 513681251 755197966 592649520 752686191 335461811 582214814 442249283 491892933 920750518 967205335 796846291 957481690 474414337 765647208 776635644 929398477 35987152 330122452 571534229 862169750 209420980 680729883 975933523 996733690 919250412 982160254 302650686 832075979 891676482 895990774 281228464 975450620 118853123 620027799 355236177 650155459 524889485 975796268 502198588 706587256 688229165 827475103 585907229 645067493 713537612 765509806 337810574 776844728 52857207 442796511 863426969 917894452 332479384 627452337 369079652 934402950 363576593 583351224 72494814 908489797 420418892 532886859 633052732 995828673 204108598 732880446 422176580 767709467 937142727 939873447 478064108 977363867 714023340 856150765 295141319 908012756 880281988 938371932 750429589 906460460 155258680 751062027 274043137 329572909 604411056 805525995 689278380 835807674 34713800 521021366 526707356 613683731 196885901 481856480 696119321 845435642 832074379 980478599 412113887 706580835 27900019 581635042 607060575 758790925 239371686 845588000 174762330 575390890 603790891 834005387 173788126 886546093 504816420 597152297 518701089 700036303 890904812 995067442 139261538 163833604 452516255 633379594 915325495 951733733 869809971 886195991 115560585 265303674 596161942 692525085 868357095 981298909 787206832 885210534 849622821 981709868 147469877 508220838 268472895 641298669 872405863 878950708 442890356 579040256 785565512 970333507 648194851 889939822 43123953 178032094 258096106 625994358 185228325 546633359 304508533 968200340 361290270 668535725 470063569 810186923 171789361 496811114 266561322 377044483 283806808 983474026 704840601 725607819 482191537 940162526 966791679 995819282 50935687 535787963 758466032 967121209 27419625 302924200 551449732 623862399 615040917 714955939 751371167 818844734 708491246 871599439 2522291 250797848 618037056 892211621 961326015 993935735 473148314 690302010 304698385 815200533 761484734 891148791 870021074 929606746 216047198 714214228 810520379 815716657 167631577 410451770 621564926 733218297 641449835 939046754 246838895 910015839 939741205 957131777 827759962 964881909 618368624 715120675 572242021 821224724 396908680 757300173 46589313 390222915 298084636 846272302 848171756 972114473 469253109 511742554 243282885 948665669 363742061 892695222 91112815 261951147 217473518 517609571 593512068 838184507 545368130 688632654 920214351 997470146 726429285 947246564 628102968 959670124 862439972 980649846 986869559 998686420 102174642 255292390 106634274 261155284 77512065 631880634 717414954 902302637 587480322 768586854 335047367 537868551 182975196 375183267 626482560 637220861 823697747 883234510 801047251 978236084 954449269 982925672 497127323 762911407 936497892 948986738 953727279 965656237 969193392 978387897 707493439 734529065 72649417 595141664 727538677 740239533 209220661 923919296 15489427 340982091 928766025 944874656 439080406 455515999 996207125 997126761 413656835 473827903 341415522 981130166 120451712 510126783 705901196 734089854 953811089 959980798 573175508 690264805 977337576 998933407 44141097 828492205 647058402 893765233 721015821 823454110 504291275 829284192 867371224 975186907 569226450 803268772 56080119 98165728 559213235 905098811 653415093 927383765 553439656 646432622 701783490 747714758 712888489 741172242 735967537 759729192 95516732 683208886 913959551 920100908 845388640 928822758 548787915 727457811 742426332 830314368 884767613 958456885 849505751 913759876 777698094 967562345 656920146 713398981 765536389 820129185 666868949 958035338 872623187 973611314 348787172 597420641 799149624 947691168 691125285 849979378 861122961 979068924 752188268 991422108 937949118 961504581 248214582 963043437 973529712 991358110 56452032 484169092 87488269 396247562 848644595 886594781 760130976 869341573 612949504 947917315 309698371 839553807 129651235 937153856 466966187 822839322 396805288 671635380 953318882 989060794 635212408 699651394 723372451 966374498 916767126 967450491 435759440 765039356 698565831 794764916 384571583 580799500 84664657 366835742 106415204 556760317 2257342 65336131 812715164 833202467 969506760 985003856 937676480 951706709 602290673 616591381 810847694 847387543 76805289 970232738 87480176 112483933 889203561 897284353 821307515 890636932 62378110 968710552 970639509 986284557 435125119 924413124 682673706 915687522 471864598 943041095 425463423 808965241 794795319 919816682 526100545 693406862 116170146 419021626 214172317 793823407 560738220 764247222 783472311 994892278 325767471 359512020 351596855 991560195 476785417 975109657 828880806 973955543 413549002 487308457 692744473 885636331 62098027 445965514 710152715 814864014 299997106 962092066 541830133 609606419 496067279 530680226 449113639 851068891 688544642 955053674 354162568 898176948 370994711 726154863 562937924 925403186 962826527 966170533 418563566 611235240 443282455 754728575 940933580 995211167 846777432 928046167 724343511 979426548 113652458 280566970 240132762 972755809 724594765 978360635 925235376 985632425 419949363 563488415 820670293 954923249 372230491 676835963 36502594 789502446 41564775 123831344 665325006 864531818 59969516 772340214 578136327 740323473 409514342 459157435 735522614 948632269 495059640 797752697 827901710 879292322 235474577 700525115 403262902 872079399 662271972 919679669 707452353 727461927 369883454 890393495 385618269 898011828 967567016 983719632 858400661 866823290 515241957 900009292 621559248 988737857 956382995 968825566 812029190 839484919 736104486 998450902 124283178 253737462 58931472 763971362 234568065 284423573 773171125 977439607 429219780 632227320 857619702 979742671 610832098 819480394 980688648 995660473 62659457 307146977 648453042 928673529 39908026 444719931 765555553 897229739 955130910 956400062 345434083 628752405 210672242 729669661 534681425 883073310 637262017 940979187 471353125 712064943 961342140 970283472 749999234 976779213 314240765 607808525 835984736 902028388 961505977 981798119 261354011 709003072 157115532 613527437 511355237 739598695 29173976 748374449 11996999 69056196 240464221 758550492 331197098 888731470 14621632 593045144 809116881 892494963 416061222 789323743 695975741 755031225 621076825 763663726 167257094 201029150 715487300 828011348 693451942 959385911 314652277 730386262 275948022 974529573 811374792 918983497 636364283 988329819 190370832 839439942 913666651 983402532 178633628 299767466 276328410 386693732 791486155 979050349 508648087 545989011 167096267 871443021 843897716 860768124 510976742 514230580 463018065 618137004 986222129 993495118 953322922 995253604 16456777 411616363 308873260 324591717 810976619 935393133 199457382 591863240 909771952 986281382 987972377 999919114 977386534 989550913 107990317 717822181 354772475 516777436 995951583 997374238 482353790 822985090 829026947 932410032 639038826 874933174 421018429 767959265 506299606 786063508 342399359 711381404 145539210 882758109 716606749 864514695 982579647 987882971 116004790 429800699 635502630 860414811 791166788 913069163 882181532 913832191 853057215 895440586 327124603 893073350 933030465 956487618 617159398 631839528 334644368 886444619 633002456 901939822 565537586 734043327 831468055 974502212 32500217 424635877 273788860 682789327 599823181 615792936 64495201 245726092 163789181 597302667 892126495 913909623 300938409 469891462 820174259 948838543 754021346 767189154 188357169 270053476 261215994 427904930 335281274 419585091 848048544 883186813 413913977 817853099 14235673 731906745 757041605 801246503 52353709 931344121 992804997 998925410 684265270 760670368 619784077 962670610 784670661 948945152 550510012 822872191 518719932 554545891 482346197 692132773 281957877 710414665 93653438 406890565 717418303 954555877 710456189 899972203 26662681 809478234 41536206 989247402 476485201 541909221 159431949 505720396 311937007 862950682 937697749 946578558 51469419 681330991 64959047 762582717 779391121 982221652 208351845 948814734 844261490 846650014 744730114 860317790 714834469 739295496 821545483 923587434 41242368 849314142 794987066 998083822 244934352 856118027 78098710 272154288 305007982 517712622 621817189 899483466 952023958 986125245 575233793 922439434 179225343 825826320 190433019 646445858 130042841 236249273 890261292 943081894 963920953 989213079 545482051 548486789 353170291 938189138 176234512 802644898 538016076 834173780 695319431 913830509 462876746 627137286 333629566 488826761 492954510 868850998 898015743 977901029 64336446 990315390 412341912 880042512 326936994 816336830 490107494 494828343 841530065 947334008 27695418 771335993 634159737 767151102 933292093 945475958 812212274 911742267 860227051 874511417 642267347 818176854 65513210 866966944 280340941 890587576 259858707 729398065 115436294 425621214 481261539 691379893 292376359 835442746 847602957 923241928 396935214 405163615 264654808 812449038 234608671 854230777 127073540 930894705 802061712 833493096 920299582 991453662 863044056 905444469 692811424 703513947 882467136 990035086 66400555 781763466 852192286 981747166 207217784 916989106 331056823 924618366 696522721 819899123 412159139 771177295 632797836 640738820 612796555 956267656 821509800 987712094 804517667 937790334 501119214 524221298 349715645 936021641 971550285 987086241 312177472 596427763 731589312 743450456 584809207 616731990 420888584 776596148 308517176 643295310 684972778 771797622 197921804 520289648 315426070 425563141 758831488 945380909 191509553 853651937 394536104 438080765 600633771 730541144 986256751 994033810 50485545 72295917 273223659 992960631 818619963 988438982 748355202 800411120 192254427 194452817 505791283 898654285 70151467 417298737 245894387 916344237 28946087 592592809 411678091 662380928 594933464 733565542 970617170 995372168 384419144 770378029 631936122 676828428 704903604 880116326 660521107 945585811 990095822 993572036 940837064 957908184 593482186 977597422 176963170 238356508 513654124 535846534 280649530 343186843 483132320 844489180 267315847 366809242 41803373 806212864 459282430 925525665 668620351 780903993 834503893 852719068 916253959 994969739 336627484 908211225 705320666 878395668 307267773 610883373 92938364 408019412 633763436 976044403 382592011 532487845 804053771 859258784 711410836 764703191 770078379 815915101 741674340 866350635 10452181 995709323 151849167 544199741 858206183 987355357 28358266 534270582 560094192 837384446 875027003 946683158 826279015 896781959 494082562 967438950 368877778 804448582 544809259 958682687 18851634 782524491 981788217 986684191 871598729 957432077 832904898 993207364 712046468 966989983 143521982 566419556 73316877 376782124 418163636 573394337 147253974 866182778 305637425 622567714 61423596 99240468 293173221 556201916 312631477 996293002 226579515 504537259 859217899 942091770 33315120 981905592 599558165 884658578 985793951 987478288 439613623 793019441 575406132 981949143 315574958 415833078 514570022 744695920 396267259 556920583 284075336 406179651 237599051 260182824 273359308 745101018 713173211 940039831 775901461 919423749 878102939 897119374 944575138 958058099 90649844 573008286 963542370 970521603 750502546 991723178 862909136 881854307 50495861 328074063 113959859 801317262 42312859 435947916 916544709 929204003 489654279 862893936 319929246 592499962 596523852 755110583 746237026 977117643 735262511 743714671 513030788 881597253 303717374 790538207 629480750 699104363 359069655 697640748 426810455 986666468 83690492 360133608 639250366 809374941 148793261 174523517 390188264 809204797 858186472 904000571 45027105 567881542 235601404 606440180 463554924 850100263 993677448 998749475 65480824 708348678 260831314 506416483 829806845 834024482 110506288 990914794 371190994 666926757 457130083 948568337 304504459 369021439 703670268 857394427 641443730 941286461 348999460 574817419 197496363 296303015 536670348 648454778 667793098 744122365 158206793 707774783 91094818 202580130 73009851 768292816 997203339 997915074 690202402 922769252 392927204 966494658 483450882 572718081 138630007 436437017 532891961 851950338 570301921 743621381 735541231 912665089 9924300 609976083 555580402 839545673 671206056 730652414 677977470 920792258 234271057 321728629 975142676 988292742 140491619 816987182 329570520 365796938 278102281 497604793 693179580 882593405 562124323 609612265 496903913 750887301 627622820 850161361 509952581 613262866 728367963 858445190 865424899 906792309 204325330 364559183 2602264 91253500 62838619 741982887 993204516 996223026 520340017 958715558 108809252 519633141 980275830 989164413 201225524 497153768 687441332 942370504 153287 824276215 34159928 582874650 13045653 582767257 516968813 791514844 489016115 577428474 642033455 803620886 830468943 995818197 10926067 367203464 265961198 717006001 474607290 629019241 817232952 912914173 597721036 746860565 147997494 571931839 84010287 869829728 736642776 995674998 355183405 670601847 276827546 417257971 553863517 636987084 932152253 994728955 241057407 749357124 609819357 729445576 879906405 887607694 411643000 956293138 473579350 641610779 329299060 965492675 731189560 788116496 236153754 259363938 677963854 776794875 596562441 691401422 752331378 977813737 349874810 374675099 451710974 569477972 564283512 673892138 305992894 470566366 369594513 650352462 656752904 820905638 103760100 805114118 14502950 967788243 403250587 405939353 108734906 260371441 277036047 414784269 186715457 891268378 759836115 987791574 815060803 871477909 816153470 821542967 928307172 970159840 518760759 877773391 854447691 975447721 914992397 938322429 728871993 901053506 825225466 962040894 937219915 991963651 740835658 857582774 795136691 825568239 140094167 827707628 736248073 899827017 379393887 606840389 438025666 796493544 350870619 829790484 98535448 250337250 456976073 922949611 156932009 540799900 807841457 884932470 732792878 797935083 346157129 423254884 863963864 891769683 729796983 967814670 14790490 212422009 97639213 114209587 562146273 919267150 787855744 966428129 830540063 863905984 612497352 752508482 518504038 526726112 313412533 821467854 598432381 936358211 371610948 696485361 101670242 841452920 341967564 939468637 16684807 923510963 825838285 996386471 368998000 981481943 140765897 161399443 642322365 786825602 905448662 961673165 967396496 995276341 165355054 946951042 877035371 993931546 516989695 519036355 180374478 586098490 714235717 750855225 274646532 708352831 695015310 881513545 347227411 412421505 931377170 983062667 176677085 695364796 286308051 631503674 868371071 908253787 332334671 452007141 199446122 446120726 244108054 888732464 408376372 763222099 466165716 703304588 240858922 495553183 429405588 608404726 234098929 714966876 49902148 875327670 551434830 732389027 103306830 818427734 682844250 863545082 258858846 378034577 843879764 871970928 930351126 967865013 153825630 789467350 581673583 828311841 598013279 933308014 3979705 723470336 716033120 990206059 810198689 861357953 994555660 997509874 512746820 832511172 907280565 946531383 487835593 878546638 503945833 524365596 679614352 831924808 919955518 959569343 304581929 564142920 434777965 588219494 374751719 795927449 63166393 778063999 566744512 957303600 845140604 888324264 410960174 998781631 394413066 858961164 805115815 864164871 968911354 992612420 93822583 226861556 779026978 915881127 462706055 990718213 95851642 610298610 798284094 948903975 618164380 684915736 603044745 933923151 938162407 999868888 825652863 860714064 905013354 921609542 890099805 948763853 515944936 738929000 153824615 604633021 866538901 955297477 767967252 973250871 341751601 606754567 453472325 784508188 646883929 721718690 601532015 751930393 203608070 795907819 530497104 702026959 182546700 587987253 536186118 616565247 586356306 937940821 866307985 915367402 453795118 477479057 830931508 868018261 838849494 987528818 732150095 747991587 625693333 967310985 330103142 337796020 430891658 832716783 313460682 647662868 527644246 795062295 628646798 784033765 900774400 949067329 418459820 869176881 748704598 974886687 767598990 942842727 573253733 830651867 413871901 564990690 877296058 949914545 381861631 839338143 769216788 925346164 956180786 976373418 633980601 984641475 760493170 956066350 420073979 667220984 164675316 642546502 177947612 766624154 459531952 656032177 782749414 802965720 574015360 716391285 373002764 851804846 61181102 99102803 520888674 722007896 535759759 903288746 829846866 890984430 750481197 890477146 328185256 362560593 639241389 751960479 118857637 820886370 80054840 348513783 416550946 546299398 299355395 484474256 259031444 846902771 335526777 773144931 279388053 303530442 335931146 878590427 258707393 836480265 627300488 752053038 324237449 986057369 533101683 656106435 2898585 497402273 402799096 613882752 914285200 988911402 941956562 952751187 27984889 153327293 954337970 985088179 175181912 680727733 523014591 525797070 714586183 895887871 582039404 795984247 757641880 928227035 139649820 582510072 935299406 959031842 503467940 733066521 878485796 991533371 859259101 885061386 304287350 334377345 345356881 978799967 655700001 825249253 996999417 997951983 158424379 780020074 730552033 906090604 253818222 996401758 875603112 948815795 987111713 995944395 794114164 822731917 955479676 955778790 917709431 953474385 143385010 215201861 118149776 583275174 543497866 906372063 258622407 699474621 220417909 738710501 262603625 948286827 942352370 987832677 490803819 721564565 276789446 877536203 804279660 852520602 377664727 963663158 627516714 671182281 794356812 845728786 262096521 800173085 19521556 518161888 820696771 855413132 132313318 847492856 755490052 892057043 399316714 521597481 470002877 873751142 23110900 980120056 407771820 486705275 97553451 725410861 653515298 952758419 818054768 997469291 836410721 857514093 746805537 872755888 218762704 586671742 297338552 488630242 910452839 989723500 203828510 631089880 853499829 973811700 185310424 672474104 592154573 893186037 307036209 930977094 119207774 407251791 155521952 653323161 588457694 832523944 84958161 402102161 795232413 874051033 11851983 715267493 88956265 152707080 126920351 982509717 137219006 818923055 916660549 956751682 717196639 751458637 654600369 879892599 64703032 365918284 780992015 917561671 435956326 520114261 172010997 999114835 10813991 983273159 753404296 981616682 490319438 530374286 681527615 900403368 154280396 613271689 487556569 765472312 314696233 580211906 513289209 673175095 494674228 567796266 900396066 938733842 31735568 674278970 179557284 671583015 672476598 976569153 959148059 992040207 738834472 925599074 996537628 999775413 676021965 698752848 805478579 945503117 629950518 837367669 198039466 468215230 289301592 583516881 107010073 739878905 328999604 340116589 603269527 875299960 447324550 963475188 618423349 650893721 843185453 881250990 141910680 683983948 136531583 166441984 274168259 942906637 691188795 706343246 19464216 314820592 848652199 939207774 205478730 983009915 3600359 105509235 291326262 625265337 523174090 564892149 116181474 943429889 121699500 894895827 675662622 874286970 323103035 337930443 32098191 532400576 24616970 422421986 9178284 982912121 325783891 638226242 880588131 928509600 710691167 764926480 113582062 234690266 77250637 717286997 338733270 964641879 817491698 825489035 599742334 812972174 525168964 556065354 246826736 528129212 922020197 986595324 767112790 922218942 428149732 846014402 57882999 389389453 274478305 914654213 557591887 676392409 905962722 981580385 973671607 979896445 345099871 660801314 149139508 455035464 368701106 526563692 338940546 467314984 660243788 910576934 944488751 990081091 577919684 613630218 166998699 614890882 874460736 992394949 399045710 639705632 623317870 878731109 942985309 984050906 785852292 978786767 531463269 608302015 714672833 990667822 275217124 803758273 799810667 923593447 218328201 451103428 958021315 994611050 871969690 906961095 519610953 851411805 676327723 760014971 842884731 865303134 421622937 423508259 658453735 765621330 667289475 958302791 603770340 679198667 317457923 701169351 45869900 914568951 363952241 587334519 978032593 996112359 977077191 977558901 105461843 240904521 950914474 958333176 302926046 904402487 478227850 707967196 978723786 982280764 663191060 957996421 182638439 289098847 495341667 959112105 265152460 520706329 627980511 677748680 510743356 683983639 104443411 532191498 618760651 708135445 330158722 849013516 851603335 900483817 815116311 843295604 590257340 960083103 625667522 815369758 448188079 849308247 450061678 738204808 580021276 832483575 9241908 134777408 335593409 764691378 573489438 952663613 866997330 902331727 387400761 795650597 688868042 806058266 344078395 845813713 329748666 817200861 433927850 607240828 674052019 976066269 663297425 937322343 697885792 748661857 360082373 521037810 314293929 588038759 553720359 995699771 402384920 873571043 41179428 633760742 572738050 783226780 960201496 968551151 854575648 926159543 68416443 456289146 290730572 755957141 546303681 861655355 370752976 382970242 600148221 659126121 443993372 536882387 672663089 683294184 180713804 196603909 551825936 909465852 564732424 770957183 210179628 800297235 540941171 865494699 193772162 868425387 598896647 682113113 963701582 969433778 18784347 302812933 579261816 899137042 387069312 647380552 81033880 236695539 113180451 843183034 95014143 531984432 984120405 987870158 285625733 741391997 363059344 638205102 678936397 826954027 783115628 992543086 738664016 970008094 185956557 447499883 523143477 926614346 441802765 740471744 299417753 740703353 420680251 544334919 513864560 830331562 505374739 790421898 37142325 653096087 498469722 982269505 258381360 509993293 886153730 914547007 648963957 840419366 192756985 639614902 189765199 367155139 477514742 509204966 317233861 840071108 806185184 973771455 540521713 832889324 730631489 801689693 371170452 562691660 296130442 989703075 795240755 861595115 545705277 548682416 309209892 566874205 231268980 883995285 788703946 982869185 397571716 566760003 184923372 213972972 839143771 961561284 33081747 782203628 419196734 451316880 244691058 616404482 883467878 982035948 818334629 863712488 531854576 543177474 938028436 954608223 965340911 990029902 644322581 796592320 312661862 335030423 800878059 816084556 87041546 667752301 216716353 259860568 925669929 993613923 530661505 786565541 482978320 737989497 490652370 876621276 879254447 956721705 531813741 807577234 784776695 870470211 79921101 842981714 303308575 846735893 298486837 772148954 139688793 203884141 332530479 376969589 18458905 894732117 299747803 638048978 933963929 967872114 875657554 960885244 8808041 508916517 93815411 563925996 88851333 843362430 544066441 561160823 932804364 998028524 146169822 859271719 598399214 789028734 135001717 732841366 729664333 854823199 400334753 428743749 743224484 821787488 756739023 962375954 3457832 285830882 661948495 868326251 202117808 853164298 942734619 981307054 171479157 846021570 227202933 546112988 858872162 900736371 630301184 667954032 388419960 460699279 198488565 906865859 649753250 955086087 596782103 650877670 670676713 976961417 634770933 901252502 726356929 916437843 527074016 995453600 109050164 411764149 398261416 615961729 122597 563552886 403209606 492104045 920864152 933502666 807380256 951417339 354657953 750700677 10295627 574752783 37892320 911729867 527022185 570595261 455163281 775894575 96343556 189064840 957673775 959200151 105803508 553832003 205108489 611264388 972471543 973814906 656513399 800353104 688743066 738268327 527749680 580298089 280301889 664661309 584089491 660175308 456582366 791371751 525123527 624082578 394983510 489699756 464979546 837218009 749228366 760006727 989300135 999212265 132360215 418979114 312006510 852065328 347038765 435106291 759382123 853020640 355257412 390829384 993748180 996944402 904284593 965043317 198248610 495007935 43191727 823738326 757775531 785004616 169123310 773539370 180946324 241061332 809425602 829116567 608520035 681424180 991161679 996947722 76370698 479415988 1148064 498693985 296713747 753308677 134500326 298624150 653117298 855026285 777180910 950328954 748423538 778648130 705802465 842173069 309210752 468529424 254786649 724476527 444388253 516778202 599645187 615975951 442622195 508139438 473915371 812316846 747315338 766833840 517598530 979986800 674013501 865031039 232269741 406889664 392767435 738336165 343609029 745690859 346786342 368587777 973589410 975381631 893080996 910612285 749651721 840399341 363970871 505931569 175456139 213786406 958379467 973075750 291938332 864447885 143434715 302051765 726529651 737802725 145403742 564265449 249637766 818796015 13170286 456441344 272787902 686603463 8933324 832290320 305667314 334826235 578808842 910711708 363327602 843202187 295127298 595492956 637587876 675452878 658081989 774854073 740053848 838440220 139479519 983996263 417814761 668899769 650311262 653578835 400285404 604875863 539381782 644174411 374218652 447273647 141823695 934823455 141242544 631754906 887352089 996812860 386479495 432710227 333864411 766909444 361164040 998188377 313495300 641458360 175594827 617563544 121911427 328381964 789335552 961934765 277922541 515195383 51018383 664631822 981896960 982796734 579996134 873232163 833283889 975539087 446727476 649592352 524068256 939184775 192141525 264968920 383382060 820785192 586208151 732901596 148147221 935870662 883649528 903492149 341719627 529698012 778986447 966701408 507218346 648918773 731645685 928984609 405980854 804675461 537752724 555661948 730236233 964451124 487587268 742563013 780423394 974752639 853554892 889989628 990201600 997610611 281219833 700514665 297144207 689065855 794631167 893825657 292720617 843568839 50676798 573313492 825432269 936880721 445850809 772388604 616574414 817345911 38580947 56469717 524971238 930782444 268604387 983116745 626168320 942960542 164389446 412285552 192801379 316662206 674278548 688688903 282713486 427459433 15009498 20042712 898142783 974705121 802298139 845194209 626243491 718200934 426677198 880941904 387283321 748928147 830117317 961999703 906731528 958841550 441758265 543400441 975490107 990933236 896104534 996571876 236561089 333234626 425302317 965844872 475021972 789918643 498362631 724919064 872595624 932608433 937407026 966941196 290758949 982620644 84405931 763391464 704234758 826454749 838347737 966654080 360924575 580889194 991699856 992389275 532707575 688738587 467919104 883179253 540618086 639156278 814047777 857396210 217098961 563734689 197457308 972073279 347129556 363593050 161967169 731317945 906321680 996398016 205328144 738979095 495081515 532177066 800832727 936688010 237292715 364041034 920587225 952637676 395943698 593036474 429887840 513336091 486899503 716896910 515385727 851429019 751945986 865932390 89793568 404465218 849100864 968327485 990496051 994034146 928363105 977931458 984543990 992230922 46026922 902548010 612156093 932158555 842854651 870921408 363144042 955571643 53074909 867581024 935477076 948903725 799727727 847688375 692019232 692103968 553518785 794890075 712240647 780642944 123584851 474869979 4885510 797212371 474563531 965196850 325062457 766023082 879978711 967928193 782357024 889715430 210879918 971100081 714776710 810883805 473252317 732319898 904436298 992162895 744850643 957657014 797070118 898625454 674283578 846900751 26897437 324776633 441307212 552048900 74108568 441864574 800860297 882043644 679364143 900430393 931934049 994510127 554785459 755639543 288271771 373867027 70000118 841940731 733426770 936532658 864829016 906800363 561511557 841858134 730673882 819286825 726532678 866403464 339550624 649602346 604877546 979905453 133610169 869138275 78673911 467058299 336307968 548393387 305331570 883251647 620587632 913898571 842371050 905250270 436771742 537059305 567846068 625086176 407962986 906474414 239028083 839973591 770751760 778512135 345489656 504244970 133050363 546522136 739453747 994597063 350195944 642808797 53767501 630591991 36991337 245123594 915119187 940203142 525142526 721014376 784936200 800681944 279223232 891739704 616032754 810891417 695445746 869192196 847330609 979412658 552512050 994079467 147897863 337221579 659820754 903756286 88546901 98852465 760031472 845796315 515399081 664610964 452362792 627922503 507941279 999166938 799441295 822857400 258119409 647763166 216404056 564953906 841929729 947008666 991198486 991352165 925302772 985410986 999382801 999844869 346637088 647925153 483132719 764623788 715386988 794865839 204171 783223002 187787990 594097873 903344770 953653651 175008624 546854133 103159755 241007496 773801716 921358136 988536278 993573299 18048719 543450739 623414810 710796615 24600252 969220177 84718920 560938075 839824313 925909423 949839080 994411688 391045017 441714303 139390735 442206955 711604923 740428783 258624797 274978702 609170018 999527445 685545841 930351093 938735757 946072464 959163168 996617891 596384611 988109803 980541526 986503451 305639750 653402067 815141522 849061605 306209847 956406541 880113446 951375605 948979921 996631747 16363320 909274130 448331698 448826833 423300960 722518253 741218569 909488888 162974032 246391036 278632980 297287807 185013284 962338313 344199514 559131964 170213981 485095394 60921748 230987813 501120596 746074262 868364180 902709347 240162238 622467654 937617315 980759771 278362322 890859948 970213584 991254018 941718088 984530171 724013947 765192917 637554133 648457522 95121157 357863341 868762830 904720314 969058825 981226515 176363339 249299083 357795706 893752206 285391302 552751215 32043468 711501327 788774159 846107066 217070783 662307217 698143119 722474337 640570418 696258241 792389477 964653084 909049075 929966168 640234132 940933293 496531058 723151227 621839525 643837998 310968217 398078732 644132969 864858100 449685258 559908732 62431916 829720958 194419785 860890531 197511690 635613297 975659705 980134642 234644811 915833274 837813070 981530179 478731712 699726921 361981161 568815911 448609692 962799923 27082038 759648237 298352473 416419980 337260253 695764771 65916998 484191461 303061304 915343217 33923061 975156794 429250826 475760589 411965074 480044401 277524143 665547667 525178843 540080828 426857585 848366650 331673545 428464624 415143437 983100835 669914782 927869112 957488506 987121142 899443380 993539874 500454788 687963036 762772873 873681166 190239608 780384851 256443582 896431230 847519733 988078486 1247562 335642969 843488609 965874652 33058312 782031527 516827936 745307463 28772428 412899535 272981865 875277262 87590072 688979446 818207836 991729722 192471408 829738941 664911704 798878702 960348872 991571540 685311470 732915998 173739147 292530032 735605253 919177030 978284392 999548896 121346631 774004964 73609676 394454479 184260402 529743918 718812504 769659448 524081806 584640694 887251383 984148280 963104610 987535618 771696449 962126636 90391699 675897580 856869204 929969262 343261753 496433110 604660685 738068001 269837470 761538724 629444623 646564852 659952622 883272476 71363523 339093879 440347683 740790245 431084668 488577151 351896216 878902194 659757289 953081809 111559293 473738005 589246941 707272804 69602271 373727269 661938593 945231249 640237767 965567469 410408225 585386770 240277012 962226280 2974345 67412832 638499002 724257182 424315302 939064831 920754237 963612443 460017287 925774580 87992272 797755410 809114223 950121188 759207362 921503727 259673662 539966381 855040942 950813515 954722741 982171239 159929934 621539766 248435456 351461042 42865083 953238351 369028613 699634501 427449783 960558482 878817156 890506943 530117937 534410343 325628576 918153756 380613288 790746044 322775969 761195294 563330314 999253691 580173398 884111753 662590126 744672302 87038645 277939018 89669289 479674440 825846609 946274557 665996110 923615430 918510325 943556889 961821408 991688650 17990989 363170849 419969318 986768792 9234165 985910494 865070626 934843805 651228417 828544627 318170247 412927039 196635516 760685123 737177429 997483673 716668137 794957220 363288824 672664820 403231875 515890049 712101651 899138577 278828200 484257296 39540601 208610331 611700655 723316680 910121152 981998024 587362237 706769525 111986868 933314100 455173543 613015100 847949987 985878297 418772666 919176210 329283126 412649077 221631386 359886487 255227281 793363853 254654939 768085818 377694681 493699436 731158918 742235196 527465557 783216742 226981157 539430503 337488565 671731168 512198777 701685415 29667663 604882006 543233635 774221336 535247615 810891310 705808939 912156603 925470520 998810980 219071506 283105928 667825430 776714770 505694064 936761219 575131231 827815772 981259910 995684156 505345273 841150195 172407686 846406923 266635346 356480027 25574024 904014764 796879276 982570734 325616457 867644064 555106323 868768694 647995068 957951035 973163602 989810472 252832435 600521797 208765412 567612209 958970756 991333925 22743554 272211835 367708814 864482090 797774535 854726432 211610113 916453591 577413680 722137353 105370345 777908687 613965061 711944702 930122895 947765669 935978011 995677974 190381372 494200113 39058775 695169565 13184227 866931090 882309277 977795646 8799784 94850901 771083976 906295667 121013947 809107300 733090785 875253157 214038028 478175952 402862762 861192665 498271517 733811903 247241655 583395826 480251953 786210773 966626593 987595020 930502934 973235467 502782307 722244263 57714660 200685429 253558486 550502392 222530899 436927119 166807961 363115035 902639121 920279650 362586374 480770646 131210289 261046360 672473532 729352875 886144854 901707638 143149584 229519353 384022426 926149374 885196793 949843847 314418708 695765334 707176672 835031784 122539818 847114657 303555493 661249159 395660790 539018495 966426943 980972153 452992879 813081101 463515414 541549014 984470380 990678779 13015137 884602774 68027851 534749925 705922499 852926539 668311422 718483453 550997312 628232247 77965185 965669600 811593618 838463712 99728157 390112556 439306216 959064633 746414763 828039070 200490402 501475863 228083379 906130391 560619046 648562387 135563396 389521099 756942419 819952946 252537753 932171222 701695621 943540601 556470824 584717315 562444579 844277871 85491470 992092639 310524515 437015305 653174633 711667365 468381531 494620442 105397831 518630333 962961444 988600117 554229186 816393949 393230518 809382239 595910758 604095982 727580648 979738148 770711816 886035121 515501796 730280900 69674659 400510606 474844820 997706814 34985389 629808728 457716194 893886004 144011986 231190751 666130433 802456076 962709607 991807518 110310319 173814454 406367436 738974184 253546490 940431687 653217622 772033062 210156107 577685251 559444246 705222695 151598060 399359094 34481727 302808279 650464124 935237957 796363717 875064209 101221419 457131379 107873165 807417148 219155690 407278533 565773322 851766868 924112738 996560667 840807777 902927960 783124749 974759355 279702484 801246200 546591063 998255550 102467958 574993404 757839060 954272646 950072521 993772411 35131956 132312888 842287381 932205252 383364889 905754737 98192236 601058429 2941604 932879624 12594384 760606970 408957320 714321434 128141489 845521928 647831625 987230127 424881892 934635956 493679556 528072169 565846859 924436541 999238289 999348166 167712977 699130328 931918662 981527685 5709902 252039688 125758039 712244998 781887722 960686371 906423830 998050386 69997634 620522356 822194815 831506439 55801004 191472125 449767516 908819506 667777646 857819069 414048761 908757684 584954510 654897409 808267224 872995661 281635200 317313904 540491603 815851254 765228351 980460775 180959191 863732851 566230102 800170420 694969124 886245566 500172709 680773277 623942043 711763428 98889269 886701487 197469778 512197373 957935899 984123159 303625403 715200688 791842737 865928489 204840457 755405065 840639600 968629050 552092665 785591299 173456517 483635476 840470726 960282408 533563796 979304622 303582797 647730665 672545825 888937245 875707692 899213863 803128723 881017823 462708086 991081104 710614406 782749633 762038927 924374374 588110232 630173062 982791501 985320582 605421869 785045841 821985746 939645782 747840768 855344966 911413895 935655059 875296231 957271589 683951270 757369317 746166675 988222037 308232347 874667720 263419592 727929014 904018949 951909876 459159465 667465101 75213018 771245238 890206625 919201530 247267229 569098137 639116232 798487597 493933073 850667055 234806083 879277913 232942177 513473406 6618146 481730709 740071316 986428150 798034373 917977161 351188582 490158355 761831121 967720204 98448396 333689450 609129358 801617409 660445333 899417954 282362302 612979213 582251960 641030461 631598902 996163251 762867225 918717379 824236051 878398673 648052158 920502797 539277810 615459598 560672831 850415374 909383447 989529042 576648 226991065 153096666 996550137 137268689 693577903 557085343 717778665 529821233 887894001 354463735 780887967 634567095 710672464 188362086 678934270 784878029 855446878 777888656 927255752 134749930 919005528 89053084 167544066 51687152 265953663 772879523 788215012 566915231 710408130 722937040 980177720 746802658 747381956 511611985 818996025 27486864 283742109 328057343 830926804 477006496 918020213 211750466 928704664 108041391 597237207 201395728 622573211 282038880 504560237 71556690 143590665 894496988 918178489 510613474 524409339 488501920 542633931 225463837 264236816 954650245 980180116 169337410 896362769 908643869 994507133 774524490 959106553 807585262 842586165 923956416 983027640 57254266 166388062 103202070 839884361 849853921 935195688 92947848 99333025 403678934 634343550 103548400 587675248 128556896 619565508 66177286 207695252 450518858 560772974 477424594 526773906 778744873 829773671 3442415 77886293 478460949 688890740 470931050 984159676 375113542 478481247 570778543 931220715 554516628 673637185 212804580 669766319 962386654 989582302 52128283 563937546 230496941 400511705 580333625 981720715 973157242 999963982 413050261 573753602 944751411 968508074 980113075 988294025 190731327 920315337 548089877 558305210 996274437 999494167 761826339 919653791 305944979 348236719 145342190 753359264 998816700 999910398 853841610 979894066 541428045 810139754 742173472 821244208 186386035 968582124 848199836 959900882 910904987 931177059 748642643 959177485 924165142 926006630 774564 49818606 285547841 979933633 535961053 562242950 313514445 322669610 944068986 995897217 996344090 997191473 30509287 530976112 526693535 774433306 32658398 714021533 587806766 917310586 639752345 701468514 97132968 435665374 150022686 765011856 826406936 894364662 478705888 786671707 416509077 727274578 879144036 922975224 142574451 804010314 242496968 723600121 449364286 808068522 168691747 748722574 27158703 130824722 431445767 598941389 698217146 961759034 911448942 932592064 252135944 801622834 954615963 964884192 144429706 972787672 551138120 600726920 324036468 921650343 419539805 650512537 416877393 870195153 473450638 685898562 473320250 703407063 392562447 787325019 2714692 911562170 405475401 957609202 895535099 988410253 742701384 805611072 378521011 996514365 874561794 994576752 280216208 854774760 504462401 569844284 711032922 751899761 435007673 503158106 87200182 442955788 133725150 166706018 769795193 808867817 934785460 997716826 584198304 852249007 879549965 919503726 407722643 987045851 911073902 980478993 744942674 745418683 603972699 859887129 258458268 725986422 789195487 852505880 6323943 514191235 501035070 793940692 528282707 928240191 281897243 638102989 402990817 722956590 425887947 428329157 483909833 961834400 357490597 779325633 216323289 248379281 249093113 455439689 213702004 480485812 569998898 973319388 381199070 720763367 966407618 984283394 258775109 438692746 970508169 994991201 204927843 301499569 514283958 871894993 28438504 998536625 367494360 385307600 438851094 535441041 519862458 609017195 34618666 216135478 337061043 842331122 326430975 363556820 3152462 695005993 594307302 841340697 775812159 835786007 380661653 856099524 792627531 955580502 918536806 937303597 571851522 795565854 38972219 581657531 679186334 835636564 29255303 920236114 530876073 663298663 885512960 943328474 282217366 668370456 908371484 918649972 545919412 627245639 98869832 486529970 71978119 457234945 252424546 504263062 58900924 866374594 803234144 999525415 953228146 965826784 991822771 996384352 334432271 509318032 774956708 869592094 569474781 867484451 185693966 520114772 69986229 790866012 11021709 822939026 715135032 852044567 541914763 808904676 992018005 994531291 853514409 877318821 113178210 729467472 572938057 792142900 463563359 577251704 293667152 554775915 495498901 907273485 74991220 708872000 952875356 984041827 640755598 849051024 235024581 370057480 156270386 684376382 504225087 741849344 592628160 866226022 124944331 473898455 254771691 685118400 752488251 857947444 966756886 976964425 357995162 450975785 466306528 737517740 945336266 972310160 765565182 898115898 438190066 574067369 319017652 367686665 585223663 730443567 406552361 858153129 360616148 606262136 760760173 871284226 239116574 605328737 619938988 671944981 23842853 569832171 936330975 994481183 908293298 960547371 897516271 936630188 664335554 972512269 649456754 942544864 552591128 564193499 210102227 241447898 166940357 946823507 634519304 712003523 142677123 818319231 246400790 957345833 287401894 995387765 843905424 865340955 149049372 420565334 643056319 874320770 96652646 430150542 637582998 779775298 176167994 780569626 116718909 568344853 807033661 958709207 484769284 881439148 14654901 211324041 716295753 780197896 453914862 522465550 782371862 863932724 630469095 892096635 342328747 701595070 732487090 874234019 903112243 953361905 402060647 881455186 310646663 414176358 375460922 851392033 945054122 947095992 875337738 965047541 141048502 554262313 865024235 927498159 270481001 825621393 311803431 920774245 19693848 707759673 932920776 952767807 521500204 776250687 231575776 961154963 879093186 925080543 128498073 481303221 240466192 771280447 634597191 928156245 483984451 820642120 392133606 896646049 665224527 934021427 696903183 709881893 796272598 987467858 966325691 985830145 373948799 421901351 129896440 485168327 487306875 562590134 111339713 667929085 202257918 322926654 397684797 891940349 194397244 692287816 85028841 824930778 332696220 688131597 920099942 975746747 857748561 979662593 902228842 997816843 810154538 833013995 930898908 975048801 608284858 727977232 747386785 941807324 376489952 934050646 590227910 951603360 523346912 877797074 693992730 889422934 997858029 998227234 251805199 998574447 555966539 728964751 19436871 563163873 799441040 947195516 972127673 998177263 181893195 696452592 402829268 449611924 855023928 979697868 691450672 695288659 547396965 901839832 103468892 310112655 220926756 527294627 674645393 687817441 347427443 406301555 596490097 649953609 482199903 861042750 919740246 926447682 780124576 956618540 769272917 965616918 705847374 784920462 589899460 950194704 352547085 595026255 715222666 886702133 433747721 854376211 943599269 983254214 813771336 839922631 507436580 714547785 989430835 993199341 578080062 747491115 53346379 351835915 112348967 456368730 942818568 991879235 333778853 898413466 711642060 900810099 124537126 481057263 925190663 960639128 331138433 791229817 896861289 976960085 547802715 749413607 908611654 940518887 271585584 639666368 242475421 249742027 810412254 898083385 115886949 668390790 176010927 891392009 527780636 532347372 520284824 562565630 330563753 340761118 989254876 991402320 74845922 357167362 282342241 408599883 348779426 916845301 464921233 836086840 328538293 995529740 260659972 699552112 874041053 947826109 834451477 841387732 235435938 828482037 889421819 962750448 754359307 922318575 825710425 834320259 765931679 960598514 776398040 836730860 86181784 234785784 871379740 935093303 502606910 860563921 167078852 793684676 948816982 964422327 77987794 462938151 653519971 787942352 920653028 986592412 62886054 562716485 967036152 983978259 867428002 969775873 1112793 761881220 16376792 707426640 750693352 996345901 681800123 984166376 928156903 972534155 953888529 997266318 533608574 625216467 781634984 907809175 314981564 625720246 503049062 956643148 302737054 906280523 121333783 352654447 244890808 495549350 156235414 407127271 948440566 989634944 436778291 814644284 703170319 773214218 765008815 851136074 16835840 630582557 699417837 725137448 371123823 877776930 673459034 973398790 681572700 893165462 589832637 799272790 324976853 952567508 710330986 896910876 854396077 905583818 628795625 797601066 842249773 943802736 65365407 556004662 180315849 267686721 316094597 849001708 699370598 836117615 536435581 890258494 817256639 976836152 126230366 677203506 398334129 702258634 209164825 431264411 366855171 515581092 597103223 982220988 800504179 902929126 288442854 308820329 531466698 733195615 403095193 943716151 292819891 780681677 159448309 353928535 468083385 692976393 530416231 832589242 703649964 934928080 500355939 614275906 182344337 315590764 83196356 796672865 807598811 921080755 343359769 590575821 767931193 860110290 100166498 372416576 548335385 766321869 322334252 874800812 653678498 855385543 683377502 761101288 647215635 972642645 888116334 968886641 285359749 516602811 430188636 621133011 276155488 841833044 961445506 982882456 151230961 919372805 720589292 748832224 395025311 991028828 360370075 586274372 803724996 834763682 267773569 534902382 479721814 555039612 370124544 898191144 926532619 983753606 65075246 350426791 987032611 991607095 312920328 844726862 727123169 886352952 300611065 335836693 898732606 942019803 320365213 389499305 357030819 924976641 548051165 642861420 156539870 849567139 513225884 558769570 770088001 872838274 252198083 692177769 568639920 626322970 161779327 172859904 948341551 968162746 603598409 877638230 218363583 502833415 54252580 102775689 317436720 492699397 804372851 865202242 917275726 931014931 279983112 400199283 733301960 772998178 550749032 706453868 554650006 618478585 59809833 410984238 695861546 829092648 38956462 760441424 349993991 595826504 267968729 680128423 679089509 861594975 441402450 788278770 810053879 923774876 379186003 783536977 266051445 430366826 450158410 463143635 123023744 892971119 740952437 981234253 55015413 663786856 314758124 517553543 70030841 337111001 278632718 983192185 267318528 377505027 117785643 564265606 868061713 979718613 426757486 705303083 309748752 529742733 628085151 730543498 243800160 845304016 530168377 875101280 205985323 940764130 58601405 969256949 347075598 976719600 383326856 805503856 164724368 648722851 503058049 632725554 988913400 997253377 292899910 941351601 404977341 581209456 402104851 426927963 654321515 747697105 699780633 928683527 596698135 724286515 713936678 920119587 406206985 854188525 929033921 973435168 462652902 740033786 19642478 775471766 357161603 708272230 307968160 564247496 178116433 560065793 793599169 938051730 941375191 949756192 640869406 820389373 584514730 989839020 428082706 788781761 301972062 662923354 525707379 733319678 190477566 569220151 848798017 978871873 348914134 867212539 501209550 602812724 939443717 982337037 379796255 646678383 190835871 223592099 695474006 819692207 736983908 988673863 857400532 942158485 169925607 816967439 203574599 813635221 143245724 634594570 413028394 994736473 249061445 694889038 564189475 680607067 193720286 879325779 3601091 163018910 571454284 911129637 983508025 986641651 591878106 966448493 417289296 519660201 434486832 991274875 25087154 434294307 151031322 823813257 250842966 562794313 995469538 998969789 193290713 229957036 146059930 657609585 811249136 925556315 60914212 306277774 114414892 311050994 418799083 645727152 706044514 994665359 983058102 984570727 427736188 737978497 160451197 406932144 73832390 252240194 18767314 57131599 444570180 897708169 489047485 879690854 308962554 321096164 902998848 972493420 23779433 330183149 882920570 970436422 134622897 869479681 615738715 920482983 234115754 719230821 135623957 648262862 574762501 734993324 443319678 537753380 683569977 806828766 514280620 793772919 761141937 907283536 917981157 969010127 487661975 503047129 795153920 915549484 319675230 387993975 916026562 989367252 92555810 353861372 788071334 870325882 760285676 912708800 661893526 670693774 729169508 919811544 477034881 921666681 138007948 163509385 822142884 927338438 964206720 985076889 100436417 951458793 977165306 998293885 851411952 941744815 57333041 944387080 201375712 915342575 677799181 854126472 204960840 750081742 376578979 715256654 689464386 842788414 421479330 590634734 995266105 999911693 508647725 900883142 519430625 942464301 936640286 984307589 876260891 955542828 157511490 446300351 803532742 913446762 597080699 854501414 442518860 811396213 767682359 874636416 709493311 792178570 479430286 753876828 79090449 973364619 652520304 860132874 204872546 355769788 733594413 923218964 456380576 463903272 158792410 769571731 937187259 977887118 313876984 675965903 420208639 502896037 885350014 964905372 153625671 670712376 931052944 998562200 799490248 972501285 762407404 876170373 680250298 739877669 368630163 671986372 321892202 667934529 941825222 993787369 594999810 660875650 237573863 952136445 433445590 900420957 652265955 903663653 908824294 952705731 180194184 842513345 827317677 988679437 363360341 616742195 323684921 670311341 650756431 735115881 243194247 887968486 945187605 965791639 217842250 398941722 34095746 819148218 712467067 755022337 576319030 919983088 530509913 871674251 601244649 974314462 262289136 267729440 837322387 854692335 691972769 854081510 839848373 945514780 556861184 586414629 367487215 749570706 723713330 759504887 377555474 524576446 256514605 644441717 826527728 983608103 293195582 606488199 287844992 865543870 140238265 731406541 171035724 837105026 96944231 105199840 295263172 426700821 946938319 977621326 958470595 966650122 315268909 502678894 604548019 919179469 559408208 712700096 213376867 707354596 916441630 991194913 164560061 468718526 836576493 948707120 707607047 869539605 220363999 980478516 789249921 874880975 916004953 947268026 369539899 458847247 205719627 805878995 689026539 810478649 700101537 975790081 987215300 988720535 765319980 838807032 517674824 858183155 604823760 962513823 816728047 963561367 339504604 852401966 56625521 235794300 377060198 450997904 432932496 963350286 947115001 981586477 769968463 915583062 788306050 985783071 417907247 707887217 590918668 632627018 577087763 879177513 750505450 834517149 644582626 947606700 383658377 498283432 584843785 895650263 392172453 543177288 565013711 584344395 679349977 870250822 118069164 902530562 345423538 873457777 991174169 996773845 892818240 923867730 52682052 258611599 386162789 642062349 458735054 515866924 91226719 823846096 407917854 640985654 331990895 786805625 363919802 948078472 517572320 593302911 978596628 992273862 817497201 924602593 818941145 820493375 346393506 827190190 427190515 633831330 919740840 980715267 382886322 993638043 807345550 987251735 232608250 695103478 169017096 599464358 12848585 426288520 557566558 868326880 546823803 817055060 339726247 602631793 259437599 411364118 10545751 791062357 282758236 431550814 801454861 882071772 103800377 663006729 562921833 984917567 663456169 981263349 631439244 910541880 751064895 820774058 87824233 645824886 788815969 836689539 866754113 957164805 931578949 957100712 587231138 870586247 701488021 939739337 634915565 870189550 656463076 936090308 733692266 871016524 184400704 417654517 814387018 865638597 735053286 762012751 142466811 194078076 709759194 986192499 619760747 968690334 994503680 997067653 803578341 913137739 588786639 620430493 969100059 998129716 139967632 518627338 127543104 719284130 832819030 857163700 453076493 547410020 143628581 462927021 647243346 720121167 298114500 570461041 274704322 460234186 647933789 813118653 791606553 949873468 229642813 890287460 706620369 990126601 574260320 788085816 283763447 689118696 865305835 954574848 778907907 949215490 164627707 845561296 176663147 793606129 729260903 737435914 261060555 838700316 498495229 936267529 288847729 804131532 789888509 983698158 973736387 973898306 447766489 840028432 186057812 967854410 703550974 978996291 435131023 898099131 978910463 979131929 518028054 793976131 682514089 729763454 379865253 993262846 603289149 803952578 291407315 852757426 142070637 604194319 310549559 775298117 172641959 944643389 900037959 923877138 834811532 860458234 756492513 958394816 540615270 545119358 341960041 747750365 168185094 739222632 923683780 939808646 950243049 969171078 654656979 705772287 434405538 685049679 68817938 898854031 74985682 454072484 261056298 919360422 474726452 549339055 643279749 920697696 390760485 799241653 667465152 852559258 198684274 257587222 157259993 461145534 784356188 893841427 471296803 824923131 234561518 893590605 465601830 884553383 648219709 823677118 695643454 701863307 149294976 828175613 955329228 989518511 3385308 209806857 659659764 773564029 443592627 928990038 969954629 974102356 363684865 726726978 337771488 391115752 435573972 776735757 238372111 630455016 2414640 945541739 869419443 944314628 144902302 728609460 260990161 656472911 919049336 972529615 569023517 665778897 941856108 980743275 388862371 915296963 961011358 967894304 811232507 996694856 159751537 450716066 135476022 406861840 102344092 425375609 279661217 652222191 499575980 815315368 99946214 536283290 152070125 693681481 386445586 698350114 318189126 442162055 473290004 921041410 75540449 97132515 930740806 956486540 183883784 624422594 783852148 859460664 852035416 923164697 618285683 665363895 311336361 391192711 570122212 746512298 805208885 815492810 482114456 759259066 862615443 876756585 392809579 811104438 933459372 977453628 577887082 814238940 187306213 943191964 852811691 876785787 531869395 975607865 686793293 753744899 335073911 921358055 265533153 476052570 478246473 818162359 590353710 953939888 808604717 905705690 265476425 491894156 363409759 600316384 666631089 971468196 236497185 800462863 337974305 734200258 145506677 518088116 836312440 896321589 555296471 696093288 427667784 494022106 372729378 596391135 789387985 891304753 102251462 403682458 519335014 740826255 38372066 928508365 574605225 672615253 99139742 528099223 570366283 686695959 182816569 268342900 240470850 568031208 487975853 949101130 788373888 827225874 404890636 831104418 216721457 774055803 63431972 114936235 384760008 960192642 762535350 998772510 385316890 542752863 913059188 960082224 695640241 715720498 401093389 736685367 561441444 697019445 883444640 926039963 527860610 547169426 176488678 625716147 625078429 774455912 828846895 982739732 61324351 261418160 136636778 783033282 372506788 475274887 360591228 754945670 560353314 758398428 288410947 959886536 523598979 681414906 895876455 916334359 417027247 567238406 799371651 868930202 761604826 950900363 64831469 965988378 897461115 955562347 135239528 931741792 629507015 808539335 303905944 593315935 677980212 691363507 957590813 991854091 631264358 741838098 337454806 632667705 998725536 999621287 368056579 585740311 998450548 999993160 66325386 236734184 970271696 990136920 633770732 897238726 925182483 979048245 827962566 862005344 227732744 520218961 96901662 655892103 456885999 574219156 511422302 926563625 262923184 346585029 396539599 489205997 180846053 640279063 313194714 814105899 220825768 569677559 44084381 837506539 777453486 909873192 869903356 920232041 224716868 379283897 12664982 808917240 817538907 970641044 712363870 871908514 515066224 981431004 367484159 680606333 359962791 781646447 634199553 935673486 570742348 964353017 695701648 881985533 554666082 905718579 478265174 876256336 894713435 932688190 378961389 454026567 72404669 313614609 723127038 824932533 263284283 903348523 314478297 514682771 732858799 948123060 624154189 906696089 444440913 783175965 785461113 991406673 417657172 845399862 286081846 359784521 912218722 969699454 282998626 727944912 6618638 618559241 828352499 922353033 564214331 623892614 631176637 639754569 948531053 984011577 754335100 886566089 289807361 413901975 721064443 786422379 248084479 491259280 487024434 775574139 428091697 472353907 448773103 722999767 161585169 445238834 463403646 535966803 473624252 596887875 161406390 851823162 932077061 957383846 526781619 943348325 941276352 984296235 235896150 842599195 466894596 727682803 556861276 898357263 410168562 724273614 74137861 769821721 247735597 304123592 774607905 815507785 805315742 966598974 887359893 938755377 76222047 943925383 106432226 846528374 295445590 474384477 932770490 968198688 656127699 989340738 110765814 947490022 302008934 377129264 473177953 918922547 354283331 918578430 80498789 87508761 462756805 906451991 745072727 943906617 645642426 920689670 254208639 848595125 281195265 660621990 97920444 947425153 784970568 885465555 238810883 713617898 120924251 679898299 543609201 567784845 614892974 712644441 37724738 607603122 664148338 763976076 599948416 686289837 536939251 841097601 998694923 999555196 897376492 956409931 826972340 942077328 322816673 518069460 791213878 806694347 127293930 922017611 289106769 940496658 349429610 708647909 781618572 789244568 279257923 283600087 957855348 967388312 759193508 797275112 782115915 824239757 550465789 965469373 948264903 974888465 848304801 893653176 340711493 616532583 500378589 823196117 283429924 988046433 324680365 873870220 230219295 262422726 552465845 579491064 233997738 787543500 75580431 918503071 353462323 550073178 525233873 991908441 372791294 896684848 254541648 757797480 867252218 919501746 239647964 239661260 329025302 722657326 886349648 956555305 728866606 940829067 323045672 696257031 404422547 769123312 167035526 774135779 887054474 958276283 703343821 801280703 398141233 649748175 490879759 770615085 545998100 862040860 573323384 901545936 144553855 446857611 292176336 837335270 479233870 952496985 934846446 947890162 982853875 987414010 397260174 762194535 676126878 933984759 486545827 630862206 404684462 444564072 806094376 967625017 278153685 411350952 102581347 462438948 609772920 929256623 214578740 790464382 741992113 907513021 918610136 954595891 574471277 911629934 945960349 992919897 899885072 900913029 767590726 953459389 715900297 881363767 864677229 901244650 899970084 989539071 465210726 891105567 460816532 747499547 779394431 845368973 237415359 256207247 258747715 797627811 411132549 883265119 567548998 754176955 467640708 802159212 792473653 872470275 96394320 760874754 876045622 885915385 373826504 561912400 237181478 827525681 282905141 542141861 646250490 856147510 768707147 838290465 520942255 669146666 999299754 999806663 488439590 766238581 683805880 919316425 41039912 118134512 419999729 794745079 24607157 733994913 606021640 699201340 812152604 996406462 689065522 858137253 666578044 726495647 24085120 815669882 945192868 947186579 324924234 439211199 394451858 631323626 340060587 923740261 991372800 997828035 92262413 228113698 660225582 949486604 277883028 559049290 924410996 924420968 652454418 830925339 484862622 490167591 449114441 502509235 335053444 824650076 95443422 298314551 435416448 772646730 927602234 973328628 914292216 940534686 208371740 650018736 836239484 900406069 289645957 841895120 450961578 549046730 748460905 807794428 657677623 969087135 335370753 351849919 937132811 988251291 944885459 990774468 476730300 870145141 634016738 798821597 28649581 695879817 170601430 492502715 637710796 842086162 518502339 651306572 86691210 266695816 696506738 919948104 206171315 831182949 962405772 970899724 667539325 965379702 363911591 727844830 747889484 791117186 745955564 819334854 376355700 941462947 129809744 500691892 66736770 623689722 425838036 922127025 442076841 650593555 238460851 442079753 999581924 999702377 810225941 957484662 917364642 959204128 966825830 974402923 456153519 461644944 668240786 911400339 815095801 956997684 100134165 111304174 414447733 642167648 561101844 563990232 249568941 555952390 692744303 867179365 416408079 895903914 123426050 199983807 880225164 995685809 246498903 855498187 609880143 699974990 435236939 738238253 507391082 604161130 447181619 796957283 120332324 800291995 707313697 815933857 396714197 453058975 59287475 468332296 40708176 135436668 736250678 886140142 588793163 923183557 33259125 728634965 809571468 876014314 789282460 795219110 247088251 318005077 294637281 887991831 504545725 864769465 611770126 961915049 184215162 811267113 590275926 728401865 353018291 696936944 458092309 886163309 625864553 757113328 722198225 748771015 65699399 612850563 139545747 501574064 502308100 674915821 838051490 977111042 557099994 692667622 674779169 945297172 843157067 980365009 797354597 805038113 812187842 889399817 463431220 691622970 261305282 562958522 831408020 904410336 776899811 962835851 479261962 693333879 256920773 567282994 12942179 41227530 167941273 860284714 653888690 990754353 223362672 338886868 713721756 950423280 868327992 917851239 985663880 994549911 239367303 267516220 326381957 653358231 215002026 451179579 436815000 888368148 661858682 725405187 107371860 928852745 648786923 665005663 976336994 983105618 206683405 694185809 779625617 971414049 392650083 533128654 190585791 459425243 228758533 270361667 49063235 175102965 901209880 992667417 244876271 799927396 237316697 511631316 570192545 889389729 781682528 819503300 826275764 958981659 322190448 845155463 313169177 353921608 690306107 943606391 499190653 813762029 934170102 996065515 473499264 581991660 104303412 382780092 567448700 974501466 714473678 764071336 536801900 999352702 687703431 862506129 780575517 904667090 985406788 996467700 720559404 779838641 656397110 861463833 25056698 501379327 920666438 974297355 446783138 481822759 692900721 967456878 464392636 722363184 82084148 330820314 153193420 913313730 109488804 508565482 656177958 724340255 432277101 863662365 208045616 274926204 229573601 706385257 931159355 995738303 414132998 972627851 130409063 756247721 568762574 659910879 265610649 435943551 321764120 836553223 310497192 885821552 344425463 473803662 797078913 826175857 382819272 655664256 222132219 305401687 757424685 941897277 113746973 747140699 908742029 930331503 154098632 317003461 213709347 716761055 59959925 385803557 930842741 959137852 420175993 934132227 706702264 849495067 80796198 209080820 954945514 990101537 205105133 754570237 947564895 951490185 155551887 627642623 965837357 974561995 803972971 961228700 204897167 891417797 224483927 833281996 649943398 867493113 948955293 968645673 71174149 237377820 175901730 670179571 361602920 473612349 10811363 809169142 796350737 971342784 230385181 916074070 732763859 733012303 217564315 941954593 165592424 589934499 953664699 983698053 345394300 832709546 156550659 393083851 344218831 635717050 14995389 944374807 469116378 658239352 212746709 306085125 421595972 693595864 743416950 845632357 122264257 779356966 905542182 906893619 746642792 897504701 588053958 773355500 276926424 887262793 76578963 656926370 387259467 580358802 98362267 851293937 585040100 987475826 425518448 556164837 504868806 931458404 776170277 866431523 933879103 999103623 561547972 691399756 123359391 985236877 419655632 834780175 792707016 941641774 892294331 955246027 68438049 152851162 663543820 717066069 175410492 682452284 549498233 896446864 174326039 839966072 548204087 742261679 327804271 751490892 627216838 779418526 579661272 843046206 323499710 631966744 405518401 980106425 396296590 792966530 833035477 902195951 39192324 541056987 880868520 988360863 514083396 522824982 580711781 702954933 815682751 951738860 42510444 160001332 349946287 729487855 381024310 812980987 93822175 573183517 962925875 964406869 991441826 997920242 383981815 996078638 347592361 583158258 840231406 961278474 279064204 690861948 639812512 703895589 92733820 642930157 716552240 852123215 725522806 865399759 801842742 885089007 166163049 858968284 286433863 652445591 926173484 982373299 899732170 932510504 16680028 896956907 468110604 813698302 713768680 992151869 66484713 861651764 341960537 854894009 208172007 543840293 403575676 597584379 211966060 619407300 427925718 574289759 91898137 604754987 193608370 535082339 878014798 995040920 432257514 766947111 635627309 938374572 621208620 657946825 984540750 999569927 988151120 999260905 50042958 748361706 641996798 929517025 786221681 830885682 853283393 905732125 176238265 404772906 744958308 840272574 953091265 984267451 535050967 930846747 980750952 991199848 304792000 794296607 22440537 178951215 348012434 541552364 316864836 947671657 952493349 968711945 726413284 868487357 736444128 951071475 286316222 973407917 1733401 631014406 935365659 964668822 625552085 744894573 492069531 679128270 728886620 833081150 79164492 556360787 710919851 821925637 694169430 814525430 291015957 878497418 844041254 992775072 60460225 168406579 553595569 930088041 303855135 340849357 494340903 741041714 826972868 900075697 923481646 983485189 978942670 990769440 281188088 508172027 224539591 299540307 158595149 722712738 839418358 978743300 95485488 463699317 730460459 883125701 594000827 897629666 411735959 571949923 927863826 982449275 700424314 754072202 6330048 997642532 302184037 392618018 628879603 851503848 197102573 705842654 868193715 875172360 282466534 851182299 425841853 534396628 252727501 523099915 59082945 939083090 701768608 791001752 691401113 758558789 502582829 572653543 328517744 371380389 208484976 229160441 537644199 942623618 549998242 909210696 495178276 861898305 449743869 730552162 853756316 925430109 743632578 750598513 672095193 941068726 100791081 302071851 706537277 884022346 433761618 454928009 275874386 470564818 566610701 777955675 182174769 778483296 24820749 927471994 471119784 962067804 348392194 604070519 159039965 661921970 274571817 704635769 705006504 724896511 248594984 712948597 861350642 927471240 822196644 865511775 444935323 959396948 554412438 894277600 629679006 938562946 828901149 892552380 753117500 793590642 647293832 975158885 506853394 601044027 251315365 879991012 573872717 982321604 397989117 823300924 496531554 557539669 183831624 335082864 429615675 719194456 450824018 844843425 122041014 607394485 562669555 744285432 901337998 952703158 942577510 956449134 94218680 245159113 48215972 400196205 78508037 183258792 630583498 787998702 664509000 878110465 435140218 913542370 453492023 744258965 544675807 761460700 950545657 991597674 298129176 572696110 739093246 950161809 557164266 745855536 745190798 759553796 44493426 658261096 206602334 649359384 951911759 967304178 985566077 989435400 378461733 724989433 969274094 992244854 714709470 957000156 926272379 952030355 665148397 670364589 820834835 860389765 499909706 737030060 257972465 953728697 834639089 928845277 792771543 943270809 559149952 609396233 735355474 834797287 852821631 858112242 407882465 453135835 656807959 934908954 464402501 987078305 204604814 869267575 132616496 537979653 185868924 281893801 369911189 774071593 206276852 481995969 902265436 902914461 392084786 766630378 241767780 567580204 920807452 934688320 94711977 670064384 317463595 970391334 920104420 929253495 550897752 727095884 591185452 663511196 468148887 606553153 13215566 178478882 360687371 571430271 766389956 865749232 1841555 821971166 767956954 874754585 954512653 979250946 922300317 939887481 986115618 997049356 773069865 995987569 888393195 969082030 251256840 315697545 630579818 713977213 907189126 958675144 648277351 821816336 135472366 714000973 472780506 860256295 892355087 972141930 292678916 355942441 871610881 971802284 669336130 737108600 949077060 951001569 286547275 878288436 166272618 470977317 506599255 798870119 491348021 575193579 196440104 846273817 131564229 177287881 944486064 945939481 373961830 950873890 576239333 990821408 605616362 769439383 975110329 981607488 238343627 694646971 1595259 347967114 267393422 669044458 978900265 985023998 152964150 985184793 540110425 848044516 710477671 978480305 292901571 746228132 199846961 839459686 369638621 572441428 585518762 736724285 617481180 966095698 406552336 594092002 944248787 998135022 437316927 535531263 453905700 473904117 990884347 998652450 780635816 950837900 251828877 477510926 879378317 946589373 940658944 962603643 506484940 744269313 720770335 746362196 713907185 739127431 509605237 875475091 298421670 492947999 425441167 853320483 142106005 391156738 198191797 693463252 547304477 605160309 869631017 924577970 399951029 565146009 642433551 863758349 213967390 449361448 709151448 768621743 367340616 779614717 133250304 996315288 830541333 852239565 121549811 388770811 586820299 645112516 96796315 665738889 430407188 556573094 931948347 950221417 616735091 617493228 879816114 884893437 431910322 499934211 910162414 963415469 936831496 960129190 810827166 989232608 717669310 819914625 437459687 806528893 808735614 875572824 547349793 720745178 696879686 844291668 231111461 740227295 318935684 464290948 416320021 448187601 758859447 790665230 627181609 634539025 831860688 889334648 419916724 843803380 424689737 710119335 795260220 983697028 459921150 965772580 334358803 559210787 956005007 988213740 640389381 697111798 806925216 975291968 124725658 715911189 280448135 753930610 869525024 932972248 927036486 984007474 23769616 936564855 51202844 398760857 223347420 712853295 600486880 625846212 338739485 364165968 643921936 844953711 795037540 831011224 278153479 535255241 98636390 663721667 252151938 357444002 383917010 606206638 509607400 596869405 724889283 812573710 495566358 642379459 879377864 936234675 393587208 900990808 456573251 514941782 201353781 600011581 914361992 981700610 415586359 910162087 134976916 997166529 41651277 827527208 552144945 589285201 53291721 991613239 20063522 309123892 302271223 363243820 186818248 673464207 2869899 673382085 862009100 890786458 43558007 169392726 722906283 874387230 818812637 997668350 558980344 592170854 646079283 993611490 746242915 786824695 460196114 467038618 326761074 689922099 993232765 993928510 678757335 728038377 684852078 839544861 948151403 954291278 362070307 653546240 995547756 997725962 354440442 801820035 772855737 870371835 324626878 901221943 678333605 904231803 810634861 858508214 210016715 872144807 621656314 978838551 880659404 906286330 484427188 861438129 736977394 921020637 196502412 260205260 97513376 797905385 314392938 460746169 654232559 726934218 841311735 999973834 153216340 539581086 257069083 746219034 842779996 867679913 797947118 803548010 713339126 729814546 103642436 371921662 25399821 288501429 700819067 837888957 360567247 537197085 159036747 264494868 358303355 500338618 600303463 937546313 228168161 459147591 782045824 967232942 822558883 992664072 828428740 920778787 833491884 937384262 803979331 891560546 293038942 358451133 270917698 446509807 83644328 353615237 822199315 846039455 229101584 288650841 452697135 834603060 462697494 777702438 292410334 558121647 865040369 881310700 180097951 501706522 560322963 621840219 547665901 583802398 302053194 568268906 890342030 972568053 929469292 973859869 208852024 270658953 927651254 953976920 131131826 152447540 727956126 849462899 914962710 951895176 496712399 978257102 89806571 951377978 154955381 221806514 358961697 572715764 585055511 894961685 845734774 884215861 592124996 886058908 615626385 933334342 491027424 773211544 144050123 222842404 423762649 819940129 905148651 908793317 420145814 611115646 668635466 863415766 751670043 784642863 364762392 954516674 693628765 739324815 484140585 694813508 336083977 644069832 447514603 739431105 767251002 866430855 453062630 710918859 935150663 986111813 250608567 697495406 261135021 945578886 423135729 471505147 427046196 838967329 423900664 442441092 769936524 920543697 128747471 155246143 61894661 857862794 171326181 248530374 318609704 670034479 782961092 947714239 142458848 163465278 918690062 939976405 727734309 874026104 824331918 936158403 390736777 737167629 957505207 962867817 655873940 715892650 360559869 859196744 899965051 925084946 856643911 871986284 348101348 978192013 699423011 780633013 592118035 983017112 254038644 995733476 356268390 558359185 412707788 445185423 427224236 746134775 993130310 995373701 676892246 887580474 30355545 150054754 650588636 899934803 194286614 691449220 523596582 560413107 21070086 42368683 928545988 971567663 309951137 739109761 139162157 408619963 90869877 95702323 683772454 860122715 371390043 903214682 594232059 865359214 702302940 837775530 347842808 850712155 932011699 998740022 941020096 984188778 926413572 978208370 893630112 903050229 117520292 739459702 511402390 697180404 194874411 637217152 845911479 919202110 950658328 968095822 500761761 567335352 216946879 351384747 938327828 967879893 885760403 988014393 594149197 920799376 654363060 680609199 953821451 986104903 416031466 920620722 299136188 871550579 191630131 690626498 178456271 268917527 690411173 982451539 797563370 976375384 317159719 512298182 572276779 777222390 461356889 490497090 280262354 844688944 531722695 742455869 991838211 996477642 898402770 912242999 824387349 983632622 162968293 682058519 267033027 337832082 404614539 856435392 69489528 978719089 813094718 830438823 141926652 488121326 989124823 999205187 468238276 882211956 726469914 842323635 775770974 977296700 307960521 657599457 72479099 843387929 741343288 844340957 145898702 274976773 575138953 859830867 67728430 496712877 238655532 618163372 297686406 478642805 166053560 275694383 716215933 760005747 739420725 831401991 290230555 847136310 301492764 715412921 893908773 999651892 826611128 938725910 901728090 959068997 239633139 399823644 425230645 796543230 221148444 886076053 132429285 174370870 256703596 284232687 438069949 444747687 646050266 807197360 912423933 996242338 449354936 711693592 154634862 611387637 406636422 717856444 972361664 992410649 74974709 542971386 389973190 618967263 239586534 955859160 874062442 932256038 574329520 931797097 772092730 836702889 679230358 756126253 274110938 838103557 956522904 958245903 142723426 149494864 867923321 885736466 609564667 726297678 836678532 980195904 151162018 572232432 233235606 579033607 794812294 932066184 127623952 522130179 977440908 992916650 114480720 229737582 544830247 993098484 547503385 964313230 420669673 797184624 835390231 943160121 69444994 687629909 630829310 851364089 573580429 980375889 206568400 796446312 225134429 449795109 367987774 752502442 795230233 957281411 194472242 388787385 776659722 947826450 827796838 931797049 847806421 917509726 87931519 391965356 526218241 990400645 886912504 983456540 371036488 881583364 844308925 899688347 740318222 884383145 690617804 932065082 708949760 860056277 286111550 978324482 7455989 231217760 512085489 993629731 545272664 810394003 174781172 666043082 85441742 311712427 445933652 556362321 272875563 470677864 606166947 988049599 777014849 860432796 678749250 775986303 908296665 976153796 745218101 814252688 583602587 852697234 935046636 958959055 587565071 688230343 492632668 928298101 353385078 514210584 404108866 782274385 795468503 964611295 658345369 924320800 405741456 953711064 89557300 95951362 31232235 365534309 285042272 746989076 573044002 847133694 926610185 990730924 401919474 856062045 131304568 584726967 521791330 668609620 75365406 455318524 196670271 668191129 949854869 992076695 613384631 960418563 441451122 772021057 139352188 789071220 922068141 930920156 625333573 865855756 168795991 229844263 576781145 634008204 469327161 718217711 957663131 959835279 916911502 987753220 494354519 756995396 857403675 973714314 553060811 668019256 127557517 205368092 132384386 366479223 334772147 838445818 400611288 697440381 46781183 515544143 247296023 426955863 71353296 268004066 360250577 532105977 56485586 714761293 638500407 925017287 643205012 780474158 961750583 978028934 160994009 610311171 751524138 756368434 148825589 339327228 44975108 148027462 971750146 984276342 356502979 667844202 161396386 210606650 719408065 720751879 6566818 900880051 468459981 583584671 513924719 846118395 181436542 235526376 775857595 832410835 827421740 859807534 639475636 962787414 537441742 807266427 888909993 966281185 818079556 820545721 292059605 393039005 146670948 286506639 509558457 530787265 944352556 988526799 705133037 894522111 463719467 938981949 953755545 968256680 266618258 747701660 696340281 817292019 195371238 999276554 101696544 621289246 802231877 903101856 605667689 935388371 257895717 580650286 6612698 703391594 908935775 988667865 6359600 947256329 228950755 492505330 351080762 488248900 840107625 874014618 168730835 219573383 937674314 975935069 287207070 392357819 201353225 924107339 534008981 999939373 999649843 999714191 592738108 896857347 266811207 415446519 231587394 483267349 994920018 995769482 678395048 749087671 867961287 981112674 316209915 495726069 314123905 600142906 120404366 857354274 716862369 784894421 626455514 707264176 18368674 306322382 735928697 920799193 347800403 494005960 571286937 991480767 952659006 968310871 633758741 796915021 595536892 634713917 69154040 810781774 757255028 801846462 750504330 764296643 626360743 871236297 49299685 803920731 882302680 936679845 448624346 451230896 394712536 625060092 707972463 906088911 337500201 730534929 31294771 866465316 542262703 847708670 727194802 855133168 254992518 459886535 707108455 766169232 341065633 626775274 740091314 984466607 627800384 984530968 938312167 990072476 505124016 837898026 212112141 865925061 811903611 943737223 291918615 311857478 693705464 785345005 796887504 852861670 228113114 547722255 621213230 644386782 532303071 644826111 485060593 729169144 832820644 866144807 463165067 537872014 389363347 767674147 804249727 845684954 999071042 999101123 865076845 966459129 378964691 852081993 327008052 811456154 663086013 705946326 38345648 692581216 598740674 712211726 785486132 884293025 277844728 483523516 427908907 725400994 46599431 851809353 104566020 356899632 246623856 462735626 618924153 687519366 92420687 977193678 887968403 980816517 234009121 243044718 126645143 290521592 164725215 419248808 903910377 936643011 23165059 780007476 37120344 204423024 757956317 768135730 808743906 838508817 941020118 996975288 587441839 772307286 54954336 808693311 753852121 896032328 973109350 978848713 857715024 886023081 569536973 586763280 732953305 746789994 934981099 997101938 917689502 948722070 639389985 887683137 739383499 785330524 184756426 911270602 861918642 990618046 996946207 996962469 133635364 933060029 148533351 282329266 337421830 587927564 978793194 987449656 988583209 997226591 138750804 370898787 910168802 944070855 197018663 610569090 331214266 613567567 426346549 900715003 729642856 933787070 805170508 894949503 192826978 581034490 984085378 986827360 476592832 579935611 9242753 586039353 702527840 927687609 169541724 187537983 105758803 814963743 137432799 711516492 938681776 969181775 767926636 898405834 452067296 603008047 310786681 513501052 220550132 228266270 447249659 896233405 936406325 954706682 852742990 864959042 686563389 970242616 453436679 666507491 300123803 814305093 890488729 974218158 898426658 958551558 211447321 477215994 546852605 752165543 358775065 513997191 636012002 758869988 267778061 633307568 384271116 781631941 432153884 708170205 422667496 893410812 831393548 833624555 755633789 811953007 760370657 816723677 182684912 928690936 83240140 235403967 384883330 887292852 443527858 760195127 975519569 979375512 654327749 958181964 665232662 668066739 162532137 763054018 23972392 665893780 888264668 897531382 131618962 424325511 868698901 884891121 922550832 969955045 343349565 516627058 202052337 872423481 567753536 631548966 954227962 977741722 585403299 672040569 209603183 645768339 73880561 139167689 104020251 709338888 32245958 670270201 213103438 811128042 41666707 48743443 117493386 230670892 367332292 874329891 184205555 472620988 911630143 913029935 720275792 982151262 51923969 598439164 462360102 992919585 29723471 960433627 596894958 952508753 59000782 430962137 151513688 969342351 828053797 844520636 113394552 594501740 115865535 887044855 536422360 777780656 234970797 464163358 399496354 509698471 811111449 886918125 137920084 963561238 186287202 678726972 597077473 675452748 936728995 942185714 822870683 926231260 328851710 915101421 257855164 579777767 158050248 928124241 301861829 506779459 43977157 487786942 192260389 322646926 389005277 432792152 740686383 983248578 442375481 595517464 540431342 701228211 507618486 909078437 116713848 158737849 667188758 906140464 348052913 469597369 925725754 963642871 231878284 247671904 59767790 71730651 249640242 935207494 295590324 332372301 256461803 912545262 238522791 386150114 737039311 865864057 11397665 669735723 806754945 897387306 271620590 308394901 782232004 900889843 284887034 621035433 599254809 887137007 523378524 813147284 553260089 558331337 748645712 941857246 93604551 295283014 356984077 985055852 915323118 920615269 696599795 859063716 149156992 453767020 116878989 542513476 473312058 676250600 965706403 999619830 721089913 722051827 138988804 445060251 756784527 805560868 861809991 965682262 263222637 686892414 503727578 815448377 386801126 653900993 913686055 958062857 680478615 855128603 11237418 974855960 352223539 976850997 420107323 514311640 751232524 873712385 617859685 920468229 820754063 976397527 790440276 861347230 433728798 841727703 486228666 959121188 722240230 910804165 280411548 401947683 785345661 958647491 263678077 366954656 958249494 998760482 285886322 397746994 480777960 910585617 595274331 609548412 892481962 909939582 305179627 664066208 772865898 839990542 160076632 232866066 317914198 454002336 670613060 924868307 187317189 282522643 234712266 467984930 974929031 993888375 585799541 592304936 640158725 754862204 718748346 937139552 275277751 780066714 143096109 263280245 952278577 957900498 841065005 881801770 594506835 791225246 94152014 978477442 74990727 327003512 388948533 441973070 216095417 280549666 704356919 949835271 194962306 665330428 933178955 958932383 356480601 982178352 57620634 64732676 738447861 868925970 957379911 960669024 806034074 896611643 957427701 998167220 192955400 425157538 632586910 895104482 35473636 979097010 829693649 903664386 74381473 136467722 703634173 736854070 833665039 875900983 652778122 901242981 917558388 992263342 828037345 980214127 15982729 409698639 132928537 377859837 73904043 89021890 852171765 982101714 493110391 775168058 228841760 466468965 748926852 828095822 222823854 759454442 867961760 874095315 803134048 881521626 116164805 792201310 823935094 939881577 784379727 801761589 854396916 859470914 273803182 482996591 15299559 786719383 260805559 733362898 578187309 649650468 735535592 867340153 112386711 639168829 831923739 949101582 815563962 916426341 852844839 859464336 463656599 820922146 184133817 948239313 375289247 457459548 472520160 900574447 694466525 797152701 428414291 621680457 28018141 174073366 666867024 717318133 868392453 968770943 154239911 264590521 6425532 184344622 204173396 311158645 982350535 986558220 112564394 826215827 491697951 515217132 735300891 893373017 34510979 195406155 846306728 996544868 20485151 471377180 6251919 619259289 335550805 406611707 162925730 935631416 890113915 994094547 711218930 933023740 422213106 863322822 328117698 540320644 613249197 760701965 345629862 945959102 429430283 441592290 705299585 851293776 942015908 976741735 436436503 488166524 163637333 754683538 361121342 480617153 506106315 657232471 401865781 550169801 406874772 742964834 970648914 986295594 897080151 978924262 993368194 999330213 473330517 501647199 589893870 787435216 191972217 379941911 704582634 749159192 71922464 612651635 747746311 828822874 518552977 996352067 682568204 986435778 81476613 942309070 62951911 893638963 534760829 597967462 301452179 568829647 288018025 458349277 450922833 610208082 381690784 637236773 119484925 787489746 632083331 874852450 221291047 412844139 694165587 835018375 668343449 968261406 890463487 947532041 821762488 969479066 485189595 927767569 19343509 144208855 4424047 233278742 670845050 727415499 672262905 744494861 556271423 737089095 653348297 666173921 813219544 883212049 216179129 700097041 784705127 867377461 606490095 611641753 568569520 802705445 33800844 182807202 106744747 426894206 703676796 849587004 820427417 932826864 375955463 740662799 343531085 605949272 286451351 787369215 963692517 980077157 360571182 763766263 527140697 556661255 625679470 757502795 209851320 745147034 593577868 594796355 519555930 925085260 88202978 678969297 938634907 939537348 343162448 465878909 65282777 419600494 347140880 778929227 142655141 240646281 294331444 893430149 705471489 987480930 123894160 311787815 300633435 316672585 474000413 673326714 298172147 508700617 443300834 738626189 569840555 880082460 417403369 728021115 506029347 637770262 527579773 592329367 640153777 927841516 327170795 925303033 544630123 706733667 331537977 628298571 608400351 889685287 515290020 756284534 952951393 971438168 729020883 932735302 348802863 510295062 615923149 767970541 114793771 534846258 818490278 858675441 689112516 818209826 842648247 980801387 15589524 273253524 797351993 918976696 593761205 664926775 493570391 867496943 234225426 287332183 677961554 792424787 943283315 995410269 185011326 824433907 26184890 686698394 93031536 986865818 363761739 575050261 429649181 730671491 168599849 276371724 638567646 949850847 354138255 575868920 477065605 634159478 324032111 898584404 526809872 966488868 16754919 129856118 748588096 855792102 480241449 692011841 397145654 493337769 46775307 673863698 163083977 234133687 753361041 976525572 670154271 682526516 681508455 720013430 802074524 912695877 240227037 663623066 357722140 880593424 197699535 281028804 890695447 898647666 224941351 468534439 511720477 690815800 857291150 900503075 390597836 957974457 883132177 985529282 103171762 258137110 98306840 722750623 410133360 849517024 576045879 963862104 46156851 294739470 326683503 532425411 847987843 865987511 658113729 790469010 953680514 959966859 873983654 935926032 540402497 813702517 254349251 365176616 805849268 879018323 653006024 798517092 855222204 884655774 214620669 291983473 764467397 768883722 529278607 569472229 845960478 995951069 953511536 983158717 270135912 322109495 319993744 959576760 489984038 606879166 534538142 818711141 87955265 720752925 355450605 759530492 655134042 698427129 433043388 939207662 839489160 867793786 918671990 926602934 102087544 395108917 335518245 946258832 542603371 736455480 146379842 844060035 496767144 573071895 178618415 535266633 873303187 905082630 185595938 649747662 498556567 826338598 254869833 750585151 100324722 172150262 218628695 458554855 768791227 906276528 620486458 878589805 162692622 697683778 268319457 752112851 158382687 630671238 77489489 336441565 698594453 801034166 856382257 862861556 284179282 415097073 687094308 860463393 421212063 460344952 2845823 643839732 218802113 755276078 593325234 699782364 442963352 560222215 790431253 871424065 930625131 961893839 48704190 470198750 295716342 861397247 686377668 807263272 850072130 984403580 130373392 233580449 733318994 827248703 497018187 969142080 260275757 990875760 215555673 804130208 615476842 799299074 226413908 977332255 454833493 697233538 776278310 845314604 441106831 937119881 156008398 812042256 366352633 751990040 856702195 866865909 240060531 523818949 627236483 924800307 108380117 502023167 168547412 186066939 654085691 665653069 789386723 981406874 402806798 911813868 886572276 892173812 972335481 999491739 441192002 859630378 892778497 945167921 820147374 850135004 252550190 685611945 189272713 192942856 892777574 974337188 35244855 987876478 211302433 948677669 821383458 875193534 218458425 260025546 414947932 820913642 554178618 868124935 446131923 966913120 804747513 924068544 117609969 483939970 721980250 788991864 29360796 155167023 211810579 900004935 626091329 739227525 567015281 992643413 799716519 950882294 796721441 982945752 458581741 692308587 483706828 651230363 614697793 769175484 147362536 314212188 426564732 521764713 55409392 166001451 99356679 942303101 88907766 715077927 758998486 901985252 722095526 948688318 847594138 886650463 414690023 548722112 100174913 419439378 140643435 670274999 954336799 987177045 908412641 910441414 780685287 954175551 431115894 991381860 837933779 875936363 913847188 981138392 858510876 952181331 924676885 933430880 193216445 283643195 967272028 974846669 395899994 807571007 483141921 924596953 805898606 990488291 379249241 850186107 366436969 853121641 998620534 999845368 779101153 846391607 50543995 133082233 374888752 844829877 410845969 975635963 12411443 708393874 476760942 789105275 424324729 921897017 773640021 832090309 714649342 912107366 349583581 824852517 430684611 485591004 516723805 760810672 315432510 616153889 258152363 389582972 888307678 923556925 950419435 986580341 502175174 997935547 664675031 884204982 12961193 753461008 215257127 640495663 610346016 653774944 118556132 506993593 441737055 756038202 214727651 693070224 602990984 888364063 641234590 854815881 781682698 881266216 664051280 967011293 717915647 867443091 87293702 257585441 77985142 304512100 826038839 957568383 313666388 647703670 411661383 976792750 193816183 767715371 192067550 486631859 886205990 943616850 918966622 954102305 830106441 974978722 165926008 226539931 690443479 741054048 564331965 977832050 856833097 891889610 559648460 595635893 418192159 722265899 62292902 684144402 892792574 905350800 141197964 489597525 920507187 932763973 760079227 925425062 600442212 954549682 577507641 733173709 637058840 991829288 287493121 334426954 649060595 650434890 213024861 309169473 297938880 617538245 749532560 956396895 352729634 927172986 350455764 526754291 398954187 456855258 710330884 944842398 51049464 799977911 792802438 920238714 335440395 706824759 457480155 980153288 471338253 593272197 836549466 976955999 619246510 665129336 126629092 769907011 330090313 842109676 252055378 683231204 534165344 741517099 119492422 849484001 210251890 918297389 20069733 487921936 377301820 602588742 947547573 958245383 562767539 889091173 96114462 611555500 257895350 697072526 424879066 797775471 908490710 951128130 969238786 969693822 625820059 887106446 69434072 121511148 582228277 603596257 668017796 690526346 43790582 293189444 34521396 715060159 125182063 163901608 517132875 564498433 908146458 936568936 295428894 561454627 409530482 604924432 812641722 877990106 873079312 935362675 955604736 979960052 329224993 702027934 354450040 923513998 974717241 994472596 343074809 368123210 120299850 273718377 820686771 924901160 468667079 604811222 158515702 354252957 39474110 540323076 459511119 782767467 578490970 596934720 70248567 757150484 970796427 990674408 686108591 948943930 339375469 612558541 309400327 454529798 306792191 471903964 150709182 404169815 578139656 692080745 713768653 985841410 302778170 723699687 124691229 996740301 455318844 746744877 136192792 663116865 6811240 523552701 684466921 707905447 55979536 953563347 990948418 993405223 536959260 628217184 883800335 883870564 586433982 641668604 912606342 955286658 862727360 902529598 808377640 868714870 714429006 723988236 186528294 540410343 943830546 992841449 526031364 950688468 109772340 699277814 69553111 216866923 517986444 942418329 464655933 886423779 517791174 719657148 557270218 607228437 384687072 716596280 713607671 879423955 847604931 977250527 727809536 930801039 910071917 912557063 381105477 864265908 58891653 905240935 341702024 492851546 25212121 474802518 875409100 931463515 249498765 876445542 990654621 996962402 468266342 935703771 960218343 983156073 248018245 933303688 234959099 955361222 409379486 647744712 63467282 347076519 359667602 736860530 32635820 186898176 249576256 670510892 939446680 989059830 425759147 961376513 478583817 982723994 235330187 920635487 432002297 534618010 193858410 773521121 489604123 647008701 328537834 605879308 555688074 918170640 36628146 567855761 845700123 983117170 153261089 607858983 580810860 817190205 992581240 993038348 994886896 995025571 695801795 895401640 631282067 745668677 648514418 669336215 195392730 504073984 261775171 530144349 985959451 986273446 440586099 505259005 334445058 638922726 232906512 568821177 94479300 681263246 886050589 904078527 528641019 807189955 325424524 499102698 858694519 936643636 53715322 866192749 690555221 731530493 609552405 851317202 70294303 157179993 392102846 529515483 393393301 683316813 518030540 914727753 914375524 984140036 352857772 551015801 369944990 664892170 711699476 802841515 454883778 691346064 91211798 835727792 738237108 772523951 840332068 918414319 2283378 975474730 659915860 805501274 32579877 745038553 659267792 798553215 135370058 701996136 149849862 997486856 753794516 862706786 129793636 206211081 388246448 819578824 978637606 993483749 844601716 957032188 561975008 858874949 6415095 423839092 734386121 768210783 394830716 421462853 533656008 800839224 873004296 874086086 985066901 996322622 475241329 682985662 587857209 728857158 111008726 921851587 322488086 966866295 159457400 755814717 232978250 766802238 484199489 489093322 40342156 42384823 773242018 786153930 514737481 589187979 717035427 724839617 850596772 990281538 708735660 936683730 156639118 481872458 876373855 990214462 629957787 839486955 927920974 982509417 151354721 751144026 805036108 897568005 988460372 998240586 996173028 999247835 145331270 521686270 329370778 386386709 85911868 102752526 350065718 975006780 550810653 938384351 380934813 512546033 331964314 912236030 489722308 660529860 213912963 330870061 422781742 718056534 122767401 799818676 609198387 747831521 692571416 788112935 521963951 645350359 68183465 189071558 431763106 621773525 796804344 862435808 997460936 998039461 251754842 371817746 54419638 108139429 78761308 562128025 435165289 552801546 512955051 673181974 766650908 862618537 144068047 749760590 453956039 580602731 856089518 934177412 115764333 202386718 121810748 798788371 7343132 810999200 662251652 751483846 382123032 547516094 584213443 700188105 51485974 649172864 313850555 489573404 661669862 893366687 78690380 285661695 670008918 929472457 609427259 655027070 890493207 960906829 829960280 866878646 601736263 863140448 565939992 657450405 477058482 707847546 854220098 894289454 739851735 821749217 344284133 914189255 942944467 978595018 178414899 310859486 949643204 976694269 10990253 107399357 208861315 473207063 608501891 945898400 665290181 684360375 116655673 661776692 75995411 875722002 944138624 972513416 719404163 932230178 60988340 86763007 302059425 594888993 719533966 813894330 96087437 933540246 526444289 704887586 650553746 651577949 645428286 753330481 107344800 188995052 851793214 992423278 720929594 825387084 369542685 445430486 980794965 986503515 488153463 668760958 701745905 959165688 250990388 715632471 774628015 841710278 598291429 877280759 901100074 948445884 633810557 703313428 402326014 941345387 401454991 522115301 455536875 753754865 83985733 967891772 562877404 818889798 208791815 798798011 323156149 831641395 952221394 993662258 580282885 733131551 457870423 903221766 267827611 666939362 963704694 972438315 192513283 381341779 171409397 976488813 425071763 873779997 422039084 425301519 604212555 979470849 281655657 593891932 638422336 718612296 790321050 805517273 450353594 885555625 128456819 586242074 330787393 905328628 578119680 690201893 110112096 661174635 574633481 838334284 365741459 887820634 836452771 849567998 549321893 736652354 298702903 552955861 879866989 945235565 292045134 791922390 24118467 724058057 301810027 929580743 232810311 938258646 833811136 976821506 769365321 806676870 851322635 943369534 344156655 425496884 189210708 592621734 317885221 481640525 200758620 626154467 791843464 926791429 995958936 996984794 952595227 977585408 59892194 629720809 386336957 902526459 393955724 972104980 845537837 891356898 963141254 991344640 969431484 997217378 30597817 829116517 482535905 934646582 896888695 996440772 327215353 461356872 709373678 912535490 888423240 890403486 626955287 745156655 371946765 379518252 300983900 456863656 990305839 997891789 865496197 887668801 497110815 699104051 355290659 539096489 547023739 950645764 960332638 998858798 838964994 984739084 704312607 777591737 966828031 976984920 941496810 991509922 570321704 819890610 59935164 730522264 75927500 541096819 297502446 426303603 519486179 618169944 12854014 235630083 729531848 744890805 76441593 584224163 587204847 961990724 239482906 415514960 638867659 761697095 816623047 828077489 272989987 489668495 552707267 969351388 177050658 772051148 450127059 711638733 20593682 531286459 440341874 577998642 208753028 620935518 927746173 976848041 105250062 999737407 673739893 934344480 668940062 686833086 874039864 941119951 610240263 898340075 765852726 876649153 490562890 583393643 61022505 563569149 515093403 668825417 430229020 905047808 427319825 935142201 387459361 826893410 685367321 985464166 715562506 743308683 806055067 896831064 592545078 614019944 671026962 869855389 418929529 671804956 666051838 838080784 923990333 971441509 845162190 914509174 14428825 628979904 671052074 814990173 320369852 895655259 863511938 975788046 766243161 948475201 958418558 983111878 111459579 836994642 842986661 968486283 591226920 860045796 656475893 776015498 643591691 910778415 688664108 755627700 431448639 961621866 200921827 930523706 223216622 807010210 463474267 869640201 318970361 329111835 129856235 930502539 711107399 791299096 445975019 824747229 615147150 890658631 924814066 926840294 309696064 954343035 755740839 872073634 97478543 611128012 889394037 945093891 668407892 683264323 722188280 779932421 86695648 591901751 873578130 968667476 785394553 842014427 923741369 962566197 830981433 855978837 742434743 868615217 748004046 811363756 880976299 972322211 295912 674848462 822219950 927187828 658953018 996973164 983076101 998015386 204328380 204808212 356804551 906724299 271595063 712167238 590549548 965028661 515712061 832889259 439664227 555197877 849293925 862065803 230490607 917276670 405852827 420213731 281737773 879304618 585691522 932011923 705541803 939398518 188734811 734851374 190284570 452419406 801264616 940926123 360732921 563442711 877457370 912175206 219316932 459018087 371788337 926842045 483620202 800486057 509336985 808273701 953038675 968313986 702722585 817067348 482797477 507366487 429222398 719652027 491579907 629670035 897937339 989074116 123440544 499795839 733740535 987896902 381292012 559756203 331010169 461184614 68303934 147840723 870201796 967793416 136181575 851909823 133499133 952073802 622820856 865324126 798501522 853040053 920105257 945636684 728971382 796137823 893706544 998688318 851695440 936019929 891850628 950205627 136531594 392203008 228228910 387354429 56291409 830025984 665364561 865026873 555224805 724111763 840866138 917148234 460231843 848209071 219501104 996794809 238197128 928679792 351750044 610850813 491034608 944613275 153773488 644750710 599285147 934712565 185559840 603411437 650549854 923973290 523106135 579526011 820784264 931692350 583223514 969809845 211339427 980362599 254115359 507795814 975428180 999473130 15716392 426167832 553226939 936284335 799999101 961459832 359299119 825178626 965880005 998958139 474233288 637121102 346619284 620381293 434104880 645874751 594993749 931646978 159565622 657814039 125203210 305397225 262239905 846511997 123274448 444843405 384777351 797784732 593982010 940284528 552916942 964852397 543121262 723253822 542499348 909820176 974587905 980702643 120501175 327860924 785904305 886142695 731466598 867897134 419875380 603799229 780175655 897082764 503173234 552658739 990453731 999170177 564081966 582122028 159627637 297967893 490975441 715060828 634837404 882346532 590471838 816150390 583003615 585427111 46072863 174764906 98802347 302199582 775821851 995616612 919952597 942082260 882153452 992249243 409571671 493900346 657087763 728146660 644745445 696544525 841523750 851491747 544809778 777602978 875125558 958368164 402925002 633465681 144261756 961791619 809867652 949213475 219105658 789248210 326813520 377941282 468920782 937765164 831558067 934510697 436411438 451965114 411206461 802323674 798785487 977531770 923109365 976415414 493996577 495127032 456108265 563174184 890493067 938774852 828243418 925997018 402574007 923546242 408849752 942626986 995898597 999749037 759477676 934696830 762580516 828489136 184204256 467925238 859498950 971066117 504395599 522315203 349261828 746613982 312021408 702232327 374702483 519491099 203453025 481926987 709232192 823570081 139485516 942449648 293083896 366786522 927152133 988372461 961080418 967833342 672257276 727171833 234332798 323741442 985342788 991014003 583234071 838693750 741758545 753428691 852132903 980248867 767892396 990213077 508437357 932372781 517942777 652728826 592458225 921491526 188222951 490087277 299364610 556762419 322650763 750920966 439506533 868081799 695372698 858382333 228564002 374740783 752453813 930541288 654452975 987138610 357379955 768027676 743278995 784449665 959710400 991634041 193125719 337623576 326890192 830033492 581824969 695410918 245919710 386412692 665886953 820449893 93334914 210863506 793996513 813519256 23326153 357249137 500591059 545038814 571613183 700671401 289639005 546208332 274512395 305033775 890563600 936807424 660825843 694483645 220985863 291429870 309349961 597972166 108905408 857051689 62529879 959256378 665520932 946966391 33644619 831981647 843380610 977365764 778829388 997306966 629874309 776257929 600956628 636979457 173432782 511909594 398148385 870649065 482839983 671630280 259538574 411267504 290546984 984191108 243988692 283006265 758145215 962565342 872717175 923370776 780347679 782720728 990840115 992748122 365218720 955909163 495510305 739992063 299143567 388909016 54191273 836792443 490356520 521105324 910459449 914788717 60821112 117231432 527439874 901618267 812721977 868543645 587570726 758921707 916219739 966449289 703753530 763328743 954795410 987886104 419148294 788283056 78250617 943687454 503331685 817445379 414060388 884305638 225013448 678611789 453842399 962442739 524992375 652599523 15217414 755884268 549766230 911319194 804595676 815604054 421445437 968945845 547041205 743845783 809784320 940073473 860864763 911553281 343268759 789673177 122332205 171506849 122450415 269633590 662870475 781560405 783409160 999940532 527695263 717746794 861727755 883672489 889347746 907724885 266157313 789952040 137868376 702953093 922453567 967551841 705031055 732518148 405084226 961577132 35545758 485004964 366814983 655861017 342284647 625264915 939516783 956713966 272879868 677391987 376893202 386572454 564636316 739843144 943235312 981477368 725336404 771439490 125023314 478653587 999130202 999285058 850248864 977094628 440291941 785925061 895645136 895921081 608645587 959308013 71746537 277587498 884179058 897983545 837436728 989374006 67660241 743755053 24939778 498141858 517321446 735792504 719946291 933865047 648164026 910349659 222569262 900760243 349293863 791951106 789738479 962766466 536542158 960811614 431992066 661908746 506039243 992175395 679642771 804531294 947603277 962811746 691511995 858634509 959206981 980286625 867853041 889949867 3733420 482395753 897854317 978449198 565565491 986123457 337583660 507527033 351190822 762092336 740257613 948726805 587869327 686466693 984603101 986201148 20288317 488992442 241880764 285557143 795874361 899469896 86173666 685608308 88385678 196096347 831893001 844132743 485204350 797819047 402566184 422679189 210826135 564388630 903896918 974785180 884145342 990703450 866629473 983625795 566880040 992956192 99718646 310382933 446346986 684150586 814650011 863762192 859308615 901598839 72415198 149387675 921724578 981108532 223361835 783639233 161069128 884984474 75990279 992999841 86199130 865055393 713082796 784135642 213511977 407501557 337291673 460192341 594373783 816743364 677491101 905532426 848678122 856364493 707730824 998118100 576754804 893316775 523565751 571994746 153562654 964211401 279481060 561323943 293408917 461961409 46302387 953994952 388826949 859020808 770391039 839187538 217007073 940575053 394717326 986704903 649589736 694363922 691234825 926120559 583963183 721967354 192203363 906907322 840440533 863826755 429682931 632633260 381315214 387002090 174954648 389082680 848424783 961094098 975191788 992135140 3575201 904825279 316998950 366530669 551288723 948728838 809150394 879273556 636124980 808351471 492291811 494818739 409522059 786067972 374686899 984826296 329866991 405533254 334682952 582222446 822610317 857406842 473092491 604760887 875857672 964914278 545114104 802594684 154899115 733708942 116053735 806066945 179925834 546269795 444752046 802791902 903426218 912680573 225956022 319794478 897309314 917794215 201687200 657393971 696779540 851872737 915565713 960008499 606553720 669126872 811288873 812459245 413148816 820999341 574803755 658477855 25251315 287895355 292745065 574004858 187279399 819155667 157881188 364471993 491562593 752596570 884177716 889091647 347936326 464243238 790801157 862818549 794843973 846022117 298993499 618637046 945620136 964753389 68812570 839166559 243679043 430074583 528027364 618450068 69839106 244084631 96493874 594812158 44678623 938907551 106784923 545194293 248538694 896598156 43424530 395771990 203804627 420194403 349618556 855588509 447452344 480042505 55243738 903792053 812093369 867022746 858425155 944414389 981594537 986133942 834488335 985110941 880926980 988815602 855863418 887237700 75346389 971950239 56926526 361608824 879974713 903508924 736190488 973512189 19937227 29020969 814074600 893076226 57792073 176500938 150154959 595903002 626385186 881838732 132148287 445683582 552223950 586650004 102179286 218407711 712987755 857020052 375333978 906516133 750237246 872356874 182223202 398351596 625380994 733715045 900253113 900921235 277377363 308322671 207271343 779592959 5317442 703381729 75484025 438035524 916779247 965691221 633417682 683284135 151612266 684188077 93987975 857829593 123043345 456746671 806956176 997688972 4956511 924496863 535196968 925021132 662287087 696894243 688293133 803052380 779443719 781722256 712619807 870337488 476135912 867627496 360788038 800722800 632551914 980346920 753316429 991684921 223066949 698482321 384451784 902992615 93499893 468154280 12639542 921211809 91771957 456634910 779159131 975143444 394051175 878906133 636394899 845622859 236674215 765562628 112093119 860701502 508430658 973597218 556738673 829765351 101566367 381646048 152810394 698638153 743183039 897813449 603885810 897529031 859353438 937491412 944234724 965962510 644224501 961659836 572598699 581207251 31649332 948199889 367393054 487797120 233386300 512787085 396595678 765722947 596680393 780287028 819481608 887098108 573905733 954568817 777302125 806814326 308095949 941288191 196916310 580141997 305130090 948566191 383005980 743438672 863637295 910371769 66454147 473015383 697708259 877819814 758476218 877121347 261475710 960327538 806607347 826737557 192451680 400723450 414484120 752759205 404080210 532475181 752240589 822198896 964359032 967519512 886358098 928484018 710572407 953196659 713241013 932963182 778606365 903791186 933747852 995391575 820482522 878552143 942063102 949291238 357391858 463518498 31722766 192054296 829496286 912687346 855624092 993460793 360880439 740838789 770298575 994770608 328979149 816095646 172548966 228600989 539616156 736285475 162457078 375928401 243040571 628949753 858334290 922710129 13541859 105833598 579750536 832954703 256917300 759979653 895849191 977447032 508125815 595169488 664911736 938573621 289369860 957640858 522066207 594178538 146218149 187376344 232087992 624419620 455279640 699384677 855197598 917899864 178923746 296838152 717921158 859485988 347444580 646424287 921982556 985872849 735888805 849463384 114377052 724030504 31130907 720913316 653526516 786196366 350752636 762415209 136959113 822354493 317086877 619146019 444304069 643260638 811253244 868201697 591841266 820831835 608260860 738612959 160736227 297711798 389644932 681237468 887641562 997692771 98381734 370484379 451144578 492884526 10901106 108491372 326043688 993713936 276005779 934060975 340807214 474113370 753895141 928537983 448365182 628210059 427522179 827987211 392929730 448505059 453016875 811413958 502949780 602786883 625766847 939023204 494506117 931561140 235117300 402388558 665443876 903982784 398319623 682325557 503348290 599756475 145518411 386258871 512532506 933499694 236163284 442831153 31979363 902878743 863687815 953518273 34009727 73388737 668526306 996167496 768681010 898405141 355762747 557563148 921473290 963075493 474277767 588191957 647131634 683323792 155263499 509978883 340812356 455373245 849773089 856783290 936284368 976053120 973533151 990867638 436874204 935581927 412324431 581123352 994469544 997539702 774905462 782423884 554300573 814172514 66050712 551097102 669043556 745740630 788195863 840572895 863144623 971048892 527875542 963346985 151606222 420458045 270160088 724781512 715997164 734248534 611441265 660505396 480631222 548441549 846909892 862737748 7072193 798766451 454841322 590520362 209551576 964367132 624793798 785936482 336565941 752296958 77098780 724547965 939545187 955442821 394391418 419352097 984270851 994619786 250478756 660530759 284276506 767832781 785510819 843866708 733072304 853580171 847116511 993033568 984263269 987941246 207432004 859437840 661935181 720914420 833363302 974685410 871027046 893662378 778206156 929629906 325662220 479560027 205836321 749724380 840063247 973199373 490695769 639971121 394963290 708116305 10602904 41020944 171606841 258111759 478636922 686543291 157218298 869836801 766005442 858871466 729010035 868970418 417051479 924935335 658289076 702215256 615435223 700543296 89454993 395254717 639295838 744518380 57629057 533496577 406538088 953303507 467595555 722210957 113970652 237698172 221440159 619096579 717549004 805416870 400203972 740621201 87025102 229983938 446234301 774474756 371651168 997572691 315866614 519758814 501038917 523700565 469107594 517980111 756987072 998801414 819426449 907171622 104829580 740994889 719713188 751054032 61000724 551650675 213475618 988548667 441170456 656664129 973537781 985284978 738745124 870608793 980195208 986304116 661961456 724822126 558875156 569801892 519492169 607844963 263547451 739364051 627882551 915342249 728730839 954246465 814043909 844887913 395166323 788817276 992467796 999118604 657619797 665810545 192624476 429690218 68511508 839325650 120444517 781527206 569601544 590727128 621071586 702988349 924182650 960642817 214044850 854441492 733241053 890863632 681291615 860538808 982582526 984372703 780507303 995890183 198451440 430882479 176865184 968271416 14415815 261485901 688610751 964823431 585383531 910585574 516400222 828800788 662903294 857791022 24046583 558446985 745486286 905541662 159714334 492138222 701717457 911044949 876530816 878542770 258190413 878712208 50940618 891273107 746477829 843278657 131816637 755908788 366595725 763285039 151100385 293805341 574380718 976571089 439958223 662242011 507622238 993500153 848114903 958505679 613313683 713184827 478728699 857856038 391392553 591389362 735057952 954719654 96085852 288103575 814429918 943361860 922829068 955923848 754363374 993700758 952299303 969902996 896013236 966866464 609959208 808921266 165328735 175015282 518892574 857326636 930368011 935103890 283452597 661154014 847154743 875985217 327064463 354305105 242817677 936768271 169472437 449952300 545649439 830360652 565076931 985728294 620363305 716246924 132701875 651727277 941717103 941727042 241913876 571633829 780618647 943245913 558944940 686622652 237777217 814805000 239293342 485192599 530954545 715107479 121584912 730894718 785594207 841185942 413041589 504828540 359886513 891563770 831365037 985033613 248568524 423956866 113832833 339139790 758209092 874084391 329148704 957509507 634688017 856150400 269463129 952628424 573573029 848966938 178713849 802308113 604739769 608525460 135565374 882702470 275304651 590589643 568993424 905479299 955216882 971752401 849969556 898696161 785740934 825548242 105910567 223689677 472089377 598030679 629411343 810586602 921964226 994629915 294700576 710871835 816543319 895178436 421376004 984246300 37789820 625036774 460862362 499444500 49102268 60578865 829508450 841834166 820269476 944578787 528521105 990397036 598378878 982286082 189495397 369440878 82758866 633187044 535182495 813841523 800353984 857874544 678563093 902356216 788389412 913292003 937026507 980595661 221467499 558268793 126885215 766704035 681122029 742177736 162851476 291962213 927038845 945897351 611878776 957827258 661682521 957339199 876824977 890072280 995465339 996376262 606742747 840633618 872895591 909055394 809493429 888112736 998032562 998137025 54199093 301640510 108253575 452313264 803283388 938400791 617109519 809886401 40901352 447718637 660265503 730818051 999873863 999941212 175658127 809679373 814517677 908047070 129470613 302674015 431854175 773448802 854758963 864211700 166193823 569900134 924923807 994380396 332456554 540164829 545613408 589748608 285574206 845165993 314916651 476250048 410288883 662282562 292455039 603716411 472844896 634620654 763336568 778076323 373068722 950892684 736700022 979928510 338136146 941213872 154598395 823478851 483354800 752061919 668301916 695287152 893831889 988605078 830817289 831224423 986355172 995504206 112678692 845063288 535022025 610754914 31524868 121357523 503511727 697930246 975649618 982122973 957792335 988909944 783131876 789408179 563863206 884196226 809724931 956522166 841774453 848093670 270688532 907698332 645381500 767728734 414408820 662419816 661211607 958758224 41660831 884483888 885275389 888863047 702841183 971581027 543021993 992673911 860277849 883828523 478801096 493192433 881247753 961536741 58875691 124618095 265541752 418769002 83488360 558749920 415801132 480739272 559979514 880695072 232093444 632788073 486295294 854052244 470044386 515400217 718258560 950536751 236784634 862420530 711208441 842111029 182076031 664145239 277496278 835893691 58567336 237688274 53715457 571454167 461066151 655837120 564860572 841988039 12348086 536555919 716353669 984052868 355416338 446340976 324172412 672230708 441763101 562372748 853026996 905716407 621872877 658751594 341113575 465853710 201206986 791884822 345233434 823016873 732805196 952640693 542681469 822424041 181087386 597252694 771159018 810284455 200689585 957196125 165162432 952113358 983626971 999766682 468958803 802642386 636021426 795576146 45663358 432702773 64382673 440956503 485650939 676875866 207609132 607008645 752144181 872291345 908157069 937632238 327251781 664611152 579765675 857997753 658503833 921452863 154337660 201577569 814181110 944951917 491223614 678649120 654179592 938668000 476341309 639140376 405775087 842469244 657477380 726434777 710493312 821646480 594235972 605740100 298808083 760478103 780372881 910608910 834161799 871025319 413154636 893597373 775889707 990366878 117716577 231360294 352384508 886370553 928132854 956503617 794996241 830481264 441308047 951747019 530646201 760886174 523615705 567842167 278898287 422929582 100563 103533831 131542671 473283209 78726474 791069090 931042859 986487665 522247616 753997430 478427663 758212207 812101961 936873467 706344585 937431523 698014793 826840644 612842040 680128132 482492537 981268707 71233070 482389848 113067922 284707652 145154326 518359235 538030413 825640983 450633383 851152693 27105492 728102084 2491401 840057477 152210356 266773330 828898280 961800393 253042754 964956030 797130046 814978998 8375894 237777069 371021562 407648204 993667066 996105083 402623744 736901928 558519102 638659154 273919677 448361593 950031748 966630639 374208427 714888595 189260092 514149637 690891969 833080887 355458837 854453266 17786726 136878821 550850507 954763945 843540725 964536616 921786305 934848145 678482275 685993357 817856817 823380090 748744845 883822439 891520045 927307052 432838510 697285167 796138706 806265181 710625188 869201112 9870524 119235640 192538953 317529144 861558808 895887354 641282848 849603522 89048022 596275008 35537708 915283102 812495464 922246406 902569146 976401619 54444011 99279896 19799974 434857875 824127798 910219377 236649996 953522995 971742040 992160007 356501791 920301392 516802071 871117167 988358366 998851306 382086525 748063300 956166599 991131066 305989993 508570061 619827439 712883592 299885504 371232116 190474509 854919473 620679408 824204505 236961690 723633428 803961025 850342048 549672419 870967280 750749360 803929860 41287694 915342863 178232306 323085754 66800357 289267686 709301645 818208985 160816352 853398077 585268644 738774314 847679463 929922012 861522146 868015595 696476381 982901535 588033154 768597645 785336045 788971088 459849090 471177654 789785596 971764489 895554074 912517197 841995222 919587087 890811311 950553616 77015566 851546581 599856263 760467736 772468966 873212455 667420773 948023071 589978573 820558594 104472646 177338086 68250068 459888653 208741611 587996411 176476700 883948230 514714508 682055968 592195003 700015578 604105004 779396209 534724708 994817930 820420876 861948954 734642676 863787047 522617936 802777355 692924071 996235857 451180342 673793285 883737298 947215167 790787301 955231918 511857704 892757781 431285071 500600982 76165904 598161551 780770903 968767883 866414247 994595762 252809324 999193601 29619904 722678804 433836753 720934039 249403752 443215068 612703730 666806011 195602071 322733647 343850852 379791115 90632863 539680349 82298386 441111848 476217738 720180229 88622869 585877788 357918064 795059046 559370117 975332252 138308966 473577050 854208212 982825419 894481031 912574429 950668682 957328385 372211936 408654967 685749936 780166505 954609079 960416784 494154531 913041653 896138766 946321328 575378287 631699551 957955549 997702452 913247615 983224590 548863673 625424440 991345590 991553314 401684001 522612990 612444626 868736774 439607255 865291153 202741033 284840486 65747196 204915805 199799470 863611582 552419197 961624330 1621361 485791900 327479775 752198250 980525878 994948944 951625460 979812582 666837241 773717089 920751089 996404460 583060914 903273894 812606582 834548828 111448106 531138485 83704121 169949446 982326509 991560199 299226490 428068666 590883201 774352529 211471324 556399506 465610582 636713459 592972076 943042636 754660743 775308416 448255920 859762556 949449188 976294725 330537083 999666764 769218510 926484445 977752646 992922102 176636578 705498158 392157879 648397334 170815815 503686403 436255073 976578090 936479325 987553578 114289050 506556444 142829321 202075285 973379360 994928365 890332103 941884581 403945293 422572117 575377826 578157010 154791744 595280321 485572971 727885979 929485927 980141153 160909775 722001076 480625716 931116751 995318643 997492094 618087538 835055785 350210266 539380994 652888187 661944071 919768338 945962667 289104920 948341495 959015747 997305437 24457711 829998649 635474591 848416649 883511342 887261227 463358214 476911947 784267462 836800329 499444629 545977526 665804802 780958201 404080744 954620957 769530214 972159149 106818123 545970940 754900360 985144409 805168992 928167584 526043813 857170910 465760752 729143773 475407781 663555034 836380776 912305758 62909810 378591474 159866309 243349023 256159982 616709857 423598178 869166077 16653422 914627126 323375429 463254196 448659698 763684936 749207992 941055041 746291482 966338569 393766601 621961770 591840064 745828654 323148653 429325685 161898038 618345751 153093652 997548718 174103831 681156728 555560003 774355822 924318052 989557076 785951997 876019513 571814791 611954191 403004151 949624284 758869627 872771579 898105562 903759200 18182127 460123894 605737977 689645300 666214623 871708075 551339983 567527741 67675449 720843879 295771121 308646221 830726333 968449850 486861162 824157423 715127772 979689999 482605316 983308331 867957767 909167303 795088431 843152940 402363415 597600239 674277357 712457430 820576870 825978552 464107100 873363761 246466004 487720356 64104766 724220923 101294508 732827176 225902182 531236366 58263402 660952196 433781787 526719823 962355500 996381442 172274743 256931336 708347855 710862815 502339488 806275221 412650444 535894088 173690546 883036115 356157633 521277005 358644646 673616701 214965222 572655191 814874998 939383112 300865921 340893628 886696675 946804352 69503951 193956106 322036429 759013265 700736036 990583559 392660198 999880873 484401278 951644842 618000225 955920257 701031195 962944563 943421212 985678425 392098668 880570672 187659724 981893594 834432940 899978420 355630010 525907186 545529292 644541506 393802774 708310982 55180923 374545662 332076529 447277792 684692880 908846810 592862218 814617333 342039283 411200088 466754878 668995297 884951105 988198046 499253088 889454124 886536259 977647689 888956368 990995251 965527128 985908165 111599520 289411052 455699703 932160582 375801832 531054803 364053455 488425381 178652451 517950271 971808298 988366586 225412699 256020674 186140883 815184239 642874612 785186050 230305895 960918421 325429496 387725026 477054191 911818988 924576784 957428882 29433609 560593124 497443636 676852193 206624402 306124848 525439471 647662083 879264967 916473599 795232468 964682048 447499944 690490253 810526715 980569532 742862130 822081281 922101923 977040209 921339428 982746912 611944523 938119299 289371878 483042716 830289877 966708803 562481126 851335999 57295505 473154627 101551309 340448578 567384599 583544210 250866060 271745372 371402172 861497554 612016504 874973358 620174794 768990196 236696188 443185171 459190036 810511070 360779030 612874232 134504196 821090961 747939149 810291114 52513933 561102553 758541868 895506192 221210835 418551079 578644746 835528857 575818823 771213203 376457178 541548409 621317979 814318244 285835318 993918764 582345369 994739333 138839958 319842474 653793728 683302961 280434581 848252020 633709969 780355290 965781396 992617661 859885002 924861881 564533762 715852140 380435500 640256292 277402865 443824678 855390109 965028710 919039999 972907759 345170607 436875374 827773177 867500618 900574735 951520570 301630035 629458469 897125765 908380604 937326507 937528868 34398934 298886197 109227858 941753144 192082679 839484925 334789866 713605715 953883679 974080847 170215684 951322033 302398054 870617457 266164668 791107892 322369292 444705161 728664186 911886322 711703107 945942281 567706368 896653621 913468739 970943035 682783210 950865744 349076547 723183362 471108641 937420764 642639276 805863072 965943052 983295700 131039908 709144678 982427292 989344564 743563581 810779004 296720203 687180658 5437335 332479498 252804659 644965204 958617799 974932942 506897363 830948912 258390046 428395200 384446607 461859899 146272466 634945560 635284307 641805754 94310965 724871470 890579436 999683368 94747706 709059632 468311715 807821707 298178291 500157727 602670584 931166961 134472173 825888474 817935777 914427841 819845028 983083130 82434799 535651091 676065637 941960707 516907541 618880490 425392923 757229448 309882921 692418082 381369173 673901316 536620557 867370441 337399959 622951659 199868225 762160397 328579321 463544463 334219478 809423655 201619052 923841064 251579722 540064507 436642294 835737220 616131466 987955236 742403672 986158232 167667526 495976810 258568150 488193636 892372241 939740283 535784436 664721640 565052176 961877240 493573580 993918456 4184161 513887936 331990230 891508708 166655456 718129213 912438475 957873484 327710393 435528509 972637459 986573539 923672594 933781084 37007139 198999424 625778513 675336291 252938699 434967387 548394473 794594496 886109049 918304383 671770126 948016295 73659828 632888190 799374226 849199935 173294412 486347415 290842830 651460642 290510663 853163171 544815007 830745377 144920744 994194874 134086555 367713386 186158734 631541779 355122286 490393956 456298290 880453976 825749521 945845402 35345728 789157470 656177145 941701356 963607436 968383712 834735974 969780392 485942404 518644299 641007307 959587987 397114835 822981301 952248294 957552352 684570002 964550638 298122077 976132222 109377546 677368931 67993345 539141239 578906333 836654464 157541591 598858561 975934122 998054696 376223797 456216050 592923610 849294819 601977720 650288505 913634376 991300028 268284001 618323313 897910012 920984313 626052861 883816202 131599750 876897864 39624828 433214705 944455509 981993941 288309101 506737666 290918637 428346312 720519194 806908196 549229873 808372798 191511267 568625245 682853400 990999253 628813567 986399001 969766353 975573332 782449172 946599672 733105060 755415515 486082992 738020027 757401796 776045168 324462745 562306435 944529766 954030552 96561853 614345651 474179514 722731921 313358008 992621117 900362979 979491383 129478404 988014051 190105044 768158502 520210655 870835988 495602143 897443740 845871962 990082352 987743798 995964012 52270517 547222433 863396620 941853444 294402224 473206628 139912699 892028834 853117381 944448091 409589854 889341171 523890206 947685917 635674845 922335012 690233081 925626804 179382903 819720333 22756228 670749531 354557314 562773490 533437879 766473547 326569201 582653806 294341068 353533795 179336920 286423542 142107282 532636638 246268414 346828330 353843478 840348559 548245418 771183140 620114008 893520449 659233737 997186500 581157847 866331363 681684111 688402861 784482759 913291807 570755602 709900784 832647921 834337713 368245424 656165082 340447364 566623643 293368806 640489273 105952160 538258829 550415152 925621559 603811243 615206029 145596427 484918616 98159191 589308432 683150054 684767706 462627833 558596788 269289749 921614868 149876199 405787009 778403438 814466789 888116967 895579615 383188035 991067592 225116329 564888620 355412058 652348784 540814077 994226677 925967112 984235478 273548816 668526628 387996375 749211968 30554156 109787671 263864128 837921354 918870599 993174553 712368305 888953143 333701032 999685051 868545806 926376597 529766193 816004501 134012249 976428416 389275892 804842602 383530762 408078500 598212825 601392987 171848304 789951098 310600691 880046631 77079611 485576932 870348410 887097253 377558110 662075223 395616827 488518890 546575496 999995116 524176692 578680051 311927846 789233851 937807210 956102733 322279499 424332369 387465418 536870057 92272509 177946777 412371891 794503673 399518373 749246477 848626180 977099471 718546837 800949536 852815670 855245513 666068326 984072092 237683654 550393923 711385232 914286634 386713148 917816319 538521508 538767620 665553188 808201725 305098859 743041906 115174913 802842443 840903841 901846946 124311026 197949770 14661761 462454277 352239934 431015536 610338809 799666762 360271215 605136369 721987614 904201854 473450702 568821961 938539596 954995620 626880554 790471749 313327788 567761698 383832967 741944125 897062480 964654366 859638790 909684747 856572909 935429839 820629429 948280305 773073745 880013449 38996954 923987484 419050730 807992857 643576671 923228002 488555613 886730128 389640567 633553353 420656795 764155235 64308719 199636540 488157961 739914441 698324513 759147052 319404139 778889631 776173079 875687053 332253434 834773996 597860601 781084124 283023276 914109689 112047674 991122056 491890540 572026623 396956126 901993664 396352481 801847801 474726397 483290657 879972435 933831275 781084044 921307964 202619120 660951595 179443280 649490483 909152322 911202544 785582978 866223620 505250260 641096534 167084596 757277850 729436125 823022381 963241085 979882520 875339227 983041175 415507770 678452450 555819074 743866931 839253232 839322259 325978206 913997710 246564280 972958482 818083342 987747260 955422167 957389820 522450249 912173039 519322802 977069333 113946845 656642249 618440454 757406168 950846729 995116436 932021175 961126754 129033178 224561899 389902300 569158045 230729411 606945271 376784442 787420504 758402195 788387999 171140286 721928811 177070397 516418711 640489465 728423108 67222783 551010716 672956403 782439846 720783263 981060439 400974012 742646497 522071478 751507161 254162693 905475690 432825223 545838541 231834788 796860549 672495647 964101707 508628841 645348241 783298085 883547273 745476862 842981729 811109051 886031646 431351361 637437777 559171827 961845028 640204166 972217003 240114534 771849428 145327762 316635634 243310684 665612884 632083780 961353587 466347893 766969701 310894236 370465412 619119554 769445884 272368344 353499998 471809282 771141810 605179092 850258525 94538626 553023569 247806710 811574513 19607722 551076521 519004585 888972151 639562278 773155433 306129642 699468975 94967022 233950002 752906914 878218173 550227395 929454462 251775947 974993673 163711076 222332964 118017928 278675916 47746484 102933935 411038857 987059062 145058345 362569639 138120579 560360721 457923080 719586979 970943948 974897988 929446825 992067460 912319943 948221983 912668038 999061437 905686769 970625490 762433616 851252781 581216500 668145480 921099147 937887062 489617107 873516111 14874346 294694752 703475171 855065795 604389573 722417420 221612721 678562036 963590595 992929152 347810520 425086900 886066365 999099234 534255616 700209294 953025891 956455182 445891437 655236954 834374940 862945768 917646693 972485938 806463810 924344027 116099231 858877238 641598327 974920786 196868370 591215148 685524545 800155067 595192622 979696692 457672754 469826919 729517856 764714146 145015944 790270300 191155883 640989721 957398179 979283867 650624134 771285407 515531890 858201359 984935658 996291335 524870583 963222449 766135939 926845501 585820301 988180271 896883854 913126007 850529246 870227945 936583531 996383531 532542830 974176939 141229418 251256377 395732145 895293867 248677284 678575425 619477263 769602173 122824457 689520779 841513907 875210642 383580553 569194663 718263828 846518827 654434882 705501061 516132714 863167294 904865541 908131116 479023951 739666201 423472164 926827861 121606717 338018242 107527099 161589783 22179810 295508600 469314631 645680928 950472608 984506026 345211144 587901455 946884485 955879274 277691337 844865813 488796695 730163923 765203200 857945808 637341857 814560820 245900462 654013652 866501829 897312598 447003022 791440249 988121104 998796107 384172886 977987352 83183806 405311789 485101298 902440004 809922739 836805204 187013698 913252357 346481274 760781942 713035195 952539853 935708569 965299799 409781584 414822318 112791013 506753412 755279402 778408580 90882056 857388624 554482046 589209526 644176548 879741306 698886805 800412134 881331928 939167627 561055331 823602297 626351031 899100066 126359033 770839610 133526267 612227095 730924158 996253277 28302444 990531107 306763719 361254337 517533051 792687792 471205952 562011334 794412406 947978528 998533932 998910025 545829316 878495279 348187096 978254104 449493996 854271779 96951798 466273427 486119364 659502570 695811725 970707880 71895453 329765638 331088451 910447350 137462024 626524726 466039651 734198910 498571966 606364631 478972371 945265405 875824722 999801773 762246038 838727826 150186836 975158684 616796253 977740665 622539639 826118071 544115469 998121927 835244981 917928692 466868566 782829476 318137402 635882574 923874347 934546455 272080164 294230845 516043588 585538343 189422026 190933188 498543663 637111454 964582260 998547156 773134360 875843596 696882582 765265565 708546435 740223764 83247876 179670409 860442001 980879317 622973421 865724490 19666316 934141464 968335364 993369711 543992383 679373295 352420999 775249710 10752283 974142849 674360984 964274275 64733540 705111428 381782045 880294863 351527237 417476645 132739725 298997767 44901975 931749320 171383789 913601932 645477685 999892440 538522018 802572590 737215421 956111317 621773701 621839608 782768651 871015400 593186951 688779487 3169868 101131557 460749446 980238311 48574191 879810626 818501196 997130076 43974857 126157818 478275940 581099308 114566466 523391207 173810678 390025889 640630515 895332241 866257146 929775038 567951886 681822374 928966276 941227673 589955063 643101345 640244354 909984483 416656680 582381437 493059362 747114794 818399898 906352964 345839564 733703871 715395554 768897709 776890944 861915237 623974682 712748004 382333602 410482269 815698704 884904682 246601439 867118675 657756625 958002654 95030859 317612317 326926436 831344639 366445458 794072293 293666605 925141876 489363837 964050048 470585266 738106891 607769489 941469982 53856087 301319176 331398018 376458383 439758903 730875296 719218099 837396664 342669819 776978420 540533649 890291994 345677404 453312521 591389469 929711423 949475771 967851479 566426869 903289460 911436502 955807562 266986079 933159772 623728468 772490450 311892662 754847484 477352302 796561287 333209776 829848385 975098934 987430470 728418730 967792215 482505167 561490392 625115043 936850253 282294337 592709110 61056185 938666715 481198227 725521034 827207104 962116398 345338667 805396649 442147842 814524619 120046826 985978469 930637834 973429910 184463225 595118271 442945716 646263333 881797382 882752989 990010986 997064095 869466140 961541879 520494437 646872019 204128721 424823108 771065578 949876463 863021568 998628186 90859622 154502335 39310883 908977982 53424888 743569220 370475290 599688061 539614705 618263018 228554769 772591973 642821232 920288826 730036491 807701540 344105382 517332002 344450127 388266669 967497161 994094737 101771887 213843992 994699598 995890394 464421839 603581735 541778833 551252179 85247465 181524286 133111998 807501356 82668544 596364310 36666340 391901039 153808185 964127626 751569234 810206867 148701857 567949511 490629775 851125173 266102242 789213803 251974441 718075922 346286925 767016082 392631792 933359202 853090521 870893305 72140139 715658148 45543774 476739675 971658651 978800275 838190409 889082895 812132838 894967602 46515703 532211960 10761632 112168886 708526654 994867424 522628680 523073467 936976301 957264155 395857274 549602136 578888150 893707700 551068595 940151829 179202161 408598016 940941200 980550298 4177690 955959835 60040093 211939314 328258489 340102760 789921208 960067802 46777734 519643778 67566774 377030245 277944386 345475711 77429242 635823189 449047898 891077011 815581411 838843126 767210590 987715429 737287349 810729732 472050820 570900248 544830564 652434492 757902860 778217702 166365644 933333557 883172553 958827590 537978239 871864739 250974866 660817030 895641 711453472 1947185 313276454 168011032 266000915 673158960 703088361 451163513 814516610 304004722 327687354 762776424 774124790 245350922 718626429 234295131 822406816 464645670 900482874 279572828 535499481 692922867 901282847 325440012 603197554 114159636 690833833 994054050 995175249 357492697 934443482 277953659 454770571 494187496 956713031 126471159 163119659 246882607 543358931 161200822 925500655 153442786 848049938 612282577 836337879 738410501 892126972 30762054 719980360 548721298 948673447 854480605 947947493 357870115 787341411 757464012 928431416 725174343 870276599 815406069 921571156 172021933 311916611 347334085 983590734 346619116 525767845 597173898 746063716 936035661 941882062 768808219 961556999 504647879 689355518 310354915 865114348 687945060 707292276 262243796 812660538 755008472 981971334 306614205 431716789 444045304 829208237 875561413 977482582 994538229 998860984 834487251 880346722 753737386 775536629 171705927 730866672 752739469 785315585 747442140 860596281 266302549 546301502 157100399 541891811 233386240 681617138 38927213 307899426 937738240 993952168 543834002 722151424 674217832 724580569 525963650 745003212 596406792 821948598 58096264 827034819 746988670 781540091 915762648 922945549 102801052 555009902 685027376 922506891 413414737 452029284 701449183 711217860 426021612 509960196 764322704 809720017 744822615 814056651 686856101 965973833 995423303 995965793 59823958 126790249 60708354 589004271 893074567 897336156 442901261 504121317 975947227 996995836 763087818 774474091 957119802 981063260 702064652 896055422 565098414 631029410 880606848 982646702 841752804 924512958 896869845 986416676 957515733 958813470 760495392 863549809 358486114 478256654 771420206 805543728 506889817 730946983 331913006 741028254 315684105 864065317 301697677 894005301 3516091 341863798 976430131 990910016 892648483 909552207 835975542 897112852 532085164 982886768 934492816 943656804 949547584 989475531 754120452 818477805 521724370 974371121 817303833 915064361 470459119 569586032 136589947 381293748 864401168 950750432 12772077 827231369 772448383 776891490 525193271 547916773 628431258 913074843 905296828 915479208 667667709 788815891 738042839 959433225 129769395 372430422 241943227 986693883 53244072 512312425 870977661 933616367 560967504 822241352 610094217 695916713 275862075 566020074 664813557 769494394 734746372 738391089 127716408 755913295 140955710 504328003 189536300 541573694 943707867 950205493 338366058 982651045 585818496 760784328 657182301 710802429 25916218 719016221 351930492 647110006 851549213 890019667 8203072 572348840 442278116 787720031 761901493 844759794 441842328 776812102 24155635 816591673 933294667 960962583 33415690 788082855 885409089 998649799 439076352 741985749 496675107 891999527 341259494 991160680 737456374 762461339 149668101 341866634 768336817 974242154 916249062 974112744 991439157 992807710 853533084 875974255 930711305 937364187 497168633 883009278 440735345 975318887 24271990 379979282 182849068 862806883 359157088 404210833 155914456 241556003 421449608 580798714 442259746 654804718 665743854 873701511 980144735 999626604 572280518 677353549 23453518 628904230 437793517 724497452 270568475 919715809 135541405 652006458 253436671 602500827 294655941 751263160 676737417 737638075 576154713 891670775 947011579 968241470 187270980 321552054 826562965 880100141 932979322 977759066 230688826 845659661 79715548 944268380 504212144 833069507 548742589 892822794 611856165 628516416 471235360 848046740 63072658 502194201 325793192 691747387 35312343 521120841 540829650 567322432 297316020 517633621 862081483 934189109 938897305 959891226 416868461 916205194 851878531 954878079 801611668 899571925 574911131 682948066 227176329 283808217 109146468 190866035 586141169 864892956 859557870 997925779 649987803 992624799 65204714 579595172 979685731 983970652 757116698 773255063 52945345 458389148 623369970 817912694 2833177 885704358 17175692 535808727 420717259 986860916 674662015 779738939 523175331 540681902 406004285 914887316 771797367 962583871 171002145 965363045 542112004 563005551 170912746 529580660 614733663 629812620 988631582 997504764 725164396 778157654 130370157 137539251 622983678 832780927 519639478 867258098 218712604 372057190 981916066 990897124 270072271 328478120 20941961 387405252 625213102 799206869 874239807 967751614 553824009 656251356 775917077 834120965 675893375 970248451 927252459 986691888 575462636 674449671 3559127 816060841 318501767 604320804 472523310 504938601 641397257 698320433 632594931 835655598 71202095 482048664 530338723 884927013 86927636 212587335 297558975 420655432 770547373 911851574 986008109 987922881 786363566 817747602 523083683 629984023 81078913 532769715 794463485 991966682 569811159 945513844 5042880 560956401 91836147 212529627 298156543 408401336 906801292 977457188 970588259 995674339 655758766 674764420 222123509 271457507 575395173 955839378 845720717 937419733 234924782 500289841 195296979 453544572 32922030 386910457 692161902 867095058 455029534 899815097 289617690 473040129 660625250 760195501 251995786 771060278 369721006 900834946 311912402 391765778 338183996 794834773 868353258 941059933 973237133 979640042 614449212 852833502 901191842 939418028 405766322 560422792 683595329 755448237 773805565 958348326 783256944 814222078 300670111 594234443 680807969 939763101 159709190 821880909 631211089 992738546 621120158 885644984 953301437 994367289 595700654 956576964 430856340 993139786 542623847 750626013 554284094 987610440 998064316 999241209 861722248 897684777 494518757 538975896 676257663 881438589 336300928 985701499 156642672 780173979 796793020 984413362 184493284 959722683 160117187 685162160 740944930 892728278 963480102 979745155 486900091 508278159 796124806 991256038 77700714 602258725 108385556 481645114 888604723 920619109 469662812 861187183 140832498 898906422 269038947 808356908 308216072 529224306 159451057 792131358 371827693 382974585 167130333 353807576 315284651 409544402 288497311 446688536 419765919 548805778 779207661 813936381 910848575 999652883 450646558 994781824 637420860 761451858 646764915 992454421 488280955 687535661 743773721 973894696 814242844 952702511 122998118 734861460 986156880 992887328 711482046 771122364 663958184 892847645 277830494 853649670 324962185 808528557 163312497 346003608 462706537 547560671 542445306 892060248 613052651 743718527 834192318 993581475 910098270 971722785 218319623 711919905 456161686 528784902 999948221 999982532 427210411 861706755 52260364 175601121 942391558 953014539 947301375 984737245 736523614 837263725 310552291 491895930 320026986 994398841 19143608 112918220 411476424 578098079 288404002 858592321 202091819 284609610 363878388 912565259 566917958 882087490 321062926 826872458 582945878 812914900 206222923 708398633 34919410 952504323 215149975 416160902 879380362 948677175 204722897 916428446 264020945 855703263 475497313 526312223 53214487 369912205 672700336 808264460 613437868 764207895 176942187 564017172 753480545 970536884 771332094 950328283 828608226 909536511 287734426 438952237 517787915 931924981 3921533 645039363 405356707 838986115 945220088 959134402 8778212 898333625 985799477 994371878 356895817 944313218 515706096 699553606 788826401 909562802 22523328 763188722 925086512 933098668 215274726 431616192 412356364 774331914 757879000 915575994 687444920 894984287 731853206 879854537 735692728 793988294 734294862 783643599 936261669 953130225 926031863 954508151 554824015 876125928 103991753 394082369 751065602 779798559 431493567 445800449 487837242 643753382 636832778 907722442 872262772 954964588 497748688 695993025 56184815 683181727 196838866 352179141 256946570 868386701 489473712 567235273 217794332 743656571 407212575 964868710 347394899 757571467 177690340 802845500 444551077 572791025 789112986 802108959 140776451 583711013 477197147 893097725 903587282 918046500 44306076 982768414 724351432 828230509 528303419 885687171 372493989 722449297 500439748 912290367 375270993 414288656 154887393 925543876 240508251 667359853 391656364 486867684 632764306 731336731 527186347 543585443 370736225 542224887 339633974 866676810 196135595 248167648 609938696 663921894 953132304 953356820 3913561 285384470 380911591 824443493 742188205 872784763 438328229 464707329 902231013 942842935 471994135 821456671 138884747 433637854 647915785 932499671 168549643 330550625 735140631 871686012 486075811 760272160 994255303 998140149 827947933 977550878 251313681 346343847 927131416 961142938 343586533 619680211 354938062 595593437 826353835 976231110 631016957 701882267 865764347 866262487 220503576 509129486 710026029 844200702 174655289 816646321 682176039 822807982 651714272 979283482 392156928 511845247 658701975 787752872 362344314 508645851 252069546 719663505 675154975 939152437 633785683 902830687 909892689 934722049 229621079 958107688 701929927 885946673 751174647 992203383 493925614 658892564 332236385 870277809 736850403 802196608 907535444 986575839 238392142 830308847 527678103 717980171 550822858 762647405 120679358 794363605 198782946 530399121 266452303 522649254 878895319 944377801 546046475 785743135 107491138 627141292 968219667 983262832 317283415 619910658 608432015 897483514 618489919 848899205 223829189 649844721 621124039 794114612 97274460 793872791 750075517 994973516 123248426 604883596 868919153 998993704 325009360 372610544 724687955 845013071 666287884 915902753 33693817 687159038 22944079 134866551 490600182 955836255 121139718 287487278 733790074 895159588 32821662 842566404 653555867 721055408 581171077 972008223 179334809 806409733 38868843 138817740 725005292 999679943 139236561 875974429 383178511 741238185 875834508 904421404 336712279 475071873 283360737 373291725 928768257 945323646 441654761 462994692 195796179 871335044 891984364 952549217 468234347 979684823 393448503 678189133 259418270 563061427 588602236 986088276 762141348 893366517 909947797 983385855 483987541 973974238 872633225 906922462 183019845 649587299 430129872 683616936 455578416 589154811 438105978 997135533 720598578 953675981 249170611 956038905 79950658 691457621 974573569 986745463 76622807 401957333 752026440 804112141 56688368 718330935 423810649 787067683 26429564 494344840 125303827 473069542 21761512 911697038 685029294 894921201 401184800 604427480 902982333 995940126 812504257 885587146 118615053 130314962 139071218 898486139 86060961 425150865 464193054 471570601 673128081 919977297 737322793 927971472 188934892 750657765 730739349 737412425 462261236 612341194 851763326 991205507 385430942 412456070 26831964 977811528 471448024 748983317 919004645 967999921 282121742 913066689 902647745 954658625 993994934 999404263 324198470 784749146 789144310 963612245 993712238 997083092 829737962 966828028 297094668 476443463 450718952 758883867 272257168 380765521 119217859 261487494 37670059 973574907 184917118 852541133 815843191 819246151 642979734 828653804 772772986 806509471 476262702 960499309 656346570 944297582 261961125 659716271 948083322 959700352 641403281 876614719 970045825 998299493 253883382 801500235 616249949 769840825 821876067 853410455 729848198 816761817 756014019 978889538 310464487 768552860 47273807 664843081 620012697 942243940 91086025 761404368 521378769 909964047 258774759 397151787 442351470 467988577 227875840 523932861 672301560 885984728 499832984 605730101 230766908 277114285 999739521 999752220 790136393 882723957 145165577 341274155 595480049 737545652 884288975 954966658 108562801 969744119 210291672 450317678 51162963 58726951 186758289 692919231 205025693 826531223 147535932 425489120 591139394 731730901 176669489 255207056 944105423 965091607 927370487 938996539 134082874 955199292 670675426 726555587 291973526 455511038 838588966 875261307 347552343 970005529 514993568 857938140 238449311 792307951 751313747 783743117 642883403 860686278 978952187 981566100 222997311 568561911 330952750 939797675 564734257 760146275 762684756 914199258 480741370 693238746 635162637 940789857 917821513 961755061 446943207 634740301 138303297 283598561 634599266 723637735 243040152 955646709 47197026 442774054 475226669 660611050 916253888 925468523 872099947 978212723 936145785 949201427 955906065 963755598 795770165 931380864 563309689 918547433 981277825 992816475 422760971 626725454 559395674 842752514 388627807 809084724 246421873 286620342 605782727 772675429 902560770 994014451 781368098 958534082 616771278 810917276 943247038 952736676 232463278 796723554 510306992 858555523 302993811 336675451 804617504 901880102 488979695 735665705 833120202 901578390 181859925 257542995 189677735 436948716 871094359 899434987 367843121 561402530 732831792 739376793 701288834 855904128 153689680 189959609 865843531 926757984 786220368 885748551 483549343 864814936 901945612 948690165 922513009 972868480 397703623 602097894 712961818 833924932 197211652 938059174 352539644 778778826 406758769 416247210 483915004 572315360 469521416 763805970 587387844 841117345 667715898 828736231 833222752 873056614 532059475 812435899 111703602 307062588 301722586 812998830 412005307 425575028 634991465 907383626 985822344 999173553 503094968 703844454 933377556 961592741 686318650 820980834 556132933 584368707 546442748 754176805 393524922 530247927 514586799 815511101 280608557 640623702 214553443 289866620 313001613 858137115 922889895 987707802 263679186 872156907 225049754 340038864 721089097 890809033 709428530 903755606 395234514 580610582 261835288 516764918 492573135 768094245 380172705 657578454 834329137 957579873 37918215 478848175 877168606 902195782 238634867 550464646 415416665 954151123 825345867 900586471 253591026 379239348 878996625 983991026 787241579 986877008 630578898 814994411 506070511 776717406 749039186 791161415 333483689 555941764 156868234 865063950 344614067 741968747 224188716 898030818 309819137 723883603 731295411 845742423 691611532 832447845 384356323 683929234 600960926 937256307 644619048 763548370 375260078 740773015 823086231 967744055 364705982 467827708 525547915 602828448 460332864 957475269 916752293 973092500 350577670 921801077 5819387 655262763 573824315 657769028 976026853 993068589 497993582 615132802 79130854 786207905 663031240 783166848 641421347 643251837 645871597 996566143 37407353 107014189 410071766 508375302 727762108 988730605 198502305 950048028 701520396 723376414 883520326 914129757 622107612 863334196 557862994 840118818 334924491 533521296 821820832 897568886 656904023 962554676 65020985 444151434 327010646 641434638 403285639 575041612 541627667 993981126 555746934 729734529 661367784 678457220 221296088 248849849 131672770 665849465 119557254 794539829 463164000 567374463 879937383 888669291 216394433 633828321 174890677 837562475 331000322 909470632 295356060 913630378 382917611 775039802 24223909 372902637 323594600 737228038 53526339 792301205 487341328 722806193 237114554 761918541 845277995 871306252 448912341 844233685 613778118 619863747 281903382 905702373 948052285 956009968 962948961 991875575 245879404 690198829 562681732 754277673 154114526 700905432 214661988 585808020 97949254 898081215 804751062 816432345 553812011 556828412 935079644 967059755 176164008 490085185 876965606 988623091 574763482 579038869 509276147 944978524 987368468 995406485 951118552 952186157 970069082 997633767 735537256 849280747 408720948 694534477 155841339 606745960 276228149 897354503 672470822 821873321 659002452 866865006 231708945 863324568 450391526 634608680 584213899 966793894 574593997 861494781 103013989 738275481 272043271 587717324 629815598 875854351 557692260 895625458 706428458 962288787 531264326 772150266 884534818 978967584 985110173 996547144 728225710 996983207 488515178 936961503 583538635 651490918 580925510 744338152 248487919 672255959 534729255 648141885 19318283 163119370 358506371 434955217 884455114 973716724 40753418 817955735 6424034 804394473 392584678 709552775 82871278 205976905 867247780 986893472 783175246 991884929 476875380 863871939 95766468 403645818 90845341 580429529 752701278 974923408 86047767 261249656 547528889 718571418 991565109 996001828 170661354 902384625 51275829 863235197 919353597 936529978 758403437 814774259 330339498 409064875 366082110 991693972 117058625 872806770 615031049 619788435 612099318 659672327 702818894 780483911 105959909 632484068 521665125 626891638 648972061 665189725 792607664 928930112 923052594 957678430 771065156 853785780 240971626 380761849 518887370 914978213 833193384 878971695 747931250 879688848 655991509 676042089 999233231 999271424 362051866 872864847 42301392 255663138 397335481 963282080 538277159 659526768 222819617 786324696 796018878 928657170 989953143 991507622 576276564 722796032 303771314 795822584 315870040 607231660 267219381 282376917 979332191 979350208 497097452 675157890 807441818 921910525 462039882 784748938 80546917 414149630 997267273 998132003 441705103 448812598 171401387 656537467 57758944 840701603 908910527 927627253 903266303 956863904 938329758 987089724 548315074 954607464 460433001 829134464 597010657 803206315 668946030 783138666 868019842 974771753 512023194 934489668 278817076 981197559 684707356 912112865 720732980 835659144 760978040 911042727 454988452 455523287 75260693 704531550 49610682 323412915 830234110 896386087 953870796 977176887 536604266 539541441 770993672 943035221 391945979 723879686 420855989 898069938 874960150 884809789 963564278 991879187 878876666 944185265 626626736 792007279 559403548 974069243 671597395 862525546 226753173 429037719 94580610 360665219 299662323 921205635 890558621 958242557 868028108 964467906 845435147 873390295 524717306 899377236 491827239 924163974 206608416 482384147 563618588 728575588 991967626 996389673 910801193 989259578 102032572 662335655 728346429 850106105 934809508 968162359 27354315 244760706 571336799 936902048 694096071 772842717 89183137 979868730 838566999 881681659 98670128 748887794 767596675 895959633 826805367 969058012 819764636 824411514 154816779 576988352 921440187 985466510 891557617 894124550 561996710 663007712 230198778 777629583 663113471 671996560 372074238 646491872 914652381 996194926 307427866 818277756 578829139 899667606 266169482 867926973 951889469 992453777 381106779 442313342 764112275 853631255 162810431 937463176 444182645 760800950 706540855 886599804 311369213 388324731 784166557 852876736 851044884 877746026 942018039 948441429 198670504 917310929 803603842 958219254 36219862 853966798 537604349 588661026 305636179 808326920 879591127 944472699 406746937 926195180 849777197 894535562 826001593 909449976 13235868 683333986 52294997 808612197 738735823 823715662 176387117 252256621 4067690 896152978 774973392 942762565 87880168 541158788 949700472 991574551 602273006 852887878 774891640 957065621 844572782 895554753 947250102 984267603 733845178 925593838 62257082 325349351 460134554 763733848 346729769 717177096 432360274 695632506 922971610 999902307 411884222 647351261 866230026 962531803 660845181 683965173 855459580 951890113 801974266 917684136 729818100 790779046 282927045 544513553 677519031 700990186 972406687 988485470 484115225 681126042 495734343 584467216 938677585 951680792 34623252 994133063 601400537 612902456 99715387 373412987 815668827 883149518 75850547 156613263 20236031 108113526 213339666 294695527 748263904 906885039 885958135 941626391 884874932 939217801 896656210 997317095 453239441 778599282 88721682 334369592 976532796 977668044 158840441 607129354 79472023 679323038 981973929 984748214 96690860 306316186 79842620 601429816 622977685 666797496 834611785 886906056 327998142 389577197 849417260 911318185 530241130 687704712 619812909 895737686 40977885 160240475 715206791 881403253 253756492 593818192 771203215 914187275 7221999 847022685 729921954 771534741 100367319 460746187 614915886 921734942 987146836 990644723 62572109 995179624 86018522 822942321 970285930 982211807 25797047 244532405 713728767 814424277 162166842 228259645 929877379 991669905 853316273 927406224 363572147 842194545 81591685 717299758 100726634 636213249 995818433 998675561 181403265 782847711 809825870 975023650 540896949 702386756 166035043 939143741 903231766 940417909 772102765 933474953 35887830 291888023 920569081 962893710 215070517 247835200 24674603 144647973 908811532 921424089 464061291 873589659 631605567 911065130 623036540 890675215 476605257 846852168 54231789 243578503 677360006 855032392 152832049 710938731 727789121 775996719 597294968 717999557 505896280 932446819 31353968 351705141 778531463 821372166 33053386 520308294 671831383 824261142 913557592 917933158 58927026 557783725 888969053 961189982 565120306 939186085 425394981 959791785 610491500 682056018 976557917 993095491 907234053 950257825 896459180 909914702 554877139 643450665 518003088 654104153 629295810 954817361 640689629 733610881 815961472 871204482 404871915 806837098 525403150 716403063 462378770 917232248 480411764 744452659 355312822 648979718 549085657 628673570 669766255 731919017 41246040 729352432 120186159 190236623 153561453 379221324 301746231 525236859 449677187 842282014 289845177 835974497 362299329 710977947 741831784 766671379 170899743 364001271 568496560 903899512 677324150 973456260 570059458 826506316 144185562 307684216 907751248 924134082 427607856 932925091 537852285 685637094 622534098 698934616 233062792 720541146 59436535 677248185 365013660 569823214 645010072 702958085 497749273 528696177 653151964 972272966 216844923 786122945 156486846 676965568 812254150 898226264 81762557 199303670 143549393 973223161 165240153 445392572 952096876 979578455 990042849 996775616 567736456 955018828 483438723 997912471 236511561 238792072 99307331 942243219 595153197 938908370 243405864 373043681 694044466 791127061 133355888 932028567 154689347 968572913 506029313 786088094 391236245 525529003 692506060 781611345 207727170 903523657 194442116 833027121 685184978 903976918 729334999 983426132 1969174 358158780 663463083 946844520 70257677 804220731 135032239 818826266 300185992 527470016 956403387 959732126 498639419 783280559 419406991 959540020 487555301 855285343 7800677 942079633 489537611 664118425 262735904 884682224 2782905 215720246 573097719 735146268 406865844 816659662 520646525 775565135 388275755 561828916 628003606 801885721 466271802 757717441 68623240 873987611 646251678 701882286 877688784 884611381 382874555 521080027 210260435 597372821 374427921 903366199 883172550 994256972 785340145 791534647 766739697 893717793 960608104 973915328 451398510 884359163 409281470 506114706 143671793 413438595 794079656 843588377 459676892 610313246 364418543 978091507 68977234 759338112 853471791 985470551 481580027 815880536 104697787 105701067 575672846 648996362 133111251 897824915 448570166 933539801 273596101 736574363 827945650 888351750 978181405 994228857 303755279 581326054 394029648 660379345 868853446 973094128 196724820 832886158 142320832 146876579 9770997 746950392 380472860 536564134 977197656 982225847 668610922 975038101 36265134 649569726 798975252 936813962 927104018 927133736 609227080 980977277 49679017 890298966 45914999 413470301 977569894 991170484 324047465 868659330 150582577 562645229 749178018 776875029 488485566 871239153 593774808 629837111 84443910 645594104 779463888 916254485 778508592 832923342 244061317 260116214 25480239 512644763 742302901 819049262 698550621 847755038 21345979 884580069 890719211 956610324 760416965 848807053 805812837 950762025 437898290 874977426 222859390 252405441 977421035 985130820 587625990 762638702 672259163 955339787 786300809 915456148 868936028 922462135 452565493 912796840 385519923 540285853 186656915 845695124 470653263 895185582 501790789 926249776 24786402 550111358 126590015 930636714 791644103 980914576 923443314 971258837 899885507 973848431 104042187 572453263 301653210 996013684 963050324 992738557 403662945 458193858 247808166 595096320 960888584 999628101 541637489 624346154 869809836 973188078 657556620 961172075 642156530 677479973 571707168 605179206 396537692 979341048 116078047 910244757 690287267 874866996 299329952 621093070 783106705 966738117 790393302 806358674 146345652 624888992 411334936 679311431 508365404 662129573 233783027 836630542 80552786 362601214 946059475 980122525 477341452 898971739 378759198 572834807 432427484 847130592 729058339 816103894 267199042 609162385 736481485 884672818 7809837 47565449 454814398 541792706 425273003 561643153 438007057 469233638 184814814 383711903 470472135 527748243 16692660 123415748 33203170 914924509 812229934 825317980 20380556 115979393 656620270 705789462 789655306 977165534 641294551 728998362 170214281 179003030 41282918 451163557 176632228 679899585 9280423 203707474 803187314 850744090 720597549 940666843 408957897 497618062 229900381 658340707 146924028 385296199 688228165 950776403 274932517 326298376 106047435 615797253 24795574 739780425 630793239 813541698 907366892 965469105 658712832 817585434 639218875 868035220 443081051 830691772 121324081 816514858 701585321 875392521 922830769 930574418 654081488 695222153 286244061 899240680 208791612 740611136 741662384 954249920 233119145 303137755 138664724 383145770 8419149 866855983 416349771 654308818 257662684 282716497 742131844 873247031 725506415 942237720 854605133 933251727 76291170 522424548 486104308 886562709 898339552 939756878 377047162 795200192 258104846 881293646 136901536 539204507 357563610 983567275 677694811 690257585 423821719 592320457 842552346 865684374 278788501 833770242 950420138 963915596 988427690 997917047 46444963 929029520 958768019 998576803 556329634 714204915 727991647 998098064 46438140 119387372 670419860 900974131 349236152 902633228 929270189 971644593 349167495 752971549 684102441 898754018 676700625 838409234 551206147 614928132 156314893 287333898 92653932 476106171 4840563 605141141 41517765 922032619 731684106 923840868 237541437 894525447 67334618 420402629 85369614 669664028 706118470 747445549 66728487 153163263 605760873 905846286 353479734 976112762 895646599 901006133 174567455 332073458 778675987 860965926 500993747 522523205 670672940 981474682 106928699 177760255 598272797 704222478 465910024 750646040 493236609 600248249 939343424 976333209 236822907 621402198 833970848 852772891 547375731 797094598 963871200 969361202 106390133 339167890 15039119 744456475 436224556 595955966 965508051 973244376 908073135 927450199 361377272 649438701 807721887 937160144 660782813 848839627 812675053 835449928 435071142 680296386 867199795 984763945 537202346 593717104 203221438 490776783 566650839 834559108 212274149 602026471 486461388 718849188 677719423 734391084 677026307 755358097 930205266 972349956 589506033 855019875 991550370 999239138 650597650 677844315 337259886 853586090 804148531 934964576 567929353 990344615 131786921 910520108 651795636 686707353 717380714 913500848 778763061 834899848 874273723 919152964 42789908 498021868 678009951 803251807 818298252 833821445 306569693 704098413 722284504 926203694 91143405 944775504 282696983 287827836 857791490 971969560 593029459 856981670 9280683 89842266 887618608 979620552 4394129 482193347 501154309 627473686 337329913 478543304 620225345 912214934 458329169 971826636 395906712 808515007 248922889 559091202 119997659 377154239 432077061 496504975 632011370 883022746 98297497 528796725 216086759 240333466 889304748 983699884 844221929 886017827 348907027 882423186 500113766 969334614 547375147 788971064 274249334 850919520 433594657 956402136 205525450 659100438 994712157 999239995 796225966 903089130 730960466 871695875 757592298 872910088 730860759 914877964 832336602 853892566 220677119 236552120 45859898 495447937 816217166 900831995 382416412 456511338 757367608 987218822 724099823 933824912 201938544 809294028 607538316 804956408 102081287 464194618 718063691 810996123 646438586 976684471 527757092 580208202 958289950 979155274 531207415 888933024 8302594 388419654 371635073 908342991 144311413 963686597 235615254 833471191 392395061 648969806 429908822 510121678 567855124 699749439 457394720 536043337 510933511 658539019 300181828 358364345 193267605 725278240 613039540 803724154 164624606 888510714 963012334 972387758 806794261 881245801 193046556 336512912 883342126 953420889 239862552 291720029 595637940 864021401 715154831 857624220 804234313 822442354 456707503 551335299 568197479 897734434 557278474 805570611 795395887 863795777 38172781 540646099 352663683 990984336 696057316 712058321 248219751 613520121 712306001 890838880 968713469 990818235 220407825 804709197 485756583 800436181 893309204 896388844 525688567 982150473 932055232 970003118 49768660 920827379 489372519 992784093 532482490 919682209 281645726 904062776 701403448 716821631 837634054 976877696 255231646 319920326 281099067 960135162 632230300 911316533 806654030 967001328 413168244 581197388 284589561 683186367 294274783 692436172 950344637 962498916 850130925 906487124 9848431 154642451 901947080 981577868 169146339 565224179 34589575 520811323 417040970 896731542 522852005 669914552 413506840 622806818 977240957 989197299 54956193 799010118 910266259 925286032 99511105 139016755 839286747 856897399 976689561 981527899 941899260 970601069 739949976 817664921 863617429 957234345 799884537 856407829 708804178 795801295 408352790 944142918 879287436 890372024 228183994 779925784 332891425 406751938 922171792 982695626 929893071 935941925 66069492 690584335 856970505 891341822 871084156 879148249 318517356 773393946 123001514 945238758 284768369 516718437 57602173 105294147 139002525 457432802 829953196 856951950 538618 836590922 392995329 398921906 726922059 750032000 715708383 788341099 564065061 711708809 216411190 494652608 578226109 861751099 298255321 734571713 50811279 160462081 736693475 849890695 45341090 674924188 489409293 770744629 848170742 986787047 284872058 800241927 668647467 907585593 157150576 797105820 556572859 839884517 496160529 516445408 552315494 768905640 903944692 985178332 551878756 941125581 947654474 950781974 56691630 295357967 146707689 684548771 12161357 734816824 508035049 736746097 748429052 996208858 776095872 967380460 899488736 956283178 730362730 854992765 10119619 445011409 5777422 660889545 315556169 608903448 744868312 949965380 702226410 914388537 994536725 995738481 655533673 969832576 360912376 563467391 63761843 582775702 1010578 588988110 967284930 968419720 394153395 979111446 827023481 957761808 90469138 309497371 223636718 566484672 147883113 232996126 746608319 949998830 483370532 678282472 198301731 833323367 231244263 829932286 331271520 873427197 296490191 931611311 347551471 615453625 778759064 893343109 526896256 591403509 408930010 762959452 416195579 482036729 783396279 988690571 298943647 362445798 265733329 314561820 488620624 502982369 990988830 994289987 271618156 416771317 626386600 740188446 217675241 684050647 786301362 843682161 469419036 511752868 330382507 415281055 87649894 307920485 293999306 569494915 129960252 386003953 769101177 920603038 401071349 677807049 559127720 775217719 192023375 731193727 52850299 993337464 856204870 870056378 14990687 899712285 175087258 838628734 426166789 851383649 488075337 917930209 706459339 820137642 485278009 628180110 880828333 951959065 17027014 967182217 775156722 897938355 664246052 841151275 588498614 633443465 59773228 685317750 202968303 525322914 339636157 638034257 458668753 855170941 40133973 832020257 273973864 457917774 415863460 572622257 855502213 904427670 521574708 936270623 881038791 907279412 215588993 376981115 997813078 999943016 981022647 994927249 380377705 979389570 343869554 477423821 892525537 900937767 877679567 971729778 90443453 726149016 673728885 879266022 421278213 487771822 430639250 564434306 786310849 792318061 160228723 240312650 258802109 336309034 348003 315330539 527060131 590656803 82398817 471973298 317686833 848443849 251637519 610487272 239020427 628945448 516128973 600131627 796599997 850000534 959757039 974651670 598844202 922028787 31817059 454910559 175885389 896744157 419827996 789076198 810914662 884347587 657352379 905454598 611645011 960879750 246636065 295673131 546487770 763701632 820411050 852729198 130232934 893650098 28698767 399115518 732833726 846240176 767808766 955011258 603872995 928274175 395771098 995674169 125717108 609927167 698778393 743401438 69022473 848109531 723678369 978879562 759621924 946004624 550013621 735425405 399531246 827887334 284095753 838246464 495544441 895679143 480768484 632569995 691831037 712520329 679597191 903739167 476472304 615036934 317184922 323580521 678491878 782653431 968931333 975713458 865525656 925358227 135404302 333101134 881386544 947820585 696753029 779699061 830242293 907612649 222568096 924227110 641504656 673234454 31069803 928479284 831935719 892942040 206086787 969340254 582130307 615930671 421212900 465138297 826908184 830877192 279169918 569006886 435516508 919705009 259726278 297050710 369436854 836150420 782978638 817591371 867397052 984576230 845974073 866543820 719833513 891633988 560928970 780657980 142682818 315728548 74739029 963748954 787546828 816497764 757598166 986707984 66944337 780079951 648729376 837614674 770261459 835332104 460302433 918429106 634844036 955257739 949123755 955031092 622624802 803362500 138854587 775389776 753166128 831434005 383193624 827731375 548020117 791843144 762607818 935640360 206689835 589928398 867182028 995854504 929995913 975118050 84643259 146063505 219455583 426412718 360956363 842323307 51715066 752532535 106695091 531802467 795265023 956384182 49575253 688478602 437427889 985493226 187417724 450052704 179622098 306076707 116839168 982465787 337990608 986634146 522378722 939726797 658466262 718675871 679010949 755897759 967502388 968276482 372702028 465508895 459068008 949908637 748794945 988286802 573369804 739725923 3978986 378331579 58515163 848485529 208081070 802896808 55679870 671779512 506177258 620668866 879075113 881054780 823493335 971511690 356062954 856366477 383475396 393703596 242656968 440092781 52257473 956107302 423444587 632538505 912799132 947539039 81899708 205919496 812474449 828213008 794931952 815792424 296279910 903152790 817397566 876235605 925017707 992795184 720255819 738422973 568842161 724747899 850435534 868088326 210351565 735807429 340274177 368779730 845776125 914115196 703233501 784865961 926851288 975881939 121031915 595522765 564686296 840672186 253750095 835532606 425171069 497726384 501195901 632148612 618688398 734627661 782927543 958672087 796795860 840313918 949579387 963899987 64592717 691502248 532903830 964643010 829940192 979063729 764667682 952569478 648766874 831638275 908313889 999956198 537753254 984346138 384152815 587697733 345145993 514731426 935755560 954406899 151369257 280292414 697658482 742174128 438519037 671262631 377466645 558769318 492225874 655972180 735063439 880353142 564869718 992935676 372137401 399254811 375798463 681596610 935877520 939481724 708146771 815845461 269581046 771218483 319649278 812129267 887101870 909295804 812674904 944495880 701572027 727709159 649437740 996804854 171838106 243513686 979963763 992422661 499666711 678100712 813767378 999063863 459530265 635898189 685923469 848440687 663189127 667430089 199731180 255117658 29227371 630314284 234950617 558789381 154731814 181717731 422613649 525076006 410783722 634718422 943571971 993960040 749974035 944184544 426370647 569740387 806862830 960497780 854337176 968278055 95733101 680531757 105592661 804348121 785129421 812707914 852591850 894507129 432914683 874113252 841426755 993464483 558680204 997950119 797265202 891106417 148967175 985901108 771959859 894403175 74452986 140349578 765237949 894936293 232938766 507602152 875444954 985320715 528124632 528938041 524903345 961650130 753822133 785003741 611163482 819095712 86672970 200734308 312494429 441230352 223400339 351875186 932994820 972860424 539438818 768354947 480777827 835081170 369394192 939493475 916272887 938084199 373319146 792751265 164536340 937825674 851643224 961781247 865456690 983043949 545343472 646973546 861277593 893909538 298914176 415886416 207459577 674939594 550390912 605428095 40491913 647886522 797467663 959405968 990964599 994834866 438526135 618000892 733486704 809141737 126743131 154923454 644660146 794033702 189056488 538912260 807936914 928847829 622667108 653094678 287136651 682222802 364170855 444817525 330440861 959548081 142904181 627729227 440163148 960151032 16474614 691507741 462822634 770293042 137946746 950223957 778793275 881311975 899074738 964864862 877945109 891216859 431009114 756400190 510143341 852296576 563809148 916408968 629699694 907796965 244518270 622712260 589417381 987947752 169966232 999658149 723534491 882915034 271258424 374797190 793205223 973749533 838931214 925784032 654716710 961685592 468502966 637820494 646809230 650935042 60222147 125346001 137627806 571987638 371725099 412519875 225113808 505824963 586294529 649212342 997488301 997753081 343239081 828848211 265270777 538607800 325944129 964693830 940498570 958100917 160899271 577958230 364970545 593751322 692230629 927678279 449896740 491080191 673166499 817157282 237483252 998304826 381259387 530909327 896783162 937499242 750180304 909985524 550052941 862479638 915399129 972763960 341707463 857957862 339988726 473987687 949783426 963009139 368671015 475901660 476145672 945588760 355056829 439433923 100758701 350519040 713457264 853192918 625945848 702148790 910131833 945481521 21604559 675860645 487460818 550818573 422772632 702729191 421533292 836318415 624364715 787543003 86524501 547570696 605642072 905374836 808842178 939628398 896945614 988735984 842311057 870891544 539843343 986432516 422908292 943204149 751582293 780615614 237240679 612851808 905526241 967195359 726081533 777876608 16293147 237454256 919333991 999377006 367848675 859054659 662959521 751649627 876860437 973183492 720288916 931342439 840778387 866376904 116802389 670508146 943884316 985949134 85398622 131968516 639021373 849144704 491995278 634191216 542800484 796152262 96778975 923817700 596965569 883790124 634194196 920074788 567991015 901471359 914121379 931584426 665536492 841544906 550964465 742794037 836336924 937379369 453501459 832043977 391113097 496104041 40998243 645451875 989453936 990702688 116459852 138346433 50768396 909232255 544395060 756409922 809616040 952298460 1210915 144987990 69485691 737957734 177637325 943379979 258815000 568599543 414444159 533580679 191930730 860959910 749753229 949632854 291771772 441075568 330243573 512249825 655977629 726347960 978772819 998015133 6497543 457601252 976882457 985013377 983686678 994774636 402573323 569039452 789154492 940801892 113332110 837223541 778961914 953954993 131819009 149620958 521237280 710413317 60536346 377884556 726284506 822396175 691190711 763726786 221814197 336718885 655816507 907428572 830264643 971489461 997825140 998200648 945353592 998513169 121884620 365015188 407184163 699905807 269198720 792498784 3733119 60531739 106898471 496387111 427152467 522441048 274735620 800252668 863039605 947541553 960078330 966982203 639853527 661317488 779028372 903495398 13862174 802329387 885072741 981799715 894028739 913415481 51625240 419812270 130953880 168311236 49866470 771718397 189327677 230825555 344539497 353890644 854980842 956809306 36700648 548422375 1624572 945339966 555276827 588805884 614179104 738151525 7596036 253306587 913707000 968798451 151293909 238896694 953830621 965675681 883043178 986371574 18357226 750143300 873113041 966156177 622277274 923690391 664315276 832807134 7592263 204364179 194720675 740869496 495200850 751290799 707372635 729646475 885704322 910878932 57516795 930881638 510987513 631360711 66005134 952241934 95000160 731137320 852263707 866506677 143842607 531335477 852245179 936605410 230666005 768666733 409632152 876155582 641410416 967935952 314849852 519255082 686207010 873792306 694360199 824164826 136058030 696672893 209852277 442675038 99167591 808668521 946037567 974965329 450298645 571049384 870536811 930317008 307896168 844877791 278412992 284827686 65955381 757307508 142326852 311200700 64786540 684474845 310956291 964036156 245062634 956071755 69396291 714241273 93447459 402264905 31726089 717849993 135580730 568630345 249029240 768002804 923950911 983752876 262841838 433027616 352112202 480310270 117867108 478270665 366793672 708690494 868884720 952462937 413254292 764291470 713971001 717088269 719887010 782922384 975487153 996204859 407522906 692915367 384593780 535811653 27588725 552681178 825882342 938810122 987804202 992968870 703198446 821132081 43312563 842489736 358273609 980163130 744590937 954777284 180541407 218690778 251952689 550491302 507560031 793039874 796441633 887718603 24900361 260260039 285706923 901399635 349484904 639300163 569339725 764762414 584012864 862939541 141198884 331915812 58499260 524623111 834342757 953685010 460480578 569764387 71851261 797493018 16426593 150730881 972417813 985770100 412613101 614471743 909175833 942397202 796873092 870185420 697627076 996077556 753492432 819815070 514222716 665434520 588397830 950612471 932758570 942280144 221300144 932236902 192452333 743855491 466756075 592441598 444283631 933936340 2862350 330855678 865438957 884659489 709829745 809117715 501864693 775427869 845394622 847508623 909971747 929941749 266841791 665046037 618616378 803131375 388094335 607815412 656585359 900152991 366799727 438205173 669702193 816485007 33691754 41103511 705912959 754060796 808254384 981519797 593990572 858433189 547293633 933829794 666573511 958174095 68491697 675637881 466344487 873295260 247039160 649410307 411867355 617725304 763863545 800906214 764733792 817300587 71424555 259402627 759170680 787982755 547142921 819930669 365840861 693188107 420825636 872708645 100343892 445229531 749978606 930661929 640430015 840552118 99152692 485983047 448981172 609520846 14052032 552805486 42841265 62183231 426532094 658410729 521677022 885606053 463966842 604283682 369976272 643816930 173915720 693360121 674796971 863873321 295333859 647250551 169148388 671803345 286622421 566061868 369496812 448780386 790251484 909056815 35675648 157731859 805506700 850366345 990017125 993509786 91049298 355015192 554547953 813983133 429996158 460882385 71794214 172254448 354310292 989233272 448057979 869271142 497279330 545145719 103739721 411240709 124647850 251059781 224945261 785683158 43636191 266413278 462911427 472413494 391233183 422053094 798953381 844698207 397176534 417511853 595471690 619366154 802855224 882389093 477919762 516495456 21169611 484884614 287747442 978873348 984179543 995371937 887278772 897315763 430598536 495629230 673672179 732848995 555454044 616952763 231465888 598243004 347429850 638875693 79605072 220135964 408514047 996487016 253723439 299583031 62446584 73973340 13308959 263810182 551255064 963023308 900274550 927186435 507685736 903554046 855123165 864907805 334791276 486022097 349687199 983936580 466524151 557461278 501941635 868187302 617500307 689170906 578626337 970005371 167297964 777461299 629750410 723258858 549331332 779239399 303488300 911802013 707086101 813258855 649004072 697139440 538433642 808387696 870581315 996178985 480252620 935830643 638213503 866074946 743803994 790823683 300213380 346615114 626204943 780694639 922055199 947837153 835759105 982026183 519629727 779504842 866839563 958970935 791337762 808070150 610377769 932289561 385355988 935325398 396861352 768379010 435945075 714556623 471291798 816739038 728006195 910047582 667663799 882063808 808851503 937192427 170506103 238656788 942842273 951389937 745660582 931330741 599830152 753971933 273078711 868825055 229240787 346592691 808519560 862795818 500152706 709985980 705645814 769061231 385892017 405361846 525697669 695337770 110408886 498444059 789554364 956509402 644427674 950925746 899693576 908507771 3674603 728416497 808582599 891108954 533514296 535624365 976860623 999629907 942019905 954893338 79088432 864274186 405238894 553169525 202635673 959803350 562280519 635513798 171691078 540811395 701248075 817950586 49105015 445344357 599421058 928667758 883937345 995747692 305823421 462137726 66549136 897292709 522602550 652733221 11153626 869823127 319937768 632265697 732358699 822799521 42991286 444020839 909260949 969998300 689603204 992980297 811182946 974017862 238621979 458852783 403060789 459571671 313371710 884358173 865435966 933252968 685194889 937252114 757930247 766194080 438451818 941957145 526025854 918608715 953707256 981046314 684653578 906071698 479775460 551667773 412071979 691041653 354163826 953729257 349049063 747727286 138947740 382005124 577969979 872402389 372016174 942960895 961213513 968640044 764426244 767208784 129248269 604102983 84227187 534896296 179479498 885746202 896906887 968812240 677909431 952347015 727234842 863980544 663577184 812939164 757351001 875688957 867562381 945299701 512800879 513439503 619469620 827360787 634095597 848219380 324699724 327691915 951532157 989852079 481971333 836376188 115285311 477583053 296778630 547489060 298451648 731294439 304663231 630382623 990621456 997799631 726269701 913869941 568688656 894318943 559364458 693655801 846929625 994017324 630169995 841950176 946327381 999253821 651856624 735597878 832972174 852238487 971377719 981065696 366276952 861611146 613120053 637057957 147060608 738556073 355851280 658480627 188654305 281113616 59150096 362418572 867349543 876010132 637310990 826721557 28423171 120280926 102008281 804207745 839731903 928277764 42855629 550465633 525308967 700579487 793307514 871908441 987114876 993670692 854236856 913408997 712824611 734251073 226946135 434263897 196070702 471955099 942675918 955425555 503395383 804759284 128050633 641231649 409250904 417311116 432671099 451709367 598878227 618433262 977766606 983473065 764709866 929065540 234163396 727302903 79381445 498147581 681034492 858833539 69167521 473559471 396134842 813776349 488775770 597152798 616960516 737003509 278514974 618794724 202240970 551595233 213963832 674640288 146831736 784176669 354374260 625002340 354027552 887571151 43036768 425931620 546888321 636086767 346314075 693559742 896146412 982691858 734396120 903384616 490831519 515460616 89563761 345394349 632585943 890232968 316522271 577168848 934376753 944130078 652508307 913667342 525566288 878459387 600112440 790688045 212303618 901141478 711394943 825377196 738248649 860217162 519623605 987884334 277954190 833069991 442162360 996865360 230702421 601857022 252035631 460394130 175176418 838528608 816824549 956158810 624761370 650703089 597561730 705531208 372447598 922229359 347515073 497159271 872460053 948644985 419957792 693428362 414334284 470517786 880468853 959446150 919733162 939774989 327976046 638465924 809257216 969451973 921651962 936352297 769718240 778844374 895515173 946566742 567586109 953547246 686188163 747747960 309811672 405373396 119242665 860914808 977369557 998286856 456658227 559579469 521194040 745659706 968372858 972983918 864323083 961020166 847940161 993303351 495816123 546525239 197851850 515080216 753613750 959686486 582993824 746658856 629159471 667986799 351743754 616989754 272399699 728140045 462826926 960695396 763003641 990211242 376315082 977187583 524610451 538272681 286142708 610983260 194512083 831569396 934000005 942384961 544743107 771760331 909215693 927929886 263151337 718718273 608369218 994747538 566365371 677205444 360745662 513073420 30229079 572012620 685479740 752762017 425198020 888225100 949181056 974761235 997551579 999910303 874164543 988674890 904490705 907451561 775682529 903773590 739581014 971391966 186797668 679623681 387668554 891820692 754005828 822799803 842724759 921842406 846899985 922205199 613965418 885353411 266107937 479371799 929395945 933325019 301115931 311740997 468189959 600609487 131951183 531135315 561693229 575810471 663625896 971408520 735730624 966931633 532932624 740371926 723129895 942628973 392668782 772921159 540869925 936018275 336672408 762178312 317535475 985072555 796809589 974127289 750021930 925687369 889511420 986944037 921374572 986784779 724001322 820844043 169791566 653392083 214262252 214865672 587763603 613991221 696954858 710778433 894851413 935854043 793245217 932239568 627587955 900600148 781917957 971681035 967089813 986452576 235903870 517867501 467283719 751268777 316861721 345322209 542731393 651310437 221241973 883245028 577377622 631593981 706147612 819328211 812665034 921626627 81573748 980928444 287011864 485281721 70678622 696418550 498481914 580781350 838801878 963601134 508811131 628086289 206220905 722045700 973224422 987657002 100162069 495108212 815203811 995028211 975668970 975900602 807894372 936847972 207861212 482729813 998400710 999455964 266852144 959501456 104741745 569769172 153543226 773134889 698578237 919333848 595553723 995809327 106115825 819817516 974662915 985299002 923434915 999228913 101110695 758600847 142497475 471149444 470101042 985783243 907663197 965528281 69205238 230941425 388525728 848557021 35597930 722316601 795007915 882400060 599003271 671158696 901571372 914242831 678722135 958475498 431467344 686215761 409064807 638519162 416737515 491573699 212261197 367201116 968080428 997852189 348026018 887322296 156515619 869423195 325993000 584133603 467044413 909712879 282208705 598730751 345677159 412339966 444262912 551515578 671786226 972939748 734081203 907506323 302603249 695614985 491956814 494375498 695717481 951671441 707494518 910261592 264580809 692313544 123497096 886560586 549675391 647703725 416871221 534226882 146108987 276841550 233942875 860138333 343009156 749808097 597034698 646064720 592829661 965666687 830777518 871539613 401648143 718690048 725955199 836395391 144460916 723870440 992404299 993141414 210912547 474274836 182560884 423337052 583464745 766103350 203265755 449647738 168833728 787418154 634632136 677326934 573367327 786887420 992776604 997649035 398829996 879219822 889176035 940718219 889453803 958516375 934441186 981427662 805452845 934062201 888876050 914088695 879911995 996442125 608813225 734210479 389456159 601039919 826655633 888499639 513222690 797099035 660894608 751770465 719200738 955165575 465209793 532818069 496191509 671987242 226344176 235314022 756787390 848243598 163120297 516579787 476912673 853757727 403843908 808094972 789356235 803546823 69246547 880812669 764098038 962257429 472529480 819773446 799648873 955362549 888054817 899451381 442258714 528996332 876048061 951481793 72603917 446967222 166683279 977752542 138276976 939222048 931827256 987921209 127713313 194367408 852763908 990735802 542266967 880265573 834056734 991277717 942884974 948008398 791200663 836847082 741589685 868050451 374954981 829395288 371236393 643580750 179417944 863811003 514792007 656736231 171629000 715664712 637741867 804860990 321768764 834314420 242640427 422120532 77397988 627766898 64180235 174874386 68858336 619619697 442182856 629112403 484778896 670610022 848369040 882481764 265911016 288560638 378795095 590086626 134305271 951237536 226797631 446788366 76506481 328443730 575611083 805786322 455218855 533862102 391353443 986249307 646952010 871645851 53572291 792741095 526916676 942883657 854461108 886412892 931345265 992191984 717545567 995799554 40653603 786916675 507652542 723367613 796743989 909718376 918642977 982846579 615206481 619135074 322733891 745825235 176265783 889014201 595748021 811299388 323596919 400058784 372538606 393057791 904946476 931374170 573454494 614782155 57831502 756585039 32946976 390886694 140933102 162553001 433076329 513274421 984636112 994862803 561259526 827941277 636379289 691787532 858230040 942628272 994864863 997030033 296729589 333325639 962174182 992093469 808634206 958575115 629179788 941930722 829528763 966124583 426594299 894127835 666141915 936978321 836069712 927973230 331859365 623017178 531110818 748965349 11416021 830583668 289357948 698598525 364246640 405804652 334467362 531412858 307891907 477975216 53065144 851911778 671181348 986922981 846256581 846545074 423241319 950766479 981625128 992218570 804502640 977245046 405455619 607733248 974263102 982234944 690044121 745314968 83739719 847017777 403265799 859383841 268525586 497281577 945711272 956528291 293418179 933535122 411577109 618776334 517639751 568925590 593093714 991578896 412839096 756408894 956195344 992613552 593848730 969973151 762248706 944317493 5259225 302917688 897827366 962334539 322961787 587560738 584704960 849123547 803043002 817292028 720037375 751288009 521269188 760357027 955500104 993739100 863275226 952627946 800621950 803994453 734810297 883514316 263860939 331835773 928144035 928358537 376539287 973216168 547254649 730289604 324742673 686203097 82383925 154442727 921609539 990404526 419846887 731243826 240648066 430993930 849667086 874433893 128338555 434408568 154376223 926419230 424824696 842942174 262710615 913414799 485956587 701645752 559862203 776555869 29638648 789576803 285423643 828913739 425590129 874379500 578490028 656601890 350159284 878914373 613936103 681164501 621901956 884430528 814466695 846290773 446183810 862810701 719099405 800011859 991899926 994682967 801331408 845918589 76555978 775733596 97797531 901765890 177081904 842612769 280244321 698045807 7842580 877458343 823329236 865158501 169406387 595843820 58042151 949988817 247322701 823791270 413883659 697660180 178952295 649694852 674627290 830504601 510270589 648503637 503052348 694139602 42611956 456021345 210847081 697053096 403931882 725731055 677760279 721662232 459433739 846741929 87241582 528987914 30000946 345975155 361017862 390685824 442846023 940794238 148569436 221096621 663445388 680718814 224893080 781830814 864250835 874962234 366817667 523015705 755783521 970618764 772248114 868149376 118423315 789155359 513942384 619547189 948936498 990772927 170626969 849661266 643122942 705789258 40025725 936794836 144712828 599084723 776477072 978331129 674138438 955328012 106205892 697780049 337786069 580427148 511449188 861319752 22893281 440953687 53853345 975418486 550893797 818903154 51501068 585090308 720195798 840401488 15614035 303759142 406675768 441128637 120110800 777042851 63106779 595421329 62717875 841103074 279948283 373179498 498807531 581820293 925545450 925558832 216426904 484411895 10566393 264260805 357072859 827074942 446665907 920395673 179090856 396276176 954435438 997666591 473805175 948293848 777114807 995457642 18494076 618374219 218335649 358500155 379159145 513010024 241710936 601688457 202881370 315693444 565085371 666895343 322888303 667977590 282003695 719545442 470548043 936157162 67318892 494895035 443967535 845722745 644718596 749086479 164058427 361673137 43553775 393646253 511560117 865081336 836357948 940523806 836407880 943342457 52992769 222046587 228136879 632969849 620540436 672833090 238337452 401815510 828623525 912194132 587110909 827712197 526929279 990193433 184975172 421981476 530686205 849077134 445663113 571967064 764635603 800253781 604584506 869119026 41544419 103909870 824021803 892271145 929307582 969260996 109273925 380109082 9829179 680344839 686957452 793065017 436474285 968981434 16534067 973600116 426129849 584735543 585818177 781289136 270810160 959487894 518104107 747851339 879165385 913628830 156818987 765284125 460950862 737412479 994564086 996575628 63502851 465535068 719286802 735335681 30899349 354720513 869212894 958183008 819605526 893116541 565557858 676444228 670490316 771597987 841389916 923391512 184554956 338597219 586644557 903352466 159713610 416566417 207520216 232094746 433983163 843277279 744517387 943537713 470310282 885371165 952363932 969310130 191827564 635062064 64005329 561026615 584307259 597438608 158525843 971097114 465242900 788807806 446813889 883197749 312248779 576092210 771253103 883390366 540104958 847408599 420841780 699469562 362344502 391396197 909396395 932066883 668817455 688754889 462299359 886731786 959663262 970755549 303010050 732935300 554817638 677557343 413408418 421295200 304697873 735012081 820491800 833784681 32651163 348334807 992258600 995757778 747872507 950274047 667655693 943177843 533344374 982557651 485224603 968771629 82420454 130627789 47278801 622763654 550714484 650451416 770015340 859972814 934109802 982167973 365021787 986525803 464886721 854326212 608158480 850901301 772224886 812024985 908481649 954160350 682105331 941030099 232857666 439401088 190466576 508466584 137058798 242417727 555353906 743077623 44433820 351160110 132646277 433296541 244642017 648719578 942478555 951251295 19395826 460823462 315203580 820660224 496228720 630854867 173974 167431349 127636146 395568760 794937195 989447057 145735966 908403216 839284982 899800506 604061694 723948466 157548283 984385436 465488415 612841771 159652075 514458581 298365433 352786535 802975289 972449766 247663173 855218139 423387094 921609998 144879514 487257637 656842490 838815635 285332573 541248884 935152763 943064666 800068968 994293635 801922630 859694838 383755174 934161475 935667039 957585668 296658374 548486621 828092745 927594258 986100615 994001608 360667683 828136565 263765237 427263546 157956440 581181199 837093584 843845640 695750758 957499305 209651328 224939153 451539580 477870924 317734393 834257410 986109470 999618614 126126899 978548635 334736958 685661619 152080760 609295123 518042090 625393712 738918192 841255439 869583577 937220880 862757334 927886871 687639827 985058022 303116770 644091472 646267680 668774904 686144717 845780288 644733098 822081341 898517759 907274167 458471168 836728617 786439759 910233888 603363092 840447369 901393665 937933410 978324775 982369699 383259358 809149023 123741926 579108296 199706484 902446921 651932203 973560763 281288935 774784172 661412106 995140203 36453593 963242704 846728407 984851944 513589101 716999348 320915561 427098442 462235013 518373641 130928109 620831138 957029456 957742226 729540050 996543634 594442315 982018326 202695311 260148978 697351821 785436846 577796145 897436171 763524305 851654639 689869000 966509242 155129845 652807303 398782887 594515627 376478516 778967851 649432466 883678320 781466967 909863045 171850368 683594470 459903730 672772639 112972892 355665592 152772858 885124158 646854336 853731908 650075168 802053280 475955095 586460968 559232216 920797583 285472526 327526214 853927491 921737307 576757517 986476167 555453938 693753495 557893944 894456730 368709884 666577713 720143881 770193445 120422254 394414630 511531266 580107495 914622532 930835594 974646058 987492460 330353947 875785419 460100106 463136089 160183200 591306381 792483461 932835214 496585656 909175756 678198047 974318981 513133647 828591844 498389545 647648575 746338676 887622417 323203228 922379002 809919049 827224425 697554873 739091023 843740898 846205890 193420787 445981153 598541393 624540027 752287703 815216192 546737178 965355786 494611016 722450663 940262421 970255103 63632719 120956412 18558972 156365012 811003787 953240729 29189993 88158051 104366116 792475593 300078896 868996362 793131692 953082034 908826592 940486804 831911222 884853749 997523999 999014728 602837682 993628181 937788083 950010503 549351935 600560033 729274185 999454719 198685073 888603404 467959345 474109125 301519179 650439668 813696277 880567357 263004450 311108254 481247933 555583586 426423538 566377146 16914096 93025492 140980926 476415034 924789538 973053826 21677107 582518706 494646878 862913105 670209845 844412461 74699527 397834909 692136284 847047737 442349199 788416073 626607747 904193142 32644731 109660595 835821738 907692732 395387113 758051048 80768879 811327426 938282600 965123871 294404219 505635453 195595405 991838683 104357952 582474200 539722963 789460263 608572861 878945865 94158952 857530258 66532956 632456530 920380409 954841886 921296409 954941183 14345229 42862732 288187810 482561111 587444166 936372077 264377920 488943516 547761966 992694948 95320332 144377520 63425665 807178900 413857375 529699245 640164899 758839255 196137630 871668322 263514726 457149674 257625170 746262113 900524107 913087492 492834864 549846825 442881720 671174719 567281277 611864487 95678951 804661608 847965368 853221121 411755369 783907064 398642809 532004414 926830458 988089875 458337157 672831834 264148366 370871681 538295209 573064148 102881855 942598003 921201786 935667013 408964332 481680040 385271004 474730544 240241709 285861824 416024034 553189186 341539783 493195266 272738248 314858645 341950668 518099289 3235494 52512527 440172420 789969232 458629897 781870067 721588118 973245271 148737547 942277155 729882818 923973947 165734071 925157952 343577061 632373267 882628211 942118478 786329800 866157265 632889621 819179453 612531857 904045063 413182430 803915052 299970492 865943816 702544379 783695211 80005609 197830077 930445748 941778258 975338390 979035625 345687841 537820717 355534390 705566433 354923701 574350547 908959055 924708297 34135747 770574674 65177334 993607682 960966379 984975924 878438671 960833787 66897343 336065308 557644933 895288688 575080086 770907053 682468666 825243801 198309107 740303425 360809193 439811829 634245033 821254751 119444801 946851518 908230934 937612212 852105941 985059568 439265714 848309349 933799099 974802763 114714510 210137550 377048672 856935475 540811359 889088214 659656435 861988165 110150577 119700385 772713154 924904522 595121794 883556787 814740083 908428944 811904995 903038547 525593985 996844335 745874413 886071438 418109821 878815965 245539696 692978614 771283621 788352667 590452791 879518693 211808021 470485406 430124260 776105516 981326913 989440502 473336391 578289522 836174061 891207366 922516617 961557388 85315199 363919743 419595435 899026140 283290955 833915394 62095464 446115544 935705162 949505983 798039207 836592770 926398339 929414605 582940958 633197831 813278380 984179203 862398614 963194848 498800935 823778499 143653396 550259236 581647577 705299169 103952721 981304654 406294252 944023697 346653495 972368751 37957898 650611996 270035432 826773977 133789762 751539757 397653234 922855337 380229537 526451995 352835247 892086906 581817354 715941393 416484501 678527030 432921455 640508854 910795198 955038242 699040621 781817594 748035136 960096584 579136216 859419757 357517380 797526452 243351797 466138648 607515049 677572626 735860046 982937952 783276842 881073825 708702041 810709120 319194509 497033102 920454211 959321957 313214062 509341780 881793019 964877689 298409743 464674723 533963418 651737878 752828816 832574950 697163349 862461221 421048773 765582680 325320039 629613821 94562818 487741896 185186623 386516265 852591066 931809908 656537227 949072199 399844295 663141986 294145886 689419650 278489500 920883025 922482268 990503958 727677904 777179115 176028794 937324927 792962509 938377006 401436010 638276792 257454381 734149246 956103702 972837470 928828329 990427501 983526723 992814161 37009897 647708187 589341120 972995564 577076571 683493257 739494706 783953237 344451736 990649288 88760300 189305604 714168332 890582581 102908165 898719438 420732860 586804316 825487 82506712 506789478 578721514 866542236 986577133 750686334 919872466 464262091 854547053 673685975 765199091 228769736 955554958 185286149 367312800 626320355 633367276 654428226 812388234 382887395 935716353 65199605 112396281 818802750 894351324 466529266 898443558 799744212 893991303 895217555 925988876 689918578 834685564 432418 889032177 406767889 735110805 172445205 441878528 802700375 985396399 156942060 502352717 842609277 904071017 133487285 623831025 295403799 854693699 413878986 841836728 979769145 983509793 880879207 920573993 176735888 770515896 985712341 995046690 756420041 931595804 988969457 990892762 122343537 627586625 467600005 579540647 509164744 538166784 62400285 345197795 188149314 213420175 86817759 254101137 503770032 606432839 769546824 868743557 838936719 937697752 20944964 464818961 751450870 787926230 629065064 969131478 544632552 948941524 190228645 747976933 504470500 652969122 889011781 966017667 503842312 869280455 777422405 854387411 789648192 815534389 310389751 603508399 776584057 964474853 227178390 561575655 714778388 819987159 334802691 733833777 402742540 634848352 593691851 645395527 194224613 974267031 138600776 412325797 977426021 995412035 445167002 594581037 21097881 717549619 87052805 854892836 441440723 632071441 179999419 711048052 519789964 714498546 124316267 839948802 851040990 869861159 866649729 990833036 673840050 821591257 508825207 601752113 734629528 780378604 644472320 747622349 749888493 910245264 633598878 911955201 210956447 670804162 430878646 659752067 914835669 924806919 473615337 887961418 764215800 860711659 512411598 917160884 896243978 942695213 46979514 658189617 27111081 47389460 520372008 733369905 751807202 828968458 105299844 769124382 37405068 791555237 295886973 426962976 123799724 307473917 492065324 930725421 531760769 755593391 150640556 956288326 818219321 920200676 664854917 939616105 734737604 735274584 744012299 986086824 7032775 229811846 535032357 831467834 720679250 867050167 935163635 952141593 511515100 980396492 689399008 985840113 938524277 955830141 116736132 498964343 406225184 486302934 29654677 873171841 103671137 748879281 39485415 345536460 356439868 459779344 274676635 617964438 899605092 955345748 788948762 880055028 632096168 746966327 405238257 960301186 323164639 551348696 914239961 959998968 340446637 673101078 909932291 922455166 654134270 684816748 813494169 969522077 656622550 919253515 469533216 660158922 951260887 965211029 894939153 979949992 944840156 960244210 405601233 755253427 678762774 708437705 290962053 501318399 114343541 911793177 107363005 825355906 554168215 995089539 203570175 816881041 640444326 806656491 571702986 858047986 119677199 276452550 111700293 797948281 136602859 798934654 268466611 367377115 494175956 970251584 18595686 231110507 495893315 587158850 925510338 990952588 35521281 487862577 51003661 810499904 531069538 808128317 140268787 974622187 737885426 768067965 60606528 882357846 730299044 989179250 128905112 236884442 513614457 698191240 761026358 998995465 980330371 997084456 233426545 268198781 913589924 980329766 133748166 630238235 462263141 834063081 425956210 863985578 608955640 908925726 807335474 841641432 821523877 892074494 670215381 784497025 390863964 648777919 970328566 992379598 937514622 939305021 728317451 790221132 290531673 606647415 424186267 760211650 317983249 486193204 113844960 755943596 243988452 435122141 348567842 876055500 613754999 656132869 628476650 785058204 719360598 942583455 370208547 791622558 691231510 855636314 795031782 837005136 133466984 948642774 401037868 960177159 31762960 582318382 921758872 986270727 777701276 889671302 718214529 902883911 954044525 954251202 962818067 965347080 608747616 913498898 197935757 775588973 985688361 992703933 969359272 992807342 60559986 355209406 428826722 848170775 733133339 949721170 561423737 782514934 631908557 874641255 188423253 857837767 841606540 845092124 485451567 769011798 592089497 691198694 727154990 932220053 396520127 781104839 908988948 934069442 929071188 991282129 140905334 245296910 957350419 997037862 763637327 957396061 85544957 995714070 796544023 827196390 791110335 797545256 596817719 786469491 600431114 985733986 162275142 459657360 181001260 284733148 555577073 830322838 767493269 854157852 379470143 507502415 94114882 164492757 561494587 998192629 506284442 887554171 350123229 679738106 924061741 992476403 586331057 740330342 248012562 432868568 63199815 421613378 624796855 849218860 725061036 890936318 595464523 822352060 304524840 377253178 987977292 991619051 929857061 976310195 60799320 213279756 549138805 960502585 226335500 774632018 989687715 993785680 321051765 660546706 614469347 936917135 343600 217641654 21493528 855118440 3957457 159707413 967885558 971008896 783674639 871053205 24866868 252370004 804512740 927247159 141940246 946457505 210150463 468639353 270247931 547359723 662500927 859251944 978407559 986510937 307623323 402071213 159740685 356980242 991755613 992961082 619310615 764199726 687198174 859621869 850499986 930230458 991116779 996956016 712288101 936592935 784921326 998227874 851274173 994620792 101102460 398278552 30170573 959975950 65047334 423818855 642360619 894596656 9758889 581714123 688605913 861204740 921468769 994471520 10678731 406793068 706257398 846399070 710426794 999047497 315502727 456008195 254069808 480093735 641584516 786795707 700276519 954768480 582392024 809200674 158669964 523441005 512600487 744207899 308102127 942002412 647605732 900863784 304818835 969042798 265555589 790551900 339613481 461831909 251239946 456192942 863011002 899221134 290944328 989442561 621211282 834070927 980401372 980583846 865202565 904192680 396421854 705956345 539145742 561943752 167212761 948487848 317365932 914008806 274748801 975533731 583659082 847750053 157597601 467722661 754522227 933650008 904254678 985752772 726552699 805224444 361041345 966599410 513896277 833367071 385050096 782607231 298476467 794139275 313342248 373023361 104517281 886377168 365921782 638875099 90653893 629675615 501035402 520744277 94098242 950322130 765581020 805238297 601021006 627625470 91395174 869250757 383553461 695284800 790742968 927213232 544861529 559868634 773721453 885818592 827008040 836897817 999086717 999281731 472080874 505135339 922553256 960278384 738024371 821299858 898898307 951601151 770218699 957675301 638930560 968529166 967385092 986979169 696496921 774372781 394514329 914616675 531649872 990964165 477464839 867369127 10891862 281416383 373062651 861802180 880976851 976014790 93755298 121819380 898133675 952354193 722300526 829060980 646137342 950180629 106789232 220732178 923787357 985241130 345889172 858061239 496129194 734164342 335847241 771054371 542862490 801518794 590116985 907826569 185471731 360528894 789598520 869268879 854969606 881519220 759524908 912618358 25294498 913311115 309429505 729650811 937235164 995156330 218308752 725647606 189944440 513626470 962780491 990813026 516334019 683212618 668066143 759854061 106521150 257473156 783082890 790747447 480093490 870705336 214134389 753716749 840684901 894925701 97501967 574087176 550021655 952301661 334247294 661905000 526611800 974116329 864523269 918053236 650215949 982444931 70471713 338509655 9784705 427857444 909781306 974380823 172539648 231701309 416656807 710659846 345407430 446179091 532962176 638208527 182957429 405696496 821041672 826880343 528672874 986818986 758348481 780986436 653948991 995977078 67949887 132048449 261719974 336597659 982700941 983958085 456431388 842266865 694219014 821507647 517261267 639170352 695862729 886138279 151520095 652439423 533215357 688290544 159250411 287237577 811130514 833477335 397940008 680281274 800234914 976274914 694859190 981372900 324825708 795049841 568893020 776344086 526493390 884586046 462941983 540808385 653987266 726376543 410165822 482368316 276101338 483976178 102370091 825454449 703916578 718527671 322010074 353402092 800408520 988208463 923448984 938565065 151750992 779602379 172224936 670623085 86078985 325221978 309091060 731938958 486616242 828137236 788100736 902658309 638148855 829413496 278254181 866015072 643923450 957706555 3329660 740867119 101745422 317609522 918722376 926994640 292704501 825381519 959656766 971135734 257863274 509861098 443702016 798200954 135184863 966374672 303268331 449908963 158712253 228935749 370563590 431966963 133167485 639570022 277813063 385498107 517592036 547766561 830994599 897795710 203692160 984627824 294018276 804372606 934184098 972227477 668148163 798596564 879156862 961335514 441861450 991558951 358480130 434228118 267352900 301810464 293102983 361037496 737618059 945386639 208371012 612476122 342803982 656954165 390010400 620891239 935569092 946740043 283368913 691334924 677906123 726443235 858146180 888265497 203561700 748809612 892043130 896203235 195624475 588402735 56706747 478585359 770442033 924747399 446881907 703842950 725282151 969276880 852229639 867494114 597918260 920740770 850098508 874280186 470078236 561301237 503521488 742719559 585663209 926777103 827891643 859570882 175485054 702735598 703865128 924517756 879252782 978166965 883492661 964049207 412930450 602446084 354214673 487081425 935294346 937761299 782855897 908162618 171179369 207181241 790491813 868489296 734039377 942456713 51991577 478974957 266749156 853756699 917814923 950910266 725814672 770837645 322226932 417075495 1838622 469154558 351248978 498773810 117001486 135401963 896296361 958513347 896301407 918189132 278429554 504366230 492019332 591901331 582719382 828476598 631218314 757505365 897543263 968306370 718694308 918627362 627032741 682988240 638834373 833973195 655778940 855153410 262763107 649598178 524777236 979509969 213109845 373937224 145852082 262278705 35073360 582876783 987340026 987766335 334280964 728336992 737401075 756479767 465349108 516629738 823131569 999231158 220876109 744133730 270657374 770989724 543981948 615223565 942753086 945066408 656287698 670184430 66650701 572214790 521737911 529826854 177509046 480004500 548118305 856116128 851797590 938776345 589590666 590957771 402251567 753080328 383409043 476998176 129303276 675108566 562056731 578642634 565600105 965541856 533606127 591268230 283600154 302404530 163263131 430728400 223874827 248908902 936989915 948862449 546356 214348971 280968879 459864809 657586985 736489237 545167523 931504603 741090093 891316901 738833644 901510453 325966636 387421187 274701393 491740012 489360433 925507110 782539114 903429743 579067116 994091155 861785965 905597444 269065857 516878714 533251568 883447547 552934620 580637736 600516456 913051635 613214536 698453663 14188917 521465258 570008518 949633216 933290076 980109918 511213066 552466227 413894848 737370820 880224137 987055466 157541708 305270568 89479363 797122695 122296719 392657436 673375138 855178983 295037789 795389576 720482172 748388253 702956263 932485956 994588465 996290427 717094550 783412862 657143375 951840711 292295273 580995491 969514859 994420500 473380698 523591235 106711479 929634560 607097154 626414061 13621093 645182352 392876109 419588766 199585823 996585531 420066027 442706378 851860609 976933302 117932458 340431722 493281768 542431658 716928561 734835740 374626028 726797246 177909566 573320681 939241611 993980025 81442441 210913014 411007836 602766168 342069045 971940841 401241003 695145506 596003541 655553179 993510893 998808930 675193607 929295302 727537521 957875104 751273614 809827127 29162866 878159840 16350244 230696133 827497943 936931960 231222061 926954765 19035085 307336306 25126485 239126008 811905527 996620903 886669154 984642340 752164627 894940061 590903969 759505505 518685768 971456233 31253447 909639831 950764148 976167816 982193152 996781048 263839408 638677964 636327291 966260428 393244004 844737672 260504589 314682466 658660831 791375232 839360640 898969442 379774121 684761448 299253446 569187844 940913078 993381106 416295007 636997712 849431779 917001202 20495801 442641129 928007524 964559765 584029798 862452883 353584584 608523793 443703140 827802053 245968899 587311811 9599780 524509801 656079825 693245264 59400567 398346755 918605826 994206763 826658560 862393571 27085232 807224878 836769646 907134309 31057563 564095655 272463389 467686321 930730061 957812694 751527067 949201227 739038152 899686293 485890444 524021317 799753954 993652052 354986387 625511331 244257992 925530258 639337330 842564553 496357199 917349880 713663508 979825073 284902548 610203373 876626979 884895521 925571063 933725487 801258467 894848400 929389164 988820812 524256752 586060303 571293222 669254041 986682678 992150576 936081030 953219422 396125989 773257869 93557786 144342203 447384797 638452415 801593579 875833353 929924630 938633870 843164141 894439817 80588212 358909684 397964160 656206189 832902403 856721746 893874718 951101958 328236137 967976677 800938950 865518570 343439173 473043232 906158898 961356312 559075634 834216978 937323076 959729275 682324724 876724434 343636737 752242998 486359409 781571444 262495715 924164452 804650855 975269191 797415659 822980604 823206726 914716462 965529365 996726364 391475166 793521383 968204715 979077138 959896523 991605575 999341285 999383261 293950831 450266187 916354545 967788069 116663797 563296683 578037356 939118558 753460663 878184741 521863694 882022133 273662058 903517379 489955986 955316781 848312676 862964919 669606534 803332208 817835422 821043548 48026699 595140036 535780938 837138906 199313105 323153016 243715347 665252644 311151135 508536897 275645651 298054110 148732475 631177487 388095259 516619706 792567138 976614786 236209040 900650634 326073055 745804331 467574126 840468099 49576513 86721283 847374963 906590192 637885576 665776642 610491737 984275464 402751084 602806719 730691999 747098884 163604296 961406954 651922692 903766461 154321671 333073322 872971108 968238604 282380104 440421655 544938219 834224854 567010835 773819624 111790619 695911064 714490406 901881806 896176842 999689289 22528753 432506413 55313076 831769583 321373020 997087186 981277463 989637587 451700567 853624142 182937636 684840432 678267375 906113346 977520206 992718261 676901126 793819689 962529931 992723665 907514999 924511969 957467217 981932654 234275021 812758596 274902691 756612000 70314248 162593318 844223297 878415160 70688708 995187400 597466392 950369730 693637185 947938156 4755079 234892723 755359932 998227662 188606012 283396130 906017584 938115821 19908216 477797610 295263159 495704173 400274883 464810203 448281834 930317474 660645001 895408286 200595347 722659271 217379414 497171086 38441109 615576871 540140364 893128448 101612799 572694316 229173354 508615555 873578639 981442437 508879417 957299562 232620019 522405850 243775200 607364294 657185090 884701257 751871942 965806478 629581089 665036660 696547898 697808301 765544536 985890196 708789652 838197128 83323090 351757880 79399791 310943087 818652882 894876004 531462198 963338803 591976414 746184067 940701653 993128175 253880105 388688346 401126918 924902644 303474563 376942156 55552731 917002167 187886447 468807896 84145570 856285489 938799045 972470385 787171055 948175798 159219737 604628114 125025174 150362933 815706606 997020064 265867429 777290443 408556648 687055286 112275147 502563692 883817876 949986472 903766521 962318379 316605575 599248099 721367617 752902719 835094113 853014456 825963669 847283084 703337275 840390599 892922867 953668563 501792251 697171144 211612582 930672060 940959298 974732129 956433979 986065226 119769051 142516364 805700922 826366458 383019750 699781460 332964918 620801078 155232419 802461979 767524335 875317949 470398926 845393159 379458741 634004303 862120254 970040447 597697594 938300289 743316813 893450208 656506005 991017695 538969905 759753818 672251933 715465453 620839530 633340056 685547162 831815032 103480876 433722028 812606129 934361840 415628751 808647299 106244698 305596438 787279545 914428369 186878222 965871275 357960638 562347061 686632324 697742525 211435670 728224092 963110753 994956005 958626760 981984244 891213253 905560895 113053033 329503074 595594500 697675543 872178182 972334090 297493691 976225782 213722297 344978562 647431815 744382054 959401676 973627298 750862424 834373863 514913242 725641987 610357753 687251154 663244722 727419669 423761590 628402538 608003675 814537398 372268243 623695508 468130719 471873866 48071324 965166795 166354063 751159878 898448072 970094458 181372726 303814761 229472318 878826567 179741717 759558719 326600883 486674488 82263391 374267832 109195943 302115714 711092317 844197063 631257290 912717259 789635985 840758828 542450323 765511044 95352233 366535820 93351472 975318450 474297116 912556562 954887264 984874655 862229023 934431635 513604740 798638564 170099743 894874554 628356717 629589586 482351779 545109811 791095864 904263008 895971460 919630647 210518733 964596252 195049540 505579570 594677688 615277544 222243853 686265954 922829280 969008252 564051525 841443882 865661067 920075286 236814864 967593287 636335929 726276966 578686460 735125741 850505804 938320748 764496444 784560295 33162104 140585675 249259818 332081972 573835640 878561689 98474493 997661247 428877347 492969083 319431814 896282762 565510619 826397354 630887962 781363147 795210577 933884357 32248090 32496695 143763 564177716 504282739 898054263 929984018 962892091 740005239 928930771 747509140 957867973 722137740 723706042 258929998 319549962 781810486 937409955 630710906 738662619 201156844 499015627 235606878 901969075 56423265 294629543 466940288 492862187 451454174 868415904 576956037 932393479 945887579 951273372 733969509 923951238 750900569 955795493 861830575 963944053 62186416 212887364 328737865 968315268 796671596 901417243 672844530 714330145 694357129 840005267 870355283 923767451 564096363 739572389 216670048 545462342 640420487 730580192 165302792 503845505 688529133 836582887 647989083 898237922 127829001 260123919 501811734 534470706 489597371 545259164 769020296 870174361 357964184 737408313 93465419 433966575 922464376 977783893 57269645 104464235 425014842 811995166 483467534 761716434 177606471 567724193 937836900 967780170 624749381 735017649 108523136 594660167 209640168 789695572 512233385 810908548 351578098 427461516 141655733 945918848 751539703 931517827 206793857 802784520 140341655 421351588 340055787 669116462 744577907 767492029 73844865 185967022 411778268 420832473 434210888 635756523 883201532 911271693 257551549 342435634 630969988 871792742 530357546 625725019 966346347 980310849 92362543 547786489 474630868 853891786 286908306 618243395 474393559 584386361 718808237 985425005 756481356 797262754 175024211 191333520 830236974 878409007 125950269 167474131 304689558 433665638 890039419 938616258 737756080 827919164 520422893 749883195 458850268 703898787 368989422 483921751 925364590 992992291 119603078 545357088 766989860 784161116 551525332 622358413 698524002 719712047 367523357 474587805 804041145 904673373 234051253 440599312 970561013 971219253 950257168 988113348 604768229 714136298 562977792 595500631 476917546 502215245 398224520 523578042 867782802 941779763 274013352 719737948 836535389 898853211 548947910 585134834 825552965 969926719 958832995 968886180 469743940 972742566 414622671 628534639 389107143 446259329 634782303 985452396 189229227 692475240 564000684 623157647 320949103 738282133 245067831 826431871 691948103 938933636 560825604 820828890 812207434 947242913 174200474 614316768 267086909 929494474 859635281 868389492 480720462 737121647 38969486 830802245 471274980 936363936 170779406 199620519 70394443 199885063 747253543 763557057 264182318 613623439 577546287 696779245 642726597 703260193 203523666 600997428 687510601 925656551 489215229 880686438 361483774 513677505 601108964 644429318 674216763 813786928 891606490 921660287 850052766 907637111 701762964 895284299 613431194 981223203 265822960 658252148 43760169 480730885 125715209 664398621 911625945 982095713 749280247 749826653 411847819 984289216 477648341 988464625 266565963 756183607 4150086 155011311 766772257 933074611 318504641 767043085 774454655 808445670 784306168 962198281 190991140 539670510 445745680 754128423 34729163 191140716 878554715 998546591 368303954 433122224 587845527 954819030 380707178 581209795 126445583 842833071 370185959 397826863 113317202 413866881 877874029 915684842 264601260 618361903 701366279 755506901 457858964 617918996 920560812 954470978 107702683 315474518 681772790 888596738 43124952 628768262 135616907 961767001 939746559 978656126 97423521 160767461 905628780 920781191 376526738 998153551 38295634 550722950 819982872 832590248 135714277 822766639 12435119 243439998 189875870 231665015 194068399 991217951 964239486 987552285 938135064 999991236 795301370 823379647 507301486 731501137 142310373 925661166 154043955 218468944 821428309 911181530 63281237 113723856 838794165 931079277 132746053 269145847 753725188 939325632 575697105 889919984 295666219 889343305 776734588 839631150 148466651 455731028 506004974 561035205 977816031 992712135 684056793 910492297 904343251 921027662 971035953 996062703 226463557 845339261 261814116 794811782 792852094 844240984 999183602 999224397 644878547 699744410 832676750 871479293 367659188 744486539 553514943 721553118 591040485 731267437 304117505 762718572 774059569 848443308 756140043 984364769 15140652 966599571 952590980 990286087 726977331 937799152 35107646 357195439 844413444 875935887 154156087 820080580 819077045 840055460 96005511 556206854 619541904 788169468 809177085 983073295 467644874 901602748 612426611 942634751 704648547 708516459 305807195 440419373 346887716 546920105 820258962 874894967 8463730 790644202 741064756 750151574 707070853 915902041 918502621 930127438 702650125 710160773 507985803 630015305 842282487 971280306 336420627 718357567 293147415 934500161 665784061 998859238 377930415 861279606 998524888 998640808 586256310 930657448 839665125 952872343 302272570 441602256 582153595 936181213 1724796 319213106 383294179 651978957 518865990 545262666 540115089 794357039 364134691 718291183 92874031 758634346 513028977 661522195 102090037 582240611 613929593 803369180 977785367 981527515 702270746 981729162 836616355 971936921 952518408 962216314 237191408 586503629 531822213 734040998 48334013 965807820 929960364 933350909 391118751 831848009 267905034 489810446 538962649 987788324 444124126 565520313 686192576 750179650 55835401 161035475 647717517 940342197 206523530 223897263 444761023 605784357 536653777 563947152 915509653 993876457 790788164 948410303 861592826 934916019 241540024 630454892 415234597 643262431 364045812 580132748 897328129 976936968 302849179 815677220 729905441 833060565 187917658 248420454 652122283 956904065 932642632 934887295 670260088 912425160 675865352 927303899 570304143 693899216 829465189 950706716 401815853 446741857 316421015 968829256 106257201 344119656 309020250 946718205 496270152 764247833 199171595 581105476 304167024 678072908 845206052 946228475 350433409 838472947 986659274 998160078 957612591 989265231 59206361 219979816 62618949 423181660 524484815 557781818 37072889 307540907 63548429 153613012 172212851 262670585 43675194 175401154 565943637 808530732 827887471 828160501 687771588 748123828 924541393 955069112 806175075 910871491 435944356 795677224 856626096 862741212 24152803 616552466 47408065 687880403 552995017 926556253 928181735 996249413 224401288 953752991 220945844 659605405 187708227 980043742 923958883 998053394 349576865 538702829 324183752 457487276 623253862 982198553 276446261 923066404 364160978 746404303 996750356 997837530 621436651 671686084 883238675 961858846 96107939 336944973 359827313 874341668 143569075 266521516 11599445 917762904 541943351 926349220 708898363 763818566 916973900 994469600 227361022 547356342 880555192 952895063 800478607 810816058 310283716 681055075 36944932 321554137 840545043 981699700 508871506 769723684 158220401 346960823 903230784 972475358 135651633 322831614 381501138 681136481 712639532 846797966 684220074 739259337 445250012 849133726 138340660 679484227 65075298 908067846 772800007 844004124 298436053 716348619 161468457 636211934 204817845 967667733 552992605 845527935 997081751 997401624 449752290 841737520 611290622 799158312 877862036 903382479 733924481 886193702 498374597 567960085 156217985 803665028 754653922 930287131 85737085 845141524 296679904 986952784 494664713 700723079 841019697 846256062 643533179 670717562 268831586 713003730 642658739 813607459 362488306 659168642 95505694 112526563 153458915 820560293 6115886 180059203 249328735 842538032 116026648 662095210 546539232 819158589 774570326 781544498 312134740 667141703 900995296 976257792 528816982 740575123 33474313 149137070 932560297 967032693 648714094 938586825 785881234 802645675 870481704 943022779 610179839 947271876 113649230 871209953 616117032 949542766 874458077 910737488 750227181 872912305 595660544 945935603 834984919 859938704 602348907 985056953 15884712 437694714 477225508 777149253 318034791 445774529 60109635 64061708 528942169 881486688 360718565 893685188 991994918 998853075 551752688 875161476 545236004 889587925 254090369 621321315 935560482 969201564 592644030 951256790 79851036 266564588 547485362 981948943 598060243 951969346 267391709 330643855 252655217 348608424 974744984 989054479 972926491 973050215 26410329 457825604 236189090 849608218 425795410 452152036 504074185 672916047 99393261 819389985 275130204 812645007 757612829 799658417 409053936 422165285 591694482 860386625 819763946 935883773 825015624 873455552 237904929 538448685 218519210 485288182 891643304 968668147 945652021 952643850 906589602 945375025 694596175 815589147 940239692 941566489 172139571 607191490 704202207 790472402 88692422 330472422 713949292 981793284 166257371 647438079 237275803 242200511 533309520 904250960 698902308 828813334 337439911 394122827 587725363 691015378 820932033 964417343 213712359 242185715 757029879 944098546 35263002 187300455 331063765 420375473 892562927 918856416 89808337 575261866 22475589 145584494 929807331 983791984 708553566 937216102 418383986 649325672 484123573 690942840 705305842 801867418 933243033 949363559 178759910 306193826 298855205 694955749 300256065 655455175 806619658 992830090 980269982 984721277 518092406 551033208 282394020 614326802 675382139 930811162 943342320 984311321 411176693 706383609 904783274 943457120 877698096 916146281 892853752 962894242 829590146 857180958 953939082 995716082 174725539 232823847 949716815 996962967 870574967 894923973 586606522 666065018 352636920 463808274 652755477 817694952 3931423 729892642 744938560 928529866 549384816 980825570 638774643 896908236 22580297 752873499 328259700 602143172 354134347 584470947 396740827 551312805 188392963 697205854 405889533 647646050 381323507 769132045 19806746 98585246 869316190 979499429 391771243 440572534 154851294 734930543 788003738 990112522 429487588 991327727 653457829 925456689 410639754 887828550 231515216 502330825 508739831 539539784 527408009 814693251 645831248 707160444 11256344 457631587 23495361 886936165 31503948 799744591 570102118 742036674 634961012 693780951 223691515 642909942 975108104 994226707 600362690 885014111 599229834 849322093 665308342 877340407 750022719 892041145 257810101 551649889 301783499 489111367 565215054 624650708 789233725 956248907 916060867 957111691 656626840 970866085 576443643 884199463 306174629 671728836 459957346 540788920 365903597 836324504 986701306 992679397 154663624 247593548 467872197 749620904 752895090 885737475 277404552 364183195 151551365 863042723 408637848 813862143 879840881 968379530 258990363 453282408 222752811 270178414 71343544 927801646 30772141 722143670 956782971 984240478 950985627 957250964 731649507 930027851 742969068 838306489 150844479 861549082 419986995 837040317 439344481 929789131 29030402 52971733 934683744 973588274 502533076 648706936 340359074 918403733 331770866 527168863 98430041 540975545 640356012 797139834 60525277 979009754 411982481 549169949 439075103 824507866 663478231 744147419 621998548 825027844 132045937 704645561 505199769 505468563 197190583 539630275 197199505 530774447 25634417 813678564 590155316 907132814 872710993 937808789 608723088 925419533 842922043 863778716 718414611 959460179 537589546 737185974 875943656 972739964 840666302 849934929 546654637 588375333 433300103 935555287 847681536 907700166 567200968 888634217 980319574 987701027 233519539 368852863 723324806 996653281 959683750 992045629 93436183 167285432 697423599 782836713 115990287 209243950 392930557 467592965 612632211 839742053 334439028 858883975 150644522 333917318 493661174 972407443 914771636 949612109 475976927 528048947 145013147 606437972 98787892 362115706 22133076 32926376 369909454 808103048 788066131 878525094 764423416 866147611 380435030 865572678 142682563 893248098 866388409 941171009 295734554 922184376 329010834 801831517 323082830 602972053 170211510 756178309 825637893 869264558 97165381 239599696 422381282 986139406 613138930 970096397 222315016 425589255 492058372 857291087 133976301 346389290 65137333 881964086 433378939 841248693 921962428 939290234 588593630 732881550 631052713 988085158 528575522 883885129 265536196 693467255 255292770 792961985 351151162 713410614 633541647 643080873 607152604 999454355 652925454 734451357 846135755 856373508 441689317 651595070 433794960 518348388 243549431 876276633 264247083 960040602 54529212 348707260 691959162 764570531 135774917 454244161 650860097 765768439 813073699 861861372 188009857 270144985 807424090 968817247 655997613 996228918 320791037 680386444 379629313 516281784 283652662 508400850 651367603 790201401 955546425 981570620 80248335 215984713 79600771 134818233 480807048 960640175 473264682 763106793 856014323 899182313 553094985 957318967 122488648 728210987 846355202 888394242 60672509 244822735 385929325 491767293 86973869 666818337 133065209 712898228 462945583 864424217 533399115 969847152 169913689 370053590 958671166 994383639 363807500 473242436 714195182 905026700 621114379 662658543 284324003 488919026 30513853 564653078 494340445 961154863 977257724 998917548 184893305 648676560 231328303 631038298 576874126 988171365 263987321 862663516 325501582 732205675 283991040 497744539 707338481 999615074 32944891 967308101 140406261 425822317 83251859 317750344 894125612 966913055 117485541 389558587 416323689 433290433 351029476 445674763 577157183 588987097 497619910 818861576 718317090 892204216 111479480 792986706 213843113 297161974 250822401 572044192 288225948 965055141 751366257 801924726 248962205 943356317 27625208 273810396 740915944 822722719 119218846 365701343 717438387 781175523 306289702 496431017 864065493 967129123 653869881 976906035 136178835 264918086 408357442 777654632 134734864 968348679 434213140 896236013 268635159 789487713 910811843 970054112 413421303 423478250 657026967 873679437 680538745 762122707 247794638 886491642 836293548 897987293 853797550 866984529 840554719 938806499 365765781 866154553 844709403 945725512 647245051 874691333 698584720 892838407 781733491 891796714 438427336 699531145 527988420 762522540 202875902 834921806 245958427 834034736 71050445 105940843 53495509 395373477 365959095 685011168 32742325 306442227 932378799 967730622 854920424 988359224 27659704 300463457 663871411 857347226 750612560 937585004 673043964 961853070 742038773 791932583 913975981 966735683 549963830 656292935 506151098 907460357 489150176 645144849 435142580 716344034 533818702 747032762 192513002 811597000 566208331 575108140 859425690 920501081 592747497 723795626 108059844 811692222 401092158 406680580 739940365 965544619 772044207 830838869 514084169 915458845 316504717 605340121 955317953 957859265 789573626 814902102 459185236 596724170 888094433 924871302 590818455 759551197 156914967 336879604 633088776 737479104 538824429 725450286 890227712 952858027 480835386 502616472 281495005 691056049 164245394 830145047 983784386 994923399 160062581 485340810 999686648 999898330 363824775 890532872 844058348 867311753 6678295 366811578 26836519 729928658 614525749 733993585 823147197 874467556 768902932 828867591 144638712 933937158 196918181 248521844 14125939 201134838 77811800 854006117 801272530 837316642 13551509 914629861 401128306 831101183 478981929 725947325 6861050 998905011 852966359 986369453 238818931 685092538 396733938 827077838 368151520 829512670 840973538 965582196 914316476 963419312 202222036 881496369 812731221 866859719 45958348 59008369 323524051 795351745 508462549 812769703 224211434 421454625 501520137 828593181 531518529 720801056 808952211 911055205 528004793 808046399 470327972 587418998 450379432 722062349 725048160 887221490 167716381 813768432 157796354 687401681 861012372 877735490 768035303 985031645 268641330 933097866 919730578 941627297 196260721 726924269 937943608 989200167 760807489 976466515 777694788 865920431 78708884 395161269 928721988 934977591 945162909 986279549 740843257 910480258 711882556 908302384 983726228 995103691 411333708 711324054 329445829 767663779 317981034 533101887 380732636 683589723 422397907 751768715 471221167 800115089 199849425 573309867 650880277 799873468 552528071 889089725 444121898 855186874 643930216 904969911 458360877 475109621 763708992 965219375 247347930 907408547 48080082 136316198 221145346 825149426 187080325 948990416 788196740 828802107 835784085 999644982 211427162 854684788 828146448 886763567 741286839 889977057 978429960 988119545 288943472 556381138 548933654 625826116 239280892 651480815 625004414 747644199 26098407 593355149 272622321 539033069 279490614 551241478 498311424 942919052 980099995 988871480 464395871 900304048 385768685 422327491 357950013 835601303 303151355 995780517 732705702 742562887 390389670 811859351 478836891 732356572 530806033 672233275 140260422 520916274 819371223 851724703 340307110 392320253 768905801 801305548 202490379 726155580 703366062 777279458 773779165 904076384 254512903 699048398 228405619 446454668 993180552 996560764 452307764 965244942 875938136 952466163 652694758 947667237 205352041 385020365 83081992 468347679 213606361 316210258 83188697 803586137 264768493 815904204 850305952 912760240 675892777 740143736 123635841 653695424 739786816 995163021 872271056 883148996 573139469 859871865 400546977 512081952 378418739 909007657 101219744 972658039 17098393 892984048 999840436 999909186 923773115 966714450 583836270 862807709 818104027 835736318 925458490 931796718 419237346 526940440 191443654 573698346 704605170 963835043 494517829 718249534 719304905 802999768 138699500 154299600 967588001 994291084 431186388 548632862 602090036 792269546 183835666 680782599 316770378 591066453 722454896 890632597 263977554 719184394 91932585 827588309 924519447 947699881 607501264 889827928 426740128 527255142 767685816 845391295 84605276 297960530 567973064 603845099 988296341 990058006 733265167 947937260 660611186 725363833 955027000 956452200 554631925 718548585 546724999 865345823 859766885 982058581 502801559 967876856 859624391 887201187 130968264 889228753 163069686 561655469 127397859 197043272 42284561 431662432 371978424 569995608 158246386 874106550 965925921 970245421 695328835 995053407 611215512 690658197 651033574 951108873 846685477 945489303 41897003 838478175 657976289 677415775 559593956 608360314 935465197 997110577 632310283 801945101 209745212 311640722 711885276 944801466 233642628 770867954 773345215 814635964 468199929 715637236 477928903 743799114 500123021 998555307 774480850 984241117 984178517 991964996 198709689 460764803 191826261 768230055 986373766 991597750 875704615 927423950 741013420 796789871 839311644 839387433 401979664 833471877 617889348 772048003 566926097 749688085 632595472 860132022 694521964 711392533 617358081 793794313 263481618 587877248 621839311 770175117 482169361 934467895 841796240 918980193 198513484 696489977 603824409 680563790 648997171 769544202 619343415 721837846 623033296 767966205 92367713 454547443 625508706 840641856 725640788 806844466 86593143 831087057 666273027 929114477 144944680 225166289 203597047 627786970 183923424 333357750 686207368 901222380 984129662 994785109 537322571 804620222 32956681 690829974 115175908 874402550 463465957 464997844 317374454 711661819 274633550 588851632 181994179 472113942 514517612 747635826 119022708 189832845 919266025 974959996 832428457 850181197 418571647 989361319 59206544 322686852 51820260 114768156 163178936 168404201 405439835 464696238 707128316 908319186 757546138 865940443 929962380 969240018 800632745 955171275 512426285 547471992 729290359 801541583 130094565 461627003 909605657 995072101 259931165 373459330 256616353 749285045 313374889 892837078 420573395 776907420 662922124 752735418 778647535 997268838 690510501 925040175 487466842 918022593 443660543 788829165 450360906 570344587 716140468 804807811 62237012 199791590 650797777 855026013 3869945 535640617 947003836 967953151 776648241 995649767 81679954 98826744 89929864 475428393 505282462 727621841 685131438 720944357 952066119 953748488 971865900 975795285 15356305 195358532 395290732 916968846 669614370 797135493 43783049 49422388 842556230 999757524 10959995 173448938 90084237 545770703 65677982 371683435 360363280 395969725 654259954 714785414 858475042 978341853 96096943 179013941 11332534 51384432 502368688 990457570 428218124 799232121 930142999 998562522 923568547 945060525 614081060 878083687 474764660 955750037 360623387 830425316 54794743 891634984 179318529 824628783 644626983 704558687 924128645 932360613 58601930 713896785 528396861 776741214 875922478 940618094 700948977 870680677 532729199 685651201 491024678 517367364 811221718 885406432 107564432 493018161 704008403 770199452 89025002 687785596 68415246 631423951 505461602 831812174 765830364 879696853 515110747 931710040 983841250 990142258 114534033 778218598 919532935 974848245 172451612 353914140 942087653 963589187 166608750 437628428 889192940 993297153 567243303 591794713 333748417 517195349 80617949 957036739 138790625 861226301 583879990 928407959 751218305 892935046 225234396 807321423 789442313 844155191 48066208 443033898 338950491 627237275 826428902 983931650 487651670 849918895 985167002 985534873 300227271 348543464 410142760 422845345 60143133 146749190 964298821 971004774 380932301 804513632 197382378 857461420 417447168 796772303 108183861 966256410 617869490 870606507 521950619 644955068 249619395 690647842 645664650 853591563 212650506 862925816 411733173 740924961 69865267 754596436 913204407 960202624 499431755 673443212 456800407 910510469 500847417 538761925 583986038 650653719 502380038 709493465 207265727 720814110 782491588 925334114 698731544 733626256 212115738 304257637 427134444 661157240 851060243 899693621 966870928 993118944 841420106 998079221 90504378 611051221 687744573 814206005 278809722 715057830 167646745 923378889 504038715 814656563 944881224 954165707 646389807 922616541 989978344 990384493 819294211 978006942 280659981 659234882 310436431 983464415 714114216 926900356 17603353 530294530 340179579 466439064 989064552 989395731 684883261 845999864 446851729 754183409 93014209 897582323 684830246 913251851 589320928 739825309 158475601 876639786 66902313 569380586 35674448 105877742 677452674 688706208 745589976 838820202 448235375 968072216 483018655 804250858 801307257 884391909 889300396 930734524 720711769 997651982 498736963 939143269 498024244 713661433 280627849 509524682 24130146 409788476 191580676 486781223 992217880 995857371 720140850 877569816 893016086 982394660 496086129 524918944 626097339 631484848 449363535 768678115 976909438 986860769 516739047 556711540 309179064 874608614 467856268 755892565 124313439 938309702 728518232 888241075 79957218 81047836 945168169 967545490 91337536 431239631 128312371 466695538 966608490 984447304 639546099 897537411 757370376 862340826 551656670 737464553 654765954 894551862 457530842 761659083 927197822 953715810 546141285 570030918 279108403 688962588 200364141 864404589 631831170 853937304 709690409 907686542 833442726 860836126 186407597 961165577 459971736 698482721 75173226 744746746 53826274 350474602 300755074 383495128 353226979 581690522 606718884 939808502 28068007 192271208 316141776 524922947 243589848 671546583 683773520 978136956 273213192 741429576 679503079 772516242 133432957 205726393 595679939 795856501 86981736 100093426 316888803 439213432 437877517 441041689 707764762 781539827 592756951 826547456 560021280 850641240 456004174 457607991 267277676 443962552 90897884 373456935 981368219 982426344 501460953 683417793 910874487 915789397 569946942 903685799 211116677 847858237 482342969 649753270 401396046 545777226 589814484 845048768 999896017 999952900 642515995 647457739 183148794 447721873 700366471 849885001 351167269 469328365 246837638 341415639 792708247 877014110 596760056 811410665 305838553 432113778 996000205 996252408 547459018 955579515 5577187 352314869 855635945 895591187 447329236 561118361 903285054 938005631 610380248 779484810 483566661 643045952 718951536 743745522 226259091 416529895 875064986 905264022 115128278 560485810 218347238 981016863 180528002 879659114 282231853 414692056 118111 821220845 836661303 899211863 471604231 902719179 518836358 639322246 178634808 367818776 80457032 983542291 965374231 987755027 861704590 941730740 229494526 829100195 890246543 983392626 408752332 667411445 479268387 861003825 971382211 998727290 135936276 990116054 778915850 963525681 916082271 945995104 380951053 438679165 90118347 778938258 812725213 872785184 334256556 955763679 192622187 506806843 332379342 548377715 38762310 851557457 201573594 856689834 310676438 826437145 937812923 970868728 132520773 549512615 489117610 770686290 22702033 246959030 169322943 384830367 923555785 952729673 692030384 927060356 857492843 992201969 60832553 834210605 174861248 414373227 975864603 985699704 549157684 722517410 782611920 962941611 368615783 973279696 709131731 767376596 449439862 640603060 996815593 999495992 385509117 579042949 609926210 798127847 329978106 489875671 590944728 749805013 471496301 972988787 737659987 854142163 824463204 873441015 239681694 993359356 44529774 585421685 904283929 905657946 793675888 959635235 193760362 836436943 545292078 590636613 515489064 884462309 10195459 391395906 748214053 997196238 348320879 715247591 998744638 999316587 89717421 297873103 391149036 913641274 385270670 658990567 743735932 932619558 776073675 815835389 635292136 641068149 994039424 994279814 989880681 991633493 20394622 92577315 322252550 460333465 188321183 894672685 468844840 580884001 946921986 974061819 282218787 376774451 174716976 961048931 609784593 816501042 172713879 863157925 333367067 424331084 593000543 952713521 583269525 878359793 674001289 995806350 648680334 780335745 237995372 291234472 855640566 967735375 895114652 983834209 275774070 633645297 730701543 884676494 146907662 850196857 581831679 958225384 463187255 742634121 806651420 962954951 590378461 718497935 914868303 964100247 983820664 987316351 976875038 998256163 278121990 467680907 829155250 908851343 544997378 707816277 322377587 337194623 165175285 408422402 359470443 785092320 507077031 677201883 663251228 920882921 436144811 595724377 312891103 781826010 693841440 983757042 719859542 798350227 826788744 909374294 333840786 340363578 710010851 976566067 301494069 698042696 392729326 980497745 918585148 949971165 340074867 758160618 662272654 961051216 801259878 841555078 813391088 985047196 359563764 547146475 186957154 488730877 367047609 669938407 818156095 950116140 539952487 865902176 987180044 996857405 730033508 868241778 519123407 645538678 128955160 950958347 526570299 762071556 338971539 703476467 305730916 480648608 197901850 972393065 747350676 894483381 547144118 769669137 465295163 799053382 293226982 581313913 29471645 568565920 782044571 831555729 219182615 383181503 680183983 796312696 642715410 769953432 302271926 534513941 29802053 574052316 517070425 872836275 328714169 372670989 895622765 971045757 234444678 279493969 27433471 307989727 99682836 569500102 769166648 997566000 497627281 594803921 846724383 926612140 115420867 651500078 860574456 864720918 943256062 961884306 825942399 993824585 15244807 970063658 370948313 748330449 900438118 993491415 767265916 916502713 417942080 690345087 945936594 996613180 351202519 708492066 808858409 930479822 893508389 956099725 931898370 997859227 866524251 936065741 607357530 688722441 153782393 580247555 227872533 649776967 676603694 758987396 373114849 393563837 549919195 684724794 485307490 864727974 969486470 970398545 354243705 681717453 912363914 991254667 387101373 833865087 67349996 249691184 594089070 953724134 220296485 928466595 356966526 376504928 908638993 947305003 588138716 612321707 744012980 880071006 882149057 918344460 251000864 434619762 8823409 713170169 167965398 412171421 377711198 901612450 650111776 766567508 333494919 524579390 435283127 849629590 488060505 567666353 820625925 920623952 12461786 997676476 544121904 903168088 322568885 643783219 666929704 999702551 63109086 222502261 842311618 892226408 203804252 754060131 982745185 992969507 708305258 929668975 536064443 939873771 680241855 706772068 143941467 511948682 440362131 669371340 476422171 937635277 182496264 820923598 337375301 732438621 549776483 894222674 621422274 735046663 728456346 774241899 320081206 913632420 406334855 677221343 278999032 585675521 452802361 764687222 795025451 882699823 55527253 367049355 988209308 999824729 332540834 787115732 660809130 865262592 812571539 913173499 961198369 996472683 443782650 771494272 413966685 729142152 459456352 997287426 580460453 605829637 772738039 854192701 703414801 981835111 383943742 574614995 178953160 776947649 425407312 428244464 132604503 744835254 763642370 915964490 450538192 511823625 10195608 419945693 55119880 123925271 486278858 746951018 883604897 959986357 330912845 960809283 903552103 976455905 566493814 901114760 358683254 540857027 932703884 964731106 512809195 716559614 446050672 752331273 264434180 911517141 282072633 774068754 101494137 592132971 692933856 740591198 754902847 840266214 392936922 867107755 9495485 633824248 680422413 846363558 3496188 995412507 116563013 580524962 292580172 762172206 774081985 853707044 326251061 341030745 353160024 454869733 139594567 984798682 277909390 785054527 891359763 926616711 971372907 985992129 113930215 461603163 181710155 788722320 284465412 748619726 94968904 182876122 14145624 229705301 222219325 227023050 63461968 534960602 850991058 992250306 588128367 959458646 301488495 520086462 912883591 944391541 478163536 943127640 332966574 912025295 704189281 904357285 974625050 976514641 639973949 799278077 934820224 994554927 412165126 515807802 495227413 585630753 973733800 985732214 118994224 162104293 65944101 887771064 202695045 365093554 316908271 993510767 478721394 992425396 347873529 434685928 578811017 602197281 132762623 451854304 110370420 269018480 629398483 809473302 466346321 925671467 706895986 878798383 678635347 920602931 542004509 845580238 522933518 572322108 469442264 601255532 170383566 306772873 254160303 919090947 831775942 964307117 228976277 410954862 358590926 817180111 808831427 921366110 166331201 417857340 37378322 324589030 549200040 571089026 649300713 700413918 58601500 360073438 384354375 578504145 177365018 441363518 957403411 990183434 611576006 962713879 99976295 923618585 619385429 671666750 469436144 968037927 192955619 467609833 302455217 762226154 567368107 593963414 57709161 555913639 653769436 916219911 253791899 381526099 241936201 314198699 436869844 729883764 857385302 883760637 632593206 885127869 738397384 868451884 400905218 674208126 418366407 979175818 680090306 782578102 915512770 990990225 446224889 791703835 681647264 871596444 534600099 984187435 537576377 590945348 515925357 833419915 752332837 976021417 911021529 975239281 656212483 936469340 229783698 236725061 883726459 943382810 21487645 99792907 788755017 928576223 157847089 916985852 269707830 476465196 266092916 951444279 577539996 583597808 707998028 737597911 377715431 792592966 167795603 463671920 773482684 815268256 21464034 35986075 778470867 918560649 282504436 597381002 957169477 972614536 495125003 763614937 939127354 998156130 218259224 897310445 738157639 765540712 38595996 530294560 984417818 994503836 138817523 330855173 362140693 638249820 619213280 810330573 340920418 732167222 574038204 746043577 368947372 932438455 699987389 889664782 254032441 888481387 713369597 786550871 219709446 659551570 527938221 967610028 21573806 772939938 865780475 931667506 771040026 976975349 84279473 810226524 465676095 497841100 215481167 494030555 720826567 742017607 604026602 714416257 395522334 701724982 582526438 846282979 636140527 695773529 277773682 594527667 272430497 316894914 366446555 895055576 158728234 431608412 716263779 974090263 300119028 342180965 684786908 841156136 172410996 805187276 607350120 784477737 369399005 762504463 128521887 955064560 435580574 967606174 772469275 855489562 787252712 951729560 172258959 536313440 847129950 928651287 657949969 728204352 108848792 615808627 923634509 964959584 50001976 163737955 731098544 876687296 989531592 995280122 88081190 589432413 26035820 787247730 44892986 303583986 834241435 972050124 833617924 868093990 969618741 988809855 593530764 906875632 697405222 877338901 339249569 725145535 675988864 994448771 690084588 736998175 970363854 992027353 477084232 491143200 280066761 897877960 586198583 824897714 719788313 926802086 978932436 999234549 492091114 779694964 201144122 919138748 652832804 769161287 37379798 813004944 478619656 772442704 640717757 764270585 249269732 643022001 643122399 710246733 379063380 415809513 923693824 978813074 596849314 681680093 653300266 764766210 571783204 752124520 792193540 827881789 10713689 450412213 996380094 997723265 936156273 966677250 191619253 959238628 622117671 782580102 963097676 984675845 424152476 473550673 773853097 957406522 120008436 364320188 564876598 958410946 920128833 931799255 233957611 940230655 602107059 893225012 35591351 610026511 618728125 667820950 950518729 998754871 196524874 665376529 871266063 918077094 339205737 359063637 608326811 762265229 711970101 746686124 235679579 512274658 642273585 949677248 186553188 327979260 104049600 283540337 623340686 848296956 510227688 621130658 172903745 995194465 86331737 848795829 418616733 841013688 925580343 981715580 512426693 845586222 633101106 937068540 391310154 606618833 353023856 461595039 350455392 663583907 298725558 611034498 441341445 887699087 170838568 985906109 15504332 342092582 46636738 338896158 1738493 641503751 6314684 935590150 91511373 216831425 621080495 855070963 269410417 751759187 413161273 868813760 533436957 831770466 954674272 999518229 624927712 834041722 975009981 988430692 981330454 989097140 680454368 978647347 949411505 966349605 281813190 825560140 506584650 557649549 235876722 512896405 181922749 692263085 320254543 553342107 759819529 875878010 42683362 677602650 85268660 713274442 816705926 945931719 581998594 918133410 107560085 954352209 270484772 284846544 366214698 933143509 186070037 208606110 735761422 931152566 287567337 614945407 674224970 912644314 876580634 976045887 223105604 672138851 358736335 561962390 165976098 753960228 400491828 875344999 3858852 809891420 81339172 524096779 512939962 862641028 774337238 885072565 119138330 809346467 243468424 414878415 974500923 990625762 728740241 902629087 878734874 968113804 751394374 978225613 1951433 393044526 686759691 874497533 974555840 981722501 372687946 799347412 505394597 813295478 761147688 792517777 793933610 880223368 839568119 981442602 454696101 561552608 124589784 768064011 689384299 855596796 30900043 718827257 148278443 218452532 662900448 675487726 203485527 975328474 493095079 901923697 236152359 532064750 714811092 911890224 586758344 857339058 117918536 941697799 786875245 902894137 69015845 706555248 702474080 779762973 354913533 607902719 915611228 925114149 489152861 509606394 874599812 900462578 892667427 960021152 388234692 849677778 936162633 994115078 760863964 861819767 777524961 847031369 971584655 976430087 120519952 627739312 208489272 334918045 155604677 240631334 929460912 950557614 217684637 251900358 403921303 941001172 239452624 986361265 118031374 821999735 615973083 937202011 97585813 243680321 807094956 814808312 451616756 527628076 102547853 164910499 245380266 318005898 214125661 217212788 694762155 854399258 864736841 924787737 943231452 947105272 260116424 815195865 822910027 987362744 153509816 849189433 708529730 914918316 654099076 856775292 753941256 873946835 381396102 515078120 638840377 900056961 192603939 656891638 681429781 964305503 407758205 848256001 414144259 760934329 553146502 784894311 509804057 915991079 184618276 730383833 727401876 770260097 945221212 985302361 50483514 543146729 847880332 873599298 402276386 976903690 901332617 939667140 57408023 448173623 247578950 485103499 557639553 895851825 62929653 971515106 326006662 863901117 81537913 639010926 899647487 904386707 596109484 622058217 184469745 768207905 671931503 997591378 457556840 867817997 259688401 983390164 528353504 693997925 107269261 194230500 587024792 910358200 464191449 997045951 485798809 944417844 612201372 795338275 464258934 730260098 577147515 781331740 768241387 791132476 644400232 970465087 847649630 901665658 63891890 532177363 950964476 999036844 146270990 763617167 554154268 843432687 973321259 989980080 348454333 957906183 102981152 966454836 125542402 928000400 406062429 866982520 888007565 964768606 312047756 553713994 465945764 650399297 173635032 811889175 423683342 960260813 136098390 586478498 323161980 834082747 376340152 960106719 869771398 974151850 132127326 954576521 463723224 569065565 518863941 791281819 52478504 572614588 454161490 990544645 894946959 981781523 792435612 863791236 166011819 519439549 501900308 663146373 740521165 843080975 95365992 424148516 62522574 65390077 843325259 945562199 177325828 588956945 753039163 842029415 519165883 833005514 673367335 737266488 351666823 619954157 299530501 619979220 237207222 908614487 606683184 799482308 781111018 881440700 324276714 420743358 641212429 758403817 761976208 894575820 225491495 546284937 623542702 771038976 778916500 982678639 141765589 205573519 558392718 685464683 709349007 827341340 518125143 747023720 667362959 728665174 912218543 958643133 365996313 772447852 315943263 606748446 351544175 858899040 953345861 980025923 379332981 621832149 999470268 999946207 270784928 628665392 734219340 982318629 630708747 721202053 527839882 945562679 190006808 702727683 888376187 971835317 387090694 766475470 58628995 173276512 117773337 348210846 576122126 640307093 485166232 829120642 738056410 811425631 102515177 271731546 698231685 897836017 248051986 637035948 576483332 628718215 58404992 794370973 391276316 635575762 616306829 672102316 35587846 307240590 790517382 830655124 722596582 983606400 483466190 610513213 493417016 852092924 28339296 805158890 230212907 580554593 533818933 896028028 415474434 628876179 737948781 972237877 462189246 793359343 298763262 633431546 379131593 781482066 64841523 104801575 485178849 521260883 653583499 743860755 988127237 991904075 256403101 869858468 779495054 821920499 714282797 767482419 40628754 450837438 204453810 812470736 723437699 907964254 892906130 990417864 168246786 334133197 832876377 894264007 859578412 983752682 149330233 769254039 765634696 898301406 173624124 636461952 385289309 959582780 864345520 871738924 827760548 983237738 723569424 870896281 266886651 743560068 880261636 996922051 620034045 984988380 420805929 676708534 218568274 413230022 96888661 709925553 3043112 931957586 963844122 990283628 738193147 802263118 703362765 830198251 457533109 909845467 97003556 683641027 856159227 957576428 974266615 993392653 593591203 930500823 649745269 770979379 597298328 843936515 94099900 885371302 915306415 933059237 941183881 967967463 471914694 839907352 57753989 497083179 876024303 987427820 781942649 785698238 616381523 969898243 453419253 973401764 973810690 985475086 503170856 898015724 914972330 993784476 601227807 909635926 626992197 704758189 925075108 988050202 350053234 593589125 344340339 969126439 907086541 979801207 914749588 921966523 529711861 960798352 677771995 727088863 452613595 454239235 940202979 946744847 761016169 883890295 913230382 931783216 317431712 987381466 22915216 558535572 265216191 875657955 252991084 867731954 309491732 674626966 191863695 433070746 49149564 925498307 226164205 883958023 510724061 946119259 821567818 976652628 943131344 958757314 299141830 843787515 998365944 999862974 770210478 900769151 906670919 926228107 805968732 925509949 974792061 983875345 677257065 743808399 315991964 366375804 362511039 370714787 512738060 530256013 998438881 998791489 871681938 956968529 187538924 542247193 919172830 986540513 770948945 772676751 208711583 473729379 843608161 844285104 521635473 931421817 336504451 542075999 262981530 609824896 70575472 182754353 846074394 996827330 529066176 938045706 737120165 874867809 693988157 985305553 178588272 750271628 607512280 934250053 673930280 680113396 473147342 962000570 768856415 999488617 732665945 920470094 171419067 271861924 590513673 874641960 153782614 794892352 649020744 991551977 822145763 995567880 429597202 974652894 659688369 822015139 733906063 937473332 756563734 965615478 626415522 792031865 878044507 956449990 51334315 912622066 560496930 958600288 870568919 884137638 893245235 903105642 784747235 841984837 802972670 914042899 223090045 765164765 542971011 964008013 432447557 646610451 556113243 629526056 573915402 736986919 319815105 553907998 69570789 705045016 930086831 944563570 511739861 553292946 844163812 921652649 462456740 735649689 531531948 847263253 88701379 597498668 649845005 867252456 907305492 985343690 555604477 980876086 895641735 931749666 634056 552709005 275010022 310797342 864824133 970955663 422512779 930628241 429860287 991784617 670576255 730671534 353910428 574237153 422751635 863002843 357087164 479025621 1891091 267486230 213526424 709051985 106740437 751350223 125986533 263854899 889716196 933015124 184239240 266257952 510752271 865401393 988464023 989480846 81032764 123113132 487199971 928810788 160384780 953870743 951916153 964828466 942229328 999393899 256429558 857578720 331784127 888878155 862205595 930351284 229335974 931414146 681996588 951446932 832581995 879473667 867772192 993488806 597305561 950281703 773568885 969989302 861803241 884307572 876765979 904879655 396398959 673643734 215215958 892227728 755631359 993621856 28103779 342711784 398595251 983988217 370842297 656978986 975347767 986985388 225899081 733037456 864038608 889694051 436703681 611244851 314129488 483362953 463210185 681751120 482704172 650320059 661773974 737921456 983814838 996256176 609162656 699701559 41813147 853389511 22438374 756265471 21006088 182952253 713660990 826416849 600181610 964027468 39955074 639149783 300014598 437875202 254586200 444614787 834721610 987348453 83500104 786782757 322307372 831505043 24600742 558198497 448668113 757643676 359939251 981015068 593320922 767228740 242236241 701293427 232022492 856433050 908855199 920685552 171647066 236075013 55419420 326700461 106364795 110756811 274419383 525179841 261843297 275970478 650116289 729417969 659038994 919252065 545193670 810824854 34318380 619181475 392798456 594579066 560433804 774015011 624429470 881394443 541799094 774459953 581279258 683097623 778037013 936088060 591117318 806147947 953331220 970141738 197491464 601320809 533330955 794752979 301396171 555558189 714288431 754339659 391731179 745198869 826373598 842259077 188468997 579145660 673265824 754990880 93965903 808433722 369866735 665438893 345918525 650067851 650678574 699642465 286664999 327751469 954070616 997081549 741705272 923786713 674970544 823862115 402073277 659006946 651333613 819725764 374758170 622384225 299942657 379615542 431650719 758119825 906007806 928665054 651385352 762754901 225100528 339038378 390881140 989541900 819538878 845948592 525341735 745606855 43814470 134208096 407509685 755943619 509226984 969585554 306929644 615228916 541703730 975980729 803467512 903466673 130292096 821223992 709518605 789534147 579237391 816169165 660843215 761134648 586417092 644445036 503788284 644549481 657931418 976346798 435325395 897216124 266711917 726866241 665702796 697997720 327659631 420140085 403268210 675850428 516969027 830416941 940859370 968742750 273402124 629808379 187713023 938864031 93499787 796531644 293403533 652254370 772154780 894508048 222027186 459661523 29715628 364945740 658660345 720787152 616142911 852847764 919745105 976413156 124444112 944195526 641529923 893964965 216988828 270714247 328332237 608812081 361893414 457092170 778828271 869488458 106238403 732955348 610022734 889196730 317286385 715886080 599699546 643266433 28324673 499302848 516991097 804483054 738783199 810782288 753729750 920382415 522335039 880981225 965725656 984504077 319748357 363325861 809299451 863996003 559980196 963056888 187943541 956891149 66271466 322834139 270029448 987673814 592751519 936589711 146423122 587154901 466857561 778290505 665257130 963383993 94082217 353911988 301278824 714702415 80680352 286383724 684545519 916888850 37178218 776207131 25591676 979880648 878289226 906352628 760013641 797086579 68310967 951860244 953705350 983847230 679482526 986987469 217863759 365575023 50706163 683559877 853064354 953545938 170311694 505384276 918594668 953654443 180497791 294559175 519883161 752584366 128989198 132118742 204701842 366423125 492286743 684409867 973365639 992559810 947862150 991611225 918533718 922436215 875123689 888998693 523344969 781576573 157100350 319011475 775702747 892370511 213785911 860847119 803606722 914475034 578836660 941780105 123077610 297294516 464376231 927506924 536046481 695689294 178866055 612291319 440256369 639022795 302762858 356170325 69530358 661030257 154718351 549814967 452967117 657858659 965231981 995039859 520536665 840251038 649287282 907992401 727199327 909602559 624035233 865204396 976956556 987766106 932920324 960738963 370266994 478511979 613627983 949444759 724127846 848961560 797678355 906481658 227114333 501052256 61246912 763181545 482724017 711531457 309008810 418824125 440696580 561742962 175058226 379296070 386901046 657151644 302121148 624542410 531581554 666688599 407691930 847268124 802410005 999184540 272527658 869403535 743735609 797241643 418515881 907479106 328099278 956753499 341155743 553283176 785380324 879007315 976049648 996847649 510823067 574403427 48238653 919669604 304157656 692803103 672186560 685749003 482936048 655523978 792009408 851790639 413801764 747166111 389400390 463189429 948156105 981835199 314706745 371372370 888783728 963810027 863462051 885270860 186068520 688877365 709521519 920064431 803307242 968219902 597316895 628699941 947867597 991215365 295844056 353589668 270645488 674129456 924843220 943534722 260505723 417170521 10401467 155941576 628130680 794448046 783634757 976622182 377354689 807912874 6081783 164390148 380684202 979156952 92456961 981597274 753399032 757510600 69340256 384982183 202111416 937613722 301144580 880117769 595531417 842506397 372487553 878870698 164164056 486035018 726578749 916322761 690608474 835086775 477103382 960848693 966440778 991452808 323854011 585005949 11421006 327743238 837746015 920106440 897486597 936551215 40726767 407856002 384932893 647689361 149764676 462646616 99617003 378357349 58763014 397125893 338994749 341492618 663800265 992324993 986629733 999638518 582812315 755057754 547228139 740119811 96731482 695830587 472609586 754701518 72531971 534132096 42009526 899853768 287213768 598728365 398203041 795513395 828848040 978007561 47085838 65594887 203530494 775128418 581708505 979529932 744935543 803059658 406384559 532062696 57795292 148709918 331990526 590656238 414364867 623219184 994465773 995320332 10976050 716198793 554661363 896515574 331525259 718097804 588111004 932941010 653024058 857362561 567579059 754542708 989904411 991660218 669424514 902938383 865549977 937623343 610176196 941476909 492273385 763756730 777164081 837865212 731660532 803659712 72991867 700019872 430296547 666657525 822077053 970019510 807980764 905240810 16537610 374365497 930042528 947319341 683991790 853736666 961207846 990985418 542826699 971583529 70267187 271671487 542911250 600981326 759999791 972312550 902221598 932257058 547286883 997141039 740846573 806194033 943167671 998333179 886357158 930050827 235668026 637302577 841209753 887764617 48593182 176709688 568733500 689957262 816926527 932063856 810737716 959587641 834068555 868470648 247598515 258954775 768325310 972579277 859415038 985506827 336693069 497906218 568741689 653843577 901947155 927765114 272303986 995099758 810911052 864970896 136633650 725256527 673238273 843104864 16515568 922519853 500198854 895146757 325057210 905438117 180334720 760790821 90511966 903670434 159635670 588829266 650577978 672342956 645326123 884183589 442140703 893816702 210845922 948253281 171824335 269184045 626474983 799031250 213015489 320201355 848315097 850378714 558720642 614424758 237199939 673827551 709646823 941235037 164827166 880634708 388946119 635758131 487129835 812689894 717524593 737660305 438569779 843737532 256955889 425765305 936125069 947813506 450188093 825063891 273554372 446947459 68381711 769402576 743922833 816959763 691642802 989296805 105911314 609756213 555730852 587284457 110518524 420394658 531438269 739460353 661682914 802262643 306334959 962403364 154022584 547124430 219927632 378475364 819289927 866240216 296012503 856204997 961881828 989994679 848298820 894252244 964815584 966725380 683063701 883599137 772461383 994501214 528747267 975460847 66600361 282621796 869013238 885428612 473904108 776912070 360034316 774120221 307981322 379014864 25106815 888788978 108542678 949608428 391250155 778163207 784872224 847904792 883742340 994864048 133473488 713278148 662776748 826437123 306879365 648819673 150146860 863789249 982530922 987535256 158739520 298872268 477583657 807034877 994352954 999611559 364871004 969828230 125288074 550071664 299248250 810558610 405460916 685834072 554540634 970056152 805033596 882938279 436480200 714697458 778789802 824464137 282525326 917753750 440594405 480982307 328273792 833220791 576701428 716883186 459628642 570971520 398475378 615543916 985881231 991273727 824083566 933986591 839140279 955204473 487372457 878334272 743721749 927229198 298990463 391311229 139146188 318730334 781099339 814375941 695936882 891360303 528787810 791291111 518591329 989905132 423499578 493904158 155091058 750673413 655599782 883219730 448020539 689848550 195589787 200106510 845594828 979688570 115290482 501903920 110310471 472889122 214858213 601694281 479256366 632263193 870679280 908743778 975621720 996578796 525537690 697690192 633709776 757640622 687122337 794340134 455914198 682348287 622279636 644295223 894715003 919685081 870481600 975454909 619863904 853557043 634670300 844468844 473864260 614942338 888580283 899414406 950928225 995231778 932527361 951474834 656941604 694663478 175004630 526109284 531844800 602418398 117424233 354649025 233343608 785486629 764308332 958491243 622580996 808550337 496259994 739838937 116713134 546057114 373863265 421315528 791462609 913182115 122492309 199167789 352028125 699892771 898197747 909803767 260095020 510941645 511152115 604503734 866218691 916990530 866888914 996411785 963025819 989346554 50070777 350386592 131268695 885977022 951099147 988286382 109331058 875950003 470146923 803318700 418135781 526971361 183304596 259596003 954571711 961504508 699070480 920107497 831653559 952230925 463202674 929901274 971755793 992947578 79690122 543020957 796520026 889231577 228845733 850297332 847027400 923819539 317620304 969392644 955403909 992323838 794907195 951437289 859171372 949726835 296740651 894947298 526587818 651542338 167924303 280637844 26942400 673699656 247055737 649777053 611808871 960657205 806246059 833118726 878027179 883560977 228990976 752863178 171993071 831642084 383940654 391314532 743247503 988507226 936575050 967346597 634995100 760363798 182037075 367597063 843051022 848881829 216327306 968507475 778140943 962186203 742084703 836611283 702383750 918606403 399167918 931402551 781333007 948111524 74460434 362909679 612670238 883366096 394478275 483588920 496217099 757147508 617765595 875044042 669036840 713408751 329236264 924344667 707999535 953048692 792993842 982002492 966217055 972120257 544433649 706713572 560498834 825165132 888026452 972563387 941194886 998455304 29257311 854730912 86623860 306991984 936346789 948000428 338887988 863204135 353993929 681996169 500977440 553870623 443932176 661111148 567245123 643257101 775475618 812282117 396759220 702420909 724971388 837770472 628168647 682435321 215835815 354678668 161501307 872911444 712531473 833973591 410926022 795176317 614641491 819326078 358752854 742112495 580720571 725357765 11348052 35425172 200528766 420266308 264413918 439423345 166772079 338162743 872998125 954030730 294648645 990602437 137595389 356947517 126980173 628711618 600771113 876246054 474236806 801294573 589825486 826811058 478895472 725375516 290780217 653201361 890065063 960888560 66014912 741667842 139650205 205290564 895388740 990607307 168398987 386117075 656377070 945883853 897033478 983382672 209950941 755316505 34616809 457877273 726350196 984862739 711916895 964406104 355217665 619470242 771696665 904310043 131747123 618752071 276901036 890733504 703960925 900514681 398673780 776525398 938424911 977180493 190134944 714784897 230683716 626600792 664358807 955356924 825038752 877388183 28173367 293819988 966123458 969061532 73187907 395017760 254764786 876813931 552421929 896749719 20356746 892457096 477434331 572962834 57900405 163050415 461733326 736731975 877105012 962174633 316588178 458128152 894714666 932077282 51391677 346317049 146000814 573073149 497644516 778601975 874208930 904809653 495702825 891824077 325111970 929208933 921615193 950837318 201820568 621843317 597061118 609660836 186205017 528744870 505454412 892180481 632597952 702534265 572561688 853613496 361288002 568944465 681098468 802216294 235756948 766096675 757211180 909551933 664299804 828653889 679075568 863583948 571032851 643319418 483021056 562349254 676189382 867309586 274805137 485105057 845135508 847880474 287524521 568328793 324409708 386207786 385712262 689915796 728322667 790647422 321792650 423170906 348428835 446010340 877113694 951497563 285462055 896189028 403091699 440612628 106395267 310197260 141001655 366167180 987251595 992448224 764706502 834529027 177021734 403368607 790539937 863556297 155005350 506926286 197984042 701915061 324383456 545711729 181857346 284977198 348121261 740069051 356202368 750068059 56118599 660955825 927546881 977037046 968341643 977917497 419310296 852256150 915258449 977063993 560849260 923362081 412373270 487038728 102244082 272157071 227121694 741198116 157639543 932596446 570214574 865996596 968395897 988587426 613548666 630563971 686409403 818136639 535549601 841165022 561455075 900313462 189510818 738302028 149088827 855373057 850363310 868070300 380067454 464630866 397309469 817166840 784451924 989265992 652233152 680134029 263907277 426743103 201465631 947628694 278384623 990624278 299846968 732233522 118325774 277799955 23087734 141396584 53779961 129137777 181225623 216853315 428863489 436056320 368176478 418394377 11212869 872890760 429952113 925709942 949152203 951877715 476847547 718035982 633829985 734166119 210134795 896592974 787880785 986954656 462467506 655294753 507109972 512330056 244828945 593449094 164145329 328919478 1548965 822805326 838368353 906933733 725424742 757309817 799394550 855471953 765742459 873479329 974696686 991555748 502101245 865658222 252174806 320913707 600564783 823633884 916475302 921283997 863942888 932349442 543419886 917798958 138766633 170277205 362471948 804899111 110975474 613659958 846732243 920332998 166107954 264083122 373118391 630966917 188666420 202944593 196115695 859487054 741579581 915584749 925009413 960887647 225170874 992545553 611262870 638411171 688807052 847713229 266524591 699215228 167453080 476479340 368976445 719853050 625732818 859504964 950867780 960769940 553125762 826948974 867558063 972887147 181270597 256083109 998368731 999156146 802300630 850539653 47453985 206899443 108111098 482468590 526430309 944108832 635869837 638293720 645655382 840162240 951058419 965119081 450821439 935825005 783751437 828482190 660487232 982253237 256506769 993008082 524924938 646792485 598152997 921909775 911209011 929303965 252934947 589298987 11778002 323422502 515672767 690805034 585454297 624471963 472806831 859243725 794659675 984618295 813729567 897445385 312519708 341056891 687107059 712546430 50893870 115689201 463794440 693903069 710055974 752516910 554485744 616195737 16870224 817532100 17514261 400920866 696632546 765430529 974281402 996290694 680265516 996291778 206724209 831899947 590319508 930640697 381096066 480269900 452867566 697669816 402965938 680463137 467849874 535312752 474315327 731014381 521561319 671846425 951278721 956921459 965040415 966486645 549214877 590253069 11257041 280629528 136782930 182498080 804410608 920052637 74773893 566666423 949272300 967433061 947382190 970419202 383491726 928951141 183678453 405804692 163518398 419027696 804445861 938148540 924242695 934648382 540649317 756156290 226898126 843456664 471017406 644411282 678642110 854897472 76693846 127215794 429185820 433529710 971725581 989459496 112783746 929508157 666054091 683001891 10592754 994560115 994150570 995294951 959861599 976491164 613767950 846729198 308477053 846887736 964577725 982957922 784516075 834134243 207692257 769664771 440853747 899123604 473815947 585573463 884586526 958486206 481871920 509750035 333101757 823291765 18392083 851887761 788339497 845614101 917910257 995237706 349762307 582315908 28718909 318419354 254426142 785625847 43481516 760848308 43395372 779119915 193684097 463010557 550251316 655873639 376018856 742114235 850398626 915733698 867057161 892744971 554639414 681916141 408177696 718889290 588679878 779915327 495724540 702740022 818528836 942248324 68297085 651964364 101024608 239862206 770243187 894883892 558737158 790620444 808516716 935727181 373600764 811133860 357266818 673792667 435287938 489146213 473435016 747955294 661848495 849634195 787019664 981404424 373432927 575837384 410408579 603415469 861771973 966676180 400336411 958533120 804751228 832523812 767313304 814684426 941983471 981887177 925392842 934323946 685653462 750016863 953498048 964696300 277970 221828560 643109196 720580024 350788400 526404628 855565315 968886066 426145492 930100837 560615656 580134885 955689740 981602106 254008903 361022224 349115515 685038691 776567731 870224896 596851140 982791460 37306010 970416168 412073877 825472782 895605479 984612396 469839051 479943200 67630986 238603828 409429658 435399391 837048188 951317427 476244847 491798697 987530769 989406205 358787778 519267935 446032858 473392275 305842505 826145250 144688292 754050852 721163297 856131301 53873860 947271832 907004584 943547302 713908875 772355847 297562849 968367449 567414008 793528664 900617928 948955400 197297220 419303605 496346515 923601563 246053891 938149016 828001513 887156862 226537711 707357850 992527607 993844525 318760352 499018822 880201656 998265042 743248238 765994330 792427800 897394753 274432871 279803658 332391920 734900881 978890189 983686443 837704270 999104025 458381827 989293740 609302096 960494958 397020574 966657951 778950897 932662178 342198728 419422195 11600634 537678959 725822052 806363438 915634118 975748843 641041038 904352821 947217455 955891730 49223502 407318036 653192756 927311951 328509368 636166995 417037929 927604419 144917378 919040605 105466232 309867881 144369180 267424552 318508118 562152323 286339601 358383477 203839984 505277911 945009574 982085731 230593191 969945076 650280413 684106088 290864930 855903716 82731604 889932400 160020014 280851832 625139279 953453657 732818917 946264805 762037257 885071410 339539630 449473244 644775283 647468837 828186407 944718741 565906660 776308251 768887037 838598293 726522009 892700227 1564563 365507724 884118350 937765528 358051097 459407095 707269805 818884028 959039959 984176520 358768521 625444499 470059531 750091302 826297976 831241042 759778091 828169179 799140164 937870310 797855420 811762857 194544843 195654898 90118408 749773643 485558916 821282096 758924987 870552766 113006228 394752179 529078524 683444230 521790324 646402782 622577412 970679127 66193209 532089430 109414495 883953307 132938258 917986869 69868702 250761967 561299908 653252617 733143799 914941031 39992996 98807797 156147513 826763802 520247715 718402866 102360980 953347180 795914100 981940486 592732040 727551494 542685059 686116932 639848678 953950437 54933932 65064397 38944782 825182262 365646524 490579697 266631685 897569275 434444731 911050651 818804715 929893917 447806481 667768367 236412948 537046605 507129924 513825750 603297193 690895941 446353658 793925656 446164370 454552589 727269416 961396020 170431724 447558473 267192351 309767091 784037910 807124635 586784914 730509491 442105571 479872991 350627549 852089657 292669316 683619402 727832509 807750611 57102307 131260764 760498443 791748686 220048878 534657652 788787992 994534573 709335057 998371398 928966816 999105492 538061244 670061769 884832456 932647082 975052456 992432569 12847491 597636163 949427150 976638472 714225282 973025980 291183392 737154346 38272995 790504296 597406284 734917824 133633772 446630962 426667050 493008221 757586747 849851531 360901256 631951582 114677629 751115045 447622898 946313012 992903492 995705669 647134058 678524909 66687827 956612607 150864787 696606120 877236706 902955367 324403340 837019792 52990506 503982925 805841107 889897911 57398076 243194510 539169071 702976280 98448477 273932929 765665931 927756081 142055151 789037338 764250620 986803628 481808557 777544771 382791140 683179392 618434157 808297409 500523339 977276300 803400675 870925354 126420536 406227446 276265432 813075725 454542988 669509377 168551074 451894753 9769907 260585563 813966043 833739485 216316458 561285722 227990164 999744881 133418851 889417995 28384009 941369830 671553782 910371045 678960115 903894341 319805680 981600125 110459310 435706848 765406475 821439588 517458915 542668063 630270738 985030738 242080080 998822473 444090034 513100673 340196947 984952672 606163043 802151972 565739292 787884944 496605962 540305192 565308085 661137377 850516505 901682355 94690207 465071495 360012019 565404488 522062743 745882586 629914190 687538692 220546181 259218464 510574878 642991061 792857708 863535311 499443772 891907595 806319346 878183722 456844645 634824598 343667274 495159514 932963951 991864319 757972972 880937141 561089929 664239797 961321609 970649721 265917443 943704761 897931901 989700918 299559429 727016599 558036930 771100902 465488375 677287066 550033736 611856548 924144936 946991281 446433102 535133118 963366556 985309502 25867011 590819484 556653763 843834269 982030695 999071588 711745982 833480430 196953152 461094323 556730325 604870995 249160817 766127242 95672 859632634 486239469 682118739 343305662 814422619 250826675 835952046 360543301 421374110 410891603 434900890 488400922 710457611 646827136 898569744 901271530 940009187 784334348 822098092 940415453 973353401 198404643 339125789 35100291 652189548 86782856 437631455 394405612 844357549 501660603 894835680 327410017 644149729 941907251 944245855 340771143 588665647 631605099 975911661 62563063 376067575 218142133 448255150 787200850 899752252 137866060 246886124 114670803 724306118 381142070 588943525 500194187 941345731 217672060 512873506 768621539 791192078 617053993 661694820 96145440 728944039 217083435 277670563 422933254 681613741 867025933 950625285 196039876 308209728 817519125 980173693 489309760 773065194 975660262 985000387 801304417 900707380 181093413 897639192 161275376 507975026 442619488 938178536 934122997 986276410 965667100 997930387 468655222 788817509 223543132 404996108 289108197 427311604 661947792 921746208 935659150 991312951 137949439 810537331 852354017 965094519 860456638 949197511 359161080 442289774 81336688 495827340 437944642 753462325 933909701 960216478 461267567 877662846 619165033 882871107 213688778 277486394 151474759 926057978 192930081 813242466 234556049 567268034 967082819 977825374 708709061 805615363 709536438 959698830 243316854 703365064 24190919 93906950 582501821 988089005 175623926 249235486 137656790 508924297 302762264 373973983 397767445 671610680 155924840 588841344 673918614 858161347 963827005 983637052 817158961 853267513 746957340 780856671 36216504 536346025 189042650 981373662 703583878 776487335 567332667 906811742 965056569 995816257 470723578 482417528 277838810 790027974 989454980 994557962 806441685 849013727 109803742 614847401 36005257 603967763 754313027 809576847 862857676 968463224 631686840 753156033 289581092 328791400 811066731 972339753 334470218 747750854 898280571 989545681 439676980 742616837 830452923 895684891 397736265 620880059 77939511 200887474 223865707 293148197 307287279 820506202 972622138 981577884 245360046 329411062 832719799 941243113 68829397 274868822 661603312 852902407 691677626 770309321 504846775 842928307 352669465 989416954 373664241 602509681 57102739 787493979 628280341 817906574 860312245 885767119 949939522 968301052 849346015 851093276 316589089 360733051 448948202 878219042 219725684 557247084 627837387 820781512 200969035 772218976 877622640 919828057 395233977 780798925 154590939 975219349 383943324 568607380 192309777 878944125 309738714 898503890 811957888 948064837 369653781 466873963 53196560 692835761 128323059 624920929 402324405 929464102 779228577 968662291 358628148 618498158 18084905 76448371 472492299 651642851 898403230 989538314 382128224 772891800 14524942 243340718 912727198 968731337 966597324 994176993 693811469 899461809 484390458 836889007 622277327 901549691 416522178 983858678 513902285 938972215 800372529 818202184 815373029 898590277 456687831 683678625 881678473 900164846 829727339 944801147 251082296 502964309 54627420 406477087 759315553 898928870 886399518 927512133 575327064 773541008 55829752 247623625 606271816 715333194 344761274 396883874 204315710 837460547 141191385 853657021 780413992 826878988 947781982 979421462 562806229 802171438 688998602 794990293 365555244 485976314 746986983 905166278 57707463 998399385 477732206 645975749 721185662 733469067 843703147 902304325 320406884 722152291 889497284 987932140 763321028 924170085 160077234 275050759 338670673 518902362 763088050 824796740 787170447 885317862 802697716 909099121 926553837 951394670 910606503 939976418 838122533 858943563 546778104 730243780 836260473 938173329 964283351 981310318 534277132 969770608 187644883 330045465 98677440 149993341 299181522 501054307 146551813 251280928 459228560 483645297 446013450 480338069 875296150 907433912 11914570 152099304 853176713 995787567 390193707 981211289 412665233 809292919 127506236 690295275 621849790 944105025 563492093 995292707 528477021 621219585 196443202 790095890 678602711 986757065 361952778 676332014 583781747 865078900 116959805 350139353 18805751 642222052 322411651 878552797 975340241 984659340 191255227 527628599 947963396 975855849 674959322 887775507 298300185 537040094 592660785 735414263 213543152 707624818 335046612 807154305 905823973 907337812 449753659 565449873 317285425 547465613 191130834 982779346 922806092 931102188 824846722 953545345 963263745 971649815 539868924 684298329 628811241 755801452 527620185 748234979 741434823 955091762 181258031 581003973 754007094 864230550 131577566 919176429 223137012 497233812 947422392 951519240 719506 420139065 663451049 896791106 307247229 937602235 30298238 447170956 39874653 445101161 740719998 788623818 554197307 801520602 731085036 848206316 219088311 503135467 191523775 924693917 95437457 612850992 623249344 679150811 473081599 830944476 385372393 446391551 329879242 674014136 161549384 774509403 632552613 845262595 754170639 919864263 278382682 838919849 967445011 968822559 637389202 937858347 36250527 44066963 434624359 917291692 75028634 638762502 163048102 938215155 168591299 434993893 759799813 854251889 396363256 596860393 95829053 216143793 207940923 916385562 953326488 992032053 47945684 348676293 42765251 386101054 152888018 273464150 613643327 664442232 943233477 975037214 55179551 701882218 907259024 926213187 541703499 896540540 163472367 304967299 797430233 853387139 687938284 980014955 221053412 401872003 949325177 962426995 368379305 805739456 196778112 205708998 714339002 787454243 2896325 488806992 405389533 728532805 254361791 683867538 114984579 196644857 213831125 719846795 206116755 746544847 677226026 812430443 965479960 978720128 171654342 204014431 934775903 986186109 16577159 839817672 952096032 977584653 104252464 259323153 195707395 457590260 327079919 637581277 781464822 911488374 602775940 765800359 729262614 811785702 398053842 731363807 410301009 513353401 920573694 940883386 47739771 109757964 847066609 917267055 492333123 623769406 924131346 961328569 641580534 923540241 206795536 924256767 853846847 973830435 27625662 905286336 407134118 886814917 457409859 536843529 799081096 974103965 338833962 373211432 308750440 934710571 587657249 837476594 39158102 383489740 50843020 448318011 194456722 868485321 694426256 699728788 254664368 846770924 587995088 928137993 588452795 708091224 627248667 914358221 757807044 800656355 789272753 904439623 179215412 539093382 581949586 637567396 667864705 751115844 978791804 989060490 125115805 213849279 667116476 952198933 723391270 918681500 614641504 782211187 612221701 613024239 594063573 971244706 300632638 542646737 550139344 746129788 658106433 767980331 126301676 687109601 167179274 290803267 530291947 605951082 574937810 635204202 383646342 506624511 626252031 746528651 358037491 488923378 463285045 946982461 160066482 676219788 744786739 843795785 73404980 660334861 818494396 936314610 127317453 274579956 499940376 927909244 376305854 755166564 725003549 874520797 174279082 234497440 568974281 837428017 830529356 972015743 293798886 344573254 466941029 676567670 316809855 528819324 634045732 842382668 12575163 323194797 62657624 182871123 96162848 164860939 781558362 848518362 965681558 998248815 568593109 883629057 46909051 577652929 154619201 222583170 781284490 994426370 198842157 340120271 367395554 977577292 914343400 984609616 569892903 698676018 853139190 950851798 962747878 974434689 171370244 347837767 997580677 998519290 841534307 988698612 992117269 998078484 518081163 579368446 50446633 848634882 891890379 991519254 40128745 647075962 363879074 781298567 858213218 865523165 43757074 952639173 825375442 878060870 285789845 594507909 197849788 811469893 69026779 658898747 522014995 776299856 972671828 977883432 50922349 939990454 641909378 833553720 59127082 141794002 882508587 930566097 450238302 939530283 723175141 725514119 94829170 624373069 949133667 989359691 662785981 750885932 718482296 892528194 889049208 942940097 574043968 738307440 815329833 933539954 982875005 998583787 169068696 292932641 331445232 779673884 471721254 722592944 564024484 974783882 15651219 270627785 803419129 906514324 105227218 472313100 969764889 983721733 320556779 828716728 679881233 855562986 129978738 514925374 503132573 585329315 95309914 543826216 372614771 435984554 114801084 426238073 73287388 923427200 73368656 388173312 63851754 743642059 326500585 502040912 618351886 620346480 91620880 240529990 880641517 906919507 155366817 701744210 330365668 491354040 168881939 597220450 775857503 889100063 778294799 909830763 337143421 842073035 432865050 629324748 694432952 859526377 522813355 699615779 436570895 881742711 617425154 929834564 534271871 769736655 326106447 599528646 431361406 475618988 122420770 485082115 199792356 762280442 683969840 861180685 425601775 654751436 651277356 962587761 917598528 999754785 628244632 924007916 738493145 946651168 231184579 861827699 548345230 987424106 747048433 882952689 29933294 253092021 36180288 488968688 336819598 943286743 521148380 785852323 405865441 852754144 672383991 853144791 659258896 815088493 737520498 940834624 832209536 980766110 468289577 621800754 365168397 595450552 509149396 606506135 109390095 702536015 694066809 881473144 134958410 342657379 701234677 842531946 524431109 799136479 302960132 715218744 4549106 904156760 895734266 898566673 869909015 916309619 374769827 529293292 667995515 859969239 236863092 381964485 662178318 892229378 874670446 926609863 212084742 235049054 632347826 761443540 267408796 544529829 911360030 929387562 335678991 791110278 41107364 598861509 477540522 570316075 566195449 756516378 442892244 604419508 699526658 950897681 375651220 515444324 568691572 710124569 34010543 422890840 279307033 800774462 590915480 602443177 109125857 951187350 733849838 794468831 621274527 854786650 300349341 382619808 547009957 680542641 729565685 901734763 329683999 924208859 900878576 982048516 855338586 945727811 407799502 441119029 293361581 785275845 109596858 512259078 922256344 976945903 400621599 602316969 463678347 745125116 474355813 808048106 617881158 945611074 205999547 600476690 519560553 628396270 923440380 955053471 817800347 954242761 472258094 637372418 142852992 930618966 474100153 815868003 593231031 719468557 529478424 650267318 433551024 829191646 9661568 756806032 768877433 961411160 188503101 489257575 594338437 944773535 695296818 828434196 373202726 453657608 402802566 431660333 345102654 720333883 772242100 951089926 204878449 547603943 725153282 910699839 334079498 694706809 449093626 540081081 564895589 749999920 58139211 860578295 885489214 886900491 646238021 770444093 313117423 907848623 197416700 518064293 67354953 912725000 44091575 302351297 996580008 999885580 883243408 975770059 285742368 336246605 596816815 877541410 706543489 941086394 884843028 918849561 524014617 615817784 392323926 968939147 576173802 867961131 713149647 914061449 941041442 962899367 239490336 657327037 803571233 864344607 205770877 878284051 961211755 977215500 954738247 997566970 841311155 871329375 482229109 838939053 40312085 456558670 962170977 986643161 338555427 347638218 953940383 989250762 515223348 765248838 694604686 981634588 529041342 795230475 548666004 828887970 597414009 914552396 749207130 965984419 88964992 411409224 977948975 993726335 169734132 357811116 16012568 705879864 379687037 491764960 278175133 599959899 832607102 997932675 943440907 979832047 131552911 578100696 436659928 775026317 645178618 985443243 407203870 983496163 190365119 851064607 845082819 885185315 898870714 943681213 370544183 931958231 689481596 950815053 242330237 915194451 61819180 345716903 882887018 977017080 810648452 941502413 594936224 704917181 175645291 897810234 826546059 928859352 660832687 993446686 123046916 453920112 790095882 958973162 120003096 658801355 798673954 831179008 688634845 838450916 964094791 964555301 481970117 641356931 983981156 990861692 533256371 545600291 877343876 981938045 888912209 957995822 619099258 667622771 312580717 853166621 798876064 823982332 766665697 923733104 983090588 989161797 104793479 765287794 977606003 990607734 478363061 884589245 964089391 987068577 885724201 895214548 942335819 947808844 175564343 599580222 856061370 984197418 97937779 449250352 816479945 881250492 107907234 600619454 812379443 944856936 955362118 996443551 551965197 984081538 727453480 935820740 422952309 940756356 829548834 851713115 986744167 990680514 270077629 584356826 860315877 946084323 261736148 311231751 858030959 977174113 75124181 380810027 134470016 708406345 760924586 797178453 485677981 990376044 388695568 644801149 438525141 698689074 865153477 871768944 157924689 374890312 690049025 788755434 584903995 852417058 178265314 273959956 861103424 971981671 415351543 795255726 183331332 686932790 955312716 960836768 730345572 817233372 214269426 488706355 656039773 701957663 645547155 690939172 242197455 824204718 156306137 556612091 443832327 487761874 428404415 875334120 906663285 950251352 106774830 664346751 35984840 940423117 675797786 752325326 586828312 644142798 668025861 971254974 913396310 954700976 923312336 930383554 476952260 976570951 648927666 857292799 898545543 955146206 54019830 457588387 869569708 888947718 694788576 707837569 265833638 815617806 868797944 985878491 171442844 262705754 409170929 689231034 765026830 911909818 752402275 966709892 322713227 962096816 76449461 479953703 301715727 907874614 871794014 970517790 630131832 951635579 423985768 522976293 508936869 549030875 261702291 402475691 48363504 677317863 709690302 872760706 92395993 417286283 3169449 990729754 104499264 260093503 275689811 863966929 249935918 465851410 487808987 760699456 695898761 745615102 663712347 783161638 963386625 989731566 797464492 874947075 938717834 984108069 253922512 542223107 755783267 885777512 735768551 831884487 628331921 705154175 441922810 871089956 162354421 521894898 864036396 891850655 356176210 462359103 464391100 908336097 229174263 578743824 673692843 902820750 549635817 677323847 192182263 406444403 583010477 755467866 597781988 761739822 68741706 936441087 413251659 713744883 407930376 432128263 19376959 616398109 564629330 855173719 540563931 905116134 271367015 574858898 621762763 864465187 737282024 997637956 682437343 850012224 490021035 527980961 853877911 917982413 218543576 509333640 346960089 471021809 7334435 46733634 741689260 744043248 655328856 955910333 987892775 990389610 562515311 641631772 749819711 818638910 976095589 981431504 541331231 742832682 930158030 932498786 374337955 594686001 480139309 719712860 337564784 516869160 57293696 347047846 503009392 604010939 618529347 681635777 317970163 772883267 61424717 310703788 621451477 867502587 841249431 948174541 594718838 675987757 496648693 902355903 953552149 970916346 469183008 485543533 959955069 989788054 332273977 591204697 550483017 700213635 369381862 475614353 915998850 958394833 545178411 959160356 338988207 427882147 140132415 471499969 872255252 929291404 103484456 809853516 974793119 992068343 755002567 758385521 301472385 958484473 694451289 984151812 826989496 939370854 823064130 830195981 247226511 395069488 693867112 749244006 585051596 701180986 407252997 672739936 388662031 567749141 941290713 985667497 59890901 741519879 356399549 493417714 281638954 396495319 576371738 727286873 376682807 735371859 736642152 975660739 655245726 763088401 65280523 214247569 996395175 998738331 564445255 565507745 314649001 955401965 977536952 993957937 793365432 809300155 489234733 636250633 547472929 953202062 547125085 893347585 23704091 925157456 881293194 988099506 292506654 900228506 602538931 722538683 614316477 677527147 758449420 834361019 245054301 348921303 397613388 717087091 240275222 446207239 524221143 604559752 222854176 752714769 492433194 753629494 210190084 875164309 796385042 906822132 109037818 859819865 241669829 703448851 661860592 862149952 668277019 828407404 218452887 411660762 456450806 707786828 521479281 950947289 921235904 990248538 882993971 923799346 137802243 536101907 207461398 344557965 305751778 556611856 187045163 213040608 884327949 885209625 609505198 845705430 526524101 762564098 418566433 867406034 613220882 826844527 109005651 338984662 905429885 927089091 420927371 544634810 465315537 789453395 574081486 959171681 524347056 853886433 352094517 799305835 972458914 990618046 201734069 341349448 212308877 251957671 857910940 937305160 548081360 751381725 378533315 732734336 136165415 530419127 36864349 963237897 465682580 756963289 331461152 670708191 689026560 973087945 952872098 976148541 34095594 637548389 797227421 914399542 602704244 869353440 716500152 783258346 220202978 649441491 454322732 683752360 551658727 835769108 992565620 995550925 491046501 515454220 219772057 665593778 709031310 860775700 502202003 661210777 179970710 624516923 51764067 474764906 195258281 212200356 437526145 483914934 625652751 904180270 553192959 927817118 137158773 537279973 552697303 796672407 809880097 885903072 419565266 924284784 600511585 786431940 592793579 735992289 885215369 980793244 315335288 605513412 492842675 788344963 78238004 774335231 67486460 264410413 426569166 927714573 686690239 873170588 847367123 849666116 689622419 977552351 151268018 255665507 123321628 944745764 195701330 583542670 43586840 496773535 270879380 764073612 367884930 715544503 552669752 902270888 160919809 793589105 53955742 403540452 380957615 619500283 96858714 885273845 65080215 357573698 770070699 957534736 871721231 977584386 987892656 998732380 805378241 818272548 840248814 997697817 552107525 791153505 29392201 420845103 899789629 929894008 267309791 641763969 745115344 856775337 942406713 958854249 774860739 925258550 694896445 916683282 462486560 831259360 922868237 989568750 401919455 830251142 435106627 801049056 488291201 693785514 565171543 604103849 260021129 510245287 874877810 929422448 404754943 451380277 732358435 986175128 629058706 825673241 534160968 827239385 524591537 729617605 580540677 953017212 75699758 787040071 934892621 938248458 755065391 789218299 979685021 982029441 870020811 929977786 302704006 965396456 687226753 715067327 944449732 970638595 677318830 758341267 967599776 982250081 540347509 848559442 130290205 333007858 938162574 979659958 744694275 790682527 690481709 792460365 882391693 904817030 34306974 268831345 771608173 973583897 181380714 193145191 528006396 625642994 214000951 271601572 476823887 640191095 685230940 912666114 73544971 597229466 645562569 848637096 470547909 594720657 809138859 992368063 145704088 741737527 978749215 997906748 121981863 205739331 401498429 604850675 245673859 313493487 375839012 380472310 126634859 403862703 617047240 618845593 962808224 989965036 711287004 711855543 273788360 686410777 225842200 718179511 114324628 986033681 628410408 663222700 335999493 863532954 584456770 758267468 658900755 745183921 652377005 710080924 549310617 878761470 450579962 848212466 204598418 525374628 220702372 793459721 604935209 841272897 687114134 869901532 706492247 744300280 501197493 542232887 951945124 970694194 380625882 856255257 252009723 658272639 210103764 777865175 407287563 491410648 923091291 963407389 733450988 823292755 458213317 810549242 529181998 889667952 84781944 546049209 395561864 974920968 920320970 999047135 177943685 403148696 444934754 494049543 643759393 832329158 976307398 984231342 103625159 886255776 528786322 807255671 9809883 942719348 546088293 878734501 503782835 744609394 500749871 545053973 312376730 999176580 969389000 994558026 761964652 915110161 533901507 867485324 880416027 927745713 314595732 830132181 897935009 992525556 60936867 919048431 500225148 645076211 75604525 968563571 17005012 681668081 871693543 973505712 868150810 989288925 799397977 887993694 623675540 795078169 272490375 686386219 222349767 578597956 339106992 506665359 17642945 488636620 26985061 133185169 918654237 989910279 762726436 883281285 939302522 959685146 157619647 581249173 871097683 984441858 579223587 873242405 191197629 992627175 350230998 613769125 727516201 843303674 772611619 803827524 199602912 845911114 257915384 349304516 394511276 552047847 305652053 637324957 561576705 563157427 582887989 988631421 49139928 522512431 227500613 735396505 204808057 509731552 547756081 619124536 34791656 789268465 165335461 168423662 262618294 761447450 254519795 613660245 180299395 501399827 456466747 835662088 608891046 788972755 245372013 559277858 152312377 360518515 12080284 812726225 639365348 771229701 790679775 979661487 347613872 441806607 823967650 951970926 845516175 976606741 51970173 350644217 964432553 994253806 505355366 745810221 385296546 848270011 414658591 769813264 570009212 853111749 727163381 887885988 411042908 930634647 646838421 728941038 7222950 828723114 559934997 898805023 731881374 929677280 791202062 805316546 551887751 894182178 651096912 672408374 978559863 998389737 89139013 923114749 135472404 330065062 785255104 962511056 921425536 943884676 897558407 907925104 252234223 626419060 15481937 967394584 642634415 946150947 686537717 864919846 374445726 652882679 169623790 968257712 871005005 932775278 545548172 615055968 294178664 455013527 432629823 974864183 2234847 111569863 879714913 998370748 734876838 844326102 592065499 730235955 405697686 806124642 961698426 976876936 162999349 424358473 549843036 773285465 451474933 753211270 580458298 631938341 269419216 860435100 486547802 787395215 647556338 657139970 732339868 857301213 371292875 484307946 459427124 828642025 283008010 345584242 55480834 167523514 156686681 219832529 460940587 779918229 382915621 630866659 568014784 817070258 482244550 673097986 919787120 935790132 5870607 626222282 915688836 920194040 993413996 999175566 563021686 936742407 635567884 906960007 227846392 987251065 592613087 604233778 343366807 549422674 414444815 526118378 962132453 991188669 441280385 731689529 49270661 854364210 931534301 993515804 965918798 967254374 519105603 966567857 449644280 457952194 71944210 670622543 648539480 770453316 133643123 888787210 410829754 732234703 391310473 957659083 543439948 889571591 876402957 952479034 672363308 850978412 961727365 991823381 177143050 693090297 800447030 995264743 739884779 916196208 256542623 740185370 709710708 917017695 576869103 772698772 887722778 914870172 18420192 802661655 90014247 930896754 657693316 756801131 673519725 960799089 273603418 505373688 755732829 830328934 415342683 701396650 237815087 867755760 104489018 475263987 94217047 558242266 562503733 982037883 624181836 802524723 284695083 683083975 665897429 806002078 527457083 555630812 887249782 976979371 30335969 552602991 355712832 669594990 43971880 194205190 379608233 969802436 118949592 374953718 168730428 876164952 198739159 826183355 9029791 78405078 464384522 956082149 371547444 485482515 857691031 998737519 464599856 602025062 450614967 740440641 493293886 956825395 841808399 881425539 340390770 896612408 566051075 596415882 637380569 709435600 254033487 838877200 369731925 768001081 88223361 980996259 178513278 633012743 245931812 441458111 630620873 725771916 630389513 638690022 873283387 982438853 120410946 456889176 625739231 820737700 965429413 967766150 470663309 851947206 386190697 443799374 885417382 919712526 777252327 782380574 736097967 774001053 119816014 791119243 133153639 723190237 759421585 875732613 537053770 910313944 762697205 831568624 384627723 522157642 437150480 460395250 106156824 561814988 363273425 553375947 320303706 411456605 183211970 445370374 540380116 686951790 152975298 556629458 738911185 918004517 179252750 812788572 322727728 766748599 446465818 774277591 54677768 257389902 157503901 530805019 763460123 981412499 345222886 495474964 507233509 669365435 472801907 875799664 940902104 999113937 641023605 884122651 89062627 524937186 328065229 417293570 573006527 846503891 844483946 894690098 33928530 544657573 671660171 947021162 141343649 743945056 906530429 946778238 696898211 813359523 579378502 836933082 398915282 707754367 679913746 926061188 182187069 434174889 233665675 906179422 772176521 797246487 612834411 980135338 447695124 513445699 665522779 821447752 194992021 364865715 120189652 875498655 436278751 580737265 793731377 866383068 113295766 512547829 859354359 979800411 961357092 983144588 712810407 808648525 830573600 997145552 443073516 860298176 821914470 833835159 3059224 588761484 921397062 944702848 499164545 760489712 258561020 437620072 368738779 737864335 822467621 961440582 608128785 758275158 43256415 258737195 387343185 626636213 970356584 995261957 492936141 494421017 516573476 618464348 911547735 977636491 258108221 924121941 450225122 830402831 359161863 781616057 890979829 906957727 835873074 867047614 61102967 983160317 744412014 951578429 729063891 941679355 118167292 262860774 614186393 983398272 339740853 414985729 279933984 405062819 697246116 898810849 177217282 423432450 286720750 713261408 365959238 398521040 639336319 771224510 683909037 732044491 917903758 939123724 928105738 986660585 252438028 324821774 516653229 926342637 146959968 741893982 355646739 830908459 862530590 958170825 650631834 865910036 746268963 921119371 912907803 970895414 617714077 882895150 662367518 686535506 926280507 999154225 805977392 971424366 823731804 835473145 762999474 921845216 85438152 177827062 518650625 640099643 472322528 795382272 928161973 941713483 940472342 988538610 350656750 595553460 427267251 806023057 13205274 875922794 311497320 315734376 904251319 952966808 588926393 732454523 158566935 444966394 738042325 773866537 294149058 867044674 541670182 687040327 187162798 438688314 975921484 986386813 305639893 391981747 817591202 940885302 552247998 802800942 809685265 858629082 592747184 942706262 284753421 896950321 729085275 936315858 970338613 979430172 495980393 904854453 617325899 759744794 636203440 743259333 198150467 334495439 262191190 634483338 280328914 366006747 150242502 872246914 397691915 813543729 730269394 830108515 366706449 991748773 272199180 372132282 498144828 678597626 701013305 955232498 571650479 990066367 991440343 999054105 889855519 992351261 843760131 857200931 270617413 315999805 254583665 905807658 381788075 771928023 854845887 976700000 655705543 992601486 837228758 940694010 170004500 449256480 816065183 889017709 449825729 896263743 51017061 467731021 745661301 973214826 790842905 947802054 439519258 809812334 504509369 601347183 773480471 849318076 267304059 972452731 687185225 696667773 93396994 396606491 143592612 523789046 753579263 949210445 939758249 993983350 649798758 999652803 481706183 900798071 724176227 961340968 413019989 946641166 173817182 196923841 406952714 735421980 275853669 701696627 973260646 990324816 589161730 626804784 43512321 830966035 826961458 886904759 200076921 752003835 220016152 688757451 489239645 935273624 689827184 744640101 433926492 459407532 826732276 831055030 142635845 427832031 986101677 989814163 757327933 936850363 647779230 837710045 287540390 842039295 223138386 690133247 21215350 140173904 586694545 721355088 894517896 962238854 728771334 939149994 171692715 794658350 500858998 768870877 78607093 945468543 314892567 316368695 683574210 717774421 474061374 497455271 578704140 869125075 14344477 159493532 327922637 658992098 741583498 850240385 675622369 863659503 465269200 864729248 254911113 784183933 190850930 324899998 406672244 459843545 675937899 983609435 438068018 688332312 75032645 854008085 448824653 511535147 334209458 775191425 619330940 793111166 588876145 750180767 490458352 620817948 311625355 538655273 47907093 942511883 537488633 539223932 801649762 989935380 359900632 589799830 58444605 336255090 413250635 857418349 226652808 557732695 846305417 867495435 112561895 650906450 381354304 550806328 875010087 884273295 757030699 929094214 839746001 976438693 323872554 811420550 15326648 209365451 544024448 646917556 312346170 839242865 278581337 799162759 178824614 688636109 12396201 485527446 841421972 953142039 794614957 822770859 196286629 215372105 973385751 982081814 766972478 968937888 170823025 442979432 897635139 974444241 478675303 774559162 303419633 685221483 164764381 818431665 406377943 413064965 882119697 975940785 438294260 730212966 498969395 507963316 608802720 655660808 233360694 587205492 750607783 927904512 439883969 655033824 478088262 649614596 432482864 578054771 802737292 876210267 639724980 821878832 62777480 852676011 272464190 281387706 872797167 925692360 570718126 744846531 626369728 787888596 399293344 460366471 296238457 736988461 625340067 986636798 698415908 892070109 327086192 457685038 788539301 943901468 628462561 784234404 195429347 721164156 441529375 926669832 127309907 622953084 196049790 430299790 620699457 783083484 307895429 876389757 981713983 985112483 212673052 354909602 865048709 955302793 757121413 775018177 122843992 899802463 772293682 827538083 451331558 608769017 55562599 322943246 25545126 247657177 759076096 820734127 311270623 552798893 292943732 719879221 585109489 778831916 102695607 848222166 926370184 960608167 914290930 943139627 978624968 997440157 194871429 426529112 697082762 858909854 894170485 998885253 259518500 871420221 510032280 845321141 721420820 820463855 697979640 789686746 33581595 766686868 511000675 619104815 924810109 983697823 538999152 622882061 876615821 987031829 642441854 676787577 359013935 395620823 865796680 888422193 511744691 660700135 704649304 755360207 218065635 759246133 389404238 419187912 505378084 920699097 896562430 928973704 399257058 560033659 860687363 897183251 599454161 881519799 708105761 937157598 771210645 818717615 29756341 261313253 436265738 808996462 625949314 881292610 672281254 915697861 470414612 543848335 804032230 975219776 555509450 769023060 277919629 984539569 697049365 940845508 225723358 261139996 727718887 966816930 87607588 328519422 174374954 365448905 451432007 907202139 28327184 746641017 41633556 597460108 693136150 696537246 139254465 249873771 999647477 999700823 749205990 880020627 441365227 976024262 58677504 932774204 444920912 479859328 988700979 993631501 393787136 927232910 846086585 922507852 645768241 833318342 729220438 918355191 814342962 992876562 694767362 982209333 483013575 933676133 697038135 709648664 763753890 826189514 497364239 842674146 20041650 992811273 97428019 604173735 211325554 725596605 591589536 613385966 470225393 902371528 965941615 984547545 805048083 890180967 651511764 955431898 793248311 830705170 388360575 947027216 803528722 864472807 682786054 978471461 724431812 870403451 638752900 934567949 390511884 879291683 308468497 654854928 487945042 965110069 124484586 357355057 68286670 438492869 771260253 775627868 456509876 858912108 817884450 913812693 644089755 749810033 551423979 704612742 49739774 276103768 618822250 745622513 832323908 932216657 554414134 978058132 176730944 490326534 805283624 809657199 524448835 672037492 189912957 642838185 838286168 959090731 65110552 465275550 885426276 929642274 862926070 935254342 317859305 624758546 560768692 635942334 97186624 873617404 913562931 996814960 829061718 850345438 817327997 902727596 452116054 627225231 758396690 937948725 167965733 774599798 218927963 688014378 992825429 996953570 676597161 812592972 376481392 961859466 608472889 849533896 378448380 893737535 678834975 936034902 318253282 867743059 215640732 868769892 722824403 774660060 547601831 868302920 957692965 966327254 807623733 947805310 246094936 532741220 911776757 987172519 948585530 971962463 442680801 472220263 455414334 465038973 438611565 537471299 254059502 403464536 94088503 920555870 318390307 602555616 617068111 805402940 109241637 443206892 677661482 954029594 393373346 907103813 38091515 282239948 481107843 883619436 924071127 957570243 702551904 707234552 756515481 966432741 216050984 224020068 291139269 958693719 835051172 984968325 130786686 480630856 769375099 972274043 176453521 878280164 630430044 767109244 176183097 913207035 836162343 981342538 981650246 997398347 780227479 800746651 282132802 829611887 531260602 993503391 214143603 487497783 269929622 889822483 897162398 935779859 868598459 882295572 196559369 286063746 803067106 828533113 634872972 933290649 995685303 995853146 902136755 919871515 381474195 782126475 591134953 956535963 475839879 917062589 819703115 832587765 632034408 878701944 704828938 917269522 349904128 814986934 291010631 522079072 956133627 962249603 111233022 485883422 852765265 880295811 22227396 343379148 75324982 400415589 147633651 426782090 616312386 869921203 391733876 583402105 175521996 795147581 826267867 934711653 533758232 937964538 940451917 996501982 379249715 584610110 107616897 389971603 106363763 294173390 448205012 829256048 886530475 902519121 312018314 353275736 601769218 855558958 502610721 786414155 658362417 776589415 830694741 986520919 266419659 431041079 543177199 750224172 596412166 746211243 273570398 627569220 195172370 945547609 979791439 995341751 837307928 899852811 523022018 543331393 958289803 981816790 881034085 957399238 256648879 385273925 766064214 885136390 134708536 473735926 634420857 984804972 365268713 833653801 415830326 455027375 516721917 810455670 393939235 781369218 311234729 976138498 80500716 909368072 253094986 262726878 474845416 704420950 220192619 614997966 177078948 359557873 413883315 452866518 698472120 741283229 347404117 968157537 109887201 601742825 101054462 341096969 824182519 879847665 451479305 936099263 519419941 965054458 80147560 769877848 223561961 226900558 439473661 795422643 865783680 983636305 489528683 955228552 43174713 72660093 20542452 444020332 847659052 864764647 795495625 805017845 330043740 656139243 101800059 955071998 106917942 113836270 614870700 915850666 360441172 587780794 846947700 921690216 12578077 71280831 934493819 952981360 483485940 966373895 803905098 967667040 678414444 703668246 265337665 784381124 147885857 953755661 185351631 981973417 264083747 990570475 691076547 741722048 18092124 575494263 79183152 632743708 640554815 999548325 673294839 839131408 954828360 972447128 751436699 990057172 369823515 664967985 776562458 897740782 440142044 557348790 186934069 223033720 781392009 962593100 424610059 839992250 238672743 914153705 577491122 898287267 571047234 796863174 173743844 318261083 499350877 805890668 729906004 747093207 165627046 261789914 707977929 820844116 877239152 887112684 637410229 915152470 669455513 790615616 739575698 743758444 222542984 438319054 724559886 777182396 766813525 866682712 17121031 543000552 17766128 727856950 687618970 850813562 202731037 393820602 570176553 962237795 625140044 743498604 223155907 588075467 165702072 790692592 143264474 489303774 353668497 870544922 834334674 900621625 49091998 670749126 534574805 754225847 284451216 491624528 142641608 593182360 724721111 804591153 694308134 768733464 537789438 998483435 33764379 665953889 360004944 470312581 502044681 811576880 344990175 916634932 63307386 487483849 833215108 953514372 670914638 960666754 746460216 810322738 896923158 902396972 942588664 956620776 51392843 542313155 870659435 899549745 754640456 811453304 14364662 348817373 502081069 754165979 491003777 676555927 167669059 826253803 79484127 489568876 805845550 888641834 303328066 574404695 704728972 792263475 843473687 971206267 956420471 987803733 921558718 942768694 660505874 872094390 918736244 934062452 331403242 928071471 410993292 465254758 250010002 448793701 447003778 764814048 380155727 536766537 985576418 986947141 368245446 889425545 877250624 891286439 857335558 942515200 562702990 712938348 741883239 926060502 893685751 959105728 119908785 187453601 638559516 845878915 295044862 866646616 359699645 550251995 161601262 290115045 428726640 449332847 334139145 359640819 459015895 850352217 403542884 627683278 547898657 766768621 355069340 633560524 826490650 947568504 724723709 890195871 759349684 839917242 300523133 745425833 726752089 768986544 553095262 641268247 660926983 896305646 560738403 723699255 230749340 541169284 617902683 629390050 445473185 706002491 279416157 913740200 959661844 974614690 82084038 724344112 869863897 898377420 549483856 940960676 168075991 394164315 494040922 570126192 999203400 999233953 514415847 738520743 364847829 493842324 453210295 795091429 126062214 585399683 560180971 731324138 740433038 997442764 431115386 584206789 258450881 831593266 639218969 913051916 266760199 768056631 5392618 856439444 733933211 937912220 578330738 832587558 316072729 726467951 309475219 994128779 672830327 810596721 111854139 557858751 632198244 848090336 339013798 422164522 451417354 554004013 516215693 804687964 54655558 169739999 670202626 908576889 738497780 924910534 341016449 752174419 899986955 997668013 753753245 871731064 428671121 877335122 762392399 958050419 782328265 909968929 261570701 705881064 626642191 745956354 427590477 451372069 651117777 780098365 980862064 992184241 348643984 918232622 645904124 658782272 970677955 975466605 915162436 991301860 600128303 699260057 140340293 238041436 187544928 241891473 647122202 860655354 457121532 539542092 995397580 999765849 801320164 952513955 50788257 742817292 367107800 903956528 908239 15859790 689506102 861482731 927775131 966907627 274737484 487884787 910962677 931499724 510315361 822118442 456139399 667489615 570771720 975997883 731507472 789891514 513813595 821879448 725006798 840178370 296818098 511476922 772104918 799816330 416744225 517935276 996793330 999193426 220743791 811107945 67523451 173578862 420724311 852310838 410317691 849894637 309877663 434422687 119367653 605016817 243060279 525361473 884695978 968285737 41121680 333407328 759436727 998080878 561835518 633984152 497656354 687351227 455362176 567126042 790014515 944392581 999685312 999804338 26032235 827354641 601981513 958465802 133713737 743000495 712453107 712801098 2117683 207498542 322307880 362312046 485853813 683525229 654102271 795694833 164321437 882965506 575480724 682647273 997293780 999965006 851794161 878335602 860070682 946739039 980347641 993399074 305830610 778471163 818003898 825943143 379292175 541520421 508042898 608861014 745358093 919268806 137366603 662724778 680451273 704357054 181036115 597142340 662905199 848756008 599406933 950801061 563025788 718866995 829597420 909208632 344969231 442241762 120834881 865294123 994427122 995843100 433063294 514827504 104522176 285142283 622372667 868550286 48730288 959522841 634217122 849493947 923424864 932256226 597700730 717781596 347674388 566837257 638846263 857386808 576018767 807319670 784996409 853546559 181771280 382659004 475713965 976474914 84213480 767633490 225858788 726558664 769296051 828541880 828301178 864322678 104421598 544973966 790301654 931564021 513078857 646448886 395336713 933446799 747945842 960086112 435449843 814738057 97460328 574794014 745019739 782955323 2981707 706912344 72573405 394292341 916882417 938274094 618632787 659241176 637292694 656313119 167489350 837328452 778302620 941624123 961903300 978576224 310706834 413525982 933627656 960650219 618340999 899646538 934879652 993663712 83794526 544985645 103721641 306062744 230937456 971379782 677340432 918398793 770517442 797578472 825947058 876934971 688203905 872310311 756006270 832486721 291723092 308924256 709003008 884724999 194124722 211085879 107451875 642132502 636514304 755681453 76761788 320809512 866253106 991343808 392298041 742039537 276835666 493826304 800572480 806790897 795482196 833322332 652974773 810902660 137457556 900116141 709800447 984595915 186907800 786705184 78010115 401636122 799813490 914111565 813998929 879044551 26342047 39346812 324061255 859351076 855308539 975016192 542594849 666846802 822152577 885948713 500215072 753790583 37738032 948618180 316428336 662000252 699712109 832103030 182317693 967010872 567340741 632765748 934704369 972941468 71976626 512429320 475970695 568500423 592386200 906353824 566742334 759724765 90104420 799092426 678662059 837152663 757972398 884992684 60626783 859983217 885654377 974469285 767830320 964854916 58205589 591051525 461750229 732776622 983605654 986387003 306294411 559454926 744972694 991627771 562239133 945570151 794745899 945104578 415762114 665495784 583070804 976774891 437256591 557143283 462859213 688534176 48716173 480350592 273563436 287331632 282148457 875251527 870101354 970996567 284361330 614377766 656784896 818003823 858501056 934566267 455328263 640849876 576731719 643918312 572574256 771841643 635139112 909522364 727090786 868045063 769614384 793331600 755463364 994605338 835489404 936231316 237993085 810972525 935661759 951501298 562041068 969016497 980502466 994982341 700150429 892854145 941458547 994545413 779599506 967231655 876853345 982977486 948922756 964705734 627013458 824487662 701005780 769193947 841291465 863051859 420171790 812234662 435279488 997053878 378721239 462343313 498434529 870752675 370753306 575417432 556706732 886707742 687285265 890893130 165105833 287884992 667817912 832285514 83637461 867737300 198841312 786956142 809742851 853696999 76073750 235752982 391141418 510110299 448375112 452758337 93771206 496726584 929311531 981750124 999929423 999987941 51464492 738586870 350215064 410836166 74480485 271616166 939678663 942149457 554454637 933849625 472727201 695148127 263527530 369901210 590487496 663799914 774824602 868998992 852776772 901704548 222009871 779748579 749392323 843920628 686962312 705894158 655800809 986369031 664420188 888601591 561904214 910809275 707816278 816528658 49116826 820302043 27515647 545427368 461251030 978660524 565166938 608968318 435800463 911681331 982559310 991299580 127799714 731815149 939396603 984962604 706408215 939921681 426450106 918273057 258695550 342593827 641073996 864872343 385807821 409197166 355197547 551584157 395188876 954790790 655275769 971864725 554708957 626395956 133801323 347545247 85075724 318834195 260941681 496456903 986507491 997673843 988485303 998191137 465951128 980054834 460816891 708627209 841495491 993942726 849729913 885866737 891271324 961642262 66278461 858715929 247880242 334189420 342204580 905342550 708993722 858774935 465541248 502601629 644392280 847138955 722218563 942334844 810195418 954906444 99654278 553728630 904839458 941818504 604175296 727783782 441379917 988010525 369492788 750060402 483329532 844407577 450842514 726891914 198968991 452542755 351179875 410667592 343943410 854310422 567757012 579422802 269156737 342087100 304300951 908810032 267463481 426924942 731902830 833182357 928968959 950565183 53451158 728975193 16189121 114170367 710417513 796196097 585904952 963306017 48367375 494156952 797154326 801552118 538724153 805621440 453569516 909630872 124242480 244158710 378967390 617288245 409135684 914330399 411443 844576631 587006766 736577819 364758077 626918649 783276110 890486804 785186088 967706252 223998268 736364803 818367246 943623009 285367428 514579021 925935493 954114776 506809982 809281629 482975354 645485683 987253957 988458215 700870444 772055907 502857823 651041385 263253157 540608234 870367486 984526894 343782611 735844327 575337824 648966185 91905585 185916286 599188724 610417258 250903415 532020391 55926852 847296293 50950543 853528262 299243594 519482552 182070924 637019022 300656226 915555413 560483281 662351312 308799466 714082876 362176570 537711429 128721092 818631460 911012715 936129850 230832509 759716694 171456971 720810845 426952807 442815584 789949820 886324958 464423404 475003690 526606292 780734909 697338380 793824492 548442962 629770997 441775978 479919398 29429562 841875780 691783913 791504272 644209565 773829849 196592973 907312481 589093927 960632724 396710077 436247775 234592035 977812761 190721648 912085411 432618828 494618600 481753955 914037357 552729873 580194590 651152905 751555244 847982636 910607784 892740637 997871841 95127955 552221324 538288764 732877863 532041601 540026876 924856815 949734626 195803371 721316344 154206650 764387890 888896937 927936216 582373609 868868682 581804180 619915324 611661038 707104249 832411384 855406999 148357312 368301943 677595122 703794996 591890430 790699047 79241634 647793581 285610673 502273707 834009090 944852914 778060059 786084174 914782127 984735184 186559610 292010068 78741425 175775127 850521725 915270977 599277006 663835699 708375225 861436436 786539231 796336160 779925281 816235583 43752835 938975671 562424365 780821706 605781338 934614370 776242648 787354169 625093992 665799224 887594157 931690367 849222367 883714097 449992862 561966658 287414649 350972976 753077401 918037786 243390378 270012946 891656050 963941986 121671529 547772648 296336645 441022523 540393011 990080410 861164609 977114295 287192585 856219893 562974858 764124343 193246588 603199901 268514448 307822991 942289733 970691087 362830118 732747564 749173453 834571354 641285970 847522343 938269649 961485277 657189567 923988623 897175545 933203458 830981976 835389160 979512987 984564245 595181880 897988813 472735962 539518156 890903807 958131967 932519820 997878052 884562323 956580944 725245165 849957786 75584195 249296778 339837520 407160700 29507521 402361659 653297694 774945566 35933323 561602182 903999959 925542419 612795233 927259338 818712700 829956023 967994543 981234912 609803719 809321169 261693659 779580807 852332058 917274253 737771214 748717970 107048930 907448164 511006927 885395927 789703320 880615364 63665276 97679139 377803540 416373273 331762403 821629856 245027786 476786369 500063514 811103683 885432266 962308807 881599570 970217007 491245804 604434699 611959378 771099677 676025110 864657745 14170909 330792018 832359975 848385449 934164450 985041379 60540015 782528482 189826418 295200247 855152562 980788778 552823224 718110285 283082314 628189098 62306726 229623104 495469959 549871683 2755959 308625155 724412122 918255743 668494037 843810110 703889663 887831790 877166318 936174418 290941475 558784400 526289117 897736222 530888607 659569074 291219926 679551482 296946759 419200240 311417076 656145612 155526395 674180807 32997571 302868537 679209776 763498285 782530083 942184818 705755721 935075351 805901145 916420382 121485963 839695797 936881779 952100131 690288699 950685552 845449189 937361792 42145226 564067420 973378014 974854924 350557654 794287554 406981879 895332173 259102804 702564977 7699776 186965238 266579009 639012965 100144837 637180135 35657918 789609706 535295783 853720528 536655158 812643547 766607251 823214586 165777526 352486462 461625182 940266592 855413794 915377297 410655053 626348092 35678361 128962043 22661665 462679304 499205074 978824879 771799803 951510689 669201015 935750948 574282585 672251839 940514075 983127074 382315605 498632650 202271794 390405530 774404365 795896126 891680044 895388309 252038651 705563390 720954289 862726989 973709297 989730815 621028030 826800791 589419462 604462387 174322969 187061539 60728424 278817289 858462258 970963170 211873215 611735187 424290668 957803148 247172615 970931946 711758800 947501156 295237559 301235841 762925138 786397999 243629892 606536518 931597643 939769016 718058682 841104394 904044922 922384305 635229689 900337643 924597449 937123728 34256667 813719046 239784221 889385482 939205706 961412317 763549621 952606125 110546379 638271027 599479174 882547518 434619883 452571813 697531993 728347571 877921107 884427782 585162843 743880181 162118143 870659234 975768462 986470233 432288469 992647554 769226227 934336954 745898364 993351368 485288621 837318245 398667061 745795476 286000662 373253491 476980525 794348938 324390402 631199912 828131623 892128650 967536050 994454686 263184435 381593334 383423571 693108576 951816235 963829276 114842488 607691981 752985593 862150559 727201434 762085194 800023986 826605827 614359667 715229418 160392313 633655818 368174779 699847794 564845748 677601718 785274992 979878508 349719117 380575843 255723763 263523639 568807400 812359656 719456378 857256646 469299081 519347617 363388500 592027955 601922394 899038810 82390120 395501547 293479369 821343005 915865657 918928816 672246868 915525645 765549935 792213924 517778830 817171424 488371513 843285504 791695192 829594878 778607217 889488430 51554931 938537563 487697792 880257857 665769114 916752265 372850222 707123335 782959075 886508066 501203198 924164044 240273799 747444108 504615009 948868946 363142283 940164139 647137956 782687655 280510362 423596785 879605328 951843139 256655632 886986124 604642763 857364383 590739512 836289684 122639766 438620465 34357609 601842572 965728271 968887328 817153087 907972592 80952154 653693599 898141904 976948185 448244608 867814881 45105163 236089294 970908442 981391479 140069531 387295867 865944688 917761266 507220814 816744532 813009963 939716743 857776095 897945399 607514965 619078070 145554176 573263600 920556746 995334833 244214412 361158387 727233072 981150683 614766785 615358953 469651076 766179769 978906679 987306998 495007564 703595502 772405520 822433758 434519257 664154515 212409246 739555891 343810034 556136837 649213488 952160113 557178154 748037965 279026927 942571642 355966014 506886238 282909579 902933160 186409491 221431431 836402042 968480743 509254699 689201855 354757865 730933270 652899849 984067658 568233631 915768866 346576037 811674694 69439667 575472697 646260119 672672585 755783894 778522451 932218012 932477020 842448558 878418703 935430655 951594036 65664121 305805126 849816427 886987474 339701209 816512821 166080841 662084016 854536420 884918053 730355033 991732987 81529887 521394527 309188716 964326721 728502736 816016034 573466013 951254398 350667573 622265391 657146685 957225663 130300604 746401926 852264919 918860775 683803597 738715565 573843246 938618303 503139440 722019543 226689229 706185042 735263697 902544457 428513189 875962829 292981570 617506512 15898495 612625809 576843597 627917351 796811310 837293082 598532153 788851934 19368403 245247844 633232892 642319573 527709123 917730847 298790967 663579818 729005463 827560337 650580106 703485370 570991467 985942566 189445994 662202609 660221519 714631040 268600477 549767089 985951065 992358807 162978126 952621771 720498288 920562625 227300116 241318756 833584851 930606414 332444948 370363072 459064464 538323854 683150754 946037499 860368887 965478043 335580049 636399473 598633457 689080616 570363246 718694985 294567702 672767733 979703740 986571544 714682060 730637455 282594981 835213890 190435918 759583467 967003821 976858954 441878599 615344296 812653100 872168156 659025824 864016809 723430292 760585488 856198245 969394462 834678212 856091274 47644691 189467996 788096643 800183611 176441666 833969753 151831967 357269748 760720482 826610320 149243948 605276955 744968751 909383636 741847188 785449519 355675226 427041927 152814665 657868341 142051331 942837897 539771487 605960585 379653809 572717520 225431906 696423868 50363781 64051721 701756132 828454777 295629481 565500417 969899613 998248869 17450515 567516782 424596455 875845124 629897989 991045933 413763548 877696484 312684831 668097796 843531919 844062711 464486123 488889407 655971755 888009381 266717264 637975170 383309078 775497205 767686314 870996811 607698463 880455725 250262768 406020673 620367418 736757482 658945702 747728057 526371167 737004146 619226290 998908714 45128263 116922717 611779611 844763556 491294717 577469869 492036580 839750726 118863405 827700143 283382223 515153788 26953458 384734748 579024376 735054911 858025183 894902596 908640937 934408458 686916585 739653939 544674503 549457803 959437150 976035877 980953986 993442737 143669714 542849427 258813480 522765331 191192124 240268361 282568407 646651835 648009280 804188462 307548447 383398913 900173848 915119451 288716098 941033197 627004973 643809230 375144620 712460517 880141029 975076308 652409126 765554790 688136993 799133556 157590103 583508854 721165749 876225203 387426211 587449903 418689985 929905273 569746026 794571431 929351624 998424582 373666828 594471733 394966446 973340817 140890814 396175271 22762784 862318364 945306819 979298977 325492401 685490168 257627219 344388494 448430713 664357719 585142446 856438625 733323416 773312532 655455193 799883855 490472040 678955290 428980069 449456944 330597384 890751121 773156851 916418557 30709677 47699065 258824531 703003481 226631138 248432096 910958749 930929520 220464673 220617487 713288544 865002811 332117526 494490107 617369069 905283326 958598331 985106707 757768089 901200331 614443702 819269588 817849163 952340475 475396321 754916452 603193593 640668727 337722171 552495450 152325986 708844792 173952629 377757393 801801001 963665227 401701192 623723675 455435322 675094786 48836095 103613037 660663814 911390124 803360566 906896957 429829163 626486326 349498043 569751347 358644540 998085541 945681554 969600318 786586146 815479586 801727560 838324166 852992959 925571460 933996592 987486385 81850996 713912989 40379799 815621169 999200592 999229249 333197434 573272119 489875708 576773383 506433539 509533769 993814413 997232929 601991140 668203275 154530463 226783421 911789806 939267231 955480500 997078289 665709792 969980240 396150479 911640058 688204564 874389925 752593199 878376239 288231418 885488462 675552614 940432849 920354153 964629867 564269672 767324924 564558445 769168367 324370822 572731438 851286415 901205885 859921389 902436286 993235232 996144243 253200169 484140704 794330971 808615304 639267335 650400851 762696267 819072293 67731913 177782086 412850085 836787808 819203870 921733046 242330699 579977885 456255151 999343965 673689028 883766477 155057954 987717367 602063785 946881920 40610916 442148871 306900334 430808996 562853906 902248510 172057010 541784000 563017018 630002683 896950869 952770869 446115237 570766882 18386117 66138602 880907635 920582286 799381568 829177021 215672853 488373658 640871557 943996923 758910348 777354944 163631723 548873352 320564780 660956272 664177283 774783352 673394974 813254644 39591691 419958049 457793202 747859072 177653732 608355153 759319174 878731270 576657044 947265714 295681081 947457366 955621132 965059788 814791096 911646614 655898074 974310486 942938803 990611890 228107749 771166337 701841787 987107790 692324834 988007857 402037978 915744947 46647826 451125777 621877571 806794179 624287820 881336318 278198985 384037215 983184754 999085871 763206619 887901020 687250748 724555122 875569320 940005575 896835285 943871591 104162479 114755063 397074794 919253110 1487263 999810131 486154221 934189848 933043129 975528278 657212768 912655591 629667416 858065719 303334503 683046205 773523295 865366896 256183383 435942511 725782721 760935047 831607067 944657243 228375941 656646084 782623392 908413217 652272772 662313300 924388189 960917163 9681044 37366204 492651738 635726472 617912351 810229191 784834196 817793959 979664434 990852750 89407726 838670971 110232468 466577227 262372925 499276568 990816213 999695267 832037612 946815468 704875197 762541780 418143019 944666301 292843148 633793644 393599181 919284787 120868411 682052011 546941896 904510127 813346793 881493780 68769713 665294659 887761995 910809140 545081107 767475745 833831289 875253646 626046499 858852351 945163112 970651440 507199238 865028880 335701062 406483031 612088764 613407763 971826067 988509655 673001747 704161337 95041203 297800309 876722539 889720621 214650697 509947483 932333404 958424824 594445734 660719009 856494006 942680119 560646569 900474559 629208736 782707773 990986780 994474998 973013208 985763345 487835918 525852476 190610416 716034130 370819642 946067874 839705590 974661402 729014397 766212499 697967216 835791182 536162947 919674822 19674484 987731632 199887166 525140978 219663473 972807667 152008111 390811563 767661096 783679540 954817197 968896997 845344636 855027563 751462808 836327475 11549360 715816394 641653583 726485449 891470503 989739578 609484260 863249051 542807039 931547588 799231252 807727868 108968488 868571348 410527974 440277159 883531339 990000556 977088815 982749240 225207148 568345253 85017458 575286189 922342857 922961856 445775383 781578389 966092816 986861841 712002991 727480782 141071672 693091697 825944311 909858343 575465531 647261740 326703398 403175327 912544105 942000338 4259001 974431551 564335904 674334312 758357908 856746988 454662024 487947469 423894426 702715003 101557154 110042290 713552273 870534935 74854655 964868404 831511475 946875572 219715186 237344011 92353684 834995326 632022664 745946691 677144717 944698516 806437112 942322309 104450949 372872134 462535029 989406563 23826030 497377092 996641289 997006340 946191315 966480885 781325363 898589417 573356412 939003439 31504589 248318379 339430515 679531233 87005224 478763427 652460830 660466483 75756288 860584140 358521391 464373831 714686338 855811619 666618495 815285968 289331157 918159189 413816840 773009638 885319801 974746501 543317049 821852017 200271813 461025461 783556171 890201279 203949190 780593600 386930797 837218311 780220010 790198684 917431278 972822436 289541004 328756807 156685827 733476170 551319087 891848602 38804282 797127469 347279469 585780243 64898251 372123157 127551521 976489106 221638125 895734989 25323026 159571841 122639298 567961076 138623571 755154037 576966380 940624485 515898522 525353397 684082633 961844692 65598561 581825820 925281828 976123801 182326173 806254353 858992490 919609120 122195466 765534623 605981501 620063162 128809925 521533314 174998658 892772831 553205787 734715093 708725398 776551052 987788090 996542233 821847073 931239669 603425076 811337399 302734443 715587802 533592785 575068637 883142130 883912157 529262059 898735286 214775116 498193902 620712238 915758346 805252479 867555616 93045112 324517448 83608041 242712661 33272937 887921737 14469718 157658943 34454999 106321037 640973460 657279817 160383698 542967775 584514042 604514779 409176583 665359576 589909375 919700106 247674127 804336322 657466633 788714650 681191432 721391478 230907529 959919286 318311012 933160181 131348461 343052816 962069057 974625946 60530361 447214038 779003902 962506386 970122164 978336797 902753198 956803831 797134572 863543251 440922835 838580022 261027018 667162569 771355279 980689038 48437719 715968217 54855472 260875768 162429393 965335685 595630523 844847126 943781766 959481724 227121702 688023757 924013579 953875139 901655949 943318748 352597493 560738224 741106460 886699002 287952815 523354080 776125303 803347153 611757096 927363555 900794349 903102740 53805016 423684631 617232371 753133191 528261628 603325565 809186712 911889823 392181100 417495327 546057950 714526291 127386479 377655355 532827912 586977409 467877510 658230930 42802401 61522940 138875174 601543872 87999425 174644722 695894530 944061260 32360681 855409069 66876237 911672150 38880611 763287209 279748857 406619915 62388208 806064366 380346962 429658321 521414808 678714481 603868764 999830087 900598409 999876491 449170458 646857820 119508334 154820626 66773678 113198227 156443625 472894117 511440319 637103753 251313911 865792482 202567358 302842551 366675888 960502314 493288272 962470800 265885686 791935133 160200839 171046026 797060543 909584634 713724498 936452146 294678033 813012614 448256412 709349984 193645370 893728573 337747683 393596839 925582221 977141606 507163359 530129062 334093363 742030486 519687293 735234850 784086870 799324819 649649493 759027622 581394719 959358337 495114889 865839232 457303020 750638236 678177905 955205277 798470741 848787994 960348015 960818762 335629622 822565555 4923812 567515373 762186759 956280528 794709987 830017348 905768478 913176817 695541394 824236364 71876553 284771074 949401927 987630912 764152254 802353655 386855335 604982949 184981565 428237449 40295048 753355431 887781306 960030704 975838619 992963293 755259886 801841207 643580235 711201852 335437179 720333429 241012030 613492566 640927219 840972612 944407277 977431289 377800717 680720391 606904179 645350880 717953525 861258415 54526316 276555941 430892441 786078513 681587106 891508245 193657156 413115742 629796811 850785027 476623977 686955689 666649901 686647791 523748179 923115740 896387122 994851753 630864521 900808219 555661133 839943066 631403947 734937861 15131247 369429915 581113566 873276011 5388043 39810798 104050923 658032868 314685218 696883379 915854515 990501548 674241896 980477229 586037032 975168358 285221176 568073536 761941226 949911051 941298192 942334075 176013353 256501075 724578143 850971018 197039058 442622617 519274292 725056226 551548069 798586630 616517496 807670252 196539441 471775095 866344021 947288211 487882488 560867089 412242423 647192379 218564864 384292754 673422122 944554159 852748894 995257264 862948377 867454539 540696572 802126268 887046162 980974517 243759537 703361840 831309243 937286650 722340653 828724508 778652729 902234365 22052452 959150319 735498032 871367157 218242073 485922016 971454210 979448394 678878550 722689174 880963006 934421945 443853508 974410285 438594876 490412598 871059821 947911418 572341075 888104356 789025554 819629927 928195648 988141728 858898210 873154404 113069000 534158725 743712676 998816280 183426015 918751324 238051434 279949436 41579381 988711346 470362201 656577086 956019644 975131598 911033186 999097084 828787163 997852624 782135252 838684450 910888968 929707181 888638756 934186151 220574902 438952431 919844233 939304487 495143313 705737983 890725367 951735711 253943331 617839789 790176483 928021879 242338162 968291078 868300412 985616745 954962323 999961059 40279794 218329291 761429607 808941284 864727106 941641628 11612143 830592277 927620391 944100129 631124578 768247626 313878015 765534310 496179899 880807916 923248358 978834018 51709791 735071460 11907900 437905017 428325948 934728357 249811103 908904026 344449440 604593357 337810590 966654880 906338417 985126069 992510724 994501808 699707034 904865034 294495374 779104903 82286616 653905102 417746190 882336407 579916860 782310894 758214427 820809941 875910880 935009317 814135926 960294455 34578495 281199612 159212812 586574952 235206817 439282557 75740805 677751263 742423751 788099388 849249223 949483134 34531717 43848742 467865169 615424575 801051275 854131354 536161248 668322574 680654816 911473225 319707976 814179389 318811419 829025122 130837452 815777043 272629085 552873741 493113041 902741705 742980145 963034375 531446927 647914362 672953443 718824488 295267632 408516189 62516380 765712196 667907468 716639550 450790421 844906626 306319670 804919573 762193167 877702632 605626098 700480467 932880401 987381713 70845927 656284052 288135339 792632737 109079930 693608820 207542986 353778440 397238286 759551762 56629180 902520291 20347209 628846652 158426126 332645172 610893782 800445447 537218180 669887528 892763804 969283891 998375045 998787040 83497416 947281327 946430844 947147484 507267790 855700603 721746565 956237412 420634901 479334173 178571372 896100166 317530731 506261416 785089158 914142276 76095955 816068256 883465515 959455864 50995200 448260811 912688731 999079855 425644862 755330247 46283937 81197036 858032075 967352925 504247000 723398758 50557219 797797371 174064194 212420690 888753916 932849099 98413744 368257672 214882270 409058269 658239722 752236899 90184649 848533271 253284854 963051108 991007432 996810830 766684148 986034306 330740235 973178484 476540632 867850411 286058855 869065249 264624799 967900409 837178582 875583160 50191757 248121070 206255060 493357444 99632009 669724344 29778815 372507461 263499932 797347910 343455558 538437747 284520943 969738413 406506482 498622344 610366941 946374603 106797480 531764324 784819435 856962668 988417570 998494491 217476667 642710012 360459869 968373918 569612523 755622807 949967341 986668587 838583600 931494711 188857130 694772339 181191018 867845902 429771083 696913817 946496539 998213262 900813078 974446265 739377172 847175938 576979610 661045828 212443941 419600511 225361599 680282276 446106234 712231677 507872810 538058151 842547606 941198968 805662738 839347910 693890520 784403042 155613208 362120501 396430609 418815607 43165364 478258679 835108974 866031401 333625433 623278635 311182898 692873969 493571814 526955307 789588626 921004140 969702288 975871199 729863933 960204410 380373873 464728569 178401571 893011599 298376109 337954699 604094270 987879389 468869821 612212901 126616143 408817269 564911973 768378498 415396595 917425009 742843555 859330603 666259548 830536249 831550575 869460974 7956975 899842112 182924014 212109704 817255539 903781465 460737475 649680913 895417482 995534698 397725682 452605782 369191388 546379010 473682518 583265921 47667393 720045823 511701206 620234772 713390367 953518799 302110356 410045253 140402771 195169940 767042981 783240900 559370843 596400826 906039309 932350479 795358673 900678929 339968505 962970022 429045029 691637618 835207581 885091823 198181673 897500145 827553918 990102292 361809993 940277799 503361290 633195287 233530138 798177158 666232098 670473379 719450131 966424632 686446976 990287827 6452500 663551963 675272171 679904324 635466558 804118617 39606940 679297831 187648107 751044911 333915579 377750427 803519487 850861793 849023488 897183279 620301024 776939564 680136923 938016709 892475780 929678726 827851607 859985951 752298164 952160242 672943409 725683039 125996970 259859961 728591775 753168391 284766626 922849552 83255174 179924040 366913486 606314377 212656721 899290632 373748799 703146550 201960804 905912961 975173929 998322678 32461800 218665889 249884866 644988874 486947738 681610874 740218974 957109072 418575914 748079741 259263521 389679530 984384451 996601991 55448339 795382378 594452656 619215649 347559194 518789339 778371028 795715511 454290871 644540101 799257122 966197772 689474069 727141502 765090841 898263411 789887509 967248747 819952042 902391809 243575465 471462247 208024966 569955987 102931837 451411346 652985713 871345834 676737541 753508814 840496724 959042139 609683405 711322431 321888534 757126952 924708082 935091606 913783772 951365753 696922500 761084986 910905196 953660276 998340940 999492821 869757607 962623277 631495150 738691716 480078585 756762091 190502342 379764235 593718312 752531912 935535175 956529478 735470652 792690534 669656642 719637134 29581715 440876300 648582575 743310318 585153188 822164332 32065309 263362750 541767065 976946536 838040058 934865998 463804997 689819524 374032764 948207291 818987748 925269108 790445197 847975629 247392912 307979357 135866873 257858577 933949981 946597985 313644815 882503382 750815509 841200689 479794014 844256274 697472510 994690113 844170022 974816133 224389162 658257710 228073899 951856347 464550956 847460909 956759105 969048613 210716547 831399045 865890707 897238581 777693032 930484561 838810855 935235405 576802487 963991290 985043855 995808360 732435812 808357021 978774916 982112947 417317876 627769819 679361957 708461403 367251728 620571150 192473576 777960047 695616697 853913379 977779609 986681829 110233613 717795397 489861485 985151360 795636187 927494573 947958856 972126462 171720294 365311798 399342070 528774676 122550008 294417186 190486254 481499646 256568727 500711554 523360565 988797051 489929777 848619306 622725028 694308770 278202145 970106602 819057355 860841875 827111734 857931832 824945659 912572593 250466546 692121202 597566940 694326498 696047057 942500155 550237265 900332924 239540139 604193322 919926478 947147361 31496977 202954437 806749123 863158069 514954761 572358606 361077580 905897400 461498001 552338403 420375492 875479292 386413706 864578232 723227694 899016165 166570472 184855046 815463670 923356389 987883100 990938877 806238120 928520837 935710916 974232517 720895557 975276157 25512888 741925903 834701457 962144878 538064664 695576838 607889845 797737801 871516668 991392865 254614834 818141996 526683571 869098523 615861731 937764075 499708037 863741415 470909177 474629964 445449539 452963520 35094943 52532564 241269610 598568051 72861845 976450980 804272761 975562556 929358809 952013162 26418742 38182367 833517444 857365288 331493488 390922692 944373863 970676646 990950779 996611585 869656909 899993446 293971466 851103701 443950544 845930729 76717952 794454743 484701319 557763523 667652200 965432693 50449742 792162431 342981595 949118059 432140214 608877579 36997532 930147229 6646670 31979684 884809614 917890207 746947352 806917916 181628067 630978854 34910391 725539893 115896071 982415706 223757755 409166311 284344043 900563003 182213596 919369364 14312054 730132533 368405484 984293005 742273703 753298866 485217171 738473496 917542210 965052637 40330335 805421504 807089683 963824181 33613816 456011228 636868863 954279062 855222775 951750711 542151991 909150354 453462588 569838721 286629409 630658921 394654083 742289850 18105039 609086057 789186657 928893017 588944271 780513200 871684572 877381234 263419716 966096092 701442576 961655386 746871148 982884848 785526775 802557801 730768698 980142954 817593222 850475611 104185068 680181131 788961205 825480916 348474056 411119332 339645003 985105379 342615028 903773002 199794033 599439107 717873534 990673780 591708708 864880811 757629673 817600387 151247475 715051343 445495733 488411835 885240123 929365938 982469953 993359196 232258230 986232725 52458124 180065732 546342316 972442137 418617414 812364427 549873055 740170832 379856661 616987513 798387166 954028793 825786813 863868500 331189178 399089789 258133122 670642985 114019537 406434253 282417627 734207882 878827774 899700007 865162071 990735134 715788352 790488943 465022577 920720250 24032746 61952718 852447495 990963072 724939240 914450502 50638740 524535685 109210279 913088468 596896730 951668047 113447846 131339811 411376671 918768748 837329355 933185731 261108005 728098936 892693503 966929943 836475219 944528502 639737997 742720257 401940542 850076795 96934424 870015738 940963390 944070173 254650685 730647022 31879092 334278469 383540463 804048676 703691193 913937913 684796916 782034088 861618555 981848848 29321513 307011619 257611503 405308652 873242971 915846459 961941181 994076543 53863922 444071092 274771714 388941815 918204791 948693307 458102831 632770362 875338334 886238274 473013442 689981879 627805533 875882503 823293672 929631662 46203330 408057223 204830821 264128722 847010014 952213260 867820369 985264498 457185839 886633319 564497069 785289209 857434232 925992161 594098386 661734452 5829026 410075515 232046302 324855538 809724368 998225893 14973108 679096061 720209018 743052976 909760493 985525064 726662746 924692066 283047132 621647114 887097753 996787727 576986276 766527196 839693238 891278688 8016380 765358764 648138928 747807362 991482054 999796805 689389802 929588535 970657158 999786482 259718311 957129684 825522814 931508110 977721565 980013564 6872149 944586422 597034817 867840270 697556425 761175262 632095721 878259297 314167251 708154984 554739095 971986030 501576784 754901232 262581807 439854183 57754014 333762080 669136150 680179629 919316340 930920765 290815765 457762303 536615519 936483763 632911332 998368014 146409434 574159539 315208905 482618509 149377341 503036872 641135672 857422045 581309957 849967922 193000300 746612166 30986691 518463846 499428174 880656175 928711850 969295704 327524702 337173654 637140150 908997868 912794183 933104114 41521626 808549458 257443827 263657426 233718182 847387027 62798464 568607184 295674022 830841536 579026914 648394148 630868399 846382160 934734594 991650320 77380104 146831791 975005856 992771631 584437406 946295422 745418725 873190646 373833771 866023727 468667285 513986019 505356920 683680453 461102895 705715997 175615382 632356495 142606297 510996222 985537222 986510007 554680011 953041038 935429512 960644016 346004496 869630350 380268723 610247099 16785649 166369914 485647266 715224535 91609422 782458449 826719328 956916461 179247264 652873432 814270752 971254674 215223356 627883161 905229688 994146397 949591049 997457269 841947304 980478082 851836395 994257547 333572956 336508563 996689911 998502774 874736926 949853933 330313383 599716526 740715781 845453791 818731485 881447721 786080844 878781845 874152216 875950404 376384036 929118235 612427480 627892953 45863678 378077080 259016801 344068373 380813995 534751446 709456811 781425920 150636224 290445470 956266897 981717388 109467997 346386694 714569582 972037673 77921044 819122876 841941846 978967609 559053499 568396363 688008807 979537953 941746410 950932087 821127104 883513114 88533648 398178512 930418020 987251433 378180135 592040247 935472689 952268094 674121301 826003538 683267923 915959784 744781581 814108590 577420364 764449043 921430770 978034969 614147504 761180006 790047037 941359398 129553807 976785303 969533758 977690016 937258421 945890637 780786010 794264042 513931787 644575200 312155786 457536633 756659887 880381598 21565875 797338047 554161980 743923952 736854534 791716927 878060059 971330074 997220897 997784440 656953576 661200103 607820553 788219769 454742852 643078259 562202465 866825767 395366885 737722603 744770379 875096296 443238656 483175044 379830007 787746034 962409375 984646025 586691071 745419465 818498347 976789250 587224915 959567813 678520875 786828029 432549799 934879360 459219975 937384815 335899156 806791003 309065058 918714306 329006850 557226184 726552375 987420014 477336041 819331141 99026837 786604656 728382057 962658630 357075657 913610985 416957104 720838093 142876302 577899528 451727186 727416556 526763172 610006491 429712443 735315129 889232348 979396787 305172134 853381222 386607279 919608843 24341217 953663544 762271477 941393313 582009580 608653290 434387983 521139757 268526095 761788582 858926899 917745685 942236923 996374970 691065139 893893540 189499893 281966069 761549058 997869268 941840586 957278009 966577695 978702238 720712006 828476726 342034678 516280930 690847470 888272515 501085397 834319857 492002965 925905361 766294363 969275349 385156937 998876668 219543439 324910858 219883113 328659897 618870449 715742935 277244480 617697379 687830342 729384552 902647518 928440384 154962690 190562177 379873574 560614047 644953524 855330664 870203117 904810838 49671369 552696977 124061303 487042564 249258205 350461497 55950962 567202444 789786230 836491157 624279027 959603964 762019393 857466001 657912908 831654031 335282480 911439492 191726722 744299741 406410482 587628727 592223412 831214133 271710553 380076851 714901759 896941827 218947284 529905143 528086718 932686599 643338369 768873000 845819160 888967078 43822075 893097213 147403129 684069375 734489122 862988139 239485465 541780051 164768089 584329164 547134803 786352433 715845335 899604981 545608610 991691831 57074717 947468065 544043833 917091531 645734886 818510337 555908271 705909549 459025559 841803579 705525438 884806335 240745927 361319777 199228116 933497715 238953869 766968480 823530644 989430348 874233029 901836013 881160581 974231016 484736798 592353693 642575234 859662119 444766262 687660002 141113289 290039440 609888060 820225243 335320666 568366459 709783013 853528093 477078906 891699609 618375016 740815034 615880712 652519945 92375036 712731643 772670628 886772124 255431755 537787574 571551491 598464452 655435266 998326736 580486396 986149897 639341764 820489290 376313352 625021574 667232777 715354728 22514816 270761412 884612905 960596407 20039317 144566153 472534300 787727220 479043681 897742458 606775293 721268192 469488275 987354130 37417056 420842872 87239665 416280656 692581409 952176827 674655290 843890312 95233516 517369336 541383625 865057971 654620571 826173164 250662076 640167799 997392837 998748972 331185947 653292807 679295411 904239322 582548467 792937409 587968716 764974597 931911653 998383283 68891114 371535934 824025784 910192234 526573527 757670483 23540082 62461099 209091987 940796252 847789295 872842793 369820739 871274814 502027308 590347097 692260065 788483000 748318987 757175887 497368737 575734714 443766704 894817827 879848304 991582323 235098666 352013912 933023072 977840874 70638779 989812855 240626642 958277059 992489067 995552537 755111281 970633073 1565524 149153881 770044304 773041238 71176915 743370604 318503960 631960867 158932408 658379023 593306623 760774707 992982303 996159307 180916211 743041871 585059513 789662110 659752891 885264470 850203135 957595696 713972110 803190378 186640217 870309004 626244550 998970353 662930921 826472287 168245679 834677069 757813098 772358775 378013811 503080538 759009648 856488995 186147764 868417228 172476689 666086999 720098101 881498645 824483850 991479298 790676459 993595112 837489923 864062433 669490137 894079268 775619038 864819444 717351705 869070090 647721486 912160543 29152531 992216562 727541528 748997072 359819629 441318041 712518433 828517748 26343564 473895629 893950562 981602654 756684408 798774780 659701932 856342447 605319928 684078476 915260205 979667809 967196265 989421160 737330451 878232421 853451829 982768334 629364083 903553202 845138111 884756388 113571298 350278904 380088188 972866607 45040539 868281676 909851220 997989727 587882601 589739671 681482650 768359006 833142701 884624736 374196460 732758379 763916660 892009111 973314174 983076916 100504526 580452933 519427411 877846189 174370873 216905707 171874652 666092693 687002788 773584861 506201914 998932317 3098259 947859670 306600365 859586723 963384770 990204954 95807104 988293687 556580997 606765750 402433802 828106037 869927435 975907377 923045011 936622639 866933566 927174204 653528589 970776037 708510463 905838339 260019846 263517248 359176138 411894907 38929840 591901491 381049782 782716329 642053689 693162906 360148777 463814133 549036683 720303408 273600180 665415709 747173972 926656922 719233767 838896576 841046216 882349041 29686916 953816412 337412565 505104740 703814110 806125615 940131577 958584175 376935036 898560804 514878544 652049929 196825940 798313240 424682876 508123135 174256445 235211570 202401827 768876990 919445869 980660085 765078558 808829570 307887606 915391868 277586851 768562812 245587440 915842526 909987962 921651781 236400614 518980190 80060890 786653955 736968767 941791830 521684439 769435463 217337013 662325835 684280242 837513928 116959957 998522758 392015067 722273697 200893452 598715862 978034438 987010110 111847172 374017310 15141603 579416130 652162852 821831905 428345387 552630902 838102612 883817300 525433978 905500073 712901768 846288412 175710331 639340998 46515236 394369108 640699519 670756455 581197717 998059418 765566891 926460851 851693292 973895496 511794719 557698816 366956631 635762441 734207925 868893079 236096875 602667768 682697831 750610178 337806812 416856581 941012912 964375039 528486156 645346497 102225859 843805929 118709536 603223486 927148723 993276491 774043528 913770617 309327474 622394313 437576359 732468050 345146959 384272734 469887320 673817949 143830953 699249292 763131255 982124454 580593633 630500064 255693386 962619234 338160175 854374577 646522679 710241542 63306557 273906842 84714865 589880891 632034423 978553976 599713737 915277620 369803180 672771183 118336191 819759676 106212449 978236009 403096003 454321452 92831947 134727155 722545493 760786551 100625947 382630018 867372523 991843235 704179894 986428340 732386467 857075926 277266289 969035975 222653882 278164402 411457287 501445926 31403648 810502758 421248208 438254270 821940865 965376744 347691517 953445918 920173653 963531495 30214379 375442506 533664038 727214438 185982254 294174066 534861294 813894067 233569983 574374254 464078887 480179261 952669156 971600263 693569691 832493173 258381421 698463049 252589782 962467282 156142279 781661779 904417686 932084014 865304985 884942570 563696237 686108376 531739857 816059478 490175673 928514506 823533446 961260989 286557616 297384480 279634104 786315761 211605590 875603851 36161237 764120738 279247308 751490449 62984471 64814925 418944036 736653638 398351267 398911663 8139369 52610229 43211172 589399445 398599642 752040200 305124468 451888316 992934180 999767538 272698986 993840779 402779265 556641350 636610667 821216182 505979467 899852102 149334891 656457761 51855890 681079426 386995045 551490336 570801912 890767907 646359111 675010978 189486364 746062977 435018475 962212053 826320300 865633505 644541739 927699570 412950632 482005155 166682778 896960390 408153111 605631807 715846803 761652392 954277321 970341124 206132726 720281818 568058935 762172009 63949811 363139511 841720669 987397469 459325520 861043992 537912935 808383043 673356788 785696420 22493562 704140286 616266741 835313050 129441484 165467943 883156463 923410656 720454330 784881087 674858713 748080239 797184728 814710785 909643711 970188519 587391050 619694666 276138633 479332208 19864786 617410868 672882 149642089 54079150 873508372 278381378 354669427 917132021 977442178 208042262 230048405 614981130 916205885 265722746 483705691 918470318 978343346 580272460 985694379 373735502 905966545 678154345 702915692 626800004 709393935 945536186 969893373 218779778 421882425 749757133 896087562 538232739 762725355 798263690 988017580 938958215 960257050 281640626 868642987 601731679 647089419 938687134 966300039 433654327 708055154 573972876 936661209 260374337 663596209 949544557 970303337 632866067 873408579 800827595 993184726 359387324 783987317 297710418 459404859 427831384 637123117 896751840 941545003 295007903 422061428 463371281 860356385 191389918 450213592 618066303 916580648 905670435 964192371 735120198 970999467 309494341 583599324 856470763 927597791 422613501 840289000 98478415 449714428 480880139 715844610 101317910 938046582 69349333 119266667 461437478 893620905 242541356 824473867 693457081 736860135 484749922 866490345 653439525 905446571 627634343 721485026 275156721 780961845 85586196 988623819 281061878 341366031 270306604 586971730 339336796 477204439 387167816 646316988 531491098 653706431 162367393 900991828 446498397 472151317 402668712 702949603 660989243 771955084 770566372 832850527 757477903 929306498 848999471 870932582 230191960 794107173 787755368 912596507 749053719 927162816 779097239 834835719 608754785 913610899 452627198 504581230 747949322 817187742 653257344 802092271 181457885 829782036 4345070 914025663 427355289 980446276 991431898 995893484 228951875 415732293 890130716 951407225 940879515 963808623 794958416 941353173 878273059 944753420 945878848 982795330 788041846 980785156 616695185 698305756 808897946 974517112 357041764 600198170 779225033 970791695 925614325 968679447 196722612 591138860 671552108 783775353 437405589 674738179 65973330 230155127 332018413 885053864 271015151 941638163 263000611 300871598 55583804 73300249 756080991 856367588 292701768 554214481 183757862 443989861 429973113 601661972 417295601 806967504 847792966 868457004 547988522 660958868 322049429 720494194 137654973 386192755 146320196 467834180 142512169 893370309 985090978 998754017 115714819 700572067 275413172 293192696 268528921 390751362 701846608 925569478 977617158 992747281 634598150 795914057 260519243 297582836 260467249 951023289 770810144 978581619 955861048 997475083 107397534 767264160 916278535 942118806 353384635 395722466 189569420 303602517 676634876 776383382 714111730 946958989 134041579 931697243 568291193 668628865 680716823 969517170 118250049 163116456 23503992 381031038 682066321 711939580 376723864 628223324 547529378 805003048 665114317 723043929 348358493 697569745 568764706 619314134 268182556 919150231 980612789 994995999 775135198 838296471 910200565 934758418 604681904 769134432 622006412 804227427 327604644 747497243 223895402 684962624 193227291 992234989 386933827 664501208 920007525 984764679 947055756 982979113 62826899 220770519 534003929 622370007 792461261 947497172 29047680 487956376 176235766 241962133 564285616 803851226 410978415 992921061 517241420 637164364 243932156 851579442 413848101 825949983 707556325 841692968 633793267 886503144 170411681 330319615 455853290 958610008 63027054 616586286 575278640 592976425 238472733 277232553 435664896 538904551 668294833 706521519 301650905 612942860 540070313 979870048 172829815 782250973 375455781 619011146 544983956 600916966 172341028 794058351 5304898 503766009 688759160 770387409 28228799 186538450 748708735 940988879 591229384 838646913 23299667 201408721 548457663 861302876 851700086 880728252 328804333 719389566 567517873 987597981 125305266 592127874 256407594 766767227 710579216 793132061 214046813 764489891 912748443 933684379 370805350 801369856 794261161 866831528 207796743 385365440 422665717 564019857 769250845 828819693 896693638 957932722 721394516 827916516 17272715 672886672 523825022 781560060 129395724 717666557 573034493 593922458 562731374 971304510 204076734 957550442 995221346 996161528 114974353 763040789 639607232 911591089 202406629 785523699 996883880 998692811 778335338 983742702 489560725 917572448 307081887 508882381 250210237 772299313 665628992 798120271 408424364 524823637 406941315 681645781 665696546 769163262 454186319 660806021 230169516 933464943 398676305 515697954 657301313 707145512 231898523 674040646 213760130 505395690 341238051 528469063 102956492 753657940 664095975 692995838 944397638 950119287 320241356 462987886 653322321 831816723 41908366 888398690 203863703 492934523 209656644 968378212 262333075 664912119 134897014 879466710 760241521 927440105 588095285 673653017 333606331 650798635 459333874 541221004 376511400 631189943 658876415 885690663 44028731 182502218 478519562 485839896 667488513 951752974 708428645 872155706 542831081 802094905 184201291 372010043 963570301 980809767 448724395 457123553 473848794 783906497 25118855 50219643 264928560 578118382 905521670 966932090 281609642 732516515 266726806 344067091 835105586 885140578 405589206 881348682 893694718 968934987 805606837 841197160 313163526 349931532 444924926 768670338 601465363 613502276 489333819 668250523 826411393 896666110 391264280 822216875 410005629 905155950 554554720 589129477 132880377 832693869 496136739 635544231 943040068 969999844 400611735 556932825 150407508 180275941 776975636 796354122 539408136 546080886 326666000 518495849 658636323 671375708 645185770 880781953 244754767 398371700 411791430 652984608 943776863 998441146 736621742 974571058 282837606 589142704 330760147 836084279 671547895 692337640 899256878 900128091 354894487 903950105 742325973 784906519 815041531 879023770 1877114 123542720 464125855 485266157 478656280 836649745 283510830 369849640 525617568 811585999 971573289 983979217 218069854 635009827 76985065 726121886 253982813 462337926 337441728 557084326 485234563 919444615 5269848 226413522 872853211 956867563 393036245 748178752 153139702 270309920 316830176 777991838 102842119 838089916 358617206 829527332 705884346 995847275 611118732 923672934 546709982 864447747 984826144 997816550 687373374 848605486 796080020 991370286 762975671 898950882 849674859 986559884 964121547 969900458 607755435 926391009 154128948 759762071 177444369 515395305 787344838 853680548 611518546 670515552 390850292 623893792 644153085 736435968 514895966 884477293 205736890 660027918 626985157 878423132 732665956 955542641 305694499 829898232 839552418 860572165 451549482 507245880 500348637 534457309 184358233 748072855 106655389 501046798 214671757 255365801 576216375 583005711 465936353 909682221 324147285 751568210 305241189 983898488 215349707 757881188 467985937 615194628 294336771 903552110 174023341 844384989 878383560 928233287 229218855 703609736 971580631 992714227 98485666 738461206 716920476 718907853 153721040 855154451 228371270 937900821 531809691 858883466 671971830 702063183 904492950 919202474 623332818 625707019 495292003 858314095 512883711 547545340 542165868 614816525 433390323 708735767 671827983 781166933 635577718 713219027 644233223 919393388 980535726 989471416 221278796 675741267 14892754 411101230 171118352 692926472 14682042 730805056 379178046 391381414 702000171 898406559 718993716 816300409 475319298 761017188 781033051 864518553 892204025 912174010 104922542 744266891 342108167 930763034 856562643 951331525 675019748 689522581 529081105 603141184 645834496 901155479 358655002 525816621 732177927 932453961 356564904 817607698 419581257 649820509 466826478 615730748 361147103 429019938 393483067 691814424 822905406 895384838 204061710 725492031 995403556 996049812 130617124 777449177 856468306 957397923 612014338 745009881 724304397 809459915 662814695 910659778 832125454 833305638 872872086 896786399 869559552 967359336 389059897 498467889 600078132 732093401 403617683 588600813 484821145 491174957 565058238 933372975 940362072 951767703 482736498 822063551 63622034 329799154 529598623 928406714 785320140 954427883 33138889 925918674 747152739 748879520 654475464 799111916 465313703 712222581 747535685 912511916 279476906 589911446 440508444 928031641 912022575 983362542 323577462 408739505 213115403 330153223 900888625 983405168 709961201 864633003 583279771 795881947 423027110 771959945 243083397 645233388 821716364 936035417 76184259 619904448 643872828 902586651 178940398 182169594 755904042 967810844 26347497 963466970 757992835 910565291 744499282 977041294 573954892 786483605 390288803 601078309 113274496 158668290 791384510 893877333 254576590 986940421 899237221 901625884 736625002 957107267 860504204 959148377 451407434 616707763 859124688 927171264 298420926 490992129 969036866 989278219 16012902 436768690 770225564 776965583 702544009 822505995 769559415 958277154 91587883 169044429 634030152 764876211 447864155 648161702 706189445 960133955 674139440 741080622 239828986 387866722 788989571 902053218 253054786 594527198 43183115 806633976 223520612 902737303 287090521 477922907 76963255 862328784 630860699 950179604 689564028 931886362 179194886 682643879 282865448 543256926 305851906 583398864 863661492 916290162 502628159 792202897 610198973 701596820 567956659 649214808 88697812 721262331 480996388 975646200 622272893 912332361 916898493 982599160 836365044 858963304 468917622 814788807 977664785 997445381 930918050 950121750 971821232 990496344 631666065 771813748 348598348 834790060 513531237 605960045 504084123 585193832 531453894 957805468 765042349 769410254 422368091 830482006 277050924 693392515 943813463 999540483 275710067 799549990 225069809 382450417 4430784 731878695 735488903 809890803 713139733 727316934 648432972 831157536 998652926 998988630 547753084 588240833 730438582 988988044 770199916 896405248 805611063 879084443 646968007 723357303 229128638 307089108 441431828 792862701 816092826 969259884 111992116 134570747 880411601 970330365 969773723 997421290 123759217 907227829 78219130 294093756 254293760 558747388 344296057 560050986 835946621 988503268 456996435 691343277 73225373 201154721 545613597 548274874 110825526 586384312 39998238 926242985 982621621 994694104 252138283 414310498 646930012 815039343 628240019 946864977 537336049 849607807 364279182 701252154 929210149 930903318 458799236 799647332 578696786 807597229 895226856 995901072 493827048 871413148 433986582 727269901 177223224 957613208 498922535 643853732 681208109 927186555 23438306 957312978 505303991 546515770 485176760 660534558 685033535 877610527 157409735 566618210 462832948 869643658 2714700 411152599 322249691 497019105 488186961 743238983 319245003 526916435 604440462 909863402 990202622 994727659 173620993 814303665 807342991 851543415 571792839 621510438 893411859 947534248 986829197 994029661 752437242 964254800 696250150 721912077 209825053 224516996 897260374 905704437 169159213 541903139 570652026 583579572 222930833 768952932 901055004 963948018 410117088 618225852 600564760 672942545 677341335 812251223 625663523 673172802 839844398 933831669 877077060 889008663 361320363 655760297 189162362 616094894 208168003 385994582 96762142 927341822 705285906 749510566 120182523 930447345 541559958 686693259 946063738 980640323 954010120 996454041 695513999 704820210 620657414 775603564 595534908 733093457 458617295 906762356 26506141 427641040 958190693 977471762 760853413 771662790 42203656 527028223 430469146 738817107 586939890 681453243 755630484 942589577 318767478 334628272 439435184 538233873 293734807 382249823 594793311 859298647 923271473 936751041 360332005 732012637 598089764 753616759 738274830 740568614 320580195 839461254 608950898 653854522 315053651 567104952 341629646 799145227 20372464 571707793 52513373 171935597 523171328 606500826 797846083 953504088 183172007 340690657 754327 235440177 846979070 902891481 216101412 996325256 475305108 944812381 878907179 994051796 436341315 727284739 271301251 988942782 614237462 821517557 891261216 954829791 615172896 938196651 612679650 798524889 448217415 538650491 527026730 666003630 657026305 840810281 433811721 458232450 740371429 929304359 293713257 752233279 852201134 904590357 90135426 284762634 229457108 666776321 695250339 935137741 665520964 953809503 7177255 427952046 687352211 817359549 173540934 750711567 762382337 818388357 358904653 826435481 27156663 315374570 691011525 844808940 666649500 684789006 538670896 616482080 305787529 852364449 715371981 993750387 343924058 722127514 543908940 605580215 503518296 886363679 613811706 769496165 788292285 960096482 212836663 877736690 591017210 825047805 959061056 963343411 372090919 928160723 409289752 747189696 359152473 512650139 416945960 746672168 837868358 970083432 58868662 84660301 960213379 967870278 498752469 892681834 716767716 841756250 188761227 337247373 295554327 997595342 674032254 698854315 726294260 817872822 511238341 819102886 357227707 440697175 846140930 925621187 737253563 949307264 706886788 764913315 932348095 938768186 183634559 206350489 313711936 873211575 530981599 647227100 631044820 896181125 429413960 759542190 199692768 719986783 749069752 946435834 369286109 391602272 196951668 445381338 630873355 794101114 795210582 980192215 364127926 648198892 721670227 907140037 290572463 320381705 669181873 963103723 718162681 984458984 8212972 966060798 883702655 906083261 777857282 793356905 974320822 985174801 371604114 577388730 395267430 734774955 692135504 906809190 447583708 929310541 663743707 733269351 798349423 811665179 710990594 774437275 72901462 915272502 314823759 517386420 521723740 537661966 82811751 722894312 576280882 641862652 96549978 296065561 965354049 971665928 672983553 908725878 404090628 925472382 53200706 867344101 65177870 788046926 647314318 791888433 875221374 978018523 297502678 936200790 731623403 912147315 583393766 953607136 872139793 993173605 964003433 989442930 284324050 310071727 685386499 947017486 779516088 870588431 664518452 981587895 473441047 976324561 932250013 952910759 83570939 970380800 336488902 377483665 889221415 928740954 398027858 679293583 95503996 997466125 523004869 915089187 219691341 849766951 580806914 808119193 984435152 986500055 676941130 741848668 989465277 992958833 368931053 434861060 937956960 965607712 421068241 509309671 122071852 381894346 545798012 970121853 812838099 838645832 756335471 936443262 921638898 944136681 417424378 654428477 825635925 992562202 470034985 563268608 758304555 797734845 837555079 893448177 690190779 956656318 236365446 909477690 421130107 928909368 149467683 566284097 499480182 691671998 235337931 503313902 885263075 929875572 885509249 919358215 541377085 850485269 69625966 766261308 230325298 589159373 21064088 64247918 569482361 748113903 477801132 849647324 801420091 905168185 760158403 980860256 122588959 997691634 663815481 942866013 848573079 928428423 250221887 964995560 622410136 991850002 472238220 706486418 158880760 748045149 909044958 988079002 364332651 895665399 973160711 979184642 723778116 837142047 887894048 971772159 866245842 945013466 283061232 462726255 747897145 820553111 40062676 984510041 164725146 812283018 462173185 656911950 11931029 657667613 231389927 529733707 463789725 674862475 330562158 632407850 90329530 338830287 790725571 954510269 890422365 926783346 303358173 907173154 93440372 219339954 230814947 991445413 585130887 982762824 689077494 911734280 822898974 918343684 976550504 978137034 822779712 823339967 347604020 413257581 185000228 403076058 78189328 932934800 853994916 854529947 548026648 612118421 387762165 923937025 104557589 997732249 190244079 780670782 934805452 942708807 454794229 685596399 412805502 850910638 650004161 721493526 267421716 832643073 31222879 438713785 364247822 714765087 58750650 966606352 930567735 949698097 446778295 503723437 519624498 567494856 884747604 905815929 139159672 352486058 971056937 997015151 886843311 898023786 576338411 957799934 609577562 656993476 130650821 693630181 400563627 417120657 836910168 845734909 403360814 587987268 899340581 982964582 54093166 681400656 943461081 985796137 12352854 66351581 520860676 658499283 121798499 960970726 524068082 761601489 313944736 847896402 205585990 799141964 53281698 316871584 63032052 90610236 505166461 663550775 462211293 912029800 669631747 799411730 100940675 138911449 636056998 686888147 669574536 757736709 602073753 897435100 218942481 455137083 649932897 743116704 808283982 905875496 335915970 700600156 291996845 428470177 536378414 663093113 638615811 870305977 199330184 724796200 866362219 907654397 934884058 983852250 55629754 302574220 828871613 911189375 997450278 999385367 282604180 723759444 497973679 686603541 318749239 341078038 771035547 962162800 57136277 103172099 406497832 815679730 466786402 824314028 529380385 719775833 157899333 504509429 993510229 999051401 138060715 165658054 16311383 301479005 271118616 449181378 162387494 480073188 890913674 967892689 42540117 846116976 65792878 471648327 116898936 973460435 750342743 760967740 330535134 828835137 169375093 393864167 434710057 485101726 132882090 716229207 865595930 914786339 44333008 68172356 512933413 849319683 534285895 621012117 909037987 970339798 383804085 571701948 619150828 865603651 77732253 432746205 360355138 995853047 874987498 983697179 1157495 937290473 640742155 674056927 368997599 728124536 292482463 321008821 284130367 897391362 309677738 963623536 251497542 534154272 933384751 992648336 482098774 552162450 379473737 499939694 709983286 909685662 72989632 168876754 109214884 834846087 27603304 42312006 517422559 838404431 383934268 621903765 918954829 934504827 88102811 574302865 441236514 737008419 400063286 462002800 917196048 974099522 742739347 866015888 795573319 941891011 445032333 986481935 695362370 902602262 3801132 988793513 55328455 885381029 708331441 966443072 902327928 988343930 185443223 715922180 800125500 939395750 121549034 185263115 103250860 554940153 804941335 905783318 223841129 449836459 645837217 859034748 767977648 939256170 210418968 266796756 503320396 613188960 125323167 149768243 542995740 839357480 210474118 484261932 999572856 999951733 350201389 539175185 696596446 848690113 910207094 986739660 708480648 850472645 555196476 585520394 316660057 563315188 111198801 958435567 394778690 693924532 178006774 970772717 13526929 833014153 968779776 986739339 948180612 969702788 105857864 686803023 697924784 845186259 297180924 490424803 802567844 911980564 393358278 491964619 601274277 831435087 378114501 660056626 454067074 896241829 640974545 857745885 658140903 766494392 17720921 552995822 723574277 742948631 969467084 988071393 974973536 986571778 553014471 914332538 7328735 876838876 361046412 711889770 649049949 954129903 938184276 991452060 572004459 631782904 453568138 490261063 980009343 981440559 123346724 693823312 835630992 951765241 421843721 635584372 83616962 529699725 147637583 767448975 625232402 729704196 32448176 844259875 119516217 992754349 540321087 873412585 922445623 923750646 602927120 891927112 938576148 983955870 829166250 958666068 858953213 866814150 914212854 942421634 862425653 909451996 861534032 939541979 494095633 570942022 848326214 909570565 920521195 928620839 719601211 774202561 149341600 442091254 544207723 573349231 788397769 793035360 416124151 857374167 337519862 449256039 661623591 980450100 25893558 715149591 238995734 298305472 606589125 864934195 310221764 554634310 919949147 924926742 300542610 668952750 334576892 758434922 177072184 961995242 590811633 989124734 119008748 715047165 866950987 885323124 539791067 742322297 578079630 801362814 328346088 641483323 599027379 912337385 617320223 955388196 456465928 824924788 701014322 879723000 261275240 900462408 29686467 614908807 946082871 955219514 266446989 425550163 37985294 877460774 341499333 727869963 928282659 992371059 962509163 963488495 224122816 854617491 164914729 457298471 729604741 756079000 192678743 377121660 878016093 986152866 444135904 801284333 495899893 577111044 781362216 920192195 482687378 944668668 690214444 999828617 993347885 994927054 363926725 433336108 431435706 846545413 315362248 740340869 849278636 909305773 797261420 896756052 12614147 600939136 968264967 980382175 261946769 866860297 786894772 929824830 151180054 736002076 689457746 694806909 121236497 264963580 546307366 728468788 357525250 391655497 639257262 764264686 863552774 989768842 541814756 843923798 496469660 708633192 640165994 926441165 361042643 401104346 884453811 925826895 332676176 719361713 94985885 355116177 393463749 971798197 24970851 780294481 151335046 701042979 600986056 664782194 248315225 827015459 866941141 871831537 687536722 919802886 56368153 227493222 70678190 681053788 116951391 500165755 582148311 629634957 662513695 949505671 322544291 918615197 339978088 368611218 821121471 881265080 340021870 612690473 693698130 952375212 606825912 854668193 82200787 841935430 838210406 862879178 101182146 813606922 547266424 901688927 207437659 646311032 14084778 993010474 950574868 961970839 116443271 290544536 191549903 501198226 509130103 600909138 816781846 847431323 341891634 583416679 810154831 962160738 864669087 875944458 694611960 786365062 847824191 980916834 111209357 581811634 14464726 286117038 347469898 943777113 816171206 999896076 675012975 883582029 272632822 540160154 604232257 881408744 474360722 814505315 290395908 556276266 285463319 645370885 505018575 743721617 974377750 987646224 421288575 847900887 855489912 977631267 183150938 886981071 837229838 937346488 562366252 771650770 19375620 103653963 942506723 967960068 909647288 911306349 361984076 464563603 447924833 980717515 275941019 920407174 745946218 934861108 703960345 914693608 869931406 889588199 355149802 722923075 187398233 366487442 295132869 894059819 916857305 929002533 528954398 648569171 943591819 982191209 391015491 422341458 617129973 877948210 873905365 985687645 788943698 982339835 881202783 953443503 486045495 832182251 922100047 972124294 556133266 746248031 435059326 799200602 535817099 614195477 291766049 433150743 129441968 758056126 941087556 964675239 381040979 792859977 23072133 841341253 332354965 669377644 972790012 990552384 660444958 752418002 561474658 696368549 614495666 829849064 886860291 890842871 604009601 733090652 681942695 799875780 710771460 932534783 510073826 902656112 715710332 860236356 632401660 937861976 49144382 554825612 371175031 503936610 542179207 787071554 463975806 635903365 367718642 446591489 735527100 778202491 348131258 898139738 472877099 704257866 401492281 412638627 921712225 970795389 25678663 219628572 163432425 742925904 31542756 733053908 713920039 779479080 899692269 958412252 207183223 507555416 992025720 999432527 72981359 665491798 796269361 901355144 889056509 978969841 663878235 975106443 724519268 932415293 917168917 950264821 875668678 977926436 15155492 650010255 127373444 202970459 781161321 945219212 997399834 999895192 212483867 247758596 305030653 413644349 744659686 823928272 698265602 979948041 238171347 612472631 399148905 447351586 621496285 912680906 16807821 173344454 442176582 697034232 868583295 994266892 584194999 705527879 606955531 798092509 687024090 896405331 962574154 995292497 413682949 797667782 755080508 911414662 670935200 725140438 903026716 992419715 586960184 614715179 479415300 936517020 227255093 815382446 115420375 850992430 996415133 998489701 462295642 830491764 469210695 997918243 98994736 408018128 183612732 649322270 844480442 999287072 712060106 717254667 921857854 922955497 211580055 932727822 69139228 785933529 518238176 981907536 785986556 915516435 793144118 932473816 747204082 900564717 70287693 756584179 293008016 544854219 663873322 853041412 555931229 939553874 619714920 644092525 422998384 816899487 837944370 990379260 953481227 978030419 159975529 698515877 287902328 575201183 162530804 436476138 215232790 394000172 364638653 761911890 768332444 998959030 656927316 878553935 747231486 961395112 209506805 425482871 908643006 930098315 267026609 637868032 622988348 790085603 46345915 237584452 198585894 229223555 947117803 993863243 965875018 996344823 272393192 907880985 23352699 83574387 323126132 495500247 836516171 850756865 964733132 994535877 281608803 430081471 171227049 196184149 94869965 240720556 855838819 866867845 532760736 681864655 271407447 957041878 352804653 412562095 760004665 894220358 151121011 768344202 742036998 762466348 985780708 986096264 722703593 741041826 660846498 915451403 999379076 999651787 606050593 652630879 625384291 904022891 515292501 569632889 346175214 403913737 582762302 611162839 202005881 989443982 426240631 601575900 951540647 989722860 757470429 973524982 613870268 857594977 526330287 727323218 623148145 743629612 786000699 895464773 175491847 361080482 811747556 949025557 764642153 844764284 718427338 936321723 404103735 617628845 133054085 489958051 737207637 744482806 211772144 643325353 514658693 524184907 246099329 560931886 801357568 857341716 847405563 921569054 367049814 808112869 108440884 595510176 101246098 977329951 884981847 886998176 79826346 938888068 672022243 695868453 550780818 849234550 430759118 881518112 630387690 727336477 914309547 980774421 167240956 839034134 686816108 850722779 394085633 591998034 956768934 986022126 283991677 312448485 383713002 714143512 460949707 895523112 510018131 710124984 202040259 437761758 475440206 624474096 630339229 996998087 466922416 534947010 109814477 117810492 966633707 975538263 218815708 759936089 712567353 749735940 414037247 499707080 832337040 838717227 796165038 809471151 217329343 819613056 802331472 897009039 196608664 853118267 258482418 362368671 364212659 425984340 311014413 343544415 317304059 408155180 130239143 906085206 451063623 971047116 634690288 743462782 568368606 973767648 115010163 564179770 270798552 848208119 295417239 566591464 430985219 712801075 855351329 855512722 803690230 986008993 767296238 787906867 874872167 972080496 638307554 786515108 555852745 895123552 187373202 876621223 294344150 971318100 938233069 974843883 778742468 865073073 387256947 524347934 701591447 992259156 981870055 996629586 770023752 847812099 920410585 934865482 844978832 929610565 939919373 942056942 273256810 305182536 347339448 610956759 252271983 868390678 663700123 741671009 654169173 883042620 144362064 704150694 613777253 681070978 697132932 706479445 961163296 994128038 402118898 708850511 21283681 174697843 958738029 978373683 798510409 850644035 646044844 941613753 882892969 896113441 144258693 196173653 335197529 346845024 24758734 849255924 34921731 216511904 499227212 638024531 935266169 987177480 379065796 847575627 145799599 946131823 92568584 332551085 175734763 873533114 350507 251860782 40299252 856427054 739502917 940138410 135869833 158834743 940169453 949865100 15956029 576743691 899430995 982301148 700847220 891402119 706848862 720137134 262512982 501010823 930624333 994006613 406615221 576662958 911708463 912831912 805495892 943726359 973264931 986997884 895559547 908606043 795834826 994710201 986145314 988062313 153886138 339141160 472086132 598012026 738528383 744355994 659099461 898315322 647983032 839607254 589373217 837474953 557996673 722055905 456168021 940600229 491082014 971758910 447259452 703621928 18612073 746714853 297067309 813719424 365718842 835016016 298818063 451148059 90709711 385802906 14468683 296474711 979564565 987873914 1232689 553393217 857012640 985943450 753635086 873263322 358019721 441705638 376060752 819694787 289941501 818146197 748752859 910473648 691241654 846161108 197834575 726416093 124288974 702058172 148769121 757140966 743872290 916261132 108702752 315818215 530519203 602233202 565925353 833960694 668644 942847151 545228249 940102793 121995232 756295097 997952858 998611388 421311702 820974343 620527693 839647444 841266522 859833593 156336510 411140421 61089141 190114707 460169731 504411812 480865417 553444591 998478110 999578695 995692122 996695221 646613346 971277884 192804967 484173255 198126883 532713022 420112082 655515904 494049070 557999456 492915091 633538546 407658274 540903977 417844124 875603273 747035067 806962125 535423538 606366581 388021594 920080047 730878576 893827363 968061316 979067673 362369678 695273040 977308699 985191212 828516237 911805119 92393239 628703655 342908858 732861913 828893359 998840374 290296625 831048244 330966812 992510433 951725305 966427855 409939306 575430090 447367290 544308327 242289848 390291271 40265794 716871113 847057072 907414593 866644760 884210331 820145065 994783899 592204719 696377606 602844116 940492513 857637006 978596616 280632741 369715191 517087426 917137270 38884637 828528799 75022171 937306490 554589836 663911216 9657878 548143183 488404446 987762180 188943776 394277577 509651531 606075293 351600757 595047077 537436706 602246479 405671981 897619041 2293228 529040438 626933147 987580939 920483932 920649430 817407276 883060396 894896824 908353540 537080600 674864924 784192424 899053727 429489263 735627720 15267252 629550903 932504588 988169737 980026709 999341527 309867281 455501619 353430980 540795701 231768554 393388411 738573832 969969956 847125705 863034669 565067896 772783513 968049297 998942924 471188871 871912160 819753568 820013543 772222134 944085614 354666213 990153989 912460998 946215589 390017182 506357227 524716663 930902448 926664229 931167754 647305945 883153839 159962668 448390654 458856180 766133466 915833780 956203683 356016917 623679735 3853103 717744490 376766522 526531856 389423847 843764288 878094358 939340303 604884553 898212509 597549847 982872853 728286689 764654434 185356307 329913273 27106412 668855628 322199147 897701469 59168124 666822658 863881276 880675941 165997995 339736751 292446274 844062602 873419761 893509349 397206835 894678912 257432272 511465401 8183923 381285159 327814881 388331893 63848583 382061627 232232951 267076711 593947190 857107121 497361918 785333615 4728985 647989599 463055684 717375567 697260683 710907804 841335973 900739795 660235842 932818720 45424846 619888429 221897578 952164686 913045629 946867689 218983797 794339127 443483968 760673036 457225866 800847681 419827030 698205736 960588831 971861940 809329272 829930190 538692275 865209950 646564115 649868918 700866229 898120052 873649126 889042412 482991189 610613597 147669325 963179475 515266251 818557891 583632080 745555582 392778133 949849517 897207931 945425022 759689404 818568532 411524831 806283425 239948380 992931865 415855636 956946389 938907469 989168590 195443251 483499211 129128154 897341357 631281738 751692127 893696872 909398908 404016333 911866904 614060368 747552102 424858777 932170169 146686971 262606295 102722474 721992159 321024275 651385841 109743931 314190739 801528099 841498701 635443518 997165583 227197203 829429587 698356137 708220461 101257472 258249341 391572078 500908462 711001757 893212475 887604279 979377944 796265457 964175853 503277905 777680506 279880508 812979210 588041187 637738355 597349344 628086465 755605333 786701083 51413555 733557911 332793477 596140842 997403110 998873042 284546598 424027982 503806828 827462700 4202081 10580018 306444439 424638116 935145089 950934481 542222859 858306000 247441982 411817015 91181038 492020989 458542352 533013203 18150122 244705913 685338741 963858185 956812023 962374604 43501818 686085151 697016274 807039672 28233802 735232139 310985545 522535606 986387418 999269865 229055654 406006416 660456628 792880893 771173793 843759994 903035991 911655352 472941749 885444842 461127972 486423898 199466781 319645419 518038190 808691744 22662719 559182713 160378395 177607328 690713545 693898865 13968595 742216293 802716658 948006594 841803182 922401288 362821871 646625028 441409207 715998649 267986729 269949891 637294240 900131235 199093716 321276014 574074626 866380549 877072274 883580542 956115952 990285829 171759994 444717001 305645185 856462788 283471887 820855150 472815786 746535558 945132079 991208518 773358712 842165100 513101493 855501608 134953864 885155028 91169831 890891721 173585640 915023999 812434514 842982567 240043434 492702569 212424710 339402280 3134669 314120374 258308808 547528469 223596043 251634149 209396562 547113475 539043390 942832630 778120465 858886396 155611108 502966991 926849329 982131337 738884838 864758815 477547174 782650701 7131126 334782526 189436868 220025600 650647807 696264772 625170727 822926989 127084910 361430057 446770608 488050808 194814441 303787910 667160847 895385840 788662336 841038657 869191104 972944261 97755138 713727115 736431396 977624652 169182768 284243895 172030883 420800678 657569434 831543824 181529983 947970051 416287514 541782211 328660221 647261842 891922722 998880581 542112090 727602395 632621374 805039307 180015961 723965211 783264538 816308613 186430731 446697697 783950865 818170370 64906171 585941207 62792058 75846557 358025372 925829333 428857914 839314212 970912478 972935102 990886441 998884461 270260615 696475862 412243237 767030633 688115418 860541806 596121708 745829187 726711999 851144533 906945906 907450274 691629968 781108758 620875778 785286572 110495224 760819715 311835409 839546817 674062123 881028960 566744064 795653286 324892172 389985764 50717926 852585965 777295061 892105344 158143467 912612683 585381211 849490007 261773521 433419048 380296572 785456709 230664240 661216277 23300464 840414267 967454548 986798181 502746882 765531918 684469330 879950884 745634465 899601242 871426751 951358499 753438876 984838284 131836489 718640501 42439666 452195014 478545212 958432601 221934582 565483658 528359702 777781937 345018485 930999947 921740839 999079962 672299802 907235307 251663913 390638960 258464983 989895447 305553270 989015107 975972795 993497845 113875954 923352744 253668570 785515545 941575988 970553902 519235527 662800497 256146853 924958838 198019257 619052074 770572303 991498633 140682858 898036241 45715160 634092754 295726306 506857441 377644017 743547488 836034962 838229757 657931674 774362411 792289284 971336597 572365405 810758290 419377929 980693153 151248984 500576484 206085626 746945165 248913259 618504777 245726662 874041796 93557089 868501035 107381133 407933313 371882802 841856802 872441787 998775821 200183459 387244839 56020832 152675837 246609319 978262666 316838391 417962685 898336534 898820822 905372203 916952564 985345984 989576177 473026708 480595731 55608682 196740182 205371421 384328455 977000769 997245599 556500969 711773876 355382742 567783610 697439723 945559688 283307672 931890089 942842637 971451341 682512896 987285950 333830173 652074592 315426771 944259401 320294467 721165436 501178884 906897010 839110063 983617840 704050397 922681035 698271577 838425340 1733112 139025755 330307669 595574095 106636149 430978981 163196089 617730747 759756519 774588562 331444183 504793308 435781396 687864247 471361218 507830677 294641405 714163244 413565169 419472140 5725624 368171214 574929564 723263563 615476160 617537536 529821534 832866999 59927603 868885534 896777308 976662578 303625987 565413132 176027897 383378733 940434640 951298589 344208435 508096198 169928214 570666790 177179770 755699881 161303147 734215966 299517882 637750784 312334136 868612530 183347870 823232643 418948393 873442355 843349358 975616026 618797085 953406075 888115043 932607482 339815457 385322623 668867241 972509345 223061350 561580835 29899285 995801869 478304176 895623705 390734308 794541703 186371955 565373659 996516936 997938954 229544610 466485443 500013653 797021891 934606628 974240133 995084250 997229753 877434263 925716169 763580071 847021565 525288012 679159377 601714260 627232270 466837620 964478704 326971091 496076813 662475032 719509997 156694723 400920911 529513905 820234902 3495593 134727865 675535914 759178635 610247349 764092550 643194544 831637128 246320732 435683382 422837110 464278427 449673602 669449473 114611727 549430846 726358175 822883538 673821269 977485460 398944230 858124988 251018371 495678441 329810834 630808893 687467476 733064872 528728198 572010474 180586652 510169204 578616997 972668022 491678105 608720286 811811757 863743635 866002389 954522750 10679328 463341013 624340387 648158132 468996214 781508315 771374800 988643345 257807834 944084947 286235235 873565591 660149407 928362497 479403293 493742780 52472644 241649647 848300886 891193733 907718306 982118098 507449178 543932452 360480848 854952669 346942416 618511881 569136100 672384393 473153632 996413858 194237034 574677838 70649872 544291451 486389794 650753580 447566287 860989147 206964457 827006292 559889493 661017383 616847790 831556811 298244133 921164256 469229391 746113835 449345016 899252899 763225849 860467831 68539206 703141912 415653546 551075038 37104595 596780900 234893487 270264877 42552821 955880300 401426483 753745641 438386537 811623906 898320527 947315521 3407554 819233308 41659024 496234709 833058342 884257121 803497074 924790429 746988917 837923412 119111561 881528581 854043484 994404630 121804778 215667402 520011492 779001163 118578126 824843198 132114202 325540163 812973330 897831403 309684053 641088598 344048810 934713747 621392695 980731531 449939010 500652960 19354282 504327899 295223896 782955591 183492201 547484406 325412832 555032840 297679844 393737136 633896749 639385076 205393390 841178377 943804566 950072542 664628280 783949810 757881464 810666645 802284848 897104951 370743927 573804745 243560465 293642688 390422933 931112691 94503622 294835338 94257120 501019303 381718500 457209094 803408979 871273565 261427243 520690023 385238681 444348186 231662847 829593874 540860893 961563725 211508624 724122440 734918074 954662028 797041231 911785288 350271614 565362241 832754649 971896977 736459161 864873287 820861798 968435779 304667973 441182882 557269484 927231260 880952681 944703305 767102202 848797900 313397659 377580417 836301087 895272046 618392931 752081830 255017374 872906031 441021263 541081879 792892837 937665524 152912711 935242876 202349669 250143507 340734738 877970412 427130559 652783585 275675551 534830637 334127890 347905543 393265787 889966784 988808390 991870552 932699667 934868463 548896693 811736315 217349212 485919273 685407665 826894525 588889957 697816662 653819434 971956843 18895921 281904020 174427263 329342480 863384619 892942745 563076991 604268911 577957117 773147527 653291496 891583285 355269199 450255411 32906736 453677295 476135659 713049355 794510147 828364152 895677841 951440582 4476723 92312410 422467911 824222770 954257671 978363352 906442101 976594069 624887879 882919815 24477994 567452858 153532591 267253184 573636751 766773043 880622392 939990242 579704529 623987938 590385783 991267855 919006380 960747380 68303479 906422100 134782193 544365113 887244260 917831241 829701249 843769630 63161275 991026143 612272088 858538187 998710072 999176900 41815159 517800729 289222000 548824317 276002940 393534686 366440358 607183953 974125746 975787556 177120424 187136022 247278419 502949489 867722359 968515292 555192446 924112489 27142070 220378646 941651536 950920021 104343515 721308516 331871828 371198933 661835418 818983427 903185042 991042667 223935291 860425166 732749903 817522013 746015618 809894770 376964706 633744079 142281033 343921174 183155676 735856011 416853088 652152817 90530140 110948989 11526066 367676626 104482046 720836746 261206186 739370207 182085191 382713375 449895086 697501161 561305960 891008039 367825828 593344269 110257665 304495383 39568653 741746105 668919871 910726027 111093143 272575772 166980539 746829096 908379239 985555732 54602224 111709526 980796228 994425350 949968673 995861021 49335892 276417354 939703234 950919648 762595266 942909238 422719258 653304171 500137177 801670350 632203657 927739334 982752120 991752344 828422443 873286133 509865118 680302659 180818599 216026154 666986660 714692583 620194086 946948205 90672281 414499460 619225632 992357708 369619757 551139497 592688986 789680836 172168622 521063900 304548407 892580344 630903125 978770710 229773834 370332745 137496317 753914973 139035205 490941569 719404787 902147748 659922972 960908239 209803631 303071437 514000985 999930827 768164216 921668507 541824054 904647839 264569102 961532076 529916008 709852021 96698463 352667327 976387297 993571975 610223991 780574342 439606189 884005688 6231028 421247169 834366958 908242035 141313757 478945555 906565185 941956515 731263050 756135045 360774034 460549739 104795076 483886469 832975157 965773320 104563467 779215667 391939327 402836875 728525252 912202917 595451171 731121351 289687935 719601421 791725737 921686898 798658071 847958316 933659231 972259290 348676547 387677594 323639293 410866544 988871896 990735756 539040283 777297742 996388514 999347357 77576974 601261392 14033295 837490090 552384018 752608733 462897402 585547056 523210809 896005221 672630873 680883118 807485328 859038514 313829216 543038534 427858557 920691731 505318531 918410474 482919002 953061074 475541807 732696017 604562701 753763187 854370976 875248013 680325322 812993050 478643488 777198180 696563329 778204142 6640712 894048676 85874878 967996831 218538211 743371549 418770355 729775109 760536243 911398021 401578883 569870368 16751583 616209685 613188456 808241800 672839732 692471888 44360396 886453921 754094110 779368065 314816003 716393861 195288151 584716612 612329587 900569435 351859017 956962056 142600201 991356093 843667085 939539847 930486736 954821645 152048056 757245654 970159268 981973735 592584289 869840831 764883123 984300827 211120715 579802079 41937236 696101419 676877964 968290809 807407232 864896835 225663548 561240154 197660652 833374757 198115297 802374838 649521189 938640107 873652128 946133436 195399829 467871063 390849957 990648253 129946339 539140298 686198729 999634237 725842108 936750230 350977646 969094776 574382785 696833744 429899695 891655764 605910357 719705107 925015640 953864350 253659245 553329520 627868081 731254561 324382657 887496284 767654787 869823160 399813484 545923650 436037754 632310872 996917007 999467587 747823360 909293972 876198963 996777851 642233341 701241891 83149996 155552754 484015287 910943969 940455659 951241256 662612524 721094827 536044364 619664834 464796642 747536082 727104029 735013845 131744345 920785823 454562029 759232816 746690218 889687552 966385489 984263681 105126351 500612129 841230215 858278573 37020882 987847281 120447856 823657363 665713649 768960040 380889579 598520717 358592662 430472741 159336289 442130113 787013193 858970757 492761494 621620508 985479521 992691423 889300619 912237179 345204823 583405120 412583766 619998337 680037825 750973099 145950468 335876218 735067400 960018601 641810730 906273303 369063275 802851589 248970640 818815355 135543023 596161817 702689177 915115300 562690866 656062476 292055894 875160378 741120706 767315044 215696388 711651059 34595895 750790778 880270746 890228144 659351583 816003776 371606955 465089057 516514652 810790616 515173858 741258587 550482678 660306353 70045134 702119665 889508396 926716939 610927868 854755996 126204904 507820358 952427734 964883021 915283712 976179038 146243675 788531095 121757154 961286436 390426028 630169576 493715930 989424438 336942708 524847506 321048787 972112981 722943198 957382652 729211917 816875638 524387909 973752297 790302491 920854248 693819386 799768983 177796755 620833620 431801753 993068874 737149248 936128887 646694672 720089587 990820249 997606558 898951577 957905147 649100258 731226341 159327736 178631484 805868051 972567899 510929134 771537931 869314092 951176991 428365311 531894914 536851206 555381101 572542091 846891949 466890568 481181467 204686148 303518689 645952158 703185128 854115012 878858008 250287176 267097080 727645261 982817277 301658310 340790222 588316118 861113850 407598193 560658180 511087527 531781736 203048799 729960353 511517915 996948172 908856493 969409132 746115698 866871542 743322967 831705333 906054266 933695723 325256865 419066073 536340850 642860862 661134932 911644642 189476850 332837009 842775920 884077719 727394261 736369554 93889536 97027108 613971360 649899697 821773069 844750094 712326079 751964890 216447266 228788854 30585770 276710434 4921229 799162410 354044786 576254540 981083654 982449801 888603837 994822331 54525030 306465861 219298297 670712773 350103934 897194624 366289954 708059000 546294648 838343005 227978956 414398438 722422338 983394328 565898034 805191758 406630010 551653163 181875470 804577166 984876172 995720829 605564035 809143156 460671709 921708842 720576824 916022772 710095835 939445807 216559413 882124615 701307767 703138441 958547566 981355282 82483087 762885829 894553487 917299031 459934080 811541868 99726125 226329066 627287281 844387371 855705628 954489859 708250433 933288709 825085818 827080999 630444472 958441584 207252686 207314723 293083117 674376572 182133405 815112197 781307821 903895273 323176418 551505721 267769386 678915415 639917098 668164621 918966256 988139130 657289993 878310939 76018671 481876729 271904087 449565449 245603961 769138308 531900417 860941284 265463580 366583588 516918688 840570313 482249547 976294638 353327104 688274425 97610846 282421333 467086423 622291998 483746429 925572526 881041679 906399461 429831119 959391401 648083212 678359636 671381569 932231250 290059021 337113847 643237723 888930228 729219410 761536165 554572513 694933177 141609548 565001728 936077123 948005681 497817354 680019123 521684160 686010718 796822312 985138843 603466419 643998972 380956327 698543406 286239033 435313637 308692582 861601592 63165623 687576954 123845672 458321131 915306853 919048809 957096252 959241112 56623838 186673656 201530294 442814782 194303375 917991647 101139337 788727820 843865507 887287393 808692530 952777166 371351095 756900374 151567198 835787682 301177373 879443710 679907348 951242861 700836964 708789229 958721926 987444905 538396197 749585265 956602776 965364640 285878526 736830702 168137796 245598036 777049049 814718181 538567767 712054447 355126251 579535064 925115745 942160652 553472123 983864463 444853839 600406532 41491448 653249907 371329372 859590282 862381568 903825885 283752934 290561056 880450588 987805784 366045193 588717751 428119707 897109909 827593661 920957787 765714823 914284480 488372303 967647988 674373114 940095406 358355107 909868659 490971470 640559065 658686549 931235738 777011155 974074308 122959403 559875924 407301824 759876708 908354823 931663557 131219301 927413611 219810978 273019615 791959414 945322003 924791796 942431874 912430690 941231810 546090973 775250406 3370975 352239627 991773137 997460828 930801 65660909 531797957 928215973 281759412 813568892 500364048 827907686 359101190 773710044 954471424 965187074 432437269 729846566 263131025 479662858 967917888 999539950 815036005 986054354 491863175 687671059 996851268 999494870 118800815 540101495 154496321 491549332 633229097 796157218 250181141 931526186 950720162 963766070 187695976 533415522 67717994 704484633 533650658 980528809 497956948 819360886 961367712 967758876 958585516 960425599 115977912 249835556 29428998 918269724 429974852 497803413 19260271 427849621 902535041 977215919 470209505 780050347 653495371 976685560 57774502 673529062 759976045 844841789 113017248 466574997 282164321 747851804 928129972 968888080 324039019 693495805 166677660 896318785 671281792 717089130 582314023 926305914 606633482 747554901 447942803 991269402 895734345 976163167 689569681 853443889 95311724 666897058 726760876 901894959 269037943 361859317 371048041 743168034 502829775 668048036 402654709 714796653 958795461 987565372 28913142 662929059 588818605 990738463 818705556 910317238 124745388 395178157 568851032 752342999 937393774 972326492 490245845 784647050 23682696 844856966 637016243 817688539 264778478 933311664 129473991 171921857 31288644 728189819 940537187 955495631 385799603 980430500 327157490 804123863 721984498 942308067 984929312 995312260 813320538 969837339 83298586 971997139 306017356 725933580 953453925 980208069 725664762 922028641 611028623 950981626 302536435 560216437 221811573 355844897 417430423 436351565 445736872 834651623 595345105 845063610 19039949 571514460 190311555 695808099 465953313 495316816 372038331 619628900 704300022 999024363 877363606 971888536 431188520 531290291 789707012 992540443 351690122 835314669 202510378 242470461 735735065 742080888 921314461 955253372 125548852 587190534 170462037 489964468 836089267 867612128 554188562 567506505 756498516 967042964 30431751 323658214 957384863 979537097 320550373 516146567 148180882 641324603 225193400 725596080 96440215 863599856 37048676 513968129 357442801 874018683 958856675 989825825 901632191 959213623 180950513 597869717 953749019 958831676 785009663 978535836 869345206 949737661 568730605 750986840 133382835 800227355 780754654 888395076 40250311 553609450 278723126 534260849 226010209 448196258 269243021 672303893 579277959 627502460 732687759 983865205 589755479 758079380 911849024 974242119 221969977 566619222 450590499 471612494 136909963 269686439 662624133 918768589 267506749 736316777 765693540 890818665 648796533 911497518 110797976 707793041 202130079 380469193 529441543 701432794 529884240 899159369 514452931 928202372 210126394 566331391 243694356 306734385 859691961 999591242 176830899 448170354 959528991 978824339 381695232 572440570 815408672 921456240 22453824 677623766 990813766 997059935 771252772 776475625 166596350 685581173 626459638 724588975 26806830 205544050 52315525 182961572 746261965 936804151 542534394 586196932 498157463 849065597 295137232 784168128 538250750 979802331 300045786 586992020 120332369 985336509 574347034 976636315 369821125 730110694 948444103 983109457 323239903 524396587 146772503 765053022 966395245 983136354 737433193 886043230 87646771 158656524 468902257 825893043 615110233 946283658 86275763 956362498 348662234 650240816 94995014 547131989 955635366 990713371 967971459 994069522 263142744 775964763 711666893 930232950 134296226 768695285 357421175 418977426 629001231 735340783 244691785 938887297 591061262 898488311 961865692 985162781 40840500 241372568 527197281 802408605 249220158 900720608 44226740 50785795 64449191 414280236 289207189 691392768 227014249 613034194 113024719 830783342 300313282 925792721 698828818 946115886 635619457 782979801 930562304 950132520 544045778 597506589 544243005 715872656 359822331 955174360 221029922 601815776 10612050 908530097 248559843 478293742 381519373 802684813 164091373 828243943 948337645 973701649 176742832 955222487 102405421 591544903 832622565 975805506 650670628 796356734 630631980 878952332 956114391 957159819 378355017 994166562 247554224 760705586 955950953 959710172 883885008 954990199 326109620 418940557 865285703 972913283 342199702 585523686 861386657 864271647 397305092 965907766 81209093 417463323 142500515 213936147 53050610 705966740 451277261 999095014 673939520 899393596 324634529 938259876 507402375 826028254 828602607 932788057 838041725 972334427 218882672 373806468 5203913 806984556 2130076 989169684 225231550 798116463 410896281 571623287 990249023 990256233 407155804 986384677 38647041 536606874 802399032 854354421 132007778 799937256 429868588 734872782 639839753 825024954 941815298 990486367 947651320 989079577 435947682 712289864 305048866 550527071 36574566 162390407 888905504 917250727 693682509 933338505 627086815 766273672 629269557 641025633 955897130 965712254 315311275 336985964 171089720 343197932 979500581 996448047 647984300 760731711 956589252 968648405 563558193 586014367 309546058 329830141 206709914 207548876 340325985 569160737 846898128 931779721 502324479 776215119 476121287 881684644 984592154 999985231 310775992 840168106 411482361 691115287 102734856 997215145 918453229 951127182 403981070 871211212 474413696 965507383 910281306 936681925 764062317 819835574 653777086 687424306 879981488 970016627 318628476 876624163 681983918 699797609 35469273 540891366 123503286 496338630 193593040 886190587 681745685 868853862 663488598 999505707 972754023 994826415 700003046 967601299 201718590 201942656 792309986 994117272 117138272 264286818 746874943 782552380 18349878 241744049 816639064 832213506 750668975 919030908 164741240 434082738 432984392 485510505 401192503 684290368 553752803 964122699 916712795 971373218 945797541 975313786 240356127 485116119 408087115 956271306 80130987 278729594 730714810 750663145 221049190 583523256 509768760 556206887 926884690 963362688 138848338 381712589 898860418 976008763 821453204 907957875 681545072 949004626 680991510 747804380 241701828 580751547 292830669 840291299 16154119 239626427 822235362 825425308 112312242 418149105 134188509 936270047 636712971 812334481 909602238 956747417 858512208 925674460 803579443 897332975 228293323 861196940 753885332 835728734 697620267 929541951 571001545 609255735 428688624 604744344 948682660 952443421 202657886 663757147 402046124 642254038 374692769 541247329 282540951 645687262 513174089 774406298 134197652 802392772 721564866 886318435 492874272 652479022 549233010 969992873 171858681 277085147 174107193 810847732 401978822 504332117 191533402 606540804 196922177 996273952 288574902 845119723 775490064 778319352 994383874 999938633 644177596 870142912 229937094 279729295 276431134 830476715 732556618 802407974 983562906 985743354 131815263 458458417 665085564 875663216 702223228 945219469 847528461 936572897 156018505 337573111 987396694 996323572 683377755 805324509 370335842 907939225 258805801 747947222 894294164 930922961 486233366 888219092 270085111 851146476 717527304 780925362 629436173 682170660 143813502 218338322 551016211 719809723 943842521 999475487 722674313 895448942 551714464 857439512 919161185 990880074 616922877 693288822 731862959 860306984 544157530 933024689 184235236 515037760 909196744 968650921 259920770 474210943 592938095 608840232 658443215 856183034 101949838 245274474 844148854 998773227 473089146 651967606 284734040 549344477 684177588 973189991 306450333 459028280 793056800 830167531 333556326 454245283 983138390 995961061 254071279 794357153 897579994 951077466 439584209 616413566 425777379 798236708 395792898 402100096 887047579 923482772 885803357 889650224 990352346 994200305 90508378 248772270 802224330 842943002 505937875 907100762 622266300 954328250 314105180 582708182 650369105 754668432 141415326 481064331 694782010 701734894 647069609 670183570 943567244 971756048 318054213 902067234 375315547 837392856 932889309 966622789 941890270 979201797 922597799 988788454 604461368 797372554 313327232 460281112 360437046 702232774 949208012 955235499 23545819 243617061 387572494 945369362 273737044 906751061 9005443 692623999 96214976 721753194 490554012 545329928 477993262 840380447 881146996 899038918 671633485 822588675 353165233 658531923 421368961 863418271 520930209 972086432 19143078 40052650 283000132 505454890 8648042 561418295 530811908 693878892 440904635 972658877 664181005 944466998 789493588 838839532 795061237 842417095 437295438 520342944 129593632 462802914 250958247 554842614 32308250 270324853 185611809 714059801 55460435 832403137 932084239 949043064 774142151 836915957 439086354 823868856 404085438 711727650 281720701 325792649 812258039 951587927 853754768 928548055 299123969 648704571 471568604 808964725 89316195 473491428 980306401 999839628 555896099 747247185 303874805 519708854 966493467 992439460 458082478 499873119 65213962 560252395 308742535 311067605 526338151 940401581 205930264 713747444 524204846 814666089 423766174 719310686 256436159 691277411 793532628 913905775 127801481 591847667 994201541 996185609 467871247 723988854 451225246 719417757 145844022 776014053 778516788 993465706 835805183 909546205 114278645 325961840 180499573 367612073 488649041 556421657 555454345 725503489 968919367 975792329 738923169 882982195 316379643 446451369 730613702 929980632 816063768 993696526 636543019 665850574 956247774 982302101 374636246 556534087 63327600 886630545 44482755 65447150 296808733 766938747 780479472 856286103 43740877 619701966 373607323 697074739 584330984 689961677 212698972 615453492 983032912 986479192 108925890 800228348 79762147 336875130 165059003 421393284 917075288 983023679 278408401 499881699 85541644 304790236 947326654 971365435 112298673 639639638 106080696 549045809 855501696 988094559 395662792 694805931 542326453 703298564 620154928 654283016 747819786 842323080 855894073 944911548 62170961 169952975 935332630 999014499 892867036 956897776 788910763 912605885 184583232 331788663 168809133 512025296 365635651 985123462 508967774 842526558 157155377 796516870 995998260 999682959 875711397 899493041 326075709 883079972 334009413 998223962 338379047 585616708 914127134 958615569 141559394 194585694 960562080 992771049 304873270 352493605 889666938 992286647 705172969 850855490 675818457 894160781 164851253 196102264 686212988 703649497 811758692 909444426 739565772 996731466 289561540 543460520 651341304 903452348 690566981 782246670 523769585 572294773 599003710 800378600 823007153 887680835 860811488 946321863 736957926 922572744 588907252 672901064 178640882 321926922 429833228 961395887 987015300 996010298 555508325 829825240 576543925 676427848 587127743 686650826 35211699 926879734 604650664 824946827 342766872 477235570 356398643 808805515 801971748 885118966 568792361 843325871 178311323 748750092 706944218 928143195 256387105 906010302 719165788 898498665 426724874 682305649 360676094 487503810 763328705 808801633 425379759 429281339 900345729 961696458 77010024 263160355 177477033 906346378 784973740 790935541 750361276 891815585 855082475 967134439 718179533 950170034 869215655 939719698 637534743 641272714 208068032 529930896 895042273 969184484 947631405 954079584 218574827 832293794 246398176 304262512 879712272 890105869 416394712 736626284 610771619 900639811 437870781 523922385 212232610 360080205 486667503 620773377 553745135 820441964 134106185 832111742 535224199 715171578 591010654 618591791 369725552 898943923 434588431 605460085 467856373 475935314 379980754 815379614 939366087 981196376 814059709 830562023 226869436 939570965 195682302 665834437 618310629 832113462 589299298 657186367 542829874 920752466 369940153 847511394 606880245 637086272 830786653 991267356 302826993 751281584 386697561 469172945 341968769 776508140 888540456 908884213 149851408 822788076 487564806 616292710 264443978 983015561 296341752 837848744 309124032 354230164 614668980 748147978 583182098 604874671 616748919 945861051 947878334 967113322 62142439 379894437 412525583 591447555 749470307 881345860 72426991 668315282 668003850 856681346 585188089 919314882 41317787 108982236 362605114 615496633 413824335 908016629 246917638 306980026 971454147 996370592 691729149 939363986 126998890 203396453 228959858 571100307 990675751 998239107 510155769 582483706 437267916 880480283 998937713 999437010 69332299 554400502 105571868 661720141 744253950 890191418 357824515 488650630 449112683 470812454 645941866 956757252 590768082 877520958 779268734 834857310 337056149 832439761 242875622 313963825 480011939 960603381 488167714 809124276 560670216 604354857 531947499 871127238 841964803 874999168 444439938 525671361 604353033 803864465 368253099 659731095 645110451 966846856 952290456 983286302 621626157 903649636 454445533 461030840 78400212 97527224 153885650 424118819 835184452 899034074 775977453 887546570 506851767 714748399 651154041 874795418 200354362 305976867 533361995 898015776 73782413 933849589 334576093 698855602 955301196 974188524 590285242 735050430 214385055 677360156 133791801 145542960 979086854 996928889 609269767 747992740 131520463 282832521 254539868 850069383 888988877 979566981 177293575 314220836 17577044 996747928 514930663 833151990 307708785 765243004 98574963 381935527 406016067 786299117 747823859 945300748 679290956 682476490 298082465 737507687 237767205 574829136 805577138 829723499 236124466 874961931 709751462 763935838 953613686 966220309 210074262 650816976 216084710 678490551 251845057 673145513 900617003 963268197 213608258 365138003 660187616 707615102 844621025 944420627 323433759 969714500 905902532 942720696 537703006 877704866 860372852 903054340 831312059 902601726 611980590 861540066 485136287 491382563 645391681 922790273 838986400 855138172 143849625 433976125 295212159 835133227 241793757 869679270 378356426 682423952 875858737 998640697 77135630 114269840 120406434 496414878 312568265 438392080 784776772 816837088 611190242 916501957 954676702 955272684 367915784 581232661 832685731 987102336 933895810 941217311 783581531 802238516 970978275 992088394 690872285 707107976 856698546 964652115 697838920 883017054 795451595 798112095 7786356 961985922 12204143 358564911 169656719 458147579 555841132 858899160 420932982 925503675 792721808 887883908 421670000 599925507 848676378 861770684 177684044 593314242 242589453 640834026 530689210 937811324 568666548 823635800 104957898 127969690 100565990 498012825 389461253 883437792 213859643 905895669 637757369 738504736 542517126 822090721 698984480 965620148 396438404 952181925 341133391 939568335 548486568 760188963 330667970 554648406 983318688 998583750 479716478 847189203 209253449 709678319 358155151 910530642 781095084 881190094 20477244 406192600 883732512 997810182 611353782 788420098 820456510 825988022 907395112 920628808 916101776 920477451 553317541 907628346 201795737 737765173 292457947 489675732 80857097 625272978 68544380 775020051 320170885 715409306 92425869 150504783 523665519 584981377 600414371 749343741 244468321 962513649 843490424 982694929 754664733 863581196 873902670 961657925 483588210 731852066 89878238 789209399 84808718 541529405 31877878 282130985 35501155 301728624 242399797 837495318 936043191 955267123 166625723 221736743 211946852 747577396 265286905 428956852 771190092 901143009 995497302 997952257 312836944 398390841 511604505 577996033 958468056 996131128 828649086 976991651 80035262 942763649 542259469 629416042 527498602 812012969 252710046 888548779 425480876 920347816 317349201 489666958 878781020 906730752 159902038 481600117 278656247 838711282 500699408 969279429 89038694 404632365 776038775 985051589 800447007 893335698 866777025 894100563 330083988 480971798 709766785 788754970 31110012 293711515 572787658 820151042 93342421 212704340 676275482 926885986 269668925 569487036 731255271 955076130 755003099 904441849 465048645 746196893 32020133 759578877 216972939 695022406 957354667 970740206 953401156 986693140 434233572 501532341 718897678 821837786 550292140 837096499 631543208 969201322 821247790 942230180 632879475 789221519 551809068 689560718 114951738 371121718 848250903 933940165 953812928 959395911 931668279 980198322 650650861 746392197 718469240 871976325 538872861 813897851 779684524 888339257 431947179 513079438 720058501 885888862 78687001 597877945 458157020 651975252 300795778 529218290 883974011 965431773 497279489 944422818 730180197 769925314 398493899 759786017 537806726 767842502 856265558 967562283 90151271 195849509 672212511 772699779 287638535 923772588 295059016 700907362 768527771 899247630 693236319 934349712 584545263 874086406 174209473 698242171 540978030 704452068 20424212 124988717 222430957 506741612 484921150 935565755 89275261 110221032 819797109 838318504 600264897 804485996 753517734 764243882 889484446 908822148 599856214 855317795 223055046 433732350 83724616 692366205 881180360 946348094 90663630 904117266 14981905 865931077 929050135 969420221 61789981 388942814 656632077 857978591 433802436 846852630 79187698 763953730 315564171 796728210 35034899 154119435 327525875 428089949 392783019 756862880 672609450 850576110 55351960 318554858 414313478 858851652 325912722 564753331 734177962 792905027 228758679 570832007 757176176 829317072 53959914 636794639 857307938 917146642 863917715 930521000 520296458 813552416 75528509 83240300 568299669 665813678 317687640 674068333 353049353 571819185 105390651 383681595 138854856 403865309 556473613 881702190 560367258 712356341 349543158 381369061 941053624 963735547 154658697 719264304 922333761 997949686 774923179 905551980 751540493 872370601 860364683 957624466 929236344 934103606 442114681 489419132 403852678 903954197 810599624 886256848 346186110 785822397 637419933 951299505 635971259 750238898 192445248 684012901 73873044 507661631 84292719 161906475 375185046 545253794 468082760 477685308 8249341 869079060 851799757 995470069 382531160 550259801 836382289 930949076 939503869 950378283 475617355 700793085 80759905 695368748 11756920 972054482 875092208 941943023 632118352 660877834 99273352 593159769 762514512 919394782 884271927 897118375 990356080 991610389 966471953 994336716 119022846 589961175 445479122 946180141 268892354 754296846 954999368 998462893 114407855 444911336 570845227 948024890 524956039 922647991 278015400 284182880 245020269 558329267 82732731 135026186 815421595 959365708 133164767 979267075 648299645 783237239 892304623 906640603 605879317 780013576 208566259 506688038 923537215 969932183 728420789 759054351 311540217 804677225 296526449 583297847 211744915 641923580 709802358 933652893 286598016 551252254 580075827 762626327 478176795 786209647 495077817 756304571 459765026 486672213 623806877 922983033 930003321 947902038 75418079 993555057 799627581 821261696 892119950 909304420 542095744 872024922 999447802 999583092 47561535 178984980 180080698 963622028 937738388 987851801 283456878 800048771 593675503 746894318 547715275 572760054 181628825 541837694 699180608 843480280 131039764 563010258 732985585 947135662 958894122 990752474 807007246 894753402 930642201 983039488 512057925 726572930 931502812 949289811 892813538 892834510 918323329 979719110 110088000 614962734 263673854 709979117 279891755 718918801 137980049 602779506 189679084 417459084 911683463 938473240 585650677 877600749 946241516 977010705 784235274 820570773 566735990 841034977 85745260 827393679 627316638 840271178 481045561 864255969 790949991 905741164 390868081 968260855 176525723 423222435 207350757 421074830 47970868 747352117 242664370 997596580 69429585 454479452 88502326 898942348 1494513 545120019 348487036 979520861 415359238 563231536 607244490 839973408 709495087 899493607 927382551 989206414 967405648 973696995 616826735 908068003 313979000 435454045 793204307 903902270 805556786 832823647 417560738 837230604 298412852 635203076 169952539 772336901 88145366 553175252 72744833 987783778 889613774 957683735 678751503 689582991 387515657 664103650 702724687 918022951 819508539 831199784 142294388 890286255 796847745 917688998 703162526 865708574 163148460 435661455 130549560 301128205 699936459 722515999 823805529 878968029 434194512 685484916 114109325 784663886 185193254 639491936 555611663 676529648 154934066 603091945 80325838 982019704 183421640 359251331 802135832 944586220 879336969 935214635 356999905 539725740 898367843 993254276 508493120 902182715 142603096 925074645 714872789 948189860 119089755 269253972 982041372 986915320 298633565 487862458 331325426 462295558 767000532 818934782 565989256 740548915 703186670 836480414 264091833 401571682 562679752 885065496 530343513 873717248 376452753 435578063 681389731 796923750 886196168 946115216 34338551 46706577 854976973 941205705 646692471 693926286 746169389 805326024 600265046 811727250 522319566 832353353 872977862 891684700 49685205 490772638 821858825 999082614 200478884 587286125 940370923 962613830 40535371 202475647 654701277 681250158 32353995 213479492 486945621 691948582 814313735 995260303 160315589 913382510 178098252 984118618 8150233 726314477 919653726 931085208 410724683 826274122 981895496 994822691 365453632 964098624 785572030 960235389 196348920 510631986 931999554 961417376 659748928 873980242 633946684 711378208 250704554 841272727 620267016 682500531 652534058 690393223 713344969 915672460 386211274 781233471 74728654 677443767 808798623 942858235 766457979 766771327 727225806 945909786 426702198 952213231 637464170 682172557 925899035 948430122 693659107 952547663 456701945 472393296 74404125 856083110 33180926 409994855 311371669 943546844 404498827 509491516 916693799 955924504 905275289 953247972 86505657 460071495 731659174 780005812 662080050 996251541 522280481 682382677 377746961 684940312 981282542 986704619 220854532 336220660 86430510 802254031 520329991 539042226 163145220 166005016 680414150 779223820 317864454 718340863 517837416 880139957 48040570 995525500 433990165 713173579 585416225 682391493 742699204 924821776 259293260 300575544 209554915 587913887 8284215 204606356 617600832 623617220 159535811 171817880 4892860 430463012 946138881 951216459 278633575 982814540 58243598 747527904 277896995 539454055 889032369 921892955 604997344 639352392 340823922 890521111 94950718 305613344 528927215 685736793 525572588 961671586 735367980 912930560 630466051 828809641 413438319 956042003 77761531 538809762 207534002 401515961 487009736 948512001 399428837 479114720 303174452 507393467 395488001 986338115 544857341 764625266 644635723 977657751 418244397 445228906 339958804 938176962 167824244 324406243 153024095 794150515 697978887 817480690 205980769 927521784 438000036 864338349 71557197 314353197 55834799 954656096 725183739 761016706 565510524 949573436 300007685 762321465 410926957 568957403 710473062 921006271 627706285 733778350 47081540 800196255 776451585 814067955 389168445 719908258 485470465 818393333 614292430 898744097 585979395 945801874 875027497 991613180 749587317 916182473 698509421 836977535 178683640 778314412 176554288 891157291 129780861 999450991 277273895 784260297 497557070 570624231 853710384 857835312 553482013 749445002 142536267 211725245 289129962 658449696 762384718 984988207 339082027 640892643 716697356 969584639 102022747 304645270 18818273 476169006 757229135 985804430 518789116 704292474 876241525 999541441 856003229 920143480 195800819 460845644 642145922 859230300 762117771 927690221 348550494 976568840 606955458 901712481 580194552 895630000 483071072 688150168 883632454 902576034 945111701 959784462 405993682 576332651 558002855 780040526 418010234 953839510 20993731 71642910 241651523 277409277 958365572 999128106 480487377 593683756 22665363 31354088 409152547 660132828 837722284 888777081 458327098 752109949 269319481 927840306 176968973 811832346 235549539 759935953 883536909 986490813 304376049 925005599 225996062 358609490 876699995 913796659 546709042 938462785 636893596 835899386 786845280 870821723 294676117 843913656 575783241 991650283 675165224 778000541 992867246 994335483 109486746 413122898 814537705 824455538 451182526 629805969 82239121 180791921 870896841 962885859 637537320 715057775 402832231 936129376 654545653 935289003 264985711 580427692 92395636 720419077 628989990 718923046 758216624 783992282 198853139 642414669 743189104 769287151 695001528 714382427 391021033 605306416 102981304 680640732 454351454 927835724 596507036 768019291 810952969 857482095 255273778 656530324 920354163 939072528 465753979 597014800 777060760 782234419 791428906 966023730 796079044 941743248 247615302 503495883 721335089 839351765 525046845 887450671 960809295 964870524 23381734 339492405 386136763 717925446 257304682 616994454 850301189 857968403 320523759 507187090 999753218 999987628 978872530 982737964 703772124 971858512 92309152 727533893 632187395 732521913 884817768 912504594 30537124 147550253 647298461 704866928 796849031 826830794 925299184 949660568 793207472 846131466 658805952 869152937 758183821 769439703 384400473 769772588 516046612 759636389 570553557 912474379 348131123 864421706 596926612 823890605 274441332 488827593 536307216 690703973 160023613 474567239 782552125 836752753 104573217 212082032 692623468 896230645 322024903 415944614 625220707 669926420 270148316 993127905 100947292 445719897 423189200 708299752 788765624 879501357 211013660 271638982 326813458 776287908 232909619 793455077 699614739 722081944 910923366 918970345 673314434 744374193 166460872 525702636 45979105 935768981 843415014 938256616 113332087 144404354 608812155 620958874 321279327 810006631 128780597 804697058 568659375 621611855 242420988 658659413 92450489 994699641 174748142 518957343 257586258 419327937 980096559 994369301 676231245 844154330 845656518 925455849 148660065 896248613 268993813 638686780 624355716 932309127 668525143 895468864 474597110 601663667 148117999 623772039 923285824 945829105 20163652 831111312 237101336 791655187 855815493 979735420 708596815 833507472 452963097 825657901 478965077 628411740 122221606 205038950 501116396 940820570 641627082 840768022 448936873 475436842 902818408 930869844 315706430 448886753 391388680 846660160 393862226 843706544 218372305 783885595 772191118 856231429 636109959 808028754 109233384 332642084 56187654 61183667 503125984 757885495 954501606 990136363 215973487 704995028 46040811 760827155 805004394 821760937 148395539 393411032 395925942 690593300 853910265 901967722 529171340 764999776 165234580 554941296 367095316 470027282 338231799 707384597 927301741 953042647 422197987 634968092 483090225 750622754 998837179 999759828 370786520 528996609 754619527 958006843 325864780 968964219 603254486 868579442 283192654 915393999 514688323 592316198 752636844 925689115 106694699 764855947 105362437 794494273 977708876 991067901 534621175 898183486 805004091 859165152 874425703 881304840 902813235 993147240 576129602 925088682 119091501 193999384 211330041 442343488 212925039 862727262 588420650 931949179 402931773 926376952 733014688 833709185 418130659 624152637 975823684 997417294 332496760 620013556 983234667 985563266 432867748 787086729 182983358 466350054 201603840 483614610 42110495 961352346 152376970 291546274 337020416 740314621 569458906 732084363 463840983 590199123 87848340 711137159 544566721 924833247 463615461 896692605 651031979 850879004 978024492 992084136 510083404 731910550 199818673 706037056 573784811 755601247 181458710 811294343 162815400 253434760 425152070 449597777 419741914 503799927 446902189 951999644 586697106 933526735 844684388 956175924 552162208 653253706 650847174 754928197 681915447 740192886 797285250 847482642 738762020 968463979 833260953 985985383 277692007 349349697 790665129 809699038 185228702 805565719 300187862 552209294 703093578 945132922 48872867 410877316 478223806 685777254 693798639 944034745 821980719 932745937 607501639 862903858 612478810 627607610 141590654 351328292 496424903 703461818 671269049 991071500 198977472 259860151 249612868 834507508 857852520 972699824 255262463 548011011 323179888 769256048 143392644 949069795 247436490 339190118 658679802 986835009 244896997 635487500 525645739 655689053 746045856 794085201 375404127 681171672 842874069 874748607 281557441 352502801 680407459 976711447 184204795 704856173 236715205 636314164 516875978 782815478 386236913 999797001 545778177 960713305 892440528 899680749 528811224 780874541 19939946 193466387 523970592 972599730 974153681 988924325 522056390 605513664 906513880 942869099 651350535 706528016 166010536 195130125 358781040 912252069 105952786 160661152 794211826 853925106 375427775 892407266 696257729 801918285 309016293 838453826 503488125 634354865 472916324 652714448 724287223 822990128 718114557 891395503 21999763 505551795 898651432 930825146 366290121 593641176 91902299 898631302 941314954 959680656 262858929 922832788 818451363 875128245 363487026 756945551 372020381 497897827 950872561 966158482 554459162 774417627 914479749 984906025 154214566 639374051 425965201 702649372 932298859 947302859 702490870 885895753 101460668 897097437 748638047 985006172 114162553 806304143 240013832 724546918 499438428 631629686 681799939 776030812 401649040 405978747 397315083 843620219 55642665 78486543 247244041 414859940 710387088 908378677 373474748 525554048 239495959 330314708 997996991 998323421 716474324 910221060 383930541 792578508 423741736 720180326 759491937 860847785 150011560 660750281 897188524 950540261 659859386 723232756 217218950 914898148 926488573 997821767 302684294 324593868 387139333 637197673 883753587 959512190 443154253 638301748 698829140 805643565 312777412 817950955 697039447 951532029 568618246 889872392 22606822 884187558 195480273 702414552 999066595 999649191 820946207 864031448 354497355 478676577 539935101 959698475 10493431 948355070 81119555 368875954 939953454 967183882 7005595 182422073 588094296 729641103 773186135 887340550 370168749 526284330 631526495 961128159 441747860 563883800 744278250 859715479 714848897 812465880 761097297 829905974 347938123 549969453 572836284 814810072 798493753 950078973 567483184 979560440 305414084 389746051 299461238 660813340 640217569 672105629 491721850 552539694 465652769 565590267 329991899 733170810 875767750 918279894 214760620 387256228 521256260 992517450 572341359 847613849 957952101 981334497 391084707 658267205 666243237 966884819 598333504 682902291 381247590 964265834 833093422 993936060 452388844 906589279 874257971 943140612 367212799 412232745 624285661 785677344 724657905 782929775 610552930 834172238 685430670 875383098 559303646 888436093 738543712 975458207 779184634 814971876 969392902 994979163 591387796 997593140 461848266 514759766 291139108 969435071 303498371 333963023 462149362 745097280 188622805 529483779 225375799 534300496 381727311 428147179 256690245 784596566 194951138 568789463 883555706 997638961 512177187 596828967 762511135 950798161 218311599 711044340 376571440 739622410 640863599 850652887 324046612 820433400 298245634 659413874 467592279 780531957 202549390 465250205 631600369 801847695 737367421 864885691 936347219 958292586 195562830 760039212 356043979 797615622 262010279 853091845 23068141 709574200 579507430 597983782 484555671 861618311 734784924 949023787 876385458 955477428 731803394 780301550 699099475 788705184 801162890 918976996 31563002 596815116 723511137 925142128 188539323 779080953 353015354 639528998 591473770 711629494 559210183 973939599 533634736 644293175 909243733 940804831 667864511 797692602 758234458 805864347 249689377 588456076 348516504 591626295 176228225 580420277 748790675 948046005 155309872 830206335 618156868 669184817 549710418 938077879 378485034 395705703 130869125 547826188 374703258 808106648 48126912 122938800 906402196 957274350 391928707 683875870 386504790 733466808 265120528 334995596 629678703 654135944 394863950 880016628 68249487 600689321 462908504 952637568 379212606 930525564 404577490 423378800 504146429 814823568 258506902 387566444 393149543 487130668 269126798 900360100 820963262 828574623 693147872 749414055 462771703 993930732 985659759 991047769 752644686 855838966 14603593 592345923 623275551 891683095 59449195 210672085 78099679 373392780 828007350 947133962 49832268 880979923 369508674 517710410 915019590 999589209 899145655 983804012 357657757 825274237 259568513 756935584 595624871 886749273 907306388 996191661 544256311 704220703 896694943 969625640 56874881 126382853 698689853 770836208 265713201 948509883 549138067 631124518 961439373 982577015 742700411 927195660 227311418 277185301 11022687 285350844 163893962 935175781 373492267 469904682 355588403 386389557 967908015 986742079 127621913 479680295 346677367 433667745 329335864 825783906 896667192 899794732 307259589 946081825 670485922 672449711 681573973 937997076 203643867 569220606 188966074 336497289 526269305 642202319 644045572 757834511 684945432 786926955 470192972 941119005 737544126 897236055 498392254 813003823 407352816 676828320 116841887 408171389 523035694 550566682 902679729 969043697 693940569 715103818 926321693 961350171 486505821 635756805 568651679 869829385 809219973 913917466 425369008 529314370 581420531 594494196 20776059 191466120 283029573 861512881 999121626 999723322 554361255 620214998 253085959 363205985 718378787 740321236 940442882 983120961 960862581 970025258 453969328 693453108 397813810 717014744 737118076 933957086 152480025 847973567 314150786 972347677 156065177 331366779 528654701 603125374 199361255 536168503 626146024 727182306 180002070 948759992 378519882 921812147 56167135 89398943 187638608 893518707 337453582 464717282 776620823 837053775 17384400 132780826 65823143 73341726 87363106 146092514 436120294 952002315 916002883 968492437 194334978 449291516 24944372 739963758 165576286 517038941 214075930 699842694 829869009 887444288 154089553 701202559 553709514 828137811 285159021 594839464 438891558 475237897 814897122 934528287 943710033 990681497 77818883 989715181 22432440 361012656 21410672 355310395 306414080 859441394 557163155 877822450 367009255 507885119 961690137 975659275 173262858 669485199 135249549 309254057 64374939 472966480 879034667 950555791 570024167 789175600 865747829 929939356 811821807 880063548 61526288 180963896 592077877 596355466 571511063 661007184 272537469 679470947 331700771 382681432 696812097 806526717 245701455 412885083 414876051 812118888 723238240 989761181 575260654 843757386 562448577 794975349 451732374 716674772 261521605 632441652 90046309 323094842 405399956 618921123 127651838 461244484 891179859 963017783 600042306 776700106 691832464 731192748 499608400 595194195 174482271 703115344 441402161 581873017 613668958 680802205 230652997 417527253 767429430 966679804 186876216 409222970 518217549 521210975 898937613 931492565 182185683 835696929 742291565 981031694 427527481 950594132 552634415 623998648 556306714 723068950 879111599 937796561 324190290 808757234 41616122 896290579 762955622 970896070 339203144 666105361 724995361 973469064 928820703 956985744 108857354 400337995 97933335 958172512 505345049 947665677 559745147 618953701 93015454 714756041 876662417 991875263 765062760 972415444 271528594 283258827 44341393 208649634 220467590 413305789 261061193 851683743 463932935 807367124 746575139 980054832 266016332 269203086 678619860 725869522 955001149 975525688 234140995 924596631 456659632 873445202 172767143 866819992 982252792 998061374 132248075 154883792 8677544 951039552 112920957 779087779 609605234 913573413 11053705 363654194 115360458 241001597 538137327 746585729 313579119 933696979 845930267 929309090 148165222 372391844 467180048 995834956 848401508 986436040 5743370 431949268 500100386 835311009 520374231 675401881 693644064 972729355 233032036 668309657 164303170 733328279 484965123 540631420 231422319 323348765 484801888 996093927 412538125 850071555 720693824 894876868 720048324 861647146 379201613 975783765 453953406 501786375 50108943 473532327 918625589 990786047 556194530 799611910 863818379 890483421 190308440 907934456 128064305 810138896 783924961 887494195 709412462 930450069 244552835 698025254 218709423 387476910 308853415 895467316 818717916 924997844 22056072 716007494 208909024 875274386 993158662 994544742 904648990 911040286 501292299 944344735 668322952 706030190 139761158 659758034 202443709 886974881 896517999 992143573 873081051 879157049 113435741 528218422 400463910 625877649 98541780 936310309 695533607 933458671 750200283 985731326 625716938 638530627 797105928 914428821 376603774 918912446 947382600 975784672 696296762 813119779 440458788 805908761 118236416 406931733 713573839 745162047 402626274 817123207 153996100 897854649 174230350 819195915 477920634 798176237 4069703 193570299 329760224 980496545 168700578 967106300 145515921 714965462 739870739 770855421 592752856 880846213 654136718 842458098 78166801 869197082 365514739 634069960 320739498 384559445 986222481 999504922 386177398 532551067 343811018 920859469 125757418 937829623 926851466 995099507 692901774 998314317 168896288 849804658 51116453 657172497 749919350 946233008 772084443 898682378 34610544 253643413 538724300 572122342 198153161 264182991 898805398 999257081 555253607 926212418 690944929 945072432 669006435 670574029 877491311 924781249 193212464 458099825 398244965 500742434 719022025 779322263 282391995 855157298 167559407 424452536 276314077 361139432 397993469 976427426 42559261 660552061 380360270 458590250 385275988 401397153 441786811 859047588 482064107 722704706 390247266 930312468 97686126 733951901 97793362 215657808 511713184 934219025 233601709 982156800 125178956 723931307 196735226 281919178 911938746 943417283 589644299 997927513 410381987 804827225 826452082 836091409 816206480 926077531 128639690 957298518 465022153 971110521 243849596 869047193 398259996 494970409 861650713 960092718 65110999 136668523 376516669 684160104 286910933 736352501 595095916 910392467 823802846 904195966 259096639 388123747 959843630 989725085 624527550 785244487 32088828 87198779 687781325 931314814 297845099 303728499 175161915 458994717 286872187 837315707 501713091 996430297 162845510 933256317 659808879 920792372 316594061 808141863 351123129 954204792 861915021 890237081 759537028 970735665 177057170 342985458 750413003 792799823 84031401 517691200 967004355 979294828 203317769 300985827 131755956 505384993 956737884 985653713 946470086 956077701 165983390 184644371 265044703 337978823 598267308 734163771 822045185 933179376 725980001 993072328 511916009 939908922 538545877 869727557 733210257 977212792 672887827 689034361 653925494 988261878 222158367 744437122 494542931 807815574 704547780 892478425 442127963 447726992 19633300 941847288 689123523 795668850 46498533 473986955 839308737 844279743 552918189 766558003 292151687 756616679 285285459 669935333 437268042 528139208 803576206 883757073 849012828 974765418 813169555 900142669 420942643 458576649 529624807 997046571 110461750 942754505 496744290 784841879 152883767 177101770 542772455 652623429 286426542 483935224 977441578 977855436 666316065 776022024 609217127 633839741 207343968 462107341 748271930 968894987 34373127 767850250 744350402 827991111 607038855 700450470 333807639 843166708 183794610 796030909 304671721 911633860 735882152 754623784 194866541 238948332 654131326 788947259 745871903 947270280 261693000 808978661 233223012 237409045 115717855 743191051 749690600 885226027 696041371 943792935 588438626 824331318 403237249 595565029 25421713 215477459 716277489 888602838 636302950 696840228 34737186 229725156 569057959 627098188 343372291 587422764 756155300 967722151 885892149 984362283 162311239 405658248 162667987 215967940 407520286 468055946 93839212 571947922 192832748 271999491 564574093 854219798 861164535 963272464 767444655 912474338 889072365 956719338 683774480 758494127 792412358 930256587 887485159 917118678 589164642 931215865 453055769 477092272 365194751 369435880 784867472 827794245 197543943 584884469 746374903 967316081 707737139 805360653 4736979 881654648 254527010 390228569 417047578 435579014 168344947 788713929 88353862 955825655 396771085 587113456 756173625 872282036 486939546 820695019 384127424 980066465 888063497 890379388 277068226 725108380 186744639 742251521 976565472 992070555 338796696 806542766 210507080 259819808 921885253 974649604 812110527 913902405 723819090 856944553 801319646 817599188 996047821 996229518 281769011 916164161 975723169 989624450 303838624 661222551 137726746 318016444 213889732 342055185 567511464 978065935 572120068 776169051 534784134 541906662 843266780 985560837 428388859 583885801 426203425 656927321 78337653 213270217 750789602 962502393 445464169 566094466 461629443 895323056 794210572 818234885 183859085 996047831 14353485 76524980 163655981 594189316 561329783 761750941 955673916 962778849 817606860 843347192 192042577 428530814 622891695 987357499 61979679 543624909 469302014 789997606 577187804 774888524 597014195 888328737 476520608 526828410 990956334 992021027 23165124 158323993 264247430 264723299 63595980 585287911 156936941 668209500 791691926 896322842 40893257 271784540 990682786 997628899 643716425 930872107 321335077 461474844 550190819 904355867 577462189 961474489 613572731 876529221 869081121 878325707 945155509 985274485 838014587 990028749 340957559 801197438 880708973 900158407 874899314 965252439 722216078 895025396 836844074 907033686 866046684 877448833 325465975 657874777 814247599 943687394 191126578 924628088 19463691 79043221 260307172 668459047 157376399 398860612 412687276 560233215 412158167 925628968 855481699 927392663 924257179 958699784 606094030 721761479 980427278 993624682 127336351 322835118 407066835 891713777 874342853 917205275 998279937 999620724 485622011 939762424 147946475 766722063 802263830 962991216 459512211 581419714 8293523 884249527 69083994 973298618 88887537 890171054 57941088 623232301 421303277 432292925 42741063 595251034 775011150 983686151 828386068 996671374 690466399 706287476 555895455 734850971 47852564 508792913 480973479 910491824 839243637 969756687 625150215 801935366 494544182 947223775 936970712 957976574 509092055 616052973 104960444 279396226 188790640 683249119 836286243 937517457 883899437 928203594 617304564 926367020 670311981 766286887 982801147 999666548 668115912 729447806 818572506 870019299 25710674 680978177 103148698 338392448 581808576 966225081 60048364 795056176 580296640 772897517 627482057 629370805 254255617 384545641 562150229 765500386 709723241 901195908 845576799 949468988 198305694 398807717 855097834 959125408 876711236 990628173 879898868 884483225 914038206 986510686 23836636 542387807 428320811 721295279 233662946 823077241 316495911 398737932 108647756 902350408 306526574 431070108 11311131 650595506 576895845 585148295 131556111 324517719 763100197 929029915 332607544 698631095 206495740 805388448 63091313 649934906 499637952 539152875 13216834 518457448 725423666 740606362 109896822 423967409 985712780 999903551 474889904 785670286 30611398 902379929 267797771 648712030 301955188 886729472 762056288 925485238 228957248 632403232 364006026 840457646 290539633 645213122 904415211 993401031 101188799 455668132 548694789 624184966 144816853 595005217 909143921 987008445 994253275 999989407 128415453 181506537 801227215 977119047 534928391 955927312 790611934 977322416 879508521 972880096 3513587 95251450 814428487 928843431 83544751 605791505 594010835 747864635 719561744 778033200 618011529 886484329 285360361 874384014 553117329 580987076 81273721 945219202 719628758 873032774 762221896 972420255 521916454 928397695 493612954 716930316 71471761 967839434 613747599 947334840 623459726 715857095 347398749 452864305 444281860 720328037 215544129 435748809 920607742 965841681 231643768 979149236 209685537 406654815 388457252 805987652 125514351 383355485 942616135 967030445 582783453 990226317 563064683 639698858 949708674 979460303 508846859 778790007 259752075 679201145 373993156 987054859 676269954 706907109 725811552 995227425 637900106 703092045 827286046 939757399 796128618 874196991 959119300 992573332 111490055 905868088 888025608 943086858 422742979 567311600 888353028 890322735 455255783 598560479 794744442 956610958 964539719 983508229 832751830 969760912 43655310 166487366 69962984 855988228 761845330 872587388 134669364 721737418 558588409 963211451 598921169 902776577 149792607 207921940 133077193 493021654 358625851 921116466 694928303 722992419 669898864 734964944 962617309 976504486 915955007 972369072 501429993 506999319 967350771 984466010 749521893 778163346 19159855 616004865 690743998 787930943 373219759 380413792 674175833 862923813 513321954 891435739 426346634 461786139 821093494 967232576 578266674 752648449 385882069 784073206 313237465 468652782 320365297 800597256 555997309 720031821 816587225 981461230 159781606 848495643 813364008 982935188 309394913 741585447 192811626 486427529 220101365 718835286 487865468 945957102 831718481 964941968 542870630 600370255 288069495 577090283 71063212 459619928 399426065 701640434 454847391 733248943 331728273 387258631 252062083 304103014 250123708 818864874 792982162 991885762 421277356 944398990 902679605 928305850 530245949 663282992 608273500 731467927 924016263 992278896 34719345 323885167 140327378 834227027 722330012 779788619 432852318 456810921 212687176 289727604 395558238 894210762 364244328 964315454 226141953 981078653 850413865 856173135 362950906 733528633 643948962 850821458 53219286 679717594 807718156 866519045 816197806 820146512 577767024 870771791 349603691 929426544 522295938 547067722 456224126 910527757 589562562 931318906 426171393 878868289 475335770 854464666 947024775 990798869 326615165 976185349 831143295 842299387 740726387 960235478 488861325 913174172 94618914 854065763 254133372 663041062 916250157 919866745 435654602 683040523 230570337 540248136 237268780 452940002 544374323 904534476 722655500 932843542 370179254 783424918 375121082 672177965 220533139 855129486 564239410 629735187 686463023 944071882 191782828 560922001 281893234 506642332 736647867 911693473 357236150 715050311 329540399 832512665 324057880 652443962 57342546 988455236 134819026 966788545 611158139 954574617 980504076 997102844 996737034 997602717 669250666 958964251 648987844 701198848 612017092 862731962 845399917 949933051 442273141 571073412 530866173 736336276 477802429 947758812 916467328 920377370 401488857 505426151 570485532 951867083 881190702 937379061 932865319 944744860 827526714 840121535 553742143 716740572 263312302 300516316 569709740 959957735 599773822 870090122 933073550 966644959 825194739 891764577 413897903 729079873 266031402 551637399 948411473 980787798 552830656 967085849 507433335 546140451 532337387 875050541 811379845 839078753 406330482 434609356 603288693 849953194 675508087 736437316 337320736 603578472 693780554 797356602 672518001 894263693 386410718 800037926 392980552 721919202 122560627 300539234 171371461 916447473 624411568 983122941 812412366 994040450 264800942 575096432 789140488 916493585 610627672 775498698 140266085 268173730 565234384 984433455 100220579 374982891 18099340 325754674 995859982 996858291 450791331 808791442 765971972 820749665 927798092 993210301 942068630 962137835 951773983 957242456 44943541 433417663 26881216 832346695 186952316 992681276 40627584 521605914 824337441 856830074 327722637 818103167 493297115 645102413 626281462 662606123 238043764 408806300 361130473 568623209 90752705 961736074 168292129 496424260 183802655 591281673 768022635 788317040 794303295 969621062 248285767 490992527 104327904 540933354 607324098 886405249 421302519 744541951 188036399 648325610 685870331 720636303 715950804 878688001 814732567 888345362 721058615 993472708 370708181 739414114 12235403 63379843 529972538 931438627 725781352 742485001 194036058 957105967 97840470 304776557 727042708 923331701 359774584 456007867 941319497 945988380 584617090 989061973 329613789 415698178 751157251 937417856 478724680 845322731 554148029 658295150 545765853 763828433 146075953 192343746 967482186 989523836 189010448 677919464 122458121 510747982 335372757 813887008 320579451 886870289 255747703 577646995 881299130 974547106 754492537 821618033 525402969 855645048 149242219 871741611 485224641 637149604 337402749 366149802 991384856 998244705 291746339 592250095 634650775 951736557 102370215 876030819 686138596 927216654 938468765 939280743 563905022 960668928 497482373 675490507 455231318 951508719 432658406 772713822 448820555 874520096 156964024 311108135 872341783 962305418 373797861 519024794 120505831 766801804 188388464 653975559 806497486 936881747 964722170 993835425 569320259 610611396 716790714 879171025 144820662 621389025 211333210 740367477 964051950 971534820 226509887 670801552 842916209 845646581 431075521 574968358 882260745 901860705 952459093 972065804 38240670 286013593 336450527 619410910 937633926 965023620 45716185 997227337 491499605 808141899 984408802 991477351 251505108 837858688 739789111 823021009 191325019 735051924 366205115 966988198 109926740 807938570 280484872 751848773 773929065 780145144 182278843 746190043 651452584 878521447 796876862 930584188 525148308 957244278 667023103 853542961 2132965 239009767 448335505 799070088 553708072 697554029 177385782 511043078 119698311 209714893 494793630 922136085 938703563 951928178 963034542 964869676 220618136 869770195 784194556 942640316 467292120 736058199 441419100 740778921 423661623 495461218 446329661 833061998 478313508 598797387 238067004 826382593 685441632 696150573 467536452 676399138 400358479 719301964 269984411 414398243 986417063 993654748 822667943 930073040 714559385 904691735 597800331 992000145 854291784 918216265 635536647 881879028 23789267 149201652 886111754 982188423 999768679 999872084 585502666 812344660 571021875 916613243 352036741 707314999 79806734 768542374 635117936 831780905 524290284 852703304 610414139 744410180 154392632 411382596 204075992 266657724 39441750 254028251 18503217 749200821 506411462 543166053 891291436 928983264 97512535 678982641 838847873 987555586 309120117 488174143 146659300 928999990 884664364 903250768 53735496 65534390 348606304 383146220 881892783 973057319 634732679 670923438 35028040 728893773 119099621 957297036 945693549 946267049 683527787 875050103 311431873 612979087 693689791 700174346 722504835 920092435 957426621 957460089 763405991 933742001 171003712 906587702 468565987 490805804 210005448 222716830 390816384 954082941 529342128 868107597 594649199 717713127 717765892 899883497 839750510 871969553 655036174 997756063 952277469 990418719 651553787 895952475 931528619 991562565 434200617 857480172 163632392 679053091 38806648 755297865 451005968 955024726 699230813 919543198 133878655 519305466 588757889 663008407 553877921 965441832 79921140 298593407 210881922 865610135 419646564 857487001 118793088 164250814 662380663 762788726 481221676 492760420 853205666 871217078 932664382 953988078 78345369 101669751 958384540 959674696 537378025 623492684 990073944 998706312 816873282 953590367 121093802 404880918 484296475 820633197 164820437 544288535 673752472 925530096 491962492 894059752 91233581 597432550 161571210 808908225 464577300 888765010 401906439 868299244 642571903 678481058 660537418 678586734 774477185 900433359 833049326 997300525 127385440 650533835 104309979 757380677 465086318 970925130 300981163 760522485 143266741 519547535 581642717 835109897 383373089 737580191 500175182 858570011 543080951 874666935 619852264 703490468 992158461 999613689 836605178 886915560 998007947 999617554 183449093 548594319 149461875 435575706 493247863 885834151 698185866 961603877 590647775 998896407 110563548 603821863 268263871 594422619 633609716 771858038 715725990 993316281 145621569 649208555 896628578 962273905 487959866 518153563 457704393 513982522 674215524 901802241 178071285 711313879 964716251 971458725 441983442 931330756 379702484 847971359 723526310 824396542 176046529 882904322 544035670 828195134 643535013 834371275 839895947 878920718 356688478 698960672 421947449 583720669 965788751 996834000 616256172 728689190 729945684 767433023 20153820 246606650 360349633 848511716 356945889 869255456 667612397 759448065 600699600 692892063 946220273 999296016 760081078 999323876 751318064 905775263 70523629 732502898 887530453 932496695 279184771 792278490 84013578 807074470 670552277 995810514 223587675 558626770 11995044 509933147 594254087 978357260 578045656 703248779 510493700 561927136 540937696 864214015 424762660 838376138 642433978 675654862 2735943 455429730 603560374 796952995 682011379 786113460 26222364 855531216 691940786 715215758 677822640 690194980 347599102 609216809 514241974 804152400 825843791 984375003 26841906 809094189 398780597 478552179 318840511 865660990 546350190 706811217 458219017 689182528 727735462 836111319 629424211 845851881 262156653 712470803 451150418 696797151 343920268 706038093 77471832 994180346 894722853 970041303 483459391 644338802 525029 112809660 658643778 888296147 230555559 315268434 697556942 950362211 53803116 442739423 76313333 836844101 350894201 783467072 886928027 915918317 338961438 518803855 98696111 181958454 147681091 516461206 249226111 494851190 987224244 998180203 738640853 896034021 793425039 804512280 834887366 988174659 527896204 774831906 122767122 966457297 706659321 943090030 619073063 625146573 990711963 992247276 350947108 761122091 280332515 584800420 57349988 96053157 397254412 616849324 147126018 929458331 29455773 831194698 226024857 775007266 964089983 999443637 519792897 606613066 107189615 236361674 757549628 910797286 167113757 479980515 104040965 728151100 31179947 723374701 517350567 812264669 989710453 997019646 259988318 939976017 25327996 73247496 748373621 812222406 541240545 833265301 964692390 968030089 729652023 996393948 490942400 644509819 704130887 741867187 978987311 998854829 163016690 826156971 17454790 482774421 31245617 391957733 238251955 882051113 454497697 592811783 165325819 875170494 619843714 866514527 471433816 811984028 438669411 820174448 684752775 796524720 201329025 222390582 980845814 988454696 144160783 570297168 559913592 826682861 17750102 623952674 176151864 705144884 541091660 639536380 777790352 930244243 534417016 569643622 142075481 366040430 648083054 832348916 103475410 915292777 512755935 969962826 633209629 667298378 854072204 883827791 47095962 201073938 529450389 537151898 178042140 882542775 140341766 250273969 308290545 955896471 515629743 930872960 560005545 577379287 486792726 718620335 156749087 263366939 980124084 989629778 96454690 125799345 846569534 980792161 905852806 916060909 949770977 999774763 703906274 985960205 12315428 177257138 85386947 94750261 490128669 625142169 92954959 345902929 871700392 935115418 527362308 731328197 820631486 873013883 180687046 809560954 915447482 974234435 213385856 292382695 838938187 957372068 256498318 371948373 842652599 878074777 82990943 491904039 843840147 883968860 582417299 865039327 482758124 732770612 314192095 902682082 613070229 962330607 893550263 943637105 79216381 909079840 917953749 944911721 739161229 991526783 181796172 738375760 787954503 794400914 342101615 931093526 913714306 963954776 684579862 834000910 216502905 312595963 809043741 945830552 913656689 932526357 610318208 647973678 562118432 652634389 333536674 486586571 487554056 513811371 837939458 892939838 453347001 858296895 914095269 916402187 157773674 931202625 318648420 401648898 985463723 999558943 796374271 961614766 265439143 938104885 750252651 900098079 394352353 705098177 177444732 852879093 267344685 288397782 172972549 376313192 32317665 966463456 872231422 945648840 270656017 648747997 141190417 434169842 75032430 427034533 97839502 942682687 512299112 701889319 685037343 903470806 19234503 297503067 902385074 957011932 522011409 800470815 500185317 713574645 209943738 625712980 886338228 992247879 899889707 984875049 496417519 637783549 899500668 998200249 126039148 757555049 379836836 712108705 887215279 951632005 704314931 855454904 605301998 839434874 48376081 787239619 219909271 874236956 704254491 818418335 583207923 599691069 368088248 765330038 563590788 589665132 221683592 677587841 898982113 913784258 663205236 914338888 70059067 721903443 595380348 597887652 966146007 971008878 34578752 726761223 258482934 543459123 378336683 473851652 89848918 798121997 80387274 790389220 812980639 840719644 370097503 987893042 504813434 787728268 809638445 896734907 977416918 983894400 51010114 849732910 761548056 853300530 727297987 852893141 939381658 969871361 688089884 711073540 136417995 609799850 354941302 544180771 354967421 633425670 780668343 781829056 362135853 701899261 67235051 696831616 453548258 804929027 399989111 682761542 261907398 856866777 817014547 906802521 92036134 431667664 815987663 931658608 900213716 926479392 424128696 767756771 702261592 721775269 949426663 965946194 437546233 572979962 210816749 367399358 258777839 523080118 895066586 975574885 869181438 894860923 732129231 964938699 359237250 866800991 156862094 740026282 434417240 761666206 705688765 706455272 902942012 991644277 390607783 900492852 366070568 967910884 408648292 899052585 456888743 745705829 834818273 989084796 698542899 955649168 385981507 867288032 642367607 763814222 79381079 213872484 114419362 914925414 231227241 840563989 576060207 968787933 309141930 610634528 99529099 665282820 626191663 909021150 963503102 999705446 477274941 977044934 539012912 748740023 225054537 249360281 415966054 991053941 244903712 797350766 296612379 937353899 596479915 869135389 801951225 925451723 605466170 710150017 93225725 900846786 78813118 354148862 253354140 437127639 387737897 567705499 594422547 676458442 888335826 934452808 297514236 591281333 321728433 433786932 723959898 866302308 355438503 392961776 109246098 379824965 536570658 749391512 39498142 92274276 188060429 276562312 415298491 502750937 94779896 268818661 168307927 335986811 896669867 988602429 689324921 902627675 745328351 898610895 156805807 700086178 395826250 701857523 110812000 717297797 415237217 495092978 808518001 813961253 992298145 997408362 294121326 495696126 47671056 276219282 663659082 818322997 631332814 906225996 550690118 576924292 768254814 776221383 386772919 428652315 868826507 950193140 139884541 221142896 716471928 802513455 772035827 921034719 342261888 927908441 140992626 637842179 486039509 675421395 177080553 845343483 882927672 981214845 990357967 999246312 786413597 793229392 781937429 934303589 75295325 150451118 487636114 850578390 669373686 718224313 957847472 973506462 802940804 880250866 427859610 613331907 97997490 746982896 521710202 786179480 666743311 889412951 748164557 890287026 306438867 983621161 367929637 399782474 2557359 759582178 481272466 896199641 479540393 747235271 308306001 346743684 259225793 807912254 600205990 794248066 111995068 319216601 888345987 898114909 366508648 538922392 172896737 899018596 177911179 354641916 112950826 739413061 784135371 954901058 852703449 864754895 440365993 572497529 803379891 859525800 888209926 961848309 916295365 938811042 927337921 996091815 5482608 494892581 499936194 705010294 162940016 737400169 918326887 929557769 801343910 835049132 663773176 804659041 969061504 970300786 398942695 538062854 287041944 293749394 450086079 577273858 546158026 760585685 133437840 954093808 896715899 911093700 421304578 869969820 640823834 796329046 215189984 485385489 945657937 961542983 288662148 778325148 808791565 877989654 132188680 945277805 955783390 986507325 962623631 989602859 232175459 840808040 187815093 732456897 487763789 627517232 792538156 847802401 899794149 978285065 106104546 281021651 583476494 803003278 525781711 831892095 542102545 779037040 197029856 813022562 269537488 483850498 188644712 201078133 31417808 658489722 989868987 996225145 56767826 638526783 659447915 825024396 580800618 797347323 876022737 897273555 572641900 641744222 640040000 661940290 338592115 375445879 358949027 929325186 446446448 516089683 382851339 940103099 19405452 50782934 904045837 955796175 655630919 798768842 264560593 508048016 187892260 228201374 196389766 936164175 265892810 656233498 760291962 845960511 338892686 353974647 140518360 611469205 624173965 933276630 737201445 874977163 489030956 863207848 344711239 778133041 799345590 963800652 599958306 645446430 342680132 420548396 549556751 864950721 921853580 927684694 900214800 917762379 779840407 854379293 864732513 963367390 359906972 849546487 854406259 875401397 581440499 752707805 198744576 883081446 265434714 689005700 958062822 974885161 795626013 882256369 172359942 264821859 968118474 976482216 74817431 618446790 828188016 951704354 907678492 964819354 611278284 804388396 275691386 456130663 692288601 698480080 566126092 663992375 176374738 887055620 179904753 843763565 374989150 841115211 713739547 859982190 709386639 805836632 36827734 923284021 415388778 704912578 365155026 512868623 861489928 889488668 369757971 450766095 967536308 982448622 1589949 730242193 87291731 604749247 377975389 389669322 168107884 213988248 844308347 871365839 663356315 736724634 30615840 994795219 36570098 52157026 924992834 996283315 330460150 359615623 176851164 683936047 247308126 932657977 303545463 882272631 839152022 922565914 884561394 957000065 379444772 774565249 189179317 816476816 797379748 853002444 994426393 996944085 287946856 556432315 227856556 491927311 350820152 949910190 800740788 975231531 922438518 958373256 746092122 979064242 301890470 357347010 770409084 939939096 901282836 916102017 834361171 848301966 72358889 549915653 537255519 938626985 910876658 995539185 415602938 807001335 715248186 977197629 832746912 841407443 319890469 861182730 304379639 343196955 677450273 929936262 586147388 997341808 307995328 504621840 789342738 889675525 544010147 791570718 243498888 403271451 125517072 138857852 858053413 910022609 187089329 350572736 97431691 820239811 665799602 671365600 438106593 529470570 189792979 342520010 188604450 818070463 167244997 599678237 114665020 717888531 323742872 981283929 623473535 664001827 842689132 950976121 531921701 894018451 473118820 659185439 612800874 703961724 693415010 717044420 59826606 594762539 318553649 417546932 657279491 926423855 886848854 979315512 720849491 731154259 81282391 150920616 459657795 887058260 291860737 568325943 377705440 657939138 899449336 922713429 547282932 973414718 612482555 632355810 436061121 852281723 611385636 758429643 376936304 611780977 137483958 250121463 91904928 452658601 298098809 830392185 110657622 725067272 408206607 941049355 118889547 452905638 270742613 794437843 971392352 998317869 865875566 953795559 489181651 918438123 387370795 815062639 184552640 563937322 49991677 499388886 825129406 923798852 865493271 936921880 587865959 686214008 588927767 967123922 545828109 972677145 404798071 759814984 5665971 915764972 956557485 985364190 81963817 971419562 757087408 958307119 789924413 887542368 363033182 927011799 771578604 911273320 578255146 687322209 606061395 982960010 101214546 569092754 5404321 686968301 225809493 313309654 85857685 702609399 643758018 651525398 965686245 983053738 971539463 972431379 806190086 929087504 560088904 678119007 344368841 363117577 751017831 891052125 627881210 733348694 591787034 751114480 899586421 976958646 47596569 580532740 790993932 978109296 666061640 733505062 881868114 918764154 401200731 482186864 176548067 661129893 306543431 483301603 358859517 404385855 826684365 940854829 808455378 824964455 248875546 682919042 49210344 752479231 888485841 966224396 993734390 994716337 718055691 985906733 88087920 88861228 351742924 825437728 27464032 87524944 488397849 923284283 524855394 889333921 415401698 865016005 505973845 970489165 332832836 861572485 302238513 401289905 292029241 754111804 954163608 972396865 88757639 240927004 580296640 882477277 979705736 993102570 73580066 544807341 262712202 631559636 419749454 769820290 132477514 409414957 870763367 984169526 973357201 978039090 304635094 477211834 264447230 554027851 891665642 973500089 701270160 884777828 218551484 435670881 711468792 806664959 877961531 958405224 551041805 829356508 901464980 943248686 128165080 754205483 902908985 916338880 832557012 876827077 931840330 990632267 630246099 719587069 828464209 878496576 500721901 870953337 981519271 995398568 505544173 823572691 851590397 918618164 294047548 774144908 574019003 627447711 231278172 311630452 407015325 898390204 573175185 914122950 584202683 720410427 982169223 983160275 113451029 481146441 156820980 633790884 785156502 834879061 685164337 783362424 445708945 891310426 887960412 958602990 484067856 929755474 256978573 390123043 976181698 995274396 107368320 963997566 686075290 913162681 378544291 575559835 309439739 575916523 287015936 875734261 626868817 652096499 76909289 312610944 426035867 434523190 404073099 596787801 27029768 257301028 259933087 601748433 879942912 886261332 236517036 455054054 439460956 608881228 352968924 647931212 345859615 348725048 167755483 561865124 153671220 559158934 458891600 840804121 744206471 854372819 794798698 838915496 786403459 905869617 131124019 680070821 409368528 685238222 324916315 956736233 846252115 980526864 836380993 858640556 735011663 783325114 483050302 870590163 497964782 639269712 348800880 996129785 371684618 462270361 315574014 486597152 583685214 885174067 996177263 997685259 206730276 438495300 368555392 994597519 682442716 959706500 316699940 687929046 879776753 903253644 154627326 805805614 764659922 946723179 443674385 501387596 296709982 308491575 652715770 902439431 125082180 406562792 768011555 861426874 4552022 509447371 130517124 352497745 267481462 463011193 766612677 809950675 534374986 882020169 233292041 627576294 322673627 472673927 726485927 734696055 863351447 912526268 605396592 990153785 754959817 791294534 805199825 996915798 302721682 314179172 852300701 972662387 771389962 964275647 522330941 629712384 666031809 930296114 885515570 909406330 778664813 864978911 999001352 999828704 410207537 827100516 773218622 901907514 271252179 492919334 732043384 856778813 872978754 948732371 247057285 940549840 861303137 884276808 79569759 452200301 307763478 714274109 874868348 983806034 879299581 971729871 773157907 836551183 92529265 416832104 666124153 702677091 787525247 849315450 905880807 962767311 694138603 748072305 894202239 985489099 554191582 857643909 833808644 886451862 145448467 643118944 804293595 810957390 776289608 982728131 194964508 227988580 920918051 947776996 128484411 741709859 761916212 977782529 912388562 999321772 834117832 847304571 244924684 610123453 412431674 571169177 500852186 678219352 946547102 998600071 949732184 979030740 770100476 780289482 66675527 666338790 106453659 424102912 495083183 774711517 344719927 520574354 981901486 991400385 392658254 717818505 334533706 619581686 776302339 894326520 907451543 991677561 742778103 804988811 813230004 893113892 464884958 674922476 915884511 980008894 789057015 932032677 693515596 822312811 572954950 633684103 523690004 933581048 917704217 941365300 409735067 849641643 694967444 973426207 731635678 825855808 210465763 805512559 871667512 886779285 245200107 892136578 812621889 918596328 259644797 377570469 919644241 936127841 99562105 935645444 237925283 899079728 330801451 605177697 704065616 847260034 415378035 855031418 929244866 976266874 139940901 297285003 291624722 602710730 56522395 722530398 533823636 608199372 364192913 865351004 131508287 644206770 196956622 800148984 711601439 957695942 742553456 929618909 49488262 510018793 911838991 987244764 808969653 817288845 549235072 853300234 336853709 384219859 365578311 993786468 291478096 630180246 823006776 823732963 848122033 924817057 626818615 786209993 667921525 730233037 858920474 899753349 780618500 987214322 418003137 460301780 68581431 533622381 356674932 850336326 243261165 611897726 639780794 710972937 628649634 753273719 828387897 832232736 357824578 485091919 761821937 865475167 453254558 911833601 278744712 313434235 898063482 982763487 886045822 914779405 41090129 940179300 110635597 718886857 580781795 714988635 960983471 965662915 899155134 982002697 962197578 973366044 716942350 979351261 395846493 809576528 60575619 405171403 452761930 708424448 854519856 971192810 231829041 376252831 177252998 904608429 301649438 457380672 932352772 996044663 936523609 989599473 743734544 882405486 883562404 936264654 914184584 961091177 140827974 682377684 16959262 485996132 279180699 604165074 156019383 453611424 775007585 844120619 421045026 783714765 460634553 886683192 837881247 905132670 411356179 692701062 533080183 920965037 787039630 821502759 351574146 558464620 982842044 986018955 190453478 516994458 763789033 936944988 848320848 930333212 322580693 545563926 364388341 596514642 198517231 253883740 877794299 914184353 645082410 688269242 497891473 817448219 290883178 723538971 978953559 980058081 120202389 950945596 583595695 592555963 500839499 816456953 32494121 648322393 912625052 932419452 321150351 745784390 756374309 857919746 165823600 955595022 683283501 841290982 195675322 735545433 335793256 441037743 920155109 965894891 377276789 680688487 96062216 474686110 585855608 913772586 979884821 982703757 735416194 849380475 68157320 524151741 967405341 980255115 437418218 520170660 836293736 983394926 765096058 948423413 298528560 903294051 172510367 695157501 888020132 889088711 551460396 656768190 245539267 720043039 606487137 807455919 114070969 590232415 907180594 946988458 106187562 165616228 315205664 849603964 881497802 941874187 694837171 889984891 528228487 982795649 458633589 772505688 349206766 556758786 760776006 874567299 212454918 893542061 274831743 396354673 975805058 981646792 999778752 999855824 698279913 838999687 255168141 451322141 816384994 910223148 468360459 722405780 382669785 475200917 565791792 749771024 645384867 863698834 273620652 474405000 637722485 941539382 655794005 670656994 836344475 856179924 268371305 980026387 657399504 698194233 431742047 600085517 732446836 747595835 580452198 805189258 144521133 617408551 698937892 974828437 69877877 905359901 252594741 920034354 262315362 441025962 248172630 991083803 929452557 941933127 510261242 972166514 627769688 809560074 591181711 599886788 755332825 766488174 494424089 601826510 691855242 896804931 567295532 824515718 387285587 864390803 785244229 879298255 575758904 911094614 975063636 975531964 958967750 992999695 310439733 535683398 98217258 469810753 961704398 973650455 442335576 622516252 716525405 851156336 943617383 979166119 107522836 392555351 20165811 548333584 630575802 703782144 741723214 835100087 795939694 799920732 807233809 973191745 906944319 936070884 472813379 600040298 282119629 413177515 844400456 984896618 418385243 658898787 621839444 791935057 842859714 897395840 779042900 976142382 745843842 916612240 8112285 728690647 617247010 904693347 782010512 842358408 510083261 737199442 530376176 703455371 312139224 395850034 987166218 998611211 165492261 508990335 174554218 729396587 89984981 966136984 51092706 939908642 158670800 786020604 180203527 762379186 232595464 852654533 941882564 952258017 46914310 751321205 806445087 967014159 187665718 397473957 398552069 943965921 347692577 444800225 896336181 993642017 776790546 956898855 776556296 784979688 517644332 743478957 55578953 268789707 723612003 855719223 696583777 956138378 915366418 991082583 301131924 374092510 780552113 801767156 965867916 986156846 973257792 993207419 353095955 867166879 159207010 560913564 787342582 936252181 674769319 702347057 497950419 513104277 45042073 556692881 505164151 883956627 272723891 371817319 73699430 766966799 336134603 461383843 479129041 543775637 524605039 939467005 204282229 246658829 214191385 749407669 106216781 316480902 480921176 952459587 607425307 741464675 782875159 958989023 550628995 948897059 299167053 785372864 514169735 757422545 633700398 638610847 648012937 737952937 455307860 518443208 617409138 794737088 5949576 222408535 731389540 963512276 302657038 312938446 529075876 565139582 833716441 843115288 550219834 663437384 561683464 662965140 855212747 882686997 292968182 642710673 565590264 811157372 777043172 977009291 2682651 891431340 408563874 895909447 462047302 874866501 983746240 995805946 772424060 789082366 135502032 419680170 433719981 480077346 438129134 530305869 531857967 538349046 699517280 814084910 128387523 926394016 432830369 889581930 973372361 982737430 327009670 528093332 985185784 995319086 568189673 708644828 38509092 249959720 954594944 981632584 298048816 605543814 518340160 643930761 300868090 842757986 616147231 692527297 454249551 938384975 809787948 846439756 745513319 917691568 719328248 749723054 462473543 587194109 618246179 851961727 373661625 988016086 357358691 390008139 191864139 272903023 567029447 660367780 916583117 956304443 770621075 775521277 298038033 705868539 265685840 860469668 269305333 718823427 171511384 907705153 150956280 344640083 558810311 702538937 642564574 808213612 185199718 740682736 974308535 994887691 920250173 979958664 341395895 655461685 79525202 511148533 430747352 759355875 91079292 710257823 515485183 642648664 141548546 470149919 863295390 871228196 957065160 979329949 664018221 923915413 245677449 328298051 702464949 888132406 149747683 405173809 481314666 984571636 649535476 764562835 948474719 967713901 924393777 984520941 770988551 992812433 296116983 420758109 494736817 648262757 384719039 718674836 914414953 940462134 208643353 970612878 887960845 995957725 964122214 973501490 99720875 302290458 342251923 962828330 286672991 522858037 693934431 714649569 71426516 758403343 411918626 929394301 162060306 320500383 182110408 352852805 740133466 816913153 312281180 660686171 915042205 943394410 980716995 996147424 509596859 632820994 141150018 228049485 805828930 857522268 451147591 569532025 771191828 793933960 618789326 911351747 849667402 934699593 499808898 871458040 334484897 865723923 621243995 915988538 976602206 996703769 454904942 865124779 574985238 599885193 682386002 894490828 194813878 945474610 66688540 255134658 128511136 270535142 302363569 600120886 101815801 197602470 83493688 994463392 627075207 685356435 981060271 993241122 238858005 610802863 589532543 803226461 550089299 706889493 245083450 751889655 821671351 982124170 355383382 601131519 460581470 889825927 93564390 137935355 928201009 938917376 982242236 990154612 121003584 209250697 148225616 982562339 468501696 796058736 129232704 381934728 884890865 980116231 933250489 936110374 914605020 982639539 978905525 999158962 54392134 992883771 896257980 952658388 808550165 833376918 652204247 948204219 867358757 867677987 81533223 838164294 979229378 999464302 912271013 992497276 797364308 877886704 861181219 931754054 725864766 931546385 145232886 786170980 568360953 979986035 963974609 964503349 949690803 957854618 125063132 225031268 100654592 659351736 216689829 957978592 615627678 679732639 314591038 398997084 988350072 991294487 520077284 581375850 364933334 665435174 967815147 976935687 31810071 829578261 262934634 285313519 40446428 516037083 430332740 770239513 730472519 934885385 83398322 362651489 724492668 768172963 664163549 810432611 701428605 792573481 797561154 815017806 997054520 998429589 232261783 578189172 611142274 804055555 216807246 714581877 883238967 954389300 313758054 752577154 152156316 800893981 637868943 796504857 431413482 510940725 4071282 992406496 128096003 717925996 48474750 968751859 856061703 861814027 981130587 998069527 737191339 752505336 711548172 861949776 748856841 892532255 133996661 262987152 300866349 311655544 485668449 862512944 571624774 807071216 953815848 981230683 177454713 212623569 672958262 975472914 922127617 939344702 813973518 821766533 726672554 923608433 370962438 990490235 721549009 963963731 345662390 896756645 308755596 515581482 348330521 740104948 112991735 803757512 336813508 638882360 356379080 562696857 740692402 939437312 357999549 832351032 808603338 886390261 704675893 960122682 99830542 879429127 59083425 815520718 532984683 859096780 328110136 921240795 243217523 915145588 404715240 659761384 837439100 999941096 527421258 617177266 967268635 976680469 44057206 47357045 307084899 498415194 279677597 322840603 868665516 934406343 232959878 726170562 603619990 802968564 145669418 438544543 279535212 464463688 136233332 880428332 452884388 550823068 725857120 760123470 963639242 975463523 771480335 984086982 935889553 941575298 789434316 823886444 387492145 767924549 486893880 985472358 732197535 837516680 812370204 953184385 536138858 580396106 236702951 335985613 450071791 620438041 215183195 940455825 552452223 836091602 931948858 982991905 513862865 630226532 410049644 556830194 962066004 966021593 302789085 537721936 584131453 912170097 546019673 591889260 337300 537504554 767053801 910777306 429290392 695890118 985823205 996458071 199634781 866841884 808457152 908486778 955604454 975805944 322760901 908808146 485938685 667507342 962785074 966971704 33831741 154891408 763782918 872650200 115985784 473762058 839417868 841707564 280580621 405409388 165499591 250771867 684775309 758090547 818650014 952664471 895812578 936722339 464994537 656363867 453745799 829352384 338715943 834161644 429022323 644316564 863374562 932217444 300286802 890643531 486612865 939705942 20790755 774222280 464681352 700287848 794704310 837027185 300984066 857693866 486617673 547089879 760649972 834929853 25016515 263627676 268213611 823829732 927633997 967211596 467698164 788588104 349689990 930258694 708545255 875243731 581355091 756340293 157196558 857756356 484238057 973345267 903138959 953563751 104639615 661484379 214259113 595048303 822707470 903354763 804829928 817658154 178726751 312650558 168691748 673545361 53679910 430595688 873597341 889767329 616742155 809197495 610864185 635808136 6945540 278216099 293845593 973560396 766383622 775859370 87509577 759008681 542822660 645380200 573634945 695295387 610739643 647040865 454939540 903883961 464130482 474441333 505724707 830372768 647718462 671609271 365507152 539318245 613419970 876391535 118734476 737912659 131018042 589961720 536968725 746283439 164845824 606688321 136935265 492170777 434372736 887668916 42736007 881047832 858007208 878322071 287472948 442430939 850443767 874689205 502803018 584259294 453043035 983522594 276586687 450053797 316730270 986045295 17513271 750761950 228750677 707680783 237990716 430196979 380580374 504008403 893307445 937572829 820751689 972975150 65704478 326191619 281874739 327907853 792303084 880508392 998793066 999198542 168683520 198351796 778971692 936981010 378554323 596158812 335056494 516180857 146198069 547924800 641995325 768705771 375566137 867250567 90177845 988602677 533956670 909159494 747571553 775673065 754395028 871622137 584285879 835574319 760557591 814484038 678764912 903849701 854446432 938466948 574320412 707250565 109966860 880280489 264861141 283537641 982353908 986870701 858146921 949353125 650249424 845520582 275333624 413985399 624819802 876652478 896947109 966460620 719650207 916097717 602180698 660471683 960619724 976113501 582661048 708606705 269273185 625522876 94689884 234361830 712264498 822116542 38581175 564706496 750533759 938079831 817568175 881493137 25622160 627065041 862359202 879224411 443220555 935423407 827352039 884729596 908884457 975770054 852116112 902156982 288527845 657323029 218397352 876209316 512856253 574108706 897295721 926024916 113330298 615542930 906540006 945017723 74714410 748974413 982749434 991783625 507908567 863362113 808260286 961227394 390881195 891373007 753654826 867468682 448839920 449412262 799035008 901454584 357339396 581395954 507314912 706375714 628057749 850549951 880087814 982172440 615774357 745619010 662376393 842600143 137370486 770313322 189619206 600152555 2815247 623845464 327343945 638348062 615691429 689803356 400067869 789835365 1582932 341651328 581476360 714186989 641733319 682320388 421797794 775511594 224259174 587385841 426905900 508292145 151213191 378768198 692389298 862939314 304182786 759676597 237357461 402752784 308641002 714694262 557639853 591528804 71372356 836184164 105953208 563542025 124998808 385126273 730012692 904567754 257423829 896908311 492286464 723979119 780598168 900425716 672453523 679862310 297250881 530358622 547811319 967843065 686050861 989369350 606632397 655718278 701296515 793795724 565502739 630785602 613789073 905532537 307956165 794360631 223469040 686109910 170332450 910440395 421709322 918683646 137668854 743072873 118460214 970227520 840076416 940756256 439532073 887666920 894706855 937630613 722779256 831746781 388691050 880855943 389027951 833102504 253988772 506456927 314172161 402139360 747391544 994540342 533433360 569121635 597039465 934626318 866483490 979384392 90985014 621989783 632737145 734829242 664391955 780577417 625355947 903476324 301073036 348944877 108229382 167676955 637009330 777076614 655537175 740550833 311784965 403536352 571996598 844081594 645226517 743833974 241736265 446738425 300093863 454400943 116377242 303981037 466482505 854489853 550828337 715801239 261732346 287910628 672850887 858234391 957184325 997536514 476854909 997708878 114983012 987681717 672419899 787833657 346156595 887132661 973668862 976261177 143406336 784788580 645222541 701534380 123643567 927400031 790759196 975189987 450881005 489121287 432759750 659382532 563204639 883284705 389313153 486229907 481518565 782324934 29784790 783144688 705752772 830706511 86948481 532068508 445954941 958826730 808151094 924931916 56563657 495027166 977753265 991658693 990422068 996423825 881256100 953886621 52249262 756945804 721149777 884161835 426820627 573759673 108424347 248023964 189043684 330313995 333748953 405704236 637808314 845034269 391179588 887019667 430091994 906026678 779934596 966709714 354802998 759347460 120392920 521716606 853177308 913952299 274101980 688235256 352989796 400911703 945758100 966797943 964273263 976199020 637618192 898674647 723927293 779833415 161939229 343809817 656580925 777116244 87745965 983692934 209878683 307920568 151558575 228931378 379185552 534901108 854457989 866259086 286139658 409844929 868972166 878874365 417426674 968342277 958840961 996392319 494439791 830915003 479514091 754045084 209674627 323577325 269006437 746173139 37781621 321147868 169951960 825767951 755387071 925763465 257103546 396260209 415624713 858258817 34343567 366334442 581502739 745094809 967227794 968586314 608552738 812306690 917248683 964159400 211376409 235360531 446037545 974458272 501065253 813748723 940318218 955208159 646247965 749789001 478108107 874789302 69744738 621508305 706384020 951975185 558302650 636801243 865608251 990046125 334459679 479854976 782172875 791589166 201839134 481284041 127976320 911880719 384733406 449842703 603828197 765934710 79441553 434530787 563639903 779770297 612028205 754538793 581578778 855434839 945335400 947890784 38776926 740219589 172400467 408801512 71142883 335681139 909375947 964313184 326006151 656792641 6820810 106880853 748410849 976763582 638103229 759109156 823278158 982692253 948721588 965727565 615858373 929984639 606918687 781091618 850961989 868950599 851389192 959368655 328331851 535036680 876011043 971659305 752374872 825293486 73877508 469382916 428248204 775575141 272466681 594697996 64209724 709998514 868054984 924722714 29842152 661589700 154550509 525248338 277883962 949962561 327144214 427981378 621265250 778323399 994686278 996226736 638775113 935943056 153923988 375968086 374142675 762708454 674711930 737822357 957222257 960985781 463757098 784875425 517868369 854013324 62050508 299026284 47633666 815097108 747966635 755309558 105805873 356165788 234103298 538977112 631057870 998049565 677388779 978773291 76938954 509753612 237604470 650556053 249105902 833665584 293856372 874496554 81898581 148892967 156005826 993027557 87934671 692726196 986312690 997176613 84725522 252409292 138602176 870208354 105538588 732086051 774814081 972783652 229305761 690602483 892796382 898292461 626212296 851399923 132183533 427744420 132760321 891036109 161068463 211587851 394398318 563104057 900623880 989978432 778008797 933022428 595582939 817433642 446063963 679936906 161447293 572464186 853362998 855979739 162647575 647296278 161328233 776897575 803461558 812531846 55812366 404979632 269341869 521454484 959506037 965902132 275832519 558987313 80108748 975896286 392715221 680686746 812909017 924588548 295194891 458073657 779810911 899267035 784751451 996396168 124222684 368892631 784814085 971509100 949330378 949587698 835064092 905904561 958184041 984647646 402045555 736746512 12870145 620915291 154380569 187890885 716137566 775490548 991422790 998531407 855272203 986057921 832742783 843003326 919339152 991962646 333118251 960772687 232419771 293947457 496281117 600817375 413354387 488308830 742599933 776951940 365875765 934406925 116479223 471299933 179865956 483188351 349351647 744889436 942569700 971564132 198293477 636900335 136859699 889865316 632652835 696980017 661804103 831580563 814279206 839600016 978031427 986177474 589170657 930706279 741983145 805074828 56188357 213533259 22608080 317950453 478761731 869791501 5448465 141354447 173377061 453597394 827718279 966896397 33227113 171950415 750091318 890105565 707136532 881295147 490963070 592821860 700420252 957739972 990538888 995400406 370551788 720183925 572081522 781455219 139067896 459397157 263730857 285286236 185145366 939853203 274021344 624678118 61266802 510091627 616545670 714799638 183731575 980551402 509540113 586727437 975262798 998406474 450181523 612614628 777378777 869672287 965656518 997457619 122524315 801849345 640024476 760834731 42482482 198948052 810427982 851722305 728925191 968412465 369198007 477258429 557278753 858419748 202881477 288433837 198708564 843589493 780850978 940206986 358164309 448121588 38714244 682693761 911087558 995600550 172385675 354510199 418888558 979008582 826587276 827907999 564218802 610383907 931763134 986633745 826213716 838300340 270313438 788251238 777951789 828373255 133106382 188141679 53525386 423858396 774197175 916606827 236733586 315222009 743422102 823052452 440010044 894167206 561931498 907948216 385673671 689095055 650777055 654137618 475664846 834362659 757833356 969157080 489032388 722974635 480034541 494505266 739144856 768330113 801589234 964385619 453911222 737705795 541444031 575765821 933018126 979726160 447121189 909424309 932918723 955676714 885558168 901615676 159486890 817598974 878464754 898803694 147548650 782272767 350921156 695751038 251056968 532289847 595631662 851368651 170152584 413885719 179435863 257320064 607722865 726451228 626486968 827668038 687553428 798710265 673111483 896346998 776558762 867949973 259280397 715496432 231383396 565437362 740943422 909021932 728753799 963179358 631364503 726993595 390183165 856688188 687843256 834916960 218337721 773690775 940627181 982673200 496414343 690653889 749811014 918631218 818117293 979285736 729770351 751430676 754609715 809887369 98507493 793561014 998352392 999398208 516183778 763401078 256937397 917956879 536106196 966187625 767843723 827945455 418668319 548718613 928707400 938143510 932973250 948594519 785152789 820571925 911489464 969647602 161365812 904850035 272808985 395795970 751959745 787347949 263284128 946821966 879916466 924523708 742725852 748001239 578420389 820865751 152320987 946878805 735737147 765710509 609519064 969064911 631132019 909802290 44670692 461303259 795135674 999388141 132349517 396116596 67053924 746923904 917513528 932582365 735999571 856348950 719563512 799118173 241291969 818565448 459900149 978458058 418370823 983730207 51451422 773321138 793236218 883904326 798558229 880047694 237390293 876705365 335626695 855256648 220950884 445548897 758586370 884444750 209525588 670897760 228828361 782724798 744086089 865806050 294219810 998698080 530796171 710315715 323456520 461260743 638638332 775833778 462928835 505915424 73308635 503067606 99603715 155242866 636790855 657226603 171019066 207855256 722750989 859041269 635188233 789753594 158930158 809070792 224867257 650991039 494977087 839640517 285684685 973958441 856161148 976614329 913420850 991380131 836683872 989116748 147268823 339512981 677099280 758610605 777805593 815355110 672534941 719667942 317599162 677814508 142937631 816131832 273203053 686287850 697135311 931666182 649702015 707264158 400297823 645468173 891812596 992532104 525296151 880699622 683186026 856738116 824162529 999722918 996960181 999530946 146963351 374324994 803088136 893904905 502142299 867045333 899414502 954726961 618272465 998075401 346060697 612072026 794609312 826165384 901053405 946268056 743653774 973832402 396971791 906164439 263235258 685952052 745057210 767227529 754764985 913018606 186970807 756193857 339414827 343809154 472043060 759430535 872753025 881090346 650097965 977549324 739245441 812640580 685926445 777947366 357954753 432148355 510239328 814144426 797041717 922794987 242653005 767692362 845844116 987991787 283089159 828193392 94116231 988569145 843203117 932600887 730027819 973954176 340475620 397781124 667054977 792525933 731144935 982159777 304572521 812076193 461487775 794975880 179417537 724586888 217691901 366821203 503620684 686157805 353746205 459805468 46404096 333194909 485904714 874399432 337533863 662254398 918320345 938883584 520252944 530280513 915265887 963099204 864234852 960444981 289431606 412044379 602128899 973672998 91207380 463445141 984844012 995305871 316560555 910826974 283931232 902040691 663428379 824182265 287758142 685668888 601446306 911566590 843484948 945086461 383510208 473855197 747934780 805290855 554964257 737177104 626135131 725272988 528836563 898524167 425789621 869443547 234523656 442025052 155645755 191157439 822561875 842879827 753079439 967484058 472195294 536861873 847812901 878567465 314044738 368355606 808042002 875284273 699063828 879738158 541785495 607270956 880650511 995354306 922955390 957626214 221314315 785958609 270275827 513212124 396672938 529686104 99650630 808043273 844346447 968493709 923800252 933452606 152337614 155850491 880168119 945193596 188949723 953043892 145553939 828810445 815591400 976468577 861978719 961109242 900196713 967813699 797845390 829605870 908147288 968245727 847859740 903579594 333772620 762505571 253380860 469990978 261652385 442485506 901496025 915479781 471618324 807359941 206232094 824832727 114293306 335308764 289294401 371329239 604688366 626436883 629179610 925056230 393964020 479101381 330860226 507176292 476764780 839077111 472665516 955621251 662145766 854435632 472450515 681041828 556816375 624577715 494866287 956279534 30788122 367014485 593441410 851479236 226865365 342702403 597028195 981641685 153433675 612780691 37163717 579359063 967056114 968449486 522046316 945927461 684669563 718235824 64066024 818581423 389896374 946854378 852692675 904347437 381712812 984189839 176198094 912043104 927596097 956445788 29633497 804380681 156910879 530594991 105432765 353255398 852500172 882382345 218211369 680954502 645737224 771802535 730072308 831120246 904775292 918916970 316363983 458269978 750877787 824517025 76087592 457500123 920462131 992639587 507922609 719288644 589422405 829798965 623363844 668849855 963651970 973407115 707615090 944523230 995875846 997079186 594405054 876992702 726642483 962288533 623244819 659442536 487200376 840781132 310799995 373445744 396633352 572830579 447901953 613825292 838716472 941885676 406080032 894333175 730076357 804684938 460284259 997907202 615504673 842410744 835162938 855387347 211015604 495646165 434630663 712359002 299104014 712736463 160894944 790346519 771295445 922808232 518820758 822117366 958997713 976244792 684688907 730443882 780447268 946653767 82347666 848956597 670085994 882994838 658347968 662464856 620803744 657974855 266608791 839818765 766440767 915991182 404770225 577758263 927009948 948316131 324672281 820963139 2876071 882905400 309674335 398504949 766878715 900563372 934426327 976493624 73516360 802015265 278104669 999618200 704258660 845538021 186038519 800718701 446701667 928578047 375946997 501538940 669192119 705996372 748149050 972358141 565216255 897476375 470965108 689439019 824548685 827326189 690787319 963637800 73540629 957973433 775423401 824409770 580946259 729217447 85722400 576061604 16237400 188007995 729662105 983177821 213728200 691009691 365863847 805006755 179927991 578301579 47373959 612242865 565048040 573022991 183057927 653412688 537742454 828325306 174658305 713084359 798645242 849945582 997305109 998101571 889949676 993108646 262454667 763728816 45711336 255870437 385371537 660085592 167202664 239498612 510516607 724988758 388226235 911766020 191073256 918363131 107428945 202060250 268134030 733616888 475980547 915214158 659661704 915219671 334813642 687917852 719014804 844203498 694736369 981345740 608740061 632556491 559441515 768085025 917851252 994814297 598053687 957056618 502979411 519787209 470221994 729586762 664055866 839785840 329256072 856254976 959330207 987015809 305517330 701578991 963338790 994375441 133010196 523135228 787966021 955057852 928489682 958423552 613540616 863866737 271246626 845958367 569492649 642240899 144292223 147893639 385555615 480635983 890948813 935779718 764136968 932463256 516091600 840093195 501467323 703156050 513949910 800218784 179926055 670074866 746701388 925264218 295685352 363941294 276245451 860073142 261591314 716010913 738350031 964659255 686251499 902043568 366503246 470870778 380377730 847728036 385224940 418158845 19784665 219404054 297557517 566255740 434383881 662036692 607151222 775837780 141042049 577483721 585858067 972393586 575251351 739489667 592121835 705612193 691371157 976299597 354125602 530263239 867280155 945793817 341673898 987210798 19256413 565930587 752215305 809004288 430018618 785646156 270504117 284414074 590514179 860515477 77987833 231364742 358029855 570433833 486380781 960126028 443957299 646044661 864777180 935610874 696013707 956519224 451950839 808536573 415180738 458386873 339702725 967295632 216280072 448208966 326660713 856481222 175667283 931427952 991913401 995701483 691481648 992750119 618256127 680361766 639040490 659962097 563866756 802981452 257856669 698242414 553787084 596065526 332786311 461792135 909894920 994774917 733632050 905505626 401368023 460185908 234812221 311892908 852021811 877676524 818256889 956850568 228224427 384296607 416294006 816256665 254715157 446816550 248264336 703904380 815662201 880241808 181521218 300980035 83114688 556156854 725933920 857948355 22229541 863321741 259691543 763369736 475168312 487640688 163543582 231154920 50719266 886939104 81141480 120619079 799426521 885846492 103299369 188252013 28110159 68195779 930171266 992741687 78634672 911646489 198428826 284617562 415487029 695889951 39574046 543176876 657348630 910593875 282487297 498826840 110227022 812394838 984541586 988475855 416736532 711896213 411115969 773624167 536181478 829996987 786508183 797168173 233795086 577975594 238722444 489099169 869328698 922076913 16826351 487623665 39182659 129228020 863846283 969159618 742642699 975799410 617244234 862894644 129066068 642913979 539234000 583445120 550901536 717818702 455188001 981479298 830787708 943888960 361694737 710448739 91175116 184656618 310142037 477251512 79546475 431648071 897938575 938266737 75019195 453241630 953471896 980533489 102930683 765319132 453906984 914107795 201835237 826802678 924380947 992779696 451828673 794887829 891400567 993541800 382667274 955863171 535450474 803497897 320172795 576964434 809888204 828256313 905073577 956032972 892822438 997465353 898608465 946966928 440912138 946962367 903796686 957529244 965019582 973758151 524993053 609249663 405980372 604648015 996031725 997429389 575100736 599742454 868867084 880733415 16256204 407743987 299513770 941345905 648243256 822543179 238261580 405991194 877236857 931630441 685704290 941032775 343412406 909914488 237529413 264172254 694051093 723891287 468326886 511870758 960387041 980284422 655666007 835363810 704604988 726790860 271401824 946038081 971661854 981140718 219024880 895765699 172419880 640055264 762670256 908843571 226175597 665575215 260743004 606906315 916177417 991737225 961783726 972899658 869451375 899409450 20585116 538608105 204969445 328875608 962623784 973811746 765092610 941455287 414221627 417702433 510546807 997613793 93114203 491365708 346887998 981766913 674790038 798888596 306445773 673722345 761300320 846631957 237578752 301998077 636090776 757052438 276494593 903347334 680923077 975913433 473965284 615523246 582881921 840616152 752160841 935676157 874290788 928634738 817616978 998277172 821484745 897562579 231799095 869024461 64203561 891355345 6753252 608952635 135574164 640090988 577667528 763030868 587142304 920108015 168532708 329557337 199247652 572733040 356867878 709119213 294925506 916111944 525670934 822278812 168661284 863884484 814850340 860850738 989315337 996636656 416172180 513136929 786964717 828561732 523613839 928149921 655099291 830638970 295879965 321041184 989074244 990366794 502086399 806265101 70545017 955723979 296281377 346556127 50269887 907774798 257885620 460138573 907327042 992399161 364874700 744670725 890558302 903661206 381934009 513869565 252230292 574191823 233289368 436964639 951874869 988863405 464042443 894966397 145231023 811061660 874846460 991258911 396348863 796179341 188286874 820509448 603191773 814658141 960718843 967002984 324947547 628592636 676109034 791520820 578321396 601073677 959293537 974136636 801343710 911328024 807614095 818737665 328206000 803924080 680131678 786836759 494634417 834096946 707735167 832665543 742475804 918869027 454915536 487518261 296466662 813289274 28911316 902405414 694884089 885480389 25002949 745172945 599729793 613656154 550954361 682407465 130631948 811667220 18960696 444723277 852046650 997594430 357947964 719039762 276409822 903100794 705860804 889570757 509440911 567789097 58170186 531481889 81640733 234950395 587852358 897717685 346049256 997332653 628050487 729160459 650717111 808309632 936280013 950400666 865019620 884105511 718669496 773083362 82261299 175889458 165693913 376828413 136250578 278369054 431560669 768768247 403045018 847455055 1304642 661973095 860943571 873458526 150733654 984589315 18352346 190509867 621354255 813083006 813380436 905538033 422065812 752026896 178542886 636733358 405799737 766973655 991351077 998705645 476623663 958066761 84667334 346556098 388802175 843348442 128549031 822516372 754841774 934513736 709533623 776896438 525422520 649566214 182567575 398377905 744487091 873930189 869154268 891846156 361108258 364138975 4686349 844608078 412740207 867211377 243994431 523195535 920683334 950814439 59593152 65748149 619242078 786677906 66623441 323539326 587867539 919827349 567471808 603141642 165718281 976852229 246128335 668140896 509657847 927201452 410468653 654870739 359323415 711002591 259630691 861574718 68286800 731567753 534351781 777661039 276607994 427243635 859404201 982549495 109388674 235449303 413426297 520411095 39339657 760014154 159600616 248011403 284040528 530334173 438214946 873110424 370035755 870103840 746200802 771374648 28902769 755661274 958868387 985549983 4580220 576523415 963835369 967573748 125454511 958612418 689300846 855520215 580325966 620873759 796363168 827119823 630904755 951945664 783487230 800572417 973708501 999693675 73166136 404625592 546095440 649770928 244166350 510701058 669548611 785491237 984829121 994241925 318461528 551082730 689529605 886857808 221484765 773093557 505330547 997142000 260388362 952531734 610480817 757274187 300417699 317055592 223511939 978054958 264391088 392663422 433345307 750000083 221787378 368977348 96837283 170094114 632275428 965796070 932978614 962796854 878415122 880295518 106277957 359406787 344906451 696847216 594987665 906483733 997218893 998634995 13608006 162283906 487922296 848634128 198649715 256698235 150757257 196468446 752493272 773695052 551986516 623747009 76289181 986245310 526509030 571138091 302746019 946838634 867809472 869073999 250980879 903587174 607599320 670591897 942872994 954846900 78357303 927445101 763819868 963343199 561171621 702634859 452995955 654290849 742900339 850708692 613892669 670482721 717907518 757414348 668138179 674890712 6200789 153017424 931661116 998864595 977380959 998537944 613975864 846993967 285597152 492062741 144551660 501263035 558993143 564891777 753263363 842966640 720503161 900088160 88227990 804473696 55738519 448672177 748931050 812443162 637090199 886218489 252665429 857492670 358854273 988342715 398061516 767888095 31162574 925769807 642762262 945033626 570659105 775049740 632372391 764769852 25609783 336743217 663548801 888212493 105554948 802729032 37667432 378183619 809707844 893405393 942933641 966988261 629650787 682514448 129253862 459763623 889328532 941098077 837202930 886769296 337058241 692332011 175607588 210077676 760361990 974886461 422211271 467675874 718228516 938084379 7562599 127438068 842084084 876482440 424605035 464017276 63403964 523701561 727217576 784737754 957249139 998358844 451245049 765984386 953594126 975755423 35136529 483164434 516043840 957095811 406555536 595764033 448020890 946114700 257161487 971795060 189553625 667117699 658719462 692740396 6602080 758027838 755696695 791783379 589438663 747494813 630440714 928849554 3996448 796764991 907786767 971473077 769858826 792032895 425978235 907983109 682724770 938755554 993945852 999218349 1163589 131826738 565392775 694590517 693047280 741334406 773557455 840763652 733119742 881846517 460221061 835854191 396413170 935045811 507899529 790325610 491062720 787771186 582264312 720820575 820817882 858238997 636567884 639372912 590339062 931315712 499492465 737982398 156537785 345464636 506387555 900334683 221975501 223715590 135758324 979862330 362146016 719451215 356522911 482626298 651781074 830203166 603719781 740295538 872530180 989161223 210233257 348509219 380571813 760071034 715925301 733549803 377832003 948438907 89861209 956785746 918096337 956245450 667635733 964274462 901450919 905778672 319271162 852969394 129972014 970371745 79092958 991968556 120032868 790759483 748246513 801662430 810912274 949329926 339906276 895221180 803624520 945741676 590485622 769031037 594703166 962628900 677439463 766367178 462075011 727572300 146676026 482504306 369326479 919028970 971913774 983897491 475219778 509690733 445139014 668889666 335671710 806694079 811505368 848277422 713162222 893301862 824829624 841377909 177471077 848952764 813955632 928271999 781249442 821724341 987276858 987584521 725778254 750610085 927304271 991852672 664771024 937244982 563412787 802125121 658619614 917089671 826317966 995032566 16347863 622118178 923239432 973303507 735664221 770990618 80694478 93713071 974756503 995000018 672653724 696019156 512065614 824562568 33470285 829638796 214841462 696351649 166358618 172516654 955276813 986313704 570509062 749255752 848241595 877145729 772336415 901327443 648527152 889720036 151095166 720237943 174173638 540450438 833226556 968469319 115759019 540397296 572826554 875288801 305139262 368911452 110836370 451625144 388322970 820755269 570729316 912990384 697067775 882897937 134010094 954095406 741008470 845327680 254862492 596850924 866769211 935933088 107210941 896999163 561744950 610066510 557858975 693953711 759941865 913410091 149391586 654712580 43368722 564460263 814831744 993102211 491562941 623653264 572400678 704997378 374997149 718139315 233303321 520577465 413253951 723496615 441034 107577346 261588468 939093903 727912253 783804304 401448954 735832295 720134543 724784891 157469911 280507028 934233161 993100458 434419563 702099666 915487276 981178355 727034598 885623247 912873609 964286902 375191251 645904154 461267614 970013286 267809697 877463914 950748903 976608291 434337668 583080122 245331492 812758119 957333500 988687562 558407199 891418319 32835284 943240646 335252686 734042512 312364493 882754698 323466229 460793466 595174074 996148304 634186903 722016895 966955760 971496906 73957538 101314380 890654897 962569013 658846924 693226872 524869762 674865549 521935848 660209361 805756083 881633779 117821487 870787002 850638688 976667996 995152217 998387530 746252208 897804281 464866992 875630325 601751492 839697687 747874827 813664173 397594057 578147514 986325283 990706833 881939235 907616693 974991724 980321459 113298541 871512297 256810880 453952030 913467532 978128056 948284780 992397587 584731862 767468460 138297519 937961451 522846062 613090115 815199674 892944623 90142645 781546120 41004618 516999439 840967159 862307670 187404787 725558621 259961193 753641476 508369123 844511110 54999378 730307149 314376115 437202547 949495375 953358543 610313773 927036248 541007137 721704971 296821657 586510172 124396226 605229908 256721727 974908344 838308149 956374576 319590732 462893017 432859497 663411024 594402229 620535640 840854544 931714093 355154997 463435461 280907614 692409898 92879104 462957921 9689939 472785342 955134286 999483843 470812623 945759198 770808869 889969004 888958672 927362588 921014282 942412750 825326146 949639404 434801854 828921812 506160806 653155251 444464453 622500300 792902630 877912181 924851336 935898038 831404884 978761859 609982102 702469608 879823580 880229193 701182450 790724866 602382168 742160296 9575783 631529068 763712568 773786988 124743739 256898261 912595447 994448069 520903770 597748625 584047678 938197414 787111889 995279806 611556897 968216642 407360315 933100239 820066331 868040347 253381383 713560352 777428119 872031932 114399135 240573775 498880615 833424481 177446649 975713730 333376397 607439353 924851383 985314416 375006832 622619669 690192459 852733071 9506420 810981279 583102288 933917127 265159358 593359779 108649836 787121204 154071331 696751827 370822686 969905868 354935305 646466389 686716287 749082860 683449781 684920928 445566839 453587766 157536504 192455125 44596766 828403991 804793427 916729220 37409738 249451074 786087517 896022512 802471002 878719718 433643865 761847209 484235552 578063641 476532528 501268170 104434614 118954650 637183368 990371191 999723089 999896576 149996416 731143693 396113496 543965542 753497889 817638407 447509395 919417388 142406700 787206031 255067036 327754682 867069300 927165968 341397021 908850587 99211673 347858850 432653625 586551509 558926378 662799859 338186336 459176103 526104100 544873635 615595608 774912205 337810797 637800827 225150218 837567757 604017277 678296709 924555671 954638969 820704302 911175137 917279974 985957210 693862062 957980167 985741780 995845409 76543014 326130565 4634372 276341973 412348606 872464565 672640932 815288380 257050961 943235229 18403123 902127439 204808472 324637939 453970977 578490547 950428781 982605141 91491270 557551805 774885252 988012555 257249363 774132211 332010787 443972268 419998992 887459444 395102671 869856160 793781069 864373429 14624034 694660788 920382149 927070446 713630669 783188803 119094425 444008077 438446722 636487218 215889491 339089750 360329661 457190448 778162380 800093574 530722510 612231379 893510177 987729792 22987398 948828782 88604672 411879995 839211766 989944950 549593218 851179650 617981071 815084760 127588175 720289332 101289978 783399361 98532416 627851319 103893115 935880612 215289555 923684310 301972566 897664996 84476203 464450982 318588962 942915179 336211714 680088612 35324402 979970590 207611239 308281595 245858598 757479397 846606090 854506829 925761353 971804982 879796921 885587877 451728066 753447005 785552369 914121939 550346942 917998166 129565523 778847056 454724722 876497580 913874082 949044781 866555407 908434675 181944098 988431992 173241589 963471654 881427082 918953768 980044899 989356288 976340728 977791004 846955085 968933419 963358319 988427323 84327525 817087809 106340362 441010248 337318761 848478592 94696424 489921506 846545308 920192373 328425694 769169804 615058297 638939044 63516434 991093035 930310771 959981377 169833298 445510952 763431387 911062718 75675472 85825493 824147211 866295924 337946639 420248408 886842298 909288737 784433171 840643149 129515938 247347194 309645409 441033440 55896581 889845969 487986917 960716113 261094185 436652484 72787919 276348790 153814807 529130843 803862147 935148630 52392320 483367285 583777576 650408775 145038041 281486419 692612778 883923641 350275689 457493188 708912859 740500156 498966031 523968276 68564019 244841745 904600433 951411594 147699702 912877860 443626525 990872073 341786416 348207702 975288718 988922943 384755090 726279638 824503093 888761871 198521372 447411979 571436317 593135066 793565702 881672381 669853517 902112444 583743823 826462550 225158151 702051911 410501808 718657060 803465226 866783777 911169908 928380956 165332578 974579811 450574424 997999292 45865417 672119821 603623881 885340256 842666044 921133617 522035447 603884362 484057869 648130449 203860619 717000229 457016150 683300836 844779050 871553734 876016353 896182666 368806648 680748193 94553548 649448857 955935372 989237371 654313541 898190019 588235643 591574757 68155397 541240129 247860802 418193622 858255147 974106196 625668196 854560460 794482637 812697338 388812943 654916292 342035541 610087335 322586200 875761003 392179098 627202099 844317871 943714586 989131537 994243576 732190642 879489590 199481432 929851013 727869174 912066060 646982772 809708797 673812314 901120279 657836220 831369868 117832089 763022565 126679706 697973182 612611764 938952554 334598825 558937985 639310699 888140305 551107959 753175330 674415379 767971045 478896493 884609450 642943789 763646998 539889598 585650857 29581836 408929475 779892596 794589523 815262007 834011031 550370595 999666257 939621215 955366830 47004931 427366336 262481674 275240838 733719794 951149426 84278585 945078875 674262795 876325010 255371080 788352183 617939781 657774897 658250094 955668447 352166481 629039216 743370466 942074544 667621312 936630043 750063874 822261783 158902642 460355762 945959754 987999312 973141547 992018412 448760385 825120627 380115437 968245211 905408749 983953290 636770780 826443246 133743138 909971362 650742001 661010680 929935058 975342382 196829196 198502478 355578682 775897259 859537264 887795813 764766198 869086654 960140929 969747403 184052940 211530144 114219615 153342701 350877253 630245186 75214918 901889007 877678709 901505854 650267462 803091418 715893763 935986335 45112025 215276993 105879955 167728547 330968584 508827842 983912748 985677036 867499662 888234634 523174435 754449270 61415814 788817241 557230945 842241974 113812730 386463778 715481994 877160179 31351536 568752124 72713378 529963868 401800645 549104712 905151378 929814121 852780162 931162558 537305706 988183019 159025504 346524383 552548063 887757125 988938315 995832078 426694693 723078857 997652280 999942622 508631998 961725593 213183992 421801641 259514920 614954949 948230887 985122608 398717706 817680632 336608757 759590391 411618572 709920824 260557631 458315094 929202330 964359365 567052798 876206578 317503885 817620622 210243693 675755215 507806392 815470885 159014596 861785727 450440690 961783368 211328283 857474941 484358476 735021839 681995647 717483908 872605821 957601921 314120182 899980978 993114842 995223682 58630970 154857826 384675312 598524299 225079426 232530954 432987782 599889563 732044893 779664700 352684414 531764802 756640438 899027353 353619910 676693742 107062804 667353601 884393468 989202990 783955559 991724413 12005937 943450277 379385014 452840101 644296263 932333212 425788050 465813670 562978468 582225541 581835765 873210108 721092455 895545043 215903164 499631561 39668564 123089225 831722624 862289835 139255966 754926387 998615319 999510744 929482151 946670957 33781867 965910736 82107355 141143695 743080669 957481136 71978402 565224253 216884958 707441616 537704664 747496379 963726623 984991875 235024717 813854708 697210199 779628986 732932415 736017761 707636340 905647395 357095233 875765531 56168263 467265751 883667887 889727299 72493970 908632304 705140777 998791530 609547727 674066211 96066985 98108861 948615945 967469249 61730628 241039578 668458049 938543620 798959824 830909771 515300417 996992400 48058299 276058662 630245730 841018750 648689118 826397919 676689582 745102876 892363166 952091684 47658124 119005216 318196598 976226342 454417163 838116133 485291558 715461061 954520791 966899869 804608519 816353154 178514707 338086712 728485332 852925209 654763989 975850890 948803949 952898460 195416504 450735526 466129130 864150896 34453079 682687700 736482824 988312909 65153832 182839049 125823673 973203093 965484236 994680298 771043832 945492766 285708981 693777823 573506988 739044961 887452310 983894411 693853716 769511545 237632467 612101335 560199537 928420532 321052716 795336014 529271806 636922704 69703306 432335688 133090317 990528485 377588595 880293573 883008026 966762226 146018949 373356014 852444770 915141286 465785208 857319235 344686371 710038384 178449763 394495416 402002201 448293023 96977965 949606236 736002547 904912349 30005803 318480347 158836596 767450061 629501071 702264780 9164225 309171188 7539091 306791122 607336637 751230016 446782173 520256112 206075335 586919081 493888658 587505827 157417404 408671160 859880836 994471139 493331514 770324674 634324846 846265743 236057221 491547104 732936308 772492934 599081799 936341761 954180275 962858164 278092134 904795787 723221755 962554587 693434270 924011855 478219865 589092668 407850825 850173963 895082753 923655191 609244800 941765474 711061578 927284948 771791812 902405684 284055367 885510564 261616977 582840667 945088469 981331904 539292010 620188860 61581011 464129489 589684012 990745242 210038154 985624530 204221159 505642551 914682547 997733621 974479688 978604856 468056493 970101638 236729257 947421312 151502739 985238618 442986542 742607601 976657670 987329531 674464456 846305709 8227649 759295387 228181794 688556156 489458008 775766372 738791374 782486615 265051487 292569947 734454289 917928018 549311275 970852044 593934954 745726002 783350029 871881363 50990597 112347726 404604263 580830289 417098098 601783674 595336826 687170005 767725017 935050999 568564053 682446698 3581880 646699909 317059530 391435303 748842453 987147066 788877432 950556660 216904784 857375901 17693911 939380443 268704752 344377866 878734565 981705202 279583653 783257805 96609224 273740208 379997750 919884780 176073400 611460852 867021437 908938717 144638763 387017840 441152725 517994346 145727807 389440987 410098675 450748569 965701800 983082402 642719948 707979124 792390354 960373194 677752365 907899555 333054564 866328718 397574687 994276907 415462871 527872569 905688610 962101591 241092092 738190490 734737400 922907111 640899890 859174435 648274733 742648618 751283340 931470116 412608399 431317865 69234444 360325961 66944167 702550334 218200291 564624021 590663900 987878413 549834832 635806312 948123706 969961101 355829187 711536615 937579477 987141953 166388321 613827796 15752645 964022321 994664993 998188758 33654423 231117305 9662450 612283767 10231119 596549822 338993888 429937170 457172898 957694906 116584103 174787150 180997373 472995410 875745325 946889155 983505883 994204998 8966638 537365850 536577809 893513604 720818339 979623401 240811360 796791310 972209786 995463846 150238296 716338958 338439575 801252708 384917598 421515441 493140309 852648956 402541284 897226120 156581308 819552894 198140758 217468502 543028967 547763405 525700601 783585955 630316694 999849435 335993651 499350942 986340114 991031602 727860399 858384724 808069926 925241947 536661781 723800125 55670567 300825338 704577487 882440268 672476767 938412271 356915529 676969816 371182991 951875655 603163580 748152321 715813438 901934303 298144964 828956137 835147696 901550622 104018978 292429770 35287589 866025837 957585489 964664078 280709242 748641843 608563002 931630010 458412659 960533564 978017683 986723469 796511881 948591878 708802579 783307407 547971140 786571127 574960184 602132503 493858722 905261398 233960314 381104350 493050504 497268422 458144565 967869618 816958226 954075101 856224806 951374663 25200771 247577690 725150379 740535587 714942781 946330369 872623261 915340956 984485382 991100264 560390353 587132445 18508471 634877547 220342974 443210128 354037839 950491865 481652291 805964713 574628911 823754607 168068692 843558420 31912741 445962886 968648138 977038018 873181798 894313413 985997773 991894889 525692613 913689380 86955541 616314184 419774865 607327151 787955204 925140860 497198679 790172867 689801915 830474615 306692695 469801279 826947845 931648764 590501857 924785063 218949260 652797812 192712550 761528653 530665863 539611714 965507126 992101471 249718669 806377991 246027438 679036927 617388110 720705185 766833434 852145631 184679268 493633161 114156722 714549651 385995060 650154451 674727910 965595679 384169499 505985686 365987342 402575226 618482086 731011547 786783346 787077274 550544804 570442084 387115972 410147503 246225958 470158063 972047726 986803531 518580259 754406288 937137936 971669492 421805295 618783747 941116337 973157896 442520559 592293995 92066910 418591967 159958309 182485167 385927546 940229238 621051862 712221866 923845100 992254571 681390385 795647465 652982293 969152839 717467993 879749243 778794238 870123113 892454381 972050899 811273942 957558130 363606818 548320870 925826441 998386790 60908820 877570910 817512323 923095780 171369458 852388492 710167078 972129823 984920531 987544975 718037224 932081906 531568922 929250972 859810208 923383761 519293687 788117268 572961620 679030700 212100547 731413185 554951329 631892277 358811041 751067593 738634114 795374767 644122807 795904694 531329375 584985405 331547917 762090029 561334166 969955909 887424213 913518114 647952233 670891171 527180561 875978868 191317675 459011527 136441312 436198042 723648450 758381647 438519158 630883685 510745971 897162579 596575129 741842226 257109904 596601072 372570442 808993447 373213762 628277586 203108238 229770617 163705816 511178043 324707215 421395048 567583804 786245182 929755759 973142031 227002739 843465920 562643115 864903469 268739248 800019324 647656465 979961809 827269518 841138792 160808838 736760856 717602985 897019742 73966410 225198161 734736652 839458279 11855171 774920623 227898234 341454591 714350601 848468132 981165374 992058017 531289235 911473130 281821652 851648922 711567238 928753065 626937883 939365067 700559656 978108181 940395969 955374575 963799955 986378850 777756781 879072412 185319949 883648172 364203411 961434681 706380984 835015518 614985655 847440630 412578887 837378601 91379579 185019520 215363925 392558712 738656837 996035512 857541901 948903419 458962993 573767797 915084078 946151624 577322032 986083294 703703484 913484495 220527562 435997635 599397019 637442389 314293722 561997363 556109038 999775002 851914454 974303067 507621023 518576296 7662194 541508768 73922269 429528291 602773405 920920277 586608022 883093371 580433330 660596388 619474544 759958066 993768714 998410645 671465608 676864473 358407982 791139961 648197408 660475646 960095942 991584132 613296711 632244062 782618086 800462047 268762228 517183053 220688413 776511102 958404837 961785041 186780880 511762598 561549572 694521674 3927259 164934000 929916675 971073903 525343084 541778064 894927595 983299098 256400338 793569884 626055410 801349224 250622668 265523203 616376242 634378073 329636350 406714121 738694334 813846198 568331008 691068740 489766717 652035537 580378340 929335427 303520586 406685251 639697223 928363727 332458131 597652847 889091388 911074040 847381000 907776265 912659533 926645595 831759926 911672400 10958812 235360736 822905498 861676511 368660010 660731785 239896169 486232985 443719021 689133574 108170106 805939158 937246045 999704840 431731626 934898032 11491223 616355531 481470518 499642420 975155229 988290893 271072105 547013435 267467882 763705324 334947987 638671346 828777482 884006418 965778120 993072810 94661689 698037881 658680849 677467173 582009870 724364433 123233684 450849077 496112862 695103109 554607888 622585125 310204980 318708030 502628558 957338200 727317805 892732965 618992823 729466851 621481373 961145528 631350612 783459980 448718519 630106991 680307668 934456260 67581738 851320645 987875499 994120725 296314464 886200894 919329149 993869665 262542651 764838504 748169309 917863284 47703552 641575255 710363137 795921325 695127379 775905481 378149502 944809040 265127099 361761539 526223483 799706621 819160528 843621080 572170267 819630649 911325531 987673897 791433214 931537059 955988377 960558446 10075140 70677789 910405227 927109048 726453677 743717177 89701359 848475896 993209298 995921790 172888472 307512347 138164302 254321561 240376612 900191633 550815516 581103040 67493963 627132983 818844994 989088603 414453551 599658875 131314916 869628428 683004297 751884296 585180697 691974997 414642742 550441596 725019127 980325678 13416679 95292651 697835367 925942641 490465036 923082481 95605639 457849842 881222994 995592927 445517293 981329099 365866171 594024992 514995477 721695690 336423092 863881990 122032509 295548463 996258918 997836126 295567679 927071091 637393468 721480185 825087274 826539870 418444487 659620384 653767347 813807368 674800244 685549689 368422355 685106847 625429086 733232552 707586417 823442508 236920568 292768929 855555312 928165618 538844695 794150344 4787079 738315236 210223005 704537067 683692570 689728673 961508825 972876630 168159938 454665698 832018086 941930656 219563418 599289764 419058968 549317487 732265801 925708280 696091999 903799493 963181256 984464631 60251945 517328822 713531985 927289730 151257398 694841618 43122755 208095576 491198933 811923965 860974190 893069395 250542724 496722824 655938595 986970632 643253261 845453865 756287410 850176474 868794560 936059918 850504135 862675386 581176664 970637809 115625709 455639237 408531920 967409322 296374987 338373009 226422548 242122355 987147866 998116655 383695021 785966576 330194855 371211295 742041071 957568499 481304025 711995441 319166209 866344938 280783712 385756546 413703402 444012035 46653811 479793332 60792526 196089867 188977121 448944790 117351915 316408917 696983627 871032627 630556804 923355984 723565681 734377787 754033893 861446369 445722868 660996631 4623767 883744052 266680585 302670208 930540808 986901535 423380969 610462362 129171415 764815633 654309698 945678192 763693830 869464701 876784661 913896764 487387089 866436481 358322087 534543279 637405256 646988905 954170124 959718217 95702747 367599524 561386442 724750287 602646423 642268045 456919071 976871632 397129145 966163976 876871667 936236519 955652523 962606083 128154845 935301509 654875243 785388532 244238050 452724829 737678135 865472922 433221531 956512083 170838761 961720313 178197776 402918130 141960592 516776591 506684910 671609127 381859129 874704678 198690043 392627033 650717486 740755593 648784452 874542273 542169847 975227681 483625502 846136201 324589342 689945365 693353887 947544271 111950822 290078978 706469552 885357278 710343269 901088555 997315049 997581456 414078789 751903205 692396341 902416414 75059384 380267680 758053906 830949220 424585871 850878579 80063444 696807827 398844848 488254206 557925458 929996256 122969807 821487437 243207526 863314104 127526689 301149139 719276859 767499772 240117888 508086435 709496711 968781609 987790939 989116820 984227335 994720443 927600728 979344300 755837496 883402926 125851054 916139544 80956986 646275885 269220352 495653826 355740987 503899790 424740154 617472493 213937300 264487372 303105645 312065804 345496236 742194209 541287665 967231564 42170253 846074674 828968936 955812699 713945715 757263642 700081031 872135223 733761288 819368308 164879905 660026510 790101216 917391019 314664754 610304541 459248356 779539766 177828265 372222276 257603236 985776579 959267522 963184072 352916970 535411728 944583062 999122121 525425716 795957243 167563141 561349408 924899315 964416458 532337211 901453905 407474388 960412688 465267554 671136739 466252679 892904926 370237826 592025437 480099334 984224483 314920110 348045110 399178131 579554997 239151106 498088015 407122050 584991134 116312376 194409013 974536770 980006338 798594032 889549492 339906597 833584358 826005139 904802613 524163283 861823850 526062594 964325234 292923579 875237580 155875311 652659380 661604923 705686616 931527246 992789408 228860120 947853887 978387439 993909247 536687023 943078841 831102073 992577241 91398482 919918958 34099671 933675073 568016432 918244109 203314749 304185192 966393154 981210000 829091826 833549581 309897466 720780713 815058550 852114694 874251864 911524110 146230626 360956719 449594760 604434970 521335234 782098733 273761075 615533501 269384514 959923089 822052004 879026263 635535611 875398670 365285010 674000318 186288837 672639142 833894674 907210802 3616772 277347754 549119760 824597853 645583999 669327330 653249899 685921673 257536134 814760787 279971256 968958140 996212999 998391549 509113853 676836671 368556877 907194765 781484885 833261079 357886517 683749508 305070595 763945846 470986686 508266966 713214125 751034020 864833977 930150935 343747748 402760674 99716267 430913960 82624012 511616729 950035652 978724587 314701914 367392151 622616806 647648655 674549764 818291871 204210182 832658750 859079963 907963134 97780180 871336120 325541598 611868491 502235480 780356480 47977502 202887847 164809573 731971419 69402581 548264506 305847578 578241209 964991189 995983801 259573079 678198126 716132273 911260342 503880911 586516501 746550173 859782892 800092815 980387907 960267374 986131763 194095537 858520118 164992724 535046440 972841861 974335505 643218995 777946829 568002042 766894945 782567320 950824232 554144832 870338299 514530657 617822127 331684772 702110004 452582983 710108889 972474960 985731380 359162768 519451451 39404120 549278661 337019686 573172184 788983870 986508988 579078678 659768283 922635359 952041933 189654430 916824937 660360216 830156937 893051338 922378162 212757953 747985060 353187873 368425751 65602658 827707572 220582929 710774460 511399338 711356412 567733674 826998473 454948427 710650917 631350681 998128505 80820539 460371950 484827082 784533047 362230675 739451073 101316775 820826812 656409 172044241 563456595 819466641 252290305 591245497 220729316 265613653 864216942 955396231 286359836 497244884 50817512 756288504 783407864 835378299 915213445 920265038 350399884 755623295 602067361 743685598 266129438 612516509 732860255 774791108 361996086 914631747 96676718 975910724 589232603 617320803 458464487 826556418 640612927 651781225 446377910 744801611 831880737 874909325 152083645 494813647 74279422 661486426 325446803 718236131 720340669 743700679 870331129 974703178 216983172 973694010 148517865 687270137 727539541 842941287 413722181 485303518 120361806 455456217 8552631 656356524 273783799 598026001 905106000 992942735 375577692 835315117 49337144 749072974 468790282 527959406 815550995 869943401 636369467 884105174 887119571 985844627 308070438 452768214 862800172 946074794 482296763 639482025 653612383 947629824 331171656 398098514 813665809 962882387 687752390 708634017 133930546 776694389 531328829 667093426 6730614 180388091 668893922 734483299 919425175 984853218 743625819 991268472 487512132 745633952 361993015 950584605 456640808 913433416 609414564 832345718 575250169 893785269 367142695 696861826 336572492 570384583 821779506 953720120 551502785 916457762 515337096 984580156 557703050 625558566 423935015 749176393 128696112 189799540 482593670 514127454 848493340 918419884 343022056 600376367 656940338 857536831 303591136 643699491 651758414 778030926 997654998 998253743 339072154 359400040 324502501 694823765 303032835 574623997 420838749 451472900 14137073 882711475 182043072 246479829 666380041 722576461 246187525 632423971 69911820 409483634 167553625 721282895 928736592 966732760 870309404 904683140 590854097 725327230 202402411 511732772 46114960 952288177 353305111 383964533 890648659 960522487 786583578 953002555 949351926 978917207 751958104 980849171 390874428 412677379 377910630 731327132 958650290 965909345 207265400 627998149 515612506 961221629 979871057 986698482 170301220 322990241 795926015 817603865 570488783 997399452 798743248 993805406 91865106 536811124 851352035 865098885 846889162 996535234 759461549 978845963 498306982 549561930 480530740 753382586 807255405 954761006 196116461 702500813 782145587 949728002 806576197 854154505 881449547 901159557 109661494 501770509 585808609 633070747 472710712 574149063 897781923 959845477 151222215 466579872 351841021 554385403 909016115 921587050 474301680 497658490 360099171 452366683 401577032 437947740 575649910 583983382 22733187 500037367 695952782 724853326 858017120 967033048 143022983 948325531 193686609 472327897 323851655 363934226 556681214 850515037 795678395 997737628 697022546 827057858 198918094 393983665 52056058 173899415 197630810 934846611 46591598 229405939 630340746 753338532 298921465 318071486 477348546 956353782 587605172 948795032 965039284 992955685 948682144 975868231 918262059 988152156 993963730 995869231 634175413 760046722 368500480 614295036 93640166 435818440 337366553 841444076 596697388 809253508 365607682 724865569 940680209 987188395 949293611 988441307 536582236 997374291 888375968 996259463 58042650 298569070 67349288 868397151 542884566 666699061 593473722 613579892 936610459 943414324 738228216 757702062 330415909 644828542 7372189 92294231 256509665 834456894 627542768 971311035 950554155 957015623 355858741 520337210 970621374 995816289 391031158 639755486 522735483 632803436 531806268 906524356 919747041 939111610 373019276 412354832 478760531 892580413 321162311 983892867 974194000 985298961 419748975 957336650 662729205 845867042 876254399 911561354 769473320 963467146 378410406 939598307 512650220 925171966 630938000 911665964 670194050 712597390 169730124 939875953 359468171 397164478 790384516 807857439 261658837 819507689 23961769 305561823 360420758 894474646 100985166 139803842 824511705 972890116 499283160 755977466 253824715 259484650 464970028 751870226 636712074 851412502 543223217 600307440 245664000 532177857 751422785 794182114 762557929 792022850 407521616 751592994 325586057 399676480 606310683 790081061 643455983 769768770 30848463 556227724 672141617 851773640 482315590 842093225 698874671 919609800 528050878 739418037 257025131 920707490 504019788 726222217 867229773 905166910 136740277 791466960 975278808 988916207 384320574 836523964 687272891 734855729 614379235 861013103 486701578 830390867 732967380 884851457 230869608 350285617 424293915 591241917 760472766 944505892 100511607 846545056 205131034 558655329 541349016 705714759 303784057 573897844 475412888 717890482 23860628 227254341 133679454 601522731 806220263 941276794 486284596 893604617 830992147 947240940 377553043 413603595 146225692 375848819 42240017 190421314 919952071 938386688 937070164 938546170 48444653 812797900 558218372 587767774 300291694 448431462 852528970 864983942 12896225 837382954 88384498 570447132 296845752 878852175 691805128 841315505 445575176 671922020 152399065 153788782 418711511 600325757 594347392 631913998 937479427 956445503 725731920 754498626 124068009 406525398 41493586 218424928 661488975 950604135 412202723 453463630 247085970 742407993 254506922 367182832 918503198 969383093 479998036 928012545 489436750 708147751 252485618 345543545 549647409 690885891 77677956 204630821 899968360 922926749 272354530 789508386 602002828 668319780 619588605 803200681 135633167 806273063 101322199 662428106 493425287 584928227 608443555 795717944 170140612 639154144 984108884 984247854 460540636 855977442 743552562 916365699 356503469 445358691 221858232 624934008 145133294 680688448 649193147 718511423 46448717 823054646 122658996 690996587 334487369 713371369 635972631 713271897 506040614 758362377 440735383 836254627 438476538 571961987 650929029 802772779 542276104 576216320 461944048 833701472 634379850 826414950 644925397 669182959 643078208 689522103 83393137 588875822 373487344 652465038 191321892 784823978 182237125 823855567 499102032 628201155 690949630 799775390 408711104 743838146 754186562 846879994 282053118 859937691 193514547 791885920 968771964 979846144 188164751 899778869 26920062 781434359 618485084 719025290 14055227 729959493 68438029 607612646 465919717 973874529 62899818 414225638 894040290 910765306 295761106 750158222 197081203 998265190 445962372 924485528 157534795 458916040 486707611 611294561 904838898 964807661 957960433 992228180 524434658 699254095 343710980 457752583 557611294 800462197 967050827 970903858 731053482 998596797 499692564 710626561 757145124 912082677 565993572 647820469 970484375 995310987 887431157 975819117 937025018 983124145 337578980 707748086 202970687 854138569 997466178 999944267 783848265 830595094 179567516 978672682 468706624 624480672 73153385 451983752 393921469 827787281 689365741 786442023 76876327 570494698 21946855 961932478 949458171 985083875 991190211 998209593 104334502 468182942 711370123 864332515 352917243 430027583 267883731 642090440 158815627 654293348 439141851 759677648 465580139 703930026 725915229 827153182 651794646 710473965 970994564 976767855 98217597 188350815 193449609 690018489 380722162 569234834 777895804 986627651 232063026 391561649 996323577 996554470 345351004 926646046 653367338 922142813 86604260 694534994 496315095 580968808 229949495 685162025 890561024 922584410 964757966 989427149 432159483 637378048 106765152 984351507 513154183 515605764 424280552 855600151 438509167 806404002 592907615 623481687 28582776 817688479 170677375 922177265 551938857 836199616 702541158 846014685 755122407 951867457 297713991 310387058 585425578 848297587 856025549 968238316 499896779 878222379 5440386 530410742 449529242 967380879 202613415 373070092 960034788 983034751 952933717 976592361 815600003 899715941 552658685 582474057 425367080 981156029 498996506 692732084 417024703 758546729 807614983 842240319 910109931 916011857 451233128 626209000 997672717 998968484 174302733 954694596 850946495 948110578 644993510 847660299 510076708 714950594 906297439 933919516 143054805 197883868 368012382 591800242 425404300 694105828 740289922 899069440 794247814 952284173 623711694 972218051 711576581 814198706 736002288 945036654 663898012 818108814 569857718 914672731 617843623 738965487 613153855 659350617 965685640 999004586 317996349 868599872 150544512 267344978 64363153 323201406 985056409 987827874 605669037 778547115 865511537 972647167 810915275 935424675 247901826 665387698 499972536 859014528 25286056 652456834 374005743 491726403 462935083 657304668 868099066 983507015 1228336 194860125 776187389 839374430 461353843 778638960 507989702 794915077 827508673 934267540 662413937 915031077 204663103 364026689 48892691 406376110 102715240 483917689 312521358 824587741 325642125 867265628 713136115 884963629 212150389 699266221 613381349 854653418 34574571 351420347 775112083 802911580 94816942 548872433 573514706 923815739 796733860 957177129 61579960 451835548 141693240 257426200 12048000 245655895 941839607 950148671 486354941 794543438 907426799 931263646 805713946 934105114 280035100 946708370 909876727 919832250 660658946 814186327 683898273 984005125 914929816 961280771 610181980 754930757 61819254 528621916 153007642 282094116 95529615 900264082 522455923 891539965 450926225 605211162 59337842 183016295 449446112 498239423 899545207 991072406 886891551 895670635 829019455 982903218 451719541 523084935 240620428 386905496 77508038 150139329 209544118 987414334 85179531 519477872 861976499 988362504 642198044 779223965 549032722 919244749 591004731 597464493 407801234 786405525 264854031 754747058 679119554 760706412 284709766 819429432 589781813 628997233 830632828 843453692 493699350 857937393 931159924 963623379 909781146 984506684 609424053 644048244 733122653 859727337 971320628 972900115 183736136 783955285 21609616 67693323 815937753 955591958 413674405 541720214 368936423 618765489 533985928 622193319 998784365 999792680 800307259 853575198 252403738 884248058 852520537 857340190 33894893 112276498 682675108 906178348 219307557 357709307 376912088 799120233 73984773 229340122 463477122 983284629 644207544 686235335 36873489 298414553 720395100 762111646 272472165 534550093 573167228 577075287 677190187 690292108 390484196 558493106 757858649 892555625 493860740 778245785 782183405 891755436 229604428 499303783 881521631 942926390 304699440 352459914 324367081 750796081 838775401 972778900 78977457 801307236 915140433 968007735 905222449 955966054 660188660 688195762 500824351 592404815 766599359 893419186 183759397 481777333 801801449 891251848 906277854 987508161 70730351 309246477 996442613 998521756 95912298 499389650 185242457 318820415 55462731 476697374 470326589 545965824 248505090 332290818 150622519 858256089 799434006 948854264 570205480 705878059 981672358 991427826 542087783 760944645 235721361 309922169 674675107 834166462 769719674 993284647 855220609 960302262 958504219 984861737 913997009 921231647 280567862 852943818 6418110 381168530 854036910 876428726 355919841 554649356 421594753 955627006 545309162 724394324 594505196 645366151 24567190 996864515 372817393 843013697 269724263 978403022 603234202 815001276 799874467 950094238 142274317 801447557 938548183 943155272 552602836 611394345 705073347 786240451 221702796 962180675 926870800 975138066 261710815 872595025 342624612 510090847 537002766 910520789 646531914 877677417 171348629 988748683 979763917 990303834 329867406 704957902 921410711 948853028 246220314 908939592 407330089 519055270 160306793 633433163 620923302 812937054 687544176 953649552 698643364 878790801 347992566 621046945 44576775 367461925 821318589 921958158 897656969 982328191 365228520 903702523 740234405 978965558 468464183 528909713 940251092 977695760 546420187 733167114 350549673 862328194 879084673 917755320 164806611 824606403 758305897 777552054 293443084 907325011 237193054 626820740 949494404 986584240 165393664 721290559 475944675 711474374 933510288 967294741 258989624 416178826 84855792 241384180 57106678 761688495 45406079 424184348 621953111 771282404 564071665 717585874 638324516 764486228 963736380 982096337 109478107 553564198 453367328 805622284 328018771 441026354 547690840 672553297 246419200 645405034 767523052 911232550 717313251 751231115 152870330 838151409 339108286 591948627 313039551 418385279 592872570 650411930 645494607 701457378 653851 242717901 807293239 886265255 102816815 619644900 16275879 342158393 557536286 994029852 487723465 501783983 297954462 827087965 650301132 692703221 266553340 771151460 592870702 775989913 280395536 811178168 580334189 849720641 121314527 677854400 306126627 472231302 640311116 703820567 133434911 203883397 67858410 656507622 959958431 966929362 197117873 572120332 706990832 907942449 979346363 995622163 961798541 997044381 614780550 772389205 912147058 943852703 632521284 790658325 836233141 921511249 207665366 523108832 375666892 640362842 415885210 775420259 283905572 775150446 966952180 976318135 251070316 570168084 739343700 946305697 934635170 960081498 414181492 535007788 712376642 992698282 605596638 659557858 639081241 655904074 657345537 943221353 703225575 887442882 991200890 999493326 998642535 999003072 531267369 771318559 377101078 490112949 865266851 944316679 819678058 995370321 701986597 976561937 776719995 793360937 680650207 713149564 966521017 976208761 26110760 411164372 309360931 362724732 680072563 755720143 451182547 586734733 462675037 571734904 124151770 450115035 203622679 974172545 648181456 765724829 7944709 542015292 271792481 425991011 894727751 907492766 902148731 995785151 309178285 778258195 240355409 774781999 702648615 875040866 103342592 990565282 332540474 645537519 657703008 932757904 159476221 807057450 821119801 830441256 63597501 516881493 268522859 562557734 28542643 803335040 750062388 879683290 269342549 354055084 99477739 107606170 316515852 460484912 884068037 906290749 868047332 912295010 706499603 935391528 681926649 819353533 957995853 997572849 645877632 696042986 121678456 343916853 90983834 188789966 793144932 856942938 224664306 824731048 743727502 884932470 189371065 421729449 925817231 981580354 995843677 998786388 108620712 283005780 991402599 996338922 137684284 515134969 389785617 843626535 526757514 586506252 365497216 500360378 497264300 586932314 713993079 781425381 65709252 88386910 280731424 343273601 91830570 758213012 902043898 997535681 581918294 997425520 29232474 473844899 541733334 668014227 131621324 836497212 419420713 667880973 111889837 782621859 805249175 956737182 744252698 835012445 249078291 604900992 267584596 741101631 77976612 996574992 510457206 841263463 791243035 857557126 47926650 470925665 64070903 277677669 28429499 210777755 750238506 965192733 774184304 776785412 453102927 755816021 790936215 827149525 147290256 985760306 564699711 726606397 976730919 981133530 536948392 698179464 972535137 996186478 187436895 937668820 659321678 843509031 387592429 716644889 301152769 874143990 579874277 611780189 163880095 226211905 54414871 698399910 620757362 935573435 158326506 548549008 366916156 963245775 937452262 969224005 942205418 989519508 594934077 933558441 185403609 192146303 371002131 616309120 754629872 874636603 353317030 470278068 848834695 865916513 870735615 943220457 390138830 780544420 311468348 848031631 367618957 667097421 29249279 163942627 36694385 915357567 695494765 920274019 229071234 693431154 235346172 857622090 788391751 812672539 269384013 398588324 204893180 333674131 124427040 817330842 988143568 991560860 299275004 679759527 306045039 756946515 627189956 772067238 274598916 870574416 253631788 522308046 203864888 836338788 673765938 912604093 513162607 527140627 948410174 954634738 494909540 595436880 234943896 758318053 364212443 421794583 863486244 971043689 880919408 986765880 226388528 984429862 574590356 925882991 979905391 997902196 662717224 898659002 676243059 737371691 235410756 597918025 557727471 833690504 319884276 583247104 20686375 942844522 264742215 463772239 523185325 948236686 440123814 790128675 273853680 323551138 388580088 569268839 606957815 680679768 426159160 513251086 647734603 904983027 159631321 653035823 236107148 914864249 43167456 557321427 131920561 781163962 266009482 422604589 682760390 910458546 427603193 772415986 788249544 810478243 82258495 826901588 290601236 673985301 238494432 475776127 973102505 989633079 936969462 953940009 180465405 776935559 744483964 784214961 929767906 953415724 115997946 233065145 214243918 613050849 542522068 958676613 568902626 854809663 232564757 839319359 935768873 962661531 63917899 753129874 270786755 805207578 528134386 830227373 805565203 998742779 665275221 843979562 501822928 956683991 591604912 686920913 130859951 431240108 269428552 741581866 871986302 905294626 658731948 798158354 989784376 993997050 679238278 882040339 591820047 954935009 400032633 438286741 341641190 843105039 800984305 803540680 954776990 966332306 598409493 663065005 943685926 973346257 721426631 904769335 258815289 929409551 23435332 482105554 109114170 920268514 3555874 194532718 970596217 984786063 817880140 819787997 379533311 979216527 478112366 524143973 423877066 996297648 681216924 955304989 467388041 732336470 953489470 976096435 763034552 939893326 78804554 631703351 160660718 363412513 852569959 893699262 69011536 189963818 805352413 961672252 147965400 608927431 903314208 987001479 881001338 986392804 961873579 999839095 588022854 978966999 196908434 931039814 679584042 822674600 262304628 570738795 795895436 964362382 844220844 895085054 6315026 79271713 445463083 613573741 414809045 503081683 40469103 368956627 903044386 984687443 538334785 769358620 518392628 593380287 200352338 516811295 827663182 927196506 291714004 340639649 82797524 214611762 154342550 969209080 767488747 886323533 903790214 974435901 187516341 483611241 101717415 807914424 165766242 637086011 364284350 796055030 366238648 793913716 947063250 985820426 981928994 991508023 104525299 801931071 527135376 846927288 114172222 685750226 328085294 902147864 948969329 950259527 774417673 974711878 754260438 987299995 456266271 742013175 401184206 511237955 418598834 703023905 701668949 981731162 216673101 611321301 624050458 824191226 59872953 229990728 698974569 839949743 668124098 943188259 778989110 838386100 450461654 991213950 271708018 275863957 194627955 803058592 225101141 312425005 389316227 947546492 450241096 862232727 298568205 454303029 909259995 933838891 172739583 781472800 176677034 802906781 192226876 701834230 889311245 904163279 329479343 915638546 889547184 918474552 482260463 579358321 862928526 978150807 575766153 667804982 727239441 743131364 838957185 886656000 651104921 897468023 654983432 938745954 591616855 594478329 385445755 927133017 978614295 981361417 740306376 981648950 24466420 50611434 213823509 398514394 335978015 485067445 495344173 871698917 927802943 998071406 651283132 911787368 641998189 697765716 810416115 833055337 780460403 794919345 576515003 649842068 717116613 951651803 353936709 901174229 720110614 865328669 148431834 376731869 457853652 761006708 233843993 309156390 614677705 912627472 392191217 799589380 276422410 992014816 474020122 666960579 397515317 554606272 630201121 992092513 715035549 760560231 642383883 963485108 33422436 439617284 821772231 892356653 846876010 927411223 177611599 287102942 698531860 817133945 660224073 841402054 603710809 752115412 844481568 932451200 202800491 598979021 170193754 382230912 312401436 767056588 329064168 678923947 114389083 350769782 156493792 160822615 585946302 870278644 82918412 261134205 832876676 870539884 538269401 698782225 851888302 954120123 887529635 990188654 764125992 800492751 738388336 840271197 474277784 919451652 924890972 994821689 907322129 924742907 557248317 688570993 350804886 765457671 294317058 758340005 730578277 811469138 101858064 637630346 152516700 168924069 681053557 938194790 943573257 948724771 996508847 996689290 743725749 887841174 739879438 900532183 361417992 481022514 424734120 973505503 733890383 773426257 478543255 985671573 469436137 520842409 866890256 945767902 236160355 619716612 765075189 995660170 3868909 42072937 468367656 602179608 314796326 834937722 412450138 654850580 641297023 677101832 811191834 907473752 564630286 966179447 827884868 898733050 288863187 318388706 67524309 417791121 472538616 884814328 631924455 849711563 968746201 983840544 156362327 867728403 393606720 937670061 623259450 786208289 640300731 679430557 164956425 173467643 298834104 783231788 374247213 403175671 919680449 987172456 470850611 713615810 461738429 558397707 766153884 860183525 311295662 832512062 520122609 957005670 12006199 703914344 771278010 802381903 55224714 107853076 546417889 601932887 248727813 720793997 433461880 534733915 897073488 949206867 471302750 512490697 300000974 560839795 453881744 863115800 684647185 729781394 570349134 763152717 171633333 892569646 449938451 718141973 858643515 989921111 559565078 741846182 993204940 994227147 108843563 555783007 778585549 881106868 396436393 479629795 515939774 917154642 472871124 937077930 132294225 395280258 911868990 979732616 66264052 959594596 940242885 988385972 732429652 958518831 600335002 905187510 741990859 901982876 970285599 983743132 361223365 833822623 849151166 897975317 590020447 949721002 109075483 243592500 336359019 489180959 888461356 934326221 106412272 296995609 417507434 834173384 254051865 790681581 891596248 921462193 73805474 509556079 488710111 834027996 462866582 887243081 504289271 598046234 645297236 804061331 593015621 995991131 481820626 733734781 199227439 652837613 796607907 850853985 469302276 861561269 65661438 830919947 744517430 952197273 101580168 995995981 934191475 938716345 44855766 604310483 634526646 733282504 978227382 998514961 454790501 471515537 14320612 805641927 337684859 636987396 251816076 527300939 233939660 847738646 623337774 996030002 834575375 857245677 635270424 645014597 2216813 66807633 512382890 813762346 652564220 990180489 969632540 970391498 339302875 648810267 421743811 770017896 651760253 655516939 702834728 904127538 890012330 956718444 151176404 339910006 957373790 964095960 617253850 963683777 387927379 445605894 852686166 931484938 466237605 667409487 289789587 893301147 666514182 937284021 198041478 742518808 416635207 975223505 180459616 353538851 581491589 630626522 49107726 842573752 184934655 996464956 264890033 578426820 886488036 926012341 654599877 783204046 132424553 138550282 175882853 759344296 656242667 793523731 738521157 768339084 144640804 326131617 581940253 932932749 470487014 952674746 626029528 882017139 754121555 951419324 114870762 153313379 706956147 940114058 813991214 834973493 85782880 87869707 692030839 739339967 649716275 933568424 463206189 703651564 164596884 761522485 256871457 637727176 514540184 994884909 406358289 773420258 157921226 538441652 42673239 291286233 576745535 781615481 950900068 987049675 890380692 902799745 484102161 862484915 634339143 995348081 21691676 159603576 377127371 708931351 451326921 558057577 91956293 441068298 672600613 922041969 862498831 978624485 463033123 599143310 499898354 825042775 880991131 901760143 10628595 679067182 240472529 496594191 139012323 631200939 489025104 967613573 315107368 726124250 461514463 783365979 128641603 415382239 801483869 924185469 892781958 941251021 290541770 429793676 666411182 742564706 569655036 985649328 232942118 983994093 872888018 976325016 70042390 827197410 660164409 827146292 896747779 951040594 925646605 984310816 16494415 502705904 897575600 941865096 277782745 472796096 550940203 589064464 145490340 804033212 329398533 725245563 659435512 698853242 761454568 773972797 241628820 492315680 914320936 933347372 467179285 696555177 694038013 816236033 803835204 891687881 217963950 616389409 755568084 982959715 675491081 914584773 521483476 768824599 34226508 253981114 539543292 808530118 2224677 744467921 495513492 914397430 125111785 521645182 540294919 633442591 59967373 595475551 1423769 514248417 120716516 777056653 266971166 495434717 335590866 541197423 596247992 835481413 212744351 319283798 371765578 873707617 776485515 963623280 328599912 710752031 894439842 895205076 253527560 599667974 887907707 977732492 122403123 184986806 310051898 707068461 915904655 916370240 667346619 913913496 291112867 710883431 511810518 627204916 207158399 713557858 392657229 736779567 250111254 779772377 163123648 952694956 451669718 659981530 515571430 782894064 797172329 871281995 579199184 937705426 247712855 677181007 466954249 692590732 35277220 309028519 438058004 867997042 36143873 961975827 619314410 822091417 820735790 935300902 152961027 181538006 601475359 726793060 269130941 982283470 318949106 599845288 162792187 335017752 473107856 608478683 446119517 572632709 609445995 742701109 617549585 673610110 215147573 297429659 436405944 686005560 411263900 838712419 844338693 855828070 500141504 881137147 328057827 935930053 624489303 696126474 481667326 688484391 620883934 922857155 867261054 888219174 136106024 922296899 54592140 676834409 847456278 960173481 958313536 963680831 499220202 922682546 842798864 934586522 804621422 892514176 429447613 936802336 901763007 965164651 638208491 788629663 188595562 503660969 450049977 632295526 338022539 605886045 414858085 447788981 26750684 399837139 326405018 456129564 495989335 674010234 588776787 621094673 476197085 620712736 921194394 954365664 729642768 785198649 944194885 951367863 123015583 483946158 369266634 620510167 22600131 944233166 174978928 717894650 947325115 997451793 873652184 882893695 351106006 952500953 189303425 532536579 296593793 918326879 149047891 515678684 163049128 173715317 1348283 895945018 148507947 162339381 591402315 660742722 412337705 965365240 940953886 963618477 834213977 928422791 28007904 796621541 369615712 410699684 339163233 550498905 339553286 465050816 935904817 977543448 586402881 918995933 562170484 876771301 93625624 875853688 884242891 991869101 695162071 737434442 738914066 939307367 767763501 816291487 630502969 975762655 492505633 497288610 278071241 687308571 862833264 901262421 897389763 991957873 461507859 777562487 996444622 998416882 264586177 778498933 218219187 377842836 552749494 685907693 507655365 561879192 474599485 685233894 553418365 889065109 400841199 697720022 72785812 786523236 446574310 545766802 452470820 985544250 168737364 499809253 375837621 929230060 39181778 683489329 68877194 542995052 880239253 919614296 717744327 876847180 540868205 722159426 357383047 857375537 374654394 520835063 994018332 998106408 17683527 521989758 788804297 975386962 971433832 996458410 527878663 949171765 144009652 427644696 772564806 964241067 929327499 997504716 236202887 983184304 411802863 719228890 525831367 933352387 692343883 963284283 965941327 971278533 348305965 940683895 25834013 328023235 198850612 689085088 144345493 924489028 640407401 716552016 819150640 851201864 475338611 727185306 211558786 417099397 267900515 363247677 48850386 402138537 211828694 561123988 999348466 999433113 946062500 949709292 234170796 235687111 39193914 83612457 505384434 891570631 46764276 538555956 429927763 822556633 889931169 958283177 235463245 676201458 484498963 555698941 763353195 807954618 919685051 925371391 272465597 713548688 984677993 998439335 35705728 875445568 564585643 575993790 928946419 949147997 648753257 860293551 642033541 764569705 327685969 546219216 774051733 925333941 722484163 964778134 815629791 869543717 768988246 827067836 465014407 720262059 632410545 765592250 477806914 803773923 604656636 868286298 265955641 756886327 307294656 704965200 160116761 432302132 725424021 760883717 539176796 998756369 625801526 636228305 792828421 948350976 790546762 931685013 805778930 825825369 412382191 966887111 841860189 941089929 404832034 823744414 771214962 775635587 333610510 733978398 982381798 999821322 738412680 878479709 624935705 836132133 712076892 789355489 141248120 257043134 914345887 964565943 954142699 962750250 50269166 178839350 775530936 793462732 86267149 183571425 854415914 897017945 15613407 480888958 957282414 968609821 805622995 920872739 459329467 536458526 395195960 925195885 393533842 554458592 81835114 697569875 47198308 810273084 716662535 998023135 89620373 464576359 98541537 356669034 130864473 548772739 282908943 524239469 205135992 458577125 426722836 804500587 508335613 566430721 972942897 988361241 573366434 821751048 883226583 923450650 829910951 939210544 816712580 830103711 383894495 417817451 437164613 470907288 955244079 982600933 29447086 628680442 44910462 822381010 345506998 882727082 793153097 796242836 297823611 729181289 183734959 785767603 403434244 698223753 91768709 254102185 527621536 907157575 397316388 597041625 100135672 203114754 223331725 882406074 397538053 990800713 510883946 681489508 517778871 707804468 542432870 766776464 323157749 553281069 812838054 969334522 916078376 948970411 967352455 984656329 160210594 510614735 485330841 967214622 123673147 385517684 364455216 614477726 29453859 442744424 242959865 895842783 433461072 843145688 891997694 900806543 618939429 838251976 263716475 822196345 516927159 688782862 134462925 362218557 859894780 918795491 547651346 728345085 968085840 970474456 660284937 812630401 626845396 627008230 593364730 628883338 474650272 813713999 246102121 430665824 609642829 943668459 920421682 950568928 27791891 323574780 991783465 996514658 347872581 411970813 231010992 680863529 122318300 849241203 179294133 623200076 735723644 916930957 985600959 999548908 596366956 948249940 293280457 963113062 747202766 817673390 485106176 545288395 603980788 608357641 261901339 655850793 642313094 987959028 743420140 979461144 331516828 734962653 282336310 529465160 843403940 901886927 979800913 987243124 157719368 345233702 902985869 967176557 692940656 906093380 600440840 611926903 335726822 451870700 201072769 826659044 492403617 901871693 61476428 878967235 629788648 709381456 328447123 894447128 34906092 889105712 348916723 700005291 845098038 934484028 140170714 257842970 81529121 700469298 385698080 782336682 474469652 968459335 170991974 340303258 239904017 553488818 586736326 973155697 260708851 335968679 35821431 196302845 556489991 606138590 673559594 843271863 29663152 390359888 481454241 756342503 623337477 851643197 108224891 350176902 765481774 857557085 833984024 890005003 4279983 366159414 558835210 935865058 192694832 613744614 404316733 835706309 10415548 980590198 806539776 978055152 835591636 954454508 802487532 817989305 33089695 54008441 216846717 540501583 861039287 932640333 389235094 723972496 146406617 341009000 257190362 700770981 307061798 539354451 61907347 175284258 110741793 559783512 803155502 844187096 781729528 924948809 692076043 784730842 414818067 834955249 720633206 751339210 327458620 577585836 367529328 959206907 997056559 998016855 776539533 913708170 601014986 696931883 59950555 522488038 402876305 678961308 119862534 682703464 258405285 751574602 445871794 469456707 539610653 976797628 664533824 844516456 101817851 818627582 63442043 826535657 381518214 712334685 201064404 870450194 319492437 710493335 288346256 626794745 795264394 807365163 609199527 839017804 428871784 596582099 893171510 944141851 67416920 287207290 221420030 843524451 383815879 478088063 218865575 535363530 211987719 735777248 203136261 902650595 383835103 943147569 734324464 927132323 878047486 894487014 233770226 769420038 309920058 992983136 153041961 855717828 706996699 797144575 310968701 876520144 926840601 954229970 363749711 482862136 225657671 277331380 966873589 986067367 239673200 622395188 664053348 829500274 166688223 233405813 845191013 887729435 822274282 928024701 915405099 926635961 215366306 669603338 696881802 741599192 611423058 768096084 563894094 835863531 582830552 872781264 91896960 402538328 164132647 513946102 403890959 427808201 898225137 995606354 715538524 893624414 634302640 746233444 527024812 550867037 484232318 900860427 839063884 930091748 584650408 822229661 735059232 765414528 720770368 957754747 450867462 519069395 321951116 749288741 990760251 997388037 299223391 725539212 224993128 435312268 927679733 977991732 716182253 902077066 617351450 902438591 415838335 990988311 945868420 964146381 932801016 944091159 945614391 975163076 49865653 667157677 976916700 996235111 181369410 245739434 162271914 698748337 40394983 468177910 238952200 500230633 3994397 821797263 861975854 900405272 983777272 996564003 529987187 596650014 838659276 955303465 216942158 629392724 392092955 460541011 578454298 669218568 984540037 987100476 424962544 626967378 936359347 986828527 385235471 487550307 290380531 469194203 801035093 935375692 918285078 962028926 42652210 849615311 200895886 806534968 287556798 747675397 27446845 239349673 960690380 988909299 664485220 814775066 413993214 750072822 606727097 970345920 582952058 593962039 191759384 423976045 569269072 705536831 961231071 988421398 536327619 848976082 736991611 909337385 465841671 493512422 149863692 186986170 954587881 988648431 574230807 587517881 737437614 889847217 985959155 997282619 379439072 589990978 133184451 925101634 262959581 415889208 252733210 895496438 302239721 567375359 90683053 289274846 911525158 936851788 915499966 957028475 391064223 621358463 544285456 590161879 196169427 492795067 85654409 115406771 504988647 592433453 433076601 494867581 540047186 875292685 367437922 670010003 980523603 994522107 888755528 963052466 424743816 720436038 960962204 975868706 223939705 559765393 280862662 906267395 517379039 712409313 401652540 498992837 898300462 925692836 522556978 611703573 53214973 996812416 405742336 640139084 308086105 790352521 7471960 145720331 298670364 310198148 454725529 616439337 736881286 800017931 74932280 210814036 103873601 146569851 790484809 973583266 197790191 854241723 500604467 940286747 772606835 910585855 994672949 997895371 821787223 923335903 376961910 650123808 191343677 565326280 649311410 679939618 840300882 964070255 884723953 941934983 298253359 477174094 925051924 996431626 680157270 942754844 687467491 689127828 453975345 594749303 900781574 959155710 390203079 478486690 748412707 966864020 160446543 472183684 918321105 973812534 957278527 996569097 702747720 815942260 219242034 233840801 273296083 804043563 818909690 909711348 997246707 997956218 926351310 988370871 232137916 829161273 951305804 965707324 807489874 867211767 640437749 970564367 530480663 953795838 878539946 938084707 874448574 954330360 391774059 963506059 82349681 430945482 401884483 605734418 80620528 165137099 894806465 929953973 866256215 935895738 669307696 723615876 289344897 391268921 786893737 812821042 810293384 961684320 332329202 875294739 340794935 720071366 969879514 979338251 390792657 784798931 225015368 280474212 327488764 711556649 691817936 980428178 646522544 717916644 6320514 326686154 976427003 994739605 30545963 328467393 724046067 822871014 555394200 866291219 323329333 636680678 945004849 957095896 690393796 942443752 979692181 986264145 995034490 996855772 635536019 827773065 499877956 967405710 479498246 610242427 83731260 659952950 338375771 447645253 773493339 918622536 202467864 863400679 984091060 992813681 275028206 880537529 912521511 974540476 152235484 257719262 319816194 940426163 791991437 808479185 125582468 499644709 270652614 819055695 10578803 118986532 584439896 743211051 589039516 801627808 445216856 898188283 65994986 346234411 722614386 736722475 162717990 673912601 51417358 564995901 422362362 719199786 146842691 434072761 44082803 918899493 987118842 989571390 544314750 924727280 272531962 732491404 128408251 725222594 471552551 557089458 354629665 789482605 663509748 900221018 231230217 769246294 722467193 882514976 593041067 730896688 458409169 687768898 629029856 745398358 603358524 941495841 350291974 564919888 676006027 783072738 692415995 694105158 755180904 903124641 425595564 960126987 647202971 785968533 171410000 973209047 585462669 656635299 388367796 548604393 477346942 760660051 913561914 989235724 971728585 980519965 840065331 923970516 801480828 995791422 772106910 799445538 691181589 748928300 974163078 996511891 610929565 911705269 927154194 942381325 122474672 709306288 401487790 929191976 58867044 793010878 162843977 812178726 640255915 780617666 450001063 705388811 315982841 560833986 712743456 993467605 865500160 887748032 800024522 805964198 999992057 999994264 820920092 962811529 624734445 924647967 332160440 693262058 107285567 215385939 429451906 745277686 258460045 926929841 889554082 966726630 897271455 937648846 574814802 676802560 653608166 796210132 384150885 748732529 861002247 878032806 755477173 823265993 354197318 676796257 170231247 940087948 490801095 814975201 791344788 931092146 915409295 976977105 768271061 800463722 330564686 715547228 856259575 941326632 905190408 972976356 84593975 965359021 728595584 818092743 701049309 851891540 799340627 912973643 378286433 531104841 502144367 761630975 65109638 582897968 181471600 870530373 161514708 978321843 738764508 969373240 635244465 946718944 396155501 875135193 819408901 824414942 648398672 954827231 308270344 953261868 452726878 882982566 356079283 364042329 789122910 937218460 586433174 899610877 711007529 818381763 784075045 825588572 253504803 753280277 573685986 983265294 350238219 807604652 377169733 740467018 348456089 465568565 362565292 531200863 781139410 826914923 41702501 817364990 28419525 883264984 134358420 171962010 645879498 860554869 243024548 417479511 405346852 966710789 250337262 816172430 6250469 496615132 224082902 635224164 285636458 924245288 47354085 890707184 731878372 995974069 109937768 590114221 209727137 836153261 675028063 969659759 95902612 319987431 811676493 886141884 356533773 873757751 820065050 888548517 55277437 766302093 835762580 967063402 598902351 781379956 250169518 688362697 970365328 981455572 732277914 890272828 67493929 634227425 971914533 978603168 441829920 645501711 658567801 918874119 573081406 923469724 533878658 639988660 852330845 878620689 22121519 642229852 309321466 445277753 909426989 943078743 270505751 457548015 319046204 467966359 953996960 967277851 153003643 582852637 690996546 831080767 757502740 979389059 550495536 713771573 981531292 983273875 206557433 363636539 882354809 986630532 859948747 907919615 819234551 875851622 445237762 682742645 518627969 867204593 50209455 476323529 296490070 781533099 432971893 955795419 254280726 366130900 909036409 963441109 382343896 886366196 13779935 227063278 571392650 868736521 168988390 945145898 252169786 542602896 878531915 884581630 49774935 979187105 570259207 927767317 344745976 684617436 327704747 579178044 540171798 677282112 728700197 927879754 241549693 481825473 974167822 993459164 700015521 963761646 454033395 774530399 222197734 475795192 617480547 887035837 900666965 923692114 659745637 898208147 909918954 977853709 351693452 563505922 763100893 882306622 156581727 667306449 959453773 961749039 868028561 897946039 758643808 969332631 371711786 670924511 854083903 933478734 682805909 712489640 398006143 767993481 394478709 901935405 925787309 963623321 29619052 624655094 678707939 780710849 268995709 428789441 189980974 519361887 490557795 801839668 399640738 522034353 429179246 747090843 301776312 601650778 23647635 759154980 872219488 950048877 725544129 924574060 585512875 712471152 495608546 845516469 284919570 798965083 502277176 638102013 96709216 261125508 318360795 430740790 514790845 651846673 461448426 891193670 570016052 645030953 246221006 275664051 381870494 664862175 582058667 731497875 575321050 798240258 10886007 655467807 303481503 653255772 174761657 231659250 1373447 615549552 443565660 560054456 277788956 651812959 414217688 840362374 315866797 520945858 259247233 803318957 254622586 745799856 977968272 994471801 735720083 849701101 160965919 171797765 964383564 969519674 784825763 958691493 477148308 683074027 258916668 966107645 840433100 988964778 654863205 718061851 890717041 923171930 66286658 504111287 128065890 736530244 147298846 340119264 562720689 631913025 780422478 814769063 362460478 809579430 70663161 811612879 238907498 662342093 465135008 915438373 78734959 560450890 107067617 983562809 427734845 756931724 599688709 958158508 132370877 277871801 175531439 316608387 114887254 601372240 444355964 459121752 691798876 935860768 721579231 859643751 368692299 374009400 646110131 977637532 787475119 855486912 246949786 322728326 525018919 658161347 987391296 998135969 764478222 789501875 486046449 851484415 296054632 565377255 685832945 939545306 451898356 995269421 35893079 881357526 430713501 917325047 696453122 864547436 172863655 536438190 792063782 922136740 947732668 963148980 403527735 790292361 17926177 808259061 210626510 404679909 722809178 806716603 983550132 990749265 32627721 423235914 493541121 567631038 868340638 902798607 163385231 185337482 144163091 177154842 846957297 930618530 62096262 193647551 767785204 885554234 651520140 948698818 440731811 923837588 519437751 840925040 651663306 801003575 516891164 688152238 785777096 811324188 65369655 316296023 649440540 765223029 962564992 975671922 242143812 689486084 928238265 996850546 157149255 523001027 36163729 474135253 591832943 743268113 534214921 904766591 64400632 579757822 10801123 338321779 982605110 988308946 89224398 885554313 501117296 632459413 264457519 961545590 565625364 732764535 460023485 556521242 373423174 945864526 557081583 634904470 650003713 946013526 801070049 825704371 67272999 895101386 200399714 668684084 620332495 963836070 748647175 995783164 66688122 333671746 868555151 979627555 183771842 634752811 854489835 858700975 223985505 435628141 176928391 328317177 924517890 955578150 298743367 677444089 134750916 941830888 124269461 520913662 477308440 491002743 736493051 756791038 653793390 982912516 3746064 841994349 13467733 895542494 552425385 744876687 712845460 988197091 211869902 614334680 314433165 485410587 919601349 958613509 900927114 957436208 620709902 693288442 558034597 634809036 519835045 795099087 947895165 958402752 10008005 845974083 102121710 471500000 332010840 667446947 631979668 837441613 525520832 827896628 775295603 899665528 96237085 995338486 650962113 859414441 964001865 969735453 127607891 736777703 743455007 949517515 246692754 795267356 652451852 836145517 769569168 848775791 678756895 946705497 263096190 410993066 257331538 536821024 759980925 928344897 419907887 935241947 876851342 897745156 174597673 411396412 495234392 515345281 567524464 643483649 187558960 896830212 279629523 452883657 512968986 679222778 220403307 663245028 949144332 955717661 597860406 693140290 317900481 416591454 132004903 436339813 859853100 965871918 680717735 976537741 581002143 937441288 437093186 557243663 446612142 964413887 439285716 972370033 168533799 810338246 13581071 277778248 29952503 462217626 845205919 886089099 957260276 989678437 6867478 204593399 22085702 344075564 711806901 864742364 405513469 854294421 231856030 486445374 822933314 911604615 71246260 840953076 18290420 204180747 198752417 391908839 378860914 588601494 711004262 777417832 349519388 557028209 194335441 402752684 623110562 709314739 80100736 738294804 4066805 944991798 861817983 872851855 145913069 249238799 315543684 930480114 961302063 970782224 561810851 900830950 525440403 893004593 85796913 656395724 1854810 615121731 2900799 977934774 690862762 800640388 174362164 828669296 124976720 543552509 957627092 984436036 784332586 901652417 37119181 753778263 106966108 986094438 496519999 833641361 907940218 951601595 671958546 858985625 573454191 992644449 875100228 973041594 403103691 613332220 62672743 126469958 736336283 978373131 30643729 902030332 268539112 962637071 16542729 923720686 851069622 997102664 95003619 921598131 217776489 242677297 451615845 759930133 528417216 854653618 127662007 241311025 605806315 891946958 95996582 332452213 382879661 678472377 773240679 777919940 507140817 942964397 862011572 910944411 881502891 976740082 31354603 282166306 99681799 400564247 416617875 480249626 714188785 943938091 341500755 350830593 938132988 996960462 484790934 894905314 509733940 653839154 649827720 709974250 666358565 910261126 215565815 292591622 953197837 979703215 274431125 851230915 967823518 984809687 218608653 881749776 885945682 973196926 188710989 326002684 756140244 997208880 436283497 821549080 98437926 984655656 864088657 936768958 986864673 991645689 725074791 847069762 540124692 758448272 578222225 650001785 171004964 210448929 6782930 520103219 877889280 912404062 743311452 971522356 721055156 764208055 968391626 969991478 808316186 962700752 86143152 833200739 576022078 701702711 683913413 818577533 85705286 757713087 242059480 981942077 994973107 999886481 480560329 670631748 349871622 964898285 784920984 799046054 965326754 999124147 455946603 482695668 520088169 787913559 577207060 987032761 843864999 938102402 553778437 644098664 485940910 995398518 704669282 751421573 654090307 694267241 56839302 485975951 9520596 919882661 368414988 879323396 348861802 367541172 4082435 527418759 465654461 986513057 656075720 780971789 532552864 655747881 700336339 898538547 395411881 479083533 517767146 595802681 125501048 733119149 841926483 950657727 671199639 903289923 117868981 246094658 878731873 900983575 9253166 827623982 845698164 934556122 646727600 973506350 740147067 982703982 358923431 925855696 622837531 697082535 793087598 901391251 485857770 992320806 780096759 943379885 250907936 338018346 772278393 900415502 496144112 820977433 539868363 997083243 689624997 861325643 208356894 884853246 402585309 791576598 986528469 993668534 433177570 546967135 655840217 834587883 592968540 768274511 451687908 820122346 883194555 904845142 279825782 683768656 264971006 630772058 437724490 538812864 597961348 726876253 191808730 938564754 964818661 994137653 884028419 936229790 274688887 646155177 25802508 722656390 170222570 685705042 696487859 872895202 995224323 999786348 828390168 983419429 932918711 992363438 119303203 430789176 300075014 374087447 634363053 934749097 425085793 585354525 195307713 470056439 390386293 866832226 458746082 804840074 336380381 622013810 291693038 633349143 713623438 898795522 252825611 606150778 171447631 975652794 68284421 543439142 960170375 975878623 201912366 946265849 997428347 999055789 951057858 984872661 502551446 816320565 210459459 236693314 540805483 728038043 534533647 725445621 80790496 753985490 369717895 798182855 765232770 880331615 717667024 722793359 150896007 851097346 777152346 927550496 969788189 980118183 117529454 265142459 593511163 913883674 696294727 714569463 799470763 841197228 108821390 938006705 627971882 761753866 696556464 710997192 415831904 439533219 541737087 974869587 542918368 634020026 383316657 703801743 817454928 935810844 847770070 952748752 522380340 690393353 519667543 543021447 99424063 382580109 865732653 995014023 541988468 880721372 217423012 923308498 894099811 999708552 400162012 409292585 563982771 651138637 784504424 984941209 902129461 911776536 206564909 600388080 986188913 994746706 477024274 816310490 358033846 810614959 25240478 35059036 583365844 751872334 639281497 880545854 141189493 562964322 606063482 871213320 468472684 621329785 834769709 883626570 520270913 665541444 977454425 997100810 132422779 687340653 298005744 803053933 651691918 765221666 101764050 899105470 970782747 990118861 177310942 482055304 444620893 714673536 713988541 963186265 740008863 960583697 594419808 597533325 25880021 94537353 806635794 954764709 218900865 671863030 750487479 937033360 101345250 746244586 597619962 678616022 533733501 933956962 307151110 745246472 483190226 835416757 614503896 981793730 598684786 809900591 70826492 513058668 707245094 876298744 346631573 737288306 973786461 990933685 707620249 992120140 618614582 938699065 134959632 457869774 952052140 963312754 220563437 886899033 868220645 952556851 519222140 595062115 513027230 965422590 877630033 929359028 192671898 348020246 617024874 785411784 188760657 758947309 257333604 906506630 795441649 941330489 747190144 886715915 276152351 565100802 676843274 907781014 396641954 619587029 472505779 530299690 392185228 894164458 772729588 964923299 303180360 322339920 680222113 698641547 799068315 838987412 897523596 982542161 956231457 974917046 244687559 904550443 88354513 323588790 312150738 658579787 840060228 988631836 115702203 254435887 514550083 847062977 41757907 352675332 712561321 737613814 278944893 500899527 287951977 713624062 915067819 999020973 873345548 977697559 867798862 997050362 47365171 386332821 20888787 295095989 170005454 765030523 445141928 573281135 882496409 998917543 826740506 982001313 297639864 472024708 558287713 897579642 214402117 264638442 652578253 684144716 259614705 921758043 924787106 984112318 480994408 645580209 718771756 865787789 629819324 752097824 139004489 379674202 944547615 956471612 363528833 611121150 67222035 651391975 777284319 875900543 37049245 690511642 526698535 531628604 965987221 970009255 328642294 830906781 429903756 591529861 176983176 746932936 746054747 785914413 707991828 881288915 428625283 913379334 342819397 750845269 729289628 765706141 113537491 885029653 3366746 561551366 211135568 491228103 778026027 851446923 194865081 306972353 650507983 685558197 126107482 130611631 333637083 474693502 970404518 983226978 22714657 998307561 243581602 870320226 585376932 832226986 239215731 539521820 94223868 269481790 576853820 892556611 128753395 512351723 752654190 759426854 881521363 947047997 65524490 142977497 768558248 957165578 748631524 886078698 590175855 721602399 840971740 945635452 556680657 678602763 385569249 737433537 683927748 893416787 15379049 213170214 342409905 371417374 560000515 713123264 544879909 983909935 514336353 692884172 956566052 974865700 166645034 251334161 798864966 875420823 279898577 618273634 452846410 651336495 427124787 682960119 124572540 769520889 961083115 962849926 761165180 995545321 56147520 880384697 887270788 895733057 922994022 992085375 840927050 925650025 533057217 954707315 803295914 846671693 398146395 868438954 216675099 840551776 185065237 786420988 713599238 849986398 929912396 946689653 947524498 978001683 78481014 782829258 363322834 396964394 390689594 391148323 135177605 255051491 745932862 846017514 923895327 969930382 499523364 835018980 519640487 557457774 596300637 696435836 493592988 755894051 435843346 680797442 18277076 729817373 23991759 529402274 654856653 673388893 68256519 324116053 727580792 832185310 676144525 844282841 12136342 743011382 11603024 261823900 139284691 336997470 318312643 964854049 62950052 357474185 145118957 562890815 126754948 230863933 72215792 899710167 728569621 907072158 511247822 756323086 753282088 829956167 898701609 938314348 694340748 802138249 607800068 879209093 368313957 816058154 252810745 680154978 370114956 633069182 322643305 324563137 789369657 967739313 526112814 923891414 703513186 778048414 436464327 791588460 39610902 780702389 503882885 653513337 333080845 335031819 403894721 854921556 556251320 710617286 81259799 775109745 468157493 963386930 895444136 957990578 146483392 228784026 949584964 988600784 131915201 343143635 803609587 982775739 639914799 836318976 663121661 761592209 621276470 982128215 175578897 566360194 795541311 999456737 860935655 912922011 297712780 946758944 530576315 628403851 787434152 991035862 766880916 784562595 940389134 980378255 277430838 780449256 721567381 872966528 979938448 982086970 390897183 787255094 636318047 911234276 991397123 994362618 64899389 571785105 714757 104147829 892048516 908312744 676903467 872092646 636812361 961828444 985616650 987514670 81466927 693392701 325573309 393963148 52016441 606149705 411690334 876250874 976292682 998167396 704330083 956780570 695755451 921025761 730136711 908640542 609623006 628315204 560889112 980933843 829389931 872474699 930789711 973974897 615327521 947227288 898068747 995698809 702984975 946838086 358575354 621659360 595409268 794172904 281690376 963048551 649976837 841341745 456607009 619633815 5010337 279132376 788820204 910075217 70434844 955425430 24445778 477569547 763613893 880854292 687052688 828020827 675357834 912831342 591792833 980981927 318092095 757610297 465430889 617716607 277525195 705878932 512996539 667861945 664897834 844671355 148907673 483226544 941547966 996556429 300269890 640920643 897447402 959567173 129991678 183447229 702594447 755998735 980604128 985092398 269625595 529444690 867979512 917686954 333259719 791931568 609877520 852994534 432236146 931657451 441429815 732727302 9331491 354689020 624547402 842093254 410668864 674837546 880711253 991495784 860487397 928074026 347801885 638262738 719321361 970801488 453539772 578335689 626685948 834489204 419307829 995962329 907775586 945341679 603029971 879533255 791333276 805556207 610541520 647898713 750920519 819701184 945274966 949398765 645291913 681706822 597742985 918886533 242282229 950069452 215695257 826991017 900969100 966416490 190041397 634342366 929900059 987528827 201575688 778182930 96001162 174564755 430031297 583932745 870063525 899515864 152117891 908074290 756677174 871435778 316942355 919293893 325615014 862515007 831611451 886306234 200779524 807907883 461559280 995803823 198113174 848549440 214662663 821995820 100836053 190254199 223175620 712555687 341466961 782624190 982929393 991461758 54673816 184419286 315010810 479375057 184894482 446332089 787463897 940240657 871680479 977073798 228010159 493913742 547892193 692548675 589907626 948797875 137183739 654436141 225258348 697274878 172351422 405136138 993178492 996245511 105678161 758297561 549176978 610205032 610279189 706245705 729266383 768575369 6184255 75231635 176875840 998247104 560930395 892788462 714479290 914807606 131123689 919123908 128025751 378156395 38519206 504167487 151095942 441242808 700937336 708453526 387064802 614706728 18319184 399326108 785947800 869493027 765944564 847040064 955082813 997873765 235821217 700927199 810212777 857421200 145373387 528419408 856251355 857652031 399841029 634024558 424056217 749978772 180097490 215101336 716683497 950247768 799610226 832000264 976620911 999578579 359370421 993324488 482729990 998488632 217098548 223351406 558269060 810444534 801552617 831999735 499586372 504115546 685195717 701010869 60740953 433692924 788789067 876741411 31524356 744199090 109993685 381281853 415355443 887564335 398712748 569122124 403029249 672697905 62624431 216286242 41798457 443576911 377074868 606188625 484887933 605596756 888597353 991654670 324640774 436180562 981259230 987516024 567319415 822857723 690053135 884860869 268789014 279039309 538063548 749078007 847904966 963593215 255630257 483029152 100156847 141470411 849723565 965176945 565334404 819020661 414361480 669589492 117251046 508571682 97058794 544943563 197021183 932707486 995315482 997827372 5791794 364157623 344152515 644106543 54338105 196348487 989910472 993622989 989065227 991620524 764675906 924440328 102322600 868009388 997246329 999599023 914284754 917344159 228044107 400695583 713510777 968174154 547579759 569837262 999800895 999929858 28047216 525883704 913497262 961640267 949636505 976247475 25654338 718265983 922816580 936340417 526577351 769853790 14646837 690170302 811957313 817542248 500731713 920929358 853697775 903145196 845433004 920603936 803805717 950990202 998019955 999695811 503598339 976517745 354012555 943021381 748716966 828295945 307368041 999685984 533736200 650460646 308218313 964404604 860907459 901952892 388283595 406901622 862726359 986829228 95601460 637055738 906718830 990582948 958663540 985453060 756598962 837398837 120717873 575674881 949521820 986456532 159984932 550793330 866167872 993350285 517700584 583784755 676254542 697177036 190883120 660096445 603202951 853835024 440381061 535628611 337781132 904439432 126151524 866082465 159138472 238359579 68195050 818723120 119065862 171810474 34412000 896242126 736418391 806120657 704576042 935236807 648659899 922403510 605244432 952853416 484321051 503043767 592080377 623805922 997153847 999048284 568393492 971976504 689212603 920262727 316966019 502248797 234552576 932138584 904935226 983133530 90381469 947337164 709401266 719512038 291990918 928479932 861090165 920813753 553904133 617996866 743477127 880432043 109945724 981365899 960177267 984476322 612239226 758200156 742532115 783385508 928962511 989512082 364023995 567440746 405075785 889212132 463245158 906035519 938495309 980082780 806383106 815657681 774076830 915979648 147842015 411023456 533698149 987194111 398778994 615863288 402893275 733415660 438855951 537278433 481515647 505408860 885598296 931315364 770201085 854047094 421545634 876264173 937366386 957136498 707945360 974034240 918884915 970224223 985401204 994327363 871185517 944896328 972748024 983040493 529813849 637752058 189941215 691866471 600511997 725273325 472341405 678388188 583558642 605161040 295926260 743178589 488224641 694905234 807727323 995093302 926587490 945372584 962030888 987777924 60867183 351472854 180279000 619232989 29947930 486563245 203896073 356520990 144863084 486462812 957392542 991819731 150169816 310548059 707530508 972360169 616572089 943336459 791056482 952285540 979598245 997845925 518473021 768416542 331663517 759909499 670038746 883027082 507889276 920290193 231826345 639961557 631887070 712899445 566220518 957259716 190219142 745154612 16899780 91799992 691832841 701280946 27881392 480240395 677217331 926683814 189866629 607335436 620238093 798863947 989427277 996349640 875783267 921434513 256970888 791696756 787024721 809901139 42660745 803585050 535593770 603663661 672223679 841929833 545111869 571496345 638200509 906134336 834651527 971515978 462378131 718694988 290286475 460287481 688214256 928318069 650748454 778900663 75296618 973638799 540890114 746819377 782244671 835145125 913946551 985848849 328331223 474462585 694039907 770271351 537300348 756247382 281377894 628107560 822619481 887289768 506081439 767838931 711784533 740035088 262766372 861801693 289817612 613525355 395620557 955852154 770238160 926304943 312298933 404549590 436584155 915053074 370533281 950249983 340885673 830892763 149861111 268777063 518873144 892279359 476331693 500996844 334434779 819235456 70416489 617446096 453117415 730539086 320839040 386641696 917667793 962484639 831295296 978756068 883558663 933795180 303889589 741724272 312978948 701204046 131589565 701031466 582962404 588272570 40834030 762584895 168111930 856269628 346298650 966297834 294488194 587935241 867785226 879932169 670067129 755141035 106155652 257303045 434920479 479954293 502971664 865108053 796262506 893294839 150213368 691451917 316497774 828647190 795965397 948311096 290326085 672472550 356718661 586189358 385530344 395386744 171364438 789639381 941845671 996419341 884099066 977537585 792184195 809316937 366116946 534880719 613943583 715913668 730192127 922817396 399241203 970654109 384701504 827132585 978415476 979382034 676857463 734282288 348009992 845588684 982289419 997224907 946846471 949621295 826374051 877029932 737154125 867165728 254063851 736078853 269354143 501622074 888538865 988950501 180630163 706918988 17093030 307273136 742650494 903259781 198112816 397676044 946147349 981988356 127755889 728693304 16382313 256623890 855542438 924489435 615563348 663886837 503835289 933565334 617733632 787678062 910354764 987929200 934989525 987377287 507654835 948145107 807575060 896805428 465492280 556650317 361195859 863212106 569836321 915845342 378972008 677802659 300119686 974223311 245080609 973492948 91192696 857708515 722714766 870761695 205337984 681682084 563636604 976489000 957845773 978210188 79403643 562142833 214232674 318508781 3135906 167899357 286540055 548955001 337783631 585581075 466329875 895012390 640942526 983899215 556410869 639781378 549304457 680820413 570645822 909452513 981077992 994008253 438622011 489483147 684115924 856071825 346859892 506891635 128349825 895805611 943199593 944064943 689785064 918882942 138118587 432818337 481823445 808327186 314592875 546842142 129139541 248165203 207652245 732511768 126279283 179080940 102900987 473841884 297145976 547944066 23594020 617612933 739490857 968247557 535387715 647291468 49831903 187446464 720358283 947951668 490658403 865494390 30645568 881809246 276696596 701353077 316146603 755524352 821906958 865029721 339478537 376784833 286653719 899374358 315264803 798068340 471592493 918036763 407532647 425396228 239457117 335733057 314695106 699190254 863021018 944188463 106582597 501533879 517442092 934349239 307680275 980360007 629720457 762719966 299555679 944744747 825022101 986613197 987800140 994589920 172298565 505448248 446548528 483987499 745053556 873663855 268853038 279466723 457726117 975875346 610688068 706566552 435168454 840297500 540518586 767660040 1035630 126318786 6877828 453010522 944512916 970739264 365413857 980500382 474034331 692301929 453231899 671027387 438451723 881921319 39294700 795874739 557357045 899011954 214585191 677103161 491451608 892577758 47986368 783351099 517950644 924165971 161268263 329457460 277202530 277317229 900424615 965166731 520492671 848012157 197321729 939461222 471843453 649213167 380502181 885447754 915650746 985750584 533601421 862952609 328555775 335067617 970779372 981003270 986052146 992462026 834834374 914014131 143619379 720617211 685794256 945719539 692239822 762519245 27169322 314990630 173092675 681110163 132358748 324641990 418502904 932373124 107887880 794066890 633131557 842572547 400060868 536735872 164771071 425534203 746737616 787619511 870102623 930330950 408007511 672491287 614435495 912480213 207663688 655131250 274549648 894358307 758121860 851572526 564598078 909545605 228886258 600892752 773900526 787411487 540965086 716278124 391706235 622560570 851041596 976991811 300679090 763758127 223627593 314431378 520450981 813689373 939312205 980972710 565029490 970484025 277737458 994178646 647817834 654487981 46965616 165460931 204716588 609561611 287774615 348943693 913573866 968258010 192969806 434116734 781722222 966431460 821311855 831091592 953663789 976032840 49392600 228605317 593386016 672755973 299271866 807632375 615697320 981538982 522241708 668032447 497898785 743141815 654732781 843813949 524898574 699313247 851177754 985681108 789648970 924953221 309764583 788736100 586528485 912087808 801808037 816240569 37337729 803348619 750810607 835292753 675225867 819995043 175902264 433912642 934245986 941779225 847463447 929802961 313800648 388045264 333507365 707593027 266063707 474375890 700601895 921169840 884522741 939468669 725848657 741284815 599397400 989312134 641347617 707571367 30046079 813819222 509097917 979620335 654524546 921051479 622892990 950351431 210500708 999779460 350670310 377629649 25379174 437389462 783555682 893483774 342790998 893484926 447097388 488704035 983124993 988509448 468575063 915274006 359338133 791748841 430651361 760725308 350400038 767586185 923900257 933001123 416518601 789090399 575045420 672856017 294640814 707343225 260460901 902906376 99916993 268700985 895502436 968450972 709140260 944272352 349978995 563082664 155298370 556302165 172570572 410496947 558543691 641058893 92490728 491176703 656769183 701570116 119083629 583646434 617116661 966035177 511971481 746963110 759289373 827814803 252291399 337660478 952807534 992726920 52641992 454855551 705569967 848145460 407936015 747583928 505788058 523834611 597940382 642350408 140400173 810759686 940963420 944643533 83566108 969097300 434710182 557741714 247581241 965255531 311264805 994924416 659340768 676883131 205655154 653428640 364798637 390834064 992932846 993229443 600674056 742308417 697237018 703277657 961440674 994449165 156554114 282536724 236863680 721184240 807134297 915479193 285741549 587301504 536232007 945129729 248928998 552757692 797178499 958317449 575389763 784272455 419279708 820004184 909578974 939392973 567626324 756027958 846036970 989544397 542236867 599657200 142241243 943631938 945714180 984522377 832765887 840561901 273286815 799349046 812928099 999953181 235646946 632224234 695580758 700672077 842752902 951531660 522110055 595202080 129364116 646071046 816519814 868702320 913006186 969392764 700254199 787289139 142253465 451377976 253027093 691238964 387589038 901815223 9639479 156925765 534897560 903912289 8277748 227913016 260097156 942387377 272896887 817742517 705488405 911786001 420299010 423753897 50695816 335176728 798181761 879014642 64858040 351104649 827540872 935411619 165112328 285804221 99212323 980330084 428509528 802144595 590649799 773809606 508076563 626473088 30804964 471312575 291692967 973679647 726314205 784049136 461495976 570467808 433561051 753628282 41857014 403641794 8531473 284165252 687374048 860446227 178223302 746548557 89766915 293482389 355374221 495879052 740667273 957020157 526230664 892067486 690170384 742205133 753909070 814403128 620205234 811782006 203060414 820770748 503325810 700075630 892086083 919789556 631816249 787808490 67419244 573993200 971154527 972897464 175286362 463755387 352679929 891991597 983145924 989236720 254977221 358908628 487759509 679300991 933460592 936689647 799077913 950380062 260734921 703817573 424323053 689723117 623485352 795772828 518016420 763398788 496945368 740921442 483620698 627743124 777398543 965466981 430546012 983649216 894909352 912096808 25829837 443304576 115255415 258056455 816491816 826010630 747087360 775967893 909829565 991103800 198158143 672618956 507009272 559645173 386481671 423604868 908302842 911172041 780731656 898685580 611412673 879916189 128772466 467184073 474281158 538267756 401965787 994317648 331502190 496244908 334009973 740782255 20845601 749342565 402308327 521330350 691668301 733914770 192827672 354345669 176887815 816563065 659901313 904492028 301458862 870998799 204295469 676525725 181880618 629288717 946435618 980492525 72262570 882050553 744183913 880574937 466567144 633680965 577650101 683388968 901846722 976907788 881573510 910975897 92148977 808657617 820712892 915405636 82092292 974179268 883242043 904955420 69368532 251911362 746373076 999039603 329454683 950803618 427761664 761204145 532954564 670418750 367773034 618668764 372539863 926299392 258992701 503188573 112840035 476048396 8870980 531389489 96382175 339174384 960011073 990702746 199274117 420897247 562565602 991914416 442840246 780214675 803481138 974483325 537831732 955943122 401245132 607287983 596417786 716758556 462988251 645814051 495381657 843628218 719926407 847082082 378993291 943340810 405170407 704173170 542564673 900393484 912514117 922843425 797108133 881998213 156459908 427941752 888636370 929830945 10891025 585279056 591719841 770091955 79979917 433885648 274895820 849177933 239031151 841221682 604238823 739483388 385200513 852096336 745465913 745586452 548155348 772274010 504410898 641818893 23955134 420245027 312816012 977703956 511797810 514534510 717351244 798233033 65311120 977003007 541661866 640032797 557466455 765446819 320019023 514783698 137859412 312787631 948959308 969283527 283818967 369055020 491281350 686580745 343984333 774394374 35440388 573499880 105462704 896026976 821889661 827346301 413942432 654127788 920090491 937991619 821465189 853931238 163224797 952371755 740754839 897230092 941744118 979683627 76944077 957554256 797289520 980284491 419978656 855956559 456670050 478979153 797030716 848283672 45643689 382370544 215304782 540767228 211802722 424699521 215620075 394124915 404373855 796258419 62748411 469603691 836599897 998450440 80922811 875187173 990961718 998562514 636017175 779122641 658906815 864080394 858029353 953509656 236607967 567976878 710007085 958332424 748742707 912688943 36493199 356576836 244459327 610927796 640468386 817957114 437320123 788657033 932232398 997915519 330998519 952214083 817587923 931636686 219092587 266370021 968393594 980740235 203627808 550417609 845535226 975890395 606017601 870191659 11278976 419484588 219524679 836442883 156422141 858502556 403092492 707301247 387977123 519572880 792540303 929239473 290176924 827474179 879447343 970246783 753903909 976349871 879890512 894157073 645343570 842967228 15520896 371621255 126981526 831720900 638947122 753970974 618654404 761222117 985293989 985527418 364168470 872721135 888226517 977285307 804753892 878769143 148923923 241245350 581653725 896998388 255620621 262126295 851140726 894955843 424382367 935696980 240975554 754450969 840930714 873437440 877060164 924088785 256731558 599830629 544410301 811849236 868115662 895973715 247306496 824526022 435305656 595294904 256541956 269379762 880560239 901532102 632927080 803973632 507775861 539114224 1630190 445013577 732996302 941622872 900757584 931953861 667820281 680025683 408750544 576700747 39825003 891345746 931358108 956598987 438489709 702304007 560738718 782626480 586518913 634309460 165487242 495988360 470042069 874940917 929838201 979034346 498146624 773743866 311275054 754257255 392127487 849747309 922399164 953107106 560860155 732454555 714476292 833031294 840440665 911762945 407708477 513451729 760789875 997807684 805460363 874578156 949866323 965356525 731610622 744039017 373517388 520531120 981762024 994154941 149995887 749472467 432814056 748018768 136429818 409611719 956928206 958458700 918235495 947083270 82604496 545639870 188433679 684585553 98507947 383630019 80916884 999090435 479118125 801407040 884604835 993262461 495192054 677500249 988029124 992316132 929650710 960541271 546388185 921491914 842024415 910210649 640805882 733332649 851689095 881426116 542088385 845976246 151266273 959470326 1300167 366305498 154154448 988127345 669065183 865833697 974059011 986249949 339589729 872275489 668472957 724977893 653145937 946154664 866122860 944830162 105551594 131710037 712388041 791515148 380234439 867053790 813910905 939669517 812151605 826446093 332611338 451092155 124469957 808160716 25990256 275317787 685622500 716031427 2410117 771777536 454589798 804380655 204516774 794639655 133241655 367592741 456093592 964613597 282769801 493720530 491593360 677039566 159833824 710807846 827365843 871919167 344300733 363166458 267140778 917472493 400009596 720947394 565029224 623532109 106559286 672460609 968703154 988670433 353720169 576452273 196729696 969519894 115997480 288999356 615266711 691217399 978452089 982125086 544449958 637285940 176704316 568826307 197201342 670712868 205749808 547226361 889676037 914013090 532882246 973130603 468140735 864913385 669638080 792550286 913168479 982717873 109148301 519541780 7832652 937246275 141907347 801078069 659942426 960490829 65565962 504658400 462111900 651269350 334245946 666160646 902304508 906234006 238995239 297475159 324881889 890352052 707512902 953375505 171493189 946114579 521531390 956625458 705204316 790660508 717832692 737185814 239386941 446657519 870745138 953822711 801180149 885768724 342475570 956104479 434524295 866347938 887327336 950568765 639593533 893603969 129826926 865654532 696998043 709204410 488564161 667704310 470219178 617451871 185100756 902217481 907214373 991041831 333231796 595283169 684136127 790926575 973118794 988850074 316174854 335012243 88362534 136408189 566141744 582989609 924497433 995209732 601356013 822574000 657473862 832393005 31479700 802867381 118480811 723554091 690717131 738233438 627976111 774343004 679326133 702358941 352180521 833969104 769448716 876614046 114327252 428952365 999240827 999350039 152703218 357449441 909176986 983445028 865437556 900075382 410053223 766879377 391685424 505205367 949860076 989286724 388071966 808030274 473874679 691680720 180864626 357320183 163535848 992040890 461517393 683069451 493838213 561357430 373683491 644904806 992102666 995820349 304662750 721864420 225776348 412927797 296355538 793424058 967612188 988813931 753000984 968673210 68368649 940959758 37677227 94780672 816064279 867952196 75804324 798743080 711565271 734320611 37120278 978142475 301025493 990115289 900727596 908875992 972995409 984164468 176771729 211069909 276137871 552770499 580300949 624868089 359653762 364575328 103844010 746528255 481183685 975087420 750574878 831028856 363799174 491026062 926309568 976542341 225412967 849088151 910750419 975887046 248889389 395155522 930521355 995841181 994526775 996342480 154223632 327614468 725776469 795651846 990646934 993382877 58031656 152650712 655864869 802461078 390498519 787091910 695114839 927075594 844950869 868720678 408886836 876889285 601494228 943749412 901490367 904187390 604663917 927565180 4904706 12053891 90992417 172658122 668043795 825335946 712879911 989189907 777690911 946402884 866351995 947502707 326840528 748062034 309068242 485281603 132482393 958853597 122856968 630194202 72970454 785907317 980581462 991157016 703555477 981737278 795374430 841392409 664911288 680952310 31607602 464266428 862363759 946784335 34479547 238942306 368750901 802186462 615157249 778996143 884659054 941931513 676493529 693796152 431073636 588987337 732339037 859126342 183376433 552051359 118582316 572308751 721088946 760269506 458572128 526601708 117551985 637970535 499619220 898108423 378353080 792980057 567865257 574492063 377976881 905206243 368012214 424992389 643703686 774670167 51028424 553823238 843820539 902488838 25599369 700269705 705872072 781985981 729565249 735206266 829359447 835751068 841101192 910886569 314002457 918991761 813236020 829934067 740115169 981953561 853779358 900890252 9287418 381304640 302543382 621680919 506663825 944912145 622533824 761922513 886253150 932961617 304127819 569256103 435727141 739569184 192071293 813242460 825535438 893502182 966701833 999596830 472243062 703132477 334723859 999896376 331939806 449785742 145075825 905332517 801796032 915229520 169508925 627776733 737026016 827625327 701115627 826604451 650582229 998896669 674907307 688093152 966478034 987977138 127545834 831330429 368885256 500542127 36112510 955524649 538104704 833098914 18132064 33701251 32029096 537129340 796164918 865461248 371153110 509774624 296939839 724306260 218519358 285521444 620490074 915035397 610694791 612693798 627729791 742321305 333387952 675680720 389148236 515698825 490086274 644422611 570680084 750459959 287973150 707909487 884642531 933389772 264018429 665166451 77453980 802987360 462308876 588790376 584345053 885402733 809820257 886865442 558655239 783744230 488000395 728630390 97577490 267449162 126607689 690035801 74020490 367509305 15714759 593079806 153852926 819682935 476524021 531194581 376498828 766271599 80424425 541802012 538033561 780146307 975579348 992898871 978624066 990070049 581084950 897206275 140027929 664628501 441502159 904736750 506567422 726631551 567212803 912494445 855429382 938978463 594156544 865130676 824154032 892055659 698191118 803677609 454364794 791885617 727049233 838679797 691080326 738686466 447199264 835895205 835796515 895594225 997496093 997733920 183165572 571376011 530169892 807214564 476352697 898894247 638782541 666319227 940249684 984208585 249347990 915627077 111144496 207680919 24622168 235425147 758408924 942773910 68688132 801073062 854114599 877050920 182937384 822573401 46107487 288087825 195495519 877908615 674707608 973723167 283414429 834011690 5623414 759649108 755077931 894408056 986448868 998893494 849475230 955755568 156468013 946042550 82000249 950910262 607220450 978103730 535629519 985083096 904590513 995517048 506786599 696743844 574528532 746336560 829104754 965001721 669721197 900345105 61695093 820743070 360354816 436365440 540082926 607419611 270795669 444997318 187231320 391238472 649615952 933294961 281930266 547941260 953824916 982002515 155754473 315154664 364357830 603093721 231661645 493324078 377405224 953502860 719559610 789264558 965216796 967205152 68431419 793840906 184157327 391232890 559715214 602219929 468806455 676715550 240640921 526453439 201812239 656849244 509753578 783774474 224949942 977804078 430447134 979946279 977609790 980490310 139351912 512849188 920220788 942379639 412717627 743193953 562443419 754130919 561221541 845370773 969011459 991436803 297947144 513088563 798976113 909472469 513781370 532690057 588556693 746551895 155611731 184509817 224700312 751834767 37150911 794822674 328525521 438806088 615695022 907062181 643514276 692576156 310631543 632656171 575354431 934183664 446029640 900302672 609971892 963224694 791751588 871169559 573188403 680702872 704183491 819130993 179309867 506850168 454966964 557710448 964665447 976907831 221512361 948167199 51440900 245433612 626777868 638711795 736613950 774649601 248067155 433468734 432966938 865787733 143497683 719862496 671683353 732030782 801556565 958410780 971730982 994479059 589449824 691889298 522440673 608994543 238936318 986914346 131800397 876327535 261913155 971827077 119936433 393183803 548756995 782970325 735847458 866201357 126542603 360459648 632142566 815012394 254048993 399439517 298162050 872177477 201036823 966762382 94808498 404485437 242162099 638918856 860535946 969959830 905709560 922937617 324367491 656671254 148834870 500309239 226849300 676609780 764282796 891990897 889870390 901738593 745378299 851636858 661890018 867914161 302909018 666763115 820393783 822218837 277205600 584951286 725275631 997984532 585642898 733519430 367645702 901218546 594673398 676475417 215108589 835339491 836721106 866387101 859812145 931158414 973472304 988063387 194843815 980498014 837964732 911232510 632011202 644805508 27275783 870433253 997187630 998768155 839459404 914411036 196555859 484790707 639310550 809130578 687190524 878736830 349382789 656039596 627837056 766160418 47538821 170973874 385760120 950272347 783748410 839088807 270048164 447365458 723364013 846083297 202365550 964746442 966278145 971922565 980967024 996793288 491641739 933617879 870523005 938457230 371193401 401944152 192629279 629366287 342560366 690668086 373759340 903942017 58562061 751598509 155264557 511361648 359734714 407328272 132394925 996182655 647218534 739642287 744148296 812032232 790515941 826495508 979194305 990248141 522822925 633380107 646365712 968988116 244360624 867471700 311128200 583853038 687322004 914557537 922409680 972044579 8825561 875945656 475474658 585083934 196956307 439732372 860192295 897711856 578886611 694830611 646928176 778266217 114685738 295355569 25554307 571626265 23498274 811757095 133043475 409936451 346579421 355453576 248163420 784425358 650540744 945968568 323773532 431319513 362494839 955989556 234526721 546641131 560022009 926529643 790295245 879748999 883587665 936766613 193133652 510753218 153923130 879141270 295915972 785539516 452444674 974314575 750113818 903987323 164278499 735925520 715777916 902680763 898807584 902158865 314081968 735911389 20924247 313340260 590854835 917138268 497008456 906907151 659173706 801003749 424471869 604588816 937478462 997169043 234946121 469188224 303633313 979451513 569358874 998976669 314377293 639283794 209721286 991516968 934775031 993397549 130371719 629253451 921492594 948126368 578562608 746754300 959069095 987045285 858084087 940484765 60607314 581180640 162711254 544703683 163193216 644911565 529698022 781129140 809945671 910535073 772246674 849688639 745934741 991501440 209372462 461554204 543646751 577147192 290637499 697964413 293974340 657532345 105022636 765552645 130313334 827442894 496327451 966400865 785296968 813270911 968378104 977756704 481828123 973288441 736873674 894949110 270514522 828995051 721350109 778406590 355586944 601521315 590677498 874652466 680406133 862159539 49821464 550937888 44547484 357235449 638823262 707265048 485277869 856777785 110287039 915303205 183241736 967752390 826260198 923061613 87678334 917391336 137517289 934932697 963168260 973596441 911668493 977647147 260968943 920677682 72088521 688147938 940016926 989763290 57078064 277283736 561685340 568158992 980158906 983849753 525691467 720831824 893889462 975709141 160840942 687841542 661485441 869018976 581295578 745059479 107010053 245608215 538440812 816997235 86179261 272835727 749834325 815336214 322944564 530149722 389785476 567183842 735062521 979512306 402962597 851209952 863424051 904513027 521103185 598349231 422233764 424016266 521014852 769641972 908103989 920063130 332043723 665693904 420218261 780528832 579713213 764916400 942330935 985462715 101751746 263728368 710514587 736441950 173325819 589481562 297085704 970427218 946908960 979929095 399439907 889797541 541466260 713434087 480007121 996283678 593736981 797996194 678204308 731283446 351898585 718868953 962498327 994906628 62729665 506948966 461471669 515228938 41283377 675516366 415670316 656488832 993693582 995576882 990065727 997035924 715101830 780015786 439619286 720441446 250051338 741697325 215241488 330922139 837988213 855224341 115445749 256962409 68706721 715789156 257667603 459489557 739281945 831742379 689537212 876385032 423877828 792953290 859279564 883715871 375522636 729172531 586988578 908939381 596007000 977993988 230696318 898114459 66341621 886365849 220050975 973527807 997249967 999732962 112369888 920337361 211034384 675342198 686205341 849103212 413119552 586688901 340975387 376709002 775427370 996629186 215693670 988307254 403167013 767106383 53474453 456217123 280764637 728830258 392314056 914348883 38884279 378735591 868751042 997202159 565007383 973388869 338257948 982593436 414628980 457892756 244555712 688125424 589804077 990108801 558222302 987477105 32829632 849645717 306754514 609417898 622764517 666888070 626178123 925509644 912977181 974362416 154017917 781920742 168627403 327432395 799725946 828950261 729749840 985517907 255365566 959808088 991136326 997552512 235410710 485502342 482572738 894665137 922568108 988296653 292293628 421253090 554334997 762574771 60392982 77848733 654251222 733033695 85440498 136204888 100073510 467466709 902472166 983183072 330647307 878302390 642247191 652385486 893987134 999464448 39119065 982478865 399735993 455470821 580303083 752022038 545226226 706367213 239569496 954548943 851116371 962736377 641178382 824886440 996345625 998871173 905284652 981186431 204727811 653724002 749547909 772735716 642317426 719239757 912258741 941104559 50811893 173209709 356901097 839643589 278055104 340424841 58599447 67643509 444689770 985610395 465945885 476664392 279667460 623819560 937384960 976651081 923100944 958324744 751847465 871981009 995733548 999809347 126965422 915616687 410806222 915973879 151328482 401711489 836110757 852087908 184279010 555657199 632621885 927956975 576558808 907642872 70511550 206241749 833250269 925677118 236903573 324250035 488381405 526695321 689238914 840662408 705241087 829212987 495661789 861792185 573262812 826044651 783032660 794730938 565948211 575969940 879744330 885656070 95527519 731201570 553197980 717467553 629893170 893435100 593049013 891901403 794931268 980208941 921123785 986327776 472176564 537610812 149859719 769682602 70964956 257473484 997002311 997235265 403569619 498031057 110448369 727754134 882785952 891296233 344343112 595083388 151646686 711530794 531015363 952356836 715277035 732496538 301095004 693116387 269139065 745991888 893135567 903394160 485314909 957032202 815051620 883958913 642261983 648097663 668792940 939275496 219856456 954491908 686254376 764084397 663918351 925380425 89209400 605382100 297671388 425073490 24965496 982164513 279653668 983710339 921129191 932659940 539005312 998531986 388514193 983640129 273770062 410192349 164934036 796660159 579191721 731454916 929010737 975172016 288122515 629006303 960948634 965388581 201007573 976690643 192811026 388517640 607808099 973750940 283287430 602886979 950541800 970231144 379372373 489764889 45783946 958411701 909466073 981618868 11413665 705748608 502675458 931098635 235435811 696882366 134011582 343772136 895095955 933957285 863141313 919506543 308698768 720210221 41649711 696832233 391460454 681293456 903931360 941326861 743862446 996063113 392548366 525932654 69197934 915948823 993703260 996099271 500667896 633019927 595673284 821577327 417315218 943201278 714426455 817971780 115556195 781263833 854835393 945431085 195162935 681342441 906424473 986833888 84025278 109957203 183533986 993277739 324268826 431987248 492963533 899544600 713314041 892133470 388288196 821060337 66334701 243680354 967525740 975815249 816683224 889747530 702716210 992945535 96494200 683966735 355369218 794648361 196248419 299245558 193689930 590555066 204169944 955802202 28871700 969554452 375742665 629096750 794322359 807110888 399198175 686106415 883809235 972532965 187563895 757118483 505733881 983489236 857298013 914363861 738122048 922936902 369054947 882807191 278601860 822650151 504961772 825980739 573026381 606212777 130270549 162643589 483409247 915351383 41741974 972173287 405166552 625017229 988307112 989248943 490020970 781693563 9900373 853218390 111747382 434728408 583862887 845658281 314473126 567058815 540301536 766600925 354857471 712583295 934311349 975525727 304599045 886944979 65277776 161287610 804747469 851374919 329986705 462455511 732585378 795212180 332148811 375132698 624408799 920191094 829106641 900027890 396614154 659042420 311295712 921329389 663188092 949946707 918934052 996240746 592903324 857154833 321268095 741968335 198830564 237394370 983678741 998369777 95622209 393686912 675844561 709870006 833285285 850755870 588854082 745883624 677960369 824692493 446746918 725685075 643762574 743029921 252333303 341744889 843511770 863159565 917495515 924498234 939050026 948253094 843413109 898016473 233666350 539150126 406564930 631560086 725487766 885537693 762849875 958703964 795368110 930125136 759011662 823390440 57777813 72049295 495329404 700405797 706545227 917956271 524404400 572595939 240826870 668950567 492229607 914118980 994187769 999765375 746978206 809752003 610625401 859345859 504756083 505339285 498026427 870371365 619421331 653333082 181212090 349948380 325693146 571627124 489955162 907822274 755264296 982914436 137682519 237782493 197337224 422478774 321731865 524867608 831348912 890203437 579483353 700432694 7813681 160464993 76679200 962850222 315393740 422061612 86544751 898604932 126760305 636194455 595731600 761861265 112050019 759957193 705093651 975437417 418271255 681881600 365429163 755747483 35916764 283699139 571659283 592122356 475353325 633281850 673691590 915066369 272599444 506050824 219188831 650759726 755089338 831903033 70802206 582897209 178286765 596379893 184235499 625001256 790088447 877756109 287523540 455773807 274818426 458331987 246044918 253986501 637999962 882168877 583379370 999396955 248518917 384000169 241245770 506754631 149379435 274544874 644926499 930432627 535466360 829757748 787984098 912399345 721296959 955156909 321486204 365890443 268501232 879772847 270378287 432369193 195662502 922577180 105876572 267777720 935952775 947866041 30451136 872688656 579921135 687949833 667684136 763300894 31262739 99909870 178846757 656023835 286072530 775088078 278391003 321560158 380370856 805349238 648330880 923190292 474019734 978690245 168267328 449661699 392722475 867976672 35145211 714400709 241478980 975552187 658421525 785023016 324527727 438163054 582073974 997421739 300436298 922057682 266355068 969115164 292692998 968500239 306712062 607272015 818872432 980530155 84250820 259837544 18543490 995299141 603352372 979662689 546308405 747358384 735813691 876350885 998767817 998903978 834177262 969986749 800646568 964943925 580818741 942743706 484571367 771849314 272774142 905549127 79020235 624912617 707790213 764560827 171047536 982017822 357512248 588243283 944442735 951460801 592736941 840218875 209895364 596374548 91277511 161296066 353834081 484778075 744950574 763249674 357386000 445731150 57244816 580401945 902553831 969609133 90397156 169983651 705426529 913565566 808420245 816945375 574149327 680616519 206044198 558013767 908538541 949252577 8749270 512507033 142900056 264016046 116848525 118700520 916670973 926687747 608605646 665271522 30888277 842229969 598625168 859935396 57248918 490722247 964059186 967813983 862551105 897938705 252507119 396290372 771719368 913840980 5542320 879908305 890159227 902697880 411047436 589183984 639270307 739911194 188326430 668131627 354370922 586495191 613386044 641789916 100089180 450644724 485702931 609447891 770402712 947688570 469894011 805185287 747893399 804051531 838042058 982144081 781553595 921719329 373406332 675604176 583895304 708726521 953248450 981551571 734631620 969558764 584791666 673872936 58732818 254291211 432254288 491760463 966419766 997133708 819036541 936240380 463556425 688191025 888890990 953730869 459345741 983142345 958177878 964324594 776755399 900029973 159155802 347162623 473095008 979401378 25876343 697631430 178557756 388482802 146247331 721270057 501403934 924334612 115299097 749793964 237709414 847718984 110012053 931737721 171405867 458171017 872611239 906769714 108949327 126310589 334610190 517535436 973423653 980670050 768218480 999483319 135640284 716030128 545229306 678269841 675885472 988635759 355393377 880594758 811182011 994443964 859508477 945100612 388466855 445434315 273849267 586479483 99873600 403469477 399997143 781496007 296384435 509226520 733955338 744963712 628813879 929562014 159201594 836789566 448650669 497215041 980741365 990769154 854895839 860190762 838980994 888133144 469500060 695438048 410601466 781168889 649711451 731334020 100223532 229136768 118819720 336378767 403818433 819771557 176955579 721684116 477723757 816563938 331309726 860957056 379095552 686655105 775374277 975202917 558368198 574177721 450393337 504985115 836801356 942347331 196418013 883848631 7560722 901184391 815960214 950320638 341148269 926936867 921444080 978393352 146027163 273696575 198298151 759562031 164407292 815912878 63655639 463322919 453135103 765684883 677852486 696901291 619597851 950806813 800386884 885493803 540406267 947578989 582904249 613700343 175257740 703808876 538917798 562081312 585517919 834599713 638726704 645021478 81675731 814456441 657595622 714273707 888101765 991267589 898000485 903479178 372602152 840433251 168790880 891897392 933943773 962404975 886149202 898103070 150286332 932800341 708558562 944124286 317579512 602270276 58200546 600171902 466762909 999710219 812969128 925233398 621483072 768726053 118329769 911445705 416489889 646337224 578179240 980180247 367647829 874758771 642649137 999314092 264057535 487727674 334104454 552287455 608460210 644851663 868683706 996263004 23509646 500399099 386161096 451206933 320172223 512427790 508382073 710546614 807721136 915316405 136261606 497251289 788325955 905758915 874766821 923006727 707554876 762660536 577066519 982423907 329407494 445741381 585888091 597061226 790786433 981211231 58949627 453904418 330233806 462730614 723860958 929748030 128361849 245963774 951082674 998398850 378374351 719419855 336309714 359630110 365070617 478284941 640654847 754511362 473710814 534149225 692559843 849886603 161815911 291505434 754076097 911815450 546693573 548518788 606140943 694741294 406883135 951923965 790613270 939794165 608120315 794366949 886928567 975478768 381155327 813929898 666878993 906584607 383724907 912096789 759047462 935616692 486639545 824501895 657899237 659657717 758008080 776632009 422491396 767306956 976384096 997422791 572380203 728900400 141926449 500017537 145575685 324379858 606912815 973409567 239886311 398067229 976478230 986906019 299632755 447595744 896164593 951227856 568768203 960034692 585799594 648799795 513860715 638104416 919382348 984892037 48629994 810526474 987947943 989241530 12848792 813987019 970147372 994727076 572285753 865296707 518325371 835767789 431013795 493840598 849675290 900784278 524072577 951791613 875759265 970574791 158139351 921371714 803625314 882402033 245035421 262337554 443090670 968509383 704757737 708639491 841904013 973697399 378239442 879330154 983210201 990210313 529055688 587230077 597846894 649395950 555435584 881496565 532450013 745134309 104725265 891514509 684713979 915393737 300734745 706872753 916005909 999004317 679308241 706294942 805106261 829925566 866877408 918929139 551027024 863435330 616482805 801520576 873834156 934811203 981832089 982877669 614693633 910807975 689022076 720559902 542613268 672234115 33880505 212123037 963926484 992382954 523235044 944335627 386583414 587115516 69742362 464980678 700741618 915335574 269059072 513008452 568572652 638439897 160379749 887094159 892484506 992796876 14929779 548418794 487105958 881536550 43093214 55207305 226196833 779325680 107167608 661387125 680419899 864539174 379973163 514480552 116637744 966622453 835381607 918863512 382348181 469760347 529618789 971398807 78191945 103266125 739292823 981545344 994054369 998726035 103473666 318393794 366998945 900196323 578665490 790631433 718203042 810112836 534527108 659260983 114586130 756904763 530894390 801749789 998378517 999437564 659695203 751533484 474404701 965569018 613991344 782137320 468701080 644240136 797378668 799204328 681423732 917574173 299653473 595290354 968894213 980691509 929118751 954738618 313849079 468750094 42014039 219994310 778562530 869727431 19977549 281454427 939796513 963871510 304373640 959423325 61238947 822138014 302654453 609776761 584480049 988139682 284329545 594967401 793509623 837197278 280315653 486062326 386911435 836186045 989305290 989594931 941310835 985228074 653187346 822449447 385520714 872303933 603777119 673587704 255722985 619692082 898200509 915457660 976729948 985974557 920872202 970918067 526467479 640975431 292204412 311892511 268307442 713665504 588483800 868836679 107166596 911855522 791487756 869286610 586123108 945917456 366341431 578752707 623993572 811878811 558726885 988083384 711599091 792788842 502731167 711366504 265008909 884190486 542484376 940090357 203614346 587023293 111056098 270030735 599918116 879374339 953188089 963388971 898119038 911939083 999765816 999913527 725316935 929616827 331748914 385018908 995030763 997472821 344871004 812283678 801606664 830422827 783801040 917955520 308490901 775309955 822764714 970957442 98462825 730246467 957831624 977605654 872770022 999278255 162498539 220143533 753987465 836966111 242474627 871963644 753466426 838189221 853003782 980473330 246628154 718745951 238601540 656195030 75581741 885326731 513242973 656438884 735045465 913251177 140414373 807551145 361420725 652701429 605981781 809072976 670972423 928428795 368571936 720937638 967329397 970474748 857269584 978239101 167042073 580200171 514540988 658662168 260564814 722055499 233538294 357214066 528775242 713214447 87987694 779622453 807155693 916057688 732434692 971270250 990004733 993967349 961495767 972133411 545123225 580823604 581110590 961243894 438762969 442508285 396192993 505810959 101455977 416709064 382385797 404479491 515889242 840122514 648833339 932207598 116948432 836883687 13436049 638195226 888565371 995357682 145572346 504097828 906322327 913004800 680993883 688549174 675642596 763438423 12581988 363702410 664562251 909420557 395270552 917116313 394049197 573366333 644167135 751160571 346910244 432778370 302995730 546590629 213932768 326886761 612479735 891085670 800067876 998272453 657737499 669978946 107060695 508816797 565772811 890220869 334528067 378280722 484180400 797403706 310357879 568025380 437200699 767650916 383357066 627012008 816052564 915389887 188778372 350230359 867118893 985529311 922139376 940744462 758834723 802396324 277722906 969501618 148434476 491928686 278669589 521183005 943273377 952796463 451064839 520088511 217362802 634955138 927791776 970119782 380914338 671824980 160915524 827234212 200606721 359839766 661373100 765485234 58589194 753486733 128211113 855080449 555584394 843714597 932872289 968449956 359343812 994525951 438255453 451822818 120925946 865461712 828549808 878226836 273782900 452028947 100094474 204276643 66058760 343972859 801227116 814237255 815721329 955683204 187833901 755785066 604215799 643717992 391139317 788639163 488824319 740615043 179610730 520361418 280001629 950376140 987108850 998897456 719620788 848823243 486921322 935081317 194858726 414073282 928568200 987246923 41039382 915230444 984808929 985348763 778578980 806393961 523405641 729674556 172360509 333602026 68642757 829398238 789551634 887520410 278519772 478306139 43892078 374198070 532914616 801656937 366860934 514391689 299817604 911971522 346390142 645956122 819163875 864982797 383561265 441073142 14004098 638934646 888963986 944379037 584953462 832094697 110290493 650930143 530229014 591013543 23687235 512677863 763633574 844946491 133094893 890697913 63916069 884949383 852704314 988905260 626406537 877584541 696688884 969515503 74096078 120684424 852718007 927113593 184537547 325892684 706922673 839001679 664424675 816938518 150103841 947878820 971362998 995058637 485305233 725460279 821813949 893196425 504987640 511387914 721435881 918828049 776580172 886198527 385571320 953490510 456130678 842878795 727905764 932860234 796195584 877841112 524145686 610247796 684073215 994686756 613879284 684885439 301095823 661845581 195279004 938721477 716486570 795787050 100572104 856265421 471644184 511617288 77765201 215443049 745223431 748189038 320703561 419527559 197538613 583134149 285146322 660353104 791036310 893088352 95468517 635125168 786420031 979778499 682452545 801250810 970392216 980047206 208595230 813802610 262401471 393089963 350258779 712369167 577665268 610044466 795921292 917718217 722013414 859697071 772266851 942951730 793289234 851714972 292688161 765674166 919681710 993229895 838539823 995379793 823805415 837593938 490111018 757318402 155453809 394225838 576784507 981813515 77980129 535272919 44646237 234265360 898972465 959534334 535892880 553520042 558593025 592719242 713173523 954057770 851361507 992028682 327452394 528585584 658512813 720550424 810588338 917761661 290103341 797711806 418945197 669647782 86908148 236403216 584152423 782309398 979439955 986277358 617926219 908269254 944970705 991867373 177713843 588335873 59446768 384247596 758328054 933317460 117961508 933041688 995296091 997580572 89068526 735349789 50428437 766808699 456062563 460333424 875074963 951450273 790050367 963260135 81772924 740755075 515992784 766853150 947374854 972330678 960027040 994849191 50381292 594995290 177120355 987312182 211421315 448421803 449121001 810593911 186194830 678284279 607967959 621231005 739153617 814194211 32950304 751645418 254268332 622674282 143317186 508082011 719521297 921480353 737096634 960594590 443310166 567864551 673628840 967298800 841576104 919253848 417744945 663143083 45091025 153669332 667393843 838389657 66265901 191826091 290441559 849970250 226775203 735158030 780271642 786124154 127603286 446333537 842801143 867604722 8680434 304877690 353759407 883826990 791935611 888406719 351006323 379907146 101857655 439852257 451050389 645173165 816407815 830330628 630499863 778348860 982140310 989290901 405611846 808866009 899903674 998512414 655076587 802846356 490340134 694591661 707294409 933083140 139877193 971625478 734624609 958543964 298782791 985470472 660610794 823051020 880437208 977910476 298385689 992518904 919706022 989967355 748979795 961252801 805485159 935139261 654602561 724938640 299556976 812283056 340718768 841404740 501882348 847000045 642733168 699754258 9912665 203104194 980757765 997028159 7595679 427641975 599753040 642644919 625248290 784926549 168021004 760640580 16099103 540067652 335983951 738876575 481087921 539056746 703968813 882420147 823960569 855275077 226756947 261234727 350888143 401030364 567683864 713475642 777360999 942739017 162112764 921496651 595030244 860731640 783556572 868827504 183792386 867455559 483643959 803795242 641845318 880649613 795993467 917564528 847753221 898607404 764253893 878167574 716968036 851215850 249735902 900772973 85982678 298729740 79688275 298062621 844683952 962684176 764913632 911745029 854032157 987089053 852020298 867489447 634871111 778960090 505863912 620210112 647032034 884365738 213641177 893402240 8460642 404937060 498747074 687416825 834407703 887431000 90685791 581509018 833714279 976742277 702554212 921623783 718195570 873249604 333283867 604699113 434803288 760719831 742194230 954401579 508102529 925059595 794382903 849824861 422742573 585656824 400596239 948328803 662597396 998538059 202513892 952767170 780359355 792739062 604461270 772930068 287343146 700570509 459138948 905866438 769309318 813079695 959914227 969486752 217170114 558781909 138952908 528447025 784362037 910425413 145538922 734139030 256890012 980718638 477869514 640921547 437065997 656410324 76277844 79635764 724235675 850476160 745760910 749498090 782798062 988038433 151096015 395073767 612445421 828232067 753508487 867776533 337149683 647804716 119408490 965702651 597962289 948588136 889199232 943199623 809952690 923162641 865236544 880524814 386129624 702877230 51530948 67877371 973915996 984285967 2698266 441662639 974813084 984964913 426109078 771328592 244622948 493988949 87344490 741335751 24317051 411766461 192427535 519671627 163363463 911377858 54955970 984839897 910344451 917567919 950758815 953622629 955592514 955756968 772880947 912515369 481697997 520793158 793364573 995824368 544572783 786790610 586070468 816236101 8843635 138475859 929108451 975160429 560724837 772584535 313340917 879176150 150921747 370885991 719119065 765553314 156141239 304051941 531728651 860866895 429279642 799815986 851702067 884003844 876294762 943220672 810017503 981613644 311296725 349385639 928565442 978876753 244701886 769642592 584846018 958779972 185400317 882993064 933456569 967000657 384491252 960044642 802905047 895058266 75157891 641008403 979653337 992713560 980882139 985779382 55964181 765323013 599240631 611291175 89848137 999171594 195399023 319267488 17550179 156116068 127344370 741580524 547218125 622990342 712304177 972468598 543047239 585197385 389630841 405619140 178671808 254567949 301104311 305542257 611291273 710442607 316159159 884150382 559292521 705453753 165222914 907568334 949141795 955884718 31220428 829545361 374842035 917832469 435458850 933779055 621916040 786612767 102583182 518170267 586862570 817073900 254053363 319075563 890221186 923107124 886440148 984475943 740754797 902098809 446845696 793233244 524239920 731490785 636259140 934263556 896752590 972965605 40483247 185957515 88102461 646750085 565677466 722298214 137498676 237171160 164367812 944952758 954625866 958512400 926362263 935075099 387646290 846130049 308811797 813181399 596947555 728159035 912178774 929498523 561734786 816538493 994230144 996594793 448439754 630352034 867842317 932086734 860504067 941796710 965365753 993612009 631638807 987117724 962828119 987587035 168817758 589066753 812952525 979508032 913622216 965148452 457645008 876111755 780249914 856024094 979207838 997910556 961192570 977411195 95329314 828270226 972812680 990844360 807639857 994328906 550133678 744477769 40894135 740124272 994183139 997173478 713690011 754553717 709967161 760204129 742689340 864260933 848249718 965745440 607707973 724119722 741154482 891054878 150581468 552023805 933211920 966391079 923685506 995402144 934691410 951864362 416947803 524299008 318818352 751845512 631762823 915495769 820120782 871564196 146376912 594915271 418446482 966504015 839401831 936748446 215358199 704893766 592093444 993700638 153096106 400834575 431026767 461906674 359100709 433072371 464368221 751053428 968930986 976447274 240279853 694590903 777168910 902196472 850743708 903635522 184633882 593274440 52587455 189047828 881607240 945603706 26128328 663540684 627806070 966899994 510838569 997049130 49333055 574319725 694541772 967478381 102353378 627067808 146376237 819854643 636549212 662486718 585238734 843004595 175594485 777251990 453771197 870038575 22714727 506348188 79982187 892140595 106098153 592993250 995919331 997272459 541798014 673065742 718151203 956862344 744212570 906432869 270826755 947077537 454683055 900990755 760846069 873723888 511373965 937430171 51839345 526459395 828078615 939939924 495791604 680612283 989503580 998109935 857899761 866593008 128068243 629935637 496273616 543289264 781010378 810292241 319262732 335982921 64416925 296705846 452608813 904902171 611757771 725700686 507027084 845776913 50783342 343573737 601618716 682581841 705338979 897618138 847227870 939729540 94120599 115750566 817399517 942176668 686942393 985079571 709780936 742873805 140239966 159056657 689194850 989195874 938468132 948396987 300785262 957439403 432444353 469579819 596230795 831248273 822977299 939085271 249049410 349157424 552752060 984739236 380424107 938855739 595637516 717380687 693379988 799896488 171024096 476431436 470242720 956882431 744513886 810596906 213360149 423980220 514785623 909319014 408682448 617567662 738029448 872554611 583702253 809819614 640088427 797014259 494135776 711593206 311242795 389133965 518755228 961695795 270102160 665123308 552725049 625494630 312258257 989853473 531484356 960519620 246424900 378112420 137808105 366294948 370315424 873771252 456742570 928715344 624549068 905587620 434836775 987027745 524214235 721695682 33347966 62993389 215543752 269860377 649374666 774559391 670951508 950914481 489625425 856293151 335074084 767195384 601933081 642140277 700392882 824525012 412961036 441261240 607424270 634454868 404259115 455981469 470250780 779658961 512658945 550073069 555535060 736003644 114115423 677065945 494757020 696515361 657322694 840599428 208046449 835157177 175799055 916041640 578359580 712549185 325003083 797071417 437195597 845583994 187410933 814993657 942680568 999588531 252608954 476966629 780241667 818740616 46824676 276087201 322457428 491380587 141999898 653384111 385890185 936973816 214447414 415628229 680082288 909307937 782307929 904518764 452592601 682379058 362008386 895555209 381522922 750143074 17997303 152416335 900459197 944513499 266918578 427805742 564174529 709515126 611523098 798728531 113383793 574016091 367747170 417899191 827465692 944756843 443389521 891551255 30497930 482325120 806403778 980728942 582886330 626407278 24899454 495361323 643771617 801639578 322412394 670752732 747194163 956014806 9124440 580099467 422577593 705742317 956308707 992502974 428356724 783555305 442976245 561385022 225104579 426837206 98632590 619789025 177312631 727777317 883383841 965675338 592458137 597874394 139226271 146432511 796804331 935552480 298351697 418147124 713153336 932788747 625712098 777084775 254983816 341198791 331724015 434288014 600834368 696978592 575866595 752732127 552396113 920346102 248831593 815751310 632207622 941386234 589338112 731828110 924670232 981675815 197830215 610242669 939473813 965931908 134485667 866214026 800641872 927010419 813640756 831193380 747086479 750184774 219981366 730104769 885867748 979089644 676905904 886663084 129718985 657998990 675971638 787634222 269874233 757246117 696295735 988886947 67546360 534580254 112510073 144039181 465834797 713043774 873617034 945054912 318664730 802190657 750762465 847259313 591189585 676132649 314343095 644059612 742550916 985472217 732805837 911964899 838194330 868724740 191946678 544439295 250202133 858659065 314516439 898855287 848899798 904722777 702679236 884436392 499524922 643173358 715227348 856022447 7319308 968806534 132095250 589351836 527657464 904098398 368587495 836523897 165353124 310673862 886773648 901041905 873378788 937674650 158876847 657011888 106847440 876295645 705370578 921408065 87158459 538797900 789934697 971452015 874242317 921677270 388363710 427544381 90967528 539845834 171943776 472308576 779963937 828319202 151201324 426876313 770652566 836058354 501438047 503472335 948906258 973985772 969172563 981527349 783496620 840647111 355859009 652669396 398509702 746438038 310074560 717719520 571988864 668564683 380889702 613895491 120730843 268365523 546356888 579330734 607061016 654966012 217817216 570479358 851973534 999717142 780322053 882792275 291078443 484930160 455701766 630599314 594099408 741684444 335004251 562645400 238765812 970738717 94058282 375942793 22424576 524573626 616904871 923778667 110835750 425059280 751721467 826329063 70307498 884338092 132233524 496797064 284719328 294726402 134388907 492634910 129359014 745108158 403262905 897129717 562805357 593810610 339927229 779845814 870888866 896165665 110506493 133644273 666798601 857162096 200191515 920067020 564408425 572779972 860918592 978471744 837463511 965797458 868201751 892701193 631045839 803664511 977575764 979617958 986833016 993405382 308213592 326516886 953646104 969220189 429859651 950095986 88899874 810389399 540838697 782789550 901491216 946243558 736395469 787115640 350715454 995805757 437049061 928679640 173977737 921413550 404571031 656058625 427939378 579900539 579235564 772604101 787047185 870828799 286622237 609399832 593815044 987630140 646184430 945538331 273224745 618378330 465281697 573200349 783176445 903387670 405499766 622904710 127352204 898401475 451881383 475436308 952753000 997680679 287432623 477613394 864362260 875135332 279952838 370164840 174686884 631309557 435254939 651114689 475594765 544287269 537319549 985694865 89686864 590463247 779256741 820923953 150231350 732226246 992489228 997020450 726514422 965906859 796452658 991895627 339617174 489952163 79804994 106086538 666553436 992460959 983569789 994790343 940358551 970941133 701263242 913428113 404605105 678453375 724263206 838498439 391784052 864404894 376743925 979357588 595469829 668914617 406642180 867314644 115213385 694604480 156488776 212624935 44706248 787071971 41377031 635573319 96609660 824309851 680002708 754739563 715551137 744838315 460502707 869685570 709760947 830428583 400530629 617064322 938343705 991243134 332844564 837072973 356607210 562150632 715267143 760069317 967080299 990845100 548158141 586705618 52644498 584399029 828444610 895216748 206945464 706388445 26946334 786539901 750779195 865865447 345492992 519249252 847450835 925485974 989670158 991900685 75106376 96486447 76352770 124586328 542750895 590281768 4639648 612688927 156118186 636844993 317187839 791778933 845546649 947041685 320490850 516368469 90831679 958445462 156903773 759365016 114891984 651584903 902510081 998537398 312220499 811805216 200168496 384083781 198842847 242530556 914983383 920050697 63655262 126672736 102204104 528927609 235407179 681644040 597273278 875171464 922859129 998140477 393865730 727604421 555574828 945788985 546257853 630988873 84287413 398858306 332848278 513869422 352421984 827367521 354499554 636859648 678988226 812207048 355667223 747880803 622277642 890671309 193331655 973245076 475273374 526756194 241529378 334281023 66279064 784865892 202190346 643950663 333335060 992481054 178174048 269509565 249478217 961870847 863727691 979335165 928889941 990063420 194228306 222804592 444557585 770312506 612033236 699481346 297746107 627276109 828007227 842438588 171919654 554009859 18804436 968849063 630396861 899565358 651373999 947936946 259452726 619646512 852228725 947988334 442609280 549304089 117710359 307240244 913512847 981954039 671874686 976608253 470900664 736838254 86784663 762381848 667353800 973611649 24154914 39442369 837420449 877838268 127105065 905267410 980787070 994588443 362078640 792170660 770667418 775131822 686378493 767268158 413880792 839126246 310628956 619406045 592404435 873500912 640721102 644970277 299750521 445631141 23609362 276822577 684313973 709881677 760507275 889651317 763894753 783451636 948170809 991962075 952927595 969289175 261411680 361869670 425188459 527465061 871732697 959923975 212548165 642948327 110950346 417849633 168765292 323254966 603297256 682428868 876067358 891052089 498453669 890135537 674216126 915064203 976585139 983109803 453321841 790495837 711573107 968043378 710799777 749063497 772368726 855669133 776997352 785985107 997374148 998410722 13310577 380388948 898990812 952173086 73021964 324368146 252375725 648805040 356615711 551242567 390998330 956296527 191841699 558230700 248213074 415666784 669267965 857193107 7968634 559544186 556418546 894264571 44905761 128079446 533566937 585847009 690871956 926167796 535495387 842616836 305629858 866136311 861477351 876214445 206219493 962116032 266387942 746865983 739386660 989904260 357798540 921745889 845634322 883074424 482090120 568983888 643256806 676328485 423262666 658084544 725623145 939453153 790634441 880781576 692257413 819084000 996164085 999736799 655143032 725990131 279351547 835244129 885810483 971285295 883979780 901381371 348409918 647527699 86660484 245257740 887665959 955410012 23847255 604623200 170409626 356643916 275120905 761773840 102053199 268118524 84405082 394472976 937048694 959567696 282625477 672904023 554661228 732130516 296465898 855778972 848412381 967294515 172998938 427955937 361393606 450463992 556397388 602482284 175517091 504369276 555383339 636184457 187070200 570201185 265855702 595264737 182530355 574518467 403315084 647005219 265117929 817758342 869695357 939183874 602757220 643985890 631437021 945778382 209805377 954918195 444003676 878423821 610399886 671940771 518826099 718845128 103637082 645012942 939486145 997762733 527067409 944723456 304736403 443150290 787676284 971434205 927302408 961550154 429592794 447768074 63777968 998196834 412348851 469595586 738522216 907493583 81172601 729904881 443389524 815084331 346792298 423481666 893873016 942321659 647990687 735577359 522574520 920127470 506414416 963341949 541924388 950485628 480788266 700003479 949508172 957633201 440600351 644342078 470736469 684182469 943987435 946668183 698600222 720336930 766223027 802165658 972083765 985307408 81300754 798382121 663285826 878733012 223233423 709863880 202507437 797835325 472561182 958650116 683349042 876860712 285589984 644077170 296269995 487768411 628500624 715672915 944703912 955279140 792564735 923284963 475372342 614208700 877717108 895066109 258614283 266515613 355628674 959093060 601281750 636432925 775827291 875841227 533132945 717502565 889836085 977947844 927272253 985069040 913244662 942601391 919824398 935557630 262238975 685220193 706753881 857170651 334377394 513007933 23348660 167247630 574898067 920358230 22131311 63954348 875249558 899024007 376419825 531829423 166076192 763852304 684007835 897953483 829868427 941319612 562402971 721695068 593021102 965548371 195777033 920957790 848686082 911531756 741855633 864945506 375830801 887401165 247490799 726442541 512580675 578241453 935740550 998926073 663288660 783414855 760906503 910324753 477138465 674012186 987353111 995327742 731332872 836765077 816393063 819113436 243725439 625759580 431332249 626585317 40553364 884415518 267423156 930579343 440254173 459313468 12811561 749044711 664201873 995929109 823000859 950748449 505572945 806909067 660275970 809029566 865092620 918019136 239043220 858019030 481133481 926605656 292870482 455468366 444453377 783164376 920762543 931256791 732687253 787338187 907807541 986773777 630872105 909720656 880174944 904872787 587731272 719380808 998314153 999116643 681314558 806050214 490298350 567113245 934939010 971766104 29324755 78939536 128147753 887641597 835535992 864702224 846602249 990488898 599907363 627282141 342978244 994438463 966277856 984231165 43486716 187083004 770976277 910761015 595420744 671246351 857679497 879477892 20218521 206152569 691670257 846966065 173612654 999245672 258111192 862198692 660792845 994898629 432409523 928087565 889740783 970805863 723114779 884875267 177164224 282713985 217944386 345620860 186585353 636737691 316974443 969939860 439423056 474952524 266294682 398763602 148757461 729399026 500673450 710990375 757580613 860800463 20039684 780208974 230763171 359485301 665765799 723974851 514976148 869191278 348553534 353922652 693263905 852921169 84142976 413904209 596242130 709318700 281012063 984434583 311480256 733300701 368087173 447496037 397816054 417951367 316775289 783097711 191942454 828526973 315981536 949507585 110208285 435731356 647333447 858717601 675010148 956400234 238444209 589879595 989683084 991593210 193949409 612872939 705752417 944161730 498863201 976945833 46182489 776701220 24519325 321674421 128249105 697411478 992963847 997949907 820238771 869798659 982086539 988407254 139854082 595990989 638498470 991857266 901033398 936843756 485496324 503523019 726731543 795265093 753438690 899083878 722798923 926542599 145223849 188228537 929287061 950477974 524929091 670712362 34312516 429908365 577104278 849207366 861391591 901671261 302008941 917723357 113603198 612102499 483985211 642304614 862889560 983507492 357468286 810845808 270662549 893780829 561419386 599141494 952790014 984461543 180073337 810948909 253047088 323964563 571783345 988880731 803433094 856647855 139272449 945970067 534566516 739482401 593593172 610094287 801055238 990803829 497458598 732505310 412098637 888343615 35745742 749179660 355015536 665790331 572902243 775703734 806508392 959603144 950057936 978154222 554456230 830393157 992370987 993825881 629582240 881289496 624243735 938806211 635396183 643552762 442764255 683684575 523945484 597707772 524495097 763577855 628971081 728591355 412107342 823115089 842585959 966220915 725990824 828336253 733903259 757492104 270680496 347085755 196670842 731756711 545832359 926240719 471548094 674392516 980199676 983754359 35282113 913869436 213707448 934544073 647602531 981659481 913101545 988322133 775322895 964459936 182815331 694352725 719371468 903127777 236515304 261564335 385011023 718637986 589565821 678231454 936634646 987898774 204733030 670154624 445396535 973726820 602170346 852222450 807127203 866579990 939544508 948849904 928072641 983794797 302568407 777644170 490608947 511812815 140795169 603583239 6848155 499860797 161411999 951213140 928409468 967971038 904654555 918743416 427703830 913948241 871325088 919588925 347852285 925689224 951328842 973644153 93931057 923918061 866014770 892347081 29885930 830809484 533435302 870416680 521055228 842809880 180020162 608280596 396820272 485227849 968723677 977476465 314646616 677245157 245917830 909227947 544449249 894388310 291854873 431689982 337867607 554243755 619340936 871611698 798841312 973857855 67506710 111252671 143784482 738539418 621165760 781682536 592874305 876127202 435994955 548020635 414615638 572195297 922232406 968367844 595814243 834984747 220108515 365968340 455485705 555454545 929220051 953579418 679514517 889005452 125389729 733329745 495240212 797546658 146527729 699595262 713621362 868506725 555726851 993639624 216825325 298353480 927983696 958103254 204750926 920980112 204448394 546958835 532912619 875275726 984129609 998324992 829930120 830929760 777475821 963144481 500221745 527617252 233931139 299666143 485908097 994151420 49007110 654147154 554110428 987085697 75906 748774745 465973735 680914901 296310233 821018775 204205150 355246472 687828004 879466348 662569151 815560409 645140526 980207468 986420995 990172966 657351140 865079982 643796562 841024879 66347214 92024827 111822539 504397963 865695766 905033775 354034260 857208218 819749312 841547220 493446280 695402013 623588131 638184283 708042055 951459783 569349530 885241853 548419738 751445786 633290335 715965596 46252174 132209312 167399249 736729672 46440447 148059091 323951316 681464334 562002973 657150640 79544107 205279025 335725261 830678507 297865239 498234674 849586640 955181574 80393488 638218678 461814260 928375179 429089827 732811284 266713405 595314717 327666041 802174646 1910139 757458813 962094199 971059143 577248186 716508096 432956661 954832891 477793170 682499589 380894618 542965077 527226292 849769342 966477567 980501653 611674780 905455944 728071897 840854182 597827961 842777743 800947650 837987214 175219517 366250573 888592877 987499036 184621766 194447443 450111409 852117863 988273070 998519046 63969970 839396954 54974775 91165653 16957411 891283516 652593189 764667821 649756518 970742422 765920003 868196530 640937395 742135523 722064779 929023443 448988338 911598940 954129654 962376679 753360277 782048183 69861407 966423402 171674073 553061942 562297073 975772648 77898081 664112371 109509887 771477323 217985467 959080790 383849243 772314440 596694430 905891472 677748383 951271295 86076258 600812972 548524392 858336314 67129248 282134926 518141691 846736709 873733535 974040020 333035512 490433164 337518065 373714419 344319864 903706316 419374289 658952053 331627629 977218548 412407715 737269858 254383038 261037882 449889515 976876744 918979323 929302592 824739671 836524404 905228237 985113061 478725533 941844890 89333027 612340671 60802309 762663077 233790593 855769793 516853497 780719875 839031782 932630392 406263506 799932987 172973237 385354876 301729283 879092070 812363903 813801423 308677521 350043226 795991987 979774043 230284918 250244731 667963228 965655821 299449412 582464353 710312835 943942299 604138753 645000618 565940156 644572062 734974430 889014684 750955672 834509945 185793594 849800583 268434644 677419839 443161957 927034683 127681452 528328184 769106169 990127415 360603184 389678182 692065563 938432092 38914020 650886632 549233128 728871036 198606472 556643181 529111827 781308705 423027220 771247333 119322572 282178813 296578460 346583564 769111900 968841867 348089214 731265890 863838372 999410475 826731487 872345695 992728749 998923092 931268201 952824034 137037606 455683014 887404784 998920928 611081695 674977181 623896475 735904121 634828244 989638218 65861412 741308303 244520615 245578487 815673702 818130190 469081092 658047010 655770747 801043636 53874232 838120383 376995426 431975736 145044194 169417465 936178162 966447163 937489661 965475655 422539781 883775119 661306716 799106197 345776915 883735948 515507839 800523648 788062808 789065169 741783902 901083354 445738092 980768480 734349174 943642843 231139637 595189528 676291484 729003531 313169501 337668688 7977293 191062889 434864137 613952627 359557551 918753853 504802824 531661367 920254941 958279137 28127907 620986471 693044614 802594708 478715503 515048154 679416472 917087604 184867519 698468318 419283272 834892701 807846182 878139546 509089049 789450440 437697348 670531235 330793696 406348718 922374188 986473619 928189160 958730170 930450317 970916358 794120228 989856701 286812645 368553123 741164904 790357037 755516620 915221449 774695986 997068209 267757665 550379784 858850030 902153958 880838739 913129151 262994941 646076491 106357214 642505105 535997869 567289448 711633247 721530259 874974444 944819876 148918516 768249167 942031578 948557548 795494810 974266932 124561880 490243929 127351885 672069269 389823101 511910686 719602091 869038912 353432673 821995573 628005177 973462551 23953717 770251158 513994197 598932394 358842109 479902981 630648390 844487607 815206103 852527278 604615565 631090513 111588661 254986160 218113823 921609647 932819199 956809663 53890601 935459629 720051190 720142112 253127732 327455951 655116176 768839692 216130336 233825664 767735466 998423961 396906927 791348633 984431623 987637845 357566119 704297152 683702247 903231162 485031686 569594431 325670206 492242055 646378520 841979639 868246279 998215079 759130342 877777103 379427763 416802632 283090339 579246451 50609062 241314236 402682716 623350646 981827295 983620563 48752594 739583603 724989851 753170875 118130617 707431331 794358472 952882916 305951556 911543829 943910846 978601134 287152837 360862017 815982761 962403178 653383504 672123255 905547807 944520305 700195228 944873088 529198998 724863208 548622514 778014050 536530344 918924621 428488130 706923953 222524453 625239185 126771034 411707065 925902123 956186618 986300586 992058556 623429767 917409598 429223214 872368891 971242674 984513701 170545636 802908573 982454792 990049404 700640112 924534054 701543325 740403800 719828326 790484667 309734689 367782518 305021915 513759968 340699939 877307329 915567256 988153491 868292063 938635251 473393925 708060181 927721216 942255761 427451526 594380853 236196430 619775057 965692408 974842588 364065883 528403547 779062105 951520121 220885452 833510037 998695516 998957817 50743365 334527132 997646583 997687806 708636321 815611723 565685165 764672003 664503559 708844010 770447896 860885954 950515984 986215976 395610834 408273309 749833770 790210008 770068103 849888822 107404884 458158603 935781043 958323790 466936110 594162216 976229407 995517306 702977431 823110224 930624393 952134231 9287583 760943834 250300794 813521151 200262070 518276289 236297575 909578796 577282564 580537771 979393956 997043369 909529927 939955306 473335395 667713890 979362990 993349793 652308807 746345527 320108542 475013591 658031981 772414120 12315356 172438312 842670609 859743668 129622909 292845579 509864437 787794129 44563014 430738137 555351651 590693706 706398657 764653639 640129739 996708398 805993496 826673815 239865949 564205116 817729337 952347027 886001490 980008450 110081781 429406217 594368130 718187892 259864230 505312735 316100223 467835051 850233714 924116296 307719245 308509452 413577120 812745242 383396017 762330126 586963643 800919208 368991660 605822854 649047665 775902464 522881896 994603112 526738790 602766043 949945487 960766501 844786582 972479152 920095868 929911573 106426041 549955865 496613478 882867921 153643416 603450831 183640776 410185995 68903083 290696588 230525806 336227823 752555267 792045012 140668619 687688754 925987356 975063843 113884285 571901715 522588294 861972634 228773752 571488405 496561490 556892387 430794784 705911776 477555996 511543726 316398542 663994704 94148182 736307753 773507427 862762738 327271186 850247381 839354678 963048129 183885483 807503383 955354769 978386073 133441977 622108608 771099983 969866912 252695074 980020341 235330040 675883567 762330519 931374859 19333174 346707687 115533045 510091848 545901586 769229693 423163504 860687271 386352295 577109401 554992390 795082990 755882796 876864195 19729658 231660500 340610914 816559799 548637707 794591353 777734079 907330941 451924704 694317797 490287525 752303823 570954201 617377114 656396916 962250205 381474028 509049629 315310321 617553095 491607834 983403083 993626068 999426391 652553422 746291200 743201502 770042107 827273787 880137799 619297957 737637863 619938246 939651401 424611577 451025869 993848808 999015540 404292763 667473063 957315065 966381160 538918440 939381815 730174647 773867497 903648782 968831389 280395541 711933643 721856473 847466839 195037214 371358621 401085831 763382878 114717189 487383051 503684588 782881799 841490255 965963259 62889662 927204145 669914585 725597846 138516237 503798651 938249706 941938718 23989679 533713226 517257766 665666867 926652440 975232848 136504039 275697024 924901363 963279219 359918637 954540554 121667956 600533727 330291359 880958597 622263358 630457821 19567046 516632588 776143437 806758894 441710136 716861332 337383576 702485147 607780059 737630820 473124053 931185111 197717995 818281937 409309328 997301345 441184635 963139861 846522424 950522095 966211449 980744296 35507625 251467125 587212857 681506910 453863101 879266305 523085760 614466080 466010533 936712882 845475845 912124715 772565324 852790759 892550437 898402838 157622746 413818433 638574141 756777300 229922608 740023741 380719891 536133630 113670951 669797191 386080543 985474855 96809107 496413679 264564454 307915790 911567827 965210969 950807225 973298095 934842411 996618814 54492158 414924052 49644361 643419607 363252783 477340622 828446418 885955834 267439723 646665778 958242583 988915084 15989964 434741066 144399221 747318110 658090451 872586297 170215816 437334609 47631155 710169579 218780208 263771227 166941212 252120217 675805422 750410061 506344959 591773158 685753517 761119155 399862432 659608691 432711288 612703978 201332064 723248211 517178564 662293533 272390603 325874209 783531206 843506485 521515910 638986043 716783244 823840051 31420071 636028913 348430436 580518564 121308377 158274316 648368031 669783342 417390811 768468583 327458054 531594257 775832541 790167308 682103039 971400982 463705680 770374307 200039312 888103448 494342009 800572665 116507468 423484857 483528478 577132475 420247922 659938884 622095411 736383257 673848998 857930980 679868186 900595394 469842943 875869730 278778363 873455327 76438873 311462185 216495425 687762081 386038199 506320907 998228505 999603381 138965861 236725406 174483639 209127777 555858724 647351377 275271363 952650484 934206303 979767952 810300678 824210024 964620530 991547768 648587473 954939175 970942521 982780387 157088688 292940804 778678307 854224518 445513144 795468688 689295282 807521565 431578134 714256186 746017904 793638274 147848663 747386132 11282543 103335713 616645317 952464735 898835623 959755896 214159215 797721322 359006053 772015537 560794466 922779208 382414481 455130407 555877970 869377523 789784105 829624543 313394771 567492984 371372210 394139598 289481266 943585475 796446504 924902852 346597334 559655387 296953530 816582273 381019706 671647125 947904881 959527848 140384611 586917270 539369321 950683659 708076547 875699482 681765590 686883228 276897666 623826472 307422828 585560678 770915367 848809818 55114683 367289821 876966890 991266396 919355827 975912382 673132041 803385078 643755925 993206954 924806609 945396190 452488629 515914661 899134199 997929368 974177225 998621860 788760746 902067035 288407813 736158604 995407374 998060442 469187131 947123237 644366738 948449013 166593815 302658496 630351391 674645461 195019140 297637001 458936380 484120351 24898625 379222455 438247910 658272211 597656673 791964764 533192460 708796910 522644784 666674846 598927004 991671115 81203488 762716785 142547673 967236669 68251913 117357424 662265205 762014879 369982436 989029789 246714225 629799138 561689557 731578980 603960847 946310625 693965466 823173363 127176517 470042568 294841835 354818503 708328788 730241155 104554329 669857814 882919030 973335895 327445267 683214180 724587115 929686362 187656567 875782472 562499332 810127916 547078014 686700719 931280515 975547481 831152497 872510781 81225917 182039594 448396501 992674201 388848580 973106871 995900262 997285320 555617669 654941050 985897328 996029019 733420999 958661656 111804202 857374301 1192032 760396441 588807027 737402002 509830088 605619763 558424502 873043830 985051688 990792075 359949994 451868373 525963942 989153628 72391320 148544291 301010881 928058590 377754531 977994463 719203408 768997428 83048562 111849041 655977158 871841616 615147342 797895573 557321616 683069946 600268241 718716319 603487097 693743155 626009936 919191396 668059813 835104712 918653336 963354191 105036451 642390435 619916130 672056312 210876454 342468618 348072333 994402521 539327443 557269928 560020600 733520435 317476513 339375617 816556200 981801551 77566828 834193773 803737545 937569975 667986514 791245003 477905457 890580941 925890741 993194714 812357226 824255150 20895749 378692139 102823783 767789886 707704244 780498217 872660376 997177468 728447506 921353254 819772842 981501745 151746766 663136493 865477175 989678940 492994905 543450470 821259378 881417156 716978863 934761640 782277424 890138191 830521660 901434009 349863430 537095209 221574898 806008422 554044606 687511959 10003556 899111997 913985265 934658410 390860662 966235767 429285671 800418554 387029245 648343165 289393333 561894335 49597836 665360593 61974398 268298480 906650533 910501470 33965093 720636335 514817219 851474730 220896034 890115695 337207411 403226481 25988084 488109820 277474870 439612117 745190074 921383680 331676733 631887724 578002241 762126307 215459078 544738734 532948511 933550351 91809289 851362155 899513939 937405062 845702498 947626777 226361560 836698467 313490147 720807892 726021694 886949066 577281109 990621266 111105687 861410689 736258481 750016692 495182203 895101782 147082290 804923544 174404753 497303987 93938042 827220816 763082090 786064381 231252687 393145014 62462862 975598992 172870413 696224392 747624033 869308349 305529671 887595548 93384059 829628218 839611396 875795544 927057625 939991856 702268094 717876284 626589762 817064486 207710133 846180911 32279248 984561977 4121259 615445723 936153655 997173210 73211205 838136504 245615447 652217630 67764590 736366587 188396192 499213253 841822786 959351615 741151434 797189789 672245715 975376551 409910643 586013661 17870496 968547194 811556182 827891654 802717872 983322547 436886028 719527445 563517089 804298102 772510765 861628769 330282275 348326234 233225820 249940800 123515597 897679830 631618760 664996423 18562783 463241412 160724924 484816114 940497717 974894691 174570181 483864501 420925668 930993105 15423612 63834633 312473004 564698722 963882897 971415780 100805088 207084754 535830865 800915995 815099160 924693673 22896075 880860739 421594787 822558244 104190571 639124427 951930839 987700529 779837943 970960350 313393365 846040335 790717631 864172568 708809753 963007562 95105811 167935903 186174404 855090703 621354692 972351454 464169315 731201107 452045919 530699101 212613607 891895043 402866119 494924174 940566443 948391522 478720160 736471152 635703315 688222591 488742714 924293238 135811639 613284629 155903735 942891494 766794691 821406100 644748759 926598981 731683832 796797304 611296702 799372011 288267353 631719731 145310224 328948342 653769352 754803001 125255085 526308351 626748204 685907139 679227775 702910233 40982470 333537038 382137499 788673699 311422992 680536533 447078053 663852956 578611211 902094770 375784071 958549647 703573718 769128125 871753929 879069875 126450149 463635669 430350950 779578211 833193613 952501707 846275170 852540621 359559666 498489096 565474653 954325798 450505490 893484343 533736411 864874821 188795409 250421510 669308811 672792833 757457430 937701222 351437154 353460872 997880264 999214389 819210645 981672821 231639866 548308245 817161944 854284111 130544284 306941189 708509845 964745575 176382385 538917343 412019288 944673632 827836332 916545734 193994238 808360596 970906581 975130949 471179358 630057468 615085964 873318027 717900537 937423983 516298976 566794953 29555472 270072955 282972245 585133082 487908058 849006812 378847186 513489162 515993305 877558383 262452496 657219600 368016354 816178797 547494373 857013247 195199485 938570127 958079294 962913906 659512530 769885152 471983527 744105363 124517188 687883440 500937216 804672264 689816449 865428473 465485441 843992268 901307024 950855038 959011667 972539142 836605196 885204574 891504100 970265436 588684141 826890166 321979388 405596380 995310915 996935111 709100152 873721381 859155700 932876018 455364570 569344864 455434498 872792501 443028415 935134130 393290643 643417922 913775070 941891408 412956361 873780694 791811717 989998895 470961516 569290622 509554715 901283620 76787945 876739032 129358010 701152916 895337081 970619536 230281666 576798711 255333451 978391807 48360926 498711605 629022992 820263919 732972989 847658921 461286481 753168896 334780730 545556022 851064020 963406487 596196182 885390039 148514633 912055222 518881284 544099175 700694059 710706809 564416491 736551790 46638282 63487441 921124920 947004636 702241413 959988369 344221398 734977223 242725787 293629283 156482302 520858253 990316345 992692407 632976495 908800367 672169482 965665861 166200082 266811519 43438753 469758187 744130756 801768390 513922787 900257570 831142363 965457642 646188766 984240849 703235111 910731231 374861957 440183883 180041102 760165611 591046029 686946060 809759934 982700082 698884827 736190339 179602 176997257 810556403 847198346 83340196 681121697 383802432 683587523 856973433 985592937 63679453 810402373 878482928 942828111 868945705 960713329 289677095 297929821 754601274 933004618 464843186 733887981 997532219 998688180 248099901 471666932 100227994 333135536 297813485 684094840 628288092 718105188 930365054 940131057 410238585 559949507 482318053 775387915 563238833 932894091 303049933 640374901 162582690 581072210 363835393 910228900 755791703 777245584 662443578 871302946 718032176 770401873 997443578 999942912 923689239 980134664 619008619 950739073 335227649 987162632 934910714 995860589 628895709 854904150 474489997 947892323 713597495 913825567 408933392 827786079 69876564 883409462 423437822 906577805 489804119 771387361 311072877 927157943 935098640 951538881 782768831 788968182 767131190 845978813 895261999 988671152 946317675 955424361 562502638 709596012 168172569 594639380 407198359 653614758 585795556 981947805 563860811 859794745 128978675 571591646 532527856 955424061 607794281 945843479 572397441 932066358 198737202 241181430 311603585 346438478 256421957 520421110 752285688 919938490 358477423 413848236 728028645 956329169 32789104 699704141 82402893 287616328 596546008 805283075 488170541 884036318 786418638 810814915 555894712 990176220 203638174 332518626 315215049 905649031 235488477 939496614 304955531 711377334 513369152 933751440 173759830 303309471 273488046 591483089 632533655 901544133 48529973 567676060 901248977 928670144 849547499 943600563 736080842 918777977 313467717 734256332 598139075 839137131 897775169 941235355 660094724 718414152 416912872 628690523 881160401 886388610 885625237 942634262 528111676 871159441 368299190 494480592 380505465 670101760 134180127 195568725 645828589 937324950 472297989 865206918 154978488 611093599 355990751 467380603 761872760 985037726 756807784 844198679 824062538 889089557 992792637 996297094 619777288 920150446 17404833 567674624 378613343 842141179 162245789 803126166 841051428 844825230 570510741 683480239 88534069 643537621 554994750 916062794 51160150 63876387 959861448 974233727 116332567 376530402 219477851 364073001 771254214 921735153 514774558 520951202 490757786 897857555 307975982 341164680 303379833 504016041 418919533 894333546 254392966 917479369 430733011 535472477 553024013 933966416 413649694 615157527 329121152 819714339 776117940 924181053 33246588 438991343 619008733 999900907 555968043 968570558 919630811 966214439 489606751 783551947 971622606 972113633 251434631 415926530 784899444 992093020 688829388 842904601 655038354 935208686 764522229 772894672 785875496 884435704 943542281 996649366 725465568 932227409 92945534 969797669 392017756 742973575 880501229 956264142 875264489 885140125 134358496 896747011 500010387 942101894 625564924 746887775 244717346 261786385 22029897 434972449 97892755 950156527 168116854 512135116 428086804 681382382 149472767 683764565 499541364 695768573 801536608 922558331 717599982 737311484 290611957 859942493 338369112 802114705 522707310 572493899 536722108 606793544 631070168 988136984 667013637 682028306 238047747 646575143 196769814 798507057 82273058 303528351 332917850 356508345 329095684 839838684 398850453 586522626 773362964 979941297 147160750 239530270 803059314 869183943 646398528 812960321 830679029 854861938 756818993 854135436 209045370 308740377 315420154 463816405 172797201 553893909 469857641 865481350 736687059 837618223 578725224 799490303 841364096 910494492 285845137 636838810 196210588 362983674 897763939 981406820 159174057 813517586 655189235 808393424 53003605 277000559 923369928 973885977 900621949 975688292 831508262 934631790 872591120 889801274 593220666 991197952 719534555 961205548 24470193 223965074 24649497 228550999 830419098 878666188 621961253 921549024 683542206 836044232 52789446 88039062 7841766 650167102 357385093 626528789 508034924 604830349 683335121 715758468 1564574 152563228 418208162 728835797 705702752 853782403 425126154 840798732 513160140 560209688 877686284 900921583 195592894 984095020 769513212 857392377 464156204 910912355 993417266 997402941 524451615 570906908 618758278 784537705 650382948 714435241 723091634 965403516 896607601 988138069 25207496 563155489 677323261 916852724 917733189 974651275 213686412 527690826 397844608 666740091 696715590 854620239 3916975 625599332 626195607 934298198 401039219 754594914 483361170 824602745 710193808 773136784 155980237 373495324 350256248 996727975 945216636 948711903 479989988 680013409 720338853 959010688 441964074 744902750 972264521 999791560 530158746 668279625 496039695 555612235 85849455 378265749 163453805 483219305 773873861 779024223 31984021 734736443 49454025 959708531 766370754 778532541 600852470 613423663 360392735 647815593 409856001 657617782 172241707 437749050 543881584 825270805 889512367 905709809 198707660 963844681 596467039 842541678 206637850 768622133 65675529 728884857 721074007 737599812 129743686 419853680 753170675 831302050 817298187 915093980 132897496 639143856 801270073 885864049 687727172 755164513 468202476 702784849 38392491 387496983 39841959 853085725 511770948 763454637 559584467 973005136 344301091 521540618 931718644 951548459 652364359 827127939 778938805 949700171 194059602 345315799 820427150 843862677 487103007 990828990 722135274 826001777 91876512 919900423 566237298 595750717 380212011 590690256 633426356 942121555 85094364 100281819 572040563 771720326 616009742 652717202 686974261 757780701 916367888 939894845 657827369 917679587 967609868 975805584 715126153 724157075 796475896 953213553 867103737 961060396 319367932 561448472 972219032 977261887 626113934 753485736 495917659 537205597 355150417 517860104 449466538 527836609 332451137 915732746 678081222 689572385 357311245 890421821 484464088 717311973 188578914 731164769 248559655 263075925 513946888 644424352 117001464 661183307 3993496 157772546 730185750 952079040 365292267 377228669 952440610 965711943 777693769 875330207 328798151 475489312 466250727 841036828 37340594 424734682 423471536 441635366 41009125 461289199 639926052 951970030 622671813 869810033 603033523 884035358 193983329 621154055 155981513 658770526 953265793 981188627 987188442 995440160 242321733 366740505 993597797 994642476 949496526 966823874 921032338 963680549 243749463 292810824 913922594 967243700 498760912 607347137 373355409 499652028 673170350 768562852 710600554 799295170 963584775 975946077 537683346 957000462 744234732 997405016 984380794 997216205 36951255 339823919 99455109 634738216 540435660 950193639 398650375 439115775 307650855 932225462 225588119 991795429 227400035 359179289 614469624 668161895 522556726 692852115 36964776 529709953 568739458 662350811 548457099 801065371 289412148 814730737 922228626 941411131 230299507 782136397 112466322 644649585 437242155 560251607 745217864 829425026 791083047 812810941 732144781 897862000 199661465 352578209 23045099 813013178 888920051 960251358 893510195 994825980 250200920 512256978 56863270 717140869 193911384 202249425 639344304 912764239 380179004 595354774 679018442 895262471 418314032 429525741 709260761 884890477 322825829 454600082 82742601 473117745 665894931 709506427 986491813 996497144 731051751 789846365 249714735 387238280 755918957 879185402 80611820 912813588 662044494 767424439 451874489 795252447 586809967 903055537 916603939 916884870 963426460 992696452 334512460 478038878 648674635 741820690 543587217 691672031 362281273 750593943 497021424 538414015 761273326 953479759 964886536 982844267 463309246 662103469 328096334 554196314 120159001 808847071 995118768 996206253 854769518 915622462 170633366 898436652 421833532 662850288 817209901 826913594 754327586 764514605 148686315 379993794 800656778 839816080 751900647 943921366 171097534 459895852 17002707 896832680 158612813 280853520 470900905 719070737 376266970 491825899 79460599 399460165 196239574 720259251 499560869 725690144 834775136 964007590 847122052 906513091 955529378 956756989 309148655 490667828 401925099 960690147 496792044 844281710 861180451 944136309 585222852 742745412 582953479 625783041 867407344 976482733 457576548 917930897 496963016 612884825 375091175 572549249 46194797 379763265 112978677 814376287 613594653 702612657 473134911 768006854 545932923 675415880 688930795 890928949 410549697 946177261 830340994 924529486 728698585 895935502 152433670 316501255 270714729 753439462 735487723 938600899 467560367 517608508 942677701 983261386 959687242 978128946 108980586 253607340 341066697 370579535 841196125 957325164 942504987 958850509 439224284 914746655 859704890 961657896 27409603 692539596 658344682 780822172 773361911 970385306 996657412 998226219 180769160 463414924 72203501 512438788 426189544 893413344 834504906 990169830 586176304 740495935 713246076 745608649 314207298 722616304 94371647 452940856 164606348 666264723 899773188 927658036 168938977 675878957 509409956 906959101 495972932 668551622 809129084 853294505 241192307 788385393 527492851 717363720 864108489 986783611 307279140 880463102 4503679 158297056 826305571 850624513 425308620 582370180 437883813 884267244 950596737 987097193 342067160 705989026 286212433 367069186 935249301 980867401 397624748 753491672 320984133 813621900 867993514 897904717 487804288 899691098 141870656 344741340 597666505 864480647 223009405 377677318 810765519 941495026 641090580 807385906 410368187 873778145 142630329 329115177 513813970 514450529 452683592 560508546 34522666 395158277 833944788 871623636 900590912 911175892 779699156 948501648 937151111 979575000 322896424 376610818 426243820 645196609 908176206 995423587 156567748 263727125 679176166 929636534 90248074 284608763 848114515 988986102 964277128 969185540 275297866 516726198 369882675 730274764 209624566 278380716 26007351 731587588 125327950 222802832 252082242 713164573 597384824 881552594 870801825 984408346 596601207 949070571 209378901 489953673 265488817 983930452 465377406 798367799 797539450 969378420 613878127 878524967 388599205 516205387 80592424 731724550 537451864 627359149 444568727 586877221 845718733 858276534 431673587 774719229 778801221 960074112 443295037 659621974 487583441 828062405 433688114 435908776 807414917 975090578 983746853 996259951 72505428 85657097 641059904 775750742 792348166 906050743 136452136 880298764 968342500 990686796 539907484 693881860 594870168 932673272 770950850 774336716 824054503 824701145 29730690 380668497 160465185 422720819 572831005 941185713 52953874 262563794 169750331 613841114 920551163 923695737 579906038 952401477 513786309 915116356 687702657 765980384 573880637 627172130 607335517 866082668 51984037 84623802 497062656 551525268 515570271 837715066 257504883 994949600 175480340 889742533 30145579 478685922 217266680 731609129 762913032 897201648 17091336 970634222 72466387 941900918 26026596 393230722 547832958 627187390 973851851 980182919 481094898 932329325 122424490 378448753 911640230 912373673 885242322 988759352 516090904 704001044 580423110 702321903 171521174 173500224 378362096 614825472 117143283 467594021 81208461 801882520 258572398 615013365 267514190 667366867 418573889 727672765 147544764 741691720 62143435 647447690 695599498 885412121 396324941 824945612 9256236 91222615 506280941 536483960 560581395 785025605 490955756 867942856 907640325 927162263 601677284 764693317 163495159 954445575 365430292 501732222 907831347 986635024 479410307 623549362 765520593 893895405 479664717 967582413 395632506 616235649 857546608 907338880 854931041 979921481 12490688 663957049 924343668 978380153 785556887 819465959 927096032 943185462 324209143 820595625 587733036 681769419 959678755 974354390 109996687 628745265 152717398 426025353 420335448 915280792 719838444 799668903 370143619 466526713 398212617 987324001 907350770 908774896 659242925 853812474 59450014 828546567 472376926 668745556 502722904 715645885 759179608 858872409 578186181 875592030 673017614 701413572 894392434 972781925 351356674 695867187 232450584 309004892 817711378 999688797 587457355 977654317 826339088 838421379 384331474 831783897 637720711 844208154 238696630 442172140 721328106 907966540 619071088 962887585 316496178 637289044 775107809 802258165 542004060 713699456 212323842 758166266 480707916 850128852 443110485 591552983 667675348 695488048 763766709 916437328 72899202 717988632 760046241 995327996 81639641 516185509 184743612 377514828 48505993 581538698 756147428 902601821 394263636 720518979 644603166 701161462 897780093 930561476 519149502 760538125 984827140 994716140 444716734 843284896 310855812 402642002 349466626 983203297 341435628 564386636 181579479 746908129 197423356 361095490 590830451 640336939 115840363 846666396 483603649 721957004 136873234 553349389 805836551 889422374 352356222 980165190 752752446 995045250 714108863 961014135 480282092 969433080 335249523 799431509 760791632 997824013 735942234 958690971 366288346 732899790 769181550 854575025 368269529 408477757 708870472 996917016 239291468 795619189 340970197 545447198 231897311 232196410 762763002 979268460 987995742 997646150 906479379 959132926 212360642 322317945 759256370 811470112 485910167 742123998 352331108 630976207 202127678 772707005 396754338 400911497 15166400 168864528 625317999 640050665 697866399 775488458 366727325 878418529 911482853 966486192 766614006 858642049 533234314 749752998 906699244 940393047 50371711 365336388 972921331 979466521 717320660 974816885 781115330 925599991 101233901 217272532 980950847 996142033 320435914 689279707 434029044 661678403 678690929 828511146 611256996 699746783 362692824 365227449 60658676 370546473 407680326 899255344 793128625 800021237 199542418 739011423 432588290 586001573 122071734 953137624 593533892 601153447 913540654 925110016 988659754 989711199 395720080 879962053 635569289 739954444 837963023 841928959 78214948 991509841 675627050 939087997 532742269 885553460 972514034 982594728 279004807 518898760 295786809 363637990 959258538 998557108 790258495 793927789 408077585 787025795 857623496 864038519 698922021 891456606 755331584 860263363 114047908 340122889 685116539 948384372 879346919 912127738 26249988 625288771 98838198 199088701 905923496 925561599 877062842 960467634 385163642 625834432 495720223 629023938 13299883 891207970 484933284 552013283 969711339 972958281 677844291 885894658 147767631 936921691 809989390 839117647 827997611 829583804 34142843 603345831 350324072 982201829 613462468 687362318 46331467 718823603 957070090 979217431 200188431 943361071 772116373 938579950 611719259 647113202 555457625 968431085 155197214 240998029 546588344 802654644 728157526 810247299 227874747 398525567 824085007 908172631 433195961 670496660 687943266 824775456 740894247 866024954 263803242 508491014 740620813 931369413 322522915 694667453 900049961 933684379 972092041 977939295 838137218 941428790 24332323 483405765 764726191 840390246 944320192 994747411 799961544 973875964 253989088 834979688 447672042 475353333 860685061 972994516 38253075 978674047 119256558 217112521 974514226 996403449 773679582 980184839 909681073 962209618 11702409 656197628 12599116 810899023 27718605 427009835 885538576 928734779 768452645 953178731 118607706 199545554 326857890 641782385 683130912 737376680 335577907 769311564 776923476 989054743 891855131 897949688 181205923 773811870 623482615 934811917 563416578 717437730 798787405 970146417 63321891 719459113 775258340 922099078 407093441 817138450 347982130 581031756 113200302 988203869 664049031 932571815 721620177 789267323 497270436 874326350 929307409 948754722 338404783 647508697 482581272 661245043 455024357 460054333 318084987 968178619 162304641 334577689 749601804 996087298 187813529 824593866 81997165 241006919 523436606 954094383 655099175 853776134 520135718 652607368 650625714 925679621 918754411 993388357 557574516 625617130 683623107 831335568 27387151 237289169 438987526 616801547 653349339 900795789 72659666 720703886 309880049 757486595 573017213 595119237 277118600 533754373 357264268 796619335 167944331 724902121 32406519 786937521 817783693 884221595 154555133 902602192 762855894 893228457 74071736 422288798 646309873 891327442 677191187 689712031 864160950 903479838 236016731 399977267 989050479 997651083 694319438 797419809 649229969 887680735 880981422 942486108 4681376 705746887 305073494 511992583 908700000 954730721 654366856 804223338 111038355 739752423 453294079 840296527 264587292 705438568 990451724 991597561 548117758 938278292 970310916 977051926 958399906 992276362 983561712 997011387 620161680 812826548 353605868 647661311 110545224 384815315 877625679 959876124 898704827 909945636 308578138 929028240 156374721 279426499 588164164 896982062 881108027 955127787 877225228 942232634 535639576 624573363 854303761 948247084 774684132 987483588 385280445 703951345 237926070 632975384 813004284 836888232 472915462 698687142 280272337 612761811 367601507 645051718 789856461 831000197 468360036 600392981 24167994 837902681 894797823 952680859 801294465 825462325 220770870 418122033 721932577 796522348 514528169 759372150 431895575 992960683 804444736 987829297 834084367 918124339 900093985 940016185 462833768 866502319 786180509 971999113 815741680 984826867 83607406 676355156 92645226 674972831 400855985 596627611 830349967 904692721 102621812 738207656 778679047 868991282 294184431 825834599 152718820 410432307 603903654 664422067 984649442 985272184 96343337 143446828 690702844 702370996 257066857 492707462 403663209 742549299 107548991 548464655 556953618 800418074 20262820 137816684 353287687 902894914 750990942 762983131 223578804 862393723 889542725 903311467 26071209 403653953 373648880 763987411 189228909 338708272 629015520 886001453 11537279 70485750 176515697 758947544 649954985 668204594 586848377 748880142 815211861 952264232 331626488 489039128 107279250 875539118 920884095 921536848 888576077 991815030 551728229 914156208 72046504 798039012 584925146 655430029 702955059 741577607 999175690 999860590 376466459 986487503 958873361 983269442 214237030 509166751 938753971 955132797 566410353 820798449 61120342 176250932 172530458 878943312 603144286 847386902 804383582 877175350 810861468 932533950 221427629 620612778 893743410 972144826 123692672 768864713 368160321 424138435 56041706 678179084 615399787 751759307 777747957 836502665 966247408 991159010 635768057 648859425 197896986 976424346 462511536 465608188 359253483 731048530 646401729 994464546 544209796 958108332 17116600 604227756 178417075 305702267 693857649 850601814 760786987 931743114 857596883 914116285 78757181 474167790 109060070 817092052 685876982 962966695 689530518 972567301 198331063 574502899 95973922 681737965 927267162 959642770 529618933 613723067 366173222 631085416 172414953 526447077 426001300 516111772 438009666 982132010 253411438 356971158 413723110 651743642 557875970 883140116 819089611 887063322 393401223 539554792 273157957 293589940 986455859 991521761 372804870 929432191 10862419 652700588 826600550 876774481 225516437 900235713 767103637 888340429 566455344 816191971 952174853 972202684 152199521 922425245 476214341 639154990 712362837 730650961 374224492 804262488 942403740 999328169 45584357 436716975 509942164 921190794 546240193 982673449 452860453 522230943 195793847 941236282 15200394 868246905 54671784 828974819 862533768 937066202 171694503 213600625 228757218 415077614 545873349 669619004 783039641 890398198 673103662 766558916 126246175 902986850 525560820 693555674 115433401 792601392 438978558 912113578 432229835 466644000 202295581 948801523 668230995 995854803 123302085 953321112 984258918 994732239 788458488 846782833 104714916 455598553 592125103 793252165 10756298 569320746 192691829 879406572 715344076 918445548 977382182 990766911 849734550 876321657 583594270 707374738 202167810 485936138 138560311 721246271 811501672 901396529 774527115 880971829 632488685 745188054 588388451 954886005 819846331 898375478 894733885 926280635 930449906 983951356 8657823 581195010 872442215 983707429 517056731 855864070 166938192 294646627 863292711 940858155 504489059 598567005 605267865 785201273 496653336 832623454 238152781 853346893 185810159 430573637 164159826 542939766 597049531 993112650 951888764 977273949 132322216 544956900 788115434 819434991 355169991 964892163 456475645 567517982 982269235 990020252 924276685 975836549 643070720 927088584 469683125 996387516 310059490 979908959 245837923 439346686 386019148 569971282 946827417 959709316 5267156 234747816 179891562 792968626 29176148 446713919 910665450 966661924 29960889 908638692 282726589 977027406 534777461 613738428 236189631 459987184 228780675 296705833 275258082 783760492 46059786 870842560 199100462 378637543 219728022 243582537 580811896 853226456 357372890 908251231 696270946 840259350 315303134 387107278 136437090 687514301 50963900 222012349 325307148 625802514 526444978 775857402 406459026 937432695 153056744 755793304 643115869 972591925 373038295 711472742 60504921 496379956 370206137 643751475 837639723 986148094 818702066 899776736 807516409 876749108 397086927 510994069 696244381 926970835 743374099 835309440 309704424 853943595 409135693 697720415 507444922 618594673 686267697 708047986 520830346 990806836 635330454 933820695 557648850 573111174 268489003 859729436 12681406 108973481 586708385 732672112 992899949 995959250 993676754 997174900 369951586 916202413 825464749 980633643 51746483 520073607 17639240 394748383 231722064 739025967 56861036 212621482 470023712 944222551 888794032 964738488 186523712 661389624 21035108 128571330 123373609 250167469 889113084 927597136 820004744 901772425 679173441 785486957 457462027 845143920 365988647 774498148 738782317 897495316 782005620 792962963 723567050 842343370 215029663 893110484 772046801 916221631 495369039 542315880 445256913 905187566 411505566 683784902 298361033 598877737 295996256 467347470 9543461 178555878 733179849 963669052 907529827 996317568 821063046 966779222 232584971 760234343 240485356 604871095 994981643 995504063 561530727 811533173 418337982 801570414 162378267 443367547 596342562 616488399 623896095 968734850 938438900 954331777 64331455 239441020 968123258 984394263 771021208 838170937 208157184 734116341 121215982 258160736 933569002 945166752 558842308 765959810 630966277 680563249 549431505 551531140 766937452 884454367 839568789 979666911 721045362 985064649 931514836 948505575 588568752 960818577 86281146 497852878 207571338 237272090 882707136 960057705 154846011 936465338 795201345 967305019 738260984 785629195 489043109 738518686 138299098 713637595 874018094 971754002 444870356 986296792 416232892 569774705 692500809 729278894 919460290 971596826 434229527 971119955 89869134 876498722 642653207 831900417 203024426 758455536 542958761 717783298 772685666 852897047 811641624 920702956 414382555 769404887 823979165 831166208 274622690 499946900 642902804 979079395 2293491 49587849 269740099 992257982 732942364 797209050 440730717 675566845 740553845 743626838 491859508 658034501 604821164 854818565 31185729 812313226 793497409 800710764 234763658 861408015 782019440 901753484 611684003 864281987 614981091 954143904 928073683 960315145 153500535 421616466 190851764 804038803 429688521 929032933 457119586 919159065 727536342 807159353 867175868 943533212 452877745 850955867 298155539 388970249 890816209 914360225 634830778 668326730 30590019 463517276 102877618 140645336 378270281 496974553 638492183 876909286 535597320 855322290 512756845 856653758 703052203 858061101 493822482 558817301 100286031 501620185 821868958 949911927 752825144 982931369 757020540 793410468 565218172 752735601 102734277 282447908 656040073 993636192 169084089 240669530 906671834 999579295 159930435 487425277 887958577 962451721 515680549 740189791 351853340 548420169 738953872 869586013 131030465 937091577 864619330 921179209 431874912 956716842 385067737 628961605 159552464 531406029 59421094 588619162 963850066 989403604 658229502 678374120 473161494 663688549 172584628 721914620 139343369 630485897 996875434 998183817 444972318 973289444 344356460 401840165 895827188 901489314 697202874 769593134 431586642 473052768 359829429 595363015 283005117 838056769 949078498 969549672 15107655 794768704 16959227 97654155 193964142 571918009 825509441 936047302 429151244 547783050 237889006 247064220 998906634 999014568 701268678 861975369 199986734 499847003 542835032 966037384 953841937 995267666 480230722 974698032 333460326 901199667 457384134 788092189 118440714 280909982 152723703 946995586 755808458 845056340 703735676 949265342 994676198 994908817 853389398 947854409 474610930 789060910 574423419 973948968 76969431 108819508 157300519 172161816 395857130 650535422 285094744 319259206 500552903 585358623 923840378 968297520 808943609 917474214 812953575 834546492 762659392 858088030 745177343 958050839 549843283 666674934 370745395 517913458 210490743 857723807 229893636 858376383 256984808 931199582 412332768 567491648 174299464 449340447 642009374 944469170 929563155 987452368 759373101 872118229 972209430 985292092 127671923 935572844 921799630 994018371 115560577 236337594 421837802 575136969 258413399 734496309 637495195 944004988 518557618 713288891 730902773 824954868 302833899 616035730 584716895 918008400 552390493 759204776 13477472 534363053 797527032 977681449 316545656 709919375 134350788 433873479 479996685 729654289 936776384 937440410 794783714 929367332 652418872 692710779 53278771 828519715 61058184 811527867 460799138 857403071 666694682 804924337 416604498 492751278 872688501 986161890 511587160 900322380 630693397 960322495 502792416 559813202 102029737 773173629 180468152 437474127 655396766 816244161 322068127 823966032 667551675 819470515 10741777 882521923 214324083 400365679 138455852 601438094 812548190 824379448 3999048 960593314 995273134 995774863 283417392 860548357 56019215 183252970 39918791 123970852 300545510 708079894 432656739 861278149 69076845 472427055 961037193 997485806 581423105 965327391 618239019 844736727 854848824 952839232 402903393 730244700 396292752 801301168 255980323 549112345 302296155 483221643 959871717 977056398 862998429 905361836 438615638 955002079 161691736 412367039 913115250 987537556 224477951 839563783 333775855 606945355 665881861 898176381 385036031 596197299 592367171 639546076 569218053 687995516 402717707 601099211 49829291 675395104 845471163 906451962 729585508 754753095 507729846 700552085 924235973 969246206 791605344 844286467 722485222 784673264 27726853 508110296 608344250 864207247 420014639 580564082 940218415 991846086 275743182 791238514 167292154 942881835 370128937 534193091 114881319 358250874 577224344 914439747 974437773 979794455 668974869 911785225 953509150 975448778 60229262 402131014 321864947 917656236 696372129 979215858 157545937 323968669 838199916 898860222 803890782 996619211 127925271 805360885 963301441 988777702 291971184 683963288 885326053 930155973 239470208 494907880 44981128 948296525 848695680 955380839 681384079 682896196 305190456 749571329 503558893 765265463 761481717 894488412 276283314 575543478 441220988 633781694 504031193 883958687 311889570 533427928 150605824 323576280 224031237 959645441 23555903 453573401 927079447 990652979 64552442 262821757 903692910 915580740 546982590 605943012 375178534 543614423 377364998 738135309 999559159 999902418 453871850 782397991 549573322 692769369 469899300 915732326 859263366 985138868 405828777 511071218 937314304 972558269 771345635 944144035 544877644 692261705 871286502 875195987 959409470 973494698 129776723 706872702 274286186 462203230 32498535 496551308 596332717 870948844 951708373 997086775 689851351 993957188 628401816 823092110 635580602 921826047 486021762 581853095 468984006 605972246 418215726 753371040 502498168 518137782 834058695 841280885 6816611 938478155 917275681 998336940 758840521 973630610 28762798 536548539 141621851 415801854 483601477 644790953 136785683 460030482 521329558 616137954 186752205 388506857 232566054 606528703 561100857 593398011 523173016 694907545 388694183 999854201 623274885 634418675 784195618 962017992 862734297 998443529 304577572 590653329 376352889 956076587 394056420 481000220 861614272 959580985 562736128 970598918 302430506 592291232 173932634 372155334 541611632 675227241 270887967 348813296 255240130 969979631 848074132 976077453 733325970 854323200 274363154 380036286 982143331 993850241 679263108 905553100 892204214 991613517 616777638 778636432 900439658 997000887 955531718 980363894 9250698 941373277 948122137 965230425 156896304 602657646 331772955 614227021 91856885 376572215 184461176 203069711 591342558 826833486 757671438 806301003 221734253 885928887 178674630 859613358 292592219 530706144 179556567 982108525 861107429 943347117 989541763 997330511 142123280 923882491 45314002 476354712 767646276 967832521 753983698 857004755 65313322 199401806 776091412 937742375 60712146 660154579 864096865 870169853 387853023 784682679 165600261 761157170 293822198 890547232 402774985 745125156 387657944 608750133 232237796 860073153 997936129 999320681 501651924 846059064 582768266 991526772 15984192 247208057 476526981 912390926 522281111 907870120 831657838 895046294 550695395 617342408 848549214 891981644 428265225 594662290 911250841 938799675 511900303 774372790 368678402 768822754 338970056 421429497 781037446 853168652 585958858 652907467 736539645 750631801 135243872 391692586 706335494 844370240 918803339 998891957 46197294 760542642 80237863 421207187 631740739 989810163 572650945 833974789 658333899 873676133 863468126 867065194 604839756 812235186 321955155 408163543 774948828 904066604 85700815 112942715 192080905 770042363 105645789 423999404 824402682 979041172 615140389 643200081 1498060 8039416 608463091 653602956 348120028 418400507 372755669 631233763 866047633 896369032 793363686 849815559 591593323 872836392 576441797 942241605 925723091 939928965 366019973 454974249 165324484 993269338 747640220 768611820 908471928 959099990 571515409 687825795 164561396 542419779 451656496 623095736 45831103 779081580 293384794 693330385 303887953 676570377 733320627 840998566 793591614 891723709 842850578 940175529 742479105 999945781 639926898 641561397 580026178 978163724 306920714 834745568 920169625 943176776 645927847 651520475 493998645 630916270 909012705 967393364 257015730 380072518 284149620 329813998 370197404 836208820 701984920 776338313 694236742 762812866 828341100 939587276 221462544 703131198 643252026 649145297 242576307 260578767 296047431 443535594 352959667 852496712 608157575 643152357 797354491 972565614 484000543 828356602 123143369 710692424 671020928 768764250 811616489 852751912 6527603 33402849 363285734 497543296 41207 483722836 658429246 973495611 638391304 925679666 127824061 968034133 323105222 656579345 87162315 364642849 592244987 606488888 409727517 424218181 568031238 730885184 109415774 967856725 876245367 919316217 644793429 767821786 917732841 979656299 262944707 609898149 495312767 888585792 61794271 702890899 576038488 829382053 514531837 826086236 678513011 993161084 22228034 695500724 429042776 718975336 450789376 676115628 875122474 945891092 254675565 720797343 939950576 946403859 572782309 892767432 485907752 510267319 115255072 256802772 890475671 906088224 460002735 637515108 222294532 604848152 742333689 888010660 58306121 896369870 44657598 918447941 29354000 405127174 863691210 911050482 465010960 609085112 446341887 609277415 262809324 702376324 399053577 407082163 290992630 776112935 274216615 971781214 723348003 987300118 48080862 130580153 814385680 901242398 62938785 602252194 450953624 951175185 706312832 808277150 973111247 999360572 835533164 969632658 498828178 734786262 1419037 137663917 591190107 932276160 96255654 716132598 769039053 829514769 667548113 883312278 548113548 707395566 519359343 957469047 664563546 733694899 119142414 211479799 889365159 949267420 671127630 775407061 799863079 966448688 369026188 797593082 772141426 960523719 501112564 716618442 914630618 992545179 907282844 921180487 835916890 966989528 936361576 944599914 912603863 995866394 441559766 972969643 71878441 236699590 857603772 886634658 236806387 281750587 598499951 922062817 916250130 961523174 696224114 982276977 778113432 816602438 179448416 676602022 127099087 453050304 671648240 911900252 896871734 930107548 982854521 991189222 77483294 953963337 120383578 135364934 851965841 961941410 901017003 999165103 504818982 946564187 922872933 967471384 409655525 858345323 636301626 917909660 385240061 993582049 354579521 814912683 760497359 981260907 2538604 840641382 11605893 820302755 591916599 936545530 269861905 416023979 846276084 891957382 867901658 936427031 283286379 835319985 618071827 767793522 659094290 955308958 838168271 921057704 550127969 894811097 188979181 814751001 828465692 992962691 474459795 924419980 927003273 976629922 215134371 571712760 625587946 696921635 102423867 190268678 880316902 936699268 684551808 974260699 160611829 735520074 182415533 702955932 175997348 517341729 823128374 987855965 347334360 888988169 594928280 650948307 219033589 386105711 288882903 848557205 220186755 238235169 85269075 802045233 146801731 225969893 903255935 988230365 44775692 430995343 165848145 522822889 443706097 701349002 49443794 625893168 878392739 957902799 360189868 866698230 840565700 999459955 976184682 991888959 276999528 862713761 423349860 677748047 686018001 718450304 768875751 825592856 10460551 345124680 809314037 816074515 897935357 907444273 845541153 922226170 547137789 699739059 878300232 967759823 999485585 999570470 348433613 811182079 389064843 574704844 939084131 952427867 500477038 855297311 245893923 380541781 949575369 971433623 827021216 985240517 168612360 233825058 100824396 455030405 118101555 464057628 980621496 995015577 103710623 594215031 847233758 861987327 443278871 620633233 673265303 812873977 489577578 808787653 730189813 921779667 59947904 219089890 88363446 342739509 181040395 516877614 739078692 870776530 292900211 407739385 220919226 943590680 62659808 708804089 458669829 542341573 22217101 595927909 903095300 980879687 304870899 956728163 928873060 967863053 508956400 787204684 131140419 998214576 696895867 977666861 254022307 486058768 911192594 975839775 354670888 879765441 985299385 996343417 610599396 860117002 649868625 810230737 815563609 993660689 373331399 880286729 862669086 954687772 337817972 480600682 634644213 916493581 526716874 782031505 29007122 308806598 541027158 724054953 18477520 83008530 780368476 962696489 608351021 977795565 301767086 701662251 831537949 983792458 864917851 967630529 150246511 731726309 986506199 988469428 40422068 167538181 412696707 899741327 489405228 818911911 139619077 652001349 935158510 971470485 614313696 899134425 939047008 999266201 359464035 622494220 753747135 764163158 208465547 658796721 988993326 997421811 88984683 434158745 426085882 731191430 812222328 876753635 118117339 983698010 50960264 616252914 136196738 466364691 629579837 796884095 733532854 987344350 746326450 751712319 161461025 988091764 582211248 686671307 857414928 925068523 841292832 977411892 755193010 904708287 971014099 972969517 506043877 703807007 329693676 474174954 379651618 422876910 276784327 629164156 484091435 646309629 337743135 774355373 707732764 792843742 430569501 911656268 805960148 927201783 748558809 836578065 571201388 670301069 889137910 982517757 73625094 263990488 130194741 482673508 546387203 925543926 326150980 778214597 933430706 980343585 13733721 601745080 433401013 622993417 964669797 988339627 288969333 923955975 716192762 847694182 588816215 638019480 700726560 754958629 572361334 950592953 982275721 993579389 660297032 724301975 729787024 780229909 373135024 760441890 228554035 314557894 135102716 897348291 885405740 903961329 974692985 986319340 976560543 988276169 420247969 657806121 656415455 794374434 957623509 980658565 53585068 788348868 789970908 795187318 216313576 301567100 147550424 217791328 331200764 732117720 980884120 997612539 432562521 806524435 501666435 524399384 130613958 729097380 864627473 908985460 268957347 999054142 472295376 606473593 653163264 988841048 335436798 558070607 641687516 785059798 21075290 593474833 128559977 571629189 902051766 903135419 392016854 677870784 291833389 794829667 324486326 766153532 690607747 782701173 419764035 921359005 89484761 254774824 530079521 848418875 905328849 928876121 296069792 944397899 972274891 991820209 435560752 592305036 569646664 737581462 880231962 980848013 214236500 960322833 626463714 731658177 287511812 363578118 828494003 998287359 677475997 841467221 442443923 702863484 433078589 537332093 178777148 313799367 648881940 882231126 437437442 907877988 72808272 660226294 989891616 990657757 762466325 790777889 202998107 332331724 636944453 887502021 565642718 733406413 566016572 996218243 730297100 858152850 832534693 942602070 310635683 721520111 620255570 667690090 877859627 935774027 68441225 656249664 820821789 979380395 408502428 780118703 32078406 262994518 483681984 625161585 179799654 667875409 877043730 944640024 785026135 940516519 302078392 486582307 412280622 671071375 283899106 365030547 773503331 832015157 451535332 827191912 948854521 958543834 390396299 400822530 546262356 973188721 306613050 442711957 505215908 581400454 918841173 978067435 970751189 972657594 5844020 554875265 325062603 411299845 53336613 566185672 186083998 569966610 886253069 930324170 145585229 810587069 467734258 827133684 432487830 499226333 540343139 896727212 397323886 758099638 979277905 988296540 836272864 940653919 355248315 632497612 892675855 950706727 819944508 989910950 504323295 687415141 114315273 422612725 863649736 871862877 826932214 839085448 226155668 462330455 412643841 549714438 289310187 485472540 425952133 850231305 891644033 994897518 391059927 546912816 745909814 865020188 483540648 635531525 999575261 999600057 703661276 905045719 685871586 923697771 750221924 982095850 354566818 812777896 876466126 883664074 948224774 980652497 35117022 974106570 184431808 551659594 283027658 804559556 923416969 924727970 249762227 664455872 876162071 895165193 434792879 898797961 641070845 706179717 720258614 893409608 604979398 914494211 864885731 960805029 468504774 531086889 296944065 551551412 121623820 796731504 420758797 651510166 183257522 904509650 94296611 215470634 531537942 700999949 83446197 460851393 737672557 762207294 991166694 991427759 830883596 944175180 763929054 824273524 390303069 581686338 974226765 999486382 166409490 886275714 102095683 189021634 216280810 465755285 539102420 542796176 20573867 168347900 904398740 927236411 876454195 960410535 560984561 810062698 254088836 817970005 458658431 746702088 85590921 359555308 624418105 931254659 800489724 831960252 664769656 992184574 887368395 902547033 702672896 707297967 405791293 475877178 770527996 996887493 400235436 538784845 634331999 983190920 241428017 396700970 200287163 529622536 101442690 669944888 56836041 329656571 342587720 621864797 630694697 773690444 251775163 976812476 890145791 902462102 809766985 867063021 391579844 586950807 909928478 917776550 274638190 798601368 693401090 939302527 469930314 993135225 94709496 316210993 690990097 743372116 580067027 852375072 586964717 845153045 855963719 922052290 890967924 950010888 632805422 656054045 171143069 827541328 344780430 999911498 846472305 959322013 235704212 975908077 140948396 478226369 896255384 997940092 90220616 423746379 948672362 992504860 550917875 709494047 334170646 495357297 55407578 962963581 287746750 894576855 160562167 968298223 890523451 933355333 148793038 318718425 673800353 837132550 115771520 117952396 387019916 500897923 311148269 777978346 993877052 993887810 667410516 992770374 891947124 934014018 281506555 307005202 344340970 736663198 484837558 681691291 955674368 962875764 712313756 997861611 943565305 957463416 487227150 650932047 317770501 463216214 558655496 786057378 10711762 727386707 324735163 746581203 218127104 301419899 168992318 170942785 382281382 725431592 892671871 906457711 842603784 991821281 174120248 557555551 218690055 638386823 392592987 696017002 85150488 866561300 522426190 589317315 205993684 747882003 972468512 982513870 182911436 660854628 822430384 854807219 936320877 991447643 440538353 723813778 127128857 432075164 568945969 946262281 765147061 992626522 455403882 657132740 396334640 454595130 351333641 695722637 829208595 959601597 448459553 929788003 897616507 917733134 741320 24018383 486505388 589090554 743006875 925660302 1114160 768428760 634401439 746843414 52473979 864188932 96704815 605933576 840731966 873447987 947698792 997433991 311121480 521268882 627829776 794204849 165924536 552890884 157736317 469613378 363003777 864313658 95175556 489876494 229318081 421081542 51091000 412805464 718960506 986612329 738194933 902860061 367844463 907884161 67127915 571429133 943520948 964165804 557193768 815343280 34045903 220736428 408919545 555827578 449200608 990683395 874331416 963343185 653452861 769619691 428055849 865409790 258597345 294867400 542114831 841136564 553176873 912595885 174460785 797736577 408567353 451300328 195557341 816999821 415608775 834812022 951711604 968105225 280460600 311340456 974268539 989277134 536261747 616425833 547260317 575580545 543655387 954951999 209579049 846645133 350721810 570273040 584952706 696475001 270941105 763299964 808933653 937958918 754276336 883222265 694609358 991018546 865532797 911972473 42092577 56334600 416810691 677222604 861258195 875511304 701860867 764972031 495669996 550067799 939836047 961479637 608919413 650938685 324454720 988331522 765131773 794346529 982066051 993100423 174248693 743676725 203902886 969646959 6759251 754706713 127007950 174292909 432634684 831694322 782334679 931859892 216119933 951271503 580315401 744709584 660480938 894473970 553800707 772833657 189040243 432115658 406956324 618967763 602066024 782833963 424798575 608513256 819873241 864472748 83414900 968307302 19517451 503243264 168361373 432696552 865363931 958705372 40376732 183092459 311596706 909276236 354402502 436179185 563712991 848724081 445408002 578190533 471831018 916522281 980174800 996134220 875522989 888395741 939212840 962624027 911110926 965187017 623579693 771699599 39786640 540855543 658029614 939741166 915235746 968397560 272787199 359317540 760577766 989878681 430030803 907672774 2391210 196316441 378129176 609704150 573859888 874438664 574612089 783135634 956359432 975625105 230769268 634363768 770723866 893933992 419594787 703691451 907591657 978245446 306583882 549949904 801039422 833246668 924876738 987736347 982954959 986418405 325754959 826954346 445101556 676219014 802340251 925552879 627325943 931909617 413006793 883836293 542285687 659882116 666019192 763291052 779822305 965977227 514457000 977641638 97533515 227837105 937932744 967875097 408009657 967333690 513464727 965797239 275050578 298480606 817833344 907475059 220912431 825377300 670347997 675488264 655376047 757314264 466282617 708050589 438595188 961151946 252734410 946266576 666890711 811759342 878568521 925239404 560277207 608369697 717485181 770131357 437946656 559376431 916284613 937483993 673063992 879801061 146045663 943322785 70872685 316728909 794925258 837230545 130387887 617121881 934491790 958903708 223936704 878668930 588724026 913715803 779833921 992780896 110348181 527251297 454094363 995956886 853194549 990378995 465271401 714035605 654216368 901526033 155207565 490572165 691124134 912337045 208769900 237358210 813224198 930648891 22457120 411931172 969272254 995776782 56265922 73265033 133955342 330145466 986392547 999546564 570730726 599038925 675906283 928351625 28182481 736010529 265377988 909419386 413376844 924592014 707889128 753026960 474273569 622630572 400891499 460332165 12941337 994373877 251140657 484525363 101439544 968323825 982077713 993293495 449494162 632916919 882390474 973130847 414630919 521871482 844889270 945612000 607407313 865102834 404524487 546446192 180920952 463614896 662360618 834339053 143068004 776479183 544944540 970703302 930974586 958595976 625273492 986027616 468892846 864714911 598873420 941450880 745608497 985502638 41170166 924046280 963420496 986048663 972700712 980900975 332869372 698912632 673289011 752191771 338392175 957282944 980141821 992356381 856214820 975704966 251974541 280469475 836606209 838411617 362957776 869239166 259958576 874198734 636806327 843796554 745042314 884490828 645253026 855313427 861320873 968729399 21762728 261482107 966536659 981130416 504369297 583736826 460223980 672394350 184029036 872282521 493930300 939463816 256388773 287313178 567367018 676081614 531116253 697541567 394260128 936994951 273931484 946245112 623987900 967430368 193435469 793294147 672259682 810445144 434214910 896731005 34485637 479136433 76026134 262183103 938733122 955603377 140953986 180021994 975091674 983717548 150286819 820885653 844638494 986128486 908485381 993619486 371938767 609886621 851872983 891653984 356641575 937550955 689372882 743666851 4590560 950378341 271159209 503604682 207598533 711332862 602966692 619271638 574602399 692151213 302372322 767403404 90512924 854608593 98355620 285318719 266160308 457028134 709287172 793188084 362703832 675674810 444034360 679951838 376962008 781134682 904162543 996802145 953560614 996000219 876027493 942558957 865264760 944201496 708575168 772777382 27426204 307533781 481303201 845296313 154676243 374879420 539212952 846023062 60162497 854255022 509979099 592528646 704205487 772396826 665749107 899423640 201004654 323487491 381729916 846421329 547139455 789142088 665742482 712787777 839206435 966926791 851116810 996639308 139637057 173642167 571078956 592034145 49455671 377211403 474874259 884989743 592314758 594005946 877024222 920267252 190629705 300712760 747265265 995979720 388184100 435183223 967004321 980862440 477069452 553623957 714807030 947729121 811275582 866431783 455182491 909119151 488020128 756135868 9196811 175340906 133983769 766653970 985154260 994765218 319245174 628468765 791565419 987180507 637595336 974957200 529379354 863998076 41195097 637088231 511320782 813722656 841830283 915781605 767508533 902469732 663070683 906370127 214853441 841717850 126501820 835864303 882285837 930928736 187735912 365300419 677872385 990896507 479199781 627738372 769781829 971532955 790752633 867343405 296532368 809242486 575969659 901371199 750929522 999849407 429083850 810482199 335195576 554317632 59144457 875055290 230561585 675723893 651926295 756868857 158122860 714799883 487296306 808790817 332370726 824925410 357949733 382159410 325166520 805227276 255054765 414617734 964609613 976214409 892566597 995377440 974510884 993637110 668249041 866686380 280630980 893589915 287591048 650050872 400857391 955527986 87495791 514262655 436314538 527934665 752325080 941071595 447112996 940270585 943182014 959085858 118011376 686052357 433201949 721747966 53955915 525106128 973620179 974138533 508144957 564029091 200777841 389364182 866748958 979731430 497388518 782439448 29377494 788768557 77002327 609445104 788750757 913993653 519527646 589246098 772413162 909618014 816965449 971874488 900444368 914797945 363970054 847376941 311963199 971822999 983832554 998407805 882843807 906065735 539106822 972150629 507797018 887212568 886230797 890138305 122700164 481360269 307777844 491672169 469682263 906806388 884198051 905641265 676066076 772303131 189928800 917465135 204957670 644218322 921888469 955700104 125056127 146344420 194979128 460706126 802071215 967380565 148472996 476606624 59259454 668688884 648237134 704334366 454202596 881173856 696039979 932971420 437443452 932412735 779015641 906889674 112359180 357643682 293563639 453130016 129755429 320699125 925752254 982540647 63109230 109168219 797254925 818503078 521238990 949828520 361805709 420363999 718595967 991463520 281016893 700626973 243473373 499457314 769224225 780250094 803137740 967691601 648312838 978096506 895628870 954403968 231990279 331766457 928712673 975662557 80447795 217312490 171011705 878471671 27410273 625658441 421207423 762188735 720753288 937519344 706994003 989992712 270229642 543273848 979829163 979865199 969577858 998728280 678061693 691318942 187882212 997410037 855029426 929553767 349548577 643988732 154551081 157884040 472620529 531153920 133876214 999361430 288168382 821139914 644684491 815970404 908180013 958920904 776436554 883345145 964399926 986737742 153040893 723255075 921518571 953822585 537422959 537954920 766376811 883270828 706313718 756969715 572406683 760158013 373145426 846016211 62984050 499731030 260500073 544642936 767247563 802362838 207244010 802263411 376870588 538264466 131627337 136606089 710162951 950494357 704512859 785877802 513474575 942387897 606491146 770088328 19333032 603276770 498005287 626126456 511278473 941418302 8261206 532981172 709184676 817352880 308716868 764488944 657099997 713061490 10649885 412651288 22632725 344846821 90387313 411850970 390503409 972538861 947589577 999343374 822348109 881727937 846378856 883103316 482757100 896458767 920205296 965761772 847144072 873430996 17573316 951735036 216426270 855280971 642579409 907143572 412472259 601210248 229972494 629800359 336653984 736321095 386062929 527056892 369876508 423786886 843264668 852140696 86842937 634649567 441388382 677695951 952463266 980726801 239367866 996110621 135458612 436762477 258488838 684722221 630513829 905549931 413726502 494700862 165702755 515814207 716469511 753906078 974531046 996352066 191041436 721974837 691655956 768921215 939167162 952311977 398814408 471365881 889597526 946957157 776226471 871412450 713223531 715224943 146847886 991614792 751474128 885146380 907092590 965494796 614393248 891278270 258702807 441506989 477358080 782507502 642704374 769959702 393815750 974333747 913038435 958024605 412415280 644923067 585766499 854195212 268221040 408909346 547831172 551257174 184641085 295090804 265414413 771448218 486935678 740289546 241819301 955075574 375207901 764800721 956059314 996469589 598920632 636735494 771440154 847534399 482016164 637373257 778250917 847546454 434322032 841209533 614632503 803642240 429358318 882615523 895622114 913526480 960938847 972153872 519280101 635060100 238587679 927899294 644297584 954087078 424854801 821453491 831789540 937919791 168496853 786944450 943315586 963035315 173315377 342016673 45935364 723661876 308060123 535168200 551341786 890912807 470628130 587304799 24974794 801672075 529043746 893672455 402586357 865223906 778304899 947301385 898859950 945788265 426098107 518301826 495497420 516874551 426415848 744392874 512400537 571744781 210488048 281950510 16308044 148753855 747933457 932110363 721944242 756651636 200016949 437924830 277561374 606020131 988193250 991542982 964123735 982834552 878829748 997658602 125194646 207688822 764960694 945943213 216703162 960487345 771700939 889431000 675156810 882861789 115521793 652799141 195237186 311160929 579373301 613043204 800593810 970371791 763080395 774414036 722996560 894610895 455403589 714816543 864672205 949124753 333706416 767854305 818415298 883644460 174375821 952250680 531299517 749130058 133945216 649754053 877443563 978600646 217298559 678333382 806205676 898687070 623156080 941536043 451077110 520545544 871193483 909469732 158554898 718745144 679437307 862943194 759035441 829424578 367227472 703205372 813722237 824673282 289729485 469023519 454849369 876704619 687185959 723344569 62899446 498672622 549564632 582127300 109311743 826716209 439447423 664305582 555750057 574884893 5364862 865591043 468902309 856540890 792691249 887293538 643171878 680986734 997280037 999266186 597296270 918803949 877147959 913849912 679228871 857922882 925224753 959388686 204924188 314830395 521686165 801119851 575400488 602446536 761283081 862241800 155433090 336088386 121288286 200801839 822745227 824623815 496959231 613865364 603377972 834462608 816352999 831624078 924211850 962997731 644871291 765410226 132928237 297421588 593373943 678476196 986341712 999524075 845445943 936031909 442531604 958959967 105535675 921979725 770944976 955000295 276401623 653466517 731133250 924153097 349647172 944565147 187610371 627601584 979859574 994576084 303561633 411366975 378947696 678873106 490983420 793665055 825069529 953036254 203028162 975368053 966519317 997367931 954485249 974980588 136873052 757987543 495733944 672960541 290397334 733460739 943787165 954056626 186686520 650302054 609888606 817663572 906437149 961745913 22785738 433176774 759918715 811417097 105268423 818842210 809115183 828911764 258780991 631892294 949004588 969114505 785813928 914150900 389816767 968652944 945591686 963068452 476665942 536288874 344963982 667473386 396401705 670382923 475840000 776636055 483959983 700823965 570501078 645890670 872688836 919468999 667673364 933742898 58926603 477908473 198168243 649904491 97029620 575520940 403389721 430021996 537684286 550022540 236337009 347891265 906526172 909892420 827909029 878729949 770337083 892718425 63116390 185311851 137128177 322519438 637400378 879603194 359172263 629098003 401606052 638300060 323923860 584741825 810902905 977608036 266739087 896689259 224400907 304784376 633054232 680317183 452059806 979432393 548994758 908406497 183007124 945603026 619858629 681212482 829849113 879569083 768637451 869747449 118418305 653191407 721114083 762013741 179193160 643020790 222274102 551579712 978207332 986900985 226650785 724587388 419735697 992941214 5566438 316883241 23623341 893640459 809310326 973089733 88087054 235978282 326110555 499507062 428477103 578909044 310558624 462673122 867263033 995535882 692552967 882314441 775627791 996041526 151929615 690271716 227455707 498293997 277046751 373079030 143543997 312656942 903326832 935481480 594966003 888104854 898502140 952362179 509985005 958240925 792202152 878913582 361306224 484315222 759156076 998927852 156362800 231891624 600679437 889337066 814675079 962674890 975688149 990629144 49728962 116015811 918723594 969539184 449725931 989711962 480391189 686388589 375696983 698146698 959037338 985442202 442830274 814177104 99411461 272297896 150815162 757987979 95980158 534920429 804978119 807731861 741280247 826398371 780731759 984735728 535627995 691980836 580794441 860575184 610101784 765475227 964148254 982328029 216270882 985189792 622145292 954574772 184753022 687805080 978909440 982391354 20437931 41247171 679595185 929153307 814278087 898788601 87734407 459408997 298001011 855273204 325180212 459551829 618732046 949704661 511243454 516363928 421543769 438672141 290703253 415883186 581112705 667140024 924277382 978390444 607310628 669840815 484174152 600316652 927195808 976711050 448496577 846480853 576976577 812273357 889562367 925765329 45356935 604191026 702661857 964068061 926516454 941981315 553810403 836539634 457715427 580475695 272414590 833757303 382217044 480885880 748087185 781718823 712140014 739574445 994010838 996216952 602974945 611027243 35353614 752406770 323345806 677072392 262879862 401495249 409682935 825027476 175751561 378226929 993687897 995375799 323676066 472596234 278325058 756395689 512910769 555855003 683175439 959987858 501096930 922185697 758552289 812667915 228788165 483346137 758379078 792704243 18938398 714043856 122107804 420721303 361458511 670618814 165039869 368214921 207002797 259644485 919304734 935505619 458062057 910139668 187503145 841060533 474288644 875013389 401679601 965579846 433595882 883774256 305877847 910930867 963005103 983412839 99781140 358323838 117306403 822742075 258559558 388979197 814615982 944505961 446587017 570359733 992722000 999103809 859910596 937003041 59102786 840464919 161783606 633368268 281337267 325128730 946198819 957497228 173492024 998585217 127855657 465776758 18481818 574020912 113427500 796459484 211955041 869386510 709083230 921669930 613631440 646635316 792880307 878711021 560029877 840502388 32975098 766937282 719072131 778003800 342732351 488664726 53261296 135971941 556913665 564994582 786486998 906827352 31979620 673008638 689161701 841625377 8603819 869946415 350024577 879585454 280553139 843687530 213785482 630815448 511664043 547377262 647213722 935792890 399923247 597664069 902711090 938142935 417077855 607126801 432892403 920085311 331985427 757576010 148890965 344371231 650324014 701768798 261016506 780591645 662802810 893839497 995614686 998804977 317193984 377625141 507722821 621970574 323673519 690738734 133044047 608293523 466573652 745691625 234960485 594437466 136172003 559993562 536621844 693206954 942979834 969193037 633605981 882613005 827938569 876387903 171483496 712072069 219043150 291179840 491908955 568886532 259556507 466768672 569009992 744487400 355245582 765226191 759193568 866589467 15317838 506947973 710559498 801525222 531528357 652567659 922926537 928567862 716687390 974524566 936156505 973517736 590502991 659593602 763937350 835478422 921498208 999377744 530515525 953853437 529942198 911892984 641577946 762304742 234693193 392999245 989064584 998206498 366561413 437007924 88991568 731978667 415291418 626101786 561687037 588675517 29916465 478976319 181866893 365201724 475692249 641346282 457343849 476121883 86921290 340796332 444526455 687813459 716783753 914956811 411695553 960331528 31212743 938738761 359256051 842684701 939744497 974004965 660507956 753244259 133181925 698548353 553392737 856658084 970872484 991901271 27844549 238202821 910082789 999859746 377166222 564702079 363940890 537218838 533005151 849954280 146691890 565511017 742263759 995355775 804601375 976719016 895881019 960046787 464846917 997116859 737670326 809248453 882458893 995186202 810580460 952142014 770246103 914196146 758236591 873275905 144398338 726222977 117775390 293232912 669787321 848186663 45235612 47072745 851012482 874571523 64472106 665460666 244197210 739448672 826492417 871331976 974155269 989393922 862296882 996703427 385462593 612296035 519292556 752490949 691158962 805331291 614519391 933376150 261683162 851458914 348189222 924334791 986146729 989757806 914008896 973025131 574710795 873925235 35299716 633808514 196617949 669880344 334880599 653760139 287750654 794619041 330831618 486695823 324389796 742889496 970938673 996305556 830489959 913688851 273245341 443641182 617005688 657140769 805274688 840374148 92813235 552762199 111021149 294128457 720519483 991082929 474397272 917466533 868277986 900802125 630678787 891170276 807441501 858178873 756079177 907058218 633979954 802437185 424507329 831334937 104570479 228043947 780310073 895341983 906521771 915950983 36447356 696270209 129104750 789536862 743037081 827900160 600866869 624886544 62090655 265004270 159119199 653487734 857508856 871127440 161852551 887286036 345997602 734588896 517662056 860086337 681110543 706992927 447405498 921704097 190289780 436643286 718806081 879385066 157727649 226179290 507385528 838056769 726257832 808405514 907473215 966336466 888243510 960911380 530031157 763136623 495099860 634219529 963922586 965697890 316745118 487744254 53927116 717089594 920647876 933402654 43815940 282082292 651422010 913173850 124851160 454829436 689227352 830892927 627428149 999830028 927141124 928630295 144252650 189428595 214716413 231435483 680751531 891881162 993084537 997841442 611057523 944670963 680316707 775336932 732498648 852789567 475054428 789404462 744385285 883070386 700803956 725148251 806960631 920740994 380688989 513349874 827246350 991022248 151455666 336537646 475702237 761818684 408042232 514718755 119833299 352993492 536558890 731212125 934432472 950703882 653699067 821111478 940106160 986682432 396224019 526373916 889525977 991290754 428971184 486233049 21754348 651974425 297313207 411542295 35932093 542354041 333477223 379346948 886670270 954689179 40954161 917839995 805335998 838695323 718461637 906296457 976037220 976724167 509515979 692072904 123003607 646668334 953919832 966659607 649820131 931630127 144886422 643345174 956749269 976284420 297029137 623560949 653407394 889183864 383725285 771614052 735375107 823973604 494577334 764905913 44680031 416531727 901565476 987811417 204327383 985364028 495774300 862688672 192657893 299258245 100423450 121948407 83134547 379450769 810073447 890288124 380358727 616769585 200463857 826066619 814316652 822717782 569528744 726875586 794648363 935409909 439116476 945964388 806436819 832387547 833135839 844083727 594361523 759050484 368267344 620917583 935572046 969145428 707927752 784598914 535594232 841850019 79119231 459057471 840767711 892984999 981595108 995241848 309634961 321230348 465867146 540207015 144280557 973977653 942592080 977804118 583260497 703500557 44228939 273441971 545245170 608911692 684752026 779178063 748393546 955124248 577611068 860035300 846092478 890040830 914980705 996856211 335141848 725457281 773967288 891748727 951864118 963736734 535884976 742778378 225357379 416331112 896987501 952139453 350565929 668551580 103741288 116975456 224266421 623469729 271182618 980856618 922326600 983514801 843753702 905386973 528138355 924237930 373765809 385372253 753741008 826868350 678394249 844459961 356362513 627847770 439628165 573565305 268742922 722420743 593148876 679011998 72715583 387267407 321582333 616861057 258867352 826406416 946240404 982616876 213688216 651456086 118912137 679549184 388927799 737680484 830259364 881591238 772091310 860355701 281011488 515157286 86423486 308615637 964855775 976078709 79126461 689055578 49654550 250576816 383802189 600267273 147686661 860076181 810530419 820464714 892040516 910502642 827643529 990092307 409981326 906316326 770335575 997727018 895299932 973040579 992060312 995168188 494687955 562835589 925887334 970576608 869564501 910687739 379864354 528770311 310827954 992767029 159520102 923284188 408085188 757457230 648586706 990548082 821881075 898860068 945721236 970777502 439309647 938350286 801806919 903570078 752446929 921050639 160007124 891732815 77756509 605948775 212886966 572027664 472232478 629701081 122655658 390222139 244975918 622528121 637971801 937147576 309733526 801348130 387144453 442916805 419673860 792914608 589506967 858572253 226339816 655722020 813902153 843041889 73454169 847482534 756734211 970999657 186652232 767309565 84201882 151867358 546662645 969084480 285960522 844718356 423574819 668426496 574854886 675661870 10785108 816350464 489728918 676598963 840852107 942963361 531979296 533291028 677240757 711402961 79035079 536751445 6336126 8435159 541797491 588374960 949415470 950860992 636934921 724281432 177567797 265743200 532954475 684236662 741733322 813630229 426721216 838877518 505331157 681972413 618104589 980760026 912533570 973357419 583804831 930008806 187709359 801205008 355849537 567466285 950596409 963230641 572082946 851810423 107752023 136797409 173617326 998552937 777213595 852800609 984497533 990642845 386377861 855691143 706398668 798532155 785329741 918112436 185008782 788173049 202517157 824496388 720134855 770043090 318438973 892466309 191200402 707177940 116866036 315101001 521524502 722679259 966370088 977959818 682461485 994208394 78106588 969558373 71336814 845098736 218885404 843644680 972386448 973798228 550826026 652218550 791643753 829493147 559274587 918962055 981414615 994076851 532618603 919380096 161649720 594465319 45308532 428734941 260508570 512799652 793708917 879383836 125041856 934093583 251899237 776057060 441593261 662341051 873801160 912293501 956937355 972633561 812418800 948566828 674940555 727660025 626686391 716382811 233671023 853166804 381454474 404807968 876329500 942779017 998030848 999983081 268537130 875025399 300830902 403470371 143535740 905730610 642934941 743465393 381199334 497338825 518007563 681027448 467559350 822400688 733286886 952445964 722972003 880301232 704638976 810117079 674665935 872575372 422440317 493774165 995178712 995205064 710794374 927340375 277679568 318991097 509085243 899132634 109189708 930816745 627683204 962372413 576043760 640612717 14489148 114468559 652349300 848368144 372790841 928984435 331985009 802137009 103046855 794232816 990727247 994095740 568691135 878859864 76457580 157942916 169010298 280079919 132252210 644246140 551231352 643818228 601315095 759858804 950093295 979270771 203313380 229613392 75361122 488683766 588501816 756261467 869258619 965995336 190635417 408392617 108267617 205146246 839899415 900057650 903835042 918323475 652232049 858029147 831506560 908373295 668770063 860234302 484425795 975914129 669399319 748755141 258041392 943324514 524637201 558453671 522090320 766463167 896374473 915971515 988830441 991319161 969845224 989982680 394115509 733853185 820122369 916624460 792633200 912959594 319662752 692317757 306970304 497357564 266860225 957161275 861641881 881464467 967325049 984423998 789924702 966841081 735242734 850244106 541817893 937466108 208392521 543008823 643927205 887789481 143802665 275521868 486071995 977372462 612225308 955012425 561822499 729146913 472395339 495338841 73161833 224062715 740336026 794071768 228898502 304857709 317527608 811371288 25422643 805271930 93707446 461106621 255451919 439878641 30152538 990809594 610915970 776724572 713980062 749776360 821504560 855887921 295541245 309539426 960285106 973613704 119246041 546206444 304488049 316601339 272042779 501954936 214010636 326807788 955058308 979382030 485800189 557699816 680902946 720973339 176118257 831483510 783060283 849426087 977122392 999082000 198761365 244424525 9802299 847948752 286266763 713669563 384401117 774657643 590098350 873767883 581189880 807899982 201257687 593162026 623202892 854680227 394927024 985985758 93562084 592585881 114609496 886744015 392066795 528393371 906307021 916238217 615118612 771102783 62404303 418059672 45922013 102266728 636682216 995044102 216915964 249063563 552879569 963484796 997905707 998025984 206397045 755277456 743464925 750525343 904584722 948992258 944273613 962818196 549267615 940749043 946706344 969139419 126644498 132127510 569468433 777009553 311923887 650087349 727492087 990517584 742403834 847178206 576378849 651009129 531839451 670995185 416572403 828895021 382423757 766241797 275083558 848946703 546720305 982570333 289976717 978107077 594066046 809069115 679670328 756289782 105857196 946906871 449222586 980204004 487297815 573193281 960534666 978783346 388426409 896404643 578851544 779350157 590721336 777547841 463843896 502286987 811664934 944991771 456559670 797516800 146997298 931527864 565351999 715949648 740311202 929965150 405464615 671575034 292798224 325620491 289051802 474005794 166622024 458855942 375393936 898303830 910931671 917295063 343781852 514192784 808639188 987556160 129810168 245439440 882524232 944103368 863894095 967192476 410551082 894660853 252881844 932015561 633843370 816021351 331480749 762345589 431906983 632394629 566858299 996960586 829266986 997171791 967431047 976922031 412326107 436227938 771586702 880204503 955603683 973464811 531798304 714412652 516653759 585282685 857568140 874999184 393035105 588435005 517057978 880353624 586041815 896292141 654968431 808574797 311251043 700964302 984062554 998289791 669817571 731141080 403564169 503413079 305661201 960092818 776064745 941006269 360555011 794211853 126350586 131019788 577560283 883604975 367407914 919316197 437886188 551652288 942963849 970777714 185927209 215231883 499627520 972246194 944490063 981804887 973614803 978548136 750363409 876158937 88236182 578132847 205838367 925071448 962483167 967359277 169062943 800590809 126937671 164384906 51270939 237083155 437314406 761384876 272891727 689969531 919758220 993335017 809406311 841105450 293152841 605865538 163119470 188141224 975090127 980868047 662544753 722552313 105032382 620671200 583754953 654210261 751406120 849836710 79367909 82850199 100731846 900277011 64428968 298654669 487624994 985830431 654638477 953498549 756564280 879419912 254684445 841259910 177347939 616406742 388203270 434496540 561361233 910083234 466201481 723420252 800417944 824682244 45204546 61907169 576549355 947972213 951176867 963846425 907433119 978514259 467715266 835022526 873098968 956303099 240047990 773648413 67044683 918818451 75079368 439491437 891761307 994208778 143160487 863079389 204116994 363373712 777711603 915020791 558132127 568066100 851101652 935719099 603542681 876418725 99496620 703713526 632421339 819569261 891939721 904465514 549348161 737608729 68575942 525899867 104637726 129216450 382706219 541728297 554140371 702911771 9327604 620187746 301798364 336554330 950850479 978806359 65999374 370951978 989409385 996942188 101109266 158671019 616034966 767222348 803936444 935500561 494108763 895170465 205569186 835992262 414405507 613651317 93416951 690984729 162274905 554011170 893439217 908420875 565633255 857723808 52342891 743272710 600978721 977363766 36639887 739120648 79286770 437594590 455189755 620082697 402017956 719865035 867127795 956876103 402800188 669783002 261754503 373682247 575862628 650420329 972865807 986072074 354033013 358159251 942776328 966674064 100642905 837788024 974473126 983170188 683612147 809943775 853351429 863335226 521144422 985425814 41691333 444463267 39934033 958768755 909343314 941081069 138952059 715406523 88802859 710127241 424528152 944566164 14577477 28549630 845902901 874184263 52255122 397276606 904548467 915268007 41337873 584270256 594179514 800175230 66569120 344742328 748554665 808012270 36190950 803055143 691571988 914225614 196772014 992285939 960718564 988259796 575085729 757682140 189790785 312494672 390865064 742021155 299797840 305065913 893677886 942673040 582778113 596865077 330583096 733578152 494233767 695958228 657944265 932790766 115232045 253392247 549064255 914178955 935710517 996967452 429806141 622203333 817260564 869157155 146554817 335182273 259153769 353112398 464800054 776672471 421285274 976853278 529958110 677509471 303582177 321215440 847459517 985246790 355525438 838657669 896975308 934578689 713740971 799586515 571680647 721227240 493333533 514624380 382234291 439951350 536767079 658995860 15182140 556676143 174964640 727608200 267896618 603498737 591623537 887527954 629753012 831531500 996756783 997831540 147716319 974932722 324048366 584557822 231872423 496437028 441505047 693863135 571018 466210606 854697820 972934528 354906629 847586363 889399582 923319943 887313446 904482652 710650265 757440737 823477920 965065487 915897029 937946627 272663977 849601939 152327933 770451147 513729256 886598652 294519029 875109765 528195267 942328636 151638487 316137132 677173509 954171763 421292641 709886791 966941454 968400683 649646401 963484485 600662911 859335095 136513334 753292977 607686740 624279103 859424986 956677261 871971945 919737112 855737339 953790639 315545061 647138146 715835545 906355251 612295012 648960865 220636187 934307856 952489648 982277753 21380879 95532457 571488540 965992118 293517600 670883058 11649963 68334459 651663494 791390817 573271069 927966096 717202207 857615070 345963625 773450314 828605403 930443170 103919864 738365259 581125834 940250274 21778000 182789463 655615426 873037186 335301566 608989529 854139833 976577398 684257030 700852769 76115188 153538111 913483033 921304828 612014831 641471550 644722322 699387780 37370803 337038911 292677759 961064175 743926492 956541733 820748692 975726420 128432953 466656525 649154783 827614524 212455646 612498783 718698610 785168636 371706662 569209416 318324788 850298648 829096761 877657394 799326218 865654256 943227112 983218721 52122710 627817593 433500779 876753371 881326344 928201903 347412262 994982559 956771077 998201563 841754636 965997122 151013839 255689287 160542748 727855446 526349633 629475497 246451450 981858380 614410628 723290877 338628122 799933464 973761002 998718429 908596591 991805524 64055761 442238256 973907449 986967059 440931470 617660094 181773101 498223048 427090956 539299424 542276280 875510994 789319105 884947957 572052558 848632027 790838489 950899295 433550927 874265761 489314979 967112987 118128498 672130455 446980755 789259788 255453763 578455477 715420214 886549080 687243735 754493381 288406854 416564273 148365219 301327232 184839544 812445094 822646775 896538675 332279271 777962408 969656418 976213287 649239918 879783852 624222165 804516047 743365788 791398826 659464232 692334937 969669917 974971929 37249526 335352767 297090396 954837631 729496378 818076433 361704694 932301564 424485845 847535723 699836112 889485910 515478891 528754667 803380656 897058099 813879022 954386540 560491737 607703741 161484441 621637521 893108166 897632696 496839753 845862198 576593361 685877058 678974529 827458032 76711039 295515563 33320721 846576888 697906839 747112275 499477622 524916621 638219960 957075583 716704349 749041618 151926560 266428263 960530204 961607882 588835089 717782707 36441011 519053080 544660755 742262970 293554944 399667039 657085092 897573371 149486721 977419821 914809247 919971861 887383472 918181296 876560121 951735797 418106156 875564460 950647668 995196202 908436610 956172750 989226054 990179657 155404633 448776127 386583788 439102959 532889236 970144591 287626818 827887128 477768272 983054928 322443618 687387315 95512412 837022376 289785864 501888709 777009980 999089356 845498628 963781507 388062364 484632811 399841553 911262865 855001252 964366291 943196449 994888989 379391664 956864853 355581868 406982641 516683961 611475347 116616072 381096605 969688427 978458505 97219015 913223246 94622833 603961175 130422370 706214746 477895191 641851849 981836078 984566439 556393181 965911582 407731671 628093564 157635567 291870971 398915199 679313980 460799593 823058306 470341441 520109322 325272759 518722818 393741892 412154724 887142163 913649400 238595923 357319710 424613866 734174279 59427949 355892429 716710474 735572092 671731277 851099613 973724750 991933058 648377252 713514524 895415706 962264260 946199216 994149555 279608894 711670120 440574518 578387487 660079007 671181073 565180693 657933675 797323393 911942104 766119643 981039969 480735938 674864600 445601776 531049408 861245343 862661056 950172561 980513322 911740857 948401497 60152792 526431013 238926947 547113786 653917186 696054208 235230169 916118663 547310189 823575580 132183837 960849085 784298999 803693757 867020956 948332925 677562095 786812940 437807518 509663724 90968009 925439685 163769771 965178769 752233086 860063445 828949385 995666794 445275306 556136077 726451304 841626075 810150456 973009025 466218385 486859431 261050418 701374543 711361363 796147976 525936379 870142593 149818384 344811900 995533139 999729753 469615532 522478300 623150635 903405227 371163768 922562619 688455092 744805753 965698242 987380962 908273170 911238206 128914100 904383510 986506867 992003617 424945485 735304262 223702633 433796604 243827364 741049474 641622357 785097163 909541087 924547730 495363248 907017975 89861321 394186891 877554022 958771282 599158802 837485511 596012086 969972006 825904015 883734155 958660420 990540763 286659118 868100087 528883882 811787634 361044211 577884012 438231011 815100344 529962172 848160932 883943552 948449886 361133899 700382517 396139620 558697664 798432975 803487332 116064627 251557510 657206356 781903790 394511572 684565695 909366603 996209368 192645620 643872695 722638757 972351865 143812427 798519155 794808285 983100038 811592692 819036665 142542868 771239613 24869527 886923958 404708899 798847024 977455263 997725055 971873276 982283947 267759677 922033954 36779615 822533208 835048813 880005162 98041338 426701407 639025961 656674736 301880815 938104073 632815526 861649415 282662737 823343987 753591856 913859770 276882495 365530751 961479491 964330097 862866448 962816592 237317246 646707370 241324960 261713273 372824712 744601382 392214163 897411211 477306863 664543681 268268006 775127012 400127027 978706622 9598427 595157423 71256438 879060618 489489373 842875217 634601796 825538079 948391769 960724064 122609257 912736016 844933527 846894743 213067330 803739526 142222105 567524704 989665799 994008100 291910987 808612490 595046874 950298133 64921602 673447310 961534123 993871350 247129936 332671392 595752237 807190583 329011171 794153876 328768619 838637942 863595445 914956020 772338798 803159295 118422401 731196557 981600946 994998212 170672800 620621111 140349688 947184124 678213753 837005947 562870869 601694911 440711730 640786372 84560267 807144155 730372962 832940399 496127290 594266304 902148830 928087903 42906524 786613654 648036306 667132262 63482868 874452060 865670356 911646756 639359295 893632668 811039911 969912599 969887197 996135945 698304151 820519209 534642035 556683863 253398054 843013825 787397820 947919033 448777852 888309535 135611763 836399923 694671608 958133475 674770188 812668204 756815701 905867491 382481288 575883516 577120562 991014799 495469452 929492341 425449835 861398360 237778138 917347535 355173171 405253757 493998523 697025448 378310699 998170646 756839110 948728760 759537702 898485470 312358241 621391273 97978547 434797983 424823881 464986053 533315058 762526339 27504843 677602889 939207709 991636952 878193883 937442879 705061693 747610505 731289917 932300098 359596038 464740843 941509210 966459928 375025369 712317944 790556669 821656799 92801841 241735917 57638022 473856890 538898884 720451661 517269115 647340512 706119383 994716930 764410851 940012837 98530703 186584250 833260971 977582787 325219700 967688932 571153583 789592014 937361798 990580039 943800851 990039297 220177940 317540809 79917838 699189181 182736444 199411552 713858351 828024637 840132201 957562570 873170043 922057409 352390443 746854122 23561473 144917022 712317062 831345682 337143400 486944375 928926175 970309768 741269432 760791878 353753071 548499699 211584267 312531392 430759056 821973787 119553302 243862328 225149716 431094084 733712105 812647404 579753361 691409067 536510691 791771898 789946359 902517599 633596030 856826517 850932647 971195442 452005217 735890710 346180243 690264574 976346159 993436248 381885434 943052783 105367256 787109141 81593819 427186390 552773751 820500179 84090288 950788123 368449079 662175059 912711950 965983564 888794080 991539985 120365649 862414874 578825582 752931020 819188137 866174807 251145215 905531547 719203138 919545698 746352001 789027835 410221080 605783844 923708253 923734281 578576454 743921292 749336977 978757700 176928774 638394448 924724856 996498523 495418104 628419786 830518790 919021185 521547243 618435918 490513705 806517199 833600503 840772952 231275468 720965671 139531792 300308109 79359745 139090528 618443014 982942158 653060263 911683552 412583924 451055512 349257303 929695914 733083299 789736071 509236999 554743012 469301962 962117059 579055024 817289464 858617592 888393823 24975082 931555914 521759859 754626489 89980466 426576235 904042468 931737983 464827062 522861596 416861147 629238644 801841300 854031109 141082575 832427003 666256719 975995075 427557217 940748858 796697629 888563192 778276669 879743282 326979085 975444163 974427407 988714235 463798368 927230896 30034497 400753442 141127710 693536341 716089073 777579688 118642389 926329026 831700360 857993536 56511796 369028464 486805216 700247263 62616777 692185263 71556790 790030675 65008173 555190351 691853468 862756768 421136597 924053634 21297377 910767621 880960368 910610361 157820345 928595241 704457729 962777190 364979028 821737175 839298900 967334144 2531028 262173539 411223288 537485193 934519142 944874590 490816997 737733878 17627160 646498859 745335230 973050239 931884793 980364065 672393180 833193378 1380676 531762911 592191808 776386124 103318958 892121667 787761453 882004805 45982044 841349149 818102887 956329001 715887052 902046885 128290990 732672625 707420481 947244961 382966438 747958430 447171733 789285023 440943658 792707730 670189806 912116375 724189578 820788166 508855376 935310533 649273070 695197610 446292307 985153861 786336082 965306751 404661562 770354779 529410747 870414905 375474036 588369630 294241659 635907536 498653842 802809171 981527715 992870777 709818819 722254035 584600003 688981005 261942027 554001206 137511508 285241825 565115940 766003124 859373592 984332592 637618893 873478797 411222056 972803829 424754081 635489693 992398175 999956727 165536644 380295101 49962371 715751037 536426000 632546866 312990603 644354627 481649409 926404717 915663436 998821751 64128945 774026195 415558103 986701362 362059729 783618289 241508252 651524780 666245245 730002876 50031845 707335204 883056091 989592710 596801009 898674974 54131515 747414384 244663215 329916916 621234053 959683263 849764360 879125509 108216214 605357054 955580613 969041246 60334820 175387040 111520839 776198217 159016298 951342945 388909620 572557091 976664405 989738596 475956600 639717268 130271126 727678835 474104586 784217748 75586831 135396196 940049886 985256462 308182069 964974821 376306121 532679193 557854982 583514022 40657556 495057665 332066660 886846230 847183793 965486493 704887905 809233797 630841602 803303288 623356420 711441329 461885669 584068471 987297589 998356130 380651943 802685935 755038920 840974356 132792960 420517102 406332501 489349012 694234223 843557161 368675683 884573333 474099917 745932832 808973500 864787779 25316125 276210634 494516960 663453955 743813853 896638908 16788916 186111712 737819842 787019808 255468600 743913911 173465074 748473184 236974565 773862249 218351902 431686143 38980139 969206235 635829459 742960007 189144502 996640994 536631931 875137889 313769629 652857965 612853367 647101323 147379671 940170063 900916531 996080632 83244093 995329227 460963750 893412441 719197641 893920578 853240444 999049142 675016777 805041515 360565908 497881640 951162253 966674381 599877575 955741705 426088239 913447343 185185149 315240497 582797620 938445236 124453276 622166042 395960716 419001306 922445331 957481224 680136450 876523223 390666632 958682336 967651521 979065959 957996005 959167662 479663793 790124007 694757847 772451485 808873905 920391473 517004579 536496021 549468993 639360970 851747553 920489893 681624073 744979141 701495685 995344217 837988365 984992047 32335912 853164933 985082264 995808897 215202323 285403246 97365992 665580648 418944484 658964188 144079434 618791806 534143017 680015048 151487346 923070989 754778728 932609419 958964109 978462650 239386677 734430614 429282180 824816409 574736342 822191530 866169183 953593069 10468458 907584207 408970206 518477727 549797591 913642802 534089736 604268469 314848185 327454563 28091597 385010505 234127357 395154876 467546413 562948729 818945117 987995479 700323257 919240379 450672716 864124989 330847093 799793572 399096630 634817144 404649887 743499169 509303687 912618690 344880425 941622081 685324299 781921889 938455517 976493640 513267495 571601768 769046158 834002756 215034030 706937237 430967013 707132776 56120596 588438657 176829164 366061892 617046903 994734302 397954618 694059218 716437334 784980120 77792919 933050029 184759477 585130404 714259880 747978153 146623624 716018165 958568178 963518122 936619284 936745494 186194665 248923361 39837617 813511780 217784641 640777304 653266740 664274487 409097395 622749436 301822347 924493984 263630715 376363044 84440066 881895137 157827914 272432899 421533304 607554463 975208808 980604557 977858129 990217958 368937664 661606137 977441596 988616773 585888395 798775760 333197398 917471773 243225572 847353173 113080299 528044078 76630194 932702052 886422499 964576629 453006141 524111985 339824496 519866307 461171307 798200119 460304565 910252930 150241781 346276247 130975201 481842402 144329443 645835466 634481947 681801250 724951700 960820391 278132346 441734500 616938187 788331308 991988311 993350830 368701011 915408681 171730573 224890893 868713734 920983586 134174505 194901668 473121314 877096363 508900837 534510669 856994561 893346712 632945524 797297902 186205316 536288401 378516069 896193446 418260242 564970451 559690282 934458114 856160305 956829053 85143078 583218945 132321914 396255505 554924273 744672008 725137348 891344978 458871552 938022012 470654245 604183372 882984038 885468302 311471511 588603247 665182137 732340264 263207006 320864936 986393656 989889971 856043536 974380688 681554916 755627094 559992545 769222877 31531609 707024136 786536975 996092788 449362063 622246397 429491975 842945179 739603407 834877593 81812067 656536064 563949049 891041820 151095082 466945539 684516217 878857809 979242630 997753662 351993024 622056669 86905170 383952703 654023987 726926556 513158222 728819814 916638141 988731997 292639446 846395873 173560208 623808522 865478237 967377444 936803017 949657079 849383968 984711178 402662802 921272128 265755621 309812234 571322530 670160253 400780572 407924026 576723334 724897248 883937656 929768663 265814906 791063289 397961858 930374063 524941578 715624938 215366696 812903169 680006273 867774699 964876696 995928796 460587938 533519238 205357041 612773751 192253151 885397997 287885293 403516560 900990535 917250989 888395205 979802261 278253804 461235664 786698391 934836665 655934867 698363892 486284705 785466302 854032668 951803284 337247070 731096140 355260922 814828569 600706502 678650152 207097951 798647281 843718910 953883640 745325951 804108438 401432493 460676201 186059208 584477810 61615122 781092880 946965520 999059080 72859495 540119974 898428683 935964169 115189698 562916691 30168901 661605033 761631144 827233193 174795105 731693740 802975908 921377513 156714354 975291095 846077892 923171988 816663497 830135188 767091807 896309288 914323664 975170041 482776918 705044082 628397120 757374344 196905040 910466747 858164885 943799404 638951457 840626514 751767377 781165794 13508352 437205748 463145434 591570357 57194748 458255727 37610575 436360265 457202086 586076209 446562193 506248700 859355295 950019434 869535779 880190238 215550987 986717956 869187369 910561278 128186590 224804285 905926401 908227762 176797025 601118934 117165856 905706318 809983945 887234008 523481466 675900793 476587026 999687602 416072424 427794867 173737627 936086059 690249592 805717389 505473193 780726457 385420722 432624601 448229518 563532520 149887931 730644030 624050027 916760476 795687961 865962169 902946832 929031842 128051820 477823307 238197702 561271326 229264093 700505241 598434122 745424422 376829121 394071103 98909602 616777496 302578951 408456955 507762282 779226918 153335755 414415773 240015536 818769578 131443348 763022867 344292688 994539086 73265567 973612638 459233531 551243629 995771288 996842978 259063676 329780674 909397360 962603377 286008291 537176296 126884740 461782899 979251390 980568014 12598042 773408122 777663465 897373740 674902084 913461453 101438844 982466850 211461900 765814130 960870738 972748355 747880080 940482570 93138025 693445102 970989957 982409779 421391396 571711839 620237377 922465716 295920413 423358346 413919863 613220051 507626747 899452023 257630125 433941066 157856057 711327270 552820609 692035192 282009687 842404867 953475053 980246700 447353091 458914989 353628870 643045588 554703067 925700487 190653399 769677158 974104833 981423651 639875131 822636696 216873978 816582554 805133807 860586514 198295019 249141749 321520142 810987727 848263810 936663222 449900338 521125479 338358746 435221092 160509659 381992161 607655175 881446646 893202799 915774326 191658640 640388713 569762716 773640904 948067134 952792081 308953796 741271557 877326588 980095714 75516829 924914059 119992180 817105863 732285329 784410157 669975772 863315538 277384687 682907099 198003465 606969500 565419087 634504670 548418820 910888438 545318376 638763667 736201956 898960230 144399300 260859672 186698695 806474783 202652940 948408801 102268675 424683348 842258814 951909590 822821362 927790217 162483960 788831958 818369484 938698242 304020878 523346919 278381263 539618801 79931231 603389179 408449808 716559485 139443993 616637756 695023579 949308454 298697993 615476597 484580783 937664952 839380139 842149233 582660224 746845968 125480379 712978908 996985931 998000793 179294245 414475152 372458280 644645630 61900078 139860933 457691139 613810680 406911729 489673089 999856622 999901709 73241717 78819271 391520815 437957659 548747834 668835644 706134461 806220987 614637167 736426001 416304010 685055110 279826835 415915943 370157175 508425740 480586541 533147546 988076230 991948077 460552142 711853235 308485052 790058582 115013247 553517982 729186172 995190523 943567701 976448288 631562138 631979100 719135107 747045028 712026243 989674747 797303221 927013815 880358719 974480563 595842247 707251488 199040393 840727440 330372339 375177572 549117528 852400301 50938064 375252529 640660582 659571514 330670241 722053791 388147693 518381815 819048555 995231923 932824051 987881538 462313891 471607144 558237202 975028661 132123868 911531972 550465875 843642005 276201312 405990880 173808121 235268508 701487234 895738545 477896174 871395139 1168345 98547842 351899558 921064169 225827472 982534517 939123907 984628212 248291099 997827222 600830849 684644888 155721133 174886306 643443032 757733327 786693877 941030389 632949198 796184645 117628190 297297369 139638774 354306356 115180259 604107103 232291125 240008625 668476388 789698735 479299056 777422353 21459198 833747296 728153801 879605008 490415854 730475270 880258700 880670184 192444796 247778960 391016632 616950548 829848115 849751166 430827694 734704582 802619117 994324639 45079467 253099679 913228134 951710822 108676365 852321133 439921695 722472191 246244241 893980027 131429396 649170163 823572353 889672863 216456455 756218339 57332575 907360025 693364656 858343180 178293146 845660940 321221057 999558576 282120194 835898675 922545723 923610418 162178707 319215562 117095608 920260581 351427249 908829477 251897758 481929041 931378272 992947277 545766352 977716787 189699074 903436560 97057403 723950594 253162291 684161275 91485711 208266343 112877009 380506847 820947988 955156216 612498929 624470331 760299555 857632040 875822084 889650161 53784839 966804122 549298434 579391909 198706159 599624947 742467121 832904205 921361770 978485566 502524931 795291492 735687183 770532262 195784845 907073220 659352664 886823350 718281875 945528276 231232481 854708392 516810533 547028376 767469645 911953284 693500673 850431677 510758414 824429785 729518723 939375294 330059032 427069633 617149995 641336586 685019996 787643898 119579835 145077117 598093431 749563063 166455928 525179793 293473658 925259402 917046528 962836538 327049791 380129975 412757187 728759076 31442801 479633561 28874056 68516132 670035288 850557418 356630378 968353656 728468217 832093812 748227173 952788851 156341635 839712478 976188210 990813196 347396798 543143506 409185965 672371915 508545343 603501207 57117818 842025971 587188425 912924833 402731740 502067310 205845549 943286856 673851697 756108094 88425946 355646330 135361463 443397419 831957652 900785593 392081026 730062678 574395274 814989028 952705937 985451768 855818544 856878777 103237948 260127875 932306164 992340968 577048656 607759799 561831574 860864900 169594275 970873715 499098551 780742078 353350419 630761256 197042092 731613097 86728416 685748904 745248289 818609850 970353280 977242634 458096240 963051361 524822045 593100569 260803324 985529319 939662112 960319041 470453156 720782486 353888110 994721712 794361506 867053257 24839383 82263393 911475804 972512363 523720793 624761287 524511361 785671778 559734884 723126402 864672981 992504261 774180406 931665370 912193209 913720378 241704034 552774326 249164611 700386998 974950622 982082903 164895177 235501647 434478647 987351704 568582571 803730234 845557120 976849420 80101994 538001454 628142635 715579226 677264903 813802755 38007722 797088488 112634831 496635433 21071690 928956048 306615819 785432412 224206429 636011074 729238127 885531571 321544018 340018567 355817996 924390579 518017062 817156433 125470153 326255728 394811846 720057082 671084997 912578287 318761285 889852224 406633119 975755398 85976683 423104057 653935604 961489857 909896440 959556081 465460341 820915449 422853524 674983297 619344811 719362159 207417357 596097245 447248008 852189302 760482636 918083455 483656719 515627644 542682671 978465040 874879449 897951265 890436348 973254900 658563548 924505307 903846450 997840199 769378362 935755442 999653491 999854002 263630579 681693495 152606475 351212336 585946382 724585371 227351781 324653956 266358341 717650435 989403547 998183239 473309534 514627733 194917177 585051609 844588634 939742166 609652486 631027596 10734747 485122816 993490481 998792856 584761510 776421588 365829477 849233478 228505949 909678018 979639877 986888475 663013010 932118564 509712334 780199788 871656162 973005137 940970612 972396466 516697088 817755774 186717197 791255716 621192471 738841520 175601897 692719685 684344053 868874874 48595530 932778584 668256548 924588041 446967485 830490276 536061043 586991274 521813659 988661142 461656511 817380942 583967717 818199982 941125973 958806619 93385275 775426519 572681650 807716798 459605456 483208555 372908675 983657947 623264181 922194892 908809643 946740896 905567655 923510056 762069072 920020249 833092552 960811655 729479424 916707425 544546353 625242233 353691683 764832788 766037407 837103213 497349008 527805252 770379505 784442661 841470248 985486414 626038068 646069773 556707324 870366857 871003905 912288665 770389678 897507767 130001102 856340358 70404965 408557438 93728090 981377025 300578343 491413349 651437168 927650515 759263217 909372480 147504201 206829123 94509442 802564296 143039259 700141304 690854804 944021388 643701171 852111356 422078900 619699924 797167143 802064517 315298716 599765075 619192516 788897582 569821429 976970276 578084915 665081220 281567825 417253560 393313499 882369343 363506631 741327465 497457433 796213905 864417865 916118523 940102764 949795404 512037939 583488720 565323546 612295406 155338292 603070120 485262952 586090742 526645096 635655502 984408720 991507586 536436990 778797936 941184283 973011039 355325364 781844826 763939502 801236838 964432060 965981424 402826952 479423317 158234595 555128756 985549585 987425534 347415732 369202250 800598511 973949900 691587578 987691859 987867963 992381476 876835985 944687177 351248280 372542768 856765572 903791072 379723116 578405827 434842078 628000637 252367825 698057847 666878590 906799977 791708772 984925928 568097552 920035375 16455608 715303131 369689703 592519037 522841827 936512643 568044036 691203838 478045554 528011167 594383723 831657716 342008435 989403051 440858596 956793256 324138420 555718169 561577472 735485259 987123833 987275928 377469479 658478338 769266621 835232884 684662316 719013542 116751619 273827939 397361320 461330621 564983664 932298505 584884942 675937246 657034450 667614678 991218190 997134490 924882324 970117185 755651624 772475161 882621796 958549809 249967564 405782975 749233926 751068965 407488529 864505175 960985208 963873262 672531212 787366389 921366643 987545663 90949197 412115614 731648353 856283817 78456616 517486347 780947701 952366756 959499185 970398567 674041708 718783229 383260929 939051390 220548680 953794785 559577433 904605430 964795235 984948260 720619357 761034940 795542512 806574255 708789771 881605326 307062516 987148448 842318010 973750249 699575224 702494231 144660640 574833954 340499263 718955163 712957728 727300778 27179052 472325144 153022112 390439724 216912584 998733281 519330287 613872918 990996163 998954409 472754730 639986369 963219047 984948130 76011126 998529996 304391214 944315161 742441874 932601552 901869070 974026010 365483158 943944931 876610117 958004040 804479763 846509396 257395795 260715577 889456554 985302286 382668601 902163916 859115942 895225255 789219260 820423207 989675607 996890222 343799583 780009274 28930356 514053195 988845881 991404299 970170763 992442495 878428734 925336861 200217615 819134071 88474344 800671365 755999331 945931666 865163542 888897326 493208614 853472846 564291685 789539791 668870187 745159097 855317870 929477792 279414119 397651383 525939345 755116649 961647588 983024496 498009151 927497288 690711825 930166788 281435961 822059254 250368970 520995622 585663039 880062855 252491562 459497293 527721605 637004092 799730440 815601635 408494830 999132191 363199472 570905008 70756909 581331849 629158246 674805982 573336370 954191430 258647031 464620819 877597065 969972503 754917252 842959535 108626997 396298119 824302328 886003305 760709270 807624884 940413648 983030218 647919398 788956621 1214141 942384332 326296985 326939675 41732614 936585900 779218593 965517568 54582966 411090021 967754424 967773678 493824082 514909384 902530012 981637885 570558912 609522574 543251917 775345608 721533089 987930710 675860684 775733251 248764242 849494612 873789226 948861408 113361062 944352102 379262372 694583616 334228882 587284319 886338249 965720685 438448917 622276748 891394931 977055722 697986867 780131319 628249671 989873674 183329402 561821121 42119319 749931223 497598735 788165409 351926435 704689835 350954386 766812508 370141487 555859081 235720237 428241150 775138176 893793192 535056339 819471721 839383044 842643297 653710169 820493190 491371173 991506938 935575927 979435373 683043484 841197315 93373580 627758853 360956587 483478313 681226863 971127114 764690150 943538071 959476651 982126765 514944125 569305014 6776169 591115055 382723479 682194304 748260146 894695205 789743378 792579027 916724576 992004996 903146812 906131068 821161639 830636481 487411499 947739710 215852443 998684047 217868926 900838253 252136012 672649304 113605197 993239408 843776342 929075674 205776386 259153001 694616729 861494597 135994721 417368629 404762643 420353004 199322883 400880947 352011666 592161269 494868582 970053078 925050017 977640659 687284663 763862718 130332846 946415786 424892950 464302353 541643109 815675995 560612704 874950687 55035460 681880116 485384813 625044960 954636785 998253049 903400425 934322191 647072148 985506580 958956594 970764489 932668184 998771904 10491830 985720530 715336837 746017921 5550409 197379156 888637177 952477856 193231767 388759703 780934019 990445098 815415040 967581956 948052017 980837064 506188370 730745746 499467058 752805749 518678100 984709191 672491927 726191351 729013859 782569290 259842854 271025707 410384002 908811780 426355072 514828952 506605190 649949421 326059284 526535187 430807850 937971861 28164548 755743389 592309036 994483110 565970949 963124256 583208872 774964567 556099007 789948051 263168131 986187999 618968764 825613058 227634635 568172804 921221981 951389078 681369139 959485764 555328421 838738636 175876345 588978057 88458993 694913753 119091196 601764558 769517319 932327192 505017104 809592446 187765903 694258999 772261238 950746027 953236716 971937646 795725694 916412650 600656725 910684049 558672859 564295748 656112923 769290838 598915571 800083425 36190087 221240352 70145455 822125185 37575804 619216531 743249058 963459493 491225839 799054815 244848130 909839339 653043720 915237729 966750092 995607844 917609173 922237049 964930394 986464399 745582719 817192858 878613273 990415036 868903150 997693157 765481553 903170859 668279519 911825703 433630797 475064639 240100812 794909363 490573557 780446987 616006343 839294853 483871458 851288703 645090246 946385651 56892424 223956651 278215651 584433328 582501232 811722529 170628716 440477706 815429021 961303514 831961643 840741605 149110757 448339607 10308965 953186758 12332600 155811910 402498983 444999650 738224578 896981516 906870650 962226936 245404913 353217810 868385912 883073861 53570360 689491197 830030138 869921786 157942385 177394720 705116123 858039622 987957938 997606474 148232129 874078859 162165714 558510692 535770144 769979531 762499484 946968104 575093019 775984678 721012124 857345630 545722698 671976900 819718919 887149894 361647622 870698336 506493877 884664952 773352287 984240673 429487760 827292182 308994689 323972552 130494658 798172971 743961614 975153267 461550521 938511841 347753829 807228757 368347848 802798982 13813658 50727897 898697845 925308265 328397550 791093828 184546582 513867555 524719782 944628037 507112723 872388702 452099727 809308584 586336717 807551658 394059441 875029417 157846263 885063001 227058425 273370541 816462418 999974904 307245365 734258608 592425286 707302954 528573157 785792126 900964644 907961400 463099057 825055008 261211835 876856643 89699626 644745028 477494891 503672885 292639504 478630779 585946054 618532589 277558590 691070518 993615178 994049716 380927995 386011947 197262628 784012903 586953591 918102584 946404135 951901541 277132077 338464323 870159816 971938510 644004771 968013815 507128035 773075693 364993065 412627903 917510212 980454579 925387708 948374077 479309441 697338874 566912672 940577991 945864390 963777714 92011786 493353347 956962514 999195588 706101612 793824247 195523978 915984561 334094467 969755969 14996773 83704787 746810657 747182531 529551703 531733931 249412643 274445111 940726308 951418029 449339628 765271829 142929252 205780043 55653004 382565845 861594912 889012311 876456657 894161392 810098893 916122605 633266142 932193395 475075654 733145687 277519030 490227027 426949565 930280674 735446067 948442799 217554237 662355965 52835826 369108854 416684625 850634110 294567593 904796623 740488100 794460461 801199966 920261259 541657352 837546817 257381335 572051159 75843017 182102822 181709931 518033453 940305687 984135772 796398713 930695488 736349166 951015689 457755142 756607224 877950809 987283180 628864787 707406982 321817692 474114336 593133214 998566558 401999324 481097743 410036190 527829785 41382613 826512993 968039222 997384011 971971163 986124093 83812815 366159675 626647973 946275598 580566399 977109106 740422775 787082211 605108194 867648301 575115697 601491648 971636731 987384895 764703846 779276705 24695611 853005565 347095067 358587975 929155566 986571424 821599531 906948135 107161017 555280249 892182691 893478258 72741493 963624808 72409285 395242227 659648649 796779722 510839812 834430279 398370553 925488527 71647586 624268380 273437072 709647615 823181725 977690715 542189542 624926639 903280956 929314840 64182486 561937105 804125580 990507243 679109913 819494523 10560809 830022883 549267762 739470643 305560846 584921758 899989871 928695375 600371579 637549525 616793813 752452914 328070278 733820163 90285842 509648491 223871783 718223250 562911249 686188293 872450685 929429589 161142720 667117212 599475257 857143713 465320061 572604073 677629728 792818423 819131309 994557439 120099894 369644385 522247586 528263569 377813137 665164130 689683673 824049033 163467795 902695742 493551625 532410199 109128146 185259045 887255775 938452924 715469411 920830102 894361415 919455426 243464482 501287348 303226563 865081628 689238568 689620338 557560345 658529022 597917583 723475814 773195992 774413558 33935853 436791716 908380599 982651006 97256291 914159862 292967227 478039702 452017730 624615729 739928452 842117198 499407275 681820180 161701332 770296205 611632001 625213542 78960187 238438735 350616883 534497679 876293062 889614700 967124163 991635563 706154045 761430793 731887110 873822775 815004078 996205943 60013410 212827529 952576546 976067884 572253091 802323357 969225783 973847353 4327831 660264426 703769458 976536094 161142902 176655158 503225066 943638251 210401989 423875029 622008474 680169645 766593911 810995189 558714440 570160338 532901727 537922609 398099767 930777246 774570126 989563614 639922859 726074230 228906281 614622977 828926984 959188550 536383045 926712250 474573028 824326976 921824925 983853463 473402399 687625297 598283557 743141173 705694246 978103347 914070969 980099556 633383484 968198177 57328345 227263413 550944953 939385077 985163619 993561369 923085456 943444484 32847988 461208173 639340122 657264067 622938766 731891814 402837699 421054049 130561526 872653595 1444308 926641062 361503954 437461466 964578910 975787457 501833523 616588950 967338977 987025608 482568481 511819216 645846912 811727880 33825368 636796152 615358824 651439132 47340460 374623002 746271629 829830557 127356138 790125457 529357130 719163393 840773659 859515100 644252512 928612647 498214761 603801677 770973223 879783993 947038940 996900067 832900280 924968855 774840539 931931708 581059019 849828645 308912957 635896768 958191564 963090462 337154637 718721635 822193657 906084781 668642916 767979362 662777939 937968077 136450433 892454035 526899416 983895005 702553920 944619886 90909560 162372469 269302489 448155971 168084286 959145700 744949884 889211847 432084210 519262068 985201212 998234949 797261823 910173718 778023238 986601742 154791804 333018386 56056796 118421853 755834119 831928188 815859160 816734619 872813962 987569570 813752088 938336795 548722019 613341490 251449477 603815533 446741719 524299275 519915301 766402489 631708706 944602174 466210996 757087613 368255159 520574897 415794017 489799338 829683850 874234825 692462344 944782247 97826673 629388158 692632754 692824317 515783441 794801271 830094189 860245918 721801681 996958224 819416999 938362025 968223927 971275151 127892595 194663925 396268842 670053792 470956555 633964320 950986582 955003323 13172354 533547828 712491365 770266475 96550381 206963298 868157908 871249546 593038512 612425534 75606250 552219287 979681153 983074273 499387245 583962069 460365542 717680932 336011509 701518208 842807262 903346797 595161982 818405910 347256159 868010347 712795248 840215153 567915019 852492121 95324933 781360758 974979440 976032782 753034395 941375595 674763999 700166672 899810264 981913610 99299837 400838833 956969016 973954750 132123279 209351306 923408268 973577649 378656807 801049866 540918429 679091104 143141523 244918645 950044170 983471164 961477324 999218023 823010513 907785550 449110855 752432833 276921597 368107978 620305323 711536851 737192885 739211094 977476608 997578303 363169343 835500092 224011109 400120740 637726180 711871431 914144515 945991758 234165793 254520925 144436255 839440174 695873953 801080034 429155741 583095436 344850851 803737903 517778418 892684868 751922070 975655285 914527019 957945461 489173207 976484244 704123599 908726602 995096184 995444455 49539934 111564138 533580355 790808277 92570355 455139841 404251427 405025353 877076161 889471526 360235592 475835902 526174161 721698738 173673950 997548642 557519063 575212496 25889374 852514525 23474109 249595138 615776495 959470482 83219411 179951673 431092879 590993325 366295703 947829984 644527666 804993704 969863214 972236347 852314064 901049883 226650644 385364242 107560664 136830215 217455789 454871643 854828616 982357264 458129953 920862039 248768278 638130310 566977281 682506449 174269329 863357991 796510301 934723912 622885975 702346748 34107008 979504853 157595568 853189820 950033474 961239963 958503532 960553164 742843031 840360004 547131416 609377785 796494292 942648783 479054272 661241609 483544798 661464361 165061262 969100529 218667268 420190329 520906886 917788612 819797152 866937863 470088783 916525890 524521540 824343655 16190951 291169116 10502456 507258429 534262766 562416279 849569039 856545458 27299753 458019666 698716731 837023788 769570606 903283439 774371211 969809482 427879888 872726860 636421361 954880141 450558706 798657976 287513502 520109767 717615984 824819907 921552686 989242355 484260645 566332576 804804429 980027527 967155018 993334366 538466290 678931465 453037084 655279912 152491800 648964933 325373393 342216735 293363780 860812369 176528908 352564124 973766239 981474699 815167550 821596105 591909347 829047932 991426617 996038600 814189399 911950324 899048860 904725608 815770396 894370297 450415716 550354810 908415422 987046354 941577882 949910964 703856365 717636940 553176144 688094223 570204566 881536661 275536485 982574028 218942718 973182572 106016659 327859226 277117311 902115075 828894096 976327015 38876421 465367693 815026055 820110421 850086467 892220201 739635619 852753154 324814113 377307759 461584470 559539940 31547390 344384163 575335119 792170704 304454998 441151851 829538975 965733566 368839228 602468718 202483809 809819821 926612208 954886867 97979244 981078610 347840924 475070963 625109725 871256232 795747825 889143255 55223563 199776296 368832070 820083894 842278392 944095329 157345142 856788185 73198039 279180404 578326860 875975307 518193351 973769833 959283809 994062722 71857190 425532857 237669410 667990008 475864757 730964350 755525246 991397418 451050252 623501984 849156627 862768534 590651469 696677767 548601563 877303514 849221540 887415071 983199049 987540574 351998380 639170390 243937846 827892369 26966667 297170959 948511601 980969666 531927240 998699960 498010785 606776239 444145762 617728893 868425369 911197134 394257090 455145100 787779643 894715903 245707130 971048761 618143425 822899000 962846016 978298739 469026215 886777268 834317383 868426603 297810633 628650801 326235732 517150686 131768915 210176727 271345891 875467378 232299944 844104154 986921829 996611296 655386234 854434951 306365591 780261807 200232631 591841358 900184800 941244668 162345742 703455391 297869571 375902042 464662086 955553162 729590199 814539167 349073013 418298408 793729739 986565708 113380726 900490597 970337144 970950858 50212448 283625244 617230690 707754678 469112086 687003690 827338499 972878599 91320638 466362896 563604312 942020469 879607680 916283910 935313834 974509379 337507037 557235188 94609990 359197333 328667644 548209167 928668249 952094028 131783416 707945508 4975228 23635123 233453365 291538782 200996054 976869301 654614480 847817095 23097258 25804718 926294909 986321899 161471052 701947043 838483342 919020864 631037389 673124491 191129451 898816102 915567341 917759643 930401661 965454034 78607932 853037906 700459543 823021917 380955674 941635871 445282794 933408479 472882916 759254672 261636640 583656632 766168399 959132867 138666283 674807155 795923722 997665741 985084760 986838621 400305241 705956880 75694053 225195201 748809452 934756831 379047321 525775775 885569032 972755131 969293888 985396217 650928547 753630315 663373461 833319492 808614317 947404779 760974106 941420315 592346180 994919240 122556510 826046863 942128213 979544762 940786320 961891582 570074053 638620038 29187714 823869789 565821841 875157269 859780190 913763057 778648652 982438204 831329916 900086119 229583962 798477285 636445059 663523279 406700457 439867428 171965001 434553063 2779280 964119322 809300022 984766599 883766073 892299815 206330579 718129270 525689167 643841865 111843167 692558720 186239766 983742108 647291019 955118798 490852587 953527017 304422077 523467562 16617791 640529712 766840047 916417975 585532768 775100168 536629098 569833945 743578367 764984540 717090513 917400070 34482675 843607624 522506233 948459793 52062218 737870087 281515954 914527774 215976044 547841199 333737167 926341416 491967406 919660948 599525621 723919698 542827216 892347849 346607827 949738200 596480132 795596306 94850717 492982374 660119986 948476196 897594925 897971127 37577830 241714982 565948828 889121346 217328118 698027387 273983016 405009136 189080171 620107736 234031242 981128825 779972717 981548854 835682583 900736065 361761325 436763068 715356140 885570141 694040126 837071871 572166778 960175296 662224587 852693544 743072980 964664978 251219405 759054043 818327844 854176471 267548360 544689256 262853646 727272553 443657948 856612450 136744359 503264674 864565579 899676604 84058915 127900774 120927859 698376767 997994100 998357700 411439688 452077011 199867420 329739626 221056378 557015830 746302202 920315990 190420995 866624941 385793475 750603054 919153693 970952824 826233845 826728331 592599616 950095312 129055243 178327181 914889032 963810262 801562065 844233438 876027153 887626856 410000141 627497090 514853607 640017599 502742853 791678475 715472421 867775784 630934016 914170254 59309776 95815602 136916134 229489735 27938269 955927757 397293786 436879137 916315109 993820572 497920782 984901548 813863107 906025529 742881781 959122274 748588739 919375841 303002578 569099361 877251652 947844453 810501228 937348807 642338040 646743659 39887328 226734973 552353446 935139260 347866061 765485406 254998248 770766233 253571377 627333291 276720046 874921143 754441555 823749829 770154512 778292130 727959997 735394122 62128795 347852329 353923009 644193031 732087508 897873482 784248749 861671481 645525915 656362995 252808893 565661373 323212191 878635013 660165001 818402099 81814930 717554383 153023153 761636537 80719885 107576112 339104174 547969677 695127207 739738560 555546126 733511795 637996713 725506301 940327819 991624427 896248278 997245422 980284155 991264681 496436695 786906450 36157685 702807179 177662215 183495972 993782311 999574445 43805895 747062872 834292719 843568964 52442309 954661235 946203577 968361412 397206368 642514100 132513127 637953487 599508114 825094394 221079276 483324241 24958345 471250231 859766396 862875376 557446220 989800572 288552510 993664420 637517150 664348295 525468832 896391434 205193534 532265433 465713247 681543329 901618950 985300299 938436456 980160334 745985110 855118648 844433669 877965757 790992682 886301358 91348065 275462124 98577335 678750382 187440577 864959224 657808644 838631681 708292468 930131045 560087778 629998025 358271535 724427149 670364139 752062818 842996222 933471028 652738273 947548690 147380282 382936392 673682888 783143846 732904029 840196688 253532232 379831584 715190084 962924113 654981152 714747928 643241529 680049102 9640438 721622625 93802523 531716428 846112145 954712045 914487265 989563280 314457621 672632115 684908356 890253873 232255359 823518067 541512082 586010100 549760623 570461323 748866278 759039969 221809708 265000417 843406289 934557734 732858503 779440389 588331812 957465004 680190948 825019526 657363517 963803574 295355855 971437277 25598636 497670458 632027645 661846096 432678956 717061819 934809480 998249155 131449067 554524219 951530739 957855193 446616665 638139146 225635776 953933974 390022206 463280177 448666315 610085917 276910021 470606612 410959966 484060485 358699969 533313128 935139256 990138962 981662786 998057559 757494070 860225476 903984070 946852973 328900777 494425702 147059332 467233944 444694010 459234639 125961939 833201256 204514578 805620681 143709223 869478367 405557376 899711922 605838473 986503136 399671855 524638433 935360904 941783591 537327506 719896785 207043343 622989347 481901210 757777177 699655739 891870988 869648692 919636878 555154223 724840265 325385556 420696864 968648368 975018745 514224514 843198060 438375308 916898298 290117227 458402092 494914551 983912544 5339167 702097719 159724181 446866683 970627832 979280322 436678692 833356643 263251321 738484292 176144665 679900044 676828813 749341804 621967113 662360713 404113310 520593171 278288550 946715849 499823739 582844037 299436300 623927448 876478562 964691802 422991889 818053671 273514508 767646850 435296902 552099854 708959978 798121167 288389252 926649724 751197247 951578576 610514287 778306575 772439051 882027810 345318273 518184841 65033340 334063543 620039229 768498454 38023952 43373155 514746865 543047477 525811555 616300449 626797852 995639780 260667133 344638684 293616133 920089665 152887665 462814307 644548530 728551193 863170192 917447645 134312200 322719510 739016568 926778476 614679440 758213175 447335143 787715567 177809886 423015275 834511942 946072136 878624035 975435059 40256334 905630663 708738592 794742122 140590278 858497461 916691673 969310454 970876882 985600602 596448235 874077250 774414044 817214435 19005489 759627893 721677569 728054968 955429722 999785816 252296516 524284197 358252977 811566039 144420923 190970227 684143155 700919664 934829882 939786288 801840024 875683741 703844942 754354857 460256622 995384600 631911880 995733031 443308572 470902813 31035140 394783135 674784567 888905847 81325726 636288566 752805094 936189348 8860507 259570780 44361052 212802676 103819387 298978248 398256262 725753907 843956758 980122963 806100008 956805906 899997530 934101840 870818125 991042200 906866614 919949052 446770809 791681815 773428451 901778134 823964188 947604364 941810552 946720195 934902068 975634892 945854701 993791759 754732767 981664756 109419684 421888731 267903004 336180837 818905787 846663049 809700483 888778070 468437192 738705864 499589321 525418222 705093641 730649384 915862502 978592686 382983649 995822692 793896630 929190991 42845787 511734065 72201707 516400530 754399087 839822406 532893100 685225260 412923277 522509052 715123652 869120040 399845960 718481116 276056834 697384701 497304146 904145539 750425211 796937392 731858274 852486323 945818034 952481467 83786645 387217668 615362271 670484123 126136592 648238416 330566426 560561020 312453849 776376098 869267521 900026699 941625059 988339313 575649201 884120220 498964505 799752947 458795474 667455902 864327098 926033001 662355897 976098208 420890566 837511875 385962244 672052094 437713965 697469679 75536813 891534217 133735977 160390985 267225534 310971038 435710899 507531825 622788278 955457233 281761347 386808516 878386600 947967450 444913292 825214232 134280752 550874759 542551057 733718055 969284906 979482666 127527918 737647758 229391007 237253432 786624001 825645022 150067520 417880669 897881300 916198310 671458193 809512571 472404771 562183378 807566098 844532667 245532892 408150035 44828376 322236445 862518267 997935621 538837614 804761760 75503268 928765834 326172893 469399248 58792472 721078351 66006239 512412387 139792248 551602111 5123462 20300879 451713038 597872591 872750300 985665020 666800295 984130411 795728852 941295356 658143127 659573958 161311451 888519817 257157202 288532206 538162100 943410986 445470954 773018617 419909945 587550719 762341358 955621887 174836262 225426478 624352049 820200329 881451519 927823904 357938325 560548954 327801735 883944534 540404153 881972214 893494658 965964987 934287182 986243630 250254738 525858421 494092787 934412796 953289535 976274365 665854399 842649026 153350898 442924186 885042341 984865690 44805342 801998094 221795071 478676076 535267143 916838640 325543118 400628543 731633832 991055403 744147891 912389656 321007446 840548645 281632844 475757053 959369244 970022653 387488175 525202826 782239880 921062951 64804171 180162126 148497823 381838066 871251121 984065916 688631376 795767458 555529855 978792845 44710080 52239269 260684336 765240563 685222493 740192432 222908770 897707056 613637751 873822868 465663449 893952456 708548182 902921374 815453554 816367975 565807793 572075617 714639130 867869037 861970595 970704552 195102988 305364784 908308781 976033236 419442979 689374839 727873506 797812235 854048357 901456678 304096279 791797576 739561603 835069260 131976178 368375682 776216217 797791472 386570325 772408133 243359314 320803759 893689715 934856660 704590009 713682174 555768884 926751022 515678110 663674422 47452387 685708036 539993687 904662745 549272281 781729715 911913352 977340541 828601212 915187291 320467376 340601979 695099919 843212954 243346076 530668333 481822518 800265492 255395202 354288747 888871981 952989221 725919644 867298026 885972251 904065270 791776569 981902200 395186863 494528201 951482095 996912386 842773760 880136518 87860690 941332440 269454005 762275811 811185737 905696611 313613338 462815711 443776250 496326477 191266641 678262748 944287728 975271114 250355678 789500972 854418991 937225715 47578947 712676631 92879718 118853596 810790978 982416163 640432367 847575274 397487318 969342129 419912223 499578344 541955733 592106305 182706911 237618650 822672034 989839950 109878009 209036393 724937602 733289544 447732045 527515786 300547596 514680488 197900798 677397693 149077605 956670974 412587096 957480844 435962876 954057138 994148056 998768001 238033229 486722152 165762616 251363064 586275964 867280527 790807246 952011144 337772961 418311897 796198527 811556703 762686076 769722906 925223169 962618549 300548430 323056414 817914399 882690883 942991292 994549817 28557828 299635805 41644667 328521500 548479095 639502151 581206148 817509090 519690105 783118831 696270672 958184970 98291592 196126377 111602968 464845400 71863971 705183148 971637543 973014594 655201440 852163907 551823331 570517963 358618848 751344437 554953883 925042614 567872755 654907200 585183221 724013020 83877201 436277938 207187434 224184547 387178631 630729732 437129245 827263449 580092129 662657186 212473208 341150435 315199962 611581999 656903314 874466629 496557665 590386316 488083181 807399251 53905636 946834718 423090252 836542624 677655234 856823954 630150012 918964315 409929801 955284394 447069430 510927568 263951819 735087975 315637724 414508671 476383357 547185559 112500126 470490060 19057909 993646575 852360912 862087269 411097244 830455649 573222545 991331610 249683298 659073808 613552382 966164388 564521429 679320016 793441150 864861541 456291204 537552083 417491920 851059077 22506759 201251701 193672799 220227605 404412388 687809107 444475127 482048069 70724729 428201846 739710752 809949414 833539557 883467482 965914875 989586809 653812956 728451023 577543929 908984028 788146256 820637832 678910123 750710896 398441013 826059060 144499049 944008737 979264788 980110767 144180042 752661970 935262100 951772273 789079751 814939312 28414247 224173884 275311144 315076982 610602182 938394490 728883988 911627342 179337997 495738005 688063219 925655309 547792200 687349738 892004511 988819820 581496735 665644505 412605402 465733807 815832418 942636199 358249599 372659875 811399548 866979963 464879761 658597483 776302724 783127259 410838214 693355486 255066426 294007301 711583772 731833151 881319810 931045277 204321313 379809331 791342426 814204477 363754056 657986029 349281756 399326180 269237141 561014502 148807407 526627170 74531497 809262275 89099521 725962857 118825046 170632188 759004558 788297981 951326872 960285510 58396714 746056333 402382062 936408664 891647848 903599285 351511746 866710134 100153534 822442050 467671775 498957129 559597664 824641861 398179735 519988386 327917170 427117755 912375558 977548663 654577889 741146468 56747457 407176773 946259669 992155283 618726413 845810572 136654256 612017288 259710864 501483420 217859304 242052507 555849445 764225132 469597494 568105023 826959660 944952769 126766317 487508285 735362423 789063453 578600783 985170906 38413615 623066525 721834594 956796490 895865518 902454012 875885395 892795644 390484795 522241735 287835029 333947567 175139892 642104767 719526922 981512859 992259781 998506943 710351697 877161860 396382070 847936776 176462736 208556220 140495162 723359475 411612679 592119331 746616309 760003742 546545924 639308780 559425262 945292305 178513207 904430363 829387692 874588042 808863419 991600363 546853226 841317079 742853248 848730149 704565556 936351921 703016686 820094045 989673543 989990308 95408695 593529870 52030003 919138310 610897865 686195026 189592932 470257760 303484499 638622914 527365292 988122912 342353038 631270195 474068276 834522981 391260553 676772250 369563509 583698143 402704144 745220689 43558564 825706070 248636995 353190916 978233102 980901985 497698660 657162498 605582942 830750191 407294543 897854980 125162981 296204103 168977767 280833129 758075653 934764688 437484723 489854652 566406643 785418141 548815927 734895961 72856309 219347655 310761503 344576573 167471531 822608371 278812295 442898625 908625060 941664318 343513910 919792314 255884670 572766221 973240047 996506832 615424252 900782265 784741661 850283299 223053799 603475750 634170939 937864035 930773491 964386356 335241495 971344179 252163331 414478151 535838014 620700534 114042323 998738103 978962689 981313654 87926759 672401788 85850451 815875768 998573680 999641798 57517159 715672437 264805361 271053942 125291092 648358688 518543217 994023964 656787309 812905009 279671973 775161786 187611387 416228509 794834418 908999263 942131318 959692090 494283536 658731237 891088795 906404579 344184014 567466718 351535999 423151838 226648030 620757751 772355502 905050704 967980488 991020456 200190372 776912257 348635329 776626518 780658609 896314567 236236651 914328268 529676852 944407978 431177887 712786104 410710810 886290045 398466120 549915813 853836083 953263316 431384785 549257693 707463373 999717321 844504413 916591367 915029483 929596533 766692988 956386249 30423972 785091147 18372962 987110861 324763339 940095437 380077971 953988657 941925430 944676253 511716829 674991166 771194323 800710993 707041620 795080162 87218701 435489172 704349585 875236057 507947188 813357406 748255057 902868777 426812730 622731079 767700248 988264540 685023017 813673413 393212940 771604595 342115499 540522811 220360546 544142141 285983331 807496844 290318858 879344429 864163075 938136325 748222020 939241882 758531573 905692578 940903691 959831395 516671263 955464154 814888729 995633386 345155508 621619462 988641788 991138698 417355084 462367551 893309079 899738306 336568415 826534343 876529418 906244444 383555521 751771171 492198906 531053927 505146073 555954407 927348618 999155902 640829192 666319114 447827412 810883913 669898739 845272816 460843894 699121999 931105981 944506447 218143100 538046418 484912594 684287402 113261189 152436161 941703922 976874501 311937394 780606418 212219534 643014256 597089543 867425562 191318932 262072895 354010609 486386332 64966206 427910308 17415633 607777030 123217988 999051591 512840612 578288270 553199627 979885560 856317381 998128091 314309026 344957007 941856860 960415427 146457952 220927081 849792796 922691867 541244372 948726041 24589012 973548166 204543824 964664881 51494177 798350832 381978133 971287245 713987701 739582060 366824897 901378564 368808602 598216810 649521991 995354996 34314269 364844505 927070239 934333389 654342309 695865674 33527055 810999358 598054827 609935772 514428882 577472573 138534217 400593636 406538437 536667781 214614646 919255435 874618724 969273497 271782831 773585385 731983127 964068467 63459871 121358258 736247678 963933684 861545869 888799840 954429612 988757174 988032994 988229668 89123332 819788801 398087261 668485108 214347116 795050028 518259192 562754713 729554962 800466360 723461902 913365378 589138803 627861449 144061991 860276924 263306546 726987528 794517694 851728677 731200744 960111426 775619230 851329041 668141822 732060447 95843556 229451644 505686128 980866376 546474820 582125359 464595883 855526724 703908029 947051944 912642676 984966417 847249811 932073861 511149918 658107675 728130039 856653424 80537956 637899368 919742238 926489736 374187499 785319360 196340427 931266960 365108208 596807524 617666393 905788778 665246503 834969904 934636064 959324407 120565384 957418001 648704408 879689876 741602275 753632221 59359507 153954034 689570375 697115085 711188659 801091707 139818162 972326903 301895083 983718484 948540567 964172950 832192596 921199134 45721444 619920779 727136926 969493695 999632747 999839324 803531926 806705736 747358532 797102162 93075952 150148565 622245905 674446259 798487526 952017003 77941312 474613828 327860365 523721844 219109738 327045892 102777436 965188677 359290522 792143005 398426153 755902825 602518936 670937184 797093410 932146244 567089943 819558808 932691096 967991021 818225533 944843946 630365212 633617021 111057018 490929533 713660141 892716068 135771143 145100609 507447743 769561332 78000340 350967679 841863034 948124540 151314528 668412088 128336908 633942815 878682314 932199048 976877577 989126210 770244602 947849177 697338539 834005741 837108080 849580102 295789937 735777250 370963064 561645163 169858561 891636230 766342655 979198519 990915971 997562201 315749388 768197585 12948870 633324337 452851315 857562152 229206987 696950462 259755648 989211783 319368604 381527566 404610846 529294939 967265923 997054519 190430458 775932601 801398663 938828440 511409414 702032840 196258258 672043629 727154850 934214598 161736051 574684574 128349302 816897998 691464885 999003864 522753366 859817069 786436297 992789111 453413610 914408178 879098015 990994271 137685013 277511225 974213845 985917501 742113461 963850981 362624367 539492003 806632281 919866059 948130311 986200906 604739106 965182183 305125932 875389528 288712926 720795079 139635993 648030575 407084937 635025084 175567086 366560388 494128203 656327448 597205101 896434234 803252152 875678033 367337236 928592177 779385719 967833566 437019502 842304439 696153050 797951800 291315037 957976601 368431669 837891355 886823271 892020362 543363881 791974317 599191374 630786204 863097000 963617626 371631652 879781864 477220656 552879309 33143407 699468144 38632100 192921369 376442483 838175989 445695059 542420713 540820107 683515973 731642281 899885191 359137959 576107847 59300441 574340814 538258027 566104361 797201167 931424304 620005640 953483786 535159432 882795703 12874296 246705163 125317826 669841309 629377905 641352736 525684991 739383136 142350016 254795866 832499355 896716217 151521291 404868593 313107918 620818599 576219457 878694659 435738710 767622127 586224429 629138232 93075298 251385514 152877158 367196162 440423556 620651528 626901327 873772984 438920122 685451792 66000719 591653566 557805063 923465966 391243693 861223269 837536343 937086070 249287117 317555673 496298406 891444322 946804322 950819638 904846314 996197205 908799034 936417900 276136088 839535250 151831694 569022247 737087698 931294192 76746322 195845330 720573091 926052601 818699253 851727578 94403783 532835635 798079907 802474284 742792417 775868902 48364318 570538828 843316863 870157503 357347040 711613218 656952593 699462678 295543561 472692186 884902527 928268093 145793596 811812619 287207127 304099067 517794763 671841333 722502504 767866001 795927168 924052587 31982720 695486728 810570583 941761614 33342172 692398993 244138189 406144399 408755358 882609411 809956791 968969918 934534054 983728053 235747506 479372312 462353971 660949808 196905896 505262724 698704458 848680624 794564972 875067469 733300160 790290243 360148069 718372893 376639493 937692488 478374842 813439197 792554938 920101824 98455204 474529840 247697669 618835435 337470230 572055574 131067885 625521830 919276147 927423427 103405186 929307216 816416725 881973149 191607347 370989149 472906559 990570227 574864821 680139430 938223332 964973870 783943519 961864274 846018586 942359768 650349685 743436775 727936134 973968065 880901897 926073828 202595871 950103381 79823314 653087509 380721987 935811461 532790601 929415213 86620015 509520620 108793807 463344135 974497139 996053677 693074946 982032139 855624344 927449866 924865909 986022995 928063197 955564171 125966245 771309299 142553838 159756727 388056929 762267452 9285399 870965607 96556997 932841759 137693803 661533512 320118153 983494232 133925119 579712072 180107652 969244482 875118615 986413439 194413668 625762536 84699703 621521020 506833808 734649289 311625628 921911216 201936767 757483595 960340978 986352404 624475610 858206134 352185840 507831674 80452022 691784620 746972582 939446760 375637195 761881892 143905783 310290486 880742441 886931263 267693167 478106425 789035128 986661112 437262274 958382746 729052432 909144307 619181415 945084068 695216241 716837247 350096999 725212318 297094685 560523923 665141684 738059707 340968911 449662399 84013631 509602989 610075206 628809934 916191260 946480343 215948425 485997659 963250415 981986606 534811410 685174988 181655416 737920397 931967549 946373530 583662153 714577361 131807013 841624077 180652974 774182085 962562333 984267685 220953317 518838010 269542853 667848318 127554831 556648091 55161108 638273753 410860836 681673454 219377868 889837736 760174959 869676373 345587505 940798101 977527651 978442246 79140372 277433590 59277295 683694642 311218290 579692051 956278574 984623317 585301396 812494669 827919882 949472139 487020046 631405413 896057253 938307371 171851812 301734128 712854438 794687039 11383339 931130873 237304921 480831477 162085006 924114212 802786831 886910473 939348853 967288144 683029063 987045663 660851065 757967857 998572472 998672451 840402357 926913701 919432316 988803514 275096082 346741145 77792741 774596185 698535936 711594893 701444265 855224964 351233092 947361813 52114315 93960929 376638093 431369479 760992852 872179525 715415984 902891572 744480831 757843456 387004715 958677447 879094876 939584249 30574841 444288335 189996260 269250610 153210206 264887007 110156975 649352447 994752348 998448325 72306707 212357329 671966125 762194411 133702724 495726637 558785851 679691905 898245750 957640138 937455409 967417123 359934655 700032724 70014225 958379669 223345614 936306016 58987917 798029023 848014427 976305624 214458275 470207616 432901703 784421433 670789316 832565944 208749722 767522026 167953938 524412920 220909422 533954994 956817904 963150655 399433632 881020923 562362324 997219357 364018450 453792703 775121136 891789664 558046406 775373805 938160258 961008507 409950071 472938811 559447786 969814141 34222931 46295210 447570962 871428918 501898068 963963194 713239746 868530410 676598767 734175031 959634981 999843010 530537320 675362943 468503368 741389677 985345989 994188850 149349970 482617664 448222411 755957257 356523593 617158603 100916885 502381897 856701535 923998643 19494331 844083413 484322787 857980471 26939135 843753246 433277776 786425859 561637258 754234367 705300813 816370003 79568203 276994886 984345110 991449594 739064903 931073517 649594866 944067569 959400410 965590363 395078567 557485593 650117245 683779175 597380244 661069811 371942386 687464046 352105503 656504731 773375468 941800998 781688153 801732725 178563277 193934861 327715676 354856178 378759841 976744254 251075834 831132383 896555591 898385365 880850805 997372328 48227039 865330650 152292025 981436030 742769992 954961258 223941743 494784830 413592237 693995706 758802336 887459164 616622193 736446537 414972179 889131792 371560953 576779957 31500684 884939523 999324453 999606983 754833531 971967955 358249280 540780527 249762093 582961840 238031664 274249316 339111722 620881541 914747467 992613539 202708864 561788189 520249226 638733960 79014148 235680450 136512658 229560987 991978567 999636928 47051308 665568374 811519830 868538311 852589271 871221896 75754341 801582101 989566388 989766254 459349118 931025313 232955160 554060673 730596628 841349540 753821804 815198604 38343730 283329286 371256670 756974779 467767034 565452531 158972636 232437629 530100213 839775389 36565966 758261016 918872621 953804405 770417875 810895889 938057972 982650944 280447710 513014997 664072095 708821561 643178445 875920339 57324891 329742622 716450603 913121462 66633793 795878954 61918867 822362950 757487072 916686298 699582480 703158279 271171767 732811770 192140340 354713980 911965446 990635889 828537360 871029472 533499657 668055889 533798067 688888631 600659680 915641996 826240897 992962467 365014278 747827822 245953603 601574107 654239079 738118773 221762929 531233684 180174248 309581193 582693318 706936881 655377120 763562245 923153830 979786510 747311149 858639445 664631779 676664865 278135431 510137192 205535276 704463854 799718500 900037177 168314647 277965906 33706400 313147433 391099557 887700909 820136328 970220158 600919592 730563804 664389128 816930134 598607453 634216148 198525075 782746319 991086141 995116891 387081674 804475277 932307349 999310286 229567995 602953495 326350886 898907170 494925047 861894027 426968509 557668759 700908832 873479493 156176565 254116187 205845890 391646758 201717667 430213864 501981552 943876037 767741154 961619793 305476620 670606422 769330523 922258557 599615079 830184910 254093054 424076854 597209386 883510801 869190264 976758700 195349163 957998349 450820279 877400318 197776817 344301752 846650860 903510520 549386868 670800173 920758691 996291285 934632830 957750745 545704074 876028091 778435558 779738903 883218480 899840435 133416297 832610524 169844755 489780949 462558384 683183926 789253234 809204139 547457768 923865758 625873528 808594104 234721932 580126138 584926078 983011721 612000149 897154304 513626372 700060330 197526670 608380376 469004682 651182076 402888006 874032265 774496415 860259002 135640792 896976660 221602933 730612678 752246825 785027537 179129663 760795538 473340770 813974129 412478824 981984165 33333714 749481438 448428352 599086798 104339680 496322328 460674262 496246626 559702493 651592758 630010915 835447550 869941058 876382448 320691076 846609881 68380213 207171161 297545301 644951431 557174056 696620226 57047135 310440904 138866788 742354916 508197840 695984466 731563003 743232354 252084796 496533834 530236578 865679114 113589188 777551305 73354542 421066989 746478660 927708492 233558750 833961409 131905869 763284716 864700724 894139604 540702805 706672447 500427351 596540103 667967573 870723061 989364949 999029536 753717815 865315376 483335935 761698970 899294555 919464062 905412096 964689086 971718802 981059548 74132082 300481326 813208896 820928626 130038023 504063347 981194592 989484083 774880522 777345760 781776657 981154050 778384623 985673461 198977195 696298592 873830578 994659247 926813920 987865296 668079921 736162716 752761574 922507028 694481523 861761943 588866302 900535473 739766533 956529759 888755920 962298304 892603233 982469055 93377794 618285837 236121759 638001233 853016054 937688758 585595212 770679489 485916508 511356357 554626397 813273554 808938594 952340160 879848422 947582504 278724699 575333110 732168638 957859152 358286676 823678831 986864844 996024666 653209816 738150890 35502064 102340716 51280905 667877758 156726897 258191342 153968738 234303834 734613066 875548349 596828596 614361449 811861560 908466701 894364562 936092249 963715898 964712429 982371174 993105314 75933284 688852216 279929512 752621743 617598501 637767351 303778796 719531644 540576417 742642318 168950521 912120475 759797300 802661814 52906114 467272309 984560432 997903628 24625671 451877162 248141217 966914547 901034746 975419237 284508509 684771005 552039697 630730677 842294810 924076307 744794970 929124291 93385119 171350510 844950287 935480421 510832177 979939155 760779351 953376356 853515317 942375765 511112602 783594214 888999852 957001282 115217291 846274283 601310590 667440780 961787993 977136144 677151209 796575642 588606574 744315585 378360617 789754824 752782621 925513890 286208028 669459451 139360638 443640199 25422914 802612332 713234731 993537717 429270052 795448805 138235291 942167952 808440482 922612218 361424584 546085889 831228867 952674833 96598011 274208203 110664819 583103622 636181114 861804503 626133899 708322867 871686215 946046459 273158034 441837927 476740587 949611392 626704859 750922099 57556717 416292631 686407206 789758698 841983131 904339428 29439154 35657027 639858597 661921234 785829033 822235293 80831893 618742832 949736370 970175334 992061780 994164719 973751531 996523010 346813001 436664392 58745721 119630450 388141913 612467639 108822520 694578748 137743509 358938081 627026738 687735352 194115145 466975109 296538722 453372360 383403013 839823055 146604738 353728241 152450152 288908073 905729278 980876978 41126280 465770685 224557933 482764049 781515775 934603968 527330578 936745762 319966621 714140815 218094458 826346301 479007315 627113766 349247486 407419457 185617008 774913389 828148879 997444078 102084641 713824239 609375718 876091848 636970422 863325419 374111721 772690998 935070492 935088796 870305111 976293135 937756645 956379987 202683044 626632380 289846419 737125932 240956676 721035120 495985950 751775798 453612839 558543336 300722051 590903792 319865357 394717858 983324568 993446463 554332267 923695096 496173739 532808212 604473178 774939644 332543168 650586075 882341709 917690310 600193495 626741718 121844690 707943556 181290045 433759204 985970739 987150777 712938608 997139937 560187405 800638798 687341782 921871310 962635676 995444101 536688670 673086287 75453829 761961353 135843483 828570982 373109827 530587439 713835087 733174667 250111107 961837225 788965777 892975588 366599045 820209681 888596965 947048347 81061519 648866680 108885857 576747745 827514919 983129916 496990292 727888136 470969804 495800072 615435076 968274389 751470262 751923093 426053747 954019243 414374188 877019104 918344228 975506633 650482488 887241168 65325290 591138232 609894078 790533130 729476633 883373289 965546208 979597986 30548627 499930593 908695576 984021240 739858682 901040417 216400420 834300740 459469970 697989147 678237682 793156251 35062127 790836349 815361193 988137467 963071822 986909444 118955633 417626218 89745670 887508957 813490365 838777102 426139389 519849163 639488854 675354177 836241843 889947928 65417213 662465140 714462973 963939274 702847731 994555257 110877167 525767463 118182917 365373685 892141070 897135309 755296206 875260921 249478706 250427099 344660317 548788174 365439277 423931700 749964086 790762943 678484889 902706140 187838666 200773903 597010250 664461424 369442159 891739913 180169484 891398977 429551469 950213856 352808031 684697573 6814741 762003393 219884421 295193179 65947511 350531986 512578747 846789518 660380861 748547549 227055408 720356158 480628938 547767232 976943478 998588637 524599703 744631381 731195584 753084223 374487396 527785046 280032845 601982477 919754704 988156902 624431393 759539491 600758675 915158362 160861286 458097962 779563467 891804913 575869766 761879528 545389802 595050874 943542285 984019325 634771468 772796361 332247877 840219962 802088449 848067981 628794015 680005928 744408163 959524980 70302529 679654395 388148631 823119261 50853350 554009356 544814623 753641155 983079698 984477881 874476846 963811681 656455595 968804911 705463503 822620500 223210186 689723084 743970502 831470750 567034866 688827977 474294198 664066139 870021286 974493542 952974855 969843109 344258158 823241895 441809102 726586072 200911491 757438730 211776150 650415073 868757907 902165372 212253686 397975846 319099325 467579478 288343402 409661170 453584448 573595771 209381493 280727612 264288991 717548466 22120093 330037690 115935725 907352508 873611378 932008811 265611179 895464705 397270853 854664496 656406854 999089628 339121434 346163654 499615551 819621956 391569984 894457427 335706779 746955506 937906702 999913770 940453 880357086 105280193 588451610 423570871 666134798 888078450 941509191 538278899 772032697 215673194 471961513 630589400 806109722 226988902 679971206 904131506 920950632 760373325 804952389 305968096 497937845 963376684 973673565 728488607 762734498 173713065 441691450 971841869 985209255 573193531 761158440 822339708 842710822 265505291 638269745 346390142 608076305 69790519 700758230 462244992 896699457 663815706 766186243 365736125 680901793 656322164 784752242 887778521 945308755 658394419 707408974 507751040 893304714 2676710 321826123 520590283 926403852 993629300 999138911 398659236 409522131 854787653 951477116 15347107 816207427 514118111 835024852 43823599 915688638 378455061 577158523 930234423 961454346 781498438 851995217 373358251 416681105 874340042 945852023 89260657 409615556 487180177 587150819 616384100 698540612 29459495 110722246 841236723 857024982 354261590 861414360 351313436 623741081 410833233 510439078 546787755 866727583 648790777 738592925 665938536 829794801 310174232 867578389 163778609 963632034 875802225 906118319 38022885 610806799 890509668 951615629 474519446 686658302 97905847 485846486 420314055 961632629 967777118 980305114 932345251 957466858 55720223 130727192 723418361 929487029 219325374 999993857 239782986 521221423 836147051 892389169 919736515 947263536 661597299 741659876 16749178 699668430 434232139 687534970 759825215 803388287 869221849 970990521 865269587 928392864 904032110 936929812 621813791 718099807 634130095 997853890 264933264 613243412 303244008 374636704 35786911 892254752 374397004 905833659 987804091 993570537 725418599 861907464 144460505 966908253 39126 244291278 203851971 905406706 753837650 982970228 515772370 779971932 122053212 784360813 689862973 831913100 42510783 952420367 442627043 666348244 612361865 911956942 484224983 742644196 461686956 471043550 753676817 951777231 997923429 999674615 961889692 969458032 499812499 563050450 46195704 836804356 791365021 794905551 640342252 953740843 626669229 859231117 648989595 711875225 340146057 440917667 256463762 527246649 199507411 661895937 60799625 587846928 784782276 817164905 53678888 559220065 484261457 838526874 38995719 206696735 816601730 937356743 736257941 989041322 268620870 730701913 129641637 608311744 568604044 958682645 838045323 877053586 7857706 160793403 634953868 950152666 199320358 542409700 864700908 991858596 13646818 25772190 402423153 560707610 857481390 970988789 699110619 992134842 250233552 540393817 989838899 990626713 894884299 915544372 558267879 951468552 269772046 540262869 708887648 998603806 482019434 838159861 644842321 717190363 293117725 952650733 716812338 998838777 367408498 611052687 449695676 551432479 867548061 885296415 8708292 792957097 729045236 826716103 429561848 538885370 472902782 786042007 230337555 239700993 844234040 912867769 236786704 345430635 232797733 502195651 553027812 569137844 761736518 777978648 986224075 998074200 277207984 331251704 400382277 834724695 599037588 990930818 176632652 204915176 881792817 905829225 718870634 962923338 906984667 997314537 675144337 681402214 736354490 828612445 641459205 833009523 516010914 719852600 562862094 739056123 969676274 983122956 748610887 994348824 790905985 878003583 493261237 936874447 918131941 958395859 734754715 809772959 195745697 799346911 636978921 798658586 238072785 663700960 245594534 315685440 280808895 884181036 29235807 76461071 52195008 79194722 193905570 345008437 472217885 751559457 826106796 886327983 177909270 246091394 254234460 279934600 151496972 436412745 849473267 990303705 322586694 437972790 549142793 894357207 284851730 550032671 859084791 887868866 51319971 56717750 591686856 863910441 830830217 939358771 266680708 719444694 444583236 676858725 663835375 795211483 720275939 743598067 832437054 931959443 825849712 968260680 372045238 974535628 58015727 860191262 317030256 997043661 294803326 664869089 311399032 449055431 816203251 827391542 38742284 229406343 11995980 800456989 249774014 289403898 962295149 994452544 412598421 777330983 192259096 594375710 978305933 980798748 373378646 555289737 710804892 822059281 551113760 780762496 379731691 804653091 853755640 942676832 408399693 772045784 855373104 910123541 371204101 946259467 478129881 697077169 333431405 683996219 102060661 766768022 681774563 748512258 50217715 370642968 609344756 831095929 725179187 773645186 338756343 349636111 413582630 467542971 256834989 695545102 329274110 515658838 146585285 200569948 576780741 998711045 413608880 851987514 472701705 482419592 22740773 753235980 52781480 860330364 484752517 616329515 336384415 938261819 817622560 964485355 522269529 621442136 545078594 894057215 841516678 934504196 149838662 693748171 300583011 762529497 271400110 463056436 342404515 647546083 861959482 863021240 509031984 801116571 638116004 958552981 430763713 604237297 748186543 822184944 25885264 196629992 861475736 913293928 501158302 684680929 591403933 816964364 162105778 336987143 517970199 803668418 527101731 875792924 149647657 214049274 639348350 759610128 103999432 720376556 571593524 619649838 436116765 586416113 301455190 861762135 905890675 931417473 565573369 640728652 968846433 989209271 903998112 971218470 362958536 624460568 649657622 928842834 220583257 382528187 663571732 716720818 182515356 435489441 998418920 998547592 693870269 841478141 519058475 923682637 643265780 901098907 131189461 613259095 463008602 934779691 941492956 995866650 221008202 784204659 41536699 237535643 368092153 564358689 835567106 990401864 72890636 207244668 695446467 774842241 101416494 275766099 133580492 554367838 376315642 597364607 464751919 540962870 704422883 952157359 56540236 309999570 604171823 950116211 236637870 785608944 727158995 977194126 285222429 883502472 503028620 779458373 999903123 999964803 724568451 724829419 363270838 897118058 438653929 647780035 744806244 939064541 563596542 807339532 371212058 602500961 137694962 502148655 315156068 922941327 846576119 895788834 849625834 986476928 410822915 981010858 760329281 843456681 908731731 933126013 149111648 922818784 464613563 655116050 694214441 893468376 295193203 409228516 518022962 519472800 171297312 286313444 559827546 763024539 691992148 974961655 134555357 536293468 40925854 232064764 411023264 820898869 561354086 799562113 608763892 704479749 497972257 875584400 789443981 806011287 617509249 669220413 26487725 610561037 863470538 970637582 303247645 857970033 626534104 838442133 568778151 908379609 946397505 975872911 548982589 574020053 741406428 754381488 238341822 914608555 860848178 996272505 563658899 764129933 699119376 738002846 141716774 659615912 991539832 993284454 124790004 362695006 48349308 573317837 524002184 787044213 510712841 713877992 854012457 869923046 893990640 921645179 818498906 915159219 774119623 975649793 440833582 545027297 204459997 207316151 193717106 479133526 104987919 368984613 440098386 511255456 378396494 429225324 34510524 436793986 80400130 317688592 561600727 818714228 517092478 823353510 510913129 820405016 551858619 786630584 79136637 638527337 912156589 962577913 838260308 956367482 620102449 648482048 613025517 620116162 990910226 994686969 450085663 697335859 342848502 496310276 319413852 421631283 360579649 778782556 65280674 338551677 422426813 650180489 644648451 822751604 464127443 638209404 13337411 276267901 515518654 739447488 382202492 576153875 601781339 777538831 643653196 810667647 310798188 835257490 336715499 604943459 476869436 938659786 507730469 613700193 916613213 973368517 37167950 152326077 722747795 783521173 727942309 858790643 100504665 266496022 532921939 925744059 365992912 688245852 893738333 997891940 686366386 693149866 21369723 36531736 996170209 996246465 651512733 660864996 709097581 743088862 66465041 818670186 735846606 940288506 821042086 853815811 909890352 998827978 963807352 980125938 332262531 926477243 547083597 883082177 60381365 795182561 864607712 938567890 972857921 989389920 545781372 922167393 906029380 979361092 401305383 809453778 660217619 674197166 141758317 484313848 512333682 793497313 343531988 582627203 737368845 868472767 965253339 999065726 62845884 690704905 926621195 999085865 413806047 859958012 148557034 961977074 892443670 975022055 654033742 858442430 766051843 824640544 467724634 711729949 881301205 984582679 416880432 504285094 816638298 848379888 444590193 823711239 831499276 983506685 168242548 260058496 14167492 867860754 675451797 760515913 687187667 703400091 601714816 848516994 414146294 935445661 66475510 832608399 283084688 611785722 8592524 208713948 158649323 248590537 67246525 706005875 964532110 973640986 943817467 946121680 67263760 414004815 398097057 469969389 784214550 929734548 366333587 408237311 871709316 978144052 646131863 675085600 75703745 373505429 169647966 757982302 972269346 992659085 403556789 889720655 846254722 984510609 138274301 175314325 311276846 492065865 59290507 830355391 205541389 640941894 117897593 782274226 808685770 928294197 283727340 641690278 505152128 869783762 495371865 842594235 738490103 791148847 955917321 972721335 732729063 934663224 660708140 830051365 706297409 863772633 904508301 980568702 663627452 720089675 63607647 736836762 820666690 835592997 781384047 934915968 7722194 407129360 82863592 605157399 286200193 798154434 607435091 684393288 131868695 861251258 489228712 965079200 137736425 968540778 749798126 938724170 998870210 999574055 229385243 542864800 390727274 931217834 89073470 334105207 500336931 805184922 138006422 188482913 600526762 891605002 523226997 762730836 473580106 967172223 820691496 834444815 377034323 448841412 683315864 801990749 486424338 548089926 845216623 927787312 105335816 897414735 608202396 933276389 177318300 741893998 240355040 768735710 76292288 435758963 582595615 592971870 549822448 830939932 118602386 774739721 397640257 713105941 501801565 692965026 764820341 978208883 480101712 656695046 47617127 182752065 131143892 345284367 523148777 945580613 883931972 970813981 825914287 989427692 815369219 971602081 222617758 692638866 171545070 457747857 162335354 220743038 961766240 983199141 9730208 616381639 620934874 860242395 713988745 812083459 905591037 949063223 425070346 794740703 129059987 494818449 863635154 966122312 228860142 239959251 883800877 917105786 152601799 189247257 25700961 204829511 851120307 851481562 989507009 995774824 257998689 505591033 742324270 967102997 455417594 467978579 126363594 687822877 784996531 946790858 746431853 961983048 191569115 927338838 74007898 426016231 204624601 590776679 714269620 923997264 406864947 512208461 40277686 142396073 350249155 514996984 40546875 651966036 647507037 846076798 530880678 773187382 410736287 421283061 643669257 960796755 89472338 292494091 3066082 488079442 125272799 189986365 65769743 660269144 875708146 919669237 63050141 711064759 878660927 961335073 118998191 355071197 646637136 956426871 455546455 659722551 471440704 801497552 885004928 961838207 345429868 526149024 985660800 989483609 255671370 478276237 175454993 368187782 348901501 871385942 222395151 311206222 945696265 986438937 189206607 335911549 701163127 946499366 490544764 537254485 547454639 655748356 449584051 934997980 877093552 968423653 634306950 739954656 834550897 976919331 594545337 881157269 501351560 585100692 173882752 448923839 980552579 984651932 352296671 688841714 873208748 897521441 798116723 857243762 572990270 778278460 736110991 834846473 465118064 936443785 70666055 562306828 429731678 775712911 102123164 319039986 859615937 947290178 422791972 507090567 170734049 650187725 234766854 839520118 304580371 531865464 362594803 399223270 428442840 885601440 737035274 783855642 803353634 881945484 173657767 882858067 151415184 394701472 165979016 385717213 94563991 611759813 408776475 831742614 47918631 380141377 365908417 966518742 158697505 917716206 813137774 953350788 878746619 982326453 435079188 946444953 478551824 853955366 105274390 564633345 356229439 841732443 633407680 925691739 530075740 531115419 927733102 999932298 809447699 869170422 555251375 859589182 128535945 363961841 565845483 682732225 640722459 741651744 8797062 558030891 633821477 776376848 607666782 813389237 305110928 982658937 409509517 769931284 268334371 852723157 480104901 655407557 82307363 311178740 997791976 998689361 499049112 893804765 825680102 884958083 289583491 602915314 295794275 626887572 511941896 757010920 300886531 387452772 503961576 676708678 696196804 992119104 573757888 579316706 854730486 894380852 1872671 964401940 600338838 848721704 534272226 635549030 963455617 985882637 2521830 111903541 495711747 842907220 206915266 479109708 986803829 987850052 590096753 682352540 770716330 934222112 761232062 911408325 75529931 338518761 238927977 387349804 975485433 994782545 693487969 767485196 368391536 920657517 977520464 977798885 523800714 886147113 312912543 886259523 468810903 620345496 31918736 395673559 830994635 836656886 740846852 840290720 681239451 723909737 490366493 721691905 986364115 989475884 77591630 279660031 555874661 794833530 867008749 979267465 276250238 483748340 502645489 793193935 778822915 986670168 759596533 879770698 141218023 190161872 629753506 947637423 789152711 804124389 307228449 462256153 803259958 887080012 62542758 551492801 535408444 649938524 787446405 804717366 394258809 682268384 829137132 867677506 695763017 752614002 64876852 514208965 404520835 840791352 616500501 813311597 710804612 771162651 956701526 957883504 907186021 980934703 313032360 330661715 460980634 967181744 152041655 784437514 983319266 988448179 571589573 789588399 888928004 950345747 935984012 941915181 562855836 908966780 402799080 633438428 291212249 860513605 146438482 315947046 339615991 845687985 360901373 576509897 128657733 582210883 764052586 806389840 257420469 480223875 261952361 428336370 857178785 874024735 714101766 770896773 131492062 922257325 273282806 927957760 288628450 383908434 285262930 908875291 472585756 731785089 68513936 843981193 824965926 948613845 427149774 723289721 793697350 943932314 960855823 983576253 112404023 270657471 448206091 604695758 71626434 77849177 334501473 761630078 847528024 929458186 597611046 773038960 496712705 961070354 686976415 951929962 418772569 626994669 876467463 959829488 99920889 795953824 604363147 995889017 554824257 664532726 737529601 808312968 951039794 959022008 76342585 704698764 966473606 967572022 913950802 926409067 265564188 992999578 255476685 500636110 228092690 427490303 864158270 886620548 144927204 324058998 981149436 989515822 402810138 968793356 216335680 352720245 574698071 871310383 379193220 859557099 958081962 980880785 521353432 538343291 559929836 980816255 874294884 973721646 739059247 834636484 709236464 856773897 905332469 989338473 677253860 976610630 663168475 848768554 272117906 860585506 738179305 859372461 455237035 724765630 637384903 792277194 681127965 790206306 694468547 828964176 643073819 695115439 391686246 477782996 400286127 874774471 414379225 628875096 910601421 931841086 692053546 919204427 846267765 932961635 456084430 551839425 283122702 931269736 89878336 471898579 192944292 408672844 647117243 703039960 862366158 965517863 604433009 745638179 373782985 736050436 639226885 913877488 886064548 972769393 314896702 943282443 793843904 909885910 569379627 941495162 487871334 631771177 823847009 960620525 295903484 925335758 974147421 983728735 808898223 965876574 131127402 909271365 79363043 431779209 23340186 789248236 546859466 923411285 146713295 855008137 863557073 903892513 419264659 980483504 935326532 985558040 390712497 576568998 186231036 953124524 99025297 300868254 325102637 514032284 705263484 988862869 122951553 371594749 128604605 443267513 500216144 924971462 130943048 498470121 508713255 856141471 876006687 908361742 683687941 820740777 6365398 92491207 830791226 924309158 392688321 542456629 206712912 413932314 310362656 621055810 158667440 818433663 67200425 378729458 129165156 885616427 73657289 732779731 961281553 986365330 595345316 699173148 161508774 450071900 706867846 961097290 877702559 938220392 129321873 367517655 740201761 854146615 837772898 977670303 708304599 888644833 205865907 411684918 123832089 224065349 831617569 855516211 260495062 879476713 379884811 427618454 445087984 841470998 18907641 695533628 362624638 535969470 909052019 954603518 113934303 958293088 916909098 925284275 373319670 872804294 740356817 998790983 77595469 621630015 556572966 621470963 477667877 720114102 664697506 678356683 769093450 912736575 582590626 902641116 109019138 641477463 382722473 578016229 875952941 924538138 190669689 726555874 102683655 314916716 914896218 942757361 275523417 703745910 482464164 694019564 75233509 753031878 587486049 977041359 700007730 809607755 923443477 983759278 824427789 876885523 571071792 825318849 150425526 903297277 729806803 820610410 731248334 777748387 960518349 975538101 278816377 307194118 774966937 814383077 482012483 781834856 639791373 800237120 225713359 407523360 417232463 512957224 57866880 688731986 345892816 443468522 387410470 432666366 420243716 828964134 181719725 710434343 843046813 997557221 18328696 990127562 72390787 704480969 570583279 867497684 958094164 966932795 513065726 643675952 852586362 955887048 228275279 644300071 715618668 836090207 882270836 926603682 214030739 559378975 941928819 997049481 561810476 807707240 264566869 808907468 685105161 787023452 998527514 999164990 148894362 376080514 400042947 588189332 567145151 821707598 201809600 410337897 82227917 380173132 504306180 812295743 418976033 788490589 342336776 913792333 437147358 720720796 507254833 938817436 381588219 705990763 697068228 873498254 990240853 995261309 582163330 631538243 41503427 857429867 469549609 729939951 327993816 349682184 364333414 516491188 892648453 914587503 926198884 964295285 566151057 689084955 625928875 760923942 216802265 307930038 254466414 486544814 118822811 994136409 765853954 966911930 496324380 531742099 631777285 691515529 461461469 502889555 491521504 698807419 172517534 856991666 636686441 724712317 891904788 986300753 199689325 684306801 57179937 879351211 557885181 635935123 850667609 918959958 454246504 949020332 622378304 714758600 404751231 416129073 355504563 808527675 79443823 367925897 548930620 746295390 383014730 752773640 30435394 256343493 837296196 985719962 546153686 818531032 958485077 985738273 653490444 862753956 951217684 977483294 896038260 960568697 577256970 742111836 928968019 959455326 324901285 422625512 221537646 487705199 878094616 961898683 904493405 995255734 764523405 798612303 555484866 730613485 617861198 727247761 333035499 837807512 66382231 112287616 493601181 507966403 60591267 423354510 525987602 718391783 985257837 988839810 24636145 507161494 990802771 993876354 3015938 139830958 968469372 980253620 127434336 706337645 792354075 798374181 814299657 824537713 446479339 611039477 297120006 753354409 544276755 781762100 712738937 855465377 681101750 802700936 998893999 999556658 925861592 950020758 48094933 380794586 14452780 917151086 95178404 424488571 703853562 979273710 199599229 561379492 334499786 392916189 853867522 888848854 351724361 487461595 338317879 344906756 967332254 988321593 222492663 259760917 475599753 848767210 377198700 908774478 93794265 682103387 346584778 524667940 690982422 882493068 198787185 226560135 304023981 911261307 144724780 549541529 806349386 961271440 164360864 642677126 489046318 678422024 190801710 689198116 227060281 823080699 573114298 907658390 524106229 922773673 601720455 874510782 825224989 940462823 527066784 813646781 892039373 966568101 780726398 888928996 372732231 519615263 572659363 858939203 877558621 911823559 297870363 728878720 405911589 933777999 15763436 649810151 253342489 413591487 115011719 471115984 358134712 606620225 174900978 549094875 982656398 993900208 603214697 648002226 90824989 204590927 303372482 638570464 477155321 755769407 790588861 977075087 946743634 974767520 958455837 976117089 787191430 819422131 130926922 669877113 766373426 854254121 785712794 907880494 410299667 801253728 756617909 991488553 532947858 878335253 353241056 473977249 108001499 701065306 697583526 742408137 531667447 602278898 862625839 938180337 851417420 912370845 861080107 940401610 614396412 876044167 618330804 907354041 623059479 917345516 728680498 879615080 275193167 658115723 884225087 979949829 145627671 534671499 797840759 912105635 539418667 766061850 15681644 865241357 603067082 815752126 154516641 601685019 327213313 414952418 557274150 913386314 658649897 816633878 461169530 968638348 902679003 956542702 203514372 460783676 849372989 969406364 16748125 510989912 674531954 958126312 754269798 949069229 161437025 182783370 14937011 637983864 607870146 745021710 937423362 998481519 874397086 924201653 388816954 688869654 16374149 733412693 40041022 344969950 369055169 611310531 17307192 742297791 73428929 710812441 628335453 957962113 648425055 915657408 585144670 817292474 803903597 883548134 591628346 729607478 298745173 423810574 647452838 795270675 3785368 798257329 680549850 933213574 941582049 953577011 60309413 530340006 92655345 417534569 273210377 392869884 507311487 871513063 464834320 885635699 9873409 653535291 666222974 699684641 394274855 563283551 746027692 758022780 304363463 715187423 797638401 867560185 820392328 833367536 516061464 973372099 314313185 973484703 932308347 963506061 893520897 998833527 186862415 898997308 866785306 884223840 80237655 562294171 553141613 667694150 746562879 750084747 470419847 541709025 552983836 595152709 647570942 762575965 347891641 558482477 161162618 803051509 426765096 604760378 805379616 864823285 42951985 873855057 970820685 983168776 307871375 795542226 891195485 993189024 721375532 904896211 51164696 817641526 576112845 649139038 117123627 729179490 439804205 793319582 412489624 909793617 813433212 824137702 114042219 629474742 243985171 515637145 994912751 998123728 609411470 610393184 125689095 586037640 973957379 982745479 236254095 819545598 213216571 498760762 759787308 861847335 566362054 966771280 845349151 868175207 890997762 912758696 611199273 616345649 369181331 414575121 195066216 317663859 916436890 928398684 988233893 994778727 223311776 446020112 936663611 988376990 875237469 925083868 637819871 703012017 805793034 929431464 961543473 971838996 821200445 992479595 625847631 641935583 381756090 495438091 812531006 992379323 680701589 854313180 906345065 924286211 123741932 545099114 792185110 963944355 785313849 954302485 3487736 938186133 775908272 803668905 860590030 864753379 373298082 768564293 997899487 998403129 332406344 905629062 535852802 868651059 200302068 443772062 460860805 766196173 624741365 771186107 422701027 777105241 492044064 734682201 457615541 968656147 375130541 396866844 468188108 936091105 251588290 410924503 414839037 479302822 197925840 382836054 855201448 882886708 804771254 813292300 296686608 897669157 896187507 908865338 51028292 926753961 310596434 436800579 918316048 939542807 375482574 706476106 842208429 986360180 54713636 728019659 151575996 781612997 404915156 752070392 383816820 440186238 601837972 789547917 792274809 932283735 859705124 988053684 909144017 956543359 617693151 846935052 501886644 710750554 991153621 999603594 186047193 492400651 478848875 815312266 540951204 649844141 743521676 767471095 240527411 915274022 709166639 955365565 296899941 389305697 964123835 965218309 43776847 878353514 883105480 901679869 442176524 854751962 707969235 929219839 764819014 851196402 395139118 820389946 555892889 881620272 955112300 982284608 504804952 693891146 679636217 922006964 979210725 988245161 86453277 432810306 733081430 783118782 458499337 615773208 539901740 744726698 323495277 592278189 391280219 538553335 648089314 951490429 936827804 986844292 589155783 929537671 711913506 918069719 18590894 40738183 919610175 946315319 470520621 600073507 451005245 648282621 761946580 890055360 562113692 778996379 806548300 973317836 219617445 607896855 874330848 878678110 741488028 929291033 221751878 481938966 331854508 671785850 99685916 929684356 96042489 550188365 888494771 949670216 933803040 999651986 666067624 698860607 815809941 845596466 128852640 952603685 174347629 715267652 114682421 888369043 348142249 360674869 282460696 498045417 620480998 839984809 363404353 486341570 91885239 864684159 520077250 742699361 100763754 388899949 826835690 955965025 967620200 979657512 215079309 808623970 798530262 842551842 687723945 719765237 83579470 828535806 593157174 667947702 943085431 989245525 594879971 668027963 110699657 765042423 544445470 890046133 565470412 569338786 616987829 681443697 948517981 952883560 473001952 737857598 499408123 549690270 997350142 999403410 623134324 906580995 428918626 746958528 159086674 440451501 601797420 702306894 39064847 263944727 150283101 868843160 498748587 865780258 498876314 729933761 414302031 841298031 545853194 785888362 451115576 673475673 854290837 913382871 506111320 640530074 16641748 234239996 181643310 618311667 261773048 521954516 857817167 982471845 522122621 834471316 929190225 953444229 204070306 893835567 345127924 986855226 380458003 826612163 877393347 933333994 715829669 888437653 779440099 804835947 110749227 853269477 827815920 989169601 878815256 907235377 566839980 775081758 306031526 830882260 329731646 581207661 460061493 480979625 116523786 990018054 837458713 940625088 830562939 999248055 415600346 712852599 201825366 799140833 265486751 714142600 305953022 921910031 63342961 376166451 898778254 907746128 895834322 934892936 603438854 840707780 911420231 955451145 78319418 399418210 730213313 984795166 517168988 573420262 837348753 868364698 805602361 839283774 77181672 920431476 78368075 448011633 998363272 999641395 114416436 182279051 82052471 482099577 343629649 681167283 758497866 850222410 340909418 953083517 154874348 875632138 737240794 893381979 682833061 825524511 542586367 643317078 974876920 994222304 236268869 661385439 515542384 650999424 433991981 801975972 559018079 740703047 489992871 785520784 262341675 569200873 142187631 648312190 150740559 928003362 170089493 999142997 843709446 970478085 510310259 958189903 154363278 263299468 285268960 502340062 216363141 990577282 155181325 848172023 779455458 856496942 65638275 503841693 20214013 173791714 966719541 977599241 978108246 991240514 978092009 988217239 139008076 298666680 447487528 847921719 83882594 942003183 897912310 924293830 896197211 948683100 996533984 998653650 540426935 566690040 984263152 995883277 229713499 842816617 257397932 521430099 509313716 693463623 592062768 917969983 864508142 919414056 956957221 971200809 935776022 993433909 583900804 690082925 767732324 826217325 27451289 55334148 305470421 818260776 334088359 881820144 800189346 942872248 305445811 762962119 97976196 376353658 425765920 859079822 540445819 720195131 383333268 533318077 54750417 327917677 408362060 856005932 232411893 423148095 263252504 678152323 247310974 843884720 471812980 732537775 667272585 711947944 521373909 788163734 202274731 972820406 53758172 786585576 610535911 899063103 668350374 949273192 217631820 976663137 596406440 628525826 856774827 899127943 288946606 550064621 665680887 690455562 521333200 568457270 660171857 874108776 384653891 599957575 74905205 97914003 33384111 560026091 67706088 245600238 264475794 406039102 475298252 778293445 588117248 647942505 68859060 90400180 907176620 942542170 190906451 888398876 552133802 849574078 675598210 728844463 713194218 802218972 899313965 927993098 855834322 860714901 683736430 907682611 900894597 966303427 232720436 577125376 482349885 743308244 593907750 878610339 221015858 263934849 132451840 270725834 761723151 944149305 459726296 727482378 577456672 735821783 978546566 982092166 174701950 521546884 983394553 997554243 244654441 372888245 979763178 981590244 263166951 663019520 52086037 302247370 659935904 835181317 563251833 745322996 120776064 614475558 182645487 729238262 174709141 256088672 357387107 800965677 433705321 538293112 209429880 825007955 202497658 906346622 972398547 993336529 514628768 637969736 978978554 996833691 25987400 175332136 605216699 622286659 768859720 823387243 12621667 703000655 308830447 888660933 305896170 534922419 253130983 944869396 489956593 766789554 520811436 577093746 22801578 168965096 145141391 573915050 961570085 997677589 353544488 647631680 835084110 911730034 551851360 741657403 108678639 685909232 581699585 760534983 163131212 619841566 242202596 267235442 509505898 617476054 18356465 571035384 603249061 833160730 370056613 814722083 352184373 619966367 879316971 961235266 968021121 973345992 988155375 999596297 743267286 965340905 601894158 792873521 151849305 268130745 581460250 913353121 942133534 970182461 593530190 909965400 47018039 591651115 10861583 412502730 958610349 966480937 313993118 505300771 28736389 100567303 770825660 831329827 296820079 536259766 364004861 750828618 343716294 568935133 220352526 857991532 448814529 572624827 551641426 715966197 453322028 842591840 177931532 365833113 179896588 415221880 888708592 911199531 215561733 974754160 182441768 467740676 210061522 875170379 851697446 901544263 602234807 970670665 774765830 841407018 684719249 747240297 968899630 998040381 620646501 791877498 432070816 573964324 720079327 977948304 180957305 913081024 892028407 968345964 689006563 792982378 908516252 949813651 891449736 956401598 770658985 774132400 453749494 526428106 771322354 856326564 623033809 832413349 740269543 939965552 299375141 902960108 554030135 934457183 650540838 822830163 247179010 417453345 388762372 644063568 910746427 963926493 374238499 472026584 971075566 994241775 840912201 916553362 633446023 687258799 999137572 999766360 180868050 749725313 75700727 162355697 92845101 801322713 974024606 980371364 473225170 924804969 186932096 259857886 764744427 921738352 382739661 822590308 862315956 998489017 876545391 996578265 219045567 802123394 791408721 958529064 935673091 954556091 502032409 924457503 707940401 797620337 924515475 967802804 708890120 913927485 520214024 603885804 715428167 923817476 459081183 477180733 691742621 968846275 43015230 72731983 295096661 771040066 122308931 563628884 670738298 997575913 981852957 993813198 741411112 957823110 653674293 811508009 364698308 430278378 167033015 975659383 980165719 997096895 625479732 907365224 852615513 891206326 365097867 671862329 387926791 634744577 636368020 883805912 137425594 155770525 477563468 716134863 707985445 979371991 144134853 615160002 845243173 923523896 453129687 661134650 952847180 955124964 929782590 950176779 893199948 933982852 806851537 880036883 630069354 662643467 182075173 555454817 259972744 970810109 262942413 567090109 727915733 959137138 183686268 696908236 956758250 973064067 881729494 886233308 293523111 462510627 12364618 457016042 501580916 697114330 334674309 830471007 221545553 743766708 227069962 778123150 416143844 794004541 963418941 993183576 961645284 971871003 24884983 330841744 102465610 772615597 262542639 517736323 980084663 980741056 551623160 938650344 683999954 940825558 757393664 837591210 404426286 948594551 297826540 521112414 14063023 839574801 88908378 422661439 127344213 769601815 129495962 249485160 170849063 324323989 514508424 897441783 551364571 810555125 484588674 856117328 605504484 913124132 151950765 342798584 652865807 857332491 935172341 969825203 839978818 993127961 144315116 514930431 993127283 994066934 58689267 631830249 153624314 763688251 520621826 907801332 689105006 936571533 996700258 997376423 940555618 983896393 885430071 937228575 757497690 813045710 413663270 446759575 341018411 657961352 604530802 950969453 192516355 249112941 73332425 550001727 672517143 797624062 564487020 672883965 248439276 481353607 743825216 916252462 690067 822568638 982025177 996349030 222220727 832471874 558281969 712464881 741177617 808502302 677568213 890567021 939741022 996609386 11028037 565427893 939942650 966219010 15646580 810571543 337967067 704749022 54432642 545918695 652700453 820504510 669511918 895635932 204185687 402519023 456699398 790746616 690078617 734400592 58357395 250694918 822556825 834500706 827806752 981568410 709137150 759532005 745129462 993172953 720643032 951726260 74066556 441957544 449181505 548627044 786783548 814227006 228183091 774456240 938819153 964662921 60061455 871402447 481245208 569289292 110020599 259576966 511202850 958000310 125913809 922452943 176332304 856261789 5523852 978346209 580473469 814794675 355157228 821776777 173384785 462046104 797877520 957921359 923473096 960850696 482132632 826125600 214967445 777425271 640299918 693207181 206233381 918787044 432802834 538429384 773189078 892518795 984322166 996097263 121197999 568729457 794257268 824568531 427768096 837764836 321204700 947816663 242163852 726561609 202664475 848627600 76284514 513625005 886803823 942679340 656225368 703060457 144755454 440935922 52265300 957056356 641809763 796186821 403620029 874060593 83583711 518966614 474513898 876588070 844583560 861871765 111967391 234016544 746577086 841711962 45751285 736483438 109586173 889280094 726973665 847236582 577217703 865562146 447731170 735318907 535998752 687897477 795000630 801805345 179833727 311021150 1732460 999064744 288955821 505206351 545996541 880184900 234663732 886962285 767638895 856949946 595578550 751963457 513910768 575740802 105038173 621545466 840740411 920183359 314173221 423486426 464720645 828350556 816719059 903182511 20645598 389962209 773112610 947473102 797512953 833077628 236555674 572172786 589893428 824442020 341066789 747509808 910664832 961183219 197977095 659013863 708247230 831442292 91750394 473514403 396730260 765397219 295553253 382738910 882455490 999565481 12783660 73968784 818402845 919048857 839044679 969621466 818899940 847693087 708010311 815801298 53514336 262975093 664624971 972127691 340400385 892300952 151406535 833868307 46338735 886387254 218023615 778648602 948443242 981286945 322925350 701383595 801267372 906449681 602803263 908307928 182454290 830340269 810755182 956356503 846612699 887915724 657528260 668970011 840671512 875217895 306332285 886644964 892896307 938852588 950615329 954835938 664493661 763008955 187155834 597236256 250228628 647255230 920632028 946833611 181625050 832047698 563931275 744282446 454652420 825846591 939240123 986974819 232579201 429761118 738489072 774692717 137101085 423162171 778958653 891685266 368221547 979676747 97952229 243191000 610526365 857876776 799850168 994781237 408086722 917399646 584972886 825965624 104301610 241816354 996736038 998035149 63456625 575279296 340581973 956261822 710755935 998791993 981218677 994612943 381675729 971530197 721114677 904120683 410828591 411915884 538499838 641682104 437606124 541135337 621085686 660213224 615589581 894461913 796921397 943882321 263568913 634678605 769936239 837136904 366248676 701708426 300716555 775199200 890740949 926081449 808774744 846551389 549587137 907875821 77106254 987441256 762214069 908205350 98153026 373581563 600229916 769603576 136023751 379174286 985397647 998257028 527996880 777982369 758118992 985864248 6576648 359749412 914048165 960605124 382317321 549337713 310555863 750169387 852281581 893871655 479349533 600195077 778612504 919659667 778236287 782071524 47527267 421275167 861520763 932306389 738936661 820484452 6117977 102166743 89417918 878539791 458650152 795153602 256402806 766618618 160586984 488542494 958304371 972487030 335596723 431189731 187204659 308805790 241683709 677872639 858647943 931759332 105979534 765899089 523164746 537035083 936762370 993342694 822699451 832341359 79873807 467442629 243640864 705438562 627003177 809910485 276299775 699693200 669787205 943516525 401904540 783820933 712887325 807868244 271787480 554431717 551676031 563651880 192065247 802852886 193449551 585258437 187478155 224290234 856163709 920195586 985048960 996044272 596725165 721158858 595722965 645373658 658932217 970279369 435319399 754790210 418643088 557407361 270464571 571301521 431337673 993986768 157300125 379848396 351327165 781657058 473311358 708892873 327986401 963800678 150397104 687695415 471534022 472208901 544198659 719266226 883945596 961136861 889542116 909054335 258309113 686249046 341080942 656625271 702312819 989840831 552378447 938562968 147642887 240320794 743909729 749678383 928397753 985238166 84474141 108014965 474133594 660060464 639169545 812863521 273374249 774469474 753191369 961968986 499225562 720806802 65186134 701057327 947733166 982045738 76518993 790525085 109768206 591472128 238626138 481029211 223002335 844127975 743517945 814214611 324238408 854237955 603342683 975139507 674971388 762263136 801143447 961758487 590995599 897380162 972844681 997008694 693063703 848112432 414546014 956666476 971451481 977846108 600232495 663642806 497349832 776435602 580864747 832188197 485375690 745597895 988897302 997080859 490911820 512466923 166561594 577023996 460254617 600355928 577978090 942762601 618972839 829515684 643179484 671762921 910121175 941701465 179098580 416053117 759283901 997250208 788797950 885290433 970088422 978958882 869846855 966682467 77667268 898245978 635983618 755418581 270243063 774641593 140904411 662968048 429288501 560237941 872533405 879163745 793894888 944147419 854350547 951373224 909779528 924107077 85661688 521390509 817900447 992837587 632803156 766497456 327251038 808528672 406861524 773362131 753140190 841935593 902870994 997331307 765998422 820586784 932688357 975604089 119691500 862393738 605069033 681367948 397444669 491015140 387519911 476758855 144206046 578234925 422718807 971587956 71977269 453648074 879570753 925774350 821453131 863792459 722752529 751197278 141506964 663705712 111450640 618900842 212377742 415774723 218819960 233379268 364468568 976822946 647081079 894175644 254509270 310006631 330155042 606878258 266186556 692161631 375270757 996418048 676626480 979186320 558125135 673013561 562083621 716842061 965645536 982626095 768177298 775321579 685856345 981948045 665011864 672446634 10594970 411909134 808660737 925821718 234338856 604970380 802082807 900109074 564932748 627894255 295854454 771840441 985788273 989639144 377377345 804620081 209256149 895805325 46815268 914954257 341784565 588017919 463781948 481663142 299081139 321879113 479209938 669709939 931386256 998718437 875240197 914822439 306196060 962498355 470828018 768292156 954093090 981599207 673804305 996161481 827587111 835988852 709648467 747200652 721916409 911549226 972001349 996191607 515870967 594546201 325076103 657657297 209174500 510883387 327705511 690398027 7115151 358037279 479356655 933469379 319631496 945856159 435574343 641733799 863706583 992483222 277932975 426409891 588753567 921249684 225844522 488848042 800406453 907619223 393916318 767431591 759111730 912844747 457759922 735412137 656416426 814309742 639944720 681973447 959165506 973159769 933926172 988756073 834914035 882886558 692480138 713428552 22773476 909317493 142815549 706649087 408010896 530192093 325873296 857505412 828254578 836989286 729919587 986596035 147014606 805154869 717740722 981507313 521824819 983106190 83961149 890984370 363444876 544509089 483732720 563601128 403540230 505841202 477474830 664959231 62425484 70834085 102307154 777410462 145304241 227578485 70143814 580393494 555980482 613540957 179502614 582704849 25926660 402510554 329107685 726811584 914677851 983736150 310283312 608140044 868933186 923753888 732013125 776453581 461332127 849816969 107764744 845553599 520722526 949136696 260664243 807000445 212362566 834233907 639689358 746710891 435774612 853541048 857055772 876884606 3170397 642392355 509781874 978911356 688069234 721905228 103166739 306681887 585259258 615241372 544761406 808394430 201322205 543586279 163578872 893551424 902856940 940981020 55924231 919000469 380791330 578877481 555628276 889479346 173642880 422419234 957421138 971561180 776552237 811005888 485502745 860567729 102287174 609752322 546839982 807090050 486356200 622754021 682288095 823300417 608470187 966636714 865340034 957464697 679911840 785272017 123541003 171041779 108080590 720317697 158471721 492276318 616663941 822036062 673429994 703552983 967072749 971514499 544908444 827524144 317031606 390448243 303171272 412899906 962969420 997339992 947683265 992888906 260419217 733705102 505815378 916663722 353080492 943339756 776117239 854422064 525982322 639335003 549107021 745159186 926524879 943860336 426676684 643664361 566660517 734271769 111485124 273326890 898228157 908482680 573167393 881585920 613441215 990898691 424861736 560430564 740482790 911538415 66166397 361197816 818673387 907000847 249060807 651483969 947920894 959364825 245948714 265952938 408881087 730796462 747335988 811068242 386933415 487687632 753176290 956233562 463980620 889593414 696711317 861247567 672729048 952858961 630290400 691057775 717297629 945547113 981734242 996986915 455988011 854014674 174706565 626736319 237440172 318783614 19826719 511354520 898002757 945297885 548306535 805311355 170844737 546872181 590472984 793817876 499325176 662214101 552304284 891351066 831718131 925341151 248763280 331114076 684374281 854853599 948747887 973909707 81928544 393017195 562915658 792000484 275893994 504509783 81454071 255430522 677619850 946562469 515866494 667798289 400068892 413015041 633177728 972332085 889897345 925478677 349488321 632787235 907315463 997528313 992021333 998084386 500540819 902278004 411111206 525965797 527400662 813757080 997458199 999309696 367852496 653801265 731060316 920349144 670781344 720806860 839067537 994588319 308953958 530412345 657512932 850999646 332770616 886416452 476281803 497533659 733886214 770869848 958953432 989110852 880708863 887518499 159978256 266433615 65095635 93160954 470893101 905433783 592132487 856389095 634488017 831906229 407033006 409664024 264694311 929016191 220198445 598904600 590475493 666621548 295374616 660894580 109038006 300865702 774405241 797466438 922856778 957043323 981350265 993383712 658490449 979972347 401297111 449000692 806070734 872741056 909836510 917080768 198457085 486268768 777656083 927114770 657453428 987265874 690151486 792723648 948793582 970680706 704859161 959393894 407016550 500856241 581702000 891720779 824107504 989632959 145022629 361706688 470766986 870927490 843461295 880994783 364355834 489570188 533038066 672954515 854194469 899277941 458194178 579745816 387319151 728722398 703431659 981369124 803022907 897566838 193634542 656132136 191492483 510886344 497264100 695416095 997122816 997161629 519630068 833468178 193117556 665921980 826977043 877937331 535874805 582066379 123560760 352569498 331193963 434462641 870707047 956620570 179627419 941068508 208111515 620719585 912495065 970749640 297600969 817263051 483923441 954970037 252254393 743629054 750852524 839565899 551122013 644580736 844996313 900394103 318608621 599399458 641155524 823527346 516267285 606060983 723236369 808570556 104215774 180978447 875212751 909643662 638004452 674623126 523978876 664933753 917237060 969150434 949939707 968715247 306025333 966596781 135257229 627036320 631912320 940684679 27900442 756817014 160688843 831460161 185437739 727362632 100900465 513834353 948746636 968662301 280495766 385130693 746131049 842803395 420839024 832607690 834028467 990775102 457271167 876868275 377194551 764951550 156428222 504907746 440531706 949439609 20436386 823285094 177103312 989755300 773186049 907860782 168829409 444210147 401880660 840054780 562287086 625154087 370095309 786310923 671508605 857734300 891726767 913391665 930467062 995948004 418851022 502854014 524794865 719754954 740585081 936499870 440460847 754345687 599172180 792482637 631767220 732481373 55389906 555048051 738629350 768786527 360910260 497197620 417032533 754628149 663263202 777267857 759123376 958505892 6867113 904438440 426372288 455521297 313051522 651977904 993694180 999556008 276397211 455009278 180662583 686707727 782033260 846271903 83331275 585127729 603394197 738081207 241318681 979973093 524731463 748890271 660568039 665766956 741398493 932651613 88967117 299792095 367054424 924826288 255012230 579093225 206982608 904563263 766965639 905036735 123604098 548433482 981441932 996320320 278508814 873220373 703329180 871554099 10849475 123152064 583882220 968235266 347918994 715713792 878369557 920446148 406553716 512649127 309349766 610193607 786442997 904800056 754504522 812106118 561099420 797262148 669529121 740544242 414417575 781154297 588100070 829729391 392999565 661540430 51543468 112232610 138645661 979236153 536143744 952217855 412213922 983280472 329255968 833205374 775951047 989910655 272676436 625591666 196399018 817447196 988963296 994593786 749626093 901939083 231797873 326120181 327572839 438994884 38384790 50935501 584798596 980953268 26092020 440204526 561563565 801366395 350712103 466630201 439983342 716988607 13143243 627754914 455762679 643504454 3512490 991267737 673511131 863035730 461439371 847956211 579967105 645317679 688550646 910998333 470569476 504497391 954613538 987358368 269075067 810596978 940123195 984597888 278184327 864676317 93042577 428544047 899725467 914917323 416617508 861430175 990038834 998902628 332067524 405694851 859541497 947206754 192609454 892380047 525947604 784637033 691384552 776906375 116500693 528245622 846314530 897163710 135622614 406781422 103527045 789166736 958549371 985574562 283533747 685934354 89243973 797833186 68767429 154607949 684442216 721474159 831222216 968380549 269936177 419559382 701673816 952685001 891085521 933129946 69025118 650303066 29194584 500348018 464453071 937309137 16872584 377019351 525756741 742989041 238850913 282769836 889649678 913808144 974082678 975789124 428643388 748386139 716738961 724314061 291964263 691027618 809318784 878636706 789857868 992603116 302100100 690085339 196982613 799512021 693075458 862894674 384635628 632021089 538523308 775255118 966280671 972274406 286120550 873906915 575009797 798179043 134417727 554346410 484167087 597923931 698724847 788897455 110806853 728834139 877603642 877953641 388872432 687114666 681799248 848853571 794188338 801814302 5708926 251097800 715292951 746130346 699087012 959468522 445569197 725694092 56353628 888465062 339452776 504529085 229888425 750599948 956469218 998709074 653208573 948773110 25894450 940933125 142221989 285308758 288247356 382959149 667207318 976165027 556578598 791166021 387400022 436559023 562731775 982580528 916822741 950602989 796924745 811851384 979193557 985875112 192655557 523833204 64629283 254656456 438941648 523081108 191790456 873102857 978384322 987121837 607118610 704272682 301040004 991314262 870309641 978831354 374723267 752483085 735972703 840351376 691376423 753062412 138490119 690959701 908823721 928472095 962905233 982292771 684651745 730158359 982196182 996224849 491551407 911061559 647813711 731754643 240183541 409899199 364366848 809782352 39028334 175661069 181285107 879429007 360519311 538147786 495593200 546002188 709670616 954521729 950321148 994199596 957358920 964633292 108373152 133394479 100103562 478886160 297770601 382861767 395171757 682147508 616650095 904561768 901124758 905724498 518802513 900625762 32838002 311743734 208519037 272187902 511844883 970159498 210014383 326839674 402293577 984244118 925816490 998088554 389023446 810156068 531544194 789575310 370543772 780820880 358364295 937989845 155161566 904952379 253492795 883771067 588584216 799083021 304334000 811056156 171366492 507910785 471820440 774798006 315249 754336889 328821135 427596086 733787558 884639944 379658041 964637207 397825832 848562029 678985875 848908981 225902389 945697124 682721423 977087207 422571054 573851082 672706539 773221646 348476005 623881933 435794772 852059588 907910633 932175812 67635624 933299308 884500828 959566871 920046219 986221557 100423842 880616494 832307080 925304855 811481160 903809419 250192606 677430811 435533716 973120226 278128339 532225066 43916645 837827109 816411677 927707883 643611481 922948399 316262385 616284800 771659797 930866347 299932559 417914930 591749103 599919174 352685661 548276445 266121444 478170964 210528058 645455385 275164822 288678328 337771620 937356110 377805831 496277277 553767493 565997156 813575285 934403672 158921671 886624311 855460383 965605885 543122449 831304801 986775711 987511788 345231020 472186231 836006218 957177043 965016279 976157857 646856459 661054682 772209326 994268043 887290926 933418695 334878163 525982250 32906472 263116692 101112085 312171321 64430729 616806328 477097664 868572326 717515047 863943721 23847616 639680297 505153733 632905730 31762058 122755588 376388936 536080493 570929612 799888732 207768394 494021029 599576547 861881355 507319530 530560168 615351523 784502595 860540047 930832302 596260511 806898803 132538481 416789593 967870466 978165470 450151368 845918585 441225987 614230557 760896872 860029300 743758879 903097048 988064422 992198462 596868379 878145744 862949563 930181653 245610770 928676962 856520298 856913997 510590461 820163561 681406896 692883290 298735004 584510596 698488451 935550560 238221512 263030958 522869717 795258094 716339787 720940572 440389937 671188694 543515026 642325557 11556424 622444284 532159176 578405113 127864021 552581157 616315972 765391657 511047600 526649836 905721765 991767035 621005235 798271123 972719860 991217801 720977358 722376044 235642411 302163079 368599411 626725872 816174303 900322108 101150420 760515538 240821532 565670941 444971000 472383090 630383607 916333191 35843794 846666899 743293323 877358197 283680078 698844586 86642406 600756686 797881677 867347275 458560837 973609763 480301904 955468072 961155490 987431193 196223778 416973896 366795801 783536097 134802065 293958687 542229377 591650456 291549634 980226121 422331109 839751632 964783175 967194663 860964180 978027294 387641130 399406114 609374889 830557128 71011783 318146789 183148929 763416567 498753447 581501083 331296011 686390251 698688185 837103995 870979072 912445439 496135630 561609793 607652709 774294076 200905443 892905050 533129554 807557465 682054538 720533291 761932363 857215153 585065717 975344819 709403644 970387409 733517489 733609445 53595929 316239673 126084394 658695159 258526815 407852653 746646864 854984693 515198277 737172393 793130368 924277502 272522911 341045308 135488991 615892299 295417121 377638510 242654995 558322654 264198534 832825955 245346116 961772273 67227117 524370145 463841445 610259309 984145148 987516545 109219759 871717648 27258687 355219059 594383709 861024295 387254648 897644142 317290221 713200020 98430786 789895732 568257222 819941965 512200152 845591730 3060772 655439744 268678908 768018608 418488647 867360464 92786026 686424285 565209313 607941422 153393304 240769790 471050518 962013877 576084934 889042604 518645381 750500958 526967243 652598407 303646457 496758562 739473901 881249813 716328709 887326227 980296020 997341680 541914295 888445629 394796928 493713145 717012308 989172238 681460181 724206983 180275337 424010346 689890101 716533976 93677416 772277681 252137581 601599497 423252381 913083693 472131623 902616458 331899074 664686727 156711934 916544692 797375176 813271360 119359586 282122723 884693895 967641436 324454876 358806029 910177659 952835383 874464321 978183441 522965031 726869698 688690556 832853188 99221258 681736905 205274276 964492441 811980668 858901638 583339864 707087444 886591191 972375912 45589643 940921912 541292466 663272990 356262994 520178357 132660695 754199556 85484834 515345103 390043563 960239107 14080350 86719033 509374277 575172489 626938234 628968805 558433245 689917351 502158602 597547467 40729096 836572306 566801754 973401724 675251586 980214568 696667659 731938628 258919798 929633128 520769567 903735692 336915250 587892895 589614649 938869668 331646645 389754278 357470351 987853039 730366861 875746193 842197255 888466426 488541630 736991451 643898380 800767037 744280737 854425888 4831884 801323864 408486419 627665619 231429875 904092889 351807682 508329032 738387561 820212106 246846115 916966472 208303424 657609262 164494084 680322597 300190479 835001429 852981848 905585300 23796514 894488520 79626433 444239348 75330540 516911828 253923826 507179569 958157857 989398748 905747281 930136919 468379700 739308810 84425169 150484593 410365074 998654972 699361957 907759197 554891492 693524043 396753073 499651427 758287713 988697742 406748537 709280199 979780384 994957764 695081246 818890698 309188469 670742971 781139767 848269750 912499799 927739579 445186313 607950741 976907039 988900313 16486196 53318772 113829656 889214303 654144067 814723181 368488081 683394630 396058046 596783524 918388475 951896256 472089649 822970858 171442484 179356339 515625474 883842982 167801689 223421073 937167083 995335435 872406625 953213966 632191131 788474282 947907960 955889664 498703644 511774491 876004208 980972180 488140239 795649192 262469225 891185586 383007032 972478564 990872565 992462931 304431450 477049203 699421873 810059838 841774157 912799253 10908248 28115046 997448072 998326646 195789235 460538052 288105906 944288866 507705212 604072852 68533966 223172077 258957528 735390268 763349340 811380990 740569158 806581290 160888067 229554664 279773157 571313265 732550606 861216296 937538364 960970407 231203994 657051608 480841226 661363102 598478489 955981247 862983780 970359474 313308814 605126176 968452188 994588678 742041440 838019822 203650588 279145468 551550397 958228000 411128530 981328279 435845812 853088685 365233930 807402135 798237227 914428715 229995209 734750707 121706223 928608440 138918985 895825829 203093659 625823204 914434970 928789157 973512511 979063912 70558307 214098305 261276367 803740756 182212020 245143246 903356500 941450386 61228209 967019963 589607471 749500015 707517461 748235598 605743964 836135732 37209906 470767892 581626646 741583556 326604010 582657488 976175041 982146403 524730251 929268359 319893728 530027808 748129861 799837679 127729431 769898035 163561134 667756575 279350213 288617123 16616024 399972895 186437895 654895463 446858864 844289387 345250203 642139701 431790538 466293322 993660600 995656708 241161030 313721664 347663337 521045843 351175676 765093238 49141842 335622746 436827065 602910639 558222476 870912276 257125604 743697404 862254998 867569687 56321825 79344005 827567644 958213267 765523309 919878796 105015881 290489583 4260366 168679420 714167632 910138893 679766571 794379760 794341802 992691261 737548377 997388987 668504714 973505563 145811081 805989380 295449159 620206772 419417690 814788588 136014322 396048603 882106899 958526030 65395419 369321753 985562286 986411263 653083408 723653994 849129635 942930505 773225852 840910931 585886951 994477711 209421897 808617288 162642949 475963376 959530168 993776871 672018230 769745651 514260004 848023841 508655778 606088968 767052289 989734931 648337907 757056466 703269576 883537926 407051832 767802699 325049521 638706808 929001770 981247540 517256651 603375815 765633443 856076327 684835330 759607411 994354373 996510467 666726299 913713569 182357195 359116266 845645838 966000127 971327554 977858476 413368778 985384024 317454369 449796701 230764802 683160202 294064241 383202532 717944741 916295211 130376208 467998402 695322662 920773384 281481957 571160478 189022235 984363172 997354205 998930344 158405090 417867655 21383185 299666118 367594489 923860553 593242653 810353144 589692551 836236433 919665612 942151011 311580890 355737795 133981026 457355078 687654603 972871417 831353449 984669232 646516009 757571843 41420644 706059804 88545437 626967243 743374246 956060451 767070957 958806540 310120626 852298926 154510566 921315713 595035349 865636678 453840104 696680369 929136801 988855710 711583637 823356319 298080052 838316257 406167559 952762879 466983126 616134143 576511627 925335375 331456382 695746231 419719665 449931577 25545859 957623385 457064932 828585448 386981690 789911101 962614597 999681045 968610038 984607465 352633081 473164933 758132266 781071794 217260515 435740642 581192273 910565412 177286070 384865994 580534594 627070361 251694494 761846278 301844861 406824850 385730774 441397544 574139318 823758065 904519494 921241734 515724524 598192839 926326644 950595455 32316254 767246117 853945398 886182875 997836542 997897598 202989336 993128409 62778710 296886589 828966241 851677764 926416478 932978634 117878853 201666223 459936180 571944315 756292258 851871482 340917769 412986884 659374586 802237712 163976168 406744184 595703588 669901043 719331832 976271426 94292798 567402398 712502484 769193929 775351836 965753303 806935793 839654738 742439026 913020696 82676233 280117201 42734532 387704348 118773334 431138277 234935899 435072319 66888321 704221800 918440487 933918418 90524942 305503538 257897942 508253689 961579294 996049600 229024368 637657188 470454599 535348429 477276255 830606150 4512011 86811770 863006967 927592762 561023330 898687516 324391244 587884485 740942478 801023671 609951595 952403376 640116067 654540854 386855064 658235015 324515198 756341396 596910018 699252546 443125227 876020242 54940635 199594622 291555998 942356077 785547860 986242452 721559655 829354234 177801734 577456580 206307703 825457986 581141738 959430620 437434920 674070620 511653685 632477472 541331779 630943652 171725380 213483073 493808673 853707009 508674777 577961843 627419003 815317999 617844389 670646637 655244896 662238093 11100716 751619415 669070744 962570787 454444713 696732964 325145229 840342438 923714742 955408505 711591533 753341025 659958228 875568012 553596597 944050177 698770930 877029875 494493684 849355307 392332146 901671404 421830824 998564255 552982089 940959458 767087333 941676520 24609351 221248213 24186489 843057826 500219267 849491223 139817293 179491364 700114809 883061427 695784163 795547615 373713581 759556339 515733521 861095339 966668149 971701139 626203102 840487993 542597616 713575941 331918922 575387899 226221663 455960714 209184529 932588859 310893020 723053371 114497029 400945747 719842015 726769847 877162618 928916084 482462982 985225752 464759426 556619004 824644896 848254254 76472128 722450951 84578511 471162254 92528262 265119149 436728263 788430423 846400818 854470014 855748020 923016955 158135135 959464502 356609411 943144569 859259172 889481737 229623376 974209360 299571128 463814906 404605780 407289497 988874101 991484451 604044843 866893182 345395723 648591663 259065650 682336654 854538267 909249810 975412162 991953704 944234194 944422969 489505310 622229893 271316207 730136003 996292107 997606841 296505758 827843767 240246475 802930511 403859607 703182445 222906357 900773439 481199568 553102618 591515515 793588282 874878350 994270335 668788731 888928370 808310818 905438091 906664034 919884122 500951118 539791794 916122519 992446290 239766926 390862686 192400950 735821657 116670522 676579791 259425503 661501561 667126021 931740899 147670541 638624358 982445259 994613822 326399500 603629218 229109645 409120834 206570215 260507082 333753824 349542470 324895703 984519751 400131463 520897552 990162848 995624417 378953663 760787771 676162671 696253053 116294686 475653936 496293411 866988621 586368414 813998848 856395910 966704089 210013632 754416473 949347727 972010949 446913317 934719846 434941057 536739558 112555294 696003189 476383131 532402314 487804454 524708233 515361531 592190772 681745235 905438042 933113707 935928419 245264107 702797373 913036429 935782592 531545344 663307313 673429502 766734936 198753164 789996322 420622163 517554268 39769474 59635732 896548378 956969001 931406313 943375434 313798373 953914996 348548344 375093407 324655680 527949001 379718531 739484855 266410185 381696735 155318119 157563862 386225099 624507794 619619727 889634786 743940188 798969134 819810856 949194725 179738947 852486783 541086604 709735542 937229235 954325289 859623118 923201045 447475501 523804832 616598588 639051001 266969587 298269654 505969211 995065889 635715081 663670050 622473974 660501859 184421395 779987000 697744893 908233069 686461505 917855933 591091979 608722359 790346188 881487225 303454646 931150160 651189408 687274414 308188905 508835516 706702462 813437918 737627729 948377617 933551613 949771657 418268033 909914052 404600502 415854664 647235288 993341917 225894186 794000211 531940655 838041968 161442991 867812674 716067505 772476398 683883982 928234395 171096603 310248779 480079320 633909330 856445325 858029842 868951668 912764609 992552909 996700347 664622455 936957335 828553134 985922118 586716648 660321998 874217119 929169142 529193776 688284480 821201249 904130719 845682429 891343201 743167329 745756177 111101086 926730092 179072766 926721842 585342837 874276939 411511730 844183551 805776650 844480421 698470852 765910117 105602733 987604205 254846002 545883874 712343761 837119589 393966725 800988213 785503606 917206207 195797758 361632401 298224234 796862421 639278612 862503616 42512683 354908467 315454015 912578574 824702719 986994958 92252050 847010909 819080907 961949778 419152006 553265180 937868201 958729201 673756900 934969896 308116747 852122207 500774317 882970871 197904950 255328431 214897607 892535239 239529492 619553759 657849490 684342793 272691508 440853806 651093526 960279257 561220177 921977982 969271185 974661681 372636249 912321989 627898910 679100122 983469701 992559292 176798576 274404194 436588819 595327518 389543080 861871366 672341015 822104090 198735940 881973558 460157097 956825674 6715592 481700476 302258927 961731341 251649786 840117087 841062603 895213716 153528629 495107789 124584069 518806690 795010457 883464133 223923997 516128085 216565538 925212035 363746749 961836000 985977529 995998599 479609359 563181256 833047642 894076841 761386478 788577517 197911409 894862424 841611998 852475183 688058961 909966790 495771133 904466852 370343982 456397078 782373262 896902932 595721864 863049304 885913002 983049762 754349595 814401957 3291911 131527453 107159781 236766533 969004926 991445118 193947142 645291686 709960565 719548299 389896320 620961646 762858345 973838385 685858518 873296289 380960165 656681229 727848568 828075364 460887214 541549379 150640253 444256543 70243175 744641453 57842516 710986823 849932388 941262558 194173907 707883700 18281860 57159304 193532094 772869959 596643749 725463032 515072278 690888640 408469482 946604500 991658653 992690436 481103720 954245590 634596969 937600064 183115062 914321479 871352109 977795383 722081832 945034768 175058741 668151462 651645559 721306470 310442918 810059758 30475357 532756088 99700567 286246825 88221980 570820325 579190459 584233157 959506818 974047176 695131332 761046667 331162493 551405655 866607517 933545967 765452274 822945618 916059839 994299030 672776410 774822005 853927468 967740155 438728435 623892825 174112170 265003629 606313047 656123914 326801095 540336373 694869978 966617154 713489665 848360023 152418484 599196218 107320196 146200143 946705229 976526716 216058701 852474422 508318861 695696227 125882022 702183651 528172986 894723714 892658592 959069161 159663114 779291370 705288648 819720687 207343346 604394068 676945417 745272574 604681224 730010419 607051296 715373309 666815284 786906483 465329946 535481436 61308203 673813663 291471221 591828267 739321693 934827516 643022706 703598652 456988144 732218658 179671125 703132836 533222652 853153376 631640880 719510605 529388094 835477358 60667675 303240099 205529154 706478299 492083582 804799272 811835915 814347719 827091149 957279140 59952058 556173314 61051850 718718688 299771145 398508590 742134602 961395709 263078431 372862745 534259791 874979396 517870603 679634006 824414846 914188538 623159908 741196252 370466003 981329426 658317414 758461438 147551001 207099856 220299852 879039412 807725655 975599759 95624953 507734643 413557627 715015372 117412213 689961334 835670911 898872382 481470680 515220698 997851583 998340594 816801413 960381933 268359763 849095492 346771385 490704992 766456030 814462934 837706231 926603126 591210130 907845014 17274308 52258216 891170985 953777505 125025084 517562111 98765577 603625875 612682816 631560927 940106955 944388627 493059901 719071937 260618985 614570689 434432835 539533637 691015913 775566280 467346668 785236253 116274655 938342852 790456099 954462588 419091540 457868606 302095496 464419760 689084192 797139120 316316445 932356431 60347773 829562141 43578875 677737681 627601826 953014210 931704135 968840383 554830086 859062752 589557621 964036651 522980416 679408345 12640193 810669902 688239256 898066698 91199605 560132820 756194869 807368377 705126082 740828317 310255533 354011921 873584963 921598720 51733512 205598394 457819314 996696262 370783750 912277652 838629255 989853661 457546692 759806682 962343656 965659791 28226340 294069222 354110678 567138414 937895693 982134351 415405634 942966763 794125861 797287274 56194945 628978675 613974270 971803013 13574866 190125106 406281927 779678964 15355871 895344693 967283160 972477941 252838303 715186866 844970094 867976573 177473693 527944277 881889587 967247606 268208812 609867821 64915900 948153501 340745446 868241491 688639574 774796989 604084705 753923778 481976313 729348367 42479296 915651334 49897606 521632309 453023879 849707093 570774328 920860305 530611463 536678820 270232001 522937580 774560211 833373171 628551846 919878694 512854108 839184183 287554334 406002544 241458843 307945694 66706599 181943037 930323874 978847527 220234284 274173982 920432726 923804805 979983044 998957818 731031500 992438444 868394571 905572094 393464377 638311147 54771056 918811749 276888313 962258981 818140675 853159530 448771008 928503783 673027078 966952325 761617371 803368390 624854180 798584993 520874435 540710449 296040683 730661051 660645113 816913933 330394404 964877758 296125652 920329491 819847337 821421348 740501929 911821184 106051220 665060399 676434201 949937980 901718135 992888621 763237914 790841889 688229038 808727689 70060075 805244211 763880540 793485916 69206793 992534793 304309606 587916638 641858714 948014517 546431099 654518651 482599276 621084699 947171355 991514725 37749265 840598025 407011496 550243039 807382312 858327306 101602569 461204734 248102461 845631357 296149692 538915425 72761325 106419915 478425887 693718666 943390553 976876779 975575748 986381655 471327812 837778028 192786455 776478721 248489385 739626944 27668265 824670305 564764454 852644619 16164087 960439798 230220842 356625248 731774924 864528426 218328384 629206299 516621941 619650199 196339514 248654558 859770705 947626640 630053184 669450748 994865855 995138705 788906349 885944327 792863685 888722344 988475856 998240709 272929741 343476464 279229555 660581740 837191359 852146764 127235869 770457519 256721265 610487998 830702811 896634644 941044506 978556672 768896884 925812294 197427796 699627892 685497359 773350199 625176785 691971097 13547982 575067354 892623999 996236944 435411896 945446436 178002549 993972464 904950885 912249291 325189509 596321546 968881741 977620103 937105369 996915888 45453424 95512667 683645590 800728488 894863665 954153553 530620989 812741715 977401726 980674711 902816083 915850317 731160015 899663202 541194592 715075154 283927767 551484602 934896423 957423537 919352188 985036021 400004508 748502901 382050367 572636452 200648268 554372199 472192557 842511799 881338870 928641300 844129099 894207715 337914795 737880146 557294939 839577873 555872416 990687092 184670858 517528684 908680480 947153560 493326606 846872365 326559949 992602241 334103407 519084532 850659121 886352673 689172346 766082048 505472885 856700245 280151575 289338788 810964621 966264640 327396223 953737107 234321275 397870488 18873966 229638365 473931915 571741314 880161011 986037435 14132806 579833871 719989173 749454322 54791593 708159649 326757676 407795782 400127033 721444806 208133012 559608280 254578121 964700314 569392778 732096551 263990413 661497100 153594963 597240616 770079200 881650280 457155474 615201789 488309007 727702743 746614690 972333895 115852444 611970706 960697935 995883323 313423678 881010750 159293546 208144686 509876097 780408282 817160179 963422132 764961729 908616298 709738014 924887280 719122575 870946422 974893224 993665458 82063258 211436889 887060508 897255498 950723071 974197850 670362652 770594535 671705750 701882445 927553456 943209261 850507407 923630716 457675154 556991376 275439063 555606012 102317674 996441355 765797089 856797531 889896499 902155237 58877895 888530369 372466021 561504613 231059608 814527920 42516154 214718287 94152659 852904118 406855581 798973281 204377772 218161871 421844207 945635596 913511588 970689148 463661056 803360950 751225499 825036740 708649826 721569075 273710827 574151944 919994208 953696521 805730185 911300401 759014723 829700288 247843092 823711026 745501545 985933586 632128209 846704995 989494856 998079906 559499796 710164881 248196825 610423448 462235822 617669467 335362427 452785587 431805044 623987142 734162034 762161570 601850179 920942120 781708121 849974755 705639145 839007563 911750062 971082629 799923048 876595823 860778096 973392055 913231266 975978424 904775716 917937386 533773276 759413694 512983668 971464661 923062381 952513723 764388778 910035437 525994618 967089518 454377938 562330670 255026240 873410274 227909591 368877173 633247438 987161637 174748339 218287335 784103399 952259836 131434215 507733206 545108244 845037447 830513921 903563232 487891602 947873369 630254919 928215812 4156929 387140615 790439976 949842261 650106851 720777384 548482024 629185678 134862092 529184600 247040690 939264545 914732361 997732325 737895069 807999625 942451561 967207220 394015298 578685538 927859662 953822711 630625181 859594670 706650937 968033047 323913672 548084558 150456614 649811008 285416771 572539733 640938610 721568590 74092205 333121711 170783152 285493294 40107141 560152436 713899199 924851108 868723305 939956173 54046374 265683803 698606331 837797798 71292838 662272819 761408755 977269713 315165365 675579862 436731010 998438689 984727960 999527837 596500770 808527753 100447772 483792714 241917711 769410823 683552682 767432506 557433116 743198391 139568671 950952437 277898007 496306201 641731268 953900018 910664107 939057071 17506611 407390313 813481649 817980796 548035877 678065155 896130496 959121274 214499237 534324731 48717430 374265277 730503705 879549828 887912410 919805593 795908299 908395535 89061835 879474299 838842446 962829111 452043114 597331019 377897903 880280194 108968101 208561898 792804914 880941184 921208113 972438022 408936136 817378081 798205256 983686085 726858901 855722338 208622283 966013161 13925632 892441287 516438637 746490678 686074002 827590583 199246297 352319450 949988860 951685528 242282952 892046699 462777553 934617509 247109876 462854932 249987103 365508840 403480526 952437622 264013880 861933370 405875651 974908721 854950091 893746076 638689478 724457735 652978736 840738759 285219327 744658018 809679936 995529003 81558284 887532840 679068950 765328398 112336533 309089028 539645768 719835039 86079042 906798775 586834205 854020404 406539349 676437528 993858260 998241167 788941276 905687224 532735757 716483473 858541513 996327093 687777094 850546346 295623166 685066876 303639062 323392654 312812001 323966042 586060342 605241039 926829148 933408008 620249998 881889692 63893128 891975889 556143940 837795532 61331316 445647394 435825963 724370757 487050083 651223407 647992254 660103360 971902967 990427802 275989434 960620046 97319887 737722106 623750312 948885558 380669244 591931126 241861788 299593367 135840723 901396705 914487593 918875330 130037360 786539969 676513833 916451598 504741825 686145291 895453447 913502882 525182218 720952815 719312735 939437620 198942567 472992969 148955687 757863193 698213240 982718357 526807973 972933765 491596452 652073513 62872460 862231867 168271106 856282185 834847133 920340231 52515090 384834039 946079356 948682449 376845988 942315479 996898529 997210752 110354592 644389911 377157401 898688256 598268844 841916753 202300231 275788325 927368641 993454922 711376025 901123283 82674414 282589791 223891755 378866780 870434138 923580223 22352779 789269053 252337431 265818999 247710330 521948331 280672912 815876781 509361767 819418219 924212468 940951098 666856066 972706700 540615097 832784923 631182307 861269059 187783701 777590360 670454970 717923136 693416306 749100672 374722573 785153466 612642822 731231272 442400050 661188126 15060184 805076971 97584907 861966127 165795166 454933847 764494059 971170603 758987800 941743855 44879119 287822218 445787318 470544936 953550919 996882699 177291561 646396939 839434127 876000482 441112544 951554641 414354948 752541025 679444520 841160526 225922841 778564383 60119559 186607125 804428503 946654176 303947981 525929665 406594449 732538822 853284333 997660041 474645815 781053627 517509184 853904747 853071819 926580606 721284731 749457797 896288685 898049837 704240421 966179087 988720957 994635359 517930968 976415453 588396423 628648162 389855765 986607397 695480441 960805291 265429143 635829843 141526222 565769526 814992167 945687153 268911273 480538734 555155029 673121092 525106109 779101434 544483591 988903768 531086409 796161243 146066519 419413135 384958505 941635721 555578871 611067273 406389361 930674445 891895899 910554879 948577639 962528723 604102313 804671309 388781311 739413309 422270498 963042254 127401740 722402103 124142681 692083333 642878930 846745107 592099942 656358805 860522422 987146125 822019288 864120102 565572309 851257579 745271998 903350720 182159953 727460409 675925932 969999060 819807190 999249558 553862995 739508930 211397253 663954687 193876331 813790750 37469110 205814432 388425249 978720630 885195005 987042569 27484195 598843150 308853320 336354959 274666251 327063050 445256441 546289017 90193764 992498443 946187046 964788757 472424328 739851350 30083849 289014305 793666303 950533629 424465667 511059154 618582652 773286181 109793688 390435974 125397203 843366547 19918285 397220021 203558103 456156370 53501549 123118813 93052471 761620299 574995392 661147142 707224381 943103354 616707344 975875781 576313496 827164394 212750096 827582852 9529696 464805072 336027740 995648294 366873001 782389279 754319892 973660950 95355932 564723044 479471974 994068894 752863670 955490756 711289880 975507793 767008982 769369593 409342387 744408423 495081131 651640822 213038228 280667623 476923098 580713008 125737617 396709986 836056646 906098931 187733798 746186952 509548294 924304954 146295991 149176556 407731585 547670804 86281309 121787849 645938738 899186481 142386584 911167214 630828163 653282661 992645975 996367915 17911760 708362237 739686775 801614042 800832285 858415906 829290601 913900751 19912777 233384448 816822237 843620934 436408048 736030339 81643015 976971654 343213793 855343701 769409947 905200664 731472793 968925885 92646232 616340267 700332887 810606307 962789431 964336871 196612628 996359108 100248102 273289733 401447324 538636238 557581625 903310273 560108054 700116904 809593991 825438503 812498624 834347542 830744809 839457263 739998776 999077139 849778984 919796035 23894471 952830510 472441945 542299975 876710827 891641315 348180870 905398187 861811928 959425083 390109351 926064073 59601907 274122530 402387154 450233300 625088994 679204312 101697701 692282977 270093610 914177764 250411836 552699012 847108111 996120805 648813435 863048208 859294381 981250040 173861530 195117957 342651158 787665266 351160145 629352818 148442632 733145193 217025068 524078070 805352471 850370148 732385901 855324624 312572953 945865744 208926815 230242622 545407885 642628302 394074734 635020784 977579531 990501025 134061771 911301244 296686086 625539290 25212981 461137085 563957345 647280055 452688831 967934259 564210625 891810222 360110488 510931711 76025924 508197760 194629660 460753637 591425266 781935626 29629587 874225493 543304807 765245932 600129487 759754907 355108690 999996457 119706265 963202175 230935181 516337139 188845047 783501402 937508165 988379492 844268104 904871532 194468796 638435536 160690687 374663403 250792329 598719213 851472059 957672203 90837515 817182433 936374129 940641601 20053345 155695997 61908971 184149866 523016168 940334060 775076021 790950430 643514782 684804528 929492777 954062082 457455289 780017621 941759799 968012106 559749834 938433916 132650631 643852922 827734924 836690950 377048891 457063416 664192954 893387713 351808152 659390561 811678164 968147641 782355570 883412025 159014881 306895688 114885259 797087130 866359187 980125634 139816636 844797459 882052637 905086107 562143788 643132007 995955205 996336531 332963660 877447714 891146432 960418568 361834398 758039467 389163160 421831916 790950011 929384237 36166852 806696445 675042559 768948413 16432713 994688119 757506748 889637866 571649765 615858193 795527155 907842496 580005903 920004873 901278864 952827098 941013032 950418902 754734505 819671136 420606163 614489863 684461368 950350692 833535831 898440851 440378373 891477153 326440025 897744054 605838123 744772680 938784276 976661168 688277945 985924864 451259896 513269035 244341715 668614615 929689512 990111066 862580607 879902117 716453998 938575484 455595295 849747082 111037203 187767091 286678239 965174918 371448059 514952114 682330985 734302723 350932230 362439904 896205897 926412081 134444190 777119265 621014647 824631378 796543905 854192805 865283509 934356085 108747718 176343293 681841984 709569025 361725724 430855027 231351129 395605345 308538787 557870424 595038023 788747774 19421310 212870474 215364169 707728130 974868242 976364250 25782696 647377642 398129267 565312946 243581436 566281558 838608225 972464847 526368992 586010445 561775815 744245007 465526345 683642070 281349977 446019530 816065327 973969229 956267572 989589204 418220196 940938580 846501163 952084520 344273539 451153915 774216437 921529491 424234293 993814119 617079808 995574836 202032956 263493479 986250013 987821123 322454718 475867499 691438709 932457969 442424532 531576882 487392375 852007325 604941807 771325268 30399414 778420001 389493207 872249881 537161213 598114938 733310054 965127406 550274942 850756829 134124991 672332337 954075474 997322383 563598163 579895573 765770613 948275321 145507119 986921623 212723537 796076858 280464299 800553607 189978793 777389531 645125951 652107977 381818461 879657655 421843779 602736218 787500213 890549566 138272568 176073164 95949625 735631682 352591523 530947781 662798437 857240127 199878862 821955136 336027069 529127153 513869189 844235691 719921976 926586528 93418650 870341117 734889868 972762028 574489570 663084776 676602791 973704462 796870492 979829430 627250136 827594765 872777072 986266111 881165969 907779188 741727926 945331383 496778524 550952933 216947781 360716420 102512722 995381593 353408706 912149343 440893624 534906851 629919735 932875405 788238871 938882131 180347576 295373997 922107385 994664117 176398705 595141325 737854674 883171065 891591699 941092737 955519653 981007320 542100974 575862145 644157694 864490128 771203366 899439568 923293930 987956052 789101471 864320852 705025111 945108637 125087138 710961751 524277291 604736238 72228639 181377406 537917973 572132286 238745789 322298344 258014090 752843965 838213751 935760350 967157791 972573569 318132455 953833533 573352791 647048227 497598752 501846307 893369722 951125877 870159782 971340993 119400358 833352196 705596986 894872600 233325394 804611612 701093002 810076734 792554086 809001294 540429948 720463559 869386300 913529718 695506212 837327750 90813415 829133283 481273903 693837133 690374799 891297038 297533133 357781444 985945131 994755866 482165137 892138897 751927393 842621689 993888973 998338048 219362415 429139848 417784652 475853004 132530046 152128544 330855792 970536851 582629804 935927696 940916396 963717726 269916988 490464952 825892969 922233312 591157304 698923960 27952779 183167378 85272731 412061445 765007232 890846195 286089556 693026958 428934472 555247975 155267115 859085710 944620498 958939943 340643981 749773113 63323439 796466897 560965842 846199244 375462792 983993305 51563156 302855601 114239457 359705447 878454325 978443433 210942554 479973859 447112062 684193765 147184222 759649744 881262304 955497618 817746346 979519143 528788012 544150265 633746928 949540701 69101577 788636851 999973718 999983269 202339652 848144766 990795402 990801605 387167118 885347151 449952614 586208794 515575944 770502353 754826024 820736099 843415506 901279236 937589548 984929251 582800034 921831092 582964010 832141292 212253967 346948766 548062550 907718747 222823745 393099145 22565288 519911789 443757735 707112931 238251533 449398284 39158603 404647033 864382782 886867742 851467543 995274103 824975045 956928405 483128262 547789238 137193945 529876029 995724830 999572353 174197477 785745422 909495451 990125297 934376891 996338271 589326754 675682416 774816974 906842078 641088416 745910628 146951807 799938042 822827951 993582326 547867502 906589012 205974148 337364078 906946352 963782532 265980346 762772707 680706397 883449323 995107595 997365636 270046905 418779173 263976449 609820688 493763243 892349071 599623203 990771027 901728629 947778659 121690314 354631518 726147006 832977282 670920188 804294935 487614932 930644147 540605346 741220334 372434999 495967606 838492655 855656491 286960165 759057215 535520791 916567615 259482630 924482635 517711295 917913859 234977259 820227726 213948697 239160058 909740736 995418742 656145366 999989525 969270969 976063258 809234823 966398759 144389939 541696443 92110640 690273427 18962421 22268693 762547112 899893712 554108121 824716773 676959948 781288132 846653939 943868431 792769643 804226804 969453992 996268178 326843552 934221346 184635809 624395293 757410475 822582215 503164801 614398482 218473797 287763432 593651758 895020928 460422555 971175962 718085606 775333284 916454582 949678478 974373184 991882220 725625529 978010972 861772299 999334481 350750654 952797056 487630445 921085802 463058597 560936998 898542955 913348916 921017455 958924945 410886797 703321839 961851281 980465731 908022563 915404819 553274106 798973913 926849193 972017384 983873243 986902226 787768886 842335208 44471182 109273428 310432581 317149674 253246431 986967637 548703389 691891128 447186229 534395275 744665518 835717260 805403540 883828043 426241854 963435655 464766764 851331189 517742209 838498552 339805466 560531683 221068745 658942203 27564119 35725992 42869594 936787387 784794784 946505149 105221449 383501421 34258700 120927784 654302795 808688412 164033703 825101343 82230808 583522679 274805819 741886020 895611590 905441449 779461977 968002975 120200135 661097916 776253 865467068 610031511 816385504 172406501 214228450 210843398 361431090 473467072 701024764 830554398 884388078 38504044 806737182 474267300 781549688 567799273 818861430 715682470 841534028 945415403 956590866 598199572 610079274 530814361 827710495 933774408 969000098 627765429 888627920 244055052 748523619 988471782 995315552 444085297 871345927 839621781 964827020 35075247 153505933 917628403 928757145 995982149 999506778 862138647 989628146 5761506 401108858 5581353 781896659 801980711 913786971 328977998 387516850 903410509 972422667 820811800 954371578 173148799 736640770 700838627 857694189 433584796 820147692 432984640 699917201 281927369 797103209 477381070 715289017 794806700 916731436 385635049 647833621 19336946 646705117 872260479 924017766 634171008 937390520 815126277 896911928 377398828 509790493 301847178 901239795 805821096 806123509 417183484 423082512 409878200 569338085 125409133 774968262 372050591 493974827 672478578 981473797 565836151 716705467 104105333 281963316 658271982 713231451 658432045 974761586 960632182 974458269 888180877 996077756 344899879 689121324 447035658 671388160 222216443 283601206 580422732 969449871 373029841 974248712 638213401 794129682 510299192 636918912 559966717 787887615 821131087 984436260 60876518 467075485 182959320 727505418 40554029 325362508 240492521 362407318 218107520 927039584 78485726 546394971 287798697 835362821 340934599 750353883 563335961 598972294 933701218 960727192 172291829 269262924 260034015 886610775 129403211 717022006 557962626 668541879 896539502 960767978 23047170 874290031 234142857 957008667 630677479 816508574 214641512 458323985 757313799 952081318 530939084 754590864 706998604 748345799 962813716 965553224 900406227 956221408 918642895 924185366 232634111 571911659 443855197 716488163 893067715 990368741 228900172 811534619 851040551 992644655 110330205 989096692 52808057 132596945 221670064 662411352 180912159 514735231 246119888 696909338 448360287 751135094 689703629 824266653 434441192 692171666 46719208 430655128 179027309 588254870 178313357 923202547 727215398 785020162 641645875 881412452 890293626 957169379 359169626 900896699 354816205 482016019 66638415 325310333 78331507 871880172 665329253 948902322 76138140 510752654 155744693 306696810 929017549 998230020 649224833 898608139 84571513 968298747 250013596 641707880 196946590 539092533 318567575 373448819 300182110 413722759 429832722 977872993 884790705 888086423 949065993 988017709 588937988 789166744 978710042 989080076 736386258 899992308 397410112 527610207 707242609 851805442 987257008 998247708 256834244 260088501 808085178 909962022 431659188 438102574 844076961 918206387 911147912 977225365 114772034 798438308 948287093 974878260 39423809 292139398 808337141 977853816 368389916 753093730 169097384 895245822 501496135 524606484 870830833 957293598 813200358 816811557 496152446 828748800 675934665 749187289 142746406 836843182 459646717 663372653 204926010 803205103 201547874 209370747 880374263 925961577 666856510 807983364 440708790 938866953 296851123 344636074 588464752 723618999 656207701 791898707 586902443 904586654 652174757 890220527 567215087 924907963 685558488 902468660 724991265 991677295 59167706 985528981 863224575 909611148 232524646 976649678 181498775 352449829 183728538 213404935 886388481 948223024 688506316 860894092 64078856 516514008 456965601 630095653 740387393 828035982 634826160 700274241 699869222 791528608 597524801 943455801 126985168 692527765 455925031 509421077 317888723 697294830 955361061 976259094 880999083 935065573 547349652 760945241 604843243 740589308 968196736 987020154 446738161 964188271 381727083 903122108 429734393 776480736 881908995 992990288 230367693 440735463 643764736 887019875 517619811 528472512 690650002 947437050 253006396 515402984 490692797 869563790 735658002 990586615 678609723 847321930 743012174 948878950 234095947 625635715 690233688 912082132 113391696 368211055 17939530 339817710 13549669 928458973 352044487 431745926 503899124 596388815 854726484 993458211 975800452 991398578 895830493 947461871 762467552 951130975 800514153 919191437 499903360 925631728 904875698 952779286 512108037 586597092 732237178 883955494 671083220 890330710 160211577 807738078 628262340 895602514 328276680 504142403 42113946 678024255 152459098 538692381 367307179 490072409 507904037 989879069 704360455 981728975 464699494 524257352 798042543 841739933 80998847 259972997 420950925 528246070 270071296 942185328 724614340 758574868 534806060 664142600 597207228 675489186 354859605 445172115 11201651 523186888 444480796 775678199 411652059 638186043 837810292 964371069 406921228 547830993 820934738 926354626 287845161 619898479 752708479 805801869 152670033 766635013 33213843 542183191 476637957 685064912 150305874 585245937 752033831 814013743 679371925 930387387 429110863 737307986 5443526 66408046 601969243 950713875 229630810 822885097 955424698 987570870 414261504 518866400 490297882 618545160 56432828 777222025 330129818 817591403 301885914 384587247 746780947 926578795 668963017 791688162 465424986 957305959 891784917 942207191 644733946 761751931 215556184 636041937 677551128 858712743 161531756 262650983 754638830 871317841 896240021 961966391 60766793 840267050 692585036 700400219 458102705 459454404 267817889 878777532 548281334 858475833 616372174 998229090 905383157 964942133 887188220 907286626 573320047 980588042 446916656 901032376 38317065 858465674 464813611 709290447 924818542 950855638 389483282 965213678 718352741 833044791 964152698 993487568 679566226 856355855 726007865 835281808 225050266 513198294 229658776 759687159 496749886 705385641 180805407 661038328 209680380 265325364 570051211 605734799 896169740 904711030 743172231 911203934 383484802 660355758 726663668 741604058 371046452 378300025 697337438 802207441 277757110 365809924 493880961 686386280 116434541 610270130 247800420 821422943 212298876 411037044 983523509 989097349 298503486 572401278 116178494 960449855 152271739 162427855 86375828 178306707 460720614 514400036 989916463 992275200 479531015 720243637 299284563 548359949 682530412 696754631 505350521 739672207 83572505 488861006 286145694 913525618 150266391 594055541 66307885 786534476 289029856 832207391 919429423 980879376 55280819 881386116 648546817 689899708 868813813 931708688 689217716 952872458 608378309 915628341 433699621 664810839 322135799 475485771 193281096 370009217 726487426 977685425 983757114 991052323 99585720 739913998 67209115 347968130 56282939 450256832 339963786 440304878 73971994 894682945 599160767 927044681 684722155 876455669 343268156 545068891 219342030 713951360 23865132 262982988 713543775 855662700 725179042 882428736 672012615 698390246 235814567 768418612 181974185 581493894 908775608 963885394 827711391 834708690 496025333 496554812 2257337 799515783 444293754 621129472 128359424 991798022 81904168 122301343 2938773 436575547 269575794 534320062 931243568 992879934 465704010 615050559 84190611 509870856 860350841 896937793 966476640 990876878 535857275 699058921 856549182 874618960 701111198 982459189 822048161 911595766 664813600 977387975 561623467 732106274 223450666 930135581 414451442 840265018 506713176 828491606 442212272 645470538 542819409 832770743 746772685 864916730 711845348 888944144 181133274 877655223 705337194 963199726 919039145 972070688 993796895 994982139 614629761 856349193 830490483 922914481 861275056 893509824 735323071 994884705 769579988 884266629 506238745 816456331 519123112 724747678 414262764 993057616 807927039 870154487 707272567 984092378 159471602 612002889 304918268 890296469 228992143 801111129 281961489 329535246 121839001 446636627 902007627 996480975 349555702 783384137 411897135 590992384 42498108 448296013 973092774 992749105 853420524 885216743 101640034 413242556 19291913 159210004 438091118 719368811 869378499 985875248 283693666 344678825 264160154 867543171 816740548 871116908 236280182 846410449 318466517 812992182 902751591 954970527 722531497 781087390 304602876 989786358 560389334 914549426 754844021 833071817 48922172 183572956 459865145 761665165 412691241 476424548 350557001 529902711 136012530 829289802 558696831 665230322 474254077 978288566 234017984 501070088 731359107 916263027 35002624 376774565 320282293 855318663 144279248 273724127 221908334 954621182 483357406 840267783 65337975 287178321 980237151 985884688 208719346 413856732 762189217 777898087 400055151 485233710 948263757 986622174 566551294 720714685 782290795 885452809 563435233 872708963 837270348 941332810 203628258 943662939 776947778 926847948 39295105 220797996 233849663 537792792 542118361 837114219 781088922 969375939 425110582 900858597 749554359 872596496 877989064 984354584 12008400 157810573 734636573 792053330 871869995 984361312 754033536 860426851 711657956 848467242 513283894 841928138 678383322 695363493 969900437 983137813 471843722 960690948 734534878 843000996 404830485 769684817 602111909 904456498 142310452 350677526 414853543 630065685 122295302 752072245 61118979 84376610 399749968 825545947 955115484 997918940 902092837 957449094 229550356 954696934 783146845 873373931 381098857 838366492 51322145 579018092 403424444 605172147 311548737 360648069 18507939 522209458 457667497 915314201 734079626 854299820 197830858 473559718 966115735 997989482 293555560 850334487 51453088 818043173 762017659 771156320 367924871 783196093 111118456 557240763 572309345 614126221 437722465 602159408 307966960 662253232 232294903 535822312 710965990 791907347 464044916 870931343 694133489 758064705 108959764 927511870 214380057 603865644 487744695 700668880 218006303 367894864 22591409 151013086 988560098 996558459 414112110 888242616 733331875 986872855 651880276 896325445 611493296 663426900 57505703 231249039 244978733 855202294 955008222 967574514 929037398 942100951 486534846 559242514 110589665 216820665 750064800 778093541 477759741 570056084 342132431 391049686 846584609 964550784 376245204 387848698 169533448 194234719 90476714 217231568 538433293 613206235 505395485 555387960 917558600 931759055 831489213 868952965 39633108 734914139 739671534 846456258 244813859 890225412 375949480 444253712 193579469 388379814 375405800 911059202 664944353 773254139 193160871 523763382 569125554 676834168 454097556 629607782 639948643 701051275 841473048 955107680 711488652 961724357 801117313 944196093 127925388 506945294 871258995 894131788 775815819 910736359 10024695 930903023 187348170 379733513 146971474 713568993 890236330 943278556 131396030 744859898 282134137 732032642 387417927 494656045 906892038 911355331 190503108 706871768 427739405 860363967 121578673 724818911 239685889 260850545 413697575 759444550 775120535 959380121 526938526 899845312 777922794 903716253 728566928 816282961 523587277 563725422 552040288 801406676 761648142 770161467 895649722 926325857 563701319 747213718 163046168 631435275 935596379 974998110 59350229 146920842 233457470 784869525 81406136 860801869 298699658 335764050 80993514 366740433 657835282 669477043 262228724 370983528 433578371 588013012 458753738 724750182 317233787 410764470 172957940 650642758 2023129 863087615 445809070 933362044 699208336 787750679 939055300 962219518 834853280 978731444 144435838 168894428 271191202 914721491 190190640 429870961 462530320 949922254 744049308 869470397 757876130 821923511 622258040 905192183 530647227 760899144 373449600 860008556 261948602 303205700 70101941 792370777 460878664 965460079 337183802 403548992 201521203 624470865 121629859 998678310 870773702 929892298 78739423 118591700 797175561 987858127 165964624 333451233 899999872 956545385 502665059 736569505 498585849 808161510 145976726 191334215 772327433 863058832 363233775 989893200 501040575 507491448 9201091 504698625 459979518 973706317 356688720 647932690 176047949 918696768 364170142 380118159 927079825 991038627 805344575 936797076 191622806 962047984 972864688 977700107 969628034 973099452 313220308 437637825 607517891 957160862 807093441 989991140 192957170 950341008 644176067 904985758 585770112 812054539 277559575 899754387 275569607 762576247 34476086 454254383 417834598 573709910 993678142 996853313 324874454 832804809 199942746 628123721 604825369 948402200 394839276 982590583 733694428 885834363 507350281 635949100 567469437 791026690 893639671 897246366 180353018 224746872 88528084 707849684 986919497 997938967 840238216 874199064 248700927 387657786 679115247 898182871 264466869 534838151 534036323 582798172 531795858 800041528 976186414 987694170 169372856 623498594 663118736 753094228 568414260 881126759 178394926 912887355 286222692 953891268 19765884 487440853 73172979 76893517 21661993 295935725 429166799 513288253 905771527 976445245 54253175 720010289 108810517 180944617 25741836 206958230 676534646 848684179 279930075 602502732 401354061 630827467 519051889 623533249 614767991 964328121 264735793 560911761 622232379 744957340 476178036 531174455 806352895 905549704 855691464 992487020 261682102 376715239 368582916 779893619 149171220 343012330 554586430 826597319 39985092 887791308 477281966 937554434 953994769 985962381 905846597 938069723 654531188 679859196 445623165 744836729 65703899 854759181 882142397 964430656 227338571 330650278 559007515 761693113 313392190 873641234 565419147 579256908 354260040 936921945 489832796 920185863 847929578 898291398 617224647 846345871 926646531 935296539 624280488 881018733 650413775 812959335 768540661 794523977 310614914 895634021 713279190 792058421 626360812 628341866 908845041 919301323 564871973 905989583 842826030 892263781 927004648 969390941 307913626 648962275 202501574 781509941 174075436 313500999 173569267 793980492 348364928 484480603 266571179 825359108 120555949 816733542 274860520 745492448 10288249 385738764 240784451 755861673 342821160 902591255 125243638 732743982 874435298 881124961 776182325 802993180 159035264 422604719 27562127 847333866 2764766 348540300 426540240 907846279 615772310 678089422 429705026 749005067 953978243 996851406 493108133 562636178 946959322 990702941 310894195 990386058 90917243 341248385 265512372 420045898 825590694 982348026 462174664 736888773 201586349 619817733 281189689 864895010 998385155 998584349 930053525 955442390 979419752 984922312 977574137 992997492 269010768 299534510 805727473 810761732 965924514 968792786 718827521 795939325 775611584 955416813 31593725 589970186 301541465 447137283 925775313 966089144 457070220 776503883 221304044 853891848 246484098 617528239 487274337 737916897 68014839 610195090 656663254 835983225 31613866 729725652 754150714 833765636 242928614 991286808 224633129 737009430 173542349 387906063 694423209 890818302 881049052 895669170 18228740 875964915 356608937 852522485 933738065 940082107 35708243 54323091 421553706 554404556 81079229 836476749 593286321 953619279 639142574 903904472 209617539 412700358 300390644 608932978 215492953 282363052 787574787 834881941 737120266 993468060 43452258 540684162 124929901 402334096 177265963 963784661 928359541 983780391 196022462 289980939 357075257 716727950 68467374 242170498 199933422 253391296 666831357 764228907 982590781 994828933 789503546 790071868 130310314 910950121 296136955 332988297 600397407 837617148 83060308 247913477 720433360 850644348 387384630 572762446 242916874 531943896 602156802 839085737 254122225 657664181 129317063 734984415 272351447 521454333 86424458 659391496 530946552 587962605 622980815 741450147 803944329 874407746 210189851 951627551 956131794 978592817 317596378 820517355 302388564 683743482 4193872 696811797 305733567 683181682 538633332 930383426 693679708 806315925 631082722 994864806 657305076 688968550 836300357 977780517 777429498 866705498 176915175 877251954 863833667 932123207 991498570 998123240 985588396 992182471 920202318 986676601 388575344 491983564 70555919 938637803 782335722 841127328 584112706 814152193 275183540 999476430 320122523 767975078 604553709 627476162 742689485 841213928 761511918 948516359 863248958 946387376 145088346 886394197 542778227 875109592 687737755 845998741 796117103 904864835 147939546 770311847 733592721 924276503 163006142 469756975 89246166 480592251 388604831 692356243 80283868 250593338 565960163 746952256 401668934 865950538 393014759 614045464 614108339 824521056 542008787 731288844 972113616 976230460 602331403 757797366 66607030 735012802 744614632 881130620 786845438 879865716 683357388 709689620 487221923 854421020 906224440 962389095 950275540 954972887 678718012 985566837 686672596 794340778 136996471 241530670 390288016 636227710 975357296 982741928 504295462 617869000 447113639 988621209 460292336 662380796 229964858 483030798 173506871 391673541 438821348 904968311 323322576 800440549 297846791 642128531 484370786 838924548 92262229 136371932 163971641 366666724 81088232 546088745 118214796 494744831 676352298 694097514 545949444 773482335 917098239 956240527 113407171 131465537 20342264 731658766 687432509 749820758 615616265 625391343 577583561 972921789 667571637 704077926 845064458 870796221 801679970 869926426 896837518 905906759 930536691 941279702 589948204 666607017 217135691 663624852 854623392 977227736 104834403 763330213 103511305 262416926 303380469 699946917 41635399 606556286 298887313 971847161 375520703 679183915 835536125 965850365 610943280 918324475 928802467 981102605 811017868 870920126 513184223 724992407 704885248 826780897 574314801 730034463 885934985 971850598 608393609 866364842 282960670 363902831 273188351 793045337 406545392 825113721 463144330 620568653 39345429 301752540 160767877 484957314 667882750 840183052 421820924 983177940 686539773 862090805 769342629 813601924 370193348 426253832 568253842 688329323 510615410 841682872 31110200 107968281 256299888 343442794 963208244 975914398 517044263 828744418 335989935 373749167 473604901 528929407 10830092 900574588 334927672 937050881 204802139 673384757 814834447 970689615 960931412 993951597 214336694 497833441 805948438 845634159 501574057 899949139 117923758 953942325 370904465 466476918 258424171 483496492 502998838 705583490 670235761 736155015 132704982 922486961 298976121 728802853 556105803 980827886 767017280 950837413 654180697 678224635 22063172 925563600 222671667 320311845 628228040 631019291 103681367 574720581 653228380 656599404 509859257 799584044 211790438 420241984 255530743 523449426 560415401 591979145 842382515 993510225 439186933 455254360 790120932 876459834 522990052 958429425 342542271 750487779 79573997 594759328 453701495 735163468 4229740 237969007 691603255 876819693 265325111 496617168 980466690 992484093 912588728 982343899 452605114 834954215 362720706 478891859 327980101 811573976 222098280 854843500 702936510 875172557 350225216 601131906 613651085 674601883 917015461 977248360 381656853 655869680 581265544 786188104 209624083 998496591 471415350 801287301 594956040 608534726 198321589 918948944 579734576 656478774 740544563 837068790 926741675 927143347 478418775 924667526 895218817 946473893 522647628 773384915 542537193 914952389 592356451 695200962 134603108 841683514 33349583 95421145 246555604 501527508 379181533 528559545 947781731 976942887 332200150 850164720 105810875 248112746 539067436 956113884 517281936 991757833 352794459 411476650 59559373 525905697 624126570 734082179 919171964 932230768 498351220 888027421 81993033 467039488 710979828 855680865 575747366 592748676 401345000 885109784 349739527 794483682 748780289 870984154 178577907 898274096 664633274 759077844 477447317 600095912 519603981 659342105 471409584 938475876 326106706 885556822 924225860 980177612 562394906 913282201 102740938 302692818 467977092 739849510 155014077 863486905 741798583 771326543 49647196 248836281 347978786 564845450 992708483 993788162 475096189 806781419 638936813 979773945 719046085 938424264 118841778 292295043 590861726 977779314 676657212 939851521 406852808 501830718 454575564 647707268 790812613 969595097 794772377 856179004 535252798 695914489 886348909 947914442 211468803 850360942 938824954 975026259 503002124 572324879 108555588 954458323 338593105 552370898 572207351 993633254 471549277 881084013 400339758 730537343 711846290 802709726 700168846 933338221 180211117 902584438 680990437 777725261 986265599 989282344 664214623 952035989 347008973 982513784 599740514 622570961 512339475 692747921 936022226 999697321 863626178 903992600 941540268 969677409 247565591 398844570 878861329 922988059 290189608 594172015 590113925 827170345 191764094 539539609 102418069 862677194 406217560 824513765 378532050 761129502 562132139 683791950 342786333 444588650 66628985 944613604 621827626 856285834 476052264 662451614 842915633 954372684 840180272 880419462 965560395 986574686 361449447 385310670 93990337 983597133 278266148 398097412 721639635 834045387 282245771 494972894 346719269 710501681 311119881 364857603 535360375 845410735 917919755 933746385 460154417 925676071 569594342 773521617 736180780 805704333 841104211 869237775 468103365 591041020 170867692 502195514 940948002 996753792 160264263 900041628 168656536 651539397 431293330 880589836 49339010 402229054 809896784 955977578 197535905 283039559 205674046 848374557 428478150 933557423 931838875 947507311 815604245 959671489 602931804 867632843 955002494 993612388 179319292 619410114 118556179 472148317 827897848 963116338 831965055 861894515 242816460 613475146 701705480 962727244 273679054 888215657 564863912 734048783 504214876 949077809 964453067 976770069 613441168 916176147 471688977 820094686 942876606 981092963 941693800 958245051 54757628 651184385 224980856 511671048 483882951 793536867 808861263 894864199 660547450 917315179 811826426 859158029 85988152 967854409 792069706 832116714 196151785 819853958 327129353 456822470 366834255 473059203 148198185 453941896 686472468 699665949 872033017 891361795 32270456 282129100 33176077 829394664 731896222 991868708 160715306 532062566 389714957 783139778 984945129 990393547 553761039 707759434 498942557 884387370 14405810 565254001 705951556 968464612 564348646 938960996 813271584 899842754 644425704 899237162 112690547 623147256 809275871 868149749 645468171 690322499 703120587 884905847 556355027 758474673 348603257 709217768 790921715 925537921 199390802 705738709 486665136 741354345 151210578 523810870 587164833 872581925 268794005 857474733 247913788 574810011 663011481 926292561 122733259 632918447 905311866 999483097 865627721 994773195 226580111 739315488 190422947 203840631 720069904 931654961 323902884 419779169 235656 933129336 761661407 951248290 205981298 289981634 944090479 989573026 840590637 914502870 954907925 967696565 290001397 687532481 59944470 138734042 257837408 728626862 629534508 906940040 825691433 979967349 935443264 946219980 255016494 552288770 706421858 998310985 18089755 148865955 29082454 850132347 929469552 995709468 716121305 813301053 258285988 366251771 539265491 668545901 268864370 605549294 981958717 998681687 816165045 837202771 759594415 875008799 698358422 785628222 306628985 748230117 939347705 955817547 327479406 354765781 832921590 991547989 572550301 963264543 394414876 784630546 823833845 862547616 873549697 879294331 385587568 985299951 622278542 835315657 62687412 841426432 994228758 999218869 159163632 605869295 495471199 654448320 693574095 874062156 147468844 162607336 686491892 934326638 955879830 972178151 354491919 638426767 432301752 931005921 921761609 977936294 973286275 987076078 298171037 443065013 920944090 957196152 34212364 523269736 307565135 351073691 656875131 977736047 362853482 763995965 663769989 676898294 94569506 565134721 654923683 902517326 107311396 434526595 154790795 649235689 594501512 668386167 539763238 776695236 224680571 264871056 665398923 720034892 488063397 586541733 32174176 611477836 418751920 983573994 897926107 920925272 731606990 819826085 291934220 738507058 414512136 747128540 977957133 992869804 296051196 674517254 466785808 653466297 382101828 919770223 279343028 726641534 827788034 944029634 418223935 817692688 931669664 996297123 144110389 427800229 453614998 771051130 123965449 478155149 665448871 922122394 16844918 820147137 427733994 516283802 503509127 746248461 789212089 952333660 186547201 186668843 732464438 829952178 481434247 788095091 747545171 793782843 850200149 914283001 407158972 870316170 568242217 888995632 987276765 990469213 344598031 672211318 997380332 998324408 101625675 316172436 70904291 776503901 167533411 426419623 838492990 982964303 492312324 830908766 85012792 90071504 655461513 679034495 936460494 987772534 376835109 486439321 804325059 942863500 307652293 386781789 332858246 465561552 193752024 230040683 998483009 999545079 95388851 290441982 20449132 627038224 412052803 966646066 205353978 650961308 849425684 853949981 322853686 575589315 653021472 798812389 481294577 821672010 609525235 768086422 714453498 716531265 566907836 767514852 272581447 381678822 515280624 541285010 196809013 582451733 48724857 895950489 379284255 777701246 251974783 321528240 550753366 924960159 58684609 622079857 216319761 446998050 184594025 248088246 843704354 871737215 323599355 375464641 232823939 258472476 417871607 950762764 752061543 864477348 222951342 505252368 289944907 907124690 82573215 269313146 299021179 404698627 565849055 713436327 547230480 926117685 76002206 178401992 789986081 936699155 954379272 995712759 975171688 997663459 771077484 996951676 138758730 295610015 220575837 778661704 643198907 919622427 178900984 312504528 168302807 903034970 276782594 652707888 560121586 931340897 916476767 988805065 446349079 979410356 606666047 891662593 527961538 821961056 920489237 970013994 604520137 812879186 197970640 465812885 172748222 456539092 489838622 621321232 152134234 541111582 745469762 843617737 13432573 553934426 236778905 821083940 161000116 274264325 942623198 968179006 244679781 318688220 114919836 482624891 808677094 828093314 509132169 711622765 768739796 787280654 204930183 830039792 807998494 858387408 461511771 686578684 18347742 131649551 703936629 753910246 206552404 465133941 569356627 910394336 691960332 705088183 571011370 945946531 260354494 654108035 426163674 621654712 609240217 879723945 101272768 477691248 362889167 638688944 401975939 824158143 570194869 602029602 724818098 903554115 942918225 999700906 845136392 943429792 492113561 743740249 340560853 753979207 553706776 754880204 525243705 535019681 261804876 835519796 202111802 841523984 609187740 818551930 272790435 794630590 520695419 856618859 120649256 704215477 880271744 880853688 254400073 547287269 531716694 614543012 430686197 786077827 110959336 156870206 636819358 727135513 7955997 57270682 824227345 984858546 536258729 675252527 311484111 317936989 899759681 974764343 316650551 620043315 528551129 972120963 477246687 490293391 714706364 940208747 480209489 964964715 163195100 492012453 677263830 953558799 965995598 978438009 380217344 553829808 494036663 707193622 90997436 565997549 896749892 995583130 179053944 656814549 638168079 643767049 753364448 957874332 118903722 703158904 859352397 934919274 813210420 916987814 82488232 132741375 775383065 816149401 371316430 905918547 732808288 983670002 637029570 995619707 636776708 840371810 261308434 331587140 643992180 962255001 384042743 987035438 798377703 804858227 760126521 854731652 927481687 963073059 80982128 778862749 790602053 963295562 166054046 549323729 923766348 937758940 33611421 322829868 812496693 950082379 818250042 850418007 811077232 886925385 87697180 453038709 481461819 699964845 483354296 895124106 90123499 239970867 57531451 988137570 732526063 994949662 296982685 349009229 273017025 821192381 114123944 645194843 911067746 916791300 527462890 705088141 101872884 369412772 786762336 802309962 296409000 601792198 115988509 182244371 201861296 724325593 90397119 989140608 722919270 785035413 363009709 822646626 880401806 962645255 689600288 971044941 998951524 999563548 904133757 915545596 721002517 839597886 842531437 999038017 644459398 744560163 376432069 508564121 679662151 806516150 979755600 999588889 876386968 927911504 498953644 820081305 307236327 829586592 279017723 701512349 639151708 837353918 362992446 939475929 288539378 609277355 340846108 402084229 684034222 905482227 570908948 978737631 269147939 372311501 904394795 934433491 462281350 993082571 282835834 400015820 354208797 469231139 706572220 809236227 691599633 802095781 313149367 668598553 680183768 712327355 907183431 994990966 520659241 887322053 944585051 960914301 572130869 798250029 154521657 604009428 637710669 832085849 448684955 749781628 311325259 492793404 4414783 302976357 616776349 736732847 875722649 923031059 402474337 900499067 188903402 762534448 837046423 983888790 766084711 998000462 371365408 544677543 729643610 810465940 669057630 678503303 154652454 314372451 831255502 928653668 708261742 732072548 938418068 958847558 851746206 946290736 700832375 815478292 869851005 938363953 737698433 757931879 823661987 973876920 696122778 952995134 253823831 674879382 218950374 685578655 374571231 709440738 978964004 994197094 647036329 999427824 612404643 675162273 467111441 754382349 450276783 622343190 72303730 207490119 252955312 632731262 638612644 977125313 385308726 686537471 607404758 829692206 306144638 656108533 937033564 971393864 278448187 975091603 544337943 816160448 108213747 448327247 58000541 327547419 731386395 869807495 953084900 956613231 743029972 970245451 272540581 674635917 778124551 939258565 270032524 319584553 191043726 918451468 765588748 782067706 283425073 633525334 195957980 836795077 558279397 840598439 837692961 897529501 903648225 991930379 374758935 909296649 396470070 643136317 881451060 932744190 561462895 641193822 371823874 446627974 222465493 591504711 472813036 840255002 703731955 942611001 763869897 986377202 459117505 640888642 157115095 423423900 53712323 508557988 870175225 902299261 810628891 832024733 124519930 772434911 36980992 128448107 933611501 985951125 912852364 986064379 659734366 851549763 120945369 124191386 337338154 635795963 932384903 981493089 71026929 282590117 946579090 992050881 453204078 463698286 817331152 877815842 395683757 512837358 675650883 689369311 758822007 911426386 229783397 759663627 452519562 480745368 818938586 931184594 966370766 996332143 930503260 987158877 839704839 910700773 872777547 958608575 204426031 332696472 82899513 415395410 351787245 569196031 550975923 635736493 457654742 748329228 737368712 803426422 413240211 588623814 53718641 183350782 646919046 853965274 620180983 668884241 398533942 821745209 900365967 941697631 349432076 508560834 325668353 373665643 588672662 807430616 455165715 570610673 159682039 423747956 808330561 900601086 136338266 518902708 237636102 882160096 964784709 976175890 238408012 953484678 135562838 865972066 741047474 927368398 396143363 426020595 312738652 943957224 68031996 597945713 794279364 811293324 400118063 592691046 261857623 636938432 848603599 876704617 465402510 999281845 48459916 729282203 753431977 960047040 353705480 386088007 763760145 843611077 952902916 966522641 710588461 760474500 387462833 472967894 350043813 907814729 247283517 626800339 210247239 435176321 41229529 701110522 586224955 792546076 605720858 809553728 683190092 845000614 939388501 959641388 102616687 233949418 900576777 954292388 612148898 641563200 491171783 505709930 349573367 944385897 46757586 95710615 225783463 702581892 195439717 202609768 679694438 834919394 328033488 672610797 759193135 828961315 227384684 490713173 991149641 994688364 374836458 638288446 56985631 344111992 42360047 544865929 246280801 485243951 415754314 532817003 898377641 971261510 347433037 615147100 594146373 811683726 685112845 988811574 591801802 884992313 15214549 784738261 15078816 134738045 188043047 962884802 606461594 991254278 132404894 966539609 349063138 829042976 449934495 739786016 595700628 926095200 389867920 897895085 543573361 717969066 1071086 69520209 379006771 624654812 793506980 807260104 113487282 969586556 920182723 928316395 792069774 997091763 923172989 931330680 965000232 973714093 389452767 581602892 959560870 981553873 84461378 874578299 202429583 757339338 283396106 509386520 261886562 633990012 257868185 844399485 233259319 470837265 378125725 553655925 636698142 729721748 702842504 757277501 723514249 930674803 633850638 704222272 588056846 888751918 26190499 662477972 19449549 623994437 850447820 982655525 764574386 817370771 804079793 842186128 565231060 842442893 84121255 676241837 166305555 284658569 234396377 633686413 537648565 911200873 868108609 948737736 40198953 604388395 311004752 314695849 191803617 881151615 399287324 980202578 25696648 672046358 885762153 912958454 621758479 717533204 666789849 922558504 563250325 735790852 746208800 980316572 351186715 933929906 306808834 609080820 268883096 747674057 332568307 656656016 855742202 911754501 662671294 949333115 207455819 782308840 789638965 925767257 794791724 972807916 765152442 853492698 150206482 721828715 237656332 496153800 584974992 834117824 754521512 952236088 763348290 869806672 106842815 502220212 649016067 801832251 84314126 90010625 715579922 897267584 890313104 973794283 495214608 934872240 443011719 913628060 315355008 686794351 951033297 957733732 471080922 515134346 148428041 415691228 51589429 325901275 384314675 628934102 289437048 402996009 511855240 768487026 179153714 811502454 177310661 226261430 180629772 406325865 316268374 661986835 211325951 716640162 664699976 986368246 5604486 569755444 108721686 555879124 576673073 726204093 163759564 531422704 849995447 975049662 21361590 982927856 597968032 600285245 467647815 795846070 490541460 810636542 547241136 619229850 72263032 940067773 51946710 824813578 782411677 899652665 328763022 866100808 16407485 304239720 252661239 976636411 341301595 545385721 85960711 327510563 656109810 986404399 692803040 830944878 523650031 757989040 964033986 981132829 840328059 845657421 509866281 950447466 533134781 766709468 924962239 931071615 726648036 907817939 30605801 421035124 97012649 930155891 458692473 608425863 839324018 935331251 77136615 728972110 35267358 723567193 872420674 945397941 34479104 656056023 805108329 809741321 343659385 608802699 754297983 851766305 12834026 57369415 126720969 952785532 725641892 878246822 236583184 465799528 486818612 573197138 428771045 674282922 856770061 967888372 673525357 813668696 582334981 690543605 121143073 529993171 370297223 885638786 273977974 572514309 715543819 862920626 356168499 387404046 240326073 738397217 344123559 457119060 209624783 995312135 307377230 689133179 846904928 877070600 802120491 952815104 239054012 976755387 993468934 995475826 813921096 959988588 748747928 785524883 684168750 958947799 297055659 541493606 82039449 224585125 572545023 921404370 478385662 881366204 99957536 641715159 366240581 840537305 662761016 885140739 680283183 901413449 237198368 787035491 798491631 929573598 794656220 956421905 819482443 981896659 353245827 450382264 913614206 976000695 48878572 410713811 51921498 726300573 894359997 901260272 919987602 933202731 708002539 986051396 197491500 676607222 76850217 312807854 954356872 993556879 660414217 789562187 431280101 539051008 111210957 487000108 3286393 47806777 40050553 62614308 996025904 996965525 19650571 428259791 883498968 990822743 426819010 913077280 407001939 898851055 269849747 594077657 117626226 508891887 929961029 948853464 678128313 854895346 736917517 764015451 84263841 633967780 218000471 903125476 796198406 832036194 992970643 999892461 832020056 905832042 699146720 708360851 31725797 365119700 79487241 516304555 537393407 944555552 826199731 889968486 729457785 784918702 618587009 941951742 549680777 553240429 779011517 831901984 472108951 735320385 484685468 638174502 762794392 802659946 329051940 739676587 492179070 908424701 326240321 557347567 947108786 958034277 358622000 864345040 77587495 301745689 645294048 842512466 351871574 464339026 451054063 513546908 583330802 937235981 141343093 307752058 361671017 735972062 293997211 351927657 641584509 960098325 233191607 406581676 924418691 971917136 27846194 632409931 462791792 991309556 175937264 357220315 102161937 442582350 478704243 490389726 989278943 993381947 957307046 974007166 20426092 460539486 911385901 912560677 982379555 986662694 159542625 939064202 519477565 857237891 867798067 994514181 702547196 939538456 261433592 994262135 282712920 535737523 880764890 986101336 127772421 919833800 869617277 967264192 930590211 984222586 988932576 999534848 344822367 433391466 996305435 997592001 241584445 342937197 381332766 398846629 202456410 523477533 299591804 729305972 136666999 986010799 840138394 993786777 436842955 757648254 822600486 909011678 93379365 472722684 923976009 928718824 874036696 986327235 151014687 660226266 30677942 554985535 950730369 963916939 555921644 935138776 708193808 984071693 379646027 879412083 886637328 909905676 978768357 989050549 735861420 844929440 756130486 835815507 142901426 464794954 231546780 746352623 325927730 337248853 965698893 993024774 385922867 859881999 45194442 264977676 408848542 878439239 794362969 887653301 961082743 977924813 410568061 518046506 420834225 678615976 784558599 951899149 589292339 971321973 954479994 970708629 312295314 932753195 966701062 967977551 996434711 997305084 893703455 922185291 637210488 975188674 871686166 975841894 326857078 481693935 22670519 394164844 922816832 971033261 644200319 999222418 128491991 196752434 401833747 670738221 868921507 958646491 241271178 796156906 274442361 873316808 915021553 984856641 761417806 872300253 849613231 887999794 312064578 629221702 547830267 805176656 26344298 645725681 630275948 794740815 838616847 992929123 845339016 930094889 960332558 990429837 614563326 917337513 477622276 871651363 141861498 376138416 609874407 670523365 637293091 995762450 517094331 597744505 839970371 886986744 63324657 692213962 572134860 617598276 392411697 444448533 34451077 733847401 45282494 286708323 881177958 976658079 700177350 743002807 160566588 841681643 12992849 405280764 747953772 822394799 510906003 727172662 435045602 447027696 523792233 964579349 181778465 947756535 748298373 839340799 905585124 990420475 689239159 978423187 546865142 655479295 181263035 256802789 845243619 914750277 918564107 994667452 938371713 978076134 311679070 939023767 686020048 784151250 169166992 828693998 254451439 682650764 87059242 843803632 564124019 595389404 936472195 973599344 262300956 481030733 511161496 624671583 830441356 853710517 848446281 994212308 23370598 296321978 923527699 994280641 611600493 827589531 146497109 899551408 573411565 843001009 661212571 915434743 486642779 601137881 213288419 625847579 750425573 870662703 196409546 528364264 562514963 767252340 110385917 235869468 11348537 922000145 303715542 987858946 958809551 960356096 443665908 776832904 33758120 478361912 509140607 729713895 293314788 496350681 224716377 730228481 42664691 914727108 387934181 463433449 577920850 956955787 617866530 743056338 27551063 782070958 487041914 517636172 277451277 710806759 326434122 650911589 281384815 311920100 613016735 831222244 627861181 880341496 168752354 244591073 540979688 694954579 891707819 919957748 597627651 797099509 961868328 989227414 874193413 887760787 739363104 765852017 872605877 889463401 863036550 867890343 967597681 995187911 421074451 600176569 103464799 743029244 662620656 968041962 578426865 647034014 455120267 461575400 781876211 857070852 880583487 883051269 242582886 284467184 654835770 932446052 409847109 490518989 381975963 665388686 222977024 585522840 710599761 835040867 861323854 937518674 583045622 664133761 994073492 997334237 19460961 753884131 899312248 974197156 540381669 564087758 590213117 961410149 249867346 617369645 7890484 732133052 486795470 630797949 816261738 905428109 85721390 393777629 702303290 727351027 999438116 999538207 958144530 980211204 623121949 924819414 64326022 668036887 329054310 955825962 613093935 885187302 962680812 965573260 49282555 639810969 673419839 992208357 942745115 960106997 144596183 648766959 350218804 368359761 632794962 781287070 252152740 617142685 263054084 445469578 300245885 401091469 683169952 907110567 575941854 949962742 676408375 820307826 880672370 918191028 980078170 996171282 22351285 415440497 906776632 981668338 127898056 894752150 769282796 829431655 285597504 454948482 32047461 182270834 438134642 899724377 167302373 522825664 27775797 108909442 216469308 774020362 443476286 683941034 601526822 942699002 612443485 972525739 310007519 435083937 393648449 761267455 752344446 771899196 672465963 997691563 128014858 350665251 604052415 715387596 564234820 621785888 871026605 990991957 828209472 992870506 320182938 779460518 148980111 822437540 20464992 170947217 376616744 994189701 618865063 958361356 800940600 810684994 217024850 803775139 296369824 993995858 194625315 599924475 25469840 868421275 772849191 956839542 221327331 382261895 989367006 997362984 308619584 313671992 345966801 428384089 69178028 892044251 626928616 904004042 501528737 992278108 563969079 805860918 689190213 734747238 566220494 954713524 611989963 892562622 287579734 755305051 497188427 679629118 708354605 876650410 983626539 991692435 189391344 664433326 855315332 921697691 731296479 750124238 290283808 466875709 887409804 900817996 599787530 882991727 221973870 426433643 146722799 156603754 600401737 960739903 939166113 970161298 650510357 998074167 779822668 853945434 475657637 560933826 99651340 128847089 633537306 809314389 925114220 950627699 831599143 915166224 366060624 702505684 673702037 678512804 472558072 589306600 128931021 874951926 310857405 813553686 763197961 858928717 483152432 943909004 105269584 109151193 651061531 997027231 11947303 322086313 715637301 912341593 506452728 596168923 277594990 338051565 139317482 716618423 792083625 961540268 325563710 698463209 779046299 819200894 27523709 514141938 621734412 937305419 614219147 971894169 608866493 868386896 612912531 747497799 78096003 195477150 528424483 905272126 442641001 533342444 578954356 862382754 556461018 562518132 336768976 350901498 165579054 851213941 788945954 865106493 834426670 999690823 920180980 961098483 718929488 760503014 540070311 750023652 126504701 304900242 490596470 790020159 491665864 580724359 366559642 460723521 178519203 596336322 460015816 986448128 777632361 930690673 787611231 814898650 876607408 948006297 926247548 946899082 357335031 899521317 855560450 927613084 100341595 611284385 448096363 648726627 652242997 785285847 541397747 852436178 808977286 858826802 245794545 900877210 995665538 997865931 100599583 293689296 484433635 591736840 844818439 966206749 390102219 545699134 498121435 840376720 631040436 694688813 211153617 475603441 921200701 936226019 348579264 469721188 832477671 863544617 887926627 893595774 225856625 879005483 585465685 731499918 448537205 902720674 976936102 983983288 437653212 735734812 811849701 924697306 378769180 390990307 415851997 684846526 81400933 979391309 271316822 908985168 592429967 977138542 414537678 660066146 609933270 650559378 630837899 925799949 920154402 966028022 565503684 990680715 572860955 984938172 271314945 710840030 148683624 562681828 150388664 342062074 979836261 989293784 486044351 551614092 502794183 526091677 784754271 923281791 175412868 518338499 768535472 813484616 425414581 836203436 178682284 257201318 788088105 864932231 180510417 941982016 993398188 997562049 305207253 854350953 933079757 976612966 689209127 835438195 953222843 981209614 886493225 926865487 220751734 393893730 170407717 602757543 808737442 962322151 328340123 744340960 848276262 999139685 828892038 970468131 534170212 658698403 632976390 947830501 75103844 191082481 472045878 947329602 509827056 577690318 568629357 865035820 269336896 562604671 516597039 528734182 108338140 835046224 670542911 960198043 553659400 920405109 890530359 963537943 752118206 827914510 941739344 979561578 623880143 763769053 482339639 972674281 835531653 940227856 602201902 743771742 241912777 291596462 148551655 503817298 749759504 849828492 889915771 916483142 831202726 948082115 412621728 556729141 287862197 999543445 756936956 803493863 540623369 913039201 109533147 340926986 327919121 906868452 546726593 630422313 965615825 995474574 523436431 653002509 472253213 818919064 446433066 450505035 165030435 770638945 378287571 857316489 626370097 710930540 428612530 768522916 121403373 229419381 557718637 968919701 736544764 869657106 890542766 964956988 682907297 907543701 657744304 984776615 978762198 983501400 664697415 971766330 545317742 816796890 439694464 699018513 385529941 736473680 399123011 851219229 344487716 440824503 793003664 880602385 338199986 997953681 785747009 948433427 556305885 572281496 702108841 792485796 11703717 763435732 662626000 912969789 926538953 936446921 403770313 798365890 124936874 296587580 563155575 986280038 857285875 922496818 488638505 945239298 97595874 553551277 367898614 613522912 486106611 732850226 535648530 717937270 237402683 888861180 29560090 392746901 121988179 622587188 988066716 993167722 950557203 964495693 460056499 766195702 30549774 119106365 971231818 973756544 122473507 756590432 783376502 828587527 570501845 676001492 954240222 967447758 300803378 342840959 53650695 160138373 481414728 482653959 506991738 849429068 532141579 682087401 785521024 944995069 824069084 889763836 688620094 756016730 373375912 497826715 481112550 587132932 520256049 869228512 633527825 727076327 991318214 993014694 479859960 929885124 183824986 737818735 857968693 941200033 996765764 998787903 916728186 982747189 578025400 974465469 298160628 982941931 128148224 131458995 518373337 760771686 97629874 598630657 969059117 999488146 725903345 900346829 595021086 826888885 833750569 994854110 986855446 994722945 450698149 847005566 238862867 506044964 623834683 671971001 769380826 907743567 581649551 685866907 579771903 740110517 662420280 800031607 322073407 986961028 737301620 966991045 475336980 483654532 491535527 648593157 657689444 869537778 448850238 818735328 393187708 805635666 550583864 605426156 261743356 680334768 166889000 538125645 258346769 601388014 565883753 934065013 513322539 836927497 716319178 895167832 728728615 753342643 900978515 977346732 563780549 670277868 554534748 850868967 40922904 357141182 452897310 758899906 231664857 838705658 848316477 997445432 696267802 877097432 746372044 754028832 884150007 885625624 493088539 572887977 966508158 994842857 602754746 986426728 896806325 934815558 848472739 875782499 658763400 810107286 911301119 935611273 237427605 993281622 105318686 599480439 33981317 624281591 412134257 555354946 487616923 768466764 895652825 938654110 809849354 850267240 986498792 994051990 391782230 400018684 294423341 839042898 754922593 876033410 10229392 620952025 997005232 998974725 100809174 923332291 295520296 909161369 479406013 671417308 677191123 753245104 461928687 609577160 108867315 579900479 827761519 890031635 615280210 897242164 544580392 586494626 723996656 975582202 653799736 715194020 232258597 325592126 520874707 913637345 154171746 388364996 581753263 734524823 566711823 687805159 243232998 334441405 39400146 295407688 299249957 699069761 333748672 374965102 913827795 994267284 806896938 918121272 736093886 763420592 907241503 974919920 419464071 913920608 59056096 861089232 441072394 571483002 774155741 951501728 697192473 719341846 314444696 855233648 235416173 715785599 680382873 762531243 703958132 780576087 442982534 445764829 570981739 853815156 309472335 843778031 974371301 990616343 752775698 847964770 681936606 722942363 111048626 399707879 324484925 793306950 345806211 662096883 776868839 840290553 487993747 890252633 230175359 825230355 317766767 413449637 57947404 981012719 470571136 933847769 502731222 958636640 269150646 389886900 755746935 827181179 667781247 781808308 880582077 921627606 228276864 976631843 684969920 964277114 440853867 599036512 482646332 855845824 767622673 954334766 301232716 941111000 864055796 866424654 436151812 550340544 148917197 196107117 208402124 830816071 125628374 165251461 244477106 900295984 409771130 462144192 708540864 721555484 11950269 335865725 568235609 793161708 717226720 881106442 673186030 729139257 479018553 754258215 523833183 834226313 821784664 839779947 225229073 836893952 992389090 993619068 768841198 993450688 184360813 313970429 994022794 996502448 646373817 695253803 101429804 514001842 139872127 411262691 11505330 431287198 733043033 767076796 115298418 178782683 567017180 969120461 827912551 927953287 362862058 985317609 728650817 836371223 368390794 994346899 103445874 149273503 925468885 960929458 733716178 960347002 646413229 729092671 91052458 130490530 173035505 695701394 992517745 996410525 749419568 762646801 479556217 499508171 883661594 963983903 513162209 929864837 405170103 888527778 408805786 817016732 574933262 619879605 18899697 335183611 303294367 445188226 431059190 683118163 277273246 376366709 115554644 631641090 498405374 558369484 749830009 855543399 953718400 991268806 956805803 977477457 35797255 80809565 803704700 832876250 966994449 969958712 809884522 818839907 227117167 567368818 160240656 985939424 223888791 800047707 185393250 718908609 962025606 996441844 438514647 536303855 169398002 842106225 659847030 775654500 864263154 911283111 37961869 479650088 54632471 322850051 150828756 324391881 40714851 846821787 894144292 995358595 346797943 551431100 848663247 850617247 257138448 795297471 960113930 998556837 536118741 991408120 4283915 950757982 959494869 965373972 547516704 760209962 655745164 968721461 636191938 718367291 906590317 973354581 768723463 831807210 112830299 591090070 747717767 952550210 331088816 578236362 115541056 966358749 749353030 816608853 671405508 924343312 796533704 839229792 43514569 758937017 651440397 781712051 805849360 933944634 971226079 991798646 151766422 613833466 865980661 960485349 136680463 389881235 486766243 597218700 173176071 342652926 410832716 815671264 364268763 971663114 84939076 631225713 406968719 657910660 169338832 603969660 839794285 888134974 939034094 951131440 798546517 833980619 171225715 417084824 47620833 523625979 744495257 954716307 618108400 836247271 919764467 997202075 795893092 849509828 585116715 719886958 876346653 992291915 286485125 684541577 320906052 400402939 78373737 547598407 798793765 907022119 205272099 523590382 954885976 998938629 510784763 950709604 602495167 862867156 457747631 651385521 925225013 953906796 153178842 205543743 372724232 433322169 723658630 899671436 497534960 977214218 593964263 673162788 888701285 973198228 628696659 768718806 285769981 817978326 417174485 839859708 65198583 344385125 117843364 572411956 171498193 952130942 65561669 817091082 215808592 407072910 629349776 970170757 19735892 206604368 372307485 715182965 563240607 689465368 487370659 848517730 518010033 624478900 474346637 880391608 317211001 803066627 607045833 659662984 978406772 992693428 538402592 992224194 213992501 552443801 890091387 920617166 220301549 558021341 805571444 813768357 819660587 897334135 199784974 505098813 194348863 722016972 178747332 323645971 386510218 969157783 716278262 913515567 534126708 818271849 618848617 815958340 914401456 931953750 963219632 971442565 139390550 361267640 768097289 910647769 52671772 901982448 747673164 847700096 382718352 728390734 595303560 712937285 278345912 693928945 260430067 742533897 393253952 914189134 892772732 923612251 165861467 362617493 703784948 705100361 151512177 192101428 919194335 958376888 129955531 313476121 66047607 296745120 724335213 862003115 742397293 890781856 326594906 769575048 706051997 720500150 55748655 560171663 606114584 610866474 67639939 513344782 287128364 736135535 104948245 783849864 758281977 785120299 386108003 572352336 787005844 929005329 503374351 778022236 590171085 717637467 544947891 631619877 369432090 479024225 973952573 986997658 644673856 806945811 148238220 449143945 591236753 701596859 596414382 927873604 379635381 847110550 150697057 852391616 211590355 358491152 882223247 916665202 515529180 892596518 593840652 759124352 632533413 984228755 91678177 528836732 676529038 970658413 810860425 862289247 326182627 924554974 247850778 700971727 979306253 994276175 340389123 377519604 180672052 596216200 398072514 485497802 798799704 932896462 964012551 972733835 85813515 686570510 217677399 735553926 639928975 729262894 800931173 875866253 572932260 628009726 333677955 600407216 927504527 972584498 257970139 763228570 376028079 762017270 558326151 964255981 358378084 360094765 372730759 435746455 254198589 736161554 653097271 841208069 380351554 586653358 38799731 948140015 209941427 975839527 258266427 539815377 629018702 666029034 929169897 944991672 64181540 921103917 47283526 278873815 541272665 832129535 402886453 890202973 398789893 572630171 197461121 486189365 709147152 949490675 493605840 792397069 23084925 693748573 699131673 941285431 9374587 807725308 471772994 861196752 200554131 962620736 184847151 788675358 646900475 967551164 887579318 995362073 988598332 989519239 7636246 491372674 46953411 56502132 844280128 993558227 839013533 925974195 616087461 629451341 93331727 269852466 511860382 881097879 213513663 883290611 103782901 453715513 742017201 880380327 834673716 996442079 566858676 752922057 34672990 65499437 14578210 236992365 262456131 441161836 215754990 725404920 215224893 498357116 654279248 708863213 487052364 706603151 584560274 817257298 855230594 977886639 955492911 986820170 39666491 304211169 104854787 733405047 621057811 718246760 833615835 959095114 953906458 991504281 771180971 996851581 663356304 758395176 905661038 935554036 803221903 907134353 216278589 457238453 463021524 760034866 793616536 941465427 55222372 298301865 831002371 973218811 449306262 483085837 327876358 525079263 104020227 460239977 128142478 738137388 72104343 990880913 12351101 302656726 594607022 667724282 29031693 92894353 186959363 724013237 350055683 845672711 858649368 931543619 920727728 951974301 308843481 609190007 282477993 678131781 187084703 339616223 716997386 891831178 512279882 802009546 658609747 708207027 260477005 492764304 470269855 916297661 191994113 923958003 208654906 608060803 868438242 889329230 732938086 780764991 926800493 948850306 399849842 951477622 725962665 948504366 482617469 775929569 87675158 220994887 307520485 914408144 988267165 994887828 419150884 674443260 789878072 975026185 194665217 845102776 23819798 691623590 19837063 341473532 723450855 896602161 417305138 979158924 645035197 681043244 269605229 730296773 654215795 712952149 311326938 345490209 938628016 966277232 682363188 996252329 23391057 485489031 36610541 688394887 693413949 732558715 386703110 630156795 901253145 989504377 242241311 746482062 413366576 857327377 601058652 960529507 43921370 459518482 537742269 973059925 525972213 741370736 375363344 755926028 829418698 922901734 258620342 303040200 533148373 648468491 857423367 877628663 58149059 229480473 666413358 999165520 961661637 961692693 820686249 860553101 81586256 998893062 515063587 910293668 684179554 768939801 335795801 958440943 873906032 926124228 332602166 478354728 648831332 933093313 34520596 521022714 219254307 644761533 225997646 854710599 819688285 958142174 117190393 275654119 616100764 797626483 800824816 944982176 842760864 918043912 305317883 729905459 759939263 917638349 714251056 853573752 741998610 920945378 193308655 219306958 164425672 714079838 936954656 993363750 296419847 719374348 909990218 968147616 989894710 997227484 309376748 717875814 752196996 881170391 936773211 972044779 956966359 983164691 377452666 921064307 351275003 410242430 391387331 489639413 490570018 890769232 71327141 622060252 77346619 172039021 2828409 214524815 977508144 985034493 536755048 608577145 551560957 845295220 834538053 915713420 793884227 810054792 771292065 937592445 40556925 777170662 753517743 841173379 489218267 658040283 691551998 776645404 386267369 723562394 745936881 890643525 939360734 970613184 715538470 971285764 560074540 775178427 80895709 664599013 461755302 678431233 51400001 158225087 399376968 631375751 714112563 747227901 57998163 640161054 853032453 884029938 286431990 554790954 804169364 878882892 450239675 746587902 967603608 970897952 833429379 913502778 421019506 777044608 445694922 658175357 835962472 928049702 531106805 807901811 369240313 541786447 533813348 816093012 906756634 978179810 523078824 810359721 152314186 565437398 298276904 802132942 206008870 917070861 291428326 861194971 300983734 810767216 880743053 905549938 619427343 716973127 72962160 504816288 285140209 679684662 836710207 868803512 764537606 919470719 312040332 418808397 444701253 716235381 885093899 995185491 504148610 513104187 324659831 904620345 928761450 984652141 90715006 494594165 431387507 965053470 514777341 540935962 584503456 895591646 772156830 948156340 292494454 374168511 965659644 987088750 518878333 897126849 654556086 954054203 949323573 958963141 118108542 494109469 146841350 356204378 337918098 529842712 360461362 401744685 837958404 879376945 179735262 280146299 91355629 788438375 671671457 906726437 569083783 708603603 685217752 792178878 755598729 955013382 594222153 904370374 389643435 983526853 115162189 920910092 522571383 899049975 754184338 848994713 561068774 731337704 227142656 447771365 235601867 900651120 5885449 68718511 78996784 521574509 680475635 682022377 985548185 986481344 111372056 509004186 176565546 619511870 333725996 595614681 371141641 737006137 661736862 824730223 506773134 884924945 37757921 802707458 836213308 866861738 542958689 734144025 308459019 527013613 548227383 958981915 104290322 702095496 691471868 952773257 540548402 708262035 27471575 439503103 921547699 962123977 122875333 497331086 97159339 465987238 435401356 812470147 106416969 581102282 923108211 943011861 139020058 173641771 314177485 760444058 704676528 822334228 165750974 924425584 230234426 711188465 550306506 854914848 922008528 992180677 121819689 688280404 739945784 790978068 890582708 942837359 668258250 781758382 584308302 646449907 64328431 721475926 872182835 896677377 952703758 972609573 916184468 951368192 648776924 967735728 576819943 865126768 997191274 999925925 408631753 441468261 91631190 97813824 551809972 743199449 69228552 863015459 397575630 737742116 202974018 405720838 757972419 845443843 704454713 708200107 498365510 662904094 853397989 916995057 727192447 950806437 126091915 535977441 282106685 491903066 662356691 928196657 999724259 999786941 255798626 568375204 963074667 965032719 144751757 265059104 704621151 838253359 665855396 778916079 99657932 760288977 449292758 986741105 762768903 847240174 722701535 921265380 638043970 894427582 128617817 601293896 234344183 622994040 919796971 948308297 728476625 961916409 220074989 762017999 581444233 912389303 32304175 890118029 475729080 744138997 82721959 263160384 501582195 836718938 849842831 978523219 942036443 952561366 758970827 976502330 968865560 998040218 12791298 833341375 786285742 976151069 256710581 975196412 325567469 836768213 880012625 934708081 617652872 848288997 148564070 158926882 405749309 490567390 386282974 862768136 770366268 836718405 124490438 481697424 877517783 903731070 32920560 323277603 824273377 916390260 420242997 994698804 89875668 863749695 398053316 426430880 700629055 995540572 542910087 545629626 470240454 841893784 638744423 745453693 347163188 574377137 9562544 783065806 352034029 758987924 931545414 934281831 958180931 994166246 571264703 909214534 474279275 876262379 870651501 973844137 874466164 891992214 657521771 681371046 701046704 930621623 677985189 893005471 606843136 756100933 316570535 889724174 560402549 831146927 162935876 581987071 798758645 962691295 308429190 632421942 109546170 945952534 596923202 933379450 172435368 716342279 208289831 550253403 469909582 755134675 222174575 303097392 68203322 581144072 180312825 587833380 133403182 423278362 704130418 899586225 222304285 811495205 11068737 853166128 233175192 964124179 907139716 913922920 631259112 984559500 220384980 911215236 849322729 942541576 356276914 866655556 682687226 738572928 431570147 585695927 986885098 994943694 312034395 487809608 845912032 904911738 259458341 912822206 892504390 964539305 761219045 891741859 423768815 657809706 79638663 656732106 84803751 250411266 967407939 978983340 151455695 223717863 847751163 928712642 584236537 693442504 604060253 607740072 516057752 638017476 265669898 817562122 331801904 410563627 656281600 901558546 439609434 801397348 233360597 751176637 789229224 976119731 357125521 477205224 513230446 827723251 951297796 992175704 262924576 859790939 575880501 812715936 966614587 984309313 728712925 747324948 145603463 372439160 195858317 196498406 903574430 916171157 449933023 601186720 512042189 998706447 888346446 928051339 731576237 788561919 377332053 676039095 675234739 727045787 926774464 989151999 476465116 492319941 41267032 697094709 280712206 634494180 317909256 795065005 115196945 770150997 151588471 756290156 85534175 930722320 313812941 647213397 425491849 864242253 383755957 507492863 740769210 943704702 391254831 686283008 71960899 334568189 819799367 958607021 703058880 907961382 101065939 389543000 747941134 767477802 448681579 578758297 310092566 897031959 885477454 922295726 453374621 491614226 51457268 327165911 360916524 774913082 285302206 562031054 413595397 492705150 9974962 841740508 617804491 841595800 972806212 983352589 332893515 536402822 119968168 773630143 297494495 546187114 438209998 735760677 690913204 903807337 51059712 551193819 627712044 756330712 810806351 888585926 363543847 808835750 622756446 882828200 509537956 609363916 500620822 811911698 137434086 146166198 532568648 883641667 247979898 950274512 760186851 787455838 53016250 373287996 238909959 795245111 556904432 698831695 424548355 490582081 954957812 967500771 560617513 711293449 611321902 700418375 539966739 961668250 134314844 777646261 410889522 920239485 560841478 897452423 867901616 909390151 848674664 912675329 800100539 973943901 868504959 952911789 209550537 471613675 71011238 669613994 363907862 687427447 857727012 938713513 617341074 794617476 788483397 993758493 719103447 927048079 568471720 916721631 918516762 933224864 178324183 258199787 933238030 952504914 232821867 518967482 634499344 799978788 437527015 999896069 458841533 897291501 969111111 979314872 683422767 711780605 626641502 940501619 306969586 808974062 66183707 87692853 45799996 182029303 90576665 539652130 8848171 840842063 502567704 931036830 97787984 670631764 612084456 976308886 580859641 686351615 504467816 527573517 757102098 807041634 727606262 891281569 588849166 847271017 329169035 899685881 481272819 554192104 708334746 929965734 428555766 655141397 673630674 715849252 450459849 554109912 610955326 620403112 700052502 805187944 655274637 753674301 986283176 990845446 180874587 217352542 897109805 997027073 5876512 991746310 606639652 902946312 916794461 988790200 142063366 716141374 737129884 902850019 151543762 874810193 528223343 746778303 742191759 924265336 18253447 288821015 784741115 947044270 964857971 976478288 442714137 549126924 670445420 750216685 838606038 880524940 585973348 605611374 47211068 854339282 120749062 594093425 745007677 877470514 57760630 246388216 566098960 764786537 831689036 920840113 379769724 941932824 91819488 641070239 178728409 488424436 233251899 626037922 855542729 933441635 153220570 853571408 53630193 324861874 338869674 552640064 839200089 994272418 820526317 941187178 922206010 947034130 231037951 589843434 744408067 937926000 226540911 363532319 176150139 432480624 50467839 696670241 652670635 837085756 378428172 710753575 401598377 994545972 155894590 484087398 908843953 937441291 118359922 870389761 678894523 682967809 92765689 907156188 831631038 842219765 684674641 943631698 634657806 636702589 465660141 625902792 958345328 985799176 106457805 484804774 380846757 771196898 302683550 734404782 169775182 384528246 808647319 848840334 203078365 750847581 584440864 881527128 734354373 749804481 451472473 559106199 376791989 712111564 177560300 744724329 777472300 905202286 555067392 824008928 749874681 994604779 786314609 806850571 95804234 893485803 312210947 557574965 299940410 655740372 979766526 993870418 141840497 911898980 579778591 633784182 684020128 894382308 631885418 947365859 615737432 674077712 675934641 794409912 76477652 84869208 877585296 959307439 594061982 767013403 842651518 877829953 805443553 814493048 453079959 553005398 455796873 678835898 412796072 915419055 950421569 982144927 736881354 803116291 397826108 536324611 955981908 972253049 960314038 978891925 435040031 903368671 372998431 663731520 125543451 252000804 552761160 815069908 138513603 616218847 192309460 828602124 760485223 938883017 181513507 563608069 720055826 721071520 322340515 748635717 431274507 888198004 46490117 823138619 810813165 978425155 922619742 968278562 577177266 965790973 414922527 885885272 735429741 866069887 439768127 527990945 296485915 577889856 576028915 976841416 340168531 635866166 154993202 920978061 750262330 895765703 578014546 824379166 397246135 769185092 263359333 644810552 741048620 754602614 139216562 294194589 951536934 991543139 614958626 697666590 325049189 954616633 799628913 972826281 913767250 966606359 869555534 943187926 623321627 754249930 245834482 296291808 968850042 996190738 78704551 471273263 401904050 591909200 360356475 818390386 991545740 999828487 540012265 556185008 99099328 642366075 73237757 816661198 872720331 945959652 158678994 495965680 61747466 540331213 182680044 921438740 369479269 804333339 22008224 80747622 413598345 625067587 959979377 967452446 636500034 767120207 903795073 950664573 264203119 298154952 198015628 995035225 215558181 533610746 703695177 837018104 307646611 348956344 696227517 717343969 520440347 735388124 362419963 548454053 702444889 928907321 642935851 921681058 211426149 928742019 655310964 773891811 717841703 980865524 356869971 888440058 440410018 492737011 37816071 875289942 123997815 469615021 539761365 672080154 257211424 956113760 22554834 798258325 972691541 973557211 928602573 979778853 884279532 899170570 535910397 973475070 691108141 782107333 216542148 704621011 873370480 883990180 140379591 398638471 785836552 850508304 592141788 840072138 430300385 469655978 758286143 974314109 890368547 902309143 236553098 276881971 620066805 683043789 849190138 972956850 782981252 923323902 348195444 894201903 928089934 951261616 200252277 244391171 505905145 832481968 626850757 684084010 253685962 770764382 307703505 838517554 163852440 893562248 120646427 637864565 898199294 913262859 172178809 531658093 402749416 927915391 608488221 794301860 552358346 821689109 857776173 906806314 227675900 232750317 443976358 785381491 927394218 962046087 693129587 857708893 122873923 766162508 804453229 838432217 749183055 961310201 420672046 900887097 860464038 867857193 204190260 379166460 81125759 601103072 455936221 876514403 209355553 743034845 2876890 595781857 794204551 863197216 747224497 756054783 781561128 867887747 433398463 618235354 247171334 607865507 278618333 600816658 659203549 740134401 921904515 991775444 83057005 723541144 29561553 507918815 483157322 719508667 286002453 337017156 465717172 481027814 572763120 719519753 540836541 775355074 47270981 962682938 662925804 991313485 504864113 663192038 94363231 972522471 591463885 612206757 86222829 909576585 251567006 531760393 477845520 637031467 192582202 913662024 638642131 900419580 566027390 595040767 644291327 670602770 329623877 784676592 595724711 612985238 452307508 934614128 457025955 683735119 563789825 816495774 34927511 180669702 223824113 579126765 796136848 972724834 295222371 899735894 545942690 609625895 263765485 966653252 906985354 956781932 625735940 844904430 897613778 972429211 901466732 991072634 87714754 328879297 605618077 839468909 330248708 560372440 478958077 781666396 724863633 955958511 368253271 681730738 258303644 716776471 83548258 93047357 840355808 960609419 859867085 969473763 539239878 692636147 178966093 893555454 362073917 370219216 369668870 921741140 388527923 624817838 697856396 895338425 848984101 954773613 477946160 888601048 575739334 614438598 645746219 698022391 847105034 946544294 910040334 978932383 332911665 607234740 323868819 853264417 530516999 882228412 293473496 845109351 27488625 263706765 141894549 783012085 575335230 686597223 316228468 933600123 196022655 505585200 808626359 963757960 567849561 701085482 175421967 420706240 623176019 724481631 948241539 971812779 44471128 597185118 939805188 947686340 279608325 654590947 308040917 472542592 29883616 35573312 72036708 518697858 427320498 638487797 97142901 390326545 678367440 680664537 900820927 911518145 437668261 540040090 696583654 722148300 344678159 385370237 247948097 734996899 609787276 889763953 647757754 777231151 867769048 998885807 982877446 984843843 459627854 520865745 968911998 999637340 810998878 987346075 961496413 975628808 675323962 927077507 637026071 803749041 9338367 806154790 778500986 984025392 868858600 986428522 158552966 892223078 497099465 535848368 746954743 989168722 498803969 698700801 403979635 481146937 32534592 930370161 981961611 988467338 558954955 986512057 79553376 219960763 719171470 858375281 991354571 998373648 760864529 870984286 521287551 812400886 656015355 918243544 213626274 909932229 360192684 448962792 576028635 964799938 894534877 898808487 269741458 705967817 511702081 766627957 135120271 937048707 362068846 576647000 2305119 752041939 190970599 741284503 293962861 651332129 287254021 419044111 221970563 771355842 745205508 765846108 874373845 899519147 723062875 749625081 771687963 890626386 400616642 831351297 165252886 704639375 939434073 969913835 360540643 610224100 705711516 756956044 235998489 516531597 41995433 98540042 300914145 489309479 477516673 946602301 333564780 590434310 605578313 640556331 427526085 634622525 536866800 541879497 92545761 826414916 467122977 624780262 361021683 396055169 91069040 488795658 863768745 901155811 827032 420635337 293576583 497490285 587506026 721436925 314610990 443165123 900679009 941915274 439347914 852733181 881408083 906978383 963640011 987406398 904403666 952334061 628975243 774620089 553395120 661887569 623691459 960718747 741488406 878142192 689521782 787460113 382951261 439991952 17490238 134481641 29103388 50950851 714590399 947290793 22309123 273270553 309585745 932037063 125434247 545137656 926438377 996704619 782676583 829355354 531258163 648756866 711220753 723699895 181335050 896584424 726490244 961042137 722919774 975731665 661219655 740218121 642174368 782272519 981534878 990872160 786822700 953601460 513294744 545834021 892436206 906381714 323226958 848989148 834345413 918119700 205088918 473712274 714398720 953413039 537621011 683868223 166237166 751053338 491996954 880753435 525298259 950903379 828229980 880160423 20126811 925571017 564968276 649299791 527584530 569080154 236869358 569106500 665622493 719995199 204604576 403325826 512329338 953772585 958231009 996276312 236402646 557911935 591367092 960736379 500409994 846174791 630473598 675580563 617990692 900245397 402295767 909166947 762557298 777015064 350577365 481719205 915320200 941496338 227466162 691864740 802000307 815470032 880136440 913928724 774572758 789799639 308997245 953499096 319208814 916407393 127875782 766915866 166207492 168251625 259051885 371195104 151152384 739472345 873971643 967114075 476163171 911628838 675829102 945482983 334350995 695365506 495632754 999207464 199424224 966116509 746231681 826007023 316342572 688685382 831685365 942913839 91055961 768144952 238377099 611971462 841082692 994046961 790941959 884361056 572982377 618096886 953153321 965893563 91750168 396974289 156099135 987505569 629339643 840074436 969073830 983767384 881220774 972478413 223719962 823277330 729174220 770410872 581382120 726818391 405455794 440517544 125422394 882740088 18710969 372659351 427151531 923240461 850741076 956875644 84373155 545243322 783898659 935534148 145169678 410495183 549902967 957219553 489250270 597935941 46321051 754065885 969041062 969492911 674968455 961337734 503072153 925897749 924434269 985533815 32352846 750255121 430549326 559233463 542032979 987716041 742738923 869382034 509223097 779699260 288749077 576130995 589651665 649635110 543940649 991846618 942446868 950919745 421175523 477481723 437290195 524017551 677268901 713678948 915960824 977199090 313824215 381123185 555623079 977517783 742522481 860358322 178240140 795273045 881020270 945213715 753529423 994605998 436684565 575944298 483952754 977399311 427325472 553258414 13666886 835265240 664702249 826042785 704761981 978165563 833541807 895504416 124351674 970928703 745883114 924123940 179453203 242017195 277241644 860663834 68831179 695896989 744623245 787137135 169250117 981416945 197818586 822723576 885544479 971958493 125147070 314446694 552089145 882443788 908473749 956465860 298414593 547473726 400524047 931672901 911997076 933529838 260858045 413361070 725804841 828710610 791756681 844346418 238117468 728804877 265623073 692677717 752871501 863807612 503251525 795458931 697844759 936272152 226973713 436260773 315321381 655545545 185462289 913933666 351733759 558299886 773950007 808127619 766924983 934619015 833548683 896328799 218184020 569991614 228407820 951578540 61266743 139918402 342916565 890082310 239371853 497549411 450927690 995445053 469063586 628987747 49166589 478283008 877094933 918926185 152513677 525597837 676268628 920736248 264495728 947277054 66254105 241399422 426326208 998736920 764100029 991173790 746506619 782364592 2570447 667308234 261755727 458214915 820334299 836793880 956345463 991323435 872607846 891286248 244889288 922822921 809950593 835931476 982322178 999464146 530565029 997392532 683993362 809137834 157068765 233568083 195915085 255920902 183109600 573586683 57172286 857564723 776268683 991901724 731372390 912249089 451404327 796726144 303838785 934745665 665090580 778455600 469907080 814127187 175787040 575338344 116738795 410968894 787346288 938206616 406269401 566627945 32459956 302977831 94246017 785406938 812832097 913729609 286374495 967804511 533536810 835530174 451697077 599497575 690838838 694158490 310535385 766640663 954828746 989183940 736278019 926543317 870329995 910535834 222377190 739670629 248738735 769158723 343367648 814359917 899231330 986393829 64397072 775422099 255009795 635909872 709503728 731410709 975597774 990251304 877286935 979670448 810411286 831117977 67333484 758079982 299274922 435769083 682999553 837785009 873007940 930358667 873257029 895068575 923075639 950772832 47188066 598087526 287985822 344631250 606012387 647620689 461073658 819542702 857016320 875415919 196818024 439392588 966574855 981252183 863477140 995934874 697904256 718704526 881490261 964492511 364583000 787771896 440421039 611742316 515048067 949046582 453236101 885481965 422510464 767977353 966549792 990320644 119132 292070350 144893991 238954297 270126421 923609700 975912045 984700871 100024646 570667447 68555846 655894314 262593095 726055502 71629794 450662377 605564269 892286944 648825761 762287061 766675969 898477498 599922787 880560993 586215628 895996153 948970696 986485406 856643917 930768353 649220135 814546393 209376759 578881589 612329125 797589475 473432642 581961372 747347626 821008331 7365093 665295476 983201756 985584944 992532884 998004504 918306850 926964057 259095235 621117791 734404800 863518318 977855883 996969653 688731792 873566257 714858574 887751228 980399011 981763269 416493671 485636305 840484446 858734086 961994343 976368563 906488647 924047856 863090991 977962272 592279132 973662142 337645787 985939468 458517069 595391334 253185959 460589046 103452369 230313912 654217676 961101115 491465871 570770723 31027459 551999307 416470195 604096713 347964709 923732456 511472179 948157415 164972751 731351331 298154641 636724518 9460238 463351304 172694099 794494353 401914274 780561498 782982671 851853948 489634990 694927350 384837307 482248831 977470135 989181294 719310301 751757966 683276106 874792946 536951607 900970490 267192924 797780134 232238934 286976900 381956267 512344842 65072582 408621827 208371341 821587840 54846763 439123034 246033219 579873297 863111606 948155526 647832177 780128723 70413846 621025100 135308945 841382337 277925825 908958721 562164794 594327478 235108533 333528264 455111695 688574798 514929013 973487957 307563354 484073524 986606266 997015504 258882743 526968026 151994088 787697820 182141849 841880217 711204934 866369091 588535663 917420990 997737174 998934557 823001183 883757087 112324052 619263257 811377582 839692835 358729523 998786945 342688583 470207674 454848374 524442229 96021203 489953873 430109780 430220705 139251907 409218690 242752720 353772119 499672428 679543004 797515098 941727589 881352530 981141531 47972506 732987030 972663224 986563582 991306684 997567775 911807554 966210940 589856473 683105054 27765632 563359034 248425243 638072995 499135093 991077480 566574422 764230700 721623572 919407736 297300038 557034912 229025457 874464331 395104541 900667523 635984359 783611380 708589627 770073552 338515468 834108718 523377437 832923005 508188013 983916449 721090507 846466548 882955594 976565941 950112501 953270976 762209325 908548115 907660551 966045057 813547496 831824000 191258311 705629237 562686469 860494996 899591312 953781247 82786944 291644928 145805033 382136305 920701667 996593676 895524604 912210653 336576568 965613739 538348816 923064558 546566764 955844018 135082979 992241080 720144730 872807032 194016273 349672255 831607216 909357095 605976434 937035785 58845808 952754323 624676376 852371797 462945364 929511505 912316818 995509435 176712284 421285812 675194649 743415853 521493621 838827907 257052357 805029181 986306546 991457368 693988842 921381524 459872509 652191654 547349994 646436511 975818297 996928782 737920995 820701740 453969638 491145046 317085872 925767786 878126495 931499520 583205836 833115728 295128861 933730540 387143616 764062145 890331912 996643339 818489612 888529536 943352572 966121395 978346880 994185478 726419348 952702751 611975474 731895822 942070654 954179838 22239610 142940817 21019532 738911061 769447901 882517527 155920423 990500720 846761933 993254840 768312287 925444090 386555625 453468263 29052212 591740903 737601819 884942069 644841003 742389535 826743838 975820483 922035884 934957376 518515462 653466355 112834021 644714575 718196 628673356 706388547 911567848 213453184 599351625 788542062 907115637 269847939 359203302 650490684 759662516 663036362 826572310 694694248 735062896 174254072 431069586 198724511 614972682 743215591 909333721 21703630 679964175 352747324 424800026 692777185 953836277 819747043 970074351 29554913 272308483 152449939 591685524 425579454 872660137 820462183 949636793 27457789 405823518 73943255 837599038 560588847 908092910 697243935 749137357 156008916 180182888 722884353 916110528 596782572 718397600 21574363 504526754 653959150 967471317 148063610 357229090 930664458 951755547 970729250 988483384 927162153 982704249 224891888 264341391 346869433 462701488 991082662 995807877 689562288 820509517 425864217 652967617 599901285 903902899 367359027 929995317 204020390 910872011 556922625 738282366 885432221 901447344 561971801 726654688 950637583 976933860 696563173 882295421 733484315 855407201 983256761 983412093 763493606 781235055 192038485 495711700 782031382 845650525 159083546 747699203 818062878 833623056 546683271 744646320 410467012 817271286 277683556 451459415 527357898 769731105 461979781 650898453 842706598 921716218 685244929 910129935 912459962 978450468 630828184 971855292 505702724 892405464 243432112 894576393 386990393 705299708 288121182 671671758 283061580 847750749 578915113 622731027 58759762 178929295 225805835 263069265 621007506 702688782 1460802 185774832 719751975 893946462 119520053 880652163 685752078 735626999 149015047 669961805 188531106 779705134 878491642 886495246 924769718 962526458 814572989 835615243 422893429 968292877 503203150 804533831 325434464 583257156 70487836 485786144 166263794 586891280 671700867 876333431 165506161 927484036 338215565 692314872 668232825 831391353 787920521 795495772 275121919 864696678 706950408 799051690 915792393 942467496 266724514 408448680 210286657 703369758 245246636 542329118 772169345 912351822 100015004 751654779 614165860 729924748 433525604 998978360 200371051 218059144 854724077 859304475 631871294 777497526 140258668 533207622 315916763 344939655 64437154 797593454 812568879 853045042 853029198 931897755 25832706 829797663 572896670 762919824 990167439 994051452 57788634 550276952 703794143 724027662 68487958 468122089 786590505 942923633 849194399 985360264 363296413 673642566 902293259 919210233 857237710 958092421 747639605 863206486 412235751 481487456 799590031 909340623 929981248 960867116 698955216 748304828 373899243 502233993 900238484 967886263 252699285 622273276 419639321 531243765 930121978 998895527 345638226 640532180 407595634 445457938 155695302 666324284 20053472 386582643 597641932 840830076 792260869 850403231 236804951 843706917 331683019 960286429 46579946 615379606 183423728 871137727 450738265 665559231 670105149 804946999 686529115 689702548 455588196 456810043 985942913 996311651 250580806 469977509 331264337 749605224 218181514 915296721 906242609 945749361 701718880 927934727 600834138 984655759 360976830 649334974 627213648 916710232 704619914 861540579 57864956 729371022 595364896 797798014 461550195 626714413 576147219 715256421 568210966 936829468 385275124 447511733 312482344 700814713 490649874 589950292 752251104 814142105 849353432 903738037 369359456 764404654 330971399 746591006 448238209 956337745 525158364 837005459 983891668 998330201 809693274 936795226 755902137 960098076 968193477 993973673 636452055 828344076 76485974 437150140 145982689 808568387 867648554 906888160 621655540 785379741 428592081 430961038 695009364 861637824 897116615 977981834 916146551 936111397 68605123 138176678 985850307 990348991 427537832 814064782 61298432 68870822 434621316 585684558 157284655 170464036 202764997 711531193 497503549 995338849 115523572 974007092 554412049 864825055 427842171 951915103 858640062 924177938 112898817 958680851 423107797 794484641 67492821 891652384 923505661 935260469 527848981 775300044 415542103 929983496 957324512 982049193 194247003 562485308 85416967 906826836 985031969 987344617 474452379 937000858 442932091 686428074 56900061 601728551 703505068 854431924 530878854 619196660 745136615 787654761 802887504 956456067 56544971 885284489 84744359 880769294 782229772 843895522 757676827 840370382 61355998 439446769 821843425 925733755 877748147 943207072 979847175 997067426 111780649 651591070 5735721 165613463 107831317 859049606 394341379 750030720 632399512 669536102 928776340 945868066 990165652 996369643 971173492 996872726 300847113 939646262 759418203 974304349 212049037 705061902 190315376 802627719 5893172 708600644 980643876 996525049 803367529 859914865 649001896 970650111 613247350 742838983 189022411 275295741 960191116 970831844 814095686 951958954 284362033 737410079 540322782 960116910 380658823 427812400 16080222 461613138 553594959 884033611 138725551 186561178 447106877 882596071 250494907 648380545 561806318 585830989 911401816 954284307 894699795 966858226 434318911 697877476 972905321 981989029 668350342 857992744 636099098 915630742 588047379 878236937 771087320 813226805 445396583 753859256 138859852 480374066 867810925 905234573 771310381 807337056 828626480 981236538 884808070 994365248 579810907 735098203 283983160 322545778 630770169 707740362 574218448 981307854 316149380 965348327 437381724 723717564 916529052 991428294 74620484 667959739 384564637 634061153 123190268 417821545 894670272 917946090 176114649 685251525 22862985 586228616 404449006 736011281 574071450 978237295 199547251 924816436 905185582 995837150 761996054 950503151 890008763 898649227 516603653 977209730 506913243 892814623 79748833 821162959 160470166 704666694 183871330 691218196 225359603 859009467 648322004 793328933 792295647 842452644 783026271 852904028 176263654 998805470 773125260 949427296 51369123 533413106 921263617 948773627 570968246 642215030 380130622 531975347 592611570 677500431 587627291 862981858 627640733 920487156 975386225 997890257 609368219 963360327 718153496 789125636 464887376 981156586 537697690 918393328 231067535 553094707 408067706 732056497 790760763 826689887 867608369 893819584 693324148 906691889 671270850 871752010 968834722 997366714 548530955 789916395 957133486 962058209 210364375 515178393 981732325 983598689 434605158 484923007 495641216 846137844 678568876 808722356 518303151 686360619 143120937 733997330 687735032 949586089 601268190 814540866 81794625 141150325 20046470 527744745 167250802 354459159 681966271 967847156 902409042 919853730 431154637 569398100 335348857 882180140 777608802 904458021 589252610 969791110 966607455 970229677 265048879 872590644 793813839 851780313 661157083 903926793 591248313 668823861 881024632 988613966 783900120 924470332 146020488 529534633 47426891 316820705 683006230 801051285 612296426 865389060 844528663 873719564 790137509 847530684 268768984 826663977 702244677 917049226 534599498 956566102 155052690 784178908 917596199 937419567 608707006 691229311 880886772 902226427 473684141 649970184 864389765 958536671 956564653 986432821 830186358 901263244 90718259 612058744 838878881 932289373 309442689 845655949 27940488 662101231 666909110 927668651 155821959 976421663 588265628 726904457 278460438 947504527 137541712 561656103 539433573 726170659 545288096 680299815 186586243 287520942 723407803 899683323 493187207 679756456 803551968 972057778 326046815 773089999 657711357 859085163 804559107 846176956 429239886 459163636 301920670 579825509 652592920 886240865 960525587 967915896 422578498 830177252 958804198 966002731 247661438 946050853 331897025 579903888 973308033 996646720 505044831 606081600 892307104 984897210 339107133 635489770 744836757 770445674 128774242 334698054 711234437 862791874 633936759 854457728 615875639 677840172 207307081 450846366 556090360 880529389 742781884 861484164 537968615 626952585 251538470 348402593 605399693 692956690 158682226 554729466 244862829 732463645 152845691 747637618 59033232 170123705 428795318 864445310 805384838 934903798 139805158 912097632 294560937 749359637 658059323 956184672 878163587 976949580 190026557 554189245 768387562 795629029 777231643 905854360 468210490 967670426 431855427 594874503 935523895 998688266 57394886 313921701 200341151 207880272 747840274 935793502 380509153 840520764 711717738 881607995 795910308 888972342 82904379 876460930 489626801 991107421 422956165 449891726 921929884 973382944 343911054 800502596 830152748 841796056 95366191 922376817 983150726 987881470 675543358 771919998 112068952 242526298 653753164 867859860 259063000 335912317 107615771 134120665 726707620 757655236 760881131 907478287 571935826 984679531 802112999 849590669 199421934 373285423 815424887 854836628 507685478 608324392 564318231 780438965 564860819 864892614 699796634 935640046 81578627 984217166 743648368 813178768 142488068 803214778 632359100 830984019 843426088 850447025 747741306 932854290 958398426 965498339 110527211 680458573 572957203 715536659 888131889 890461362 309716788 343876920 60273969 322896582 366159713 424860869 729855510 971188751 501012467 562609413 547170682 944025493 174324196 859759480 960675953 989163594 437792290 715793572 169343747 700368321 390742490 974262859 142122140 702799732 892104837 993554990 941162426 990219968 652086231 656852119 574720242 682089118 238340636 415323314 603264790 729578484 76217186 817916218 917695687 954081552 543258118 912823723 95488994 261938606 705951395 760677649 274378892 911318412 453169151 910865947 190406684 285606166 260476601 717497155 639630348 989141331 448489743 609763047 341995966 501544536 164723185 355695492 445841409 755228234 423950403 621447636 244669314 869307865 343192583 934986644 354042560 415287947 280786263 993243905 124612378 349742872 76172823 101449525 315124046 613036790 336059946 829721141 517053388 869901290 199347756 567805637 741414877 806608989 549033837 971065500 457345974 854368124 270573286 874104488 354713906 524140514 720059615 968946158 488337054 571677875 975380818 995706777 852975001 915681370 91845411 849604290 762738679 916062716 365037699 587569994 185307012 577704534 969057090 977947576 50153227 185292625 633815157 667911152 266511230 387712115 361908909 440036974 931888793 946517310 323668396 800227305 188756685 288437062 13525107 972668441 41757660 455597260 389901024 460772773 8962696 669537859 249413746 891297135 195485251 496754362 336985353 472856033 375590937 949746595 900625337 927374419 568490343 687673152 301683275 877983838 350719812 357382092 953196962 962102750 251092370 921449729 432791470 697197715 758429751 841702592 146816841 206081801 691875103 744328820 657841254 931095311 503069274 614854007 611901612 927432971 281631914 619597061 811699184 826967914 780483194 982496181 592299033 654020111 76878095 589996864 997124597 999590419 390256147 751848408 670329991 875884543 785024914 944619137 448223988 830010264 175104848 420980848 779693848 971250405 660146809 797589720 533155414 680932993 248899637 560707974 12768839 354086983 991799482 997465650 590794962 610479378 140908839 201564014 502479586 868505510 705367843 744978111 749932266 881999776 544311893 623095059 918930431 963500720 91108184 463001464 328522502 342837158 232025540 387359497 927124068 961970244 149078344 465053527 394020297 851910884 784634250 827326736 639169306 676094872 522396990 728695911 536475814 716300228 958181924 961937115 599400600 774706823 941232635 943625429 617940998 633288235 961572468 986103372 818048408 932807332 281107123 352961753 795712752 999043941 156440181 433152919 558152398 976990550 331910625 995805243 118367269 366158839 923621154 993810764 691418002 699650483 415834616 839098892 292363898 363341712 452244327 810331910 725182555 858694019 366570272 913916041 755159247 825122545 842006690 918118987 756438099 850230142 299562151 898047792 792343222 873574644 844760048 966746274 377174044 614136063 624900511 761784043 257539821 481994045 434750708 641538256 9074317 762970156 960236662 965482602 265217853 651558689 923969079 955197876 352330697 696218937 825337170 974072753 478001156 950735831 735910139 910367523 977792551 995722482 637287403 855182436 296564959 495309737 529338788 860376581 96887953 715732098 368761276 628138372 424411527 795212721 580518184 884653506 234026049 668232744 717665369 750580081 111011550 784862580 717073434 736967123 946269925 976404129 850110155 984944219 800375806 823474288 849944296 856697245 743755313 968884614 603722939 831740563 571450740 847773375 742550906 884026110 850441260 886357437 125078514 374160278 388747604 873280653 348311687 484571822 425519715 794673300 134197945 398625526 158720379 477184921 997422428 999206295 350417242 729854277 905383238 915758945 77430160 273366986 312608399 321662927 327105648 519294355 89535237 483840185 48283495 372809773 367699296 916616547 53017976 436647553 198710528 975628316 480500923 622620717 595641363 615031672 313450111 519945789 970980334 980582827 804563027 954773147 165762842 882358994 555195582 607117171 109889111 357554656 475743623 798183464 512628894 667371111 126956213 536349814 555636010 741611029 71907024 298180542 841932191 917387845 293441535 903094526 294513237 463471955 167018681 485982760 65893615 77398882 445245681 755025649 562796739 945058450 238726990 540384762 300445747 344810912 422099647 653978088 613226957 735137886 796475096 936382452 450729915 753964514 286759545 290643248 598806713 942343726 317306580 475300237 478391843 562695919 348781290 349102184 404092944 897692938 643948545 849377659 304302506 944889090 376470679 957372894 853757422 992928881 295314746 635269788 912711997 949907496 506499487 786179464 144771548 524773512 37207183 248586562 949290841 999140142 209090931 336803956 602728120 714353956 788712135 829747202 107896205 533059704 696154236 909290783 641259247 875859510 815653279 977757270 782514130 931182033 8779181 621059477 341026053 441110396 181526325 778065331 321787919 586705567 22430553 824115463 803683347 949104741 192899931 389369566 891935033 979468536 424283574 563412844 937501640 975240992 41343139 959359932 671883669 796690891 369039596 655462549 184302114 896384830 65805215 908126997 623934871 712195146 996466771 999696316 629380973 976803947 987133007 998067212 546754978 695064380 688766150 959278514 560287147 713127281 12481212 191715309 221565402 696834760 135838082 960145555 831429452 956877433 344793167 894886514 497756643 602627804 152708743 240601223 749227309 820612972 125677193 927014461 380420485 552165111 130531089 895348112 969870048 986102774 915831588 997196638 456767778 621305175 213004633 389474133 405431928 532684116 556887268 858948154 668437384 757375451 636652047 658910801 30982074 925834678 267629843 529161938 113828875 405398522 352469467 743489306 591231136 715205031 767489107 861136128 276561878 660275958 602915920 925974172 821497547 828939869 655733718 857920232 246995774 269247730 301415244 412390465 890116746 895796092 470135668 916948764 309240474 864424599 188566225 662170731 163144086 271711547 138712774 677847960 580131350 902689264 600112739 874613455 920683278 957868026 273135095 521577713 907916350 977167405 483082198 608683006 794364683 892945137 610628626 938351121 256209251 567046652 576503247 603462773 735830578 897124997 545091108 825008241 435069549 976638384 831434708 941041807 701256010 735923431 450357293 987985127 118158401 146279925 146385559 361640263 830280305 901666851 204005076 712206475 386203695 447384451 115222122 136792104 811591833 878929710 298353504 409759431 97111381 882249344 63350970 466911845 600002954 635252562 481453034 507542942 446301960 599924051 803561457 965868903 328660841 622645820 448027644 836201984 409062190 665412292 68842996 504024516 185203386 782755430 949197421 971901895 494362192 888462072 287477332 865884586 120440246 543848570 793922960 886015326 319039490 821371804 121420525 130134505 291073685 938520036 617440628 649993725 628774183 808730726 767446384 961699546 931137537 957882278 200586960 952120604 809668690 993953344 492590345 742493272 358977990 760600428 172907568 530370889 795748441 998383586 12855065 436497516 324645729 653536036 111862998 586404499 37325247 227084393 188723866 679538806 175338495 187419345 10768927 296557745 828944435 888254211 485466826 765403216 140600800 720750882 178961139 479709046 851311006 978131925 414417901 862328100 61099942 533574477 491264112 851432447 445594720 544741961 658437676 898222412 321081950 846579475 547974341 555359737 648611429 948422815 975036164 996515438 448983565 881772979 778160829 801574841 613436715 917115634 430482301 724766177 341153750 344467523 316682895 904567870 143092928 478947301 605880394 753343393 965764257 971390985 839552620 907366078 296521650 638580762 592176139 682961096 304641745 801172455 296730898 443704979 57156393 538944369 793202246 929462118 728613663 909164755 365553953 883915990 707654194 966899656 246004290 678522879 434963482 681090281 574116452 883467370 269924375 433654902 452484280 971568416 872109920 971711273 361368578 680090888 991496191 999652025 160206900 301703771 759363411 984381422 595562692 615972181 591629683 902294431 537944532 819966937 355862569 762000285 998031121 999936454 722050569 812383660 587993477 747430970 234771433 755678236 553006938 966934326 910184920 977287337 781965503 872511090 618209657 772414450 728240719 849319331 323243066 886311467 964496611 965662476 290288083 752510726 100307145 854656724 589498767 687831269 463626108 810635459 618713230 675511307 208264838 350088355 996776242 998957220 520706990 581742205 82114855 841190060 921025131 968671076 603844704 667433880 551752782 631971558 519920082 681987350 936325206 958957262 989233726 996785082 122913979 822249894 677346682 918407161 11702028 324768286 908453382 910353018 462126643 830375948 912414721 926306076 856782884 919461946 437220697 440738534 135073135 365819284 428635799 514679771 55032928 735064442 786074733 951767330 114478534 710737022 789830992 800642711 227598562 817993244 427783967 620101470 842861974 882703324 111923295 253206239 645832619 976130667 101916777 282564526 147729172 804230179 203945534 279404123 518566679 792276328 245224574 917941504 114532563 512875039 157299100 321646833 455018438 717302819 931963510 970763829 747109424 810181190 477393672 624982574 541276307 898321040 326345583 645589627 859792477 905841431 277442143 438639085 382783326 487002150 581692538 903624430 843446930 955090706 841560480 846280046 879332052 908013251 779581347 896802315 264898231 904870685 340661916 863115088 408326724 474864918 675170949 730249251 768055654 801315272 19479684 655864339 870374978 964455241 132008303 525976043 868975979 991677611 548821177 975858941 137480153 370878521 112877238 874169746 775573339 899890236 961358058 985917712 782105526 906410257 3085312 122797010 453643787 620566162 46494547 256846105 960179951 988692656 160425549 251445362 990556456 993409109 125501308 214744862 137222934 200059153 233232444 243732729 47602577 133330409 859211460 880352520 423774630 890804509 129320752 776523784 330011068 808797649 206640903 575736046 598375528 675905363 15350736 378755454 950105527 974404396 144051628 624536230 369693338 630085032 658892321 695908360 65311312 220710388 323398310 454017044 345415456 732306487 978490179 981277051 704432268 884991562 246485099 862557013 375695750 653355807 263069309 392690416 985378340 989009209 901753448 921285294 178810231 808775428 241050792 745845072 366216327 700726513 302273314 639344737 20800258 191899465 649057235 685132586 26736070 60041846 992629270 993668265 30829077 362476326 749957686 955703182 599251629 664733627 233333108 268075027 732617149 782635216 397978504 451678363 857323531 909187017 195508467 983542407 67496477 473108362 345587197 391877643 352264622 609565413 89606452 484907236 716074361 992155483 646613936 774898460 584963349 592368375 437109992 861348157 42343447 404909267 270576844 844369652 539704738 981422408 481766107 933898628 156665919 769200960 739303938 857098235 225234444 788499447 621834474 825188215 323777643 562509184 227324745 854552358 546301958 801335919 105818622 781980597 478757931 865122089 177462616 343866465 149223291 230231880 754161697 835766462 276735780 583032825 179708180 731669857 751670718 888964906 897821704 999048985 225734126 383272900 903824516 973567554 329950541 487068922 196738841 202126073 924922407 964767987 6409868 771019700 814050050 836319693 211427526 251545142 803619719 926625958 397897445 910318119 728151974 987970686 34065185 928268642 961475455 981043848 990515402 997635621 706014977 910723341 954281297 970282907 382215989 836997922 547933056 693994426 639130312 673686448 989728790 993986854 724366396 771461028 239183189 918790734 144081181 631834821 35944367 975150295 698601705 814815414 509452412 710587652 277419468 347234368 843231180 889611268 188276465 729867572 854264692 892456179 648763567 823302821 522143388 962718447 455674651 754969093 715763785 972707545 812710337 910569226 142387431 762421223 111218276 235597368 755282136 775417272 705500562 761056937 429216 717092305 461720595 832478248 545528026 908136294 709869793 883557610 454413774 841913833 669742662 776020240 744128970 889573433 573920744 591104261 162996163 543303932 329619831 385293322 557945546 573653966 668560977 834955017 651567961 747034304 132056764 531851799 195822026 642152735 642876051 767091978 90523216 107066481 603247512 958575867 107739772 169075667 169918569 335571276 976305030 994855780 73343308 662947113 249176944 250159454 857545228 950803631 972147823 988038251 585328666 906261218 304184386 491473003 790757792 854702919 309618440 719745906 631862680 737268801 442860189 466521820 653712000 800459144 321564471 537506680 239034081 606280155 358475436 894509889 500159949 968559487 896527586 935854652 887796503 909878720 289247389 823367747 693805549 862367425 775605426 890378873 721596056 830098043 566340984 879754971 717621021 809147427 968224335 986661879 941798522 960086803 261867001 928271312 701420363 886615239 83559753 967607271 73810151 270112757 692307157 991181820 499152488 523144395 135131487 377042526 396123375 880148895 941971024 958605600 556843181 938468886 966991394 993909863 606915368 999724554 220665129 488744713 826056574 964560397 357363068 362071781 66891964 786928140 623022385 946715622 920942951 999893226 584067861 952739320 998662983 999518439 412960497 528452940 183109941 819688054 530709995 722423791 565640717 602029780 875811013 982305862 875116884 883600458 867268529 935521630 194904971 318722491 705986633 861622345 520297618 990632208 700873477 736618502 337484035 421942774 784850749 936525768 527543871 763061251 454634758 752658159 401004787 592117381 23183086 416571800 510687475 890020438 657562281 698797425 678569163 796921994 97010597 465502305 309134968 510001670 407700980 565526729 66349276 487979829 258087145 993866309 91044245 595974479 648280339 988548954 338479740 484434821 388095093 452613225 930375816 978272394 540962622 802932608 431258333 929382997 887351185 899715890 980377662 993988654 586134265 989160344 561406723 751697976 815405520 882105564 127201514 366508956 901073124 953335646 801068790 812138413 662483158 753925532 635427155 912092242 433349385 746717046 96647509 200727218 456399781 994718540 762000536 863681703 278711986 882717388 323693053 415598559 840820799 981276827 110636566 112188373 988078137 997940446 192756732 971760053 326739205 560352498 879177506 998331565 619016255 837982006 532891155 945534103 396967944 835217761 937949982 975636825 341119681 740944071 824526477 845593437 139222995 719397937 766757617 934297400 811670023 900308667 705857259 975592917 146173652 431499863 158233307 616484094 757074349 917016693 953387973 985149358 773180447 897904798 370378361 958221706 700101127 859618996 115406988 999027543 186655809 354317871 308235730 672508835 34932806 448407242 107688460 282543372 24668934 772617552 590669322 766902562 330878327 341940226 863784248 918499077 217222131 463152842 999170791 999469106 580413212 602532428 226143402 814308012 345539697 815938858 485366552 772014732 78203350 785181322 968207496 984530572 654302615 776369928 220017937 414240665 253749849 937014535 758462909 933438699 508008827 609425815 979441096 987749673 161413121 179739854 298688310 707192921 521674070 720317674 481005146 570522237 469799619 691433692 38198451 944883952 262309745 696704339 359218658 934427405 182118024 229155458 412605565 549106700 439392072 762774969 942914039 985217844 726601891 798932891 201185326 487129220 465071028 810685379 647720366 719267662 338497387 865666026 314005020 662144601 512715860 784076849 530894456 908994423 389303587 558461020 458487785 882678458 792952782 862881482 52216122 798448572 568614182 768706620 284623619 586508201 872168440 928145266 300787729 311811153 994737717 996011915 295276783 960989550 60326588 742101627 118276606 124296253 942692988 947710481 675860156 687847030 602422413 929199568 124678226 434202321 573651245 799704291 956827671 985178845 347583782 778090347 633722416 768552839 312166568 647018450 754841329 847000413 870118530 899650642 894966429 975181145 874509550 972922075 986884099 988985650 718701021 743254697 99866301 415863726 558853827 724198944 534130914 983947647 871088851 945080514 664666242 833507106 701370518 781813754 875707341 963119936 411045503 595970256 182967841 676742899 749128694 779037493 561538341 833534379 672541362 787630955 748829541 872462009 47599196 485077879 826566221 890239231 4178359 678347118 470904173 826754848 56985806 536048804 447537075 866043866 202035703 580207274 769388668 983378327 854769751 958945587 2284689 115874458 641730516 952836718 982590384 994286964 793675051 976685638 633855 628380898 875446565 991448265 233390075 816398267 413957649 712006256 571599325 916440475 886128117 936688194 87914934 477116231 877440850 912397138 118188303 727388498 600742042 670211905 140111823 687653544 815128031 958866434 163999264 217513574 700138586 819499118 508578137 726104772 673210870 927235475 44208270 473313742 661199722 686636618 90781471 615240529 838622818 920456464 746282250 995176844 76269524 232796930 748168451 963189544 309336960 631200215 433606465 629963703 677069633 753740568 162843853 989765554 967972148 981886154 222252869 823772221 388231587 580594675 265296461 756214197 223167822 391013381 978233334 986207839 899825534 908815466 590962417 743716208 374029489 746367824 21075909 882777652 552015849 798269125 309965472 508042964 736053351 986896117 485875701 770549400 585343286 629651623 834447559 955317915 355263262 390593218 161655946 610557978 443928224 617367854 682057201 996974432 380650019 387318008 434855674 796836797 7866870 328610444 600422026 928049207 298651221 843416247 391439664 931629988 433884591 614014917 443461597 470436880 598145307 941492075 279546988 321412754 531663662 646981543 559685648 927590929 163512191 791704799 767918666 813008967 152956402 614063542 149496425 350053147 67680719 568763165 664516213 687591260 24880295 347955138 757459706 875530838 50125034 902329301 99012339 332307560 263405706 630745784 227908237 258139579 943044492 943743347 42048714 311636021 432085390 772503247 605851761 640271065 564053675 619380226 530817807 859458144 75147164 266501465 441995168 884939822 183768253 348307929 149840569 404617103 16059347 405274704 22427812 411913319 291295147 794407903 56706434 343743956 81329419 131893303 812530716 863127404 210754542 455913856 222737886 283133375 168984850 812253655 412140105 663767841 193135278 521498973 929382188 997283698 177922101 293549483 570371230 811395430 640729535 696584918 781167105 855542450 824518640 911184366 354512536 877804349 703306711 804876522 797929129 936830613 486589911 643098951 889463634 912262489 26272791 732343699 392054242 598533313 765626400 972447932 480202161 834692184 334154143 571206554 850257414 871900167 571482286 934596379 913869750 987185323 963671127 993574823 62356500 840838351 33846158 987461109 836649761 971449892 937391053 964917312 26885175 909878958 689774089 727140546 586836850 862661632 162385570 912380038 412840337 722018047 771524210 803602496 404464282 979592854 496061119 505482507 292109883 460343367 476271186 591011767 33617719 127019721 781274536 915638867 62671975 327002044 160993436 813810207 827920315 973361741 354570475 641124305 266207423 529559307 110986533 708645187 220306316 388332011 141518948 292100186 712731658 817204686 8302722 516016479 595788542 930585939 66058364 686035801 480489710 820368739 588219076 908262071 304227837 760358546 10101727 639801122 965363014 991363258 360775684 495949992 319273389 451222866 883149438 953568235 307087776 322542731 770855929 921757147 25074029 863188673 379285453 635247451 364122540 848938038 695596797 802626861 24976921 341430297 824578095 988945031 743701702 876317108 62440781 331064023 798972222 869843557 997296160 998787659 761689584 863983089 518933508 944398272 977162433 996284222 64768649 229574807 189240450 819143579 845742405 913069599 222272199 803041763 833211281 875275677 593766737 923982996 172367118 733878516 96735781 601220942 717989775 940108598 818360846 977606058 862133072 913786754 564635167 671356346 445272268 592624995 682963599 924563581 942134416 999881994 319546194 353432320 528366043 886364064 742992944 911892245 662401460 773225221 682382197 826021961 867988675 982642721 66106913 128396148 37936627 653974175 320595557 881614488 725662237 793197469 931814371 964549393 226355086 953563757 895456827 979053085 350718622 795914723 813979626 818788840 896887932 981521789 716744179 981995872 705085966 856449718 860169677 962364244 164297469 495494939 221594610 542330501 540527098 761186270 697346738 728758190 413027509 570250738 730225837 749565697 565727475 726700789 781701478 992189869 408663484 532341709 389164286 908880555 901955304 995023595 547320896 829862800 303745290 347039029 673914691 679670972 555169591 779844798 608700621 755603171 668377180 869778038 925924920 940065537 470953397 803947393 744264607 769345821 560748407 974339088 750522331 784061356 334222005 586906197 871933465 882796770 145353245 710026284 393853338 750397697 847859008 961771821 231968574 369975340 799184402 987874618 125580923 454827369 575287304 584393007 275522455 510656182 617219200 947512242 255349557 295331422 382596922 949800882 207015672 854957050 170710981 824039675 279794616 721544693 214514741 317910282 517210450 854205983 59205647 489779998 832225245 930527046 594252839 641024016 832451215 971091741 650437260 782171497 230176180 511088632 588543858 763237998 452279796 753826645 552951007 922891519 774088389 863336120 760270751 999057292 532821330 536682515 829129780 878877320 892019674 894148121 566695882 847229349 341490526 454011250 850947560 957643266 62632154 543988457 386837384 670758553 361122083 808146236 646579969 711729129 391458185 594046320 832653038 941917200 462284616 509978284 288551905 667199503 899257120 923366412 24397648 44177038 981545067 999272085 578829743 791597862 120684383 524270277 931295125 996573400 54959181 945903072 291632069 346427684 462952912 702231117 274652133 384919347 334007880 565094329 370998141 572873383 45713492 260059890 418810936 603804051 557415512 652092999 227664593 616490518 884317305 967368173 875205464 899888544 488844641 824854564 898764486 939089131 226327383 250858117 693015445 955097727 509243616 867308296 9555174 285807588 283582713 486963634 933954541 980350105 720411076 845429318 803643154 830737074 778462004 955772030 648506791 780253244 734532125 847866149 128377895 453421470 679396096 788522465 897192530 948936173 752410732 782192673 794714898 943058396 392300363 771639881 495290305 565244937 101777198 287618130 869329988 989563602 284215629 957999012 327121746 488024201 733396136 819723239 616360834 723661355 173214288 626151766 929123041 956913355 313106404 506337650 427772897 653706728 663017664 753048557 36683506 334402494 320820797 623039521 341907962 783836620 242543240 278984462 771933389 837615543 527552020 635730010 944257130 995239288 370916889 614051725 623304395 666421577 878554435 907472631 178958005 354584804 989335766 998829720 263493151 482973035 186090411 653726425 540690135 807168382 703271556 837684622 400439570 809845202 528277230 749334129 867379162 896506569 849038301 856355599 945700875 965522058 77247598 729665666 147883117 184240169 23761642 175133248 986189666 999882915 557143828 814467042 457291055 524848314 853240869 870038663 340014428 632029438 526007497 868825001 397102190 511329348 942509251 993857683 566865299 947589196 415328519 726017775 696885006 815822198 700241216 920852431 682802292 929151741 991247485 995657529 39431017 309692965 582345474 979347203 143591308 449789126 700397448 733946343 39358007 193267124 651418335 740250905 869215318 886162610 101481532 171138573 331050612 767780807 492943943 828817908 403847692 527584654 888351295 947336800 69393494 452986472 343652473 508452185 527359335 932588504 65251462 938918512 36002667 713620886 788165848 848767738 203670529 539152911 542549443 604140348 828793668 917628843 700242163 739685340 52407301 768481192 421393828 761804676 542934748 715869273 445579067 652300736 711359738 811958645 299413602 797713321 409156438 987483184 728048271 945906579 587396474 707126424 435651772 652488273 213696009 962936660 205375736 519958752 506012991 673605052 19041729 549398737 672448289 921391434 205574221 466398141 482645566 924178128 265075023 910679102 661869944 768664438 362515646 642210052 343262427 865338432 787346107 978032697 392147758 732107969 896969394 993766227 985595334 993542324 934016209 981171480 613296793 630238240 404744894 957247330 882345492 942717227 712545268 753326606 200473657 936899054 318387372 333838932 958915949 970649595 495200995 747901294 43124399 660881919 133515327 172611102 458634807 595746534 539386896 879215758 714808430 962715238 703080555 934652464 900078488 908186216 673468799 717184568 122085528 496372793 911984915 976671612 380761530 655269210 501952899 505708235 767400158 993603396 660297395 761026859 79076954 577478957 167736658 170304240 598060227 756242049 182987442 251771958 24191210 500239240 168612519 600494085 314487286 316039691 634482984 751832772 930227633 946659131 173187824 862552208 507698473 697016722 515045850 985798286 85297715 688173836 542812215 651313206 955061984 966430408 274359539 565325597 242729782 739794926 386555414 664552645 999902423 999919567 148151257 486994827 886860732 911470178 528764027 743341158 428107885 733624797 536308947 961180207 848131705 939392255 575274122 962410172 787986205 894006356 158817298 851429245 834502035 933303217 507818036 999519806 232475414 952331532 614446205 913356876 744284465 862103564 161464956 184451242 809108459 980214395 799123600 826207081 586799646 601428794 444531613 808282466 270062807 652917016 289089688 307943589 9607911 83695497 800429569 916560080 67853109 946275803 591423787 718960191 463159671 874490533 913397182 944758043 164794804 260610183 211623820 307907954 620754840 797679458 476981261 881837265 322179148 423536381 384082223 497432272 741732734 828871839 465242036 772859676 270725845 644712928 49437890 533639016 5384420 692872782 447360334 710131292 942711057 991268359 478844217 533632771 708716354 782229235 116963508 933224923 84552491 966468538 822703159 869331648 650946676 776312695 48470921 490867186 739152919 780013345 305573824 328548313 344618118 571690003 38092855 265246311 778870597 999754010 628316869 968574943 138646808 493857240 115688775 548376293 103812257 559637101 862671465 920024619 507511948 875478205 765339003 801572428 761499644 972417759 327093401 812611343 662864019 865975648 211287228 588853051 520157303 816447405 46702094 69447861 134938905 919040625 932781045 987650259 786529152 999354165 386533033 865253558 39916411 851792549 898758054 902582794 340327956 647144626 455673310 496264013 746165521 872160694 976372174 977856149 376888304 747590184 228302211 502379244 303369290 572035017 14142385 861175448 105320479 899107531 577284846 912736962 279911406 581123336 293251496 525251369 513744373 570238297 277579427 898252376 492643727 697620673 141721933 556103875 97010625 733866117 235336031 955168932 888069056 987488378 81550751 396078912 765018496 792814117 646843450 873245320 704363015 807765669 671061591 888124022 953769361 967999944 531660598 558776272 95658387 927481216 53156735 941992614 274386340 572559221 937225032 976264755 375297382 784972571 603496533 656574451 706479460 929342028 346777233 748916445 394324387 778589959 826828942 932968480 547518757 621644636 392219239 890030358 146601663 740240720 444538276 534631930 59407728 888979812 128963982 610534520 149738701 722834060 389030628 475108921 95384956 375375946 396837331 882463632 357499851 721107018 195134226 412122136 719677020 989646550 956691455 989014221 585268105 795638871 589984819 703635759 902959804 986997668 158926921 850355046 594532515 931726637 578212815 594504527 942032436 985682920 800565006 857984407 464384846 473940477 686397275 922688898 699794128 741281032 814193323 855705574 765394370 782303827 874789690 969238605 545202252 561420815 619241308 810965239 961708937 994010205 75771564 743175202 44549764 176950714 361882401 677804880 37453315 337220696 781495688 869958016 649575001 869048201 680161205 973382250 728133264 931410401 291183662 496605598 746349680 872899921 675778823 722496450 994142805 999242659 998404921 999061305 432486842 772991976 232216205 442746133 402205158 923997668 796164002 840945330 27560848 587527792 164322807 538948974 961537820 968045746 653733160 714341836 798738106 948189072 150746229 362714104 716604381 831318657 527480915 805656723 607276502 881367056 107421175 109244940 506981765 680008874 560105316 620996841 350000227 906600785 983275035 986321861 456028897 840511423 327172600 737388908 490000519 812340076 273132239 643376253 195204724 398585633 915181617 952306526 429835760 839700094 96347482 493102316 873929827 888823982 218133231 867957039 232421500 426644820 18673418 980815645 884095613 994235439 561570700 953015438 613537576 732823205 404467479 458312642 4004508 569724881 549756995 821503601 919265757 959836806 129648719 287785274 729738115 822652060 654327672 953201116 355339204 770081464 377578916 555357591 195783193 451373628 383652797 704062857 361945553 531757564 260878490 849221603 81843105 365548519 677611624 771711741 104019000 985610110 17928348 535093059 967176481 974794673 57928344 873964969 778525413 819651753 817251276 898411450 98828540 185246776 820248973 868401242 840511984 982461724 782458959 898106405 868296389 999904972 574687966 654693732 669925662 951714130 3127150 330875252 123912801 601378503 377772702 900275946 896565277 940534659 627640523 667779492 335886372 436942400 75416431 931101037 151264949 421311690 401652930 607583006 326292672 827227691 161847237 680360798 280068180 904967077 351017061 659860908 701266543 862873390 77712582 630985936 519603287 969917453 336538330 977133750 615590505 833122552 929267913 982651851 366523001 755659244 986326222 990164604 338332905 416869478 14688514 636820030 753310685 936106534 169301989 396532164 682172239 843316257 153846546 253040486 223589997 516596185 681676769 714545471 454749971 716125123 297026657 413916985 680435421 788890976 481323822 484382481 761392777 953531709 243795009 501908129 533971825 725364444 270781791 433139661 73866633 159283818 155095770 271246963 398476061 694999142 332478776 618794529 261887530 629338666 242516666 286963492 173942069 921303196 278432584 347410264 434327268 825438144 473115407 583095103 677479497 792546927 883091351 992777424 57754877 514349850 879140978 922523227 680943026 700534632 809589775 846704516 135065591 641503897 366332504 974801105 181568320 762813416 520098309 678794053 474376655 967840719 365534773 554905300 932260107 988613542 977090788 980278594 724072476 743517315 956976982 985999753 703120194 841494917 311548929 719196936 471958816 992521498 60276863 462296044 286693916 877082541 947426168 949128751 832647011 944859313 406547294 999078950 335460678 869327871 238826942 356165881 836998597 958062443 937586255 988885374 372449771 484990328 319435810 690109105 676587591 723620932 265704699 729571391 169498297 247566465 892282222 970285575 130694682 954178816 493118803 720575759 401104288 904094602 706805031 814317489 171437711 912551585 143471737 895196829 756872340 791727363 814966855 882917324 209692325 481627779 13223026 452037991 817040531 979844029 241530275 404179922 421250002 430920263 974920794 991748363 214152404 814767118 453546235 742299865 914914642 956219576 308682720 830419249 432972109 523132414 286073356 535558057 798776004 967881653 962229404 985854188 668894185 897597532 806881840 862338262 540304120 889837724 514616443 836178143 545299988 904907111 113075375 638145151 587540587 734004356 302638761 694303567 42798447 109852371 183913674 850067270 196122825 968770510 159816649 180525204 57143734 923665574 561230915 761492993 262657650 723654582 329954426 426405537 470786466 992312544 426520594 864286897 1576272 390887038 941307129 950541227 326179927 704510684 117828439 323971211 970981308 995468034 179910317 295685327 696985250 789382477 986524843 991697300 6375393 558152778 507269451 603129022 721801641 848148509 366101338 774689105 359485586 481324045 181490937 586412907 54770869 873852184 759673458 771825213 223252990 348065021 810806439 959940924 627163488 645463554 234282211 572710227 340461808 734652001 937171862 966912002 179985261 205269101 220787993 862213977 779346204 789287087 514728899 580693879 474079288 884152127 12763139 263298308 221316101 621994148 74472958 170661202 573493132 909977407 164098607 365740039 127925338 678888225 485835167 970822622 819943189 847956478 441918868 527889971 837599324 973611066 976067074 999807155 695367486 707104843 894159120 919992288 345076246 680469369 654263638 720696641 124151361 268169845 990943683 994095181 868992297 983351241 697035038 800013841 563770315 579702791 292772274 710283972 850831278 920512402 938883289 959137263 405032479 622358807 943974232 963146799 78251084 932519889 549856344 772690294 348984258 752413319 855616817 951835040 987205039 999019196 799909752 966280021 63422885 172590533 527594113 997472497 474780923 500626372 821995992 949881212 519420365 893443419 342570687 918397953 810817524 935451971 541598104 901050714 495705521 695047327 970012619 996184830 187487352 549456910 550366000 558052094 8235507 167296026 44739833 860620440 50516033 997950064 383940274 801870318 40111171 976408771 496224324 549683641 598115017 620254268 400426598 404616468 504205306 786398410 737622955 861096401 685496146 690391603 544262111 643759481 656108709 956558773 503685849 556646319 395343900 732494237 910643308 960839059 588117830 640631734 16657140 44531794 867383156 974799184 536728831 796267235 653995759 918351406 439427853 963304412 255371644 844656477 965453219 981073123 333503409 770642817 165062639 665981793 598745157 650649900 810491977 978154301 116901443 751993630 122268806 666527208 248548207 958108989 116523991 667481483 577182348 777425196 455517285 918683871 326494152 564711446 624133719 987393087 844669731 972035102 891438768 949584739 925943259 948452217 429263949 904020627 478719140 762190446 215580802 553248992 169463987 655561742 600298692 693683550 233798177 265996536 749305819 888692485 306924184 682054855 73113066 770296688 926136464 939848303 416190452 674114074 817085790 865838014 530821697 716690125 454067623 688237507 459599768 641963614 485569883 821050152 309003917 747516109 656379647 821046301 912949060 919478810 883452821 928327685 529931877 614762538 992382307 997384525 485757682 938875946 81314680 201587453 328987352 410751728 65182814 408563070 531928972 720501046 282416189 361744513 441157368 986224089 415382574 936177078 484939209 954964770 687418034 865782706 443540713 948643721 93628184 319316660 522443462 679602638 177229125 727989308 223667530 542393545 264669122 965731580 105119457 722128786 130557207 203562695 423382478 556835186 685104772 968977751 555850880 756641230 421231345 438709195 127920948 211500070 141868210 660018574 50443085 952253235 757630926 862164201 482300220 594333957 231812897 773886549 787484653 858847878 656270970 766968746 351710025 636200072 164235228 417603323 389307778 463934098 113251523 492466659 245664750 924608821 948927132 980365877 121958867 569190699 769346135 911183309 545364034 815872903 366792671 825923431 248319328 269865160 365691869 504946533 889765869 963457136 496298944 736061842 263795389 403229015 54811327 149829763 464920483 626211983 789309442 825895040 630651090 693012511 112116791 519555794 395641595 693684625 563491082 991258173 24832813 183907013 509982078 652291350 423149695 887234777 350832306 600099079 977928810 998861311 538397831 907791550 211284768 308330161 594748710 671168754 182161952 778748161 183210207 753422086 640407407 673802176 143423863 471879617 344026926 742233582 223861971 786819697 336334435 695468190 620688989 678208450 262559404 558271633 531427427 543548252 929292429 947527448 953040934 964023304 185193602 973600736 919224932 956561239 982810311 987171788 75945091 622888090 540782572 677427301 561724780 584345025 798099030 839139409 336454074 461956824 604563424 962260048 205186318 994430773 127622768 586192071 40822930 219661977 252586171 797095349 903015103 964728930 985621968 986241305 535612148 835782805 737164496 782094456 800367261 853347066 221891466 376772249 783993030 962997435 330510929 639871268 219699458 951880893 881308259 961783955 372290037 528529869 20347520 252918890 343620759 802728565 985590419 991292376 905900175 912524143 251039570 699181480 784104527 987639672 506245141 657870864 289978328 425842606 658074788 865679117 390925723 874743769 435445622 579927841 90104347 997712425 827222319 891709392 444020446 829644205 818029894 854574606 834723105 937219060 596294026 883098601 395604075 494070274 157430750 858532845 198094594 603213730 860527536 950138084 519114384 726858519 211020965 413741088 602009441 796489515 327519864 757637164 781313651 796013357 220848517 414709119 83038439 941496283 799686376 959318793 608758373 741531796 728063174 997493975 777453271 995982416 86546583 175429913 652860242 905727687 19411465 33557557 462884218 795401790 78023544 774117567 704046615 749784023 753165574 956083123 130312533 794263310 150364654 398432990 536718438 812922287 688786108 786912708 389239429 585501338 289936286 996472328 780852771 941959633 306724217 473030682 884111347 988875020 584486417 876257926 841803346 866287387 436668409 690207072 318312844 748234383 861887102 965460851 212560382 892650386 638392967 839073441 928225976 951875805 622857065 779091691 452949039 554384724 234312361 775356573 641951236 684710726 639391379 763141674 178290260 605005333 272495479 329109449 691075343 853569148 278622284 598511443 893949744 984172192 657047639 830653490 157709968 243289636 746946768 773466258 88332850 461862237 242355632 398030464 870266836 917159083 228071025 799783135 752931775 857853272 780436811 836380068 295949371 936079048 237935291 892117829 362480549 419538859 824663563 951092331 241100149 448209257 180507495 367914329 735463972 863390842 763566652 955997044 45955146 956743652 481141267 786539884 857588121 919759857 77676435 371596196 490534152 825765295 3938450 412734156 198813536 769860348 573240095 873289366 515712298 575708417 628168478 727227399 592588487 619643724 158187355 190793027 571443288 925207124 513799814 821467077 302916268 813299584 621593468 953525431 980633406 989174619 249660074 672935779 470733839 808787982 946101692 955864039 721065365 994145265 848949121 912698153 642535049 661410717 524068781 931222922 461706607 530858613 49264707 351076037 999253740 999761552 256986472 675238977 939223987 991684549 552870081 565283155 155692346 159462806 347581263 610126518 948170614 960621716 334305620 649149110 10150501 238888546 934489674 940270779 581338845 632443766 675290264 828901678 671167567 727396706 565865249 934895711 908536192 948124424 338911886 868363624 345294836 766422396 314774391 884885896 580271981 701062054 103592826 825751553 991864561 994116880 252373639 905376381 127815284 754735718 299807439 562270487 327151935 925171876 138674704 471020746 395559778 711795504 782051284 907323529 775865825 836496845 938924496 985755161 682075830 720692422 470034328 925382654 570439192 729387511 134521824 509084385 650242275 753056747 535064184 635404826 168130335 792211228 494480088 706850954 269938885 420531913 100142278 984907594 138894394 382502980 622622557 842383374 874971329 941997053 881675673 928144002 787770005 793153533 323127809 658886392 999417114 999531645 79675703 518760374 97690529 403885263 824190010 858027455 572935911 693500352 548972279 620046513 979006400 983367151 642929346 798863883 423998691 518566212 463311299 809939879 783745093 874154464 605161194 736351304 163881580 456461517 234210717 522638859 26481192 907521933 624097887 767960383 595425884 968655891 986886653 997818895 601708387 725782400 517968071 700272291 529069996 581537182 601370548 797801707 462790831 827839353 557013798 736188205 133980199 877213410 785021796 859673841 183770391 821805575 986961457 998718173 582035555 593550157 47678584 786667380 336107991 767288910 550514746 684516447 870832905 988217959 62338693 374323559 420960970 772106193 104964397 228848270 520984707 697528043 995889597 998018566 545783782 798391059 794353013 881229364 950422494 977522390 610099691 715302642 690358221 787660095 149211195 523757794 618775829 778765982 602381092 787912896 634095541 949102292 346308357 461784556 409891086 689295260 203708239 554790739 158680232 765294906 51045359 918554226 636515344 880720096 598063927 794998883 372360581 761542499 920920824 991537079 351962558 550930393 138087736 704359569 288658084 346758941 870151122 981715947 905717370 992819260 952396945 972727144 945985096 953560024 966884840 992715035 346367399 723116963 379493755 538340680 673288080 866384996 251556859 255177518 231263565 602882614 357431009 985792504 68221189 982569973 245216968 270826204 945082612 951314963 788671467 866457900 253766460 361372658 262763359 785957365 448716197 509274513 7234339 186983523 171965510 731021207 372652489 880719400 552597837 986086454 437417918 823806233 216259879 972267546 205126858 848711041 262812391 890062312 413412230 438008724 513657946 688094441 85542763 424665040 455974016 973199549 324083148 440085278 210332565 317520308 125281832 253223489 18676816 228445200 299284709 710580710 916849810 967549021 995654509 999326620 919238043 952232013 25965266 366995518 549623421 752832566 121462510 585262900 107952254 979191333 565746038 629420517 900488033 935193905 295192896 716455218 714053942 950526421 888792337 908502100 779822032 784621940 399209098 499332191 907789806 964047750 308996642 488323305 262369362 315881479 652672336 824764057 785275923 828960739 485565708 845689619 869139668 991199641 483273871 869072063 861096045 934693947 404051280 462362235 63330725 816544265 626516822 827950824 339865969 579884686 398440435 509278894 499944695 795364444 789806004 946386692 898465517 966573905 698292912 911708905 209018777 279635215 243614435 547881768 814386687 958741446 389428653 521702631 637680605 877181681 936714805 970699915 136809518 175584903 747492014 848292971 562300867 994586438 534994610 805081970 499701527 576866154 932832786 981314035 148691719 273262894 979403735 997824603 46052858 797326585 599731596 785747430 167228087 570397884 582459067 629860683 546833071 982130842 973705579 976072231 518927160 671839941 883526860 959513769 399906630 484252574 568392467 910043291 628363276 722708989 787258219 832227787 679296094 808640152 430801477 680801922 88912569 416440665 300447016 691033263 701948453 824791577 324965953 674189799 466105540 532014765 400823354 595083678 936889858 951992516 808957383 821122096 911397129 989168905 436587589 595389828 942006039 957067435 267313487 429130406 162724015 508504090 400692452 423899057 591293532 788457434 602149029 919903914 363088344 590284055 274487979 507349450 493739103 912933885 354872121 573259916 661752248 915910751 296425663 960569348 731403087 795597707 395160437 741609067 764287418 811194208 250696031 328884418 802480145 904015144 344019978 469731708 429400928 875882564 553701928 846689743 141575322 200944773 35575566 361418568 983259023 994059367 642085854 960666047 32524799 688193184 471407721 636053271 186678764 728173557 784819560 987925245 304865069 510908985 208668619 771005966 130567373 455248155 962997031 997080061 271028138 806014575 665377241 972751164 44132698 76150928 328531724 486236027 798169979 958726307 644552211 676063147 368954139 558838793 775937372 787020898 916860095 918199776 904579378 959721662 984970398 992220934 304648558 482856541 580115997 956611134 752486156 838850529 370140150 976898828 727880755 786713452 844316696 952709571 398917208 544053164 67077408 624560050 593481363 748447440 756213579 946155426 14804776 441102810 363767741 866516757 917903327 998474667 733041265 805162296 393705790 919554550 632416952 691212339 912791618 970235591 442372324 955816081 96890066 757225733 38735625 892791212 913563348 985290148 90462603 599005990 968047493 981746577 115807883 411546244 511719233 519756097 519233095 855950939 868533959 889277535 841481506 935364692 414648160 843857671 835323388 850231344 814238369 931637737 331460850 891878530 253764407 855716250 512576883 920126465 924635571 939821233 569459686 651255553 568190831 895328489 872652550 988360518 437686198 853887827 655363807 765120074 832125619 952900928 993860542 996909335 539726193 881031591 599590342 853698529 65280811 71084712 55612349 704398346 988807851 992239770 663436639 804340094 159065508 940775310 766653731 983203656 134624029 156124183 584897584 612959991 37010736 725631581 651340560 808228012 572621721 663194249 602284103 954291503 851363826 961432364 687027553 691600741 654407147 793822884 678638103 695237987 554279108 569075636 80356756 686585626 558041953 760623228 797394289 956307741 972227170 988993300 693316387 724263810 679110405 845252161 894585414 897722900 340321220 552791263 326107867 884212987 60368840 359185954 315306349 317033647 889190043 894001111 46426096 717459478 782087251 797734376 789351286 835936685 303001116 687941046 80116571 787669455 536217735 652879874 940024646 948844107 312864845 814472880 800408032 893304729 361802979 635200349 435750669 728532510 543320056 806927334 235376498 251204370 493535480 501149750 544833250 747311699 996835330 999978870 682335710 693362278 299301988 574977390 140564569 787929532 512154257 716602079 354630164 895953944 904822111 928634461 8455453 35550629 381781910 411949131 950151487 992503019 358950840 438565893 923894237 966327034 844965529 917936177 93072322 223432855 767642610 928776087 795246335 961445474 798119042 908638630 161604160 764827662 47915803 577551189 781089529 799506437 9158813 779161054 751983394 934141483 541103117 765496520 549635750 900054050 82091319 244889884 992250229 994393413 571541149 939514554 369218993 908553641 543949170 716824114 102931836 643215212 598272103 642599584 750253875 862712080 376914878 440664321 218658648 734413313 600534783 878065614 262790229 647884214 600586916 864714794 638594487 858368578 776560451 925290048 286929102 562806542 522851696 536507386 599625689 899936484 700865654 807897306 32339219 161131859 178407328 696075241 646888217 758373524 870874831 915949660 669381565 732907932 110657148 523459310 845733677 895509943 545913387 839122042 299153343 467260711 857841302 899951941 580432374 676983891 404178693 482686827 616265640 702405357 83799819 338389488 652642818 876588922 420961939 698672294 172661610 277780768 709554567 986215825 400016878 406438259 524325166 940536614 237455731 915172306 895784520 948029452 336218922 957761939 613162884 774079963 285519898 488756472 855734152 884772936 550230538 928530165 355826069 629047051 84094489 425110018 413082394 530761671 29835493 799751500 858160824 911967879 403295993 834268707 393455441 856248015 498837019 750114893 152682083 360595311 316143224 673840871 477955951 506587350 661579206 699539577 566794688 687301592 836621861 969849427 880506212 892281370 83694535 632983857 6596885 309375004 251552419 655269236 824118479 898707663 479505531 617917847 387292288 830673803 168794129 951076040 945541739 979412943 857252812 859048162 816270285 951397364 285084892 821619313 855123590 973969119 530279395 575872822 859857255 992019813 420672780 799063495 157083562 403581495 187234055 252260214 88382040 521118256 766389465 837481255 422255639 849061533 934562062 955204211 2146471 151070724 467084135 992251090 282936052 922211363 258164727 838793017 428638981 609174074 477163635 536672874 198340402 841944529 767671782 895821259 599843255 801546475 155009140 370782541 753761228 892650038 58807786 619583733 282045514 997093140 136439476 339179134 352227433 637385171 381157004 601576594 846334280 859948860 385312728 471810646 404164336 745239883 1755950 52533876 445929490 497874538 707456354 852036839 988049562 989962763 957085564 959654538 326003322 744138115 400050633 602406764 541835656 588141916 937888489 938895593 140673773 407234619 495608582 672552740 525956367 827966062 425052802 540276354 951401675 990002650 463163507 972939350 915692235 966135546 605409992 806585758 451831676 795309318 332048181 952770021 831439660 835664795 186589030 837558423 932457547 941395142 765553891 850541805 688696054 765586714 111419490 191394427 279731512 411584724 719435535 817548162 341614963 784255053 187363949 878769740 408946370 618139051 321060943 543599391 684105494 966772206 293110987 707128494 923213121 983908305 724306649 930134848 976021217 978603104 333326614 828291966 610837734 961773675 78597327 936681819 261946961 977686193 531385673 823109342 735769271 781865789 274525641 789215236 353722983 876144773 896776785 952635500 392763252 787539439 769712056 966922111 189409518 678683359 11855755 776168718 875524927 881982145 705643234 760640638 630461430 860875811 151478893 186240513 539409482 657599816 134005290 521675879 466580144 475064219 223114819 491130498 948225014 966534672 103977791 538003659 632046691 731390300 628414162 994738544 225300580 427804934 507392004 980203979 81140137 281275785 937961175 942270005 874926634 923629838 474245551 757240498 649524734 856860403 853586321 896076250 966119275 970437360 849832689 894623703 722358780 988100356 725057532 728517758 28344237 704986704 369129029 905569519 327120776 549375183 470473236 812518093 373140521 474565623 881938697 904530954 783220645 962713540 385764856 491319997 511219203 830879155 592110246 988469785 589390318 864841611 888216906 964895559 238757500 703542917 738218980 879567731 232199866 330225019 394487577 687381100 204702738 798729072 906905184 936125685 699688960 849793896 839310652 897873700 691594553 908720739 597377752 966110054 502087532 998631550 895997700 979363027 17933694 85275267 50945101 58671128 589648758 954700251 150608223 801360652 991295788 993754645 596311172 855614184 297123656 862074897 462982687 511780679 176061710 305010126 333105436 940306044 771133259 943305219 890601029 961645420 342194741 541172024 206341443 977458081 697893692 944082601 65683512 873165596 374956199 425053365 524936030 860409902 337106028 818022292 729625384 882811053 891113800 899842016 895321116 926799956 606293127 751044718 43727925 171366380 143829790 914661852 562085493 935027283 532972402 948956367 887750433 926327269 919700298 951989865 851381027 862414075 792953864 838395812 760465012 870405446 201778840 454343805 586783091 935735622 141290383 938247804 660088414 662492928 253297448 616191473 589240729 921111506 218381375 222155130 383370663 635977661 407267558 978927194 31175685 383875127 395263451 591267237 963728644 975556255 633921668 690966482 878626808 996019441 449962689 550035771 732863464 855056053 13562804 404895715 919947864 993405777 363585097 600318137 202415487 879543994 637123485 781028893 42669459 404593954 963597107 986954031 760700069 941770380 578990817 802139743 916317190 989703955 37957730 270373158 987416037 990726611 379394506 405499713 830956078 969579215 183037263 881473456 443351492 829822640 703929649 961473025 320511971 521540460 546573060 615082339 668657124 775215592 20456555 621384816 367972264 688552881 956449218 964050933 340181392 850443583 72025296 297337080 619072378 896729810 53263130 819503996 888403231 933258827 494477832 895175762 54497402 719644505 131930176 697269040 955605675 963047502 427522347 517887205 737802665 740593004 323710519 341290873 187048479 204536973 873871156 966989702 647703114 774301086 426936430 733562458 523381868 822141829 787474337 973405298 642007496 878265256 890054479 917030562 198273563 443524165 82539675 658206715 803586637 984679363 760740800 908996005 685473238 794495077 490841063 830934151 834728303 895742667 573887852 920552379 659195833 865982905 888938066 958519978 86275324 737232144 217020697 558664472 704038096 940481601 792782708 906317039 386770886 750846587 749001232 906901398 341467701 657161675 685243987 942965222 543827952 878226821 932003261 949077899 237151782 973315904 989575019 992237125 186775997 551890019 586466674 835854292 463351804 751167960 19800391 881989632 679142603 743808899 461336403 899010259 679489789 870327886 221547521 327705701 13504515 116586177 432229580 472525944 626316228 700111161 87513067 517717140 400337581 708092263 14115472 294299398 622115921 687253011 648320762 970494469 382285088 706135476 384979904 960690475 355423271 685874697 417296447 451572494 996589293 998717928 325898537 741834020 5335747 943414854 756511106 759274281 463046693 720986143 58784676 193287170 546184214 944982133 719982320 832467749 986223603 986603462 215503664 868261333 75450929 304162962 173007936 788827966 361022503 722671456 834849220 953839034 668818520 808677879 929367968 947711859 6049960 768465623 640480165 648640700 898657560 988204287 991010385 997819285 354324608 408780487 944916733 976806130 782150483 806327305 692077112 738305877 253220846 468084717 684248689 778068755 948869898 949314044 106648511 412166707 148005049 238622911 58271623 736887199 811719255 921273563 696049269 981977902 580181341 862405573 861185817 982891498 767960240 949872329 40847119 712485036 105075356 859961431 993723832 993892447 590714794 824498626 201974221 388259449 507209194 723340265 152914703 455657000 580174434 871653693 305953075 829164948 299090364 938206063 896790700 937920457 388720383 438167235 890267460 949853995 502065439 974703715 794047749 902271795 555441543 564570161 967101667 996342354 168123605 451908512 607373999 721920727 703312916 781891332 488949319 789206153 509618676 960757976 326540542 765830605 679080892 804145154 593321599 995650966 363190339 707280693 352995063 800632144 586136341 853765420 577770325 678494300 720326847 984624462 927362233 936042637 873749627 975683418 4632761 161034961 191936943 747292510 48937093 102111085 246893361 535374218 758537222 821636408 716614529 999108336 589515190 874535863 982039181 997353263 910765464 974318556 173508583 291326238 252238740 587896397 84592931 973297105 875803110 987186323 13453868 19538308 845771168 883841554 640175145 843759336 919375589 920011651 214700919 422806716 437066296 752708280 81492642 143163042 753310701 902020810 160132067 695614698 351301683 849416947 321576569 537206278 823032464 917886378 269319301 940487781 372363778 711837819 234650185 597546121 430581764 782575150 19357459 959322055 100125811 332556388 376062560 452318222 902960633 906570511 615386235 865198884 170329660 953109816 517949914 670210867 896189 253965482 146262620 742236975 642179089 788872332 663967758 690130916 95909464 297748024 979399956 993877506 118157630 452280985 58238161 916428582 693150138 923554245 2852633 474657430 385176817 990952853 967432849 973898220 418299829 907571451 574315955 593009292 568535753 969263375 35625046 545003296 584842176 615376304 599614419 927966032 566752294 693842875 165345496 328244798 513616147 914616729 547133876 800512069 693655184 806373134 772377631 781276711 860530438 996507741 442605253 693118344 396819169 610066788 608123317 855277753 488593576 776284900 993267955 999181463 356470797 727420393 998171495 999023825 859264970 922895150 408492242 836895373 387307307 889503077 917854406 951361898 954434048 998205003 61313128 925126505 965332948 994748758 610049300 635777253 580937100 718388754 58917831 89098906 616629441 806764763 75114715 967156550 52636680 391501813 886836661 921149858 540455411 987626198 760744875 891005892 331055511 786485561 546774055 772178411 354224263 545779257 786538975 879464888 25955454 791037058 136805703 465522650 576742071 983821142 258754616 650761226 836893624 883430106 405494032 794731510 219280650 564836204 948743374 955343311 63298889 378978286 439344328 726111299 298518381 768912044 515256390 786631564 417546700 707882064 54114418 899658507 636896566 960442025 978516896 982424857 203754219 602493477 715497080 997168834 331209376 634208502 350101250 739550018 689415060 776242018 333880458 920665203 690437872 939358338 758588574 979416275 454262328 741496696 635027563 828271614 446725361 782475122 854810693 935095613 105177211 534860069 688075887 953871756 798588840 854471367 42632349 344489624 997992076 998802138 322479880 644283740 7410760 88406014 688323621 787849955 602541399 712185763 450051225 856722465 344972996 713792667 35434070 123130918 967519264 981928427 597839813 846138224 133458641 739825255 929071853 958599209 177057570 914989120 836367939 874306014 150582801 393625253 68580205 356745933 525064937 664036270 318886198 860576883 179075991 748968624 345568417 595409155 5045287 807563898 75013893 875739409 17385643 73182842 406923593 409141372 81098480 861503003 714752646 791937410 730865590 873023377 976739347 995884995 746184834 837881238 628714805 766825428 548539931 569292137 709305594 712249641 887355858 934580323 497618730 592834994 48818718 738753983 666994440 717456144 969922680 981969675 36013598 710885872 181143700 982216864 43695569 665158933 95035562 107528817 187897941 969691988 976080633 981204205 990415553 994158351 8517286 457856257 514036785 772354786 420042335 872588451 344974492 718244168 926085007 944850348 90009227 402304116 740051337 900859859 896504230 913476309 186985798 620845568 562953953 922347277 257829328 464326778 20413250 98582121 664904751 831022784 111573542 526809347 153300714 698176975 154081599 277118612 208357050 408575820 845457159 913635199 417744386 827343517 995396898 997646502 286720620 497534650 120883293 943994064 231860397 683225261 137142610 727347889 674211311 960334570 420009668 634816853 990385714 995489369 246586938 649063548 514422780 572513947 197002070 491356446 245130223 320449278 169707116 676225337 937455854 956545046 91613822 674191002 324427097 906134982 328141969 405356029 385560078 913713855 164638587 250495631 632739316 802376371 172775427 534693932 161800425 837247183 582962721 764806687 825287560 846895285 443126652 846107075 259899025 548961250 514720702 819969443 996591622 997618400 33398002 141368336 676196710 968986348 865030086 991545249 476941367 716239728 271905111 482765110 192268693 293486380 916690507 978983310 559724881 934080592 912881147 920269969 136954601 337045477 250047249 528872887 293293496 880217781 365648275 627407597 386146531 414774824 422480866 544787865 719029656 841895212 900023226 997005021 890685177 904402992 144812837 945013172 894646422 997262916 735142753 884281762 351792503 926168737 147777862 934966226 409541084 523417628 988947587 999018018 36159813 244015828 767532929 964743555 315275025 940207955 386588059 923460016 609938745 699810748 338303592 530781573 395615056 893631945 642926244 881060394 856146574 944485054 230313888 586749835 699397944 794922688 402638463 813933109 96406370 778126041 331949683 541398266 283815485 568707074 207329692 661233912 228688889 442245188 186006578 612119117 344046765 899349540 885614626 991215278 643823668 938756181 823118649 960920743 345870439 566706331 752689026 760650096 348052000 450290131 60674594 654527993 628134228 772261715 258741595 656229314 610755972 991630551 439342737 590031279 178992486 840898770 511013834 792355684 73779165 479868954 620505292 652260061 843622478 902201562 257179736 334352602 646727566 892813259 763227959 818288081 894211628 957593155 815523779 979930168 405047833 858723774 286832625 580047370 157326494 172117216 936841382 979568880 53361895 402570458 149530570 550660584 545000152 889919067 975823386 981861347 804098004 823213277 230905398 481822417 893051860 956563974 162632398 365233848 660920185 797220583 166537458 259623608 37521653 593349035 637029741 755238699 190996231 594575425 24035034 91630470 213223262 497012183 225358128 742008193 679134371 941963968 146523004 561187819 219184131 646745244 683829637 835189969 673406836 863290553 923506808 934270263 434333020 737289346 144855523 707544649 478286347 597191617 160741592 330698542 979267377 982825406 943997997 962229826 220751550 905788063 818426023 854412040 501696938 950057664 104600719 528416886 921890833 948814084 78842334 597312830 363213758 709191643 375575724 832257014 643878739 724956956 530413790 832057171 275780325 883691841 970827246 980967406 832358438 912562662 765531102 989529013 377719247 797734616 514621445 659895400 252155922 868308114 659630771 881145907 284168765 941203022 59487201 192810231 914599155 935143533 426315958 913895034 457519740 811795049 514683714 675505469 46571690 851295536 975874633 983121485 214460278 823848194 803650394 835123265 953144010 995269655 451213190 458387151 462059412 816269271 990362489 994026288 728890779 871822221 671739705 853632848 332231870 861709815 927663788 970335930 525475269 926245098 524616420 708920588 946831978 987484029 220311715 542710318 901571202 954040824 892056306 928788671 360492275 958863288 446735484 863906682 130500218 224025100 194932439 623547509 511103150 967893462 510645050 622291521 179783971 642690755 221773977 786501496 370485096 734130035 897216286 977751850 34657647 36456751 470728466 864539284 617959778 923964995 969031140 983693371 745061596 898702879 392122627 969543024 473496382 636091101 938384967 999489833 265425516 772127421 967555777 998105053 783614278 931430656 430681271 567110811 247172582 435491357 93601242 885879980 322508727 914994256 796763036 969410423 158556422 812131260 646191959 739934222 816558193 989213760 780024553 859453212 614590485 767509619 165672323 212910583 734843588 791212381 446873175 854297192 802179181 935433377 107047715 404055420 389660122 733907937 163269586 870418019 144399655 176861384 381230068 601950994 104978293 385252287 286951775 334853887 345678952 550567004 653010967 978547124 270024523 865000257 295573891 598809808 729437805 958953758 27618090 666257511 238322167 307623898 492050998 679107755 78428779 329736687 533003863 649599232 892798897 960774233 331224788 696956808 633543635 648254239 275838419 747730142 740157796 747559505 979065536 994795206 313553698 898741177 696811127 944040044 688371545 867462815 548101005 766826175 535354514 657668677 366887689 938376366 746464597 779757136 7323181 770334914 383345957 419099321 917844122 984878979 976079606 985686509 340451727 639330048 587542491 754827083 85407333 591743784 499666299 594098415 446020063 959512506 93513074 746712111 534426832 538520902 449198 225142405 930008043 974895851 993707915 994441031 375394827 621812559 991355332 991746765 5422208 530036865 61531249 211184240 501028244 524032611 961125653 972111538 779507203 820419889 970404834 987925953 190175503 354731583 241831260 845495708 849533480 924637769 647986397 794642836 571447057 795185424 466398839 531877233 429931361 682587996 679125368 682827979 294522906 787289196 629551048 814401315 349358445 921442734 115166345 248593277 497383531 712851638 859916397 976873330 416837450 647132610 669117445 782823686 328128077 901689208 430584941 954999405 882265442 928725872 163243420 921126153 636007670 953818899 684194988 753831051 917615804 994043220 407797273 909172053 285395013 379824698 501543962 768149774 405450101 726504530 916518737 979939762 755384115 897706312 75333568 195156688 728920352 781465594 931934789 998939363 473187265 672395550 967510460 972029699 523404924 527510414 941177800 978711584 152346632 237697583 459646737 592252526 567450923 941979185 177263378 744733553 483362963 681150027 344470033 453715448 902640346 968315090 52776398 295863679 340055049 629278103 42443075 824726674 705756344 905899478 184758294 825750138 724097015 824450191 329187660 486754655 113024172 821658637 482911533 695534875 881360949 904940054 254140706 720921703 445020972 833918467 353617261 399432980 591646277 969396422 681221072 815688346 959604864 979241627 846092171 896043948 144834021 932816509 857309749 982641159 391641698 911208742 487777272 541956574 705402201 742838404 471800962 926581571 57893421 291933416 518555575 919771402 792166461 836888510 209246469 258848611 186087738 989214569 945081741 949508855 808374983 814947756 189356462 476841451 599032756 758598958 651821147 965941842 247426962 273413153 912524177 953158394 68905378 76166537 654253358 926771469 758511120 820605296 838059870 916023970 270828520 783120057 649079742 718746225 817746052 844398003 201420725 430264558 513518247 694987351 51666522 620654932 726292159 821518512 797268579 919054745 675441516 942282016 842320712 928291588 182627896 772625290 9073744 110694570 340602337 502100985 805826838 919828501 381829038 632751275 624238837 926587762 340920273 926070134 331027555 841268749 16354695 136073404 132925587 909643653 890439823 985838361 545536317 895703329 5847564 571104852 417498355 888957146 301159514 922972428 672136165 731263116 309874263 477912334 988157717 995110659 90227354 647297643 43411504 739553657 690400128 944896949 453591866 665663544 622283919 672728828 591094844 653129596 607556521 711535021 777554399 780516495 471566730 712158487 386416249 724011103 629930297 927315907 324828008 508801316 326046515 538693654 426761597 891864216 456575864 607322166 776030697 857465865 55201345 500515208 54802794 368501953 892373094 947294434 759253899 848565794 735886333 985321747 924794508 983009086 912399731 996091233 597214267 809573794 980522558 987190957 166961883 616380788 746247138 944071910 156654512 890552579 718599689 956785154 589619443 876864492 218387278 929537084 327895922 949007544 820169870 859366768 166467744 686279637 683928457 908957663 164421736 964020847 383178304 665068133 607391817 610059064 124382396 138887465 982040565 982793785 76577410 198794418 467198020 558580185 180586346 602057921 553487117 675149210 984161185 985828399 560920041 566384544 461306258 774528219 96717671 440148597 393570417 696098606 330949498 876594381 857454005 997282311 164655574 744624879 360068579 374170002 31037142 696559780 70007999 840245894 322732180 345055313 996642872 998513175 939037718 986197002 273542062 602673681 215038088 661977256 340327265 453031568 652344729 822590927 750599204 786336567 435105484 700933247 182697954 995411549 534386787 536827501 192401632 948112133 390689736 884408535 989461704 992130091 967244290 988295450 603433107 940604514 95133703 236851483 106285406 783489166 917227017 980388045 922484544 982299827 766914330 976145019 483248843 893905483 515790949 951367541 31942947 475544506 95767080 688898590 968134760 985033928 5743384 335516707 527075955 771002791 294926760 634572594 147630576 876195531 96639344 487261633 411557336 658169658 151687894 435246872 793024768 812191122 169358220 264657639 291552902 339381048 798026241 827465830 806524683 986857668 379469948 600775366 54709885 418246568 645424115 949362700 495455307 745707116 960850805 997604692 130211452 901424277 553959113 782433384 19713859 367240782 754810369 773790359 141036035 537254069 214730701 413777057 163399476 540468712 736756118 972578473 382682089 512880506 787787272 957352065 181629809 931585800 850587051 934549627 590922440 686480501 920711692 933985013 499193070 655426694 335297145 445312529 652099845 694588760 981171863 986235857 935247440 971802063 877351436 969379760 401686875 942354705 856392962 903318403 761610872 851568439 245508804 654577467 813381034 950585495 421129588 590137418 841644455 850856455 676951105 820465369 301171570 469770445 614979068 639932764 503534325 737074781 467862977 742620452 256601955 452436153 734468768 828978888 187076742 759415562 724434385 828529208 651208568 736028519 108989993 628075804 639429598 660548074 318107967 478566235 123003147 764393512 669177263 983442433 878640089 964826445 918340478 959941457 772044826 960241945 864320815 927241616 608411687 690647221 98204272 821905086 572229701 921479191 782858973 928300438 377782175 769173095 372590627 508216774 279079114 435206732 485041723 947132976 416606767 686351019 980454424 997721359 434860707 685885485 294372481 384668919 737045766 891620363 346696975 417111500 425346816 988194750 392372078 444346168 944282101 967812307 491084965 875305813 137248038 273666419 361157111 853846275 867683951 898385076 995203892 997117676 875158028 989987265 268431778 480701882 23858488 126930258 210372389 631438863 429690635 708142481 228754479 670453090 443136311 738525354 631355869 751058916 806722118 944501816 23644936 822330083 230694032 516886597 32253721 226009209 526830537 866054628 866395568 890332945 779605294 870610573 269049185 576474527 278248787 829432832 39411392 538063557 209844542 334251269 44939863 987324216 327320308 935048065 735407754 770243047 422842822 598870975 139048747 788458940 449923691 775122218 879141680 944751106 660295636 692731638 513172910 868191203 250508097 818272930 767111265 839105210 593013893 616579384 779933940 887366811 745499472 921820185 348959928 953628761 322928876 629581980 165925951 345445641 327476379 582749233 968038794 982837604 563395350 924279150 544065524 781872589 805298487 910026038 514189293 682584008 988395694 993485653 607073700 772246125 145680791 665155527 943671464 980689090 450488 623544298 190868982 404410152 904358363 918125155 120012046 373705636 926290250 975595523 330298484 537638287 755861155 868616632 995416562 997657616 384702842 391942496 533522532 546611754 902846363 945013487 576944911 654193698 594947421 760518893 741752928 844192473 976949909 993154588 954637581 982482792 13052836 353638716 411921666 420895602 375333299 769753566 59529250 582475248 675551626 967686211 739948022 939615313 693169175 947636503 139812896 901205712 499957262 884761370 741435973 824448353 356086934 387927545 475439471 865079485 963271486 971468766 388717196 410385398 365276758 769562310 641932836 865079293 988082642 994062826 345789767 934002649 982409895 992997000 308471563 424768090 777102379 819237184 899605872 975320871 296943697 389200332 806784223 909252992 966072624 991041267 637196133 964052041 452569414 781301765 189655505 798486515 25614143 223417240 614677839 725262553 440170192 550855614 936396403 946260749 361229165 499071392 406659175 580791802 684655535 766539276 723078409 754652641 506321297 728878039 464349195 561194647 410118353 531684294 477473441 738106497 602232599 702244714 280192495 330823567 321245902 672916594 237825772 973581489 816796962 888896774 271934631 792165748 911622727 944423001 311897435 924454944 820875889 882204200 949763310 968283489 597701 125654428 870087503 970545753 298761297 433751104 864700327 992506617 744279587 810081827 596645232 917424315 380472021 669614218 218483222 281902736 323487491 981669679 873151076 918788468 767978706 770076702 716043095 939452904 606903634 960223204 591611955 912421051 841322627 967918422 78507000 94722428 876216143 921393237 941963007 969707557 869982483 955522939 884315587 965989047 534094136 687292253 761765320 969012033 607694468 975981421 531580431 896377923 448412723 629028852 535867309 935521580 40723166 332763982 156663879 370714750 250561561 600616911 548710168 668624433 321210042 821413162 396391598 640082888 128148240 865972274 53772593 619344186 92343029 165455921 936475694 995910680 850690767 851879801 252652271 739115731 134469291 592068302 499511232 984172381 398930329 735680462 546102522 735461137 282484122 487841463 813179860 869643006 284108934 307418684 674046505 933331218 23195691 991015864 671042739 817202027 423304417 898496386 648793309 867460635 578271038 901951171 674121488 937787520 159275754 293092240 239752891 969420416 398743426 982711666 894954397 980914016 693830910 751131117 265740173 971367765 904698515 981443045 110796144 206268827 112467177 773094173 183224759 500744522 836229390 882776745 676107092 924380389 527502891 839200360 586285950 623133535 632620876 884997594 804327846 910903858 354934816 997335070 844439969 923717544 545440267 737986281 64339602 260114075 735694136 872115916 875247980 910575091 235307689 877877520 419730888 431693758 118612016 431612038 691333781 823333016 517661078 593629777 277974051 859577173 127202776 269414088 612094605 620285723 616003689 698260247 376069386 498785280 596947754 765600669 623531140 684650622 232127791 592006620 410683307 535919596 662638703 968350882 384130388 754246506 343889677 715769070 610177537 799209602 238124534 993829643 791368832 965554591 429588515 939065776 940517449 957914288 596087647 741361161 853889229 946974410 852901128 958718546 783554729 839600179 489602389 846887934 351371163 431696997 849627252 980077563 795510973 894431279 234011962 377404140 129096564 244625078 681518037 878766652 259103856 645001301 323977855 424606777 939757686 958476615 133221029 452281834 973588446 986077261 542453040 899763046 283120375 447817595 665806831 860699450 875077836 992543275 452950756 614151881 877483860 899560117 642934663 953742709 932250603 964376770 471970517 532710650 325468401 986357667 574875279 840567651 863712306 888866156 561349156 986395199 495309901 529742562 950725102 951316353 855361816 977336184 126032667 180900827 21885620 386188754 835599765 846666904 888370504 948597725 656279850 794767353 57860294 386260544 223898722 325322722 759089736 830916042 376644152 744776575 169463313 308215010 169682681 758571231 661739850 887384177 378579592 438031342 496459707 594377492 774718315 923304789 941486943 986900566 584889918 912498126 93704741 117475255 377722281 963233231 778150699 957782746 995476116 995636194 624108867 671948235 412198723 643200826 544403937 571760364 472255683 801658866 48352609 464074176 942001479 954911717 364241691 478626834 888284574 964910569 483188079 719017338 440232274 575711387 736558471 979772509 448621887 825530175 989685929 997832409 671370423 792289465 372641630 424832900 895493779 999811458 316896272 550698049 525050087 811361014 153251165 439462369 759359904 861931058 751969908 830054386 266037670 409163562 264747467 911793799 956834440 988825036 590287074 682958305 16266616 310122552 618878539 881237909 577329886 591722960 707863310 847198833 133378806 599727590 595559911 856644742 430799379 686639477 155561535 798331129 142344787 261930522 54868675 921764475 96274962 561277545 911724239 963549277 17632583 90377112 609761746 860493489 912846640 923995504 110422627 733665522 887390383 953503748 564654615 939643893 156432451 479283022 878156515 985739536 882901955 955103276 187349773 248748298 265077455 845775296 610628921 625030790 38858118 616726318 968151337 974654652 519055937 617355503 444128613 627475563 384853653 457819524 320764168 577711289 461810714 657163279 339257080 865878923 346648020 975574918 374572345 703058237 927956080 960301819 758507284 782046637 812627682 961219431 258258757 785725639 930258289 981107101 6232506 210544913 908517113 974468642 798392931 868740471 14129050 980964026 339722182 968471521 422518418 696921261 238478271 705075350 162085223 823037619 475370250 541122535 861056580 984921792 789614282 806454691 785091386 966261010 689425057 926862627 536745192 594239510 894489928 990778416 402821261 721847768 241564867 753721202 399083235 797795621 400354728 578664619 517426575 836701770 462016669 493008545 787214161 929512177 319868049 501461566 232388456 812976642 476168402 874189108 345424978 536475940 54012907 411314380 873807677 905568151 27613932 650495434 268584502 413316172 555999440 947557929 695644225 761538464 538910430 924867512 356722167 713485905 721854825 933949771 766233807 900272051 104556661 550485780 211793422 545571714 300132879 399839538 795229027 972284248 861210445 868460290 57142872 434216114 214178242 854014679 19400048 225118336 371952922 629107168 441142185 665598490 868600717 972135190 443827615 946473376 448030724 745927883 177305002 290421725 836676186 975642108 134022217 639622084 947106934 987870727 981424925 992943065 600677406 785568890 546779091 561951673 252487490 822973989 832947125 887902854 931206846 989162123 608878136 858927553 692791605 855794272 995564619 997446495 352208626 878104723 396838973 633714791 817854080 959799533 394747928 511185372 666255456 708561145 321620862 688433351 391199724 628762201 397952593 564266678 798648478 876677563 832590086 945081067 153806708 999334984 644918374 878986612 334680382 510249414 990280545 996028194 872471266 906873430 617958263 932792040 94210158 789223541 547842678 817506675 942505261 973978517 934214379 984480807 159391300 467308172 310655828 752741411 307914939 982302928 859741725 911330724 891939480 999704803 675248031 790616476 380953347 830402771 852825987 908099879 534577324 683074655 74834312 976797417 316766250 518351786 169049374 802527570 785643846 811359045 734902253 773516196 161061994 627936387 784314191 841845046 67241923 509400890 201972014 588816265 875291547 945730924 118108691 287410515 453391094 610065929 480579 430526637 305220390 831817822 404136591 754168157 817605998 857007375 362824375 753670503 977412749 981815212 44259861 104765732 979723272 994988400 282029709 823933392 678767638 826669871 887747436 888526329 895290041 996174742 735300269 851497956 634613497 951854197 903278766 904151007 224023877 455017038 954741156 965569042 493567246 614696262 980661665 991372211 399239868 525310659 110665342 595955662 487075068 918217839 712587761 850204786 772497737 871874329 451027427 736531609 68586482 728341772 296971290 480421192 421115006 546392613 973323817 985781425 214170532 885466516 958305754 964515564 941773341 972282885 662450037 704939841 656517240 852700108 118084917 174339099 207734963 859180723 118381890 314268778 747182979 978125001 853133374 980118644 218809805 915277234 417051560 619699898 722091803 943427087 829403408 864669779 202857126 303373441 910772053 995214082 440558694 451232268 263568916 795734266 701147042 761764401 844315475 899288321 328010098 767153330 208174799 579398092 927262825 957039734 752536271 774937218 225837361 334385208 281879575 960222441 468367259 622404536 21070742 547982703 180986629 620290515 109423385 398796938 246680802 693448806 965793517 970671498 156108347 207904248 259614821 262266857 189583946 860013621 975987044 987737967 295429925 776783279 620904358 804030884 653920820 784729917 485522204 537540660 626259610 925250812 58584607 168600159 802662949 911998796 370081052 447982258 879708707 897571326 11038115 76362580 806512214 876329467 554673511 625022380 185266312 650645343 549343517 995349691 220052616 721519765 469959328 566999411 769320007 876354391 337151278 769805971 899781398 938446787 956426790 978380829 312163543 338252622 833571108 855721231 35618325 610805666 633944217 985232211 463016063 697406997 272396578 686983860 289281390 417957472 25069757 427675947 144233030 403943913 176006496 560592453 808977230 925639741 634946214 869418346 328062177 585941306 699514256 933275172 909426565 961373847 353058520 558142737 192896645 513768091 393859430 702501654 890149562 997280047 750988286 807791970 304255362 819229681 733359877 928610086 263921015 678052847 55957540 428757810 513579683 526291856 405586062 898212157 11297905 894064050 997568906 998716167 360488677 487944015 171011312 199295546 351362227 370193181 300684711 950886717 71401848 475640458 641757859 775241033 524663513 989088358 175738308 544719494 980267030 997675528 52060341 510135642 594774490 850859497 787556139 835893904 305334394 976747524 358663137 376400297 992026800 992386781 282427926 993200648 726667247 912617299 598228200 760359133 882758602 929267205 592125531 845922677 590885036 898778411 270151990 775186137 11511106 22190194 588185502 979245615 222445443 986571913 792014963 978433729 705413696 979995045 132106952 960147753 105115964 344256376 548925837 719135573 889713069 988807170 579529631 762598917 248424089 272594244 225653492 624774657 651253154 953183545 800390226 993393063 547116082 903164794 936166440 984402486 46250900 59116162 460123131 968598698 980853477 981766720 516981208 578209582 282792172 927079555 150590217 304437222 548805642 882655623 440572422 470908641 4566527 335210109 770627845 880242452 179521754 504209582 205927321 842541524 824977119 896947654 663480556 873573839 287552797 327793419 8733464 376416564 617210030 872507999 347371238 936116413 635153713 982048963 495165844 567716775 331041061 351783656 216592111 895461377 132165542 496585378 778640430 798326847 754507725 935552063 505226503 716732135 921455455 943962425 396923641 675647388 530358381 615938226 712866855 807648723 160425896 955057289 566085083 977879549 90224790 731091174 834728274 966238716 857118139 970671285 647230266 895863452 679487809 932120517 156621021 758375578 135020747 929426397 598447111 860317042 22531739 518111362 302568884 366054670 132989765 558379494 95858485 358528177 594757706 847966151 653731719 659300939 318790317 685373908 371202046 397248158 662457181 931358989 511180616 519138492 286170693 599368350 375285930 401098297 845547708 911293858 855321154 877147491 832594532 928844938 726109832 880235731 655734215 687791829 187405802 324884316 382910438 900588658 87873418 252523756 108883812 166028291 746833780 797275155 350307988 890169636 464046784 722464043 688126038 911196825 540867030 753444274 383519720 834968784 974885814 996062720 86591241 406272956 670093269 801892540 148007092 754250025 683735297 931035778 865931471 974254275 274287416 826718226 352427617 913862256 242703765 255688766 469503507 693279534 606037960 900423376 851072375 916165573 191384936 655943606 690827301 899445192 417222780 894343085 34618261 175533565 652733391 979146045 993444904 997987411 673353788 712948201 411299723 585912575 306311609 898492425 31775740 563539585 682561619 999621458 322144614 499319876 577000607 827135612 625336407 928281047 126088177 498477815 613587526 821694930 767391113 798913014 95989938 696792754 81904400 281634918 383289415 665509944 138804141 611822217 638395661 775198572 654998985 978018301 371677117 792691059 811499159 886026112 403451391 696706289 218397252 753280424 375430522 952074541 799704908 816054111 180269086 499728711 813130096 986976217 294010545 542479401 783399903 924464586 208628718 557165875 975355815 993427412 581635142 731486415 873401064 890513754 189766574 559842603 170947456 376515125 732681268 734987035 907288488 983667710 906459241 946021701 831347054 879351342 473483688 923006139 696250805 902278018 606899963 754620736 296898687 779758841 986112710 994004145 170399335 316387460 844614090 870141481 301249286 927133373 757818233 893038876 363772525 482120031 144901392 281217667 159360922 355848735 415725430 445440165 889497204 949611099 933555037 976734805 425168095 440533977 762062156 873733355 143031527 301918181 785207012 920674737 616949084 928345331 37034321 420844711 391462699 916628444 257848380 600433801 655302522 693632821 393171478 756250379 747324668 827274981 404486067 957958821 370881777 548179637 716659086 770881451 598550173 960299097 732955682 995137374 289624140 550325020 306205872 495328265 586235124 667369692 495310404 578913458 439363819 712175245 424192058 889386923 489461588 877024124 850503291 866075597 892049159 953673353 489833726 650379008 809313103 882561985 735133438 885100410 634452867 793427523 208794098 326910327 492488979 602051346 801648636 859707752 3516348 975175524 125396625 868465498 711557350 936112257 684573267 717831751 12368870 855797759 719328000 742326827 457848410 787382278 699019257 991131657 541975957 807988310 366406896 367657699 863261740 908722800 422858868 669470934 851265158 949373732 311356862 905049574 240128719 508291513 265732070 747788723 899842280 927470592 574176563 615615408 361895278 622890399 967845217 989806564 235859880 260699288 449569627 956349095 844723749 999242378 275571405 859737224 755919894 893392250 255770581 898645916 873924631 932730971 233637448 412523585 621339588 715905540 927145140 933266321 749615559 783172855 4045414 689928968 984773153 994953131 693393289 712087510 250417093 611017071 74759659 152591495 41960294 693155605 584270498 671643612 167389041 239911507 158146352 663617688 312749951 611413177 833944936 991696669 574455296 957684643 79671464 907086961 223896736 978068515 221648123 691946785 843921650 872493743 997216960 999038900 758541643 973820142 752715275 915990919 990423054 996162948 729054923 812541099 901029519 977305858 966503639 968007563 264154284 440708184 668666157 872192202 706876163 891301979 48533792 779974497 766241311 806601522 350117409 515636945 43946029 951015245 48611885 217279225 937702247 962906591 672218969 847396975 201046919 424663280 412375479 779328887 322971616 665183287 612525040 906335243 566432959 579347483 541237085 798010454 655292755 995249938 717842995 720006165 452675360 470405937 284582819 694273661 90553361 666320238 68371067 450363631 597415822 898105018 495738489 966492559 764157311 827420831 350413348 520000502 178797796 976238673 92966800 888304342 867877884 868959328 23750787 397356942 808172979 916538766 478596141 912714140 187554057 658267602 601067223 646157028 74932441 353023312 64494653 956000583 186122465 624776800 85114733 366254809 780845670 950665458 869547435 970896345 320336103 884427006 903361605 937620974 90455731 353806847 496746663 893113160 491445746 877743212 724860237 894098394 281514067 442957488 691939269 725273169 910064185 949974737 237064681 898734330 474855130 517276753 525949478 787185102 133221115 468642288 117510062 164899210 341691557 723395309 754226082 796790799 12208269 961351225 742946365 995416677 463718348 751583688 949834835 963162926 231955154 578382043 646860339 656677437 296752690 395314156 24225895 611158844 125385252 842479371 407291149 889714928 199992016 848437078 56278288 627171637 483217474 829964136 234015485 380417087 889465995 993287857 861444192 866188437 293962804 509827439 322923559 708507749 656032683 840157983 664558712 849595820 76277033 780363412 557758916 579149454 228382025 799500009 994595480 996900528 312398286 899443563 833238800 946827063 168644425 896659462 460460560 664671737 278235723 965158866 595657345 971235611 920245448 990074387 312648017 702917515 760477854 848636192 260773601 952665843 204158159 792089986 826714379 885107128 893181773 910565164 756127278 757518784 587935375 827020892 921858609 968194877 535857181 678073445 774837997 977422487 871871390 884424850 369850996 646941312 234109288 433388080 410860713 748605687 765926545 777672348 880002157 944337362 197391379 912377049 341694640 845965050 173050712 679353008 41499808 571851666 898475271 901482749 308077465 558379642 481412444 564219969 368282585 595180888 127285453 805223499 210787514 277909507 921628360 945492663 127525494 145147700 51660235 315295040 126073328 716815598 817311826 939867488 616595884 826889447 425311507 656781368 913002096 951897014 957154641 996498268 772954969 879598570 154713227 949037966 52529315 293918770 445232466 687160153 526100641 879710841 450174929 935288896 528699599 767507194 403470150 950052460 320921271 870833612 590718409 765138421 635366210 730182443 810078302 839505128 177560874 337952365 447576107 598716354 327387443 713351135 825505651 971944291 10516044 199441026 780345835 832841926 104134645 735537777 228242603 293640355 615918812 656155606 95341486 371360486 829513919 934052521 20103714 174825481 307888730 727255528 571873603 820080669 620884844 769678934 9509605 439806247 459844185 814949317 229717947 260251636 861065976 942642491 939641115 951667913 951823128 966813275 776722522 789675129 665697345 759620375 167377372 473379962 615818035 875709261 622048754 686201856 810911309 996365660 654765514 683028322 381841138 901006735 637596912 857278428 19927042 437370969 953732728 987629613 909853212 974258705 185353039 198338294 495152242 755796752 727502151 899516388 514717288 598736179 118016215 602366649 797197376 877322127 569277375 936389622 874955188 948028372 362375112 565937824 209363503 958123075 90262418 356546945 339234866 376968055 509770998 757552916 978928262 987150126 163748426 773809191 34732758 69491844 445642543 812067246 825629574 902275928 874792233 971936588 123973910 983027281 135136181 305902896 296610609 471702623 669982102 979864006 449790367 817650393 416402121 928869223 664366281 956423212 729817548 745251465 251174754 280405498 251147579 752564877 24258427 137768363 600484484 910053988 965253648 980293883 227720951 534410645 761953518 769624925 148615085 450809307 543523629 853306820 962213914 975508637 610271497 683826520 926482619 953579365 447303107 948329677 168272594 293466144 229571199 440767815 68626455 960486907 336700897 469486463 131825980 740433307 730655267 738102255 575215409 764385745 57255229 879384751 170791761 874095309 695394684 825682273 395304409 701912593 756544392 983474616 612923423 661353411 860592276 970391593 26266606 926518303 203121015 300381160 61727638 453130008 854248007 978781320 547063377 871099753 614693905 979239898 346507308 468541270 20764625 139676319 882090613 924349883 287519416 554324437 334617561 481341301 172699126 200435460 849216058 886003982 322012466 488799219 620087662 642671201 887507454 953798288 448758890 700979980 600317548 835309540 904100468 963533749 444320109 743963282 955775982 983922060 958990118 985464325 381959683 714076263 686248287 764189811 657858269 785067038 467853717 563622145 822641245 874477397 424225889 608351299 241835328 854876230 765851333 922230012 583673956 659238696 386593820 761454784 835693969 864078100 820562129 971661489 192535176 816114836 308690813 329558929 261809854 581223309 94367144 849536202 541525225 812727209 803312007 959876001 330506243 987668770 794407835 834398146 224145264 495923727 884181116 957999478 606648248 738776921 424473956 492593094 156470322 789656259 712456565 973999510 812422380 886199216 549678594 953390922 96622240 546239616 480211437 992994362 681931923 783270906 456080338 495912114 775676049 795735914 785373402 904238316 343229912 768538432 440941351 844569506 136965619 843829426 60466055 715972355 240605942 518209654 344170531 821134569 373244761 843652810 940264955 986817603 616327009 694804567 607577195 619921242 149146751 542732096 1746994 221402526 230803305 254613031 837820162 857863357 604843443 899622231 762908587 904008980 456689004 630998080 884333098 991853088 657017487 714975563 164790685 675414120 31091215 829734165 232265537 566221273 275313405 411838905 604070544 710345488 971986011 976846379 266229602 849519285 749493706 940635145 165357849 473713996 730143809 836810665 493451598 873677544 875956976 920366970 255020871 902324573 164622573 748899034 454548117 803222962 646406415 699743906 771817591 819270933 602376664 969318414 8023928 45962254 932689996 993539059 841243638 927652862 760725713 915218848 863130911 971402438 755363409 772872981 874416142 992653868 482041524 970372704 289572629 409841165 856954582 996859638 91942701 788844679 605938609 969869900 808171177 929504219 272503116 712979902 13188639 373151819 812502704 959340140 293276072 553958817 325767780 436960301 693972438 969732388 209143335 975783742 604850831 823995980 664869514 827029797 118353072 754890258 417273427 629636948 38653779 833637124 280691020 808351702 315067498 768907572 161239929 570365213 190397578 737221688 597069911 928893042 891636543 953155198 44858345 891001278 413381326 424718355 268905413 995754350 818537165 831316968 757648085 909231733 388835761 977535306 579853174 680951183 795942428 965544523 501475903 907508725 326848388 623014764 127331764 542123917 124765146 494127245 318865258 570650386 101961265 128279283 287482804 687480130 758412755 785955132 64093492 965715069 278986014 500279820 73319608 284158503 460722843 647655492 865819709 893573099 781288871 967140204 907870466 952421705 430509315 542853540 677672544 858666970 975762437 990522987 431350883 847015063 778053080 901898651 2660096 977118912 904437779 915868892 170550289 836941050 529437868 766456163 327664803 713829749 901185606 943827329 881945975 917221460 121978772 449847283 560376781 854328066 649245768 887009968 415113316 831029997 523107285 794539257 914513197 918917445 536865090 625019011 920415840 932095630 377971839 461277796 699933203 827790021 165171445 687806976 463479310 608190822 580312987 965843015 191914085 697415096 240830038 741318076 139855665 497639995 637812951 770737439 295875133 347152971 300385681 433978574 369028449 664599928 612098780 622452092 287154010 965110903 538681557 543645201 522822587 824899129 611673609 669026775 776687652 793862737 467669962 475019861 655959565 812071068 73705853 612948806 905289434 943616586 505600735 641386697 856469269 987812803 90254688 478932259 638736763 841075693 434122763 858550235 212325393 347034511 635616027 643967330 850736789 967303694 62106124 982290633 521064090 951502158 25270954 577547999 714273214 929952913 780835318 836219886 88218130 734382729 138357926 869001510 254525050 307706788 467456205 567773032 856853629 932627427 262501038 532816672 378430063 902951681 272737726 854833118 957036283 991186324 492916444 728472817 119113808 732135647 992191824 995893289 240567760 922964808 662468109 940264819 429575179 672425691 822125498 960595982 463329719 778037505 748962424 928322827 305009306 510399572 272053588 347782571 626646692 783896344 961074569 978276761 268644815 841942576 789105162 952137123 830237172 866012914 983494099 985163936 122248285 501230577 251481104 801567232 39416271 41275894 250951984 533669185 694474141 756379281 82329919 209556696 390705626 409559865 403938895 492139992 619343350 778966769 301640462 448169003 280790205 339453210 537933426 853824413 729347140 789572959 759680533 940017525 552091164 867708965 970551714 979716784 268587815 598431211 459682903 479548531 918977162 977042534 590245761 626898241 207889484 619607670 219733218 429720607 931824067 966783990 143352661 450580269 873356883 985485582 106930325 338966621 664083917 950946516 317763088 712426613 99451246 838043341 860068720 966728259 51073073 258428229 994562798 996095122 616849281 967784479 305288772 642050012 848892677 851713474 286659152 752605006 19671896 28166932 921961731 934637179 70166733 995989207 649024790 776967809 353020168 494333301 260568833 835323274 976067085 991792266 348498398 483402439 811204735 995502294 265419359 331258993 610130097 897790083 544279028 634499157 38648902 666576560 45077930 959877647 953745259 962666804 834278582 861292673 857871357 986855597 810609614 811895143 538847194 601050784 832656602 922703350 944761592 999816019 66693210 70559119 875836698 919841946 881949027 941180679 884484546 995469698 201034488 610993157 735689847 886425843 297691153 978378958 232146370 565583246 192475563 477200276 771682326 813945029 861406703 895204694 192912399 561677436 682797574 852995201 513915568 965662395 51126427 708713091 463757783 522638107 555343439 632803475 156187584 636742626 43055812 633841304 58674701 181018115 72764953 473369828 880720058 918926402 29038416 468111047 248386610 351777832 294886915 451079739 932238029 960764088 145713396 714096393 427453905 473118143 291432288 531104905 391049950 619444881 138386911 793946759 751834019 987707484 47763800 833709057 941678403 979272756 812543618 932277715 346137121 581919111 417837164 506523652 419121140 584296504 777041545 823004192 508546007 691965181 150576700 394456886 487482929 492869518 693652282 815553999 671774629 927377796 516873895 812914530 88192054 945384904 384000852 411684003 451557651 666420988 694055189 805904739 845353995 861253247 403574401 737721602 641971426 703929962 333423856 583724382 335173941 461287124 788639321 936067030 941674986 996807804 271646712 541610285 182906722 512896357 214609432 617081920 1694769 217698148 319866058 704882782 358215564 602247632 239929799 419359025 955262439 960535337 32331887 533494623 634041657 804125504 792818634 978069586 270406134 999040856 830591748 966009020 542529600 767262508 113915545 157633074 926042155 950583051 573522745 970201408 610767341 914769320 665393968 907911926 23528048 46110069 276904758 911959125 43336990 241097884 453077097 645182269 966833036 992165765 597057436 940638233 688739796 929807904 282759484 654909601 283380193 402034524 672802456 848242195 988912139 992550763 352121978 492260372 642926131 987186089 81369197 242787826 182334295 786173695 995020299 995909190 303600867 638599365 169333081 233979168 700798722 955340318 133603052 516151180 901843888 953377952 352273687 638526949 754937631 885130189 680588790 989316836 255725735 382631621 407825916 505450844 521909623 804711826 285152158 961281985 803387218 939638734 257194699 756714149 7359833 494339539 941797946 974006711 715225015 733300884 74557422 516833190 119821616 590915770 209989164 686842834 122275881 910790885 428812627 777352521 619228970 915724804 313312940 757410412 999933353 999976664 849950586 895091024 186039422 381827790 506831219 722352692 581490170 887305976 485160297 739909716 437370191 966396823 681388354 757610852 588792856 959400563 728421866 829884565 762496475 981423632 167807489 817142274 923180649 925218753 474992016 537189784 774818792 930553698 938581392 938656600 87901296 158746448 232183308 534169274 1514753 605868911 640536315 888514813 211330922 215374183 382752186 882686345 631646509 892644067 235537142 758956185 933024942 952994643 937575611 997187877 424357608 980046866 687465513 979952577 114683916 481229488 788213166 815745311 615596791 740544398 373334784 392023776 71193867 234581457 343667789 959132997 416639411 477531628 517213261 572894542 354114103 625962677 577434730 779775872 263624311 662349900 231840066 365962080 310573389 579473244 338000670 462848130 254155740 965665692 687688770 950174368 348584104 492223930 826867551 915353498 471906622 872437348 979943745 991686991 971199498 984288209 146905902 718857289 910350952 973124596 793966114 964649981 362988406 700211675 832854625 940931855 593873649 914199808 734461668 741032733 53493740 442541717 657477139 807886090 690078630 858490423 57697700 145816574 622820371 818208199 720393805 993465320 246753017 862566931 952594308 980669901 887271057 998201503 88271561 603479635 896826369 990539530 820624340 823549755 915205424 957198679 24281639 362711972 534668012 890307096 436158751 956746878 421251942 909582878 131777040 308017922 980670195 989371928 860288574 897390122 684444344 946240756 578859781 772451946 74158809 895351704 138082773 637893730 599213468 846630012 931774997 998093221 775293411 984363564 41711743 877651785 610805156 919998877 338523776 719756781 399550317 850370282 637825661 678909695 991241446 994913626 762376419 976926158 310629873 483127043 446592866 668501004 291994850 718820767 124856395 876848801 255547689 624734952 442951124 860794801 112783991 773074729 113274792 827545778 92460129 879203490 74550119 758740424 743818822 991749484 263008718 848658485 712887454 931368273 256282745 745905773 615056998 940124306 86845033 172381078 666680672 805816318 746307507 951664581 128830090 764392015 401725036 749775066 205611608 769556683 49759032 281750485 468018151 658624694 726002173 981497803 34724729 948016482 93035360 304744061 610258822 641074054 253952461 313639529 733021344 933878878 180686424 310141724 64488229 194508219 245689520 667988072 410517427 706829001 727232700 970731202 500964093 838005841 884916116 896091924 31982599 110452289 506353225 849550385 207913223 334420490 668411944 891759381 615391025 868199031 700747585 893154380 710614404 821305400 293989391 472430801 704492074 779263613 508438411 901502417 269902392 911422450 54061437 325678443 84222953 617374098 637565914 878915496 637218285 920474982 630226533 982443999 359693972 834020629 558028742 814564848 695029268 744099111 143847797 596260319 465444512 639063616 286478583 818496143 598087974 871546222 117741310 546398788 249986673 822261732 588836959 732100503 296476771 867708174 448973021 536491031 266016802 908892622 623585276 810808079 912064578 987198316 568242025 772018927 401846219 849082901 949918608 978535797 141772278 421984478 730964593 995190978 276780343 767109061 530784101 781886908 276981869 631264350 290673935 470128337 518980879 768443252 413033093 460545420 442281301 809058618 172433018 826579545 559981677 823744401 382783513 498259511 48189759 414679232 725537124 858538784 928818404 941216626 161985534 793313432 409810993 744916387 795603469 826015637 920161651 950903084 420437913 507590971 118444556 920845551 881223521 918450371 355910254 998707215 512095717 927572428 146810382 468143885 873269229 887535934 580565290 924717916 911498722 964598644 254484054 921014277 27300235 908753979 549881230 805301558 14586057 270495753 675806215 795432368 325263658 701925237 808546776 970491800 288897303 579948987 640785987 775589952 543139255 985249141 580880877 742318006 837802718 843196162 344045811 818133424 956235210 994410488 491190633 778949403 416551603 798525582 366201665 795157020 143545586 391322499 793082320 919604092 641717561 799905565 841957351 919844035 856987383 874151699 831916222 962554403 39752647 220453024 670994268 692671939 976807043 998469777 688431471 782547979 528749590 674199373 361472895 523891128 75021290 532777048 263769336 754726139 206651633 544135137 110914590 343921458 54370779 146958692 599507273 657533212 313257575 815483069 439545310 754220308 678394036 707512995 533295870 576445363 99394840 442111584 152569825 728819617 210897966 972532772 302429881 962052320 527965432 768829925 514399092 747576452 462010333 590629294 426678264 541238177 372144088 794833720 860616940 985189518 101673775 928315729 955337125 998135697 908695974 925067440 658647164 788061650 937998839 993249428 64878433 642219660 28671266 198633540 913725877 920542499 113834626 394706193 640672843 969949214 693458083 944491674 964960423 979691195 279717939 542713498 295763131 764469544 714304056 953565675 332061379 478687830 947744562 970351558 701067849 832448697 572287283 584171331 765117866 803161230 962661253 991389869 90852968 280116393 729625710 809200367 108466080 687017894 992857500 997227264 428031183 650032488 652611193 919233707 139005024 542436047 667858707 990745964 728047077 844646114 755700425 782684945 101223063 527164245 749792125 944768809 744369866 771359264 399586782 990679881 408060640 741918970 189435497 996559110 202142229 885210535 962013344 997532153 653465540 802247359 405613523 536143090 448227641 718780809 890400290 971324865 952852373 985999895 164374811 926329710 410312138 942177665 415637077 698313166 646621715 666549282 970665536 982624099 837124681 850133906 149433562 978260126 480105233 887580925 775000814 864612404 617906337 705370096 314431435 372235924 592671900 978379476 220232673 800100687 565389995 752928028 701760408 985132256 612780991 814552593 84074518 163922398 511822857 786974787 605288668 620964349 633378065 910895512 583303987 982864792 397949867 594468081 922984275 942487785 602124242 848619864 841485732 864694586 350958993 854526995 115699327 343812039 809055605 966165291 202747757 263208493 744719348 805874228 339306348 769460737 856006545 960655392 690747493 888714478 951389485 974644603 878864930 925755391 473425816 620547577 260828965 567398936 39072180 624552796 19922515 433464359 114506098 145485865 144699790 619511804 522562662 841584772 372113993 883543192 310432237 636124415 315585503 899314144 447216368 565309599 559579329 679305118 162323149 916337117 324517285 687896098 545052031 804264159 367608182 864886535 665239074 712638360 653602041 765669404 632958129 899535016 141467 298299259 81866647 817975708 136975473 859874451 510845744 989268008 406570369 976897582 316505212 837241573 906023808 957438673 600611112 861822765 618853777 868270254 534681941 796318091 34259060 692644179 719018093 983856244 49083176 359873953 548638180 558873135 403460438 585919032 387645888 900243160 289163855 464426493 475688124 855687633 549188365 953508665 290912025 691079209 67164502 210991797 224006275 555857166 207044753 523858355 811283055 882187623 106758639 861124673 127424701 600059448 420061221 749178675 876959310 945418741 166135816 850769557 741562994 833827765 444565380 939758012 183381160 630636138 429070415 759889090 145308841 998081686 909337699 977064511 862377636 966223531 821123219 904917629 835086903 840000711 718568707 789012678 414839489 776607742 655364894 773181093 613232179 817371272 891523604 993263908 556648758 956280532 134251161 394623882 733477827 976282907 401464054 590832637 283782687 978554442 434879406 506323867 583722318 635882560 883811635 965688055 796690188 866759382 823615762 944374296 189889044 982828026 152383221 358229339 591106357 971395273 584269413 913562165 318941975 823441309 523046608 833315157 789825462 978281724 61419594 549438809 47798226 181606268 207882411 983074380 839927937 965233704 923728393 961679628 889339147 951693409 414190351 767185897 998851389 999117080 571060856 708718399 854718497 888557667 404160239 984752061 908877556 954940582 50600443 506509348 159926498 969563954 285262367 905185065 994305206 998495669 550143271 613356320 740457801 983225205 421859105 638454911 577280928 789413180 457890580 571760368 35088526 172147115 642655907 739777910 209038720 257114175 684657246 859512981 891246446 994743172 734142258 881339997 904021048 970501251 875455604 982506058 405684182 716985920 346209777 669177038 951674248 979939174 723553541 826448695 971295414 985878262 488557025 688385115 141954733 677017842 88727398 92252294 942167834 956934104 922725308 992245073 388532378 539105448 333519151 822808326 960961443 969904762 256869166 878902035 244396564 290778510 90566888 529123944 301713025 407286454 858785521 972406143 345675610 360708526 707883159 896297728 202538610 534540384 614839615 665032538 868199635 868357397 141587376 963942987 494305859 644627046 669230635 811785686 146707765 528081848 768081797 990666250 136052109 872256758 734455517 987820727 591441342 878634717 167156053 971089914 721307184 928377003 427657108 877113992 947554797 979009098 69891766 276027814 326405651 585090890 210624613 402492734 267499789 736257220 965705664 982155410 432698731 560858904 623259169 707058654 614045761 683460562 971439676 991462332 156927452 628221956 201269298 300708331 500748839 749475467 462985730 521289758 763873510 791765247 333456287 465731882 972209660 974020641 372885771 654010724 386177679 722118857 693755964 867445121 256679447 873037739 630401089 890323541 660366471 717154425 690825189 883166403 980694335 988736410 718909690 730723453 39123811 166335365 644087249 726064116 637602042 748991877 219758679 411750689 195478422 786837964 951755251 967985482 339528619 798021437 159193214 524580441 693513606 841301034 861269828 874233808 921077809 940756551 329541044 405609934 481357390 757478821 822725938 946531276 26512520 562578447 787042322 996701312 346395940 623029495 679009238 799734865 909022388 987867746 296759023 399937358 726160685 775493552 202535336 781100447 610458445 766394792 82277409 439434580 277966626 701924971 749783232 790928161 463486484 564022580 63341737 408568394 535233918 572515832 460785225 872541702 11809824 47642971 284001381 479813830 310202253 547189655 670006874 863298066 330457271 672232255 876013684 881706245 293773120 713288056 147768204 857980474 68934151 718138070 395404822 629346484 177657210 616772023 603693107 855732991 680077741 747653621 925753892 943988516 338695866 695368529 705470059 902416914 467242175 644750821 773453128 798921602 415454157 509575684 353672716 703300669 593517810 872826187 346728017 704597738 211071964 332050474 59865019 187361976 535420907 588428180 862049046 876306763 379871989 644418885 125449851 193260194 245250446 867726127 498475904 709499245 843693989 892515079 167880497 284179816 498063288 813118175 226817478 538683154 983885768 984497196 142891306 386918146 917348600 992708157 397821895 862322098 847022054 929775056 203005323 218650060 933477586 998795717 408507536 541713404 325888508 465916792 822245718 947708560 8156690 361287370 304491208 345154868 859121935 934561207 2148984 617404664 559491440 950878965 313010366 762775427 306718302 536614304 77403845 471576952 1791858 734256514 743150028 874561030 274716146 831805935 302373154 502719131 930502311 966973907 91859922 353425028 608147505 776967904 911309457 955149279 307528198 767491889 3982893 236029559 644671900 799450867 239307258 883815965 715663524 766721062 255084403 610231759 126093208 599213064 78724569 111690625 477918104 491183972 292958894 466875453 397661255 833880633 860107866 919398648 112795378 755900594 968414761 980883561 338301797 879582467 828489151 845226207 966182485 986388758 985620370 992667740 858528075 932503799 802454634 862926533 726532699 831010692 538938116 675084688 599698271 743042290 182603539 715006586 678672771 776930425 832123927 963392650 807492757 834177672 505255494 807720750 484617140 642776166 259529510 824199218 873096684 966021628 613825221 725205182 152993119 403226627 6735096 143311975 943627098 961015572 741235952 837459212 905931274 913142999 707704208 712151636 47255242 58728993 578848208 687203853 885916559 949206608 939165906 976521855 411596878 579637819 585840809 736830642 955096672 958489115 641705717 794768816 9703216 114458432 725003845 935330988 365651969 849920331 610866259 696287390 251462225 925660117 688744976 836117674 120039868 146753676 792382978 844365595 214398069 654660992 370812295 373320430 372911712 916506277 961687281 979011862 47140235 619337512 998741539 999462764 75540744 502820992 190337592 698306860 124366859 954624352 682651362 892993292 821557544 892901546 236477651 796267683 441795719 476406831 689196681 982977600 946378351 990073104 438909383 498378118 999098687 999829830 680856518 917069165 932565652 974926747 765570815 771567278 949181090 981131267 525776430 945694838 602010094 978094842 352639654 566701125 444108338 661479898 46267171 674502784 852381471 912658036 69251972 465522327 975024674 979320228 748833142 863724723 929267972 962603563 679293023 858551411 673127841 926794701 76649945 692539112 180827289 353422622 235186831 413186545 300619510 778078094 302619618 776001077 445606202 804107698 907207751 992564585 374438690 377228059 826067819 921861596 126699396 784120539 54469095 919695264 900623460 947423151 821327807 951599250 697249210 819350641 625436578 933829703 227964947 832761045 233331670 783293137 772456370 934085059 261666710 345847813 371926604 947881141 134061421 607775761 213828597 529217811 995833127 997603208 89834900 831653786 339439956 419185637 220265646 564491220 601584997 793311290 690175613 892309912 427634000 933281279 358559820 966985711 206701537 920066417 491285262 748471286 706238233 756458451 920478848 991740867 993553749 999285795 737994417 802022099 631379727 631391020 488638921 489068546 430412818 868302277 349625377 980434235 723774608 763423466 305705727 506036908 737793020 883349349 935539898 986579390 963797179 990705167 517190489 812500401 755354097 900739820 950969281 959858107 585975759 936151604 966448631 991753128 797661464 987621314 794295180 807932209 540571164 902937275 988724669 996582602 772692877 875019525 254579945 370728646 793274959 896200356 628480885 642034769 755549684 808287013 395244168 608960161 807789669 871235772 589292519 681100352 425438256 879359788 359474500 560300451 519942513 853575446 690518541 929648832 96295532 271653965 355307901 930864085 115847081 290196663 508753624 962535014 852418979 969674779 903480859 993962481 912594378 961318188 760169279 970691336 503196928 517252020 175346647 938135548 514653992 788786244 707322786 959719371 347403916 673590294 151828558 435474080 555694370 893440494 906395545 929924275 924009168 935630786 77299752 102354616 291942483 468120273 334454993 929231267 231323227 970583334 271182041 285980082 723581145 906544125 196606604 857158934 290038931 982699998 831235216 847968200 519577426 557118981 797444420 927819554 465414265 845903677 818707158 917608231 630500299 784552548 922126434 991705679 566941302 997533749 161863319 193285424 785246638 791825058 595460460 927431196 170584428 342300997 507777513 981297434 730917865 796934599 366722372 935153633 442464629 507070868 5581523 176028087 84172337 519952383 277859485 572762056 896417053 916794134 679050821 752255917 841489789 927852877 820987810 865039668 990358791 992131083 460113995 496823863 27523562 309844812 968610584 981952667 681173917 978169488 929315271 967466129 498701263 710128847 583835859 689904951 154693783 359216883 259347702 341705616 128819084 681551076 678010358 705583811 560279823 775254179 119977974 684203390 955593296 971687712 756101811 838234047 202280919 650698574 393583447 544828963 985849878 987716546 76092391 879783925 782368686 787673289 509462075 606946394 839768594 927374757 951563969 974086324 169212469 189721944 64790023 989459126 596683740 961228478 901268880 979208389 15266363 411515973 356803130 389474254 117386682 728892732 56044463 474547741 698607056 819808813 334169621 502829961 651557047 955395937 630708708 853203659 995868737 996177755 190540311 453045431 751780330 992597367 615659866 839293643 930111938 948749236 350738107 505946840 946666932 987093070 740579872 758309399 108325322 731143705 547107007 749221223 187349963 242812211 955161434 994686644 712196384 823939492 244326217 488848674 198691273 712616743 295061346 305807203 343293106 899179575 747431941 878604944 208470088 489610444 116945977 452170044 39605985 993643051 501713106 769969022 376039876 557682058 99137961 599997023 393121997 664033752 258477560 456814784 922002168 968085809 517116518 741628374 765808158 781767588 399546701 787250192 663073892 861481674 844756170 999941197 765223076 837662657 167624268 264586495 670242058 858356713 378130352 883866279 351949096 852292239 150813065 200377843 695906667 782289603 355700667 650418136 584485642 654643763 749302785 882339646 85493598 671280331 500519708 989327447 902912959 993551424 225973021 255085053 159199598 541525177 536351831 781925461 259833929 998713946 609448369 900600257 726876968 760861155 600045412 610473337 582019823 761318209 854482236 904762028 506165817 953626939 467212301 751910937 814183347 827453301 348448335 962743463 99210626 225992015 691139517 700984692 786376103 882259210 884116725 969142955 417768732 418193939 407706690 478752208 212356396 568656172 165925997 725562091 795597023 852776617 848846394 976181772 314385198 649809646 525367883 947831286 136770732 995696560 431580960 969590056 762881944 924034174 774310702 830566589 598563081 814929551 908469940 943569322 856078830 922036169 681575236 945936627 845961027 929412410 708033071 748699597 454287310 735519201 666533119 877355046 325791026 349046274 145892656 669343668 482629372 511619467 675755866 795615109 672944418 865520453 76068726 346235200 493790933 952488056 656491702 927010840 518210212 559160236 423125986 584755813 739751279 799717168 149708422 578879272 369088747 709362409 240198585 735775082 423020985 777007250 770031669 813494337 595706132 718721643 647037773 862308281 594984367 650815951 323438290 392700143 941365118 977267465 288227637 734285662 510452038 899443147 619251780 653744132 733119643 980833451 358616578 599509233 7243664 42474823 555045015 921498978 348852846 656268710 601351787 619022272 264753571 746893722 200228131 687359065 259062875 869711885 117173014 985177015 100273365 622001045 10233818 936163597 607024985 702557819 451975881 494809064 897007520 967352974 921701016 935548599 784394433 948999924 42496885 627712711 980155861 988100138 904572683 928479892 839123363 932694302 208782358 871825538 876875993 944955070 798986315 900809408 814541128 985897609 159442447 995753217 121390774 954535044 317836800 484367900 15660313 973612448 418434143 733977393 184550009 326064264 267994530 667139284 306514427 469202746 114344217 316246910 999793235 999983056 988864829 999146907 620516329 918562594 145879421 466234142 734940204 800218001 610261155 686544429 20704136 275392951 318937542 514548208 637791463 803167682 447263512 601973226 491828703 720469634 730422392 733864470 178881246 852653348 507133706 900447907 519005140 832152895 44942375 719653852 723697836 967831036 912176261 919257892 193461081 417594003 123772629 884004573 772526006 787936095 127266735 680444132 643196385 923482723 523474196 656671446 779079376 889665383 517095108 749202941 781013755 984610219 159848764 183284462 476665795 818937365 284856408 993774898 30121501 537308932 809547621 958366653 801210261 849485301 34896148 623722124 649202135 727837214 309656909 617653499 449861278 764761069 946909047 994476902 464732176 697666879 121022241 618480657 163902703 998087633 46119734 293445215 89812457 293611045 965371890 997171263 348476191 541369011 589680906 895784297 498664022 890260301 984750142 991251134 756053281 759610360 614454942 838946603 209051818 838323558 533655459 799679718 622306545 759589645 24678116 266912733 230219083 422353696 469499657 683896314 874737225 994688755 426028441 821395637 204448431 615698156 176817200 362951105 945671180 973781464 70876252 87644917 437490842 451206987 309628072 956184338 250009711 550961500 213493599 930002036 209292094 290210674 683935899 903169463 490225477 708350800 414989420 847826509 619834141 795850679 936373285 954945248 871293928 928194889 743612491 902310333 10878570 293598371 417361683 772818346 982021525 985504026 162052227 182361184 828133839 938940782 894728268 979247045 372736287 491109215 461180473 620680824 39259860 701377387 62170106 484540652 337375829 338760776 901608404 951718142 563325317 895976550 151687425 927619943 351904193 903307959 395249171 510478186 685704461 781934181 535381487 950147189 626990993 974525637 500566769 654357278 752809144 799659880 161252558 230548417 934564635 973578088 568099412 613619982 842708859 987380700 633474296 939594560 146489853 193740651 253466660 433002919 461023622 501062990 685010415 977665499 248048018 950883182 81606327 257548719 239868175 639069901 560296617 739123585 302160069 553724600 690066743 896075396 692039532 999051301 343293106 563174979 696509348 956083878 154658967 298701582 397973328 644494948 585760513 913598626 12999733 534752985 366525420 444899483 618791896 891048002 483491231 582035442 561405942 716663214 673059735 986730124 220798144 862447607 394124604 559370212 77376707 378010011 285845656 748899242 101607117 519399874 464692204 960035805 345849275 895595872 202604899 956692719 542153767 837849282 958066852 967396493 688200523 868510215 236715109 858739893 373147235 976858745 719778401 871749306 974513129 993430382 115633074 468742596 247467452 960185580 642757443 999664886 905213723 962857896 676200692 752268048 93205879 817954445 509729075 924755269 160513690 984112568 2825277 764618303 227271025 254877751 722965131 957272175 109830 949298886 135093223 850131096 534587283 963321630 871966559 925480438 535294342 840454430 99559948 812767150 649547048 726267268 996443015 998289766 245135282 778227359 436715504 889260634 230210841 938589097 792523273 862592491 873517065 975661428 315885258 750475658 363056819 450954788 122805560 238999526 76025828 826447655 814623365 828131391 362956330 447435773 336464957 852970209 970114205 988979649 931996013 973071454 589654864 978507747 889633482 937119282 635387405 963707955 817029282 818311936 211633294 723284615 781473483 893645416 623412179 776777687 21337738 996320330 863575146 877028924 958413557 979359864 759192133 826932693 717190933 817363147 253870912 952234401 536189630 682675020 34458934 403288023 765653602 925074968 939993163 941806204 99881834 735878241 913973256 944084372 791939207 922857042 574667599 623869876 377829497 539600783 915528338 952718606 88871902 634703359 918535511 939640818 81111280 312914096 979129799 979370626 847175655 975357815 298007177 919031701 625800082 932466646 566918441 858346917 537848868 995213353 642059414 945265831 570634792 706213647 45344837 986479674 980030782 999680301 636659493 844183809 953802863 996244284 925525298 962675850 647263313 993262202 556287407 629446237 883613661 993711718 891722077 938471176 407152061 936340762 244513477 869947432 674077385 844714578 799991433 936595946 640937835 752209369 684780501 746956590 763054875 972774766 693851154 749903611 483098781 712662886 359959389 730081093 659889249 925237094 701655487 702566787 156276503 619756176 505518123 722483687 966594686 979286499 223338023 786565844 152883014 783737248 67372636 642924437 240765421 935873807 806890833 920465769 3955094 932570210 389648801 729674219 402536728 483317252 574175631 769665871 540159371 979932251 940595719 947708879 384935137 622417189 584772120 738254853 359894439 385208131 747010882 923965383 218810477 458088855 389498994 614052890 255219238 465888121 775783957 809903633 894593087 923158301 371578602 505923656 246693633 369439667 347889263 968445918 479693948 663138521 557158654 893555855 290247958 945404742 147019454 950116844 64854811 812077758 428163198 971841935 2728997 771353480 782668533 922971632 426479921 459194032 398900743 867394990 639955445 952205917 183928987 291087703 962276037 977637425 929996924 975539634 707402900 857361434 976302211 980205118 919763919 974808853 134260885 342544656 23668941 331456726 968745948 987077843 156556046 368156196 549443399 673276333 93188000 709296257 496272189 961910077 674122179 784515013 415205071 694343772 370109264 395368641 471270163 929728471 253728615 879130083 694997815 863839047 775620260 896254982 691210756 940952082 361728832 382291458 36467592 781188063 591173800 776010586 852032019 949667480 378638541 526439801 393908235 933029521 474513995 986665061 247493507 259974317 709865272 793539132 26609980 520144742 896539592 990947192 422738539 534346766 610300734 984642881 980416032 988008833 915783324 939977724 668793069 915043333 734551738 749953762 956816751 965377643 717323160 834412442 875220765 974302619 657105119 735416345 790932817 888704200 302882678 867782786 684535658 895714151 847498660 922137696 813868385 840807226 361600455 465502297 924033159 973437954 583102381 788917432 121852991 677992703 818106821 821633376 415438409 815956952 578082901 714851476 122590656 858634428 830640302 962219594 433576525 848237431 834529413 841676559 432811908 630956003 420639543 900571306 309231878 708419568 30850187 249501209 118341225 546703127 204472273 517912320 463618445 769746421 800208867 999962974 700051873 939837738 301506667 434450540 68304789 335812851 246554002 438171652 825075026 913429368 442736412 672385600 158155161 451757123 751218467 954220024 864537686 978875269 295831202 314926624 618235724 789025916 310192557 976003390 557270459 689740172 354815018 413851423 194533055 522002561 428813296 520552801 242899053 659875351 870120783 878999149 662989100 922175532 38599935 832418961 284461843 764600489 563597001 936106332 835159151 987328573 976024050 999816611 953059414 975882677 337623330 403244560 411593851 480763649 288892298 492178320 634703947 867203673 306662294 911363768 352135816 579628224 251529409 822621617 944259019 990639829 802005272 815043644 87803619 793306922 520962072 611035239 521279879 954348441 802394524 822752669 535181355 726898873 990485140 997461181 392067092 704396724 623813631 987712073 646563694 901922339 281475449 666371191 864447336 874988477 158948918 167756030 556040125 908822286 280682773 547816768 307877418 385800956 621703987 757359495 706255908 991602780 476264622 607185861 423028441 763645313 849860702 914457406 65187457 546952741 757255770 833183707 21960352 982548483 726093264 731326098 555657841 777170858 43349438 345060588 684744743 917957950 883834212 961028281 404084471 548562342 343212514 544180675 766110716 770247078 248204059 867027720 862172931 942511627 568764898 923687414 590372974 721778547 913163613 958449479 924078121 924178804 641134833 985929039 296188775 419372155 788991725 824552371 58197018 989572440 176160901 437436253 974975685 994530071 233518672 439776369 93788942 802009966 930740923 956475514 478870989 495341951 414647445 840715506 523065790 627061444 657209903 811523769 771921688 807534996 233365517 912002385 394778996 790866227 487347068 527830345 761449779 979893829 190387281 710431625 529119830 995983299 760748262 857829817 327339471 698435469 834689330 862905548 209831098 655723095 588329643 643091131 183155392 266647545 245650907 822785879 897413857 996846025 213752784 598267393 213970076 528708208 382349401 729988475 182993252 524744776 691478181 774994546 871444034 890966183 916147316 961648155 25483355 243332536 584012662 818541300 482584012 568328327 734724891 906834427 222238091 665795008 731180954 796856301 400390277 436811712 997864329 998739086 421277324 708386836 49082822 680245674 353377449 754083347 773403866 910849188 509534954 981874981 899795681 989751929 803174404 976916363 568298360 811123272 485167641 806684226 985655700 988065508 647566445 676458331 915587026 983426583 779290430 900192156 280343544 602041667 419842473 514568005 170241784 323012473 330143581 521497069 614998740 921169435 572307751 962788052 403794925 423189067 638709271 795550013 771647970 826938197 400600595 432486125 730511964 910464370 610115243 866243825 684102934 778814543 506669719 623559475 536555866 905052411 426244255 750676979 487077659 826263559 688839773 999225412 717182179 893516592 781348464 817928170 950740937 985737266 55323717 256072809 405150518 660066960 313466591 567457055 905946181 969491640 303917618 639162659 228742132 278994653 670300690 692501883 237017248 522010380 28051173 800620537 161451563 937089400 473176804 578216218 811773331 903768327 117808676 362234285 946699055 959770308 535463693 938783813 846607115 962307276 89113822 192168810 127597789 804393759 573724402 597159497 299224952 852585578 817167815 987608068 665409608 975007816 363693263 501541581 506254295 745201171 964103683 965562704 389647818 473078589 496432071 572433005 808261889 990495400 378585142 898295719 655395873 845840660 775233232 989906937 915038632 997638049 416295017 789870725 230902873 804048025 513339426 528836809 937313953 986973142 662908014 828746358 821243086 914458185 232292923 953636259 92283607 961300061 272858592 632593381 872256929 937969475 797238031 980938375 884344359 910824017 209248584 417443955 846865061 896052839 934853692 995106961 845527351 852426493 83459530 263693589 471043956 562330103 38284833 457241242 748530204 965652037 694103378 700916913 773323828 893684818 671375177 910931435 982324161 985880167 242735570 963335044 202409347 465333624 576757163 577924231 47590778 330505017 428691627 719309045 638055043 695592262 500922034 743015422 574430044 948685769 886838026 948376246 591807442 891700736 917358820 988029869 482052849 651133126 76615089 299003977 806870624 971076826 813855412 940381226 642113125 891174603 876481323 975384124 511004282 567205387 564511672 826523564 810057939 836164883 937223539 941456687 294154241 450233727 694091588 991993813 250441570 807759613 714157622 743599614 263661142 398581974 72091552 682204137 100821753 160476441 217303466 344866406 824259711 892203540 190514575 985843918 622103948 885310473 533885253 607769253 737494142 883203046 453365581 624954756 153348963 270341973 759199751 890861400 375806099 380990263 928855261 992717102 613597050 708593044 599032048 881397072 396015181 961837775 807893913 958969233 559092952 944356865 470724355 541768563 143081145 981851054 211234167 559210348 935409472 936243556 193377029 307825909 398444904 568996091 304308589 854611716 15611733 556314562 867264673 981786771 896105885 990924188 398041140 510916191 753852895 957845186 144053950 506118891 801683509 982045402 854693764 885545017 26736867 86185969 668004803 933347903 487336111 863422149 324455888 673069086 238294545 827386767 585431673 812338397 947939436 976219940 475222415 889695110 634145282 861349083 746867856 824512846 220693252 827636574 941462398 983085952 149818829 717061471 454202136 750001331 965493292 986269624 799404515 845334935 579122485 579507951 287699949 766413205 244721096 255814018 98395947 451343266 11366689 314600477 678869650 871981855 500090437 922419415 431710003 784325779 908357394 931315800 913533888 917185059 9159031 504876005 739542278 984360107 275418715 304245417 883216474 982289635 668899909 735185998 746187950 992509275 930717555 964699494 279924512 955970320 529016855 733476225 130281150 378095669 339138465 696216859 71814295 210551954 207945517 901611058 249911602 952455369 851273473 898891906 462542475 876665178 240041739 355425537 739033278 770656268 322999790 893001137 873585101 972290456 104436520 252086268 836989241 864983177 211984134 395132137 166255689 293994704 884870094 944915797 53380228 145485947 820546459 910029637 548282604 690373033 656688718 785987537 861236092 882525584 822389990 877246493 885833915 934904048 551863297 773298229 562602838 940747026 815024083 976046742 646816705 718584956 277166798 466224601 904604337 989847769 2110847 612232121 694982070 925185224 958395307 974921370 594078576 967315640 727646096 911150671 578660707 918704127 961400322 999771400 124976901 415307223 124458181 942570671 934353166 979767396 444113529 896896940 720154963 861367217 268250760 782257761 943055608 949521798 334769343 375796602 141412244 384135587 673724288 727458061 403235989 539613068 869529922 958947311 834913239 881382029 580078940 682253682 320780781 625552614 322045715 675778480 313336178 809793309 764873285 941061029 571295575 835914820 74736808 283348698 881202920 902558446 354197403 865776884 89414874 741129419 477625323 903460075 565516343 860481423 753919550 832827893 340557464 754604598 88178392 672268731 427812896 501998190 156478097 471337755 605951659 917697022 730332934 857241925 938012315 945279294 868306027 927347131 171386264 729745379 645068933 755271445 564818722 980352507 747030013 948526571 282585160 761668380 78992072 691134173 635219999 844870049 26826049 82176869 995548594 995889858 757232320 980128741 211042272 542074393 957438957 968982808 831270049 960892294 32594002 322344631 13270939 782034492 358219065 752705129 51004788 709625009 130984471 554364747 792350600 903704338 907969407 958576206 391980026 485102290 912500537 986074578 829905139 844100160 836490184 899185659 785442773 849349956 141444547 960483393 209874734 570059507 276589704 662384038 550672192 650413932 247148866 470318207 965944480 969616995 22908759 262395920 842353863 957577789 294501619 538922589 992837521 992858900 68364148 120709282 796574094 881532454 69852271 525504821 276714459 842198378 644875160 693426487 960274551 973891714 169075868 673691724 4425688 769852378 356848337 388764213 673045013 901628978 956111716 984221355 859297312 959012406 74547451 906713343 363614845 494805867 233428312 906496164 54888101 872043010 811219855 855638059 185086627 350247383 709564984 776859302 226719833 806754219 216765371 233153433 204445183 656624809 877687988 879210126 257223022 790494918 552063993 966358291 460124770 594741836 461114249 578188376 836331114 853397672 149021184 835430064 810712515 949641580 219315421 252729590 920810333 920970768 216270035 433618807 94668444 747247598 990273841 993749587 939013143 986572640 287798579 867693673 625189997 857012129 917155758 956810370 859251064 985472191 15897209 228977143 392192041 692546646 348232790 712183595 838119419 989573204 570056284 964520609 355961021 550021481 604530021 835520360 48310058 80802576 58874726 978585420 70944907 970177697 711921835 941619885 642899808 888652053 233636043 379286068 805403031 943091837 17442306 749178270 160758175 728578185 332253522 958743223 190668618 457715291 445012116 768136642 114773169 245453442 955086152 983698341 895158930 915482177 366197972 627668052 966562049 982920729 592900284 708860770 890397601 899086337 382897836 788568489 305660815 811865583 448304698 648801768 169843039 368870188 5607126 492044441 315605785 364189021 195754652 331340178 401846531 729418389 224796464 302701985 623328927 643495696 625536228 830444020 682080173 795401689 503530382 780907133 432203909 571427912 991182942 997417982 483281876 786313122 54156629 858000467 249414098 668881055 596710375 691748704 216978010 903388939 327255203 343865054 247191726 279651385 993962928 994499580 598194331 687288651 320419940 395628002 763366331 995852075 173051958 630582965 768779667 813660287 516354658 561274695 486380546 911837936 266699574 294111419 38247208 511829977 946533580 968071757 494093000 658626065 379362058 985187562 703383072 891974616 880257735 954759765 249746257 317619603 543275085 966905019 566937859 798562971 35697688 699891635 801894172 923500193 332822830 774315856 208832229 296178083 573791750 736690824 479689445 518219357 338353244 928362217 30798517 170422001 74817028 824588080 459922353 467022492 175658381 615638208 854600598 904835712 961879878 995451938 698798660 935916727 795440638 895287678 70098408 789338774 323141152 610901356 640692522 776288415 310798593 680485097 552824839 668574400 64363242 389699598 926237410 997229561 659566381 913273881 326720015 938517378 153270812 336834070 442890731 883890958 977170201 996838864 331627081 824370985 182767445 342719368 916157657 931579231 495440373 786616414 708620084 813005971 134596642 391021545 898679458 952157038 743637420 912274262 21458958 628902496 969092397 980858399 129186254 457122503 577785948 668245214 259205255 308288197 339803033 410482368 81694375 487574433 969516264 984944312 58690609 508343973 156783151 581123409 133238979 353656457 803238342 924812091 133978358 214298398 856151471 891028530 89553305 916488288 731979941 902613008 546814724 966865908 977683326 984361369 488362637 555550293 858109905 921168211 591306155 953540850 699133017 845387064 347208433 980264558 12309971 92029666 676017491 960643035 580679417 602057703 694158253 819478168 38485704 117906655 313219817 853414976 152987777 623378307 369446228 959993863 385755940 732424834 809263711 976218516 540482594 649747848 735192560 743249014 152458153 887975492 971540036 988717140 897318483 943848001 34637297 888484173 280241967 561115923 502165244 607728178 1943225 331151249 215310139 902973640 671298579 852899351 837627094 939686868 875644376 928203439 904620460 950805085 610390985 972542447 835883685 873763710 376951585 382841964 694041378 732336487 444900199 959508811 673837362 949581986 310935935 853045232 468861171 477713705 737616445 749027756 865240971 880719432 829115224 965548338 221228066 831857676 895630924 973809941 944806998 944947165 744796358 969148927 364498375 964127223 192435649 299549323 462116681 632535345 458328900 971250321 325691704 952170268 301446361 525636967 170375004 359461636 586866783 883210501 871824520 955957579 501102930 963495119 793199968 812409184 7673036 111604473 145129544 789532757 115573081 453043094 604270710 605519033 265319103 568545008 696330951 944551449 945778812 988114818 774676727 840985843 349516070 916367654 716808762 793324762 659497250 953055715 214015393 823321629 310427877 901217364 399929258 625449868 69646686 615975213 771211018 818987950 951486085 979397334 392906955 415335288 102553036 872870833 692707524 933510461 528074494 830428249 698978419 708846108 631405967 867141408 913959719 986941998 288135059 451790348 853257563 925013387 386283991 711952862 159888755 788270358 572161421 830815045 463492340 798077203 129616220 179399921 859147483 986548431 918423395 993608622 239772593 921257066 826373661 896887521 31275503 222989830 62149915 584014311 257430867 323984225 108493944 631352978 211172412 913944002 671043333 868746532 74237149 683718180 623189158 821236340 843111426 976837838 836996433 883113759 533527142 558805402 680688125 758678329 488287187 765346992 39087747 588898633 932659378 998327344 368477076 911986731 427174441 649170707 874923819 948426216 698600170 745922514 250183718 586976492 667075876 910680220 387982002 567249927 783718805 890261317 972097144 984708547 312118226 776795371 862259819 995447745 330181879 742106897 385923154 392136511 504864788 656923267 626745475 899035441 410299573 824360002 428504859 990304320 589093429 634000029 552012537 700954534 317459906 484938714 393787645 774908415 720851122 874398928 356646065 705596731 489041903 889314104 584481220 878913220 608130768 800204818 378539350 521803721 154764584 513813342 132784861 815860404 198845160 927946594 598076629 833647326 943133406 972700261 515004613 930654049 790764173 839039910 667747074 798688355 519055249 625689124 171215345 388610526 599473337 930090050 586488459 708917758 719732828 854261589 840939988 871344548 286344121 436984711 787974615 934199650 891366704 937257055 816025710 941163374 389031612 750787825 35989101 825249886 390878002 698918993 425704705 460410081 622948755 790361390 666483793 876998817 494990887 985975882 792868874 861111900 241843761 685387440 986361260 991656649 788014610 951056014 346815648 668204048 174475358 257411087 96925427 198884341 145869990 700735923 25670449 892655755 786077565 979760615 109721203 670038403 109089720 317154212 962912729 978328036 589069076 917239395 332617842 478112981 602621321 763643974 426432667 520639156 819025550 886425448 440142860 546277042 527696633 809953604 362350590 569914546 534163683 857351122 369646403 741883643 794817044 875538881 9818969 20709282 902345034 952128684 995859662 996534972 293134639 897832293 269738737 560073660 377510026 472537706 972121639 975009182 908780047 932995355 468288248 993092378 583640416 916924180 475911737 548735833 426236329 985020852 91099796 660320400 561405904 955214867 739812038 839993100 189684579 344965159 151329658 333353138 820821710 992070638 897648507 902027300 571786246 938061585 480314697 994519302 39288770 173339112 744535358 974450122 511036388 651066136 487540814 655584036 407224097 908979795 240864142 817403056 656137191 942926287 232011856 235929319 206516052 842673476 570681117 836894240 577531270 874393370 982492278 984025307 486251056 992285876 750786251 876766350 117280324 917274340 963813767 966105190 668816642 971302520 119505683 783759612 35749811 681213525 840828024 975935863 135800151 615760162 177137132 321136550 155749891 820033455 621506228 735610835 915293819 921255672 606488101 732718633 192663692 418606979 588318267 807280707 356419417 597580685 295999721 583897481 109349569 214628252 28545201 628498198 199548652 835005586 288507638 945001133 850039040 864641651 968106185 985716008 150382266 757575759 250647503 875404602 401212570 997647767 113748860 142973503 5347809 280218440 304530489 570865207 546562323 978711008 249247520 490212626 451567060 728816224 549373905 770078893 711209182 855227035 536448959 851089710 505310384 955566628 964261018 967958904 871105232 932828048 349816056 789728034 21675332 714392168 212587402 538694604 709246767 917014106 671054324 752355179 753546107 755201169 233835975 849783225 287110374 863806790 449939940 792745105 993546725 996354385 845461418 989901500 843135300 883887091 659108058 678902081 652110595 913974644 969754639 992123717 175168328 258996082 148509916 919451558 311345953 750347698 645768960 660355672 776606701 778606750 805749163 806652169 673382889 868133201 17379772 752207098 641259432 796454326 182939441 526491622 816743840 966195570 761278021 939938973 406781095 469520671 274023358 706015051 170047990 196029929 633507030 668789197 369562192 859293379 107646201 340819688 740995356 830658397 15545124 278001432 307175354 646282524 390773853 533810247 110110597 644159716 366022070 497218162 539879113 786533246 722205849 866411977 461552630 529540409 793981568 951449884 786253999 980226125 221134710 726200388 637872071 967766256 248382312 905634738 258477125 688085790 814246835 849816231 399070059 814281071 2539456 110925377 908541222 951060196 365074395 876167674 38490736 94974884 659796061 915069584 20651935 282959945 546796160 575774590 509099 266239418 557809651 679674789 600685065 740899493 301870774 754860686 550917382 797807046 502717856 607351523 978835776 981747584 586771620 621694398 440059073 466427573 914573799 960522913 829881254 967811912 654560182 990501462 443668505 771263274 91928207 842249783 869808960 907933508 146636594 865432394 947579544 970598219 212155228 760395322 142649735 928066596 488285309 986247399 550268503 784529858 403545657 581009865 964770641 967472030 900253699 985790510 926952188 975510614 798823569 922708659 132574356 395836078 535048896 673727409 580767680 787878333 875348222 875746280 46820256 131346625 651702010 862568610 768848879 887380719 826809432 834482652 344066009 763277531 352822739 750350598 581354170 781514202 921714511 978779292 800365981 930167746 819602018 945159699 176131366 930066777 703035971 789891977 604311795 857757532 432444741 886066582 344201596 728427901 209436615 368489106 964169751 976126995 484066558 562115202 651980018 705351229 107210202 681501076 384601099 707894644 789493532 835109691 729609514 948256781 710643651 791083440 354179135 651724382 312999932 858009150 778142554 828778881 635547640 705961040 442031332 713360882 665386528 710968319 574391448 628726545 638628823 742648164 914175987 957443590 762856380 905296934 909271927 965602053 665594345 992058151 299768791 524872938 998647417 999027684 102240118 840569442 449972371 527645298 591827456 745155841 998214223 999648009 763410867 935480047 366170882 392485589 212568874 964540131 517638730 995843390 525665872 729877969 542073749 874164384 461881471 599879240 659423100 745476574 593931053 884479360 299940900 718410870 717778341 718023654 903002021 930937305 971271420 995120556 766966251 827352199 790322828 934035114 697166474 846809701 852776763 922861967 238242089 644128081 769440404 846334155 391104224 570664510 963975289 971436553 807859019 969323800 543259720 664410329 140382250 441226721 801864463 812432644 932863882 947539704 525942456 614815126 36415400 129175094 671782439 708968154 961887837 970950217 391838108 725020189 270681746 320803884 596964328 981553581 976447865 985508815 926516129 930967832 984694983 996204376 914730611 916756892 345539834 655843086 823982576 870729661 724496528 727347006 438806815 678206283 247701263 799194341 878602357 887857930 70420840 418378482 513501482 783146942 278592438 779899600 154480170 689165218 326839146 424870945 820180778 993603199 993755568 997737207 122526417 656811829 249008701 813564555 45488690 109635413 158935995 256604731 519953310 731676161 193039620 221675202 171477004 839171858 692450167 876473564 277007304 545290726 650974575 768052130 699197218 870196067 812009189 886356847 924419110 931314838 225531518 806674296 525770339 726304916 854713219 937731860 793530775 927396894 296957105 507615586 299388202 929173568 735380056 978684891 221600507 493718681 495499435 774085527 532091632 735776641 611220588 834644519 996110486 997117943 841030538 903162076 676675884 975664308 720821242 738394950 908987027 953075841 655724384 672714648 449224981 603120893 858002290 915173909 626844843 908398622 19853899 675425365 103294511 739343592 654187501 700341435 170013111 967925188 679187626 832882117 184634140 857887451 984881498 991950753 711421383 843504562 625496524 853039804 52206928 830287441 247246822 930029912 374332659 882720330 519389815 586038387 172197307 561931622 77619228 392006763 971289555 998715796 387529763 541104221 674878899 777645112 801570048 837279319 902462687 972275721 862858741 982401079 45516402 621660697 569602829 823602322 827824030 868075448 273392423 329156269 223198394 922780072 229180673 282703464 55726611 334956602 25237333 756094008 804479913 807841725 777108306 818718901 150648266 478474394 953710851 998146443 285911576 610104568 977174082 987969381 636571962 769536476 385492869 962664338 633035696 721256241 465521455 600318381 817601003 819936751 951241168 954405000 747833331 853943471 981465606 983155578 55079874 530296025 10606353 383841529 297144123 783961445 687654292 995626266 826013414 964752781 793345531 804991927 832128058 917860705 714054612 951693081 896856931 912864447 919870579 963670689 764696031 913750324 986956296 992605171 58192396 236143048 470400896 609921335 895681154 919618341 307163574 867891087 815275613 898427456 343810405 940825491 779950336 896832495 723161236 966254320 478053971 901286321 124532188 606110591 958273956 971157006 844666446 876878231 837372812 969852931 862020666 940866458 731527248 989311509 110149772 494279875 654087677 970728736 363352099 469232289 16636771 505737914 548480256 995170884 685462027 824088713 456722319 592578615 865263922 961295590 252410059 931962915 71456650 565238108 718250491 954727539 814795772 966086750 31713044 967448880 386706108 581575605 543333759 575462173 418875181 778028589 413478548 543976186 899812803 916684639 1307165 203106787 866687663 939515925 773489317 966546404 575711167 942969672 849391366 961286602 331228166 759919810 62663138 529343547 731076001 827771801 729029743 913961209 474150172 847025474 192612171 880045547 346370871 674383409 728079213 849131052 282077068 922060542 427918813 782770029 462761587 465550121 223826268 417963730 428997484 981314672 495402136 792224534 722095993 975091144 411935709 486275698 732280360 867929879 279422328 938491648 166033995 586248677 29443905 584399053 656180740 935071825 829066721 832626745 246133194 788532328 429685477 905030443 278053853 390867198 812641957 852396967 177946415 392003764 423594230 990293327 357729373 539110012 975369614 980907271 932440120 959805147 812154112 826622971 848579713 856829460 771011401 918498467 300521240 363927279 343253066 381934361 604822650 648584975 249534686 871845394 889503976 958354713 274973737 783963094 460956146 674117336 987157473 988124497 860930903 959633233 630596818 955837801 805535139 861124132 532798715 987431356 716970097 945933871 215685922 717940206 340377858 518138501 456955041 939765746 253350607 558793142 625159841 750540259 537924549 930833084 885918430 926899979 902822244 957718727 402804303 534736066 960935827 975884100 91999086 690764019 249770083 947065059 995886985 999059704 404178759 567780570 594633160 996549844 727247213 832588569 365791817 711516424 255459635 683996236 88183976 573084477 160667348 836017743 988476086 996205771 631597120 923135970 353723923 370665009 266032451 477834592 448990174 621946934 786026796 862666540 221834664 578606735 291717186 659773558 15119484 707567679 95220258 916161903 241568655 530372065 429898343 823416142 559077990 932603918 940891139 953658319 330984750 438207469 865466749 875952841 619314547 925573937 591128004 989684715 918407695 925593565 210596085 480317416 214309148 859594482 50759199 119156934 511825261 961326514 408704453 619354572 513092459 648117559 268220236 428638488 312037124 772388227 507026664 904776248 167215357 421582778 313667810 632125146 500766147 618115247 695088660 854973601 734763618 819232148 378702054 574544901 559614473 744761166 702931943 760737601 987488298 990452233 242164118 661698316 667467848 671700210 968524457 996808612 87415786 985792947 404713488 762797642 989556287 992554484 847838177 907974630 789490850 835708016 497033735 993290600 201460410 494157262 534028622 757094816 397701489 587171245 723195305 804029686 411237245 978727927 230493284 555587170 805314096 929452504 393904950 482684177 12490504 23257643 187468089 431136487 998942111 999491630 705655679 879021131 379081042 648983558 811541369 817589316 684534651 867105053 203955690 324031065 119274276 652302716 292845495 368273366 583475399 634642853 591583470 634327295 368937884 427164463 210932956 898167196 863063955 911598382 469490911 598402539 326764119 906975431 981793673 995227206 726949371 921505725 286143363 942346959 476349485 515302234 584715650 744774562 121321392 479883786 835864842 836344593 86045517 277796926 728919526 796358451 254390275 620954007 53349936 181614412 570971307 894820612 924788813 968487683 594812939 652095454 719936351 930621129 506290067 637452340 426932186 542872225 1438776 582727798 89147323 326051177 12813944 416116149 906276880 971690119 649422957 798232633 759792854 785358397 184086719 213981381 342060969 810835360 512411438 636016453 976792052 982324980 579367861 832531087 721191053 875476031 920905122 978342287 259678617 685670358 287921883 888052961 570369923 773250974 125971214 995566176 421209853 472023119 832886913 867627826 403553202 652739036 104040696 959581148 336926246 749180726 478824620 805366313 465017019 602420773 118043714 170906941 488121834 598875551 225647441 565113729 938941194 988983940 102792258 996590179 438302190 893363044 902386826 935762954 307768999 863474975 645237378 873589720 720850310 826714487 224779639 945737227 946830819 947745148 372214294 626380242 636101632 874155239 350997487 895995445 51009525 213055911 471594099 475235135 622541297 998929478 556539798 861994954 819968478 849142707 465482348 832990700 783549178 813097774 241088603 960376818 544016462 818525168 381716895 647397647 459301376 589128074 818319352 915492032 708999875 773027036 652069768 785987257 189301919 485918731 961783111 995670990 363731841 894656365 150321149 579422673 334848475 801733401 81811261 125528795 819323928 955800004 163823956 285552139 544428555 972415771 456284599 877059988 988396417 999978674 844577095 958589374 806226542 896486748 562642472 852955490 902298429 956689565 139902164 393853133 825102350 936971034 273448680 413677725 239507937 468062880 218145961 679896269 452664922 748762344 914450357 918236854 816210266 860901081 282759322 362714732 435526306 586441038 448165436 722356360 413344611 450717218 425182280 930942432 137177436 317918111 902287186 918077960 334490763 954628903 484794936 652552588 909683316 953903702 498382741 928540849 785467107 871337564 142196558 248127250 862090381 881003663 473766711 931267331 991132303 996330744 759412506 901497094 721922537 851771473 451620639 810440656 27527504 312756050 268541659 363991929 620162857 863852648 25061090 57678756 554903515 769667106 70947253 256024369 459450681 526093462 492826897 626070240 638482950 713895270 712433449 731657886 438303451 679943517 906565551 979718474 88118748 142960642 776973726 809398694 632367312 917112204 969945464 976611077 564739002 616140279 284650330 294511758 525275401 927255478 67680790 826472634 934262305 985168390 203051577 950406844 86592286 631847186 841129740 902122499 612674435 970081162 696762406 732005089 727604006 821940545 110925518 955603251 159244586 634249302 197214739 935934416 330282261 997985438 121741475 473817167 861318140 925482905 665119881 813461050 628585266 759656071 408187510 682919940 692602471 984703934 437398174 965426613 131600337 309536059 584497927 948856503 689731540 901386486 220800640 515619102 736991761 933241308 15632878 598754567 667130182 739221512 995739009 997012623 68185290 522524912 352740499 569383839 129271144 772663935 996118811 997390025 329552447 343768699 942649112 976008658 294780483 920681555 775537835 917269527 639746344 778531249 824863064 927168253 554020420 745985459 403243279 466346018 57347184 814392826 178351476 939241474 691929408 943943873 312381771 685135727 929181161 971610807 544594469 784602366 664290707 800614777 519535577 817868008 467568911 731067429 113415378 121153507 18054574 375254030 654347611 932326976 870996388 905078442 718016060 863149106 901937478 948623743 90464621 468244984 694931718 968856786 351714805 619965482 246152018 357113335 191899850 239079013 842183669 868284763 793000253 988951392 458041630 484005227 564333408 923883834 90734501 114588719 318941791 705022642 614917748 908244054 359944200 606132073 663749352 833272317 104135033 219646916 457708094 937303724 521333719 945138887 386086958 765611915 616781818 736318026 2400598 133875180 299815613 375402131 534781733 692634722 852512934 937899808 613365357 921523976 237705869 794312185 311349084 350941112 697789597 710799492 802191501 842382401 953511061 995346631 68567598 322214893 333956382 694001030 905685417 920619108 436524443 523147571 490853857 798821738 522603674 995572012 459963887 726251102 428496372 617996761 437570518 672179446 245672198 621523732 934090332 935532677 334872423 444746632 806235343 877125328 30335786 425362506 366562492 398232106 708033690 871731348 258044332 797730066 657077122 671873321 100723359 112645598 506132691 902836511 791993990 949804633 714577944 937010934 265582124 854653546 885124668 942622869 249500267 910445671 790509473 890875668 49441835 739102303 972781179 978704757 656958155 756457920 661076221 758619298 147219498 676273924 109741054 703194372 313466629 734407929 394447763 827125674 354021982 689060816 720424439 762105155 394975155 897774356 22329081 801759642 791643569 988245099 954205042 999744176 2943022 728855023 456627675 802118898 585026587 896038216 128856039 514770464 124629422 456049014 366442715 717326875 391191306 731553990 713685993 900923181 712815416 772504467 955069580 986469551 70288794 886743701 599565177 909533504 565373874 915723099 365529373 921645608 31393548 438421446 420887742 759153059 157756019 892256403 108602421 302415205 916791643 958881139 870808229 890887351 578477027 640782377 275277225 655799969 353384525 837134490 673241724 682687945 126691604 991257075 993014734 995213260 307874476 763088008 879374119 977826551 926985425 974589508 157693890 314311836 386473759 862769061 906434952 954725151 491632297 956687676 120815320 120833857 452749491 963412713 427299711 634829750 61042109 831385191 407817761 446750088 566850996 775429258 504208209 960401238 855260237 882393998 194748114 310737615 195615304 337422119 7766398 258297529 87616863 626406447 706381724 730463249 925387611 993537911 913567925 943464717 242955485 789362034 765413007 939623327 230621718 963211643 141332325 955251172 792214943 816037793 832456394 906947617 822735832 869029992 111571712 775263699 1530348 857650035 427713071 775012192 498154490 858325822 663309487 918987934 260825879 675603646 125381090 798363255 818846312 855450519 672165548 921026232 998340433 999446531 476513883 688096870 479946605 992740774 447210541 907863345 297546699 393604500 405895895 425919815 57844776 506761847 155749709 222819604 610321947 666354423 887706894 921605838 316714144 513370988 717861792 917002379 861088189 886269501 22684331 198044129 940420995 969074200 553589077 892469071 308411548 629147848 322473835 682006802 295868835 528815490 88666830 230746565 301551178 542025564 770784275 806281772 275774727 962609327 631681417 833080963 99803743 736160039 326199918 422469762 883128515 954597945 448473598 817188648 229611181 479646653 328052122 499074350 822569169 971629230 29948532 706499185 739903527 993184276 606008875 913727449 463077501 618298742 552179667 926189585 16929711 98707813 697008049 839938467 127635854 622483834 601247370 877809469 574233623 867228893 621299623 939219573 521647092 914477214 804082678 984454289 694526612 770581189 769710313 912430053 285473565 846614625 314519751 898335833 372493683 557264498 186202387 715510954 557574417 617490598 26265735 937988545 387197967 393179452 357592631 624003218 43916549 272630111 917723092 994503059 854298784 978324560 49730147 613960691 910062947 919897562 548498515 931422434 843015353 972045494 141287157 270666779 924238118 968757847 723171078 939525243 761932509 818977588 624927981 934214102 193144117 457773134 536487563 697880188 40431198 878567231 293335278 771849741 21566314 305785609 575767437 667602123 861439110 866871672 823234439 931741922 807562365 942741826 950737272 963206369 273715 744890908 392459087 839221287 768563348 926328022 130600856 742408963 938673051 957088661 446573387 567707273 523794442 617664778 211577306 456149011 920774845 943113214 198057929 923975277 631461676 807329583 143083280 206641634 337766949 670752038 43214448 690405842 188907047 575047794 936272645 961881903 330501957 519492898 585843226 621079884 708678076 838419664 184073011 390703976 967190689 973799187 576137847 695404402 232396420 671825099 91415773 848957519 802496054 804500457 430926362 779381061 310603878 487995120 857474617 920989582 595048353 714637094 508944096 974768890 381888449 585644198 949153038 963545778 898440934 921409981 50839575 805324871 364565282 568360267 947894392 965658666 413547337 543232574 114961079 794111363 267320886 986534219 2966597 317104548 255330668 970180309 194132870 326100088 858872253 932957879 490012345 935320278 183316144 696564715 321490289 354608985 369822665 408840690 928965406 960099138 902573929 924666658 246474081 982967643 437338952 526750526 576452490 937363764 982489832 994505899 500503184 802741702 760208723 999622847 375366653 716248611 31752697 840436910 496631756 837733339 44182475 73709014 830845843 954084325 234116197 586919197 820134331 980298468 913915381 953462130 737054053 848367511 316960694 694153130 670510195 689973190 53853424 219784130 711495078 960937986 768632505 841568658 694407166 765171343 620653133 778357481 373450239 765993640 559009180 685564976 908515660 977571972 314162027 489938136 483425687 694726628 328272832 808802602 962386370 988561136 932696839 980627970 845397089 963311587 645007954 727386746 968413966 992431022 80974657 466376356 473973327 572412210 85482019 278309493 129400531 902902443 237600112 719541939 444042028 863370306 247390969 614042950 409589901 762938174 549417223 672132447 963238780 983998264 119742368 404843883 506123491 707704739 684337549 991065968 618409636 999415375 137813236 706880442 472205144 965825441 36296541 637347489 899269091 907921957 847390692 863405960 94704749 705451651 763542868 781362853 528333152 892269290 340048644 551555893 173051520 638277472 812460021 858541003 621554503 793019155 481939183 974603454 930791235 954107069 936415078 948471253 837207972 843310102 808535317 853522765 933765801 978625540 481273073 851732216 506792069 964874559 52641225 502362619 461103201 948126229 227984923 997906237 624366491 729649215 259971023 825744170 314864567 886702608 556696934 906799965 611470314 736694660 769322387 793297661 488324723 942212488 637190715 893265513 372009812 895219982 773131512 838182093 518158975 833090412 232475570 660485929 119195175 193498131 297762879 585591003 247589623 631085684 991333345 992090936 884795855 908962894 308207759 844131217 435368916 751485194 99692367 816281385 747622465 882276976 678060389 812715197 33763578 886433588 823848830 894321000 716909063 752648020 989432841 998925992 428707294 911868159 602518553 723104282 642350289 865896214 796519946 885953354 397238695 637145538 73119223 868813451 621174369 782955640 94011031 153396483 510154557 546313582 863315326 967951405 389482837 691082493 976980524 985245679 92453125 665633428 778067886 944516415 290652738 317552291 263323603 678371417 689361630 724776495 601234418 961425027 904822997 952327039 771784478 940338809 910354722 973702050 282663097 473914565 870431875 917985484 31019577 787239303 327577584 875028647 485873061 912637430 844391828 852289505 236848137 600690264 243390574 330109119 821617597 905984656 145398230 949600049 307282373 893802256 430456047 521240431 813346703 976496896 833879239 842657831 859473821 898163878 680911783 829842977 594027659 744231173 833408333 931943362 618668981 731060989 504444142 789134331 851761492 982713195 287141892 419506038 946314377 990882759 435637048 519076489 522617270 760366410 80551922 947978826 553243122 801795210 929702801 972223647 344757837 911123297 184286907 786757417 603066880 634416004 924838538 965197059 808578132 829871058 213775070 746740059 190161324 329253837 868008724 946788595 72076401 87372667 428577660 495175733 474034371 736035696 690131929 965497212 940394126 992969793 182184034 625527859 254200647 516259856 217548666 681698587 124078548 189375836 281690741 544912995 199932310 479713277 521409199 729253846 129473140 545448141 19849340 188765175 546439014 919484707 610060737 627234002 86251068 711474693 564280412 589013177 649962275 938171955 509868046 840802409 341877359 899663670 114464130 240589709 591128504 816803697 393881950 712513026 676111434 842817784 983650023 985315385 419435534 666653734 602127634 666355670 979006230 998329607 430965871 448995727 252047027 345187787 718841037 782365332 511896292 793172118 803969551 949962032 603197055 795189324 310279780 836706991 43390037 494588074 953557809 983794503 556438788 840500594 867129758 927180478 66718917 139540491 29891768 778656942 512108643 900791436 697078959 867391597 587897798 881210517 274184136 873415688 467054024 752421224 946125090 982772208 848638705 972654244 126645606 428753082 442633284 917035430 285389148 769941785 154680435 461830208 324531795 428354092 298586901 754641097 872249683 957375925 685931373 885379542 135402570 657748696 543664535 626303754 292427551 875327532 531160985 636018309 680338797 778785691 851780034 907895847 690217927 842834541 816480964 930739690 999033656 999696944 735193796 743261594 789672308 845644267 385398819 992040847 151411810 177863160 409187079 982765460 493650505 956675785 108378005 439066299 361861479 659638490 813303799 898275029 883354593 902678924 483323711 613834479 339395282 478627044 420469356 762723187 62998971 796655306 38283615 466935540 384357046 423271938 575023853 661352840 896409504 933692182 594563243 875627035 987022576 989280327 92583822 672768917 317919884 366883869 204110882 455520329 970619148 992210214 657128883 908804805 648378446 654713783 777595569 932422891 832404869 863821670 269733414 726384100 164339710 842338922 943199347 986954498 584322656 782951286 201503014 460903838 120475491 806169486 92298982 235416543 933354517 937642946 666246964 726001989 48831777 555197241 530491179 896103827 177855435 427860590 568249376 600112588 450283578 911403890 816950224 886877211 217401661 475754428 884846704 972167767 988801359 993388653 32412774 428391506 787953456 964659815 883895002 997286640 631546710 635073292 469125640 720951364 85473269 161411222 520033249 868521914 101398616 894408668 958599802 996918473 937222444 987636139 692524355 778432347 396572868 962860597 683413147 980854263 84677532 412041374 229092135 407655357 376366267 706995511 282339907 961854157 693810749 705683937 39363431 359269381 522173075 682701588 460926609 707476091 609465012 866857461 878021461 936118118 945699871 965147599 279658574 321122369 423383476 887330010 765193038 865853062 632888908 923136021 572197495 743719082 510886048 964617908 939678970 999145404 41382077 67762406 586015203 687750830 737371716 738354915 882435121 951162780 791316784 871038942 385971451 956390628 832690253 989310354 765254399 984205930 4189557 511744122 404881524 603512422 392897272 487785477 690717461 930131845 871596031 952886534 31179514 997859224 932988275 995871552 43120550 213201366 820311721 907421412 146336231 708011649 611400248 657719923 577807344 610331727 593505704 966415093 335588892 800311920 387943945 566892071 504181294 642066360 985034856 995208304 650726456 887414127 513158976 934392248 684327217 847477696 328125476 971279153 272170915 799373613 24036448 263736368 760891798 908493309 637753001 997665425 222042463 273696042 852211467 858155665 621297497 675581251 603356516 905370092 649024456 969384439 585254908 751782619 889234985 933534376 166629901 629491964 119603905 691125875 179456052 662321697 574535475 583879860 53534226 988225180 293012710 640025179 558816757 746391862 991947771 997366333 174293240 532861364 970127187 984571987 166848568 442563593 810548167 930465190 895278220 956517552 119068295 344147154 401775963 633942694 5915561 365809824 25135919 796630264 840817207 928561188 204310709 287105220 372321790 657231507 541943684 754746707 508264967 573736849 659624432 816029411 359331826 367641391 678705179 980728568 821903628 944066017 820195349 938349442 99317527 129710978 215830261 861992320 888041470 944014262 723371439 905470920 738967936 950644597 467639763 975755604 106221725 538641530 583960527 817501637 903742782 948239734 342421126 421488685 170901385 432036254 934218686 995829625 848659522 933309965 207702528 994163560 674426826 840277070 898795794 907999915 342910185 901365521 43454548 93371562 810486430 996511632 142898550 916160641 793261157 889544548 590206928 928837566 768802968 964330511 845366314 971861217 2758110 561496905 714153098 770676658 195772416 754211131 373307166 557217754 77812547 584605589 965563844 992005423 631876283 767256712 894775168 948063772 24736663 81044744 767628734 898677295 252444074 634659636 252688616 969515348 293214658 614807373 533437293 543417912 870983280 910300646 94482866 774641291 374442170 649187073 264949977 454894561 919887537 959963603 126820707 936087665 94933752 916055333 310075332 669048002 554358489 726758955 253598716 747292068 36463912 353774076 784523675 898260034 475553236 611259753 453545337 976313172 101813557 146920345 816062189 828031145 195416504 254460671 869290055 869488866 926142897 959585982 866798082 970547427 974687075 995733375 493604148 919494378 653413336 712649314 606475326 915157372 184247749 332287556 448651070 981208773 891687316 917277816 636516102 681976283 631175461 744738889 138801137 918243886 243819391 959492173 168695158 533209542 352982551 520213655 648637597 685624203 410425659 474426365 220015466 807683928 178293645 968848228 617685719 686983917 607803950 653483507 276490908 315525348 949735232 989599397 231253833 657444481 101047472 554022881 931936649 965897296 657312021 801234063 373379696 566365498 365356533 638393827 128995291 286758135 637583521 726417524 904047716 970797564 199881462 832892033 678424155 747721453 399742194 949768995 848749252 924112419 526389942 563545300 190649014 220047533 920643558 972805226 237574832 750276012 695116763 708806122 668179070 709999584 873769585 983708394 265136406 757172760 484248079 486091882 969807128 981892961 756396658 765730180 647626905 782117408 397992661 964458254 320710702 623633112 746282264 809909163 633529543 750008954 377937087 838253354 789119063 790669291 523837510 962821166 48167272 434046309 98340880 704717226 428540741 890567101 425024728 969691767 997739538 998601754 946562076 960564844 511607547 782045605 511093419 730908564 643603612 686827857 567731231 902944885 57834998 97259736 12210749 129009356 371735590 619931778 1482526 972991407 974432552 991627934 715057330 856473596 252489192 538342173 502647662 945096172 191476388 712736987 86298185 797738489 492626599 916504043 975680821 988360594 907994899 978005633 467200249 857663524 117757551 367656952 13992159 622679587 608517081 673322811 348138578 522004981 186516235 484547857 683244061 957623275 483321607 993955545 916649704 948470303 123237200 339271154 160036015 577240654 171461270 504130633 605921232 824869813 60957894 697905219 326692236 654157532 970653187 978019346 457440894 653954781 818367448 886098115 132091340 307220643 32367904 550484169 958297945 976920673 326807915 416032885 613083584 923790375 808682154 846219908 568331220 832750406 377623304 633171294 254472131 485632587 647233791 982577952 38848053 838743164 130687173 808990976 816466586 990806165 880497341 960815915 754944004 999397456 30572020 872996828 652697386 900211343 778739012 794472215 51885607 360466496 141468169 801806259 330595186 393572453 618931917 870156737 741206441 840535836 875326558 966939792 315088788 587456812 4672602 391086940 787646973 844823860 580835020 711337580 661636650 739085126 552228959 697940864 322026631 393750297 949015021 978187596 370361879 804326711 89668725 417837414 11132986 323707153 516031372 682627637 173611806 551667087 667768114 908471422 676975771 681225239 556114187 726192884 242008575 410023919 983582049 984560975 763529475 889622889 457907791 825667804 965743653 972116543 502413934 998104561 922753520 934072472 797654572 890780334 761658550 806414985 530709146 986599318 475920760 787520464 837663207 905838469 587622050 928473586 338333918 582268213 574690661 661006567 292292335 381113527 553977795 745461885 895569769 978204370 768392886 972574885 9721433 223773529 83514997 888695708 426609696 632501367 599944461 972018890 483639913 835159878 986470234 995213311 368860789 434922669 328955461 443693884 483039125 841698030 436037138 643230914 181466229 673316046 830328863 931556089 560407546 892570972 450901501 495644147 13557726 988929516 266300707 865946643 670411358 941831303 759320015 880595993 482810552 759847110 770242325 858610398 733228044 799558362 420983606 548029406 709401318 828849888 683111797 801410801 675783774 747838920 784383287 895613964 476175797 765910033 988865890 990153288 789115384 789779132 325759137 877075095 763208310 801211051 414323213 857910288 57263389 699430505 595633043 746813118 796231365 840398820 876701925 976303396 559767611 582036722 723781149 972767568 137482456 316975878 793623468 917521714 125358334 368416778 767290258 777160058 225287249 949635971 332462296 573386979 976720442 976779257 280803164 852570728 629574233 995139010 310026918 515578566 117041352 780275702 73984111 610651971 105580704 602268774 66835869 291286435 217238664 442593779 962309971 983651980 472944609 616914999 600247938 724890196 942968125 980448095 747432651 894296186 73817517 651515561 622285519 858351706 466341845 983796816 633190546 763900593 796382616 970702787 375267505 704892374 243570138 876332218 343065411 898514596 57901457 703683578 688965427 894073388 314984297 844523748 673884573 676374611 192073382 442673401 463689192 879681396 6412532 315811716 981271034 989358572 843216135 859215235 625740033 896438049 608656082 909864195 712134573 895466447 154837976 534840608 230029244 910696372 14602283 211168725 427029551 858999783 942279118 965042091 736534835 924486559 403576313 571353656 104467696 629024525 637166978 917945663 264476884 416497491 717217990 754811517 365771028 818538048 391928819 816904985 736612994 835054142 814036665 828235698 977937912 985714418 780144161 945512756 486293743 594210621 269781678 511680513 25806819 730962231 20419398 625095478 797603014 961151714 239432416 802209706 606853028 936822633 375307874 677956220 336067976 646812651 984698091 985595839 757342438 926213889 55250093 240619131 536727714 757405399 938313606 974486762 660831934 760593338 272594256 286126277 275111950 966627823 576540915 756510882 503655510 776116344 83085443 313928869 165299481 454119818 658632600 727064273 811280656 964906090 139443852 689176547 333675070 389229855 583985224 772508468 944649788 979544610 220849156 978469749 652946284 666050193 948971249 972259999 264822384 612048783 777017365 797503778 866064783 880956622 759031276 986647046 70516356 367624225 962475555 986787483 530758379 848447187 266573398 336375821 740485247 764802231 1203264 105319169 53717284 98951840 111505971 661155353 438643192 528503235 406584043 706071996 420274890 463956577 394294891 551791877 283689778 857406030 635803 342224319 315768330 764032201 55856757 874971568 958278907 960429906 948111877 963396414 944792350 983907963 51497009 928967679 879685102 956438142 782915846 985143230 703532302 704278166 332781107 813455638 823561432 861516447 881550718 896046841 293129188 300794869 564638705 767394536 975344577 982962168 131341221 187998701 964728135 999833867 375689155 756840091 187994483 693512525 859134906 935234666 535682905 707451854 306113614 741561760 209458075 600274884 999259601 999830105 690520238 922985232 665098286 804350123 708423953 818935333 618428053 682214461 915797263 980520675 292484018 673975710 859719694 902415949 544946309 982847552 570639767 886049000 474954894 504475368 730753123 913353570 111085046 957121767 528609644 985924138 596034655 725293074 488841865 645110510 155877383 774749788 286147873 404880269 714263435 918324839 207369255 466254270 820760658 878971658 493823771 795628539 498198362 528070893 262046989 390174747 667757715 891693867 266573271 586382111 297194405 308883642 706556063 736466014 781869007 999351386 244476312 410526907 790605753 897481355 386497264 556655208 533740028 636624389 13323794 265428645 738327763 969737772 624642865 792081871 896775211 956097569 857254319 909158641 480972313 847950041 284364324 958052492 906615008 954376465 320732264 890718281 130436681 815513966 570335782 669825953 717530235 956830677 84258004 712536592 313684856 561449865 236440599 555109957 380170394 963287291 592292862 672536266 490757727 594897075 264937567 642592489 937318908 974032936 669674370 892461572 211873536 704256888 839657704 971436062 129369624 880249658 890192933 948194524 470993945 718331610 564266991 874077538 155824002 538665212 494077849 613486485 808597203 901317311 214895469 321163169 12576113 746043625 626991388 816756758 126452502 828130201 547300722 694599755 96852120 335780961 143398183 205816813 151721245 642558341 722003135 806945422 924907265 992764598 851252174 908930869 880087959 998221617 904129064 986404489 344994672 686166168 570624472 783926899 523528292 790162904 314382648 517258802 76832518 168128081 148550463 169697573 551740019 709368957 890175521 923697268 727566255 986333628 746925527 782258338 498911849 744165664 642872242 741315606 851504336 910620186 748178413 889504072 859848926 940262999 708104591 941312337 20483339 918350442 929575100 939499986 876674085 989645953 572356231 906432694 139385716 850136793 598923850 606580315 927741310 933334347 878062466 972660207 85382548 584096548 19171326 575953125 843638685 877560383 50342325 422823583 448319779 857724059 283153801 625399782 637998916 650490307 61660019 519721118 909999788 986731027 65974709 181485882 874207286 954939414 143725651 987437685 999776274 999884742 379739736 712002616 212931211 600742254 521579125 847347638 605975966 785445739 22822796 401231645 849104458 901756143 184176685 552865197 936691180 953742026 514499204 648833046 129870369 484384802 212463595 535142903 614142340 745794670 306389061 883766848 460532348 600889804 62204845 661780655 832133083 832604944 182479402 802696310 603572074 623064381 312797354 501609686 442534664 781782180 637806237 825267232 945124637 946918352 137156379 697581445 536322929 828231728 378807332 656113747 532385776 650201134 519565545 704777182 421914952 924816675 50743243 859100406 949439865 964468667 236086954 488128902 970373573 973730215 522577594 675947500 49339937 652659877 611758204 941926480 417044277 694678325 276204915 992204265 214019717 305359990 944415726 999771966 670998155 847806270 282582401 329264150 371862822 762120515 382094377 612096022 892864124 969551559 134959171 379829303 468281133 940463826 626159630 843802978 744923401 865542583 883641184 982069324 324065592 443808206 664016373 879345759 361180014 548826692 917496646 955274846 693055208 820536075 212812337 631888678 564979007 934189257 97365640 550678995 352782301 899103928 604533427 974082871 168413512 822160263 14664096 985093141 47617589 928690014 891369642 909774877 576322607 593993176 678651169 693014591 731092798 939291289 500856220 944184909 33615278 742341553 248064585 676980376 458120114 628336256 535288367 767366459 57136829 133745665 256535552 526187543 13253254 275562617 373355804 852045628 737878437 936661452 345033508 716409305 576986620 861847098 380491181 724528814 539295912 877051619 408618146 460007352 302490536 695587770 957660876 980536380 157611220 269029190 829933035 935530104 968261394 996269384 14315968 291289445 72398331 225509714 167332358 722726498 387922778 526610449 927404137 967191775 355331700 682086110 558639389 998841591 100442442 793271657 784736397 974059321 204027500 578308408 540534065 717460560 115358484 204087602 86590132 837159529 616964155 850661620 94761739 778987515 884535158 948465896 204136402 617726629 534040922 618933661 952238260 997972342 172116327 851083624 654007835 803370977 335295914 659982803 770470585 839337988 327351021 359187851 880111572 903764335 272382285 763436216 950903252 977540146 173636809 845998041 788076294 850620307 596365707 925859888 840916671 980677425 120235183 437469080 960902491 997542978 291294703 520434524 949266497 962201557 953842748 969346571 122074383 703041922 508278797 618039776 359400759 903786499 548219130 829038349 653357530 807540522 1328094 891635588 499154107 833995044 894020360 994548829 454010839 873621215 683685897 708171953 843234412 973062656 483427454 587285156 917369607 967311825 268270940 463795236 756023541 949188615 349929917 496147631 898340127 990036736 749537055 885875650 709572877 989261852 958926913 984627987 608053549 999220142 956958181 960125133 136249025 597301019 680899746 839296285 214365569 288882637 464608755 612677573 174786973 930950484 243667989 961067467 690861815 898985559 816460376 973154923 966353866 977718342 543681597 893498941 276978289 678949904 368369855 932934372 304634470 538317633 590978661 910996711 131353128 217733951 274965161 550758780 813116217 923142331 885517310 960204457 563040157 669080186 77981838 652288453 963894542 985876720 49401734 649191336 870954503 907037196 116414590 533206706 202425773 831208835 944228601 946577684 892950311 937535997 339547316 669453801 809381188 905430112 61239202 848119264 661600670 962112668 972191059 974183678 930045678 946971041 900458858 901748140 869860465 930012063 917780589 930400005 810703021 875504835 846630881 932060401 684282894 875953068 616632902 921137583 482203817 818917438 429612789 651659813 229104729 644706957 186333839 275712181 804044739 939857182 819365537 852552022 598587330 753196245 774920110 934361379 680226639 704396715 777036336 893863293 824736846 913850426 910301982 954003321 97377038 782756321 875356306 941156954 422794919 490501118 433171419 848113118 728109036 952110597 245479493 461972891 610505178 639411182 58802501 573228779 530174857 734077423 917192212 980336092 504896087 900156550 742367443 922556214 249464276 885141471 932439869 972178838 237061058 894020318 531404601 780961319 725007868 864877646 796318327 993863844 346592469 477707680 765930168 855787835 593199441 706488384 888437957 888707463 767411207 886852222 631213915 760524399 642631603 740615640 429165747 596079540 938957700 939537400 466731897 921024009 483571928 979024176 621952942 805161299 791201358 829013489 466816309 959826534 232444230 542115345 596419979 864192689 32978938 65837876 194775270 924757155 619970178 635771620 441955087 874586540 13673023 506920420 652674460 685453580 341905834 810777282 263651369 511754681 291772424 900313623 624324529 779902422 381103427 891969316 164368706 198381186 204830977 421849750 917845540 991832424 99205917 183858195 618266738 810264175 459279715 477260757 540736348 804543072 236698427 954040815 928014934 954092289 133290743 500937020 488932953 518429497 500582964 859485906 69496020 416338095 620145636 758416713 668366432 811197754 554608997 647440262 779046576 931863135 763194543 797103762 125818810 772329977 939349227 962271965 941558181 951530346 236685126 270868975 801379713 855041779 279687956 730583500 483587613 628133314 621038994 884936280 91595465 159395724 772138297 930342795 953515689 989117289 459744412 530262643 981338349 983865331 500449012 648086773 617917090 662988131 128201929 361129730 732899979 734735302 47941355 537772558 230521162 272414767 552973139 791355131 406135719 962620783 10901620 667410372 343583384 944443183 776650572 802974183 275478853 546230226 228930534 631206250 736206362 831138542 558042601 831055361 671464282 738383679 351833646 759466594 199012538 356977326 465953980 609690607 946994398 961106501 746008483 792512202 694255578 812079331 662174071 992632121 946204068 975328880 343821656 378413752 739492691 848885366 186947299 524908195 833995269 998798733 522677561 736465659 687847699 896705297 942756776 985174577 166494713 551950009 668322002 668939046 811409203 855922194 65785093 475577592 329096275 866620121 856993223 963133724 646001964 739808857 798769988 931274022 680820552 831680576 433996650 534850655 742296538 761543887 560882971 666822018 469660509 930664164 342536060 820553445 516887287 922631749 123874178 246700003 223812254 536574774 34167180 297812645 54514508 718195145 213039194 907845270 664502794 774199353 52345194 768759670 436731928 622659934 581376267 699478325 972845457 995429638 892730701 986440734 684654422 861611046 182482567 755726801 136520566 846036244 459387727 626992980 160626099 880212544 127802199 522605295 502186783 564824537 48264082 969640890 301172586 660960762 125934067 562567304 5575963 642829019 219989622 757705895 207203748 207678873 607814602 872663080 556052042 728572731 48547210 621148743 559143786 809798438 540120161 806016463 76200417 136035932 914114532 979955932 766134210 844047504 660242927 757689932 56385903 164020168 700026896 968971620 342260061 926038859 535067445 838355063 663689398 691078871 25283155 188147833 649091462 972272981 129205895 177076843 153145426 415124839 416282586 972330326 807051279 985630530 965240075 992832074 247052360 558750717 402128423 418426450 868472545 912202070 773531112 978713756 85337439 892464278 835083092 971770557 655033381 688637952 557575028 743440046 975748971 975874710 944602314 991518049 6411269 835935170 468798205 888776932 699525713 876493806 62849352 398661648 56658108 853752354 494927580 539687758 768851020 985133004 297105590 798010826 370836781 533572681 670258984 909613019 495498019 944379654 392992930 469144758 971528845 979122072 951066389 986931538 322850361 526939458 427197419 685691022 233661761 790465622 691422056 842897916 607280615 641329715 797046727 998698460 243031000 886156259 50416479 678436406 660231160 801628065 32676905 482172917 182401204 617659424 169131577 903358140 253563961 798203542 398967402 978089159 697186392 983868761 415574011 445269782 699932628 735044236 913119792 995598323 286491573 848520657 263728374 712582989 807469986 994910177 414552662 533560372 257128335 586834788 233704670 267882125 246220681 276246373 660085180 932552713 196892559 216748962 150702443 591641568 28314581 282794368 929528084 963561548 172026383 799626499 692434401 836796850 972902381 980879810 2192511 25325389 703958268 817972859 381514355 842196730 39035650 885480606 789157498 962204977 555809610 790453556 868639865 991921353 294696652 537539365 388979511 867721049 788792788 954125042 15660869 835547440 168069797 652511881 929530681 985025634 445808113 516501939 34507532 201416452 581898396 623491032 811848041 913222541 493377100 694291310 186182752 606602232 47458665 244427988 392742355 609513640 88440066 913744418 568714622 803655957 53727725 393680914 13319890 193824172 181386959 201178662 496462088 922724493 743418564 820548968 220843397 764920706 263434759 957539832 228713130 441721374 365805257 500222530 366819551 776520928 292906611 755326947 223960816 889728773 831025452 938776463 18454763 750450209 63651229 454331783 987944249 994716484 713221042 985247463 53723549 211139921 131485487 457253197 934333286 958755719 521145201 613996388 320294723 347190230 598149803 817355881 181662933 954216305 183501071 801401380 144790094 768653471 478309910 681414526 427227997 999943432 388513609 559517238 549060387 572661508 861859599 922041452 485661559 525061579 908136817 929567399 791983280 825185662 243040138 661629536 261168523 394411521 998330954 999274889 278394047 905655014 829138381 833784659 553293770 694566384 803264022 900228582 822517377 824088457 270678093 577867629 767550981 843387806 540132100 619644876 218500594 674440906 199080877 516770486 157553575 209782443 643281848 792847266 425810130 664706622 140893621 741434795 175842060 844888373 650372905 783674720 887617800 897407811 338666341 786309584 974699012 984855612 169659567 752156461 731495971 928550553 264344233 367239399 381757182 806929626 847922529 933692640 412500201 663379932 287977428 603595403 613835846 624725659 409465433 569744129 824652891 962025044 25392270 584230887 840109707 887606254 786135444 823500797 18525958 837263934 461357489 890784803 633709896 797671694 691233810 873733290 550888482 660321824 538939679 764411051 973603450 983781235 89387136 853103499 652475314 713159168 266730101 500183478 436103999 470613296 572167888 765806181 728738146 983526700 273790786 933727861 240389577 365382224 32686471 536475081 279950080 964272270 291893399 701653852 926528863 989449097 524191063 704399636 447112950 784659359 13994761 450987727 501025627 517665788 387681663 817644884 605366069 762125404 985918149 997722472 274339365 938715694 839135759 976434644 204904586 762379468 34194795 87223303 913936842 929184674 2316110 272602785 901067325 955137195 361102862 641446086 250153375 546126743 666796645 767627596 693712685 955130377 230778067 729899733 769351183 928773113 491761480 577314225 588913918 902447287 851732120 892616900 776479769 964379247 220182408 344292630 110980196 188959740 979013392 986476841 392102346 960162755 676890806 868345079 313468357 346992703 606558013 817439214 154293705 890154863 221715378 970116892 365927410 835494722 20504887 272035897 21772456 573193238 539180861 919208388 246608070 468913493 196804450 560752877 230107866 820806812 710470679 941673514 915153050 995921917 390223870 538917405 693851026 796578676 787490176 918114162 526331949 686222874 47468636 334916204 816890402 987358030 48638673 617507448 691077524 944627657 199060874 756680004 901529066 916944414 161304196 600811772 173366922 522093246 766722810 929050539 267041854 799918250 198422837 426572140 748305569 801455365 135555605 894054015 149096047 197635831 816113815 898781212 395104489 978099804 715263498 851802643 611706253 865671048 883782848 947174083 248868168 755120360 398400416 648995089 964122064 964356650 671664646 855801925 682562449 811016447 240562098 509454411 913636570 983225926 85125851 804014375 822341572 903329863 153906194 959210059 751057524 955357595 755354355 994722125 181492329 412962993 89290246 800475507 392716330 448540430 493701699 654027287 636249941 682018397 318811270 842102238 201044519 388579317 874454381 879999392 246288086 330721160 41956144 583350960 588701872 594726292 526782913 999509188 885455935 957788633 174567852 422770203 326739730 784199157 308171620 635847940 163203741 259126123 487366127 737363770 200290419 522530423 263312069 335390997 328556132 808195499 779825319 904318861 870346827 902754687 259121900 774044460 330417803 358186787 865284102 927895465 875667920 975343567 683758054 883606840 627445283 785046540 584215455 887683414 243777262 503953412 5631273 171545104 180464546 481059453 105629611 220544472 73405675 337914521 172883636 904586580 789401486 902062579 623619649 860032082 997359033 998406032 796431795 948357267 859877965 975001776 811804960 957276011 915588057 950877831 862912906 942141704 242154851 989294612 603255739 750614549 851194964 912768153 626808116 954527821 850733241 952735127 595638323 628956242 5914490 199614729 247397834 749421043 694122811 882153190 442373215 681398868 49315869 785073911 921233356 977968873 166188510 973130601 260867019 909442727 490159814 568226267 546916391 746844235 425009722 615870840 704720456 926523743 872444216 981635285 467718958 991597192 893965595 930012287 643900305 911827679 778387996 787681515 232405415 375214810 625183688 670714128 555916190 858485801 349162556 409330998 84831841 389247030 449788811 904715945 638254491 845949170 629633838 917330718 73123474 868269154 517093869 878880896 920846524 989883822 118219698 645404150 694416012 988512504 436740687 660715739 347504104 614526598 359756150 699478266 512831339 779343858 21721281 990610898 188823058 731629221 432032756 543984011 788141393 884767177 623866480 804527946 661562772 841803839 765736736 921897396 370183155 523960966 636581911 663379946 155175093 843059615 490720746 517137073 3233237 949432039 782636183 789487433 494504864 725445917 117400398 886121913 361618551 753763583 254834694 417152258 26270413 143784110 378316080 618258646 558972813 906841100 686225530 964105200 116026343 634491460 526738762 967680516 866018980 994501640 824557368 874457708 802640067 918429888 464624488 575714765 793174383 990552202 181162241 952637548 395356107 779791468 618394273 919756550 475625330 536228998 147073540 883521392 455185480 531535770 484519470 841031598 952708036 995583963 281469443 718573379 537920727 771799330 416946102 944412338 788501533 822219965 485726614 899914687 616459213 768338809 177027144 351868231 321359217 462101558 415274292 977731289 633259355 752691263 553902652 667034128 12947158 557315862 868827555 894222106 249452980 648750019 844251223 907547447 885783767 957663407 166097898 520305137 493591801 657622967 687723910 850029782 832588294 844311447 47801281 465799657 48116584 353131413 121727478 145353043 667834465 886259713 538061159 840401742 612204542 815244161 247648365 856756360 601921557 737097940 864876170 927213948 994283028 996004084 625793262 749446532 692827186 944164296 48059561 703144821 958347556 979005330 173817855 298089027 837244219 965951505 883531389 924098672 171505748 345515346 528537679 780650589 507029801 648190964 398486365 774379113 131765984 323227700 494412012 861557959 823037158 867915402 721196225 831356238 604066364 618459042 411979278 413808917 749368506 769843581 756849730 874559869 165250792 187628785 996303281 999959074 956086253 956886332 344738019 579930139 791239341 906462069 952654302 968695123 517426300 901054901 203730224 261451053 202320646 554327121 862973114 955322132 132508119 260367660 464297971 669596277 766506422 990856673 138574800 427751223 8837157 652071932 559037204 682091518 807061082 906968164 465693681 813739897 221742857 322418216 816429295 864571482 943996849 984245339 123157371 590405828 444493081 639951770 699466198 721616156 212506790 470801916 274408714 899439698 660677303 767588150 583257443 716441938 987746359 990490972 51588099 242930861 669490568 801081298 420759208 779631019 117886000 842879594 745375072 927401454 644443708 771411427 255461137 627398050 621660618 625905998 484829530 679453290 774737270 934565840 835292463 998448676 641111181 963056126 94758467 629214603 353287271 622141661 332564100 374046238 255631262 982302498 292306912 572242736 789200607 815847039 765157037 950927308 652192119 889913583 738545295 875443144 533616974 614147025 739849411 941029509 781111970 945653427 516013645 560267708 936192281 968808237 912169292 992185679 309669449 790296048 992195753 995213105 217071606 734814754 711880574 866699471 521670839 905409422 436686035 677828465 391254288 924411352 943401197 977795945 811673432 941431194 758616948 947586172 715082231 889552427 307300503 580630060 402456869 593131069 849452245 912267027 808730991 985648541 161537194 481097512 886264774 918443688 4480708 326335169 930997650 978006201 414579068 479764572 538357866 667117393 849128444 989089020 662826048 793378290 589641087 610661034 884579047 989342167 912046426 951827383 885594199 907095738 714614114 725228435 446862637 723118467 757218729 878054970 575928265 819410662 289284703 713551405 418783981 730062941 196834486 951338630 524133242 924213100 325524878 705910156 266367393 410404119 197174959 727271408 101704915 804103659 766650356 972689322 550896450 641562991 769731463 822922624 810275715 815879810 875197195 960264521 678928739 803800469 785010025 925926105 771075696 911643946 44673861 803214250 226097595 684934925 492586154 590416515 427719648 984482751 13085794 39283398 255710781 362372769 75817573 245626605 303362247 854179375 24117822 287801093 599503407 848309438 201811250 465511477 479725176 629877378 529249001 607829615 95776261 219927443 529472182 936970119 834375801 914032657 454106039 582216698 584944572 594797974 222926474 654252232 232551291 952103792 973482172 976733622 488219362 863746987 516984526 926633998 228011555 714501993 273177347 865141977 387948032 729693060 518424814 576954360 874684934 915564488 593256364 887635020 787846973 919112239 20168217 772129986 507429907 905176662 399338060 984339233 56030246 210657393 983634837 986066466 23524799 548962050 230501517 646716498 580873192 796435076 666019420 867117387 948911172 991657738 907676999 914046106 703927827 896796518 720910473 752528189 191060645 236179645 186738056 681624239 559752494 584669124 359228634 954281631 764358882 933033598 847166861 858910892 99379942 688424095 918185862 947506418 877187768 883126193 950648647 981562764 600310025 956780407 353191490 843080699 154825651 674491592 886899215 977093525 406403535 483787218 404732437 756872437 841093445 972147602 244052091 260093217 720219698 763271693 629860093 759128236 593959211 680490743 637842040 678981410 166843330 725259315 170677859 313870328 13665126 24501963 546784648 895873331 711394858 874535602 645116365 754220562 250955180 782734503 707916171 895066804 854416614 988775903 766391978 855632947 791378687 992705199 657810789 975104391 104018071 670196269 985118210 995224985 637923483 826414339 37878892 438542928 471216490 938528902 543739280 594505236 966548352 983382416 594224401 947187375 199106510 606901156 237447989 256117377 571581834 925788535 61518716 155816815 337811303 823471132 18146347 698810451 425639908 501777125 792729287 833020242 729111565 878289928 500677175 696785466 422590159 524656104 824342429 934893254 972315637 984264622 292007597 782917879 958188372 968605320 93592322 516236656 354956951 636588921 383648908 695768964 86008362 799706439 44084475 78357368 213964057 681833887 114727357 654485175 979297831 983314535 682625698 935927927 887267299 900714941 765423067 805773031 256506222 581108430 739516717 899616079 929540836 985167339 193336229 694365148 551928484 870051146 452507545 753122378 546545193 615114094 618503606 769433699 259642560 302955693 263988586 496089434 148253231 502962438 986320972 992948130 826348475 896665600 3290840 272747407 230263677 759984496 847227449 856900865 785129671 969345787 7059689 191450534 311738056 878769957 574619714 763793146 442188403 622480058 991703277 991812897 213547031 904034413 937730209 988532707 32261237 298401309 853961569 996521711 132140143 210712730 688882562 778076517 720674784 765911905 548877744 710181251 471961860 556562143 475275458 878154668 466301623 789724649 826048765 918941071 129611780 908546744 479597868 725029877 729976123 734628491 315001907 737553966 592274512 988705311 110020411 229032905 546345814 623352428 589921572 999655574 600610785 942257161 551527086 701795958 468050155 502966185 970663509 986547190 858094445 919548068 229067168 365428735 235553725 766052301 618473066 674723539 466143040 876986902 473969059 811336192 569124951 620033108 269363724 443489270 441051487 724784221 124432645 459794708 957735087 975469848 284860990 481441307 229269549 844286418 384540961 471971334 319755102 445091697 636139372 990021724 395549193 957479435 822024149 911921618 198927082 437250510 749829961 990613143 530712138 872007198 991880295 994916461 950583174 970418271 98435810 810953953 396991094 910983279 426921449 965978417 671691179 736125553 11897714 657593836 999655300 999956542 404021665 882443817 544326541 859578826 309347444 425879172 878146920 932220170 554868292 890626064 335975456 702752744 804098299 853100362 144354314 643262794 343989996 728377907 576179303 892129473 795205544 965304115 925784218 935656855 133936067 923294694 631693080 884102146 280349505 405144683 506962756 986755913 319446743 400439450 993400666 995755268 280825937 465388911 123547923 617009258 388631437 524339962 291728762 976462735 32052929 968074666 340369388 602603156 494596053 718855615 324870926 618702542 300844647 356724319 95316588 492607570 357569412 620558936 521776414 756435458 506792704 765422507 451301285 677234652 250120772 512576633 39357195 996402237 107360051 960400407 616192881 867946335 797618045 845220483 261950832 498439751 670607278 675429468 744064879 770276479 538031396 682961766 951123679 993902827 663745732 887427736 576181479 887521432 227804570 688142782 636759740 940111201 746544582 845142406 100334114 917123896 927221950 963280433 113805886 765240490 492378811 511182816 287278989 654958228 992494850 993310465 131451794 873935832 777673119 980935977 53888834 274887792 115688308 849358379 536823008 958225335 325529083 975738658 759542066 968450242 531455120 840918996 630356790 975060521 309927335 722140266 480022602 576634496 149275663 869320503 282052713 924766552 644396008 877436569 706466894 940797862 256727678 710140677 268328015 612069879 623757848 973727199 406004991 612507340 632180096 899727534 74184733 381428582 567119975 806166652 874880848 928288783 153829908 593288860 113216766 617140455 342642922 398004883 487641356 856911949 108650250 188322470 312952038 336211226 549891354 794111513 278362634 646319009 770166339 845008126 690764643 835007204 253211808 991150557 395971869 919129113 216020462 338608748 772970952 941421385 355920060 618560307 467269720 569078305 507663282 844134407 837169299 881235424 590979276 818079832 937957196 950700589 925601092 983686281 726085183 835267128 323982082 367092853 774987140 875964905 185718650 937828140 225737381 590837621 969725469 991961182 618341133 909666920 248449885 744851065 616229341 676061546 432180920 999195401 569417628 596653496 438524769 859567183 631515910 658580848 860974158 915065980 732884941 996711797 182556068 639542714 385620563 939471511 568122035 997696304 51561390 834478399 468907078 716100453 825548238 990350882 980674687 996307557 524368382 947711438 370787181 381155578 992134659 992388992 978263023 987507168 488584994 537953515 193594979 369546388 322251393 464766571 907490347 956096525 737726077 806142935 730915315 763046117 524204677 944376659 55940191 761993321 967145653 997627132 355296484 513638018 816411624 821201400 634158644 701637021 67079429 447451184 227131267 406098284 293002269 428306156 72848550 748721602 140264853 474411982 175299555 179184538 330291598 408444012 8798062 422522522 607926433 815176274 279116993 281253335 419839793 447279292 19490766 631329314 3686700 815344531 401405003 412164435 724943777 730530240 121264325 563211166 549001898 778116615 342563109 460155429 983118421 993937644 811599972 867439675 755507340 870520934 166411174 408588147 245014886 740877194 829707348 968399106 788280315 875301492 850628620 942568899 58213931 235912791 986688799 999723852 868945577 874841384 363168538 913356509 600988504 752497144 391781880 796129901 837041855 919756602 852290372 864192912 720255311 721138843 70733144 832244712 372861481 841929465 441809979 501581966 728295925 822573250 741961220 964795736 82593924 577301147 168678738 178377871 319327823 396271055 724052990 907108642 198500469 658400939 627547580 658993068 422275641 598339791 691795957 870584733 135898821 247184721 366284181 441835341 678351157 839570524 693990581 708513884 11487325 803301005 561013233 931460661 675282248 906277713 968165520 982860767 99574439 551054628 620817977 998894033 683782101 939396851 878664722 981454567 223873395 580617268 702142461 927828187 313434633 459414393 549462431 748481244 963317496 981461863 53638638 87403348 72472109 944221634 772791490 979520243 552287812 926931274 772940025 974442103 187122375 705346840 27533217 736501045 486880016 988320280 762930141 846079859 143242770 215694811 631469500 840657032 29716416 581806823 132819162 294083895 75067747 426759004 616569108 777496679 487337592 699125759 843158680 942485323 442818981 813317890 270620793 602204716 61688707 436235767 87944044 685456864 674885564 994461120 326317190 734974206 753616383 849243632 388239594 736003324 239825903 447444142 926111334 952549941 943945546 981807390 36313688 701676594 643522284 677766273 3873971 167325999 186112942 712665834 778784380 885800955 337754466 472952617 917537186 996048468 13076259 402458301 339926637 585440231 708891168 765893762 603865497 607979273 5673027 269410204 766528340 903027764 172214765 785767180 726268163 908155238 466947232 531138577 295880046 848219885 537767520 654547360 380733004 672053369 194727429 591432392 344428599 446125381 477503850 887589934 638948290 682510060 940895057 982977133 982793765 995713904 298079842 957980526 69537342 474164530 385704788 801927088 84894833 187356572 235659693 892960842 453007425 907497474 365925435 530674944 320890363 517051893 615096506 810985921 694608443 705049211 859786684 971827750 896567304 971259833 478141025 627953485 488224932 731861621 785764477 972258753 446260954 851294896 371571620 626025751 870475277 941385493 377530882 479786696 778439503 846393847 813579612 972624462 197160560 795072482 821211951 990634921 467067584 895883932 414492177 545254697 209646235 407047710 353985834 752966080 707362635 902489633 550236632 906946590 114665282 396295821 796053303 813752968 341003584 998549718 578401732 752518948 323582827 787969400 411931546 452129822 755288330 931147186 738453411 884305374 415236682 872731976 667767712 834397239 276862823 450592525 156513600 942112493 909632616 995940582 936099106 943407731 559167742 720211131 449201264 641927654 117176571 125397592 800033402 920762184 754018583 880055521 493315423 577439894 333839854 736627569 543606077 561495612 448953632 589350499 15571517 681402138 63017348 913615772 493924033 657346377 284639122 916684180 30112130 787427410 533145994 597266687 88230250 300739205 790569204 944455872 201490567 553484169 931044874 958383393 628188472 932987256 112513014 875564310 938570974 963642674 678990158 722507111 229857377 262255205 379765548 530272746 987867703 995032759 591510646 643459347 274505114 826302578 774790331 963529662 414045904 511135446 227607874 887721693 384874558 479937966 400653864 833072414 178482284 649529103 13123143 205087798 382117894 868687635 709533488 944051357 855065136 936352485 519495736 884975484 591593354 659213547 745824164 903294396 664735994 861466512 720504320 903541679 96210647 570231167 482646568 667774220 159569244 765333401 987942917 993307405 492232443 634296324 544397895 825360255 328742668 835096459 601284878 775640155 69432777 147460466 74294728 422933754 926922294 962900670 17099798 580670010 359119537 993730713 380602268 484304561 531696256 675216041 237445936 454221825 384024715 960190396 212479248 444770584 397713267 782420085 519138654 590913769 615660523 715932158 73545930 560347945 816694349 869655184 816667670 889204346 219367117 572851664 390730076 640233092 755836718 898956817 692027660 864569270 483682390 664579824 276168205 406094657 9386887 95261236 416044843 602124916 965878869 986605301 192925775 573723047 651697138 860757294 543912552 901411828 395232568 690063917 643279085 976275299 685058239 929791626 151620983 590125967 64414565 350688652 54907444 282673172 297405501 927171964 724806203 791575518 984974510 999798541 21982107 842412513 754151721 916100332 602558035 801251937 582514451 621461772 878655869 976051782 213183140 866722219 506015957 942203746 956878013 996832761 414595136 667167211 472339568 879261200 82171085 683824951 566638940 913538304 822789890 915701729 988595686 999296245 943929519 959177035 573993290 750440773 330414040 987800445 970177323 983275561 483463036 687228166 965195931 975502399 152153159 933945854 898847039 917342743 59436517 805526569 64979583 604463236 447551883 498845059 671328014 972976960 929978954 950220108 520421966 682006794 505583154 642263603 85567533 255280603 239065079 245558364 536275105 997494074 884708537 992924172 715083805 809474927 835839019 910070713 902796405 950383502 972758876 997270369 416724843 539085582 680976274 741298738 929668221 978404330 145437858 201951697 627904772 970630703 772928723 946166873 378788081 992067195 161899865 189103580 539728790 987381628 77592368 853260928 879801439 899503137 36709560 305201559 942731377 970350786 605427395 996906613 157505636 940998993 504567038 856870682 793331123 797955867 73885446 308677759 367910818 812815667 498995003 858879902 340839017 830575480 297374345 694448818 764508630 946043958 706504022 719815620 903862154 904765615 498282106 656669722 407899011 835285612 853785977 944393675 310830450 434653255 13262981 612988809 327305747 972544652 349679245 953415758 730985600 957700162 964887699 995355429 306435996 774697117 865154484 932823316 303185972 886669317 815916527 972735422 361066538 738315430 986649256 997597146 729618975 862749773 829742426 834842917 18172837 72329796 364383459 847124329 764328184 794787835 276623951 291193955 848698083 973934236 285624811 598633626 935495142 936143547 81649106 651348833 106605092 229928741 349614335 759723105 544728936 938430257 182703041 369046447 735324933 757891988 256808774 493016128 726882860 833684622 922204247 933744893 496097797 597832888 405478145 414900650 796621007 897869909 38676308 489037583 24862658 163489191 887429588 979563806 334925370 783720338 227656044 770202475 863477084 980786369 138573249 140850877 412883584 633681139 970949985 995973369 128004525 530978932 39825270 291701408 525778849 757470901 627116236 755848361 567492468 613157373 355867647 493319145 739903359 804579818 478059711 911424991 844832295 936651170 827706912 895188314 244506550 746376304 621952095 812909990 357775106 594883748 766348224 823632001 907698147 982640652 888159511 950770113 646215910 794569614 607210431 739948630 472299219 672240465 979162700 999738901 25609583 69995568 82306169 284444017 387738786 714477881 948856413 974370478 387251026 571129866 715458389 924322518 766014423 951865282 995785741 997278514 848009419 887622850 154082046 984765665 538357243 919544389 368039435 615110276 186452105 251451869 716692332 749043633 627490183 798851360 626731331 949848283 869412525 899397707 92310983 802187945 638551074 834745834 949248847 972038827 777998824 954200423 904941542 929929618 469102202 857608610 67292858 792630844 262883928 323315721 811345924 888580907 112641870 450440237 576949740 583607281 466324989 545826292 970405813 987077780 360606682 491191193 221957309 404424639 187938916 408022111 84389342 501285834 344811598 638453540 861970524 916082451 508583871 515965466 205370672 588321449 178884235 671135831 964197462 982236705 276940021 993533134 214550032 998074246 127543966 592787706 918410446 970174945 258087058 907866388 922322613 926602623 264913102 868728973 873923068 881635398 316399769 902977395 287782388 577191371 141000210 693636310 144680959 289585644 601567383 643934232 135119746 409901163 454160693 935113293 43160856 354885989 109054756 693869642 383220512 408914466 217443765 344601131 804565741 989817973 643031803 760189046 150029225 530573226 922566114 929321422 234999792 865848876 603638568 900827013 874880963 876255316 588565734 686162357 992059467 997311488 28603798 337569645 883735279 961276266 101180861 609664620 438465396 890391712 394459186 456161764 829218270 953849649 909068387 953203652 630439298 905847595 732570026 999872953 269927072 417116154 772814042 905577886 229664783 965165358 599419111 630988941 698428890 826027701 35734453 565650825 343396816 405087013 168361526 341621779 596339801 824243611 535210108 975752930 205541590 928246277 133687775 366053170 694608283 767289369 668885749 989032678 764609188 818109840 810482016 876392922 654435572 986935120 27782688 995405455 986279146 999537338 42726933 328814745 158915889 750423951 825826589 938577044 968387848 974258348 979290113 979563717 318984218 732011627 862209582 933243032 604729442 934113817 305791474 850493728 165478758 816587113 483696924 513127996 193455448 852805270 195949715 506349247 484622135 648396259 611579774 893902590 673001648 937701710 541717269 935844691 491140446 938058835 96964130 672142331 180110036 224355503 751813909 771367914 27917124 955158053 66664717 212466932 423597217 844279773 724162125 966709925 609909684 701674695 815081938 861289042 468909082 639368506 284478674 293124323 551351597 822848026 614165826 889624741 973682065 991465185 493944170 967374769 145368558 229333458 613158048 785128718 406111211 976807625 821873268 917584006 391699088 775141284 196227171 878778549 11966835 100993214 67465226 861780639 742205156 860817139 286474632 929989242 200880077 776199347 432319257 441895415 931855482 991556736 613768069 673021829 566909044 632658414 827691537 978846316 594271859 759025093 305395462 885296073 321101563 965048232 60157291 261285293 88667958 814772117 503309291 530931569 386131032 908518196 290887134 423478323 488848765 850837164 949140382 969900327 900363640 943956349 722895927 955925558 802354145 852831024 316018960 826719124 826629281 856496182 827186149 965744647 453345334 550334742 28926362 752504594 821584449 845960435 617897619 987419184 184238456 676907510 802056027 836972509 210136671 929585181 337345486 679669913 93134638 201117237 427020172 827170918 457076511 856481436 757402579 825317049 632245818 893915988 376612082 411535115 395045298 711005855 495218966 872680120 180711829 718760718 637066738 786635976 465269395 880193653 691358512 706522997 541868031 788146647 199089232 304959018 722412025 758223589 522936330 709202478 98012579 756122688 625192234 919880123 423477875 701780085 391759534 564825881 912054612 985853844 865257438 998474254 82966814 646654094 837164301 984895758 48781856 797643137 897960252 969686665 661249595 882270656 923177046 952744224 902547959 952555635 849849586 873926475 778024214 960895745 120634695 144234817 854660635 994042915 170509037 742830095 978483166 980640885 691364966 869466711 457173465 553911562 139284492 765527448 944596993 960804196 317742862 807459097 534431999 953805983 190930561 968316898 247039466 464152246 526805274 693172586 938150539 946255961 68076833 997315154 293117002 665495896 887536057 940871573 757385756 986415696 689398763 894036195 883459561 948511696 632307114 957092138 333490653 717975730 395839127 681144843 479221612 788309196 90589599 866660168 318059401 958147645 635201349 938344098 115510179 347312844 407101171 683091660 852430419 870024826 572687164 760280518 434342625 682796274 853842534 863110951 709501917 864059569 263332269 635694570 141386818 465783287 366631377 629657772 561356652 956480441 190283090 954090766 292985194 904461656 724924578 773634202 359322432 381945860 341631021 485698595 578441236 580981882 751491070 993332676 500804332 590667398 652317368 795046567 607303408 886041038 205978826 284850935 834487014 894461550 933691799 989483855 279546959 819026491 949480110 992582277 198910646 649855072 676776813 743941066 780473965 929754235 970839165 980088002 194754786 675936079 190531838 472430290 701513491 781094011 829329393 949209523 717374695 779890495 289624350 808003088 954378646 973853349 565700437 928314395 203804147 965719839 154183960 197239658 993914559 997007685 703516003 933764581 84955290 723581034 583678742 591626128 422497787 487543185 204776183 560149947 822103638 866349944 421986004 774423070 78406657 413683223 686108495 923911062 429730967 986868601 745324640 791013669 277807440 695415707 776717795 787328033 702950269 892906297 503177740 933929372 846849191 942547842 34999024 963158916 651188859 719007545 384582335 611754352 93204573 620295288 628793973 865653326 778222871 851593460 436979908 584342335 305063533 955096724 737845907 825949950 916013233 985074658 70232285 718438664 63076648 329951284 350782741 974764998 503055708 982704518 208197705 671346486 505153788 613259230 193992813 655296405 305813139 707298153 58620639 389966991 466223345 636080573 531009419 853667958 673216345 727542144 679490438 989575441 149255904 768737418 496656529 684863893 379826270 542845296 211116338 503070398 606655063 760349765 100614812 976552142 252893439 339099215 812092276 852282122 627830318 671616391 437754904 690938919 717609327 934997330 877325867 946576674 689763392 857754340 811827267 982152138 283971131 381714368 850099000 889869129 430458515 698823857 364641852 956370364 536381951 600291630 695418714 932072763 486842780 771076223 560940259 775084358 424837218 631478903 630791808 960365080 987044559 992153958 865579790 937290660 430279999 574047916 212641717 989932658 419695820 532015108 730127225 928184669 70085233 520767882 50147066 419852041 384818872 904147864 44697495 509657518 593149180 936316280 35499958 376524278 426037769 957742944 766806194 901997318 101786943 391881152 619844112 963800354 697190643 867820298 258714809 355846122 131824217 997079413 9122774 189570880 55447581 92359883 666218762 777027108 148737051 877012529 536468462 744571893 342590288 851382577 639110428 782125390 674734345 863953970 815449686 864799387 521945060 669656512 95963569 242350044 186317573 701941697 631100459 719953472 529129995 611159660 689545582 881265123 541296241 857313992 653399900 993149058 237268307 995821910 503343557 912489391 141226425 676146547 532283682 593396159 87415969 275420254 765400522 778245568 655082158 823366698 89406575 760988650 746298324 974769040 888358739 982843431 953267281 960097460 695846310 954851041 898954571 900111173 878917233 935760556 628253045 712585733 931710605 956848315 252117880 551843198 675408186 803361436 469714362 803717114 611801512 856885521 343342013 585582121 314242218 315197942 446724852 848911845 652369055 900371266 195311164 803912576 563074151 719326248 153041772 802690979 209700680 856348584 388983509 398205254 819815270 970760587 169391280 970607016 850895182 902523192 31756823 775153227 911179241 990001044 984925104 997216794 662629595 755207306 247010450 353474278 974300235 995337005 370081918 752928261 141686128 909882982 33640460 466412839 442037767 959878891 190656837 705147382 229954553 648299422 107965511 877619478 567057635 662204573 108967243 347166434 534302728 629599407 541444617 994073583 380718283 660060495 836689396 893093875 419950759 716159660 302509908 663839423 346577446 347590172 131920332 487212812 330964858 593128521 419275337 671110656 825222762 902323372 879911737 972271760 2412960 468851320 391767818 405598247 688391476 923225179 467838414 953529645 534270542 609071528 395605200 608511601 575049235 661323053 257689561 362417878 810198449 917149484 860093928 985332268 478493091 666496948 390419249 656671085 915529287 990860837 172788391 439856642 414227099 938123582 496697903 713697484 131820614 448734461 428648863 880402337 428405858 647778948 490851744 939817294 840029994 924045757 45457104 242581709 908097147 918402648 68859139 986871159 679645569 788055124 607455750 726278892 955883487 983424059 317454047 911005377 879359480 913058172 284263014 432958553 678071265 861979374 211723905 526669893 987070603 999685297 209193374 239869808 124508090 241448606 248231804 334222715 706298517 782117056 117593408 142930909 235095314 508851972 524348514 797706668 984636460 991186693 771934381 780437272 530078126 959466945 548673355 852990217 240855106 369253218 126469533 203957079 261581991 891665081 482567114 778941757 790358482 800783401 527833620 913417359 870151557 959143393 977181752 990106458 998404880 999865236 143659109 911159094 527368691 748071752 429214894 479629026 989381842 991126025 259319647 469477726 270221355 753520921 184609340 815133945 152617953 894902459 759123389 954472400 869229901 973544021 64597205 750622096 794296956 890617275 968527173 982998145 18750456 71435335 530751183 651992268 411784295 676925634 372852166 485335922 398829562 640540365 796377053 944720091 56653862 995073877 113569119 299394662 918703833 977494164 948920846 986350761 669089922 952127061 704621274 991624067 361102183 734703482 178610508 905965992 505793198 989191512 17003877 703213206 163184014 201219657 931957152 955310625 857811355 918066624 601396560 676349610 308634831 728739189 919710210 962967186 210048226 422149424 61830871 578575087 319992326 329429357 237900600 641876958 482297184 982675392 776746762 849129802 232693489 250764413 894257187 939123480 298371174 389354223 389005986 959312459 427564589 500218506 421298365 894712560 627143148 989222361 930950390 931283924 798138615 917649567 449220116 690206387 680192712 868380207 110772660 650630480 725182350 935236674 882208711 951835732 455631413 572974968 468470816 703536310 339357356 405064909 422021938 459830333 126803416 825877919 449388665 740157026 891294786 939910374 969875930 977396631 463351328 860510602 879124925 933708286 926397777 966696776 859274752 956774343 126228549 817406525 473236517 659372129 552000362 915264465 193721754 495937669 357272029 931756413 692389157 773397420 929882116 983996542 504408760 782078963 169966516 626792457 694911873 699603304 374316005 446268807 550235681 575915598 1985853 935405314 991876785 994173915 809772857 961004682 565053053 586138449 779911847 884856240 971688269 990443648 356531450 897438121 695235478 966523655 321571214 336968636 770125548 993615119 204921781 471689989 421647629 624511097 237749771 480688399 865222059 938258141 933903483 955312788 627580435 764613100 397448326 742630851 359019580 971934160 558277247 751138891 87268891 100922581 235753229 290573815 151711077 968356869 74676898 600220462 831947467 980171887 605518063 726197616 46895256 255002080 721151144 799860152 826229940 997476539 37884727 93913275 132153080 842148041 266235963 843445725 456453959 717608704 348557909 774112853 832920225 839539002 711303808 912727242 243577053 581388433 377085710 455737828 328373338 565807600 849754399 901813762 579522958 999159234 154191266 440158822 719840962 985492049 284508521 532211590 335301904 923174719 303697364 619007755 207350294 969929919 759918472 878631065 855798138 924701280 547390378 841134987 917376728 944558276 596235743 738210599 644129812 850365188 360850128 426790716 721309723 964280567 841844555 928023389 210273213 954280759 766830638 918166718 638078845 741311983 186065984 714582917 624647560 926988705 775025391 857202523 955947224 963317591 182918354 209657409 640034584 932573838 844674558 863178184 817769365 939170886 44832003 807353759 998738934 999003396 755923261 943575090 693453018 926345576 961607529 965737870 390927157 688048307 768915187 870905973 495262051 931592802 919096424 950837617 435448613 720073235 215859109 477310136 286652761 572710665 432275760 893761888 828114435 865680621 592392189 941941751 283101697 730663453 975617850 995664732 922648639 961605395 2426672 949770936 192146779 394886900 257900848 500559688 509295726 852697410 364715563 723167691 740609828 892130611 615702761 993410309 949975419 969199330 529970389 803507715 540714467 548272496 648921971 854869213 905531744 964062898 295556740 620330441 578174986 927999054 429102074 534624295 142837143 336260502 914362575 988605759 934238921 954725053 908189507 946957993 848085558 952757840 241978336 835127176 266200312 902150671 351854950 750412582 254534981 860741806 755223829 787794583 13503229 22773923 159661711 588751105 448516086 910870194 810018403 942741859 624597908 657836640 689830599 990385342 193624147 620110864 609195479 994779410 481244120 531078802 64328916 218761099 465607496 858913292 829502466 980127375 591672692 796031683 958709 421435289 790513043 894980518 580437663 922050197 387952892 608295405 476816998 634207633 265930355 710019137 318652845 462314090 19577973 872935672 468674568 996482733 284287049 395090649 237506340 264912998 971914474 976169638 939582119 940321273 938543034 983623299 57045364 615455559 516329002 699586179 294740159 757999687 737144783 842707845 822641531 921927872 923242722 951726339 58684616 400338899 380613475 792406454 954059474 977424402 657256450 926852350 576183209 999041291 998940178 999006039 486253416 827455686 405126016 783194945 857950456 883972248 423915081 994441562 261660860 999861196 97294183 134953182 25578829 793757176 238059947 839016320 860030576 888385650 507275220 622709949 77432726 626362804 149012952 311527616 916821922 953262715 646641719 693656871 399503245 976443690 345731584 452141781 110057836 416351516 5599425 522228466 245412523 665238556 988482150 993988437 745976170 829830399 772049116 999378841 809099742 923997129 622894549 951753323 867775367 993426812 539641784 859968066 164595360 304525037 666209955 745251627 146101851 877188894 567321543 905592168 978576531 981135487 314973790 406819664 533826072 984825115 930827594 985382660 324893204 849144101 987726498 992739523 361064341 867663801 439873908 686738451 523800860 824483187 431542168 577504025 723595180 937155139 652365493 774000229 294918507 800798157 714171960 934162496 258356657 628852735 150710137 165686203 777822435 997680225 260892605 935125390 621738194 854210429 461097030 554058138 911726300 936148255 544892993 905888628 120049488 232863534 293158981 802163920 85177359 978900079 230900494 769736382 961709394 963892079 674496559 805216121 322919744 368624870 65286877 840036879 349572991 719013828 78698292 276406872 37832979 944242126 44147402 909038462 560307280 944168117 439378673 664193072 751095989 983877329 387502298 518754787 798613760 899297296 768630336 981611797 552048163 820649261 314422056 377694637 599214494 724992554 47747015 57405884 701255003 970172729 716125041 759660639 499785299 945428438 978822292 990754497 418552238 838228678 944931117 960709789 725757587 735658685 270425899 584463881 791149663 833359611 628073483 675940967 52522327 290656217 954838468 985737604 301464919 459336010 188671198 264231926 272398849 785805761 531396771 799659183 261054070 462200462 462169507 485309815 376871366 462383316 441764046 538918275 224293702 381021039 793813362 820581582 649076397 769411093 997043714 999026966 208780310 921057948 302345365 776026403 612301890 852497603 48081492 853323644 178292326 926316239 614536949 976861658 950325558 961198957 223744958 754905263 663303008 819134101 519167388 606720847 872227188 958318754 758810033 988378449 600103354 773254523 718086856 909783028 616587479 700308484 350923036 857831387 780043066 864134675 561434462 949265972 305333808 704425715 999723807 999827241 80974901 595815911 284079518 791280106 270549941 602332760 147336438 442993264 247977096 970548350 353208777 584831327 756868167 912407051 467443478 860156503 365012578 594865192 936005765 985796921 506131475 517844893 142998080 451496501 853225081 893032361 33227089 760715080 312924982 990245915 448558226 543391252 812812116 871755310 729708981 851208304 74901515 540059482 985827647 986238814 40756762 388616756 723162232 832823596 601521801 641582822 370889705 554703344 81375762 161970149 845706799 899027318 409227080 555477344 34835244 808294963 426411866 853020840 806067806 924331072 429753272 969092240 832607001 921178460 999311867 999434065 69119434 239686847 144178953 278955476 735089127 985518579 712420236 866110425 265017954 821703152 326074501 900940731 189183353 756549242 223822737 811893329 30330917 614855410 450392293 809832472 85696991 173826179 287356151 696051026 284560466 306606233 44438637 60398838 226776246 963955115 815503281 942638049 767861703 827693988 86432578 749384051 310765317 998968878 602363536 976541803 363417295 974957019 604612232 675000894 648061134 944539533 953190194 975237926 564020157 885798240 520990796 540785507 427685890 520030965 394680320 432650166 325827551 431093548 448958780 894781354 386463023 787009715 658845054 735999064 718119313 794539546 752846493 902566656 352245273 764013741 216466906 777665266 697093420 980032911 984805652 999093396 6336589 211797448 814378759 969440391 404084214 543879934 806772392 933750788 46659458 896709544 198879035 886728092 117249108 991958779 973081245 975342382 522259615 864917597 131054213 581402114 712269512 822016198 838344030 888794996 320668113 621794158 253772979 455642557 416270566 928115191 16944773 463270132 102281598 828528689 176919380 862192034 494967505 960303633 502063506 533369340 935820479 949157800 131848395 847042432 549880354 700800744 34359751 81904840 270258055 779036165 907179084 962039923 723339809 792906836 663337609 994683770 386561899 756621622 192930104 602513593 386580315 856053682 59197339 491716233 14990129 752250002 827092599 881348240 907188392 963144941 279445276 799820694 278796550 719736502 589174744 848435032 527325736 562844897 266533347 869366049 562836138 753416990 896398053 992008370 750751872 850512268 575289771 987989100 384111494 940386590 784679529 841942285 546363531 595865948 747998421 931939189 667693413 966203504 64521314 907663258 695311473 710432436 426770048 681957140 297827225 618865207 202112041 632485150 960128566 961793677 573120131 951054052 551721210 846687466 945971820 954549577 430817760 877539201 578515260 877012290 161235313 902526197 374235627 693609057 41319587 415329107 228002684 412337583 562660298 652658309 101661809 902432841 269235878 341873080 340492877 524538946 245178263 939696039 161107130 667032705 485467625 687985273 314947374 883696532 459023607 830628588 408672567 653126060 850739094 897337642 819864308 982742068 60284449 593724235 774396733 938485238 604452743 683057943 855811159 972665944 196145306 307789582 676245720 884939204 242452237 616719777 473344599 730890714 761909600 929537935 277126846 364348004 888116944 934984971 66624204 381972203 812230310 945108612 336386017 458891126 327936121 343780065 643959205 894580608 940378349 988824676 553537998 647340457 448845932 450441791 11306310 116564497 165876074 692170786 841334268 887921095 971095750 979846293 75376317 836019615 402253225 820897509 748438667 957865087 705215471 917153057 836925318 936780906 697062147 845884936 242633764 968317189 627925745 758141456 58346971 863604472 348283050 413121762 849991563 853715388 647702702 724170427 27840959 303924022 452995335 789470089 586513942 755335674 648022578 851216311 709536668 770138857 256229834 495047321 146315695 585992771 838868569 973388073 920303941 968469195 121775845 341660583 435576131 990977060 3677055 157721368 489184346 588349184 56860134 973524834 876453055 877926961 693758090 732200922 525753763 995994027 929570835 945264547 220073036 304776179 551028431 771993984 28996561 736269906 879007069 904814932 299655366 553194638 810223723 873683875 958710636 964115447 318449159 886936383 959967084 972938511 483973864 791017730 207896287 714526433 761686306 904333884 648166708 690901795 675121931 760059298 27595112 682704665 944553012 972655793 783582942 793572998 73308966 443086777 744989080 891979383 759635119 998423024 888911122 903004190 641756045 985967261 204892128 565545830 818275166 823012126 196718787 448979755 184233229 521480612 752967507 998006965 230459650 997927752 812753994 823254674 395071708 589435874 618007837 910005436 812713384 845328840 490301790 611454587 521056902 832327409 946363202 998503928 486001270 967234745 74090169 650907514 740497538 984079200 543383775 578981091 930990590 960454489 24039748 84286024 664416398 823972161 99450641 918292299 952861023 967401652 228271364 886135156 484690107 619041180 151942753 753901007 799209857 990806788 184593578 762533564 290251960 975092971 621039632 933180473 795816181 947280892 721231364 874035112 696789031 908782810 579018928 996006846 130465946 367298788 693677659 936443396 263855650 362185362 88376901 743130993 69554653 523371488 623519847 874293641 860501454 945973312 94836252 717156205 337339286 759743595 329932046 347636058 399034926 426712451 636904002 727640765 746108060 864395320 459039740 920012173 931257719 971897581 788864850 821897761 829714308 904935999 114276444 218365820 819678812 963682781 234894831 272717348 908933019 987285866 884368585 918018675 821148599 847893122 850968256 981726484 312406208 503754431 631945859 737944095 345493453 474476455 853509044 965316971 102944570 743653390 79360021 429595506 228292235 230766730 635485096 651155405 965495357 984024480 792456946 909413761 638393334 819844436 814786855 819820089 158433479 669311108 113321947 725951869 715995091 841342476 370186121 747173394 251754198 510246279 986019015 991295964 908543557 962244481 144789069 799958589 392332154 697416827 558370291 623796574 952259372 979951643 158883630 840304677 261375793 815103099 776429130 837036530 736740907 809458210 281832917 539502577 376418634 540614643 105875342 991539169 834387039 979732955 413628175 483120878 839819564 842512000 586903633 791700205 710689088 912913801 834337018 988261024 482126070 771863290 962370870 967746043 263995480 289366264 983374633 989287216 972813358 987864046 651926734 936317319 862396651 865346715 139042482 366510720 677833492 903697601 496061967 636696115 790112944 816060601 976026583 983749907 372375605 960393361 925128183 985309388 96569592 176370681 745655204 847760011 856258265 881879585 366761037 450026491 478587841 855620080 920193554 995366682 562152869 831693853 78660713 495117507 824242604 889449653 490126841 917158071 900441869 901951563 571362654 953765436 933774987 964899156 942951150 974222638 204157407 884665485 857228185 922213594 101729680 970717377 909432558 945728457 836107170 943979895 664566660 818361806 989835103 991630537 211201783 768993354 687450692 932339346 405307461 514404788 585147670 873488517 314699963 674170474 86099150 365058129 17011602 962883990 169982464 570079104 223451559 753853261 895390405 908303988 90539944 756866341 288499600 869476696 612467704 712670000 163186659 244292560 355104788 493646651 711576806 756328500 650264498 842829577 544120463 879138173 362646132 867009804 740403766 902263608 498467883 987704878 167192507 608409675 277908233 351630715 485990786 647574028 218106788 275502805 313947066 556937552 82685553 416425472 679898844 764953455 466797522 557527122 331696602 535525178 635353825 820624674 861478737 889503113 64091759 395398109 775003939 907020288 518841799 942854825 935403781 947364627 422294947 965349723 135729484 982779862 979318797 991017717 279273426 634320933 509757839 706369964 581350433 860409375 795594503 838659892 654744643 795653339 131506317 806823378 698956203 785987338 712630647 789681800 142065131 440040369 548115325 734856138 293315423 583925759 746079389 970014349 47822615 436763254 761376553 933331183 374430876 531007463 211313313 726468656 776297542 827415417 761775001 862377262 7451152 928392050 392007592 462434052 204687849 222609747 587931053 670673382 602467986 943602611 395345778 663923637 724019941 806824438 680141921 698317700 983255403 989132132 294362491 816786784 966502060 971344510 284505566 774302409 130899774 481824476 107676169 792583956 708110178 972797044 41204153 50904886 715660991 810936469 994048651 997567282 724338729 842325596 535716158 845183645 196599094 956827650 96387508 140090282 365022941 400989253 917175502 927710896 391418210 909288838 171648536 328811801 810271650 985155049 145090582 748917583 553909635 878317117 35698178 452462306 46527523 917232087 617193212 810530098 489273014 582278777 6610250 892961348 525809419 885778804 848661813 973712360 676533908 990494563 105752708 620384206 660128211 747322761 925162256 987297014 394710506 416545861 649186720 958582295 51773715 813923300 183312624 887047597 942100238 944349308 210153949 678375046 890164329 900953367 255018300 284260721 84583642 957896583 909232701 941111502 614298795 953791682 390949604 569037645 284141839 555690331 311957171 482680743 698092033 912439489 973280730 982250782 918001968 954478391 392726642 543639082 761406777 882352697 196803672 199058492 358108379 489093333 891912926 971957965 276609677 356689534 418884991 835442494 216760635 438378858 468088705 750622295 910538218 962258319 936745981 937644723 174414783 274787248 65549515 685846504 148681131 274283056 555127895 771964077 116452133 356982963 846076433 971286982 330480678 897627823 19937039 394974237 80113922 656181345 220134352 483517427 881803130 959465613 910137631 961307109 173385254 710272283 113866794 813588703 770246101 820836614 883007531 890353169 646150170 861689598 4159850 894610349 265374199 299778762 704989417 980470845 345135924 844021728 122378898 243777346 246037984 731104818 727096046 828652897 79854041 443994058 461014344 572028291 859812937 913060183 818163854 855783007 295762222 923020896 469976496 586874303 481624027 529245408 203122860 568272807 876574994 903582339 747267621 872363019 656599817 889702629 214573410 819563327 292012227 431688339 263534590 997492173 90556208 684270579 725866347 926512961 559050518 730055059 934096042 982135428 651369330 843693312 272466568 831785981 823478540 837093555 842388275 964475660 239786359 392120418 93618211 920288694 985785997 995912533 147379550 277874086 847121131 972496768 810972309 871584744 619065208 809337632 716014945 889600300 973158556 992006104 722099189 992196278 127883351 158328866 221899253 547363217 17756192 293647870 256722369 526218666 40277530 476785571 363335447 906469408 271873653 705655058 313049151 457689128 325069189 921415443 79969641 188215814 848216575 888985182 356780871 666470445 356156640 779581180 852849637 893837300 578010198 694824247 678696951 839703347 883342313 976038722 274089888 278996762 38103426 666988173 74275072 216552085 787581524 808299742 507576211 847142769 705195381 959839255 290544868 321744048 267047541 906030859 391765696 790906289 682139425 730713945 928652344 984872182 72569341 81131654 372890261 698278011 758160576 964327908 820010555 956190846 573414605 875795827 71360393 406286786 495023091 550660774 565961434 915885432 272599232 474264152 727729248 888148488 278980940 365923323 618780801 733352982 81129778 142927841 276076225 987792727 478379708 917995241 955098732 988149281 825008534 862194715 403176707 799703658 708894235 862727926 841040977 854337707 998108516 998529968 218764051 788287828 584220053 635197436 418037746 754115137 477048083 889622324 670666914 685037956 85901226 567967034 16876416 488859690 652379006 766854087 310100551 875880015 682269074 875943668 462501612 838392367 495177853 906421518 275700209 471844254 510603459 630427145 615249717 714058118 307611590 509617961 753436565 828525612 159199491 229808058 260449041 788367081 382297316 508794627 615459829 979928428 702780616 904302348 321362438 787508218 840575583 894681794 568831010 823332450 86521855 436948292 315176302 928135952 936719951 972309923 888009395 962765055 634203956 655286255 266397580 855156542 474006699 883177112 633483296 860854661 723019524 908871655 638527129 765009395 963055168 971369392 680071902 794748044 988921777 997422240 157411239 493491139 885541788 910647222 598859662 640785998 84207787 917231485 801022481 851489778 633981394 688540156 193133032 603842134 300608416 460371622 35846021 682839603 801986714 926315245 322908443 757485437 646095909 812381163 917130099 972631287 982940825 994594996 725439952 841522619 328845469 849734516 523737722 825093238 239355716 711912978 193928791 872938338 788052124 816299331 681677277 928064337 147274380 562504646 845800216 953333946 257922030 371277893 411171974 472927731 740109863 760737304 656978903 856607735 513805342 845808152 444533501 988899885 228361680 700584334 112104938 503434108 716911681 772957939 737806819 816736777 339614212 592141704 626386986 885253023 962506791 966566642 846400278 855497669 795250088 919075501 849941784 993724520 258435448 585091934 458227038 601248880 717066377 752082369 338635250 641359230 83083846 797439221 108802509 820541474 403937046 608199592 878662714 929748477 30004495 972564773 311623315 599332677 873654569 948375122 958810966 960523102 80516520 136939355 98293048 129240182 212144475 429644394 110619261 939976625 726421450 748848625 728886920 900416554 282735921 823113358 423039103 844070765 165605423 768177822 286205171 712319744 588283298 605003970 614109681 813928904 942561595 994356667 586806892 629483761 106855788 986131522 37240044 91753892 813156466 912958542 443644674 472370855 734903178 787886358 14793912 155484380 542486537 674383109 461683187 673698872 985892699 986898042 367197220 614014012 867267465 890633018 18799493 300976264 134089387 596039009 19969231 222273358 273478683 561874712 591251592 867198418 614641424 980356628 701755697 805366240 368101275 994428159 219451490 485307502 844743172 919664250 533443114 951823239 777952542 959308511 508122901 745569089 37087090 126552048 35404865 400413449 440726632 522473381 771107434 981359491 297877133 551624626 687438275 729385982 972980709 974206384 689140038 751042695 275532020 578842828 182485657 520873592 628572444 634891804 151856915 473541686 387329300 936975605 332868251 884803135 161919062 287964585 594460319 808153477 234450416 583712163 765940865 887522832 962300006 978312278 447108986 819212420 559438717 957097713 585741996 810761160 672532100 778274979 204809474 759385626 452213815 854001737 99691161 774718611 227660864 962033902 951809079 979345794 828296689 960230540 371445838 558265451 397495080 587359474 895615610 918132448 996305641 999086235 707694862 790760861 235012982 442003267 59664417 101097926 116827187 363782466 618178328 979581584 601276931 977560976 965891483 999991239 471288096 968347595 701353107 880072567 822541662 832000775 311509598 482411067 25003361 826696472 270872832 396249179 936984572 990943625 728194588 794060891 405866289 829719569 967752327 977250483 621224750 923067691 847775041 888972589 23296781 823436226 170838461 823396093 499151362 704996088 131380618 147748646 667924963 973102779 572871465 899754986 571839466 603668286 345140565 578799961 853499810 884090972 525639138 583250111 791867971 923508748 832999630 915324000 491677420 658632232 874172821 888103036 77205272 462422720 867185841 902879038 330961425 617951156 33057925 926174772 615724656 918148902 159157746 166505826 764620622 877456292 400278747 860949808 65286871 558588983 207361291 545516343 586548795 860678960 142555042 883608053 298885949 580935672 402561469 789336214 77277628 715316252 269194401 850467748 745013071 935395136 191701839 863886006 727428133 745172532 108552191 112041887 946481240 968750873 775810092 907179682 892744915 897047260 591065716 608474740 715637740 902768729 498660736 742401125 518008597 662633521 397285871 877570510 74811342 747714388 959228037 990561969 378788711 461137055 21608589 450998723 941014286 996635492 110702161 274875680 172497088 407917306 308754632 315154795 392711193 724739109 382546105 408671654 718519502 730507081 772398259 992266797 366954623 952168938 716390613 865987714 87105722 318639794 413580547 946604917 946174146 995774085 338653464 549520565 767593509 880644924 637884097 849007935 602747818 675469401 614288560 770211108 493294684 670091004 605000063 629062607 989036564 989245291 226972698 501902334 709801566 742507272 649975974 876265117 276632887 532048091 9204102 380992110 652558658 928932630 262013597 308352299 52257431 697885440 946706657 980125325 698409164 863258904 547288932 881604742 714319759 873261186 562080837 908210496 12765992 854303657 409426318 846212157 929167046 949659263 748335292 963792856 489924526 792971190 180568787 730921998 594544646 824414778 511671127 795821590 641289514 834480853 474768203 933605567 474141695 512544060 497279686 504395225 619789202 980008128 925941378 985238113 513017082 829401165 226608979 336589007 810084888 973225481 922221637 969045105 148171091 971992569 205111755 908156650 676137304 717790603 790584795 819795247 868290976 906749425 744984222 969385926 382986849 642587659 858563067 895097109 448211848 944650255 203645310 648224804 636934406 772868378 970290443 976570217 404948769 746230670 524974652 794731974 833630939 935954057 585021617 956550929 72405251 583406888 59472788 513198697 126442443 511825987 982098911 988786160 268948444 630226923 768711189 799889694 548263401 897318975 397214010 790991988 77591410 428010427 511376692 940313438 70003798 645984936 375685387 702617313 737123396 891326191 445601763 664119272 243278737 647001898 966209956 987342164 362850659 428920739 549993039 669615833 729891381 981560546 286156655 784522784 261063594 699440908 981618854 996076405 527163402 648290635 544626311 606297726 637928379 885790820 449551245 703016394 228709991 364263841 10302340 193272744 668771151 987111961 564792806 817858175 397515243 471524271 559768512 566291879 863798007 866141352 424059950 706059790 243012585 891118075 441280298 897392382 385815687 555654833 817154818 916633124 869295327 910604914 755185882 959373717 501916070 646595400 896592798 908440977 332562980 958052965 27058055 123824837 351733446 906078566 460300694 481705026 154938061 496203216 363100145 950116040 212096134 548681195 261333942 752808764 733973589 828235904 899352122 905870774 119924312 740498915 395025932 440571531 68596549 631819231 756640425 989698029 788756830 891328049 533674481 666675650 895824534 976563489 368446279 714046792 941012032 970720270 980787381 995192383 78621247 289927285 128981248 571676231 30835715 185892318 760804000 868837492 736443979 892702409 670268900 826525901 653227832 986768570 547507775 853366593 571218066 911205080 568557440 688126092 801779431 868640352 944809895 969168097 375695358 878861688 279362589 508099387 696320767 767905908 84856966 387724372 492589352 692978599 284408688 812552780 274901810 974549243 233771352 685786163 283369931 640484794 267789523 988723538 574987407 621478301 679632800 809301686 961863141 996645259 157900948 960200223 221729813 360256874 82827430 500207007 654938752 857577765 40139711 983646216 841294918 972014748 148014328 666534727 394268182 764603364 69776744 160646878 335490766 837264746 519438544 914669863 890844179 941668982 452156392 772358836 972206196 983097024 181144306 223827215 322736929 969811580 865293795 961720141 271702900 841130778 488055947 927572181 429885402 483853248 241905997 577538375 185011285 341941301 904182388 940977303 570069022 648915557 964122318 980334959 77975279 124572674 541759255 802991205 664970485 725840819 715369688 958891445 311142508 892347293 451868992 725383890 650068177 713104800 467539499 895653447 47444294 797732625 20440661 608019917 56336737 553998063 979167765 986936038 902089568 944299219 8862705 316284729 858599247 955506379 47093650 726042205 520232935 558873665 173436810 640053119 179810462 661738246 605155009 982955595 176567356 366882112 666137503 871207816 361052150 824980641 41466903 242408718 346137732 423402006 500320868 869536830 463127755 675953590 355565024 923877154 785479760 938310100 658128320 811020210 892126627 914856432 567145455 835085173 886388370 950069832 538611955 652047506 990076777 990813020 64299741 975339507 904685355 986421009 507388651 732840013 575317870 991069105 798371284 852390139 87278901 363259733 908424977 927161201 210108422 543412894 549735584 850818870 761149028 974438406 258753017 318721437 712197534 870620289 526823679 966653953 290815932 541136100 456015926 644019942 860232521 869257320 324686783 468809385 396823186 950789311 300633306 807101158 716715936 811039213 609961765 763716724 686403403 851300329 316246889 921080255 108549059 674095535 388364771 808906658 133583568 929541972 212664197 258067720 888647197 954914898 481206204 780351282 907774171 987686265 959515591 976181172 33231716 587169217 868408741 902748090 984455926 989180456 777057623 854002184 504244013 911106229 849156595 960786445 916386239 984709104 21164909 254367692 39109918 786140055 178947507 481605718 239814466 636030933 916649647 970501606 975467773 986762736 460318609 766731526 54889606 943429217 957394508 972129736 159543559 490479649 440691303 810346844 449589151 574024105 489174515 519085765 220428263 451944992 105289862 765801455 999329793 999866227 554728766 853260273 41818765 661032068 233382313 689810565 738402180 843080428 575528465 982696583 894589391 933274583 695704017 948350281 70965807 82375086 323075373 402674412 236291026 840418536 417671396 893130589 88743481 96964045 301407360 602750168 246088885 524604918 595216605 722651725 441244559 958157935 437442655 522556155 169344901 657919552 294065633 926543207 555407138 954631284 175975998 192129686 180948347 740886536 919983005 991475116 593136660 705820816 6307784 216100636 595081973 917901530 937217046 937984613 20118453 35822030 66356040 662876566 195198757 582780331 408378678 777588439 550555716 654600251 600997330 826521265 38792929 431788661 82051585 827056864 119264617 296342833 623723007 896659452 179021327 579782886 113539932 467046189 816550148 877764276 102830525 386881597 214202151 473210455 263086291 727113890 430491568 612525622 525430409 942511095 863332618 962948831 832229997 840382771 350466369 790685014 42063764 276398558 852463557 883577396 828127326 956350722 792065889 915864426 845321277 987568971 441365039 959909463 292044601 760003170 789987721 872668852 853673503 928382785 809919881 997222603 836912072 973633214 608826982 639049304 61805465 127384508 609104598 682427755 331214359 448609787 743922178 887789474 188234818 296418372 785097947 942516794 591404284 916323263 125573825 310119596 936836377 972725838 483700515 978848816 436360830 874568907 714825496 906417833 210378011 443281552 205558960 783192043 364042786 443866617 930518466 955415924 19290644 52088934 839879482 949112963 845834613 883945875 298574156 344336485 989492798 990790671 178556990 460328798 863023980 935448853 306076114 473809103 473816826 750692376 187468367 665267740 908637729 942134884 899121294 966473534 646677156 944408054 292422752 399743448 980290329 987415879 688016419 952452617 940858607 983271170 915803177 931381542 107471220 994470677 585077973 947768526 908173846 915438674 498877190 727160853 694708250 784845192 760078950 954171600 916874861 983379335 467878657 933719578 985391670 986492194 384087392 619217832 272172520 894168507 118650073 296334018 475819860 753734443 691179534 806778890 353649494 875590070 753043750 913358920 485098786 883304548 479943093 495073823 64313752 847620693 933345772 943278231 49096948 366415991 828933735 856439061 706661160 994738069 461914738 513541363 763575694 786022881 247519344 588069186 154874368 829260086 856478779 998432716 175965614 660585760 387931490 675222659 655952933 693893127 459847380 972252573 757000346 863774879 319894976 928759562 728814996 867222017 722984077 755618337 383514081 735586288 411652488 909323680 605731062 882206728 466549781 942391638 835482990 855076813 140613988 663176814 602013176 907321454 710833488 936673003 86969511 910560996 101299560 436793718 923065361 955034460 635810448 781007144 272823398 443109773 217338746 446886473 874484782 918056465 603524185 668112994 958163757 998688800 26262662 159091851 547302967 605628143 750776508 991688891 451145269 884813330 339043767 798717290 142363733 765785902 574532974 726707040 935841345 956268689 871202380 882689841 978851023 989445029 522164566 920220589 759113242 862420234 312944213 507148802 906673404 998055941 802437872 865849386 316702379 725632146 829812190 867567395 233554466 740590897 607806557 680148832 227544082 446988119 753852308 878751658 424478631 609451744 625831663 811794325 872333839 949138789 483431391 774506990 7276521 957205031 153845737 908989586 254824571 461563196 473580379 481717147 299147612 307333514 673992623 949138700 752125566 890412353 717338660 830214017 421419210 451840004 545007276 555079544 398409404 605517557 178928318 592280607 260365003 688164665 891122226 943517958 412933175 882867490 929635524 966030258 96739727 947930110 495780061 637859170 720284251 962074692 329393765 575409236 46363542 517710694 606801673 732809454 872333684 993834329 482265863 894719920 905499108 922191465 349548024 945781508 697924248 892383567 465334205 896124969 45947453 509551189 183276320 813506166 871519729 889525944 4620406 179164707 728261304 948370825 111601453 834700919 717671624 882067926 367893223 435421547 207520881 926191825 578926912 681141951 908645134 969059701 939157143 996061710 829732191 947301998 749294609 992148364 660382363 725522190 241706933 656818420 735603265 888349215 470152002 628584704 105136342 853197704 54313923 182030262 92573877 780258390 698509228 954825493 929143034 998892143 824541150 825703539 531769426 924439654 650357177 903732642 373186645 771428590 107510584 685589263 762875664 875704480 771674211 817130545 989566103 992292216 21760740 277674544 987595089 996600301 44541423 629806762 75871643 562043817 24049128 297175384 871153570 932994672 381627997 506857094 815891443 999799250 622870171 934818113 203982679 675845337 978582307 994180134 254686558 949853194 141242917 681685822 457952900 957945098 116317874 976693657 321075421 340256426 698661580 997241275 217401580 470751782 503613289 962921863 376362943 819923408 230432530 855722140 244606657 651548793 699499433 800273882 275110359 441622948 868674236 932064939 195696849 230727736 637509034 665129101 592278333 854292831 272131193 889080109 194232148 759862692 703454344 896185159 223890541 465378950 301068845 575324494 784593421 833636366 869275465 953930447 718165165 959478525 516872893 955971792 798670333 976691862 897858175 980882193 19800133 511890764 809065975 961881929 531987526 922527051 899983390 937801766 933205234 960821385 41440119 236511580 127644761 335775769 674638485 972013909 35582389 535195090 76721422 716943079 884835810 938845621 5641412 597250474 996629567 997889121 961970487 963499908 721571519 847271175 884469866 979006383 481634890 627577988 476232117 547746181 569066568 714122084 47496543 943112508 844376105 897921727 720735856 802861691 86615221 432251622 845142997 927496056 70364025 420708569 910768691 915774206 152301142 737982413 844250786 851374861 422057109 471289576 863939168 881700442 292200537 971560479 946342026 957701340 345786323 906639653 888246576 957408535 806735398 956318147 996525238 997976420 165188634 788453134 495696177 496810201 801098522 917024555 225576246 929331167 813762737 936419629 481797214 976165705 852098697 917441486 981367242 991184951 469143984 949601703 951871940 976370035 643192229 856597679 476377183 665223764 652393225 743985988 72709292 837185848 823029592 882841586 679307914 817914420 966441681 983450831 805441799 814640877 251088820 439851259 102106656 404600635 620823879 885642979 184276788 235275606 365056673 665660141 157592979 306315115 861893464 997977795 29705626 188297846 540872901 872137114 840035317 896278030 269298364 897673816 794368786 882541371 912471898 967568935 588209389 784080783 449033708 978023233 135344391 659128127 898587250 977910414 777002441 986846177 914006405 959921098 658503278 802317149 82903576 514712740 706468379 987888872 24725318 158574289 904234100 941977778 798447341 898000561 697947615 950616623 122895803 527743842 492812546 826562726 863088278 930448906 917458266 946660179 37755175 434517830 262448398 750799684 393006808 888167378 972059298 994971219 697987354 991603470 311198684 673159304 321545804 714024437 246414517 777660415 283807389 681393182 88813203 100968397 316779600 929528400 312786039 350059485 959129966 978870552 780221080 868511585 346097932 911149597 573859685 678214565 479295034 927858420 142673636 980889544 819414234 934050554 545709426 555375341 578175885 875642548 309652564 494975664 224056942 341797843 386323176 737235791 296159562 479388005 769366293 834083437 234722999 581178635 253431279 871043280 495643576 520428128 379746542 753879791 557240077 931433339 474342008 981837744 774941239 951393688 583541439 957897508 544043379 872629590 226347421 412999200 394288121 784677930 327338668 348152993 512452449 967375473 239180982 727159115 418493875 872557234 162155679 312514994 857289842 903568469 557242173 779607681 843432839 963110446 586102858 818543577 149127587 397462475 2050059 178394636 43337344 107454430 561253971 694878489 821752029 900465738 841291693 910232495 941300740 972208127 520595294 698103281 884825663 926177782 883216629 971336630 110940878 570853083 579364927 635034544 697620880 728237618 630427675 758981844 415093939 620271678 337082922 949649352 992073195 999947359 976504824 978604527 913935599 959799629 512432487 630810518 115158131 379819489 867938352 914821077 310919604 516793429 229379706 592120683 502288008 864034494 868250046 913473681 679027313 897323022 117365198 273210822 547011773 783935249 294495251 321419708 712094364 849848841 491783650 750079945 864620156 960522594 487069918 719680146 921871632 928756803 978143690 985646282 486664438 998793458 487836664 491196002 129933645 143176854 324743504 926490413 779587449 926562002 652339352 736311311 303397369 506137081 353756822 864839177 386842897 764126714 316215414 739616493 865084813 999120487 948261492 973123961 673620418 970440135 992516388 998613849 873816929 950993474 412665849 503241244 821957899 894284857 477597502 677591754 777256946 934302187 214251765 712048484 817777356 888467510 72718871 521410751 294896432 333586409 150882924 994621989 558597890 885470759 607346224 626680090 614107487 903123109 946362804 946872654 574955027 863333933 330467624 499945382 263867492 672045900 267234110 347940808 269754455 597769304 518355590 638789245 995615243 998388879 554274986 729761476 3650436 113596158 897471479 957629398 532426670 709378243 696064242 825855512 86015575 656951379 616347512 787076252 658518766 660336855 711979055 858737243 258522066 490515546 723462248 849707298 537017758 784465509 665514396 991117617 987325182 999942769 377558125 895447690 3129343 673400439 836798009 912586246 346498015 917883041 873142130 977337865 204473633 980134766 403319858 512793904 472721662 631284243 418496883 770208213 114863851 224842111 611048275 641459894 779878882 964396731 610423232 887209253 812062632 889677100 55519244 701338356 267077479 763448067 98857552 446260016 436438629 456223626 731560136 990622999 18554865 109564316 690465423 796996219 590518193 835973256 427352113 983059938 818950628 939167665 966459306 994316866 429790359 821669883 80114166 942644522 1383267 749033067 268377702 597609636 648684906 695125399 987532862 990673859 521493403 873699613 849218954 902485922 840580318 870538254 127046851 152554988 685656928 891241604 235572257 797416272 474440186 637504195 369517209 746425473 700558787 743249690 807831690 964777557 152245970 486868383 831175188 915801571 708873669 882883780 346078540 734780879 594262935 926258401 951779223 995052151 168412386 536446519 253016278 294558378 91568899 839655544 3072807 770593217 122558965 151259893 951752776 982898812 698774787 948896152 20040427 23138992 69194504 204526440 835362323 904524132 112203278 243414007 455282571 555725910 972410740 993807108 591784496 863664119 374871500 639608005 385077066 398900811 142954075 401076042 33078896 769834900 39995120 630134953 748209690 852445629 904858459 954782902 237906122 759297487 189508281 972913174 65759920 138956849 172124368 375178431 463284320 554716034 998574937 998724014 988199732 998356747 712385893 806479231 692214817 693166722 651554682 825402091 78930896 779431302 50678402 845669008 472819896 841978596 53258500 976304612 722970102 746039204 901843893 937529785 336063593 368851765 554916826 957541433 234999526 724417514 579875368 793089681 422085663 838534731 638180101 841699364 516329364 812043150 899760216 948027594 505476010 520929963 174394412 247313334 828777704 976653056 513640400 965697358 958801398 985656705 739711749 782329370 141213189 997930891 160085951 847749609 510814483 917860247 474932659 805886548 365934655 406595345 456052952 752784145 437045876 670508946 879121943 965483967 57352442 966108397 112856486 624567567 303424647 500950151 548189977 705702678 51276753 674191518 397723540 661258409 376248151 680943254 946678210 965925954 322549467 833169621 707098334 985550815 215865847 229708891 741071003 830020406 365211042 397170639 717325538 802421294 680066165 903713726 55136818 723967435 792438516 825300164 461138024 512586868 774079739 842769028 169194036 962889967 524596928 950784325 206592636 597601892 78012916 572213214 783010858 878405302 994382654 999706303 729091227 945341724 394207766 655358407 83378590 191360666 263864971 472305411 158378918 890472757 47910381 171942802 90363512 696557859 641144171 726029026 64743830 861164341 228684759 341321012 533268344 939964871 412485549 470820168 192347895 973741174 732433422 956138442 523299696 622779377 718032252 992639273 148067323 269683772 362136416 712412832 385799674 449479452 332622286 351553490 16146576 416247797 254754306 677035098 816094439 872400724 561291463 688704409 775273787 809697227 93925762 431012668 978494986 991670682 384039038 693073177 962224211 981440934 756718881 922980075 996422309 997769123 353492841 892288767 213596925 937162511 665063027 723881028 485345051 948419661 496691295 536009210 312461198 856989136 950613174 961256019 260987528 586733926 699603213 862794365 839757000 875262770 382438298 949319483 619723491 932256235 21607963 699992948 624575869 969370036 690955658 777660096 638489107 810592737 995359329 997569329 270648481 754606500 844534590 862173815 236534160 714901291 836183893 907564314 665215722 708665303 775799225 940497163 96388824 874432358 166984538 290010444 379211873 502990835 326187359 935754043 758362384 997405360 346064279 811162248 175451561 262507938 354401172 649027350 823663844 945068860 257034039 733177991 627195570 803629020 482492901 538347747 249137345 429820161 271928401 865125979 597887632 617419811 91931423 380606720 974816728 997639360 429572285 589115614 290421083 366992362 16157463 798095635 84747876 972936553 592021476 606294074 364729547 548408755 590636036 691122809 263467639 745261630 538272046 957039832 74814386 193400839 902779401 983848417 338485613 788607949 435800114 709829074 957036637 966081407 65791300 178075857 977198720 981841479 844908888 926829954 681396814 748447327 74838596 288255118 950336763 983043231 716232410 997790618 593795072 795751746 205364756 765662257 133742493 923883315 908504537 975569226 604898697 985463987 626722805 659145206 384848945 821680059 172418123 223510988 964397612 977681450 922541358 927597967 769690069 848750618 79786390 943515255 954120859 961287994 454826412 692900515 35821430 470399184 132629609 220346238 91998947 93743842 734653384 747079533 800974568 914891893 305773484 443056501 566309126 923608553 889121106 973524694 387321419 819138167 597143426 883492562 809850590 868760567 73158325 486990944 88580163 330622063 980932753 996169135 626362240 881445865 466190839 904357559 105855900 292523059 264758764 959911770 390172083 922285553 580834659 692131572 809394928 848347362 855963153 968500418 753762911 884841347 231804831 682990145 802429436 821693065 605782544 990686332 898187763 903637177 672744097 802561286 927152486 958544470 760253115 904384130 603449392 894926296 576781045 658657856 104609243 729264179 707451989 937947960 300983726 387309993 560138893 855087581 237492952 398932419 980802337 986499705 813280685 925569429 899210336 956357345 458618092 845542227 693534855 913154012 425926329 844775298 973903099 993012851 21814560 172845132 69262472 187273679 670554686 860748220 489747597 782245113 101533655 489822373 871411349 883312946 237024939 710141918 700449403 800451283 5798792 273660964 162967185 383614755 923807329 994757043 469870204 497282481 733058264 959043485 756816228 818386471 617729748 780338138 679450179 893374529 509075065 656186787 766903268 950914865 676331390 945793029 308244758 610866731 215034094 666327937 352861562 743852557 193175675 282395209 482169290 787677611 252901250 642448948 34358537 975729035 259791148 535317300 326648883 881422234 296077806 495437047 800359135 930093876 338340341 555886784 588685846 773965953 139232607 346761196 342660619 641895325 65125966 122093667 75588757 981360236 783791195 885231310 894073001 895772288 982267886 987618624 32526394 616553233 100768853 258646561 564368191 773402926 467518532 729398208 165554986 888779434 147218720 336416373 192391337 819110185 869166624 989685285 735872853 988612095 356496182 887351395 133113154 608415017 864258500 998627272 25458645 468303984 371368714 818068474 403980111 743201176 545152265 764366231 442693131 610698112 733340136 840676326 132771943 716788702 902028878 977796067 240859218 827771550 606125606 611604312 378748227 609409287 245896982 992627351 728222426 827933134 246029802 419913682 813905555 828897190 467336456 735296932 580833122 969290379 10084248 181669991 779389556 969427622 704520759 741979397 610999412 872356680 150212664 938353251 44143029 578078097 826878326 985517574 543932958 999090956 289982232 878305068 335244375 586566229 253205195 978737282 745593004 901945942 37498056 790647870 794026075 964768520 660589802 960407900 67090589 885899930 707552285 713447479 350217752 491021283 604058801 658310353 709981364 770065153 422281077 486110963 958178782 995544178 731461633 877784327 444727227 895925989 263049043 680466409 318848301 383384343 755210629 772865793 269049863 539063532 809919812 877351591 409764428 695251220 938171334 983731187 130874548 745124109 165621787 580035226 137825108 906729085 367813449 860013298 724050847 861295354 360629068 948964789 446322104 742381410 777194012 808197576 344308534 694563271 110841408 360311383 595744374 907781273 364176027 579448405 223892751 309143593 809163993 982824495 258266041 670435872 482897688 786922177 808727353 988537741 301473099 845577042 685014038 795465518 260712934 511447177 221057988 472156715 200692889 766085030 985451641 996014257 399548445 875858883 991102445 998762635 352344850 843918099 677184662 945869104 595926486 795026551 252256319 971913011 776282200 805838593 727657780 907190751 495499951 535968387 552513534 771395905 485307827 629263804 544235709 654046007 567330522 835982715 385449451 435436231 731916532 787200238 551541881 749717098 654906478 677763596 372326804 594774727 791689207 919071120 119051753 639198372 441109782 728451596 76850456 939113332 123854984 904695008 751935836 875249277 441025223 915212383 656282976 673624408 54886748 854260327 276058934 640278511 145707980 972940211 847838735 889164416 841586095 974425080 708768830 819584529 203981341 736048140 520728798 979757064 188428969 869760419 848524025 849191922 923822637 979573900 934831136 992373090 70742787 359758679 625003503 804031491 639673394 861347244 213563272 748570572 130413449 987405933 263800278 298172345 829419478 924107932 939534806 977379616 154515295 384929692 601683379 670635114 541466302 693356364 310879553 680950952 587391521 993219938 619372676 818529366 838036171 989431633 996706922 997058625 832353437 909950836 533636021 546564541 570880489 986776198 332508497 885390171 657479704 775077222 742157352 906013858 979371834 996306402 481131529 860775932 978444433 978849894 79231531 349228706 234929242 446357379 168946717 906528148 606014991 680938584 133649083 179452357 179922694 806620701 40873725 636984076 803505953 822393570 637584664 643249786 693767419 712496378 379867432 853578126 398735458 465536237 679109092 892986743 405234082 766808436 434135367 910134371 383721369 546109461 429070710 556674038 592328378 771143011 590363800 930046532 395688225 512842529 804732427 919720443 291718836 495535193 484374591 721256601 762576979 923383373 256534308 546083477 344284711 764053488 160502399 402877188 833549291 926118453 629732504 682328616 12576701 554296588 299143702 670540449 947197940 954271363 727145117 861411272 438689629 876448043 337845063 526697691 354348907 788039328 812747415 991185789 392028463 393867565 236021003 508529195 582147765 894707582 922018497 942830938 221620788 713291566 314465847 937691655 508387904 587510962 501285609 741241202 352752241 930299791 695479183 850161905 701296150 726178168 198780132 491479598 206137322 399662575 240864829 429309286 580757186 687604992 513959400 970573816 13007358 984472574 370551830 408041421 795839680 961794476 568180447 571717018 365386421 997936614 441707267 597497072 282290914 954163547 115756147 202120819 306888836 864346583 915706074 979771227 35412831 826068888 642044755 814330250 96450606 318377377 727318273 940516978 796781658 936428483 583634750 731125490 62196915 295046304 6687187 433255068 314308267 346940663 849453436 929495036 404136176 657119569 181023337 188800316 84234998 828490493 404817624 494811144 300868566 736522094 883444701 981003483 374791635 692836482 174910564 438742778 449557319 982775881 989266230 991654195 614839907 682036674 333265979 994293833 34621650 282831896 838061631 920494889 547291113 560459258 30787548 384035390 341993323 429890983 289478836 339133905 956420772 959374388 930790333 960767578 913343564 915992781 79113041 155604781 121165477 184423877 795590140 900599643 788323129 844533795 822705278 976911846 426980579 965126387 770109615 958776758 656036392 883426252 377652931 948711389 903324224 909684991 270118585 392776934 252195008 410668616 86742076 252248764 197338489 272551887 828058020 861871135 658151023 854147563 654420909 803383068 17623933 588588832 734894499 930604006 80167492 994332837 520388444 612540268 414072893 511768473 819324098 862775769 956641991 998479612 712989698 887698523 964940798 970779965 590438077 931518318 755276331 766949547 891125467 972459156 393640798 899759439 214445504 216355016 45545893 989084348 822282325 979837266 173811405 427081318 440250285 904684104 978471911 995689550 747865738 825849850 678341430 723267474 676922700 810730160 225278829 233309918 947725115 956943237 661160117 771642367 261550748 623050595 801092298 817737751 397464273 864087199 251847205 881642148 764295272 955971618 568085848 800902742 491946296 747789091 91953423 446474753 24398919 775524767 452907807 566560503 15339358 778123420 246658411 816598294 426938892 849251430 790563314 884593775 542935876 847899937 108717123 381364588 266200319 294013179 34300685 600027768 922064397 998156470 687637778 868105758 300317826 582726751 758382611 799998849 662215249 688712015 286565407 377279703 825055930 996239491 160964910 575847164 383191190 807225270 486646466 623831314 743754398 780836771 228630966 310233645 687678335 963571358 50289025 382066261 500929202 684500441 404255052 438709394 151687294 563238155 648726505 898635723 827174059 897370062 922701284 946258221 520303863 695611300 756715966 838945534 390495432 909785262 701972370 878994122 986577254 989234093 220879633 967177153 137803079 511459101 732966237 787225681 993589909 997024399 436029400 984615803 732296110 878162589 512759847 646121537 970216952 998987475 638213285 823434388 536878347 790085038 661690639 869039286 198661201 777328304 221717156 508176558 186566847 484127368 132910808 218167920 346464264 348496765 833877234 964860235 644688708 902743786 827154071 903496425 312564348 470814724 143160841 528959972 584733418 795238971 612233072 756316704 324550440 882060349 968713497 981734236 988827322 999636339 360346806 426986064 536587654 840397156 790335505 897249294 326543154 888304389 504290779 861275158 36194590 57940645 449548740 855119893 96949080 473075575 649918911 907727172 766067425 901892860 392138087 521547783 688293400 948183111 774848322 864861041 993658908 994996729 991698717 992755523 491251925 515310154 170481913 926547073 313575419 631710019 327001443 357745816 598734846 712609085 146649459 871997080 817719239 852193114 749899496 928242570 186863101 392935703 652435745 791428041 663489737 841518290 771654387 819227932 465855398 880151497 766995981 813118684 767891621 887565388 165125804 686318565 467562725 657187578 684519534 761741776 353691037 633044840 415102422 417305196 900485202 987035117 738280944 843653974 939859821 959396107 568242633 724264654 557405601 633891561 188300080 907555022 557739325 662892075 997167270 999701632 909077223 953514470 925520645 985345187 92971516 131604541 886324597 952035580 577409508 699405419 535288255 600892805 109068007 752159531 461585807 537666968 165506493 218505176 291915636 463578023 605814884 619524220 322616953 559703092 642359745 709385668 583550238 625996082 392533531 508434829 177297284 951885643 800011740 953047034 536247131 715660025 86970391 563736326 751435649 938016968 807711445 940379095 62749428 422869347 84301566 593378290 516358050 909695113 109800181 488530008 436212791 659485193 554344298 730566185 505003831 930162201 900222580 907038847 586524393 596842101 847534509 886938904 919436296 935948758 383406052 965822329 466995504 788864916 899282113 934630929 944731901 985934565 205748903 648476286 434159167 519349012 109064511 887592211 51073696 489552561 561208849 854093038 529406958 691354173 487296769 698133917 150351246 340346464 286835678 692153235 965395194 989507162 235720493 710618308 547959433 617766723 42494901 436561916 158581155 923931598 901249243 984400060 867876027 880504729 563703707 842090019 478188141 745789387 209918026 834624313 839834946 969021189 244943436 564918010 12384310 203009759 491937923 689845172 558240109 780809858 272257966 883883358 478648680 696439764 231498827 370811843 664733891 850273212 834190827 910961198 873003303 889992382 663305940 884435379 217553862 711545571 988975045 994021255 624321844 901863928 754891849 854887046 549891503 996143274 61041486 641725774 106143316 332505378 248913745 296937191 645039758 953330943 246645645 955409052 854737505 899186111 512195708 649868740 178441487 575747082 323031678 862975653 352771530 854084559 289520215 427591011 802025252 946438839 714502509 844502984 525601504 794992754 843659443 910291479 419320913 961906665 435992441 839631971 580288734 792016134 29201002 831603499 242725925 906682173 507640150 524419667 262039379 415290456 570251311 916557045 744986118 978755764 27150028 474546696 372475271 473298314 292802307 623020422 171764761 352153783 807930155 920194122 854298527 950342222 929565140 981089657 268700958 911155632 757997447 950658794 448001093 829606019 360065747 878888997 414755673 641369059 162043314 554736086 59959746 634836219 777448553 803554723 758330667 867446338 919042842 964209802 658215399 686359820 442325322 956090534 460755861 894053320 850055407 954173989 817540268 950111742 526653109 783671361 78272556 907123621 287571859 921927449 961290397 968037287 998417358 999978913 212930430 391544877 169791305 373836217 392138057 536101932 545676935 604629845 946725843 948729006 419824072 623755810 476022362 786998403 737012784 994336782 901355677 925557407 977078472 984013793 178161884 218757764 138148164 379168706 925147523 935541532 113526916 734180124 97068343 618496617 342238662 852753463 873897307 887836188 416162864 492580192 841938912 960463270 810893701 967965985 210755018 724000946 680031718 981668625 132252426 620664108 473466585 913462179 241080054 562014080 607110227 938804194 886832218 998110138 809658694 972574814 651010618 787017238 30908137 140860921 245374633 840960945 533502702 579397323 452951168 901875012 627297881 747157278 726372524 790388573 302944004 790959596 492387226 526187669 757372893 762532428 152120054 915961423 913033418 997984141 487108704 827496612 515907366 767845384 772759619 830757200 36004338 311806729 170882294 467111559 350714349 604602313 154444785 892470736 245198124 860088374 105495749 189098462 472372533 963448645 463734311 732339936 608663351 673059387 476405479 666439693 294853295 870344357 823268883 986426784 756358619 853063322 250184874 412757020 883839394 986975692 179242191 447671512 341313916 922942189 669733827 839994773 893191685 938356354 757123862 932646724 185292691 754418014 47704332 227110640 722511989 963724745 113589835 620372555 424918662 573365782 247804425 580360429 481507520 950863088 941466258 949764991 228967706 507633338 412228068 701638482 6988487 520724610 373932740 388653639 57793425 507751040 462997133 842530391 913059595 976360131 841119853 928441638 173644968 975645569 451987243 717793877 210493432 645091769 103998866 587607129 898003128 907173182 116976000 946659078 876742645 901310687 257342368 966830529 814377038 984336081 864659792 882392111 82561032 539331839 859350159 891905833 99658585 668221420 58638833 877080626 867440085 892391771 623136189 803321579 522344236 685037223 602785077 606684236 795939423 796530700 72656778 701792448 505893399 793000734 380416820 998872117 521930019 946267145 50367809 559100405 303901128 699419128 144928300 863596980 297700254 841220366 815034854 969085953 98605419 901090198 227567613 908723997 105353236 114832458 809863956 979467910 945091789 957890462 236373538 640224995 212423116 848613328 264902147 400849054 419106012 925325871 335498808 527880914 138730145 280873536 247706039 902143258 512657104 922162374 506006435 785427607 706792830 996874314 569811958 628937849 848467568 911899249 701864182 925085679 230444418 663656974 461920961 540804243 329508877 856938181 59784569 895678065 294911812 407909395 918317552 952424161 560204221 789982502 833760234 841101261 62942020 247436779 601843776 707200984 18428288 345850106 52054175 912386938 192869463 769789811 133229650 989522814 472540886 652990761 640852472 955023699 585867292 988292630 527643915 874353992 720510684 940041170 520947923 778240748 32679369 166259134 526668831 898356255 508701380 599297937 568148746 761630650 265416033 724347192 637403101 785843957 374301244 839476769 58255527 887576640 207232327 618318353 387865867 809623331 563995850 833016898 333428627 899956703 987188492 992945180 21069640 529905152 316861652 498711509 700353720 835319617 49094729 342844597 405717313 985216791 359069942 920688535 702321170 783833413 620914883 881397975 757472745 873119155 403533405 509699681 530036573 547790559 686803741 742496550 475951856 670888592 259522591 418740817 436896324 557581894 526101792 866299055 371337680 653496590 533442158 782700995 764473627 801050014 317371121 681022137 776696401 923089357 497346457 582344178 38753462 621382771 530616649 632209515 829945475 933152014 312974614 592544124 115077916 350058870 202400432 520708113 658429007 765661012 18988585 339776252 20944127 85651897 826138913 875239816 890774048 946419515 849879170 869021619 292602900 571644092 641157634 748641234 406146329 624086912 911279025 955538269 946419032 990183543 420657395 953230225 249577212 976302488 113363364 723258013 207512456 533203887 6930194 810044067 893805767 935046834 208946672 368762998 310999388 569190747 768902807 910535596 763335056 815345237 983728049 996176028 82606826 813834989 833711162 958644366 57270242 254054039 890936210 930350587 552202736 775829354 187859765 950312504 408753099 789461150 397611393 430911789 981638639 991051247 634838713 644911086 53257003 931833981 483926225 561068774 226616677 476193540 562210235 810214673 633114120 634563482 706009615 978349193 7939136 398150490 269260849 483088411 338741180 432282418 542761468 977257373 880238542 959397027 351798213 450405526 891583752 995090753 978817449 980270054 574728701 707342598 162927282 695950016 806014396 960327470 447837925 550057965 674543145 895669857 58866907 601530992 780118066 860574354 443022865 743111213 559423346 693535557 611238247 674386374 106358038 824773599 512757204 758130463 211190819 584344002 330726419 373400088 435859926 735768310 150141710 294274298 323180618 559112117 723942228 881481718 174396546 777511399 812850889 945137361 255830812 953840088 496157181 998908400 791934574 806331917 758475674 787960130 145852932 357076441 665738841 931284647 855893702 976742969 694664636 766254033 975350510 992115226 742242578 972678701 778358522 944891627 235817669 499212053 25661098 335556639 748327287 926305209 187141415 495307037 489471931 787770693 731831109 857067909 849737104 935219699 435875249 792970013 660362479 798111729 606554381 970845565 173284787 798979093 814491951 871105204 418544670 544523812 772933321 881322485 501457102 855428534 474649679 926245774 328272540 754600119 13993145 512766507 311355114 467212604 296731221 363820707 464743108 472001179 435718002 938772144 284046981 422827539 725485597 812130668 324416272 773586427 538824122 856890718 900625716 981331045 873416589 939236279 490552721 491108820 342133809 680668942 853692974 994031245 163297134 802865096 737263708 756363622 608480644 976549463 486705122 912194153 166743598 666523923 94013010 487805019 650377581 892275690 900754473 916091755 452876444 739567556 661940716 955688560 545314260 902218438 159242597 588949936 2978898 171784987 88852787 301119020 610789933 896688314 760958037 837680766 989796418 996884837 321966432 415650763 846290819 881086783 715841084 826693600 763276539 850218083 382369403 936379179 495668630 906822666 789537704 796689744 746928907 951520652 487965984 746179912 319415699 974685986 61181735 885105275 496196579 657670343 998843612 999114405 160859070 979134585 370895990 809940300 208966482 791422002 211627576 967860021 623305281 724005218 515047207 754932686 285543989 769861773 629310939 675425756 145348318 596004182 803933806 849207549 883723178 938591878 395291431 711804750 524566823 819567468 681078959 928154693 939823052 948480545 188850652 258993624 173278997 891862844 748207643 848381270 637178106 950569221 786766820 840619193 395010784 734040814 294863229 466306565 15976365 456853737 934869540 985543194 193355035 638483981 467562714 984557038 721004445 769933874 45162842 368457347 140756884 258596172 338668702 598879290 434334673 867816367 263721915 746441404 33101780 191720525 256927505 948689914 317849613 356529433 797342839 886988254 567754036 578217367 133784993 495506237 882970525 940067400 683081412 707089282 238177438 983867525 686247620 688158609 187561683 547499811 727626573 838292664 153705058 918248809 933925530 951157213 673439588 836915222 560855175 868936652 942944506 973851247 86797549 400646998 998950192 999591532 862072054 916468273 714460293 730372536 581644709 638301414 538415399 873666974 20033882 665754321 913758679 943299096 541084548 890918891 867382636 879379764 737697134 750930534 617345042 738039739 416589507 746444167 466371472 899786808 666092117 823346702 684065817 799615367 973151512 992060307 941523738 957421585 523946556 656328262 170887566 891246548 992571533 997939459 119373291 658053223 410287124 828425709 125022445 151458767 803458269 806783429 19926738 176237913 826541637 906397412 52843015 643093751 16195835 306465460 251801067 297379204 62250308 967701010 556663296 854196257 190207328 917310604 585331206 667163041 118961565 875409081 333859116 359292628 948526371 980620189 608732788 828057674 346957548 871463792 541553607 620579360 229939349 614788027 309922136 836695997 465356435 869053359 629007065 958912139 769418986 904570969 516503804 935638206 878286905 937016524 74896299 525804772 17101468 27250223 409932166 762050512 686058949 957343046 772001508 778007352 822989696 834229836 170036638 385967299 568329762 609185352 367785285 572631633 926556783 929628479 204282553 350368061 775279831 890838597 830132171 899536610 491909255 562213065 908696435 968873472 299953987 825722972 140029894 858379248 868164008 967023670 83110358 695462026 975652068 990637519 785856364 826907965 400492536 896333232 624047552 626310604 411001557 556393926 445295492 651671184 247909184 573617105 108123954 176626431 897353533 907295106 186497973 861744630 733404835 818519805 56278398 152916868 311565501 483173992 979252379 985855297 394434935 628873704 60929208 296357623 963913534 993805628 596498051 700582005 418616116 915855355 928064988 994881169 791912621 832455473 451268705 621614738 82245426 347391682 241665130 712073750 924579261 937278684 945441208 976562698 129532743 487771734 419314516 682927204 380648296 577888685 791557604 983569875 614512463 719748261 980188817 999929835 431553455 530436354 405095604 407977531 259573412 468914513 818427997 861332344 365947050 969741017 426083736 895157815 199312315 488241882 78567877 299476020 6893835 751560216 110234383 412294442 12204064 246904873 623687135 671263988 286734169 640086191 183435161 289396149 417929036 966565707 132234255 513129915 704585658 924881011 774628951 911564211 734540429 889211937 810328528 889830535 404318234 744075302 372651252 453245592 930606858 964902824 371020524 769812482 877090084 882347048 757246040 766854268 110580483 589247062 56249020 847679608 842403101 983936515 239779153 360876862 378318148 379829336 44152094 492403986 367953565 776686887 926843421 980842877 151127033 959132080 818962395 965957855 397482208 643076889 491262278 810718748 512343719 689016384 502821988 980331932 233402195 941000686 807309417 999870881 245578108 736060534 658833678 668103707 949981894 987089112 122814893 146227743 899060413 932526381 625131124 821018401 215589722 714970374 120219030 168789911 555843210 560382650 291960017 855956798 27754970 73635271 890829321 949440258 998455014 999159612 34987084 765815543 280046985 717060550 612616110 961530196 45278816 59341684 45382567 771231618 98672990 786546014 955729545 979303519 238378661 628265787 662947402 716473091 878744262 977080591 368672624 672503175 375065950 479533790 274902178 836966905 634556130 857295322 828136886 890869814 721030081 752785309 51009079 759043415 514209117 798616568 817116953 997017424 886531433 910014545 623370229 633088325 64606268 848572760 4664967 926237446 471952711 759251831 808650609 979756313 969852635 998679975 47261476 709655163 72894505 997243047 19306555 793352755 906512347 927397170 617609892 898581904 94570430 689942372 847456257 994092539 51337870 988961561 572644362 888134720 984352848 991957598 409560909 613290010 429855172 775267953 921775023 933048720 201630389 682493027 571840812 783507605 374066098 753351566 78344384 641698810 741277734 749636766 844773503 900431589 817217660 934930467 719694071 800787622 745773092 919067359 530084520 810645772 773990311 964951794 171764222 971530364 519169804 630794449 909705532 944593809 254376690 347946826 764019704 970172027 641256184 714521452 207577536 488038795 660536820 872067766 164584200 651024772 154251171 934934329 721090150 799277044 945963065 952001139 943885966 958442847 164409953 323904237 26866940 501347896 738799364 848287684 678429626 828450219 696808243 981487396 585235686 658174729 19222928 96285533 845474527 973257919 919137381 986531053 413819986 622428169 975279955 982892258 709298249 730268823 266663157 789587116 986014328 999654475 690639431 899049874 486245800 918728503 917549546 998453113 585658107 594737164 987135780 993642207 589072404 972521684 339775932 424621527 799633232 901175858 378894836 641217343 758355444 937817498 454944293 831935168 819844345 961406034 774366314 948184877 578435636 635341137 241073233 398342587 564452750 801850375 464925032 963579234 203171482 519064744 614155028 881607726 493455428 888672687 716632698 861678987 537886261 920592253 548235489 666889129 623088054 801182962 462519478 549432356 246247262 602952002 650995543 658395698 851557506 931004855 423722447 707848076 452358981 807614033 757941880 923879075 442742107 995663077 840944333 862313838 228726742 300058001 778929639 862257869 297786138 534806946 440840148 872391271 415280588 466043137 945814986 983396196 858356251 902392377 735844225 740686726 914496958 927465492 144090122 379747329 494123451 760526675 847886771 852304367 150015245 858205219 28130238 101895320 635080631 656078175 80323442 994472073 901075399 913895212 871969226 892788610 341730197 598670749 32508702 787263622 158778963 824409524 521458761 896728066 739382662 749974503 158295726 210459206 396408388 790244719 979421526 979758648 182390276 508398713 791004529 818786197 639071455 814762318 253924731 951735369 267398258 294175378 109218758 516205828 217465398 984265810 309019288 685155491 129728629 516083686 99765913 437208546 551321831 558736382 751473401 855809503 351276199 629865356 746725066 942948873 472189922 691106906 742257758 774384400 726586780 827284087 446952016 825736438 272590071 508822909 212323860 285507666 177067802 481201506 662665211 995692889 835033205 908543883 668256459 688178348 92678964 577548081 418934562 635748188 568621793 706429442 438026168 573078110 548019384 981727223 39139253 666782856 406815072 409618245 792077095 837639304 761408149 890694073 543875273 687220986 963408157 987721235 323071574 786307181 633937693 836948824 143156594 434090130 117433853 149162559 562434765 593908201 124936095 616443679 786243890 892771325 892540000 898703571 837723955 956151765 552279239 815722977 85449893 706830159 409530794 704566682 250887246 512387972 843885677 968907096 642705595 819752188 511269920 641800011 601723862 841890440 341766526 878320626 789909595 992663093 6806203 301774746 642723541 727135896 307947044 490441648 418115329 529242588 900621841 974632316 612280790 835548495 501069187 821692006 918878718 942035311 274231442 661794875 78384023 489831888 881039736 886539015 378979465 914202982 754837275 816701871 729565963 975724862 364570379 906653326 542474045 812108328 207770876 936412509 910030335 942589983 215607394 233592886 765135039 978508101 728621859 921706951 600331421 743747542 946443288 959230388 753331859 773354259 931340137 982010818 250677011 580572544 455064476 658176253 720026152 921273075 302844257 760735248 246937602 517938675 553725666 797321401 754607631 967362369 504004665 830251181 689853302 887954598 762982581 921960319 203626718 851790039 911606360 991137961 448029766 457437036 466167417 894255447 76810818 452048691 965434820 980838701 730835507 757758513 169968967 336084291 476492663 816702761 396606321 426374006 680868174 893690274 721946256 929805090 735636562 782705184 411876825 541329301 720041374 969550012 833715167 924850419 295844032 550173005 911052145 925318995 645284198 891180583 905316255 995270570 767599832 818681804 922947404 958746958 253837104 550530280 899032488 901243387 498545641 972860970 944188795 948758264 523548322 893344890 343711013 982515223 880605413 894898606 635121931 942801627 153105126 475224908 441048636 738493160 941299049 989412693 734153817 847297906 852730910 898649223 815259460 965265651 20542861 752056695 136474059 487749793 835107526 960438196 243161274 781092309 589029363 896630681 504139132 931784526 918684172 992854733 265429480 596107091 348739635 427071054 284206395 894278190 602088663 734083763 201632792 394253641 99498442 675903945 807247813 862813095 912760468 957219812 140518645 782057950 309403476 600800969 317934606 445817823 717743695 789551937 950173086 967770486 553339249 746410484 128739220 277268481 410268226 648497037 312009916 435046916 686050735 778226802 476584134 843065899 31886981 369672318 779328261 857587406 674698448 688892002 966216709 980585958 547036023 728629750 374435658 600068164 639159454 896955311 807159000 946870191 428200179 876258708 442061244 843527486 984110150 997009454 81354466 206891245 971920371 971933525 582258360 620793311 343039134 668130511 575411237 835567761 811577341 847080317 475713497 715342497 576680125 691499347 918128272 978351265 755476969 854031426 304220507 701075685 657027089 948842112 533662102 692525371 1247462 546767720 952755976 978220333 215224225 249120019 949292477 976129422 774910405 858403143 507478121 841171021 772038872 829482514 496467239 794804814 479990843 751863071 159833686 195994035 298672350 460530053 413073722 986632143 902484292 992273294 353708418 366639631 103661749 854120375 774490252 795018558 981713702 995698229 541033959 647813158 6121451 883786736 231666224 996038358 815572225 889647617 796581763 932296105 892404565 986711370 540385259 916363345 956538036 959910470 797849101 920396641 16444468 397495972 647959098 655719799 490661628 682031512 742800747 952512296 443107995 842310412 615054201 880814320 963738549 991181260 956098650 994767427 560514279 735321365 864001958 867225287 331892556 429233403 917485199 955665032 928010745 949221588 623864234 993438731 202039272 298254005 829565483 922671785 376925381 391391279 532259890 705218002 618376268 964904484 962748623 972282219 112139123 704409344 376142785 990423304 499526841 713649076 261823760 794419301 182624136 543602922 561563151 561650425 184654028 438620026 188897008 328604656 946851176 988397206 504519578 601839308 529024342 588535557 675016507 983502916 303696318 837404466 746683712 820747028 482928333 941785005 101037722 229155866 502311820 710730250 625976105 628488289 438028582 668512483 406894990 799513451 312881310 633253359 423931620 505526010 936157609 969059765 128829181 369345684 261489578 261686416 654059287 825734606 64265575 414211100 568786248 874449816 745384199 945896224 652695466 736629487 700603543 725566344 990889590 990910613 176366656 495370484 122053414 830580487 62295641 455843873 875709080 954390881 480076781 918559545 23456447 645344970 171969844 781947796 287538200 346812359 831886063 993898084 913496391 996372020 686102753 945148822 189341531 296249920 420264793 432204267 862833879 996224231 754478064 976513393 717659608 896140823 7155683 763612419 556276995 926862805 758316254 962729533 130933174 321772994 416269359 827028732 146030033 926339557 697074066 765021543 81879723 467889932 798427947 820016750 705433058 924743849 601438584 805631112 13440368 624427619 697663412 809650483 924276143 979716584 311550191 757718901 211534349 912509565 804288803 857652549 745397751 965571475 495312349 756997083 834882102 969594286 940246834 967148333 718527001 778165806 5378306 151002911 712349792 763066036 834073295 851045523 59255491 306499400 5804281 204899821 908911030 964464689 519864014 845910313 904205792 941751896 52666166 435845105 405650365 585209011 225503784 391580631 869561417 922542595 44435698 506108804 866329149 951642242 118935662 968549013 263707807 807878539 877427472 880733668 547390520 789657707 642283849 703424205 250407907 390890237 489641500 775090842 120852921 141529313 852084451 974433735 902122782 956095270 876165650 942713963 526489193 662568046 365717624 809014993 158850249 874586028 909837676 929285410 630519760 870132188 21129664 115491673 390596711 415097214 487675949 900106552 964112283 965556817 345424436 435023587 740141149 917117374 602090445 681681065 943733453 959113309 43633698 313079610 483589276 818037776 28123617 610021374 228349308 890900886 530598377 684495725 270843204 761558529 100589223 544223103 165813508 937600374 800235134 991585498 251261737 952170637 553636672 785422410 765050421 946154538 829679735 934006008 269083084 477964543 196103553 845867716 123074013 140055013 132702501 812161952 477850523 686593089 964120432 994404924 442450079 601671012 955069363 995310553 926124414 988161519 517637406 904530964 756855461 896381271 237318846 909082817 776301001 850082906 56603006 443207161 933730164 940210052 329523285 535475470 709816068 740710159 765946501 950254090 539692672 839996848 76607345 526899093 538748791 647683206 257164878 361532684 544833710 668904198 76060353 554470917 324278093 719974682 516026611 883921947 202390723 595758229 641601355 745179450 728498162 948638969 878231958 958214179 193612529 299362931 228228927 470264325 378645151 785958498 323793669 523269298 885755570 999732629 189630343 336676229 746591642 759827925 786399115 788239851 980199538 998235139 488459237 711736017 864316483 964547040 453444145 771916834 592651651 718933616 62122146 88440477 203791341 831930316 125780144 286581207 251390844 629398656 111536788 932060933 605732277 810553371 823143884 894489896 839198550 944631905 632896796 701244979 363104143 626794391 174758530 465300960 994454583 996731883 836617303 895386722 618036724 872474261 917494909 984176310 499254972 764311189 765289459 947400726 250066246 269962133 760909569 879942807 262259552 782443072 259590237 843617321 974643022 989518847 927706925 941658046 106535725 331303758 942211117 959301162 793383586 811639643 647269680 831335420 502032393 587146727 692280148 818965586 145857616 641144355 957433212 967786387 392142521 446128215 967386946 984684877 260040503 557344527 942896738 997662301 342719219 530022913 151459742 306090407 599940527 670524686 240018614 673050617 898095401 956192475 415747715 656677004 779999986 926714440 677027651 841125657 926614486 987432748 66536898 777399907 401437231 762939329 126138108 855964463 731522848 860811752 245236939 789252647 740332436 871691294 40498343 805321449 970475725 991109421 428021032 889717908 399098689 660090020 435231962 913558937 989567227 998231933 56508392 469726666 750946836 777707138 548072623 750153686 457957310 469345496 673752724 712272585 776568493 783419603 229869757 663714530 328411608 786464696 967816805 994864717 786034634 786135110 429035115 476330288 917806184 924550564 389129877 791513930 560036213 971652003 147774383 756822013 197519100 714987959 94652855 989657850 180655778 828129493 184572673 221145141 849408880 947793980 946439988 950409819 159543915 198742031 197914542 362024231 599181444 861192396 912135328 958006218 528158879 950175542 958329274 973400252 684436668 828977186 906580184 930109261 17434668 98465038 112508995 738641015 598527117 659351341 352151516 856067093 164377280 283037979 660532432 828635016 882754562 911565151 64254341 108522758 237685926 704260870 960945783 968359488 517147300 837654459 734840779 897933796 748357401 805981710 59950010 755901778 359957778 515861091 241272506 425288682 367082234 901422444 347541564 424617742 556653381 567885524 979820509 991045075 474740176 941582916 584463346 612889487 50242891 727045188 617032381 904016628 384563321 575267012 971167216 982739316 435947646 499997992 618780390 915793983 941253488 991993660 965469583 972743187 548854005 805049856 661928858 727249272 262283423 847414673 990286212 998320330 829437377 998274529 251787008 676239967 88311290 958500210 425873089 982397761 568241448 800081260 438704716 909368704 454747804 540731281 725578174 744656405 188158125 461098056 889779865 950529725 40735905 426807084 430238866 885757968 51239983 799137264 828518711 935517923 587472455 728142375 22842646 400296403 697484840 993461268 500367686 723715870 31543856 41307938 242620412 752361094 840926581 926741172 982305794 992221143 24720374 598247235 689213116 935264340 36378027 797146328 747514434 860875000 741616385 950551541 937812952 998325104 982805929 983228811 144923134 303976405 181406642 996416988 576938550 806725613 305554448 796106901 777929900 827305587 142606086 311437850 510136818 755454382 205819548 716130954 349336586 989648906 530255691 746471685 399371472 706268956 550331207 696822222 947495785 959688735 313181050 787730055 958745118 970523401 261495112 438560196 741687428 772005629 229655796 274823857 748679843 814507549 750141179 785121438 638562350 893713294 648587281 869772056 355971659 441876052 965276847 993784096 98709273 622172721 186372541 891697557 982956869 995849761 890201936 898094062 652575004 714904679 567675033 979199499 436047537 771722429 828943820 850837932 585521690 761421826 821197453 898938921 667531506 726517675 57795096 683035461 337082128 711041628 766460785 970179788 628301754 859967047 377602116 960375952 953831873 981067455 556075498 658696871 143677956 676699614 492309129 609540186 999496531 999725609 134063473 749996955 106429981 940654443 494102743 837443146 65470502 911342964 723557729 824228801 105793131 435216073 427595428 846878654 617810946 843911501 609104462 738946052 88824863 211454432 644748140 840264002 791785121 997294296 230364463 711948599 556130418 981414691 755370211 778330448 798884820 867496774 845792179 912047386 13965778 715604434 226036843 320958817 42503245 336016311 17027341 243408329 208297801 938558862 235194118 242073485 632690449 781961816 468690963 557804216 664843213 676470800 561134332 588120426 999373400 999777762 848841484 863639344 749396855 793401634 495733524 612653280 928521325 971645679 343171419 870597498 30398067 194060344 468573856 801365432 579959333 693334722 188907984 248524706 211796746 422978618 122247415 722418326 89818713 100821903 344829788 658318582 751622373 893831834 723156029 914294346 61689920 145007314 945622771 984622535 544162750 837453958 279410998 655081085 58650682 331188140 248734491 728702934 250450474 501896799 929963717 949542346 580549194 890049753 550627184 632679111 830021521 957352486 37315747 187867949 872251119 990916960 344170994 792306139 66276051 348092425 419340176 634730831 692311728 714162570 986229139 986496255 907378153 938893165 517627840 833098022 939903723 977227690 193531378 962438764 986902833 994934189 583308564 634191811 507604885 800442008 307342085 891942990 338739994 761800335 777588947 838136067 597551683 952580953 679851224 786633593 267740092 906936070 735864028 807161619 195629262 926080646 531506230 699562032 744556930 770463738 401074532 416459745 749608653 763562292 11317331 689259502 287541826 373529567 304580250 936170709 487794505 750420488 954225090 966176024 247319338 872993768 438089389 615414024 56324160 594734993 273259221 984456247 176235013 431509223 100410926 599704257 735184208 889964866 364751654 846747145 520764680 739625222 284764014 571126095 167420524 860048252 175291156 564387340 316208050 889252161 398002999 536258320 904968413 926700764 672404840 842285421 750083693 840250092 409036354 710947387 138070116 457840782 142011540 408952443 772276589 974476144 237889179 652419851 111639234 947444471 411762568 614942001 747297725 824890569 225245849 578058346 481816480 560349948 306211672 618524455 246329925 898836122 632646860 930546935 254607363 991191745 857883092 935299742 479067375 972797395 855951998 949364090 9908155 741711447 198034862 436224538 925826470 995718440 610355781 677872828 883255424 940935582 509376145 832914108 809531823 871343057 284015380 286014185 811993372 886851106 571166025 855947685 539421908 809898404 83093031 862373471 983188763 998799177 23833869 553359525 230154201 764906423 223447773 964406982 690215175 711562465 710286078 896745729 821009555 942588024 169882480 818766355 768581294 875461651 540316804 559530272 655264938 869076316 898847913 934960189 978858359 985837621 620775566 873916124 11688155 704126618 52109075 947338256 215081901 898152597 904741848 941243272 61604439 809293684 762380211 966629603 288099489 746717647 682082565 841607083 240706886 418544974 42553240 633436922 698376826 943232623 537745388 767049670 867100091 931443727 181226950 925700345 557705394 622546038 48650300 148295680 135384024 414210224 685059274 857710085 202731044 602193165 35606425 305016748 944317538 978358401 575734448 711851068 373608798 932906008 635519493 942244704 48286265 475427843 962333091 980960975 744696890 898234461 201183172 669845391 230619273 249216783 284515987 681207914 158870920 398944319 239070872 523932163 526077879 632383035 762758522 992310793 260782726 947770522 21959894 603033094 213715159 261094408 902164845 955382703 480350609 982995506 517263167 570839481 798422752 865490491 58378723 137660173 299240370 701597616 668309003 839453210 926586723 961395147 382629285 434829217 473109781 879639194 257007050 847755846 741884917 811164595 76631739 440179962 421003871 765942448 709743729 764601378 244803103 371321586 772269975 774811914 473411315 676371430 653151127 811973987 258530626 608318213 800727925 958332060 280940427 936465783 993076904 995854588 675082811 977444321 23135794 811853780 42770824 720243410 340571703 586965587 854325277 962706706 11862810 971510532 904638557 963995685 183758489 643699817 272601097 322540859 149654417 400579080 701705354 912624386 607002235 944918154 208956649 358655457 998683565 999895925 953392244 955754883 685639283 705029876 300919157 602639523 97382708 875537017 119784685 889191787 470585795 602550828 764091156 963641228 256544563 741643495 808373679 823957309 410283417 811089249 89619607 495659120 720607934 728952769 546044016 674713062 731507211 928748788 176704312 929761348 755308338 916628313 527660780 962633719 759384909 913479497 260907496 479521199 586100726 715899907 165665827 891110795 384351890 710790258 391818892 558744468 374283742 580577685 660859390 985153082 826192956 890736179 776077761 980762657 388632161 540669039 557869315 724594949 693924479 984217100 312241692 991553567 59520395 963862239 840665738 895785521 917102521 922760825 931001737 994439939 657125709 992769473 652129244 845001860 48609842 139674025 339868490 438374337 735586605 812492890 92259953 409663178 736424526 916155094 184308764 774224326 618987577 720733082 921954438 932273182 951610595 972683642 137821506 216897294 226800291 484429883 7078385 409341827 844833663 900804145 457307879 874202470 413045619 415982929 890522656 898166499 663029261 731758993 458927697 951833849 680167356 922081873 977165291 988517714 379810678 909572517 205465177 237656454 655639691 887925743 161777194 557092363 51114184 873357652 68323303 956380726 776260470 989119877 177386273 582355956 165874447 971224559 952542150 995989179 684295680 911989171 324136412 947433271 949818080 951885265 28638358 553181732 935272897 975287396 714614306 794633696 327943175 926081069 7670417 828592119 827194965 950898407 674767010 965203202 675762997 810300171 402956979 513487509 304339168 982614823 299021028 604547360 991951343 999907162 625581824 899389381 942566253 968487968 505010684 909326946 75561696 669993705 543350244 718053370 601204300 920146404 947747228 987023361 51457603 468189190 270948141 283155721 757529721 952613764 86480147 516278124 346079010 497206753 862898941 939906344 712342904 892105768 660719493 734998062 542829539 778573229 980660742 995957945 299062074 336115653 805475598 850281303 181574205 709070670 780715581 875880521 11442995 92377931 262102772 798539835 254794461 751051958 248038359 315900345 906204817 959538073 22691616 449451162 115054005 728476546 783331172 965395361 905724264 916031227 64976966 667422521 819931777 854052682 933239230 995777413 145875928 345478004 628100406 730896031 612322257 779367296 663458956 699913246 109797016 766446925 49436843 882817553 40226445 380282867 10311674 555195437 232847271 843981444 524762311 526128424 19042066 499622969 850761302 956361225 684245132 959984501 867370643 927343295 297581419 515220786 334774808 557195008 856634373 904222750 90406952 426366781 306358727 779206185 910409234 958184245 865350596 902333161 218204220 249810767 524698104 983708307 562257625 993763607 716373593 858693186 882858577 972327153 328128317 754164811 382833693 610903563 832835502 882062191 87959169 595025172 941388746 954664154 361873162 573052298 338399434 711364494 436574775 735397436 198278805 951810850 610800889 737096055 701784142 977348901 868902345 952064883 74470868 804649475 882204835 928678950 554528062 829935556 181098411 421269132 553365222 906635294 329903778 375929324 520294227 941056461 743444870 954694825 458984149 616501328 196909803 865837150 346003408 619153721 438369122 732511729 160015749 898413129 697696954 741808611 83787480 793794784 858167853 989110597 10195248 758368007 41685398 929183187 535797241 550108587 117743067 396391356 929660352 978484603 491369324 697528273 374885852 649055150 420271563 958607913 857353222 922284870 389895317 546382565 754540656 874555942 672796861 886006149 502827567 799849413 601230830 843883540 708960038 977928408 590606461 970372808 410892911 978422334 233233116 689498259 922650097 953403846 119762292 325290728 151773323 668932048 452076114 830103382 513395579 894513243 584182644 680268635 217638149 469401487 612014773 815269666 598159887 999031822 994720239 995732493 315418292 867827968 835463157 953994658 730693811 929247599 111368850 381078294 889933440 953707632 858247262 869173462 358736704 463532029 240068048 659192443 665696257 770062728 243608649 826076955 783711687 797837690 20834583 204420366 688344464 812767789 602788438 676280964 496554473 760291180 477679889 730315204 892491858 893886552 51164802 187926479 674296427 819153573 419322496 448841815 552649224 859564851 872391468 948724878 170846170 509876328 623624333 985964576 781244765 797760542 591238040 941307768 441616081 757110201 951567040 982514233 634944387 778052997 233181871 329081603 16006611 714606909 559732082 796671810 855209616 973270117 906222855 956185977 599332690 696452455 398808275 687810718 409591066 742023993 254963782 798002484 232037308 453398008 44570472 639732597 811457430 867238901 413399169 716409389 233666202 402020187 684455217 835875477 725336882 952827474 574860296 579793619 256388087 884475235 712018491 894282453 461254482 875042570 750579341 950141972 820548509 980265931 281632086 546296239 386032885 659214353 448211170 897150859 81651675 671256113 718268277 852587029 576640670 876712206 440933174 622117504 490575330 879467600 19839088 322296067 954691966 969206254 843931611 966254535 397066757 468235776 598888181 780205198 716834453 861844386 840165486 972984346 396571714 568065117 514938526 996889752 552333660 576633064 61979119 392529283 960433092 982158356 379768737 417515503 708344301 881236376 522713395 953328682 315941370 435316879 459242331 595252104 753824278 758844496 609123872 833368326 6724636 19663108 665526990 866542432 923646688 935435641 81840437 627710200 601528249 770909845 331120872 354561399 48680590 648631262 437861210 499931879 783726594 975397482 123002059 984595105 322930505 512119355 491408196 742714301 771106926 990203997 435644362 738111615 940559786 989660155 713745203 852744805 107185213 912773764 932866194 991756433 258326441 416220491 245853633 504783273 507051054 620656062 724020096 835576104 909327445 938704948 331898250 541154548 369202289 847339888 637836837 756525430 722081433 909259292 252395465 575976640 770742189 924230306 776797984 948498274 373734912 771954628 547468029 869100631 903483864 937130114 942781614 990028346 138737254 344519289 165942703 570008506 234381904 859600233 273848925 973320279 261871090 283408886 38195411 40545261 896591002 908151715 863526525 908054823 896731498 935442254 203248883 287814182 933419441 965580438 240265082 830308634 325391713 723133370 488099271 494877236 155574721 535116823 439230535 713196018 27853933 790106798 303940044 489764734 31047527 696462799 538371222 808592676 225389287 544499074 252970666 255658182 284407067 726644677 342749006 820923133 774752227 953434544 277209970 857087465 289111492 860925943 376756398 567758784 749003787 979435851 205318541 534621925 382801865 416661727 339025000 614441493 837993289 869100970 875292562 947035789 434470756 702810125 163758421 622321364 162415919 368573383 311608176 429335303 487942625 643453191 577627113 929067028 105568973 263263456 480312794 756019272 288027564 474252795 47950181 991182100 860782839 975603178 990773881 990895293 213512871 726548335 519091881 971439941 180614270 899660486 481751609 757195144 559109826 567394334 209963265 338760745 622352224 630421072 5814004 96648266 411825153 553236271 834677272 930517876 417808974 818470874 355176657 908686326 562005286 604017814 533088743 908927453 734972949 934034654 689867984 881455613 756686791 816448407 911697828 929891027 592009112 833767394 844159918 924894150 951704307 953753438 878814617 993886587 247243043 363943600 556467368 680604189 984035762 992813443 851033233 994874340 192227724 731457087 3721862 316778290 355338499 578185118 744389787 872239535 727361264 915590013 827871762 909126261 583842224 850838559 999789705 999940548 312206098 539121756 158049212 481283190 250959599 982051590 8407971 88149673 317881747 946276778 726236911 961777910 926686563 941365502 245196547 938667494 238701693 860025812 518794770 530931557 667824771 729136533 373489738 543383446 383439855 529133627 974295782 981555303 847660632 988568144 255302851 970899639 112854331 780614508 758239023 951472747 646694150 828585432 995106021 999839102 692635884 915953108 552627822 867133709 138973745 563424252 180585051 892092130 596068316 646929204 263108146 950910977 984876897 985246723 817883840 951381282 346234561 482303337 887433563 907572512 566120634 941150292 18404684 191659040 272216502 711422240 104360750 272989415 204478526 444273181 392895975 403429070 565813322 986307742 818105412 836036197 179063754 607845257 142623416 244605966 188425519 551641836 830245790 863320053 820093863 929996865 643839538 999898214 210820251 414876771 383884494 879814991 498924371 896397108 615331023 885001863 423313159 438148380 625280602 857400501 430224136 690463531 813567141 925120954 346822617 613338144 670765001 857117187 21130945 104734581 447478159 735202013 698750536 892704644 356522566 793139334 267530872 952939600 733780193 786329153 332349618 621522843 134824696 738162337 9727776 769297670 355032193 823610693 496388140 527768019 120530153 782860213 1841307 226989056 966140299 980142101 249583454 619231896 358556823 843743549 997185683 999183859 336656962 383901475 953264970 974061592 160013312 227215944 374967740 752417824 36752433 427610441 625923251 688068068 561871193 943994758 417522782 498401774 587478447 862718652 199052210 395867764 453700484 745722059 283083078 756553704 936095655 960459216 2997647 52349972 285046330 684185887 244396550 989397425 54611651 301132196 947058194 999162996 518052022 775974103 305682960 422166142 689747729 799613282 69718723 136887640 291054171 678688990 4075113 506544028 282662680 676718492 196775116 332969884 392306396 752702867 394476364 693536245 418207113 664290487 572378254 595414595 243249507 372587650 590778134 981872184 840677607 969544768 418468035 709651153 381214817 717045605 422678866 673759806 140438792 180524905 474675304 791631193 665009647 684253311 708081135 733227638 621437484 948738189 710746735 990651049 710960685 755732809 57936907 632673434 43102789 660786893 834714804 933484035 479573061 504412518 158272967 948360886 931287459 940538683 261996445 301145027 727329274 784187674 512234910 912460772 52474348 627504831 840042532 886646442 640588837 861948134 447502759 970233297 807977721 888117200 563644124 628836848 927443677 941858679 206601611 954021461 209650869 899825097 375892432 792888329 81599054 362805828 509310349 983945507 964995255 983175433 54616589 249694989 696686884 969567167 726227036 834346239 325312341 820062191 729204108 942383773 686412355 848551847 620326430 673688069 782847207 948427434 582297937 683868277 578799939 692349663 765672512 902821714 599538865 993204460 51003485 506829724 390752897 481950308 868079179 891032312 952132334 989778791 53261870 766502297 247707628 422176923 857289039 916944440 773429713 915160010 968948687 987748921 328602697 777744588 624300789 873098788 277903155 802275203 191929019 395855481 103211183 858777308 51676521 356478911 185549368 698092431 817748678 962651107 543652342 809397859 866588163 999182705 293012490 543948920 753389021 960484031 266410501 649680901 257934813 457552836 822548926 878937117 623581545 707202373 99947324 468202295 651764351 683374892 696915456 895149772 473291597 499409438 404034585 976113856 411150418 990058485 420857228 563648656 807412383 935940466 996950842 998257389 405233275 659527719 773299887 998157152 320266142 817317279 653404043 719856899 132402284 659679901 714392129 715484801 923084918 954531037 18069581 204397758 809485811 877519921 609053004 636542320 823664074 947344139 802674304 902057559 774437997 964392790 737110290 800610610 798049106 892702169 878933415 922794424 795518646 901949390 936460004 964083876 888623991 983994580 395862533 490578994 41433934 663129489 339783486 743626687 7501367 220072345 292999553 422832640 527622487 737629288 996808725 998912869 638182279 966499336 971904141 976963190 109661640 749463554 835418468 859158340 231942868 666931555 859214050 969151683 552531091 955890455 297259992 324328856 770106343 848435795 675338241 722030497 995398634 996921707 438677753 522122117 849003873 967767184 67052276 764006524 592408490 646482422 402542272 840249241 778829553 980601140 481594654 977996227 927439158 964302072 35918334 645982475 491963936 991446057 879066483 976829707 540684823 788932932 627639016 869525115 987076508 988162345 911853457 944739755 78287837 238298111 826001123 855375344 791295933 846067965 919845174 953120360 457583173 772001771 934774043 971154423 281831689 830830856 665766583 884143447 442324060 970729972 444456673 516628220 535352838 996004555 629248602 862806193 458222278 991509003 42389715 531654370 772726496 955244563 672950773 852036657 226943183 782792283 598463566 618822225 36361563 410522157 978088022 994883900 673014182 933303239 670353380 963506549 513082883 868114617 253060217 295172458 52530372 204155991 754874349 995296217 879973052 950675575 994527686 996640021 771847744 913096265 313223147 660593204 504473342 896744122 779518096 781594335 587564802 802934526 107817657 148364356 912722842 919142573 770733490 867529116 575888497 833535732 810171804 934423920 379606116 792203398 708468596 844275356 552815639 590563911 585885933 788882263 351471178 779071228 950541799 981964630 751943127 980809082 72754219 822998573 42485847 561400138 963777884 977457419 848082230 992713296 70328121 979146504 134477631 716755878 881429022 938939373 362030718 451753413 966351272 967613170 92675873 688217362 455087776 806826401 378962262 471921489 817159084 922865673 358573380 541098471 992928663 996158185 332675558 421599809 659263082 797193539 406802851 436367954 458427917 737759082 486463620 875705322 367334024 993872614 444771492 848875952 358931009 376696439 36750611 302919115 957550376 994141289 207075589 992436216 366946942 736734490 580050147 807049536 656923680 830718987 928212725 994310507 378442955 911124748 685002902 722155486 287238699 831371783 607175071 942250776 569969833 810716878 870424687 894090352 85563918 993383535 924697844 928212997 852359981 930787922 353668290 684717516 9637795 423523559 208004347 560935043 670829052 936590116 330939720 465200715 629217781 975534952 447496795 667771122 761523817 983821404 205028418 960924507 978274629 993796243 623285516 900532484 493932052 949463912 81649016 282730731 344315647 556589724 362171745 449198848 595211506 815586009 670011831 933339562 87467510 874083187 246460765 746629332 307984687 550803513 349868703 703540402 381759024 825031437 749157032 781546858 523727310 668169686 826588350 864701555 412626167 875883303 423430673 596765505 515143973 832420318 125917384 821431095 84304694 917362771 935765062 970246207 290576429 460050759 322829110 323836746 965430499 994939014 713604287 773254627 573853134 740389794 675545603 772031716 716912929 978052263 613337002 716705235 313410807 859089656 910583118 949485366 110895081 898915636 297656853 434227864 538658376 887653844 951225264 952208448 938544282 951613066 453557307 652975150 29170148 600836722 997318190 997453561 939246850 978082940 925495805 942811524 387180276 866602714 502624244 920329186 605199687 774832543 381974310 658004276 559805409 745104154 246306421 995307619 799389424 801596649 868330213 886042564 666387638 876180798 528696202 633537829 621534039 906343426 905625528 957081441 467292053 842560727 492091112 887657482 789330539 966671574 555729733 605221448 898226169 921458711 976508220 997742881 555972852 681783958 67421415 239234561 63202786 605804966 451372706 510647560 875378342 879714972 378725512 741734358 51606768 92013833 544224546 581642958 521155926 954593030 695436823 986505700 345678458 978014684 589425905 779428645 346674531 705641959 48990604 189612716 948688639 999029417 723614253 741202201 718905005 774916323 508538016 992733351 918687115 998267666 268720509 331592758 676310748 888664378 141487443 444585075 620778034 773132469 368159973 847961110 290543592 538341212 709724609 941483933 886324830 975427430 347728610 473285195 76080574 736508102 67499725 298937261 523829905 640022827 942666282 961132277 46743753 439607774 823519989 936001432 100710492 667703569 666444719 711873574 284981463 367393079 728097220 924239083 742350943 818118213 521548887 769506116 19706434 748619245 384250084 699032069 866078536 977757033 504437245 944258044 887901054 973659700 500320740 861070340 399424136 523085032 792174949 996131995 175861667 800633801 337180892 664582997 214507479 705393645 303559090 917120097 379614057 535179887 441318207 620563855 507371549 879337574 883986447 917933569 918680776 925406856 546595532 947410497 556862059 863116796 621823393 761826704 115475492 631635400 904316337 989136054 156015298 924390105 198598374 460256849 61363609 307224763 549891536 794463302 22480215 407920943 490988998 998392468 903388881 917083361 673231228 795716625 537063207 858310017 178407749 424827878 817184994 977210343 194052516 936972444 157606570 698838623 877248589 964292736 572447350 935189285 976802010 979592769 946503886 955628681 522528928 808973929 769277476 801589806 354620533 843564321 381426687 597762564 957238456 962018792 743831228 745916543 331279863 374110895 341721344 813770687 477207749 519742631 315575476 327288539 508148568 571749644 149486534 687762038 702941591 805031836 904952793 949917499 965663312 969534506 528298406 860239144 492525395 875162454 393193817 745887230 203560119 820987198 641744760 665113830 404826566 905439896 499426337 875516151 111823400 292384169 895610815 953194246 227862522 506587598 348221415 722674898 691997499 732526805 24211263 335878533 269229553 473124504 328138990 349916586 639248344 771299511 988402670 992184025 374066477 872452207 209145287 562749631 718739271 815193413 315082337 839303752 936825600 992361361 627422283 714235335 353670320 418374461 9556094 529825040 820271538 978486538 524695815 549459654 763560726 814667771 438022275 734562744 36141955 144566343 994253123 999506413 811489152 940728989 882582232 945956674 238728704 642135818 325101206 880454582 200545979 287617798 29808564 449488509 289727807 633203145 419060922 505671409 480167697 528217346 442088590 705471006 115713078 636900432 218431895 874807074 636748071 967917386 350608519 442486106 934864133 996766719 918051773 960094322 527484654 684082937 378336285 997217082 16463557 20485675 979198360 998546118 214417332 467971430 271452114 579318423 507052847 724909548 940329067 984764223 788954682 833624066 116585314 307906423 914730149 969443197 629738605 896609236 464104341 565857241 820118412 999849681 605133656 640338656 456511071 535561995 819118935 965366059 887846134 924405831 80978392 651806725 857071513 973955093 866167035 936955338 867183558 932442069 814775460 936580022 447136734 601698967 866078268 971639815 397656243 502065876 112377687 959692779 704833745 888163357 916571067 926659889 892570266 974476361 105805045 370002527 309066773 556214013 319362906 502194267 811126984 950158525 867585416 876895533 286720948 611020277 41897006 839100436 319830608 523862883 686710013 848214586 45960372 647880265 733538457 777043726 299816173 535215168 288495240 753517213 475496434 685647883 79991443 646939297 909936151 990649854 34873999 126133233 285160072 991927434 482666096 656699109 901126936 988446659 115849451 572888440 560581945 997993259 981718530 983602520 182844248 456896186 431016202 824395319 327000381 701572615 304617354 974895818 476866815 934742027 427266747 814975903 638401959 821548872 166390914 587824830 996313243 997045133 892222662 955864222 273678769 663358669 523494655 633174290 37386083 118845571 654845948 954220170 107630884 886485652 95771993 858887217 22838256 245094344 405232509 535540308 834464849 902188626 338310648 340207473 948527661 958164522 400372434 416686764 310040421 846293913 719457398 858544667 381814496 584008278 33325243 801288344 573119316 834078442 685306984 872926564 524838753 607644275 829909803 864777172 532094747 655526224 478079830 782133748 255625517 766141812 300658790 549919981 152118094 310919238 214922832 375188350 332669193 401575568 384453433 627870248 591503398 761564776 125075693 434716975 96182751 963283852 2302375 845989428 510872203 900052465 767368931 930467730 728303457 829480302 474942898 627574235 215110368 993434762 166002385 434306632 297459606 525842637 274622939 657086691 622767465 848538910 257782897 258124614 954447832 965191403 527670514 584288364 219092705 752097226 695532602 853054210 110695673 621236183 430773550 558619081 31007579 184823189 887207721 899124134 974370569 983979636 526449219 681937052 68203041 911835471 681174683 730983323 839065934 930947090 264599258 286811521 633633539 930064169 344747566 752429718 14078723 892892641 547208838 551660629 777235006 973510189 703618856 799035628 125677468 253930625 991002105 996590345 60619444 219798513 286427758 718054235 391423429 819903454 5625828 859826621 642381285 926491885 622532462 939346984 853282992 930392588 197432453 886767983 839418261 950347052 577378576 682089742 78616763 736084731 223278755 233220067 376021875 733731037 333968963 647125791 620626609 897034916 818696440 945691531 816523506 853011911 765253691 807731442 698829519 973332466 331527580 630585740 238121431 497889110 630529314 862792242 486537416 671584003 904701328 931241837 216944529 332683920 947463632 990201079 10866712 763189778 29766941 444318423 882861545 966752632 605606216 971748317 515119347 845205587 309611720 979689258 13468892 303219557 137385514 213071868 622787303 886532646 314229355 461855928 986181306 987698702 140737381 756483603 436629727 784345392 990106487 995335832 295221749 483496144 53877675 400847646 86605117 701867998 406248518 709273618 862423938 888152938 129771656 676177540 694862263 864512675 470022566 846486508 216018570 669780441 495141171 594043723 907462612 982141545 231456595 330468375 691368556 822438475 487469728 894066259 7804608 94515990 379529898 533021194 951787487 959062510 226884166 756189961 382017854 664213252 708778298 876850305 879823441 953106733 456727940 575143571 313646521 372471011 596330776 823547324 33846037 349703445 553546419 581488141 863800664 882288058 104095439 827540714 576258587 790447453 637225106 656165317 64787778 192030510 722921073 944999216 315142303 997213941 711407270 903340432 178253550 271848975 589979271 860276568 491081532 986642641 993975516 996140604 424733169 588580916 298893118 404049318 124495636 558690351 133665667 985604253 303335452 630645403 578399992 705985132 661618577 875563690 950302817 980081044 1377411 408612573 199285154 809177514 69142741 180067781 282311335 884609738 197554888 236134754 267955297 828465538 158914221 566665660 84853810 960884971 430744245 950566837 158042763 835030774 116456787 253650034 824867458 830825701 312929410 865500462 670804864 803893647 438414309 757622738 21420781 373934957 18836307 786957647 844170003 896879234 458037876 578819855 730897973 784304614 126760780 787456527 77004732 989074723 903314629 916497112 247110266 643292809 34838658 172384293 383664259 753298891 990637927 995129387 243354310 944740977 270355702 575406535 107954068 678644763 865727661 907306712 698519926 756392154 373120418 755632771 922698280 935647930 223919925 743326891 427345956 756575038 816672259 841004866 418048589 764105466 119812401 642374292 291829905 906246585 640465609 854524890 854550665 900377508 586165632 968592249 610858801 967222376 208525864 960925301 696091079 917528929 431926989 920849812 898424136 916818723 237739081 598021853 8219476 171836049 174724476 415934761 199378337 229986913 367804703 837679589 747702241 814148057 733472507 944661827 173417110 800628179 894994080 966365043 704397379 809597326 137830808 531698228 443163713 532143694 126655935 133749578 406546482 654952511 737567211 777065331 836509456 981028659 887214246 909196725 277683439 356347659 59881996 581242795 49641825 449137941 789229117 798392489 497845300 900668347 99268291 730749391 993133767 997372432 840126478 870793323 570457469 680865127 390192953 590733169 598662645 902532122 760003606 871108519 176320050 350721762 769765646 880579246 704066876 781858186 245105828 652843319 294415638 579449603 976535066 991355100 678561148 970837471 872660437 955896811 503826919 942431776 981153036 993993929 596699213 660404790 131118160 533860592 888051809 914614193 448338677 587151477 675164597 992692243 613497884 983466061 627788111 794919874 515594394 713642114 420961360 828476246 653204410 890041947 564961484 872546222 593657555 769590860 176558514 495265868 900800686 998776108 315079687 494856691 965389766 985590799 332643720 340478564 959609325 992181955 515003531 660700677 894688236 955755618 246588914 523836584 600518152 907149489 943910241 947732817 512387701 565441043 811191052 863188932 755888905 939659208 363665575 537614393 402302598 473349746 920201476 952293485 512780985 652186699 373585213 784982408 211783185 888860059 245887274 928231508 104930027 848138849 484570481 897012349 75786055 685916004 799928691 864318407 371898826 467519186 683067979 709565237 373039385 546007574 419066218 981758496 518461184 802674919 762143433 892444995 714118801 990903613 209471431 732794949 542955578 813039108 238979568 461626399 520955506 990107393 42841162 828406122 44967489 494404211 474061969 714657839 467905820 966557573 364119899 721790580 315650204 836295452 53255815 418982923 73053905 336815546 651566997 857328074 876350663 902910649 48009117 643261727 378544340 392105208 885289312 931684815 122441102 431873713 622353932 912008627 714633748 983222596 349013438 828713274 681651239 784163212 129129131 382585315 951329862 993844159 196807038 966024847 465772624 728746227 447356297 827121604 282698238 843919767 723859783 949380074 272222491 639646557 918739395 989305667 894151127 912285521 952365557 992821827 577461369 591954859 998799434 999608856 653592055 852493885 520016890 521720204 922054074 942239131 306651921 732665942 229734162 879330830 252451317 734444375 830778183 855963204 747295030 940292812 233288394 768576276 60338984 790901345 62063631 66652238 519353967 944527179 767346852 970629424 631044717 748296403 551476032 563711013 527437147 807728031 851860141 877814514 828230388 967193546 366857611 460852185 628484793 726723185 367043103 457426781 22168790 953713334 303198981 425698749 302398419 373820103 388743342 713470701 471594179 694730801 466329007 661526992 755179408 761569006 123669853 259471785 103107950 904457310 822832044 916503666 126023285 454443145 284746252 466252554 164001104 342924323 685700624 901480161 194736983 380843209 349834273 908014457 981966808 990381533 281078030 351139196 41348194 516318046 613863082 868088740 646286045 938001638 395700301 678064569 783418079 859360355 544918996 581083512 153451978 793833640 763192007 796544304 451237362 604822544 755256656 991066381 992273473 998682467 573587665 803105311 911061901 918443141 855960419 916342108 84078274 225179918 338225242 670793064 20351001 304126410 325255826 578070487 584798961 654752607 726253486 772940237 277117391 432964242 572615246 984123564 575487286 779850657 599189534 701893947 101769625 391417513 492504858 557352097 863326798 909988415 141942750 852670114 970145858 988216354 206757802 663294235 482071016 910022650 155211352 387600151 526303609 600374190 950208609 999800929 963149737 965609193 375246363 552122291 908379649 943345701 14031781 358377269 319297630 352682039 280520444 709508484 365477247 930323574 296389409 983033475 623723246 776327093 835987780 953484557 259917916 468225529 857313278 937398972 282580333 456739123 206872882 831582895 34573782 97532670 301165554 578383683 629362886 960565490 628517694 819273463 261524039 604734690 560621782 644462242 551529772 652124752 710546714 834457726 908575796 963881214 443574669 643182608 407016821 630100179 918325950 936986363 491308032 965504621 205201589 573982499 387420235 892070358 811481037 899634323 233359093 620572601 917615845 985742577 813138265 889086253 727521006 821741226 407857778 712901873 68488027 328838239 897983685 961229744 945772522 987900819 712931469 882931181 873114749 895148408 145928371 872370264 343970129 448852057 640064930 840352187 843187781 905044580 104922051 782844299 611104325 676394443 121760309 616377630 353070052 760059675 420055615 750378343 670760673 946746627 845215275 925759777 50422384 217609723 151898490 437108813 227675456 580187886 208997699 916283857 519962080 656558490 914335135 982393140 800266939 802691160 374513897 531191893 553573351 576127621 544669402 620683920 613326697 842367838 373515318 439543438 965107611 997851528 36031683 835997877 277901005 775571382 272045957 405971397 376122483 564436153 772833461 966653829 803068453 988398423 74837967 376636045 73710481 140587596 670513696 727185730 401235594 451095255 688068930 973141492 937137290 969943100 674618330 695234554 212236660 952292584 96766842 298165006 861146970 875468312 919827500 996999355 881746315 889564844 768691188 889293490 209135495 641520689 922494499 934853107 473686036 516922253 358794790 846372803 429661046 530707804 656052229 858389033 377551618 800024831 351407014 463420789 79005422 116083399 992344634 996254939 795289159 832678528 392136327 949641358 720723812 791421767 389213223 676757468 978701520 997980742 812035769 986907647 291427510 953935002 307915680 667503866 971858220 972429747 275212322 716352478 419155651 573207116 840147168 985574079 372351235 393423883 599120432 705911326 946191909 977353579 843577114 850443830 859455408 983611171 545181938 646191213 1917424 377672828 734871699 969277157 209294997 775838109 279615282 534984696 11508019 225595327 982500615 984742530 456206641 564641945 925400827 981242816 949502039 952398334 389583452 981327624 969215297 983372506 377643341 556141789 613411627 842482298 7749390 64974502 667673614 849153470 576447971 816454235 66336179 460097853 916250410 960714889 526421569 864963083 904865082 907797536 404514761 967039042 707102032 901075604 723004085 821927422 528409897 547131913 872218349 890555786 596922212 803565860 179062068 230117564 822144909 945954540 159681488 994384863 4942861 765068868 947482973 969695796 244801302 578699629 975208856 984867972 715261299 940364931 715160630 990679213 275745456 454305097 844236827 954412464 218198180 525367449 34481197 631920823 725468960 993392497 171775136 434143895 651605250 729032234 557075875 887872013 170225342 256821453 198054492 491526946 560510410 887752349 198952101 950312760 4239588 879542870 814721703 962960950 964576088 999388581 707399896 710392331 767947473 956132379 127786935 764849689 170795841 647164514 736439368 979049155 737741421 952202884 650214319 943312273 868753849 985522376 93094571 651900975 137645259 715749270 942978626 972667288 472021570 594792669 602357098 957406776 268060255 357938483 566739680 927299932 316117719 791421688 211819473 522732247 209299894 848162738 119525055 378855816 590000603 656442838 311278868 966311421 362142310 363237054 729814614 804916493 356386041 482427184 56112051 233826790 852518167 987751829 817010165 972284702 302239245 897948912 858520640 864824181 86196786 546594960 424945545 908739234 665174572 810853542 683403524 856094812 617630724 801401602 475718016 789479304 908412710 996292469 739364168 859754890 922428177 954146929 68184452 626857687 318266074 541353012 121455580 319113537 843971561 993143018 526776843 678045756 35364205 174349448 39019599 527920917 519335426 713128232 339371162 446217028 695274708 926101694 136847743 473834599 276417682 529323521 296781249 744562102 671134520 871595327 331344253 648350127 546771877 633104373 327588448 891662754 197395061 906870843 524699114 786859345 553087804 558592277 851367802 890570801 43253132 704077381 220951937 361902745 905464487 935152715 789458628 966386446 731201091 852099146 959644376 989788414 862256926 947382992 921542706 972688459 417317440 786006877 916958934 991210276 393768344 507678972 911893415 963546091 583036021 593510590 913513840 991918434 484470158 711061644 967561410 991029980 649644005 970167048 64895899 578288806 720193345 872057060 27402103 316368768 450946087 688097928 370131606 375497655 424196431 819000849 48916430 498856714 840575260 930501138 300206951 886531615 772758337 843251912 925351422 981319435 587163214 644053586 300728872 557690672 262304728 760404235 342743562 483967543 868964718 912762914 882161840 961495238 707594876 891537018 725219062 888160020 658545118 675523260 347539828 796131709 92474426 899438725 299375072 313903694 964562843 997249130 402439219 548333936 858710741 871398883 206437732 691937163 777197364 823417691 679123110 872801726 110513639 303073188 131207069 740687926 521665202 665571200 500040945 711401328 248435167 719690540 970265756 987269909 820534518 995314562 701592452 786178335 783379548 924271213 780133421 929435589 794978757 828788455 706987627 880751216 339058647 994634898 419596047 450222201 218956151 865192899 314713920 574348492 166228066 753975331 39793419 865526003 913716198 923885947 13587649 246023243 477534471 697878702 463584572 698013258 30584952 64600354 344225369 863166482 892726390 994294122 828297767 889857421 378046056 457209593 600534752 908543973 905832342 974155953 624017514 753298615 682336802 953204711 343961539 727080590 858409042 879161788 550022944 732149241 763712143 955077398 666297431 749923337 391711448 413418510 738755240 796846556 767005763 958348079 355921528 600998704 730412986 795903180 64634642 540400003 597190333 823952119 244373828 943669526 435128448 971952571 10592723 761686581 892965013 961195149 793799653 886912427 245366524 737875094 350634184 760061758 770404062 936758092 134454532 181519294 492511860 796419755 927985189 984726345 838235392 985335361 344771379 546660122 905303609 910315712 35736202 617442562 947109160 998927780 689938370 966296701 7084281 998060361 126024055 929684362 82510838 860541117 560242219 658823793 340213539 973289645 594100890 605731415 674578872 928315084 906735287 916286363 346144656 428860048 858742738 895677546 742947144 896190265 101129311 152819253 19905150 604168141 12954465 353768184 643856494 860262321 814201063 843503156 962179242 981649739 728491462 933961999 516024865 543622331 211940121 960775292 209681391 984669753 911034790 951450389 418668293 916299826 1464213 940643004 732671535 945665936 737269465 756474714 329458428 401186597 876168719 958735101 385955505 605735055 623296798 687195536 661663645 946556336 751359673 832006158 338703538 875055318 803893230 866933916 294837758 564434115 588959587 906210678 718566545 970121302 580798714 928130523 225411446 658287973 960279487 965053163 921077914 982067769 213716428 637865008 694571843 994443438 622514777 838399574 736379127 956052232 648029856 650669709 110805161 981276088 412598071 876980881 164402638 629364121 222565993 924317285 678875688 936831509 984309083 999707440 810887236 831811752 234010466 929950081 158058562 278026133 275036971 430594199 78210025 632183031 756305274 887150219 945338288 975751445 938049852 973838967 709296664 951184365 508924695 737028047 361750317 820433290 559781679 699778340 254623124 947383884 36424833 383890881 990176180 998033529 913279650 933816861 141481920 251259244 441699128 458400921 722831925 792315373 936322342 971645749 930891432 970573022 466359281 900640581 75292323 454294463 234448136 650289991 917285263 952463131 63945082 443135427 415522296 854656600 540204381 684094356 904075035 917017033 93779930 721862023 213081520 730119442 349676880 937087201 567658062 787340969 895003565 941137027 222560724 226864195 735741164 770943927 950919290 988382921 771244629 930321678 843946435 978919093 607280936 968095720 481301921 982881551 591927609 670417637 142652420 921615594 983576975 991096151 115959638 996867754 844897621 945946231 690565393 706818107 239962855 682997399 49457756 907110257 190710478 556455887 680905237 988567407 680927430 904751595 809511108 970354894 521162997 777216785 803372218 956243264 482504759 906046938 919943360 975721110 534925737 599292556 20127027 240095559 581964823 718723451 573522652 591344031 100874834 654258117 477391701 734116269 592275424 790747275 776054604 791224654 272323649 712574849 860164182 911752693 908389736 952278411 230590506 548148276 6997472 281993143 805857336 889604367 120465479 633251893 551117223 881794031 270198085 297791080 577283758 697569117 742345219 836409927 141543332 448498185 233937772 468862321 420825118 984472517 741530510 982861845 874160070 962143751 729924460 760102706 623381673 863156580 428977238 667417733 605996761 793844004 932688085 993305193 516178717 758245804 715422586 748144017 883238892 982380203 428564679 872346227 682677342 694836905 413349658 639993734 959529581 999492199 615877382 769060714 586231619 924851147 610166732 745047683 903555240 981709965 989241128 990409057 785089754 903492093 581524226 637265063 939270268 960982765 995188704 995340535 279914807 679488340 88991152 284525571 872739448 938290449 504261266 681023691 808229109 835943642 42888337 699369287 415850570 575877526 452290255 986659300 158772605 498369206 198951286 782252077 228400163 615812520 561402778 565391001 592852901 656887111 24157158 975044537 773309370 954100567 717785187 760852248 474545147 783564053 476931216 717608541 23623348 967213377 491776271 786304181 843835193 990134570 868263643 970321190 83664938 764640883 666865808 849090688 822211991 848481406 252245785 374630347 958858732 960502511 577503378 726870623 306159978 414898800 719039486 984764244 545537112 594149238 709123456 978626640 293166647 905315224 699759727 836593038 25779469 520111284 949245671 960214659 476479378 500412229 131250064 744730847 192599165 631190021 905353574 976471197 296699255 790793951 854692355 883183909 901727902 909523810 527804756 672438584 55733849 939394303 51880085 777154422 323640321 607059360 901793005 943633096 987052219 990258478 644672220 833325189 77454672 898572096 913411896 921649009 38499199 508894504 831127477 997520214 717615334 991034858 684236564 789879071 552118730 639092441 983206498 984357487 192544014 817346345 531704779 597407086 365773353 866116620 997235475 999338904 394332195 431841972 971574803 995501821 523654932 673180380 910841140 938536456 689426619 850872544 994549703 997832811 394955463 540117796 983969066 987574186 881516420 902130276 903661125 910067898 453813884 604553005 234941858 825518834 360865935 893111060 492304982 926483081 488432945 626118398 600531265 748869728 938798912 950395992 619569797 662858761 829354527 894684435 381588083 789233168 388837716 517455058 420489215 470022287 210853138 986073431 831024329 898296622 517048765 533224565 698101177 876415055 77152110 218087026 922813144 948782095 938018346 969831931 212842108 220351950 61396059 929060730 426233742 599407290 556339727 800659872 881071583 927484918 771704935 796185423 562425074 823862686 295700156 344335160 413664302 415794659 988690593 996164366 559571677 987660239 984211869 998451915 452201676 825846541 3009708 707756725 79824126 726977006 696754740 780862358 314427160 613575657 637880148 813510590 639063939 853480308 498853554 613319965 781058802 844977704 734836973 861809803 323158297 363879389 405174286 981594922 746659216 967318716 903418679 917826942 382001278 682665148 954816046 963854074 212858458 315524263 556766372 789134251 788324685 837403486 692397218 796528895 824665213 844085841 465819514 574206989 787031295 978588829 993809529 997024690 817983576 956908666 503190912 853462604 993004139 997923365 115852590 145387241 635006071 880275069 89464975 910785445 486866143 879776558 937031276 990755116 89457262 810322882 515233625 771648844 658705080 972378523 694116948 861477996 829940133 946875267 915936483 921499999 927383822 933839754 337924187 494512334 750198004 864539920 306249612 927430762 334067692 808104535 215957642 538402020 816496054 906007255 425403238 655904520 848386221 917833980 954477911 955550148 325798139 613184830 861904728 997022652 468055312 715893873 298379277 955321827 232856250 959504244 885487879 972294191 640997344 946010109 123599753 572992268 445628438 747462612 112853251 608424038 466898565 793875620 932746927 991069259 29097388 141225147 952604324 976661831 828053043 866406031 446556214 720064174 748091837 868280874 390717841 810908117 737579879 839809734 279526518 992716806 288598669 974024880 744866400 910957027 421653600 803831218 535597185 663900512 975645761 989893422 115850529 365439573 805741576 856252001 671297576 721960213 682563762 998237290 123402916 547993655 460567066 784359588 894275660 964495300 122652970 202077631 717136887 933911822 153391476 538338345 116999840 793080227 781714665 973428680 679215136 791387392 431078411 513274237 614366980 755743880 874537099 930969585 736641612 820050992 47398500 689469399 206287693 864972816 575890335 821813362 682813655 872139535 245843285 842911709 764777944 968421390 695667322 721146043 23838049 553184268 292195603 313850973 32869928 90569912 795214381 812352043 12843645 73242295 86722622 662868189 855042751 953927952 432954623 544150527 530300193 923189759 312783701 320965918 982249398 992141686 7045469 132985443 234136166 656321997 323175418 353131974 344999427 929278233 897624739 902557415 71552241 531153695 357424856 938938968 217825807 910450108 983182839 985687775 149282407 673275728 460089767 518215229 345102059 743220710 164159878 402820030 976496806 990466522 388977404 736181950 177621264 798881077 798567048 959060465 265960950 571050013 723635695 966249619 669228068 912086102 679042434 802680001 843969445 861679747 384966064 753849194 516755113 686760360 887701838 916470854 297744880 812951492 530612832 549029010 414254858 817100623 640498977 648994542 655745828 671940788 930740327 972965167 338473674 386759671 841312781 916231054 955945848 990211858 105906667 487415711 659577360 856329517 309286071 872067677 765033714 903691200 351947644 523912091 865347892 872325634 601133427 828006222 788603694 891083488 457332641 743765928 637636543 777440922 268098841 652456849 511571489 848081409 526695020 756756504 550078483 867084744 36870326 166656538 690745180 724117129 477936744 776891349 319623766 648642186 823066513 900396257 351992925 985588833 425436421 572819068 363228927 699314767 887297405 920097454 573300388 833769117 223727273 942256290 906218202 976272704 383481256 448078393 245146766 752501219 644648640 790966479 909636295 954250619 398145559 986470581 760012540 835247731 148240684 353884361 74394430 868054404 835464115 936587215 770366882 938993569 798566739 894094192 181400206 390262651 589444436 700679896 274193582 291831579 656793134 879226622 341733271 713526072 567914116 619325404 491491702 718359247 174518378 545966553 778451936 915013864 890559790 965197034 603047188 739580186 89973292 178677891 241803645 664281294 564464713 864390562 124749653 426512215 802475304 860454008 748849260 940058210 75695603 737278595 821288414 861309354 30615355 811438345 933733300 960088313 621927453 868858672 344251430 783521471 478662288 516184033 206996260 686685541 108389037 256810070 950926916 951340578 3751301 616709734 590925345 792965060 484051809 610843589 496116812 727649714 792333602 877337889 80757966 217560068 972176788 975175772 547818422 737480279 565009019 737136387 612901619 770919802 78161758 79588335 762459796 990507548 629903608 647965373 412996302 533093904 41300851 472738613 33020249 612550201 619447396 795236066 332677239 570081680 600950271 605792800 187076623 578578788 219002542 414745074 567495724 840557368 153874391 850809104 531502642 947894373 627778187 802754465 821914702 992175977 873639094 932570142 338603362 483557394 943494902 981900865 527392626 814606287 803804125 943925726 609817466 729004622 286559846 922976842 441861172 975527221 394661870 846426701 263747520 597388798 91370446 401508650 227184604 264751774 914581615 921854948 64829237 799774573 24618787 434689023 596200257 766593936 262479622 457537846 39225771 677834114 860379734 948832712 845077791 874785051 67384843 732177594 283470421 536410319 123120490 666266081 523613024 718373601 3410349 738426409 738291826 745096322 264484876 990082573 66961630 738109971 882935735 907112822 889180196 896113900 865154571 868993496 949461641 969115086 447260270 723493845 509401412 989500577 553986290 626550410 780209179 863984915 508369640 777860348 997736478 999862414 168511009 478998325 847756878 883833594 360562669 925035110 759756294 961862639 635389277 717367293 157459295 747395414 395133829 516984868 618671530 694907574 356826642 633153013 250010331 817980025 927270805 951208366 17577230 747428475 421153339 585455326 727697083 845470692 42009950 479188926 663505463 863991772 826085700 977615834 28071577 135501297 446168700 457311958 272901652 711899324 199577186 430160627 473382191 631158260 128551463 790319350 994275970 995560179 111530498 250024660 276963703 566131282 368005706 523184559 273987672 349350302 912468959 990638715 930788277 999450834 144642232 370262172 921762768 970067050 240578483 778614582 34290480 835547604 891175754 994676944 618328184 922859966 495992806 673076229 601468526 631577334 326100617 507654830 750175333 860435573 803402547 831614974 134098582 468345432 700583535 889219049 402225061 740463779 284236935 293195218 349196851 953346341 664977586 858349563 949726266 987943132 519552876 964490356 429306705 540179533 886734599 918451347 673029168 978051944 67702368 830686594 109500013 523515330 126516292 184208483 930363799 957468498 417292770 776272648 79395031 297142506 858320930 952906201 56677930 519729915 739616167 742414120 412937004 598346352 943747576 982043288 488386534 489259147 704428541 918224826 644616287 814919783 911624854 947059368 433268703 583068262 790471076 792323490 884857826 957479756 329977366 460312282 683405280 961732944 557616843 971312463 881150202 956232388 405653846 481841888 116037319 815958098 878245929 940152356 139011910 372434633 104342937 956241390 226845352 665690822 697567181 972985223 129355094 495702458 848032303 916306897 265426663 840282356 69809644 487908279 38828256 239330792 283764945 694790289 484096232 976733732 816780228 946291491 287753392 365442186 679507587 929406330 951540147 952830573 880388733 981568324 398821925 884262717 716857467 836394794 775479766 956816832 233684972 439073102 929923420 953121372 956307190 992941160 674712300 866041879 423144183 544928875 689271608 710197367 999286845 999593964 965311817 993166936 337241583 996286771 854675849 855147941 212983289 897611434 23822035 842133489 744309518 915686304 853348241 862252301 282103019 870031178 526174617 817874529 646478245 839146256 252393377 804394935 369661025 748067462 23877783 212238486 203133597 996804633 37054744 779179383 106520495 765739465 290176531 950164241 994659062 997572974 267501233 641815156 119885873 668439629 796245331 909999735 914834301 980348276 94582260 581858682 20215498 78578480 238080186 297505792 276934528 620847606 290033111 954094156 801471611 819275823 63830021 966530853 614330433 769907153 829258429 927970591 14262091 717654999 23017765 173525231 636553359 960717196 844764990 919511329 293890045 854146955 630639750 998151985 879394794 947935398 127423103 168184724 706258459 934198735 277352279 553259084 773195156 883066088 217964745 370233054 288877299 882136462 748216473 975022531 526259924 683510944 5645736 324420250 769709663 864813621 116838154 897367174 414056867 869562551 772133395 797875806 830027209 859630959 780810276 907235197 17724404 100587215 233168707 524501222 301991008 712988296 376883515 810518226 311760321 722895161 598570990 691242904 96616310 370527711 884371122 916117510 501829909 756460994 127455539 244577946 610738928 902741474 786795355 811287165 89604659 205562205 237149642 551479731 831657226 859645301 874038166 904354684 689641935 729513857 185806604 936184431 527488700 977441610 709529724 709739580 994349868 995068860 284470350 312737535 585802153 760247306 702388101 937246878 774038878 943050818 537608160 748090119 178198117 573527148 231535372 949796387 501714847 651520793 20143127 390462100 657105997 730665272 646411597 952206133 111387095 124229958 539574730 841258575 955068063 998819963 419993190 637577904 566045244 732320226 365266341 911558933 387138518 520634978 743690086 878183392 929295784 985304048 433744429 967158742 283723730 899383273 739494132 970605440 342589947 866045241 726265150 878894779 781903208 786609090 549878348 930430884 545301670 572371775 907463947 951005450 176344417 935154301 385612901 804333078 152056960 982661589 565049795 821365884 262500019 298529560 462187291 940821352 251984614 660089967 318276243 624169265 788303782 996789191 691022332 943156151 81998908 246737381 991199050 999206458 587563584 847523418 91052637 314521871 382209683 719907683 331336635 371364668 546194691 672404481 115314925 757379702 298740937 912588173 130354369 412409659 62535559 773648315 769058552 992508064 246203192 310997954 43791046 667861216 715175110 850706807 483115529 944486329 102746761 791187079 48830181 403028904 899330030 975968746 130341499 829598143 263986100 336227130 745433977 817996250 16306848 915059212 675826702 851833125 104949743 662202064 158891579 426420247 273609261 979895581 178747604 391928546 772887703 888207209 633383690 670961118 386657360 650753377 697062426 826049137 238275374 426336937 533896837 566052071 877762280 931793700 559200839 924826183 540003702 780799739 640242473 855896234 782124402 893259160 345000209 542992385 575911705 886448205 601608683 826032029 106154820 422269254 712870365 800884845 471141971 680897552 899926102 933866890 746223362 775713042 48125967 130854266 930954748 988828931 516698448 614975577 61572692 767190427 205104451 947426923 815777034 881071798 890818091 943472952 949616238 972010967 438336928 467482301 935649865 944901786 370692260 831287553 834639251 876496252 238065648 659242152 774955091 930975797 877631628 975142018 290691033 815898348 714537234 881216942 686522348 834802169 98147205 601486672 758783173 877705062 437044359 536593497 183834474 398845796 797905704 845154556 120513836 917677898 424425013 437587783 125252419 353158333 260837563 549131123 804429831 810248823 424554418 479039363 563414902 653994340 459892636 648126456 580443054 631701626 582062875 603265980 762447959 993836483 863695968 876955893 527764447 625020944 844548847 975552784 211252116 660770532 791411205 943300159 110681382 720923587 436723512 990208573 281671764 783205908 622583831 897587902 784941762 978246928 668272234 900007836 353416986 530999782 431038211 991213408 623222884 775018491 786976787 970399131 406793677 550720219 824278221 969983411 48840856 357648533 87970976 419800016 713954942 799894553 55841823 667576562 97489246 533730051 52898662 507315183 507850903 683328617 102751042 464786525 741717332 875972422 335761077 710294241 201060495 523567787 683055510 850819350 238511370 305798047 52240924 319085429 935487918 970439725 637848561 644494126 646395047 939508161 646082669 931220628 442612565 809743792 340636506 778440764 58902576 894805571 361971648 376293926 115223322 316596686 743300999 780419246 331855502 851516196 679494529 694551197 81544640 816636773 590513016 830556648 766923753 823259676 235033362 559538433 837098795 973196170 434864857 627057455 531424071 669900951 228032199 884296249 186694986 617477492 128355702 657529789 586850348 961374374 847024723 959989935 608915732 946295688 916616708 994389914 283937614 989452225 794313223 860200770 424511326 743960998 38269180 487307040 182612140 313515027 26506726 971371887 338280534 742183194 235106977 707066382 854139149 913185866 434188441 697104958 807909181 834558571 682269310 894891806 66512299 740234079 522334344 931180746 409438280 967690924 103669151 437778164 642789227 850275970 383608651 970651273 412811520 522084586 620470529 823238634 103506356 753365615 119790942 508390756 577838025 752279211 145065443 282649932 81369732 907841367 189430442 565661314 297707535 370232373 782002042 965712188 382887452 546670529 29241439 723436896 663779037 829027960 460758688 827635518 986037729 996489948 917433575 959702385 643422150 656643730 236789203 551872201 258100152 392077340 430577809 511146337 222098342 420441245 292864350 478940605 752206250 965619099 625938112 810217214 246607005 248797985 980327983 982386526 439567132 951033093 130431033 798694229 868288861 940724847 738644955 832601966 950348833 974887810 483723003 565559187 73782051 996929289 653367260 780897178 424021887 825610708 892566520 987993275 61746649 371507033 718514759 951180526 23812658 414483457 120040132 514060723 226247036 895994808 763368428 920807353 929063247 966177339 416200568 959734771 55639418 647826050 836614805 883907213 265747504 977556670 939299990 942411641 602576381 680529911 389459895 543493108 968397262 988517948 727039311 973634940 676974227 828854737 960606817 972553418 740879044 947912649 571732828 897117275 754402812 778906962 516291839 997938023 766094375 934436998 972282568 974982998 238168256 805086460 251893751 557981732 711144061 868966167 759178072 873099604 200739262 336614168 608034471 742272906 144233764 692002101 308815472 503840248 49057238 524942112 968922818 995221427 22719294 540212772 233141756 722380647 809697111 987015602 955658891 966426223 347883782 900293890 528509488 816540608 220854212 506860146 170026646 484846746 949690768 955029503 627457589 862615052 838193227 864333914 972122319 992364776 105399496 682421633 789789352 860792843 627665082 798777598 732717699 781544288 475307873 852858723 215709928 835699401 438163245 789971817 825597933 964005382 863742509 973770306 268814431 726128205 759027469 801782876 853152544 953188801 373737337 404160334 40954816 819661860 536517428 745533610 244671721 656602155 846448129 966029937 833063707 859900190 391111988 845070716 800261979 941189975 695031222 988213807 470907040 919288367 823273674 944138120 633073242 776472392 360354474 883207451 478557897 668279581 915611689 924512464 854170272 966614926 201246674 288619242 718691478 925230288 822062747 860966295 262809035 401672670 867768983 881667923 485659717 621062562 625247916 776444152 718446984 929465620 902734637 990887162 346433242 468705537 209056955 477940021 873137117 985209558 321159120 831314723 993692459 994860631 635194790 813087968 693266668 922062681 520846811 817085189 404179081 990621677 188803611 398078137 121363880 171426510 124850166 985812942 899740434 942872287 16597954 783195367 791167841 966409957 858651640 904965377 144967227 384189135 958288717 969886627 743402725 852813854 44278378 907431495 766701064 775372791 245657707 889657893 965860433 984543753 142981112 619952283 268639575 391159948 514307878 597799118 2989943 507771096 605049796 875412792 15264922 216922751 122509446 837023775 602456552 941646880 592623931 933303252 175809639 518731266 228062883 382247882 648608707 899453700 526873046 684640609 454618033 476240398 566097504 708597054 533653089 709573197 59727730 177382578 466870354 912394327 85528535 494833436 999308592 999812588 583107368 934634464 560104058 693100463 780011787 839921927 896269031 995858197 567290436 871421151 884957873 963430907 877456364 984140295 206564686 727952426 116538796 382385997 882543061 887764169 370979057 565449579 29036155 828613478 799822869 882499200 91927251 487159803 947948515 973022381 545007077 963773432 309180909 611282024 291231584 380419303 828929291 998833409 189860713 536318728 533567416 919767621 926910924 963999134 265012524 978956464 362805959 805551073 778193153 786114041 673702471 803259055 837707964 922178774 154077221 912388495 530291607 846309260 326769492 420912465 179879593 349539601 529482378 933707248 498851427 603917624 459605209 997331178 676037522 991432839 995263331 998249078 780132873 921802639 736950311 879118018 713210115 967022996 149235076 485373572 418601560 443077357 38647575 709106835 75095181 605196171 191859877 311504207 595271652 924571625 335961015 728685925 576507739 817212778 898848098 954600505 998331941 999381813 475871426 717898842 693795042 873342415 777990585 983114542 846134290 919336343 913003404 958723396 648483519 770470596 872567490 909788492 758057645 965914031 411870591 953610800 440493713 722090989 818321481 900327488 957333797 970610184 85625528 483480271 335065400 676567323 483131001 955934812 387112639 630543387 155534075 606456142 875194532 978366023 44698548 144335532 539642456 565964592 165368796 168663516 496867062 726745227 132235368 390131399 507289692 814833949 585484223 849540729 16627423 644317931 837031881 969680274 893789836 908410806 666616314 710981845 253244865 460418559 364066027 862568479 245207569 933934451 628402406 644679543 815185948 936800065 224547861 751745161 186854525 462038052 652011005 800868296 992167322 999107734 367278133 373840710 245891676 332939047 345058583 864751752 368448778 853220132 588068698 806529969 132817343 776986628 847157584 960283213 570095549 795826360 450041476 906318870 993952079 994399834 647132555 943902870 927072155 932365027 173102255 427232632 91192872 396003876 802101126 971754324 421666481 601237057 557762821 880695248 972400263 995286715 553730934 922747207 436297136 880145506 475240128 644822280 806163984 984466489 565845690 655546282 646825106 928575481 303227654 349334770 886338039 945708856 880286060 918716988 405210404 756455252 661385278 880240110 915321897 943857367 532200108 980720111 500346909 654999128 122905763 896754843 222433509 855054538 168996572 746879529 324292949 767645665 717320483 880813778 20476941 320837037 502886533 769664381 486357978 669900194 446383917 660553470 101794549 395010180 996996736 999532030 819483641 838793519 462834321 904574044 852897021 945984755 174406635 960850964 167677981 371543327 385262903 609776531 413876678 651595380 53400981 503077537 828034672 934060461 708549030 852559544 312931438 394748044 88170533 892341709 21445811 594451962 407470686 600991396 746230145 783284409 942935745 954421954 222133831 519665810 319540086 837243480 566690730 933276178 14630030 147174125 202634394 864021949 250667210 302192828 375671777 496820618 96693464 561003368 963947809 999673853 442245888 937880833 116061447 783712323 827384072 940068892 754894885 755533523 210705480 974275476 531298305 689159230 628190 574703549 905354094 990332839 682849234 714726808 475843814 671927896 6605329 469476103 327449651 559497149 189080291 193896762 426177914 921695076 542537157 725164998 959083368 983539671 792097157 963315566 658846698 763966776 483439472 725996481 76127104 610544829 844554874 844828271 448897201 479166294 689840112 690504514 411064545 808252463 388321945 589540343 851123899 900652051 104420797 481623821 342561374 927603725 932389501 988883419 836668411 935649533 234608956 285951671 461176319 779284849 73973187 196156628 292889596 793389403 160962753 570251372 27995759 618694296 413887875 889236242 615481539 788305340 768540076 969750965 179125523 765131021 713292804 907302561 684661269 767583165 786906916 933023294 218834063 486865856 555145738 854451215 136158804 956860276 24553116 598522567 53315700 206734117 286060082 869954053 960141244 979378752 671738937 897358011 637876297 744788900 473781232 716795917 892226308 918303405 215764888 929700101 401910642 943257999 354989859 727282687 895182802 992823352 389485849 500182852 456280843 567975559 479495942 915585852 399908801 820827913 323976521 854764456 294288759 671963213 82156365 827031794 726348122 755681710 717508015 786032178 123831954 173520971 63471541 80262672 440952792 875711821 609988711 612688183 710607300 962809838 739536494 948630592 707752296 902044291 634752372 641983701 805942391 843372498 130997519 508037462 907576643 982766351 791816174 938969868 942679150 963680209 459055267 632238550 948156468 972598672 179591554 789020556 33087295 813057355 112030216 818952821 552517318 767678730 165750523 516715327 958863131 977932128 939266972 958018060 770959379 928602427 959740822 991005945 510944374 957752973 586643858 646560492 229860314 714088153 30110590 782067430 846693671 964800773 634159029 874300453 736408622 906360797 320282736 454650803 546349989 849787531 392806857 502073308 377035959 906569935 934083851 934703178 132172683 889391162 918874992 971190936 237762218 853482121 518363338 566142214 721071487 727778174 245248279 624481713 703826271 710221572 440971736 619224003 831939248 871552615 268050451 783849792 996868928 997161383 385132021 430882364 800909049 865149561 209527823 994300358 165564076 882438298 262943689 699949945 269494230 381834609 909343549 985403569 629288798 844791760 522925922 595722900 774123818 805274800 277249431 363545033 869704845 890577968 693367441 716975226 882296335 970248078 984322329 996902942 954902822 970493800 589256086 928175357 277540561 897153663 75620814 313312754 201627224 226380273 986241561 990833831 272974699 720650714 910686279 921222360 294003784 692265228 366584853 506320722 976286298 998837101 125528835 580814824 437164433 707096311 621593690 938005864 670470651 824029461 769880648 882025361 489802119 591476839 768143966 982299664 787527818 888299299 249453635 849669798 298148257 963522289 274235208 388043891 102135164 175846136 109021284 221664574 365331296 875247601 125648064 684186351 229257006 773019391 28995676 438418536 470181432 779707183 213527982 655255107 382390273 800917544 647056816 831888246 408104241 594938657 832803996 953849791 165810670 494727484 584467849 709553903 614896415 899224898 738288223 807448375 500946802 961679466 392573137 740636276 691858890 924783876 108657729 222528853 364410736 380112047 408385851 600884536 907283804 948680348 893686704 947155434 230454191 987934009 498202279 664981508 896525580 980236620 147072199 213764668 656727042 827868510 405288323 485390861 923593665 994035441 224436340 458892615 40689075 46699805 607483727 865996315 149406252 304999572 956366481 977809793 437770066 997057318 28436075 419347370 685813739 814076341 679815591 940214851 634430020 818968252 884426708 961100306 875160224 893456035 245636983 378463817 602252170 887929840 899944809 968630691 672107753 900851503 368976339 864082162 709973405 851589780 496597573 503391082 948163992 960043536 606774762 680879946 128952132 467762302 209880352 405499405 142659585 433951638 448356112 685761771 946463884 967345037 755987708 884539335 639764078 837426318 13973687 440114843 852726375 919201830 742860373 983314232 154434078 962051079 794824174 892602891 937995645 991504515 282250012 966295632 792519223 900595706 54396959 896754833 357406488 924565448 893860725 943549222 869101813 890752596 331061219 994532744 340983382 937075043 479392932 582145576 269558817 791559973 879448107 919044035 638262139 645448175 169812984 442520610 677038961 736367220 392091371 676678223 944271646 953757146 7271054 96183986 723011043 730612244 356049977 747560091 88743355 874730502 212004391 322894627 170854086 197754857 667170907 751976613 74457882 671345759 438005986 463624462 979486621 993504750 610128772 613876316 401104367 654307054 959227854 963817383 499574965 768236142 899152581 984725350 28416033 954748481 102347864 574808983 50964152 754241816 581972710 804871854 431022781 736541293 385715449 660112686 386719488 810597154 154152443 536801845 484634206 779053855 147154660 917845501 3324489 987296123 982504008 990667275 317162065 975019238 291051162 808348194 604363424 997702677 493374243 949572441 300005346 961148959 51013682 750982575 411900203 443594447 178361457 654921195 462173921 683874048 999108043 999329124 910591253 995489388 805294673 892395541 231057116 934792349 93714596 449873083 243845633 966781265 697189853 787470124 726439558 875262757 247426704 862843385 511578491 877453475 115695557 198191621 193371841 327421557 715865411 884078096 476327118 857080464 618827033 874243365 812424625 909539080 573305897 933089062 728100982 912309029 442991176 721924581 546867073 909467969 417964571 715263799 199698173 521187876 14479020 959379807 710455153 815457943 710865725 828814218 367475273 775949091 490043216 888543721 709006584 730402363 825852775 835442528 900490887 917558442 358178733 537627159 600594369 988035285 450390762 809415728 604569895 700796588 107152165 336440822 222569265 328867785 951059711 996784534 169446128 735452793 688973933 955014338 774111841 954680374 798380082 828186931 11919064 303797416 753015258 927776979 997057687 999704107 825857927 943716815 488630996 666272842 648376304 908811731 799428599 942109464 212086038 977834883 746260427 983394317 315326032 372523007 650311625 895208176 35867858 242670913 349955824 667691332 50780021 363456228 719180607 746152148 342210118 920241598 646583537 665726909 18547385 613082353 172271854 217338928 142222570 816341582 178013678 484019031 815949946 966700236 596257000 929811558 582819149 609544690 760265775 859881033 756864224 773414246 886370803 913199577 257681803 322052212 760161801 892759246 639920362 926731068 138420790 737514886 889973102 892225146 707707541 862932797 496673079 694659879 906272622 952954096 171059631 813136037 110579192 535480751 158968797 182330877 728577442 751600829 985241369 985957294 280786343 673262682 987553001 997089556 497076682 922546038 751708512 920788480 464277729 571496245 164223711 824515661 729053744 943752534 695511871 861381565 287470179 732352747 890394348 952333381 818046526 980356218 589522201 722267691 944899009 952985227 666432420 869391837 358606157 860987898 747151327 934712776 367830469 906980201 315540931 646392345 971176857 994769499 353425348 586244201 908926777 994236101 990230285 996018534 136095705 291076954 616106225 972894625 915030962 942014009 276922906 707419788 798957814 875052589 818529383 994632596 639858810 977294116 438343426 736803369 913006268 936125826 711296435 749766886 685313914 877930905 6161701 969483760 45484884 880293762 694288550 849830974 526166808 752390922 219224558 632008587 37666351 471536073 149434206 916408226 697163106 811910565 127332996 591252214 166974091 707866330 925240805 996397231 982863199 991751428 454113919 668837044 533434295 699165690 253184102 591368664 88398767 796211583 403219741 451399801 869705245 873570788 369792437 633663342 119520863 764230308 515634632 774607937 949869040 980499512 550720825 874453634 265219449 687088730 522947346 728842319 840866776 934591313 293029729 895636546 69750585 722002330 310687599 393442133 720967343 963920702 596357103 911815944 969533320 984242392 981343481 999395341 632977775 797144520 930188794 947165087 608252654 882374472 996537301 998658816 689081262 953242894 680171995 897016305 331173733 516686906 959061752 989827125 708842953 835149714 47258435 462497735 630415899 764526994 219312564 894071444 178279122 967270577 122242027 830462610 215253426 365255666 165661014 274135354 779373458 863343156 782119982 875894644 154667830 196761660 922366472 983630481 249420574 481190922 948932221 949851110 238554051 408065994 490426331 682610257 318667209 672832532 587588696 868476697 798340617 958975826 237840174 515975213 122553209 179732212 246245325 724773037 455462289 882200594 210373478 579951361 715962566 778549707 978062055 983636131 536521418 918079141 705580661 767509425 883847292 891733715 326840455 725882374 678211280 852087597 11410342 780191850 240115814 707315335 935517337 946230317 695256102 703953999 190608496 549410214 651872155 951758003 985817006 991016522 584668376 925319386 508218184 533993837 152542000 672444462 988069663 996275651 862259198 992256644 364538481 794889915 901819934 913643863 603326414 883402622 295350642 352682443 94662945 729543095 26387927 130124244 506626943 906097894 767472087 863352183 192264070 643194238 612994389 833522786 374709098 961051996 442943785 740318100 402928020 864205340 341588010 856761069 892668214 936839861 413281492 654870780 171876901 599711854 31685522 907402746 873236076 972543077 35353359 614193343 25331555 881450727 656651679 756060753 150091713 177536285 566920995 827857738 560608159 954293955 989409624 998952067 963030827 998082138 956585404 964966419 308732178 905234429 743103276 965413072 502987926 503807721 69751836 607946329 55655720 297483020 361470792 636479103 230770495 285883050 134485093 716861425 6333888 533779548 48374017 358470521 633590325 916665315 4880867 117920890 446548849 613432538 933606664 988669107 879231225 997709096 860904238 942826737 249393208 626980291 24377194 256841741 108892422 463195324 95639371 315577793 773179985 851254722 777100612 800061063 624943557 896847183 283053972 981321427 107429549 529601210 166742632 409167315 63654135 491629305 978605753 985148028 357941925 454776965 603393811 668177073 50081336 279331934 760011582 998929330 664315441 907686602 530956493 724210353 158939058 945126360 44112707 661198709 733255546 999046724 118649432 603430974 962591635 982483684 834778323 907071423 861445703 909892599 294172723 705664538 422779637 480770014 912261261 981046989 426273964 470237985 326151332 452317626 490541123 582140887 199688769 876581561 449675520 927975355 748788715 756092134 959681326 994994390 777452440 919000180 19858138 667180983 690388219 882190065 987797861 989737630 852190458 958954031 131912283 264466421 479847496 673804925 215604386 832620898 160412008 993640932 969338656 992082488 630403931 634083828 286787802 295422234 250618332 323656321 10722524 513942612 505757004 970155427 319290419 890107577 535928495 733072460 34151774 599754708 70364996 899528213 617647764 912945742 949743363 963204336 835318509 994476626 295387223 912477605 108211801 322463362 440298276 662670478 546285533 688255216 578963507 880888157 280465706 976296520 544677206 654572062 961993993 967719934 628662372 783905311 192955937 543714049 662480433 955256265 154014756 556642487 251895641 453993903 3506734 733007544 16826322 854412486 50279482 229476202 703584499 964532215 977188170 991758893 857133986 876732907 99081466 722350913 150124069 806526914 85242816 285810424 557736536 683560871 889567318 950377592 946967290 958484430 175034344 841683478 969207945 972081323 259088369 648330655 470918936 796074474 67683517 762025771 783764175 953343101 239276087 815325923 240930216 585987950 771547352 920644513 479992070 909460873 802546623 983324397 342658557 865908531 671526790 777370340 557292493 989322763 155514538 155712111 915395406 965874485 268684014 660394002 248073934 255598966 917601056 990693451 215993512 935206404 330124273 734223170 562918131 585244521 436979692 943014009 473430700 725769600 836847990 995989745 829929805 863802255 123284884 481662988 433532247 991609425 772704500 813022584 785519037 829293568 867146516 908176815 345682002 385061245 662557240 979463417 209735926 618580652 144903667 606841454 265306546 772412684 616960997 834342759 204635016 775098147 537714774 668832926 578095644 883165618 162211104 884787792 411324755 698313495 736753707 839495486 417768527 691525223 85066104 415229700 15566891 751072903 265470189 405296173 42073530 688287032 223272394 295507065 134705983 734762840 164898481 942038166 401648296 740719124 571551028 915033020 4242213 615736253 6722032 784603026 233928757 590894074 806430600 965919742 658179764 695450335 617902552 951789684 263582894 922465521 34940909 941068982 225541602 676218018 921851711 964341787 869222588 978689273 261474124 275721610 791497966 960496712 459644938 484132451 906911232 955448770 327942456 607351245 725288357 804166960 274262346 736756954 316301716 884949498 736826820 897697034 479014532 849615942 488689331 912324050 876688692 933015858 886851579 895038439 93718994 102439532 971166438 995178351 173037439 444075631 842861516 864645383 396004121 994285497 992220542 997932899 192125077 756158733 762125227 767774768 361409063 650572965 689403792 805773011 807963719 821679889 125456536 174258136 397785108 503795014 382631456 990611753 139437350 573733200 497826711 935053900 577222398 881749498 671381005 791292492 562603836 578180394 873755865 968618900 25546221 36120739 455749503 500105190 632519665 983530569 560288493 810563488 237127173 469531390 796784515 910765044 762660585 782745383 995221988 998223429 469237666 688394844 681004804 990602264 923801005 928147317 920837489 956307518 972280515 981362617 907973305 944428210 239613865 749207434 945146950 972057414 571644697 619207342 175486057 937312830 92348150 469029985 685550768 791064379 919318613 926313428 468150349 747289332 151502682 788981508 859890053 951403755 617562107 646300281 329734602 893888361 469715634 813061895 890069023 918785095 152203072 579803243 588296390 840005717 807213361 963627617 524884138 572687445 93549554 104660879 992561854 995701460 178361144 696959945 507553253 850830511 877264246 958509530 604735753 925130900 156167872 648731116 338278269 741213600 742185172 970560904 432544016 571878215 946944721 961633860 328284521 581510124 440065049 472253945 895772864 984160996 991255881 999770445 463400432 479699151 559582279 877622230 515460484 557118095 782978151 921332697 565224115 633811061 687674172 887643028 531442778 642467332 788103755 817293245 211414151 907720677 373746916 717562616 144372846 999634311 508518713 542225626 782236282 946644762 73852295 357991957 248572553 518327613 892069778 929549928 432426271 820123244 6372784 783023098 862242384 946313970 573256777 700853221 893134083 971065838 971716626 976325259 624407092 979433201 922432184 926188477 593932436 663461408 37157458 669322431 767226439 968597122 641072705 665517884 619079614 889843681 135230679 419325259 770025142 888608709 190112122 235454551 166268996 228307691 137101376 821545141 308494670 517423540 493715659 625683861 753417486 836751426 885042844 951199589 128175582 758184404 362967253 908905969 397290318 683668627 170638663 876382493 434154380 985762578 886086450 899720916 790247692 961999964 110810782 786648098 280610304 324685782 434927645 499036474 151141582 370836723 892509675 943302950 791461181 938492503 514110632 614324095 512316687 530781745 221753067 960901668 383837298 604566237 922862118 963155883 882136996 943631795 507567661 547925446 852027221 932406027 776230168 805708776 776562832 869294873 469918402 538217497 272038952 692637836 357504006 658670399 371749367 505692495 314424724 602796604 202293058 445285909 336288556 876321451 866781334 961404356 435109497 619096613 830397607 929380320 882957518 927941378 282795721 787659210 11617537 45979578 566445268 714225066 26678898 840740766 34943497 578005049 794010563 906359833 647903527 783828194 924769743 925886403 464921787 825577607 338551143 490444095 886367871 949763468 530492941 919276195 188781967 631281557 650850432 817481507 892322870 916162316 396673562 493036666 752506853 984255519 488408769 494686779 641826105 936003438 525212059 702279465 125649059 486763784 85934005 233159816 619441779 722796577 195266648 528199393 765724896 988267079 425279527 786603794 884801529 902001408 230186595 597500315 699375260 805083719 767966594 973728585 20264073 110320166 706206239 750853233 459247089 774888362 262420031 479921594 563520150 681244654 91925847 954713733 595907337 665748413 201591558 747765635 214876642 403899376 282660076 615085591 482397105 701908016 330883490 483743408 803247630 865013452 237416563 916699478 405862997 557425692 514335509 806863752 614846452 830284144 534942842 699519929 581935860 763038322 513576647 959381613 861010095 994042870 583222928 607139337 327221881 822660332 55702280 91656922 320400784 964481468 709730613 953449358 148582160 214474772 362010816 377166871 392224670 600197751 935994303 958827848 49592389 104644504 752338986 860053830 318203067 433701874 361016673 851612324 963141014 985995928 433738443 519764687 649122539 946991183 402109981 584676444 986020030 995393725 772066390 773691191 538950550 950776857 48957711 139386722 314013859 884218935 77433235 468620309 351203682 390524183 881766778 985151399 502030809 733619696 673385295 947153867 365801149 723900665 729016416 978954386 183093732 872825308 518650481 775516977 904409498 949559396 616592981 618829736 7895549 620092673 996343298 996733345 282265598 590603677 2554568 903961388 168281560 868469614 62839125 290344350 724004923 828889406 620163267 947344092 269140311 466376224 511643839 706827145 144444288 989461072 201787621 497400052 82166380 991981820 275296307 298518759 587143679 964042352 871304504 986422718 642280323 936001807 295662614 851318412 622711635 904992501 47371625 918324452 761680235 877429373 733669977 739822800 441864787 859556046 504456080 760719668 32596842 784515239 882586329 884407170 475804303 656948423 178459135 693448216 568623072 862950739 88016048 669767643 153150704 725604184 212017842 973684556 411638967 749750943 723591047 977432141 450572500 648058938 790719915 965462006 880863334 924390258 678415682 822627023 405453360 727611759 426810616 972498392 684162911 790685976 462310189 481650595 925466987 958654764 979981246 999077512 409843620 664996334 287001812 917641902 935337421 992555609 584633662 902526868 658707768 744773699 22984947 824725015 885501876 949937407 12502579 215238612 160387655 376463279 818349453 974465659 914867067 980511134 240410225 572251710 338958605 519740585 629601655 802563009 202316885 752517005 411773435 715289175 687269082 694789366 216806883 654003415 285692134 472345151 875435075 922178343 857452011 962230343 305003617 838860299 483427551 858053018 116500529 192062979 209650374 699591101 428649436 548951420 581244797 919120642 960227214 994434826 191945210 412615592 312318930 482666567 741250565 849237469 222617180 754059977 666989090 738954612 405409072 478916476 222451608 764620015 441076597 578767210 570561025 893800619 878934206 967857713 65276758 551909562 463154496 713926302 188259309 539295960 205626608 527054612 878601799 904741229 586362082 958273622 980289846 985964619 53785787 493305501 542310137 577010700 376575246 602998648 256009099 286553840 453949722 501073176 954984622 993256739 570380927 802202458 878752041 902749293 428540099 863529794 216835713 382179502 392714509 668665617 494088120 642994130 865249062 994478674 113794506 250470534 657518769 737137849 407671212 511323827 592964538 898024508 306334206 327736391 145190824 741625520 119065057 128127036 783087702 918707112 782682927 981974169 250229628 270013720 996048796 996540303 898278190 948819931 797554242 814838400 800187787 974649769 233365351 784719617 559352582 929417603 896692680 962182533 995366072 998639828 894542309 954563592 247623369 832034822 504045582 555926971 295546597 327358090 33116277 494158163 129384497 416177215 125420750 325311215 572196554 741074739 323636224 890327426 422969040 927144159 52785409 374541652 677663937 972373686 2869860 117711514 768147405 890799222 664440423 908153443 780090716 795881171 389958796 501476029 292843879 901045854 120334669 295296761 679361331 988813407 13961084 642996140 57216300 750801267 706311640 994056607 766854870 984885553 920736312 954359751 850248440 874915450 803177933 915760826 808819332 928372933 849634589 922593713 682400310 793489543 622748733 788417069 502770909 631971716 971028543 999574904 985567938 995509976 710332253 787326022 471846822 605273003 160150350 583705426 908708934 945478442 188464976 570753113 333168177 796559455 942049781 960657239 278152522 421498994 801879963 998268541 337924200 874348618 337539416 492365064 766970816 924180374 943438582 996730422 410315696 501412164 517007482 975076018 921035084 971397783 510609240 819338267 950297480 966997796 913159056 926803461 573346159 909974895 970996292 976319304 353951664 537008591 794112829 958666462 277134188 759688876 885183317 934667288 538854735 541183397 37809397 292005415 51359348 735758658 705515015 948723973 923141504 992196173 698277969 760611238 714653785 742001909 201779896 218169496 99226979 946566403 93908553 704725009 567987853 757162249 143368552 419910945 875626868 933128912 464675737 787648115 935275998 938391067 410664115 679562999 876299510 954640040 430687352 899346183 189602185 855740587 479761708 975800311 100043774 969171114 810787134 859626784 201882566 270208395 992654614 994702513 372046517 809113715 536839920 923230728 801086272 831619472 684084192 778883997 358922011 372746547 313696435 664024382 53305087 790173729 76584647 629539769 182993141 361782906 325931300 921005205 684748990 703181521 686097966 964246716 44767343 554886347 577465130 964792837 581033230 808102576 310448165 996185083 851711147 861730249 518447373 904643142 42655112 301482974 94197225 549630436 370193526 628688209 223836374 766116046 182897369 934736173 455046986 613960789 731266372 803315359 238214712 653977245 619168690 984764366 563192835 813040213 186610543 708553706 738759322 831190560 496896779 508708866 894935540 925462979 803392137 830996531 465162149 915350992 601372495 957960226 654059811 674901650 255753044 733675766 645926107 667277635 890524864 922955332 737907107 833240449 190439540 615176455 186952485 400064863 57793533 428496703 520330297 627215827 133186999 752749350 228404319 538009902 75944418 438082636 703436300 999079097 654436536 663913668 935998918 947762338 651304504 763335099 284209899 786178220 613862371 716848188 52547182 255053661 129970269 788522739 123530603 149309246 299645072 544808698 241526358 825077610 291838482 865776329 702908554 960810112 645369343 703778653 707864558 982267123 576244761 921016883 283815127 607259758 560314672 907310308 535512414 615331474 975007858 999795236 229507508 929483035 406657796 620397364 913728170 984885409 578496630 583702519 776254897 855117400 913343286 990970689 404383850 493131029 997219139 999333806 671371665 993356073 482291069 545567302 265909558 622068688 731038260 920743884 298263231 909403519 873147212 993141830 646761066 888982319 385197925 572459193 467525393 704797375 572336137 883641257 437437670 539438419 415064914 991663238 652276095 814968536 364871730 683640349 372983703 515120717 32467006 717923906 153957329 462596254 123842762 805375556 978578269 994657153 277038800 481764265 918970715 976017954 328851819 921981874 279095959 920558617 740240327 899533453 44730793 795102947 246041471 652425986 144624855 190132727 884523303 923069620 131763005 215780863 265204218 521232319 476167422 622976395 298683223 700351990 829073706 869754269 195562489 829660808 5974246 971505668 854385656 867973102 246936944 255359265 540215515 552317492 769324056 883685222 828719999 992551667 214777058 724463924 288852926 717658218 108143130 427855897 429964862 989754881 524320350 848031513 832074808 986792045 993204120 999503172 315953295 567018548 729064423 827267193 323863044 865441105 900815070 906041468 291338400 805559443 421123085 634122663 648139105 909596174 819140495 906107467 904209267 933301350 178041950 495487946 863484321 878132779 709179255 767242495 577453702 993224701 569091374 903049722 130032620 892170116 440081479 758328729 82051558 478172710 842096883 970505249 486139574 590344726 306083902 604003232 277810054 662658257 440184186 914357082 102400874 805263924 819317775 892214971 608793696 953990350 672630855 938618777 805420965 815511929 715269022 823988863 877211326 941772904 36286815 249377200 770686126 860534009 918452228 968356845 841480360 945826641 31569587 113049540 215122908 406726512 248268277 547372604 860135919 902018683 160301963 996856755 56046211 93111550 8626176 719297659 347651760 880718437 692486974 739216033 70287301 154617340 479120161 738032671 125769295 515826173 595309411 772095526 12554000 143780360 108657266 244972871 830839485 864688231 588984492 608290846 934689317 963750286 249450175 786317988 406399121 733037434 421186810 583874700 501161851 928957353 977957146 992958118 560694180 901376417 340579636 418645695 455672721 674736965 237567021 721463640 267259202 353040572 864606732 915451439 642620318 997801014 406869640 483773121 683503584 685139564 889474858 967379484 923260174 928904235 431545072 867647099 12906520 104615758 505837459 969372805 30287714 794922917 338997956 537885224 488739586 782748160 642921015 925073106 663846814 936267609 666761969 970670824 599127034 971415411 823720457 829529856 851228043 938443611 624487013 703354687 235784891 804168465 907914490 943338894 976302967 995538873 892034804 985102354 187423434 332566165 490040409 966538068 199541330 709351375 161529083 548950615 330477074 507839164 69972223 808876384 246905479 819470194 1194914 193526965 46362866 477264824 325393476 865069353 377401383 476669297 484068308 829650694 629395724 921937280 881077175 968312564 363521786 923738200 838654204 985154680 47764520 250302566 586605577 761030695 811340559 882297103 833847812 981733229 334830040 910462136 336726729 880194052 225373145 781897832 461888991 598090882 954663680 970220798 248479263 334362707 989300717 990340144 762964132 938634499 682607572 783543635 491650185 644256727 534940007 917581038 775120572 795565640 263905379 460432228 828503425 984967749 311048502 386645403 909852251 958379773 265195330 976344369 688682504 996961879 375552318 429769708 458664187 702808738 335515683 913175673 418675756 620726174 899722426 956041599 361248266 398204990 997904228 999786529 106518197 768495233 799798357 952483941 552218295 663117402 765681388 845935500 990561249 992604070 191044333 518621045 753313941 790476448 887748367 905040219 250600775 942721663 580341744 733327607 898296760 926229235 627449340 842049192 81578217 167687387 793387950 838852304 503371166 902283672 363983329 434474119 26061459 647061997 269256704 654636753 620978841 821258516 677260770 940281866 653598816 684415593 245681376 852595612 478104645 999787290 959121902 992941837 260458633 894151511 717442077 896899762 950480062 996792220 294275270 306766523 519694048 920761544 765534239 913245590 780314635 816443689 892218118 900083601 943008829 987969780 878215829 921721971 655678916 979086063 417022189 549206063 9305683 561828391 86207775 921875168 911537107 959502669 658858622 847948843 270344454 476797627 910934661 950150854 151173768 208221928 754297150 910280668 719791509 803239955 429106336 498477434 652038958 825598871 465160370 955261171 132272402 766691862 64592099 905617316 436484890 923434066 943130543 982639964 956246963 974472855 284989312 506849046 599064746 761847654 620169909 931912371 314568115 430248110 420925138 938516604 325556180 338795800 684998393 830467800 256344970 794700555 886191305 949050599 749952426 784099582 341636094 356626392 709935758 717926670 35120863 290904877 961641020 983008476 464164623 945009427 252853884 365666977 340407254 698396712 305983953 953808247 885132292 896206334 740197746 743794449 752785775 889595588 781986606 946124075 469128575 932068988 198958208 664367014 180033063 449010791 31947695 240014591 45823633 125731495 379571698 672102491 287716661 844398138 98721472 627671230 332375724 350180859 574802678 887383426 695537285 899198178 242992450 757797188 313208450 466886240 259674182 347669006 542178583 679321204 75856414 300306622 445500883 617156809 612872331 871812401 63561623 880027425 375525404 482763641 475371805 934328363 271644110 343739482 490636437 808586141 250337847 482081606 974441126 977185232 915073186 957202477 637118706 748260499 961228757 983975215 126684854 158576436 708189489 832553319 322765127 444127572 258223273 513900269 106736297 551839189 587586287 641901656 696909969 907241980 345576868 729816972 361155581 817807122 19506860 374010218 343833033 574172441 73373799 760279611 844266147 942441002 29691794 860874179 254830334 439074386 267551812 699882543 17439453 44857139 730248993 874136543 941712638 964329927 220253825 256156259 641904215 739925732 631974093 975854714 479905860 951210672 524850300 574197960 948117002 994247041 234430619 835561890 623599230 885122586 822752898 899723567 98625325 231596052 49405351 839044891 743769321 874531966 855392470 876533959 62867217 764700054 939071951 971835871 254289346 766686891 355356196 909663799 716508661 985854771 134826249 595500050 458598844 685519512 607018778 719479302 566967800 683056771 659038992 952640964 566023644 586946812 305288886 372645093 948829605 975995378 236915009 316530318 67153576 80247650 113196339 848293922 67796750 770967006 401782385 922598515 390016782 815919773 113844164 975590071 351098001 870566523 308930781 622498125 25626137 711153307 366004385 370809436 770630783 974708930 421491312 660589461 577430690 678842839 774387768 885216880 125932982 546836196 898882027 943109548 464351736 682897442 165412534 931870266 107420552 497110520 828187773 899159266 760966426 859735792 646934400 649478586 848148265 934102163 210115147 220445830 596917541 694490063 829435342 992296632 398094091 504171448 388974802 535283419 867051323 984380671 656543337 928369133 876623260 975884173 205704853 669572072 864796113 924145228 35005978 513143074 9909416 777554108 943608563 967933921 436219890 937869365 159302397 971962564 883004620 935274269 686334800 953192311 146563365 426133639 584790181 686113332 691354070 922501631 162612203 423342865 662598324 720041891 957793831 969804571 386127215 407548400 174741609 877388624 360099729 419652881 192913837 669946642 881623911 999742751 912817451 929081812 81165682 654251670 271494086 478400494 50761520 826839507 182517147 709465828 14745667 790566448 791706851 832425907 515504063 621383003 50263359 750293131 256009534 844743850 384636854 443127379 210235406 528237358 141552582 670658958 951489278 965355887 565082778 811290857 226509309 308138702 848727343 870843074 610666720 657913387 761896129 916221944 914596937 928541812 229457459 940467415 931240277 990240902 455623957 918470033 86614156 292582585 751985565 998413233 521096294 542470047 139428088 697333994 35001171 688522892 843027968 888722425 125799540 607499363 185681452 598877319 900482132 967002251 480710913 848007861 87381710 864449127 534144734 541456194 532248905 809383700 928940092 944861876 537898124 792318138 903705902 927930682 282690233 353226384 491376127 641352706 350545856 481372448 705052761 911122870 583946576 692491204 123184539 146154343 328593762 744004617 373801785 530467439 72278738 181944422 359242039 614115297 447602604 818331337 825526956 850152792 471484540 910197307 428875149 660381022 682400760 834517029 539205425 867414983 958756867 967928853 425492215 441760313 21380543 527600902 407077682 662771361 725012994 774242107 880577553 991287266 466222220 876363974 237553223 264472076 678329265 734563079 912613509 979730077 191243050 578915178 29003196 864064034 327371409 709803020 819171411 856802294 674123650 699217013 108411443 750684974 583942212 954814509 471802003 619318071 246655503 815691941 299431761 612324662 678925008 684040878 960330469 990365306 326212808 594387542 92642164 994948500 179014716 532805342 562538810 806358260 883197049 996693119 255588063 421661194 652396832 705766863 47052000 845014758 209213945 465161995 351033105 895975687 405792744 768268784 101961478 410914232 505312089 929283235 228294475 685288494 927964567 939630428 749967193 993903775 591316043 852685662 794273362 827042081 234343220 449846875 453329262 465321508 416310428 594101099 257887113 480428125 69514125 191016909 645185888 714563140 130386083 361373733 203348108 543167295 19998276 911239443 459154121 579351684 294306122 775026914 795850935 871125951 177577143 707907176 360613039 759333763 481118598 694389406 246700061 422454642 196600606 213779035 855927977 865352564 824664001 846902285 985139056 993729946 233543359 527153563 921925307 983219597 535540756 710485875 250876692 455346630 964243743 977888604 676703304 943051863 151125060 838392353 290184050 568746219 913116721 932098734 839209139 980417678 751563483 789624301 374148439 602788736 372372100 391881646 184754287 422649875 644221704 691957924 361626529 377123928 140740948 314677022 63081319 73051967 305184600 840044344 815627593 840968393 973667055 994686146 973785322 993826910 360197762 837069971 162597762 528453547 745118521 966016180 895577720 910629311 110844166 239370107 990828381 997040009 219515464 824871045 657900095 859322877 523255466 900382990 569281714 803365500 508099888 804911659 236507109 681947697 572065873 675722729 484056216 562503640 414208124 525228179 876240965 952617664 181919116 894298452 22504393 143039455 889880652 953308223 376770022 492356278 617927004 981943003 716912838 851845937 346650124 917021209 654833940 916896506 679858804 713429354 238545120 545758014 676445244 731258794 723546650 885551648 965800746 997081383 831459832 977455947 676444316 994726917 507905764 919571167 953531545 985137511 390554594 562477140 95793970 499452300 308394888 409287354 684172766 964889660 798672106 848426497 638347755 702940626 717069662 784092498 984287901 994380423 55227108 694619534 783356571 910712295 988058757 989550783 695085314 793578295 92808775 189167144 413274786 551193625 580673202 901675553 900602094 995058344 380104847 637970506 418692804 966251998 618398273 690165240 163598244 704243042 676458148 912200701 111479565 713632511 792530890 993747233 81315182 135310940 728605056 840816239 222170715 322194127 454060739 994763262 996038370 996951397 629221306 754987781 332073477 476431496 519530105 785668424 92355805 532657554 444719386 567539410 711964263 886239429 812585692 841092614 366328788 714633036 708516534 882335961 182352852 271772836 135013783 848271020 579003389 842128306 372630516 816434593 610620168 658726188 840534508 957395968 711544726 784050182 553018149 797561513 670339733 978878535 267516442 917835783 390180071 761873843 923514618 984131581 779995558 828555299 935932364 973855378 435791746 488389126 406654534 937301842 810015500 966934945 576528306 608336414 595018972 639573175 242157153 491372819 149815200 413478640 849394503 951925916 271313521 543428109 549699195 628140720 858092595 893485412 215177628 982459411 145693869 417488485 980512728 987999068 549672315 744788240 530305194 652818153 412766349 703348872 989540179 994876022 30305292 613578630 609200533 788367711 423965230 860213382 502129080 570580766 293562487 334096377 66678923 989541322 771888628 880285290 134291030 828028306 572217296 806203692 259897906 870560758 186430863 871398975 923492659 933830848 757974141 998076716 814958934 838189976 452670451 606358381 421565002 805339630 874755669 901665550 511506700 642039270 120903500 955161058 393357187 880471943 316978266 384313716 263100912 558302497 38922337 422258841 914580480 923384015 402565927 970084772 844712817 873034386 889361305 939937479 695527753 698202265 810366927 844281280 467834786 650909521 693827555 840752843 354348263 698874671 702900983 737298023 102374462 173265926 62237128 673981972 196714127 362166558 527119331 571418228 776812373 790326636 65613198 120656956 863074035 920680621 608625238 686585389 847896641 922443134 287706987 858752573 666582621 832023364 509016566 792295564 606041757 694499358 579130884 752713117 318581607 505138388 710741675 858745021 23428442 578313195 332251870 484297839 722099321 778305763 841563234 923681919 105705396 333009505 2799589 258526964 227346375 886687964 764659453 857298133 260810068 935915879 219119282 293598439 773226656 899889905 186388990 281356975 308404657 522382860 402326203 498237435 789935765 954775283 864524506 994182394 604767507 685827455 268562989 332365412 133341091 229915626 914967045 925700824 897122709 939651632 748168586 778983622 969213248 981055031 133566402 339245133 738860423 917188469 232727212 448255121 210081065 733912642 90270277 349995312 466138428 521984707 741099626 788614734 426884300 898645140 500259739 640522125 336156447 548083533 556691833 789891041 627759964 859898080 138281197 338047831 109318730 324651696 579849497 832455764 471661100 744989368 673138709 955139414 456969959 732991258 474677065 850382358 632236337 923415278 826489067 923209540 840009898 987353664 514879772 876315249 440155466 811207748 466585980 791255918 703917420 784332452 738668023 807543662 517317 345408709 588481001 823426746 314872169 853681369 835038201 937605513 945750121 956061963 554300556 756693921 79371538 702076824 760429654 847530324 958642737 971681406 947582119 993162575 470429811 984521734 465398054 765509438 729174745 905756600 285825728 481035781 837680885 940114327 839054274 943347453 218346029 265335293 96878568 894551861 271942252 428726851 505673714 747651080 190783487 577326172 753854527 945802850 191895722 914667903 151727559 778731775 573672672 663005879 54815702 118091180 30349708 96119890 382688646 738475143 3455571 559894438 174839238 201292026 977858699 984635498 644577004 730506952 586007416 692055726 746684600 830758795 557347045 781646609 927298781 974335992 347102728 928138716 809505339 819318875 833245374 888367282 642784525 988683020 104253780 701714088 567600146 917961444 97893252 293208388 705376118 882247154 299613578 451318583 513030684 820532813 937800114 971683189 182463403 257556169 798810421 817468832 228349703 291130573 404425676 547270588 312744272 680567129 314185682 339472073 354029349 833212749 778311894 822610622 784881393 891788640 738321651 949586393 126589698 958523300 523874953 818397168 704386255 719286458 864961075 885036453 410050695 451406832 981423990 993111922 273213380 787663344 224262997 749211836 408063019 735040681 47438159 283875857 769413602 827191774 687487999 751513689 39553909 220245906 220429049 681692561 481691940 668155985 750459838 826770874 678984290 948461244 739625006 811516975 544592462 740695880 870228729 882861415 32561166 905769803 497527092 997097679 941953298 947933253 94362826 686225990 156529811 233417801 596013294 776457640 402247276 598179428 214508290 612445321 328587062 652789793 574799126 903440703 917008954 981690055 320482726 404582843 439780836 988384158 39199075 900136220 843656599 919858066 899727914 902052849 457756825 562901902 440901366 772066681 781148744 810279932 348403010 553388885 38700083 411744692 965616524 976160985 913692149 974610514 557878243 769879733 182497238 873168887 109681127 161458907 565525009 620666653 152239002 664646644 84976798 187089161 860483694 955054983 185794308 740609580 583374849 931194089 449237471 699878105 490907568 818295583 334390961 640677180 57407230 621786847 33694443 226148425 359297258 412904673 556048134 807645021 717433441 911324325 435571791 752613255 190463206 478560454 69297126 628033056 400114703 551146105 3854334 136637006 378627659 747305804 873988763 923493928 323696230 887664821 374327414 811623380 265328563 761037015 169486618 952555172 371443265 981287470 771835935 821581937 748871334 880083296 269970334 294863990 720623259 869776689 840351719 901265136 897812605 903227342 882087799 985816218 654942075 785387668 300441723 767912983 86470236 894423800 479041575 556675461 896107512 989148549 286999068 599229915 707903667 951775163 501910235 979828442 485057128 999527915 375367997 818158776 286370679 965753611 192969205 943064699 505496430 578704846 538835221 734482645 268236176 489551522 344107743 996496012 75981670 735907424 646491322 901955364 870960310 987209770 72485605 842407868 636059953 830535569 143834870 433628622 625412069 999189192 833246803 977431684 757823064 904605697 541702771 682075197 322942990 993983835 820293200 893051667 472876378 722551610 843486684 853965476 328732613 480133259 925105742 972354767 79866621 640164345 971343804 976064370 774106086 859218986 542260666 606460437 137777589 138403720 589749895 996907593 250219572 539174860 949319194 966500102 899122243 941733636 926007118 949564804 105264796 430387365 657313218 860069974 130461046 790097374 436535947 926094952 683881679 933436002 161544047 912866991 796008657 934635032 755688463 810273265 476265612 857322500 276385199 582633456 442694105 745694270 614893157 922741440 522801149 780831363 629411761 896030330 145214096 401636133 763218733 879681065 969266605 992678015 645111463 869094381 155328471 385142434 322774408 964435201 861891594 991703386 112129031 997821915 859421990 964074061 424873790 987334189 371014530 574887785 530433107 861426165 472228926 481851169 130554788 714435231 70620046 680476892 751624696 943325960 893137569 968210686 661828927 756477404 210937270 935804903 471876926 701437338 36745916 733526086 934731865 971887444 775356950 837773099 755866178 786329709 882448997 914107349 715582464 842568743 592337881 875304870 16876865 463281940 708297945 762322501 999261908 999761063 783936898 931467784 238654188 785833914 884335065 919485972 213116936 830442499 205936394 780382822 240010133 517431942 49267689 724745025 239159855 299117589 505376612 694367604 813919386 957060593 207550717 690330646 38818523 712565910 535509266 713803918 505092024 647978704 194152661 510240152 636866486 928959603 604219839 818814345 40752438 873731710 268317822 818361266 848308325 863869769 552727711 893569661 155767534 716815679 307350029 934481520 480305496 903709929 356496692 542559129 352186101 556317806 910466631 924139483 285213787 858835327 844024376 977772430 894234352 974005331 390563795 672342471 379920651 534819461 344467515 437136246 869843065 988162790 148423089 916519813 202450122 226369285 662989409 783764360 344188689 881267079 177599014 402594080 736642555 857530630 326056526 366996784 308180742 928563094 512972730 833903350 99646079 319973881 717025742 881811593 833540154 884085419 622839411 662683553 352433691 789252139 727994237 738312844 151703304 888381915 187561408 243443610 523969095 604141659 324496060 327270868 513242622 677805610 828116855 973385413 635656411 972448280 815533398 899419983 969828926 980445851 604914179 908899922 651055789 667241678 319142377 741216456 564114633 576202032 295548936 773980764 318420280 705323344 335869947 394862692 485880648 563256596 800598567 997684385 761168494 834477027 940265412 953897508 599255422 614914059 360822070 450538131 603080486 655412667 300394236 833786266 441768847 867491803 994610589 998582051 38508878 904671616 774769286 979940374 118318585 968060179 411343053 804236145 253447892 384386719 351688281 434029251 248683453 249093512 487962995 731192472 232923773 675355697 742298473 825359425 379120146 994163330 248299284 928973740 97587945 617681359 334889329 580693484 599359520 953906876 764910928 882782944 302155904 615612786 935322725 944834810 523300334 528413704 636425950 728128004 186458601 341689930 221785832 267909591 642537560 747944865 13413339 145524630 418350545 493275817 538308510 561639644 915575994 938635177 775653497 954128427 261760193 688387894 28305187 715057718 603084730 664595390 925736179 971183591 983180401 984030107 543363135 739014236 687192042 877884858 777483187 806211670 322724575 798014307 874636858 896069281 286699964 774845571 878802852 958858377 293326791 400135745 819488475 919031740 480766374 554828380 738721844 829933000 252900919 731668445 23111599 563200021 244684690 265499366 509438631 604143512 627914276 703798388 312567518 994111937 700188900 773588101 651493804 866058575 16422655 59427353 130234843 961850086 105002190 656609160 381944618 989973108 780016781 843090392 304933110 320577602 261775965 723040646 682305069 932649914 557709272 829786327 598581324 603174577 252965669 785664993 412345727 600415868 920760651 928159743 175405759 845885844 522999261 669125747 438165820 985300582 61985866 973396487 903403919 904386270 225361838 667361821 971681481 997562243 532414646 834369643 114183846 312112684 202515295 232241944 797755161 990875514 583364593 686169899 753554002 977831175 585759105 611722767 960879744 991127434 691343116 970167299 888288421 893302321 840768119 968497084 168682572 498905506 159740007 443702574 485841894 777170979 670561866 963251349 904285181 906517188 325705656 539259828 637026260 731917521 906219916 913776049 646810904 812536314 924439603 956574210 963162341 992697132 285811772 856811707 92711283 891313707 961107061 976412612 325959589 896451211 327815436 947087963 42447004 377295964 949222516 988944516 41871513 692770936 945698788 953317555 889684153 927279524 674036960 817326489 857865580 861676796 536122853 645153457 1576942 869043328 113880882 958436925 934507316 968527111 209042663 534159231 457070656 594422589 700261633 859036149 342777223 980580944 861846709 929756301 953439487 990235050 554988716 996168716 766514522 919487355 94337651 302276565 379535076 891330660 22317272 394656900 584530948 809990560 572785752 743439285 127323762 542951891 229890228 719953125 658060388 938292126 312036084 742591101 735074951 948621282 362204305 378693305 915954778 994211774 159033335 435277789 429679063 891309783 817666313 954482564 350506720 592843107 853655597 897855561 497849899 709008769 910523083 925777566 792782254 990328008 609426511 816202961 817523524 946941717 747180152 925870327 442554286 873688544 166546938 488411263 247442516 421402866 879044393 965092370 866486030 988352751 910800149 945645777 866739420 996270750 402189290 853378291 552655752 949685150 662906547 810751660 538078881 819760981 635122010 969734308 468185443 856013877 312685217 411274430 526162241 635008548 299953625 581741000 737924876 969478150 57362428 652118214 986109406 995119150 741050795 975820420 444339925 647046937 847949056 955268319 91723943 279802571 596919560 990212538 382109655 407629471 695240057 993668927 494583957 516174213 824862912 960227474 411391064 946833147 143979499 922350990 654469672 710570533 717373258 843734522 339325910 372540210 444829892 456376098 213376061 243585858 697088893 776221071 153870944 746126628 901791125 968807651 802359720 920035072 505436179 550442512 383934327 978226174 868102086 989942024 994648103 997995775 232216871 644787673 146212640 485080758 561807922 720898393 161177200 397027180 624362385 699221304 233335603 708088956 561064453 667898871 605608759 937086939 863504562 927116756 113988691 776885054 894055873 944113161 979355141 987587699 966079034 976707382 850867327 969364245 813675436 953965437 747444382 972973949 326823973 662201009 466344009 500755449 278818888 966125588 383656446 871267032 491803642 701579994 544496948 596041692 349424789 945943200 410823595 562457498 970709634 997436597 478281943 528086046 188724803 884666894 263827863 485609421 808138092 900301077 663967213 736746193 707639701 763340387 454426055 958972866 125975193 780960426 58279971 170891577 872432150 893979526 998178947 999714799 166320068 266431137 169857994 718851157 610922133 863192260 138072402 651185320 589259039 842475057 194565080 851464791 152176443 562561867 910113109 977325339 676446696 730059765 867541002 881210799 840234130 985583039 967023487 982999905 342703412 762113660 160207541 536616385 668350205 948937378 134758264 789347265 857049376 865818748 602595150 728786394 147361676 601594885 806955385 927259762 33346893 325074636 19571865 778066033 205673409 764986074 1506027 923889967 211435043 788905998 383550683 817717108 441398301 831688318 116022502 199937679 258714947 648339341 641390957 781229244 197166385 720569536 851567740 891894249 169178385 559824193 974937926 998682892 887840493 934669971 151482144 296463117 186352260 717929625 339951703 793919052 22062832 352878447 314792638 348963610 389667789 923202996 171903377 808144680 137199061 732434627 558680412 893136796 967701226 969441443 44032670 505932351 439291410 676474341 616016083 811765714 269636519 295964067 778339484 919502506 201482748 809543138 832959588 904874455 60485955 732570175 25740763 918331216 840387256 993931096 109699301 619588554 313111914 529388739 471864756 802066538 568167817 750790879 527328603 996764310 756189646 914795647 475606698 508189832 225289740 240930145 289912934 763751088 579224445 678480069 410843193 440402668 77515382 368143080 984855663 989847912 70054272 677762423 331385567 464187287 851761572 852271124 854435983 964573715 690721752 950250729 966920793 976291170 116776273 785525971 539716543 649207397 511124057 847955988 239910366 705460018 60417738 816151744 286460843 561412841 279596624 535743156 745060333 938233955 217098496 361588510 579060071 886200866 458942239 522306324 200426662 989173611 53124897 432152473 937758145 955775249 330190965 576344533 490476737 524614525 91995045 934957176 688980131 764829233 38721850 486927402 258600895 682138733 841325130 995770541 241292522 475601873 753934936 928081679 527476602 974300423 402852638 677933494 816203979 918370898 821269131 905463376 977253449 994592688 985121243 993480023 629694332 774960369 197317144 441994280 229676452 832560891 806990322 913492740 36928088 423457080 760462643 909044738 507690119 805947650 44495467 908602844 238884866 959794439 178574413 505494377 266317943 485242775 947053655 998478535 383802914 645341027 168008506 762787977 821746712 861919250 701909722 934329005 169802410 423662328 664825659 687620456 942248964 979626010 996973640 997470793 39511304 746254259 152737017 245646489 951612882 974383876 929397397 949886190 624067955 866104272 40561934 547056917 733992715 935131667 825614728 912194900 151407218 411436677 366113840 598826521 981204579 984474820 81537421 392004531 941310899 996108783 883063785 996699490 287622606 561798623 974522777 992422832 480289508 584484302 370499919 451527403 814015209 871984963 955615673 973086680 107871201 852562890 427087045 555692349 287532748 789472546 428641898 712854094 466671932 766798625 731311025 878090818 132453064 212329492 908073582 978415607 51530505 648511797 289208990 657300457 594190994 615725975 836404427 854437218 256006850 301174739 309580223 345291562 757950835 941991843 285596409 374810708 183249519 575900228 801932386 834658875 451707858 521052914 274137564 552963403 809413796 932430386 232154794 871770036 418831711 918218720 611153688 881361610 899325631 910717009 647326465 793617514 465406540 570136130 141749826 748809752 219685154 698000389 542539995 646012751 377883569 928001116 474286901 769720376 944561249 980138306 437915643 444443424 545700929 902463656 351554580 618742758 968639151 992644472 505478113 983641289 122933161 955935457 184148409 517122442 593563056 603432039 253895283 597484704 801257922 980499319 220404751 282997639 613899795 862563383 525620989 669862136 591704381 732155305 680497197 854808193 315635918 627246634 761442282 975840623 674055837 800614924 339650608 620254294 213229788 765599632 12840784 521966652 990927016 996014469 387396530 437774512 425162886 754030112 625529928 869026887 309882931 839837834 544220087 903940667 668145420 697538344 246102627 269830768 519817109 847626133 579624979 699009510 817726377 937908073 221651734 808163184 912865807 958110910 350859128 704669038 594725164 628751668 976703197 998787969 647409958 821336605 877926697 978723744 595116074 779530533 149369415 340904627 537303982 894682101 350028231 989490632 457364520 716271401 747900144 825629608 842458980 998971456 904839860 986177762 136815186 676836864 62457637 594169639 523103329 662065776 24511718 541550241 710529301 897042846 189351538 707437229 380313941 696566560 54374755 414979816 310633430 623258990 191126760 532897823 449410440 813941297 991985365 992702703 210741428 293565592 146433240 241507064 734989961 878513792 636559162 677427073 419470073 577719799 358213852 484165136 707829986 728626863 450778506 694206941 12021396 923836192 518014851 583398516 641642567 944159313 499688623 593459469 57236107 633409894 106069725 292643787 299800240 917120221 832877599 864085733 376301573 949899543 21766703 232665053 263858692 536315335 146533471 814355863 309213400 969810094 852555838 964619237 614745193 987748960 362972820 522458983 248965176 735455358 321422031 557911218 339935719 562292840 629291134 655560608 745659829 919006622 600325942 628683076 263275673 956037494 373671226 752971714 919231029 939195629 370615070 726294415 490327691 913257918 848439167 886817041 63468290 574429920 392547609 818392886 765331242 948956367 509390624 667762145 18012072 120234471 374970365 549223144 751866494 944050975 264749439 959219256 866681314 988284552 680785375 958660443 426990158 446514623 903302022 918285822 68282419 436136768 401182876 647908942 204269863 737077918 156731601 178621021 546792786 674428807 771559109 847402759 450331188 758249672 188035308 839505842 198957662 449308408 100501423 600912440 743789634 988346134 505737918 729005653 401082318 494478903 318122273 773985206 961974889 990651012 173339479 770464858 144403300 604636165 830366091 832755539 798244132 993419398 74713375 973405420 171497516 252553736 451060359 532279484 167382971 187012177 765144365 822073829 440641938 527062621 383459606 648165321 82300097 410314961 273623803 339213691 995098422 995791634 272539848 377779744 776605128 840542710 628906678 783116307 768021739 856520612 289889290 293882051 427839813 994270262 379146292 926444081 230289131 774789147 810265605 909904728 528015423 822141445 445035217 789784164 257682597 529187861 471954067 571082710 726846659 748964579 586934939 704456599 442603516 611627087 201633947 339748699 993341324 996875710 790290888 848265820 56297405 296638576 739550110 996435922 204965204 541333999 462028838 768586535 821651825 885144214 251814139 926880687 279694055 608656023 591942205 610708544 758950236 916652983 465488980 622825288 921088541 966960584 239462110 904170532 23090597 534657212 891043721 961291081 947139697 992522495 509515303 804860008 687613639 947906864 452432782 493757750 658412730 802574766 79293079 275614120 820507628 905333087 741305218 920594727 238908538 933144725 838043368 958688721 114389592 741941315 969750158 970427259 753161433 788993739 723692335 775572843 758202645 987817840 721480832 787241129 408822396 494731263 501199582 971290819 871077304 976315122 861263496 960925470 91836032 323028906 846908889 984657037 189433791 808185722 488628870 756508425 655911694 819277924 426220829 634537269 187990140 380741172 456427231 520512473 277024285 739172272 796925341 887822912 880414922 896619474 548082266 887378060 625881531 741503045 177486924 428297007 155269568 162293385 958730871 983913190 429398010 530732467 293425987 695543401 852848512 872672623 474080440 907805016 840721796 919021854 921874081 935981823 473544840 508485477 545272413 590699507 409056398 958297703 216476584 635399168 274875578 443108429 938972167 990655457 571678037 807865827 96295502 225480018 81361839 245408270 58780267 892752522 164863908 734549891 21083541 846206141 699043832 911987513 553896507 680040267 673214291 902691340 769774788 972750834 881617251 909590721 512433366 649201329 353480474 796741203 959711386 992102505 211626817 730687158 471099782 718396256 499930809 595690375 991195258 999077610 231760020 785667714 191257853 978522610 596590837 847546851 877653137 918249928 48118140 444471396 333260798 799235191 966810306 978092410 492560025 787070643 76265852 530298854 464439625 729452858 612525463 798346029 184054033 730398602 876836978 973620793 246927845 581716397 645413985 830566055 242070116 501993369 109545477 479489844 227345691 488793015 429279227 688989351 176788626 483297137 186592075 594399219 844937502 879430926 180052322 900299456 737560349 817417932 137546722 770730992 873847452 980200897 246650735 379152649 149393962 944981232 77393232 226936904 843195857 925437040 171592472 965555680 50896471 975841846 479527835 646555512 68717685 313665649 758692526 908606634 614011708 838607052 856237390 928567350 825690475 894997267 177433756 466865079 518694435 811293131 614776183 779772122 296821296 812625741 965766590 973917611 915111072 993753812 968218132 982771722 571465303 933927450 492750892 717879200 351519278 526660855 167826233 249971919 11825081 974864883 509829215 816947165 982180490 996917283 351201190 560237597 558264740 967900757 51961069 125586158 329815113 526033212 219308602 330182043 836451143 920925272 536472927 823555626 247366133 469608095 225162167 865022233 798435393 827994030 312684087 808541609 497516429 848819260 480214105 695198992 698337445 936481477 208023198 459741048 979170992 986356781 419655917 564349479 796367263 811837936 465851366 744993202 563036886 841895883 666842276 745700532 105802989 611245182 531801551 641557723 153698938 846805977 301453897 918640786 37614682 145261062 19209592 400335492 441967431 882740686 31201769 973296303 282905519 554831083 893559881 922451494 668500790 831918860 173685751 511411456 221448792 588192866 570950253 614404901 560787409 795798180 53189002 610428484 720077032 998045993 772563285 945016149 590603683 741004961 189257727 262035955 642516989 816427985 990939912 998060919 80327303 836515064 495508786 744375623 146480328 972092212 935081303 998709348 310156063 835466871 344851419 366388173 622564108 915373302 576575681 980740261 480195472 637234680 332411132 986693210 83496183 582434823 454104334 914008384 312916158 543888513 524015106 621922398 917487143 931581150 338651714 862456148 193217423 940795815 958914260 964982266 190968908 205579951 44547902 815575160 579790707 775520405 255593498 934815481 637122128 989638375 706684667 825916185 437481084 504527540 927430368 980358522 343670841 756116182 281135858 409343276 258681276 303092953 91530048 926931430 673489370 755698453 173255687 384360681 758777175 813282920 409845156 782317471 694825330 819946728 488598291 749197486 67365390 489441517 241441382 921919513 618527794 861879983 300351142 831437830 651803470 897519111 107673986 921859068 405836700 498229516 287817504 331975447 855631328 953369001 885034217 893522388 810314910 841055892 375912205 704369210 322480592 750480148 426531827 676221316 322865903 659406864 697814746 941301442 271765141 678378161 545785405 672490766 402373971 588182889 281539430 344192159 245043628 746997125 292920041 888146411 767704315 957130729 18589885 725336501 962501100 974071934 243899559 438297391 439601057 794674933 675066171 979278684 323696125 742745153 911663287 935878544 476878111 612320656 126368231 918901974 841631699 919440384 739590512 873126133 830494810 869738106 182331629 597042245 481606139 613998750 497046281 661841155 38070227 776051304 537642482 743692685 963343287 990925015 960248748 969706709 143891528 615523007 349157237 416134365 74223068 289631496 985036195 985867920 672697834 898552374 835146333 835251149 44545610 835722758 391304184 435270895 867825931 941432980 345156 865192776 782234876 855933251 975379329 983366398 994101231 999089460 816748686 839883483 88709348 242144678 826839974 918563863 820525189 846318459 193183539 502260865 814431174 832704671 24740491 855689580 951869511 981565161 865851304 962993855 986735693 995237846 390507168 759625784 877433872 968989032 579122807 922965314 252810319 865648140 5779510 549305377 233690289 758275037 750648587 971294433 952250901 952592822 684347361 756500124 891000307 901421030 157811093 514882025 779423168 922825409 831831357 888803023 988339139 996499758 809317479 955988507 916945329 922543198 726975323 789643700 679704516 781562515 278045122 843836599 283655855 742290996 296387252 590585261 216591775 278177992 799110673 841511967 706724400 757756304 593658013 657354271 259406291 773836070 95108689 278330526 614844507 979137876 96588534 189969034 854065419 980136611 781750743 874638588 252334287 329201247 129237640 310099167 860316770 921958166 593155746 961014283 21629633 214360714 867383322 869600141 871513172 894030632 733463520 868726067 246479400 457919297 780690676 810602478 584479118 747263774 176952610 954636648 728268989 898206947 453180196 558380372 76260269 711691128 111865343 168198884 556782019 871665263 820783222 844690493 280763202 751805389 540800846 552573259 386410826 701702331 604889921 941362647 512373978 894221012 70395552 383088740 649410734 887820573 425003218 678749468 339895638 624634903 286887975 737335001 406861499 591007569 700887303 884408068 387166425 393206291 189160184 799945525 544078153 877920757 290642491 741155559 823613745 982034322 347256815 995871027 629104362 687623151 283950970 321087624 540163275 778093157 397579480 914327883 240858805 692512260 27031618 915507444 494906476 778286630 791089422 808845456 373048026 809307043 544338014 938570897 189151986 663667983 850276113 970085970 633953353 662948227 874296587 897917231 760514743 923364796 854802039 941217901 690948345 868854275 168497963 709045626 642989814 942558658 712002689 847502164 446573811 512791422 925897662 990160230 340098859 398283691 255078912 780308211 300962992 876092670 68173596 572437331 387203431 394688861 409470744 967278932 437129153 883673123 295287028 960432414 47482481 160544300 506941218 626210490 260065938 796356049 622281298 646413609 302957370 604527248 785957040 893526026 743269534 972434788 52566300 753091407 140737026 406371408 75085283 764451876 901429071 987818136 467664280 656585628 211109621 787890694 762801585 968843980 378990361 480186629 272411963 905732795 163380941 861968854 68576158 768288138 73922178 601607379 562531391 563944809 821090289 872491081 447505196 545358822 528201031 984525114 134712384 172205869 647361898 885907020 83752015 869019958 692698035 975062112 189322580 677950857 195640904 669900552 105557824 372367336 833390947 884039521 580609177 974784935 514527700 790852442 972936893 976103094 912908670 920867427 786900770 829801474 141488981 898737400 883480109 913149568 913931232 981468581 761147630 952746014 519925836 743220554 986191807 999081749 467036246 815928828 967889975 976531753 165346148 760006246 166468567 446906577 415605180 617456192 253957110 750620457 645527095 722071107 853446414 920370487 389106344 443700625 323017944 801007094 129155556 926565793 897637876 909057511 194004268 222790232 109303641 720136529 986066458 986664415 992645574 996770814 238837770 426848900 996639520 997035866 235275575 754097704 252948365 526283802 84727026 117098981 649364023 946957875 780975533 969679076 351986815 955595881 267273052 373225524 877902820 903922893 324285727 492981218 147584983 322132446 255917017 633270991 436357538 801409549 414594183 929533702 462367374 658660999 874061331 987085334 230452346 323454496 285824231 840494968 891654785 909385769 551496280 590601700 812739592 867811994 204044056 258921160 223842878 926672157 900090231 956520447 851243474 922931817 806235288 936165868 432555226 512299143 856613688 964954328 556356415 769567747 307679804 639403852 156217997 821228166 954570004 961082744 537888857 601756566 672967673 997539823 67876737 795703817 963533473 986996332 859916435 940167270 441168055 502178474 140540718 450224140 268465521 487319949 357064003 740369483 630849748 904448937 690134852 945324920 521236442 750956087 155904288 483511835 451558115 958653461 434558652 660259353 67704882 711904176 448982426 758249905 392472318 792884414 830940785 930588910 734870696 902850781 803010642 804427868 17512885 977935214 665641639 946967405 136199505 567594791 354086935 377592864 685819552 735768200 121512238 392404326 341672842 577840984 506812245 686097285 122115957 531825913 342042196 787484422 792481814 935401839 886562205 923964741 849702756 859487976 669540422 742794294 81996717 409787011 895793486 972399920 361712408 840697631 190459369 231141506 681282317 694083309 779460943 872739710 384218966 946807012 686508431 843999609 888658592 949618185 262482804 940661263 966528237 990673871 189516325 762600833 651738631 663233264 202168388 357791100 915602124 966443537 365774781 458806530 72814562 237122296 664141588 937766997 191198952 560233146 279437743 996007846 433681056 939508052 215371848 922547872 942238084 968262124 408141083 908111653 722780992 794118119 794729470 908205314 30223386 696540428 816233854 962415212 80675758 685039598 857014880 893163798 790256333 856590596 536079788 623751272 983539140 997386962 548575750 775908003 132936932 316417624 767109847 829753539 377894850 611720251 290788187 570943277 958216216 963885813 200076110 787257269 786351653 945840536 348510927 805181876 372593801 648465618 672282113 810489852 841974179 856146997 143708060 638635172 679794840 898647518 789425399 793907086 492446763 744251192 79746620 237540612 840768245 957698901 277677966 836001734 588992570 696500423 940620904 983726566 650943127 941655561 272428111 601183509 865839832 870470578 804121399 844701552 231858683 761613424 69311059 942919514 68850479 194049734 786415125 816545025 385123872 397692674 793012277 922909793 849915793 945714192 997911869 999008114 994477209 995923742 58204680 637462671 991756291 992414621 145280546 746384836 942640131 973737121 867918993 877487250 668869300 779344422 523166140 767844518 470312612 965815881 948431854 956561210 333121015 432266808 922576496 996460261 61781526 998669882 543426686 549468615 271549943 699585212 69866851 965842388 429129760 991783232 823632245 847175376 982951163 985604129 687101251 756308065 80956153 822901760 962920651 998447131 194578332 620402690 337311548 776598966 516396631 781934772 508416609 770204309 688504600 977102602 988822757 991492275 819972390 934925543 586355324 806653374 562290279 576478419 824224916 848593418 406154547 741511640 330831730 403192237 549980120 942217888 225060524 668963759 163082977 367515841 778745976 850007475 966511747 981297370 755330698 782286878 741564978 991314216 947388439 967525364 362268967 489059288 699779476 960766278 393669014 845040591 543690470 984425053 7014347 284699041 744116939 927261956 894230530 925165955 225301625 738150613 418595592 422048143 796428502 860615842 4857804 840972118 961109396 965428493 48388186 895366765 741085036 989182753 570269540 700767161 592240234 841607103 90208376 203950722 104470584 337572200 895040598 956098716 683029139 803046533 965693546 970650665 883210590 988959433 306244650 764279130 987417766 989157042 850011197 924554589 588573924 689839686 948605165 988383685 587882235 701857745 57604940 794252557 947272874 964049035 303247402 927217357 191623758 298899005 290967654 837332278 386255099 871528782 236968588 265536558 492165000 524764893 612596249 950639689 239393105 611526896 701112481 929453585 169072624 889906268 608207843 997290735 735540879 841691053 198741667 451039946 334030154 499008792 848145867 912972716 383505555 638437412 926307455 946133235 790789366 908603933 237156516 733727172 990458129 998162604 265356054 339348764 228554776 448554486 968454563 975046529 810545902 848162114 416577750 651970350 256438471 481669982 573900236 878998371 765466512 881305591 47170711 802964400 713082652 896556847 405418227 845563321 760001186 788527215 712758458 860921679 972214369 985878782 246170240 307077433 288910596 787878361 310993421 480701673 105704973 343769341 979745976 983506306 62730176 538070708 126555170 415472880 654427569 708567053 752823217 770799510 940394308 995977139 791958868 940718657 538215045 965741809 876302335 924654060 770226117 990542248 876576677 879329662 375435553 456846086 508729805 794745968 776685549 815015131 873825120 886699068 776633295 809633731 442284481 976727274 614278855 920675284 521951152 558259688 773074426 877570785 346930255 941137123 815403652 853026865 155623271 761253345 623948255 855837303 485179129 687518095 402464238 767549505 656876461 832971101 25267709 514027866 32929645 791247825 921739692 967658764 701340757 935815238 592781093 997012339 773364468 898372355 294486115 917898839 345946404 524911907 708676855 879900856 636285641 803584320 314457124 610245744 814729471 898747292 894149243 924601751 830240673 874103809 197624338 357706015 64918588 636932511 923727542 956037712 716078559 773766641 782710578 788290056 733865264 737723236 40514151 141262999 600878211 687991153 598753241 946904534 347532248 950430215 202715068 563835887 432577789 913021628 691463065 810744626 283920634 669681344 614244837 672478880 644085439 659315278 19782583 291586795 110862263 332085556 149349489 231081519 607301614 891085244 585189557 857252545 822769212 894997420 611492804 837112419 13845437 376764551 909346908 969649973 667799410 846995906 401968302 406683837 142913085 479530963 984405596 989511579 135625647 782002204 56547596 913910806 979539866 985678675 218257131 501621451 823132074 953693573 152620551 316173867 900337021 911543686 713699375 968037471 383597062 482557897 720396204 885404173 962792172 985354708 573999516 807142893 637933111 848919557 126764226 224625873 784442231 815019510 631528237 998548011 660537932 878921143 684967438 941040807 903097860 930801165 636453654 677391072 735549051 784715283 371858867 613492090 772754067 932101938 92963511 190069442 623194739 877265368 63830826 756896585 732454046 956018580 981641610 995607825 718211892 737027092 673096968 884187366 232109354 806898823 715774440 886837503 942269223 956591055 57244924 527361126 550197734 762444805 297253878 564893631 183669900 702151957 197364334 903298927 928595526 957176720 848019373 924139423 896174854 918094841 430416853 933730482 511217576 920549563 774935922 794001924 332787258 575495821 188191388 649638596 310851173 946527112 123721630 848302463 278570976 791936128 516570145 763856769 778498430 913863803 851415552 972452862 607502699 823228550 884914915 995344118 933295810 950862070 393705499 528235267 112010172 477177211 647101054 916606848 785195541 859760405 922628796 999028083 185945898 897505115 942844160 964868070 225485153 657730700 460616378 961160181 311962033 966429543 543569576 855190848 996302570 999622712 248803320 585927076 353490637 440333234 338783691 840828858 310938590 675579515 627935079 965399752 315161487 542356779 949821784 984543970 801332531 859294770 178769914 989884313 371561602 996413798 423390265 681993392 676420754 822930752 818347017 843040707 980494486 998233788 638436426 772134865 85463650 291916182 433743593 487467130 994067034 999371257 761831828 959587503 566029444 884535242 581873480 757487947 184585985 721445728 107747202 897430416 175907560 988276990 186804976 860950720 176351216 884561552 267455644 540630247 459120307 801680127 181308596 348914764 924028356 947025828 513997869 682979033 732240427 857333546 701060217 985164582 282927447 516405344 336308381 887599625 41223250 861620257 71680245 792208425 103824997 745313253 221722838 745598436 702231395 824651494 860433041 956217470 10338880 24875624 687486166 875284362 364761700 454715811 15995962 894727069 912784786 952801726 407424777 996228082 230556309 957914730 844095546 996901277 732325870 979526932 728875405 782423363 512549557 847011404 542962802 823207226 734399826 856987973 560790441 916819801 531804262 883067450 502804808 542994596 810160465 877548184 24173032 452483812 492918934 525547002 607155631 934347169 722330807 991767066 638541153 959458386 835550709 997702946 132167819 484642362 341430154 983050951 600784092 885775332 238519097 426638723 975516022 983174297 110213536 495969539 28477848 921111918 422159549 481996879 806993496 807152999 382600877 751364923 407031005 855231926 827334934 931490539 729363773 756978370 818110247 994913626 1084127 24403878 959293017 962338443 544737322 921563564 923547632 951536892 476438256 488397018 967390383 986240834 19171409 174810949 657764739 952309007 13770084 803723741 209407157 480411518 865430982 894911085 245148859 934686926 213407556 472579020 835058175 943336353 749075048 858514362 999771930 999779440 405327715 625858695 337053390 796326834 155634274 686312828 216986237 639421785 544169870 719193147 662842012 991773410 889413850 893227490 262622169 632298180 836628113 864038470 170282695 183630566 430728656 799088148 359468268 406264788 569191797 583855894 136542193 612561753 395544621 564902006 692917929 737293782 996247992 999383918 63404366 584044198 520848719 780691831 963397723 986856842 816548737 955604608 285467663 746640848 351795393 682558597 535249390 874464935 364921341 480888176 753398842 924862763 864621355 911172050 979956998 986283206 208415107 628530977 901164609 935788613 986191876 993562088 985055263 997579505 805696617 948251685 709181569 756956903 562939265 741060581 759756116 895154431 277282040 418639343 6565039 540895821 842126505 896952024 978942 300759621 411805304 742809124 742127471 835267231 473439558 563305332 8452638 167918622 153603329 168671807 378729468 596245331 587011658 788346405 546247998 954788291 18878061 327574553 688417735 980003612 903262514 944676349 576772284 729970198 16507920 938466926 180992866 294862969 805589788 981520538 311476350 339552772 241180354 899830648 288432372 456761115 472978156 561296129 758708229 982376393 118853216 350185959 624570323 635703006 797693317 901842255 301510075 647185881 889735957 991679948 755716988 782148588 495964584 743591582 245066661 649447168 626261384 849898327 306754391 506625538 52167687 551105143 281384083 938483478 140227232 887514905 745151036 962832989 869187218 929902377 780122622 794494071 345099247 974620649 626541084 644254233 529134075 568698211 620991232 784105489 987508303 993711583 174913551 948838927 613109437 753345793 526454742 596801353 156742457 543899205 289326642 942246635 165340720 820076680 391942867 892223440 972642467 976409012 239689974 930768168 84787004 371876271 868349297 935936302 92663005 323344620 792149285 800967500 683267277 999517717 150461737 413023744 665772483 849211128 316884854 532680574 740545105 891551934 686274150 859668692 740326436 768333399 601120264 947433435 613132871 780817124 976917193 982075357 979176707 992295066 400488390 900669290 328544230 981871570 968236488 985011589 133705191 893488374 345697180 927915456 766975718 946982649 392481095 736146128 915888881 933549043 507486157 642705036 204764766 900289064 667481064 741355514 642491448 879439357 982094468 983962137 729738658 898458599 154890174 563692208 946728159 954767815 566945034 759205236 321665139 678242286 992241349 998770004 3050182 4617689 892669321 944322382 682697839 821839081 441025228 753767294 251876233 708684848 418252200 484629872 888341186 905852362 292904008 727192616 102438264 229140503 488899458 931334985 234869022 706799031 304604894 513006251 232144963 877697830 662072466 891787656 275778705 523268083 895109484 944011668 676671441 942847875 744218941 749661140 302408147 812567691 477500473 805823251 667868352 805675461 718203836 756694952 77222179 681212153 930512113 942092542 492789925 698708519 239723184 480851208 263031376 390763047 163526943 499147433 116655823 804936723 645241789 913516583 408443231 705639950 627145903 642001584 50827054 816470873 506643741 826187504 913755519 931854086 289348943 508457516 65543051 802851729 328681258 609751678 354308063 666473724 822836019 941901016 709000752 747252870 595097242 663684770 901793651 964315551 915324603 929439250 30084824 494774293 222816626 757356996 159217869 568281753 722484297 920526882 29263801 690397221 724821331 832300222 471021850 482049281 342612536 672257289 11025162 218340644 870128793 880419927 762977915 840084881 942488321 944211576 879582808 949621725 453615330 474308535 142020888 995746276 38898698 553163975 262853155 402630788 22993465 629232548 519610597 841158985 722741226 778357034 695237442 719920719 622263423 962476060 998026886 998666991 318992548 519844253 56494750 344757365 16332460 291730416 79817480 214294290 545801809 814977206 544722047 635014002 498509179 993693358 860011541 967872602 524658450 632257315 566621566 869337519 940020711 987330006 842353348 882676226 694312352 734824607 786706296 893770815 137790505 150213320 81584252 953834796 338394511 774036306 250048415 874718367 706198618 860621397 39321100 933522712 946388896 950060450 881674896 929554904 229579749 397167531 313959307 808255302 315282299 670751345 237065029 588931918 744781527 950450651 465288914 723754573 164169073 553862974 702848125 840430057 679691712 767860953 143667701 939402153 876371259 927105908 134161650 832758290 692376934 986084329 801277757 971043794 215199776 319846754 594786658 706874169 620486479 673837749 62827271 190996167 49990437 463959365 137232891 931292495 479795563 908616532 12818881 288158325 102859992 898271813 843108951 875772870 433979615 960525434 648143571 724126616 761299518 902949616 719485091 856195057 782120916 918801381 702235028 779907889 307682790 683187784 772370057 963030509 768813422 779294813 440649940 685218764 984362412 985174235 248548719 352999768 724836015 847822809 613541259 865045544 97405241 667370453 783079569 893307741 245969161 767855883 78528687 715303922 237275583 551498140 445097014 716238279 603349857 664386085 615913064 956132734 500691492 682573531 130886368 171708013 122979333 448862501 279462278 440305341 850310163 899255763 693182125 766181041 151136308 166234599 884499078 930437224 144333800 760715416 307433809 408367088 521344748 591198362 368672448 956652732 324093842 389809194 136700081 785777126 131094903 215843029 859415501 905753166 752847934 792833639 807638658 859538962 295480055 523135386 633188425 823521861 837715967 978481198 580219726 713280257 914785991 975754450 797426525 885027139 661456709 987326295 108031486 543236722 38294375 491858611 718387062 930948098 989751895 998183560 732227430 804097772 535583152 928720051 151010627 894615228 64288554 867175966 316754797 438914138 887658647 928565861 603509287 654468904 259257006 730483645 686050939 934390107 568884995 891057854 23039701 615537695 307059290 327385316 763292101 879408445 513765033 938178591 628868988 977639503 185613700 755962331 398787096 806569877 526188339 833371560 817583918 851370873 345870036 377906354 308372705 537306047 154087676 953388545 528325531 890261559 929826271 974302905 399029289 522403693 356785573 482586778 896511134 955439465 92947969 799424386 400013921 677297535 392256188 833767394 277865875 800584509 626949940 922854106 873025509 972904221 570622906 677036414 673524581 724754942 711403780 921180885 351707434 480592056 244805134 250584859 40866889 675993841 631791056 638417012 962832045 999696176 688258074 695217218 402187552 659564261 675668693 785501483 691813845 784128884 267565171 797776406 484494989 974733362 875625027 953789779 147120449 729388607 532515705 907781845 185075725 336354024 345096396 992607286 290471632 385927521 462402739 673931522 57055211 886682857 558376989 620070844 759396305 807404587 712806067 961913457 348463126 875027992 329236737 495622082 313043595 788315069 599168367 722256861 213445909 578384730 15282690 215958971 329647297 713400516 172139956 905876552 160595111 371994236 708626488 900981497 852828166 869353664 717147567 837873849 374237274 887565724 398204383 982326489 32399858 314417079 66468172 553862667 83907726 591601416 119451290 283816391 853776593 855708607 60368288 191696497 734898072 845346355 812632846 892443592 164766191 667008898 529919723 723442570 269934610 802231304 494467010 938336071 331555665 804326219 53267047 283924653 139289981 859484361 392217634 895385599 86397983 458368150 535862971 562001709 145892828 795421642 252142983 285904177 318553388 523746009 23688041 696518467 213380979 877339297 483800548 910808648 707676328 719138976 758271261 768465237 8243786 711346948 874543489 937937530 554200864 987893499 83641020 996785130 855307538 976288484 244532390 777341922 322515055 652059510 422564777 593709940 785776006 925171173 473879876 776511381 384047524 819839395 486675959 526866679 580644796 864002977 282884812 522622481 672711163 906562066 384372222 717992242 774412806 901397934 179487706 551134202 682247109 806242268 115330443 908755691 187505939 818424281 345587626 699410706 566327663 595248255 507793048 620741338 521072027 925559002 975832380 998839494 363592079 615895258 170869840 217452079 494981351 911563329 268810961 815116482 226439677 318801005 189223094 531466057 958305204 988661318 350094257 738077298 784038094 859313744 981588470 991988184 552352581 590768089 471519191 861269220 856274756 947543256 383180539 822814178 58789804 410318958 353717161 777866218 196240744 821512147 999876771 999981927 186606386 988901024 535555867 565293919 505533558 962693540 635995045 742851937 361294652 505655695 811135256 870750768 140432194 266617999 598591951 670020357 557321765 599430825 87777340 776676992 907890377 920600690 892573000 993338986 904174822 997392538 600105402 886956398 705224570 807711339 702639351 779125847 569325042 980173412 706114648 759086177 923676429 955576307 316103638 386287098 891432633 925295783 789536170 867021289 569697175 938276429 630348111 948967435 589701843 815179612 17483800 298348454 931932404 984628779 909574925 968102722 807931309 891719550 113818379 762368794 238788348 302329499 340668216 579137841 553898571 912836171 827516916 912257325 928372227 971124135 681803792 861420425 920343935 957042471 848749266 951165812 134154505 535683242 402631363 619696702 91890218 465771687 963488755 966556617 393673501 677691837 783110739 803310543 211183746 553006563 686913325 868148212 528716071 929892847 882657380 894271322 616505585 649399320 231526735 532409288 199512095 504162294 384475078 756206961 720431670 910183124 426824034 628942350 567004356 766081261 849222320 958458976 116136364 265746912 523068078 831045026 1817582 824673244 364941962 831643870 487570771 753746142 804189932 866093879 983160623 984244632 164662650 317271509 641138096 805679401 327780171 746613600 553733819 584061752 749663776 826875514 388830358 943773074 695829549 712274709 203548543 966532432 144431712 458415633 628952063 966283794 834075840 983500808 739823839 885431906 958470302 970060947 619815377 813966132 116860830 307473641 22860407 117996956 462331301 620587907 105421734 486038930 68213421 373731230 766987632 880751004 793411414 981572897 636049462 872860193 80831732 473895743 892940129 920122851 635174601 724229230 908751644 922299081 449900535 761175323 60182337 573939239 235586879 976254510 693500053 762539446 935402207 948568785 331845555 794626773 559730469 680790704 660128827 992699480 644563942 958635069 979608324 987068051 359841384 505441299 549418786 963556809 586796648 656242409 877317852 942506707 635103314 799060583 511674830 614097778 936598392 962806603 598297083 976119279 518988769 737678262 323085365 681903819 864853263 910552555 535644608 720263515 176098657 467921832 990282639 991671203 882610895 895673854 419230871 430718432 191737274 223338851 155884661 945914778 793439089 928978181 538285220 933754142 296101249 467124793 236244463 348326195 638500012 757807499 288886575 731879481 896407472 937206233 496929248 646882149 134549879 773671280 715940382 790460446 728458571 959620687 600616332 668903979 918625977 957373139 647486223 716842527 982700661 993919818 759454874 808246029 232259896 235915622 109146817 454798019 44969170 522845343 983276662 991037537 925867810 992700656 81914357 337580372 370453162 749104079 864053500 907346620 944095467 971813139 97711957 582183250 29479181 679002595 718097158 818943877 781156624 864098008 47265887 330711451 242492967 569093037 998239277 998942500 476114327 519828287 971054033 981957826 122919435 808768464 490842516 875730828 315535595 893564120 223656263 367796181 447514901 859316796 999070681 999666279 316188329 772691315 896446110 916788582 838264431 865804506 151237346 377165982 172080468 902528815 606715085 909526411 706198505 812308461 865058386 944000128 295522063 489097070 81525569 907768670 501962071 825336912 642150702 661080600 288473397 988883581 86998190 297194477 335074572 570510161 837335377 897373946 698461925 978766115 150218858 644642624 767224921 851865465 962984980 975565820 793778164 830721165 852036535 989800824 951360150 964470194 560731766 762589924 367401868 979162599 809459436 927185604 674050701 739338554 374859673 609097702 57713385 479086375 279595452 688456663 387376273 737904570 853681004 973825461 65510324 759731681 377755023 579564754 796334207 920512863 613346859 758574239 4026838 74402243 723611689 724499581 885097693 894278293 402089292 788903628 867022255 918092054 339137014 611630095 810276778 862705882 916830105 976813597 54348769 263072846 51176289 951647360 614366514 682922940 677142819 761591832 546604237 817654545 11877983 471831906 985028840 987048287 567186563 947591752 509737641 903624771 282141272 645564984 820422167 908882761 695828718 706642053 279458529 527332905 588824278 794328401 269829448 523414657 712016877 716896246 396047919 513906034 295959913 888823190 762476365 924182069 957799587 992331588 57625510 644788809 95085118 454182063 254413051 565950255 753984550 990975080 516547493 879530417 965228422 983001669 36685931 512084484 645225709 744363478 341012302 530770124 115238019 595816217 851039989 884770536 105077137 799961235 340897467 999747620 863323925 943470534 842390406 880211221 584269714 610529751 55476466 920407498 922643658 962427979 639997799 875413997 476298300 901557000 745455509 938330950 768812804 889183575 609237842 929280813 565077498 877774842 962634255 967450740 680889469 797105993 139985888 717902729 91821578 344426061 757978591 899166986 984913474 998928683 999787271 999800124 193346556 410903330 804967154 885756357 108277166 158376196 719109030 953302435 884586713 927418540 103854473 594794957 87859687 111050661 216043044 994695196 612619181 642691955 152393528 498416923 883228646 915907389 952800810 989956617 290625879 906973185 567518167 638718904 418854755 435867050 288400406 326548904 890175653 951954833 994033762 997483708 677463052 723062508 607557466 654767610 975059826 993429222 579759353 942085323 134009805 943538116 635455180 880388192 453550883 836176378 290394632 346820917 386356592 644389318 772465168 847739416 294286218 943858427 358934162 980225399 192137903 976390104 597588493 873962825 484779030 564823753 519888132 741662867 377407790 846343806 585346096 743149003 131226980 967794847 549534673 627910379 534729678 905734069 562978326 915821087 19386876 849263007 509792190 540106689 767947743 790494098 14284603 582962307 201105879 623936679 483361624 939060517 485637357 583684347 460161572 529357858 452096556 871949353 307522651 579048708 727604298 947403836 768989847 791713901 935052817 951130049 517095432 895010584 668614587 727117258 745173833 880155111 629969569 874161313 580277192 588793644 873625261 887468780 101531579 738025106 38497838 938547667 447840032 818127298 173523134 274930951 592181233 956821497 429796074 630625637 630244644 646643882 983789544 985959010 309148372 965930481 918522113 928413305 46412196 567173493 900886620 914101162 109452511 961879613 167847358 491527173 229178223 336135667 72590851 314096094 601053384 741570474 165132855 218529973 568985998 880133486 318954516 679410728 474184780 521822541 407083632 608239397 553128482 749364756 181298 951874421 44116760 844621723 199311669 942097986 194938393 645181550 202133370 871835205 17050335 980751492 302982413 385429003 695104268 815250221 751197247 979988392 611755380 644269610 806371063 985687790 605511427 947842697 283628029 555430908 340246680 679634550 2010183 175173048 458030172 490018642 269319003 555585904 318309018 858474986 783352904 975738892 658633096 745854766 973931623 974212719 886205263 940655948 44506629 924387671 533317443 838506773 677155035 983250196 701987539 714559433 58816213 259245188 306475210 879602352 233174744 864949882 269361622 948151330 171156768 752177068 246172896 910021437 299392979 721251197 741303151 973147896 387475644 533514676 642453374 931620807 58545059 528207379 314849143 791629496 627589267 642252031 104726219 673293104 42599301 88925103 35413028 230919856 108455276 927462616 19589679 634261082 859345342 898405245 340662280 531603434 921091021 999705121 71399510 673853751 263648841 528662824 669808193 766631368 656806161 723249267 338203076 817341982 512627672 636954627 787767824 816363766 40670669 842928466 226037523 928173103 20431214 314314030 177187900 724608260 872667577 896538002 57841365 110926992 529633340 657069833 384279548 940759633 951903868 972064493 478344406 910188542 567377028 658353346 234093721 726873968 112737980 698070554 406485855 774040889 205955599 319291393 850485593 873540733 102194819 644784623 900634018 959881538 631176852 966364545 88222000 521928444 332307132 965656953 843933428 925634236 807579736 972739536 568144206 807165164 133335887 347680313 379633026 398344025 99257650 279988310 647963489 729087702 552437923 807756814 900456581 996562320 335881433 653822720 528685891 933143804 148870768 703695622 939050764 988285402 725750118 966446560 368986285 857413138 351006318 530741694 993515959 994705706 130091608 213364182 950723328 963466376 217201089 942229493 898176377 975653625 762862317 766849559 178320313 284686821 954372078 990645722 747214212 813931494 514488116 992992921 599397463 929406323 451509679 820657282 162985506 166502439 670740073 910382207 351710018 850832360 342703004 883814879 809513570 914179684 563584095 640065513 569034783 980705822 306911320 725777164 146759503 858651403 222008506 483108042 50520023 878316475 428565077 724731199 589144108 976175141 342898993 778373215 262898402 280623989 180331371 332447536 771048584 993182357 540221541 839035829 479303265 863752084 132845454 803543228 482243974 581622738 736995102 802198576 567439060 709274978 893968219 977001072 179352894 414006899 169429776 774862775 203920843 577133428 960632371 969687476 149784633 539633915 85974940 779186424 574629911 937945726 123982276 560974159 71099178 581661390 435368134 643946879 985442202 988402428 677610313 888447611 817253434 833589141 455759647 653348308 803049241 982196386 538321949 708411107 414123716 795636779 507393756 998314872 173750354 617839404 64282951 795419033 270420628 644694684 276100327 347856338 172170193 754325648 152010296 742506331 851733574 875121812 850632337 977326644 276556588 973562780 813512405 964651456 929961086 941469486 51535011 110848553 778205042 899747832 837567835 860170728 207709041 779842338 47267440 404598406 749728252 884782559 394355629 528527125 650449448 784603026 778081983 797086149 725509723 864163898 559410384 749478804 692624120 901729796 440213456 649229588 414198891 959890552 843223812 972694153 257273170 932790270 860122805 880847716 304291334 896168152 835206177 890761990 15498645 663349426 631793674 778247972 19582647 34730765 956599095 964185188 668664176 990011278 600698725 890323264 262404897 716252421 235723671 468893665 325623688 399592569 489655410 583778724 336234157 943237085 140402991 650107735 479960749 508707870 668682740 995179010 629967877 673504914 120209514 972802722 173048622 280567078 390229917 798318405 674125635 945887232 139077218 811532972 641168868 694919942 483431342 822972668 657320859 807354945 529407964 891231285 154693399 881710878 107686564 621925079 229352846 466956598 176027286 768009320 890953051 967641325 385009718 874524193 625593515 803862062 82631174 108681533 433782723 823941121 207972730 281878777 440660628 483101560 718974643 813761049 386844119 792144276 503539764 763106315 938711342 986273433 646549785 871617936 198746679 884452848 850478536 868526328 705796001 885822383 47252640 50866008 554391896 558091911 44844093 599802325 696162776 709708020 545280633 877105250 367088016 573125180 152767447 890310869 767824664 895440457 177492884 654022442 678393482 813851805 639408208 827249111 432497240 646570387 389059939 555855355 384133448 734347027 420982089 475572159 42723351 438738608 428117671 685327198 618997048 837053471 913429686 946562787 624765744 653754237 191189271 720741893 665501013 908847105 980963066 995353357 448530516 659049019 697544491 740733434 237097140 368487706 869231655 955107555 264610709 790000768 497929034 667373528 146623952 287889969 687851114 714361824 165770160 662520131 991130071 999459005 541772612 884755514 490976580 607831144 956487161 989989299 136031092 736477556 238003986 924004910 608643706 838236413 178130149 743314071 541572086 660614852 229398979 885442336 953303515 967279322 154089556 850362127 309514429 377132945 925869763 975609937 445655961 945468611 73080986 153234087 543097057 723729097 815744776 875283197 137315362 914903785 841691200 860405751 62225356 309295753 703285789 769303467 367478545 865074987 697863111 720514463 810308195 862109948 461509675 848904767 803934526 819504439 568402244 807974233 819764836 847338194 342248510 575908644 168851039 663696580 910874746 987035843 97840403 186870723 790525435 878139451 770976232 864176765 484465620 659232370 566305487 862323222 209615357 716324970 965730783 997834420 899649681 943405809 518717596 574401180 675329486 820122213 840940527 873831778 827659282 978354214 328378557 769933885 976901007 992790361 494127045 570078385 586877433 613305877 898263041 966668889 871377735 948159570 106277707 343333515 36544466 614623221 780531250 970772772 75067997 866098469 693586644 809755782 853405282 873634983 152762813 948314145 792344753 858798299 896722283 943743073 747055393 965496610 186773933 638607570 648289685 856907250 75900784 291478509 557305658 704113477 731430484 946632181 133446868 376441622 650323706 925433514 176209498 625960319 317914133 675525317 582965606 777768833 286881547 674799675 413642351 962702966 470171097 759248745 718247970 881977542 985130278 992036455 787957589 915400059 242679630 876291420 312725056 488977571 283765082 309899562 682772904 859314307 703401486 900101901 122792499 748926518 892988463 927970057 457204151 774088097 209309976 994370174 713471105 750038528 502716714 668845086 622968005 973766604 521191703 980605302 53395164 331663368 865999073 929462228 811276365 938558670 886400172 921783425 33993711 959458051 831685210 926431693 755132248 945772354 535962901 839846712 123157074 632368928 836650184 877051025 215152983 908918625 137436343 962717573 596951003 743122876 36246235 220452548 52632289 973772357 529672330 714563267 387333673 556413372 920373169 928782704 219857428 751195616 502502980 994549911 200173060 685382030 257442039 414736073 805354402 932972367 340132836 560421745 983536789 985117447 474462634 686409941 554148122 563338150 200941784 302722876 581253392 826488291 224707693 934825183 237050200 358525316 685207034 932591300 437494776 635783052 145228308 842518649 898487642 914430825 18937767 235774372 738020953 776598063 623139841 802625370 56361403 918997944 261880931 555219486 7587740 593685328 497139604 886043191 400246473 949075490 975236190 985888423 298175388 684530538 18825589 598327541 328863403 535539185 21787593 547271971 512941136 620576701 488798906 652806582 411626891 757387671 419261683 884958402 326345630 347994074 252816048 833700850 877528287 879541432 942341127 999315560 354081395 568449719 340207762 632721127 114470086 181621834 429727991 551133688 305035146 929335684 313684542 805227321 228312066 399760342 395087871 960980028 533127139 910656351 253229045 638934921 424495733 730549587 798525822 893435837 770265169 862914350 579591429 821035385 493277893 941792380 447428700 625087803 823810700 940635836 61292294 504562752 775124036 855048642 139894724 321368912 480868516 985161541 931744052 979277461 724316014 808899763 721087746 793355704 504173975 597748035 427481645 749196344 804331002 990733106 886629308 999068994 788716485 844643697 282412073 322753040 276676171 767552815 779357067 810639944 744915641 844851679 103400569 234735969 55931978 76253247 68935652 744970918 562755260 951003411 345615249 430389049 170117612 349334858 172980550 409373333 650322128 839149796 752695631 983827612 633962799 765484362 950570993 983747746 57718246 899695810 654865297 810647647 710215843 884791561 967322809 983113448 826913071 965399240 721892855 916925827 120326999 832440580 545984912 722638371 241870397 999250782 240823258 437788564 971863748 984982517 768811919 800245342 589839800 888230158 934059569 989663625 590993057 914215693 485394828 646326779 431725181 487657880 442614979 957240507 637791731 979166473 973638047 995158512 685636275 710093849 73975161 586867533 945057181 949011795 558131595 605242387 429753875 678212411 640269120 964234665 677060412 882296853 31674110 71482554 580366825 761364019 725960105 790475605 343592807 682897118 737218896 787069441 49379858 999047143 743089228 928302284 675675939 694824506 217486534 356480129 784692853 812333340 582731618 865109009 284598654 452772492 1045596 37319218 67685820 270589205 474212477 555211385 132727990 422336400 639408466 987459330 135714711 707755511 787234926 896110051 864618421 893311729 775121855 838029835 940015750 966861695 594844257 771539923 895766753 905745073 428795017 490943215 897871038 936060481 968088624 977162654 937523981 981373892 380749899 633847308 434396198 609696305 42814821 696972323 362316201 447086106 474010122 614294534 844579809 937341380 784604752 997785040 904601844 939662921 974060755 988812701 426900830 682225673 523653726 635227444 833224439 913656477 583586835 732296821 814610598 964982117 53453044 384215296 759867174 920158182 55764048 221643622 832289811 866194500 356112360 678910528 225694519 356170365 685055682 877200918 37485959 380548294 666764296 919971477 9641580 498954043 489806001 543570438 287981641 512134654 608378457 989343905 505729712 624500711 525056324 571821495 781677176 868908004 12650423 728136838 581494707 966536062 82234842 997845298 126898978 367901805 9585694 454374600 931598953 970259334 472131825 492964368 698817541 806866545 142223324 716125684 855653525 960395398 669463047 775124374 47890958 543008791 418490236 726206049 831680309 936540732 910697292 987328499 530031584 853951948 725425918 778132070 477283431 729759216 663564375 966147705 562208956 905950054 716723071 902277695 303450198 372892813 381120279 547571943 407970680 828555014 839406504 843779736 711045751 731354278 397465988 955701863 369670467 460794842 692669366 810843175 787218578 794235323 397683348 718923609 225915749 281483758 574665093 716378049 366191014 955821894 994032416 998078916 543722772 887271810 888753026 965126354 567494575 624748194 545368401 716815433 245036283 749341945 439922587 563913523 366836378 547532021 375292616 491598538 788110231 868684564 783381762 829382312 690146385 795295411 564015083 921795790 57842434 284928522 855694080 960009392 426870534 910392793 956420398 989332630 721849378 919481146 919517286 987504854 690861095 744819283 710999153 772605405 530096748 721439866 474887062 887755799 414658946 485970735 692117113 905474587 385366911 624751629 50853695 290184751 7171551 655000991 326723909 974036408 207296356 776022923 30015497 785106764 463894813 843864589 723361719 959216772 11644913 615414418 602344806 744263365 617519621 863171572 257510623 445085681 804652093 872219556 98006002 853556176 715926185 716216893 330223422 475167926 179155740 279504531 885351830 889854616 831534984 948406070 428093216 556188430 621411511 846818591 991834630 992975704 724645187 726233843 567949818 585296987 583736971 879688585 843668772 977071351 624938363 984571484 40949433 497110109 476343408 824028696 171507221 733496776 793364368 860189713 396076647 858667001 969428291 980112802 744239367 815532027 663292266 878644444 203250134 792376054 951990793 968867296 654678502 914836441 181524646 230246706 852599694 994031395 983008293 984607310 698129779 759320156 192495911 492289279 459898084 836719761 945074121 969445703 257532243 329994115 203155640 623399598 646273676 848420618 983611651 990836336 51357117 369934758 672895084 691161207 116234679 441631342 466424052 623083391 131786197 899456584 851033418 928341961 817675665 864254522 307071456 708454630 750509107 901170314 151142968 708142357 63424809 794024112 159949370 653825798 294778208 673555697 466048067 473617783 623057604 842855529 361796831 811638173 463446608 629774378 931319311 957879816 681767631 904781901 220498681 376370379 898801780 922277007 913764153 952372137 41543540 620610917 489702193 944374463 245155453 362350318 325449016 679884515 724868946 939520473 907960391 943088732 810115762 834866166 362700673 847411981 791129774 912953455 887157575 996697483 799290712 888735220 163319345 735716362 396446339 967434880 67502679 497468841 464781471 981461080 896898281 954810619 972176967 989952629 141852187 953574121 98891368 356228537 835946149 887625577 383233975 417040508 873753474 922347417 438767908 654311530 315717955 740243080 634311582 850522938 283017990 509213977 517029910 670155244 668494699 825532283 280601530 746823148 407023487 563130156 784405075 802582347 228829678 934962963 885273170 916945000 88697571 393967759 2715476 724427099 141970361 494139482 512295038 662830475 591755519 739132947 148932754 684662686 135308503 323576551 234341909 539237684 208952681 277356643 853552739 976687481 681117350 937694694 35838839 679765321 252529312 461949588 123372243 514274079 948229230 962408231 286927003 612779700 528921141 842523097 420936554 719833895 998783941 999180490 755072845 897888436 615944069 888055735 260122455 901880976 371006368 836832834 866004938 903132781 252168050 816664189 360835941 812176357 271594922 935028350 898412588 936085939 929442522 929567745 419408924 897234498 649133978 707625204 482815589 685429712 795451085 939149618 874185670 893740200 186512648 212527175 521820453 594548742 42885255 315547799 933315167 956754283 577592811 579440145 746210990 871619222 631764952 775879946 131781471 617821256 515738689 910811688 558230665 626932695 712470481 714988744 310322432 689287815 185006340 646045296 880684360 957982948 764708736 854022799 632934648 817868695 665876465 691213873 601685103 803717370 298413158 331187600 802920287 836801747 850204007 913906592 662586466 704658026 441558161 811399831 114211649 750260995 97942466 506274835 685114280 775519395 208424809 762418882 838154693 857139106 912834130 973280376 539075827 838451236 165453353 538411076 129513825 320148445 406336489 545710617 9497086 32100331 839281951 879915732 243930718 785763470 945023934 989263794 86933028 392542027 543199554 680021281 124285018 239347370 715014776 922890554 395405622 409315098 755003313 827294788 176520191 692638729 879735532 901823222 582137634 778928031 748927291 870963162 717856236 747636045 980404026 993171155 92234222 769966570 251793595 329419280 335074092 971542920 911978450 955628825 291443730 862610626 491670237 704954183 216533216 245479712 244510260 819137151 141746251 321413284 198649764 914462282 831814183 954172442 561426720 903488031 334287382 933924260 21789243 211320419 855635722 986024214 132753740 411518517 790104483 933220305 304099313 770786251 434618516 598591518 275117514 952008123 643016433 648957665 615965946 688271136 980753883 982306640 464115756 537024477 332474113 855233096 825447306 838844954 939656481 945305742 19044627 511361135 631644604 985160749 645100323 692929254 463774028 957611688 376465813 472767434 345645675 966965373 238962035 593480930 156266104 425550231 115429229 805107314 894823753 997939457 344837030 902601187 411292234 906759586 271949366 493678339 268504856 756792288 876142966 987349854 792380896 909583112 661086715 721221467 318007590 355322832 621758666 717570802 979217241 996954866 981404371 982069159 12433060 813204181 120278749 872092096 189796892 395438194 224117551 778813729 2825244 714069031 201258559 219051281 278224361 631218152 681369450 998134373 545495664 895984537 822663778 935744217 187351087 926419882 977797177 983160428 420097800 970916466 153438911 946915417 784532736 948534206 145988108 245720721 204048322 694549055 158338123 514644696 114285923 339584908 731089015 821606055 671115236 962809688 281866914 684080599 17066533 47330346 766618416 881642511 257738193 624112123 574103501 640889495 118528914 426416006 249386159 694349255 234404376 298410179 444402704 477292878 660052218 827498742 670169677 703012835 304588566 451581040 69868899 804043415 469758781 569443723 780998599 791069126 680481932 701174069 916149598 997685789 639345970 806100715 704310597 704705565 489877586 973695471 862073813 967566181 694658072 886528698 604925075 840967468 973195897 976451870 366472923 635011829 14530848 887449269 729872633 956802840 178912943 289373666 777398594 853036173 232621846 661148692 309847906 894638594 470861576 725640213 205384663 883910913 150247293 220025592 619480203 776901254 832143720 871531924 991243349 999360994 382936868 924725730 550090314 551345871 157257885 407675638 399198021 564250130 428629059 774551722 250761934 470011360 157852794 388342188 139720309 336513690 407472823 735712274 926735201 946612970 166735025 442746833 113168484 985564102 621914272 797087948 117369652 441711655 903767863 989501056 224662599 754969306 429828705 642553372 106103391 190835910 419499989 565633991 636493876 957936063 647573358 950166076 973678812 989665760 770573257 966523849 672318571 986444385 470658346 932267445 330904726 730429651 169081757 420059279 758372925 880908533 267691408 909929420 306533931 432501116 107233972 408243304 722692900 891564354 559553616 821958409 383280407 704217894 775830107 900757597 335503054 686303289 338833591 894773639 733370734 831632726 376204682 852126012 601127500 607409961 470256885 762793054 543871369 858415119 767284208 947841145 211870053 770501070 839453172 972052601 968254325 995730580 136609154 389351287 588789836 725779054 286964582 577518296 295908815 923139544 869904803 925576551 122574473 748776765 745678858 822019358 309189401 367999699 925548667 952172171 124834466 794417030 799017877 894410097 486966319 730665095 871932088 926066695 862421187 868449985 715025492 890066336 112422839 648358175 57186034 711301492 796426804 811959587 667096764 750766168 585724323 810804636 678955192 930225550 306998124 900218371 63359539 356637320 569617744 850687682 275907917 730526242 187661384 267477066 660133003 817262640 76344040 938617373 880003220 902280534 496641235 828902683 290457827 883429788 734247875 828407731 761596729 967116719 854326818 942006481 782948998 816638049 270716460 403615727 130175255 444022885 91796606 970512431 92958477 146533652 872747060 971808616 440065819 803711076 410572361 857581969 519070150 647490665 858326613 961290707 582462161 716951741 581827046 729111748 975171564 985724674 661960191 961576824 975902587 981969082 900471125 920076856 684593254 759959848 388773459 428318131 172372730 871458281 805221880 879062693 56244321 149821472 760671340 930762435 227747410 338994667 382227092 638198306 610800918 824028392 111574591 869245163 883540215 925306039 427019329 938531402 179481297 868315408 662922130 710686653 520089814 958340423 719892810 751691050 92312497 899070134 696461393 883699965 322423302 917942499 826127932 990589687 218389312 578363995 446548126 937910709 101795051 419801623 297515399 383031119 780121946 911497016 487962238 499984515 773503060 910372524 571314551 776909059 99109403 454926439 743097472 794980233 897131218 945352117 553382909 908783074 850668057 971685816 595300407 952585021 485552748 552461008 54690269 225328264 997994115 999346137 599785386 943806602 941270177 989506763 795746528 929804390 547267086 852990490 923632122 946759819 685326212 790529593 995172087 997304846 326620941 684489961 308008505 726077446 567583996 581593966 757333920 798133382 604107933 790706320 159506891 355802363 782427270 881640723 812648995 985341743 251730720 397260474 958045448 974296432 991617766 995513694 993830670 998694478 208443217 357338332 129987184 615797732 391912360 565733142 126781556 777136970 786962472 924505362 272669893 593887059 234616068 607021759 856137622 882473364 471803990 789159173 985237260 993987123 925935856 997120377 859407160 920524996 327563741 481261767 614304162 695006527 59619589 429746865 43353658 464052791 542270761 690920634 236416962 410923063 256802404 381353414 169144863 778185739 999809092 999823924 895014022 920893022 349749510 639630359 701580073 736744574 59775418 356709789 566808726 978626715 230030139 266020223 525429974 720172501 88666756 598182968 980429919 983347749 508295751 597262466 789863794 822499699 862645845 912556383 743540097 848834069 161309515 952423834 339412649 356237270 802562698 975613482 782085812 789970348 210216792 285141452 143270434 941083618 145560792 292173456 801354337 983428979 517601089 538926144 931178753 950323060 890456935 946397781 434322864 660698870 444880940 767804596 836804123 995021435 457702463 901330048 835202720 920628078 356574737 510832444 666850367 760531212 629379749 684064705 961395976 993414076 75322575 604653554 618124462 876808275 880613982 990401031 537244348 911547346 148882434 785210004 824440221 892972671 452578863 821535075 136224281 360243519 229895153 292390636 596164424 826000216 154533380 446530568 409653619 723804860 418779216 949964723 794775897 896616124 5321633 137802040 562556410 942480580 380221434 786994098 499695409 921228356 412915612 923906872 572373062 593610024 592762086 943718187 823014803 874291824 351148471 417394871 398452652 927342867 13209690 590989043 383409556 468616711 486529732 800822743 889917868 997313626 534670643 834685068 539879383 568231483 709346599 728912107 630539972 989628764 261187465 366634570 920895521 986502378 3105338 39656607 659489073 978362892 991101732 996691769 912744628 943077715 626295090 965804829 389869879 881506639 324609647 449453305 399980251 590160196 602811699 672682703 204384383 405873703 109058042 254046153 709645898 936294238 338181597 390776000 116801121 317547090 392795387 525509972 884877959 920376701 552665175 908200956 454245699 551994836 324120873 772245019 447466060 852435226 694060431 815572806 287594794 833713080 335191954 938903087 104485365 848892013 724904015 894351107 292716245 471207894 472772287 872610364 778754384 814989718 136799632 301160100 762325589 986319168 691283500 986142236 880404046 894684159 142450030 724072809 657922185 777064837 599943773 710555154 923098441 924710340 54602012 668609079 543152099 819322657 566543260 800673653 942533562 957028041 785836254 889267104 244701985 366408870 697311826 732673736 320546769 883848621 343576230 400116611 789293890 892772734 701128148 957251671 386990012 922291167 198909459 620832681 795672173 928264153 622596350 911956579 574754395 885132754 502691687 751858466 921393306 993955000 880340145 923861316 17516231 964109164 351513779 938886589 29249220 673832788 969544863 988409187 993300175 994097536 294822638 973969604 650258564 974400487 237296896 811671384 428631010 847172437 252597591 757095511 416389768 506308152 669224274 933727850 531595103 905029976 247010644 790376959 470242672 798540938 388635629 910114795 17910580 366288928 362965952 427958351 82498715 293268849 205145726 555146145 394726834 680723035 209319053 651900160 986512531 990696032 221296734 679092672 323208197 638350552 630659592 931329546 997183832 999383087 857044898 936345271 903921728 963928344 721335562 961056471 486738126 594458825 354581355 852738023 783112491 844653251 838090146 942656297 159478146 521496285 387277879 977789169 732242799 806967129 991522652 992533930 159141875 934136815 898760290 933361496 266815848 538170573 186560650 736282942 443691398 737007974 197703454 745868867 908073228 928566945 965051417 966343499 849004273 978262332 459910401 898995281 326767185 952218129 916750945 979600525 874227082 923172153 993105737 995124732 211019370 336424735 606118400 856700241 418144978 916870958 114182120 528845971 492861737 716023981 144465931 279124837 397565316 407475873 901675195 972924335 727753342 995054302 686699675 773976528 585391517 987092749 325775323 811359662 518457521 981561079 652119895 973034449 798151500 981716836 367258340 377306735 517067549 602635315 154125395 171906515 125362635 757280791 503148867 779366068 894565242 961995119 698012210 822914503 823744539 847422480 294433171 935692734 799092907 981009640 907266232 934846119 445911822 521723619 643813075 875112937 938727536 944426457 988433224 989959260 375946098 790511373 437693472 521769567 36220252 859221740 881799963 956792384 217731066 731245257 50585933 156493307 331996865 418986179 714361133 915381108 967665980 986528401 923475230 987181114 92164664 798799673 718612496 739180329 681843948 922536383 88530273 566472964 947149416 952724076 992957079 995958809 276839553 835147155 468391233 551279901 162232890 716004401 737110503 862478631 36984497 414131996 632009339 946586957 854691207 958660601 703270498 813012393 469429546 578508178 999290929 999912055 466009780 621113726 645500414 915614341 532963841 567894308 589146178 948358406 675454271 776196383 355803625 916194322 788302915 873298709 310620847 642894053 171236414 225969696 225663537 809036306 147974490 303967082 595129066 595643037 987036943 995688163 962271641 985577643 572814855 723944094 620707171 819803590 804045825 836871645 553416022 949809194 170039825 895000739 962378883 991905650 28923925 280235099 809132613 868065538 856480373 882191672 725748546 878801277 493045583 613740793 906501248 949246156 111846480 270216015 977726074 996681626 666643037 801470874 682996143 987939910 733504844 855848763 191104419 499459496 240828885 766610495 289897912 891581672 421023881 776135297 935011827 962389245 535000080 789489585 609141599 919548107 184795769 282811712 634080097 773546557 98975138 530576265 686055664 713802785 752022308 822539758 321986985 446173407 682133525 768160900 545569312 674156551 987360613 988618896 158232294 446889201 116764068 828720529 316652750 879272494 663198835 869674463 688741057 800382612 973256472 996835807 368461019 778958111 973097786 996117256 498857672 621174855 577880273 874243760 688852670 822376186 185947782 937117749 1775065 546419524 688575747 949041064 206789285 530276673 302139526 503952228 369208222 434411242 543935943 665158258 614331179 738473466 24134192 965931604 703591532 949391527 443866290 755597310 409438187 505514222 905006202 937142164 635230435 850664608 115367643 859984304 171117842 547327041 516897128 754148558 843224152 850820637 42010850 677377491 213592654 981811643 717067016 918409159 403345611 931132194 354676772 513680794 932182200 981073175 557181016 795450066 125984184 923227371 639227034 868722273 92287937 298728125 984540926 993181306 421978482 793632986 851899423 983245421 83811313 666001191 731732736 975092648 343010723 872628181 923152957 973198193 419450531 431553090 90604393 719749477 682284396 876895627 335647435 636123271 750508891 789957369 587928672 977303808 225945346 711438744 558627096 723596510 657647329 988267083 205283159 892133071 449845917 508752287 796009786 990154549 356914445 435408379 882567578 959319361 49669186 819620493 143271466 891717348 381095756 775738146 53901395 65470552 519270936 950519820 395405979 976541631 614796592 660763528 300353135 557007626 504042244 987288949 964108774 973884963 653989573 870855381 979992073 986824614 228449539 597314036 737869753 874965649 178705884 606315907 86265437 971241542 229249951 498889717 176535832 705586629 712178785 836750372 477810621 711085689 749353944 964570589 414835849 490046820 145295387 889107001 17723766 520777524 549762583 637617422 629709946 851530433 281743789 851142786 978935526 988164145 743199699 908342759 165287217 772950177 184031153 654733999 895563706 921709581 9984768 527446556 803958694 900368852 137526123 596721140 30407928 538343946 907608801 952475407 304129994 683767796 523182841 931514071 881774766 907969379 725211649 777680307 118917827 464142744 448863159 494548318 216536568 276783034 754048627 896808376 801880696 942502260 25122509 245571538 80136036 201947030 898780788 980752708 55159609 723986082 386473619 717635436 346780035 566212211 289815354 604372420 841440461 945650339 166838527 463413967 524312909 981074837 316953305 658572662 611920004 994670854 476183289 862078118 121274280 540487169 334734134 567480642 286562797 844084584 698733220 808200497 772947999 884723071 639693931 946898883 788078022 995119279 594649326 625732139 857027556 913155328 949777818 998083089 885098043 932580207 637661046 767909860 283113153 856911480 337895653 477816849 394895465 678887083 427676358 487269608 253841875 738219900 936255434 938171206 754249423 852521058 904791091 969419836 93661228 249684710 417615503 902931923 891046659 909396650 913961678 983100231 536219361 897669716 315348688 411622273 607265009 875896463 665533701 745488137 951616693 996754054 615646939 660457138 303570777 353575146 568942284 698714976 828790421 862801658 31734131 812822274 972445684 979786936 104804179 901771829 518847029 985457655 554908755 556044861 988748853 996750456 147332948 885619742 150852998 180054568 932192755 978400788 911005317 995288651 303032750 713027153 380082706 889712510 715128469 792070774 29950022 633871471 739774001 842722487 582984096 657433790 513693786 879106459 77981849 283873953 913657708 969423147 226861877 313102066 416985763 869479804 156818063 277682461 116469020 695448234 29543665 315667643 942067638 994152217 640597188 912594161 296085227 491690146 822703747 986650133 260156170 521878942 63225501 332211998 720887679 953286784 927596186 964271559 830412275 871926982 140674081 179755840 188234401 786584979 979906872 987572664 889441880 922127483 442125183 466744864 417864738 609298673 36711329 871337333 85610447 618386732 883386094 921336949 753786599 959282852 111955921 351875378 157887930 646131702 657622403 979727183 293955893 340935511 750695890 846655510 27017973 195928504 601257559 653532659 81428401 871378418 192149937 930820190 937845682 963668494 19714324 75492836 888279044 993049481 599799226 747222427 656102543 784697788 65549758 358549659 166491985 226058517 395785950 436955569 41576002 432130780 316241115 348627671 251773744 327728188 415021398 592071700 223636880 354803125 977431297 981124283 983727730 995348858 141217886 996365080 596949150 663888287 436231028 771822396 482819719 930727278 339965873 555616740 202969694 365613869 618061954 653368049 105979794 361209347 953697236 989335066 358146118 842433586 572712136 786163212 471462047 882723187 230133089 427849725 375460796 720985967 757625887 906931957 670732227 681764441 487185735 600457747 936588668 955818495 597490130 936338031 855835541 889960049 739708846 937838471 30429983 922886237 800009244 865198677 269590413 648731827 429436357 801048456 923453723 995218303 546725147 668835353 787940162 828676707 806044917 851124142 37111197 265167732 189554786 973868787 40171551 138241946 41139484 96049806 123764363 375461516 643819515 742796453 977703715 987090880 678539989 791610546 704001585 865988051 307049391 936953606 327517652 623049167 841725524 921191313 362764174 512602027 531203948 561242316 34747431 419591880 922213607 941873601 795887159 868366644 935651295 987844435 861806074 940518822 964884223 997100050 505340307 702568428 566032597 987134449 835438836 894699830 974161729 985307886 57576431 953633264 739351155 749461599 35868859 762278625 831723187 983258750 748629499 768951752 399512904 734894213 133947046 140448063 578387988 969584045 852304691 968260290 668612521 864389894 624705058 808276710 695369633 990916677 539430213 996116278 146219785 458480600 538487116 713303832 431050326 936485790 351331377 606766779 620637317 623664572 899430452 929141672 499379910 538985053 170640746 979030103 155202280 692126902 70034406 99706062 474545835 488966902 744729073 784940468 980442915 991275892 371831142 656650009 843093938 908902420 48086351 289504468 149560259 745082786 131754123 541086191 416528972 876850274 292783281 383613562 848514643 963119272 430575686 499830232 520957752 939400035 624841261 766170154 822141373 981271527 806655652 897585757 500863998 528419884 403027114 822147561 588651514 793842330 726859111 942900464 385211813 727887352 384861673 609361768 442874304 945252356 725202536 928721580 947959879 971888841 263361519 821970824 59134118 879873588 988934437 992015698 736033794 880676502 259592282 636187227 204957897 273586333 332563637 553545782 503446422 745543808 644028122 792374838 585642965 981801413 539044108 775950003 93749555 715413433 919563969 934626861 405110460 567367711 691840361 919578869 581246688 985191795 460602820 696531628 259078958 343329451 24661015 947331110 595167438 692297614 977483207 984820730 359135464 485133533 729364828 905929801 981868542 982737433 351379149 383080579 376477201 489904183 764199613 808137219 606024750 981301109 842762191 963215261 517578297 920132860 572910785 823598341 401219988 473769769 552989147 634056097 847065476 979730407 447776057 825006001 909606163 915075355 32343454 92688760 704518963 947040965 729098813 736299532 240821255 672840895 519817977 551235909 398663848 457063520 144481126 726342473 486619181 685102239 385885966 973040176 202567575 898649208 149349737 931966409 982498422 986574143 455245089 464924154 860391657 956219281 298625499 940075267 947317097 955914957 392765061 507662171 186426775 808169612 235932660 862080337 190485300 771375491 412330533 478292101 956318845 993840463 541525033 679751030 773950685 863544990 814145859 953239086 412630014 807081041 437064167 833849549 408097550 706896009 662491603 948237932 861115544 877705838 667875348 804943463 541414146 965460522 418904555 563624234 317328083 945377524 993672492 994576459 582176139 718985020 783589690 925097236 134249300 217662196 860534061 999381699 291653980 772252317 583529811 652130076 548266821 800171652 567393635 891470309 553083633 585313685 87749715 104558173 157662081 216248286 810357517 913511068 174606461 596735752 656985446 659735118 341426924 738151051 949349218 981963408 168016358 371020629 616641286 975369332 65159497 262872533 608086680 941267476 648803124 889331968 885076973 937149769 953018185 955624211 75131462 378978040 304951111 459366075 491878513 796800189 138134511 418247978 749370675 967701406 997927172 999311704 144408514 495819614 72170279 339163932 502023803 638292261 769515212 999459174 39243149 920728950 261658486 754119862 477851971 992979308 431828804 560668248 50665589 827159998 257601507 794189542 636312867 863334201 847721019 849112020 640064811 815479867 588628325 718223757 803393696 850567294 799942960 892705291 570996493 995540698 543542735 984842846 177782618 609580817 956737101 976769818 531018980 813288059 285998534 371502705 494998957 821216780 617989333 671049757 570111502 798011367 291651747 907217948 736912529 801295757 436296165 869756692 91527938 748943104 748862493 933446835 829715454 985355152 286282151 961950136 587342794 863740736 933316591 978323932 379186543 608130319 66609487 704557536 830546493 929466284 117067682 135966460 352718606 420584795 446810350 523969553 333616465 343145358 11039880 368375597 442920416 776298924 712725538 968372409 846481417 978364048 342034568 755972299 509662019 628169246 169133502 642810365 334286185 558997507 776870349 912666986 333292924 647994002 663903711 744114808 539169402 938436898 296691677 770767365 236824247 516601460 97009123 123831374 787265272 924287414 385595740 915945491 751529520 819001614 432594471 846856296 299405250 394573815 276549319 551878311 242426254 656869766 724487112 881110949 691950820 729039282 268062167 825683970 642491482 676443035 86188030 657591049 459708368 918840410 482291455 548713680 776214967 786431064 724222477 774316104 839766888 863258333 8581455 731871075 87707951 157974085 889527568 941434457 609061840 810944305 51705618 780988090 33958170 793969074 852044676 994446833 558177902 783108302 305330512 826997692 194701021 257837567 619885938 983721375 610020628 980826537 72094351 779057678 584644704 624381640 981512050 988877396 24669547 746277326 741991983 854288792 389974144 947517416 645849603 813625729 263539011 934790569 386068762 762318582 751113462 833562614 934302810 938936440 66708157 836289514 357493062 772755515 494604491 988516666 107326069 126324024 523621692 922388071 857798399 873894545 104016675 638426165 169150878 561191710 285355888 677987310 714176969 761428821 512720458 967353297 574743981 619004278 430819323 727855072 932872030 958610518 926392580 994258814 457520432 746306716 510748168 644659047 89295173 820310225 40147144 49451074 296632863 839501731 664138535 790722911 27412315 413965725 819341888 886530773 58522068 380264192 5914331 943649743 245829454 799823271 850246966 919983482 101828568 564263044 602881616 702396658 646691965 759059915 521405365 844071290 680243502 875445579 850949263 904332404 28827457 605378449 519271963 879566517 807915792 825780928 757675477 941655759 93624131 683883702 163250228 241846139 685597146 983396749 222615301 905367565 754198600 872172103 832174573 943833921 636326227 664392067 668642820 914956272 330271025 825682074 973865026 988804282 676093927 942445185 778002219 862912185 761939781 888258328 943875812 973461095 721725544 982215070 691774558 909110392 362421144 642555274 542314695 730667388 804815404 865982631 80214696 953105339 955550338 970613734 880524209 959739381 385869123 411259325 669597659 674237657 734599114 933381308 516848642 676061426 286589434 945330823 806845151 869024370 209621571 499602000 844585152 959119395 219734403 728730134 681539237 912673145 227958308 593870475 663477285 921779911 734873894 962340990 140541261 465649984 918368778 938405330 909916992 934054262 131384084 857653551 157386386 778668258 630213227 954371407 111254012 380450284 933186953 951035223 330985716 345723416 392657333 630981767 356274599 919405879 188856474 348863570 214742051 682656418 539827433 800442804 414931130 909960357 803561489 948851068 108324157 463353616 552578070 706787332 765547646 923370932 161837786 557616363 732190697 799708490 611353423 646395063 991910715 993873042 758101834 853256688 449450711 844363864 579101634 795615200 912251921 987082596 507788828 708942293 581358669 919197327 556403112 936321100 73910070 895368564 610706352 984393823 263906720 781680701 368787257 693376925 305008704 850570575 273204430 960214728 430151424 635776104 911550201 923296804 897804921 975832561 937502913 976075929 811166307 943350873 287002863 957648797 179753648 862804487 540140260 838012843 409503832 770038903 53308150 662557266 154947135 394315175 380445166 843998736 538157663 896135314 475830379 740474499 769838532 935461882 127850474 581300760 354642465 620540735 449208451 960509874 602942490 936550926 498844697 896091019 369007691 942179442 474184841 809585814 181225571 533547997 897475968 908392533 105115556 631882985 425925814 615356114 595454204 868744322 477661973 746413617 993247451 999006177 252341662 760109582 348431198 462845064 726632322 969026849 41101663 690498292 515934402 564566582 961855037 981943788 617486955 685774356 420861665 578798857 485889402 907978588 935013463 952703392 166078144 907533760 842266021 904718808 461314488 468261356 903691627 946799171 236482725 301782432 594764480 799414731 361487504 677039719 12759285 28532385 380051243 629134669 303867534 483638343 498728020 816297976 632935237 712550093 22888584 721500993 47243573 130851193 982648548 988321228 453124160 881807161 965831003 966867421 125768923 694013367 534870465 692678694 577962124 714347429 121582966 576446617 418188305 706562624 964418102 965075700 28504115 494805363 620546374 845439241 69840899 798562040 413482273 945183178 800974398 815226726 771092474 916174216 359521709 517439680 200388556 292934106 446893625 683788158 928625399 945498100 595879411 671845106 514701038 759996067 806929634 925647453 839873051 970952650 453910390 759745540 740598999 811252476 883184426 949872427 236146235 369172480 756450819 968996176 858113066 900230445 23005360 231338675 700541427 766099727 674053186 818410170 407810803 971033821 453550033 814592894 410649018 720242576 4422943 751859793 162969228 627796926 106785550 528732983 491130630 704913116 242564889 866136808 745507880 973623282 701599894 759715238 19624562 517286393 801831313 829378439 281928520 546346161 513873627 824440324 117553907 302565716 440177554 500911066 143462808 285435262 229038370 551576929 659780750 723901511 549476531 560577133 208401978 601464426 794694390 855688216 320394964 861491286 237505282 843424668 540657473 994329147 338173653 648643430 310082979 597967436 793849862 858917151 451178825 460365465 120299171 470461150 119677271 551052744 816657418 894444928 569165208 862034210 859891841 933909453 750327760 763282767 513606961 552302877 913616412 947345036 811770152 988351934 418207912 791514193 266215925 493897706 221286815 949385207 155540820 316118960 16770071 478092484 663066129 663697832 741256613 877345178 916849854 922118752 726208752 967041278 652663648 814561748 607263577 628425487 81162157 385401979 105957450 728288989 343129645 974848755 335058990 382919830 191126757 644498336 241095551 665890632 884750295 923018712 614899059 858875274 328219093 990261822 272489785 789859027 289679539 671749524 768282713 834306621 111494418 724865891 630426959 641824163 152372668 599938723 21736705 672628130 368881405 767463825 549179059 606506518 897925227 964928625 708662936 919257257 884490130 958803675 982583872 982634034 829793134 894306091 353981924 907411713 831555044 965481007 495725885 963693597 449828746 774225782 615708720 740369991 1317642 575443367 999446299 999903568 920662660 974375701 110796439 287583282 860219376 878705952 332717263 510440787 467309712 627492971 17036564 657840261 224417606 719322303 235110806 238940729 525618870 789099454 461119124 819351898 620283409 940041498 961422002 974869582 981800155 982803179 475409265 503560608 165978194 573759693 985090623 989365429 975665270 991495399 531497818 749483523 437050646 875419022 43200884 68700323 401260644 768007945 432666270 522603990 65082967 962704925 101277194 687101543 859455590 953191296 742254538 828787305 132186956 607785912 474671567 941217087 656030727 674456796 812475253 842810099 444412871 694814868 773518540 854584044 349592655 908312000 29922566 248870661 230610653 423665333 640605069 737060718 653397636 766146923 631069357 696558135 282092627 703897772 404391013 962365435 674071983 930205303 988310624 994806845 9493172 884920648 220248187 380981076 881983364 904578936 474392785 861644983 848985012 903727805 216381944 440022552 887059427 898538617 956425879 969850716 67045459 301017277 260207287 547248010 928816688 975583984 825744562 869607928 6501080 310879166 719402082 748349920 643905538 943435916 170082540 536224959 158955396 526612375 816811447 992843632 604037372 928295439 590949847 799473169 478348586 906648377 116672523 248598473 384827601 925302154 299124589 850119492 852592364 870547303 675661759 765239395 709035931 743076297 931446078 990181753 556621069 650829626 770817712 940247377 708771510 866703073 223894694 503445355 91764036 639143909 336216952 791284014 982808470 999850604 842589553 898357678 819425737 866870307 966869371 979232035 956034025 981011805 561368941 691572717 839876271 863099545 5456607 305536972 564479808 667650471 536246451 801112404 769637597 802555348 42539940 441446195 746002128 847314883 429571016 878851028 482771619 519581028 435349599 512473115 975336265 995766580 840877247 890528331 697039974 857784239 886045223 895668503 659191834 993452577 866857183 993589303 351801635 489163813 287066273 942979642 689197796 750734028 734712721 927907884 420741742 456624889 500855987 783163611 968687020 995371317 644444508 806910113 476878011 835881004 756822433 990845959 270614614 662862610 322888065 660210475 951677847 992772999 235736160 830786064 206626424 907171202 57361816 651126781 622197204 884856183 651074017 878005405 654467099 954838846 435045148 918820691 202017344 558919945 93770736 661300451 901567868 938613156 530647668 805894309 669055 162111940 658418036 746380270 4114773 820465802 617776061 836121795 430872270 616666949 529759406 860191214 366255899 534173952 142011080 165856996 465147340 783427859 557018469 951742067 769287037 922751425 995419589 999172063 523135174 745792469 895865590 976094867 766956991 962650101 282928821 647144974 113879865 793577851 159337613 799201208 20231759 388553145 86576354 705877304 685467492 857454813 342881082 876463528 740406159 784934224 919381521 954809187 989859344 996597088 102385542 499330321 768913279 817214282 328315625 344995713 618056601 943729894 841686999 914549653 295998701 482711372 131748584 469307307 641001924 777949330 650606300 886505111 915930333 936228376 97431401 313435430 700556153 833258776 919073745 945782891 353816350 936159750 358208025 826032901 943429346 987765174 250812693 990686887 909834205 961785070 937787022 964326412 655518020 889073604 941028686 966050754 399163414 884057272 339222644 773036584 699372624 870770097 233720646 400608238 846393588 975505660 86674722 108054075 655076740 921778818 968232313 982549225 9903830 91507603 772106698 876581572 435425200 563532684 730118313 733968252 414919018 646958717 177262059 731197030 142535475 691861554 458756653 863630107 546464030 567339455 448883930 828669369 579197337 661615998 521160167 730637703 800301366 826535947 607413901 749932561 231094695 614699688 352409432 456887136 371454413 857304962 701647576 863237153 246393829 262598130 470415696 686889429 718548733 721967991 672534321 912070926 508306661 726594372 824840414 977823390 64439273 162013857 13038792 696357925 936612426 950623612 843474433 898567179 668071341 992896596 155334085 715727189 611928206 690491379 663877068 779640524 900729518 975077564 960122757 966704618 883724788 998695284 393404862 872336878 700315654 713182367 721277124 876781307 859149075 991999945 554866722 832592301 624228674 834611241 783235787 838002394 841894410 909151900 294168819 338981423 165850584 430823737 589722462 939688160 28251675 880269580 252303978 873038596 426238777 801005983 726385432 916361494 564670024 630090455 208246594 224390533 726157587 808641790 551513488 571381904 65569419 630103640 829165043 897528271 731963885 738261152 684926046 705445253 918838645 945089020 821518728 954831883 247755588 402340907 654202013 711658283 127446068 684739212 437865372 884904890 590446114 878047913 296602242 950474593 484360981 681070236 115906746 318891176 316931477 497399053 364291668 560166322 831715892 835675358 516112160 548027029 414806443 845119527 365637194 513687250 447600630 936691801 476330894 641607798 856708904 966678043 1142979 961282912 448785738 941347048 11235931 903223707 400446713 768731861 327358588 535763266 491522519 939722181 535897173 899287617 599510483 792482032 391679981 867812948 102476486 194434397 665989812 763767922 9954410 795723141 147931608 470790978 453761141 647910115 25239554 504418209 308163567 806827873 8009378 192263250 671449572 964157216 375213600 989126701 29900040 970628670 986962799 990872313 993765140 997984786 909327831 925464288 930326650 958342131 750951311 945426002 144507241 476774755 227673795 275478432 496511600 914591474 552868759 804602848 594608545 753944074 748100282 994893767 109643818 281093779 903336220 983778675 600200060 880304291 420496328 622917351 715674197 744325945 861342059 915557199 907634357 915532150 108272417 401485210 897673351 963014117 985371921 998186862 781042068 928238926 922749233 972086107 389242313 821445134 245764027 396846196 897959756 940896417 497230030 584104990 608381005 783520738 206043610 448154908 418248592 433295671 98962249 280721052 197616307 241417788 294856049 794336947 725725469 814661273 781020081 826321218 365547460 501490389 729983790 938608321 658628935 957673479 694959990 976270735 219633472 889672123 713912771 814251450 130371569 548591845 423710547 651746629 866038373 998162642 841627445 856160890 146967373 313393993 564514580 987083422 38970022 262959251 494092609 577671286 265531486 919791209 641306929 839158780 741192144 874081607 594744955 618822422 475271826 855954460 624284383 672632656 860285697 861672005 848893094 960209881 892811588 894831116 444773290 969850865 692819927 845124911 373913335 918731395 760109650 931869358 747373814 845039455 426616823 903860575 691738408 980737728 690519793 766346480 650989842 751947012 455541222 584175158 292594825 910694087 382657989 791961764 509794383 703694840 521408151 860655216 988625336 998475095 880438956 952869997 93417436 698398220 729797155 956371884 45166457 919276489 877137340 967993445 992554003 995975793 749207921 849385971 332710612 888595999 367796137 649740774 388920298 902901567 339628358 524381254 100738883 840649833 809178884 987771954 528230324 718851554 2805923 394042272 611126293 982075142 656073504 790386510 138325766 802158312 345587296 507648629 927227071 935576407 586989234 699446077 428005436 783914686 641645770 974441007 557881403 823363331 449936331 896590644 912547921 926806920 919267759 966049115 529257007 601848565 838003448 987678916 768347331 793936824 446721431 641421412 19662374 83527161 864276445 868240504 587304739 855989958 337563397 979894450 31278116 596472831 118164155 532201003 860137812 933272704 341311350 942563746 660334046 898221573 732563136 821460645 785148526 955007899 829233470 831725724 241272865 717232176 522561866 707576406 408673059 867672550 464691656 611282627 155061658 464562332 679275831 829613176 871587590 983998416 7639743 780006302 268043564 833012256 188422919 817414719 387557470 420465055 547984855 994488194 141702331 179919595 241460135 329307259 918457490 979404430 561934316 786983298 66929888 253214035 284195992 860159711 529409535 755621336 188717791 646702770 690618185 890125848 50204543 612270689 313611984 748503393 87349474 323913270 686012521 983205088 603806795 673672474 943281041 943699433 843799158 952147242 674536780 850676701 180812101 993095990 9263164 246954093 152526980 948869437 962337154 975868625 899099953 944416910 82168278 493311468 541460815 752202876 769350198 952577194 149235352 592630318 991631822 991868324 861162063 909340413 628351359 633296195 531791568 826512653 991886160 991975287 422561335 685314749 786166412 833704858 520321020 868043269 294387551 345175145 269114104 838615478 53040398 803081288 839133925 918805743 662573108 729770871 975218748 993750850 33981540 357233973 642745487 752314312 501536422 654508586 323013192 674229080 281068510 497990524 597884928 600740253 948182020 999126623 800457177 909828512 690558579 905980399 379305086 595509183 421261041 819908066 26855731 625170178 380980368 408951279 20083805 129112393 760511627 887794698 375682698 621433497 400053281 960548107 415885306 993376419 180938213 511776736 465287410 490133565 614351805 721699176 505349744 688642508 695760159 744564097 63835800 800487864 814441477 839657999 900831520 929554213 885690559 894309295 802456414 940943450 682640273 755269559 639807412 883916224 263832943 829300974 506891122 706638491 800287222 959367716 331820632 696889511 90430407 601807026 575178905 713070447 598818454 657854653 366232142 595725966 18144455 745287010 298090589 397825830 792511181 997787104 696121713 858945361 270227492 376413817 970830160 983585555 38961902 314058706 603616498 971455996 569224744 748749811 375533759 782491148 907565445 950569142 404652928 609199932 458157929 951239779 691869465 693745810 184663075 561342976 239403989 329784107 322992497 920555839 46950624 679942205 965562095 979719633 411788256 676395484 951333471 981174095 11415369 299218423 879497416 906455396 695526428 735635021 852736531 916372574 639030589 641132397 518805274 722162474 2036756 132027646 105361239 755074576 701357453 735065036 544930524 610305155 308752981 566694442 297253666 615851800 484866653 626258148 231718484 965062010 14873976 868244908 924185141 945327736 946619272 969638542 361774776 870880074 675243701 854422104 476765232 534906711 965881941 998328146 890549679 956825901 510449848 987251541 15140375 569230665 824766436 917240106 903993999 918312798 907756733 979721395 564586114 904208320 366102871 399101455 746662119 862846068 636175890 911645010 971376032 992423648 244066163 740946898 635668329 860620083 390526563 456735759 400151639 712006435 124402130 455032415 982909819 999256615 472699476 515154826 901919634 929101176 779461967 868585849 676253686 901922222 427837045 683098793 143935255 591901799 54052436 509867805 630521239 912161334 543526064 766950521 166930765 554123190 924901034 942844452 95842075 609673975 551000101 563468798 325482922 794765641 946001885 966298033 831603569 910884702 276420898 481041950 259765283 506206849 81786785 570744211 496493282 994294938 918666212 953844112 146069219 773673395 488318556 861233119 728927883 978750423 549416305 628118481 669324949 713350079 874440646 887574206 116166893 363908201 930992425 998521609 751208656 880629716 625933251 891902799 394026609 835330435 191413099 589023953 13016006 459208249 688282217 864846949 210517032 453129694 655966836 691932606 643129533 648494250 939039861 960023975 320374510 565258760 562258910 961565190 932227186 985205095 92624030 193802942 259606990 664166174 526912605 790225593 42046774 972975091 179680933 736178619 509355299 955308402 123749421 590351554 769760265 985709794 361331967 962117475 274467109 834536533 388986262 841225685 465790360 595677669 775586908 821063103 760324048 818647125 832714797 845660837 475400101 654421839 554932674 743733409 808285451 918775440 777675477 780402759 939424392 976377597 808625819 916748364 779414297 785265018 514142278 841955740 273758105 554386666 959225092 986531653 84887181 603850151 563159464 863716752 432647558 546548228 449983793 561230668 868785773 971953524 365120201 500964949 787141811 810507347 203282775 853697378 695547 245948463 325177894 739699355 529491932 847159638 944794551 979825620 276998374 775710359 593565138 674214863 87958559 203522058 315370466 330401728 471701431 500919182 37484615 131497766 156720528 469929845 905062561 944648162 869691218 916418799 888927382 890757372 590484769 895072368 642231567 835016078 287114269 667410162 692070162 839387948 55429288 781075214 489310274 628753746 380277758 857889732 296113540 425702363 51414573 664756624 374701834 513745943 992309619 993875720 708265669 736197187 461074096 789119753 624313238 876922546 451124083 860104788 658347555 824458169 278393278 609244546 444019751 465993255 38805416 289331441 577962197 853766225 517128668 772682476 690436086 832260695 30116193 692782222 228551261 401479386 300852814 566456336 857997911 986654594 869930889 989727371 760474376 931561656 646141808 797087122 847230108 934492606 587408519 648504713 291764620 608131098 696419635 768056174 4983790 700300830 861005078 930713335 268966571 997985184 903744989 978874479 9583751 382760096 704533514 834111196 50307770 633607679 356430976 520431976 375864371 746486716 328274804 630629982 507161915 510084853 243058941 257501008 694550605 983461255 914783617 936442163 99364860 249833822 876609509 989635056 44687589 687004405 85878504 551261222 69686131 861592704 4326316 791065937 93051192 126836695 519941532 977164889 405742394 620167213 812667938 905293600 652070706 747633198 797051483 818321302 319975899 326861333 383027006 786222401 767043394 922969590 777769907 872706827 27409905 819177299 5965895 914369085 359854458 574287915 926853715 997989174 324007749 633463708 250155855 641885580 808411736 961902204 752097481 971478020 510857158 645458202 17077166 219302119 196870971 872102737 29210367 222140483 696583625 791268729 545373853 760343933 539697001 818364526 222798790 784128797 191934858 317851119 134708660 357692763 990827413 993079499 655209645 824696932 864615425 998071119 390225181 565706667 854039721 956845283 48283052 508224906 921644219 997233101 902654138 929823627 851038235 995175629 598468114 960387072 611010034 801308635 752998117 933199989 32804492 72520566 180885453 506589173 862748640 958587441 755541636 889679152 745261229 984967064 310368777 619656462 268713959 632057250 977692004 979280559 291633816 927875085 464348711 710787538 500459094 579702095 727609060 816706208 289574427 922176339 254819496 663174928 674879823 857182698 978701245 992901370 178802707 859190088 994823234 997749012 492343362 544970100 921364290 970037911 854239409 891457857 51941533 835716828 641821100 767429009 121421133 844349523 703142967 797285710 421253895 792447110 698743425 711510757 317116124 322390072 763991676 819656023 211289722 671920730 296800667 463349379 503065533 517821921 285193758 995798182 184537284 923363988 695895830 816270389 22643562 338388513 159424572 241378029 877256086 906015648 514352416 981950525 564478714 820628282 17486333 603691206 496323097 833117870 436315630 971594912 989030257 998513678 264548143 552779320 94699584 159069287 900390531 958503804 685292390 763929793 780743368 834048054 953820282 985957366 905188606 936503922 34001126 587123179 132948404 823763880 830997718 939154930 380052869 477087485 949516240 972930288 381063728 876633795 992444895 993418911 372918417 916260392 605589500 922704667 150123371 919245782 827414546 926708417 320589039 797800587 362633197 604994016 699315775 774341511 980462364 982311316 517166607 981934414 634018359 865488970 25283798 923334797 149970691 192401431 306649992 999244453 129768736 633604476 471990756 965723417 219891642 445903269 312944545 810573529 90197608 413952794 583280504 937947152 376931288 547268438 828751027 938061140 737525934 775592229 454249083 799904538 478742470 683695136 360013907 751366890 557234200 827881041 470414337 907934731 260576856 840250634 990226603 990291677 135183112 345681813 335985618 595415542 458090015 915263806 851679704 968915148 141741175 889252547 574374290 794181207 82699374 295971671 604857674 785840203 362860403 515403858 943327644 989509571 154000207 958345598 743017150 983347958 125835340 736739829 911207289 927866884 842030194 917781684 78313226 591859001 85537363 893400553 909223414 915191608 961452890 964007031 257226219 726804237 183403222 853582761 568159430 681523440 474784743 878691527 101057175 928717472 259097543 311124416 507982309 934695840 277713341 677660952 82238713 245643127 731252507 937853177 112172995 901974336 621872799 991732357 500298505 631414470 904440908 948556328 351874447 445287717 133240801 707968300 727892722 771429619 140238190 795358403 855402928 988497400 385703408 965384739 420206013 525530645 484170051 570694182 117662224 953117520 193600177 234806313 454846110 943416562 667444488 878617481 799548029 827242820 491785822 808514629 569520245 923773658 358958672 496505682 404893500 816991022 258297591 999126503 79218219 944688845 873953725 909718299 375151961 682101220 654025635 940747671 911461009 935259139 362019846 415339576 315753039 869381254 754470075 963173081 747814514 806566184 200252375 429492090 512160255 975911283 484507349 890149847 716361703 935556261 489985951 506477933 58325092 482794920 297157996 476247225 404061144 540548503 606695488 822137312 627354424 681963194 360302659 652180752 970306540 971457100 57066452 620750384 314108742 567745322 90745073 779459674 780970749 802353496 321799 413647849 84334393 328148913 916946456 965589997 619358442 761936766 22099504 417009023 903861894 922524523 7968781 512475446 649366372 954228409 991773737 994309429 414552108 753455183 341913357 415942092 460821438 770799319 461783429 723976287 290241836 404767876 381428822 966438177 908267812 941119889 361546104 807024768 324086209 355582465 668383202 943221853 792185839 972718915 415056693 567265897 894393167 935005953 482106035 491838088 545240901 746866755 299041911 776128457 85592434 450182442 490319060 497038024 298582307 466373833 927347590 946036250 747680684 824201463 96387974 679613536 965914993 968868773 307999753 368389854 973888492 975385046 555544840 711376051 728579033 956349134 780128814 944923410 895610677 955935275 399914322 764866235 78956123 724899944 872812159 943496512 411723779 444386122 447733671 866678040 433739141 580238239 797445610 993776933 9214414 115225438 138835858 488172994 528474708 799561678 392897023 766235337 440015533 897080818 256814228 862454929 882521802 887277770 952335871 979580134 887908300 925027027 50416224 498076589 964792443 993360989 667079794 759148860 720462424 900530582 87326338 614246203 351679463 380986289 514207366 800990251 124740310 245273362 662758770 678583659 392026237 753324381 57483916 310048185 153598541 766388217 192763771 423490447 966801915 971627751 755664854 823451619 591917942 843644898 542136463 997750860 576412170 775101437 402963714 945247588 149395214 505964876 500742584 958666512 753079726 909936022 227453150 285863755 441627476 862063236 400547942 624436976 115518037 420714064 490695125 667741454 6312713 768179810 898499491 990446503 409516097 967349919 646731554 838023128 306005322 780285294 652775412 682104256 637233059 667800391 99719631 336259358 442086346 859681332 153626991 251642336 139529988 806915604 347477493 531227446 974674614 998375474 910023130 919714557 726760146 953166759 7638952 146757498 661601431 853369187 410023368 499693199 649038862 780426902 701772816 781986230 201590905 420610576 951875 821107525 532923317 689499730 112847986 238340451 29949889 771616698 858849941 959253663 912268591 963669894 664885603 899693095 901103136 927446874 198536331 962325553 851911870 870237112 705245972 929817030 232757035 275605501 326035711 960125863 458059007 623777698 62194126 944302073 273336490 465241330 603838559 649213709 356958064 368583567 472918439 911692673 739605450 740772044 76307936 953893077 482545153 857492943 33631552 510422299 706588570 726159223 582117751 895706329 375550574 789110666 251171457 812538340 898694293 956990509 942030581 999206838 942831145 942976659 156002648 838859472 737900520 896527022 226404054 351208272 370785734 515442625 76660738 262811773 883272503 884673306 150021363 584917007 62297326 419983125 715212498 810914705 534939701 864650444 335860997 699232918 608872906 939545245 280406900 925968950 547573022 606897301 385175438 440568119 19027555 555043051 940060045 997242216 77724546 759529636 107678461 962949310 450664210 607308976 820476551 836441406 407467129 638778980 585445338 593250999 728246304 768240292 502967593 928155518 249727531 783783310 196166604 366006853 588660259 938919206 176574918 449612370 849774404 862028966 263630927 500938613 887170112 901418108 372751316 390418175 943866269 948106484 361007079 958893573 899786735 961081684 478069907 675535838 588702337 613850509 192645702 218600933 129772023 843451349 3005006 646088383 875911807 966165920 182457657 502101340 176292723 906091541 148547402 486114607 532372755 793690502 786978647 937129263 861569005 929124793 949606228 984619923 588592975 714577862 705574981 923014361 161570889 342733147 583176841 689259740 637073471 686730207 489216831 590229512 648841559 845626981 35965126 319949015 571409380 689247819 866765635 981066265 47440290 867612036 278421217 464132784 964782019 993221295 203974725 506372042 621050165 690184654 827713699 967423497 214571706 872362871 808111422 868532185 482264093 895871311 665628271 849903726 573102546 735576397 793894990 872651448 672404300 740872031 201188736 787857413 349882196 739500442 692662769 765085725 377189755 498668245 912118773 987237982 650807902 719624168 110869631 475112775 355225941 801865373 55188349 101727511 165537974 737560805 27523743 401083153 612855259 754499601 906888655 950413161 901393603 907103243 239339803 678326106 898179412 940502616 534335846 678342827 149445908 323275837 937687038 952663620 371043688 553715498 838142185 909225755 191307530 778039148 54547296 637196972 725595588 824109100 451860525 529191679 999031439 999201542 945418118 946765980 565272319 720326872 986822569 992523058 60748254 627052828 116622550 253112638 74155402 112324724 526798744 730579758 665595161 932213936 871904405 892734151 614171984 924562629 825928369 937429008 239337414 281981164 825240753 881316780 240944530 828407849 808380500 927674375 16270523 466217206 695280328 846257397 170574717 972955919 151582188 301319295 322612555 397057309 636396025 789550739 853613637 967997480 155161948 535350909 754119274 998263003 228687443 373781198 635415158 935124576 622355757 974871921 789747884 877230884 304421557 799651841 392564399 585263567 66194138 69485395 623126546 924263249 955971116 993993738 952525943 979939612 170792501 294672727 374587299 378244845 420261081 662432843 800280773 949312420 27788436 335020205 416758417 507150243 139723372 788187684 998951578 999144827 881556261 902251097 291092073 407867806 775751580 868371326 263879864 508189911 621518319 827330359 466366908 613107368 678461109 681289652 354511563 581148625 627973925 851965941 539380438 767646448 510380023 876678183 459554167 558754405 707046140 732041820 223990248 617048157 214325241 520688935 367201743 449357996 276575489 677193415 788158181 894875662 255263149 848133212 206560326 554163914 505002612 928987102 971816401 988597718 245899842 453505263 873595589 892298953 392319242 846357945 866553207 990225792 97225496 603922356 159261066 881995360 785615844 967685361 142618623 481310143 124998813 510620792 378384431 995991301 225089183 649193563 127989046 724512086 335790242 347325149 639710532 839862632 306020084 490342406 325503083 334634029 972672082 978026662 199614090 524829007 472306268 674406366 359347972 872430362 232437525 729589971 119959506 882053219 584937655 966286409 871682749 887955011 60124306 542835967 557665709 656707503 484053456 542919243 618067251 959796436 708004815 755063648 11497827 92457254 766595041 960002978 570819182 769036036 933076390 945859105 12765926 716718740 713643400 956304132 107476198 863921523 16178242 313805458 220697710 310873126 548318323 908407047 551217753 942311961 685766770 975148943 868255515 884871181 4093936 510395154 238291595 444270325 81222944 685277838 671561865 673530226 368072113 402761716 614961131 638714773 33947453 340160258 867223644 994665176 213111670 298304029 88015509 813844097 531076829 671755842 393797523 886441070 485956895 979616191 318584008 440163564 671620665 698527388 421252336 640145551 424384758 936093183 460193510 662291077 926195884 943330091 612147132 843705352 709570864 769854527 168272907 618557842 568354643 856273480 985164154 996158452 107495371 559352846 729191682 737358370 905189325 947193036 984899553 988263922 116687300 806055299 489212231 748072570 914627832 992061581 534800727 837255012 123222675 776543175 466620027 862962758 841558554 878532606 828650015 838486459 595570611 809563428 416891930 688759162 342068926 608529814 713919195 781323060 260438265 957841970 524326730 850127909 350486870 363896730 459781538 657259387 524728434 892215372 430922044 619984374 184814138 701002577 699848278 809356532 923250448 940022792 884563783 905259155 412266331 418783384 505428530 997006069 725994429 924989729 601679313 807177194 473596594 793844212 563290710 835952011 191157399 510027834 523405993 975200904 706852251 933697970 75332457 311667560 228166819 812678374 530215753 824414240 951907404 957742789 500478053 715115404 725278355 938130999 753945341 947515175 9677986 244945592 190756402 504455069 742879024 887462640 379239743 515815502 713847584 905574180 878388688 883071948 421021974 803043391 148612064 939910083 470501909 598508683 26818451 756530719 713887244 933877424 37134559 190359861 533860479 894132440 907860708 928714025 521675364 687976666 277814405 385552990 674948758 865370062 72774090 338965186 601738351 894356224 932779973 949337142 652646188 817486716 341389418 801899899 350691387 805707593 643391597 709921926 607679210 678761960 727525707 784807880 632234251 645777526 918387956 994495509 732446620 892839069 351341017 499442853 52568199 788846125 101884341 247954962 611649269 669835327 939793405 998257108 916229526 999728850 175392570 593262287 776100725 906379933 334464896 637917552 379403736 602678409 62717568 660897677 499910801 552483632 8163758 54399627 449886906 629097416 560866994 916918231 679256753 683224369 980763861 999484161 468127904 603005275 973851751 987220037 739228917 807465242 955743574 967981556 595336503 916236295 716481299 758896961 36425781 843537519 104638299 150637675 357148855 890363751 673320841 943222984 698190723 711876930 876834139 915011110 965599628 989854472 550318832 845170035 260208483 848196636 884575620 908443129 41005766 45593357 811380236 958989036 813615625 872399840 15740780 202632569 747679894 950036044 917119186 921341033 254332697 295262248 145952633 551069282 901879981 935780229 215180020 512203112 678140262 847086659 310192835 766556157 179130506 575676778 354601588 845102451 692103323 918400637 210540753 356800203 51570095 317551689 931312750 939294163 548919482 853163162 573885647 950567092 603462079 953118390 165784964 394178703 431088601 733713389 355695992 658294396 953924729 967510039 788566477 933814386 664772577 977713733 614052723 889120371 450440967 986210367 189405997 462406432 441223420 558905603 295585707 431855154 312865205 960835534 704352602 886757061 929092526 957892569 86567451 357672183 531752232 683786275 97547735 306013827 804353235 915097677 690198013 901031468 344174567 511259613 891013014 962562394 985107750 995986227 656840041 850904107 441957562 523624438 607419908 839394760 734954767 765439330 604863484 928609588 687191663 969160422 283778517 340239793 204220818 341993500 772812057 932794734 238147847 552245811 347100905 930217886 722516065 782843455 89023499 512418051 759482205 950819494 897969574 978942436 264943058 609001516 817517960 927717193 646302129 792174756 224043906 254406432 26311509 634488678 233964315 415954558 738527020 830881347 510717104 807920288 205410252 687683564 966708622 987395802 555232385 644470418 506561515 928448631 75328882 705788870 411527880 962673409 751427425 769096730 325710927 946637119 775224877 815932885 121578995 279463467 167558389 229463500 873864493 979454310 900001913 981319568 527282288 641024650 277364633 865762382 163788385 359785927 681008761 731720165 920792061 985990772 409123628 591316314 512368803 656044351 425428834 980010068 544247369 989431133 346639832 668328075 288047057 589843261 669275346 790763724 207462012 761044654 428115362 621977776 886636319 954521292 942245363 992000758 57643616 847507614 47493276 68886565 458863016 633081200 680787600 933734807 982217347 988460952 72341231 165324680 50929691 611992260 540717441 965524653 984104994 987572709 973217521 987438387 727189826 966318148 167186818 304918956 972988046 984883969 420659974 551260192 76014779 299892937 195139428 954404448 803140060 946887711 234752938 446778610 638181411 994803613 985249855 988454069 973588631 977682141 325296704 751249901 496721608 797178441 418537803 665571623 487403169 614435408 486789537 724539146 912518244 977343218 871115382 911174105 420340050 533399175 463714478 891787917 273973697 381886281 349513629 661390363 46914526 845800621 655002833 909628152 617429655 992275286 920578871 937162520 136205399 495904962 599454565 848274015 312224857 315867438 871463442 874696416 477860643 922257099 105123034 143907775 342362246 686996957 225700028 446738612 875593572 986096676 977583666 993255968 318530279 617025392 747930123 867731118 173640229 898301487 387396913 415584984 966089091 981116676 415699880 649594644 530233461 747617161 487971727 501004044 694729293 942869987 260535420 477343398 386288778 962145725 633441470 927668094 443102839 896077518 920741652 923442039 383911438 442770632 867796374 902920770 986472937 991434497 242952530 442948850 833834089 908245017 122082810 146927050 211521976 302335431 881313611 890453637 837275270 858022672 457372471 941556674 706841278 930767470 96656232 362257837 317535341 724978109 636790400 989477596 828482736 907284878 493589280 941682697 514657728 533263498 293375870 312757180 19461722 856252745 827290401 841388650 682393333 734612081 666647063 669152913 380420058 734322992 318752664 960162557 194202334 625150903 253068093 741196900 676225587 957023053 275905385 764631019 239262259 368639060 354615511 875459776 214555641 360267010 978281199 984671656 637215934 861743063 880894023 961467995 76220346 595816866 602167950 870260747 533809830 991591138 310266290 523434119 916527906 958251403 28744115 836968716 172698051 531681847 200440852 754021808 936555953 970324863 136629212 394368423 417084909 813086031 324734983 955971935 824949475 893661843 632020867 945997512 436474194 447432281 191045238 467731666 423836443 903861737 806384897 846935035 154095677 655215062 302306472 508050050 498090234 897273948 895014327 955193657 888750999 891381768 793779686 795604288 477513626 631750316 828583258 986815560 720516465 986346510 910769848 995057337 348992894 894206690 564353114 813149429 938410005 962523088 441126719 973998071 473421908 584298828 15631534 293412305 292513931 665948650 983300175 990227703 626541825 651744438 180646295 673236122 632977529 881629392 10950780 856813851 881058412 906615733 210078372 376340054 967425419 993889242 33482739 761723024 896962341 991594275 33780260 197822215 657397187 816015151 270563914 538980090 498233717 910149225 779099898 990315100 842716589 935683307 884571008 933308089 436638967 458516687 720261803 727941432 75484003 882164046 139590910 807996361 946424116 987768821 904121313 992862452 365995742 960561840 43118653 362399224 177854915 951668810 5911103 745019154 888930130 979678409 587850019 709419459 912070204 962224776 803948426 820288459 959383858 998639129 437614862 886327490 712985893 787899748 286970605 386985968 733350525 788478768 974586828 976514082 157215094 757029382 10496387 299817753 151624120 235260216 457759845 807433467 825668116 986920471 420185904 900104816 187906739 356459032 496490448 757934865 525772980 622184538 979668322 983520765 500933215 647191442 292864113 788730480 71057017 804106320 571259831 911883559 996594805 997204723 602547224 865308675 316063684 700831984 208284733 625109960 294066972 983866388 247169950 334622706 22647298 216814907 483058920 660343730 62540522 437939933 37330297 292089785 731940405 928169956 157929858 220284720 193826410 245359677 288225643 643468621 185383828 200977400 330706949 852656582 201634587 628181102 261741581 799588300 308923591 425919969 393834471 849275375 781301914 859249788 864349863 917052153 703974204 821868351 715999844 946139828 117454434 223571648 464910839 968841808 825022399 854061037 454254152 990774276 223334744 914153847 768632181 856410177 118170345 487024768 258076164 834565629 916641292 955686158 815335812 979660533 545721275 807181273 770918807 909198946 394759081 595314663 699511978 935957144 440867463 797860131 454876585 946905487 294356998 820569281 561684155 964612242 177455189 595996098 646856065 935102301 894378891 999680188 855975037 897397570 522881771 748215825 159004253 638706427 894932670 990254585 38447243 364452927 362488445 555192471 445670636 772556064 453940213 874747410 696733891 922160196 613761746 933958681 949923287 988888772 409870908 715976987 275509707 583419420 473126603 695659732 622092075 674779113 125850091 362665772 20404796 739489716 936561944 996871748 842838602 969125756 391386348 711903704 166702186 348578592 335371871 672054763 619709976 862940203 400998119 728388776 707255902 768653663 771680368 884721616 455194345 602167215 555145901 889000021 497473401 725984616 860496754 944273058 333657666 868829471 539160212 897876260 985922093 989424534 239324717 362057069 46532333 149669930 498018747 614167805 670966496 975514214 363356638 901514887 342860627 809508177 687936548 809961174 316244672 650992029 196473894 753634353 201057623 958438923 332164311 597510226 454262077 787083635 523510558 692065094 73705284 327870432 717908629 808041877 844327001 966033573 287106210 685221686 284956376 519299944 565494066 582760253 543713977 846908973 701077526 988647098 739464587 976140009 757527648 815546298 980825936 992999965 258972720 693109426 91203857 911888466 141271389 233331529 647786487 987665645 226696279 959085158 205267193 741789066 982997744 991602039 870485965 990745644 936439346 999083222 371402391 814705827 837035260 901192893 485551260 868674529 219539230 738590950 372604319 975210075 409625362 825590012 610939223 628369476 691492719 894804355 473421051 764657334 398956932 624199943 769278761 961467928 153887675 164962009 9897701 600935886 431095821 997351482 227514275 340059773 164307924 879481262 341291690 415559136 139445646 966564110 102330101 511028692 950252720 959215520 406588113 878490600 938905588 957289820 602513969 979579166 227135969 260268484 776159457 929551436 961067405 984888091 15146265 178173635 969468801 971288914 830519138 991253775 723485881 916477700 274420477 922724653 266087008 689688902 907120282 985804817 603659538 828586133 10691872 809475857 510958613 739107501 3331580 453026209 635440225 794375045 428735381 600957511 404378080 555064993 796965390 835842472 88545255 364516988 577298128 820499036 636127960 758103741 818643333 847049424 775272258 797918131 685106397 816934673 929887813 933816518 255747766 535937645 385202005 760298222 222061111 877340906 695362491 905499252 467031982 857530781 545138024 824745818 367081022 576798802 921954913 960267268 328426653 631582688 771138150 996345814 925461953 966788783 928090102 956579936 865342933 961875839 937990211 952140108 886277250 895334278 602894324 641804461 512356211 568820868 863761871 961016129 241833485 574050785 834775433 952939319 453184938 682978958 805903483 872718961 647508720 651752408 549694898 619842488 733044383 747092018 664906133 710740074 38960669 830404185 802286861 846234500 712601410 722486606 778196445 877329990 705728496 750666834 110990777 675941640 411105319 780838860 736481425 962132772 769892240 946863489 889766965 929837953 236300710 432281008 531606784 677213974 392820059 549628048 196484165 807204091 565029522 566904108 740877419 986070959 641952324 654631013 460594727 791325076 543066679 581623388 832640839 877075927 867974366 964619028 77196281 147190631 424066278 469030698 891748678 983511229 911053234 947308268 805848731 947428561 103847537 185197932 556645232 816496155 336072881 921483775 504106853 653150667 168325855 845786097 890812838 963392183 947634177 982815612 626863226 778661929 3337347 551984193 289836359 611979922 521177512 883821280 722350414 998957131 313216535 993639432 378911967 449209889 89162514 405418925 441350089 969952446 284862784 463527610 187312413 471350286 472086455 508234611 139053801 269027298 94718782 881304358 384824929 672738085 155460155 455598055 675193545 906320818 161696071 177533058 290306018 438792906 321027847 896642451 890700111 925817016 946676930 947159220 897666221 922483033 749747367 954823380 437317358 760096694 629895992 714444790 148646327 971193885 702997479 923231384 16603309 21133972 930999688 942804192 110851325 854845765 789408843 951220591 110465915 882885508 147463661 188470952 160930691 720934574 274460321 875631035 568426432 629417701 367678324 914801095 76721505 259105856 757500405 995736737 508758038 668693994 756461317 988305809 867364153 956049028 313660884 792595747 675954083 858651284 259572056 299360917 576580356 904342936 485126273 737135772 219129693 398694506 633670786 851438990 700329401 961136150 659038298 931444229 289462057 414810824 480511211 950258719 621910340 855941644 741209481 896637797 573531755 662948214 758126484 846589233 305897485 390712444 5269406 47476637 649421567 671769340 494253903 873227018 667398742 869466302 59039664 692462462 495733578 653463593 65187489 115907736 849685388 850025231 470118703 526084978 972223701 973793881 712085216 832259977 259331604 597405493 767225165 896252627 814737573 961393898 128579668 642817729 996917709 997684560 817523610 905863541 575694042 782390235 56622691 690870910 402724817 662074855 804958049 932909971 30417197 680381286 453039562 558843232 659120637 793321376 130736534 301756536 539723036 827478569 244763861 793733524 135101775 800921154 971649019 992272270 480283290 532117395 916808533 945784674 901217608 971674241 541753790 714797010 680609924 746549536 759012253 932882466 348061973 804994482 108066800 284004234 421246805 559372998 313597099 709764099 732743649 750910620 749943390 774340445 531484246 676185384 813755288 819561009 387214407 746654365 425836733 896037889 574276705 734803632 372870418 748137107 641847673 968160475 545488377 894700964 206664580 610522572 71022323 679649654 568676871 621639075 955120445 958553375 82539081 711458898 506142117 697555595 818070224 827930400 369039258 860700765 880814534 985705425 682414337 794688148 810526893 903758877 420950826 754189459 613061615 693821241 893151830 984633150 856576733 888950586 955449136 961398973 516334430 953514572 927768240 942784881 554175743 964395744 987586684 993918813 130500093 475435410 306647598 667020067 339512681 595511425 724910294 903896602 662889854 837605313 621574464 766831738 906850545 966530618 67758669 92077413 587275781 714793213 519068186 839689219 203916942 433107449 612901336 970419265 922068419 967921904 372294800 706020220 896463734 920603558 535716989 943817704 846108122 990558545 710265920 768718663 993636805 995904259 674141092 998917706 389146441 930729334 313601176 897443877 388743529 519852705 787382774 853611231 474163528 956722173 193356515 989874465 433837550 651246892 247428175 685801586 803965017 813008767 3922953 991871208 743406638 993475908 695717231 894097579 268770163 790683989 834065088 910955342 288388016 692722833 194474687 693333904 727000481 771580082 759616252 936412496 69800523 277907176 936110959 966528002 666681110 934363758 296229578 652923715 595095039 738756605 791601236 833345397 576020727 890320988 557508070 733818301 107494927 755836673 260189267 788659555 184429045 695432133 728837354 779587777 639388966 669605326 917327432 996333999 635868943 688433969 942605158 953712211 32469075 216217230 8855911 29090266 82430081 938566156 427092599 935280953 619730568 666084844 303584814 787428687 289466067 512156239 363832807 633298753 250437307 385111832 478260415 911168011 145877709 986461948 969463067 992113224 512082934 542808893 580344452 918090080 578467369 603634123 832694060 921641959 661106288 666785293 343164240 734613290 927716044 950382964 427506209 493006929 85934547 787688927 421681390 782714232 451274599 823662766 400515083 960598663 841752834 965858120 253625194 987254065 247754461 716971786 249707556 709804217 680710659 884504697 400723301 643514519 550134341 663059326 362365967 582885752 822687991 942368390 975829520 999591446 897547925 946503794 440525063 790128320 126053057 641364773 280028506 484931508 567221286 721334970 276898106 642962027 163321761 667210521 71758238 278337735 490948447 561108183 897605039 932731111 697219659 829390947 766202252 807558223 910409097 994551294 391045561 695509550 751576076 951810339 564336229 862190587 141740516 257036869 309169254 698007021 52515479 889831980 685012217 774363429 806973912 861566584 93707944 866054510 57838769 765705977 15119797 625514422 437146869 631867412 92366492 732882463 78023896 252875731 115282577 244364573 609684500 830830267 640080074 841874043 94490057 555407663 867300831 911512807 799186429 934584968 356622887 962778860 595015400 626974551 891506868 979113490 345169441 615908057 324586328 923158773 241651312 327022826 239098343 844501120 302693464 900198583 218804999 422095691 524696423 707450603 706872296 794824872 862005876 911136022 258754518 836696367 246874797 941251330 462503532 479821322 237912725 679194628 670441501 838205158 63541358 473562929 659907782 675923910 64214282 85950332 20129553 206860182 396279054 815693719 599353744 758468166 503512783 610542774 740598934 776423065 447647953 655529571 304337246 723573838 3598457 722950659 448374410 892141354 188855667 374641339 32258853 215580576 634147798 873665163 354676633 787138502 875162584 945275085 578639695 916986943 470525139 533686039 269066083 848448421 464828517 645443321 355710894 534938312 888277946 992573149 430512759 741585599 626206707 972743042 426079125 797864069 931079673 980435499 530151292 979122085 699127131 914224566 333546285 729454168 243516232 410073490 299228789 938770244 592766531 867365449 971797138 973255367 621774252 721557572 551177584 622674083 81674687 803166204 166467606 419165394 81689009 993574672 168918735 819811217 844411401 964585898 619643848 933369422 371684902 422777302 739878837 971986417 537815052 615641442 751217173 766236567 818667779 949301299 681541953 713209573 213410096 396106931 913098808 998581227 875773184 983320941 737166486 814726493 293559504 399796967 594691530 616718112 622852670 745452190 174164236 895203365 62224063 437949602 138081387 824550921 433089842 967428964 588320231 835383179 348189528 932762405 216511690 457431150 742580032 989125722 358485407 585002529 938293894 945206948 707035838 778018019 942295322 958823312 375580461 949946115 261364415 840958142 584456507 669384095 275975133 533256941 456258606 911502110 13288161 817205602 27136384 265863917 535471935 672294393 132286638 476942591 374947887 902283008 208654581 943170163 643691456 835345957 156872753 521775872 623462670 754708993 734629731 826578197 386340267 795576871 660419803 886347032 802718595 973216002 112051204 414579712 436634086 558164475 660898235 797629176 367234953 757633383 86293985 726203798 318929459 970087835 276798009 424540766 240548893 415730250 90685578 465615517 334836482 723911116 412939155 753029242 791589484 839916666 716393909 910555234 415889009 593754480 988526953 991816581 768521792 969232901 701863791 787844980 960331536 969460463 793070020 887344696 448381077 583340379 5851033 997896655 341389084 983185235 206185801 345117343 712872774 747815942 929624661 999320975 121261964 830909092 473878508 741749570 635368325 635598993 110787106 363765047 355670985 938079937 728730161 955646432 694500334 980998748 564708751 962447172 505118451 911021774 239403983 269633521 261747662 702450801 520750972 944960038 244138619 967820264 304291115 797306872 806385416 911547342 196069913 571811013 23879009 412586878 746346097 855613425 651858458 818256835 187795215 922877587 992748089 999198590 9690710 633799200 123797480 569782922 402186719 683228637 798052500 902140577 318661457 600725826 790667773 843737338 484723674 506327064 534512553 551646361 628758189 981025517 542762633 991602986 727457379 836162398 881136531 904959328 224702304 657373094 154763285 492609295 271261998 618654447 925413281 993094082 995654027 997192041 289051887 616333910 482076257 483620986 771146175 858049728 79778234 128735583 687059589 945261233 954659069 968507245 195666741 281385861 545265377 829276276 743870430 866143388 850189007 873801364 640563560 717844956 992048391 997607656 312220265 465781581 791225271 969635330 271465977 312431646 435198015 602020785 302338551 887430164 426030742 642904784 803925758 863537193 84142320 328923193 922700264 924251092 548578940 887174415 367745476 411108904 286945537 993744410 328031651 788876075 396573763 681189466 742374385 772233058 895178322 945905725 532903558 770424224 470449377 941448999 990918756 995250971 767731313 886166512 34323673 472259076 796657289 844022953 864866663 931119745 139669416 881035690 571171529 671175569 619782961 976053928 430833722 598179884 368473776 594680084 583640727 687338340 345534064 373147965 88405542 340981572 272780421 733479789 518265331 668915367 640351643 839631837 307448581 964660527 303926488 376762716 712127703 876849604 507597038 684309866 161631864 315938680 378912463 510682914 973679694 996701792 286930565 374426678 469637616 771597209 152005426 612249959 538974634 726864871 676030257 797453958 127387619 430155222 295137978 654148091 895046345 970250032 909492299 933830156 362281595 654295993 488209964 533934588 934072053 970157167 389169305 444989644 265888734 597101834 268741710 710736588 252888979 360973746 135119555 361735196 385654326 577098157 565036526 721793190 805155439 818906589 314271961 832476163 475275256 494141743 534828840 544018831 703336831 937585723 656725203 862545921 668886317 674124161 680624895 689233857 636913745 947607092 468563442 526957938 210562527 358645305 48189985 587712487 737524749 996663305 233195576 293643343 537353637 638529313 161215854 546846893 629321036 889800391 271483439 412673435 275702418 772610824 533316254 819921541 60401268 999406546 165124172 204392537 833319314 895078696 704389905 796393164 452604188 561561559 250306067 688122734 914634476 990202393 698881470 922147017 406755099 760984497 503222612 953516733 809560650 835674464 19242586 902588234 551906738 762080546 775781498 857425694 497628754 822882020 536907913 927096356 219056988 323979872 323151375 661838384 163270023 233085274 896590632 944513248 117227968 171765103 324267511 918990223 124984474 427938196 619288549 728021915 984468102 996227338 635235730 781512126 729853746 736318330 525987611 731271851 556239524 890346381 838101684 916356498 46209969 119023723 253027741 456615898 872959153 981098482 229883747 272030430 519667996 916655649 674884344 944468293 259202078 866511613 598887758 693768814 320451847 972506029 651911254 840370174 202375237 526710080 385764935 746255843 798580391 937114468 257610478 516105385 325559041 839806804 485277576 526938225 519911166 878775733 929954845 954059642 936208065 947974779 480670242 798717688 196532708 622638572 707765711 817436384 820524397 835225143 176231409 215472140 296236049 811070130 366087954 474460291 806531484 906197318 657268619 782385046 27543678 737216909 739816207 913486920 791814139 858915792 170972425 767461963 53664925 698461298 553091440 745447056 701304660 941939181 330923629 736053810 436666502 919952875 869885015 925876688 273736087 321284193 187127604 336926681 226510166 711811255 889510105 976961481 345072547 487334395 813960915 947950672 326733408 533239565 31907291 446566791 229835258 426755641 432446783 634482123 221496099 481451408 659164234 893352832 171164798 746073736 963196188 997404706 868397215 877741382 623835333 876994620 287508986 738291915 277929754 823553358 734910857 877734141 382302546 525954961 886025848 944170733 746618417 873154071 545805694 581687681 197172612 567967214 310187537 512863054 332436769 702652895 458921359 692852741 56316491 491538901 676835454 914844509 149489362 716692574 6836037 323928024 430851438 875823131 474333608 492273791 415864441 453558755 331021652 849741182 715012963 832659749 327421558 610404216 232717119 654337015 511365901 599959299 712650596 728767480 567941318 813566169 425119789 882100940 484079534 694084191 119659199 212626545 955828910 975047100 497647381 816702341 304229066 836805850 542576980 853967051 163019311 958721139 543400130 668750913 556208484 617483170 138211484 656792609 910754793 980774615 920343299 951188869 941161509 948443433 617050033 972435365 95194272 685084510 219803286 676684907 477242838 559756908 134032789 833574538 985865480 994319451 847615485 857193011 746685775 903217520 751536230 937257072 30901832 455776597 354385092 360063118 618048809 712313020 13723771 410585097 206829403 462927582 299359966 982565633 368688334 931887888 40998308 470964244 448995073 902608940 828154787 989754385 316238006 950209325 649042339 721686779 796297290 983411777 374620979 685715204 268892176 519401310 160675426 282326183 790087122 843269669 472202649 726338212 71516465 528041030 574928915 653135801 490483551 696362666 871590136 958449571 669826226 998001796 718450684 766325066 558822964 885452233 313428451 808868171 550669953 581853601 840783168 922017278 521040407 992067378 861809710 985940787 348946981 850837843 715711551 946650840 983262082 994107400 771687693 985565325 288177131 906833452 263907687 351033029 415719079 569454658 259535245 595794818 704536382 758105642 535158639 725496351 92796186 703730960 402174006 878148317 193042258 509845794 970089941 987258866 928979663 998656183 767034112 958294184 386329454 787812242 301348154 503880976 785621133 808970780 306306548 767060160 980641677 993716241 275565562 560667272 430063487 692536146 694443668 739524194 163588096 457443470 62893334 880729330 420287267 499124962 674708926 794146091 96838489 763926992 703462666 828607021 964474027 980945130 534247091 556781847 960727794 998553401 519971944 928963349 558409635 710011367 382548347 975692669 186568206 317078471 586905159 590561509 44590166 469513774 85754539 691638330 414270567 593907866 774485538 953164412 781714038 878001427 943579107 985480961 543544321 602069117 813889896 897948560 980000217 981320413 226871668 431467351 360079204 574384313 545837908 657525560 784490819 902592080 965709672 989746191 121499280 585820977 818271208 945385491 499791836 745818312 687349593 947059969 940141129 940278471 788001851 855099550 796953212 806355885 864098956 918804806 402130300 495515436 726061796 954113313 323716426 526593978 977414788 995924888 140088177 292976802 376018457 815460790 643705218 976175293 161364471 495342965 436534864 891193453 470226724 868776864 268870777 974398276 908511545 913347910 915682892 994254402 30137781 899990021 574284498 611875851 154476438 977671677 764101743 968805388 760599920 847490043 161006687 960918096 567178235 752451252 452442305 663662107 796733978 891271855 321362803 488093258 817036423 836955794 668931978 819349726 139895901 265018493 333384096 719274107 198078109 513892571 916701801 993543644 425692880 509107384 604495489 719398156 982902712 995363880 765843917 841943039 479965130 790378182 236726231 473131282 234550580 613528567 989234411 992830386 439806042 763775313 192539642 459566609 56123374 907494897 507815861 785584905 366481463 541214940 731647480 866375401 201135980 292123928 145681377 464606967 502763848 959522413 85598765 807215395 133009300 305348522 478272782 558132177 897989197 966562652 54251004 767593204 307807209 947831864 209622572 648440287 778066509 922787963 736308379 850493852 670555962 852195843 324617580 517861050 421813878 727814973 794071169 879696465 946612072 986431031 306915153 841105619 311395814 881610308 769749239 942941700 766096548 891697861 32352577 293876620 945425120 949188292 891574097 921159631 171232210 648748845 492175707 813328167 502493100 782564940 687085157 850272168 313999308 807419998 885020775 941769247 976804123 991823433 143789438 657527780 619820400 884621177 948286257 961419010 584663520 764300504 555203015 922151651 277367405 424959026 141181559 895335712 754515356 800306428 104779621 613316074 649412519 904732819 658090150 966486855 770134533 841262070 765273424 949324215 532075775 971370283 963332833 984153420 853452708 932249419 512306755 565283047 123092474 375010568 887637811 934391732 960592072 988270243 627826808 900014588 567157147 781119140 540983852 900717814 727742736 954854795 838399947 952047545 573356974 687759336 843300548 928674539 667569486 869999076 174721445 493049447 87234026 134541206 574820432 789046114 768268111 913757450 707330218 709842371 612507146 614659924 217929728 282410014 179435481 545231320 45649810 890183944 895463307 949327160 976863388 998925130 80449505 528408187 199323789 788809438 418201829 741669188 713349874 734989486 270130607 347163509 150165313 317058847 755598783 922296831 452207043 531373518 105108349 454977072 528968085 615468826 553978343 681301729 397329906 949320217 184276074 549935974 124937939 415902936 42809413 908599309 817133305 951391807 940100780 970975517 640733155 768223062 808786119 875400839 348240121 914496785 974660208 983943235 409571468 543414150 678576304 865090555 687292620 834338039 60987675 549327838 161038384 975096661 115186973 909126343 252221563 523401529 293545728 488835711 334884236 591712336 397883829 482466791 758871002 787387756 305353338 625006570 627860434 942621181 564363140 887782356 93389878 331220472 975215708 984380922 194428173 866328287 750852624 970793013 622946639 865334512 868888762 930772275 241047585 273457510 144749398 640629182 557928920 753985215 420125059 650415006 269533775 523968377 204091614 410108334 306393843 776541898 957987823 970966083 677697708 833016105 902064114 997602198 828469335 975589140 363506249 998117811 627175911 700543255 553621523 632874326 489091365 507150269 711279206 747475779 657528257 719877215 492325429 561976202 683245598 757540217 558079177 791215289 685102492 711046283 186930519 621463633 945252331 992967463 159379626 612560529 727612761 846320761 617782702 947669206 884010173 945317921 550495005 608791433 420943456 971277333 77533629 300834097 680598367 754292539 588840895 953030671 387763072 783043321 104951895 308600381 299212919 927525762 194628222 855596987 191018276 757640172 557428771 589122784 548447093 893389967 521541010 659745585 949131482 977795599 940304365 996057662 893918424 912025186 78199474 532887839 321823684 833729842 852620961 928496109 360111695 726028320 313980286 688439087 756962012 759127775 969923890 982043087 986632800 996968810 300315352 755489175 830912391 874648583 923528418 940366331 864306927 909051705 114261135 355946601 274804155 603884493 36423958 919610921 940535001 975418230 553277101 877628900 217813897 340506069 249144461 300826928 558117000 967094350 744110190 970187371 161388683 567653974 723813451 734903600 426010400 534103562 339510162 927115475 817736238 853190444 391022298 614583405 938131832 996257783 934881791 975414061 198144617 991471008 190654369 241440260 969258587 985290996 629289269 959552510 231219042 391517799 360934118 980783544 151692247 984478438 501661441 767404390 116347283 932557851 522311618 770990374 174119254 600795085 824116963 873666037 455909436 763642144 776568693 791219005 692424141 922006198 93297480 216635202 968964858 977152451 698787162 910321641 863607829 985501420 997436713 999950478 832493067 869259801 519688613 658787350 844853857 959156883 315438901 974525410 945544576 958582721 808043214 880173459 769426742 966314661 841861120 975059630 272750069 376203955 227174849 297668928 159263367 982312191 367767736 829928238 112025006 464434231 776352852 920571400 207974532 790121918 374009800 574427106 443450552 660094630 618722720 965232856 935076634 937091279 88855780 631725692 620396010 629096270 980253522 980428262 901822410 914072874 688228182 785350051 522159366 968892393 576292334 711667721 609859852 640654861 731074104 927120658 640737259 726469873 552013393 668539390 425808615 760362850 848915739 957719698 838267374 986495252 313142674 700470129 864478465 965077475 787095028 805234954 388655566 715186530 772542186 816835025 220496552 713820493 639053685 661569640 621023477 722789446 551710411 879869092 718258822 836525313 231566817 432317867 523025150 633702447 297777568 517243433 841012864 931960085 572064978 645018555 350300316 915119980 61829482 718397777 940927971 973225755 276207415 928694944 517002175 869645101 971372357 992888735 223875210 319783721 608883036 979297525 705217950 962147572 409329371 966428065 179291350 812217287 757516605 803030238 175076666 387272003 303439385 835374412 146460321 952717477 338446796 759565317 817197824 892826930 433589898 816107047 913062542 931360189 62882565 835444335 414209070 440375339 559079372 733777108 40444964 234272897 943610714 949518076 509595446 758983128 698300625 957993278 530646030 687948964 614432538 751896101 70560255 150863218 617088563 626351882 501194097 522776906 653459884 967343236 987921952 989039654 866595625 873949057 134659151 716651307 454017821 667714801 524331080 777364067 958990722 979646217 412512590 759068179 531241679 884065629 554042479 590565557 829360290 914018880 188032626 596929521 30635151 901607318 398958562 851982850 361881365 822428772 55264040 806121809 209562625 809334160 131777585 370331675 160796101 354994365 231186955 878715215 804264158 827999700 979439705 986862382 791617194 805922199 34224003 536349446 857856437 859809412 444425640 539357412 250443508 923637106 307760606 933405084 266351668 394254713 210411567 544515203 447972915 606225337 620072107 735546759 484512133 755691120 848347359 920945894 798166101 937061620 559000239 755416582 44618228 298743838 83197754 766262761 968560762 977956096 49058745 580523119 685428911 748753580 235105941 903419079 386821755 483797017 603056824 890246524 839483081 905047737 782091978 825072598 333073062 776915991 559919494 732486012 110816614 863307417 414820238 466162407 677687203 849560619 172050790 330480227 764698328 812937253 64634498 311637653 265977913 461233014 172509104 593195765 155870878 273261720 477466042 671830424 681676082 992483629 320735460 668698689 825547545 990342503 591037386 725036316 573779173 630542475 497856739 852454926 34766838 73686173 216227787 565343097 761928533 989063789 857517295 980913470 859509692 967048158 70164864 97996037 161519906 191639550 936799287 943371919 274719666 369605320 14099899 117477403 958267923 977571494 333593840 941295236 302946436 879913831 108044998 515811525 636178572 943524696 671343617 771342843 508468640 725628203 273296559 809340887 567141331 880720628 96628436 883978691 725834159 760108488 272346842 669279883 12738396 682902498 248126648 535801689 363241461 626087231 618462392 788038225 607161863 628929728 656876995 785270987 954479695 979736444 342520300 529516353 735268682 926682147 68823221 651947325 380788682 617583674 588299149 592696324 910173439 950793545 808441186 945343944 836200680 855967071 805457955 890203806 737815230 741711531 841939021 924170815 1005989 596530842 348835369 484211007 890286117 941885605 683217528 935180450 481511233 978121989 379484926 866327735 740849871 786640224 980797418 987941425 324644069 993663055 279340553 469091948 208670451 785731929 687418495 984271583 752684982 903356438 409927679 793871053 290224052 886980284 55582052 903693766 490968239 550952726 448840501 860440523 694153653 819851014 200439717 656900277 112626468 438903903 471977105 620698443 53812773 495195850 675489983 896402260 21403068 814683125 986932121 990753284 811678672 825894906 772315545 896115492 106733411 810083306 65470319 149331850 473197492 917555992 22764611 559367016 812072115 860277664 224498752 718160641 539015428 877830989 890979225 965785498 18084733 214217056 284140820 882258066 138114147 812276335 490137115 902537811 944736272 970081525 143501476 739791525 792559955 822934248 67372956 987790144 625278201 813367059 428220607 635029943 569223271 595219641 261423480 641626757 452950472 715276766 766376900 826938962 638900346 829684868 52261421 934026000 475340739 854744340 923746421 931026350 334845666 863568207 74084053 444896564 96210054 450698102 520761545 603887874 21684342 282776305 794486983 906930876 224729748 627997796 844599583 892524252 773410962 830450951 503657047 678062042 22112445 475106877 287936336 520204920 334075906 484394900 7913116 484646190 103635576 567029705 236442031 807273729 142234684 724176661 801691876 863413764 692650619 841631290 991261975 996469668 930412838 947672708 768317531 798843040 663155727 970544413 104021863 828954336 80432193 278624225 368656244 450107472 10686948 348940145 625357411 860366254 384736020 597189336 744853576 770100200 889643191 977554453 741891095 872009791 84805716 889302138 667687836 742728370 403296751 780085277 595046149 798748521 871832993 929421733 658510753 944434921 816108117 983494640 903306974 978944936 519889233 554375572 936129580 992075063 741897013 971681298 398667579 698404738 161564628 382807358 775304034 940695944 301292178 499946062 178843965 195199524 459130002 741493460 544769493 864794242 197266495 540601427 307678439 411083923 359980780 527620840 620995768 897817459 548660587 871730616 164484425 550557440 817077946 884692053 474222264 894067487 483280642 752376818 208244963 569700400 421741314 997919521 426156228 948200188 889080400 971674463 603825776 922632525 785356685 960311442 512865908 674234564 34860376 942943506 141986375 986012922 499492293 672630350 321788551 392477291 470050523 505067876 40293158 336638808 550047012 793195135 499893650 874124868 43592005 715276114 297659799 910028554 926079771 933545459 23377029 797603435 25035684 402253685 589212770 608420204 25476169 220659030 18245468 199411429 339235009 363373712 412791867 417484172 478042756 948053584 976004673 981457687 46822589 878170281 522358594 560746038 578749554 851359574 169033854 674826289 97584498 234770420 716335406 771005313 408989672 799657419 722256367 978231591 903243980 956487870 845427310 876559305 211540218 941726597 228869375 778528668 3726893 32174927 417333042 697151332 488979723 509885297 304700788 456052395 87469580 455204652 94794568 635482576 795082878 910042522 194193787 663897595 337697678 649483915 479975582 650228534 58822840 174206066 10224083 214155417 506417170 897737431 506069351 510975768 460579399 490690931 635380142 880692823 179590328 966961413 400663321 973224108 677380601 736013258 419828387 981887873 132822150 674897631 836061599 851496744 953839315 979112825 123792295 891224644 147197238 359796014 715057641 978254890 15990822 422501143 510332956 932524813 982549324 998479394 413943802 495881417 968867889 998295655 358125986 846438910 343277543 663255229 26207909 477939351 339542282 939686915 978574187 988488856 88402575 833965752 105201608 930110119 225846021 438835441 401852157 571016055 733069857 856026968 701870154 987431026 894452655 897855569 32071315 350897324 701915420 831429281 15272300 885720193 545644445 652187823 185329409 450924387 95624255 607364693 760375716 788405380 882244206 899534685 487043906 543691429 169658093 819253565 422776120 542852821 435743374 492801553 953284728 995539200 361866425 707524086 762983731 960110318 366896855 470273615 614307 867382253 812913236 968561310 919964228 948294430 368052728 631134255 31977811 598868938 902988595 927968765 947918006 949686681 662562841 695965206 529032262 978555150 69140519 862928841 608244275 931871249 905616889 949279069 197757169 692472325 340544869 583064407 946907229 998888573 875574173 941042912 545478466 790477725 313632950 599329339 248071114 792411270 627054967 910839824 659003100 962623140 29759932 536209044 721797544 919426944 120378535 416222275 956409804 999694921 492764135 848710705 619645868 755428600 243730807 249589134 318672416 443547211 673713057 834158121 682030687 757003938 852213678 898057850 965305698 987095413 6367351 267783442 975740290 997354114 634349560 891342075 210061342 986344033 125963270 644345687 464083903 555104484 720381227 892577701 77680694 104995876 563719628 674311281 60499618 901948573 714306190 735265133 200226976 675685257 166495544 807781003 631699996 749660539 575164592 744716885 692388345 945955965 366317250 843393614 42714861 447580209 659096642 797731459 733859122 932380359 125455506 515031765 24676831 923068086 209346630 420384559 108234752 367776635 961059238 993776030 396470768 501828539 883879871 884718578 779633008 797073157 26475619 902123461 910357008 995794171 352565187 831205514 965290674 998693771 602678546 643653599 746259638 815457274 926199320 997404967 378617923 620991087 282701328 985186679 664109043 747614329 801600465 895230121 531863569 693588084 746610325 833852269 657527762 936876446 910575743 988845082 471556738 598865167 588218468 990428788 125851955 596897334 210004332 429998014 596836511 878699889 148619806 420025158 551258022 854585416 792749777 828181390 600030189 948053400 189046457 964139173 444570575 960534993 900116080 915793888 67818255 633813511 276539610 474956488 433345904 843823106 924238999 961086466 10416507 148487776 757587898 839432433 818407882 853468033 446339547 868323737 916223936 926892260 605377909 989179414 283585936 435049102 441962405 726741697 809312036 851635223 484794075 636540533 837875387 955367849 644247862 974217646 856956089 938223977 660000078 741738557 547735436 753594808 810693793 913619099 791529207 944385445 179694823 981730985 815222913 815551178 450025693 863371254 77346150 929944154 643846823 779196209 522014197 641428180 754257378 926396704 236795272 770053594 479935817 856170845 949171150 981292558 95445351 691064111 765321349 893519927 605822436 944937960 756682373 900048952 437622577 809145933 806974563 912766524 253564474 526598178 635707289 722672834 211356945 413039725 20577330 350765234 444254242 747432875 224446499 599146248 97163221 675828164 945917303 961904773 81947296 250578586 924006132 989649038 48680255 179559287 944627648 972808282 249774482 303373198 279674829 578025551 787851501 871568563 893044023 907389574 102987267 364507221 992819109 993773514 896662723 900817354 819996985 838077127 646905208 832241958 289570367 330259285 13144632 473019645 119107753 815098557 962965738 988052624 84134084 327401343 518851306 856925234 14844817 845377007 387288670 888328843 355445888 394561778 723698946 996191760 171825383 379898163 451683321 759575647 906964031 908801689 472624578 585945161 643886365 857238560 140051163 438458123 37528323 586131830 504955157 840386065 927391261 954074747 4934717 30462432 836975101 972348961 109937009 116569121 452485616 587869019 956835496 964768822 21380303 99186789 533237212 945986381 910780649 991081824 857382856 956898413 913201554 992644923 421098601 759658341 839271350 849845624 623699926 809910453 834669674 976258854 385383738 919837446 639360931 956094876 894057115 903702381 434978008 960010490 731883761 874701347 23482620 779208018 534178682 757586950 907020332 987999455 242377415 778651955 327674170 693430925 382046285 653125874 397783887 890639751 289472517 595263248 644062014 983186909 233259155 876680185 869328782 885736469 141864290 571808411 577069846 648116033 108465522 675066612 487070104 551061631 980693305 990997360 257198822 484044289 57950944 680383497 193263341 790806644 182978006 495771228 367043069 943415800 304812683 562417540 109898933 370130762 384934941 473341165 260843735 837698446 79474309 223004998 395121398 609682488 188342165 300808676 678653549 789088666 310789743 727758350 99327427 367472297 890868905 901829033 518206507 837318235 655401817 914963565 514123438 733955996 931941948 964242387 350192746 441802037 795505697 946337631 732461553 953730134 272856665 396601727 963824476 977956450 87019992 489621849 329702500 375953475 976849311 996455703 214880210 863909788 130317474 392076115 731778271 797730899 432196181 675432650 392617640 551207286 188370944 727878123 954300594 999673109 126020852 302082400 510085359 903867352 381360096 656637428 515751434 677780020 525165365 536472160 841358327 910284031 729406415 926632430 73446883 750594797 545860559 965712983 698444876 807443687 147059302 431832792 178546673 952633584 802385551 898397949 707013536 846056660 313914808 464824161 921475763 974618622 424654835 989490135 827163353 863453311 404055665 585005688 52882566 466387036 759150331 805667378 442183318 972593670 401736473 782808414 519832810 836175190 125666090 287019857 965074709 997639204 164731073 510469924 331700228 549708165 562424251 571731408 178358087 919170492 212372507 772810652 521353565 836149617 795986074 921177102 729310904 836822354 972018979 978149728 745286158 964207278 291578933 412661684 956044389 972610953 139042872 156887556 276639117 451034387 742156733 931337836 782720358 984045894 80830542 412723779 35043407 551977254 136508871 556848779 112866592 679414289 511714196 617150541 107269456 234953804 240460772 337902860 591337282 639979443 225907715 599250208 70254814 198880433 780799362 921144244 29333 831493163 546144146 730010119 366320740 459304288 460961869 480263815 193664292 670470639 784304427 978128763 350817805 754431900 454551124 792128041 159585667 424315466 549162482 953897621 711144638 807555171 31238569 742425866 905879073 955972063 833663025 857446023 94252886 777323144 861109636 898873280 504823278 822269645 260246128 269049500 355262294 961926875 784667479 864506075 355684780 558985623 355048665 660564793 998895305 998922087 135566307 886711301 986912182 993792900 206143545 979882899 540705432 968376746 932064971 968963893 557490745 825255693 486036075 809621092 468378554 953717029 407936211 756287752 950601325 988970474 434201406 961499369 766756823 868666180 775169970 887973137 93638207 896991030 285222512 705649819 198497038 714918424 679624512 879931357 546794999 948197507 846545212 962120885 812649053 846920403 108446658 842377861 757825289 924777615 867275904 935637572 453991332 865626495 571154448 806314618 232664249 481855372 761914756 908914777 652456803 777124830 232805176 965282829 86668009 360720498 945935085 980329924 896822408 906066528 853848253 873498848 529333388 722537229 522375489 678982690 899142163 987981996 865519441 976358759 800470035 804618241 932903447 996448370 407363289 922274680 448872134 643670348 732815453 831674396 458418011 751261036 190677781 590803712 35961497 958860319 888653023 894980868 607623192 809132858 271322480 354339779 437827435 955198084 427448185 786998125 729203572 866305331 425620146 546383230 728965536 763511182 571214351 788666766 183983991 566906605 250952215 383440066 84871374 275579880 569063291 579430059 141366611 315428286 268139204 293454598 812125831 910447374 340767351 454168661 881536921 885742154 67238843 604043192 154014931 262914529 967430414 972242508 130603421 215189699 690038408 721928840 898307925 958481379 945490511 976875575 259781782 809927290 476047811 757303156 58045888 411860773 405950033 884264641 151200894 455080898 504687759 513959103 115158359 295461714 276224704 400302399 559537775 664495665 847448902 987645680 812161681 829139766 1433705 259972763 128973289 936288207 164575914 927821822 543235049 852796147 145489564 631341640 9635919 756362270 300027912 401296199 136332236 714723434 347703370 753399098 185765812 365377422 810307339 955365987 971741015 981248768 865119199 920546640 905803004 975699263 551423456 742512887 453148901 930267180 320035914 333013516 364720886 863105355 254243828 954888905 405968579 880899976 788318153 914227630 203258288 807698562 9960252 783845411 737342816 822333480 841129324 948813568 891295639 935138665 275331438 668980705 930798480 995290927 711497800 797505982 49958645 875163265 138327071 616751543 752946330 806506765 438379159 967853965 386697064 720928310 796057947 949086328 240361514 499714031 580810105 620775250 587572761 766066428 361902302 999786329 70243726 587681330 81046929 446822851 213919627 357725670 267307319 467544929 289743639 388444732 79884652 338283162 723279891 914031824 494244867 866997332 660494615 795857671 833790292 852459697 370291335 454241581 504474402 845674330 877471339 924000992 844629135 901986078 627040376 927112121 837967404 954497652 130558760 427862157 955908466 989700020 718034028 969703122 365167392 642551115 397702842 483582678 747092216 938359871 772792453 862170038 243162420 665294727 580191301 924279002 558099241 759738606 436559561 702494837 295975668 970404720 101012868 302257040 368612050 893040049 295388640 964467141 262548839 554170864 362845013 518009438 982549326 990115335 349191080 743774963 409796708 501880061 851974588 867675146 90921221 250827133 723617191 986094463 318476846 374967240 919374368 948903002 311141933 326860928 104967195 235433088 533758484 653495319 428918589 965747171 476256431 803565577 932669316 949849785 153363315 629323862 224980640 955191744 38747982 387415916 838436009 875419434 26485741 982366355 906778760 964247101 341462856 524225070 624338563 993028112 655640216 712501069 930660444 952385402 163539177 858490426 744985948 874369596 106357959 792332480 421437827 610853343 815300094 860814256 559448392 653195145 888893656 902382122 155084065 276434164 718695763 868637272 983766929 991245778 578542253 921191179 604485875 718800706 375085322 424385637 483033966 651197635 334217906 513613777 914388315 924317375 67370453 428698356 986003283 993140346 556788952 910984833 24151410 689572724 978864964 981356222 998164122 998209967 108377681 767156960 366113918 545434388 275973519 832160029 380371493 623958445 759676575 981550725 973038779 998672216 236062202 555967125 13123640 346295437 44293518 77940068 452110997 627836356 660193634 975664261 709635228 991846823 906745777 976829655 587346630 671574383 745645812 833466370 663577170 677833183 469509214 808656608 466278948 620510352 867843441 949968430 569808439 922242156 112063814 764316465 587749704 867955789 586211316 718263064 673503580 751637048 726876851 931802621 631156735 938126980 993949846 998831575 626199129 665860090 70080564 383894282 598896981 813275663 774565305 775571235 6163021 702443177 298968433 504468416 537398400 939303251 736034941 895606499 678541721 869323751 850717789 860951635 197197713 605371015 898847146 965465410 206959363 526446486 799580241 901461204 646222326 867966367 361843654 461959570 81804429 359436377 664338920 875568639 655721932 908961471 111306972 620377811 853631879 931627060 932049409 951909013 398799682 459500306 354381245 969604770 463158664 480705353 671245383 676568246 950894997 967653678 301046286 538941149 173369596 174033908 389541528 418364012 803031797 841769266 308557230 698956211 585906397 899999750 11886479 311885607 955550922 980005653 119212374 811852465 412716483 423614837 437618788 969073001 801775312 820445422 132903587 171517118 633784420 871602005 789566865 839661296 395344264 749272879 723880407 730645970 815953431 819721297 774743554 817979029 982300924 997255840 997524459 999918400 857922695 978424337 252087060 865402146 856965833 967137633 95652451 171367317 683594096 697313559 636435436 762199788 343849834 997819638 424475070 763139191 139364691 281686547 268260909 638847828 458021478 946064774 725793752 860806576 805563203 843623902 304752682 997214083 118908681 314911541 526604913 991797965 410767510 698184338 76581589 478828800 792200355 865083734 902139072 967592241 25227130 708641603 944838919 970922945 549148671 578717180 849725450 925115282 869623723 933145881 880996404 908725342 325630152 538605426 869232273 926202503 798902182 943597824 497232239 828672910 654939976 899059141 324670799 566750475 196719145 805547694 385265864 969141961 803620164 853862315 280495808 335625204 856443660 988097069 830720218 892332081 368389317 959779141 84382436 241686650 498957764 819526488 576664934 635755446 308777482 938214009 492458894 612550521 517004999 983569399 493054797 990028551 511469545 743643106 881927087 968385011 413744749 630750251 701057014 885021702 883646418 964377148 51672245 610675171 695491822 990163706 955405709 983681453 670076692 971995279 27001236 358619333 740328948 778191815 577834382 578008583 984269397 999589214 685921802 960511249 972640293 991093799 644808337 946856961 421546701 740247576 11882578 473090900 513735928 848407195 21449181 345452251 881344520 959264980 585983348 678487673 2055734 55655724 126239895 655670717 36525265 238938224 580740620 733959987 374307168 828238670 723543374 744982719 729395630 765533965 139967990 856095261 392909740 443447006 331717163 719028702 295160234 555210015 320120428 852099932 201556561 915064261 473181257 848671960 468992796 979403408 230935339 716874740 339193396 515392316 398540184 789205073 583844112 588675642 879940960 881719186 428592444 874054405 458877980 519186544 945430027 979080153 29350063 476520025 823949242 827865948 694652295 995162686 731088708 851987829 500520419 728222814 107139037 941976553 150793287 688140202 106854959 750232483 221799619 561627319 478288660 829266059 229258517 345307422 662709639 688850115 705159912 936290087 388424760 563251465 383037063 452678047 884493369 977360833 582763002 947692125 668354783 995270961 479443018 870903183 549146871 882450747 904254148 978389333 5210520 821990543 914718505 960884598 868415504 904666500 665367973 702885789 836437841 886464582 498381100 625837690 291134272 719009171 598080288 649405272 308970641 823396870 391703980 516160833 190761758 733193627 828917789 956313832 962721601 977387040 519613495 658557344 780442260 967889509 944822401 993529300 162515543 959591303 224838020 742932320 659104304 993157283 315458976 367313974 514802205 805116156 961110321 993938468 984773317 985938814 530910697 737540225 488600370 874041564 672812491 878775769 975587434 995008259 489294857 598706112 652249121 872250078 321240834 676697745 467932822 879148122 283622493 717183727 165896953 866522832 623914291 902810654 9686088 135261121 788019307 942030101 689784903 875748393 808783098 932709541 830569567 970220649 36468411 626452652 809436130 826584680 897505394 946678017 340093855 621435826 62034806 757360251 751513803 983423640 981228495 987395466 761192227 850749623 91576586 452812081 298313386 763053153 105440488 936461839 462857943 626364305 286406915 763615445 45225894 956548796 236673742 954261530 15567872 869365296 913425881 916324672 516484481 945156455 511510710 803098289 724938946 995378915 296524611 880132351 587368308 828684554 53716149 399134444 101854455 512255109 646148909 780211126 971007047 998399285 736014494 786780738 613863737 646748334 194480707 769742887 386908139 939185943 191687340 638448636 852948139 947896403 172681045 273467592 129708642 136347549 230879933 829271740 962265714 981659943 359605811 680008022 198154329 736790131 79997220 718571235 995741570 999609602 330737996 994619410 776597312 794278048 723251828 820255498 518237922 795061071 236111124 340848702 646294091 686385259 51100591 239891114 527306552 820190642 507060922 902576801 422267849 704307812 102129274 390995128 384644966 620193990 539061486 678325294 650001728 763992055 368567304 553383016 844332194 938509079 207223208 536990753 298419701 477404225 988140131 996438136 758760434 772473483 751826967 964641913 469829742 709749197 725373590 869007863 625362786 940237884 97305107 739348015 601894219 995298661 881354458 896365980 35795265 908357099 654394200 705644080 548121413 923389876 168916735 840711014 682993946 939455775 501071434 768229245 526032520 989497671 79348703 170717843 969209347 973874792 39392188 40029030 913639676 946845042 652660909 895251944 379690804 516599111 581107458 787838945 638279872 820788968 74414511 338959338 498267707 740404613 445359644 585023279 795999778 908242213 86342597 197835370 792602842 818374662 547349011 813683697 872411214 985354671 477112153 624229430 870015546 955514609 800017018 952171311 108482311 768091622 61011053 499503085 961872519 976787397 261542891 444703833 364790000 752309689 617875003 900796629 378137199 461784295 684952580 765620778 812300670 939147995 480330911 529147363 264083912 351331423 530373313 667875294 512178133 782441490 370312323 854013740 469376708 598837726 673517999 941806943 340174382 535039160 258973398 688620224 353252 541650469 730537506 882061575 332062796 401687223 136348732 776370702 859844314 973139625 569632976 707546786 880639828 975199291 226831941 726489494 642856860 923546659 739050369 781359891 463830120 743642723 701435222 814297189 925270013 984179807 953200015 964487360 29558068 54453907 62040695 101234549 939981228 957714502 706868825 973764819 226673326 360583089 157895283 861216493 529622972 939743393 973625325 997482088 853067248 953935225 845162653 985014592 236025045 964070428 534602094 879475532 163908331 707274939 184990631 190725068 441090611 446831242 692763301 849517356 969768070 973450347 983505939 991177295 44018923 213212789 380291699 700364177 905240873 907682024 304893280 460508971 490895142 499400256 201054277 580293120 48812472 674616309 962040970 976644203 350348494 817929259 835002859 846162166 447283537 533146721 931773382 949967554 296701527 809578271 252188857 341396887 646203735 723406528 699232155 757419141 860069597 869491553 148020738 740426410 471539911 648994015 522568517 541676950 667785703 725097776 571346680 766118591 582867045 955564492 301776726 782018658 731243666 833025520 308014030 415604065 24234895 110937554 648597580 809281963 685943307 995916949 369909728 837025309 149870292 429397462 796628929 983474428 87818642 187339314 600985595 660743559 679007001 956970623 81691371 791452062 636529974 917578077 750516906 802289086 165450881 424676800 949603574 986508736 959629552 998596355 192615350 462232968 561708016 754415070 679041459 813190069 922247493 943490985 110945785 918699947 387647888 694463212 293291316 744040054 637302306 761751739 216490083 690239959 558855107 827736450 847851157 949136083 403815250 484715838 639811542 688864686 733122576 939318003 493523242 538611534 930964588 994551291 389665413 633834623 160447386 564603267 43145677 529182238 546369389 572597863 421386637 605203782 692130596 867203298 890481140 896841080 703369830 840713191 476618086 505399957 969071323 989432657 772136660 870621073 591979871 897861622 661042467 806028716 188884631 720299412 823881902 913944619 780122222 782723084 913685064 949688741 842282058 903828603 562618533 771117520 397193920 482347955 214426861 580797865 603064033 973421622 940276639 992312547 629193613 991414603 735454672 781921794 376498013 434791543 111355993 222840535 157595191 868451490 876422883 919529420 225710871 888722540 313380794 648539953 909794783 914447816 794273934 992336594 198678631 427099702 72221759 308760752 232046614 948162861 325078643 743878805 995339120 995696921 471478136 857886218 158342458 868272556 982601510 983163457 380333798 423902536 955343437 990702977 516489457 875225643 25304094 822790832 383708885 823018222 707992700 866892208 676239267 807597460 711543892 985323854 502555948 593426346 169567158 396676669 134339159 322745893 424465840 994760970 910347831 927744243 605571421 744244669 238162580 535263881 327880631 977379347 539608389 950325259 855924538 876677844 518230288 729272596 834684496 944008097 338603714 605367796 4544308 495769996 711926513 796984344 510773775 744305525 360107611 522871182 904958305 914960015 907738912 922280572 785616114 804965915 355308263 704633111 221933608 429013331 605576171 900111530 578286637 615944494 923310196 990797465 920993897 966919965 105926894 802240974 180585675 587661427 556192319 882461853 732461610 842736417 163216741 217305795 201458817 992622230 994729803 996623953 121262888 212602897 855186298 899937115 602588083 686099658 668764877 965334025 103912667 919844819 450050619 963494114 636959411 938750351 938132488 992019920 322414591 658735386 606932212 971140513 764072201 938751184 859797818 953409590 828640581 943267945 26574011 208697734 860638999 957519534 101935962 960219301 336310457 636472612 417250066 974111967 662226988 972071580 998183384 998887230 253863917 634331444 739513260 834967114 166814173 936242574 355048510 787394526 729403852 891101276 454462762 788477216 829727357 904979673 299448953 498563500 740452537 887995538 615253567 741376736 467806617 791582068 162110841 454048685 923134199 999450075 977023089 994344749 811941543 891181945 422904907 901423009 706754013 944767379 494318362 783868547 703729099 978982117 398164230 535077657 355706500 817751332 315247096 948379484 98039534 280584696 833165303 856571197 166155222 472422181 658936807 966357416 724580340 750761517 747966644 984384274 7512383 143677872 294717148 630323907 389165272 775450535 158245795 641903043 127024066 951021930 365040382 456981922 279352327 855830386 451736753 890788880 199238923 813335703 995850270 996119652 941909530 971674165 636607646 808666949 865683238 878978667 46997668 352022521 160940821 230828231 847544283 850231735 595245757 693116234 682080948 771280728 823722986 913081520 780136873 784189639 112237298 562515115 211758641 370976278 557704836 663573429 932411500 983069796 404466848 736310859 46013791 170632233 661060131 689303229 414704656 796242352 882834633 920150311 441074320 813683321 496740035 505728121 816947486 919682709 904803927 990022179 696699084 897928951 936099533 941640154 136004498 657340481 615267744 803694396 396443889 636284663 394493959 810671145 68836420 122864911 220969154 923384020 65752983 586383760 941868022 990272620 999804830 999993245 885745487 957151904 611669825 873428335 770354999 869500975 995500549 997924790 263947161 496713445 195974773 837723783 211990967 409754353 53019426 233099361 381278194 649673683 629373405 797041203 775188283 893093791 341435839 658737384 464704331 769460346 804344764 984198460 897394110 979920297 114029637 251658576 218023893 739757470 828686523 967187955 340405328 994945605 944787347 965968138 359288024 910141476 32956941 46220318 324845949 520430582 323896107 815928937 653323044 831546327 43754289 195987198 462421919 832231888 960186751 982453336 329120730 689295354 514127115 956787651 15281316 475403296 229976657 824674370 266170242 543816059 981089778 989885912 156234016 926931679 80740477 566144217 9407844 138605836 485848682 789070442 664527627 917149588 600792972 951373179 183722386 973190704 762572495 994764866 676778767 714791510 7347047 624461250 824351004 911198491 771619272 787975888 501263429 546075470 874460856 923003340 35368214 204015262 338195284 875331550 506467290 907780783 363041212 493667771 102799002 742793631 546264439 955305747 513892322 774339055 320190984 872686890 333507524 510095451 449387961 962916157 216192970 615266175 352217691 788647221 911470478 994900150 301125879 865364225 95942912 838978806 18586234 395482827 568605379 642019690 477464942 672845623 295520169 786304925 370762717 640932577 461471127 747449560 664595908 945565534 911699314 948975952 60104061 351088855 20793081 729201773 508964912 983681240 916942826 970153396 488718284 859445914 382835357 603594102 340595696 978574784 918008092 932299744 143634414 949393447 772064341 979366191 536837073 756264671 725274904 867114259 995179867 998500843 580149694 684652359 919404171 953132059 994040292 999992555 688592423 888033288 848341480 871034023 380587782 458385623 66406370 558583621 98932465 156627849 491498893 773756064 588013980 628091569 319679762 734677372 462341642 804347680 728856640 778330304 539920747 896684019 177482580 802607868 682199760 836754893 697415007 761169119 891641070 964185715 200982926 524349839 775483669 915672230 243605518 953887872 42314434 287648978 447781520 898323061 122589734 780286925 22375575 341911322 244916099 608932823 731539726 756024909 509307863 710654116 938995117 973962097 508019452 724253194 950594964 956295469 684961726 759267280 715399180 818338393 770396211 975168289 60482796 135302474 247784778 684071119 483567993 515078752 944907567 955815143 959573061 977786596 433702403 518271353 504325320 715381920 543409419 720068503 309351740 644346531 101434569 718588878 108131965 532492836 996409693 998206530 574258414 704565086 543438515 910100057 599667916 760950860 662696384 720746950 48938135 376487996 145474496 962050863 936602138 957926120 412309922 548112057 708767373 919793024 9910599 961800116 391005313 943729344 353170238 408970577 221605133 441818549 609922984 974904106 761552090 909537865 79780381 720144959 501225775 986695025 693670671 969641639 980600793 994682896 599513381 678495330 495749570 999110764 217474505 946244975 583804577 921165510 577016444 768364446 540494948 590297641 262183940 300964736 608625193 734752454 676298727 872360215 820404573 878623008 963625260 968303694 426107306 642256093 133841436 922302418 144309543 303400195 756334643 881869310 832262245 920792362 166317471 209135295 310227011 717127617 630711667 771833028 237062423 367520230 915027312 976915518 261061517 481585536 491229163 588795062 554617773 974170765 181857312 911358163 427329237 479690761 299828603 913338825 325143568 719285329 433491617 858778394 161635446 646626242 284549773 955772942 549397399 708344928 110898185 728585927 204261360 541498770 642905410 863943879 991172930 992979880 147405157 213277962 192603439 627850693 167689438 228020665 917150498 937579727 708102557 798882627 289918403 521713982 345415323 894616308 218032540 939394463 381533854 814211764 422494393 622241118 130640715 481073585 667074317 725420692 262946741 445683226 702081577 867484370 203179720 396436821 173388163 369602531 948876606 985071536 297288568 827702138 198637306 518587017 413860628 531169400 700662889 894609467 914291100 929087724 292182780 477277546 45533723 166322989 733966870 845038773 250258137 912993186 752331040 904205118 291905921 434665083 714058955 738853469 149533982 173091940 735408712 766777034 252361151 431230587 277784199 472495774 909044 290381272 33123100 327157157 747807019 856991105 214766231 558091170 604896627 751160504 564649355 574355360 857145684 904071385 685330089 768244755 388921878 533940047 940852714 957840730 379225226 845838233 784890689 843574946 888300244 984021515 260363010 714027769 639052465 894686744 178064984 377476159 932705783 941393534 461582665 764811735 483388408 606542903 596999675 714107977 141427264 327457572 437118545 623186476 252175985 406075593 697663182 976540433 671509984 763752305 909670863 988724487 388276198 846488824 594108721 677443425 532597748 732830919 521236936 578591709 769886859 801711595 854875857 957875267 768652391 873203767 282441944 841647348 833161931 963265458 587498949 754079413 585662337 673112059 444682144 692880468 249220470 848275929 165852530 862753892 983336821 985509718 460997104 904514149 15363740 598513103 701037781 713501494 47158183 616815551 600630746 938427052 556369555 736081155 808147166 924937807 238383505 463571273 406178584 953374771 913448748 926153532 293059320 933046981 481841622 510546044 9840836 409796394 561766534 581879079 942504424 985891634 598199837 622876777 477832035 486281344 787636504 977157900 472390788 568271822 636662500 970264158 526718407 835168029 490572354 955844828 524784429 992638323 254133274 952913465 936154876 944217526 478599913 807732896 386121454 421216785 849556387 904358100 327320265 367808014 845716566 887452687 991742508 997317427 318859611 485556549 926624230 955653919 446449803 451391872 883873983 948323474 854767156 938860931 232752744 662750897 72598744 439771906 957321033 998146632 620434709 630446944 741213930 775886670 676801248 766026957 56484536 649993999 428324453 513939352 81233391 543903779 714222685 976821303 525067921 662369331 258792773 922472487 346375374 606360605 924501434 979037346 558259822 906566235 554586311 907176617 161374540 612968532 465713805 620473511 641807921 715957465 601431845 788390768 242145267 692552793 230866992 891610653 764994316 862708427 319544828 995205478 760557728 981394687 892950625 938127219 374190551 873816171 802376860 975721595 714427215 964130464 880708282 881844944 522884387 603961452 974461991 996741477 571533091 701352180 224195314 783984750 799835778 986677801 495316071 775972024 453292101 946696872 608921575 801209547 126947246 260645005 494653839 566440805 768059123 988267371 604944443 655212753 982476842 998399625 323344431 776278450 759754668 775922061 354784058 698960342 364913132 888909229 274153795 741804756 956083036 995663567 293317998 791306320 887724301 989597792 191330924 588970772 956891711 971683517 408848513 421098018 333337057 746884458 957475173 970854899 947766204 967312731 866966089 918175566 937339495 987342405 813695260 833494607 183688475 268711036 963729849 996083513 362432526 521437212 942063611 953504996 240321961 547088969 406057809 894066528 1626475 827841480 218799471 247618959 108677189 612398279 625812381 968618162 82903015 685059368 100331967 330740541 622821411 679871907 560541216 934639294 119630049 671732878 256497327 373464858 301590387 967428772 405118234 750201818 584209637 608762562 611426468 980654650 80890802 612405987 803887068 979277770 19629969 87771623 959272213 999972028 351008908 589970201 565674766 842691696 920160916 956475537 694655061 846598194 312815544 423568161 352356950 429172381 964921019 978112788 618411910 659421792 746326978 777644502 47075906 462256834 221963006 279488962 181586916 989446928 534877299 756923274 429105251 825569042 99531374 789434627 174602427 942771486 995901668 999640643 978235908 979263811 701781330 750698823 304872625 394542952 371622824 712296721 143314822 751739563 644999607 849732124 180943916 814557185 343502299 443627404 993598172 995202782 341632633 372533052 444173941 490547138 217968996 904638165 163626624 669752655 131113352 535774083 407084469 654792559 956686679 986056803 724559125 855979508 422776045 896579340 130783700 612216032 603125858 680707738 469858706 877793275 707728199 792045583 952421192 986044123 90888091 239437663 191857519 738661199 208806468 824711131 970077253 972568565 670977400 765651438 143052287 502837737 989412715 996147507 190746321 923850910 66723952 177961667 289070135 422752568 719981206 846458533 395695873 860945883 668102025 948053179 414533031 728952223 944015145 977306502 285835389 801215899 313673458 429635467 301728831 687096942 949698628 950775558 598986901 711964435 423703010 551916608 38631946 563662967 270835870 566615072 502739428 875591573 325018547 880902051 645240839 667543475 784978611 887617931 87326439 924633273 979611832 987515987 556607062 658325951 479105842 977169524 538308867 626532613 677780620 941749575 38450304 920787128 784574459 996984912 990125719 995003480 647071981 926372044 3103671 592203490 706505361 948108102 82868853 954415616 681804326 833290181 315592520 565337992 963589341 976786315 711834709 729009911 411084733 485740340 690657719 834688375 191630824 655529223 42148371 286044240 85129901 960477842 742609835 852432545 544296279 602593676 459900366 560940445 117269743 594467382 240823912 967634420 378854725 655903472 212829882 963831040 454412308 810466905 314886296 420239802 9245878 556933293 445958525 541930885 355290122 639544955 659365661 974548556 157554879 416813491 308961591 414284669 639471650 689053273 309215094 888669589 801231037 857794255 840326966 928002859 320586586 421507301 195817503 819647405 586841497 953519654 363268681 829109931 52647125 572181610 160788039 220873047 661277923 682271551 21569892 807262778 551782053 932170706 212594332 387156770 819090802 941836823 893593010 919630742 791739801 803898729 813765748 840989775 354274950 964355106 998665738 998788485 701460345 710178908 761819494 807104380 536375013 955453051 67194980 779677644 923587593 951231745 617822495 630671885 738259824 824522679 63907981 456460117 992678980 995850538 740563692 780332456 121017735 294839833 113743508 645728401 982882197 989470858 924288572 973349294 835028961 971618201 90555282 599346255 496657567 805739501 823752090 902905496 129926254 822042254 980687245 980901708 408999835 622033328 971786156 989208190 86782800 877935720 100312596 833935542 678118448 727120663 570219578 680032042 257558497 751984106 629266150 671245522 50046701 456330872 354440169 741937828 645725972 760445161 888720377 965091468 374696253 600302633 431985479 676464969 825140035 901385966 279960731 291706087 479234512 842919548 441909909 765476268 758863379 771632795 958559023 995243171 316490660 466554368 779770406 986338972 182998369 904187185 254815380 734378013 1232706 684792154 124333940 126202386 597478837 819825269 251742032 966204024 319636039 771870108 932590758 966208181 867838801 948786701 834850611 919426655 748911852 843222797 314206985 766922631 685213673 854934759 647677707 960503407 211081897 503426800 973340563 997747979 830679327 932296002 655770570 764420457 801909954 863790753 563063794 839881602 70964498 527012730 988534006 998153331 329372140 911978770 616678973 911568799 968880520 998898898 226221245 237563504 413340920 880064033 123892480 495035108 531957550 888956248 882225468 998769343 208040188 302346566 427697451 922801556 242631814 582875374 638462145 772569779 416006735 742890381 678649441 903186097 591756822 986376669 320366322 619867568 317044281 886885988 534785427 719234213 771122230 814071064 527569947 904381513 626661930 944413788 335414015 376748911 480464098 701616037 451057926 516031089 835844575 886058510 335772057 532855697 428083543 854621655 541833504 908503241 98901748 276283443 776046444 916155551 143640726 293526955 247017260 894435991 807622025 843126925 550334673 608481715 452986675 560563959 767267146 996180780 601440732 930694580 396655195 914088408 368954637 599345628 850105007 910136956 24009249 340045244 286405730 683934463 21124885 78062737 169556257 490688061 913186841 916130924 969930627 986290866 19959554 875781400 871502097 998536702 943352579 964480125 674331962 730854433 172583068 243578401 829951291 989364548 949686335 955808473 1486585 66865704 88826359 884466454 744210578 806701358 867523984 892843425 201858534 905493575 526247879 920378613 892776865 952357817 982071003 983833967 897564963 921118072 715815604 815153242 553146176 700797023 351166973 520701855 880951846 888757672 181717954 242845157 293906591 793324198 166003765 166635439 15575810 531044803 300324547 869320380 130402220 199937919 913624645 956580119 840927432 873483518 83979996 370108663 37396606 502910803 544644768 925286673 577820484 802689029 847742852 943150002 160584072 345919278 301682361 744631069 753808513 933090504 816380622 949421047 642088368 744174522 35798485 336533984 179276070 626105296 711689976 717532874 167783423 662379571 677854778 945363948 231491172 724067383 285865886 399772620 361392391 377705686 509370364 874948347 121737693 198961798 703211651 710747890 834015115 945596236 498147779 907945557 466693158 983985404 416643680 969945731 754068848 801077566 58192927 168367256 942252637 965283822 162782734 229494283 167992660 738358065 573919956 649802049 163866286 703230181 209471586 649489232 303892903 745408760 234856288 974873722 728176987 883547986 560564402 846369026 468021294 951490899 443416488 986694228 99364334 703105449 525274662 668847866 853457825 918267564 191251678 426719545 570605927 937411137 674520080 749678166 758628559 837412358 89529878 988704121 907288503 947506193 512001369 797084349 678038460 963700226 610869002 644411269 783752107 816712626 927115092 982629700 965516823 986831896 5063298 339153415 284138250 484077458 710076476 801845540 625096840 963618204 70010942 92183065 488912145 555440944 520605284 769493738 713086793 766911408 921087136 993319775 808313484 999305195 720807484 994663582 559578292 697936378 428816350 505781474 922943557 932927096 966197089 990642417 672242648 838404974 608951560 744681644 289134295 581468762 819674107 916323369 859479769 977299011 357494612 373148927 35688827 527721970 276452361 588063804 159756526 470137696 38013950 752262316 545452478 836727850 753358686 985099421 423814851 489331494 134258985 763665304 827244356 930268881 830369391 910929363 824021107 986980674 11858299 545700447 725388015 878696033 681431263 915292653 943161786 948418288 565470888 777591875 109819178 630914860 839059167 974775350 370009599 434424084 507824027 545898842 284508637 844863908 578717358 976568552 849050094 952481248 317636780 564913947 130927499 328745510 137319354 670292996 969815059 984021208 606953828 859537212 191397663 425483368 105605941 734296412 803127143 915961092 820053637 974233025 871933749 879542198 653080548 844935591 708494302 927471124 139499126 779065822 471099445 561274110 847227506 934929218 591382562 974330608 458327719 768723649 913639559 955396343 95272552 174452023 337454537 559574522 841142110 945233796 950645392 966442097 42142306 362761793 493868521 530650813 91258473 337685200 293200332 757203794 10159211 947401930 335382229 760407940 229942534 413017936 123924303 841422661 559397155 931082980 972394872 990697515 243002906 348400990 508979243 725729313 122807261 614016501 950797203 969912352 855858847 907343302 870985867 895631854 263115486 313057970 789149932 909598726 157144422 711191219 275964281 713062970 146767576 703736203 29777020 993410835 844831664 899023622 654413750 781740012 288200357 510022131 80159147 774589688 531181368 947477823 145783742 520705175 577283418 748195647 624870569 966355499 934285926 964931270 508063450 966065572 431109117 791579551 447368313 450077538 316024671 890515485 525023919 572032965 402548772 907409282 601381871 944132041 790951730 955651304 133851440 439583369 957639610 980754344 45705676 708164268 324449142 336708358 855457429 871271450 94564366 904366286 734545774 964873550 610089331 762013439 219599027 462016383 988008821 994833529 166698583 394773250 851338035 856093333 978194360 997627396 472113799 852812883 34633220 677215928 460592653 896219907 723838701 881289546 222133296 960779252 669201041 712981698 683048691 976473379 374274438 624028461 958288784 982907263 503777362 516262218 689232857 754014006 180770290 691123802 693939799 764462459 3546352 631572744 140327902 160193461 688546961 702361891 200499002 880030269 285924042 554945490 278354124 394522962 887468497 926976352 909749501 935841238 135819126 384276800 557410421 704300010 427306896 525746493 351513809 593199327 833180120 837408039 716164274 806685449 789693513 943533906 884378803 974962259 986545300 990771079 88550543 430240334 654346986 691126177 482088588 938877656 957854053 968626815 201845093 861349289 796312959 871222428 527416773 769270597 954565376 975709352 55750868 801352585 332886082 390393174 481656116 708197933 98660904 575640087 736353571 828924078 975348777 987565970 506170598 859906052 979837761 995790223 461338902 468937334 809639546 926231764 13624503 448654517 651612480 654459816 848768488 998176925 576239587 752577768 490367191 909156086 195943329 491982851 108635624 965112467 640430375 663355482 688072563 851367158 380838156 859668375 733163101 871777663 835894547 925741789 123334516 708875412 401922846 539732496 785300389 986738293 350261038 398402278 302653149 834542973 953720993 990306683 542854191 709688684 695042855 890981461 744288653 935523744 921185989 987679799 887525989 989743688 856700990 930744511 380333616 534618573 407970708 808412514 986508254 992969503 18131215 255395046 452428487 616029870 199232872 425775647 614591997 987733611 383260674 615895143 734088087 830515985 848290433 981442406 326941375 566661302 50696968 54925924 448099287 779501964 920918390 957538059 134964796 940863840 939987162 987556927 707234959 950035032 897559790 943779537 393564826 484202401 968138116 970979245 511512489 602825173 588810048 906239878 276912490 880635954 555554888 639098760 2451283 613443138 108442212 556235837 859543838 877844822 763366565 841771106 586795446 731929043 906350951 974722164 223492475 994455896 291456526 855982796 470529767 529925670 155026830 772033739 930269524 981242915 661260496 909338237 617954416 737208003 631108075 645489822 761213465 872707023 564941036 707407478 925008553 983326711 768629974 974205961 824434081 891591993 189488297 788572295 329594539 451737228 930181457 947618183 568865012 899987528 212235300 392623217 538277040 826111504 662021238 808939108 269256162 784145212 843389878 983715315 279944295 846814824 584495834 975070592 810993226 822373678 983622458 999720661 327602061 876473480 162178276 412943493 381454449 419099361 972906060 997750450 107588954 324649625 547984601 947248844 362197617 547369893 219402068 235312691 41526706 924028088 855507145 948726962 985848389 987234738 664244875 893821363 288421821 682670883 889466376 937431269 155991769 302986322 901753383 940908443 593372983 832731165 375713629 952845330 575368365 928898441 813796213 833169383 141245917 772697218 863564495 974504815 391314426 524195611 53155483 788808757 779885788 802774731 687518460 911227203 45200199 267443624 249620269 334945422 226561281 291449819 752666822 905180162 341810951 701040362 893873180 914371575 837398159 996044418 878711597 990908422 953340950 958223374 424638141 774583550 562707366 937182384 699233133 858799903 37712058 855080821 198042188 834317325 503842935 986631927 12800640 174135966 907593000 927396968 906160733 984294767 276154974 577367430 209237580 885841966 921844569 943757137 137669509 351499724 745273230 948519143 468846452 970106272 684108750 831529078 542049561 943641550 807312002 865221765 136772640 577898863 791680718 958354723 377601835 471975041 919571452 931786594 585536862 879458543 32223682 193982290 606263036 838574447 750740982 868182466 872997642 977491699 830573085 982014462 922845204 992089457 166882713 534334392 873348338 968903670 622469191 816900572 101876085 293641243 755236421 810974072 898465570 908348583 766307170 856074492 55617406 886804197 661250716 730858356 205994195 665492232 510492873 941472619 111155025 140544753 401295813 555499905 211604477 908336295 169919264 949109229 998122714 998447106 796150969 902347350 744104037 852132890 307299078 876154002 79921246 219736015 309225143 821533743 71009994 783894733 801420748 875274463 334569112 851304298 683824471 831045432 248729269 748753262 158405490 351590949 177456249 744171677 148648700 171656446 55963760 363600410 205921889 681157502 779344845 900691645 795342345 889074786 26450599 249137104 322464879 707615881 613489703 798425207 827557989 994293759 352946258 872474690 608656470 983072259 470436080 598447833 30632757 880768742 581327179 890286554 357931968 529408663 840433020 895214512 210175969 922616141 242257319 493398120 479576516 680240140 338692662 567678601 444172945 846789526 125909786 633959244 647788794 887686323 784085917 950575049 184829162 424665822 491661704 514021286 179929688 532356512 957188209 973592445 585450471 643239241 156845724 724113652 415646468 470330415 912875390 913646177 216836277 710551602 750328791 978358112 714490048 726225471 225955373 313659803 392500592 623827885 885693044 978010267 403989716 624100820 991991011 995075130 750247301 758774118 273199366 427343239 552510068 611599627 646053897 772252007 773561388 878348275 228377907 747715385 491816982 627262544 379504393 767552066 192216374 443280109 761944681 770541355 525409004 794385901 206625918 390934022 831494148 876363847 131519446 624833947 995460328 995553595 105271036 894811177 225616050 929320215 947156615 954594568 649888420 798873088 809307748 998097346 789778708 958991912 256808752 894518138 972585989 986044933 791573856 910196276 571524367 743530522 580006875 616550486 843885200 895727286 980354046 997783614 513008751 612356834 154250292 916699998 618638613 927001235 571762536 586581164 39939417 466237900 307811230 522702098 554049321 847237032 391441574 727137554 584141481 915594830 725221681 811687984 652154584 912001446 166536538 862297720 379413077 571458322 70208661 582832976 975203961 991173948 258491751 454447684 626653003 714371247 194354911 620665859 720153777 894090975 31791464 928357587 284173073 531824080 215749557 713063809 866646875 898489673 391360156 785578213 976809816 995205116 750907621 766595824 189185071 534670298 461104066 703882919 576273222 924151485 877735180 914187484 491224841 511651302 80208535 598692082 16900281 836632093 921420281 971075017 750757521 936937231 442010992 737378123 661658172 966709364 853281643 855586831 838741960 847477995 230137451 779926386 786323318 954870163 191780126 934969352 320887541 501506712 336899119 925289170 572714865 812901414 162977368 427263253 11782258 778754824 49228612 271179401 445228117 892439832 715998138 897465295 595037680 754767317 424947161 865852518 953608614 967502974 346602710 721395323 390183904 675853331 21312342 826341691 965532300 968212755 931470754 985919151 331139697 346408992 43528623 903126734 306895787 445970345 630715853 704270919 777311317 931953131 992169410 993080191 124069902 592927458 87468938 470116530 391926110 751534409 830710625 849460254 222802919 419313272 831544337 964717320 404839376 660675901 983935439 984012716 381234833 686775766 207567048 267890428 642213405 646994414 907442493 945219784 126815089 418166543 61867730 657357912 261517302 706368557 173446114 769827836 966309216 984869572 240408553 831769161 589060118 726505704 241468039 340927835 840142631 847893191 907676347 960025302 60192647 437100216 333499320 578628630 238789570 664248364 634497959 899614620 236215933 384676926 549882228 926987257 471282530 960914175 185713920 969549039 584829968 883231029 800097485 959317389 6602637 203921679 542673320 914263793 84014626 884325469 881052998 948507158 234276039 252683828 526825770 581134376 506816815 580010104 361101612 757661352 412359793 858936893 197085472 230710472 79080058 270430437 363490666 475383667 27028166 703768616 685734930 983076328 337833082 912650873 571470226 802400223 600018111 968013284 429149997 752503274 804400973 964093585 825811983 969124347 78964513 505138320 166719598 468108254 213165583 414636667 738653926 797395569 253377325 696581325 364354686 455452461 785029332 887338853 177116761 883198310 665391346 678862263 975963085 996689522 883644742 892236005 920408748 970618847 858340046 951816096 817022940 973121200 327728152 373184477 182930947 772504293 756607531 759789904 947025082 957162194 267969113 711872042 393819911 895405976 239556217 611939253 44597972 950875379 677787300 886761230 902540059 935314257 513571133 957331393 991232443 994092277 616000010 978866824 313238182 420863640 664107355 766087626 516668043 800100554 91308983 347019189 262356339 857785706 405229001 473744330 919882527 929245482 638888345 749491038 475012202 753661470 709974937 926139702 126341241 410509136 683202992 927301676 293939959 821187282 272382874 941321530 118915167 900176007 952031387 980667660 706242372 938251482 571536997 993080732 951879384 973089781 528505598 954419338 805520309 864893061 661865430 928609590 936389945 998715472 971204065 977581901 180371153 928792925 881610142 985176196 168357221 923838564 722184857 762919790 435179829 545970500 431547912 515020460 710732902 886615513 246652206 972959316 611861147 798703172 574444951 778718424 792749288 913965194 98482453 509349368 694123276 985993286 92237456 901704710 184604659 693526055 92902770 617790142 173578370 735967895 298647077 639043497 102439722 468097678 880793585 983272870 701454813 994324752 549899769 849965785 707494059 923227570 795003757 962112193 88832030 561439118 868070842 898306300 598002722 604936909 12959020 131857552 472127625 507141527 306250434 500069238 927897609 959661279 156737901 730066841 483045016 530680411 535112703 660758283 142465639 430121591 272581901 515177516 226386704 579460334 941112507 956382050 293263798 675043697 654973681 979598740 657054433 874737982 69872689 298152623 573282860 673411461 509062993 567811480 943243566 944684698 80017898 150433368 937366596 978955484 490070074 790832594 38966727 67467686 912527462 974646236 630357648 923407480 14061013 798189113 121467930 716664826 916373889 959209925 910093563 920712603 496960125 719506982 729847575 961694137 869984252 931131226 324779931 556180194 923131955 990245372 347119541 799248007 460326910 953822533 617245820 686264223 997443248 997825650 393505054 668812055 59041562 877246089 724862871 970681777 761172388 797668614 953642674 989561195 775694647 883416238 10717888 324382845 533292822 663783325 882513611 994637027 478846131 838917429 535854525 820959599 522650882 678482369 338543160 945930342 772351457 794480296 602678273 644974020 44923725 739042010 555034190 708266537 792661143 847647925 798613058 967031466 510285139 990736910 632568562 757939507 290840652 314070748 460010346 633967640 28973038 915722542 560506621 909573076 998115940 998605525 472185105 547085658 123323504 646682395 820566983 879642306 276852664 645775973 612306227 656930377 572115923 728446858 75434662 983956597 984529836 991665086 257209991 987387276 898148338 986730712 743363260 856016865 888951614 945650152 340954337 942543566 149875470 369893525 107348498 354802339 483074502 889480420 775652756 889197277 135037772 977551622 271781034 860813876 574322425 651331778 88740960 535153645 478420756 671747697 451440688 808362187 684395687 834086021 515303270 740789386 685044113 705035497 277400050 561551321 823569236 881717206 50274805 238443727 802797504 893532307 154021036 754223756 776281894 953238942 442481387 810622926 347977124 894234611 282716425 429042443 144431381 796781147 591798181 692675165 692995409 852445595 245748294 862980903 785344360 963320872 865158705 967727561 976127037 995298204 898757359 962710527 42885660 263586614 563795299 731102116 850276115 966371568 774071890 840160461 332713027 748352685 307183036 690375438 869451155 877221527 687486109 844152044 271735129 599394457 605911430 652583868 572188426 993928144 624675589 732950494 354837554 374618012 413914531 759561432 990555602 999002156 763787337 769281787 334331908 680637301 214947979 555606983 175808731 690303184 177644233 196153262 114459511 608164492 309612797 995727321 868810710 967894433 787523279 872863245 20422675 353283977 942539345 962487056 101823009 633910181 978794288 991154506 386450464 546639026 181724243 488063005 717076406 786450808 88712313 734053120 640724998 996772573 852291502 899358583 806122377 916519959 40274358 994462887 319613148 799117457 88536928 669049272 178446267 718703375 566251803 866873117 413183065 996862162 992083251 996653493 303059023 992243787 498884102 678758472 898799290 935017151 45225900 690108364 991765091 993052890 328675559 760156994 373205553 848887348 812877130 896030498 394795056 477165225 664301115 932829404 616943917 668626745 710300482 755262608 403406206 447176099 245318940 467173103 677836563 959614225 416864154 605935209 174481468 660518319 457880080 979556356 156109280 645206009 155861373 768175865 27130236 919556043 47369761 603864387 851402097 930810088 450498363 888592575 429223304 656551104 547206306 821122943 536481258 808388135 576598202 914387191 480520000 533423278 918541057 969087914 977765987 984071673 875067369 920818043 270519744 573638390 333220633 733151118 889794151 933302654 599778568 916445804 509627894 783336518 792247462 872408478 542363432 796829639 461587235 828820259 686955585 967579495 788299294 891921678 967192859 991579365 794447842 943115492 238755434 395203490 742657042 825368080 730008573 760069686 209984238 399780690 649268637 775170045 259179492 713737758 510516032 714530185 935328473 942389860 688419991 806858877 682657088 859004887 690335105 764405979 273350288 745950624 329587854 885716815 287485317 895286840 817439372 883882870 229179696 425768583 234705498 573585871 953908520 964051188 998055481 998306186 849284107 983875240 175372217 788197912 278488319 610576351 785086176 972068162 235524558 558782828 158865988 537396524 994249716 994535470 310067592 873527747 534367245 854343381 575295235 687337337 443982514 629940071 862314388 862860014 203571320 430307866 413704646 636778998 814435144 821419156 514150749 869135552 634277438 759232543 306364379 432861284 677216741 717366548 646624549 991256815 336546602 395018172 782598558 898346932 168346295 219806513 57299520 241282077 5414518 401825114 609240257 726882470 841473839 953325906 858822310 988212973 824424961 982767772 665392976 698746403 989659077 997315315 616253762 719103469 754605280 848200547 640518247 702117538 788454200 840203622 920950206 966408927 696193587 983880663 558739794 738837538 481805807 648324530 388391701 943148008 916168663 959336146 353889332 819385811 696107784 945873206 329271270 901471854 333120813 932473112 804755606 869830701 739994134 935680884 164220362 262936276 339906239 919996718 77921607 273260500 858908641 924104300 982883166 992562705 268707296 956098359 542098240 851038065 431048380 635715466 683411096 748995070 719789217 854160188 554271540 670493281 133698655 223674231 778511712 861796868 691159077 942796125 169533056 432013153 892714065 948995664 291059334 454744066 661479535 897448037 945755817 953437376 721236090 873532339 293158675 858408584 330611561 378960127 647936801 919076873 534746709 986976169 742231643 945835108 64293097 493838120 961477717 961765300 716507752 971461390 483125099 496755648 18780831 632416310 691150982 994961744 27861875 271663822 302436868 431579412 746295090 882098231 10010827 617109969 691402878 731271873 457572918 509774748 539141284 628545301 531794021 615012410 491545122 769657525 208876738 375566913 597964758 773538510 169766182 720298432 886039002 900150587 800346304 911163787 941143660 955847619 357117979 813473362 900843569 993576531 865136414 921255355 580381955 679933721 266222509 530915071 992646372 995350247 896331991 981836021 976148657 976417002 735244019 779116951 757508217 887347444 122695819 157046404 837715460 848620890 422985478 589816163 374956316 880158809 824027217 999786503 403487518 569393235 448440872 761272302 967759946 997097499 222234398 798408950 959009401 961336716 719646894 984542153 121390042 838018350 731223074 759543174 42888561 707039148 168474894 531089408 325003198 449657856 619880030 992269438 192370192 369613714 914517981 981580033 472821524 847423231 954383617 991614852 854495791 904241975 427183626 608166526 24498828 60259420 117669585 417611520 575917855 887798535 26061102 993252838 617062938 694985489 860378451 985710545 100131937 922362315 963224075 975401882 740374176 858600601 437114716 664765498 280543995 971111272 306323888 935163009 791051791 894806060 974730546 991970336 33265532 388356394 259434086 522500045 53824509 109003707 669520328 894864959 647390580 857822380 963437429 980649671 774518685 856507918 181211554 219407174 775661957 866655582 642425274 973200849 498536027 752378078 101592372 321225644 118546118 532345140 416046352 588797097 311429346 671040726 448595459 999333063 558968118 594312032 39178316 970259427 258123484 651010151 845554114 884705192 426503851 996763825 426085978 950203152 621251005 999802677 349481577 854286661 195978858 200256576 553098166 577129387 713410177 955639743 618221854 936185761 997845066 999378332 87108368 576021766 59451752 379456244 351328280 599074210 108829564 187295955 887655500 941987190 419962652 950695185 458524428 461386039 557622526 949378174 604421342 894073408 115301434 582043110 557269643 933904525 502674008 848597780 437993912 670710724 115699216 499779599 641638687 769557127 734770146 802009467 165953575 704818455 443221411 702106708 957045536 981780872 107219638 717223647 323716984 958024852 62294709 247382854 75063885 408831770 855176790 873960050 284430131 468310023 669542418 680413907 218577305 238474402 428892205 824018350 76424105 987191490 924941619 953452795 853544484 974102908 197722621 483812339 978156423 994421346 348958608 465590556 320715298 877964991 432637393 465989790 812873419 839827369 347584243 392314911 192106963 857665768 937886095 960560934 607673115 832489633 492677443 521752997 945338673 986452885 188697437 300597719 393901562 735249251 182777886 847525168 747482803 802614159 480174227 985833775 2933948 569659964 964192188 989009037 5118961 739454282 871714162 970485267 534152004 838921596 346531483 804479267 62953125 171310064 812346509 850924193 946842189 952464644 298943638 959099409 929495557 963350478 271518847 958635188 29157456 943058391 939813293 954110307 626754380 806343986 155366731 736885301 87383416 733531605 337050016 632395973 804115669 954546958 934085700 984239408 160402905 872846884 629306833 751309497 922332243 952530579 353623122 780983800 476535542 897897563 947787753 956482322 557571338 571102418 521658961 943586804 159839551 660071974 993010740 994109214 984120564 984353487 216264728 819613112 495500264 576461098 321270146 407374625 599721678 665081471 588971953 940427330 338668665 581751700 94446471 846228368 92021396 866338735 765784824 926745062 929841488 994246450 321287907 675864735 695188789 764700275 324178497 974679152 470998437 880491916 193623565 827690490 724951291 726980110 600662775 956918602 653953189 710411157 601658465 898621442 891237603 905106134 592401924 697239304 232214576 522480574 356674735 882363450 827219345 977763935 106434975 441451045 108389930 372466023 192621115 277252265 267049894 895544582 572059917 905888953 390097804 832428646 716860532 933887913 890036085 902183685 427896868 992757369 601750084 677266202 231360638 992736943 837809049 910442630 614717707 678035140 389146344 579891301 338640389 442156112 456203664 738157429 584033486 705584374 279763525 451566850 989570214 990282435 136995068 537224350 291261833 772467869 964421188 996102800 336599131 944841624 527560173 607274581 743716948 964647898 467823597 485036905 728857200 882215775 362080111 840094526 502473532 834489029 64425414 89746177 691846300 811976297 656798829 916301336 461121717 983103815 901422856 944372593 685998456 767523003 206547701 924614594 189509604 591194987 366915730 741809178 460395618 732383034 556038692 912902328 332004342 765505501 834129508 926325675 298878237 433445806 525589408 934296458 295814422 570870291 988153567 993731084 161531775 915419172 14333303 963007839 118866555 232888950 658234696 899858916 251709980 641555218 781701739 996981093 505418387 517645769 320057182 749455884 199108963 971443231 669287691 882899461 474096099 890728048 494012500 870751006 66756520 444692004 675211884 769319861 706917513 815296592 355373229 708572185 68157670 508200700 541173479 743888604 862445899 932681143 401583336 440056458 288201802 320547744 650896403 912956104 539016518 762318642 484042751 748435049 945257544 985881161 495763194 598007557 570916006 721832428 339470946 782201681 76189563 195770076 938274021 974820799 183881525 569432914 105309990 965414231 672921035 763880251 414444415 496936488 400439489 611093124 674031729 758470893 740941800 963720256 127477634 941091144 993346653 998881770 349169613 879397903 474722057 993134737 243444342 269477674 416528230 588144709 582892251 644059775 706733410 919176495 881648184 950115431 844387957 941620746 629742407 789883839 357825102 930611125 292890382 578392037 421423615 984765448 633053971 756113915 762754006 878455002 859786875 993756751 198487346 262250896 363159714 928733284 680900554 883064041 47567173 378990397 416746744 771790956 851823672 897699704 895498674 997554168 769517278 963764813 979132550 990948205 887279612 944241658 163868949 467104271 575151417 934242030 963074222 970768020 258358470 649230202 736553617 914940450 998518399 999197123 237826996 349206236 164414138 387154614 116744505 299458333 457293168 878763715 129847628 771314173 278369956 861516644 702005938 811417277 562510839 646105478 351967170 573996534 121690853 218589493 567625043 945822712 463802298 928257321 282796693 949335137 185316299 428379973 199721324 713586217 361031322 609492171 619632459 864088727 770596285 844296629 858447009 874827191 967051 306796246 936800991 960947744 200831800 527433234 743513608 820245886 926261005 954500824 275576426 956983296 37457088 693864749 121430847 267091499 510162110 752111221 223505104 954938474 147414618 339965495 232004143 936268913 289398575 671415732 428469879 916998996 374946841 946519110 584637477 819337509 470865329 494129480 418445885 677078262 774031349 832008544 173552025 517753309 573208604 785732235 154580115 450558531 110007993 334410580 553810004 868940973 838594817 906410755 220589254 584048594 868124454 913500266 476115840 703096939 78242349 497419375 497378466 563128816 373283920 883481461 385022620 699389823 856478925 969775198 367448916 692671397 362747233 373907991 360603405 777567593 718779678 825026547 950933967 957677400 864395770 963774121 171473024 777100935 729560334 956306302 486991165 490020737 883194976 913477945 322594800 565362272 625801387 748581789 82607763 853930083 949755357 994666230 784635813 854171594 538926108 542926828 71055810 795846117 678623953 745268619 574799144 813059745 228428842 709141239 685077089 976594039 570390293 802063270 758939253 883066939 275859742 660737427 168943064 661027276 191186462 203491767 824218520 909763708 878829785 912051059 531613138 718215010 452902273 816845694 139782265 887522413 613298304 943509825 897356756 955495505 584534731 922644585 334133665 492683654 928476237 956979676 933972282 955774950 50883812 147877044 993749650 997569891 148505851 444266498 954012892 973048101 667573561 949363221 431176181 516368898 901570982 969820313 466328743 482473998 689504348 996292692 468394864 672896113 245784252 434957906 7788943 684415371 240822292 926787276 542640868 556272099 338248205 395771077 189773648 609585072 991376354 996894625 606217568 678592509 764285684 895327056 615406626 742807715 240576390 687572291 126293082 996481511 643703742 890726860 159280767 880849499 424647951 865322972 222317048 629974958 454365567 896775633 690286073 717836846 781279861 957440211 493391529 554827553 769596493 997707867 389972055 676781198 477343413 998290948 528414584 797895544 890732904 919377981 525027757 874452083 102045730 360151751 859176052 938066014 319044072 572837223 96500813 109874685 426878914 642955937 884670427 904208615 329298608 890557647 971080573 992730745 904879447 974446216 145038538 820450689 118697334 384913164 281574684 665120333 488011709 625303453 932044744 979774878 757451224 882795757 744817986 798482944 525169132 989694072 508771311 802471428 376904315 848709408 340619614 515863571 208543953 833984937 639193650 789634685 346283487 409360235 255102962 847629313 988173497 994608629 291889978 643952675 347387164 360987439 768217427 888135797 173051250 930155517 884917736 912870592 429277915 855962473 415929757 431902057 70758575 852701832 533820514 692120592 97925469 874807588 821502265 928926902 178321169 422933576 238826197 936465859 668268729 935058211 328712297 421508529 284205719 817086415 37886853 632483955 193948545 364456305 30182401 866485619 133784781 935766453 512108036 789740119 336521100 892353815 178684223 400614376 66633498 298179997 476544158 483098798 398308813 554739675 407876814 682625465 851233222 900209975 340550289 530738747 723087666 997554226 688050440 876814077 684006660 884954092 835707122 994757079 681304867 764110940 966751586 990662235 545959072 572102430 44890039 108253796 61589858 487840956 703860504 818519365 392144271 803480549 662639310 674184056 586421099 594267847 370190055 878758585 867411413 961980266 168380892 834276075 697504705 761996281 732760358 941458540 91263801 365612097 95567042 151815185 386159872 680549102 415815092 687091110 634676062 876506246 403979384 963553720 984338385 997339176 281834870 496480072 152987968 585577216 497557127 640071539 973850424 999948860 525543764 748181365 883805025 930437193 127456559 165491553 958165581 994975088 851142538 882845429 615929848 868891952 975390669 999177494 379024314 639217631 666087412 938385937 431113146 525942299 980900758 999027454 148627194 563033921 836183031 871757092 779398119 853204815 910326972 927803262 943693668 985263141 886634105 897595701 745851529 773014980 837723081 936145554 509565008 772062265 871926531 931320191 241428035 403151299 164205841 864781777 110279182 402830426 578066380 847119604 354808308 483866420 177834140 442303977 792417951 913541138 922177197 994919660 164826645 374855380 707365448 890236272 851033656 925212397 341284291 902148271 844723769 875892972 191338547 941805765 698976702 967171064 635917102 847816786 410473154 752550782 17472672 815617704 17552280 258041819 192755461 757505788 211624780 510841119 142697294 891726967 18987829 722872382 711633484 948541887 625350860 659022164 413964882 961367478 94186386 105306342 255279718 782650821 426573696 901108083 8541473 625067153 95038693 537907190 928606979 945013792 731212349 811550292 956538827 977943508 640700688 920177731 719907460 760172447 878917859 945375806 390553648 735467849 279725799 748242301 193427745 690507657 299008895 427871577 77012511 590763259 354638281 716081299 658002315 695577519 746840395 901394995 717751619 963543754 667092430 689284875 874604460 998596947 99066545 694860178 921404976 949186883 517764051 732344705 647020317 877230224 733486671 949919638 23475068 42924523 956887377 988340481 145906277 998067746 251433678 308536128 874378177 988579680 834881577 886329375 48029610 385444768 726466387 730658071 292839778 356779368 223720334 595100161 843274057 846467638 741298046 867609731 317484280 539538360 705093984 795996096 961294704 995585805 509714141 622176686 987203312 991593356 852790314 928324571 660736468 917390429 490429228 743999923 244700298 996912036 872313196 951326384 439533813 451643271 739681720 809204815 571042573 700567107 107180019 664312575 52236459 630749430 80952584 401283558 332582618 996951779 197639478 276786510 504278404 729504527 489217513 641235478 335006744 426147496 269014243 585089416 703062614 801888578 96134456 752266626 669139088 716436312 885210954 901066504 708482421 952484054 645094259 831147667 152248723 509971056 508472015 796978410 736908240 756551187 615415951 750631832 33907588 386811188 895027863 914011045 506344092 572260431 561027235 871724701 609872860 718225040 704834574 755319850 786668621 977709019 483405555 678811671 863978566 997924557 775936573 971612816 424996805 909223790 721428956 758426377 153461976 625110582 642354597 716608246 243196924 816219007 842132906 933392387 704999420 741029033 246410394 861417874 965007950 982509125 290833203 573842372 146335586 255065052 536529639 942042087 624216050 626096494 760434935 849083042 795150834 807582201 301714899 614637756 428285668 460456334 914893408 999530327 430979633 968732388 403613153 988478651 915386763 945616848 29424932 73511092 857081732 902992092 978289484 994749343 918962849 985995299 240529250 678896209 368400647 375336290 242527244 438193169 726776200 993259290 768107423 822196168 70018028 966651246 273390356 764968165 664835513 717642532 647065681 958307635 529534657 547213289 139969736 756673610 864091681 922595955 213542800 564833631 694420398 823669136 523189293 575851428 339576150 589912665 755961917 863195902 166916005 979197230 116237295 916608166 104313117 574537413 794796659 830284659 981920768 984372256 847107040 902530536 491513074 560514979 713056800 910490572 816143246 912988633 137711914 494869323 111722922 323801089 136522977 700021264 997746048 998418154 364606475 365870644 514464225 820015852 707155880 989423214 344022179 693389567 384949196 503287716 818853335 876988287 836771288 983543993 671233729 685219912 78386707 88049463 892115493 971920966 190839732 891353078 776322415 945942743 944487419 985523685 434650027 975776846 435967153 685540933 895642850 930116570 955684821 983788588 58691060 894209775 371859349 713515251 920320267 938080917 222233710 494241160 741705915 988843674 330120991 824819903 499156338 570125677 907384424 966678970 659296685 932169189 98722990 528157802 147698677 544249068 439978968 767360528 654977393 912183318 116809696 156655081 43479500 549266544 894531899 896531089 74616595 276648718 30978286 937418585 472748671 593100943 561980460 922966812 551871987 877893654 400179737 897091717 674008034 902439678 729970074 821789813 698816350 755260588 638256306 773564664 284191262 577542088 19916040 443942077 159716223 333863826 33020900 114920022 198348242 807159170 88424809 422115712 894959360 932672686 131348529 841207245 64825438 740708101 645695388 934783992 446397211 576419987 839624109 918222290 780091107 973729287 404029673 437159893 98350728 955293856 466363793 956927908 822263337 991168740 497970847 861645414 357407477 451062341 789335213 859640599 833873948 902383939 975452298 993530386 613918928 798797354 989885792 993612187 90547933 481273712 9748888 283917358 956313237 959002998 761000828 772755055 199630420 621672685 997929175 998673763 628634489 879057064 497854525 992980851 908288417 954983093 844016073 934782034 669159385 851719514 846357877 860929839 316288692 449757122 902677241 933982050 312914771 996273656 678006297 938954052 272162693 365314024 559797560 844425132 90294464 599263174 574971715 602992334 213186419 659273905 113747328 466101824 796871132 953820285 903780319 953592261 987835866 991899532 980899673 996708988 637555004 741187704 897520202 926277421 577784344 727448900 932981800 945499274 999369283 999423063 649263988 660079274 496493369 518358672 171978901 895400210 978225665 990014176 147857346 612976704 623961851 670419795 266326586 897789992 179567735 679224368 760830013 787682239 741166457 985285955 478969206 518966483 109056031 815054389 359001801 597049457 2194419 453036630 610900920 688221553 482056078 607239426 551872755 799734515 301689816 753864539 395615468 699830117 676887459 738100200 481613111 870567481 928243257 990432042 977137664 991569465 410931395 562719513 122615709 479816403 452816552 729339068 236228572 956621001 131055637 418143295 500395060 790892100 958467002 977891528 60333696 789990115 359239462 463720710 199850513 639070171 846764669 920258281 393998496 452961144 147459995 527003248 257804473 856636324 873183381 971354329 416023554 461004540 777496974 853810999 220392199 319952826 582088233 698880656 35883022 131683739 491336896 999839333 585338523 967440139 345121795 531673608 783186086 848396742 676023058 917066216 587327159 956184730 291828450 618212157 726879667 758818511 454352553 725625725 321596650 883968366 463380920 540045180 6849100 844410616 446963065 692176125 357868021 537197597 736962950 937936590 495332906 812148076 613675752 969699385 371150594 691718046 583728590 822653397 693705206 843673510 553574545 746883129 767771015 954155708 271191365 752285901 119195209 825124552 113951782 591919174 433233528 703457641 887132541 929046405 639922521 821619214 907390511 943538703 764185361 980708798 402788204 462597802 422757905 836992450 124826909 331243365 313069753 875564313 352479845 719261697 402015416 548146958 966592249 967455630 33820006 706587360 571317605 899228193 475577687 793860709 474066 376991953 996308230 996928544 678744291 777560520 415120770 489843030 254362667 941984622 305009512 733605234 182654939 848785487 995288451 998918311 84643650 969873167 889785914 916822529 803567187 882562965 691710874 766676646 653515075 837428827 827726827 965515708 638974066 770461768 125189552 774674925 456487276 567715375 381959671 520678540 796516874 929628976 627956831 781538395 238255933 397845247 440731565 486974795 897607880 901105974 676510940 902421931 367563032 945435206 645823156 785648204 823271114 850346784 875010789 883827791 664163881 736345708 616008247 884176689 51696896 940056101 257295325 724343145 276640582 493200895 681064651 836402179 740879749 888793665 244346870 658555643 13257733 364951054 571076592 751553539 249974351 963308571 798009121 909788634 980709881 983031920 386705537 651386890 689968180 973697184 122773238 415065493 335957177 840388846 301702751 383854030 415003343 434619549 947476921 998681435 760265234 902303296 137172271 361668056 518928832 690513573 218173170 242747893 871359143 889697571 828160285 926869846 135793934 701291009 287221929 627947006 328897841 585415732 909066990 996809089 794302919 879531470 560256201 900688002 776488060 949841176 122005913 555906666 866399729 889001768 897291901 985092257 566667920 919048296 33372616 706893885 835352582 897995437 674894902 890927729 295189486 604873919 792670965 913182796 454484958 847350613 877946815 957996981 403895831 436522968 777611839 995356020 996113690 999814381 464855156 752915868 147234928 438436828 824205668 901010652 962108096 996227384 912508170 967315527 821659121 900603081 457218069 631724837 22501261 859744425 802721943 850391071 302479781 738392329 254166805 974917492 385609789 684573260 153785125 832445874 596673215 904087044 824297219 939277989 112838548 248529735 297144875 364351450 415284837 780051820 236579680 331658845 374473057 392700826 200398634 358699771 347101691 849487038 563023468 997181170 915461191 987705002 596201747 921848100 117234137 881700864 608844536 746097399 715535534 988777045 919044443 953812804 372014740 884229161 859295630 887391409 682161820 880713609 675934831 904046078 172636085 588196048 115573182 400058159 537664972 812920806 261263821 387019674 957170560 981236869 980876558 990748891 154828149 583348343 225762954 969669363 418355339 423068738 503377131 686538574 624834006 990777781 945857275 964014010 358477667 983923123 399704825 842991735 851118119 954022711 26009833 490481889 871663555 977482072 619248157 937652175 569218001 795089381 636255729 665054665 855520650 944589173 845667957 853972467 536067967 847466861 600779664 669092162 480451159 539587803 796814785 847591537 811024792 901605606 185188012 853250379 238371846 715264675 406359944 651985812 423090436 927439598 911955861 995539730 252636927 846036904 211254949 970512194 123746415 388404102 695564948 778878874 36418492 464243860 746669075 819415999 764883966 846830562 824280429 845897910 74438903 220515865 677738426 954785236 441785933 527407205 514238926 719844020 967149037 986021334 305933440 339858129 934387919 993431625 106403697 186732034 380974341 938271863 100498342 463984186 97206685 488212216 990902952 991019108 405494126 515213142 921446476 946555450 609433269 843797433 774923925 989732433 952698947 974604894 575367247 791198953 441905717 902655695 51815998 853850951 770279642 949073637 374086629 510051032 501470448 522143001 505237159 723495720 171205955 956812116 319306616 742148947 781142760 869014116 802607531 903886437 974383075 984761276 718837076 967532530 378398802 733432287 191690695 196385687 381352017 662393329 193499114 496926099 211393360 743562901 337213976 452533538 733381277 854104960 765123921 781116381 745823356 895505440 134228090 436112348 299695337 940940036 386015568 753562248 329786767 341984220 29826958 433633303 767473165 975746543 635756713 700154052 719759444 863427058 461895924 496831380 584681463 812296123 994694706 995472147 242003870 539704570 70894004 300718715 786671700 986825086 575510829 956757193 240350653 861247661 752933084 875648680 805144634 848344240 409775585 548743650 866609698 896272891 27332224 163399235 842034753 981661949 368135403 589520119 62801055 167819739 726580812 888664439 571475038 973399645 75299447 680726961 178677313 800719195 621288028 670239073 291915873 846084839 761078791 820478583 905673991 975016069 833727752 902986680 747214965 772451200 226363817 574762965 666809363 670214812 279493510 737741406 968925144 997165576 208463369 634073071 186052190 747343188 471489805 781332388 69794886 932974891 178407774 750185512 614626357 618439782 280015373 383129352 387597129 997449104 197196424 741412211 295276283 350279497 855566090 951612012 32079113 466301343 153934798 378491597 64387530 959379806 87315130 992881486 32449256 145732744 668863110 743191717 41921449 263599961 404598568 823269181 332214235 801930189 560909650 652814858 628241599 897046161 56666833 748773581 19434813 377452248 572994171 834170406 839932310 978143584 628869389 648957628 403328761 861983095 250288484 920319952 539119009 896998313 594741451 961233333 143991278 337374888 412825907 481225177 153974073 395631272 987515148 994697477 93888879 771537529 61455961 604118455 526541400 830485970 19758337 402495193 913572194 997306507 144322517 986433113 356849962 900939890 477572734 636396150 160416055 281312219 511202650 610995934 276885558 803704519 612602650 836824185 393133798 920736807 382775486 864606166 587347584 929208253 518348835 848278872 297703207 915293817 366733791 994495564 786747049 850591426 789413926 904355188 166038498 470695323 483960666 491826647 996587913 997597490 665613148 897181889 146149510 763804568 157246723 340928782 824667383 937358335 31272619 834916078 805726037 903028277 415837556 712081648 546929162 617732270 134523555 651701316 548038840 573141474 727296130 788742236 465553761 881250008 865445480 937655237 381365304 541195452 946283990 984031032 181006047 328289642 71111180 875589161 130443892 814805908 657032302 865751814 878933809 896397225 73918724 648541788 446332658 584099976 699004212 848354096 431982767 839012928 776813259 926757683 329405703 837961674 417452433 617586970 146619401 835059393 327200666 809675375 442011774 703104862 373434733 809002059 473435921 856058972 917618239 956575144 494807510 960265241 622922593 740552902 314122022 330799709 228713581 416099771 134855926 596865794 225833790 929376550 657622500 677780688 581998551 686818769 767414762 899201908 110921486 316298842 155963701 811310957 118675280 647148185 662851168 888262158 521287956 843521388 443656877 723990444 820231490 821172921 393063638 970231856 183283252 496636038 798703628 883106140 791582992 915414037 824827121 944173327 66790496 822587955 43892915 439667230 112271078 371272672 373276671 694356260 853816040 985954039 277072583 876843434 69379062 339959559 996930461 997674051 787437734 815187061 904598212 962278400 871367101 871412537 13165282 443757938 400576255 763510193 786905407 890734029 127959070 823014023 14209458 821535333 195849303 387757731 855330320 919710900 466539481 659785661 284200791 343146876 389240757 679636652 777636472 905068877 412091013 506607097 67584976 86428231 140767116 175634976 865076631 963538251 347218580 581929724 189614471 560761200 978513076 990821926 778384774 995686673 409347014 773391843 356994072 817182747 464558891 869677636 138794808 663718686 483446329 870331626 255946189 496007854 736046499 862533454 670718949 863822994 30162371 414660915 473657962 833108033 432248913 811115175 109990108 202330813 724289448 884771085 391704382 495567472 880381580 980857055 115772721 940427522 829699790 877638910 972330534 988275932 117898636 879355416 470407822 941378666 682845675 870257026 490141576 942831534 210487602 702663905 950154026 976149367 251302555 535974653 482798446 979187617 400843109 630105067 460988478 480035664 649511777 755226521 923409348 980854408 192207739 533922219 937177687 942609752 361785951 540799641 979550693 999004223 832932436 888975810 9698 187702538 552312672 831966647 492552500 961284474 664804151 833269315 884813472 888505004 756685004 896543567 860253810 965987775 896461419 934287554 115133469 316213233 720800607 944580991 775018948 945444101 960202002 995841390 314135965 831777553 580934759 898923148 674422828 692395633 897041774 998157451 286121612 919863668 308842541 707267087 361490699 689228782 156799516 235976992 822946867 872083915 998499251 999570466 571965594 886092109 882649985 947177374 120535931 443024558 866898796 884859885 166577041 531440142 512873738 628886486 303689288 991402437 791324850 798589437 319229506 804282042 221223650 322879634 983105030 986670877 370295268 613808393 859400047 867577691 279060702 776696643 202719856 223184360 647201867 893900727 886676908 955397825 21442317 22470246 137455308 743352405 333602185 553781070 782143122 935653059 250402789 715447907 773379140 912325516 518477301 662455984 497319749 755006917 122605005 958867576 118509132 166734406 178674772 340064345 658639079 952694335 183680705 325828952 866801087 986101881 110721912 517187669 557557656 847991722 894833496 964598113 440315153 501038007 999055790 999658757 685604263 701162008 517976180 729887203 400396700 739842006 109499022 681752386 631519101 733762056 899582362 987772252 250715631 666318953 212549271 287466411 938201949 947661426 906358855 995650734 49792370 331840462 778754465 824909611 478861519 948047675 22284286 621203696 827291386 914573231 241437787 896050514 275407208 754558551 609863257 943907333 305706495 629819797 298220642 532154573 954778879 988878610 457740887 779763913 838502946 859350848 32215906 191539549 823430575 851669580 386432261 609715317 734533440 894027466 763900391 974359433 306410764 576772016 455439291 879264630 404302045 957953272 813490319 831179066 969024024 985809436 195366599 453084351 372977836 654372059 647895558 754249181 481098241 675005813 83229207 551013460 900202305 951481357 648131880 949882854 776864170 922242448 849352605 858017999 967355904 979056631 614178759 802674573 135194231 527475251 575137237 752497664 439914986 595795307 249513939 282829585 788004905 857094984 339276289 720454685 624115174 683529598 140079739 435771063 700192354 983665484 906572809 947493161 105324964 846654297 151413952 376093336 871311709 894727092 192053066 507869064 802360577 878129006 51552739 680696964 361633513 474172063 907034082 914844495 989178962 997732359 86928465 510325513 815460626 912542396 966517165 989434668 777744768 797129912 763799811 965026603 318107398 969655939 165562348 985588866 40357689 509925031 22095223 933892160 615966446 657480165 160747185 918786936 609353439 892572378 624914437 895232407 461898672 959891522 192036875 756505670 19980132 269432855 738280290 859462392 231640005 685076720 600723035 986268985 299570770 591544367 619420811 762105689 416125754 604141039 607319674 637221079 95910531 212013883 83364499 915810116 965860604 973290959 168996667 923883140 586574166 602014842 733563120 972042653 594244501 802584504 279462876 408587040 339282061 597125640 306180864 347065955 109094351 982082354 396822369 992901385 708178211 816395315 326660021 761647252 43265135 621315851 520337244 695020607 784507945 891867772 220332825 439573643 865372527 989679852 451982107 495954044 288607408 547459621 450411993 899206585 151606807 759509317 486528885 717111801 463504775 901989094 6968865 189775493 784328951 984485668 803292759 942316265 793631576 931787710 234674137 543930775 640722833 670866679 509958483 941493141 48840486 749877096 680654670 962018859 263474204 501738541 408667160 547154628 954784145 954789151 407534101 881950410 251485979 489389824 957897409 964390767 205157101 615264729 909289058 960268149 568414546 708417173 897622330 921186176 793812489 932791243 403734102 745578580 92589208 406677381 82387088 478881062 169515461 879682746 182567210 363253441 441998990 730945332 517065557 653436174 907956655 918352880 40821882 888160930 759753476 842077904 138412294 151136829 853011458 979966629 795471932 982423265 7225350 744900381 918951253 984678182 779703148 945615976 100042437 341377469 163701275 869298450 73761898 669185600 84744192 690181871 294807948 602786248 732017619 842467373 56599241 622227611 824337719 941526499 638681984 956008027 505952927 599615936 695257576 792287067 422171228 815359869 694167478 863715101 623141032 899068893 582634412 958820988 622161944 631615213 215200214 621665213 674568134 694361879 810472512 986809647 97187374 97874030 516857987 768138170 606450260 832438946 637554509 955755024 136306521 802559257 901859402 949301243 740320206 811276006 968417600 973025775 785119752 898627787 916634024 976633399 751347173 809407153 845863902 912396879 772493741 838074958 130274216 602137677 356363020 523735015 903451282 989836884 883507415 982842301 632440770 836829189 886702234 932506145 793179815 844349903 605200799 644706377 342121671 347124339 384022703 916937887 738710731 999421579 89783112 97990152 867219997 991563284 51358332 195627663 762434301 805620385 436548680 611068446 908335335 912069445 841573491 856110819 288289308 469802500 751932407 782343103 593577045 914828357 14951735 660754787 954273794 974237364 858961668 994671839 298673000 811461966 334076375 407511230 235466673 934943960 945914102 993587421 883555561 911339356 56250417 483069978 756033363 954191544 789630356 848875852 887326229 916156971 494944715 769597673 497210552 872303403 404921104 874859689 574357849 838065395 642869279 766061278 271258076 726755626 557464228 747280081 218401791 395746618 162857669 649923683 594822169 645825107 600003317 671059536 560406271 980587932 946635068 980576392 973741032 982991502 18087435 962359746 806878224 849079468 473304872 690179575 442085364 644027278 206270208 726318594 137795038 155383836 416337660 562808423 242226799 796273089 896452083 946056634 788618246 790550873 155675131 316644534 624160969 992892454 99484561 575307735 809676820 930015639 317350595 341735145 507736568 598912196 466996920 652801378 525443609 596885538 841347147 869668234 933336661 957507754 507348314 795115459 989556960 996918218 141819297 182752889 542144368 784651387 620274697 960808324 755978013 773262581 423281289 737516219 984376257 990123826 322496540 868757201 265948637 836364950 709647024 805991517 401114727 825037679 510017238 586131515 207265666 671481914 443561652 966315059 739381429 859937887 168646758 183817511 170646290 812083117 876963934 905471629 783540614 940944728 222400805 267059661 596654645 790962718 624634862 724842789 694746271 914766881 67380673 843610837 862672784 884150679 752275276 910631861 420651532 800940159 5247298 767317182 701929521 864176466 606857202 983477770 672160016 886865842 732687634 966776518 948757470 960062909 763762385 900703016 494970768 669751548 66268030 721016913 840763756 926842069 532871065 697922330 884052428 954767379 60859042 643350496 182096329 932998359 688047941 983613663 353319359 698207952 707481415 744599197 787558071 963404970 710554700 823389194 786340153 861532594 545190306 588813566 561602572 891250028 186623301 455403475 685011995 956766594 72646317 727023331 773724343 828393928 399104146 695361233 400690307 838137699 449674768 503797458 114400991 659848849 64353185 440907537 709767449 986394576 692028682 877535964 791604726 915038436 107715369 447406857 404319521 432410798 440108459 650016132 243352036 894092703 674877956 885370376 751977726 921886430 327973301 869800580 2348169 368782498 422500183 493877360 837778060 860860791 809635930 968774437 874271768 923212246 840482178 948272105 701597625 893599587 313570773 620030322 116635079 373725375 455236773 653327612 546757533 894641241 212075496 732264825 571765348 982326003 464694191 730188073 743185776 787245054 348814749 933808765 65788110 364456850 545046897 870887188 631735624 662414154 788890560 803000982 554392848 935623229 640107574 928498883 75268612 934068559 306541500 769231600 356715935 460511854 777844353 970516291 606747955 902953822 41141608 728913344 105601706 785577595 57177163 297479664 210993948 821303727 437266288 956698601 112255423 928276001 414808811 917003625 292549268 787327871 484469139 552996512 770645756 961411133 744019377 848811257 196441743 460713729 593846019 916443578 602893741 795114320 552302659 645076648 438281826 905069871 467994778 760911780 854575308 941167804 78714927 89849129 848627062 920542001 642189386 818518420 251084520 431579122 55322239 509041632 72109355 470962436 468413178 503958080 865354109 986087900 648258637 699050324 456240135 539755003 549411943 766106321 54278758 474491179 369188225 374137114 820117175 951295674 986535854 994975903 301802645 858021390 196501054 601464644 808844717 877974466 142588898 908031287 32291808 761772896 689538131 751233485 732555120 870592560 742479274 912674347 651702130 887905366 555571506 766780507 486522742 713508931 181343900 960618433 111218008 778202693 743218906 958729121 155915009 848583604 882858325 971779416 310493983 529200323 236502347 754482059 100128838 322994619 888012043 973241494 738737143 997068349 899480491 931751127 528496351 588094451 219137110 364314293 238509275 995391923 160197951 837795961 527002052 933876028 21378660 650329906 230634468 624690843 549624464 613201969 378934919 391506959 900478492 939368118 945814640 962290856 30900228 508437028 747614025 905046290 342391777 744775967 449573916 837343187 702405050 761747247 335289749 793284853 487248309 882310313 605977255 814223098 94524587 169894887 661806012 751496023 518809089 885048451 717989167 831683582 755617160 979649088 318924638 802067428 997846096 998704568 618166816 937235568 143010344 732723141 319202870 834930985 777718681 880693856 209146163 390103820 701064862 764141025 801002818 930715002 668001364 889516902 499151806 792348644 412317872 509605288 887446371 898287714 808710432 872708297 459522461 550492602 448123049 696495093 47582692 940505539 369579277 495020838 764755181 794831493 427439224 704245170 53545475 617506890 453849405 572038916 787359336 994203049 487117690 588615541 959468475 986270860 143472178 730827215 94926144 289516197 82585886 299625094 491658888 602077830 524044404 752072689 736076839 904748123 722505076 747865142 587925225 797149366 852498031 890707500 207935709 725319056 749218904 988369537 355537355 391474870 314014906 446312439 590734834 661712641 874809193 936044154 644137741 705747657 379353643 847550668 515815116 757931485 539929087 736048165 322262809 933129654 913204713 931200899 403529625 502463144 990000710 992405813 926384249 933140428 646505706 822592169 173729201 765340653 802572636 953083452 516444581 899311412 704633288 793089911 304731593 515276511 349845317 397815843 467825663 539077001 847735589 948039071 805369142 902145431 358467738 884818072 219114130 792614459 793765672 865579070 900787312 920391668 765998555 824141497 1508901 747318139 692043465 924665958 126117900 248217031 272729309 657267086 826238638 958086555 238825798 275654131 38602941 553279999 317972921 683898079 735114243 913185277 705096305 914612955 464063848 960638093 862262464 946395251 471415891 854128928 132883815 610140708 181289003 233938778 961343688 968524312 695636650 953300368 485466133 536107576 894637563 979747572 51586116 255209992 290518328 594218453 315515167 613239604 394975532 537200974 519659825 587576170 446882979 944724244 588375108 814735595 111072171 345252086 480301178 986117271 901934842 956133749 457447017 705822263 832220865 958148235 454071710 651473547 128407782 213517123 488954015 967056564 95682563 365744695 587981317 890992797 673198663 854169293 769752750 784520569 726600270 810585424 198042410 475236967 466731715 502581014 373640929 387753465 781354477 960994879 519072669 689486912 971738932 977932816 125627901 670890619 82895474 953792020 119899537 856089363 731448653 789547781 74412457 867179868 653808220 709298136 626405814 759074963 878174497 983443964 120165413 837183028 830610293 980169640 4837054 535410092 260165061 435856462 462896333 754590068 459137647 860003923 738228121 993563876 663735232 877437296 404380831 884796819 884129196 900548135 201549865 906250715 468157354 586576261 454958868 887511124 274201587 610747897 485979013 891128646 364822523 899072927 365948479 541674708 956128539 990432526 767296653 797556483 550085642 759794719 16611912 120441967 998035745 998424217 779407675 915938601 358947629 514668262 928827356 937314686 927569510 980850827 807930223 902049573 840346330 965301614 905890770 912405134 966220171 974608822 581393718 971470629 544214025 952295793 469875798 987752097 728146806 971946430 334410812 351966544 296158273 381965558 42102599 727331007 386288679 724785394 778389393 882719983 71609710 258002256 720483277 825999105 767079603 868127614 884638369 920005110 676388563 808978711 594230854 631037251 465576381 729083544 1497068 758140958 372827330 607947121 900113802 970470074 181592502 585881469 887088970 993442025 878655311 893914153 951401967 995150661 320897964 679638527 968858465 996332793 293738287 635704518 81496041 552076407 600217004 750106520 733525255 736166900 406572675 821197542 568264264 877794109 74959772 582528432 912209401 921899905 519530749 778429048 765308460 831932571 119657240 770817854 338616398 511124427 948509908 990068953 34737853 931717143 301066180 452722259 960330981 977528503 894072343 947614290 462839394 984468367 79848769 832774443 718258590 976508223 160841066 330236545 438828317 697502685 749767042 910185646 796419140 885620149 190078068 701108336 193854755 274760351 289182957 412698788 730862383 798295698 447456910 908412173 669974468 984694235 245251558 979513775 85126469 525401460 701049244 842327660 649393799 743469218 88883589 506927553 539567641 912146878 619678050 954931207 892581040 906789233 749174941 785523711 680774087 703052187 616185267 770815640 758396320 764126168 808103856 830677259 631750719 960321967 306401517 457088508 794871451 903317023 162717128 750862240 859061624 862377575 996473965 998883041 380756099 534549984 607482097 747193748 644578380 928666913 111063443 777870330 236296137 684988744 514608283 840197213 447536347 471032218 855976655 982253417 358141625 922213842 837768420 981361506 962906892 970680525 900973682 977809102 161459494 551039435 783169510 906007135 437005593 884389396 413814235 774156722 673719767 944161897 21675396 803768164 270998899 511093493 884876469 961523248 737796372 873400826 169492569 896772577 85386970 953563554 956483097 982687771 361658272 481711333 874473101 933467034 269533221 856895205 289684117 364556914 452588866 824492184 733222182 752553009 23202872 140655192 762166313 913863461 373356217 557200278 267541500 577336738 37764660 536798808 894746774 898466944 354903187 647122600 40996243 610173300 950974047 998134912 351383990 619868458 917577468 923895738 551433790 653386796 917756813 918157554 70293442 678471748 103107135 523108432 228806009 632516779 549923258 644170134 946748554 969271525 698838628 739625460 721060627 926118913 541419061 767516877 519838589 743805690 498896440 959960589 206700271 531894121 888760952 993925425 521547325 664509395 744520852 763315879 788592532 841853851 271081743 817160396 850980586 931700338 118116153 483694400 696782801 744832955 811004507 850736287 594270682 838442610 787610491 935479730 955263941 969375863 821912704 969277319 385855176 454170721 582894138 844403010 384962344 966290244 501780584 589624024 491131552 823602241 289172076 838504356 59312474 670960848 73907526 992861459 356996433 881416373 597786424 943527473 431456245 666336586 936743400 976044414 145860317 461534115 743143360 827917886 399108740 456560688 610457565 672798579 955642626 960635938 856334190 888488020 125445468 369045399 601457486 947361323 270977496 815503942 828514354 985636059 27215886 297585588 853728143 958878386 971193159 987291536 127815544 459595991 15721145 601446197 229398223 722595272 695119459 782923838 467363481 834627757 758294578 830806413 953672505 981345799 656167892 925057191 899669178 997694383 383741725 748873026 739051174 841837905 154351299 411843215 322194191 354597684 898943253 905070349 388154153 514320260 697727941 800924428 642677364 940068805 527122754 841963243 822409420 882505543 860465485 909194138 943388051 963736768 995505771 998513451 95819326 164157124 247595138 689472223 276527756 289703350 741713852 858298531 550388227 557719823 3717993 646747818 482179643 801175006 494641114 641260591 352336036 556629765 381276034 566046791 423673155 572416738 657279558 786735215 384982959 480089074 505962715 608426134 312311945 525832798 509202509 786103743 48379504 265706005 541373631 909783367 912652448 944553903 627135079 669363520 316730361 334716497 653249546 881070521 178993501 832331423 666694173 972772094 185468192 930019884 476363818 719041746 404698350 514331738 723087817 920619469 212581588 483515577 533613499 843792883 882152953 902606200 689917969 697712083 135559289 241427225 486947604 781257386 445504214 753235681 268691480 890211873 418593750 777488591 385696954 964564523 636368847 854650958 254406614 762763235 695309605 750912628 899872009 972846470 715460340 799768227 50297912 245360625 456089422 475828559 933127028 940365453 302822966 789656819 4125693 701331404 661879854 999412790 985860818 986201762 657558130 937095193 397591787 758904463 440405735 884674421 769579242 902533321 784699310 899374316 325493301 670618421 955492074 977310872 472444029 808301675 765349004 771304269 427895160 900209030 6081698 921276309 232171060 234263653 741294801 790669135 107648288 200251306 397554136 763778903 446063442 510392990 538089578 555206884 968583146 989026529 28705179 174838057 558247839 937711368 78481730 363356038 364285952 400752188 237399885 931613377 153131652 485696532 378943668 700967994 447407288 722654441 198178159 980962458 275203835 609864605 743314234 847361579 564490939 676596937 860414236 926601129 434950374 574734862 255190320 290871175 190048911 223403704 194105567 229251160 945710286 968593964 92189565 388436752 613687971 654905299 791345876 970598056 610647386 898902975 557671419 778725953 44565175 931600644 492352860 662808931 964737616 987094802 606147402 872480057 336362584 381984116 121907272 355661070 211180924 938356279 360494885 586976916 833129630 992715102 191096716 579928985 154068931 434625039 28566481 736421216 768610403 855257313 372806780 811857720 720209233 836380611 156866462 767126894 698600997 737353755 639307338 989725117 250784640 572435855 819315356 916794543 797529842 836863054 943634416 960603054 381624238 670624708 42744656 427699697 276810664 924535367 822694567 938296486 439996952 729783291 874605847 918055108 263694709 353027886 44388128 731904383 197187661 384177229 406103733 821310435 617916428 867766630 310761790 868226838 496882862 543202968 703900114 825600475 560584593 967790108 686352905 973508271 135504564 891290963 160169237 698867748 899833979 979929324 261470102 914814621 111802189 645106984 419460805 836834778 98348387 620500359 179475239 464698901 201800736 645328935 143166875 184665822 561495325 939715647 337618323 339091156 847214696 874009625 791134478 941936732 257127934 804305211 142187954 950953908 136598726 499672125 135006281 625887682 694109897 717471258 319122799 337692127 24442875 163213226 499887597 727386673 209953614 227878717 277799897 430615532 439220917 838780238 645613021 921120938 176953785 606339698 316684004 637790278 791342693 906080339 60324143 728885242 474879962 888434661 664299990 735216387 382543914 727379394 206209985 886419849 823020580 914547603 686292785 751267305 743555116 916715031 158677684 620976365 228206828 867190605 594427426 951665772 768032524 845501043 853544820 903314888 111613001 245394328 668104228 837512953 926865294 968437306 708661396 940227641 321994100 966940996 418914487 453780593 915499081 926126285 746173621 776028237 62171780 928344110 380909021 736591251 611024125 979941499 972502781 982319826 140302567 907563903 585152825 955386972 947183637 992186122 680184786 719957557 145561437 733136733 532538371 988380055 977576651 989293089 412533520 531183269 348050232 772248576 657797164 906063812 592679353 904574372 297730233 358367120 691018926 908405569 137087318 840705633 409646324 775114666 978565267 980780667 99503120 513654900 959965385 996146273 43951265 847808179 356974402 650064696 784638986 878279360 414112041 686712415 441209950 675609591 602992388 771709233 861144095 883188357 469412443 697644416 334021189 693455265 932261840 955540052 461923929 724693423 583562157 829426134 506545297 941495152 581933661 879264046 217153705 705455082 969487556 989614362 683883225 941772037 395748856 639712573 829325367 835434839 176522332 769881104 613141264 893141174 400275892 786435658 128108665 183448819 52612978 965648383 355548709 551928415 590971285 927590101 892940743 909402661 194778010 896455993 634711033 896674427 667642326 758955908 720856726 807447725 33902525 542496135 76926716 718948567 405660538 926332524 755763998 976343100 885971953 924818622 451710173 639235754 200461058 939829516 588589209 766242339 653470691 753416148 857936742 891594643 405250954 571699210 173201235 958170724 419842161 984818805 489115095 938140806 693888644 853439017 794279825 879357524 698826905 848757871 334796958 895348595 383031904 618525835 88094856 737434733 281851584 310367291 64595814 932355946 111666482 270461685 733104064 965960841 551463975 729910389 459659867 660276893 628777802 679363259 465449640 941997075 139499072 334788647 506322872 697056827 403098841 958736317 894617224 997080265 173029976 417724384 906111961 968119623 633649958 978949688 348901742 352230208 375798279 797290995 204111649 799662798 414979290 709427009 601851259 828405326 350010528 913975700 857291209 860474099 587755323 922833384 932030610 964582535 940666599 942772930 174281147 649104777 313345558 988116033 664045692 928152567 518655474 670350798 122444038 958959721 784714001 880742178 532741802 622846795 512008287 978200665 163898825 822897340 760381467 871192042 821423358 968828873 167605901 213446116 632419419 642143606 896784891 985964016 393948713 479428764 993277783 998735684 67288271 884115166 664504912 831856242 555922342 750542104 98662489 459624859 855779472 968311996 68077713 896161962 212953325 393518109 552585829 555430393 302614444 512133512 483151389 579807335 669704377 873841190 338282601 955979753 201080267 402973185 73965395 946625606 43309155 822679071 622025162 851383430 329288564 592412840 849073977 934342114 744415552 910427194 20165744 429994438 194479687 901544344 562304626 996891465 866560350 876235545 368864366 584960154 249754120 406624982 634885259 927420202 938974913 984917121 796080744 939932150 88175541 412581410 796312668 971341285 932687201 991565822 937697995 964526623 724661431 825894760 83732114 186439679 923643050 991984118 399902257 863950544 76414582 159749339 803624289 957208858 467911112 871724723 962576812 968059878 844528157 934419080 543802870 702952353 276183532 416330295 407509360 457196307 161433723 224008070 716481492 859691776 260179733 721693740 175312886 616466274 5730506 719821427 668017123 872700786 881664832 975898361 736373967 903117673 748587772 992278663 588969614 692582837 185815251 319810472 2931048 210972324 300888183 566065078 416900706 604217488 237984698 547849074 157529875 429621825 471177021 902262019 295786437 490384145 649038256 726184869 476664649 586742744 907020062 943381466 702581735 874822049 941529700 985153699 301862646 948872171 421734810 501484481 519085530 811252545 728292384 799991443 248254258 598012222 946725698 947708610 961711131 999851801 217575652 748937713 808383722 932818740 712546746 965674885 192438655 339085112 103439325 201912516 403267485 406221599 866132423 990858598 638846809 842980819 942299677 949397012 81018870 921137028 934563216 996983466 318324902 858413003 802088562 917738599 411618786 458557170 382207067 830805545 630131252 884364226 324889604 418112365 149249115 283905700 966657298 984329891 126131211 504907228 317649970 947576736 704884840 769223288 555475203 835103489 995008324 995376741 13550249 391870434 93120625 882516415 670343452 962648842 522881751 970817602 357487950 371840019 30979648 604145207 904482547 934247306 655499650 678178122 594761708 920374571 577191012 876250046 300249303 523750728 790703501 916446686 996654525 999349696 656473916 901140120 752415062 910181266 325573441 677474491 942436822 979074407 90679271 305205003 945116953 973055222 561540719 662912315 228243254 621067144 348015296 855594496 391321503 620285227 270408584 290604360 736987710 788395205 309479349 668738397 472225900 712633604 521220015 865178883 935357866 943736354 460399378 564840663 372391669 971720672 301981304 487596216 216224568 793657916 818409054 958500039 646438274 906901481 7793621 210956506 18637780 730567625 287156941 840030021 90986409 322297565 188750044 988316029 892376911 958879039 203889316 259293970 455814576 558038282 870251128 872660061 246208501 455893936 281638568 717948351 321451010 429744915 350794718 865162082 448248913 863449913 990003597 998274969 418627875 433182134 68417173 232643890 893237969 909733648 183447341 293286331 928375763 934755213 683989020 696424789 168103795 955829328 999662601 999942675 891531595 992272521 993179125 998680735 675141678 684266928 842581435 987646323 870832965 968333606 507446013 697004829 959708650 976353077 886795663 996623933 535414041 911254122 22865945 150080089 211974537 846988412 622282108 793916831 325122848 764496429 622652905 948069442 55776617 147730662 708483064 900109701 86758955 197062707 408513258 440658692 658911909 813872933 972729095 995375297 740852347 777736629 92908210 796483451 574279261 991518161 834946729 902963348 357364522 490970376 85083915 145785287 976661727 987003971 538994852 570200189 758769470 829411953 60986483 518557707 808395102 977650662 563246345 912017831 669668973 815032977 498839088 548568736 974847152 987221250 782953390 932427515 705240249 763263715 338941455 475933922 775459120 778897542 953157433 999028634 972420410 995846547 628318913 850809023 423849958 978048387 940471159 983223330 855934193 994805805 882894811 893631780 254740585 676157297 170763739 597300050 368253210 934334266 50994540 152941663 472323085 553788091 402569842 716867726 102121866 720643657 9487107 393514462 351160306 480623430 935849051 938941386 366440026 401349526 483435588 510837676 630877168 858676491 679343857 983701703 702279522 911204473 928253432 969327391 965989553 969513043 372315281 988470564 312881518 694857720 150909195 306336606 93367438 962992899 682037594 939156324 742905675 850042404 581831282 921367768 14874637 644872753 786483594 971441034 303317609 969213039 870082922 975538778 337044273 358393674 708781995 993124909 133145779 597065924 759429420 819309238 896484257 975941459 601076703 713142439 219171818 319542841 140028123 860426077 281771371 748507986 420657648 842764355 280368645 693050903 767794030 953880215 353923892 385461077 165502203 799314380 813301625 956504891 647806567 771225690 927507288 967911773 446496885 489753719 242989 597774579 290984482 360930339 493280674 541514266 446474031 943277885 36462345 932884471 939975205 994308737 832089619 998903496 674883479 985981371 278694284 788450513 622127979 970254644 751382117 880560963 662823462 684016409 412571883 698330169 193693984 743274720 136336509 551239364 465748370 864517276 673953696 685907600 756272168 902676286 323437988 482167701 503014679 770209751 125861861 299336873 694431129 722518268 35286904 190666100 991160922 993471482 647712511 708422112 985395843 991949392 579875292 711293941 2311919 375560922 809193032 971864025 817038496 913944699 942793967 955922278 295644510 995570158 2088986 562158476 901299620 902050745 772495251 871012787 185891409 770936297 555056448 689880997 310537075 984886189 113037365 998698104 156338751 672921150 472036542 541618401 20674459 628416435 201441725 520157949 606389685 709960840 581051127 689893816 703595923 814427165 703190231 945878856 28777554 785232741 998143969 998716016 970785414 995759989 163179703 174309845 807885634 819616353 405064347 650428009 919905592 954459569 42386798 186644316 648931091 657422394 307403810 921788376 87548933 696936900 24688423 180645898 206912072 249529545 175033201 805478223 514978777 903509845 205620560 359324970 337774004 531908186 250052715 450975082 616947437 620850073 959897115 970161958 79731929 175661043 324795597 690545094 479542897 488316828 364089114 833825683 251011316 668304051 914418494 962986032 324366815 677805271 54551097 367367740 591653307 602230203 666553247 927691598 52931635 305399843 514559957 575500541 949843287 983932411 580213357 910645032 359752950 934142565 842362494 879212794 189409997 196808547 89078740 189346260 56405626 403973820 701885458 862203026 367667048 597734023 348117462 782018339 296277453 626426311 277263330 884856556 964039119 984409890 22135061 458896166 501817985 940450269 434863720 958047840 203542436 445650903 917686404 994722847 322575564 327325167 925770812 959866106 104743899 843707717 504539186 659736382 116954457 642428731 797188413 922662588 434516435 541721825 28112217 536933825 830352494 895426132 639872608 801057551 937783135 958749970 357843047 730171189 166465211 857850428 537596573 685897761 778798594 887823779 218282434 990967375 983549800 983617917 932972893 981664632 469871296 989040822 878925555 918381439 648877902 812096555 718412245 724137937 122947539 127015698 783459531 805733857 284322479 935912103 171125529 213680427 158880264 440830628 555449344 810331153 251644478 870098288 281869284 826816928 904473900 939960746 114027777 972002126 898575512 925792312 62803483 561326840 568382269 680506012 639557332 999765711 301064033 742043995 173324614 377149800 376371946 533667446 803849003 912040860 910126821 980104343 589515557 955744092 110247698 377659528 244607495 807382355 263609295 290367257 773626254 966991104 718953413 766791681 892744423 987548313 181505046 867216665 162958839 750557881 650120272 949526599 79527973 673067013 639815776 977496479 915212737 952362099 304432349 771432138 689089585 720521852 744739016 775360877 880397018 974039133 935491218 990239213 671480859 711481795 417020220 782596645 617631538 760732539 83727120 155030097 16933880 687021639 606460171 787955979 744923822 922436377 634998405 748047074 746468618 845529968 660249010 784328419 639789378 938948907 918268041 931362300 305425472 449787368 274406116 372620124 16067738 922948260 287456130 727740019 189175027 713330057 811517653 947930439 502281736 806998388 967099161 992055661 510021079 686591319 992288988 996382826 151955735 694653337 258280062 280276323 478933453 499071071 298363718 744384532 174415524 341946015 605898515 928845902 509745736 519185446 73683125 375138726 819994093 940328388 210522068 641376770 10020453 209494570 981384754 995382465 393512351 433772785 945229111 985856283 643335556 700757369 462140085 905962141 448439856 602135494 730004265 779735933 689803796 753748043 365175835 449890353 280893285 524945365 354440724 846540102 66998470 363648836 423271501 758747188 446399870 673964474 683970162 819699507 676112781 977603445 218400445 396108523 524502859 533770116 917276907 943852205 88685826 654048802 464104766 772244130 703314430 978030595 971045985 982552448 41147417 787876128 565284488 907870489 226291822 576487369 878972182 970756006 88593033 586840163 413124961 685796632 781238576 975088882 67707208 739600721 893326536 936270958 584118989 986634446 291333854 512654894 704890777 917108964 369231314 421755343 215563361 429622150 507169997 714384864 601156922 916397711 122133015 768599036 325419514 370298950 942585716 982676488 855272931 874523822 261014176 824437646 888156835 955154575 76923228 152305944 533106383 921540696 2094801 727887091 106211052 668519130 470444009 895521898 592824849 625939781 836771472 860985721 518544685 958347286 594028753 815300086 384937870 454402630 188611263 494805825 837116624 853422477 948123454 962212468 554503535 751093605 878814049 918049805 464403240 659953880 100451442 831300369 304689463 596628217 709932344 996124981 610938998 933571859 613236931 646833694 278510522 952131250 507795433 781558216 966273341 986585149 251616293 363660590 72172842 705828070 89084154 584153340 645570772 995365260 890042076 992503129 697973311 999605639 842660805 853400168 959810017 963305315 438946785 965867809 85842515 330723047 297019896 327554282 183994146 226692508 925614368 963291893 933924225 950078883 138195163 701945010 733260352 932761658 320960579 928903513 336375534 378717338 161795426 462847579 822356639 905914078 25668195 838966943 331134500 411678341 937080865 970444831 679958763 856962902 155611147 649579207 90859439 223431808 134934290 137815568 178308246 321808305 474087694 923636475 896683053 921007952 360839061 481593147 444548830 524480479 861766519 916942103 562305923 784898512 16952058 226177782 528843381 591848032 736274672 948377069 237145626 881822213 958453367 968589988 410751721 789228142 698076393 867539214 326588790 407797551 101228652 147387457 648057772 981435519 939648893 955785149 203424102 283273252 685864659 925358653 880401893 898340090 332522616 781840085 256386339 404864154 326302362 549440715 268421664 914955312 877629948 986012454 456446788 982800669 928732450 947412756 901710614 989675084 378588006 794944860 861586813 896395065 247617780 584734074 949087571 967973251 264012 262589349 107527482 747580380 697783180 827860424 512396058 581377054 266303866 477174386 62223843 270599896 697270355 818240719 447112638 680065854 74629871 929679992 35356005 848993997 151145379 758373188 332233811 336809756 636036515 901600184 659885419 734942781 769279700 776048893 728506749 914890371 189927763 675528618 679484102 923239244 634899728 896973701 689080204 752181527 179733777 797841611 348683280 364767639 651939028 889241458 692634830 877295237 836055906 878293562 744095701 936227060 277542079 528762563 652200106 856723350 289636193 545455888 228684147 726108159 285513328 299686912 71225301 847985627 818427100 889624365 760132328 908415441 60741343 609597416 273241510 842639000 122920147 411237007 21207639 727830917 650132549 680347048 896073007 906202874 791535506 889715717 19633822 393141211 865524482 886377733 701561208 952218038 272323846 302346925 756314634 786449504 366030358 987890893 201244748 596349457 36478410 271790163 380708837 775107640 464195024 639766340 285949546 495313090 624492815 878179475 155264133 442051128 398247033 491374557 889609339 963443300 621733217 718913113 751456754 889535698 270899156 973565286 119753922 411098486 347337945 399678349 784648402 817740911 113954514 114225945 139091506 734649859 520655921 680235433 819280389 997906242 635770100 723002852 959896898 961836660 188546082 525439368 328246491 572523870 532786708 564098396 987197759 998660740 955691281 996866686 83733261 377006733 977236932 984719200 721408961 843713852 583698557 776697390 947701584 954229429 369796628 766418923 945144409 953129011 513334623 657112757 219453299 685407241 884555820 969074182 153939895 175462152 755216182 777806485 216652048 391862795 380357841 455702012 132155917 721682817 233224753 443817677 963291631 981578469 664289705 873348825 893168997 900326971 749232506 935573678 792119197 961225256 923901984 967571064 837861884 918404462 638014086 773236328 617804603 647211259 305929345 626258044 627282290 703727309 484227686 666814565 147472780 298991721 470887070 617627854 848476724 913080955 729770172 864490166 70186166 566955089 408289248 656156729 811268006 893963953 828512615 936010865 308179866 605834535 553098747 929518270 175478264 759568381 476819967 551589038 509995344 990160985 16997852 256492361 939893799 970573521 975200228 984394893 707190078 799174790 466495550 908466062 127265854 937213871 395009335 811635412 11806455 813665428 163456048 742772728 219714865 464336990 475425373 805034271 36813822 997715172 101650138 117841684 956196691 962880365 537589933 803326408 863702045 967629601 656375427 917894616 940248762 978722699 401160682 487948870 127620021 775378407 17372097 65611419 970272892 970328894 665363934 792664721 121787031 750611817 397218279 820546978 377822908 816534301 957588572 985508185 25417929 619999456 265005862 813660956 680727354 893337253 945758916 963839682 23263383 911884801 571684793 837920129 834796558 872877937 306316419 806834567 470982751 873402600 886310074 984523764 191895907 942586972 348853184 372358967 291441056 906545518 299995315 385600301 556206066 702039574 145557274 364472723 367487592 852277592 530476610 748023606 766653101 797549479 86332793 400112032 12781752 18098820 278467546 674422599 374266558 969382191 542434667 764058758 735486052 834874741 677748409 942585506 174995212 762674875 886416410 925642730 688054987 731839027 274143611 715890788 817576450 881787698 435920859 730668722 45806304 475299217 403207369 862719217 957540234 977769630 624751780 841629253 770720567 821792661 132925974 544889730 174940043 406996896 802018415 949534931 294991549 535072999 568588469 710762680 623151791 888186577 948320230 980239499 411374852 458407289 302587131 604786256 575326628 858134450 22186987 650662910 442115604 702683243 974431825 996566387 374654706 547704270 796763685 905272084 742941349 772982397 591836259 653127892 746126987 759998124 587734263 782013253 92849716 712949656 705125439 777439641 682638404 830682647 472497324 973108368 455371437 704316319 862241106 876790319 598781407 734873172 992242201 997752564 228897161 575455344 914551567 955032155 834112630 929334282 762933425 955368240 818066733 990536382 672999258 990763001 951991757 984545586 144061452 846063157 561686483 604766240 456995745 883224261 52300255 529949950 677660647 818640507 654374695 949641364 16911590 357037816 985907856 987324087 253006997 412020328 27682889 120441588 12548576 472101568 115365863 135046532 416435514 587494343 249662697 997985715 308344388 868168526 404105596 696386645 95472500 225071377 329754588 366092661 566295073 825318824 203874950 793380105 782608394 871490301 361981995 645322561 237505697 538385980 812063269 852355771 19779651 602866688 44130639 598579085 520558732 767102443 183083896 205977917 56215296 845271015 445527922 796745382 704735512 858644689 73176903 562305985 108237346 614585782 940816552 998019245 78561171 404445714 589041503 628657318 52795503 458857419 650266272 774071230 132594019 399327208 593372184 829395043 940822379 947022457 68629145 586828389 430067455 569077525 119893029 637947574 316603108 777990475 300628490 782605612 92523704 297369576 198284437 740750185 930999499 935366231 237054559 982768144 412833511 559270389 289102378 807700184 284807362 451322916 524604241 963949530 922647380 925556087 926339261 938188657 914757580 998353649 24629406 319083180 32060692 748430130 882340040 919071662 644100875 725179193 759685967 851083109 532890869 916266392 93870360 208888721 841137945 847220745 873649284 984766074 246289217 957364811 760382477 981774825 139719919 546228121 506463373 699759015 433220302 703268437 531205880 909414638 573498081 782761412 411644882 749013700 305405528 380507164 96757470 307371725 555724826 589356506 138191188 729616357 953449290 984836385 109995470 535921576 618358186 666619922 806391642 998955656 775967197 899827499 45228756 764289463 326969218 341354873 798987085 958175183 113606321 546387978 971605293 980778269 197056269 458812199 955385011 965769930 866045894 894390649 305279529 793129680 764336598 768300387 149206576 932797600 741287089 833575054 633225325 901905196 378075617 842224709 285806826 557608967 339806920 621376254 260207016 490687257 410480746 467965789 954558452 987280073 864952785 885023151 417929845 814404714 391622126 905332934 438687599 622105388 134653036 186321805 252128738 486890882 760388091 931730749 971955585 975639014 948652043 954956769 387076641 926112097 672428308 918227563 740959988 758028552 201686967 881067266 943911976 993539743 674899668 818116764 510491541 786102657 16405029 916818473 75801265 226237722 791076432 934313174 618174255 986029115 132181464 468228578 933930497 959447818 519816087 934259066 845176707 895706536 613571611 845110481 66556827 376061614 375309710 892789381 213788335 376597848 347893528 618241904 361565115 697714917 287326741 539182026 883599005 959882087 10129895 594005021 806034220 905728143 758857454 961997886 413843473 908950743 133686029 409692461 512040627 924287751 471404766 490086263 934842265 965715118 100768713 256205263 896763857 982346677 217026308 217783179 837973553 886284522 948354112 993429084 183107355 364521233 520980911 869163732 50025883 688785659 741241221 965111474 76758312 600378639 259869759 965005732 873776474 887193904 50813530 984989359 787283329 997698369 742493354 897289478 116788246 647129334 541731910 770084584 509983896 744565275 348373702 740157824 728591493 924592184 847014460 970205388 958370284 981326673 932893784 957479442 398416190 816103311 525048769 973571565 526188168 652986869 86178373 127625259 183888704 857683646 902650645 932135865 272121805 326314719 251818033 708778871 365228966 904373559 770205882 885963172 399190440 567251479 559321129 895502027 202736360 302418577 912996986 967794239 121678096 419084556 608996783 754895335 590120588 810869569 199468576 990543433 891256475 995677246 22287346 257513086 60431719 235974039 176695108 977501875 956785986 985135178 844953463 916466315 863579482 952919605 530363744 884020358 466441606 559933462 550541723 638217609 507836725 812418337 225200244 976638941 416365487 894126855 118416340 316086474 295710590 608971043 710429050 874556137 947200316 987258426 684888339 961322848 210503503 577394755 175927714 669627944 191159347 801138062 142607704 662504282 698512018 855920784 973603127 982661202 652743536 721955346 932147471 936695903 226745740 403575733 117110336 372039977 650520400 796493319 928625106 928914037 138234204 399610476 280614017 439120084 681214797 697941501 398134897 776736445 53625105 715201530 711266284 751402924 228080333 237621034 76980090 348696518 382651647 663923529 587718184 986093337 624486700 961589840 573288513 793235617 831715714 849444361 336840128 830778762 668562146 956564108 245067575 298505684 120729039 328000673 113602116 340961357 935911922 982100354 956561879 968858676 710543019 799335520 715663277 726713994 780497601 906529016 644205102 722373294 856381860 934380401 223428237 911939666 458959788 982664032 558375822 567716660 516087548 873914442 180641165 693480992 484508224 637109768 332218533 730915786 255942443 344724994 223459741 944714577 76086173 227759921 201820912 687965971 922659586 941937980 70519363 948500850 261627402 472935029 896752230 965474333 62323916 585735999 471443646 882203863 839448270 861617085 689318739 811619241 743840817 998809197 174078808 584244959 25844064 553352520 240111794 400840220 133733275 784290687 821827397 830854230 86701817 816921882 416146031 505784720 351370899 434613541 124764602 823068735 971739276 998534348 872945632 928411278 748520969 993461623 341279534 601461939 898395065 986524546 290304943 554236146 493790391 533968979 887926693 941012979 362488533 557004857 182623878 229986540 178846363 534808358 188770256 972534565 366865057 901802294 950930714 969224346 626641601 729499544 436028509 683227342 75820624 255578616 33769813 322880048 554844142 923856118 648394678 803002450 760215560 871349054 343445862 952434460 60020702 154052586 829396935 900433911 383285797 714617657 610422336 859895013 538210613 573436468 101173858 115992228 480142090 725939699 543468303 943129151 100423816 296242309 213425835 951615789 95369153 494247570 57583256 803867250 504381243 661097229 445440662 453364307 517282231 892259527 282766732 300727040 693269329 853848207 760674241 999468241 361795786 377208490 281573357 757855696 772590166 985692538 992798533 995780229 871734120 951747763 759196397 903500804 639964859 987289233 222430919 802110298 118213204 990123989 589910001 661619619 901601512 922508857 316645581 688529177 534954411 801205741 95756877 750638258 864384263 972145556 255274050 342228874 92274843 538400755 244740768 748593374 110378370 933613195 309552411 680212624 46647086 256530418 21459607 102235911 887188188 982135922 582064144 818763987 988405654 990987246 675264881 796184053 679695366 840639700 33109183 823437738 625691300 906947976 797094450 962667513 29964540 108154069 465140096 806269180 646168097 852416024 140564114 284336144 819793949 956444097 416038072 461730885 908764820 976743044 462520338 823149532 917311913 969740207 728909752 757113338 319701347 448100907 722191761 759568352 804806572 971074555 898791638 954482549 358898842 597484082 4054310 263676246 927042788 979771226 104139868 181496002 393158316 767385784 412386977 900945876 808760870 809763402 119889212 298828274 429128591 808859784 927373447 928906115 31822487 813034731 720883317 800654974 283897393 833635115 666553228 807937699 135825105 490784113 678165528 741244941 903283197 941822803 35408437 258409696 721973027 751083909 760651917 991037296 598530311 668180079 842908435 950997311 438392153 461955182 371378857 760565728 762872297 966367438 55861466 110491431 741943023 798753578 45627976 353415079 224758221 356021847 480645588 852094371 953114260 992667862 123301015 886560723 66598999 646112232 536244740 772498734 544099748 806483345 901564551 908009912 765180989 847902361 936354312 945414864 714688129 896931039 255505167 774791003 997090253 998677428 153779806 776487500 313228688 780213216 750539120 849308146 310215336 634453802 960743636 997373589 314533823 327850002 60768467 207032304 131141110 350432889 719718625 856980207 994522707 997294047 378258662 697458255 87590534 727717884 533416023 749756505 887538765 926473118 454126020 741065612 650053082 791448279 600333450 704901777 40337064 602036446 620639805 787155787 51454667 515448790 9405024 51583729 274808909 729938557 657954758 869884175 461261012 492427525 43402462 453123959 196641787 417843083 326156386 590293632 681929785 952567916 333243438 839685850 960043910 986628869 893703941 954326638 386016327 962942589 343684098 515532722 562942712 869976103 948324608 960757729 658436287 853011378 639433516 943682253 971030156 985417966 755284988 972243135 464158038 684352329 788194773 881175836 856449523 915523591 612174994 695401231 843937992 877328413 145165577 704270647 471032567 685543612 60767825 555104234 33181427 262439091 166126690 503787471 130743801 684486479 184282146 880167432 832690271 839656042 667261322 759490848 425863062 768465904 185550400 527769364 477236962 510706525 926785529 940029228 155515307 370156043 71759709 745029062 67597242 568344336 912590346 992486750 498639349 606377373 529030863 708729227 349525544 442865905 774303310 897268786 643738061 779421356 950650899 959849921 826350199 958419137 118773449 248404567 364235614 896674514 348996926 582694635 836597013 916176228 569746889 977241732 450106905 910906169 604436487 953043540 3440648 932794715 167002768 351409866 905926996 973845944 662221157 704149823 804992719 863236631 995913744 999322991 33067849 601866024 330077755 650928193 608156120 635242609 239067453 668815880 851109638 919310264 77275836 741971064 762378054 876191532 405962535 542714129 504125285 527704502 382168507 635134867 120875105 727770665 539651497 753679482 361490166 825747859 970502906 977328417 204308216 945341399 393159556 871372869 645245399 929183076 885364473 948379870 848245231 962984639 318179075 916952380 737954174 918742716 552670544 824132303 958039435 963250982 954983976 986828195 949774270 958557464 644766278 860006648 102744792 394096498 432118270 571191583 312864971 707055218 477324488 999912338 91989082 485912335 19325047 702638846 390273716 914394749 674525651 890782885 732739102 984087503 698358762 706772164 923790971 952566781 754822445 775117032 235224126 529507334 572836815 858479889 311472517 945547572 955064404 996014345 263078884 793219588 102900795 469499031 448817361 831942097 486522402 958847128 197709191 324768138 245606415 845839879 154666718 948364866 80157683 449000227 43727942 962812217 52732418 164168627 893186331 905203875 943375625 960292012 588721210 742975951 800154487 830366970 327115322 768480940 836393816 972200716 335939204 579873138 214339950 681566231 496825657 923502281 456924927 654471882 486070360 866604339 9284584 428143167 754852072 862910196 130991430 375446032 934306086 973309901 952939878 977426520 237969156 387635235 124388368 417750974 964597440 973252086 89317309 518159703 391720517 942509180 619141501 866954782 675187140 873109912 139545080 188949785 938589685 950838038 897530307 947233280 352535611 624342149 365326923 775594894 975988138 977182020 565335602 628359197 123854014 852988732 778174024 861362024 14800907 94090728 223360187 400318095 484836650 793330446 623315260 810148834 544662798 837061853 689270079 924761305 419088937 946100227 845544132 991712470 467717844 954661424 886427417 925184271 421775403 804337112 473835900 944254801 691799194 889073957 284339316 650396786 209540563 455948568 218275846 832183357 911512037 923724107 139061660 225459105 557773676 924056636 166014711 363516334 261440283 824161892 836050292 929103792 219282761 307851350 217649243 319752700 693816354 750488192 607260475 922710325 131190446 524347726 790083980 857053910 835233906 947119771 636990836 802401260 660751840 815472778 548425217 929401997 33006412 622197935 587039556 605783698 288600506 557565340 324260598 781007296 908591860 932252500 15596667 801537343 644500715 725415988 740438643 959447260 972760161 999718168 530315412 855571611 597941671 649531657 877088905 888179373 222398130 973045515 407056355 855936363 671509725 817488413 836687823 938432688 682813547 894863220 104882496 543960919 2912393 22495714 124715423 675750196 15520597 953062200 313460789 563018034 239072760 815625789 541382081 993483884 816421422 816547330 667392620 771235180 409832212 633462382 881023767 885038911 820770805 931040609 268436302 879616554 391577754 557592803 413905395 879270130 880646934 969443777 818936688 991044311 43222536 320922243 454267875 512126785 193918251 559563693 839709391 911072299 273907011 457448491 370286962 599136476 854558343 884613136 607077479 908055447 444711625 676138335 785766386 954856621 927727674 930392978 315052116 815918699 439132445 620351389 93897087 657005142 881307476 980057498 459197038 762994593 254050029 703029997 232502801 519934578 155152307 560576490 10464164 217493826 557913608 662555308 540570790 633956252 823757692 832701114 674156593 706478123 930094874 934338864 705094036 931945396 716347160 784054862 246381966 441082111 941218179 966994413 664898689 789379074 364273469 786090222 581347957 856501237 436588756 661777047 250952035 856832411 654773502 716532650 132592406 654217752 887499691 987126953 935987696 955239842 236555345 261039815 935644838 981277831 521434305 837604595 512237814 815050763 72434697 294354780 26982496 587831754 434698199 957573843 626254108 854543292 139625924 587916431 231936699 650299772 518366550 969440527 878101415 917866498 81194413 899826988 253752265 392731195 166654505 814922639 863173730 871574479 688040856 697570120 339136783 912877022 384234097 559791488 819696253 994290029 918780386 954132352 314815256 894717032 919832242 999854273 848886579 924465083 724696745 878990569 785565366 969167598 655183583 735971702 79149346 147778334 317710861 845095779 447831046 707715453 324423998 999995175 814447479 933584945 488453423 565901759 124307554 818915843 888519626 934001871 628243938 901727344 376265482 474710082 439987422 874657623 624290799 634073006 506321642 818806523 868344214 912494075 378623906 916462932 774503665 791602272 428820233 670676287 533107781 774720387 689530221 942417557 418832886 925384244 120013365 175229950 668474463 794847894 73065255 310540137 800216387 804022784 598590095 719700538 306047341 645726733 842328363 843491056 176724532 318429655 903225476 978692769 55330025 938628397 776506848 781365730 916810775 992129601 342694643 982509715 141787641 358380741 659061748 823215821 860246869 939444895 718877854 826098485 516201927 592079301 686495622 887937443 988019694 991414841 497812785 690273432 533771516 673223316 361142010 967723998 749626831 854791913 89650001 881194707 158152750 368579789 29616504 324439899 993359559 996943468 404280296 624415472 80149519 546635722 817319508 840419047 619815583 684095429 679588719 875009697 628714565 763175685 90702325 973137928 420865926 712399847 679133975 812869257 101932120 400506889 656662340 692365239 378182602 459209393 91639637 965228330 383443626 516902872 272463662 856332278 866914055 995461434 360073111 928458286 946883557 996525350 565255622 621590972 138811523 229273268 901440336 903123832 99342461 126303128 526908517 695575470 316312572 867341697 973638537 990808028 15842027 909538300 648283359 890876180 164187634 840642943 766818919 900162510 496950027 914295059 330140085 701783671 736296227 867942214 65217898 648073820 60069904 207197426 620505428 797392558 216198567 723842321 987780714 992635494 893757141 914223416 996021016 997031143 262544092 341176083 456559611 745705808 302059267 895295581 102926645 819662382 481424405 748212642 95978502 358109814 699161941 933776188 420376498 585470285 69297292 125056817 965631376 980340881 42147539 850800241 970219234 986158518 81875297 291525291 896077986 965311607 816853829 998069316 984104354 986510398 688671778 840966224 557123605 731071653 166167238 770438113 90066865 870064388 632651811 819093822 167701125 749496435 205528469 346464215 231145291 793278954 936476583 965376670 805305526 854114461 649453018 980267812 278133645 975344705 292901610 977101033 20134332 524984301 740309291 934200299 129897779 245912034 841297582 862431786 432363964 653368176 59257872 708634809 231738009 827117619 831034113 902091940 846267855 846630593 687812611 909786646 288336610 868586889 992778207 996525052 236814912 278764151 977664063 979053374 860336317 963286780 113214844 409551803 393190627 705397510 520532368 807345764 852395553 961242202 93282222 405839821 893708082 945333325 486990795 560188724 264067826 952671957 26689285 751579077 672276627 719172160 237821124 411952758 354441645 753230988 387822696 517959320 854357083 941952257 390691836 636192500 663031250 699730092 592999542 774471110 476014852 738805983 117917478 787347023 354104819 875152823 705326853 927996501 97444131 748055681 687815829 997494346 44824611 556348782 323790338 722268011 913389869 925165048 622675223 651313693 681385420 929540461 658088607 711467905 894813130 946579596 876962158 988806645 618743668 764074866 435572382 646795841 544723130 956670523 893848811 974427625 996058442 997112987 758837737 782083033 883493382 915351610 823952062 872422466 725211845 946261347 653486408 726637677 496507780 600289589 786822360 866498026 23804234 561922270 736930725 892154553 764578121 942204894 784888425 865795096 604055290 866144418 409297566 603996160 609074779 969592612 408414520 898788324 536456651 604315805 680551211 757754598 260546388 915093322 8460428 488115871 534101592 814199543 519820200 989750744 862246904 996824774 219963301 232588613 473827609 566615635 907916276 945505224 684485432 950161491 515834579 820581375 861964446 999013403 346082811 750765448 382849965 678476937 662110043 880580347 272344849 635991899 590314576 610204886 556744897 815983120 654171211 661115379 484647390 549124070 837435501 926316466 181339217 451035150 845993459 913147073 359636537 612134437 506307951 749710656 811283597 955620875 228497375 981186903 698607206 702557632 707386462 727534791 399204039 827275787 267214113 906922246 341648193 577821394 800370059 981430650 162730633 682868314 503075460 869864550 10997786 216081788 552833158 563851667 623838194 763466488 942028168 992630125 272090244 881798323 646600490 779401845 370225984 417945747 589895280 690420225 307923995 608289533 990680337 991992337 71265958 880683674 820984537 944586878 659181988 681437421 840629366 929473151 311674693 821915937 679777575 709811933 284377965 507678555 20358583 620045299 715225985 997965041 671540655 858305582 645598099 849992128 374034617 413151701 110661408 638857197 76239560 355474116 865184432 934194314 315407204 966394612 328178262 369067912 635731808 636229630 108755991 208966193 889663715 975572413 51739204 153902171 257921723 886924593 703190823 833558344 337971753 905691430 478229210 680618150 719226590 816003989 486135631 523309681 689425487 849209031 900320932 976394372 592431477 800148636 120073586 345893409 63151769 799315194 912860674 995454187 625178052 953813477 254129164 550370126 249581953 904559502 998062838 999354093 356783068 745983238 368139530 883936347 714790732 923719003 442615438 743571303 992092398 999605090 530911411 694943478 117682166 425092981 626992205 905458439 711483138 945715668 286912803 791862308 151553959 527622913 628649200 949472958 980883743 981942736 26404955 336562452 785203574 822593329 306416571 551437679 26408773 481962535 123351356 423567733 837821360 997018331 34093025 674191310 797493374 995036477 583367370 870568886 28764519 728386102 599686942 877178416 734669568 770730067 146539226 330038836 776459239 843650009 407073794 793544284 128743508 780243019 531160932 636677110 528308861 783305882 844473485 920995812 665212290 933358202 148240288 669347751 864140587 985321716 668538768 910699679 916331029 987209849 248012794 271414766 345483936 967562321 283795928 372893188 372418542 404534420 984250080 993115866 854124152 989691290 609225292 969079593 490600189 549349728 836786352 996617553 539496179 792788788 758750966 899992842 961604637 962789273 188598701 271398009 334408477 347337614 741724713 839589096 79788604 494865589 411486485 741476634 82062518 265872083 983978150 994943480 437795516 783801776 467230142 496303204 159037951 928260230 369524967 874169625 408351772 824174120 416925884 504076509 364819409 538191476 531247484 737076578 241753115 785968657 11772898 940559672 112862573 192902657 824468705 975831302 265292563 950890511 756453104 972178075 239742872 447781098 609280397 703993941 587944547 901786143 877081992 903149298 619355607 866508041 207991512 455712732 210142608 682474611 240442445 878793869 892663170 970695055 814899152 952737788 685486073 861826854 163661590 963770881 31126931 957022426 270293206 407911298 294166421 483073301 985769619 999544533 888919331 910844749 926516925 943085106 102297309 621859350 222088828 658814224 653037883 944655513 762705147 921996321 400709329 873789928 894860213 895937905 16702153 191112324 447830604 558219532 495776493 914362634 867843204 939400126 702447037 782559204 435037848 552243247 819097180 848752053 118587107 738399953 616135098 955712872 735434470 933216016 166986232 463361885 206089052 962658708 326114673 386852086 994773358 999136119 28945437 891805857 303678781 785389177 890061717 895228500 905384045 914491799 814467233 981498192 147907915 947799899 133548107 431215301 118482862 698057863 813886235 844271500 767004725 917608758 610566986 895435179 562454409 586722929 655165315 756095198 960604996 977282715 471101122 865047009 737964714 757509745 787304912 817153754 299528680 757509535 105237503 365126977 588109085 963348727 71216527 160133993 518137017 821598012 15847151 219904357 356923544 627411562 66172161 586307042 947835070 958218064 826856901 922896646 26458257 764643470 67284726 561230716 463775930 551290774 265860681 448767943 799631496 941393229 661458506 738618988 735587527 988439066 622364071 743145323 728543783 761991866 655970555 908871175 116801 511893585 51532690 617002929 771152357 900050848 127471669 545684276 259255954 972181468 25261764 120025955 786315345 978110473 629119408 732608380 704497799 831435284 700753289 897043483 667332858 747945964 972110926 995290994 45567059 519956167 716739937 718496484 612071076 997067893 297673300 786182424 344861920 757188889 402301765 535854887 36527772 136273423 934863869 952865023 286196099 785049445 43763567 812601506 48433803 540025239 753773355 893065886 491232756 643740027 238381126 517478947 557546732 712768646 706197466 835330247 186118090 842689294 291602614 791993389 72569240 590888128 574236748 671789070 652948224 814207458 92940659 438806092 583780942 999422184 772274437 841029727 933357696 961974370 367043812 705046848 657709531 828043231 551874094 955320283 660033699 791550343 719749740 851297732 901226107 990113202 301022431 389255691 615476034 729888621 256538121 650520378 591714197 915125756 760679633 807433368 281903954 792256171 595452824 669596225 590887887 939713140 939665981 980320818 509152803 587770553 340106090 470286216 153646792 967423010 615123568 708268739 475170048 855872555 165055233 304930825 133664954 417000287 781276798 955105283 505032449 834484180 160129883 647287286 723709362 994970869 742737624 921218887 499211806 584105735 131692328 231719054 984038978 995389613 81565220 256372850 417684552 826923864 981187951 985699146 81000177 723578164 508338987 805388471 665793618 837091820 576694567 903086326 713811589 837576218 506719404 649035563 766620237 917308456 832564607 941268157 441863179 891821838 662857776 859560011 511066950 530152392 334770690 601780232 450388482 864099314 280741343 811600641 234370692 852363908 210616049 565590767 987197172 996061781 844268057 988700512 121085901 872254947 209977932 247972368 612998906 982345113 221777666 537204101 923536774 957548475 579482461 741562954 458440684 727854651 240097428 971885221 193507355 750488179 273899959 358747378 387990410 743875564 338339712 821603421 94769963 952930318 823038022 951515770 55877067 348397047 970360545 973159667 681558586 727211836 971025764 971637539 506149645 564519310 959170395 998263509 69670543 373009590 362265417 982612005 873736975 940090232 991603216 993988642 725088310 894211332 113803525 610851303 729508671 754815629 579441526 779213762 176171617 218361282 259193589 962775131 3369658 183806053 164936067 366498178 473744442 891481308 978279174 999086642 851270738 954373213 587644221 977432670 330504456 444134530 863497555 972529645 338688183 985392504 814959674 948752504 621618467 708187060 885165987 977056292 312247585 505523538 665006722 790738544 656253276 986188855 532390102 773928695 92994588 818850460 90539395 131577891 706923588 794727468 890460603 919700498 603130144 849267165 914033127 931722466 427947154 694530057 908326858 992618064 651845621 729963322 46371085 745657247 59544052 249326250 27923436 928678856 479858305 830239422 381374328 948265685 251710571 639675328 881485213 998677154 104608292 980719411 233174661 956421360 740038396 819710465 364619717 964802684 486118965 712540614 570311310 795896452 556438254 671740510 718775272 950558312 763591557 931123373 89644912 317610540 180406037 837762559 932626780 957576988 978075416 986305774 786067536 798351774 921979096 980839961 993058134 999395446 659943014 976311283 454112215 877721216 75183412 498681496 185026418 797845374 25577673 735823281 86314406 759477399 608397859 863539445 195100351 225199713 367431722 726876735 812413106 848860102 115855721 665804038 847680871 929679729 144882074 354517761 8766999 149855668 949817853 969482040 457658881 711223025 652090210 932422959 69734604 681943699 783817651 906840484 50666570 309682231 22755612 739913458 83333749 441157664 946606957 969796776 219741718 505274944 800703891 979863509 484144157 769096620 187608797 661411366 490428477 714817395 662674764 869060153 631527986 938999681 262596403 788033356 624551775 644858315 568781156 580586835 448986117 787410681 648628768 697966735 575780596 994311584 700906219 795482455 49108969 279463456 131816338 811474479 785380553 940110805 219513484 868765279 191186197 705407061 102558049 916059497 453146360 650382351 389870466 579680334 845677426 933909016 946135893 983230251 225378577 400187730 404144117 474791847 23707614 75644475 487605500 652498243 622838256 899423737 866626555 886370574 742318918 916966279 167687364 757799142 125737349 589514353 20267718 714673914 513412686 687518534 403067051 717346659 293645004 691016885 742626825 778966972 41508215 803342447 253444155 381787784 544972935 607643456 471543776 935774898 746459187 750670714 52622324 368849303 413135960 441205928 867726689 938265628 214147119 250587220 669278431 933420302 989233934 990813963 447422109 496405771 536355156 779971476 990189463 993761271 911254423 974363141 147478125 651624010 868696912 936714829 517128622 639174012 799102479 840602261 31144853 300950445 432542994 818884262 673736473 751302178 653354967 933205568 108018832 813930802 621570449 916435164 892131318 944072526 766846187 963387995 375620392 689668149 184300677 739455971 769251072 911497399 78550461 943919892 607032675 924357274 154305124 477971203 247655569 623173661 157617891 943751074 168077545 838827129 247417817 579715157 507063961 900929571 541657881 934728401 3466069 213439730 291933294 471227803 324864392 526615444 740003802 982150151 176956069 885881888 403327246 564926537 963261852 992505291 270757559 799718907 74850078 337313060 475190331 533980891 539619577 717310760 698245711 896393910 719436732 955537997 290650845 309368523 694047149 884775435 452300575 869611856 731319805 867512959 334894761 484806477 46441929 777383357 659969803 963366304 633137896 812111496 489481923 814817892 780240063 931808233 48959011 273620296 240012989 842730895 688945325 917842165 583515525 848406092 662212823 960515341 278495124 369422879 893524449 898673271 67490734 733240362 30932755 143337301 772322211 907403462 933728092 968477609 40027786 705345562 188582662 497342101 760500136 999049865 252602682 733370679 934590581 976798092 85838920 594312076 659866948 677694517 603506278 805119683 868817123 871084320 117281905 684587378 154181509 316996568 651191101 768131606 669273774 932271922 37229751 95597547 535846149 951062051 796531517 932404353 347664403 761836670 397790023 600098524 823958917 965986300 618759115 909166147 332592571 370894861 523002116 866609930 324472478 730532109 719923185 849693306 715450114 828567477 730976736 839990345 845586533 944711740 118734885 611734183 846839750 887730685 732151690 879274225 966322041 983413779 542544855 805250413 771215336 839723326 460006193 626342118 937283340 948101577 994443452 996027604 168393856 864531668 224178716 981808163 840638490 872550924 924685165 947370242 568870096 656661231 386792633 531217509 198750304 803217345 662895198 927640412 979527987 980811993 655915521 973913644 217371273 993629496 668549022 689169487 56034260 357117460 334527434 493631415 711207453 853708547 389430678 451568029 556296780 723301360 799709523 919229220 119234813 944720815 397358140 671148686 803981936 910325549 339682573 420975335 197123409 661056428 883934181 961709630 920551389 975610998 644882531 683344447 605834782 662798971 900660688 982734459 702737367 974634221 666018510 673708993 986953413 993671339 585864909 957599506 289210823 693411245 526440277 624918086 433887157 593627373 109439910 383790769 456839891 529703874 582380683 958793238 795984830 977065625 878701211 900774716 114454582 867282838 20358907 268922066 4188491 183643321 619342768 907708129 364211662 410960163 330879424 600555180 141182133 408592959 506313565 828921140 64608013 617279870 257958000 769750315 249159612 273365734 812853916 885780436 608253823 765629484 60108069 873522605 120459696 379098016 308119270 689698070 124118512 843984500 540310902 962004990 660284586 816941666 939428021 960416520 349833648 478750145 810802926 861949107 928251310 971978794 383216677 954102908 689238983 906626048 15358758 443160316 149870432 874256507 320464487 509583565 59412642 155960684 769136894 895860853 446054381 478653450 827848654 926049845 559891756 735402761 114333914 689100324 210593444 652828715 387141040 604122000 275467501 701968002 784754700 856773708 256541954 915582208 356692273 558304429 77465734 968333100 115435367 414520845 993519417 998215463 206751835 550085290 629705281 636279471 837795391 960709099 680361642 864758501 837612131 915466857 430481629 855663429 125673766 655160522 774806618 969185819 802163255 983811664 536991513 770447839 763571900 980987521 610138642 847288468 805217828 952446072 3312515 125785348 63002035 293181549 414449636 637229325 757677569 943027149 463225457 484719153 560503508 776247208 283637952 832545849 193707408 492600629 633563169 816720190 486932450 753047074 422094481 919687257 913284664 939149412 904988176 996298908 584707929 924544011 764703388 878459487 246284880 894205501 596329544 728216393 18082993 430867795 761647190 887353042 249074180 843990295 381603592 780890687 294417601 569095194 312224611 635127950 664918996 674061426 737044484 911851477 434536311 814169182 222394699 929980719 831286161 936875551 734267939 987434334 966788362 993288306 469468103 923739958 421120177 930414864 728959464 960983573 686664712 962384091 998805168 999278425 766890057 919448516 389755284 491237304 43039110 900573337 780587298 781735263 633511479 643700268 524504813 664729965 463981430 814045566 325104061 643736167 948320173 960843631 843748925 998552185 310312732 727966003 653488340 752654826 762386572 948419637 407479815 931662056 951588660 956566361 84036995 105911693 642093855 798443079 827082007 847086712 519553669 804345058 24691182 47488878 278183966 644124084 268857345 843496200 539046760 605160115 732429024 960244793 941022458 972348019 363469 784103084 625510119 719003723 585514115 795269960 105908377 919747523 385464249 883237533 502358919 947856562 870378557 930524429 413748837 840423906 553927392 902520946 157057051 700134170 666829866 786672965 962984102 998474343 143070718 735979906 153884607 256845711 939043005 975779410 777915627 889267694 883822770 949872870 288514173 841439579 360159493 447339917 455101536 646962379 604266751 911086641 241624033 378175759 255598912 679445500 670718133 790059289 781228500 833897302 894197632 976627272 683285054 898590091 92599321 206871575 87192757 935351843 922260843 952950656 316120718 782313442 186289836 358168838 268714205 730522708 145770574 670379505 178001769 937082363 75951884 871664583 932892075 979583691 619027178 899797355 531701058 575637993 325883789 833634920 710738786 930793383 213470402 999104255 254365703 746561610 14390856 721471646 979931094 981048332 787596563 864916992 40871930 325520915 448510661 953971742 661244955 865855568 848311656 848594039 618643997 789872856 792707913 957791409 120187230 802404945 105242769 325033024 968973833 977391045 537510209 569014824 334404116 464978466 141396187 581373969 635163618 861954918 109121547 396529682 34356531 959027446 803779225 883787364 923281680 926276705 969006494 974809131 355336659 426840458 237733564 255143644 461503527 488009619 214156675 306094496 462503087 547660824 835075399 862031801 95097160 282327958 689727819 747004169 168773238 958553777 16207262 558151660 845179195 901770018 849755247 957256118 736012181 975304743 960588555 962904013 381638299 754538339 43231922 98660437 763228521 914316638 457886898 559528755 641332249 701299529 224426317 468311252 564919178 808561036 190587313 820527830 541117969 705511967 540752841 596118528 550668342 795871150 276535980 681196012 180052560 217207867 967648067 999281119 843254945 924454843 145682809 947088432 461515189 789899013 462666575 887542567 910628733 998544996 740847248 871122573 155579804 714399586 358593516 558267196 132443983 967899775 326067153 943693804 93904566 388049347 30620393 943216590 28538768 691045564 850463488 875107185 575425486 583387658 582100114 663617998 516128064 780728407 248868834 639414742 503887847 516869148 479113480 629882099 994835007 996578737 549391823 671087151 106194931 688401002 68975271 344746464 37307326 905392187 731254329 767330704 818261931 868067041 162617143 168193930 871535481 927254692 7131332 331296526 383628954 877694592 229670942 572812488 467645515 528973794 84614921 260793647 23191955 776500606 763852464 891617833 805942950 956221085 581199419 735160076 52109454 224504489 43643307 782573451 469137822 644508814 92577861 233769224 89993549 702367437 819668783 941436431 525961090 751827388 109603262 828965666 542057483 561393041 968240489 991074919 679866481 998199380 649149561 808280546 721827399 779015191 136388281 973843851 543931441 643059602 821301084 843337059 749588603 933580565 340009695 874869337 588878355 626546502 405798010 717129252 637948112 702304631 454868510 966540864 757783411 868521752 790818971 861705986 31614756 758162357 394726147 756464641 968468863 976064448 596355784 741169556 419968826 802980124 794043406 956202470 378051224 935147720 165697517 908520866 622840968 671859551 703901386 778971281 993670777 997295326 817556077 895526021 675905268 821977193 190526327 234888215 17593557 37234691 654277926 913071390 590240626 931022989 806026673 899404814 908821755 995010550 163721530 253646872 945603251 983300848 223321008 477820629 669621316 976886859 184799832 668258061 451595144 704876062 694889784 874967557 539375893 767785501 680596313 749166715 208137073 940470071 504252893 601285330 57111269 201037040 524998137 624943292 263949607 300407598 546652877 804681581 678729709 712352530 660989937 665849451 851448011 902195716 37151570 331337884 716069383 849806384 423169189 585419696 53783188 872390482 880851344 973631796 94617696 106518671 584654102 722701749 480003504 662247646 392417780 975195086 951290004 975852111 261360060 525407811 662788389 803334719 839720101 969971856 68769069 123741178 507349486 588373651 506860365 864691081 45804891 420691435 106842220 669177193 252021715 454454733 374582842 513628739 143426846 842258684 980726880 984194356 65245545 819273924 610228165 850777419 35760738 410478426 433994513 538485562 652300787 916298418 481334482 768885033 836773201 848918628 321583866 766026471 343727148 869425691 43319255 532860313 982350053 999393064 379396580 636903918 346484056 794523330 594332271 755382361 185866402 409257469 206110383 615688155 237384102 799983650 896208028 964551386 552660614 718307474 449006942 647952290 809432601 931237565 261300576 333699001 972953060 980521382 459882635 741355459 652380641 710416566 133631208 513675567 908025723 973995489 659475574 992996441 638747014 721182531 544954557 940534387 839335240 986972030 548235789 757970832 928727092 981551341 812624521 893663391 971362310 998215317 45723570 154324560 908065927 925129565 998582382 999337813 19243930 523416124 555749489 917374200 462885377 941016583 642527544 794663203 807716872 901451108 381076585 887830779 73932496 716153851 585582006 762556533 564532337 596365646 558431545 672072190 153971504 909100970 352882803 596425412 905120704 977574670 150568804 901939001 243979005 859586106 516755273 562838353 779537195 860020571 517506457 719387938 268801962 834808536 886189007 930734714 972815496 988415462 58420865 665528649 916160715 941968308 461783770 821786935 261580710 511220672 606456344 675742599 511225917 925959502 602871523 972440621 326930803 569964580 28590199 801650621 596797728 610704546 703518703 968930404 815093779 866347746 611529245 977176619 861599340 931167313 56699818 124307192 292593501 631357010 551704259 669640358 265806299 302519307 607383747 779312669 258718154 355718946 151223076 353998545 27212214 938945547 623212690 631310903 390062139 812071227 793162596 968800677 219726222 793446886 872452940 896526108 324761153 750541333 605125383 840822175 924653241 992916917 702620176 758454601 60700566 353674563 122161383 150973482 192312980 954221356 634021623 907263558 525536634 939154581 868302032 939219146 865768184 867747793 346466869 712590589 726865046 816042689 479613352 576373852 754582636 840453638 710254282 765817235 37946536 218471877 985125125 991609298 166849374 383128927 244849444 278207064 951320674 954053233 293686520 365362500 469579304 509204777 543733113 627383274 885124441 919430667 194435760 317283142 58952485 235656557 102847277 515986934 751000257 776194942 182156823 892006471 875274844 905568869 764186890 942915604 301271366 675573912 881069198 944053091 56643549 271609913 390296267 808622014 471209553 751953526 445933444 569179197 399116419 635210213 691465312 947822933 366244220 557754034 475053500 574054380 319570742 637631214 902838888 979057459 441972484 507258250 521970503 953093067 611682246 685642966 446218083 651844028 246614262 500322014 651227012 910418782 793579048 869824259 384880761 637511832 59918150 281714802 985537989 991286451 511459158 808950577 598041182 970428279 785258550 825971303 666834961 850927378 283807399 803720314 347283794 813670912 399530725 550040689 116767311 380612827 256686562 821847113 176689503 211219712 1516137 77172948 125619952 182037600 113844828 937721174 654826053 987939560 31676293 245232047 824981565 860119487 489213520 883373045 485203871 844250175 36766186 418698298 564209208 624971129 50584316 190301618 316056256 400533350 490581030 915887096 331220123 778387176 27337396 127692001 186992963 908164371 944929212 991327826 966714399 973183384 226324972 542595973 706170486 769306794 643518041 850536163 884230753 987622005 162499804 568621013 203164880 661733396 657641780 776587364 700465921 984898569 821390761 978294557 441038879 987460697 339896623 776747478 750325442 894582843 486245290 831902170 887004730 936508605 235241972 371184861 129867354 280368323 880801343 941134747 135471034 364426445 954043505 984686038 837999617 899643141 505882476 833252006 826288638 905431194 467903936 686610037 81356131 232938326 502363241 772186334 921077601 930267710 191541348 898567584 70736229 946923481 258559526 547365388 406468964 451945414 935278958 960044304 31380121 452793637 595636966 770411921 982203590 984354810 225198099 909893272 245780418 984560775 35747464 626894671 415906655 754046213 102774661 622229807 73906216 318172106 719723349 946456859 723429047 728075192 663009295 968145812 673409450 859731693 819215402 963122619 586628782 591072333 742938894 806170688 907477464 937052060 735538195 744016434 57536628 893766360 953106122 972460869 99179881 964675682 662499481 753690394 132836045 754083828 982644350 999515387 447773432 915245317 473393659 801344824 350181006 729299550 471997819 894014249 706843490 800372393 577425812 728874893 728316657 929202094 946081457 993615212 386016469 729483209 669789194 687935038 485517714 917246562 438884111 669507050 748472215 754056261 640181176 680955465 942125749 975546560 454283183 943285923 698415390 852646465 489860105 490118168 346342143 653612045 232452367 607156488 864172979 963083398 25605415 811163492 292374739 845958709 853561371 968557118 107926071 503527698 466114465 662881035 474056304 862850154 25197877 794205306 154760753 288064349 28467671 87792160 633291364 830585195 874716798 955355746 895016038 943264450 536329741 613880378 221598300 659461060 91946437 977213086 399966510 671490799 292009052 432506173 249341955 570802608 272398171 431631049 563912188 600978448 12802207 421578031 80499719 735524332 893546327 949702950 455555406 844935924 334510045 395508824 275453648 790509477 651877486 723117185 551574424 605569573 216031940 415676168 797982469 836475440 141356419 796409329 538385116 606217925 808722444 910473879 688104783 855280284 931848795 950554994 527777588 636932424 6954320 106627615 834372308 891240807 291005635 801316813 455631452 873041384 877574069 907671180 757237308 834946402 661087353 946842743 724221946 814742072 395645123 629768778 877417610 973286568 715915368 726181394 890925034 958736357 337613718 896096967 919366861 960111657 667522910 722205008 364759545 819565811 11133049 204734416 500177217 561293532 222249531 648067053 750047452 827558249 802024158 836362850 287143932 761633401 764341245 984239230 944934069 998504796 550342317 795005857 370728228 431187027 281365460 418985906 375352182 662354455 934774655 977366691 196571196 511415171 675968497 760903637 231673170 447771231 145309564 850365961 231486297 314670364 211198777 920818548 565628754 639536936 980829740 995715968 200827278 248608766 496456820 928665900 691238903 813416539 274202469 846367131 488754228 736004798 951433544 963545062 717694292 921094098 140053749 366775241 252453901 620030991 195133573 845237288 956065274 990672351 659999759 723118724 149371231 970647250 811026932 993024995 22194259 69579837 313799404 891840983 33188258 127386115 418584692 525618809 284619667 863903247 930372491 938450703 544814825 769841537 275286272 673591083 465547767 491999907 922537217 928032307 529409838 625536989 129501327 161457742 243911383 787380836 728418637 871298191 123722579 162461445 878536850 997942602 650790916 758798463 789490607 827855376 434614176 877930509 894118881 935285281 286462504 650260953 252337161 350937103 870688471 941255495 286321875 837047598 614599352 741039382 264879486 361879872 279147902 807096476 249438996 820336786 717701891 977199488 231393799 547079330 548109407 871932768 184388586 734416690 263432584 742391739 392226824 651870289 802956911 994155692 741253042 976874640 92467573 388124609 481778473 882812829 70862880 986264538 21806124 797234478 761214313 767741609 881120844 890682879 539233940 544439405 439096877 703423411 301542059 523477469 689311511 915385096 473501590 873688414 944787038 971691493 463873853 924662160 779119478 900426861 192676481 587389323 467391868 731287191 256274193 861999345 847293583 988469037 323498307 940285960 524460581 954790911 517798803 796985946 403346570 836810455 953119138 977128668 472165051 720134958 776376469 943166613 618477477 756491586 996624665 997054822 54712860 938823445 100868126 403761756 835255533 860618175 265901794 864225539 630026725 754974350 613958716 702181916 786600091 918312639 32228516 129630784 79931963 531158860 111305872 885828328 313220421 994639314 889713964 945929261 278157422 320633793 766768248 906311545 698778573 883612103 256328592 843642673 297497926 969695884 962056257 999399064 714401573 958113143 62971603 747964474 290570062 631637516 363619619 607807423 645038290 969573740 952949184 990670482 535829028 976232373 329168259 897676024 56981909 571497514 618827243 798919989 108268623 338909559 219085485 931155635 642718648 792305754 197721659 294239529 624931909 665073683 774943494 882212162 474426439 511537292 419902592 977850658 726746675 979619896 549744828 890034706 238212324 349656646 901479522 944724400 256498917 503992674 354083239 900251071 714600932 746982072 715900253 931573894 672432105 755703440 538951742 906918674 83027318 811535225 626718513 822569269 691927901 919805568 975078309 989122676 593746274 677952499 319795475 947606491 119930495 178559653 650545196 779061812 110681780 111568061 900755689 920956938 827120858 923158767 948625797 981912908 987934370 995615064 78231002 681720204 480937133 827645543 52873468 327305309 75428860 181982389 609753012 929768552 250580176 674092575 445521720 759349411 540744981 713879477 717060820 819408917 691559810 708372167 879472026 887903216 656230727 955543646 825840043 851047084 488177650 583203891 445378788 798643746 350374871 381692994 580865801 928035015 118582131 151638539 980366347 996699578 533309245 769361902 483188102 838196133 524716245 743863126 852484379 989744828 847251080 909725408 273132655 979614860 103435795 969313691 622391258 785475571 362820624 482847753 560505083 969786353 471639552 527927288 118312341 596922188 245585648 980773874 337087905 432234400 529233133 696993065 692397332 918436205 921910878 944181977 440217255 645553397 176307768 546134987 888538824 915944939 295659684 823756923 670299236 745306197 746616892 890343684 935080810 949577812 595546815 840719375 197902827 576984910 899982453 965243440 550082490 666291032 645565068 728737398 709759144 798786568 322488439 760146705 688679644 778471527 988348600 991235138 701200485 772086006 385816393 901773832 840694188 967699927 211156541 432541434 915496121 925533896 513976556 925964893 725094415 982835648 865910187 920377670 303514115 429670779 853245995 940003898 790020592 908520567 595241614 768957845 541812329 978792487 98806626 797859788 276160871 455069545 930488149 967632804 511864175 780707794 508423137 667586741 120792207 553558455 442384485 602185747 728597654 854728900 553619783 987958204 169554091 565548374 677439915 944479080 725121983 886445635 766209329 990953411 929413776 953292100 575756447 832741693 249268040 414712727 651401879 922379273 910870499 972300511 798348770 829416405 161347718 438061770 477220578 635792567 165620853 394625084 735387868 796632916 731558015 972214001 562022973 801816605 841939958 845723811 979327945 999399606 272189415 454716763 799523699 807973622 264998726 718707088 699299971 790692450 225383540 858439668 991635037 999891998 933942000 978439600 914133099 918608501 11285713 16299353 255478259 441751655 792239305 866101978 831681363 915285741 601530091 808595101 914995410 946507771 953264015 986057492 239458550 709238188 371987523 749105007 890363699 893110389 688918527 780646272 807594583 935781598 363566344 489464287 862969261 944205827 507763459 551575734 306173048 990643135 385911019 400575692 979614007 980182112 931797878 981255003 252431814 697043850 330985879 729014974 854969782 901474464 457265637 720819337 489736617 635569898 431286240 741077151 560378455 869574102 402979637 691661026 638573177 987721064 210312986 505347361 271815712 311594042 836422011 977049260 350516908 554374921 193651429 811684391 943073008 962102674 170962319 671320785 533857153 994243633 577563789 610303037 771763053 951602626 789171165 844618383 36042267 230608538 424363936 884858707 370548725 458034772 155863527 369925848 509514642 985048446 145349618 516079890 429485948 781964765 368999666 664753409 392958979 688364524 696504074 724066656 354609092 979010948 802983234 920964996 326329468 989930863 771050379 851338549 310023084 902358858 83312242 562275897 998983564 999447892 346799753 730701447 875027449 961416059 367269726 579177092 449238699 705607730 989233986 994111662 32471756 543531393 683889257 872579082 147446580 582254580 504144229 734742017 157618161 575952537 279374583 352053718 489383199 994616084 647954033 808270088 203945714 693170941 573992413 575702540 342053712 801603805 955626950 991808001 383993007 997212714 621198710 792835385 207217805 805914197 575593501 837366800 686988573 963118560 165518449 864588177 195467619 201228291 813125214 906211577 352273678 533203370 7857703 362982947 264476662 948915415 952656295 999513093 357531480 835195194 449587511 840311350 718458028 785785642 902824079 917866076 565396770 756990985 767710640 812768667 557283901 646128595 622354430 904619882 354548734 592749904 898312361 910424698 361288812 851103122 171968677 737472342 343217977 783517002 61194453 155566096 479615071 728644455 394765227 700441908 216551673 445978493 127301358 321457634 340426476 738332240 586102071 905825993 797154686 854810493 137061749 490917977 320146925 629416893 255071765 620260564 25680068 607830928 180148078 746281972 646800528 663986062 301919221 451254932 849322143 952811023 279049615 802062337 708771947 742708781 662447938 896239012 628006911 755360136 600019408 982456868 96761253 654622554 288643600 965623505 708485755 880611331 245195223 319206576 612410673 733182139 154084059 778981213 17477731 971868821 481055933 792611382 632197973 777140496 42119846 709621849 684616974 922273735 281198518 357080579 411782121 441103315 544416486 590626337 581152896 937105548 465642657 937212642 457554 872182992 482392751 692288845 16301850 297658819 559587566 828437019 914715781 978228609 363670917 385232802 306417728 944856436 311473093 524157905 667993797 735320674 190938571 210099083 743470399 816321212 68306975 624252023 64111875 393626298 203418130 430669112 272918002 514916377 906929476 995122170 970673180 996836797 720249238 757713457 403524281 849402638 175630824 539146213 564183039 684228742 420210875 427101607 281341739 978584134 40093312 759199831 456014097 633303918 209922255 573719948 2651553 832185654 577189401 731773078 77322268 292080330 497719715 611113896 209301080 827235851 636466510 803026286 221164351 595733851 773604402 793891883 616665275 811722995 301083500 956019403 625810037 996783802 91491117 651462739 256834060 443765883 312975034 861055109 505874367 548997008 645291414 995383176 221610399 482143219 400985071 786222788 623865996 814298191 156829505 288826429 441045480 789960214 530899855 804921930 346992293 685956543 407915723 912151975 98380321 621090236 151513366 844800189 125976466 519220142 118346152 498180139 810563626 876917649 924490987 934146691 370682294 487214326 502043806 505880457 420835511 645229919 465726318 940312797 950183731 964697761 421351147 864491872 180072447 335416132 700365691 775680030 967796693 990497788 112308713 264313289 826137730 958046664 474210268 480633850 68471928 812778874 142914379 539047705 838946561 986387983 294777508 737728655 619837631 642987454 77330679 777015618 132875271 419941196 288312858 626917830 936230204 974581485 612324491 772626543 714085243 733838210 424976600 544141217 412295955 644728966 441581984 967991167 918798289 921673225 594144742 824660803 69739452 433968124 160337862 893047932 507499352 860237582 949709270 999840373 876333746 998118128 83087953 185869908 561957195 935294818 485269077 811116344 246109398 515947511 519709800 606583479 795290226 902855382 707053645 821513631 326875764 371932280 74069803 716937624 135495052 821481742 597672810 876558982 501835916 986401262 491288540 719675071 792258717 860588952 401684174 975877748 713624966 863175011 158068211 240647144 758423271 904099503 74878759 181378833 930274673 983654429 203663264 933322203 766158574 816556279 874699495 906888073 983279518 996914557 476492195 520248213 649622255 694798077 938411100 952299510 790461228 894544302 441725707 978152065 420448300 779266947 76354980 428250035 523132578 832031324 604908312 940620470 825520039 987835969 769267312 799588224 399726278 586342297 870297468 989733277 909363193 989210146 241911038 448987421 484652464 721376789 676581029 842312610 218979831 507184112 43778731 750727697 324224977 966869142 681303188 702025411 721665098 901839877 182115029 808137116 254123298 745499789 606045951 967018203 50353506 392383409 381196428 527388123 170161254 358312884 28567808 927331323 141131796 713630768 680783192 897631413 367692220 627136941 491707653 631957388 45262848 575614533 995560777 997082920 426938435 903378694 200153529 605674849 396662708 526519422 998665418 999665161 346066326 980311650 742891622 781564624 535152638 677189093 788820214 842343357 666597941 781869799 487003081 567296785 166583088 692826009 243533841 960674361 88968286 446532777 615546990 738951284 527559307 979518860 364835061 864016908 805274319 859170048 780135726 911480287 996080035 997838980 516866656 587065047 34564770 803090969 962297545 993617529 913178308 945801726 574667836 888127509 811115388 969525076 325777129 425106438 8130807 307673194 431478014 917199616 129041787 217403670 852314270 925672782 659261758 806765635 457613366 804670653 582982085 643128908 543977228 980143382 187007277 662433562 830266865 851091583 761586346 800991086 805396992 984101492 802588822 979610684 517620176 973337744 666783867 853505793 72239398 255130324 554601433 619378223 446687518 877122953 757317180 778416268 309394475 466287912 496966542 726012755 147144340 323691744 409378678 961664355 440992888 737145064 724273116 899716325 793187966 811378443 188049267 485337854 835082748 916694206 364479946 414405360 370330655 951084739 886095135 983112701 403987220 792749668 804482224 907719573 63639649 157249897 231865573 613354404 8673794 591468694 698769776 980159062 346280930 913078515 498926204 546839267 7335257 65954635 313834210 815533998 261985168 518339909 180357062 276651766 904149159 995411863 556106795 787439631 68107780 84465821 646281647 685116117 237144066 876452613 388237071 896542277 814584444 935762427 90219812 599239001 17553619 527470048 67940447 173507385 733052200 934502401 81832943 154574947 879175745 940098678 293116916 402318857 951514709 962374681 615202896 920912055 542609035 694006445 852534719 980969099 344477787 894557978 558035082 621720631 126992352 219558427 449771774 715980900 37901916 999197707 734870376 783425197 435575717 539687242 439200162 542858482 442815837 554895292 735830106 890192061 302877193 780421145 420046455 936570872 686761211 779384732 863427690 882240461 78732894 959854514 886603767 980679264 766785754 884653817 498434458 741349030 242884525 863763474 185091659 840160195 788972898 904271668 628424029 671209549 600399555 791070288 667091168 941290680 918695160 961779602 309417708 933574284 605964974 972090288 525741200 882248851 541297329 820800329 236548451 292921234 24846386 600964467 205016989 516397875 360211445 403233845 839119775 923761066 142521424 377792911 512813154 995469377 720876691 961074744 992736622 995093746 519701729 859931702 748062945 935396260 993859917 997622809 10635185 432359083 856398484 951371298 278786643 664437310 227628803 447688848 19426465 351680902 486640607 540780386 85014325 819708498 42603088 699835031 732658049 873088273 780671590 931246212 304702391 879263562 728726677 910616974 382917158 617375223 820835666 935806365 413929073 761535115 969211734 975886538 993784698 994401899 861587433 924838813 989061054 995602741 546948145 945166449 81463934 458611769 822692631 946538960 511918793 702793139 108766809 826944774 490156974 876663102 201462868 459494092 802387098 990136847 671652374 691203108 163776123 649064831 118023681 655007723 53870978 112537714 776565076 841184870 299102013 890036123 713192244 967339922 24542270 871354794 691097734 909988007 323824870 331267326 10159113 922099275 593804313 905830649 616783334 765187993 455851149 805123164 325455592 626825962 348927715 652903527 110390314 404963297 151947484 754647339 901922564 985360211 334163573 818114291 856627828 989728456 487111951 676238176 957474973 981706610 75472037 625102117 33278312 538598684 309450126 342854615 928975290 999955703 785841745 955548661 902212496 907548446 28830174 778216270 416028372 635791969 67893155 798029537 392941533 812954906 697850370 774284655 624966536 911485712 131338830 202221098 687298390 961929889 128324248 147959216 984349746 993535129 949138200 986112255 301373488 690947401 834714219 997827610 120706308 669027420 338200587 443973173 817150637 846725071 171747029 950036956 99833597 914923459 84502840 706926738 717343676 802125575 973465028 995788393 17880079 603575940 518957430 938687424 881366997 933161360 403506390 819088966 806826121 817104890 65755522 815072433 847245777 912931891 840363169 880360680 646055913 758843117 96183498 997160575 521737188 856824524 320925064 812479597 361117057 866896519 75995807 736218550 785404354 875612392 605331958 620007621 193088118 648118250 661277593 868903328 559454810 897808108 960127128 993875429 751379483 948157551 435542147 506300802 161775928 460293780 537029037 942685666 519821441 806296963 99893213 939132601 615505832 835732989 407812042 997981815 13731291 607007111 167489692 187879085 488855936 891487696 126008558 452995629 987821599 998272464 253239176 664749701 236422498 441260513 459974797 460914317 946237540 991789800 590266243 914549672 30727732 522400945 101229254 938287485 676679920 924671160 958238739 995282737 586127234 847239531 40335535 813360089 415314746 841570526 745885283 780981017 228418391 866517102 197345025 415652695 152583925 425817868 795155737 935599594 927724603 964718095 164992301 458751823 812059213 844630718 494684761 777426135 349201601 814746661 959976147 992190111 760914806 962455894 970672511 999807356 244146716 587465094 7633882 515299701 219183575 708718910 102908130 411555546 978315429 999488866 139450562 525322191 210739688 659223354 558285335 904349376 591869091 955867594 608316125 874514805 405515454 650798218 755706468 763414671 46742162 332649885 195717879 336629321 10273954 440551725 158467768 284155474 670333961 992460303 595763200 949299741 109686042 405704630 164315876 965643588 908359189 915380362 143912644 638896411 623074467 752834394 373868240 498609982 922545027 936267216 762738518 889581604 65599782 614564040 257036932 909479904 453402029 783400436 228670497 250840707 143083472 220001594 952142018 975237287 911073274 951255719 207272965 584585461 759323066 779339263 348168401 458265335 500731974 692991194 143128224 480179291 124483228 704731982 148548591 288133308 587197530 828982827 815298498 960932754 133359125 737422968 834886044 918333643 466908670 561862007 809150225 972542503 929226371 981083062 297508427 547379672 495152621 724118100 614091527 892012248 902973137 989611290 698953577 828679923 919185596 959110299 489870067 928513198 713440366 838111124 136998993 749619744 515932642 769994252 732680085 857440721 206840260 942973693 581281633 616737202 28066034 575415373 9328877 626034980 445503226 532950634 270671486 778882830 607769555 697461778 173479039 547730839 792550902 927515174 555907675 864748932 835213249 942679032 50040360 534834496 256263946 837826553 547812950 882690153 11058391 169788306 154059376 644238917 922137739 967204172 776541221 988300161 555198107 749886209 186571324 354298251 479527829 741522404 580722617 743145375 870272105 992432066 515514848 969521279 674263896 792270791 197607493 474132180 708545929 792698691 493852723 798625322 196569324 909486774 350873379 457120098 537773109 585115934 228356439 533723268 919508231 940389099 660778971 994992432 285394283 903724053 31947169 83267893 122467038 268649206 484668229 525170718 663110513 931470950 626093509 829575435 401949775 634311790 880481154 961015089 140773847 288480570 707135086 824478755 776134246 822578657 517660918 958285217 730587468 933789231 939861503 982742946 437738763 529780990 858740768 881431152 32435013 452653683 560601324 884808683 52297686 749323611 508797357 580054066 6163243 868083363 465254791 535659282 139706165 992490855 419325159 540377660 708520365 977483271 514866816 690223331 309203999 929955855 7764555 990560656 608530322 844147454 960302576 999185298 631369302 726674284 790377040 885572834 43198902 954739550 477813781 792205672 998355596 999653995 751114941 956296788 128102151 212758634 653302893 701443566 686721154 856638753 464174247 654866617 860829564 946430723 290748159 495681675 913116942 986243651 409212704 756090563 437115156 712511791 15594865 151380334 926739129 933887057 256979860 702624196 240801609 620053044 676491926 727685830 581704960 899098558 727101873 829356671 990239982 999314670 719320056 965431239 794914229 903311649 486031176 894035529 700242049 729535641 898595719 984768195 473817073 873913788 136657107 722431238 893527422 898607677 953651009 978484626 226044141 608134403 109414047 419587768 66095229 504103599 886918731 994084652 573207320 627012756 489397900 775636199 649361558 929915336 919400815 942815490 834909291 914269966 754466990 770827597 893007394 961176798 516289020 775396397 847420197 857491436 91543617 952986363 187004963 601722260 30702897 393713016 851729514 986136015 182711464 648390193 54488577 450225732 1693102 119196178 160320483 424983930 208852201 960268158 957838946 985071374 459385553 902737938 309572908 802556885 408956009 574736716 110261922 837362689 662895929 842362243 593094586 917841791 992853415 993276676 683028888 731781764 589933323 636706662 543078422 957904815 811148034 815700921 181641065 236979632 782844333 900568679 265144663 994552456 173488380 826416804 30090181 162851894 285457452 834584200 882660711 913208647 892689171 988497271 557153879 752171929 224525279 959359164 515162644 993824578 641777720 893417232 563626352 568494411 780000370 911484751 196625195 704938470 497347860 543261010 234399242 536129762 106097401 274729078 238261154 654676683 983544386 994367439 698970957 781279407 35409114 908957533 702781579 874974792 952485183 991941798 41749461 159058507 925473897 953722518 530985053 787803881 604884167 691084498 806153698 979991301 703745648 939919974 913126735 998960399 34131692 494787054 983616141 985874395 976918292 978644735 51026233 269726036 815840059 986141616 157991367 960284168 452090755 697810069 266738550 745511357 599376634 872339594 928127101 992004893 930703621 976287694 626361135 649537059 480965985 681790341 669440962 996913564 416331380 565897320 191758338 790200396 123520853 967204578 336256830 820937950 816718685 870284288 531138110 845358733 782590653 908236539 442211182 445402035 53298719 488460722 512658978 893696307 731577708 969111597 609225499 791849795 881856155 951589933 136845487 906821047 755770389 988327651 998421973 999703361 669966938 685159478 998953985 999351259 563438337 939604395 58364807 67296247 633595373 786635076 557348114 738173102 508038697 745991034 608429302 700094649 608942874 747900077 205080075 620681679 117178621 151580315 675157197 759274173 394858799 433306537 557624098 778916556 319342828 334911398 812243797 850022060 271694708 519262631 388843283 939442575 319897754 870072297 977551491 987829125 685833105 844665115 528881456 839456484 46074202 129370169 938717212 951456994 849534100 910516413 149502507 589307878 813524304 896728237 544135074 994463005 171742809 986862937 493616929 890612773 516349025 538946085 673086600 794311283 425364295 930806299 481175099 939559246 994140087 995603762 74257452 844818539 906392648 977651421 134607524 311683271 947750866 989573672 591268059 689612361 940978314 966463520 199974219 351571973 911639357 934951358 660097750 869052588 786984553 795443970 594353955 778363883 723176591 827871334 545954494 623877873 778986347 860176480 586544558 720922768 745435976 944979646 469565115 780386391 626976924 749081443 19700708 239440338 903960357 928614326 513820326 696155990 782246324 861324739 636343071 802758520 987067118 987777882 196162728 582534470 936500261 957979944 760890388 931278817 862132215 890750400 968164732 988310893 666925721 782764445 928638833 977927270 664472145 835672551 991722057 998217667 246550078 995421315 424507537 691867147 835778737 911195576 820019217 944489883 515889990 847509010 811378990 891215951 686167447 740176611 347729786 503373939 286273026 346842417 883653772 942869792 941381933 952283734 131418756 823837703 862229157 905573202 820240300 864640510 884239830 990210758 255657615 463541955 64512981 205024890 823767465 984168200 178810997 950735249 736596600 894828000 443140023 685397316 260689579 307581622 14840124 441186437 358280375 857119283 843167729 941398765 730136097 959554634 229927715 250506825 913421968 953628483 885474201 910914394 995063032 999924427 39404262 345817609 765009016 774726911 859721809 913663411 805995292 872833356 357399401 509035530 102061545 102076655 39963441 436321889 806389646 973459684 11202355 362231913 532892680 628409520 384822096 517135456 645937508 953758567 400255681 484091398 653390809 838965248 944521686 992685858 246840107 890183495 220987810 852818435 123561315 307973532 178855558 365007668 777423218 866861892 754354088 821712572 72353951 141979080 977157015 990991625 420808748 665410704 598876808 918747208 133256326 689881418 416482194 773676418 856680763 970340747 239557452 948020621 26573285 375924922 657377547 988987097 389165990 932820021 871795611 928872947 121357761 929235914 554742551 633038381 32623368 173542194 363666163 667313227 506461867 918762886 608455506 615304507 456906903 578985931 83065296 690008324 898807228 984278398 966589197 998132347 378777479 883239104 291310693 950849154 508797741 875676364 388786872 400907058 37212797 822809564 380006124 978680257 418953638 705506063 767066027 893572205 109002632 985532271 458197178 550731685 436559001 816322204 954491186 991629398 450081884 905392330 444338426 916794881 791530902 961409777 114795346 941427035 256173768 324647378 137056702 876063484 377791233 700266243 580800793 948705613 159585605 584333103 874003204 894975566 777626501 870191680 35251462 197108872 482429593 502521835 844749447 917922264 445358519 831256452 546587567 881656841 55333922 965612457 654569036 872031347 949971428 968114139 405746719 719512063 750963894 787372162 281791850 895965701 560083569 837303963 320426777 638675683 462506140 994923955 102003709 611067610 613984144 852109712 575332262 816510184 990210215 998088724 90802842 395059061 919761897 946487418 702606349 974384195 227844408 865734181 439980692 633474810 599577625 630637268 915848514 988619425 646255548 657696517 510667572 582688520 647711542 691523235 751881180 787086892 62680770 308091631 77835215 331892540 217992829 337307345 995280948 995410661 549173942 873319291 606515899 946549692 319908101 350593857 958780103 989367954 563128516 795305344 103393977 997950603 739572127 777403123 762663212 924379573 810662791 888485453 615243300 745207037 968283649 980669799 140501549 521266864 751013380 923587616 177709436 586252060 964910892 987132125 898382779 905943889 412782144 420000797 43168169 378598886 364511770 386296634 112617256 242798325 847276508 887766729 791211313 882169889 857292058 938981556 685064115 787958013 546143950 550176233 312824636 521515103 475583922 685116406 32130872 68033548 855504322 936539964 268698799 413918444 991086666 996016655 369398917 383924751 395703880 797727125 183080861 475061113 408327334 997504592 665787209 946798096 439121813 992423896 835599268 962327735 884411788 988220692 69934569 896075600 472246242 917522902 570639197 957055775 233586825 427657123 571566098 940395376 304563429 988550472 569380622 909985695 117565195 861448909 963273629 966976837 412036899 790738235 545413518 968660498 973204126 979608895 323889622 633642817 571595382 600643984 437146346 799112785 962260267 965772359 789918106 834397772 597403725 911681139 858709005 912048494 318151155 733545120 111240083 373520082 282847084 814000797 712308102 970542454 618369360 687897802 692155934 920959630 999560583 999684176 115990345 312828604 617670031 905751701 128619136 355830688 69056074 506596928 323755763 508435165 914749729 962551844 185769657 258625248 337308923 987570585 503542302 532153021 356860590 615577685 64039566 505260104 196630752 715171690 637268399 727936779 506084218 508181157 990093914 991380195 445464793 916429458 644542434 690989065 601267139 912685037 617063064 785193135 543731997 901943698 842887451 862858770 745572152 868954331 311207148 644678776 718264209 850895154 17391852 69484156 685073774 907061393 161824579 166845268 36896173 333144661 353121862 936008959 204275583 257350986 359459745 917067266 955127875 982033813 467331672 602063190 34613455 545801039 688974036 847348868 873090944 891607468 177835098 251653253 505982408 572382531 470510463 598196430 352354596 615072578 771530841 962810067 615588668 676835163 455687803 786023643 822407413 874796480 358695764 555837719 88467896 877279487 294042001 700244101 662720571 986758431 62961255 942514556 166694488 449260870 750591821 763808809 590574572 805836294 444309539 882021050 664992636 736822133 530261520 633125625 625532988 650752889 820274185 992786139 869993251 900589134 193707873 789407338 753429163 998707207 316016485 410519782 394225979 909047963 678761829 688477682 988193592 992507261 280556271 507398431 319857666 364707184 89971126 923912257 29815933 31289550 333760636 831225631 674217518 872098597 674622995 713082739 305640903 614506122 404287912 679115996 31899159 355319890 676422923 723198030 319522946 821718690 701917438 817650017 797609222 860255295 584987489 691905735 378593922 653260111 115764240 626886531 850578734 930140684 466977256 670222286 921329956 995839153 488983530 847748194 234676365 495513596 730176693 770020002 641223175 838866481 141644182 715739324 477116656 931532701 687363516 693726694 114170817 348394817 406594540 613204665 858437881 891135059 45904460 215688665 762219174 870438984 571922013 956149164 436214685 935559631 57630016 648691228 245729611 329557722 821590246 847275656 17665451 468930830 832542076 894704459 930105462 968875787 446350551 610147650 453807445 496348464 327505407 539369018 144005357 404799116 27893572 294575823 375819440 710229705 867751195 928667449 655230571 826936740 435910833 903730125 363987685 533475412 409140796 496493936 553681455 688122928 176515006 359388037 223403521 878669987 743093581 926841941 666910308 841408989 625449599 681052753 749173708 782056195 975512505 981920967 419927137 924323949 699997167 797439560 14591059 969357727 150449359 548114477 295069421 316026131 260425848 700738872 316316161 452535558 470858561 960702897 447279038 758755271 803904960 861671063 40029412 738578296 674325563 755775838 858891517 889658013 955740234 960086680 129774447 781100797 925317367 955082825 966723166 999994145 580767760 697981597 817223345 836129696 873537849 942544638 960441398 981111983 132388666 990989726 951166896 992898895 667774340 801128851 48350552 752818398 642701130 787475169 205658906 282568714 465072392 802283833 518031916 871746363 548181165 887819822 62632409 635829681 431997109 474533744 82404869 438221780 676569902 746519014 192769739 235739323 183736406 426148914 405328217 926274021 70711712 213535905 653283528 665003697 955994723 983551610 824421182 870162629 573489238 758968323 639246535 788570835 233954109 250145287 161632091 311381051 934991834 962048015 890367344 959649374 47143142 660272219 180393152 955017124 251594883 837480822 913755172 947079283 466250314 572641425 632367028 875295756 685025364 913283133 764716422 954521472 358608821 892744506 7736991 521295759 416282020 488293488 872997132 931425035 697094948 884494095 719266401 997233694 103338335 894833525 434555624 838618526 358009546 482607901 125399154 619912444 915450952 964075646 622721566 649227616 475366407 615252658 793236087 878306419 928490409 955734988 569369923 969952099 65789254 659985456 66755488 919740794 894135975 976409192 933235572 996445240 166727704 697478548 452865944 770836606 347622228 689570977 967151733 979734434 102346570 407245090 22083302 809476790 605168023 740094953 477684122 836364806 44829326 137545852 686655090 690675308 803808610 853956042 702278030 863147234 239475384 993707692 764383815 927046144 773190517 840237755 610896133 991319992 462338879 712569232 767956991 940747056 212953586 532635565 292649440 710676033 63688030 841020259 628624758 831226226 632134627 873904677 443524477 577104139 625731275 651114932 369371660 724666230 361416439 431279713 909445008 971792389 574861926 976008580 669084699 726416645 924895846 984642378 596648368 637385694 101462912 320393957 528047133 940111070 266367403 713072117 815452429 917197239 77641331 928718905 223016930 758452736 966475712 989239677 930353594 996287767 338942253 538458023 903030867 911569047 133150620 997068321 582956621 793249738 982593001 987154495 15035852 189825258 777332640 827240751 448282500 508535843 906119997 964220854 238818633 783812516 785288082 879999287 199090236 585484709 207348473 615218413 721248570 790509730 644748968 849510190 799188782 928279721 328825369 707414137 305636229 979224183 224273811 719330325 10324322 804321082 78364963 348544693 804698815 889925399 420633807 463100222 286784892 587695584 438165170 699225379 173260190 451540202 327415228 819562875 997153489 998661167 691255900 852183059 53038779 662838188 907016439 996875940 696152215 919902580 51241226 953421929 853065560 939879463 947629198 995706900 811326799 845951556 792989901 800349074 575600082 686719145 787942010 972370611 171685913 209523836 867706627 933208295 477732683 883023846 902133782 946385570 572092833 733581100 95526351 399501061 99105523 853909684 266147191 608678523 433128659 544090494 256745531 810236329 975188057 987885264 113368668 895573317 287941160 298997728 571468998 770512556 811284111 822370116 500211847 876387332 944615891 956087210 289981066 455186720 7073530 567504963 680271202 901618656 114177233 117892746 606228499 911050408 150698496 365007860 422270559 647160487 758192749 995864199 999372324 999581500 87605519 768198530 765305266 784543963 617665875 657330769 209777505 291044061 694507245 878655148 904305419 991131425 494281312 690644329 909513225 992263268 660405279 999304052 284487602 417938929 221762319 467243699 64909754 939094118 660732224 944183165 536949620 782665239 538903007 653708053 36344460 383616572 559762424 895532655 460055938 467058394 243373789 683859396 711851827 792254012 672911461 874445746 823685167 953444990 71386032 460394266 899311685 929342678 336401187 389018233 857312681 967266289 100188840 822944818 629288533 760320112 629399442 969135399 975661803 983733612 206154596 442948430 132187685 878883139 870499286 900146511 857357548 999914924 267600941 730596040 874700865 897291508 232838211 919318194 652394635 737915263 682742522 948943805 22937712 340415648 145821852 151642661 71676889 639491841 471315930 980539270 741937319 743863939 983548051 985825700 306333929 388113943 866496003 997422393 46029583 123719333 436640922 586051814 94704508 364538405 895607274 949741474 230675249 721859169 650365575 802605464 399709710 798652681 7406249 357676080 194257742 595580337 275379971 366472818 256150009 534477815 277000568 910814710 72381176 259050117 864166457 873374816 380723129 986923275 284177250 452668165 316844188 447770959 905822774 999070872 643521131 924486651 736533664 806914385 136367498 889487797 430553648 727353262 921318322 962642800 994240397 994648017 171489761 381038102 745028678 839530195 297713669 714483633 298609624 336155593 739722504 802702869 38408572 427007768 855150574 916176664 952038109 967878940 68773724 267450743 373859188 912926170 917904074 961172346 392979411 460204510 310081125 635077405 156047142 377808661 683818375 868002675 937448869 946585534 827916594 970236071 952410674 955905243 281884152 444196904 905495059 979758723 764770209 843758179 187928929 219101848 434452021 617018220 904764549 924939052 630935004 740269102 766544028 984526890 680792077 695986407 359729616 492803491 193337840 682830619 675793283 693388846 186174061 558795759 559244430 602975449 439262974 809058507 979552322 988277997 88552774 708118402 874174350 977551678 673951051 838920343 824956385 953527579 229560606 375221878 449777657 476369361 67766235 294783385 182315567 716347483 150166507 766630091 822839742 927283269 931844574 991641255 30152431 325968874 591740632 980930939 663020688 917841957 457423788 738993585 214562532 545134609 670885150 756782755 544834612 754044944 667533607 792358737 708277484 980761486 30435844 85443992 596824562 876266325 189383409 706452615 982057933 983278533 662642554 773684615 817106600 863523330 736515923 787565811 23984824 436420124 373464278 514582250 115293102 406286684 660349233 878527800 976763288 980721681 681634393 979653824 658899653 817357757 511983831 841242627 734391027 778838465 314808075 587173840 927557282 938227388 234839381 780466677 392614452 522033065 684208037 754795844 667407985 960281293 363331104 876627963 454877525 730111672 559836048 642260534 745089258 764490165 85939920 568453498 888371781 995562605 671469356 920250896 305777655 435261567 31446703 240058462 72260382 312718604 526369285 793882756 691972383 909537976 48725821 449106877 602854350 766787322 316284782 349088851 638209785 676814015 328676383 581122249 775377929 822971925 770360065 986093321 726407848 964809195 4909385 325583718 837970934 932543821 457458059 594455348 423591113 686243785 148169926 507783968 425627901 801157481 189848025 742776955 636949808 674654538 219768313 912575650 981347279 983946117 238674934 336718847 163252082 943923931 739356347 982180393 876884240 884593437 599678224 971205438 579914710 954242137 326485980 547253748 9907902 107280024 573054201 760046672 290636040 655530038 440723708 790078399 25185418 706741851 406172492 894319953 549412947 595489820 555635610 611126696 802505834 982835945 496239533 690997446 92945335 852264264 159075493 322366609 80402926 738744523 651792833 747387933 35523646 631763587 914056488 989201307 321784898 878213616 130554726 998859092 375520691 431581954 287290934 713485246 962120631 964850453 925616342 980151558 803147315 971125189 947462654 962310751 96247227 435804623 146614729 676633031 342437013 928017006 142282959 493229982 938052748 984707520 598974344 659643842 623902428 912500998 568950562 872150695 743312274 830833871 602434725 757349744 94555435 930678638 65252525 396727108 247305574 317616788 161124901 487173273 701272321 739417411 150958538 609561318 907098533 931667651 634779574 969215834 678560109 916999888 202293693 207262876 889500803 940836093 660319981 927260964 367943254 970457746 627442316 951459691 572392507 603039936 235491850 558445494 67509679 301395341 369332047 971637525 797249958 809382207 132234242 947198128 536323403 799016135 990602356 996830430 393582317 875761331 402823010 490034426 184045719 433781975 875071660 970058642 707449416 832488489 731673988 782681386 678640154 847671398 167795757 580174159 231113009 880598576 928716318 983927494 87783785 883493582 387652965 891308523 888390893 995097044 263854042 342210633 897490205 922249833 903440401 910467909 420030372 744197044 223032176 904796983 579006 251103874 372345449 822579374 337425660 712618856 49368128 857931048 734049375 854052984 790990297 865789104 295366365 488769857 525109682 672132124 274156911 819524081 418133892 893575974 878992789 888673272 732759786 927437680 106289024 116440992 710042637 806833811 893467858 909219774 819508063 892058004 537776386 869107506 742687602 978506959 821916914 824561634 379602167 581420317 4141968 361750567 811646878 914255320 58119270 975284593 168084481 897535240 628896211 783317563 770388176 874931405 397885710 931223056 714633736 881288553 835613761 848401807 581358204 922547323 737066698 795851151 668463215 771186303 464361709 980368133 968703407 974905754 637550715 875612232 710098681 898776994 545276969 977696839 708362483 722554240 631070945 821009918 614043592 631730283 190731801 540474913 40791248 266886838 537022226 709707789 560368305 917617072 571150911 834780022 37787167 511658151 31938781 623832236 327320422 977652156 146790701 601119524 965911192 981533840 585787570 887036546 993995212 999436432 895797501 903360464 895384679 974818401 695576043 721543379 313692092 634782622 229536708 896603239 344359131 397376393 208113525 502761408 800242573 918763120 452032757 932878309 589387927 936832559 849492692 895366653 436164916 478003713 544157612 934702683 32840417 444124295 656750362 820380688 120246535 473208736 724603094 991872591 28167605 519908374 589316316 977462121 789218123 817744915 990751807 992763771 552627671 830480925 759188769 822378739 592102051 907965862 749916552 973110708 220999153 958890763 806475022 895644463 974081641 997162856 256713303 548494226 6702448 932155411 739775411 938994169 741417665 810675142 115266691 797952939 311318152 673655731 627329632 979867720 387456823 637672482 604946458 800772212 933440960 968586315 607268448 968861721 694682668 921125670 144949402 316047600 72009368 974560062 732129850 864897545 543652695 994116227 842892010 977335574 517851658 742642848 790955553 854510893 159128860 500040949 157620092 444098070 884833033 932735124 649119202 757803039 704937233 800050283 691115027 925628328 765955668 785436134 620470473 808401997 466273178 629320551 139499472 433648240 287024653 536647074 341194499 850925174 720351684 837542614 678009771 853078018 982746697 996413579 897586417 916990263 834883872 967604619 689792885 727760478 536054775 756671017 394557420 576730463 198907511 824097833 601596810 804068785 257496364 922450364 871719388 958878179 855792342 856726876 159933956 377009429 936341230 949947926 466479834 768814073 673261870 954388293 443016430 967836420 173822400 396098436 285805203 498037129 841269807 855024159 604136222 999571222 211189432 664643272 130610296 435848259 616105463 785020214 185125239 219148724 181628891 798924866 476934785 961226866 147468209 307486017 135914615 667443859 578071227 818029393 972186164 990814207 980360841 985685815 473989573 590320092 525263373 885163430 455939385 663952999 583672496 719531362 836625972 941463932 479286201 833177107 58465999 803359028 370068085 967347701 89477215 677267414 122380407 283701904 692498622 911948480 256122343 689388172 142472527 466171283 293085471 601901106 281022365 949280715 563173981 832945250 403843039 482657288 289119022 756719592 324970702 647542585 362699760 510521294 305068225 865423287 873846672 979573136 179498724 354753709 234377234 739084593 495412155 810254487 790194690 902958904 649463770 959358428 26214612 994026496 272416633 372580496 159687275 614111774 519915105 728903619 69344866 966859364 416019763 491862598 487378159 507585806 149273162 697969316 780238411 882580167 581891084 614689571 961739282 972670335 114888419 423443763 367298567 817417629 294618313 369395212 631100962 668382463 431778638 708115023 509770082 629598763 469683345 610673020 488361327 823164603 334163248 487876924 221672460 929135108 463191702 750939975 778572091 883996422 465873612 698003884 228772925 333472399 362970007 444076562 780265872 938210986 974460759 993873042 293966644 857426403 32946637 925664235 496321999 641863870 935717046 953731102 342863756 868472906 773294034 983108297 898713804 918859381 764772171 942869596 771236906 850283170 399347330 598672623 670307005 890151058 89107047 848632046 551859656 835468944 269298801 650551616 347176319 398556048 507091416 808096064 544415225 649624745 813753844 922451287 296568246 921554433 431589851 821350114 679942997 893893620 75889804 174494975 298877490 550952696 561419707 743721299 788756932 945822794 503894499 550085701 572204475 704591616 972024395 985141495 938774215 966443599 888168764 992066441 114474393 995192693 690479393 874559223 901369643 962486763 727025043 779637849 430699220 528582478 283040831 767226719 917657057 944563007 370926950 919058741 510124699 945275731 246330961 367525551 768209606 795462318 493154803 948271805 866925432 901751853 913693654 981091125 969906340 978884456 990976007 995358235 735472742 779823402 584113408 664494842 8577906 785828394 962695111 996365565 649038396 708400548 459536447 923563323 572508881 984042061 503545165 811573693 208972350 948347520 128946521 656400424 827359132 847093473 102630405 823919158 235778302 548602284 228384541 851134251 429350170 515270079 65012009 906467325 255528380 394194207 368935864 431930840 500969977 878497844 114975943 832739855 97494242 549324629 512374459 977930050 624273535 850082173 739019525 824545610 238783959 779219719 984755063 990396125 235802309 303730350 859650857 952511227 249675322 498902872 866529468 912486520 25851052 165471054 136072253 463051506 30534187 998454961 742279588 907349523 712738871 781764015 926854693 937978381 479902171 485481812 375327665 653674764 689609452 691745938 686952799 964782753 471924885 821363580 913360462 949977866 114573610 284894440 216936073 994706824 288771195 817251244 70500552 296581892 113848129 972643312 976110892 995792546 692791409 763349672 34251533 267224271 944356377 980039370 207960577 739729831 549561777 719396010 246428593 609712361 233884632 298641620 216317638 800937829 829588463 926377197 294891664 320654209 377102792 875922396 605703957 734886256 943407713 963210335 396521313 401522190 674177605 966892984 339437373 512639519 786879147 942716139 861510106 869524108 279388332 372518390 898706150 941290889 877001700 972649592 922685078 966984248 612562975 963114494 337054045 881359496 538054794 979667421 748450861 878719609 563942376 575367259 968295578 985630408 657425955 878940518 623018580 722265153 859795733 884654576 589852001 821019503 627200824 649865258 729252713 947833411 99329559 525461459 667014509 846835729 674705166 861665312 305034850 545772710 384157649 776342117 304803866 958208900 431143288 750893186 235291363 325689395 998699144 999347269 340528023 422356269 194704863 551259698 403103573 739015540 55319077 143186402 290459680 403555341 856610803 889980135 842288910 877774699 698168399 933195955 345483885 609217820 967369510 977332633 941628921 964735535 227323156 634869029 896660567 937866481 624794976 932212303 329683110 582584060 461665866 492922254 298633972 887770997 304977768 680102627 9984526 304484187 103258475 530934685 751612909 902921244 967198971 975593645 188610371 422038994 700508203 738736491 329530107 456702819 858942873 957224386 812759396 864026527 824632913 948525883 153259513 584412359 924788690 994813177 159499809 549790913 396513932 761578318 509302941 514746190 981796493 986348017 481943077 931764369 207445612 957038366 55575220 458065487 717403113 738737763 632057822 689520195 967538268 997043022 314478106 693060251 570145393 589959155 19663116 676895300 767190067 791667396 37357010 569033950 965021009 985964044 949770753 977098159 694341505 995511946 996023305 997448648 10489799 708659053 202269385 735296159 294297061 339531489 272480463 371094855 140079707 911498089 966996972 974018657 137815857 731378282 154692564 616380114 720288864 812884484 584075054 751762688 838313591 855025185 306520677 489425775 649133399 960333674 830072196 983915781 219319483 887088534 419565011 669952372 544210867 879627922 347679 391742765 959095499 960245057 156285731 568502292 572367871 825145634 424068186 649832162 778850907 876485451 982871438 989350932 724597946 755126884 566306335 962909211 962733333 969980427 807913920 922574213 490176153 930249216 402067455 471137670 391416808 598606307 504031790 919305060 391873007 752307811 244777483 582854107 8774305 429223962 376531866 682068625 241164497 767686734 774445883 832608548 144855553 494283222 29565742 746962429 367500774 579255183 255425718 895142648 823604462 863415720 411743753 688441691 600836352 791017212 529595212 910902479 845627215 978530607 948354075 965400944 55790098 246158295 8211856 687406325 735722766 957265300 608634006 616689968 506141010 900714605 637690518 645558548 459275470 600190098 755914826 993578052 406446256 823392665 306014791 903813086 110615815 557504840 553233539 937552884 399539393 549895541 466711103 772846840 907299714 913431724 182341052 972626662 773411454 790741443 596076509 868753966 507531270 546799475 386168375 676558112 21452553 271125116 510699562 894862806 844599453 894548797 372118223 377645907 449988297 642394116 624643982 901982686 708865403 779180921 787485790 848518060 797762073 993085437 386927347 509702938 8330921 576537057 553572610 860398920 803194654 861245065 955343700 997699578 422731882 659251558 1091741 4248168 130046351 269414128 301471667 832312839 901941935 917833955 922167556 950604575 528879153 737351726 266640302 590703454 218398210 267448807 123007145 435833435 188392527 680902973 570902522 765385306 150468891 704740919 169405731 622312873 840871450 972175664 525063723 770058506 176129983 185221862 533732385 648553007 641961375 855499496 165522606 657743857 694570583 775492870 276274489 714063805 741276597 957299222 959917265 994711863 157774162 338940236 406255505 928378459 697153595 886412156 124171647 800060977 332657746 575323085 317517417 530976700 907650299 929085257 738700785 951373611 37994948 950470932 321882304 767300615 521899125 591951798 88474724 186307537 144264304 409222409 820660090 895809409 871452818 904686636 13608819 846131645 308483529 358346827 724661840 773264491 922706676 972150554 280719805 895744506 476301204 792818370 966814395 979725091 29150513 444828757 601930479 609007066 597258224 614648502 492825495 839197431 83891570 89741502 573959484 807539633 649838642 746822119 979502035 984918499 982620496 995769959 262296784 681597379 305586348 666812452 418830223 844027977 252487140 725190888 299562399 520669234 605679217 921352910 501570477 709454348 923678447 985431357 219221328 593562605 331121975 486956406 283671729 669312204 29358178 378406074 150877908 330746191 38720452 436583466 362020563 909147924 474557316 614605445 959229282 969352924 30928504 636909587 118697176 723712720 804370354 920852985 441280449 665399875 238391543 996317929 366908117 736080537 785851933 889510732 266932472 364099337 20585702 948677099 797033313 856673054 857191395 887537919 701362273 767364268 139190477 456905061 746904404 786814905 189642594 367970013 94655976 790198842 802358728 904016058 572496026 873715651 920668715 926911840 547139348 883250819 232911694 630183822 393366555 971264800 366110779 798407667 947849018 984841734 829617699 889468800 21591608 797079043 335440607 884149142 944920815 954607686 368207604 400660318 788158930 968517699 925290644 986916128 179002937 555914105 228010860 887225669 359059087 693589952 335457280 421481892 468714784 995747772 682866505 682939929 99153908 633492280 800866682 933623342 38565749 268630436 468489572 747756234 460492616 683587035 464631989 926090380 514922173 808217639 956553136 970254690 164125419 896737201 900656902 937156596 560392659 787695682 190670142 414339775 503958731 711149673 45836402 144256723 268155654 421183875 837070229 996947934 855032493 868436798 951906441 980125967 761507384 926872661 249398215 734045519 775752926 935740925 916623911 956648760 295656790 671843814 884938584 949260101 401517852 819702463 7537753 908484470 258912476 286448050 585969131 647201200 219527724 826349677 95837994 436906721 427313519 934086121 969897943 987238990 790085156 924556324 911623272 943634700 475179519 805730257 343890799 848935756 230202346 383021166 49497840 95047519 716722014 975585813 179633621 966253538 625595247 921191217 31158836 458835178 69832403 318965323 512827942 774807658 396055714 886905359 311727803 542591614 619554634 638508579 765671950 957356819 293869874 909417760 895430769 902036992 951450270 987426816 751979444 951424616 478297958 776519454 564931663 821262198 450380047 655509836 835413024 936345008 957824205 995748531 81065151 534296828 658769195 903112867 357896814 925262764 911767588 943916296 56480230 449994183 134078679 374096511 854266807 916123557 10538379 931140223 569883854 750201808 142117603 576619114 197969809 969681754 449533466 584789570 371159615 888891794 766679402 870205726 496178947 745237938 23632731 235697810 785216942 791283124 888389486 923190030 621647966 915587606 111131254 650663323 186756943 898619380 309408403 330509703 841044848 976520384 667569932 781621533 952832074 994006432 954089194 985242113 167253700 239530794 25029753 807316764 838522168 916075323 215507116 784732077 554607513 726406064 514433972 673049437 966238087 969875382 688734554 693848184 329812980 636644750 264149823 979733596 440596661 857749973 890749915 935615652 897118703 907248592 611508818 908203781 160341963 274076738 939484330 975449473 218343394 444970506 459219973 955501487 368382277 964982432 121548588 154266560 819551739 923621550 334937519 478961310 787933269 937184454 107726955 762819582 375171095 999440741 554776214 737482825 46131263 823723292 278346368 565298700 544715294 887455977 806634131 959888191 966146616 971872418 403968877 442584208 713321895 741738963 21004425 923542779 96208013 358713582 903849250 907209685 532449838 800154261 308843667 649141713 588685918 974313880 401395136 719909593 569223291 729073899 336196597 460157388 911540494 973270744 743180223 951420599 691081151 898185619 811749466 968710095 558829270 868841804 702542705 967041675 500213148 834699972 710517678 904602618 293039650 387268594 672522285 737179335 725712397 983152127 191924880 506306650 52058278 687597502 297919555 803874976 894624358 977986945 208434590 817795704 525916015 912169203 405131947 877007070 521847055 567387856 830537293 867000824 684595815 748717594 488018228 739089168 421447329 699222048 848219047 902509612 467606598 911745311 713698265 941014291 834859644 945575335 266567217 426761330 557450464 972212202 719237268 847490379 325763671 579755289 243094543 255787272 597261493 734024029 178950745 982558962 295332187 810699472 682349770 897711930 738083202 832788145 54396724 656653137 981191929 995960150 705018659 996145121 717610828 828781790 643075118 764823274 256346285 665797938 58825600 609342507 662011127 908455673 551994830 863098273 746458002 851063520 342868893 707940257 771345188 984794088 866877139 949465060 144941944 781628891 112928552 874784392 820396077 940712002 531844545 630847977 836991376 940077550 528793453 615625406 422424208 642982214 344641290 390178533 178444335 944969702 703865387 785977480 566895647 663459780 151560461 648249420 998375668 999465093 477408049 690533254 186387531 607880314 474771491 752448621 433442248 894481728 565414439 978105017 420731136 617627005 819253292 955337504 577942253 866135939 830192168 851761854 699578697 723827398 628646284 669191636 607483956 752246846 255438158 810605439 122786483 292670356 375529098 576618550 574187333 601366033 823273543 902314586 512397390 829753046 883202991 926989611 674351420 779876504 868486117 885110980 692924276 792692919 869770815 933468665 19288915 19506456 354321385 665102333 416086520 658358669 491860198 496372254 487906540 975133421 201618971 382180409 718110861 835103181 177965171 569589545 114270494 495492776 547621810 963234474 328623558 379369550 46234933 553446446 689648687 920972463 556750458 728171470 938137856 962057241 894174975 965894536 658875755 803289929 9823463 738002315 588413020 941932319 981776735 997958723 18301748 698616477 590920380 694289282 177507944 574268412 109711402 699480380 10833051 552062669 984348722 991138820 827704976 881753040 658918900 864527612 785206785 812656038 642593399 724392800 346778957 710506672 194716551 485313277 595920744 983991829 834743417 993707277 600551041 710607581 465483237 697766207 744842884 795262986 101336563 377782167 50791094 991113848 706731304 951941663 840934955 887415103 120253928 138824750 670716958 815855277 147535030 418837722 345838824 984907917 233677181 264313717 408388062 777522884 307318432 512531179 295942140 478386058 306294256 401517139 497669460 701763808 467763955 774577274 366721725 598656863 727562141 913755341 181000144 990083724 523382409 830197886 835954992 841844705 653571856 771312547 342796025 377025556 421273222 546269358 585131300 864291158 702886805 996261639 713322299 988806301 615745226 980022512 348862162 908373618 754318880 805284743 432464684 974340841 998751259 999887602 343086275 371907775 846615776 881140849 870373870 906527115 921200419 933728846 4730625 326892634 533948938 559593963 570963683 723396766 9892273 646895353 238555406 308580051 163438024 331938303 282013421 577638149 85230267 168995023 833714474 893787264 14986199 677470134 538543796 759584724 352384137 981992388 895146817 955819850 348503393 889510047 772741293 924021578 931810026 932383091 995928737 998020143 610200048 760627998 413251850 910282829 16470798 392237054 143161540 183821373 342793214 501953257 369283731 486770174 360994863 896609911 954478458 960098837 999886719 999941121 294546156 990323686 879101575 994963685 166907884 186773527 253457351 665270380 490084860 757075484 943933519 980818564 174258716 807328779 340015552 893539835 146712486 352551558 104088029 636631631 524233843 857555728 614866983 641368612 667462348 759450063 920354999 963679962 348920570 644429025 920099617 940409499 457436681 974628212 442380568 912265713 297053112 674452598 160045592 848352252 204054681 306446545 901728213 970828076 233161412 285241973 304394584 735200053 174332838 964043094 125639872 506421909 159018986 812357406 527808452 925582448 888239870 888495752 54460671 302470817 751937925 761300879 899929554 993959943 863630146 991137967 604254468 746839873 977151266 979062863 214833259 803368179 852664895 998011858 500158900 515756791 632774955 931371193 84815930 379895790 809548708 891728371 198973926 587722429 657437998 672198041 725785631 978675300 66030401 225029563 822146417 872585725 416717397 946527449 866242778 938892778 680305509 800683304 383412388 403387377 856020522 866356329 485681364 833837702 86939283 714151142 49339894 953865251 478396914 733404813 370106760 505443910 629915390 984302318 822268748 899187806 713958476 754008538 3389977 437713954 678338122 787207971 721876830 744622115 801293207 979890286 758504404 898524409 863697703 886683559 123182525 779804354 819385398 865550979 670197930 982762347 597278575 704192975 248791840 429171229 815214090 898011210 71684129 654124042 290037650 973211251 147902717 570951726 448382314 534995727 585477982 784675447 858746594 889374644 500162741 892012767 358600658 651354990 192932306 233253324 834421146 896557676 636455166 733508821 574463796 854547416 112241346 727411660 396778788 447556160 331222558 433579482 221561434 602361760 536529352 640716185 306770037 759859038 825953756 888669470 42236845 63843044 493386474 732306905 806170472 941361904 142946660 486047257 789287939 816567552 945165482 985559103 144581144 827074204 368241603 746523565 212766462 504833352 495804768 820416235 4638350 735570423 998766719 999692508 691536994 780903972 386520820 481933615 932248057 963213415 887128249 894151504 48705308 527861562 233506819 934239350 913470203 939546393 143854950 392869653 623664462 840357725 691322913 860979257 315577449 860876123 260823508 730531069 827204342 920670857 50453563 663869321 567482250 844046035 508716293 957817457 649641925 848249485 298595733 574281763 665699743 990348192 197895032 554701523 265519749 927812921 495896983 739967978 13886378 978056210 20755892 826764973 45874339 720494620 751395651 817158419 272987743 960879869 889863402 964193333 972857853 989993656 464489631 552861376 529089854 804284347 508136734 512377968 744236019 822471345 668724091 979432002 973243797 989262005 358341905 649896109 237002773 281844119 594011050 653540228 89922236 793016589 201625759 295030191 645742329 935244731 445411376 588819902 375881641 762506860 372175495 930246944 361536078 497898251 267011531 746193658 121034966 789894218 69317714 146893337 67995557 891626156 249254678 975869219 504363097 534759179 363407541 941843657 517105963 898974771 5812531 353160624 641323830 904777035 665173930 974627702 796895153 993113736 830299425 999644981 873098104 897420959 445441910 571007077 898911920 975260549 103482358 690624777 950742800 998103780 952500286 963024762 153250607 582173400 576458446 822956481 515143147 834877846 841797147 842854821 13707415 275265904 897137623 907964405 139688559 626301405 249764645 551343208 612708329 716205473 379806516 610762754 839847380 921516611 702795562 838862782 52917264 387890897 856833029 954042511 975735764 989063919 778175750 983123423 815286765 845310074 447222662 737323361 642806552 893513640 318341113 442380156 643125732 906082934 911910509 954701302 301220152 502681194 8794502 516474177 979455116 979488010 49026176 709922661 842611076 921159147 943158478 977901491 568609051 835370812 288809192 545371645 466790530 982009058 117069282 188886331 387373572 770384341 691999715 773179210 126459461 950798726 389066631 942796065 341808517 909484967 70426115 733649310 741220534 963698750 923843668 955345585 829256778 862338334 175794095 945646277 38710657 670634370 282807472 918276086 452851012 707702135 389877270 900841787 431032753 709822471 886986294 957331134 714588476 835425504 701325369 788169619 2298060 403566392 600235115 800947585 439739297 722939602 964762991 980988534 962217977 988787014 372186629 639565281 730760670 881738661 817897617 952627613 847152331 961742493 52156743 829712002 811291049 918981311 650068982 965850289 583332737 665300479 778803573 833433135 807638991 976957034 254873645 385820503 982189431 982457700 83511285 981969134 730283735 982782352 29557418 785025769 201829393 858053747 685224621 771825763 834834480 848881301 460676671 926725906 185369749 741900695 887954513 996624514 94246981 641180475 998241704 999329849 940860623 954555233 967224022 994610227 421606040 563156636 128620012 463717254 863383079 902306059 640929569 770289462 599938355 646590389 897868061 935914601 114160493 733145883 332218635 411773105 480732111 796269832 671682491 946235046 722612503 976801404 924195176 966860978 599253046 767488544 664633582 886614247 897040516 904283911 842739944 974127568 145261943 781199354 67371919 706139831 282190982 453706338 449979372 501087701 972350298 979784170 29090601 152428070 949634516 965512998 123739008 925923518 189352567 360399452 273478184 425056178 639809398 741340654 526649566 725572508 143358584 400662875 122905015 938191108 930204103 994911469 36292997 191649627 798129672 943894652 676661566 697977544 141841163 307823666 488405553 866594749 768288305 779345874 852406313 948586363 856768519 992166466 534944467 782872500 751903057 754965983 212174108 796952779 147159866 962812891 931446749 932176600 662268131 918325489 430231951 663822633 580538180 807666151 277531790 323454401 456255510 979369299 799575703 854526025 843294499 881557725 294419399 473767881 145237086 612225998 315040756 543281057 702283784 995961793 261249797 579642890 167269777 233456581 65129420 895068915 578094539 929699051 221399214 841632572 737581189 927354832 331095031 579463398 318731913 486610218 79627581 749507546 222153013 418168671 673359101 820886222 179873574 650207695 605510923 693326687 650045161 654431845 13976410 874714673 334918549 883076503 276806752 563958587 985274051 993037150 497872874 804806297 25736590 915491107 915509930 966573522 145171368 469022908 106596031 190761561 930776750 931135248 606697464 938241515 526219016 830427005 932582750 992735190 368813846 523514200 862716486 873058562 484963750 619728217 152563057 829786202 93187938 139956848 553944818 996207371 324631392 503061943 278660490 560519234 823996132 987355366 631413297 689140071 636954797 730869374 710559244 899591587 889378725 975063585 451878892 576349937 750522039 912079991 823891827 909837550 743030508 899460688 196634694 916265644 405375323 842013417 621990519 669292723 111977729 951827880 897859414 977669152 354503715 645706985 276586210 599690686 130555646 765540628 481009976 947012042 206185513 788553897 265137110 348013297 353466680 546775514 192706255 233601329 240727310 759346864 170122080 885897435 780256859 977842678 213210929 860812875 2965584 416871867 63015193 309011231 280529990 909682705 667602166 947344801 762140988 961917762 622851222 651269451 725892026 918894944 71853884 249795205 657773358 693635282 528305043 758183773 760385619 918268966 920098523 932586446 815139003 998953387 143715163 441830722 144238192 411919543 566599147 845365659 731681867 974043162 360478833 735469122 483662434 848547823 376250314 549170402 93373662 500887279 657220110 678375121 64828625 813898848 669832712 739808598 304994818 879776896 339331292 955246840 249156045 577754193 797536871 999451247 35958700 467330728 487973985 747160761 550337795 638162182 912598420 945027077 927677726 941973090 345284715 807029074 868304898 985794737 798522235 970352902 903024996 975456080 491683760 672745114 154069308 873614871 935447391 966309522 299967941 754692649 115289782 447161848 972794821 994328920 43969576 524956030 754897150 785598753 259954858 615081400 327362631 492447717 795401908 984165187 387574803 505633346 740373275 953034022 350958813 413700751 631643332 883651347 108031707 477495969 408149074 740956918 410413862 535789730 195542778 408077462 200496816 634323843 18336613 27531012 587389198 921249500 433893815 913448708 162109432 332660442 701539717 777004515 519686852 851395495 746388668 839738130 628033104 892648228 825363770 834882518 98127028 787090090 997673256 999465368 592370272 784872699 434644768 454123593 507857881 886032093 947379564 999899223 3275604 936314913 624628530 738205929 789810079 920909736 955673376 961599785 943416150 946190248 223276328 469282235 666824038 915991817 212190954 895748755 676032284 921338869 530570201 957588719 948305266 982464242 945266387 967748862 280885067 801014548 1811378 394070064 730812835 950075726 336797573 835578244 4255055 554092397 657042816 694663029 133358526 895762963 761562983 983511928 842749321 898388235 285852116 846234377 325725333 999900536 371748874 768308157 962229178 984727901 559764340 738940694 521865612 741979547 309278921 993219740 840594681 949998347 305735388 844618442 436482859 691906512 764433036 941671135 430974002 749218344 475979710 796783180 737568134 741075447 832401345 843753481 983814493 997445593 531144542 683534623 561339860 902055585 93654885 445558877 569201070 730804820 920758408 954326417 576066020 868277344 636713623 753999902 930996186 960008342 308655265 601067084 465328765 723774136 724062286 843888941 272478312 438191819 768493699 802135593 925560163 988004034 642104453 916061699 212275738 965382769 942920989 967036412 256258622 655670800 203532838 998516591 22814017 403619131 390758638 603044087 851117965 854678592 521909264 970205882 197645142 791761231 269263446 373189278 406014501 925146097 604339805 608769292 774818678 929573753 901427514 988218136 546658823 554018218 996505369 998573608 578041446 991138116 681014064 930529322 786474817 918920780 484446210 844519117 345983539 513503632 73229858 764649206 398344120 919737061 195911775 546649884 970547705 977012475 450458726 890667269 479640819 661481333 849255009 897177920 102207158 624871584 524459614 953839796 242867901 697337560 817804198 878358676 829921239 955567949 78071581 890454776 536279144 536746190 182197018 784991631 66638927 234589611 787684981 810320317 549659371 832456382 857879703 948257269 927565211 940803005 461733745 721106257 872682350 914708513 22934626 526822475 886081081 987732997 675564200 834273504 965527745 983104679 361686513 772562870 228769875 736251656 86281226 723117511 395577446 710325530 160658885 457970459 108918407 333558576 838937547 918832668 407109586 949352203 127855116 593719982 259582547 996776160 656372430 704141010 604892399 678211034 36953126 712738103 469683193 507507551 116148641 667058923 609149272 741382212 168746976 590323194 340899131 977351147 847762666 886528587 903102419 907543824 296917853 818818219 114281790 364847600 676781556 676843769 965788055 977016849 556770252 760265541 414474460 421794693 826583114 827684224 249344412 773750303 70369597 446559623 62965957 207670508 68737600 650024233 84858782 118686810 50079517 547735071 60364509 460187810 879675030 931557252 281478787 627577471 672205856 905244141 75071378 905794186 422107140 745645109 142027184 894648765 71471033 975416327 12707844 285544839 331119246 565601173 860250806 931944036 58222595 136813939 257801172 758098874 692796202 752613983 67636478 565578229 224868289 518821592 981100059 989487897 373955477 430697551 366526879 486701565 26822641 313010752 565464772 841562374 355740956 972464760 829060951 853195051 795352781 801739542 547635460 843172536 78672131 985250455 503137879 539826606 491859387 716264977 521718306 873532163 609841437 777847028 429907245 829932232 135154360 308822739 669655981 849075283 40393947 780057757 779084866 803849953 748539596 878021698 46532330 828839868 538025173 568052272 755870971 798499557 493178861 691627432 303945578 378233743 871919972 878818434 996232649 998731728 587714507 984275707 50547125 732970787 840788452 939431682 846742430 929191552 864427693 898194000 30749467 135146744 376162735 684938112 578475386 639488299 253405750 841022349 403725330 699735030 294119703 926467669 912653929 954272733 672979782 722792843 620056257 769939535 395957091 893743852 480351375 665612027 182697300 428405213 212477043 532308424 284439917 838883742 388139754 947357494 262443127 637843005 377720900 778874616 566029366 817854346 308637061 626388836 109712471 461861752 314062531 400906007 81480392 451953626 499641955 884708601 766587077 849989647 283935615 983928140 132613656 490099014 997904860 999378498 103050101 938347629 961190794 962945316 578995640 622333267 16102993 655865718 696794832 964848916 905201618 942277301 946309656 974924890 538107512 786528642 214513115 690602711 496138572 819317238 192363824 496882888 239243370 585172210 203853240 866189902 98273221 979056048 375644338 441990114 934774004 949809709 225695507 756191165 247957275 747851281 844621551 890138027 493023648 499924385 733302890 983697180 457362733 836578495 501643107 665748619 733149561 769430380 782330692 836674324 974530769 979430093 91393500 140278694 16973817 542073487 995786523 997304997 681868360 768149022 633595644 985361490 612163913 811913443 426122459 734679384 569924920 920491187 602393014 814076320 549873825 587445481 962443350 966405947 338072047 981411697 603748461 922964331 667705333 691890029 399480762 827473296 876855181 974862457 609441846 692406375 556443708 880478748 854621101 904248766 55299174 737470721 203977328 517330699 487479896 841320101 612908107 915143042 788915856 813105647 126097180 273628478 422747707 953916664 854460622 863165802 796290979 945299594 610164490 957152742 736261140 953943636 172444019 906148896 397903253 867142612 605888210 990900291 764147841 895379893 896863333 976513892 339295891 388380858 596407648 927678941 771724480 808368646 331699456 444931318 262102113 815697216 290315042 851328322 964875820 980049887 235846639 239667485 876373473 893604146 150956650 771163357 938537143 985228607 698179148 785542322 105555514 249188626 53870890 718995177 306910928 693951232 692200514 745418879 217637978 825616575 434815286 963301006 999663333 999784090 568372431 847549652 570069266 905314348 497637515 591672634 2221465 22999774 993500536 996617850 993266947 998269064 284297723 803957102 62237529 229610093 145968476 894371762 520324260 809675116 663085321 963572160 320401276 673864615 617103471 731733961 601544002 663119201 459734728 788092754 731869462 967565250 824900751 897556841 24794425 988628271 851206741 868291032 291198993 879169640 586136519 664613078 277580793 304104218 553554411 665112465 713552739 809235300 389538302 780424900 469137581 598438625 342273824 374742594 367824950 967391392 426615620 968230268 576018730 867342659 888324544 947024352 945675354 947152457 507740170 999505638 87626039 383305241 95253590 557499730 416632901 632821701 895614968 963233595 983075506 990300271 249584642 876220937 452244195 778634584 462700324 501839833 492427069 911206861 245584987 322460821 814055667 894145841 326357391 702246238 792015724 949366362 312156497 637762633 165727013 966556304 790212497 844724199 763918124 856625589 326777083 868994788 80588596 961594906 588985833 984697305 957845569 965945998 444046844 904055227 96676933 834176573 15692104 67168474 515472429 841526489 210520965 513063304 561800083 786543553 158261007 412578567 530066571 584001957 530045029 799641351 66456479 301014815 330992993 898464109 359037120 692583047 45967998 432346349 723675589 968306863 179672145 400399777 4816886 264650163 95308015 417032855 587437859 792508715 594986945 645979235 497853328 796839755 571905476 703656357 355167452 559559870 564850167 894057099 615650387 970084457 706363061 709323679 145779880 909806123 748503429 896451311 261297719 890820208 768861770 937863243 167198504 506717364 164622200 404974099 832169553 866894362 360190000 797593845 235605958 283559003 153398490 957772566 101153565 384839549 656688247 909891466 494307462 953122568 46992558 200871512 685054874 882966241 918121946 968631681 763577006 922313581 71878040 577553318 734310444 818972719 971920412 975537401 767047578 813380752 23699165 305246485 856461406 958659808 542328113 667917484 739695924 854322301 11085233 911747989 236607269 556689881 903021754 963686899 659584791 713102212 42706336 815925190 338346664 797423453 130114950 167952183 351242202 457004832 701701052 855499826 350099942 373407908 296186144 745518632 329605845 782665156 333341754 997586867 258913630 477701335 317864301 654288322 38760273 266427509 494090669 614517030 20006646 621114118 465546509 851073789 677942383 837299035 953229759 969735852 957499874 992862946 457281663 907677445 325968104 965631702 743895844 885364233 264805294 937046196 645712891 687031643 658797059 906603779 397640213 582571141 352867410 938536627 124351190 650485993 349891920 796253606 182566090 761674806 823254362 833696052 787588927 900240879 477246745 674925672 984644941 992644889 149912310 628945109 806139166 872477472 231689550 596077358 539874965 578948547 311858983 919909903 419070485 561448051 856234847 876377029 924165655 928976987 408661171 506351839 247731361 763244019 435716816 556557873 581915989 632241763 258732603 851197992 316303555 874214184 338445537 824420596 142158232 375401772 896558766 967725609 855480568 903234601 429874607 459791344 177754080 401030884 967592772 992378495 919845377 927352319 399895234 615954883 12527596 94136974 934827180 972269829 158062762 749016126 389641844 648927654 774993220 777010711 380865354 816183438 998891721 999519889 157818343 521157227 389943632 510216884 798598254 934497871 51152580 174143009 98351799 692376096 773539257 924980824 582487171 639764565 692235200 993807725 611801395 664182833 809921235 844209511 637040754 967591665 165896134 297003701 932715365 963873607 204310784 263680961 329486264 845039290 913201118 999620773 285540025 302164001 545029816 700835832 794252708 796718848 452013524 940444023 637303009 709429842 427033550 799198926 278492264 545971440 538789783 942127073 704468931 733857000 540571574 701745329 520110778 737850146 324309934 365620481 188628318 366341875 299812910 544375855 928000264 957615005 769499226 776125448 997622442 999491935 686992332 960378232 331262831 608299587 355470375 464861151 400423844 660228624 53472925 420314698 730983290 847084763 889190817 920373123 433066532 836535440 60056689 360299220 919439306 995264006 140520025 611195067 91270513 679995117 287531131 624821789 951293068 986125205 998949556 999680065 955338026 959106366 981301914 989740582 985664051 998871160 53629864 939472289 763755638 999654292 27839679 107123412 921634162 961453242 177037813 462611577 620516490 737456806 529554044 846943524 877642559 919130712 326142984 600538526 803529100 982411448 781495846 883695717 506084943 760167912 258286299 632118290 736333669 799415899 709761140 866789278 762975614 862843144 939628966 948085999 577430778 595091374 942221216 996205033 321002247 848446910 348181035 949372802 28786639 653713443 658254583 961321145 12580862 634710472 699874614 924683429 932691751 970422496 669500915 770789069 351848301 460187111 48816883 300347592 947974523 968450952 878622675 923870342 758198037 920387521 973400234 981507921 607622105 685306087 638820714 877748386 912592750 923594903 355032531 406027382 157011441 942609676 504740276 907963427 205799882 957833807 592267046 732691742 120243149 370853119 989976827 996750787 617236404 964426209 163400113 938751939 237607594 903789946 241301463 635802341 563517961 856470727 848793925 945317689 592829654 808455242 41290085 103565560 981184775 986348422 712232479 776541516 177692757 321844603 561702291 566773722 613770914 802777460 319110213 480590423 515291465 921742289 448340375 631543426 460180131 885189850 331798911 874198935 830029678 873920821 88797209 659266907 336974 608748603 992113818 999364099 94106354 693085092 355012712 708514244 518402734 899553869 736407513 949223805 549342307 937450757 153206786 616577336 929544440 944283288 367359691 869743493 108575308 677919448 724405946 979487547 920630847 954141174 628529699 833434156 21715022 270829915 333877457 947906132 866280677 930412529 322415086 843262357 109816731 222294760 958039339 960626329 343787206 596391514 82687124 977811504 191917321 743981390 782503109 855174001 225172712 297439885 337813912 424023739 843197377 945031148 148278414 564797053 789773283 801218093 921778895 995098998 162337818 849574176 984519129 999044401 952522509 954752318 902414092 934721964 674677829 872728253 51852891 234047253 986436253 988590371 210273829 575714504 688418286 752985879 19399223 740952813 95497465 867943684 573507105 658243480 691061108 936331805 146100904 192033827 272679135 290719571 830680972 899501508 493513985 858814005 205123072 684241045 265874519 681454197 972499514 995462431 913454675 960435176 503311940 685820993 896998379 988369781 961731062 972481317 916555900 986852920 818584551 902543892 88836539 306411681 495630680 644129979 234328094 460065479 199558109 265661704 920911024 941311783 295275023 584881977 534211153 749581496 647364356 845008236 440002772 564853435 518158642 946789716 156687343 781648587 219946721 279033575 275081522 277534040 900924955 977464705 651452627 846815015 628535885 885263981 183472676 334828698 608049055 820778890 298149357 554506877 788188077 937018974 457258470 965309731 789981465 833797886 762337816 938258607 42024 117933598 472602394 582843277 326863451 680492045 383932852 735954908 40597942 994625150 920941037 987814872 562835759 680181184 62663274 387203847 174343483 196082086 925487233 995668100 310486128 778137965 432472444 828853462 807106219 847702940 357279023 514071269 572661359 811897348 226048173 848781354 641241166 738237521 916656888 946810882 566395070 580317937 401775827 699301835 309419036 447561971 193240954 232216998 902421082 941524984 89553660 186449198 881969669 986004076 890022859 986866096 281470747 678091387 306585706 336174279 408951374 923975388 217054431 879950808 820074962 910110636 823834971 948886170 763935427 988243612 552028778 797504555 248438670 778490718 329908035 857019304 635930547 859982612 887656708 918429395 630622209 932513693 747777969 985003545 266899878 721474802 826274149 911939514 660032131 728166527 678865189 752534501 618401013 769235884 856416350 982452798 165294013 637834556 604660464 679961357 47177198 884312601 1989088 103078881 913284791 951111890 359125416 717106670 56918882 633136745 994159095 997366044 965233754 971822093 859293971 898527109 865681928 906460132 665217331 811686216 727549780 786748769 293213489 736087177 818884851 864311019 941068715 991053025 827179995 994403351 63770809 573928878 706796142 766687959 330663412 475488030 963218719 997642005 3479570 149673232 312239406 540072378 815028890 947793034 499632687 800239670 779411893 893954505 354799384 536635410 934487258 997093563 128690352 357468402 551956654 768464215 397394238 531883404 159187658 684004825 289905963 969610650 453095380 611093712 314960059 483179284 898753534 959496650 729091455 959095118 334693252 808598554 531406659 933515836 463050972 952373112 650021235 787021400 4788734 753189963 145119970 270800674 572798296 765635247 517843225 715203059 821134864 834303477 599541753 874595219 546692646 732168623 140417244 199349540 435871097 961886933 363857059 561227294 289702970 989525037 617442853 803018934 429709401 757857632 99342258 201027626 523639123 621504641 740884061 970306001 853669393 916370809 766178897 937950397 526074572 654242344 710353506 752524277 464563949 784046611 793649290 990303990 739819324 922317193 642307416 903914797 343238454 368079938 275549751 504977634 202679154 544934978 518126720 751504677 408958738 502759515 907745058 973680454 143459185 586420150 650837178 677177448 745280821 940159144 886525725 893266906 270980120 678990729 417271163 594027502 645779146 934699746 910040935 974296680 286794512 638109479 508605479 869361200 911169686 932488751 182346547 550309930 953764645 961191367 894263699 902960296 413935693 787704119 782545703 833103250 877256619 897759691 383766801 533867578 859600112 989517629 801752025 914255054 658693279 806123456 12237692 269185117 574827565 976311820 484929167 562880302 531948841 925778421 867951088 966498278 379291594 729500698 826398241 965692322 796120027 905863627 93454655 123390037 542039150 636400871 441727332 487338571 269680100 452297331 535576619 891067593 225656270 297520583 260082824 792937366 248484706 715035415 964140106 999614759 280616716 556873278 440341428 560024954 554295628 756530271 442399062 811093648 838669440 991928164 193638326 213141504 935776560 965170014 681802303 725567230 480734653 974436140 980845179 989185530 111789346 194637952 529635542 824379925 146187266 919975463 966990931 978087064 358768060 429551487 967328162 972700767 518706657 888130607 216306198 785736489 857652069 952982154 548156248 880177457 606007438 905754743 733442197 794575028 653692269 800829191 645598471 755504821 71597026 278544190 164350430 601583847 3088773 782808706 375113041 744546558 998872208 999492964 928960397 961746475 684995908 685721926 869788418 992756708 243908645 860129441 778584337 920786476 49689303 146453287 655241059 686536615 899810657 916758445 189495141 197577999 512150473 898333212 99151225 874475937 559612149 980049465 82239702 685595843 683502763 733807419 478217123 698073704 479367174 729579922 463368728 628949874 258290396 862905337 817546650 989556610 676165635 910111304 373791336 434801661 385710105 839738503 731439859 810357646 138710132 921671011 377145619 636796155 713796786 738914584 273791046 419090761 590491598 769449886 338942193 955948400 840821360 860511258 1988293 914493872 617055698 700333197 595095884 858890481 237201854 544236116 803434916 893849602 348778585 758325538 939751944 945024627 249182106 434321386 410984187 880834537 88154853 710861237 357301135 676131349 209921638 728889186 823644720 958466798 269132025 786081231 26560674 337617162 186748103 340029005 996783869 997646210 360520604 939424258 628810162 704062987 589266817 742645360 6203687 882550791 88558579 472021613 313682235 458282113 476064551 652950631 118500393 237422216 293994946 415572526 476327000 610183169 919172832 934498914 620528987 847770181 24977349 211636023 165702976 789582103 751331024 792695947 27044094 426613341 413109832 899632271 776947644 938254941 704050098 973203363 694587316 927577449 863777959 937992577 244299509 380213274 438377441 951719350 97592683 564196516 136099184 325650922 72889166 390865048 472082033 791616677 453557094 504792020 190775504 522443586 723418844 923859257 90173926 490880031 821197199 968367743 264611098 301211186 16727004 373726699 234004698 432644091 578396934 995263651 227848482 438116729 845992955 974448396 281977310 317462254 664265060 970246100 67278024 473111255 485817183 518466051 861010056 863824366 284085748 576449250 517607366 541416871 916474197 976304289 468961223 791050152 905203348 995008604 539886522 804162330 762598909 909261662 192319073 325406236 189878273 289030331 937827809 971475190 58036746 706049204 54873690 819554810 357366919 524299496 786858225 848563656 375146613 828426421 986053503 994401895 743975462 888363243 972285356 983335510 196025905 977174067 774801802 951367442 934632865 939172663 948243891 960482892 405059577 715603509 679999894 921701382 301341636 440925110 182746830 217490852 914580310 966207442 511357538 945984116 374594539 996076966 20469444 71297950 937871923 996200189 841916332 869948424 697386546 784420755 928122080 946049296 413173190 970991140 240456780 779097911 847153433 929611444 256674450 476221443 310231877 623458345 721870547 725123066 817266381 965282551 155346531 953178964 583727106 772316574 516741634 989761958 609069243 807578081 435070560 943825313 22162949 672909680 170038121 859843207 188155856 351512660 480690290 616509103 840605671 932310101 257503988 559816772 651412152 987849218 884029206 990679971 914523479 935518725 799953114 963766730 902649813 923322474 203769851 762354357 737503262 983828851 904668792 915234014 890366009 992407587 79958292 588195823 851184249 872425672 322128911 610936284 530798217 567106865 121805141 241295616 249981118 539184921 442555281 629140651 65851488 193697460 416302364 642232938 968235504 973928892 231639891 488855028 294767053 968193417 122805909 144157358 297085286 299003941 885244859 930089137 1649208 201447135 234693860 277880040 25598036 583672416 659423480 793700284 242211218 343133368 704405879 982945383 402700663 944199342 530573232 706978694 269615164 690075891 524027931 714026744 435078962 764558019 926950499 944591324 375600998 705826046 650504096 903102104 322277937 449972084 61048542 716811973 405029644 452436130 639012348 978934342 847173312 875476888 156219652 773066783 304393278 966483028 28752189 655096642 939724016 994347760 129017653 470365048 820289485 889352154 624744416 770924284 810478627 869835459 107729418 758880897 748744165 972946482 221667192 485349293 746480507 916985393 282671323 983743366 997854086 999453964 59075603 967636205 834584628 899715771 398711936 411191822 550928499 882416570 504582669 886044651 791055168 963037393 905373628 984458605 683208378 694712024 523319005 981921300 166349022 212805214 444244638 489355518 913954420 936853518 191405506 507407524 566112253 786989243 855271215 922492192 635735822 668503526 316916375 990709147 415522366 718328284 798764680 849178507 603909635 735332691 114347389 818273983 727643683 910332964 636606158 904174918 349743806 765885980 273374298 534550725 789091011 904873635 376824600 487240387 191725013 894010035 20135097 146151311 367661835 843758631 760133043 830236190 309054561 534391401 322279799 790356355 40095131 176931871 298431210 646612300 818901433 886323465 787315584 911954303 126465763 677797671 247521602 547133138 214097 146783829 179632965 950140316 897423442 914895535 197286790 199145661 723717445 737072320 409260474 429350418 674075172 921484037 791685457 810907507 665733247 979400007 794067352 892816461 183167890 445186874 611715613 946917691 237711270 706079165 419853585 793663410 235989883 291989422 52587706 294141642 48334253 838751112 21162188 868141195 834824970 940397477 227738296 443724567 741342341 927686989 603687696 654606455 249797438 377611559 149086899 516472388 142080588 448829208 867308381 906033674 842527444 908272077 713326636 757677268 457610158 716165673 878857795 958366301 708418565 712202515 877264780 946522187 747781575 980550963 126539742 268883439 129348378 158702829 618260142 749757820 118000632 523057428 636670369 827964419 174675331 215132467 634613850 659385994 178406280 600911486 383089498 577413541 153954020 474468622 793744132 833785638 360126671 695360610 249327231 937374156 119069451 370425282 7681587 372720546 391516345 506760764 742392318 966222450 604281792 767229230 435648500 494631272 682698366 822813254 200285946 300736091 474996877 904258436 356399973 837321382 744591965 892507774 181400204 769075733 138860382 331546336 606792042 661979175 992846380 996195955 257816319 703525702 518538356 920832307 740069498 927322231 592566569 723597354 469212398 667144049 975853904 994835234 610524285 924110360 74105270 278183898 59465830 856824497 425863364 477518171 822684519 840102087 769469369 898322998 459852807 769345692 495764042 786159222 505572497 550202238 844860600 956372700 185110925 950886699 494207616 818815911 236146983 241039516 162841517 548777533 376746898 896525724 434268281 828577712 308961989 828149640 748663138 832154379 695049634 769094076 295537058 463737954 531276552 750414182 867475645 963088093 109950373 250810406 845750673 926709940 608048950 743431099 236484006 399994402 411766314 996945927 409452777 533450377 801717613 893703342 598979620 747579619 408165786 438964389 513716436 992890449 123654111 612745409 690642076 721318458 445482736 740412005 20136347 693791171 88887975 961124779 314087917 969042016 989247016 999843002 227984308 600787517 601103797 822935607 543187521 583753058 45150843 482760842 610964464 958190876 836313696 960708524 857427574 986789956 876322575 925402712 711856211 843217556 717862046 988108986 232175742 899749285 284497146 751312962 14225586 201344025 198219043 213626045 453829909 767580862 422841350 613128876 520544248 742331342 248826414 828040387 700009887 734058863 938088294 982601589 692281556 799655093 680702149 911067035 719400526 813901616 951309786 983680541 116294083 238303001 849969130 890474845 558355843 671883253 655673688 852052968 607905027 946091985 334497277 795820659 740177679 807156002 6833017 622656902 379669142 676259736 528055940 719295957 625255612 738107249 542455524 572922236 126879999 282671580 201307906 910572160 51033664 812136955 379497469 495663167 883137551 939939328 184580777 586347424 935486432 996575867 807581650 827929502 996281882 997403152 970736538 979448880 489851243 780224076 615663725 670684249 696975351 868493920 470754295 574079777 431872767 719856764 777023593 988893060 764489517 957212611 635878469 917053753 589557068 694579817 658235705 678140803 841148743 922349585 228291578 309527736 760582659 775243548 845985297 952353448 45126349 109004033 948959244 967137366 62242526 406854142 948036283 988941739 259749265 432726242 254022357 781189937 873394256 926522733 948509970 952302876 553701544 612989377 323783552 821607013 163885322 760710297 527720189 862877466 384798999 505673907 661882885 767507959 320925029 386400565 396316098 433644058 900758285 982607961 885725448 952524949 647585718 739307146 843859880 942792655 7803197 531766152 132479696 602472705 549933438 706599997 63249810 850159020 683314285 947836612 549170001 870449347 483509636 665964507 699779306 944655736 123706081 921659447 441375505 616372064 710816316 799886741 463522525 933780967 62494837 611810445 424772014 704830106 188275504 908291472 188682055 314586049 149302533 581710314 754829978 755679097 16570044 577734902 817065369 885827878 782913989 806019491 441982050 673051177 994759077 995595017 893574565 903005905 958656610 976066615 990388440 996558070 986095786 989885090 329376706 374919656 956389428 981828574 624190150 660979286 78003782 106383647 848274133 926863629 846484234 901332853 681954698 925383178 887115737 950577756 406449641 993191043 558934713 680076949 966297098 973446139 172882391 694316758 266313 304192096 775154475 886726765 590846755 962610239 312294981 462053316 464453163 746446281 816677649 860992696 306700237 742426176 639448604 804204007 347467637 364512525 60166325 77038050 315516368 531819870 263102137 565012574 430052066 964797909 607652106 753719163 569276477 580001095 641593677 873346203 253860657 759396372 681458439 801180595 667620456 757113141 644022008 868494665 325061038 522614024 28786095 244834499 804073881 861674500 264152818 559485571 593268997 683665589 140231855 767544840 964070001 974593563 7236626 674224482 849736950 948735551 219215505 477906111 538629909 773176303 95825762 693746810 505200691 683105289 500596176 667442089 782528962 957070029 8001868 765065902 951646218 992226718 859694475 959549186 867042790 905990725 328113785 783727420 421589589 583707654 802439891 855503663 305425661 388300969 904057607 972729462 294844504 355981092 459035334 898011567 743225073 879920933 723887894 873052895 903010765 970759334 511465164 865199760 590021352 818432443 423996646 874740443 749138679 956193639 144106419 516976938 525361845 782193955 488853995 495926427 708581675 839810997 242337552 713377726 105669263 660233008 924199591 973676139 627135130 986659913 229156376 312406384 721471897 767760385 661017759 844501644 474104829 754849333 673785297 734912527 485414678 696125631 958009713 996218970 83192144 104311818 406172779 714662139 49187165 746739147 390492118 984759352 173504583 838918839 69656914 143735182 246631870 505981783 367650617 391364129 519999002 655652171 398973953 402916744 282541706 766943149 365782092 641376097 404679394 651847168 229385418 941239682 878713084 972207704 709165713 903886987 357156056 917462250 587167616 847254414 694895508 753726679 499898793 882443023 398912166 824034072 59892121 181826454 947984354 952091083 722477106 776956154 949921358 986517787 988751623 993193199 750205663 973150814 866944924 881636521 723800839 734667426 925062186 972959292 906358680 978235536 815215993 819008890 197663153 576799608 613328141 891838876 630949773 838795304 841574236 957426553 983011605 987527494 452070609 812101015 504266130 800328207 914578204 932720133 235671203 385145953 500598316 680569905 945912669 952054615 683707192 907334211 315787396 636493125 423265625 834560801 152216589 946713721 337797448 860301251 580630505 888118071 148156647 175392688 430227565 938380285 787341498 809114543 438220243 788827730 482525399 974318686 877663968 901620498 148000959 713061059 260249071 267488789 816002722 839003012 934707703 954314018 125942927 717361134 80060102 476466402 599463472 878232762 955259921 974263841 474567837 680784727 60877193 571493813 873350338 957731866 667117423 689165147 824663721 900969949 54336261 972787707 243863931 547084498 390473172 714028057 229379527 800733706 995503626 999283897 238232786 597212260 302924942 703053569 796885492 848547387 150916935 565143459 762748047 936401393 124069865 257319468 730746788 933600438 453777939 968084140 123674233 891750913 303592926 686178855 8497932 38125192 436784229 937024687 774522121 937938981 13408214 63698713 288034549 423261013 245337219 294842171 290148147 440104308 561280532 583752216 373584165 623517639 53123830 197024116 213368993 957757329 960574415 983744916 866695281 869082809 979992006 981228874 548669559 721705160 203322842 827728377 281906933 445080465 106790064 336300949 742591633 882876314 999667992 999683490 132215357 277890921 626229635 822711985 709742329 957915712 596860972 884153813 323421164 527094394 56818169 512626804 33094284 246753135 464496655 952130423 963933302 999680642 151015541 697995806 69245486 883391483 549863199 625358126 219611087 733446405 449421322 861326910 95055123 458469619 388913384 901228324 168554195 294478307 67769323 398636813 289025910 804730058 890027475 903025278 913088130 947376214 771810209 869273029 247720419 835040149 697733216 869126083 51729132 784001183 981330185 989781323 471476379 832675050 806522897 981237009 745087212 760422590 254399649 344877332 649213918 697174852 146314225 622502450 715940619 973630096 955535578 982919107 361768636 422274005 384873130 825067393 372815896 857425290 374314123 597103288 169768983 261157183 313268137 548649909 37535924 161864387 362111552 555827389 113722466 220107248 366195439 638972953 173022716 469864578 719499275 973729225 963551842 997664035 70080247 622975172 620337024 662154999 398412813 760108996 100999036 131205414 360915088 848426076 270596410 634204211 220581159 526746615 722552684 800907609 668261677 993491912 668042597 989344713 561486321 861835209 893805506 919631414 967299167 984119401 388141012 659607013 425314137 790363846 741598732 992880264 753027197 921890559 909870481 951144568 440998111 903199261 663556717 736135084 934689343 967431796 960106228 973113007 644894250 686687209 869485037 978774994 686554545 742186012 312324157 785119289 822857291 989696668 533440758 956384890 144076382 973319819 913242829 996790495 723890853 797388955 499902995 757969739 807184363 863293421 289843390 904376426 539685173 939060811 383677870 885787800 65450619 899925654 601596491 924738549 635454628 920800260 384879843 704070328 612746610 865467198 185313192 811796475 432003702 877709940 995861527 998101732 429056590 509213039 10163846 446869116 846238770 983961791 763176023 914799400 236110367 710050633 851840891 913267364 747834659 882660972 437254651 684751650 931466736 950168809 504648605 672054584 578855949 961099733 584520490 805274091 651476202 884934840 925969371 954451940 613411055 896330484 816438667 818866640 334767026 868880867 264916058 887879926 432215689 936516658 310269130 700949390 670652675 982317954 59658959 516215193 723423790 966571663 410580013 468259536 778528282 959626865 407560204 650642153 41047408 868359622 52967873 425953800 414383451 878413897 460779441 751683943 291349893 749121738 825678649 847522736 508345147 913637851 896810271 991844514 632280077 974660358 297960993 513972600 923696691 994418637 323445819 555373661 871128005 913756150 974297459 999993919 146967565 696177406 445494254 601117573 279633552 359136027 909592293 913427077 185454297 237513912 752188841 825349869 941666230 951384633 30839479 193373110 817854241 820098931 394944662 798944697 853114938 866666306 761282696 861013221 834991941 902019312 456360236 795183493 653663195 950206550 235502832 672551660 929041333 963944337 259528827 293622071 637686946 703292670 182253183 449622632 672607735 847953816 712173587 964049575 200379178 760372240 279357595 508717135 783401681 876726947 677202611 990038343 694785301 951955868 877870078 931888872 86915195 547729106 509008782 807890225 640291225 837188395 261168224 769077269 947077250 991309521 126671934 450215378 670434960 684124998 802299197 952694102 924790761 937125156 607225941 610388573 508980992 984432417 651741026 782717858 175070387 766960404 618255366 689697294 957698414 983654086 844568002 899021607 818304907 823688656 426242625 519216300 691632581 799013431 35818972 256316392 594006128 748325778 430821959 677167895 748506735 946523144 164551431 999896483 608682543 703305337 251674646 930968096 305267883 874721813 806119945 991814331 544606846 937909180 548278963 823343748 169280801 575004462 752660206 876235878 852192422 928625696 731451156 978004325 236897119 381136466 303126329 816567100 950633127 985309708 129992650 215544832 207274923 650235955 823738351 958851957 318006411 978685068 602759819 729466880 369475372 519415009 634247068 801621971 168501126 212799086 816036779 950055748 185977723 693827045 147145327 480588109 810531341 917890262 459502826 691455699 950040551 969754270 243838571 491396718 660947043 907569579 725204331 842048521 468957636 705088770 118872417 436920848 300569804 758298628 963078571 973262010 573553126 913965176 575703224 894101358 670792343 754210381 753354450 972874635 303991691 634410903 97507185 745880696 523851749 784485724 455715713 977163670 925453575 963172237 741534235 810301724 109956889 214448299 295333924 325866683 81055424 341642336 213120984 665498263 873154975 911733003 718011597 843760929 218598235 243976938 26422168 863949368 918133073 979243792 342324564 477116958 758423296 836591628 589312295 874235380 120727809 277126415 359960986 627072190 394429279 736250872 7362226 798061623 68162137 728375633 752897399 997891468 523647315 868146629 600909371 886895911 358261518 539614552 534419327 952928543 2182086 652304763 139229357 728551568 533271272 685716773 633892000 801299352 259440665 614665520 463796153 465506247 178334491 480760852 473820569 796330279 351522686 771416975 386828116 941598974 310200224 969984538 137880982 550741484 628385495 722833954 639228025 885552953 685405079 870777051 910271211 954391521 789759693 942037364 671820050 989747943 291616961 533963849 613794371 851904756 62242164 547580452 21998196 928326749 240455635 685490804 927444270 962607976 458508459 662475772 291085068 578112159 353270962 581346937 103302652 851965806 619495745 791163315 670332205 772859145 933207472 975632627 773869846 853197085 678766006 967658399 8402087 965974135 971543023 998060122 881656881 881713382 567449470 596896903 423242030 518697156 722595365 855059969 366293389 625388400 682573190 723672300 128831972 969384771 351609141 838395144 216092082 582511304 151819914 345766748 690333594 897640208 173636766 823943747 470920140 646735025 662641674 711047254 428945855 544647507 94162459 620203649 665195366 673686246 905381854 981461837 762713034 835161290 844361952 972387757 850275692 962931603 443618729 580266462 623003517 870954111 322174968 830189344 115191112 828451135 81718283 267183023 71403039 248034425 148579274 472780789 207008807 843006580 686379094 858476795 497425147 661450505 434376432 579655949 599941668 725403083 592003590 627507795 623331224 729535106 141301166 726189980 430521884 482943887 243151242 643722540 323769761 578514177 849065230 979809811 868198614 883200764 788067259 911014649 26051323 296004036 31600143 733118732 807489690 811442039 720154895 804434876 753515071 992788855 682855355 795217419 996958042 997936906 420128581 786157621 157906521 891233997 892487372 996222797 912307240 961123124 356056233 970115102 43896831 998989625 800295528 908206396 520438801 604582735 70229368 355774594 466159027 641620815 171512400 494148375 712362978 911870337 133075671 995300561 998067842 998556081 127077097 284194255 844870026 944069727 124177206 986973373 774676368 814125373 760283194 831131748 503497525 610077327 63118595 537025885 200589116 758177990 447212143 826366109 558044532 802617269 866400546 991204045 608040946 970157990 743489800 906514854 453748226 883742805 373032608 421721874 910949542 996957319 818769941 836704056 884229715 911432239 113510170 695678461 262973139 390054369 319504464 735912086 409408757 717011850 769525079 883883182 35358294 551002705 696084759 876862916 566094266 877473800 347535636 849945448 144795171 866623002 192389879 588181599 355601627 369513466 525021132 762360263 568825068 982961946 25908413 26388345 184872230 666005313 144965995 154448240 42890224 51925699 802793595 923611870 742758048 812225335 698613299 769170855 189339746 834215342 907174562 988913762 465153501 635304671 998062236 998643623 987564987 998329517 996037950 996911212 311556943 521603705 762063314 990423923 57170554 479029553 756350277 824333063 610453319 801227058 771369046 821412656 450805924 889542688 265408196 523910649 784398841 932263842 722011145 898861354 966738739 990308349 691703575 999919255 957556286 997314085 741461374 851873591 216587761 692359035 145467624 203464379 670453839 932870054 444004373 780264970 305292210 309223239 93822409 878883028 819187431 901740127 59381965 526057021 972910963 976831473 896139839 939612940 235176300 602058991 512189565 838591296 278292089 846514560 761388408 956642587 314589314 485139886 795791655 834858451 475082655 939679487 918455246 999924339 825716330 988914721 710531540 942251851 617806139 770360570 921645307 924718660 437950606 753982290 438646525 616850335 689358369 783428891 88044890 847213540 404808121 838723833 713393970 998069473 908909863 997387177 944174258 999646022 630552314 799473080 225092570 352324637 592183449 862234730 599372641 992165074 143888927 581377636 835065379 838015613 422327112 896236910 33468483 897507925 303851676 840602166 218445295 442108521 545120238 804039831 587981626 644660727 89773715 993279443 513803664 899494558 598997879 690825770 555850958 734549816 934132158 958897902 253120747 851861326 457801108 672079021 467778127 718835190 450048514 992704970 105309312 872618144 505169702 549321486 818224237 966681039 980074171 983889414 225910460 751284275 293623572 499023759 204739406 806755857 477583060 646453190 858889021 975778564 452608616 489972852 308387239 452890543 877717645 906330867 855469746 890105287 415820965 436292567 285098283 779352785 575393372 797422120 852867647 886816654 175061717 447103689 69110858 866684154 630403709 735266877 843761691 920656567 552189100 741211004 681468917 847215295 211081600 791593651 415023614 961497521 458414292 566693844 491769983 822419144 427656801 676897008 238701570 240456521 50879742 643841518 950727963 968168486 784482790 884548832 523477839 945403037 191909762 947941827 691288724 925002876 65638672 435586502 568901669 598759252 549808490 693749393 735282864 821325464 304811238 423433815 792085945 896452490 840385333 992089665 902086522 981933410 334423320 465006469 495131207 742899064 379083382 590045406 453913545 995026945 819100844 953812180 525740584 866330862 84458695 127542472 471178545 967170305 812313511 866824348 566663456 665551780 687381157 868318301 814172765 934678890 506799257 760138940 677244350 703272211 56708849 731461625 962524281 990611968 511626140 601498312 380009778 988929536 485727120 658855104 789924319 979375019 184667953 444102489 145120865 352744046 634800326 649424368 302623675 875817951 33947603 592876340 861020324 964311414 156787458 983009078 150672712 254410051 592328874 788566380 460779554 811166252 745212911 868204783 763028300 783316425 866680219 923848042 673845962 904226848 123432749 293824460 814771956 961048211 53194258 624239977 735645439 903378845 184652960 185522253 715518891 804592946 45579606 559666028 794384527 842583390 496324449 715396490 499553231 675359038 718518431 964019797 992737816 994655391 854375738 858911778 252175243 981473425 767408277 938147327 20461011 505897398 860441357 891952196 114852562 938629763 876380609 887895916 17696811 625774787 73069794 614488883 879474131 904106879 129317050 618549966 684150705 691304983 278591325 750333806 553711497 762527010 536461961 546951736 786796305 846193254 771054576 846540841 839509773 910512845 170476404 532077415 655240095 664826824 111310299 431678779 582977583 958421622 320720143 890723898 899481335 934511890 478344260 630796099 330018266 791824901 729793750 779469733 436950747 746900788 698577945 709657499 14166582 782018824 438397391 996572709 488909488 929161924 514590136 551303278 968036970 981831914 979471354 991159381 179258058 761020423 784978118 968926684 364977888 539055930 689392990 859134734 276619170 859034661 1719475 909531469 786112169 848767697 370925614 412694509 621157951 663233318 532985378 797613542 556066129 681316687 897665249 964024039 301240742 762166828 343346429 665927844 178258594 840305669 329600560 816989057 488516632 769773454 924348806 975690855 157230845 602688493 888561141 995135639 191833853 918571165 81073572 949382461 261171805 367750432 31239112 75966826 542153160 995131065 758499839 936648179 240217507 393096794 271095747 381690100 348994232 543981808 495202485 550071367 807767634 832236115 419111109 604120872 795811424 867466472 154691234 622322714 413748342 537039778 244581768 809594031 580741966 778877439 55784673 987514196 76150389 543869747 817220376 866451567 550606355 839681135 387571455 839929785 809046960 925884448 981205047 987704591 592631527 653019200 189758527 952440041 831490161 950317068 120864211 703774869 159681321 263929220 144695583 799576418 825996796 963419677 354092079 857322006 148220469 689502417 481037222 826157685 691504392 705385527 862458178 875201864 920448737 967527190 66564382 312945343 939682092 946133635 515838608 757014263 255971459 609525064 505621424 925203540 9605618 584194870 30554482 94597616 393615780 815781117 718949471 998549563 389215561 569843872 392087933 741760840 204462856 678702129 920041278 955580081 771264767 794224245 253561051 431223788 2008082 929880663 434155589 727254070 880041348 981554064 442277548 721984584 260525922 488791323 344762681 992295722 542826990 700702795 878002218 938353155 267717675 356869960 918633549 999102021 147172347 309931113 928166593 957397075 356556827 449429296 851973107 890042341 488766461 572201796 466642267 835502742 486415396 736212837 302978521 336003101 63899533 600072345 859057485 935818410 93238406 341433670 953641606 970103108 801819909 958917934 363017281 634649156 501315717 786320800 576402923 890525368 150610732 354772291 791871444 877876145 72920769 164103379 304326937 919369048 971998278 973051950 994713088 998048911 838378007 865022504 546928979 656338257 668303203 817736539 178868470 785440532 788421129 859453148 185139155 614970877 45345167 176452271 207248382 434948103 535170930 974978288 876419850 937775668 206862857 670956408 314421869 655651862 606414433 975760014 977096449 991272520 751947053 873500346 220347757 399931316 573029340 799118415 262026143 644004335 201830995 707124311 957024620 958222866 574698036 834935722 980464105 991304780 852041594 906065856 957968708 977252082 488197566 527788662 149381820 622141351 778562500 893841262 858911580 985017873 721592045 935117201 386653099 683528524 56566476 499717001 353884429 966837700 84494425 862667528 463583288 966354990 413420171 678687892 681790153 961449289 190988648 533768983 552381654 770392883 69180774 287347263 749669973 790060156 401989168 580161811 23401377 233674404 310838053 807170307 13586716 908761041 911504839 927036688 463699137 762299583 545014105 629002505 129890498 832143393 978223570 983908993 301773736 730564553 893086973 977720185 271670502 450756004 291015987 854880303 784962333 803991692 391790326 976629893 43665108 246809517 298943730 558619741 979057014 994189763 765777933 785835106 399928819 499425095 794204742 819571660 184864641 540066669 724854658 805131482 118224496 992956853 520039916 833808793 539252903 861120211 409926635 910504023 580500553 769703179 951806402 963391638 831705498 893799027 363774037 655263017 194818575 232981045 184894950 809155970 129065558 677733090 993093781 996883835 372469114 981825405 125599306 517459618 105986425 428742314 764596476 798746312 42955796 537422318 661659907 710173632 489635435 835837077 379501843 440198892 557731515 802716438 699383829 911636509 319082243 503654971 299536267 926049024 260840809 302852385 428281437 479040536 793136964 859757414 747438706 956490101 806623948 907326610 376367764 552098229 931679012 986608819 62267417 506188179 139131931 800844432 923245976 944365993 163010776 531587136 101093676 644789994 839470492 906799087 330965356 599333851 545279176 569657328 227541083 390999642 827847767 978950818 862174952 871685511 941400342 952549839 970705218 986721690 355539542 371104932 859441208 869958749 550091206 894646056 855976124 932978416 298046250 950477513 585680677 631358709 878192684 952323826 286323530 775939859 934667603 999308606 903640546 909505683 659470916 816924476 815603718 954694101 821030298 856156084 371423893 713602838 627238650 678006598 658166051 785529386 384641160 787261022 669717237 724518306 557718121 686561599 888976793 940723624 186813282 403971862 118668136 487337867 409513782 560658580 164667905 405570586 390657974 956446502 118919355 772908992 801347216 963880172 897736615 944832073 315745042 783810948 775420854 942136068 627239358 756971673 412942067 968588325 949512672 963785022 257341792 656690501 180101754 325071005 42124039 720392660 883350973 961735703 912188948 986448415 920422472 998814916 866069861 919551852 164429850 283207574 974281124 980267141 483017011 639049391 103244493 412644957 955392859 999885317 394437082 997286917 112897624 441881786 978447446 999054775 895590308 947063633 141372021 439268720 353962496 984541869 361628022 970244086 510819341 874435021 772844082 805115314 241859775 607709217 24079193 778555364 442770137 627547515 394570226 532888773 565107241 848318765 56137463 311895018 593718643 922838030 848914634 854990239 974357919 993977267 630199376 826073110 597113496 740974177 798703932 863299178 680529016 683081146 782777479 811338998 101773326 719430574 82950752 445963354 154932576 280882983 918113068 932341040 199402971 891672367 948342562 999975237 158028186 956540768 110659708 782198093 30885541 47604152 245707176 513658452 219951205 316636974 325133749 801847773 353839961 388130447 205779333 979777965 691552174 984703702 165959306 659125303 112541206 721514891 487774187 869827423 560519895 943280519 521857298 977320873 941576969 990948164 53114757 147804035 628169491 962849191 441418422 814099980 579622575 844591782 361758342 603146289 657406466 924689933 803766389 929423282 499430091 782486451 999766450 999795373 603825020 829719024 877513426 915100343 993284334 995991326 908557260 969271054 255707725 990302976 633012704 783722384 138342702 544980844 511843001 859196422 682769324 732950552 34284414 999731948 426981264 529552409 971712403 993896209 755979162 762201122 186537491 550313865 203305039 404669251 956221441 960783663 76139473 645334660 180753371 231254179 727373444 862375384 440585821 675723657 509756580 841946229 11098320 805940552 551429778 751971229 334628004 623474268 40037181 267031449 131465298 737360617 553362599 872857765 323408809 934189426 954505504 961985980 539676833 714758212 315575962 952481050 763195744 780501845 119232230 820199412 971976438 998597037 606058352 950076338 667709039 829930903 784833911 834605373 971898043 985121600 524654882 894519201 99612008 273179501 807412382 979804645 271738934 419461636 161678333 376622789 608342308 772655929 489496503 655420227 75761557 914446007 869307454 906433875 766802377 977513506 729971492 921217319 199683504 864378649 691995830 828504135 849698758 861334788 798994532 881074399 774792281 809927938 803934469 905158252 70999603 383079631 1515511 306161293 658364566 843902864 74773237 462773323 897226397 900610741 477066863 682738375 283885011 743548068 329081717 771406152 659223155 810317747 709899519 818495414 912066320 973857592 488844821 614126491 656539471 997860383 845694843 892630670 512537046 565997576 210305124 400999912 247179742 655274678 529841747 649574142 799104146 882201865 460846735 981849904 694145756 862850712 893453686 987022396 921688655 973167834 883908513 884411881 745955700 896241283 536771160 853914917 284150716 539683100 371574596 501430972 91858993 808336226 802624313 804953515 184180100 906223578 156683881 398473472 957721481 986301536 121241613 134317498 862475276 990082133 355239137 514518969 497470685 963475986 976511527 997843295 905852929 960966122 837059732 848475293 609991052 855231579 847978030 996075511 265893117 421327662 400996227 471390051 171621124 366161625 503309941 562910629 659818456 673048107 914746 63226644 403899443 876006948 887682699 989062608 74166528 478558797 14259498 633293404 927950530 962726721 303492587 616498679 763269075 777427177 714622033 869108796 128283231 701865804 456584623 835827633 2908652 951740185 51682159 226427166 361883291 437894296 315918692 791946048 851330495 943433122 346722456 676641495 375746259 480974642 664534403 713769869 263481146 828269425 272111419 848395945 142454264 489233179 60815026 86017813 133857230 445146441 179983547 907348898 163684589 563412489 487462850 714524253 482593022 724597183 280124339 663970308 949031491 995864693 210728919 863267439 480191604 544200613 505829208 848628031 614551974 868437373 738044170 974052247 160613624 229527505 633028346 675746718 789093646 940797141 823625980 833884440 628331468 776002445 423992963 785690609 773231129 896496646 854756483 855731816 880677614 912682130 717523719 800019796 105788204 319460209 542819952 581077821 811567306 978029577 226205569 841093695 633371460 870752311 357994592 513022609 901008478 998323471 137775784 192280749 303160419 963346824 61312653 388674600 543987184 945210069 619834436 688546489 698973803 801996867 732489433 931629307 652456956 921305388 959466620 978107046 210929331 701093117 821257428 946673417 642570192 955396394 496837604 643441749 56493235 126863719 136016255 136157574 89680890 444230556 852293640 857950226 654724751 692579364 108008292 630499665 242657679 820047031 786146708 805799801 51213467 544733279 211624271 222280883 756918034 822810069 52984604 178980407 712891843 784425959 840546755 924107231 375647928 925140022 318215046 463562801 795643110 866170859 513775382 624915030 95130379 172807710 869568621 962300535 907823425 997602940 7802608 256935702 375627530 903884061 189004387 885968624 896428155 931998542 823700883 877002077 352067129 706046135 86893146 143136478 571896312 802367344 617466402 842927463 474061671 565960515 118245602 955076720 793020468 825819982 609422969 659484361 499714051 964151776 370385539 395777602 372287536 391717094 252932321 832099260 36504555 848080064 700509283 818455995 966837144 978958141 149295919 702937741 966235193 989263718 530782452 540144931 493591138 803709675 50863968 62347037 12447902 797442849 929310843 966913367 339221298 765932846 808903144 940493991 431689732 574219138 938464564 967995406 385297215 858125564 429929968 526643653 73480733 575489381 171251650 829907874 132023741 413103541 212004724 805359793 684451395 952114629 868467807 890097630 613530437 875912060 108068236 113589651 107474676 698657731 494464427 647735464 591064086 932165088 536680699 952202890 310352315 981840795 815229791 836341161 197464510 800553246 507903318 600133988 365406364 975495985 643019060 649129525 209078178 405607845 705572173 829888528 402962740 549933183 956663339 978632090 908490614 946504605 757782269 899760589 202750929 447253317 813801580 979112106 935567936 947083028 424608784 500753716 965276026 999753705 60279942 305370090 502264173 987169155 238067177 868478689 715447985 890726380 757138436 778285630 405826481 582427665 793569199 892358655 81737568 865026449 842510378 843700071 907073810 914041261 358423597 852435742 415599298 681860012 565000798 989046008 248528662 283840878 78553527 227771726 574377558 796224683 152869311 751088459 187403319 911356551 65233808 855665076 982528865 994048655 549389734 602971070 416436101 721229831 406384103 570967199 56779719 721976034 815468513 925733966 865315639 943306794 470192376 790198053 478053756 839677820 370889748 759296334 704875768 835237531 606517405 880327025 321652439 357186247 195821960 234296626 610112289 815072602 479731747 671248916 591612902 650844183 795910854 898324636 302299116 503965239 345469804 494330361 142233016 789650721 545309945 868866693 722811974 873871061 764328055 920252525 375378988 645240831 493915126 619203626 708526779 897721173 562074340 684794130 336524049 466366437 383525830 883942445 2060431 450297810 294897679 499274411 429710179 840899793 652983117 820389590 709221661 882045430 378120317 641584772 456798759 603763044 478657976 609464123 285095040 748511777 237131706 436646433 442857132 964994197 304279616 628471282 858196294 966235200 711535288 719901001 714645619 900093269 465249477 781114187 523733332 954718872 468987645 622869999 896366273 911562714 711471013 887445411 487766388 940830469 123831457 192234024 871552392 938535329 496769444 535023484 922764070 950184515 984459637 997790695 30699943 615783309 713762684 832038431 897449534 964439956 930974783 997552003 862339134 881125923 523799744 557699654 801054048 924019225 508823970 518508631 191338883 484102822 191941748 483180473 184392279 552180333 647001798 886217134 273376451 533698954 175815343 316343155 961928077 966022759 623332060 809435402 647540608 792211228 395423430 728014095 951016568 978302976 142774090 887947526 365665466 379960542 506301495 927948883 689740110 816130677 82564899 703110719 969779564 977426936 843174533 988441632 144198795 616659383 75885753 712851219 251540551 257355398 24386835 431320915 110146547 578846573 704503634 946410027 189457419 885710458 837865675 958675873 960045749 967884296 98671719 433562498 285745972 401708587 159220342 387557844 617329024 645072426 151969069 617603126 923701612 948047044 924157741 952871517 122991194 788232213 823820303 929805295 779115736 875307430 518579895 767965924 824773161 890971991 75297359 188534487 953339274 957466476 158948997 179218257 84629903 956806201 485473647 927878866 423429148 808840598 971852348 974743642 851443364 914201349 277788297 389794462 662818093 835584340 261017075 436298140 256116886 413424838 900245990 922427920 869756980 964378549 715282242 897004049 797810266 797821130 947619799 979684895 261892316 597708481 458761245 999495347 778776529 983615420 997604557 999081973 557696764 866276742 767189217 811032591 923308656 976847560 839550473 860036353 634739705 649158639 510621059 710480439 818345204 860151943 125960048 804056856 75433110 307775118 48067969 500553992 924106165 962028586 652076814 652444558 478967728 519518378 541797928 998210633 840685017 845468793 973972538 990722089 760531059 998660294 382183590 632875586 322849374 480830929 950643533 986755034 621494775 692789943 898833273 958079693 598652991 871088262 275347450 801053801 212317727 939568012 398309470 989810655 68842652 611778915 787370189 914360463 117182572 287086232 12215468 169866571 616857360 860275378 40394573 460556127 635349086 875010319 466725149 648983693 437996838 976412473 860301807 959245921 190096520 380411367 436034778 476949140 754378131 869105405 611227910 919211288 608286699 692675743 975472107 997425822 851623123 960112314 6462254 779692158 129255696 890384186 685350597 691295993 510263137 639779202 424687677 493939571 560880246 922186344 779840511 812265058 515398806 539530335 17064969 718692594 697560965 961215185 895307550 909984924 790295136 859736006 341889609 486216584 588099046 645142564 386417438 943046723 935700841 998307891 552891206 831665365 231457597 428779671 185622492 917043239 44989961 788514307 210403173 810183291 935109695 938387391 28946652 31043448 509118626 929238128 103375204 875994872 698560808 868903477 504351116 736416465 401615974 871342426 482459579 917479492 210652009 517636155 29772548 240594691 249841409 311552002 104507853 271183541 384465259 621882142 883344179 980369012 378207724 433870133 727264265 751921016 890981317 929471813 574139767 760602850 844273743 928011495 265966211 688582785 371401076 519974561 748141767 764573105 872268112 979831214 322514863 855966723 957342303 975965249 890179230 918430214 851211345 911231259 741767852 847761448 526484801 886665038 208272242 580540607 859565694 996110164 683209656 875361749 717187282 906695662 79912947 802512175 478763003 859629575 687230003 688763214 270190167 983608268 120676322 670892244 997668390 999191948 439751532 602062992 301372261 530721915 847179809 990679209 689067794 856633760 560382591 722579546 160024468 541471177 853413156 903850069 742505703 975672337 236451187 574680781 493923174 981405472 230956091 371952566 302896866 715828427 240529952 402576475 633905256 908256245 122689848 411232669 898676716 956674398 801837327 848520820 612645632 617152396 858829825 942376858 228064833 790111957 483670866 734305056 386867181 429894290 87385336 662697161 374880410 977619747 511446329 630806571 457057726 610704481 157660088 597853416 517261295 758112525 22755812 174015292 810967614 982379073 625234579 707633142 706723252 725534425 169949678 330160600 36984489 788219210 976463871 987158803 857173675 930761854 222735524 499553151 907065365 983810497 452122057 714927120 270830660 638004616 95924434 357291383 597801355 961829708 771489932 894643708 593507125 799707639 168313929 574060068 200817504 998726234 730808288 996610614 279053565 637448288 321785764 992861328 932179808 982051800 699825609 979660961 433822092 515815305 174501690 756233899 29837552 212866491 298826933 622062599 2227213 678643412 369603835 972974622 53452411 570464576 557678352 582857788 560711743 636409916 709578969 895259308 331694417 399335076 816147983 897049480 176983617 779518223 162791746 416494932 970341510 982099315 21286054 187159037 849638044 918637207 989903626 990192139 408630149 801868058 248198556 539690975 868364130 922010113 940015902 972963448 36043094 959469039 184421152 489098597 377033997 638665915 343843170 954341307 193855285 917028499 423611676 564140917 52664698 353002817 523371081 958855794 575440552 664043794 710085049 987097371 812925731 893541455 157163034 901444924 120416944 743053645 130156484 830492509 701100461 967175623 328281428 503093367 732500423 827762060 476927934 903073131 902006357 936926710 601810852 879718428 640049480 899423724 593915013 716384628 532293901 677533373 17274462 642751866 372466688 963745380 777948665 821725998 644322492 979936866 33574573 133680890 261624623 728833144 372225772 393533451 375311656 539928785 910028022 941640709 848523682 951327026 817160284 844316840 894654171 932304047 347657917 842363433 499040405 714056098 888646353 939289329 201408822 250480457 500544525 587080488 387483210 599878918 640774079 911239911 642975532 998285307 919464834 991287196 612225347 619807167 442587183 833223318 673723632 780106343 98205926 789538543 293688494 773593523 176908449 436715780 601500576 767229992 930264223 950517991 48975814 98385749 611541269 647097225 861808929 972914199 582599571 844590431 990986082 994183126 402955459 580094386 501891236 738700521 922370447 943955308 66992201 943676519 59825920 357012625 368381871 387974844 263782396 807048396 814435544 880482341 492577667 904761981 900601141 955923499 528004673 576018125 319020558 396456685 326152975 753617806 159760536 289932526 579367781 781540836 488658351 671174446 613113531 621437327 152107181 655378127 656112837 760706733 801964577 852174912 310692880 310864430 530813174 592491469 897381255 920592859 92773492 123359938 708906656 883739500 600287324 949941075 484617946 858002378 468627486 606993434 723072565 922199224 559429296 822360036 688774778 984219137 429326681 819001888 140635711 736631691 427583544 733244023 562146271 648918031 766617999 978656544 292167908 400110212 485737191 949305950 737522775 996918658 197219699 367720039 869568184 906756652 100822920 285397671 944502673 981665013 747443085 874540372 939295087 993978502 159009537 397834644 391162360 671999979 239178682 604897384 523926273 627468248 577852727 742577704 949844406 995705726 220995808 830224719 870753180 899476249 744853871 988078301 121442545 872712250 684141813 871696165 664493641 667832222 334655095 876696480 389155952 595654174 268785647 633015267 121454327 435544763 999533603 999621798 210588329 261369080 474466119 726410441 984132649 986704372 427786302 941368553 21647495 447585288 564198931 772602348 513042497 984971516 321062557 699653486 329630239 810604870 397303099 571939677 959496155 972933555 698335250 729175478 38936691 101432476 821346185 995218834 217515295 548848752 113374275 255472778 473397707 864283369 95438069 919429229 399684848 646809022 558140077 801862225 270165823 488533959 567689415 606096848 341971849 628636617 795583112 981013032 637232847 770590299 47377020 997291761 146115311 950154578 401539984 631921814 504467291 996932730 178448849 982808605 515699815 670645908 853561887 974894262 475383143 912154581 48650082 546248893 248500904 580127742 907235234 998151605 903884505 963890709 402326954 909745628 65361922 160675665 363820703 621316808 686984855 883026344 523574492 792010544 266972722 439352036 765955533 914703380 535014658 605966783 142833252 826375413 283510130 360646294 886538671 898282622 806136799 849056662 464174159 600350175 441061012 832516922 11967108 424307621 939095865 982558362 531702537 830901407 517222508 550030739 228238885 698419362 465417750 603954545 325441904 867915975 648395512 722808208 148120514 290037007 713627251 891012643 66663729 718242794 734079178 824683076 21221279 320870782 74507466 944587076 141219379 869208179 608928418 642507446 535107830 863649612 513556871 804114801 92414834 758834564 22729354 793423264 566578135 874772498 482131469 530290638 631511926 793045160 910188073 995639044 329040939 853699967 413383852 414630492 254364618 754645761 691260584 713816260 143658159 953112259 724304965 836537068 364973665 916625135 687097325 953493303 12814898 764160953 218553210 486536330 565833036 738973783 306039183 649254032 754338130 790305474 648895207 900533204 987034477 990983038 300856948 721648241 512247960 863661019 925039598 946127394 597727815 829651577 462046521 758562587 673000082 905279388 538713174 626448358 268939586 564121588 827653576 940786019 470435562 498134963 410483380 747825537 964970399 982267654 53305496 914239861 186778616 756813886 883923266 984834017 515029831 546109647 450852956 536801335 976399425 986133487 685570481 912095128 603402101 647386100 440522360 658446242 455769406 990742358 955110659 961233711 139887597 627181500 697058208 741271727 416092989 721339869 940046614 981129631 477809793 769466875 35800598 195355157 420662972 467914930 911425402 976058992 782842841 841359337 589032920 904207761 958655226 983627228 949262701 971095581 82365460 453661243 521943824 538267663 879135532 995043222 279094561 451562846 290044662 296014217 524766755 538697543 609189517 709975253 284840023 715744991 403909851 831516278 691812954 841916846 303601047 663450394 807509504 933919890 575472078 845039940 325102937 596508235 119547021 332733600 116961063 867898102 763888709 995779163 889133779 922735523 665944884 797850103 344515500 437420702 754366595 846968479 451960031 607925768 728910201 762746591 719254763 830137626 295416570 527832771 786136795 854166930 987868235 990346295 942366982 974629413 272947364 970118953 222217608 462336583 44386480 846363740 189320581 585901451 535575121 958257000 175398470 388084143 332200004 528398411 838960545 903718631 694604603 994516190 384337570 619076666 832522169 897140049 605362264 612085821 962727382 992443780 253680197 603321656 219352202 629112752 640650908 889068273 959182164 998245047 677697222 900849532 808928778 825089212 642337457 793444787 178338984 730664088 377860160 599741470 233564710 614062037 900340932 989826090 214107064 510388641 631081166 764934208 680352946 901935713 198221821 905868075 529930905 544913607 612731342 945906285 292328076 717109660 857191240 948995441 1900721 989771740 259285376 701342026 261840248 755755265 96884538 541033845 36779162 498351508 454756053 840346093 548286188 815815058 873254422 967808093 966951718 991372990 538724480 903253726 218889316 407136640 492164335 650013738 40435030 385822964 816295293 947817379 128888420 732980844 813650366 967719012 353012295 770503607 503216723 677211699 755623581 894536851 934924837 976967907 773676134 865830778 804999050 948474299 837873508 952322908 26102282 929948923 278778590 397627564 820835406 845193409 834321925 989191192 710317190 911892718 969141405 992345722 237903286 526623135 691539078 913017089 370106413 865209730 505451303 844027570 71103168 974099368 521427852 813146018 334867901 392755609 933095300 958460377 241136552 479412136 759172983 762900469 668674053 681630848 135815589 629113156 247966375 497102072 628164640 700685202 385669838 470127218 966691057 976479458 332529147 943044178 98495098 183758035 64619358 598121593 467814434 647896896 11549842 96202888 798596883 978068175 272113040 953358757 941354043 999200127 98708802 972011012 448143965 692799968 892572507 912406278 875352494 948742244 507656735 610110076 314934115 712942636 989183705 993522075 352673158 791258938 977757965 998944725 998215397 998476527 883868829 961205318 686117804 795885428 798992529 806687300 344818698 855851885 223536379 961473087 761123081 801940962 345299631 681459524 662102243 768320550 724343377 988387028 470345994 956797635 580268890 726636920 447610176 657013161 441136074 824161866 807807570 838843010 646620098 889799601 793944061 927121855 239863207 415224445 661860524 736581686 894968179 970993382 294738891 624981593 824475377 838506299 981797403 999774490 744940205 791591816 460361861 566388231 545445290 980239639 164106213 606577576 505456554 893883543 334557843 397452390 369088635 931847180 437189750 704782280 769078208 897800086 955870574 986742957 936303096 936834783 666448828 938491568 618470695 763777883 811973895 989812717 34561689 811875989 357158249 866327498 522423298 951387353 184136434 691843495 924383585 984978822 699469853 769576352 33035043 341455752 395260281 976704539 62025350 452774978 287735794 556629350 642409926 738227865 469309828 584041650 949406402 966770921 695005943 802695599 136333323 941634905 951362181 982979260 627249740 834921863 264743427 679893556 532929396 905891108 600052331 914253997 195171496 381376895 57769727 877815734 684435074 837244875 662275290 698875709 180494679 911417678 171805907 331549792 540390150 659168529 378976087 401306192 971954484 981503371 912140412 946549296 892424880 947788930 60776299 162121728 242034614 312065037 57732231 819689178 616524689 634921941 793445954 874357849 761200601 886008117 637990942 709909635 683277203 775825619 751690341 987815429 433302916 936092198 309725290 677672347 404776615 703649640 717701648 852020958 940149890 989484364 559095015 982400940 686547646 781829105 703344806 821424399 767225070 917871895 913328409 993993515 139776567 715278925 915842047 919297623 949819202 980275958 995404153 995897347 251264054 364274422 786171903 835440945 830048098 884986852 395987018 433116482 417599656 968116392 643317814 996332925 816989564 914326194 16254435 449942931 4599923 754436324 299850094 541188268 14148341 164889291 43175642 590580245 772697629 875495632 147638929 392309899 992610176 994282907 883382448 951347754 646231895 714127372 729511536 872309801 584882237 904720833 742811583 929203825 820514526 872785183 767890726 780855328 302266858 872193713 77235585 781260075 983403754 998997864 420211859 653365994 999265661 999643172 770182932 833999613 738554087 997489891 970064962 997335328 995034666 997064770 407692775 543397959 360231708 687723608 827709468 915396802 385356045 473603996 620057615 630109776 987179107 993240755 925697521 930738844 822113480 841241777 729208958 840152175 696724470 809659790 423023148 836517146 389235796 459131760 549604307 649799811 933422728 974294575 230648727 551646749 907653874 993282172 371839426 822276209 378716454 407875568 442594300 595461287 126092309 746326264 124254869 757329150 637227854 766889001 549545508 807906440 194474493 837836268 86896878 873158297 407864616 602114196 414031677 736600692 94433579 755712873 913871218 985036208 193154175 703388256 562631437 698091259 788008782 946511728 318828726 330850221 548700132 722427899 97813705 217808871 671489764 675431324 36805260 273930104 956175084 992929398 167752899 516570992 230977703 479519675 189094576 326926166 914029747 952474738 906698611 971687068 631268508 853016655 524864390 862186679 454253835 534928030 916692224 982437658 409943385 509519850 384579221 467053398 470669876 854160352 653919075 845762035 438106340 454962829 355411814 448098404 515988708 997018620 634730451 951617329 885150154 972483076 646302268 841753260 558415529 857918778 449502367 905473520 490623332 498684457 350186362 871087239 948318125 971700567 479111772 833910392 806080304 977658313 818569610 964067094 603859773 773537595 239084901 742035048 321379807 791716972 810992634 816990757 270113573 304903317 969673859 987202763 545490671 800937338 9371671 257107208 861689895 886950840 839309223 944678869 328437797 810167885 238318009 266029272 285626499 710255270 323064467 448693778 773527888 883953722 147029055 387181668 603295405 637653912 316470963 461387478 751837602 890288822 394750449 406823803 259443635 303269040 662686229 918864851 298248157 928082003 581016424 719692714 580270939 819615848 879450054 909619780 243050997 688777674 532009867 911819428 633103971 907884703 750470628 767852864 267059437 522047040 295785034 783130703 717690481 777036324 561968246 958451074 800639752 961467293 806029868 920684489 611886584 730148797 642758913 665563550 430208459 522616522 504868872 997751958 225198763 932575272 358560273 748197359 569839800 953211552 390137225 505816243 725601761 908819259 837124228 841012999 394043930 593717392 630959174 632819592 854648872 896652450 552662669 918815207 849287915 896805402 647582193 653288754 653740728 820663866 572787635 815519244 581898564 875120198 159654450 788572350 141025536 193023570 644751011 683045825 954967877 986133494 492817244 817818179 948174601 994691939 961587292 984259383 798946719 956723791 273493401 918318569 353081559 850444358 975016192 977296663 537981298 991254413 743777491 923551100 9928532 788750810 730216382 807470417 781203632 910772462 712676684 818565464 266838609 295038607 735685021 790752475 45532225 532896787 806214988 945065525 441623135 453918919 224459049 270064435 688255959 823560394 992469234 997740965 406150682 922543917 224861857 957236380 897262273 953413696 281356238 852457427 855098122 919405508 405651762 904416179 572899842 937403957 198942649 839242898 998400992 998692739 602362665 869677307 208440774 861791769 827208293 937678720 41400217 105690902 29249683 488515529 457175454 828320787 958810197 989207510 153774419 215594307 850115897 908170838 200663758 647124462 362718854 666609943 749843439 919939309 360004964 457367927 90961384 977956890 212621985 475518888 803720142 890649195 130585681 586977060 523069450 949670031 304658603 331871758 344014484 902847011 542262188 786415706 784576285 834891763 896790831 970815603 205875537 530540187 15809751 597082634 739806594 846069023 110225670 148264336 597379454 920660002 580521852 748519240 550977923 910204120 67083220 650097323 600129562 809127342 16389659 431601681 440781738 939455400 411356586 685963766 96565302 519635621 751154899 895198975 269979409 877963140 74187325 727667032 488213165 629692944 434809405 822017667 395029036 441618919 509728361 539068915 775234166 892008326 218601847 407867337 577594028 731996082 241515966 262873034 370551181 839758589 286532816 548557998 714028699 846481157 554181224 942881612 259838069 978035274 356536991 357378088 216440427 272680463 426163103 948658488 775715258 789381870 696598418 726942373 980436961 997902636 777355434 969734902 185069825 530913445 819822851 941647916 105153938 699899907 529079746 910191529 999210909 999447706 944840571 947440600 879736756 999828550 279355585 739670689 532016722 961217206 559583341 613289814 878300550 965433325 836712014 930572472 340678871 362840329 521593120 716026256 160605311 673215018 430591421 546765400 118817848 636413754 358897675 755938335 347209918 747981314 239208695 501722560 380951617 402646885 173263028 736630367 544900710 768256506 142794261 914898265 367971413 982539616 381160002 812463695 402253038 846240353 55633609 175104886 60746441 205798237 729061116 743348550 811060762 840882346 184581931 949182707 613976374 950199212 642286519 917705156 512355514 959459402 63452129 882451578 22413023 563942728 326150885 348735161 716082877 835204641 17941219 642522081 282274370 928921744 107365038 534033674 975302154 981848286 801124113 986526101 878799785 979651125 515846667 594243519 187248270 965786390 865491243 913396432 120267444 819951327 578120743 593497867 596953017 809264100 649781690 903924262 837300377 961040925 513067066 974709333 459218295 490346493 349630158 558671262 937474352 976454021 592307514 857831574 349282326 479962039 852148051 981425527 705561094 897142466 379935772 559932666 64934004 655751346 617065983 669957992 385759069 640625773 925424618 997273095 700693485 843806837 496380818 782718540 904465629 908125169 20808767 727472920 88503349 819921969 375610320 566562767 120828396 729289964 142482269 848524566 350324709 425430280 782775055 863665323 133415756 265747317 904572059 946934766 947142135 996050272 291413912 760244877 299600505 787796352 362826304 768210637 209693223 973373708 47651300 875509555 455569601 560621400 278806376 530445504 27699480 664409051 167443370 960905477 405433432 612223643 539570770 754209164 883451400 914718396 372140211 564645092 947210488 956074031 667973387 962219560 166443683 259255408 732678921 934492047 783284833 785539839 460131662 854425095 528055448 735666991 900156456 973815557 678043186 809802989 276347653 956351126 506737775 808275328 105685915 147386252 898627631 917356836 105950859 344519101 634653477 639773305 762530022 801233544 694603177 987674696 139907254 821248979 142819342 241731140 127307221 882499963 92833324 412106573 872589701 909376415 75156505 327642542 542732494 966628348 89035721 188822236 688516129 969842234 787663165 873777307 336497163 666899489 817428517 940336712 28291542 131864309 614118515 816744762 540792841 810229972 913488719 978135985 265456140 588139917 11825003 175920440 524390186 800510281 873008510 910157424 243989375 399950023 788093655 864506074 713735087 791407043 757519416 990433831 626669093 868608944 21169524 547328734 511775687 821231422 534798249 849013843 646385349 905947794 156744967 737576120 402807740 671051524 756191031 832456759 835073619 985617618 393985498 734795425 955956896 979231726 273887649 904919876 693761237 932970199 929876248 930583377 341210691 409695355 763244795 996523847 61880082 531015811 48988031 990067292 289283607 371906321 670641832 789594398 594490948 754906533 987547795 991542146 995762744 998201205 191713232 249317765 645996244 675520597 851648239 965103051 518018471 615334724 865923231 911890786 574436501 957858985 47919467 55361497 322683381 520256494 203709761 748506344 918675181 963242572 788990146 934187357 895542448 939888128 145277025 803844833 339228715 464611427 233686309 794034068 68579903 300415087 264912079 841931778 718262517 775481109 226028386 643304683 487671546 980316181 162275487 337499997 114900793 778033107 387720077 740761420 270073817 341502961 288675520 356363341 387393559 610928707 843465332 968641777 881890859 895188158 401295507 816111707 66944879 78931924 401483974 796512270 561230788 880224866 427339392 546936831 195079468 468781656 41179343 505281497 239483396 823896565 948544060 954420560 657036895 822708778 429494289 472004275 517273533 945676402 353520663 501725606 236150737 950280260 765316097 949815841 281701567 549288408 386044059 900916333 442734947 805171851 82662799 268887238 351184334 765486419 547281890 805765000 1785044 462197413 152886567 869397063 61964817 362390964 299256949 477407348 20470578 259509028 498019076 934411336 666754705 728967508 497581434 843899429 118539785 213763401 642000957 839125165 217191822 784637263 833437259 900154535 392899254 628412415 292979055 535996100 668028291 839286236 514887759 847645066 247788009 687490138 508871997 798662945 192238126 626432621 703952367 776489509 471153443 757172164 85607709 906986685 245282416 723819791 10943386 849026711 244360916 484598095 408805268 836788367 59345457 631875051 791793702 927743530 901279874 988290472 586290583 757264158 326321339 860628880 530965912 834118225 76186276 192771903 271300329 348083928 46965312 484776862 525786760 588567719 763259810 978792633 416381276 985695112 587691954 954402784 943826927 969161517 831192590 999814798 287008561 997656438 114574942 791475937 695930719 927962450 384500232 451156727 847100404 998478740 454748230 921415486 293986730 815964045 884509016 945895244 919934465 986203518 175244187 656421405 923612150 962688304 542146817 638919342 236064141 787563429 576442612 756618970 408521337 595598562 257976697 570524023 370955240 538934140 415882347 844023847 366437677 707537857 208613205 890268510 350477419 438188537 455718849 691437524 334810756 682950985 652476626 715703575 331378416 834388718 964707806 981686415 228816133 514103174 719412993 976577523 208419806 290030876 169114908 899097377 919076263 928609718 873941983 949214389 511828131 665438098 779211518 842224091 267259075 701719635 246795157 296423366 693887456 725959246 794750565 978102043 206207677 433789419 956193585 999642083 751895494 789439414 169190687 805715353 653317757 715316431 568535859 776360803 727110138 817175462 60341571 505759747 974199721 993492051 972225534 974249041 441041430 691308751 959048441 970648282 380915533 797241624 613415146 795291267 438413094 537356724 123157310 500328296 664417481 993827835 643199108 875531457 500950550 630558486 726764499 819248387 17064148 399387649 180538616 224018505 601196409 992124801 146346714 652079544 743241125 831393759 990220400 999231095 813913129 857608121 271902390 663448141 953774136 968644246 846771166 930289302 83418343 702956720 867531978 923296711 215193483 442071537 966517272 970409124 867435098 944117421 915064086 993194219 862784942 991714787 446737522 666092681 546104775 741038989 212828017 779114466 984803836 989139618 34651553 380222656 331358980 416716153 742025305 879528519 580675902 998505635 758051126 916162340 324330796 373524267 650535262 956962780 323080655 773299017 419967150 926255406 149882380 590535063 404967494 601421781 644280253 920110075 585856792 678959262 337552031 537286822 62890145 163111874 431069907 695827710 877552078 921944439 510338896 521671437 32208685 662473631 437462132 948693048 756059552 949335417 794216117 954401859 790698723 999296919 559068412 878882119 472317021 763250886 774284909 931488131 380120198 988880819 991194883 997041843 335443317 873491934 180944499 448916998 181800454 942103999 240514376 836749513 982402291 994220618 44481549 620244728 864145499 932808378 430619401 801770354 227383056 434291645 624211031 654250460 772552502 795562966 401299618 774573588 977940847 990206239 208804140 867087055 284582504 830792808 80491985 419448361 738593259 998818320 78503225 580243767 316900069 941622697 533679742 546297752 374746149 866879991 992180724 993862221 41204154 292408713 215114785 309758449 361674314 705070878 929164160 970859206 580459847 881991133 64109441 96563008 643701274 992996907 853806511 887873916 392105005 960428933 720281185 746852054 937173495 991860926 870826204 963952248 975678112 981742525 353350721 722881633 124160214 170539099 182763223 936175159 404527771 442070854 375138411 985080961 692733298 840429512 633634647 672152303 102893849 447810354 862213539 887800967 912868488 992451335 369314192 544397822 943668561 999107606 576189947 828342125 280772802 645530092 975856143 996015891 163360710 826868586 692922382 782076010 887048019 988741397 861318938 896098871 740670942 943960646 689877818 809676970 150726176 769919575 821082660 980476227 449139959 866304553 450891288 532677689 24368906 842207201 321562757 516632603 506542666 739254688 505011390 558903876 699075638 864147601 315511555 638297571 943555025 982351090 541588778 595880151 382138989 991042992 386335980 767154835 25944470 923347562 795970600 972812478 316271994 911422626 397139915 718652692 274461622 875802449 401398139 618379038 700657451 825285796 638471026 980820572 703048454 842369216 648696156 750611665 149368079 244235859 797164276 912725313 423339429 726232323 257029770 978852942 41415456 846567226 246693221 505597216 951204080 988348047 513334265 905277765 110498804 420625884 1461587 200627112 429248846 609526942 662275561 774353593 874005210 955694499 889432759 964238296 383669305 681502012 713541340 882866695 218901744 389035588 441933555 507358305 784157252 894994447 129266357 433689186 806281545 853611865 429800730 432411580 737798829 963491760 506444985 913780326 541962705 654295325 130172164 232993151 775198077 923090430 609330352 958845653 438556828 594141190 624852732 923212942 572967183 744004105 526169061 577907856 194890396 629968085 924078489 984925047 297991359 886367370 474656136 691340039 534311578 588626320 364448658 886988850 89430713 226392207 874618274 879401978 726809281 861744559 30802461 493210564 848040423 879525998 64385094 704629774 90377126 118137519 461437651 700496345 401328136 452448326 917019975 987093335 994280165 999953457 509430331 833101162 685326931 736742930 965650610 997355657 44184316 286046038 90449422 873868869 236621161 981484023 551694921 749726057 955188272 959950904 421902221 616845554 720783666 769859678 41907166 563981041 930537462 969414702 601674485 686320028 556821534 773742400 718872749 795615189 887527735 898825533 910717581 914835051 502140639 748809057 970130557 999706182 98535759 208324118 145267191 498720384 421205624 977397973 184481918 898181501 896653331 985292485 95456748 662927973 301757622 788860376 270882051 612384217 934513251 962864472 930069635 947608618 983223892 987360697 11684908 314801032 969013061 987996017 550060909 657380875 983655703 985550831 927122233 991988541 576991798 757276357 238388608 829243808 83136053 353992905 997189074 998953784 393875775 837581468 268907101 415521797 936382125 977339304 150313850 430877636 66816810 630731388 927513741 959411580 252211124 564272073 5498942 340977978 138557236 450076271 459994332 745998471 399103811 858471359 428822373 500166382 157064582 995575105 330112109 915329460 258971057 635935497 190842597 654881234 158703324 660903165 968646012 982472828 762925151 778170224 648551476 742719743 70775971 581472558 680716392 996335426 865768156 883633520 194711477 856010781 558838869 850072485 367079058 510151329 849947029 960994834 727439248 961468731 280123852 865162308 914281598 983536334 813948283 820071016 867781165 993467352 730933389 823590499 77606952 317988917 876839357 931040264 985919744 990003111 97896224 183785207 567488515 940496141 988493546 990853178 761751763 884292459 294982229 408006504 863992470 902970647 272335863 345575584 535844735 941510187 974153144 976732564 221916261 746864086 727465212 751301842 21488007 81902435 216105665 444667393 556761976 633931842 170156611 800959189 856421157 996728775 682162007 939276811 127212200 548509604 779263756 889060076 944189871 969889951 794537674 976280901 545619116 794823764 388341225 993120911 48652334 527945719 425127694 688039896 285824358 565827566 243051617 392135932 273042315 756011246 374165962 829409652 753674871 988926977 777178939 794399737 111107580 231882664 836452238 933493497 492554004 803575651 312100070 357822651 964417229 976240668 664599366 737458161 399415142 814523155 667478943 798384883 339020596 688159407 527525038 970548934 597814362 725972822 196289842 476639487 550423920 592739384 126479215 448688334 743208793 930892134 850569085 904903072 892514718 969700558 923540160 956319562 78013936 754202259 405902859 688464835 656220256 690815982 426221601 496361247 568154459 769121908 604087894 764505481 263475029 345343940 122420636 681875681 78522784 801906007 982179765 986995218 409883712 872694221 520190619 861717278 185785223 911158539 738699664 816802365 208184686 954999167 663515641 959099091 272073543 961405249 5702871 317056127 283122600 286250560 428320051 478330239 757654182 820037817 34729316 60011547 197627845 503832339 996786307 997465029 713602064 898478908 251570530 760735208 472178572 689052880 709234921 853479082 35588119 473878777 941220625 954930096 745640946 984159781 580777894 996132758 887808253 922572253 379078403 738764970 553356015 590814901 740869998 822661831 344938796 957030441 7677437 179037953 665293860 696416628 192588810 403101525 886213751 899051834 670606267 862802877 308063766 339791113 440191171 640016538 619541584 797919006 113488170 384774759 503612119 806096257 998467573 999254645 488799070 501463809 909165224 970696502 977935426 982335326 529700845 554601659 92121119 720415502 625298946 808125887 127912867 776123657 115926233 800643226 573715144 941013121 850474450 925572647 919797170 997333551 264795723 388754896 52532330 448091785 42191034 428945657 144004411 948287198 79192556 181319835 398875053 993835921 974785199 975212171 580095745 664679756 580923976 886347369 150618901 982229713 374869964 815267313 275267090 626099074 338238962 402693470 953849494 985261387 288902180 369205945 535185884 762758549 663583702 746766091 564939257 626851358 880739321 991986970 38650161 236177618 336779594 987917729 839613072 964604632 767928798 937708367 377827950 746634224 446076128 678752190 11708715 41716221 310455070 499348100 143277578 416720523 74454887 941273923 406000531 768341822 864445486 951415153 590844096 625446066 470330682 980583247 822362357 997394155 791330367 922052969 310084114 505249109 93615083 452168640 917844112 966945826 878835126 986772247 579134695 624700839 67177542 183547637 289167822 314668094 234636130 773806700 952949073 981663761 123308 736604127 813737606 841981976 591805857 898218637 385232805 912366998 27164061 729471477 54667221 485304170 383725680 607884641 648724678 941162807 309450600 959436967 561391795 791723159 816925602 936619449 479530395 997097426 944772318 999004982 217879128 517068168 346127006 453771469 937909238 994273540 467107718 956320096 895069530 918937335 786324769 877185138 876536990 910813448 367936237 641056008 197457674 667642092 320590749 689575527 704520889 760121228 215543890 518352720 419726455 481276768 660669572 684905045 396663588 412087694 454134835 785555117 536419888 979901471 67344735 687736079 452457987 673449019 891704904 975530135 599499187 983922912 278947687 724615055 117399573 561900029 347186328 984133973 322449319 941178904 611749428 741162775 171062525 481506446 549454361 713267085 678583775 716144288 280202371 340024294 285006015 979465584 830792555 976188141 997003328 999379319 323917471 882505360 60407682 391370875 492442064 547733897 138873013 935221719 16419357 720881499 640552947 793362604 575588375 830807883 941255591 948926651 668688658 773231800 316687441 811886916 861235935 927000100 732634370 816419205 355773268 644519072 631373700 644682415 559425599 853644664 234990804 546211754 137086948 172852012 258311695 449433879 610776988 760139866 667324781 758337613 33408345 719242174 466088853 533484988 129534652 175688490 516656810 697727825 628157381 840892318 972797996 990902161 762453314 820011034 21368378 956818419 571080369 585556977 20991257 325642719 926180239 936912986 873687325 881001154 21322633 287358859 50142076 502853682 557261994 913325741 63651997 531168567 524519562 528714386 626259096 631599492 845171353 864081953 963971192 976390855 649412216 652595968 594085543 665943131 98921991 648408001 376057455 399372068 295127972 694185108 838147914 977590858 763224771 849330229 445131724 700468105 676279211 898993989 418341340 651224678 772815146 885647688 141941105 578552747 279054665 497581569 571380904 588431253 345537307 567961353 530904456 561958074 406797754 726091203 549744763 830613079 507195774 752583809 521684392 738205956 602605891 954592166 637064884 642910679 528690148 703827905 643383583 827905849 900137050 993637703 935868319 953063997 282652967 384492614 50045001 201103490 423069480 501025816 360045655 869141621 590595735 874669705 700381832 904013696 883066820 976235364 622967249 678461841 28020038 298232364 477450965 819442035 233023784 349106519 332466200 341606845 970976383 972914668 678762515 886334790 460946494 762780464 714398449 857280593 664443746 680323505 678103501 725000027 66186947 263460653 155058508 237517001 680273791 981622555 365254189 796485623 677380382 898011554 659872411 752637776 761204783 946095889 823017060 857384294 169523976 483522352 391487649 564936603 542422682 962291846 278987815 625115093 382944904 500387283 179082383 509170475 921856473 976103933 484435402 535604626 367713472 994312867 85009514 587936095 629991546 833858850 358757367 498035010 381339073 647462980 380287466 587846664 470055313 660035908 329555342 835535881 283749059 694265014 955630207 998688664 125411261 938712586 61493413 981300725 138749103 279176679 255754999 693233675 924325330 995672590 522267440 741588941 160301511 714974395 294038449 914741615 154118421 425639875 345604117 621073257 863726581 882529373 429502751 483067528 829391819 923386536 399533944 966983628 4873304 620469892 121511477 490615946 621860000 810987420 708171748 898725890 852061025 865370255 872226221 915659583 331019571 581486207 677021306 789731363 985568375 986565634 113104489 690852867 567273197 899142419 793956991 856282676 202780302 993530798 504353693 585419127 316569864 934580942 1008442 517590999 465421451 565722852 981471573 998870350 160552973 331770869 507497769 626981833 881808631 924809665 10156593 395076494 590346282 639204746 818522504 847863913 304734340 431075551 694078315 721192807 333352021 533256250 200208797 792143233 589992057 656046888 273175399 865893763 266407021 601230085 713568550 996103043 54120724 597012999 629286904 934272245 403877951 483130034 198637659 432085377 210004605 615294668 103938863 997551955 263739725 991776765 107143965 875114492 373609807 896356634 28389156 983707717 80402497 564979198 811637709 887081060 355205414 938788855 500985138 799435585 536559757 825716718 565390634 977085308 36295051 279113791 470668020 947648205 162480897 681275526 519625886 945435565 264474353 565279080 121578202 783856811 347755666 779210610 578627510 604409006 562278210 761298468 831562288 970070170 517906890 973028028 927147763 956559457 237664007 490983613 556405393 796869134 449243015 688150434 279388657 858344264 700052631 907022805 616416088 752199113 199773366 413006746 613505000 647804582 955150606 993067996 57138052 664379161 954324691 992677135 840109666 846909197 410664366 906037079 383120292 659936738 361118294 529973259 587902891 602006930 834209717 890329336 36749483 70978113 923540926 976550444 4429547 880295267 168330050 634023511 979800610 983054751 981839465 991216540 941757328 981310244 908411579 956204063 105187733 355522815 896047348 961275830 527156639 982771266 443949952 904215638 923282137 958839651 641600089 853291651 837042076 937002534 41125029 960947836 1597262 906978478 243005779 417811130 619318121 785473588 657478266 675893690 618837225 874490624 371202873 861102409 460979676 768064673 84855980 260748617 99667995 215189197 967370323 991101945 367009194 566683233 779120315 896886563 999539298 999994513 128965348 549382848 840210375 885319813 961592305 995859945 901482969 904293818 358354469 827910373 775289464 921446877 329931713 341347547 707010391 819736791 617683372 985971846 111232865 807534454 295278603 482559280 235756553 779559171 376677399 381924854 570608495 833073665 309739212 454182833 508816368 897867530 465710626 866377183 721880837 925183887 348306158 874639977 852587772 886062333 803055354 947093935 728265489 943976869 479319442 556024817 104896681 409507916 615326339 931901415 733821898 761368152 145434146 751171256 986095373 989288755 228940203 391075442 561801657 676269348 604732484 701193357 120412717 959626871 502708687 862937999 599113253 956286709 506215759 619563292 715160488 846048226 229810165 625716940 573160883 594615336 939564891 964377733 891124694 974659814 950489451 973100529 290961755 931182567 967990153 982851096 405155709 847262933 786836220 804536588 325774234 992949968 10730382 601742890 650951244 964736472 18439243 258618438 172817914 627974045 721231536 873544763 729452837 981096989 282127704 408092092 961859799 980294756 604853214 636512087 309933676 594920669 27844564 857307795 637212548 732511331 784820849 887053367 283165100 680617027 2670076 674262030 623823028 992185103 534657295 535450276 966415518 995488159 317119591 955825591 511994056 691229617 632988610 789467786 671288924 955295949 299440340 712315560 923256936 967572981 46437104 242567832 637959687 893964729 222461798 685901594 457108704 970713384 32312991 987733548 147551902 998361541 332230457 988881427 818659219 890838212 171633358 598592867 179560210 377692033 649156107 822198201 168893410 511587760 215345779 311047126 821216076 911203285 670847106 915293635 742572568 987874335 785507115 856689870 98540113 184173142 457235556 633107929 101124202 668202021 162378770 665025313 916461241 959220541 196687059 258964014 326650190 638217501 925573908 985196641 190087528 280246193 926114219 935916405 11011237 990031648 313639421 981001444 378832075 814070039 353317426 726101019 113915407 979380642 492903332 705658403 345834991 676329245 654036671 973308797 490877684 885107969 960395987 995408469 989265603 990435026 67537999 896999957 735715360 848373618 380647784 491699183 94171823 347213856 516365010 726802443 707306077 911752059 690735277 787020885 592212514 740658620 220704925 314144685 828559939 933789572 265970697 372012612 318924421 489174827 298132337 661722915 174766806 823289763 561729436 675642712 281611882 746139538 205656521 407759442 206704689 746452742 110984144 373267559 740517229 795060845 657908662 815495442 254998082 888159899 844660473 861875822 647688762 977187405 75946825 980329833 964565870 966409088 968437108 974334208 365271759 780832500 508712866 708997631 528806951 927331171 748887779 883542499 449850016 951965916 666020882 682660238 883013682 987559965 844986123 963512489 487817638 554510813 214359221 344007302 222367620 327342086 196963867 295735931 125086302 369448055 115339391 333880952 830989070 887331631 169384480 489151408 7443286 259259541 157635629 826710014 311625951 328538327 236268238 519547165 909943256 963604374 270723190 600882051 162051022 775136730 416073355 895488272 480078809 568100503 901175881 967051246 975486174 991694443 524724387 598562014 983518975 990283168 731268124 937123422 879652688 960969229 95001638 897501997 678817830 912306084 104395592 724081926 202839009 513631888 533325336 980503077 942354189 968825747 864183132 865398065 243758431 623880785 87395803 842781419 999360600 999715874 661189428 797551535 38890348 766324545 137579832 539361409 285709627 413558875 137649352 897687423 962958818 971025761 850289877 981168165 964982713 988062407 272489058 983854910 980542185 984022151 838111236 868355248 468469470 821201386 459182554 529325300 160496970 792346164 711277903 822542682 606175135 699104134 463144583 813288128 306449411 316809831 95967341 543917700 548277227 870574914 666412743 936830309 932223299 945745933 634234294 723336687 89240963 591559080 143236674 852620168 602829215 635227215 438159043 777441583 906263581 981281180 649455286 976110982 439537777 735051959 630764726 766245157 589188009 976366041 737000985 743885827 980697694 980822510 965051360 981756815 18027374 849134767 665208648 846287570 784685509 929513991 879153418 982400285 953826494 999032425 308154063 542375639 311622575 752324995 48850245 302015146 386422043 489634738 127940417 374408244 999968408 999974600 439215652 534716299 752580082 974230856 413861824 602681487 39117962 287503115 553845512 842536537 791934599 835528177 766151280 828376619 160084672 595806835 103087211 957554786 735419090 849241307 183469614 835781998 842321479 919384224 797579542 931416537 654058231 823074638 747375689 837400985 735975081 827710938 75545 929057255 815363198 858711666 52187670 276765690 652155318 690417462 391051422 759732629 933464820 985374581 666610708 880085825 673223431 904123788 947379008 971163655 836180735 977353304 487822348 728481477 224896853 632564878 839545334 944846614 470338136 982555133 586979497 886025692 89598278 569528806 838622871 911171180 909467021 965278813 589696429 969645381 865690411 997221389 918594333 955589618 453720284 992057065 142620033 678561513 299429674 679575230 822579911 859586663 628736702 693332149 797469583 987112022 617484653 697617662 513033315 756120317 914910484 986930359 890480977 973034139 936407228 965971321 433415331 792243482 136360241 964468277 165810270 842106449 494485901 939747173 646332854 700666011 849204678 954288425 783322830 877358914 405277845 778776959 536087551 646780240 564875750 637557942 722662228 768331470 256422040 710321185 160378034 321219764 228051787 445671838 776845667 853557746 322815891 998383934 743546105 936539834 502856616 593469003 704623044 951424083 283643845 636091565 475884414 922774246 939352499 960612762 648090612 734047733 918693882 989383462 369372162 570864417 759738644 959248362 447503587 649518465 636374174 863750356 754915543 838426218 363086915 385701317 786435377 894979660 466152035 585814089 537746254 917000661 98125271 870677503 340705387 724935355 721937604 902411587 585408224 908665283 995523355 997294744 158825640 275975365 213737075 233441080 298496618 894024926 646137134 804210251 435643426 851692459 736750163 849543801 903365867 994978927 539322415 774305221 19278013 403203640 443525847 801948245 610348591 693294397 665329637 966362620 338710367 818838743 920128862 977167880 745932708 980773748 205808434 647104225 844466209 858890689 886423464 891462613 183939166 840281821 227100920 801382829 318680501 497242988 167694836 372551584 463953761 831233725 800066909 852620187 980352576 982561009 70107981 956934014 474714388 980218439 186276039 595202419 160957452 962892356 165092711 879228183 714424155 824649036 146352951 485719760 529043284 580370541 376686928 411458710 167524462 982433664 924331037 975719580 82918914 174429597 402558143 858925295 551361077 605629130 632521657 906975409 762264205 977418316 83889436 969643469 639063915 975487248 994424716 996509731 127022399 258784433 983237114 995208788 623118660 925605097 550788598 851108719 353773852 952854146 528066902 940864827 111545838 908182857 249375843 968489789 631728655 788002102 292463486 679763035 94060045 917693847 146559151 416124037 719912038 722396625 610318212 939969211 667081126 679287228 654091285 739018828 575598999 939632809 763896319 768268312 414000794 954737353 951475523 983258622 841803254 858004390 222407498 587974772 773368516 860261052 627493214 877934333 547073223 682781843 540854528 671212599 972361258 976576676 272734579 430555433 132105691 510189753 590884150 691763168 955640891 988326000 622988432 644354001 113166103 237564608 825639770 876939142 134408938 333474302 668598591 982611471 592250744 628203620 907890092 923179092 527594362 680272534 973897046 986732928 565103251 992672690 878464288 929367295 948533098 969427593 914177357 932544252 905681409 951057644 127372407 324730390 231256558 238128060 888305412 933264595 74418719 733732195 679582022 991199620 865523016 893016203 384233669 932878353 147764280 987010382 533328451 678030954 103468233 376145983 140886426 756089725 867206742 914479810 557513269 884437169 597973925 831038554 499943920 613014412 27501485 744056721 213093399 472045727 846729729 976540091 722740796 832662460 363699473 419085684 297141755 318501916 280897703 642672318 757727360 962592376 476825196 887257428 733741720 965740873 275482803 826824310 371727108 898825734 799389436 974272441 482964557 955815573 183269424 305198461 391181126 604418164 579249000 864258872 290482094 736436851 557602807 748415625 115224552 558690737 770983906 866380608 718354185 864109994 854725529 930731613 921044033 925134725 332546476 356886705 198913851 475087175 362870260 647720044 215106525 911583630 933992120 998680625 580611491 699819282 195117050 922685637 48393507 945886035 958507047 969204446 167639602 333081437 308484569 390831642 287496293 917646713 243521840 396075562 549673286 920225435 943910416 995044041 658089043 718832195 258562348 405410470 574569593 798631392 319117275 675914167 784621708 925190650 260572059 764871839 723092358 956131324 28929362 392176898 189554571 407261450 248028181 856534304 212645136 978309796 971406684 981372404 817608926 916235897 484655544 767769776 276612063 766456141 275359864 699223539 837552136 936882833 875066081 910669177 25997847 683769033 744416322 966200921 955161659 988607343 817649294 940554146 809691499 968266350 520256869 950865726 838996754 867940889 218905534 529591962 109700923 636259097 886405687 958548408 78977758 384226414 782080780 841362114 489655869 934885055 987343285 993618964 950512412 981512833 488134362 990316512 412561329 771564362 263025399 739769248 404880908 677091341 473215889 767630041 516220776 548244260 634352596 831771459 527880442 813088749 739973889 819814505 664184459 987940787 601912182 745611912 618913915 785166658 975935887 980224363 358433152 680333991 265927917 800714825 552822032 732441510 347927589 645244602 739268046 857528867 278366087 973481748 630993921 932574164 574706879 615716669 211396095 970647734 502222980 942383004 569482152 591548976 434357910 708558944 696940250 993254281 389023942 519205737 562644911 816479731 119075958 220924053 473532821 564549580 714016442 777732627 621530784 634800290 786167517 903943485 782678891 820496508 511099933 791356129 348606131 667718236 567568026 990349663 784417814 925686352 73177660 805985314 978324114 981288651 980115173 983630025 709348708 756790389 864734779 968288124 336120468 761338651 945234913 994507267 437994053 780806706 203319621 418979829 747126860 983165686 9500951 102041750 732191487 826669322 822621223 928419657 711604997 780923848 543539043 736634277 534050435 546444113 914041992 948383284 676364441 723144338 369484523 812363464 747902889 808198136 993763000 998939599 722535343 954694896 524802115 965690167 757394278 882408449 766630974 848203905 891014222 966622575 488140059 639990579 13351562 144871110 221742484 234685815 256557452 588034176 554272818 896260207 856639571 965187649 630709776 713315650 508239688 844132000 202501540 637941553 323952761 806520258 120559726 730306727 930941063 966034374 355058496 815767133 965327746 990982725 207387407 238983585 560459187 712603714 38237183 226943748 430039131 635096454 557514358 642391107 492282741 631525329 476383643 887924056 435146310 699625938 802907759 841327524 654550084 833733141 111314596 382345357 238826275 992638753 560492022 751477345 348509031 524048581 749445415 848893761 42333153 977068331 422701555 706951790 854166142 903421257 627098349 733097480 404791690 734199748 338196154 379343775 147900238 220863095 626957713 710037660 195342239 220281823 803645781 954736791 639187515 970964353 686009323 766033938 378306310 609498300 526210188 737471283 425855434 935903250 574263506 715700247 254202854 936299850 91793272 717247292 380875513 884405332 495102177 499846552 465650403 550682671 170869351 202699171 966069252 982067906 578214845 747893417 376055152 452154764 302605326 881847287 883467927 921051248 404400332 589269031 813657421 847215344 236635627 925291305 245561628 759231809 545357138 624763753 38550537 472818838 108707364 485954581 473834507 987447797 622754136 626990652 544583684 923755308 110501475 648102882 484071588 630507400 908494116 969021532 890092609 924764189 708229552 982812343 993760284 994437411 341023157 767146291 959415035 967959973 721654094 859755080 174703994 610453242 940861169 988863886 154059577 666429552 145266493 619307098 357703220 403298061 394071556 658395548 48646877 259090888 696018024 823171697 803897398 814946273 493319636 907355144 639697686 688657345 404349546 460007265 996535200 998735002 461928981 668882529 583634056 917339528 222161029 949925000 173388435 663423995 333904124 658374716 335333020 960510324 404052447 990891103 282087880 801609624 827440043 909812863 266475016 547598063 503212604 504266754 534577957 924101893 186095422 833422280 759044075 813643702 84491012 238475844 284609109 844079829 932702856 990135752 24413902 518403351 465503603 849448296 37853348 562977143 425267835 667861387 378024015 687129235 521413549 998974966 806007582 915273066 598013192 903405830 245897262 471063256 240038506 369963859 664646045 675044324 505561325 606568037 891728584 979484218 259442252 636139832 251547682 546298620 702200813 987562055 635050285 974323742 488713629 565913054 211922428 991927825 925549193 999048541 487804500 793623986 248085023 290833465 59962051 407608119 849208253 982615700 258430597 443170172 269247509 656716552 676891990 793821979 901069662 915301096 300504945 715719050 26958206 787623761 420963737 758171047 401886035 838431166 909971384 979464371 616922372 972443568 472578047 775299754 626066982 681774623 538510248 694112341 68289659 810925648 167872486 331960421 621016338 774107998 89801589 849071209 537128317 926097177 43672467 634263873 357143123 690526324 400461005 797277432 271882496 721693760 401729272 773474996 735999600 840547198 894417588 908237724 414605581 995918110 977934383 981699898 254863218 616182189 546435449 860847785 327536035 584518376 713192309 913812848 67275485 319121326 980018029 989221696 638552695 814446370 146311054 656716417 36948296 822208270 513878966 646077874 627709498 629837050 800652190 958976958 122349466 273612193 91202847 898981846 938828139 980853862 311444821 378481659 256105704 377465229 919746689 982096002 312143010 925563109 132416459 835648437 858610239 967720193 174242994 433546518 406116485 410150901 814804211 887888949 861783891 932147949 300016176 897376741 658393216 943765668 833547398 867144037 437475977 920547285 347113151 994549862 3126151 262660087 592415920 729503130 339140445 355427042 287043244 966050639 131871834 181950639 947254251 961968637 895124964 935824397 575275181 823607610 614081277 776331473 819298362 890927856 938761688 997421103 462306083 500103792 339021258 627436145 489929252 542805953 790455726 822971402 404636912 988190962 193655371 223296774 479280906 912140284 761147430 776848137 580194514 744917562 605633908 999769795 726703097 835754660 265992119 558363662 691278885 772527954 770016948 830743946 838067525 841057174 437497217 487342701 583642612 886350039 96310867 638066479 16823873 227882972 294608809 374188761 184415632 454874236 752648325 827412589 892493999 964594166 838681046 883175252 825869808 892430769 75171333 910049533 442256652 950042884 245055990 603271541 982044171 995267098 675856248 852016676 789068756 845724102 579203611 856655957 231779178 551940634 640038905 956105850 282245580 604509517 732877026 858944894 295665190 631695884 665318749 791912771 99110888 455947034 973749932 990732449 809387011 877386574 828874073 928065460 807918096 828465999 336024172 483926272 274214015 448024917 634155420 861060397 559170973 593199355 27166824 915579235 148541785 617070794 324402577 849610859 88529798 135677363 911537527 918306774 396373453 494770916 839878683 948280734 527137965 617163000 804205507 866495793 788587389 950942398 689478698 712228217 681853429 885082275 545146986 646951192 535086333 765310013 43871209 286182057 653899356 935829757 509094763 837670042 476613689 678625263 433073479 487914481 560204325 584884364 188909211 811610667 283202484 283214157 360340348 501425085 493227144 627101294 743730239 977801725 33342816 346730566 807657996 812443581 107504336 731700340 685899837 780064372 591947206 848885483 545781943 574610992 733500943 831604616 709780438 916547632 98685231 891884009 879903821 944675815 97671428 750888762 543111489 900636019 294054138 468691762 524918429 582842480 673020438 712601714 131239435 545144143 345371303 515822849 487646007 520166733 377239819 933147861 347513424 740405973 145974422 746499534 975093230 990591995 500932478 697095306 17352444 402600770 276653403 735853307 22206984 472137352 739362065 967366183 4026725 304593944 177821138 810888952 282834974 424129894 383580570 833135962 347725671 984900468 705201857 855778561 120115205 624434889 257646770 591478855 536009906 775913944 966757765 986263717 276684831 532169344 878886906 935177752 163433964 764015058 848056080 983203498 580664366 634397850 423708873 936850792 816797144 924684218 344712905 705140869 286554464 915392270 509304277 582929136 993344923 999433080 202556368 216428393 694965012 916118141 211502421 466602913 526543276 719912064 526522563 875678091 478817584 913463750 368509576 545985575 68064460 70130377 396887162 941963340 449974457 494516168 946550620 977366484 876326265 984873835 81774185 148249624 460439083 947932181 886507105 968815744 188399022 941410705 414081331 802424763 699185494 882558910 603157618 723474585 344191441 528035050 679235323 766398073 39071826 414056449 397207031 582895173 554681484 783819455 166784775 625632699 293263881 338762724 226116845 614593000 38106138 559595166 803867282 952530633 127403065 686538807 709897324 977422987 719223682 871542527 692728244 805605556 856695354 972901947 545261993 864745732 86533160 754447713 461306242 503935871 533970546 784440068 186472384 712865003 284051060 666282877 984442951 990168841 144216961 842361908 561461507 627972323 142842985 463364497 665064681 798003211 140603319 939451862 843249679 876406094 507466879 825208370 925720051 993781638 618893653 678325522 646306814 782495788 771745632 860757507 765948502 931280400 129896671 340376214 257697330 664943787 586176937 685389463 17446716 801819799 182177445 984785422 25334673 820110165 522854116 774395505 800842845 808273985 538737644 722845539 304853968 421242768 661889660 870756651 433244087 487665449 714161651 895827458 382837505 958088425 697418795 704019608 305208760 306067502 508320557 902269243 777498129 840924858 498948574 978649895 265363495 502790704 131781480 270913010 500113460 597057789 89245902 892502144 477249532 792478450 995837761 996599796 784128062 890814254 523032595 597577010 65169227 175911382 424457472 791690536 509726930 945539942 684218250 850600274 146637526 628063406 994334302 996636070 571280888 874049558 420106381 786122964 664389483 879075998 73040892 908131494 386005895 438986460 671452238 893832068 159962525 625864092 996257138 997098794 992710732 996668346 549985628 902367599 273829901 345162185 557182381 656106928 421891541 929243162 720425337 931752453 979999480 995893530 116638861 626327574 523646936 806753279 151170591 917602233 485719240 556774475 487662601 779612995 768904949 861895662 374079382 404517848 16406962 200418989 755914777 874791436 176935755 882524831 130942740 422644986 477089137 834307401 636286861 958612618 920455504 927618129 611683286 908589024 819210165 930624670 412923709 858858949 860167536 860927155 953860236 993578788 534379827 981368961 30586812 232596199 548964890 581159675 650904757 724263110 444515673 589412988 981164816 991204996 82778093 611052195 574875160 768146094 637112141 644556011 755103482 963648544 894456507 951928856 853204011 942122529 233577929 445541490 386426561 430082528 587055168 794997996 657878526 895536442 930495788 931186284 773262065 836427447 475748991 690417281 706552322 913836190 434973238 781253104 844455981 884443234 604348309 812942378 590854769 631906614 973820786 978651801 358454622 438432937 606535216 812318234 135648475 862751957 519387688 839649081 216086057 524708240 853964615 887875668 511821532 634221581 560934062 920060090 534545095 805592436 278446742 895901260 580912689 821694202 780191885 820826249 91124203 983299269 828270273 839098412 852825140 987366739 339354969 378195668 84137569 345733036 224540244 324910509 77627050 414513324 212155429 774247972 799162290 956279491 81018690 177975064 388246993 875363739 957583113 976049782 943780168 995083764 741272087 791619942 860326081 998764266 699774689 967746181 634764892 778074924 732980679 983146667 155054809 256932615 836016238 884588221 999708854 999957294 59564464 536886825 479972712 883885224 171563742 217875522 788577509 811670782 715420348 892140156 260991998 535179825 241362453 544135797 403329066 792983733 99250495 920516091 649169149 697272768 953706413 972514506 148835629 716482623 821711714 826750384 483665951 674685932 534959671 546854390 33083944 421266480 525350373 542260854 635765312 842964963 782133747 897688918 271163608 922325230 853068175 918162929 48409928 537218953 928245362 960964892 270318416 773559859 500234386 717685750 87055766 362317530 273966784 793443849 873569311 909891172 659867290 740347898 741211208 888409221 616067875 962611611 379494182 916148992 939352098 993327954 504546798 627607544 8419291 912563076 444677388 771777284 786003509 800238864 483392601 879620760 493747375 916418006 249425180 526227035 107161414 956846980 375352268 590240052 106494061 474106018 671736063 883252796 851819409 992718141 425660502 612769657 245599478 883956264 899452486 948147206 541467490 808740355 224335925 489937404 500302100 710036169 907377350 989251268 265664853 955960461 175577448 596156394 187573418 682852564 950694527 991630501 509161558 547285031 686597822 954119969 605361530 779943044 602051512 971100748 748626977 775764509 534187236 605153754 753441144 960602920 990542346 996013815 411977973 431211797 207261384 312485506 277127327 652054538 125676353 331112028 80541862 680524184 610983526 718485756 864558876 985661894 18729211 814428063 810090121 920779180 845240068 964301367 384817563 545457420 27779846 561557449 561520016 696321477 275265727 893718379 738787085 780930690 146936443 478469106 894720278 991358419 117016462 470614648 902082888 973290617 835776170 862409657 96131479 795955791 388728776 529143051 711484714 971371008 209697441 929628891 254717425 267501373 104390809 376431642 805208950 981396910 468498159 663492364 473793266 913214926 831061730 834526439 767617999 888985672 682759990 703093171 998308878 998333168 50558425 458213310 569757499 740013066 325499026 958661966 860884111 931938623 456312783 694287701 907656525 930439753 84097230 262431791 805823470 926112381 791964610 901653529 793020006 832072430 344329573 821074283 674763647 898694184 730935463 997695401 327284943 805661369 53101682 927051305 363744548 370148594 226945683 648861800 96744982 338832129 813961279 835512929 347911082 758123557 378298763 675523153 598356200 684041761 649678987 933653332 661946139 699344894 689762159 701658724 443399786 773827786 960904802 967336670 297937424 302979797 397910942 894589433 173062266 705925712 295555227 462993762 73490675 729244931 509490711 702957979 530435613 917150860 967264958 985712433 214348325 280449176 910885725 959486487 911494633 998887071 268968490 661431887 249495534 899341439 110801692 725123455 109544325 532685561 880920345 991522116 877361316 905204422 377774364 895037508 337432761 898364423 665614598 714197166 977734478 987656200 409011733 995092062 511540252 716516977 773013111 986301418 249308914 645194457 394158099 928061696 359842674 578735370 265613543 560670523 40098482 991860384 845866642 883548519 51620109 643002842 946673470 968714397 357334552 621949583 987361007 999343120 121802714 302447716 419626966 520400739 790668926 835771449 270211501 813009201 81064072 853660772 436360687 893366677 623756726 852820962 111769906 649574788 314090578 555677269 312054757 389430973 501603642 613112683 9417920 182394475 910356248 986804635 571964863 901534456 396633886 881440592 262712530 617704482 960320016 993403115 274985064 478509095 3693828 861716770 750578345 997816269 303264590 940593415 658687697 990639476 782319399 965946928 675633250 821236890 23587609 782047248 992731948 993839171 325755266 736709043 794380118 973830109 423670881 828450167 790882985 816228009 427046836 794422061 983345191 997104906 760181297 823329637 50393689 630318890 408185612 858317310 473376175 947603293 748265851 776711512 725480957 813468313 400075342 683335726 677574520 991168160 560436522 790713923 400250138 857763957 985342108 987486297 606498628 834898933 643908149 855008818 440897847 873118140 957612470 977875772 70933043 80988825 633359758 774388550 926515969 944418906 400295862 677373196 301207992 821818134 37220044 174282088 821410991 924350013 118524253 895374053 206444292 836950737 324463565 988162745 190562400 229924247 335930942 991596725 740066572 803983844 62554528 724956972 990139108 997752520 138748375 675365945 12824264 266997693 694700816 743259869 195229698 424392649 911351101 989953426 363743062 569657095 487503335 975063212 42335368 191042543 295912490 984883570 103077396 784270608 493838418 553229481 625702807 681528972 931067823 981942805 377819689 842919627 918112084 976975738 129710649 140210252 87533851 651989224 571143442 767631716 79885142 852126271 723261302 753412366 956126322 986399235 816800067 975563639 824128527 873875177 400557375 524730877 901520802 930527722 927951100 955474125 334997905 751193096 483018065 505597660 754065711 913760836 147009323 531936687 344166603 629278167 408281680 694195776 367765565 680787504 32930155 498902418 796807902 874841262 78528329 161984557 430181306 814640741 205284552 429135297 832760057 922215310 361279142 737932122 195767008 351200229 25412636 934991838 665260830 930190042 965316680 983460130 281407494 614487664 166927369 383293371 372989235 672631491 833041912 871188975 141627079 604902609 765876463 884900408 107782913 237059706 591747235 965573709 157660005 398820907 255937121 368673308 465902837 701730199 552010605 748870291 916138072 998343859 438120200 546154507 796884149 847526414 768009479 980699707 946201602 985221688 530562466 939547728 238481865 809863371 943856376 982670702 578598419 978812790 800088768 869312261 910163306 925860991 387852734 543122128 457884889 569608968 813467862 845309537 448703798 844870665 921412820 937038244 608877179 901290990 230679577 560398418 506782501 713471128 881244865 924955960 446576859 797678345 23633419 932370748 404073549 926876505 989961893 993841687 931741176 976667054 558187498 710576553 881640095 971746325 422492939 827833301 639497125 682384277 319407086 549262344 592871426 656259856 868470547 983439561 20534660 64036998 863533219 917893366 129604003 930028463 67878200 889594296 753660217 994628359 650407714 699439779 388253228 768127895 962226187 984044650 105786412 357915794 545575714 763069444 855705303 974681614 222473010 716178030 799854580 913694509 497529788 699856772 13565353 832699380 567100175 963234936 578903948 670024701 723110230 990804280 232458761 333621199 877466592 892235207 446074205 679800969 609539048 833064822 14570753 433852859 170278583 387609583 674621677 953356912 809757526 923839598 582931384 810723931 428775775 609158611 850956848 853088608 909757450 988730625 398678693 616095364 385898232 786980619 439326355 756156327 725606605 866184713 938345308 939384165 512870695 923117927 738885553 940702414 825280194 869096890 708847658 876565523 285721780 875391958 273199903 869111562 898138304 911024821 973680787 993151441 846500637 878585671 564961064 944608167 926120793 943573928 806430550 986152139 800847774 881339788 234822261 863784869 391900772 986195993 306401543 382698397 500356330 793785432 260024748 871344991 773058146 976445210 192949009 699504233 282587664 747170995 562853257 590415492 63458740 662760611 141258271 363407314 155261092 367788525 807331182 840312284 361612113 491130597 741120740 913335555 590600860 594745446 627633119 883043600 770619711 799084149 276419172 776074754 417764004 445278283 561669254 712665253 119628626 798373283 607533410 948556459 49366114 771082979 507109715 986977262 547266341 642022461 724897216 734556197 738899430 843229210 115724268 431997748 751423205 949027002 587754603 698148257 237777751 918872773 212556410 687293267 367204016 687756471 894332001 956920454 99825571 139253047 431352957 845669299 971976640 980865586 205069557 707350669 701161054 793596226 331957327 995816882 792562663 817572447 531531768 794918367 938134599 955099758 777692855 883527441 847752645 954448128 373937385 775899581 901453784 927109164 643941682 946271260 443672093 588841289 819647002 868549563 690237285 804836325 698376909 770488069 557107030 635737057 382758597 874839319 51903529 123130120 29062890 516156344 591396617 766076534 508557204 653309278 487500116 560999456 945348030 962050667 803567993 876392490 187346229 496510897 686941109 875966235 813796359 912606508 298008324 863486111 435315291 508265221 521835569 935030309 72928065 78561909 288790559 944897800 720905839 800409881 74052930 344205856 263135965 313868054 28990180 530243155 225100074 869096038 862275131 957046898 90861550 861459537 219294985 745439628 10860655 152519972 724591321 857334738 300023411 725587331 498672630 653090750 596603188 611603683 938936640 953325771 944303529 951803892 138653274 948525565 758473543 843197505 252411158 997377242 317699573 373002633 307160958 812438049 349631233 757538481 58824160 482955572 818420979 878440919 921025658 974742918 86669438 446920802 302767814 956130882 475584032 686032309 358323885 457263579 40711421 915478904 369931828 568611090 799648109 982414260 438232104 672564657 420631755 847602298 947237844 998822333 274633049 784220204 198832067 360098542 982754112 996663744 433456153 588152732 906786510 976942936 4497279 963851491 79460675 969533548 781459609 911945091 836233622 850177577 977529160 993886588 651458968 923909740 615864659 730288761 98781988 785306503 813992928 870394646 38418825 582814007 841167950 913699291 110986662 775133975 815727281 886804614 253266378 956637688 582923377 861725853 290125999 975647164 534782090 593359146 707384342 996966281 279308341 520612414 96541385 996765594 980595608 988324298 803454735 898675949 880721059 955686070 188342385 895110907 359272728 992561419 385289013 571136544 932787494 989861509 460010724 939106890 102662583 919869939 265371882 752918463 548520854 722726429 926352575 942683037 862626378 895264554 751044281 793551522 297649890 470150480 436817540 929451330 301605085 391667135 887135257 999109844 819186545 904079810 799247715 918571948 319135867 528119442 934286552 975172313 190267982 269408684 379101367 933281404 122542270 266079161 4230191 575076481 117060238 829287110 796572607 949611985 133648476 326518309 319974547 652280733 101653840 360673401 28429526 182838970 980188770 993851630 159053518 594604213 338028353 872919754 143553541 410880277 221609151 771791036 832180833 847068113 102608431 823598297 892199154 907047327 748282824 993528963 903424823 955104638 406428319 557387469 629550949 757157870 68919563 719580606 250094484 991747823 917085489 939212787 473717575 595158246 34318085 803285322 508382134 733384066 907719375 987644185 540154214 821846839 527187985 608453788 215134662 282017212 50763472 296272591 389197984 830855728 305534164 748503840 910718532 926211989 377833358 645938290 104841161 746397475 54509442 91637700 339007338 708748957 319627880 817741285 886616628 966692885 477519400 870455867 686131752 841078167 249732935 386449591 866605512 946117010 784890565 992374956 826179836 888663198 123908441 586157287 904011075 946764326 397536390 555346136 480560166 837817323 666557135 735713147 884704196 999788896 231494313 276362606 565655292 584147685 203133439 376069345 941526451 992104752 520704539 915556349 394162745 975461039 473201260 885784197 288418418 630030660 478488497 939555998 164672602 749525863 673386643 833737609 576261006 984514036 521627625 565209879 299491261 930759036 913397435 980141062 108852774 550458570 426174450 841486246 649676816 948257325 516191614 638316408 839651969 848899060 149300343 273123458 405692064 686723340 667662147 882987927 987784824 999043893 799526403 972430886 690876066 717695699 74530999 653276075 626486003 869802083 842701186 846427559 697411211 996094050 966691427 976230531 972989614 981808241 427163772 517425297 944382859 959878835 249219235 261157359 811306941 874323447 354958436 966229305 455813172 743836597 839477765 926439878 826283315 946873632 777043154 902531487 958666993 999332697 649233030 852463855 938860360 998650191 775337980 879363211 516050446 844766447 735263476 858915546 20559771 375909830 754276863 797506647 400786438 702848675 362884694 540363510 572278962 877780253 978476203 984400525 835219400 917758959 118886555 171120564 719402452 971026049 704309022 861045567 149047315 643711103 422622949 543958930 472379316 881368686 606092578 940933762 611621991 980230937 466552581 493395351 978962133 999777111 624172121 914613255 687387781 970888962 622407228 821094849 990919337 994770954 568223767 742590029 438373607 736736601 452468713 906846326 536030497 944610682 21101153 406617923 878575995 903580802 635402407 961975251 990300517 994881571 226722615 430249090 507088023 690725358 957502779 957817277 759725516 969698112 146743575 546689073 282385592 994618565 13225587 627281050 311015647 464549046 925480450 989884458 265819317 331408763 453512824 623159628 95879434 979228609 889824297 912695564 648750452 795037264 664774142 933394549 685050514 869236508 429417401 496467172 555961739 853194700 991088574 993593300 556140720 763540837 326007893 995396329 274785520 685207149 979284866 988622616 264235276 806513472 35202704 793108726 166523515 241396749 482112046 801630498 84015675 92586805 725836671 959541196 121049804 396415846 84281171 421380648 48313254 374820814 791624609 797318756 300123240 487568255 823668423 989053562 770739442 816102058 78417373 473642590 569080841 903226416 847162971 999900421 587983804 906763927 191650649 567298743 297681673 699233429 408195572 716168890 63833557 159544148 333842390 458203639 174650105 872577544 559581833 915974775 967618071 997382867 366728195 837055013 558102737 576970371 630786626 952653443 721315598 838250615 457695435 474922625 264019548 411929726 261984165 830155889 635385248 893669660 112443699 369959458 296031075 667022601 665208752 756652390 488253986 884453451 443832098 879390975 288720993 559249699 743216438 958253163 619004931 635005047 170071528 346156756 734320315 734958112 191617138 521364175 263147648 311725432 639781858 931420156 355156276 914977687 140134336 857960665 614686109 897562026 85950901 439733356 82002494 693299710 216013064 778420137 406450152 510551655 744370600 814676166 991085842 996918157 382393303 687710194 132016048 778079803 108277468 876805675 811416469 949489303 277179414 361048517 695793993 706118481 105334970 497659993 198976771 756587143 166118332 980196164 35299352 103862493 829012036 876231513 343428935 464567034 994982103 999116498 350039834 466080571 532820528 909994283 170441728 996896082 186699687 592537422 295666368 662916303 528602580 573404615 392553673 938130840 419204476 915613213 187234802 772604075 451539314 785460009 692612816 722365574 508627035 542510643 664539505 859762563 141130907 760663002 999955002 999988636 111434064 132955640 680517735 692093222 600641329 856632631 558746871 729507029 568634368 945755339 140992539 429142869 523307151 527317566 4302270 395825526 275526608 565144915 994274464 995493256 357353809 375248062 246527613 303817710 480489096 693157641 796587172 902005705 919182047 967393590 445622791 968549424 851974108 992067298 977743242 988798674 610173252 760104452 273097880 457559298 19687201 417287324 49090540 768146346 903106722 952199660 11028146 550212531 217055975 892208065 714721726 898587319 236535487 784709857 157356614 896521791 92568443 585474462 709723357 824995589 886786159 963727938 617266830 851201038 647404171 905374094 996823452 999972621 389139184 994115432 877624853 905946439 18191514 329211333 67616491 421806099 112634263 281793168 786803931 866975111 47651012 980608314 672682308 674759694 105100812 918909822 387767709 656406146 900822949 904561687 311680847 425492305 277568190 980983602 667886499 955209843 555427235 948265777 59362349 404776049 617331182 696380977 735565254 907162446 409398930 782740411 803006235 812140936 156549374 179911188 366286962 730742649 963087940 989076121 22650702 330620815 634196547 784145850 701546041 866519086 296752901 322685190 477592510 898660972 952620515 959733026 81428011 729652204 480663243 770624553 47903730 301456475 542853090 643250229 696623938 842290911 814213639 969880505 873376105 885566016 256667432 392095427 730567478 982777495 566670585 871876240 521168577 712287276 98871473 945922320 601958067 863485568 598162607 663284694 550324722 559453443 663952815 913077493 686367987 928141072 148295391 614725439 535500445 769946985 91995213 539915614 306798834 394507006 447249753 639637101 575910894 763047077 94277693 656783428 318925630 457088462 761928409 873673717 847343951 944672494 751434433 900216102 559999445 713232705 509800948 918015190 926629731 946357940 522770536 593269797 700308263 707726676 789896404 984084136 208934533 997946691 144428116 642395770 143589034 735168293 388789478 895139080 421202005 866305502 593933016 634143920 328069825 707355896 60460703 170868662 728556973 889962635 540204404 926178247 751400078 868639058 947889429 995218733 3289656 69877494 455071454 884893332 179314129 877592829 520653123 646031645 787382820 989090350 49669304 521982269 504501523 692444245 848913103 891391902 340488861 807812449 591876836 599385994 229648585 706942612 575925293 823126835 816262583 861082254 968818081 990518288 371363352 986292418 26035093 978938370 749759876 952528690 349827809 496957150 45516946 136099609 697431495 959195684 182385541 592978073 984781832 993947055 553211551 901768368 85748673 158955024 211915109 219858491 982575863 997660939 836305065 966272225 742701208 841253285 986578935 995407308 519248935 606290638 126006106 345602779 30198839 636116835 88680412 636752420 368510691 697974774 960714959 994061051 455605466 784824066 940668317 957334583 421894271 705467856 371257506 932746061 316252012 696433818 663972179 769209922 736645311 788753171 949626323 991410149 872295834 947406196 113803146 464882709 511197419 515737800 227749608 567647617 3809404 570257056 878955010 906969528 135859602 537347968 572955883 920086788 984897653 995867234 271957827 511864787 735087017 989724924 767515352 805488584 535189013 728323793 60141959 264687251 840667344 850100857 732693255 934150017 299116394 639452072 26264431 825187501 350326264 704629245 779952923 891627417 386978546 873378287 222744347 389874006 987923970 998643751 745447085 887181902 741702011 758887760 557626707 765170562 902485686 982270649 915986014 954498913 556261742 991275349 431392834 586920606 108363453 241565088 48714812 801832657 615941419 652017436 315243790 380850834 852904439 900982091 900999942 945701564 34706281 873974102 795237464 891303057 771067647 799753436 994850020 997117706 298152006 772506053 721392793 853427054 218995272 476962854 522232616 932075330 231591096 816362257 459251941 614780250 647621259 851913437 940230257 985818192 113748044 897854013 22374581 382219379 958023497 998750859 684698064 770745576 312938866 967019339 300451314 603492133 402856567 863686226 812623990 895472741 144744072 515878502 717087780 908847187 949441986 980330080 915037527 992461527 354225775 727606469 664107075 792003664 151294373 684567702 270720777 629544408 443961213 970375797 503138584 738555391 509827969 621758678 266452091 457457281 809844703 888592501 358698674 490618720 18393100 62105048 654128434 669423895 399686416 902006194 858357263 868096547 795617339 948558947 558687559 984646821 482766689 880744170 914947871 916872015 35957776 549353667 997622205 999825667 523354108 695357776 837565123 966464974 173540059 903847537 362094786 534168449 935337120 995852649 833932731 845341723 253053999 865622579 134253772 238285655 616256404 751266536 272430730 381012359 201899283 624020659 48662175 932864302 112420761 367872204 513904325 562746657 673842008 801808812 355572531 909459759 895582418 943835467 85409402 696601200 59850954 414038774 538226524 854626311 991120524 996903640 659371043 868403507 878215195 975299122 683424387 814223390 786746 305999834 216367371 365223121 934591187 958473699 332004153 332190860 860280718 997455338 649800773 980402486 731048311 779875978 234393902 781847187 561927870 601010833 227417728 755382620 448233870 723188404 948650448 988096948 100656717 394381174 923466528 975085597 229106626 961057124 862965845 864361872 273453998 288351922 661230643 832102127 481152132 855388140 611910337 918396763 808443554 894876704 474182015 787309095 224336162 437293862 292857975 765633209 433975431 915738632 280418538 549511161 940712296 999201494 920088297 942224317 476692301 856782338 947406727 992409365 482964076 859749294 699690098 746484744 346459882 955984456 919064635 955407604 841381406 954006150 423890115 839770787 317703941 410484048 336990003 786017243 893910183 922328978 450795462 665578762 67158407 257028679 945707761 993356443 560542148 572614617 938671811 956937317 285949816 951089308 872152438 969295641 662140223 885213212 960259417 998297658 336719513 460526121 618039079 853170517 16968218 475624133 89732780 100155247 426201764 660998248 409108563 821052659 734213501 959884130 865737745 952445590 625023864 994741218 496037815 597863781 60844466 821311529 61083582 429718381 974799676 996580163 964890043 988899067 774039645 960562646 755683711 767897617 590284412 654427430 987545905 990510570 238676352 743668097 742476553 932766416 841892 825065861 423381335 747297753 661061981 740333833 206675801 767682745 17332570 526764715 96135674 420255797 31956118 394172160 372317704 413953827 435339915 862097032 537324216 838136577 69252993 612688738 213580579 989257905 140458859 770312356 396574204 437614431 180158674 227409641 285286118 462123632 596632237 781425507 274769074 419138250 21321598 748183451 261567641 743609166 665714605 766423537 133973625 899520108 269925759 980121700 84540592 323515080 486900128 954078448 416780462 790605225 823698927 894965947 75347180 114935112 857297556 875586478 76102379 930652324 426843810 783959728 9995311 455042355 305998500 697572596 360773460 969027244 191090791 309303106 677765725 704679300 759343539 805815652 719379535 869399511 56951610 945360816 321723202 366589798 448911476 681240971 586312629 599270933 643759322 726526537 14210932 108145541 717381330 975015549 20596449 316785286 351466755 392636376 798440714 901410715 541705770 874299834 914082125 926034817 21260202 269014858 219261670 380483185 98323306 394405840 563660066 775893455 766355096 886767161 896440085 992193529 799174458 888028292 929882083 991743362 294716488 480652514 752779766 993592406 234269627 285523925 125133124 498123027 350783574 351996212 619087651 718799845 380929566 926547648 701621577 794062962 715636604 725583916 851565922 947632462 639457427 794592883 339963854 702490066 140364406 158956132 274557545 873818127 935164919 995289815 391603048 909801343 953592669 994291842 859580386 939891412 942120847 959857714 791357031 961235987 334563905 573864003 966724441 973196297 322891308 700900550 818235684 895961392 511961981 740669415 251648534 744932908 852965670 954512051 881100472 981513060 161507368 403773545 983879299 986478576 624463779 727543354 133305098 310309105 479960422 638895068 281550969 393470772 280296750 596259069 698250585 917565639 646003941 893930916 595572943 808549782 547738028 844823729 345182825 768385901 716838809 781578045 930940823 976100026 279709483 661662832 814633015 880029000 249237280 385553358 317569305 513116952 494603555 887131153 973813465 999667283 780477069 919104463 752557550 868654169 439218220 598328026 55145202 178592961 833206144 853665003 585063167 790679606 988635961 993730937 8258288 549205018 290284458 849192883 888823210 989646249 634862917 918755784 725967640 961117880 892632702 996495040 706830988 953908600 924326527 927584236 240149651 826156986 257867939 647344790 997753836 997985317 384821524 663739780 483704968 839186729 953821297 957282830 111742918 722414004 436940015 692690182 711792445 928280900 300013986 842922732 16518330 68866512 883416612 963780250 362455410 642251596 299201639 723083327 141960205 446150708 621960762 665378887 560354252 753412019 925482042 979520590 467157 668255358 385833435 973679279 867667179 929091063 422800401 724628260 147382267 230801573 80771205 313464502 490483546 555248108 936561036 980302661 29520148 761471253 830072868 840729876 78819592 751564263 624445504 772220511 327540330 378547067 572053376 722656316 376015351 502605284 953351712 953510611 4954300 623834131 970725658 975660584 332766483 629034036 510634663 800111234 148658707 785037634 136988613 457011138 974715713 981378030 606509521 962729469 460347197 487841622 342635121 836084673 717091718 718705813 504899138 544324951 643234623 755191773 540355499 766472504 917848225 982944889 403788897 447768905 684099222 974444278 622475878 975593568 998483899 999887350 31525392 973221437 917547271 992150966 999874208 999976566 792696174 982128203 294176688 593571726 885046055 926780863 220122743 409172965 977125995 992424240 64776446 466602909 186863141 647399148 700031364 838663443 342174228 501209180 483755085 874801559 490168238 527053710 363605843 420394809 295414241 944262412 101384411 739722883 54383687 635633692 705663175 951184250 340208420 886994289 767086852 782651083 35054075 485715455 911500658 932043124 615128730 868246683 59515209 466206525 568239605 598294365 880671568 888212202 198026135 558361164 195850701 786764436 93062732 508057118 87758005 188010832 914456898 959413899 255961821 621455075 824789889 966805952 379850440 569087162 267635452 664284767 902709065 927976470 508738952 527472239 970575212 997202306 490178614 586741164 295475365 355944129 224172890 358530162 663986442 955310002 242042840 726700470 24027622 885785441 983320436 999980559 187698212 868753738 299943031 483698054 566833592 903512801 704985500 766107989 77727546 611912387 223028362 994010873 139209630 324483458 324003230 936595830 61145678 626377203 889849264 976250145 492480371 583798856 727016502 822685861 186303081 697922793 48652736 776227357 955735570 979926982 65828111 757375963 830513168 904960067 886133869 960263029 921426866 991806539 411154614 607956805 565828708 806681904 825703445 874592312 586393599 859210407 702142870 813994698 888889023 956410338 460686456 785992947 608586096 933936069 799999649 994010175 283422763 781277497 723344879 949550395 478484796 700882574 51025593 444863178 990274290 991876316 743421499 745157702 227851777 509195185 710205079 828495780 94335691 588425175 541897635 752479328 429239036 727395028 377425791 653822020 152428077 735416261 345376729 555391885 180784282 271012674 443721840 898981541 373091553 625542431 497350987 865813112 365875418 480522680 636189427 736821094 355308999 868967184 23749926 422719302 217079186 403579190 508615895 583395018 40602721 835689139 946818978 998846195 635148943 792109966 93771229 826594431 946866719 965050503 518350447 604682697 786938385 908143663 97179 879633019 372993150 404958764 976240313 980183095 609999224 802546643 53931446 594978659 535748903 890341012 298747655 586840246 94091643 177920435 704845080 963019393 449445269 557504394 419014892 691055721 628732368 636682995 496697108 685535796 150031156 970846879 216489360 396951937 986292902 997189793 31890389 862079735 197736090 626243521 237520013 523086279 568686107 741289936 272787710 614057842 585256272 621707682 551308906 725466916 862334749 930300499 287477210 628697373 40739792 399082501 810842059 871674612 617365205 977688311 825201173 868857501 274646253 639072115 275840186 835176425 864757789 980907957 951439261 955391270 999309915 999670137 323613675 391635459 245808373 283310734 212986239 583911845 54412086 79733072 527923827 669276028 210509166 468078079 306107184 557887395 237735688 975494869 800315764 964513860 890862149 900965856 393997479 908585627 605154890 925968626 326905237 765712025 331348861 977753395 979654723 997094262 76514025 645656743 840441478 929755303 297793588 820222645 320622761 728585355 633960185 756636604 287819147 359496017 729605138 834370421 163660559 762695251 259987787 998782312 710024550 953021409 906647955 939882321 155356435 173314055 232373972 593445535 855267017 985054967 830982086 967612836 968878437 981176434 937645091 991742745 287586860 490082606 158082087 532332691 154724402 155649561 16831760 848758265 721925189 884077614 909653850 932946909 417047240 536350851 644635645 957741584 473339251 694031205 636443469 804940241 618242485 683185286 305679215 548296034 85135136 700824738 684401881 722829198 279347623 425603911 864189811 924503387 620235355 963603385 950661073 986003341 478600457 917981138 547799978 729606454 941204455 959515994 382351485 978635222 267276579 851039587 962575891 998203862 852491265 869767613 471064158 700567142 102941606 456852418 176676385 641334507 718240416 718505271 184565544 418520939 859041381 925833246 237247226 384024399 51472159 581733681 883352795 977213089 4911787 727776085 403882714 448198608 183481654 267982424 528326880 863161522 208507909 873617643 281353257 589206721 240233784 421265609 740142287 930904892 954924468 991790753 641909789 675610963 734992090 941048864 415757183 649383622 519521072 703012994 732408460 982775459 147477149 674593797 863931117 970462001 664795800 725936263 814419079 831452925 405490020 637472707 833723985 970565908 260099904 830247950 191657718 914624708 532117267 557309458 879785768 882685365 179531317 845094972 641632380 775352445 133610945 401260594 438331616 546802874 568120553 826158097 851691088 950304627 625085388 643387556 246184017 725734619 805834422 962022216 66673278 487807295 57601148 841638130 71500435 326183641 171716414 778878975 760047623 768843260 113217850 741450984 374999010 748176145 458513254 478524261 635147770 856303992 457192223 637217983 336102561 555754801 780940109 852086434 498068598 801659996 340409205 816445409 170000522 860933370 299717420 863493729 108344953 640772951 23779349 226455099 20392879 868828004 392576620 418440673 112336968 621313541 187217301 249048569 104919060 218007102 95208450 417728311 470802772 929605055 48949711 577726167 273018117 556976007 73916354 200216626 74272040 94104765 641970391 683307949 15667733 890900406 412683443 813795915 677252330 740744519 1865275 940473809 748875271 764182511 188120381 398764763 998951820 999311014 872804242 878885244 610765271 996383105 820820334 920205387 333554923 459284583 769743323 954401953 846180825 994318958 940847445 950545963 443617119 463055435 812139614 860198865 688203035 778007796 154202792 262180315 358313839 389244736 823636124 999634777 650164839 705154361 186592198 979652503 318346362 973990175 342091973 726571665 946312748 993920209 391592721 649025884 257008005 959006762 354172772 507060221 335225047 814945034 455897431 706996080 613496535 670737226 589923759 751621694 223932408 622363497 809469381 961675496 652138046 800715436 30033169 346853260 725281003 741541586 240957521 895779003 550019718 788144582 638831508 830388654 376756352 694283551 322026186 480746079 562277260 896015731 492229923 704255261 521626191 904539802 642741252 947557268 316227279 509612725 583920602 830921073 723100458 812033750 826086560 860921303 335918629 345795424 979255593 986943806 413595728 690463544 679293844 685259373 732727876 852446706 470460282 708664091 516317849 843925781 923010740 929998076 67551917 288191340 817605822 974785406 442985256 596375419 791262974 874166004 187825090 327349881 725183185 966214746 54603422 156201489 767476491 860855614 799081284 874715890 139297611 409846254 566035193 738030132 337330879 433559582 753773267 784813498 31782558 182683042 349800769 894912745 57190807 431090504 179748804 784897585 40207227 738331913 87232648 709388623 569992019 604447709 554131323 597087021 142139626 890478135 871416537 924996814 544872831 551130471 120622646 703809659 597847101 862681706 42048477 634024436 131971205 330078591 447391567 915385401 28643641 774215369 927465857 962814128 796581129 850194232 635369882 842189583 390790799 576662218 309979644 738791702 376269731 661722135 595435010 809724691 175529084 261168145 364021279 730706462 249996260 957696017 130655791 320816982 833205042 979809681 242146109 493477105 210206179 384266082 412963470 450197610 320653333 785532354 57868524 300219757 770340741 942776773 192233635 460014048 701228903 705215291 588182145 590863848 562715637 997510278 242500838 780027847 285966383 454763632 870458077 968345099 557754710 837784993 104526839 413161758 893022177 898536846 564803785 590001466 958595223 974004775 802223380 808039559 487737812 850036646 823878288 995678089 644178754 747025487 269395498 792659799 469817244 697837318 542141916 700907383 856731833 858801607 110082936 516101698 549646899 576564382 1353996 133506862 651486634 984856419 732012668 931622447 41049221 584560346 630795130 893105978 629934069 917348533 403693406 645419007 655195225 919083360 153637629 200031672 765385241 863733260 235441241 666203516 708972932 944779633 358873176 860805347 907471921 922393131 958249066 985835718 494170556 532302923 442270630 494023567 181105872 902039849 305023557 900414017 919096251 928476093 351461066 590795224 139854816 741118259 221890050 791978526 48417462 954139425 863773070 988986744 634410630 857307785 661750140 923132476 639789168 808932742 66192385 105909028 765699410 810898294 573647947 812288354 222705084 858248202 161541077 610480594 769569417 909010813 900705271 936774411 764357671 877041676 969021073 971911383 787810659 999313354 233988152 590720134 659894244 914366080 102536607 745605202 356436111 959703731 791923773 862589175 640855970 774899431 260212911 743103327 688138331 768147218 557596255 621493341 817837417 983401520 483037509 738948660 251703488 417113146 332393092 445369312 293937410 395070243 830425774 857856595 353729674 592963051 178263319 965997394 499526414 705333633 50151673 90970716 823168033 989717005 115627167 806516921 24413762 865633800 351424283 668452515 362989177 774139426 99140441 388383834 283869653 971572518 257328873 273910851 196858738 501840228 345406707 810229260 561955365 703952947 353256941 847210336 583253087 924888168 78332768 756862083 50247919 426912915 600450739 885536372 844203677 990209930 297061848 547924384 569892142 878576218 613170335 873386386 293313235 472516622 875314377 903027147 863703110 983706859 301604962 873564123 165077621 564682941 439999980 762765592 43809735 916968636 330249031 962560452 815172844 933678381 3754420 567936754 541464020 570757990 967431106 986632416 928805648 953881268 272609283 706090298 878645251 931760688 241457644 752661570 758349903 888189500 599763279 759522123 642035883 722246646 974031219 987898711 415046414 445499285 163098386 552742526 798669593 935759989 514489386 760332005 721772844 959912155 826334659 937270209 766354846 786596408 238482721 355520670 748970706 978723937 327245658 329091575 27520405 905084283 507675773 872183694 977954045 979469579 893318938 992752906 670794019 671999177 105204624 746486845 513769807 898085689 176067313 518382210 83615692 244601921 630800727 972229900 918519866 970463365 955266914 984812784 549716835 646949268 877292738 916463538 737751848 764606283 584950270 920371707 890399047 988777925 843166934 880424416 546411150 625065171 922616391 929385152 214927193 896295666 756716074 876061930 778003484 795168448 541336896 591768042 80762756 674319070 907247603 952256559 18460013 680171688 417612947 887283320 596408821 978137514 781190351 788818022 75559059 300159321 119710342 240582388 121436761 834659393 758954200 921321206 201213463 357662086 363542579 580238598 170438400 526521469 916946938 957170193 612014585 928028811 764166008 872066383 756644730 758808568 769813898 975994987 912304773 949401390 551039098 591700064 253556371 458208321 443398864 926943118 623783553 688045098 806590303 962571903 32294568 906627289 238838965 289232220 733913277 925934576 88725112 807042489 819978522 991508616 675554626 945909865 43857408 648532615 243726850 675968482 106282139 927682187 118203527 955150154 726741066 821053452 559430833 901198347 313684590 460020562 131888458 808780469 779012848 779989173 168314333 943017140 548251585 689266414 57427060 767191794 25122277 106672081 418339632 522783109 326996583 989437853 739305731 886387034 586355834 710517712 45978660 875806316 31461295 626998784 104977705 846033775 227300979 386956925 852439650 914615887 368716348 939014988 315147285 961099524 492786979 829779392 614365315 915516115 599179772 904457504 981782053 984034102 614546759 669084299 659628357 942315873 668160672 673616708 191855211 954056435 975004237 976332132 695245366 786018568 319227922 512125086 766500467 964071181 733487746 973680406 580012763 984110901 474805519 951276797 687009848 956823194 445836451 776084459 915077899 955791840 483337545 544063980 865343973 885781266 9640723 217861925 936273485 987867358 46841919 810956965 790443736 790946888 608092354 686541998 176562524 775226755 467522915 925673660 701697287 810746440 486202799 918581429 149466870 580249763 777326990 949283543 655538190 936390826 357719434 931952766 551002198 887276641 875012591 895865912 342213590 945975334 479624875 747454628 242542564 984422558 66572213 267801669 391552297 706592806 821060042 897340790 67355894 795158383 623179260 727296578 489830709 546456698 665828587 978163095 636218208 877186072 410368512 477787020 297104817 830298713 952339135 958121549 761446672 881991060 560289404 671386909 787513970 867954498 409983084 969586349 357175216 627969317 478653413 671617479 755240916 872388508 709914505 916663288 746097348 940683980 582762703 973116866 137740044 596157244 912670849 918115367 872696266 966752425 60367925 897844000 237132980 427910480 822463525 848314191 319713667 399485430 656903399 941574898 467365920 632129910 583066414 695423703 372570101 548712531 796277790 965189486 732380543 752439032 984878808 994590814 964555274 976408493 409612042 577702052 304178809 474059721 961666444 999806317 956192005 957169389 859890633 866425927 188352702 669287648 733867608 922437443 562269223 908662186 263866360 548978182 479698529 615291723 708314011 714121089 778591251 970774053 463197826 894315467 958933529 974139840 272370768 990417646 48901772 716555823 198725447 353279282 933747868 976057383 568187700 861443408 517472441 527020178 867106712 928508960 661718333 779934513 353147836 434405980 726521418 914452685 491934653 608453984 873489935 981420651 399377655 989370753 833474068 980348270 345371533 463432485 846323380 978066884 816278939 905047881 271548948 805331850 564830653 588814497 241848986 590181362 633696927 780935020 206544039 290293079 800835039 922309012 705622507 867427951 403166179 496930594 552840789 689668777 790999175 958317411 705309371 922390381 385685368 788170165 239939176 584666771 648752293 871670162 993073960 996451600 265648391 561904733 461273585 663889245 482602656 656975202 193008995 785962604 310380029 914956894 740187359 795549275 338789122 682797059 817251555 847862119 666483599 692604387 181454232 735832465 906383892 941798488 36532574 303239874 642766326 995399412 832459344 992920521 256929023 841395695 161663722 349575691 812212385 901484638 534728720 697686251 488792541 802871151 501318692 950946704 801382337 936773470 241237046 655916098 735145449 917589953 46435181 393177422 601282752 675948226 574347799 717324621 618357933 753350804 272986938 845102002 251648904 985185197 79923028 143155785 875811560 916022161 890309136 954085658 725816810 753924034 255051119 587766899 434655829 516511496 134747065 562531223 539088657 899156496 342740139 968845237 766659610 921364419 307559117 502818634 169600080 566278578 827404953 986352085 796765544 814281865 326181294 607349157 661604437 674574271 344988942 764337865 589228432 702864992 303729523 905040131 500239205 578138271 602468457 701189353 679307931 756403063 554135872 612375758 816420347 869143164 746986851 855573827 253864851 880447338 199609565 760247477 116393817 972798819 792704052 913078298 542607236 741645112 795759962 802703090 839476496 883060750 167781575 523683837 815327296 942760747 588741475 829631694 530813119 534113308 433160475 801266013 116266895 901250047 995210363 999198016 470318638 982853036 868212383 878912499 439163942 979809029 174205043 835600502 933528303 969736890 686007443 694975108 411908979 937467092 97346007 759599323 739718960 839756773 292059060 556698336 485489166 505311222 564282157 727023205 479753082 713441467 235180952 643623224 272446147 909423790 39556294 63918394 859047388 920405796 183772713 821552412 216953711 718192476 974531553 995059387 850754956 985882741 806552623 953090129 393102046 912335646 863773726 918891666 167145608 226685479 272699801 383463174 685788414 813948354 169104267 277179139 640360678 705957702 201390254 965759202 150942902 996939523 248042567 544944881 394648004 520708036 37443308 183259388 575073369 835191666 33561431 199812131 535038323 576889644 969745911 998459951 551366219 608506500 963831158 974467156 559755735 575303857 484048246 617866255 355091302 649647961 580014433 816865451 264366972 935298119 824797452 985984483 196434329 783714099 34925601 944540731 833655926 915821436 335408676 543692882 1179490 334733303 418466078 988263800 122810863 216328556 834617395 890217211 189490641 931312069 359709298 797030999 217438521 987122573 911483667 998870032 360709656 576055341 119639434 716144778 697753941 970920826 691655820 692124380 836131106 995093392 265365773 916770263 835677661 992736289 257735004 945150711 984441520 990281946 773791024 929561044 522437373 724064060 908687808 975351166 549663721 560460343 546151908 670004779 887712216 900894594 397438651 706704661 791523479 928079370 775517536 869673783 45771985 695981054 422860528 871916092 34329317 205900732 892853995 985373605 911610898 996154608 683648170 830215635 234744464 261758820 527145226 875850652 881391510 922547123 379584215 662685891 937630029 999506251 452659506 684955228 239547107 669929794 334034828 448460221 296090944 785467578 995381012 998967225 81940913 554689084 150250125 932860213 419950267 921316868 820480988 912283113 904253441 968490713 732495411 818709522 756236230 803053494 170726750 457278371 358290565 427928992 339120721 714438771 520029678 739660347 146627671 830217496 93431424 815495559 613953419 643869120 190228830 537376735 338432688 576230284 106634108 342164224 116189920 491334274 483272089 763132001 650954426 670439886 17760789 549328773 667594883 870674208 329733733 465594741 414549131 660960881 685694753 804124801 866220458 921975596 211833379 389078794 634391673 931150800 465497955 810544394 297572998 346393342 154076786 843942236 545307083 560824467 337644657 596547976 134096890 134310145 443427312 726263814 953616215 964811424 175272052 966930761 911748411 978946252 278593693 463909873 967140957 987463184 744833472 887981560 551553436 859198958 206842397 309073569 457214424 548690126 413164109 723993388 679846544 784802455 793538017 862358830 159572908 819135017 645391670 900425454 7319116 934402743 26445582 82580937 329174524 723161815 487605998 511191758 808203316 960184192 294836105 924322777 875987763 928860318 674103089 744636705 67264591 678226165 587469187 685837563 882815627 976428203 106446945 408208538 9470803 557024197 712685287 859775203 254644028 904385645 286454117 601157819 393526553 812761020 413610051 457344143 534856278 545179035 531127462 929911895 153000717 197252466 359042054 509138958 65966085 109857935 230872994 822365600 168442674 833763511 235579330 243775169 231995009 915046775 956565779 974533714 82992170 262889998 706414867 732012851 934427479 951872476 873663147 954397351 20504052 863664370 145655882 873920644 956242605 986644650 195032158 200335026 570955006 935416520 79583845 949285624 105907126 449888853 348681561 534923575 771562236 968462580 205105343 672165640 329919722 846401204 289206106 550811713 53551242 535302921 264844413 522539467 260434732 454005507 69656021 327684377 201710735 257137047 828642864 988928741 221781668 751280006 766209068 929242294 183274094 740986918 99218460 887862316 848799590 934071461 336522416 672519282 981356961 986811309 168879414 875148360 384053626 907799960 787768053 823422021 305341257 641583271 869523597 902045292 377998357 519261684 48287627 234557557 417183344 743549787 656126133 990540457 303359113 875794551 752394211 981566103 124658559 910102281 714755467 794570483 741601074 755230144 84856937 165455905 645194133 845430889 917502939 956333688 37996090 742716938 769978408 810056651 710981768 990657365 754608832 982486704 626907536 660180941 993657932 996315009 367312672 479527012 988208879 993943885 500339852 511793127 474026237 953541352 633253101 700813499 863817212 944360791 398431873 972062944 174135389 884520838 944648299 997896379 765822160 902643166 379111433 727475696 652123196 910499031 243497272 760058143 143421264 185059105 380028156 941515421 698587603 892310787 854903816 933378510 707803031 965539842 984447917 996817352 100084474 990694271 87025238 229495185 643995161 648039838 254421779 764696116 658730448 669235798 865829233 901294228 769699175 942872658 302890657 517275471 787498395 884675708 678481741 992184259 597385311 721424879 586051406 683574703 570766396 757652232 913761798 987457087 461529022 755048185 91604438 706211517 590243830 874321417 949567514 951534139 560560779 826423711 900029876 934748405 821552518 885118948 400562432 895056972 857862911 886297748 716102382 719002830 186448059 473159772 975971645 987625123 441619007 694790973 847930005 968060780 400701112 434019987 984619049 987498771 630248969 899802511 85435828 890485910 450439003 766870767 897650706 922240300 841458705 904532813 432138242 588640778 649139178 855176327 806186756 861249764 345894498 455747955 578134000 651985019 57475505 149594891 99258612 387183426 868305655 875245317 718398409 968718609 856118490 983640872 846673032 994103770 803563122 862794998 322315510 951950084 320938297 343273616 481955778 972657810 287420308 986668344 209973367 739880117 56188360 849006842 824861549 986841127 23283819 156205744 393227125 497187583 296232417 996818925 44737305 423777887 429919679 583023789 553513711 940400275 384669825 509640368 500751029 575974426 182610878 643307085 800077203 871797630 573369812 618574360 129956108 757002442 759036888 872964575 527060754 954545297 256784263 734955343 536067903 891707522 486523755 553804524 789444839 964695705 335574996 731403007 94077716 497425266 843353581 978137300 741932884 853760844 745491746 865460955 936571275 945358738 65095865 251479559 336197160 787490453 861486107 966522675 408861563 974106414 74291694 280131898 41211388 504125845 840687350 850563164 652145548 734918627 704783757 762679931 295744075 452353256 31983921 826460983 316157909 924466746 199311576 221286038 924526894 963224459 291284660 344073909 351602368 862639329 641178296 845691530 672362708 992297026 943356803 984709033 236215156 309105818 560216591 630744753 386549059 412361725 886568651 964124684 309200894 652254301 241400318 729891418 877717390 881553063 787810348 924426497 265242595 446874516 104062062 273182079 567241879 925024105 322790820 475630081 80945869 846005025 501529955 744898963 546081089 671956489 814423667 972983158 367036909 710847891 890872320 944782545 673070071 774540041 844401232 906707903 118168535 831405827 227666537 324793178 677638090 875768341 171434865 224430489 633346037 770175073 267820715 510601226 886031703 979116963 695346892 936229796 536765432 750975166 392085275 638880899 943491408 955485344 20112647 595676458 203757171 445971413 52880156 685672728 656738208 760055468 310205489 997821156 416254166 979654261 922242557 996847354 974114935 997337910 590464891 942961001 170452935 463842304 416411760 718760594 176882027 230220063 372433373 731116534 830819504 884247357 523102328 602164534 717847850 881335415 602497913 678884375 956414445 988220260 78549632 944246428 526753895 580164142 980396493 997850703 666044347 939867866 273117476 602872407 208345649 211734745 470946765 951631048 953677312 996391028 6859860 322491302 8889945 795889085 734120250 807773727 260524043 534309460 468401857 810372416 497038016 653125887 135990560 489932498 783968319 894759679 737975596 760244937 148623002 289278598 953129523 962358866 406840900 545999319 68732838 310631848 751635884 870974603 938632298 944106252 942434980 979844102 926587266 996181356 497089717 656180086 766916343 859915090 830777303 834325988 37412361 687565485 55576584 815416080 416883657 474317949 266159321 601019428 357701642 794359441 436436183 744855541 206682711 277023635 473848275 548117169 832912046 842290003 964391857 998648834 201023957 821441288 286538883 573670663 104925052 262865715 675976536 853654553 70128035 531931458 122895364 330251532 597147372 982392763 422392941 546014764 856157227 978581897 398412840 461658904 768975843 832391938 658158997 981555438 382742162 491377602 947235065 962527481 468099971 995398521 662714865 673048182 605500988 688661900 839467771 939500932 423518556 758544509 350425307 717445649 359993141 518119148 584998465 705492544 631151253 875244739 691580799 792670805 156862425 822033907 796880173 944611267 380530502 580649985 10157463 307522503 146100131 289009743 924662302 936225724 490835309 579560074 709087486 902290459 477875797 901482551 264225338 776104884 344190627 450313988 806224688 988083269 644022118 752091718 568964565 572797282 248632948 551631489 956271987 961430503 613331754 898036257 469798729 578798379 617966551 876771079 743923477 986348433 550731537 904076456 363073282 914842361 105748725 281212242 95010839 899818408 893684109 953691237 295292971 395702332 221037567 545782312 668343548 885398165 456187181 596648748 494236211 786393164 328601845 968502601 873938855 983159471 960075231 981897980 843220621 923724370 414251289 797247843 650494131 958800813 917520601 986468621 245157344 731550413 926090610 955686125 254522466 315661829 637811444 708873935 414594914 669098149 900292419 923022628 465773765 668184339 68784193 942652678 636726649 927597311 392400047 610368350 824435639 893963144 907553952 985838896 984007997 992514119 125996679 503408669 892494943 903753829 205294041 870676771 844386790 897789497 433007715 560592089 672728749 814655686 628394786 656373067 586694139 621671821 374699131 376277439 99807343 303745972 244476092 704185474 216401197 621994723 946453656 995183296 570442561 727415333 773792840 802428418 689029168 958202795 521787867 638016399 233952995 696635383 198705623 319954593 656594804 683066649 774202917 981444227 170326036 199848722 681103554 917368071 917870581 955801935 122770800 163773060 990655545 997652335 764401376 794233713 537429571 658491371 661770573 910236805 16108043 799611339 737444312 806629684 713093334 722379942 372673533 709190634 734334541 840075585 621678746 919433131 971932043 980079018 766313732 809397109 583229181 664918641 472045269 630249130 989327573 993472349 119979202 373144642 322965701 827991207 522162967 688875959 73329016 718104146 809511093 870443863 734115986 906398638 786901574 936902534 947882365 972167996 486657271 766959544 11734237 223969746 335229251 986034648 844223847 869585834 588886871 866983258 790516676 801163439 549758555 742684001 564256315 651780696 325097604 494553740 462979887 470665305 799541524 956588622 233604383 519357915 288337840 594542374 207620874 873162115 155791355 703767268 354284700 888162549 825515958 951716423 398811765 541897603 228568506 964255216 687307821 847013839 94317176 348446262 570841408 577648679 766498085 926303755 457841054 656498172 303668790 758760078 5155606 858573760 217325957 436499351 417437075 689233046 312837901 951144520 59422175 467190408 108822212 979310183 649709697 968870211 516403163 840949397 375374758 560035107 415866908 802742327 451062031 887076798 3341297 390843959 855589032 984457266 82778501 616062274 47835950 147979216 211305835 878971112 742166774 988490462 267210033 567676873 309193412 406909462 13678741 21999830 652979693 680241608 320228839 740905386 206015254 671574396 233839061 912388559 787705781 819165587 617942697 919108354 547079049 918611341 70075704 812328949 445443368 965723972 976220135 996072931 904422759 974036851 685874019 819813466 408030453 714284759 850610671 917500978 540645720 809780718 193200309 384565782 792376018 965300821 662540423 918944344 340401204 385834637 599251662 764372939 110718613 372899507 102204176 545705433 211203990 354642051 369296828 753395664 788967413 814943132 467287454 961511726 147972768 666416595 424949901 545595915 404937591 749077256 456991326 496211470 807031782 968059694 295054430 740316908 750555235 773920771 311641590 591426054 703521333 768211838 586205066 884349308 694361429 765232447 96884968 185007469 915892058 929287200 925132437 955761878 625339137 671692675 432212350 786874409 703698766 873806773 441512926 850624480 391398444 649634498 584887365 631116700 793737414 985374389 843802292 914253402 205508742 235865949 617429243 721418980 112359113 868556546 296996739 353718002 564605340 825265888 803685254 977444372 131785762 629027388 390802224 681254489 856504644 861289151 390014818 822985718 80092615 567251178 638662362 997936200 318582596 382899240 218564924 469187129 2721833 847855383 471471509 702314693 16139937 993532447 70909277 383092090 75353760 501020372 38663081 70680933 370768064 567095411 493035909 662962405 237923838 710248443 176376562 984412789 282416235 641832904 763846496 801620091 255776347 335561078 503841742 956245033 703599575 933488998 625716081 818968585 181627922 910457108 830709398 892482685 601771630 683532030 899980659 959842793 867716748 984918531 599637756 713419050 510575823 772645833 988814942 999832851 74164531 773234230 880226641 941661279 191857333 691916003 51382329 615134819 372557632 721078694 999952085 999981618 966672966 989777021 108140854 135553837 169211834 205621659 699566819 853414382 576617908 694206819 313644611 652509298 808567546 985579744 357380192 996336001 77596694 670584236 467370099 649570345 909139653 983712431 554984863 825778447 230561663 533931028 552955958 829336021 30944963 515462124 536444814 691196387 615652353 978129954 135627407 938460594 697808353 803207714 557160400 748681909 78382481 536291480 663451209 796034204 942046904 974079441 569889215 865316879 49415749 858259100 885885009 974164741 778018714 785087608 25733797 839246656 572501305 666554232 495212831 719820442 492581337 873283240 172429249 919532874 994465693 998125777 69977756 322585222 702647863 841334226 599233123 662535850 274021598 544425085 782389720 822844750 621235539 931934535 528776324 779557314 369461462 724691236 808747573 810905123 329797107 880984910 698360366 926053322 204623232 230762553 176478860 481813557 659339804 953993162 290500450 918886615 827576775 876551999 269785883 377658257 141158546 233279212 802060695 960074643 50127644 76861363 796515024 965449102 764387419 970135647 546461425 716502842 358778285 858691963 268123587 787003231 885932944 985238694 19714613 830075477 390636135 591298541 164469276 874430409 714862420 934054822 763206073 829466408 484368092 962631473 393960598 955905381 683431112 816634844 758746342 882084234 880819142 951145511 477633809 701946995 356046778 487730186 308963050 891439149 297775458 573783034 335962384 409421495 29830213 526252252 256811387 711948884 306499434 863138455 123631474 363042249 557429191 760797684 664709962 702681642 166159239 723159829 646777863 912040633 87541952 263524073 155898779 866974876 625389825 894492791 240181091 701016274 778070348 812526156 84708699 424467849 422516648 552197158 209475983 281533892 7939592 82097619 166110594 956306770 971745374 990547214 661009497 767048317 78898068 680211286 347159346 980693432 775891857 934856591 953219504 996416920 665860911 671476528 973954200 989239121 70618701 294706704 94178305 255420160 666374203 737735780 756388541 779535851 241279474 967419117 673361341 736216030 404806147 818256812 890262314 891668503 397501333 519448521 287406627 407609064 192073953 895563190 263041815 667075449 307668809 671405955 661782581 720616292 407837992 504335376 370425742 499415497 585224915 607760814 49277006 910671444 235503639 245356965 498016753 956872517 314536945 370307169 41590117 898328909 759399988 912235703 283355743 763190280 427032583 796263877 855480532 994306179 258286168 774876241 637607895 926961782 253192161 609483748 107133647 315601006 395895398 558885199 944809511 967379689 488274989 979942207 310863723 800278667 403973659 602017550 390748637 879037407 239875577 408120149 840937075 958558164 92144237 524502154 548263160 616467900 916816619 971341788 739789424 934539207 440195150 843987006 172547112 649675559 863357138 913063954 773798533 914615349 715311359 932610170 102910602 566188003 499581951 605060217 680884377 880668069 698453238 870055368 201919788 488063787 322334624 717164052 433675791 521189712 263766059 846502585 108674403 242173178 450012057 571481863 831688800 846427244 717125495 995126835 706406766 710929746 239958591 445256563 114051747 841747532 424270146 942368507 273966983 999531537 265796753 924113333 205367050 278996871 199669217 307855624 982471103 995026755 181115441 243764211 715445968 722684163 498682427 742446245 247081141 831289924 610107787 884181630 271855317 278329963 754849384 916444288 846523965 868042357 878584001 888489908 199362135 642346438 349824605 362592543 90025281 506379230 269906641 315119258 998295828 998785382 144267444 879418710 753328239 819586682 713060100 973990124 347225390 897461745 47025432 382332907 810330620 911048877 692869152 817196083 267287244 601854433 30276590 45794151 41073797 851883432 700046101 731052897 788770405 930179110 210632090 792355958 307104006 726807856 972849244 981337415 462586746 739444435 753923109 784742182 972394152 976047667 234182791 567957638 167609173 817747664 43156106 768486969 546247499 806742166 848306540 882132480 730729921 920719151 55482113 822783308 719268206 960305232 93135188 562552308 309894716 559981438 223500116 988512132 353063391 890035913 401254973 448404962 70286128 715933919 200792359 334983545 63680210 602916946 233999935 716197513 557638860 758290844 318715008 782293670 408230663 460496989 727628330 762886902 190821819 980970801 136714668 597431077 516270052 891113501 189866099 248863987 822176946 951047136 147630637 163523709 322194783 753212822 34736000 53358577 941659828 964349687 380142335 501603413 261306041 590785608 679516491 756243440 977963040 998958965 340482524 811655627 132073901 578408752 244087988 922218724 982718273 992232598 281167949 849789467 244196923 407769102 237294967 689570066 268771931 855529411 490421360 627985540 74241225 616344321 406130740 734521865 680330491 841327861 275315316 673044224 100247211 698693119 456241663 484548191 80092011 980311570 312899246 794868190 111886337 255817971 189963550 292142263 675614268 985806929 659766592 739657672 660291875 826553987 620578853 817841928 417084461 638035768 466063669 637360711 644770070 692820068 892309341 929776954 355194714 721031158 234406682 355781410 125159527 293461347 990907145 997970452 769080515 871850263 938991618 992926167 415440978 463968807 351075729 501528443 136899223 440833453 496729523 728110896 183323188 688296366 72527683 223944614 42724141 414557056 131275246 671888606 161520003 725719157 954107684 973803177 385222753 998955333 372015169 591380053 499053279 507574613 557501589 872058417 498813636 588821992 601935598 631588898 744863989 819148192 429961574 527922005 345563387 455157765 428507319 808072525 740125175 764138633 787085642 873870367 534918887 935646146 543857771 774998324 625498072 642241197 318349304 716741062 923144830 949046288 757909506 998943610 955205627 985544342 297418028 991678505 55831357 592761156 58125855 682266518 6648931 531864908 639445176 652406026 805277082 990363136 566650727 745914022 320614654 479087048 30896726 457841590 672180866 765351967 786610789 977770695 533059675 860255836 271965817 762067782 492272532 831274780 739138788 757683389 712097714 795711784 199273856 231325346 372306676 824623510 905267776 918504035 111733796 479266411 773958375 811082208 829527427 872024954 749966555 782632560 88961561 600010334 276577719 730108139 621258153 726223835 179965955 755834627 236470652 833418828 923152911 971523026 111519196 513028570 406588267 509765218 627232288 918114191 485953135 829594821 408865898 620341328 509803806 647779505 445963853 523699327 609744437 995312821 339197332 560687484 538913739 547752234 646565398 975543220 11543988 17153163 153508936 320799465 917815158 970134196 358730028 387566388 898136323 912115285 540538704 651733166 961322098 975917378 91858431 264824348 603256699 631773034 952313506 983441587 919904362 990919974 668842246 985020944 165991063 849670856 277788211 946331339 286036951 927596465 173039489 819223384 118849344 787254120 891849149 992858351 576159170 808929543 428229050 803454805 985293736 985613595 181859490 834554924 993808148 996937989 518546384 923056542 805397825 848782018 852777916 992754519 683487822 750238773 155916667 608385720 978573846 981189171 451954746 978359871 263329822 310449688 625262438 736819374 344367601 644007362 157759375 295090778 94786893 383021904 9797771 376543918 333963089 943308234 575911724 690240515 475906839 765417814 660914475 973767266 26942246 451710327 54272285 702997934 188200397 519401353 227770964 527652590 701537528 863023985 547772189 993899119 423390659 820865071 58757037 785260394 294720755 675253682 305208844 808600648 57995593 824493605 829776626 915332172 417163620 951312523 694873003 928877645 254331863 391183151 384923746 916982328 448473937 769022898 89887472 489585820 476474315 733462429 434095738 958972172 291151483 885811367 821200675 894450894 775698836 943056521 274595033 408723383 202311485 271029952 307168856 758119350 299507507 627159071 999592964 999837321 525020530 864430334 670688348 678887208 865525907 905795124 480909740 749311160 665450914 955474084 297688919 398067969 719342723 758391509 638222757 892303637 588973351 759099507 800350518 856632991 906799690 956615505 111004476 196278896 992316431 996632071 132635391 321324754 270771162 345675976 778225961 880061088 722900053 926946564 147630155 907090007 831811634 957704522 503556150 601411111 517029563 613757500 703960280 993926753 944001083 989683301 384842654 508334880 590546906 758822069 956121457 988109386 986540176 988426658 812598290 846215318 836062833 895546469 243275919 732539472 372522747 879971786 388432786 608833734 717566137 740435541 309275737 802169743 410149433 791807775 66612424 331354418 728293857 826546864 528358750 977308920 486463233 595474832 342465988 978344962 281600851 693257817 435729578 785235376 933263818 986574873 955555058 959039335 31588089 51938419 474960491 605326266 35357010 376882673 825097954 877268599 68754332 775907668 472321743 966417012 655592884 738741695 277834708 802907535 60999476 466599400 629404024 742960383 642768698 894067299 51389746 972235345 917623681 987710954 167511204 914624068 285077742 555713285 439886299 448798971 606118 84010127 285238155 794662185 523109860 588471422 565029439 607862730 748272139 957681800 559490304 751443842 555947616 692040000 57917307 684825410 107141496 580650701 172671186 935478304 982470288 999409388 582030963 601432196 531821795 826151053 891249833 902173534 513556604 805682435 12249225 86935695 596159811 605065802 117702946 235272789 97884405 332035433 652105001 922214114 994281333 997455076 474378733 860908049 224217297 253729336 786421879 852380743 293038353 936473933 476101834 484954322 940014979 952091034 598234401 866772385 574765581 827511989 11319071 869098651 427649211 576107502 856850238 920905066 721475801 867764370 314206872 799336084 49330202 850247957 152462704 350847840 430952794 442071250 498591753 817271590 846078093 920772390 927414178 973940828 871850478 981362661 774409590 794311139 944149596 959894113 190956651 270016284 808864421 863401283 217630072 916177515 31294079 667292623 394723943 530343027 750907458 901205406 564227251 652351177 133405967 949869348 435418198 591988528 61402337 820014336 482663999 922600896 923638924 965882411 499465499 758477551 937084181 992494853 673348571 714626500 29869572 113411445 958955318 998489091 362796143 703952060 491387528 645434878 472054136 618205505 835682648 990606420 774662242 852065016 362498514 703844983 588638928 865324037 878854777 952114430 785402021 902560913 6317385 139113925 633180993 744619572 404666030 890688028 981121031 995084785 703715711 908554045 224022005 457738424 104031818 852469680 108267532 414430065 770505625 979389201 3844677 15063137 481517417 666878284 365794250 671174945 173689708 699709857 753350405 801260796 236255880 391711745 315627464 641884868 291395248 345478233 387035339 740043820 56447418 108915865 359893243 793953710 652124759 675289372 709378192 947933619 786730528 956793945 569486117 721539238 889542123 922939044 443844797 959303695 842177294 978687419 471043311 565960479 900577760 934718645 373853902 912113984 696089753 785150542 510869173 770292595 258605412 746444054 824774373 894029874 326086035 748808504 893946143 980384582 814690704 910368966 381676548 936562380 265343108 433184651 829097712 884809139 355009934 638739039 926350057 997679120 692677813 980336030 250894382 425356438 37108841 254557146 510076920 550351684 959982500 965899645 55898791 520015980 735551113 761193168 624623832 739968232 261444680 777367630 882181488 914904064 923243163 963737640 825705776 933014970 215096354 977281459 775125144 979378566 598600828 722674233 512644006 694483818 219360333 616109625 650052714 941251995 987588499 992317713 687421502 756159014 615961686 738871446 997251547 998917359 831014433 971520474 404034229 569371695 771427683 894280008 897819556 913144255 633233719 714906211 332017243 585935227 609770890 704513883 684591087 700806379 680088963 946954724 468024774 476295998 639231726 990156802 840580785 895878551 880587038 892938050 924968811 948236519 313484788 610691059 513358476 888577842 924619906 925967131 314493005 662428333 859096392 928640940 65797989 738151526 123242924 189237824 612416388 732394231 766557047 902542599 63714977 486725715 821515031 944890054 172632167 241212846 439053520 544686232 358573101 889690857 298728547 906309110 512952714 735118716 508396298 599796792 868333448 892914645 245338372 774157618 597239393 725243243 151007628 401121283 374024725 530725215 707856364 965180970 214091367 992856651 681340572 711942012 804680229 825771662 9088599 776662006 906510496 968682078 962410385 992821549 573816687 718334679 626956274 816827481 166188452 168304856 401234456 453144569 256001695 556579449 445380650 732348312 897334511 990355401 108308961 604698760 516410551 685584522 396939562 936586276 890166928 981584838 453092389 703564541 793358894 925031142 560788618 578907156 843976084 953906114 899862874 948865038 958508778 973975129 314044162 559994699 817021895 911590735 213955625 729962820 729702667 968972177 383413217 749561524 560245041 599863720 120290586 185089486 481948964 538560708 801743310 881058358 17973495 688759127 839638150 858975708 207926906 952063611 583016916 931573789 338509401 836937359 94196701 156396077 338276693 342070397 785099666 873060339 900787282 963322644 918313712 975485645 606768257 908807094 403233797 469992101 903734818 979395783 323112966 577313621 612506882 987281539 118947273 160290449 344045873 509505676 377379643 808603746 72029715 323186919 15918771 214357437 915740395 927668079 613576026 876283392 175649341 363038623 152163220 288870721 91623318 369765104 390407604 507281644 913437762 945464160 710993034 889342878 283448095 704450687 640594739 860070472 910567007 919873320 794358521 859447072 757018360 962948052 189407714 588636383 932935000 964545788 301371209 873702865 247081403 686312364 672743732 937290510 943770516 999903928 111876065 606246401 544660601 835213580 553865342 906393705 903417070 966988056 865268530 902444414 694798109 695867876 15355328 626749893 200121429 771834156 364455813 846215889 587339521 732316005 759997829 975924383 670839430 871445314 590412840 681020599 821071087 906710910 882849998 969617078 736027700 860072048 718862024 974837952 26181365 866782404 109820170 813488367 868407072 949030574 360630618 574138542 38439224 790198928 172549146 831562310 111601996 827714349 397744649 821658203 919284585 919346745 245341518 946920548 138528644 808249865 881456491 931376962 90994810 844156711 592396424 730912418 125594920 541737004 966519817 977924508 19617174 369672992 92666572 285531566 576414433 774989007 387009934 495086649 441369291 474297021 30318595 901483998 112365899 965152318 741103209 938193243 901421268 926754072 657028873 684851647 979981284 990510317 929477454 932177907 984826345 998534322 540669573 973864687 251290910 943964883 961389993 978174412 951541342 978205664 111590746 961297067 359017915 424452622 923314219 942065428 216917882 523750752 797924470 811573777 169493690 563582586 815703772 819792780 353682863 723300030 176134330 785568870 848858916 941154227 381295137 540979977 225063325 369302853 391126357 563452856 876595125 882997348 840401392 869147473 82406119 635829687 288023799 414211697 399893955 716945716 441408526 738530227 483419836 871833014 555025447 822717748 483040702 964183407 404079970 533626231 6020204 256349026 610837147 867774453 379722087 611633222 617511308 947001653 203341220 833226707 146329946 887588190 466554783 574573088 432993306 607375474 610554931 961214826 274950341 493187537 194154553 490035925 268538753 803001084 725530370 791324381 3738269 218826396 642284088 892278959 277148723 587496523 603971311 848625775 210341223 379937249 680996578 841196331 300941804 694615718 397663858 813194907 116173722 889267872 713108007 892005908 724205238 939096518 804773355 848528700 343898396 989290329 257309837 691347902 573353324 904201820 76207964 400161151 624480718 985832879 819246944 953375530 239854439 568459774 656532065 657643306 516155422 587126833 742165176 793204092 754951196 776867226 762071351 876827130 10089652 879089864 60351754 626357038 880374494 937878508 707962490 969293576 674459353 987774947 172048617 995689659 68420110 684107005 689081087 786671361 989205569 994369514 734725045 739484402 294828703 589538386 286737964 305631906 502840452 804862789 295321775 908705536 892427638 931670769 948133841 995395968 843970831 904513784 50071705 61315634 147174769 806876147 134847424 909399371 425545453 585970950 685313350 972407745 371993244 953945534 469633889 996361376 170595615 988761138 35126238 143483974 531653587 861790345 338904122 457558486 517719299 653395146 853912524 889733142 26557406 757156504 605555113 892275102 265955922 768067426 894683316 968172488 843842882 865620815 516832985 632861179 441882608 881763367 407937915 534040775 642322955 813151479 311299881 435099406 381901391 958800646 546778488 850429079 30651224 541357572 127888369 899003187 251583945 892144151 98971495 698657384 245948435 513063151 976408336 990099775 879382201 977595500 653277966 888012349 483055991 868387857 313514119 708934779 557825248 768110088 40140482 712776888 41192500 440996938 413711559 864349782 386632979 582214968 300607784 409582788 421019176 887624037 684502010 856687690 885407837 963565810 249414907 405283601 240900622 341050316 863657241 916944628 583615502 857264444 957053312 999782714 630564439 804463859 262367588 603469812 51778489 108477473 51580232 430331254 762659518 810830434 685689005 806511752 52693986 756444030 22163471 427343156 927116166 996416317 275014986 537737171 130322823 654404522 107126686 185172330 841503277 856119688 820492147 922982615 885046710 989101794 250115837 481709286 252691725 324447782 965199038 975844277 508367650 961041817 484545716 520899406 841664179 933889111 387459514 623800119 997001908 998470471 591539601 678578272 937240457 991862697 844228605 867311831 653836772 988869734 370038997 956229578 281857038 408683615 105930990 551152666 26275076 796121263 810781596 919606868 268828839 570943020 583289330 935991919 481263758 814671746 768190716 793374086 219849123 266668416 985131746 994987062 544251450 722247383 341858269 927812579 483280437 700103450 701022130 986005368 910267018 950611429 724107139 979857116 801599256 907121313 210279517 834970353 836063615 994737602 497040438 580163738 287155878 411958273 752640242 868723278 631152803 974470251 546803061 797508380 390628244 970987858 767185579 781817113 292159680 932565537 41608783 919072179 808431629 903781260 424673443 486048176 756204383 984277964 487879197 582684151 470642175 716179311 512861348 940664448 74834170 245117859 804075542 988104087 997986216 998265991 824631660 994839635 185361466 920596192 588164148 628615139 98980910 663862317 82793399 417706548 934294658 998557972 906125790 939315483 915843846 978518527 896667067 987697114 86138130 664828347 769473538 920631770 323849425 640070003 810535790 948392103 76004204 91805082 657392449 788061202 422093108 967659680 826696763 912433313 381783134 400996686 74402078 102469250 904714297 929531080 473163112 740367602 410162073 752291519 509803863 749995088 188215664 428200713 719869391 756320743 371074714 478601893 425714231 578206425 107726086 324896330 656898916 935465777 631344629 971000259 839176455 899147807 69358452 678516819 932457735 965405036 347978690 587236408 460072405 682623977 120987043 263862986 303626569 556952428 873618121 960304392 729759167 908317764 939863484 945623406 103374534 549832172 835134682 870964755 188583656 737088638 521881143 574638928 490781297 628305119 324591796 931721056 685302882 904771381 839925457 863423300 873461123 898941665 720098799 731432950 309974224 683801609 294373080 438023355 672379642 848047790 861399479 866284109 972529254 986265215 803155406 903326588 691371452 894300756 204630463 366060667 717237181 815724828 762141828 821203332 731421017 811559714 379246885 431433486 673635579 929516622 901478547 919473645 159890877 890635608 7528916 884791638 438748337 806816732 336293407 926968807 137567868 140453463 824336056 824362875 22379973 335742366 836400238 904804075 287581654 360413647 778403876 935959074 447047819 585916292 728480930 881916672 637954683 993732558 335382063 749705314 178301681 290088424 709687276 941289278 219281788 342431843 714041903 770503064 743583603 865213148 640524750 659143306 203308441 641225866 654030241 687053970 419299814 735559202 792086086 936579665 180282608 770457089 192808344 193010210 70645843 895906238 239986743 832167228 415405049 596643003 762117463 848976726 50393444 603516759 719324137 746316343 335285703 528031493 208258524 430890961 335841125 773715160 605123627 741351695 113886088 580670876 207852845 466699044 580373370 655570535 183313730 777946945 772798498 986713021 392106190 580867737 162151789 581351879 629099031 924013313 463751221 927954927 382007044 578587809 880917624 961266789 73223982 169260729 809871969 965417030 146841657 229321916 455770055 845543800 147330873 580834053 437373375 787694917 571668103 750357800 520023471 916547372 798083470 883565244 783812929 949480741 402015973 507659706 887586111 899068971 439375784 694878251 539737227 852181771 240067096 412792977 228689312 565538703 278252842 366689193 638486288 671931399 403505013 436661702 771208613 901957356 85439464 788602418 150787071 166141406 237976258 990496796 684604088 720518457 524667629 711743362 853337800 992084295 567326012 948160886 656677672 661833452 916085591 966010669 169999373 639485358 470493316 901169854 533551665 718496266 729766339 917697566 547892364 943319241 603359915 787551552 612858978 671785574 430536413 942098607 372077123 526346877 903197366 999926071 140304419 318580122 631038906 753152230 563723301 971397379 913898830 979504112 818095701 882730263 829335540 898592235 787089911 953624191 631583350 675998484 840771585 965408690 734158161 797570754 459342365 690534188 615264841 963240568 85891568 637950318 929271211 997244466 35710145 930836599 262219598 411417224 35508832 448139972 73421980 660530104 119980153 260278117 954778448 973295472 844484235 996112483 596402552 890104229 278573755 844269064 335464438 427721276 896177095 955242781 882494701 958714871 485117376 806122063 802447096 986681519 77152615 945270301 274221310 720548606 849799819 914789566 50836986 790745466 713195163 897714121 318408222 581688292 24332426 114832878 46211941 372228812 704706587 845145419 880062323 910206603 925859361 949449358 581544556 651368702 11109682 808395199 554717015 785760060 758301961 770942240 246603461 675368945 277945408 667646257 808548007 963263131 57200389 962450461 703556628 907048927 875612207 976791930 740676597 950708389 838817681 957645957 458110996 510384931 137529600 231893695 806045058 923436958 892073852 988320163 443393032 607301132 724026028 879874627 186132957 418434448 264155152 785253034 747866171 876465231 867912950 958161841 226669801 622633481 287480783 424426047 676360505 971406790 164697830 544869430 580518938 775223496 254343954 713243373 938317922 968314596 277090664 669504444 174220710 339751579 150925562 436216415 636596153 923841610 799848939 930643778 546725592 827729104 663117535 756208336 526602635 590000158 799746487 826544402 892630037 981874618 904966955 951457924 616297664 757334317 484951384 988259624 384781352 871617838 184640111 844089187 701165240 927554807 711807950 990792870 217252172 486333907 39450552 707666488 958174996 968966948 363367804 421737021 315541342 409381222 742630149 995597157 548926967 604374209 139578732 169462411 608387601 772605642 547883276 983279530 927408675 997027376 308120141 854625474 714987223 892135721 771812436 904229635 826355194 881637409 172292492 405795188 105758076 966157206 468897796 515889838 765647414 923647314 576221987 915528212 90312067 488359051 905470684 971789786 459910040 710100124 424474382 769012701 204127310 768607380 835046712 930550472 294936759 362919546 951623270 969168804 713914734 737601096 471966945 650320430 251193027 413586724 220761573 536109487 389657232 860652849 359963515 948909008 551280370 965003942 571904135 679276863 424118846 531367792 909692694 954585655 881759158 959561069 229461953 490490693 154282336 750710150 675150981 834325513 142065058 524750083 276250488 624688859 667019523 898124656 73061960 663482818 978242181 987449602 893000025 980196658 788014057 959312959 488794802 499347024 470819459 884524253 338921046 629579169 658363473 934000045 457869841 647181479 433989768 697218742 596303626 605697227 694817031 917924674 309867765 393891710 235461283 794013736 837337290 929845409 588331245 868539513 61822832 404747585 233635665 557861381 487495174 883451086 322087226 554052921 150839901 185685963 249170075 361098709 867051585 973702440 101775142 958694835 823668393 839937412 671103372 714675676 860010538 990229114 936152821 989600422 825025170 882973461 104897645 468070025 432992635 637008651 721704329 901580891 899390224 908553571 577846020 626382175 857501555 897249480 616989820 785477569 266143991 788898229 4229987 838355272 844639252 957445694 830913653 839909482 788462264 839849403 91576611 660311542 527955380 642168140 204121999 664125656 729659394 959364543 840227533 921890358 147194429 979206203 972524160 983679045 706619708 885441547 271753194 945534796 121185177 741191279 946236895 964081942 516935042 937968875 374389745 393897944 969202390 970798214 143046256 465685339 645441784 990675661 180705774 973919619 273185459 774844464 949786765 967965490 392564814 551583619 899408197 953941712 402659470 480517726 347420663 833665797 535353389 726410699 945276934 960947599 944320373 946716388 742285977 753856583 4022541 26964721 489327730 704637355 816241806 942222636 89560973 713113708 935647865 998421395 370702237 746533387 62533302 463495932 750220852 880770476 114643505 505756059 632986816 787339812 75631938 946071925 514996755 573142106 395022772 459609088 609478843 688182094 465796083 655690192 725294534 901830724 510181779 815758736 375918095 546931361 98430022 103069348 9138770 353383761 920149053 927442601 440837130 920745065 9035796 15934056 332810564 371723946 125419362 721837503 727505754 951125095 336060899 455171798 773282298 866636370 910434032 987583729 998195983 999158583 145723019 156978755 23443126 544864331 11211470 969197985 299411761 579093049 407024530 892676102 69468309 343212900 71928142 377382696 963457338 996482931 190551559 382623604 79621518 109083549 232574739 793816603 167447052 496655048 387020062 481636180 797463311 943633633 308553880 442083948 367217069 746670132 867075986 888084358 721647652 928841662 115864272 669620584 513945751 732735329 416327449 966703821 607105536 899456540 577251503 983086182 365117369 630697621 44341599 521138514 79262645 677239261 710486866 973795676 51578168 687620531 768226194 789750425 389652728 839981993 514276443 558042968 640664047 839837261 199123739 642600650 852594754 878949423 103274975 279829084 112440097 198900541 567677023 766070573 367251244 870650990 522694421 848355213 354569036 545110711 681882928 728497511 224359641 900484507 121808253 837084612 388867049 963005696 777652287 950048462 1020401 226149049 263678932 498813174 113780563 667362779 296992948 533873272 755563362 898755835 394073737 886652686 665527722 894469063 908788900 940284193 999290260 999689126 78771034 924701834 732671436 898758512 762723115 851292645 199829938 579716540 514196255 977865151 738215837 947399124 438463791 749206145 747548753 957672458 586440450 993082942 138525276 613843516 935394436 979861587 623360447 824299029 240111883 361189714 937748221 952791849 220030605 441292637 969091895 979610111 205467549 871915569 584217850 607467447 369299008 397852477 700369820 771039688 445527765 994197355 44072700 397118314 736370595 856827667 193031099 851958405 350158455 561680358 507493570 828518550 795227302 859847875 369491725 477336246 124014106 598919510 794715624 804224361 247883104 713203542 65458168 490791915 850875562 998168354 243057012 397171734 731374463 808857046 214696499 956270215 146388678 875138758 688492985 946684449 940529305 954505958 536150495 648618701 613049722 735026647 295820316 696115502 839958842 879327482 599961729 915640868 846543538 971549160 490833596 569455165 699670075 825965550 467248100 773058665 835561316 965904356 462408692 951642612 317711828 773703837 775999588 936854790 134186590 560646924 277212786 453860653 77485799 94207087 399859840 484160468 325982524 403884243 536960989 906413965 974865317 981376050 349389724 451222593 573760951 852759321 585414715 978096218 945795402 964369770 323897004 575582491 160908749 862869061 325664080 407872073 746993523 976386742 421709832 695153407 583666997 985149359 766090988 768934742 286835880 544255788 440925938 640084036 970842134 996391432 451504860 466829932 490709641 932242549 770021941 892213793 523775143 856915747 415172444 874891487 459407303 771672159 685898951 784151806 733280637 780989391 839627644 943688314 484927717 747767489 309940395 635682817 673568892 924067134 106026315 471845375 714220838 740232562 324359829 447932206 982590587 991905822 961181928 973849655 604189212 784422430 634334620 791994526 743712746 853153221 747402944 961907559 473714501 882832376 510196022 647500071 32206897 905148154 62058170 104265068 764666077 869384658 388574178 792793262 537844246 883186979 288093291 728359105 132303433 957528374 705171804 742574200 783640292 809427147 376691135 891809509 485309230 674140268 263827437 884439024 838789981 938154568 659534686 902060252 674321850 880735866 293378046 312260270 960356629 962919442 532110792 976060031 12694836 907361743 642896559 771738455 317122797 553767851 761331586 852557429 165705830 167303386 669408 890075041 788081042 987527638 243273222 462229465 783202647 800818132 374985428 535237824 74578742 998654672 982700997 985739742 36397372 275834334 406319977 747058726 849437005 956973600 940499631 976086930 930842516 973933151 790887341 954735450 885033252 921648379 151500157 646773568 218893480 567625756 294187517 602844536 981330595 989603274 661735185 683466387 363734665 555031519 348144583 817666310 820357097 931161015 253736410 931181010 391370171 778967861 65254373 815070819 186045915 440513585 669376770 838667091 773977376 809086638 567062574 890357636 171379057 925506375 285536593 699233831 643830515 906892250 328825070 963046916 742858382 901676705 198585869 285448563 756284773 961923996 904407204 941182522 12099297 646741019 822038804 841621306 559669363 771938549 68301205 369940708 351317602 378607336 377011329 893825693 823790035 860743090 850062982 924229964 98847479 809211917 669089807 753262942 894566520 993840809 28015953 140687318 543991763 937198796 447189988 979321883 222338819 801481957 76425460 264278754 246636426 808143839 538310884 938355355 521076787 624383026 360905055 776881628 463541605 923146449 376124744 683186439 226266933 426600829 914796292 980361669 194021352 743433296 528918028 839072384 495583628 574891922 142785293 587465511 941426554 993972042 728941956 856796308 357669185 673798542 980308113 999228072 133248127 375528554 381020051 395439912 915640021 998346059 254734112 811086256 786582736 829748393 527878177 645872903 140970464 674535486 766229517 881044627 150267133 165170870 24325833 879496016 282896416 310379089 276792757 516053395 234731102 439506976 50255294 885892572 954656998 963318765 53646320 88719634 196480487 453064420 801259122 826792402 99574272 470163964 884481254 917373828 102970220 620377461 123669266 633695422 982323872 999792504 251391925 902429488 589008450 675379936 898577739 965342378 169356794 752971639 495857865 523244909 716384867 736152910 178694948 844953986 942888690 944873148 266867599 544437028 896633726 987633928 236850944 505057511 872487586 900601649 561728666 659309484 190319410 215892281 978407210 984174600 803672764 914763348 576204821 842830363 884018675 955858804 456960994 524272377 948562751 983433203 644583366 782043037 951827761 981309750 131363779 383247243 371557691 399518086 409743932 699586643 244850832 945967400 228549400 487794114 643754877 893703632 967773710 981146908 42956921 383090715 64557332 694262012 611322542 767619339 431427007 801655367 726000501 747055320 340969496 665951277 145127346 738933014 598721465 906443704 101024281 105596373 441027596 549105882 964894104 989265967 975995223 986149315 104565547 986928403 876858906 921568075 166244016 872812346 668130164 876127123 107694168 820582230 348833283 445907819 615530982 906675661 913282852 940443477 450716103 813894593 376640866 593214756 47870768 779351267 598633313 620804800 491124201 871120002 337309188 746336422 637360019 656994553 491832534 842206582 500184079 634925074 622239093 959042807 63289836 492175835 594776412 852161061 318049578 748123578 128657127 208746363 477969406 655369921 133676611 410178566 921003747 962440103 635947561 854933019 971558353 976250544 805950867 921285818 545254314 944527893 371738205 532361940 337419907 950838960 803567171 951202612 456195461 492266943 936796741 937031823 545640765 604052605 992044464 992868983 855814010 919286362 632793437 867000140 570473745 647961592 547316598 958867153 127951508 609805074 124409262 828697256 582911347 919127786 991093206 998933399 628438487 690170259 930966065 963175175 41506987 375627599 732867901 793129457 199251448 386916918 110840718 487002689 723972542 953854792 467084401 888442970 148121875 558548978 212135967 952984991 693628379 885933170 837355572 890851845 456049454 533103227 762992804 892559537 810928018 859665610 261692122 322086226 110834017 503937333 972054786 996681690 308757023 593431089 941307775 959616086 432489860 857676774 358658550 620140832 103407062 851478716 242976758 590072076 972342161 975849063 363515444 770482715 406156887 512565897 836278137 930617133 798125534 988314063 175398028 455018350 723283119 820489361 48626488 481666394 614814769 695853803 180583253 761521412 951042685 954908913 31019543 56410969 709303822 834077929 212407830 775539631 753880170 979295035 799847375 893069267 571029259 957741692 106149349 840077449 467552523 724068351 178431439 517912847 410840339 411333017 570040871 761531976 650047300 690987067 812568492 888063112 298563250 475513891 140091895 813338810 619029569 888763376 30827532 788864643 583181294 728256809 671435137 894897480 864777238 919734603 983686153 996650726 271112300 398304896 969672854 974031464 338382798 480194577 678210923 850378513 122352317 756627416 232521684 899071761 975383163 985411216 53811259 684594993 790707196 833184775 332979332 896856025 418009420 470563488 567972510 667386564 189256114 332904919 934120650 989864232 132435111 397587097 204442018 453774942 19358142 301243884 81939283 463161522 780674091 874780182 418635187 810096076 65470515 90028234 541534302 807604120 618526467 930716435 759291467 945852805 303559197 611284386 620905610 744520579 348240176 793622090 66151633 334957863 182792673 875202969 715147170 780264145 760464677 997479756 498192889 566985088 937436604 946594980 127229288 391987411 347681591 513343863 709048712 763791346 589160176 754524130 791036851 952580460 223670806 888278360 326146829 843838147 696293552 811215608 730685628 871166895 966513996 968434496 709697409 740515253 738100844 952044245 835136404 880763886 493024354 839858080 32729640 788125269 315965801 560299477 889397891 915694479 446304171 678450025 364222471 519540910 772385567 995998007 543430944 546965878 71951857 991542874 792317285 919988089 593792451 677899014 853310933 857907837 726137542 916663825 623197571 915976906 549365670 866569487 585552721 637688932 342001851 904756217 130123750 313238784 715891619 930805219 603053003 977675271 769532742 781572327 557838748 815825925 397061323 608723875 182064164 743001933 666032936 819364392 864547894 970208980 128422688 357137158 850348046 917939606 359764208 861314962 862260274 864454625 247779922 682174285 350005774 861612433 213443270 934864210 470427510 639043159 416906395 949882139 808103776 981842584 622409276 727393229 713548148 726474101 65958460 788959385 470014429 952982951 184518242 435843094 993439763 996247085 823459698 961342360 909420779 990207267 238167754 290343800 999521105 999713102 932929040 989457676 155401579 267896764 556205983 883065914 270266682 699924695 943941412 995125805 516977800 677392775 857276509 884586721 233923611 425572481 914392595 925101165 979052126 981192285 890390630 963649146 170602798 872297718 334349463 572424648 810793434 895091078 711189849 791027942 236700689 350821227 415772135 811726057 180635916 788937231 15684026 791958195 834219713 888168087 267109546 826068961 711683545 912397994 648339244 880342837 114849517 970503605 844333384 850211709 772981048 796227001 779230257 863321368 487575823 526013633 634141033 972144228 44985147 385593850 474291185 941441857 203078571 481599695 433805196 546007727 857765311 911457388 469841170 726244907 613716972 873339182 494038400 998128346 101253211 418755277 87455099 408572104 211095818 730400515 668344415 699094054 6001253 156275632 656828486 676298798 530831720 784051057 124671496 280866105 499481608 994291852 103150461 459061197 132147395 169177156 217860723 678480938 147019523 512518738 38729337 468201327 834145424 846002620 963097768 974725463 316263690 784601160 827794356 853097107 784149928 973510027 500066756 704387249 136064619 865901722 30926944 851726787 154019436 652748898 894623371 927732503 242629018 597079107 263861795 439823111 40020232 804593112 392893966 649616460 526365750 799067131 40927788 183923772 557578708 747459969 64125209 618023466 469379269 694042752 837342946 957537655 877267811 936363176 70779047 801056690 738836747 795731141 985876999 988047371 83970759 900380388 827637986 835524205 775258512 847525988 652191909 974179281 451211979 643086049 966034156 997201140 359660761 482006679 468754347 496905359 384212266 617527252 832155886 834466892 12282471 559075593 543868732 837083407 707793834 865676197 383679605 810349353 213561855 709462841 515081394 705970380 133274006 311431853 187356889 329361511 218776218 802030411 989095041 991431185 109828792 616230134 331462041 952699416 448154013 772851220 218771142 325574096 498574226 884475745 450222582 530278065 874872595 929406509 578798564 674811361 796612174 913225864 88056198 538831477 297492275 655450086 28271996 706529023 548074777 945317702 939907329 990732830 411939752 500322046 431288396 748517546 221294442 318292836 192782021 469051572 674517036 694439074 466616752 850297369 640730515 879041162 898365710 973198603 475252868 524633148 771763795 880457832 506821230 921387044 837405569 980681832 796096353 803778155 178847959 600828687 647466967 849476484 292968673 327471153 2747139 683902328 420887401 443024270 696540645 880554290 722264266 769861557 888648831 937341483 240640197 416338192 147478712 810212101 348389538 520717540 476352056 737812130 767157254 860544446 918507471 925559378 885083989 922608813 740271878 908847444 467828026 593397110 329253386 894926305 972850896 993969196 447950199 540103900 241599943 525830402 587842845 790662113 782263466 932212270 161524883 720743043 982705639 984277267 854012428 954516892 304260919 673853967 242594728 269359559 807642061 820437148 771225072 860913122 716654657 820133592 898321476 947103322 892723523 961812198 730808870 788607817 805114478 840744008 517851707 702734800 631401600 993554912 843403702 949433799 359146064 737358463 293681850 958530601 483661794 716178265 776783818 787342289 120608190 392076163 553769609 851384582 15731863 289119426 880879026 892242756 419256909 959041709 664629394 881953494 938114523 938433544 647351222 951543795 116772396 133710201 130774031 283771715 19444491 250475292 724133811 989290149 197946588 720211474 977765757 978206863 683802243 700367334 260335581 293225192 33228857 465147761 418856573 690878775 27392048 389486946 782168481 944725726 65819236 257508576 412151748 881647223 970808190 981977635 294539653 337513919 105498959 125008247 91745616 317852513 815519501 969267046 87510704 253279960 538812946 999704178 401404627 889979078 657688896 732852533 857292355 979176453 963379027 972107250 561870729 627842252 415066482 491202499 317647982 595898239 124067918 420447041 777290752 873097221 938638743 973768511 867494997 971372635 805450632 986226257 66375324 376587137 294853667 954123881 413505988 633115846 385742730 660554575 897449660 914236621 979964057 989072436 607648361 612489962 55882737 159238193 774404597 981844371 59956147 386910234 607560698 869432461 957567190 998135326 161277322 280340860 555150873 866515946 81703240 729319933 861766209 947712138 960177278 981677909 394091076 460348312 278053570 432010957 356238954 860655645 266561725 651402153 386333304 740456445 587526982 881786518 495299014 772750620 738809063 833819838 29706364 612233375 423356549 605548741 966786144 991354437 663407774 732391632 250059475 892777110 474539370 887042826 645930463 750210497 960959277 984248501 903759187 908417489 741376917 824014221 211659267 713542364 990080017 991462324 949763493 992675647 891970097 980412038 375667565 444282845 532406297 798957490 709322799 724569635 102532772 757516572 711803129 833816042 610864463 755090782 32663855 730320137 272978941 459516378 60117042 997587276 833246387 997434126 853776433 966835240 96790356 864127126 664970438 708403265 611148588 883724586 153363315 932449490 591028306 908975031 528016988 977353073 837642165 975269253 133446872 852466900 997197011 999797663 846268820 999103668 965207881 967592202 106859981 260202247 440388998 685071119 960239957 969058946 629676318 712664640 506232710 990729134 81056901 495719210 731605455 804655251 719182284 940273982 206431568 872475377 515803266 980503360 188206113 606965056 377793799 607669691 321576667 616151754 910143344 962030330 910800193 985116392 865378840 931024069 207368113 590066421 188627673 250734054 228801596 989596149 848323360 892901562 860602628 991453834 235691361 629510329 721869520 778616625 591715372 843124128 452650444 557361114 321326136 344204204 582264289 732010210 720605998 853520509 627433281 668528553 791838930 859658719 473798355 512159094 59898599 926585258 468883491 850443978 476121809 997221505 326306577 594119298 599217190 933430921 449547423 900550269 539898290 951646350 45816053 622029635 971214721 985187525 186764381 383030290 239103143 810677921 798837805 986892697 110179769 358424917 363012528 741177077 992816511 999720222 930712795 990307464 834241569 898944070 200990025 474323619 274452955 912643624 55270921 228122331 613332770 693041659 81314439 218172353 552169756 600187644 190897645 493723915 520433138 534576534 996559634 999369443 312624777 578613691 770249408 854234769 952068899 972047682 830942610 980751710 686165753 775104646 582566359 975148922 829878714 976921158 595911553 604496762 184638799 594285538 53621455 79928323 560697036 766444370 483383160 792904854 232023675 795510636 658544626 774337265 758554846 828297042 57145204 922208436 312243055 902751785 661087632 921317061 665531803 983565354 804142737 970328893 142987697 729646566 981206237 993410752 243997202 247353124 446277000 661711044 195351088 856025879 417441753 762245850 952377918 968275093 844482094 882641122 674204634 821349783 305262348 444745059 401103906 650767259 261677573 884095523 148134704 366963579 928155956 937751270 361536779 375085214 932748302 982479799 314366474 842816791 933906888 954174387 111893562 155748929 544744528 686029502 854755260 895464116 846078505 917997475 680094209 840117888 957982353 962806021 544879725 560112496 978172147 986022771 811747565 844409536 192779103 233508610 201088764 847592393 784924869 949860547 913283269 924166051 618849298 858808065 41930215 70720104 310900350 823229617 732938029 898107079 52622689 62599411 531566191 879862417 918693856 933550691 808729773 983939365 263913619 372289954 626268248 888062387 856501290 900864811 193007719 875459575 74472285 575188705 331203773 477960893 472855882 565643687 503237955 578850204 440210860 459783840 951471952 964481442 774089581 887579585 616245542 641231248 410375503 686345288 915115710 966747083 39867413 543392223 124050563 679576332 813820606 883108207 287545919 831207253 991151844 993100184 697192498 908274898 400209914 879544997 203469327 345861243 227400240 891791052 531019255 601278658 563109621 654245829 325357325 453115091 791680238 904078898 984528891 994132421 742768631 892020477 874416597 934793730 660553779 973742590 829065107 954539999 491004511 618472394 344484429 498723446 707094336 880325700 609487627 995524830 347309554 511906920 745821265 776430382 253102633 914325244 324387657 340161892 338729282 692784536 748166026 772560844 642203490 699587786 368439875 797239942 362022325 887425907 443694577 823253052 873905669 880775062 341778515 468128580 169074266 293194025 772634072 787964625 526408327 895575389 909389331 997373582 138662354 622785589 181485669 909331663 198486313 721755447 846521414 915467026 930460807 977513402 144675949 327654461 149982722 831545578 635377347 848464657 197663428 776126061 590593705 880209354 879206558 982130469 434109145 950402615 660811047 948232028 596474437 681933991 414947564 946668016 148129113 821733199 66086696 832726468 702754240 723148902 512895527 849615625 798053036 961584146 47569326 71909333 540823012 916843443 868012065 935385847 611713375 891204859 668973217 869523652 351265050 886058543 949785896 996447005 529972063 948143854 426525976 744868902 242628603 763655112 589806532 622470117 869297118 994891730 892096838 980416876 127168749 573558219 970398291 972838188 228999168 800965185 642362462 691314775 873157629 991218077 32807463 943901233 424331481 513895213 948102347 995029901 324836885 564163625 32110594 851077814 946920624 957074482 937057021 944691995 711433638 948503838 655950865 763921071 603164515 693867001 893151895 910106044 119786814 461092334 974676793 989133629 67862564 629980216 931939015 982450309 956037575 994130101 76362283 551493625 220520156 253493062 252417654 598325039 916144756 940366249 125649276 223163097 838036232 940645706 454664944 660991077 558871857 791978484 246123229 840246464 938766565 996232359 5845942 117643807 516688404 553183926 595039645 938654634 946322950 965731591 151104766 837298414 284572692 535906883 531669751 861525869 867521770 884444410 758964644 914707779 936615997 942814557 611761786 964552419 636430588 798050989 906524550 917042902 477195729 896857657 849894946 851634573 146522372 973513251 602442792 893902678 603148534 703956699 874686552 916646386 712689525 877982406 852746099 908927036 770792986 814751788 323876333 487822236 533475079 654222503 528407191 997497776 295139065 792851866 715764248 812603584 303941399 475693834 644866221 948722375 108672341 396515174 997447230 999669168 441717305 601830002 387512234 723697948 20709807 291763102 141756081 987654025 553291535 926088873 747298121 805150776 714127912 754462475 722384481 915331453 573459893 637042165 141492452 422765803 289185991 863746774 495332191 856172055 157047382 626422347 814111987 841135198 257959136 598462524 708038343 888624097 640323473 994159991 312776035 682845059 402606279 674179111 9200916 987006229 183851433 617495322 325500553 453296618 482347123 886940044 925838653 950468963 405676863 909751253 541043324 588409746 583211107 913740726 748077278 811545558 820115470 863995882 420530976 884908939 36316913 297238759 432002273 598244403 295686062 989544794 145725094 766982455 116862750 259018676 888209054 925607835 146261571 736515637 679503151 684407396 99941456 960471069 185205706 942944245 513602104 653376350 179371101 421744413 570686157 995459822 126437579 375791670 671752395 672971935 555823179 970819719 149787625 447019973 961102139 977572630 829855229 868607646 50076367 987078952 263048116 325380892 838332133 974306591 370533615 854619329 647606072 745781685 711534147 995436591 134171617 393597058 908777724 955397646 110404246 667851847 410459242 500105610 507121064 755411992 921889401 950429128 626060418 718545231 583167138 762832573 348125177 490345960 389973091 987920020 616424657 688459260 410436924 511988502 902237563 909754103 689252364 949159415 642835686 795812924 137127140 542640049 865579087 894975401 795229362 990294197 821875653 854769341 2364155 501231667 184099234 493102057 272513469 542907880 76209364 985506927 584532045 979045441 834364694 954965274 253218368 753112740 554494917 785486145 978837566 985894227 931883192 998402015 377420534 771422105 622121042 991947813 495162425 900221145 389326992 402496339 485772097 629462096 203696408 624389148 842868739 918003825 926144778 938116906 93005878 868194174 308045615 876225524 525316727 594671114 124969853 542198741 593866575 980637421 967496280 987688485 86885935 371575194 446712587 783696267 302448993 949593099 186963219 604163845 580995029 713812991 639366117 962446907 452532880 486028747 216198485 835922712 955400397 980471912 902727855 986100035 998402459 998592869 542091921 901705180 956870744 990783827 860781459 941278148 554521869 695465407 572957668 728475808 853918050 884314727 165808881 382341788 571315051 637631594 697735378 791326957 396158051 952696520 997327275 997370281 972336805 996779094 623328329 625894630 361966002 614641529 626487321 799780237 710545149 740446315 956631115 999430316 815839062 955839283 423504810 505119747 10381239 877312574 783669434 812595900 984384744 997743519 539713128 657960862 709746683 730427263 399201669 604174770 366674979 444894336 517264847 743881317 731956422 766963371 944463527 958603358 844501996 935466186 823142809 898176732 870804216 974652366 702861140 866726799 57609507 629151236 46674099 949547441 757620403 801961490 305616161 812861114 357652454 553167685 861749211 919971408 704737613 952349477 752523469 966153656 100843035 384612171 220982304 980223993 228635815 246890206 107546364 370679603 795605772 811199437 841093804 956747068 905187863 915847386 255244100 841753016 54762108 621962752 464879057 523893536 876570079 922020219 727348013 974036813 816812616 944661138 763912592 828918061 276439824 356641497 924808038 969823929 675841629 761236766 16084516 560876346 767299953 947901945 520013015 825655983 811164647 887264744 211275654 704910100 840959707 922121969 384240895 651771259 469731659 493657239 597554757 730267507 271105905 872835732 254317323 957847025 252615843 932891424 383284567 755828104 294221299 353710735 986235632 997497837 556551149 812191191 982290350 984905487 44726846 118388349 424665374 570057444 367758776 551415833 363420410 422732238 328838002 816432567 467771847 520730119 138246116 966763607 547071302 864153644 711788914 952897481 639042658 747576915 876057238 923590613 950001547 989312078 387175725 407504362 261741676 713457870 799635957 987914507 336641560 553112591 228769509 673523611 757399516 838663503 731536318 818769932 834873629 847490492 120147987 445709347 666824693 759873792 856454917 864250803 43565976 500106855 850235761 879197556 26570632 767810867 949164354 970726962 899666267 963288979 364515156 786427251 41151097 398801543 431761641 513947088 877406664 987846916 312723775 895806724 979384551 986465225 884875170 992882066 258940865 651797856 780668398 957161309 699454598 700365665 596530 287346433 301184828 404717489 890178408 894674033 377748964 982051658 438579233 989495791 563983145 727233047 984887446 990054748 852591777 979279161 64279596 148959268 732790914 981892905 532594476 805509774 726223677 951462256 700203540 972162121 991754237 999904713 908584038 994728725 508571959 892123602 780152220 999264027 664614097 963868774 991808882 999393053 67041139 431086817 559449319 974467337 368718997 396451385 519521208 869284810 262509340 461220215 214459414 318002038 70228979 620110208 430155037 472440209 313879759 689238856 160773819 457959405 176766536 624509355 344098843 678290342 182953924 567770723 568185251 751907368 497672822 600432462 702163582 761953545 194699160 327701925 662853788 891538686 6450683 314162263 462982419 903430128 228421974 364247282 394370958 727386265 474919929 612389822 719863342 855492730 980604584 998433645 438720542 778728780 611609755 973283870 249131288 632968553 347128808 819429707 13348665 336410107 555331362 959700402 408095965 542046554 9606108 754529492 174106174 928427690 452370308 558000351 285022288 734581288 634047638 999148168 949577622 979979989 112974254 791701606 631233159 727765365 486737471 827314847 379210872 784532952 867722454 879632341 639479143 820341530 440964849 633719627 754822182 842181806 87068773 558074054 473192746 578869765 629497635 785030151 945269543 980283455 468652297 641187134 262358028 954422398 767621798 781152436 107557573 675473318 821259916 957682883 653068793 852035288 328022139 548489691 55919364 468424608 178470793 338342980 86041039 554210969 165329309 676647550 436792549 702610949 918949575 928044404 777150906 811276204 512791750 670892186 771781074 800612435 406474330 985533868 69506295 77470933 188635915 529074860 157941589 955604074 164918245 214451816 73148058 779285245 328024352 864694366 865975907 982523294 991299521 993274191 828413396 844244961 459084485 559646745 13814288 109849929 223926782 543516187 606603097 985894342 967600114 996559105 273240064 598781070 2950081 120054041 563476601 909633047 217795417 774395275 947403797 990501329 562276711 895778487 77773002 477376381 40445418 460176368 804804198 985710091 88102822 662477595 563551873 870584722 36876025 377093675 23577331 878063554 386983064 991095892 70062592 610742943 868072996 989692958 402259699 690279818 614694297 930006688 857527883 906165993 220997894 376174885 492278187 745590411 34016953 808525216 958307696 976674066 624960208 702988536 503942682 741697792 56832474 762299225 364725182 371201233 906035192 987690498 86910379 218774338 946463979 959017430 774339696 981891457 281147100 962264132 861853099 955738650 966363625 976455787 611475935 843924825 875067918 996822407 413670532 841989529 110747051 752532207 317158867 604751989 700625700 909016496 644021941 830541090 923261093 973381027 810985885 972680172 535031576 608225456 295800190 796914403 629414071 866575088 175827220 691180143 321489032 765196532 409851147 887178425 370493310 421234088 275496805 833128156 253483992 630985920 431210724 533373940 924209378 950875375 568133322 803776394 167136278 889376629 669494033 897397096 517072362 946273353 885009546 967670337 751183774 827594377 374981154 996399876 653286327 720089765 746952442 881009017 430414856 832086844 633383911 728475829 761085977 854304295 648897232 698817232 659716194 748012219 25381727 509914113 336057309 809510783 142211122 636189088 994592981 995504912 220747462 580183123 215085031 393821300 548674475 691555590 571188750 932322445 769870142 822146648 181267672 322065069 188602503 421638101 544758398 690498998 944524207 977267482 476492049 812063982 527766170 712933312 306658085 511323007 956065594 957024935 392301916 497253210 201602516 856645860 470648765 976024531 314959289 710268228 745396197 839099568 137727734 239541623 725242514 872488053 759395048 985257826 136364736 511217281 725982425 978980875 503062263 602489587 419005601 975213528 164057692 780940631 644507183 783837320 136702055 555602728 111860441 211073684 608582094 926392154 748842110 884120125 159248380 840505926 955090283 964485652 965854988 981635298 572714021 600707562 129592870 972919809 274614219 495928496 733450644 755509551 922686647 969268235 397352260 868497891 172303647 982986684 157624304 914673028 795700717 813942473 819555990 845707177 497063982 497079922 881652694 903653318 936928508 983617302 108779506 530877692 869028304 931290173 322687387 938660465 54172658 740787895 74605483 215923688 466057839 690202383 532482471 570646656 342305212 652388407 984020628 990465463 160813935 809334383 161997312 616954405 452357022 716618965 799770820 972299035 365874104 601800399 337220064 852116810 812745087 938292554 782847430 912910667 146213778 305435877 290705539 905514454 60476972 514759489 263744618 462350063 552186579 856824933 951700239 955168750 307063490 462889839 690023139 956926830 115752609 996090373 721463624 796958451 157170165 208259673 79183625 941489339 893888939 968270491 706082889 834621000 619262388 913879102 439630643 567867759 601831980 823472979 204188219 845235148 751717875 873187976 274645950 365197874 898401641 963254237 741722099 921701412 925591420 966861338 16860589 455361295 361594313 638897298 428477695 891281526 370000938 622797073 137980246 597800749 593408963 842234060 467380499 634842784 60610106 782901096 690998899 991296579 103318091 431683065 55378004 137724274 660202910 710152606 481969109 942891225 998556358 999929922 809432857 967163347 756710894 882281463 965660981 983153503 11391886 977453439 176085542 725497278 968543050 971399007 327662020 743620844 143776849 482542930 411811040 705714905 394737921 453336478 155107234 982292423 188494173 293311341 980039335 992035428 190234790 488602353 401782948 558021815 886878461 958803804 261601012 666178254 341543178 561312861 310523544 600572656 600886839 943601659 219281291 456408268 667754856 858218079 453623060 513273567 494524690 558644539 509509490 871393072 200371687 979850884 219042746 691268427 141546118 690261358 130442705 470223903 708675917 878835073 738090492 878873131 369425437 585168516 15884103 389508179 495150719 956281320 275664982 409155070 149125474 745982997 47417861 112603174 406346784 770889189 207077841 699467779 9472756 820978213 798510741 978798904 949037316 973186327 476235018 535397470 484570546 745042185 293851948 537304474 560515171 721824964 351870601 650894764 77360608 135811831 646724836 859488130 923600942 986427274 603117811 728076578 518762474 963475869 611828961 743331057 961246109 974236134 304401525 420852641 380385878 704817737 965517986 982705724 418575006 450546172 720600206 795804490 127301201 942489968 808427164 964188242 200576778 469565757 328827553 429794611 576401076 648643884 564562353 678545378 426780365 952754704 697737668 830925757 796278677 875638427 254824860 736953600 414786477 784031235 657887456 841869543 666416696 975695178 962054291 994203687 802944978 825423453 620177418 684639356 661492983 848505868 309814839 596096105 50901492 738481056 862435889 907176096 947786553 971266424 709707536 953390471 666496965 950075513 268439 873516270 832513384 838743988 398362123 542754756 863711329 890948901 859632152 924350830 153388154 421006515 181482783 265051127 977939739 978408585 96089102 690634737 129307975 543497718 523236469 979463054 970499340 982324896 573032306 727682669 55889762 410642112 526265553 746495253 290469417 393631495 621083558 880601034 21532211 595277201 422763021 661793771 603604342 775630042 869321845 955408017 546212580 975812037 762841035 911515535 496357169 671168178 879007679 993582619 516734924 851966112 10459775 246126610 619974730 887931205 245952764 583627892 595912632 703666285 10371463 319013445 438547056 962290642 577717415 850881154 851784967 926745878 168208034 715847386 851072398 902923306 390654627 578828453 25221630 863481182 793518359 985655832 987835108 998778869 196660563 782510872 863329550 890834895 490575008 965006164 272315045 683844399 303870880 630058434 175948086 945053705 523761415 904558728 253972202 441419491 386131168 469610731 628606386 734105104 296674569 311637040 697686006 910867922 480992608 941286559 345395359 383690209 506133330 775265620 833549701 847793502 432070583 554331602 36257111 699703618 548615843 664571709 543372812 847064404 568588281 848337461 714287298 905625036 935635707 957837299 988483255 999492261 831527939 944874266 710672695 861934271 141089579 417228399 99027565 113604189 248306192 647619020 124545896 360435671 272499770 997669270 973373130 985272369 179700683 252717677 116169651 469760938 457726396 662240791 486755104 740439558 783507474 915522887 805726259 808741878 43173365 204583993 575982025 746821933 610635128 666825855 270623255 680988577 504166579 671673447 168882121 929415083 760331250 942981958 540275387 646136353 986264499 988045655 809705699 858569961 952857226 967766406 101934067 432002035 868836581 892103377 828267110 878620161 174057480 276324272 533060216 930963476 483800409 740155473 487038305 812467339 595126825 995010375 571865805 713183453 213030177 526273628 982808022 990356491 102519189 474852321 1334204 15698880 778761955 878653820 70396588 336921883 794683798 932364463 385143566 541573410 84546700 677508130 996563222 997841455 207190697 360707906 902733370 956633969 211789776 658291539 951289430 980980025 963374751 983326827 611384730 683396595 280576190 679888191 688741557 994360137 867508803 910515050 857885354 975762819 431899702 775857052 131370142 222671386 723346550 783136570 85863555 371150145 622758248 697855452 261281423 334213803 46842880 979356290 51638503 732650932 456941834 942699813 503116240 845983935 644762445 837617385 941912903 967024950 994830977 996911126 811163869 929905348 291134468 376180768 397926144 728101296 484401821 684962537 499859395 695182479 116588039 671081378 156921685 206570487 487313161 635366986 683525715 877034481 557981174 592216296 999256444 999912897 564871941 775470238 63997835 897192789 284734061 735783682 300534297 545978702 727237967 926648601 226353183 926102883 902538890 976047925 259189498 386972396 949343773 953937110 58285954 477419336 998232502 999282387 598068297 653770808 736496950 739683800 887066353 969364884 730587085 842977575 118822395 655048606 763146031 863862338 535813807 848220776 818434823 955725778 403411969 644494674 991995941 994654073 338815942 541190630 154632685 220239584 976951559 982027006 136043620 376844880 869067890 951697488 970590730 979574873 463236351 904080550 258292814 558863548 28084679 571273161 178281437 639599863 600324453 877578390 983641287 999798164 849065400 907863814 547958940 836196462 739956896 909937217 494452604 975357085 949286529 953931511 779492474 967173979 445223083 491993788 164039602 871587277 93947773 656946659 579224994 805031199 245240182 668240968 333971395 597762394 741158013 820690339 878376381 929810911 688195121 711200005 909968236 974182778 823252508 837430063 311024595 897160146 412427580 826196513 374049780 925118316 265487993 850150143 133409546 890385517 754898715 933309765 20579372 775132070 728626192 977683476 248830921 939720973 785987313 984364286 152948139 960014546 171214327 289394033 238909674 909591291 433614698 658268187 810893648 993853827 454476683 627280129 895525695 909720283 344097151 882196086 448037130 698052855 500124983 818230850 346780020 495234955 698632294 972022372 536353026 756980100 593572562 598142633 113765139 886354103 438270295 920435573 942218397 952824061 918853824 997794413 387469983 717789753 983828892 985597333 763609589 911719904 196655126 711571583 359246702 715670558 550886742 629540236 802990335 953426093 936855946 964644706 729669615 812993795 422152801 502157349 742143647 988438406 636565953 843365259 407203064 570878935 262227958 823067698 509398868 757640363 597372388 734890579 993117372 997870604 239915515 903072603 141414965 968266165 947480233 966368379 965046102 973904795 498982383 874235747 264034602 728591491 261752005 442934448 463525727 880298721 419711987 754221374 891207007 935356774 186740062 351467425 739429690 752459932 695393525 722269783 577274833 934106660 20335048 236340172 337604713 597280276 212538478 788523959 934938941 993388825 461505093 617043908 443939118 692829963 101701236 939655673 546291748 688535783 161128269 202971168 870992479 963035108 585041825 956679691 247642643 452114456 431381031 478483752 951279831 987005867 40586307 699230996 703388263 732823718 986751237 991966363 8238099 682085487 78244020 943324526 912407285 990722080 714564806 896635355 9816033 319241640 111371635 726815023 839717044 934170889 898416723 929716746 515654858 607238278 547423328 593081224 22835561 200303668 12905723 577357586 710175633 843714052 667861679 953578579 773265773 996835001 181123635 523000529 842694920 920960713 676487311 838833337 675319220 931934963 809064325 939814800 875751369 877610954 643988704 960504502 977672710 993495938 656321449 948130636 812076278 917791335 240234599 484480553 714115369 801997508 254073765 794326883 19717636 780673122 633201276 691314123 608400355 775442558 875550668 987964065 582050037 863346264 817768120 861833923 557781537 835118905 847717794 951165895 861660558 919468644 987910902 993773665 729405634 834451537 773733274 922838348 789626314 828438789 370887576 415982977 900785585 984768640 31305185 712477292 129431389 289558935 739239033 986895200 167792475 857219400 665288699 976715080 289423820 408659509 166693384 576354925 558304259 730471006 626235547 704404120 663611775 874874130 256125971 332315984 65321448 759083756 820241933 942003640 954846828 957641901 920768749 956251037 311169445 697579772 144528680 536167699 225584092 374045104 796057168 875998620 96226178 749966348 496186670 876746250 393053795 546022704 109143413 776098211 190188846 811455348 221401290 790821775 867550178 925262682 446521383 658414299 734197282 993710275 250308581 385635190 604141860 690711172 447751967 854293086 365517306 426477551 809056207 873719431 772007296 947609713 408431438 518202226 185950591 481032978 12249361 448618913 965506839 978946014 814560615 847562359 995444998 996244693 851389302 945734834 874271602 970129794 630017235 927136445 655408760 707980874 377752794 736556246 288759249 995385773 876513595 948491554 547111650 677170122 318305240 415300915 820264196 902893584 34519082 465524649 440064779 728196681 855594605 950931186 44491129 888196925 40415615 280447615 262763704 922696577 534227658 671262625 786831157 882676194 658376970 863554075 404501474 473385128 211465640 823251990 12912464 624357807 544438923 770759098 668315188 706235303 680440851 898708505 430733712 883796238 853941387 878257683 589780482 984603442 423859374 554666524 818454025 957820821 315005916 988563651 853262685 907235922 372302385 832211051 957118348 957747508 732431777 911103847 85213953 890022523 670522459 762106495 434085368 676288724 203846500 253995582 661434375 691605573 528734868 631205506 790478222 818624758 5716642 976545242 643630081 934437638 957506708 980301674 468244784 883598965 195871293 745372748 579930452 920018713 921422182 999206935 361333815 390292108 576074723 988026891 64476430 592429210 251698951 622849920 317562234 943625510 275950249 659739062 572873432 707410227 958976170 964591636 178069892 474840689 728710378 931087849 140430482 379376153 972595817 986433453 351308063 576918627 785104768 905375304 591245209 944503310 735946956 967182000 197628661 476070222 514305182 780977978 113040240 883905402 617601904 895837761 421431922 940902980 720534818 769188803 883602156 985349691 936719184 987043448 784881668 843582030 201782710 270412649 265766993 607663633 381465204 890184418 375540103 745541865 894974464 964516345 233919179 913632336 493450149 637045909 609276009 669754075 110616841 467116880 327284444 625985844 909215943 927088372 567098038 969013126 360393429 744190643 700485309 733625641 966803223 993652322 30009987 664654824 449374675 502898027 264044629 649681822 549688244 768050769 232422311 948295285 171279231 213156360 461336510 576256308 129745405 902942613 50917094 360748395 310525721 680852219 70123606 166619278 646514549 752332176 647595500 860383100 874165531 987981293 383196614 699771253 120403224 848847517 792847545 955018897 845847114 884550988 591827660 855703114 186129683 595541434 923815809 988794501 170913846 314822711 746386609 754756423 211523815 275266631 937418151 965069911 427590951 606929471 751946665 833323100 868665047 967718957 390167364 972078664 244849747 974138993 604197441 965203472 4757337 438117340 384051148 543901125 442705244 760790617 31853061 980203611 488136436 712930858 990173839 999663846 819742799 831454510 493997103 553011014 67667135 673944614 983109947 998004795 412770618 908484272 568006190 617125023 541964902 653677969 73351562 259638610 320068233 898543393 627719715 748238573 687652539 811119529 606367044 841490845 867806899 986385911 547913363 758505217 348092692 483600407 742044970 837557019 30222071 980291362 883322887 992612741 483692223 841813112 188720437 986005100 938279542 941375943 849173304 958189161 210086111 370965493 746111617 825623906 650783713 672303805 27217102 909990319 439071788 479948606 485257955 529166761 396291367 862145292 626003801 953893549 360803441 763952648 677128645 972125387 909481937 958865237 522958612 805561956 884472108 980384692 710368506 955859522 308548797 538533430 664721289 725635625 839710644 955660768 542903284 914976114 838408754 929031871 620314174 660083846 754469724 996882671 948064412 987452972 898996318 933385947 623457025 913474785 29321764 983155388 842494909 904339877 150981469 454518119 454029397 641315295 952200955 967799771 81038803 567201043 432862496 777008855 1462398 762572216 859903990 959364617 581423338 644765157 411250470 538398635 922517988 975799965 253546736 423920614 259498894 544306376 729009376 789443433 371059401 430087327 952097166 977966230 633714558 756719217 533529760 606393465 930118679 961382404 943336576 963077586 859870025 979230500 838457625 922535512 316616182 944135287 815826807 938986807 857831567 861761806 180057043 702309025 614716388 844291937 53187051 525681016 80388143 346705380 36111532 851265783 539002751 570209422 645911325 683679223 368926759 759577591 415751115 563236146 301828360 992851553 174421454 500776797 796251705 837720086 551600950 990342717 303611260 823081677 467660290 629697786 425360966 989942971 545714606 656051689 405897527 888371391 187598986 202124440 296715726 935781124 397293947 716507896 774378143 906240286 111421678 696635909 916100869 954851628 932093671 957079987 597325500 636250605 966795775 997114634 538235513 696351466 654810448 914580778 329560433 574932332 588779578 726561997 372392499 677166291 416417092 691737980 997354640 997527756 256038327 873018400 475797313 766605348 483121408 703965267 566887232 824875234 872563366 984200253 565021347 964661845 730519409 917042654 983803239 986365328 545980175 723646092 262389430 891978912 776380501 876956988 249806712 606940360 469425091 841303667 676730238 859319428 253366932 357207015 401224884 516566517 4644800 610577455 77296192 148996925 233691042 288532403 430757525 875008542 500345899 985234404 516128084 779818110 347365618 958120269 507352123 741241277 207286268 814081575 711060024 910350687 534774730 816592482 744595939 978072020 2335457 389243807 690172494 789973612 69435688 406644783 663113363 672335143 651749988 763619898 884649218 922298525 189510620 624819348 146339055 608346481 152074768 752888997 32714613 350564874 848189549 964585841 350948295 936111526 598690027 783396391 612278086 793695799 367507943 694273794 951485401 963161726 273816931 685081213 986169024 989518905 864915724 884422723 36169253 148451122 171844732 414555726 151351257 523661074 645113578 878230293 107290110 224896927 358153412 533215022 979547623 998671090 663300964 773094833 950798765 998428150 268876923 861359011 557964059 847795629 377960645 952645190 553285745 905847725 94307878 951693679 172801731 290532535 607208877 746080228 186156084 315001778 183469571 619513815 794748467 796834914 392901191 646004997 248149369 484526057 313216036 511302751 81556406 376683875 646639234 925811949 442182954 729719113 316481452 676459333 915093367 922880331 709004509 965871338 647663305 742005026 269440281 855799039 744900697 834843570 616186855 784987442 184036756 381332259 529168301 987766261 411673669 995114140 805572816 907397877 984724642 992926658 411871654 579200276 815266988 869555260 854642623 941069194 437400292 954960845 719557534 860352177 22307600 176039421 226572108 929415202 746385258 995354832 779387661 796770604 738587260 746447940 812772538 814971658 595143354 933949659 575082390 794950510 372296351 432465799 57342671 723974463 946366586 968952302 246059011 429731746 970679273 978665556 715607004 871943891 381361595 736762518 554196053 696477645 319337084 902982482 856596077 856627112 807429885 957086197 240926746 890755039 694921094 820389333 731546593 734078188 136236466 304235486 564376843 619682191 725755118 924321782 510860661 868425067 671180475 770726312 866435545 935247760 374608640 494173290 93131775 340668720 19705640 416921687 784559392 792086668 308326161 525545292 390683685 522016741 293366274 369951631 912266793 960955828 565376999 791728628 785750821 969571169 756864957 909563486 523835744 866107002 107048071 711404563 998107574 998973272 848408062 948502937 327977219 363798976 113785741 494054645 414406110 920331373 912737722 968771733 633311802 853855280 446532582 542297896 661370284 680686908 711394456 734390573 843148635 891267688 484128236 926127767 453985084 748779965 375697320 961980640 518024926 776664259 584116054 876465123 631214302 736616797 251887245 413861754 76132652 867301816 614629232 703420375 805730893 961014478 667519115 792640146 694589720 998362634 153488550 530096663 70875091 927323422 39088200 543450347 534812202 725381545 292249221 365848634 422753626 901528482 677505045 763209991 776785668 803955567 885455714 950172967 382577303 920451164 725420274 974976991 665096075 817457082 264829519 277225867 651297669 827293968 871572473 931891268 97683321 288987106 431235263 811677218 271030778 431448506 189543821 749304094 433334317 560791194 616249667 648553107 60453469 238718384 352046950 680700368 275176376 553771894 631462589 959388872 619058322 916836163 332455312 583098126 815431627 818843018 415395280 563813800 346024392 931391853 811663568 967471443 477059186 837681335 881503888 951612109 111469117 930727248 823311886 849843168 912976359 992053800 411569448 636650475 538616918 719747512 535307244 894248039 547538050 555017851 14847787 802911311 807727048 918395313 323600695 862205560 14682471 486618541 764667264 850939809 350835804 547584690 599127219 950926266 117175904 459506442 366600260 463108323 564092399 632271486 711417689 942118507 872587689 875862138 821770160 938820763 794543070 860155884 427304377 969605760 105380466 580598777 177845768 854171814 621925703 940211437 234322809 751422893 921577955 974881119 59635510 950044200 229467110 571530251 483954221 920879818 308225385 735849728 797076174 894592167 880480170 900210187 821596167 855116738 704848311 850062553 549979158 577368945 232707755 722549213 185586567 697048896 175641819 845500905 431695330 761830419 989201703 991550848 522266318 963761906 828282621 932658374 917891948 998481703 658565149 698129591 750835516 775725667 552555068 923173852 767728657 795808336 919886063 970948447 821629219 839821161 263133829 711137014 917439297 978232170 186962508 345901446 76237595 589637328 452935645 834221415 912228021 923648501 792441205 997315696 98522690 454023614 255162835 992033678 997221461 997253159 591168076 709804025 606209485 725300438 143016238 670602317 983029980 991438334 104655408 587969530 972262986 972942483 233797167 233847155 98408015 526452783 53051160 904836095 283926697 312812146 263782817 311422412 599786725 744219964 964538216 966449548 145180581 853546606 876974725 885205301 183307589 432877490 953555280 974691398 872747296 940607414 359340424 825770811 845794049 945765296 533019574 617047135 498357997 849948362 810247747 877212646 782245615 885071260 806959766 832969399 991001860 999746622 975203956 982787292 985584994 992147171 402639865 653482413 55030374 208426447 526491925 778831218 311261544 897153715 742813889 880915146 526265238 661134016 946473395 965744665 715870391 982680162 200431869 554646605 920126401 948488139 982006095 989836761 649350128 902998721 747969556 897843435 367492539 914303946 667138236 990711545 125259198 202433616 715762349 926080316 129097503 280680717 578685572 890935331 186816255 968202865 252647871 769790635 790564468 870050756 338324012 748439366 2055319 520616134 646415671 665806121 248574144 418470924 461226402 589776774 229947042 707395831 300821425 358541204 514817557 756444162 718133206 942133954 588418485 952051179 184742647 347941826 547648844 987501685 744249231 826454760 22105687 661116951 544485804 910372172 458463420 969518250 172529156 365120042 54235161 84423354 651411045 983306733 844870675 926467809 89140708 799493037 826643115 885893710 229297505 655338575 370410680 635667525 356129274 707555220 850053963 895634215 91032016 437246079 363124538 834458299 8059003 463973674 327720894 948989398 518536409 893463564 156493680 960313131 566873548 815746784 10400948 79850775 977725230 992807379 723696565 746215442 331682897 451220477 996846299 997188956 111549058 393451435 380178945 456349305 875143660 927274327 534119687 728456611 915891138 928002346 670199632 896045409 568760968 761358712 346628957 554727834 791403846 977091081 683648141 755851831 595855685 933540024 322355605 736100085 14129012 691402166 182583908 811946064 21405892 614587322 527501939 660187094 168620512 739710325 864909321 867872018 869625171 912158374 518275952 632505523 780587563 891822233 81717033 168198886 716070151 913531740 798107984 897470096 770736384 959190786 192583843 233478344 584197275 692942967 948377507 948627575 343240348 641405219 23648569 228540829 723030548 995298320 627009142 662044510 599819254 791622130 36538841 991418249 46146939 832175414 897369077 918651253 747868337 936514596 309073682 589078708 690897772 906115167 195746420 828686725 370389287 710884717 478313232 873339219 819086706 829547808 755083462 907183228 504398219 877151128 532409651 692054877 25483265 118873355 282775662 558625665 859065417 955843103 265894180 717417364 643187097 694488667 336893747 448594619 436064000 666701982 48088810 357874810 123579621 583074034 335244317 430361455 968657750 985758354 308663437 319883757 950696388 998350108 390648289 591769443 610553579 977701932 29446762 486156360 232033267 965331002 519921117 954101030 484130644 843778833 399735348 787206420 791618947 844785819 589076075 822831628 516469913 608696905 964649029 981827210 436872073 859966644 802126413 813414201 54728929 857257855 274496279 363869544 267097815 773937694 41707680 588338290 930913533 971637804 176686155 327661862 97035864 832343343 886108392 888188374 648321438 745459639 514428984 562309022 997784082 999680901 906296147 934937080 596729487 881464026 173262652 352924845 978794183 999555852 589681106 879261407 330418630 820131625 519621972 594185184 838198138 932005101 685689037 940195787 248115067 807671722 610457816 700228526 618714786 661204388 71080630 928797198 639189901 823062746 248163640 274099150 37153392 133528673 700172224 887641161 625018286 672285373 851278612 947848337 388306651 775296763 659324015 913233837 72321318 960450119 614577072 967596101 852580614 958740214 910992361 964510685 592146261 866196715 820157284 888351804 863823251 955510953 826401757 967375269 316864172 867673527 471942163 497846143 935402812 981243769 9546365 308439618 687331341 953072637 484070313 506481205 947697489 992465882 879493358 906584116 771313281 823634590 362344952 917198235 54705550 612571425 260940147 564840876 254817389 659403089 641665154 680920260 816741039 965382391 111555892 112842043 715947892 805863966 39494976 393255383 56460359 61922898 59774145 107472969 761257822 807585799 75368509 166505825 684857707 757141681 374154359 673020125 256816446 342442547 447788174 575454545 932745737 960176072 384211997 619433691 931096379 988158512 594086480 868393796 728182224 956036371 160690060 295339153 233353534 777749407 297957405 828607020 777402546 875773717 172103610 281670648 584337207 717573790 678631331 959894997 583006409 914674188 246157621 844369586 718842218 945088229 799525356 955717523 955838316 981783424 996594951 998212307 741807294 881875634 49888773 195839578 957188298 985474784 361583989 392774407 332846165 945891974 10681640 470604382 856501767 930883847 718449457 740576132 70448431 464662701 377154582 708072044 410603616 695324896 361176903 678855434 434137792 436487040 145960444 975553549 548177328 733185612 71310575 370155540 185758542 856350504 576293024 627406117 123187816 493644546 925840798 988518555 159683925 861452112 904257017 916604537 958728162 989695560 211772019 577090618 114713390 123610478 33976069 687287799 597943084 730891696 83466375 550134090 483532483 662417390 550190420 929608384 404087690 968368212 25653983 902192648 301346441 385902298 636087299 974742604 20666223 805398293 911814627 996464091 606823939 652604488 616020477 858410858 751186171 961225813 53795791 144361284 369086692 584337095 307699563 485684539 154295093 306221474 827516504 873677599 781811686 787047169 822760025 958241970 386160141 562145726 854257863 895892873 775692324 858791763 706782412 959632623 486251239 770030441 978034530 983586377 774744368 929060556 685819588 941258300 761718978 853377631 639530130 739260112 167165504 521939086 298039729 576582677 93989414 353830774 958420827 975511450 783037420 848177139 270169182 437273807 611959364 613514176 896274501 945205489 320650964 508128914 979243623 990060881 761925390 999543068 106613706 882977501 723871342 911584119 639772526 680512984 257140893 801111738 188001614 517448837 717585475 767195844 202804536 923851066 142156682 726770926 796386518 858225756 801905097 842720883 301236151 762551950 458523267 525033947 164122168 926922883 145304700 345390135 20788718 697648565 503509403 713623146 914359770 994241367 956031723 958328674 854168813 890193094 267279506 837540683 118418330 472658266 670161507 716033443 30238265 397346937 20853760 140163901 382797271 399836752 943190234 984188795 316115639 617112132 704256990 860261939 368617672 626516025 47302749 538842494 630869915 848618931 615717370 833297856 743090872 942190150 772693911 849578518 710656801 903442866 609343652 864283933 15551987 438438122 803600699 867757816 573592169 853397795 281341064 773412059 712179983 848700634 474499201 776006668 562310968 845336647 975733354 983819472 456671623 872081696 672285822 802066962 917091832 948452199 941307121 949867361 987268161 988223820 329184951 374138673 809308220 968510132 763094072 845650937 574769365 582140394 713630930 761149015 147062358 996716824 315151755 954306244 996913311 998594753 297927229 345015077 787481874 861429002 400656335 994036646 590056382 729615909 693827395 735756097 75846233 413526567 868545263 945147334 319044074 953419502 245736401 603567675 890474455 992253921 131052349 383342709 29718701 525780147 628293103 788230941 944742169 982209398 579740709 903679372 443560198 676927360 724596434 905550925 502620897 955022879 96178150 235357085 554281309 672633374 869355970 988188779 108124483 858288006 139370004 927978459 531606654 660086383 645487393 700496793 703193430 900619064 657744751 984654157 529865033 611177194 33173023 448477734 655698750 755276774 797103554 890815608 99766360 841667495 71297726 621148555 938363404 980136774 211605497 984380418 372156138 524716292 674410918 923882615 411295081 700576739 561310246 878372334 655215486 754286033 181996358 834914219 25079058 579909211 960138164 989862771 748627597 986311844 655841926 715785035 884904366 947756633 299829284 763552384 732736818 930682627 940677237 974660508 218281482 241598849 212785231 945275466 532478125 672422020 744647572 845606125 313451649 387506633 750421481 966237332 972231166 975439955 680719298 957612167 523495596 775513468 445275343 731883181 80577867 880918435 839492878 856563893 700391841 965182469 567482379 837283771 433231969 815571819 316536514 605879413 595805386 733916068 132833590 305653749 592004014 885269712 582461418 628621235 417041877 826934671 53828295 245307218 412326737 951115973 110977843 868771924 631410155 721085693 213711208 537475342 799486206 812772056 656789545 727937760 511758102 599532703 827574101 864314728 915679049 933273706 107649182 818288367 754426892 769810217 183013643 986133330 691017596 902869907 474296668 975609907 404177999 711359757 318478477 560336955 477903936 558368618 132630843 649147449 331043240 849535185 631907175 744641067 74783673 141695275 168350821 276819069 937167914 969148878 248613912 441303437 414216740 885447918 764998642 828289746 527125745 892711212 256297532 281629458 783129163 845066877 289441733 396744802 604139236 762671381 799074774 839790435 674964780 769413694 274719728 789971086 92983322 474444199 640863909 939066370 973771148 998182387 653924595 983189942 810037692 835126315 912778677 964566321 190310743 870772834 448110622 868478563 548141751 587539062 629546568 954029640 326933043 974611011 477630690 863140713 244373402 263371979 551899957 943421245 935817719 995121861 434670851 537315645 77424390 761624461 453706095 881713681 839132820 881860131 493155881 832353631 783971484 993474306 206980588 678275757 253456824 283041054 62628464 983335803 309989074 664898833 938790219 968805771 511243920 723141330 702316141 824421906 472948950 665698447 404782743 917999963 289069490 461932360 728163619 831787280 785100233 949317647 660246040 724986401 213134894 955994567 752154869 820586314 966049158 966397331 625798107 790861995 19850784 381767111 545330098 606872499 700726307 856947330 995900458 998064158 62464415 659465938 354128005 655214524 121758514 900840590 194278602 218601052 114644405 177005245 344932769 481949583 557519954 818626883 927317269 989869636 14194280 120197903 424181824 768087892 146087851 903572818 888035641 956509286 761634622 848941271 375563556 835002597 320540760 489044094 30810113 606060645 721599699 942250998 816922398 842260294 81874804 936500502 224638702 778342812 275594481 769929712 42446357 65901643 732817017 764661217 418757406 713771026 605439348 822006992 959799224 983233332 383840383 539681240 531620394 675968135 482218437 921832333 66997180 712358470 84996464 973408510 878159785 974949946 79367642 239797732 853222297 956809585 200509940 567371650 670464924 865659590 132789327 550657684 764602289 770569190 705308769 954423776 745801 16069700 673961181 693001253 864904704 960060861 283551238 658109820 233916411 594634485 19514592 163649807 686273954 891422267 381973417 402894237 744957832 835142416 829492355 975599368 582209460 666622639 45144889 239446485 297998724 410553662 210127723 940531095 284516917 901714599 463614260 855483574 367642177 464653603 659599772 702803898 580716836 821297571 88079360 566447281 194197693 506713398 721962211 912006136 823489304 998664124 130173545 309055727 371227280 844686931 962082535 974295800 947671386 972754820 685724050 969707679 438553585 677325208 960534775 976013471 481866147 756422883 450595162 936402340 391847531 665323403 454655175 840807121 233810540 414457483 29381762 387361433 65522831 339542322 904007400 933177249 276649352 480907898 224855864 614242095 748870811 777450127 326732772 725068444 751967663 974769647 716392983 864135175 704186186 936100141 505875701 672263645 626282687 798743607 612833438 984319818 706325645 956963427 388816994 751695282 396931801 556290464 861644236 879104853 515350249 828410086 376188477 498916938 691796737 804929278 981809395 995473589 158539850 741243635 775378859 965579541 727858728 734370630 509511588 980412527 489710789 877925480 705646979 990596681 932352997 988201736 433152152 838344095 682367253 852776661 537789795 681728945 973553317 989586048 908243495 981062416 830819466 986640598 588531373 705363358 792489202 855221604 302644144 741413363 816634481 902089553 943863591 982025869 378018601 549467701 990257676 999478016 246596462 548092654 245750439 769074034 141488919 300115557 525010730 672288051 305256138 573901352 52384936 213854028 540164145 607066295 64870226 331208373 123883260 500500484 47511956 724586808 135440389 980761253 634563885 712229914 46259363 896061198 758757973 894525664 897906882 999213490 422564497 714482105 276503511 840774180 357036507 963403892 754989301 874516251 431012077 650884807 550119409 652968721 754976123 834345753 985106168 990856123 580977116 706189356 405867042 927506422 467608504 468665439 159917592 842358444 707920764 898375759 423817363 808507181 926980549 942245337 275394207 514463107 95760763 814609230 343747278 785248382 728757569 911948932 736556650 785995436 881915202 973398228 228497280 240666524 47359692 750255336 269457436 994912821 866723250 964382326 68495412 668943784 278232412 430995784 689055374 787179320 806840303 946705982 221845429 268559773 256459184 511069094 575515952 921644860 246738148 615588568 152319058 677753586 474268044 545573350 452952650 799152535 559174686 670682443 209612942 607179788 349108499 641124921 659265928 738510251 355962627 584061838 673137305 937625504 24593052 719103214 517233624 707826178 238152120 925153612 479715106 727133365 312364788 984163415 762615984 933768896 831995186 964458930 639811932 984238009 453099528 863174192 406171767 790619856 61862259 388924391 621124167 701517123 417229620 946206579 795182757 868957064 332200673 445275728 745759004 943914818 686765315 990259408 283368307 779115715 596906383 853299930 266917942 559112435 177592224 953141356 79003474 235227214 95950738 676188342 979961123 990697914 499188305 918723599 80132991 898941376 437421491 725152916 708111598 936705350 504481790 896487530 228462855 677736332 177592386 414530613 12104811 402683722 119917970 782810897 650323129 918940683 814703449 964740342 267796743 982127756 755535082 803863563 487427974 786342254 147404512 326636906 861637215 961815625 629732604 804884798 708985938 951969201 455027955 816059958 718702145 781203195 754749465 807659145 465345319 486473242 877124471 948338823 849721574 879728051 915339499 926969742 60235574 706788286 197201044 269353981 740530295 760504110 891700315 938141453 132525294 910199813 989773125 999829846 544075937 725174775 64275012 286722660 886007516 947612320 513029028 601598731 201076846 577636851 160625170 169057769 528514532 620904233 961922101 991548594 74705437 793793348 310998343 626202738 760572729 836435434 217607329 983876421 452468391 881907380 628498630 646418709 747852054 808736213 673258890 933497973 884388490 960363226 740967783 863308406 592238089 681376078 844094831 845855415 898677140 912072679 823027636 971045427 769580659 828644304 863557578 863713704 124395765 218397738 490644118 929213455 155456151 391698932 341087066 957147035 790140444 864011015 516642924 789721460 215528927 411704201 83481608 345473245 32808132 821823856 459700566 734471454 190070449 603494278 208777374 543167485 949976459 984334095 944138084 985345344 608019086 733857716 706550916 930680617 310259010 967091362 782287603 866223383 856805329 930817607 295551862 900436510 917685129 967034414 455721464 674828668 993182419 994732672 677497777 881033076 220633674 449652468 217743021 663005048 584934211 743198505 499937842 674078149 847292240 879976222 515827332 731323097 851724810 964471261 730146381 923156083 64492669 949480979 962051661 994239519 172838169 572827554 453877270 983074116 834781517 911824105 739507147 800599498 299843085 981998939 320759509 781427370 218271577 714287007 443952303 909603938 442499618 500885828 876056897 962839560 268962548 517359052 816873610 848086598 272927897 934179731 226500213 519726922 463801504 620949156 702318214 987492203 70466754 471089934 247391837 399753826 220762611 842253583 745278088 832466647 333230867 859656667 812388227 848612099 930946764 977654935 326825066 543947716 464823645 989667185 98277635 416253230 44305948 733099215 746407205 868351658 761815997 994046922 813551241 877896080 124190536 570719067 964695416 986192237 290422480 939925012 122905283 829202786 633326814 880729310 507754680 761358209 649314493 774516561 337635342 934417153 823137439 933742928 624244577 966595882 674732236 975824016 481921038 804581818 836540953 909224368 851099148 917217489 906960605 970381087 528953889 572194122 242205278 702630347 767628309 872376401 212442334 554543961 962932271 969172251 406738128 599283335 224444289 638065509 461614827 652337271 582317741 706044182 679358658 962925113 961270313 981474022 714111344 901907255 559295567 593373410 806941440 867150067 361921052 741788371 892350574 913799006 634248436 731518286 203213133 347866704 811353926 901845201 157292956 742759006 66242207 479242907 724891749 762549651 782384023 869260127 748143600 953846644 174903451 701162390 810697273 946740692 668641630 903623520 17002699 588071091 795182419 851399676 953140535 988909959 742098726 958115980 321249696 826330157 135238461 488073642 221613053 528529201 197737661 653232585 592403641 654816684 17772517 283355769 23334489 718272438 235069388 606951652 726703762 803791596 893786279 969152643 808347711 873324763 724690032 741497244 492569532 567245057 113608328 479761707 415145684 856990515 836744795 932750763 154363838 460295582 337083699 437779872 302611745 682305016 6065363 376310106 291131200 398243470 581423018 589787734 555710043 627980365 600398067 845442978 612126523 731131277 343550398 562539055 599684624 981203205 364903756 406003818 1387309 413039127 884097949 924640830 308154667 961028133 730006254 806156232 179374237 343676972 661782245 887440797 387404595 972371887 981109106 986596512 444195156 569706658 868799781 904658083 90859726 468940560 880527729 944583580 749601177 852795990 416493609 772279524 65347237 878035302 620692389 947418984 949216032 981776484 407986233 616252222 824942281 965873850 89056134 146584928 778849322 924094245 707778387 842853740 496041705 498469281 187666480 923113128 862624423 900893445 129786019 611205010 264615488 820538799 716203906 750431950 235739228 879028972 166036304 350658796 22552232 133225395 759347508 834806594 763541384 852947404 149159332 819126397 360797622 556663794 545001895 688906367 121744629 906459042 817340863 861689836 285459307 775461219 363210193 765252595 931885199 960185170 920247957 970542013 965656138 993967952 216395462 298455746 964621016 983549001 154372355 870294416 452916403 741436729 217900442 755718479 553802124 875573396 403979926 646559180 411251114 961039835 165088162 614499688 573989438 707659723 50407284 904437191 358767857 447011635 180296412 909057760 697365323 979704465 241163776 712500449 802217253 986710964 790127393 936392430 856237485 888243084 294772515 977850446 423519107 939093363 629058262 695171386 962949429 973913228 625366442 792121648 233440712 804708244 767039727 881562441 211285036 567259140 760064359 927508859 965612923 996210085 906039544 963707132 594118877 619565838 363074158 850633806 555340464 848990392 378420470 653445355 402056909 964338169 403410198 928052572 228099014 796821414 824727318 888200441 849035489 963655967 638711390 750343545 822265910 862639232 873363352 966477858 665211981 939924435 21487810 948979417 232196612 383501712 440936317 789661916 790508857 834320378 14527970 280958585 754442896 919087522 733553764 891835984 664180019 769364026 188784813 974301979 123292155 551129897 700478580 974696363 481791435 772221504 577701523 821205082 738261527 738857225 422054021 553409939 846535075 938721114 841081077 844843868 615562770 809046535 80294442 496485122 590552592 851605672 466282959 655836140 425805091 836442363 649446551 816826881 32902533 726665456 544740254 923724314 265856923 861207303 176612245 601888255 317202115 343395008 342081012 581478958 149392086 879821971 293570498 803286185 184214937 550933114 334431871 632939931 864633357 980661592 853043076 953778726 584619246 612687222 650694954 864594132 446427093 704306953 907849697 944023981 98588273 768649350 695115144 917385027 496133056 985809432 88025353 206742426 966226225 994525135 101193566 957733642 995335733 999798590 345877448 414112027 789612478 796358557 743688137 768288583 898601694 966617372 375996514 793671596 801820451 835683495 808960935 991631541 210061110 581553425 721829741 938817906 330792708 452680155 914725138 971568394 186935266 824832525 658290572 828953240 863068120 929895217 770503256 833132085 668389336 672435203 990778927 992940771 834985132 997869656 961979102 997183867 336306758 535293164 174724316 247074108 94207980 731642587 414917782 820291217 443799310 496952894 272581087 274017211 129782771 609071320 380595169 897705604 797750055 805977848 712763538 788149959 160163548 532496224 206643219 470883299 316741723 472384424 732481134 826311350 680482725 803694520 77183241 318381164 484780631 749912227 622581393 880229860 512276243 654945028 931420271 967015199 147283903 260342492 434299193 483687693 383709023 786956335 759760703 862995879 977562634 993880547 360887448 420595241 319682566 966836170 371550827 572665927 396886294 797857050 439490455 669544512 755065298 822092752 760140649 764859140 234697536 409592707 600817773 994637005 292520471 467759228 323393693 687030298 352453372 990210780 824062439 858714958 193199719 662155562 857731668 944015789 346933472 459195845 142866064 770902551 275697156 830175693 901485989 928989251 37037270 964172998 643115575 761803893 577269312 626680108 378729557 754846035 548487729 705176387 35017590 509862284 188275163 189506748 61754064 206175322 895973396 914867293 553884322 987057919 701543525 808514228 635999211 994631993 721464017 894234170 708234647 993638990 408536950 991336138 437245828 448550026 265395067 759037753 318783282 697098489 125718026 387949796 129130059 860960263 62939449 135329347 815053418 833869466 48676631 278603375 723855972 774123096 506435055 789990736 505371083 894490168 136808610 616199432 827268083 899060004 859729953 865491705 721867948 957726917 434111348 947958980 866106851 882123744 494455139 510669152 659857286 953173436 797844193 985003634 436850209 642751817 491305892 925608742 562158672 885460814 798611865 897855580 366262957 647201299 319092651 718487567 155051826 996226493 341621246 775812653 749248741 830062985 974478803 978828838 653076635 666962241 829624122 901633635 719522084 960374210 158742538 432594863 586791025 662574120 728128055 862187560 455326648 867905434 187690744 771894769 137980046 598835740 62047793 485354200 29495085 556599631 226306396 526008199 898933399 974675357 15091643 258931736 603874235 779110175 326623680 906214807 639286555 736967399 398053320 759949741 827132983 857994446 875706791 895247805 22058331 564934595 800959875 932050158 396228647 600314547 766178337 772188170 548497034 606726744 960922101 965572724 328424294 398010831 209096657 998207445 377167984 597070681 674984599 752047858 209653545 447578058 485492028 739696297 934109910 985360476 394510650 672861327 711227560 715330404 781915285 804060916 557316427 737818155 413355125 560312511 342882785 385566086 284699482 324737594 910887898 911063081 333541702 759164391 914301298 922466327 485931247 702389687 300158245 334151388 551691088 601326698 921771432 941343179 611571187 798662708 685304433 691210376 740232601 804230394 723684226 966459099 467676570 878141329 722522420 981349945 654240087 773437487 924641477 988986915 382565707 541659295 691674583 724355344 422839846 506170779 900733309 901370687 291454006 906560665 345260857 953373154 113334261 739419560 202197854 298716748 833762744 849021502 521349649 732290070 377256379 383895901 319467405 860871805 960850571 962649365 439291107 679633491 735129096 853633102 817402628 837593000 787335430 972357800 866757398 945455728 496708617 589833245 329364075 964918355 102491732 351810617 835453398 912944387 288918901 570850115 210766434 336020664 290231442 798111953 221021063 622637862 894511563 966384922 851113420 966117239 30889608 304500143 299324544 755041549 687988837 848599707 404317035 638253935 532683259 795024515 348204359 706668420 144262303 219247776 857486724 881268017 826810779 901835130 349812659 967566272 608569693 672513404 801636457 826679544 632609671 952312540 200796349 270412104 102234104 532514884 598815369 978713337 783138842 827896295 627172932 752651453 910941188 977230049 19851314 564616182 312758632 588662259 331347310 888633647 201646402 542156515 16231292 37989563 423216868 840334111 160334526 206483721 202857735 857200335 713706880 734490363 55000761 540979720 951554460 959854927 885059500 918130799 751802798 759987585 550651847 797236349 154192648 241780453 131599169 994558831 573583568 731512271 70246856 735217060 109291359 200743679 462931824 575858017 354962666 491194029 825884079 888174147 357389516 604935400 863312091 866271970 905270679 931980961 800038800 928858682 730364509 844323933 104304489 753584845 518673002 773641694 967754731 995377574 942779589 986352816 554373822 591074853 500357557 609174635 521150426 995852363 593661942 872986019 240752642 604371118 362594812 380671658 821230882 897256844 779931199 920617574 74367748 328215250 311221323 459114762 161844105 555587185 121508173 502514138 835221261 965117395 505176767 874226524 175461389 575643770 870762172 942036948 280947488 888039531 320135330 584258849 764467852 877818872 232035041 907573190 599987987 783368209 185241466 642358038 471342741 852658619 885788101 920762851 46946401 344537900 434437627 564317763 686416224 845531664 632040415 656101848 370617707 530286522 899491836 950583302 248101892 296125572 680022119 850994356 101044852 564781943 639741170 753107818 556636235 983059452 364547059 664022906 500538095 817075429 313331761 366739302 344366069 683030770 474845349 477240215 498880630 889765749 756774512 814472923 524052520 815355767 980797812 990241719 763862705 869663942 656497600 727292551 924178763 930493722 996220976 998440513 162842328 726082918 255164767 936098675 272848571 615624636 442462019 667454440 280588977 815039397 120278829 926183201 347724448 786125512 398282824 760620221 274407805 459300071 970175124 988980109 250695427 562749949 542039221 918418579 247033647 301821278 328452470 623100943 105847859 415053898 855113512 861564034 51541390 330171239 316740125 874903624 929368965 954752700 79927877 988860851 277442240 889464009 52898885 540662261 492640541 849697814 508674915 525628757 710474253 875578043 282194005 340493478 381784134 979849018 841775913 981916663 220337322 686216113 848362267 855296202 882297048 940424418 441579549 994760783 672984118 742974612 302607562 535811344 987590751 999703624 405805911 484800606 591201254 931004839 141661315 746465254 410098631 434794161 165103094 838554071 973399374 974153325 722859144 725023204 735920023 800149367 530349613 833785753 789243930 990173937 193758708 202598728 643698543 690163342 943392150 961604611 910880700 937451696 226295358 319718384 491904706 854773107 947221636 994894913 487592938 750470229 668472690 807504800 714948465 732478249 849412473 934236179 247104603 854141027 732369742 835191652 585434330 652119098 945288446 982731373 827257113 853618863 55505030 306186790 478500624 524025640 257555437 378812054 288674164 438171285 113063279 697189842 568758198 702805208 621406428 923806389 374796196 486672814 588607486 729590375 538741140 768146138 106286716 639505540 782839773 841569511 298620205 700250208 73545569 627418802 450774928 888900893 441212592 955278112 796290152 837845838 809511215 992265593 865416361 920196062 815457767 991092518 700644213 722843942 910206018 920374326 462027711 524769148 751504819 926614767 761806432 786693468 765502996 791844508 596328892 706213454 851029070 979628691 202845878 490529325 802400334 914182673 418307603 522020450 365444241 946593371 966512396 992172535 414899740 683117641 117192369 212876769 610235650 739757015 401647745 522227541 810669308 879764450 53468454 703985818 598376616 660884777 392781993 887936083 469483073 921671448 321345154 340021046 234031637 297578878 204881804 535683163 664041911 824677297 276470262 343002507 709793500 772423902 523772077 640041834 44610217 762690964 51430819 600927745 327075169 914558176 574738807 626518297 293877627 656177888 428602548 975905370 923564117 956582982 598978128 914768057 422165299 445401342 431293205 983781338 686197823 798655828 216632230 227052963 655835851 803800726 811713915 992015625 807818516 921535660 413321373 661167766 305305379 432148184 588336499 705441124 627733833 808596552 181923901 317932371 889290373 995186732 196396323 346761555 909152433 921186130 224772675 909810235 985445365 997442669 982509917 996321520 112884393 889807241 584182521 589317710 368838412 987567501 284062905 633760187 681287104 941126404 953078019 957188837 834564665 936135322 115530461 143132685 662598708 707109469 639527592 693556966 30410661 905668893 213277957 971196941 340393093 805538070 558903900 806514687 775401134 913591642 58073974 67915521 302539431 788972449 189424207 298371420 195449063 520755789 114967898 627825777 454371047 708757990 975370418 977524938 571720288 812623543 893299325 910310921 845103254 853483993 381612421 563705427 655706567 822282134 84659313 566092416 313781049 876247665 365177627 626050159 469696095 657392001 422863644 872245961 390917893 643337544 494428525 575896009 686064891 919336355 670533429 678267683 297360529 813412842 645606639 718305449 765879505 820260266 28467700 57198606 89669967 485197095 130895920 934311899 390751722 931277916 771907652 969005226 690826617 784847085 497325132 540358850 326309825 768447259 321357393 737720110 687829004 832296541 31778854 631483935 618836420 727495417 972270096 977610721 24335000 57064813 71986021 716214762 879044603 985231715 44403343 56943071 962658064 984613937 640395994 659099985 882703474 886512547 303474038 581073394 646352966 731837039 740400715 774310531 275753212 470226764 945373433 977686280 211897122 411583842 796584698 805609545 941634464 955571961 984451572 986301370 965810961 989492930 707090720 952469671 38300540 104013605 283055268 990117792 860047087 954306084 681097811 776066248 760556941 838632664 204084923 280772546 809956803 942194969 419325978 546822370 384247106 879565292 724161507 971509422 594188789 948994460 391109013 607975525 375855551 932345986 424930906 758944612 857241116 872266941 251006112 736203701 451672396 990966758 272631364 983485721 980626096 992639848 76613125 693528404 645565420 822209845 595105783 689012120 692045817 776942410 103038861 467295938 571576120 830294827 594970174 723895096 657676929 744141196 287313101 933320315 777809604 810984453 595749019 892523821 891049749 893946922 683416128 722505761 894390339 997978999 100530210 505706063 594293130 818329602 873471687 874860386 27341394 92498983 86827567 929315928 108663191 231395158 71867131 203711435 874863140 964252691 235582757 237558133 677976529 941114541 75958354 835817418 854746939 992810747 536102258 582280715 166665988 257967473 269710035 504542493 285432035 944243989 275302125 864921058 190859834 817022303 508237149 805152933 292168457 756546105 185939400 437674652 68705504 633567459 897674333 952885582 103349215 462712679 60597122 511164961 885374653 925337445 315912807 650741989 266755278 774050131 519920803 910332222 268271913 802719312 913941641 920258137 524563213 708154822 618520364 933564069 365456040 719673817 479132830 510452365 409222661 655920159 592763681 989571945 37267643 874042485 968588050 996583036 101393800 760434442 752744523 865423168 108290963 277536601 860496068 913330635 734654823 797006629 236535845 776254473 695700925 971146527 560761279 932818694 790655222 878078309 859582036 898450336 405479706 478501180 80047344 87742116 425374088 788888780 302953904 799031736 623957949 876335779 903241686 929591092 57785604 133878553 859103710 908937514 205537470 607992957 503779314 986060834 719467976 851296030 593999496 901775276 20654980 832996789 723956901 948486036 741362425 823685684 435172998 969257103 91951350 187448513 869498884 980588184 603754709 731615616 90573288 696756348 721136892 753329386 314566050 407831680 755295082 809074381 221063438 725608209 162392788 282246873 646462142 876710748 235641344 963934782 920216176 941892731 898668230 948642710 447882167 784598630 19091608 943690229 729974609 833995453 622381152 968364471 719719007 759772159 180861908 984042218 822883846 912032902 18725160 565968060 373472953 528469190 445159939 623925845 779722621 912315903 918992648 930883531 895344319 942795934 891738485 983928816 606264985 704838614 656059430 892881632 387191421 963875811 62581923 974675989 729549783 985537208 427134266 832422991 941488398 969008051 107757397 452605987 982544342 994950349 471637597 602178550 766880028 946194646 571702330 697052929 985437731 997959444 872081527 902202077 469381840 922054348 480881699 713060730 245352035 928838570 426377702 803003866 960342986 985273460 758512877 815391344 815845299 907101476 807941164 814929840 720416876 772143955 881354446 916338520 824503803 909392521 75157019 431039925 131304265 987063270 791383969 859498054 82505757 269871891 582172202 937845711 539556290 557633246 406736837 517249205 336988630 735488466 114983652 787583017 717282053 970716487 315778357 439730831 114071985 606754868 13935886 875053902 998739277 999836596 686317289 905092621 966272255 990673119 80701990 764929220 407807246 727291662 52511713 650441706 386189295 985735965 319487252 537022294 961841988 966460130 782602141 958977938 599502250 707243750 468506648 632166120 94244380 341883628 824254976 837587787 568226954 855854724 365096891 618500531 665986279 681823045 833553051 920102093 47832922 691478872 408767122 649041797 753279196 799608193 244031547 282472664 96613050 141249301 798179826 960766571 55552893 959775344 270104358 576221720 391861399 424499235 569154641 934202570 13940809 381826501 169399162 769995095 236730595 607977398 478095238 656798206 927452673 942338643 447295509 797667702 444076338 951343028 668448951 908648897 489844305 945297927 906397685 979272462 369416135 851909265 837296964 998187790 316860732 578017926 797954661 841625725 436929452 829873914 838595259 935256556 987012493 995572985 74598864 992638222 38445880 171533837 82382998 570383260 679066358 922584645 324248005 380603527 773253973 889268392 94561591 792059859 156453170 415491522 271500554 892767883 257358074 632244557 504691028 629749231 841720080 995921271 326004452 547024174 932546481 956816062 623234292 997007984 956394885 990509608 669871725 964437878 87219059 328885822 429854946 798437473 549115574 933589766 797631953 810946268 281086784 950773858 147196513 446749129 2847833 991421194 457225449 952253452 438071587 769989404 576574970 671655135 606387613 825642950 61769308 463322205 658096212 934730799 521086860 798651496 48330765 696007364 242200002 299979312 767891242 867295037 436177258 832847646 218811930 428667208 785687334 967542561 84720231 453613252 257740303 498022464 85918172 133813901 912705535 957881402 181959490 514984208 93534603 762658551 336720487 782566595 409402232 857730535 21758879 151798310 90636567 582020772 881546970 927705376 109007485 937570575 456900972 993184966 841722920 925732854 395987176 929904797 519090809 878487676 497023100 830714893 583718677 808080601 843464239 896124660 737705858 965583648 324606143 636060121 969733834 981123056 127251381 749049949 978371830 993799552 69149580 132352767 244042185 720704735 676225476 920288431 74786148 177082875 206607775 671468389 663449313 680915901 45187212 794532924 520707944 750896590 495346431 889226412 98989989 395730855 391719299 598243202 854965021 890831923 875427272 938734911 216282759 732907852 271019248 551993500 5439849 281186256 189923903 610459960 802731257 847898001 49404653 932871978 980354808 984904778 24261681 991309854 515450063 723881524 631732316 756342861 531845098 729026444 104252274 854025213 982714198 992950246 479688967 595391632 8221960 439927428 850146142 916878728 914907106 958287694 385367941 473574853 586878443 979177761 322712537 717092964 635145732 853266779 941381419 984549856 789545695 847841593 37980383 676637629 657296393 797638463 789612254 945995782 437844788 604759466 594371918 956219863 715619329 821878941 287699703 909734307 94358711 777238782 962546728 994463302 33975387 320577665 456819741 718383182 535963872 760573025 437583310 719046417 953524670 996148245 782897931 812951366 794916196 807191100 416238564 960130019 643418959 647815951 841695994 994714037 388559647 586718272 682806169 849607940 85137248 387316828 27746582 964974279 708655863 806019121 858339381 866761774 137224900 259911623 583143893 825522920 600759606 773946416 786011239 963515249 165043800 636520871 881837728 969387493 67195573 697416557 293621967 486145974 100904411 893121407 771036194 910787503 720606687 812080774 233500100 549945419 560942178 798099470 719624396 989227193 805662742 898098018 239497560 844201147 196692130 745395325 559581016 734105438 4920833 992840890 932461986 940022975 623066101 827359967 756097380 976759433 127283202 189408342 401928719 633772703 714219225 781184800 174256167 727894920 785369120 873031677 597792541 769144576 816474108 979504595 822918216 827840325 328447729 556829122 901534206 997338645 360815784 811178303 955561017 965971294 855891048 878588527 5285272 265726935 627237621 989993858 511086749 928453032 417241312 836749349 427951647 494034048 556246382 833521727 880059804 962954520 667503545 717268859 32372897 414948565 774280587 829602102 597500350 864227358 905135550 966717398 302854192 885356423 802286217 995096564 63950117 275889876 63290860 817986619 312276399 470580270 381217842 946972028 3901242 112416184 765165900 929729906 963673113 981028741 745301157 876644525 959287070 959592747 911771020 935028379 369745419 719178001 499940474 542145481 687218364 836007533 988098782 997003307 620926850 875850655 35905906 887924248 67293079 730411826 880053730 980903936 922237825 933317557 458209746 672768167 339694166 375994938 825602066 988279483 991300504 999720952 844109845 867896322 936489643 960883702 200469983 677361347 765667487 942774229 950704795 977263758 696376907 913071456 295065425 747587128 843300884 984739041 19984359 430474099 998304652 998640685 602620266 735363347 310991697 820111595 210871867 687494743 541128117 994134438 297742586 671726268 47645745 698954031 617699422 900278919 885376421 928846106 580923712 863908753 749211899 944120037 587241925 759833832 912481365 919090906 596732580 641597440 684529863 776573947 891684407 986558204 974241058 984852798 241570894 574499458 859276175 905217400 484910958 968561155 204020687 418498518 347514720 959670519 555443108 819960631 695293836 993486919 986661332 990139765 310406131 795877609 193801133 938282895 839360559 919530232 736016646 798646111 460325441 914027204 695220970 872427420 205874316 608828023 250542 175096133 222525086 819298753 462556006 746519702 343611715 954853263 445536722 678293085 699014540 904354465 876107758 921254412 110962297 935425144 149807720 849681430 506388934 695541649 274771921 445622799 197683764 232427859 461778637 819755910 185374995 597991737 426905882 538192227 651588041 775474359 115269256 474585424 302589298 785287814 159273468 646075669 839761472 907179898 762523461 985807932 673362538 947342675 15926661 447705939 275805579 311089488 75292534 116011969 69016241 974946480 498919696 888072840 1552669 165445685 817497181 930026635 537222424 676774266 434496985 942981279 461442009 581852567 211236881 439934936 588787682 603079053 561071905 876477253 585296733 775522604 272530878 329226837 938367197 971624959 124023898 721620787 176717162 680871022 512634151 877579980 689302338 910173593 459941923 799554901 439864258 683749748 677688812 993419556 326825078 582034809 660034639 841617651 102398035 543830616 771558237 882803231 336949911 427698712 600383759 700945845 206323746 637780860 453724367 967103371 19845272 932187890 119102548 191276100 378867337 668690899 46110642 270329005 229657583 881531726 836018822 891990608 273048400 942601644 509489206 982088122 552370577 662724296 920266361 940182242 34383963 431731267 987152259 991222353 68540020 241598327 378796684 926924993 786162173 957659538 470335262 876396414 709810214 959734547 640186077 862602673 974113688 984404366 9289649 424541026 445262079 695735337 539124915 727305665 888814152 921625721 19102568 838627687 706633643 841193515 569584157 746330758 834191065 966212324 766260597 892479129 184154286 887517146 199144952 261521832 67073660 652014646 98362500 926055064 348694825 716289412 865792492 950697696 553816626 804917527 171383872 715813552 384133074 641056711 378915528 470769499 369851702 596395387 778818392 927777335 225510122 629112349 508808174 607089422 306129554 328573399 828733195 861153851 265851400 786061285 661481150 929046013 695514887 836652510 24960330 967231292 958534668 960804940 752616752 976464261 583514743 588612397 501412164 562629932 443005313 654963006 707173164 850909604 985629236 997382827 323309487 666835652 110615651 832468405 505115746 847424324 413296584 542198252 88516265 582744160 537470880 713839951 741326428 923987499 684703129 693753400 826994907 941480428 945040643 956459102 363571474 919258533 536653937 660954802 150348203 690898654 588073933 806678165 717343811 745203669 64665265 575466456 838421460 944870912 490363739 871266534 655809126 742759090 569284025 808054373 854442991 977742459 187887919 484597367 299263797 580451360 943540045 964754341 555937779 626854754 434251898 647328773 98681241 595700066 244253932 475805427 292365244 697737222 774931770 963041670 928866762 951456627 746383887 993628128 4568806 842468384 63632847 586138059 385046842 473242336 209952491 654402171 115156950 261662834 33905100 395234370 218416120 692173932 294753778 640234884 627499954 662401504 398432852 912739605 739895388 932549242 858288533 991221611 892006836 951851974 889002395 902425307 150412416 722354432 927914366 987684370 312748433 896619048 340159139 820594899 471437659 925499216 330092118 623478321 530175982 914320503 899448523 931985563 418505796 723968277 59130036 850065922 787025015 829458683 758947913 841776540 391164858 859151831 985140180 990495933 867757366 976829335 787321910 810734394 502536901 681892915 630437750 803425907 811122377 941968729 617609145 740768776 870769502 938534470 449557648 811938719 734988047 906827699 196739484 367166724 206027824 722463469 901495500 984833866 283469450 386621609 271710037 327992652 689671273 924384504 164866272 798700536 916523958 953431110 423606973 438883860 789405228 865769072 202954009 240575216 302154804 485292383 746763510 962484262 811795268 887384850 715185161 918355918 594160045 595367764 333307244 923160437 876913077 938251108 920229873 946838969 275973213 420796028 756907710 855005573 870563491 961387329 437803352 959761405 5170223 764349571 461019415 482623063 244060179 836763633 856748656 931411234 398887937 476399301 74464933 900916090 168426530 241865400 583993951 804423224 533345053 801912313 161056376 879169469 953378833 999590638 495490653 794599383 356483099 442461784 864166066 965827440 448139499 786497170 297532782 946303503 182977379 520697087 464983448 731185261 99136525 977403528 175240525 458649854 782059353 833196929 633509233 920021964 962374183 985780546 593963741 768217304 361483411 596195017 126885353 441200645 6402121 667068600 275244786 856097581 879030353 903232617 734735807 843368297 314617348 670354799 745085714 943640583 991923824 996134596 423338541 613959656 32858358 421856371 909137325 943515952 615652528 953874088 461349063 609459311 401380065 487671181 405254498 407129935 767123761 957218736 112899262 857355866 85191047 491248552 476810672 739416867 184507246 458294678 218943736 615431643 895831238 954805547 162457890 722781962 403943497 931929755 839714861 857293252 270365993 586210482 782452691 844355187 200895701 672570592 374756448 777590071 602343734 945047178 403883366 408232653 298590344 560937516 292653454 739277172 865314871 901480127 918946743 929029867 537700397 817728319 754864262 967967540 923151527 962519440 873369669 939624139 680947942 845971980 197749932 805831538 57998269 540977517 328733960 954290644 483025620 532876881 494277055 687864292 516335855 728928681 665296779 683900880 245736901 685100163 133026405 679722919 695498975 770793123 633730191 903314466 4840332 214341516 252710954 903697621 703424482 919349312 661965085 996940986 345735236 433876555 644140680 903162502 417802387 734202772 960862046 979077219 708253674 866453817 205058737 717254360 63415164 995691537 828527597 937258647 829190912 907086950 122267447 136568957 524954639 831724430 872235275 935000413 37052642 922582852 500610898 887479895 683602901 752452703 650447838 804037172 630400410 657945323 878607689 903634725 102971557 230634031 44892278 601730942 488676694 877591075 94402223 976280334 229677876 933384843 874636077 916244833 492387649 572682208 436225081 783983921 785196102 977083891 555376358 952569745 925514493 949539734 408007811 950507908 406237077 642958452 138227469 288316502 39565488 613091882 399052724 807505601 18137165 88250718 927054434 937670606 151259498 384903054 21763159 659281655 12077464 524454247 253334499 380964230 885528972 983230100 703986076 811454953 320789147 862222264 478241481 720852086 63575132 791746843 304981490 820907008 664489462 796077163 140472103 733316329 280030495 971498823 491146698 957026206 48268162 557775941 185985939 604245575 849886326 890817873 626579318 821930969 637265249 722389448 168719499 591208491 224126464 544963836 425539196 918479220 27114832 601026105 130328634 251819910 470165337 655313371 953969057 977687510 808188540 900446244 507890404 682583801 989433856 994143629 140520084 832395720 300373279 960889162 121872415 310809616 746532629 831693771 704473400 726348402 743161103 910414277 611350934 659262555 519782115 839552487 584052417 748019415 123905673 713041035 231883396 773491913 119298475 289057394 383857931 673790561 643088999 918670080 434304305 910099026 714309409 773758755 729987855 800002609 499822465 765168427 469546119 784764936 159847619 944248572 653307043 793314318 221941793 451360592 787963835 805058077 128942902 403629722 63981627 556575236 887457135 941402065 892760783 964675310 324281157 421163517 779733691 972827458 636175209 669700086 432660166 839136132 625660146 772349798 196003978 554237664 339246117 720122492 362587493 786324500 372921164 903153165 963937178 972719621 524858253 684235033 229631150 657375933 572560594 893222060 578915523 801842918 624318936 865326639 908596048 910626449 789022138 968677663 332811486 871845835 744707321 817769998 613842184 853666055 25474537 741263263 640684717 972368540 622389105 687733680 355248801 483391337 814360600 918007179 322847414 381677351 1641079 755560166 757789031 846438614 399934714 975288057 264661257 267754782 451446125 533769043 916274811 924082427 205695319 320138739 629268512 981778897 540694631 722330205 787378069 919853183 688536949 975637317 160148622 287886537 434203631 876996761 257584322 528693990 717073946 735992207 905217894 919951222 212736032 982874230 845211378 904929202 128703035 389148496 246720010 837824098 176404992 203368141 370394189 780153749 723091214 855225843 235503953 547631946 191211651 572389071 848237416 854332883 512914678 798807070 632840312 713122102 194162568 541004808 466268458 555181155 288305447 923097888 659253958 892207460 990104866 991280658 652309180 980236163 553559210 870464362 314042508 466413593 766139773 821165757 936508562 969465903 942125534 951438698 67959104 491391502 241961959 570881208 107405550 252928428 786556744 886465120 41005749 988917573 184579086 814847704 716368386 733616239 818718202 851748385 631253255 715383013 812845381 949906694 53252013 420646091 293960607 486696324 729706276 974941815 293822166 485530334 157220080 867228951 915217550 926258047 843086872 852992123 625060537 766729690 760378037 869185908 175608450 693561219 949592497 971038623 83097600 317382655 510878853 698222997 647919337 979207337 154336601 541921469 372710769 729271563 223605565 265030414 88682590 822368722 123696668 326451404 468514560 768215954 850085148 988936192 565605545 811714528 383942047 891622434 729352578 769130655 473194554 493829339 240927770 426535374 583786673 679062193 13613091 621061186 591205228 952607686 802328159 972533330 343638545 680766142 844149000 917730695 690858153 995308364 256434061 570936436 46194722 103327205 153581620 477045024 144868216 620304387 80403853 690165256 780632792 817582324 651379075 975207275 438840452 884940237 481427444 981912415 438586175 822490819 527264728 971604410 367156449 402342330 900712988 961403402 676312913 996603736 558376717 643805621 25561191 931369347 778210086 796233866 838743255 899124608 321542527 506267267 865267145 941118962 157000846 433706754 29614275 598363026 994909522 998839052 493350851 960946644 485705807 588088035 114525413 738294742 222554955 784424923 234060909 851379411 645843814 941218413 216844073 923017055 875550831 964981707 192808808 973750901 458779744 631721215 477258175 764303575 701665822 852431960 756635752 905516583 86319711 792026930 709602759 940913430 232498890 387456656 53011669 520563740 83400238 333015696 340483156 858261618 281735039 380879265 673475019 820329413 295275808 572526899 853662528 885780847 707374192 751035132 74918569 188293002 792117596 906713735 441018114 442244450 121713327 907771806 996197161 999634235 843439658 895385049 543411825 623813332 619066750 763425103 329799246 430596861 816012743 932775201 743193126 755699168 509415386 527209235 976589064 987675287 76811254 78837328 667581623 772561943 511943394 763252441 527374692 795603501 371236035 934076389 447131159 467605482 914416099 973973236 703566135 804573937 697355186 707598304 116517052 861706221 354101787 400294115 487880977 625497057 678946088 689735958 403012117 450227845 657838008 923216061 678443972 948871247 632673152 891184368 727461798 859128017 958199375 985464103 647672787 801210532 562705479 752222223 197300147 526720461 22351036 436558340 674922972 750771660 783648490 829075978 339550058 496351630 690123338 909737765 26131716 525936360 485273596 954418270 42683496 621569608 681698256 922127314 952778382 976547581 343491836 904822720 876343214 883521484 443942025 453823032 133400336 859500000 965905639 971582293 209249382 626655520 607361094 678435597 508215206 948434423 288440500 832863307 591087860 967595187 804567911 931912020 790514708 881539463 764935736 884312042 909142237 965198687 415027890 581555841 348456158 549607569 511543785 973669392 370070965 631289977 431443930 901493085 166290800 180178040 601614453 825440871 266718439 427080113 50338320 461536369 390149333 964268369 996915619 997301725 7137423 431571401 770521293 853981973 724170139 866721363 141866116 970641834 751129317 762435921 42499941 941476498 633729773 735825744 314099877 817622040 253458114 595290015 957979805 961245244 486568221 784102897 934134337 992686801 463853984 925677257 744402298 835323311 459031963 597809863 651740389 906510616 338077503 824640337 468611075 493026579 838784389 848046443 269026957 687252941 419307495 909478382 109614108 726782684 809205354 867307105 961298800 972654900 241300506 593227336 980068949 994160525 343984527 379507535 879236509 978764264 707889888 883613046 133756068 344951458 920978823 997380213 27313164 231172340 87461977 486531567 739711212 866917526 50865655 687518296 326101514 340870591 77924212 175439058 628900537 982954836 82495859 194107956 452554732 987895670 723970605 790991566 516155415 842108720 781840364 812519852 427447182 506801970 106910256 485064480 428475500 627235799 784221847 805907567 110205409 503801566 839278543 956334665 693086827 822913143 39026120 594548729 926485988 946063469 443393506 812567196 485866766 797371071 653017850 662522090 338041573 408247199 686030207 762680125 326380485 878381258 238242958 435938216 861832304 879502977 617957181 751117442 894828271 911547026 910435731 999005214 89205247 236832148 942553525 982326018 805743779 886620032 178182739 194849164 754753583 844832878 504237749 668749389 417684744 869064840 769001264 800740286 723612891 791081145 926525418 979479533 196414369 532084953 872207591 984031542 355063583 899498404 820751611 963810147 346514894 351603486 679085912 853703750 245810352 891287541 588993558 709827476 992345622 992676094 107596394 596441557 631999650 918428137 52192794 666234688 265705905 407126781 413871528 449863300 862387666 993230131 670579237 951010167 715902529 933071568 619465442 801542898 169746748 182058866 347509226 565989662 455569524 831665525 864729983 890189084 627140445 741409105 88465591 667032795 387621958 416402996 573469170 732042286 745817701 826151212 622378684 903415738 982699199 983939966 87209133 771657471 719581941 729443451 100706780 190643768 589639153 802972698 971872942 991891974 402959763 454849881 217763340 892479691 817277609 978469705 224580094 735191061 48308874 339015043 132656556 530763746 458839135 826562747 4100255 943999701 95984846 362163658 351251472 809624533 465575024 526211046 333236270 765344810 882592087 904997801 178383058 594824774 501539788 595490743 844866559 880417811 716119862 749687231 669603097 699342471 135244829 327144946 135160066 198003331 421145017 817905127 631679336 977566925 13133030 390015363 74784221 332486697 434545150 495682292 194242442 845241077 900413007 907163337 161990949 410377096 91805211 678820042 296178998 872866114 12883336 478175950 526276514 750629020 726528164 985869221 113480994 792725920 73323515 642826364 413247236 635437503 25947237 507455534 319845252 547852741 16394427 141000220 357718474 990831603 637227624 842501768 746910023 980331096 121486580 986736906 939758409 983873194 743866341 842000098 147278789 328295041 259543803 353232103 867551543 914455490 614101040 986456739 709773119 738645912 638133371 655859764 67806843 490079732 712832162 730533381 187028980 732548919 934024138 994011119 802566596 804471689 766772846 820407677 841597199 879151062 777308734 864505538 933905360 944227534 685786734 964627861 550803699 944150803 332062252 436107819 669200725 691461772 468739330 684592026 149374338 729622553 679547774 992991672 100350477 607346496 665830591 939661125 464621023 553837900 327121445 895744194 809696445 967276142 482053532 513811296 381841962 618717714 186818676 386028738 511179905 772283747 867184393 992760445 889393359 964006023 655104365 739991112 70770720 263778283 2299531 318397042 267980483 662656451 911576631 982172533 829800434 878037997 318387931 432649873 636875418 860583767 660981765 905616316 899653540 940181634 925113335 972158403 505546548 987848660 934895361 945025205 501501044 717274413 937822628 950203235 729098234 795033923 714618954 981178915 424867599 902342180 490090717 957199082 284382501 563819983 750750126 994057060 29789637 484300648 994280635 995611746 708809864 829926542 573368767 803544374 23813820 116173320 288976273 618155195 4903318 674630350 299362102 610806827 733922088 772785751 553792704 709283920 440504061 549824177 871742068 938386513 794953369 894886119 497356680 894165250 99805096 620566052 529717962 911516151 877428186 991149596 791476674 808600207 310140956 527376037 706429875 924618882 501102988 959655717 640812776 765042324 35778681 628295262 884199470 914288927 117166415 433926862 540921202 563098415 801033116 902929940 403567432 744760145 572390122 810291932 353537233 358498170 687404899 708737885 870569414 962690399 168176292 487600685 849358851 878210171 100313585 571721286 672354645 903616582 671806587 748869499 81429866 617152989 9531890 894794350 757042560 879754385 13059341 334019803 298452595 448553649 649131381 929128796 509571270 604845330 96715097 262854949 330090277 923401401 394504422 642401485 613304496 833138267 337621955 535771845 703753340 947800965 352078821 637661409 711976259 859813970 97967935 506311176 446718478 758549414 684513170 787397246 17816367 741603833 121674094 633949397 400523370 968719066 983824590 993466049 630937157 714553328 890919915 946802012 999865525 999968441 403840883 988448585 986669615 988990199 213469735 946265608 968178143 971244290 930684167 955796435 233248848 313840853 471412287 757612711 777666346 861080201 733189939 916077296 729970572 840655700 537031534 765568271 287422783 660443026 598672308 751813024 542499660 597392668 57082546 559410354 998319095 999027697 174199980 498132031 679395094 756326694 400659335 637907811 825335994 905024674 438042857 608045897 155336109 976183164 571369915 856794402 75521959 900676659 656878082 731834513 468459902 805634438 679170727 972450629 372803737 912698375 147807600 756733715 845596912 947958936 85244347 316197681 49912898 945327840 454998004 755941416 125011913 548468981 878235554 902835730 369359293 931639088 66320287 343892411 596865617 846984022 96261976 468469909 663263244 830622005 337057298 638010118 183885918 553951226 751287854 824740825 694777541 772477363 777528133 881352223 173159870 762155639 945659549 996881142 717729955 995349183 519742807 666460862 511735338 735114302 886432310 917248184 178961086 342096608 940233822 952694666 215655353 462501638 431763051 790615814 721916327 845942170 519337329 766582966 809053110 924120648 68446080 820715437 207622054 846287361 609008856 773951326 460352454 564981645 30720340 266821642 463401580 521294427 739961964 915529865 883225219 950798790 267913239 780061203 884995464 985992034 451367930 912248689 860909035 933644096 105298283 695878389 978442264 994105063 17450393 477554514 318755512 381059522 843712203 992133258 254736122 447070992 852139702 959504667 75248193 280376576 476413392 664347544 977422774 982166324 801694941 964213136 336160017 344304023 193648395 680414881 578050900 591668025 261453539 344369857 941514478 965518694 964850345 974026867 542787654 994014584 976682909 976990488 707766733 912564313 312399467 338597799 155360691 392169530 299913881 419798079 767452193 942399941 149692997 473155115 922902331 987514409 449905330 490701584 51553178 686948580 643931896 833953758 278868586 784903881 149439398 957509198 555895095 967113544 241805865 717172112 911255862 964163743 130330676 348397216 920760931 930009545 329092637 364802342 271277367 307419440 531142808 595087055 794642199 910993128 120791729 172291619 814332681 900659815 504776853 992304493 434165083 741555442 228834963 807901852 295215308 380292955 332226566 781599618 211511876 861775242 535129497 815832384 447799577 567999930 138096914 218796800 150295988 394690976 831517587 870871805 885335048 961323301 67998094 999206267 337058517 559324390 523959772 823682660 685217724 962085311 543619685 603528433 874705359 893201957 358992063 673767144 923434215 971562628 203473776 622585781 362542844 911125829 762197755 803900320 158989276 502590696 456341363 653308143 531325432 881189334 423828061 446048525 286182290 798675996 747518809 817599717 613614900 929835574 579819427 951869330 921202245 952985224 122181838 141220280 356839918 602816585 413691509 573640696 454584407 966085603 622271307 906969585 638186640 990844342 734779501 932779224 491729525 629208861 320439059 978706011 916414121 954762109 613560936 655103384 499334187 632909550 609247019 678912725 173295397 675069342 803191193 899628647 533249626 539976951 915985242 965452774 438119686 945747354 59095620 417148782 992077980 999960437 295927868 372887410 575747851 931726140 636829454 843915950 243424766 609948399 164268455 404016086 448976554 709367395 275236468 608955517 670909383 954323075 779466684 836414175 884156539 921984870 678129427 962128944 796434345 995000415 491196415 847483590 630817398 954983808 866253623 992461003 925574560 962047173 282963275 722794562 443323363 582223800 607812439 645910455 881408052 936327923 377065241 650271754 225121682 963394938 899462748 926374175 537026692 706401728 352947633 534431205 666245754 718918379 354767250 470465793 400439181 668620963 985875624 988836245 690897456 838698138 221010564 858889701 952680696 988402682 472856716 833107504 993308179 997216282 205883554 361711216 331010804 352041194 983909973 989288696 12509209 980593722 122596073 527736958 441009807 453560634 610792851 858541930 427460639 463794004 933652058 994154329 692361740 759366639 169476209 818256590 352297080 383239830 639136530 934890223 621580924 751631070 651878363 854651802 563174087 681525693 321761750 394756075 993640772 995259158 318399716 431411859 405916122 723590847 989618771 991312218 793680333 871255596 521538753 899554380 29412834 197433898 127175904 127246226 48126051 856901329 568228944 585192238 888952164 907405260 533679437 695625562 603228056 980529732 232565409 477590809 80072702 91110782 453163091 728470587 90792167 532803251 932374991 938849885 235489376 909478300 767865028 829440845 591318994 883742247 623365738 941242774 453953708 641330138 523978234 642373839 485900784 952528488 901493737 975145076 996621411 998639384 172777855 532929959 725514501 832866951 823958489 897925070 351031336 886424107 364339874 529035464 402791626 882314653 218333764 638084556 782131161 784061639 465490268 988514644 608704434 884150478 387357887 439406741 685942533 810658466 880396777 945956978 888451312 906469779 896604823 998623053 101142744 147490908 405997043 754178044 398923793 750287025 263059913 918528686 750564618 935778944 643259465 876423341 900226365 902952193 99417016 379564270 872395999 925757194 191942246 912813932 911820526 941451924 700163545 722143700 958522230 959712706 455665591 984836367 894795026 999392658 448173401 542598261 927452369 978131244 780218926 912045203 937070494 987175371 247707342 890058397 574726302 711827990 154805249 984466216 730991054 974892372 985488648 987917810 981333587 995536232 847336698 989955131 251279146 456666774 683343502 698284965 140247580 914448476 322456113 484089435 365003507 686531609 616430519 843905413 277474697 348752396 743131355 975706785 960333461 977761102 987792956 990168953 368790539 556670122 907972785 962814723 611915338 724816918 958446304 977900418 241709396 537482503 387284860 541639830 943961334 956409278 433205242 653875534 351295814 947120879 925855492 928280507 558455958 750828189 992729910 999825591 779701383 802735428 675981582 702454782 751116206 983207204 611097300 763234867 184551965 293851058 680535323 919677494 683140516 861572135 364904413 800773342 904051019 956522301 522399256 552299732 754568368 797742601 261287542 698684267 638586364 763122684 253027682 755324616 653342759 867533452 735845529 795414815 316092259 647477743 334386288 539817036 430043689 748687475 385238949 689599848 673554431 965472425 84271870 983192025 473931700 766766221 211986548 844699638 290393343 866167984 20422749 131983046 842837241 929951827 401736161 840230779 386265284 808664110 107723107 624862355 960168083 975655062 792601446 994975517 798434870 824678712 60785450 168936831 479497704 752530599 230668134 770386416 565454912 879427124 830710304 888297042 890981571 975555579 621725472 830661455 996942304 997168171 872530095 882319425 429709762 686472357 669732548 933475464 27429521 788878447 571511785 725974988 819857113 970818791 834639002 975498932 934676587 996732404 348436015 535894990 746712023 861111922 975203633 984889863 326177012 583555562 121380635 733575136 742842040 979548783 875829055 922085079 173678070 247896079 930128177 939127779 67356796 523774781 619894384 963341140 929013995 957588301 863157827 902667280 531478247 550606582 144827658 230313868 173980616 402315202 429275157 822674043 777286527 887489606 377757135 689025191 745615787 820041626 916093138 934740659 289371185 653881527 364638473 836132022 198799805 841846865 983659153 985117354 620250063 672224048 916161999 930882927 712890539 736683263 546052226 933898555 416153425 443045423 594254702 891336907 738879369 825930764 710922351 713904608 367657481 689720912 709858824 970795355 992865892 994098642 446435059 979527552 559643600 957699048 108112106 625429285 250561443 779279262 260062397 829884600 949858697 966966647 46433784 282515820 732951970 800590249 809552638 906609781 350067896 878168426 66505329 127494960 27985295 829630798 859010280 964936799 46340612 307994033 877986838 901967766 451103910 808581952 822128568 827285343 945292703 956040768 694855022 768939041 292182469 724737786 774477892 792347488 368892403 565496996 246123037 483640230 519434960 911595382 68368295 525398199 541322885 816697072 769086645 835148466 942716352 956101364 675605845 925184092 477464370 925072910 632112954 730075908 436265090 692900023 834969481 943878283 199020240 437821969 637352273 942037087 479228473 985691421 549083814 658694955 55521316 985531368 748848074 917999476 275677813 704476300 402014178 791788990 971435216 996010239 603696720 776769367 941497175 958204908 710501152 964409250 978217433 983366007 285647453 936393043 499165786 984575408 481238501 549786829 654367467 732140771 45775022 422406887 445893118 987025260 60527149 69551533 973725694 992785654 494262699 988981751 83632471 962548364 240086628 416330449 145226774 726327903 635251770 760415840 70506704 484826567 413328094 641000542 722328899 994798678 124391970 275017731 25088351 948377708 812310802 896986081 330014399 757350353 657221566 689306758 53573773 501966081 799144794 890855562 914828378 998012297 680384054 693402313 852407074 871837310 959944043 970642186 559596622 918133914 184290924 769831309 796925767 859073779 857125512 902697173 330400857 506003270 603874270 834819485 547711035 843618876 417301572 756696896 55493046 401013419 909197756 994073939 298551931 780783440 163544713 474983197 138091046 194259489 206593541 392979077 964895251 995470303 452564774 630564893 347887080 802154751 679235826 914704116 657275825 702329693 234695326 648398640 179711030 383678117 694589797 706862392 630078785 967608392 525092613 532577470 445849473 882378619 764062458 955065689 367902718 390579420 185751889 745962700 499470355 796772012 819894668 891046835 267744647 865401241 393085405 612084446 529151486 703579498 532017326 623158044 697570211 778480570 960749462 991220791 674912385 913049072 94463664 697545177 984126838 996904695 500678684 719663416 841985595 920014952 938513399 988208343 823684826 996014133 885462774 960613077 448482434 736057994 709112785 743466785 315845487 701566222 130788241 600882158 234658723 358323032 951959242 994985339 44832518 154443131 781973894 864911934 840005338 854804326 468682099 813050498 537952243 795747330 559169505 594091148 809314471 985715525 736828499 800446444 136703133 259654967 114071383 748152817 970807687 974184223 435659467 525087694 796955794 869751472 520924033 991110909 478322428 952696838 439568393 451177549 637009577 897429060 416634361 448959446 852406214 860550800 469737728 787985502 827405783 839893667 140937747 569900360 974237736 986706165 499568864 949536245 786863453 867170867 860067519 900998609 11730096 707436460 997968389 999927604 965608527 968810595 980304301 983121472 729771762 764292702 611663005 902289496 1022522 725573399 233763992 429093832 639654937 766680494 434621894 650596207 699349040 739481812 251803423 435937432 9238054 968390895 414010799 523067789 283286475 937568909 951024875 973098353 804772481 834744754 532262110 696485816 863652525 920441233 550385390 922582779 130727211 977723071 851943492 959120634 497416488 558891787 453530837 688089187 706641765 912789972 251316130 876718827 298880827 379974932 935746817 963176226 88223738 326451819 908971627 984428274 848769024 973369256 111552272 512737694 316624041 689253354 758869575 984529493 639365569 678525797 468301411 701977758 848596979 991487537 615001582 846278803 714191430 820759854 963408061 996162596 278059256 565168091 741640958 809532158 246911695 577234884 990057937 992097888 398770323 614478793 265386361 753456264 585544014 833270192 933208211 935963400 581430342 846578600 806203179 869487367 493058184 898797808 142456497 909018205 41569040 621776640 40860863 68939240 16579675 362689813 389033905 790401934 950974758 953916703 76243882 194316111 348963517 963498141 446576917 697602418 720919034 954041616 333476124 450427232 30620773 302717555 252941438 708421497 131208889 976939713 341835694 591449527 640188158 800071181 252712533 718773542 759904474 767358328 935339641 945436909 252872833 824212739 761765064 938742019 679380599 891090664 79279340 740513983 738514239 839580249 66659759 661065645 528530658 832134010 565357222 700913878 721639204 773969348 321958341 761185475 882454230 983077423 156071308 660383561 354748925 405839188 173984535 405831754 280972182 661996730 396566457 591994903 886146146 901674024 820594120 872439628 250738058 978154118 241936490 719934148 250698664 559599865 508978888 579469826 245185425 267428563 803612283 818861011 358467480 476994012 855974013 931432411 458135118 686636389 351161168 586414242 834564539 938703480 20578296 39943686 408109830 603045567 339420067 361703567 252722051 255105083 494181 311483819 800033393 857298815 638774230 988740693 477454332 868784592 237570814 375546185 934471903 969540578 884290362 899359386 458468692 747514113 567224081 571281077 835272699 940167791 946689026 966136380 84517567 427632034 748914991 981909249 865731234 942815536 962898628 985940584 536165648 816917738 549129864 758986413 514105598 889419245 513268372 635263540 153466407 200611278 726977179 964661227 570107747 666288816 818475017 870791397 7891906 256291939 75041739 282633365 691415901 743863675 723257755 811277677 203934913 940099946 287866493 549510545 978585680 983709214 335638464 863824241 939300962 954925338 964785560 983085107 369979916 643102694 552901663 826960790 251024036 365916946 786527370 864505566 87645396 937834280 170844363 916907354 632957933 671386338 519739053 642910129 319355881 480750016 312170497 883945579 408533716 985586466 168520302 249808396 950223533 974373684 680268892 690307870 35887532 845488933 77726195 522319956 589593168 973918560 471224180 866679005 262623097 709525488 51566473 783535366 447389977 955241002 304488773 803204743 883954574 991943713 909149280 945031722 818157769 974481550 898725320 946503415 972855048 987789854 744571213 896870120 664344688 712625011 39529607 445176517 109146237 968998157 897321996 982432219 406859949 957761717 10493999 310107617 270955834 373750928 125354554 972977808 943991161 970074227 57789392 171094604 645548711 843355192 150305510 819534862 182647077 352140273 481941054 867797110 665437580 726065094 638977867 897150122 747645555 887834891 262214921 277523258 273275755 441902083 422031654 637100421 954900214 959234597 578418200 979874460 855891871 931434562 832054822 898117779 915809216 920197326 910568542 912248626 579658437 617315476 12370359 99922152 598585390 959106749 691850844 874951577 276923763 418791885 376548746 476309105 107835584 169987046 267125567 425893248 18172338 996439380 908116607 941616517 804431395 811252596 329947958 980368692 125424961 504599241 634616323 946837640 797841644 966381873 292197460 973086314 337291383 352099815 211584993 500438213 721875179 862740128 297425917 484265136 470671720 696970847 824287304 867468517 743861698 751194936 784245921 848773520 831435125 912159566 178716699 257297371 843647383 992145958 933649383 936497132 420620286 837245902 36643467 908748235 819944804 976904745 727606116 788411460 49682520 695956885 758126605 866351345 340342033 825665123 136389369 788694882 874094702 961452149 399262823 547596588 956644481 992825404 822700028 920945164 643419948 790075691 49010843 210856466 732875266 798157436 983043119 984769365 942860732 976609467 811560563 960130820 363881929 836990422 597317521 728039673 390458634 886580964 526927607 835687437 122933701 699697104 721092826 887230099 718550390 750848241 259040661 318462334 839576903 957880138 373691910 952779644 803430821 831122906 292727858 582940145 710955328 770299287 246018344 692698124 990162421 995890355 569249847 744751168 267686138 695676799 104320223 643261333 590095840 991558344 711020492 960766257 720206301 823093048 184476594 247461962 588598826 931931341 169311891 644924735 847770599 965699102 939709852 981486836 316901835 594292466 281047017 619293235 135399414 543294274 226423346 936342616 552059795 933658179 13132373 81008219 329838914 978351120 536859190 848316797 505837902 628781008 962826360 975285993 360557325 771285042 26644447 250816446 389961090 941319164 834593888 907814718 397590978 976271864 166256560 338253350 151970146 565656117 804634421 844240792 173493555 694936270 110773032 741773309 388315299 763986163 131803883 415448797 848675263 852111240 862769262 877185575 148840119 747356247 877640721 947349050 291683862 384408555 959022453 964516726 64808075 319853150 69920131 301985916 462693462 762616272 776403742 971706429 781607084 869854751 219603125 898006634 516365863 913926433 906296359 964485434 792800258 796826070 473031172 584596720 462424603 888897172 709145844 918643552 667880896 675809074 143728929 870319264 9061240 543687093 565560796 659082247 321060857 384849503 78341565 489074948 879667179 946285355 965316048 979866614 197625340 666109491 810471159 942406604 153147724 647281736 210401664 844865861 435876594 718568350 699610951 847848089 874770961 896836472 490279170 494297676 898018585 989048627 260599807 549713557 826393160 917440872 742032235 907889758 780152280 923512763 190374565 424935710 219593679 583733426 42072051 352752143 657432420 946097399 941281725 993434357 418769434 908467107 713823788 841644423 997969016 999931279 154331196 414344570 591745173 787737336 189116656 502345544 44088634 119591715 400986491 850614210 545457112 762312593 316592592 966408063 564124443 851001315 166863433 977761493 603824513 972694491 307915272 363055529 506623084 922066411 471180226 525525036 424286575 477241992 954373443 998981699 745280552 912064802 482358107 880171868 296343958 505115138 377187533 708244613 648921417 914381728 661526002 964781702 461752275 727216961 93143428 862034558 263755248 573708315 153293079 295392041 396018458 893448698 830156048 893896517 174140842 267888737 802148920 836251708 914065558 914429951 125840660 645588741 689537537 750866336 624692264 776531112 770193625 881490434 328094778 783739131 648463732 672915222 669754578 833631575 800980340 829409762 970892566 992034537 249444602 788919640 524059465 636677532 400657683 616514017 831612678 997959338 467320367 988756540 700562615 985186288 593442885 647680511 373776956 584727096 93974516 610679291 631029794 954119389 438070692 940988196 296857539 600224993 32920212 496355380 79075513 741414818 860033294 946687654 712081964 986862463 198577872 465008822 466581966 576664515 961481893 999413028 925977026 986669160 298390157 863703924 879486915 952506851 294251339 830787800 948613107 987254890 880458954 912991024 905483822 969959810 354399319 554734112 47235786 705509277 510522917 867103816 971591230 977570647 22913786 789762131 706947353 769221313 330000728 876036248 89080887 570580944 320061668 901686235 875689428 889079638 198726432 956532010 348050806 611686255 966624596 988575386 306062153 803854564 606192088 953742067 229338926 246796280 358855091 980479405 44804027 397604470 275927815 481118415 257836396 622316823 20471206 834890533 618242118 634324191 34161024 370583485 77904269 235190938 553443535 962766571 866690804 971592718 381936333 908518789 367415129 854389571 781210757 899789287 981245720 983872951 729470148 916311353 452870031 602428534 459809019 461020935 316956341 979931519 41124919 823854714 510125506 586146804 514678247 547926910 715155853 973091329 334113588 893860758 428355617 876244291 993723010 994060692 511711929 727644993 855415947 934995979 790475591 906164262 67054423 847307661 526630217 692592199 988925513 990388702 337093186 358793597 851882776 972257610 369412052 840476211 401108635 536266261 764871155 908241165 460372829 708699153 811718533 924897293 634722607 879889727 642771513 838472087 575656375 665357689 814604872 820461053 440061159 879991562 107252239 910467097 466428136 716787446 949280251 968694128 341871029 942194980 37420735 915352924 3879723 291008761 9278022 226216280 450871842 477298230 182685773 729803435 506079165 974945894 565939316 783970124 405972388 702137137 803379241 845915654 672794387 872997891 161467186 232661091 491191991 886510334 820817866 838497538 739720233 971248308 55641293 663943331 237883388 502719555 860119373 965690244 129489962 489353221 966537898 974015665 660655464 878017635 218652874 546854547 533195795 933122240 280416381 810455743 36978993 98244192 279989991 862559803 381403691 994540964 990670141 998878163 845008874 969045264 325052854 954883542 380920302 861440877 915746479 941077892 971900504 988689501 490788369 826665975 812826265 856053128 90895438 760087319 476197996 638959165 476191596 665036190 479970871 767691055 14559499 647020830 383248269 506019433 919482724 983720043 383755557 564808116 116128416 180762353 68789293 211454448 163796662 365772827 668373126 723235842 187252308 499686515 381529089 676707415 770622150 802123066 73570686 163865121 954432314 991912245 265010560 843542945 335859846 677074071 64322420 712395353 436259783 644008560 571097081 705981891 436350956 620312041 328780222 485983712 87612698 447087123 681380804 822500698 618648619 656369323 2517065 643246231 286362982 672073701 200081986 761038983 479473515 982294341 604666586 840068700 778779 95346307 344653596 396442196 701462075 888136892 519432520 694001616 181638402 677337131 597765867 923629029 102519164 619175590 207915425 647821729 555330684 690351137 121620654 577993390 632829212 952505689 681774532 963815158 360449943 814916573 851839540 973021126 447680236 989215097 233765612 965295516 211167754 556972607 804714023 983043713 387493206 465220192 272660986 313854471 844481306 892114076 9887086 279431134 598928398 677711879 172987898 542907398 66293617 170344964 936709401 982296673 504635541 622780962 809120691 908319449 720270606 853295963 863611423 886023579 853918482 992463500 40941314 97509906 34051312 147957158 553856631 753711484 616469770 728280611 668508363 727273811 771617699 780784107 841258044 908832725 140083118 176073187 738890415 817846183 889947685 981555073 260203455 659747986 330511385 391195168 194303293 258583184 773146275 846307254 255045844 742403844 271371392 481548067 445604944 859582749 476298567 651931173 895410720 913724656 657245826 679721316 727452008 851842268 565292525 578169140 15062215 279999008 818251943 909559144 765532855 936902540 356078056 490511720 555501402 612818723 171032931 852341192 333160108 751008622 791243436 810166243 400444513 487109003 452424869 484394191 301229852 822121121 73903775 903273094 428694152 864493510 872687954 986280737 432889336 625475749 43932771 830270879 332325656 704111104 68437795 220668405 873491201 900107830 560499389 570103223 301188138 856120477 377209666 667648997 915115812 943092345 91418342 486962455 932770760 985884921 288012219 934109890 852466562 879807262 747973126 916160391 948280767 974229973 715258982 798548396 963685224 994894451 954523070 992216469 417068722 753377801 612646365 648140414 349302212 711301001 240135209 657767743 4100288 802766426 850422169 865962283 462410240 789899488 675506642 761355709 525774400 671299969 171423523 680753633 415294987 699081037 763408060 859134650 866552894 987290082 820346959 995641787 683138611 973518316 217007848 662539880 800888324 868719539 964478725 969393012 859587911 986410330 945780160 992770472 83423945 703039732 560101875 774637491 200533354 380494541 713126293 715145279 64515955 813211944 380729603 929252277 402335768 718581546 576921199 702331148 630247791 756211729 785079123 870389721 877129325 907897285 971540144 976160653 220690964 530486841 397146983 568052424 617835641 911581841 537692939 546222981 800668473 818017982 961043968 972621790 659561245 690879861 915306265 928129541 397084593 542670679 983493367 997106891 737872021 807219483 785617258 970331342 282673473 448556723 862019858 899398603 542866685 545534454 66590549 115967652 814509293 968867757 219551382 896452116 577630877 868405093 27626817 455399569 87594054 340014677 252307164 401353219 491180470 801242335 698485135 776812167 707025025 800822915 989795120 995020240 457277339 884339999 982909006 999335436 343964517 741863394 794186936 983552655 573344597 816332027 800924911 833914684 6171221 290257460 858055715 867368382 847665849 860378089 387087960 577364448 579915800 737781274 286986207 952750272 851516799 885032180 855426158 861913448 569695116 949020432 858026500 978622205 560941779 674803603 308044635 446856935 896697039 909355188 122016382 881992933 454290425 688135566 446663291 849893776 455449426 456543530 587904655 996966951 44675574 924355783 978829288 991419068 928911926 942920335 892417987 951081868 791408582 959629407 596309631 824523525 533974894 555744753 209704629 536449163 250239989 754186756 981842045 987701110 808931853 912455867 401807244 771839775 557817032 819531818 299018018 840011007 254983106 971195644 5885240 967642039 671042065 982695568 879338026 932926768 856223749 868289442 881996297 959301013 930327584 997502822 125659145 186847974 656270635 930447590 202048552 699000771 48905774 642843127 690325069 843705332 914083330 965795891 548284687 637965473 823773153 908855010 967218689 978821097 343561077 972084039 527658444 948005452 756705482 922371613 660833788 951981999 644852682 958931152 626356813 795001261 202883790 931490369 603301942 793445890 174626355 347498610 194147148 421956361 431052303 899297893 894319909 953610129 772649263 815771422 949208852 963865364 142121206 351326287 586677212 686605464 902982997 943782072 823646004 992886491 181941006 954642595 187882985 579898899 828261075 969211282 813512278 895567629 200354817 733440003 734214655 967602077 10015328 78678959 887809312 941140904 14913497 148784994 90283624 272421010 490664232 828459944 187362067 746123825 126584757 363424250 2774648 937076717 116743009 462986418 548098570 604229571 207170597 902891950 538467150 760905588 515421697 955068155 189710314 766710611 555358828 899284651 194309025 519198404 110806374 409906108 113909356 808018210 53581874 829922245 254818971 900961908 596209409 633640680 450370432 752099259 312525365 377058578 635446737 699800751 923809732 997812821 181234846 543349977 585294757 790299173 277443112 845167299 102371724 250592860 439746432 670413566 373827498 792001245 229087981 909151474 525120693 794314960 983859221 993812874 587775035 778731624 5621499 254674726 272749783 784686912 817128219 930224451 879227297 891263403 308891824 418527072 233533896 638735610 741528016 868067639 296841592 701045165 634585831 787887554 287579035 981539998 220019145 496785234 404228391 763225017 68233934 713887188 708112895 899106230 321020998 443428280 901506242 965288674 647918482 657809668 978368351 985072925 84989713 239567883 961522635 984662143 475507193 608811854 225490147 242788628 638648509 816393539 841237425 935518299 147217588 839589162 348904334 863627689 764826775 871540827 491263911 794732872 808046576 964051392 646742340 811111495 347867423 439980175 823901099 940857947 357243755 922507584 30723831 435359267 833010392 953950154 103553988 162405850 349060282 825616569 923737985 979309308 876001340 893033613 616155880 890915544 130750693 880152386 256657510 934191587 852369246 971528641 350379952 580968881 643528479 876255636 10264945 587465389 21777617 252468136 876693486 962102337 461412953 824954478 306264509 456886528 650240173 653333388 877507873 994138281 324496835 601792633 604725834 886389170 850570738 863828969 867740240 901049643 984111881 990436981 926282545 995179217 700110697 773577941 911718105 970371996 381801493 701164856 278458001 859817119 442999409 886308041 560531501 945038674 968561334 984123761 367325387 612457657 766764112 985393649 136710938 621562921 554650957 798611818 514061440 536561527 345621907 588320118 531657296 689944622 965826878 996904300 354823555 797520947 621921363 798455871 864615837 979839645 893617886 914337527 718039971 844155886 415547901 914537595 43381780 465870295 461423624 717100113 199102738 365248299 650812204 877768276 927629604 961707828 131498768 591897336 782970997 978013761 871461285 987472163 64188644 258836535 194384295 273169494 836078559 849184149 610201977 837937916 674238820 698018767 389948573 423484351 760861692 883194145 801262243 959528105 441583108 834326468 309502377 419087658 642112072 653181876 225567611 761978949 804246361 892512059 649421364 760916484 658044534 912856289 84642914 796618423 259270169 285618402 692925964 782485281 857785490 869681298 647086452 656424193 240037848 784100942 436891566 558071787 968747433 980618708 613220815 882595218 994273388 999876898 57173808 586081897 604392745 985068277 707816873 947884116 924377559 969673543 214415964 442102401 550586439 969872149 54269460 259670912 450778405 965117287 28459397 484285025 145830348 976809146 12916058 249875441 643027891 699396360 465055430 838792842 232966630 857240994 434511040 962724821 750230668 781975294 340408798 967043553 725569889 776740638 322303378 771835875 812840974 942102301 17755250 858422916 462587004 569059503 855707902 928155649 377362245 619654424 969454675 995481737 234004324 378037577 104696730 920253394 588656127 878465085 430796829 510462427 356745454 779963405 654158485 987849644 783087232 882353752 994780590 998150490 120826294 931257355 483304388 699693981 850084212 902849083 145117603 176744362 331803310 515995921 926212553 974909160 76817337 810201450 764577042 869042334 960031443 971669784 975551032 984693453 810861980 925027580 857651892 931326033 234563947 914041173 749710263 925376442 704459111 952683607 702234588 784026366 818821420 911368611 511176356 757990867 836109314 997177370 601644445 962682610 329037674 494847797 48901375 905492343 632720342 743112046 781708452 827921976 278393111 458382734 197826948 764355776 535613307 611761006 444934036 997381557 521067751 697812386 547578258 929540625 92130655 731647663 273006344 928511433 56982235 74608342 319567587 889481743 57138343 242802807 213051909 723255833 138779934 277091966 405356069 840592733 161633557 506733167 983246821 994683811 696820190 918950078 886034818 920241789 367497968 927343038 114747373 271545312 575529067 608563197 514387738 520934368 296597011 990601194 437379300 468563259 813399101 857067722 866500469 989377918 969409302 982446983 887434019 957011600 354603298 479313619 622707524 757838185 178910294 393240571 870047613 996904623 594071706 841971898 560698841 873231783 281907268 465114712 510422478 857053417 779755332 907364790 28210377 353977391 984604135 999328339 113287114 752101095 509828818 937522078 101993930 512984525 452184429 683034543 111722496 228883165 631521142 982075449 126854693 144730525 208538018 232030924 309315598 932001552 863740479 980234582 650736644 926257142 46790000 848968529 197921064 287333657 602795012 934727692 946645725 995497203 965318890 984410918 386950578 600040205 403987656 914417511 654173418 957433392 539814071 790568319 926598467 988118909 925028753 963411107 371396565 863961909 894993559 908691283 148782969 787833556 557175353 836360956 425672878 996904657 525986919 960301158 365850759 810274608 710339248 849391991 222262310 623498913 288812545 579590462 219654885 548629999 500828771 503319610 943987638 963448111 837567744 995216797 514169783 980350375 454781376 489926805 407130412 845282461 723277149 940278307 885014593 902145356 201577067 527313230 688984579 981500407 504197368 939600789 2986254 418725272 42704542 759060465 303883292 618214423 878416778 933888731 9752528 193674341 104565221 233800400 648934121 884485580 321908430 777715745 796529472 897041864 238746635 281863807 770429464 837160719 4015341 225306064 493304399 819077051 845188398 950783298 956074026 970739976 831130098 887323444 693408467 809257376 915224623 941875312 581455402 720649322 903617735 911370762 123433876 248464641 933163241 992947059 155839360 973193359 686373132 909536145 971340272 990178029 144683595 293351571 182231622 746843867 69777829 588244146 682706883 856525324 847417712 957698232 868793730 998042520 402133411 560424631 777353868 839344946 400349155 991761561 623210284 930707624 574648552 614831210 996314421 998061843 710097183 841324562 476297421 580005818 986350794 989687951 176666007 767820087 457273872 694331227 220879768 233862723 415419409 849206643 345196981 779963048 161885917 279207444 157298605 529636782 910801156 919218844 850495386 935340133 213560131 991174351 283652656 982859440 148458565 524434874 925560876 935158970 719539583 772484603 712035094 857977163 113014924 531407522 690448473 885474324 210748484 785020656 84269745 714108518 635154872 652659329 97777139 111356973 438482518 523255173 489899134 829516252 326248535 768635644 272234363 674248183 618546428 647575732 378815980 806919395 624469859 966456674 223157502 853805407 229674422 826062127 728431853 814400121 509922722 530255936 746088397 755842095 744110373 884689514 521146909 626661404 61123776 900832025 507852331 739821373 869487662 879961517 196426261 619023255 593928201 695054793 988952287 991752822 279696393 543850249 204800320 250263864 303082066 993835560 431958058 683581379 827963033 923601879 439139155 818536232 366742916 606540317 385130595 524301973 54001861 428493149 855898686 894263520 883981338 922906850 821028356 963383768 881025121 981299675 857438455 894189246 184324795 843140993 967017467 985293391 415930580 571861140 702065553 999724045 715809411 834069993 323221737 386300486 997948051 998721782 400068627 763739995 993265093 994004968 839996567 911249127 622584504 629882318 6190222 545985988 104372117 236292925 276205725 638982273 391372301 855045372 93975193 797835353 478583726 934611465 941431047 964298281 200215269 762427860 923457330 964006574 184227697 596329227 269120361 773000854 583690558 995156687 853278984 974288006 746489589 869270892 813295120 988035027 605302696 943520842 191776031 558914086 344988612 893610060 657776584 878503264 567246743 877469761 158922587 886683969 166666352 416431759 329176713 411483544 541103742 782160105 384104018 903606090 863252007 870856057 734417252 817284647 333048529 535042021 706454518 957252798 694853077 989069983 359513590 899113458 965601978 997463206 604582300 897330429 692378705 779210746 311948355 510740744 369166014 844196673 848819365 857304489 24358990 718548886 955720826 997174319 134883043 849550295 816541645 866839208 664370556 976637303 58896119 729738173 439284284 916567919 786042003 905646893 6083531 23068407 327750493 500723185 798017438 856397407 127519578 167864429 451504540 685440167 653808186 776178933 897528683 946051231 837916207 865731833 906647881 973593050 403432093 887926421 146371098 283907231 846299385 987911090 865666995 948226943 257967884 853680170 226667512 649604920 80807328 434715605 384470298 563510920 415207914 449220842 965891733 991862380 798905018 808269074 985688368 990214823 738030728 767559162 295796897 705390447 235926795 927322514 542248991 602796276 557723890 691891930 314077408 359966167 526167475 526972354 312343959 548706547 459489068 695796735 132105879 496417601 583998021 801797378 59237635 572457030 223065870 402781242 285446673 289490312 503620093 868603196 253970350 964313331 251060326 613667340 814149320 985529592 139542552 361318334 132611718 148158768 557204892 574634754 703028984 974054758 884015424 948101191 276746213 802476897 273698371 494972185 464409627 626918663 316110354 459411489 119837790 351571848 23797772 522924145 782951276 958985909 147076569 980799384 585792895 888374541 493814678 805042750 390820458 428268176 862737229 915961188 447957731 690482126 992701112 999655925 600779447 711734690 262193441 610381761 584760533 680138041 522380470 761696216 624686342 975943117 25504735 45078530 664783082 771945887 323004742 809768281 414730071 698846543 959493361 989181916 186594921 670734843 420850537 917453023 535528830 958563063 479462215 624954957 82111450 207196433 624557484 726871958 675019916 767407830 845002750 980244216 778532822 807018409 750052002 766792542 257659852 842201105 963225825 984938925 628149961 632929399 727345274 879986098 890387370 902767938 915984384 984299163 806810488 958853010 721502416 793716741 126199915 759431360 664191524 700957643 282122013 297550770 125965822 390283078 469396983 960421962 306307595 870794234 768705968 897600589 939217631 949538166 205060829 362833847 32395198 253206569 780821183 786608598 511637214 911198749 669101063 777318103 338951564 427350082 104208971 905548741 421311268 816579532 558716698 948660463 965952016 999422920 770044254 891327608 507314067 745730345 752476884 928884439 35569942 857258675 222780242 333795146 308162423 331777601 690748337 888080192 413130607 982286800 610418550 910196394 864251521 992402236 390564560 789816884 427433550 580108389 373759757 962134222 271365956 713340713 591186014 970669815 936360000 988155317 409136323 704617972 255958187 615978858 926419454 986552060 841666679 968391618 623972200 933125450 189935324 899469912 66914207 816476576 402188113 409167092 627881688 827822959 304898066 461525096 980302228 985498372 420069006 765235922 443677161 762973290 867089949 956942259 536557514 824237468 328492129 858805961 962767255 984069280 184943549 820988098 50123717 392631009 820375859 881748021 299711131 757104729 915493184 974356658 880980583 985049398 387874430 757429778 952426239 999109733 356044583 585263506 875672578 922520777 988962491 993721727 430723650 892826065 852850036 927421294 586668866 910510869 870876123 945545648 337344111 462152023 259121127 644855054 975609213 985340397 917204060 964766455 788898330 979144865 428961662 612656213 824774109 941357309 864519342 868963445 527749350 959789193 929233591 990293187 671832036 962239079 929329352 965852144 278513418 972532121 756187884 894332725 829073369 899135464 791169438 857192969 859278301 937530993 454525812 505745055 342483847 784361489 833503297 986515958 770890335 893791021 317529324 859888144 765325180 854533123 113685837 800677995 962211382 980087650 191383791 349100386 753609165 915851179 299602998 581875119 103742088 628779878 556192637 845052795 506647024 869427885 347719769 425722408 269760087 405750486 485072165 576232433 66064732 556736149 329059289 941575357 91815748 766254378 516503857 811279936 381915215 882883651 914007090 981697940 713024191 750636813 628049650 643234405 808452355 831811663 177346605 552005980 82792792 372034436 399908148 954316239 138892271 365001398 991967556 992315655 260361397 356139749 329908302 584838988 853536018 857397270 263950332 650450622 904456176 986469507 909302509 948602603 749344185 986220446 538839036 657801219 685054393 849627788 431231947 717691370 458111299 812563258 296750475 735175345 661213339 798067820 230209389 399680235 159148060 925525651 558651628 875026950 888614867 953475166 510107255 645584297 156558697 284657090 529781629 542134311 455612778 795382765 10328067 776274742 748995247 903048550 968514824 969546911 926716587 977008683 850031571 963942921 924943185 950220835 455142640 743157775 301892016 894517786 743682997 976721377 429700632 733468599 206123577 860291617 788478924 849354122 739259040 760895536 839430985 960032408 355196281 364449768 284800085 763382206 66531665 120234435 652184431 751906513 757693764 915577211 971813614 986133027 317614992 999398967 910378951 922775486 243057358 559023112 140337011 622698606 928965118 947820652 440754509 618575967 767410780 952413068 511555387 550683290 266968948 495719519 748544405 912274168 899501891 953182331 138441129 269350027 154514638 389708434 718565539 851755523 931966692 996427724 366190563 852151199 85596914 346972625 363418638 843501062 549996556 686852132 70755604 837193939 779365809 896182593 916901594 923608592 53221691 765688536 55767571 132252469 503622207 699968254 39718869 407038982 391608847 535343628 873784778 961333186 777731230 795147080 760529914 912657487 251679503 494863608 382176898 744985755 484803600 608208763 362180446 611433620 61533798 292372126 420240485 563780078 972454444 993812915 564935723 943082869 605872068 944169609 883858502 949567369 846467601 936610845 126774384 874563441 163405388 456445396 100858353 126179218 820189109 885099930 620739066 763854057 449749645 803546686 732460542 855022519 364943537 452081123 653327974 836704747 569719098 763346081 956270541 993979222 558332519 788487468 80752488 271514246 274329613 942803380 492852251 900606582 916716693 941138181 646353633 809724779 878554559 980657983 455181696 892056391 122915882 928761213 628749799 707462198 650851631 690645763 852259704 948713460 526740882 900424947 940296767 948765065 224483035 724310100 545948928 992887176 875269684 997018077 282618840 929344623 24035418 537352201 821061218 996224589 551136565 854719130 538637135 833932013 524807555 610290108 997609267 998285327 41796025 801214912 300598923 355286080 149160570 304095270 61444683 326746766 493990966 849680966 765614536 818044386 748992464 857442489 485805048 546607720 170595921 660431659 145402835 841256384 293283558 788048045 227128257 960209950 370924691 884537804 522571637 577998835 324474826 846562141 286680364 922296700 29521192 793676458 776205796 945273932 396543530 516745520 55935012 113952872 384271098 966933696 220311513 623882894 903017571 974078974 488259637 719313831 753471150 811351198 468690023 658180440 611658500 664875794 769743638 862197629 238186637 564206691 299468487 922416869 904805800 988692828 597467143 796203371 246537977 982240357 22738858 456652783 985812347 991325780 827949585 871208805 904716121 962358737 548417807 767161551 914892072 948821703 778892221 855585540 430289696 929787364 892380643 951243368 401677388 773887211 518354400 749812848 666349552 963533119 764741901 800163705 861833465 975067047 331950203 452390383 797159068 859845229 37648053 844081434 547275265 958295872 955961862 961189929 481215463 956919315 552948834 570785984 393363834 531573257 232525037 758466594 327511597 723838729 190005726 319075182 275314769 558945088 877070068 905310099 241030648 342789115 357531363 827563593 329255771 671722125 971162618 997853393 235530742 627876104 370155750 935381419 808021499 993530819 104963430 113704848 157657649 578119758 840866995 843856097 853909394 998492970 573514716 608360049 301677859 475934209 858812666 860046665 347977944 351148166 810348832 868359652 199620219 247046774 92157441 351631712 333498819 807632993 631252345 894388815 978957867 981362843 96986152 444712261 345345675 813596996 150720077 649402292 146853239 915212976 520899536 676450783 232823674 926475936 128944932 628149560 997267136 999557840 968219220 992646839 388157379 703383330 967226067 990668477 67164927 149213365 165235365 761739431 128503967 708295951 585172425 620898896 645041262 746868888 822032358 929370842 543500942 563381481 326866754 613410947 383022402 707689208 677223224 713363963 485080831 990689620 775488445 991871710 635269890 783902401 710791931 960572883 939260680 954270358 711614192 718802222 826753934 972164404 114509742 330108957 486880383 912208504 959897551 980567846 566740082 666605412 961242049 995548561 746815509 782562780 669169428 679947539 85332724 555032854 762624839 790163088 897312171 947845707 637615181 722769399 610599240 965277708 374209767 812440601 331508726 565198068 139685032 817575449 128453593 780247211 966500577 975150890 973025520 990250071 364595529 909256415 738383054 823113418 33013326 521823134 233720101 322476162 798930285 824585330 821281604 822158876 391586629 909775661 758120525 942452574 504857515 509402384 95285959 462030031 711908684 869679419 13462348 351563089 331519564 900094281 332748532 645160312 574955989 948907954 852994310 892553771 322830948 561810182 97430937 579900874 486718583 702883292 457977795 518310309 986239249 993485539 502647351 593349062 687586401 735010666 202642738 693614010 558828922 685212089 371013847 654452228 510579670 814647201 370081435 958096365 919814256 934181729 46432974 422083850 965606665 967400929 422640372 760255229 65386250 488426813 718072031 837219258 736364566 997454048 701119700 939491375 534987314 548237974 807026464 844126760 620517004 767798843 366048483 705405776 767499683 791889165 775272917 931332221 364619742 649858064 924446216 967461071 499549831 777246771 796053855 809740495 37375203 968999869 901543796 907517817 691639642 987013598 30383549 99971746 614445229 788934714 537150385 585227676 619979888 892544734 371472331 501550988 26737087 840409846 532852684 746952878 343809730 966742541 430530591 704001038 244379700 505677925 839258138 959133739 294198297 509852451 911992028 997786813 879093267 888189006 776374239 840255794 437046048 919815615 509927506 932864259 668621317 859115263 435611983 677216874 915017875 919329334 58555936 233927854 379486 387389182 976478388 991042509 947678611 955964301 486510010 973545710 32575885 103178286 471727619 907856519 791674221 911430059 628808423 694639203 562163138 695586855 927649029 984785222 633482963 837227744 300621559 529261419 347305973 825758145 930911051 977111216 675811104 812766780 629488267 688159378 581468259 934980025 13212298 305022015 715640792 894887209 105396412 870625061 562805931 885976881 905559647 935298781 546397689 699591252 767283770 880518694 89819892 200932613 630153818 860981237 196149536 774077560 639758101 687246144 918210300 931792650 758284209 805075773 562753130 739294390 955360117 995405050 647636710 867730779 708059019 901076645 439472924 481657649 771352300 913298596 604172648 606392320 976834403 981541616 25049820 688362498 607130027 928609844 275809716 930943411 981070261 988309258 900854132 915897825 263691895 730024231 530455254 893848782 370700962 456865187 696680712 784671469 826582019 841550019 33198552 184783960 468636169 503927258 131738291 368012515 167287718 541530545 77342240 293024677 930880795 953542697 706408876 901220643 147094846 592205605 823155428 972409141 508078329 531654541 54144867 79317415 782468796 945719086 392084768 729583903 916105614 935778849 518233586 794756023 608514300 662896010 433434454 864195953 745143709 984748829 937079385 990083413 148018928 400739800 554447365 780802752 735729 697315975 192907476 346607832 571928286 790364576 639840407 648756871 902540686 914164281 67995436 279221359 372340882 402478441 731445194 994718231 659054120 871585968 60426937 153733694 493732444 709993105 707933596 871324056 545646986 585349418 433231698 791289633 264462215 997146491 171299154 811913161 209197153 505495003 645846077 861667837 908128701 942402898 585452123 963803255 507477010 887140925 554200175 828279942 102105893 915214775 40137890 761701844 508288682 920961021 440906560 583712398 862638887 906653865 734299381 900136032 615730224 851386000 947958163 991703422 692519224 930362729 542435771 984608233 759709613 772532347 930378039 972528385 850299627 995289312 724936918 967832022 91252626 809009257 979161140 986373006 530970304 733735095 323394514 924190779 304803106 670899026 641299335 788456733 432398937 454386295 467911621 933668887 294301726 545804663 395692199 812374388 92346225 677475971 660454650 860567632 346351163 444114169 82179163 168091984 533675696 591336444 537670403 628631710 877414168 999023848 885100125 932042573 207610611 774878464 490676176 760639692 312028693 632323253 751383299 855643866 417912509 499343417 332450470 704482112 817158244 818062714 307359567 956415365 330258043 941217710 756006409 803892302 455768575 579814288 811890247 993208363 531741364 602264119 663805043 993121808 704259416 840005306 876303595 953053221 231028108 289455193 351641647 535032842 587798729 957122522 897582280 899097085 530038412 954218265 801388517 933096634 93801334 895535948 177383926 342149951 538718793 991219216 597116241 643070666 800226282 865260914 71524062 306664991 155965621 895115351 347544466 390046266 576187802 736071919 666420312 970614993 75570799 194979032 316896589 879078781 198838065 524579412 165211088 673881571 544333867 839594822 743172051 921757833 18937645 359211012 648531374 823163171 77669658 574008171 875926610 959513882 952366080 985397005 902558085 917540846 616908883 713088051 693261662 827475509 685781201 756397342 538027905 846402626 38732431 40197097 331617618 439225572 390091112 445293034 649580419 894227292 188264209 613889867 717472474 779569959 619154902 764114212 716786527 838811165 325229760 877173367 592154846 869382498 769030848 850262099 78774198 797883928 951229560 998499941 206644183 614593065 277985503 973856934 796522102 960284667 448199012 520500058 885115875 955765913 723888665 815438972 306434234 529692534 826831221 960553691 250179839 773197933 9974254 289857634 510653494 793748299 44103013 588504691 949569007 962219990 701602280 842588310 754586086 861655341 608079926 940376023 447519923 753699617 158912728 527219628 581685483 637179585 380663581 492995397 346441101 797777118 940582233 988745925 586136517 587731351 749763346 982944402 477080021 642229182 394186652 548732686 693629674 697078862 615874844 717707446 424166101 490118860 295555255 319837249 289886529 408374167 456494541 971688033 231016423 455325209 908257771 927691019 898559867 984065540 358066179 905475098 674821315 955972380 727545228 775329978 997503422 998314430 638372139 655857772 105824227 581241292 707539487 823295484 606713159 970349754 117222196 787642506 163639240 383999092 83213286 634765907 300451043 488329408 215789036 867610386 884562823 949295897 31235016 491947704 116174950 967310937 553786605 744686780 907394198 928522150 290694753 661195438 439984492 984033630 356914552 477312275 771447614 932384176 552671191 987179173 546182527 966009311 262613625 687566061 899523325 976308392 530507761 905125041 50527498 940021961 350297078 969687047 962275805 968354151 480064088 838119540 48955856 349261608 715455577 897715680 875990686 962688832 260805923 448884959 623378679 803613781 900803493 903178882 307484124 949963773 212996548 298709821 854498777 887735530 330317999 849799227 786026331 823779165 68937382 547066484 881142030 981058581 273931287 752332959 182742176 307835963 51260416 490442953 156593250 404176059 88247224 928656329 158366762 258603405 781341238 983852284 398853003 797111469 712834852 742036959 411493485 574270861 553254786 944897770 222866107 831574218 996057259 998039362 935780960 968374675 787127842 883518840 781365375 861715099 488248758 864856584 707861903 739065692 928862133 931774908 330315562 710211683 82995008 859583197 8698024 433393080 53350180 360478684 573990030 826164694 881762130 995916159 1287428 688619673 643680548 728414322 822253237 976044380 118431753 385838374 234962511 253371934 417631984 597631770 343823651 672054808 511917178 542664961 424916628 749317580 272562715 770686986 326889705 456168318 799042599 949180251 795964113 815329150 913664900 925384559 385179189 498744248 940214310 969783061 583282112 828194356 261772728 452305487 168358093 491798447 186463935 726247197 575690873 905296456 875824045 975501622 700552568 913763969 907140723 930783815 173162108 541760424 835018118 838798998 77097553 227989572 836786636 973325058 679193258 971664879 273950454 611386425 946344681 989451051 780017691 788151145 259724526 263275521 947479044 962893443 357137695 530067757 411721445 905308198 572691441 852387580 654098132 896282647 751186583 764907878 7596380 825017344 818738764 850172277 457682532 755580581 640108879 813420994 72044066 611503813 194467727 995223491 759950000 842329512 747067649 768762279 960921096 967351082 557075425 765902676 858643068 972266073 201011498 578258967 266457596 810893744 60600520 128231469 157028461 230486124 750847012 905210033 248845001 650779133 534848851 761720135 776058188 854845667 937414266 953116307 296316009 893224814 666054873 997780463 631530941 746491901 278418921 499101712 484575388 724719254 680987360 867565635 861594005 976489449 434280751 833650067 656667270 860272932 943656272 987408064 131242682 459015558 326381182 557213866 241810930 574683189 804739357 962680137 566183263 684700775 324434753 476476807 253603808 607339552 113336616 978120247 702949909 801580044 805671252 842938794 410396521 764538952 66674862 804183290 444911719 466774877 85821166 365284623 737069125 950938997 228531604 497967310 658831620 964094025 600642935 632108241 784081574 899453464 220272425 404493401 217907008 835266381 598134523 757441471 511437366 663417511 504438222 833392141 805182754 985910314 382933779 693302325 284164261 935126644 688620549 963199963 445908068 469217514 548050702 802371878 720888950 778691799 791239079 938299585 527649170 565938262 489723729 844024371 903445507 947636434 929817 376624678 956140456 979931681 569637678 751970770 905104049 934630176 330741715 642240316 323578436 389894091 177912798 417252726 199542358 764350758 725189761 874317821 858411602 981154506 997229460 998673286 947406140 975065099 36648747 778529423 393185415 645751280 765984183 864547022 348575462 660584833 163977562 530546888 49498594 800096608 908023787 919942044 701970434 739761689 211342253 495316847 428817683 886643563 317669922 563418159 751092125 871288194 381646356 521568097 232712111 679899189 768507943 959246452 366486677 387368857 536445147 702244415 36376314 205560985 869677920 951690929 706303902 706790881 755260480 964797296 624700415 677526203 823148097 935486597 926997639 938049569 215473938 634417281 302565011 660042353 121902393 134473396 680907831 840201592 296402110 905860216 179357132 282712555 51822727 108837451 408454531 840113648 785563235 973798968 869421387 904543000 784250167 824802580 327344015 659309498 872617682 974477836 754492147 832884651 638028422 707327295 175956587 766548652 711177681 721297317 581145034 594544866 775888315 960721314 208599296 947357210 333111973 538103477 711732038 960493919 145082905 994374587 117905245 179572023 441544434 875497626 501565509 620105362 568412234 998316412 606568969 716840160 129672642 583668608 413649205 461452008 455182187 507401697 913299575 956088877 995364944 999902170 628632598 972763770 40489650 313327398 730523401 914860987 891764337 915964062 788491053 902696094 530535429 816330100 668699280 689350212 773410270 830146836 65611465 900842712 185050139 214168073 40296822 427807896 558083144 799408656 942356677 964702921 369208935 528865887 361995574 635269335 586751126 992777422 701677889 845607476 819246529 966942076 88111272 535722218 162837579 745577627 272881935 936006379 728580448 827425859 833373373 869614219 278852309 330329537 304157010 362833339 66357205 577354469 44235815 720932604 257330819 269962189 780376758 897130691 82493403 746457300 833758839 835512131 838870859 842646712 679629881 942514375 96961493 453054570 49934870 257505834 445248183 941680529 130309001 935321615 123654630 721719894 165415963 508107491 183327236 558359168 189278429 923585438 188955416 744932026 665227546 776922613 398426491 638680567 845643187 978233620 24797962 903318647 399266962 705729540 636662776 746667234 890934704 944746676 408528947 950191744 27206122 501336214 115193500 431142973 415310557 923452567 682940614 709125395 209225106 313191833 905678154 986273678 445905838 751598269 159960403 686489956 294698218 831816608 84672905 949116014 285831742 867310357 94331007 671912705 815741894 917377103 944957791 981674427 960184389 974870515 265340260 705852496 806142056 923928331 412494921 480276571 151786972 752408334 905901610 945782270 746536133 871200237 474760213 494639239 774298747 798927703 249819452 710192056 183952502 672306711 909606412 944398561 464967758 885812408 764776269 967726944 517867870 739236585 566200612 670594747 579323892 750081977 845884688 938588553 258823307 557230564 404164139 432310733 684219508 850604911 600476626 885646346 620713230 994732736 277842182 396076901 244032488 912388553 187428962 610762712 519581252 769306089 632891021 771487213 466013635 837109045 125189176 297757079 931243612 974605158 204059457 442258347 425930216 956421520 168656689 445066942 167570249 220148586 775444368 930243687 122928951 906543771 179788258 454317240 810233379 869052330 534573155 556860939 391438345 762836698 156449691 167300065 186195674 957337830 624851266 825402501 6191567 293783361 52144132 836784504 896051298 956122422 32845257 347856020 83318971 138100723 504987854 553268464 533663749 688505503 280620932 604854670 395676520 411894571 513077231 933455708 57964120 791096672 890327186 892894594 180016098 792873554 663490539 702190684 680116059 900728360 325823360 761292695 163377023 282266665 880541455 911447273 363640470 641185083 73781664 427751276 284472001 373978869 190183691 920800137 46473430 138528974 296081489 469502765 782905971 983889034 109440837 250301967 618362210 889528771 220712953 721504700 166828739 517617753 742633367 856562489 424045758 499710208 512879397 983874163 920762002 983479072 973469323 983738388 789303988 928650574 685460987 908029024 897528850 922688027 251005404 813214312 551182013 559722292 484091145 609339558 563651011 648382409 507199938 635330024 808208040 964765629 433414355 625978567 856962997 927152433 600521677 862651303 479958837 688358093 872182393 887329752 971745224 996560114 560995303 667055502 582119730 591808358 704473243 736464002 909510413 988620881 249733499 477816076 434568261 676984949 127653246 348778624 429075330 958389848 377109457 822583833 271250231 543160176 828803029 996828000 674935177 921540833 588739557 857409810 287266633 635146318 58309257 452536724 404002056 774037837 410986354 863726049 292862925 685349619 724393812 840467994 357123809 934325517 360214128 958712281 158398179 960854285 866738481 996857854 779947981 848198080 207229945 544632723 490463530 967867907 235060447 457839211 807290102 966339541 322468429 782145343 986208219 989657585 893294745 919585083 159001841 304778571 68440325 986500873 199375794 254123921 106981247 161936404 393005211 459252216 444417935 678640991 428228447 968518830 977596596 992436315 271458284 419592228 226925678 294053936 387683123 627503369 421807439 548125708 956311440 958863278 593274766 979328179 938067574 970221589 457334958 929509937 345973991 745770919 51196156 666882331 270834160 520137995 497021740 608465352 16345215 438434879 677323716 966114875 755010177 794389274 121261245 639682151 773873025 999098242 960899812 984840501 673192136 959014578 726040146 827868179 766984674 891950659 677635327 849310565 175176826 885418868 227514020 785160925 593478920 972632340 243304412 527599796 627584406 950995816 141327194 771898749 217505338 824551646 796945910 838838710 59663993 681577601 199517695 355675158 10642708 894535909 575388428 935929569 299191758 784194036 304594952 371186498 198327820 987511633 294885876 423957224 498392203 952178692 487474586 650778681 493904462 789242266 15762513 588990341 440825758 920224468 762381304 778032045 895426912 961358236 414374678 489874854 747891107 766336243 377651776 657523600 791365752 944626965 755603550 982296548 510773767 570555240 106403195 459097042 865561933 920004749 18773459 810538478 214590581 868697271 538369418 700926430 566774072 923008361 958100106 989264890 901933071 930337151 155858112 723239836 386420018 976325116 987842853 996581338 171608327 450526648 828666548 938718905 807796561 818699678 113654908 667812878 494316835 814362135 516428285 949274612 822941367 853426628 159567034 819451210 21995229 502013985 991829333 994323171 59018401 958208852 582485104 777899358 218880363 535507608 431125829 698437663 456581927 923456409 313645085 840699865 89439223 995928034 210846435 313189069 835786615 984102208 409676705 539383466 291743043 491012121 755909102 949731638 556966753 962342541 253142512 559351414 212839130 491323893 613978215 875122851 948682729 981414102 330395602 690039623 684222417 794447518 246196230 820238325 339196690 910766836 640842310 791157305 496468970 537754142 985676737 988707919 447327685 518054051 118970322 614402465 551662322 733366130 438131863 850551229 434011723 490282836 994486701 997864927 716871532 957756413 835137466 848669048 16584157 247987146 340649928 432850141 829617461 964136754 685026995 762429206 929372089 982043297 967754705 998667431 782736050 924533872 755096850 976415219 670710633 865825006 43437673 262273738 195610101 212969422 276174889 563272724 541341864 578477245 796336624 840449877 377059805 952575672 197900973 665715649 600284700 855658306 916325543 972662748 425270935 544077391 694329598 973462423 867689747 928595884 289598128 831180100 973936106 983492895 114850108 417464252 582115538 868962080 461190984 782660975 512134403 783414903 118207422 412054373 24520167 513068111 960436331 969841235 991356923 994243339 708538084 863420112 66846035 235608946 281065977 645989008 887723292 949187934 991473699 996226066 140938193 408667385 446714070 607576638 3648581 298018974 103740254 279357677 301856889 448024335 236272567 536552788 169985017 697574025 117140362 278824297 902672844 986143734 929820680 975437214 317751696 966869561 219143845 703747370 966415079 985214645 496699632 899507847 576952073 720921118 38268792 231344072 987189062 998272417 932029576 971149557 111592922 352063729 672233850 959539830 514850774 533136356 407751452 932659347 105922977 708791516 877517259 906193890 651632962 961481196 769307989 895351373 519701153 739238610 102106916 195333939 930618599 943034495 123317903 456628169 192578010 546197058 673049479 786119188 26570686 237880507 671762480 938983890 715185686 747938767 52907900 947370320 343631270 853277992 217808580 630157185 23609925 103624165 653966229 931290313 283375691 445886217 388791044 408366614 409219337 815709609 901501153 963282328 174821129 956718180 679018602 814434248 694952795 892919967 112640135 283821914 803337062 908367950 535233088 773399661 227118324 661802998 685110908 701321092 673057208 715765803 778951160 996666749 572077565 687418480 70894761 625544934 784534723 927732801 660526348 870390589 69138581 797855021 460856924 866629381 79925681 325698032 65822876 480798171 946452353 985197672 737137225 836748498 964278421 992514729 258888075 944330523 149124791 701092695 481042631 975719071 312418765 936613134 277684335 309448783 836511955 903560224 47160829 152525448 484656596 807377708 57234697 685289698 583657458 811515821 910436724 914737762 54130971 603572940 620287616 889438100 169036652 741035818 460508695 692486997 811415430 928040865 581041064 657466414 709852932 917866827 648078542 684475033 901115529 939992702 119668537 832188271 659767151 696561091 555891426 564784349 904053707 913625334 842529863 896043916 937851691 976895865 722280150 730985050 907305066 925840319 110195929 826698883 500602489 612219392 584050362 864418581 499738890 796641759 194484747 801097377 4723936 250490097 491109725 966216618 849545843 945326436 39243540 715496890 482758079 896688415 489391097 877294108 849817859 875513906 426481649 617883710 419038569 461490032 732416180 861014506 446472970 499156812 113737180 496656619 382348200 537456105 669771953 939952848 993694652 995127300 753771115 992322395 36564114 902449028 42567955 388462680 396790920 576864695 592233547 840609595 230403894 897103764 720960714 841572445 615540743 831593405 26373609 710526578 863495292 932187953 211498923 850996649 756886819 973249267 719660223 748538024 373236224 795053963 790259546 826640323 614887152 868868636 691558462 864647328 666834493 983706582 803949353 948112156 137529267 366530522 642464217 848341846 585623650 861071876 703458497 876593475 791673515 992847188 510122759 783055940 410789281 896692947 58444680 674240339 740683765 798481235 470640813 546254334 781164284 916526919 905682864 980294254 222381496 981438972 961107390 963125339 243908699 762228142 897815441 970058723 539611957 957537023 130103259 686062939 319389231 849459591 954272891 967442015 838922657 937232830 240314603 542667414 919611223 980719173 942185475 986175403 227594144 848708987 431070650 544003140 890771415 935887503 994048772 997488754 504910945 821762820 865714362 877363841 319406787 817148468 318949062 952068155 761633800 873438157 350919237 499254054 626829209 951429168 304083130 766595303 27142247 540682561 458680713 901883449 975408733 993484747 547161118 676910890 798860478 916165379 216559145 829728668 404010816 463365895 207135994 739666348 95394603 148664071 933423612 982347059 735680028 854285835 509732355 701636245 112998655 245599568 486866830 880399362 893870776 920812476 573572966 573922867 175043 365339271 327013612 951522411 21041363 859074246 301558700 792332083 864685086 952670974 228995466 393938738 110634823 264375913 575292789 872713716 718990680 818224791 396944020 471967950 651555630 766505842 331195669 924072938 304207179 312310756 645252499 929366400 519883359 743689906 273320918 501981146 848102490 864382211 251234706 538410217 665848750 767394027 30551098 77024614 424075395 767373881 346590745 692742998 925110338 977639525 848786470 986046914 605085390 756284495 116061753 982926528 390709791 996675209 389707733 458667355 702577371 960632831 275843526 657505648 548941010 920219973 570545579 599586702 757934811 889542918 872328331 991145485 682364842 795496537 186612306 188481059 771457814 850288302 722132968 722136557 71306634 112939222 722298131 972950518 947977074 968211890 643901471 711021481 497168412 825966889 328559355 956440157 444827315 634758449 288180355 908936913 643010618 830827582 591005783 672302672 604352561 974386057 41529959 334934596 33309130 243477449 982974967 989830624 125031752 550625400 81290229 785671210 977136186 977737014 89725612 380895673 736329916 830833989 679244687 811195589 988289 619223622 450545245 582609450 584195824 754211672 531626506 912650178 329815763 706748517 949454677 977883871 764440128 840659714 681640662 729852772 7903980 631441632 762669066 930276675 908819676 962192458 708288224 909547948 476548179 962363358 319573476 700823010 140846376 405976092 191758200 567172311 264544445 448679845 559589621 912611765 434026362 757382184 224483081 269552060 964240673 984148807 165563380 553231320 962422076 965669899 320016369 813307294 851910293 905795806 341730790 500010291 390091407 474324035 132500508 415773154 342545643 848462904 927326 375822530 418720159 928167401 520272104 987920003 132506018 877505996 266827622 613562199 243477438 585816618 351724088 549558544 509463733 579565293 510128472 717729890 415363808 772175942 469476202 714043072 906885549 963115926 126805465 175431133 204890338 547796366 724041442 726084045 656662511 700009889 265755120 568874156 263929027 663384085 401215458 526529045 243685417 708649395 988794739 993103674 693539049 942247779 379322590 650057282 882319339 939315207 908653762 923226046 587618821 803199230 546739235 910229289 561008988 888633306 274245792 784243559 467089445 659157452 287560620 743805727 138731040 791900715 937216559 994136896 997681249 998802818 814911066 864350347 882285333 930690850 521028505 858197849 595971750 933779516 883249862 983094492 646194398 982251523 787990194 887772859 221327865 971969405 797599485 964735082 162290046 699845301 553850122 593016524 755695986 961467281 798426138 839623242 994378335 995784833 30322788 523593051 546226985 989060540 950195919 964909685 749160157 957023050 793701889 873635737 126582037 196437831 65664361 546014258 204577766 605949877 72235490 79981419 574738949 840073679 448162726 819918553 211929830 347218548 222266336 290458929 107164679 944981254 783454178 964148767 908723800 936668276 124220986 576553544 118342137 299065205 768651142 898851867 605307046 797891234 422189413 952587454 427068748 679666514 735076163 915785053 338379571 582601826 883991779 987759803 197352917 250820528 293407185 949051669 971654524 978069461 27085813 232499890 89988035 406464755 495157108 613803569 732141311 889722799 551449841 738730886 233199133 802904662 383194489 493515771 3447097 917369913 591037322 722615534 208846503 980116577 360106202 438477633 138695640 527850178 560559540 633523987 728375021 904548481 734092875 822637630 694526082 727916036 649520196 854146100 693630828 836934531 564896978 631462304 720692288 775101422 596081197 974125856 848964478 865051903 596862376 903505303 60835501 908277978 901108506 963394165 664913028 929798407 940082721 945370676 976598604 976919803 697951052 857233258 875917537 934411783 351993751 474137624 100292738 435499532 92751144 135413308 610803299 756646337 796785373 908875916 757464128 766052208 83149330 86612570 31214441 104018138 88269377 874844594 737120334 832233468 291964523 386514431 551009548 759397666 621868175 756608571 826385752 963189508 314610461 660786931 904663958 960695127 235645784 311690345 316941241 742930408 758633942 854714431 965402249 977036379 337218387 563147437 44235508 898848788 348223089 379327132 99126480 344673317 204342626 793171451 681436051 771716640 307976247 476248912 426045783 914247339 960656922 969936138 560530416 857387998 413435232 551834859 841469106 951063421 431074717 560407465 424550867 658885180 763945577 882950966 982690834 986449973 630886869 756382007 283573272 575712002 445006407 560842338 792584330 942808008 813516159 821077940 548721017 799797397 679311745 794056598 896391195 917927721 396690480 703997324 559256359 748803437 678147549 992583945 295917470 806389873 934824792 948579864 708872205 928439344 559296234 725863699 367452974 896454341 848490333 973172057 857322898 982516621 943765697 946707535 909980317 968381660 545179440 612431263 693458652 900591639 345859114 474520403 847469638 908730210 474571239 676066106 37184009 928253808 306654424 678050494 480047621 498621821 577690195 898559482 171197921 439930592 590739874 883333545 580666944 691253876 995204983 997314437 235681879 368317722 950250146 963265377 667602530 821509594 617894105 878040984 855242582 876347459 931311943 947901021 939091481 992154468 410870596 780278460 527248150 561048352 965707513 973426858 921018519 985033394 361347698 483854566 81091055 852219136 274763689 988328246 816069125 921960465 752313717 781197122 881878100 929180448 593382942 955771111 78795164 559937099 22163646 177700227 406418788 425652216 18395587 478460202 747802977 810935755 253837472 406308314 678971944 780064727 735227142 960483119 714860445 745411585 839251087 970809794 470899998 840528648 579153177 705711411 274810910 293195094 753172531 757440427 953544146 975719314 759989154 896580197 237161421 583342954 842541903 950196219 254357097 797010565 17247881 615138055 222147089 233586918 745965517 947401626 91322694 108896132 173502723 646528951 676753048 859602136 847045017 854087191 437428384 707607412 226851822 823817680 98017638 784864463 78232731 830163032 294356714 700594160 703008163 703039479 178815030 503259618 808784566 913413081 658397527 972364853 82724447 502594389 501024865 736910331 912336125 986810460 70254630 907057554 595069884 759540663 483755595 864338292 321566228 832646415 444423517 889425121 392242392 918196322 347544246 685499127 6035999 463247318 582120249 993461551 806447729 904971347 459515712 768700809 564611266 772634640 979047478 998078853 500818790 563969577 299950189 961309077 850284223 863916106 744237728 979908583 978050968 978990128 551291411 683159861 23655062 279512709 636678157 670910262 51980145 586485789 260307623 896339761 62942823 770570182 488922490 808286898 980913490 996568141 370327059 811845821 365245939 403945982 18260671 683300525 749606176 758118408 591591034 971952999 315853024 841262423 638790472 696081980 742025910 890876042 354229917 410011609 148212332 300788263 23008937 336139012 218259229 717225624 214897561 704946640 443540103 445178660 134343035 151374663 604296799 891638811 751024673 757602239 286072521 640974676 696979961 832401522 242475713 678694014 887827318 939586018 26863547 658156229 57960174 431068588 487184014 747219420 508182053 885342497 286633069 718705974 848054027 942544929 734633627 758698075 602165707 662744457 735086879 859079244 377546714 807337050 310519774 525794845 240086929 394008153 844811343 964015049 988652065 994569421 60762517 300827728 959378600 979209358 747363794 919822443 732222959 745508873 462120762 618607667 513078948 672983597 998570486 999856869 399465072 668741693 900638068 931073811 997976066 998767281 926973938 958996897 929892123 969256689 355873020 559989045 118032640 865971981 275886104 391322914 289536587 986996817 120790271 689946612 302973158 941832464 337429225 635091856 310199730 418254198 349432927 390519764 894154244 946858972 418548021 898178994 719355454 892164757 441533788 505637914 160673310 207267095 334094706 889838550 125897945 345434140 32114328 878886827 43437389 332296056 64536561 387770443 791347784 943069247 706942371 931539828 97226087 481550621 253768373 728003298 214867733 989076502 666836194 861960058 631098873 824402213 15628585 955135465 407366407 762681564 805708207 956567823 528712730 810490219 221987001 317578934 810334855 893993099 607819886 767005618 114042774 677308017 134065765 736637900 884375169 991718276 294575532 879503888 300694900 355726254 47625103 672100048 35417829 919813360 58319210 377724319 688461892 809815807 886022394 948717017 816795039 991409986 813935137 857336519 420260275 850959052 260104030 380169357 432968951 725992250 510015325 714819059 824766300 960559954 259956018 451592261 592729327 758384251 465729195 970948457 706322061 738780856 539246417 583718658 811421727 913636391 278267478 389158091 900383505 984605878 512877620 654763484 800335867 806890922 452003667 710875513 817227806 966801661 542209049 936917576 542112021 695492671 400764013 929633739 27186740 960680134 869129787 958851604 94405019 838488409 438793612 767221281 468717373 559968863 904532647 995394690 487248595 985823533 330687812 660078484 105322491 183212154 8643190 766544125 690921232 714046774 481841898 604607263 282110121 940783900 265220391 689061613 741558579 742222695 275426600 971152694 46997710 578318471 318815872 838108036 341733221 894953776 539394866 621982089 627255053 904156731 74880155 612557379 444381363 847028865 581054685 894995122 263593252 529998937 997317428 999776567 653385970 924290898 727531111 886935437 793205330 813200782 945105660 993456626 127752017 207294295 570849169 925240990 593731574 955473341 402821316 958987543 886146614 917644305 790441203 873477958 34342546 963329274 243537688 260025311 695129118 823991774 363575739 450077768 368100811 577045448 530539793 815663069 179638192 871649602 738839809 964488833 657453711 664318639 932705170 988345653 175722316 403691239 368837146 439032127 866881899 924107370 648311382 866236906 368778746 796289783 741123516 789271209 410483732 981027026 155040265 667811460 483594662 651469494 272825868 309325454 121192415 874334168 725480187 962343956 899894653 978789811 792434298 945814145 317147893 905803297 710613172 989717928 578072986 763622724 689396032 966129979 744299209 896896778 764389770 892598430 924929444 948965855 511224119 841073046 691371847 818596909 456068084 695623695 331234282 819634137 119211021 305123262 659082567 689413970 479507912 916922274 900406160 981776511 472176680 914105412 590025530 995869566 506062189 894423134 613213026 961653058 280585352 780291397 673987330 982773444 791402906 893167618 772010935 953910334 452075597 891742944 35166223 691601667 64160784 291793260 894492604 984315633 525110166 925937610 242484409 672320247 810433855 988443046 692266545 777785064 239364319 390307452 668971897 928497370 736005805 771171830 217597825 611704516 406291518 593411606 372408764 707173586 490524550 662867685 450683989 650085971 768361432 773531681 502577601 663469363 622949079 989992150 28440516 124372986 7206829 21666418 177487037 344138998 826562615 831874434 90455128 277193617 185588570 764857081 311639359 455701357 17357913 498222574 478734827 655631453 163905637 772564686 97999934 392594545 756393662 861344467 388858159 536299328 898070835 960109586 675578667 816354962 827198061 967259331 553958940 582121679 267402903 472530870 898211028 939780106 315400798 811322146 154981814 933131657 658532578 676125579 739055502 964101541 257443264 988261785 921224241 954480168 49885097 800886052 918503590 975623598 112897549 981064871 46065128 600922857 490631880 651297467 684189713 936915655 63677239 535216666 639003175 963579478 743980710 930074030 594342973 920961944 724796263 950842843 9192597 633444624 953174773 973599630 785600631 950272377 631183479 871055674 96411641 559060635 95450193 633732523 50857465 993549854 440452494 703633730 193918092 918191981 729969672 849706694 845770518 880370241 754865817 910254367 15540905 795806054 810612202 897265854 179824849 927116098 878219440 915929018 504498903 716409005 701617610 972240099 223902687 276971412 727052743 752710412 101409276 129815927 319942091 852336709 446480384 838882185 32570446 973605170 324418855 669297042 69050257 526006439 923987455 930169443 972780984 981832891 500744545 615680353 398228460 430659248 974365259 988496238 689425868 946821543 469215204 646195792 642761888 867026617 165294160 865077809 475292222 523066461 349552333 996733324 38873508 260675164 911846847 948411950 297708350 328092070 843328697 895882704 32540767 824594126 731989165 865854260 65007474 561405955 751370818 786665538 575940045 738539806 357618783 927045835 154717736 616848942 697277230 773726664 898865798 970820656 331770478 344486484 19063475 104304923 677332939 909469967 566848351 669607095 504103459 528163149 825927014 916531359 828458526 841032222 992738193 998446882 792553595 824786071 115570514 222310700 611882502 654483905 615667261 898592811 307593270 739855363 422928263 803860789 753924406 824624195 985470100 987580688 446299889 621043969 974742549 999597723 283941260 464612644 171141029 505671210 830184456 961378759 50996167 198615779 217233407 334682478 626838015 645962081 950226387 978117899 903431427 908339169 916569779 967886270 75517732 950806874 665606888 830461852 283669319 581632805 356922469 511610662 700279370 842534021 67930107 685809274 88015177 790575309 622112202 815596675 433057409 770417751 622318072 959520327 995778402 999041400 347118930 811113794 576473480 787679474 638910381 942503762 803386054 858656361 726870843 755606902 544151904 877741098 822185023 945699859 209582616 663086411 918387431 975878478 71274921 725220504 103462931 346608810 319822427 585109170 536390683 825053578 275284561 746881207 69257259 149090654 924685454 934286244 644629829 664742565 713531966 977446358 637699353 789613555 513773082 636136557 758197351 839203590 181623793 628568883 409155091 455218583 565646871 722236048 889158101 893504004 433069445 660006808 332788325 941603077 445944726 872323786 552217830 782425328 772045018 866387099 394494466 427197717 530327192 857310301 321407411 937832284 295369590 784443153 146385046 628937993 394015140 798127402 2186092 579751359 468419305 970932150 825437471 904195176 112590312 921508685 8577357 874092032 813862666 979697486 673640956 795692992 530579230 613773069 956317561 995970212 347835490 544257087 188126611 503504832 859055868 979474871 868050491 996843923 270598346 486225442 980841658 998148127 809950429 990014869 84891829 400354455 84576169 163772147 605961272 803040481 785676651 973178399 319227357 637938456 515754337 615985367 620463216 964083021 601436097 904166830 70139491 725418639 739717305 883029870 270664197 370777541 694005657 960239836 506103908 965482721 726692205 872312584 666189045 680727620 336085286 759597511 934241016 987969282 735174536 885474112 478808175 729800649 381684925 565635534 204877964 379433167 262289071 289302368 532333796 793604358 725267195 828247987 627875533 992984764 6032568 890955557 701602971 777506120 914669460 970713433 646264258 739710123 838470079 897961589 727922445 873544344 980586311 990477801 832813908 838013146 888167010 957867000 108945838 430816172 847651743 955942629 904750608 982482202 955738408 962836873 526868917 868916962 753951077 987785904 267060642 710438415 215676987 880933467 415247082 837064332 997682119 998692409 221185653 470610361 50834533 243651210 415061409 639861463 190638884 403625496 444509824 564222949 775226326 971424535 47216721 59764233 2357865 912656005 505132172 510481768 801990720 814217089 577157894 830804236 690408749 710118093 697698301 764551600 631047547 673021357 50220655 224450182 369739412 864703363 355415585 923651365 223365983 669005891 811853889 986715433 351148308 749918537 598608763 876475274 447627127 833749803 380658018 703033004 99285644 978799842 86949810 519669175 254630670 857625028 653784437 972980837 168481319 299311382 820813560 896237795 75873099 624743583 768181761 788111411 330768229 690319357 581227914 911742179 912899760 985546873 92525132 530316488 672226478 783139917 378809302 592373353 390170233 679946277 869475187 953595574 965678343 969122596 828683716 970157066 516424838 772447670 543568671 891541398 946165255 967254283 893215375 993685663 436843077 500576100 295533981 748846311 805536934 978429800 569643335 839452467 584798616 983578696 618979443 644617059 41761811 204357174 420828428 495038516 504898278 841496577 356847250 943720958 405247863 763120839 42576094 159059748 620439775 838187764 193218193 957729318 433350044 486075794 812097042 861076940 920190030 956987038 986269588 996358039 835212685 905096335 143751413 842975140 952515 740979777 983421888 995388427 449902846 715568597 311037057 407942890 593782496 779659804 927531228 950632787 458564529 880516419 474771570 516556071 597285109 609157816 294209101 879054949 143089301 939642604 600601524 700526973 542327419 944681813 73496219 501993636 100986808 862134637 29688539 142867962 775916749 831084467 227584462 481159883 969168956 994091896 614442236 853471221 629724563 767704512 814702435 920423388 233729974 395998338 31232672 322268633 269022184 538096232 72741321 170780061 472096740 504441209 123291990 719985193 682339606 972988145 203679493 270287996 106415864 297291422 697122426 897425719 57015040 459858230 148012754 651076495 87392175 982639648 524244293 613509836 157545630 698504773 626615455 884171062 207227887 778860661 39932267 292997187 833011280 879169160 560500578 846037561 580480096 726705298 395029362 539221580 848853419 969027822 31758477 483144187 239061731 542402262 202362958 665070350 498116525 506747456 3111474 328011169 276218041 945064114 668770408 975127541 974315671 998327000 136933267 797881902 833791265 834214076 917506754 995545971 605193893 717191973 594709483 826510800 277219694 650159329 972008061 983729778 781711650 869161753 871838333 918193548 163430376 174029689 895580552 988164231 367234816 457671866 516377963 592932674 467607873 562883477 952788751 958772744 174066481 805058652 890457177 995959214 640897780 942673524 222173015 735124812 358458876 805057335 601871465 911614680 824103282 834564822 234399989 834329940 1364257 470539303 9116332 727434990 568581374 974360360 126319665 798607886 790350329 965062836 555850483 576634178 100403677 110683994 187840912 794511439 406380694 732724629 971465912 987533383 696519114 712387872 220250701 399366989 58525056 431633839 155391097 174245207 620558944 828831906 628664084 730308510 29805203 159940556 394627462 903952212 14428346 187174705 640275442 959236987 658430188 677280044 345325878 565153021 400078169 452625341 737610520 802884476 410111624 558778659 968631796 982540217 62785123 577516742 15066797 380485387 919574075 953453033 734142062 862199537 355133322 911003110 711318223 751294345 246111323 497309547 244350316 397704163 334982879 765662150 245138367 765417861 599937291 736148670 124166941 554626511 373052820 425412651 108898705 912492350 229738422 544518570 971159526 993018201 512858917 955603137 919809393 934888485 18954716 609882306 263104946 995195602 596182040 724145237 166196771 935720654 143254086 213101656 147202006 891756353 516996540 884331779 997655476 998793543 3149644 774561900 960517880 970991301 757982450 822942027 775065369 989328887 572708414 937424909 515458392 563342737 975802861 988124908 472262374 892671570 924951458 932070670 332220941 381674402 540718 432912539 150988127 780014448 873721540 893783102 983074869 989756722 200281701 745224675 585811235 955589500 765627474 768382810 312821391 881932611 650689603 951129358 776351599 802166822 277833252 499441935 133618862 682651636 190800912 508789899 481889264 746151540 651611522 808439663 4287657 278213849 634387549 852742963 780499029 824938636 805862407 932293128 284916189 950366256 830231100 973698240 327085854 692860255 92012526 774955489 375558168 482608509 923486204 935058808 324224806 837055036 765495828 768396116 230589055 548294050 25637260 181373424 590485162 701909197 336764942 789027503 504590481 940675616 366140761 780949192 20362528 688635186 659504065 782339966 279575384 722472503 312975499 943663820 821316142 829379507 18714412 642518826 968572250 982891213 702847136 858045539 733011097 800820912 787298130 920694196 414457637 732543861 972346329 994998405 953636627 999046573 764755261 850965425 557205772 858524098 464761263 803834274 113135281 449632967 336787495 870257136 304833605 843439403 877086350 903632719 954968614 958255903 344060072 596967047 541870669 701771008 79862682 150106648 588850354 696750187 418608687 994323300 783057668 803381077 400392395 711770782 599000613 675507427 446937851 703967857 635402970 869709046 689649771 906120047 398390024 697161095 115439873 311552013 627016537 968679858 271395229 914989774 747315328 823558069 537684907 622117683 818436799 866341219 529699716 845669592 280753829 411584436 69773778 146088677 111384997 993730226 251955083 349446960 204310615 591955741 949597888 970797139 215800229 351216855 706230198 862924029 736142677 818404879 496219659 905939715 874281281 961307672 308267981 567195469 390488619 429079021 127249807 298970659 471244194 970138850 384441920 903226234 437228967 721977731 656620964 978769819 26064012 270020526 89192647 105287973 915316752 940052343 682988512 986821757 792843814 871355844 202622617 577333302 198768108 292335109 923235632 996808121 552540902 871302168 281114854 716954338 64877830 391169536 832134864 861154670 984922323 989947308 233862924 772006289 527402285 655351509 289790541 580030792 988697132 999050735 990536112 996938425 81141396 497514801 355192212 704234009 402886904 419432183 535938182 735565320 174879207 760156511 683317993 881028509 116111580 386823469 865685536 892271807 586401532 715079458 337714725 629922319 371833043 489512310 278433347 878933603 182926023 874117848 124385435 725462981 279803434 561483308 270199322 314978472 449099573 799979892 716392077 895948223 454848573 942456249 289637891 616922043 372416499 442825651 649413935 854495161 482906420 985365956 174950833 879957331 703001014 711561733 226187748 758208310 296036276 977075066 630336894 686041947 942254079 984720697 285405130 381513088 192151499 952730543 303895492 608683997 324227530 395062580 901627138 975938348 868431405 957326030 503541263 618028243 675958463 905930662 552207316 599747533 583714465 983477486 60959964 934624157 968712327 984082657 387105599 967575390 201608701 689786206 941258519 977926227 696185700 990487094 478244057 901931829 435814040 883925482 650275382 830571214 312818177 905224165 503824855 926914601 905890944 917960186 598773986 992824258 578320229 840969307 660169592 732074687 569713280 919313505 111712669 829790899 345702824 648259540 486761737 921155987 83853345 566913629 830427135 834659176 963461640 969272361 872546273 894870015 876941907 993096540 957699927 983122981 592034208 666044672 588891257 633862462 461456331 988181826 759762059 846205570 857863390 882485578 56679497 95810587 898128389 959400644 820243419 886988794 418059773 650139559 383869125 531285544 198991917 199315931 400202087 492606961 409678745 915079688 793748638 850905595 222132526 463424484 148821985 364830238 992905943 995754390 41945164 426683363 265812951 875135917 912551370 927742584 204179616 392197227 335640555 728402080 766139850 957950022 590521804 592073345 169991128 265541670 367851515 743056362 705678797 860564052 772271178 855709908 61495167 812883442 136342281 139703187 860915480 932101304 613830770 834657910 668637164 832615374 501630640 522885651 36873224 882521637 784873179 827849595 960029090 987417101 187184549 989516970 150979607 215732232 894208051 995722411 488856074 668899915 506668303 562069772 448986058 653483310 939821499 943018148 914379133 988501746 835426605 872494865 445458025 874911322 320625905 934411860 519228709 883223974 15654445 879124446 346193499 519521353 760775671 831771447 397771761 942338994 294043572 857538083 554094002 739648235 69444225 124134560 435013083 600897207 605940834 719704753 623995915 735048528 173688235 986290662 881793220 902594347 120248157 310750718 720085753 771347001 839812814 966435975 681811439 794723123 296080481 974140700 398513909 794571702 576373642 796827663 455466575 921631587 542674896 733006442 904594074 919915033 488500851 514449853 191925547 556694484 124456499 699090210 48154254 59079337 889487058 995240726 721472976 995947582 553312778 578512260 431634323 560220266 173759511 494013406 711491898 803030623 829666137 949023870 774965974 968511211 568862461 825879369 800931778 884222341 880814785 951299528 296370988 646562428 54206157 737342317 795403336 889766508 4520214 428994841 132535928 551976155 666270367 951071752 116751540 905460884 461949781 998881582 644977879 763507722 114181247 222642599 434945342 892254642 972731445 993152273 545813693 946027890 232723429 246231446 105391628 316415169 502479447 528290838 642385152 980674283 960673447 981164181 4171490 989443938 976908579 983215299 930164348 939656840 276193271 899170684 648632352 766407112 678523069 687708497 7351955 821188713 332236650 933295668 201880801 499878021 100027552 117544488 368074545 398340278 49006494 790226369 27467268 920085479 79589779 192652869 351332006 786596060 970894739 993858640 843313499 945118253 113160347 293921846 24362984 349813359 664001758 715397678 301933134 565838343 415487368 905537268 804091022 973417870 233612665 973593488 266120298 353329634 133440936 347075072 200623522 895331264 826868561 989177575 3026020 933163494 490419305 980877113 454627050 807330674 424960219 534707953 790033141 834085157 564409887 583816213 710459045 855017306 491610609 989885382 128871263 987137603 558549025 929857287 30790654 187650400 546598431 655337894 391095281 676466747 851422087 889009822 677406955 703090251 562467811 834947136 744162476 911629056 116073388 402902575 339429176 777829592 777880435 878006266 975367489 989249938 99722488 129708459 251746335 267624906 948299210 987062795 434838526 964644096 889071603 944591673 773378135 891654198 380205384 893718921 198090005 555059143 433442574 459441780 256358207 585617562 885949687 948403432 853212924 978660694 742058147 853179207 624677576 763163888 125069747 570085537 802043139 804123916 451144052 750377045 8993024 403992204 860975523 909747004 136939038 241650626 661252306 873691747 559382242 826270155 102178149 522833915 318811106 911218325 313062572 976384466 364461615 688518536 29217977 675555234 882832660 902669945 771716072 796396542 759104925 837698776 972638901 989727257 661079817 764081539 394913435 762221109 664829508 815273127 312779353 663486764 371488741 855743672 58819712 129560174 344361842 897849632 946622970 950340553 99861600 587483495 695423187 979468364 957799260 981101282 614837119 764858906 301920537 483707018 472259202 500452190 359186888 637175545 382140797 941382205 307101785 508420999 518820957 835184587 883480831 979857098 118858849 304149840 27704091 578714657 927797121 961342202 430357302 949935055 744688847 939789031 676333743 695546833 378445792 720614906 379150001 872117409 541245934 693737666 328641933 443857385 862076644 943706995 842306560 911826660 934543803 957363744 547771682 944418051 504571727 733973282 358672408 954920205 700198561 914866116 371221476 797460982 641321818 743900238 241681969 708173574 127253375 728367809 406622915 434339060 988402182 996487097 374090461 894299523 831049265 875082726 509018526 576461053 472231909 554066931 871454114 905827021 784213659 950821986 753292244 846089933 772837975 789297629 773660789 980588930 530091528 553314977 629288456 684442710 465785116 745917923 739475565 965254448 994032042 996693234 402730164 675217102 383464405 783976303 423017001 612994030 770849941 807695641 860973371 941765775 252711667 753156778 386031487 695093131 605958597 675929411 255091262 579435565 710348123 946704034 699623822 975944068 169246759 207871078 81359856 527772292 359827560 399551042 308695329 746653496 8440951 305641642 33452533 778938536 319155283 851384745 281003523 601583516 909654131 931224785 10593468 708449323 613743123 701473888 732126336 948974708 860182571 903107881 93360460 942334055 381022435 969934128 336490094 804051708 659189099 927091693 800678344 894909942 232865745 755837921 954962835 990525813 574352476 896378154 555903318 638987933 86728542 104499226 302137064 819402122 139241829 188312446 273541980 759307141 758572690 839162451 393563625 999009973 894903540 924934241 191004592 833894049 231801960 825223867 968028783 984630132 691766568 920438236 159816012 450082912 3619466 465804065 496164474 841161046 570186441 733645605 748617550 856103643 277382708 559258091 489611545 598740219 300262051 569805954 11370646 747183095 704667360 847308289 432873101 927165080 978519351 983370230 154726266 686506819 633097486 694661722 144898069 695011794 55361840 848560665 541399107 951867150 588104993 803174505 202841610 456494520 846932448 926888204 977136144 979182338 640102285 728255352 571118037 661925584 527530457 892873032 256659018 286851625 784723854 868404347 371909695 936785973 669788338 816523963 205966045 342576672 364846637 803080882 320549106 738853892 998000261 999601528 633486480 906155398 71277914 384589212 274341910 823196943 640847802 792227136 933405716 952286348 942676652 959924977 630824206 693976718 126620699 284995220 102104243 521587913 70389238 226964131 842284360 987639212 90440301 422835675 797161740 837488846 937672120 990053514 840260962 893939057 70704755 854996316 392557280 527079810 225408679 879296365 376158775 863225153 127627743 459892754 723587273 971351258 216937862 607612541 477748260 484473454 45731500 801974875 353145606 439777691 114446831 751551062 149274917 917222419 560706516 805465930 244090058 805533925 738008847 762860078 194322663 913906414 445551348 500470213 78948577 692955999 482228017 849794221 446568986 880373969 548939176 629090173 945024939 971936399 815045922 829990515 384655304 601248235 424424010 534731683 367981223 845802299 100636894 723146490 288209498 634726555 848345874 902969977 245099134 258787820 509893743 526610073 389059914 864039737 57782487 61099424 844569723 864335730 11042101 662357966 813521419 889162804 868648466 961771417 206089369 696110118 942578432 986695453 714297492 851580897 88013750 519492404 594501815 904935606 469728235 785276293 948108982 957028751 25005652 285557854 73910376 258953338 100930915 674294598 919016428 979398016 542210319 814258086 165428780 569437838 312289367 575827415 297908731 653432295 217070125 428845244 768997495 770094923 761542267 928622871 106197757 537891828 402906872 944962444 554125795 721958827 338479181 886070568 136729883 969190528 525036072 633916860 648508658 749979659 248277045 281598763 37450010 282231316 736505878 938548378 966423952 997204834 662678975 938793596 635251964 806018870 985033109 999915976 84795941 258452161 746750677 816125404 978187165 994463659 861784647 947860598 133325677 840245019 806531138 999773396 213289683 866633808 543582894 799669148 505675353 984294550 900144646 982125667 856682269 857713991 34744400 89249273 987364 800112667 757588249 950663004 159348862 813342961 45272067 903861057 415846921 841387190 756007723 904718113 671133506 899085786 257773610 778623532 804321417 875371026 229755679 652664283 614423514 658803820 698355881 932771863 299936626 740072708 578839294 899030357 299839322 728670284 149500712 921344761 758882130 961023462 157783975 703981396 907267077 946701125 930994608 969804453 150774222 274712361 350795504 578315822 746124006 807579499 939192713 951175637 265874719 710413150 926585546 996540968 849359790 976918355 621220576 707400704 254399011 441272665 41734243 816789680 192874873 792432605 332712418 586755214 696793549 791372764 59079232 901104734 931317588 969766477 887446169 926001109 525147087 832656232 614562967 737646241 96772919 549471731 753357801 871160886 897230975 971043260 28918046 719662753 119485115 406690572 725405562 819778222 860915261 952962688 193997723 628673366 131030027 297042312 280078962 898654737 177940575 616077705 319159964 976513912 350929214 701321667 800068905 924459791 625545620 909385609 878721246 897091100 796980883 950214551 558834236 804078136 949783519 958812221 20269722 559956544 481664428 811082677 474134132 477846757 984989220 985167043 672712104 765495020 740709372 815709210 248948500 805872379 632626747 825713004 440140224 993057715 41787746 327181713 800861083 866942906 722586858 735171554 848355113 972964184 278963722 500217697 723073313 946975287 311773904 790090734 236226612 632062603 184847440 497235363 348183950 873759647 10293115 62284746 65044848 620011660 967757736 980262535 611496206 927090983 623931032 649682332 619356140 645418947 574710890 586830241 852732464 876654514 209199810 482701356 159213777 680837599 986989202 990097478 963727398 995373281 241246504 441213294 658974508 792999865 17365422 975529535 17550292 776448672 991724635 995041221 771189911 983998963 656799455 983360057 298281249 817025193 814356120 897167773 258551219 824354638 3145501 488955971 632081999 945112778 457327970 894966829 247973960 896287344 190992186 439278152 632550286 680586377 503598655 900092696 208373378 752741718 120090855 551826485 822572023 992592598 81746936 135485729 513910104 604281374 268816085 286949459 421627049 953419821 455069984 840717288 37138229 455917002 279546427 516369962 651649563 925231029 726688300 899613800 498102958 557094879 285328733 635351446 843294132 907318933 351973373 987251918 669461181 822639560 723496661 838418174 326687982 832880157 105437706 845686140 17908134 490018978 584365246 665011509 478459168 749555960 611636406 815968374 555989724 841550768 287021648 612545473 477731469 572539409 879977940 936677962 413166765 504245815 72151662 399689444 815779395 878324839 630115338 653982973 178899276 271423617 468316938 605596747 671882072 923397994 432381387 560264749 148323870 736762085 156785077 360903529 469655243 761648442 551082254 968900787 675661041 781425740 779511472 911883841 47505096 587325946 819396180 819415014 631284644 855793462 661113097 734696754 561176082 965268021 876766283 923480232 826123463 914950019 824824046 929761902 558183871 576470885 577885983 704816374 22396697 639638170 564268468 754776719 455330916 678252935 336330373 425522623 700678277 906874748 376177165 882661893 221544945 708060517 272335819 614067504 436791368 678658073 894360818 959159140 428210529 428610375 672513684 916642419 422150466 619006539 885948616 966029809 920089578 928278783 769768756 967614770 630145611 921383377 715929534 782020842 876856146 900101832 557391359 853700736 858824542 884018832 265988324 519914705 145735726 615364082 266840717 502796122 615563493 912565630 939490794 959790865 81377522 672559908 404867732 413794352 940812797 972744025 974037530 989395675 409833845 875110580 799749274 978247306 168916836 926325208 557723999 891667218 656175243 816940972 79423663 270225867 614033920 958855812 175085831 621792379 692618042 875315592 963074455 966670353 424248293 433985035 361032965 985838368 988870487 999413020 870039478 951925354 134069660 424043674 146178194 527177752 709104707 760637452 106521764 741836052 226037047 730378214 803149702 975143852 484576621 563355808 519957599 844669819 589668436 686187615 704644894 754527854 225974433 227776540 310201274 360094049 362905468 668979101 200107316 547948039 75030246 960439937 189237860 840760833 517672394 689375307 204124762 223866900 638109156 755016370 877336237 973284511 84524865 708295684 496004734 604837586 167953968 217124393 412225809 763134803 366143819 744763661 70950043 717147590 575629565 689879646 758226523 867357253 212673646 951196706 209776405 241365202 214309720 642547073 879026002 913176921 671963337 761304506 381127495 918357249 852850420 929313965 835997592 849584033 440610260 807538486 327159992 405398110 582922578 862389759 443748888 805904765 54345264 422715207 592951684 914515499 337769096 773921776 424848496 808990629 169030495 181547045 596134721 863969213 549290557 954108579 784057619 906783199 450830818 812536672 889424013 957222720 170342443 171421147 242146553 873680777 461982395 785441378 220465899 489919098 930711946 935117517 694097847 872038188 807729656 931274567 232379999 365328678 583549978 748487475 364202514 722818535 999638699 999905918 359732281 673698637 767715702 786740592 464470716 580679737 54408583 593075514 305259750 636109676 246494953 828096035 307966187 806438433 847567592 942664718 942821347 996199618 248039161 889442134 365027826 428806906 115861409 670851746 65804901 140740217 821960832 946392432 79066351 117401634 851142454 990976511 757058195 935709788 13109705 993016313 758155571 936132430 972965423 984299203 898445463 950783940 565854104 807420766 961411916 971038702 886174044 978742437 330611191 964936091 83571456 951458453 972959158 989872633 878257771 890843384 88699913 806620950 395232800 403528739 260762628 632066192 112125891 532173465 610084916 680019454 381474768 883488644 619969272 886195613 936433937 964739262 902400627 902727427 297771822 998309582 305036960 942398556 498642045 605008486 785145152 892052626 215054189 719711136 553833992 819098180 735256894 757664952 82471398 671346408 889553706 959878676 372526488 612608004 285078348 300308538 984176718 988779334 707111636 901000875 422556081 610912492 579321542 797516366 708717262 892969394 118891395 950137554 632707716 754611364 878081336 951287867 948035312 975428032 785615629 935869453 383715646 982434327 734934242 776362406 559030232 629018198 516664482 581769729 261511537 414314383 1010370 551899816 273735521 347596563 542482446 756167936 549107110 776755828 619123023 859182316 665247779 931093719 846922358 864349889 505665536 648801179 670371590 777431932 12339893 60485598 920658495 937966561 551366327 828613599 250338376 252093294 890834329 898785001 798424938 895462801 22154472 400646194 239675252 863032106 843687815 903925113 388115473 664220574 621517900 871791358 895097135 983271664 439859020 773924890 517307306 851017495 507275108 667326913 145291869 405927744 681658811 960535488 988848893 996765736 588702535 986371621 208001212 980062618 416880214 435650240 147709591 807869314 208638736 958023956 598864747 915545605 545648811 777728609 571159202 875521031 608068859 661033886 690840222 952906816 521384651 535333479 227542106 442671263 318738417 366983881 584188285 655541847 535896737 698954367 836396059 888035693 885291589 966456196 845348862 961577876 619344837 674049954 219302180 849660022 783697131 983130982 635279763 678807195 359636868 505076859 201835127 877124150 873428042 907548740 698313097 902355192 844691610 934572851 504343792 509527509 422123543 932288720 302529628 823612166 195711194 663836189 609780899 928259285 832633036 909663746 609527918 832340042 75674248 834494765 532309396 980914523 454944488 682360577 163333010 969430184 596935451 920748618 866624571 910949251 372987594 430389567 21324682 143976353 884586445 902060689 948252595 955832443 652254054 954156251 996261404 996931214 738347007 856917100 872407612 957557865 83817342 626620469 769753905 947580797 919835170 969756286 521973062 764436327 860388365 934148191 409101060 884693904 471055976 846498354 425224176 710841517 561635196 915411739 372315390 747772160 661471014 926461990 620365986 921413846 171402033 805326400 488515459 937060473 605130181 847955245 908687592 954084118 114936376 285266070 119568208 579873856 441135703 474759204 881879983 898034230 911336652 915321412 645013933 968812459 939950404 974363625 214393466 869626567 864641625 949760105 292584314 889595462 640821737 769625818 450323672 855726143 386116434 486512045 699231680 953114145 148333290 443746051 949206424 953287271 388050997 658722751 474710010 994104805 661410857 677461591 599392707 912315093 400897995 914130212 176153281 787945711 864515602 956940652 205415168 584252483 296358589 362466426 968762433 994554168 517542123 908987033 901832753 974836465 404395077 428549673 564002791 756053321 314325901 499440751 715884416 909649871 480659583 796391152 377826052 855188988 21728815 67493216 910451423 969586822 445254861 509990630 315224712 604396353 223652388 918006615 775795429 825686876 144509975 171169554 561319468 897446286 97751482 936816790 684346636 783302918 985327211 997532295 899487018 996641722 578446858 590182872 598902409 729425541 74806958 135948614 917290817 964112933 597681234 635792785 619785410 797091515 119163215 381151102 251151767 563939497 353016327 426380427 293504970 309225696 416739391 925062969 681769947 881556225 993548659 995777243 85102013 448789438 377306769 751321805 282424749 848021390 978696912 998952860 255051111 393106345 498546801 531959413 500942379 898514622 570237161 961136127 973147616 975072596 876381092 952196883 243139483 594466747 106052334 243575485 146576802 149834937 319278248 841280755 609577122 894732837 143946221 596884840 201016282 737699818 710936772 753524218 518713846 653341606 737963667 766609663 257697506 640629653 800068209 983123696 27876097 401362291 868582456 883421387 315805568 678538531 430181374 701942445 313060026 973110366 936394203 969866530 494737370 816314520 546830663 856831129 187150700 642398524 830236289 980406344 35091666 799684460 863413545 889543535 636475792 822744457 635239128 784783586 569629319 807090386 643418780 810010996 897872449 919395681 212524655 340646429 841620910 881125808 555658474 613721070 994817419 998050794 998962819 999600361 873358001 949677003 998780997 999109010 102712404 227296015 345216930 370034080 560647328 717873630 771042176 966490224 449303620 808537615 845283349 885999148 770944736 810286128 264472885 427393608 930594864 973916088 864846600 901091546 137286514 604432472 638593116 801500368 571386427 648060889 369408131 445298801 662887716 776974579 203737163 759732082 983715498 986498251 833007455 995728179 911136675 944028847 88286532 607545440 866952325 995218670 91572618 987910699 162446037 876389245 70095255 890691155 139652637 660708507 516960031 982990757 726407316 895678167 234350081 359918501 784853829 928154695 728001746 747521886 9213830 419735995 7880082 351117838 612096782 811734352 673934153 820862243 416727398 981805142 927799866 975474649 183436214 546407663 263965305 997632229 356134842 542465037 381285264 606373691 660287863 775073117 795371981 923155918 911941815 922518906 709318679 928162699 639151023 894138202 10414058 922885569 12443490 839766276 419900578 979468239 410278996 957093280 302847895 695160797 138957013 936615398 51209972 998394642 237762793 909862231 247437463 247740900 280210286 303442190 273887266 891296263 910700342 912296879 681693452 832143701 972134940 981253224 448398336 978613767 419924793 904503088 104732980 770677150 139844679 639742475 831259511 895807401 468439045 659517782 253242500 470726215 246609049 487197228 452421657 827418416 242108012 470364005 76075350 139292766 544705738 656315976 649620303 879831055 692061245 841613702 661899059 759553811 116173336 897293837 804349993 898456643 823162202 985765592 588983027 916785094 709764949 909274101 120895734 390201408 928774669 982174421 474572865 605502069 646905772 706156872 587652230 936025068 485107243 714511674 292896892 916832397 674446579 689461691 262960667 840658785 302614172 675586478 47520381 99199287 603370126 971094884 996078693 996234235 361579942 655798396 912140664 973067715 932599634 956215226 424768891 976319607 958815530 974556698 412992204 554039283 850386279 953665316 663394867 823335136 459336489 881550622 336554816 644679229 544117461 676137643 314842032 829022703 104977184 274116979 433558070 902080287 255451966 481758957 878939955 954755689 921561058 955179523 362078033 783203157 593661075 878441631 909699314 996849825 551685646 792350408 53428150 292912760 231637265 709291693 394729301 862175331 808089401 903793547 72084649 742535029 365463863 850596212 347014963 462389164 164472581 231806752 660192370 996851779 104952846 646880239 886762275 892963424 461409302 572923506 281290717 935246128 649385330 659229496 627095206 866595827 641819921 718707093 996824940 999200750 7858127 815346490 114357966 364315765 643042802 959761259 182540074 387402881 27942657 685312319 141221326 642983513 236666233 929221898 310838301 566323322 465303229 984056068 108507067 534364451 66054416 132093814 983157456 993092945 758717350 890024572 631835287 883533329 772213260 964394999 911969505 986372360 234690374 960561931 736145733 875462746 404497297 985199809 830410299 844456460 588862743 780702483 623500769 934678572 978096380 980008599 576330295 987942049 591925899 831345575 962967304 968437012 49896206 596086861 869602137 933859937 728802478 764413168 182349499 944360199 91012527 309657384 943560202 961162856 833604055 935976062 829084591 883684206 474956388 619902441 470359067 544815046 931205749 942496279 70236342 879201670 595332892 645308295 358735436 936468427 696268992 876503306 481819320 958419338 971715534 994367364 567468521 673808834 285774831 440065961 296589676 811585047 867416757 886456289 382220505 905335698 738783805 946666348 998176725 999026763 516011214 976508142 34450963 961352588 876846567 918698030 388655766 867194052 242715126 571921462 794798412 914029053 340827183 871448923 141737486 733069202 372468781 531367786 738685064 943904307 654401046 718427630 270920772 606671801 373225322 393229281 757385731 879954043 335203188 584786029 303900079 788147942 752973368 854993389 98228992 733551808 527906097 998107495 126150428 293741903 673838517 824805065 166866172 446168965 68301352 982826407 536197520 856168372 236553057 377187848 685795677 958092246 858516653 912560216 581033308 633823747 305924291 919707058 528719256 833567874 55142179 826572956 15989070 249793981 399465303 859500901 917050917 939596893 277057112 731466655 995759329 997576840 654095951 993169245 947809915 971474251 91531367 835101858 681975325 826530037 512926226 992066518 76469840 123975457 239667507 349967085 647034031 755099689 425845367 991883226 659596851 839029457 441145849 832965539 208465010 657558838 34320354 120044358 443588324 738098233 732280537 839296854 310445323 513801533 140973265 641571188 24067650 104045545 773560474 977105202 984389948 992330793 579473016 704889016 608347606 973917976 153843404 598174049 48853143 241839135 868887383 933833808 515621075 973765241 957920178 967119562 918515652 961832850 864296545 941085610 428065732 763124443 379263649 599121808 162829549 537787438 57145387 219062474 345519094 534308891 546002521 758007211 236815683 439440447 98519685 770555117 692608349 939168009 736569467 794769136 729497979 897114364 986607462 987699085 656940596 705201986 664960884 954974164 247443364 816106859 621294262 862874655 949812699 973403255 964314616 993110232 694717664 771776396 266289281 511617074 272470021 870466319 846912312 962185656 594059347 788778635 805302311 831471941 781051359 989787566 624868903 762341099 143129435 952342311 286698095 997901234 438470993 571224454 11433696 927158808 665282197 669032991 652489523 897842448 15790841 397982656 18720341 208257106 557426514 795938491 657084313 878858829 265786228 468564932 579084457 663071938 970901754 989848164 106213579 472545327 377942702 914469021 215247035 748788871 577287245 708650753 534664144 678310932 172925314 734078008 894682782 970390803 80371499 436990624 320773483 841102123 365619171 569389809 35195587 408147758 965411200 988564441 622473984 959834683 807290804 893844345 327995384 773500991 77592313 471613382 925773132 994208100 35201831 456996487 900383936 919707468 464904657 539590381 386173938 841688591 444963245 571915997 440471474 453951772 220468968 304299590 780492244 909208649 299792223 636045145 258280 804062765 176709613 944623736 620791244 662470889 379610627 673228465 809199067 957749931 314518982 910960256 488120626 803473302 510299797 617311427 526259186 715371376 937327992 938519408 393177496 665840936 342214294 895050590 295651997 815376915 637626646 917964930 541521728 747299459 681860896 852276886 897901156 990003105 207973766 376225801 684485124 914249032 500872553 549975212 112877890 592727564 658434522 753949399 422418951 452101028 561043960 807148110 111355789 373462339 902489862 950325229 624700205 636308876 739373347 765694942 957925282 968326852 15505646 881815721 515423347 597043273 417701023 718522998 398736283 515353941 624988607 960519795 232960347 692326442 623703746 745202690 217619478 719903161 860847493 954716465 406183270 780279484 941423349 944476372 750101629 793952446 329751438 490272674 473954578 574781625 120483515 506847555 323524690 806834850 109403597 690616690 918656483 956498696 831861656 857710393 925103697 970999573 137093078 658771128 985429133 995010911 472901838 611060125 697983283 917451649 89310419 343256024 334225493 487839733 463288673 535920770 44816223 984458757 51716202 811684368 490079612 800904079 518083541 675134448 717938073 750559136 300278263 723318196 830486987 886451999 69729789 395755647 810952477 909756162 855443264 996316439 843168298 876937661 596387810 968825449 108686118 707606337 494218068 793791447 896194436 968823032 854287291 905410071 529024864 949637842 962977111 963749663 33885313 894152384 437741960 775157015 362772487 389240275 798996698 814453708 741968775 988115816 52228036 313796831 927721160 929825279 92238628 587687716 769032148 794874315 888293924 967971202 446769531 552492490 831023286 965123069 454242692 692788015 472005473 809527125 529313033 880333670 381898795 946230223 31290893 425113347 333375673 408959322 713815263 737860711 98508474 804259489 290736433 674099156 806468638 925389068 159268173 448735961 743926152 891792891 607301782 906398790 254102017 855605389 910257208 993973081 212188221 666087542 957422369 967720552 44484641 412454877 746326285 914272854 734650369 829109844 383283813 539964827 789441512 825169776 226551171 762188225 190155636 903052229 198518746 564401971 542761883 581166253 991613442 999251181 328066803 497566152 416252670 674515566 427710679 946452135 30275521 136696972 292184684 846002273 747397283 916751047 875367326 979562488 115934730 152368190 786619934 792375925 739969525 975280211 124229944 494448576 647877543 669684370 973321601 998155040 886058541 990398356 955959324 957093499 504314971 610605928 378515426 520344424 317608415 381165093 386422132 787455032 547468049 948812257 748862950 785203821 98103295 900602453 312081525 687317011 959971350 976289208 935068958 961627245 924719415 973042961 182432615 768309617 63086968 427082208 537872413 969326555 478091289 632745155 282733674 683721861 37643756 141379189 811809474 952993792 672086610 852789082 393012030 876160949 537161752 568984724 400725818 805314611 242971492 676487022 446366527 745763435 731462976 752306194 361679281 932508942 67035547 495820879 807250734 899636767 306705019 402814778 13568270 399388200 235450103 924702212 748046622 775524386 399471332 525236587 39278158 723617241 854936782 956945242 943896322 997910110 134762561 812977804 267724992 448508030 982352567 982859536 734727836 861143319 223679672 323735028 135062426 745286175 524615948 820018464 366441361 431776144 796380777 856982009 903040852 920634144 177189763 893784338 791766480 889760831 346457232 908651842 920957153 925082040 23167018 802983757 435756359 470195491 722992694 951461284 438957090 717193223 699948829 808453960 767361270 980994620 15161258 670189490 505249198 957531187 532581706 863555250 503316455 761544490 212732351 386859136 984829048 987452691 724581276 805789622 494448495 846764716 316514824 759923039 979478936 985772122 234060506 693989899 272521858 696893639 842935615 973641175 337683787 949903467 31273126 510804348 910399522 965289599 357146396 772639274 198280660 535416076 445210920 480601703 891531329 902396024 106106801 416910358 190263514 416473654 820756898 831399925 705054655 830160931 898869769 913970837 108006037 365021035 770993226 846423111 72827489 942026949 237505746 370064618 808746438 884060593 421355163 476522843 196802630 558129503 974154951 995677165 591856258 855103548 491551233 805178292 889289198 907683671 216692409 267274547 846044103 988464682 39690129 724275106 108422567 853466767 445767276 836562917 668172404 837227451 953893614 965550505 611016627 696292527 808278714 848406835 243497359 721616664 28518208 782361038 483743047 741613443 850545508 961167549 329975699 729641088 266750250 927499755 23553589 258017719 309094556 326518701 530822725 877483820 37739376 390009519 539919251 596885827 411461975 952531214 243563583 608716575 407770645 803938542 971174988 978162627 306546134 894889453 944057410 993635085 539314320 577578771 4180726 782841970 209163883 658130474 604062389 683842244 348239636 735035902 81216246 836685956 427931402 889304835 510352467 562350979 932811086 987284875 744213612 971365410 199134410 274571230 350897197 424344528 960782607 973044772 715243502 905510696 224016406 413754643 794001169 900891998 901127247 997850466 872693669 997092401 436932093 681607568 662571288 984666268 984375826 984493240 684546383 754580724 731452355 804315152 187440476 823088624 773789359 926161329 586911934 645142497 456285881 626410684 815895687 843096886 576137089 832257320 837217813 927993074 990972760 991999770 471032490 717196798 522082547 795429389 820716643 853038723 794099026 797768574 961960545 981009091 698781129 890055312 100747992 736876688 976692040 982647015 559815841 870368256 38808110 128087087 640144097 753147998 577358769 756036875 57635787 459002174 123255181 572832399 179626519 331829363 357522915 765822339 774365514 793764706 636470655 972441874 902300288 953204127 220411987 496924543 561158928 563923718 392158440 613054094 830769178 861564797 738599708 781854490 633357455 730205356 146852590 997741047 845647763 877364404 256931131 796209539 188790715 483812385 538586347 875671570 577645686 917291080 932320303 984185449 901399790 903645662 871813754 943965461 908693382 973035457 267171170 720653853 688701507 892708441 610815892 746102754 666765767 804423439 200704485 803304069 150510130 805414428 452957175 460915430 183830909 510879511 145215640 436167949 206594737 304874272 476380598 531171135 136410623 239079196 229709059 684819232 949835973 980540303 620416131 776459859 827726000 838683832 339977247 911945471 102413504 354624080 692661204 745034190 166489922 456498525 923753694 977061552 741317542 834189376 918241054 957362448 42995926 981724006 681506462 987781432 436452299 767436948 307503618 611691386 588642066 637398631 128116730 935969030 747262469 908165951 314399302 671478707 487082570 576313332 276762293 500463938 188225154 945474904 653463513 987608408 402508090 623320753 377175919 876371025 430923533 718949842 837685515 855614027 233576722 738324794 433539742 756682833 409593026 942555335 802455035 853541664 700897211 941858397 169461922 633407798 376382128 817742810 437619892 543182232 613788746 942014989 466581530 835297388 8157422 791791787 708347120 713612055 793479056 897841934 655598155 790269917 240308817 270683186 414662289 723521439 21069311 603862250 742020662 775243487 373411132 395026102 127989011 201137218 825423867 979578455 583760970 637007966 934498805 957834056 228181122 636473091 6474759 168147843 971742118 994616418 28779015 167121879 54108324 302332543 32525095 795078593 903300477 921502566 610411797 926355192 335802393 652278074 852087573 969863874 387351523 438451469 826817194 852837277 575364228 974401516 335183733 941232589 280214621 783939522 897526066 925878015 395067619 901896778 57964672 411362213 77326791 924177056 985949245 989752268 633228623 641024266 111783709 969406801 828873030 903161348 416515959 999745516 808279570 955736965 823653489 845005753 476553564 477888158 984298450 990100256 846130667 982342683 105320901 730847883 220121431 486687284 954115228 958320414 2171286 128597505 195125017 275978632 715551123 935515124 859912049 897499585 578620582 722964525 645687544 966667101 585047752 848478350 388438548 527182247 2394819 377550319 989350620 989744270 432878707 851954553 421276240 652364677 83349954 245171578 612639168 793395641 204557690 857170517 337973629 601739211 324893688 772078566 667565 383063719 484729146 664269494 883566832 952923144 485667682 853934892 916357302 971545522 576912111 691273022 366395352 691582744 6197935 704609405 996695189 997057978 599249781 876465084 572343618 618223586 514386909 813932077 548441322 774098816 842342447 983112738 548738204 783894379 654525382 980727303 669299532 892630068 376174019 438614923 168147694 513216559 113882334 992372135 906210484 935121255 165993806 482396038 526811407 734316974 572658509 749656933 547598071 570626107 945619330 983509233 513532 822386049 333900377 425015712 865527010 897268654 434779790 764554748 310596454 311196031 259407591 927698208 728103079 776980992 459264484 692729446 877062888 938614018 931843658 943482619 82333571 787055658 66982749 445743653 752820328 867498927 442902602 564565516 957496436 976241656 143589588 343993597 927645421 949793100 513322377 704283240 966407750 983941388 291166934 726705814 531183707 906012122 273948540 481865235 21471703 101577339 241909375 267199103 835956470 984339252 215341185 843695452 98134342 288256016 101669532 671327105 800626060 883565390 73526581 974561506 697920214 850101986 759444079 763524986 550829745 977887995 275679796 501931147 380876492 561296124 696087773 988256404 522099363 666257298 910678119 999116789 641693060 669653043 956830383 961989400 358069335 682693143 531542473 886075611 984944952 996353550 444787127 753809886 116397191 308370299 906664780 907098639 648645941 753199305 550841725 628950979 12385146 356834123 426853499 747089421 245099285 285776075 540435036 648284737 838740017 959437445 640678532 867873738 906391184 917979292 814191891 875608648 599514635 812124863 896827187 928890203 343519684 514537483 536907241 902496849 686783507 949481487 862526429 878216418 675355654 790950640 808243731 830973253 679545434 863833714 538197808 970586260 511891859 614836911 635244367 852994686 832146062 889083583 480646866 647291701 113281651 217118953 553462192 829800668 838951907 859686159 883108465 910853348 231948590 721581307 609069688 744776621 173566183 925063807 283290357 553462766 872907705 918708350 700014533 952427110 462973486 641483457 605031696 650536960 782480846 969958732 661028189 822786502 983573008 993317216 664033781 897369068 263750051 654277445 701460994 814668589 843283812 995454010 742945654 846768445 739363702 814512959 401812653 478651214 358281626 888192382 122152014 815733608 592728277 805103893 355837905 863645166 932435243 938402823 420142494 711693159 976929392 992350110 887476734 942962573 735231105 923548281 104287983 998478361 166748570 737542784 745963358 854149137 421835090 662436017 397108886 675559970 907253080 935742180 984038466 996111061 544181164 918771285 196768018 447746277 173359360 883361439 641773148 783011159 224055102 909919120 690849818 965132634 505521932 614701190 709840315 920439710 100492314 125672784 335458958 959826483 356539146 759604408 814052744 982531592 19087475 649332319 859379465 962829707 882460086 897105173 562075719 810293702 665976243 879506519 921962536 936335903 134659368 690656256 77549274 471853100 121741356 996774512 688882429 819952124 251610066 615904762 654329116 903599066 750340855 761144612 316017671 867555854 8770230 85550854 27495595 977245555 823370568 919022130 764174511 931559121 473326010 524741658 331748622 452259295 165803947 333390677 754796285 816963013 519416895 718627127 643547411 726864093 553959860 748631301 714052572 898185620 502660129 663986346 991848755 999071988 509515686 520612554 896265206 988809887 388905117 763329105 541442528 715643378 457340295 605302219 589168365 725438817 814471052 844078180 37182146 374178606 309894699 377793415 601520549 602063541 781309011 887224376 984632614 989929286 19325279 580485233 104233877 281273437 551623368 585842139 918368451 953586432 544005607 767476934 954265073 968199140 844516662 907194023 28114428 227540148 107039824 180385308 254825211 647747593 229008342 575387869 694928964 828558239 795992956 822053677 328743938 481623508 410322138 574943778 698315609 886400630 689355951 941395727 258998840 353695825 292909831 681510856 466834196 531011729 556380583 710137581 710000498 883722595 181456452 654561492 206977400 537417040 496131668 608633694 557759410 587871702 331248595 508341907 573336289 868504604 504001012 726930148 556689728 692157757 125413823 197930311 699923920 709797290 319953842 341278318 328572756 749013880 144135394 461087615 254215414 880452385 674789225 935184132 820407130 997399944 844321832 933663816 129774914 527641636 769077084 797886666 618387023 710461382 824578813 903252319 460883787 668992499 361609196 867608145 951938974 992840997 958005825 986983572 121606681 902986670 723555795 877702755 983397941 991438685 747939721 862282227 483392261 738779022 902733897 959971017 172636807 676144105 903978924 932039670 297148605 681285235 882314237 946989409 885862132 958275791 958566235 999743058 457330562 634019280 287462093 928756760 532401324 825843304 832345885 942462405 198949374 738616429 530981893 579490474 155382507 333504721 662588351 735071371 49261773 142398784 445162226 894413837 670118713 825506420 537187384 549487400 678299833 780232015 640964029 821428879 211774168 999267458 593335371 665685845 224404036 763111250 429259326 840736639 347803847 557659433 653963608 962570124 810172217 829928620 730337376 753724710 164700416 379216438 589975972 930193343 700529100 905785983 767830408 880012185 329702163 945280393 519920424 873632631 584175137 990948609 171171898 577890727 193461880 684556512 348703787 475198869 839972679 960902082 255359316 699912362 551611990 887478868 622944343 668825445 608353170 919209551 460935384 509183809 968962207 974786973 789733329 854090974 615729525 922865684 32685104 572080182 117747830 790122549 202938307 908341250 883137059 993259978 863973441 909838478 305995666 466003439 205597638 697026708 870611597 938132671 308944982 599208673 60173658 561651524 476397544 893297265 556560506 936812950 651940979 743517334 209652891 377435278 815144093 841810876 619138891 712920958 83148111 445953742 796233229 980622337 303903252 350664492 521517355 550202711 815836531 898727046 477751979 833552909 323537866 802855348 712391836 764406091 562271274 849864589 794185759 842450239 965090817 972734781 175620911 513811385 319845799 970748761 883036591 921418070 235074175 616388799 234661435 723723882 94075883 995651952 499525337 872292147 515583546 885761898 277896134 367813081 117181740 426435846 841718207 963735894 450803890 849953899 922051692 988028648 196957587 605221106 827386841 921142271 846840675 986387049 713421172 728221963 675779858 894649212 836188734 879654256 929848114 940520182 340168943 804513946 889068323 995323181 112603324 990165701 342147557 809861103 875009392 954202406 304858520 581779679 794044750 973161119 152188828 605472971 627999877 712889381 488793065 933096020 376412963 912479413 212772137 689272351 357319218 859102841 234769245 627345498 628501268 948342882 918840170 965463665 719408843 824693564 300624912 837032336 829560913 839472493 491181101 651033947 166273479 350909915 98600364 231865981 144146308 769425575 860185370 939724897 266221561 663865030 849722517 996828914 782558421 872176337 821489506 896311604 391041533 850041001 856192067 882745181 921160598 982302598 231180460 555351366 697440765 717775298 152547421 276443323 543946010 954598653 117979850 144388548 733946165 743580451 503969809 702406689 858086788 889757855 787019698 983391039 831440294 881799057 640739814 738982816 43413187 128639344 122748426 927354596 783789661 836026173 439747060 858394820 297125428 669393510 46154849 351131464 60460649 70280521 114115974 869231080 89522382 701368388 583097326 735620781 392564545 976172012 774024458 862855525 54245339 813583931 516384633 534299519 350245647 533251372 282270547 564671027 893254965 940194549 306903355 398650384 991448550 998693308 197873405 828370195 717134053 874434426 994175959 996521814 77776633 284021836 489252820 651421723 740750422 864158496 709239429 780582522 635039380 842932672 192083633 218743638 481496985 500201129 741471413 861552555 649635468 767904252 828870561 907364752 193225372 630490243 945959268 958973494 525598462 632824309 452783157 997359466 796996590 817449113 675463755 828303686 404131922 545442015 159492368 165066089 146912290 866896022 40535237 917422950 784349171 941905542 716636892 729393595 253373988 611632001 394657215 701204064 331344881 924487020 945129091 975026825 41022209 959808588 507699849 987130529 322396371 454939762 530611050 977882248 360030949 671227340 786416597 808573991 657666380 706246519 882043557 905528211 505680605 693698178 73771765 942465268 495206401 533523827 58065924 90446712 296379981 941081674 120840722 950521483 431670020 918901406 877869099 969198573 153808863 316716555 883213625 987751865 277676721 640510066 616479287 966726050 501517720 787080250 104299121 115149637 421459716 841731770 601205046 700100413 507842795 730832462 429062935 554525073 463043670 758864979 312343022 485823780 539641815 725160317 861265684 909534831 965466645 969744384 871927150 999505265 147568195 469352589 755511026 876356968 822325092 889359155 307541141 581352694 45080861 778292426 355374120 392370922 725483498 903942616 376589575 498985032 339022762 984642068 392368800 745459537 782201642 910190891 157270301 260667299 46505973 552506989 406124336 462155490 704699461 888331967 369527972 660043123 306915609 452247378 3486406 290751649 444918986 477246420 446536035 641842452 755228274 797092235 759148325 834582980 602131054 749410849 188107960 712860698 486156050 759630564 558047649 997164946 895224338 959808564 903833091 968961990 11007953 861414869 581160908 956023114 138979622 869734380 716174249 826348169 987047029 990503414 283674887 442500746 358920382 807963873 519425535 520278082 82487674 968175255 249213779 589434094 787964795 814673508 909661176 951974945 759714136 992066608 388781303 781966498 36301208 461833303 677895355 755430095 265024385 560566662 342094128 601814589 494816039 877022684 635228395 937730118 225296501 838682130 60962698 351460672 344998768 451167625 769616253 943914288 823359569 914323934 409692324 978404149 649538606 991933915 854212305 980530364 897033104 912666201 745844040 852047468 204957884 267200741 802394796 885315519 694038215 803440643 950809243 965367117 845509102 867733791 98861541 514942212 739476955 812793170 467863856 664095535 81802749 967198568 360602334 920216323 39614904 60423661 522311173 536693710 444653068 599171601 979852880 986640540 419397952 972574287 195213309 618000904 29865888 579563231 351220611 865507475 703295445 916993488 290070754 717984701 33575701 625520582 175110860 341905344 663602350 749437640 478861365 705835458 799476040 967537058 498657618 532729461 489833626 513317008 574521461 598744544 597320910 643643429 994523837 995837401 739699509 895178152 356736591 706978852 424997965 558015864 776544161 930164559 39446595 537682026 570193189 652629311 359041582 718022013 988913860 995227869 136165889 858776270 226913626 726400735 85755152 297993209 408110416 539747472 367553599 560893915 855585800 861012422 253067544 671842590 155290163 526895164 585442851 972903803 596943826 995140718 88343810 539919477 943308837 991078540 641875729 729413198 220883961 572141966 791914304 992670479 365195688 552760619 797919852 941622381 370230968 685534431 314880602 422899331 729965988 863371214 208454899 501066722 48688377 789106763 731587357 901293746 399763396 508560071 408140080 799339972 510420437 937554691 296371233 592458493 612981815 779284081 392699272 595067204 368350899 836954649 684816356 784520223 982677119 992649094 514191590 732771201 152588604 200448420 526148615 974920996 836120027 898001535 87921596 526533827 461911872 684885117 614734201 801781786 666066386 686369621 266101512 751379923 729864446 864652048 549995325 707937078 397617464 557060556 216881929 580824924 722773303 764752145 67840893 628677059 365821649 373443734 601020211 667920811 549731962 718856311 145279617 517523003 335009022 426493917 146745219 180415969 587892399 630667176 864632556 948907820 476068735 683599203 385152896 832889092 450184955 509444118 642279743 717614111 749321397 776015966 949568013 979073035 286175579 630139073 991886831 996849637 474767830 973173985 113239933 542680955 219536457 909533707 60888058 972892969 824248185 870363313 750976841 853965396 130101076 161417176 759970792 819913954 912614975 953531763 322658205 441803669 840250529 963236384 792635072 962644092 118452970 251797639 655820423 840045463 610509385 825671639 309846109 686146785 407880801 542379690 305227796 600006816 669714094 895993672 370163873 507717852 284848735 605371832 926143430 990951806 831053297 874321861 828695451 988806368 48126270 469913685 369564929 647517429 680046313 854234981 848807272 989290130 998602712 999134972 598937065 598965700 891246216 930378904 915527207 938679058 288691971 917192146 852338815 976353232 67409958 935255194 115889937 293506951 604131256 907959834 544972794 658778795 867411857 918334196 592279252 675461059 249681099 345124851 591654120 626348292 596196480 794860758 122198708 846362712 790449882 993368756 344627962 915947605 839187526 966949860 784637319 857225706 812962351 815022589 127639701 790522126 962905444 996707353 987549181 993395952 822758261 884569247 735246118 802530723 829579207 889089805 157090704 333626623 824790839 900232998 199924442 239425643 299266251 368640675 104195180 524173135 756211028 872080438 5476249 668725645 717433239 722406664 596020312 800854728 972269732 993845106 489796102 611275201 395539475 787579576 548244079 592696558 679635539 975415428 502277098 541818578 365448490 520660221 253986552 272411890 974877341 992813389 755159280 958296821 465697460 759193923 452798972 686207857 983813768 989052006 420251833 976245872 465655309 589689429 467741323 679888943 831116639 965806078 827722922 943318728 285082070 960421009 204204553 343835231 487379926 557293597 750866060 945628079 215030417 365457051 548446194 725907666 713870853 986899189 50774219 719732178 180751671 288184250 907481435 944333009 930261310 936698649 726512535 852714782 687271133 906839224 300954716 617247023 618356118 866549495 46038603 597507527 398827996 908803833 189526034 464797103 590232373 710043714 163012256 975850210 381040110 510579432 137018383 612065546 905861522 989281200 387949930 765056471 14849517 113187410 678654491 769981427 575351820 920033692 351790322 601130922 525308524 691890617 983357581 994318694 257747261 945504493 951434611 967615719 971107972 988950821 901586920 981474418 979170893 994277632 275472355 962597690 175020517 795244047 889962743 975194656 802751999 985412382 397316584 539656483 781786825 907063423 264128971 451688676 186571462 678096289 933390033 941024699 441128265 840872442 751846480 869789515 128025302 867778022 607738806 881926420 43255624 191581234 955162638 974609313 969208122 976097826 613450319 722316670 269682063 648767278 246609166 788084130 367294193 551734633 44364629 882009952 76702028 654341266 48354125 484155083 686241531 881178920 291494989 743943481 385531557 558862153 757290059 840999183 466301332 667920300 695845972 777172323 62961085 597875894 47472295 715735347 607867193 720823860 568441498 730636328 280390958 876574251 822643098 963592699 190256286 800032924 374586966 620378851 459745229 940266900 352313072 443687979 437531908 800736347 587393926 815738384 640914889 876230323 461836590 499302120 317836319 446595822 658102327 839645906 137175740 362621600 3223535 246384991 177656070 219045395 245432448 483753449 212478811 500690475 864557104 895316895 595671868 924930197 574048466 930533908 26861868 369756369 701378837 759670000 977763453 994000300 384717536 613763597 452411982 463719873 851863972 959093960 870794154 939718597 703511626 810274247 217078640 354139125 3975704 685231731 749016161 806886436 925297324 958239874 474525637 797367743 643126735 810087305 803583018 935735039 997686877 998411811 433754150 956211831 15776209 545075538 155774124 533478695 865636168 952346843 372457476 877278222 893979878 912068754 233383764 308161311 39127536 655784504 591615834 942629699 567610817 598672419 260398745 872817052 515066115 605714159 386438764 867738845 670272510 726958772 794515735 834073253 626382762 868088128 27923862 845792226 975228414 999561276 709431086 940300483 237375934 647854387 654512826 679243276 23471776 83086965 848540220 903471697 922832607 983858587 319829803 776499311 453694530 502137425 27569332 405688823 81205812 424333370 880976419 969121602 633494213 850185443 90394619 816490772 397367223 752601327 317845749 488499109 48439602 709451161 933255879 935612120 863352875 937524988 490636741 854951110 523053299 612227982 202021546 904684510 374823962 754215718 775512007 969667418 663269803 733496655 76744604 179252346 417063940 457744795 801522348 893117191 995630042 999396561 493602591 693008442 173720616 692660210 446159460 723719040 107027784 495669750 145956958 731334775 534296074 675167328 868065681 953011322 464921120 997767789 314376949 778170968 970947105 994853906 982318411 990745113 645182554 920407031 89445193 896669155 173845255 204400011 627175831 909475470 21096213 457364131 281472602 475224673 734926608 960695037 283962156 611503268 347352748 582738308 920599344 981438265 131803293 376074363 702351386 747843308 384120544 540487349 618927136 634755906 988080028 998569472 444896789 725086754 880170090 912227107 980672459 987295988 92703933 614403060 484953155 793497791 493418428 888825818 245997948 665793964 605119542 686477232 443060554 852166935 263707932 505528926 363666091 364797024 371111496 798650921 50145742 213819179 9706574 12567098 899015819 931950235 6902003 639324024 530295128 582300537 454298062 728212289 441304653 585173676 335599814 892270068 363902408 954698844 822488058 922631468 973100658 973752696 163199464 898314029 839996151 992426898 343835044 668866649 572623371 947985094 885256559 965201040 484964485 701520022 576993248 779077032 632329417 771384516 59054783 751308717 286477065 936764451 231862898 342118134 82673998 538672287 533149413 991928564 388836019 933298458 424712617 467530460 253722725 970445028 764692798 908569277 104519488 275088038 148117147 280182402 347227890 516416146 985641809 986188468 803634281 948020034 468349303 682543266 332079774 815043732 904415542 982113392 15432216 870078691 360491053 377324666 718709109 760465585 77711053 180818843 404296412 445071755 253868311 502963085 703995970 822717884 640666064 977788265 625354585 914500675 221601212 421090953 117253247 661799945 269778758 607565263 689259204 819719388 815363030 897179094 593340217 840838062 986956500 998585413 144112017 927257026 171051686 864505342 875567908 885652249 652894572 971166492 189366991 476945980 268919695 995053485 577078292 606804875 527029552 743608995 246693973 332135717 774058438 790132398 189412254 559192965 745753778 775125057 571241446 896116687 519022418 744525830 832884044 886376055 973280192 988999489 727226693 989971650 465461714 962521935 444710844 611059662 779112193 870583173 19167269 31939447 788974207 927914238 788006708 830726016 103747941 913466692 973476778 981638123 990362359 993243637 295135676 670837389 649574106 731224940 933374148 949984217 64022415 831902701 984087809 988886035 414201618 642650570 909801609 944576721 220217283 426963804 301828067 599193786 792090652 856574683 384540995 585919754 700823572 712667931 904262189 959763681 542509191 801649237 915314708 946524243 398247950 688235595 609895449 805256767 319374635 571488399 789605473 856563308 749529163 924425412 852481860 950051213 248229784 529483772 580147870 797148733 160823719 495715920 969469045 971009750 300147846 590995731 616680147 644673972 823579057 908193610 47160145 197714905 289328374 400489701 803196977 858920084 403211575 960698288 318200258 602437218 539577228 749889199 110623924 726737504 26136084 206602829 216661742 836839082 316291586 336244444 254258404 592928641 754055020 883286651 911473322 932772524 736568286 897331614 722808470 827997734 130069673 344694472 603841261 791571296 265710601 756029830 480207169 881755124 176251566 515129521 561668817 963102361 539536206 823913422 911600177 999971450 343553334 850573344 714890391 789001889 229030012 814765242 990373987 998958342 347538247 550341995 401027322 934148449 734655567 920048463 423106105 729490400 855986253 915079894 613700312 683747755 954534188 968090675 199545248 767909193 205996283 779361198 973925290 991318495 950812176 961273550 742191344 955655118 156983198 742591816 967225044 994106107 903640135 985133476 599187252 671763438 989847248 998360403 358570357 614188383 734197110 885848658 706862691 767105900 582915558 670445456 991042131 996867677 264862825 912318045 414837073 480415089 125576865 787100524 915106556 966666649 606163896 873234570 302796918 484493302 789848526 958145552 316781938 862761129 538082633 729702533 137937561 521442726 490666091 572531473 267131970 699282458 323245213 871169887 347300810 699778551 731680814 787585888 207175252 733729753 968497069 998236326 249701652 466750578 668812022 984688101 572223847 675910807 61723538 118728537 581289002 934118891 800122885 821748930 795391338 995801206 896752243 900825095 632865375 851527650 351134601 635239184 284490423 433844557 466030933 720621023 951306099 999122422 62994956 607581356 960391983 992999399 981586091 997671009 964409702 973027511 739660196 968527119 132560235 548552809 285663732 651616562 963471302 978491186 195308919 934002378 315459821 985753178 133346195 289902954 898939664 969463843 723213246 828382179 642761593 788928530 919278787 926395328 104648025 783773211 125455968 522243471 928376690 999095148 888538946 983127234 278962338 673349743 156631968 482076971 579445133 767109177 28635719 510535993 270197397 768295807 526210695 643053444 186720218 430040532 305488947 473935352 805614727 893668380 163605988 306154577 782176300 808079431 568980601 988711877 78937239 473536057 513291864 790211467 863627421 928177210 339673314 661514828 274766178 772359931 981946713 987649179 241439919 760407908 539880666 645188987 109968830 737393127 276733903 325483249 952328471 984266121 186343074 441334651 50845367 922970429 191458507 835885213 139193870 663526616 50419184 771319588 214486627 405098949 934918044 958242381 771981444 899777637 617973263 959177719 323842768 513894561 685124867 804484138 746597942 872587546 98613265 524251411 253066153 435937981 362256669 438306989 205519280 237054007 912812551 995903990 768309051 972433848 268225313 497826189 431116715 477865587 736379143 841104345 102094505 837393504 190978408 397416842 936036815 940831238 278684276 291637174 603642921 850932183 611533059 849872927 952967633 984411237 429561500 442713523 988189714 988228309 395453091 740671217 620703366 745207892 728607182 919724254 689575136 724441887 844041318 880473119 300647002 713357332 38171418 448121399 772072106 945891891 828706700 950409375 970348517 973289798 821558441 845379135 552868939 801769173 174981949 689689272 914079408 966357900 584464113 754355801 107375385 864039906 157489851 266259690 38481455 723506559 208045135 538795778 866326077 967602595 343065531 591603425 201230595 791682837 946870884 993698573 146255941 706213949 148735788 634689377 666668296 935860211 784384293 795630496 969520014 978963154 497209983 992760519 956280665 965415871 2741586 61976355 730329297 981703245 240706108 971450616 792420760 968143279 818518649 992135568 827440207 893330281 332143895 695362150 265092154 870044620 713373056 928104664 710567254 724448406 450921454 576760119 892483463 973052435 306547384 620183455 586944194 697728772 134271939 948713568 441498725 551075151 910795437 913503386 800490398 920183078 721780622 779525052 774038252 863306235 208247878 898976503 310809292 517206426 121548914 278683422 441908270 973762770 270403013 733787542 802690879 870852715 264702064 854457635 243079234 468020098 550846182 901604174 353467565 378048475 458813289 483747327 20117757 224033042 529438027 897084103 986234162 994912448 384996802 455019498 337642477 550417398 710154621 717879933 246279977 498339940 265251372 375009220 357081783 890899715 962308291 963236150 260108937 441478968 990171429 998534639 375571209 564812002 828553479 903528843 234890561 619280027 475767367 644753282 581024159 809917553 32926851 63854277 225237718 978583092 264910911 413679877 505346091 988510024 931095039 959923609 630875583 702950062 397877428 750211511 4613824 384073042 981523891 982395735 626017413 818362171 679767978 908155931 465430904 990991121 983242026 984791079 610445253 707569772 668127421 687245446 647406095 950190005 343197183 791233955 251286960 889056248 414977216 867348785 174312186 438651615 403797476 418090434 514526039 715449218 689972646 888798755 441321062 963633843 340829465 627171596 71420653 423947066 942744770 949509743 94609897 829624661 557951257 933999107 484986965 587045141 742497361 905346974 694012362 788860528 910856253 970042161 668985633 844576259 80859329 509523489 370589393 721759880 5385965 362689621 366039114 482400983 744712663 760034612 373811323 568789430 54779746 302383017 848159065 859725689 481627966 711928067 236660222 809410045 177581466 428585379 658386346 937505301 170084820 814393254 80772893 573734294 325144256 343690370 292663821 399889408 700558418 841407396 237908485 297082349 620719911 893824174 89494917 775993125 804789415 821379891 977435534 989439504 568940977 688196913 384459608 427559385 327957863 408236699 812471423 842600405 724201334 994533525 647754027 786654693 840510230 938697397 487069690 532606335 470935174 707536359 101884051 982735692 548512951 817789892 554133948 900478086 964759507 996096258 924520142 938098436 908061299 954115085 491127666 885212738 843424438 911147032 869011177 994697945 647606272 769842623 997297130 999294354 470954955 809323954 927595881 940400373 587807969 673452384 332925636 359230739 567368269 685884578 819079606 933246767 807213065 961355087 563023558 799488120 528735095 715906584 133204517 642228681 242869245 995081904 339065663 398251306 764838304 904326600 738513499 969537925 741381100 848766671 849541991 853632166 59061856 680100122 230457140 272933437 310994417 322610812 219068832 939220613 862447772 980914927 19793902 104887907 693214949 719691177 642899023 927062969 349924431 661734695 297138557 937375999 495530038 510532155 961504246 994993435 778125105 817290955 271838697 592344664 664737662 929680187 393291174 399336666 148987917 711085044 331845161 535515795 146868007 260932448 451366810 739433922 347600744 680617816 591769667 711050744 924936077 966595341 364104379 492485866 838573788 880091786 160417751 725232003 800061051 928629226 767462696 947568918 178155017 199282892 308601819 421842821 772865728 929271861 501601546 877530412 388311555 525684813 48381935 331896820 994926381 995478094 634983265 865738793 556072767 866386092 260301861 526598056 718862214 780998875 579942912 662582699 665268200 863153034 853580506 961044808 658677954 979189241 600203438 915409235 686418286 927598349 692184930 817688977 167243642 669037249 77358257 759820585 926984000 954485183 904968263 947229898 766287015 987300052 419809867 931931001 653498023 868249225 171572632 955058581 550083561 973630843 920881219 990004048 187521782 395524269 364610726 833764046 736688582 959247681 496321482 640097067 558447192 887293604 316880044 813796105 453708904 907943335 263930650 299561583 732779234 762735836 753943833 953794697 992055687 997266631 948168370 952090420 87993486 675261783 513035113 898898534 453284010 545616900 269106188 476547431 586555020 788276697 638699851 825635166 627096022 851903822 820365245 855316191 924337904 956123791 777683541 977710089 842716783 962060435 206723528 215438828 722059193 840157621 732663389 936142973 559922134 927105499 554338333 748367244 820674491 858816800 136855955 921823375 227913585 546361495 783535211 927775768 603063268 631100806 609668145 705985069 81420765 744580865 898299526 961593891 985662158 991222553 182509841 184382748 221411850 419060998 896872800 981409929 735169649 983245406 939341707 942772891 994962700 997223328 411734378 837673719 314263457 656679334 284869805 813509188 163421447 606579076 794718086 981525190 682485021 922622679 98202243 421414061 320164322 908718498 85422813 583956142 448716595 722221905 925812355 944351151 96982296 98483179 104352189 168162877 417568411 615781589 980882963 983892930 415175355 952101707 24824290 153373064 897619584 923382436 382538791 616914707 134153896 884462842 901928931 903559565 803186983 985060671 496911106 745037816 776377317 823419551 615538512 704272595 612563333 933197099 412235242 417134598 85318669 103597793 983652963 991803264 249095571 489101203 899200773 909330247 580469037 947642365 687477245 985881007 250076548 889571131 937499 7483141 382801030 508271076 659462156 660605839 590625358 888592614 388324202 388405650 31912309 681305380 410633910 657136324 321588896 672433239 153926504 613167672 699269574 988534412 810817160 890510337 913995760 951314490 752688232 822790369 692856099 965478985 178533786 924569406 773001109 868130231 388991971 490799546 611253221 862178123 168967366 266072655 617404253 904544508 765881673 770580120 67927013 319532940 163880878 304242096 663326487 827432203 852716500 889448680 369009116 558313856 162682540 215300914 845440052 969509083 785176222 973735108 300875696 683645208 50079390 216819642 855663369 860437162 646432518 779314143 326850474 607915692 762835299 793091053 986107799 997094508 824329791 852027601 190454495 609687790 127744988 555260601 89288910 530693803 603605730 862528612 990119185 999821399 53101800 852407091 73996407 244062081 31261575 930130643 450074604 728436948 757677038 867831224 915904677 981267832 340503129 446804871 74905167 459454718 341512769 468496087 270154546 520820689 819054493 879837802 674712569 724273368 244689186 779916989 614338938 674898439 346667494 491162726 692189876 820975143 77678635 731227980 422067628 721444938 973696772 986779657 640371210 997800921 245799278 498918038 266401289 765372167 951382907 978874272 439832941 506882451 336319605 845823176 465421189 819353553 849396875 914498939 954065715 997414448 796084554 908494155 513951990 867949306 76414527 837620389 5672177 724032841 366747500 473550119 59532328 380016252 387811317 460326592 295593706 816597387 849120677 937695358 883154004 930822861 164220363 335768158 174180769 220329630 951122187 956811785 380498983 991264823 420382187 853547579 894122045 972580857 657920920 760150752 67978262 559684964 659479598 740059135 782161858 842423453 70323412 757215205 599616382 873540268 246469132 977791258 232343012 652317881 365404089 415100177 114990448 625792488 745789182 903367395 579203411 673763244 247875674 971052376 425801726 990478417 608410977 767240983 432910809 739813284 217926154 616915044 460251097 591634733 524097679 902910348 84325880 687121212 11317590 158427103 534578386 540327615 977865005 994066229 485774101 493926321 613056218 981246689 221017178 711449890 95264729 234882665 701206605 740046933 20422202 552899364 191970578 387097015 392614552 443652109 463172291 923635812 854187111 910952439 699674728 902414608 43291544 843513541 867790005 942142704 474472722 587751738 352439866 772602625 811133307 925352977 432248032 958602901 383578394 900702957 827418516 935044130 897676386 961382691 229896177 863377591 13012710 605489352 294586716 911729289 204754753 754886301 831760789 909546835 264019059 549370073 867417037 919887538 176710817 949216161 272770292 524929852 126032275 844531412 41460368 416204914 202089027 650278047 504036199 606286435 954272177 987342493 821137722 836896830 281990892 794742114 591703143 778666910 1433081 860460193 451891890 595917858 606060723 774268926 198971961 259308677 613072031 678389786 919946464 964047000 195782994 942443242 843393864 964448872 9370914 297196812 815533497 922176424 799455948 859347446 162171440 870464723 713936689 797840879 712573236 806014866 745759639 953833784 296628108 361625807 346225221 657179546 998631097 998854288 142985293 924737334 888956639 899542929 626107775 778457951 962953995 966594676 730845462 753784235 498300630 714218334 154561616 862240402 201083822 535417758 504416523 823982937 108798917 924219890 2492602 453514071 167086483 705605765 457272374 977208298 394195984 693802193 953591553 994601182 562543783 616447968 516749355 908903924 669436043 732800705 733259311 860398093 663232573 966632354 707173527 935346103 799023415 823867374 277900132 805427916 805834414 854904589 59479186 356683933 733988400 937271745 672195279 974878548 442903860 452868973 805933822 970244129 953148208 966683335 140678005 864905633 667416369 783114737 136886232 760756577 332405121 577287584 100607393 588487368 586924327 886714456 295047641 865711035 16028993 104586429 530435089 798839635 887381457 912586179 46563004 661064953 702075909 725988832 83506598 634243656 656339422 891218233 18582581 831331422 425237947 668126818 820196278 975736021 342305321 492028516 277470453 960173672 729932913 772720681 72103059 655260581 646365270 976788034 7982615 506127460 190894227 704753052 6972482 454536736 551178041 820049759 240208005 920917215 964234111 999059169 76452604 793197585 330467074 390096760 619826606 689570787 353944734 919628180 662501639 797995175 620969166 769338931 774597324 957678543 407156369 554606288 382799674 788972834 759839646 910428651 929179664 957009174 961869530 981204997 408152553 629649077 828408638 993153310 360499584 730539458 365054372 756703418 134885852 538759310 955415781 958204052 241412688 299751463 139191304 719701513 914604752 965354074 618495315 976651840 392616239 982732905 35235786 832858305 397066884 900661163 437621062 622625822 658132604 882403953 527633377 994410849 130596502 635169755 185451524 902526409 745709630 879569523 325916570 952263334 542073589 687830284 27477274 554381131 845572214 887588417 169807055 883617807 829689962 874639144 331183923 962541369 258131696 914586248 708445824 783416784 898378206 924959046 503487651 947876704 8684085 311608523 228872304 863514362 544715031 671281770 443307487 856210028 476740336 948350870 957162019 976862925 121334872 615781278 840128008 882077814 694276162 949016369 153358617 810596048 974485803 978620980 622397362 979552156 621658865 811080117 353996621 673666767 109146701 896353175 256577180 641129116 886240855 972522330 318834869 981431412 219469516 277665010 173614003 830559736 20171263 423834766 608422046 961316539 739335351 894950486 575185933 647826301 283632974 699465266 458106624 934544258 621049884 851883716 429189729 698189868 413506458 480276058 465464127 476961479 12365803 576815933 768394723 874962973 320949101 718029197 527802425 543176471 301854429 448656485 87633760 628878245 896668404 973008961 361238009 980608224 653834735 990502203 610298289 759800293 513545666 984165498 583014113 594287478 674283939 734243941 617835061 657474686 199732033 298304565 579237953 679130097 210889066 988764536 130476136 412176183 275807360 422631160 619392878 824031375 855832482 948279061 722997714 943717984 147177472 855830900 611080978 886882265 8896681 897694167 533327512 947417893 17552413 525487765 129203954 813182228 611835604 830893598 479425768 901800855 910058742 998091381 204635844 326356470 111514897 712680689 904638551 974204175 781708415 963654808 897886316 967607081 136629284 824237131 653372511 847229510 768093696 806485869 12476203 500665831 433869518 555392178 331782784 964427824 651193347 928184840 461053667 919647289 433140702 569715414 424988454 588049989 883518889 902139680 867522605 966423151 797362541 985676028 56807915 483139517 111192900 224936819 836942702 845138091 742275953 803759970 173927303 227293957 21203325 305659508 2211849 347638547 598516998 880537768 849524448 927163902 812343353 827693080 670124395 841239611 866801047 905747578 407608713 835063201 492468905 722432744 695267118 841412259 857294083 939976997 232592691 477615275 120336603 920047288 907125620 963456307 529738803 715548668 971517540 992796004 301534250 926706991 401144471 980759421 363858194 427968805 975279268 991807737 876809851 891489232 825841550 957737285 636403260 782354608 430446095 474872247 296103354 811952481 596505366 598774680 737179359 746419048 524834953 973939589 315534134 815353488 201645115 665938079 139627262 230890927 475718053 830652181 65407898 337686901 29421218 935048767 622551021 791224936 504027587 750644787 447276701 893415195 493477687 508078754 337380006 602351596 288568241 434158535 143360509 918650492 7700266 20205499 961580522 984074276 982479486 983556308 827281052 917647799 174001155 552839787 620558381 711435290 738304350 748791171 731980305 832710902 994331918 998767963 504390004 608669422 603204914 880146020 30931022 453025014 238620732 805368336 833044570 934739305 764613044 937289080 563725551 937929953 617899845 950363399 256829184 450146298 812869669 858602235 220526587 827606422 218922613 621395930 82546290 610279475 295215076 523451425 817872195 932761613 261542129 911564483 977165663 986210322 961600363 993893261 676260013 803253139 98810220 554040118 144846696 887742342 630007544 722142056 143394487 776342841 805184874 808586826 450414108 682780965 41461435 568888543 26960845 470561352 519413088 844146321 906655870 990874145 632440153 654021355 583106215 802542254 191773923 858678142 839755687 911926241 174727559 870942851 110970685 142833635 956715765 981422941 967104909 978139368 29017421 798637887 803328920 998503377 968023494 984574755 504042952 770184155 982368679 994288848 584867467 969704564 155370623 643734049 405961112 929833543 189917040 296441025 734737114 852335796 508415727 818076945 751029922 893166310 450840034 941293115 149147464 951101616 936785865 956539380 958260882 976321289 549525739 866555038 673714702 699078547 147227104 997332243 783028733 812550711 165760667 523874732 61334659 915842593 81798123 364776554 38671695 987470227 202575141 639308635 726143744 781842302 33728947 918945458 883387288 936267064 931875997 975809074 425594654 693438670 277435205 678791451 696954266 800623929 544723398 557267753 407276733 854393887 219526515 227047964 686440038 987048080 25577117 226145663 806454651 994855522 246589127 272979680 29059588 692120484 37150485 652748351 729122081 959947194 682986396 753468842 164474390 735753660 181217839 513019177 327314822 719260160 618824017 677049356 599073224 867354600 295581320 480777233 235021456 338842871 576322298 582718186 766600679 804157938 728364555 888432554 787965759 933486351 349331484 491338309 746991760 890011981 621841865 677996630 767809785 900877406 13043222 974693424 913196069 980963147 703510292 828207878 647741050 666873856 820465431 938523811 298553577 480980847 683293847 810050226 484046457 562613404 779618792 931716340 239149715 825983459 444748292 981509560 204063229 780834404 774660125 833810595 887091719 981193902 484164129 551695858 200197533 503676080 191494987 209469434 730945736 890141952 478497489 988998238 488602816 865199441 524812457 682033147 157737743 444252801 242207859 347761893 499970913 887947681 374855088 869300817 142498877 275639496 480873161 868612251 793833703 928983003 838887969 956707466 168269733 479138969 812261754 823471519 328717993 847976009 707056575 891909916 946888531 962495613 350358236 551912650 960776193 986745472 653807667 986967169 808334527 956718360 537780737 973342000 634737488 864008649 107873994 171710353 630003858 637173723 62852940 585680458 238011106 721515687 902815081 902847732 416654449 749253139 483344037 531002134 659045775 861010614 698116918 923555481 419512998 990868297 323054177 868636829 821732379 935729465 182331833 677081010 652083851 734391414 511693561 894973270 62601216 357838312 304499603 492954738 429941147 861537325 926027759 927249171 248214921 988520634 714802534 750486119 431463710 911058529 367588929 916269966 477828531 744084506 464410327 823219802 968455802 969482328 377466912 852825577 705765881 831848769 811777303 933602635 449811899 626058312 411962549 440498565 839340615 936820424 330920122 486337131 886321608 941400080 967486255 996363367 570328806 855836231 692004609 745717718 458019870 678969247 296901046 343027501 521227849 638326091 618256192 959323274 449071471 829431981 235073962 335975448 638287682 951399581 508336531 558452959 130376563 917918598 609321562 714098172 602692708 979780424 340479359 539784143 264961275 849672766 328948499 814917055 867015268 877244853 224186426 970040527 547755987 736243089 949374173 977053690 993264556 998260809 649609148 651068940 810364228 880976940 225569228 604642151 715338244 764531846 494349124 496092600 185861595 458071504 579858203 768294075 746024009 986647212 835684941 863992362 354514165 952698193 724004279 966536118 943596690 948545244 16715154 851166735 558074314 628243576 248124716 498480235 710079307 849804254 738961231 820524388 253526251 322617053 19117068 219772606 614265693 744225290 36290976 611629352 179107505 887261448 85329887 325621522 208607443 768364170 488361091 738333990 155477632 474265791 30823513 260880886 845311405 926480624 17528778 434595616 750639987 957514104 452606817 573754593 282825017 550885639 935126609 960678779 577996382 922848030 817631744 934623646 962145272 994083522 860119783 889323766 882569579 934510264 215622836 218595179 429945511 764849719 16494613 252685340 522333029 939899635 191606567 759783618 226386011 333911223 660296196 905037552 25545331 280467710 168744811 325496671 585048741 693756685 623745757 657651550 730329583 820231765 908853970 956033589 526298086 642320293 392130784 991283250 724953194 966478356 84549962 104883906 390128043 820897757 569998881 777400883 417186220 900655046 165239871 990957807 168470154 826826006 677857737 966845357 905460968 981465763 766691711 933141115 200937004 640117732 29468165 885064581 495469906 813483636 928717775 994421445 903214158 926837745 702572619 818459640 191394200 330855044 942809335 994245235 404147869 561603225 12809192 172527334 689457948 945780616 421518865 923065600 939452866 976738149 432991716 959939338 819408379 922135490 256812685 454531706 190713888 730766586 814497706 996288720 880413117 986397192 696884186 927220600 936005126 955323462 75767825 764610724 347474005 831610761 92002264 642595109 976191156 980744850 611223554 829683849 262106084 706761828 234348492 965428977 636779991 845141503 170382437 600273565 390836406 692260769 754151731 792800081 265662446 716314247 258819012 462039224 325448563 936423899 494903628 965752632 603764136 948784234 188139328 633863085 601409015 767169947 210590859 928532423 637659038 934140841 230369899 441823506 541480923 696102695 682157062 964883483 745586271 955057619 725510759 880302731 919845947 962977686 128856172 670644724 332474427 532666687 687944324 941697549 114227975 690233254 269154291 929450001 862435375 935021626 990742454 993427721 823925206 925040724 427469024 904352550 883986951 984573214 564364061 823523279 1748005 105072701 81570859 340280010 928494634 944390157 409111146 424966632 407966836 850445721 191890326 517283302 508936558 938468047 581754711 997790170 849868772 893611244 322510712 846349732 233454556 261110742 219072100 322830760 556923847 849133640 616804934 885679915 46074674 982742261 893622489 961864703 733223371 753153220 924373065 986987300 254389806 369716116 862299904 979055667 98355598 388916548 300707597 634279021 587590193 978207901 527176653 940379986 610865228 888651512 153436857 792060901 139461224 287710172 646104065 965722344 494683628 813881403 669142174 721535450 475506277 859428252 631233324 896557159 36131065 115148276 824434688 838101718 952741271 994255312 802493329 886071805 453817272 957148439 126674936 737178667 899314657 909347536 296989877 370136967 132404263 337158353 535217165 547070807 794640291 883668566 346483876 948927127 230849274 885106436 434553504 777413188 789941513 862211596 70766060 972266104 392338896 724242426 619920097 705280799 335549657 473976660 89198872 632328237 185682502 223191266 154373991 284704478 572102581 708616211 179518982 593423336 77859179 522477096 832569703 871997608 616934501 635388445 868372148 877850544 140226614 275757854 439373505 764360482 441086293 658238255 186445372 809638573 546817482 828846203 567280798 974347077 586919762 977804891 669374941 991841519 977518752 988200060 583962974 989143656 968291825 992225719 571090390 798954896 533794362 824150723 920910246 927568168 146571645 835813599 225387954 656358978 122583492 837655454 120706444 928412287 843528012 986485834 899874735 919715127 784743456 979058546 467411587 881465517 377148706 606559729 891467582 899667549 769909847 938130070 450260605 784531634 308962650 812927718 67473535 880315050 14669084 540275577 781295105 805158511 870079849 973086701 588002 62501376 49857541 545487161 9891353 813814106 4239514 642977980 850732703 924035712 929335297 975394344 559021217 753807225 253513757 359679069 7613003 249192366 383072397 527802623 20741468 732428752 94572998 596378994 626330194 718342303 832763303 908787304 724846462 954629193 912164147 940424793 322736692 938704756 465227808 580094775 794652919 998317514 470381080 790951378 576742813 740371829 2352837 652795840 611776760 867230572 206242074 311374812 908903568 982825892 384711354 828301507 410125210 521030065 253175211 596938005 683948635 992333283 749800646 991448534 386246634 524531265 481804096 679407422 879493228 938926355 964408250 975285783 254833822 625684261 121465270 872732892 886761275 896753168 751157971 787219025 78773996 364073259 330776538 515627297 229480625 620210767 957557024 992837360 135486004 224349528 470645020 593554674 357306055 896461925 446169910 670760037 20929024 993664421 590149225 738549252 619959656 906672356 36184501 792830572 912492643 960906889 194808780 885410048 759317225 973672658 257293309 939650938 71749460 369520926 544859117 649946613 982832385 983864505 408034670 775467907 477981788 595052301 465744785 854111400 64709221 198176332 689748443 764563286 51831728 137323701 935836264 981240734 919925032 930744643 962810429 974071331 750229473 897651949 599526950 985143765 194806377 413500338 417118277 599580647 439980277 934100235 220168084 908525307 789346872 890148643 62692187 426514837 746892024 786136981 916198786 945219157 939552003 957047903 681076561 922188251 914213949 915010614 796131509 916988073 345039915 356744278 799486381 805458590 565822155 755006803 191553781 456672870 107384268 706738237 907285501 932455119 111538541 539552754 250906199 360254225 604385096 763435263 711534692 893075673 591609678 805066735 62867283 678129329 16749845 49545688 270457303 702891127 80679833 240281387 422084595 812740052 256770842 446047432 334027576 547224087 461459381 957198294 967362657 970269208 168359737 610134410 134916806 257136623 986288234 995666600 835019727 894010327 42848597 461266335 250858977 632238459 807030934 909188331 593274580 659440393 54338401 105234898 553918390 905272741 883422600 928334214 224668515 381409460 856603306 977900450 525268756 837192403 555757579 694370346 901312 258777138 439946724 639749970 636942459 833061960 955009118 963770267 50111578 794147446 720964859 937598045 45903787 441534591 998084555 998725715 539456245 955698828 50005310 695225354 131242287 324792118 323976996 693583449 720398331 783547786 983505096 992879054 400074873 474357233 995010252 996645345 784833407 815644898 168005311 317962206 502961628 720585566 413939110 488797252 102239253 825600844 649746141 820826914 740275407 784364531 506292642 875412809 247804282 249652277 52181269 296377557 944217914 991632461 482904254 958957354 177741445 978499126 602356728 841361035 818100650 959542544 106262734 257436980 99176123 908497611 185309911 756113106 558057731 988562307 445754656 719778050 479072224 949176665 32291881 866654070 494408751 583295718 408793322 866109732 443009681 748505003 419376715 874006429 141819706 754420913 350815971 955080163 521232072 902738071 285916972 992985527 722209104 769965730 358810491 479295220 894257077 916948516 988473748 993675247 967559656 978142110 240671942 435744955 561715601 706853954 549367916 653570640 315342111 461891797 899497737 979527114 614600854 990376379 242583655 855211453 120450748 191275777 339624587 989822944 557404988 858274282 386437815 759219423 610217120 826304479 951672801 959942097 908387398 937722495 646603246 943043818 64268762 897206770 69979471 117276615 692974746 728158446 580863354 766405636 344400618 856567958 835038396 910523760 509354943 942746102 107449313 616306350 931705859 982999498 496399223 877872527 678658178 847544295 513455289 672736426 183188666 374336720 35178923 435766450 461857042 509994073 718650664 860578883 729191525 812680805 408175167 852964791 569713322 654337274 117806541 366627402 715941380 975984313 582600008 593987182 18172874 276276328 263688953 356969949 54295158 390173716 68793081 193139430 122555142 856703325 993227548 997296687 319681350 538903329 692792143 902155170 153994809 288306069 880520761 902731886 444380993 550367641 911230502 955224797 993117443 997831851 245131535 416868232 563409560 864222673 849633421 926601248 37958220 414510514 212212921 289415770 712613473 953292379 414502264 996696030 602606332 619643854 940660856 957555085 225766919 527887759 736660055 865328966 175291440 501200678 570240736 717641164 575330948 883287782 963057220 984102172 425648367 638118790 331936235 396206562 127171222 794452541 884868377 992210745 587290325 712506822 996450201 998028609 885621199 999505078 314449185 571675967 361339471 974038264 6492397 254638776 728996042 797265301 575917700 806283285 681378738 886923210 684548038 868684884 580821642 949369107 154670615 794364795 684400939 745913193 663857994 947851743 488845061 880770600 521655398 847620299 677622349 761877987 213859484 827213616 966297767 966616895 3410607 657352998 113887401 923885133 282739796 575514150 284595798 865208069 309973702 827125909 977650706 986179036 954139143 963686921 358182397 560677947 296169530 711143397 643505156 958657847 887997860 998114107 51269580 370075391 611899540 852155542 66600061 924122448 412007619 642529032 530581057 926160326 251775321 418084455 172099178 291946701 85466855 591292593 374753833 635523278 521551978 785673702 835247239 884747863 495337536 729919533 395864141 773096313 951425247 965851732 461600380 795101829 859569427 957202755 200918282 284461491 781173098 859529787 436459724 589284655 982605933 991027126 326002825 728988671 345016347 456969942 752792099 933604343 634422837 894537531 229023119 918187432 57198992 151939868 711000170 853445708 548761770 851437587 89431894 98451028 652384600 983523977 132364677 476921341 936241104 949552989 707207666 733474584 796551387 997717378 39239803 335249923 322093161 361394167 908203466 924512389 898763288 927587512 68531996 560999677 327860518 891532735 376739015 384747614 845489439 875277694 801610966 999714691 517916604 742253703 27369444 274682779 788534672 801886795 227904158 648956458 892190132 896097494 646901610 649574075 961205709 971773870 84485215 90226718 639021936 951374891 314471080 556545509 335198107 667191399 358240409 984627363 735560213 867884292 700449915 849527623 112647587 863372055 215698563 664151419 628717065 877640790 603714061 794301443 648827518 940597399 808446294 928798468 289105324 998091429 898423744 984506392 135569434 960866080 57358928 173386039 916427362 938451625 834430599 882058855 767040381 847897706 543071738 594407184 313543661 795394121 372256731 960595367 355771366 782944564 471797286 760511464 494539426 757360578 570333396 875389933 58298259 939286017 211480012 866008057 530140923 540204079 335439904 404956918 462952611 580966267 526158536 776216493 799168046 875907923 315318117 629224512 182802889 198608542 878499341 920237146 571141453 738815035 344815989 840524476 188053977 222981739 636556975 893188969 109998377 836277778 83703566 143204468 875566570 924351879 783189376 999071973 597826278 784103874 637018161 684103305 525484068 643440044 546736655 680125665 255086457 579332129 263535282 665999778 956754646 990028667 721245091 896533312 849053265 876268228 553610929 671643978 640936647 956689213 252005435 950269573 150640133 368746878 187058356 607224924 558951910 710901209 713329240 970924897 827570483 893795523 444178251 845833826 713929504 872740314 854321521 924764526 827602524 859520396 482715912 608988872 404244154 662508367 738131779 987936208 951470618 958458587 710017663 721263889 58916617 809128627 552526603 575356599 638201926 897435920 330546949 899282474 60009420 769444195 927602857 973832605 872313267 996782598 547135422 599058891 890476438 954088505 22709487 617413853 896026308 902287185 44977801 478422917 769439483 907969516 36942700 429078034 82010883 253662085 420157130 440959593 170402701 800854378 912551332 942958826 226935830 782713319 686842524 778057824 916583130 931656138 563755190 863211150 859054483 923719333 161676381 567524265 161837765 464413563 213612346 346879768 448659492 633250862 388613601 589740925 595743926 763024454 497525193 507335039 336575759 363999037 763730141 782526112 964819385 998019956 466252259 911030357 82516366 92544084 835158656 868253491 82613436 924274010 651185548 670687353 713256403 996344641 717044686 753943445 987685784 994917924 86454682 393032289 288026431 359278699 532496526 606800683 241066660 687987639 306887008 564662475 525602089 909996143 548979759 996665777 427733441 598967315 274936901 677444646 309500493 721725851 796550526 894444118 96108909 585223897 17148704 533469861 831211457 937089934 123453228 309384311 603798961 669540913 236702684 754498078 755721299 962883538 847676603 865319090 450604494 791952918 872661554 887212841 593564822 748509615 561198749 999429560 75236065 877042449 121915292 225233786 730537603 798045925 769883360 848637173 132727526 591157812 342902280 494697369 803026108 830996424 257809825 473791853 49683003 217490444 690881513 949367381 263625957 996562282 904631195 998280144 327063511 915724063 597844351 656499746 99113957 439160869 198077757 665233442 399519249 517495989 36472906 750222792 714803668 838933790 265524950 651964730 620874607 839880813 510155558 851625822 352834947 546375327 882133018 984498730 724621876 844764502 580610173 715399666 562698671 790661125 295962558 775982653 217573516 997115460 232275277 890088555 450823175 612104592 747006109 862286173 882460361 942523097 471837998 627163483 447692870 826868804 848848068 901098744 449434535 459262588 620623008 626126261 200326203 733625753 653018475 771520087 209078964 938822972 644388455 977908911 675203187 906850094 160577319 870744061 159879223 718558879 961589954 973692993 963281580 963913078 28102553 956220239 447372583 569889093 704257399 858773727 934808169 987624554 905743968 973374728 770088835 872802557 98965695 724505945 332179158 824927444 297909746 629930758 413950316 584979836 247586225 716870428 621036812 987127829 602383880 630544889 850415259 986013768 311942785 686153603 485589232 948205569 774269772 993223209 95611093 309230067 63292428 730665073 252790710 500446948 941899520 948719602 174839895 581870569 502754187 863736356 713318774 982499434 794490698 904413346 993513303 995198819 332253279 335026413 637912600 742201187 147769931 645511448 89275856 226853500 768553361 817073013 411676126 475361688 940563432 996303483 189835678 446852353 673289593 840106560 52488295 670186519 603418603 814136185 603586245 955741705 934828910 936040018 82385768 185390403 825501123 930395303 603897686 689789140 513320754 984907890 862853412 880977954 382218220 607011689 212259146 923836068 457085303 795037459 852489519 930909087 624847273 672634536 74380500 252900146 895220932 959916581 555097326 786644760 465327220 553741695 973336818 980079433 355169659 592975486 251927700 932991701 929881344 964032396 656607935 895902573 573555334 614265117 934645938 941482095 175262415 956670914 493107853 706629815 901267481 948462107 708712185 810908198 939532256 956833902 672298523 856554802 578884615 970291420 349771811 559289895 163065861 570733671 605278752 675530176 518282252 716775422 277694296 587791026 241623456 693167430 408322882 819591424 77460757 992793287 751688989 895127154 952829076 971059442 233110822 912178745 950805886 959993246 290865299 663960326 727375207 827666844 795327359 808216995 359518203 787016431 626662759 842791807 596982358 800138350 202069128 862028188 802871432 845553956 496198761 747439336 743201020 893299627 720540536 966833179 393185068 661840206 65423704 586985535 650933807 853148969 591004229 842825609 64973613 606748745 808974054 837358098 130169435 602640123 442519299 647483222 356454824 515586794 503459183 741832307 638099411 844329470 447974205 465095742 875716053 964572285 958699669 975442286 489618675 540480495 266605509 641208949 305184872 628374731 614325084 678707402 319261344 397609969 508125979 544363484 247817999 751899775 193996002 732724150 223766032 306937941 552705447 876104575 90414299 863613057 7403642 73915847 818289132 980314693 454477871 756928734 92244803 589802801 694715691 891319462 271293417 373631275 875113206 946765038 124306366 862627815 699269363 895463055 224681546 785104467 698537881 743400512 751973800 770476493 489274115 957160635 520832429 929795284 307542876 403113383 837313807 916519518 538963907 579960491 734780585 888230022 435378864 899648952 643565524 954384772 765982363 867350157 93892456 285537735 713746684 715707760 726398994 962184611 185693922 664906458 975582345 988146904 323079529 328896566 237351192 713159007 316031777 736375941 103591810 733498161 571579409 661516696 578743961 877334615 690090622 806085417 175869152 533992885 651446300 884221205 129613372 417382121 671079508 933239280 66237380 658852289 512631510 892572162 279487463 876780149 953678106 958096586 735477742 816006449 754329729 935869041 290721155 949840653 471732746 908288073 147553980 261494440 834043784 892205819 425836842 835619254 574514909 838173373 606475295 625232933 500505944 545885905 715777146 718724133 982378296 994996070 694732286 734826452 697025419 926673365 950301908 997582497 957468553 965091927 822408338 879607979 134518903 881327291 378802914 775295421 862947621 906347716 83526153 432898236 209682776 230479983 291140049 764964206 765547738 914492291 80741194 751684209 23488187 933450859 632054537 674971211 111279084 355423233 135413413 304741799 901248480 980700955 835022210 901495011 20676456 711901792 215993722 261126765 263300398 741757216 824256627 851567821 760262214 823306598 979151907 990062874 411363078 642737219 13008053 915424055 585183963 849978813 36361652 242881622 896409713 911599694 813331556 886710352 440361755 524100759 276179323 593389454 247520205 365138504 516057255 916815131 940467418 940584766 828201500 896186280 23134031 323445208 814939565 901800107 438258819 544401768 350273309 703939442 622769596 837027597 213894603 335749301 562158220 633460830 925574465 992778768 406362327 589194959 769378902 791106914 861745565 898181350 155299642 203562744 518027234 754665805 827703786 833990153 174278455 991501972 212916120 236309891 996417875 996810516 754462633 995348025 669236028 889309608 921140067 923922121 30048292 462524120 52170904 883956129 106305378 330378849 9272414 825497347 734739427 914745132 407384322 515893620 607050829 790594851 811868123 852073069 515269562 602984461 118587544 884840285 64777492 474123179 533736999 707262041 10847300 230887671 542360465 746641684 102391424 804556879 934419291 971922546 42286715 593796130 425625881 893059213 751586032 815167059 965591779 986712824 873045145 997685447 16325131 577131509 363629182 477203307 689581229 718184791 265514809 315304689 292087370 512400629 678113101 718010800 615611063 631350964 853554703 988955283 1278418 560986713 373042181 864879218 521528316 705448089 299684414 510028688 151934756 466797451 412101847 501424292 250546506 924695840 754050181 989650027 232682301 888052316 221381997 990713241 658371061 699084078 166077870 961470965 784791601 998480601 708630128 893520507 454507122 789970506 455429353 799218073 777744390 779354295 87343578 453941419 422078186 969631082 654514137 942781578 641845115 799048619 917920606 969708423 204067324 759885330 238782367 357226940 259995050 763120656 199717278 276344336 691125220 949105882 211172735 591063355 298139559 605678804 845164639 871429276 184450479 995812183 254854353 750272810 740381584 952609650 736043704 795627688 931924108 987788984 447009469 969137814 225815953 944078797 229507622 599823688 390092313 552422012 533697559 924012742 77933958 903725366 44328654 532281847 236448255 853057432 687264193 951200341 64103080 599180153 893240351 936440954 305774295 672307193 167135617 483700324 764004593 895011775 935960566 954290310 57078209 214707632 224124908 267204343 868893174 920915827 463555612 733192922 102371181 718749347 686806503 942220208 733646845 844677111 326345287 559103944 416183221 658928757 662796957 895529697 166237019 501924772 105723619 736766862 170062436 391536836 831961007 976048612 466745154 822122721 531930131 875312296 670178211 734217986 889011037 926759855 297602843 423397690 520614979 634478289 984549390 990341633 250301038 422317282 206542985 806114078 562991273 663386535 205804023 555154362 730739198 734842965 302079935 696883929 732738004 838281476 946438041 991043730 112308150 990546746 896101200 917771559 28615078 107003445 830125351 981172805 189739975 301354216 755821595 801530696 705318228 775504526 816255808 918018988 957910841 989401416 103073639 704984650 823166441 951420397 701472119 732986270 760112544 855420443 595039695 930720179 950239620 978060331 670410071 997909453 214587354 844364766 741715297 997822000 167826586 612999333 545869380 668148026 557823695 812682408 393968683 941359725 240344470 687132617 711240889 826387507 258879814 889279863 58359151 667665279 874564399 913037462 84353389 590992054 606373960 643806018 458594226 727872523 257980572 964100015 268009351 390406148 788930792 860652235 945599625 946683509 330548694 398671931 310244045 844298895 342436102 636791013 385559937 501737384 245335907 358312809 422353783 909063424 946205314 976224780 295159527 561962166 295368305 405761084 181040633 977683913 272305792 622198425 811435666 978868230 721633439 816875621 770274386 956116680 29494937 750130161 623798022 821157397 502312427 795277933 860636 495319977 653552286 671582152 569510190 619006762 375076265 626773167 839046852 945905492 240104704 707811127 794249574 967760441 668039193 944593566 225395628 303267260 823531580 992320841 550444502 636103880 7783623 842446286 486976876 554574667 791121653 914660236 920476040 994173000 601937503 604301772 224023315 671338416 792593632 801995149 482380207 645746200 37814443 838146268 656211069 674195443 55920932 442990173 940239260 978571702 64874480 489228400 217827052 983212116 734377167 759883772 315368939 429950610 123340253 493517205 441671829 761654456 456568719 877631450 328958899 664586610 935068490 975500902 424666087 599878320 450033644 666976196 645562933 785295881 194137806 413390392 434383819 919426793 133891946 863261929 561147776 826918487 437994069 500350027 28665251 643761500 985031882 991431808 266513515 920964984 255038233 831364361 73520157 176373796 785870102 894811965 667261048 962043975 166080531 180515674 365146183 664653374 811805587 859816137 292607144 469941306 360497372 774616349 445096538 816270160 935624233 947791326 342985091 891625245 277611291 960532315 278971969 354188701 106980968 677328467 259703398 343665148 442889866 967546545 203950153 552022902 350421683 705413414 926858631 955679438 618839974 935094721 613220435 913328743 764423044 950105054 530180707 533141232 853818600 917243919 903989713 908561676 114192483 378609321 149427437 213239744 590549030 705176579 421485118 548986968 222810959 437694268 207105628 573278444 698432103 884617921 715512563 748509547 397093245 985306059 765504187 832494458 454057887 818381317 115043856 477694530 593620487 978457064 81787158 432681153 209040592 725652406 493012537 928965555 664150629 824602907 310453550 327647498 244858752 258371431 909909451 952893328 259917171 325976043 83516895 857714198 495879713 574510550 84126143 468780005 482705204 860120919 249969105 713760901 312376966 556466033 619110157 723307376 467504844 631933594 57569734 703935689 939604303 993668716 94754881 761109670 46328858 830633801 954307342 996945835 605112632 999265028 986173227 999525438 967444502 969583332 338709794 695201263 205841285 481237155 173752739 650397266 907000514 927579325 984136413 992177286 833469077 866128813 143187168 824633649 606622161 977576142 819056172 915900037 564005174 812304501 456750719 754193255 856319421 914806896 696400293 858595061 371042479 964894003 699339697 699588985 865085710 882742151 673656299 937840691 941391030 984398130 699184930 971660892 558646334 798581191 354170150 606572868 568833498 667424839 515081832 550712447 976786400 984596274 891286595 938237458 910975693 928216147 532565540 985339250 149148835 254240498 461364034 705215591 810587991 958504009 839379425 960332253 216665142 501600713 21349407 539187506 626923236 989481270 841897040 983235982 494930154 761071266 657048348 926646069 990494422 997092773 181496421 985411794 54475360 814328373 630127969 669976457 252725027 394128026 712932297 950095423 434230460 941243402 100454968 868757067 605701067 876683123 212780649 863213309 743363596 981595569 974836891 980683853 85635916 133633147 446709218 904917468 40984775 164045444 713868133 944636704 34298988 946061507 335651280 535730621 568873023 595551824 407934118 762675222 806961153 881446683 842601734 923688387 127044950 388715331 55383160 503193678 514347813 602098104 232680541 348492207 620459225 629348705 797769286 839536753 279516602 476979107 39587961 604796356 528360618 804013457 836618750 924963661 597531432 802398699 600861548 758046644 916490073 981454695 913603874 970547961 691155751 934595427 646845956 716537174 802962371 864911970 20513397 553434099 203038004 658073881 785805080 898774713 533450734 547613203 564423442 796526056 258770265 539917747 408028681 975664094 454660534 860488072 353504273 833827506 182688522 510334292 754041006 760989298 164576012 331958668 136055871 920539237 372554447 455891293 147644522 633109766 36343023 919357872 883711832 920122896 833332538 864261379 76882512 497621241 149890873 155718606 89183917 279097689 4969695 408249106 208043535 422032270 139740030 299429523 987584274 995806092 676583302 827074570 623680949 638169066 718916124 753772585 576413320 800018288 273860986 942239531 386352818 820769779 503242780 789823405 548381530 763701327 95421793 222042961 388910058 481266332 325580486 633513662 741974957 981939841 47804420 76711391 283623009 713978646 621595144 843648832 40184438 689839787 426516127 449820023 501909688 826631747 349779250 760405663 947932727 963333601 534754834 727166281 734979179 756208403 491476124 991582676 577448051 755873921 436695464 794591478 509622461 801093536 527668146 910749522 592383634 819327050 828386908 969347002 103499601 530535061 234749149 521890901 425184145 516222148 656423901 948117858 158991469 425907333 726049131 990631614 427907749 918960582 335219028 588086747 475192355 475661723 632842783 675366707 986552277 993732187 569726777 753973753 917191864 984023099 920197913 979865735 552851701 846733660 789914757 947009065 974133728 974636416 139014270 797461682 995756237 998507532 899733205 957231376 969495724 980317536 390491274 440145740 292575159 292816169 607095942 992239185 690952249 727286599 643230257 822415928 847922594 931257875 894262211 991549597 364348531 878676036 27711460 149556094 572721899 962918931 750146091 772454504 123077527 776995832 316834125 355016347 635136741 689712455 813499995 817427555 519128279 863259473 774245565 984182039 646421722 656606225 196318476 695521378 549071876 982594351 182464049 708747232 554693613 760667215 433648376 605871975 56875499 906002478 190607562 952044139 362898712 416342048 312171187 441002147 748352369 812573287 255879057 660663627 194857088 689462112 864292857 867740434 363057957 832021619 691961678 800030684 369321235 587269939 120161639 573236203 882005590 950153389 724250137 792798362 117124513 147753370 54783315 375042177 528756854 556596658 595012956 635247604 340124559 507763377 243599953 305393352 562591482 811814680 203963772 928696804 77006552 162001890 730678980 825858533 12008667 544307439 843255450 946615233 454933227 946810827 796010607 963144505 285261888 347220674 318748671 769005771 784971435 901671030 517448256 709136084 816610330 859825474 386407117 751126826 858912235 925958369 279240217 362867184 825575552 983582357 622775340 890628222 40000827 896884576 177406285 641936107 93452870 468548425 819827584 952041299 714344037 959963488 737291962 996227145 403078837 624401237 862291242 981172472 18963643 273119331 956608096 978750001 822548133 942395080 43948193 993364434 446550942 609815787 181675201 394761588 664521033 976607986 643010237 655985988 144923796 795063303 515909944 904157911 44060169 280249396 879405085 984749211 23349585 371726501 311686795 349509431 122827448 658570306 37795800 427454587 55810370 796852012 985935282 999492411 904037488 912342057 564555503 927725891 751515213 867907968 914929387 967562359 146624667 269133608 74540412 362100796 645563889 935953417 633936490 874694931 955849644 974382398 678789450 740972624 502420252 849984555 985068420 990397073 876573519 890188668 209089822 435662943 4296836 488413079 137375887 904812321 562825603 669929122 766099894 898729490 545244541 559900620 532776257 758427600 387737568 430356409 130237893 646728557 683376049 685594682 760277953 986850485 60894574 725581918 965842649 977582980 705730542 904848302 640910829 967382234 277209675 396738361 717977229 845091508 176919027 959021004 753040300 778800293 788544589 817671118 434083838 816059443 526975355 563055149 453629113 626076702 496307443 558567461 404501495 897653140 612296707 692248868 165183100 220444002 526934488 547403335 107409650 578365747 500583468 742594418 672957313 742732988 515952012 811648863 163889534 890358299 500302978 657023131 315725283 675547190 868913114 872073538 214350063 313774749 368674805 946493010 659325171 845420816 698754674 807453738 966853773 979348164 736866492 844599256 743498647 765123401 116187282 702310567 897296795 899761678 807092643 960298594 332083593 356231753 61884720 441671288 13345343 368849397 834927585 940300452 395524206 863276093 820391025 849346355 129170321 398326503 785115963 988228901 690875316 722382025 814385259 864897491 667744204 965176612 68120640 541681596 333544613 765047562 853591982 897305495 965862492 983877824 229010057 467718707 908515921 934583235 710745252 750080132 869578739 901669278 132859866 144322600 426941321 927861369 947283616 965528203 702469184 723659414 147731900 463131312 770969441 993472233 849255996 980723908 473783209 731854014 879577584 885331420 104614327 742068554 180340248 265527832 257912947 430533589 510879224 844985791 482132041 861000807 851328593 853273265 514700450 929465096 184980872 943315077 291261975 828799494 937383272 957415842 212216788 590795936 68426484 318515087 479771881 660859480 343990621 385976488 545308012 725799329 551873744 561686834 700323241 748360262 307817580 419489182 65108492 644171784 78219469 607121291 838952077 937728989 283116654 338082146 609784121 619362631 310073101 966697461 749484859 835718334 677010508 909454442 144497014 698454151 264234599 697067893 569994254 723975898 607243812 851590551 4132748 951487959 329179043 378589153 514982990 678493185 448924690 832247088 765832447 818746632 933758236 961495755 347915178 960440366 692831343 754176413 221971935 689274489 688374027 720348448 597323081 857261598 500230919 842503384 466686680 530397964 20771240 319227954 431393789 519435763 708725494 951376711 452524422 522608570 416013783 449465840 959622941 988828427 67286480 771500337 183032983 269655294 792157719 903958563 224252438 237936298 104679730 940919302 617869367 698769053 463173028 771575324 20414429 315532554 837968697 971002305 182121397 424964790 646393516 856588767 450994841 752072541 801267960 908938129 782357193 824106357 190623081 484382629 206479356 807618374 413250381 732987626 278861097 936583681 281247433 562699534 37910301 345842651 784812033 891181986 820013182 848326516 644466439 837981491 950136715 970239518 621820228 984066079 358911908 855544096 568871709 908446991 617505453 704944613 687919022 918897654 239470676 377327665 705490672 954590537 725147317 806072139 490854930 799903787 508201064 617142677 299156116 505281813 345328947 617756930 428863509 723507274 541101963 790797166 875228600 903282539 383070871 992818618 178046440 702340118 119564238 823215482 284367762 703804327 941111340 997402410 739089937 871117763 27526769 246794573 589308709 647387906 792994773 805357147 13684534 439954985 402966240 815856050 401423575 967469856 378631206 482501906 380164036 591742674 296906375 755808963 218538111 951953919 632484826 731888305 695533325 908577327 573465829 612665652 588111911 655808137 479489202 577593169 248605490 477035239 445693191 514459239 971492866 982866010 262508201 605148789 58398340 97895360 322282857 666334524 396577790 989782697 184497382 362224152 943631561 974097668 259471177 618527288 93378315 385141561 432029533 811895754 546558389 767916292 496510904 733644663 664424010 697763807 27534774 858721447 375465672 989836952 945810928 977352243 695151324 855411956 205981039 965231459 107674100 854876276 819106198 987551668 838750550 869591807 223608749 358609197 63720393 755819820 346017202 372168862 966117346 972428266 15041623 926536695 485335394 802222120 175453174 574234736 584136188 897084229 290651447 923534759 732344502 754032855 848686868 890696544 85531435 99301341 219984899 374493336 322870175 724289265 886791642 974042271 863334921 933372515 365343415 504735251 623916798 824093303 640045484 770956930 485937677 916936460 207394237 242079653 515320837 518373174 457018204 729908616 74176966 519232224 654334972 712433379 910043514 918447143 970291819 971049984 730833659 954259902 582672967 705163100 958852795 986381960 499053464 637240468 852149285 966131522 267383575 285730682 285915517 578940149 691476426 889670963 209846487 354448148 99809102 503026218 909581874 971933627 221449808 635526158 351378950 801938270 613247375 766155639 120712341 739275397 685273006 796061783 637375622 919273698 930194081 943088139 47260700 529508335 988783198 990869399 914853231 950508945 84718626 963071652 354595681 682505466 346946936 468314983 604526053 809070289 568397605 856181893 680611674 814508975 191353589 776593187 995381642 997483757 977333313 984971378 723189821 968903679 94441402 649471572 918184795 999793597 482364496 575492649 79375961 387762374 642351189 822931766 433668335 572187296 946350748 981965592 225535354 843413440 45783203 852678937 549909861 970845493 747609178 999491354 817436082 920071249 933321913 933406057 511733634 986478184 506653435 869903316 121586419 831257059 821700279 890078969 235522746 569953146 351903173 622734145 188058325 318827148 316956414 496977502 575416886 619474584 737250500 907111242 767275546 872510766 639804924 924192282 987645338 992213066 328853862 774744172 637135622 999431984 642776007 980107798 86423416 261859137 360856727 642397194 193987594 674984192 481942807 691765094 642618037 873872472 980412353 999501268 338463313 647325405 163091283 209050883 702727968 820464407 210607486 472376102 400375515 921348957 433058901 657074689 144143356 724808475 966521633 991113436 432740465 893574048 181627233 868399985 437992884 447992140 609255287 657682535 540719239 794628482 740783242 792814139 282736067 407289973 140457000 866975712 234330696 917686537 677295370 715789249 468433445 861045758 396576096 799032482 11999887 708566297 184974945 973131395 175620030 312861317 709198441 994287346 52723270 331292620 749151955 810708656 461306338 630905108 524185510 766017776 888651784 986199541 229598305 811290916 191912090 212755901 656724143 755286844 641167589 974523527 738734319 861336619 509067571 832690247 804756180 898203092 122048353 754315306 554983377 575098814 111176906 840232259 545696429 932401503 76418914 172498854 172682349 781812961 379600856 909614236 824056812 926127775 557507028 646640910 857513467 871445930 302107023 461362357 239633411 329906615 481955428 758800567 194987030 871122022 999583720 999789367 601973506 836441085 770392424 953445479 639131268 934489941 722966769 758191424 496893489 997576301 533798415 828544276 213836959 414861201 583209858 748824358 470207703 935604751 533882050 827055250 563005019 930970372 802477691 940853021 374745150 641126854 105460833 917120632 485157268 595873928 208719222 441406739 924447825 977180261 918784352 965395085 39433697 221503924 23137160 64281608 783029669 837506602 840319774 945436428 314940073 659489612 52042026 624693546 237273752 354575439 219113763 278367224 677779313 746797726 643266175 812164257 676141207 821322018 982095190 995661210 243878856 346867874 494286772 793616585 797692577 907961772 284289598 974120447 69614927 254941679 668528224 877841526 74852444 609931752 724772357 783639192 592631667 826061616 187610662 454731127 22919336 752997054 196366702 671295064 504873306 845952765 235607961 420601261 244550080 876570801 813868212 889326091 200714745 703463767 926167955 973296151 399936006 442427464 417994642 662382375 152119255 995304103 479806253 718736293 907862332 991094533 945380537 951703921 856554433 915152418 875408089 899336978 651500644 956348103 320113418 390065498 962268450 996319708 765603381 810916738 981268727 997493190 890490930 971995861 268351872 308604875 384762512 716630224 916073445 940607803 701920407 964515841 329289740 995461246 114715784 894464235 697849594 705116796 283248344 641262375 128332602 300224167 825767279 870213213 630036868 994735690 15160641 337113177 892083876 978248236 764284828 942116472 188926484 622900032 347441609 507648135 479791818 841490471 497151994 502026098 240213137 926880537 941423114 981737186 888038330 932062004 318857112 713385728 92134789 690179064 780876453 797161898 890524115 952768242 744834983 887923477 591966009 940783987 583831738 928454960 462147038 693922276 175949015 817001516 769103084 957321455 788028117 884989923 643412133 805248739 133751763 182146384 645298358 792760011 694543283 717565676 92248562 285480441 498318353 972103334 641599952 965294953 199504866 438939600 421106854 901768061 666995291 889991228 902657387 950038817 306057333 879921366 176918852 698015622 214139462 920579870 969645158 988184252 724545064 860406947 567342713 755090260 831143977 958957326 328638421 982092022 797407274 981295486 940177195 990943406 843883950 982581645 163859241 448134369 465269010 702834771 417634386 712087294 218867254 801850337 207772707 901044654 128184639 206187429 29077536 226801531 805826273 815545114 158327324 283567003 555948144 784995908 482193960 924312236 62930029 155787685 501904421 798834567 361994724 944053099 249272226 710494174 880131061 969690449 327837270 619901348 43942361 636572376 901587096 904211635 212987577 298564897 874406761 878378684 281301104 717633541 24122035 440938576 261698884 368866530 115779774 901623804 758235978 883975470 568372466 766571155 392096117 431871328 864046887 953369272 510744457 940213236 27737813 619813848 981136474 991351917 362079634 937727246 293295519 312720382 853725699 891201509 944781518 997975498 838526454 902896787 26450835 402068289 764636811 949395965 993493722 996114174 524988538 792105879 694429343 759874114 165009504 993727150 149929357 781406604 955880877 996520178 824009841 833402108 894899584 921149861 863269782 922194672 766568895 797262563 691360717 937633709 877655507 985306179 516278370 534091274 885437852 950780742 408281420 907157604 27532268 306261751 171632 473603312 530582343 575611104 833600933 860163822 538553849 882090200 818382747 971786398 392543476 784077807 260333619 581858431 159918228 458923495 665676988 888864277 592739771 809362656 741633800 842426088 187264131 646195934 616060152 837501876 460705708 663894341 474114127 804538005 767427440 801606588 232764486 459234806 428743368 876943341 217685221 919997178 45706249 901691906 5060451 428272978 382485781 884210878 106419716 147402541 105733901 888948374 395265893 615413981 705884500 884808621 635007710 710550717 587958335 816448242 266241804 469718878 273918145 478266198 906893528 967504546 634018136 787167460 823200072 824800128 867374775 977710729 407975301 979013331 801082223 850049794 179586199 545634473 401610645 873974566 570785901 922490222 114441848 989377459 655739071 954447600 602438134 995327407 914008204 971766971 951340190 980156771 430742518 752260594 288762159 342852235 828585312 866775500 179510554 907053824 728794148 848411053 533493615 745971082 111045330 852184894 533272849 767807907 543434906 586732196 593928375 720481122 822853512 852876412 224709518 782245391 335552329 755973128 30056902 905181365 814534393 995068484 67478424 451413472 158073134 846587928 974746825 983450763 79853164 884387884 352839463 487157612 28225098 469706559 8099712 300214980 990669076 996741175 883988358 893042713 44344844 624099361 702072224 853614351 496851949 980641324 561932387 903075766 100938803 287664420 712134817 864329266 878510075 974964663 578065410 672660492 796484939 984477522 576249492 757689205 101408290 337530577 501306759 702336771 189966117 427062044 997965989 998620122 622920906 851990453 414329887 878443086 665011123 888742582 151344281 635459242 903170614 957885383 480125695 550771658 179761892 646141111 342926050 999053245 626251019 967402779 737966738 976993387 36156513 535738367 825910599 959695728 914681329 990364387 984873204 985909972 414399117 482891789 172432933 222974034 297215074 799600051 315965259 543708931 453086783 846943255 747064952 912700728 886041016 970217331 193058760 383483796 830360963 903259796 923850216 960821495 852233221 953371661 618425726 854914399 777769173 966047356 37333506 692594474 561300787 887691750 147150836 834107653 518737843 554473080 976796791 999363341 137771126 782642526 181980147 962851215 852549334 874306071 944809321 975914636 285559027 560318027 822331446 829023048 894344972 914901823 833779127 999679728 872716804 914926307 270139426 446303411 941177846 945231763 725853798 903255661 534431483 570774055 864217297 879269755 70583632 625904937 286514611 653971167 572615762 743453073 464890131 694609591 998472824 998900422 707166628 855024517 56367119 974819671 866210568 910556123 251191304 373725896 824777487 825543458 712022531 944198661 175088061 890480575 467899551 964989014 131601000 844087609 81139217 386216618 657040915 760346930 752358325 883471714 408251243 972652714 446581450 909226914 407358651 967677697 224421738 996898288 934900084 961556244 332507768 909638978 832379602 999733630 310340991 878318345 613621538 886417303 897128746 925336714 761943552 792393879 261690082 310931145 837178755 939289477 924140199 940719916 586737362 818205459 720759331 932499186 842476848 871029037 802988985 868568887 630903386 834892488 532348687 533768846 419511706 954603409 88145833 601847024 919607645 954576566 141554047 669700069 731828757 858152820 366229586 616177035 681407196 872352538 386266090 762500901 857915547 956135004 82611493 708205378 109225810 782044006 961904209 979156373 678109539 979507021 928744288 930956840 263087047 391279570 591413535 952522763 363051058 946385275 687997310 912011920 970523778 989041058 488447900 792872562 832201394 924156762 475800990 928727379 176391464 993160779 706431661 764198962 217286393 965956046 92902295 268408004 131101150 283329386 882202682 933169512 421609433 472796974 312592454 598801411 360054585 647890334 340200921 519446371 670635831 868748221 42341411 391424779 790792826 984316158 603697310 838067606 947119639 955731486 820374967 992719731 273337260 740978974 783504759 806935428 99608482 117201556 166159933 698365240 984427384 994348674 741495525 757904898 597236791 851274853 765450813 864090384 81832793 419592877 438611768 521285498 373763642 680347862 596200277 743836080 922908534 958436786 87775140 406317731 718169772 823822039 329783894 740474361 543309521 729243298 213124394 468568305 754062586 783775570 556181654 957644064 452631254 475942859 459318691 509180672 759708243 786732464 84817534 913207573 232279938 562371226 671849121 922860228 8361263 635186804 597081932 729233925 83403000 197757195 985925731 996400014 713597674 828785324 973196827 994274630 770259764 869237759 974529285 979022882 950258969 974502719 809058016 983052816 172408569 363050534 469034869 960961403 682140125 737130270 668662705 795040849 564975260 656521501 178289691 549549379 620192031 731078981 945979281 968806936 123677046 187317224 802270836 831676182 981801681 988545777 869041560 920182377 190330885 967652783 680683203 786061148 568939443 735872219 450189938 747495322 775262571 836998055 271701193 476909575 818359263 910370033 424767035 640822869 667166000 987620462 71749870 273667417 774815958 803879957 418729229 709601004 686560683 804479603 580151078 635872309 264755763 592506350 154715818 579401115 468965890 658043762 511174662 932212323 633609695 767701454 304938959 684302035 503786827 911678852 213150297 709415018 339149803 554457341 348842453 812286838 492802818 918514501 483432197 881962592 289371410 870949277 504304850 731497361 566173842 977757309 756440328 814166601 632792013 789070249 635149742 716661228 62551573 412243065 356241611 525470300 996580819 997665235 745636481 829719211 813742169 830506452 317758463 378624757 722401790 927569359 347611132 964415428 309929712 342285056 21725871 715318899 154697845 827689364 459044247 762728742 814166256 861065821 972424872 991506565 371483029 770640301 648892949 824408050 593240067 864343512 729816302 901806266 178767549 485330250 889275724 893626477 981280599 984007580 107429890 740160271 573330204 918912697 771896338 942490410 895232546 898544474 125779148 813777150 615157155 751715024 427548236 681360845 662670639 681035466 664771237 764507166 717315718 801595830 306939327 467850490 463731325 579525977 255405046 616284430 104368535 613695505 428344511 602313049 873657531 925114222 686528059 816753899 5288832 785340701 65636374 815037192 57117753 621920698 152187800 630053374 240037009 501070645 374189223 881151821 427502374 698075375 826972849 941500769 686102362 732730390 80383240 114151692 452063834 813441353 479303073 703018978 841874191 896300383 330977113 518352198 161539765 747626876 807333459 940617240 365860411 586026119 985471577 991561951 57594294 368407673 736959726 944413476 351401363 569178253 156756616 974477842 402374792 993652972 903231534 906276925 930186493 965676907 401650878 627481377 462317566 793972086 587832708 613121538 516977553 553524393 885023771 916783052 569545852 713325439 818687873 947730720 22116562 608622948 234019139 492216029 630046973 919011607 851882058 903576602 250900638 328095045 769078541 826920904 677212381 960227149 754542899 982025240 753428132 910346146 85184460 730314666 728551164 953252413 356460784 586201199 988767230 997862452 270724696 402295955 15950711 143967500 264806128 605335568 795731273 993756860 590283772 619101936 313199663 765282773 963068002 974057760 521690390 856392338 16955863 803526934 759472602 821208802 740259725 854498917 516876208 725551450 697310333 938032106 280430608 507864847 524648106 969097610 493078964 696771772 502449768 977955105 646658101 676724366 141508715 355776153 909761129 952270880 621153602 802693114 545525435 745227236 62781058 192860296 841467235 921671545 590636594 737270184 22045564 217446335 427314345 737501792 179457885 274284549 750677080 783741883 757153000 954977528 605464410 686882604 821914712 933064861 901664902 934611631 389548489 526650371 318866266 412993751 658633805 719690453 392433766 727103031 541762807 560700159 774406360 889768563 918789273 966240307 535482679 732107382 718871751 842785107 919953294 971645696 991340015 992700073 350211671 875419459 735695448 977500681 155005882 860454652 825545724 862628777 623528044 835929188 283888272 590545289 137636385 450192425 217611823 366929930 374183411 399820962 658650618 810346382 23512420 923835259 329751797 606127789 597510618 648995420 722486988 747368755 946300695 954524690 852982570 909923927 456943039 481043423 131880552 352806062 21325981 963309491 192345090 699456015 556506650 778394612 166606948 266246169 217234291 751507099 342498082 680790743 400090925 982474619 186007071 284771977 699060619 805141020 706306739 863751323 92535146 907715763 636308950 748363822 262200456 745344998 960738782 982264359 589052251 738520257 321030215 769001929 417489138 599633594 525523927 566746862 926128361 959205272 534979336 971713507 838762398 926629249 933983178 975656373 906662495 909207294 96469110 104500007 745606148 906081402 675909935 813933552 218823685 295461271 697660370 917735155 719398496 894790697 132564414 575185781 730281269 756952814 352593257 610438010 997211953 998114101 145780973 849714339 522121968 924553370 226935918 660844790 810460073 944488849 353781778 668859622 585457266 925843401 282437468 919737944 784621172 980534619 522060111 893192461 5937868 722344585 876222663 886140383 807663634 982782693 676717268 761186278 472718576 552193725 931175504 955783859 217657936 842216778 53263157 547748728 100532203 318872308 733212792 988831625 671622821 734571734 8495786 577759285 920372476 990411179 880830589 990365603 813573973 865463419 747453314 837398905 524275285 608957949 637699656 936304692 115314173 350446129 301451649 760778761 95231672 765381298 842635619 939246321 580703711 869068201 303957506 749111776 696144037 827108985 917294354 937554968 273621785 905998784 767583825 802728097 460004262 655733798 802011607 963270089 540292428 549145003 726400921 736918800 433999110 680483048 738124078 882625326 362046612 805277107 377034141 436802087 69310103 829038494 49388013 186971929 141219711 242553407 81348136 928588319 9765114 46739380 211464389 437574640 251521061 536237674 780308437 954484281 52480173 859637800 943397352 992814210 879503380 918949998 282806487 407526939 129974792 533634989 482723448 896538055 466952851 548707171 494968323 602690413 556801831 618072520 594593621 617302308 402290807 765839902 361539816 959654744 901993647 979784887 298175712 808791968 829105715 989506971 957608402 975729672 230066052 662954314 437304305 933222983 635232912 806005008 144756736 321761785 26332300 650067639 15391870 901094650 909143285 959646232 996444633 998064717 389657940 969286171 451705663 633213341 837101308 871145648 575804809 600951624 213060188 797282037 50790361 662151859 119592431 869426161 715703143 780768755 772638721 996416283 228928841 974510003 6520938 87179435 163153979 431808259 351918819 883080144 186369559 341911349 126297590 462274905 887299009 910329534 216628457 929205247 779982871 802895227 580251443 997351164 42562489 648820168 410123179 590149681 507588261 546768226 947727656 976714332 720962508 734011513 272607610 587841292 523311587 692367738 946607750 954276433 800794062 844134291 500888151 830809937 158280160 998233389 467622433 563578207 802562491 829010892 941818325 961606269 301195998 754008230 578814535 922205773 696006556 707604501 339181007 503051335 425403075 832894694 657560897 745534498 211826925 752300337 404574240 849011735 285785794 851943463 420887439 499408776 367367122 745814584 815257936 975212965 533318123 885776822 569161608 775477345 953814099 977064655 734908375 971197011 926760935 995526104 916886686 943954878 202391765 570048940 666246883 857707754 152266176 292007402 637646230 672704922 879087331 902319920 954987874 997900356 590628687 857834344 156998055 412424928 940685570 975280850 537472201 761738900 87208007 521865224 485269013 776246098 579540217 594496538 474904609 789843591 157645044 362303608 572651682 966883863 852002852 892750883 820018762 865906640 895296740 976476942 222101944 611688778 412204542 422418862 791612766 870647809 44290246 443736027 517239003 846570163 37828365 681179716 987063584 990054967 795126843 931075980 612738142 908458355 48151478 340458801 11712971 726437954 123610132 687161115 955994830 980769067 931833161 994121358 401724662 645613620 865579139 906709257 59910230 954855440 174831182 631911846 914125434 993215187 653048927 691621642 963839203 967521941 692724034 834212484 225759692 515665017 479776613 973831152 544891292 944592411 98298178 317726356 954805374 961260692 863951198 989715028 962987705 981755007 22608471 80151813 852482328 924743980 47489039 859250509 127075738 842853922 609498434 916359600 309773513 763607573 548439488 948248329 976970363 986621935 742809016 828617905 369044584 720704617 514972334 994093435 230218447 577133954 270472426 985609416 553647203 850980043 95658431 163033661 563123174 979319183 257545221 637810160 353695656 863065561 572156375 598453755 71644093 659909315 71738770 311643271 271318597 706596410 521999007 682269278 135647493 520070320 214502301 794213359 684476485 808829262 730865285 893802774 716555256 768898212 758805044 847704514 787699712 803016120 32072172 188506332 542641663 735934430 269681924 396067028 883292807 908910394 600844007 904268412 938184484 970855069 568502216 857500684 910610037 934409915 123665995 627692908 647612775 827056008 19149354 509000978 992744794 994014042 231084360 979609187 982173861 996806523 486460302 731516431 595873881 998292106 919381964 967553097 113801507 446288833 891295065 994063940 100697373 603424096 953441460 994926081 294167045 689486295 853571839 990923455 949550002 963697142 157582675 928282532 478706281 615716929 228594270 695923881 795445443 890593479 172228464 982395303 812874496 913987516 162329509 759108103 765924962 821030563 344408212 696049813 916844084 982380206 316391580 853609396 326521654 663188464 812527656 998228816 991510897 997313592 463087386 880337597 917508454 954784141 133013868 556572405 820177951 941026840 652161448 796341965 833671622 921628684 922973776 943902730 952779631 962349354 151430907 391440782 222398228 760890130 608130946 969573174 458755392 917963410 317620428 672466011 168409728 474203206 658387415 982231853 864818482 963101548 678768110 860353626 948868991 977711338 265621065 627459551 973225071 985125360 602162650 998248039 866778163 890537507 455156527 653103603 466698029 507544580 220034547 979458108 605718723 840399835 6629853 401431739 220516133 794035703 708738837 958704296 661541318 821000015 442984174 753541088 138863749 362549990 636323465 855599060 323208259 656822301 723137769 816408081 783741200 827180290 426375052 927472215 598091236 952223681 306270535 457183425 976285292 997149417 845063928 968675889 848611279 939277387 28129699 319846237 822050575 906986191 486497316 840309665 734229061 859962592 940804794 991439170 862543220 960880157 97521686 491996965 35843307 546649695 628705174 745475607 267381615 921376256 343155892 898554878 207229784 681851779 962374059 990289564 911522865 974244844 385262179 915732720 172177395 324366885 811551578 967552828 967267362 998577884 91889153 876917771 582468718 690081340 248296064 851707286 386193537 636717055 533862339 698279862 634879520 787161169 155244136 451656335 480889669 957183908 89914637 241371283 822264393 989108774 854399221 950931204 713750768 964616596 286740793 465402516 599876326 828857695 367377057 787189154 202856328 854943800 779881932 982952818 428070737 729835457 63860652 601787309 534794861 763288937 506356307 599365673 15674739 423352515 292224498 900396316 239769387 465465286 843407476 861725795 662872660 882036102 59330055 717612254 270569864 816171167 169935876 356898079 280795033 983711336 835161053 947131488 604360958 618546084 281227527 455594600 657686612 751641312 332020481 484928717 811589466 847489525 484657720 675634629 901845191 981826999 496530690 681958012 995217298 998673365 375573809 863828457 572368706 953955634 556645692 681383537 46490887 581016680 627637120 664583656 192977676 442014486 859663036 985308968 652815411 769935793 340245930 535325104 725462019 813580707 782870155 811581332 86868477 740676992 672987881 787148937 448218929 517671208 758141545 796889485 104062399 924786907 23213115 548437542 196174536 990801393 325720664 644955941 595580020 726179057 533963939 719753358 919006639 973175403 216411238 369407114 126846778 803199386 181237627 558761793 537343054 980988449 27953021 421719776 814185860 899207606 834627969 890715699 147429582 219729553 437164331 613089536 785339741 853398803 53887748 228737436 476728366 484625426 387859943 649157444 604335663 611245901 497483035 619610242 247633240 319207068 606978473 935633350 658141145 807723422 900784091 974299786 115104399 320513007 96041963 563608282 230547936 727130843 599271812 992828640 615880211 851296872 725707824 734223319 870755836 941796875 934126554 998496760 256926856 286583695 852843111 919079888 680940604 930244140 567464350 903957849 198918213 952039514 989456650 994109919 917884825 957084390 674626177 850000357 197909282 341119824 648876447 955518834 218562842 597166507 422543074 994243263 482478389 811290459 611030973 802354839 228142499 656746092 948303456 999625837 175518228 728612575 398019497 919082737 921636861 955712359 485116759 612983945 151406219 489722197 319082417 874297285 336770735 377993254 120662211 293937792 357407457 729769120 33165341 515083595 219524644 857673632 589464114 821279351 531604440 567219564 121139675 962750840 984062610 996510987 766701030 999247844 430792481 631335957 923409562 989365868 475484679 680170696 721864262 842052826 480663023 980997600 255286065 647133498 102113299 398622690 198707405 359425475 482754435 937370151 493034333 901228994 958183372 990065835 254151988 786790935 408754777 807818902 55328007 119597010 145591628 741364864 823447488 915564429 473683838 804172318 456617456 852447010 480179054 780113417 540982658 761476518 407715770 656053065 711359792 795009950 455150437 646011471 86493028 942013799 277472909 975094513 714675311 993298107 634090162 748141208 114963674 221736313 179834340 674820658 78040393 120151967 522619433 895188854 709144769 964079071 594095126 704775227 547170553 786761016 266529959 402308722 937604127 971235311 276489682 737580731 147675378 376534003 776043772 947882086 741573731 842864478 555650992 762291602 157671200 663060104 109571171 546549924 453083798 641947817 858890787 880613361 772704656 916740611 778859808 963799837 694027261 782345026 818688036 873023959 603383599 824014491 792477019 826083531 934061478 934927117 536465297 570103498 663564620 962626966 368083726 711953821 512286353 872279356 125952593 794208531 878020647 893561888 318466445 874168966 949225284 995740825 124252586 837173275 527483918 899417616 902989080 943114062 793236213 925533269 41883365 608543419 258127671 311991150 62530224 134326434 275862390 923103506 892978185 918202645 862760555 991712102 867925184 871963464 173660903 696072950 845093644 910581071 14193268 999742908 245706726 666220490 486040484 634191579 359635604 817715154 873593451 959093305 495538100 746503005 26608626 296410539 962828863 996741830 373867555 786842312 241945857 931697210 52802735 287103146 554682149 799793515 243852167 809791192 860724677 878900665 214758557 830883821 823046635 889685868 581398387 862130648 125335172 861200153 639451699 803178296 55638145 787488589 704355621 962564631 430909529 669971578 699596199 868918729 496902818 612666981 680714112 815945179 95844352 520192931 395257255 726234956 917242609 961447814 273599408 498508819 105512304 977459282 654022029 929583986 552745461 612289270 54393429 307648916 145549947 891399868 789280069 985728384 140178434 692901409 369434800 391515350 871127555 902961389 591933458 945454754 738974862 907774299 409846508 608116857 4484312 176753884 968144319 979130279 24492629 292819667 748270470 749039324 753952768 868223936 387754121 624987848 834666121 884961577 156150441 351511303 781179381 843337562 147173158 351121706 909350597 984510193 225704848 650317247 889181265 890459920 336605383 412815579 742858103 835071168 752107335 771058318 21745839 974984134 84692811 639006962 928563694 944598489 56915244 447042926 202913917 777475947 866244400 923448656 206420634 473148551 376115361 760512434 299769767 300013705 858599736 975448355 942737966 969557739 932632841 971951208 368652464 770387553 248608373 370342224 27762738 272415295 690981222 696694742 534765362 575269206 630892144 918368758 8349588 346486231 798699074 872720363 513767479 764052024 205130695 275884243 95459430 350674469 933354204 975459954 491520289 745080983 89101217 111034167 100566197 108644487 249109903 540922198 300852847 381852810 617805154 981411555 251956128 861909867 77791628 293893880 135514179 179728199 152973758 372754983 668116795 719495205 936511888 946754836 710250270 983989295 192757756 231671362 330495491 374626819 16817486 950973436 63341255 700822309 396113829 928420648 966192735 966284931 392911597 859507977 404105964 451216526 607546578 836988679 297133864 993671751 258065699 782550969 116482315 617241791 762613554 876131700 932869496 941189932 304413522 634210154 771702528 916290584 590401110 953511491 194324139 781180549 477322057 973521853 416811219 476963788 459288225 875063199 981720742 996432808 7396155 618447735 857731722 861923946 134397211 148657067 551682498 810086379 480449463 771234193 7061155 221618106 191874480 591150297 439045090 564360239 418006336 997165451 399747136 727937380 613096885 814309037 792247027 892732006 750198111 959115155 745378386 878766577 922804634 955652868 800806560 928100049 843743031 845297502 541729626 870279894 242695240 705068186 822482236 835903914 674503242 955166637 217151155 737184535 949275398 950332574 301788525 767822208 211885142 974658393 186836664 743786717 988648852 998698904 692763964 774988967 818030592 973859803 261574501 748792118 482607800 771518031 642961138 916264805 426736418 605118102 74216540 740901333 113616118 898452862 229453919 729169480 327586633 595676567 845638923 853246592 972236815 981973001 104636678 810658749 984708770 989931006 780535587 783209710 567069051 733777874 731862924 860371337 154617074 353028044 2832747 458215743 718178033 898055519 567088265 808162687 938032089 999461432 632817154 944503685 427520515 884453670 977423696 993396712 838012585 877745270 381251442 717280726 933805882 937413206 219036040 430499717 396529731 683344333 846668043 965768601 491267560 596689544 39365583 39978729 945893988 965601179 332199935 350348746 151027458 173050287 334510341 846975088 186013895 850060479 716174753 800233511 305089888 880566820 813118024 868024204 631234922 746306426 747127841 786357874 382535999 788393292 871486931 950514930 794362709 972808239 195022086 921232399 212788284 290041435 259029929 368333122 569863399 940364276 138119490 326304400 285877741 767632625 893037325 971651222 794880399 941352463 669370045 702567569 7621172 990925888 354162433 749468223 480140042 538851308 25193600 467881824 884877536 893027692 923450257 936721103 561417769 627296361 532973923 646537967 609116642 783969418 158996992 819937472 62002805 760610506 65210565 757310756 179371689 398266339 146413292 175972442 510258061 844409570 408324061 468250586 105492519 889548562 106476372 766028852 166715012 277964725 716576351 871446642 527236553 792769671 909288669 987773953 819086768 940167210 195130974 341310335 582216892 650140202 849428077 959232111 818690011 856825901 935115745 956966659 455694261 974675949 566918236 843020373 530410580 559879657 640540982 747220401 698431483 763073120 539817850 749787926 104010025 265659899 833195950 930779384 163491632 640655638 581577849 971273559 394726795 838772983 675133685 739084990 445051700 918851479 398625628 601737545 402797647 481327644 98898716 497329084 604414798 611158184 362834713 720944081 333555138 985780476 109956586 525614859 866193280 969105757 363978156 623461646 388680085 817995983 91019352 469046357 774225421 930378669 551106050 988305983 537012000 845894496 309649974 854861191 551284795 894487843 696727728 699422064 202194483 326770044 810642845 924443420 268597859 738585778 115437722 678330384 639614317 995229945 765841581 920458283 782599686 995724393 967822680 970065765 388272032 654930703 619500726 930316899 407479980 689507624 567894523 997560495 84142493 196272897 90704257 675354884 721019911 797909778 736753951 808401878 428872657 802374097 312085393 645984630 840975503 934493887 82780830 879316777 630707388 821806528 498006298 749389753 833043024 967585266 163161046 749576651 577747720 839676428 632441968 902777856 22248110 650752412 840567925 848334718 312646248 902894742 782810167 870114244 20883406 40915924 724881907 858574743 718908833 909485621 59431179 929726432 304653358 577260122 892881393 962706949 451942798 714197474 918798474 949017956 770522624 972777589 497823278 598339402 567674523 800517649 946131645 965992041 445542775 741801725 715875196 828002461 750010723 858833977 865592367 895768169 279016076 939591725 322849749 460291591 732468133 936250379 408192428 891739346 575329448 828556196 479483595 497752820 397376962 507989991 509252937 669884187 526093075 966890194 858541091 872124794 227411826 603075633 366844754 705159448 827673846 864449217 972462490 975352230 646784348 752875850 494916719 609985227 585770724 652276321 427637531 764332270 322549574 890277964 853732265 959265217 402795448 772978624 18765931 905090933 993025878 998156356 781797576 903475494 11313031 354993071 612754002 901239229 742129775 767760242 274176335 453859083 367546837 914984615 186736809 840676261 841992833 959172441 9090447 946015002 191324953 599581226 102184687 589406433 651737619 874235922 988128437 990361064 280512798 321162127 621914303 754943503 211771809 767907491 188963549 728566313 634683019 895793365 913186061 920251634 318662905 943431646 729026569 987349748 143108810 923948433 847345001 870715480 370437012 630484353 17593245 553047526 745476928 779175406 845094300 890768627 452510980 673912417 704338623 871030174 102096816 794469348 418040560 982855371 277183838 539831578 257220963 802982982 331819740 956868229 93320514 487413168 272938917 448187766 352497814 778966064 686861277 893214196 234081583 527357936 369060086 740548536 984322072 995859354 253725855 724417791 706912613 965895006 313944080 537712130 802966406 897677237 89370794 613601189 798534219 819429560 146770141 559923123 454719376 661820577 104628892 382320417 79463315 933636261 247439373 425358368 174947286 391455625 682671223 921829441 654616353 703740629 896912008 942330903 540260195 734747108 539052400 798825022 61568311 617895955 310246084 465367667 423461882 969250880 234907121 614756788 779540258 902831604 149989443 979007940 335399966 612974752 250192835 629953470 603178798 763514621 627692243 636951247 524342446 768177872 984292903 994523404 962940292 993147785 502100940 899967916 595110819 900405974 228212910 735806827 104085648 210827768 419533993 435932659 224373865 651398733 778879544 833022817 375305812 550809721 402378796 527322832 587770034 648811089 668864434 796401376 736614664 814368995 172302330 728819546 888192431 987018950 430478179 934932040 157440579 509752464 714649334 819499971 384182903 515021512 231623422 359831386 867916123 906561403 130427005 551072320 218550977 613420639 949390512 965652085 314783584 848074997 589283147 682951787 259678377 566174942 651602249 868572724 187953980 549539084 479031616 513562850 41947467 518815410 634517908 890581417 919135690 992541362 34618388 96188056 617980741 814379263 459360101 474668529 898902421 930619696 465601797 727286974 293952808 995753816 337849956 682089501 523901564 855998307 222041811 437497490 608610416 774192912 849231436 993511198 568889842 840525000 533157390 545289160 419088612 481448891 993265039 999276895 109538032 706577160 428997017 861865663 747688433 787835149 744078746 913902274 509504803 584954655 900240353 966984412 157193425 240052195 387890815 753772295 815310188 961414390 553061999 594918501 655769102 975162411 123695098 441826775 273168401 390580463 705403812 895931746 458454238 768741152 201173264 647522426 221815141 861369402 491950975 569901459 849511991 956712449 128220885 863716290 259825562 791611631 492562957 853066825 465805477 699456635 285873388 386527361 174172927 523645440 115253185 544577082 416232114 432709693 731191956 941692089 993417672 996126404 856230 360664767 261035910 773890996 706737226 852582952 916755344 922275980 14477325 392250057 105016881 628313313 802959671 859507623 811386250 859281172 305301029 471076315 282628902 992121575 913518252 947451148 681947619 782767033 165118030 341089409 404446265 639479978 428052180 819883980 14102088 962835674 323751805 970213839 327822636 776500563 288718660 798727976 562215104 682696637 831528203 943666823 545997719 618988916 430655353 469915688 923283213 997252680 384044443 820453417 908648755 960760170 275360147 633289078 644221009 929931623 616228478 779268888 94533028 471229261 899455078 967726840 189547558 195278833 192970724 315414272 384078180 824391780 114692823 513831381 611111724 873169277 182668118 654174762 396180760 660862678 242056107 673488856 730234091 861018124 3068463 987433241 165683648 473572409 847142587 974517252 93393190 935158401 3497122 211484773 233921820 860632920 209286985 430282193 817260471 889565691 81450790 481263950 432967342 926007269 796083448 981033269 350456541 917743970 872880523 983602290 910394765 928977452 731016960 933899352 570309496 761287233 265604289 929987520 139554035 205541688 456318694 532863997 989481097 994772264 397838455 965639815 83744172 574395824 346204097 879316081 708150904 934912663 629967370 958000014 524230142 731975552 461489422 669901739 589843598 621542954 95262937 348728490 840481677 918382736 700262242 806075721 868771392 967911946 318652728 760619097 837337153 994762613 537566872 704710057 653284242 978600550 273028375 304514701 388473024 670142884 176825439 249530528 762049279 830861379 366071153 655491735 392518320 821124826 103675861 512344564 397181153 759988062 626460698 732553392 567738153 607166111 773054306 940293706 322590602 743602209 616198435 775049588 534353556 659937826 78668273 475281097 364888528 556710298 514476715 655875461 492465661 775880732 257228281 449335474 648677981 927373513 216337434 393745104 138045255 292439512 893659997 919027937 643117280 910229280 250552182 395163770 549711079 765342026 630814113 753608592 414187291 963665170 666531246 843448494 72281264 855321706 634140055 725638136 47372255 991129597 801535750 900711757 545356326 756627122 149659774 176563726 134213544 876261937 607525967 654378948 490071661 751533558 41966779 535662887 475854339 905331632 15237888 972092459 245800739 380617245 369662712 764222183 823619416 857547824 33681973 297154130 171874240 416229277 967731792 982465541 180281280 932655562 69192773 152648509 768519155 822223686 862467296 916575448 963821411 996168071 702775585 921145073 73792910 834415177 826477408 862705319 502251766 987292854 987427106 991539502 728737256 804550170 247503937 315482723 290943726 648764554 916540672 952779908 898339691 980392077 778078043 806048495 764144310 940064882 236137628 584177850 212325512 374089246 524266642 661794941 304146053 478631176 549453004 821645134 206061674 363415655 615592460 961554343 290659384 759568832 202619434 449622286 294030455 618356879 282131148 908220119 976522670 976865254 309756858 540724468 673093814 999327208 358502580 824127925 219850440 514811231 215588934 841833411 678188468 810665243 821331445 932589948 965358309 999073820 774987017 895666543 579752963 774501954 546221856 922061059 92530325 700445356 748341375 970335115 47995712 740972751 449501028 880058136 242789396 555674851 23999482 294352144 279317774 284185067 473659401 775319845 105018654 816694198 397563533 973035605 95294442 331691404 38000053 109971845 921825675 987759571 13162157 222757942 747761990 793588414 232401503 450934263 353149137 680222638 101019735 433605986 180848250 992536977 664690581 912371773 845976271 992171888 313789491 865120010 561690469 713149050 406564214 838189014 542057469 855913451 137040122 966185014 465272164 807447390 836601372 941066874 807642051 943090440 155075571 553575122 19561530 269761219 989516960 998856445 67238342 712324040 159215655 319704793 549637342 984134201 332793351 882882842 75071610 943193490 296533566 445032798 926324347 947102864 605035714 707071651 723977223 895424824 373243850 397136223 105461808 814426129 971108609 996634415 242117973 382752375 612764166 902737630 125348446 472705611 165741750 709114564 564415780 838833185 411452317 565761448 817522493 953039318 828648783 880242235 164238220 637654837 292468596 342893388 175971739 992358234 19798161 890167815 677411863 700657994 151179326 190252975 732312931 970640759 762235296 770823853 565473258 935832073 715660199 781061320 803075440 819641099 490639771 895327712 359013693 988606044 826464806 861725433 963726191 973431764 561940091 848338521 976827874 977568380 590998895 808300060 383091176 611007229 205129443 927318035 471494885 515537332 618031238 930689912 89093408 95816772 525943593 570595041 436132371 485732690 445303143 638621685 264111706 740533790 494429264 786235633 954576496 973755203 73978752 384617825 664895806 832649398 164204166 989478943 182751505 732229039 473265760 701373441 293188689 637066358 216794404 458624495 369085104 775463064 296434132 783305329 485050280 743042854 614721479 960846889 802361489 919617201 153482288 453746230 238596203 316312939 196174781 725498791 681462296 813320581 903754139 988931972 933851573 987442448 436046959 781302292 166776072 348580332 683192627 738330533 407933745 543852340 358980542 926150768 403463636 476871919 258106239 868667554 592277605 604755904 300688371 720939368 548481142 666288939 726594993 959996405 317951606 814953116 179482782 429254041 468444991 906325132 935559190 949408857 422472177 697955235 168276390 314582659 157542591 581248171 523637944 837699074 782502527 836828691 244383941 655812303 247779020 862531299 139621250 277516776 885881728 959846357 41559509 277505037 686340502 867226502 297142447 442550036 142624991 716230101 993633925 998936311 231671230 555731063 846931065 966804960 47093297 649365655 256112759 447345772 677860329 903201814 446817390 509366985 309705452 617229960 406630987 714752009 750102268 874177049 118750696 216535052 268555043 596514877 915882285 947372477 47665746 550229188 709243216 969231013 650464307 829482397 679735182 786204637 363829100 965888165 307705910 445836133 962804389 996591894 798041285 868163378 328771726 804499638 804830500 870714868 119816961 899613771 721285608 876517681 343892889 396389844 82124923 582158994 336188269 415586349 286972142 298698011 665697635 847784535 933233057 972258406 531620806 987248890 192159262 836936520 507181936 897256286 900865531 912672662 532884652 845447649 964033178 976085820 485924722 940069125 749348066 791395108 652846516 731074411 596777399 659701154 866155292 898066561 23285112 439588327 945126020 978282169 450463688 646872439 386531753 471230923 792160942 975659171 268241786 598969325 829352153 945039451 567145729 585832597 244337010 664667320 278793371 462675375 893269285 974094975 505089711 629806207 894165905 994323318 507634691 849850589 282016185 656873571 436825561 684780942 29098630 573398092 782230809 946468387 695161984 790437215 78720581 422455168 294572405 930545626 887695686 947702665 296218246 975533600 173205205 714936207 876141290 964216114 614009868 675755945 129636178 495816988 368381716 965080727 450681792 794992956 875927975 921780028 102676879 990393725 592642308 863701342 217015631 660387149 290184629 320793096 456927471 484579685 556296410 697474744 651400700 974702456 689850401 873543552 131599052 641152792 131768351 194602494 71552164 839969410 94209472 197300024 809781832 817785546 292063925 367673056 482696191 808004275 900229969 997740896 362132964 677210001 346275394 857927943 845878887 988702761 492599589 553401252 836887145 993700553 551402084 905063581 772183943 932919327 317263452 959167287 637882662 929208545 451913417 494758003 60089161 503609375 731940374 789042029 4113738 559205640 929888243 939926525 406331193 968400091 995654718 996321477 351295657 710239353 64605381 922061125 677241863 732211146 428710022 707204872 997564766 998763462 299376370 415736897 964753999 970300410 497428701 624508332 21642549 691004139 382245380 555151101 22416852 445836181 993611152 994053378 698404486 735405086 260186943 764547497 325080219 635815791 337826009 771621867 380951726 468407824 14773283 740521444 236990271 239068948 845691308 949162118 337454857 889416711 175166291 795932450 289292132 891815692 298562486 392671147 727706895 894083813 122620941 790568768 880048760 988591929 391034142 734517675 675770647 971331875 147210217 552993809 283469015 297957863 738384068 787657096 550796386 668907364 221925944 425597203 690974679 779184614 383783011 918945043 289259647 313153577 849286170 978835628 697156900 716039564 663016218 982765313 409450521 427937933 323469280 836556006 921126303 942336619 587813394 972678363 769569742 881889870 889909809 986570117 321822079 341255649 509022932 640331389 789997332 885729428 201918475 630383351 689050968 832921382 562952493 579722051 53469717 748557096 918692073 927190128 127926774 475046007 659360796 968865566 445072679 783633894 690352864 889954939 395205746 815302381 882347938 988933434 201143914 389940843 561508528 831828133 461994467 836359264 197405278 960307008 884535767 928396565 821140590 939293757 2398564 579320330 182401149 533042855 4554964 174898031 454927238 885382187 151457848 376213215 737618062 769431204 513691328 535706095 488563265 720829442 487665617 724189229 633346576 813286054 557416322 809030364 568189940 722663578 120013099 471731978 39954831 230984701 225263433 899469789 461128570 622685162 328466303 596335064 244375878 457639097 335029108 826753404 103811623 718598985 742310252 870164788 296283851 980426139 765275193 924208121 176027114 425770307 636356412 753378532 508497609 556194188 555541670 640405962 97485118 235447761 27667612 390836787 156415985 172674081 338075471 450387211 634946374 763225310 922244102 988816223 845188937 869558974 530224476 837285124 558111815 722580683 20694536 929698839 619350860 731301282 694201976 907250861 113489478 991264047 410592771 817394985 272867907 303741030 635818988 876712186 34019841 815679299 742947906 813663318 981362920 986942293 181339745 975621253 663521662 728722644 529998820 795974338 252378259 640578213 452988526 999913142 31065228 105881315 612277356 704113672 24485009 759458784 642879224 769660168 945843412 972314375 592176468 794460144 675265785 899231294 675609995 711915317 30451476 339721994 739799194 768277317 354672429 960050759 333882231 774744197 480635335 926709806 797236833 944502313 499372131 867654449 88588682 740045621 108835611 544742017 351280724 607920557 490883905 696238034 472877011 623318577 275919663 470280484 191450488 541239175 602056844 979144809 931873252 932450554 391045395 505898138 15642797 501243826 578290612 597835798 277383072 958550352 870518571 962746664 82880303 837243251 783404626 957798041 215226549 507448877 8744735 326878901 915690757 960628583 34865806 895878769 296240613 683703666 442690478 726081430 769624032 973407385 357309200 720256517 685640182 898129322 208679009 779219981 700242723 992250386 392092702 888035263 372326575 596209966 37350392 658203160 912041485 928376117 495935770 564679538 696575367 996169050 74708112 105921632 635453985 995037523 499472601 695888078 686802485 720882284 370979509 894070876 254187498 659771347 22626175 563657602 275329812 367516561 107247085 528759003 469101173 816988377 476306455 708925988 456757579 533811557 730933564 764926675 250827115 860865700 59790155 936052564 359043114 709099243 411867532 429554477 810717805 838667723 433559577 964752016 239435617 319930421 390090736 966790934 708732315 857000790 540648219 841985497 896945699 955643506 91147436 655300566 122800659 252977556 187652615 492186269 269846377 997060794 831119516 940354233 727197578 795866679 285358781 787844026 184178199 650243338 156671249 164721367 466812195 968372245 674624556 932898705 139533683 361998251 377802660 496840407 772111649 902215533 859137879 872613904 213791796 612485285 93300923 567002153 202129271 910357464 729958238 933265184 232937199 815369894 949407832 951064012 799161894 990673719 10427830 654672714 673969754 941181931 566578379 919989946 823539443 902627950 66094940 633857614 888724986 988603982 694190804 819399276 502729083 967352282 611351066 828239381 959873674 962459289 339918626 561792389 535545133 618112861 833602428 835303568 254417534 698301053 939790509 967289564 967993944 995932769 939576097 964309538 891399952 969746048 855401490 974231567 191203849 254192905 470519953 872363900 771678469 861928029 898906957 994968572 395657022 797373907 186971437 920960278 250773317 673813624 317192110 872440105 756880744 806424233 151298235 835734471 682981644 910675963 884452406 974992196 470948365 626705072 789067069 900081223 203817402 720317998 260617576 977569125 506565796 647888651 417946680 662488200 75227922 373776949 635189355 937344425 435721036 995479478 78710947 967080126 261448650 855800848 317650374 646512724 258955406 860299128 819393856 907492995 380193129 905522942 664878334 841101084 150340702 845736194 387324398 580868902 213155778 420794436 250804335 630024780 278943799 366398250 293461317 765806017 574047695 724347302 688043585 823557915 336804835 630149132 511101302 556657259 223381918 719732745 35175765 851532352 502605550 650334404 248014523 719001652 501298644 710587189 943988690 988892153 655270904 804470332 136998990 540155772 415194042 948353406 829684515 910977201 127577193 636282076 137792595 920065964 800506295 978032222 258782411 897824049 559067522 756436778 536959116 735753506 884247341 933827063 736180926 920143866 721777636 997406863 326758146 482573527 257661761 292002944 537764818 851342551 855306555 857966935 794011479 899777046 452714546 466088080 451267315 487314270 410039995 465598563 134152063 354521214 355059201 711560064 461450138 776761163 11831402 485444755 393917915 640326933 298765929 727382981 610127807 648265676 246518668 318894732 101048244 498810075 726028103 977839124 90560403 615704475 925415871 930160389 987115058 992063333 725569660 885774488 982623201 993233978 683347695 950609763 245569034 543692144 201111525 980085175 541846003 630111288 579785118 992472877 381946189 883044501 719657385 900266748 209976027 821004337 228470089 757245856 629051052 749123879 842368344 980107645 694782338 733290028 698904270 755654073 632385235 984159668 170637841 877672378 219927251 378631893 59809839 919545271 983871820 995439797 124463633 147218267 669901534 760612057 795080547 894607092 816912002 855674338 280950744 744991900 931366615 972968987 724824794 737576328 672604023 675002534 732855943 776273426 250071510 836024151 26077215 726933817 490054694 994099263 655074576 902453605 798633043 954625601 508032953 656127187 710851924 917011038 171294895 599874910 780803407 817272994 105056619 133511616 237515622 962463464 789027542 799916077 878205923 902713944 48516203 699175815 10170689 929265459 353678985 896779708 611922256 622111476 169479944 663941917 752887770 920426310 840003227 847629951 501248814 727754886 215890398 947158273 8851323 134694113 44252152 363317392 501591320 654873792 795848101 967005842 48103782 567512921 783136077 962361332 30194465 707651268 52131914 704496005 74651412 918248394 134581094 803843912 81417888 867595837 718784167 951108928 737688533 863902821 655938883 814975846 994211618 996420084 55959821 518824410 99765922 610405377 404271113 695850524 829623255 923765425 864284942 934167972 891330562 934695004 254075611 820480899 822429545 977582684 938410348 970560024 35336737 673504611 145851135 184757932 67368448 118111609 276289201 615320836 187446710 319152146 934076442 991227249 721054523 739815997 115507286 782690896 694606395 820326482 404880720 561334210 545496353 800024239 944514834 966334203 508216445 585732277 829861571 865732896 67788779 605583434 30494862 134968216 425592013 901972832 564513308 662094889 627711907 931404187 521344339 536197595 203329960 334731660 155258177 185134013 737375652 965979956 444849181 555144743 465955217 595018349 690669363 707650850 815308001 841405440 795590296 957443260 551032008 946639204 484527107 602922858 222002663 825961844 169084123 541818556 174577692 875258741 279725378 416901391 549217103 956963487 454963681 786888570 554890733 891247261 821852012 998483059 429578559 485781058 901632020 943605338 140731482 838746565 219051482 503871121 102711652 822463806 760401778 855153999 712849098 815289461 467104301 689540434 912040584 974171563 133261400 941887888 734389344 964101292 790072573 836303376 480508577 659938882 585116538 977906126 697348566 725230681 14482667 822592107 456220990 853926881 443263265 471596803 595539624 741587846 895734448 964068676 413012994 812293367 470095391 806070334 282019552 700734573 161043598 539245957 945143809 957186936 564479243 924615891 965587752 973814554 792539059 861122744 912647553 940391999 907770952 998669088 954261139 990493987 206386731 607566172 802442022 921582842 244495700 498892264 232180066 620694329 136423240 614685847 821239310 966818400 381272211 908331374 274948953 630037256 436502904 968711424 939053562 973075832 331003197 958353561 429674071 755378145 920655555 950490389 137906962 490602460 786738347 789595766 705125834 889320338 230530129 845869873 637095772 657281078 177790970 939260341 496270309 586081493 278909945 588813694 578789225 674392531 524202333 808203609 161626745 756405984 226843445 547395044 181401131 677164473 293299521 738835142 375310807 593793811 494304714 950439698 641694925 984028056 503358146 789717363 224239490 506157464 404007067 682364674 307458386 576080914 732480795 911497960 851054994 918669045 612130931 691681290 158210712 203684178 588392109 721982241 83013448 710990300 549917058 576981227 645150160 970150204 371853114 869620486 619831045 689549016 706563416 708912396 301168183 381388078 380085291 441532075 4649007 301345269 858169729 962025650 264347529 576579826 716765118 928316608 546654017 615663185 736348244 937364857 610426043 712180427 521469154 787093574 644626864 838086100 392656383 630887048 173783197 429084433 803552815 840894040 699740868 803420747 303375275 792557006 967957999 987582900 328072694 849590024 140899844 404430208 849904389 967176405 697773415 861650007 776074929 916470716 428254399 553492578 385591940 975507152 116143406 150202580 231567989 771709771 219467085 276152390 285375507 409262163 12578166 29489409 395793916 682406360 97182287 223852337 859316593 927705181 374444586 530447582 810447977 957561957 520444968 884041850 280293374 768117974 474020162 554311360 978068567 985024485 835797421 882059881 930222490 971729184 918383774 969168440 955326184 999982941 955956857 959184042 113200501 172187149 560840429 983267061 73791581 625961632 693758803 906731110 693923793 761943223 790921217 793576521 477399339 721319305 32704919 518828392 352981363 903247400 830340625 964428316 838950418 902579409 271131337 698263261 780647889 893101764 904019337 924130967 11860362 100581714 694312056 799795751 304333507 904514574 610113300 630916553 138117717 857907586 358337283 547179196 475667859 847416922 395794960 668324352 979245261 999477611 577473157 587616590 356090478 413708579 257976125 920253304 198893208 296189818 566356885 671915794 393079411 918252938 69237176 205229643 532920446 746881007 319319917 933950894 938527223 947753281 363634820 667799827 72164663 386805543 773541361 884399284 137291051 668928670 864905924 986627448 33914364 438910519 419830055 434733873 644374385 996607481 538094423 939020547 255497232 677662111 658116456 902671994 901038728 975286865 359062018 988457891 923304201 937174786 600103465 927959503 594227030 594584757 563433494 839646538 179779216 647572003 449239289 501649609 803297129 860109148 820729271 915332462 445278926 595742443 440992175 462289135 717101039 977427654 487570659 777352417 254217839 935332929 389011990 773164933 632366892 828985321 678702856 738848924 502827251 814743188 617334402 796707257 481421034 508931344 536422934 819546752 559577039 593905834 832065216 852909795 622476919 873802603 29285505 160991990 720031365 739497641 256694482 266932013 231180904 415588036 593226587 595320734 945372687 999335046 555372570 626057446 939802534 973436106 309041404 411610875 110777514 237585080 152399952 520258739 158114233 319552650 844478647 943112197 514765642 839864964 153121104 766906775 829397480 860230673 208876616 252296319 50445046 826148542 742683378 755666918 956886705 985056724 354794016 604707224 982973964 987111904 67306629 119489931 8329239 207003256 540952987 970979531 860396387 995231553 10990251 505872749 992326363 999481338 460305616 631731000 325824618 889745955 616989392 845463143 649119528 679966698 499784668 512232502 770082272 772765945 167504414 604486139 56301337 566670465 774838202 801997966 307199968 693091587 295033624 660735012 951223417 951538279 901551567 971904009 21272686 614246352 269832134 537020735 601901148 920939788 556624636 932243916 30982731 643587914 288655529 689887251 373724669 566139736 650078911 936692634 149959676 768139784 636513159 858408343 565387433 792149705 961267777 966181627 43568799 229566266 244042343 313945584 603413022 848499960 174728482 770401938 126567888 527848633 347418736 818794214 63945806 295584074 106747579 744071996 326871018 339825327 670374787 966351029 152880048 276297215 27259983 833863689 805342408 987709694 91729857 815164455 367063360 465885816 739698640 855832229 467089231 814066468 612126602 731052697 933412917 998041389 201455195 202803967 882617859 967001637 828115335 990441030 290565464 904531045 243410300 384695098 36156506 226622721 266447210 738378466 7563036 638991872 912615482 972448124 625343548 799022644 610832251 852174477 999509098 999987544 839050175 847662203 77144661 623980303 217723197 741777326 913512475 983616006 266304278 846441024 96534013 607412524 580146829 714133603 953776778 954282805 833267314 869890726 445146498 694746131 326920078 690489918 938413848 944767461 605402217 822973259 78718163 554560932 589641192 929004846 397088354 849871177 862060514 994618594 455954919 501960450 598507863 664494383 105490806 983292323 558421704 908586173 220669948 657904669 100074911 750062001 394444649 795769709 992118554 997284485 299861091 532697801 293983490 921861318 252210019 998016210 788691988 962801360 814304879 880959009 295721145 816469327 636304516 866226716 107888615 239019965 594784942 789888367 669925746 915557033 8382869 733492671 156593825 854450133 544764077 677719121 645023474 698350428 259211785 619528562 669903238 838092314 31751673 634983809 23257038 31694248 115939635 637368930 2627217 580327364 339507786 503173106 497378829 872714616 154351008 953240849 581313889 815582627 651629437 945199895 766544840 988087313 650159436 954073533 57470632 265635845 960199318 994595636 354388068 671062833 995531529 999346392 599542921 611816763 928365264 930662666 836339881 998052277 303614917 558594416 623758844 882147321 583714238 864275112 239186103 885235240 199241380 249937149 814978044 929673722 237768390 317635363 88678466 586762109 507542568 716857801 683986040 924704455 126430315 997242585 70356159 478785276 735967354 976484584 685573596 762431346 258595134 878089147 706100479 734153953 323815322 357341844 768067660 970634844 367768104 401610189 864848266 952925451 821506207 979120359 776832168 943704009 52698635 222991677 81070418 146138970 932125532 971146730 921344513 926640690 649620408 924497370 234657034 468408396 103113167 493441916 736969079 752842862 825902974 856808358 486535276 660622727 777343297 842775442 387432238 574221608 599692937 625805627 513352572 689763867 201048787 643937446 185281457 929343113 633920544 687167908 835972829 921592964 615215107 781004101 412377131 890109600 722800573 930882028 297689216 851708686 488866001 913847466 303605371 447652452 244438670 788339408 629789572 998404631 151246798 434271816 337656319 761903308 679116438 718950370 369468456 991084005 82649659 245162442 513592488 709469755 806783485 956328576 360773920 832408838 974560323 985798606 89800652 183070289 541924840 641510350 356148319 864000627 385055574 879706850 166881916 667952272 511237467 867758265 691591491 931092588 783205705 814645736 270669950 648681385 722906712 854587922 278519663 771241957 334040181 372232020 206182607 771458330 481102583 680682090 633442115 886937972 113779272 130514955 981137174 988913404 444265020 667208000 303244921 798894444 65926616 953261301 391329036 399115280 166897248 360677239 171465596 356270203 472242111 805202413 894360991 977966207 620094885 729492576 284269213 429938051 480204787 780351467 752981942 754399606 502803879 916827318 989698976 991129488 249809844 395034959 487633522 585719782 286766309 781365299 47613146 461040058 135757432 362833722 288559066 375159800 601428094 840729754 782539470 962185458 388895686 411240992 74146694 756512373 212996441 226885244 879634031 931153327 814444931 876400772 384826526 388552193 359317252 604742026 591773709 668893253 397339835 710074964 124915088 323329123 181439608 273522253 997414482 998504733 304008422 700361104 66219184 623010867 324234889 755681679 754006915 901496988 180031016 619838924 702035239 899580274 828830832 832715902 20468772 850372172 526539625 658104788 540930472 913056845 347077456 763048300 22297025 364875917 826349626 923536085 427607907 507186051 799971113 949603907 241183178 705768224 120079484 338235986 556645227 991455363 747649471 916656609 560207205 914559391 949974400 996144257 6768454 608770408 130062256 983701753 860297252 921161993 574714211 787321887 533537567 894969016 598294420 697511202 785698217 985697532 184997764 572578827 457292394 880918959 359345863 978785871 679819557 861317130 757026856 925718172 747881300 970146233 603140113 880829945 904136010 959217926 109470511 120394862 255226331 333550790 985078898 989659632 570716700 925291643 387511890 665556000 589985576 916666719 153357353 633359865 247057482 302972896 249774954 793872590 968078950 986479972 897480062 981760760 188921576 553241076 670390011 763788354 482239485 716423502 855551058 861579883 181255562 630749753 101911301 690504582 335325471 682193490 793967724 882215050 738005646 864906454 603313150 866180553 49309423 792358939 981511553 983965045 416188596 628493276 140538907 810834407 325507766 703868995 84994301 115559116 624011283 665942243 65953186 181488249 165187297 707450972 669376788 674391890 822056091 895240813 819696845 904963918 520126201 941930329 239145099 278853775 562540921 878706012 669073956 678918575 655722230 701372679 564954591 974974538 777636596 988906987 53061057 887585220 918607896 978103473 588680785 604343289 871933138 914258110 988873624 989066973 990771971 999301044 172395390 227593088 266990174 576290369 931166643 962129158 705290116 823994194 569455260 792234570 287563255 360223981 743602918 848913494 691691398 914422159 32347830 585238025 593477667 838105860 135214317 699799724 443680782 951911758 88207632 803007636 135355195 244136088 838676780 910870650 95774976 714884683 236920798 405125055 515852822 974736351 325300658 852184998 782926383 805012429 963571087 993598977 146532210 884948667 45302193 106969924 371927698 730924519 197753106 229869390 188275506 774592651 230133491 655462543 730035691 738758914 216043961 995699921 279226014 548829827 796572146 939929321 509015569 530798232 693059694 829379106 426067351 715927951 874989480 986500733 672796679 827756048 388532880 780505019 12264203 630242478 901710298 921328150 374029474 414154776 533077882 589158482 445407489 986827349 985612799 990884612 522003886 588841447 767483932 860102880 600077116 911673522 509850811 630506711 656195330 942693945 48640089 645590080 873011932 904371514 562018248 739113470 511788332 739007044 517354115 829459115 743378737 936210670 309193214 784446924 891861914 971918524 308231233 498643718 759049525 978475208 268970118 939740989 421787287 492506470 288085849 597900679 151450862 781082235 661596267 913492412 953871364 995515960 434331113 773266968 237686285 522900869 53269027 481332408 910542058 968851018 516117913 973018039 127813680 363875269 610954629 721407221 513565735 898214908 617289633 914688285 894761489 934988372 927913756 936614683 410796259 880551422 418451046 750380962 281699921 724932997 123778974 395712020 372699191 849968450 617807064 725832142 27319401 911070491 674374205 928999379 926663745 998973105 472638238 517785891 926141867 960680827 404036965 943702644 881749297 937962881 906808321 930207804 799924285 849155475 516919027 878014529 734925513 739327923 372538102 719244842 843960406 950361547 838033719 860824441 125306000 981221264 614697057 798174336 170956773 532350129 802072470 874776507 629720186 961155136 890314063 902410277 207875746 920981262 892075236 971676595 960430444 980929580 769327380 973868303 468589542 531474993 596979475 891753669 173028162 552756092 75489690 925410628 50280490 895271389 673612108 914373376 876630140 984330953 930029800 964571868 350864378 997969383 966190217 979383886 409049705 814668658 758418541 822990078 103590088 112476373 473609218 698602525 154614930 376726609 518020102 964572618 162556728 227755184 350274344 660124247 682070207 870607207 122814654 864943682 700127835 789312640 410223362 819411102 43574493 68341746 855643705 900180926 184857599 193348066 262027032 418336446 106613137 555725074 444325334 728659571 956018447 966723839 523922899 786459215 251935577 956282531 297503771 678818401 621577156 953551388 10431850 170708948 589157087 744769877 277684743 771065029 508501019 592158329 641992424 972566133 602015809 971567158 653086940 891821205 3330522 566257763 994038896 998867203 283490147 536216511 68133501 799756965 507581585 791240717 562594119 640462039 891541789 990380121 933970622 960543942 463518317 638413935 708729363 843589117 175642397 378601441 983379793 990704907 49002177 969549139 831966332 996162289 360953255 918716808 983617400 985424538 453459151 729921656 624947542 714684538 677263381 705863821 444873033 458902791 630866903 649366971 505298415 998526741 559635775 841646223 192053069 328394597 341430735 381031996 861884647 900516895 647223214 891525770 747090414 979072483 105897103 634290523 352417132 933672183 560391434 754865410 391035006 840588008 952002404 972585733 589559766 959905980 315607148 438553967 426854511 579931608 609917586 764720534 283379183 546471542 925211473 994893739 764465360 793956462 601845594 706234901 432971921 797909273 756983758 906843867 8158276 685943720 191402505 398473919 501611247 857562124 503608138 839776596 225393591 533188218 380865392 514222717 209742681 779628615 772313359 804279296 392657228 727515579 18121639 983991519 746065657 931690578 297900424 911196187 311433255 771477773 182638311 458486077 394204490 675355458 629129595 693941427 934533092 995155529 975186599 999672894 287299622 996430676 474692892 528010102 77198097 974213306 541318742 725423924 514597371 709631155 144139905 567315457 148920984 537353815 106608632 642907402 127329495 825909074 699546627 781459877 23551692 709993844 294222534 339241670 172152207 794630369 130135539 820089794 301711056 533499205 536462852 575105103 905747744 906826778 554380011 908171512 119797524 339226982 636500 932561933 512584127 920602104 628032823 869978177 226177723 888172219 732978940 958777693 668868633 836527796 20552766 367669254 209051711 971127436 748778309 924058203 8512559 923644394 576537059 658664077 221870588 726013475 908301939 933024608 24391650 463238318 517760970 753423562 708056491 885548705 145065517 997000885 321941087 791419407 487691692 884994662 836946412 853814934 557873384 580236347 390388632 453778344 794113655 983273127 952861908 994649573 138093274 599744653 190097616 848710433 344417536 905894418 527291224 893667808 302133509 866306069 516005913 715188414 45726119 800566935 724346615 904438678 78640819 437867698 233686146 615792853 743107951 873493408 643543353 827250336 923980558 998284583 944488191 996408837 927405041 970580553 941216383 999406934 746457817 814487063 240345845 446184590 523215138 570298413 6036985 164788713 681467062 792356439 75768688 868777466 375147592 719716491 789666936 969320610 319389457 367477105 523828847 689166872 240265364 353909422 783209546 843036703 348035842 465231408 396376219 981409780 308825654 923688804 482844510 577931662 607257623 906158998 989574179 999569383 505356925 745592534 155577243 518704823 274950736 315374020 200893670 646643825 45091956 673763645 779426991 975063710 522568850 548893863 670896289 798889935 167050966 585138758 875067379 951510939 199781636 974529682 385960515 941481812 95707745 726380128 406822828 554836375 253463133 786011935 159851641 455081647 801978858 821637779 320189864 549710575 169395327 521803579 196260403 798458509 247040750 417543273 165266598 509032151 578719235 980422017 619124377 929719034 618220478 936643264 295307564 296159242 490632733 990926788 379059059 599331105 95781849 950545169 217877726 430150790 508987329 701133225 710721889 890450718 531085564 931852382 252428909 461293057 662377436 814810105 199384742 249955637 192622210 752429375 634144104 987147183 242332704 322928329 758345632 777317122 270169065 278562613 806597343 913563576 635780510 922135723 277773041 987566684 904037625 936368631 795451003 895951554 704244368 865236824 81111980 940814827 529612657 758094517 664553827 732356662 852454120 952138616 546055721 629086859 205837378 779524350 149656240 849863164 473995627 856070009 376327886 740024671 385988090 412016131 718061965 808553438 213791451 398269629 448113760 711523520 792328590 893240604 3079536 708001244 112628938 499210868 145040892 444543748 462039823 662122881 601069022 907254911 779762142 934720708 941467492 972927412 604781065 773228690 965486435 985542405 345991487 743840742 898837159 958868026 723350945 786583803 18259249 486994964 202098025 761341146 498885814 777048566 945409096 964223687 764616815 953882622 869517363 910083889 307598628 843227038 575332957 885785947 173138089 617867871 265342806 544904241 763310389 837985975 117355618 511672755 505565560 580332025 763587785 968825534 808736776 956451471 169289284 646662650 227174258 623737822 131250790 964658753 92948724 166905810 841300956 960436607 524115797 725568292 872136557 965196408 624150455 971992528 334120779 578592186 213474882 872743008 88720112 530539925 276040687 385430067 606162916 721906173 661749899 737388597 295292374 503638687 881147745 908414635 604050566 908770439 459289234 677805479 403240963 670944576 233454118 252082363 138495505 595120811 726999110 907493786 282319182 964856310 337235292 982574714 509567496 878457391 163439982 976206313 104888957 316715601 283588889 503017579 226614800 538346411 414906720 417709979 838490829 922784555 943384674 968002952 752409835 944769319 374644488 531331987 594246197 793534895 334178753 512654401 769810792 783937335 419395759 501347821 990837029 991561343 244208676 750555044 279257024 864995359 901680389 936331845 268621583 843343133 315208654 568622826 416670786 525662306 860576413 940226400 438712187 893688167 299626945 899715569 575347080 821949601 308255958 455380007 413566009 731779757 992220867 993106183 918518430 980334468 337084674 585397434 426307424 690965689 871280569 973935844 870243027 878956121 412140793 470532811 700620913 818502755 669377088 763925504 907829480 966788153 626390214 644062202 342572228 797841305 129175784 622207181 275096169 402265905 712291409 813138072 726913578 873074647 690011023 972254039 203660466 272456396 287144515 847009936 868180817 963168695 417444243 692681997 574005490 620331832 913490974 974832878 991240430 991964496 146010054 802521902 394740517 954223986 828399454 871254629 918589748 961486170 864940806 967778652 173938670 729595181 422313145 835496027 115271656 535721556 414902826 807457781 145444548 513453965 711254318 975409675 216579375 842457912 311705087 645061607 609970333 880856797 251358267 287237151 303661796 378335573 435047972 755670523 320115045 463669348 916281246 917527934 913273362 920980504 996749996 997261586 705239435 890415887 219596853 326395841 215608313 531612048 530213828 979970169 869380672 975877829 395614586 536932311 493698391 758179490 524546912 839968494 694735293 844263492 796036608 845888280 968901692 974977009 291115090 325217176 336969922 746913062 414178443 505789198 670748071 783618077 367556765 391439000 474554341 583969635 83178416 464627381 652565661 904778395 859215790 906981328 193663639 960665701 835214333 941304476 73119017 593212965 47561397 244633554 260985864 974532841 770705596 903439120 501037893 690956074 62290707 204650864 391619938 741582976 56746242 397415135 357287698 906714595 912889536 943359417 631005226 702949430 459041352 996436935 167969766 438021411 630120122 746532738 613225402 910464361 56663189 949955486 629166088 909667546 659626237 993774834 618703235 884365855 820045798 849214950 362169752 846402901 814117282 848235557 292838465 883234358 182372121 192448172 19946524 849169583 874452024 984086795 910585084 963831568 383405034 444059400 919822590 924647325 107562921 618939963 695415634 973543476 743753469 804533169 399215823 494480183 524966389 668390102 765052688 924932238 116173664 599919552 395613349 521341637 649743584 659799494 640995923 774706419 121874261 251795599 667938143 860007920 610786654 679216694 40935627 333832764 178863903 862139404 42962860 543487293 39496516 579134235 271205840 413101526 499311854 983356368 281360224 298955678 779290946 897909848 475753179 558285652 268002242 467639076 27795547 238447882 513439978 879506267 83761296 599515479 778005167 963878792 362019037 908923677 92644774 253158983 11971009 712590204 697173769 738185273 544794329 699702950 326879901 997179339 308472756 998092515 61943388 544201334 351649876 559773580 922556107 983780442 635043775 984211139 130830987 638904989 786089230 913513933 839270498 990089725 613627823 930206208 414863764 451032944 893670782 899089192 162810357 981703291 195260138 962629383 114135765 344651049 432800964 965563490 982579053 991113624 107475095 121375650 239294458 867340665 428587278 710818200 47582100 478626007 565044523 596466461 652796542 769724252 782699436 989541235 164204767 710579024 213547198 257686116 368561820 666155319 828838849 959967270 76398466 578769890 311261923 676564462 157680373 215873664 542275456 670899311 977709466 998805577 224363353 574808823 40296674 915482950 909218136 983176848 431306852 489063363 279874455 734908602 581512658 600152814 31356438 921254530 620815749 829211382 458723046 893734341 693708463 924336648 508033044 816118595 514053072 948654390 975932983 992645810 57926725 387800187 338634306 940108453 639674370 802198849 931590317 995143166 408666147 556756080 155631590 736849038 815424297 965861215 655417015 708942385 984376109 995767538 808262398 955409683 415078062 429253246 373053678 926729437 49895030 938767863 831779862 878256326 277667194 881366619 643697329 667778584 495415793 789445595 648998642 753175501 266153712 413279167 140006211 562022502 726598454 730738633 596797238 928778880 511397434 538558536 136254765 930481709 294103414 574310702 992470774 992853118 694394590 957798538 195672859 596871661 47208974 423360292 846432403 892991205 950264632 971617149 629983411 713842004 833709086 872638563 902770342 976426410 574867770 780178272 144377237 484558773 387015903 943017132 281361528 924724032 109314015 548174633 621896893 805776861 207624998 986432346 808805797 962460113 163575539 711868990 569343457 667146682 272169853 946240925 701638831 713111142 888428374 968758399 23661626 787162462 689796740 864371380 334602487 575316314 458991350 554531794 295861062 509376807 401634853 428189763 121502898 605015404 418740739 815549878 992311968 998874711 24758226 261435265 107655287 189609854 388929410 582483726 825252630 907835572 426170437 880885750 989115173 992261547 163450564 638420195 159918311 821347871 549958586 958470065 470176537 729289840 955253237 966161008 759256984 846703017 385669765 958797895 543187146 616993183 629497198 905327419 734033588 942190037 687115576 969039532 733291367 934714921 703264049 881275350 608642014 634919420 733401047 994035973 113248093 921222065 239201758 746470393 859947475 926999843 984275473 990698098 131199511 680800871 533608619 862418254 921829512 968742324 795560112 838687727 23996944 82885634 787084911 835802463 945202457 985397329 313481522 496654993 837006157 916538321 862578959 978357423 56030733 537603575 720447327 844145431 641699483 939409661 441900224 743647888 787901501 854962667 22099295 764145601 810166533 996455584 554565655 719952402 216447819 396614360 300580966 728215033 817472194 986106999 161511264 486935096 934659235 971217696 854195033 929501829 173155664 935257223 443613208 769557593 70208335 258358673 332485669 518210944 351919394 480522508 148798357 532015271 756367152 843331310 160203371 248417332 163204339 587022152 500787594 618814794 15492066 991412639 574279844 648296145 982394569 983883676 609160192 905809662 313872354 880036704 370293140 945860872 736503514 954194204 2541099 536876048 171636442 977593434 188475230 812681772 785066829 829627596 469909302 541258318 989642060 991669851 115264625 773272316 740759648 875856632 434312014 522243991 657526226 877011914 483772755 984699111 149074014 352610717 76425691 404089847 262640311 710591252 599286222 861855511 458958708 994979997 937500220 992004730 175348803 363953703 869982304 948362679 356518181 734058918 91139076 999453116 111531360 974362072 147315825 839140740 752438117 947254867 928717410 947234149 125639291 383033020 50999576 787548474 689241126 968923489 899689472 920646160 342097241 591160773 882062326 946878591 555682823 890011870 838777549 981112049 112283717 682741384 31897432 320216597 63888626 247215036 109073643 602782094 247125696 548735758 13574968 722131733 486675620 981625133 986630331 996609052 428404539 928479041 841852496 851044272 20241505 746644688 187602808 545507276 709659903 712687566 155179198 797797866 902534116 939001174 322091948 727474288 301084504 650682574 702618421 722339205 337461451 410274252 808780734 887511893 47232960 868434334 927388884 956358980 619652435 641729095 9500149 905042170 48285786 697564964 157324712 543523789 661738941 796705233 480071521 712179450 516944377 758154599 186759690 588709703 553315103 823753809 560631093 687121713 327282538 797103982 437069098 557573050 582840248 797766506 675927790 886250370 821079856 995334259 815825757 990816255 944760384 967900187 382625115 447053030 472303969 646521009 305856637 413502705 925896225 942894912 149965819 920633015 786577611 854002827 677725129 978058270 62759552 805841534 429563350 811356979 457133019 905110223 934145531 952525831 907426336 970249944 258367085 729674416 776762290 777521105 613619976 896625026 991047691 991270649 403399364 757698022 697349535 931688646 24440108 360942377 983813981 989022073 482592623 859419219 446335057 517341891 215486936 941424825 592557471 793540017 148982972 441469008 709553357 960703689 894620027 962362478 482712771 681917339 801206934 868241022 633031703 901612715 41786999 966008513 915365805 982221826 840469512 942362311 72483214 687731625 291457542 342479776 625897220 766972369 78020784 919991208 123765147 386820465 623356591 752122690 867721810 876760375 523300712 903353513 111043602 860545795 891928466 986601144 4646601 41904584 233859639 784750924 282126811 640917132 390214859 441597982 335630255 461665729 216673718 423333161 679507080 875604030 471090854 747250578 402204898 850328749 16777857 301336367 392048896 718520206 421564691 676614310 383253711 634301051 260846685 275928253 970860401 986328400 867153734 967265702 131971557 946963749 434016611 522514598 375271276 428523910 314508666 355653997 635534239 732116917 389177543 799899460 702049606 938743117 577271258 781374816 663873975 800679570 960836645 962714673 79683599 526972654 609244017 834845264 3039991 679493060 201228115 947006797 4310517 846814610 683939648 844234882 512164785 568315986 477257586 638341590 773542251 889664962 249546356 879534025 774579481 873058385 348932842 595794109 849466881 871968584 606484989 884325811 220398521 725983180 747966011 757476006 807622075 958630137 514887174 936555509 880066992 993038118 57820050 830276477 83589746 626043244 619188541 961629640 432570887 861811445 648820528 919656360 120152526 894410643 54331495 451282417 138528620 762298912 450031106 516647082 305035727 817672992 195286495 430529683 363918792 947514581 569317577 750328552 27755416 286259817 365163955 441708135 797728800 956326666 385440197 412929904 432756218 650302631 373959579 724681960 308868972 843132648 144842347 433154134 934279427 938822467 597459914 787250354 950053427 988742711 534246319 998672137 695673880 710567020 372721623 560825930 324099112 730592410 842913713 999429874 202339386 715670485 282544445 831547738 963825402 998425539 809288886 870683640 65926330 178671620 472518374 998469382 270771262 453792047 636008418 849434465 253499790 796838369 969337658 987188849 432351524 668150232 341889628 381634599 479504358 690366992 19823151 304327962 755183717 806303629 903370165 919222652 883036354 929566879 613454214 963616668 566366094 826522430 514857813 587712364 699918572 955237869 759397738 875732823 773282435 962748602 986080338 989311710 159783229 674003297 436272635 687026667 422753922 554352413 468410285 753879202 906594828 961400537 631231097 634997972 601398384 839055259 447685560 618950604 680157480 842353750 592589425 649080234 935684152 946355010 920724442 932920474 289469964 972819744 899023200 971027550 433387564 442772100 514389477 991343730 628328797 983545878 216702473 618244478 539586792 895779876 518886902 732979126 128186932 631810548 800128287 846483106 59127665 846505687 205768052 532515425 111406274 625221958 240666301 429171721 309622098 946471856 765629834 922814148 118491546 772410835 177684356 783576192 968668799 989768373 36598006 217577003 724303133 756028216 326350599 418856635 6394959 800811757 94845310 257158919 299806582 591257306 448618441 844110493 350566627 403550595 443647075 672062262 214167082 503982159 593900289 712915435 641227669 852263062 152191210 452001701 429437985 961193397 710933366 884925797 827821687 844196534 381740198 955636921 491706802 636909096 794728757 929643607 641244636 763057817 151958324 895285291 713823690 842563462 619954607 982851714 574440088 645834561 44938350 888945563 506109011 554367022 330128681 670774734 231753548 926584167 643773731 884573255 303789197 677043688 985620402 999654574 890880027 905862731 956386910 979051838 67959542 652584409 155029746 720888625 601705574 667704672 84065470 214978918 442684501 973845276 714263431 784483996 472957099 824944450 825711835 826963291 422787820 819188123 787206486 967800502 70204197 89186958 743748708 886748566 404302165 551119570 118370490 800733838 40424227 337018298 123437466 461770894 809914740 935992872 463872968 815399565 716548948 875288983 67967659 644536965 30971115 964258876 532417066 761962154 776294506 859550084 521356091 760166079 80236629 317915470 203499143 893910134 245412433 606703308 438794535 594604080 182234735 393865290 164610526 518920289 227112375 799714042 839526519 960841469 749751927 990565524 872180275 873279336 229873690 938736328 943216402 955843462 633149280 789256722 461184227 534977938 880217269 899633067 376471742 482258944 594410991 889728052 202178470 903020856 28785151 509995634 369750023 999259218 123019860 863554785 192094185 950129908 380459243 570551584 694009133 878627974 383488093 831082529 255760615 883274124 516027850 720529526 586187329 616566557 896129272 954339771 428757174 883499160 550068489 663702750 226418413 344362969 744202618 805009060 536413011 645601888 56425234 478880889 25541846 72394645 410846267 609458384 16036744 619937094 681147694 971643306 984920021 990864137 653958790 936017290 406654732 927911093 103739628 717470001 868659455 884627065 475403253 801003772 918703580 971741368 575695227 733638584 647170589 673867742 977632025 987342046 542414653 901489969 232565288 243156794 465372647 917249455 368731672 386194731 978487705 982243302 660988794 809460930 592341237 771399401 717597131 866202722 601983953 706818625 634144712 979813885 258364164 997693589 650180703 764273987 363742360 654126053 559513992 803812652 393889149 631112900 322844998 980745231 368045534 904605677 278986741 960768297 416277129 684031390 656369785 859130710 978047732 988399416 589145513 851626695 250065096 531910313 218510268 691108106 108835643 936638091 175458514 371077702 408553565 517897787 899960293 995730014 174329897 396470481 385311473 573987968 471409269 486310059 954078865 971539158 177578886 863013106 164928775 488579002 121611711 177137548 642087384 707777669 986891200 992932860 3182304 578708382 333887313 876588986 562030280 804505840 532938196 699257548 863904629 987890517 198732965 793834574 485881656 517523926 540590258 651374137 114988508 327056626 396497831 733621496 195598380 386485787 601747140 945892449 667180357 795509354 25633346 266428002 907543258 963282274 444431483 645671184 556695181 711010505 862068364 944054290 585362070 962053572 173900272 440593458 721157573 998326867 837794612 941602455 806909930 846196805 691928527 991604357 958709303 974865605 354219657 731783989 86913153 477814546 974298466 975299489 753063378 915368985 182528265 475690474 408839243 740204456 245311574 488288781 565891543 943780270 167018861 580771172 329474252 608438982 317499406 984606452 360403353 625563657 229549617 836821154 427620964 955361934 422646890 982252518 244952239 489562423 904170457 924623640 870265276 894777892 659977035 719710443 891859073 985256946 665548945 938244029 741244789 987932388 582670123 777290107 961108416 983215371 513767436 808104259 104590066 709266088 723694866 758613872 448546917 570131370 921015297 947824697 19183675 180500835 317559597 932734688 374368140 645557572 652606592 871933486 664732550 731657020 725077604 881522082 727209721 897217533 558091482 633831368 831534525 849556307 872649261 944279004 761864313 990644639 115091498 519249371 546438503 836073276 449395129 645475624 396018773 409516891 107962994 660863861 423395489 781606657 471349106 484536271 715361365 716906181 907957437 937697504 733532310 775094363 211285132 904389201 278486543 686727943 189872731 362130180 153288756 563027298 827652491 929978773 87668346 821109470 899330151 964081369 438567948 593807602 191560002 663749706 506162843 515091832 853550239 871763484 998267808 998802989 154078835 952162273 36641170 692652625 443328598 455528653 516723443 813667350 939647930 997419672 286074415 545593770 734841763 972783483 378789 663580474 398626254 446440665 461305196 764718753 503858167 769571642 35951885 213721160 896606694 931693060 350979258 386430643 880071180 948949182 755882723 981108707 578962579 629942790 77961605 877329208 280704785 413499844 79831497 510222151 599426018 756846380 816724483 988481771 746980112 875049658 38603258 88786765 434334350 633482784 894771869 895802733 445445983 474249120 27999075 418962235 303953692 861116117 58931892 682065279 912293691 997281487 643630868 928796060 985664567 997688915 177988353 536829052 164797062 637458825 881838220 901843603 312504652 589810262 256737486 388545616 679092668 897184043 977679215 996251072 660797294 940952400 805787029 925827051 422116650 516064023 670672441 977742663 401769276 640609380 769621607 779556782 319145878 989200780 883559195 976638601 604426374 944472720 528389861 848401833 882659476 927976466 551359818 910295335 325311568 835842266 195516055 712953771 209270260 273221641 48452570 184203997 358229563 908745040 13328631 887365204 562603482 681069221 859442473 939928392 501577384 710933887 222128179 548935389 322443442 357159628 661073695 687412616 3647837 649917376 297524625 958933841 232149521 253395985 291288784 858229309 100123824 710713951 885642673 955269414 42506330 666210593 667731904 728250859 134448849 434022259 913020618 919422624 439957227 711267166 148869949 475849820 803659872 908382029 545541854 967465554 509833055 824608457 272981448 492883452 238358223 618146444 225925255 248113879 117420913 118319827 398385675 768513690 338122796 755713215 402196371 554923525 360436427 485855902 103697668 492421305 46940352 203482461 563797216 996028754 717945230 968189740 234376207 295561917 426990805 626779753 619476018 777828421 338991365 435944460 136585122 882493878 109376626 912314943 246396253 469491188 848704615 950666165 476260178 557544112 934725863 968978014 383751770 428839841 758059304 893819697 384076213 392289683 722183723 934184075 780724283 960749129 867891335 916825010 451124185 653271214 167046501 784018855 522175209 945169781 103823042 470995773 921252032 980991122 17436915 688487284 547718310 807834157 653470967 833915507 37858676 883939007 424765265 529874407 772396290 902063162 831546336 882022964 811569463 819781546 810627419 834938974 552436225 904492020 933601132 936570005 775144566 821720383 806771636 883812017 378584592 699289166 213093925 704597706 756840390 954210737 979184958 986400272 97776453 875833993 197257923 516132684 702095610 736660457 643960933 957211507 303680553 903912520 183689966 257918709 677114445 969532605 633465898 929991939 566525014 760547086 291016428 423202925 46287227 265928118 978302650 999420200 730216971 883551917 80451243 330784668 695177968 917788496 195971005 269481424 138800653 986191370 856483821 969678519 267938595 976633878 370907178 637095698 297783613 762179345 119087756 148808778 625033325 874723973 125336401 177700021 955434927 969759861 827983003 877466015 419884221 909961247 706762416 730731899 825648712 837242020 628114779 914630184 253095818 452199694 826994211 887762144 691718078 934703747 928574345 967603425 336649155 538604533 221264416 733455622 651495686 683494125 303157509 497086742 276178771 467907056 958996679 990826634 7969467 44552178 676815564 813026899 638236423 990725886 682210705 973766792 249768791 419763016 641757960 695625692 5599651 949645673 780413789 884254849 607319958 933297702 886929196 893203756 39229248 683074604 579325200 631428346 574192511 865125853 793684257 983137969 36077126 51738584 94439738 920440607 234614250 387054979 99402461 988372585 188661458 659597617 41079563 180498444 832790237 882034841 258867268 544960757 959836664 983761493 101167690 765367066 723881625 743677699 971750152 989488497 519841454 896798610 296051382 704854006 507120274 844188856 531464772 683493176 924430395 991037635 135018335 570839001 768714943 858947450 745285573 844751672 82521546 537426431 695844629 833063337 501954509 966506304 687079361 792681596 272383474 645584094 38141236 304908413 764318120 922043010 262982203 720306643 508034905 646685864 911435064 988984700 425155070 660983691 418084714 452534148 177729612 923679367 233838603 234934359 125670623 414635541 265119664 777662410 580196381 596093003 88541244 524026357 822808752 977481098 75455027 206523807 239083617 467382278 784127580 936596001 589596880 824850213 181256515 305219233 930518186 979933067 706428687 883439373 226881267 919648832 576440751 916100491 455062291 497834752 492875744 847527220 591350123 781774809 88756563 718398386 844709055 901847046 53181372 955410831 381972128 747462535 272804231 950127949 252123220 273358925 8240302 757915796 876652 646298599 544922688 585130531 962887746 974642031 691279126 962242875 981438818 985783335 124612055 708256863 549422789 902039993 396661474 423932067 715418398 901051141 662995265 992627641 142192807 592209128 847894752 994235303 469081593 520548881 827806116 952125442 742285538 845175208 703018212 795346007 384541975 791812609 339954753 814980002 621354707 855395032 919340665 968780678 126150446 251645717 713885522 759393215 290277642 813913206 774319969 875678666 764984403 790021154 382272121 855201494 784576613 828426154 635240622 660652134 621449589 668963713 996221898 999803605 817421354 897620220 28076326 84975298 317168001 579260925 422198279 656538352 740406283 832084850 601191542 640203714 301869648 562410707 515331808 594604419 129078488 769092869 355009890 813845290 782632251 849247966 94009424 694197811 244554764 318320871 928250721 996124855 338660663 584990200 832698514 874061884 14713751 161045442 636550911 955359093 407238420 801110390 608393888 779899250 283044375 294379215 96914024 177064515 162426828 402447068 5096024 201274699 766224534 807036376 191276169 682768798 676060456 704768128 585589074 625468399 12955559 861987898 982322594 992326805 408069199 780067224 990949916 990972571 849472765 927902686 691038913 758329707 516583939 610085667 226358524 278818616 136210093 886199332 885047753 989367437 690727887 782342877 251374945 487189062 184859707 336948038 725958530 930898520 113748357 608553523 381693048 549567054 962267332 964009072 194963737 614416608 118272215 412957979 933632412 953192393 464484547 964454832 481296526 941580001 465835601 871667760 713766643 805801892 753675648 961315812 582141403 820600718 199288605 377316189 914883210 955436194 266535635 359511573 384699217 926027859 324727308 963722495 851912140 901520004 758549754 808708814 300741779 374379862 616419485 814548246 384292531 521761074 638572125 950923091 569413684 863117858 490647306 876998471 183162858 756499931 149223252 514176646 33275800 846215098 994067034 999836504 762381417 975834683 151143445 530564335 379282666 625672596 230497107 936436152 541740852 965029848 861196652 913442380 395999382 931445573 863024933 940561581 826674937 950819876 133605413 688595817 652406836 661600586 196114354 358665727 816885228 970045487 948228998 964278799 138509761 276597313 80354977 127486728 178554528 983834553 831918378 973410997 814159809 986428119 758836534 828243393 973803334 989919574 325445069 615735032 809637880 897597103 578627496 681422630 610897619 638640208 987447128 990412352 23709133 224434898 100396130 188716408 109357353 245927533 983307427 994610452 283337699 342932154 936486376 949574428 336868234 650510166 886605406 999242262 915552427 932581388 778813384 963319648 113474702 168120540 545203081 650673282 622743474 836422377 352723364 743336753 15097785 25985852 808878080 924701716 351688334 887125225 757262021 889712621 924279264 994053537 244959803 851026509 802892286 954224148 305109359 842638057 310957288 924548608 180174578 656559433 569161124 609815684 162494718 260614504 923772814 929402036 983851358 990738322 829159327 908498604 418080693 693395288 953625784 961642640 827327113 910711563 86959558 960576666 491730058 890721172 540173602 683174095 487131734 677367928 523829729 974212814 11666283 166408671 832595454 947663271 900814731 945190693 545431041 711996684 500573184 784341261 639548254 888784189 666581176 869426651 577676387 716615608 233925697 843818227 803792337 883157385 826917428 945889870 808646289 930242714 584125259 924141665 309754847 521471920 767531200 938625561 934737287 962579373 50750443 164365129 619301106 965755534 114726115 541496909 800569575 854599201 748472355 860805977 842188864 963700361 632488595 814594024 517631601 745638319 39750039 619508611 929255509 971462606 629672216 641762059 459805278 533208938 733977626 919611033 849922872 873126718 68187822 189885411 373893683 492269537 140307963 824090701 900791063 903181646 947395956 985997486 202649301 486973459 920105066 979461523 145184514 606537018 432641039 625248219 494791921 681604398 537128282 721369023 698305261 883087598 436405131 875767176 781656786 995173468 820302519 887755157 370599927 509578970 239754305 427607917 442814131 502595531 402550618 822070534 868291066 920607364 352403796 741666450 969351322 992216224 460730319 582737835 829148467 849885821 19319930 767892186 993826026 999664738 832532754 834494998 524259826 603520534 19517276 384686444 732487970 861466162 285481978 693655630 830805358 909448043 166285926 495606983 551799570 936710478 988002217 988923661 253004108 311661217 151514210 957480425 747261063 932410138 662382273 714742370 652349438 789971777 7343538 354299120 922355827 949340464 991200070 996996171 277154246 628673685 964948786 981719097 405387285 417072698 844775324 983155421 869431711 973402512 828606650 851252783 874709207 880812011 110193125 540704722 986503302 993690459 5391793 540314309 286640297 856921397 654678439 957094108 317081218 517171464 105744265 818656743 687022163 714730547 331470779 848504884 364493514 844143623 453787068 929780861 606815037 845984236 775603550 817440131 692330717 792992542 612353565 682725754 827738611 981855128 301358186 673586437 776321102 989727187 124361104 919958827 8512394 905182424 755057312 767521927 451974449 582619901 687960649 746198050 616392838 909272161 637928542 658096462 300322279 993695300 772344747 973269279 184296877 949583345 576455919 771072906 805642201 884588458 459231906 812637362 514144622 559637966 906415691 944224903 672947552 962847961 108735095 311867150 389679102 566770709 316565289 510650971 585918593 757098869 230611265 444331689 82003505 681113277 237460275 368130689 35002620 859244696 645278266 724743012 162745206 683905693 689475581 945119959 420438111 580301485 743195171 895066951 149066044 847848506 855411096 944589963 787492026 825250989 114117733 260420498 857907940 920285436 368388180 723976366 249958072 311484042 784470357 935594536 90940937 685826639 591917406 597645637 467502468 749126521 289823355 909198135 493211121 557464213 146043499 572818809 334234472 561872886 743611464 851853617 945605070 962463554 913581277 945589612 141755526 745241142 90639069 589818945 409517128 509055743 248007064 935692334 900740321 962725676 866057751 938525622 718544105 881011873 303210688 699447815 233035137 665934847 84384490 496386075 706240799 762954031 39845530 113736220 319151840 632200928 51931798 778019988 170844703 352273046 705712092 991488168 538406036 900134221 888860956 895136319 733203991 969416441 352085476 395250889 223839668 300838247 792082385 881681697 504252085 796894660 877035103 916805537 613857987 750323955 624685652 625661571 778937786 832899306 929837539 950552039 806346509 938139365 412259320 908514961 707057812 734280125 214466987 221758982 479401527 621121712 839347726 955729818 503938953 935211072 917830658 986282044 974740191 986745457 433830523 956035702 809789918 981247635 507887519 906838148 111422690 484881486 118718317 238576061 940600279 977381645 204662296 900318106 424588488 572557302 292444740 520876826 371682961 969004501 87956714 433086342 239693317 739515438 205972735 750126036 580117088 703618003 443670514 848486330 957316750 971279985 192577950 642450870 229100852 456289089 919076821 980863756 287609532 582896474 208059660 303563073 418276178 501640944 247838918 493800430 191695612 659543699 400399070 502376448 921035287 993787353 649273573 822236868 785329049 885714560 743742701 746173405 859213471 964780583 290154030 913416269 386141220 630234323 345210307 968216921 47838278 318202818 45839243 416890510 186593680 465148355 422985760 456232302 447140735 965656130 133692332 893712372 451231406 838585178 13522487 789754974 546919779 646678491 405789866 602959392 359345386 989445088 467339821 972026588 549625635 619777022 404530690 638996355 813857945 817827587 800549369 806261507 779530790 803221996 498476774 586517928 108480251 718904559 536602955 836374285 469339882 870641689 676948053 705950792 913714556 970283018 163790928 210949263 710043852 716968367 715887920 965299891 493387718 874067755 850473022 949169017 242767449 497075856 871897502 917092412 309371494 914427113 748508939 759124649 597499471 947856614 466978213 645119685 477134157 979101137 775664616 923361244 638712853 991919785 485213689 545521525 96080067 205572301 524183830 813948836 233028147 641758815 8201642 199568070 819900517 914616589 532314526 622350682 104825157 641834814 732267741 850288587 141018896 404132158 173453930 251634217 894401617 903644163 348534905 592828380 312506117 598456475 181185749 813176215 574166024 874381210 545463048 971114378 379958098 863119681 892658075 896112384 319468157 960461798 244277662 404002874 22377785 933102000 204387602 794728006 341407146 852553781 797568724 810485395 287357881 390533706 709725899 944004805 535103393 670392793 239036909 723263677 972574474 978296976 171564232 830492965 623814517 726030482 204729989 746586752 211325361 644538297 311670814 720535300 477237764 587432086 945365271 950462790 126886089 579751378 52164879 957039184 664305929 917110797 587863407 951304841 424459398 495024376 373758086 565501723 13790876 152100831 967520809 972636667 736760378 809674710 805365 982162053 903218307 959826577 921034044 998827732 984492877 994845203 380054460 424487965 131996649 161866744 398673262 794293988 990770748 994334860 525746238 839344163 490986782 678689734 915847600 922241045 207371182 236883437 850551666 978921612 787331689 948207531 772561108 815370146 350776358 663221397 199522637 308775547 240121944 979679384 575590233 704613804 631728194 709322396 805398855 892471193 515123038 556115347 875965993 991373236 486120865 514140496 588740967 790742126 929413525 968540089 725326085 918959353 767543465 913766989 268396184 775517802 844091406 969455164 505774821 968125023 853459385 915952109 78968693 834649292 97135151 128485793 312376618 870658835 507776639 953688768 344064587 440722590 634581534 981824105 489512859 665004047 993716323 994439272 56844889 842548534 205552065 508567621 481323900 711841139 162853565 226433915 508857080 631668688 13145113 868258369 741062048 746395711 471284062 673047041 967340800 970081470 57327743 68505508 332374057 554197954 210944451 405800486 222054578 697675830 705110441 946027659 330309154 402401150 208532503 521771702 434654671 471883508 681112377 700215117 493906887 881357662 903873621 941188951 644710223 964425413 384461460 623790234 259453610 467759455 776696268 877615375 245736912 370929391 275209291 643735959 66630635 263064192 623013948 641011675 212662190 398205988 594037393 803359937 800319517 911855022 549515157 610790990 932926266 981786421 624487069 958452021 70837180 986755884 386249818 440698751 284316945 322421618 788520200 955441213 393575035 437508847 555503756 996168315 460814375 794031112 927281271 997043681 904855553 979666186 713265010 882908388 812972246 838418458 198652135 692994784 436082743 500239664 472812245 873124169 551491641 655534332 852020168 931320851 718975578 964957834 609066219 767645444 507121134 515052882 419835523 655646172 806610863 832120146 994755281 997452289 545435591 691116346 375109203 563877582 152041767 632461075 383612464 639437313 460531266 916469401 647448318 972970397 864898662 924570807 830552674 901387368 844715998 898099621 463353617 793099924 782618166 978364487 102807067 318667251 315000870 946151162 972448336 993868397 867218979 914905638 277053930 741259556 676774735 709836202 804757418 988251774 721923732 796537162 611912486 918039906 108772151 592294288 925695554 927912181 255456885 620923365 17544544 131849766 840031403 992185618 529865131 677036327 997564989 998407690 480047070 882358898 223743894 909583953 937849450 941209846 371416059 835972107 933439534 963945839 660305223 970558540 611019942 634899736 218245435 659604750 455618293 487706827 517990261 970505297 568637229 937170930 253503069 628276154 718757644 848008575 748292649 998000553 896623744 966429739 822546716 904028790 360923744 493349288 66414400 155494848 467549742 965846727 639075529 838819473 226076637 408251674 751019224 820532864 314464385 555391946 845084988 912353247 420203280 665913902 516194994 564235920 631425276 743711195 32644391 709484102 277940558 640528625 67995574 798439381 755501019 784704559 205135233 421334925 105813827 697417734 282637820 464352293 99303678 438539968 198713610 811968476 810859164 867009532 919912908 967465225 732406618 829391280 357148251 789833332 752884353 901816740 525415758 772925771 468435770 523125885 378755611 530660779 801421321 843696140 282822339 441890799 528286498 655228682 146237651 857584462 213199672 908218057 296490990 711824076 609955293 742175068 707111187 961596062 151213104 232251220 875886516 882605885 402112281 606979008 238410519 319959402 798859038 988576520 625284746 906001292 883297413 939729380 214749681 511940452 575157465 988936296 111488698 244318531 931335284 951514112 948617740 981738148 566281822 597097597 882214389 957680689 191030666 584303621 206652626 458612884 382661706 723672915 981464299 995672852 990531902 999387106 36635828 108554101 474436118 728102053 241934887 997882708 706399918 832809451 29433675 711569837 641411091 954127119 169875451 903910032 465153422 902210710 847325098 963682231 535588115 858141164 499751908 735204483 738386809 772465647 429646334 884857547 324086373 785208635 416609669 605963508 721689943 936760702 945483909 976386458 488470689 674006903 678543024 799437594 837208382 847831342 632184533 978548531 356160710 562985937 274117664 505032535 180855206 240074430 12609765 715579855 473547041 607848636 907421797 937301324 732859818 945883895 820974195 892085976 396833125 927451100 454055339 638783177 771550795 983630209 431767719 557366790 287938925 784069922 347427317 533689355 689040988 963722167 872253220 999467371 254291001 438438975 525370245 912267381 947771674 975601942 277854000 711867066 771100027 893527282 169570065 639321880 86064918 445187073 832659576 947922100 54202604 785010912 935473701 969653538 379710409 944198760 641706851 688243939 572149561 847818755 751978741 780494282 927554844 935593503 494501540 931817498 57129173 943220992 117036482 307033479 93850553 704149049 720176667 952501795 69662540 957570654 650266123 710104465 945684234 951236319 654919458 738386877 128929202 552243330 250647178 553459733 175066326 770397613 959869644 970215845 601503413 727492850 203302740 754347803 198228803 354322831 837776401 914323746 408789137 947944803 86994218 522712877 110530317 963270690 964197676 985392897 630661302 861635518 245993917 343036219 895093710 920939404 878043253 930860897 292118266 476567012 752158376 895108397 336674537 563373982 399393837 956717177 326077682 332853125 971476911 988512819 12692725 695535082 924325290 960441024 356201972 968803143 438666175 547129139 573794349 840708902 826008915 978812182 761531339 889588743 210559798 372660468 239100870 831761664 191645041 552454435 452003700 594431029 478281579 625803053 341902150 696741769 385172234 560421653 144735091 913764987 160259784 370229541 988785254 989057430 809863320 949029081 912968466 969825154 198493125 832318615 929718698 935828486 162298409 365365230 738549948 985903628 17679311 663156035 383915782 833518311 201255461 564570689 714160039 840879235 481230413 986450101 595171936 605500897 183319475 644028694 811894849 913814093 209309347 313391344 51514118 282330897 709956511 842273954 452808986 547990454 119358874 348782640 820928377 904420181 455643212 520124976 842989577 998998729 772054725 784237006 823326683 912355155 844203915 884245951 40051187 274251082 515731578 987917392 579400710 862305222 614985296 822375059 857719055 869680591 177125274 231258061 744072427 798129598 975276934 998148130 84352084 739670433 553888481 967178758 922945596 956689315 8309541 27231033 47405112 262343331 316383496 730765837 425906591 682976646 154923899 182668935 72893464 883193383 682862052 888630037 372667886 996849519 546727837 686940001 993654551 997674818 148603958 745701006 147676398 533274675 73111736 209912769 223424759 803084284 712007546 804701008 132663239 657778196 715754680 951808250 611987412 813592063 177601260 819261133 103183992 152901388 848113474 965505858 966440897 973825551 492975744 831702359 518469778 884525330 937644732 967048868 705045801 820980970 668200619 949690134 135958174 289448454 164775763 590727270 446338517 821477852 137360664 690019642 40640290 379402082 566157711 773072881 934180702 979692049 920505815 979493984 78890821 499191549 555565617 834706293 343933254 815328629 999686400 999890010 944111171 960281318 898345393 914910759 212851141 360828556 445681906 843658550 888035776 961757869 423769355 936959205 401946334 556367621 405035213 564691474 90154094 238519300 229406947 342745853 723390099 749611132 737302977 767223704 940437329 984170812 23961975 107800723 328647896 892471179 966508653 973336344 914575968 922007480 675104798 919934602 561627380 666080435 49211470 918347689 877667246 901719557 933599372 948020292 565311493 852282578 9535981 609940347 390687079 608904493 811419862 974946257 989798410 990599786 302548468 734321193 726199067 771009110 43529045 367125761 67622292 591699439 530905378 748596623 272071042 572695862 520492175 538005029 30758757 259099546 918047312 928835621 866788598 990736164 111688931 663954449 939878169 977281707 94258368 512444836 941415729 981770442 118218174 455404708 679848327 836755197 964398462 998317078 343831397 553846974 889565395 950837847 273520731 677509504 116693253 698325427 420811898 616738084 662991326 802447694 955939620 957795232 420389450 499703089 105010658 438989069 885916432 963988912 349703063 849841525 394962873 703273743 551736697 865193011 297223809 942226908 341253248 707778257 901846672 990740736 387324704 557406055 829790406 867125931 628263363 708064653 258837195 439735399 978931740 988554074 187076050 410977271 240490723 662839371 615369928 910392124 896880170 972598345 959490793 980113439 138409092 363439710 6437003 34376435 465148844 582459977 404247603 822896631 734561359 972102413 311164794 838399082 279478047 692037411 332599255 763412007 740181552 885827652 112393533 422313883 814731876 878426369 496860020 866949461 536886145 641412364 324953570 511100748 366776220 765153274 429994125 880782110 97994715 960600998 93331568 395039753 500956754 690360560 479277893 670189238 737826678 741778013 852829263 860209125 623338317 858351698 795460804 948667419 572712973 916413737 283766792 862202972 850691255 947322204 592132401 810717319 666180088 769654832 863682495 914049902 46460934 617188494 800736710 875569365 751523957 872152565 448722581 588742096 478609785 798165405 952849344 960183992 325749281 916916940 630988789 980267916 574330703 882273311 768256271 800919444 969402521 979415212 702852104 779805484 232329698 730333494 301586789 530530139 150587995 933224327 88177312 215794051 56910264 550523438 202364005 365519153 632225095 983047821 189974051 217997843 56245372 213853622 814533881 902613757 713470578 786807162 419645975 897447459 704681465 955331948 862825403 889384208 529497977 687718582 999809438 999919677 196678976 545756651 680781019 888571848 163807585 618579706 541332722 870074483 888695107 889650431 830622736 865676827 64989297 272123608 560204442 949388199 323388735 715059640 919140442 957014766 307725460 751941240 135803118 560660092 938253494 951176555 550011101 552358865 17736156 876251638 193660575 818215089 507218549 701012013 554052951 703509327 886858013 891564194 326367224 790823885 825499269 940785419 155182091 825890531 271658338 964750657 703017340 718559208 156373166 327474693 956790044 982040986 205699659 609509935 675732056 735212483 392611832 642428234 492567737 699626938 175410016 243128399 116807784 262683659 725616973 784263632 162874048 544226951 882612744 979231543 560069347 998384165 360197746 650263945 424219449 885410672 77709535 514168475 850828043 861788959 640416619 746699521 383226575 656679504 361504594 751993745 247366674 516062555 741961597 829116434 875888197 912848176 850314363 869885255 390873998 673897776 472238686 947149056 795325552 966572929 599418337 615220308 727637761 866604633 398468231 410463918 556012440 748528570 971312073 996312315 679676674 709592724 154411957 693045353 683129357 712369503 927764292 953911841 731597858 765215521 656812112 671621534 48466286 264352677 84330479 503408171 205590597 222016420 28309889 436955015 213721166 646419717 684757874 737311366 219021892 327328438 261591868 397897611 237673965 590675321 616673749 642828856 289179605 359762124 47593681 989679090 947770776 998781541 218637130 337839219 140423128 930964712 622994396 820463848 384391162 615705591 450382262 598032573 331624885 840937028 334797514 747782536 757918254 961875205 575296043 600643076 44212502 849718669 270704016 684318064 990858515 993562691 662281137 769042814 114574131 514210308 423098785 550494420 150172231 565382816 277632050 686941132 722112024 802320277 346984198 634007950 376308896 697204435 100392146 666247709 816227241 832060972 847898539 871978143 799614557 993955184 75767685 650850370 826136205 993183260 568898880 647936757 752887641 946708977 564958877 608938315 498268037 992823704 42362252 330134562 156536004 433775849 360778836 583774376 289629337 466499103 386646660 654700919 249744799 959731277 306963886 817676721 729449978 780492852 126405973 404672464 572652462 872674948 669205848 806204378 873872366 899283840 534252558 887055057 515216213 554591083 102790840 799798988 670548031 998457770 154081344 714543039 774941045 831278829 529214496 787467757 491457829 524325135 35331326 995342638 501969556 795405505 236626494 879837307 746418980 900138035 589038388 941164450 990760586 994819992 14925694 540035628 94969293 314428571 783477173 995362073 985660026 999438874 721705838 880723270 695947598 948042382 482576565 913805262 971616124 983056790 251806479 420391078 2617038 267498707 930769149 946257001 812182182 956527055 737328175 821188528 428478089 774633357 346886679 775441240 618778967 996837549 644557954 845288433 841947844 996452570 434318083 934873536 638403498 684082714 378916619 436829926 567048767 873730119 342276255 799491417 353744952 386690507 609004151 697328557 722490131 897461950 921836287 947402228 592553475 672256233 483570784 853638835 98441226 582014167 38387642 305918030 30232086 651978369 589558296 954443349 641931098 820400398 853373011 900941616 476176607 556573386 824209273 940974054 612267194 898341739 256614080 837069859 969858708 973584713 824739450 919849018 233097776 726248679 425562409 663922418 852464370 913012974 322408939 759302905 404969509 446459906 767671166 839688656 866292568 925857217 640302743 641451611 727940769 747821438 885967935 985790182 39669457 697522510 917934731 981764134 576359714 782776491 553387322 841995389 536823017 953870232 300863984 371797950 61438687 301510844 116098241 658134084 802902684 985612611 688424925 940262806 37537749 594952111 625398756 952002113 91173310 697872121 849582624 919699723 20367404 649510492 722251611 875343428 274265846 812251813 219345783 901021901 296393229 592366528 925630343 999678210 821554383 861395106 809257799 959344563 492837905 686966201 912235134 949321654 599576135 873661010 699633906 993905696 106111913 702808209 763168903 974505118 101850492 350083301 323972945 854814725 485463039 927704693 448665970 959231437 248197529 633860929 17573483 602589478 593386832 855428571 272018 474684969 507086971 659656098 691499062 833269633 228912674 621765925 320858229 751278536 471857966 666557348 683305765 949470606 861038903 948891677 830113815 888710465 674352137 901138394 440894830 808444769 555160953 671973231 118833854 764285026 997618468 999222237 632549612 981309130 285179961 747583751 6947074 857253393 352322125 745234891 439259418 640595903 137467500 372363617 49812199 175229799 540134222 556814672 406406426 988928683 692154871 762315286 707108248 917123133 400573626 936519666 427736717 994303982 768106536 823812612 898666001 943567869 818363751 833789031 816628290 937003585 292521022 487194461 92318254 453166051 83411287 371453869 937593922 999964496 528436516 620156125 139503877 347795146 753269067 815788681 464818550 882086822 586519562 764632479 584388239 958267628 246543258 843901455 366224248 720143229 124646567 994945090 342821977 676852537 36873988 610507446 477460038 828266282 250934 435001280 946872473 962225351 440454203 848832997 179557881 442152334 749969878 987112159 769246223 771091029 744444431 905130423 313591670 953148177 395706407 445520522 380625143 838291835 226873195 329642175 201612491 778591123 366963723 962272487 124454813 584125428 167418070 182102625 35176172 216355996 414362327 700138297 954343123 984443151 314406561 827952037 924282775 968203232 805044884 904342989 245976616 820281386 922898809 994774155 529315046 651504785 439063371 564065003 704051670 932495519 943802997 989205404 348923193 594417630 806043207 869007683 450731161 848628276 440776125 545655428 323363430 397400852 820556261 898203867 564432422 672160955 837208214 909882244 268927793 628120157 614792649 681727105 346239756 950251069 580754656 733386477 138802783 282102367 857644653 987506452 33842515 517248615 704650932 942360344 832339788 921197435 245417087 319829250 377868391 717018999 258427747 684011028 470623517 502052855 370680009 811812770 119031477 487487297 219792761 594166718 511706797 685388832 962698692 996804990 576675020 830847304 900536487 928633401 754295166 993051161 4337119 198183302 915129064 972164936 768862028 987986811 740719737 988300021 534867157 828356856 598453305 913282104 155223162 326384809 761413684 820768642 936674814 973096992 423958137 850141031 968315760 969580685 467354606 900529236 557771408 626729437 537647839 580868114 938049438 952343768 433549711 873891312 797659225 922270881 776448162 976970864 553939329 836987011 894314597 969589048 666072084 836170714 822752307 979069618 353305870 367379473 703819891 921503342 920763488 977184441 25405669 128412728 876781782 926672326 914041274 972846119 669423144 862344578 394150828 617431190 530966122 829457427 813835131 814202198 830502237 891711999 553449562 691234833 499893171 539073633 604374346 626217660 74084648 902633032 739777192 924133230 853192449 998993741 488943484 598258821 887553458 906512253 127538657 848851782 76496507 406870448 398845897 760100638 41602347 243888005 860266456 890293436 218240198 639079168 123055845 301020203 574352859 665277294 731439989 929310708 600261383 624057044 603477361 845944122 977430370 984165622 925176546 998771101 412494805 749644684 787397388 822139278 862393371 865183872 62160603 714065828 691627188 761146051 28696521 753655848 909449619 999424995 656650154 962671873 510281395 907752685 693902871 727595950 879833555 963155750 657603942 765267820 598860386 924236500 141976320 434936398 532262472 704428427 861540644 957720113 165248826 408097258 657742005 760700651 879967098 972664429 477841239 621749928 439537940 465805930 675463853 845368595 879013645 913826669 244109645 386306287 302729124 358065650 546930932 598723460 760318858 880551586 138122980 780489952 72388369 522235331 857513426 975270633 333553947 876847407 5887463 343564199 691550356 715198204 528716140 802361019 317539909 621582561 586909236 807179061 612772402 687813437 888121574 936212096 351952458 529920296 984226715 995459262 708157554 954159471 259548418 530384127 482302892 647129807 810353738 910092041 335980802 985693252 316702338 525222550 871342794 929391331 364412036 635233150 998753393 999321149 956676814 959248103 616010448 664843233 62295575 613722835 144666785 848866769 822749880 906689433 76631663 687421083 444358561 967000076 938507291 947804476 156718545 351381507 207310631 236096869 752865606 797343277 378322356 403874626 948384706 953741991 949557111 986475369 474790928 841182015 609954220 999041210 31878259 629617391 299375708 406038903 111806962 757290424 106673516 431207395 712093975 712455381 713773890 821163841 156875995 701664574 393090548 537546037 633817075 777184561 35593187 572670682 580400912 693356421 541184126 855930374 108283872 401135310 857486573 978532806 287371264 953441035 708294366 801654203 198745024 199673683 702650375 996447102 924810306 977010789 722628325 884762436 541530116 659045673 351277007 807045644 621265604 863449167 616240639 776645735 85540727 151250582 387461843 618051224 263178741 627639713 57041789 419209275 501669513 631801704 233589693 516832791 593479288 789211557 991670835 993983591 405152961 777365751 869708300 939956246 382200027 721090326 362663063 744279946 907087271 985906528 948331390 972484652 620298489 822203064 931254279 937839635 53384658 248241612 600665035 915339215 748944803 803644918 439598535 621307142 923508830 975471006 779966225 838620348 167048538 554751937 673303679 747833323 679940307 962204565 125665089 273113796 135748715 759583053 670646863 822109783 348454293 545146430 840056493 880497216 214554488 983200126 758350375 904709690 847280824 893605197 47402394 992402027 635652790 948382800 452567727 930430690 479662928 718558557 911949650 951423893 740275076 981407085 849600479 908628083 326635382 827107658 476463198 730828417 657870501 960373814 997932650 998483794 106627914 228563367 911971708 920771965 372783572 970160285 278331824 909433833 167600081 400362386 372627348 488233561 811294660 941828224 17137318 280301392 289318850 555809453 696374844 950222762 456626905 639883868 903523054 912556313 618419630 850432843 454980134 936732044 569721330 777896261 208325853 895033711 659326917 796665947 407647292 896915159 132720379 956901977 897394838 935948215 932305955 967895511 380329167 935665802 920250507 945539652 182020039 905148564 236726666 894733505 910806171 975778789 741564771 920608851 866126352 983998178 529501157 943897934 296720376 752132492 146203330 912257096 523397061 741354625 288064552 381018774 245469086 714436175 780909859 877420714 236560537 967133882 944632004 966435158 417084337 723997190 38667244 872447378 727473479 747378033 805026813 834392770 764615649 857015331 921870197 956854498 794303891 840138353 480352994 817359616 59479518 841068087 880210092 924990380 549562296 596742824 173605888 615814326 84509404 115036168 291323047 591368838 930714715 977796003 993255570 997192248 820858608 880481824 151676843 888384629 341624987 688186195 363222079 990980488 457869479 987862007 310831890 663476573 819384306 933039120 128192562 705254378 343961681 404461926 391946038 998790256 574055155 744845899 602402787 743097839 997950432 998316128 727237230 753092218 398821894 720956645 7982599 732473695 987169646 995231497 516914388 519904415 80441391 318767890 566208844 921082941 33807460 131050846 857070187 936266323 1473876 942505293 47478840 337284416 783246460 793906013 635908055 688320428 160966268 739875244 226707663 867811633 894586516 954674934 280724171 698167632 73545209 994884420 232450819 869346477 641166344 895024093 866350396 887572747 933008786 985846938 215995664 642657654 1076509 627533532 775308080 926939865 267771034 543959810 961281110 998139317 278169433 496389181 962855829 989631540 654028093 821456946 474884304 537386642 139613759 521562431 435006347 881668545 692971122 955251853 222324384 849319652 427853956 904993030 313002024 940394054 601288356 859524240 838861167 968059803 611303510 723885456 889737530 978609357 139712267 831137908 78198053 520478652 712163658 738454313 316375246 416014583 562348035 839715540 588708298 621020074 638010195 987839393 82251411 394970373 739314464 790028624 872597805 907412880 211416943 403948080 596248963 665219957 647554363 976147539 171212820 277868593 187539871 697247342 704195236 819353761 497611350 762140774 299596512 639106683 366148099 839110812 812768086 892127845 90323341 424359029 169956880 881005270 14707007 558131631 17185172 680403569 10663413 672687006 312824259 980457215 110231015 687193633 990484119 993366950 825855736 861799566 120985059 673646370 641665674 856258674 460335202 745506462 527758001 671260502 289702186 883253467 15216611 82915709 482839701 938754723 737939292 896036734 503280013 769680977 541172606 622329785 826029845 901208468 530416869 891630742 851682220 886309055 587754229 958114821 288643722 693017031 555675350 824591166 540663933 858525686 32233848 327160415 109773547 124781664 946459847 960619030 135022206 921815076 607754465 891072859 719232279 948832983 112915218 374594419 73825053 514009028 753309595 859317341 51195490 88410291 118416947 660258552 574713289 827156350 327204210 388892204 839573322 956369622 160985617 825613041 268836204 709939938 547687253 960365722 463701174 635104586 237460311 373073560 102504994 831895371 33242008 307840549 19121683 925587369 579973710 953729389 403768471 454131139 633801082 909974468 601009045 638431274 841080338 856111871 43356566 97086391 467224392 965593906 265733495 430047524 381675924 515084989 762849983 782887755 86831045 615284637 388649462 725627698 469067785 967005272 403089911 587758344 876602613 982871828 225801696 539750537 433509136 956952650 999795129 999922298 992766346 996515281 107061646 515286037 532394151 647801469 865675098 887090564 478170256 561614642 506237590 572282554 648906569 744384174 474238757 753787428 182460293 821826091 865346802 905974401 981698333 993304264 618439911 783791282 734186787 882043736 15470016 215651566 82689126 306867910 446257610 745031574 557924344 598125402 627660619 702360019 678126014 790610288 152855942 598325234 640160913 682073776 569399507 728511314 987053212 994063049 288225450 417901141 780111727 967292104 739453200 892896196 273815984 531806283 441235510 663251797 221818565 659210856 39559375 403900770 448540370 726396685 152374122 187937889 649069283 751132572 189227800 983608737 204039360 547208102 815243128 826849296 787044272 829258119 490675817 952532124 832105551 854419104 219436246 774096358 287045945 473883038 616954988 853332465 639349091 774628215 178792521 192812759 324640235 396156116 897634508 926782126 728475069 762065182 24161008 848743488 651275949 811618101 512477694 822369653 504400280 898154903 114396697 633221169 179819254 908389316 659099326 941973276 152239947 666955608 400678121 927378804 949257479 968120393 668157873 702496515 960697057 965293585 152405620 935006255 248628766 443434063 816333992 865534560 498387284 659881417 512395927 793683126 392032448 636403173 759132023 800772979 45468941 304609165 223832541 872658769 903367432 968958102 243324944 795892205 529790864 642165755 323076950 609395494 589408745 971308710 822201359 941031280 966565924 980602317 572237839 952171999 949752095 953575266 914348041 953685749 847951637 869917023 816722586 853516741 848593190 893504452 517714539 982968547 313318008 578701957 253484254 265506755 382519157 787425987 845303580 859466305 903099616 933864497 738444681 760202941 701914208 873379550 977296905 977794734 495379994 596184661 815396571 936024704 490195442 564368893 402751794 714193236 404716649 858551957 637842145 931311090 22129396 121540698 740952703 746250965 656715822 799245281 821102907 852324091 32459542 870563167 673986111 961349405 708918582 772023431 416149663 696276419 217972418 686354750 7734883 135175472 252591867 289410480 784370119 843754935 789254477 891642245 949745327 995362061 111339444 538406339 613486377 871952811 818053539 843869993 784118647 988813484 978448914 981183900 501628517 879572169 847115470 967377657 556221428 933528926 204351702 735177551 70907505 403761340 972651578 972687255 320856284 726033758 746117613 895256162 15655671 202965736 799154737 971319350 532169748 824209783 785688516 788173359 797318614 883281794 532051411 882254839 30399384 487107776 994837415 997014706 783252523 788187299 985295651 993833570 847917989 873661954 90170587 923762948 891251727 960118470 517575528 564144406 494405275 704903324 928927866 950143028 722567174 728837238 837920684 963745426 672168614 771281454 354228575 384001348 348584492 536563852 231546382 328418719 281767334 435571094 294277113 912008645 664285966 900480388 248345170 928691586 400517343 542530528 251044715 295520795 709758036 892522491 218781840 415954362 704469985 798476498 386610915 977609486 188679111 956145787 898035368 992367536 788180324 956646488 824056553 893302282 970743148 973960005 985891577 988897033 773813426 780729014 521222102 590709628 646858058 917056130 31254121 710595615 127517890 742737742 15792924 66938539 14323331 786018617 873685712 987413242 851532086 990315618 156604592 441348429 872866622 918126415 655756572 807964574 893044726 998535407 949380683 997364768 321865319 456689623 541214943 635295525 449003392 800727118 703779807 993543894 51805126 928481608 999610208 999851472 963726306 997423399 946571347 969989492 328965773 841755738 245841394 689617847 495256918 915800925 844120391 877220902 411630109 996166162 79527423 99108363 605600959 678960223 10924450 711237908 369814808 985385901 811368258 812073899 455715513 587745669 592774698 821009776 273050797 385540428 337356233 879459923 936142593 945464344 177936354 925313365 439973900 602592525 34958008 810732704 301769957 418758708 508238036 855165287 898688523 947324030 63143889 921660863 738770115 814886372 796526056 863421584 623671601 969860578 18969035 438916245 820517608 841065421 652662263 949180418 253789332 472235080 675435120 949603275 21023910 385078164 865587160 969553223 157775926 865532585 672601549 911235622 127539399 714025959 404041943 533571280 920971291 962827455 345273367 839482889 404890258 502434199 727147235 919080252 851368476 921356126 337372767 678959855 236084836 370411741 367775431 977346912 154759909 681632783 286759251 866172305 638782186 930713241 583675028 839756070 673332706 957009598 740109687 903020180 33355716 44933949 430582287 496091063 97433634 769950774 73602322 286805414 539770422 633720747 160146168 460700294 151718013 834573723 763095689 908332863 158325231 804145761 378377661 905583216 99886625 710928873 810224222 915262169 112700015 535594190 661836350 787812898 142624874 911098471 661086482 759809014 2193050 125314657 607546437 791355491 975572725 994690713 779524257 927354109 903417585 920239049 881496946 886425903 343583100 456896006 527764231 865511294 99031884 490057059 290249322 937595608 666787461 773538628 1287190 950183216 73668236 781320277 846510344 929304419 387548151 536224937 891129251 983984586 962618225 967143667 465992636 752081303 421002134 480547887 98937283 321107513 129696867 310675268 699306851 928794293 484276863 686276279 673468694 938047729 481407078 675759843 883804774 898694789 972405964 979254069 161342476 227887612 771858938 915087380 447632681 986357270 777319497 831909011 459860496 970172704 177359350 897351072 983656499 997551949 823549287 997235107 851999678 856006059 152710230 950525027 314854667 802648176 760989297 771562564 608061002 988878212 688904051 937967411 160959375 566307864 609435887 979951253 829290295 914522077 117883861 970379981 808194283 978025282 862406466 872348483 840932467 975378031 963664304 983573591 925481182 991636170 37539186 818994581 307672356 847802662 246964332 838383625 517991816 954751708 242345853 793055624 884189921 959017734 945393116 968515589 673639800 925003601 502389989 751054433 454489268 995838523 652259233 767173215 200024662 807642819 690060187 916325393 302813150 745076497 564643204 608428147 280322605 341148550 615486493 648158613 450001002 982838580 254704740 921187630 757414624 790114136 166157518 591583281 237125413 414367982 413315719 951556781 686844686 896005662 711158968 932580803 479842950 758624602 270691046 796492249 889473366 918324532 119867305 835334605 834903418 891116417 963875252 995540816 808134576 898900451 602036698 699074358 951919644 959520427 429461204 589518767 610294327 791360006 595238476 706026889 819271880 819553632 892221306 919412683 750827393 988972818 243304610 754060608 586578213 894308568 422266726 435062656 719557694 801375601 544749042 759659754 776741568 831847533 866454650 916883411 360372708 855848804 144048892 159954860 604371631 694144178 91986471 104536333 712119186 971103815 783986849 846427664 525202992 736948059 512228809 783239057 92279777 795641166 103657445 492112239 500666945 536908934 7987578 85896290 443913886 604728506 76631508 263210837 519915510 918373671 900209146 938608871 240507196 871981401 355580540 418861411 351411571 780024886 827509625 974263177 921519322 977996862 400722464 481003469 804264486 873991907 765348259 921686976 437170795 637827951 515569148 558968544 47426596 676495613 267731128 821687293 483623644 935044147 586479695 971761897 125002662 293481854 218523307 250816911 212936233 555069301 617572069 931698632 339354615 642822762 666771167 963724144 355428384 620295116 75902686 506613663 214197703 976652811 693179317 889083420 805666103 919240462 909632957 985512002 562169636 801313018 936301657 956696743 131678152 644509360 625076077 626946324 319442080 401189210 231143215 628650025 496239981 776292815 968014780 983684615 461904536 674710618 163968810 651940533 498651928 676211185 197802694 778963136 133664925 969333264 283759674 597312597 160517743 521244108 9060149 139550332 375092538 871327783 820689941 966211663 221951446 620398374 5627759 317449994 331288542 631925397 770689666 888294367 247517544 986893592 446969717 851302487 463495707 984076011 911325212 930169662 595442548 685449565 280217712 916294875 903333900 998977810 711610914 875379661 424363125 775649973 630956219 955921387 246315011 750457825 666662704 813347439 376440568 556673400 524421441 828100924 937674204 989780867 369372017 919433328 713987873 972725752 454536968 907151752 59887723 283721173 94069119 751617148 951501064 973126429 190705802 994289759 773336354 890066525 178447676 895571833 683415366 731698463 531873697 801080855 984227444 999388753 835222402 859643245 259150811 386774643 334607489 542049286 487363397 723740729 418463028 688231800 924413582 986159549 194375171 411854349 847024477 882071281 98220950 401256265 636232490 796170697 396018171 955468383 490752973 513978410 478493383 598117272 213819197 653033901 887910438 919900996 720372870 840420750 786100510 916231539 35128925 232273153 436314633 891937329 123274281 481459031 357352147 596786117 404455430 531935845 784650336 937763759 738687998 922193407 927022288 980726374 969023360 990802770 279865704 327922437 377849981 742856436 514474884 875632507 203187974 204562645 845985318 966733306 381747608 562508546 210572143 994431737 34019066 169911955 299996793 599918043 333331972 604355342 950453696 959912247 828919681 882636873 205712691 576879225 489898373 740705760 270304080 798331951 241727887 284719607 951334543 996512423 689599707 692575779 639461279 806000566 315950797 519208686 296453202 646237707 819155709 859152551 31935288 461146855 206199102 607677370 366459391 441248617 958808952 978014696 481839640 867474556 121427716 866096744 693380363 869650905 305374063 791296245 187529823 965513002 532885764 930201387 489398095 924458650 806553816 835821362 105641873 453277653 449789383 940252318 587115173 813909147 606433325 940930669 3104629 149261969 603174928 834135290 28308025 559396685 39123641 569908013 53230774 272795713 293040670 362199683 522358161 692202967 189013372 670635979 732140273 917703225 632019778 958725104 674327900 944686736 722768969 978732463 543019960 952014288 822399380 830800363 700406234 747837476 191750816 655365241 123753161 437912646 430961451 675260386 895640347 981376015 873157527 989914478 249738949 835743498 847111116 961245936 491506291 780197461 158189928 461876806 816963173 998858610 580000894 855291583 93364682 688745287 606615198 770125366 517786564 598631862 127030994 252807643 157096046 864683090 73942332 958583811 803679396 847201142 76995516 403798478 468643934 888302101 890322405 930279650 985347255 997952760 818532465 852647960 658962241 761289663 596933618 714286513 746071549 795896728 88934548 795838123 242590775 387217957 415276206 596202860 271319718 676013721 958937266 978808104 71759612 438382437 396402968 669195987 216286075 558185283 375851339 942297768 549902823 897106316 480666532 563655332 433350870 645995545 65313854 548800068 432839564 894724847 353001478 636642716 124151358 775851309 356001968 748849060 363363771 676291387 291412249 463928357 733802230 988199485 37655682 335055767 635105655 801845799 930281883 972366103 954544684 996096597 983594663 985420511 745233982 948633817 491810351 828698606 771684252 847269649 269713692 788910753 29686907 681996215 786812340 872325661 42836732 588721684 761786653 766677815 747944187 916220220 506101205 630762989 366135239 809679063 213621950 951656750 101271528 503918023 29918850 154020930 971820818 974590403 501949701 560572868 180068145 211824327 629477160 678669007 70585505 518986563 187625530 869956430 689366381 734596249 280781626 337024288 779336740 992522988 748624891 967538208 57398500 78133733 440743667 712014983 606470238 934516595 436730245 650509502 889894884 971584842 202821538 398351506 949789735 971001700 341791283 990916831 156209973 622178450 20889288 294402546 762397968 826219229 41442576 191711360 240069638 940466557 221800343 246673308 493941499 721811456 768845904 780346217 123075344 229893026 24066698 408169020 620466779 833390185 428975597 578639053 175249495 696943356 228562598 257388789 653859492 901351705 105926858 339716364 372114775 436728890 155115827 500902951 942980480 973742110 275875948 445565558 730960872 863958588 339565746 787045137 502065852 685679740 161021772 901754623 978963476 988779759 85538822 305887312 910213330 914766685 80114752 212918709 30940641 59866676 302809109 873739599 39619490 420246196 47362009 334571652 962325095 988291296 865282936 973227972 176993255 910026410 275825749 443925392 299336288 872019450 666386871 843843170 700920933 726095472 192853407 868237888 462034745 860368527 661541460 795876432 451895463 800107642 621442208 738133689 450511335 642101684 921185642 928831349 109825496 397658510 98466018 244801222 723704689 934765798 989215372 990647692 681182950 846703537 296051579 923145111 134711321 191896775 412786 604579555 580037546 819742710 620871216 824787800 341119864 987364694 898264124 973866009 132480180 161410458 358889940 724564564 438933377 843478001 907196637 951031752 744968098 996264923 621838911 830982353 444500034 973542592 918468817 948733671 493082249 560339300 129206760 755233485 687791100 995413510 930984697 958161072 317386805 958815399 543897683 904302724 890553824 953198704 483951939 821081182 811326888 893877471 297316910 806886446 200789352 377097177 124245075 902078596 322003543 347913152 985583407 998586272 181915340 563686034 248715268 541824764 989411635 995264946 38600412 150175252 261282649 587855953 746514573 943275946 261988077 458185739 399434986 623378196 293009523 695436768 665947071 708092644 506392147 726055054 169044643 720593525 594983731 627023515 16126623 980664933 574344238 954689690 189037278 700878721 887624312 954047463 69972197 126334154 462709125 631583961 78062348 381983981 289837657 512837369 334005482 477744597 623200361 969860527 384997226 567714667 669959615 875833660 737008576 748444222 66814633 888896132 104457244 924987341 525643071 655158513 990792181 998787662 1712992 743527819 818454712 867190217 815971595 877465274 719565820 766213178 630322026 690066926 233688598 992917684 381574596 694141469 823094473 849347705 31926336 656552861 390425583 555149206 776675880 835534428 41582812 338083592 698815104 843984184 755301622 882430799 322483867 480400528 233877112 240545197 949058023 954704045 252419353 451563622 6308468 602950917 454821365 818474912 445083965 828464826 569668950 570900623 189340951 680039621 61414862 305645733 778258305 904189490 243796237 584048404 478909044 999117378 280742966 975549767 67675939 998269814 944795770 952187617 468242431 617405408 89758320 591995779 877403793 933952732 782546776 981106857 733866969 781701500 150743737 173947294 928937685 949450352 770702359 839993022 395860821 974788193 662619410 723246172 177185444 528612795 588607455 708249215 283504619 416538233 775890396 780199842 795772788 887501317 851523508 877761314 826712725 910347596 721453225 861724387 375189163 423890339 36696080 766521039 968264584 998623268 124026536 992696957 974855150 979426339 27892808 190269366 68067955 544765383 275649416 820196603 247363726 946540347 478878473 575295306 704918156 936827850 34434699 576392236 96970148 261445982 571083366 732967151 378562632 916952556 188072030 649634193 713641906 849001333 62541532 915232117 958113499 959052913 788448522 797793353 813067490 831722269 505458708 790180668 863256421 945289009 737184190 755356120 204835157 737665382 71929827 943778477 599697065 771421928 495275878 830372363 649672265 806419234 742444414 933825582 493574876 859300800 489838045 791457125 154152568 203674286 556368632 834412311 736977081 744433156 343555752 667773268 315455114 809715462 48534125 329362849 385271870 811352388 707988864 784526854 903666134 918564905 777719288 860041644 53928862 342986795 693342712 912390587 313283015 659589930 947993864 985512951 941269692 987156468 355535584 999475289 65331423 899951335 395863890 920982109 978158342 978267727 349989925 557796766 977741356 987664861 92644471 441861583 728844140 794669255 553406693 714513032 559409740 992359402 325657444 506595683 527408926 625819032 517976726 586479969 375859686 409317294 751990800 988080395 469251855 741760638 492604560 991693986 299218388 782984872 452363758 561790623 671172194 994547106 856840090 867682726 914298072 993608848 784469670 920938809 253357975 723138693 804237158 845728767 712130617 917315301 326191110 928551876 393446540 664248313 595068912 840998228 468485195 775556825 347337187 963541032 211405081 689493423 414402093 637793283 677530205 867851575 782311998 856222895 478933956 941707715 564294836 993055332 559590047 826393790 986655092 997937850 758259885 979461429 705038135 911095770 824375969 940170886 142452443 358708628 758523178 998766180 588158165 653031156 839448441 974674345 785235619 796983230 672136397 679497836 954677292 972277496 193387196 572835835 253296940 635117562 569051240 662238111 127800127 436172031 12635313 515788303 511127899 804389307 980544635 982240038 400343601 936064744 832183722 919412082 986765832 996953541 979327591 996288982 987894877 999846502 980340555 987824738 576218897 764995054 956783510 981995557 27919236 965754516 722374489 942937276 996555082 998771691 482022981 955483016 201173535 880608360 754139692 885818453 151530198 894435777 70419626 777999898 519137099 579613909 409097149 612487260 247073185 423306582 918660677 991957065 832023468 991175520 144161919 588761108 606729093 629932973 410672541 418424363 652353333 995263011 646435061 816081992 430042029 885704157 726131958 865834292 580396254 629402122 474215925 627131851 642375549 775204256 664167892 670738427 597393918 853002701 371546606 634868605 881066282 997056696 404679833 733062676 299455219 929679770 110501177 235160063 23114839 90643160 18254595 833931126 846157090 952591226 389932 719238912 223484329 667820914 599936466 861646845 369283869 616332556 973071494 973319553 406677666 935442921 823054182 970048084 627604759 668390238 194754811 850009079 978777139 986944430 177105001 658872185 50157640 235763611 44624446 842229571 117255019 256856936 254454607 592530883 408008796 815241165 721873498 990521909 555635945 922862730 133419622 280058556 814915596 977946839 421429858 718471412 25793157 620067908 992556252 994748448 608770883 798865913 571581096 920000250 222258904 448350632 845304273 885837539 622830717 986931271 225156098 818346243 819583498 845215302 315513632 333009342 633924659 638042786 965282756 983749364 267751102 979666667 138922823 252684582 322667872 445275778 827312873 905641390 368058315 987889249 249719510 608828246 250264203 477637308 403499148 938300634 79031788 844148436 112625386 848346372 694019082 949625024 793258630 795447936 175119460 452926384 602991494 714992480 583580904 907927941 273017549 954583692 798334060 828334995 933580968 970877181 416447770 428600897 309150997 601450230 262644314 674192595 372733698 709941549 938159296 949554650 514046961 919612480 422599404 861851483 838917209 953726456 835037116 957544461 351304561 692704553 276143589 504296091 731652621 968102426 835621764 927142659 323893332 825876162 42501854 883427065 361536902 759860119 962238356 979495375 417723344 455197135 190195635 594789354 459863173 904792250 607626270 690701057 764608803 922116596 99754485 417647688 877414226 982218231 41959943 902444700 855418992 886293110 387897562 651501089 667845129 987912385 876014379 880923202 584404523 628637935 562530708 581708407 922318823 941689932 452599173 984909720 134998571 872920827 236137256 792124106 82885144 688025783 704628820 710055482 779640385 891908630 811596414 890605395 489429460 615394363 153373348 416316458 873776015 962542703 480552400 679168688 952737272 977259591 934857045 950606674 349526536 512455153 12702891 903286924 145363796 882903875 166980344 504114042 606989925 816165359 233696841 777349743 941944720 955994591 480474965 526646778 160089695 180110711 903028231 919079287 925338451 950326638 456145144 639696474 770152948 823838661 585620153 625883478 292030233 813520115 256587139 600462717 684306369 934928569 265522994 498608054 258692774 674327468 34161086 647855541 696990655 848095133 422237659 817037516 69446978 184861908 253665285 638645234 618577279 808819195 943672676 992482634 189607334 702495250 772942098 955062234 26376137 976594440 909413987 928943986 919423067 954786860 771920428 842528711 328860058 376477986 795123313 994327582 366732275 470252092 984602672 994560402 800241373 945369078 367603461 878146869 266378328 845825177 915468367 964129375 256618522 805961260 447005906 915134139 713593900 818122141 780668127 968445162 456633324 865898163 642083008 674404808 993420163 998018468 480352901 694254441 188263394 815288155 199558443 535183755 153713438 787341201 644048649 897585608 199643942 695214348 777168936 948300993 202389658 674633086 688775743 989362317 640968054 922434483 155380663 651225283 844236337 871610514 780670981 924168675 489883605 935197569 944633868 965508212 888465551 972872081 972500737 972766883 156024549 331665699 859081038 900155430 86759946 366027289 227198545 934555008 848076808 911704079 566394234 761522969 157312731 708348388 917006532 988835725 489261775 894577894 894604892 925936338 689634342 719667648 722354002 863914625 257035677 939289626 928786361 966420690 613730939 687039741 973504947 981615582 531309304 680780648 429280507 459980167 440487610 640769071 562578887 642122765 13851296 296620817 139806027 586332790 720572159 889436146 900567312 976224532 591508545 931782189 54360430 644290586 245058324 914843736 65474110 675275489 221278739 382449935 784452355 955169529 972053940 987305073 602118325 641094847 947371707 966750562 389844652 479889033 225919275 389767676 599495837 943862823 708585218 769969288 232895515 978823574 929686215 969099660 137834403 869172390 762013444 870353165 400269938 617135308 790142625 878706112 659687670 827865854 823576365 849635562 88347775 591225107 89218209 878327324 865175768 883414921 915247565 993243687 599340358 874408534 638000808 692322883 395695484 932029244 872404712 964040225 904358814 962507026 722404132 989584281 911863188 968947840 756674121 959752083 622491698 680232706 833884863 911867047 208122870 656037711 133742754 597999633 482048900 858362351 697076627 870431225 943816371 995289241 85604406 787898477 433043181 800382133 805942915 986669266 115840410 177986167 969602862 979555607 410992824 958085285 465398408 959439727 209368308 853732025 727096348 801305771 369045750 684202505 653077594 930000478 225213614 979126244 361793193 625345059 840665734 995674295 417059516 699935942 377345882 589161370 16307842 734877096 196208342 660733288 904300599 975363365 639279935 895200852 857415245 967537791 768874816 833550403 272048656 835245076 729072200 768354664 54866296 858222029 470104827 609680762 632815391 783156307 974128615 979860676 9801034 778657986 754450404 781841133 35608764 352890945 688261689 800979152 785715478 865157485 344333017 529587066 733592169 738414691 888741928 908696620 553704860 947787542 889885415 918096418 401653578 424589826 744703301 998581278 917809879 963596606 247522173 902497655 961457203 971857504 231292134 400441747 775472842 908088464 97635941 225787675 238297672 874684437 144785237 318525015 511606381 598791287 59895018 346738628 840767794 979885292 798934614 988854223 753943627 768617659 819779473 976970498 524005055 904880163 279177769 793262023 19889441 324260055 208942477 783818793 69500981 352092653 591842212 827380989 663680580 779031720 872692235 966913632 468248924 714735660 95213193 214191483 133818073 976897590 42315856 106278819 348663542 702219006 56063941 234478648 411337061 828502031 548864778 766075122 430216098 989470159 472526667 929439354 243290056 658983533 779820920 820363907 905559657 933848990 754725661 934833063 85166004 999388146 288755500 361154038 755989081 824618027 277118493 782590940 688089970 710190182 807369719 907668060 106131410 895759683 818834374 932831178 441878444 745726926 132712587 388172212 851633689 930497385 79115506 688725909 190838570 236181023 907428556 920425914 116399641 671806539 566396770 913734631 879430882 984463836 243015480 970085577 733982284 900516554 786607928 952440927 635566280 855939848 71280743 587841507 498919587 917968381 940013252 994368022 521222575 799339938 553483337 704642257 743864218 878015021 996945717 998737989 922118578 985423936 851464509 928420740 391449490 976149839 937378839 958974043 660246628 916177787 325390361 683295044 690742620 813819029 694714822 825968936 497032464 633894001 81006760 238812523 572168490 602607254 142607729 703357641 180846228 648153577 835531362 876745197 602854202 615207580 49244527 478036506 57185579 726650159 287210839 765700577 258646445 493850170 725703129 853592106 857650012 879262641 865547213 912280934 61079046 588638925 959107559 989575487 847720346 897515270 387658830 592505532 758607006 862334022 596620845 854439731 740312479 975759057 680307526 925435989 794861364 844274100 519971845 715665776 297994110 830840411 733853861 873629613 430767342 978375319 356408095 540221968 50158197 458228010 320638026 545810749 295319795 539736018 563014854 841180178 62848359 737682711 572629096 641771589 470252935 510981334 964904910 965312645 211247366 659419338 575333126 890539217 461492289 686593903 420002770 671054883 883562416 910121806 660609336 768499470 705143876 889317190 828355450 914172448 891143342 963845630 849474789 913590115 172733478 276087745 848912248 919121313 182734348 306233498 545862665 672145818 431162934 624104642 904484622 971209338 86942645 546944613 900422414 995335133 307004374 812282954 212928285 465655267 598252742 956611168 454185533 844696613 565559659 628096435 350234842 657559178 461621273 919919452 806236463 897999796 744343747 845680680 828835485 991060045 225010347 229070331 697183455 797044967 841685872 876767449 420282653 781976617 752236244 781547218 707731998 717089326 436203287 642220926 524433090 718113387 270339967 690178079 87902418 563586594 319699118 490418700 168812983 490725078 808565886 996273758 891274299 909068183 986697982 999475983 713192238 929473899 997169538 997741446 947202583 951414885 379253258 624258566 930896167 980009670 289993673 532110938 892100433 918270488 642125753 955373450 719639560 975937607 556237208 937451837 622918465 747168243 799927774 852742474 231988150 429976465 801934383 934834809 861985770 864674848 726988653 980147293 286272548 452059000 615439761 758102412 868257350 971835885 276772353 321437411 154957348 501209334 829252791 891188591 200754819 674156230 32182938 906492435 580268787 712277538 161185051 292409006 363022129 722391419 586116680 728394849 847503979 894065271 527067015 616738578 755260214 935688614 829391444 953845181 693059358 865746254 842083314 925904418 199079503 954353226 576764136 835241160 269891340 877753383 696287962 973007275 557218612 916185190 362891836 686028814 389322336 713444044 940184117 989228427 823695752 840583993 484896116 588190665 696723874 984010771 749553624 852797045 256361404 317099763 848669317 993230469 886579891 899112296 443181413 706294466 144644827 493586527 305584030 664991911 711671154 880281318 269430980 569457644 77072593 287565051 426012050 791168029 808104424 939069214 969357040 999243719 43222610 467698897 587726355 884275225 996630969 998740755 765240545 968610791 118611471 155687028 444464631 791300299 427463973 489672269 621536473 702253331 682828685 805328958 130781678 603670957 729468480 757024722 396393412 646750039 670021018 922380781 714876616 875490363 889506479 937108214 299512088 996834383 133376421 266835277 31488292 626816714 495400966 812725785 36905138 397739007 849289595 964057804 3833299 601412667 756800772 985279124 698775834 978490735 937612524 965679641 174922517 865636377 839824318 948054834 462922527 840130235 94244502 388207625 724919341 907467100 25305776 497800750 795414451 828465955 342829760 609028221 697314248 984486518 479809779 728117098 407113534 729204581 757180321 859784233 290174315 856870972 391292937 816947713 83916897 764806304 620860150 830535402 42455861 573753892 501648248 693418070 390754741 484068760 192084830 536133589 719345590 894811579 623044689 971356838 783852672 968777304 914555362 976184348 817214721 882412861 284351801 288165055 646915369 995113078 24013723 197603584 290063169 745495757 846175954 859305967 432047172 514833409 720403598 848317431 280697081 951511445 843748043 893019977 656252703 695895573 640698526 987459335 504821454 841212762 303792923 953147180 690890626 854477859 160318020 946705697 711965309 989145446 666935887 698480235 651804898 763684630 548734177 706227039 469605035 484503447 392662559 498198964 328994922 365839652 275016332 286322576 538489008 995745690 311390204 537367122 955952942 976152574 574349975 583991848 10428145 19645969 701656621 887347062 284035137 912514222 923798014 930914237 712063365 879010168 863019727 961114592 161130711 839989194 685359329 756215893 464295729 793293649 873869867 878371880 946003654 962892307 63219220 962799656 822196091 919608537 342870946 668707397 41261017 271961428 577440687 808246498 293021843 940032690 559650173 606967148 277260647 661551116 307872189 601444407 305516448 308356092 538718474 746402713 525634728 891669728 291006501 771656886 520668779 939549391 441529819 739814407 942939797 943643757 690779202 993960288 865867966 996666331 413626718 585472398 38774490 73867162 167762676 670146949 813840312 871350332 584848934 686607386 687364153 977992444 744651645 983041710 341973470 433455984 184022071 297345548 800611626 967288948 993028311 994664675 123340613 495056045 3288551 330033529 56943791 263962972 325664695 988755658 40701042 832693252 406818434 665717565 393762144 817136826 520374845 557951715 497875200 932320354 689996524 919330150 321537427 996223022 955836045 983019765 522854169 545381319 709666813 854032716 214450144 683363815 172537721 939458095 2327239 976275202 960305528 970808629 737474769 894686874 505304935 707663310 910921085 928268614 391214467 472377563 849819449 966857573 472464275 912300871 588491335 696406950 164330719 450965112 836845291 888114857 520930965 656452478 527035797 855954901 843083753 984170864 809359122 945367202 167404171 954301444 290651134 588669095 479869938 736317738 298332371 918169168 681292253 937837441 297138113 930948385 442702969 656472715 907099479 966147438 566340999 744390067 230553257 464612131 422207067 577364019 582412538 866325306 366495310 798074965 941559819 942254300 427301045 655545751 405890482 673812501 931637809 938132163 701633632 969211178 72183297 208250034 211033846 780897583 888516942 951500185 721276587 997042269 184037883 203227838 331940502 985852303 743569701 871008898 401310717 555484582 665315063 887699011 328090974 474150572 639183417 796596762 263223302 570778038 67446528 687187280 978449619 987549958 796014749 829099557 284945057 915090951 584628503 902154960 238283576 783266582 71219548 832231350 562824162 791858531 637986187 897289891 713358990 761593006 887811620 907342953 101361199 833556868 749057944 828068420 735105995 964770036 298764929 987965626 754149455 813170010 784276813 861283195 620489820 652257582 651027964 940349393 909916796 996690398 824380557 918472606 995617566 998989324 541840438 917933063 216564731 888542742 717107469 968489930 577584970 834506392 926740124 976135123 377176416 481000787 371365068 959298113 979411675 979799471 89710167 306409942 159609642 210422605 127783492 463008722 449566062 984693731 340528288 772670825 966599063 972206723 280186988 888761057 98624162 654970104 923052947 957856051 733679230 748182605 25130808 507657861 88794440 722063431 140448543 991622114 799372133 901567597 776791187 980005057 569162907 848484102 413473190 507781790 826069863 924462307 655543047 970263904 395859464 418482107 754427661 879883879 277911211 951485484 297682307 654323730 837448344 845395637 354178797 577474850 779513268 814858403 927296370 940436382 24163351 617995035 306850541 937237235 833442435 914169414 31141018 35214057 63806469 752302178 979204271 986503452 193978924 704797363 867309477 883831290 227108445 989223174 941938997 963000844 294555202 635816438 634875016 938483483 880210456 907457486 76221389 518526748 973442667 992264636 442560036 607694659 798409606 877428553 487112696 932940803 394079454 409188799 657246923 799807556 649423427 720643332 8225156 886940318 609804482 704421809 899236107 987686758 413475106 834419843 422306540 445549135 956779214 991874104 416183064 445244917 495668851 522790289 68245332 206901828 888300397 889432709 269218763 983801578 402647870 621718881 754537592 967171936 217461530 738084620 979311729 997004863 393318832 722483800 279899762 976782630 949429800 983656666 640970060 701394353 373996322 555752218 584586054 725553209 234128703 341049710 546106041 978966192 946368026 950778604 742795725 926819176 767941419 996593068 785908836 919866901 376799037 541959267 779643554 899918675 764739157 816342408 781299485 838589018 605973602 920000281 47186307 471910657 885057209 892722808 741548413 992686847 624775447 940570394 608032029 906501200 975194542 993786179 783521430 852044845 331023327 733267449 286190195 503913060 881292053 996039567 291833985 949252207 174685760 758132228 731624415 944832581 31195667 374764946 192985078 820380123 615383811 676946225 759477018 812076167 544438544 572773667 362792111 737008593 944116450 978225162 224336646 850374768 466444351 537544167 236371572 366800073 110629822 721293078 966194354 993758235 330461658 998659927 235175601 931218040 187403426 256210842 617474465 891371946 238829042 925094734 187205833 504448711 525923707 909627369 623421284 682652793 727510170 740996670 609029445 682159671 928321712 995953496 405836690 616870861 563092136 959874306 425908438 670226598 643881226 891622286 39702996 104939857 630016015 665140090 167951340 228544680 40034715 907954164 388253099 535954672 266676215 704956038 106524547 417860415 963533327 999025825 439077454 892209909 418186302 605054219 655198893 754933314 994818285 996000074 177872049 774108415 225996444 410763901 380707629 381689395 895298464 910787753 329077124 922379518 705469413 818575038 887130632 924214424 156726496 719757534 983845588 985051622 454210855 558532793 909658475 912797158 537866588 771961242 254523205 642367959 589160594 676228460 761653302 932914061 96258509 229086440 724187050 917860286 662506184 831327183 86721482 657157219 696267095 909858360 501576700 904981061 764314841 883089545 410664703 878428742 406595474 677652986 902709546 955905513 526736005 851936040 926973724 941595263 165490997 632677394 863130636 953299781 421548590 764463553 408547404 445688895 843323281 911315579 474282639 979746736 776418695 889153904 109685652 675450840 236939449 895533872 963658942 964175956 88443421 903457537 275345196 848156607 399109427 670415239 584954865 994032635 435005618 984349353 726587734 954014983 340709405 853831854 211163544 886963215 722353035 916497941 488298927 899722982 181616926 969403099 148731488 934903037 898090469 946188767 410927589 852040891 440123553 933884324 86479915 760260369 150119182 794921691 244050342 797750172 230669611 666852487 90741571 368762938 733090331 964159916 821674703 903814944 836409381 844598734 231870387 482781206 132090644 295927380 611013242 943367267 378163833 657657580 436392767 591912803 610094579 986237577 599997979 968516254 954477025 974561681 797931479 992102420 691348716 873148917 763100639 936189330 782089469 800960491 313629068 589349557 527481466 636365100 181626310 360376672 634052612 668648943 75515936 366170618 59853976 469574978 133022699 241566948 700718541 936868966 910131730 950860232 88872013 809455664 218448709 886770905 723568481 947098410 61965897 780093635 69522533 680999239 705853415 752552628 710545710 949468160 852252811 937847197 605688595 637529632 287182223 982497703 407453584 538300703 891838584 982462525 458637135 483817664 940322040 947036678 66851090 692535227 209314832 919573567 357100253 964459031 43853285 562515377 689020696 777050758 903583332 937555333 818623873 852859138 411299113 422271805 473690786 709514424 129150242 897853910 339820680 594166948 615105642 741813751 534807190 913241003 418917750 439040267 529619859 696235696 298531647 366313945 68966313 760161428 774699433 816998038 415684294 671351435 44918435 282171368 21630762 572046895 578284039 698524481 647150925 890444268 1813608 710387945 969634071 972810390 913875529 946092076 642939737 768086118 801309566 989392908 228885789 287246067 21355144 284522919 867345567 949886449 910472516 917678924 359796305 605981581 310552217 693238758 535679584 594086980 776922226 786423466 118016858 141406378 384487243 844813401 479094655 989995510 983014570 995290933 877521423 969135298 883264413 947393310 146971071 529519537 609176628 726566722 735262540 911593968 281236361 799961684 340835815 963023538 597724559 600137995 915040010 981951830 299445578 702696492 742153120 983220905 180284598 591241633 479927387 519587463 761857789 886255703 103807816 810674150 687602080 815467667 39294198 70792759 733235102 851184680 210994754 410541060 651301030 871966231 158085691 543891572 381943795 676434220 664721902 892515850 824075867 962095889 533671768 661083584 808509583 829934954 725020502 765505758 6070431 194971127 289264254 873619462 750746553 998635028 619755033 801552538 130730604 616298052 275890175 532416903 644990217 958730630 374002148 765493916 295126353 826788062 988207877 991706304 180718522 487864677 863366278 925576222 335387139 900594927 759904647 838663670 760625750 872327775 898498916 904685914 573416717 620456851 691261045 720686375 319988522 973951148 663801847 851379931 84145544 743782156 336319312 483228061 95007154 369715156 497731849 632899744 63415199 825409523 289397075 684958719 740693823 809289821 860745345 913483524 44227598 829156524 722624376 780113729 868500015 915707959 138580269 674681798 422260271 658869072 703460991 927355639 668991891 774458318 416892765 962161142 385816429 800357201 245872887 819472281 252888310 516774567 459466642 524022311 101992020 531449990 208311242 643655571 666167973 975763177 890511187 979986423 59205003 394494073 286038571 349224207 132655144 829973381 192141512 883089730 535890617 760678434 238901064 967553531 794229563 858145072 886252799 903972390 463228885 759479212 71836726 802219764 277795166 605727027 321349023 390360284 597421588 719580947 91878038 751321456 956566049 971387405 306890774 321026476 482777678 968744750 599744391 935180267 662548491 681453826 181110038 923135021 570887902 757058410 260472192 395885127 599613377 901382883 208017406 803374238 64773803 771658474 633358103 925177474 742617367 912924646 345524114 846607477 776047983 819228137 339870029 636716155 326838859 460120941 339343811 590806637 601046418 984559344 933572051 968339187 467389881 519950798 514130558 937314301 309802936 445377238 987890789 992877666 768194223 891904231 444500849 624632491 890121491 970640743 390004362 857635064 124872792 739174904 34223364 384384831 748598102 763719421 199142857 988251991 529225395 801506033 591120289 669585828 547193048 811586559 948955186 982946473 110079425 495609746 648722252 902281437 665465678 946624719 119030222 665344792 148538055 177780097 795680326 830593744 734790879 769994853 115279467 294241972 424105529 968813658 748471774 953502887 391360774 661999395 882100398 960423245 230644551 843606682 649139146 689681935 970570946 991929462 322344493 719898163 296576891 986359999 408546569 446387048 38221859 293077422 152992747 294309912 635843107 854192051 288769713 713011820 114720794 668824039 42729732 721191235 303289204 855738436 808462979 950017380 137699457 910561817 893984639 963691262 743676356 964952638 349586916 549476274 305725472 903653409 600061422 646980638 831607119 971606106 807913953 863499039 349405695 691025885 717137498 809775678 33200855 628202798 575139701 607096638 90540002 262515435 26881631 904855271 684937310 984671362 835569072 890439309 283148550 931982912 53338919 645943573 962510751 995101330 210307118 912811409 990960554 999215207 516479892 989168461 195018297 682313320 792239068 996375596 330830256 596565774 249180807 513235454 716241551 828661524 499387930 684074330 476195767 868731632 932037075 957164692 750735431 966677169 271958052 599850716 51613190 547839805 480999872 726905269 851400027 981092155 752508729 999524417 427557476 721536971 882055583 891639669 971964273 994223705 698473087 848430686 677437259 833518770 866886572 982788019 717263393 790228727 825685917 900250365 269035539 514568731 916898335 936019418 163011871 362324592 212398402 707961300 593076536 866508704 138228089 541098068 780616255 847665249 680931504 768032641 299800922 703469003 420246848 871118467 961208364 990049345 467247622 754857440 530150641 585624924 507412617 995838691 137958905 475846530 975085016 981052981 815711402 964068758 283226005 533604793 42796427 135061827 802422548 890793297 200584843 939146901 653643005 657893478 186020415 234173742 558420481 876883266 123133032 975705431 867762464 951740402 336510605 828034080 659212082 792207111 189116635 841636907 984889919 993037935 836836452 877044393 480317366 996531457 134643918 299358173 512259852 638115667 269889764 613470531 142692794 716055964 387261101 465590454 414319976 795136107 727295388 994382253 577755029 820290204 758758130 937848572 202159732 456306596 584785963 739832897 257165674 922813495 273982450 810035203 218257651 449180352 794867707 885645426 953534917 983461863 48254620 770225788 118600827 829652676 768784524 996588944 461014309 623409713 779552509 938572736 292338151 783768999 827274485 929630410 592584105 614307955 59997885 320701773 629973200 720025171 734055646 911049966 588068635 898427232 655705317 986655632 671040637 957395288 227425502 616831944 165063437 615537852 940361178 954926547 781708284 786755378 628186790 978384203 192201346 778136790 855518765 952457732 985115618 990403464 42294263 801587018 352971770 699188196 955714340 967595221 459499485 570798322 146372673 615773588 196566555 688043945 932037484 933472289 418177476 529673925 16194798 125148968 65732953 887095590 650083537 659357180 903994945 911478011 86158666 898765977 283410308 283761597 948066355 951023041 361419998 462960628 51934597 943548412 487155053 807029527 969915369 975026890 512469278 908273231 462090650 847967369 975645244 979572591 159768660 422343484 643267576 655624847 158069586 304850518 702548447 710673550 600809045 702243696 384312567 555955477 922775174 958551914 886558326 972166294 793740634 906035961 344381657 996490638 784805141 897943183 341502117 377417824 361901819 562644469 221519710 301990661 874698589 947157634 537421765 874907300 499990813 975008583 820051994 873988471 598253462 858106739 895385269 999347933 639344823 690447097 56595919 620242946 990273665 994589969 260954597 567331888 763316449 929148793 32368757 453706413 980992489 988554521 550878247 869797614 60244685 501605896 190365243 490585569 361524816 691412102 630971558 985746536 449386747 779919778 196278736 720618223 972756876 975493295 519488753 704008910 10929915 469864257 618048329 737781148 406335065 936108192 369396689 940579368 37357034 722907142 766072503 947378940 687986763 854673409 846097446 893888306 944154957 956825489 740659907 958830692 178814572 948627880 452795365 714682160 183165482 256736356 605869043 923652238 873206564 954194140 600408135 689786240 302725523 591537769 900875250 948212066 513706522 705398665 753517647 864120766 83189449 455395120 491580756 826185119 927470203 974731795 328566704 601384029 906080079 974435431 722995214 986151592 21630621 927898491 701193385 902830616 743729769 888275823 628398524 794560575 10788210 71807051 158817935 822577203 8413756 227327004 641080403 790524913 650175949 808117398 782191486 793461062 679051845 895574768 157517091 715494203 292646549 619044883 642785190 866807923 151875779 234292036 5252165 661953421 489882662 992321450 426549924 673135066 782980345 965714717 713992754 874270173 125354144 992146869 467708727 608700525 448894512 655710075 946194749 965613319 952117875 985162278 204126860 830897259 749936562 999209593 928686723 971898446 316568042 353825082 387525473 855661709 228448454 686181284 685108002 772506633 325217392 689610737 63296455 970482995 331574987 342903059 433866052 844466817 912570186 943527086 807634496 941847712 688860626 923242033 802629639 961440894 282319686 439183457 68970170 713176537 100525392 373586232 537350035 919211257 288752839 726032373 196383664 637101511 647609959 788146640 759089155 986824527 570258664 983446300 644603050 863520432 611166618 894940281 623337903 996353867 615381072 684859288 454149553 944119436 544985291 987756602 520094083 573466108 180769473 831937397 755489180 911762621 343031379 432554532 462781490 836314854 53906388 673282562 407326816 534213504 419780107 620263112 173003423 876098890 444609422 762587610 705989542 756262941 203596957 439123642 688140486 947216662 669106452 954698785 2918228 523150004 924587047 989472539 34811631 902730281 201995807 869903493 953356965 969940756 919006606 991690959 392241417 918725286 278948973 619025871 663904837 733059707 250722621 833277447 988846925 991890984 47057777 618672471 964059999 968753081 168631768 383737081 653926833 823999451 806660185 866060954 658221857 787150077 496811268 756314280 83949053 380416485 937553145 963716642 391364898 450174163 623262064 835894564 508044756 870415883 823941113 911525690 239707411 567858188 229131361 995727839 528972961 629454768 58640811 556099254 396809686 499448993 451954558 790538606 306625908 915316191 619892250 620547151 70915515 891747894 135841060 771344254 170167052 774186139 851416257 991207642 469068237 644196564 838101076 886821598 511579092 879499739 479804370 810559161 893194868 995177342 773830810 931590559 180343588 512323999 695703587 802266839 469132563 681278795 740223162 863170569 413078855 752754341 261105781 840343165 853708834 877613619 830122853 869929308 702706262 945692721 385493613 913945329 262653199 868735386 491960317 807260758 848508343 976009593 591682023 913285083 10022852 787166063 774837984 832663396 609413567 676963779 352755008 893896958 527238732 579409796 37204852 784323930 470373004 805780156 94791110 698377380 894129144 969111088 277615728 723461372 320164578 829085815 735504154 935072804 988902485 995139009 956534280 964432869 320808644 815638429 571288905 676991348 724442353 920437319 423545621 900302150 761654386 860133220 236523604 726317479 786746754 909870652 238777239 709535434 8735463 670208497 910926880 936604453 999105975 999900199 549226449 827456624 33381677 630372814 979748384 993041609 65701681 304825916 611219669 934277714 586629345 936993925 287649181 694243269 287836470 708511244 631329095 731563585 381984988 625784693 117833449 633233029 745309695 852266318 943465877 995673095 326310682 838853583 666175305 933023335 135774504 793299780 255272534 845919793 924373138 937089461 504207066 626661209 980753177 987073640 831921111 920797345 124465652 213606906 413442926 562635821 992224417 997608348 281445834 619242671 512778177 652312943 708711203 887738201 424359082 749798289 669468123 750264159 262284965 817375476 444992756 860965031 178025086 903946543 229208501 510899087 593949656 704619492 6918523 854033409 62884078 787391099 296269792 626751642 759980386 977300387 21421872 957594915 55720120 866501652 237580010 700071698 103449807 804204789 219600190 245277992 882537532 919205655 436961973 487372465 379741495 865854821 491420855 940146169 262038676 845304739 651082446 988076258 536347168 664998812 765662868 921919774 296871805 684160826 285974164 829626068 222966336 564790312 940708991 942501622 226488395 498250816 405994735 811302586 57297153 323423440 23577182 227899539 867282580 922833696 11502715 857370913 342044131 430705125 209727406 464685257 362873754 564034698 424588325 938166527 258690242 533224248 18308431 876762326 805872390 810173970 775969883 855174057 421672631 816957743 857846693 947982801 642082634 941221495 825100092 972027442 395177162 531500257 88371929 528648747 375497735 653909745 806701004 888454761 695995808 957299853 540381183 752058286 341473650 900749046 802553038 826097540 926658518 977955861 663630149 900284393 686295304 744279919 766252538 958854966 647626518 776679006 316835036 786066162 560601490 956046098 10346560 344757302 539002385 684614503 945876176 975480055 537863257 691963150 551679151 651973532 898651745 941370819 665925651 809206847 882610183 943770624 254246935 681351185 471607842 861768556 964120450 992621789 448445249 875242343 582903075 777558814 803040358 818941362 382013078 894164132 782020397 949026024 732827031 897717100 660527819 994227922 775499388 987339514 30442744 817799017 667718863 872274649 727354754 754847959 136917261 273962120 118157435 975300281 232119393 756664129 763158853 909564982 360332709 947851497 167625360 865998197 463304820 609270843 462227022 811986729 265359701 485563605 851595875 884392649 774351695 900106793 863864899 962008262 442530040 957532479 883051458 985230882 800954274 866778861 906493900 918435729 782236377 822659053 468725096 794044102 709760117 854592125 830277975 900527403 213794825 565290032 251382225 744373346 482634952 935482875 915154496 930616643 39891682 248725692 649833854 829406440 974099509 995486119 325678353 853222861 165028972 522700134 607091282 674975546 206780029 498061080 112908551 454906131 683686434 835892894 844525164 928336837 920765192 979480954 287418277 531283230 999785254 999853271 713233243 797458832 1024352 105782890 646172624 947192147 88760796 981279026 803340063 991408144 2180173 499374878 324949819 635272106 304753861 308436838 187632940 929820246 673526193 988895054 953474595 967465242 79752413 737993239 563554214 963613453 389658213 905903828 956634993 959417757 219928899 391653279 882718410 893560262 397688416 514357003 364301645 628216673 117300319 832432597 703437973 786090626 902032253 983071869 148568784 162184847 955535531 972003991 382617361 820422917 343064215 827150390 966627135 970100954 554617999 719037219 566250600 578764906 657218869 804612043 623382689 911651785 791603474 997510557 440110186 568387591 445497304 618646223 285735036 852925807 533578527 731483307 348631049 425372176 558918273 970884547 565496290 943550905 223741153 396694204 353304884 920780993 183486777 628306574 580625976 641158065 345764867 973106630 460739845 934244147 692333498 711756408 969929618 992322829 277519779 334125974 516624299 768199635 694101662 890190014 608514248 764718878 612689412 921256157 363644468 521931224 180633481 220739780 147633547 564686365 34554545 856595392 692234040 988330287 784655473 973851723 953375637 977008980 479921188 510575110 316444082 559420556 288165241 648475537 177973024 825422712 529538975 545025855 490295266 582687978 439389032 833033875 935338277 968598558 775387427 858128232 832679645 860450712 882834023 889532522 768348759 889656876 647456898 849273381 912263859 933799114 399398489 929641322 860519931 891937166 493627432 723120370 907432232 969434998 94127588 361208756 481185824 756311196 26730416 513421358 666435088 729218431 840099911 927937422 389705506 515136727 698212330 857284139 54991892 341369183 520766230 917964694 137254199 935609017 963163570 997794548 595292545 976091159 829989292 914063415 934312615 979847876 822838630 822911621 880854800 968907579 88701994 540222086 343177972 939274236 4913369 195568410 611576116 617406135 311843252 897070201 837762765 865142474 375984829 685114337 361063429 370384478 211379213 911767169 994393707 994539740 999853017 999915005 452813068 867021945 773636153 840060773 2286041 190521669 232090023 970494625 713912859 825344214 600364644 915722093 917547527 982173021 118312710 376816057 710168579 806031537 206174580 594636967 304339858 443637490 603937040 962112788 970439649 998450424 499323265 948964915 219779958 232986795 622326712 657824860 484219938 642711423 801380028 917429412 527712415 573871064 882368780 910708835 414545768 609426057 57297555 619623893 877395092 938874665 923913947 994141359 622303215 671703651 944529436 965835042 987432679 992956229 813970329 889940935 881563523 910339519 121354832 448729821 372132606 398954690 760284258 773379797 706663966 715472754 128162757 235997513 527391392 543370733 631755736 891322814 66748963 850370929 885648000 902519334 432596213 771322988 984999369 993136402 568056963 753352859 408406585 560670508 515985504 883963512 882370090 961402493 21879914 640425262 505982959 522401759 312072207 338665626 244849574 691377611 309269101 853324535 931676012 976190968 216401827 801773671 265121464 891817207 814118441 971567865 481677909 799867706 934441780 935257967 271721951 730908687 23128473 392667012 86279706 638435381 922431485 976166218 984764724 993990707 43972466 75457893 204397197 616105386 319018944 987962982 618024023 922666701 80836336 145782002 44838274 627101484 60732362 600950941 410634010 527549125 514682450 786835835 703915187 796750778 750744700 840651885 302201421 307825120 802439905 955181037 381828868 613566569 622247304 791522405 919634618 974984227 820655927 879740102 85373245 206504185 157929630 431613070 208761789 908901578 926116953 941573395 388856617 880900360 198984783 697536187 475630529 493459175 689807955 946278479 819343336 900356547 281583491 958171645 83022209 509995013 769249827 904157065 453778084 528338326 200610834 947723189 852728280 918076025 445728404 616254130 646880073 949608645 363643805 825391588 162970702 960687397 259498233 915354634 99412903 663152350 673113937 800951281 875443582 963471471 254896104 971946090 152423290 864230901 355567899 767246194 783619810 941427347 655005695 728927082 905749624 952477820 852851443 896295457 166122220 308991128 140503797 793949016 307400390 345981303 70956179 101675758 237371515 528386800 745879890 828344029 568901288 820827129 803693159 843289767 365066262 744864342 874878366 898927169 386490485 535801309 523778211 646796906 403648027 774951882 788344447 906078030 206660145 684590348 209560860 762520893 7214417 219082693 398511749 811657780 902805699 937779856 903437659 925700453 253312153 557075511 40663516 466971484 153798817 675579551 346474372 411701403 309755244 995407569 739094472 916191611 547922283 767279575 743847124 759195526 603643266 875501344 74254857 538657577 875310139 922070383 13549618 767523382 267881624 401452363 485019422 998755809 784081700 948357495 526078725 636029798 212928491 933610201 202967877 251169816 39238515 529602873 162296628 369141255 463346227 757210862 81709557 940912171 185053124 569534879 291771156 315245916 882112061 891569250 165727473 501408948 170788915 968984104 93585122 297670898 867852197 915881156 159812875 852117000 601196003 695844007 639510059 948486466 610995822 870991592 699545162 795351767 695790607 748200253 759839796 913499893 248085606 389558400 427243584 541369083 656939684 833279003 65579033 725937673 546709059 879529769 445229432 622673649 12027442 327264146 275528040 532191441 299080770 316072164 779639774 869021122 799094228 879564720 430116630 813724389 177136034 759093483 3886415 246969905 986124949 993009239 896559988 914308787 380934483 448714790 389124261 646607696 814273849 837712735 989371208 997051373 395138562 647490108 945093243 985912963 702407292 896891497 359970932 501160280 833885395 933867296 70738237 644736926 334807810 889676249 521849205 804491593 724148923 954024694 566210428 638047544 897686740 947147394 221597741 540382567 976179550 989722677 673432754 773955981 385594748 903355655 158423958 342664372 157801418 711025921 476328772 549845049 194800855 531196682 890632697 939030008 606362711 712321381 692929351 734171286 902220758 964174415 911096511 919273750 53760092 301671249 293341641 790028228 820823277 877048189 135133086 231657462 103259861 873210608 25752807 178463933 508523065 683679740 309039900 398493184 445093147 892166672 6107513 301774516 510957117 810000814 170157777 528110134 175156774 351183779 202931394 913973764 796827286 828525401 344553159 969838762 741688634 850856314 397180621 734872574 934582119 980921599 223970326 344478112 41728265 794571595 462149327 795232186 668234454 808916625 76253625 713481849 654410746 751667910 730133483 767720025 978369013 992375425 976723816 997354037 935568822 954990537 911676973 968021345 532291769 558352315 305312082 682178129 185493886 894485393 52709614 724086413 225528342 963173990 610063383 962513445 292156733 382006099 898004510 910192601 101561589 265668995 687235710 694782871 161664906 596205426 268188009 746829902 569946172 868885098 447577794 549013949 719541913 787659257 545110923 700993128 411981730 415823183 153530032 413959651 729849255 738474328 505554258 895498337 987655186 995950688 682743408 939987063 394204362 718843370 29613448 563686223 838912988 865031670 252841213 736690546 811097374 922151365 540205432 772619728 194390471 585663397 703535143 751449645 778727530 894779462 512208398 925950596 76964742 174945156 847970480 946056239 630612840 877343928 380426895 702132557 981051267 991602338 812147155 880241932 386256911 926330964 585821177 885813860 414828386 812470195 748873650 793744876 663401283 724745308 564352093 748283568 116883559 746288703 977400512 987369849 295049060 338018685 567021469 928418712 630072478 650152266 834893482 863851658 361711536 817703108 8430466 506045713 773917703 835546585 175322786 750577017 728662995 919915753 401834067 698069862 83419009 950356473 38130773 332485855 369714764 861745371 922252471 969412307 589986668 796811528 648062836 907468481 340860482 368018481 836364085 911471075 534624038 734362954 25713937 933008754 158185836 495704675 990486213 999309042 354956171 998724269 479661226 861686285 343883052 835689968 975628622 996339433 400835796 734017392 695006427 763526181 369448173 738056593 828337779 875801165 439167540 525466750 852413751 911822457 372720008 606746106 74626626 77992148 528724346 764364661 422853858 978009835 75878544 795686377 938592635 946110523 599972061 868895608 339100753 885652529 836996101 975131979 44625121 688705343 934720608 979729904 720710662 749234941 851188714 975475662 297680480 806632031 999170501 999328735 917599772 997468546 373729673 861865734 609518511 783094754 984907835 992613642 524520673 900623276 925757577 953664603 796058501 872782356 564805151 694550443 740758093 890317928 581099262 901080504 162854371 441809882 519410115 770312150 781046171 913838130 498435394 636770112 782079813 911601863 155655307 254472073 627265217 732310621 386336220 498815781 498873223 541265638 632864570 790224174 233543260 532194641 235810869 820213579 406336935 529005588 462218814 697574001 437134194 966498362 823908935 862442194 939342536 967096253 699924268 959833935 717950755 848599401 636171581 762906363 804034619 932130314 958787673 971250793 43106813 854431377 50353317 877808339 324378559 864701358 989784012 993653248 659553911 725525182 901646357 938815405 690783575 970890315 98500321 244577840 369858892 811291063 680134151 821941713 718585689 794202238 123175640 803671704 708537403 893895520 285483493 813097005 245951447 412800997 70920189 463639013 692312442 968774770 294945273 333701702 236833443 449359738 848000110 891244747 260716893 393705927 795774784 951866798 591879768 896365527 396279082 576099582 393776347 894987150 785967236 836012456 582342846 825043238 805785737 932363217 109544418 791611660 500313787 947106824 431209354 958109580 584679344 902532427 817252574 842155087 558977021 677541410 443785265 985382710 251493544 956557405 564328222 808996879 558992785 574932889 460210485 831156647 589053987 765366733 976608766 986490491 890158115 919108215 268798054 325861705 329639876 608300509 372961811 427961956 431394839 802791952 596315004 671693316 462832501 800718360 900955564 989072248 329558244 437440145 156496028 445319886 210900009 634276076 922746744 994027099 571875542 692551479 630037410 774217709 687515741 696812384 443380270 896797236 917043512 944854726 835732347 937577600 464429973 487887388 463641901 784117793 287111612 610466476 264019059 581760220 570966242 799208773 429065996 938546069 264510567 937231948 963382789 967993686 701289955 785052854 920219551 962161815 611302303 995316292 608924567 747408574 654498248 879660819 831558653 932896328 70343769 964712888 359944944 624001533 982149524 994355240 53320071 518544652 832466255 955196790 779476944 984152708 323160558 664815127 713732363 793287097 195349512 452980731 875149838 957143950 583625483 780152756 209081753 491161056 655394560 840597018 564627102 622954803 593793307 869178461 172692811 317313103 806137582 920350570 679756620 936827551 106045277 860883685 168297215 626982103 360034147 559580079 395520651 999498130 154687676 512313464 338621852 820434149 261492647 884200915 699400906 992320555 107474064 951750215 737187347 978315512 821773930 912448593 220904201 304033202 510280242 947415145 23411865 512173218 182179649 451749395 583503962 824605989 246989794 391446646 691617765 939840346 458856169 497007817 746081716 860527835 675860545 733603398 591981378 836698258 801058545 974258441 810103691 859294799 799079173 908661423 268628903 892470415 795137512 882798902 968742721 976801425 539249641 897552133 878865934 901696580 155999585 230296653 672881915 995746383 794035396 836004999 158527862 748821843 285897861 640628554 468180252 742289315 144106752 562221543 865401688 930838086 547386222 723863960 187496131 705700333 32420596 35460407 564594782 881196522 207407490 958172662 988311261 993236475 702539811 815908715 815611110 851598659 352261987 960554988 804644376 955637667 165121539 827497065 597242081 784217532 260619474 869009175 806389444 895584331 799458302 839572000 115530401 138506404 682377887 956873837 350450714 637418105 612688909 756819403 963995536 995980639 59890756 330317346 890491426 899564755 621319419 820476134 482480856 869202939 112187990 183676712 98893062 164776791 520332123 568419686 285021548 585682726 555444204 761873390 242899696 986680029 583527612 765961363 689364467 906336465 986683490 998168198 851427677 963575097 443859144 626867953 275889146 281859772 757948608 903471296 249115410 803790116 979348366 998037675 276946194 955735244 165508160 647444858 500405945 516217396 842772309 992484938 950240458 973897980 785063463 794589778 319868602 851551921 782578485 962981191 317576153 646701879 897915789 914294042 13039827 374315648 302922324 967100702 864057942 902323716 713496086 868826885 446274507 695182053 474569478 852158648 107366576 533452808 109235266 594060900 346880127 939539155 336983714 721835128 379469648 891164763 26020119 879136556 459969696 799615120 882780818 996343916 718855204 727517220 688562266 968458225 745776192 985200270 738298440 883867101 349945804 363217354 827597295 970929396 836055207 838054885 871561776 876231986 272133443 993133763 877036908 963845456 131013652 447344681 582240331 831039409 640716332 910151108 628130326 746771847 546790013 725551885 306194841 492254095 771484476 848465934 735806288 965791848 30843466 620377202 495914864 622209681 101815913 157714972 990821503 998578239 580203025 649321482 994973206 997505004 686578710 952518733 321149491 542921340 955841601 996709217 464037121 722246965 3035352 223655876 21084004 375336708 272435302 438471142 530706367 640252987 713657189 888058333 795263253 940639885 847488060 858427108 799059658 984437479 626624911 866497833 544602670 653892484 567586790 646925083 296169275 779555293 77367276 395360042 238605071 527092128 466446862 567834413 404898217 809135762 660024481 805613516 982362480 995572299 822510567 977195197 985447411 989570328 227150773 504546522 190659065 866272840 627182444 798878594 244408959 737205004 463966001 465680545 757647628 815441890 196521212 356950959 281625148 942791459 68386931 190004958 718780611 798206678 877369818 947030870 361281005 697429650 701356463 903906540 224695717 336398474 830898045 922658980 32715496 136059699 30852915 255655717 999082529 999844276 397734027 626212856 967858402 970452341 404626446 635011713 656566052 763553365 201400002 538235093 169447414 900029767 580515579 710078820 525020687 987639923 771493117 828240371 355412855 948769379 322337558 805331577 17176778 282523541 433241024 752727102 914030867 967780450 595402507 704059519 652881227 742220494 773116205 982608401 564250807 949676432 638044426 670272133 410883539 474317216 109058562 467207753 618437810 856453309 902295144 980912939 544522695 817968659 50186638 175364279 874216555 929057907 226524032 416810188 987830893 992173508 287815225 961242954 653440669 752836873 903721523 907937996 228355648 919060976 504964064 849738472 675171889 976722859 912177281 930551904 544971933 751973626 52365118 873063503 232776214 263612074 958966830 997515905 266534831 494695233 681216211 857697392 417569058 759021121 762661188 784595057 81007180 389186916 705209825 787853267 234020652 804192996 745038387 895715034 257460317 374343798 272378863 737392806 369175650 552364115 468860766 745201251 907662683 942412645 184081452 408302915 718053927 746535703 717402670 970251680 397558533 622817454 216412247 276861812 746315187 991193684 356389107 573903784 18847994 59568017 102193461 412295802 553760498 871530896 24904190 320060302 836464018 864509717 501071073 521375046 317526688 746240703 375430698 892912565 704814664 882949641 211758479 722640129 492182895 592251307 539329888 838728158 95747449 526118980 121174105 471968084 773752199 915896804 702393510 923207051 384839485 854600481 298890148 827034376 840035442 902841670 915314513 954140828 33127520 827417595 989786284 996114009 954933743 958211722 918020364 966891638 26410098 725760401 365375109 770841270 90748323 698427031 628008685 812195334 64652532 170061727 786767293 864177723 466154467 739764629 437622706 724457297 774260198 913523623 572487086 965865597 929725158 972237262 295706872 699603289 948840131 991767099 470338725 993332572 263056748 886461770 32653407 181073309 442982889 916302403 955468801 962818179 362956166 760711074 582681 380870117 118743442 564600569 320906068 506590459 545750102 972070183 910733258 927429203 540257177 648352038 697927932 783400287 694323249 719687468 343459646 826995490 959479325 988452876 12065205 530118376 7395193 697246492 161812239 874382551 923963809 963834697 118987895 898299874 319051544 959557747 20645579 905180496 160377807 423220275 682976876 716892369 594729606 645695730 430401113 948272227 121990619 356835234 392260966 953175265 413630294 562228925 498440876 674171745 292907205 797570062 520398049 758537149 723098421 959621898 625533482 886560269 986122506 992869396 11716749 562987307 232304559 494950848 29376876 322722050 952308065 964140632 751189891 963985871 319703706 345107202 141796804 755833190 688927925 857347249 239917971 916033689 984800217 996450095 346648251 892116222 38775400 334286500 270121508 608422584 6400528 702390678 231246303 495492513 488569476 847441438 594419083 715373895 806246516 838118551 90256041 757578901 619802296 739421486 741406744 871335203 23648798 347826854 738823333 923393165 515852629 603461305 798832957 884665483 327788423 663152839 635836917 994847185 74017164 187333404 211309058 534264474 561999116 982773662 854475687 897535033 778813378 866903434 6510158 464535359 470149858 620692474 758980552 812023935 751432896 817970728 462689264 484207585 638190980 646235011 263202662 868128371 885128859 919398201 903813625 906553276 807983880 966834733 680562525 881628692 201691000 819638921 271800084 785581934 509740778 827659953 468530888 620356806 846110249 970041791 486494467 814589409 920427813 938328556 5578048 382190612 632638559 656043259 490101386 806896529 106419755 602238481 999443092 999852367 846632709 886292832 202036086 679872085 220464030 942766651 519175751 923607775 788269082 873718787 214177124 693174441 420108812 522640353 200638451 409457635 153858552 736864182 109295516 317459614 563823582 794531365 942389516 988306089 814895107 844687357 44621380 64770645 493341053 972510420 607637359 928191908 547479028 873901755 178852355 770190378 981104516 990233335 859844339 989323647 726020053 892630313 804560949 976625945 91471423 548792350 237068427 313550261 119513359 436085731 986727431 999129959 326442648 837525125 679877190 965442950 319871775 762634561 467871456 834090111 720517073 818410771 525473649 620423428 384198897 554129613 143302374 990462944 794092320 901080785 559897694 716381569 125084824 358021276 427486486 876725869 259394831 910802933 23578456 600658803 864533247 921030772 656917294 689320139 925233365 986735133 720197108 925163785 11002842 862282102 316421053 496181406 179850815 375387285 363295783 799778056 242215258 755474211 100285973 798094427 519966001 540993084 565681946 880185945 872889576 965435783 726940108 829929761 896924127 952813923 228599132 448873990 370393444 836631962 674735234 884623865 876264260 940416450 699130542 882064207 238768024 900593822 538484559 605540831 652951498 780654250 280805349 540955292 48618886 639370104 522883843 954496523 706835177 759680240 333232432 446693341 225717926 415607075 352653423 847843687 373445914 552685627 958300026 987870289 95512339 439570073 505281203 835229060 104843878 965446055 86611223 561032393 146887893 182135161 643303155 718569523 58684891 997383985 805314926 836722309 636698219 709077272 88945020 848819616 975566156 977435905 643045160 740244478 498502110 581690720 708910013 960931219 436482669 921705202 519939880 829445497 116680285 639421908 421750401 638499361 785812843 920700108 766082483 927954357 506675505 892786350 292753853 483651309 21304832 125516400 276692199 308127655 104461082 541592854 1233928 659489085 307131491 977182402 206334643 541424422 62073828 715586212 299271259 361293627 811782219 904828404 796859416 996693328 866459389 998242162 821490596 880049619 327788115 813855400 346910495 494310801 922781271 970407171 385762651 661120543 2567027 111465377 236014722 651115352 542471369 870659074 428278127 727433249 225985022 889717581 241990226 526471986 870829213 965722401 509881155 867239369 969155593 989448448 290643835 702013150 615628725 813087015 570293850 753648676 176679981 856052887 723944341 901699362 343445214 928572254 812591879 920781344 836889303 868453779 268066478 889125038 576049594 750340898 551575490 843255278 72335725 212809918 387114557 759816739 133898099 727828151 838709763 888239759 926372812 964363589 457147562 726242453 642109829 953023235 593846139 594506438 745000498 824528159 204772950 705217925 22381214 124782280 58906761 515394137 260684428 819294854 282932004 788888103 154324402 335370732 944115422 968514719 687003565 874045639 993836595 998282126 162574445 472831996 464394253 936320029 888385313 974250731 12106960 735985950 956965877 976471462 459191413 684141409 388912053 602020257 249120544 749267593 948102774 980269682 925138186 938514223 279925098 740444633 548225298 629830835 967890050 985245459 987160453 999032190 671652776 835578915 560585960 612405521 174458050 958710546 588050540 598412227 720860802 975219738 945137165 953670705 976888939 976931956 982959539 989180351 319173321 901223604 908162702 931568100 191575525 582616149 350109486 698221024 314282157 522911200 665222843 946197433 478796843 990617901 584066915 598337781 638279833 898969538 270506364 949279404 392826826 648135872 216205165 988234212 297937920 363422901 174777195 693353456 184573168 528273531 340349631 391588280 439174969 784978944 183313694 231303294 828255075 984368697 334810690 668858280 873814966 888412605 6319630 113192012 871972325 901353742 560439509 661538642 611194375 896756995 567094287 692374509 31674439 138048167 749980044 916324852 211942785 393100416 748680927 880973569 452457720 658568920 359043383 561271179 841090359 931129667 927139834 930651910 405342137 894611103 823879701 879594017 759373120 940466426 367290621 457187963 892250177 985989285 211102292 541709115 662462947 677318819 24850456 645324104 78028484 802417847 731207143 844006786 311339132 405581109 689565030 944869064 128435748 222418318 556711103 837614761 463483270 590190550 211403740 293885469 737839707 845117094 729032307 834549134 826677851 992274340 948831314 972782828 747866260 996044296 775273065 818959710 862538118 916124140 87645671 711196614 1647780 410726092 14946418 584945188 883734396 972130050 729200641 894133209 273593243 580981567 170167269 521210141 944930431 948911276 779077377 898118277 403546146 436344024 350543658 595150835 636527995 679337576 709733258 911258960 51849175 639473906 265910440 431663412 636459072 867924547 4295679 192466571 925220540 966342559 392121193 740330043 814802038 969873144 706568549 868019076 751134499 806129296 155520436 901908403 725536837 728329670 382374467 754667184 772164576 827990421 943003447 997944842 344259220 682489557 687294262 844370207 35972307 502140245 293416117 831535695 353642726 992870397 124292626 735367819 442869609 686255958 962375173 964903642 287614644 433956995 22744110 54177228 550978748 852176679 658106912 909355476 581788888 636651164 872993121 920187574 552240702 653516669 468471645 714454771 825551867 881075796 75168897 702187607 850225457 929680216 88039898 500563652 530562292 904243043 216788582 638662571 342952842 779599115 779726268 944415184 186859083 707491999 921815730 994850155 510529796 569521781 674503996 783502530 856072206 975704359 754187802 891852148 951408751 967489022 673729181 836370971 828268643 833646128 488517654 633034729 349621011 835154466 260154918 641979649 383404746 942730289 972026506 981839913 477288510 585382652 259102547 824511677 491077962 542267931 446119539 750628267 314077495 566612681 448457095 723308535 58461302 561957571 431859715 473272664 742458514 829449800 194484665 971454771 746244958 817719481 132614453 852404998 646871942 788686139 560316628 742746655 354535124 904184883 402807807 670979402 90277251 988546412 718443280 837685883 39063457 287414822 551408371 998279907 821920296 950752038 636120583 998913841 346228402 569331921 526480960 902094755 186911756 375866743 334011760 580607402 400308715 998242020 465143109 753171389 548592660 713202731 384630321 791135047 442675528 851464566 204389916 877939154 50297455 987113548 527197549 823355696 926617073 989479400 760682316 876762675 191201213 297205811 962506645 981354852 933228274 993726339 114158961 572175381 98626463 985686682 967513612 981994976 809758992 941224847 799186825 910655643 643848824 797232664 914002512 998538824 579258161 893221943 839138985 856459394 220285559 944805962 238789511 804570571 379560727 406313196 267973591 364553387 653763298 815749153 815268967 876836285 986520178 995905103 956941303 962000687 319196044 664686440 361777051 586381069 157946168 686007609 183567205 488340071 502142511 597547655 334307228 551488315 83998169 336935092 42470886 845180781 965337790 978443891 382472037 850660319 802814369 832618483 180213995 775838753 465413685 744072390 51682796 263541953 443849618 586994338 96148374 491278354 407856030 983874571 147004244 285940532 289618885 823413907 476654181 703144333 761221773 940689670 475550029 670020871 303134625 746213571 159299333 833837714 105445403 306737328 821229935 942527087 138594985 491310380 964467027 995559501 325249172 536292267 934823339 968809441 331417114 695421184 374364319 538075314 317864904 499779854 639371932 765461565 737706820 950828474 821523031 825418023 520036686 975327596 568502390 955651319 433453884 512403943 675370329 958514410 577869094 786149853 621139174 988587501 523689388 531132230 381094050 535063338 40804095 879534811 865663990 900531508 786982096 932750978 195057007 629136559 784997199 889460677 648554658 883507072 929664131 962610272 846000269 873957035 132767687 993912139 403731365 582932017 757008409 762061190 772597482 829783599 757556016 974401996 192275 331166178 898559646 984248147 343221063 360698133 363430506 655616511 763499834 788822134 874472146 964684390 179068909 735825027 11584944 285092714 780156260 929601433 42355719 544686332 632271612 781392227 989853865 994766449 298009557 941604310 32491280 510179121 520400703 862663384 198084823 946669623 666565493 719305648 357663890 661765833 530865834 629527372 331503487 625911909 295658820 910057673 727732716 734477639 123443729 669250410 870930722 975535813 339304396 715819292 349162487 466210757 156199766 583764321 511310404 600666832 606308992 931636912 409272965 872390401 444739332 840412179 798345129 897752514 153091135 622535680 721152450 852018210 769615328 896754897 837810588 903848126 504277466 837118046 522964561 573480448 212426267 473506283 77109672 200755096 716002790 858539308 224671644 376896890 605078810 969028055 113743227 173820759 175504214 978492504 140768980 422973691 673505853 883689904 287731350 433657556 536707088 843285288 81869159 325912441 780253716 928040051 626801371 998070249 26228474 882255358 184538351 233996815 270574767 390548695 915386268 994761833 894074385 945027237 702275282 809043802 470236622 554786982 643628316 668846174 362694115 634694779 487185630 813865986 865031998 994397958 885066708 987162130 973219130 995488737 773072917 938837095 426048019 463065814 301097756 637164804 985608351 999100952 470861605 962134916 780373187 869756183 894117180 981130468 868223441 952694707 686280617 978183322 415467622 724100909 399392705 838279760 412476005 874186909 971272538 971704773 928187523 928925990 839013148 854382235 626871912 657060305 215144217 941263546 587899620 923706907 961590160 964132183 675118170 735756906 951815212 982695733 626162970 834600196 835223658 975302630 993151198 996366218 715881627 769805752 520147970 988348317 179134012 564498143 815839622 951679479 595322478 751819216 129376139 954826049 10430484 883613543 991821924 994797860 17255388 646130694 635085602 937262135 399494701 404804767 581953445 746213782 537918490 892602881 206937469 831732867 623593133 805644122 66843443 846680378 304673853 857091479 417530763 712049808 439478678 859264585 485140738 771172300 552987827 800334600 645276000 804829498 656980705 657806200 856620238 942555230 706458399 740533631 997561136 999080457 286850232 834622270 70998227 750568478 436333551 442338572 818537163 991626951 921690849 961856232 498632833 580168098 24547432 953798148 699783530 974106058 397175786 913221799 665485465 926953634 543513757 932291188 253481914 477119017 436131729 899370332 940811704 970191313 431168543 899547157 472421893 985345857 268013526 852609134 267469370 956384938 56172954 845189707 743439942 781525050 171476962 532275340 762986057 822586189 772333360 911998922 307377786 530824972 236071217 256194458 363626372 668487014 268462154 874467532 241309020 255332569 411278012 975866579 323717086 697169043 146519807 846784322 73731809 462313082 203047894 741195163 879393923 930323823 589619299 711564111 183004103 996706502 278613257 469520766 375329159 458048954 525733911 707153657 299073474 320281555 878768604 942499629 506569966 508038260 538736617 694643155 763623191 932722461 586548309 673640551 544975959 734809237 811328966 892678750 543438956 727805974 816781481 926839377 374208095 695239206 706338992 789307721 332257147 717160095 27633750 815929261 966744206 997634797 929594769 956126169 342310877 603207665 854585789 934537186 306089183 429308933 693004265 775313643 681402067 975651078 602082508 741660666 63688680 806067840 544170054 837739747 352233060 455677321 748380418 771802912 117783909 943949861 546586474 583601029 126188764 384475757 341554973 964135828 611775067 868975193 535175782 572882706 623154867 657013263 816474329 892666111 211410107 687315417 813567720 854016839 392401570 980814864 947745026 999933709 823265937 847746091 954889714 990036680 764653647 963723239 19931969 379322428 528511512 760338904 597432245 612434192 787495296 881466371 92130324 744787681 68075758 565628634 862157567 870942881 873810443 888136023 685108427 888792678 760912541 762589625 809297346 912704137 95443782 381502708 670710733 931908576 580213809 687177617 597105239 963245550 126580510 868237470 856812780 957908894 405492436 810547026 849381329 947268409 986816727 991495271 222325901 630903294 453290324 851141017 306204720 862685684 260848258 891127929 891482766 982332457 404239850 483312742 301709685 746345303 650158332 656099794 434527259 737871652 145474893 400347399 34278537 409756957 705477214 943474369 446797173 477822413 628904617 722323111 361317068 666871130 52907353 483419007 679875758 862230477 335903125 375441341 474877098 982091893 674355614 783660550 700891004 892548656 863023723 963912438 332432976 354204115 227394144 868721001 654285663 876530034 618564294 920892237 478000241 832863276 876425502 877703726 647179258 941039353 540668771 933782740 468068713 477434300 257795764 501411770 833414308 842361432 99861399 996108070 898438632 908291635 747071028 891100914 712072206 924646466 656767072 940084370 269974710 364426139 126843636 685337260 781214723 855295595 307253923 919687948 445731795 770349656 568224955 724271627 403417513 515837380 80458739 262273629 258180590 414660185 280581932 486072893 454001387 606663836 94901770 116518153 85652262 212459826 5456105 363573744 664527251 777696220 957961838 974057988 450973797 631412037 560805571 974556417 894066286 917409247 108557290 573762581 716914699 936458538 495337127 606128775 528371588 805015040 503627560 647250840 157207307 164882126 786417028 814231716 100219156 498099956 116336752 768755933 848022563 974398045 550690318 913052952 105237136 128152894 188832113 972439301 81793035 920322364 88739892 266780066 367462934 803495295 616188281 897486221 856601660 913861740 480061496 731143696 838342558 938836224 60058185 321854021 181466239 636290575 614811377 693465433 868171425 930400941 552754157 555253755 438652436 762066735 894993191 965870870 924374889 983761899 730177765 824742622 797389422 816110167 727870800 817637762 882213686 988416057 657507395 665635725 639735917 757756953 150415992 749137677 32657894 978929551 346718925 944272066 331560968 711834042 741664176 956469319 51591761 808505785 476826436 792066200 586450987 659080087 605113717 900666816 351345542 455362272 395572332 406257456 639925658 891728020 461943905 860915253 581317538 860523073 524750034 566261670 54726568 786487749 414031450 528169431 265451326 438633562 40324068 541368568 306740932 842949335 229166841 424965738 59039097 915431909 117943882 651968840 137721666 917818523 13940783 967682755 964934030 969514331 637110280 670019434 784650095 825272208 897618993 950803981 637293182 688397138 556765202 581343542 710413148 909194830 579182739 942721998 631769947 904708155 598004370 657486419 227027049 926675867 517435063 553168123 690619144 974085363 867477018 885608282 495934897 835348359 893562494 984896920 688858114 936437873 954791759 969618603 119659989 160113416 868772375 987589395 111723713 502209691 525571070 959927502 781772797 976622543 307572991 704008637 90218554 203922721 375136080 618984925 136190324 999926887 84365536 701321924 747172998 835115535 280063505 337510791 942412116 954380770 878563453 878891771 547179293 945383430 876563611 970387334 946701983 980954778 534496465 735691066 884196564 925626676 388761453 501983504 558310633 967788858 988161558 992970090 805996597 846970731 257253359 679120652 326157330 363259374 793890930 966305160 629384333 810730846 593589744 940334671 563591710 651980050 242159240 937548186 864551445 942128000 621353858 976002150 609819139 972262743 315960664 733020588 251150355 299911004 455086545 803596239 382497616 511121098 13437673 15440572 690053028 843234235 560899169 887657498 864983727 915966942 432565557 916185455 574204984 901843516 64316013 378391454 173460789 670423995 859155668 938083752 873196146 879502255 624225849 925492951 537966776 715636068 910622484 954952719 348385730 367982712 677062326 822984482 932625813 948391329 733251002 760204249 890294966 932850378 593304952 660227810 885846843 924695208 974592971 990486871 303355319 310946417 428327018 539559625 951238062 963335129 152264569 236047860 842875905 922779401 935768165 969596918 70138487 961592240 822922835 846348516 755453523 904525943 393502947 581652558 436819462 642156392 389307850 757026707 512394936 590493545 604542677 896775905 323006973 374845800 364194760 492097658 333604939 683764107 973034070 993124445 855279174 952913482 254046541 905301769 359992931 497537622 68666451 942025620 430647168 976847533 240373028 887370678 885498276 899197089 325958474 590801262 641819036 881126665 436711232 462181380 824233842 912998731 540723267 641544218 512618170 957935719 781411687 957751000 645350410 710084027 106780681 261716089 691404852 945253587 616632819 665374700 96498768 982643706 225167957 308140368 173746683 496543742 547072759 653804442 755197548 967413660 69726403 455674361 179680872 741392262 219158624 657279857 740119613 814491890 644743766 758793277 945610425 972108319 523396805 742693126 268217285 501202312 473165824 624921007 105300585 126817460 638468787 930343104 728068567 926752759 712714170 821666506 30619030 339644715 420549909 966894453 618948222 881798618 889975256 973730379 888598135 924737950 798578529 963547962 976205498 981625715 480160219 758686542 892628742 988890684 919771040 943151127 851929700 971178094 448228901 948977438 316932808 938497204 102705188 608265121 726830119 738707390 701747090 722537712 641089045 939358018 964667039 997732753 113661099 627328873 658891206 965918583 20888884 799898981 690859582 922031052 286050960 976992037 29274221 523465766 183697483 991327010 184528058 551759131 405765120 408379100 994842753 995208871 148902628 714550379 248064078 829941327 936039814 963194551 953345699 996714762 1846146 388330045 728855345 802889092 593068486 794210813 100983416 625078064 839205562 988064571 689133994 841114359 894223464 900168804 403950429 515659836 267335086 607576831 12530762 565836979 778595982 796728691 865487732 973823193 60109801 560367462 724667051 910399152 753808663 967554313 19389753 538344102 538240544 759155487 574033909 628255962 444295581 952994362 640792242 685033868 264393358 667733499 131574734 511812344 780586086 926998558 790530798 912227698 182592491 580213290 412907100 554589027 692249795 928300141 205833610 986273982 511315335 696112441 838952622 867892576 350307239 821182930 530390266 681019400 217020331 900500381 32819920 737740511 840455384 951588835 350638985 610656224 48619511 310373981 858519494 898417777 100724453 471600420 693439513 696227009 74287783 633676917 831459064 910138361 273896164 417030587 556200405 702891513 665577142 913150701 19733720 452905250 470285114 966367580 99192327 816584668 408675088 588506180 964863032 998302204 895219940 895463368 323387677 384961300 474895144 777862688 356422142 779192027 89035706 482385192 94127983 788808204 690107126 871915304 344874306 828627149 316804356 892099952 919097610 923721586 327609356 882506548 879747939 882908737 301986014 947531542 845017173 935018850 40601427 124239865 461241049 483546461 809015784 959772415 265399809 672828415 993014477 995419984 67687655 505971590 948689147 979751576 453727340 815250000 565327103 650777020 244323452 726543276 308902186 592947675 499745588 671915606 267806520 551661999 158467620 528860301 109676994 165427304 564454865 568002412 952273447 988242462 838475467 877765846 441309390 763443462 237305167 293226289 320850861 542957057 28739589 367229609 93365098 854437147 652031230 931914811 565166307 675364218 402076602 725628134 658215588 716870266 392546973 570428148 210612281 329961725 602766926 925613793 873330412 968916055 357859991 843898457 509593763 575664368 758475102 945898443 2515366 724701991 208507503 715922785 650874007 845645884 607992091 650093698 707913069 809518136 793483278 831693470 162431891 277627288 221174206 640293695 774164776 775940490 528807039 663585260 521687659 847243480 600663233 800072427 712844663 818956347 272343899 865013439 345331490 749397501 642281641 928857618 801631996 823696030 219110497 748501475 294002377 942854921 435494201 472783710 255983476 443301578 393100483 476697142 281663607 904190267 693526238 738330297 463777215 477722196 484687568 842710460 449347667 606408034 240211624 442126047 76234188 994525486 734003860 897051421 472027573 895566735 390403192 518608934 327470306 650543742 953416202 971401695 83243474 669345962 954349554 991848616 433101942 529313639 981627644 988010827 277659877 830181528 908583457 933776800 188583479 549542052 926578122 968340333 824598417 838715244 908518715 979748191 906401296 962535034 295770265 827066996 320087057 867405278 843854604 864233027 953727456 983781963 419542542 788455306 919283867 961930244 502631892 821089111 663309864 922528794 450042200 780743991 626129249 801182432 516600659 928278776 845742777 906728810 28119166 445686768 765956984 805517357 736112643 769471082 405990181 892297039 267404596 616480773 519791198 659211014 801855702 943755071 106833604 611252624 434318278 924826257 583897411 704227741 562117830 576790952 60601609 856269181 397098773 601343402 679561541 940260946 41829216 905942026 442973737 776967362 88076205 784135455 326438642 510725056 642978039 904906814 45554048 363053783 528315401 764778716 154726422 632221414 877502374 910038071 944751857 969085917 195940246 886756298 809138948 884955661 965424258 968363948 543594293 749715711 175477746 982838975 85578710 210677841 294638558 298909329 629686906 765868199 729901716 745973727 517581822 643540135 22847433 910139981 531925338 992329898 494284831 642046667 580326254 739811919 380953725 675059150 538420934 936290567 303410896 650883486 917355473 998609849 652889355 844390096 448327252 515218848 847627284 953017681 14618728 54747762 226469151 825240462 418951203 813858450 76132912 106912939 222283956 539711430 656391601 884156436 371865610 456576193 412619118 568773766 769683518 843093596 613756794 969680509 215687254 454688966 74726662 436349942 589290484 686144474 305285566 964378983 413567719 584921476 176142149 391825210 438509354 739043689 371031180 784299456 391276594 698662188 381587848 492578041 923208116 970495014 422525093 472908320 981569980 995757408 348728710 931068308 946331440 956818893 803302130 836440976 403617920 717254141 785233364 928161092 813435347 885708238 62274958 936568011 636261601 821536321 79927276 660806641 402272422 874058730 382861653 479547450 758991523 897894170 346391672 626787586 383477870 517505193 708033815 736478091 433266549 575649479 330048591 922047643 2992944 541908836 200198451 213805758 59697899 207605823 174255831 344041567 563563787 747534650 330846917 698686789 789818198 798843072 289746484 893812803 234729736 839897860 944999863 960510271 5896217 62643662 262845071 566188407 730144297 985382009 428168117 883040638 954669895 980328660 350386253 478230365 438965685 717347435 883515085 953601456 900147924 981069680 602186165 810317915 319018261 710274178 947008895 977815231 276803789 736183408 697777127 899782102 510757051 543707013 682436155 946629099 580678626 600224830 238280409 867247509 6612740 314122477 371529038 436012088 408320145 421049878 122572721 228574927 411261875 983137678 57613749 121929302 849844818 979409412 342208343 493779756 812267465 951897932 572205945 739787429 267360516 792474866 942561990 989358082 208354351 292184468 793851011 980647634 864813532 984762600 226012627 787812466 136109831 590372163 289907017 444028589 333318496 880494888 681380336 700756588 249135111 416592341 237976861 399214669 920163847 940540559 631211374 749752315 254677365 459086087 723991711 907141008 123145796 837420068 398907488 930186721 286193765 539453866 273231197 791380854 509044038 989637776 734261850 755834509 756304099 926123825 426574752 560595516 523338492 952232788 771948027 798490321 524180588 925148498 827805436 852979590 534025393 656863020 453771715 494597578 171702287 548307634 425054149 857891605 313292831 470935814 972141205 977282662 14820177 964572787 133969444 899992544 307974963 756136843 311806658 980130475 248931651 688560746 953919450 988091893 2050367 73213237 250124605 944658517 789539826 948869464 452135799 782046056 528553110 598023172 437453686 590086533 468436411 943457215 38940683 419243827 123919477 502041934 815882292 896431355 804304320 993564898 928911752 989223973 382141306 749278188 695355076 727200688 388234414 981496858 721852819 864179457 665300718 865923962 912571554 934439302 199576676 908936508 657110556 855718888 463208760 726564209 334916949 558156706 321583695 952165149 538566927 814215922 549922603 879019120 59785527 214030051 888062904 967208099 424821313 428655851 533877749 814064848 587518963 989676217 583015151 720514775 539817047 667223225 559265357 728055600 945954691 961780884 899182698 917831219 161632948 872960406 714546508 791981877 737193374 887061032 347038710 622900699 675683948 871183286 747903565 848177326 460119505 651810408 988491017 992366488 556760733 753371712 794024227 797264401 880895864 913753998 315314238 535304841 486076843 814780372 39338168 203802853 320253287 823575912 288152919 607179421 765684499 993234995 671740180 686321731 37037666 765691940 566414332 761865953 698687590 841034054 274359211 949352276 684182714 857140679 720970431 806905208 882088009 913166708 443636344 693200148 318180869 693765162 388040412 568257752 131841098 929910335 689583830 798995344 88168888 681858204 328952697 720257045 362679416 905764797 964272888 965948908 625236076 916807207 558292069 602739105 470883692 516213304 759668687 815576957 561092687 649889515 717185439 995534555 263283880 346700917 909033086 995228996 828639961 948848131 645247568 745244603 770822527 850561142 383286626 587024080 912840824 947576093 686236662 942937914 504559113 747005926 517023952 965668347 521688279 973265743 712683740 841928519 883644034 905481364 32978544 453513076 61892001 173275911 483732820 604341296 71682347 287878386 802893422 916395381 543751549 900775699 409849329 816282350 518006525 570526383 891102668 932087487 956101689 985757607 455994957 724381302 235923191 746185665 208268956 214541038 92262867 278811669 942222361 990375298 676605524 933717458 146270309 617963989 739799297 823315304 756012700 842149257 394160624 907109097 800184002 894361543 678079758 695435262 907830434 935285994 115675073 277071820 10924004 502767374 479175468 633238713 705308498 754610849 403766940 783678703 886340166 993019706 915627561 944976729 660294568 759949319 993720720 994725188 543845454 747108092 734900306 925320377 612292966 913079422 591059832 663559125 414628101 878720244 393168152 681102830 951288864 967984117 141779103 551655032 91186906 809426732 626929000 698729000 303961629 781717189 65345947 250250828 68771201 978986117 457723555 572234038 47329989 513251736 480473501 718076681 226651440 606851174 251851465 353588882 51897729 371749544 809868643 837060173 80867765 806188157 111084653 496930148 698297459 968751542 294014111 661063371 811923922 832398059 944540108 964397116 566678838 766704882 789360178 946915565 421525473 482552742 855067738 994851184 944345060 993386078 256876292 667521011 768632670 995486521 385231760 451741588 48420466 520954423 246336773 685239770 496224201 988020840 523718510 808859270 227109788 234314590 357657083 616152486 575649455 877197041 817756042 848532796 305533479 414895777 442105297 786827659 784020050 843032137 59863219 647631345 900943723 929158225 152676213 168555299 845002448 968670634 415641787 581939287 527507358 711910090 731701094 911200687 570030902 904365824 574107113 579171291 857944898 873903795 990707187 996257606 890411884 923091491 323818058 936623558 631528768 738548640 9375946 751740498 137290899 668352228 791185125 931967260 939743268 941462376 406948328 641880922 631725684 849684519 599580601 874317074 271475835 695898643 438486617 629692894 68422337 823142570 348206349 440404713 120246791 425946231 724139099 960467294 534955482 914374894 334323323 706050635 552068654 829412853 186549311 592175250 694050081 988472857 413390022 584157413 71107689 345368666 241303698 808386729 414763856 638105890 683206744 834584728 469766466 927950351 863807978 865945245 595258980 757719828 882853131 955095182 455502245 960004101 385517163 423256898 816948059 878651278 513025985 842123763 686609100 920345933 846219454 953733005 774145867 782609517 643754537 835752466 141999412 983126602 265545381 832202459 336043754 817808433 450616085 482465222 300336286 361601586 747133696 853616489 480157410 762103759 43646908 320199315 844266569 946567328 940107440 986091485 656243032 863509439 703787608 789087590 736074378 988237957 972520452 991396820 836670300 849112394 233936567 541586318 869589521 957085457 516273428 604802168 315551643 957234290 694555379 848226908 81216640 903444609 358861944 770875547 323875429 790288173 697259330 984950371 242334837 728492569 136572423 693719449 278370139 471885354 119854833 190067594 710607356 921167056 514960744 833455296 370441350 996460798 790302789 940601454 154203767 201112635 643828466 815824972 162224194 432829683 116835882 506144057 432057224 993187893 554593363 814656521 720821120 928445330 248857982 328635932 635506456 837093930 612955177 692983924 860961404 987493667 606490978 695138619 9378936 183142074 302251581 320663068 63984907 232269564 392126907 853593222 967446180 999753092 407876968 661578995 258145594 818515796 667701355 875177081 934857135 971407302 521664108 918169081 37184413 406657496 752692790 788412084 975084838 992111086 796748922 945343414 197209069 566418600 640920552 760329481 880421906 995213397 611285096 972356586 265206174 705811523 481703086 964612509 665462766 755693093 49904084 231114246 874696056 912406533 547477292 752483942 844014431 971601769 992388063 994153365 698879245 920165189 852903914 864722145 358900520 798543065 533571134 875650146 947290892 970518265 112065754 305229112 620745741 979557526 109239872 518959625 854458488 897485269 423921559 646246404 643347464 996818011 268898796 669695091 875632464 988978658 993961664 998422642 986756346 994709769 720159769 750919932 841937409 845424708 174263985 809237246 837214123 935679090 238368297 747357219 301976870 781494323 583500534 972679047 41406960 207390442 330018136 848955565 331119065 866722360 889565665 991948601 5310121 818585426 309926082 452301781 841595687 919072708 51307154 291558932 76130417 361635098 990580135 991668819 122040517 710792098 672165035 970617642 975458563 976551954 154731678 210942228 477475770 665681052 535307899 552129765 595292204 815779561 336959749 791715243 334893915 721750682 304292268 706347065 143636536 566973682 634655397 896620555 999168236 999423498 303658197 764925290 407302011 859999906 873783035 995874456 615638208 933169078 979425373 991310826 605314279 934600441 654987419 974706458 352530366 900443195 75385950 212088741 190174735 872529210 264746626 365690541 235010710 711661498 870985530 988960120 919177316 956884048 880118657 968586490 524966664 727233866 919656196 964177045 388109744 441204196 247445862 956430490 926469999 962475925 123110292 743222888 630530715 859567504 154426447 887011809 445344502 579354800 817265287 986468248 8155593 199548195 858695070 937321702 768539568 947160435 646962276 962144164 967248443 987499381 54741571 374375258 575748812 599519966 140006735 539896266 415526765 672685770 730207109 764355876 302645013 735988602 521380842 605309442 829864043 912277737 135197083 181958132 451876506 724592813 686017159 953114172 60324823 293426202 811788697 991545247 499898794 778862511 703788316 798831491 559908795 876893745 278879775 464284795 47621603 107558295 203215591 590522832 908700648 945594814 658571921 735358756 631377389 659898053 804900840 958001031 903459873 917665534 176425746 791344138 245333278 957612866 396646933 537445679 855503196 868316149 485741626 971423474 364581412 844321013 712902537 985746067 479279674 661395331 132337404 548402924 720840670 813419576 957539561 991380277 112108956 793637203 830906696 978864502 721146893 796887195 934172596 973546715 943897157 996618317 245553716 927074689 310215195 349797852 29055623 904238139 250113090 442145443 710852417 840291795 514426079 950486678 466685732 644284735 129582242 576707375 827557873 849657184 325588356 724603120 411063566 794650969 154989150 914300931 713315498 912400787 918816223 953714282 990415641 997499159 332747463 869429324 385061631 914754672 785280373 978676319 544927949 751904921 128113266 548624321 135318188 577188260 926511466 971764482 714872218 739128692 131378183 676294649 790935943 888974800 421885946 806884063 938253740 945572994 756544073 876880609 165497879 959934899 734702606 939998702 903061386 994619813 376122400 729010721 760123195 890726605 963782758 994936997 792935185 847359513 442616672 992939073 534141693 886407092 375566436 868857586 448224586 791977044 978463083 987974244 603539033 724150782 896939073 933749354 667536841 707618391 88016758 847341306 711884104 844466893 691060938 993799940 320143193 371087398 876564907 929549543 415021584 812802323 409705969 934227680 831823523 900021585 720460860 941348340 304524382 637456978 132296520 722597819 760423771 932234617 22106136 631922666 61884321 413487551 71492411 77984970 923916605 995769669 768071681 978461728 693407111 966103081 589528293 795096956 687679421 869818321 669928863 675852267 71568993 291928513 832384363 908218783 782278021 840018137 71599433 263486040 721020942 995763865 191622863 896432637 34075499 773901034 610010399 725714880 236094077 496709135 801956464 941546266 104893523 593419255 739978076 826647162 982327328 987086917 790220122 910976472 695830916 877231686 428911797 743961492 555844664 759220558 141201712 144270030 583096748 942536513 670720942 706717351 822418228 850687543 91881593 118396291 114596997 531231544 404306439 625610799 935477416 998251625 397452256 816177676 504147304 693121838 809198020 896387015 270684402 624758012 245537350 431067715 251595691 935331493 593502850 882921042 85845128 897383567 961434497 976722820 296167893 645477124 487911266 644589503 44518296 691358535 899667847 997800577 464722132 692393761 276737875 627943576 393323449 571126217 187604569 718780753 944445755 954665900 381357752 733469488 123532902 768869500 598321825 650825027 772835630 894122854 311289151 491336110 279535556 942518323 996771268 999132179 360955582 948311868 82547469 604991592 100660543 706859937 713531978 951482886 996586274 999555256 971121365 987173141 312238670 810383188 157101246 855212626 115523089 345443465 335920866 697142275 497186567 869606094 303277773 685783843 935196412 979091166 510228500 825361911 249260828 891725601 304657817 970260031 607686413 985779936 806839255 896307355 421686919 995935205 729977612 756136261 734719749 786346959 675329339 695331370 690689870 965740814 22456543 268088065 637352676 889861835 982624787 986703725 798569493 848782533 606985873 989053531 519267073 837883187 754774546 760890608 849157314 865538200 429523402 648840559 183023709 845382249 576253776 888648800 296238988 890535217 307096760 651042787 947735509 990594066 672265055 969426436 683328141 971350892 108071635 706465921 542700978 850679431 420328258 939087470 169143234 468697363 240693907 922466420 964079369 992026374 16043738 417951929 955968072 974853643 477836440 519613281 780591285 895788609 507677043 610635655 988353645 990848263 461962429 674894992 459071226 705707435 474751952 924226803 622624232 653799846 676784775 772141744 115768246 781060299 42511800 96277910 927713020 978289195 955177776 980080012 781827337 894426776 996452498 998189720 548203948 708294034 396968378 908641922 524663066 617177420 764334503 797816149 489173859 924565598 934722726 988592568 654644034 682605785 418890851 653496895 608034838 872736488 947842655 983910046 413536168 898041333 765482039 873512449 834551874 929924520 763909190 794321554 552663072 756676523 168668318 757203112 786557770 996640884 542799153 638317752 113594399 730480617 320410627 455068602 523846600 998294910 488478637 711557966 883049467 923841864 468917568 923241913 322779849 627614618 699594530 729876695 741011844 914422998 407576929 952260658 372032585 790257355 293499439 849087275 90105643 384834856 464226633 788459632 870364715 947489872 788282105 892391341 460997742 873774432 619156191 818170654 607027668 854546272 292093946 798854188 289914120 525370116 398904955 803211178 603904998 893884260 93887250 901263473 432034003 898281681 983150241 989791603 17406217 22132388 481846024 579624395 594862491 771494282 148045317 855640663 85018061 629963272 86414789 583774796 406493181 987255899 74618750 147912418 319129057 331652552 578649892 618969458 527623794 962923369 49421200 735200872 470776747 966231113 364923859 492558498 732892077 750972856 915941569 937130646 613534669 740131926 156794066 433329005 750963440 831287130 755905361 857292230 965156794 974680393 477022476 635634099 637579027 734058009 325724766 450291452 392318119 644727915 183786406 697273611 525902135 972432941 176518032 380399979 350063334 792609122 255576019 885971838 53887917 431365282 182155574 864191868 621697020 953088964 728085835 881779544 830120812 865852241 275919280 945273453 695878097 872595424 650246226 903474940 454469941 995819593 214526510 799186781 356230440 871373943 581893757 829816024 631841124 949832078 803739931 813059270 583317435 702136768 388425267 764551034 53910200 503399806 629660597 929770754 37609577 754007284 191017384 811255247 303686606 704947519 169714629 808955886 547133417 935492527 673964715 736831027 160998976 765600705 872034457 996009100 574876567 634161058 712199156 828233758 775120358 933943472 686076668 972687889 728673940 840952898 484535329 518140241 8658323 144077281 264404295 540765583 247696747 625223930 490940414 709852175 576467471 669664210 402188421 433061847 944120942 990471079 416286317 844753941 397908062 512149793 930845346 966862803 74372761 932685862 88555804 449982033 284759588 349152819 358464189 930253456 198437980 412078330 374453778 538501936 104294032 853873907 463579883 717665431 500021907 595981835 296346721 520586062 398984115 823222818 166955117 743979189 982820816 996620684 425423006 486207944 604824025 958902174 563746382 652183340 727335726 998022244 331604051 462424082 296947867 967254582 434606373 912924655 770561999 779250004 566926171 653840992 373251549 440051681 764711447 846409978 199606744 841657539 335094241 962527645 631961922 691046170 23597004 555195630 913154145 975224531 559722652 761655372 612897335 860879476 816536226 921326300 675810373 761875666 606313206 739769078 4985259 862810346 252956051 422720260 904386990 916833211 67390387 89487808 185203076 613906274 397116433 463986572 603389093 777095615 642420660 960364971 239804089 873700389 670761500 678142455 331451393 866463903 838093241 983551185 957959642 958734255 444142421 636046871 428621343 714648091 859337227 866989340 470275483 605334737 944538691 955241778 745078416 924390000 583155229 728706652 352513556 950084443 803313594 842439711 605015386 844856642 505143956 584755827 891605935 929507691 212123217 640078519 971910089 980694707 649450573 956103758 947082212 975551493 815232766 934760725 808387277 952829916 18437045 148413692 332818710 978196856 565679404 679316582 1460318 887869593 579234790 893943191 827956090 898622173 70753783 557897096 71149288 284946946 183891772 805879971 212947703 939675612 239278672 574070377 384050892 586830105 540738241 581036969 404208622 758384597 706996979 865513323 370189638 432564471 29411462 290541881 728087051 855351776 486792929 841776275 387384789 813930517 879997289 964877260 882987881 987178034 401899874 583507312 411046656 623997186 116845495 760423669 914737903 919569823 373256466 697181143 445490971 726855054 254104663 837830303 138050267 796102467 295284052 336622309 964841400 998708393 56856408 339213635 164006231 238442969 244970113 761105753 925239456 964147658 455815181 990720569 920628135 923941170 638735919 656081591 737882951 810516371 56871675 742214133 466582700 534813289 678340413 729721004 754798686 921431973 227225923 302940709 876238839 965244407 897491502 903349860 528040147 861738499 798497042 854425154 411164135 703012387 391008677 850685600 721666673 989462094 405616545 857501255 529991996 637482625 669781253 784126612 265158339 433432540 407123853 916600861 742841041 797261232 642820824 812181012 696383229 829796679 563012106 622139713 542610068 784207742 397289208 653917923 111371682 386424352 919524130 973074014 211551273 725452617 655383997 946568901 305527259 514998959 156885583 513730781 133955545 743142021 937563131 938434472 124079361 862825174 675454451 677595105 718707307 735362202 761574669 982482431 781942111 791280651 86673681 429982377 667401163 834864087 516354458 534961998 324984892 402858273 859076703 982878230 644597108 796285713 725254802 761848863 677881479 845835296 824145877 924377964 460859674 966944171 709751321 713185630 948831376 989385521 982297919 988631318 316707945 968541549 658935034 840338057 509154970 763069573 578744826 904231306 239267851 360570001 562028178 745769361 656345136 703402446 845901570 860571386 721234253 992168255 547971927 830003560 502021876 892541745 819402337 986513951 966732355 978677316 776132848 926091663 461737456 717347552 793013179 805814037 851256583 921425752 569154234 711625308 184091746 371348615 314254900 692623340 652323688 843696067 83902954 695792208 893151565 950741747 272339945 712240769 69197319 990530679 198146857 231215113 319347073 949116620 965447824 972500738 148342386 609502519 402905480 648247856 819214928 858428124 341487854 476367890 131853579 189452106 138120930 805052573 825672131 993363087 548650427 701612620 854458386 922215592 409991923 860023100 195118406 406832768 510785404 728102966 817209044 876932537 330470724 554683006 926768630 965504485 131720789 397357492 356382583 733478524 213830690 470561632 689496217 895849971 765608888 835152779 169831922 199089784 553266889 949757493 496310494 609204683 899725775 974229538 468634821 617427688 692393645 855727938 263454986 619612427 600604427 976364194 397297327 887751687 50168987 137965562 113448262 178294628 794886247 903990699 281849695 621163580 598566030 766006712 4915835 595280565 378785324 990684455 173448723 388130116 817757013 965783614 983844684 999541747 936683262 946983643 896444026 924497718 793985356 854329678 662507733 757950611 56005936 871754632 367436112 715731123 598117728 909247430 732072905 928502346 295810911 748864035 642203553 685693251 523776897 727264053 318934833 359424660 616729144 967712778 942450187 958203691 413608541 805612281 871346775 958032990 442967547 479533683 999417091 999851094 569906763 604126110 904669904 975723712 973246035 987984253 704905258 931011893 227479780 378804926 980851944 995297724 496200593 965166120 232011438 546504330 297994446 543989134 144241053 578234179 876603499 942929424 155105681 628404715 960463698 975895613 234484139 799738414 780906835 860138549 970086651 995707510 221919675 758821230 949974496 959383239 99641218 941201507 143936932 600800160 410606599 783025888 743373224 779868490 857246277 934148120 243308906 598025246 649917146 933312921 138796302 152518979 530375780 952294278 959102191 970627361 357091518 776601506 460791098 716953221 369142057 665073817 615291662 965102858 559307677 909192224 567278936 675575813 453420945 807385570 299105404 908120669 586263062 769855287 134441682 808997495 327721897 813060256 530679028 855001902 131726629 350167380 440899761 552141675 262754004 715242862 461594872 486281037 388303781 500222103 678172711 762425499 196530483 727943325 456600013 785829341 992697643 998036536 642283475 746868397 382972049 592911426 714524415 737480859 603288857 897600759 493678413 935644612 931495939 936106459 947993048 965032201 68090952 672363892 269727181 717576447 300905924 403045122 64333288 552326488 243416282 998292192 851719572 907322802 154092330 560297870 941304261 975745095 101734555 890670231 715946168 853255894 442532455 878032207 21286319 404948921 281805315 866087642 334673365 999856815 651009464 732929002 106493967 583311598 605540834 883729335 655635758 765087927 298647928 542298213 943830118 994727338 625934247 767599511 510258742 622804545 730333827 984358585 114280912 129147800 426999355 446987640 833695465 866587742 441038259 717652774 630730847 708081330 131138161 477357740 708517795 712433849 909750677 989202383 602896426 796241052 489066435 775463386 311819649 372547321 415935004 671901929 480058136 588058659 351531214 695221538 618339252 802659771 993396010 997833314 574598738 736167334 695875968 898913454 819742129 971177993 942612560 990173281 642540606 663039516 718995554 886402852 682161631 877517239 791804961 845809650 290993930 372890136 255727823 904542293 251188239 651237488 681230001 720122494 889198831 911585966 348353066 756343836 478816870 544625624 437977592 962428546 747018367 907854874 653749239 757588154 184620812 258461089 486729282 792995064 396160229 883411633 588642462 870731021 743998332 993257985 264031894 951586303 229385129 672020402 794124235 989605919 680042165 805856840 920975600 939404879 448519915 991692542 489406515 657786428 77238886 428172484 967539777 987478415 923164840 972180201 468559587 691092993 292447005 418936174 854212364 968715051 11504721 826561113 811213151 875788322 740530037 794557879 625770165 988865874 126828337 852003047 687732181 788583002 600558217 801386528 523330083 672553278 47277675 118851239 966228273 980122512 749519304 928200049 262690202 419722478 187928595 829679421 628691747 705157988 414248958 755062648 693308491 882039108 449467472 937025276 614824560 614827429 743717577 762752448 512837580 593613720 546624876 552053716 748561200 853877336 154902497 684654300 134951900 399101315 825809170 965596315 806255249 824289537 772394787 783777533 98856694 290499301 13624015 700730614 900523558 962048181 44311777 183677404 688932556 927664197 409683578 881434082 411731489 814903566 173876175 447084277 82380245 476757414 329738730 590429431 870312092 977644523 220491331 621820801 784046886 941763508 826989880 918502561 151171125 421197953 140603780 856637770 745007018 883250887 768794932 769092304 980556648 984656126 193956323 856746391 158156970 180995653 223303289 324302069 237604766 780820722 4882267 135645315 631612376 892566476 494343090 978364318 674525166 876087367 564053105 616654348 402400875 647719901 312893449 688964831 755960632 764132169 532217077 595856074 414828107 868112268 664993261 829265103 566348285 953292153 617117113 988651699 167756066 943665033 61511444 560142397 252508021 800163227 804184665 999588016 810837265 986118703 359871524 663867438 664684015 900655574 261921546 961494350 378843689 456814840 402534650 431758816 966521481 972098501 609199767 799028759 178810463 978570428 378331849 574242450 996017999 998514806 292732871 859524019 571779345 890074335 472580267 868096314 769760208 890853515 216709406 357807225 331750649 529432127 914408572 966244152 859134505 920067954 456074953 910730363 655234455 846163316 234377652 280619777 343851529 826292277 819090214 848302545 422712172 423054898 183292209 617804986 276817709 745956073 179843774 540339822 725750884 914792239 149822989 506925534 553491191 780665211 826506748 926019561 542458674 808944795 758560973 856397018 804143490 880699479 610007397 903847425 307349140 509388449 975224478 998203376 132325919 392662074 595328361 809074516 695388376 735626420 674774495 991125545 777165857 948408027 336462060 674552308 992891441 998726839 342993016 480283129 160128003 610005949 349270671 976214382 244353339 296945242 742685283 751769663 458623134 846541530 862377165 878837054 601918139 916841497 209634437 673886238 282311089 832926528 47387773 235195422 13748447 831766811 883702820 916644044 968412127 996665187 224505096 691442940 383019433 988420733 576881409 797651862 400739828 991626560 715385426 948878931 871907279 911609930 375244260 396999115 420544316 890536876 416136849 939933900 198716244 342110640 970574615 981485284 118349553 912662418 908259255 932287356 466896958 542593921 776058308 783204190 903639481 954132583 698093964 976680320 158755488 858888916 222093108 763780752 405289570 997205350 866799164 936799321 42032822 754974148 674732709 711552598 54271637 457746628 712511421 732461480 235599210 331842432 349712165 988109088 998482803 999097068 34696886 330371350 420065451 875195630 429555130 706128884 362329464 436791362 245401478 539175284 995109287 999625501 474898976 928782100 999452598 999508563 108521991 643098615 637924736 786055503 534522740 936010329 304980903 341055174 43741512 802440179 93512225 843918755 402832497 554779853 78926556 244651340 549145388 699538192 345471217 788509616 36262148 593782364 395599297 493054200 583119064 686818401 433260413 896273743 299204896 671786487 221582089 404952725 555023067 956738920 255613138 925424519 970131859 971899920 302718886 451704999 31733781 195435323 929619645 940219655 940276203 977788129 905482287 938359165 186352701 387390798 81588059 640116230 889317371 928480015 390605214 656348138 927480662 977287529 56871339 672206217 92343056 782413533 303122648 615247467 989989110 992685927 114580714 282606085 550982494 702462725 933333552 941960378 259732759 909711565 372438254 965521840 15066916 567155414 198097641 397168345 28401999 252581042 721721001 824638573 663750318 980119185 779102714 780195039 772987903 852187495 464354912 544819527 958722602 998687643 486443962 580521050 518710866 781317392 890641348 908709411 485837700 857500785 936405195 967135457 598472765 941010898 573832697 788364003 569659230 779348160 681270258 978173700 758893173 785033548 825432495 866408775 821918512 984787696 39960137 494242126 255177565 925429584 344883468 676864138 640556879 693239015 996917050 999171841 951892809 953458960 87706634 621450451 894733015 970608768 517170302 840707509 212924962 288696785 905525882 922871879 420967770 638771069 947931309 992831866 744436202 803632315 884530097 984992926 766573432 821651576 396945382 562453438 140740814 917310213 247136636 592785589 868633073 968521264 126643082 239831337 619122965 826697701 450669255 656389911 477161861 553380884 987125815 996220034 206429544 605412196 88181966 908812904 96585163 521366554 583965057 774098203 245219926 909728561 235577130 865913553 366152782 474478887 782358178 890426321 926303261 932134974 109576880 448256292 544910590 986025606 858190 57532625 427487893 445499867 742736666 891737448 271209589 405764212 871211877 907634539 574202320 744004682 334397636 582655894 956757995 983044978 652194331 754731988 78059493 536227265 388061653 759836286 511571194 908908093 778958459 801127215 570812298 963250250 29421256 237505179 7545886 583994974 587956134 738963983 617637897 683105374 578505515 612973175 492539546 533991252 936788381 980707968 654256843 964721131 478768784 753371329 768347090 843407917 89830852 515709969 867484170 909913801 768007020 901886870 375687182 492325571 796890497 992552712 495486455 848754128 96639850 854337971 672405584 746306508 753863390 896098876 603446236 607703352 606052944 701167471 662316461 749479842 808034736 931371453 964799059 982992320 233297759 752892084 770569389 811997221 741584468 959947270 278627826 856101529 192864434 827815653 635583089 765169839 693321956 967372844 651744238 743119103 205786152 869098026 906336225 962318144 539203565 746941245 484706646 667896382 845489660 967420127 628537807 638457731 523777240 928605505 990571374 993524892 355568513 451838990 377249189 633137213 434678405 586692559 759450194 788113281 380438326 442125051 610078903 621484862 121227995 675721972 131533678 428623107 150872926 756098485 662719443 793100106 434228207 954720289 157912390 643604414 339763383 534005883 387352654 776783534 122564474 236174196 556196991 929686960 568872842 616563070 192370207 693180544 485321880 985147845 804826008 955447903 952260784 954354233 266418009 854312430 856589864 983016689 420203775 933636734 80497876 924947784 144074332 792714846 539239306 821042116 362606726 888626576 683788686 786784265 98335119 244559685 849518928 996307590 285237164 910633757 244905503 648384841 564061223 660655754 952318412 968640776 632057826 707792443 336412244 823115245 15559335 670245903 729332597 754793692 865059458 976792800 991006329 995021593 672072282 854243702 601228522 814297836 802427494 940176062 488017408 825020195 911588175 938578277 366351806 759780382 75830969 920307994 848083914 888010320 822837346 918502136 376329066 425210381 564631931 589864256 230562817 923814180 744510000 855980113 191187077 515017864 238237172 470886441 759144124 765188155 732786936 989214251 790508412 903035796 300590049 442083230 887862367 950774603 641850404 935770560 854007274 897496981 914532790 928819906 680903591 725268638 18139139 196087747 212652657 829020146 654966225 970830952 340815124 462113104 632302496 770767523 315421424 964870613 681416658 933814199 160383854 417489664 448830320 551451170 334040226 834287776 16601266 486042930 48414898 362225226 480524068 758491303 865797494 964024581 374098083 804853428 236052586 637323651 827376046 827385906 688558132 781164741 184298491 693394499 360089543 980783334 351686921 768571288 80315788 774239241 552593765 780060108 867559234 996360149 190734336 459075879 76453019 621894367 311113146 716173961 269874165 881500314 376714775 458535022 90321951 420073175 322664364 407631404 942602992 968397577 830512491 981200936 995983972 996466570 886386809 923013252 940636635 987480640 845626911 942432157 715714457 929486625 355718479 426554019 890455927 955152502 724235853 779117125 666543317 921713647 166577608 826645191 665057472 966689343 982686327 999100687 363968884 737648394 622997007 747249433 339255133 817023183 462695561 848691047 419715531 803427232 275988186 574562804 749493174 828181297 814896861 929548512 361016106 922461307 605071615 753509143 959337270 985210610 739988101 850437656 665904156 832863705 436188894 804541785 682655645 733883257 751643558 756775253 747477322 952272735 476519627 962671060 154668698 859573024 187254345 728537368 718377195 903559488 898133875 992062279 873081780 889236447 805069359 910197375 884178480 942569138 566992889 763315401 569434886 858341606 471445393 541601850 613642228 674965906 148152272 933472242 296952278 962237119 556197169 808613303 488290050 840770056 724813734 932415841 840107579 875798620 50691324 272117245 819144803 940826294 601039610 811280607 984813909 996323136 919658225 998908207 757367248 791023360 896390090 975538265 818391685 985852488 418526219 460063649 611300893 620918881 656841774 823648588 224560744 579286521 267707726 324461459 587449194 818560137 584020927 703548993 699377846 986714933 421635272 512760582 352794926 811772039 891137477 983277008 891073517 934178215 696209130 707490389 7881389 530102327 746727974 823053120 198333174 586705580 207803555 489216498 724601796 870176888 693812918 697290994 700095427 712611651 816885627 943939128 529633765 576788296 239883103 406314251 164209316 767400438 161938703 919039537 679386403 798041308 436929611 597407675 952512339 972119998 473353833 777416655 394629225 482644352 636442444 797746361 209055833 700593003 738950118 879991529 632218703 886508152 874150811 957610923 22788967 673986346 353489167 429882105 312853742 951186437 938547256 947587394 986035794 997660107 298535860 408308662 524523780 528444748 500574169 654800627 225487018 805312626 279034492 517252469 796007064 841414959 191713405 276090936 450168879 937745300 966527103 996874247 889559199 921059356 397010089 970511149 645591330 981338195 941578814 964581609 982933939 990497124 863462004 881428587 380491094 459976826 755556782 950680262 573873143 930804370 412061011 827702907 440087080 804695163 780775481 993238215 834428755 984512577 532548668 748476478 868762078 988601900 94475956 511248700 590919736 863568129 39842266 504493834 253310430 365395608 680527151 784178254 245119718 438005571 533598195 982187447 198977925 315890620 289514611 634400722 756237520 857809631 907476393 989166947 589386243 965014580 258812378 263212384 315217576 607922794 397346655 831313517 919324595 944195537 789303869 927586301 958449545 966462311 200348685 420058880 700254357 898917203 487432565 517857058 344294424 723758198 405754479 541370428 11474415 811769345 600975007 899463130 387624583 445182212 323601475 585494608 247966137 518524416 320985244 389338260 292451912 965158266 779251898 947014365 891917178 946758015 910861187 992574110 124763424 758536214 53098946 675156164 401939131 751860802 897760006 910935696 422593524 568749408 632118772 673219359 875084718 967832121 899766503 940040876 48864053 488617176 590213352 635981975 366674463 608943874 749607945 978682980 665887226 997220444 290412950 678391284 891338117 911313459 962711800 979460037 22833000 219721460 885250704 926412477 327052525 932834613 213042254 312909592 925408261 937295696 524146178 850569374 148206601 686524040 613938843 856622042 592476588 709040174 153724573 756457538 533539149 811739362 858757983 927354848 361285904 454876866 994076405 994650219 186184673 434420962 346437022 357285753 685767036 949494681 943180852 983133655 243029907 830742899 246028125 361079939 555941304 880896170 700149255 940613909 489744384 586922828 476231979 939452495 216748075 683956238 253427002 295907555 625243308 860384079 980375210 991532474 601687157 820587570 173628345 371579503 162378089 612572110 926406935 937191485 133161510 250201507 22754679 529724979 789121979 824567256 423263054 780410919 78353070 545708545 654010153 991228598 974576479 986414369 556585158 740473997 903159583 920672512 255545866 993845114 124054126 617050576 491749151 734571017 671901648 709038779 673515175 691047199 253867478 945465395 95176125 225205793 700934433 869011626 507588445 869299125 892278318 961720162 739596026 845228182 48922791 208160337 605656596 837084770 318814309 347492268 728323780 864008633 722583974 927927476 532091385 936812585 566544635 816857471 463140805 605231150 257236459 751063222 843704276 886108033 816737479 818790177 376372769 787418908 492704323 730409287 748763002 765361062 233087435 712123308 813142188 863652362 434042046 790838660 803189545 894320572 353868137 744877934 463209624 760658251 716412718 946169112 708946348 962336936 886125908 948259278 8104743 276856446 189054819 844398437 664222994 672776730 478871261 490874360 17329245 896622266 531699103 545145119 40211613 674793323 372932805 641544941 397201448 811055493 731428519 975863053 676850222 852795663 140722419 634722674 948158981 993485925 419187861 552337619 347626237 593840924 120785032 856749875 701612386 992309791 398904168 555560889 659069901 668052820 132740302 328558891 666429785 776414652 695424568 714106782 224703080 781244690 454416015 798697856 884204976 903335979 887392470 887536244 680161918 900941055 995174300 995956790 761707682 881425827 294565407 945654364 777515423 995236815 125923654 979647233 503675259 619762009 359778501 857100863 933822237 976331100 222762411 291026468 899520121 941194091 955946237 988204330 970461099 973791491 485042756 975250713 508679445 828771139 881134367 914078569 782320171 812200328 398359743 559014230 94352590 232790876 960487786 964613051 219932677 225370911 711793565 903544108 439273939 875318122 498809415 839763217 638991235 766817360 293922162 857443636 385267982 581000783 172779521 796197806 711450901 935439355 7446905 135571374 36549174 434381623 849032729 935874114 321867836 360970236 445493950 860783291 839718950 851720974 335327428 722550331 905823095 956041308 428832400 550563920 563398958 572934169 483071524 849518270 832263696 848569237 403919872 633836289 816419851 907878791 734281342 761069970 384764666 698193552 734055885 820895854 174044446 445754077 362311461 549849579 294477201 441348518 248057010 701175633 515374424 557557792 158455806 469379307 478917329 527736556 184015007 447165429 782157882 988931445 832588321 964038851 155716718 530726493 738152321 854894008 194471227 367981341 67669307 666126171 767187687 932623122 875961565 910083820 961598105 976660083 542316154 816787936 538429022 973494990 45558785 993888474 912714788 935623517 14589016 57467781 843332571 978895593 183621415 310815435 424429659 978620871 866883831 890354985 854682799 986979357 437567687 535051476 780849809 816431918 317250871 835670428 622766599 685275776 340339667 579695421 255834650 876820825 361987688 433586269 7470764 452159537 84742292 268165227 994764175 999824485 604233270 635254744 136736156 901079811 338992144 816501844 897982810 937465207 976579810 982661009 447588709 668241908 288807105 567289925 401532210 703433167 979528836 993440008 300175110 563990589 402068033 629768297 561548586 774697863 548938953 586563907 223149560 590584662 454990434 750407547 869451200 923830546 29085616 833386321 69333567 837290542 905647400 971440122 191387481 542083343 226858585 302720899 807744537 975044065 57356033 777590382 197233338 271821688 597329243 658693599 145511781 956849805 790651878 920825243 693459048 956726793 632484479 930796313 766288458 929041816 602525706 915028342 542550153 849916169 198706407 395426721 647039657 936897582 681696259 730457738 723625343 839357114 894003391 909458803 766355708 909951649 112985811 551279188 44601012 364115029 233654868 551717413 346951709 605952601 589895207 839485314 263987314 526960430 571161976 737760161 458638170 881749852 272368159 431242216 38003162 572595755 555768697 748232389 913692385 967074307 162499828 774162213 666574192 989745654 381882800 585382055 254513130 752357002 940620343 984710050 695457037 859798126 428716491 870091127 432327103 514598886 891805494 956964675 350488312 628176745 600784916 729406470 530324880 563493545 810959049 915115121 966244159 972511076 720222112 931726547 387068750 788817737 736641753 770311567 563951075 749353087 537034612 771274089 707643753 885526207 345853093 979822724 610639211 706121734 165427139 303123855 870279481 921051659 924776301 947303751 374352778 458465846 804835344 859578370 626744678 701434444 685451568 732362498 375808868 670757551 411510029 548599418 519269193 710372237 622021778 908359243 882314788 985537994 793342448 945297658 489379850 606104845 885810099 889873924 478797878 963168313 852976838 864190480 530677344 922674985 23249149 588798460 385686669 611737263 120983654 529461680 442831717 777789347 957300993 972513896 841323680 977371004 155313706 400099895 127064751 257883056 837977175 947106969 39204037 958321039 448657684 786416061 13097091 343838718 285316614 585036150 894086943 907932266 216208530 944535010 132892754 701384077 201701779 244362540 595499312 668559412 391173672 902825841 989443249 993812243 91434693 933826938 164002204 761544329 724229047 904759550 268329010 406470846 936076531 971314550 995851633 996247790 139770180 372845649 250303659 438912322 51501743 454835005 407685112 727099149 685428227 823094824 93832770 854489814 651029891 878032590 631034899 786371658 920093629 984065016 325430805 864008519 743790222 922499195 715785412 854414234 742341726 758578965 778147145 893328983 169126705 691677231 654674682 816993129 544260599 851317943 718582286 790655054 289089748 498542399 306199544 546863926 831724657 860454008 657757849 670976238 712655573 809353025 976113565 999355602 512246747 678669094 895609769 946917461 250939989 712328056 661397813 670494624 583620240 821680104 367241067 469858573 233920 832772260 890843 621683343 960894542 967568815 257675634 733215046 507389088 955389619 138217632 630855553 135183850 162418553 901267322 952769010 97795558 186433449 900364694 953546750 139581903 350277032 829647391 840969154 582939363 713160628 935465134 984392133 741895974 757877945 515308667 900886490 520701425 756323660 322644651 821402153 617053254 829812140 254404423 548608804 580752267 627460166 14801024 497267237 791951023 971862348 714432312 917325657 730170379 904400444 275143218 519479938 855123538 986937931 51101472 923568748 735928025 790435902 566842343 948048221 844977663 896271921 53465480 254608130 902302711 910890274 688749830 825776356 5189436 742146622 253447205 803206706 918218881 967449982 269157304 432866433 547431429 556711022 157218737 603627452 275169243 524905821 328356391 844030408 433860857 487137389 21243808 398298730 662932515 847960250 744499023 952073888 92233854 665348900 985235918 985698159 192405244 414151518 124277721 864150108 625294400 639683673 68489822 297274897 577542649 880894206 384449768 935028557 215693304 276147950 674517111 879853459 468368423 848840261 202011586 328068356 830706090 932762825 227965858 243823710 428980210 929963610 801290185 960164859 428396853 913249491 152294206 176986260 742871821 763337759 908990259 979457043 787354247 874895672 307074437 430947666 331596006 614338868 364290614 710773555 417105637 506398672 624162568 961818647 108399223 701610318 586218911 978216347 136111984 354653740 181057726 394132004 108940772 867101642 644676971 977195977 386792453 604840715 885872793 926061229 801599797 843389602 108305469 787983675 733142246 775098459 914520058 984328200 195640952 850403761 449462308 826189477 83003146 443433690 958015788 986509751 226098617 227315092 693141227 871957768 913714877 922994112 230485311 836815501 455822311 576811787 12739037 328836420 435796249 989360742 83976297 88912864 57350714 373749211 242813036 661310262 148132240 985635545 3088507 650093303 839399681 864192746 527992931 687262262 688308792 703517409 986975284 994672692 619122957 940984679 680897727 943125555 947964649 999740845 713967351 925603375 100853526 947436635 443182772 713279242 943347731 945249181 286892131 591187922 244179669 608680639 620286475 820745357 579323608 950271572 760646481 851695584 657436303 978534904 435711753 591934752 903191907 970454230 808230597 869884797 274102598 389977796 899547794 925785897 419308218 713527491 126876737 936337297 773895720 941956041 438500505 891444177 460268122 801853715 742146555 808268761 136330243 458510129 972564887 990267595 450178749 927488389 446724087 968715944 648155056 767959040 313776905 677786791 507091522 866135814 897814894 915090924 999628771 999679667 25313997 874256699 329496466 652404166 68010349 745911793 152178838 367311437 52226237 343565124 700393266 735478471 247605459 834967334 544652194 853272652 802371162 910279882 254306149 735908530 404635210 878708278 637433029 870895424 521258715 972084667 108431360 658505442 463958504 738715413 164961369 598614633 976164822 982911999 46652741 787889464 861967498 874483938 793568721 982001062 830574219 986182653 437544987 901713466 274128657 908013676 584431305 966223113 688303391 794187708 284117173 532437573 330193800 823061546 895140669 979992005 614687937 691543784 314097691 891898793 188701361 617208114 402880421 884925835 659895813 703197039 382933828 858848039 733023056 844969265 316812710 768213210 149992073 427323560 72138810 646761318 250100670 712516251 488999765 492234741 271099296 599780952 722889529 790009375 930963020 992968117 803095375 889828831 504337664 684315206 912848228 952236404 78726163 924489437 667309508 924224906 545943674 683287445 816576179 926758404 276777069 307773916 571757621 676939746 477486583 919642076 112701136 744583719 852113043 902935170 635244460 874836998 521918239 639404678 759442787 963981031 316527977 801590174 614468017 862651854 902215401 912720682 433452400 555455848 689534264 811171672 80715229 989081129 139818596 812473728 83032748 97156641 953399671 991637118 92051250 113969433 20650665 870374828 907403891 976777274 110290993 874308813 240634952 624184304 854843683 884952476 645170827 714918754 522638336 697338736 152400315 892296341 50467234 488996803 406377508 816274106 765550805 925109373 890016452 968990772 900930649 969419101 499837070 668208465 223501402 780600800 577405257 668486076 159523175 929045534 872408640 886395047 115981797 178755282 765727958 849887478 155775067 222751644 86097491 775806169 556168029 932919792 469035586 674020730 392139489 808508043 282137018 862788621 209796633 799501540 840711658 845312264 916889019 970266106 326625799 855689140 436435479 970023377 220414144 453913533 789771149 904198372 34810928 672016670 993566962 994940079 198828946 793664167 434796299 502206086 929679190 953133288 769091719 992431320 212338401 245408821 913874939 993027435 605276645 938936426 611613910 822476337 349731783 738575451 868336575 969887328 134277172 657210767 32157669 292420416 105857368 818903157 752831804 793735353 461258171 915566762 577473572 650680591 72542184 763064975 560360347 569189793 432388079 806272080 451882803 780456203 349765598 433639283 181919867 889184111 712305416 716938218 107915614 535701172 104668857 843685444 498592391 863678402 88629011 277834020 422590039 525437156 825710049 882895993 156387860 334815148 557289544 880155317 68707291 826249965 960491177 999044523 476117905 795401037 433418638 575558115 198526969 530648494 734583605 782643286 786226296 928748192 459218541 818290611 268590844 340172066 614986347 900648152 816087652 914809387 528997330 641207582 628215265 679964136 800655134 837670517 566580163 911797124 773662981 895750871 125666639 523131802 723441137 751736746 645536956 964412280 423852362 579390904 860718329 948284395 6308424 740877896 698888239 735892490 604138251 681965130 733838722 931330112 680653651 986445227 407018927 704986422 650795060 979588434 71510055 398921256 429273331 804405401 300523987 552767455 908240087 919509760 121326597 149466856 182864173 803991065 801545442 927907357 668031620 765193523 178295557 702340360 102324759 280371257 962920720 989724105 666639364 811108800 444076928 767221460 779955381 958876665 516859795 706155931 497669183 801089954 371936546 879222726 972036799 996635251 91318034 499371702 604595358 952155312 580095130 873104185 177883238 227269196 708059192 867333570 840924117 867759533 700876927 790078396 605744418 858281839 881666637 897865566 269739956 897499282 31535204 404595337 547455120 649090480 650210182 746749873 608376416 794727363 652645070 709673578 549980624 814634228 523378340 985217653 324734957 667700786 988180706 993187424 322394864 736523633 93314348 897868500 604175305 703996467 236478076 804433932 940848691 944432015 578016315 995910688 553932633 865291302 242032837 564081414 739068641 773244668 588179881 651714205 209228324 939248844 578831460 772840748 254160947 694528181 26339027 447929977 865292098 875365704 593067170 859907040 672945358 766593734 353161828 712056880 545243666 763695811 216940573 691042890 932167340 947894865 977029685 993810635 725880907 842942774 52893918 978492899 261504989 501383027 42276876 600059138 874607084 885840074 804321714 943246229 715052853 975187180 445480330 544589167 546567611 675333922 276941721 875193495 925168896 942031461 974819828 980533229 313690581 804948341 106811813 661751585 666143083 871043820 583414281 970777150 421497458 483393459 886437329 999927086 431473690 759971662 942949072 957621286 855041304 870638806 592750399 991851518 252974224 545939328 200931575 448871062 47506248 722875432 822222723 981417568 103218778 190140736 395440571 581565856 856577038 922812871 491164254 979602742 360677468 792207780 719275931 776663152 470822553 998649353 610929511 669533016 576987849 996062168 179214061 919525255 475268797 589883747 414700491 917101529 15006233 88054831 512717902 668908421 207804328 226628161 393653935 419347192 352996872 935858608 880634729 982769948 729049142 853747001 455784514 852257137 434706693 549338131 861583600 990783785 471382642 473520208 161690318 571096008 180890449 682993833 180826436 890177684 686986620 988559719 955004163 967603737 591638462 879655386 11029294 51594046 704659117 761093595 768731453 915686837 451047341 555782055 611049580 837928644 295659140 451896145 936653049 990975638 777078758 877519628 56277823 314729357 254198009 481040449 343258051 955773101 391557251 401192685 778457504 945703793 731841885 997107606 643442871 874450972 522196517 574669249 522498118 708212407 340892152 565749136 508326103 642241457 148159610 712037592 868590830 939420855 150559506 781295280 343043374 736789335 425582436 630750670 101659791 542606733 290165846 660146035 157877944 260191878 842848311 853178017 106048854 113140839 643856909 793273380 571366298 780329208 819022795 956769482 341154975 492625646 595748439 676492634 540449309 697801315 439626880 998344725 512906303 797200021 938747360 956044534 578929521 630829481 831524635 992725955 427518822 521703960 229665055 489577393 202529414 260507027 972680063 989845092 381878962 429909777 136168663 279070454 599335705 688594050 455959803 651105841 432140263 862664373 678683125 709097524 356824179 668967954 401907960 945235440 941392522 944074016 415328166 578035524 272358091 768765028 925997512 928775433 268295542 825351408 814121830 885017561 358965161 792126102 790345193 826904522 560377899 729724686 516731734 803638149 664118465 726848422 636303023 802779576 503991144 797204054 60129186 915072967 632521461 675007957 837994353 840524468 305127038 603666510 589059208 728015746 50852530 151566518 717684228 848386155 718202359 827326593 505458320 582463421 73902456 125005206 304612969 495648285 929692285 939356487 905908505 978272912 279476352 982271641 93829718 496242978 813409991 985932550 557762328 983466059 46522536 929659286 824860938 974382919 809951616 864770102 685663322 990791037 218331926 271527616 572480194 758146871 444558033 486869727 41361780 924332828 838342636 906919408 692032139 985350061 458270063 713138998 463877782 631059505 214325999 795134300 915359819 997710703 428413420 655260754 652867959 804908735 863394298 946564640 137462505 242553034 128302730 973782710 762427259 868265258 482410255 931310524 153908384 662857799 433921177 526202943 58871948 821158836 52833822 644722283 979451374 992663821 639605126 788617217 210283706 507696564 109373471 114396024 655513717 667254363 450105274 456452666 139152986 949100673 349593179 957336694 132897275 672048285 818559140 991439429 646367929 969666248 289145581 806494334 369334319 433883331 408158815 425427189 80581971 849915223 142990531 885261373 394101787 468731036 533316633 877347558 261252990 317593306 90055488 200618191 834499994 930647018 297678342 563333903 584348429 887312616 566368353 689914438 934846544 957672884 191697200 795779963 831020412 941778416 810182642 964691738 601403809 789576680 500881582 661283150 451732336 501976926 3372401 142960272 624124265 842090351 610309709 976220022 407788500 671822543 805025732 918462520 226961832 714141757 972767934 991671960 197084428 387914226 452537997 683194261 596477350 976981454 766201443 872815718 547062633 722214073 27662417 989030340 844439864 992081912 754341566 841029749 319130498 895285901 251246271 577473866 441102958 746799761 499578696 858117407 127370271 214859305 200935425 815496502 912126905 937013256 340921162 743148375 817173236 849763107 383198024 937298339 123606477 297768102 786075009 806232817 604497417 697213180 558654919 718514582 47301404 909033212 632172930 756610521 434796873 550108202 91368788 561696252 126629340 634185548 501912309 715855702 775598132 779732292 871262051 967310472 151613113 975815212 891612034 956137048 950191430 951235063 99780809 579701021 799849770 983289082 922820678 968583129 89402261 217767073 282130009 321883188 660936175 813580587 208310227 211144844 132020070 570934304 75385798 329862880 991577415 993003477 134003094 469273718 840526291 880575589 528712825 556122857 870129536 971651530 261394067 326905709 74161976 727273983 963736908 966631717 681460239 826916851 849785202 917455306 599978191 874455369 896277278 980574026 910291778 933640179 166021057 553294589 706510481 925402967 575548136 699377159 610237368 696572293 559774057 615688702 132012562 324175957 203564845 588826219 299780026 553104795 718818228 818866887 227238636 380270470 807737405 889539366 849390614 990988084 159960309 963613091 328185885 970717007 436293455 919833091 5578256 159911569 464071540 925531879 976108479 999380689 783541 461910109 225314941 491237597 905330426 997362914 550043871 638694874 788101956 899076726 758838914 952351175 355505392 868107240 512462785 549008079 81888986 685415541 283757472 772608679 985828792 998098565 977450599 998180359 247099877 606809020 379740683 488437331 271120897 712242237 836611956 952966739 524349648 931691622 718535914 972639736 951613596 985225397 489937977 587874172 289840731 914622891 308031513 824709246 461590797 921064314 394378562 942167574 706840483 765260274 91124802 194818488 181557976 436348912 590068865 724397123 225274685 711133319 774503728 872312825 118491027 481578881 464566850 636466072 437687734 517438124 648268260 924964539 846441137 856590546 775224936 835683923 497170887 982706214 969078977 972277940 396477567 836640064 353123513 527372109 442188861 930126215 786639247 983431781 697801330 952190996 315135373 565371126 929054937 962203804 523412618 535183190 261865389 389587195 563002901 934050507 463905478 526375790 40258910 218367011 690913091 984974900 832630010 852765763 897563530 951896899 510354419 691075781 641834480 656138275 286108524 451021795 310896595 403466995 602919451 909206116 589468928 642148834 39004287 164237714 311281292 390219048 803862641 998238115 490960425 549365048 321159100 737141708 204581789 349962374 688223219 923724448 216614920 512376569 647519714 789876517 143716468 382281064 669141015 764864434 625860603 901924198 105346447 528266572 819017369 877331908 200735776 869513323 956220925 993154616 948011069 997510744 557203745 580190400 178814807 775155878 540809016 825978525 161935134 928197763 688213404 795993752 909091546 942202944 702128193 770224064 344890401 520149029 63420817 737497830 479171049 908857515 548995914 910199942 553089534 765553675 61612440 960653767 236281329 246101631 97042848 492363518 105505950 240310604 940163887 959888497 199846401 286028676 984690060 987932201 439864238 553957193 412442434 614471281 794165638 822919442 399182224 690661221 333199325 704391101 784441494 882749783 555468795 959280776 565796002 650835975 693219884 875422282 709768925 914201294 389137855 949920313 662988930 835744365 669979820 907536659 586985849 598583749 312740046 332126087 312152816 406396069 229476685 933851122 737253869 994480904 922014149 970546454 509571310 573537482 663997384 759654055 102889497 338447645 594094745 617243631 945939462 981173609 428933786 463027740 71185054 665969589 790934727 955781782 267639377 884371108 80328138 971037729 680254535 809985159 757495270 873051978 434139158 483986257 206188478 864264782 823931612 859926586 324917557 632007230 88400269 967190619 218742930 396222079 949179005 990856782 235374479 560387855 438808144 766619274 696069982 851469927 698784849 862764963 88971907 175928179 302971053 957303886 43392645 518333620 708327919 968207260 608013572 786884972 405753351 870169909 965412808 984889900 319605160 826129872 442462310 746818017 397476324 916499341 140000513 572869503 379737662 870306870 354954724 568736385 256060696 640145867 299146264 339989700 691473591 749784943 711524597 740697778 698082182 734143144 8778136 172030486 524333222 853960897 569516845 974873809 873102941 915460526 788479531 877157597 351318367 821726543 539502660 816152891 316445209 632451490 787845330 953002259 148547912 474254261 168876646 577388973 463795365 981900056 480203020 582029356 985288884 989737326 112590503 381412961 748345507 762311894 849551157 886037449 889419917 931450481 429983659 535172139 824782029 890114417 746734850 757866595 84404075 584468383 318690448 875574096 87347569 551473109 82722138 727831582 634470417 640648321 770734702 963297879 575804757 660960189 122727487 629791301 167472433 686657981 202227761 773856574 988498155 994747462 959418246 959851637 326921645 389443241 88309276 405572138 946580058 960015798 321741924 757030203 196492093 847814999 4406031 339524961 526523045 684313179 231132194 947233823 457043386 855931235 984797126 986003255 821122760 980767349 928742208 967405455 38491014 588013124 787498779 788230881 458724818 621506462 321217505 972134490 714732837 939922419 397373270 518449058 97399901 949760615 140520672 749287462 344136763 651985038 235165554 799991356 411031159 413829393 775467284 983061692 667914997 697911234 199232796 353988420 434555274 481645131 665223254 907901940 975836872 976906864 570949348 793490112 513545362 532408889 651259857 888495138 202992515 854257365 980512813 999278731 139759811 185251577 315875031 953938402 541776293 830977841 232087581 738937299 382112627 703401328 8846509 15927212 126556349 191905761 258900955 367741337 300344333 397525030 231339873 759618830 189702049 899605488 154449708 506207835 954818107 959676287 141421586 350434641 571019920 615402141 336363125 955323980 549159222 905612856 28637741 815058914 964183950 998888253 328343697 493717352 660744001 894335602 506733989 535832411 638175887 685862657 638140656 788295470 347524095 359314591 659592966 806334257 337488599 912320514 205760557 444961305 692428360 961805001 824353538 836989901 510711526 781679294 627439151 755808994 146864315 263611333 770799790 994538539 235809145 348344380 110452201 225439122 462559164 782106097 543613706 967985012 4304059 289367446 456811602 488679804 115872476 291669372 63831485 199909755 374038574 837723641 560303060 728453220 466914701 810665471 324233242 705110475 687382845 902896991 341966199 572697076 422438754 770130303 212010273 581272041 390881628 393062175 29967997 266066194 392186067 783615415 313810357 653582308 319260475 455261902 220914019 237669260 699732109 711641199 201470992 444088363 299959655 987263246 620762583 663941965 656243319 698262164 256063234 500462244 217325551 433307576 40185977 494784652 265828139 626337360 436543958 905341628 788019115 874387901 439965704 634621838 901891325 988629713 660680399 707387354 265052616 815137384 852065120 953792436 931315114 979815696 915921029 925950792 627632121 895735844 488773760 818577633 640613366 756052858 647824082 663437021 831248735 880078161 576906846 927106579 741602610 940182488 298302845 478167207 696045117 794118944 22958842 211184648 339736448 694601510 39894888 236055639 144869601 660952703 68271705 310442030 198510686 886400690 576157489 705323982 685037649 980011327 79819586 656247624 184343269 330688775 872453818 947623223 739545477 866265244 775287703 787315070 780113511 980937911 837889809 946685456 942938516 962268476 174475602 816493850 941778364 960820754 160320218 559564933 651810046 989925640 641478365 855790453 68495272 337478633 730141666 833565986 548696158 584170029 292209016 742015470 396389943 421210403 621426984 935118507 953272315 995472811 674112887 733264146 295545028 849173002 444307781 676751016 376259514 773408481 220324809 462362097 529157042 813945591 392770573 503333948 601693859 909981572 25184896 667433839 29920659 564811534 161546280 230857613 381163888 689335805 437564298 553373609 876295004 902102005 990135889 994584895 886601002 908389780 426275364 816165734 560825063 675400146 933110745 951246299 404475751 733247143 470921815 578998491 191635738 742740905 592372354 709311585 788668061 876579350 63413793 798381153 748182909 935236715 632161068 643668791 538384282 704119934 669789072 720213631 943601682 966281540 880874484 986450711 513971922 709977095 222398174 427126502 778670890 895101768 676093421 752922399 487631753 718747307 360324698 879096900 774546708 837108587 113484792 582671782 525528011 937482226 217625609 962898477 480158165 994644445 198643878 991051571 432990033 572867501 995136631 995137383 423739905 705577678 537168653 728378734 509465034 516278917 941117937 998428518 155504829 482987496 555404116 872342966 859225204 990315148 449425387 971065299 755638643 894756914 841719116 920987314 102001005 119499568 475072735 672385374 743166136 859433074 90197424 471659864 696827260 719432307 730276273 901958932 60335792 584907134 658338863 903757738 964709228 966118184 892610004 962709227 668499901 829033015 440602676 756005719 477177472 930195040 971855491 994553632 163405157 790359422 267283902 507017268 726194788 811601649 979625704 982044662 658693183 698032485 262767801 764559066 37609666 125944610 823799974 889425818 44968947 881724669 553728643 675045651 686921503 791739389 460253854 803337862 573227495 698055548 547467472 637962915 310801125 592693398 509609319 991275020 249482552 371230244 35811318 791425990 477940966 830222571 686790840 945457933 921503746 960177929 638240917 919099107 698488444 728451647 354641689 551909194 555147705 613463020 291376232 739970520 138608355 958468976 15202215 526248268 207872720 324277833 171850055 959678584 623570632 982219113 804323939 928359442 344691165 994751663 21223194 384288900 196356437 411273700 466024148 536800215 285073157 372846640 255040396 798212050 510066812 933458646 660136300 905443131 431976794 598038871 516741258 684976653 212951986 394038337 329108609 815162711 661967463 768712441 639668129 775447936 545826841 760825832 344328444 729442805 968476815 974685270 106377147 867647162 322940964 479955320 204341514 769928407 481009081 561550121 358872686 733512152 131687750 395689473 207629171 307074007 257128104 809096651 628730670 963352490 87764627 138880798 312400733 995396599 196084595 637339215 69890142 529564329 11972535 216732697 137773403 784233408 850634086 983487919 876546044 967580493 313899736 339294651 685634114 907617648 519492432 974376669 244972473 650531974 749744171 813669757 563042267 661041783 670336143 997411438 96927429 243586890 81929579 109969273 4800433 215293975 340820991 435423905 312081304 386398206 41546609 810799014 159031779 905805865 344683947 877662498 736691940 892780772 782291185 834339380 884845257 889193039 899374146 963710150 967122971 995891719 70792719 797378740 942669500 950211295 636454380 834856557 404908552 991571779 454707512 794002306 551428744 968320599 12350354 642972732 393277529 787325308 421438531 813531995 461143405 558264202 887537613 918328399 445387068 677871363 588374727 826997317 206786895 511379759 707616686 957810653 463251335 806615536 449800722 550233994 781138670 893049387 235370069 849444233 441454232 784779786 253946159 659561783 61490919 936707551 914521181 927403370 307095150 624244135 396015474 404614725 261082620 742017475 753592163 924090522 586929858 951159455 818172269 972252713 265057655 450837602 711553230 813461404 348702061 427291188 88091425 215108991 520835078 570034611 245727744 966518862 432473501 492986334 968711880 998488647 24526418 121383018 774800474 982584756 813380867 887745334 105251607 654325623 248858977 910283775 611664746 778428725 943834427 981493539 79590800 405089779 953934684 965142876 314100427 534321806 658763677 875679564 69440353 570869949 850485764 853088264 550292956 894844848 517302834 868346171 801225012 859047908 582753078 698821690 442329833 558181983 750982849 847304402 468969669 520196777 821280849 989704442 640429247 902703591 397976608 989185213 586523947 607709408 230915316 790072809 572354979 825371728 465914051 580808138 696645251 877332262 124840737 459178882 875477640 902478254 147982942 560623910 577447091 857380694 880290962 953413063 264214693 794045068 707153833 801551600 74187846 454234697 321458537 546690502 547296477 582533462 755120561 835263785 403342589 820034267 385693470 445042984 709994345 838988215 363583249 412923726 196726297 440661870 450818180 737373201 777578423 971581590 235465787 403708091 974008217 992536021 384877491 470856239 804408472 905527740 701025239 750724262 332215141 921792412 916941424 974361231 79392731 95211176 410091416 891629942 950310769 976020373 237910033 803897967 84812973 547035604 488492951 537078792 122088547 795570720 329272007 607149997 768444268 773875115 79799169 259420184 487838080 624964120 780277771 876693066 973712774 987242510 591622967 941867525 158029353 676088273 438067386 806726267 935470024 939340341 659583106 988781713 764327196 782410202 615673490 914091033 700047878 718727229 257594851 282345245 840427944 968028507 363442762 501384428 551912141 938278168 770982420 780061228 782032913 818079656 645977788 696245012 136827239 334821348 150489967 318689257 916371095 967643669 217299159 642291663 347117722 948302450 525772797 961499481 550715589 822710730 962488740 970753329 819886549 921769605 663838607 763437341 869465593 884482568 202307681 505590584 208849393 628349847 251788306 368545468 255454578 386684894 842642535 945937653 247914904 947892193 673993486 977773626 272386103 873717296 793775030 923349172 90466543 759622655 363884725 446852486 880809227 951183593 249486775 719410038 13247582 562349682 894344708 986487624 649330415 965290641 433583484 469149387 891925063 968471190 375196700 522788585 70285188 716635175 800797038 936726420 3378276 446872320 450723394 566188896 993449574 999005354 796322329 910783201 35582172 668843008 854783306 960432528 662176442 682846714 919616392 968805403 620527955 800670903 866272652 931393460 436948113 941849449 106342204 896557110 798272521 874812979 805061209 976840827 400385144 487429618 518123432 608709119 883784214 980425748 493464503 855967629 966556271 967517526 315295457 752101132 314120179 433904454 434026141 574220039 486223982 789872779 58675698 164879963 764826072 939683740 996328253 997319845 519682766 880559909 67215828 508711258 88535831 592815319 925632566 974955478 255518427 438852876 192123676 379514363 788939274 789910258 120356637 944214788 123040424 491375022 634072995 840865456 884784134 977665577 534678849 943036869 613854559 930035277 106523478 321463248 263327848 591675151 841463080 933248427 179145871 866418232 774766660 991238628 397137642 776070733 319657192 702343172 55553164 93093351 883026030 930655865 825934154 890890336 61385091 448805177 800413756 953484438 404873515 730575351 871148358 997666584 821010062 849212743 184680752 453499398 272579579 922975933 306428201 997922971 372599710 721381614 794684240 985549437 350919473 503754694 480686145 981494076 525743138 598493997 569747053 860683651 367065126 571407508 704443954 905970782 110304631 902482481 827354431 876910548 48094845 969975810 603680239 764912573 211684629 611212613 128406361 541004319 514268113 974053866 629496328 984531729 326447463 456987831 363008041 954077502 835900031 984046586 223814845 778597303 998949545 998998844 978853910 998679183 565781359 643397951 937909769 969630214 748060579 925291246 973166900 985768401 366710765 535265705 867565037 921811917 906022285 950320388 754028012 918563938 411851945 765063610 650302072 710641817 950209352 993815133 19708917 719826481 604997048 727590148 451687101 925348856 655015070 873999538 953517737 994851168 843913404 846397682 196286642 352722256 192749048 937943843 376911899 620702841 676253542 814208289 13639512 259204593 371029865 919122726 651159069 846065902 913126396 913712964 974205675 977840781 185162521 264135701 34180014 351928417 319062982 683052010 666611839 961783362 292161757 850731101 287118536 583553301 607284392 660231416 20268699 418822623 769470933 774845949 687276733 807771560 497664900 639775695 674707509 820649937 626902260 889075170 853208767 903069966 884150215 943473800 423176189 910170119 644813117 819179873 861358905 871006405 67990094 545419888 295058030 814785388 636601074 752619321 405376727 450755867 863188767 997724604 256229274 612887474 875686436 912171021 696601793 957089280 747437500 875003420 46938822 531387054 218399523 245363966 833427868 895401094 1289122 666795187 101997796 742419465 888163848 929800321 780603606 855934329 511225658 754932994 698889442 871941072 49944666 128588327 223531327 694850988 537199734 891630750 516191539 816714115 101315912 855542731 807271264 855017456 217376453 446379450 394633970 497684903 318429990 608641655 287285628 487208937 183677659 727059979 589351277 889802175 663712696 864504629 116767951 758314200 605660839 753230228 320945224 721525167 338491980 508700807 455469620 641612045 246342869 676450086 533498082 556895178 708111099 777086428 561005827 971833553 524308072 539175362 103090599 748406334 377217470 721333740 898043490 952909485 147355211 771593422 367472789 868863502 911255149 960665091 870537827 952792079 518178152 754095355 523137131 678212594 18053811 530839393 711156379 836408622 704158457 811424663 417293161 658745076 120449697 800391878 508319485 734911597 636074550 951407963 761252373 821999143 249065650 983476475 389939060 745767375 178508607 758744056 196569637 895776452 559895338 856130519 887896102 959722920 360141112 817566115 790676775 837350013 9127327 205181195 659452636 992164754 757595156 850698358 735131820 881366669 100853774 980001759 36448166 948902320 93980867 411402947 508957125 578658574 770273864 918377919 957424102 974201065 222228942 299225942 956183707 960182150 667972853 957187897 971168537 975376968 510350491 911875343 551877256 743639244 911319015 989748689 131304201 933366117 411042870 613573109 5715014 48395418 342446238 832489128 470962889 590811173 156313497 822586681 513591039 942013369 624469534 973262537 111320002 946380024 359321779 620004092 993940250 994768263 912497983 939863203 173857803 454477439 660387409 820827324 732879275 934794872 490267443 940840637 213474276 826938294 927908339 934964467 576874693 843847536 518623590 595845171 320244003 663064221 530922385 934593035 528003299 572817414 19324334 55341515 813827566 903654919 103914360 918880553 133588751 190457002 884564247 906915925 478905068 786932908 463689671 857238818 400844173 426902202 708181675 816687571 125434308 283062495 5642165 182091222 225006352 545402533 156539321 386606839 600480295 674707527 403944983 516624681 391304378 935536840 566773765 927575908 142774380 159761522 741668514 961081579 874936489 936219122 611721325 747313784 698084207 828097597 813869954 968160531 162653037 695326978 232943704 751509642 44579134 752935827 108479984 350378361 792184002 968106237 335284197 698931328 900514009 919768048 198557012 950597448 782253858 899377157 353008955 951269134 747511880 941844627 686525049 691412543 801531978 971463789 417528836 830621500 187056258 632662845 934637399 958492751 520240036 783114541 395772433 731575767 977764033 986961882 562322704 821547485 490621889 903989206 680649463 821771562 893892175 998840404 272465672 313525920 461271147 592759805 222892220 658037970 758409016 817408845 414825730 943291865 959838766 973790555 794236707 957325724 431770421 693325800 99646794 549936594 21064553 667703959 405802648 686610344 300225600 952607635 594500013 663952875 654257669 755636227 696008498 923791917 217325157 779353613 808156930 893489145 318981598 753402476 753193972 851541904 689822641 931895322 679472478 983405585 902340359 932482402 978978174 988328058 820389472 899705989 352708365 368985359 780204006 844192097 566958203 916194363 370662329 702702032 16965399 610537080 36973316 882080182 388158816 699254244 303054996 778125113 470496746 702936728 223595591 741387385 966445819 993812648 572952962 998050119 151003551 194086605 890205744 985141616 931003101 945167102 562102191 937006145 574944070 924555040 615142420 727776046 315284639 882037438 87466481 407433744 112185629 298104606 228221653 831101680 672275098 779632310 56489475 224269465 966082867 985836656 43886087 168929471 470855447 965533266 966380992 994879393 59123826 592692377 883234520 933669319 534137255 615109458 756547740 784083381 462506511 816009700 561011221 962011609 100888690 223577587 848160982 906728926 292220362 364342377 781699550 975155131 330706674 786257812 476716653 483568199 355899610 642472539 235914260 794187622 572788014 918880520 423055022 890441773 290083044 662456458 677161314 753115193 458480037 830092157 123869414 621915013 112506736 966680944 747984506 766995397 253873375 555548362 705943936 827842566 888048800 933581398 243138770 621017440 193845388 227876788 952293501 960506008 111016860 261232701 525524388 581903013 977762949 978979787 971703144 991193191 782990430 988446366 787788135 804846836 117976184 181163034 638860696 762669902 725301081 972904442 905033582 916207565 951902148 981671196 766679721 943037445 839831364 907825686 938447421 960953967 329748867 576045418 314510292 594443268 981798303 983056575 74520642 950727495 868255420 872371874 952560068 995157159 23384489 660431310 889749468 973947968 550542861 819780814 370530134 648210096 387971849 499869229 214497189 354176321 217365978 693076974 671188721 757143591 49940930 155315975 494675577 854375493 388411301 549810430 929729928 946176730 228597650 293292954 356889332 579749552 631752367 993153868 61983679 156482245 799750299 926595154 551987169 901067423 382063608 535052928 208917252 796838671 499922493 731704320 404666752 650647321 390978279 518066372 198990036 794411765 640153647 990425583 833388467 993244086 59330112 265982014 280850463 659360448 582874751 762813725 48682148 191957856 884084883 893372758 50582175 406789035 699619426 751309611 428997553 550633303 63013278 240901727 393700596 557707187 959871012 979718027 157649165 216346109 515610144 969934863 835147095 981832180 18288615 431616569 184525912 327203428 640192163 657829840 528736506 762185889 89073921 128750928 604926897 709039428 295542112 917170589 589965031 928627244 110143883 530409288 512675440 838226196 860586043 927402323 13891941 424205196 620774151 887919494 748154350 824747003 714199337 801685354 174310790 857976098 635302035 989335573 313155211 613937614 412713498 631245603 86644164 642485416 957042442 998086411 85542365 868739378 191412834 365767145 400084458 413023895 756589232 988026488 573344257 654304707 843546576 918470321 321082003 961347228 567957234 680439409 993803016 996765995 102272028 886934023 824677322 853129539 369240890 591193915 361381777 736784619 700876978 846531814 600065960 721444347 407127207 793169493 683798558 749190061 433297577 544160672 804823937 936124036 620895815 795873701 592485266 637343333 385856432 839093165 626039318 651744128 189951720 196667463 13165223 897049284 859704254 867677238 643547172 941438635 398742690 895227292 393100947 754529886 737870483 875444351 176625154 547849842 196884618 299751725 814286937 935494872 900898667 973206735 853615761 863013038 868819018 953041013 596960558 660458252 344121269 588819015 548048930 569814087 672890548 999189064 254166540 557865992 858166425 958101926 548014145 673602738 828600480 900572507 51095333 235323632 304035932 382872576 455708424 658951993 539809987 663949630 555540332 836628234 56428480 258341210 962911313 994594694 278527787 965497105 498257551 911060589 108594684 214493470 805386130 942767839 598847315 683299071 584556719 688695778 573052387 867434716 61122845 106463123 224772199 305327202 643429503 725759909 55122390 457118720 31714364 192389740 591814391 874772184 851348081 884243196 13130416 140944773 577170341 602696575 288464424 308043054 739760132 939654225 466473215 472557218 382843877 563381194 671674319 846605692 201008471 668749699 33465772 561403780 909779975 975327398 400934228 840587366 103877398 503274653 382437627 673731605 790745962 856436218 895936937 977755593 789633203 907802427 26919914 836444159 726431717 910046750 722411211 833436751 6430665 112722520 380629666 976847157 176242588 764120861 620607130 959784995 722990941 753982420 916957234 920547996 616336339 897846334 953262125 987674048 602845112 650772061 110215684 822329388 918622156 981224000 318748178 398689840 382357640 762491447 387894487 778751969 407394529 441323066 852507471 956241035 675388458 737416375 40742064 205951073 110127049 197664074 959395301 998816861 67631150 83821586 352722068 964295363 523841172 621864356 847420565 860325548 73262059 165378971 297816765 385236618 600866999 603587628 885678406 994354561 562512599 977317703 825090066 899437852 767602444 769515076 416227683 955120188 737024994 784218966 771261906 949615188 301142206 705253143 283351570 287968836 577405043 724414004 214271718 990524640 73019270 361004446 650121366 933156159 698237778 932805530 5331796 391544131 654413277 886646032 742058014 996093194 681318076 727290404 424223577 757599060 387659487 855758792 745696190 903561686 110055327 226935673 428296507 731631373 741788861 825223513 637440946 638715854 109492430 888116826 465290451 739464437 571735414 696599954 924424849 941019003 550001015 822010320 792363709 935646833 279040025 702820898 510631144 944400750 501485918 575761134 444937752 514960951 921454378 969443495 138569069 196826583 200651478 689346277 419089223 845480540 1212131 529898576 675431192 730135969 925191894 986334895 743589554 780377049 64009728 268839237 892658962 904624403 800602302 839997634 315317904 695080625 460997696 873881239 216586486 879687525 582063668 619310273 653850128 734040330 552452824 918107938 596760031 852910767 613086912 743016233 400344998 997330064 339470296 668731462 980543197 987825125 378654999 847083092 502453236 543242413 511083017 802302062 673959293 828332082 576022346 580741682 107299740 301735664 658792985 887530164 292117657 996399907 505473163 723506588 423822328 895283276 848509425 928130110 382325023 937023627 989117214 989925688 905228071 925935435 542701735 930457126 108162951 367673300 115428510 305905310 923025089 989008753 645733798 673226851 764461413 863089849 487700343 960761420 821520609 942154496 926625586 968369312 27724872 749324481 185794698 430371098 92102265 717468219 567098224 994543178 963605213 969951557 107978259 918759507 541214347 979776737 894942213 970941189 500504192 551749564 645679987 861755487 924600 602383065 260704519 505066744 544050238 611188030 4077450 816308701 46460728 97079163 982206903 983607234 458161340 918687713 54762668 477637237 99113140 621756389 89531105 402386021 623422169 799453846 635308236 996255144 843355437 896274534 731828608 927704950 659785574 693025361 239034204 412613300 334107076 938208671 241486179 915927895 995116968 996031463 353139546 792925843 381407856 603054181 535236841 953433924 314865002 954295082 62245360 660262502 721982513 885096245 861271684 928582934 276936645 540293504 738597204 861659191 98384032 406738521 572842532 874359969 375858797 784545515 256631285 982898051 967274659 992695089 400258848 653573134 852568670 928089725 851179938 998309535 488344632 867087373 921867003 964742339 56704520 376548712 796807123 846900544 175971183 690447190 976460514 980746160 873250071 878379293 69656489 573078160 552361756 978906218 826888135 843879903 352054034 446080580 45407667 771289794 430149120 710209904 136880421 324660786 633819257 782652229 915904004 969617289 582381500 922414162 703093242 949649658 674139895 867943671 472933313 578151446 232139692 535337052 317431378 695402862 486804920 727749966 569524077 948940271 717651343 894003577 709350433 963497242 510113670 989004038 536833554 719728371 447312351 900950977 444240051 448539387 317074217 529736915 743224967 982857888 518613383 605681034 257793411 955897316 759405026 899574778 675976759 985583178 416916850 596037065 903104120 929898344 261126234 651789600 506249243 680619501 706654982 961471188 296845478 394720070 2602730 945304310 355337157 415291765 454682343 950182027 965250566 972930615 364378595 518778047 882468682 966297113 288989850 930423097 904317503 981176186 335898034 514466617 780759936 953043591 837200136 838980553 511624846 600853821 280556920 764230171 62285967 906762467 262373410 610881269 553170767 837290281 67099235 448063163 882532492 897281460 783607165 978691267 21191489 382377903 64881166 814146215 599863922 668177092 761409481 914134828 280195334 536418957 34798237 825631486 693281108 764360201 728688730 971479988 363707880 884946927 318532360 492883413 973750708 984667461 264799369 908614784 605427226 856888059 195537167 299408888 581784998 651555547 365868971 976983099 560585461 927987257 621512290 806280093 460215335 537498164 372314244 835398111 947092844 953703127 598107976 946284925 791533866 871729877 830035949 918568502 639431649 698930631 67996317 241363926 572117213 741122529 743357189 953708825 146175044 248445277 129022705 196294716 933608483 992548420 411224125 764907012 28565175 527380616 973277961 993755157 510031427 512669363 921550275 929501888 751739022 819509148 732958265 934398461 671373973 914222801 127155784 331306288 641647678 673929144 67069315 215079971 751021009 957123965 634921900 762015431 274737741 900332379 382678181 617222192 724130680 776194978 499220144 882739782 574810648 927411686 985396538 989308649 144285456 864669497 569758999 738117893 162530257 275827040 994629991 998034625 959564894 973496765 414297125 903228495 202472511 239014391 872589203 923754509 987357215 995457474 232147636 755112682 508657924 981375885 162280688 187170374 577941496 581002331 345158112 888194610 229516948 703401659 73799179 257751263 159275863 225926340 996105479 999745048 22664159 476612391 474640718 573152388 539231665 980154539 293088078 844635740 559511051 853781915 40101830 948665401 483340535 692948584 282986471 530722340 800903111 951436627 507195545 901228148 683605934 968859933 555720794 659717323 787664457 971865916 946127966 999290446 473968295 818718683 381491360 651129339 689526085 794575802 425612128 991250094 487947921 880408384 873595140 908056221 669216400 736837883 959366351 964072915 480973496 956420831 346071940 733622625 795429151 813990814 891735982 900057810 483825947 498107213 713628074 779965082 95625233 669862001 646528095 657018504 580187394 937662616 866999904 973010784 24948170 217352744 592542270 920352949 830272081 872766533 158918342 918110285 921579836 984345429 681876404 764993505 12195953 14919115 147751599 725254716 729231210 864861298 367193675 721807721 221565948 260058809 545836517 712988514 348870819 702688118 764060313 834917310 874130385 907306549 548136771 794904963 137167595 284011008 573384773 677584578 20140776 401801056 822760349 901414019 317338535 546901503 811196898 895619735 958168752 962227937 302767244 460161178 153738478 491777886 648170554 860696955 901872303 933668552 200847441 850472133 477475509 986129814 694233446 910241066 683931041 977082699 489898183 694669326 43439362 154545542 502792603 607877748 667520190 840589370 795095530 858206618 703855230 798596757 664095558 856270765 988721109 997749790 988283584 999245340 801081758 805567769 413144761 523349044 235575782 617294108 699428770 818233319 754225711 900527136 291884450 695599731 184879449 914094395 949615107 994154279 248507348 853997158 675019551 976569129 309461701 592801841 938102325 992669633 863059082 870161283 42625689 442744255 727736411 914718154 130315868 813400438 230147638 534318543 80077905 960855524 94659921 368101159 588778540 633282611 115812559 928999564 493595006 957134279 286894393 803720887 83181869 911419669 943732742 990830178 284618796 929668297 926057680 959399838 951400857 957922558 372540472 570060673 296424705 930667993 325033208 628295649 976138296 989233050 595240818 930634720 186120061 257766614 933385653 989967657 297707109 488088340 617236996 618640913 656938694 886531015 488949660 676189815 26309936 181604378 286377178 405765951 65036207 855390271 896360641 975019982 322270274 979880832 141439319 534284899 811575879 972604650 477025002 913462640 736600000 782472433 436446868 476438645 423268654 464210816 197730800 292224963 978142366 980109948 849195159 879580228 56262332 534774401 32920017 571915085 255276708 928899825 926278716 956215893 986792122 988860504 697559731 928517578 351574521 978774838 855649074 917806324 424168383 594395948 221758178 273874133 567312951 719824020 921031965 936451828 858071284 959031993 276398888 963600560 948284874 985356501 197891021 852347416 215575968 628885254 465608549 735211226 961693521 974259748 595130285 795992152 880100666 895634316 107014895 204107602 338195268 968269688 656303558 678416278 761162736 844609204 637681142 813414407 785232625 996878489 260257237 800997044 39818601 349969003 628147858 986335541 386420219 779982978 369936328 950547343 120971512 339977745 745491925 919110766 751830678 840966322 4234719 429242260 593755509 709802313 645604146 742273462 414399839 739909626 919442545 976127922 214946312 316006546 742167703 971424261 281736260 517707738 378544554 765643267 110146992 510819630 795691767 948138124 79429115 514578632 426390755 438130390 318264313 424818342 267153821 848006249 222078015 988263312 65553197 582631975 829411853 949371685 597770055 681297311 899568623 916260971 434326130 877855998 247693995 319863926 203443113 787331531 232882350 740652028 839665905 976603015 301106035 544820521 696298950 925692628 36522534 667700836 151907153 921754416 586948784 826228089 645770844 957708739 391858831 579445380 917281400 974116367 587861794 625273159 973204911 976095430 353451067 553321965 843959403 951214787 248657461 305120539 742074363 932267137 514272458 727133538 479554220 698954070 311533032 645122459 514539754 703319853 489234969 956562920 906827530 972995675 348020074 733328384 221020549 699711649 510653379 567340053 222480861 368009953 375085198 508176367 921677297 937691411 526368444 971171507 379203093 964209782 257978829 843736149 118978867 842743888 950300671 962863430 483291877 618413425 681427859 981556434 265270552 388720318 145213070 368372112 717350734 748356982 923426146 942555800 42389306 241349268 538754198 984102974 602994524 735466448 467605013 730742644 138350368 150181662 689059466 738472021 920889444 960735017 637275061 704875004 287690100 608841352 417642353 649594149 498454669 571097947 259550608 579246930 735305977 931422526 795997485 841559200 505854498 766819304 293446265 988694258 649433257 975938240 873211979 978760009 71227340 161208569 552137754 916539494 731864387 986189015 418865255 680729202 127995123 809817183 826463814 954896316 876395526 953429749 609304218 935549738 626419077 837533630 53099454 190387587 85758485 316938194 815950638 819790448 977670438 983995221 40422106 918868791 497540582 571767424 948320215 973348005 211287939 308280161 518088110 605369729 226593621 232266616 53734260 529789486 214333975 575619346 724894501 924182568 443732286 770869239 375919899 981995724 152138813 194222801 319378406 944792432 236502623 308644929 593775027 722190301 888462177 906099733 894124106 997064395 816837595 860767652 789171731 958684912 427118974 453110664 148493692 678913577 532231284 923512627 302484940 642783345 693405121 795403543 965971492 984751551 315322621 767554680 160093466 333481578 268269442 587502469 164420893 268085359 974311636 999708306 602341646 757104212 828926636 923827101 764033012 960575335 426284858 765501574 139486987 503549352 688686617 999820763 744986229 845709036 73345743 771336506 408547146 875705392 782230550 930539318 121772025 439629512 868760898 900323718 158898813 878366607 41455528 910394002 242564031 276246390 350817746 676959627 776520869 834359116 50298971 987391740 276633781 464760956 176204625 398572831 884865712 948406528 323966472 845091160 509022832 836839812 128376076 311814771 835753771 941016515 399304597 728885980 202594502 426060059 872021973 936421338 277037040 486671445 623108317 636989103 117249884 231642743 195747923 518096401 922028707 989737693 380734570 580290007 103569441 263446215 329914382 752964258 419676255 909461393 26989176 840618360 647585035 801536536 680649985 831609989 286859037 586860869 182603714 482815669 717661561 897941901 917036227 919769192 784743164 946120319 63582708 292184365 993936606 998383072 964744358 987612946 436415642 987135313 724897095 926526011 176186498 191703634 277120247 327775560 739772130 881228411 76731594 216488221 906161591 916676299 704441400 770638770 248773518 468989408 328387012 860522755 372121570 475316718 57855688 977838176 769648358 924774968 996220210 998766470 794553613 833503289 605215618 697895764 748871141 851791637 863379215 912693488 571640662 965979109 134149772 330642182 784605159 800753088 819668148 842494220 89433889 135710810 554092652 586035252 411447587 906269096 239995589 936276908 283152823 851103800 56779292 711440889 108098644 140187719 557754168 646141205 76140326 514483232 615756720 814386396 725637413 826207470 548040882 573046437 60491737 665878544 684814182 689755364 316519350 367298925 907619030 983125469 835773607 934504124 700671296 917415353 550748284 956529269 349747576 902271330 429021971 506489466 608005229 751395051 706400039 713403231 206796445 855545495 455499003 695746332 251530968 342079290 777007906 970058514 347175921 523314580 47384837 413716220 994475708 999896739 911322480 994050018 22753164 734118205 406784421 893121426 347597901 417676842 164359383 659506454 79228916 674365723 654348631 750762312 916170958 919775591 542731671 850074240 796881910 969353200 393165266 929782807 689719454 741595297 690561884 927668136 826130067 960084615 884889583 936176818 84892798 579389374 700092104 934186470 262121750 747297896 333724895 749426756 809757470 937201945 988778681 993964410 534091571 724206989 399573707 417823216 691684463 902687676 487548639 983318493 834535324 846520242 311309020 656966487 277605470 629012800 850231132 908748493 79357332 147194566 386948775 655558113 623975726 711808556 731931705 746621513 714801950 974320387 615330354 651194481 863068258 910356268 456596763 958724597 406136060 571765360 788689128 837878974 598194575 812578420 397272563 472432180 683403157 762455525 55822522 115731693 792867039 845214540 396950480 764273039 939579265 956370422 720238526 808507559 440929725 936384021 548145459 607211585 829213815 973820897 411493214 494736197 977466943 998043452 899082826 990930731 910702802 916709535 564244942 823075035 198673106 379500380 415589356 517261759 520257050 700441219 692619462 809026079 942302673 972726514 774179241 918044082 518237381 670159946 594925927 867430130 780312813 870926488 798044596 913366569 608428902 647654786 81470750 957791098 560769207 682073314 816940500 948398878 692119399 858642843 435826515 748066757 540312738 794834219 537813319 796881272 191957882 549186018 832698565 888277123 596226236 829757527 802988803 828628100 527681495 726609510 760273386 861433468 925306516 994467121 902077681 994540617 749546468 835124632 71988872 243209505 235500809 823292041 856147504 868896695 125233348 353300428 313411893 761002916 972152406 986204347 39787899 168876065 296752385 430093332 640790132 992961189 603328841 650044234 546804206 985763167 52320455 846985377 365283711 906040951 797902889 892212017 970835037 979876495 65057413 974039433 784620792 829229232 196146372 768151314 915768275 946010153 376588408 649329598 340993226 716773666 29703309 259852270 590276397 696149868 158269510 311183952 695066043 735557379 153922134 653977409 189156772 789855688 312277737 390795728 490437409 897077526 500513437 589605650 707163749 904445548 102358187 819857569 388653984 610355722 44722232 292434958 745718301 803883947 794693038 840299926 312797870 513402039 824202835 996438820 408609943 891262583 214380899 629216784 810697861 866857977 105063652 747091606 567270305 998667405 525718874 912025747 350950305 738788014 752559549 890894162 971076066 997514036 23098171 753928654 138870790 474465505 811358873 947560501 619872970 924417306 419480375 614024684 331722855 345904213 700552450 916749773 535973226 992737145 661674439 763367443 222304517 794999129 606250117 707844456 192263062 532080315 480818279 518257253 837115665 996457747 633803322 911609239 702922624 898485778 292229883 743144932 867811779 929658453 571162439 807585690 876834365 951776585 637345794 682829974 673568165 753081304 223614024 442810777 782835964 810918447 868868547 907648612 253423605 678310560 320725740 584651855 238148915 825224703 160352810 978709288 968498937 969365389 192801618 468174669 658684931 885359532 827022705 943009995 383571968 477710176 98660609 731438732 185488337 526259515 523091812 906190881 661585668 736879458 17368365 348423211 369593882 373984567 288117538 497582107 349002598 907745098 829081834 960623918 799157327 902146730 122362906 185834213 409813769 928822300 236226842 346305005 851478870 879133704 447919763 584985262 258989314 500483736 188015813 967557715 570514014 811011345 225274012 983438533 869616280 909024457 16106351 958756531 705339699 924175939 790867871 888933663 762543583 971917361 464072884 681107556 592629695 901749214 291690309 994844623 983306033 994209787 169250967 445510522 90416021 937968714 406049457 822501743 497742847 750974242 937603714 945727797 273111112 363620367 337583761 992763698 808583034 899238445 853050454 903642852 844253393 920300064 622092189 708077654 614700209 869845991 399564018 727527135 997068076 997138341 178524820 702787062 687904508 703953514 103894357 814421917 465637994 566605868 615343220 817993199 930327878 940325318 651143782 861741641 396823557 724675982 45113279 265598150 77005187 652882037 550046959 722201764 471215226 967356487 840802375 978530910 259826078 699895110 41837720 154785125 504800358 585459134 669313352 944260149 316674030 894853486 819905901 994030004 312558512 440954542 634343922 913051838 32466863 372500307 234734249 320967714 646056673 757267208 793529575 999026569 674380433 832600926 522906550 909530380 831109710 993835892 662814378 862592718 484034167 956774856 558452613 814423606 848929086 886428853 785544261 794245050 721633153 957355570 441803274 852391000 466071433 855477662 323500335 919868191 242396553 956292843 279638714 531622642 61708328 599413960 724041923 769888814 949221964 998334350 894982025 910450025 252489527 537188203 315538960 961299563 478880191 582641410 323843118 636774928 919818844 956386417 948079006 978738475 899100079 973224201 147703515 482690446 914483181 964696435 464730316 952257042 596281769 903183257 915545012 931269588 820878328 966244721 26100711 54474515 894817664 948752992 119521539 233830911 990306341 992882465 975066989 998734563 946829792 975023001 96938425 365323989 107702205 610556431 131422134 352188502 322001334 382525714 390567940 927303089 248318709 569194070 194742364 957610021 134309935 612983715 600703262 661389624 547078368 698527684 96741422 323854331 111103408 571557887 947665390 969690766 619463438 694525071 605031461 968610959 6411996 590464795 555838462 885128530 347107720 987465835 300546354 934906890 910777159 986499496 962294906 997351928 220243525 785114255 660672106 781484391 923743229 957584571 580399906 794000614 854496088 865505838 415094034 963110931 401051911 689489285 776963445 941694398 692363958 894045068 654762396 713978574 492429484 793990939 794197072 822139458 259613624 898921482 498751464 969785503 774143651 970313661 118204642 762560053 727259846 872501035 671234073 696502808 731797415 891333214 21493279 656841477 909438860 984150620 656798071 925250485 642757460 663700557 383883733 992640884 512389365 840055611 280942484 425788485 303441237 903621371 48601997 755403186 498786494 955385867 879084543 880569232 920993209 965378813 289757258 375254504 724516850 871496021 452343250 567263223 754311166 776893112 797131020 815810997 964468095 992263331 116463707 566788392 369966236 438399369 233291230 645653641 972658542 988101104 122911075 348258816 152610623 246945552 381744600 646436572 717572559 816700486 747462495 987312880 644215633 956019952 357261086 456767304 613470962 916179936 786736058 901275532 457281264 537686466 262479215 930457150 385307108 628382181 659776316 694862996 136720903 147917361 983708314 989571159 853356589 917884616 429982176 826107296 793829537 883588008 158071495 763968160 144766937 611118275 182418104 502150170 685428543 922318157 575022918 648318710 776203478 794423652 33682981 270432694 360431656 672989238 420180829 660738491 485839033 720097769 168371526 422420539 494643869 634161323 166052930 983415305 726346965 996199379 749164919 769506162 269535200 427301447 932210983 935508196 550515063 799463541 830468508 962396942 203738159 882110521 576161569 827562367 488007325 726789256 26305712 790811929 504832087 924197028 196135406 904351585 977109600 980285085 903402301 907682288 79824423 631662886 65894141 793163577 497799869 876955555 273850264 973292813 846049672 890678549 430638882 604025376 161104277 343408482 757281195 830204244 869916076 988066439 297427952 977734479 471820323 627214095 150319871 233771414 343041840 789386666 949336296 950508508 24035477 661964170 181672889 577789944 970013211 986344699 302164193 828107525 74726334 802374699 784027485 802398360 644109072 904418083 93112577 977908189 187971878 633406649 505081544 847918368 266649806 792520334 581662707 765789643 101010146 608331898 661269176 942500441 964109737 975232403 756213551 897953707 748715195 780286894 187156477 543795452 569727763 811178042 46700771 553860652 311896989 523991763 396040619 705107915 325505773 325749641 923001733 964279649 989757345 996284643 879250511 988527783 522103109 824560276 324440240 609829512 308720265 807994922 233720172 839391862 932474581 964365218 430319539 638894440 980283759 982133391 574762080 626486630 130298370 318021637 510684761 945575007 645127898 846685742 533684674 733574863 957555859 959381544 233053930 542023641 57395087 328714014 473093967 707623780 996674680 998121972 89363257 493767555 383578710 592960590 801997672 955094407 884583008 966768678 495661836 687711736 20844963 178532675 442870767 614358280 491686545 563480213 581050864 772541330 611192485 658894217 809303081 918796226 174029085 377939630 354442238 816904891 423227490 495792422 550573757 967273811 980678244 985480044 451621631 590659061 550422954 915999839 491052474 943030541 817342491 885663664 361208312 778433215 361475912 832287833 690203632 735181495 123311474 857213786 582274977 635123376 752574354 853745376 475374406 599524801 165145571 283301279 303790052 884908217 339968461 438951960 165849377 816427953 841886133 878337774 932911603 972396180 823483472 960258874 847268991 853508941 433587731 522057335 947814228 975919796 690063118 697996726 7056020 953596749 935171046 962511731 505479156 940648487 478658480 787962089 504439978 557585866 135918670 802303488 825698733 873419473 888282642 978059832 729249759 813178461 167981567 554053639 135792851 678124546 948074084 991378012 334699902 624430864 771380920 898719190 334254831 679232346 843420489 899402532 48850723 104528364 426159383 766025412 69502265 122403871 460849578 687607381 673498281 808258269 394269757 558039695 571212933 794825838 520469695 923218139 642136961 895126494 14100353 297267718 587778397 785652855 112016811 942437247 672294624 967839724 73956580 673947820 770097152 921983236 896182246 934222975 790535434 945362466 696994804 933004226 951830913 973284638 116141409 285309908 478486107 526204746 940155130 959443977 734715628 974287737 761337672 962045688 205994160 746255918 560248605 948137635 954218515 997926720 284820032 646457449 219525975 991673381 429432225 776862984 386988796 782861789 565145299 986714875 743771070 866383665 987038127 994863070 969129011 985884476 794153123 815877453 699966031 941114393 193278349 589182294 242415747 615135524 587261110 979798482 94468199 771275281 306374109 873390418 516751835 787393918 148989533 199583838 355202474 416957124 831360651 901646732 67528437 553475231 846458749 897103907 121079875 281762361 619530875 756572324 816832479 964346057 951052514 965176706 711745472 797234704 768131313 994761106 189570060 379937310 170378832 269518868 290065008 740051262 429267955 827734575 260615375 299883173 37531020 487438206 863316164 984626870 97611925 421612665 524032033 717277471 847806565 867548911 665309670 962271827 763847726 948856458 955726859 969419471 955187596 965043636 63974596 993879813 281331519 757717413 825399674 936630492 716754490 999419116 373571397 992482501 484092340 842208477 960001042 999620854 400957876 471999193 751919441 964622524 91153733 595820008 698601212 969212180 927242405 957081267 211067187 812689142 587119400 595157962 704773788 847327134 291216158 377272896 71244923 831785680 530098957 603089917 425425027 949328924 295164983 775320243 541218125 754754650 219651754 886326913 274253355 487150770 316039025 933263351 592217073 714197334 817068310 942260046 262335186 444726881 81183116 615634730 533715411 803197581 305581315 498168475 937040803 966384156 339836162 514796612 662347004 886574640 279780746 600184311 831430243 959625453 433187785 537453483 918322461 963083152 504888631 989438958 374664528 445619510 373141767 730765035 633867237 889584131 296550144 377012450 361182329 446447850 975831724 999021251 829063731 877018817 106126475 330783052 396783334 815427625 421330583 474720024 954273194 984220446 688360904 803568529 400882530 521761573 608962360 668888521 663890632 920400179 207765876 797167337 826215106 919211011 955620104 982281593 83117783 629853700 954230687 997934505 474229956 738558264 881590433 974744233 615996164 795891785 738152871 871935144 841220461 989689372 529370453 758754333 478097379 857632558 392767468 705147390 338473538 861316006 876191940 894030600 425198054 841498102 408665767 663036155 776455490 977187496 942118507 975782935 798391511 868411345 438124930 500660291 763172737 814979676 319035 393043312 682540883 830156089 322829631 983886778 554240948 887738572 459428652 946365734 335106490 548778882 341574032 578560368 862410102 990416330 644768783 951585758 99440155 341917107 525819014 797706841 597008689 804980083 866879652 929502055 648507181 755752845 523064354 987342290 152579139 246439577 161013516 212787528 772415952 987058658 370017317 713960971 793176034 880192495 525940112 852721310 975608595 987843892 998644055 998902634 252000338 329798233 851815953 946340017 214224909 342689119 781922655 789405669 304796719 534234771 148343231 870238747 919591431 938765131 278881185 500552922 652453291 981854088 460950428 719205765 738847988 786840926 198558145 300156772 963457029 986587945 896825925 946125717 825398007 872814341 351079068 991344026 961804572 963410476 671344474 959673977 362097604 902743251 911154556 923082804 632380782 773000614 799559869 926702595 386801171 790957393 919844674 967434797 617032370 712263668 313726487 738392777 716063884 869306436 290655499 333195446 750171442 774912868 703438200 893970002 619300509 984289546 623329476 667087012 8463803 676498108 245881461 248227104 983969392 994702519 322675499 697187134 886837629 910560406 342977641 769140835 333229951 565545632 838099288 920649450 701867440 937353521 61872170 327468649 856190915 975458927 915978057 964661913 773934480 876974879 441202477 952254220 628198168 965996378 706138238 866967073 985958370 997090606 485603783 701931974 395618473 761022057 335404000 936224473 13514132 759923596 146379711 393114959 87742815 281767082 817762219 923513399 141566504 695741667 894918658 942248036 666082747 693460622 642818711 796923567 826197790 949442724 705000394 709118479 996595561 999395771 376110574 534794838 553814376 918183305 938896788 940705868 449949556 534539763 833441666 970868823 844132237 986590441 762224175 994168485 809734438 985740593 830174166 956707043 225907445 897240004 655530520 821409939 586934041 776519265 37495760 912424795 598926655 677232540 28027618 110485311 859070329 917497354 301886738 305373976 382088008 685849024 32699754 770500112 548534687 600459073 825716057 873319140 240798001 558296503 157391520 453994436 400898239 820991295 916324324 995680561 867608565 902333639 515151716 944392517 851187564 908708462 816195821 964425257 326006080 776951530 434468951 640766751 955498124 988646222 632067187 984823960 653186849 862070446 766039913 844140286 23285780 582606072 703515685 903665860 870979497 978581963 119238529 354736389 58045167 242802231 557011591 978296844 752932632 963909423 257497891 746747013 187192471 522512893 631624481 719428163 104368519 432602352 715322050 988948967 408441608 546529988 909700534 961263739 254501957 755931030 320414297 327358342 933384412 983406506 65813455 456733055 397266765 953792444 262479082 275391882 347831549 387832413 351657254 894406981 928265603 950209917 243026436 607038802 919635429 959296892 815190288 855836707 373144474 499706880 808547951 836694267 904400595 921917312 358660730 740698527 266052698 934869539 150646322 510327890 104325563 217698493 477158588 518249070 397049794 642727364 965778678 993221927 282591060 427417101 172168391 961459337 146416287 913996501 192641909 616576634 796663889 803710658 707859036 789705752 805577801 806058883 726006856 942903982 574926419 695755528 538458214 975903614 968622852 986101923 607151433 808609312 727323025 872340609 979318018 994483309 394031868 652210266 738051352 987704775 49766274 848281686 999357657 999886472 930163575 932074179 161965844 243861117 252103907 617976875 678025293 733480417 504774748 581847287 409880442 730289255 891626076 907248193 214096365 887405842 584892209 990105565 854995048 984432331 668778753 794760210 498891124 533091616 25651685 199937922 147413894 561596504 743694137 831739594 669697578 757118082 612453273 684154551 897671464 989988515 24823960 196179391 385965086 824083370 112113335 156894304 167047161 419974097 939370822 969684251 490157218 637422792 742848994 859448549 476285800 958641422 247016760 276116957 784109945 870480226 788462377 895286730 135310821 970725079 707148707 884327650 378262090 676561339 487444534 591531900 612302147 862459870 201841703 293140820 35329253 236073345 368525388 441499293 550574608 743357593 655930404 962579368 70661475 221503125 491181779 643872015 162374975 421694646 984832732 995560505 67622368 485978084 45765139 386066600 390015365 970429261 866622126 964086169 539140875 991140314 197071510 218306869 506733425 565195955 598228712 641636578 386123654 991996065 164291504 309055811 507600221 993638123 392033843 968255757 449530876 472208982 94747098 420402134 553014828 646502083 798165856 976209849 870598865 995460141 314787339 503066908 132008554 848248293 302995659 968200734 313019025 820912622 920045016 956223191 300341018 950842893 519014439 684265876 569114906 950534577 510816981 583489410 249562012 719725518 520819938 706666843 709288244 820984755 961326157 992510575 378023193 614999104 226318911 830996624 167580228 758238215 830979088 955479425 459208010 910378249 289064552 615911311 964098298 964310876 803330386 828322174 880818093 987990954 413727960 591694041 318398293 581823701 429775158 731484744 812358001 917318085 592993997 606964580 482356487 560749997 178331173 914648942 461214221 771233787 393368019 941736365 209574232 995204183 449514404 868095453 148763880 802848848 270701304 849182706 436011709 644876075 675679540 742205934 336102470 614869211 800685725 848398478 628814693 773874875 79974608 922549838 914582614 949076608 346776968 967234767 301634488 862710282 207881346 232350106 585747050 877691362 556216616 748536529 115919924 624272337 562798510 952362277 23641844 656755728 198837294 332126969 579686894 773054567 249402853 570802795 31120563 56643618 821066745 826543093 464988444 622881573 830347827 952403667 979811614 990886201 784906887 815251096 225881462 750591811 737534943 820831780 17659133 149840594 792897038 898317122 207941717 262866932 705864941 900825594 181370168 416568535 113617723 124079186 373760625 930676437 68954038 298954934 5539059 864140708 125621619 484199091 3023528 702553481 796521496 936585162 187893961 769282237 86137131 811924227 404474989 938520578 611290116 822325242 105396833 896082973 827141782 858295934 863379306 995968814 809867717 951823884 588746314 689887131 79934529 819159105 931074366 933040727 52911401 951455748 987446986 995603828 452334594 989238755 92063735 280846996 437389511 920980493 188674724 530274033 698655756 794322989 759666662 791477555 694677915 829436181 188508985 270481664 483222200 904762463 981664617 997601608 629435278 783147685 956517448 990803559 264555764 364731487 526173565 671650829 140368447 499411132 362033673 437712347 287127549 729745981 242375468 750199929 106812775 358532188 752669502 830460359 600146856 669141320 787554970 865722143 31770751 456116991 6839425 237262205 951050657 987407696 625753442 735784399 589117178 734468610 140556797 565116349 865862583 977959284 106040734 472907543 495003127 609549346 98157370 437893758 417148812 756559663 849653672 903985605 278600564 299453575 240042216 998461733 441709554 604706195 449603921 519255485 266865771 637917189 683662192 875969314 404481432 457022918 571828522 682435832 364354453 882187899 69040413 744168973 697247678 699395464 600089116 652702192 822766593 950731941 117963820 549004566 405525730 961362216 206517522 731101456 347234993 397634192 498167523 502506459 361836833 812588381 640283662 659233685 651281029 822303091 619004336 642998355 932471365 958643002 855160499 942837850 737720340 980817566 439743051 588969218 780032791 913749144 682671024 883141296 592259201 778517821 623137546 951684127 581457424 990838066 435762647 843052071 887688018 968782120 814063137 944178975 22094971 700335176 741117763 838316843 213704448 503752731 730417731 778850343 895230658 944359194 147909446 319315324 244340933 859203853 567283569 881739598 311548945 762792880 389991180 594654887 973632128 976550087 850608165 852858034 448810036 902704892 77338875 786138638 247906100 918400753 443142644 618917204 91416902 631664633 927598132 938555403 369980956 413950521 852104966 886352689 398164512 978720829 387458864 906907298 451560447 879638654 252888594 625078921 654618764 926927687 534995909 756189265 902094615 985172020 124071814 345895094 974132395 976608773 445573927 715600479 345351744 747505920 944719455 971581337 57370671 716015290 749208683 926662356 56391845 930215280 155835131 403715483 268444258 895103648 89802618 688284611 539813359 627110254 317988198 890982721 316808211 753422769 922978081 941270146 20146095 790831067 437154861 688486305 902499450 912269319 208826558 418307446 961001395 973215784 167393919 187241275 824753542 922660582 498342652 580217425 311589099 378300724 899564248 968901889 48154172 992367014 776181264 974354877 68901383 782598285 236338155 518103296 778069157 922374688 242065541 978860074 971202229 998594480 274674000 550913255 595798187 772728901 27149527 666225475 865434113 965925853 923637306 975347764 589062128 691886170 565815696 735520065 386199488 574417037 201817928 287863202 737365466 831613992 389359104 732422998 238269258 261405136 787563813 825234366 974261815 987741521 892816518 950092941 290064805 556816022 972519774 984307835 7700341 411077357 48384897 963906239 838914637 916487799 948668411 985027389 433915928 519860365 320405397 584224390 312631606 653938395 965338059 985325616 736607861 801657666 195808358 417180989 956843000 998746471 159079078 907917468 612369886 794569995 52428471 447814401 884882467 921625902 191820686 681284281 467211725 751475934 478578663 497658523 232802690 882214961 215340203 661240639 971742143 977382128 298436044 549949406 703209431 776763593 859522265 910807377 180588438 611924625 584297567 993333442 775747879 820191402 61930889 310468278 950218588 954787960 275361580 731668356 195920636 743729208 140328691 358373399 926769077 981898474 89646400 587052532 176691890 230416890 702896994 950947997 950312432 978633694 203713977 222315973 981077239 989020962 909055919 958892431 982387684 993040562 530013903 688546846 184731259 841110661 512262037 617950339 996920003 997541692 837533727 981534675 836072490 864126199 517500729 734005916 418118238 537491024 413300477 464889170 714606454 842344262 867162142 990427082 56806886 268114985 540327990 880510432 288885071 927662221 740367042 779578150 467868713 888540305 817722444 848640956 533422546 715400393 832250743 889212999 800917639 969711052 246641691 396326263 924890054 987593926 890198405 953175170 23691666 373446742 203733284 956527033 924986683 964384398 30715866 197557774 567611022 729976303 987289259 993041785 832719051 910090995 591910790 677899513 54930782 437970085 341500541 789938504 756003691 900006867 193168926 291932117 594939225 974701692 581182269 846632871 296622366 330679861 739512419 870568512 383826669 856546518 934385162 964508311 751165308 810976111 620485431 945367465 39693158 848216635 655484901 851866638 231609420 976309768 984066995 992818091 415295778 896285769 475910180 645435632 171458107 275034428 855715490 984678766 309187992 834655208 781086696 889372497 876570983 980708623 502075530 885717607 117280872 968548734 790738981 962439347 898379303 928641514 31425380 222689122 483442239 499521981 461308196 909029392 540791434 650714909 981938548 993866870 705472994 720105724 970310166 977112820 992509313 995040296 142494527 676444177 542546667 958891084 531019623 951467828 754661133 771571875 716590585 992725697 458321188 463494777 369229841 788825354 636584286 984854002 389168893 736981322 85323496 199145276 654727915 897666774 71735090 332668119 775442635 904437755 277599644 883890513 767502306 954868259 527641991 933587361 621092383 666531900 497049241 758196827 243861408 827458195 570246167 985758864 365820335 962507624 123510100 817468766 982986147 983936651 703954505 883331104 689689999 751286412 706296190 915274312 725077836 754659649 725799114 967068186 352508129 669944926 182662194 454715507 288266155 336407691 47109872 121501161 580238455 943470418 49192499 59801039 740363607 796618009 462588728 981906055 821113811 894254558 133936043 997219999 845924527 950776190 152195830 879399430 742111810 902264411 734308376 863303786 50514776 499735928 698546414 955847213 331526243 513296790 886491353 902519037 894427815 958396223 320731382 343604705 761825687 957386616 674704255 911738226 255133450 508473223 690868101 893314721 311948020 343897825 277306150 891328063 591757499 681473759 590036240 918681412 788851075 914783326 687288229 838895456 321837842 647272204 712982130 895345505 509302549 869822819 313009672 465421303 720631576 756998430 237819985 411984798 309608396 331134078 75106563 737053108 248906213 284864003 420230373 896324702 114410681 336126798 955797839 963787484 702201455 818051723 925840635 951545192 990659896 992541207 89552389 328383105 136181588 750983658 605562039 619773345 133949057 298352783 900216913 980874877 556788112 587369328 148791391 657555436 537989005 876981663 141551035 332196399 2734748 993071800 911189398 991595837 217989336 480717783 383958849 949091054 648922385 703086251 445810932 717926984 494956391 698785123 811708208 866157407 725192666 916958138 857127691 987902714 697786304 843946196 755158402 925675719 667365257 693366087 844053226 970357937 280093813 511038314 229850339 405656574 453268253 710553636 333432102 835457885 705459502 772257525 542832980 744023034 426929483 803793515 662923644 831384259 178742002 925967960 727113784 741372270 262642910 933948661 879256352 913840806 591163012 994813081 154599771 448311458 489705630 661190092 451333488 603693158 636004827 711560854 784037574 833252041 45592792 415336780 474576615 648913256 791014292 835597020 902770298 952471412 488462458 533501721 573239687 988622975 2995738 634202527 802136366 898990472 886572822 918415757 453828867 510849623 887598800 893096181 590056720 714365315 109859370 974348647 496225594 566102446 893196153 916685042 150948357 220175874 236255777 798422910 539635388 601069766 78722678 501155858 687561224 936594329 56977037 817632171 218455171 949382802 986194673 990971418 182010151 225806945 742662295 880064150 884740691 926792313 865078764 944952642 444627663 541466372 504011126 532859243 143961399 463822434 459115698 496224160 476134445 491820729 125665492 539409188 217147271 329248421 741203867 803217303 103537349 415429639 929949185 933945843 902552173 948595211 509202356 589908760 564372117 723520433 757264066 894659447 299813118 441678677 755015511 997920280 33556626 842820950 241673233 904601857 628753744 832941266 741749646 836331734 864839841 941732090 373708345 645552549 677536091 882726389 793426582 829504402 587432486 926486816 282159409 626273699 488667762 736346354 613190019 944680587 836431023 887939985 82686683 518090096 371430481 734791121 365330793 971490872 770934722 961129953 565541827 697295426 238817410 373187085 192485496 502861864 457435421 825551200 96706183 698906291 277874983 909499158 511777571 625202807 601005234 845441429 558647204 831937111 448239180 745866165 994460618 996898602 386674055 410594198 296387429 304394929 467175760 553770804 73637822 318105330 849018603 917923759 222180856 850482638 810013893 953299072 501916558 961762532 513770411 884381838 700613908 825229566 464927162 553331276 996458422 999521614 600976509 731624929 181797171 905362532 125020638 943319846 189344234 562807913 26981191 729937381 168932569 799325415 922069005 929122529 176464406 889836452 146292453 397474347 883430810 887556014 858731829 905194396 824878309 969231122 654106358 776608419 436023569 626279058 995764158 999551483 865951689 872892617 898002474 923022078 107404573 590814825 782823750 950574897 309214669 483363235 998702345 999548901 397478232 538277617 512181622 573273774 858866401 935291577 959129403 959240572 607159273 953004404 247354922 250489198 334352728 631201428 833625764 866975773 693658890 708865453 253526214 256389269 237943508 766674731 280862347 669731198 908427914 943164610 537404297 625012753 81752949 843733861 881559329 906014482 37327526 667748331 592891463 624666048 145214917 528573809 325865646 522676449 36338676 896582139 712346084 939063132 494119753 685234074 48150376 562773456 787255972 953148625 876522094 995534556 383980396 549020427 216875474 577134354 843079978 863015175 791325296 917775225 248664158 859902185 89978214 960394279 167801498 532182040 473355261 779472137 747080032 934764781 192535479 938453252 224175698 901861231 104552369 802512106 739196751 971433649 991094591 992994178 760915188 929954239 775499893 798602404 111004979 232456115 19333721 155847174 817969037 967121870 699502858 918990397 529280323 998276752 932709733 956274356 377605751 397552916 953967124 982682877 523298961 987341662 234602010 845385250 191679350 849878819 885472374 987258209 58222972 940742092 643978741 976895780 11738320 269910523 762779164 841952428 990009052 994310708 218461598 351934016 633968554 916630781 622992854 807209607 506013468 730158007 534131471 614769802 624459993 723917771 653981241 726173149 310001936 558986151 69082983 411570635 172624157 519871091 884580843 885204137 577646997 957763692 401065236 680767526 899086565 970530161 525274385 840514711 484410970 829392571 117543885 254636094 57903345 886426541 204605877 660580235 365632489 643888352 728713472 901350651 118153708 365015080 875959119 932065764 998677873 999485055 634004482 870153930 701129523 776259157 161265534 768263580 681228226 801520071 776566846 957095389 811098572 849018752 926867171 941498590 555574901 974031230 149837457 759441778 162562629 902685906 278019411 383240252 437587242 538248880 460451183 593978819 444140863 828085464 278217919 980352594 355762369 375310705 865095048 998890815 139716790 457525074 868879434 896773415 782934043 899045966 624604114 962988547 466221517 880059962 162135244 207356556 717375308 880577442 699648296 897545382 283227301 654153845 658638818 873878355 596925452 983831242 874605705 938282920 867343723 923550508 210883064 738370115 153119914 810800896 311079371 641724092 955526247 965581413 826493682 839828972 68376466 137969531 426203081 921368348 531324215 619263033 915588923 951148496 387385066 394708588 972579144 982117998 330806667 906465765 500499352 524666101 597209508 777376867 646636091 935442714 957591486 991057372 617920773 636928763 846606864 937804969 393636688 870057491 306373186 590321802 182394768 915726210 464387514 691746581 814660873 914518982 450163469 462213206 88569553 274448924 250368452 320959170 200264461 329473444 809185817 898746700 317799273 859448579 462111393 769598010 95797377 496115234 549583725 869485798 900516893 964629635 867142969 978572737 655803816 920089704 607152241 675018622 526910367 528044219 944233558 974648161 833739760 843257452 503904040 732636600 356555280 702005601 132931835 143345766 731263336 799901564 197309966 330870254 782901910 960231299 385942816 864309185 424778315 643486251 107106748 560456369 65926567 943511634 976806917 977905785 938028111 988375504 601500007 933155528 535668848 754588464 928511400 960100866 149494408 164345693 875065474 917346578 104618662 928342711 282720741 780558980 634310608 869084564 895217964 957291870 14301982 458186340 194349535 694049292 293362877 836817578 713533869 926913325 797607005 935826242 542159799 948377023 925890786 956879843 865970415 901565991 918281562 949066398 173023166 673391623 544780633 644956656 594994365 639737737 418328182 935752590 560044891 884321348 576989207 616142310 415897960 804653529 683686465 918024657 114879740 668554417 696976429 778533350 393892089 897014970 84238732 857983254 261320704 586020670 238816132 344515133 897898046 951010429 916991481 959975333 729677525 930886732 763652161 972073676 707645014 955305829 847657248 877974283 863032710 953321123 403520076 866957051 642242557 773789516 216718213 514111732 905895582 935193403 464055961 928177338 79474111 831190208 22796076 721314281 392990154 804221778 140141454 255268366 623932749 844242289 691895858 974340252 121767357 284558072 92746400 256935858 679494839 913589621 890174837 991083910 452393095 633436786 636968073 675929852 284625565 452976053 349317917 839339976 539979665 649073453 821622012 903611363 426636716 856130962 433862430 846059412 161057619 871703863 785361359 838007770 631000874 793351434 379436797 770035725 11938219 627881262 520602393 740975645 346788351 674651998 863509482 866932948 114986884 942129848 918203849 980001374 413158697 782244977 451824406 499384169 702348813 994529798 702210226 776966156 118626178 890149519 660078125 701408564 329881882 380288648 737093278 988734058 994159441 997821355 580800867 684306636 980964771 991042927 901337310 991143660 302042174 465635999 168417422 996833352 41713340 467803328 340932687 343740343 106731765 908792780 791106674 989295595 14802806 568651741 380582562 902845397 888348728 983731457 30772779 41790450 436974816 759123327 869953412 955606019 714773653 804303792 267341614 542551242 146136878 309954018 729803521 911787094 593828767 613006308 14989638 900550521 329492066 364467922 13558087 70246482 733957046 983211844 545357266 804143734 43559931 571198102 742689872 847387124 914728307 994665257 437337067 516632076 875781305 971329984 563654179 676338530 767904322 923253251 653824876 875623068 486407046 637094241 892733281 926272865 23289388 396058611 71119400 733450613 198044451 995135859 45284908 102362388 549313105 779790724 839651095 940509977 227970698 858370255 232903523 671615335 50536644 413147299 665275932 834934464 22279231 847047905 472701091 699935568 526315323 746058341 521102379 746690934 144469697 670596435 388110178 468856822 391502538 917109398 479161212 807132741 626994225 936578067 621428126 734325063 773841802 793017502 546699096 562548124 366239722 438484159 749875277 931374326 428537697 924194900 611843609 811656702 553555797 731416148 445237869 915890934 551143837 793550293 67626480 311449101 821512825 945347892 84231019 820106693 480394742 867171895 990086491 996516302 293024638 774408199 422719426 859751334 987680709 993526116 851573883 890440805 618413318 862759386 305586201 356142374 532305862 881047946 682074937 925067431 941702456 942080459 303876448 657813173 136079588 978876401 874769869 923876082 217646941 553190319 625096491 905739157 715344050 935014218 300705187 828657997 857686321 870084875 60118031 96914696 138897982 402355305 575953190 711526044 253059088 508690939 287990518 320374429 221893539 294052154 206470113 539374970 399924155 925011117 986910628 990665101 537008248 850911791 720897876 783639449 306639055 927844232 668461842 916235675 134062104 506172583 761737184 899996862 771893607 855852802 279864632 456721745 776094520 956081373 478375925 486968448 960043440 984259202 88058579 115654003 30872017 183715921 212635652 716080985 69769326 524915030 924098457 958750155 348052622 881789687 490548417 684879239 802077033 806988155 267637153 501571659 797046914 883872475 156976695 664608289 274147987 454359040 798205206 866297438 42610824 391885417 846735658 904555620 299564782 940910980 553121597 696298851 203526315 225870189 957066901 960555411 603207727 919931920 52717953 249864217 457645839 514174463 821105447 945021795 360202472 868113503 96405436 432700613 556899846 973805387 603839152 757426912 220200903 729920739 374462775 780373519 246180663 942980357 543774930 877724957 528523864 897947001 127714847 162126186 924660640 949574537 555288576 673484428 242806670 988569300 588608579 724589049 182276246 430301807 244018705 262122153 65027225 227047520 76207906 258883150 516617611 716427749 631516435 994212377 950802316 991164816 390711503 765717688 206218598 988015585 397924 380593983 983611735 997131220 712363811 904992612 939116956 971302805 357119401 966134865 617903871 925857184 898703224 898940403 522733031 946710717 613748386 967707555 692345213 714781134 823872635 824486510 278028623 725754114 548114162 781171741 961673885 979934012 989987234 998140264 591593742 916596837 500434643 661514415 560286565 976300672 821126762 828354589 134048193 535161716 70201222 453352221 766145367 937418073 485959987 631735146 429733107 455086741 893692902 997016965 212462441 376081040 396999172 736288392 569804821 893792109 275674251 823563060 529569030 934208219 684232172 718541034 698417739 904325183 639170365 772644230 774272847 872269300 468019423 514394196 565119601 586686784 909564999 989921651 156181150 658344249 801803076 948290690 402296047 660322475 84307100 162492415 455308767 674576029 399881574 504069506 791665129 945958231 967097102 967784302 979885076 983314335 776591872 815805416 120746965 646221274 332589120 660978547 878981504 941055623 784598413 833217848 835950826 898362635 865526544 983654683 667368970 902489403 35201164 776041020 137886903 793530304 97584105 324214861 134780775 190971496 181625916 305123865 719328391 826995286 68970318 76009406 794238596 886370666 837273272 942191111 97852875 962730243 500359435 771911483 352437576 964541170 215156232 479954033 398845962 542085990 426650283 770637641 774414300 877057916 281219815 708553086 840141349 957052646 149730747 203467936 970097566 972123008 440531836 872833883 145936288 492518729 331890023 458882108 746967020 916211598 215184173 990260296 992249095 994141049 354405369 607540182 191067909 232230043 53346541 781578391 665626799 939164033 362989934 537932052 516580685 899309263 483367175 911529789 929422553 996214318 698323398 913252978 817303931 850493583 511657848 966559940 11885219 826739482 412708625 834503153 530524283 579051057 581120868 709981607 179487824 569448501 562271848 932512604 374095879 530488451 711440321 901410283 950254769 997571194 715912598 949217939 110872203 996789862 263183282 586705850 322961295 476765244 647911723 699510805 743224923 746394062 4072385 546360151 964017144 991830048 65582547 216346595 721113513 778814899 986251859 987948092 643631609 772643593 495860301 615538528 417048147 996371578 144202451 372258140 862085009 924187469 828644968 928456142 660220341 933279249 522119896 750918403 535965078 994023055 472640668 943363434 435554972 586788748 626307844 742212836 301998850 620467519 90659333 315689917 34599355 437487477 238610634 375436793 58228706 490248965 898984139 915498895 26367210 716941304 195853398 463172956 883696232 942305402 836933665 980929442 139847607 651934822 1496738 547490669 673326216 876563622 468515624 571903577 898482320 923391152 827430529 974519523 945341941 950890828 479763483 622378025 127519224 792609800 762832721 851562418 778137191 878269005 710015972 973751506 180895900 983822392 889058637 901691160 252951504 701930135 376070369 821846704 864493032 992981011 120610207 467899373 876941007 986722008 919314471 984311171 643172558 993704584 19131755 766062078 55204565 875942348 401487130 644171118 376174483 621838172 909313239 980496490 287802072 664990510 596926251 654130930 473750557 982776963 848098115 882945379 223732759 396024960 496858087 600088308 815537202 947485238 898159050 947904945 814067636 995112346 111447333 798430704 113281367 606684220 995085685 999519198 724437781 830464684 819573559 909144071 422066078 862395940 677277139 841350525 76918632 168606882 540188076 606519319 967409659 989010206 584705948 858603770 711065735 870264471 360280226 872149221 272193865 403336870 207094604 666699837 370288413 673958606 636352450 720133420 624674923 629435395 204198673 359326456 517102547 595362259 965034517 996140098 51075928 752375778 487362801 999272896 788565977 853961317 450160022 666139827 502734490 975067264 747189283 916347708 962146353 963073840 961458678 968559042 564167548 693811134 481400973 552924411 874967769 892759074 177905399 869049994 138717487 523586384 433337857 917992509 571490600 580700012 260559084 824990980 194177187 774160275 503336979 943766290 866823257 976801479 446082184 601176173 91026009 888643621 648924389 964445577 773724873 938166460 722406988 747653905 908124306 917133318 149711467 573141258 227238894 668777080 754293073 891221878 29266147 553565497 768137593 916989371 933789026 938088219 912034406 951519695 441756354 780530763 461990922 608876331 795307306 839912294 354329756 620913415 270485505 442981791 230484110 296048824 295646258 733647956 351689154 793979898 531523095 653248815 530802012 884824370 997812536 998915545 103640336 997034981 504651720 842042150 577822494 921057821 545781889 622048419 194006756 573081337 89399220 832105033 898701220 959276119 14716388 793151187 604685264 993983446 362883172 757475345 647273192 744056118 270775277 597359972 862765678 937059602 440408359 976522693 540149914 821428743 457115737 570641245 622163113 717881377 326487489 919159496 622640583 853218752 845894715 880168536 261176243 763982105 674382249 773291596 886593869 939980083 301470337 500166554 205617504 627373475 64276144 151971883 505754008 918278332 811664034 996592280 507518678 639060883 200250507 773302248 680374835 695176067 467385391 792053224 677059865 734152925 153840664 159116287 476184393 990223168 243745756 563252738 451719746 801245090 905668055 976774652 836839358 885091356 612169162 927203096 685464415 830306356 304820873 716748794 359808306 713553791 722223009 811768968 857676052 968203491 878208670 882814608 522301282 988313236 126370738 521296229 56625461 309223984 288993175 525506057 384460562 543450098 16627474 667688005 907890347 986425536 619679723 659486911 464880763 581935609 764296368 765053952 278954255 593731206 497692631 608170282 361453219 714619592 535135239 940516012 446961789 997136599 972380657 994404798 266624489 758716412 904213438 976761433 818021423 991735048 505398491 755475068 519099770 621241094 494684908 949852310 230612325 864877508 330723246 847397076 670104220 797825565 118576155 776446072 212528488 302213347 381843095 765569122 57196480 490166230 895292836 971698950 552348663 976315059 139281534 716897848 802632153 930812088 925242724 963564110 943030210 992561430 647552929 741692774 366803616 599953927 115814954 302983878 975823633 982999976 544765716 554883446 629295230 698393548 193778438 648933705 203670219 559693419 822674437 840477001 613002473 744756640 27413130 525306572 640458548 967285815 327699399 776353775 573499432 660642392 524517453 804280632 849624535 945902387 305487799 876147894 838308879 872065041 254984410 802827857 326690267 378645404 746641843 785787664 708603870 807532570 192832108 220730230 91871869 604938238 964904418 989751366 51549727 305042563 545120447 716029802 446972887 912230992 127194249 956677890 815696710 972557738 171281465 617607361 169570166 796890232 297890230 728090616 450710178 709321977 886062219 966770857 264195301 994655293 697454825 813066325 276177660 381589274 520955599 676788813 240580652 585720437 298074272 491595501 390729519 511299921 821028317 985490258 108871736 195467372 495649027 913241279 442244380 658206999 294907 227700870 276753417 467193344 982800147 996018111 576464353 802539144 355201251 974136203 533013536 555985876 143702956 673182160 481779294 902441621 297667272 863164846 628896925 713267385 970153672 990610539 669966054 671181374 448579706 867205389 740443060 761917323 805145175 877107797 386255425 756443636 98624872 644696701 30009986 699070269 844935459 901199889 247193821 502148408 41883167 615776123 48909884 117179365 225272526 755317249 403395313 527804265 741105988 833201470 313258575 591870973 391325729 938689474 144930675 583532833 197449097 368391283 240589790 487512948 758677258 944067055 332286297 616168088 189025683 355710713 412322099 678693826 264064194 609548931 902609755 914873219 589773010 687948082 564785280 695784753 833301011 935839411 897300044 931558137 533020030 792797717 610322843 851504929 952573496 984365287 455800979 572261513 929229652 976127084 108675027 390089187 96363861 773836205 798628116 960571719 356170084 566698835 353134443 518308855 787971482 936211736 528581991 582617513 773210050 993707351 773279207 963285690 342395507 733347348 173877547 728940733 986002968 994930931 937562891 965718267 255124247 489310921 445650809 973432269 522772178 799150498 389597831 703988886 168746598 818956574 906873596 923417490 390900663 611020401 578541017 975108850 738255230 790125823 703439784 954959966 521311234 618379640 619422014 836822932 601338666 907424055 599309828 713738236 965558882 988787898 443512019 850020139 781634444 878793011 183790843 412333464 829400502 831969277 728660309 922042370 192266313 658867410 127794482 491500229 499962602 981904230 174096777 293263499 671138806 745996296 823852768 887354432 572460466 594496238 661878447 927383243 665656397 864847839 668567258 700121671 752602355 960378507 233444585 787206801 516169383 957245398 845721911 963739832 688793769 958092531 437682251 717521132 288271467 540338876 512364769 597397113 157195586 756434710 799157942 876355649 525100574 694847111 491555307 546668088 297493896 316701882 81896824 444082239 536735876 669699955 608909186 705203011 921917537 983767889 3183991 611305576 721085938 913006830 815970472 981528862 683432621 777865283 281386323 290397167 571482614 947105403 760814311 937646862 971926444 980315796 609280131 886895052 49602385 67021974 332722082 955734916 422142243 447454094 531089399 785794684 146884079 152171192 295052776 428630006 820259856 999416691 194316954 292303805 327797189 631909975 193857513 311562050 416365818 753499201 71380970 254558384 786335038 851231478 433011504 780622901 657626940 736242424 490408160 688678583 28017826 840957057 94630032 489947005 434879242 867079162 845203163 973214063 925463092 951951553 728013201 872973739 581644903 874363506 67372793 876287636 624906469 986808437 27219497 287483895 977600103 989970172 230789536 331424985 39531689 874619721 653633939 738605740 479718507 623176850 943911629 984745800 76370727 348219965 43485264 914518369 340565757 812825005 900249536 931755294 250607643 352181227 144070164 513937678 902815625 972925682 712124512 739680006 790136938 791354552 342525609 367153526 575575014 754897590 206350171 291008566 442499948 858514280 780889997 811027656 938584881 947433071 255922934 817922542 731136076 910270194 416375998 702973484 548425939 554941317 251905753 826752318 180131316 555966211 142370511 855084502 829086252 992437161 705172465 840211295 189971658 403182504 790079292 826456367 49723895 447525956 414369559 470351476 769693832 803382799 754847874 787278927 822555744 982631894 974087089 987934482 721122418 782199281 79587246 569695225 370690746 519520288 790858041 952672551 474592262 692142749 3065848 378978823 123708191 516595708 641834724 889867790 671503500 900614342 731460472 824187051 407273283 908596363 111200135 568394873 56234041 322064715 347229002 679565588 965580541 989006783 235543238 767387642 844718701 997205508 766020415 822998606 197085893 248240025 522192869 875511606 12157630 506807744 556747909 851711746 710538886 939604419 38121229 320650830 293435748 737521158 904520252 915421598 142522902 915658373 541064830 826115909 336272438 910531112 213752108 439904053 872090058 934961175 973032299 996638491 802685100 947485201 808609063 824253269 203890580 496018344 852739590 894656699 766841421 821687905 92232024 558954762 104704651 851793681 815269755 988956568 650798082 973006462 232663012 288061627 143877418 429008173 771746819 850126228 886070010 914580516 109152976 515019065 89660093 455066206 377355526 728774550 143854899 309630016 939380426 978764226 43902481 730660363 466028798 676351723 848215385 961704081 179365577 593941379 965951436 976414281 327227381 873124156 133887750 504914223 38710725 378985930 382002679 525620600 183958371 519343054 784325673 849049316 198912594 595248635 199472275 444581412 529496776 747462333 416959646 421994225 84145181 332670431 365049710 432198953 510357636 941209227 404636582 984849903 695199988 748662616 907716760 932533490 248744238 537324298 23246577 772636257 380228848 890288974 541026508 800960651 2771785 871374500 782766468 922629424 630759734 699428648 983477202 996019755 908848187 978478137 619305329 992805090 51693434 691963691 376068188 581085893 380917792 844416946 808888985 822096992 621863531 980460857 71118661 818456698 759875733 764356388 879533415 969060705 419656584 676893520 626169969 719284598 654075308 877434459 258713811 836177684 836778736 987772451 109856477 993722506 873784109 903432223 278005604 450815709 117259345 951230353 735031219 903608642 459884728 795053155 549673344 837116991 952983588 970657788 461307150 745409208 245598255 806290702 908422133 989026291 348552783 915587029 332202040 724595545 436924489 457437776 820393916 874980411 327833401 635151432 391204954 832251228 24698913 602335860 828807849 876226332 57186109 662846336 8277288 17020981 123983539 808813741 96078176 987881785 696946670 810737460 831959116 898825344 649012706 862780110 214419309 475723153 528363513 778576646 881241141 892472419 443264224 596108458 603720151 618066279 744000712 780125819 534848860 752948507 133406336 967717149 109782945 870338385 669251342 758080944 605064631 639773720 534083613 929363877 613261686 909973871 860676650 950406973 139247617 392554452 569468732 764721029 634167777 971291857 449724610 788070780 668004066 861306995 22858976 281687477 287222680 936443483 76845900 707938262 25132134 126160545 353356676 706707635 566856802 640221549 741715607 742316764 624941829 891248935 874932415 946208941 894603110 939538125 772755387 783619153 236034637 294936828 1916666 805089418 78244547 377481501 417420808 968725367 415859939 697204773 297213891 479688330 198935678 787147078 199864355 467016465 678176757 893847368 621139363 905214508 677968936 829908488 258148481 954039996 390706031 914729918 669510505 931386771 587728249 725838186 347195401 527163255 869325034 881027049 367457547 690987277 864278963 906591669 922230707 989213507 803286730 877884037 399045598 614494332 861509093 991272381 778635672 962587382 336768724 978373651 102623498 663392750 431988988 927924769 304133041 859036627 626063084 925494007 207073662 479185263 512885194 629515742 132086099 903236918 126034578 591184541 437750447 992708464 196628797 232848241 227628023 485646714 76401158 161948570 310949412 910722720 440417466 567457491 732615052 911431526 523741429 785343368 601135589 810983548 694232189 780705661 492524897 847006332 466945097 775118561 531747299 581604326 911075000 979506731 622782319 644711160 757417241 851846466 106496129 586287664 260066310 849953832 915173016 973894008 531609633 616794917 245587644 490820543 255101721 643507582 79069090 591242126 392183845 617991863 422018248 764041381 376350855 807700841 113583259 538661078 504424819 717015737 22837075 755439882 127372516 824639423 474305377 605719960 42727837 117554761 447285872 972786284 242132622 292085905 150527569 567651706 74415113 743907309 655044883 837158798 950628882 955665548 909883262 934241789 268321945 770355357 253943 112843748 736395707 826734258 189480808 608164299 891432564 994751968 923434341 993589188 252784528 481396553 520922050 842930668 456415724 494209048 117373046 894572507 770854709 950094507 587243876 886888953 139916299 445298669 637635179 823015600 899264729 912363051 260897382 849800631 301871001 688029498 171859176 413799458 967667317 983905505 136568037 544809105 615573232 828922245 61173037 618863767 943102815 981765543 588142697 623600680 720487418 820759657 345472923 688482768 661369312 789319954 407901601 901086546 888293889 968925410 76778104 625927955 680253136 807935153 49038487 686034670 100781970 640884943 396953325 819010705 701745484 922070974 672339967 803986192 570370327 651860814 887066949 894852523 67983088 452788011 37323980 324955273 535779355 957863352 358969929 901455118 505330370 766006577 329818032 975359621 868294354 955827127 444671939 887830870 58868373 868274756 401784241 722582927 635432167 756610150 602655337 809425505 600810341 716251040 755344700 826003409 405327158 789240497 387453568 446545663 216416920 330529265 793896811 855659091 123114698 980099290 355031873 982312708 148159194 862091014 80054441 184875417 668695312 761873128 445065892 789495037 177156810 666175965 203769393 428209964 814696232 863768589 804030942 859918100 399709445 422577176 484376267 506316518 640701296 695933215 294127537 776221787 430035595 833611159 641683936 896841232 269457750 681560773 776281383 908019290 457066241 697846983 307649368 836453247 914885141 938683852 638251537 810595369 191628906 530380105 983723475 991087600 650155436 935834993 940853049 979230003 442817443 445259325 919692179 962597655 423689714 540303503 36603290 760356956 418582611 688418852 971514739 999951781 999918243 999963021 209170626 986810955 435078430 677221584 289670296 348350300 829764462 849298371 275948821 901101074 135627723 869770481 275633916 919644251 219453990 320756327 371628648 533534669 196596201 663458746 579648506 954129171 511573049 649796405 404346792 881356616 819039535 835274842 22224482 155730793 616301766 789911237 995560118 999079832 35994138 151475374 803881677 808358626 527451644 874018123 607198178 842652588 609303201 822757039 111463587 683135359 767111483 919538244 234668674 904869795 311870889 734826292 333562634 378440909 725238624 786229876 251750736 987921073 574224298 710447004 475725181 521110995 272863624 891468673 838024300 910344850 62287779 90601846 735370914 994303972 776927785 805121170 855594808 856351306 33207721 428937308 471943546 589756097 553061954 841103720 832224779 962051129 428274825 525998489 606732535 877319861 422452698 695942877 92529768 230931503 599034854 785664021 299958174 455491881 949608365 972707037 421698609 733133357 870586473 965998216 593989630 683346617 89486713 398872273 639698873 682626350 339972237 524655471 777350114 910670194 610855512 718251103 631740545 832778661 373188754 946194234 798334839 951092530 175347212 510830054 42134392 528671928 241601196 584635676 338593811 806274251 881954670 983925941 968649481 987684914 751842783 922412785 396780252 557266876 253951407 664487975 142087315 163804136 832641876 961470181 154739132 224753218 283474170 694657046 963550987 982416801 443903002 992323450 122720468 393329154 646015434 671296944 142473998 472211374 277091691 340810502 203295118 400493529 590989329 885702479 89860750 740034712 640912051 999979534 390770783 424169828 72322511 209234453 486099340 838018050 348425458 999594476 981783938 986320680 972182244 988312699 253916100 516503299 467055899 564480363 970392821 992621598 122354362 252212460 676082476 816247496 239315293 256157034 906345338 974834196 541110819 560723018 545403740 906619956 70141642 116507682 170365831 700081048 518785055 995962512 790185171 818492490 417292 115143398 837995824 934187666 66543082 596397602 546526285 566623057 309280437 757477271 364283378 747674989 375748139 502375054 445919696 921693808 216158455 459235630 648739927 742800289 621664293 953568855 418093452 889577002 451643075 893739865 498044059 794826139 692984662 822737589 844144386 857365078 77517013 414659069 574486568 937767361 658809505 722639095 565034682 753870651 696522559 898377610 613890669 990996060 123719961 719197212 568529765 979180757 915891965 977984281 112123511 297864459 412406206 754697051 686244094 786364272 165951371 713122637 488260106 500251266 203329016 467586889 481585132 919572033 638164811 680990249 909654181 968724956 733417936 954838227 992176995 995479557 399747901 431784829 211771119 355961603 921917436 978592696 181515117 318614281 240956657 281457566 611434893 857200593 775504191 892540742 170170993 898135271 627066774 777551863 991638513 996419202 827812755 913206905 540150239 773100276 42479454 48648454 408906569 924992148 975592043 990916987 823191573 966141544 621298855 756775845 933112573 938604024 407177483 539301966 902358518 968945413 616468403 775991903 970323549 989001512 31333426 510502986 94264729 240725537 609772106 824462792 220866178 243272918 706392839 710007819 959920054 979611858 470448912 878334094 446128397 714052986 100596636 251946138 116781565 713491124 828195879 860269153 19445014 807340120 969235526 977845525 247532893 698535081 820179306 852242466 731735495 811336221 406350991 755411294 49884685 656546559 148156342 800632477 320389550 522376784 758082981 792043901 393008478 885394280 924292535 924657814 507634469 602236681 935215343 962652307 239531435 323297255 73579583 447449432 907658795 974771279 451598633 739646176 304220521 460579527 485308451 862751190 689862930 906562138 400099168 575569158 799099166 913325675 188255945 329130289 40170150 436621164 373000542 832718321 400279601 942657183 621576430 734429000 212939442 302196491 735148476 741028910 483051718 863098057 75987553 584099818 644780199 865649923 533191434 976698632 3699475 382626538 611817072 930026165 645965852 761964601 998492530 998884381 740568574 938408702 330917948 426044490 903746932 986743288 126114017 690765105 644870386 725960667 723611472 978064824 563236327 728531913 583482582 898005256 748142776 921790634 892164372 899212931 138010085 489264524 24624303 213996467 44428142 794843819 102287548 621652260 11393697 334388345 140488794 441734296 454008207 702660774 211998908 989874864 162812572 177321377 423843000 685653078 468111189 849114242 571201281 949896505 326423764 893154571 361137266 419292437 864880281 898212804 966305424 975914954 171073727 922323895 146437291 321260868 957321324 971852448 383420775 962179210 283507889 342781162 515826680 989376491 243676904 398965944 546535538 849346800 158146589 663777957 564586558 962496276 950861840 960973727 66274241 540564785 508060793 774991442 800535015 866259332 116018537 620624805 191266695 237463160 159374549 542764476 380925018 565308145 978636516 998936180 259856631 702515927 83388544 608278738 438652649 769805640 796693751 977520485 920296273 940259513 696463918 827205001 311782655 436925712 760292397 774246736 712995303 949991230 762084409 923873852 59944523 794643677 274230095 406518616 421656382 470113910 330389027 994249106 609691169 883102982 769253817 830043294 459860672 945982191 347167240 857298170 715778316 715979096 271607440 760648096 550937082 674498896 232899462 598503684 114877274 471363684 118090411 570847329 702327312 918380814 187075678 234499786 671413488 823090077 436318577 851591947 648964555 954908655 180202747 282881992 65096244 800992594 412304293 480483932 153266397 762471422 646096071 736485858 809503437 977877953 394244847 453655955 43267515 921892852 180169035 538258051 648534970 660475274 268246798 535640426 344866803 809819370 178456441 426463499 284820415 565213298 560271281 651368794 366189014 795357496 913461419 947618409 592352929 772733151 23291368 870855028 519714489 532482728 128520738 482486219 952798246 988362885 642411723 704255071 151893731 610461265 586084329 895557303 168525057 222945523 385156550 641071248 344554518 725879894 324819971 895518179 850115790 886782337 614346799 859111935 348123698 509578668 792113320 855244438 996906000 999103950 529914440 848487043 366906430 864761013 963578179 986836744 117401826 676120568 4473431 919820752 838913961 996691586 705182708 736692334 915785303 956634269 891967647 944561611 431107432 450859037 175292505 633559744 391732528 500475955 818757726 831979384 10911912 306853706 649252058 853349674 403602602 755049717 423570221 780827636 638664325 867378804 496490724 752447068 175241272 945975032 191860887 883872381 469220329 798533210 241563748 417073177 965145062 986283509 847257984 921792370 865849279 964118687 843355302 877217778 967726458 970295861 959773894 973195703 405516308 766366913 334110940 485991875 632828065 842691445 771127588 866885310 853709260 877952696 634723897 960266181 757954745 848810122 864456268 997439762 34893152 721577771 975657627 981265601 387021221 553111893 285784018 485597712 988575804 998854505 493525060 855271900 188995636 762287898 779825082 924826474 197256328 796580072 680301469 756981558 849770259 872572609 255130160 650123304 834968329 898800665 941633473 992178194 276447916 621317543 253630453 940146599 804434843 883724300 331452846 804618209 424503851 937710967 85518375 768693038 349755587 591730589 926801012 955536811 282458662 923243804 917613997 920828367 438243779 995464381 381277855 679960034 588342538 930038920 409464349 887678937 526912834 530599966 66666209 225389875 803334925 825454844 450890312 672404236 409095462 569035802 330016385 591397236 824991828 920983605 81061101 947875512 788334901 979569695 924585941 998000195 541499428 699142544 499694812 778986731 506674666 744473318 822455412 863341647 39960440 265455773 624268854 815549361 84769175 805263625 467684576 844366458 790313788 860796987 847435018 990846675 509247026 967269099 996994468 998981126 74942020 121348747 596523237 726934517 382931187 800862816 970284185 985187480 289583809 529002293 400458964 774463414 906892642 957247825 972029680 987816806 967107176 999429715 695567883 817065257 982162193 996790719 675209909 690934177 595958920 619144313 951612339 979882769 845340794 878084232 853963214 955138410 622136419 945516551 647916914 926604012 253321641 693994357 817246447 859931530 483903131 950447165 900524266 929419021 879501940 996967785 712130924 758057545 55865881 142093815 561643145 800461896 917727999 935867478 201857844 543487382 283024607 409058399 21610639 644873181 22342011 265150371 44614573 64908754 507638850 742110931 43199537 755523673 186907484 328812492 350511290 486101330 691577947 738680429 523957505 670708388 748809413 808642451 443791474 944745319 852716734 945937217 613674767 625176414 457471828 519285855 925531438 952986416 104469210 907310619 556113115 984659100 588174766 752150768 136914341 956344397 193257775 362991643 367934843 399507650 134181973 985773217 704478837 823193862 736896874 847213824 37700760 594624167 348499154 882988006 411394852 858292849 409307207 579191873 587170950 719250361 504799567 803190460 33116878 455463907 539659759 835987767 883957688 972756965 382240292 603978898 154087298 804328366 618719847 715429479 329653323 904780126 254347987 418978323 771356978 930883021 922827781 962381713 248888884 586616323 162216825 658589552 445099299 923989550 568834579 978381223 569296727 682324436 708433976 848067027 923597117 968597103 838854793 983711870 924748538 988930327 846150300 989946110 3923889 13609769 697025819 891949948 13267870 615766021 251990549 498017864 279450710 451082430 689692088 739153111 396816385 971745398 901735783 950660153 699103662 967012819 895124058 931601385 517294465 551043865 134840514 418837088 447544192 704831366 330457695 452293428 966312497 970268362 922152084 924970622 18513085 331099146 792259504 918662005 395108739 787399065 889497043 914790406 134270931 939238568 306501484 491416798 591106439 879714740 919878311 935646175 594977149 682439395 340381206 615656451 453940022 606514744 531280576 714578703 589563324 602778139 738365744 787956997 573649398 921509986 741392163 954365563 539853879 888696692 665213653 858164715 607807892 833587403 933039402 972645557 452611979 554312693 866357893 928859156 70952081 813608451 987900552 993775826 587833428 612156678 156406819 450970558 649842697 674879785 482449232 974878812 187322611 345355780 658590030 993433289 302789673 575635225 9664487 270874078 527432957 541667753 774638890 943599554 113886908 554445357 500772775 720531406 218203826 377636917 565244242 979768835 663809598 809064280 164749150 696412547 518645271 686376891 65102308 806327142 734710478 907490396 99615752 380235772 185560060 640439428 477422533 888288147 158417028 333483453 58987422 146841119 327329128 486217331 835382886 948328174 26173068 449551597 440977092 599753779 612621142 900747775 596588747 852240417 730981312 742183230 905291501 942483331 28436713 396052646 836389776 936779419 287133894 500269386 278136972 893912224 696892033 802337333 61235008 86347706 611193678 957848610 158406360 876291442 918042798 990216138 676425505 974972200 785784192 803662797 206691609 599110330 170084919 693564839 813136914 859112525 562525826 864621122 697566880 864666098 169107267 702895882 148045767 643142528 471228425 899760833 308548784 837196335 51543367 162528623 925579014 964859214 770294069 852779724 365950864 762735621 775492052 937157241 244404182 395899517 651757892 835954974 119919666 741350734 612619222 702361602 76137512 824263897 482866607 724093402 30927242 392936385 270498549 485862964 411328579 645625308 289019002 753291324 796019001 911611336 876221539 991216206 652101190 996783638 687097845 946874583 5007613 46259882 17829002 226370747 38152069 516035034 256006325 708618410 103963768 653825408 562159194 638382938 311977396 977526316 591525612 818784904 405321387 907545099 214485380 425197921 495245657 948197985 107774699 967887453 259459092 719092501 308613160 914445137 892138666 903252191 638170607 805016102 962271558 987804544 209559577 530813697 216617065 475820977 793959591 891769731 827271933 978675003 333541226 411698592 119286660 325522184 633712511 831609851 574111020 657782226 921872137 994421871 48404338 582811886 282023247 497164612 559618388 993629153 238860005 784373501 523197460 942040130 167895415 432807422 948129140 995938779 787489987 904705228 831746334 884992615 311790924 360703643 62993338 122229843 425905560 929877606 232326035 765221713 582516768 727538507 849673669 871381869 907296005 965927985 950137111 953964344 428382377 933949818 930973768 981574513 903776203 958112599 847961791 893954956 982080153 988488275 957213839 974847056 223980566 583874071 650660400 938382829 63419635 560012662 130099965 674310846 866415587 869848176 759860065 874507622 163807199 518387181 160821341 222954906 900915258 943731433 516693038 754212862 844658515 859422428 649177202 982882063 357010880 454676188 499244934 696943327 995402610 995653804 527633164 633329393 619100902 847242221 711007155 847624653 128375229 591521044 242431745 573030374 846335075 954487757 509172289 735428935 793088052 874950439 269196547 371072231 343518529 422589553 850548617 980334934 499956619 959246649 34263169 248212583 2530783 836649692 727072592 936417156 707866386 758623543 762530672 926136566 487710611 956643884 968167409 984690127 827616037 893469849 4603318 842647306 618166412 963196343 362538329 584786257 324027489 651323156 756819968 919256212 660067922 715394403 125885208 773357388 518938992 584174803 809021332 984130398 968463747 986262583 997369379 998315913 741247774 777404383 38716120 952307453 726207091 929257880 347367443 379836286 320284910 835010438 77671586 326414511 477701885 893319797 955419720 979349605 286882039 366967847 436183057 825164955 291591276 559195105 776253987 914010374 732463245 828809827 796865554 898185732 77089887 903048107 298425675 798450639 152013217 527947636 786716589 914759801 371795477 616795443 981126702 987362417 602433776 606595046 990242672 994956935 658547030 856416932 700915597 789241743 329547903 995298380 252212219 793651350 806594948 998930060 565558383 671910350 615589595 949642095 447796890 931930944 312696747 694720694 872402717 893185289 845497937 901361227 982905491 995221372 488445909 499150478 164048807 668589436 618521930 830388582 493229154 569497868 318578104 708781655 592886973 845112064 74545979 787432978 211198388 379097730 906111029 965828044 195425108 775819338 857504189 991723290 142909759 503141832 686338767 997253673 993922676 995625155 947348303 970058552 489451434 647909696 537428622 774491453 22410329 455176395 567797118 792756789 246068159 505096948 997879426 999842892 634441463 682596098 739458635 766828166 966629702 985928688 531020209 587035457 165904203 322831899 463078082 836035460 127197446 712401367 107279480 114682624 835989053 938821782 461944060 927436656 528718337 819117842 806826168 824773101 607771482 939582159 792330012 794305836 873252141 951386117 226246367 588529079 699368863 721591492 169910373 500942771 797175012 934806471 677072863 847443315 947487448 978904805 688496150 868232237 743144012 999879631 65967252 164278218 510075519 641959830 573734959 817348574 689120231 944928220 35011555 952482759 73154844 989821860 731435299 877360935 956319561 999539598 323775588 406582945 542694015 894349964 848117596 919797578 524788466 627714809 891080071 998761202 893572618 900651288 666978273 799262164 181172984 183666112 254877326 854527071 542977134 764276361 130849303 683767927 742269479 898574467 743020085 789070503 789139162 903581754 828136249 943148924 223479655 330921517 160329157 497653816 616801244 719774106 883924154 901233944 981633563 994179438 289120303 444054632 257730623 474414542 788128230 947713141 462636116 873668252 254777192 786884501 603089583 681161050 796117196 926287596 719487661 973356062 264299874 735145078 5962487 982753203 757441129 762496408 766824357 819106255 206456172 939366054 23569546 947166668 397482506 585217871 683676101 799180726 750068940 828287942 730344068 980681515 462363700 578226436 753100241 835425411 278538196 426925657 532143608 613401865 729821580 995639391 453401021 643164033 358603610 554268695 928622800 935746557 519162259 963961185 822810053 931857176 473138481 966775141 351278707 659941298 709648602 740081292 13423127 272594657 19089764 591729415 280847065 994645762 811433335 886763930 948169487 999766867 724388948 930431713 843674841 860846828 685984914 756202659 881538973 915515929 209789652 621611272 746924558 877144778 637259626 705195742 390335871 523195970 87192266 887672016 504576142 877681974 201162619 767931696 740240989 745366613 951909312 998203889 388472517 406109318 342746319 813586042 109943721 655784104 132067989 396103828 985512207 999013766 962605065 993025791 453165107 828628169 689961616 899956153 653777653 995452209 88229731 811352633 462054231 958921276 841823552 883480655 326208661 559461607 691390878 938174147 489512667 871097391 387045256 844022607 5483227 785969894 809335690 990531926 876257985 981266306 832299285 899744542 859357905 969715512 365081560 755575092 901869507 916434180 515261415 694061194 915420855 997926778 903546085 946153848 826237593 992670864 725161008 975745889 596684503 784102642 90224280 181575300 352374459 704510204 275224097 986402090 504552400 746174366 431826360 655660064 547124149 737081151 53772542 617493898 234180225 919941108 359261010 548464466 919249656 954381674 180868196 434748815 866960715 981973685 344557431 868817622 69418549 386885550 442446094 450480677 640456905 733763873 853028370 862878715 363020123 711521810 569647617 604103254 935074882 984245691 287348256 836759491 697607893 920557861 450149840 719611475 787097492 944959200 293157966 532814905 907417385 935288866 255138958 722898381 752204951 993326621 335096890 510670033 306295745 772369538 566639757 923806857 735759724 842011802 965668191 990010294 170379215 251602535 94928393 763195351 278375857 771887588 398586246 662399879 207012918 433188076 461396973 791032179 101870096 792822836 770529672 900247004 267408418 283268834 510549537 746848784 632794370 985024214 718673932 790233728 327653350 613810514 415574384 877679747 896964631 980151048 625070508 686217966 655413758 877154709 325187624 429355200 253118040 917601920 704560551 988095805 1017017 871467625 560872419 749081782 52492744 605722639 216274147 751507262 982154397 987774409 473470521 558838196 307839481 411287961 870229908 948332561 90634619 771919851 882585531 969776083 376527134 378642661 855506860 927628316 654888225 704858857 648741271 736271011 609056429 677804924 884248921 904793664 309630817 631748747 313650284 599381016 145092843 979137715 2048171 582512665 489812578 761697176 72711741 956519927 612354554 945299340 749180532 774241912 729437210 842396121 801430284 987605575 423589043 580856905 816295860 942614686 463152574 851124163 377346017 425098949 470978541 659401704 30876320 355106297 647070685 722008803 317226437 711423783 771064394 936612623 274652224 488462188 218847758 380312505 136606092 589503925 626602265 661112539 760048699 965690494 36501342 448526090 537078700 853784136 988238068 993184217 690771120 998095856 555638376 951403627 835361471 940572411 689716828 950152470 826164433 956717624 349442923 569241741 18305655 900550867 645999100 734125676 327538618 846810702 971355955 993410110 685124662 984187961 140721204 802454146 59470798 818186813 73906476 74235651 563906211 879697855 482294526 623826017 147567481 885289977 736683456 966509690 88946611 572352293 445014065 909673861 784508229 968224545 219901070 706259118 879458699 915691491 741605925 883385420 933429034 977501208 882925378 954156833 167388896 402574630 229806217 667077749 817489629 883956012 364894286 422174037 457762481 702829908 261666051 688205792 191981970 354526844 948217915 961642622 850601108 952438557 771929862 793015300 438393700 962470197 533297238 571567829 565934875 797930743 412725154 567604418 585473916 662942160 116423613 696544967 729505608 953041408 196590391 214771582 905107785 965861905 915742952 934146753 911634364 914055724 450630299 824745148 338529448 711127892 296496098 405430264 810584579 828536281 865976201 908187118 227705478 699894320 409026090 769774247 125448608 300674728 51489171 873534267 303094379 917743622 916304205 926993773 479621622 722756184 474631370 577238125 294167172 868887550 149182701 184136767 379532371 666605715 531362313 970840402 300809476 329918650 169735587 640945732 118683207 309672872 63430154 425277294 289895456 473332562 707449709 921576324 784440597 965433719 247811408 454771410 874773571 993230616 68004088 994571953 596188556 664953200 511502792 810082150 179916573 318472797 543458824 667778095 348236357 512498547 678763004 741712161 871167460 959746635 870763992 921304302 608917090 711447893 232682629 407483001 810216883 867950365 634214834 678834878 664046678 804043606 551070501 896678968 795516620 943421734 990631848 999529363 409385304 620278778 130583339 243026938 189231285 563792858 732570803 775806933 651274174 855685750 765363532 988929115 162195021 944775700 275071040 374328826 334114566 486068842 368842222 590952140 284442454 632280769 984859057 992939716 78417462 89470883 903661184 981291965 513591253 947418929 367317445 685325796 627046301 916820617 466986097 526523514 108120181 508473900 9246602 276481688 650968369 999124990 177369138 613518969 322772478 894790987 339610120 778329049 692355274 950596370 127385875 538090434 593398339 639256860 991438379 998934274 514203793 617872156 104139101 130589376 116064647 438871296 652985387 712130904 212028613 781160028 621399006 682336871 977826781 977936622 517659431 560620989 353105398 455334041 415683365 418847744 61565203 783952229 752027421 799338890 683286200 911473333 455860395 641052451 558174552 766152620 633032447 633657292 558575537 846235612 517616385 945952055 568467978 925273624 784206404 992472741 909179415 949843515 99516007 817826212 272021336 615889923 766031237 947293286 575497492 749626085 923836000 959431164 404584224 507184774 772338864 797215868 163549350 913576454 294994159 461482119 751156230 772736059 484276525 796658499 630269099 683685737 491967619 545847255 753920711 800314307 107055515 883014074 32179652 92557886 771236176 807880980 587422103 821269323 389704112 468863580 139074286 192921229 416958228 511736574 756049136 859708881 600538434 894080542 931900578 987862276 900087422 987622496 897606643 973360281 966182421 978890764 368736932 809744696 402882300 489199806 213589187 498594873 484092542 874961157 874739973 956249887 515296638 744883578 545819443 743574969 929096758 984449969 193701597 445359996 39229964 421426925 494859080 666468069 285734450 345003277 93460147 722611542 361925226 756803758 931217255 967655662 132419360 807529225 217059784 942739035 855184351 967418352 729941771 879559312 386429654 781103350 31715357 811755716 702474722 960113038 264429490 843450958 897943138 997333217 577053846 764568157 150532677 958372665 732417946 785870257 17940120 399304747 707176131 963815221 272200917 398337919 737557609 937144291 804188236 826214673 178484920 295557725 624427459 996166100 846769189 848173358 258354917 956475854 550249693 994865519 653373021 722221945 608823344 768175337 551970895 782398628 789662385 895041090 300546715 558686062 480611218 818264870 965277133 986930906 647175740 784128234 158891879 446873819 897887558 909229337 70319763 799196893 411939247 529663669 537549436 610263206 161173003 617115429 617451928 820087070 926981932 953620153 503019795 513467218 738677665 958853761 716878106 727533078 187662367 534495706 519794022 909482190 141946275 912189057 766845862 916918671 278316292 729130967 373520161 668169768 571469752 608352650 744180364 989110743 390233040 478085819 623096942 690001433 892617984 951225152 974490743 983555982 184176085 531678292 528947707 563066915 886100318 919139544 634036778 692867168 433427284 858033776 184152189 280479963 834088794 957154575 317228895 434299935 662256630 910891339 93475738 709106886 665395385 980575557 808774178 847561646 41584456 53753113 973855818 995034233 693151903 994253318 526943469 968380129 734212413 768413566 887221148 944790958 271024333 898698976 748513792 983026424 96104182 455920785 395514476 844128171 956069714 994273756 203207546 350810807 511381469 851003091 274432690 344221182 192199226 548235132 767349870 990494886 819528977 898124256 365087134 949964241 443873137 453201915 824037216 927899870 844481124 955684136 594181075 744779091 491364435 886393405 191367129 278564254 869851122 995019321 192560876 987223355 206488383 766988290 483304803 822373977 244285435 628531968 130612038 500037628 631803446 982908978 941499285 964412721 839514575 904078847 576872856 580505377 73637145 882802183 654150747 655373000 798366007 810935077 886757252 897741256 318044294 815243955 501995523 714181963 66008932 560087662 953038836 996399347 732135358 851696903 609122797 748778553 801544610 999911989 603295853 797123728 89720205 968435076 103920134 229807427 900640389 992995769 849312507 900012650 956140710 992744177 919005955 958351401 493198924 649080665 614499989 771438850 599787824 649158181 84166072 802699743 378722020 474767102 624417980 712611026 372999412 946194284 476373590 821399744 172518728 318009307 969248446 969420351 85171077 495009409 352647868 533824113 703548942 988491124 264781133 966434125 657340690 917967039 838965674 991864872 948672260 969893892 389651759 548709042 347783786 656273273 970383861 982422824 384980125 431363949 844914814 953801807 624150752 707596965 110900635 370322582 68447481 449571264 430536175 845361575 315583057 674828728 93393536 904718940 754549692 820639719 67332562 788684975 316493022 351190926 198352309 903841046 730742792 798441463 353099403 593036068 730986167 815461117 48631054 928218659 93289212 483758241 138045125 642129930 477127684 897411003 528681881 602389695 273476390 801917384 930110362 944295236 924011660 957772576 61903471 962004763 33097203 80583961 883723868 981580325 929734676 999922177 654672376 884888708 417687361 993626778 778871939 930330643 844116398 881437918 850130796 949291169 99272827 329832937 364022018 540221564 120305615 491543344 853096153 929764502 478516354 953359572 224519463 586776351 333174604 715566698 68313424 274117857 348260379 609188822 323818921 578118994 759913284 982614184 387871093 803553462 565344685 594837148 412887883 792291676 78234597 830916203 179185619 473274581 302961658 856998023 615546526 618262425 911370617 918911332 356078058 853896850 967241168 992994915 976254612 994260307 541316262 846134616 678098230 824969453 362992880 892977793 620047035 927540234 656234728 772182101 96033830 845451425 985836698 987367341 36495183 526901224 841907498 936796223 933470404 983405916 79759709 610420315 150611882 763269142 346800501 382170506 928547977 988918841 418101344 996078471 555997596 984645889 129219977 278538242 69198798 795406885 164635015 255803945 543479044 954112355 154837977 234924099 69771087 224864916 694054849 745909054 330219348 556821880 964981398 987165948 256038711 871110577 667095694 943990565 665146209 744870556 413150215 414180071 873754159 912343067 831768375 951977841 488552604 563488237 33110256 59708673 302679037 665380805 530690857 536748704 589493338 781183609 600549499 630354225 173533902 243261857 674529089 778625431 371984937 952725663 620377375 661485214 298992337 408125533 253982956 964546032 239626009 589416135 194294985 538578408 690164758 924632024 627706572 859708037 945281694 950593772 563510976 900618801 501129833 954956942 985160286 996294934 904010977 945360408 546399157 974676310 870426234 873920699 573856044 979702181 628108811 801074792 914701142 955511226 527422178 548155119 507042056 871817121 837529113 858501125 861912001 979718102 410040537 894812666 689791585 945509190 320359468 565050816 947465831 986690940 367043727 440608775 974685111 998023321 598489193 704408015 149692887 417163377 462646773 857200635 782588907 944703119 37785285 683255273 357554657 776097701 870112850 935135126 998886146 999177581 739345582 911002660 798941083 854705748 741603840 786894252 92109491 624209028 99226588 341625498 42477240 977466168 205039751 792929687 771218294 918459165 698405734 901098651 720622693 946496525 723608379 723975412 146417224 901020684 607692961 706376137 923291487 932973412 904806773 976913127 723962824 725381772 220609741 718660758 990030872 995758138 238708812 323660830 321933751 788758971 968242736 990321685 975431 787929218 262552290 901723660 764783454 786259298 325613812 333816617 745942613 759166646 470368790 577435318 291493756 550032515 283431218 452786453 231203661 408399619 514462034 811410377 54048772 284159815 752906676 800430331 252575874 698370486 708153824 898572196 29926168 150812702 555169939 857720738 510714410 641252826 462257280 569509788 310814176 561705070 132814867 525882430 410028962 984336995 419662445 438877332 135647356 896622438 244196041 327243253 64599984 389301495 710570707 851517350 48176935 261181353 939070353 956375513 307448922 695238271 987572111 990806979 647802100 743299194 290144673 950014025 442570800 896214890 860797628 994017310 338838697 442784724 888681613 947948730 406832411 449326437 911268141 965446665 440767602 728355685 594934870 917085169 551082319 997018770 281279057 798856339 390724475 404749033 195138567 576094415 131750070 819935886 132165691 479032253 736326011 921667707 215169454 525572226 954220294 998437615 986569472 986789018 45815134 460766764 967534418 996697415 472686431 616113796 251237922 539734262 199333809 424491465 926341739 989687320 921057911 950728892 349485114 970112087 99561424 733351194 850196978 949280459 574847200 658735151 505765811 795623702 163414562 863468747 947701721 964582356 496438986 942987825 828428123 988637140 331276385 500320614 985234353 995607964 998022125 998954849 488665889 624404608 151043903 231191833 815338891 883689683 660935200 956294581 382964348 824671456 745148655 929594336 608436199 648308778 401328612 590865525 347599376 473897718 85203175 362280468 319731239 330823308 794385364 931847356 263038230 979947359 877130788 948880472 860190943 876651538 684589600 937793180 156986740 716813739 927951454 969259396 496381894 921981564 496386149 707970384 562499103 928772574 309853588 739874408 267729336 959899108 277327886 789184186 677590223 920644449 237033977 387618694 826237640 834526300 566067235 966979250 296992824 949430219 899086480 927305581 824025808 907457537 214958279 525516856 843444993 876895176 817926754 897287434 602327342 643251891 450619340 851622929 542326458 848913296 666084035 693853414 508246811 552203383 601016378 849386526 760661599 841612056 209119508 334787892 468011463 592677552 420583571 958527256 139020805 246947986 420754007 680382413 997578228 999905433 295385460 887323852 741461221 821438135 850542184 914616003 367022349 940930865 430563201 477217809 435837841 965924874 765076462 943911635 82538464 375515263 874236334 988707703 86485193 945093651 17185054 837755637 618102204 665342847 405211291 726250589 204839718 403128626 69404775 487780269 75839380 956154661 975819109 995426188 294068391 572722113 116507700 282832731 210563690 332594230 832378535 945879201 70651989 532436845 251792903 895845624 331662345 646781732 664171860 947325158 153747189 657179875 641422680 973561640 948042738 965627616 774303962 794733027 466268709 815971820 612170435 658264119 617841728 865632789 859187787 912404305 240645264 332930903 390340350 448309269 501217910 560182518 938269384 945652874 35554433 662080714 163169440 852665144 263658160 527529122 401482108 807782822 973365812 976541594 886267853 971315997 378301903 610882800 665670290 825498235 907522245 914288056 516918109 745035280 593280844 849102874 473852497 633831282 691123588 748603092 216740139 510289478 737632771 982615331 903622870 966197712 354051048 541440119 589721782 689838822 904094291 940575253 677986096 687238915 932940558 969387041 425948072 775710209 314386813 743146484 47999174 105336853 379033246 670420358 544239666 548337943 628311199 837775566 561530729 993790583 815842530 830805155 993864109 995389471 209445914 347644610 660054901 724865243 621801861 768719076 396046615 767436832 793922983 811100027 157738641 798935516 186441443 452610870 806095257 808684345 924143091 940595955 586656305 840046172 98645982 668173709 151232669 559573902 874785836 946075891 65021944 111017515 234671955 859452396 402196348 758478146 550579414 839938515 232762137 570971435 235393300 974513736 659090299 800438320 521834059 952614262 492518794 688430245 923599983 965065810 636163804 782044379 256951035 830585672 967673988 990276090 910023316 934482542 696607497 720076547 524053903 548755668 595592663 971632980 726716822 842700427 179703118 698165476 907556866 939602525 909344216 951932770 394136288 895097052 273956344 638227458 748309730 882004759 229550465 451091277 181639015 871916167 490096694 871746575 970102398 975639843 824008092 875140758 566067939 745379867 916799134 951805476 458921082 729850720 545136765 576933471 769080828 951729405 125343672 710596368 724740672 837268942 375893636 706042465 615561485 846309562 222620701 395607378 146666965 942715549 994809134 996937380 487553140 783741680 74792142 814176190 847952536 936014035 320693566 810450582 707842563 740020033 722446649 798649438 109019786 425785337 917938696 952289324 796010349 946103662 788264819 840189568 657855746 854977591 683425095 809857924 759857936 989096015 516565646 883913785 886073801 939189343 461597837 563381133 231394366 482970704 866951692 953967030 235797844 580195648 378262866 775742649 10245929 559055611 533623022 886222306 775391402 855078933 68396749 435559977 959100375 968515996 584953337 838901091 872301954 930873727 700439071 736829478 368513062 641848670 921204854 960398799 888295085 899373273 618840322 940225684 513512197 553711219 378511844 908833007 542720261 971855659 987119310 988307923 901187757 983132486 653175807 893976734 290900250 732902827 734519200 806925850 501396077 563316281 185204902 407796544 344028531 997971217 328531951 389549535 545231314 796291868 102336721 865920967 469403303 869312337 46145813 634173250 611431069 933830397 118545664 969875461 494457039 758072265 336053755 414169930 606794371 751313701 181278315 721493234 301614070 990722375 921092804 999723350 908428832 955071837 954108575 967925432 71402401 236839353 184393802 728837911 551074797 812182274 29406248 529567294 53893046 177757897 19170041 767855433 963016208 980544504 66693022 925008888 691775742 910470722 704028037 786118403 32922865 117497357 25883779 490828947 657171375 867343593 616333387 709710877 383831358 744175731 179976223 401034350 894416015 931972315 712881731 886680390 541913428 602361542 573087131 873987776 417241638 582199774 532638615 538382801 385136932 498448293 331426136 743078454 830617967 871033969 359880221 682838440 799368997 969171410 705353691 911202734 844900745 997527489 948889348 976181581 433905647 713267760 664180638 972258281 164827081 532865997 303295284 510513005 182371219 344084788 846115116 852610872 792467489 950446833 398097072 482156819 62141791 781901836 448621260 919177495 650812486 669154971 183083077 460526478 13574681 746456026 128613176 838868633 234367796 827475529 357781991 526518774 682522058 817130052 212154466 626418428 824798274 992699328 382743315 824166818 865211415 941238220 895781596 942432141 976280414 991625047 637849184 924749708 796228911 925543962 179096232 183298043 764863630 969838946 28913753 64521040 76995320 166611596 394530997 930864640 236081239 516706379 43183276 139583280 556138534 733944597 466700873 616019399 204999299 378905057 533203085 738117009 940558094 960083768 768610811 812761694 660023992 800850190 690962916 991624794 224015389 806237417 168111822 871879064 20170366 34815884 75054872 255528001 577723179 877605669 851262806 903262508 625124146 728770677 721239950 958783575 208934370 633574172 270490384 776900492 741405279 961718997 964291754 967772963 593063426 625047368 580600846 830121618 400074729 493513470 625512577 925430483 907308485 933114852 938840310 993545205 529043925 787558763 931428250 978774524 461834237 755705137 778214923 801589964 814137036 961632463 861959793 889389955 93294828 279693619 898025763 956448915 889885928 982875135 12040301 701145343 733722239 941586909 191671967 445733049 479627306 641443691 428341303 671168122 124972363 548532461 767570559 772659439 819286926 975271770 502953280 895804050 693626881 749065028 167390142 996782060 646611601 922541666 38388116 346564508 800913889 962413902 226051945 237393805 625275980 722598891 508834815 965331483 692183504 739891367 7941498 465853352 642572374 671395869 991535852 999525990 938599979 990782776 798732787 996504851 165393448 668036277 639690095 794373695 732695094 775169312 982827606 992396502 684209804 878867754 948208833 954041294 444256613 623369354 274089523 613083675 185722787 408381951 436663688 837384925 368282160 764839769 389483007 853952431 226737920 587786077 929659560 977729431 170921716 192602755 675769468 877534923 6261701 45551690 840310446 865898647 594853772 979995056 180603963 958917590 415704781 601493325 718146646 778091886 78912161 991298944 747753837 996794671 28862525 395507099 166671787 449589970 244756502 621135142 46036471 419890699 762909811 820186417 208011369 823827144 507077276 677123965 985298816 994695569 590322564 994197574 761917716 784472141 800799406 871447537 16767420 915115270 373985711 690535820 639581077 655765110 447651556 650964384 737977967 839003947 902260844 945795675 2589182 504365580 30293917 183011635 288158644 305990432 901191575 971991431 156081706 608766635 876249018 880051183 93891786 394078588 514050432 744868876 502939515 512354258 479040359 889463912 614633308 940181932 110823605 639983853 984008051 986696549 867194395 920943411 313974243 618387524 339587493 602443988 277479240 332057618 590446975 731138247 482633639 999165387 21131749 82509826 400965865 891008088 354076338 577168900 397493159 635557533 462446290 769403151 485624607 933946828 28066491 854204311 597410475 853723530 763546790 938665548 661604907 767960887 480494094 890622435 798624565 826854462 679804269 717566886 413335146 763789697 872571510 995959455 427012790 525082287 575310387 668022167 20227342 395521323 792300655 971617053 867893798 957357424 784915366 911478508 383787737 599826057 6055975 750344856 40512671 313385507 236387086 428693988 775449835 794396197 225507251 686769718 180968769 286833270 551806701 579832212 371320723 449978676 482971309 935089261 695406291 920812916 423937121 450114372 34988116 619164946 288104187 410104122 528384533 568523601 665461513 958352599 483112374 487597043 826272326 853440525 420407591 956398185 928981178 944026264 257800223 422779469 666109499 788564007 374135492 604683798 710342242 940264932 295818497 476682256 449338580 463967296 506493555 921546630 641109506 719039713 425256321 741220863 170415940 689467661 1586095 517467204 927553023 987176169 66400928 220503976 813763612 899965396 539227467 789174741 173318756 256732859 165527456 260330972 733570003 868533677 802516954 904544441 704906848 719665503 701013064 964036855 282167027 672941994 882955148 943618815 961722796 971022974 642530582 787133025 912367401 944183898 277962031 846015034 502759683 797923604 851625065 911461469 258049526 932927365 288440524 791179363 181100614 772417073 805388884 814881127 553030468 931212136 835916803 926138019 384583191 930488510 793443782 958012958 138887351 190004204 782720136 968543310 445956313 637071147 706367114 808404570 830141993 992203039 42676754 74528478 505950927 719389000 810756081 945465082 726286693 983355942 469888186 634341539 563159464 836607670 835183204 902767425 185174306 199974887 964974018 977542997 859800952 879473143 205747358 777235791 534600768 576707696 668073176 957164688 864182135 974377656 304212698 716467369 428652166 807048572 101939992 223904211 865527273 990748233 645509696 707949269 793122536 912321307 709741483 919568786 580746639 609894020 130628741 490127691 508008751 959232311 112697096 500769007 254592985 363481600 530316779 998347342 426903915 898918842 412191783 796636004 640910010 919914085 97686484 937185155 958406938 997457703 159454677 845616893 287215131 915374995 311379574 484481981 796351257 860469468 835613394 916285353 924720049 945112990 454056785 955866255 155674799 657735671 172643183 242494881 852706207 857596312 244197008 341950309 28326703 486368103 135435634 966572290 91289940 629954656 946389599 972799909 73247771 373633428 177544110 861000845 118971663 748458752 217471661 819111636 472746909 747040743 137059556 636835893 338726166 638131088 11454219 230801255 845004999 851389188 723479704 878226012 384859294 814708580 616840951 739092504 502383335 952646958 815901902 950827560 764723599 800605003 205955857 926126189 995710470 995910344 823879949 883544904 665679081 785941925 992534576 995983263 252403956 334951631 644443703 750487894 408416000 954513229 196037040 844229228 617012092 926323143 185994256 879175977 492400097 658170335 244144119 719322070 508923034 716099842 797097978 835675453 51147522 379791933 728763318 915361593 231397667 700806690 110542475 552261347 666903102 903064926 683814943 887448341 241658898 376946781 243713468 790170676 529218807 620094140 439877140 881899844 184127227 725887337 824418151 961146193 542157411 617200532 809408471 945361360 117042470 238418554 826333134 968125856 820732813 982097203 653498318 655164867 82527519 923319671 850183712 853234740 187780666 812146065 631218359 820167098 254982962 724371478 579749 401718942 448819881 859638285 33158480 52821596 205937056 759642886 828903644 935068728 685089096 808288862 399351641 690639942 58059034 455098057 677923547 686229554 888297854 903205941 495983210 750413953 610221740 909103384 315369396 991407717 813283958 839345798 596824974 787939751 735141752 825613614 710507708 974078441 314815515 389861530 370358948 710669581 921959835 922146259 310293740 428662276 782102239 845742725 327468636 428232413 442264591 848205017 841595309 924639057 930905316 979941111 61381703 809768933 372368821 667049037 467504755 659746895 918331936 973858192 257779659 961621283 82903186 392948482 426625428 530514359 814377858 943171927 750059348 976967779 249639472 751594754 647013369 866729349 435492514 600411908 145653260 523689657 97201456 632873680 93340539 936565274 830379681 842185875 317466051 904626551 832419870 913654360 139683671 273745641 762738048 914493265 272435940 815877727 743694206 851692229 450903581 632279934 646470030 839661123 252708944 691159975 643812580 951905517 551119197 934459778 385206623 532869173 982978507 988463588 495890143 577989008 413249546 863049287 191427151 543136986 98564314 310652140 882079999 933401575 346541551 431455607 421333911 654094417 35978487 368570653 915487368 952125424 564940905 694735432 746566730 936356710 309477672 675206533 769552551 978309739 590106353 992598703 258075233 939840713 1028165 690215161 654291615 705233490 899800149 935743534 51325724 977250688 586343990 858985680 969439809 988269864 491942395 676658153 887533946 894074978 340443860 711127971 286208308 576704622 607579745 790716985 964308615 995368687 296413478 326465697 675566491 915466925 89982074 811535411 151066110 358770277 979871268 995048659 749743435 784795256 120163174 120737544 307896204 669826565 721993406 932754622 226517288 357478917 584333250 627001981 751333285 900276894 245550999 693021193 141124380 288075059 311304666 635728494 771017862 976374538 328098362 431549300 217589950 804202464 763664079 863970617 951454847 954166138 467639367 764000434 111677390 229727785 461789921 889507692 157184220 445112979 836233133 892587610 314813278 615227977 724109278 887244552 143947206 358033372 562960552 834894859 268189347 589031973 286231114 835524569 370838777 942239256 332451801 739420032 483538524 571660614 476454956 989424242 657525910 739412842 428041501 955433852 827701667 840988604 985032703 997612765 42183165 313110663 849323963 918865642 612637772 850440649 323715479 819082313 588412891 786993783 410673789 513300829 280129812 727883783 147696864 976369506 327749007 865088642 7890082 876378987 508506638 869463313 509678389 771577791 77535089 986707499 35171498 54216456 634514102 736911318 254227556 958011174 861937807 945928034 820670364 887094044 786000092 879649574 474396841 993889482 421973073 724552619 156873792 853985043 553703594 961790573 175479913 338771872 41341611 943645951 108046776 706870805 86589355 343338717 437861866 976937475 911490773 980855466 121398141 254964112 124098339 684421662 187266214 628060541 832898563 984633425 207741016 840686393 844344128 855778184 297847263 356689047 752258689 801330696 810687902 996667044 467246875 611663531 19991964 925845021 840833631 976610320 573525719 902747487 324016745 543827991 885752233 935857618 529048374 789563908 436897935 570273046 755833974 780465643 751289659 910199376 336085981 857252617 527640493 719443934 475149906 948339639 105059153 874095832 321724280 746947856 267072770 924765105 782291438 893333827 755898371 905226976 45232819 528392428 511349732 635582825 81692402 572820782 177995397 590241518 872727034 995045560 665265199 741172104 543325772 765733869 728162705 877155681 602949182 971418231 366527963 596526787 426608375 601478226 392917025 863879728 169590283 346274541 681216853 709995913 239008711 478306958 500597106 923807297 616013493 810168882 964192505 991933203 90979295 772976615 909478334 979396354 372782262 446602768 536558793 669900017 669611150 905325908 395235453 513357987 763912851 938881019 704097357 860246712 792144192 901461948 411397042 484433764 441547080 889804734 458416583 800650249 414531366 611077930 773101239 963484146 929133281 999571872 309355677 536318735 918066407 975672720 697278034 701009384 930115856 940392245 781273500 927735777 191592397 456389343 354287300 696588935 706370741 885417766 928846099 956499928 881430426 898545070 433966501 660049024 619808679 978658096 25132322 163652939 791701649 918232866 963246633 986543006 115925978 628122226 291231479 974990385 890223773 891690717 145166096 778691660 543999632 676992584 11691406 104462346 399031812 694882549 402851842 937652497 317229099 702945864 851856735 953559713 92828558 484570837 420300345 537978411 586232113 665170709 705369018 866134982 574763665 677502975 140468137 485428609 89941252 735757164 652045563 929874621 459367221 688227658 880741495 882857966 414729006 454763250 188960173 738715726 887968983 980570218 431312227 459479166 545613847 626873521 587824337 688801069 415538645 826800613 316402467 731670264 365230034 783217082 148172293 572291176 683336676 835420119 289546325 831495456 906573716 927429608 281653434 888444050 702519352 911818847 172931358 908718813 736990158 838598786 424035795 615230245 478970282 518939360 542749612 984415090 775524473 933468746 255571604 574374704 714385700 948806390 114177839 407559121 573170270 943510579 75933603 395365948 102971079 290270866 803724133 834701637 884157631 892072426 846922253 933777087 661744970 806681700 809427196 887871067 720022229 907471226 488913973 794797915 83711025 732429792 43272314 973786726 629155750 780163620 158279979 945403718 823722061 952424300 37582922 989848464 857258025 952368773 211832652 234066901 395412626 752773767 486678270 551655070 776294981 961458071 935168572 977575918 342727941 603018026 576508120 971268141 529507446 967895074 835396484 998877237 138933031 191252023 421089090 728827195 336314747 392093150 410822906 501423713 914441596 968836321 356751200 540391416 475009121 967192273 183695481 764545303 974615477 977179537 667812535 813878185 214947020 584474613 763280652 923451208 634389962 776128736 397735150 533212055 789370423 798597040 771576649 782106290 176942218 369218211 313306754 530052822 887681788 980113912 606141009 673597832 520180486 648673271 519588856 740244976 874762217 977892398 278066644 849006154 107723475 548914062 36590516 972182699 217355608 871804416 228309703 436695059 840233844 939427139 820653049 904325564 414671802 535183854 840906069 945206093 763933580 969629271 349931155 989508522 559980139 812955991 964689527 968292379 827287365 904570752 417246200 531556107 199974132 608923695 723343708 885590940 767675056 947144074 414328457 930919025 404424183 678289815 562166540 868049159 74538158 862234137 447869716 813910983 746035327 854160211 984999780 985866885 406001551 911408571 284743206 659053370 100097392 349169795 233442322 740694806 871473659 988318241 429344707 845485950 742645813 798535045 148794820 225904769 718236425 908794064 386422734 968709442 783808257 969074196 542506863 650178106 399811470 963864608 834389634 876660227 278831329 596494959 133092489 792039518 500660391 881378763 40297477 502510277 186308848 707386050 410041792 697463396 246695638 658040208 695628147 953013083 121321435 382446221 209906096 655712164 26713835 148326902 786044436 900094226 383658440 520765901 742963964 932167819 854825355 872334477 311123536 451979770 879286676 923264247 944772037 962608119 168030364 789798754 196620114 207427292 587670550 755443723 878512069 996145736 151604026 531795677 317971958 743764952 670991671 889447190 992535881 999843875 780595094 794836823 236669365 657255228 81611897 291323788 466451770 655202081 584249193 911867215 633664516 640460090 360301356 945857279 638048696 665641555 144446542 434905517 163785301 413827070 191344168 816136079 69394774 827413388 603813301 767934102 516266935 747165980 432352677 800222302 555668741 883362679 588430974 718580415 637774104 808509036 761292724 830945286 860951482 863282868 700510590 955148079 312514406 452346063 804240661 938974822 326167395 403077488 127066321 680577162 520757565 633662256 694466544 758442335 300540977 959335662 724117498 869984340 309475012 800284739 48173147 111565956 502594254 774313525 63418876 395821034 883288292 993550077 580687689 860839201 401555695 797733972 574619324 740555069 45645574 505001003 528652968 771385753 526050469 996723816 829128321 968334604 865074878 909637736 797388694 812480056 26893134 688115613 597461180 776406025 185518710 396195368 913724528 933410739 162442176 233208717 995018437 999696902 395608109 589032253 202669846 356657999 934372721 948280227 739023239 926625743 505971017 715205816 768130086 920953925 144832597 579014699 13571945 912849101 37495675 95113404 864545218 892292980 394214654 600919982 260179689 819433405 887816687 908115379 673173609 721360304 156665029 292192334 961432728 997641994 739797744 826292442 354656222 618628495 923216532 938161959 700656644 773022043 583712393 935576995 695012668 859772283 150528279 730060916 712753192 932794422 324593447 454013688 771832261 885650865 749275600 824869040 663476649 708254380 431359435 926496955 928377379 948814934 129531517 533397075 546863615 695480662 678067853 998601615 148414355 459389743 661133835 731149079 979251267 990530978 29837002 442895672 569432130 703555876 94697928 521935271 574737922 613283329 710133710 966091437 788251069 810929801 217064453 562761918 831936372 920307963 132006662 762102284 464864523 553380386 207826495 545124464 948964887 992941886 854650646 954975826 333689266 513200938 860597149 937849998 204205719 617260684 232120145 467630152 482320269 782162724 557916803 691621813 906339856 911386766 105275081 118209210 748982414 834843648 501457078 602392297 838046751 926432937 911758058 977571361 689667020 854971404 841378714 952162914 519591031 554175647 811941060 894784123 411068527 598048159 309601485 466030898 502294263 844651103 220656875 942197531 921490357 975761072 563364147 736077518 491796875 690726864 969882340 977562141 567562949 889220895 386551137 712317786 483321966 732723799 143954676 576626585 486853761 591914977 915716404 966767123 680606691 854313662 49516525 243030590 400342158 599097909 470391549 712633214 793757226 809872236 540944765 891187205 948104199 948700053 79765243 714236275 454553923 840722111 176783990 597192369 592875545 759678485 549821937 585709659 39286437 972589850 718792729 986127292 411702032 959361291 784731499 965903454 394982120 686137454 994007544 996334451 518334102 836777663 579762844 731734159 844285225 858780184 838917518 903652423 814315765 938183532 153064367 825509829 898453585 988802385 222577962 551164342 894700506 954238036 545785143 804854479 629819613 691717639 493337702 909878087 948302477 968914144 75859860 532940207 259072891 908141303 191459136 687733113 907276822 980672082 840570460 983619913 553504312 780672326 141618716 662881679 600523363 607087858 83064317 791941706 877601258 918451154 865690123 926263392 344022412 701748296 96460399 424392957 608535051 634427645 7906699 596969346 762679542 910134520 5993578 544992015 299106206 353935476 488679123 734706770 675068632 814898971 293142360 921449800 39624817 235696947 824224735 958970557 751469670 859329641 438757261 613474603 325930717 380867900 849494475 859796560 656507245 821191741 318519844 623342429 954650395 999498239 983399571 997235542 693064017 833303131 524821088 742080821 373986064 382435474 606422238 642394343 936053596 995491231 152691144 772108031 73596655 713463159 279927786 657352350 503665357 857659737 91684600 949009145 851753735 960690046 146549214 657964726 300183210 550234826 568794483 877724895 730804708 860675351 564872386 916738329 681726206 720026214 291058017 701877135 771983061 804640276 203791798 707445869 422733603 582437549 773693514 797402731 593194258 977563892 647522828 861041326 765551300 965118407 681060993 731320185 3195307 123819755 662818073 800984630 119883576 447484163 11434728 842198534 177268427 505963869 316963265 615819143 462807061 590030639 962845131 967233972 391938801 640166132 459261482 753416819 629276442 788591653 402357469 512282649 722487033 980910036 428704611 889549589 582608882 998980005 236917733 833476470 348683820 996517148 789987680 920268126 266757100 638060944 676892551 781461983 935674781 971203833 436856969 641143446 118791584 535565210 143155906 446732716 221456180 453140950 14373358 773785445 686677231 907863896 239824901 413379940 135443745 299226557 899828954 930120004 994491240 998558810 469836213 493023002 341554149 894122982 321958036 746399415 793851788 938537938 623333308 914611959 883186960 936066136 826189733 939951082 932535462 989681348 189881570 910026844 417554307 913425202 486157519 625971861 568472833 781891608 99029811 907250541 497262702 641283980 896639325 956270713 144597841 567390409 776020548 827288999 160377942 262039093 283671569 362313741 778552618 792875058 565085486 587986691 535668633 847981100 687545296 940001502 87101998 500089726 607848237 819984427 794489510 799243658 754183224 974576772 231728720 933661187 870730401 890832631 538315924 902282132 190289789 368744600 694695903 845746750 700255904 851987986 884860568 943519165 497977115 916265094 446239934 798199223 968765359 984104097 989841589 990879972 267627420 476333421 42812718 45808699 587570373 752846310 166174360 436607207 222353444 434433392 534067215 554808905 362506322 883737028 478192546 760266464 326887940 792606424 974830127 986254552 988679034 991708092 734489079 974437705 54293857 110604954 713114474 951141873 686485670 765369199 332902846 759219528 376046977 830698567 241696748 749042055 37628205 370740813 709357648 944276071 48667265 139696204 840013587 903217542 853840507 868078604 5876542 881757579 122231980 502428109 722789873 872524616 308175955 538501538 789636408 952439714 66104033 318171154 607823981 933922133 150707740 336459483 180695241 790209559 58443224 157839168 307297078 981604654 614281976 635873992 908686247 932652176 61124636 566198522 522716754 559050410 767560698 930739142 120775085 143049020 375887510 504006621 405744921 473622495 469360619 805881961 763099792 970825566 930535328 984734257 661286593 787539741 238717653 638430536 791769785 802269618 859708584 974632994 835061639 835935247 141973653 588500240 562227823 687493211 321298391 762979336 881586699 967282010 872086855 930607193 534066847 811271534 214611506 566457283 578721551 783211399 160266246 478518493 515932661 638800423 389869242 738012863 650180670 870384415 179765213 530863055 902355072 933602014 174005275 394569046 369158567 507908830 571376816 581377768 248704018 890204772 368717229 690692539 726272964 881729252 688954014 863324119 287958575 325799374 779330614 920851684 325325918 333256434 944005376 976184202 860565490 878261179 181760745 943841562 516687212 561190552 118352476 907838884 904231626 922120373 68490929 926731501 685942612 995417408 731029116 936828701 100497963 728664765 552753185 884372001 249554939 340771886 734993960 799067428 671380016 719618025 113380997 221831032 443522031 868304467 886755927 901831074 50103440 926923580 412749545 801639903 164911901 262056300 278551632 563384913 243711807 458315376 959788263 972602353 563918494 821997786 38604116 934696834 722125386 737048151 852874543 951400398 633528287 690528907 232559872 302381926 887185131 981460733 877060838 900931095 513212348 684467748 651390145 712969335 888004184 983127535 405915782 729855697 996764498 997728307 222119244 661157557 732705024 778942135 178061753 400341948 77173594 399762785 270655748 338327679 390241105 587425183 834353928 860528746 843396401 928253410 432889675 514957990 119851224 640037177 321810563 353970796 868544692 918792034 753759003 766456003 584194475 618170532 227826605 563260882 606095414 716623261 242169606 690288630 66552147 808886570 826786900 907956672 890179577 957117330 810368100 868917690 222335945 983577169 863172190 889000074 380630646 479466392 128062847 483601265 900846499 991114102 369769978 665827993 532698432 793913769 291674684 373618025 688414968 911194256 256712121 797425044 57729356 852526740 492630214 943056641 899669781 960089381 490950647 848341556 60001972 225050681 437955524 841540117 799463467 868806369 717635145 764161308 471490198 893734246 420282419 797681095 939334200 971591238 209138994 811365833 280165847 298451562 428139898 781084596 356937356 415210803 15591567 396892056 428879919 675021860 331861156 942487030 135389284 796858570 781413185 966316334 49816224 554076831 307614564 515714899 545285737 773121779 558501545 669411564 631614845 727569496 744617379 977009729 19762453 311436241 451820505 646670058 371981806 750196303 328008060 961538953 45258203 784550546 524237051 824279606 285608147 410014896 519708 46682572 751773549 968797128 534167799 772987632 356444942 663378819 114767540 972783050 999160493 999897305 101771945 545090329 842432283 921432242 391892073 491491524 751789410 792494200 18435024 613913348 702512332 983486613 158857802 743389340 680134221 877703415 542902204 856510774 16384323 471041444 753754150 915548667 921890365 999005133 827772265 945523017 87258640 746604413 373719519 523324120 363792254 444188176 766635156 976705628 703627253 927919058 736807435 985051060 909891338 954489828 524660228 912091244 305715031 812290142 938508297 992559870 214180680 556102312 223120637 821409851 323288974 553564160 181062158 672555224 963494236 993636299 99570167 754785338 325962802 849161017 659645623 799913466 572918797 686372781 838847802 994744219 896649012 920958297 543746843 874821577 968439071 974051752 771310768 871731029 448281607 502675883 68102696 399602236 663099114 881108192 426968269 700840006 680132262 750507318 648258749 963130313 662027082 937291734 455411464 655952915 826111856 838120184 996093804 999749931 504140701 789509643 127412096 375244183 62668055 600349605 615053314 797817880 256332765 371947976 561655124 842348402 570041098 785984145 306699177 795690737 766605490 827509700 634949852 735668205 28731351 667708243 768343034 984225280 789083440 791924274 913004431 964187254 46946061 447480228 993911439 993939894 520312862 869486524 974469937 990623342 618008111 725891355 320668542 758519772 915872140 991396682 69969264 768673133 933007162 978020291 903173447 952741652 607412717 670688437 720438049 865088594 513840180 761213038 440943106 791918824 387429161 642904351 848808165 909960949 57004872 432820654 153055256 331361929 931831446 993284192 865663517 963665485 840314215 924178391 152325215 735625107 940571704 949899526 525723400 650462854 247595222 682762945 40426770 113629704 682312873 966398642 883470826 888399194 242199212 531966138 119338146 645828062 71495405 567943251 579565354 718487282 75853357 723045447 152404902 872418675 750143582 758185228 148315373 208012651 405284248 934841568 825943285 873757631 276491483 395507315 431305637 871721548 587750090 768992033 92952678 131248869 343018287 583635154 732755635 777524464 376023979 482243830 55827420 403697162 554901105 661137246 790327279 853137011 521556542 667690310 717474132 726822182 650894628 837135134 399069975 412114292 348002847 655839451 37230738 675920438 564109386 883992465 553600745 789593494 429958408 443010562 357028336 566805018 10835874 984535387 955132769 978134478 55768194 105600596 224704259 587762720 999937991 999995328 383739160 483254496 154938845 320290070 169247721 930741449 403773327 841387622 847038511 876385137 801907722 855654121 693283851 869638309 198490355 934605989 497786762 583905201 214400592 661530829 408655915 761869888 206487118 569914144 517837229 921069924 271418603 511014618 637940730 730866673 53676041 972012558 822398713 998791927 453477427 621885828 136158261 823034839 312790446 846627077 36603481 434588960 209077784 301131576 494061654 556271119 960057740 992660296 761814 462088759 473050741 684059265 319989599 530942374 667533937 676892137 462948904 510069676 248625924 666597551 279997607 920035695 684898711 723193979 219630769 888129996 862403621 934854405 212571195 894828002 141471243 552728569 647999666 749927714 160809499 199314316 849092444 926626449 620397603 729936351 21066031 734413188 88187429 981113386 290946353 671992687 224357966 603470007 586412403 808578707 865261070 944604945 779481483 849556502 991609746 992630232 218996619 466142454 31676314 816763403 625605750 908644931 864280435 977936303 840413987 986290299 603023104 948906305 704786261 771334533 402956024 665053797 707419453 833613318 34464394 489618309 1514031 260386376 812828952 843347798 337680633 670103917 165535601 298800647 102040148 224952185 237407296 377178957 445075642 628915029 510441102 879999854 15553744 862270374 91904751 701462503 380473606 414053812 972424644 992031283 579574237 733930127 538314199 832586778 410037509 532923841 749494960 769990891 138608870 374928634 516290591 998219808 517962360 978373529 348509263 748651332 168113705 420684980 634022554 764288752 882815246 951799195 438662588 697461499 937057055 959695136 835640473 911769522 21679559 235246676 897333833 966629994 356110353 567041686 182039555 206618665 396411790 475036761 963196783 992441796 8883335 808801429 571003762 981774300 717461258 889576345 491018547 890658946 57030170 389054681 980371732 998200275 670108028 896664302 561276928 909222664 809931315 916892967 908889170 945793102 681796153 737124497 683917478 828377009 273052212 571910161 746259868 855105909 505159150 506553475 11318697 204606550 273037510 620136600 137001910 536991323 323990516 837448406 864245996 927039081 960931325 962269841 225268580 700582896 135918509 801098916 57549746 437457498 127402884 377969112 201981854 842512100 893689333 918663842 25412762 120376536 82074250 555263525 333035449 586189362 295873322 616202909 439675374 756249117 749720246 823165164 94188532 181365187 655750934 962647565 799522496 957917375 289152537 869797108 180720565 525681495 771242517 902152252 198979765 268354501 314354001 629071695 312531375 661005150 412195095 733649457 248988294 911488403 853540100 873369850 435875094 965687322 781163151 803121924 388869293 601104733 961888540 995354364 739314054 848779531 682802777 760229546 716477306 792711913 170523779 313841386 452789809 986373845 888128857 900942869 211207198 459085533 139892103 945727486 810574660 883867127 535513234 627479124 26352875 324938366 735783348 867329225 126212714 219831823 791117486 935169220 537495604 769949607 493898527 728052155 734224543 904778813 40497450 610504491 987263865 993496920 756256331 809096273 578008288 684957312 580280815 978782268 756465806 784159150 652934408 948154357 566405913 681011417 10003492 232186918 944157761 970071934 516412343 945005195 54450378 755964630 138916467 617914550 62237563 425182082 811077793 981205006 474148321 932473095 982241433 987301028 215669981 529811626 792927536 805428581 926566193 995672273 844913986 879011288 280405152 820708193 276657100 812982100 904007516 956333341 612251551 807778358 927994577 996105652 328879635 967988343 137712628 774666699 649252730 941640838 993499213 995112893 960896424 999320967 804037357 805025118 334593391 981185694 870043881 870827385 241460470 301810538 356062036 890660653 253074101 570875020 36316646 497851940 85187873 653698167 950248428 973508322 117356884 187319919 566543068 671751234 60983073 425546002 163960152 557977605 811424854 958624916 215791422 627338816 78568308 546502973 52252057 422923078 931642475 959082877 48286153 189349076 396839637 599702556 870382857 874218886 3455650 132449761 837356822 881998339 374216609 862292251 956880893 969667349 499234479 788639739 348119530 370426541 487714439 666149455 844151721 966501927 169762067 672952323 98116005 114911336 389367857 454017170 720056772 848072865 914592701 969021284 55675221 830178742 675374897 717506427 7177607 870336279 109666862 992469376 358098100 947689888 942399099 944664007 701936765 729787800 716285463 772418835 127302781 177502439 752243989 973173825 574376245 753815608 767896969 912837389 636980228 769135314 599756429 749324146 53974781 972821253 687574293 827730039 90501934 841139742 604316396 784448899 768955221 793344229 173248358 634590334 248053384 610825025 958153304 961446506 228044391 335884857 459690615 686590515 935205903 996037947 211741517 573711919 894812774 901182703 910916735 942421083 770799694 893234462 864111004 948263649 229312965 433374626 709713103 906526361 778948585 923349036 757016970 904954399 982356814 983885608 347654651 427160704 102701265 741302479 315199842 515568274 566872910 704477644 327807738 411506242 579467410 629727997 744420529 790326517 418995533 941227263 184786706 972431081 198113415 476705988 665812995 913416842 412507310 669276439 143030584 867238285 552801345 829803000 999940061 999994887 396186589 672031951 8080446 204570743 260592977 329188671 198575656 637407679 407485047 511814335 581050776 616298136 542643388 557252953 376185261 385182007 838808444 875332853 704348880 716735683 254151567 700120396 716937262 937394361 673866151 765733868 641321891 986690982 760295970 944015791 293252007 378280566 844786833 856567021 648038917 719352966 406737594 908884497 725832670 894542853 448351040 930671858 929177415 938002358 814887972 850994210 305318228 797959454 996249027 997996447 305371761 889019585 85806772 409917227 33565615 644723012 163053492 363394991 540873185 748815366 78487729 315503092 48758354 644419602 302656507 856864429 83545323 391330619 640516046 826821139 802587760 958991585 256528726 518531855 294664618 802088256 957817476 975530589 96089036 494985951 70601821 819580882 901096889 916073568 206200928 518130798 59313686 619414061 395704067 758445749 133034748 483953393 894827211 954324480 926337188 976972037 969130319 993695762 545875991 995602874 512295471 855725482 468034226 715357299 974388896 998656959 348225961 453390195 730886543 934105710 901529146 995028346 938819526 982402533 936575934 970457296 846835894 912013841 233197002 421217903 860370987 965682684 57318414 169568321 235968695 273230413 640457411 741139736 657541326 884080072 910725783 995492664 917676852 990180836 278871567 645326741 225415102 476508403 723049545 874446510 926985661 948177161 737967713 836020463 88394185 840244757 885696393 937170781 440992085 511395054 76344508 533601269 899576458 904395392 34982619 197424802 494974861 749622065 450561864 793643694 752857251 865907979 480163430 698369842 514954521 619992281 409141766 751292909 925037599 970422176 635200513 952010762 52940461 592015530 338908818 343461041 990983379 996775807 762487746 877471137 33508121 856291079 254522333 313482469 675162147 747790734 579927409 998647772 667294090 816044195 668996192 883860521 649855946 768562425 381570204 668027787 703184037 801462267 370111928 861571185 685098156 902028241 700908418 855725241 605762124 977044762 969904184 998543936 57355052 735879413 622723486 796110225 714669449 896138585 481727410 547745220 201268025 770305901 459830561 904243073 329064648 655630276 133168307 885090462 547991146 697412077 374299704 518032191 792695889 810787235 780415568 871933426 719127447 815802903 595383570 603365437 453118988 966336373 808917761 982694147 654362571 772600922 768024069 854766874 942463858 973780400 466005443 796080232 631995258 709621689 369844811 784109447 16553595 570008135 602940347 680110009 549127683 619050549 693060543 920450350 24890189 584411416 101833392 496851005 593701961 715881876 589733753 920885639 457563708 611979429 267846487 701579575 152365346 951903234 338657639 922905794 750135150 838016821 186016363 569333218 860242560 930718768 407769389 744770464 515478569 580705531 464290522 528351390 288195759 563110653 325335568 812109112 64953081 247771391 557594340 840836761 56923042 783127632 340544847 562061806 761122512 860699285 316302072 821437898 821466412 945663248 956207629 972440244 294965272 701102946 332893409 953744669 44926027 163411038 755975439 893539569 508342302 963457185 938513784 945979405 264700775 939925328 287463485 913649576 172408114 965233080 590645559 674977766 855851330 949713266 419597213 741206179 192009520 869216132 990462942 994937248 898419822 983875398 706217196 996222967 502103229 872367806 333156446 360356176 733500360 886042178 541911974 934006014 529278540 953881744 220691918 556848904 66395747 826153246 810811324 852752924 781347412 976379340 627139534 641008578 342851922 462946550 439031029 932621748 882129669 892430063 798621194 814140813 181651888 307339584 104533352 893319734 928893510 935757503 467628030 968396889 474238730 622904229 187746663 990394683 324925300 926277877 523428813 593650456 94459004 144311797 782663550 865309244 508713783 954440260 524856261 610558601 693116111 701017953 536607291 630689357 244264897 284287438 884480635 949921099 141112803 189908785 26854492 669926158 780513805 955197457 639621837 999705839 160447500 594585483 899617579 986109614 477783460 478392549 713808389 836580598 938501331 951323711 634426188 925818744 346568186 546570468 223935516 719770438 148645225 183146590 459205785 863070506 666344884 800325874 118198532 466924524 352751503 457051188 482133749 740050925 362218076 554513956 650835756 765326953 638099692 714163566 796590590 869890938 771165777 852966410 280973788 449877461 558146821 995193642 149370447 587016294 269597362 817926471 554726846 686885273 145906642 730422485 89681850 605719456 163390294 892064571 275402703 508498488 737799169 906546102 155440564 337459465 30107764 196309531 683478559 700027195 575554087 704753078 887602935 920118212 471653913 769608358 406494670 778200568 144098203 620111683 237566038 842044120 67125304 651237834 212874321 786488410 617984410 656363650 951671170 986861669 202618298 751764049 827076908 966500548 954210193 977862674 701488664 766610381 422726593 937405193 365079256 873983239 269137107 668220255 118830466 669300943 518365095 994955772 108128466 348823279 125078914 453788704 416228143 912492781 323635206 661245434 926177582 940637022 862724255 871710214 453816689 625484759 157594443 339293685 79967432 384873219 723312700 911475861 695799392 881915506 499858429 849461169 753148801 896475293 975801784 990957817 149305558 640067551 236181777 313321619 542612001 920427418 49914355 556537652 616866867 801761483 28531650 63806443 743557436 818935239 890879517 931374224 215446094 464471624 365793301 794439558 411042916 507649514 849690394 959845993 205168727 979174596 43225952 640981423 562852534 654065751 995430247 999830778 970338903 985552909 553612373 749602342 306807255 520195250 819000816 901045275 297982102 767756599 470679253 832378440 140692069 295213231 782618708 841223738 403610545 574317672 322806221 347129533 791654586 799888490 353321810 496857288 660548335 678397126 649617130 786962905 113080651 587423888 630000588 700116247 966347478 982357958 970364687 988816665 468920752 894181012 445964848 540663633 153009858 973883527 306967280 683284112 982785194 984615796 433157827 510561227 411642675 866573168 707289215 989721852 408945250 829299471 921411757 943842451 327873021 557473522 146046974 796537276 800802058 862968600 289056102 861563757 333412218 482104577 951357938 958119625 617489223 880025211 720701818 902313974 919815105 965273778 157192560 196988614 56709313 185333404 407351065 606143749 365245241 811788614 471936327 695526966 700466354 817915074 722839649 750122753 536416165 876139525 409259732 908530532 38800039 735985183 862576371 895080475 55059188 132131160 623999198 942196124 623528458 641435251 650681909 934817235 390461327 796418325 623363223 862140071 911500048 924739489 700500716 774497770 170410059 676144045 266686665 805978706 173327289 378821168 426500566 676513510 803599840 943952196 729298400 949792881 823771926 860123863 552683541 660102203 282642560 956976771 451531036 591039843 520271081 771562937 990589364 990950973 309079045 934941473 463139029 761561428 391501247 455298413 813499261 961540792 427770839 719762513 496161610 767825902 603271801 673224016 125026287 302010421 949464654 971883704 823357399 884237130 215300518 890649359 690761326 717091999 635910567 718621178 290679224 363077642 164540207 587357158 491781726 547387120 711482054 916002668 657498959 723603012 983104136 998099239 276956283 581389696 64221018 475661490 121621573 188102810 678942090 686628802 540419097 937801262 138424810 583339327 480705519 633163779 484602558 843155491 447652326 801198801 993436493 997440944 139536994 453740049 381079121 490023456 838719263 877972086 803974859 856060027 892051072 897512189 228204608 486299448 625450991 637111604 245567526 806040692 152127490 699815166 103497812 948603036 683828364 725486116 981739408 997005060 361332972 884282022 145058272 531375429 421246170 761814483 975968939 976001971 499884379 648095843 434506012 889237568 876809311 945290973 912165036 941811494 514468775 863195361 211873775 571136869 925536434 934587790 695164110 924946992 884748272 975383829 642969623 706219728 52788655 175233377 377851728 744881239 561888558 919900351 591120051 956720882 145959428 989570149 705294494 831667147 66322664 102541328 865130225 926194995 701210834 730069668 272509162 611794857 724208102 841013562 131712866 278852489 400259943 466197116 436462396 471281424 834879693 858729477 452121273 758301848 497614778 545906815 120562134 339711395 689831046 913948932 529771773 748619153 331826345 544922043 181490187 906966483 243048117 582241262 784263553 965686563 944658667 994085018 962661001 990468016 474550319 974647385 22599205 887302318 579306445 695406780 207467955 910060044 365616764 670040007 821718076 835842793 410746555 605836649 851168863 960960617 868850410 958448536 110090872 723204961 387871158 865212254 383656639 500104453 785840111 906924965 693098419 904659346 807390989 852896341 600442694 662603913 787857769 890519257 216371334 371268457 974110529 986441262 31355893 459681044 913804346 971717029 374981984 680271683 652792432 986236890 494094335 732979830 510752081 652395795 584629723 637349478 416879869 449785616 526179527 545389581 172463747 585616746 965893238 988961127 536467395 879882778 27931400 68528409 440366657 783964606 267453349 459101363 350140451 425986148 434850554 439285866 714710967 892786993 735759571 955077195 682544584 767056217 742465131 794295470 371358941 621487043 679642218 789259386 146642019 826915441 314204174 917188296 637601 789624206 328434601 337967538 299448717 748500347 734680156 826998101 9540401 26611493 425655984 428267067 768710276 974130552 904302772 978690267 448297433 872007734 550523905 732582306 181959599 579094261 79859329 181112534 983819328 991536233 839387648 873547409 746710747 790682162 203598146 882271087 936040778 950041394 466421153 490357874 99037781 622268939 35720749 37715217 372545409 752307334 999598355 999763057 363300994 395278401 865478244 927475279 858062172 925099226 891211130 996658414 735807307 766186260 690879363 778763608 115390183 671243351 286499718 887314287 614126639 691124065 133692925 220837681 163753234 556180345 162064751 509627407 906777365 934848351 421250562 828309281 932010567 949229789 186946891 620460512 683691442 902598887 750428835 802952063 114082623 821772272 679517479 895637078 357208587 650571791 532205686 929218697 922111103 988398014 923412270 938383276 552317227 802783037 713283905 730495603 184881617 870946100 965763629 969898137 306897793 632384188 378245297 670955958 269473853 571319448 998182914 999293852 892654075 961432439 261052580 886281137 403072109 576010700 513230438 738619146 339077824 702874719 296788298 922928629 490397180 767726041 553902271 782491517 320874812 598705129 829650733 902841617 691061424 718778955 769131107 783270607 154596179 556818451 972048686 972392682 132972144 540943720 670684660 858895731 796744756 811651348 112091562 805934915 939298166 967385616 848406798 972705797 802408646 860993398 999096770 999403705 94455721 577548908 81997251 833958060 562757465 863163672 325015425 554321469 255442937 288173268 246504512 342857258 787032806 924910391 840498041 855799715 853407702 975700161 770652282 908874150 105349367 949458286 43921929 656960502 568830151 955430022 362817204 412870434 781492470 977311375 284562624 928263799 973735178 980859968 400931501 806664641 400738760 454337851 346605615 491365965 146853177 987088251 728919326 794408055 957084568 989995230 197630748 535552474 318112931 458471776 944305388 974812059 519370226 529451359 77793448 466513380 116325985 821058331 689598151 878053493 619342100 963453501 817393833 999491218 562988130 879092791 580707786 634331757 300583806 996077401 907058275 940588510 549458417 761129328 362366015 886186657 227691843 978129928 344193198 639459581 322069224 461848576 858219837 951143633 612368220 772785595 44470580 980084005 449452576 553012959 535347518 891691277 60898639 71179184 190777282 378805845 75551572 205162830 739401042 987951545 889119830 950772433 879177304 924109580 33932389 56414412 471450038 940114153 544225219 849189287 645783399 972004826 788424651 938519999 81529938 663988619 937377768 962001573 752403552 799478717 826873095 841277909 641616759 763427100 426276283 442314622 677991619 848248873 23352511 701535834 47331933 628117462 568236709 905177988 153782464 423521565 610578040 776656951 234074126 594332879 494498585 909426463 229796724 750980896 594281884 624850194 618914013 907281874 325141516 886143876 862433521 895238082 75771313 102637470 278979543 804653183 165787095 308101341 463692756 951536644 545814034 563727595 556921680 976407113 419715363 631443082 656510810 733502275 450961080 789012753 603190328 673115815 858030375 916719393 858184102 893117888 554373757 804100948 81307752 773518587 121101385 563277292 893012151 927922574 153314579 875778903 551170938 916290941 476971828 963939918 347760689 542726996 364869268 877872525 515840915 613404344 11295934 782876007 707354436 881215385 255313449 705487169 268830094 721443503 246968680 813330483 950523798 952891438 18988740 947447067 643959936 653077693 7793813 664179448 361504210 673666247 826724310 988204001 36098522 97761667 511251851 533611920 8232702 786107766 66778861 717645114 69513166 599018844 782580157 917849146 776990721 811277961 786957477 841035966 590215142 694699117 467627002 666948519 581428143 678459665 788576342 835024972 343143780 793468139 551659768 654021214 114982097 735437415 364828863 906192498 464778830 960560531 339535157 381766067 740781578 928054301 109470742 162384289 718634523 806647079 398470554 989187994 740812762 910989470 39269791 840019581 844936933 985776226 571778747 829539278 265289180 281836115 906498668 958681583 641526416 992143579 197030492 925312133 751009568 999640028 133846757 962572757 142463146 317416464 13086512 383636408 525115805 746859228 303020186 755719960 896871936 940008816 16804687 323281237 905601710 915559358 392955548 734932219 809856573 884643367 132569033 899219510 923277899 972634190 254912237 528473229 921723525 940265826 864943297 909670085 599626196 676110916 149418380 286859500 733011877 938233540 912055301 930972419 870368184 954722653 361939825 664916394 687881993 995867402 663175800 744709048 327556846 706657928 924333408 944188388 241964373 872464300 971516840 980260232 585638961 878770604 551548092 706743390 838292215 952347090 3981601 738118763 919729800 988526866 226011309 863778756 216761081 578101301 185339856 210550922 511831699 992335225 332458728 342920730 74477365 601146221 3030306 302513557 879742092 912471144 403086580 625770132 210458840 964872901 707422044 951166023 847228578 875369952 25131643 884468571 8413226 344487868 872808792 982230881 639976083 849233888 700791482 791004446 136859176 374743753 397863255 511681333 820241981 999786277 1386789 672528315 894948681 920007758 510262564 742639859 931740622 993090198 340098228 627237855 954566560 967370866 591349185 878601307 698935034 742235045 987915694 993647261 163074217 424447415 793536230 830277597 79650256 968347242 176270922 598150120 773712209 965343005 32720819 287542348 150917283 653781069 135016452 822335112 280862560 352282946 559281061 594956351 127909222 511507884 241143566 389535151 208646309 523548500 956737291 966964995 288475549 855468460 498451798 886153099 812047074 961368964 159092368 303910099 40945600 458883202 989012622 999279635 647997783 706440560 290267807 902314909 12085739 529603462 895623000 973445354 326021645 920629627 163241981 439817198 691351243 870165094 643096305 978034673 638944323 739471935 386016663 820444232 427277239 573631000 395686670 871801841 780899556 943923837 958815907 963630094 878204803 936859544 1310181 334111258 416039827 418665522 751282902 957088260 811159568 929817109 244190146 893461528 214237343 407576653 468440382 731113939 252234263 314386286 525753606 761208291 374719011 690734612 192463149 718289158 490915987 972761919 82767090 267435629 616029436 835472397 303655426 610861382 279149387 699015891 95878068 192029651 526974285 624264117 578670267 800862108 395716545 533601205 147925131 756761795 866596095 957000946 325981113 925414957 912560616 934147884 37032769 482782934 703642734 830353011 819559774 897117195 995658628 997323555 192351745 904099688 727894967 758752252 565121249 801307811 976347017 990138892 214808056 714421751 582580922 629573391 796978803 970257075 54680794 394290498 973141089 984138050 577049862 722298938 882054924 957576988 521126791 911886251 904325868 973377680 759925495 763064019 960450005 982415858 308255385 960795844 112978546 241335886 506137143 706672870 699452945 943708222 598229211 691407461 64283948 621986824 580802310 878001329 194027499 235457450 198834666 744477145 209735928 847885256 157507724 167635139 190961147 853353756 675039074 732308860 67497734 974618050 33725837 116597217 25467268 48094379 865795453 941712033 771329979 940061668 976130202 985496120 703621945 736160349 679071948 975316900 662358596 779300076 669882783 856164174 298189754 471492443 487731366 757895773 846888378 964104119 923697149 953971684 648459001 867794358 886582877 889970124 191263520 490538081 197107286 725743363 452575030 804498408 546522119 704946682 810337463 925818830 812219780 957288058 65913289 713633222 845484963 894737535 620178738 896095970 844482998 847831803 738188247 977401635 436443759 834793462 839990568 938475670 779413164 886245830 431197296 435326367 306248579 406005187 198289431 927333084 635632634 969451201 107340986 445268560 808230035 957301679 735652560 916242590 43888761 980756182 267815182 631145028 406658893 659295214 877875027 882326018 91901137 915785776 751663651 896759372 803828027 996564703 458161738 720846325 865362503 875210373 274641344 279851210 596449473 912809116 234661970 287389930 169805706 275025486 903070987 969321909 725901982 726539631 330743353 596542473 201738250 556910457 173710483 880520660 175975757 927355598 148620935 664039047 759922051 793774737 473875530 934137127 779721759 831125706 210319632 500967858 257188897 886041182 716933646 856602695 236071578 783133916 705875709 948367802 338405719 415262740 584378089 877745535 35028816 567715502 939960273 960653160 535902489 934674051 64342361 932379601 154534311 344940410 334300992 695830022 866853436 924147811 338751948 791814602 436759638 672689568 208774066 534847389 8790782 265929880 800002377 973364114 382214163 550982601 316442706 936892977 655135776 983555419 884909064 999920697 370296273 443175144 610542432 934105465 650492709 937169856 520888417 596786253 904280082 976947569 566326522 862288306 521523037 916681767 124094168 746576834 458742839 756002130 942821020 949604613 849591654 927284521 60827199 723027004 708587067 866049019 956918755 960890872 700259350 975756510 188712607 346990605 541879041 901705632 22637729 153677466 176949928 396810643 871440792 919443152 636060525 646671343 622528667 644005717 743280117 793695661 59457495 633753467 734564301 752429480 938407297 940010328 738572140 843621613 465508505 599180323 299868184 723052178 273777993 538575914 157902756 710011073 342335326 505282867 875356977 909577742 769964882 895281828 931023942 963313735 451389424 949129579 51699591 983558544 866336987 892764854 192771213 999273970 212254109 733158747 131261344 517202309 434852926 438377561 86784545 944654080 25367417 446236268 348995337 947282779 533841538 725924143 56192031 454791185 762118671 783884838 330130821 624798994 637900957 822085511 771015734 964442849 810155356 825413190 414993355 921961480 400131356 700223019 91996436 970906330 938310230 964445270 591567977 852403676 943532032 952796369 633007249 910539959 843032637 973975287 817815705 836943721 519968312 585979302 582754636 738086326 735794730 829136389 896458075 930526486 622731794 875396884 741690399 879287310 383013082 897420068 440528830 910692093 213493856 485043630 838943306 979132624 895270798 989663888 815907702 900292665 470876029 813546380 107701238 651275570 834617036 881962673 513064782 722103062 126993439 806185365 865891153 868280044 479517162 693025763 652665809 910455035 309041012 897376552 72425404 598412171 268230468 397639785 893934512 903814188 378094608 416120123 75789833 299030092 661010542 846265204 294982638 919826240 653377265 768909407 982254742 983191885 669279651 743424464 284033450 615289175 382478396 637206811 818182600 931648729 216870394 291761500 916103004 996126137 207143616 227196296 448032195 634473232 732743632 743051143 68445282 548514242 275823804 734006750 260356683 497655146 413531717 768398713 675035140 874641165 887254263 963943546 404201318 650390019 205536557 669169088 517838263 863931604 601925362 767213846 994908305 997007558 795324111 799989169 624206654 732329355 799954158 938520470 840213126 958212534 441157276 870968353 306357088 485954384 143544127 633473860 763082854 764556752 983789227 999297202 945350904 969756564 666882093 810895679 418982036 947386621 335930134 448549057 324660539 970501349 118386908 362504100 343558059 574381167 229503296 473994133 542524980 698281696 869414644 942403949 483187311 909422748 767768988 872455041 414273903 438654135 919504313 922851081 54806429 390788530 545002497 674978005 187922153 651440972 880862311 983228648 769292802 897266780 975642326 997458652 650270283 958909866 131288410 662187515 283076326 971735822 550431083 899414362 292319799 966480914 237103457 494319147 948686568 969901059 956838620 986853626 614188170 938409520 184272055 622690509 699091611 766862232 431325033 766150419 619558276 785302282 163877424 718973310 557839416 738255967 673105833 954664465 904907043 944866695 592533327 616789823 358217662 781303234 13619072 858264361 231853370 725905050 459399020 874770253 389627715 622578130 763710574 993803837 897289327 951298692 315525068 760791255 939560859 969960593 763153653 908370470 42691438 952738932 96356276 919680920 228227521 307046791 693030050 880803821 907477549 978767605 408963926 809733425 727082857 998511762 518659501 772371508 841843832 989499727 883503897 966198293 426053064 468593077 163879405 874169748 12083523 89643544 431564324 661015991 906915476 971698690 877135462 964222243 508404728 847983521 682564555 876114762 910379877 941604670 137284885 920926357 482958256 760469117 111636662 266111749 345978413 937923314 674745869 997438042 370052855 881209159 724358858 742797771 277567409 767469813 569536804 576761619 105792578 655999481 575555070 849452750 951061742 955713011 228349048 819895013 550664217 871589889 236213035 989367672 626624836 773322256 14882339 756633099 272535749 435607985 770528862 940196499 435614242 839671375 244040475 791377403 90085434 509898216 140090055 858575954 720061316 929040914 960951310 991688309 146727936 242464263 191676125 792006832 862842089 900929290 939985759 973876913 614691708 655398021 616180638 972584658 224610806 910594983 275586480 355037210 237708638 536464204 958442409 992512951 149850975 684302840 422758468 775195952 560870606 893595848 930945057 981953336 993726833 999704481 720901801 723215136 158193140 677017734 819949045 922838060 172988394 610242551 634070580 972257179 945382896 970727795 294397218 489905720 425850356 458658301 973818515 999984755 409966156 755997863 35987756 548150944 900233584 941931606 273352073 523807769 964971995 974918977 683223279 694869977 149443115 431384065 241195826 878852006 602222717 693619158 495765999 784849224 854754169 988332785 238260110 333170981 785423534 980194307 121822629 676430787 656701978 773850202 969415981 971047405 105696502 798378038 535834668 851047480 244477830 887491840 102274161 438334650 361904735 802776795 235364327 535483646 434071043 493187240 281312189 526828294 737442475 890358799 700839900 847244227 873982332 999748811 961171626 979238158 487751400 593244089 219970076 525464178 982816615 994363240 838162449 842921560 264556899 695922697 165469387 544938114 506447700 789329405 450983145 975718430 169161058 538700650 767604970 778910539 732997080 931227584 388218040 840466303 682449811 808778834 170157385 415036542 36814796 243361529 40362047 802278559 923319608 969215366 424160145 535495337 838145312 866916073 648004116 714836903 366555625 883453616 536870091 577761910 653848239 698384562 678358705 861827107 109106643 489134690 621832541 662445129 428073388 670326808 215732806 349753380 940135967 949036631 609730331 970993614 747392567 968738597 577585950 910484440 773171530 810920907 687896239 930952595 904522997 932372317 659985728 905404312 304219085 563022656 171487007 844364486 364676911 977392192 299593808 950011875 121065428 730848575 704865919 840585419 896157895 958720153 370820776 766309911 444470267 574865754 668638427 881725960 920624568 961503107 705137448 779846758 397141712 977964201 108306902 930207612 256087560 542200948 421318299 463832006 560801242 799875421 921099234 985974612 766101419 793314568 828885623 929238989 894191715 958921714 174894073 467833511 893579626 942383480 470403014 957234158 724080242 976298574 181247957 503211902 399246013 601597808 79999514 261439526 887943004 932137751 450886948 809281049 672502269 922548473 882341596 989312235 561110556 877662267 584822751 674918603 710934273 749578088 592197808 607997925 328740619 662840200 626465861 924036656 287399462 461147339 946980908 952270296 84093994 751564128 17889403 439166828 185233096 746047620 421511472 957514311 30598682 349426379 98852362 326864354 972043585 988659026 294647989 973315791 476875311 702506029 299054826 777023583 175094693 361231146 759885990 878707871 397775990 454647390 954665433 987199754 888036532 952933785 31490751 572088012 147655005 587887947 219088019 312109786 42480015 879702584 169063813 799945009 111982460 625978377 336293576 876933991 592090740 687588076 717649862 934003663 878615410 911827603 979043119 988637656 565095953 858599129 116912525 780033661 656309738 853981999 196010787 334384546 939893777 985593960 549648705 670585672 678217085 835417923 690582809 862409971 179283591 850303525 658788408 782628911 598266204 827968924 519063312 948748601 383324700 527494227 378900428 423218096 58961493 928206144 450036692 976769113 291757009 653585008 556893508 711267095 237220528 382142198 931273061 951027241 472996514 539804503 106233002 321537040 722913506 740832893 117040452 329013399 287527995 550140010 515435104 706882061 165441913 317572391 372074757 853086401 660691263 983497923 896554630 904128051 960976310 994431324 562035554 960789399 43059778 883621586 537645158 609428713 971648652 999123014 467416472 554114260 383323475 578513609 904783912 916889861 592570460 825362264 962779363 997774654 919511718 947690758 744256100 909104390 555088154 620573059 572332921 901141626 140873514 931030968 415791693 877742577 141968368 588178034 37401089 315048629 876281886 928247375 361451564 936804030 961046484 981451313 231698711 592047861 595647445 737427740 865819130 957248083 199327979 919651205 806293622 874615598 781126178 887010285 879967484 902295159 866322145 884074827 240335794 512140679 571794017 813256187 258760654 720707536 5172154 672196886 729173093 799849714 89819115 247073228 834691221 954860548 943466923 945501992 330825453 625554313 219974008 534643819 916604205 930496404 129911552 381752088 617426275 702403827 255617409 806845231 803139762 862070631 762630265 770486942 427582599 679766810 628075612 690313369 234554008 667430403 789498946 890149265 280326160 900675572 740669444 863261278 644293158 647095922 96988381 180703457 38844712 621192579 845155261 887496698 777076205 952624378 393892248 869713803 914140292 991089217 717579146 945011162 151200146 295848500 856041994 984403275 45653336 94670911 691797880 878983119 376788222 954080083 611894259 630125300 935319764 966379575 771029532 870389938 226383731 753650544 153120233 634720033 237948594 780807876 521491132 998130826 383344827 917595160 998784314 999023665 660249818 838975032 549084432 802782021 783916255 819142349 612634040 755648321 165881085 805142509 374227936 889013839 657267737 918235820 807014752 928733773 474666202 601240960 640853375 766686171 860215979 962835071 444046159 479894041 560027385 951472733 214056297 248196069 201408178 706643471 422557230 839860692 590219473 747568505 809790438 932565083 539082121 884263698 223197979 694020603 307742484 751537352 884589504 925072257 913914985 917795772 71840053 943735475 796775163 965528748 868118066 971876020 224107267 987578894 228955561 377549556 81188478 520601582 20811882 186750951 594947609 818324101 195518761 461998420 261127898 395858622 275496064 573966699 131182663 211921906 217894225 242558938 308145981 322210229 194939513 534003378 577937545 820603916 883894077 953224066 842031617 897778459 202234434 484840796 930222105 948613287 132709673 704250743 787772844 873123595 871669381 960093427 664370415 943833766 916717008 998089931 68997299 818330917 770913591 832332488 124286188 373282570 778630665 856046543 133388196 666573660 962066902 976371673 562663324 701571752 181482102 675461082 450705244 658801665 710742520 812068369 166148312 679249720 402281906 836187476 239212879 240684075 780665675 811121662 570980439 780378119 376841098 521437477 165818517 692472686 785621659 792266267 906418044 933698309 87569558 370729980 321298626 894769535 892882832 963254144 574119848 730562031 522956428 681486100 566116899 871107354 37869100 704637288 460470982 656938463 967736020 976879021 294225437 653100028 582093353 954295325 653216368 773968252 46660206 129915217 269321221 686749660 777181190 918795190 41173369 761617568 761527060 881485446 678706532 972355729 623418763 753616429 429153103 634158888 207004382 555384343 868983970 951780229 921529203 977752334 212262355 713762884 56238519 367458120 156405549 919647262 199148752 274961544 908950721 913728381 788855828 948610538 317958708 386290510 763529507 899809463 91091685 148899436 633622892 995564982 208866194 994484765 873335977 908305453 135133142 562330834 990019068 998411943 137050900 820843913 157901086 924704796 973984081 995826227 515165082 608423126 638416846 917581210 513425953 949497894 391300771 472488010 953489278 972218880 857101282 866300795 701618783 864806453 852921757 929350827 343870674 536764726 199711157 944789803 662664227 897341255 24324899 744622744 389254725 501610076 912875575 987054631 480734607 564419841 444246452 894418188 567700482 955320406 362490145 494558840 537499635 860103184 77152972 562062921 129230491 166818864 817289084 847355711 814700984 944077081 964375837 970934553 103038441 311207845 969904658 999511526 495927556 502830472 500174072 833811868 509233283 703499837 508309833 609466390 449005424 995441577 857262693 911435568 187623463 910723390 781671020 877974707 872056177 936830092 31818039 775697455 766965085 887267397 359254802 614322005 326307850 607074102 489328709 649340474 984090112 994416206 350485419 501990353 607076477 633063294 805401202 882053795 882128870 907400061 373455645 649573319 568176286 683109455 997336297 998138738 881685162 918581543 293346156 401271188 500326283 986706887 895957777 936096052 637870899 905311116 792307713 946142811 211125051 722910383 256548159 901153255 634303728 836802979 51496930 461848360 90748536 93821137 763169575 942574659 687909236 929376964 685039164 745594800 715629410 811198435 461381116 749080669 993445734 999253057 838392228 956132628 457774461 818782831 711191966 774821937 741122481 944090303 742209021 832443056 110092615 133296566 407832871 718750893 76849863 140800679 989640873 998521688 989286225 995590080 280269482 600713679 580946385 590177265 7768433 853556484 47584288 351852300 684917979 769807418 587733403 939577615 663402339 788528048 272283925 858031933 15867704 622968030 624715068 628171433 562191523 669583014 237569424 439718369 828966140 952102883 978339439 993547614 171879925 361229259 245053236 527290619 283354525 545834433 12791731 184555314 437634857 744425171 969852561 980328971 721576768 888088828 399872589 437535360 359725039 359930565 998576309 999790559 323092767 567443146 163236960 402104683 897157904 994613342 229511223 462186444 995229351 997700543 834583983 997295865 80210982 175452823 47559273 526341840 384658925 899751616 917149320 969181324 881107542 898994564 458574974 565854948 426134906 990594023 691080833 817691346 589768527 776868563 891475639 999512972 195366068 922587970 880910821 885049518 562506972 605961148 766419230 903289556 691536738 721565381 532141133 684933214 884910098 923592580 153314254 708663896 430167574 491536153 593507493 943504397 738967022 931555475 939642922 984114133 231582312 278832228 119869076 168498655 542356793 739600782 727428680 864104513 95899194 981253553 983100528 990276144 806407668 967261163 406230533 420103627 7782359 822408175 233203233 676961180 514350119 996961637 170329726 814759123 264529605 764018313 308498154 380712497 462383942 533438961 271736449 845339101 960372470 987907128 477195434 704204590 226143821 604877585 225600033 755094768 667931111 840759989 241161921 449184849 189747092 646596465 849534257 959980017 66224714 563932183 803168714 839859632 676499017 736242483 903420496 922197747 753087941 912671280 563427528 645960361 142870613 722167386 848208871 971036970 572854990 734375842 685356368 715226666 364519460 894766527 223989222 450666323 510690433 955967188 80677388 767061101 562057276 831026938 649395347 927440078 731260029 938907357 686564640 884928068 726324582 796043735 608258188 627363931 347700489 953444984 310888999 453456653 694046131 960365555 442356012 631713719 714991881 798423279 322921709 813576831 223571792 661355564 479705372 891409008 719184171 988502084 185784967 994039237 201161769 740153977 882897183 959475560 568856769 934349304 581803036 882336418 815500501 909130913 337056716 415611243 400239270 910815726 761068215 891756441 146433219 838157670 638656867 864838710 363526032 650393777 775862868 975772742 81311902 96808891 419984408 534034444 217090174 335507902 277663072 838516876 117391957 447710977 616602073 919951446 686466632 938147341 645094185 869486814 406386838 525046109 696401939 730224824 82172030 343506712 295687100 883433480 94556923 387380379 840405976 913485894 859677520 891048259 856140512 942108638 899078135 972859601 936613051 949395172 313041955 546837117 225656497 259997915 619502397 624713556 270023249 748246259 282521438 759186031 261735502 715063368 472073529 524375736 394097503 794050757 618598270 900774636 509452360 809425822 944663881 992034475 96205581 944150892 717897049 854363338 841519857 853976477 812533793 847126077 900268606 926841822 310480758 570279032 566342688 745069801 185229450 264867059 572655710 589434907 593659367 845752520 878621510 909832237 710665323 925691187 633730258 648577258 478851881 481875375 605774749 663517641 431343921 680050987 227376519 379023368 749487698 950690803 523810307 837434947 993428642 996427271 929887554 966426334 944672212 953951525 447696426 465266749 878202677 984949649 381698450 781497617 635505849 984776934 58075273 542986653 66515423 261253667 410001679 694744249 951605757 958752761 755128443 975958455 943294360 976343816 658258692 821939055 466198999 567697638 382748952 934396482 625641788 941790278 884038246 956159317 629693340 940426586 858619741 916489181 3019477 137284219 303045711 715790703 214781727 342407324 745962192 918395114 105543708 674891808 376320670 920021498 705639288 857296555 271339365 742548070 974443376 995161512 444020336 814981821 16915857 898326393 991357448 993437037 433459713 721146577 220779496 635855875 557924392 658706469 974018140 999768879 472090815 757387972 950428910 966708944 900152403 903433546 583233642 664492500 222681533 305905637 339737863 407878196 796413643 815068207 635018130 927525939 65668279 757219768 263477038 699805225 720602051 806691617 278600335 773597326 276060691 878053160 265249902 995982307 292328687 536553344 162647118 427524638 992859007 995434812 316547408 799361822 613159899 929496640 517869465 758811329 888232019 949507734 266264329 514623510 877574962 945329086 785596069 849509193 447297528 454686190 925897132 975952291 286773563 757297431 800698528 959549279 292474274 994378206 702820423 856302746 495897174 635560380 346229142 562775048 697558342 880658508 202582913 395274531 838099700 985996716 410915846 854188424 252855168 707176236 703426536 999733641 3098148 994002822 801147332 923364344 532081693 647853504 444979809 514353545 345871165 433139476 352341264 500121137 557540507 800455997 654652012 667166026 350363143 440161471 28706312 728721844 970343044 976641093 220730698 364195091 137730377 411000632 160679254 891364367 711245676 783465473 480300159 932197439 159563178 952928342 370111000 777524818 386327526 704992351 998439056 999787352 117260336 671487307 183297558 373370917 311271594 686882870 639122024 847596990 517449856 908030994 505170120 955360232 900040451 906569908 849867282 854163280 651993895 914526600 382287884 533220681 813492836 980627573 562053570 563013168 38484621 385914013 677375268 959282978 734997126 873700293 200748461 524925238 920917037 984387371 880537866 926409225 586818131 983651328 594747397 848176920 742003696 979573631 123761726 416235162 56294487 893874236 776046977 885810020 694919245 931006689 549714517 994170532 62896983 178655157 517127937 776179700 187278026 785564660 327516350 862514836 670182803 816389892 15538162 889972212 661146463 701459165 317608218 639915342 253946702 341273038 198429897 586833604 940090321 993603419 636361089 728755129 287473702 593663612 151556906 327739564 448996676 983687435 507008059 585211612 750276676 768751119 613679547 826895361 765144197 798251169 569169789 665264103 343681549 878410924 716002812 733987442 765053498 787341403 479378898 670347740 691722778 989966049 809018 699952320 53696947 685690059 581594705 764905129 9626498 349658407 875568247 938971950 699840995 891181436 283345842 966429478 626106678 966049963 886761856 982545673 640235872 743548797 749310179 864675039 931831444 951672198 531381830 745221384 579986664 949931323 90233707 696788737 254521697 895710779 659455168 749752872 986466394 999052680 17407786 799134214 839739756 852607711 856113406 967568957 989367562 993884846 569807870 909824164 280441453 747971067 374537205 950638195 93349310 350116508 834896767 981580380 943422165 944551563 399828347 950189209 154433204 864379698 42893805 541428838 184524102 893037574 540000483 577323174 86990560 223592097 760383398 869509447 494597169 954613708 276086143 551275264 573607554 993077149 928891434 956331234 59155978 778685017 769911821 998295860 911603195 972605601 565112064 809140228 139270776 403688880 456778098 928740349 484885867 786086334 987375311 988399603 503181410 923987358 963055485 991265066 393192742 586088002 963962224 980573336 482987552 551694015 867964114 900022503 679529843 978430669 710947903 777360743 997725306 999628624 427753342 447031812 853515125 886459923 622021102 867986603 112065693 840009544 10848644 631547854 673555972 944415448 126592968 965530154 404449608 824754979 504859247 987456527 81158065 448107793 124675092 425687425 23521583 298137460 782952192 913382750 372700157 517784338 424392308 962680102 725013953 962743656 709095573 929018004 290673696 977401917 731256846 910378416 838067253 906589918 650934558 690238119 118294694 320791223 38024795 680642626 529966928 625109558 702694414 706990208 382020406 620059664 321042290 417592773 741361723 753288740 91822440 580969842 75589108 542369336 945423658 955236864 472209493 567291224 102780278 356373383 611135914 685556727 36291335 475955203 338461239 607523917 568748406 823058083 613677057 836606262 916671212 935587605 584483532 702247400 20718512 51525326 882404429 988598291 611224145 983400637 45061182 179317032 372105968 762115983 228220346 377411414 971211577 972055500 594395138 779253440 884822766 895819299 853866961 945997440 868893265 997332598 430652051 740248881 230710483 468682190 848690591 970789686 953831068 981192359 833090721 945185905 591643578 919640549 733385088 963362951 94250744 255656135 838082179 969226732 309088363 733938036 844690144 929091137 911465591 988779613 473272679 478598565 595499225 977564357 843441539 845994827 815500667 842269426 621325007 801379486 541287346 664288913 149905291 422897936 156305517 948497817 869158567 883737425 14461946 523850769 390236007 403364666 142436253 956992349 481704972 774007436 887777208 902077738 659799434 878887804 929489756 943800765 367957910 369055243 285162157 525183340 948033485 966349116 133126014 389416484 547373868 787429295 920866762 962883271 456859217 658555068 881406950 902266981 913957029 927138021 670293479 720573902 667687035 873724842 966513866 980361912 132383225 754358913 606776980 770834114 925080834 926334185 932164141 990402607 439991984 809836308 14013273 808736363 200802374 278974422 425928982 585693619 194298336 274635231 175377015 946205353 434171500 785397230 879543216 929897588 321882692 471573082 374571240 422654222 380661913 461987888 60832698 351894726 668535414 722047950 536692647 834496114 964532440 976846081 966560303 988586794 301682536 747346953 921236258 945065606 145126290 164435779 25238308 601790636 699030797 863431644 398232875 735724962 715796072 987154066 242668607 389711002 122427694 702630404 565155353 929440349 893098671 940840356 583251886 744015088 571269527 915566098 695252454 966520815 968031155 986069908 213164207 595601941 708334912 953046785 183031020 642980463 853800966 993197206 514048046 845859069 255590039 334741106 118347325 913708923 356855995 830884852 222454303 493334901 204736439 531600742 711417184 815169424 744668084 970803714 147207793 648593498 349180184 501168687 265555014 425984254 621183100 909695563 453919894 514460597 773707987 797065169 382473639 652468959 84150486 529494246 597374333 820739943 856372729 998555779 973743659 986741640 329230710 399369806 369925643 485748686 476623215 986738636 929048417 937257420 762702165 934578919 165483004 460857174 455087954 517577336 220467667 909871598 637232538 719738852 793147507 870486763 894148711 967132994 903503112 924613881 39304045 238040250 430233008 656762001 738390231 913458431 404286197 784848312 898222599 976005161 223027064 803803045 127408800 819550266 163018312 754193183 170745577 747224676 519461111 909995118 484486822 927709997 157572664 299004278 184706337 900387111 11409521 285947377 700721916 897160585 585210489 725389089 597941673 947324304 156317520 787564610 804758117 869597260 169068302 792898042 964505442 974155791 532551487 909248844 165237953 836844974 591031892 898053802 443960832 529885008 724405633 725547890 438300085 592995184 591078618 598625742 852727073 962969030 77207482 355301938 544226135 913933542 548485966 728933906 64561819 68199346 591652483 782612816 437489715 972052832 980686529 985532875 233129497 359278042 211138047 607151367 601644354 734946268 412439745 542517315 39070374 881600008 659115932 917983417 217362706 854988581 612330364 946663316 212987249 420279673 648870835 987362392 475655698 543720932 403315545 466836343 646837535 961703671 466298944 750169928 560931705 854498482 848499324 864355631 749722954 863407018 202390366 424860886 499007536 797703907 11658083 409252529 767502265 857342678 525310564 954950609 429068666 437171550 230711922 767208396 57654159 265731216 453537609 854695350 797689029 923850092 779433590 971538479 805349687 904622840 351700984 890720998 655582479 925094422 280370222 618017876 800026773 844782142 819489759 995997803 979439764 994559876 440105152 613476226 255260417 341203739 157960759 188587220 291413330 329317013 694054251 746683083 258361604 835464912 626181189 739447423 897388538 903527662 417708139 860519223 298590218 903812974 70216393 758586231 278566623 821807589 340050523 790632754 948208135 965641839 441007240 939329538 938415351 942204681 284510602 402114082 960417508 991238363 426997264 926500615 135003471 909102720 160815697 270574076 857229786 986017630 491661461 735224765 79860017 230554377 173559752 490184361 161613146 354114549 88143045 753144652 380790691 424421417 608407149 660593482 896339549 967817490 930698887 976339592 842623055 857626168 56062035 494727340 520368514 706338040 24559004 317880533 799488810 845332084 28416461 553595537 240883889 707076644 817515153 828927033 475837667 701591545 942653871 970077892 30626978 418195736 743528384 760810867 792077269 895619768 359004125 523666615 872050308 929013385 260421027 651210866 351558625 850700402 885100321 907452665 371625295 677949570 803708458 813290065 36974031 529997546 714329078 771104898 891539537 951071089 299580721 756283043 227276830 429057166 827005451 842672518 765886570 939892029 102463401 964661439 341165710 685551826 932369459 963658527 118809565 671962443 909688488 944290503 247724125 273478889 40635185 824884473 683487227 727342833 819659608 978501565 222836582 993679233 474161138 698711009 366268301 828151304 272267444 504006385 924462057 994197517 726543059 869400886 475428570 576843694 88635729 573210159 100543642 791155887 38522709 273193270 613410127 702215395 911150491 928109679 300947412 479166144 371755631 716284865 233994290 672376568 421320976 797649847 5139984 382700674 597709645 717045298 738357411 892239736 167885876 475653673 755764226 871485175 413988063 686313719 352553266 541437686 980487177 996633299 397922758 556462328 244813042 887865818 449762497 536768884 782576428 977723690 858300786 894305389 625721384 676524560 38798742 775454865 119322752 383980481 575053488 897842878 248701070 473745103 187602476 604437533 335057805 551215752 117604419 225785400 504479379 941555671 446595183 662542325 800524565 938892142 193895413 520656785 77306949 384538552 665396629 832142156 266439766 321651672 368139260 937824156 511055932 927195358 768158206 829455921 376213871 866981426 786329978 849880088 621096718 912999552 70846552 190051903 599046304 853211163 592260724 872615838 409800365 700563591 519796730 897717612 516601316 835662579 17561877 832704919 318303579 688579797 742777242 863695915 502413838 609345545 407130748 540699541 93773773 518904435 389123355 541431461 526145191 617465092 320339552 594895234 908285799 990144486 175082426 835322131 365889974 647244607 886670948 999380622 977871335 984836038 738338111 800997973 985201003 986857286 671950925 713334711 645052860 775445123 886481663 887443675 860291508 913810778 907566510 920771863 995162154 996263606 961511851 981461034 211723702 611209992 655457690 705270235 428887372 450737749 269457639 531677689 845330580 889975206 410252237 921842408 857774119 888634858 207953756 880027785 605444458 959208573 928184083 929662767 463251923 603030929 307353204 759891627 780839274 830102634 249017851 672891026 855023162 899807348 398359125 971922621 863339245 888568138 558865262 732717487 386859767 994003215 867384082 931926993 946827349 994519504 649693141 755603401 603623594 683377946 16803951 520228041 534807584 659858094 773886072 897360038 693187134 792491779 295457583 855216693 143419734 677611110 578839123 895043786 95631048 338529719 701181537 761907699 860602455 891139570 293314522 497532871 621479268 707710608 428409472 471756408 105755825 974291421 491517123 665247873 856928238 895950295 150401031 694753954 313838193 742328413 917252133 958741337 861073245 894202760 530054853 891089156 643340826 960204432 28431680 153970087 328256784 565105545 265489252 835830997 657605429 909944532 185068824 379454431 980248847 999597522 227309862 557408197 114729314 856162253 308517028 830861114 923496116 991027966 281408570 571813482 248016376 303338289 275145179 681736305 455291534 729285412 182384232 211453386 240858253 755517705 173509639 312401662 481223899 649679307 712909717 825182793 104898763 638778450 928710368 990462412 954263211 973557397 284991950 521517125 579279045 670815045 884887783 998170505 783953987 984822074 582931962 998340687 623117595 905651567 951560231 971759201 739978706 757753748 978340403 982877904 238079885 631726606 129680140 326855992 133572104 862703933 194113144 465599569 992365033 993336282 759092012 844844324 985777213 986541292 960470974 974264401 636998605 971381111 459018803 897302621 944520506 972546858 518002719 829477716 479711086 684903094 477244042 972960980 933223757 975698002 667585427 778472680 496134244 861437788 930544078 979658110 305682888 309091738 350100142 552044193 419868484 742019676 744056105 858877165 485053895 507720271 400294805 919075902 876753782 895882406 538249277 576041033 755126348 889627978 415472763 685182754 917234808 991939334 76781973 858439777 701289881 918600928 681170947 993383429 454537073 967177512 717494514 876054476 372816987 806854940 420942160 581321725 22501319 739506128 965783888 981755686 266035657 474651990 883230167 887334075 423358663 616991235 163165010 206345569 379710493 802058315 844167271 954367253 887353167 919450681 122826852 412771161 532286642 750412548 785554262 939573951 437252104 455354123 454258293 600037486 258532991 699425462 325232450 386361609 808749293 876397313 769580128 944931747 281991922 781827243 607665802 822512359 248178671 396662084 7031654 528333116 222558191 411165623 717803832 842889086 38404160 571329319 40932282 704714761 469431618 687518278 181878537 755884789 263621849 278600854 826817804 987689289 223383679 535797110 104604029 264449599 900419136 907268206 26744776 841932087 442729385 745610962 108359713 391100892 215637005 578016450 73085943 742855743 588150181 835870662 656590810 867818841 544737790 592268866 553326111 837101964 804828931 873921658 427229427 679125975 149592104 611866589 79139326 834807192 229291425 594183325 586232888 684670512 898706453 909004565 87214678 485960017 752194507 785622520 36052748 515010966 253222860 554868489 941686336 997272457 431040404 696929882 664169 705233323 727820995 765844240 985658184 986509074 262770964 572154407 9189183 255408990 787230262 966347338 402850212 901908726 994777251 997596585 915091474 970923197 365069460 809924049 974653810 992926198 900894845 907241994 363354473 653785366 509573302 886168989 598632097 966929132 519595334 826002431 610251363 996878200 916490062 963502355 394447833 686444492 285659116 962710657 401496121 727450319 992228923 993478468 983293196 997426799 944925076 980818717 666668167 874354697 283523586 303596788 467830968 605464144 346848308 820881969 15193791 311758765 721630662 728193351 8882860 766996164 78558430 947701528 952093352 973419849 465888575 839945888 726224812 952637793 996603397 997888615 356803797 849803793 953058862 990021793 803533751 849801302 167250685 641289801 994276872 995678503 772563902 881985234 393351734 932295335 700883620 895999509 142378041 589930087 191569843 541320459 23849911 650638096 566610001 715123019 103525388 114685688 431009176 957746872 638032158 878858089 456704433 821472685 490648396 988133791 413930239 614561284 830184084 879133871 323226103 985255830 953174727 963107994 47390183 392836759 927900027 940797624 652033829 827229035 641267083 750711238 793222440 983996870 80538090 659878530 888726876 889287881 890897249 893704464 230794768 723602712 858912488 860233239 934564709 982826726 885062248 972218657 966356654 973345143 745472871 764612972 819832866 936928449 373269706 637248703 483419276 488567896 200164967 306360081 879482179 966828888 861582384 935649993 410358418 793347588 773837617 864306417 370255342 472786554 60037902 779600458 816696414 980989571 287671572 565850194 918556923 948662073 631583321 796064523 112089847 792833455 460761766 638863793 479666660 731630261 556336547 976368758 741140173 948080596 688619773 975352344 211962384 335557833 546882801 558117625 862964352 960678928 385692634 883875477 408933057 917834373 626757333 821774272 414858390 987327910 295059238 298762335 480369105 992194021 495325526 622660706 463550039 828138830 993436431 994590184 344235699 686840400 580538276 674048648 688957962 701178344 925697379 959068639 353133735 821152646 129704156 845316643 662044508 881775423 245021277 280399439 236298897 300747485 583658377 984266020 451362964 706815353 95900129 530401250 204444067 485754044 344958652 968745180 349422203 793066246 488176162 494241949 506298920 562763440 611823676 759120638 693625222 780505366 33481634 250552405 628240619 885844242 217080083 371566459 473734803 511615262 518545007 611760032 897476710 953154739 960467263 994957527 805904526 940512276 463300436 505975155 804375893 832660091 594053213 795480834 77105789 369685194 621689611 912274950 617683441 726849983 666010198 891258697 729595971 802620283 168635921 394426929 328403678 829900164 430466751 487581889 658965830 850537462 140667615 470064322 167814338 238952138 178804632 400344123 726437869 738824176 216454465 578672967 628934063 763474171 356398695 669891025 134595353 275111911 878735732 959564277 811280391 891783447 120032593 879466759 239404657 449763646 874918797 896015921 715955124 905936524 248776161 618101117 518074618 623411924 230686533 663195162 445828880 578091975 360138994 953558243 205067217 301010270 981319803 997321987 15399831 889857132 512011867 692140375 919142739 975031735 202077706 651219052 791007898 847461799 174309497 857321775 489796306 977095829 457192196 703115837 912455254 919594340 823181990 846021627 453355751 843237613 427883948 581521301 351989529 932355680 909471081 916835553 724002362 827913133 546786612 754432541 231671291 509260269 921898445 969080011 539859834 608392528 533807484 858911131 273386576 411180117 351696908 736037371 283442788 836229138 171732358 212724193 834451397 975849537 353435597 567943212 265210537 543054053 295453206 451420602 549471708 754498486 456391002 628986919 799806809 951657946 44561617 526983823 497560071 537379963 969950179 995546972 574929591 849263847 849353809 884338566 761247310 929053893 121814838 750478177 449888657 789770990 784910748 817468940 356856962 516258041 424362052 668321702 9459975 575082026 537105866 971882761 427534632 949228236 628233617 734300773 407455083 790552491 557652600 813283165 923276717 942286978 688435688 798235149 119466692 564748573 834122758 861933054 191805959 271727946 506712661 688838368 824249211 854798072 814050115 948909513 21880501 455801490 186812655 797814555 152298841 861081635 809709791 851023156 146563187 295499290 675799097 863707096 159784592 477165293 15394105 532653638 591902223 695840521 111161923 165108990 18840616 962078960 840168932 954641128 141460833 226631904 168863194 345947248 210394482 219608405 789342227 984443240 883791372 953717230 738208199 954837124 786102140 903616396 999618983 999693417 306724177 827959294 815108889 835215177 880079938 995488189 201096834 751714671 885525899 924554832 746744084 807554972 43842006 94109292 712640837 977547849 484500736 679620122 517843638 954465054 117858048 576226430 792991234 831822856 253462343 475717195 230848851 944713823 420057370 673792291 921484447 985497504 70903840 176068143 794990790 943987342 749920933 954190510 966928259 981713004 63703428 303582615 932883304 992637375 912369568 925367072 450480943 843478938 4870844 986353875 611619083 840906992 619637902 728684044 809434359 831989497 154058977 453312390 452233463 638838892 214651880 631630850 884922867 892911768 358495126 496811984 227011562 862993352 761775576 957854634 828934135 914882369 236639768 366466630 250272248 975613449 981533327 991717143 935191795 997599086 474013293 723030908 710270195 752903505 641015127 703316748 596823649 626288984 641944788 975839813 972574591 979340528 331093386 809610645 277259635 861210579 642948798 733407498 648367962 891833386 854016878 901763786 954190426 992993566 949730931 985418561 575532607 908140946 873485993 906051070 556573990 891203014 161808000 488641471 318038890 828627509 349714067 972163759 186257979 958218645 227654685 285313103 177720529 184800126 993672457 998355161 160893546 380755246 66033130 945728808 140526417 787775103 460636259 646441965 602729088 607396558 325347478 469416485 313831698 838931048 33142229 299598088 45210466 343940504 377453357 835093012 687173473 924402208 453525668 524013209 644187156 966459084 104134334 397932296 587338563 806632117 784326949 997240154 591132460 774525076 819702116 834106724 814237313 832847067 626263312 939477290 664075503 885263309 563131330 693388965 875284401 954735479 34072803 614799210 252589061 927168852 835068242 930891886 456421707 633514404 719795289 979866588 627405451 971977881 743375063 989457960 581088009 672201106 927182832 965762920 474924559 615348805 672342631 912685637 792794878 992119200 923921047 925525008 873809125 927939648 601162674 682230525 596909247 643148156 726286492 845157495 367834213 704531002 482426844 542592370 548225193 821094535 767324958 882333056 526272800 542082304 565526298 625147628 264048667 676932016 871752271 910080279 594994481 672246559 103211444 786208000 28855292 914441153 440346705 558965690 818899657 962188874 23572865 439068808 94730724 815631157 598275162 905556231 850473338 871195091 420798075 515452775 139639828 482126555 240466503 429154732 118419517 592822911 578992929 941871265 876876893 995939353 781732674 900512579 256776063 740802565 403906048 904566287 18296577 882292696 564474224 575153526 446055093 554175185 481183275 767162241 249231478 329539990 429262025 925436909 539269 201333251 594911118 909158818 713750039 801706190 989172530 993502905 532732379 769445902 616009687 644739600 865816929 951465712 628791644 727108997 858411611 879664487 14663322 328807218 273985577 707637764 543206257 996758182 760426226 984112156 836978596 917756209 257323727 289801511 479287004 494872521 612895390 646154690 23165995 461174612 375008458 602038190 892409732 975254134 218366088 713942269 515592535 920781708 121373107 712814780 995918030 999334143 823233019 880512189 647850246 934810134 612479782 842561275 17684610 316548677 177349019 808947920 61196431 186904950 345553786 697525152 56637989 669361354 295257605 348104885 797571836 972760987 683441125 719693646 977232159 981949335 953281578 999714158 517190283 873796145 282385937 470167552 365644014 618895787 775378648 782579248 840217992 954665954 514800811 750632613 157071863 321893018 749049007 945427110 195526442 461004216 929695990 934684029 458783500 723913591 862397016 994429433 890607364 913376659 532843830 700592887 141880888 624995326 84692966 586583539 585802004 933399209 75702813 385787135 969688878 988866586 282227934 446405818 253809653 805419705 297616612 949019196 513904701 544159694 917761876 965453073 142703534 574415599 906219469 922534457 662505535 667691967 501972645 945298572 351021556 999051644 684982933 819354706 272960489 313735067 283667927 571393588 329343763 372212249 383010659 984419041 406229568 906712303 388191114 728883644 429751951 720728513 771672282 862584693 618627731 816103512 837304503 870186857 826187415 970731465 521728384 555845538 88028712 451391487 179364581 739415294 581909212 799887094 899925723 913308133 654351841 711669115 99036425 148855836 793806970 937918410 45162410 701885237 106477646 245726261 804487951 907145435 994342233 995367614 341416738 784535065 625600702 926009874 293382228 530642625 126650876 818779854 366033158 842959192 362148612 741508136 45148424 869401527 661435167 864822870 825386134 891940155 425089512 999346438 835587328 902116249 648721464 938765120 762694491 959068583 405299798 961590106 333149828 983777325 98405719 510064360 566799110 577618914 22221634 651298431 807829723 910845284 746151698 797291789 72147889 811625865 469226639 955790236 719622661 906912137 743242260 947760129 103817435 873467175 403135844 956388868 830560507 867006417 28717370 542528641 654681474 919423648 979210740 995835440 489898203 835148019 49496421 460472083 44613524 911686094 862961573 912799538 44641473 601368399 620981000 759198688 198601015 435724960 375891900 700235828 652982181 759231710 532351938 834504612 122557204 993218239 894213273 894669042 598215728 664938004 141197778 331186263 144510553 941154047 217553867 619037815 18559378 135063782 309961408 404117377 713352544 941201735 809202227 955229660 378119518 641702090 658676110 724046394 871506373 938834158 239878800 845307837 75513509 425523264 464899989 899405755 435922975 825215640 887677702 910694858 211610533 526183043 909942570 942632931 44182279 523271251 517610871 818382912 431206292 497296328 506496564 991319888 710265854 714965055 924467392 931648648 600747127 900280245 373372651 872118475 218118990 892685948 705620478 751682349 633714956 795622512 497321895 780664755 123086596 259507799 202218557 844329924 501802177 977688944 739605602 838409454 621975670 652615711 923910318 980718791 441417774 722331809 951154132 952087901 72908612 238750870 130611725 877534150 714525129 822428044 940153767 946624123 652442309 955618571 132015907 796000966 131386344 683275512 51901849 658224171 110042149 485695972 64285151 294679691 767945975 837671955 11403380 121285253 25882743 200459005 100334059 196828402 132172944 558614067 647721950 819926137 639434129 693638231 102909992 132338168 845825956 865650092 689214699 912261086 141831416 372238187 29086724 678420798 11177207 750062419 672675253 736042616 172076983 706538101 763707365 890307823 747772726 914904667 609992871 969284729 34690515 885896039 287586409 476711127 853185337 881917608 16100510 823661703 814113940 963084386 141326152 242813776 699588449 876059343 83085558 597961955 444976142 917321146 974302279 996324260 266828236 953913837 176347150 429973374 131737024 982321927 804651189 893414824 770185495 835854743 128260114 215807740 869588588 962723130 84659108 854164054 733378879 997250924 677239746 784571833 819466659 991206634 416668444 902907698 562249807 709242936 805284474 988095523 346523271 926392236 378209237 624213527 323943474 647907781 304211733 531214124 442459734 496672693 338613373 561126881 582082806 942280108 433695870 546225656 99754873 112421622 317805917 506708541 459488219 994683359 735601388 819708326 130280105 824601238 351676329 389040849 456754522 781724827 776681610 859951949 449827403 770233632 391803718 924478989 248681862 618479783 300700512 832667914 749672682 773234345 478175254 556212666 962985539 967349187 849494448 855913666 775223374 953068717 5818996 586208579 729944008 970433897 991531876 994991803 441315512 470048003 27949958 497072266 50972354 457707656 430734198 722602336 115599776 409176439 688968321 756897358 996930931 998880497 749677896 940610564 125215089 883440588 244313235 503393979 253099447 845477318 937715071 971690138 813956636 958585850 490061120 516276714 83149281 262022895 990921542 999492391 341303544 425567793 211168595 823031814 283863355 428988284 787644182 883527014 798503517 908729483 329203011 980591436 406892373 991470276 264873542 963489183 183771717 895293533 476968248 929481915 927851315 980167871 945559948 959318312 335530537 474219542 545207489 909314431 600147710 849203406 320231278 777111696 442140940 783428289 61281461 942633787 798180623 898823406 422243792 754442562 21951562 635928234 296164353 861472015 798842563 927552697 424633036 477219749 53506645 493363060 755705374 759379160 119223995 749389883 638087817 942575136 575664471 630974190 300209106 763536303 834994208 885933578 306536513 560265534 378035249 381673686 100681599 706198379 526571704 992440999 3667569 758519986 601649725 691804237 388162548 854679526 135429280 387082213 63086164 575067696 441595035 924616190 363760672 456330840 246878336 937218379 497218899 895497191 488149514 951930105 291468484 608158854 713218382 814112732 936881114 986902914 195807055 199194609 999826971 999889334 706091467 945221053 108471594 187045558 302315839 897312747 336869268 990696934 53532577 981445482 862728511 913101274 19982841 572088406 173214335 352324799 261560765 355362404 591396148 990059904 618672029 732261698 397560097 501632839 721830901 818832755 990608131 996326480 337440516 972390164 24063575 587989450 932652055 997710287 924167649 973403353 804419688 832084429 850434137 869225352 731356961 947210144 491836068 810444582 249598154 794529033 905193226 922965639 955782225 968516529 647630558 829034261 728037051 855910972 637443784 810423155 163916058 566701375 620925292 636588634 568107550 843618749 265479503 897564518 120969708 486734814 308911582 332187202 651973929 655294311 802168473 943261737 359633154 655884242 864967736 956294331 617029475 834391766 540679266 798099344 324097828 511874381 34307769 980862027 763016445 870404515 729945745 918627038 258194363 584078563 860397421 982542441 787499404 792619294 442471366 674126998 145483465 342237234 235922985 383522927 679211634 702072358 308711483 643033679 23512139 969942398 924120225 948645405 99052894 871177167 651294486 657851603 281366275 391677261 641857923 892568932 224399826 742106468 278540249 684069694 935078331 950389937 198474871 640866979 490146865 616452890 111602756 159708525 867431440 939745622 320266260 716815718 394463212 786349852 507591609 901343831 377624712 478362543 835114408 845294113 767820534 902332585 615609490 641384450 494925059 911690151 114694384 407158319 26236347 279590686 977002310 998550556 113347945 498608298 104599756 649996865 921237497 991881213 824698180 979294767 89845126 246654319 337930181 837826655 159304334 511630055 709955450 870181789 187356797 852979760 727816697 818315013 950593880 991141661 577635862 655279035 970621851 979264061 628541032 805888531 462339207 475540802 310880604 446346106 101221158 207201607 256054083 819905953 183940445 445022185 420357875 533235899 363409926 574306917 551852253 762621815 153762937 654288340 383880020 704373386 262077118 892334760 770472719 794370900 525489026 813033473 737757418 842257642 209904091 337563487 116256773 340193975 887541996 965909062 105768521 893312454 141880934 914428018 807023545 921113129 646924480 841364842 216086114 485241098 270748731 658542377 10622309 159265655 598456395 923843035 890992605 904777280 656580422 744301363 424698415 746312965 529104150 817689773 572262264 583895831 194183627 295458668 556765101 910870655 663895210 930697721 593431098 721287255 986394715 992790792 62036532 951734562 313585778 856256357 149601505 413933214 82962293 320755910 451089745 673836099 787177142 853085110 784779579 973087110 630617216 725006169 438194518 456665119 830278275 843804897 318882395 747687956 780619087 996084459 924512341 928518076 78194017 720642779 398966569 682355171 726441127 857694879 680629958 726156996 415945694 583108676 134950107 684900740 704007793 880362297 116649624 483661966 11051484 497021369 732835947 916112876 226857430 960760906 603395555 737754238 326671008 572878697 659738078 894667396 55018339 839939738 166899101 875485886 767781534 976663765 145722603 886389183 690304068 923533740 714915979 806306118 753469685 861814669 840392531 973558781 345213443 805188391 930207417 955943174 861721856 937323843 933147819 963922464 412874866 714248403 434752122 636397839 774323299 832543621 613568432 982810477 488202507 684155217 114937710 706259147 500276347 687939326 475694348 822496695 73895213 347629236 32371943 111929075 729652779 803462216 392565973 965128529 86554138 549200196 990566210 999798072 931073420 960132051 682490609 758214934 57977043 315692603 884744055 905835340 462531800 508474953 104168152 257360513 339429769 971935815 274154924 873208330 770898126 823381136 900954908 936165131 602049201 681481347 236301734 656212794 655728216 986087593 139795943 937057572 430334999 462890470 437305016 912991069 866724562 963724915 588756058 988712240 371485541 974350477 614309130 658623235 427126899 555218162 852544846 952835584 484548997 624089685 660327333 703385611 634959435 735248434 401407076 864184418 618842676 722505571 769181649 946529454 267790741 641534882 598449173 853728149 619867941 629343812 395699809 696851084 705270792 857404193 785824758 857680412 86632370 420643472 115091977 193103271 655399766 843630071 253652735 314448877 31902601 663506816 879733289 978086297 32666144 328291780 240695460 405545870 741088483 804329704 215134623 485666076 665414750 867174941 841415859 879551388 41528663 666338450 369574059 740964060 911072614 983726444 227878054 866632623 808963081 938012228 640005649 917871321 609123533 715832479 161147519 749544579 566287723 615742125 843261822 905918952 471882618 568041561 776963566 848316209 990126866 991252618 298247243 739768185 949557916 984158606 948157843 949360436 277492722 478741380 957717168 989713526 558869464 710863056 278746104 770921146 533237362 618171669 664039982 851427901 59684681 282478101 756691835 912291002 428289775 899243871 938248251 977767506 960786249 977734440 803997067 914183711 620367394 963330849 73518632 404128604 967252771 971139701 563913203 837049422 134477184 436095949 716717014 799771765 983592718 998313172 227992692 524699547 632861787 823243419 895369476 921915935 681248155 806856628 667527356 763021039 210104228 663024578 199763162 483936064 652571706 839809007 639195559 728396361 579316762 598604724 903698946 993748293 428374888 474391244 829506640 999144531 192740247 509063211 124466283 302059609 24257025 163242295 219743349 526852399 995471294 998979538 705977825 722121140 84859669 238016698 501526945 871880230 29828973 260875533 111277167 315278814 17334976 596281181 440796202 543206096 901728741 977293923 529008400 630940084 258574786 879809761 506231538 532126640 22959289 258505291 279797243 566941427 643222229 852496115 846616296 927237358 405355322 902873773 734633678 953289440 49211304 817677071 644250844 980465550 233826140 901740866 658686940 897218988 994534421 995226473 369609407 989483596 87717991 948708832 205911461 833097316 365223580 927672492 366207256 369171553 819571578 830528348 791739608 819474859 741056504 829970904 987627799 991654376 2935462 845468436 263337374 485437055 255859670 643620033 993639337 997505802 180114678 878751232 896367903 968545883 84286554 145891617 705215690 870070374 429178544 967482330 720863422 991489081 754104995 946909936 163188069 648305829 610749199 667890234 899082465 899895347 875888961 899111925 668096425 716878536 755762100 905404353 489723884 586443040 53715829 328420260 819901732 958667551 389605224 837060041 885266626 898090766 178406282 669764890 195104798 980618939 787879137 901411170 853704013 961603036 161435002 842457255 59069732 187116491 734229977 897849168 247647403 996925951 146358536 847429798 613164069 793460911 77503688 809513846 838773568 990978759 955712999 990371272 644891941 965245944 394576145 775895128 290555244 426254095 476189899 689929683 873599230 970198774 88852528 504997221 553086407 764122385 391855089 469288500 559434384 791452386 567614498 839461261 817245769 889780165 803762997 988001053 2210267 628689567 736112707 914969763 455901110 634647088 251183553 540416277 197611187 520131055 133965366 295157167 904326193 916614548 10161973 581780499 334353009 384568441 705360144 796621089 91032283 434101921 589093681 703877185 423050689 537497670 650810181 905104807 847698527 973629376 847300673 936183287 526236841 877324178 395692288 745577298 455576895 779784217 663521076 845035097 217917992 472442632 268746105 379047979 760521524 837875515 355767517 365850678 129818477 979495567 156198636 385757073 302612154 756111238 151395754 342264805 323522233 781048465 80177363 594535699 409951200 897812977 405437361 590255199 79479210 830752432 684245330 961697028 712397217 809979569 823442751 956734701 210617371 910709192 366702400 684761546 339689655 362359225 232849622 798290263 565444495 763456171 688569600 877089769 916109989 941589746 209194200 359935955 495483487 698205261 924183439 924559462 698010116 981071169 888662004 922800754 909972460 988835323 55388473 767566566 964438614 983145033 557167505 749726311 319926230 544969866 481364971 827485920 64034372 383599877 895646949 957066905 921751413 930319573 605381663 697326079 730539231 906263069 351959540 448794727 364773732 676589003 646395849 786105111 176426999 347738107 842175800 996733959 574445598 816414581 678249167 836992248 101784160 251188571 10975995 163026541 743429698 889859350 18460519 66059631 518049061 920531434 253551654 820363905 189693126 928531239 786256049 882803885 981350309 983305619 785054533 819134348 676972757 725504789 390845780 979954164 619198677 903469163 603653244 664925641 970047005 985786271 505911274 780483256 533951997 860181199 799598133 900189722 619062395 928097665 907237482 927932781 906027320 940718928 966304667 992927144 116245918 405065135 220354983 912099054 948573144 970717474 933045091 934741298 51440095 636342922 809928198 961987548 160124336 494765576 37630811 510807601 685196021 895227501 300963407 360553050 163670614 895089139 552938443 789974776 290672437 786388939 240701157 404179636 89796296 515281388 672922172 859883451 6353200 221305694 391728832 616190546 421658077 427656589 694296671 975610123 46767228 696328102 849366515 906631403 193953033 953294128 8040804 8588280 495631641 936264327 122786861 749684201 746072229 992579031 325230041 763436889 245237362 343254159 423509375 822218019 327551519 985616580 510475042 625372549 358863561 897065986 797778899 874399159 443662910 751941954 486474035 528091376 218672562 639924636 257979478 278333921 827789407 858913485 153563000 444976691 583288028 594870483 10059819 802138437 695775704 731375957 390720106 778873688 154463712 810700622 673562466 733499028 873730138 953915756 958459376 971577832 837789153 851770377 868730645 932296467 682238037 910841226 682418525 896892054 549717691 788176607 15195566 716302094 763336167 875315414 499678324 800018313 473345722 564839718 934721491 992025070 154424221 304669134 296511427 676752955 15919545 284056705 967727697 980477656 545505237 962760086 62290987 891980252 602932296 795127600 360784889 449351246 111445919 944116368 178557158 643250377 844031461 941812713 944431556 962559514 22052767 687070249 826266315 980287819 254470337 429737389 735436293 834571996 926406061 994682681 787547606 982778365 372369406 878595339 677342978 921496604 766745419 912261772 674185651 722473388 912192129 934874495 860466595 927366518 713978665 910869993 433751022 891254039 848170356 907527364 200178823 519893249 265283008 434804076 42665266 124537050 339070930 818193804 563851815 809009039 93928439 694999159 427707759 994815243 721530652 839003604 783344361 929187933 795401061 801100397 69546128 500244207 503842864 621082760 449897447 999157673 857418954 988526066 328855914 894689660 770779363 867353878 32377977 723813496 74667722 348252369 956736165 995318178 105176698 451352980 805448369 915662050 591879844 746886333 20105134 379485764 920784885 971996353 515789644 706600786 369362088 973302821 951886202 996675303 631839535 759939398 554251638 987436266 578319825 855980400 260189225 831272342 645527209 706551058 660962656 677792789 704729489 814485193 988320815 995152808 67142715 981392981 820927346 942422864 315639593 411413537 513097884 711232807 21416279 412681064 989049345 998621443 23556714 724494647 512803647 775925591 133026694 325021858 433572997 541791136 430835811 552999074 115146874 973065808 511033624 603163036 258807472 537554257 324981311 396317063 215440522 749404671 693652281 734075360 315756633 619503811 414832263 695828535 18775010 954328538 943256427 999580740 850581243 859559961 51155940 764126252 395488255 803649133 643184793 858250475 341316332 789127580 833226536 948573727 646391396 684434178 904286296 952844934 31443804 919356040 66012927 972819795 312195802 652040648 777791102 927690369 288052599 801002557 167692925 569276941 414121064 737885283 373006040 631037311 475818996 788282638 579748988 605501118 972641695 986037608 164921565 674302415 359440022 697712697 730009313 774242853 698089344 804562409 856097615 947901179 685864591 914296699 537537743 695581749 334059869 658678370 592623733 815213177 820012759 976783248 751899746 879244132 837195549 863782870 191923370 905787375 2587692 881995673 422444579 480566939 575704928 949163205 225512558 911874677 168423623 493991425 118342968 888351445 88145951 950255772 663180481 809470130 366795299 744697982 254572232 301012355 854309029 940184054 368522564 493322103 534221368 690997942 883624451 886312872 676985919 846779708 390117215 917599494 576758275 963059544 543016107 818328754 339673706 790610228 261982713 988009478 26311940 46967945 876041434 897545559 94168388 838791736 960314863 981988522 12216601 567888445 949308338 956647144 556852701 967231526 322336635 326033397 599605675 736188929 157688552 525846295 636641136 928755045 57373307 71508946 981803938 997735265 981156059 998376374 843647048 895044958 58911962 579502312 923339500 971054390 416872094 459527916 732249281 919401316 231081494 925581905 480760534 974431334 338142931 632286281 698083340 980677409 249338537 489218861 578478860 756542237 785357666 858051050 793709357 802839393 93294918 625340918 608822581 858330372 268711480 922397210 339709283 689660571 884639709 977713759 915189389 926864530 17406209 363891845 8898139 23261064 729971858 937461902 309847528 513460562 261556497 928595562 105511895 391907172 893137797 904079388 433694221 727435956 270333264 849498054 272072540 671636052 736502883 920804861 597129031 733924522 396132807 888075313 675350285 898492104 555700400 825107136 650480813 704418181 134816824 415437113 240966542 783342168 235690195 693548541 998338182 998385358 522126890 736938787 662452595 785989434 761545348 853541788 666341602 876729721 71928477 313965555 702466858 786790395 5039833 972485917 232273306 805217180 654846414 721426706 284501615 410496455 208746126 265008535 910269047 933041574 179799684 982845604 53587359 119648800 559960072 606343536 707469580 718014045 437348000 501593563 939662216 984502872 276622687 409675636 33311102 778128703 113489112 480603455 491339632 706411989 540401350 794350192 744067467 759834675 928425829 968034339 686340808 925870225 944166168 944216792 108977519 835393349 773929295 821575155 848464626 967135543 903579825 942625620 617735543 816904390 859875632 954049587 572250713 688526130 779386259 904459304 296255898 737374459 741872977 858045977 752622088 947695962 391793463 840218890 564132009 738261210 605390515 776192081 587302404 657303118 815468049 932744140 194596853 225377272 821112732 942222550 473804423 670963387 57969018 311835321 673025724 882394922 877967437 985811243 488405530 662374017 428759004 821359479 793994831 960236600 22560009 854168516 693521529 856383329 252953403 648409728 993236722 993933848 545621499 714058565 427178571 755868407 151480153 390417602 835533790 957216480 33144762 679046382 752543559 759104809 155129836 723987376 449657991 856221372 573079876 800036625 538613555 641640186 775550063 826205479 469259915 898023345 754746705 969721234 353825631 506538124 147295419 700713777 73964977 176581828 827689011 965581554 858401262 963565763 152969284 364959674 551304198 604616827 600669200 912338937 399601357 927860906 578045738 853135947 153478803 845939768 127112499 740191259 810963392 833707599 132487688 305675564 612348760 871217898 586477048 668002482 907078233 996768108 857772079 858071154 796601403 955262846 339484948 477867800 363966454 733630573 757303156 993105983 277929582 935709516 409424040 414516543 826883462 891102028 8130560 289830810 382743706 783430426 483953067 887099411 655715377 684884039 24411427 263430214 163713082 479989708 483415372 678910993 417538272 826075787 423418293 810308562 40008147 662637362 517926990 642975210 802089292 998058094 903499154 987952764 818994000 951255316 10091752 190531197 145988228 443407713 822477145 875414483 318952523 500528068 690892066 943782319 520575110 727450209 631060453 988177276 894667057 985645102 201633776 945350366 63847613 553674672 428275204 752634030 875031228 877349255 140221793 750341326 514345022 767672917 224602729 383425744 594341391 652769674 73833036 843490965 355661680 653625859 580524114 923388758 849245044 892691101 92621997 614285741 815311791 922709932 288127502 848342434 632341841 739416764 459084753 504912216 963159173 976526169 35781787 593690422 182482871 679425845 270233629 802419293 309200417 816472106 99796019 712892428 439988123 795384420 278820703 953115016 114104950 633775992 587398251 608823361 1068131 693191933 414032700 639710553 622110702 704776958 308850212 628072952 169385502 919237081 600769192 906184270 422493480 949561429 459053217 966350224 843430284 983410066 764097746 811629055 409890867 660422031 865723331 883180584 232724597 464293813 580063502 885818360 313631848 751014319 903970941 940362287 543066034 766528311 497915934 800076002 980341474 984965641 909815155 989033958 115761956 344220430 212952904 793996461 46579924 115673325 640036247 722381383 505776340 703882085 981763117 982615927 970774334 989532952 85238919 100287558 13620563 256566854 205759953 551827295 187563852 957628102 531435055 724679798 596252910 787323127 209071376 465069285 717165720 936982853 78672205 155527710 220768308 331717038 679387051 908206066 908199436 948439818 348145069 928629060 825652834 980284455 204737415 384416263 620467383 928146441 990548400 998980698 675876222 962566127 548245850 574890942 869431610 870038796 251633050 984236755 507798106 800289685 962791548 966980214 285641150 639962676 118693762 265736886 161979323 231735592 567024681 593079538 854689535 952453327 195425712 957465522 682887911 791354137 179767169 323520508 368314287 680930420 668731776 871847835 397888749 440545804 962988909 963097569 439866830 954217435 669192318 758914313 450586179 885662419 992537228 997632534 17829670 859254776 952611 272604271 801064837 886285412 754760935 880767167 940519621 982861431 517015294 538748206 884648777 901751671 653550668 723746938 236219687 481927582 908789949 965563052 428497257 963804664 332847573 914948186 297007614 564521029 394283425 716687892 810337390 825038079 583829648 830526167 504477145 580480336 791993450 842469321 47074590 699132911 860327827 887479215 684010385 922652997 272443359 411429315 30693970 978352805 205100292 752444992 585666320 586306452 831071461 891933686 918675531 970310295 834639482 878606187 133110516 814326098 4262813 842229212 384097326 643806241 953004109 995825851 892013187 974380075 737381887 955162634 822949675 856930366 103782700 443727910 507420881 903782593 59876825 700910385 833499730 849234575 61048420 354270840 547987668 931323605 43157113 400031888 108810132 698373697 926181296 977062377 497847080 869400170 531809789 667969440 282870371 951746796 410713412 801862606 628458608 941684417 935202343 944892033 143175943 201336435 461848073 951453388 580092900 989466392 117338317 276793963 840822137 942459250 741308903 882815216 672983702 953392736 535061119 696451684 628632871 640060602 707092092 946481118 984169223 997178558 849902604 980810317 746410115 906994004 408624768 494254343 239135331 739754925 127279502 560884513 500027566 832420840 972080961 992808869 770537749 796668604 413051363 666509628 636371879 641558755 534321603 863423388 242026655 274562948 376887332 953933976 729686763 794975236 430240661 991749878 468472254 683189023 442534584 917112766 571986219 573755381 315041030 573107210 272752884 491216279 196809276 487071793 354473712 998379284 466660050 659858192 214657548 459660453 454271334 659855308 850028713 893091335 561955982 712024072 386144610 540532614 970259362 973912348 903457461 964963933 599130004 690990894 842662136 897783274 430916669 824480518 281739063 783065038 604480329 663111336 477650742 592769382 587672362 868490288 430892506 470709125 801782577 899276052 47513121 430737496 861412354 975877933 838883480 959666144 854944062 906313148 510603842 617997626 381968133 772723046 747349356 797432031 762299339 989761394 805254565 968291593 866978380 962881862 84471536 805579580 531369872 961317981 717726274 879309409 759015885 965759261 532086408 775789969 465218858 624626795 456591057 803845626 941762884 947620846 131295345 893113111 813561877 975359196 545984564 573825319 478603807 690847630 774474732 986274529 813299398 997290477 810593416 901051105 854094247 944781893 971511529 975758219 704672964 753760107 194795142 604714465 166759611 552610080 305134792 473802959 407668267 958702773 465534363 695966304 58143800 489453728 809579719 941623163 884928929 937168098 480223658 901796246 398937482 458987586 983586008 998756123 696896585 982647702 989060359 989833096 631051714 827756832 67381222 463954634 502384156 863249153 50834972 142291413 205090032 876463256 376322259 522240361 914633819 986201326 620940961 722787351 150968034 265599295 137448108 561672874 858936274 911218418 943880046 959129390 922659173 992397024 205065554 797269866 764079246 770990583 789924898 819114927 542667824 590817122 206278343 957315686 63134325 830646146 225893893 637156896 314591578 322814039 230943273 317164450 953894469 971578940 477799085 632089040 546937864 612919539 767210299 932350523 408007456 431755529 943104419 975965991 699029087 993431372 727455443 997436418 243581930 909784262 940746134 995327643 826186735 954529111 571952455 679856841 26381918 188235664 344929593 730625444 20505588 666504698 297039822 889905008 67419961 378467141 345413593 353266322 950238275 971798738 159512884 771059170 93324337 573318494 152284341 622947926 182968569 982194139 488883859 657934900 71032123 601042329 264942817 875468568 186693832 540913890 180897521 945435278 999958047 999969485 812308272 985509345 926981610 998992304 856124923 907446917 289213777 599667968 78038534 628400673 993601850 998113856 636544388 750910926 339066429 853563522 444314484 836829308 945288569 958752678 272742561 547968140 871703569 927674616 177791732 945874170 469737112 509146865 662471841 961058190 87815291 357388399 27062358 571909830 477274507 534711617 395642035 482415793 404291799 701021594 967463215 986916485 883180774 926207754 354899152 820408083 182594270 887002804 913978753 937657393 786445185 893090657 13775069 866237561 437524438 759653127 747429488 790052692 731039638 823820276 205578860 717871067 896124444 946006825 927422767 958049256 168397788 745360068 43483912 661221540 171572969 240405563 143958229 695579509 91582336 104941449 136143248 952610294 403505693 955114253 632219183 788229409 805203768 896858363 887868642 902776590 17549175 522552189 235464848 403544655 765040729 827300979 767558757 990679527 674016302 841935145 681571827 752274907 483636626 628892040 872928281 915089876 434906228 540589564 700554515 970057106 438483398 903629548 881570122 977155568 162702808 575572965 687373864 958272343 95411786 165855461 150225811 543925822 143954586 480482992 6882209 58862883 334136655 625187396 193458438 306962198 610353285 775564498 625336056 810026925 912835670 984993076 656456711 973411500 320060549 790416157 772480273 852273062 995572235 997852635 767786671 959055363 198274122 563760944 448422177 827021417 799875224 882457272 144966863 715749251 575058124 761872614 515879880 961944197 978505986 990080401 169194595 853401917 88347715 104001205 692143311 841484375 117894034 787630622 142499798 618430080 41748815 585285343 853857126 959705510 939593665 994237599 651319671 959668278 798956637 909727801 47790140 509714134 119580350 798084437 178391515 475477683 347351318 884231026 618787303 785890006 514120947 600174882 7591902 643790780 579036459 813351043 866478617 908108026 297244314 726464843 367938838 745915313 657104387 966667911 973163392 976116773 877900344 953839192 606286535 960888982 771561743 998809059 860945912 999989316 168196728 423674512 248821774 793505729 729344561 926575890 551972759 908578738 16002980 929440033 537315754 791359840 470258609 551097816 232097135 289659142 203146892 583401677 175851277 577445772 112952520 752129441 906038281 951537349 489655711 640660031 259727282 878278347 287397505 472466884 839821262 992380657 630121952 794349704 908619728 924806056 330598908 885647389 965455902 968289926 999009682 999209785 538297539 969557226 365390438 459528177 327253107 559204096 667181908 827976153 676316093 852511800 630004954 731290371 44027745 741113955 602012889 619292411 756154351 848782792 549172681 696008542 251072785 545310300 371388589 411203947 71256626 72166512 366682551 550821823 838494692 945881523 364472629 501974673 101829645 520050122 915070351 915753349 330573876 421195965 469919949 923198457 710856900 830280592 920959041 929106463 536851754 546203368 657144496 714194765 630445566 855531456 880426700 958334710 305139986 908675431 526099576 641421210 34505099 489084209 859974790 941325474 862631099 874895178 915419737 973663938 466643089 670193202 806210570 956738948 642506036 929517043 138799381 313421473 732497022 733523843 64180820 110005772 29554441 657475389 239138776 785076091 65461680 198081302 932088213 992226383 646801019 924927161 176797776 923202804 469282780 924476320 321400304 361647137 552468774 824645476 946746758 977063828 359465992 452674832 240548840 534629379 74316602 862397423 430308924 593556882 100028138 493550901 681400563 993225952 242950026 796558145 434069746 441608798 152026974 902543067 827711313 852219166 563040439 624037656 597683146 913997839 49657436 974527379 273849646 319685200 246233045 535524453 617441874 706790917 687050595 813478281 712320332 954249673 74862052 353440493 197775029 548179982 797172998 817899766 550167932 611443814 940920269 958405740 521081559 867484835 328924992 506314149 757951697 783053538 35070518 493758807 694094301 885625034 811921491 892100796 140327934 594019040 982683479 989614918 625161458 853198586 40903834 722831124 593019720 985118729 112860873 480241985 9214304 466449862 722416785 724935326 657314303 872599394 46637849 960285251 272409118 656923043 907872618 910713580 18641612 54848184 97095991 612003323 431880052 623978447 582783755 630196986 854773485 907954455 156757540 917987590 529477515 917797091 144563872 936125609 999505809 999946900 928894512 944096410 540896344 629561776 287400415 359053763 696062058 932033966 77094717 862231916 824870465 972738320 45168371 484745080 338299438 800286993 869830983 918982612 235163590 959676347 131820196 345595612 155254413 807662810 189440176 864158083 282213752 740342111 400616145 413719061 385874223 439902652 502894460 561242870 917266199 919637166 673964166 705088419 698076696 702605337 168486338 262776109 777316066 850629863 995371217 997735667 452101318 539307134 624838641 703759619 423770321 783263272 278874411 937830365 873443658 884184341 66339055 490297368 799187639 930259900 286568319 837762508 478858574 854321798 195700715 343785933 214943233 471942570 992229350 994058768 445156661 951265620 902228209 929314870 265536595 678225458 960256550 990735037 470343846 622076839 606564310 644260803 309516808 986299774 69981074 705484596 546169024 899402223 585895355 720184369 901610789 979065294 239687338 553017394 924645989 937269171 790997616 913799105 346855612 560426763 460234702 816062456 48846866 930313114 531075788 984150224 587778310 854613559 982346306 987337608 804117183 960933927 852119876 890163547 808476210 935392643 445730520 542666279 720487696 816185849 608208639 955361822 607213669 778268408 964734147 982121279 581745082 883965559 850558281 922794027 418039448 482131120 485934600 729323337 977660708 990982468 590377353 830709097 68706586 92815080 12892073 994268286 660439823 727612370 641985700 668539943 891785667 999542272 208630219 253978781 31783788 575142866 115360142 554500638 392176548 727022177 401373534 685284818 842183348 935464236 155522174 945919413 471033584 818914637 524809628 659011335 465570877 476868810 293591388 915399087 738966276 945001887 752665252 931588063 157181457 394816065 481209874 617772975 819227306 988620711 422753935 641935327 470146107 958571440 824892320 916146010 455236357 507228452 842918313 974983548 978313519 980091944 514085094 928857886 250655667 977294885 204183561 349595665 675520472 706578583 213806462 589408434 250039493 596813682 354974729 817903133 270398820 922065595 461582220 469617285 5453887 450514521 123947413 950136043 618490766 697559167 41177990 189964927 131526275 545065614 672413934 945576060 255369532 849656176 291375056 399020876 195991733 310864069 886442133 952820801 765033216 942011590 633176221 963556667 887209771 893430618 608707860 645446473 358910545 601961795 225686021 502445094 979086032 989001773 632035937 775734499 85440614 927004321 665457149 965255049 741544443 806563416 981808635 995628500 86531083 942792574 314495465 596515069 927521285 982702250 700415656 790441367 102211434 437200320 755201976 755551899 984160293 998881186 83217993 319742618 324070522 791483038 382411304 438184164 923195268 936229783 308863372 853302632 784923138 969460265 725510753 759345040 645944447 662446375 75648312 625303840 559003656 808347077 505307977 796761212 305177652 388215235 69308853 110113076 192670956 236226109 851381688 966777344 180693468 245403559 898918112 935070914 177210015 814611204 970043908 997603885 886660522 952776291 459996098 929889443 359208673 894184997 481063121 942235142 568524564 866259362 817507560 876478890 237049618 435281072 719923106 959936261 474731834 660261384 135979531 458681451 633146172 701428963 782775796 923588408 63953612 564283685 604029129 709771038 52628310 699510569 755519687 923081609 123907888 672335158 270495592 808694417 442058866 630304445 328561118 655841115 371322654 612762357 355988939 391536743 188701670 767121217 232934174 423628451 372536345 837143303 418969762 776482693 382583752 600664408 208493388 365317282 188128152 507601270 749693791 910171964 993963741 998654213 478604302 825699534 922438954 955719749 614574320 938328643 745936041 860164594 249243896 806063719 127593663 387608887 493459012 521039919 921004779 939067546 145241655 737164797 313192773 848904052 784420497 808617682 484635051 535215734 340287542 481620019 181299093 534457261 674991271 712589133 170692968 489507350 339149257 574836102 493525356 563529963 957344177 992016378 659723723 832337378 243590170 486335158 591080752 960981933 178761603 368744225 799162530 972159345 383463843 688632355 283584923 500971217 238897115 618959420 147967603 449131820 344390998 457957046 510123761 888876418 380386187 512617212 34757316 195515237 498836409 705998776 770703696 982439199 158936340 164819044 465912438 810438526 704829280 851104728 116871922 473263301 524987414 795443334 984563843 995842859 758903801 962920369 25394251 76608770 410129668 634396023 98434771 249018192 839584592 865579048 917297107 934975783 210516126 954383756 680323668 785362071 38352879 523196965 649726667 751597653 892521124 941930136 632987558 815205428 373845642 457058308 944375366 955136417 600511122 696226094 442002264 751270923 595943274 639875884 613258315 713223789 900061713 992016765 777101157 877655556 95157596 152653676 900232858 983629590 83881459 376700421 56811770 719472705 747069532 963673923 608657703 968968949 613213950 752041387 181155401 545502218 917772055 928419743 798282578 881103337 987900466 998353785 226907165 489852389 157869530 491039970 258094106 716572323 730665049 803782093 913587433 981203873 958040465 987328105 900154414 901726649 674641632 991972082 342451423 944974677 589752002 798303805 216806425 642842205 19180778 837243321 295193800 496183696 498824308 990215925 549545324 953454573 618725466 996918499 16841511 232032700 585099122 677805721 102008915 795124989 940859831 960873304 713401689 952992354 831285699 963989881 337505973 596838408 999028799 999072279 633046919 861362179 629624892 829025488 750327873 943965998 240946391 514165098 74424226 207307101 690770196 896002949 968985963 979939109 385921343 573030488 164832565 278943522 19899087 851434273 53810269 396685807 47114804 761274684 235538170 938777893 466497153 631995937 102678185 215029210 729713581 776845754 825667463 899819376 286102794 438513092 824156157 915521786 764735326 856698683 825939874 966952983 845431484 961353850 45812035 108715156 764930020 773402371 259861421 661061878 700235759 728438744 128384200 650225867 33814487 165977468 799017787 906873145 65009347 187580686 288767042 673076140 797610465 997023143 53806469 623436301 151005627 860577691 427483671 750586584 872855521 955379044 975907811 978959422 783915509 826242235 113629739 482869626 884515258 893194780 639037373 908660978 239066063 849331614 737295296 812230234 887160101 918878909 575341736 859169459 455937639 770511103 758667030 773500340 660179853 778382727 423447514 931546532 787754663 875716688 421841293 712437236 571282253 776909096 533052408 955631684 87977595 281330452 846847510 958653878 106050057 206022180 423150867 611841749 307192777 942038777 190277836 714336150 998952619 999126969 654709808 819452974 996899723 997946654 878490215 967853970 777353796 794015570 509339872 951309175 16018091 186048585 6213648 848494396 642677325 675916836 488593827 517597056 913974951 985442924 154032952 775178387 395947320 730219668 179031341 610394137 692627176 887156111 331485078 453704861 791198911 796935199 479326803 621966256 141585481 995509819 14443163 481529446 358448583 842411216 783583312 924600713 619772711 871045466 940780099 979255586 154222631 443454949 231346 672690313 971126815 979611741 775646115 855814888 605379086 943222550 366306450 453174547 268057334 640780631 821962303 883747136 531046936 753080311 549626368 919879040 427781100 770335540 754792897 941920092 370546050 816663704 116419286 912107189 40288288 543701787 806088837 920071771 290761346 465145991 468017042 645817220 50400751 767814459 401375114 741499096 778415882 889974640 513612546 773881093 709510021 990440355 869392113 949695267 353252968 399681841 876306011 912674086 727342631 986700456 804349923 875846914 481552993 701648517 620037787 934623298 787564018 917048537 315498732 356315376 957622794 967931989 355922613 674441347 630297445 936547401 199741410 804910977 964831011 997699007 116940999 484958713 859182954 883231563 711290300 968805983 852823460 967438950 318128351 649798076 455468386 580144145 265658870 299136202 212746579 563288825 98936935 966139573 797592940 802365349 203536777 507161210 37099288 103688381 857364082 920963226 117601045 706121367 689393791 756727160 224573332 840706629 718801525 904383022 219763767 739203928 918003015 994041906 756014081 813037651 471273196 671470275 741792960 835327480 601630981 663809434 56259758 232798717 222465192 542959771 685753866 742487617 7644239 486857368 915586472 948936422 778932605 836802080 773938 227466470 88519249 589435720 493480930 645572318 700088587 971432285 39371623 822442584 366307259 801175651 718503927 901393640 622078433 825065915 714480268 961863097 722643407 828638186 483567834 706035377 754531660 958119865 734017916 993906574 192354209 342682436 887089172 924789519 332882243 491000607 70346800 875673849 428219726 619628914 182348421 973767288 504319821 787456765 196835963 463551880 952793445 963231584 179945141 427977430 743846040 812790855 842655108 983650010 89815652 998259799 986405228 986664842 545535098 702794041 993149641 998855082 479229873 659509691 529018416 997423964 970564703 984098383 681289737 838690403 354318836 775024959 178187285 457035873 396774921 739255953 168530473 722146751 562845847 827620602 482847545 981171109 404226535 423684335 18990467 756800112 867933308 916251598 213453222 266621703 588274720 960754303 156326492 521385523 176602786 802640433 701146774 834855563 536133840 931156231 986078991 990490066 211776688 506689302 342746092 715412557 965657429 986102838 842430748 924081703 722980243 819090212 660433700 758823380 630345943 934039824 989196739 994812415 968461692 992628041 613911509 725835453 41844578 684916335 494751508 784989717 417101538 830009505 227945353 862962982 401682576 871254027 40502411 974071140 770643328 794621399 696316776 777270936 764647360 975607637 1322418 508101011 418628814 989807652 845403696 996436456 973769490 974473901 236816617 260556541 535827642 646208186 195953140 606144643 863630838 946752154 608577447 939061575 386896906 790086933 299939282 806071752 835598293 955009013 366220978 458986279 802821771 932933391 97736053 589878595 651061305 767414493 538487403 864790275 394970562 867361599 292339346 559867447 37056512 819749980 736614028 965336674 392527797 425122069 656404403 678296791 570957201 950803199 618103044 651470561 594701796 653364915 233015177 246718200 801430516 941365073 803967948 829009361 711430614 754043375 800869398 983727849 36310562 199078123 375768733 456416126 302588024 528144702 361346289 839443207 254056713 741369470 388154627 617133732 356151290 541956739 716133388 828342012 284524639 373647657 209836907 963803711 187695209 991964062 175833365 683119101 281584653 295303856 280195637 945835994 641665614 924494038 735044806 880663047 943328318 945129276 673376266 799792961 213688022 352978772 588011788 959420970 457077746 983637828 402633298 451071883 64052354 754756726 412221569 690961561 501415593 693130683 384198618 422230237 124049976 487922050 237928979 884679851 922918506 983997449 794656833 930342422 507821791 648532304 855931410 858182505 837198297 965224550 106331654 156065866 306510593 926697048 41007096 142817593 100126693 943055477 413409923 429894722 221998564 894217800 643721195 719102030 590290907 776572197 344786259 608151502 183732678 407791380 574883992 681528426 973691808 985822311 363253087 523102859 430629398 596200924 693323627 696667804 224585849 639189671 48443019 274553521 871640482 996532799 594266135 835378117 70927708 183113954 809414573 979896087 868557622 912195416 530781452 627585218 611919707 662410052 526797170 975292836 871161929 997197866 401928988 561250245 382429384 680625872 725152606 761136956 680657632 792460371 216183839 763185516 607815054 887218766 773631870 990009748 580689729 804711849 685667587 717230090 945059105 951633749 561010329 782607139 60758385 238853716 409922748 509676630 406469768 995342150 283110104 464445328 700872509 825298092 839046204 987958689 936156825 952798281 420451562 485822305 929328827 999139796 23312879 383397743 856541187 917363759 29951231 643027176 873118816 988007942 276609264 362613264 639753996 746673421 753153762 774238471 501655728 637927965 538811213 574329444 495480539 882598951 5517736 122767690 304808335 847795547 768656955 986522063 516389700 921402053 787470321 834505636 487014215 735393774 19522362 122151733 66966176 168930018 514676998 579231312 868176346 885329834 853008739 888788084 914384122 952430274 105121274 897136986 30810043 474413834 900249024 938969891 977070601 989544878 820150400 895667631 714514469 939047375 822193272 910051833 269707445 291846461 50514195 884254383 923387384 947036439 289671036 999625120 199368709 607577611 560916828 643098790 836306333 840522117 723494913 983567759 374903459 414802383 176967241 684555390 667011126 870700655 577208568 809096985 313294272 892292754 738195587 919302124 676338045 835776895 236640415 594053413 266046163 909262783 478736238 573990984 944239379 959736336 745121550 853556963 94226037 513412631 735096167 986942994 85932343 378084438 994012505 995915803 104063258 463361529 972395018 988810502 1689978 288852695 542346878 859584943 120564571 576994582 258986986 894933659 267989178 281353015 995853994 997483370 718027627 910543630 852930383 986871059 830765223 944466959 698755244 892056104 177232684 612285785 623364826 834560550 916841288 955414144 322585732 887212594 325736602 855478869 984806664 994019816 905168990 980885457 882609647 984107962 60561418 646763755 712237190 991965531 579756835 918752950 438680590 991406873 558091938 776139703 47083658 802475236 961908601 977060620 675568031 895417855 283699143 576993294 3368890 272990135 527269603 788039227 775140936 810848257 866410061 892135390 508743789 552638518 449827350 894549895 570907700 776662805 370932486 800269655 800382194 846855266 935161075 941291121 210399037 926145691 328602028 719427192 44639940 864028396 534963658 629083204 802835026 883134893 65158674 328290440 763204135 966113474 758079535 765089174 335941567 425027251 546218087 914510626 610020070 954945071 993976180 995836609 674706739 855690220 709299679 778606879 992604434 997975855 260885821 371624203 483094169 537716958 435140785 803406822 463131170 672244983 864543395 924466966 59919640 396899649 852858746 898753120 311993957 894351957 449496184 491750496 202569414 312649558 33613095 625348209 27327210 839088426 543531330 794794189 239935198 605660759 902992719 930716973 208745873 236381711 183455879 561427075 768116591 940421534 186524122 429504987 805780040 999823728 27412316 533699360 231920436 747084971 713310856 911406044 933556413 968174917 489630707 905460775 394723000 582760348 99150343 109181024 465416818 641927446 693863646 719167095 138746571 706260212 346342123 454239665 232405178 690050329 65557836 922436733 724594509 810183057 253724768 297695188 305849072 449331126 709051510 981166693 975767011 990943152 357399523 817484169 253349645 853267775 843397183 886023173 98260283 535473835 32286610 874418342 800408833 854765368 778105801 790595989 162863122 169903977 964514659 985741808 182416953 242384916 633555848 786724952 868065296 921315859 364576348 364649158 59766591 848202316 395462582 489720642 731410459 818131066 50968613 155938465 557383996 923464466 251264827 601166166 657565050 990978732 368740874 468380276 839899903 896068806 491416334 813030692 363474842 803219644 627511417 683082361 425493457 829629406 646167491 804883228 720803295 956006848 275625025 609885293 457338594 996640345 962682087 970149313 981820025 996786757 441083019 640045556 777164373 850076126 556744382 786464459 825361013 893468433 747901823 844718308 790409783 977977611 916476329 983661430 414116810 414498448 190668609 419393126 309450959 522680685 652362117 980634838 24138916 893325765 855006827 995837829 318768500 363593943 883444976 976008272 491489453 728753968 981680590 995503652 760949478 958065265 973041821 985374978 655735007 909446366 819467354 832217221 616515434 871920279 506928813 729204168 682191854 775923921 330910625 926831818 391852659 880822248 651983505 829548589 347913584 676999330 457549325 506282738 977827714 981643610 559160647 931634942 426816162 883676375 635758659 728522558 767327037 820501439 660310994 689547999 87693121 95316701 895683099 904090964 255770565 770820066 49715616 273279857 918644020 939422890 862092818 885485962 617087777 672932481 43211550 407131776 539430537 763145777 678734119 783993979 577372226 662920270 183159684 273368947 546627507 719194025 868517250 944302834 264045581 354039385 529446999 908739364 946789398 988010948 857321294 925320012 628752900 687612958 504683298 700856303 254038972 342583641 631832964 951090359 456762057 685187193 84596334 124499395 956025284 964953770 908709025 935397950 391453570 489073882 338961987 388902947 958616415 965611520 578361572 663301464 65854796 98048314 562415129 910645832 471932718 583286421 221122373 927758240 990116483 997862402 769298274 841461838 847240880 857024709 871122027 892230601 976257102 991792592 116195662 784995374 81753958 536207356 199015768 378311098 151257243 511814418 739964553 798410068 638000393 893083668 581789821 907341554 53821954 830339728 304114472 877299777 780971380 886473005 334650206 955533572 815051326 826849029 887803172 994692253 7885671 657527546 754611549 906450926 637059283 647660839 247441334 751995721 745525910 906472871 982564970 999445813 400276030 848990048 864799886 873549568 373794445 468815735 277484061 648784272 557195780 584349879 738589912 744962847 718092765 969971298 179565784 565101814 893305942 934081124 75465790 603918401 107125079 563992107 529235950 981954632 682775921 782345768 86058994 864864748 685385509 837189169 110534524 116030137 52798476 473580530 199719059 532563106 451480135 507450020 96117674 632120555 202747199 840744043 893414680 923904495 889556768 973992491 616170165 692442547 985148858 986359615 727480094 806464651 634193146 901599539 305894143 896429927 177426074 248784819 180048991 471367448 156294726 990713613 314554799 357136078 40192032 573538692 845352108 990494538 946682738 984975156 607958483 625193785 705490160 936756081 536552438 917170544 849479852 959463280 581223742 625156103 259763657 591443771 225284946 908212710 70667413 89070531 410297162 531916215 306089088 772445522 188024315 303846328 879525362 930751781 204573623 591097119 106057337 528901367 660722466 686726115 18994325 474569187 539531058 703569122 475265989 796075068 198103984 543661738 499978385 738786940 304967290 902603878 715677740 864648502 171272796 945688501 491152034 869067146 738621142 750224207 829931178 884343676 436768184 537950080 611186682 834722176 686313841 864008371 408110863 540156930 139281830 322809492 521701487 572903879 434607371 589076243 597174027 654305272 365441825 522261140 975827020 977638874 697126997 756452504 274783345 947801061 355262076 478870680 930677522 944389460 132692788 659264488 299569397 825438840 147220245 604827191 494499031 963141751 716697872 852881538 82271927 488221089 530339905 859075292 460018973 662550566 235063984 867498419 53737147 757616521 901340682 925836062 26383768 860708341 913655160 964343375 26320286 775794766 765201010 891118919 479042499 597731619 548115258 765996697 261397668 386402374 492362874 499824299 280806895 767531811 494363422 506654256 40604702 593110205 90750878 410854755 98917117 491783209 16116803 864583062 730779340 897552901 476160332 983532409 483095678 486174266 916472143 992495704 543313100 720336175 809192102 992084630 338358394 400553752 24297525 951450774 401371956 668967970 359945448 966998024 900390681 958955890 994331263 995878202 541737254 702646399 714375271 755626198 937406426 957144403 705320846 816284409 358965815 481356663 494545663 972837794 762490387 859308699 804437400 961927149 710261652 939983695 477529748 520737111 21255700 525988036 206202725 599539009 625462045 893650097 307757679 847648329 670109960 895489401 945790123 978585636 225120001 900530147 341644640 941167968 169702410 278516453 476988412 960387338 720848150 747318959 73792884 758821856 532384918 667586345 674638166 708656302 771343966 999746059 44057968 193164849 931005630 966871301 780310832 905767419 788510608 802522921 337532506 355919671 933466702 981881592 670519228 680482077 7109455 249099289 765100503 843611005 784715127 893750237 255730203 512267447 615319605 879320651 342949863 622497267 468106832 939289705 975821257 999031780 90543137 455156434 10936535 444718361 55131215 96542374 383867094 441628372 261645452 900557385 579462687 828282797 858948768 975396406 59319608 384540631 933740738 992721157 296417230 730702077 225157679 347709181 191707798 428306214 987160875 995296380 566237471 981411281 121312089 604781186 741448602 936337735 978236335 990613076 57731475 897833161 168196276 409631563 405345099 533639362 715019104 946159104 378151468 607208637 490549097 958803535 112163272 335928545 770327527 805982956 937154282 945873000 969993273 997218293 252024341 378493159 349834181 578585220 849395034 890597543 300731270 330670695 47688635 208706636 275211898 419943105 450073365 850948157 95701036 885341512 315922514 924358058 399418655 506760130 52449014 546448167 459419760 980918398 448358010 779427138 818796514 857866954 887250674 966252766 847403474 997522785 720962961 954660008 787227952 895740484 135529654 698421611 546115701 900450728 300532870 637095344 944513570 980430674 915640084 972198636 308899517 343824397 895827533 993901542 795683792 964355921 249139264 677233352 190938372 936277156 533605277 611779511 404023045 517891800 4877613 677738471 894118036 920331437 717989679 784343492 413265845 532439869 289997848 657100181 159056055 540228154 467602639 522981263 565578790 919355276 250802463 370908602 681608865 752896647 617905174 897151370 137073754 230152896 403702910 584284438 880397114 951643966 605456762 672722629 843819543 901188634 2469100 182635474 221511760 285820742 925377861 935130328 181949959 730814895 60287363 848488405 559113704 995661544 185888325 205400420 830941003 952814028 106058113 390547637 31701424 994565073 118225617 308889938 273192292 614772327 676198766 952140642 541475315 975810013 162318006 211266985 92455361 539309855 169517307 757834201 294524834 580189066 502816437 871913354 191383126 861363015 242883318 343010542 658858281 671324800 39750214 545671590 633214938 819649087 158974192 325926841 4432673 870241595 831739934 924627659 322749483 922192125 367225122 703584535 119755946 552512933 813417838 872844986 96114872 809888610 440740789 539166739 865454015 949488128 954093217 975766894 315613963 642746766 186543665 314643139 339192202 435859901 455144384 474926340 862838960 890356467 985504196 996507590 889343545 909897878 711748310 958532073 828978312 918382666 607260755 996985686 986405033 988714575 5430295 347622640 822729977 895111770 790490289 886338373 290698884 497033839 881447522 940615754 902661534 915092702 364424878 652966722 385779944 580294658 142626237 316233520 699628171 864330161 151336865 377684794 610115899 915289776 233378840 348655679 453880976 841765941 514579796 945389582 262822643 980529586 999515891 999808871 714262656 735067753 793999924 850936357 896269999 912908458 864873071 962129896 381716549 607086688 667373193 925005387 500569084 861415185 731313976 733985068 220909900 859027364 984582847 986445915 544563441 918295189 376207488 542275429 836637849 867098702 449920635 488342873 747975308 924380484 76829148 805104839 136572543 344291406 661406598 888000406 274256547 439128375 524028717 579622189 706563936 768117939 251687979 422151002 822235541 876254178 982769631 993793348 512282176 747161468 121228405 320223806 759173331 958333757 750312484 917583393 869301286 903753924 281398073 639472495 628205236 970917570 759277801 857293461 259436597 611529088 228708311 847653858 325707192 439639231 362386143 805893838 951044422 960467695 723065256 784988612 274133940 660184366 222474089 420517008 774872566 828555717 75035810 79491464 784573629 953477873 774589507 820628793 865866429 878648474 720161982 780568870 310442248 580695816 129700614 881052571 989216101 995746643 239980920 733107500 2257145 642322178 77058638 344072084 165893814 476333046 56822980 69593062 900893422 974879068 748204093 844620178 134003267 253801724 9008603 158304603 691493270 787228188 823055607 864926474 819744364 960596698 497156076 558560451 980611422 999336910 551527314 655880203 380521889 497247087 238996322 488984282 246656332 352403315 28616031 911608939 351789910 740857108 149514319 490963705 812931339 884459454 346277154 574311905 485158862 675878232 219451060 536397336 900326929 929201047 58149916 184349053 915534521 974814464 314086663 583858083 416471952 689346626 859328765 981450711 805213698 853388889 594209424 667552061 262108646 936263447 523392096 717215647 634644604 737529360 40535696 193302383 858242664 951926155 168143927 245616591 661540225 710033713 626015211 652112172 816056930 842914559 570335068 756868669 468927935 804297574 860290741 869471068 508893449 933631014 277700296 960232371 224432119 625024506 538636105 669264954 167932580 243336750 633684106 662061545 48538244 943290191 889165569 911662336 494261038 772153286 758289917 824909261 632501432 713949287 629853744 916543457 372200582 931917440 681605385 752006894 816995615 879295631 644596185 781065802 239668213 630031259 355096143 663538127 656248663 807089693 117426723 658966150 396056796 416199991 773162037 993641310 59704223 838422354 727152562 765629913 38860554 657031330 154980794 799932235 332086467 392750137 587071811 777601331 118988169 481667861 489391437 747423919 245642736 728264176 646884826 974051736 843957886 975342306 281998443 521124732 724183131 763268551 58574988 844762677 583461010 704078292 240401757 411491661 983407512 999901178 853608196 942015609 270215846 307894063 978959077 984633286 683372882 960525027 350916732 840443743 403582080 765037596 394986603 895489089 463716813 659061149 510639889 973001969 119278662 711173629 347606290 676216863 660983893 664027412 902302779 991193633 28472378 988039274 771152294 956929627 874037527 969761171 81146243 957855888 975956944 990939963 684793627 722197681 340756309 420304653 136443172 772891116 154552137 528622748 913425927 987170792 508031779 818151284 125457570 520684521 753414471 863012545 811671384 898679967 908708631 986397839 129430811 385259652 777913618 968806980 446225876 818332842 152089994 526966479 872974712 962140892 287623126 316612926 585534214 713837666 688606887 735374636 256559219 384278611 422446143 774999024 286378423 545506089 995709236 995798003 792984244 967476894 755561316 807966787 594361829 902902544 713085010 887483670 832578255 997417189 174493906 655092664 867122494 911040989 620087573 993001638 267312114 644672315 497648116 881917624 133731111 950297821 537828509 592485430 267191855 459638928 126112111 333430809 584155010 671452888 313907900 571355418 13721814 791855919 970426421 982592147 52466494 433402455 498199471 664117781 53981959 320146804 865565539 891264215 161798559 468869122 262744056 717505519 296634688 789098878 694643739 703812874 468021055 470947986 219051663 572621018 520086722 693686257 974562511 997992604 797319641 943834146 347712782 404542469 322745282 703040378 696127481 913038044 470762030 848867697 526844504 858005544 88408264 514432146 314571589 555284338 582882767 706169736 509324806 700707829 269823196 917548892 313592028 389437245 246257105 642483814 892444919 986145088 965781424 965926670 757717041 985401786 795386063 829444570 594053265 870231031 132921290 830028621 194872303 334522982 340316929 930726155 471498567 720162557 91092313 476241530 179271287 520412117 734927733 941498057 105075660 648776905 360240584 998572030 827071706 861864412 461384780 566619133 937060253 983048386 342310616 617965535 670647108 671394950 19730227 873837581 935891097 953447612 840357832 939436238 867139266 877388120 362915998 713338392 738996293 934291685 559222453 706427276 631281412 695828086 956315375 978247238 920662124 989299727 659240241 925339687 289737952 532326074 984696206 995041033 572517086 908750921 580256182 867832319 184208885 617064084 275587318 756797657 846478127 964600257 896435357 909439840 548346369 588065586 436525763 570088676 858308879 965275296 546726638 892170189 284860514 550890205 286041732 337712204 35642945 626859305 813304846 926423909 73040875 159734463 454935135 668054909 788055644 991978518 897932506 941651655 345968942 747934276 846518045 893839504 241017832 717967996 877588645 962302979 946159550 970219800 114118878 910900152 347991088 652054434 811740358 837364270 519249322 837608134 852877513 866443275 97987123 691008345 153283596 547128322 185894381 887794867 182503258 657307667 942804516 994536904 597172363 633977052 822707989 903091167 991001972 992937162 506906441 682069379 294858847 394293019 590823561 731176860 263966732 547572612 845951373 912685931 635230900 743553465 34647056 525079140 298759762 996635534 871177670 992314799 989180159 991158500 695286366 759943497 534143644 928754248 158641953 435338963 274354864 417196433 421840416 794981148 278100241 928675008 245260277 873881097 138209692 574642621 449246160 661729373 192969859 261494569 44396846 433535228 915044391 944821017 956155858 985319291 387594556 757443927 809511744 829721267 818452104 922988077 945844058 975706852 109306625 879065446 250856218 308851854 673815247 916615286 78908439 329033324 860539991 874503667 246443965 885005846 804461702 998006604 147721334 858139309 843417138 960923631 735928052 988578707 593086312 761360045 48048183 840288340 539885684 839357744 828509319 926768780 744034889 928949899 246726999 738299934 42657420 322756880 319181072 801670798 778099883 873537347 225238602 678840534 294606960 433464677 296791684 469634370 830317557 978505534 632659987 683575829 839618670 966176593 163938470 196459944 440980952 820142670 930860489 954850207 611415995 976397123 105452945 580918459 963225229 996234851 643885996 917914552 664946711 876260456 429374511 588072621 198248629 433399644 698472354 909541204 242896374 698217977 168760126 834886741 471775929 747500801 358593149 784026227 976094057 978686865 734762657 919155795 540308982 882329624 650918687 855300859 425777870 552091557 895987708 964692312 943403709 948487890 276622008 651110495 274593190 435444138 55041447 618791080 50924129 129971819 214433870 404239690 460820815 756218274 40133196 65363397 426703200 632391553 606129789 946057930 359426190 712701019 383598651 572418031 12818605 29757211 810444033 981347383 403632863 441334394 17948142 256362406 347067660 539350502 747936769 925207029 231007202 445002219 888606761 951849438 551540368 893109738 117513297 161357163 21852283 125336385 993855806 999349243 416982506 848403885 994312968 994459639 936398723 956138782 347499761 769565285 336690048 658445013 399264654 443369016 828813089 917697397 739963945 949605981 872260696 904348821 541587318 913877599 1854543 909747358 467651939 875535440 751119973 929057358 820160141 970796155 478867759 536444201 165228467 629209308 164201505 325673264 178225524 553549568 864571958 868938661 805503635 887565242 219107993 316703582 152445496 669421582 468423385 501785980 495375096 881320293 845511042 916586090 225681932 750808336 833199096 836893672 487288780 566422252 342386529 412604707 376161964 569622399 779203648 989277297 332326099 872263967 75081662 149069742 184287563 576582921 739421196 948724576 418727503 792478362 551595267 675453794 466856239 936566332 797431173 953596582 474323498 862043974 396495218 491476653 939517077 962285265 194352800 279049702 907005745 961492266 986232855 998002603 220269099 591638804 247931797 744824253 459720409 728457999 437595571 882545813 286285872 884610487 877716614 912142223 35160481 508753552 1912672 542160520 290276743 581609406 293290486 505357129 433677224 542328661 808297141 956183814 581272439 917182856 149546340 420385226 812224388 968380688 428492772 724749700 505834381 505851149 258995144 648395321 635090138 655400281 994559828 997254475 218071354 580105976 839888316 924316922 811686443 837400874 767553066 834665646 755394957 872878030 936890816 950323341 151471767 429056422 295511722 866465067 387616524 560089347 396671957 838944975 31869518 205063263 523427283 869596818 825279106 826530623 282158424 347500940 881955403 951562842 910526173 919775599 528231124 987144659 220932159 393732499 376596159 871700315 795617117 933417516 163020337 670594682 183419222 834179044 953867433 965993548 510691842 611867820 220079111 733650149 803575504 883482423 901620605 927749341 376699807 740738234 426688367 640493201 158811784 804978690 464843952 793911835 185823678 808847720 992238100 994203688 280328253 432543114 760202664 980399802 702536903 712116094 691684809 799195711 463965385 496499023 141668703 297523337 521652987 734085859 715247071 811855187 413539142 643129855 730547829 783518848 520805887 838866173 249334734 783274601 97642140 653715311 602600307 760700124 332247091 358233092 991172809 999859318 565850814 813094430 830572595 833651013 627077919 954388405 501409042 807844268 109426679 501098914 80894497 584228732 846980967 867961080 766373904 901269656 347826991 542813007 758778285 979933830 569601075 980476637 784364478 846078033 921825907 979494628 174773486 921548506 398553786 496322180 434973687 442014346 599545432 914051435 765879943 868931047 989863151 990824129 348444 312488416 370855671 893954465 974196361 983230103 477442545 729773080 592435421 971298042 555738158 899175481 369869099 669352842 717089904 752191494 902018200 971559776 930747878 999986628 659349475 783086348 355501787 683839458 249805945 501783056 55230380 893202085 707856679 985709363 630021588 679643685 318274527 865962727 627097486 661719478 396978051 654107990 494111546 749923094 671086060 916868515 194816249 425068581 963823933 967122171 708105845 764817320 30697102 734101189 280729254 652593023 601274273 962663102 209213302 286479354 119670156 874022474 602754470 662757195 40418583 556687045 285544878 397139186 992402766 998295724 450262366 819949547 116718263 565867593 339389044 749387082 119281790 917566408 324576252 724770625 538866260 595493808 76291038 952957971 146297572 445076093 430055097 595532987 942425189 980341210 255869595 668620320 531920867 545352881 553682945 765793183 600490656 948112740 963455776 967673444 419228777 640214133 58698857 790218953 746931674 888686327 350735676 442226606 843281549 993568037 967002525 975339912 188771750 422402489 869270581 901692424 406515642 894642956 956494978 986101051 549528030 614880762 636388477 638783284 141115799 563720196 546821619 733751462 20154536 30167505 640041247 800918345 869736007 947967111 923919143 966121730 383612881 647967266 417045086 645167756 597031681 723798314 723501480 992555538 968200285 993396858 948518429 976488965 209709687 675029071 658970073 900047420 320164593 572594514 905415430 962733669 638151025 757903109 581446105 908411757 810768410 843975951 410378178 821020254 575814722 944669190 877856392 968195424 689880712 725497398 981791145 987916937 936824625 995327556 865271770 902784042 386977655 614810681 424995178 873332831 984730286 985756533 321720878 463459145 319897363 399149066 525763564 694368633 993188193 993683785 799983911 969353843 525391605 552700260 179280869 524805597 729634607 903724149 517576192 840036893 284701221 645973296 417947173 889150462 32465109 634869963 929978746 962728687 246533344 474836772 692852309 937023743 20063517 463134649 6550896 612996081 270221372 903935135 823500871 897478530 227690453 248426608 196359719 507398396 891547766 936087723 92973895 592557111 434550089 513526624 142959389 407885901 387024052 820147715 140707785 392849647 2232130 772439370 270505652 783817425 137528698 219188516 635637760 776755605 794006556 991360160 487104873 760384075 915242135 926953993 570674673 697640078 115335659 358953192 367177552 815565874 48600029 539856078 890557922 905607884 46514003 104361417 546039270 610637776 401101500 855658752 435525163 569971636 403550574 844159137 996775215 999865649 554049956 769517408 337890885 423434690 518070521 758974041 851384287 919641070 17683331 779570660 182570886 759064942 438526529 453925652 248664622 392792503 165143693 392895405 658918986 662829049 178326724 553023407 46801526 501956045 226407375 701317828 582970221 871604914 867399924 938013821 562237218 915065489 667700300 895579346 96522308 608298791 369521415 451602676 747223988 839152062 697245500 770264561 729588163 946955769 300418997 994165634 199795798 900905130 264030385 492189144 866399960 967499261 80255327 918477224 143305313 417596157 593518596 734910457 562885795 863551178 307806589 700945397 228686197 928729961 48059767 672290945 284515142 698212064 969215518 990846940 342667807 493238136 787496143 926463515 847712423 965292982 603321667 960786645 819729119 974546005 847299680 944019199 272087554 305329191 975745936 988334636 516800530 789174453 598945213 977846149 144612939 981379747 386430666 750033312 863745169 960347352 263408557 689164723 813943365 889972796 75391248 799464222 680462245 825563686 575263485 980906952 781489252 954129276 33784872 71948109 902868193 920071793 755597838 801199227 563927251 902542904 166448572 669559101 399499338 837221996 734085561 860834483 504207238 759912179 394800172 444955255 184573894 345252819 754698781 989178193 59110915 733094562 351007351 903912423 841037780 878586310 404235450 834499196 788825775 868506759 971656503 980694918 54661932 920779941 65550326 699607466 636129559 872522289 369922429 435408166 22490813 966990643 97789937 799570622 623373573 697367071 736521975 740505010 350008178 717700660 930775373 936034554 158388584 264584569 904989763 956325639 478139956 858999966 806932652 894092220 746991512 963708182 670828893 714660901 773687947 931882075 342411353 367333538 259677900 259887462 848598511 959163923 495724443 812139138 169199417 329619948 536357838 954778601 28770414 162912253 767020203 829119002 228844363 686161315 191573815 827514372 323419119 725342187 378115511 905233818 433980445 943172236 308415134 982475217 825047401 972886728 398163743 593805983 610070201 682369673 311987414 417740768 344511919 854545486 477981251 538804147 220085290 325859610 827936454 974144132 340226741 390831915 166191954 776839551 553597765 794760512 145171693 661678381 161585298 853597929 834519028 909892005 706099086 777944835 752380361 989508311 543549762 893435953 10461572 476352112 188379498 945149062 797902285 856823284 83253439 666724402 341935455 678499893 711986305 722381738 496061905 904202457 459274468 502756946 408426054 881771802 498055400 789258698 639296283 967564501 847060579 951372681 814458183 823335094 233078130 662155132 469747695 651237726 581650772 673128876 362395290 846875735 556697799 746522259 811268838 854804819 861068272 969214816 5264587 260266399 784492663 883014362 827831974 995011913 356094382 985312955 730500028 799119191 319812121 853376532 558627958 645899473 111225384 754007407 726435851 878702165 646866637 823626293 850967265 856882857 662230562 726408201 572296118 694606320 396598343 492108277 399169104 916855707 641267016 813236731 938475570 976834134 749064014 928836982 474911354 635120190 119445536 254560482 996223928 996549978 422913698 450507178 274354523 632620318 375519562 845300695 284835530 380715551 472851759 612112109 513123440 770867451 498927944 994823752 135489813 227997807 395110150 549771576 665646699 974299988 972651099 986316705 783897679 988548218 251336356 639882697 53756598 890576254 412582920 636715732 847901550 878446594 768095484 843288273 128288518 723055043 420547577 664272559 885561357 904303734 265058103 466969463 670454121 680342897 376118839 508981179 935947714 953136495 134738569 155880825 20756500 66957184 11099348 270876090 313136609 860305076 483914053 608389489 628180847 830842341 777887126 880938650 247880792 566124809 727131549 834813477 859879 340581497 463070227 777458788 189200760 194249001 847037467 858304435 284285324 887520141 173626605 462524802 68802475 317181898 859377182 908031265 972503816 996818195 391023365 565348417 3899496 789113196 235213541 429177098 955719433 955845513 626682989 706720283 164403324 864938394 964858077 970708976 808411988 846367138 375290634 768247206 252985045 853328011 904205731 980847249 721744659 762151114 11749773 13625520 320970458 597897701 514155209 595898086 956604470 960841310 641452269 977540419 935076126 994125184 488233678 540223444 456939557 553477137 385434064 574848690 625027648 763068597 527970431 568190150 595935716 657530677 758276684 858197092 381004863 523937175 98731016 796005621 558432654 734250158 48075143 964881506 419835340 693636031 388304480 558384632 203665326 460474068 423960807 708967249 456432669 881996004 758758074 878419674 81934573 110844218 567705025 831628956 603773132 788946638 734336869 905759474 541506999 618195551 388070994 444958376 382043062 658187156 305747802 487102808 866354095 899480650 584373120 802298909 196642321 369497544 627292650 892128671 495328236 513845461 862079356 957793398 270349903 822870656 929072312 933399683 321704771 798151550 275276739 351458073 213060375 613147158 132098734 800745724 844906929 947855639 312377446 497310581 555226145 649001774 904821351 928543687 164819096 918591298 104040192 867257731 175676640 936008872 487661684 943321159 761397022 895798795 79512955 133521229 334746607 910149755 631714266 913781736 862183257 904788596 65481099 243040403 501244704 832461817 185316231 756598341 78885177 375773694 341978973 644817528 427830029 943425237 708542110 745898039 402628097 485435604 387578115 896287223 4047434 81900112 63111030 979005221 229472472 647251313 622237696 704736471 896543615 954103724 550312727 823021434 189848680 241662000 418849950 814377428 655739293 886231128 91905555 788305051 47549346 71697022 675310851 999221986 872548631 969127680 494817490 541350477 165686159 217401590 688060372 875030902 807420026 828074654 876027913 997252791 383855772 875085468 213473746 595134259 162008915 630736126 902936959 935797848 982019322 993445447 340031281 933923949 200972663 758820429 85167987 812005824 929018232 989509175 744882641 941576175 675353256 712125514 68729451 894680228 154784409 625005792 395924916 546243004 180679732 857485324 933165402 974726667 346231786 793900981 958388997 967866679 357344150 922595665 826872961 919930914 637003706 673867928 28330993 355684890 757267509 875769586 998014133 998670628 410453135 632165582 583589095 872446631 133611544 801500119 487051651 791639717 532021421 765112649 444303906 508604249 830897560 985828603 422718704 589229847 352011128 814363785 561173983 877003893 695361625 913209628 953912521 988965897 927046011 970585061 100348570 627407140 921177303 967467108 529543502 536432238 313493677 349714746 222022947 915475301 422305703 952110624 981512536 990285869 720469395 959008264 23163056 904482410 893405896 979276550 796012178 973894545 329521603 378048321 258629996 600535426 603647965 669286895 510649237 614963563 189688672 462929180 514633269 630644608 36672678 349957566 662082029 813948228 502918524 631932126 340119363 752220060 319336246 935486896 416200952 963319683 453984552 579998808 997559604 999764015 11698819 202772723 369714627 521411311 793979592 921238558 957019075 986989866 652563734 945607827 706361643 784327924 45420213 414643449 19812247 278720433 719780593 786684273 980760705 981842035 713795727 957538542 537532994 817484708 713544128 722417985 615183361 651421901 158822283 626970100 321983328 799085303 642855385 678498955 752279863 800033940 581223851 696426982 952125525 993703680 958922949 991898362 779756347 883210236 724129188 914163198 319959759 792294114 25947429 419615753 340495975 374895667 535320508 877216593 876289696 937041444 496190036 725751156 824103793 926024847 830937040 852034722 257940795 456120846 784512172 910640529 62894123 468637619 851579231 889402003 698749355 960154663 927889660 981776375 610677620 870596522 287613394 871420239 498514497 722070146 336142993 909967670 815177010 824172470 461216810 928268016 381648935 411644899 994679738 995638302 997032304 998613466 288227127 427544214 678496918 869403263 947587625 987029362 796002882 824198429 3552532 421229295 54608741 946731747 763262006 913941746 921983985 973275322 218599884 659638814 853201000 864306445 329004863 864016149 68492700 453301323 721990871 857823093 735755544 997519245 446913455 634419081 925772042 960453434 799364603 922612255 666354961 725897134 352911452 691376636 851627347 956901892 946031051 972182010 407580884 986749618 209137094 891713915 805052814 905605526 378058192 966817459 534474542 821226178 445897384 773145926 235260037 773802744 395750312 697183676 865697743 904198019 183337882 398511643 633268808 645878614 938413499 983531890 326634757 785054552 347146956 590960476 457898824 925152492 777777323 979511888 791595733 833266321 160926383 723356681 30845143 629109418 566154333 598510580 785242958 945998407 297585127 481377632 317874192 564384096 549855568 571400017 985417425 998029886 320715908 723903546 847475811 902251149 235222909 418141142 65504735 332474625 815712545 859355485 326480098 564246407 970555424 976279379 86315869 729266908 588264671 913965000 809510695 947111198 8875297 102338626 321512568 609268789 30498526 582773383 477153608 924837093 81723647 514634179 329653278 435702972 31586028 821372730 339803495 426990049 550773804 822595282 19559471 796417427 812171041 993480096 34125882 595805999 109973247 663778653 584921010 943150843 16464020 223504163 10133325 385683677 208512480 876963630 827462639 865400014 454191809 627080390 850220791 853013898 821564285 866781082 957920509 968299834 149500366 792510234 239162722 567888276 543074023 601728957 230199775 376267494 330115732 662635524 800951197 991097968 59661781 948266691 112661185 403307497 256606595 981832257 427437256 533822777 461760073 721909885 37199907 242438857 933202510 993474524 641392884 915064532 944578954 990389167 769121593 951042138 632578434 993667714 811038694 888904353 479494854 778557045 172883660 777015621 817317517 980979201 106912433 635599790 663777124 945225271 222180689 597313745 994295712 994590056 170433208 793657870 833657796 869850416 577007975 767551633 141285935 523348270 941589079 964896586 890719163 934347085 168521297 579941646 962102398 996457562 868646986 969646811 624650024 636593879 357210618 540405731 785682747 916931095 796089143 986557798 510052662 968560420 202567156 298375429 556140868 821551135 964567696 976097393 825867647 884526307 887314508 953077019 223012764 909015159 455931865 761040948 705862406 881976008 991128823 999309458 201524270 973607735 18266403 335049985 908078620 960289333 614374881 685398018 605517974 945812630 313673229 497259036 346088492 412520557 425949599 738887565 988628800 996842949 767925973 930231069 638570109 895823487 607953222 726226934 877887989 933173723 864334419 898566120 760545467 999886041 413429660 624367921 722611264 994907178 234478271 835026629 783423694 998609436 33879438 395691661 362831999 576823388 987871208 999202619 50017003 931308444 235805828 750814332 200027512 426722982 304316545 640428686 118741284 373427507 750336954 984664639 175055221 890578838 128687851 896906106 2697853 689785471 909281911 913134801 297006710 478160297 60292783 895828609 722225901 987407129 530509305 834901206 56718143 755851448 553364045 577577358 915483732 918302313 20599802 363146430 667237378 723453899 923645827 995274355 836078511 853347498 271849986 298990417 105311235 146146279 309085208 685975595 798200382 833078319 35646576 485294477 515657166 786125366 518428819 712781319 465507468 559151461 263220831 837572096 626237838 721680331 56612347 330258064 5962028 317844369 248604783 272410617 281916490 639509845 101531601 229464368 452516663 806767935 261205420 586113647 149947814 159854905 882473495 933829460 578961250 821851081 589257697 803948581 294907602 403950842 689819296 698951583 604167537 690074309 314915964 923279776 465163546 825373325 659904972 928705301 661356868 844286711 474878039 503180414 693486926 777357020 895755920 925424513 789127008 972460320 316877698 950135224 870518969 897933438 199722754 947932359 128442717 985612868 951090368 978853027 889464218 901408009 587722438 633737470 703860703 971101556 870774525 913154351 340733295 893342143 904988737 934001854 935894944 985400588 693409991 796425567 848535568 957458216 524132981 540557330 155106307 367343174 52011400 281290622 138841599 153192889 395278106 918843230 271609908 508479541 927183810 937399754 498381022 771714748 223138293 485773711 13691406 130420486 538060362 567398706 839835076 987976829 612187885 921425260 435722436 777605662 22219179 510742868 61326249 703783218 244486915 273089620 239593252 567461125 905882689 975551123 993522447 993631917 972342416 974310448 466760788 798949265 541976344 665449884 624250570 812335952 321728625 775323095 965334535 975580185 219297544 431056819 941112569 946394734 395956831 858093094 541292373 679914273 275180851 772744031 982602140 996315155 585138606 917911220 423224184 645399164 80833530 688684556 24163367 86087453 692035856 985092323 2360529 897582410 898633499 973942808 609629052 769622999 629062762 709025682 503508815 692407350 562212626 782951780 838188860 907124679 112946295 254295345 437277877 853407293 434548594 493060273 126720807 760572015 160994663 561515871 100487876 239628660 503519453 811511813 841513918 889882824 833236242 898303501 577961871 966676696 289003591 861040580 399968386 586205497 839308321 884672273 432160216 621542915 822893480 971315639 243472087 734602611 704611465 949391976 282469384 482456986 722083222 768476038 405329491 687883406 564561551 702353978 317067650 656529876 835994345 842204025 792439703 930363267 684386850 910212657 302162499 975549002 482364023 579325496 819470488 863058219 851824520 953736986 725307024 879848469 879050678 881799321 740250559 755235956 795580635 801183517 589534840 896318122 196736509 776355812 605813310 651112150 247295298 277765236 927604371 988241389 618379885 783968891 704616525 894781616 435226857 468952726 847541067 910014571 808277620 850560947 324179038 364910496 421243043 653514746 970491239 986605591 34939243 228105604 482887520 994944204 792082358 820790244 479140828 854161759 259584100 827023597 258846020 989162944 751288182 812280573 544872759 558280663 786176014 986624710 907601255 962437840 233257068 337098304 62039312 931503917 650881327 699485105 850410322 965172144 156410152 631081796 962518140 995141247 121360108 827905532 443806168 808134542 50034237 290924164 885087382 981155952 155849738 358427505 902754875 920154273 819699641 849789418 2814698 887252192 996453365 997292879 501769668 543262374 753874665 964806243 41383671 524743675 361298200 872574857 689388778 861264409 254918491 420406613 881311386 928880986 468360359 723347496 982920252 995861599 336257250 729349932 738107438 864111155 583870819 784029866 254133060 873539531 95654777 482779588 730424951 889115911 632755425 939277287 275657772 312698571 229191389 518206015 211971485 271101586 946974502 952459581 801117403 838387512 707154893 746149219 644690992 924181822 781416704 864176023 367925278 759116794 689196725 878956600 608557334 646021408 234019339 451902655 257503927 329611055 573740027 967660904 952471337 966904288 263470138 464889445 26787833 155271261 797999867 917279446 584797940 688701614 764868471 891705018 182914983 990893472 501766243 739989822 465644491 857189046 261813858 615859259 834566153 911999667 889213449 969695306 871833961 890963149 556400158 668076650 915474145 952733741 763890092 984876295 293240241 989553587 265195051 768311941 794277382 846866679 932846697 978527598 859316874 911160316 93436858 337908515 273647077 951435480 368876299 784005617 955224686 980645374 592303180 973974496 991672093 993587582 248811003 426397687 663255067 687621452 330042291 825140414 863943497 878384557 46206919 421652079 939914339 976318169 675632488 739757131 558071165 660924299 373162008 752525703 591820271 842703527 391527266 523767173 751757714 960929109 835420348 849839127 780505346 800702792 251391755 368610136 285573616 556852554 95467349 459149609 11240163 527247510 500317147 595939306 964279557 968821647 561044081 994660090 374626892 941695807 855349528 974056812 600105033 717364706 59641161 778697993 462618955 854172147 128672014 518272898 634414187 653305590 79419925 605545757 142325194 416716706 228982655 394882785 373599169 853024560 333138768 996562014 790323079 790999945 313744874 931615493 173168361 202233357 888242214 892954577 313413951 919287865 494297928 985808028 607299882 645892393 110412310 466861466 727408378 801385690 432453605 654299345 268906110 728729507 446739788 595677498 295068804 387648452 798032695 949378900 479659279 660853146 794721576 887140906 807466419 898353291 66983349 195489403 700158491 866040782 910779065 981943864 621161816 844859574 837775945 926801043 259487833 992334079 948020636 966400861 262267413 355644859 117229707 977175920 518482521 727615375 971006146 994039176 376533880 643533156 766053319 774634247 866341880 924683020 965167173 979560889 984104855 995938810 641613875 655466754 435354732 716557782 156138332 642132644 803751226 979766626 802169211 990695796 485518004 970244985 866614339 928054954 997238700 997452733 709334732 721385299 541717504 803918534 735549801 958485044 940163223 988620643 215849424 230284981 849523290 944341947 562193568 723665236 813237437 999901063 229460296 896702407 323377741 703041046 136251891 716302104 526167898 726022906 487752859 644046326 404283365 925489771 866974177 984474380 692204071 996547740 486099352 801684603 660333745 731543508 719001377 939727537 459493312 560243266 208254273 936909341 337739487 908837999 35440375 846084242 506665304 789405830 322082513 537292870 598926690 648746680 666448011 749223098 282633079 713604253 677745155 834807314 91659461 948042711 625986771 849525289 114099146 830756613 878773541 966844538 527677544 781682511 435441409 918026416 794672536 828333342 541395307 729657286 419273 408785504 209221569 377976459 687003152 923838065 151823680 299440561 2680046 206352884 314029391 673628557 603730335 745975165 810717678 833802358 40475462 577304288 133458817 892715687 717179480 895305835 736729841 849696081 398322865 450971419 232528675 489632581 634184552 726917799 638275934 894543824 48539462 148278145 408515802 521243911 69297907 247148302 495519905 509521114 867135046 868719024 86386695 657639984 44044382 51439079 315401584 651856684 470242665 943907182 145444149 669062218 989211272 995039128 30046337 720751412 166992186 494156996 85246299 645993355 163570393 842371203 617049685 884242821 549856883 967105158 741647038 782165380 764048968 889584322 857202774 970172598 210699847 258669518 534499198 619416840 708882183 962925261 864628714 917990433 501117441 545399919 770475024 961104615 528610109 818644905 254697386 927385039 690733389 879180588 642347837 919889314 890998033 959348101 484147111 664305025 702664157 920239317 833222949 923479222 615192202 998701391 982766434 992779707 932382312 996867200 657496218 873627959 259819333 796631753 546742466 845396020 290537620 859207057 687228502 879441740 937240608 946592111 793916080 945327900 737256101 873145209 959774081 992965478 508386737 553797522 927565813 984007176 141213400 781025757 616249129 999087911 767610573 809436813 40766202 259120838 238769573 963631805 382806308 393347518 328902530 440966235 75847273 325630509 111341098 679311570 106933053 870154953 103684937 453380702 979610903 979937951 689048653 884889690 472174213 487128911 705948812 802938606 791975941 800423607 77846320 751231685 543699413 653918522 188059902 583395051 694294061 947676841 475099647 740070713 628815789 749953717 155142619 591213226 254817037 711459806 576441017 638072040 255868303 642605441 839796681 993439916 291754184 395547648 52294541 413419313 172617779 240708630 250056485 349509580 99221560 836705135 670551214 977126937 926829133 964674710 720259506 758071591 405087391 887060866 525612284 885945859 467202690 482138274 695054451 958550399 967842195 987118748 720496008 752782827 131380604 223010794 411719476 747572077 364490494 760089913 994661002 999686510 245106748 376990558 884953501 960821039 523004941 967708620 457826875 726401589 307522719 931923891 188336828 649529839 591745272 955171338 855838535 957144631 457363173 597532099 476840465 975854923 766906943 924452250 251987816 794364636 933421678 941156159 202512615 672087122 492334677 616562249 66509277 290064600 69076387 681412790 242098285 556948645 922680690 941406950 630664115 851646446 322440839 844165486 273432125 781300183 280516373 530886398 907337674 963174821 441365383 749417710 302892163 796704466 733926756 736159220 260560879 348940837 669334821 927578304 322567634 922596986 820939545 899317879 742970538 866128335 319931720 940558308 915013143 962826171 403428783 884528262 549417907 957775800 940828861 972352163 504638735 569323541 455078058 468944214 260819798 550123306 85236243 122541956 882181844 908702469 492228348 980486244 220380717 543937630 839405661 979464957 823097602 916050232 968574968 972589384 171162971 967536212 548416097 754441825 617599844 903595831 171457806 680665249 491657176 535364470 90157797 496279631 335905573 806034632 623992241 905748622 105777194 932311930 325308779 736094779 496873008 587559832 821710883 944617259 787755280 846145805 564421611 785063139 852498760 990803195 949347108 958794060 256610599 672973625 635072932 910321493 497654830 897066540 539184310 765970767 527853295 628091129 647777141 936236237 11642061 793418918 763558303 940378017 943168991 951173160 117878542 146088429 399061756 835874796 104410615 906117195 776966597 943251936 301300804 986965493 553020668 878572774 172554804 616231791 672802582 864954473 521866589 550129938 635532370 992456392 961318028 962478543 760654430 938097880 662105970 739132400 287437921 652324768 310405880 756665218 216581957 286210587 820535439 899618551 793773118 798337064 812231055 995994560 953188556 991666307 352708501 490022521 231454256 426962254 204751054 404509364 680364919 828570897 946746186 961999076 974792241 984645114 140587583 747704798 731357064 778098772 18211180 347435939 342749261 442882283 735972112 770960482 546028361 816052279 12756836 990124274 765471666 780875709 323507910 328592413 486555512 933165514 544929213 956565784 807355969 964060276 430596539 993205543 217856473 407590033 704432218 894077094 72007142 98724476 269388896 818578897 91454726 405326070 783517152 786165030 567154402 822800652 333516792 820286491 574603964 775358000 669861559 768304922 689739090 913468788 710431767 899964096 572598661 818688261 684449334 738316056 564540846 663075060 310103244 543769451 376469147 774846527 497093114 747321881 921210846 969911322 712676220 831612900 281369963 983923804 408835909 623902894 116402877 543547467 566300270 865972424 899833155 983583342 622242367 747905916 12203503 402876283 551940364 867137183 894731246 908801086 161599699 196547478 879943647 881171304 966490372 974642121 853580591 911310108 821255517 981182299 479608310 625944061 241828660 899184103 786812424 906106886 494985965 759771180 676863684 899898702 561776643 780872321 659113060 735157524 464915982 888223894 742145017 753159531 263204569 803121387 753927586 856762629 879276270 982651065 41670047 801880271 699999135 875674450 716908253 973763438 931872829 968926983 854242272 859131708 560590231 607145047 292330188 356897546 536719477 844213179 178426105 726329782 213729406 652049600 62619576 678980731 77229350 881577293 489705437 663365060 377886234 732493626 602051854 896640064 198743652 294971288 20457822 491255468 14943299 129883584 862878872 914606781 162427980 792122738 465941002 612430614 694531087 714013860 973365553 977761146 223731575 400353667 430076184 973791356 906414530 988748571 412504891 451305756 145194324 307561120 302836137 902999468 199144595 427378086 725714734 795050843 686042539 712954207 811910567 885974632 268814400 420835481 741527551 947711222 500110286 717181039 627914627 710830290 359127638 966990997 602695780 841445766 903696518 913392070 471339563 989982527 961145825 963603263 551636923 899858761 184221671 459983051 534367673 764742311 209081821 717167642 175673802 504387646 882808435 986153228 620270474 937998867 411351129 977774356 595751106 677322248 468225881 890531550 856362417 939665577 631053141 808358261 102647143 189024521 92535727 323350112 747858227 795446004 64051411 549902856 887897112 930109661 734392405 784936375 914088638 954677739 105276529 817350653 244042860 465639685 332392056 685393414 376226214 572140810 555399992 964577084 149459240 714284164 548710045 579290771 374622280 483017057 732911792 933741986 20327570 684735168 962868894 996532674 488995707 499188729 540689081 967983690 118504273 440947240 493524205 662111500 583963411 631554182 476661193 532346546 254081199 303706935 353381766 886420638 709628829 949548802 468196428 996041147 438805852 661356601 940847865 958183915 270904384 374737425 794325778 930187368 99576083 706962925 594849544 759258919 892714364 913583057 8585894 128882465 412159733 687403134 20136270 271489514 496198069 670660201 316633566 969510117 163887673 383431164 999820595 999980872 182845149 255193980 135656574 523558805 375202871 651790322 337565768 590285013 750264195 789727803 802958369 804202973 717761125 739937604 277494051 621411938 609304982 756376816 254919585 617817092 194801977 528226857 626957462 933431653 992154545 994163581 143734876 146921115 247546385 364966643 536180580 972448826 787522398 968878660 279280859 465006173 915672913 966916281 194263708 501382869 431281320 905015203 963514821 995603103 819124903 901868429 815698390 838290280 762294517 813060337 632650652 711334884 768771457 936450525 444103046 870322759 855338442 903953706 301544831 783164128 921344642 973009324 704130601 937959709 765519791 879249559 249495062 249887577 850157423 916882825 330855000 956824622 901579334 943612691 964401717 973056243 759502403 922623110 423972532 897496184 735810022 866286819 352714992 448934800 343770227 524912166 74502860 219149395 674398167 732887159 997757487 998511628 444937458 794374966 997444193 998608941 351183277 887753528 709573977 910513774 675408763 707023322 803865386 815055810 247376596 573009078 70087781 690553669 274783289 302114964 53340125 521751690 503152106 819882098 538798189 574051189 515444611 703317270 562223658 752939783 5532917 960110318 280814308 691303935 656813746 811731256 98029755 242673210 647291250 936277262 208592692 999350832 784607379 815704535 407011272 626291156 658663032 941951356 816414632 966575309 771427715 990386030 253482979 974260478 855010673 975430880 229482677 294222419 68399111 299342716 791663917 930677016 694136510 993321491 868039744 925597342 675790913 728398273 440384239 467113986 526069026 782945745 24668564 223080276 35901628 170872298 743908122 756718345 703695599 820523081 331810882 865379920 895009414 964350463 301459350 966771661 216395804 679595194 68166334 169659196 233217089 683466786 291049929 816032673 445288276 521927146 383614297 612317072 881976531 912886626 277249218 689476935 740865219 856990746 69842610 359861442 609302973 887949744 475665019 658936077 661492265 988611014 297433660 840874460 21385329 953463150 320100589 937996479 625966833 713278558 760110026 968523972 957283990 989782987 232709065 638372230 979790136 987037943 523722266 686364883 281597172 536950125 983235480 991825883 724444756 739954362 781504813 983857043 710237279 717179699 50410743 186177918 36131921 306429855 285212925 612023604 855784792 890484691 230216261 580794557 38356490 538477942 250314304 898294378 76272907 946535666 544367290 900404590 449406869 985192507 835991826 917944972 392605779 829887656 4051995 139186204 535916988 680411087 346214519 839625612 553893714 845483190 721638272 998413291 960259179 988153343 424670287 710278594 472920051 758190903 121629222 281328404 324162310 645804784 666527717 794027420 484600770 874181975 557638892 899774845 608519445 899869656 176638698 331037723 1221506 838135470 920816507 980181542 363931265 785344888 303293969 383761089 395217589 589772318 157516571 558303872 799496254 847708285 326860638 608867264 914666306 927878695 593556472 791230789 377148453 861320394 770274105 880887864 200526854 472506198 951461253 952497151 200848101 360498770 624800432 883958871 849600871 960091090 299533319 975983900 450712150 453056168 369158026 615239231 581310868 842614073 447395752 994475875 140609430 975054726 673706675 706921193 269267352 597552428 565807040 979798981 641958605 792232284 357413200 821189557 576508347 836753151 561732839 934837333 708670689 772246280 21204522 21964413 557251266 576485230 871508776 949221367 14558007 445008349 432698701 688829672 825673328 842599250 640232315 893128497 842426804 898338272 686664124 790575212 801359149 981852962 708595351 714105325 622361273 962067759 288076113 300919430 729861037 830688626 450423327 891779419 703958840 806322969 337967501 489463871 786344141 947436424 727979666 851378936 78021664 415431558 785024160 919341043 821441023 838393199 508195670 780584320 400807614 535710338 837171812 842009256 763401547 805405900 506627584 895942279 422454522 463145506 25964144 132280154 445542975 804835139 773253740 849962677 290102426 861411666 403038865 438544564 74551984 848954150 665076738 833705457 722845162 751457432 488108884 524750797 158875238 600993361 895792245 995720440 610016357 665839411 582386296 672442947 695323259 848458482 786974530 997372043 151657478 617212175 453104243 748369832 211493245 472661093 487200949 644696401 875956283 880625476 158492107 753588396 642762123 917996119 523657316 739640677 488947187 695778783 166305104 430063441 241826164 729588725 785530159 786704553 529365954 782088589 239657762 721304173 831755744 998652321 520407894 979307830 832530231 893210132 969479063 984133664 960286861 981528047 199809135 905140163 938799334 967576510 863246973 990145150 506386203 699553121 713289776 995874951 956504981 990093027 336408444 710984858 215987352 284159565 430225563 713954245 98418946 814065008 970283462 991627135 50497528 729178038 566814162 870964545 973389659 979399983 764405613 930000983 30383904 501744051 568362721 580834624 661933667 831473278 184465066 296765955 253146024 524733855 852045465 975082337 741303510 959858103 614058900 768696456 418995487 824115382 306816146 733213960 13346209 170093397 502712308 659536882 507992107 761678380 176002507 952198420 347230464 410132228 375577129 680700862 524231986 575610012 888847981 972579501 168109898 414133667 183605744 902455393 767190467 863220453 121538783 267095077 523139993 689098505 987919881 999426713 476653296 550946561 482796051 951790427 164289271 809494558 39078761 971991036 349952674 923661368 121037979 611073271 633395387 867533308 265603471 833606181 615462783 691584470 255491391 441271230 691346818 998603718 444068021 971711077 483257425 525812325 642861107 997211426 210591221 501565697 261346699 787894127 475344385 595830415 161065034 906628620 613741199 653531275 854334822 938983198 350326547 886479989 882972524 920157144 41849131 934265293 560311910 610634061 473136234 599284637 94513980 966769327 262743663 525919208 874981670 917782773 386969410 757811171 131670575 446696661 199925358 293660011 846438228 993005197 508427410 952252258 651230774 897044189 77669195 937593147 222749069 276697591 287464794 710101063 647619860 660603352 279438421 608999393 98969170 242454785 565645914 654968854 712443416 877722302 61757691 101113631 209689602 393524426 613733136 912385404 775089863 873635296 521811357 837749879 99353071 328660406 771223786 889650837 326904277 348395467 409386294 817243768 192853892 477251267 821692249 933471724 673592006 940956271 906097204 920252441 2655903 349832929 355339463 881006250 302448068 572930190 965649509 975348689 482428531 900231749 991560298 998163898 976874900 982343818 453257672 727798660 565267910 654318205 490943214 608800979 984865542 990400513 525019947 545409770 524796612 715980338 700025840 832475318 543640933 719350561 88031667 792131811 204418382 769803327 584626051 744553019 451977545 771800127 793049402 986256621 268734365 598525413 266624947 926840046 439514998 749688935 181908548 436700362 273972869 517607556 151292723 215819298 668928869 826754207 590701595 991268908 982816671 985119047 418103893 870918404 184495416 881702009 743653762 951031493 617489274 889901045 556574177 799958058 120475854 732209556 979927681 986417417 953208836 999242267 571039404 596043016 981844488 989371470 224451797 899847781 577835761 946877960 987031025 989196182 208995140 529852140 314419392 810210967 542194652 781896537 494950873 798470637 216402314 503403508 244506293 700258542 312050772 485615477 175668929 941015212 82003602 691622217 664683978 928595509 947540822 989621596 916394479 985984687 286348683 455286518 877803252 981614529 217889524 464587742 802878857 819261642 619193224 909710221 123308135 168151030 273937809 495949052 216049242 655778921 515380439 630967433 670206144 948261579 896305268 992039290 866564450 874067910 537795365 723256061 862958049 893014751 194603393 540227172 717511053 875555439 361315941 385298033 777563559 937609350 657147042 943688337 616951103 659091665 975397121 986859046 903558067 934725714 720435674 832641815 96714343 338204846 359264506 702839350 178606423 625396225 507590649 919388521 616555481 843658746 480183155 744548566 158333461 780004824 899681421 933209380 923274483 976808770 330523371 757328177 523207428 760755995 217448166 982942746 522978976 936988767 278268509 858922575 473869159 642957525 850739284 864628858 419110878 875475614 134102823 147814504 722864150 729921410 529786067 888764486 975736667 999325772 55527083 853028598 420685461 471019128 445876264 921768715 527733156 744455471 873085878 950462512 432853537 455131608 72026642 484734601 841989544 914524597 410592498 458522579 955669067 955693208 755313163 781606718 389231915 647230381 22722460 837440156 156194860 908636003 865372385 882970989 951665362 974432623 190962887 932510782 79391317 244831572 370537890 418971409 148980167 272986106 168525730 933799499 569122576 831664715 293558363 775116842 740194713 952117596 358797631 820907226 177780026 713148914 413092761 634056329 492704594 955981744 179597327 570477565 40869702 397887724 394922808 739506687 825168697 871016727 1536955 230680543 46110865 479959302 354318344 446005914 627497307 726953641 609169382 869281307 900685994 963620590 952001523 981108682 572764432 929574374 532574354 645977111 863140297 877202397 467283419 601668785 701153509 823429385 767299032 927505496 129026539 918940134 169552760 608538710 28254438 527639071 369097402 534941467 872602027 902922312 349634209 485919759 599915305 861631511 729248674 790525282 290050541 882096969 275315899 633523183 331851814 964727874 304199847 343766951 16774612 275307917 905216948 989729516 644915874 931160617 29960315 682290805 311742022 486543387 640233330 933440304 725494468 785017335 71991899 391744054 160399136 214719953 206511275 286063952 268412886 493999004 856592317 998320682 264036988 949970159 630136833 718512233 370814851 784894004 456974342 701031585 205748465 663741155 279783287 389642890 671581275 988278858 652149834 765238339 217643570 394338994 604568312 964558247 138714715 626596449 857864735 958313859 106142251 489300552 462609186 698696669 666016199 981658241 849587728 862443128 266041226 545614219 195389180 742473777 753686882 811271677 391465520 636722560 131192113 860236536 303671684 825735704 337872561 541146327 816682776 951495432 714030897 938878383 601862746 762381773 66347802 683161788 404698616 549716421 576871389 837115390 652457761 886105632 822552263 994468860 414490102 847062010 477549051 497370839 80789109 538314553 453226358 921017187 227472564 373550940 83538618 239384481 674649754 729223677 70254133 516168286 87314184 366652541 357670584 616160496 732686736 765570559 701658481 766413570 699024769 902282318 173367603 740161257 366200787 526696912 629784113 735271282 426423127 609530133 265656377 658733789 835133809 978371036 454580084 810119316 146628729 231661266 703755776 766829801 885009150 900893627 23577673 130638880 946349485 967933653 293917920 475937709 285421675 928105801 884074896 901454857 248118358 906599306 294014352 417627992 391972202 936117997 730909332 981033809 338267339 793175475 505208220 661080450 764141237 780694335 104473440 491273901 351161566 939519081 277756317 766823362 937804583 991615880 514259757 948712395 594888584 778406593 998910453 999071645 567683320 686168375 50618797 481712540 289466967 498064510 707634442 781410926 933710470 953120874 704112661 821354236 554269706 703062719 944137363 944984679 802174472 848623961 952109986 979372322 463044180 653119109 417510134 573837653 682833237 856157480 440056502 910204732 718322948 862517956 375633183 885451649 735807155 989076639 121608017 622089724 492598388 567665591 473555197 645410249 825680401 931915176 207117494 617562834 207979221 861550479 341389885 718256604 982447500 996550583 757500062 890878318 537009514 749889018 407726140 706975256 624683010 944339175 379777103 454834150 940136705 949587861 18016579 281630973 667288822 727175873 801498296 847361223 631586091 953062195 504487268 514373337 95508495 265876337 355653019 728366680 754895721 834771707 570040958 845877965 139957855 663837440 90851147 740426784 486365713 866117230 380502721 558527873 2229790 776787638 902647441 971123114 766363789 817941370 391695339 609415609 747227856 787357808 7737328 975987465 497070448 518279475 670512029 850893677 471762906 733575378 63230726 274014146 792464635 861128010 592964236 733507914 274227095 400764819 642260574 889210898 974412430 982087529 776109751 956070333 240235479 792992818 46161689 319631968 37933449 825410806 165260266 180802984 598891865 778136612 233037088 553605160 684778954 800449030 981349296 995633863 585861491 597996776 394356581 816652013 294944208 538285281 696216675 861729479 269460577 659978196 6547153 82732814 647530537 708838183 638609491 841353588 661589098 909734891 873631394 902183499 546092321 676022292 630912463 919098824 584342649 704574030 123389654 670810499 188858596 378528020 771530541 855525859 820317439 976128147 717533976 792222507 186387545 255696641 779778832 937885637 766377474 841017918 114413269 401010654 955806187 959827278 407679784 741812536 926700962 942433953 546101247 646082531 676475624 757049962 213833752 997673311 635903361 914450173 552900030 561403711 126514125 877670296 357890283 854153502 456852174 679492359 477110253 984414024 414630812 538374581 857106149 897961309 279061873 970932968 545510058 958264971 947497185 996107527 429391782 847812052 363569162 734790524 943064437 966816699 399872501 738150800 371728047 431832605 199965303 798324964 102344000 327457212 987193023 999014200 1351950 981718225 168285451 666200701 902875856 960682954 291371429 682658612 684656241 732899903 489194731 890664644 4787091 657179913 447369612 492370630 783748851 914818957 960530040 983673780 553529477 950436511 464893482 514510977 72416441 117399602 272780308 861244200 800260748 934945498 418672454 492477398 810112421 930109906 916378574 994289793 168188357 947190249 465663652 996660888 313792702 672497462 8799543 416203746 896299819 986780038 773516552 845071873 850226572 879601086 333562291 904254764 112906976 270531432 637095165 956038562 850602110 981396281 484647835 730908341 78737816 669871227 958156560 964220939 690210461 844730472 760594134 802862235 591871927 645366136 405482423 713017639 161821152 661200554 37812960 56503155 712442563 948447117 564633909 981429773 265007866 580988718 631312338 873889912 842060769 966462621 234574639 821727638 166229093 347535875 911531384 931839873 950216327 967769262 212053304 879413128 637528967 995604056 98577421 492299272 732504967 972888067 700274948 976964273 757404284 922355508 678646483 818478313 816449204 970740141 751738098 864774464 599379246 893592117 162255537 928090964 258456356 819254148 722856307 815515881 355850407 685128709 708751552 906885462 3389085 93802840 823100605 859671840 491644188 871869877 2465597 537521666 653236191 823144979 38458092 241395621 498962553 892245273 377903094 509182508 710861361 897080875 787393839 833051577 375892333 988578947 949972125 968490631 531721315 586615341 737281304 786002257 648870366 759204490 113698264 504291362 179905207 936204122 72923894 875524534 593221691 664211067 994469985 998809644 412534475 508209623 100764187 395559123 794743681 811665281 348407331 734796537 422734964 652775740 596091524 846288799 353377052 448450703 600515191 812674440 597113056 956412273 952450791 964829418 78988948 838281104 768818428 851063175 332874955 345223748 9677596 813334599 120982655 435117456 718977657 864397841 578559495 958042912 221934325 364358233 586859900 784518317 923255619 970225833 7898359 300729120 962966735 988797824 787984088 812113116 290868803 389167434 228612628 802462614 108725295 638429897 566207397 837580153 336159261 394088528 636477126 857840474 302413345 487828461 113461755 551367469 10358540 989546541 870495391 999937080 173125853 496178765 211019093 303097436 802617558 856465266 678672872 998890003 914718636 976407816 203590958 586166785 691311839 966866352 882744394 883675523 358578049 594678103 251451114 429972266 525713857 997284286 241698422 640142669 136065980 294153597 445911974 808420215 264585361 672883664 753360298 959342850 490542110 681748766 412164682 893089517 670793473 872002834 833741310 994086004 998613812 999879817 962673454 993025848 481382866 754210923 840051714 992789862 135392590 753307738 747070362 868269351 717036001 940221653 545665583 741201942 739466434 770153789 281879339 592735596 856596575 909353523 67868371 418325147 905671035 961155614 873548292 901951222 960687522 976481461 712258643 789793214 114698214 374790478 229599472 505756602 76643644 252651431 97779089 877327541 525199408 617253936 316424957 526088588 63170595 757722489 69998279 262865701 263110807 569806796 8948089 902750863 727795544 950275590 135527733 977475390 467987160 724790034 541437036 800162448 635652644 848600696 248322830 407067058 612059292 691746305 151578361 903539072 23444466 824692135 799633820 969625653 911570783 940055968 304967861 474986193 68651725 521784804 513025531 964210047 872547725 884169411 127465582 232453125 919961930 987870761 492948163 665987504 155603669 433362584 923921001 952982687 268184572 620066133 385287438 426032466 986968941 987143153 16674629 849724625 225849430 238688834 614138900 867235126 706143999 941778997 833662707 963276777 567353618 997108334 898763984 912649305 893852486 986393119 91943891 773148420 556635530 985509617 934743935 994067593 539640509 781972083 963467555 981238398 525910736 871891070 399582357 511537665 22785961 676062654 341623784 766415799 485098427 579249375 600772415 863597038 123008554 559317123 655141677 766800371 764073100 813551493 761369734 763423714 854893471 998991211 863302831 902454252 869646972 982271264 913829127 937105114 21647480 394115710 747003157 804159988 76290912 951598551 535598269 757267343 67389708 81193045 234456747 687709205 432206660 642138945 277851690 862526269 978456731 979020492 450907904 569837166 647145278 725186365 225741640 744215759 706544671 749517074 941134390 966657600 751888518 797571608 104043979 641731959 875163741 915965826 949818956 964413967 444669614 652200541 318202782 824597382 184095471 304092596 612569255 847247143 871156443 986260508 926769833 954060568 18943107 107121770 483817050 632548412 61083236 923209588 878963020 987375706 378622463 428664992 308315705 701400601 125423014 151531866 617586983 785886911 835670722 982931976 188987452 570996260 206411526 283562620 323421801 344316185 331301586 707576245 917199709 997754528 688417344 996752877 105985222 565302882 895263028 945480120 816972739 992217883 934266748 936552400 756997277 757896162 901770896 922699938 589236859 917257997 912498619 929129474 609196557 677089382 696227711 707688869 206395248 835908912 563562928 619661790 960636143 992192781 186889684 375285331 102912190 669277546 328158322 987495379 81438004 963523143 659654002 854781701 637179945 693256021 833452151 990143287 168115596 789746601 380943637 473826711 673420739 773445032 309758694 976597257 431228667 577194477 811807338 993268802 296637502 871080478 213871348 711585281 968208993 997618439 997320029 997444951 277057509 501073206 164215160 358729943 964665323 992478380 767630135 937164571 720205122 947819524 276367788 748457343 44285510 355858810 613072075 650768182 523311511 961533526 426809408 774392334 535077423 593263795 24245641 133737389 27848596 494227471 415995936 959242805 335778360 451006915 806082935 871691083 89093261 796514238 642301470 911332232 501730702 517419072 335506110 699422962 898768474 966121728 88066356 876242996 926126685 949316402 40821810 87413194 598315746 625390195 404123856 970663780 66809488 387893255 812290942 838650303 533546556 704683801 196551211 791425075 641323861 984521713 403363528 814207715 617630697 905053503 89789162 471824886 505641952 558192637 86737107 799959703 825423061 902045401 904670780 984676646 295953848 468263936 620580327 904703637 650043925 761628050 771171738 856430272 270993372 654990784 899315433 990129227 986175279 997492046 757308710 833438941 591966252 902437821 769831821 950988596 228334113 840960650 552413039 699870715 472046058 601085945 646968486 873923037 885611405 887306119 744360367 859626133 889383675 989370152 339189378 884345347 710765312 880578691 445803891 607734102 398742078 668913045 831793481 837477989 907734879 925066940 29490330 920527893 844317328 852866751 480997952 491611062 187251817 715470285 104377545 180187869 853692982 881125053 180019914 575531466 746592567 935994299 678892723 746377982 5951413 256054625 337916520 719808764 142655714 545864350 899064779 908581180 388513195 683812540 71483366 942029916 223594880 302282216 770283476 874084897 385976907 536219287 408468951 572681741 233339460 264345437 316566263 832510091 974539371 985597830 838609241 960201632 859176276 945241265 375733814 572652747 535550940 882798161 267818864 790796723 701471956 875802184 787887367 867087514 94257739 345278591 519690810 666712424 816839222 962146516 892846711 910355557 813030341 832867643 443947132 856957438 669340224 895218032 494019026 556024082 6370177 345168903 198872451 314325231 614970366 965841538 768740158 815687390 594688543 613309706 913360050 967290313 239532648 378041361 361042433 534845554 815001075 970375618 544252561 971234086 513313398 714238053 135918022 860517472 650140412 860436340 901737183 982264001 966517297 975053850 140122076 155444750 713853530 723424749 99578712 245976658 452136891 517900687 310806140 589552132 713586922 841708043 630871706 864222241 218978786 719485932 624982625 749497491 881474590 949313859 130156818 745338215 668740770 910962022 106270194 913819226 71258797 618341146 96856630 179325026 285657090 702609762 321200154 359534691 952959072 985861877 198217905 772570274 290724446 662978385 553071114 601857293 301160536 663101079 689551472 689584008 151152317 857069942 409855607 993293605 367652367 374121494 514813091 782645265 329827875 982755918 957459156 967244519 177780835 222170219 666492130 995928118 94352830 443071553 922878565 963101118 87342463 988267443 923524223 931286097 717022694 753158896 250174138 457078333 653000604 975933669 117927479 927944699 820425748 843034710 502053800 964524601 636274967 961435338 96341744 363843098 240203387 243359953 537048406 592291711 516856638 589788820 978675886 993021509 655989570 806661676 628841444 708541413 40732773 538796729 731830624 889772766 162267870 483017112 295114363 514412617 922707963 966571107 947905744 992280865 530237751 827439594 9403978 15777699 601403243 901656033 446520746 863598442 578338872 856267879 385207930 789455566 461300198 565945122 768497481 795601604 608140860 739435475 891595429 909653050 76918706 567872953 699121987 870322502 550492209 679468392 638471205 857856156 356928497 916489423 552695177 660407538 482784155 897487346 319940975 442803756 853064485 912057337 229276322 334111914 25824974 85407271 126851187 613957457 318761072 864432880 899911571 981613438 215935428 915070405 772647467 844462662 892478670 919018071 309647610 560928562 27466502 133166129 629914395 997376096 304580514 540796317 991886425 997841124 516508723 794582048 791513000 865724506 104901674 634315835 10614775 942868911 60461736 167711539 604715136 961911624 895022511 931169679 466457098 908808514 650819676 749043931 765221598 959894802 728195624 845527622 790320221 883766277 955744907 981539782 187382742 238272405 208468507 936671118 283408442 566132258 679587613 780228246 137908136 491054611 271672832 442848179 606595351 686649650 266589621 853539963 948621755 977039238 640710502 942168943 580300593 606567776 128711748 409847134 346722273 697035680 385868379 492372201 612536222 865013314 517940559 763751409 437956070 520844011 909607324 992027185 661773475 700504110 95270654 965157700 336759611 698070641 109141188 985084319 397191472 566436651 439339885 848146606 621680552 732091256 929605524 953094997 609532205 735780474 659238456 962503467 46341310 332306471 233401811 237032510 255682352 376736546 239935501 503210113 639630083 743852524 395432057 600830824 751067608 757562562 136235883 920752195 702960622 997121928 963798126 996336643 82488688 847760236 274940911 892722803 19936840 621792702 105448886 761356499 834949857 934088881 112802978 745685173 115319814 302581406 5774068 212388219 137297772 473453399 129971805 954924752 304742801 648696569 901412561 969727373 843008983 895659255 441821190 996675001 619708639 711298674 315952650 580578218 898089843 962312026 834324332 862491436 312147449 761906880 811940769 868160878 269388212 563195454 793037497 798405127 211334412 522398697 932648347 954937773 181260946 777158055 615202290 988331588 90533978 651013481 569431170 718791325 551194774 829194377 606297589 829281543 152538203 242010999 372133215 713433269 382601954 939134803 626597062 890822991 824418072 875342769 983831468 988020593 791651627 967894874 190902034 957788511 635175962 639742855 340655274 425571999 832670808 884354801 680419616 799031903 893621093 957580158 447655866 452780966 372825261 978339872 23260656 280433203 266955140 626343957 609724591 800215159 316222382 589642307 282019206 366916992 399724107 939881214 143975390 786357711 384208143 840258526 625496059 987328078 373945879 974025430 895692452 922103363 677300277 773819473 620901584 666038393 466533266 597493000 441849884 817703036 947828958 959996652 870181235 992519842 510713187 992127549 946735897 963096904 998194789 999608594 482848734 763829091 181804608 538573718 696248575 724479823 778526679 825275811 336996758 618355306 282638482 968545835 28623501 640550798 327963875 946423954 812960907 851517507 32707265 948121353 570290921 905462141 950507791 973292967 741811712 853198701 364479458 851490682 261645989 844274761 518693745 656493695 98868119 555084702 572410879 930875238 39698257 728032532 90242040 331312387 503939883 513167425 39606112 176573403 439089405 729955568 770055128 854590059 942408012 989442527 669134799 678528184 49902867 292423660 464752910 686720469 468095183 722075012 179902900 552392324 311901593 526367801 574819573 720535829 75674174 606666509 538865898 624987968 945980447 985770493 753629701 987979354 9227447 525322854 254337833 329706084 278434653 299378388 728237682 844300203 337745239 844176206 414212024 663560721 275533710 785493802 264591096 825654292 831796585 949321491 449125249 824832959 2373212 374592990 664738068 734700043 100662475 323819698 521389946 737940629 570343070 875011113 386740414 850307577 717272768 918379528 300312870 595492984 809192857 853874074 647876776 890311131 650522295 747742299 624054796 723684741 447367837 964987629 309777577 404273637 635782466 639822699 681518199 844893234 521457561 737181015 372606875 985362292 298267181 487292906 222176753 732677299 195161218 946454147 754568759 829336939 680359136 972633031 422455972 824105873 425631214 746697162 31111901 974092077 157517508 908381044 857356416 895688707 603214723 920880125 599574071 627501321 706313454 964600664 272877441 623440400 315711901 865494727 662130971 740115619 827447611 945686860 10847660 483710691 503571068 507578450 815555233 936203464 901074422 928993987 361892314 436370756 973525614 979751113 550364708 672689995 141635812 652383692 64768326 101443267 380775400 422739338 908147663 956441862 15563063 29164078 798050623 966211116 782702586 965872471 57271577 445871561 309118047 997820729 637423105 878597746 366111122 502053158 686017162 858903027 818070553 828369935 481568758 649902414 51885046 406434072 140128094 383040299 238529300 265232727 754540423 943425828 323038311 808244215 952875262 965864887 669139323 808283594 478528319 758822986 461354199 625624351 635103993 742738293 213858165 233751641 725120299 780631143 500372160 556744653 351360396 676510442 344299378 660653196 158648902 392838336 8183516 99512772 695290589 864196694 770236836 884505453 5337512 460801784 810303937 964882132 91013808 510829079 99712041 606116212 300871955 583006604 358171857 689906119 222938120 912179546 5664923 6222420 791358947 996862885 777953463 962737378 195301495 396701394 929407673 942837604 90176399 455335766 613258824 915093345 471271815 918647477 65916755 399818604 521783599 584094136 870659838 995632342 317314235 763927393 149265493 959541768 167463942 714965208 15744217 589466973 497410223 798659270 397376135 923698023 658691641 962758674 656043636 776856189 715058524 928306759 317519765 401650296 572644256 617012708 108572026 855557001 689735095 971611628 729465590 811437053 469055015 707981373 349935071 863400883 909575286 942629142 690337205 872483367 512543624 673591831 599807674 852630614 707859517 998059348 954594136 960600223 310272181 403705738 496359044 873394695 30734580 342847759 744488361 825363656 885867332 958406850 20536146 412282344 313699292 797646706 159155184 366659532 667069240 872169555 597237661 938741828 427215454 765133687 995329072 995883301 262414134 746628605 527774640 843026571 391372157 847554217 221604092 268991926 707445123 798423207 469998641 944522979 867024286 982432269 330558648 752536075 840978750 894831616 842120681 900229802 383258635 489730697 651171854 980141287 712837459 841849568 394330422 571220913 420212481 548300583 336748779 688963126 694260943 802762304 429289528 700764307 553973975 693016025 257645578 621312368 638839252 804824229 919440984 992124227 968187945 984862639 681041595 797456361 2637440 8329271 628917517 954812555 315758920 531554386 468931211 837211101 77032230 937243276 96078631 642000889 695238935 774366456 570289946 616714926 158181046 489938453 815225031 990886568 364542200 657962940 278652729 458842781 29570851 990360275 331172321 620989576 71442064 732380142 737097911 777598236 754281279 852065059 603885743 689249212 536615354 907474037 521190184 971660995 557678475 656144235 440968638 562493523 977045649 994552770 818098079 934698872 374881061 737323437 789392964 998852119 851906287 926018122 867400591 904631658 614666540 960697963 935149481 985486725 988714534 995420883 566457850 637295891 843700880 998625379 755984581 758434761 520263925 895054940 366687851 509561280 661212235 904071143 172496326 965046343 988447118 999876013 331055124 835170787 976366158 992377250 266573628 723428302 298252045 663003477 256799405 737939094 620281711 630132484 12878946 295414491 582700931 677071337 837852099 964108335 199045212 567303189 863209412 891244598 378741373 738118555 348432132 623072973 459265595 713866597 391110757 665772444 663579795 698373655 978737303 990187785 724782082 932373430 733735228 935376761 721675414 881005348 948971398 974234821 75434721 966715018 676891751 764968890 556303982 914957279 305618041 561250559 741736322 950155741 467926588 602597336 752624112 882893891 559151567 757211593 674963849 796611805 141814866 964097583 832009544 980737736 436943385 776474366 677108093 847569606 997101392 999277933 989016492 993101164 79679455 346988076 47052346 728068695 601098195 822162125 827319128 920482787 981867915 992681066 753465179 924165398 384585725 541968439 355122731 711754019 868420373 975946200 781019510 853767141 450750083 493054850 540523553 584758802 391819749 934137528 649158897 920028668 834120508 901214591 296500005 824717558 353335152 406074286 697931351 961003204 12396951 83029383 680497737 893241853 827488851 932502996 109942504 416037034 740290471 990123926 236595534 456948649 38203646 115587404 420521802 875888912 167895980 447093203 783297976 887597512 479915847 827628245 97431559 975289740 420775284 716693886 742790526 977607928 444963996 574711102 258310042 653416458 641332349 736441548 214212113 306866036 242197257 343956273 972841439 998962110 176752024 484247597 149882805 209201666 332798108 978648178 241531274 928193993 671969212 963011056 889825291 916621291 561774133 709831476 737509031 980335642 772693620 845608318 193819345 693486614 783609451 804438267 438181963 909333926 552741380 577301970 864349010 883888903 283227551 358273978 846589908 968600753 676066610 689638186 842586381 961377514 661358704 899599056 102396324 180946028 564399654 963399274 251185598 275564727 27701947 953206734 137601602 231241562 649054286 673110234 33379244 542945929 477509752 686327089 175662804 415620289 721059120 982866681 168142254 842095556 417132681 609091290 340112432 802974977 98427514 303211113 761634992 976025076 38627522 891663323 311097403 855551969 860081363 998945540 749210756 803883427 265039325 743277989 202335979 482887452 599762557 789278719 694858812 831534032 509720951 896944946 493989126 641309486 701322491 952818587 63603006 492226791 86011539 316725639 337714404 606894128 289323823 322157964 666370451 921743817 748456508 855143529 164248023 688136384 808280233 811134964 415817293 812688243 253112349 999671156 991964225 995188718 640001516 962151910 282713797 504672207 148570952 573126047 235217768 393795462 202392497 791525965 907022918 971464769 130201485 370511545 409861745 702261888 470868634 514940760 7800333 994642372 452288818 484479989 457467665 646516129 326525121 746108684 65213188 966199915 525258893 967561591 691403152 874104281 484152287 992974878 572296879 583137764 935187957 964843950 302635044 844067737 372549637 571909510 10250410 883788339 317227598 809947040 642560346 979469966 919115801 982230100 2991548 68895180 906199703 978512776 698755404 718249201 950790929 966693615 699188574 750218009 970290553 976816991 405227980 905983848 962098871 980417820 131652459 515253957 446741764 475889436 950526434 999104682 230806841 937525674 498126628 565715141 248944725 649626948 54156113 273571195 539632028 593532297 555250252 581017420 275976511 680636000 283216926 796406007 345085258 663253919 34647664 737964971 410247336 679900985 787187636 970714088 248350639 825003954 306651856 352741535 620481401 748546890 462002981 843049412 91158233 772049795 869486346 923926284 780645693 784399380 17114073 212267580 582360575 618548283 687771032 779159450 553563915 940840811 33442576 498092621 23518171 286312314 257075138 770358303 743686226 873515649 672860405 865056313 903515492 920131087 765375941 823332650 910573200 919525957 620344738 932781372 531640348 626079710 196623127 685344255 594787129 902135039 635567381 772289647 885623159 930546898 832641892 975834335 76976567 620984346 556123990 855812155 92710317 101003791 182326771 731340546 863132484 881956726 686401899 852107308 430516505 919851467 917457987 942834483 137139728 324093845 559634619 977523835 74626813 827592237 905607944 925641105 10028677 115193160 776187783 831442271 331343447 862553267 54253152 236976105 891533099 896537082 384209551 437517135 901311566 953658333 32583711 526825049 226184097 438101402 307406622 764877534 985381625 992503050 987799847 988848972 269659677 987404989 167142282 598577309 113001712 636684162 526102423 532128483 504118494 528844814 177567696 580520548 171929824 803083181 909159870 945725847 312160180 501539832 859075243 935333324 696437590 763450678 815117648 855413920 108128801 923846378 455554549 867511614 683046033 919454384 594361369 968274264 606338974 649530019 998655131 999781405 993084296 995142983 374293216 971652673 741234759 755553841 597235277 660679114 399126708 636736398 616523751 664233090 211586502 391646541 983665191 985883497 405408781 544695297 795763505 982231873 866305398 993486345 83140307 582506231 123513613 518391978 72796799 148091267 400769247 599268836 570658685 920041674 170960906 742664201 303371064 627436001 724719195 792604548 733790591 996116750 210596403 431219804 812580027 893555930 180262091 578944375 981159008 987190357 679053081 962166599 275569248 338091461 830822274 920567439 440017493 715207434 922714399 981700134 872835810 919505550 146037054 798949561 720351177 752528243 192086438 812488604 84788453 410787798 835540141 886187461 408864898 971289209 624914154 847885935 772469973 999518005 604449002 830755183 596502695 684282037 652918185 792097465 405849611 806553413 840855365 902664925 811911969 847902867 944170154 996436638 315497535 784519947 594922339 992654581 100668787 494189729 31175843 179357911 399360566 743463967 129569682 335247131 106675232 315766097 306806323 788846417 455958158 576789741 466333911 903423423 167662931 765766419 151032374 574003295 158335114 673470497 482269690 501940715 637104510 786028334 816167814 878908709 496699698 824135833 789288630 976259577 962659520 973530941 105009614 568479842 509664003 588908619 325760176 907829476 669214821 948960209 350197512 618980430 541460447 919101727 404765326 429049933 923851987 956005196 411246981 478658358 204113633 761784164 593825751 607530340 530373125 858870057 945454834 999488869 408866785 859547486 471377788 985591978 703843141 808580913 31277687 653650704 874300938 964886463 890359961 907294269 985213041 986969345 249267236 345701870 18203110 190417461 602733508 947218635 93864908 546761642 946175865 991221206 163356813 230674091 766081746 795643301 337742440 612640854 200829639 785081744 940706021 955559095 780442909 794508504 425916769 974882988 921628352 951129799 683241366 913474947 129210753 171622557 139490875 470072161 541711512 872015919 317599755 864004955 630653555 913896736 439175881 516504979 947791594 981231658 57612729 477904912 886928020 996061647 212169046 355126069 489284649 911531521 999182196 999863853 252515103 835913026 229354771 684888315 897587238 903467726 671546022 905868775 827918372 828901509 651223270 696477576 604288194 898259160 15630865 767781119 912462824 938130736 795372269 984841687 347870616 777212882 890187019 934793084 437780184 983346546 77970357 420229955 910324780 920257658 518052148 798083750 266121698 600555615 452622935 564228727 296555980 480074977 703821990 828260108 135320343 341015785 723631229 785570913 929117465 945696814 798389717 900212010 517256032 847112222 322351047 913111805 992220591 995391916 605496927 657589670 412492913 999130523 559284503 989064989 586006101 800184127 828189240 881859423 371942064 990595402 54369000 75189461 702521056 704145495 801491780 900595362 154217833 388045188 136826774 366333754 741316722 985103942 909624812 979426894 851319032 973937583 861532694 869982833 347923230 355135878 150681149 814126072 975170082 994950872 598020333 743186928 640654954 704072081 797470530 836643308 296478742 717991123 353374415 610967584 268528248 552260996 574842733 779273411 127640300 569810569 226424102 415737366 204731810 960767940 983645482 988720721 296971729 711599494 110910011 440778827 687291309 936619288 591557092 614931474 220698319 488558009 104445907 669425376 989653408 996721381 904269204 926412657 590595468 924763860 925863704 976885886 905781945 951426882 819511248 841834539 9757000 29215128 631982958 868276994 543862951 846558619 409343575 687927610 29970941 898495918 122264666 725341890 196918290 219860433 603620942 747825829 436160402 469000733 930717277 942736430 362575042 921999804 374888639 946214953 303099538 409864210 806082733 886964969 771414573 997199196 476863760 698317814 399216952 459458051 165256521 855942451 550070748 949743832 688480330 797164521 332465537 935848938 132991526 175158056 786322365 990537522 469235837 902186108 477868997 813687092 589170411 908078922 100446987 738462830 923481362 940535478 69777069 995197174 362114289 934159973 424837494 788581783 802973225 891072720 550121473 588392367 394566440 708626325 135956878 826193383 141886455 318315218 692080063 930050678 89132360 918374020 500034181 772614893 393729503 551548197 440335905 837725567 839929937 877680174 920426560 931137497 669549894 863202441 942338387 989099560 749784255 924380162 697178923 773561815 403667716 781033883 40698529 144034822 971892577 988788163 995062053 996820368 124882530 166878201 611336446 693027055 730096297 995156707 101267529 876557933 820516021 916085571 683395511 711691180 255419027 514974989 88561297 290249628 171119142 981884694 654119842 937710260 862627887 989922827 80393071 535154677 233549710 672643979 910428275 964012563 675440394 887698711 225444309 455950326 554552388 934392975 655944599 739782173 286911127 361820700 530753066 739536481 915004283 923628860 831111037 999705199 26636324 699902628 580335007 874492407 243591782 319883543 175833022 193253218 217857852 312481824 420336707 538693262 575430124 829712672 486809702 579928643 444866100 980711223 111737712 239740541 30823208 534234219 367713879 824197997 528475164 621426771 568551631 963854522 509892581 939167261 702234396 777127610 655889288 861520375 40056322 363080593 269657175 452684888 967965858 980501296 332331080 403160189 614376899 914879153 194380315 387965184 414248251 615207916 731506959 819513009 276892703 606750286 981854828 988076532 12523182 305966204 122780443 123932562 471848418 909993520 775253298 786603287 617008196 765750161 716993289 748645308 590525307 632925972 462386580 860337441 181443450 880450425 223114668 449731428 669414 126054084 650756801 984714183 510732199 873418812 531363353 880424281 721059693 993327053 793021477 821184729 290708953 750784692 871151245 901684665 676306084 950124264 282684328 513522148 351644450 678993172 907757359 952112961 591110977 805055601 751982870 890954588 86044928 393086505 897360237 986985646 943736814 960462696 415959720 591722617 197159363 289539017 804437614 870637337 322889659 721786738 613410430 667952810 112934288 196973155 899633619 936141152 633753324 883247537 176028957 412852576 624605905 708823157 645491957 996729250 826644636 989964075 140306669 374423296 399130796 650974490 277174947 821159322 696191694 805964244 118619361 991159808 287174906 629504495 173212735 218133630 742097461 771967153 407182916 513414853 64027158 191203176 272542879 761478320 996164816 997774187 586196900 931876353 8204221 885336982 691788902 926170332 514807231 546157569 944892489 972801851 19143392 101411984 208017031 715279015 590471481 599553866 928867758 997936569 334684238 349230088 850667281 877719197 746773344 846816228 760957599 867998925 558216852 924370888 419696704 436129151 255826307 961471326 997482413 999898794 604998977 815964191 333253545 902929884 95129148 209311935 434288029 851069181 172477743 322264045 755209837 836240533 303302154 487439634 656089343 782705961 665150362 677392729 860372735 971729749 66945357 839914987 946810913 988743646 671007935 931516402 493398353 589944588 146215328 282403962 511228915 690869234 518123709 865653225 370782776 372033374 314759607 960190197 625190313 732202452 750307049 974157284 340189659 447566077 731558900 872764378 770675912 960696852 480006892 880382207 746313615 975023604 793182099 819920651 488448610 753412078 149792642 568514792 568970596 863030105 474648114 659311086 903513814 982022946 811903355 974206331 993095037 996857318 946273163 956573923 997704195 999620467 99454549 281074555 274095924 756969978 737053955 848653801 207411772 908962084 91773642 645026863 663628934 970942835 854612720 877139661 284010219 837070468 414771624 551313270 659266513 706530434 541164386 726697836 969645492 993852783 274056289 454784982 191857057 247542184 467824867 533900706 807320490 895218573 222015390 701066261 691778763 731938894 629218994 691772242 565907899 761941263 880988199 899329855 8680862 270502659 108345677 470002316 419162942 534827163 909301568 909777667 948626514 958261935 636992860 970590605 539620831 581875325 972450499 979721632 673364104 873437719 229261866 527680818 807007 859491381 551961988 743296394 812273155 893007176 647988657 977645839 168113592 253087025 30409746 536593666 557466903 971217944 558995237 611061206 103116430 751029782 806350857 908057222 220292338 873771910 967007551 975056470 473549157 575253000 614769376 725341335 205911765 432079528 432950895 452063218 288438970 523372475 297119800 984929662 245882285 819870269 999492148 999654736 542011089 754893538 893070365 945507789 20634978 504784271 71343281 341155007 581062125 883126215 832425280 863004496 928748758 947949498 425930743 437940457 268932987 894324531 176500636 490141820 414125092 913787160 943325845 949884404 333585500 415291672 512868519 697393790 27453493 752632532 510945136 949635397 361282743 424911760 420437794 999770747 553690613 613527190 126673847 758865891 298397990 982693460 21160811 785142834 746228701 886406831 834890426 865844730 640594059 919464310 540910100 791519793 706332049 919243545 543559492 685899024 286122360 614492799 213242083 695311520 606782484 950361441 252728449 398123784 157742713 682408540 321031417 524465796 176167586 910768127 740258259 966111753 570656546 746899655 405188256 771572473 561859063 591036274 556146567 564951102 589494554 780532111 12530965 262627829 611660389 780215717 982708661 991124259 414681497 488516744 681052719 746236959 633519584 731225308 861419449 953887188 474878315 709616973 271059918 506882707 456235005 613992194 546266073 872883044 217364741 648485298 282614731 316042331 54027815 96243723 251293693 832969103 757131013 846716975 725199655 850648668 620603145 708329110 361937589 927854406 229830911 544175233 463628706 609050207 4577440 112797833 228286786 576335592 467333626 634690966 509206085 990098728 626813021 663512121 372655963 943955321 704266217 968706208 228760087 294577309 203282866 796115655 983426565 990745829 155642305 642943061 899458622 905687954 998933332 999273117 539573461 852153458 950490031 966656336 691823572 854213731 939851063 957026152 130987430 797012047 367292015 726609057 288213421 822919411 939305852 952341898 486055700 965427731 132835949 604706191 973533354 976097347 104806794 224470039 861551029 985333245 450597846 697879287 186495296 896024129 610199050 670808187 669354803 980017594 340057679 442412648 559253193 573224205 727734862 791026624 198803351 345240069 922769579 968344836 747332974 871770023 324309251 773949213 803205691 931726189 817391738 871314641 133870177 927198647 669119234 734061614 819539619 877558199 222545442 659332647 79413323 837284854 433846126 750333836 863376568 996069589 667962400 990323145 133961098 399466645 861728315 993643490 925023954 979338584 225653662 828660531 213301164 538427382 177447049 460447205 785476050 878228895 373084342 664009630 682041621 911962221 519631853 761557136 813499031 857023903 601583308 602353916 577236020 829103187 542411593 886834432 370794191 381815577 199655897 263776200 830630381 859267968 796228831 807770943 555937327 691457539 799151168 855590807 964916640 985596843 211060575 879241163 687574622 757271384 835043784 992726437 918106608 995452400 960277944 973623449 984640722 992701007 811978355 971686203 340138786 921584077 202216519 248015543 66092725 808668567 157520643 515713621 822733963 831980204 478809167 801267404 413853289 739124496 906264175 941274746 710147979 993007086 638691403 869270217 4188271 445578518 426938210 925281955 236017011 636718033 829748985 907723699 447136209 584879180 465726169 838385443 85685072 450543808 804426990 899976607 256806285 497458803 484020460 898594212 663317539 894688318 833415180 941840778 201529245 960047205 616834916 730180999 957966694 989596794 372653635 599525969 904370557 997581257 934530772 952386742 166828470 201677464 883821164 999098868 927364366 995249054 85194040 644298571 128940886 359635597 385865263 395329625 922024909 980000002 298235671 634921494 587683765 658959944 550994551 819891557 413298767 884651753 71391692 738379175 789224931 835900298 599943842 633479791 962592373 984533766 45979939 974260047 664725380 665143319 444030715 703002928 668395759 688588878 294994877 873568494 732802528 746596752 837079613 887280090 228996188 528427855 657204447 722555391 960512906 967617301 575161648 929027868 492284661 908237902 357545730 981297247 286842451 771837338 807040522 904713118 772862890 887758754 247279108 264997592 504101288 661262353 8654820 260953779 65209307 241104302 861412566 871240594 973179835 979736620 152100845 837503439 981039585 981747521 578105825 859743527 173479750 456737058 220841992 717344983 68193018 420575475 99043856 229125551 905063947 936625956 377253134 922809550 268866843 648841402 242286157 817788522 640874986 981118163 892523061 903229666 592669630 657733208 774214287 911174245 982386009 987693217 19446699 990297763 630939872 720543135 803518575 965195212 831167688 836357365 464206366 844996276 588379910 875604956 455576992 613612017 822617961 860500958 363683928 999621853 57180052 704382630 803210901 852331110 117005917 970455989 824576017 898733498 948215800 967356681 624655542 725393126 415113911 917341082 893770449 977113492 397294597 457442347 557671604 979843224 658304177 998059313 814283893 920968429 431373816 471267155 110843082 115813754 941976477 962818998 132937081 219851914 297460020 711966808 645031986 863503550 820248098 859654274 305746189 913468018 173660016 186448779 108925054 261174027 502554474 598989481 257667679 381991006 947811284 975252952 246552781 404010507 591509666 741647617 890910893 945577544 826185041 897424226 322749759 662519455 47605887 691753657 1365337 329830400 369758656 851103200 288726102 777750594 759164569 805590270 745446765 851307663 203845058 357645217 753663178 968924922 268677300 560013708 633119408 837324632 651830716 700331160 975374256 997732747 612904175 777883831 906524056 962770029 77498775 289846980 401332441 836230154 750282855 758440269 666917398 799256958 267818041 538472431 467037139 482788515 464907754 813797222 564299560 587753057 556181429 905174964 339000444 998700347 138345056 551872181 426663125 763614445 296705769 909059724 492379430 715099752 235872505 404612571 841872615 884768688 556250483 874055537 68891288 364911230 236057193 709425355 632556133 930370069 856690055 883536063 79295316 362395532 684045694 704568909 265827867 818662124 449429101 488667327 839754889 966726792 656124658 688776838 581125004 870678123 789470632 947262636 129428841 742992879 643350918 780260579 207578494 664098035 113190461 796507774 894934883 914572643 521539738 711887437 847526941 977641456 394407306 629037455 334642497 635943525 646907788 659931474 199150000 753834356 929369922 978242594 157268569 914831916 131573275 215680142 975503879 999273431 533931834 663623725 608793024 659097814 452574697 475652446 339564498 390958398 198198127 778363220 623022890 999498308 753589676 850479682 468538165 482602890 179193000 201460864 787906058 882750459 371015150 925736146 989376852 992130381 474402510 923901376 466666087 853457301 932187202 978821738 372061776 667907591 347527231 682442030 903674691 938536474 887698016 903769117 732359861 760908338 124388850 544080647 394990565 896667840 638150898 960361599 796736360 950842490 934450658 967410791 213854113 286215566 181293334 728929924 372949402 631800234 188198685 973893454 287183100 413381463 714884926 785688290 663280950 864070934 475794567 725818204 884393898 930159212 26455430 880383494 760118972 945115949 48838999 209763578 336698128 950855810 524225325 735029766 169160424 419847702 778134826 783407295 997337212 997614625 948439101 974225137 74064015 842371281 640364532 675541447 151022918 154081015 197207559 932731481 973736320 982903764 146317223 890983635 502921606 514497221 113782575 353882430 734924279 836410383 874921013 932538286 531379055 930664158 630179062 653694349 346099714 882381836 73329047 625090777 796802908 986823237 403046513 550528313 167894546 228673027 3863670 516252231 71414024 317826901 862868930 928525509 108576436 481458053 255816778 353722894 253655042 751831190 673340471 964395024 756696141 878645834 184454903 769234020 394764709 720814875 138195373 520330109 513115795 784054116 122061880 725490065 45562700 358506697 642778931 923903933 677190424 696972626 946552667 950883085 402711888 523425489 249816031 658329226 336233420 543994432 158803002 824325820 971635878 972350466 982809815 986651201 480870197 827920924 563999463 749505968 35275421 618457331 322789346 373688971 412063436 849896094 587391090 672196575 48113991 165690962 845125298 974296101 138885160 458763644 473088546 501375825 646180225 820982279 514220548 655111517 269782406 695456101 862696500 904078706 542156111 997897539 625295993 759015756 833790756 879013649 889574156 890212653 926741843 935393047 203284867 728528332 963061978 985914702 132658820 631393246 529753097 953335049 4335866 763376228 139152957 797252461 551838995 799949854 93514573 378711124 842168535 938490778 751376206 902544604 87984757 429120063 144573587 976567718 548488881 810068386 343028904 918268720 74753349 278572016 614997097 747931486 644661488 892422699 64051766 574062521 935506056 994424809 275089432 829063097 476282085 495707396 870344307 973186082 133883417 819602142 40551734 793902513 847386 311050534 517406804 734038245 884778397 922962406 127298534 794829371 863585847 894275652 695180216 748707300 497923184 921309832 817341656 871258688 642751842 899968138 977884798 992572450 852516010 919769086 561523842 788224827 166357030 394128710 126901490 973699917 225387321 630195133 750900968 876592975 273043782 799670025 797577919 816683396 864339233 888527339 318999636 779547610 757068227 810864685 191817703 780757085 855948064 936102531 258825470 720611916 555918249 641810938 937765249 971517391 29977743 910369295 763778569 808687543 339968839 922187178 981911572 990003071 539014400 974551411 404726943 695178544 506373036 683560227 112234744 496740748 496990267 571634851 473862484 537006401 275572882 395027667 416883969 865895798 357572734 947783167 219633012 895379963 671465371 914407705 572060326 714456884 342664026 425665184 232505478 438424986 432822348 576021189 602041270 719787951 712303384 976106633 804910885 898557119 221240906 633808576 127943411 550515354 183715338 362903741 448360466 936062042 226931845 269048812 675160348 856102912 832903472 996725343 283954841 327578164 61034371 705834111 962748197 980665774 140569525 211387813 506776843 742436119 688887959 730503861 930815109 965364409 946060073 990590319 398162909 972881769 193045919 250322162 261109860 785768326 132744158 731547260 694761429 701742067 478782793 566958019 286826351 632021361 567746080 820596359 134656743 297399244 726213385 773057278 527980277 657205600 105130483 238678120 983108336 998019814 278417100 893049140 836327755 985322370 529848918 953034785 39875943 640832255 149735827 853052854 734246265 951965501 865085869 995205554 138952503 672147307 444241938 572530481 504052645 637943656 883583925 939814649 425997468 785349767 415996216 609077073 761008185 822565770 536306030 659237511 868580475 965671697 594940830 602891245 703004254 773494429 882296211 906419777 703021636 849412658 160336528 825275648 649234517 864917996 894651242 934004950 790616916 965372527 853794418 944088977 803774055 900947966 169046397 176540745 941120677 991958134 887399405 945201802 76644313 294815968 258077249 784326570 695633566 973676926 490051704 996042407 741376648 956729733 168407238 803059164 206557830 741232068 184104541 639822087 507831912 837765887 799158441 858618468 174505692 439152205 392286502 624901896 420007973 461748741 108079053 876440913 400152947 903476795 682834657 702487079 848062821 971942431 622877875 890104979 165849514 401631974 108218417 759524670 861068074 904301833 631047046 684549611 45639289 887695952 782917953 804225364 399676271 595062422 745892819 941208431 442585388 955103206 473792047 702080002 703360852 841361439 295074337 832427551 242939541 268040683 704163331 720393478 795161096 932967593 941714606 999832876 246831389 747042276 959190191 973838202 52903468 323841937 340180784 410990188 991011716 996862299 698300583 988533408 915242202 972770774 101482868 244145467 434472592 669549672 935041503 963833590 646678543 810650892 908357904 967034466 408198012 462609751 216108747 855338577 628648033 643922355 501067728 700505129 227838482 484265528 739273561 757645566 260016090 860866981 376040042 568077961 3315640 939813098 729667258 843632998 53184996 158264291 430560048 742190450 925291332 984495775 912676471 949108327 215448946 559771598 889551954 892841353 945169831 999920888 804758173 997674254 259279545 725111492 928970799 992243291 850524872 868969250 771141417 899395789 593936510 927756858 827334002 964991576 875689981 956561392 555742729 949502778 410920877 699767849 296163 37408746 225355018 650388700 773664207 970243194 484693470 558624216 728865613 749035702 26257808 315492851 313578078 631093605 526499489 912117361 131189839 708513955 247340232 290993716 973225413 983917090 563140518 988549170 3971638 670682684 427930948 987522062 997069983 998123956 295980241 330948393 789404969 904153230 694971127 760944069 790683452 944490470 310324420 592701048 664717191 802711520 347140356 755442380 750897848 800490473 790428339 884790832 77676975 716580181 704676465 937428450 109570734 857244367 22870774 914357016 308419861 562734095 154130982 825608612 677600991 912280354 777600995 812159025 206962648 668346582 165358829 544057750 799440038 805821204 774964365 893244635 968248451 980106010 644340745 899606304 554090326 905589724 827398363 864532431 97594924 638510174 226721252 460164859 817087064 909118418 68058266 342916522 440604590 443568803 718824549 993894467 862045629 975974431 182860396 632071690 197935252 318601664 142634353 656306297 371375660 832592510 957058917 991327382 209599613 412653380 838028615 931382463 134439854 813156272 110702743 557304820 16122564 264975747 464407444 586011267 800117518 999635676 614130796 933813154 650194769 661714990 638513086 700985733 824131666 956823324 130523502 456841151 857738538 889987399 519867543 691397465 188256846 682987594 216524388 720763541 705879315 819905370 33482613 940769714 457638779 983648745 365698281 412941858 493208865 979539299 630767390 679298298 932943919 947742721 500796955 740426189 226242875 857644673 15026191 309015108 914164065 988461632 127023511 827756362 555040676 761190709 879298159 932002855 248246734 295785667 247658154 971249184 738030624 999048127 393093208 569269922 69660873 399209001 419289290 902111601 893351558 956439480 874885729 946109458 548945555 765037995 571274119 989878099 281603882 484004106 935474941 940465591 391736326 460438889 592032148 894436031 485100578 490193391 959319268 972243799 616425857 850303529 977806832 991802503 682250096 902987322 204907659 443436880 763309174 918128836 751833102 860870617 655328707 757285239 140001882 933202731 905802214 921015974 945113889 960431882 331552967 343651417 115373625 449994791 728404602 838384915 698590551 924691247 18385352 615459895 121248408 144623718 299859332 885122819 315634111 355754375 585097345 768170450 167204779 340890736 432476330 598765510 421623285 909971665 434672182 661444244 999886575 999928618 307510977 976900111 125865286 784963929 976131852 979422899 382414784 449143720 896415485 996831746 875501718 952271751 90579155 669926447 805382666 932769747 324385222 539454950 668870069 839316363 857633877 871823316 160027029 336168084 511681079 589741233 60951873 851062914 925458217 968546106 511513404 632784751 479834947 911531419 22631002 891028515 777528919 912274528 369154709 822632099 135766546 861873484 647921287 810138599 896190109 934424947 415715347 679381004 146058318 350913589 693643501 867995084 485315246 792556521 9216808 227016944 303549596 419397623 833757002 936526172 814395003 902242658 385211713 830062610 816368494 828174753 541913600 710740230 285566481 984416226 303606122 323468776 138968220 463748538 876968140 934204147 719321381 985836112 685864145 692588330 961594565 980812759 77586449 505541446 531360695 847414442 137643290 675119046 889048425 973421248 474117049 907109992 105399149 368795631 216327564 954206229 249062926 960563173 172535350 788382969 5484293 992056370 672381211 845954610 204212570 280840339 109382470 249657107 670968602 945506173 818278220 821601289 727771856 953809942 646843139 833974077 472126846 791919009 654723643 703700171 832685859 919835020 827341617 890455445 539312008 771634974 920095282 944173614 761949020 895545250 369873082 563148034 957085154 978599004 40757414 347980077 426981605 699937614 27500303 87561739 845221343 953699784 485942184 800291828 2342826 302652121 240364443 277145285 991627502 994711221 512250746 567013925 403821949 515474887 294960200 645308447 682170395 825482890 724205232 910257716 41470485 361122451 347133632 998380986 59952478 268148924 729758530 834122984 613524517 753704197 374046729 628472903 560294433 584812237 269611604 816402759 928783018 996526624 593361897 728688243 591725575 706670344 743941252 858330111 407729326 586725255 927322796 936901467 993450320 996197281 362730856 715023395 455046981 796105142 876666520 970534492 310809118 779765399 474354572 620471721 879155892 896702878 217547570 634807562 383318057 824485726 135738290 237294199 158700720 797588095 312745185 453087845 607175336 985099608 902456863 935263466 401979070 626168532 998494337 999717609 180794325 896710261 883317998 898350954 198941184 405864771 403966481 977942354 954329618 992840095 610802759 678318628 134645110 563125549 656159573 676416540 768329083 849311074 170793535 837641581 828938654 927255212 590242314 979197821 722593198 821391313 246954330 775415438 413740175 746388887 817293235 854696938 851750687 860895105 561074781 714930471 482859848 555970962 159186706 881069770 491118888 637410076 160674273 579478707 801919387 940310896 510686292 521638286 889360404 895527482 918346075 960328192 474112291 805430626 92544547 923130443 989031775 999344210 9148894 561035959 128995383 292769082 391043911 972393731 810210532 816577806 936880327 950544580 144092387 873666020 483076405 796161886 834901880 865615335 537063571 713496684 631809647 848236589 868398893 968794909 505100300 598852675 700509486 760141370 602327952 890782751 460031930 799071581 606510830 757990195 994549788 995380276 821730632 903979120 816938070 848002319 388154069 914551125 379368935 699646977 474082678 782731941 863666468 983048511 751676861 931758903 865381162 938136676 818743915 899002636 220788126 322313197 300698965 620978287 957680267 977848028 771126690 905897826 644214170 797022123 344477294 647616893 626688249 953666354 133089664 207261336 105198778 209434794 681430060 731709081 903117173 977130278 224920621 852783773 4007665 582974645 161268341 958797618 799527276 874447645 985877412 995965652 32840351 638577135 153473934 162647843 996367698 999683270 858013029 950728053 952305891 961981600 863684515 933058674 935771633 990393951 654600516 694263303 713026039 962205981 954296315 955757892 285100346 774934162 13600086 746091265 549157783 600885011 542663309 786278746 922764555 968083159 302504375 559095099 448831023 600316828 811804591 825033323 349660614 912375579 809517407 958439630 158559495 465130409 904108326 944271508 741260369 926720970 375436470 943044547 633926426 755606478 439769929 443656296 28448971 907233745 309903145 891005745 247592202 536404428 246940165 663955780 681334334 780029002 208907304 564448423 118576033 215204310 414055415 940650976 783359962 807068328 924259250 948942224 909420214 966453735 207045025 648708293 398506435 470966317 276060580 902954227 8784812 849138903 232347149 649733385 788089435 908057291 279282701 724981648 148154043 616778408 246947904 645148836 153314387 675411401 317009720 897810639 887907279 981471471 236966998 841650267 211684353 216029723 526893008 732143626 545636271 943977037 935670087 990164561 169902977 955143855 641967777 810411293 424901769 458627884 951524420 952379873 736809150 740225005 837091940 908267645 549285908 926018770 432112432 982177951 260989631 340606713 407271209 653373599 341290479 501472695 793086256 973359045 934512245 991787175 538565439 894881993 717996059 790335174 707893909 926345273 43035782 165257927 517832649 747455685 574449116 832095782 216702145 352388826 127848365 508603082 797186880 999319408 203070073 358234713 943610742 960093707 489902111 582246582 53550094 416224970 457573611 777873082 179485836 690435627 681140207 873722401 40821144 945544219 677623138 971805814 679920719 797016344 507626179 617409931 57842669 193715092 130286010 755071083 397838595 871318139 351557437 570396262 810187591 823670917 470327681 984356996 720702772 835288894 852337434 953625495 632280098 947469738 58608582 133624287 703845046 786278737 488999161 526292434 712636025 936669035 610459455 876495489 177949026 267294706 875946320 920193242 541408668 572662066 680552510 999882282 616850334 798554825 530795527 804480061 991445266 999037386 140446037 161229683 583011536 808160303 495366935 948695576 17591691 921489617 878098600 925448108 749033487 771378002 120970649 210057649 451876410 862558929 779473764 887535348 965366494 966640760 167886951 720334305 378604968 805299816 331413998 765997824 439185972 730697389 858289177 908653394 139357883 566687520 359380283 889419482 227632319 989301547 549091226 989693020 302597675 468671177 8359513 88955415 160832649 876506888 387302898 560211710 202590206 590303266 177270994 549415346 686312032 956532601 681085811 723749027 699251489 939521926 799097809 848285533 478348322 760691395 3470379 244189973 57232374 694962413 145767934 861742156 379471758 772688096 185637402 646830284 655439613 717299344 948046533 949686525 575291961 865397232 77456925 778601915 529452670 902991875 969465386 981891578 19376468 96060585 812633897 882099676 947506501 993185719 653666289 655966460 16177907 257899384 365361464 467260114 270908388 414814181 948317473 965260594 698794087 844121382 179484973 732780942 274549157 389497678 334009413 403369072 382354738 937416627 177416749 554641038 708569150 763292743 938408868 945973078 682523977 968823159 172009648 630621337 188592721 385885135 412964139 425936658 247453640 980177908 656030828 797798687 982204385 992687389 595864474 727948929 652024049 774535558 128424201 597470989 519889094 945474468 484063253 754825434 402081261 409715815 874555845 877930450 829744101 849538645 922660672 968939452 729506578 974995685 340690758 864625440 528686111 977321093 434938654 700925346 235213065 576672843 694246401 860840435 776126176 875419808 860220883 975874527 241664945 811837267 843616229 905475377 566534957 820533062 386772899 686428278 658214677 929328123 818419863 961980451 949750170 957341708 12229700 381578758 566208967 703844005 973915376 990976830 415234709 744853750 565438683 695074064 896054766 977000159 470689690 945488494 729139004 897804861 507524997 610699335 393273246 580419811 766982833 979069291 437572847 625094023 567845699 744428181 745057792 923338673 560411627 999313048 439771867 875014809 782093500 831371693 491269078 554280176 687820702 909044895 480345183 572603204 338725501 561441703 608553325 830164110 801455409 914636690 103099426 658845973 799234414 983909701 160858598 400460651 208819357 647779669 765517818 922227023 661332901 830220886 242065411 976221031 125643063 501443164 599782489 788368656 973863650 996787524 130829467 967024485 831231701 908121322 414450535 908811099 75220021 897996642 472762409 867162974 570765633 807208278 435114025 639648559 706029237 837128224 112429547 844031354 251123752 522804665 394293822 758268399 451726009 475688418 795688092 838249254 930444556 952685174 191554314 736621158 750786383 803956997 251000751 301413501 627370960 805034668 165791719 488914787 149771099 667206933 236572824 253904361 52623322 359879021 863376676 995326109 733389599 965368708 942335417 992124552 579575349 675045271 87753104 266776409 179529790 418817549 829317261 908144917 182476694 200244903 49879585 400972006 308892991 695019249 7540852 501948812 417048318 877301010 893903477 976807806 859816191 907981769 805774089 980018684 15268918 779827649 601305125 979350229 732557616 963755251 857607976 949767503 945600293 955632384 216188013 391692250 688436758 758470152 475427422 747854803 157763155 206333264 170055332 384904922 788771809 879826330 668921012 862759718 793048086 932673166 415258802 933741469 204164296 665031172 67356781 276089287 499020120 635604458 51902402 930685578 380726513 509268188 207458369 465711189 537717632 784479588 413166536 673138827 4598863 725259092 727399848 892470449 887694625 918920109 87960338 886626541 98032637 580105786 859034341 975006148 714223129 746435350 172993117 575487496 853080376 913502368 321372103 353004877 954587122 962201332 831245090 876910993 860717414 972294203 707025582 888399189 511006414 769466416 91087037 411697665 106712700 931509158 539407363 672281965 285207102 884941537 321208807 571165743 564742318 778640171 412825658 723558236 274048939 586936524 962445564 968578292 903037243 945163727 186051652 850639914 762656074 877337425 223734983 894545883 736007321 788172049 187826140 397920153 915526487 987921938 710168701 810096290 534230943 902972248 76617019 547825416 856636646 905070481 38922394 389684150 406815857 557154264 239410358 463185324 178965633 600794626 223654944 829051230 768789061 816525811 336138247 793106116 84402409 349064082 592356451 701054226 575636692 869504069 292159741 393180157 951379041 992339930 205372386 311632535 266800607 551525744 976306785 997432651 612108253 896727368 292315252 425092657 73810248 345169414 32671893 122732951 830661081 908385937 424183008 687515786 458580713 732034896 113396395 993422528 154489966 454636872 518958404 839866867 427578873 803538014 811697903 983681130 908349976 953547936 154197095 364977125 893307416 903178167 459913941 466551745 673241458 937868405 247868014 288965943 435317798 532812154 451455941 863893894 796131623 963907759 691204884 719211795 268305793 966296025 924471522 968639047 433394409 859926003 506057659 508949990 771419290 881708692 881319027 938109825 404738345 896145458 176137618 680669750 136002686 500916266 513773128 945764730 733295540 830591525 278040959 382825609 94849202 142853471 432141193 582573733 506772725 577924414 249089761 867779687 91112458 769052388 276265644 640708174 329812333 681098966 592218207 620291806 336782480 821689746 731892400 766144855 533403151 540544275 425475441 568300763 401470273 730749747 431457286 555225017 760051955 900226992 395928873 775836159 437958527 640802882 183118413 375131816 552928530 871262186 475809214 585389320 929879495 931630239 437720912 980505795 257793249 755450060 476398217 990301573 218572275 923145442 392349612 981041025 302366866 821320330 940007245 962377206 874775246 935097782 670428956 872035904 465398944 597462961 792244366 894255856 363952400 537518375 669755178 699909640 857805741 923414232 396931675 648062244 439617369 746570781 682668961 758602383 489272339 719909885 808835259 900767400 754110695 986550850 754007154 846224613 476882246 946374595 606785726 926495155 973709982 997792734 157585129 325947462 4069944 351132599 482463853 644349348 246483316 516689906 942842164 990890096 267716834 836805992 724462745 835659118 819018134 902589727 255245781 987978308 765262131 990431123 771343423 845420177 802139501 870853903 534427515 878190485 969092784 982233456 448562496 765293302 716976832 867838715 219414783 675596999 902349724 966177568 924804019 969273984 530912906 667726609 375302009 554189844 754634343 860844036 18931172 428533412 426746299 803552513 411049541 999221538 288554402 640521669 663545357 837288105 688713183 978579903 270510634 615518916 928584231 972100099 319211063 320979483 258597890 617526501 438849237 733166880 978650760 988863516 24436512 270638226 22011167 886189249 183181280 995872600 716741710 884539721 632729919 819176562 784969302 850472346 685883401 837145494 741725172 823659598 497334481 625847340 557302153 595460633 632127717 841451267 98136653 750208363 437270265 620776408 526116057 965704221 443703868 813665639 685346081 933486362 268551859 570344026 812097749 991548111 880521912 902334177 119067401 927921391 664765325 866837016 909914779 928488355 857343425 930625072 915501485 952940146 677285282 974657320 59435456 663709342 691991835 754780758 661041432 927312995 28598674 690452261 920669035 976378368 939957391 997738228 419788394 766338414 112244827 317115823 251536435 390617122 63316077 778897324 921737550 927749297 490790054 952150339 63483108 165223371 803562440 891859952 893241380 977932664 208470772 704738319 327120904 520455408 469857709 966907843 45795266 101359391 281772349 364059187 402573541 688262662 638996403 735113230 238596026 348420788 254481502 452029714 958417635 968929912 638362537 989004098 521736579 749395688 281464374 398889022 524447292 673629753 165371985 707799255 432268209 437484118 903528959 986719167 683405291 970255656 847582038 955893939 286037308 446248102 609988470 992142807 981122177 992765520 256552121 541877462 830415151 834096469 610390547 681919737 252823460 494252286 607337252 802886519 781046647 982576172 4959282 644759089 89993965 777601902 647500975 715142477 95808702 983206132 923494649 972432252 696793802 865501958 532887401 663360427 898518417 922282826 276975916 488592768 547893890 691613888 696125699 781072258 999409260 999521445 211606480 819477876 564972962 816930440 263701287 593718901 523957064 621010045 619391435 686421054 455719777 757825536 3450508 562395703 488354790 839024562 894957748 965169280 765079470 993009425 323457399 327500376 186363984 584504157 949371809 984128741 311833797 339231164 156676667 578695439 670906277 791486812 665589834 800366724 529233112 652870163 940602851 967832395 834385232 885285124 975860968 994364624 932062747 990075397 258630610 899879160 704788946 902786142 570098346 687900203 939707209 996142972 13955844 21436153 373693742 469052647 755488571 885582013 761223289 822823926 233590951 584039503 843636656 848541364 348503329 791046274 892754188 924052824 68632257 681855083 87177323 954737633 701208150 874971216 460181878 708660908 958122983 995890409 407231689 740740112 166021552 247032902 916373081 983853489 906070185 981688640 384692637 742864940 478765108 534331229 875138376 984015361 706581704 893377876 562359509 873937461 245525599 679696322 199905464 747731277 818006149 999723951 443703507 854175188 958787896 986300937 167978374 632794608 360211934 555846441 248496719 760160409 386563945 841577653 530126922 614237165 872844126 966881791 128859423 432606645 32858365 959181371 863003892 891529571 138784281 795393963 741088056 934227552 833219008 970076663 817511697 904995054 684657679 914655264 186854943 195077321 321766663 626954397 60335430 184628062 654031077 851369666 268108200 898007408 774385309 926887068 692842234 947882464 723587842 738825632 729541988 893390406 846027183 934680327 591307271 684836380 442602569 794400800 828370356 983306484 390574807 476832103 9409992 609445476 762712737 800419215 624767042 894976345 934171729 968939793 385000256 754004209 265800623 761478663 374493760 820751980 26653354 53935397 439936100 908926518 942795672 998471139 785798883 879087980 621794440 785741032 857180746 904918249 316418782 505836398 44717060 899547766 310568598 739250163 517821791 570767048 977084140 984605793 396800694 962670129 371837156 831073372 451054283 697661454 215879112 962962582 25725737 415681848 100984283 268197429 351651773 606672121 198893917 767564333 715901823 880340438 112057202 201638714 617562135 727684102 462909997 832789546 243935791 576570993 734705726 974942060 279283179 996181163 666566720 899833255 336153067 933243972 787720866 863436710 341541042 689726448 834081178 887418047 885329827 999016020 425470096 524685243 2498392 149180499 843257438 923155325 828646475 854208300 528516267 665101179 901611807 959021557 695029915 719468008 139186953 900067493 397935780 911302121 778932839 943134171 357147576 856115571 315878590 480817093 92332117 217709864 359695881 842643330 777390090 984008608 376432585 395885727 243251526 586710313 906220993 985941083 998619922 999054007 532616800 916141759 311637987 637747304 899844957 945277318 963292015 985076316 311129926 752010644 70643366 272581113 355304641 595095468 359711295 528401646 690390664 879604734 979983115 994487326 909148609 920487434 907096289 931689002 632712849 771415413 844210880 935200992 636619931 907507315 622645696 693915872 835768759 983668015 160654338 260110627 281364809 488665289 485968782 786209396 578653878 801409752 918184548 926997422 824740536 870894971 81745937 359086059 862463299 904103571 301813699 518108881 774261612 867007133 968821931 968888049 819265771 968333651 958401842 984196925 726798571 893634483 878293673 942265738 232955314 925985719 992346739 993293589 425303432 669856862 970752701 974682133 216203133 331413769 172426739 403012606 189368088 740008229 409089292 674584426 578165395 698260337 122667734 175880442 326687504 448394044 499321662 621523885 343194928 597419556 172018565 222018422 422946331 565678321 117525245 841330235 412972344 949234940 762621251 783463097 133005962 806244245 238478765 974951828 191897787 216058208 101499473 535718081 399528217 678138451 119810118 291043756 872841972 911360895 845021139 848826266 168921614 793268261 837280896 844500861 736216735 905798321 283739214 613713463 221150117 353426942 932554598 999958873 754929503 795569853 273255865 304327897 329497284 973226570 659944802 746673829 536909616 726050898 100826052 349964695 7727547 531370781 49667417 597133894 305000886 733617619 639449138 907918521 89714982 739278187 614268109 966115075 190748532 692136926 846550089 938479139 643953272 737546972 669535721 889650992 14433670 115123714 672319450 873269136 297675430 357838100 38215735 735957369 656150994 990029486 786962379 993860857 539896052 944271616 940769329 942911752 286749115 964879941 103274854 354146641 648733357 903159521 596540057 719265145 557420059 587017425 723796222 891122023 414208147 504527159 753559653 834088816 983740731 994137776 662007901 820497593 58573449 185296973 983645079 995696750 84564789 995747676 155107912 798644353 301102378 730471608 216088951 357843585 498834516 506053101 219220793 713661465 569572129 792183224 80338209 784569832 814693915 935447480 738965614 757608241 501048701 704473985 102605728 539570104 884148056 932761397 474238767 624272674 304092917 727314760 634887371 930778652 934189035 937597154 108983 904969794 492524638 816606972 329338257 667512323 110044987 831355041 707310039 861835691 278917174 986189017 940648132 955291893 631265318 718224909 660971486 738659413 414731853 608570544 892244214 928981156 882312818 908979384 224734216 417241328 224931808 231774550 896434021 939567232 785955787 816039288 72143964 99358169 436110566 946443726 656732489 725021390 859184271 969869146 269779222 350648818 106172144 889956450 136862477 533252956 50426137 593378306 153595889 539925745 745213051 823898739 18219947 518916246 149349873 814920294 225952823 926150455 528281348 954488445 950166149 998067338 435815012 653843251 874082635 882401193 749997672 931738236 38243615 496138303 596273109 976843079 416466570 588199068 900447126 900463034 718696788 892700123 40025038 329917519 644166904 890394292 335314452 724612743 907497590 928591936 240668928 330048256 149370715 289593599 200145092 434130961 540539124 829263034 849772231 999303316 201765495 433828433 392490258 552601126 184556702 841079495 910487182 959476327 208125970 885898765 367105401 835912676 675596382 973482173 54360804 566006320 156735225 517148631 55253603 843761886 241716561 843599238 462657695 974997431 165384867 813824664 728827763 757808414 991041008 995479535 456364084 852985508 615433648 814362676 421532778 490806322 510748737 621567489 523178512 982022930 156215338 714197747 989547770 990078935 601797515 929231536 873235341 901048549 937672892 949805659 160570942 810725057 212863907 828686140 910766763 949441600 520735535 847672395 904990233 968775253 574129837 737026418 839944362 968197053 445373983 810466537 154470184 950927428 267021528 845052703 734534232 800458164 236105124 872622161 580316831 621136596 265170212 418155443 881729194 926548074 880644278 956849240 412320950 614890250 591496917 745358615 722876254 918649861 328585826 944906891 689438141 833246353 330963405 713751214 36570871 816571279 777259032 829857378 499919376 704119302 701586283 833357292 68453721 489539383 112109343 353497991 674820777 682497980 149875596 919968803 421851828 725130374 317169940 421149734 701812869 943373124 238256028 270980950 692550363 951512942 431529117 986663699 468410340 537887544 894905184 967489169 881990382 998237612 775208310 795046363 107696913 767326393 394904691 959711675 63616739 930503720 411753332 756526309 706783067 833728097 82753483 524759050 446624230 687368587 480708449 959024539 887115568 916550272 710292662 999274229 432140714 724108659 648770130 912477786 85055951 248165487 50109026 115692858 512948071 772430552 224641470 428094173 633672649 718402395 100332581 241351973 667299192 776559234 821897656 942976354 7006364 798646179 643176682 700070713 929806039 962659039 69733046 302037246 115697568 521696975 368750282 736245147 946212470 952312420 936220182 961150055 390011137 595382829 593945269 665643202 86738212 381919866 418108992 472286850 717864708 872964721 611864531 712684378 665453193 840754527 39455821 748977666 506761781 914795091 370949372 773161026 499404515 724203152 210387822 605010601 564382946 643644355 372930865 698564344 548726848 859032058 542694416 928756048 908078097 917209655 313210298 881346893 963340635 979949329 777288990 960656313 263907191 579636093 555884816 573796457 8222796 596158600 122541164 500051402 742853017 988268956 524589382 662047511 57519980 87880045 346109578 857844460 503739262 714887795 123555711 383882331 973982344 993229308 83047532 790724142 852716042 855930501 32162721 797345051 838667925 958879598 673931803 908542954 834038872 940940413 328747856 606608633 14743893 112583390 894669114 924130924 918818177 950070992 871777971 993650744 780658874 834226685 913445297 974834169 926273093 995269035 263316947 752911033 916077094 927905135 208103875 752040783 619982137 902671166 156727520 702146464 21911234 368003892 438262666 629384278 59835747 466818735 703060088 900238710 683761604 873898936 732268333 921456092 458548106 593698124 284471356 610493526 874777439 941693188 48550754 468705121 156013772 239846068 838810358 957837291 172804820 242013071 582620784 784697335 691106973 995694000 633614893 919289306 514293271 828342510 447355579 800009424 347772679 853787674 819985940 845774239 496541054 837848134 36461771 708513838 669039097 714862655 838509423 986952837 733265926 950854875 185995810 820587470 857819418 997571909 619960627 702708461 147184725 154239162 937102671 972863493 820978700 935006051 261694250 586142493 66977365 424731055 764003927 880924291 449577610 552038623 344744328 375066810 892344452 925900176 511189073 958045462 332326996 845258103 660210950 799301115 306617650 392970118 733054509 906278945 803258486 815241769 436071274 533286412 376388577 910880080 358110240 563613495 878187220 901015247 963911845 966109122 865309893 977560474 625720605 762147290 102390934 251326465 482396451 991622078 870437665 997861580 964010701 964540785 729603511 836354920 574494436 604195575 510223970 579088055 230555656 973049400 163075452 862643500 910631713 986526874 674915002 758370920 276492537 348532548 113893904 150825844 126288101 885809823 394396385 820789745 881451491 932882097 206637418 911567294 643174900 738343340 260800433 675679217 623010526 896963856 124537657 782605434 693287991 995485163 64561060 645332438 866623610 947220745 717117539 979172960 908442310 968447047 119750099 437308755 835197126 964067959 416081982 708469562 641370874 916838732 276368367 899873332 162208042 719006680 344578940 609554565 893543788 916612574 363056616 735774225 876202190 992744228 727569993 787856608 446901618 694789533 52446103 557560679 47920394 278024424 749285282 929743200 897554589 984861345 213549342 277994381 680272944 703493641 46634668 196895285 692608793 743422404 257433702 767133083 748321221 839055668 449048317 648002896 803077594 872126369 473916953 929487026 170410872 604210557 388036742 468962379 356115444 696876993 672714932 982385372 808472538 974117458 229456532 452094753 16998868 179198181 842645745 899146980 457670593 918262167 132334778 890574593 864190912 927216193 107797180 377298821 199933401 211954547 480840973 558799246 474496051 971095415 139924887 701209865 892843825 971121006 587365713 984394994 20553695 546234011 185688639 418150109 852040984 911092746 434685209 793716143 439071102 876020419 441239264 758362174 52015 991934956 467108565 850155717 727937978 838637274 47486531 763186353 946644733 980192155 763115646 897596481 10169520 397652105 336971286 941435174 10815788 887439740 267420341 453717578 131318175 309410043 510673691 874472402 277617895 287160857 467286835 771852126 83218681 537857301 34244966 848980102 543465924 812992188 314888953 575966986 349347949 640989685 396608062 715140046 771953994 943413444 894761903 922009644 870430785 944473100 557359530 724695879 344047104 617785494 813963379 819499269 52409000 951350895 120966060 887800213 843019989 963122288 527584788 756748437 460328554 906599298 505146812 924274837 428169566 841061409 114792367 427500510 185188105 315817915 782728240 814051463 944554724 985000570 24003414 583932453 632156030 878739860 993658115 998172837 492307947 692473032 907550934 988390926 126561352 137859469 387056034 777107454 110369030 493841207 866544073 950812373 218323886 498010756 567378119 950713345 772552412 963396855 111131304 894625837 959199801 973500644 105942385 849288143 406184237 707683345 367780137 930151360 914124324 959417438 979139437 992453359 151840290 737147644 601660982 932853057 271774298 276361649 740727518 774725570 530127633 810755113 822894881 931465951 506601748 774460763 311001212 386169626 750342137 899135099 212681988 856884433 92245173 929818013 611793542 983034870 49096762 418008779 763963157 986360059 355059819 414548996 189023660 674463007 973860519 987435659 729649566 798317182 544314954 585814315 435434737 793970378 460635495 575030897 736797914 873249045 327683560 415944888 270530378 950340692 926859554 969666489 114539141 824834483 487750296 820158872 119047844 136361194 792427202 994662337 84115924 883698862 221781428 726809456 41273397 827468350 239388286 479183096 99190480 571492455 470447626 785905471 145001767 223754283 870838579 996401431 115977341 934139792 77678579 913016531 37158506 775185675 882956686 975753726 28093352 875986998 629244518 813484086 684084580 701004977 495686316 725469912 571958290 583313698 996524493 998316023 10384501 100410658 59636265 694454567 602545296 682526397 561286251 758809603 601730589 734662326 822947316 828643688 841834828 931544621 745285616 764634326 643368513 812656060 451084298 475895025 4395741 265858178 361867805 657509556 230802438 605179905 720017317 851930608 837510288 941938816 879707433 981846739 589483259 973881214 308157219 449400931 468544216 713845393 753498914 969750893 164403330 463119010 869436896 936097260 876881278 938694549 892422359 920351590 704317681 739739455 970694802 979996691 463133392 939010724 171648148 714908830 548818925 650619527 516767345 964089508 221414284 538318912 92503761 810924865 831703932 853745102 838463180 916029997 384699830 903220918 402745347 917646119 864304587 935912321 699437482 918034693 183959643 869798420 393741898 434721413 3671787 159732745 917497286 967878404 661706061 673307292 58604772 422322090 234598056 804602699 213190483 318099178 257704950 637345921 472905900 772310945 967014071 980408029 130771397 574246965 368754283 763023333 12397130 397791384 509791623 535990554 144983738 297279477 55545600 681252452 863543995 923128912 923511834 924046392 758490275 936225897 543615725 752729172 206289443 664042958 912230212 977633094 779222708 864429951 94652405 121710514 866318694 913809940 450847649 876693737 773631004 907031527 827221781 933076491 797005209 835475299 227756685 984119631 103173354 574596641 13517461 915466912 357196791 513872124 679133423 917863328 621575217 893346737 58971918 873903478 168777922 881171653 818649222 887046313 318772841 568746820 659204679 755993689 239068481 591636089 417116848 845904342 744021052 987188836 364490505 529044453 639457330 954962663 141462661 961348245 872410648 972481352 829582003 953239151 404603904 491018449 623591750 974474866 784837226 795822651 885235440 998492650 404469295 674141829 864323023 899857157 634834268 648884366 68374801 102268297 537617448 810207158 479522411 906807608 633513971 989611679 794621839 914239843 405235123 769826393 850155004 956663418 939102034 964226016 763118275 861376533 581124947 777098109 36681604 600942796 369509651 575543573 925070203 968282368 183323580 667377153 125838852 260575915 488237290 701090838 951307822 990988547 354810232 817399063 479861905 910264217 216811264 827320293 736432456 864586639 137565230 278298748 722456874 743416172 203649434 390044058 18310538 815122834 671317942 686920430 149745748 628106527 867119321 961544335 752700441 941981303 514761688 607611838 119357409 517756495 321453829 842652605 216584446 923987205 536689285 754623648 221914018 603047631 79585760 100924682 993911413 996743255 860144282 873368620 635586198 976932854 506942933 901949724 838345326 960258044 170868831 358389720 845352818 878982504 924849798 986852725 437215179 725990636 309905277 544395645 151170427 173862535 165356240 698283259 58296359 159241886 520123625 565567637 517846442 725086289 239884799 723612543 303196419 516800375 309885060 839781869 509804777 573871454 690814232 773407561 597495775 868075050 503031012 555963002 567816833 581299096 419734995 901414394 41938270 649532218 392054366 653076434 850939124 873002538 961760992 994720291 73154761 643433193 223152040 694643334 488454366 999172471 240045082 730756805 496291591 540770348 612076145 815105491 750906962 980414330 374560210 936895401 799868033 805996887 165718362 405928037 641260245 768916088 565541490 662897604 354261305 870441049 713563173 746520156 680597566 868153826 177185515 502106787 771441274 948927957 527021101 610756658 264601864 289880278 850444028 999775084 846851826 950256091 683825121 776381202 460660998 989625732 686024827 798703479 973731148 987158129 992142989 999070436 790399461 866918997 290491921 493205648 989091173 989350097 421200181 817141229 1619402 643242533 773396163 890868987 675217927 898941187 984956420 988696829 258088288 392722969 639427903 998769897 646800951 948260097 936423778 978011443 303985193 379885181 133069772 889518586 912592226 966742996 872134542 967644612 372705102 565832686 347496023 668155794 725652565 816946366 981966912 990599908 656782141 991088106 996259387 999268662 776095158 911362031 190108664 935069195 861456893 927370345 851999458 938333298 69862646 355568279 860988557 984906909 267755626 932997849 292290988 346077474 494101885 933585633 885857393 998362170 794803397 982098991 371809348 793999403 313864468 427655020 838657085 936567626 838595911 972979583 825830029 939343819 393668195 737637767 379684515 640116746 47969294 730099899 55146415 842568196 290680575 583688144 824709580 867576691 812672686 948799804 807561542 904180346 628123064 727637010 928098878 964854317 368849389 672222815 727301040 744042048 335567754 942122735 546816075 924867580 478603522 655042180 639695661 644819067 870196221 927827196 951292349 996821146 396756554 408649408 826611105 858674687 12739661 692175416 535514255 922677321 992546592 999954742 192374866 265386642 95746928 829871590 321732559 720745311 260529912 677334332 124296528 817769876 60687111 740190749 623937076 709612626 938333219 960303100 92851114 741801116 731467618 998811965 943611310 973797451 856958500 913059462 252228049 401897939 177246083 551847915 545371341 589302580 463650777 548390057 930278890 987967156 672235920 750913042 610802466 934861217 594893339 618978208 550788349 991137759 453876361 612043004 282160337 612333141 63468106 879193210 447290331 513415848 919494344 956391777 692278060 889417395 472453056 959394650 6428810 872854245 914871648 926196365 183905769 208736934 844701945 954140458 927573834 977267943 997743135 999974217 647250431 891178589 130309582 706759052 145898293 997174366 432070582 570997429 108133694 934044878 339173520 666619679 681128600 810472905 30414698 745682702 584205772 758999911 311861323 632515705 387759011 610357210 292634391 530476095 458908133 772658247 400750524 938605124 871259702 985604740 943168126 943693903 486683761 523462692 854634164 938326817 45893786 370943068 761920494 955180445 772044541 903879554 8047631 532680448 928785074 965741894 982562224 987099607 675446905 706201900 236451781 833258961 532672133 750399097 626292800 655723812 102823224 506437264 411406049 759459102 386943465 799638881 508433474 621188512 276948194 427901715 215269526 326791064 352434260 886194905 250621336 570898764 285607490 745526507 779729337 883483595 381263839 999614704 715642226 799150018 879341325 904434774 366727092 628006454 900174251 902697456 894904321 908962770 507493405 823372211 606186712 753134578 702753815 952331948 744046754 789146589 358380260 858239261 376779697 406469456 345703852 757802865 18281917 211136844 186676573 939361589 63752630 366890972 268062624 514611860 325009159 785361812 389246849 544285870 128150465 849533087 571303752 834402041 176341346 251108337 983922154 996256273 178121053 596188516 644313696 749953758 100247523 128900349 557754095 843801818 705508596 799119258 50760524 324719829 662431895 771249064 693710393 701209994 65400017 305927435 735160483 786439008 263716122 383077363 277833904 591344778 4466452 573112829 230970534 618299824 625354999 776158167 565481940 849216642 583731244 679464243 856337329 965764191 956720032 998867708 30522591 963745492 454816081 509600688 822277036 908974980 435422059 800825186 471182096 644157697 884645947 960216847 569643485 988550848 233388309 367865514 261138994 460106204 311487263 664233519 135268375 633046614 37866494 71605838 850767449 951274035 620678434 825281123 608369108 636276239 365087815 467470915 270752609 834078970 912628182 927385688 167321041 623765136 384863593 493301716 339322515 651845697 770495629 903028151 356345997 851080804 333306811 874328182 585948535 735471571 688549278 867539601 199458065 347477201 423479908 810910789 56836961 863846963 200180155 942735521 537098060 645035852 471944258 627632095 943421102 972837519 372478128 967100677 715121450 832474154 597493653 971565907 372875665 724568866 158417354 710961658 865217963 920348760 136637807 936871764 773795251 862002511 167526387 629674296 665894211 823361001 978991616 996810436 554251649 882572672 513339896 841515189 324758678 516500882 533293864 888060270 75187938 582213971 646143460 666421268 981798110 987965499 497072957 998242562 30994681 318754627 376814745 917472849 663873040 871044784 778902379 834005329 880285984 961317902 450578145 514922768 440783024 997417274 725735809 825035944 318499442 554050762 725380891 901692671 831433270 953410488 804005942 933473784 831812334 983473036 239107804 588689253 53142448 225152922 772273460 774047169 190203929 350714874 270567295 579702649 975372555 975602163 917610916 922303816 385917975 513667218 301474002 564549911 609289802 614193511 346273419 365905251 810743850 975619250 811047009 915747450 910600810 923598088 559532296 947362363 666575229 864416489 538984816 803840666 732449819 939305589 436611369 691360830 52640636 260961842 370977903 394395737 315351503 721076237 546220630 961021613 300262288 953673984 346785361 646451393 201909342 693935567 767006055 936399093 909177417 969684176 39187772 195688948 761799152 947966755 321221407 704092022 356155084 943727234 341973878 372457774 360139866 703724239 337244650 872192221 153922353 841452996 717626008 737969164 681682735 798740595 614985520 827342394 451505473 474162261 803182813 818267856 53949051 327402639 516379112 663485965 307657445 951841516 307765599 899508754 643392404 803003049 312835885 476695296 773452408 939193889 550029215 612209929 534480602 729653118 443571143 736968305 988961487 995118291 67753888 977841863 324606646 920815479 420435561 859618384 206515061 720040496 963719921 995814659 89042109 676137533 577660246 828610948 48903989 151346098 744795660 943424002 570001367 614152921 191781861 484932267 472073445 975269747 77677411 837372839 942910414 981940270 158857546 268038535 132791597 689034989 353937317 652091933 948312642 983672050 133354433 447809405 837580762 871082898 616812640 803607830 785106352 934029579 702410332 740396828 432291841 485039039 701718008 999260814 860994116 924737048 15203642 789389444 371493759 480593170 870296455 873063190 927036230 961553084 444655371 473509278 516075971 731726726 892149294 919876626 985362864 995780682 194520202 622383976 584201708 707537896 399814887 956833532 351857397 471913562 627507455 929422115 518866455 787051952 767580488 902830510 58430376 294391291 557888910 958569761 579222069 714888608 534258987 928633750 863706968 947216862 502902208 954602024 156745819 229291689 867842662 897568187 37592383 335109735 427516985 525480551 143090638 661967574 883151835 885742976 137475592 269768055 516126745 525370132 780247340 834799095 210131326 439810178 430089622 879171390 700398706 890953997 598628690 611896849 747816079 792262926 199298204 783014936 182968752 603588661 851961852 876863948 14175757 892302576 939792653 994861236 212475278 609710244 907350785 922427152 510212079 606025981 256770529 262092703 835892872 994826927 538678047 682746903 922375737 947485706 440282446 610411502 348709405 390929204 744278982 903774989 457808716 658450575 803193552 809287582 605707032 979481939 48838842 260813757 189997135 637991455 771078192 946571625 856780973 947133175 722509757 910739914 512909149 576245600 193047449 258912186 473249943 566428742 577993555 754527477 475456948 725001341 299409980 850146279 861600951 963424711 56442918 125193454 505284309 836765183 504648144 632956445 311944518 413255723 366699984 434958396 551407202 982462066 404819950 537067426 473414204 586121524 107776306 861512977 59136108 452740286 994013385 996216285 123907167 824642793 127927775 662984711 600163818 841836588 860984733 983780075 11311127 752742581 398100880 683269792 773537740 910116571 946585292 985357230 32376611 860823415 38029672 413685158 130503833 914388010 905813629 941740664 62541632 887166162 884295603 931939455 812525796 946546714 84413579 169239991 363827030 988287381 137530976 253671128 514511263 859242011 744339294 856453468 737017748 956614826 272943446 451942477 245725508 700271729 106273052 415296543 627453594 765206844 717219291 914948340 429017477 650007121 443010343 454684849 15751892 956586112 366720985 939054690 889135115 990841399 550908480 942273467 279756305 623959359 743819544 761322802 971136244 995085752 952455870 954629818 615810430 884154421 607563158 983287059 497281299 861505565 354775879 568118501 232149512 772576967 652592926 705669264 906552743 929418041 330778703 847975543 855586832 937671973 847269343 869070096 218000275 759362797 916511687 946915587 516999867 965686081 99835839 846808200 243101630 704008047 190580870 583951812 875162975 918887643 556646116 876310434 194693748 585763939 128360273 735991729 196274340 917022664 771381476 826632371 18485683 131173000 883067674 907190607 520323277 891003989 637541524 789572050 404998600 687679703 192806537 502251571 284299263 580933972 364187668 697123006 75168298 884185222 591999009 706862268 40645498 899947926 239460886 857143794 974405103 982520905 656412355 949866632 456544149 595720327 807078599 970472192 857835620 987825171 321321648 893108827 828515778 895067426 777565835 865603447 987179527 987630302 149984803 795118718 394981895 896609444 174414888 707359767 824975774 938839567 484368908 522031384 591025518 601752192 962824236 981641578 230592245 468838398 292578279 772275094 869331574 881257919 36251027 873741139 747899734 804165499 492217100 558509954 401725382 691607373 309583785 531486279 613147457 662806221 790506854 833834243 732345157 977252387 886979295 986468738 102297474 385376642 255194903 619749310 620775604 739654940 847433174 981306584 33584227 647762567 105061002 816993021 481413519 803791011 149783063 416531106 792921605 987335483 525831606 549793364 388760618 712395928 140310917 844635846 564894357 734998132 644398740 659323777 418154677 815963112 602663816 638056964 833787172 856692389 657276712 862342242 599189647 798811477 748788725 949503775 630687857 849102978 998121342 998352289 968215447 991464084 597715396 629280790 639231029 801647322 907905045 995717063 350528211 507516689 176640464 878089829 783667073 939224467 995729951 997497487 290322073 611762243 853870565 878271659 732882579 827074489 373468127 429011644 135766646 732710079 755314657 979500497 149421755 456871371 620956765 932214606 722722876 858445312 867048660 989288343 358520101 965822345 186620238 304403540 467770884 753715735 282807896 536205171 798354105 860236581 92836387 890572538 801278611 812781089 840160604 873642112 151329689 661092835 990451294 998162566 389076902 524620402 116591866 677069386 508167104 653931684 775647109 787725809 949068917 971681359 238559896 412459904 727746155 974482713 561318649 694653091 202600641 744045928 435593629 974062562 583025555 769225921 173411295 250172551 297515203 555342914 333671399 734070748 632601305 715838071 579301132 597283156 40857065 146172824 980189698 992146370 310885216 933013966 35981070 105034781 860125941 921581704 997209757 998050464 277026987 319317039 617608980 629585770 467687886 851673758 689483284 906577750 855423210 971503072 726649889 905942074 515357303 554287804 843458989 959491040 773726144 927704376 678991586 959555620 896175511 923006964 70017113 307430159 541713341 809798919 34401884 952780558 200730846 492196974 923418224 949420028 512058170 711473690 498398900 857786185 594697365 879294558 237791077 558342175 434397261 678474375 180031935 272329341 369743806 934667791 625285997 927358915 716882037 920182894 702969636 979841287 124652211 332276490 389609995 845666647 989113037 992412833 524202452 973521182 379460202 478205162 696633052 717299550 702978050 740875191 807781376 915047787 462520126 995545933 471387663 978298862 594276864 615728969 201489369 613767802 744002257 936370382 266230244 502993188 671344915 737104380 498583098 677827149 658119797 841044520 926022031 995725508 519992415 688846887 251537415 314814209 856196775 904304965 803507801 942289468 73898790 824297422 102949778 687511909 797988766 878260241 328002704 806908826 878529787 976686024 365661052 418250588 924355018 925632519 739565147 948784393 706523995 746341137 389422477 447269459 597026254 910992919 307851427 977369545 396775915 400961256 50420163 485823309 365437309 789164333 123805592 696683689 578440898 816662117 227894039 597596514 147766398 844971734 459028110 969546181 350620462 783211647 532352985 849128556 140593031 544265346 842340839 935872794 620464603 666240867 625059247 648353453 601673856 998360222 609387213 612895751 674863868 856071965 977785778 995667034 766611298 920986598 741057486 884411455 458962340 538734178 109352965 398881747 8386804 636704001 651494349 751316440 39387590 630406406 255930610 601684649 591575543 646884727 328414090 418467916 302831681 752945361 383330094 786288202 225006370 506010758 992970149 994816466 729512551 783510711 252781519 369549955 881821057 964723520 18835499 188842088 694390483 907852857 516328401 979550055 12405823 144560636 245903258 460937147 413442620 702564231 30186321 797016909 337395566 700778064 80804902 761184932 245821561 924950855 780492629 831051316 670895057 690970700 752132875 967274533 707416196 816060245 937468290 938973803 619214834 805129170 197960129 729344503 739512800 762507859 925876896 935484298 325348096 382963176 154323943 834514747 161818101 211730540 722279184 869063957 299014923 473695016 838853002 896554813 234289801 547826842 63398029 586951496 883841120 940319846 677793494 871275909 332525832 917949813 242832258 706218103 170569871 283616130 188347331 295911584 327547743 520130432 873153691 993910307 952954154 982500808 518711307 812090626 139300778 631649973 1059136 906809376 627528622 871213173 832466748 892562120 170150875 202533323 381494948 820168604 315745317 487565917 949677462 972244612 882401255 887791132 715127871 765494654 229050661 491856444 502749474 738268985 475958667 849656744 822303365 883988072 288920673 751042606 351714994 666965562 341231749 449270105 354294435 681971864 59032116 919417337 596016586 711982484 534310825 602372111 822250648 897076006 619475359 864440184 724851052 977017034 213526671 965890346 33663420 319220460 785995823 991005490 272096234 727200896 453267856 713219139 117139119 242615677 390605026 530023979 227361048 516661568 624483897 979604450 428144029 610543716 590216583 705240592 896026374 979263555 617725698 793535584 157625263 788309010 746907828 803840341 710273073 944527616 592535177 850167591 710923703 774162823 305052766 545417071 656189297 721735108 792394700 914399584 77183327 104923701 118482547 156844763 556188938 942996771 418600802 859040174 721335389 781995004 423734880 615005089 883236154 897427356 240007229 661091990 230279281 500393169 859215682 965674215 572141405 986285622 913828276 933914884 886870704 977784133 173581624 423732430 347521115 870306566 540572927 750869309 814150779 959536614 858543168 952654867 69606300 419061813 476918844 583558705 614182447 699274071 845869182 908797809 717542312 930361605 971366858 980271996 975907006 999133081 978592896 987599974 206225427 605800432 25746282 631189188 917619672 966293005 833762187 905692832 723825624 821160849 739790062 912002336 89178029 503022539 297570301 836073855 728839817 773991708 60907046 855673359 194980075 585667454 202798088 281231259 173536165 973661850 876178675 952509339 422365012 433958382 714457999 805345262 157663239 938946685 899423370 967572477 827049590 911400870 650006298 744961655 130044636 860519612 435078424 809077699 539431126 800782113 976640131 984507920 877573745 904995973 763489648 955230730 929956935 966323604 845041415 943181792 431135095 497113233 653152920 863251724 525776759 726011346 679663147 974456140 27004339 227584370 77335467 534183032 652606104 655131076 738370567 980767121 945355719 976569202 585929938 902828304 656745099 658214801 32771785 700141562 865344691 912548056 355635502 370741310 156003866 953550436 875166744 894087640 703147230 897824308 927127065 995395348 42080330 472060333 443828736 490308377 836722945 981517535 343001061 589619192 102380000 757729711 857424160 964716961 838454932 928762680 302488950 598985422 39849125 836519172 30261518 440369764 316025323 429199529 641718946 992483125 425499097 729398100 327487109 539931914 72315585 757942640 108578948 798015190 680753792 803987659 925363605 992186677 53525796 506886304 601475094 787945400 952259264 981727134 99718694 529699043 707071332 899088563 736626609 846893070 576186519 865571893 850544728 905046475 57163524 745046947 820588586 822375201 2144578 540629798 141921116 920279024 942929237 950365724 820408853 970794164 121254097 276226543 557935382 798619687 761422606 967891463 990966279 991372009 51459329 873367960 81502811 379913021 274049173 443828621 621546966 812693134 963177719 982812909 532263858 568949599 206746553 895695436 60207495 865223320 287069678 702387499 532600062 611828593 740163914 957425193 471906961 772343968 167530953 684584464 17217142 169673351 68250192 310308689 755882909 771117791 108499928 357177820 343490539 640841942 852741057 925278958 19394455 964160195 989795239 992877784 38750974 653100419 139986027 392182123 91539321 871560219 290841409 656329766 639232686 811107553 496087514 576857301 297906054 878800282 276828506 991243692 829741027 965175976 600230393 933441977 389008395 978282365 812009394 897823261 674618792 847269366 234054100 400811169 791140436 987523173 569256631 925347107 889931720 896402888 2542272 235142574 669483458 864996145 717939087 976100886 42129681 512347404 505424030 661002633 990340372 991440060 546463902 555086736 403501895 962204228 352100845 378660580 582210256 833047518 533637120 974047813 178330222 776372120 493609146 550481459 305673868 807020348 343319 981409657 256319280 793625332 170354067 913941864 331934653 632161637 151003214 560209418 463415499 614773348 126312462 589645977 714005956 848354243 713150511 758224182 687169793 773798029 975879781 980611005 720274120 743873640 15489101 594354261 957613637 959924032 307092466 468188103 624539411 878964495 246362261 856054194 155461270 647708435 227433351 631810766 149696860 735687645 986869232 990190756 569830876 605945277 190264362 868168274 203795927 469448200 476627488 905061884 537406236 551326900 868806315 937349255 589706965 769641444 128634070 510955151 473075615 518322436 585661475 705848629 771206009 838864602 837920149 911682502 418132259 690687287 302590673 986042512 971482654 997756937 720363597 960504188 146688194 526362514 939581175 949880686 684078369 706715291 780965994 876772020 321305140 348826209 830405230 845584853 223877613 539840590 615470108 736662550 447179702 954652432 904776240 923342750 197090635 640439578 609967792 890066488 92287985 954424805 794042339 874282749 45804248 884915762 687476854 785503171 654960547 865041416 638324338 851434060 821875224 868353527 23904714 737653630 473583193 883643950 129149998 320984674 880518111 993867480 14165965 924482316 625649141 743436310 887975869 981735470 802750094 961310850 322691169 546351868 590925193 995388152 583365225 651571588 311555152 336277714 948798480 977207660 785165357 932685369 64996453 479689377 80229156 405914248 740270114 765698126 840315700 945244450 526235748 947907474 756163488 813603956 245796900 721583641 825057737 871068003 133828993 350223910 353183354 824122920 23933836 973637106 491432788 600654822 780164113 820359227 553586167 626712679 603234459 616083791 624100627 773146463 347256975 369402421 285243693 566600999 84826651 670955188 613169876 962833208 650501436 670869541 870096687 974121054 350231151 604039935 64065180 373929664 826261712 985306227 500283104 801320866 544170204 741957142 82660897 408841555 360410065 975682204 126992322 883733258 8414543 236512851 923674099 972385331 753828181 896052047 668343576 819960880 515801586 931146301 361409158 987850084 671352834 836908498 82356792 982390495 922132191 948631982 990556469 995891216 470555826 560311243 98050688 210031252 365938048 849633948 274941776 382542518 577095912 609062259 979221325 980173381 928347271 986151052 104198218 264686987 531330526 573859662 619522459 623040525 941136660 967633245 216574811 381767264 437848913 897888816 497365419 751601653 719139744 876121168 157589017 977073246 402139036 770526539 676151631 917089193 567869164 791801483 449602505 493467533 581979760 847435220 696585932 845773432 84735909 768240563 702180106 824390175 460711240 689025365 426828372 549680528 628860110 630516132 353855082 403651409 414194574 432662258 915663427 980941833 519767371 966664424 444002527 816529257 933182756 937527156 997584542 998509968 820573038 851441124 390695795 439970908 760384390 841056155 963870385 999301241 522284510 629302985 633263490 708345623 170432979 896056273 214554332 734423762 168166325 671386675 303509158 685228974 279988717 778877184 668621885 995338202 4096408 718121859 80064920 591421876 529060546 741514818 173779885 621275715 388140808 878727160 59507066 507471781 239329110 949111708 610943555 618908840 573483630 976986167 26220668 671172849 427703906 462330991 568812163 947817288 723885769 728210941 583502130 624505750 112980486 486716922 719689294 861649449 951438487 990926746 370390486 534866926 795857627 815635578 12811436 295951432 658914947 876265070 847246330 855548363 907713519 977458286 345066635 744153026 336291454 361103500 339025727 848064128 451435107 849861710 854918007 912087132 696788788 803763753 830548928 898261287 577298230 712309911 279527936 522826534 749661264 942888045 547362831 928265797 79231318 438780661 860842364 977663712 47296598 227940334 516517318 839707604 465411852 539630823 976500866 986920229 895189753 937100665 448389161 789137199 582569315 896872283 851799217 853512728 392171830 614079852 768841977 899625486 613196348 912395097 939238604 988156876 251019455 588503915 657287698 928301765 496348394 876294338 701368545 708097182 987497364 996027925 655100377 795176695 891950979 973360154 598650782 665875743 342451180 576762462 631691106 673486824 679726954 793094543 600899386 896861683 776726687 981932839 440065983 575768405 729704337 764857426 911732379 989907764 940411784 970319780 307076293 430763663 129424508 976221317 870969303 960439667 40430852 836649559 362888870 385603935 15398210 395461635 64481642 688349242 480428132 946924375 124877932 995892284 603689583 822185226 858068455 881845004 681889401 966555098 208124843 547424907 281147578 891004086 545242612 903846623 302987336 660609800 595142739 885681744 438083616 771195410 97144333 607002760 477886235 917808547 402184610 565325131 947569264 978723858 243405748 730664007 221105494 957182394 245025713 832676829 787403906 910013968 812135130 940519852 618854937 878051762 117334912 977386507 950097190 987724379 200058120 874151965 428729883 826281926 907270134 944197063 367290421 387478986 634619035 990460939 315859034 499580743 20132927 201572073 430057393 674335709 219994903 932684526 283921431 435672152 861094852 939868048 874096538 888195780 55126607 757195571 527691353 572445999 351466682 523530832 491020225 985938328 143295157 464088798 711675053 772921915 48246544 741820087 342156774 797623582 224765189 580240761 888729273 984023259 98528323 890258375 687881550 691016733 355410111 942722213 22097975 904244548 585305642 689697066 508127080 977447424 621857082 626879872 38375402 514450765 33856801 418614985 552668205 988471431 14104385 165269765 61978930 352506830 18070436 750433761 498853275 928334060 461643552 729090745 356036596 546031991 787390085 973317935 420009212 683275182 54631194 643271207 579335857 749470534 532230079 566507545 725153530 945690061 935644651 954917429 14259983 928934470 263697144 640648204 251670741 700540011 916191031 957450149 874299763 948963115 716531401 747984594 117781460 232564312 343414036 450376400 844914167 965775197 58823781 206105607 756509712 999757577 930696518 954806500 658840330 806857345 537418505 630219460 67728815 350382145 720594395 916802524 523690808 666536649 95543479 717278552 420892599 899073976 495785708 973952261 687112922 882922557 656096105 681100097 677811541 776094935 151197128 515563680 329087960 380429544 903701839 987021270 381321898 678564893 584679601 878971528 924902812 948769819 594468069 719740957 140050393 473123117 208482888 479601743 916675274 983348015 388793882 806444106 971964694 996563039 542304581 852694818 336284273 343619432 276922520 437506574 245728459 979952467 974494345 988028931 498814726 975480502 952687696 958717271 845892641 991088721 751451543 960342647 40222135 580927463 499842804 988070222 595962277 978201742 349885284 683758682 567232622 584251317 932669475 981479370 789077068 848961524 32180105 638591358 933274027 940690449 202549911 902077578 634377128 900227729 207896775 466067086 747196857 754841103 352909492 374834885 790019271 859097426 674507731 904612866 756050630 919853949 297947196 756176115 461260226 722777278 913413875 997461106 6498077 618701658 239347332 273655150 847092949 903688390 504497350 979750191 96525581 374421846 913968350 939882898 154842630 525377795 2941628 180096329 816143928 950709216 870455685 984629913 341605798 536560966 574096881 724240455 747043076 894801137 301689177 357305304 309844996 667359360 355851467 478501596 792782333 989597761 873861793 987972888 368343546 480744624 799520976 952107361 897708401 929071636 662012037 708329214 560038016 807472557 541967782 901381609 979012604 994442050 844582938 975296945 776323414 849743179 447642062 532316361 211045995 867758250 59650892 818200450 635254902 746837388 595693987 886456504 43328045 175396409 752038406 831952880 695326355 699994544 218239013 364770727 551140049 940036522 312620680 848163655 951456072 994272077 792880543 929228144 88057661 712721981 836293842 897616884 167155652 322161236 370941942 653841794 94426925 353073119 593783496 641461450 724250285 799993512 599283279 743214837 413660986 744309104 373027407 657939682 875620088 967206223 593506958 833301530 13401316 439411869 428242762 810556722 991685533 991907438 439364190 612243561 452673172 457678208 83172834 366619282 774613928 935534665 710051359 726819768 821952623 993240789 664442508 840772444 699134693 843064077 543596170 605208017 274525198 686763310 924518148 958010704 514237065 657367642 438740090 865309590 475936855 502115706 115580938 239362766 757009794 872256574 320856059 861061729 637015982 943325608 105420473 995113639 327816985 521914535 670085059 717984922 843165698 847303142 506116678 969872000 406479071 590994489 698371179 709633079 494143953 580245376 564047350 929487701 150782762 791289619 575016436 638225550 902923475 923173891 489412281 882570215 230927640 781583970 244281138 304934732 364816397 877552594 765874603 928660123 18622163 752463352 703373251 952788763 701616496 955719741 273439834 711016855 812624572 926999270 349751682 449787030 781060527 793108989 522065932 815655499 472190621 640597147 216607056 432745532 827744918 907345416 74226325 929345025 42964251 531917069 608313415 881784087 981248158 998143567 780001673 921602416 865759896 921881731 194266559 559437574 773929060 827512445 746425821 870257674 774976574 996505843 807140578 836443650 374894786 539850478 28503197 646440083 401496349 652264049 395587067 457790184 971957732 986174409 895775935 926703116 242703091 807978262 273425481 938118203 727252857 731950193 552798495 915050871 737161150 837520588 138989946 771232214 466362533 604298565 397810864 892198352 900837200 963956630 474553099 514568099 438320569 563781115 129993370 320199806 604973976 737161426 376648383 666374414 588507393 994409425 141046271 230844057 8676471 541250159 810184548 929888537 774543127 800650232 750231226 882234503 853590114 972018276 671490117 763868597 13963305 231791364 524035295 807745207 551978325 935319539 719432320 776892222 300169179 464672427 739168114 816000366 959295432 970986207 810001720 912244269 379919088 911732126 365780055 851953193 114579473 147455738 63553940 325933048 775230254 871055571 446253965 932707959 238548252 656613148 687509464 931594175 234840557 643408989 982316411 999321829 868279306 972495575 470114430 642122269 895717724 951797928 10105154 112843878 751905901 989128379 417545548 839114553 867712370 871068853 314369893 893971725 34895800 91205408 434208070 778607158 263867227 956219412 224165011 907223422 943588577 967658873 955105955 989491986 867477416 973185483 196652059 334892534 974412668 975676176 846032 85994373 651690713 800695660 208286182 590788284 383792246 541108676 670050866 823978081 950775246 978293803 428105151 941956150 460864121 676196434 664627269 846458914 81355117 891062774 71087979 363540679 799655704 906627487 714443452 867711284 381716766 497095222 720700947 726791058 880945493 955598043 809544253 871396941 467816247 718332280 3210179 795299998 612494757 999713990 40806122 546832796 675145210 881070136 60610396 696533656 633716496 847426672 799957212 960906579 364701884 682220019 907444518 932372060 376051713 872168985 766323216 975447551 733982780 962910790 803102892 817722353 314814254 408968687 449685532 576777873 927717157 938783700 783955136 799534802 968118359 985760966 593169103 820001693 337326364 877731620 104114330 265340629 304527891 957216810 305952045 957657643 307177033 490442995 592117454 660511918 664781881 761755445 759056022 962995209 475068158 629275136 253804620 408946177 835011917 846595117 481055608 796344162 110039670 526956822 701494762 844368380 968376950 996800649 329271512 855141954 300809595 424388268 487653524 815459185 944417718 987829512 764978305 804553435 242569362 287423876 879199866 937954284 61963261 653458947 130583740 645216727 827480740 914382755 306105121 340568450 229128291 936713529 529335998 584497033 76207472 932298375 769652063 847582114 269430814 618972381 773518187 796904133 442863088 554926937 829330501 933067916 528116846 635471573 822676277 854759401 628308028 973162604 455287451 605516628 875337446 988235177 596080059 646875659 994035562 995543662 21253413 189409320 540470722 578735557 653819337 915931076 636777875 937823963 246391414 921643474 523060487 587896033 506873523 952577360 649663955 951470553 820740950 974074423 98799331 411424508 446794964 616068651 287409437 582325243 311406930 871737616 885945885 971888111 76472912 696532634 354813891 428251308 999437598 999680325 320795634 767558398 618106572 660706172 417250661 747243090 565934725 957692080 804441375 891732758 841568002 922476996 677784732 901954999 668415078 712513932 847372342 922064728 930173967 968236390 640666164 672919413 336198222 836249326 87407867 659879677 628270283 966838944 630083996 964732066 582362881 684437900 566374312 784419714 312046136 419780649 472572216 563630399 821239990 977834466 928763428 980320169 772339046 925910985 872052871 874358239 700320952 872952939 611907045 674687576 227020717 281897001 531746229 575243561 116974870 607017488 47564240 266536738 795319368 953979210 691327500 743780679 259197131 811741047 471014719 997614587 478525001 553268919 466212742 812438039 316736164 536276093 80892336 793558395 864317331 874485947 428930053 671777302 442016935 566182644 648946692 818699141 485669957 864482817 476235485 678353248 261361242 744924989 911249317 941148573 522648037 744267169 252491990 317364540 398908985 767094148 310171463 413682657 506776740 959920744 332934947 566589481 35753875 40490197 495550545 849384977 103259025 861668151 641039619 834716295 769747879 973151648 801837559 849218256 315978419 407882440 414340841 539182398 432601103 670680459 59851531 505213088 388026488 410183132 163037367 868638201 74061858 572253364 504807931 508731129 797929571 846802543 479755454 624345711 902542767 906287048 648324359 963576911 164279584 730775298 264829168 637793272 189769063 801037062 976385818 998083617 563163130 731430659 878430187 923559346 968932768 994685000 803312550 947872745 520370095 908789682 937974013 994976925 418265946 424194098 440185588 824285040 173800445 965912942 479237519 482968903 998442306 999906327 508041816 622645919 321061412 430342759 919377376 955220564 206294528 436623022 455751309 970204709 137756470 663419196 437836603 968059173 483441361 872747356 418741398 479788649 729355939 855837970 114756673 963208210 438749110 940066642 345116480 465298333 378881447 996181003 696322334 823738284 331252830 938391674 443299616 975737154 323629220 636595320 830465465 977838052 938524486 962971232 190431788 853229829 536883063 906631199 147231491 589195671 775499434 956720726 230572406 387593505 582090137 800826329 897253501 985548847 326804490 336898609 437006253 779092577 64352791 666728227 176458232 776222973 207114271 793380411 11517471 415652436 76963509 852414086 585559457 922857318 66003509 205107046 931540798 975904726 814280839 868781292 368976756 833656167 977050773 997335370 448914354 829359347 414359821 996983339 302510985 512437350 377684639 441032467 382304966 866076017 13524777 719877417 679417586 729692211 918160157 983059559 245107623 474828526 60203775 677244827 676212389 971354372 795596984 972261889 391174885 896158228 863735708 978680132 285828557 398993036 169462146 648658373 667382866 708629246 160678681 384684736 890356557 943180824 61183368 621338800 727775727 775884401 925637939 967813842 606503770 884318271 65947712 405848940 717237233 723282443 620082000 661032995 547518289 745589555 327140046 842915858 689863063 792087029 185596010 727463913 12052213 468488648 133798161 323493155 471815144 927259371 430071383 705386688 468584760 730041778 781921226 949369855 97601880 907613484 310361558 453418278 399618968 482393447 353078728 615937286 876078808 987474887 481170180 994245981 814497302 961415273 10130250 588460561 932761709 985875575 448941032 892703868 83829339 343650448 675523225 676846440 504554878 740805724 329541541 551372505 570073397 747742222 307485478 342260935 772320037 909611391 792575270 962238303 344830475 899143112 358275506 697586858 725606367 761204256 542732173 542766056 44103716 823022354 539402353 935662026 464432437 730845116 564225409 764834113 613194195 875054167 880175345 995454926 794203449 893900211 534894098 873214122 432943052 582703289 472541092 670076642 482202835 847309154 720584475 905759435 64054208 461521817 897254112 956412043 535839847 695287883 721151774 858424212 830407598 922328295 682595528 880292774 870152114 890910427 68857432 693828847 406918965 851880665 771703407 893538234 74575818 734702355 979635254 990961932 724150139 756370327 597047365 958194328 319439677 343640307 943931162 986714498 396082995 658273640 61161843 303219465 65736971 268433499 677298483 990827188 621898385 988745950 359865490 921759425 149073660 301309414 261993838 942341696 886521947 999980501 343599366 752853807 178998364 415987113 807748890 868764299 751687433 816347022 37522754 893422733 557305947 722599599 484894142 871993116 295951101 412736809 938774920 973867344 148036414 902513484 400471960 944128625 130907 228806834 81408662 728392283 153099803 474280824 62567920 146253468 549375614 594879147 808900258 816689339 648019386 732209488 48944602 619036308 987683585 999847597 578333337 946978652 575937115 813611183 187593417 734457517 513661624 885515864 261333344 484021227 829189367 892210910 281772649 923846278 616593357 741410349 902769236 926843656 727807614 915569184 848946930 924659952 766757842 818211004 374422556 593420449 792638186 826161101 3856755 140448152 949785302 952974104 640991004 796596200 387360421 862183075 557647380 915832556 478261161 574951180 925455448 946612883 439458328 788728092 599901084 905349048 409363319 506370666 434165545 766768142 418260227 746269454 41882392 948239443 309437134 639710003 166739368 588643553 722417527 786775931 729006988 823142032 129006786 333674032 160378294 979847530 303588523 744575305 393586382 824213312 696151996 760100095 44105801 683256937 182216364 732527185 688811518 997439146 2902876 519843159 556150895 934625339 61866132 301025999 553237681 660347419 660622195 732751242 679095391 721547987 29533993 558680076 862301358 888662092 86602852 670815682 270989276 783872571 662485804 818017318 116106880 989926428 348224839 392267020 299532681 813518926 142703839 466859408 469706529 810040503 682154536 733362638 407247719 802756337 553857392 978752951 416894489 429318268 134150822 315405414 530325909 550659380 799810583 883023992 891549052 937443041 952888506 972875742 231568127 470286673 272687847 280747094 420088692 956398357 101923844 217458978 8983244 696560803 231196625 527056748 372448045 666381487 595776656 803207352 879386185 900084268 290500462 677985648 426209526 669181776 153209472 423556079 332907036 487822159 271016367 697796502 215000403 908586919 68217352 133853907 573187318 683913567 925417934 988959246 392652334 648929531 889371088 973135527 677963863 807992934 316768531 860787630 604280309 876041339 247418115 911917414 671842687 687512424 141784381 489850739 266721520 909087911 374224904 547086992 314640142 476838207 500598812 920384195 479230423 764508072 737449603 779848718 494791967 997664777 598118330 714545008 260015762 315979381 783868468 907570471 139802929 234892262 394786219 626814732 407625570 577390197 264490463 667059011 383439652 688076540 794819048 987631133 774293322 798145724 179526777 706924705 27914235 358451434 282518538 420657851 148150790 199285712 103256442 721059221 84955503 121107282 920937981 992160456 179683267 968564186 787089232 959265695 371330223 386179542 991253904 992237142 828878163 960685838 198405832 407614944 241401436 485227630 692271248 907826263 476436993 572672725 489470451 839706213 651472524 706810647 822319675 958507379 931148282 993374370 334900287 591028336 297260288 395907341 136224225 874636723 648056689 841982775 89699858 94101453 456013756 516944439 611210986 896970471 948924987 989755077 772828050 864930048 590615653 645700199 2152388 33657474 461970054 853396020 795449850 941242590 748532679 960923096 290436853 952248463 159092693 521183356 268232021 968560907 32060516 334064778 697905905 712923903 184687055 569665889 296114617 789622481 34842885 583001500 499126109 736242843 290804174 710921871 745731466 913732337 349751626 620001384 297867509 613383071 25952047 745872247 214118798 362439144 398649310 717688013 496521906 856536988 660316183 915926897 122196639 950826082 426017016 535982382 241878046 896800705 686804697 873557000 608315597 834087520 702723882 984289150 166710402 687046990 268876915 356460419 671398987 946926812 583627005 584006226 60062053 474668328 919732189 925646597 799299837 883936341 380593556 702361266 264861474 727401468 683943429 862242837 925554392 962623892 536732122 634756533 566880739 617444788 714941338 993659070 390467570 523875076 698886941 716182156 825473933 887864836 542569028 614180174 736417529 980621340 994237414 995207035 395167614 960775074 777573165 983856996 297673268 323765711 31214341 941240102 633683378 840959205 789158199 811814747 429549934 826707863 704232831 877065240 763420382 790114044 160956222 878728526 101370082 882553660 447679640 673110288 669292809 789245970 575135773 594133900 757358994 799397818 590476269 613363758 872950041 957243544 113186553 252795716 400278760 702795551 268282262 463837443 260760943 899397535 737291066 854411571 243777323 289902236 523017243 893493311 220747617 954889292 313503152 728807933 702783060 950131100 904390097 937798505 915514975 972681818 800438045 813847411 265465403 522506291 965972245 976445976 88132353 582790616 623638060 734597791 913305238 994512836 416055638 573450388 399660091 444035309 766973137 802760816 749252964 965797161 659660541 919817923 76004943 270859072 85569138 343790408 925547640 928563050 69949377 439381320 962162639 967119761 570888692 991486742 512053641 676871112 443135072 933577474 317714494 412767209 295021297 576871406 465257704 623533790 173958363 787345302 267948647 361983150 321599631 713599597 139627622 258707757 556609152 617460680 292441583 708036912 467612781 574148101 770149140 853809540 917324706 925920262 229303320 972636839 828383714 858591028 22664793 232573629 172847852 842931770 215403870 219360384 959833633 982367450 557336034 644864109 633989395 646509523 744212147 901665618 431114105 640713600 119661129 478270053 232304217 408336644 901089181 929145570 546732146 830272457 612262825 818066835 346361162 522803716 690066308 910726267 391326085 761921377 775277994 903415780 731941087 829351869 867841225 899722697 996706968 999661055 286022767 695420277 315830826 462869410 130092863 219071971 599200722 827641197 908388365 947559018 443009799 683400367 123721198 441515301 506784920 594511664 839302353 891914830 667920975 688285660 344342268 419271618 524264583 704863928 575940249 835586142 583038016 684830174 196125462 886782782 577122824 714166739 914474801 969074711 603851815 995169386 73630604 202541983 775708835 804727149 428900466 979002185 390374383 489512949 100809969 735271013 863075883 930535979 569913402 797601706 690755730 798132901 831664142 840344759 189874518 462617944 908353178 947728772 765735607 848815746 883647747 935183820 56292929 808596588 142500308 968447822 936454718 965791519 80522203 288028020 590962041 965422570 712530036 902540783 101143425 873515861 730923803 738624437 524467695 923772509 468057035 676119389 987325831 987393132 680919120 681350688 580939884 823033859 717568749 950828758 826790783 965288864 258976565 999304672 766762904 910036631 250406269 616985474 571258868 728739236 503426685 742301077 586511306 805692120 280345161 557380961 827160843 832952621 204658521 695708628 716378034 755260072 465694517 733962638 401616947 506317129 454004083 661879755 439375227 935120379 849535115 933851065 844267845 847829643 669856724 783840814 818207982 949578313 916899163 918706640 532398633 859287211 432216723 517524702 866214306 903607285 403008803 791552428 754506260 920227338 182838169 479959155 172902631 986116713 384335742 858040104 394253121 841878556 617150921 877593422 122455876 286355685 13773146 284673402 370051353 409691103 342761748 519077764 473799367 756238917 538949885 956714002 881274947 934672110 108143183 846551771 632586863 717036982 505094119 817226473 115811827 503630525 572791513 911504558 279723565 363282438 576722830 889002126 149826235 363515324 524605130 987261794 99898282 144160689 839338515 852197799 693552294 798046417 493113948 662954745 439667728 633943700 568499301 606396185 748261780 822640350 10935135 793875058 425699324 572879535 419105432 906028484 85584886 864033340 842210075 867936452 218939781 887037034 439425243 479110670 479286895 708297373 943352387 989149486 912884270 953205739 553359271 832039633 565421427 789751029 233420418 883472059 915261813 973561278 588275840 690025607 856924748 958945138 757482915 943610380 8271332 639498101 377377272 685828810 408077777 968458525 419670225 868286324 664407331 744354414 725693680 836431415 94292950 341669661 649653906 765735136 762000597 972244119 292543569 575201365 185083680 760027302 376568501 834724829 187575616 992840513 558042379 635592270 259600130 740058454 175032588 676885262 271753467 683501900 736713572 774398436 629402773 788487066 307390465 318797181 687221807 712387250 44962562 80941798 771124938 825628119 18690480 889814271 578508005 817417475 188888836 374600178 599835083 808802286 693859829 780555088 374182787 812279105 8292072 132306736 534650332 683554637 108703329 650096590 412654163 903098534 838711772 986587362 880991371 897572595 990167565 993994704 822527095 935452520 979316926 980471387 175713253 993277626 684533962 891135662 293185020 434079627 316411165 963193170 757280920 864026594 585600779 611357928 48961021 637959269 62687566 381397897 977100719 989121081 558949124 823119390 707454778 740839312 976793876 994115329 561875357 853643950 743441620 817369055 239927015 950901727 976323424 998665561 46746208 915327521 357352185 920067742 54421090 675752668 629103672 738561221 449320528 684111333 846718280 867988878 510360934 945443330 722194693 946101422 590383075 940633944 36063114 699856499 227917627 590673382 431311836 569828821 96240058 314962400 359095120 903283104 415031167 644461625 921504568 926296679 245577024 655202329 737974923 811870677 311797020 793418091 194669012 326069755 899996814 912594398 463453088 762095085 911929917 990189351 600836693 646074537 658859744 955551257 578583674 849771172 470575513 855948522 564453041 950093384 369075047 477224843 407181443 743806062 876542347 935069244 354703118 772445811 226960325 231512154 142502392 580234333 656480962 737783536 942147432 980327336 367231850 614889694 495520230 807126795 735455172 967093304 133551426 732119945 923539463 928657723 933584009 950611374 390000515 927085782 916521854 997861746 740910619 905455351 984572536 994696869 387407543 530340767 292285702 417144982 61227288 986890746 346502173 829289738 806127035 890743133 381491330 389104828 24829747 498120171 113220656 273308896 59361385 976145772 186593320 644483204 330683876 702512306 448700964 748503399 781031007 876806745 41074937 322881736 727716457 728321813 711237286 752095769 829767087 891706250 450020567 850816363 505303935 902225091 927279868 947075695 647927826 852805196 930431435 984823595 444038159 895394495 724792475 961512291 863318828 931015175 807691596 961251370 897116932 993800527 7983139 986743512 174275338 806789499 299334544 904031600 504582495 660760635 663118650 907045826 677635984 749383502 77481527 620612633 86028491 251535055 684934655 835800086 218758430 392104460 421511119 687575535 88858831 928208890 551980436 771555321 194246311 237263896 718523300 964912183 71825682 895324736 844697423 922900094 475875438 813482589 330217345 593127817 506461618 772406326 958749968 992910090 297202899 528436318 274827695 866659053 969454435 973838848 869565925 988054424 668539709 758025629 754243160 761536117 562881074 933653514 130991503 334345203 849310143 914230473 419052642 633593040 519362164 903126561 92617814 842372205 149039445 984663442 686635331 693189897 406650166 589125845 220507400 495910943 855591865 973614357 655900076 684451422 942785348 986791798 561657712 876122589 253185467 601865146 828518539 828661361 301544209 833102537 579309190 821579588 708179695 968385547 781545471 967620374 392285607 841394436 206322130 615593061 918778235 997236834 336821535 808287790 389580434 978535893 536278219 685118355 992527074 999258434 795852803 989050682 675113841 864302394 637997950 721177201 395124199 475691854 464401338 505888380 65369427 472706443 881358607 963841123 674578250 742939743 530659131 942516172 589661842 834190698 555803842 988213188 118714376 285090157 940637675 955573523 297278344 977737549 594080329 911865916 936010384 972038725 450798516 725288796 798698833 964430101 268122286 289831712 444908823 497643297 523173177 986606747 363152055 546166301 630120278 990099258 863686042 904421554 593282228 943194457 344012180 386189135 244201326 477823435 958257737 999884429 221218317 441756168 499450190 729901761 547069876 741130312 881010232 978929928 38420886 763634210 510203111 906103777 37938194 192146104 723684394 977419425 802065566 826179050 272551380 970805874 792842655 799013184 495026484 687804493 238383183 359156413 185855245 219627371 477180415 580321519 175326774 392242243 603392445 909106787 79121250 464490825 504442278 916749070 162116559 984553999 304906420 603632356 919400956 957975477 936634003 962592037 912225138 970038898 97783419 691223253 63889059 150441082 576004702 918548568 577539424 854197840 755273583 786434653 799865747 889324282 671818460 741390595 253406402 526369921 620286457 766376535 971869474 980493775 208573939 474599271 928608365 998323305 777571361 970289386 685960132 940576791 31143435 643990866 890019876 898072279 661249003 917887781 850689066 931194815 120630884 551897674 667564598 892704416 278737030 559118061 26060503 406010942 674391465 813474525 326292577 327389719 38106412 955265168 132691202 289067281 299517612 774237521 568478140 910064774 852741816 903702233 929387770 971517590 374024941 600363518 501283728 669837331 307714160 969098291 971257611 978258938 23910547 627843110 188215935 692245615 316514082 631842366 500406230 743259407 951344289 963085993 331303616 679007684 142259852 513838950 932063749 946718029 403063843 441144189 827639959 996497009 535132292 777024367 421118807 670899127 120509180 439250593 184495868 312891916 431892189 921282362 325225032 751579810 496715615 694036711 154743072 588141608 677879062 693278569 609567957 791089782 633887615 877709052 803358011 825350199 251669036 493232042 53909965 466969954 797608278 804692910 185639429 189735620 746245214 858687592 151407743 610274143 474134135 845156635 115648700 225681397 291571175 414057743 513436032 728632335 373584040 616181462 470006216 470377629 843466633 983995973 248368357 309921504 121226005 591398736 742363896 822453393 924106166 963553702 154741354 348459736 250966252 318980351 284527569 646042423 56498571 570012195 215619285 907311688 953159192 980706440 302482360 687384820 392400757 553392517 624143310 705137654 959192728 998339269 655297626 977359111 645476741 776671136 401518721 877344727 54615342 944020337 673871308 765661805 767514485 921657610 738329034 744899849 103397828 196732900 530007426 583890457 658600333 978671507 763140183 859237914 79332834 567857821 712194220 968147220 416793145 456835837 524196026 657369047 615113742 787615877 10836108 522368691 159204926 624901186 24034018 277572234 715693122 854570799 584135628 942844338 887688797 977756102 415586925 568617004 241892420 514989005 310065641 314809540 254136826 761166839 560047422 714844301 569308194 846050276 677875286 706774116 255596294 599467719 782818540 851027779 785285955 930640772 515437171 616542345 976828338 996018166 630243002 897138981 11807588 400068765 721323175 953597675 289431485 399035343 950599844 966925772 33380506 637317531 869310459 948251251 644160036 650338321 129545818 683040148 227423449 927270774 952779668 957021459 845810194 882515024 771323697 993986137 15155733 507550756 371376802 386844780 525004914 930751788 109926348 316250378 428576823 949088711 166532269 318663536 731798366 877836661 269000672 583693997 51377482 241512101 958560797 966549064 676962854 950752322 516883179 562476625 989808636 990963065 720751587 876911725 225600070 974815641 518618337 849731967 597484976 810197804 157469666 539366443 700213646 826722431 293367529 674119752 809439184 862578578 161751729 592943735 872763142 908360582 71828450 633322591 993262613 995583081 401130122 803156469 606373308 948843607 126775062 286366542 899244961 910976168 315222773 754661836 408741711 864545683 122653869 405371571 957796155 968326340 628042710 770306248 370119421 822111852 396438376 779438544 460710268 674793467 870947612 974954054 85277717 189835312 380487716 574432358 640503057 682787471 118365197 555440702 823783629 853115296 964013177 981698899 916468769 937912818 710859200 926126942 417302372 644587975 499122370 862388230 637036160 703876732 814140812 950676540 909623134 986932679 307411175 312609303 335393187 922175204 333552506 828571292 793591560 954290667 296891543 887438924 318478537 522720908 97302571 423137139 683646353 917438782 390348281 687177596 74284080 682246018 196196267 867569405 47601601 223119031 667161162 841879109 703772369 733046006 542864040 565290681 158015507 952240568 96863722 691064081 148033426 279715925 101246883 358188977 126291267 982138636 693835524 930169042 154985963 239267891 319305643 903143127 175976585 385756627 428639781 783896380 375580790 699729725 236086201 728574430 724243091 976707773 971078260 985250494 10231454 798574252 207309471 725698896 666757480 766740353 268093264 819215205 382145594 427143183 488137748 580332171 644713698 878034892 99048120 885760632 883237333 923021861 520012243 742394223 909740718 917653681 232566541 254439940 206938399 528628173 198586337 870857512 196126570 720510426 72614580 95219634 100818913 820780670 188203958 510093365 919262857 936302490 507924366 720284080 878780393 902432231 100515083 785600673 73359142 873555443 806075391 975672110 186106701 275501673 591414846 889516069 530034808 688316355 828567118 921766943 610289270 817377882 527065159 947020167 496719445 942842588 743375819 754667565 688919101 689853685 395085903 704521397 56043632 327437478 635096925 994033367 9754664 917495728 842833553 852786283 133325609 764525974 396282589 540649840 968829473 989097963 500476889 877481093 903498101 988762592 823759795 900104597 393763458 550397977 848197204 956543400 55153827 294674520 936824655 947115296 428689630 882434908 335876280 490124905 887795736 938546662 712901590 745625116 608005884 880023409 544837942 589905146 900600827 944122179 425314654 530948905 802364034 930551436 260458303 948500377 740021245 889527770 105621347 845927045 876293672 987180840 259421598 933224544 347628198 671558684 708502047 906760847 46031438 272768710 591997307 735117648 499491541 868299421 476888410 733944544 687875337 772829555 558430749 782368170 83021590 653641394 407670002 443232775 710761646 803883538 266720362 427702524 783943785 924881547 913937476 979168757 201976978 533709009 538182309 597900301 960656185 977075756 250212542 887630000 289899797 806029066 5069523 429612645 625755277 934845565 858901152 912537482 987756130 990470206 676883732 860396014 536722895 875311271 690251305 798100848 257322458 784865143 106283369 652820894 178696547 267116371 641051093 718818469 861853458 868429277 7198286 466195338 746620160 798976227 867402817 943507510 399398442 554498868 633525973 638775234 148665070 342388204 144658621 525198738 858692476 938571785 462614924 821413467 358351452 981257905 447084159 952782036 883118914 919971977 832536123 881026853 377052571 606568564 14017979 500436921 812658225 945698437 733145419 768594912 469805672 612841571 393213591 768289679 548542469 625390390 175150048 674385757 237372423 372403374 919240788 978566063 842032626 998731637 133667503 371590658 159556105 449525440 328337935 404170506 946170994 963695250 663459783 873692877 363080369 785490676 487266348 760426376 933428097 949750352 858830484 969905358 536053304 748808550 283943210 342609787 566762749 801506124 215263622 460009450 64842321 159552734 178514495 875158745 910298377 933393452 679904187 917998410 651775211 718466984 20880387 610016223 557028292 912221119 196277230 697940029 930162171 999678304 528748201 609751966 37162200 90189901 804966136 895508201 842979378 892035255 709994184 975881586 300993604 582753762 610918152 675590565 554085864 886292589 872911759 938517763 190416008 534841691 440036009 630347893 344298208 568362717 442986323 897863102 436601919 598856844 618106221 679237675 780491238 865950809 640918396 691159196 530413185 963401188 216241136 380179676 203242844 689695784 355296357 888199717 980439081 983033546 861470254 916349858 467713772 705225666 358678624 495970347 524587539 721344403 517056530 917356414 125722397 989573271 302103144 487334817 401465833 486907708 106443759 691504874 317220406 783640848 229841035 456527002 724501917 911756789 695908839 762004326 281815564 544625296 372994213 859069461 501982385 697448006 5835653 401115311 734582851 791880733 106052553 612673894 80195614 989692843 540008895 612674418 763749802 828388249 363597743 548692520 474678322 602468573 737572997 777572137 71296459 254261861 186986461 519151062 521931629 647116651 742535306 970520712 211688772 417510512 691653471 698445185 475863412 666072440 928043242 997774612 452453169 741768596 982698312 983217864 193578616 856678260 22425178 631602290 42032139 682003568 860056184 918924186 983487033 987049226 454506522 853727429 259131604 639941306 737595613 781820682 431781638 561703289 151472365 270685481 882404757 946491512 443353056 828935737 666648673 879946209 350614897 404634174 511660262 825047890 936967396 949607586 500280037 899555480 21031398 643897505 736802975 960233393 471229890 711469234 252685567 765610512 834644905 988774835 59890793 705069622 138473612 825262867 344359807 756560942 344829616 801222172 94531529 128557993 193526271 361415453 669759026 872098845 988445630 994782194 221243709 620994739 760213194 773955868 705613835 751036770 705835563 911404230 473587233 510046088 526388834 793106146 797439852 844439280 296886175 811264912 523111414 993237603 566265409 862473285 819639979 870307557 438708241 759333253 950765646 965272874 100666239 672457493 918170571 957907016 139863476 311919851 876875769 998979961 169525485 697886399 820766429 955355502 45486809 493486367 70919619 890509013 748545053 792895723 561558875 871125891 629284966 851528130 171467059 498154355 573436154 825128366 26532168 187958401 534438648 613696746 323841880 491814266 554929665 816988905 78055020 461116976 993303002 996985756 670240096 756144966 107918839 696478980 670113737 988127790 601851432 890438992 798443633 811986867 385893887 856285734 840601524 947847757 889838813 992046607 685318001 727492073 377495273 923294611 588106286 908124069 541093118 746826738 358867863 475294612 929876030 942978550 938989020 994132575 855221118 987869732 522779054 540471021 52913686 270676490 968302954 985410786 857027210 998624171 408406247 949307977 476873753 790078323 527686137 734732461 313606613 646337319 732977391 954916722 400179653 825339038 854851440 909858655 201987981 987272386 470778364 731542645 833385503 943937496 229751460 718037172 295047111 838576572 248908787 480229666 626639938 909792120 462455047 616735251 380594355 784040810 949652593 982716565 900460682 948743720 924591792 946660010 152794443 424178568 458697409 597548198 642578190 959860782 384649346 538562178 783362595 854224462 98316310 456736900 896503949 936003716 925020851 974047607 390831615 421709999 243744386 366578682 924730660 948425383 7270013 328710047 345238386 740245642 9652912 361797984 51397590 645858387 151015204 720287118 529614075 728478413 162191630 939727855 446939560 530711121 866706115 870040354 703938534 710361076 973229849 995149847 816692942 876162516 415441059 861742969 489246384 704327321 558218656 603607338 195678087 749780602 978079932 987298210 158094727 528177046 119389472 928993961 97349168 584539509 16151182 465709593 466862850 769849626 394242371 998448807 1344696 559132126 581536109 745550660 880508627 888235200 948629285 967965552 530098128 693509925 734039767 892384255 600368952 689360472 694967445 905785390 199545979 200006410 661337087 813899977 185827368 263247915 218748172 569323236 502793318 962806695 215260732 771274805 380235849 625996027 341757070 713831307 858972887 860217115 149034720 883097252 721127006 888671138 217006423 377512654 876197415 917600438 726584017 761721006 234265893 244519200 777678406 999643219 556989969 833941101 901575967 983027025 53379983 514495573 201079869 823960022 329096809 382615254 773958558 796439506 725701155 869633114 716361043 761928778 382117641 794393344 563003183 609010091 64338437 821291252 348171679 675050500 248916511 487645890 444209295 938215137 363761063 827109896 8989635 837148274 269479727 657766637 228261825 488029500 474240516 600797052 721570562 728042357 710216528 872576754 12953792 50882760 271494158 434752029 318065887 319397936 475624243 989145129 707027563 777260158 923143444 962237549 506715332 896444190 236838613 681190863 625321319 690982738 748420473 891224086 961935740 988694607 866396270 900943472 262313740 556549944 128521456 721415218 645933133 949357582 359280829 681463535 695403944 757969318 558466242 879013557 139225683 554641115 117027397 776244896 420508615 681247749 734491554 770904800 146668457 570145527 897689071 999746941 479639734 597626218 148032843 207674326 122214464 903039438 892337425 943952692 931627696 984316961 574016437 944383244 418197996 869909674 644235671 832124803 262532480 649143272 66549924 196855292 593812201 650309504 426524166 611671363 587782428 710998963 246475570 661623280 482683010 960998531 518310840 669820211 485153822 691339427 383230181 577810070 522754730 593300143 169467722 678375424 100384760 206487386 509087252 732139703 729012256 957500435 278650320 912804997 699317169 807601976 638135866 769791970 516340768 836715872 381336953 658079412 553590721 758113320 453198780 552254164 146016778 468318937 325945322 834794754 994243100 994515453 58994756 212822011 173892619 499877326 791275901 979371832 682224439 750518129 382287385 631053296 25289855 33093564 699692749 972113885 895174536 978497632 732851855 837494654 57026830 282039823 963325598 994801920 563213384 581229007 223877481 269013807 698267472 925125867 254162490 683523137 235669957 554422761 506946172 946027707 156982686 600593138 345353192 782386092 933753129 963605486 90342109 884164737 802686210 975939463 200186572 336798039 138480024 657775238 953168969 981570899 56838954 739479789 698111378 964254101 177514315 562418986 788644863 861375118 175823833 311957279 453166332 457600541 143486916 793383339 900214426 986023408 555323520 823528828 232729458 631631282 406649323 715485779 256818621 999084253 355209868 834259654 220345392 576615888 139824508 314398394 452129181 764623081 583612241 947845139 278810501 285369031 29762245 35672377 696187448 982549006 94582543 242251968 821525079 847221069 95217763 958500901 986279572 992250455 462490278 901529464 624211034 890711449 531716507 629396652 601561967 857892737 627625303 674236968 922886076 935527082 596077748 894129375 810755600 938024634 953858783 961449604 78646352 325826711 437588773 901026771 964302564 984385565 800748960 903591011 419468229 942390557 246545098 400599106 325508440 374688569 493112261 852324643 903508595 992980573 272023655 995478700 815810175 903799842 259318959 887025645 116642983 857115440 560609835 922480643 759850836 994054796 302104839 952936523 161143377 958947262 373158582 892529196 530805876 668242705 718984761 923491792 68974915 335536496 740357523 915716207 646198007 891506299 277283329 300886909 223283738 445238003 439250207 528740749 889059382 917066062 594280587 937165407 662150043 771428548 291817215 667665578 693298500 907925890 684339835 859327623 772466386 879408529 660919010 896921542 453676218 569168565 590055543 921051893 396297252 814858098 283275165 478671783 313039258 717365541 717077857 981059246 728706457 949206732 494239986 846668754 189433903 198918041 863936567 953492029 520806931 566566950 635604787 691683795 552672299 567786763 123840446 289362099 410161514 873171670 133379002 488702524 663175381 830954869 113761872 810491439 567830612 871223556 919470056 937985694 96291324 259368630 638062909 765128687 703456196 912606041 554889705 666172815 511400980 917429158 847347703 848276826 335743720 384430709 989838669 993495474 870156584 954119300 332832144 686796539 417591988 894687148 972314577 972837829 129375355 893286695 859059349 968174512 123640638 615903303 720453454 952479393 320977453 581668670 215245327 493830330 172052338 536921889 764111996 959863260 189605968 401756317 115275272 289024234 860134904 878542663 725704988 752271495 153718648 209971368 521226533 554358195 629471600 887834912 906936111 953948197 433930554 476455293 155543100 444240018 771875612 903199641 339124566 360694673 766784997 992490015 402236773 526965039 489575324 593442698 185989356 483258937 574692715 616016371 968047725 973627031 100274587 396267807 184219536 244989443 653655369 832648310 303109319 545394761 545140819 735009138 518777885 846084673 685668298 761790288 93310469 597249158 540044053 623619079 141845931 148794619 568524252 984229799 852491734 982464461 279723578 630027576 579280468 770411650 100376897 412187937 345293058 693948571 766490641 966584073 686249287 940330955 467203864 579602107 345612579 387481365 46546339 833665101 288765636 763118203 350446593 566664630 225577875 281953991 7839016 776851281 369554087 857973817 870974049 962413437 327881486 652834847 507490391 765915733 429668704 941999968 89113377 563851085 537558711 787137868 641361853 788871067 852363636 894995820 732215856 921495594 779596614 790474912 993357237 995576404 354506039 777771640 568658711 962219404 751868202 972754802 906103737 916588229 339533524 445278216 776190355 807499298 115995997 549133281 830776527 940484402 388154562 764394104 697889320 805825360 265442668 361662536 677260821 925038266 261620564 904515745 477018480 814191708 133708818 496255648 717033819 729600360 695225238 948329169 531612910 863539949 919831493 949483286 788305962 992313219 970759285 974416673 924962107 940081300 402282828 416577796 782364062 787244022 228529784 259018558 992325117 997921587 316818275 933384969 12045300 666596282 691761312 907191917 65804397 135591135 346738344 634600441 157019777 475349032 556248596 960100016 803765665 908005005 895631065 963330689 358588960 571617335 394796419 989172218 307948775 581519908 73834823 214929291 670579518 765338353 634835222 909494466 738062232 801688486 539614606 740076571 658466401 941398797 578470664 670234816 39525790 128879906 216239551 490771967 93124436 335832832 177566817 373611240 184512393 473130200 997975339 998112145 296407300 640767729 228279498 855460797 217536877 417048505 322881874 623969558 740228938 934033902 171340674 578931516 633189065 937736421 28473549 915440297 820642693 823551139 349408525 460163365 480659869 734739560 779588489 961175552 190934220 947445869 155353549 466150622 434607646 544492231 194839404 706336793 907613402 919773608 843831662 986703952 440049997 982268722 465746484 752306456 98395148 861942955 438366005 747811720 604054365 692479226 600616323 631927086 695150109 955521711 487884261 613584077 804911409 897825566 117664917 634063814 586883161 965888816 227108774 768628139 918198996 930512424 982238969 989793681 549826836 561398900 803288258 941367423 168607189 687013741 434051527 671379057 342781205 415137248 739808843 749767300 798109274 899371766 776957890 798280330 370057134 536386976 517946973 631250304 868202908 998694575 602302878 966287633 361650850 987222509 405265102 486987617 41424239 671153189 941919871 999362440 843554283 922064524 505400321 698616098 591744040 779099484 635380878 932532086 58935327 272150593 242588264 501381703 372372247 855573475 582294363 765312362 588351633 932020087 893946041 897149761 724802965 916196240 598490639 719252085 690752110 726626272 146297720 927343879 359947023 965974228 811336066 845926353 867272538 999344926 173923637 525556072 634939586 837906256 187804192 281712229 331792024 522297902 721193341 779844931 763395501 831277131 694696605 984771490 900143103 900647758 788914177 979389974 796393232 927716176 396118663 754393618 888476866 950656438 303238976 983847360 893112809 956475002 40969861 301474812 14366475 239043722 160312471 190687629 108239073 385595199 174599075 434787228 746915340 868619046 484049058 542753586 320877220 955963104 845253178 860008088 410803365 543069886 550725569 559173063 20039677 269022773 534208133 566012035 710759357 890212868 651454528 884942594 981267331 985888577 432465416 991818133 414032020 999427748 423531355 527908737 564517694 664166627 168175675 495374876 629092006 715308407 783565388 974997177 861365450 928735986 929958006 934508739 391652685 774367736 995572267 999856603 311668681 472069895 556519887 959977832 524195062 932772222 688225267 725689087 969033796 982465905 596920047 776570462 395188536 908412028 944600937 988145902 760465081 972984350 551910106 555947657 191358219 196678254 990070738 998739036 802143987 904276964 903782674 925496501 854418801 985579960 84619600 789451772 880291894 946951605 593177356 594132220 620540776 643470401 632040990 908350176 86616516 530894234 393648104 763902232 160236515 940007010 358655576 983346909 554024142 748716738 345357955 831583482 608574674 966942799 178520577 839582791 293578546 611768687 657521419 961009828 499703874 974764232 207151820 701569943 221364978 348387027 138862403 613885611 504666454 919665593 61504583 530991157 621317003 761291666 734199682 950352888 112793999 503234915 66545748 896339972 369672569 453351313 236118696 916408867 672622896 753084364 339864938 937145524 438971919 697387320 223271755 811671642 812182222 999105528 325514033 601182270 710274874 716368969 7065801 276981028 884895920 897553908 128520531 669983396 810105955 878404810 893268712 987767557 930131413 955854932 897086517 963905548 628445287 660322501 656821764 974586434 514364441 625660629 753447726 766718625 273613696 977294430 999175578 999875437 136440959 176377053 188306831 991745053 238593162 258702280 358703015 663142796 554078666 775500580 434048200 895063698 924406530 943098758 880010846 959629700 611754073 718076777 520664325 815776833 526515403 539998058 203375731 928752083 559096526 672974789 52724592 218256378 240330931 516781972 783682918 800366382 453546094 761317689 517147626 949999576 447682411 604376425 436573275 477824861 854054430 996802501 591296328 868201664 547236072 560659915 520111762 724718732 424751481 719531428 713238747 885614878 823073016 909755112 49563300 507857844 189795202 268835221 268540487 450564745 984891999 990986943 652468745 763159439 25721846 756841588 456258289 673313217 118610615 924463819 778244040 923488168 818185256 882474192 253185108 663404626 968077054 971537560 231281476 963314300 760154702 937122613 306500443 704960778 456830588 593798498 921942206 998103058 12898595 625747241 75371776 782468910 77699723 218547680 704807848 832116598 346623938 756889334 638042367 991801615 644747076 707379362 278211708 922476257 73511834 890971356 183583499 517152213 357168339 443572084 44417854 301799459 658727880 690983512 550779251 808425579 270184497 284760841 171997976 613318933 200457637 754553134 533693358 831428248 945107223 988192408 437212974 638913605 650918809 919271938 394401498 811596667 454431701 815635609 954694299 981083632 485620840 636601684 163979412 691237856 752470822 906240081 144773248 973750982 927330189 988320278 401340252 970249199 497605391 550025850 40608098 225124600 142276790 729743110 892458834 932689742 548677552 701774319 855537058 959622168 840500579 906792862 497856546 614617370 178214199 756721556 549712715 832122346 305533449 605837898 303775794 674033907 909037739 940743621 262789802 846666957 159654003 647258223 574296471 952446307 154575098 885516985 551577768 897963660 981505545 985734384 730007133 980903350 253630160 807855756 433543623 867038738 973548635 981722037 900421033 976496518 908774823 991072113 147877960 933706189 420417313 510350742 481795848 870556410 663309611 820309155 776058281 844097408 609758192 776812166 498640656 500932374 94147885 469038741 639330685 936822701 228619196 733159815 344705746 419251509 468013455 996153251 420833290 572947529 29018327 276590944 358585621 703103574 976018109 990254013 486332569 552210374 403079466 416491167 892278551 979796130 20824950 293712584 8668820 750622307 658939534 716146724 967245653 976522993 159322390 922658748 73340673 781557236 497498439 624258006 280153437 521076151 658069955 776338377 758595945 928904667 297243511 426131197 830502784 986357143 514151233 755475186 173666082 281848972 735038684 949894004 626026212 987739367 52832294 742495914 899144865 904659908 363745697 688553813 856172026 934798176 352516123 367877980 566154964 915924594 917756748 920318124 935031841 999691333 646888893 791206054 979766070 988660405 11657314 158326588 713804191 724188705 695009150 982876289 612789543 872985367 583073307 898113352 641151792 973669478 634139470 776508414 309520339 935039570 98351923 406813987 937556472 970069987 302079854 794452179 567438657 602255966 169844473 690079108 217582757 567750988 936001215 974812618 43576435 184987452 180014347 974619737 824156818 952682581 125039639 681000780 263949807 429343553 820117688 935171697 386391244 435387574 311966312 416992980 370100811 920562862 863906239 952288266 793041292 929465633 524413096 678219820 280447652 823682216 604987526 894200890 697124853 864438617 736204711 922110395 749031797 819306447 422491742 867679527 386366369 774876380 488704654 739737974 514819643 621056863 326091868 808502253 472499384 641236552 88529535 339174836 423377551 679239524 106053162 294645590 467087556 689367590 902936434 913426881 716361718 740252687 638513949 768592036 924112390 938046291 661485806 903430980 122389278 246041019 870414871 886123643 56264156 191713960 736306334 952746988 854934963 972735949 144640675 685437234 187604956 941337511 113503444 498511035 729195563 827333189 20477563 616327578 746026492 950174891 46169976 999657170 803956107 814064282 45719946 391663484 900772080 992900433 341589095 533198471 229739333 945722904 9751560 205596218 804806094 812027648 439916607 791025115 514757537 774152330 157739187 348543338 136793914 745813556 381320256 606607585 743515612 972538457 539718914 803553424 114947293 547990077 548432584 591900894 341986255 470539497 69264306 525011781 150708705 994893044 908921244 974241154 28677509 622929003 517055187 951178638 769306577 795432590 228123220 946941508 846776769 950227973 892474946 990341155 215140079 856703957 261007297 675267490 374505206 599803363 610913224 880292322 342641159 858067961 235974588 879163846 613760696 895112104 464777619 719927296 914440808 973987243 669520901 821144006 148139273 386657223 537335341 803474411 756544851 820711091 460169095 994358917 984328091 997053557 95298391 490081867 154740134 999257147 271578488 812421635 419813607 927015487 777958142 968196705 906863158 917297233 177618844 222685076 337707300 942360626 690514856 812306659 595277390 699431805 475906788 674140838 65556114 978620166 578259602 769321705 583734383 978270029 620050077 713107234 766967063 934955445 380583461 562997795 736568818 965075048 366259115 941959763 427348554 919080771 192192726 492835179 519561583 562592990 410822099 496016835 519978311 819915036 379421416 931319822 910181123 958346229 568960283 753936962 34383319 923231742 608264195 783619911 663509717 958835390 602277474 804672054 365182065 823976416 466057771 629769534 334376381 696510316 691401080 842042677 101859216 409932464 207853074 604279197 755638034 958629569 406917977 871677227 603832552 636251209 455223262 830376396 629079256 897123121 268885006 710755829 582434522 916344410 242382564 962483865 178226527 583269537 901289569 993494522 209869342 499291529 55664370 197991616 30231139 430592045 94738385 397193935 605279551 894197340 394389558 557688591 787710513 967962927 318411038 526242265 114525773 607427103 108862895 749507815 594999007 782929621 91154531 689565425 768488960 886295106 565887421 972452236 825613376 912913776 575802845 892485187 201338378 467867035 718672476 913081381 331892012 746459047 936372151 942226579 704039103 772732321 86237364 640956601 65567058 893762637 165162435 266905216 434247253 643895435 109880283 506129753 185492604 248388616 23936535 176908970 213224878 398129392 158165303 176019479 142095538 769899751 440113296 489286633 951434575 955234161 19940652 711115650 224399031 871702643 739278271 999584878 696580082 981203686 996179285 999743413 662651090 851068775 487957174 743500343 440396681 834609120 901675661 903420386 280445745 712071487 61031519 169986331 635677919 781363329 413243988 524991169 577335225 662838840 661571096 846997974 798534511 887697612 572493048 979896778 117272525 613842357 165530846 556144024 309614375 507461705 318706724 575999753 656294824 929631363 392771916 581289954 46522453 536579481 445248704 539566997 975903829 977850143 823459914 995784762 622487601 852844588 368057294 483708705 289229523 984048892 65303407 290967570 608454246 623811266 821906120 843762583 828131010 868186512 977565530 988295123 689272312 703006843 839033863 946553627 105063813 985858959 605468435 643684986 462175655 910802638 101973665 555988191 441893530 729377346 191372934 376484202 413448125 689049930 589818426 943996073 634453735 664611633 349474237 366072769 226656101 966400621 462885913 683094543 683779114 758566253 71895851 156601420 313559456 741171699 709430373 945507200 240470181 628147962 168342262 791279883 956485406 996829159 856412317 989362858 932981747 934845273 549799522 680631557 5413720 742017247 279811346 962939537 786264079 865752525 537114563 945963976 192583760 475988851 831458488 937929091 538491400 564757228 997937290 999724557 153231050 365580019 296301999 944486053 429099775 900055029 683373279 814839715 233062039 599571919 986763766 987486862 65103441 976111417 705300628 712122057 618063182 748269537 413808180 546955521 827579082 835099711 959952005 992666127 233826861 702342870 805629039 846292823 151422992 271994266 719230832 885150393 315659643 589491529 778056054 900638265 63091960 163793823 599631326 833247240 98864004 950560589 858820259 905477410 22742532 472203172 538834562 545408783 482819312 685928164 83524369 568562542 130696625 296859210 597656402 749368108 368870962 507906868 930106632 988933014 946519400 982720428 31323452 257487034 886756502 987948296 515080772 552055554 72919770 151750164 603975104 674646007 464762364 572001664 116406512 868901234 423889073 747601330 734199117 842004878 813645209 902521408 917796735 924246432 844757201 873726097 609749752 906219157 825851027 913324959 635670262 787086232 555355232 996601436 864912724 987885681 964602981 967403598 146326830 505998245 374714951 707575721 783556468 898830243 169842693 559384622 89408832 870188854 319418599 614474901 92405179 508879471 45666238 137258653 258148646 694917437 34373471 482100692 41424052 484843863 888105675 962466717 764805899 928644724 638225719 713990539 865069557 879682882 357487307 814626643 377959573 654174722 391249564 863465250 991577785 996886903 863157852 990084466 728467691 736812366 623368404 769226205 89358736 712366710 396402653 731858179 726885046 780303048 724907667 940065806 998776842 999310476 929534778 962137093 768428093 857166823 739280601 758092104 200073506 468528420 562737532 908720513 665251335 901176454 249121452 779274776 486875131 500287398 778812812 881197176 891276133 986698911 539012976 600070738 224730710 562258326 922090457 926433354 507855014 664751955 881412639 982250390 465441900 672893587 833213023 848363948 752432319 975333057 577443391 677965392 648478484 781845733 646562936 682987032 797554613 892138628 992080903 997476702 16663819 64727264 836892244 974838255 553732744 710109207 728666406 862702693 15474884 389645782 216923419 943348380 768537835 924681157 468997195 878810171 770284673 983567939 738055321 748777465 154211386 254214641 579565076 973150980 926311411 958596646 387753375 748301780 55756114 490598725 872120316 978253553 450677911 976409392 283208001 738343015 731766129 914991689 634173407 669473699 895701688 993273329 62684251 936747644 977109348 986953755 224888624 248630707 494761218 873608885 298751447 816181222 385774370 393358679 603169123 884325646 627830006 942753783 873674658 896358000 965899072 972918013 976448644 977398000 18022578 615017232 454390180 999722230 626047257 666830611 764371827 879546831 277212797 676718458 521760113 877204000 37560050 290281406 637558182 893672912 909101155 940461471 79688692 816787831 48449336 996428548 221771338 329462417 631072614 644152629 893969913 940204347 487263416 959601901 598438598 742128426 802548068 823096395 479761022 650041610 597894673 894270939 214710959 662924680 462684841 692159362 482796055 622514999 666956421 717722138 531001815 701982318 410789154 970566760 857570054 960143302 767002909 915778597 735568096 757043301 733219682 906927193 845593137 900944921 488373741 772226384 131747350 927636102 57863411 131382722 43215593 927987652 732648532 846229120 127696224 929241607 381477926 734758329 856768835 920589288 200992927 946953974 677633746 926784644 941321753 947068966 843125335 916604865 775718971 846482604 763943280 912893461 616820939 976380222 30570352 570763867 353364599 989162135 22820166 282944983 924924858 934470293 377443333 465365446 341817553 430528835 671371430 995482681 773576570 978026512 671451051 820215954 551121013 558797779 842098415 969266972 454800940 884377188 977418492 991206329 163983930 795457307 181659425 714801305 271696696 602953842 15955067 998919113 248954034 861488645 482995453 617943218 333966297 813014919 523572674 810859095 721444454 822885160 46400484 105496724 184365872 428534260 299995528 748667709 846753789 916929234 169746233 313416067 88656611 497409900 353631556 660124117 939169249 977232172 198346101 215973039 583020343 872422689 19478296 127724752 932321559 955366052 35090133 317208774 489421882 832247784 613556849 875144522 888655632 959810584 123163938 162358271 909958571 976292492 429524553 972759518 848961311 980151760 426895219 663098365 459204730 842116193 83434715 148602672 444065358 699590062 300842629 604730134 323186329 477546799 659149184 778393325 913160563 994805065 655072348 835776135 535935123 717010705 596499446 906479327 64977213 636385519 655299058 697973452 145741841 917085931 378829939 603253915 241234892 624894292 662708424 760830032 515845662 702769042 671953044 769659863 164828592 938926004 672716583 881078431 709744724 732741907 807502456 887957121 294786214 936988926 300675880 703753711 48019174 164812122 328756396 475658723 481273426 707949929 905450544 988325072 708973225 728996815 22713313 779815431 33761794 912678763 698548756 744230562 718225619 892379511 793841704 881919920 486368597 694179146 275330854 751519100 363417282 528260403 321688482 793643616 767075280 824408100 732658674 893421904 828708243 908041930 498008970 966049789 407204872 914921765 348717437 607636672 881377807 887969078 100684181 263276545 714023918 782598378 473910547 750405296 137723085 841545663 800581690 905015883 924344209 976502278 774353616 862238102 531354171 671792724 241724076 579509547 182775751 922850958 793376187 817534435 989231942 997684424 568285829 898845339 262650357 685268011 662496686 816838448 811115663 826272326 821846305 944764550 582390465 772580597 729501693 937824174 321962282 947691457 269452342 407859653 875073467 920563405 887447408 926634173 842667421 965977671 495797230 808817813 189000545 842509559 494408690 661364007 534493809 930835394 331343929 336213678 996891417 998187259 471789926 726893595 297545204 399918696 218022439 558724164 673964785 940414129 629345139 637142161 399555993 828392271 525685929 893200191 50830576 93512280 399530730 737360128 979196807 993683559 242554333 944521617 470671567 962405005 300689000 304561948 225509280 586437107 482705550 576939590 805022228 845350386 283398839 969106131 665419830 813563626 607844209 766052478 765022348 776612770 921868065 924304692 181664894 626391354 346952714 617600911 430549616 922593309 941338 100984635 722061302 924391343 637748207 940197904 267078077 353590574 479603234 503895316 938221803 997727303 940936879 997663402 407896207 875961575 611612898 672413069 919802601 951312736 645614666 756910022 385965845 903819295 492022884 788321255 400635070 681892652 183952920 317474978 140952643 805785951 391120356 447228560 277438615 997505098 985982645 995437951 378549559 636214790 619144713 964367496 607917307 795100553 923292770 939945139 515930320 679452204 183517162 813680167 308978255 705839327 855357095 964983406 841611576 998803652 645923070 749408949 299506640 857524559 380116522 745453887 580459524 871120563 217573603 582882530 75851226 362323686 402691481 999449427 50546676 887909295 850526907 883133483 919546784 958036217 712275660 779748512 508460653 614142328 923147184 988825942 411145201 719842829 56094094 954407643 254519444 591286453 762187583 869448531 4029059 877199464 481195198 514581066 985205952 985678546 802102925 910076195 987838060 993027139 66681415 240409005 184624412 667193837 745037731 891374956 456036746 983129390 615939544 989965840 910747002 990315043 397416315 705254175 669149712 908617544 387199630 591145724 873782360 967584768 147519412 422904390 296237242 766714643 763280565 791695137 794624581 861265660 470179823 886872053 545469815 728716481 621736954 960030811 711566688 941225068 690037529 918089914 200739444 394453650 411986512 420657581 345069377 858865983 979217236 979980305 324797535 965939229 590044731 793198005 286665715 509333426 486504382 883260058 87948727 477460232 881591367 986711514 994773337 996521762 24368313 295279523 907726650 990146432 737876820 960847832 765104557 917710458 491700243 641188161 498734767 933694203 116474861 631118653 958192367 983781489 705099697 784713654 126274438 726350726 229133283 880135510 83980182 164348265 842049447 953699371 558596215 571481277 674223864 938834008 443380603 763198814 337039334 983466440 702610176 935104409 814511847 995983584 442538052 788565177 745227121 766720517 139652111 919009602 507102684 548823925 352920863 879743234 3558044 580781504 615004445 747153719 92489081 999941968 801843767 940947054 840695273 916801414 679211295 872189530 133310705 708336485 636484390 938082515 560658387 708779862 469974393 674113730 630595540 745186107 254697939 941724983 942055430 995506388 638073609 959641609 188819089 604782717 145490674 236149077 61559147 841235610 203385095 393862978 926020806 985823618 76031313 723476996 81860625 519132248 907075237 953439748 104548101 882874279 437714208 646842711 651264993 971311526 582519194 936297789 69996617 465788343 843235977 895286153 993222790 999711834 709067883 826144435 245325548 554752700 989145324 993379837 569768783 655457674 581722218 604374140 903847832 945507222 880410703 899886307 104600345 983025696 982148128 987281361 712135407 891139154 722072585 739280408 970499552 989421530 305313592 655513529 291394048 746386136 790815277 860939926 943571359 949816956 569978821 671424406 213718188 491274734 337764262 355121023 284665068 939487936 721304795 723608827 679128865 702982265 544296219 661438140 167380187 734029194 911987063 927035367 77037810 89967724 66226 68803818 349191767 587908569 326655097 993369375 897895839 984104707 645045111 900471047 686857462 806495235 750879162 780780598 485151419 932111434 758576365 888674147 174404437 566231482 56008371 718779650 980430494 991116591 473741117 542838926 579306619 606329293 860017026 992626757 720233695 863874822 590694266 900698138 834678596 969088870 714733173 819953569 314037838 709919268 950607398 970087893 263227162 275352902 674517613 920444493 241191778 256493433 22432794 834742593 549077303 821142676 291730746 820620341 154189631 805088513 223827310 223903864 646731678 881971631 100871271 316940549 297658417 607244877 250878076 426278473 31366161 121860031 335442472 847589054 198162162 357641143 768293182 930721651 232695506 395967721 520894558 554741063 61673642 907615285 331471740 751797231 314028412 462561610 662668325 940626200 738421574 885048004 4948158 50037187 897485343 925703084 321887877 631398951 375864515 749047865 705037263 836671261 354763008 590195827 350753 58901525 471675906 924512994 663502996 915178260 303389051 965435201 215375656 370085222 826224935 944173773 539367267 947788775 246427109 890424315 132996339 827003513 141645479 459622619 83439766 504396944 533066960 804476996 297973350 764680745 542947705 770494756 448949546 907389289 392216335 419984549 380147363 654526174 117178917 309495846 987973674 998217703 735032188 947429633 914736672 934442904 885170119 992653429 272032698 435826636 859245398 903020382 232981712 554500791 149510797 149998270 685190776 791235755 597222825 836432496 459281374 626336801 486102720 985782816 626885180 667188557 949709205 996825441 154096080 616566248 392729274 676631850 287336537 925134887 875886336 885383968 956714831 985189373 384764081 569002393 277672449 715371233 23914981 60093031 269497136 396667929 436920937 542428228 746541254 785905827 755656047 862596834 409981232 886048579 283285336 391069487 742198535 958758913 651372267 875421005 269634785 855883057 424963800 477750139 442448839 568673225 42193500 798667648 152255866 318992821 53223014 342213950 884587451 976331207 740454036 915597616 378397136 819085233 647124173 993800162 213399281 826523368 747571177 804954937 73962934 185640953 285430773 728028478 649241033 693125287 221819997 257331095 589906726 654862318 472126168 816749583 772982630 925275303 498062346 805980952 448253811 879895110 313787898 634808530 246219837 293459887 555551526 996871900 57900804 630259526 689819331 947073747 64656128 166864042 823518245 923884972 441642091 541324704 297967668 492028680 838374229 954995534 6987179 687418268 810387430 942636722 396659216 634952232 480043183 974372944 15142378 702485041 666299896 702422652 558441315 790798637 117349209 835847902 275573935 504653633 767232927 974297098 995518264 997676952 64318882 380821092 170827184 606941691 284829312 646758053 339226454 937455714 154599010 903437144 294029245 706385537 226006418 583901590 641474041 899801067 247469334 908334511 980271647 985489978 357303391 934779789 710674038 853656625 489424268 677318059 808449474 995732496 421822643 499330578 538790095 947205449 850000017 982248761 288388909 648172126 209617014 507687087 943263307 991546679 903515961 968714045 989040466 998271760 14880881 418392391 657516770 819758921 932611025 944641819 448488169 655452737 648046670 961477382 312440206 758125724 422578633 673097594 749810137 847688607 72893502 160010812 149423756 291432076 330332263 927271994 504568511 647038397 433050063 564558855 396006340 963675595 873850948 946979393 266584076 610623073 592653175 991473649 545531815 724452442 167552242 624813286 285575421 786596123 990383065 999755557 776729154 967482987 455060769 552262018 438035344 480869542 650382194 781623118 824741805 900508591 617234173 789979517 482133021 854100739 196209929 249328065 659645394 996521767 219403597 898500379 723010215 804995030 571036738 848113124 649209405 828834099 225242965 398804640 583730857 966981197 652128422 964439930 654207024 695524309 523330527 776152169 897168860 994318380 897915650 976981500 276121487 799862536 941334915 972133845 919360384 984903983 846277945 971886905 51248429 298900427 317414851 941866606 514128773 516210677 106221696 975230115 580887262 595440509 59770968 991824802 727878090 843394782 553025542 708056390 43680706 833647035 961999090 996960799 427693533 801627598 682528170 973015323 287911056 753925274 421608900 839458215 373006957 601549205 370781835 787780537 260932122 854360761 581025652 838914382 824139404 863050944 934721655 954419873 15526064 896874745 343007865 584107131 291900942 555617048 895274058 973647850 514470270 941175608 407977311 471139497 499997459 920874000 592277263 943818136 151247212 974677837 100422707 480170349 747654022 879048690 502075008 864238095 72174013 614923166 955308163 985155656 482753648 857812651 165802841 260303698 52945587 279074097 188324570 313373331 627896955 735726528 777892047 919909201 733149485 830250115 763079359 942417115 872755519 948805150 962782855 971746761 37291643 135342955 551965612 825622143 462371757 833338125 921329058 937548503 152890102 947513728 469340787 592441864 39776628 747193715 776213920 816122665 167647937 880703263 71171226 731068524 476527498 518861496 912212979 960058098 610411045 875583697 450048537 817471166 133932036 587727800 989882967 999889573 925282835 928119634 919038120 988399240 49133907 267789495 192790154 979409951 694329278 775446185 112753129 450739889 318707764 496560990 62175441 139101942 342776941 552353476 485501204 994229568 617300904 800719616 765472382 891289169 909776706 919455238 502302777 735849493 966921161 986786082 243454845 975733362 105335842 186466299 802874384 817246172 250770853 801077081 39961425 401871847 428828240 631299905 127247277 892440400 263683126 978705438 513443648 707201689 386541333 623850252 665957593 737592885 423454409 601174647 545594684 604468896 70588217 863155155 197296331 456377012 624937413 806032507 492937074 894887660 331312986 610572144 175063413 178690083 771003162 855819480 402371751 841294133 106168439 822715420 831145486 890365132 755123672 892288794 915777447 971102527 620896085 752325970 276697549 843308895 344448616 475775635 453675816 643372974 387826295 595610102 832679413 926270814 498257754 586725394 334291100 507937484 152026821 850549402 993603266 998341118 219618858 262937824 820349623 870168563 203328880 671780862 857525428 964697926 667409291 997533149 123061386 214301471 835242343 878001025 99028125 959558493 545995515 962568626 319357964 974332025 90404008 699797305 490673533 648598838 973160102 999873467 734282905 993719659 238787318 255431171 47006387 248745148 108360024 837834637 337835936 848931088 226146780 338528068 101814615 449518936 722064431 784148175 779788040 994538330 941993330 968990177 792766845 851156652 473955815 771660406 631095468 848903151 816345843 914416589 382799479 492820052 52276222 995506049 662327684 982951073 850209219 913065369 376729830 991545357 601986163 999553627 850602480 876627543 195798571 641171418 980890908 997367584 190470110 650781838 727654015 832061605 165922312 348097878 604351589 870780710 762194949 814571393 79632713 80689286 460568892 745457457 560409471 596956181 313749000 976739830 502312436 666353405 230147040 882237644 68191694 117641837 22241466 569288046 851337360 857727162 38843161 860877304 858215146 935084378 664641819 671497179 732281874 836395542 933460628 970949219 208994820 262366841 801751094 852621546 505710759 548262055 707629030 881435639 433628046 983685408 740917308 986838723 257613868 734929790 378991853 940658622 589211045 710206933 526047347 927517746 775613699 867583557 637072247 896529160 621634330 938244641 454377613 939081787 359545251 609350404 518118332 599070762 958557171 967050302 376021315 523125103 812675975 847833245 894801609 908854239 231419237 349047199 243196216 937934273 129424952 805649918 988929805 992806275 663688428 700698471 877861289 993724476 266687163 721069446 352333093 883445596 564081609 799773771 559815932 774168731 140281253 355264521 900557445 998109831 747905931 843060983 81318008 398376172 817958886 944166409 459097864 807214129 304509545 832769912 868560602 879047516 506268443 730458962 226861356 746889260 107050938 452028144 220161270 771068329 475950720 758509449 228781925 295690444 391599010 841165083 559749079 648536158 216691524 616846836 755979598 779741670 437569036 499765324 20378615 922641390 82008874 778841589 509092378 570742328 593259616 824753862 887109837 993910061 802254313 972481702 803370931 915754553 935703264 971373784 985362714 990248756 734783840 862903118 814531962 910639335 134626221 877574588 78931879 958835428 215617531 899456562 282365663 935108337 74340862 613947212 574769970 632605087 247718507 990091018 192075166 423927894 391394526 502109094 283007031 834432822 900948964 984184779 306744779 603719741 896736473 911663399 644498720 732506593 520081388 628052579 761618354 911771905 477767769 585180806 992057421 999567742 575940152 892528270 91308970 520911083 867325713 957132076 501696402 579796568 299302695 828790285 428163745 521180634 913351513 928374505 560827031 664028168 449578331 484597916 497460343 675606123 409235693 575254133 809025332 916948868 246280593 348468614 200068221 301235001 600741750 629277370 385693978 734183966 132483353 185391562 904522971 924581951 549447628 741580931 364941962 918686991 68855941 853749435 812460129 927568745 338262318 712240543 147233507 667141305 389390544 764597651 220695521 978638817 196405336 351692209 780849039 808826503 674168939 988502708 828664193 942321950 364664456 642593426 696434543 909100683 270970826 781024515 249764948 641081580 707424757 865763947 339186399 620515278 677030095 974111861 558663320 935286208 120715714 457970212 22946311 205270396 517003054 804139114 581297633 967260772 269452159 341723255 501821879 671526360 487355247 685215863 386700817 768316612 14418649 188807988 26281645 264929906 796667123 980209694 46776635 911569236 371224712 616886927 574846122 798917366 555315781 622391440 701594989 753545418 355273555 814899384 659132528 920492995 744765484 816530492 784211813 976305512 720538975 746629533 49737714 111368904 681288977 965082571 335154425 737986508 203924115 449360301 123736840 269653575 40089522 112519129 711127281 934376688 498212189 557183550 506971685 824857476 168966538 857424469 772370344 942688399 458628543 769991895 345567585 983382274 586027193 688934800 805122060 830970099 981062944 988506193 964357329 971569252 451928774 973924898 888679336 893218629 195708480 768323175 788946820 843051053 273390321 537801093 990764710 998609797 592660686 991043600 923534429 924356353 50820766 746126265 970340482 972941416 476374103 924471927 625224547 940415666 202302677 760741443 426629121 802171300 315536527 977890080 309604193 888652139 302283701 667074767 708867079 935363410 243598115 405050371 489348067 631497560 263011174 961562056 785831435 835385106 819667524 873889513 998804509 999724146 134763134 776508321 977610030 985948844 905931590 935510144 562877483 954127759 854609623 982370216 547294979 965160548 479200273 887917272 73459735 979154456 108363699 501034731 803146873 859669573 447287828 767373460 842913372 945364783 956474202 963744370 270413254 784691372 321177108 378461697 918599187 936342935 152895412 870417836 207175674 683014150 756375216 819214184 331785355 339382126 343825249 818749976 457282899 541941646 763583914 796393703 161573947 647811269 541449974 988305813 912994983 928559824 190666010 398332133 802030790 870496085 438994184 529980043 42819043 584215820 384620799 444033396 783021497 924624310 523901679 687200646 655595991 811987582 327919941 784434806 857975845 924917505 93785035 136291762 386336086 728597349 700969303 903012145 726348447 818355334 106552004 840342436 198864660 741354306 3105437 384158858 256011437 346213862 956681521 981277495 258366055 873832043 37904993 294120069 54758963 818768876 128299120 819039839 160268176 303026570 929977736 935078949 503331933 547024403 731986875 944111992 922242220 959438428 828583351 944585930 771136724 809361600 723321204 774099872 322816755 864198169 460343498 953203607 889714933 991167614 85790210 630422661 104167435 452661277 428045567 520467088 638514614 816933056 350610435 511134395 164457646 864351515 88876522 510852574 75945647 249312807 175272461 528903738 94167282 360658484 810484120 869294348 744369909 929443746 411336956 516648011 485590439 509823360 642350972 898677580 566499407 812510359 431665252 894368440 283748888 692351301 986381631 988504703 764722707 919775821 790170987 916117473 869499644 954119371 649644678 788547639 909495012 960645136 848378217 918646502 154139453 458783665 379080194 863026614 396763022 913919174 793642860 824924323 58316600 219679469 256585758 316827352 165686943 878753005 590459920 773768726 54174578 305887579 948546842 979711051 800234816 936746881 736901508 871774229 601062795 904715382 817287772 903510832 293000667 648680551 591031400 631329622 100077704 238042398 134508342 625315016 921926462 977547466 701134409 995557217 670431453 904917948 489385560 821429322 706606760 859269424 229065357 726189732 558294406 940589725 303558614 960866137 419432929 504927441 58674339 845968105 328643670 915038322 204286635 908784500 470491380 825260386 910269321 944005237 394401623 419981339 585767646 968630970 910997480 968399005 812675783 999923964 665985744 994656803 248703808 518768856 380036117 986604909 800170685 929947994 703790098 765187334 549776379 871819087 921827461 942310740 39858214 248545142 262649997 589288396 965740548 989006609 939259460 939462975 641407769 808921044 559829144 780395545 906719160 931040303 246584273 911679413 46379975 349626170 301624480 390579619 80395561 475879261 709069020 795525304 53434888 453422005 374498169 625880486 166780741 318131047 920430561 925788812 87712169 931508700 995221241 997423517 793578500 842030711 689223624 722191784 489349997 725355471 400878246 795089623 782245613 948875032 516019320 702704632 396777271 725525010 430861666 585552994 944712651 951941072 120837302 941316540 894470249 960934384 119880797 838275826 637458708 907128526 638807132 750940997 532956337 553217290 817778553 965756082 175844790 603226975 187437221 486731371 276576686 897991954 452663309 608431202 245805260 462176207 741944736 962133983 734895857 915480932 438551877 540185796 192454366 568268785 296909241 638088052 915344649 953784403 357716462 392818947 589263585 629922229 105588885 637003413 728916798 931445854 555042672 972421096 18397353 477975723 369579543 680434818 357352966 758165759 510187290 658685938 907830035 954305061 415047265 946073952 20392434 245000047 943319536 950916606 397757560 653116240 82330534 628519356 498252579 927077589 55407450 485901817 638265854 867455997 327779903 569691528 892239548 921709855 239557681 481668416 650989478 788843979 234481164 674053923 912869236 946507395 417238877 814224625 633398957 751280441 364860784 495789110 95647868 757764848 898919004 992515753 884841493 917854664 348651946 923129469 952462621 985854120 462907276 981081465 380929776 649676312 327635978 333519589 523412708 922725333 452488 506303558 526208578 534142196 825979724 885055990 265252617 447086195 721473850 754885068 454527009 758570342 231312710 439450030 186484750 420507626 632307569 890927222 727117221 876766290 224397287 290009066 126188292 685042350 740834962 974265517 190918382 793974799 950520127 995624207 494092725 992129344 413829277 417942815 87148349 722828365 694377149 907664184 859548356 890617265 957145993 989810771 886657319 969606503 858643604 898648545 17896988 510836079 235120490 398133004 30092653 82571003 617006417 806782261 681213193 901203156 629335754 942807651 600676950 795609013 934915415 944519996 433708043 734336244 181531347 834820444 106885469 639396757 256036879 529491275 913313629 957597609 720208733 987943563 555425580 585660780 662521450 886716491 4908044 204893439 746622 18428795 8485716 801895330 14234747 681455033 669891077 864016928 99669567 309736642 131504346 555138086 253210041 289534207 86537042 173065331 319542829 759698466 39618671 874079453 856868102 923736802 774274290 894251383 557304208 831807995 717934883 984434606 483221240 557100499 346903327 942550260 165300494 556789262 749134434 752314523 171023430 836209753 238497036 672579205 611479663 634429728 524485824 809361869 8650259 52464194 285716787 989948983 334524003 431698086 326878988 652579973 839904868 944135864 958886404 988356388 358629243 648031099 821793115 885468362 389021462 517330960 607728669 646007663 109521279 930574694 370906787 481286844 292545877 677462791 592791298 641597682 617296403 827818920 723696919 854934122 906388000 931432224 816369028 938764650 63434820 174107234 693000146 873922391 289498368 666270075 15648468 749052191 739781764 967302449 884237538 954592001 217888769 790647296 639262634 942479518 400502330 719193807 269994236 484710601 967454381 979700553 953488803 982836453 207780443 422785212 227410459 735471597 454281199 720270341 206913132 880415473 197982782 416632824 874092484 910178746 779201406 856828130 478519219 746360312 24637490 104223646 394852431 957935388 253255678 554383469 458351743 763040650 936749900 950234320 141832076 464805370 843404072 941821631 309640454 602915831 405056954 508690558 494009882 578756728 123415085 203148241 690734472 793492021 471824412 666945834 484841430 615416576 541924357 568524707 746458849 967221417 694127774 764637151 928575112 970267099 997760789 998149786 306263454 930038266 89307101 122869708 484954242 864219326 659248643 785056176 120569930 461985321 612357874 708307841 166134422 647359632 669409004 874165719 664301837 724689216 426871386 844014721 634435402 966626306 420169906 636080031 586267657 725142258 365416080 782648430 294808511 513302299 821799706 908643580 756396121 827348287 867394099 978474787 589070556 635281921 360734309 830625935 725998757 751705404 441469054 731476696 373862055 560110776 296779419 377676377 14015709 469884240 984369184 986288403 169184936 549977548 426988703 889027128 156338623 233857987 773856470 967847030 646411699 821278664 983426355 985967976 575993546 683956377 52906714 822937290 148369735 692033135 545778123 866897507 927463646 992356042 478281482 695597040 20342283 976451335 449151192 779420567 87580493 898438114 242773301 542506916 639040415 835682015 490539181 935113326 622564216 679453008 340547977 923467715 307353954 555732179 907058002 965477247 943852962 969238698 826434489 963300862 404595681 566123996 148665650 213940896 155734647 418901413 86355694 713207430 850119670 886097288 619572568 633512888 760515273 938257413 761485203 802851390 11104581 260534531 450641561 893164404 673311959 890160454 108705621 727510688 405075285 759884014 726515325 752576029 93258950 570724028 579923420 644779746 684789526 993557744 633736422 831239763 521225000 777805284 583725964 695495803 55230022 959854355 655295474 867963656 247329774 663747261 809959266 937141781 470486450 600825886 859511654 875738396 570743757 941928789 335826693 864696368 560481058 642572325 428608074 556793773 854765263 933151285 377869774 552356043 187722982 661296617 648741363 697889569 386283500 635381967 742209258 985981720 475373883 846394807 786940521 890696645 6106486 184545696 78032595 745985641 345180401 363503579 114783851 276519773 706671452 770376884 976268672 990596998 890031897 968115399 570805055 616898390 890997530 999045128 994250524 996279834 184035605 548230684 452394923 772033720 761757369 816145694 148042560 754652921 4678111 164305196 509060393 510426406 569790355 800438207 584154272 683073905 485302902 585136739 988847540 994736062 788495169 828695981 617424550 711544592 582318949 904028616 39363366 805168576 543910626 794891017 930765375 939498683 332007742 567003573 661775294 765595282 56968215 350684252 437002813 721493985 948318878 993675140 724447753 781724279 325903231 799204960 816318516 969303935 223456542 302661728 661032397 783144790 81300507 691894095 990078916 993934980 658090565 824977397 433314859 897627581 212394551 265426831 163691275 626975762 441177850 777726920 845720154 905040334 299130276 504277772 23985950 78048137 191782408 265400735 672392956 727977939 109329427 742147804 126052155 285786893 128400879 722967659 499904130 988907607 569146535 571467294 297555617 366928582 234389650 704327265 108604232 725503476 832614072 935375661 396016941 488136493 601521352 610444559 940263 233297190 881913687 914812211 520971636 795313449 198255642 673391460 557451650 596941931 158601126 256535716 827662687 836567826 709296185 766284544 747446920 976603389 37831942 173639920 814903380 922561582 675822191 931568298 315641631 328406585 600361573 782853189 850111613 918530050 194564832 427339479 456097833 730303860 499291888 829324466 505030515 914155433 943233023 960662280 162320073 388569365 396259297 860535405 325434988 442209277 834579232 930839951 498586555 934428352 517597729 863908979 749701267 814047166 141073122 966976822 600021550 944019668 876779431 890712558 752736981 831010369 136559698 649791791 378693747 736498889 998099356 998591591 130119156 648445779 152602662 512856067 804836850 946532297 675656862 865556079 382957400 586501916 909340132 932738678 198324411 503212095 300299330 682918753 759261729 958087573 842211299 952447330 14356375 464301115 542173511 811770296 145144749 481869355 863923794 951357139 364196606 824721004 115153432 657555215 144938131 491114998 671229611 714147018 326470599 992750601 578287419 766938322 346775997 725374040 618497540 933697813 812677775 845823385 802454431 820499570 122054519 166623659 805411641 816071764 505540661 941352962 153305754 480634948 724145636 742914218 877643226 961175311 186498412 393952619 367097062 877233502 407538059 895870029 125190325 289836432 97271247 923749474 43614163 441279295 842899561 994676525 475183421 572273634 256351726 511787734 856317135 911453037 901199124 975520347 740594398 842878501 329362989 424808836 838288041 954737455 489607204 595643671 981838826 981866321 682182631 892060484 194441103 822601213 432015028 535523665 958341269 984648595 394401601 449306127 324673043 373568792 826614561 981062722 24594836 682605265 635607659 901784429 434668136 631312197 450265986 809137799 691501103 870036249 905496907 946673899 795676690 909069894 96595930 670790516 861244925 968183687 380976860 762548166 123553207 200693757 805937652 931629981 53621142 755286749 145732643 928623349 431212047 651138643 441496882 876514090 181641900 669013602 583558735 657852390 367155331 505149349 834204545 837164030 797882679 846482379 752095070 800024371 224635286 632112424 381893751 873144608 236868414 426336628 638150802 821088490 709165939 892510793 281651746 392305203 938652591 974096545 351944406 832784817 135814287 858284024 802033090 941548516 731001510 831668313 336111024 613276970 855621648 972938583 32211055 427319189 814235128 928223808 40475283 513961883 203388491 853754155 989233252 999075008 254422767 269003059 988086892 999768124 71909698 974163139 376838143 408670910 544533866 619153429 887150801 997238611 265783105 364350800 331251373 374361926 156126963 472275751 330125198 769433790 552014401 617430239 834388013 863730902 177800254 343749810 818931183 972950446 667223208 852636767 136844928 967298632 764509222 795056666 681659054 767870218 497729285 526474296 732503041 940134343 931146851 992519125 863483554 941983376 706366539 750505341 269165537 871146278 404425946 761611143 77830855 854575682 888760640 910248621 897346349 940063216 546479237 685342009 289671537 920750943 526715848 648740332 636131191 895909963 454317959 456751186 993877038 999574178 869865911 994319208 898596691 921763708 234249334 908781005 668530416 726632777 267150251 889815890 380556856 729077811 706104110 752008100 795611387 981082972 414534514 445216975 358271740 789850671 33525253 689101906 875655816 878331526 750515916 969975635 21595281 469317826 535406101 928743786 975407223 981516573 154590753 865260637 387072415 492936182 721829481 966567071 101888445 552897628 930311257 974772336 88686075 168940160 339657120 970452994 529218255 608116200 379873453 966549769 290141838 545623275 156000812 382869174 673607156 738656199 731318379 788625940 810185664 817795227 781733315 828210505 873270173 943624857 693326909 951484228 898391983 991382480 763458333 828158956 197687269 866199865 158307263 510757906 739345300 892385601 920762529 996280115 608028920 849211650 669807125 791975770 478928734 897774767 553191678 909292952 347015809 885218528 113661825 642792761 393480278 684700884 134432285 887223149 23377508 87693092 161686332 361078268 618544191 908028035 92416177 682583459 368924602 488837176 867409480 936653412 650291662 672520745 759535755 773214964 196085610 455863538 141688212 277984307 213812254 701913956 638924622 711338750 725444816 749427955 451350372 471449292 990623838 995367124 200443440 201337932 511072792 642358800 715512210 878497577 107542399 830743868 323626875 758728176 271144696 348116060 781452111 819180178 352762425 895448879 691857737 930613216 311937345 465807220 380143040 819979097 707197628 721632062 940267918 982163787 801471156 949408255 199008001 900225341 661262355 695091980 532729461 958231414 152545261 915048948 966303253 975656240 882316958 944036131 651426876 879821194 64884717 292955341 27930613 413173217 93954314 913609945 453456177 839172959 697190965 854288934 392282181 629639238 163234518 848724697 44845661 292542633 339636138 613190238 558407176 754781135 183509146 524001552 496131072 893295020 813226912 854366655 984896297 996310863 508294407 870810929 269216707 435539840 937975638 972214712 520593331 617671636 445923111 811790251 514294773 852210104 400856941 424020932 683668769 841920559 30523337 190003024 866288236 914453435 6207169 564278715 794188907 812033493 496448855 817306373 739353118 760251683 651205749 686627489 294589784 677915480 505213093 637710924 562051471 575257728 920353850 966647399 519457857 591251893 242233987 909702892 770614755 934864760 113420419 317422171 290101375 323456798 670560623 858352619 947041771 997135763 525174108 559997045 347509218 531364873 485933194 783890819 892019994 905799239 177962066 436639110 555750699 714599614 411825863 582623067 143490452 194494849 510295932 826783177 359962140 820707511 748902205 769958276 495399700 885148507 586643776 908525480 590097146 807991721 424874141 820688779 454698944 994423236 253671031 871976142 359683163 776618925 497734285 705094070 538294023 986797438 92931236 348516018 91059346 891741735 837707013 906019990 319084092 693257332 767272792 932354489 131891044 242416046 343469213 518201614 820906081 973512205 341553694 745238298 607298827 719459486 453891585 477275425 167909619 637104711 678207705 952344278 883711338 922627297 443672313 565694551 705702203 998689788 428736296 509833907 69515811 174477814 194539185 258834339 687465040 833603583 603866065 833976417 186365628 361429736 683555510 834941013 119516771 681680735 211278762 922152747 657625856 662153746 241170190 273380524 787336555 790492181 496018431 613141534 672096232 788808077 599863490 931821849 498864496 544366279 944826898 987906564 991991756 993841757 151066147 905911507 545006814 899817267 587253419 767832789 338349038 969069198 656342842 827078688 478168792 579854155 555738731 895194973 128830969 946627469 777034125 940272300 124855532 262432292 468696872 653983529 573522482 941646763 807445889 865624489 94971646 300598098 310864902 692211980 137151819 432748062 864772981 899476069 476924422 970177510 35899550 154013253 831850948 833092544 567866528 914020538 788155402 822685844 391337970 543603324 461203636 839643964 2640785 375358223 816363282 828916463 672113332 944333716 347457158 724866982 542322453 946900645 545514189 934834826 959003288 971553436 126222605 580583698 539901663 970692285 488210851 749972898 780364191 812548684 192911938 510010576 737715502 738782035 389379465 956461847 296593599 429962471 920007552 952029561 526775981 643639525 137403787 829365549 986683235 996764869 658670452 930149795 962707138 971340113 954046587 972748601 428699435 507292487 405344837 564284499 736088091 912291338 385481009 906803338 56991022 656013397 526361725 998608855 883016224 954738535 371674348 786464720 410819223 444900499 426374511 801058788 677617056 994835087 353445355 865168368 667327474 697245724 656520315 961536972 314140200 739473062 798692007 943166579 17376552 215367140 697989421 907515111 192845360 603760067 710195173 902332860 809188148 844912059 93188102 808739880 359599872 805455688 921832905 949164350 517974597 631501060 784862088 893412642 262232320 611682223 236740634 750559167 82944257 871470411 536973753 593014641 89822651 501672344 770294633 826789977 383787471 755420466 246108131 767692606 404327705 626710967 28091870 104214341 49881792 164034547 832366123 973245894 49538858 63285677 144370463 727208870 978941000 987579319 746177805 980227545 199784812 227300911 244055283 497384917 740543670 877903907 274039961 550281594 961524437 973150645 889880411 940698320 444424927 933841565 112872565 355727966 896818537 920035864 391219093 792597943 859433573 963330685 783956866 857731139 771860791 976106788 147492009 265467161 554270227 579658084 173752962 324865641 194565457 585041380 105899612 184210561 683269504 918674258 686773467 824999485 425810379 799534733 260123772 682840911 783382257 851722672 425505632 655845270 90947946 807074197 402435286 919658377 673543222 948393084 142626081 477662455 356599089 507916720 930044019 966106335 642166816 744323177 491779261 732118653 591487927 767172490 307512773 406835006 184067896 827387814 702512388 832804060 166860572 453598899 709738388 732176351 497744556 824700940 262338002 951017263 796363739 961752279 930597787 962850024 771516845 902248372 373040071 604125038 48042437 92428078 596255574 720012302 139158480 184653777 839004205 958644100 400564994 946912576 597541430 918766588 304662022 518209159 14468828 679622534 455389844 746691151 35049357 988826362 550251060 709857928 598400357 959653423 386304709 792118030 770957641 823772277 635752047 813461152 632472598 818733983 781167899 850212743 366085351 869284148 303689540 484154167 223630914 286563129 809385474 996409423 445658430 865474715 499085062 646404065 444113587 727858029 310568668 446703372 919627525 951938904 836226536 982696177 347765124 707977529 148313982 499179581 94434067 245642500 793019630 914871202 18661554 864755611 946492339 949797880 932725087 981763323 991042803 996223501 964829116 980347110 17337916 41102805 345625172 863821778 963674318 995386109 906958096 930866766 78656259 965612383 981044281 995653726 972680170 976554809 278015637 697506453 428784087 990867392 807938378 972878227 93225060 414449926 472091336 926391524 374858486 480122520 930220293 980509976 84821497 796871805 86945812 426971615 366585854 467811052 491346667 820692053 910077002 974771264 388944387 767511053 435218584 495455681 506970615 821587172 851799389 871807869 968539911 995702937 327140408 351704012 388831687 997972558 728441518 946165401 502829842 548492842 978997806 996455166 480594324 985359500 949078501 959471023 251688573 414204028 502925804 505035536 574218617 770336676 644718510 861735718 912683474 976174356 368224458 536771386 628264774 903920828 225599795 716849405 985484024 995369994 205300484 224606610 960645074 978281386 772923498 851573747 199808744 896143028 247097701 459203641 205156859 763114519 710187720 926132430 24535057 351460929 205635084 462452562 832579070 959544256 15150166 915207247 453930962 523096425 843491046 932008805 296884216 371837532 270527904 579491222 551812590 928153712 374646495 778354278 655823093 657480458 84041392 815522781 520506215 584794895 824666683 851485767 458916166 483598489 662378012 829906094 585566072 998809510 125050283 965632607 731565219 742483550 617025917 977188937 342738255 453521109 953905528 961612127 692616553 807054490 911287515 981675052 57686808 499910766 335939848 597355495 440627367 729566551 186627135 332525266 782886712 879515341 542132079 599483546 264054970 345921701 817821977 951435508 975817623 989813936 601691847 916664943 245076523 892359443 28670392 64509419 14998514 296161645 1289436 802475506 582132699 786346568 728356286 976970670 156909567 625599570 997821038 999423898 63787644 568054918 247682609 784765652 364728026 967436674 227080488 750775806 480623965 531978404 841013200 991851190 837282619 967922740 413164770 514129950 43848583 482926317 668702259 885587472 334604989 416402523 698122585 813251248 208667466 696183947 538053533 737362937 70708069 555552535 577649532 635067058 558828053 824784204 190944377 351139585 861009767 871744499 751285327 958958557 108559165 265165240 621651742 645860210 76267728 299806693 826303553 959903861 276774009 923143503 504866623 694562809 832900778 994310990 695540055 942562829 216949239 399364683 418947302 984777884 821867835 933719039 536835944 670587834 941806937 974323561 710443327 908159359 754865655 819210243 144809574 410142293 260495683 505704011 428735913 915423604 213682276 523026464 784215590 826660741 767009566 983065297 52282011 743335413 221636579 583931371 511483164 521087585 375576846 412376949 596255562 939716802 434185320 825915782 54118473 425661696 554009462 892360648 350935148 847834491 673640055 840936143 628765533 765046694 768650684 871762296 74993824 647007280 825872479 826007854 142595467 938286605 344228196 980611152 911532083 997093424 310398545 808135855 516851519 748671874 492781981 889929622 618655502 760154145 279127712 323737258 684212987 844568764 986579143 996551501 356837775 853268874 107738655 479261030 647874636 900774388 156648259 240764084 959531046 971580290 897245157 897740597 495398115 797228025 283290105 901672180 896144306 962725784 993319517 994490728 80758690 81910590 452899404 537159467 722618968 820558634 651552188 693200543 326803840 526091626 797079332 909482358 151129900 835940553 215909432 502077842 927049210 984532394 802924016 845934975 756381470 845589771 692856651 980481124 57931450 966329644 654411481 968959855 569039429 587233045 272813777 663291612 674955104 684505463 346389937 488876937 482019509 538005509 273837861 374571126 966529827 993382446 704496422 778788063 857388756 868208207 85044796 90879721 77899918 305061632 337030302 431858186 85629884 404423518 37411336 436475144 274437434 841253606 695589782 830468280 452659047 625442343 74588644 92909376 828450762 971881705 640615063 905302768 177997327 624045938 217378630 242472493 332897041 509545156 510246730 976167936 296350928 563705952 135347801 176093967 105139062 503363553 655595596 664179475 222706286 262952145 260834327 898008757 433227970 462534019 859924075 964066041 766731362 972805019 542431069 696820195 85215469 157259327 475905025 890039592 10625278 556899807 107005476 423657563 685120373 901051213 657525926 971712025 414434795 555323237 786394317 986680872 277854945 455137446 185672121 679433159 995923708 997966074 499759355 794662910 283841879 313383084 367565647 468149489 199867728 719412312 868589467 999306975 794062122 945618642 705674130 855101277 399076960 511303915 151973759 899385983 115140732 383180509 539596124 886910331 625971323 629578602 457884127 668681498 350642957 938614749 647737023 874768453 446834424 591062785 699354406 978760613 119270145 340128248 92671207 462754840 172543647 905561433 63453708 213755395 617198001 660852912 333315596 390409165 254195318 764564204 215040093 949794391 726831376 930329297 349932117 737766229 239814598 866913390 756589367 957127313 705413341 840840342 418436002 883238646 707291604 838004590 46281498 393511865 354746906 472847816 909884986 971790790 705832981 837953225 47140973 537261737 199358723 431689189 913669006 983541334 102813086 904905791 773127940 984025860 219230266 964523541 119658336 690585577 824769178 918786294 487643904 939385299 445140120 656457704 694258301 725516966 110583772 464966846 47846637 757441605 693572152 696814659 397991758 948806578 500202515 943872309 874605171 933113931 968064242 994401083 533284073 751793216 829555485 961097421 661325195 906774652 74246890 473281476 522813237 569854312 253775879 297945836 337904531 394156611 295464059 799185283 929107521 986012738 44958640 441359010 442226440 463558147 398358163 595837449 216718901 910414240 548822373 958101142 386843769 660602144 25172985 386924145 104641773 474159845 380949844 981559719 551725661 709430809 931862613 977837935 984003558 990688285 905887910 934455217 762849343 935920908 335615483 409484327 267033693 473510767 699921315 990949528 256294300 718664815 997394195 998918110 193926598 950520722 27369416 536569548 116768407 179017361 142246905 607632459 613293962 878388651 979776016 991056777 124805272 717242162 24545969 610773513 449655630 776381492 361780840 791341161 302396667 900373503 868899076 896830955 759751030 986752800 729080724 868008147 96121408 979927849 440338433 736292939 87503287 955473596 976241496 980315546 684474679 911002822 320688559 417584018 211627273 223846679 183599825 700851553 137102139 534139709 151891682 617798863 398534800 751688085 748611651 972226391 366240141 452949158 6165706 779269066 392003346 543800283 359138329 426436023 719101466 784510082 902510199 970805265 222016713 988138499 391511686 506608556 595387471 732140204 802091336 923171091 32424834 527913858 219115452 432015121 137765011 436227933 917332414 958339554 532276467 559309144 656500801 930838101 851690137 901120124 273050517 894227324 476288489 661643684 491972163 975056712 41767589 811921182 835331119 843571332 587358971 723299094 241193061 368098068 121529336 884355358 4773755 330003256 922824643 991560688 954996988 956214263 74389972 951349524 436253383 969590004 724133998 836075371 898777477 921305804 982201564 998693935 808267498 979618389 48022527 492283851 40548080 358846583 751684363 978396043 600388927 610709254 737827060 876977046 803078285 982764300 358918232 917160139 553239314 635306498 136859563 321140130 815857092 942215654 598204707 776278986 270923320 664751269 109312613 279391035 196251729 979755682 206092832 818731162 119913491 668220636 7686109 686510585 367411547 384822099 156045609 404756098 648555398 911828023 780307961 911358823 733514758 841793912 439311386 882962533 141293927 429163677 796426556 833976139 369315600 493326000 51711378 500429553 102544510 478876217 141078364 772736458 930914286 936498302 668177345 983007376 69655690 534185494 745305656 897001838 344041614 581771706 779139088 985321561 76867357 423001844 312360821 352941698 203991117 734767503 600144174 810961019 415265166 688065378 559775586 565048636 459288874 876449929 508969757 958037798 762252105 860564798 920439939 927045651 226103312 559023028 549348588 832313157 646557884 971417141 235310890 420016591 627149638 751177584 868074643 895420644 835767579 935981264 176130994 696643312 449236820 687154352 21789386 333812552 195571699 437328745 765843327 858651875 136176533 194077605 823159366 961052304 232142334 783142400 108779654 855144504 665042733 769989927 792989868 993334471 673378829 879132646 969019122 990653420 128477561 461879908 258829750 593655625 682425234 951442236 754498237 860017141 910681606 932724306 499989528 560567411 301147988 754627291 198012486 846535162 256578980 598665317 338430728 911124678 616878116 665580668 686611775 772473897 112157083 925790954 272008232 993903791 978893042 996626742 672457302 702486980 793078338 869346959 287333871 725628196 568282999 971518481 399831999 864033396 126391599 598461288 500871724 989617907 584845025 615882734 183143006 845689577 908396319 980927928 924259995 932676823 224858584 743417032 561854296 861119293 242485864 651224818 54312886 410794562 449868577 874038663 812944102 863987548 526493015 584578044 166086857 561623266 981533946 999527749 831030805 857541772 198461965 814400311 26194886 439935277 445177677 554152554 60756103 488754538 775623221 782569738 902301310 930341846 94108552 113482107 260697497 323689690 584590601 592495109 181907651 472955425 619019569 881090153 153829988 885920279 770245072 959262243 816649118 910071743 425741176 901577213 891168809 993767783 911414745 954710420 560790258 896758856 517905360 539018026 490228872 996602440 241751435 956319464 707651959 999262893 525051652 570402556 811872008 967787885 455381506 506324505 601594203 878406125 458668353 666151082 834025590 927937742 972814882 973913964 269879759 488298392 336577658 825152799 167753475 177681099 85697752 783888608 403680151 497650372 333745622 437876552 926898350 979809325 104481820 471984496 725420473 986029733 748850423 939891783 292044177 349532822 690239709 729012012 280610438 934185917 841743586 845061796 696443278 911049930 652333418 785678242 155373032 744272621 331607154 885026332 22170036 804294115 434560686 507260151 704540472 865095380 563952400 906891507 413438915 953375255 95359114 646656680 210620047 265306749 839914075 914670289 909495739 910999820 45237219 225695758 312873046 405395744 221937042 343550743 327723528 824403146 206756476 377705811 544899783 545298551 701723509 827456748 457544119 578445656 994212250 999193008 975439370 983817290 242990441 479877125 53807303 304780237 943895949 981410478 32802606 687069474 328929461 483815995 330797869 764408344 830692040 975808154 488540801 688120939 115104209 838015918 322172747 759072714 194405819 976912489 101671240 423586510 738048160 928441900 358797806 503081001 340355189 899829818 805140282 954658403 889597042 989649685 165304757 817664172 651063192 861101961 255892528 841610426 44090609 249571540 229494616 388693787 707420319 814834791 124363606 909452453 626272897 746016762 108439242 612775993 398099426 592596944 452709426 953238002 895788576 981915252 769885253 868638459 63456400 119787443 754740481 905596612 213538741 954074807 8651983 821897300 38524958 816573517 898645692 924939284 548196415 593648623 451082267 703098521 865959653 922457588 995472121 997615821 869554688 984254576 452981779 580278437 304518189 574540637 153015866 447049913 570220369 889239441 220880431 967455940 398395735 854947549 314071247 402478815 664024530 774219601 791593321 848068499 198774573 283153962 381749126 653210997 15083242 993306790 140418773 807539715 57533966 792946180 67170436 552692592 159723638 985157056 219557290 861006335 410943690 763236180 949295431 977001915 558312720 747731010 310191734 982654427 955292573 960817186 611471750 883086239 658729317 899443449 780799451 815651022 587364406 919982238 772036819 946458018 992047494 999103641 75361871 522120901 568962883 818530925 848292224 867045734 866603030 959879903 77121458 369095164 227732624 313917065 909033037 981310731 58360924 988712759 221996490 712818246 613148176 992979605 967804855 989365289 650160776 985459980 295960789 538964142 139893146 238161475 51294585 601619433 366863596 504612258 556322158 762524802 763795853 958542143 350555236 428150808 448964938 597538469 272883405 898902363 594092910 594629882 523787999 886112749 330512656 548029270 609048039 860582272 644096579 781985267 780867568 897252339 894317889 986459361 594142276 722311862 77935569 448345317 239659143 687723005 976208526 996654421 530688355 678071108 543035056 924453737 414409812 931538464 645668144 773949128 522866682 863419423 378699328 897429040 482288704 927687034 225641523 970315885 791056721 950099134 166122321 556021302 594189143 800874261 279949236 798788366 650072445 899645870 636373644 835933374 459863291 544861483 845803458 933671034 802041925 908545106 392889700 905109684 224396283 349038498 808124773 974995166 481246653 646230350 998195336 999381303 268967818 839381566 156516252 350705367 893472315 969587447 459861425 486246998 417951144 649410010 25166044 581325793 624457816 768295660 940829046 946289369 45932349 810935814 109282767 712424070 113185448 493779519 617366886 868362250 351386912 516114667 973906473 983285027 319735467 838850652 437591217 918404695 631147665 818368597 539289640 714936440 458751663 882417264 864537777 995161438 586416794 786301784 380313901 475329913 163186787 248722385 215665842 291280422 216668237 812033467 597145227 722078524 843079058 861679928 681048474 769949735 775119755 830856214 962703022 985532425 428791659 902122550 632682839 853828678 406789399 543549438 537412928 845532427 94986088 720745863 952610351 992726343 885827767 915695342 583505735 990677484 674517713 768834396 246811127 658541071 975691882 975714246 243459573 547155621 489396392 687013529 321093778 345674181 493423679 871792077 571723451 795418747 257859144 807183703 82432046 123447055 775435641 862007265 268358770 422346789 55953564 833426473 337645716 815979369 523613868 785195816 842941621 942354737 36707492 536500213 270883310 554579566 477318739 907587546 632007167 863582008 936925047 992868927 902366653 919734761 896833827 991995155 203024766 944310430 933272747 998650022 596287630 801467489 686712043 706665364 204157277 496758527 391241249 512152570 47078840 86085795 572568687 994471343 287786711 668100055 67712574 325128934 195308216 196503743 142857924 587894323 803250019 921910980 651186882 687424897 474397446 766984859 772504234 948515713 148311255 545330073 867800196 986982628 482961566 968651517 858415900 985047429 845523411 848022310 836189666 991279411 677582393 909417859 846431977 849923690 352121269 860475473 598306744 939093784 477618049 912180573 950479204 999150179 351137156 691883999 400877983 640851805 96155705 759946974 329861539 529396321 486294557 959018429 221409063 751668412 270623981 774633476 390296814 726877514 590930091 909988989 802158348 805045294 601258060 950600146 432074845 737496209 456817181 636796134 668579632 746609468 523380584 667181494 148576224 621912927 893849875 944533301 288421212 531497744 965433205 976345561 217988256 451669914 691938792 787967178 801588324 979525020 839376485 871251430 723712261 784846920 386605883 521117524 226260659 370174949 950173990 974318146 83680107 462373783 799916386 886259487 474398168 690064923 3907271 386366424 65048618 968405838 56228772 795529070 364743352 891208798 994117311 995277792 847937892 854187688 175719129 902780928 989048166 999742941 102139265 798776490 123031880 453670416 406112129 847597126 359447025 516076742 503884957 964618316 8099763 756724543 615165078 996132181 250618739 534389302 784578965 954651120 786457288 918633935 475236474 849105854 768031714 921169703 375927295 723534376 120144824 229850464 859985833 920381042 7225139 737904746 335838406 451157565 948283150 981211541 663998586 968261021 384876491 476603841 812659814 913702135 363588600 603077213 119700709 287144168 191907820 646924481 481738776 991126905 577490437 683869156 24017056 538032989 904825402 979404754 879706692 982309938 420010166 553266965 906136411 989854231 693021498 722197256 329544970 908330537 677921836 843378485 950956629 980066863 410221158 883900446 372535259 513285791 853192541 882202189 477854351 710516328 271424601 942380820 650026211 914143110 856989240 979705954 658133941 787946710 8711972 334283978 526316338 543186108 850508007 921667012 233621346 736297029 850585356 992093241 860928812 962869088 271438855 409573715 544539653 863911329 306174475 668274798 441429321 467681641 270529755 356727108 721801798 794351585 50057512 610929629 986770318 991887757 791407746 881115176 295376561 845164779 486739549 501684494 372166429 646673402 124265497 293754025 539344621 730103401 785345119 858495435 781487683 872555401 499430276 744067122 79414128 907988291 718811339 842520251 273347030 469821935 74607562 595970169 353508423 942305092 902254520 922106213 705856002 915041987 763624159 917523604 729936722 922543287 509985731 522599528 82519146 656979795 525277214 942362085 647204670 990014226 57090506 588561659 771801179 838308437 24008596 84596838 455859108 597222359 536005575 757511333 781563525 837531385 477069967 978797066 876822329 975110787 987930271 998048017 740801740 890766542 183325349 720197238 150519438 555411386 713322615 842816357 204377515 971155397 831105474 900873632 746112800 821090407 890219948 965709722 345012107 471629081 85216095 145661155 7320621 253126822 7815575 56078874 273896816 379001943 84943583 982634280 951401810 986371208 834372340 941561429 3552002 207669768 525550256 809838154 354752055 417137902 377745380 597658640 479955356 744655779 22255870 968431931 99176436 243320460 641079129 840581210 598914530 797562632 713177549 719984292 842803003 963719992 343291439 467560669 357633138 650399834 20044504 335287131 22397665 213043093 762703864 960702147 215508176 749116758 976128524 991203789 142435456 744492856 493266716 835581137 854714712 944119514 210488840 552750197 873855786 929679745 271547669 809654870 849671776 946812396 393663246 732276850 751209004 882752617 843736246 890503875 407486896 575786843 60974850 573172971 240152279 772521269 78762475 259101541 470178259 668678650 519830281 551049161 972530385 979256837 605888780 836675367 492820689 991012375 178490535 489383832 629728914 775750230 423591679 957123800 221559843 453608852 10806741 898895695 310615115 364689910 515479195 902976403 926586355 973315240 881872929 952212400 170303971 662708083 724432002 945563490 9321104 451271746 593264392 912579254 985213331 993148799 347746985 837040964 705276393 716525981 393697340 515670277 126616003 905817680 462383631 573033431 994359166 994470537 372011343 876594627 316683221 773854022 568513831 728529366 804088195 858769251 315448560 553504142 709382907 950897041 506875163 666219576 303486422 660541153 227368740 930867328 264725788 889282299 487724365 545034439 585902884 699287765 722264253 956661977 462899437 738938292 265323471 903980234 755647414 972090553 668869102 805784135 863565090 937071852 790452836 911515879 534716727 573730937 890212244 911627243 884121168 947824931 323557549 568934310 292283403 321369567 403539665 981477319 637675785 980330234 578306626 822051257 698174588 877275537 865435669 975943845 638607640 903962292 942168751 998583569 408203913 992944334 298337145 498624621 519459571 961871321 753204584 839406064 525039240 638873706 927649445 957562827 898243236 949681110 60365900 305589982 64197855 146138180 1007490 763093267 259891680 947065754 862121116 988713717 274286826 998602921 129711772 164739401 987677423 999540730 811353069 889754123 916756094 971675270 480462333 863333336 501712858 871320541 992945686 995525830 326058870 356798899 742232057 872780235 384353275 411540117 111044433 311141034 611736850 889679251 94323066 461426691 549667420 912457812 617308064 865026480 738772329 907983598 401254156 914174775 795738374 910353696 166837547 844671774 147333091 769873375 339739842 395465564 874900943 879663346 485745406 763554619 66180909 625884179 363091383 926874628 28636722 338283487 708295909 878214101 270349713 497200007 85500527 551270561 308744176 985430444 84861980 468976944 41189286 522894963 961738577 981128690 721103074 952143110 947605557 969219584 413743189 518735673 765539399 954797393 898302509 946227967 478341872 787985506 992953430 997196299 432359837 764239085 316628388 829010006 329852706 749481452 950729245 963652170 190736976 493692801 615381593 870397873 920494835 991413712 489301293 991008169 510655629 737733908 716723531 853028319 402498887 950958812 634657314 714792935 612791417 650228241 647386041 940381860 853785206 854898139 853689497 984356481 912587431 967461903 185664697 687510596 299362503 397439858 37224208 182785975 414159837 797031234 962845923 994647600 380220785 495262936 635106027 664736325 451434774 484868598 120865226 913301435 288490530 438792155 823444234 844911668 327826751 968549108 152785658 788058238 847076833 983665431 28977380 328487479 948602725 954134759 595042469 759299937 750580921 776003937 991666454 995851594 992830620 998851639 744680645 764305604 229969903 474236672 381466848 937384896 282850833 353013081 48866264 790436284 542692397 688187964 746692810 891054648 999451524 999670932 151491593 321751262 79708818 724589661 158184349 177462726 594871337 999548658 651453352 927133860 894747937 938651835 555104273 614615412 623070228 793384534 176005996 493228784 228895614 368404018 926301192 972296920 970385337 990097114 938707203 956823221 988397658 996754496 379536439 655217072 498239319 566399005 690574282 985335062 345672688 810592190 305659601 857142815 747410661 757816132 686791725 866282386 798722117 963201800 47139426 977306520 987422984 990482366 867351231 926818404 796104991 805187094 19158719 366900075 332040874 662978756 967970874 979379829 793631997 850930812 134897980 432879994 201385914 687524199 226197684 456331463 926973736 975771009 816206606 868136882 886495412 951875928 235000181 339061639 613622649 708221703 410059566 847536241 86594749 882156760 984925180 986454611 107142484 130637731 328138819 862843113 236553489 535298326 993828564 994587305 339781794 919867803 671881470 718791966 405118718 465056981 43825216 972133281 505092211 550667047 194926198 932284207 422242581 533659860 48394956 585727308 766054474 849691597 58172873 61908124 892607442 999237534 711586686 777778192 928396870 955361128 160162066 450360182 223179864 473437562 553674577 737791347 517223469 870786685 545999491 765065244 661911881 959283670 386283366 639112172 289980188 642708539 552335091 697777461 362273747 507158601 882947718 930247615 251505896 354000516 174939469 589031996 429569482 684728708 59118967 60876197 643692272 844462995 398919249 557070326 137190257 205327911 902937408 912049333 384853973 481416479 727014597 744918268 182057755 942824371 415281588 715894276 689438063 818270020 775653387 810663925 151586030 223246592 314245528 752299337 835934320 976889577 894660081 923955827 162062688 810401055 935425567 977678079 788483321 992430061 765450804 889125851 34973526 916185850 885667420 921116670 128362471 440702346 84063591 158331523 348793530 543816713 173954466 895865008 607529229 647727304 623783340 648789175 874969902 937746939 683620256 838529543 839233558 994009308 510261991 981755388 221348059 994292351 263946716 828269998 803221372 924795927 1983125 319997883 847851265 945792667 50088826 888649789 811329570 985476703 333218834 632513066 549965028 634781881 982375591 996219416 886600949 902615063 589533228 968064752 205925383 555832923 717784131 750298620 473750924 577495672 29646135 95562821 435734737 715312583 835493554 914809485 16827332 127060683 407815603 873026257 14109980 467158945 765503888 820918499 218043239 931045308 606717525 621127465 848679339 881954784 171747250 723448968 474378722 802329603 235806698 373565583 356286440 786234655 669465239 921398348 853241500 954367385 938404102 970071020 709297694 873745662 470812408 751802446 639842008 914605849 956603695 975456424 37268074 951967905 396942916 546932911 290996075 639393742 201195599 239567440 829729967 956599352 281994166 805998566 30254704 440417510 459532611 824691536 989707900 992291065 700204958 769266737 817229981 921358300 572161167 987867775 976683580 995233365 497175612 922004583 592296378 906307066 569654806 852423525 712910327 995572023 264905438 883644360 597035444 816292147 339019185 507041274 567984039 874106896 927486197 958009191 457867279 935502112 355338128 376059295 607566936 886860820 781572025 825246398 247476316 359235393 186302450 198107563 574970696 827721809 140036497 389740928 732553413 980478201 510294781 659021435 334612487 730182003 439767790 477550364 494707848 721076787 584928083 886322365 820908212 923103180 528170946 864196213 601975931 861027304 83446133 328964977 700209497 763689538 847644813 972022352 765253813 846193063 288877221 594324650 834727107 947190327 626390098 795890577 808411701 944186116 207667883 807276570 775951250 843401210 149659301 304033515 700711407 786611765 782139118 979885231 493960383 977083568 857777696 977514700 896088594 975545621 754269364 835822489 552355100 995954213 490723346 692709978 935904726 980971619 494357002 609337212 80912494 346310690 338690162 917156026 548166555 951386590 118097120 718840397 578955433 806824924 664464991 815642563 89492243 140824899 323567093 975898472 835262243 995493664 735037771 856028941 363393682 378298889 817239961 959300407 281931308 687297217 750121299 931094029 323013986 957191560 722845248 990654689 290321079 430005769 700299968 788400182 928150076 939607406 856494790 950086126 590560589 806709113 973389086 976560717 809233364 932619299 214102391 594549346 321610207 913145763 320334819 348947660 411237891 681699890 831715664 848265774 798087229 902596748 654250201 920382291 718902042 894978502 169880755 276538474 200218309 939718309 122867241 514123835 432128077 825564535 534859598 663787301 48121090 960568453 413644924 727681665 335503379 636527641 510880185 980964973 199445372 633977624 477250792 884569950 349797621 813844480 33016949 724932647 364239608 586154048 991844185 993007983 802874807 890123106 110984508 962159386 135654054 288648338 66872083 766619053 813571174 990672697 983764551 997186849 688270056 865196170 475695888 855546120 498968572 895805322 632367931 972580549 125114138 722330918 953932403 970020876 267091530 451478705 356869997 499002723 5140786 235216771 936763584 986074316 761638588 982940914 530347600 956285664 324783509 454424179 809600899 898918932 935220913 942751671 903785453 994638108 250230109 499468447 571899182 605372144 632380979 666520507 316903878 929032334 881554124 899796025 591481345 928490976 657720977 858101489 993201589 998207781 581542883 887215453 620900503 780713610 902285663 963100080 610842151 997966753 418469801 797330021 586562668 959746347 559050077 802706536 376024173 842950442 983934833 998455070 255671345 866907948 535014117 959224075 192802911 238011228 807479791 937439036 207177311 617442059 620392136 712678249 990551652 999137813 303487530 410652936 796776657 886341770 914890609 946805779 343725485 960027865 64513636 233719518 722842648 958594904 965630961 995241828 398115090 744732859 375694773 455344204 375368909 791206992 357112706 637392386 475001559 765736125 352048704 459108564 721138514 791527669 146055593 242520112 270755966 746966555 487638353 725014064 570317789 992497792 159179786 362984035 807364421 829600540 754459934 862835719 322154459 887619142 588355100 686865184 245344951 690725465 463673713 760837319 991042685 999413476 255145290 902377547 367857672 399579712 112603745 588304412 381391241 536629861 943339303 994009356 155712960 159966435 5758028 99038147 519143154 977169315 942897850 965839604 204613366 567714969 412669775 789887332 556341292 735849609 592769222 699438018 794122336 890335173 433960835 906186627 896982530 997819965 353847045 945762007 762017349 805136409 314885313 635862567 420861301 867678201 824828444 907795382 444748701 929346473 207545465 933592627 681303244 822899334 300223107 531552002 704845242 720634516 130190279 433615121 336336884 971591144 674218614 719413588 262492326 273081039 675208657 901359621 459988436 536970473 220871325 796863690 748974142 912672885 40813075 239278681 63090427 125420369 197973354 925725277 544667630 979405463 144611163 393860667 509076147 569648247 142443427 766574388 110756728 988572486 419454366 433611947 973879327 981882303 745516684 781511466 691053058 964611616 529989561 692560058 277783465 560402566 110229716 557910745 661418568 797103460 352002346 745959766 574089134 607057094 428141061 512502692 158000083 436421960 878355056 889280173 299984457 852167012 874664812 891922848 363679804 523845632 847339251 912271721 396771780 563464616 712323342 745290858 255287633 803321067 472576959 503891365 105383315 666992373 964112481 990028874 730851422 930962994 405061315 657396135 165971237 336483561 509273553 752742215 90063445 363548952 957724445 982756174 2376766 375930025 225662170 405787117 945654158 996515118 851394337 896248365 641561366 963794179 509885310 967814769 874033528 918464928 180880937 445993073 670543449 948392424 828360909 946310692 607961005 948780122 627304675 750803743 234348834 304719677 997722498 998179587 52628479 996886596 190289031 470839327 860908689 870018229 644614810 971678206 995469063 995992369 338789789 405867691 231869576 525860419 705617358 998863922 481978238 896587629 368533891 988665741 567109719 934581194 572324886 802056174 451870274 855196129 475551533 593575471 964582249 992425496 189207772 560194960 996295233 998180178 541142780 544084522 104196645 836433938 62345012 294978422 658057403 831996278 378908692 488208401 458422319 840702435 970072386 978699095 942345255 981578746 184884603 896683196 333941801 826932293 453250957 976364266 336745661 446660995 605286748 641332954 146662513 944782417 550899867 831940132 101684227 771315426 206233168 338460241 722225454 955977021 312983509 510121051 162640708 582231533 219487491 545840685 964583435 965878467 548628289 613332326 582072707 906291738 288551157 740847641 208348578 310865959 976640415 992683818 473868998 809649607 526878835 794324970 400796863 402952200 837418446 891592997 836412954 931809067 902991026 996208519 200600471 829983365 982628865 987438212 763305115 912844085 392307246 785719610 256569863 345467810 176538583 836624586 63299088 546167364 597909310 671060336 796436735 843918693 610572714 876019526 841138209 866732596 282271319 549883930 421237292 587810409 770313456 824090632 27396211 535565832 896545042 955307644 963375459 993298404 772867765 927760409 246489990 750142241 477936746 751449690 614806424 657596326 259786477 348637732 16161095 90981145 813527115 908943283 216749278 544483339 730568096 921775273 760041684 795374053 947602619 955540772 828825673 830468705 674919342 703380385 296452843 610354585 621569260 668736513 844754031 879906775 719718964 988867897 751374821 898555404 719170316 870930996 533231837 771624595 906456155 913899454 323615916 620512772 813516218 840697863 827197633 980942125 375524829 978872156 457241844 523547364 660627186 702623740 144647397 363994778 347010483 924436015 340442901 752770819 344273030 528674927 51960001 472149945 555837239 742348913 954016702 999318076 592980079 984867942 860307012 867717040 364318746 479877842 249873017 714595782 170987158 266533344 419332176 653648195 892588144 969237594 160020724 446551226 295581361 843144894 389681406 929829820 963209900 973199417 331886659 821023265 795008086 943763882 899080992 902712485 596995624 789041921 798956485 976196824 741227709 840086419 238639533 714570620 28332335 376547334 2481735 75984587 140228322 613768662 238110770 860335620 45642272 400888231 535438366 540982635 985853827 988748168 832336812 955426568 160610954 980968429 856544891 968013754 493780984 944329223 624950213 972401080 124203965 545760574 780932304 809247919 539357285 831998488 612491612 742177577 258746446 801226719 775686005 992985043 995976460 999181026 5358453 350617739 41462711 213079779 145511308 596077375 263884644 618798003 89926230 835655558 900365974 918935564 871611663 921458962 575954279 965716708 718944146 735246824 546077177 669462718 583472318 625141292 110126597 993977767 859199912 892648588 293510280 482928288 704688576 936094370 615879699 762486001 229547 704213053 873478813 956071210 751952088 804847206 43285400 870882556 98856889 376523015 34379523 304354143 958492434 980412262 657529044 929709524 790534347 802538451 419608697 523932821 522654783 565717712 618870867 896449702 908607867 985116759 713809816 892523802 457076322 786626304 694082674 828263699 820094529 832443699 272606203 604222443 967444349 991125246 999021986 999788973 924741281 978915667 988800418 999905997 311124278 486350199 135930107 592661516 665285877 744323121 385406082 419172794 785195291 911371096 296613762 732937063 592798020 885433410 849760373 872988007 793986370 882888475 368284089 802016657 414079782 611002862 605707135 880946490 281670821 993361176 209036841 882406310 408956112 917339080 731773923 732485699 647273808 933334558 440431192 560855354 893250838 920910797 261336613 618199538 783598577 822358557 381450828 882170938 703186097 883332320 724798703 791413568 644089540 696850725 161792213 448411788 558783473 682943279 615448757 789259144 878055234 990419012 818694392 961572490 856463004 909770724 853813697 900791517 483656691 882284485 11368625 760300875 783392688 880338947 631269391 670875118 238030423 769946638 565061693 980521401 386318793 441677714 734215611 801407957 722052948 819517996 495788135 809859777 798217956 897425932 968484390 973160963 822846173 925013315 644628137 899464564 184419160 960357318 827276613 889548779 998720109 998853403 763532661 804021584 58522958 902595858 749824062 871342094 390608300 433932443 965402463 991766264 601197592 915127320 497792761 887768092 837422188 968031147 956482321 986839434 680774079 725999440 885769023 979442343 957886989 977763266 724173218 799815989 25530251 122484945 546191243 847885529 597237869 878156855 411822215 487326318 899442413 931407708 259544452 323695865 910431827 980133973 609611991 886177287 772565725 852237479 256016771 656372846 330283240 539969409 393612055 865486986 209662268 483277387 444916696 750261566 143842783 759295308 8457928 380276505 104199673 480053048 116848762 869085377 953119239 960245541 775797599 858514502 965794526 975104594 149999101 729148052 165426735 583342511 686390944 766492787 167985910 926739174 404560959 480583496 235057132 632485018 906958281 952147940 222485815 643336650 994300647 998449037 765028299 937908628 247239633 466807079 451625143 812779972 108794183 568248444 846431818 938876197 400833616 749914266 168335253 766812515 335412578 339777071 634647133 758755047 888406759 890480144 236590938 932191507 982146072 987851045 483017057 520376350 391256083 594522290 342486441 608218395 941879167 969517078 516465247 777408519 135451235 536784106 76114655 174192678 905082767 912092769 161234888 338783607 623590129 887522157 381825950 402995512 372269163 876681090 703514168 894017437 886642149 941868162 255861266 291401512 629824711 962073465 328083293 483090321 184939500 521221837 667533949 857566751 699035407 975905643 293079176 890109051 975479580 987123723 481399318 555289403 108572930 570071454 229391787 585804789 721491255 799012696 218100572 371276618 566146973 988578873 337284505 857324750 379931966 496391824 107194018 666537365 716076898 720140236 125114578 400518390 875229117 895903574 745976507 770289840 442203484 936410889 722946640 917409498 214673041 807624140 932955187 979400971 543860021 849087783 470616513 514174914 714703226 863008919 553661433 711550697 148027347 724337425 563168695 642444469 227550557 372659190 35263510 463680986 857924279 935945035 145555499 733481292 759774328 938348162 802964368 879370699 536432248 780113893 115374505 804485083 893502141 946633565 517372300 836112048 217472131 951557238 940636466 996441738 219940892 258106577 682871006 712946810 482495310 944838482 260373258 433663184 838942204 846907799 99449294 922407217 128639971 225678244 867265 644146250 697300668 717201227 544058604 591535466 721165887 730042535 148629413 544711891 816376047 819968850 990058010 994833468 773743839 997936026 363893989 605747285 647006739 732458382 676701893 876088672 198395093 301820335 518180262 671551902 88332645 406219368 653853296 932151862 798903045 909337421 210530152 432114024 448435987 768626421 611930173 942260355 922695697 955926380 113722443 524104389 51449094 554303384 500975351 846925106 645822260 718331879 105074395 318342098 521400883 785097048 787196116 963340406 769977343 806368413 630984032 774204858 422630645 514408790 31235319 733869778 321134114 672698714 386142984 522991179 370076183 435182938 427933085 731400528 434908093 755875043 662256446 977220315 552798324 917167738 343895771 609628765 189547922 794322800 225530769 600071261 158693173 996688487 814139443 889819662 89503326 751629875 266612663 635545874 921652601 931554003 542247675 969544435 698883659 784628244 470713974 479362475 438344982 912177493 522623070 943497403 253523637 816706340 88564197 836767956 531892648 695942082 794682572 892218517 985741673 991994790 10470614 643677156 473469458 831715017 400808237 882175728 831032823 836965533 721540384 801325235 860475216 987757194 609630710 860832721 782060932 814316183 201523763 935784073 625416419 950767234 29985005 82675055 286226808 452624476 41937302 205060428 917484369 917939780 627481515 901242469 210193141 766955175 575884410 651977968 639597354 771273824 743880094 817195626 934517374 991665445 181461760 302082540 570956029 670101241 503490525 988985221 844088632 900451399 684413249 822966402 613001307 793885595 66766479 433629393 964568698 981982248 256279879 579900907 786079275 836201101 911750004 964755610 842976906 998173546 927850537 981078674 733626019 757240486 461516129 605474704 683676768 814401705 266824616 501564088 60492171 97796674 385316791 690365791 583935624 885121161 916914623 980341243 457370006 683163662 958679189 978380639 795434792 966580603 62909173 564734686 255098530 627975982 86795523 811685715 173096657 563828439 286566464 563746537 661818569 791119553 48460584 434676914 954751943 968586848 430483516 458708706 334098920 359834598 573235983 930170554 396854967 422618825 947826565 957789803 272630134 639088303 151351506 405466805 15783015 566474046 85172665 782795505 110784495 391322087 725911157 882846831 797470054 927667479 389946000 494294656 847709867 965780036 407479025 802986629 344961021 789668302 714049966 884645140 375518284 699629442 424976717 462288263 205926923 991957468 142766759 644897333 217744197 677333290 686266805 808469449 678902600 810513272 21837202 699102349 78501280 319631447 92367414 642295587 811745546 829323332 488675568 739419824 747015718 849497090 284718944 873250173 20405760 911189149 332884420 786030595 600703831 610213057 478058466 635664964 181384609 255912488 93422384 420093361 62804894 831633517 994406491 997674360 934316215 976164945 254971001 332227073 601362374 803020948 690459229 931580367 461970836 731990516 737481783 825294588 380652636 503637922 381106013 667513834 418545228 998700362 263392311 644880716 366019608 791768918 971334467 999253805 563216091 570077642 38638184 447677163 546756486 762357403 991414881 999996351 130572205 220629759 347166536 756556885 979688376 986938811 907268218 996599442 183574463 593466872 745477856 869614559 917073286 999094773 732784477 865759937 94275645 647484382 406785094 930096180 158514777 458464134 139280357 190414636 244992772 873078796 751608257 844052720 626829815 951428020 452608983 581011281 805148242 962055599 687396972 853430539 199439213 787460165 215074028 324904454 467558581 704396158 424905990 934561440 147557380 366931175 373025711 475418636 615541030 914038151 693017995 942164115 242802752 413105097 176729458 483808616 895688482 948844571 952529519 969410212 165549753 636117015 440424863 502977834 667755527 829371507 378049648 785182359 805390769 979717560 700744114 756701002 203375236 649165790 613441500 658710681 694526479 778834424 91641287 866413728 348349590 554550596 736766013 864082983 625720318 722294363 497489003 996896887 323332658 642319138 159969753 594967441 611239746 821809784 476073968 832192958 436804293 633487148 804154128 921674334 691416106 747402399 872906204 923930838 390198637 756883886 505089808 915805818 654788665 655114719 598488952 783178655 820727587 870303509 885314305 949917871 545268980 692082220 696826761 961339383 885745545 956344836 593677737 798480403 212172696 541871497 519337454 718300607 775625990 838623962 884828026 946067447 80528830 515628743 603706270 746849309 545255077 783969770 144637927 398481995 356389442 416400514 568063600 724697667 586345981 606471687 767082853 930969639 599728874 701287675 855694291 936121710 252756272 398134458 231473103 345426579 442953633 790321188 501455912 967282762 805181951 984841924 455301541 753842357 241848216 453446714 433647684 944509147 52429126 867629864 48301707 236809723 8835665 510129296 388061626 648914080 567374426 746138250 231472923 714507294 637918222 799388429 40994534 197937284 692468121 703355050 363950910 689188651 749561145 989536563 113721800 823835393 821357911 922235323 666655864 686910208 445549381 798202484 560421576 801337747 362867052 628450397 462576505 841142220 900254087 998190236 645943127 956956163 817672391 983609775 127303310 919759786 991855359 998240780 548680517 797377793 242150541 909766907 888565851 947874453 169926147 336152273 851526969 915020352 217243255 883706955 622008647 763581755 363501558 369959242 137046876 975661357 168847691 718076304 580770920 798612366 229902237 781544237 811673093 820729215 581954479 938394106 219710361 576675618 911403325 979340357 471018316 757537815 239344143 608060294 838839011 857960292 278996170 664902702 584105325 645437030 691588866 723802533 548648416 637452367 175926434 926052827 598125981 727509315 946771136 995364143 302913818 715587129 120366357 412364181 433076729 727340933 156055520 490469762 500724847 826747658 894594536 925611196 42192801 455670453 54243140 432157894 168026367 660203209 416333451 535638091 633557684 923329502 739504967 874175120 343129473 917514278 104272949 151252665 112731552 302805518 613967371 745973842 103128414 291742542 648954414 904582506 482253736 713471872 551064198 798273399 726022542 798324162 735104932 952386974 297532711 946437395 498839255 752035134 654465913 908988049 386179212 716673904 265678470 776917009 469245862 979457832 512110364 796036315 574622931 925847206 357027057 654971680 969768646 981952255 832871441 978224457 379606642 531845841 652602864 806828681 269267054 700411353 25423099 297435075 148727940 781355550 5647258 937413723 677239157 848202913 85687364 833995034 172501824 841961244 987440001 997239626 613167442 746608615 133481405 574258164 345679495 444891273 597978448 994920206 539416575 650303817 231680888 931307923 269991453 795834085 330324847 752573008 564987487 996961446 678643514 722814600 478955603 872952433 546515826 795456202 213599926 378012123 107674135 293630043 355405724 797192644 392185147 925034365 328351467 412315431 220574836 820669552 412132904 969157457 687007020 983740963 605207349 818227137 878182850 974135694 345054148 934928424 621027541 638463287 103503231 241339511 135658701 904957440 712880086 987530677 230326833 848328854 609467870 658297978 224159908 509637037 93806776 459952146 73303786 999627468 29677171 139877308 236113707 854156103 895272435 959322305 511127720 550779052 847445709 948152249 932016184 985913003 359156166 754394094 787570905 903603691 246964250 883092660 692342613 743343621 88316270 245590589 671967145 828268226 362830076 365798976 781286749 881306738 154326227 355874439 723720444 765077153 450437231 763295653 37844381 389383238 389195950 475313648 500457021 972559976 517724778 758990778 967555135 999250854 196976339 617550233 769602006 813332394 864727735 993888465 731862504 873503618 282793841 336888827 341133286 511735550 378241350 785219228 738393887 813268913 759674591 857768796 964078923 991820448 356914208 463052287 894727391 993777397 743653197 818486453 84732758 617061320 766173498 892577388 80875626 608735268 494990545 745735210 490364991 492695960 870736282 904007361 81575100 995568643 315565696 955380396 894108610 969847881 668797135 790881302 565932648 805180865 723887200 990600291 36487097 857382984 460635308 826763485 741223178 947370973 105495739 598425588 649756295 870076733 536028247 583287325 123248743 832105080 915569380 922993702 611817352 674752033 44985229 89220997 850959942 908948773 204557539 957653577 318315600 849308078 242369826 592397296 467312708 734388792 555622700 893252238 448431365 778263287 378577992 889967165 712947387 785522292 80931857 598279510 274643657 357253312 7174267 595764806 654107012 870323856 374788076 847711487 362800021 991922277 202360614 455454323 761229756 835716389 539766514 905554336 766148230 984102289 948189262 951618153 248156824 443425045 385384755 752892988 431607279 464442553 735686497 752408589 958539085 984136301 720203951 844911159 182730360 293211357 647209287 956319001 77843211 80836683 88573492 946953139 261143398 681969751 809335196 856247972 818568899 965645625 220006749 716899522 971763104 978398591 574191789 978777758 543524858 888663856 653378536 655207578 186744568 800560714 763662928 893440542 379665658 528801190 792329364 972784665 590999948 959946515 150680096 227666676 480407873 623283935 711004458 799167615 155724701 202343179 657647512 940374382 984059101 994484710 244545690 923487176 318951108 820316557 169324078 809263035 611873958 661149922 227989408 426545641 741119311 796098886 622371417 930040951 684651220 836095764 96586453 865810929 764330041 970456742 506044665 508112125 934955869 943427904 236730524 855705718 97650252 375659441 807185220 970978394 807742527 828308004 656705804 722812569 660490254 781330749 673752702 691043527 617032774 873600321 474044279 723263302 707772592 802366537 956538764 959052269 313114447 339360340 788694561 994948729 208371905 432132017 107943490 256617011 141891201 556686125 108104961 623505425 572740029 634291257 575508400 884693510 535859623 724864075 159194651 320097726 549265628 707823291 646539943 937640658 478712874 912920392 896946153 915096407 398678359 639205477 684466549 792095528 500442736 968089506 605814909 703551789 828745912 991596924 720054777 925620712 566459742 696550254 289235096 832821384 967144359 989548833 566579566 655043180 264374960 389591339 972924361 990418693 159272039 755304261 971065946 975324228 712342675 905549989 790885174 856595743 49803886 611296546 858216481 865316633 313036561 866871337 90628167 369485709 195495729 782953579 521238487 903561985 727805585 984658336 754684504 888864882 888678210 993466043 96521969 389787975 492886239 942471121 786755044 956353041 335742748 414658771 635620443 664090136 664317011 915236073 240043711 951364816 737029167 905140674 778510523 959531692 441583534 853008418 819734772 987819495 854677770 915792897 866775957 881412852 842455647 935646081 772555584 996347011 538810787 573955835 737301671 749503871 938416158 974627968 511779947 820222186 638492120 917919092 157854544 446815288 712410286 999391789 973143731 981617172 224700303 262784149 869946917 957111821 589399430 655985819 394307676 812017309 475098113 861608105 948713017 994816564 839850199 862324852 559728544 619874893 389767772 936392480 779297400 874565731 149473105 548890385 320180848 974467381 33829203 421926150 405420870 921278876 474790052 896600405 34951358 825161006 471788771 964747106 791439914 805245070 551920593 755594618 617856666 824639643 733683351 957798149 962832058 997822441 78137865 195996083 302465468 904273769 856580869 873494376 503234420 661337671 695161318 845330456 444502134 944158588 615956663 690564614 564467436 904652582 764713263 976993452 983421977 986762045 860774803 945348505 695041872 828540989 487646791 706745931 345301951 485759191 738778407 789366351 850626577 917462008 18190252 477017893 162730112 393057516 77126137 496040669 499450625 736788195 866222163 935277385 285010724 595405987 502632649 791854358 730950844 996334985 491785590 975003462 402599801 858757653 600276280 762897929 749751323 974280581 73048089 102804644 560188276 949597987 614924235 872626578 520989592 837801801 622283306 743022198 582687993 904629327 510574392 577272066 649180017 862465555 396126267 730309563 624485652 875465042 750457164 889511233 575825811 722774560 333085783 431534933 934651406 953556833 471667654 893315797 133876651 813001852 740795425 787997671 544019077 850098230 849571176 909832016 736739370 915853220 658131684 675185623 806889690 937824929 764551727 906644469 706873377 726257165 463501586 555920082 465386337 900563376 921006596 923737366 199505133 595585536 497603782 568440183 478784308 780765126 998566667 999963417 419845747 872676846 545834316 607068383 725015422 730384175 295954322 331961268 74525082 114342693 680350107 852292624 266582606 860547079 131860964 452363872 692913053 784270784 219583613 425561671 83809012 194656125 856964506 880554048 687126208 853602706 265951666 900833544 51218485 604927538 901386864 981622956 790226265 813168997 68100467 550572040 990550222 998631357 590172819 885135590 730484936 859816154 976323220 987742653 382977224 929806627 202507970 529727097 192240464 426354842 528772073 907383126 66698107 899466793 397366946 723497599 596822386 620575879 768220856 775160867 968389272 991761978 496605617 746396830 291569088 929294445 469098023 831452009 258962804 640140870 961857236 972011354 287005189 986266806 656097491 729701188 335130142 449819134 127611221 198868504 3830750 814142471 305981311 899663313 364775133 791907176 705202377 812629540 810222953 993995052 489788717 945919551 760532870 859465526 471284387 804436130 437196448 956977531 498571912 540856927 846582973 991689117 397066328 457858808 332336540 909362369 142574215 454756547 747745649 963250048 173624760 906347230 342764743 697139098 160060058 370863253 534381597 635329743 210197392 986850240 434362975 713465067 238549624 597638520 337002840 621627162 486502031 508708487 897436332 917046609 723523594 981500605 399182160 987695718 326336369 330771043 679575231 794417214 426926934 903771070 500758377 676555725 701991701 767431220 239744650 729223456 46324541 789064695 832776346 886315918 800846117 881738002 818065144 854989083 450458999 735123976 442720763 857258353 81087846 224365022 933038318 988355169 583717464 829778644 810554697 893066433 491690537 746836625 811882921 852395714 453363342 499913216 370677773 708769990 618965896 628617100 666951417 947378139 120814071 385602436 774885516 921976750 459620838 857502708 654958537 708930782 466769906 657168380 130141290 587415871 538543283 805299441 710883145 991693732 982119382 987063860 893002330 901571560 161523562 412483905 395713581 567919826 448839844 735522945 703884248 753012111 44782349 457699716 431342694 888287056 71346814 766008730 153958224 685758775 944775612 961088736 99832252 763315992 112997552 145790825 846127258 890968766 179251729 948333858 888534888 945381908 611305222 840177223 666784959 930951608 755467524 866049514 891548035 981788485 709983657 972101607 217525131 371750237 621880316 740100836 554472922 575503011 422414361 932821611 810236384 817481824 83978981 678294901 986823729 995994501 967072321 982319716 921346526 944890246 868116594 951699378 756481875 865998850 518200777 518986632 410462090 844718674 749048425 955090223 526150922 622872520 7050798 517904378 743422698 920088581 583559900 824370855 842022085 977468886 661511695 700134918 877666944 977453377 368628755 784948371 619701814 741610684 214555863 325116252 562367290 986316125 274552972 324111129 894750760 989856946 573800731 602180985 989038238 994486675 164078983 324663106 344795956 872572452 851538718 911041301 705151788 971660023 569159330 989226295 34415785 227109439 920345680 923552346 100300328 146455469 89812655 623905941 943462418 980429738 423166376 912546088 889727801 967483103 642227322 896131403 948469199 978690750 83420316 134780171 597424430 809812238 853573216 992592493 856342691 901266413 606293140 982863795 407528240 686546015 634745784 642857870 332445267 932129860 775614910 829540103 723395184 767934177 583999453 908101851 826796853 961894679 251449088 358573667 996980081 999822196 37813735 569993686 546050866 711753482 582431738 622785833 722863401 891948706 408710530 503180238 406728111 416421013 631476581 974215568 283293451 878529595 988769660 992785399 748616609 935490537 237074052 435042683 579589782 714349910 413011185 415982730 737227469 951669748 731320082 741729386 278106569 737785242 839184616 852047343 76431713 579179909 481389866 917018707 397280346 931806317 253065843 875562737 770758173 800441622 37478646 357153056 67242440 393037862 140530425 914562624 212022995 967120881 385361796 651411905 940146137 982590040 949422898 966307449 459999226 511233306 625738391 786439757 75499829 915099538 131032674 390654083 210363832 954950600 903160081 954856267 839964504 869201458 991028872 995755059 638745841 788063419 257606845 681455029 263303109 896636955 413909245 762759371 809907991 823309807 160410417 234344968 207463148 433746130 311565921 970050322 513992712 530713117 419642562 709249502 295472100 530621915 119666239 233284701 933453704 964114824 864986400 980234820 273514551 377148937 407016958 435825056 415513203 922968282 512226152 655888201 250069786 544722656 314858914 581854458 306094771 710281189 877549456 942602133 459125411 668675802 17927825 559458532 641339933 856229934 328769634 511610802 109495893 631328941 752924518 809357533 874348960 958108319 133549243 970775773 173208801 553539525 706495452 734501440 581331871 656225012 959319230 973536554 553981177 962283471 730564713 854217880 300491666 442172168 1886874 913548859 561126870 771401256 262245718 960990920 715516178 757954663 912991401 929501180 604995994 867266716 442085483 839054810 101000685 161674057 573358286 670510958 244609120 272257757 850038900 919015805 540310693 823301476 687061918 988628997 793668750 835898498 415315889 738070796 729365765 799260326 702079837 843631284 240954762 309645765 998856374 999845065 931460484 977666819 930264771 932559842 701368520 844931066 192036325 740725117 277826973 623597097 543353435 747620238 38238807 779420154 822479813 977424062 632273998 852311562 928185438 978800096 971300027 998966877 473098659 588872833 347703966 588941392 165009116 438651555 608713587 977086676 683183931 692344741 271956579 486032974 3944700 668346720 618705023 731465211 527589775 758452210 740175398 874328970 613598700 884092697 865884718 897540097 956907120 962900886 627662542 696598111 732328313 764827405 313300916 924512004 791401872 912984369 796359946 814478888 106782393 416606239 246140370 335359460 683202373 918945827 152131613 543986491 86078424 324323044 648234328 791764600 956529913 970754295 245314988 693402443 877890688 904962382 762285925 858830576 714249986 839558876 771987436 791464511 996338693 998016207 90145112 320554802 168886847 253265044 844704731 878556630 99603309 913115801 285911051 479871468 36176708 835910647 489463504 750573711 737070493 808749189 4776891 698387347 450244153 670791417 479378148 839719067 122574510 495289146 257959749 946717907 46389001 518348065 256061627 286970207 844787924 877345101 403879691 901791243 860305291 883160072 634192691 992158445 141157570 272031660 269167491 550927271 744119542 749328568 121455223 450120732 268277261 552876561 486813631 700976138 39108998 745343648 966994437 994181510 368402007 569324799 803593755 843341963 62142243 78972966 111536330 308978565 838871131 884305249 805543695 854386768 13997355 603525120 772283610 982117126 27142439 121517905 807832700 870253119 515670950 764365895 362293362 822662792 744228276 924953480 491784500 648544051 369267335 540142992 58022826 652831366 521348112 590961047 270177044 617077633 113102894 251876187 834233628 997374206 681527239 817233834 791158183 993336537 287910627 340445811 480019144 645928181 605819759 856365929 463143593 549203703 795289582 929236745 64604126 279771777 20006501 668771285 505797554 513146175 66482219 422744546 409578859 936896647 794674629 794991556 383873999 638923222 518769181 737671967 49448374 859069075 948105535 978601070 624083817 847202971 753340211 949418617 493859389 981930171 118455200 410370220 624035992 971284945 870471920 884700508 706336454 972475182 479560610 874334508 811460098 946293178 975507901 989772737 912603049 931321782 372569026 930826356 932586138 970009507 470963467 590007194 573579707 728657954 303407635 558631488 760938672 882352548 824838267 912715687 186004039 489588959 838464133 893128645 740576519 981543314 397462474 704764152 845570653 917976475 412659125 472415673 495876930 981750647 997633935 999080880 270121586 315263923 428488275 668304753 116051173 250245754 320761011 801041260 112046925 751504346 522990081 543695384 306776971 966312640 736646555 873263797 26886916 832249163 478862368 649639511 426811340 839226213 247919020 263404548 97752947 560922991 94599648 525025638 813416956 912385493 194804674 811077364 709841064 800299845 297537036 613523006 399729936 474985955 998275655 998417861 629223374 635881677 663106243 791421696 887424189 896499004 651532573 705479935 521976456 603099710 615312375 909588160 826522206 989206436 331299129 403542160 906911545 956521667 33394487 263230903 10232337 335737336 132291240 500167271 337057651 713100384 805493671 983106620 111921354 238494916 322827051 386668392 429692310 702610717 215485091 318555572 653833833 670730297 963025506 976712426 500483755 508854741 714789723 763867959 649206006 849271373 497429631 864831378 823845528 824029888 717858874 989179690 579608289 706141825 838697058 924970012 270647245 536830178 373051350 872361335 910343559 958604526 768812310 966160608 960994647 969664045 913633395 914488761 566832336 836166012 455536073 582967469 215320499 477547193 158883365 394273479 150799431 949398964 71097218 997908898 309020367 571313864 945643014 980045245 947851818 977287833 216341327 861368926 281387809 544394635 798037983 877834961 862329111 875275211 869122742 924168515 348621431 850331937 118864198 631824410 81303077 999233176 393992243 847743286 763591376 806174977 599189351 985507093 993037781 996931788 741035723 780217844 318797697 669588656 487636053 552214063 220224424 710872559 482045023 691601866 883803157 903337866 497089568 594568323 197664389 530254132 589483570 949611754 84445755 353077342 171861104 245528157 463016872 536833318 203244828 483748536 126274433 166165404 233647974 934676399 698380343 915033731 415686736 683505754 295334746 477533951 891116640 906300323 376219877 938417909 681644748 773452138 46042358 852768398 343368321 979101913 720995739 733453327 520204669 686161326 39822368 589950136 183713071 979571198 671118212 836782833 991350212 996538017 173257529 579004576 509968224 553610622 42157616 813698099 137306592 901902473 595226235 612627718 723096266 963461528 793144828 795817413 762455356 908763879 550542366 603885447 584418173 935196386 74738812 283104460 912551353 968280633 506186537 595839765 117743719 682407576 769157631 917316025 66526437 361742041 355636342 858632855 56166493 319551837 254631194 685436398 961276780 984636671 871190678 965753105 176164590 719596252 782999756 848157049 995616052 998538338 559752473 563896758 106677514 663277720 634108631 753229106 125732190 300141358 367747073 530704638 789510924 970456304 946687199 995672016 458295866 501289711 709776783 741620328 937248245 995184759 850786512 855318994 87728555 382657901 871771353 982851408 638542068 965598537 822988905 884774301 896340043 899701531 57483231 819246446 987734440 998986062 134125753 811788527 294938551 517067682 928830468 981454482 328721214 710768836 313091088 380992234 138675292 227278949 991562777 998985087 261365132 917468112 450328090 671489905 182942375 676620010 890021684 933358898 157699514 938332745 835714027 839108479 442000967 885042091 701360153 822152730 989574462 999771999 698732391 813428729 679227249 926209378 480185870 575846997 534107489 856299836 513620024 908996467 415177096 886979543 178272206 777278073 916561517 917694522 788166028 876184018 216719316 307378704 611500921 741812089 61860170 845510803 714405698 924000112 604188570 961004047 913503456 979293547 867191173 953694818 68886825 110687408 875097792 921512109 413684462 829979542 978075783 981421699 784441531 823026711 471936924 833738948 554442032 585651789 50832477 537983347 640692211 943722474 879062655 902122657 820096468 962917611 893637628 912820986 216426729 661625228 673912535 699587634 265481352 545658062 88638354 400805601 432928750 711413800 366652369 805047418 597402160 881345875 18583922 258065662 307998500 449289906 452655180 831276708 758911382 810214958 149820945 216783789 42105599 393471339 7227952 478993408 640835363 876108074 299707741 514033870 397448333 669348644 987109184 991112053 118509429 990685743 263855822 685267920 12795674 195456310 678171890 780704519 351913688 388163763 315611782 966834526 114028898 837497890 71329392 670021069 351484556 556168820 850323076 886268147 650747581 663149854 17877552 636968590 150270791 920365124 853576736 949512739 605498222 968530896 7738883 623730220 576994370 710080884 983582059 984224460 423520237 928660538 656626864 871407283 724188135 940632501 848527096 937021152 401580176 747085179 626087287 932157092 598240102 877859994 448681337 872196186 383542327 580699055 303858226 863515619 336608823 554378446 196683812 720388175 539183838 833720105 981513291 995364749 164484360 750769951 307934321 591002281 526282151 996394174 163938135 617333203 116005561 409361348 284593684 505345857 380097888 480371355 715426516 968700673 986821115 998250139 370039952 555541694 595801012 933314382 30940125 191751583 421921066 902886128 755380194 842066317 767618668 832522767 394299807 444018774 670180401 891822768 639972791 652692111 919379455 932033683 795702425 906700271 358049181 539395047 365315264 625873148 328932717 508446900 549937079 969484579 267198172 982742076 21630971 826875584 629858644 931101003 377860600 945942507 674099068 885175425 21953252 160799500 293206403 401007548 430190686 631405658 596398537 599375792 54615503 238399193 217810433 357711006 293370844 981464612 389772394 753417079 445442112 832884930 25140497 140721834 197279687 747275678 387435671 636122571 521842835 523532599 54555900 851882184 6411416 245203185 882913725 948685909 841203925 965377901 42836884 497114383 929745917 949930188 876492760 928907741 780091149 905359064 953712894 975773843 331147733 956433548 231880244 820107505 70754963 161443540 875822990 957551919 716758129 803357510 329059314 717083606 155246842 882930789 782924962 786131932 127691211 172603859 550624368 700049333 621777741 763603774 402018280 825140793 396661868 601984367 140242154 317860183 255855111 959722510 484747314 775317479 916798276 999896022 405294170 649342606 671981528 800147655 635769866 755207001 834973252 851216262 680511173 802891805 617671665 959186926 351589727 925385116 32977378 95201273 302469424 843285991 346227541 441405968 524830424 789328699 131677749 229943083 268040328 826279460 246020202 381940949 837064223 983166711 727477943 819997045 893492704 966047939 70268080 169935560 76757216 408937993 93745814 186942479 576423200 907610075 967414449 987680097 187406086 272590783 739064560 777599114 144253383 660978118 920949314 940438936 166226596 661702599 369395682 962405770 542308894 542641422 653886649 867104299 355117000 466859402 562961317 730227200 910556198 920647832 225252272 615653458 456106087 994622419 218801751 254523054 345117063 375809504 538829031 868568436 744479859 920914949 915281390 988736825 910562809 918777399 90589404 732093215 994342996 996194895 791611710 961519016 196842036 211745676 944779906 973081766 670274892 808251935 858988823 963725506 197653210 234209419 702193563 780034388 700935476 831853200 166067434 378470997 971683792 984529742 119069545 661262712 340601879 957714585 836247360 888139164 384998851 620399966 215207968 279893638 61259331 733289673 794837955 968037152 819807089 890207404 677266539 686827576 117999913 373607438 596546434 727483143 946019955 974565179 585093256 691011178 979574848 998808996 766558206 949238115 474815487 723304902 604763814 906530201 120504251 420823337 844302679 961292038 849818373 969468878 944186836 999290523 627869785 986640977 160442920 615323441 109687869 243911784 237391899 330763255 79291416 792863603 564564271 648356485 344204590 671272123 326427119 343530651 142801704 860555707 67811412 82824314 482861403 951799688 776068214 779178820 161684473 478348601 258166478 680170723 590684155 791064019 462630406 758391898 186552744 565053111 572177969 719728126 997435171 998923359 308617933 393714431 32044600 166608604 333952525 932517948 448853644 944639697 304120727 639824982 839742679 844848966 700922912 877037366 478409162 862492265 358746933 422166054 500738612 813645397 655557370 866938389 853868170 909478402 446302482 858103494 953237394 963884749 158793314 289451258 765041093 782336823 906333901 958374525 933640764 996856158 502419073 741989548 785831249 904534564 546168976 757815705 596274517 749652766 808494326 981262811 387082840 441804369 738996779 758707999 841761001 932061913 765406342 772231175 715358922 886059177 553856700 664287388 816915109 911187153 842666630 884643806 254269365 953928704 272845473 495136257 661152968 964353808 339187807 444233980 235735638 690242054 379522753 650980418 427816762 972725575 661389566 667085403 778143963 796425893 21840523 180286007 83161675 980022159 228506993 844229977 849107577 931351567 919630240 966177818 22299347 46308340 86634607 850211762 507643911 566305524 537761332 551483812 888837246 954336478 818853962 841777253 706941028 717816224 643883269 893489617 472022961 658218516 52858988 577488730 201917492 559609741 638073287 725729272 963475865 997756174 390167904 436465664 331517905 637047118 623979303 756079000 942828092 967587800 339524465 392356240 32576350 484075322 793214436 856953937 24491244 424600121 946325320 963898993 549020126 583598405 86231903 667783781 96724624 147991282 489574636 824068643 880863970 943313668 439600297 911400602 111142551 845232511 206098554 255377592 986423003 995714756 956353198 979676623 811194631 965956005 951450540 965796041 153042389 165683920 50911447 763882946 514423338 930544591 796197001 856631245 645515739 844997750 884364291 994594986 581420683 775185547 990023697 998652480 229381010 382500575 530279216 593548275 949738622 978665170 582438634 695105785 823504852 843453973 546247773 927343879 40879565 69463676 771040868 841818641 696592166 878035759 719405421 975716887 999736581 999861079 924137908 991866117 990765780 996405687 186567642 608084109 398202821 608844549 793752083 971414874 497237517 832100951 573835488 683248305 434629204 868518650 839970122 991178420 502885643 800234129 539910340 757135991 42788063 552956893 210328959 882476760 341133711 482527994 484636509 734988706 450917687 612550513 400801880 519596771 628643109 689288440 351968085 423736156 151037202 205840809 416004058 507722812 773841674 924205645 812607839 978169906 907076788 935008414 203697551 556604620 790263455 852159381 30813390 972271051 629614823 943963798 528216455 576691412 200727725 945916816 143131230 527501255 560588673 929201166 351332240 898341960 318583830 412985284 136920388 433673641 99301668 277625958 286121469 859088992 826998320 953062465 966908199 975149745 938214192 939271215 109602806 809476778 225701461 599569190 963798693 995485298 734866049 877885174 392192812 630844732 676328599 815268418 152659696 345391863 603560228 837534786 491854149 856225474 411096010 948460029 855533475 870268214 988190003 991423545 60824443 558419243 330621328 651032953 194536387 316045535 473987023 864773264 791046977 911695486 641115640 929028066 319706319 354305457 573864700 785773525 986441301 991464855 294573770 767148952 44460540 228829911 650508614 933643746 929576923 937258667 844693242 870749307 569607169 762115789 145388378 675527594 811876256 836895997 942839781 959304315 185050275 736843249 819226650 863535294 549178522 839228861 253758428 407107587 529170498 678452460 239672654 765523745 58961665 408841387 761155490 924869108 528749226 711463300 655678226 747339247 155813894 816773830 271689726 353006382 169723422 329971683 758734886 900517449 294311898 385869290 547248747 636107744 563990387 929982402 603740484 953787040 842118580 844406080 880565101 936478965 950973025 974453423 523784308 887414005 481970829 521796706 66681246 107373611 164528331 693560385 118907686 162973290 318698901 518520987 830676879 993463195 230793451 776240865 439998714 669818603 472694567 703168518 289423080 966924177 916998633 976465917 189447111 493506064 901384663 987557900 840814176 942314510 934476379 947833618 994582826 995708410 1044203 366954529 20300865 818733997 21175470 709446726 747601370 859230621 721099652 917571828 687103939 839370224 105234541 558933602 145079842 376088117 400782501 850651193 90692448 342210827 496150972 715742093 372360242 442966280 17625087 236296866 88312974 999002113 767120520 826367384 420366842 510729641 820730782 920408503 601744780 847505361 4673505 935821619 5768273 181271335 976917682 986096287 395427862 942094613 210134 705149366 250509568 698902553 276121667 377613357 719421008 746911392 599973354 701169380 31879625 76928448 984281659 988330740 62279697 727924578 830538825 946891541 583729217 605850109 150281607 247669407 783526085 799089720 75130582 949962884 743445024 974871465 5054351 60523725 404449999 427179871 195021913 879686182 216439977 676825594 754784433 932208706 654435959 889264547 555766377 814871949 924641070 962177441 680993356 765673304 354034040 943826237 171542691 237292218 502995292 680876947 918391300 952350795 767463710 944559877 215340687 766298093 248689192 427531477 933941098 999810166 591911651 779105179 370408247 951218352 937515731 981305033 833690298 963076236 260512524 739967617 178672820 577541006 309083042 581618940 518468635 944731147 249886835 343836967 556588501 859770676 663835796 879882054 959653860 979398348 696219878 698915224 524980750 773395879 594707110 832991907 388194901 757402570 946432193 972172787 244028920 712575087 484532647 825886878 935850966 965604413 229315426 489831534 255357656 279592739 300035901 859747625 826997809 924298042 519533377 739882986 378882612 407985632 667184783 971525131 608489778 657200576 82688238 725635489 519526894 576252420 852514015 931121550 795779040 884035551 493639587 711037624 709648512 904776601 227183987 453590680 67179089 718913395 766042745 875711093 103905538 455982211 95419033 318630811 416424865 624773553 610508754 661448151 854588791 961114536 456796277 481114841 258038464 895080297 88114338 928227225 87475038 431020435 111571827 622246445 665288126 746550144 152885384 202800399 535563470 551140116 371217944 567184304 867769492 936152793 364833005 703537343 109206289 929200451 11568521 421880818 221985383 766258299 959263065 963140085 669080567 842046659 601451178 926540618 445289305 503036898 99566055 891306030 437178751 971718924 393285671 895340892 513555250 972240422 391841547 931555050 737067096 969798955 130144107 945499497 46849262 726062624 954033552 960216481 495611806 692653074 2241032 75818749 396859220 873663342 115395772 343434013 195621591 735387527 371013043 903129503 346737184 937152134 437550103 760801607 838995732 852969482 758525063 822903534 499078086 961238537 472066214 909169420 697793528 979354140 323073216 511934604 846648805 894455940 435947170 523923298 292922646 809602986 177910635 450231035 293176201 798976810 509057095 550184309 363740910 802736408 294069879 733056195 992263444 993222838 514681526 799882755 277228264 826285467 971635013 980859767 2488089 302688712 45374582 663434643 736624122 892358119 578939084 909086985 728520085 836121595 505651143 793918278 880195552 995496436 599598974 869106037 884532136 914185135 665665988 944340048 1061339 744880916 400481855 845619511 91599443 718547720 75901670 289683300 659442314 799576247 806610294 973356721 920217954 999713494 698484769 867915451 999201523 999356648 524984039 565970901 100283599 521440536 74969721 777239413 775267080 903574589 750360315 890633440 713184624 807897993 427250465 750542391 918824077 953304414 341541909 343064938 709437477 915876595 258932456 639397917 357943750 499244776 433011082 442988379 97063514 588734138 159214498 751543394 402872990 531686733 26654789 118388814 116755391 134671159 771166601 801947097 551795815 863980933 453082137 928032157 985388619 996222614 846658457 999160768 668802096 889130322 710172851 808832222 716535096 721794178 74163898 726841395 838420779 928275321 227255592 936658244 86527269 788883645 912441392 922151898 846232574 877004367 695701685 747799547 396666437 927350890 862258153 958243709 448275257 625196954 264621302 743315466 766271827 802095599 34222891 791104734 72938163 303175801 79125384 98861114 358846164 677394582 608609587 611359529 3429770 863521545 296050151 963785340 258147846 826225844 690619778 821976828 719585090 873574269 32532309 139950016 173595937 593740352 975251338 979094124 965404918 969703313 860537035 911372860 803794901 970449075 314827331 671498162 10294232 956352458 915693586 963210658 382229006 863502485 431630950 856880841 886785574 888740744 844361187 852283602 2306677 192049370 132076750 883909763 422488607 523766419 124971531 348986038 320619842 425475359 333652141 564693802 988330132 994155937 649320946 830501052 168306466 984655388 398314421 676406753 210017589 821148447 829800628 913212260 332796013 369137482 571632414 856054505 486379515 956711980 159076343 481652555 780284347 858697353 837352770 948182966 247012401 498239238 464728502 843026323 806858732 899742541 284697301 773612563 237468495 998237065 576184467 670888524 906436644 945302018 481466468 821872007 102642455 986676718 391558321 646409343 53298199 247673693 302906209 334465198 904008864 910375166 85046192 544427267 567933879 674158553 779250525 919495838 201949305 476166759 477772589 688166042 798872847 821174985 148069164 616025400 452864529 595639018 346394605 936164121 248620774 767764995 446715384 488757780 990122287 994149652 99333174 517005739 634481009 968470645 963523083 993671022 237969649 583155686 237208965 289551222 514141800 797116961 596070444 817236481 521434428 859593586 326299316 829165129 878506156 990284578 635381336 905320819 174399230 233007819 960400817 985372325 184530129 577077642 112241726 858145093 975605235 979130652 241130035 524978935 905380831 965098898 174778913 624028157 467633831 758258240 215971629 877739272 915791439 985861285 215328300 559605034 315525214 653041947 936262295 959334152 742376124 764575410 241565675 397428916 125270258 620690126 227441024 411815465 764057524 779756993 781838815 895437693 774805702 934322379 455170732 894883642 267857921 679456257 808304697 854876683 504465051 923652558 503794152 538922804 584326928 912304989 3709874 374686249 923519880 947207379 355139768 814076381 245429957 531532699 605652608 961818997 502727307 770288000 293271334 958112243 69631063 358771083 415345981 600805447 185791448 251962367 137993093 452566179 719102406 907813582 150836657 969011573 39436565 732129384 511539983 516428621 651217903 947763526 755776726 839995529 451374303 485698338 925660095 945143426 887520154 987405340 865490780 979778561 240799242 348822899 73667984 535845675 21899508 313247061 505579796 778747540 905633528 948435848 137982938 146232407 72697117 505751340 497928886 848433988 100981963 196492811 232269378 613202295 27831250 655538228 889553563 935923013 42796632 293718220 124605228 844476132 524646874 837789657 304252991 884119911 914515481 995337335 94746715 700046639 624915944 663326078 194354013 777047844 294298799 767405714 935202626 990087688 382315017 457733920 584969224 956570769 828308533 992605571 559792124 857455610 363492067 667624299 856558704 997766866 289758177 670678690 220147607 739792329 116550227 595046454 432496783 853288455 385880287 751236842 925979646 952776673 871191679 903590908 205786012 859441620 673809797 823898199 205530384 783150099 204606170 779517422 914087958 988489494 247937746 487202718 348832790 506521200 672079266 840155586 867582157 949785407 32742878 384750718 770953980 963411882 262635452 301117870 922216147 985486592 84891713 398457970 121715466 611512177 228406074 496799544 810488416 907781541 845956072 992687857 916649730 919674561 197522424 498801535 268431972 410324436 216858410 935718888 646962740 925663930 297972404 701180170 741676002 821089672 784300464 833207211 805468629 828505128 248440478 502590061 816179234 946841073 58396681 402352125 406262611 930591212 878310626 913688858 471527954 665654821 352049590 858289139 653917333 891892713 151624122 339416463 361530959 405318488 408613918 876999711 496709391 557018715 27550424 715084194 839330105 980629255 637650462 870880804 352295836 498217679 662382684 954447237 590342216 661998358 768170500 921735756 716105207 746479218 843450898 866753611 855719260 881754119 87407892 905059630 581971845 634017762 358133629 435098864 367606343 478898453 390226403 712345442 964512424 993732163 975537595 989337271 755007836 960031360 548000480 564135153 834815717 907929662 95397899 641159977 894990822 923087335 95445920 565353555 255674954 701817469 638863215 859670011 245748745 795126216 312265599 786342011 762490335 842632710 323995295 606337699 280256265 918862514 970438864 999588567 158642491 979903237 478252290 512999461 958574810 986671485 585925721 683322835 659716971 794779382 445624302 533316435 393954522 808130726 959130048 963161960 726950527 867891280 711639356 941398111 623484576 791783473 784356306 994068007 638550263 854352177 827612881 949634438 565928388 637022578 366483900 907199443 798400584 858750590 423364115 473099534 128317195 947570840 990107142 990579138 598943263 782090672 343355608 376705892 918068316 991610536 651908190 839613241 475396374 986395818 253017792 822623556 809429203 950739747 516002502 570719177 273442145 923593720 9636698 527941657 574946641 593828216 958315531 960834508 721695894 927305939 297244563 972580924 651958945 920130551 746210087 940981120 258427547 968238700 596076663 673725654 816221493 934467699 744493814 971265085 825763480 978513028 426344335 940020265 241840433 352404247 562138517 660361583 489924138 752717845 719813832 854098378 240940666 491517809 670113855 736775763 289809353 955640663 356988275 778041841 149611635 609581308 704774501 843676066 159314709 648503916 708541561 720576531 570888793 712091663 352210641 873060019 768172721 918022597 540644006 800346590 963258724 965845519 253791981 749084044 335186843 493530242 665339357 862389185 419723736 542950624 599172605 970906437 710142389 739178161 889021070 914223863 561890460 911351188 254561716 591253416 828269357 905826403 374146526 444709234 410654157 477546329 589815122 640630047 698320562 763822354 698382975 748922547 343595277 588357352 923402625 963557015 239046262 880072329 949976016 969291717 341910451 871237428 995781627 996864661 732992096 996171044 600163201 752474927 323852815 976844114 395396537 596751288 930645210 987280264 163555708 694233205 878051743 949633569 45673379 49641598 96742863 906383033 771504266 782580311 814425789 902664021 616166177 661117171 119086996 858612531 831515923 856926244 971628729 974210962 895936811 905932868 327817129 973206007 306005049 555765404 827810632 954039009 271532244 672835343 149022766 388553604 980507027 983274876 959833649 984049762 389685711 631264024 887101414 905995024 683337365 790771209 286721824 413592759 901772095 903012464 997202439 998488684 807656249 886320087 898288041 949013157 335786783 618632768 211639528 664348997 315247881 690879281 154273483 182321237 717066333 893686336 943337720 999915660 75932425 338348624 189764810 274442641 220387763 987997512 731649555 948151189 925820300 927963850 825372473 945502753 567892912 647344328 734206909 805001107 839205249 992452718 184331083 268751348 638122224 960863230 72804422 766499208 191348935 704047095 379106968 985121987 442756335 814504582 544170095 877709191 733888185 929493784 739297812 810884398 606280462 693261093 213969276 875210730 397017568 522297073 971526689 973697352 137626009 560722934 666995600 938862343 990697478 998948465 680158126 716927956 366131734 487460320 840896787 906339945 605873983 723243698 2494599 210511436 957209430 963686385 618376029 888341351 476506610 509455009 976849896 987690242 871515437 894619557 964408994 988592064 882483380 982916862 811028184 836124693 573891778 746221171 267004044 350322307 353432934 449183049 650520845 742793957 74756753 728848612 779766015 859887384 817780166 907640359 38618411 175780793 665711695 915039188 170161521 461006769 709606907 971690990 167497436 856056773 808302472 874529647 348822127 915644000 213173689 293061033 480772167 776917420 928307669 969955162 785822971 808566153 95667865 787732003 368689837 948061698 510659435 809384756 792525787 965530392 534675874 986623787 619286539 915888472 530348958 542910671 445365046 873203140 784120520 962678118 584093008 793109445 882151830 979442761 880623427 973739893 329514168 433728557 168168323 372826433 319460669 615746761 16583517 463424167 122064912 755250271 729278863 985900534 683257966 864462078 942023391 966951422 816913675 895622179 981390236 990709160 684968450 685215013 209848460 378368081 141956536 716715974 574340393 686930169 316518926 410272430 379998121 665064458 107235293 718242446 85129922 185914720 877011636 930505022 631890611 937386099 798738748 897280638 778367781 980407770 885624688 933284844 70922255 787029690 951943661 967855957 363642725 710268704 413463156 983642540 794265663 865304652 200629362 894316678 49842112 473752736 851203756 881340705 624787798 826459386 619785577 846792840 702605493 943622805 604140325 861664164 611883050 829871141 495637704 874469615 78167685 427467584 104850144 128719621 352719172 399425697 682021084 920282021 874308490 957386220 644899597 682562306 644934713 697261180 789727909 943995053 567726726 966406358 900106666 997391336 176581215 416578834 2353695 618700749 418122674 906758870 953751441 995124846 629760307 972715028 808006737 814816569 650049853 657194607 125092630 756233948 878937150 911753631 141202021 535527625 184020313 825452608 581772363 878100832 762467697 807425591 606947110 993964030 328122335 870880947 535099533 843825297 644690503 927766415 489143653 556705959 290810329 929753049 57249173 398365248 993784841 994737485 345293705 396863300 470307206 911089570 746022864 975812702 395161743 729904515 876731625 896660556 981396283 994469411 37076502 275250621 279139586 832000756 399321346 920433475 964205049 965763228 520688965 805119097 634318489 975739066 93172702 630433273 501276037 563741010 315362484 351176941 839209377 872334235 890029493 916545479 704019433 962620302 948052433 986289491 851704096 926348504 660553081 978024654 909910869 937620889 129721222 513043244 44442714 447702241 425152185 635695018 591981483 751097959 945649680 965177771 937780453 949283200 640251865 971661795 898267914 983502842 965742522 971521088 632767800 834168955 557823365 724193958 592708219 646061125 793292487 905708582 3879225 911745238 781301117 854443799 211308648 216911219 355820873 776303804 746744397 852885342 512431629 583678728 594599294 808372426 861187504 901104230 124849439 699688152 848455101 999938354 684981144 978558733 6462829 117598557 968873684 972495279 323506594 629879969 855294411 956477147 413751977 520121971 432294428 513305304 884188238 928979163 320973095 686152488 675089609 680882470 875878077 941254041 840636158 884524849 831598675 833549554 799203693 865188114 785768885 968468401 924677326 946214349 372684412 489851879 811034794 969721742 234231949 587220081 851536590 957897842 983361720 996779994 652541173 887336290 54053712 449839242 343241413 872225761 986732002 988556145 224946080 738440304 367994262 655560474 597188879 740684634 673239141 673564075 712399003 744994763 343918944 475370428 202140962 241374032 97073989 388977704 833482056 907902588 306055303 920027378 992353029 998401082 796512310 921926450 1484702 877060366 914127073 919276837 669585080 893489171 989611823 996112158 413905483 595906165 19167852 599690884 132278774 918878282 184935999 735990835 963350151 984741691 511283586 552894897 815535622 836382174 270802526 975556291 746401344 963296369 827554492 830156590 249314619 764146492 193789344 695775418 266796077 643482037 319026929 495294004 864280263 999648923 169404202 388556162 389776910 591790020 576950956 905381769 978379756 983900108 623143731 850846622 530522605 912010961 259320466 475634752 296361432 353846069 397283717 534364781 688052332 896322138 134725736 765843106 675565098 879954009 959742026 966351810 666440202 727480552 410019762 594722122 933147059 967925732 46483262 957126771 553050121 584188684 447934764 622649319 334134922 542787013 630973056 913679123 921339317 929458834 902236421 919120145 875113536 928602694 384131459 478631553 12139148 485762707 277123981 531642805 359229451 968228439 189528524 547035601 314992065 454776252 556057745 841159088 311192815 595534959 876950942 928834235 563597087 961198752 21561136 120556221 620222572 921755166 765690806 950776702 987539640 998190791 156539247 606352109 177910264 815193319 259588417 428829403 795643407 834366645 210437665 384097695 315113669 900960021 878768816 989961513 87660351 921071269 203840392 647738563 903893791 909169156 714865493 826800873 336799992 508048446 215468145 836083832 616997439 889665337 878738118 923821724 20184849 240283775 977920763 994116505 353346041 697117134 986062620 988348593 20134377 253366656 236101996 247800087 1531220 562804048 10708682 303308834 264926153 361675496 332120995 742014732 475327062 530076040 147492117 809546359 624757171 710479800 308512823 463425318 483281803 813236242 60273284 579108677 260763765 830267323 83645326 754024058 835843916 965099498 977050943 993262952 460612600 828448081 177540017 375523060 186337839 408263387 829362313 851401565 787326632 804052914 520745395 764870695 853008076 869664482 196898927 236636950 84434569 268629612 674463759 907409563 899934295 995284376 726195545 780693696 896717963 992374874 200282150 352223598 66026815 782686053 191397230 796090231 809101255 996844256 945737533 964219334 597852783 992298811 897091898 942473232 333946337 925188841 736521772 912803682 197282121 710715688 610924009 940606923 159062843 246789124 161062076 429023696 850189461 857847723 112287942 743660148 436529259 478349305 14386208 714884141 839873698 847450691 102291412 154092337 817605080 903758462 297744146 896997276 8473591 278573594 129250105 993672369 573334310 708323052 286973297 705814102 205239704 812892777 869512998 984775608 572499920 599069721 901697289 946119525 760732687 779389762 670943881 849368535 550279324 900986046 557494770 559632745 378403144 504853630 695190925 958102749 720303908 754703646 981149156 993596265 158210667 174305667 656601436 945303420 730719138 751409217 671855770 866969408 929992513 998325753 161887571 668077602 388432260 661844714 137270381 700044314 442356785 563790095 513915112 778477024 83684958 624713707 355606030 782866606 939427045 966900808 33056763 840240778 937139479 977217013 307843672 524984988 418674764 543921989 43679370 995916835 230525726 605286765 76006397 845311013 788779254 830709738 559850814 837314980 646307648 670005655 522357103 566308377 668821898 730999782 58776989 110171014 810136938 929373083 609620602 832596647 349212423 420081006 569014077 855399124 197758748 872733053 615353425 975293712 643186484 715183457 533441042 846401231 611347371 910954764 580276612 661346057 251915562 790231101 503705678 745272226 371461008 799795138 120968604 510809023 157773732 267152499 206004057 286840906 730160704 967911466 103937406 107586577 610744851 724096050 799921589 930727044 180713609 824503317 964864056 987635695 491426143 500741730 46756377 352395933 778451820 890983322 735358810 814389145 927277119 972756455 643342427 908038692 42544136 565102486 274801695 563298789 303629530 370752532 741726956 877094853 521267559 615532256 81458839 527064362 895365106 958661000 550558831 983976074 981779861 998723390 605548571 662958836 270981869 788170128 661773953 832230792 930450617 976373170 117529564 285383080 719132402 753481174 455718827 706598980 850728028 983724136 800044098 940876432 837729629 853800854 973346973 975730395 695276490 985505725 249694208 861617951 384064861 613733816 922781327 925593302 536408372 863166254 324413348 740105004 757691993 764111547 446884360 962667214 404364188 960392413 969668144 998499779 492275366 686121094 355935759 994655353 803397945 903336876 188886222 849569961 680673667 698321154 874297384 998273584 19063379 377185249 184995935 260228213 594174908 956027079 591793734 615561956 801390895 970472061 974674261 992409203 177769521 797531057 211390228 520124418 874929565 980373849 520215001 765122145 483776298 660667299 919319390 932220249 970671308 981348210 900004173 955737512 434902564 888639415 786515180 996501011 388726050 803516431 93836122 118242356 273029648 729127185 950593948 969508645 576975638 984930053 897335238 914280664 26309045 506013302 313841651 413220774 288858611 570946466 658130065 858912830 308602110 785345050 9170503 988132262 256989638 565891290 573761084 979236647 643953719 886580726 640268018 691741956 631791456 816321260 981242103 982528131 516236434 541943362 486634654 992928614 955989572 990731464 828744725 964552787 523786829 588354704 677641589 761905691 915948206 916433764 307661945 539257866 683489575 834725283 695022579 751217047 589391845 902318958 781766473 908307494 936521083 957045292 729754680 831072567 295359178 432546699 861301807 973616081 823569575 851498505 289291321 718212887 374351763 541007243 128196493 695721442 955507993 966346465 993078334 998143008 761469553 870508449 446668746 976520809 242607181 982953177 924970784 948214199 325933545 328752050 494207935 669001800 140893762 550134443 886735973 953856971 333812404 614580372 360863383 455576983 725638810 756706157 561015539 663034842 141483600 393608822 343299717 529361428 974764915 990886966 465466805 557877026 691591846 960363050 483418930 491368706 916889528 949423596 265683322 615073975 24461770 793368649 718054623 959522049 497585855 644141637 423073565 633395902 548548443 723518307 774422133 786694457 42646474 421573075 372550539 841449913 576302593 681506933 1751704 91655698 277600859 393799322 36644338 853543542 246757399 714296611 513411212 987138999 108837950 873889566 570548992 918960742 570401614 924044575 994382625 994399654 235286948 815270386 897631668 958974047 567714172 569264649 189450432 388744653 787883026 877362611 542471544 868972803 586701260 943998328 400660838 688642721 63540856 958886756 676108149 911715304 314893558 515213341 203388549 910808793 388988235 453634328 116033090 892110977 520729285 573158258 815803835 832887146 550826205 842454291 767288552 810665705 68468799 700438328 71063481 999466622 449551783 574277998 132084036 237740487 223878831 376680728 773272014 910413557 92422882 753847128 408616489 950493928 783748681 918247623 272392020 324685240 313262786 349957652 840377316 901580349 111614627 699592735 219187677 887317718 235561135 554210979 155841444 652110922 255979846 824543930 63146458 735692105 638987067 983325055 246746630 509950332 33774775 511398144 863051188 922073061 437791996 823996680 154786929 485551442 125564641 931040092 417094093 817600824 130379063 698571662 561241593 627230056 525831593 672377125 735048208 929596322 505161016 953237371 536242104 602562218 952835963 974599979 452496062 513493655 74175249 336546555 531604829 767435444 202119765 773722075 489849318 494418467 271289119 994342327 943532778 991078403 328495733 983647352 449072561 700687912 497220843 503958224 931640239 965722149 177595407 599317910 369545362 615544672 851763825 925728838 88551364 929734297 943375405 981448838 283437436 555205611 995228344 995914875 469214047 641907613 805814149 983745850 696116495 950054725 55403931 898795055 911017372 943997630 319538942 540084526 210970300 450422379 236612761 577077150 155386187 623524813 790174740 849550004 583383133 663582531 724537395 896900433 74580595 546638766 134622196 586091490 262396902 628019318 259693572 550607834 896817719 967352253 173082295 679799583 26562891 405401053 79734054 417737537 120883865 155059691 912401332 942194065 521094837 947677765 379803541 389877573 559315507 938778950 156942573 259040560 581101759 715155369 850869679 884796791 365369560 515458797 88116144 717515176 700987648 927466230 841541417 994459921 193867636 258629914 734845301 885324694 154538333 737248862 419498204 620201121 736779831 940958235 743757474 912084609 58757752 155768681 915645404 965275668 876852276 914490197 999982667 999985889 47574415 682832619 129700496 868775087 221845250 596832289 256843163 667410114 518252188 674745813 295956749 383737220 556294436 827530786 750896019 954807487 154087311 323283321 718133132 857784656 268780110 745823481 932078060 949585668 498280884 746040873 480443448 686437080 662203088 974468515 272794757 522745515 655813261 824148105 270334969 560223875 522237708 634095905 925995598 931934773 63561141 555466484 304785407 672580213 441244224 773423613 60315011 721077853 779341377 964903543 778673521 811006277 490427134 828445806 285167396 621508709 795473199 984502974 757282957 881834470 963880445 989929561 214826487 944338301 809932676 823627368 606301550 630763788 256189873 296138648 836243691 865150215 837916902 929002632 157333918 677700845 508315491 573845744 148399145 439365064 533450598 846902330 353983527 730605504 558019992 605872973 121039658 648317755 132292974 206804800 348049349 440932779 665716071 983411942 856472402 965599261 797234030 864906344 605702518 673905220 544708276 952951323 207425884 649116806 799014461 944104947 662014657 687491022 252548632 460766014 589778475 619627917 362196816 808439905 484830044 583146723 786921763 826396934 307103080 412960486 823449131 853200274 421173278 842256136 27642977 211924684 687053588 753244629 941652677 976662525 297611300 361451324 231295777 640664593 516062578 569544603 692266612 982717669 706503634 888722912 899514620 961318471 171784990 808230312 495097337 829214716 886086992 898769116 243000914 863444039 1945202 465470983 18066879 95122961 808586558 832401884 755171538 826120944 586938535 915159020 576373015 769336852 293120722 586005486 937668310 959546778 35976926 655056407 368184984 859372002 47403634 794636840 71427567 843580260 564049589 890671040 943664655 966500726 176856926 392006935 866588911 921348178 91068088 407981955 740675326 812751967 482112373 983040753 925160537 974146687 719854092 875365215 5898004 871689940 40337814 147282464 125220174 289424531 98026420 588073625 278027504 802407421 821055820 896644897 145321686 679278141 809301749 889461768 918172075 957937776 954429472 989953635 114836211 338600323 586460261 886851211 952812138 959728164 528512225 903598078 435578753 705560082 279854110 888828689 914237123 927586265 674806957 749727159 750222714 753214184 894474816 903987487 509767141 983247979 752657918 954867312 115902933 809531491 574210968 639471097 543063382 943287883 486015002 626733104 134405719 557580299 299961048 846757538 43116043 78811705 548449662 879318584 396138472 508602393 384738 42340035 982687354 982851200 418338063 654287410 459804239 595055043 94527873 571349227 849475228 957779268 903712763 969384835 27644652 848945648 344663856 835191128 645015689 862000168 204484696 968261453 735785533 935038383 913105966 980809605 148035185 965107497 87401977 415793682 801421583 882236906 230386758 292244631 870142760 940324649 890233406 893416936 292341963 499799267 423729841 584119738 776743076 852369508 173405704 829186607 48653979 645657899 249128604 669554866 620173253 775994522 493654117 910912158 585504105 588815644 330490169 944444177 474370273 954598580 928140615 978774300 69791728 482903362 216021646 784586575 801224098 831644796 425531059 802102552 226699606 693702926 920430528 964984978 885901498 921424782 215308071 766052142 24046927 821820923 84599953 243229429 944177698 969665963 783332796 886753718 690081237 909495851 445678556 744319786 41739947 798465860 463214898 859179681 310916530 771754207 340135223 432538671 918541252 923630925 191046808 748383080 242314191 571067560 819427976 961736607 5022818 918253254 946951380 972699932 813681302 840885666 967567662 970296287 55097468 73924501 112553920 998248400 283694113 299295124 588949529 856098232 308427092 709271901 242214310 386955800 841626651 994727867 854974181 871794936 31122138 327349705 473214890 762034922 101874108 477585017 197221751 609263238 510782088 803582904 368261521 837031035 660539913 779838390 990525756 998279392 228476931 496269104 678693504 996931512 569130989 575521661 307016201 527735568 729445944 768060295 450183892 646859006 251316864 755609848 184847969 404199695 910405333 918780314 389484051 708396151 795556293 925000267 58978499 130815747 859716177 937306252 805605399 874985593 207493544 378579517 363691448 837905521 412599945 883353758 209463167 706820119 558612180 581756398 784358280 915568182 208141 250434576 439000688 900150906 420955927 534538423 667463670 815691857 432835767 599327087 648163118 758879345 445683253 568159680 61334179 382852158 815942751 984080447 578744756 977133490 112155371 890428945 758877366 794450781 496725855 765995376 753103482 915653417 969279437 992526821 475613398 813904968 253296688 536925619 144389624 859987124 502168963 612254506 289076773 384099340 170279419 277615027 606103797 632998921 200402178 978961191 903754649 995586388 87951864 514579792 79472652 987438531 604724294 932930807 335350563 727819112 552955101 720543618 100439350 382773576 419861647 783219452 952399013 983263655 875602204 890716404 694347150 880378355 774389710 790617241 911983215 961483405 253854687 918454588 916138571 927187725 234012132 259153836 983516812 985853315 74355170 732692726 894248954 968946294 435292709 612308774 53830066 959107244 758621151 933970243 948261031 986339006 15472428 324173854 364624354 648281342 732644810 756793613 891886091 912858533 58089766 755508903 597267086 704893884 610527333 815806044 675523743 916003155 422992662 740166918 367658622 754710346 947707980 958683741 89121405 809755436 844563410 916600186 302112284 835808133 960266730 975849934 897964216 969221902 126288616 169676094 520152245 737096683 434947025 462349495 657344613 905042511 979760035 995040816 916067870 967326716 346390507 543019713 944865755 945346435 827696406 954667206 466907554 493830842 465389161 523250998 759125554 912010453 589683223 769477870 618437448 659044896 995755217 996262674 966141563 974345596 850575311 905267000 230627130 893119504 56997915 456987356 188143906 555994980 710035811 745255985 32380110 623009534 63558038 638183055 646317702 939139352 961245925 995025551 433058650 470496253 119332356 278735369 489210133 891451423 173182546 699867777 339818656 515227802 11671297 700592778 660871481 717688903 389667953 463071273 258698138 507089245 814202790 832424900 542875819 809307409 639954845 685299342 602254630 996010398 546461971 876946990 325593487 794732233 452020748 666456654 886890426 979741278 211280836 482690371 384741293 963955762 866880844 926054470 978596516 992906050 174757912 758224196 352355058 404216405 738568089 816266615 452658753 721369664 230274175 768559595 765650972 945979792 695267214 811415739 21435908 57479672 511075785 841616622 842101088 945652537 920181801 922492425 630230969 849267842 936841698 977131826 827199744 963331212 824328095 867289850 306611823 401753407 411374558 605374237 59641633 282076539 284033917 371054295 88777791 490395000 613386589 814290104 284157102 615969865 19637912 194086683 219453504 724719480 858685622 859232842 596567085 635410144 17558965 508510689 362218122 699814055 32658358 244435195 364909800 677036438 910181137 992607919 157039045 239796104 776016536 928739288 582313577 725851958 307077852 314533520 409411602 466010771 777691654 980796815 136844787 897903018 105173175 131468108 123954740 449081345 800773957 924610373 713876729 747836697 386095809 582862193 445709520 633654048 473456365 957802104 734176914 977143913 385027063 739801364 251110658 339476295 995476176 998039654 594128685 830784679 718724033 866696933 793419441 908625482 348981723 533209874 340301751 897378514 916080229 935059722 447430894 986456735 742119203 840998429 61364098 916300955 881531329 944125719 650942082 714524386 333049321 692142094 285719136 505853905 69892411 828146589 240592647 585291126 438475004 971948678 402647532 684031553 630795309 748684204 594728880 707430315 350905871 913645798 503791815 785179147 756630035 841573172 329505571 428727207 654714761 778782473 865439832 885555335 762394982 886890191 366661090 691780718 531234796 585521694 659112721 662452277 824379667 909755191 647156238 849505377 832112993 861063173 577482670 751231793 629085570 668024370 31959075 724533861 198979889 230747788 186608506 355580324 174782497 719032298 752845436 932171561 352995299 931523975 949551861 997389475 45707451 621053109 996542796 996683539 31488290 909897484 649989965 745900430 378277470 664309379 844417017 869423621 299561883 759880876 251312468 375269744 461936333 504671849 323247425 636852744 509152382 834678348 840837998 996746730 827005804 872894016 456928986 541072356 612769862 968041254 908725311 960116381 928340624 969967212 520080826 794289084 822223429 985212711 979782709 990048071 936512056 980435519 405692712 504776568 128016542 620874176 536318875 903857411 237723827 391561250 136928089 564349441 288811593 365587448 287344733 793447542 680762919 882055018 158179211 509939697 351789746 807219368 939481576 978905406 131106343 634580566 285641426 379779033 243571493 638812006 678153036 958357329 959783423 982663706 652013145 815606213 311396518 981340026 651350432 820680409 567778770 828563070 218135603 286496504 272729570 783082419 7443834 562169429 861907390 976400454 254749882 928660851 36107112 977137865 794039535 928501859 148762163 559214095 582083271 631918006 626755059 787087522 757851315 912489043 408209250 478944724 357446803 967200891 38903301 339741410 3121343 336678793 241907856 521911479 47669841 706911960 456900998 546961973 850164925 899895892 738350475 894338339 296042263 499169902 325571157 387540162 890783535 905408205 415363915 616284629 437126437 645730880 45258951 402966748 115827569 707616492 948290967 987228497 245891180 416099973 312840136 735454568 790474941 976183745 660115665 775129589 496844205 867999788 777645806 915837193 860093480 898881557 710540895 731656210 280457203 750162726 818004800 987780450 402252301 412751354 928293175 936766782 876719161 903387502 159309835 342242580 733900588 746420876 260967739 468839842 853674886 944072182 508684046 685458738 350854399 686565754 331530000 789758565 52767982 654335284 137853439 576155637 993251724 995844674 675068195 905088767 847876620 914213377 85658302 379287522 883657801 907014623 17053166 553034011 645739919 940181150 973874433 983324064 6923965 960319165 748500554 949432437 301343004 741662423 820308926 892188302 22546513 253743439 266150860 878649470 63155823 634917674 45220868 143706668 563659793 956728250 881622206 967145565 777382213 903907300 784628654 788005405 421304147 529288460 978030984 987307499 939940220 955391215 293931494 321781650 725971465 821111125 183254090 550372882 572210068 892750923 450867819 537580252 767019436 967086135 299853693 458658356 292233429 719735359 785223702 943692980 613041426 897738173 104007305 215682484 273876778 792370642 904556708 910090647 419872454 602437168 201929713 622763295 771432884 816522578 213887297 762494394 607330280 863310689 741984759 969734702 846316982 998507247 467001276 675457879 486230432 726226995 337510518 734397463 509522014 724352364 394960774 410156113 681524930 794452979 879090052 992147657 649387466 661930299 461110840 731875260 344479092 372192133 552991091 920868432 896704358 963937104 855120265 928865283 11936249 272206507 535949985 812443200 908874829 924064688 967916657 980229912 680847658 895867831 659160111 709236554 117985692 586222939 131957935 819148196 468933308 741899572 787586669 813726457 857105035 961485616 738075205 799108480 467411485 785705941 286040291 926803095 291307336 407215999 492194688 616555916 441618858 780591335 835130110 986510659 115271787 517358709 605470615 869794838 981779781 982271904 96652237 394711411 553819294 558973842 499891258 711599047 351140837 973193055 910354349 939850192 208463089 284094794 166206108 191577691 342177992 665830688 932192485 959167854 103869064 604764523 740209034 981718205 818051142 908851736 548332811 752638239 106916625 642108591 608872972 786953220 921895484 959573042 637683805 827159877 829733439 883652594 723230954 898971483 532879514 953508756 871708647 893459744 182096159 915009988 435227284 746182938 104192708 812735708 527055435 642600194 51412040 723543607 21661137 27598581 262012282 444640690 212317926 674538720 386071238 626761792 988672390 999369397 691254178 903216528 217278273 927269238 797496973 904930737 450327573 636992212 299799337 570473937 543299960 806062280 799207679 872165844 259328617 917923446 850049258 952366300 811082103 960211066 751928748 894261102 639617457 733616809 246926349 399595445 198972053 433928333 563681283 842875158 371763935 876770045 167455975 271273196 811253777 816824620 128743776 421901478 629985487 873456851 915141604 923380700 21309933 301250756 997947927 998304974 218167962 675021837 931960836 992054038 329635586 979612875 816612732 999800477 257304136 638592904 802763144 982712662 916486798 986640412 555669436 591795792 556451778 632283160 632077328 787710757 202104476 274762302 990643234 991640947 316799181 477337838 55283885 247310353 72606280 931229702 393327230 573441663 316432319 760007596 789104548 937920743 610526131 714146080 423594840 748452184 198773407 216023193 310238697 358109729 731058931 843431134 875900153 888836022 228829269 426282709 816920178 864105238 711257605 734738424 800514166 816969500 270973582 542568646 477071997 913939759 984267617 986781077 388443754 479452282 982441723 992854751 239483758 633776397 528604465 918804634 881811667 918089469 639436247 813018252 441311427 847511025 988041680 991245887 365084918 809186564 172538663 751955601 902103056 965525299 904446178 974169190 273023963 361151819 96620734 503559322 850665614 957185665 252072880 523596387 583166756 798583039 150569645 733681246 970581401 986850915 773694505 896380135 775358683 788956290 730931497 793715024 794214050 934483245 435201215 864183934 679105802 913709055 809298496 976976654 847020564 959955952 232621653 768290612 368636351 701990497 283938374 957471747 597746535 673295994 28414268 874874908 765927559 936383239 276354457 822754427 141785103 152740880 34413275 691385531 413769673 816814506 872436617 897363507 196447821 249654574 899260260 989376817 162242959 502254517 201309473 442938269 360242345 559979372 926184553 937355109 179077169 237781643 231023328 782491409 45550140 716936563 689928721 838852823 406122529 944530876 554348809 829231787 68196962 941509216 872829245 936532012 848469981 967020508 233049348 784860237 49614857 266792561 777812437 900220493 386728336 694292022 354758497 654299015 965841206 975702057 160708798 597767709 880426746 939527206 451343117 659302317 324357627 628797841 214214327 954271733 659413652 870689030 630924106 742374895 104899028 845186695 747036019 790639646 827360843 843773540 813955762 974612332 94408022 863801715 477935685 525255705 837969465 988446469 185236280 755367501 759129823 930631146 907754512 982312360 838862130 871374027 312358818 590153660 537308932 981673234 623438841 743725807 45973311 283205860 315834660 791940024 887322777 978363021 305662021 776801270 849046877 928402870 599244843 605016901 963307534 976146307 855765164 912814993 133137503 552447225 20004677 737680793 805097864 850989364 556894818 841699946 445101852 600672227 84286604 730840760 699525166 775056967 74790405 604693661 215278963 314411630 371304244 934375675 969276079 987194740 617666231 772108784 383279120 815251244 670055623 744353353 192229871 537203401 380031483 571289516 445023867 843952748 619171227 620110135 383890557 909463702 502850515 966170229 36692135 312182187 546979037 866449176 193501024 891096512 237598623 648318261 839147014 914506934 572145217 668863291 79911411 231358644 372368758 913356345 459753777 870831673 319888558 448947050 991037093 995155523 267812002 493066469 752061042 916874658 771517525 779912021 984421012 998992607 998905440 999877582 426652929 739260700 366505033 642796052 232259166 442326450 394599071 957142912 975771279 987320589 429652205 621562928 457329154 614613633 825939708 852355024 983879476 997132832 91625408 684945435 843396229 945747969 835388281 897080367 94934293 476542120 893188642 899689196 113047415 845236631 968230280 980441917 7738423 799484245 337884515 991923822 84571291 173807731 363869955 893003615 520166006 882416272 252479388 672870987 101265539 145481768 576841451 745311432 443138740 790532340 951080238 991841837 378610416 662809762 886987754 888438239 610000975 684698190 766411450 841939309 998936880 999139304 786498655 920022982 979679297 980683647 237707921 834347973 700009510 884455154 353597387 619189153 197781018 255920781 784603908 997347235 19416111 358757381 217302796 569022359 497760520 562116914 521952686 857019398 747681384 824660992 402696056 818747695 298403928 861862405 873398405 987121802 131295464 295729459 100148318 935467226 575693083 700632081 15225803 198464015 448858123 924666003 284142448 956440362 487451960 511711607 379839406 997331007 801447925 894749561 308586790 384357846 721454519 815270303 530979564 717454981 606046579 859709452 494833378 987010955 741473854 947068807 644084307 985388437 920978098 946833839 302875314 875040570 359012717 733667209 360579394 366164848 559183650 789048249 214223071 579089707 169047192 316371478 914593947 960239542 892812867 937255965 348680085 372596861 868703301 990996275 416892791 568159802 145192572 786475800 635824679 910597349 796935643 910923097 776682753 823722590 361046685 501573262 270174442 452271466 276262327 516157345 942162850 974609680 626931729 702227812 475322516 853975692 494245170 833713056 842293731 927333864 112670943 198221964 541374693 570492628 394685802 489813174 427163732 607765766 802991575 917801938 166879802 554140061 240554299 889188566 554597042 618901592 903684305 920182760 59085836 939291333 287705774 430717366 367686254 871770035 18848322 641385505 403291928 572371745 982122531 996725452 767793969 811203506 330818329 971446853 467205245 834450126 932069865 941762997 953405176 990087741 787132612 887990483 309262739 658843256 190434390 923684871 723905908 996190761 645814666 819187085 645033550 948491947 236214935 523783666 978822548 996715314 321534661 663333910 560281280 580901978 348417358 534937733 830305982 925675563 94667136 904201535 459772075 687626701 875905723 946095427 199352318 862375587 838645463 953235303 405690311 827156753 504232448 662849299 989441544 989797836 254362931 401430113 188909851 274531466 977185498 993969907 838816581 880107634 10927294 882010383 304656635 888775752 548635627 818756138 820531054 927968322 642965825 930698595 296200129 844624051 324535051 634172820 341725582 589305848 876543718 979210737 228628620 420285934 668368655 842878101 430821154 728253021 852442318 978582391 151733916 466511424 116518376 526846851 226355385 952229366 370810757 402035907 852333720 874394419 154111672 888815648 58752589 472151971 711560354 867090879 581716846 915233794 57391247 619120443 127658683 861637977 600426511 872698151 157390533 429421154 838905132 935445808 762733356 886290506 87458911 567181754 182284873 797488385 611371129 615772817 311417238 414581658 66606629 431630755 563549690 712204445 507518595 782439184 25095293 321427817 410922943 510273459 730833164 781782973 98335394 576650401 494451871 907617674 453166653 794600725 831292415 875188827 247497214 574800853 779746324 906183297 583063641 875567825 922303452 998017789 123540850 167562690 344750954 902868011 753342659 855204540 673189774 967433141 706723028 811204988 842641430 935277214 823966277 902054388 489950225 726482634 97798883 851368137 181938992 786421791 321532487 879697243 843726774 886220303 159245071 755640631 127826726 784519620 108331199 154877994 111248568 476966457 624682321 792132300 569753697 908610142 6902133 193697049 554377574 885979889 789201503 903937909 43784093 958377346 116450282 143448007 761273397 952906945 587079293 904218587 527372036 779828818 480080248 755071012 801888628 826348126 454617569 936869819 341191450 450562026 886218281 947255633 729786580 834533081 512584499 896188826 474004773 541025157 413829598 557897900 608770040 710149545 269159898 799600821 533050276 644693840 883724290 891493134 424787890 662281733 353520440 707875843 332925697 732323247 860215860 904409963 679617172 912600246 753745068 897437765 500435133 627745933 200668851 321876792 793748056 872195766 633468333 839973916 928850827 934769948 182053995 424604560 621919061 970664710 929216355 967135423 281619215 853785016 758480611 805131639 111030486 772619911 725959885 780319321 786081213 876609754 402658569 825349417 320671420 811775969 491448890 963673587 902908135 985522580 294892856 920866782 396863826 907665369 404571439 668866833 606674947 745636573 676165788 747005004 603089972 973757002 787288351 925555439 22901909 297549268 504302836 701026191 215219488 840885221 329190448 967861368 689002106 950363288 358134054 373986141 285392611 327395981 174487820 283392695 598002860 636624803 720966620 848909915 997118558 998384681 786230468 793538043 654983220 816776071 404035105 764705345 57888749 610521087 699849370 929751657 228850630 515034898 522496225 765567017 515832297 902496845 248809959 873644384 262906927 993342859 356492247 565013639 100405809 714237412 268153816 506955993 411749593 800594306 140163201 291960207 480847507 763790437 36933107 53626911 56328655 714900838 744043095 765289253 680859046 767079815 674197679 926398856 898747324 912355907 505818376 596231310 994183354 998540902 638802400 862691911 301578497 551971015 388528530 639998646 195583070 888416138 564044509 596934413 213434932 249386808 138645641 164996785 345403993 361497690 955646001 995500136 196741715 663640910 826415897 842686556 325191040 918833254 44976331 911249021 429361073 997484141 564664653 570924408 749175576 815648490 33167135 219488912 457205838 967162631 569403776 880204242 127834856 210659284 838502076 902083244 569403263 678996800 70577222 853420971 642497864 987528828 629623363 844935304 456027384 980844993 614876176 648162087 29246477 941054901 684792441 832177755 21270 301818987 688000861 942226694 632428621 808436493 322956659 544988284 652346382 655135571 398434075 915571469 843123848 919421082 618480450 782276324 527043386 675600716 880349201 996452397 758168194 973077530 758359931 763545692 132788830 712052833 410415099 486191437 945069603 961189817 99669338 168937807 982221729 992545586 524941927 528816260 377613481 706298716 616322308 948341132 912543279 961971088 691790233 855036134 712022172 894180403 35865625 183106625 965599904 982546714 878267286 891241793 870949017 873986189 485359898 495445109 734165506 746207624 468237080 862646254 91389314 734177674 442497029 561785612 874767089 918602358 346737991 695696330 553272191 850674220 123129759 863923367 395526309 893706047 583187567 730435882 330016664 991306473 587053407 924989839 985993216 993333713 640522211 977925537 192354961 392978200 274180902 330729258 681162519 946027912 384289852 822974807 708966149 946597788 580448740 743892925 868327220 921449899 917544822 928717022 910824863 939538546 971536308 985587901 615588062 970550705 340711265 799836782 54356196 262997465 917912657 989765680 471481407 722307323 77144364 112509828 270038838 338920045 183743174 239392326 369962042 766179508 39174527 599037880 215851477 234039161 37778878 276973969 452870800 797805674 6334295 325368099 465254206 848192701 410008755 530691839 154910994 271815816 131206225 344774563 162507974 914284038 495796226 559961303 284795791 878002119 330074450 670670285 242957530 678045599 963286148 968228576 665768992 903006690 502091035 556540680 793743685 891632422 941364706 996750313 985733312 995588110 279313558 906427934 244156177 352792039 808966335 979767366 24456491 605665874 966477030 976727006 701760171 783163245 260178931 804537213 710934261 914885003 637631543 802234210 486095346 647484931 536519917 821039139 534406812 746191884 671274379 678199886 947999007 972450571 228015356 983649530 406558854 591114237 43786067 168033914 473117438 979145334 645241368 645267094 325473163 428488263 670568309 745831506 242229176 583417030 170666611 955231740 682870382 928239637 704098277 802463906 562238658 563652937 833207419 967842006 868488981 971833932 829368455 885807699 271125264 668738131 970988738 993090685 831176894 930091659 785558506 922158071 691240435 746645664 460917564 767438913 399245609 711653489 484739184 940480819 588511348 597296667 101486622 758911208 931106952 994561262 723434255 992255905 831733841 925578133 50595054 677477137 560083563 671767543 515839581 773198950 642610298 761548908 749135851 851930975 359797801 630293719 993534256 994669689 936009420 966369613 579753874 730125042 840722026 946098208 628242535 773660125 142193163 427355991 69911877 138661460 643031426 964324471 449202020 604888256 313826914 381444565 821474646 883628636 905111456 909639130 346532735 688550353 897535536 997811605 39767123 839964450 422627578 710675510 205181804 562909655 965659109 980599915 641057301 763379122 555282532 683086267 290330316 866696351 499973785 547646007 56998921 328961363 754576885 789729309 47045933 961996585 726838714 915848754 940815688 983509160 474333700 792550735 489900972 495028586 596484977 744074853 166758330 991376394 262644332 786184269 668495340 988128598 186048996 495951103 794179080 895003811 81827299 529700620 837931352 899521645 676721337 802451997 109649369 156364341 189467497 407980871 847141285 933684013 622918144 679084435 877949271 878723651 419430233 626097659 567197265 781197202 665778704 667573103 159970639 635950471 456686770 487925124 961644925 962620112 483467755 808784847 203928895 475218454 774561642 933728224 897390891 960274170 305739773 528292537 563893480 991263750 507650509 676972673 542196876 803450376 825742983 875233955 262201543 736352742 738331928 772065346 807685015 879386848 266882861 749659363 100831751 730494264 780169946 916350031 272904982 624717230 702961515 731523450 214868280 626495415 960047094 985501709 876148793 973396323 219536394 872866597 29188068 38260792 139230493 358775306 329594579 753040501 90343969 332379352 224103708 295983586 86677453 445297134 989978799 998800108 298604586 880597658 895644504 903517380 94692897 747238455 451086481 519019423 80959260 333162893 516197351 943229096 625552430 877935522 255397257 372190994 374139736 800310480 670701491 820538509 89913247 107785895 3448943 599343479 906560172 907443994 880471561 895967080 542676860 919819200 699508367 852811863 149454573 637171246 711334603 726287240 986788907 988968284 41640415 708643320 898435916 931982461 979822018 999777642 955466832 969175558 225319727 239265802 280228720 350049564 916056008 926296553 71555051 818994732 581207070 996225811 3294832 35074801 191398100 648826478 294161483 988139474 377014158 520645156 538654950 667760983 838851842 955929465 335490133 720876961 25254113 92672270 507303024 722146531 804255425 809180095 566566080 935198384 177626383 625109346 972040681 999807113 267755995 427324858 5082449 87930836 577023413 705887130 363639109 828654100 576662927 924593273 262171371 652709531 607581564 650573751 941919994 997854019 967224161 994109188 541992931 727126402 873049192 940209103 429644143 892755890 602847643 653861457 184671961 386304660 648142393 765102292 372674034 707088167 643483956 691883062 520573978 550393877 321355621 475563103 524575619 940384763 445213255 493814489 938895747 987826600 100800857 989892760 922532806 989845221 692742367 742252056 867427747 980758548 980672875 993383093 87217008 966870917 825123067 968933931 517271594 754239003 342666197 918023005 644777464 904888563 336544941 712146705 468801575 539750805 32839489 169186300 4821032 621699295 375031589 507375166 332646827 630151784 102974322 803278418 580614365 858859234 646988366 752287279 397698205 904791517 606329708 789937931 555123632 734640315 630333535 720424211 986802329 989431172 335019858 801253254 783860977 995548608 407695187 551715493 586592256 592209955 714591893 860873172 779165886 928400898 318126471 872619620 388687358 481949191 196098362 372596213 548075332 607886225 306861915 518957004 54982492 546814713 134797778 653460808 20708779 827327935 853984863 879491964 264457186 907914929 527229595 917210276 513693599 755761818 365981966 829874903 282946061 998562690 150371106 872992728 688971977 705301089 730515357 789363714 619615045 905868585 655694922 806167121 933627139 945226436 164466818 334911313 86750840 692752458 493659963 993795919 628783134 972357730 791814878 907922708 424085028 838607491 111669092 908760420 894140726 980542298 973991507 993195621 775826045 885716710 157588943 826555947 962932252 989622854 851435051 917598669 551815199 792152978 822572555 824701774 262775831 289451305 250127839 600361335 930710600 987928160 622510088 851917032 565268918 711577670 925353319 969558886 876861710 958500610 626557872 781715536 528786728 646373814 771878809 879986525 358085005 998452047 327158330 929726575 950530166 954241140 64420003 150162513 282881454 555813390 12799779 248922324 57311130 283405149 599693232 728002449 771568411 955142087 500362832 512136303 414002192 886873822 539534074 910227649 383766167 499330146 150381515 669451023 151868069 236345444 865871427 951200727 53985070 547687442 810877998 979776444 916944542 944735153 942755560 995592276 909629237 993680065 541536851 780763709 818672839 970403776 173121139 963911710 590522790 971927118 949847262 989576289 502990222 991294161 22169203 690699566 144108760 497881485 55579008 532008145 160099111 469933532 366131176 743773312 145407315 686006795 579718109 671636739 90568146 876503261 902574059 973016221 654687584 712319173 989754645 995819171 617013443 916102425 374317264 558446644 921194366 951332104 207139992 682328590 506036153 634520266 460017390 608547001 99462099 857863582 753578481 900882857 177340912 946635482 291549757 586428759 911442198 938566292 945943678 999068200 777358739 903429112 980700917 996511103 955857687 959051558 459730216 722223640 107982079 160614483 162355035 838628187 450060409 994267546 933524726 935535952 191376127 574772387 493375655 697504105 634890005 808316553 23655999 353191863 709185676 951951867 478016628 685861393 143770387 856737501 483535011 593592169 799946805 892712380 483891667 591915507 807165877 861645876 917218025 936608895 130920187 503435064 284298883 834220720 114376822 189537671 91983691 168540579 942747544 948793954 146147471 442048342 808781049 909478534 905530551 945003364 376919958 573561998 184732806 777297275 303292146 355400206 187073392 990313846 30861841 618125947 848856210 931420356 847962625 907627124 745928556 903150286 457682242 652631301 908770501 923821802 883121782 891839573 951011138 954902708 984876827 995782564 963216825 994971314 534342127 984123161 136451781 485501021 328851660 415545073 897787267 901050589 526431030 872557875 853795181 936552326 442831870 698121349 898134544 963796169 434463660 661613286 873433176 895718098 237197202 602584689 559161416 758466454 243067667 970034876 536432244 937208154 835294017 853596166 67390433 735672759 606874993 660637022 654250328 874674610 836262994 837320918 610264012 788688763 399278833 519165058 637396699 666458335 741274475 840011854 998807364 999951150 109177702 858340827 228691691 620824818 333231279 898763334 168131645 461479765 110971371 306439917 343712698 645622428 787727291 906062524 923027735 943906729 206976491 302570198 931497527 989644699 180664838 450624698 143112688 779916826 820000643 878143249 37225926 433623804 314956650 315024971 500596226 861215683 78457209 945419307 477438144 978096863 236198362 581322737 429800628 929918837 606699955 808041905 220725236 941550544 476152088 488193446 175260582 226550320 469183355 704288621 949846218 973305374 609595412 987846658 640907888 774383560 487745590 890191155 953663742 994445396 80068521 826463533 111261815 641665814 566915955 859540003 330036127 456357408 893559630 976407665 626897713 822903370 952489597 959767936 707705349 806167245 281737882 760495603 407621132 747105698 926427516 934379290 913712761 923072680 969710702 972544489 859602417 867579875 720842243 789845106 761017659 887224525 107367732 401374116 855071244 971850265 474272048 686308992 556256052 961368525 253495576 809796857 380438161 627989349 601912384 675410102 75867980 326401605 689450970 739877470 90833264 379895173 924019532 972857653 697454947 895899400 344499823 924870240 8871677 990478452 704035687 886735241 799273654 832804360 417470134 577733159 91296066 924903343 250754248 433651203 499639240 755415712 540220753 637597854 627159415 830380792 612547892 864207612 760388073 928963455 75165288 791917271 444372021 832254583 950429690 980795351 164268123 949949276 697416 532495657 938344314 958283182 579137357 700613260 689024131 994794090 545995697 832338782 592902618 605512802 906505855 999533611 346021933 425534548 81256965 198116932 568058221 759182319 325644952 501607259 48864481 141840447 319719786 844545018 198611411 775050705 715422023 742166898 452453977 958929089 915266809 995327997 94782429 505826257 939662873 978086863 333839761 985429393 266899680 340237316 446563555 628519338 377879143 434819445 366505295 846253560 101068036 291418400 441369619 964922358 337319700 626222902 515581536 531775871 503091567 575451989 971175230 980609467 605929083 772360914 636100841 931504580 266705537 464749852 364328613 871406141 325510939 949641302 115022083 941105756 935568930 978935637 650929802 657762412 156193907 422078528 537250440 831422362 606758859 769856326 342840034 592185448 119099049 371147657 140412571 378783905 864135566 994575550 191916218 958898551 971336732 973371035 497410431 497577932 452246865 889155356 467354242 626635147 930961734 998938559 547544564 987339887 274285142 390192259 16617805 819600682 31469610 355089262 930846626 960220339 515844258 760728093 857511712 952024861 645345751 797356775 570019805 806125286 693283600 814220111 838413841 865225545 331412034 403134436 718022240 952719536 162065812 753253304 784182350 844153177 904771524 979664885 750202027 925186224 337257791 911857397 569570365 906544272 255384876 616570587 44324463 241510371 840862701 921486995 990166223 994401491 133736239 184178454 800830227 861100219 902425212 912690747 356597812 950811536 404495412 895067529 83342537 205384637 25952752 999237483 143765945 690173011 874488075 963285638 246065704 670941124 599904068 649228936 734482576 906058546 40284615 946620059 478329994 734042790 226812353 472876664 764093642 918448280 814586120 881131131 705712215 801530316 760493420 809805083 560798843 798337247 125884014 293921151 638515756 733371054 341285834 575175689 594186789 786142635 128894185 176159134 207579859 773689360 540896366 987888569 175340067 260781795 228400481 428052914 675220857 823007875 22401090 595011926 23566848 213826230 72549130 902738546 76943354 362231793 326114729 684057473 75313029 731252492 164281158 889997851 671840283 672013244 424138184 446935960 884779055 990709778 794901191 919950858 86358456 426986328 48733519 55376077 309546620 637914125 134328062 716093526 404350365 476641058 156505989 580627418 787868911 877480408 470092756 764127256 284545317 463039339 823993850 951682533 488616309 682022217 380201307 843561075 779074163 959149268 932168921 985155210 791792101 944871013 531826633 810165566 638575873 908923001 236824817 954458320 623204570 730463151 346809288 629195164 687514205 771963967 862196807 969440544 980809109 990593450 105505649 862113298 165592294 585160626 250698492 371379926 22479583 484865173 210123964 458338610 967697875 995487078 89143623 300344633 454075614 527334521 568249480 714313970 219926528 369269419 585750358 883420716 93253993 223499821 664870080 733974877 422749133 843383358 564645240 754192131 751271272 999808776 716083672 834332187 841642129 961981928 82201319 203843210 143090885 994531909 691444676 708364475 194926824 809695800 610671197 991576510 752378159 949692813 137325068 597822466 347996777 430077245 813877975 904595126 228563125 559112583 142065848 435540274 249433407 338958124 477146087 779602946 926234924 978398994 604781276 986928342 826999373 850700950 911848629 968177577 542290089 990608813 810526075 949592338 911949409 966101840 189016534 363739302 881215305 952963676 473648001 828686054 796290898 948787289 358428418 394889100 366180096 999768570 438823945 766474644 258928414 601076388 548933285 644573951 158766807 669317668 996755235 999960881 478674096 861081856 455791278 527265844 97852768 181600514 976634565 978552931 360315267 546408304 197150879 215726695 830273521 998092633 469085560 908714263 975976936 976942664 213731515 361405429 480675527 928002653 985353197 998386957 763222144 964521852 883507650 959027906 217050029 344227036 595919322 947981553 124086981 531252139 33332720 585758756 865811479 891797292 505732472 704268282 857254026 887233702 30853175 973690964 199418163 874091797 313752095 663217920 238185803 625521394 542379037 940738082 213825285 329628440 683424703 817443828 897356376 924180677 171803397 329888466 158432592 505306027 907568265 926252724 850017199 950902506 696295521 833259615 655347521 913166330 406197637 683738955 361676090 580271044 65048261 842334960 15615401 731883761 628132115 984270357 234625202 966868057 885220541 995918847 10226481 55866375 302598767 968134826 724385196 865473922 750486016 860909630 845275312 950438798 784301582 903833652 120249838 375568576 780520794 814210223 423442476 761055623 59602948 868243755 320493804 660698742 867314433 937890909 755872973 942314384 501450759 965627064 399042753 693101568 387209822 821505656 641106371 843912269 289455515 634124362 649273833 811322719 567542463 918172090 252237529 389616748 193827088 623249564 225703245 901255528 281038665 416319094 894405643 996967348 458930613 739584988 557345879 830579796 899024805 944450749 557675808 798674236 297522845 562713242 318536102 562116144 256094541 963813791 460049824 624905762 860239469 873714711 820546640 961144676 914059716 987067181 134340123 846687512 290973861 692502015 131178836 146148607 441657391 626514965 647200800 915202005 148467433 416988736 818023207 844414303 870884973 924952398 830833777 868981064 362225258 701119905 932951750 941898789 796756605 938387210 837670096 926054766 771953701 891149663 575569537 633609740 254623642 786626395 529700496 980090009 246283963 449017445 202885565 561574560 885776386 989003274 305064840 619178747 592694084 938312275 290358063 955962535 945050928 997673654 842894645 980339056 774380002 864164337 63682974 675725062 209157029 775821504 237002683 373886189 978708875 995709877 647858263 658566851 875351 948213447 527462500 615116153 428730792 696646987 900599272 992775667 76821701 360757011 227996581 258074185 814798708 902005293 881499333 952190192 870525188 875771171 233305258 859714365 708430642 776086171 512477424 579540708 533776233 749416145 966462972 980063352 849359946 981156852 335752312 754427890 583496657 713628207 332992392 387051532 274993837 919195136 905542229 949485747 949911850 980335915 198103881 979248855 242910208 375280162 163572891 642637595 670119889 733921447 43165193 866897763 746766118 847162439 474252819 650019493 509735591 578725425 276773369 743052696 215322828 933893994 99931494 636001550 563803133 945189368 600916379 983968574 792877710 835423139 237898210 751980104 423721339 632774036 906931529 981449905 53977613 273818186 953752443 956569494 885875593 974268031 392569587 912206500 547208845 724524887 900912335 922215142 827345878 939840999 268260275 854168679 89116803 360743084 613795204 656653155 81398574 461605836 382984624 861731229 877566317 882224847 557339222 979007218 744933895 843996919 41598385 902271906 697561683 965442938 648875407 917222377 947691162 954717265 51511630 972322511 977261257 996633867 286693247 343322040 18440660 508639181 980946804 996143913 823183491 939429606 917453619 931724698 362611308 843126598 717730817 869528014 960319746 967101070 565995554 747567374 632364194 858504018 113398597 234395317 420069763 759700604 717274403 736542590 864146815 950253081 413212402 973737953 927450408 953126761 365722807 540826862 391660603 540158916 204548790 789857587 160748609 466022858 730626537 964087295 240681785 360303982 404548164 688002362 789352529 837281756 470174348 975130542 597060619 608512811 753444479 777655039 67254058 737532618 18575867 256817640 414111764 732565192 710559582 767896359 643972325 680850755 185390402 543285290 291252180 749108517 730099738 943052979 284393754 498072080 177813236 252486612 553949186 609794658 12640365 474842778 849676368 979471501 559094451 953002293 544241743 787774615 118640683 449672764 1876675 901534689 417663698 471999604 682549558 983193504 747362059 978492513 429688320 613617942 22320617 220136304 818475034 865557474 433345277 687208576 541671571 936861931 985831595 991708992 625277053 956701035 456405905 820545644 798404413 866367222 779786621 915503346 48977199 332968000 805983740 983778540 701905791 942935583 789279180 811737946 263324215 338894809 404091757 439641266 625257127 776460186 159177633 205754166 488122161 572230228 807063258 823420076 666898853 779886413 6213521 403520120 348859307 760603780 880528831 979571130 450322790 860785201 230373552 370297729 630404804 635703948 624476513 999608182 974496991 974841580 237055559 588545432 470391834 895915966 111816286 973797480 942097553 986820638 552408140 840198713 808026478 955619120 436736504 626064924 346449387 594713717 208574230 297842769 165159079 973857263 268721643 614079199 739368975 812334691 877800069 969229736 899662625 955962049 853268239 877484648 893466493 984958232 215138579 613205103 771982774 880831227 872622612 941336139 274647739 995190069 311619112 932962273 858378048 905403191 750390603 909274676 554167904 627916892 474617323 782263359 383365857 917964884 703235797 730011011 568173066 579029239 506565045 968513636 257578612 517703181 813984672 988988299 721906368 762084936 451744274 645175763 675897930 982789505 334047015 989532664 3659895 882515864 864885338 945040298 906439186 940022209 334619517 847605309 226190864 531844528 645112985 742354061 866721238 880319892 571600814 579163418 397106648 475454288 579163620 729454796 910599015 986354327 181387214 826784808 554863134 983366206 639288818 950023388 211869214 671841516 133534529 687026888 80208455 422249398 744964482 809014491 349426370 781119566 422305106 853791892 301369059 611845558 738049034 801716977 1727655 333462415 427803704 974061819 144806498 767632557 288847071 424604151 744679219 842276480 993839686 995612349 782271274 972311676 303653106 906708332 75643858 723920439 543554696 623672818 20829636 714955648 192518706 677101539 5055129 371072296 346161835 802012361 625805056 840080159 580975092 828329169 681798752 955303415 622168638 700469048 567849721 930846992 796055538 843465105 773029192 806619399 162643573 201968766 716975761 924670978 172068511 377119641 91285391 461315014 988874421 993580637 561160753 977320199 385403068 595905977 247377486 544486425 937247133 983025687 222226168 766428609 610011530 663147027 812584722 881651609 158143455 691412676 739606404 926000384 541325621 674126321 713335446 965999918 465313011 894227074 529118000 670468635 243597765 289142656 321211109 355678358 724817932 832623008 388758006 946167276 935296765 977246680 76650504 488640815 979295930 992057423 841716739 862523748 514782255 716473583 9467688 371079514 153385306 472351528 704361148 957582786 98987920 410028504 182748645 732072741 307434448 675990086 897523123 909120343 811895846 889729891 781934261 950092942 498792847 788892253 895801795 978943015 916369089 966273714 211565857 461861694 306307879 868337479 77176423 797023385 741911713 944540056 584058177 632766716 319213038 498863893 309849376 959487299 411723740 945596063 617314281 651623769 893504184 944314442 308550947 566699376 866249932 962319188 640772320 664746000 88990277 630720564 64530251 731707705 839423448 923498068 683831342 922396885 842019293 867346208 959738870 990364613 785206067 996746400 202025288 480323033 134163453 511114702 92299579 787360920 861136642 880417585 782410890 785516150 871114087 920815322 272181666 910826000 113588174 787444951 511960977 897694077 780809929 876012580 248333949 294989294 25755994 232263525 11071919 167570508 101570319 774331205 144799162 917760227 536047742 885427329 595836741 949231293 365561638 399600288 263919218 874555727 999893708 999979422 745403154 751312524 694849769 948128692 440319477 570828336 239882232 506726755 276628593 656405996 835057156 925539580 580979917 718838703 877140491 926935001 226178641 407857124 378429795 530309815 581834881 968367382 297125020 346179839 797732900 884660834 8713505 993353882 279572599 380634466 875838221 945328399 225233790 858221323 669614642 708536393 550359722 829825629 726422965 900155263 423606328 644927428 482392956 665153965 547766268 788649467 649929157 650225185 815059001 949935711 217745957 591618961 892073572 988873090 102264155 769008012 841450833 914562679 411300442 922103591 925513924 999867304 846905507 891122980 154829325 391709846 983874200 999169014 918745311 991509267 570831454 901432299 913255544 919741132 919083663 989412288 142189453 526086846 137382792 263784816 722442817 903802214 422294855 933117811 812917071 973008150 279486237 316570560 711387718 818433738 432162766 844728992 301662676 937508600 408814441 510388159 320975310 499302237 743504071 870564406 349137277 668130964 964512397 999968767 724031680 993705907 951388254 991828792 317333711 374394233 85501451 633431245 24416906 375575226 317881020 534173265 130926641 326614795 445465414 564545364 484930340 666890953 850990669 962973799 332856758 917872753 436256235 869974603 972657280 973149478 810353853 954744219 987833323 991651068 91842836 448580267 246829217 729035036 638730468 834324266 910657880 992170846 516315955 577911577 135883372 915226718 399373352 728235597 702095353 726978164 248383488 819159261 73063711 174130013 115117740 381456863 663225156 860345281 773249369 788538975 897308508 981418901 812548783 827291102 339901116 907955016 573847138 657469555 583998742 781656130 94504286 619681046 895293119 909465715 873989168 965188929 285648157 380584139 393180884 556065372 418322940 493424581 251988998 345576072 482084458 531386262 786763243 954207844 728239782 798868395 487536161 886288424 485152077 766098879 948058419 994346410 455902804 638939990 647657750 696977177 712948828 863135056 39024118 244317086 696858596 793000812 610451656 755340580 855352880 967459583 829683365 863462270 439327160 440727969 385628175 774103545 744792593 918850640 895649107 912933036 543922148 921939306 485748908 704338716 448003873 618673469 549013023 949139385 732325969 892262408 84615782 122906113 378982435 609779339 81007476 679914886 858471947 958531737 394481688 658706920 999514363 999864892 89862918 183767568 663271525 914040792 296608718 815470817 890775525 912722219 916730072 959949843 387460720 482054090 543672173 864364705 734863622 752344168 878446239 946488566 754730471 761546982 403665029 938195086 145347005 814907269 464558222 822907547 843928271 991231612 405042216 697587304 840845124 971858088 822786924 956618834 568335145 643333382 461642840 918812313 63097986 636244202 194696770 830730313 362325555 736477720 353737803 420475527 770962549 864388953 916427041 938299534 952859212 953360909 730637822 956498907 145049737 357364273 182604946 570497317 450625859 672928063 8202542 439971583 726077523 978646278 139859939 652690148 639620835 843781336 502279473 981397503 915742314 967110370 924152215 948021880 444132148 932346777 631490043 902696358 327049013 708078858 577000221 826848372 531988581 881762014 175747366 433297247 309695361 404406074 309113997 310278958 430198966 753062824 216534749 223666304 107439629 351713748 18661496 67720695 68026105 139410338 347322182 462063647 317862908 482903886 959448605 987226378 499023417 915733604 55172493 974785693 316135153 986171439 925149827 983510353 429797745 713090569 227216257 321719312 601711878 676930839 753975019 814983837 513107097 985237114 388427808 889986759 40032720 852993476 104355581 832961667 924322146 931345807 122875576 766239670 46517211 773368680 856037476 864890003 38627191 41995874 13757170 58274221 627581206 664537409 883145845 984369883 827383667 879212329 960692720 971308436 175999256 262196548 625297361 845100622 122724030 283419691 520697259 614127451 235534640 702985920 804398018 912538062 930181694 970525504 247431951 502854833 242893171 781616829 990271503 990608282 968707595 980830399 356894247 921575420 348259785 869874276 360762910 911780107 212675232 309415910 708648023 846365200 217776903 280227971 529065365 854896153 721570296 880635633 807414648 910840693 844519288 955023391 183194848 920089101 718138084 839279154 810737974 980234703 698374042 948454912 940644324 942733687 216605212 266258729 580603161 658044792 634425555 835879475 721068169 997981976 142700387 946384077 598838178 713435372 486681946 639297141 838485058 852384909 129960439 686994347 720534779 805608186 322229466 439206335 140652795 476117923 347005533 897055965 97966018 609646218 474827324 982936993 310571372 716060266 603483594 955327918 930543896 985728344 264084734 565434384 407367523 710862424 34719137 264093095 402166600 571766115 649078024 703712065 570732865 915652704 696233160 752334869 70045563 573601015 183721397 454902545 629661034 916778411 348772900 388971859 286372868 611767546 503490128 650768312 275606161 337926044 907953970 930871960 230049255 330770663 324793628 553318472 261747472 800611582 152300405 834665716 679652536 865495311 416450543 689463399 936685051 960856819 386088204 550457556 451729254 727116252 206038519 380195421 84976733 640574732 838215748 928883615 911425886 959882474 546193947 687700902 199145485 990827404 56476913 275348816 990893845 992454249 120394385 864637209 284927451 656132631 360362408 721179840 661501616 955558348 20588159 472102061 541572145 664807203 960442490 983330951 2734115 36810709 476632253 641686179 123751061 402234282 710793564 766607518 982893627 986614070 729912239 984131830 88814826 831814035 112887103 511705591 430285823 487690947 911818159 927634612 644249122 733684696 916138247 943719263 920249767 927105300 808032573 892302999 826480715 928511621 682970186 945719239 900074141 913534505 406950100 997614210 856014266 917876021 340928497 519453324 735503619 921250671 274610590 896010380 131714206 542082646 979215951 986662358 242037711 329886352 842062176 845763555 622861405 913395075 1895467 15902270 757165900 960602840 463046242 503584309 430970707 610653683 381723280 833328745 79713894 412599239 392165187 957102996 451562426 672223471 504595329 923500245 865760871 936133928 670717960 719439789 601305387 728851230 632253713 892923978 262919330 824589708 782423405 870505617 597348463 787456505 349355419 567432539 615455586 664779665 317169092 848443038 89351920 152510533 184510461 631110130 520337607 812625490 737451830 935279131 959309707 995144157 391822988 651243169 12404917 659451642 631577897 980158595 592793033 830788730 307077161 748674702 5267958 603503015 765923699 916203389 981807381 986329211 818353446 970235468 62023661 620001329 541808702 952858642 897315767 963574064 999876688 999908901 281549782 386456449 970204873 992653270 975249958 976459357 551891331 700862318 13074573 736926124 304443635 429160322 676489130 840527336 505901017 981349863 637620195 684301025 397640365 678775276 903512035 953104524 114572255 360178524 34600783 82292569 371842002 838108673 804074365 977729627 548740923 641882757 64348331 968620971 43705279 289140992 37961903 220714835 186086836 821980921 999437894 999606824 263291278 601488236 854223023 992651063 202024321 241764038 210244743 702876322 823315015 963587589 130213517 927371630 577192965 944560756 641234106 736656312 78558821 897441524 792457993 829639216 890708843 938151018 967406412 973575038 90409868 150039632 984427693 987112861 313315020 951660560 10176969 13211954 866853111 990843342 723611848 750273955 149732441 920202017 512892502 635536501 140343456 754941779 949286869 997748604 449967860 866511420 667782910 942276099 219283002 575335992 741430782 949100109 335199589 620046866 379773502 879430588 142780881 827088941 959875816 992488952 158337854 352952444 459745133 522206414 172406178 435426109 308300635 903013730 436669876 955899940 556040497 764261018 968910900 997287181 603784517 835898432 414622582 929905097 871556990 874294445 987389448 998190312 517195058 651356881 348829786 467776968 295285543 845157839 255733680 785462792 928638679 970076420 437363822 971022216 743385994 769531997 315194368 355698716 59749255 723066288 736023392 991112255 217056899 329189281 203611911 845172475 601197110 707298804 165471243 693769038 834955556 912984691 412981082 820037412 323130844 596594749 461026504 669693679 511007722 650360813 162015316 300536752 391528003 743240163 382658607 565930830 404184759 647346151 60714848 149997327 233428526 489887679 284006490 730128175 304437347 769992589 473197573 840697091 777601088 885330161 257174211 951632683 57100009 839399522 927906573 959592880 342775418 701161353 71969690 970269626 740717145 884589411 539927750 940582742 320552347 920519814 698499671 808526859 904592232 994887974 365231307 648562516 598288655 673254574 963274691 975253947 634354437 732402469 664839937 963226934 123362710 375928595 695323284 901239499 933968692 972569580 463634052 824615366 159395250 811520168 818050036 913782652 241373121 414380098 722639772 836469663 118217929 618979795 287413205 336938407 302326154 713632524 491296638 716911232 95228226 318938723 52924817 708362354 954115510 980305854 872142709 889011995 443236111 677845911 199546348 907951389 403920943 530538872 706028180 834204467 33591388 656215650 41680238 257168961 662944253 731349793 971618334 996574214 106039529 903207749 786193153 875119037 94715875 859090058 112524634 423949328 66552104 910477182 522555469 781990824 403700335 659075163 437503424 506170317 216490837 783413565 342948601 666392597 21980488 437684399 657985292 738290642 229018346 452381254 822866841 880442411 797648558 826600819 779674394 805250649 467093990 887907358 185711855 553712431 817037639 980942443 174019369 849258331 838835436 869458000 770156442 804868644 561350124 983141363 41667425 654132946 520862928 886393855 127501763 885896368 395385773 983804696 231873142 252828041 270886555 904981400 813599936 973887123 472779061 969956392 223651575 767436859 438972741 540393541 261411424 566107759 908767956 993501278 412708522 606492224 986311141 998901214 880511968 933642068 656249874 685621582 998382641 998629733 813759249 980213282 817982904 839235174 42884323 80032720 443274322 866088433 933774191 959952697 927830315 945053870 475567018 509299559 25608552 32129343 683891231 874673223 614844201 869845317 535185046 887690544 380983250 510524890 465279653 727649098 529081495 968343647 12618737 656292923 774956817 854165348 512095073 856430581 121409008 824236121 408819526 988338119 592994443 830501785 255652200 679545014 610257518 935071250 59062963 77366290 5430788 709186849 346587091 505970054 713512237 826990026 884535183 942098042 457365842 714744792 832045817 967755555 104622607 338097808 970980200 993517914 662988941 970840328 626042647 857310661 672016997 761233871 361027900 496021163 30473151 427334819 646380700 699357655 53522649 727181554 885979166 943466982 882830389 940283741 629179809 825629768 88301350 848052030 835289062 910280619 590937945 831635116 195712941 315400956 168360685 664191099 705021059 918274230 695781101 927614729 436891568 605104089 853821941 966694310 931874765 958337979 34705109 290254238 52143705 641980264 445027630 494918954 188555627 837280907 232864360 784200836 896199603 981517465 545311270 782619947 877642053 958350865 296669607 956523090 717394065 934132045 268886517 897934664 43543953 163718307 621218571 721833272 924405985 990491969 195567167 840005722 816132087 879733300 927951933 932105702 772867677 928206045 365860032 524927597 37285714 776043291 113583275 588180826 185522814 221773203 230791766 308154502 590838323 680968922 532203081 717000142 2219683 351886899 411813738 574136137 768600806 945904263 883015208 969482003 282300940 606516389 158863363 640841076 399683368 826198913 245255894 566145313 381849869 949203877 530869609 817759273 422150107 931245167 559442930 696286212 690257134 754202626 96944481 949366673 18984097 207864335 686831793 989518362 138931728 640707968 219841273 820396907 988949795 999918424 636360097 757453873 142917520 168530367 294385887 392805929 695485958 717055185 55653100 169680731 264304903 753981477 876593267 972311704 533878805 558956723 309657907 598564857 51812011 528198696 883174703 897186470 673796210 834270249 391449624 954241056 691270132 831469837 495409111 991027941 749350667 912202933 284544098 858692273 411478644 817478701 100819482 238720795 743304335 990936155 946481642 974254104 407306185 784832342 771788319 959808676 803029008 931887043 913177505 954478931 297373065 963799434 129430924 183352433 361420119 826004742 936294098 945113429 425209891 600852727 245530233 792533375 572972379 975915036 794412485 868635901 104183640 212069579 125187849 487871207 702186486 776388243 238243631 533883752 303700413 588863695 900592176 983388531 188221726 736961538 102440918 411884997 475800578 803768666 58188487 437113246 20667615 352404231 399627827 496213325 314044134 646458729 361862590 573524009 405888485 469329382 399517610 830462758 348179673 728342713 91143693 140380987 715333306 850226567 790948339 857770691 290871034 612524267 125311985 580107678 477031021 746350755 175922065 199107931 722554708 895078691 215540783 479823483 887150464 948078287 621202123 689288681 796138520 894375505 762311728 986742186 62272678 344176195 18306336 496164911 609479259 935525357 298908440 628360744 331860994 746189495 987836902 992219400 929938733 986533377 320497675 358560649 32387539 332543633 992258722 994114248 811054190 974611262 75746774 528644737 990859492 998502643 726644454 842078791 790991412 955001098 552489168 595732063 371942144 637747353 111523006 823968279 291477611 807941417 601358758 658718681 137879467 621599899 363138491 375387216 730903508 866587249 991571178 996979429 575897519 764464082 999108456 999628225 644067757 797287433 475781730 949308295 881900502 901650939 630640749 726097098 341858518 355446555 111297051 294305723 958634387 990224040 883891173 924276544 574837478 588496422 244644436 508640311 409960333 931482104 536001513 758244130 398822137 566461210 51565718 558473114 827776319 985140833 271641269 490790909 755250935 932708050 569869490 885363158 843400049 946015035 645497360 919621519 822342795 998453785 816294097 860705226 878453141 890189046 92360669 114944432 684685478 910458454 67813386 776861604 623928933 753643637 598346790 944394895 38657951 93592706 375851694 823192049 928965286 949434070 318804263 863840993 113404177 142189946 389158938 757585424 448278792 678856429 719837143 928800864 151889634 437341705 291451357 615725001 758041372 994818565 549563887 900468696 746653113 819299571 460738855 846959788 588662703 858626127 990960257 994724210 601481574 642288592 981154205 994703527 79724947 555028095 251249061 984029715 552014418 968159311 624412341 737898269 869628504 874127092 204380713 920997259 264850487 807715750 752702134 776288447 822260854 983147786 791311230 849443056 565757332 575237963 219546541 692093988 525835078 896900625 779519993 821589346 635754616 883618600 647176377 993111988 157619065 261980034 340242292 374650027 54660248 715781596 967750486 977281641 503107700 988507913 448675423 649388890 836937188 872911390 675018936 861402448 685628556 798698351 672923899 759822434 594653570 645397295 811628785 829002814 515536383 540139679 284682409 970994264 103001041 798365152 345855878 606631886 419634707 493135554 952650831 963798188 968087584 969064258 867625989 971857064 519022226 874124513 662458308 742451402 543759341 596777833 718315518 729223032 926112873 974284009 564923460 769756553 582718515 605279994 62011445 313917747 997205202 999706644 763833973 952429812 862906547 869386856 136719375 688869486 796392729 953999042 321998405 711591127 259896647 632964088 36391540 799420197 942960931 945458674 815250974 962233657 911219522 941643794 812732568 914141139 951689580 954797647 178730855 774814662 499308522 709726085 166813312 627691342 969860254 980926525 582359824 696803414 354544152 626662967 895801352 956632669 554240495 922055166 245673257 356991811 672144449 848944653 500929124 784580885 137227884 538779468 301179249 689531086 535987223 621386636 762349359 927077446 345879724 441768382 47744241 62371491 179824423 959347277 345760973 836810660 465225424 579431269 681966099 720294637 415746306 905042771 798378194 873903951 630571338 697050887 855870889 871060437 772783478 841936100 831029055 893363083 583296941 605425144 380374646 630812885 186267693 692567026 283769898 768152857 778351652 996273655 770921025 924819311 696940031 806022848 869089001 927775734 707778534 977620055 243322908 263094994 968039796 991274072 208598664 848828102 36475497 959578679 267865826 557446549 215142920 872397795 617732581 715607449 785929565 985612731 186890192 372036725 561937211 904979467 717904005 824744338 863105487 960959375 501480414 546172169 509737325 957501084 707542795 804315664 477074378 746020891 161968551 549706176 873969649 898807766 737725811 764143139 871409732 873741917 103949296 543191741 51875634 149839183 749366274 775697356 73803243 519225495 525281313 901614357 878606737 919004377 514680756 682418785 943599002 954203251 883146614 988377101 230794026 664184298 178253013 191074388 322668439 616241521 78088722 730374256 962684652 996209033 55643874 647496389 573143326 710898034 327926653 892723690 380522960 802224890 527854023 546647926 142748383 230857446 649198726 842714070 503117711 510429073 650844855 668498272 745462078 993307413 668707258 674697282 487670437 619006034 11562364 165601808 462747584 891611525 671325561 692919924 757462221 933898748 832810858 986372430 562062950 861614557 522683012 819219436 781103109 993409393 543613872 642898495 851170030 900059554 851579931 899158995 930905452 984692740 603284454 936818953 191177626 570155976 49885952 853303650 274056279 563295272 361822924 519470102 177638051 988010715 137129732 223189328 488244343 498419025 45584783 848006260 86041612 446475712 167941895 429946239 946090776 995948432 311836575 510338664 466463296 785210080 722407126 765654128 980755976 994830099 20664852 653040911 487229099 512376328 54275848 552969112 635229218 861174733 360503089 418299712 908717021 980954834 15374852 166937904 846868478 965893266 274841484 773854587 245201794 805817712 459081845 494212001 13709283 542521560 22918634 232922377 779742910 780192119 570216757 594403957 753145079 772664033 699021457 957465456 708264190 993404608 884473186 981982721 17680601 753206462 580697285 985957210 242783399 702436914 75485302 410425156 665823192 891030137 827720899 857132602 913729463 972457395 200434720 203541950 850058139 905458164 656620341 921644103 300914453 788149854 642848715 656556062 117692352 953660513 654850652 808087895 871586490 928407754 63197 186039515 98814586 551848980 63093718 251059593 20133707 317327505 178454453 380468694 998895352 999402780 124972053 416188349 76356752 955298544 129071098 204861147 903358541 967326112 649144633 881914846 450925841 977403323 729607650 815395611 622321185 904214102 372018881 933878999 791585306 887735611 840756951 956700383 484285356 603603908 837953807 978353633 787069133 947870060 655853394 797607008 973574903 994084813 274411640 946482529 37885102 224363743 808118496 994631287 111509226 240405693 521594916 630890028 750422102 960931361 597731669 793012511 677196275 717414732 302691931 310783386 280904728 554171424 189833702 656562285 691765231 913618958 31288223 910313166 512767740 760875567 361475881 364646404 486682863 490280986 138489359 504527956 728402969 884447527 798197694 949353404 422905005 560785916 647350818 965763469 159194150 827726567 177166054 769500717 344624668 691401888 360065018 371138533 108982488 720547247 30123059 200684856 343540121 903660017 509943335 607140502 842133135 850791688 221649438 714565919 751971659 759362836 233824884 590059869 384720007 426734648 319626893 352393630 605018771 754482537 148778726 970511734 575256863 989543971 273632703 464070751 412819558 744417023 420983327 424078767 626939465 950190839 706483986 984925365 920094171 999880354 655615042 849520514 762804845 909843992 483430928 660027383 667791006 884166257 980953677 992424976 534677815 877299652 315038243 531489003 279565567 678010016 185933317 374571982 297522494 417338548 723969066 872035343 538174390 977439309 864501588 871265678 11350944 295646124 316190881 775026453 831388770 915718825 277569983 630399627 726995082 820561297 596555047 923860909 395680295 480549784 8734630 10442301 851239635 987506184 875082037 929379342 372969505 773520193 696388014 706202924 205067006 429389450 575223358 617262115 609355428 995824762 587363869 884038199 969938934 973672809 612609412 891743488 440196570 791732714 391379366 575070658 366402714 381209218 55727971 445059584 136381214 611684768 171881672 655617345 181341954 833784271 884027514 956158441 778367845 794374454 136196801 844167683 76762331 398049506 848611312 966719475 353718426 593419202 6691840 918222222 41510589 562176007 781471118 990514936 1811611 376207513 169877430 603607979 284636614 971241439 404336809 454010394 770106605 853325076 614591946 695287801 458274211 930798877 508135228 675065411 482123017 824719176 572170514 926870847 657783956 912142727 527134619 976162331 438523615 613996628 946150261 988409045 192852637 934149284 185975409 987966130 6774150 537206461 756662434 912663041 433835585 864391430 124341598 652400774 734129355 745859009 996390003 998126962 485877783 682480412 597537433 618424893 166843435 438986662 835155996 909243654 446135734 613539776 557748449 741360772 611283080 791215917 139995935 191906161 878327721 998413039 394960622 472773942 642897493 687705419 123757869 575983704 373787868 496881990 700371886 848839540 78898874 487393984 497866743 993249911 670367359 972505451 974140101 981031420 440530482 653124312 586205471 727540615 654171022 839176942 638880103 984351959 267167650 546741260 773353169 924161600 638762647 882487432 41742623 269287451 145003526 270527410 277041496 991131522 132259005 489046717 207399384 276814873 161654192 522644735 41139305 736043644 191579707 597244404 439363424 702648446 348448918 809531055 101230146 145644209 895350081 905724966 225675180 547770338 918005938 938590063 472212150 599221163 91085059 703861520 249422095 255374328 182764132 369713471 212521295 443426074 179116332 676349537 675620275 949271955 955364275 965927342 505743754 654629026 208245596 821170216 660737691 827844807 34259954 835511811 701149266 980375011 666221471 743494403 337012947 844736383 907370712 937794452 540244173 546140409 240721201 474074147 421690564 807396921 69559014 317258647 560843245 766967755 87000260 629189933 898473435 996836629 246074351 386759679 1032978 762164551 326815520 410152929 820847251 852717403 788213278 865820633 175003220 958800093 773447 24085255 20469808 779629966 326027733 868065348 122083479 947131097 317172973 465404463 624508358 998655002 133593425 521542676 375103157 827309376 972908269 984533993 533019038 933893499 796834205 928417658 723224110 844423143 968194057 989549476 175543789 226659886 291554881 345138151 974882480 999152343 839117184 869769638 535025324 691244857 341546526 988517178 450419929 925557459 82550272 592834837 639778338 803410906 254271795 444432644 143931961 374151507 130422832 173077522 264296552 743635856 998389316 999527479 202426542 414518201 145628938 938388795 884168822 953927699 400389500 744900189 727466206 763680111 322782956 948983918 685104342 845420277 885655421 908176596 879850775 923260455 396188022 559693675 694247731 764053850 852784808 897329835 965057306 971626075 366850062 452651997 702357374 773691443 169012174 408496712 264913371 340289331 355022800 389503570 976609532 981900858 797916680 866539100 793629825 890428633 413710318 705462584 928086066 944084163 705227277 894094270 285179315 299792039 82862295 553370847 879772402 976946641 866780996 911566352 192065467 503354538 46335423 72788012 62773500 514796267 793983866 844387990 156563688 798425086 856995705 978819446 552323996 628764709 765160737 769005646 397206305 596475282 395039182 906025672 268424137 348190682 161516717 221887802 402193526 783569898 99629036 409566486 45200996 774085445 105942302 664153807 783171027 883740162 358255476 976960419 907220872 912053738 1604950 895904518 415980738 492141795 668321335 878644391 912163787 985788238 395135221 462008892 760701008 837000745 105813761 174237891 476393495 709291377 738185623 879658904 983443535 999170294 581931564 819861287 650401560 945886354 545162671 783027855 268621946 809546358 884527816 947909749 861403187 962821116 497859732 715511929 76712411 209015781 647354237 777385822 751090152 957180676 860856161 935925570 390337419 712422531 549803174 824849336 369047798 630352509 487887493 540450364 427673559 484954763 345170452 780208213 475850973 621747790 19584870 820657329 299996823 989761973 755489692 905957689 688547877 990280404 30401933 210448097 416871024 685390264 829345534 957040732 755058430 876559171 910023585 994408418 302350846 432312910 490804211 605151416 247656446 270117136 775730894 814467867 28123656 701496739 906980857 927148318 104351048 273938484 910067374 926748885 967340067 971680102 577919639 901432527 516087921 969314922 821300787 983612810 118426363 527996847 866924042 916442451 153776261 942403303 685064272 781486111 838621043 980510731 490400114 925709283 490711904 712487312 143871923 418465602 91242165 405262219 991289973 995828157 986568245 990736830 357944701 780939087 832120746 925755716 241793019 836321336 993865632 997851749 430271460 902989936 596679209 684682127 280661188 988764989 411230221 908363893 344333219 364744431 314053069 793332272 448602608 983946960 895860352 950399736 645405706 725838177 290564759 294009041 47537294 831736413 724407053 913829333 499592212 612359113 132285244 837230407 279256159 700207236 728855889 747444904 695067850 986862055 95817977 436282995 767497441 960308601 909616160 971925571 894118201 950508873 91912056 578988743 949592480 959241342 546179976 889161585 475398152 823989918 761141447 885052989 628820451 872040570 994876594 998465765 147836209 385311667 902040792 925965209 235850742 628766892 991667617 991781263 64588938 877879751 208146969 757248300 901242463 985143378 242038515 354799992 59770396 534150383 719751386 928550288 269559794 733143720 472646125 623434018 341782853 592474214 505013029 642333260 595764451 755109770 335490777 660511310 634797548 986874132 154097625 569252138 445071141 607583583 715570476 768538744 75265085 567748627 498142229 673543900 689748592 695055739 77529453 818932059 888988398 950503554 621885690 967796627 137735733 282098955 763264472 771178547 723843600 897579136 328824161 916752798 522798140 846645750 197982062 553106874 680324016 722366033 994157400 994539974 556459743 756620256 361569628 689362529 529731115 838652822 472356594 991427459 547763364 773315279 795970440 899903807 181467548 665472642 70749487 85075083 538349800 718667079 101456474 245720223 975137786 981232330 326095926 840423823 6435957 513052939 59518791 456491599 92002521 642862823 598546193 617662983 846422234 874483507 104405215 441171271 281880803 554686734 418918827 848224530 561344630 898284163 408575568 528464987 282978325 746928382 816109749 935657379 551770787 606245548 982957632 989682089 694755244 789301178 860035011 986359575 730578319 755230793 565229617 780066623 38442539 570897715 750388955 970445574 754999834 842348685 796185353 858419343 91690468 170221145 789747173 863557401 175604890 577791037 131457583 594204038 194080672 595979842 413195987 684843292 631625306 920432233 336718587 590320990 891950038 946398876 172314954 715194282 608455919 768657178 750009342 785704564 552616465 593251126 99465778 896175828 322975079 733234109 492698026 953313681 24219913 233620433 390043260 567249941 291628459 498918083 764414429 824515811 2738217 812170748 546231418 593807651 190078057 632837667 855733160 902405215 810633808 885480857 593731146 904317431 495145293 530153471 900202228 913950320 974681261 997807412 762957236 814598235 195759538 923188404 161975919 224348479 175846555 348865506 642822949 858223672 379929153 947582367 984103852 990988890 451090407 542541765 920860880 927882229 50441478 924613778 786470705 895440317 445220619 843770620 992656647 997489133 418619084 520280119 930895096 934979477 615501772 772277393 902527073 990409084 678278236 764175567 653074987 817346064 852224465 927790124 553510346 788450038 334626576 852146688 9017452 434418639 312407725 928721452 349580352 969176072 947219008 997174127 139231235 579474785 693053404 996718461 823950707 851436543 517889956 830917382 544141955 678629380 797095943 842808634 708645484 861386347 348864465 624686644 787770093 839750984 840461764 908107624 326421429 571573688 424132155 802203026 451757193 454829078 397145002 754336058 631899932 867668098 957536248 969680136 269368464 637510025 658847792 813588741 171201998 174553142 456603078 932975177 506301114 944336149 390080651 693735711 370096062 947301542 819281309 846896863 76303883 695609099 785359538 906350229 143933905 461048813 985859133 991393304 948491127 979948307 357238744 924115109 254179938 484265567 546546748 955941518 591718721 764308120 160806067 893717617 113366631 262549180 615671086 783261870 97672759 671798706 486004527 667914995 35816527 731531460 77453763 711462330 102820132 283143072 82645407 113586245 138734991 887789862 289992129 587691359 828140335 917582984 793010772 806291518 122796880 305282821 340550673 611000277 970782801 983223123 338368346 578614925 819400765 993184262 501574804 616482058 387775949 722775589 900440083 972973750 154985599 552000548 266630929 284961892 827068139 858920219 517807791 769729840 396898363 441578301 82320999 407387988 47551298 710752186 607850774 798887060 444483883 621265206 178595481 345462200 131192771 153042830 79613408 705402569 625073593 757959656 181267013 701032078 406589617 996899643 737316676 876072249 488092308 977336177 725902270 777264540 810558702 903383111 343430960 641374751 942375859 995929015 323998406 780263047 597830629 808520701 690211372 907153196 776671640 885526107 963297366 967258247 832520139 864948971 789968029 894410383 312501304 352365290 831963657 985342382 69743835 141022704 835351505 857306706 694885867 709674271 469270962 816046633 369049334 869050475 105112680 133893924 952574820 984440181 415691098 706681841 365514639 792693582 92099966 838838940 792308385 951757340 990825775 996048746 842266122 961158673 158486349 507408533 356257960 674979198 554507509 948337479 710851275 744013706 410240848 568139982 342952741 484958110 626654907 686412414 836318585 968926927 1548116 625592387 427490758 476129633 316185255 513209160 72961738 914714766 505038566 564272786 209424627 248789105 80137536 250078237 130139989 949051328 922185929 938374296 543004133 634354011 682284910 941677032 861943118 999350094 919282490 968009451 630540260 759630397 778930495 990973234 323110372 931213153 771930815 929955776 170231349 202276218 552328095 973700818 585043475 864387034 91335545 676652882 748173494 924492897 830200341 886288689 45075957 468831748 95846651 800344629 84654084 296990737 510911431 742967676 162218735 771602484 892680686 923205638 595917541 826990392 183279987 974776607 852973114 938746833 370348126 737837377 966405108 971420220 553620434 700495021 9862019 230095803 422360286 721520816 441394326 730564079 481315914 806093005 946006200 952574590 213302185 716129941 827223072 940224969 87547459 989069592 251688288 733407693 524704867 711135617 769682664 841533472 562078687 955754401 276800902 406045983 312315743 414571291 680778991 937898902 335567150 952652532 47538636 899343336 298656907 909902794 683408442 933525494 739721304 873905012 657739694 850633074 563985531 893775957 407870272 471533334 908466248 973232551 126185165 539123020 751416693 886081127 714161471 732607299 513104287 723615157 345357026 649877970 409590679 727499689 560231276 898423551 831178981 840647225 494907886 655922915 383934644 638858632 464293368 923477221 46108956 651826903 512338180 921088185 634128863 690475684 6278634 504017463 304884971 727546266 298468373 727551994 857202827 974877288 217259239 839811413 959463183 999764099 491172371 554660885 89704955 385804718 657272904 873274833 507730224 614557393 196088684 198313235 358380931 907041513 234380585 649291648 481029081 569602073 257468448 372590326 197107042 245156381 790616587 841481005 154619982 236165266 588053644 704943357 668303524 964328576 310197219 997267566 36021115 839632055 795256824 960210400 444858847 525174877 50832736 160711084 711594942 794247270 623221320 919846230 366020678 375454727 623528857 844211464 899062519 912756594 886961477 954827237 885283479 948602277 564222001 771522436 946410121 982494862 465190788 483460798 801187911 822827590 374759389 378094156 305340552 570457588 999117449 999173319 134018574 961748787 585283578 757343126 131554055 246355451 49071085 967359508 622656848 761636360 82360999 718053444 893593235 934107266 533962148 883983068 439017139 603250547 454298448 752176926 615011541 657165990 576577788 628874897 924549313 990024096 953589816 976282969 836195043 931613653 785939740 912598889 464213170 898345028 711530097 823141813 107892771 352471856 775440836 844318892 920864429 944898463 283947957 378725663 753536796 908779017 318860646 635199039 955787667 959868450 582651488 693580461 522417067 849800810 194613457 332197542 131125773 548156818 271025802 749259430 282474916 593841606 211395099 329344824 969227857 995078177 534612764 708080855 63986647 845509199 696988972 868284545 300373817 532112937 580611440 995832367 110411176 535423983 701991885 963619274 549196854 809036132 538823499 968781852 212502860 956159431 822179373 899255325 893948969 965411280 536194994 562717835 874552527 925344813 883809315 888835911 222929572 984136935 864206150 919563247 384957467 968390254 27753542 643946418 369956053 470719080 957769299 960911336 552721690 770459168 353027276 425372797 161487070 837729939 104494071 477663242 813094495 965520291 525538873 625115501 992555738 995278668 880534414 932420059 263593456 965077288 649946022 991419180 657419945 758749083 88705015 289538618 335537294 628829463 841646936 976387397 762587919 837431477 941096017 976849671 224524391 932262712 547264370 960938820 178091357 295709711 960737453 967870976 394313426 602717024 388002489 618428846 361660524 646504037 403543775 501721421 183308609 754695932 747867462 942312571 163897718 971798185 719266017 945660212 243476765 747341457 405956977 577443034 836367495 873945486 62297799 954603184 737281958 924059147 473121357 995538185 538910917 786978978 947037724 953087534 402258963 484716377 303401727 992799053 608102154 802303023 938965006 971480771 686908939 917327697 394771147 735949878 11260348 55404768 965427739 975548702 551781396 559622259 962770093 968336655 936441474 956442049 767667286 888453868 306401060 668115361 602902418 608424705 215529609 353309510 935441994 974612220 956287441 978834105 573439723 792046849 5480232 728612295 887764184 919149949 682029737 976399341 813557589 981317542 97943988 807631813 126176640 637002854 925387641 936218248 300232776 751635834 969254684 974162768 489777253 666742342 678135376 948508920 493526159 638706798 666062637 823464415 837499309 845584357 115272474 597564704 877790737 963397987 755034606 790988639 816975145 864029838 19912690 886968850 730809024 890552829 784408917 795491298 779597176 971311330 69086761 313498654 922927991 965110158 541992919 573087282 269994957 783352864 35152679 72699167 960077038 968837858 542891313 652989712 353008917 849849418 532985291 619319257 499619862 515211749 479011402 852183823 549035811 988006501 393549656 812250625 192217797 429660703 452212088 669420414 830212160 946776026 547517764 639812510 92462391 563284320 87661024 862614609 645064596 929788191 250971963 573398628 887538930 998936540 448387303 801835134 190841711 334632773 599610690 746544516 193272285 675255198 747610086 939561440 907158814 940595169 375956637 803289968 900921213 985229731 377954130 893126239 113388917 816830410 49250604 113505816 566047290 823060248 379233876 730998077 935163 207965568 931536983 950729458 218066103 738885713 641221477 753136973 881421937 985266849 310905719 691677777 284429857 396767661 211494696 321667914 196332475 265103356 966396447 974372340 423557559 903752382 286875631 511516306 415655880 432120907 857969905 873611377 753935485 861756386 303081008 682185271 494760681 946257028 455764746 948403242 124225997 369105284 823920732 885455474 926956748 953798502 203258171 993023787 655063897 988431813 213331516 583547064 308141826 777284790 415476567 497470657 895596690 955912729 370924016 705769011 635294637 685196205 644014714 664446114 492530719 506162752 752292515 842808566 846804509 907917970 404501104 928503594 391056644 955467296 542757254 625843806 977094325 984180373 534220694 874992529 475586159 762020307 758691515 969283870 314200457 845368440 899434878 986420852 286277300 781537107 859991072 907007238 866788370 928146760 601947541 926521074 484821036 811457247 671641382 692311822 195365437 213515892 370135210 875952286 503273939 990272014 153649073 737458627 161038530 339286286 175135829 877888672 185018598 733894066 994706622 998077978 632021601 875715726 31988879 457738584 543803207 801493599 303406122 992162882 474772723 548702227 645965091 897259707 861971250 999559121 309173459 435106439 987808154 995817731 681512679 707264032 395342259 860659851 565405625 591624198 332291401 445022863 361206388 404817540 78064844 511786891 876410070 933846085 61860436 454027170 814330647 828447240 874146682 962035453 419181188 872170196 279754202 526018222 991915688 996966214 983242740 987196401 223877334 993351391 289633937 974087270 914221796 948995793 350304466 931659687 238040224 283387946 317634338 569398939 220737626 668269005 241566399 575441984 710164785 831014590 74440982 632409662 500704143 958322925 446972332 576523755 789970597 876476071 558403472 771509248 432990255 862503914 319406214 664004897 525137321 728627637 702930521 908035384 99211493 904077145 866007912 878084198 549173143 974481494 540716898 564968659 116518636 437075165 953107072 956877414 650710901 968791656 633329981 886462016 272494029 320614958 323438632 614001070 559664910 780573375 185589769 547191582 182179038 628324230 446591738 958737723 359622722 399212186 307681743 408473283 362951031 920542339 139574331 196100627 866739420 934371120 88768008 774741129 647084217 940897390 617706073 934716807 120500472 508354749 300850952 471845734 475126210 499265649 497022903 787028303 793033429 956390866 449262982 928207282 975629119 976963647 117899435 424096023 945841980 980490752 233805085 963115226 881483527 970626110 888115005 942173452 372475075 856544586 184958755 980095562 254462338 916064545 92203796 294861473 280860572 282016336 767264912 947648088 807918085 934464635 631423620 631903187 671971979 890620901 489160789 940123915 414807012 695845769 232914325 409772755 205398522 943446733 727075210 851946301 545386431 776898759 92938570 950417031 858697987 936033328 496982817 708288888 44565108 136522858 125861072 391899508 704268335 910488754 825528048 983137131 557817652 792842899 682676168 747064985 975607593 977801910 678573350 719122301 250243102 815308319 706298464 716942361 261343197 943210800 5279674 709206825 780661615 881629915 577961206 797410915 339899765 360067872 212141373 511481686 103350925 472586569 83606415 369375870 335547020 781961880 178192444 714639535 390295182 453562437 381998166 607626935 95318290 874488788 648090158 823932429 197048523 926666317 372011164 851291448 825218039 919724150 430271892 580822614 284183030 845660067 152843372 966121898 39748279 189357346 733028742 805296775 150918224 959851335 245151162 636930974 407168214 575983064 928944393 949707448 690212520 992604184 790995622 834858440 118538538 455898638 585691138 968364611 521358822 753340752 704627611 829928308 690653049 827839885 786210932 853930450 658802161 785766371 297222361 395764162 772098146 816143576 192622007 854799986 594513669 763117801 101905355 295230463 10493649 117626174 653885768 937326659 766156459 898281861 252906400 481125540 667471638 703179935 546968358 855428934 986372895 993996746 240669622 781424782 877500446 905854196 831564368 987851264 229340718 295276820 373629619 886778350 753983830 811253328 980859221 985463925 371431212 596127135 769980266 997541752 449966418 574639265 293396323 729531107 57897203 669749420 600985196 894534836 678344268 783904522 738155318 784656461 675349903 857692877 330401305 612067688 30315193 106258327 297714848 337550712 631911461 976512274 174618364 767532992 469055878 676944128 32312474 879897537 613684159 907153392 220464210 409056391 981588696 999480299 434243836 943691744 342225153 479874195 499830364 998252502 984251939 998648371 54010139 854572100 469961489 872567613 462583453 601308695 773247161 909726779 217852026 883553535 104713324 389024731 136128072 764566301 998622870 999264785 194872643 226997663 980087013 993303297 210076781 827032237 86467036 288839029 665428727 862809514 61580785 872267475 968176889 978832854 694277446 777611943 893519859 934110491 792115578 797526816 854180822 974423364 26712415 128512367 925084295 974040273 623478736 925638682 326399937 792838991 45804760 170875323 408853281 443785339 206963160 435351664 313466506 417548534 86259186 250588608 830474335 987741341 228227494 266681540 350717514 549634073 151323222 459907659 336817407 457933148 687295885 739952911 583903852 614417561 738323107 930076040 589031433 800536397 75809560 139293128 978144812 989754757 512259008 671058479 766073689 954882720 845783716 892806809 811395287 848843809 196404247 904483177 408094518 743789690 118592830 786247093 562747222 695102016 138174305 732730218 910964715 959296168 423245294 977341213 211363804 771289957 282914538 541325437 348332513 740543151 13407622 534555257 340279077 963585470 452113898 634267530 835127308 941166033 59068650 923981739 603853854 626489421 159065731 741534247 600500660 606710225 134054165 504837597 631819149 645339073 173564501 941171436 227084748 672310146 905724922 981364732 459335329 740647175 510478158 802268744 513413830 611985557 223831426 754538941 50723626 462263721 934984865 982776750 720003357 806011051 538513056 563868380 312184844 894391509 978302743 991755992 625144502 659536868 686312210 973935193 172129275 659537480 650659790 904168579 974013294 981391054 456149690 605175947 725633973 977783297 447428472 896791131 542709273 938931046 12396556 291544327 654927780 773930989 674366373 891214304 507603378 613212127 14856454 217774353 946432478 977686219 958170398 985725101 315867194 459846914 638155055 704671552 141100711 427850991 120741044 238387021 109424718 137711091 46302577 407021688 688897493 775818935 937852491 943142469 403496699 973094034 356484143 937420418 526839318 801670772 937051603 941194386 248070873 795697032 732387907 930917412 406695384 654348449 220323385 472738893 302781414 797062496 313825569 909793182 971646658 987183462 480256632 500185823 741233590 944462406 992932500 997516898 281768066 583059467 170619634 474449288 861462177 906040676 71309501 818709679 581503664 953383125 183561476 417705098 504756333 851315498 460811865 486423997 23690342 490041019 872182270 951224061 408082267 954647675 810186851 900047811 768140001 819903225 949214341 980793693 25006122 470347591 976989146 997972578 362880303 564547057 897345034 977148207 301152596 929814203 405585786 643727111 825118824 876044817 611538218 939265140 491664 582438950 184777323 380308023 645828808 753564873 881487922 981965252 371976029 562377186 528115878 725161565 156725184 588000468 355890077 369973158 595274698 902984889 185167424 425344050 291837124 836535502 277591778 395273876 891483855 988876846 982723782 997731000 841191505 994722847 695629698 798850221 23229231 529756376 786310848 847722305 394555801 399981109 524966382 925137951 905764434 968607315 276540425 583994265 312468974 375152274 274839711 506269679 147675050 192765053 670659610 926106345 147234044 765791985 468807383 836994936 543250089 724895967 306229360 620635514 49584982 743887154 682863764 818648643 796867360 840515455 373197706 406677503 440256161 821448058 117558885 966822020 710032035 962497190 409271262 995537143 962295116 975574815 909674108 942935286 817630656 991766736 896840209 913969070 41083527 779970638 209956523 861682736 291710841 717147190 776434015 986828607 482640322 987441048 231176639 459841336 970427203 979140254 549683720 661787560 171262841 922500372 138536307 410096950 3352516 734396251 467189935 977338571 434401234 577787017 743859405 820695844 960447662 982604505 388731014 646847637 72335583 113512896 769210204 898040457 345486944 725919400 249425282 808700716 398364342 921634744 494919684 645847141 732990057 764383210 620616264 937162166 756279373 993574160 702745277 737881651 807398976 977005600 300455789 626847909 454613060 549580741 293917758 338277573 525753287 607027293 628919050 869576070 575569398 586989464 815519408 879017447 452301307 479567956 977890247 993389192 504813659 526214049 192969482 859874619 524851943 844926625 381279895 404479199 203625403 523481396 600661580 867664773 493410393 882313942 588621312 919269225 786893353 873338275 968828234 994633490 603397996 648286655 356857593 937386547 462423481 483588653 152948345 923828419 318072943 915815023 452753800 518794008 12232937 469161470 982441775 993446728 444803453 847541608 321268819 821307019 164464241 823136412 714115313 797872689 662712794 801272000 28542361 807894420 305194702 336046914 579574261 613226150 28087442 860616078 34836017 478546406 682434187 838224994 808222108 952544513 687149211 858149690 553803367 791458567 577341048 983807998 101948230 366666684 838534932 916912420 949001435 998247972 135219488 985669126 26678151 335692927 228725267 827789171 537574059 990561349 203336717 206039455 683139523 812137146 987405019 990296178 679620703 689427435 88282701 809862009 575099546 752819958 104335750 841601661 998484649 998787249 216121915 232624580 679958445 766767298 977136023 989203462 330888512 636528067 767411562 914602796 142846756 847916450 721208230 818361678 172366909 605045378 685209609 832309316 358296135 839137389 831966173 832949340 800349735 919104818 766495656 956715186 784718774 986875586 556944941 665020057 282721200 296387942 770559954 892501653 771407411 955835737 39542246 261887480 740358908 858677015 956186978 981514189 147777334 629094408 386950841 452336513 447541087 551667245 306356282 492520648 299074287 788151451 414173510 559627654 482431612 668289044 121147291 655539342 217894666 252386653 185366886 501617564 631731710 718208988 878342611 909049502 950579913 996511632 508803328 587295747 472275489 573485611 849419043 871106471 991264248 991801220 734418831 757599590 795224624 825444309 363400715 690526943 513658570 836472614 767926147 845291137 73548339 410137311 617872698 916915752 362698620 869753806 944718716 995636326 451198229 631643760 378631249 468281551 538866187 998836422 716660152 859133524 56548232 324112073 464681968 727708422 732804710 775019318 185137821 569324878 400210959 987751311 217866002 680974728 675626978 731168457 231071606 414043298 592391694 688483219 818046497 898037555 727183928 891332455 47658827 633784583 741919066 936392380 883812370 998820470 222333419 769809722 529863108 928936642 91742954 641730339 551394870 732111329 651441262 785956396 442258329 601170614 596466465 652974005 743214798 877901412 443375297 654158179 722955795 852356763 532706024 621754802 12046363 866108830 377593261 529087169 420088280 747444591 862150537 995410731 990978063 997878807 295953171 825807535 101451153 866285030 865052403 982852905 879908170 998455963 560091818 989851371 182693905 851306023 248474248 398880973 574018703 775338167 502098591 842216275 978152426 984125743 249053153 878828887 696053359 780074028 452795881 573094138 947264288 983458016 993039236 997454153 608588640 816781094 748939169 946755063 681266108 895430287 782470379 973203725 526519496 555790268 779987475 989759462 530882607 689209881 416277996 556382189 509212911 644176649 205296319 860240106 558670382 566701591 903362805 971455667 314948765 914564599 270639430 815800177 624141592 995840098 907920015 998386869 512782823 549373691 280330744 454062850 680652226 764206302 281518531 398095049 370977383 826911252 839070828 935239973 290794967 433078923 257587563 812433259 513035103 756827607 780777878 890417153 103939273 946939675 717372030 725036428 915412623 957666362 74887472 804281239 286682914 583898325 708704477 779579554 819023429 866186336 380327163 767140986 855170010 995210376 565059820 773775025 932631389 957240222 988408505 995441069 742020039 762072659 945531262 950056523 379049942 640644514 528709772 767488035 366927257 412172637 414779778 847967041 898318883 978849694 397156404 603054392 429540926 525253246 484905614 585332715 984125312 996020868 706061631 874918841 696137576 994541001 179643832 471063986 619038552 682652183 617703899 924907667 440296660 749511074 646929583 909516490 52890601 541553188 282710345 715543798 191104985 678621207 513484800 870958808 361541736 365838253 360730254 445428972 651227947 879019450 393001662 417439098 313557402 645550798 981622371 998923957 781623552 813306244 12887104 975587877 322852561 711392607 891858014 945235696 145058695 351887974 563254709 574630989 607277381 674226125 584186542 717591659 240449398 426276214 235526568 327121384 109565346 579373978 849034555 870724482 362708305 457960793 754789446 785099134 375373767 492730966 853547232 924631793 497132927 987060824 72494059 520067543 229666561 841031203 675695642 920443546 502849576 943075464 592414026 755927456 496144833 879483374 542220949 616210338 372907371 757384535 120932142 696966391 651655188 980824701 660396443 939427228 182250343 503607389 703372427 801920409 525884013 546408775 721646285 895499482 634301174 810772308 647649918 939574705 773636406 932919603 379345935 517028101 492315336 796420512 312649406 854663176 542815615 642351895 71555942 195132037 894936174 918593570 528023456 681255414 511759933 512541017 487990063 504865724 800191554 987176448 841901697 862870706 160455947 187451517 28735064 744389364 901553316 905292495 638494060 967269854 839144202 999011207 890317026 893291594 458362589 963912807 434048655 550514274 838756211 984615860 988812890 998922107 182797021 234914759 105888081 857538961 300516987 895261289 584673804 998935167 88390845 509071718 717671033 821023611 156754739 763009422 824358256 849275522 734249502 886567907 182377497 649239075 66300262 888864427 681124415 712465169 788571764 935808609 659394631 842183574 964345623 992758776 939639438 942385799 642606322 806571728 560356991 647487780 246086187 658346540 904228169 923886341 678341555 975268207 376628536 812314615 320782355 842607095 745987447 957224068 388696007 948531206 698249372 779669477 795061998 878256844 649426903 740899058 753003214 979941649 82924051 981664056 149239072 746470632 174986209 387239639 979893540 999037771 408927900 958246717 663262891 932591238 394547483 810662684 503573118 790211547 631534238 812340104 19071354 432167913 639434317 955037365 336827481 355908002 999064654 999538018 73603828 760184782 896141575 913759357 75185365 585706231 223244563 845270330 852853683 914015314 651409396 930036062 294547291 413732108 262841351 279290128 257343758 418061513 124945648 647409162 717043124 832606618 837249820 933526935 834208805 857810350 173124543 195866640 47778919 540295688 250828187 917091024 321214854 395792560 279626402 467554256 337572276 368173237 252997229 889002578 664233068 800367206 254056871 532452608 290560334 415971021 748158087 754546003 566072849 695183724 363014287 934752331 940059790 975077000 988666760 990891845 689273302 787107871 985910999 992526607 206903153 683724536 971043095 989669555 512592373 653910283 481615643 561211081 756955794 794644409 423601896 710663827 82048271 323253527 635371613 962364158 308271479 315423561 478611238 756003108 547193207 759211137 797948331 949305481 101366438 388912669 59383845 876447358 862280297 912975655 978771534 994691493 31803292 869294401 556771998 874925753 687570234 801351198 823098072 889114834 654053768 861025657 907078197 920757605 515949861 688803904 666215927 878505840 762700904 997892025 361603302 988194107 483471943 537900845 553951894 966835391 444400832 560178123 847330210 926251585 546205079 875152735 494330865 745127120 29944268 904373324 695117064 815158110 131078442 922599059 344213679 963104111 301538253 470716638 981792340 984630171 477223973 596722286 470478942 725527756 445227657 564446932 240544931 860120565 373073850 649023092 393864474 860231813 666672834 950135412 925537360 970185120 716410969 736727032 901455776 919541200 229534261 253702365 688680152 715637124 141445838 336238246 206068107 554567985 237252416 468116528 405016228 654748151 885663432 965786974 837774782 875943002 30825610 122481479 739762323 964167626 200788436 634338539 199715524 308648826 885027358 903871680 204911540 710070804 941234717 949007601 27709810 732649602 60903185 170978850 569614519 743457369 239148214 540250512 502178665 581983170 318504391 820373853 245603985 587211962 902352318 925960242 284063573 386518678 640421258 652282300 902205967 951443148 690859361 741127897 260956562 687931408 915205092 970525450 475066049 701636960 645794411 995015949 531741367 933130183 51744854 482119360 255874765 787959031 699367487 934519875 598043696 875299418 258410976 657742470 265950340 601820341 719044515 898677244 610288055 973139441 807192281 959455269 821215003 872584811 61439169 478145445 98219095 193746531 432679477 951178742 780155934 997391735 361595051 781006329 444557230 805215986 364591033 960813716 85578916 393883452 389611302 486309882 723087945 939837700 855597611 889170385 345060757 491443771 68925762 974049743 707522506 848563021 87449317 895673097 156732261 306749755 735094735 980788195 373774388 557036277 353187931 367952895 417293583 442920093 801113760 934218298 135454409 528482526 589300896 637852376 615766875 872173705 91316662 772987690 297790345 797617873 219594794 290368245 173884513 932734080 118215411 367056941 414960371 730379200 199592338 477416034 526508640 752196703 945222424 998114190 471928348 642935515 496901224 682539633 170601375 403011908 736238091 827059123 200105523 798367043 3257382 532253676 895663559 949172607 373078568 647497374 545797957 854802479 231623513 291394867 108079317 857738100 191063634 733347071 460202498 482498941 432839719 638484275 546969453 725440703 427792687 954252203 203892132 335254546 949469731 977223103 694970814 990803316 602799355 979631877 697141996 898656971 686963977 706435771 755572544 844788330 191515181 717295207 792601509 892650824 931545461 974308218 401027263 879900563 817150115 938196464 761878735 848141061 691203282 744986330 467807566 632782451 529309150 845935615 964634524 965421729 823940608 934231582 453226474 976660041 995718354 999172492 559834775 632082997 352211964 763342589 685361695 788281565 576642596 789206800 638304879 848298417 199155005 302356172 629059098 840310891 288986427 623639311 354211824 354964678 182197962 893268948 303516815 317694120 437812910 652409524 7196613 305137601 26926072 896435324 193047774 704628032 806482344 922680297 574923462 937341336 446546440 769695558 626538728 727659056 201416740 875814014 334989482 428737422 690486874 843126085 515234532 755955743 39066333 413568371 796065270 927926894 278495813 787219631 379252542 996349628 563564797 576339208 174214352 855431350 624138397 650912889 402185883 646403654 443819555 802074076 787925378 952889365 490462336 586290445 607878011 628288338 856128152 919902171 575784712 649099328 515498541 648827153 916182416 997048359 193830702 484034249 480099811 911312189 617619899 918701564 906585892 928090097 442769335 749333097 124024391 860721151 847893340 932248349 428489568 473252700 986084434 989328810 645937925 661062779 162493037 440592852 752831104 774380254 822736959 825280165 855343458 915422846 179362532 219096349 79688335 407400129 525669915 840115613 770525857 985316851 131240391 743088139 230202039 385946925 724935783 736050939 953134994 957867154 622334188 852557508 183404225 759687146 26911995 838544024 457694293 803201094 880483626 884055502 337050347 434683958 920989953 934988845 589904082 836191843 164914240 636820440 267436085 297067626 256650588 656946575 619298810 813461884 816218976 944377031 600623885 784696313 238293301 753601139 103260435 907050659 948111713 953740085 291903016 878750997 455754734 960811899 76669202 809900960 307550764 472381431 409689911 843277559 448852123 704138499 835649402 937464319 597446607 893556733 445707242 741712348 596536921 649307175 268523273 443455386 98735407 861218245 593990766 885860424 950694490 954343351 524000078 890064226 295832300 710546387 268774913 289794373 999362590 999621315 464725711 795389135 698129285 951504397 837671951 872272416 18700043 359693063 340510417 513992965 879417581 918717961 95308637 189311468 562783218 603285101 520495418 595067014 784784850 978242906 944809523 986546728 697844169 899129571 848669865 940711069 449018549 867202004 392218375 626125772 192908314 538958053 605729920 709313938 652990964 764624733 343471384 943798383 340703624 646234039 910715569 933968242 325868741 607764222 904905522 978156430 158006513 956232127 5608270 267291799 236374050 272950944 920107910 998379008 785868025 969332101 693842107 890769207 466330319 569015398 254493009 278007562 969261303 991638093 114316370 468422216 525127749 724901772 434880873 788480453 188447633 211333974 654186130 826079256 403567772 486066124 861217562 950643472 695736128 708264030 794201269 971794098 223485251 934547728 759534904 960655260 829346584 834714553 22220281 670156343 844534831 935262652 27749449 661200340 111329841 508342056 933059519 973039190 217027917 575620636 290878625 656353398 943856566 981370509 543210575 733621118 177176104 840062861 936309152 993187901 926709004 975386302 126486032 240801119 59809119 601360469 221408957 940721517 16722715 656765665 582738966 657104074 747214625 949308996 341369283 697059598 754339819 998539853 730673219 909311932 910477533 931825611 753241136 828663981 353820254 433130025 882296510 967424029 294779031 887896639 754410697 990969788 308776237 904658330 540340327 827326236 851120557 940311352 740009350 799506705 301605033 859231594 567892528 891018191 4658003 906360092 467863917 491345202 719119296 850187900 668402257 686060922 668281582 957652251 207248193 984539921 808109748 958375218 4614422 164036130 544699068 593803817 158917119 981649106 360331468 763596397 493632448 869528011 177781132 807228230 99725749 994242155 834072582 958162839 696533469 827102773 389373336 477222708 318172730 856259423 181069881 504325582 741010078 901875040 38480481 786990442 299899685 571980936 178586316 486184517 797301378 819505032 584306209 651331440 45920558 533689863 536509554 906723755 810040821 857896998 71833960 685859793 540865060 856474113 553849679 554994530 877657111 915068541 872801362 956939753 97152341 714482959 202697514 544984171 565263425 924849866 92668576 642001516 409162649 426015356 85964450 441235511 863992324 908790621 539939496 835500006 437702012 571222988 179788511 475939513 414483770 602558840 471580126 976178681 937819356 938764443 493989062 948947570 4627206 51876614 321065684 900106219 408832745 893106488 349677064 611417700 697540034 932054061 517590082 553363481 650899876 784277774 975756262 977378004 469701963 487018487 520888992 791204118 796245856 800846430 118212391 151813920 791307636 865481986 126087808 981303613 591018080 783380835 500164770 950742684 294635383 606157635 762460951 948504695 692915104 947078685 346474028 398765777 534567550 539170126 319511255 800728575 496010754 780432636 227206926 811126389 101063158 311516910 187260264 513597488 632474566 721987554 882295198 964941150 450661191 795423762 777393056 922338008 65406796 752163537 58523744 194443639 495358802 674133988 291595035 904334205 315276042 568464104 947392293 967057642 205815650 457051920 232920317 400137055 224447151 711723615 298675572 569497517 634797618 674346212 854993447 904600369 831447619 937539925 881583623 916623252 162451032 686943810 672344936 913790651 84137875 456048200 141670816 742833506 839793482 885747466 763953820 903781047 736537827 986676832 415524608 826838098 770156002 856258054 930605917 973268114 959647961 964849303 509601753 634455800 921746049 960410161 939612943 962137483 636566999 700061983 787120443 877508879 520281227 765022578 431383696 689885138 655538700 765454810 211041639 955677176 116307245 546556881 839419107 916919473 394611723 937406544 483191024 993732834 406849004 500125365 240578964 828258635 714087717 962770347 301690763 579125914 631505448 654707025 328627931 553976918 150647571 683302192 693590807 813018418 787355075 976198993 339877585 403651843 853915573 889030573 713764107 951489514 267006248 723133997 857245507 901493477 370774013 629967372 462512491 708418598 968958010 971449045 560403599 711583170 265389656 382239823 410207212 426277666 934292632 993548605 779410042 807721766 591733000 814330912 706574533 780858411 485690299 599035140 956178741 968790800 441704569 780861383 450435478 830998459 20232844 223397007 550590383 565704858 927305205 990751600 677965870 784967706 735410163 880671587 671130561 686419637 319907218 425034703 990453320 990779552 817975421 959405189 493951595 877257576 383342658 609719896 892595051 901189206 454082717 773906505 941810888 981228323 613423736 870941857 982580762 992220144 167735365 287779800 524523965 880026804 714919119 936946135 80093347 286803620 502358566 920267075 45401583 524356070 472502815 493958660 665527994 985426993 243263656 300264408 46251501 875040510 871055 697811860 273298930 508674129 942319879 953305997 165588508 753335160 101545070 420956762 681539303 871980908 913140532 956309185 352115495 906353174 628490714 808129384 396912993 964259572 763500485 780903238 393770281 682689866 280410876 541902694 689143694 992123296 3032469 28787692 113038139 114621026 521682856 523922571 289181272 548293532 160868312 198392432 908661534 916933620 257953949 956645880 30107810 603124738 412773645 655869834 668353315 909056570 843575365 966419584 797183628 983664196 80879621 99961004 121832326 861120419 682321197 921710279 636065310 783645810 414243406 998301971 795802158 947989702 296828016 860362214 628253629 921966693 205390249 870234949 326197408 624400159 297176423 612727182 926347619 964718661 657794703 852340970 776852008 936602914 176899325 300852878 865220697 885576456 426099434 983554073 915739840 986552916 897924512 898002328 494920192 678203300 287187970 351667345 62420692 419952070 622908940 967736164 514688103 908998963 871166089 971910150 298127206 461654535 291712371 935611554 141753423 162550832 540263012 748487421 393044108 628200543 430362883 867133425 125101724 668878489 434433671 572776310 250476386 903805544 140757324 911579313 414147050 458737670 170894364 692643336 702404034 799172553 907144154 923720342 287634252 359655676 850231342 888383080 570139333 719134993 90674881 694304699 595907942 741826095 121083830 827383774 963520556 965731036 672167232 739476498 648034644 719850590 233965443 998117760 502490087 917398734 59947649 911333362 906927805 942720918 425134438 440741365 381696188 613519123 609479862 980086876 958374468 981329017 715494287 874903948 634320194 925758330 840645651 870350120 262086815 849624495 747492234 862285980 179918511 792578246 642348233 924926613 109590788 198088425 937524515 993197871 970901881 976017880 769224258 961486224 949796784 992586429 468056493 986141785 248153936 277046835 968370381 973885581 656552972 706016366 324398118 522181230 136473762 241059012 656152548 989735340 520522859 698961215 890117195 975853360 419138654 821121868 879630676 888010399 762202609 845357529 125467577 973466545 536789299 600900538 316741157 996580910 277743156 517100434 95550731 639394156 983659441 987271934 715069557 844563385 715347251 998318872 333306751 576204270 314335327 605186385 10081622 290449766 832721382 848430659 168108814 516295468 944577947 975310283 231045476 862285318 408669911 462912877 84591313 110838258 97819190 573504972 331634375 828029873 391854469 748650447 784473069 800751571 734060568 775709379 289225953 674681137 616225124 862163740 947766836 998215259 796413595 993826213 210789153 791241885 32769228 843594247 999897165 999985562 920083054 927150135 272160313 681766830 85145052 452972838 304253244 388912661 372284252 623090337 778675785 855280719 328563516 575528017 277075473 944764428 514913851 754269156 833187353 923530397 320564512 332411174 550008767 816128138 575005600 900559873 994645249 998069621 795268576 987246871 569775400 743742334 140776572 464487678 630493870 822025058 269624076 920845535 381237227 590842117 955318840 962036713 265982084 330398104 491139434 912093449 41822821 181417892 202010266 310597265 289353526 751472027 931657019 944921961 230111536 424729732 452221303 745070968 301957140 483261016 98082000 781425364 575249593 995199094 924642854 936912640 138967504 175743131 573937844 697433183 680766750 961495623 731598471 800986752 396348137 889294204 65504149 353336559 519985632 944568480 172879807 403588045 289651073 621394620 617048725 876138223 842410698 850105235 573247450 931668350 448196248 508798155 645455602 805466350 638568840 643503782 119213293 542634298 50745040 763646228 756621633 851865993 275100795 913031426 720434267 846558052 462705883 847857319 224278373 965108055 299673843 474378798 297706734 429728639 100987390 212034230 547465847 862308013 417083429 582188801 479770627 786943578 422088846 462973215 672143216 757427946 259206453 990500240 760336933 978672444 362337146 615388948 257027915 738432164 161050719 268361654 882802970 912705357 916827353 927348312 686271457 690258351 530204785 976331693 405376148 462821580 733728097 789033794 882965156 974799262 504137652 992956020 497461803 906019787 796743406 992860241 776697580 909511488 603875520 855413193 653675227 655547586 212786175 259090388 725670768 874124447 304137755 366722608 489711808 938721214 207998271 280098352 259449859 800123430 133468859 270367559 187269361 861694992 891567972 907790119 772574837 873032518 912023746 981700448 395655086 434718767 478852734 780375071 837741958 927389848 311056906 495008883 529735750 538385546 819049021 907692341 798745626 875738981 403645207 428942886 594483116 774887111 125852069 767444484 247081659 423365173 203900735 805872792 878309435 883884531 844095468 882616775 959429771 966464019 137503687 252349712 38832522 775197769 187733623 430247490 789030159 826375834 615745858 886510479 473665127 546716386 1150668 565273154 859703314 892888789 73461751 395229257 402838660 620443014 253911089 996900425 203939345 935390195 589764462 757937784 831521160 921169569 692063659 826880375 221458487 984045444 529061239 880455948 824365717 952363604 416487917 817319811 413417642 490250971 32879522 263780005 824656340 989900602 483122142 919590133 686394032 969677537 927696799 968719885 921573388 995478768 834393619 900426362 642806556 866080416 290803037 449632198 686027352 770920501 620525703 810056387 788086295 911344202 137568251 596930573 62921620 839864608 472085726 518482296 601018134 706259865 625622255 804901095 190926481 655848527 162701872 290482358 893495099 897960451 452565449 534860633 319983994 401910021 196034406 444365175 292178060 701819733 299767773 984891424 919664504 935914251 148351496 315954896 79322164 423691235 532599553 592122417 363698908 564797659 28911805 689357029 831407597 948682315 753276385 879854886 842884178 949925304 194701541 728488392 514869815 833434022 467553153 942458770 936569875 956712211 97783347 949253836 185279880 654633319 119854386 679088046 823287243 919910243 79030977 406673031 573808708 823736651 318156285 919381654 134956021 739490520 692312135 903283813 115800659 346497630 466027172 558375300 103377231 749348185 610331800 623487565 182491360 405691103 954129147 965596851 437134618 602942808 78966425 227541018 550087633 766144330 193185407 339845718 130365258 910382985 594292474 754003914 971466346 990797930 963352264 971138348 671582923 915322263 96806850 822000299 599466186 789714574 667447071 821148601 807896358 931361899 462395593 792020000 568859795 910897299 334548789 344064764 535044261 579584018 291049236 947388877 34791013 974308479 505390219 624866034 15900995 72095141 94332860 172294220 157647357 463185673 572536689 817979228 844801133 907632119 660219247 993615210 509293423 970961100 487014766 944250062 33464276 710228681 523962511 596924019 442496392 537444437 268283780 739194747 442198346 858421875 919073341 930817689 611095596 860961346 9908152 741367283 928616382 985154593 132118803 970204529 506469050 582596989 861403625 969824234 882695203 899473225 562448169 738018724 40037929 975258025 150447304 632128670 275325518 736310734 852382822 997950296 304552763 505054017 43652434 869880359 10672941 349482697 349712986 750499456 620662878 653398217 152268377 266471543 469694033 921499368 194254051 822166999 939687005 943312475 931685367 965944294 55998404 776656208 999948174 999995135 976289204 990321609 27263324 621147989 19820703 854568787 157806052 708359229 37899700 176694461 569619128 908393200 445843233 667227276 772084472 798743900 19778170 920631710 105077927 808275565 886057182 890628272 270740706 856837479 342385649 492400113 857620417 969676766 702474828 706967867 170229965 284091206 607956693 984024816 552287746 821789894 884840914 894344814 821253240 943330574 863197600 984176676 524826445 561608094 810753442 994970521 922252259 952300927 216001324 381220069 474276308 537959100 454222112 743715630 957975383 979472139 35299520 268566275 229840773 580004030 994878651 998707723 860282675 886472637 626799819 994602499 491215984 765770697 296987611 904114521 27086854 839847631 754214076 881933799 57321816 179589818 947076089 991254265 248873050 300385295 4839593 997660091 842291790 858995176 352780058 364950483 545176020 694823884 869133749 998311911 837218494 871751194 550702276 707931837 87847532 321119303 334426389 508997369 93343972 132156053 152754695 535037032 727920890 910831939 559909498 987960947 112795329 394734198 554706022 627825477 509733012 560465557 811825101 909063562 211969572 415864449 931677770 950117544 449766667 627565299 204633458 399805380 989651596 991484109 857104217 902174114 823830804 911394235 397658727 689799947 391065610 537223370 980286639 995552040 477191770 679423711 527598440 722572227 585511742 946859723 151355835 551285779 386016065 591048326 471893465 946242573 640773109 983579090 684728416 866183265 518098286 745890929 626662592 968629626 568594062 744034646 307411296 934004236 384409629 950450922 1560612 406810260 181445283 186082372 225687374 501100202 626537493 978988300 517159873 849518343 919714245 997430094 11196741 594934436 418417357 991860030 966639096 982239731 462891626 547750755 907495781 962022937 643473578 958158570 64537087 666687954 932881598 987181828 852871655 925409702 633070735 787973593 113528331 447012394 73003649 954648282 120851114 977808006 928836455 943309677 889271858 911510721 824638024 897062260 842801840 956158190 179788675 858580650 87576485 750602109 751503501 859698811 207721662 975988522 623124343 668912565 263077304 605421198 969471381 986451574 669209086 837202926 267155321 505379430 180024447 411471611 809492845 894028964 451405988 915971930 391566774 426454001 229171388 410103912 492272503 940824841 196041776 568898748 790346882 797362032 620943310 935832834 56756881 378064882 444016053 694166890 560102402 829854300 509678170 699071481 702006849 967461912 353584279 941232655 922202750 965245791 380846228 381164315 187976155 774735535 326044337 781284670 130556820 173613983 756734144 968839548 513380773 645945939 234766386 981561076 384401792 517322549 657183647 763040301 917830860 918363280 782090538 957829090 677309313 810753667 443506086 819468944 648138101 960106306 983132939 992503988 627056385 737523295 484700552 566934419 244129213 669713873 802287911 909124715 953452126 966379889 509551131 518295978 756540045 883914925 89937608 136853121 769870027 883533858 682791661 877736605 988533216 989224076 109343718 267178651 226886311 537698758 519191720 798288279 342964429 965266849 431807243 553257427 4614958 884631728 457604267 719837258 738205851 757768783 647713377 952885840 161999667 373322766 300318455 950208723 751861570 832343743 832385130 987692729 198307766 808125794 356009117 807062344 554914983 765597805 801337675 802720293 435133179 834954353 10757384 369008650 69988328 201861349 614834373 888248727 229619341 790973149 590601825 708730163 622299299 717706509 924099919 944900597 478028383 580371099 95578609 134081978 263969764 985620189 71384758 205489242 510792597 580856310 156461802 365013770 963237488 963645352 51609365 346910804 390057604 432160324 555648834 704154069 837123908 866570596 552654542 670210032 120703510 418147189 235406036 825728830 118849755 480468705 497434349 893254891 364274976 711925828 859764494 932000922 136194305 212140899 740860092 827022225 521120442 990738704 420016130 564887624 828567961 887041529 825274714 953870626 343883044 553541847 511822923 571116799 160611894 639719549 206351754 631737820 79096234 600936440 486538455 878609657 306793674 633542892 470103238 603907943 379674265 777799324 173840754 441455822 483568221 599601114 198446604 320469313 46018985 514795079 959049483 977170561 316367344 950003984 140410270 766286194 956256301 979814370 726360385 932576852 104582699 241572260 154405027 537317798 935134366 991177734 342065381 437473872 730369847 860439225 273317621 330367879 436433569 501518525 665030306 730229652 601455008 637058879 414240147 480462249 917969742 947953069 825512931 948170410 316665337 782961243 373070787 780888386 230935941 749693922 936324925 980892618 972045061 994921318 609310558 955473735 593506858 888068751 85120402 136592678 907808477 995816438 949976300 987308451 726090008 903462875 790187683 934299227 320929964 830921594 675771513 923399300 923537632 927425897 354325287 885132849 867191776 901905546 924213971 946175636 526440475 828412726 918304347 930683754 60767610 837021652 86898691 403993998 875659727 942583399 844462661 936574449 460022688 914288918 624736133 863651805 454792446 680977458 811202822 990101113 412354751 850035903 433480885 760962346 395548648 586401138 434195624 913628085 234918829 334870203 680104951 841675754 848698330 957535902 218948168 222003823 941028842 990424965 415345523 883517992 636455571 708719617 936334943 974202336 527341684 637432668 876323485 878244274 469779142 889995846 693089670 890674662 994248096 995911974 554212634 886125165 364396931 908838694 496066797 646838308 403609756 573004146 803884164 846940970 763568271 904819522 532341237 895561916 851792648 881849982 267152931 597905668 118166293 269602555 711709767 850339008 911301006 983302622 109038069 365859458 758885165 808366817 513788011 842883818 498708437 857617300 130389596 188227162 640657290 735186724 730712576 790179212 992212025 995295770 480623616 821707257 95380496 134851323 16247810 556911191 538679791 709805074 846937886 868933859 403125856 527688684 233707204 677020032 737898520 854400299 306663701 570354636 124688795 223206856 427945988 843725226 331864851 940958919 210794648 800632635 640925748 984148635 1247782 167413242 318445081 800085939 14618032 205816260 63865315 69653560 839985743 971100652 818435789 851124398 794592502 961512493 579658172 819224763 70056392 391874799 183811439 693039776 698892690 859653052 932158393 950534702 960039154 961811176 758493573 856547150 592657695 674430072 712699953 783975532 297719929 873470373 766918040 881743177 177805917 735007703 382306465 618971794 730052076 840319878 283419194 632479187 300293940 317957620 992210486 998704357 475988436 840097820 245739493 436393499 398765996 897995822 863120767 913804224 492903685 975737973 953538779 996703230 67646132 671610645 256565907 800221720 5578853 458997001 794619981 956789816 491882755 892581444 393034611 710605108 211902359 244635681 197567872 857492145 797220207 989757207 487796967 870938903 202302145 582365798 607905932 887782846 456540341 944720124 737038304 892704743 464594686 477540291 883623325 933283732 642619412 801114188 40593892 290014750 110803420 156531088 290670946 956277632 349318847 442707096 949014312 995198621 694406744 789697731 236176804 415333037 763974299 873629603 141207525 676164964 327520174 695532117 283094675 431479110 755326965 788062069 995680936 999821906 998506378 999289560 956006145 972807091 551338463 580316397 996555040 999323028 341549922 880798069 521412467 877135944 539293099 661716801 547553333 730407497 236069649 552646908 541402737 569413535 68703987 381950239 5978541 357026390 98794300 262346305 353346438 694282790 925705882 953364089 757441167 766514637 492067501 944285131 598267803 694889125 892780116 895523761 415598462 756753782 781200033 942415917 210318940 812516013 276925143 962548697 334824332 682735320 661734816 898667361 775664141 828959220 753924205 792712750 83066300 603543380 798182153 858331118 726435998 869392255 805070463 819712279 326467383 907358617 573428705 966626514 145476844 361013453 507201097 774642228 10105658 991478625 513983377 572136828 498197376 806158416 823425080 930885391 207082475 715512275 618434062 857616190 547094559 560447282 759714873 837873303 867591882 933510936 416425981 702100775 178351382 589857336 185354313 469887125 213785236 538553549 94503036 402690081 260713690 803989012 409021555 767909773 775988676 824432159 131299143 139323397 475896564 948197393 12730924 878121994 363418111 935212353 386114919 924381572 263835532 773791525 607831548 700853344 76006062 893885333 551322179 822647043 798353889 934539413 273716501 350808653 965741646 975404435 616882218 980961986 716730692 926894856 131840095 864444493 520226997 678515130 677873486 751123066 194558310 221970441 123101865 708474458 110270246 354304585 891349184 970895579 563044041 896237831 333309081 574876940 948156178 953789641 970372493 994188120 153345325 746137396 388949939 780376285 516952972 674828318 368672511 754397019 933570563 942090442 550494568 563796512 69665602 967544109 4948645 920083530 2559967 130364832 500688003 569880238 567085381 865674142 262454456 505016426 365500603 531381169 847446704 883178568 250062285 719399831 464429913 717840739 929889575 999155218 305468878 890087592 41658007 465473890 713644175 937906871 491656032 881329739 104462815 319523251 324078224 777353040 489802930 702127064 601699774 811605310 468279000 653046637 785076161 953388403 498878837 636437998 51856147 613604254 668583143 870773401 127522181 193994986 667211453 807182199 747583614 897863299 983199280 992066624 712351563 806457006 40536992 904422431 300314391 429311634 578584249 806432644 369542532 408275922 383242882 571467655 33891576 284250565 937634467 941468830 828266371 991446778 410902012 793003258 521568890 845499601 569462164 865062040 697571380 884987191 631526324 894985323 42131761 370816711 891216790 953204425 1183367 356111017 581318470 722695977 298681905 556908377 758758233 783844456 406416662 600192170 121224726 735465175 168209348 911572101 542422217 720068957 635076330 785323152 604135811 966576154 222724442 962637142 788890825 902825635 132955854 262509003 34294181 147596798 408065215 821551152 59395071 466688501 407627490 729357785 20173976 239099206 876554951 903400180 489726191 684720738 165267802 776570092 36821946 815639826 786172107 833319138 139310254 864685562 578838938 802279182 794192999 894279913 400299746 978689405 357734274 365152877 582627905 591866105 405998199 410794147 874110740 997529491 555452515 691390216 102177367 973825464 194430433 861769496 631629641 753016266 213030881 554465151 260664401 955374175 393351755 586308316 70968333 717622195 696935532 974984471 881653336 941075318 917338517 920206223 641037172 724407257 994667117 998397374 277401091 662424614 154909029 909301519 332861229 453732600 959745017 984847016 405273777 977535106 50112702 461134170 804873238 839282811 329020558 950702075 198013045 638776734 393134579 399968083 786230606 885306324 607617689 609708907 579245054 733046944 526175968 620067020 431620541 651638330 78678945 374858640 714320648 737812216 491037642 599622803 879265062 891633863 718733656 728339624 901121955 919961545 228840726 386508520 905010971 928927389 374996471 594575326 893391578 978815045 634415727 956177271 781576334 945937213 622412069 989890695 526738543 922892872 295810135 397750186 964013324 980551988 800521671 886841989 228110211 670375961 191609773 334168074 435989962 922514161 567469006 861655317 207255215 826898632 334180096 893304186 77079678 691043142 574052024 794868592 200194968 636788128 501381075 627386085 360807422 604646091 32440564 752701896 270007846 373961322 889571895 975615728 600114536 923648299 243585894 543368374 291821569 950242295 547504095 845450245 134110563 843026054 60014182 598226037 175160478 930766445 118474599 739283563 153409615 356149770 22146550 197468904 363039761 792950824 43695458 674127917 843384181 893474635 547507503 726078059 339086652 811154361 231597966 864786610 627645733 772367428 873211155 987447609 542135808 717991593 169457891 382261356 321675583 977532321 678186849 791600165 927276259 988248443 449279060 874675120 270096995 778856768 555974014 858802561 54044326 913917444 417808018 543431624 983488568 995887070 709525412 774214784 717451823 722112067 315505979 950629174 351458873 456290921 207732435 922159410 158957115 585856990 434710553 877082892 714917112 928010380 598351208 729196822 187541466 886101746 509022482 984051411 620186923 691599977 950558863 960517061 25905065 976702981 121140346 362651921 227334076 864133766 558759487 964281122 769424570 993114966 18859659 602292547 781420726 864313096 852189527 930557889 786511689 888969075 875389153 997977368 55968750 826689286 897024760 960043473 808864956 996668804 768812358 963294531 809986995 940751515 493548677 591424939 238962211 332356258 133894603 254393052 141502427 500679496 665721298 985746046 500939025 673656884 124631098 608364343 754151840 912459545 47518092 893971503 934981153 958693407 290042172 778777770 244430167 279749818 794466817 882206271 163259796 768438505 943137987 957344214 719525919 758948967 893762007 984422031 170410044 367795226 742305285 971270212 177687155 979237417 804038158 911526989 909770858 952918075 799140858 989285321 1417078 996761763 406987699 940528072 251540706 255191352 250124264 638068393 134390120 689027965 659105492 973253728 185084038 642909278 832670780 964888749 983904544 987705961 779713891 837057118 800971630 999946183 949953324 961171421 856780454 924839224 260441516 505239582 546427238 614602686 881682942 904252896 766689396 951029534 99939441 787807321 376639419 945684479 652747389 987764730 173435618 580944933 424420613 940752222 433421209 907092599 747208530 855514493 911190711 954533718 74318620 306542862 867537239 886353611 905229542 982931933 773729735 952706329 193646054 655658603 809521367 944512084 333444784 534316810 343479408 498691802 411679810 593298330 357275274 542884396 882917784 960987544 198847030 840421668 162798847 812697586 493358309 705764259 216369270 424267387 82267083 568028654 644185960 652465474 993102516 998850384 831602239 838124944 825728299 914975019 331538790 512640282 612363734 627068967 269263626 800000001 590886604 614901156 833408253 839442739 629423591 877917755 372485934 649348594 194350982 870974967 889285299 927916490 948581719 965393760 771435949 944419682 925651135 931455915 124219617 583257490 946758876 997582075 962017199 985485937 197006199 785197702 456886184 732300450 208980792 832191575 517633029 695613660 945112274 995347277 52428379 794595915 996847323 998702969 675503103 780716199 485994989 503623903 596237886 846153333 323756963 626230043 151796801 750390935 124609298 232464964 809902902 928000946 698777819 874283036 764336458 863142759 953482448 972272891 303410971 846263928 106482997 692109940 964399433 967281979 483324107 751700393 576072353 853227911 210429963 616198165 844050161 997805581 668265265 930769198 1424024 89292014 946891941 998736258 47565364 745864374 392567027 753990256 408546091 504644582 666655423 898194209 321893622 637963209 481805247 609013980 735109290 798617350 634336689 684276632 840148345 959331804 700180604 976681084 317002614 358998721 286757696 395794296 402431270 812076645 703112177 906011102 271444673 476350156 845483431 945319233 730544821 745460215 667045262 870435635 536924424 562447737 402313657 860144683 770206658 898839560 875932235 911394924 222020024 954986122 329625247 752627494 945205889 980487356 45257543 101010634 417443892 606525872 417843089 773087156 168034206 768931713 753290632 972328221 260002603 601624208 176149297 481447227 630135815 865526646 320748248 556900277 791768108 803543980 901545591 986710606 646526424 884184280 961136656 963702579 737716186 744133395 230772583 840004098 960578277 969557071 661023083 703964403 737702682 942623993 796331302 813362937 324224584 441538244 177505339 359483068 272512692 969431790 947364128 977471473 903408212 915904803 801024233 912586070 493905792 627564658 64278885 263606643 997400585 999551590 137638862 734607467 106452370 203271750 992332996 995136839 708076035 914423265 510707352 860809757 882567871 973662628 944936866 979671039 963730678 972180938 32845508 639640007 19179794 459703908 828388592 950761602 144136496 593372001 813743530 880140457 101849732 211757966 331887425 391430193 770640221 830975487 563662815 778377959 313668264 353332920 450118087 580099469 495709104 668580101 988649888 992927923 247055276 899732241 69570345 512118945 660891467 734264427 613692902 900546763 40384997 748727660 287383973 536693865 977391849 991376879 348234365 458804341 748656255 892590764 335425337 980523967 188511083 240853994 792100924 972630304 780609684 800559433 572627598 915374993 241824938 565456293 17409579 20993346 271753348 322479078 515189480 948411317 659819264 794202893 167799396 920659006 164709486 396612552 621081747 911853670 438633253 995008990 905962482 926228534 488471876 800403194 335599588 635545708 253768373 989607786 260051171 612665701 737995730 906367039 177116633 989037361 877703730 905484332 649382860 652204121 974833779 984437495 320668106 511449753 779847828 917811825 811295000 895895792 974150209 983530566 626241643 876344828 429171734 473305041 9533097 307034787 712197612 720060385 46564412 450241367 872055748 973050622 534401719 803017543 515542974 749230842 687193580 852218141 775188561 861830046 530746382 774208531 156611924 451351298 121302794 868576225 535987768 655148485 896884772 906963411 226176774 432071408 310276308 677660467 555398982 616944922 418314576 471929588 428012109 551096605 724417386 908218734 156033144 483439369 524812244 971247458 779757886 886540657 402861213 662071186 630210334 845953899 525240944 834681092 6517552 315458795 677282676 725810631 248232865 715820710 229503796 412867025 274739536 643229802 736428683 769227299 638128169 832100932 638814823 651309207 872213292 967419644 458890867 814264175 138320921 656094708 779747947 943905658 952087885 957052036 709354939 750788023 841904027 963878431 391272966 435935770 262200961 460051326 403405949 566883907 622670535 695172985 935416399 970914285 345695967 927053390 607422236 773523225 834976826 925179292 170211174 782350345 680859751 766309436 888362642 993579804 930588808 948377065 294468559 782040508 952270764 956669203 771968251 806838715 963319920 985704484 216106820 668795985 538276904 709503644 475095057 838401727 44456338 451275652 988352553 992293206 916758927 931816560 77949592 961064543 15662130 431849485 789818039 900561736 799573443 895616600 463120856 579769974 773483352 887253023 283952963 924550748 660999391 877413819 88485229 155094734 557932825 975281362 980519640 981916115 112488663 584300404 697819932 964516343 946055354 977234991 55590702 538312090 522902295 701137894 818257387 897346044 179568533 962649479 336476998 721912168 185904294 993443608 519024942 546190209 868936305 960584401 624509176 930991168 859826576 869035074 899659820 913172874 489249039 840418196 770501161 887228905 782019733 897012168 668525974 937066959 578644656 830866447 736099937 991089082 207688200 291322763 877193028 921273831 384838318 703282677 419128655 795735646 702805920 960411596 883288728 969806914 57234734 610028553 56175744 728551712 499139617 715312324 549806239 902168165 582029424 992758288 279282333 791664815 552126576 832828604 435296437 546512048 279823601 898702878 445384649 968711539 958604532 962720077 627221014 894747364 686080220 853969678 819365292 923321316 904991199 936068609 542129542 644058576 164089269 958585037 399589490 598235132 23098349 931287845 372775855 660029882 65230470 340622135 294403801 594667264 59726194 600796422 892333720 997871713 21925431 645453800 466374981 562347167 289543999 452316945 902156212 966792478 258490168 368026781 554402424 824241987 840699975 992919611 300424595 388401012 98338396 646905187 49126920 685551804 63338012 499714066 19891073 818626951 676283905 814002200 69398719 980546583 948779909 977698507 775846352 971210989 601988173 647176411 671579391 732588532 500232226 531186603 381423143 939308087 730570332 937449568 92568503 917979192 344264666 553748547 924546369 996261414 896159911 916431168 562490540 946314552 776424128 972290222 9256552 748132476 462574832 900010109 138698678 688246680 64476218 242104535 616995892 890518686 161649650 985643154 918246206 949696057 5527036 22613340 538970125 696477600 630360430 724333007 551107928 647717160 344035990 446238823 357821128 500018372 889106691 921925730 428021128 998993517 863674242 976479044 268723224 360491489 521880687 711851190 214164103 784936275 534722638 760073992 350195365 848162789 832095009 880607842 890838511 919452622 71218246 986309329 737009633 984457112 55676901 252574523 522389329 772580301 140458585 295784864 396454104 501146340 555440315 699001788 273044949 933328869 242383331 713499974 46444990 440314602 373467040 480306897 284991821 656282924 953547389 963233790 740765658 986464135 286098019 733219152 564053613 642264463 801321508 833064565 567030580 612095681 170543841 990339641 807306848 894757333 166339281 611811509 536830426 754822942 896004414 947194072 792170857 905517802 586416790 828764207 84254678 258871654 313731546 339909296 157251255 650002976 755492885 912936993 681012762 906156816 158519973 247012539 540492304 603780991 812514414 957615930 731993036 850303546 425021891 762286396 439913121 764513615 476523008 650892004 940124334 987027806 407088299 783082153 817825435 920904636 360824193 611757836 346291031 440100011 663088475 801693167 549035605 765753289 205276048 906429771 976873170 994385502 621454567 966220547 832019753 904052437 813403163 818831279 568654572 625976630 315883096 468075044 58645646 197223724 892905879 937134215 169508059 205722988 106071719 638197870 84049905 238039047 588776342 998993082 762186794 807715243 351635267 494137918 188088461 243324525 660448382 831891860 786401393 983943924 190559813 662722874 45162198 321977225 925217077 973824005 869124605 889874779 997264004 998830743 747580941 941297989 931278553 996352105 401451497 998840440 720990520 775066126 610420275 679496417 29044742 819790375 487244483 633528755 366213049 639796360 26706609 294673427 597175698 609502518 754421093 971581492 184119183 835194209 41149299 963563606 952472597 960373563 814432727 920456553 85239725 478020116 176019478 578094592 934907194 993262328 172097350 176085616 456325680 727414953 876772166 950554914 299312241 662093373 868418155 973482263 45709895 218004197 674841736 735179250 277964687 640154789 585517688 687071614 631263693 845256552 504880641 696554026 986070331 996706383 539201243 636498215 156288639 749413829 830953673 923113270 366196097 726055497 95006103 191978602 829718715 899322335 810319956 889198810 399926207 480845555 529994228 927472554 471523253 965425660 6560260 111446374 902656958 966455348 744469257 847414610 286242124 676195511 922455221 961780274 487187479 499497626 646095634 824632458 965390596 983970168 520329304 895251841 545157897 986396457 271271743 805935792 975400384 977592762 855178269 990912452 626910835 848657039 633268344 968019509 758619628 899077442 109965869 337936417 218316080 756706374 528673748 601837457 286786279 636425347 198925425 749266354 454841781 854265701 122666138 932272939 185522651 282380779 360363515 588641204 791970026 964139296 888495702 967318075 915476906 920331489 458133364 631194593 689730293 749168769 435919269 475760880 195760321 466403607 161410332 612342352 245040583 371157388 192156076 987018743 515650409 580575335 351110891 474149107 847583843 952595860 170157951 509436447 661734813 970484475 463895654 492726433 286143009 845682961 109010030 618009062 468904782 605504779 890833054 991356618 468905774 632913537 37806467 930414494 369950059 648416083 845777931 856464558 965479520 967534616 427849636 456997632 202354408 489535820 547257740 576227994 161040987 249078730 720517780 738669904 943361000 948640194 819860113 823151227 277568229 362702022 736080692 804346308 72927217 367700505 922828508 943569952 514033010 753998727 540864231 554741965 776882891 943386959 272448289 531090421 356481606 865048704 672365467 843408086 931811554 949660995 728143723 935999533 787579028 901797959 600676251 837955995 283851783 509560368 361221326 950052134 448633788 860595334 829619654 917658838 893008781 929252567 667225728 724797909 804388311 860154345 924107854 963325021 708834258 939349002 43689674 937027400 477575232 666426665 989706863 997000001 316624551 764884101 380697559 957843619 748504044 867105906 230539596 474385176 847689232 900005702 231214076 853609423 470555560 541784991 809368397 878946962 825699669 934656871 463026249 471924810 176127553 246052975 185440455 634703852 301591534 355502610 593173421 945059084 199911050 424515845 178857540 810737791 915216497 998000692 815657290 904716104 644974864 905081789 250275937 920072762 170741056 962503728 303358189 618576627 434070204 958488751 826954212 976453411 767879473 978843598 307543271 565350969 793894252 804725721 17550344 742977618 250615559 422888465 376536789 426967589 331600162 632068701 200724960 340766284 731482706 802414084 516245287 789178593 443149700 809708511 795255805 863276841 109341355 890958095 874430986 980579789 424795685 593153647 663451581 746441614 523471247 972350731 338399728 590785573 713721155 792646458 126135618 946852543 756080330 866397879 804749678 967537125 215977873 232946507 177662189 339909804 638466002 961549156 378391045 497636827 584053252 840613969 654616163 953252874 637939306 944227951 172253084 631943057 893805129 962873868 958192158 969099721 70867077 946416636 808849837 967597944 289902079 873353535 363065297 923892836 905237196 919478672 232657 947265035 370160017 377447411 946055710 951771135 149461794 646975340 740836715 803696218 959292125 998504373 928981499 974015372 997243380 999086867 995440226 996094810 477675690 855764649 921836184 989696473 968083763 970391351 83187640 975334293 824376363 841675702 539772315 688191006 496812866 906760830 33495315 827320662 352391519 926056357 489688743 608838505 672826313 925621048 2393869 980365568 414774540 764741047 74178643 974577078 908110400 910183100 313304100 341215700 263137916 923266395 779797250 839938991 268515290 274322538 259306179 298240762 54334340 688247612 237020347 828219038 578727747 947821100 689024007 689927171 74481336 737146952 572888879 866425460 706892684 728856100 396839775 929460990 21904448 986595684 462348178 566212344 681660150 977748203 587697941 851041204 304893977 560348844 693196606 810966706 293544683 720069352 494766806 819435434 606736966 622342143 120574377 659426423 151649739 376456184 624895240 667757568 525202563 867050141 130140031 381411899 29029849 640146395 34066166 462668146 196235623 674945919 475692881 647429751 223023706 660518447 750792829 791251126 57114423 172355896 696954716 945792958 922292344 951774467 415079997 475566973 700708636 912244401 750425583 823791714 856427813 938027181 89593813 475834295 531220647 689994962 716301840 930744303 546348009 977800041 477008824 876954298 302119492 622265105 209518177 558485120 385513323 519896364 263610191 713775795 681146221 983712340 274817379 561337272 937331341 983911797 65143510 169379790 857184597 935959920 335289057 601344846 419446425 913534704 719018430 957746335 638046494 772662092 196927692 499043187 831039484 996486399 990733879 995748319 444623718 937606631 929693539 936242332 212151654 321651660 909186870 984108252 975123442 977050302 232742886 601020109 187708590 803929909 727395665 989956947 389685878 539066260 884924294 900504882 135323297 487633034 642004356 695620545 607157048 710617963 726815298 836476659 241950091 894093931 570880920 985727521 465770913 565137729 747453390 794854615 728754222 809349957 12594212 384904847 865698827 944605298 12831467 750598290 697484210 831048335 124652638 440887684 585896041 968564506 467726921 897671515 465433583 582830931 914833404 951670517 722700114 968667262 802553268 861597323 562256477 785718674 850001257 928810806 108217008 562808116 307148104 864634090 751884320 849700988 735809010 859977631 369928149 457564521 70987977 505113221 904168704 921644387 348101321 744221449 545347406 938605841 47645746 301239838 609924425 959976666 56462680 490692999 431647879 866240619 650888646 713687681 594234363 746860968 712455777 950370391 729945749 813550056 129233096 826415952 135795477 661441887 698146205 974027818 487074277 659301211 391105154 555482341 879670506 957265651 879485677 953886784 96602272 288886386 37738185 361309091 385312599 465658024 312685170 388340738 175527236 403411056 663189294 935655697 253768562 409016857 436648134 728753366 594400409 706210502 122055757 801956554 741325629 924829710 511854541 751187370 203984458 717928538 97288228 300279177 937313042 989765037 865854469 983108259 16076949 193401830 917928264 932234443 864582339 945556531 479482446 565338160 734651303 786574472 993096976 998524302 572174619 673399212 78507893 521126222 448451844 737574194 151196564 670828909 960342240 960997307 367865184 915717248 208305968 795623257 122957618 559244153 544215912 950101174 522087106 862755140 679018587 762128069 635232377 758423119 532993744 549950161 696895795 699508508 919260145 995184220 316770017 682407885 15720443 172755672 673903520 787319182 222827001 507058089 61469716 716171545 723298712 938981921 616195024 856184973 568794736 727880545 39388728 132266531 610878193 820028908 350131864 567085201 68976016 144041168 566545399 669103532 57219072 107506378 144973560 617583962 755743134 870617675 713548831 812770395 694459118 724378055 587800091 877341318 996755447 999872810 389711811 454538979 403854063 588964824 167909646 343804165 307975235 535043515 997329344 997645494 248792852 395842713 987745236 991552899 727731662 945398497 497344236 614481781 317948665 425420686 969562653 971063739 52171291 79641036 278977886 428705707 700751756 932161770 749616258 972860301 936809107 998719997 441792720 846061070 331113823 380950711 934231123 999018515 444952802 511440756 62395540 697935472 905945544 943658097 504259460 562373021 805399565 907227521 392892250 554132437 491458742 589576966 38949427 248508663 350177573 898334674 609359061 878412204 337292238 827106658 129202992 767981584 72005962 848015780 869163516 931858944 349900533 396672908 377263194 444400470 836861677 974711854 810887526 944951649 266191825 464245799 961630520 987017814 927928053 935270832 989281319 992244574 380853811 611505744 318390095 770566825 485166565 606802332 480188580 640302310 368892211 479510183 137242302 361283070 220490493 780471195 393589011 905820760 330310422 585575198 420183216 690659232 10350381 399812693 307856454 321060334 37686201 47099443 173127406 758371932 568064948 845304235 952173291 987267879 882755475 967135299 721826362 929309013 81273557 448748002 349520335 640115934 547066805 585760034 980433813 999190250 825789486 905390194 362916773 673129142 340113544 905541251 498549966 676146509 443522536 768892013 563817249 843760213 553412975 859153839 810416873 999108418 619857494 769714200 838247060 941589615 293354184 726588368 113082685 128987392 362413430 762757908 397992758 526906537 239031366 451813731 453011994 614464690 428781007 594514316 633161114 960957518 228885704 561416347 247551528 615709600 332338379 706649315 498836302 672364398 918049117 986296330 617552177 656637385 757102274 918116459 834919942 883322335 754343829 841757180 953621468 988719005 446379342 863210892 348971051 640915312 55318657 420556556 666322331 957809352 539889842 769189732 709405419 845815845 917579138 984480687 44044622 915208606 950182670 974438924 942666995 959971403 133700231 379105565 179734678 634803422 248109945 942909758 634998432 774942569 333611091 728116517 120396212 145621392 865213568 974308569 435107543 551525159 713820686 942247816 687293931 838403797 748253657 878742927 467414441 867573685 207767906 599568459 826709951 891563820 555177917 740193168 494225857 532366685 660998524 692422783 579413694 626385687 502041620 895664741 865477914 958878715 734701351 901310223 138768280 302589705 846292052 990597413 596130104 709397994 420750897 958967982 590627492 683244785 810667994 988984942 866975239 972472968 741084920 934015897 221859240 814440308 499857849 715289076 299984493 346938988 328518592 662759128 358795995 521512795 115036432 352835567 851272585 995524521 176384557 921037215 680419705 722576258 221840187 681941145 444876481 571623350 518430979 721179427 15490397 38880702 24725708 136881260 90800793 404107653 60852567 542219164 626569159 835972864 178482665 569761519 258532446 747800780 395239246 591197270 922287614 925851327 640272120 808284086 342905623 436887492 299369387 392920916 998043375 999145418 297827352 649573453 835138963 911559227 731667482 818149197 315718798 505320768 877539056 932122779 374555976 885008043 63116303 98300542 319569888 577729454 703073545 749953792 390541710 467651913 789005041 871216408 304994270 976118341 944599030 962350908 775208953 801978245 579471126 608111641 655488396 714114595 472813312 786929363 225549862 416178379 96892912 300679770 606538946 935774029 724378520 907600604 689833551 878599299 85778154 998727375 231794500 545565775 593884602 864233603 832443907 846987390 190672447 769321254 615488024 866401270 483550404 917671133 346116400 845925205 727129552 939461411 987225187 991599723 635545347 731728725 986722572 995264406 416008433 884605292 512817748 868360585 493482470 527638761 583734692 610315933 714838486 720822646 820617452 836538021 655176544 685105160 351072739 542082994 539303585 773542166 745143123 793295369 694374846 924298361 387710769 984172290 600219953 949861502 284002408 983703981 618049724 752997286 449632819 802678329 900938519 958949077 919758988 935742248 631415241 800493867 692722921 780121962 25397060 688411359 299144090 872597466 867814631 965474244 185370156 570519506 248406534 303818555 353641388 766435759 807927170 828714511 922611288 967802786 711337078 911247363 362984733 837432046 239363791 479087854 890087228 966941389 349322243 672116323 50360237 71971227 640649659 942649115 351484618 721200275 921493928 984454345 13841134 113985682 166695627 596850440 884820218 896887624 331560294 476899095 89096457 283025102 142736278 382937264 637364260 713389800 796119958 904482842 33094820 563895529 408598117 988079753 820591047 895652331 788977036 810149285 319584166 849745691 502597956 619949284 778786499 973730457 8313812 183975448 760708788 877794431 689114924 998728535 151688526 676851483 568266223 990604532 259316162 756044250 96224413 322977299 978011013 978049757 401311630 804194006 954561959 965883753 968769639 978033885 923008084 946492779 194906193 588747238 920325909 979757487 872825802 901162440 862796767 995620601 402858876 724165449 857446741 933711871 192041704 486812070 120628541 429801749 134859898 881140774 229057952 528061184 116662316 383279605 219704498 254330117 829404227 937208557 997774275 998375482 275730027 530137300 739227678 993060085 125097561 609596127 893339114 896972604 911339851 940153105 291441564 462393548 975992144 976024068 306003369 872731039 985346764 992532903 5412729 401408126 63669819 529585642 677836760 900116096 523908013 988319220 909033479 985639714 650084274 669562936 35644737 70368055 78045802 221594358 510015537 681223374 468484669 630581550 18829658 404195587 111450611 476853666 643612453 687537330 462413406 630244535 236202113 255335479 834954629 975070201 135796324 286384125 734467645 803625635 957916574 976826046 360340822 988485114 186754057 850100269 974885610 999519413 278980640 471467635 81937563 870010393 318521447 721999955 52744402 525363047 433935679 518851558 261870359 293222657 489319274 836670085 370132922 705524838 97222211 749211173 449734203 596595224 265131954 749251615 4211715 206960100 651468630 942215258 479177715 647182426 836978751 922032818 317170132 820972473 36494550 201308848 172790342 303239948 170155553 827065215 782157627 858599072 447288165 803006132 505848563 531496288 806010942 956616914 500906265 912980426 583572376 589716265 789063476 936337238 104409051 204591637 70958883 149183564 180985114 871910581 363845029 908005715 93199748 204679677 962281580 971798189 774433950 850694906 334924461 583976596 181703725 183082639 217776978 260573511 832387712 897080513 900103828 906663359 355259795 896548771 927526597 956791666 745780043 850930289 312082926 902980916 415562020 553038399 153139834 491243049 899700287 979097255 16921904 338165854 39834138 746331200 531741691 804122260 1668793 945498753 848170806 916858076 841080751 874374641 797440782 900458067 818123402 875547171 831674731 952118244 935503812 991084646 125816367 340375116 853797055 903490620 514160024 522417362 90112050 598960697 628025585 845855195 696849182 698861648 948285536 983834225 951843182 986699322 800699292 824600518 520886061 870107282 470529511 822615712 133618571 509687425 960296237 991208983 980327845 989583387 744786836 796527290 380811615 666195370 400439722 738716356 993062882 997544030 799507314 931156331 778367179 834761167 42148316 837085326 29544565 829388882 72550773 979355785 457227397 759940147 929500737 985972678 763526035 953506221 636041334 860342902 361093958 456500814 343456854 651275714 855538459 866271460 35410698 438807107 59398016 647653368 506796437 543076908 650241343 656474424 38291698 740665883 249340857 960273016 597061015 868296463 260143305 915360465 938398530 997858088 965964879 968162633 790549868 937674223 722212363 997190282 933371517 960863211 460539469 546911690 144613996 847247185 734361446 907171323 383957591 408950039 108975808 197283218 86689362 681866274 596836537 988614117 153333863 398327835 667668340 827154528 637934163 717705136 922716396 975709886 696385041 942754979 815647189 900609939 659120672 840640338 249416836 752688442 16970361 331362380 885348859 911379049 139486207 968416404 214208109 882577385 921521104 987341481 45998584 114437368 596782496 698769916 983597150 992060531 317243739 417454590 391865417 944118828 321615617 728843736 605213024 791852590 878517305 908196509 494530139 731212077 291582551 649341167 515161762 824800652 628675723 714476273 42436268 363068634 991222067 999853145 822628053 869910379 773551530 947386640 408835950 574181350 652652018 986945824 171102875 333634320 327713907 864353296 500389497 527511960 599872214 703100482 546938004 692215404 862300580 937821900 664708791 938874296 557797387 631931178 788040212 985652718 616428317 777629642 689070619 707884813 824119159 866099884 581150763 700691057 269978218 404769301 846595892 974622046 314711828 969423550 961011417 971971682 867175712 877225750 987964946 992857670 529874985 760020819 558604005 827252795 995763162 999722998 511769337 747543792 973705190 980396184 967411873 990310938 111781646 215024258 502472874 911407208 870343166 899898344 711998876 874069792 637309559 641175576 299494210 737758519 702052471 760851523 189506332 334372297 495921738 698551579 595694221 746686351 234280751 677367847 126056613 533615475 720763299 934886714 350374962 552889047 965896534 973908226 501881205 875562941 391058203 768795300 20008451 920075548 772748874 772894439 794790014 875569976 259888716 589853993 463693950 622358761 890709577 942444528 462485061 594017610 912848110 982474187 11053826 904728170 681934713 690850440 278624979 766662440 675968792 934223126 772604107 894393502 913167197 994448233 194451326 994098846 618307893 623916431 520479309 866866496 850946834 872347176 217585659 568471697 372610974 936486519 393460734 749232560 816789677 896638275 81586493 447690189 170855291 241708421 423036017 604546307 523143940 917849928 537368687 961364519 964449971 977454005 285266988 358936819 452369859 472062717 417362721 930356405 993862071 994188547 872414880 878316857 753122761 861512368 294778470 356485093 892095897 933051836 371658658 661451605 235777624 685131314 925134123 971831292 10712473 694406351 793119672 951157837 233056697 585765776 78354289 419114894 66751409 156603341 621944005 921189235 438057857 578772388 529303392 606093381 885383638 962481681 639464415 787342277 485155828 769639606 574257421 656263978 226678363 920371674 159980983 634655839 199765172 945706769 933554880 947585487 889122139 958247692 683033444 755529201 59292102 652693273 573454308 910612310 448361086 679767072 177145973 437101747 682827216 734718229 936480115 987372030 573936531 748067027 174887810 487859498 725457164 983467384 66631320 779487592 231101322 788304937 142584626 309934532 143948311 550288038 599119716 879475164 457178641 931464388 625028150 650567700 73761089 933877426 563821310 747630144 984631447 990348392 355801748 659987584 890181921 971138249 277941371 634616127 522058524 972221188 619347322 864583399 304758567 605458396 137718569 817966833 533065613 746715521 28582550 938923908 144065673 618597576 95932662 550292574 112446688 942314761 363019388 996362341 384931291 642393873 262562521 835487725 751233142 934888589 218269396 824530922 90657639 513580328 221971070 895435160 260693824 519133073 719305097 806674898 324169787 497192493 271448844 800163491 774709057 867070097 96089756 544919481 934219891 986632541 152265196 375593263 209039832 209805952 329644739 464626897 732706349 781487791 40032478 417051945 328813021 842152684 360668484 384294937 234525905 396907886 898824157 907645984 968953234 985688165 770074383 986509328 663574205 802626545 549382647 981971989 659079635 732569442 67571136 593690178 419219568 471699285 617654299 627155729 356141294 445516579 838063593 861242304 367629429 702713584 934520634 991941408 891862482 937196518 343691240 627037791 852961564 871837932 117112441 197308989 507461953 931254109 844192190 967603684 999894927 999923648 633458768 813005094 295751856 510646976 158440758 712804956 488945962 737836941 813476948 939821937 54472982 864901550 588193423 656228265 986833945 999864938 924435792 948535079 755535889 984563965 751060200 894047130 959564368 989187634 877307871 930070765 353716913 627297811 149459435 515514365 706399519 851732754 89717205 376049461 659217958 936344567 221231749 991890935 753287511 837457269 614636596 864455531 289531407 785374357 589019153 976746011 5056127 502961083 763005451 921999005 516217217 831940106 328710669 473716119 665071394 918180828 163062801 505371810 50656590 259565505 277171441 525105175 47447531 858557105 865169416 951242988 567193081 609527148 724819574 926820771 648963747 947387065 881931365 954527208 403797255 769325847 338532433 371812093 526643224 641986594 200050998 927478870 45281677 163947938 446987747 879221968 403212463 722156589 723054065 949147528 633979211 757914177 396743838 459577117 167109438 253958285 73983504 283500514 952768366 976025382 774384629 947455411 550615328 716949814 861703160 986309668 410158368 907373982 415280053 831280997 592865158 679032035 321178925 515262882 42934067 897932795 14005024 248940755 969250018 986406508 945206402 994094298 62509226 324280974 289700856 517992555 508180726 675229849 293353402 800133669 485479113 622705356 398268882 707052354 568714550 658204740 73040994 948448183 39351684 831191411 796125350 954792217 618673734 878561141 893099349 926737012 371411118 812685332 553832188 961973918 109642534 742331337 392953643 929350182 860821703 936925607 218667295 843023411 847794008 859883382 619123383 989549186 43901270 546583546 43961254 807438794 392864540 841169223 397422619 664808221 571734700 890097702 853092954 888599789 505091768 714751245 945537743 951453000 478927842 656712138 317928728 739406773 727005345 918069574 581313429 796350608 789217348 875434676 668458038 766127239 186934736 209625434 380423345 415904728 676142185 947790392 177630382 965809760 948717774 962630954 453684322 592478207 679646374 728833962 669654912 930547969 134513498 669162352 268722727 979148949 258722907 354098167 555433835 808411543 284967507 830122482 214542101 621347893 632994086 707515844 924897605 992488694 191188474 541506826 503294293 927034073 510969562 710095998 192208411 716017114 463312671 580637498 154958128 325085632 958084552 976995528 404878001 490378383 398253341 859879954 50901727 491054782 824872462 915474301 98508882 591379559 716929040 834945218 269541726 720060251 120926547 179333167 840110763 876154092 101294535 302877317 987652999 988565554 40161711 540819805 409268150 603386270 890733089 894186237 675264708 911838585 370053361 385329712 568660055 713153496 549206368 852850465 818194493 888709281 520327275 854806487 827331558 995152905 334449428 348568304 882667361 892312448 238729257 813228811 709883285 854302946 649131152 766688995 841328284 963504988 316762087 548806041 957845776 996830388 275292773 428262102 758812604 773571575 676523501 999919316 348554033 918458977 453631684 476280499 276679187 892882682 739632376 953595162 236170252 891773460 222365193 254004761 895777738 896162668 618257318 636554135 544102049 792304977 62331669 209275824 513806684 967510923 503296965 977831257 812317105 883153377 330458252 353916368 787590119 991113373 531619523 929327969 675724319 863337885 671346872 986565400 435583782 447492654 298306965 715436565 661989659 926015317 257971684 663412678 584505315 604264974 421260535 511220533 970376175 997982751 536460485 940366964 73019117 461347877 286755586 451314019 855054237 884313601 386341467 498725329 275665334 890839005 184952694 351000822 75814053 860909795 837235253 941471456 34039362 144272088 682749491 867209046 918730086 965105062 498481234 820911311 385264870 825709231 84246927 401897333 181832958 448467850 74252197 891162879 32114791 253353837 787069848 974799983 274385215 741952816 76787412 465139708 660172509 983508091 739590866 975945798 327680773 878425508 202943048 842250480 199030177 432209395 381582127 553795899 156182772 508759924 562150751 953421870 948723813 964118320 171479265 317643596 23610262 131765871 568332358 664199702 236583722 878370568 56970254 186323537 811827757 928792152 286743560 498136989 935607155 985970590 396566758 653251273 473989738 567915233 702554277 955227633 350463971 916524800 233412724 320765997 763423449 786260604 466509942 715769954 51853553 385469011 253019901 598192810 779141175 969531122 112989931 893775179 864756286 888517667 157955393 507217850 530806363 980335593 602496894 746147293 628611486 747325334 656662061 771673853 462005443 496931827 278916075 413682251 142180219 613997968 92445705 754542190 711984782 758727976 645878385 805790557 571699499 828873566 402241794 922660116 562595599 768595178 243783045 575888182 415830294 707808267 203684325 371559665 146548010 434292582 671526787 824924176 929598330 931365110 861099153 878310139 465737945 847714192 288025374 469616424 178783142 583718913 171518509 698983646 900938766 930061704 462296600 991019204 891091976 930736496 252652878 284117263 217182756 365332804 887812981 904703063 810474947 811464022 639025160 760780805 355700036 605754242 25473577 638220530 304662361 417368216 40033058 594000903 153382695 479729748 970594285 986114483 769305531 782101602 648715238 992508436 542751636 896703756 798099182 997406007 700513180 783464226 961309925 989133992 447439798 852460382 822599212 908609602 709171847 799222240 234035365 282336489 91329172 661996273 470215409 514944514 410872830 778742175 964189989 970998569 696682654 817664105 758080594 780883930 375865042 975656033 698387691 834058669 860119541 882337011 138847571 920809221 412507732 551158590 111161660 405391280 195851442 414593603 480923680 826283458 271940885 832189349 336910681 534117987 82754744 124539953 716877415 853641460 535992133 574459081 442307176 853935662 708415352 932857738 419771359 632018176 704716482 712177457 567956481 729584256 829802353 961363872 590082380 930957503 228833120 685581920 384602577 637735985 263127809 881363848 436261202 947633292 292946548 554425681 537579739 807055507 759321501 987368512 689370015 737352161 854418473 989204425 272989126 276069649 806034729 967305436 741474714 940715228 190253179 379473206 466990903 636102683 725270770 812810625 553990280 715251127 71936052 832249442 451814453 987357888 761377486 850418175 447826660 875207574 887066323 957940277 881370547 955885341 420204886 895389884 997517297 997611395 261113229 457304126 801219540 967898443 851588729 856933622 672525826 966491016 24675116 179243393 917090258 924490538 413421988 744646995 667723372 763317436 824792402 902749652 8623741 244655743 887725747 949109330 301904413 842252584 369012734 386218758 40112019 287224863 210774896 675878394 169526864 990828653 806529115 889982310 663604409 948072928 17483329 232353401 744786529 968241467 364716071 796402147 539047882 870555891 785462476 973946540 530184808 767333871 402911381 937275116 592627345 731929613 366426615 418448280 276481263 870156215 998236593 999573273 587346583 865115195 320807388 761362517 414576207 922557528 287721216 456027085 509951835 945792502 125338591 495629674 89268188 461063291 618138935 670902006 836902662 928040315 268066682 274006586 994748876 997497912 726086822 818877198 474994651 996743183 766852733 910025247 612403616 864140372 395595973 684424496 226854629 229552685 412303693 450162028 891145066 996936675 516567129 767179333 382202450 623439891 337140900 883484960 983586196 991059471 617843318 733219386 770777389 862215011 494112073 945506826 890417256 897415910 858976391 995951885 983985147 994254553 503593457 559353289 330603300 374821362 973905472 998875748 672152470 693541177 357067838 832286793 162267450 827766763 769357883 838336745 911422421 935102686 230138994 611991121 781658391 941025632 363669289 416047738 811617784 918958299 112830965 425496096 55850716 681266905 611351643 655632318 842846363 958524152 547288152 720208907 921848926 943905089 32004236 783835724 886516404 974046992 715003994 980634807 441408117 534595411 158403440 279109273 550278876 752458476 807019322 910439622 323522917 760526044 768368266 790801481 964780750 997867010 188723887 378026917 58213525 236040719 896705521 929447314 636000204 797429315 110982066 757546051 96309654 642218418 895169825 946565792 374042727 907642709 849931714 981743975 879137025 994745975 239929491 452037247 426595544 805059144 774404638 827842650 114150736 124205526 769432723 858375705 412880531 857535451 765139902 887074954 691002877 950393300 249983199 685440274 921284837 970734217 221012373 278750446 747939107 797663266 642700747 911341907 156549207 406842485 368225134 890881311 893798618 950946117 979886374 997402435 504679434 858513875 786217507 791663351 147942279 801760791 218520845 866605370 932188740 956294143 392853764 826400860 408653941 491956978 563018765 744929994 129436575 543873090 671435920 704794675 242338343 243229629 851341049 888409613 754468929 837027017 290452296 598719636 282136558 340957979 347167054 640008163 489050915 958731626 380936811 398034284 59344822 303543184 735186028 812841293 358456399 440517974 563674789 973923389 180009543 407898895 771008148 880356544 765431932 858427170 276735008 892532523 354982902 592096803 631639568 846579445 969509787 971261248 644838024 966762268 197576450 342064482 479307076 672835519 876295905 959475235 933221301 974019705 702828128 857418733 402273231 418008671 442300486 966717958 760111387 999643631 212923799 912210467 188800710 960282908 217920273 325530181 881144087 886901982 516228405 772589591 462772190 973916404 422547902 776889769 578471919 873134691 461769574 478430338 451659566 784092625 641472067 972173837 703033669 994089662 161183825 664205260 301371735 708940024 388378494 673983998 759676293 844806205 447565793 775779477 332718995 951155736 913879400 976120739 341457121 836790043 534888034 828267645 649809153 834414981 536620569 788778229 388690119 687198125 187028685 497625503 826348465 834475583 167901193 830579821 364163345 460967618 105648567 414608265 52504643 164389468 65912176 381449598 331159912 738721863 906568863 978770521 341463344 756314488 726459555 877889665 304658190 597750310 898907378 927822042 216379058 284168869 121642599 459374042 749498271 764592594 44155454 761022122 506040222 926258673 577041177 772103887 567061926 712257598 443019607 547820435 170286905 958791198 853582699 868998543 452598748 524756532 18952350 33324390 832312047 961508838 30324718 282346128 479902847 963296373 422189522 659709196 66066907 947630848 336393523 835328972 16687031 870836088 524355948 717923797 838527197 995199024 612661790 688456048 921216440 926776440 753095518 971774907 482394269 536090802 516829956 878839634 325570636 591068055 992813032 998931078 614951777 660014350 210603026 978365845 940390593 954507622 529954029 750939291 949962481 969431431 888485691 923283671 584804452 590381762 956258776 961952453 668563096 803457519 897790227 953798864 963108538 970073933 118272027 213945508 74663088 553555176 559373371 569349575 312392441 895955631 666935856 983969168 756754990 973177840 193126136 878369497 262024334 975237024 3529402 246672240 162883320 986107618 250324017 651195145 384784372 588663982 61857190 261219104 161405091 532523883 364112363 798865754 133178188 623856968 570884713 746874300 757994902 880117125 242784916 969841648 535984258 571727538 838963209 918310537 256955607 397630363 122435197 676001763 537282890 695061669 113410257 551212524 340665208 442009216 621153682 644299345 857999639 906989087 947616649 978811244 333805715 793320135 927522053 986096419 554175690 761486984 18886483 597687261 227332346 864160377 821926966 890057273 541257160 809477167 368858896 594481195 155074164 983989780 453468898 886651854 252242732 410995292 532374485 533606587 737551253 754227878 72731647 871103021 707551604 985049544 198156395 272585256 779224081 977611790 748060034 990526831 348289497 490534115 374213302 608551604 490458373 824087126 270152760 940385396 137309712 548006018 402565234 627151309 38879515 943463041 7038719 50212211 737082587 976848660 99787291 618523306 837564362 985873179 226340382 264897194 742907066 880071481 335545091 874624329 237577668 815076495 391048467 846326351 926919786 953777514 490626801 996819188 772926905 782555800 654143141 846865559 961533202 967662263 102429633 633512048 614856412 941187574 462233611 608333303 903361133 983815951 512840997 802494868 789455281 811312318 647272531 747346478 893987588 919238167 59535327 527818352 382700502 447869418 636751783 859419469 211275423 920190995 380871509 815578204 690604130 884627241 662524174 664368388 45274638 853191107 846977014 877405204 959326139 993708966 54938900 737627847 539889738 657700290 79325848 535468243 564012271 807315943 275450369 724307044 285742102 897242028 14241285 147243746 473161252 871262170 307928242 586164440 323786467 661477018 58793203 110994422 622914441 766493150 735514912 861250052 935641446 958861610 17184996 275223079 117645149 824758497 87126308 842287379 212908006 568856926 685455259 832862198 691570666 774694550 722750041 747719200 182616950 497546347 359020364 815834095 734426341 785563926 203384992 727957442 65727111 122253770 821564130 879220639 762096286 774493647 953217864 986680472 161385491 975559447 35533876 797412843 914842686 961876029 578738634 611317843 828952665 849340524 969153933 985977840 345906910 693322860 28215391 407879029 491833661 639640715 345010086 485940699 429365400 769880694 252280367 517833278 465924309 559237881 673917792 943718082 456638943 771279568 41378171 465159625 567311490 707122344 716764928 750282584 943702938 968650499 882407722 909291412 495579189 620144321 493118139 706300752 809377697 878193349 376168187 632800937 607931623 903300850 472835077 526920974 219162074 257912929 982951162 999738721 53723470 88975154 959306357 990455387 213172243 833992213 310101657 963079601 890660747 897029565 201691703 750528173 332957737 799279570 444465406 740939887 781550658 907181405 540616650 848571071 861288630 870128447 125396304 579723000 606586286 831295523 428518041 698519740 263533437 958196300 539729309 704157773 463852029 909606182 915745546 935525712 699894823 889903373 592638468 715032645 411610673 711316655 392958840 717941254 860775377 913107789 766733574 855207075 259954981 779255923 341717029 522602602 943307953 962199861 908386596 939068860 779924521 805837610 694515737 950855779 803483749 994974507 442856292 652811944 815590289 983065128 194940799 773380645 570842125 583662391 826356349 990491573 552916533 841474982 184323658 263421754 179651052 963601752 558283298 744486595 631828999 656875418 402533052 974392244 886375873 935334122 128315829 149639145 163560337 202492900 140978226 310255748 954617746 974750376 417595937 849459994 579823543 843963821 984715429 987122516 803777843 917662493 254432660 501591841 738790107 861800747 48234488 783635046 361880021 654592485 367739180 953000315 726124044 830641375 814191011 822018604 904926200 960043974 95312007 802045437 460378389 747485951 216144018 350949133 359984460 902300689 986291772 987868100 515984929 901867717 209096163 945114831 166987599 910622855 883936189 949523953 428580846 673322165 698671594 751829762 105212679 608788800 833726470 959228996 883374576 894389706 426476537 478926964 355745968 514225173 747473875 989780896 72489723 710985695 513537517 737465543 114622666 745563670 572705682 614322736 475609269 727344199 685078434 989135980 899467676 945447169 622091622 862709197 924215670 953780568 964560253 965301476 717819710 931108507 946460762 996270356 541464027 922950188 353087301 653699429 685733682 782551825 363986107 856516237 987648953 988334678 894174370 947978040 79369943 479569145 189255694 354289558 552289964 586746935 589234365 851455408 814565845 846464732 421735293 758683509 126094552 169423861 294255506 736084243 953825702 969175757 880674032 999101247 674612154 946920686 389844432 795245901 566552156 623577139 74555073 494266068 282198680 282262032 302763281 963176501 371854016 523977936 501385480 770121244 201977102 705350184 715604476 879734126 182784883 548992640 81443128 353615308 815460538 979981246 201612543 329450606 427061888 779665961 92352273 314626977 721393468 953610489 20974469 25472550 708278268 719242409 480079124 541737593 754785930 772369591 319210966 643745109 490506222 599223012 309341474 468703687 523044276 846478691 224523386 598863794 109774831 437851759 312616194 430523069 25291574 559444845 786996995 942741618 497569815 949633000 847115326 872719056 731693133 872169494 869779363 884224783 49605601 502515019 525920065 620401036 564359882 699389399 865457086 899697205 252382937 663026026 136789617 913575529 107546611 450631882 74801470 219612835 97064205 575224419 745750286 874412553 555729890 804266781 417541325 647680054 152767181 865211702 931484519 981674533 662928180 750541107 532933797 544352418 47830671 310391051 169896853 513642965 420668919 631590243 336694225 972252709 447820255 582987252 888212938 897887182 386379967 577323202 123482363 354152901 534165116 920175836 872841060 884881030 14411074 700775168 47359265 627828088 333956283 686830401 872826824 966935558 841756652 926163606 19559639 270985412 715732380 800516717 521369501 611146290 447022944 739333219 522369951 852894967 639803110 705187994 505906972 787537159 846454304 881972029 858676618 923843299 77988980 291399895 312223478 383589027 639791057 836109887 375802589 903457632 700562456 792032567 87426598 145601063 666992624 846815635 48275192 230425760 537268793 720554210 928048442 996410460 447959249 808922680 904991100 972725972 221378675 350605005 344570069 431821262 453651447 604513761 613391209 779872006 265251519 537216696 300366819 607563801 793945016 946623199 475422933 726843166 721202755 758461870 535281270 555002587 415454201 701228110 813341953 828251232 38307936 821677991 6345146 496358788 912291972 918586968 677118050 801797071 855919895 902114773 989219284 991153076 907657194 957802402 599369182 894102694 93015708 673658430 479961440 978083112 526546685 900530615 486031996 642363200 277054061 595542832 27474784 642716015 278938338 705062161 586256169 943259548 641170070 801304360 469987183 863014851 436107001 809625786 776513215 962308919 347795516 895785610 962433000 963907291 858227709 871668101 577504945 786386662 155245190 523376726 616406818 958151061 557266617 785951346 206063544 975419049 310956403 586457834 479856063 956389651 773790681 937489579 13979923 780765113 88549767 453671116 177206070 302303500 735788438 858936555 353830539 822871945 104092280 716095452 986002213 994198786 103670577 191021977 825212164 982163906 605774234 717566574 203215420 561057162 874539678 885453219 255588126 488920938 39839121 408009179 343394837 692447460 923710771 935071555 793959467 983170663 548359102 923567812 57351086 983407803 104292651 537418553 82022083 543639016 390470796 494095599 831122936 972088736 695711587 916626050 43369016 824134889 763305705 904108885 519844443 901013454 977658164 989888933 879008372 930656340 558550870 972869451 296304295 675676328 960257399 964633401 464972807 734939401 149738971 355789034 249012178 283805034 35246672 999266118 965916693 999290256 165448306 907693820 171665200 710971340 474426682 503071262 669309810 827060108 269468713 945794237 887350988 966103764 369889821 467793765 944883501 951801920 981836101 997584766 89686606 999145371 614623431 644796825 590977773 974225926 611937981 837973073 133689028 522523152 828480543 989059011 190013741 686459499 75045521 189692584 971979136 977351795 738491523 902833152 291697509 906607891 185438489 408751700 713169647 807988046 138043090 376789566 827407027 967010896 565368008 756980646 604487370 764143582 573499396 641342796 500055396 506433905 468117886 965025245 531365927 634867777 194936309 724171546 785029988 815575152 726088753 856274240 189457060 708920180 288383185 961193689 288515777 929905047 168180664 542751861 861647316 882672478 512291136 756389334 90847581 221829363 123013575 198815075 979462133 984065766 121444331 748492378 908794932 947409274 723797590 789809671 322974460 923466920 957110687 996152166 124610056 710424788 694446383 866444922 939855728 962722025 689007618 923400862 342564512 376316261 279064993 938546125 57146357 358504000 410377578 732550231 184830348 227523587 635475665 676263208 709660747 787903812 240874226 810041276 339358615 884494234 35447070 183522627 770901770 787277219 354165957 846270731 574024463 702998677 265892245 654126629 92034330 181412827 658694622 802664478 214394349 897893171 437736004 727250051 587491685 851220227 934647622 944803905 616022229 891181913 815034835 847829227 813144479 853318659 3311843 676795719 387488380 725935660 466367077 869475313 626835099 934738781 160529972 468784247 221527335 967777888 359638401 835578540 815731178 882009731 737046774 874918617 283123354 504035493 127306517 381612344 645232774 704450680 576466594 773424577 856957059 974254501 924876870 931386757 929107997 985459254 408276830 953760764 757996315 809375641 926884434 956454519 913497774 924880198 229409783 319008474 857956957 988266835 816558321 991626844 37682002 164159742 802566042 876705532 300245235 440780918 435731333 917191779 272672257 781569714 192719751 778225392 42888449 700416606 540923894 700601578 266131550 344949472 428109798 694043235 478624321 638519715 874298569 923572258 176629587 457874060 228579728 931382258 349527757 992305081 575569938 994316523 814696556 869426993 585357145 642734845 787618476 916330439 639772070 996521528 643721547 798363249 496618563 922879922 517751907 627504727 57561974 652074707 23890455 191983861 637895649 796253974 738577750 878797612 923341156 937903317 879910754 963717254 437045025 848113016 951875726 966160510 898099339 981613796 119465969 681629082 772630989 967576815 201479125 661582555 926991626 953878463 602510494 646983878 952900011 999981922 30986913 493978634 66638947 615188235 648722150 789830432 119370842 705626269 444995740 912378636 715233598 806831364 250787577 276036732 652156103 978138048 596666905 902532954 70644960 230353667 278762670 495357152 327884282 890212480 410345536 858943928 425832249 970899899 630414628 905114438 756959056 991707842 216808066 567882253 777937206 945317444 934233112 955432013 697373036 909557906 59339001 901566044 788169025 894045420 547085775 628016802 420205086 850468196 765466857 903503820 327802249 437720132 369725782 867828860 392642523 993020832 372431928 615010260 227399746 749542461 13704575 338096668 147800272 222785673 652368469 678448967 911246130 958875748 210491777 402580712 337596451 620148556 164706294 250184485 122443318 270604568 581872005 934867354 492859084 766705885 755516533 914857642 188558348 304871612 333804016 895696100 113303225 687445157 397690100 407397926 973031245 975577208 368303105 652380257 181655452 252453082 660276099 792129781 615883445 887202592 314028694 890494339 172561957 699349032 134389019 341814683 474402473 629986465 596264713 784132911 889063582 960405156 159095370 556345085 946922701 953299279 988808933 992555471 718276111 999312004 893093398 928323384 922437463 941020912 785820501 876598831 414692944 504516984 141157053 479660268 311093321 542335755 465504005 723962017 749999715 872164908 627273792 719743482 898835462 925532825 562366850 667931856 338081515 791681756 653863472 846929112 895620632 960384878 676013334 895238590 623148657 755716820 732152931 964033690 847460928 888838526 61258349 463626787 358957898 860390145 170759040 247372160 312558692 761170300 720347155 843942608 644601161 795562642 868766278 917478668 470181402 513564619 916346421 999976667 934415688 942426074 116507141 966111505 319016582 521518978 588479424 968891731 60315473 497472563 129636136 758988338 578438801 821463723 768626340 894818009 239530768 381899718 344413465 816240645 540022379 772706092 761796908 974060117 791857930 814645622 589878042 827000902 163317826 841188825 236707413 460652466 207363982 974863707 615267023 995401484 3923451 470389787 952565477 988354921 320952065 690332279 564178913 758505733 722011810 951539804 242337781 256172359 610903938 958628671 201571896 796508799 236670541 780210748 464172148 555841747 335241749 431445050 556579365 719023402 513391349 842945911 325896662 581604257 421070383 645826023 668672253 762774099 350475862 411548411 69963128 215991917 708197325 834708220 331176016 619845216 494093120 584644117 777292802 902455694 148918429 817202280 661837849 800444112 949216852 990636130 562104433 699982401 403546708 722958583 765833944 870419246 832844708 963601072 937030843 949596757 109105288 265759357 26102567 353676049 7768684 910419942 156892852 969363082 8332080 929039517 591483163 651036077 123892979 907383766 205901914 341067570 553414404 740534321 571168606 903229113 206205618 309539596 875016311 978875727 962513707 984376452 315443172 399063971 391931839 851178096 662465548 859332419 268723730 783347203 498182414 970623499 903938626 928574093 508856272 556291583 774435235 844811684 436021821 731440444 183608725 226561597 348867556 508088074 35113993 624254311 490476309 783736158 848075098 889738184 156358671 668694837 392196732 690033241 922243681 987085493 102003478 794391083 18442013 930417535 722759839 963608992 861536255 982400759 828121258 923621815 5950827 255603761 379535250 744673793 223136303 408076338 334559248 629792950 359167096 750968691 234241847 651659969 791127712 897019678 25981980 934608886 953239475 969037345 929180384 965796204 15777325 785646094 735871445 820715866 611661918 695380948 542825807 812730482 690647204 866445625 850223371 975121025 714894000 910267594 230585570 829939199 197507782 775510118 933852149 982816137 737799985 955892034 502541544 877097440 196893140 519513804 256002951 383638459 37800703 922621380 52266187 372185530 696390146 853076797 942394058 969685753 16110921 288662233 341788360 889852845 864767732 905317832 980933427 995347787 580568365 845707167 86885338 993268544 374991288 658918335 167604017 207218089 220834997 703860186 408039863 595866762 331541447 404854304 691292119 696208546 581769034 866029186 187098745 191963978 313160055 470263846 636956289 737399666 465385222 480391476 7217819 630803347 491208226 607471211 761561907 912552950 732462447 761499545 919500622 933434783 620209382 862716621 671214554 706486096 601564245 779010587 585078140 732857114 159863265 399310301 120331947 882088830 46053376 184337237 133372077 791746434 834658344 897437468 752945208 767819474 299526110 503504818 820258659 858475183 207983750 942280372 60211423 640917367 71353403 542301621 676416006 819029645 792320714 867985637 478026479 709902966 350905301 601944120 489716440 981587151 883693684 936548034 20518671 280427619 401405700 625109493 9284444 766965542 130233979 249968808 568941445 581202250 661102318 826458627 256311310 606071886 658240553 726288153 131080441 589277840 963419699 977557991 960579334 989991468 201676116 690832935 134664888 669326739 410102430 640532789 634040099 774776028 861874033 928214748 513336995 893172940 1196101 924281807 335297995 861072166 891140825 908445245 519485725 700037091 634216442 634975184 960184509 999106067 780112105 790312294 470971196 480955457 548839656 947722749 69312042 304331380 238765362 651480547 577064172 968726471 856781000 907699564 841331001 865893539 196810128 444539078 65905587 914771557 565664182 844509232 834834929 859181634 889682612 971130154 562260928 784803115 83508152 252756563 82828616 921341919 565602871 732467529 350983729 574108540 634606879 664763983 59666655 125518703 675985908 765581006 822925353 979810611 293490808 480613589 57663563 842389064 718970683 770370922 650212899 881317795 902342538 902747010 927474536 965271422 607124108 919428287 713862539 822339516 312593244 603317780 920929011 930456907 36297398 296976696 205316182 483541158 630714079 897004895 925417699 928579379 1431722 583946642 929861873 942774657 670269220 930600930 41387077 772501555 890456539 955788225 308897873 813829466 366427290 648943801 516322507 997676149 747228220 842564933 152705560 812609037 819239332 913069382 297849082 806752622 524079679 861070815 328056941 594010969 925265358 934434333 460064404 482022114 338992220 934887349 283795889 389011895 712687861 985259371 526891781 978686165 37564170 338572403 565760235 901301753 722404115 935851386 142702398 261126469 988620728 991584149 232191850 819638989 873456588 983837591 445501086 845752856 202126201 466689289 808032569 836539101 396150193 502997317 883863113 912304827 54297230 858253464 356461780 974383737 194002593 445988785 698198754 881538499 51944998 889866357 973660081 975394318 96948901 916585303 343945621 905198367 191372724 703589661 195867844 927112994 875296646 958323850 304027843 353452189 807199474 998456528 619598351 999004864 351122697 741280122 927498922 970464891 700295880 942155748 514761164 922734602 683388656 817572720 329812017 551956996 7599412 748257755 373081036 391155428 133996459 252697321 727567827 781692828 805087701 963987866 588736111 779162930 613527291 773505803 456054652 553115974 97386057 678136902 449219319 653279472 800784397 859710535 359797160 639757043 681856414 918799038 778331726 949641138 463420630 790413962 476312007 764373313 304855494 885555824 720027067 957925013 147113129 399528207 286186856 567405156 433348567 550837411 66183184 739543487 498289260 848269533 986795963 993494440 246838766 529284373 166718598 594176036 743752356 871455858 465625659 865498917 778846705 873293235 310474236 451641634 78626824 86190692 626465684 983856627 208480768 557183183 276717407 927528098 878051196 949596506 908785889 969104991 736549074 981900683 873241738 915245723 864314352 875185733 134493650 232863899 210287579 724132549 779655195 784416581 150669902 787660979 91769760 941585779 728547343 982509461 988567299 997385383 55824945 600897519 968092388 988943268 587839785 746399935 901554780 933594704 659672237 665118970 845904832 996394385 464361530 919496119 407327587 878987093 222764800 483929765 614818475 825692622 10879657 502322873 977844745 985332054 439349189 646525515 340427029 800322507 118677359 904361730 853333556 918216979 316652428 806766690 758623072 840459749 702894948 975602437 666529826 953824275 402648905 512976424 44755914 376601254 155384761 618146804 67682968 364212164 690479368 980994673 203552663 932150647 289464738 940721462 163893187 718730430 898055895 964262716 781977219 796696880 335974085 377452981 62042124 212209309 291600111 873892349 764426094 903869151 169511402 508480155 677780814 734310386 138276468 265600634 997196899 998939455 41819342 555894008 93567663 522070936 667478181 923655522 622065788 710323069 343448212 809513960 872592384 903111859 478529090 564836217 656550806 927260165 284473587 860499116 825943260 882805255 599792320 735430793 704325896 835158376 992134170 993627149 996506595 998532674 462594781 538721501 477103789 508965530 959461511 991406691 229853706 431868001 296477780 573748410 153365780 879205098 152995143 997460339 930001271 985788112 994631576 996085789 37168845 248737507 828117099 909288577 231464353 565354396 144515813 577918684 432860902 607935897 746821684 799288799 328340663 460246157 620156349 798288733 174468901 948494824 10336311 363450119 185836164 888893707 78324680 235154330 219815172 335611863 152256643 337844358 595022933 809895850 567466059 828851812 472328645 674974644 370426112 927652187 547209257 712585184 219959401 650800174 428796987 934325610 749132085 817119025 392743055 824583683 975047156 983221268 514350190 868817731 659394333 757919917 694712736 719313335 426776038 693177342 408363317 623592235 452280420 478430748 276035687 708419303 527290127 902476457 764745572 814867414 319973188 865454072 376520637 733153115 658202108 883880733 979556334 999139619 561279798 910173922 855230607 871469582 919804130 925730143 943428719 997276406 943723008 976529075 861973626 934380471 900268125 913778666 689368663 990135122 418388169 444489906 120337591 558447202 669736880 695123812 960564486 979404017 37739773 811646924 955569261 995551579 40880721 804234287 901728160 924701901 423793445 891952660 425436303 685101386 264060003 958500937 649803501 897266267 99074763 990711383 28492752 48267306 550610967 853004326 393889248 452181000 550100509 629272932 125886610 774020513 527713037 941108354 905574630 938946086 441721519 990979354 505194247 589581390 946234190 950439655 588625641 938078169 441362721 495950183 406132001 786738839 146050793 684930910 506568132 993613621 967555753 989677714 516981985 819995794 462800161 947048723 418020673 874521244 311990622 557887693 374301232 498641751 235084529 487773536 221077831 602827981 420644715 754828410 367625155 769018519 743747673 852886499 371261821 906356264 202246960 609516767 417847577 692253553 720301553 857399765 630604355 913565533 477699736 838335691 790178964 797886184 172344247 457326806 136455732 814608776 892284207 916322016 177621123 660201495 477570334 638483961 683905215 975106474 137128650 649794252 599895688 694585887 259523190 332276680 544637326 725677441 816263946 876529922 877183514 927150394 539146041 592228345 159930598 848360650 293240443 398082062 88198967 625226440 166759878 188598383 340038194 380681418 598968330 842756397 725172840 867440015 721867920 860788511 253853119 356994192 622300635 934921133 653432401 998134914 748481027 864810723 326406453 786141326 211204617 919363936 527643267 782934091 357109574 566536793 523727964 796530690 286928794 894930093 441244900 937313708 352030633 478487184 310051138 561639087 577418243 718721548 43286950 460566508 83657801 677090345 424450985 506529560 939931981 965235127 587194666 850381466 759680935 824569906 622280648 973803779 823422300 893490185 738141276 918061697 761359588 980074468 422839351 642568155 622028146 805447845 521873954 810200407 997813083 998890726 775618710 907983221 800461751 876231612 372721352 724752328 211639137 303708654 222603350 229446509 571960983 869632775 724110410 990964456 74271065 275915774 604292577 785684859 66548034 184108511 199744694 790153400 983012927 986948175 103002381 877324076 136784315 551333213 583931880 980936574 526429058 686474061 993139968 999535578 389686670 552558616 496195891 815975135 146997057 385765909 615623202 889042784 508464424 878563257 680409485 897126785 708719102 843567901 803931234 821971874 518686162 549805382 335524034 453954687 48511155 62856241 22475348 458535695 550825262 989490021 145761929 549286585 273484711 556937275 568106313 834729958 209422778 640303248 939863005 966760174 277599918 464763190 418117490 780514344 478087974 964868878 889288307 951031318 487677514 911687027 928008810 943888835 950779730 962840151 115999272 782305219 651419847 693637413 299522766 935178176 668525611 882331494 591280815 633096891 829483368 849797252 422716383 836721127 725291911 997731683 680504084 792306289 322917849 989869194 991512382 994974307 321102544 712048577 785999682 918696552 504420995 968468461 639459341 698180345 787508637 819572775 615492310 694693878 790058640 940632886 54586667 392749062 706897850 956286002 64955296 188183585 564960023 622174355 401927322 624748577 232829490 509564456 785545248 858737477 888319534 951849899 830410591 927756810 43398659 399256584 824678703 941989606 276314804 306733597 682340714 997887869 255659605 597871087 410310745 413848415 139075680 790166784 733490502 961559771 192367185 531664406 869896575 892080028 84494156 766774688 616553821 695913531 83787378 84398330 686015447 903946243 34352303 205039071 779067837 902008158 881765614 891938269 30066676 953027190 871030617 920351964 750081634 849717777 145422314 336431879 208705695 608397196 209595264 685738881 460084264 699169593 885144414 947151275 734482967 943185389 219442995 348278403 730164408 816132959 36759439 112172175 47547549 816101186 807336433 934336970 937727108 989865587 636953145 666364084 165302823 447674087 78889500 862855867 781840187 944744514 786029722 805047604 318560311 580859913 710510886 947571691 536331332 916948710 690239758 725176602 401849887 584905937 595789405 975190152 268375631 311101880 593058588 594864063 481503201 643493578 384664075 406825839 136555986 352825104 309969710 761080281 117783992 314305543 54817362 284299895 47785300 479142429 824422925 903582510 425821722 882483271 434783364 667677009 202712530 932581284 43489433 707684172 891477603 993499422 655078772 902543903 840201160 979837163 328910498 932447226 725435902 975831027 762096490 995147810 697445947 929069936 965915393 993368232 3682439 129263693 92443491 884698437 87556426 259293754 531235931 665190975 435747411 542540583 905183431 951899956 952350629 994624435 849361247 944772765 874113955 921052673 200874637 608854306 993668452 997221846 249967881 777237739 807056498 983007789 434567131 647970786 956715295 963918067 190021260 837231663 678947142 712252043 818590871 833123383 682495344 943653601 869890081 898559325 718752386 977599666 655006452 920199011 104702602 443181116 250351595 475279091 318726241 840557437 26426442 534560560 157252476 209810345 585218971 711356239 777896081 974491071 374062784 980977608 803608443 993364795 907684544 983650167 91476528 954359310 282221011 554093686 429913401 999322092 677282624 851488385 460490343 721935483 473881664 846991267 326757796 887878750 88704663 93000107 37867298 947541137 86936670 207031083 856307507 925082100 571393716 917549163 12243599 190795975 643617996 726452696 111352202 386542488 489817227 549453544 738420663 979612504 719515519 974743617 586099455 891598143 953171504 997209014 808065574 841905750 499479840 726518030 573732667 654402114 385353518 829300180 332286197 849352939 578117632 610282667 804669838 973483928 260116977 470218102 887838788 986902494 46628016 396880566 877821898 915714932 997229319 999824993 737968292 945984718 799125364 853094458 299870470 538188989 177058116 565379434 982074187 999255561 428434917 646140995 537799070 630247894 893105130 948133563 732624935 865399838 637163754 983018904 904290834 906241155 265945225 968989404 630340639 758063494 183195741 458432828 431068117 580641367 174400188 518169676 89720052 382343312 71153025 883839379 418444991 555144753 262972188 400709648 387624830 468357674 977130166 977257942 279572933 360163904 797067994 882944868 815588154 880278486 271546967 467429162 307083371 959197173 657602569 673493515 44778338 191661979 832124490 993422667 623103473 953806373 893231312 951433794 66176770 930329547 194274906 616914736 711546270 723642978 24707317 845137585 519600970 557026486 951061319 968461150 306537077 957719128 416535512 586244424 789380540 809703018 568496423 750355174 182169164 767127460 175008376 991972058 109976105 985570035 808690773 842367564 15157323 818441701 96095668 199906967 94672754 863153621 68929426 396926605 205051672 521523466 563385385 808339471 976403887 978643186 369898541 892388239 939678763 958031088 291345943 928909770 23416252 834917233 336523856 579796548 66607172 841494378 347794741 971193531 928216566 932068946 167995113 743424106 993248719 997217893 558421340 821291455 662792990 782778813 201863068 769590226 336060467 737326891 106774838 789225382 843777700 961680963 460017783 807836883 860517209 943482258 530783655 677778031 767340599 989827778 946691132 979431682 429520239 811204217 381035313 566215985 810789340 945822274 131264248 422341021 649613416 778112208 66871797 774972876 261988091 616553913 826025861 913336990 506170764 767058104 952159788 974541180 280423435 981073257 993685964 997704434 353120178 372368739 8875766 633757847 851337511 890448790 242763099 890210793 564764292 597095459 435549738 602657005 633331532 726066257 850876607 868452512 31203911 377433336 809004744 901679587 334532338 404962335 166055950 773441083 838331104 960318557 937192017 954280622 973249498 994431382 732171016 944675127 485769006 816304249 251817911 344548920 985015376 995971927 464157440 960847789 235050092 874929809 312339802 936253727 793030948 902228841 711053732 999588332 810929872 865657982 686891973 729841886 136982794 615024440 686252621 720092048 577337051 592256561 441914469 609995093 997598529 998645317 459471017 827033958 788581882 996053197 259271307 588679217 511354223 667360957 840319461 889451388 201446639 980791097 667295389 832296533 699445021 814224671 447403228 958850941 51393977 297413639 239057711 900061042 980776404 999961974 409119602 527298537 437092306 450432156 958695775 992742429 810261711 853509653 639130026 714796729 784678065 955015701 130318839 189434261 213579539 262797250 672914950 788284159 110921105 933726952 238472025 830388571 754972340 924390993 759795164 954943983 82804049 409956596 7120046 195971710 428153682 521520266 310092863 795591294 66646916 718348997 117426542 845571676 699827126 746272612 282949500 564964442 534790069 868951986 698430307 979182211 880313594 932191183 914177033 989027509 327311784 608436084 556170705 810058282 505410505 832507478 304457400 481578519 792187153 893051477 956121644 995232444 251148149 623055090 766003753 823184345 863544022 951070131 156705119 424118132 497935876 783016742 272169104 673961703 744876080 906374878 208639925 622193231 83233476 156303285 735253891 776531364 475125912 584493047 327460079 505348858 534653331 758986415 947497276 955581261 773720196 807191773 170835273 570318546 777706195 972324541 806534224 888799947 234282959 292787578 37663700 961405195 862389310 949907883 456504543 695644742 111285637 115457877 376723219 892450952 54475197 727957606 28516144 828112382 867344055 935831805 572331717 674660309 722547222 903398070 835873095 932336454 256486645 366058693 347994698 950383443 902847558 904946719 109026275 688874877 728921003 952748115 101652043 506688994 322614429 531702237 326606011 554390688 735758292 797854230 107205084 907244414 628372609 795588995 4723324 275756553 364075597 892591389 585841843 642933466 605028667 996730105 779094411 956153033 48231770 659837832 829748359 986111660 773514864 984643785 412456743 660505561 280456634 703198284 505846801 976367982 255735025 814025839 387484368 595218523 431331990 862175520 507554545 782261748 669695763 924026611 913781185 919950962 137143611 374048721 582957996 766944142 711586903 886804573 118438263 556007305 241985289 554786660 992408547 992675759 823053198 847116881 936393122 995577016 254842699 639936049 723419591 853819057 33860299 636079599 523219277 702137465 31771125 961652053 131933824 536353626 505531919 772462504 816262108 823364318 114594955 659904317 912593635 912713518 346167166 561758798 9130652 797066604 219450318 914543653 377284817 915919536 140971591 665699393 199883071 555442444 581650353 589773220 684475342 861922453 312537690 570106246 666001365 963748631 835447819 867118864 753376342 780661867 310821215 834627384 220545875 503286866 491720143 770963838 884609557 914314781 681643849 921104002 603411369 972868435 949258021 977674662 436461680 818066561 479805889 535041793 538293404 616654194 241281399 251685267 457123831 796740834 981368644 991953497 935566262 979315061 565698312 870535383 761902746 825405640 917382482 979320082 955784661 999462252 268885359 838845845 671838773 786935334 794155140 837307657 970179712 995367051 31843252 552017952 402207811 885504824 188916717 818757687 553256272 896574294 85218001 311465010 886961044 984489373 172881151 566971064 288077222 668199684 261292205 968759872 310631469 625970775 860804917 888248493 30731928 63015450 752907517 874122852 540804801 578169204 908347124 939982008 539883905 960281297 536693740 852445605 635710363 737203331 110611392 560601812 787848273 954418455 754727531 899786879 378890775 546532858 154309764 955596307 886030776 910841123 338566018 345543197 944038541 984891039 624284108 781691059 638822046 806916639 241849987 768748769 108402505 845887176 289299316 396314431 746791406 991259983 422344145 953260134 71303585 843985536 40345063 748169843 759519562 841879369 320438729 331761591 603996461 676316495 147641396 902008723 524770860 995772290 4688810 799055669 678883802 771242242 4123725 830712464 393261373 625511678 904690383 965897212 865519615 930794569 562967329 706755262 373283533 920848195 114897460 434404061 281412678 567298202 246635762 654061705 280977063 527396371 102911617 803092296 825863500 870016119 802614041 813951238 559061059 982513586 985242400 992164696 917530814 944325447 103484875 706373810 588726050 786394642 976950837 995344411 214824053 656181687 11452184 273878922 605715669 891489313 528360238 603443943 472594617 475553362 771624645 845289684 159386990 849201583 656041810 688216978 634450248 734784334 326908394 665727541 989744474 998241182 922848274 996264673 476190038 622519193 332332996 728052127 168746874 620338537 509122312 966918303 192363375 858879952 526785048 990223177 372385081 972835213 518341340 566871329 514292632 988203016 833959152 911659521 295065534 837931958 877320285 919306441 307342045 472318776 585880552 643580552 756221956 786827026 912330040 961055956 227080981 860594915 677228472 872217823 574926452 999243398 530119693 746782828 852452617 860265308 320518391 587187984 640330915 995764524 211170737 908176034 962562928 974731006 695794755 922976690 785775998 860195480 75297392 972528351 351776838 828688989 968378021 971578510 262122314 811623461 458235626 587505928 183958686 926420268 245509879 894853692 586015485 678304788 561243204 718789787 401875370 758939160 609356793 870487762 959317881 981748138 43419205 631206853 789336193 878480891 83727185 300725021 477203548 847406447 835545459 861431826 159225610 508972187 970780672 999129302 615269361 703818769 423153805 866736476 432952608 924977137 30723608 66015952 908661109 913148183 169877742 500004936 941653790 977909961 453584169 614312486 454982783 786194165 666132317 795327099 382256176 876489918 395418672 571385374 53398898 631885565 405615501 624488956 123701769 708606145 592356574 841711779 429030564 440258834 170535526 258957444 554124980 804709574 477540269 868923119 282001186 576569282 954393116 972361579 986089332 988847423 803495418 804774621 588004237 590955126 982133131 994880703 343291574 389911306 169973020 588866870 756531554 947801478 188142811 826232498 242769720 313253366 906131136 922988560 627370492 916268737 410714943 531174461 561589041 709692416 787393010 901685660 254137948 971415374 661538633 960659625 685221890 710849801 767277931 911520833 84248674 280553578 645433969 883167759 954770872 988086528 177456525 587591126 472622474 922358060 318489987 436672046 900640303 964410973 542536565 788118310 692557977 760537867 30474232 193982528 593200964 754431769 19863949 306108030 208533221 439875425 297395074 499576792 912815250 997389176 297237834 958358140 563780426 899453782 41233884 986490413 207328217 722561100 831366684 980611420 633414636 948160474 919019948 926655393 25155911 123498243 599018156 848994989 910274923 912051373 892718545 917132413 52077549 460781467 850187349 990614903 931286046 971468157 968604489 983931633 520473732 859922397 1948066 534620129 72184161 464104131 679394404 833858986 180316768 530722558 402351905 986136533 874953203 905334452 341992610 624950496 43192776 709209378 159894976 686687769 894577993 952478925 718901243 747081078 446833136 758198931 751023122 871162615 141847266 479367262 928150995 938147586 938890653 966210366 448962620 536230224 458655948 845645344 746148722 993783226 749711994 931501120 681931999 770397730 620761762 983770168 773491908 961145736 12702730 711262153 968544228 997787565 767831909 800607354 171125763 234755427 840981629 993975927 745826680 826829346 346182503 374677259 501380037 858307383 192954428 730256528 214193477 637961132 524879835 872405822 322340124 954342290 111916847 257202825 375573581 740801576 949270302 974406766 894313979 902453994 9296225 251477116 678026923 885362962 697776930 742084881 501463787 680047161 68325686 541389181 115191192 377878658 561431910 870632196 426314874 962797219 578456057 920528660 871601676 934777030 37758635 659896473 949698983 974038180 584393787 830343523 614693332 662436605 664606899 828923240 124464959 687966677 639028720 771168181 90131906 677251027 848903454 879060261 693063126 700483925 557700812 964303084 143663711 161263770 394495866 480511794 192074518 720110326 158977983 445852644 875131498 960453095 466881350 849638311 665446431 962439221 349948199 369067042 253711048 691119881 729814064 994950784 279795185 381701077 268120619 447217535 513716245 602959991 562711640 652636142 805837007 890045296 366838834 769895693 909334867 910262899 523423346 682229488 556857574 672521184 191217079 987415082 600735665 778882374 85011437 166483031 904823179 994332996 679804136 815017452 321774469 732954097 914283313 932001780 275794068 922593724 88389869 962294939 353226624 784904664 825089718 916292101 12272902 683339419 135054737 280472731 980086193 984690749 907134835 908737400 805709164 934490099 340732382 569256753 484879574 986375138 631727346 812579905 419342323 587761690 658013021 882773748 456278165 700770554 418918920 797445030 360614698 778445218 359121181 420418651 923729499 979013155 173678823 700630797 520130144 792305397 237472207 295002586 623975085 884169934 857166709 967273743 819041844 986775276 450491919 713402924 593673357 974032880 291948173 354140512 532596925 709991603 864688664 886680120 236245333 307243131 103000883 207774990 216538897 488894404 145079151 313204099 45235682 830982180 404727924 741123030 205009572 216276998 608049096 919348955 911847179 967812860 525133532 807035239 303924103 592247082 727528357 980929900 132474073 351596437 741769405 909708148 653117574 915087017 931403214 984137458 556434939 739748574 727153242 984736668 361027778 952925334 328854150 434011484 506090825 942681535 608317119 745653371 555897931 569432920 709598289 790309509 653731674 851624882 40512606 895333825 221149261 453174307 424563630 461075104 288318113 755240979 12074604 287890878 469424579 785896923 482020141 744090382 124316363 723702105 486138248 736460797 750941148 898176873 202266074 777040343 34588809 172494863 818386967 995990340 933522846 945827881 448172423 455599139 929331405 932613867 973032084 985843998 831604890 948441055 773457911 812669938 652071319 810121358 785742741 985951118 782014626 789068170 191071160 221512660 77612231 814375350 335271206 455198634 20632257 276310453 636770211 806530566 989238997 990809503 353531464 845068407 63989292 837861475 150750731 553491752 672375152 882833510 129636610 174867155 391179211 854797830 721976590 730712451 148301806 985591098 866516590 959316067 326981002 641682031 404437054 908546302 125239535 205008336 995920438 999325103 774967177 971927108 537893893 671653038 880690916 924723673 978318695 989655254 625843917 926543408 254382075 398366059 502710171 508255651 754190133 934667797 82628392 130663625 863589359 939475849 841951045 969630247 550283893 760713537 494134797 633898836 172259129 866790613 139865600 871438237 734148711 858085031 699896720 768015250 877756775 990995191 450652075 801426665 337414668 535707561 139734132 806362157 303431054 951179153 440626865 911163567 783241093 938946196 105236726 873666007 347858060 496234397 994507277 997297446 56662230 937440250 238374840 990660053 228881953 909146544 345754755 750600276 128628416 956174200 832447385 991934407 473954257 948839662 165317781 289947183 575351756 979175234 1863613 210753321 830087033 844864962 81975890 547525792 536408476 554394811 447960774 824191588 198300337 557706156 622900678 946722157 669710469 726411580 279576449 731559474 67032995 199053537 128524024 782684220 490436077 550800786 300501077 552145925 330592300 539654410 171062534 711673985 86955076 712877291 152122543 251980801 794567940 802306916 156093523 785705736 457589867 741565764 352106087 884422242 87590727 292011147 439947827 656941629 488946774 650338477 241291389 707352818 716384307 793676162 854859934 958626462 66219463 322940431 269721734 548204823 191111109 732443069 86034036 943197204 869430996 870895676 134957612 387731341 540273079 863437360 578252581 849948237 285859034 490409223 371174530 915491892 204274210 795787305 82212944 470336174 143009508 837132838 309959928 422759766 927326436 952235642 222609518 301792335 378979886 960606069 51644930 865816875 739946237 839702470 159740348 909069974 925609281 996334298 120969800 918786516 433691251 742805133 709236694 760651932 816324854 928422513 450677800 544160242 515665448 972708579 285774942 419312806 131707505 867759887 210981451 561470487 132053613 430117248 136258048 999823514 694747817 898544313 598022925 620272835 246165177 383870242 504921221 773696803 88520104 506795930 938471987 950276981 941774359 977573319 925651720 968403083 781906727 973394169 339091086 834492355 980209543 980877344 773583258 953965302 334163648 635179263 630259094 808881170 764567676 836021149 213648922 951904215 636577235 794968546 751373357 896381453 553418160 627142402 702048135 803836525 788066948 862812299 868245463 908210432 596232887 753459166 713341076 860182986 31790072 752678690 320541757 783835097 55774294 530415154 590211181 775526779 302852927 424513873 421984277 600619485 152082428 263587049 672692844 679361627 116457602 476794977 317314616 427552495 839475902 990902035 886485240 919856504 762114894 858248975 772245366 990091099 858269756 892332717 475050993 487056480 254906796 902031855 727762623 863273772 18553836 319686415 427110001 619665401 322510765 420227704 270075158 987567421 714339516 879973705 612492685 740767642 902480614 948515023 437027754 541478254 439708098 871664320 997341884 997908543 430736408 906853829 274637440 798342757 802504619 909125620 177386404 550906406 672893396 838281329 968181557 991361420 137801832 439730627 651115408 808588881 318468005 358061235 193548491 821840236 464598118 919454724 55135953 667424823 225735306 855257090 813522791 931701249 575879138 966288442 668184573 764355761 642263424 657951738 289625124 403885426 661469394 955714744 32469429 878847815 333862225 957990020 540597465 808397655 448480946 576475065 407557884 980199073 661659297 787691684 411596974 803502414 85434876 794761229 246331878 254209087 855223873 977373099 659598302 670456696 292242956 788430265 759521860 976200465 339423912 465957443 87007945 655945107 196215091 835343328 951824432 963998026 773360633 978664725 179106447 921749931 156168209 367898221 710195601 808495670 949910610 950874763 286954564 500703887 332298639 853031578 412557461 528170044 723339017 914381731 978236464 983683242 421737106 866801752 116315988 867930383 123497114 457962684 742073189 897977738 468925080 559731309 117804279 145784766 380175470 761330402 514090773 743243260 635419509 817987680 171719131 845276583 63934107 464203445 944114319 949553423 336106035 495404080 323352529 586632427 691066104 793155406 950007779 991385789 69613497 922564169 307716015 582601658 791300232 975245341 953577602 963563830 800653944 901455316 419561694 806595426 141228042 349938715 972476843 989625908 499263393 960965293 962632973 971775699 149884601 533534680 279277472 607528884 761746056 889150330 642886526 718913395 755798723 827341438 47507681 182061866 492110205 864873065 422883289 909381375 566600940 765327169 394567219 604979501 594749753 997531689 796035828 993526360 516316497 694624392 750134438 890013195 601422658 722547148 320593106 389612918 562248792 886137269 798496966 924847887 951011623 963666561 795692269 887460787 415259142 645373375 702070346 994647722 372183890 883279360 816229953 922416603 278832183 331493549 631640518 677412164 645022618 781150753 582287423 673677611 380015367 855732095 899012898 932822748 742993792 862483686 998426863 999094328 996378365 999683228 479864932 668224945 390569679 631251745 879858105 976535429 603135020 872734532 992752147 995559399 891242408 970621694 29953637 443241035 933784504 954953428 233695436 327127268 593355983 929170342 677548017 887669892 172412610 820150607 381574691 677054734 274150908 860368011 108728658 268754712 392733880 716013718 635678754 997150084 160066893 344974054 947848772 957218409 814770276 847529040 334331402 705932769 758107028 978168443 389313175 547336393 691682543 849051756 237910192 517854674 805896796 846012242 110097033 687863755 352419215 644732950 276172046 854138521 652270127 933515302 482142169 799829677 167329215 249757638 19144513 331594399 414992983 711269839 434773647 874389659 347739217 806282269 677979456 684417044 552930688 767961448 86807443 202108752 463874666 856920186 838723553 958864670 768284157 833398946 737338361 742775625 445596544 939976565 203973156 505320235 638266564 699160512 466221898 646381134 800450051 986915867 136374154 244288017 609922089 781298848 640557023 821754320 831653605 935595907 132243184 969790763 557512342 744970608 865664612 989607438 264484250 588930341 975070883 992663991 186523780 703494352 149500292 371967130 240796060 681684322 672654699 706815941 689268768 937080926 705893880 897577428 485556413 923667146 358488401 594669708 806201914 970340363 79648924 311339539 978163121 992329476 300525083 423064829 513360731 661995050 821331014 954056131 160662070 286128046 309338470 647965685 992101932 993228441 338660882 382752230 497666842 915164636 740645844 755086087 122552594 365631405 620826466 668392714 341447301 784284284 850659778 932180391 478783683 982113884 782475326 947599457 878080596 890904511 843042128 981905330 912808245 990547315 129268806 478665455 65462762 191066764 478285819 730593109 158008737 479388566 376061896 508055901 578928258 727942886 230468644 790616850 624616748 973308773 761422307 902693532 56373639 742804154 326865750 900614486 595572862 833264369 336290617 635043628 65859698 598026825 977365124 989653865 185156280 266510568 615720136 635554340 826335577 901639699 630649716 860883725 140757246 714768019 318287090 798021293 488421936 631041348 365254656 902713020 69480475 537157574 318760830 671729702 624073188 678393457 986870711 987485300 907492419 988565367 737752435 986646761 212053482 922303852 438512616 545211827 488559986 725865605 192119905 516606178 158634047 665890045 690969036 955046302 70812639 779131145 205318537 311152136 499726382 993522431 811746487 917245050 816140514 998384803 597521267 670423064 520590500 782756881 465660592 985402063 977214657 987923748 607799642 846544250 902176551 929150153 53863009 848276960 117123030 590777953 838566681 990386964 416628947 508435484 234649715 493613192 249422106 357834325 114547244 782471116 982850891 988443418 669032196 928374258 211855782 787559051 844244910 984654128 345184963 575601653 12340280 999654582 976176169 989760685 583817012 705328109 43648065 844009784 745453327 854186717 197874508 416003126 682660656 851047563 225643212 823579546 38451873 493462299 878674964 922076989 90569628 880189921 619736342 781429224 98615289 670209939 468474759 587371908 814753935 914562901 984921839 994801754 953817952 985566099 323147594 861429669 742821801 998320170 702801054 915050501 776506215 983565602 587411077 625159124 936287899 979405364 876929784 999793452 459521865 655432135 663644100 798009596 265041988 973416522 121536637 745675491 334574874 409624622 542047564 975992338 907466108 974753253 404771511 685082308 917618743 997811229 183508943 262473978 349602197 694000345 304141342 748888106 299653277 636852483 74860268 574179678 526704489 827049894 674642185 847509158 820567972 900723762 51941276 154269653 21802029 410241116 191585326 976151481 522529945 864869929 268908991 894212902 257903165 822052958 970769370 976741453 346176418 938504963 76527488 891441396 671570327 785936479 732534556 996451675 569983798 570440129 369948433 520172193 801715987 848302327 252591781 307067287 228719117 477641976 630826906 863837054 30159759 277242474 210387961 610518817 841045282 965716878 867103999 949019469 283292072 923568769 151728645 429550116 72731560 222479417 370587569 398565787 617790612 770158871 82956808 554568631 133233381 409991037 485577241 574461449 875323022 961961156 656597650 863044842 662153934 773478941 980792862 982550330 527852284 712243024 679734789 742331531 637950744 987037551 477488393 617701651 873303846 908248042 220979192 874652823 761322724 801886110 412756725 689092099 646877946 670313834 683119911 738660248 946192257 979530959 338964522 386805490 45283608 728864999 92087612 712304109 160594390 706142194 263354975 641903476 769845272 874857011 277816405 625639113 96096277 362161334 387924167 519188497 610454321 693566632 529728696 537753863 553977530 995746207 140309645 503639828 756811180 773344138 551402675 597716934 491317874 605531663 270182295 473890608 99348775 437092923 554071648 634210558 583750522 893005608 162777410 166042979 72923212 228371546 20615018 881155584 954294383 987156885 498486138 930428237 294601648 758371450 258336291 274279206 651693486 977283859 380641495 480447635 400329633 455082207 805144826 979321194 27991425 131490706 277154651 900653954 467747744 766800626 285115987 804050372 502286731 967348242 579708577 621252896 381896724 718554438 783792112 784456918 457502312 814523797 294517806 442161949 233640404 277629910 597920377 917940114 656971186 939677486 929427471 998087927 716989138 726982274 925597349 974607382 196680823 832840706 980629131 983977080 388300879 635976704 690282707 863736418 587815648 971472638 3402948 153278101 525959399 748000694 363204567 564216491 774345756 948286812 855192336 871560615 479415989 546006461 43065412 895085121 67508676 969190367 475078895 967218283 4082056 72703932 993692521 999072504 296050162 307529562 329028572 709544616 611167303 755396637 335869515 733643650 724686036 987806684 215979349 893522467 688459852 984208788 360346182 401328437 774719257 890615736 377685043 866265644 921125742 972626891 425715392 630962374 978406363 981461824 124382856 786595475 957211413 979947120 512771095 743769344 157852137 172787911 555521078 881953697 553462159 718788080 502611326 803549432 655035544 698911004 336658887 713756529 754956798 785076033 209199161 860017057 475635062 775547418 989336778 993424861 301098651 466963967 322014772 586224814 323810500 459759389 635360387 643257109 890683309 908943766 659942919 730489089 290913520 733384324 803301947 874354301 357135868 920552549 372846846 926713739 131388213 901988988 610104976 620820051 140339284 215188612 572361926 586061191 7773308 464626556 195145242 340228708 632732442 702266040 646708199 919358031 184132732 251489597 356957412 991896731 463128189 465308090 778644554 872535950 174824907 448423276 716340166 963276735 915504012 917720100 542217901 818721203 29650099 76797900 684637874 864481556 30233370 547521289 94494361 797270044 283968920 516390746 602238142 646458355 358134241 561657443 245298238 626416796 178269857 495518813 156702605 195331621 232377433 960265714 523241412 553200482 769120817 972706117 373552518 523873425 670581626 929876787 663677667 954202245 829514608 986712287 182801878 298833095 266839863 989056597 790057420 879279292 975750431 985827957 149756532 616253233 460064470 826388438 816660181 952496935 364111384 693066518 990580200 993159714 63337963 857708541 797167377 941384988 359571935 660458367 468486571 995774302 124877973 831333808 531308045 826554998 930643519 947932575 738028771 980197115 68155998 520532466 288454932 826136338 365266289 631055601 662518293 931457296 66801979 732943007 777682030 950919373 917713456 924046202 974478747 986446404 927671456 959896866 274783681 555822883 592966068 994111868 877593560 966555897 604848976 802992801 945728463 984414619 253652648 880411322 220452550 704685551 21380946 211361832 607222036 711314576 937759577 989410721 405925559 876859749 572307685 727921720 837684473 851298958 54108453 226361319 451103239 768335067 142306814 514431687 89621860 418305237 458287524 979178755 477603589 837177626 642624524 835188716 725894346 757597637 815961914 911267562 545552707 681183754 787063237 973784475 494004087 529600659 947843082 982423224 382592046 879365301 332339555 927232694 373989018 715156335 425406570 708625219 45468317 731620011 676656791 977524309 428601209 859774036 766940377 806415490 952710109 966738604 48429224 723390521 997782989 999407426 220522038 960989782 444203191 675900772 896900266 945759561 300953127 389620363 147741684 197654948 251631325 253245911 980847478 998436470 746250889 995711142 23197945 38906345 691237836 724673889 703953124 906501973 310148974 841233520 930686382 975935566 470374042 648172637 656897768 980132989 296788283 552056372 621798055 941470867 473767938 684628965 338889954 903554992 344458181 809746516 541687373 961735463 168440970 693915845 63638128 156258516 216191850 694476880 977694939 987667142 6753377 204559195 474307541 726152525 802674916 917866148 545196819 596557281 406587685 791493974 903012032 981246953 536340266 768296908 431264731 504691136 386565340 483077799 298517904 754329437 346245375 402920585 374452258 985677108 381269629 941251310 521511113 871095479 697542522 794817356 348181915 972630517 62531008 331486220 893661091 951086138 361765357 429480157 105997714 415686127 939387299 971788890 263121064 624667872 670341087 964098258 532854622 838941891 671864179 940111959 225522450 498549583 369758839 617971066 469482041 893021687 651422783 808316074 624328327 797099671 220284670 334018873 475872297 692283118 526937743 568788140 475699412 830388080 961872784 969800882 991888040 992750429 910086140 940539144 648508303 717445634 940016606 978496463 167174944 323547851 40847642 306519437 152414620 392491433 402294185 426827382 84102963 107325366 9964729 346082741 963764398 978424315 957028149 998837150 447332473 914325300 16171311 976814273 222446505 308440382 591064337 987033042 748688714 894160640 946059996 974852389 998306552 998452824 536803262 983201799 658408770 831429345 179410276 716900879 208278587 623611921 834204604 874006029 897371513 929014822 333305580 460989512 16191187 763106468 158399829 270247565 459511955 739046676 583187761 800749937 152981078 716320015 538167861 947376233 595885940 618577646 801875462 962367455 222634139 497775765 191386118 509048669 224723136 522752942 37111398 564335234 682100589 847139782 153352268 266032098 36821244 532083617 247805846 682594195 219984287 380096197 100445061 696501384 794762372 993975808 851659557 990152990 264536522 454947956 462148498 606717520 114664932 312875669 195749494 480475403 635521663 946928086 842157100 859038136 70714803 979645928 342094955 822038090 984327905 994095936 99201295 373548184 510527106 563615564 541706786 720880593 112542741 177282669 492089302 785398036 696544836 773597519 221732176 410707515 833158289 959429207 92634609 799100798 253977054 517493000 869504572 941173131 528327183 942967555 600423023 971288176 70867649 901770012 4408286 366138080 472520452 795752403 947055629 952246463 318509870 593824979 876753463 988899933 879651531 991886798 993377723 997805753 789781338 971902297 132356194 754408847 833332003 917101917 59958083 186346207 326399507 762127508 123376334 434866994 926785979 982750942 995016527 998871955 993214597 996220658 204825792 704728309 712628628 774328337 617755861 965475938 593392380 673992284 221012696 723035467 859204326 860285589 505303107 528812997 551374223 583101831 942759896 966526015 142304738 375746179 636414159 645045382 608862285 863979494 676124456 842020593 673988670 676861510 464664068 624875655 404075026 603249765 116489899 723953180 814680450 814991286 237676799 542048338 470129469 576322933 109895485 322215981 536001588 687884811 565910266 960330059 847710300 990371963 481976296 929352983 490853907 813442895 17710039 767187592 882792448 899038909 789438430 809448881 736270456 775239207 825727106 962996326 461143960 773144116 853892722 909982319 612397912 808294215 909588512 982008634 72697342 759237315 926771746 954685044 923096016 994313054 629832152 826239728 929716442 995474040 207505251 689863312 330081766 676589712 215358604 248537983 39549187 75817451 333716529 878314234 508670539 758355053 247113433 833031254 626835009 919938630 937705742 967468094 613272408 646066992 842590474 962332919 643297828 650995998 632377110 745953478 528756582 668139460 625152343 930562128 420062052 818375040 187760840 550057846 453922285 737707907 347885077 813303635 190137342 537312495 573354277 992088955 71858584 519196553 750491699 910589006 572201683 672493308 807142638 881413552 785220378 881086792 297058269 509384114 802849993 831600437 90041222 372998293 323190414 649639007 499679101 704513725 820504867 909390431 528027848 973075286 393621073 622222950 973279130 990182557 282795047 774807078 12496466 66889918 387484094 860365230 575246781 887507745 327279696 639584996 97278389 645490420 962750067 970919498 642703026 843802205 66603228 129575252 811441466 992550187 701789607 784311353 444220665 630427670 811075922 866971598 663606480 840289608 32428435 202797446 831082289 954746181 918986404 978413459 568718594 710537724 422171299 669883516 209387656 843677340 533208967 763428139 317453704 571932017 89245660 690312737 242592727 679837746 845108076 948314782 891476172 921975020 136545914 690698944 678630736 799917634 744603361 769712888 318266570 619905139 348269160 598090802 877995754 929517066 577478169 836742014 624085298 966522135 530372469 602640165 662693951 828343893 884549450 923159855 107077417 623966592 512912666 914042601 733641874 901458442 758908000 827116648 205222435 609661848 330724354 750541371 472469565 912810184 944211018 955837502 63569440 906218604 897020376 934767352 448188743 482855071 71328982 898889054 655359174 695821950 884058637 938082464 875770075 903367156 945996134 988268969 829372411 925367085 27678479 133627208 822958889 964828319 691446875 982092277 221099177 781026037 872096896 882912499 765732909 988173759 660275164 793982520 782995370 960888931 924137449 991685555 544695349 752020294 907834600 951322095 354291276 608540444 259130018 971431596 585196493 892289675 683123159 809282993 568725980 905056673 750540650 970345062 349871707 475358155 742042290 981400824 367016400 734487052 722386944 881837652 78722681 529539012 613070024 777210081 537217208 800536875 668933285 993473995 233577927 948175237 169074632 428268787 966446813 992431416 471908688 662323107 269630894 635709208 340333726 349372624 444564255 561443130 480763020 656649735 50932063 305828294 399715842 701169287 722180471 987160899 62998666 717029221 811325869 861625032 498880223 603085291 477079326 905803329 264707302 539791577 917563180 996000332 101642994 264339035 225816871 242124551 237235284 896164390 222573515 576482082 116220404 200980499 828108801 983355396 119096610 413816727 600137637 620569727 352600487 810437540 893705626 949062630 664310719 876380907 500715072 683105497 487413424 645247610 282157292 808823131 31326355 666497657 62434548 293082866 568284542 710065818 191716621 726563970 852052004 996606091 132781101 830839531 466332748 764308359 44549981 239580842 121877397 736162817 865611986 968147034 620384959 774240430 564489997 825049000 243832404 258601370 979495459 983802346 924189134 998888504 919035677 972783561 303695485 369373118 917889004 972259580 469626483 617128673 173828353 505577530 298270723 415552571 295218664 750933370 332014752 633756015 881918969 929981594 236610756 298011963 18612044 750987039 987032165 990909580 434849186 642576626 22979750 533876749 609581674 721529535 82382144 628807153 697316281 914937207 343000804 415178343 482017965 677380202 316029870 702470077 97058999 576276427 183254960 329803209 119645938 721109883 998147903 999950778 150215595 548320112 656577759 925745482 740891298 910747432 219724563 804096383 35650513 266759908 556900290 785027833 703006942 767444325 750339861 755652411 636722647 963601959 510606887 976622554 939376184 992963146 413257540 841109933 68482883 417529625 128899062 532828604 792424244 901936869 618447397 908528439 325968169 590480519 495998842 951394030 957487652 963365368 214404823 625318920 394728716 627746390 607964307 954714158 874328004 888030302 136003131 244254798 672601511 988709086 790896728 956642865 880365780 921441926 505343889 713377578 197043581 351585828 379948060 399354867 105866871 535934601 891885538 894711860 866594742 874872125 543067110 564490657 48740682 368630390 569335531 910408717 565852456 791599690 742810997 801665735 51459219 565837583 673916596 888434049 591356482 895464210 931342897 993799721 579126033 684460517 798200359 969477873 312160541 489043114 730119266 757346745 863980731 901211529 177741916 768221077 541991107 782862169 28979984 918882198 459161421 795882894 223352481 531663206 495385315 933766631 455742058 965453196 623957419 724016402 719314891 751837808 588000581 829213704 115858235 888858868 881346427 894070217 243276618 312231508 413651536 755112062 233505669 580864186 541257387 633681303 366206536 815724390 388414799 747103330 498511237 739269734 133059096 808034874 101362978 413690108 758605534 855334264 866710180 867001929 697685178 825005054 129729533 181572243 680320916 713352343 665209154 961183302 491834597 822391793 335485949 375348381 681617462 751749624 211673900 712256913 536223927 774218735 15641411 685645484 909803011 933046551 574708689 849227947 10700270 105295722 622419834 858482093 274245714 868534160 722993964 844405640 848281108 997199810 192807277 660571659 548039906 792396024 756268460 810220714 59641526 999318355 863789416 915257525 444977884 855456787 486647419 994470020 97689769 681568645 470787596 661219048 15412613 866780921 448600681 784101163 874467472 943700546 597439389 908562684 458150401 674663580 198452421 625291781 409874136 685705023 682606273 735099259 565079397 991867755 705422711 944746085 361051461 999823053 668771140 939154292 482356659 940089098 514103883 749122745 429801104 721259831 757308723 966635765 452710334 828488316 588741818 921836220 452403853 700770781 471200856 728659903 151644239 817695290 332155088 550476640 484255691 621580472 306386094 955121466 238765730 582851618 869234317 923697851 952622138 956706146 942528151 969727229 284935374 852272487 734865821 740816644 356039550 616865456 877225039 970435860 336103518 468906680 821137576 930029891 161997441 467798477 157612811 987454473 613752689 999368405 501919996 814086391 206823016 294387526 775484205 817487481 175701097 649034404 751083352 765641366 294330683 845905734 109360326 775424540 545797788 910705463 213499179 575598534 616577723 793208157 443064012 801229866 133261365 652884315 35853292 842702800 503920610 534170419 961662036 999735279 658966854 883557876 539057208 638231169 314670822 626018898 218663423 519221670 545356224 930584263 975156824 987857099 634921507 698354952 934246250 999124366 772039750 876188058 8558593 381088677 767314172 954691588 129479745 847983769 256367384 670331581 744419269 842728164 522571277 858015041 819660621 976890941 484935287 919742991 606725011 952647193 991207127 991792529 765089537 807418386 913136052 997108142 795227858 888959055 784392154 958128262 398030812 911128501 695556801 883158014 390104961 557360130 593152127 870198060 194950262 665499374 738625267 955055485 417804009 913799108 121713354 594329785 449483385 887216040 14320347 168011261 589099959 748896935 428165681 589101390 986399671 992309502 837726013 926133158 303219715 998447563 415124719 598466959 823249626 998657534 123394972 957974619 229561266 782598302 501828737 537354851 657576818 921612645 564816927 623910065 676412389 857554418 868220486 883938195 318052392 836179597 823639395 973964853 379144132 926177182 116048027 412640760 449039110 804311213 446585042 694176894 486078708 494789616 106362613 141506354 809005379 977691228 187527185 815068518 627122736 997044665 264932711 895469721 42784754 270160450 330800896 898668184 194888539 722865054 856447227 961043678 918592886 950609157 976319486 983359827 472621463 936319663 297326658 915965868 271456662 597521140 2900283 891495321 202945995 821513294 421430338 823025295 737442145 768452535 682103033 730407011 817030800 983831125 717333221 797891239 165067047 498781518 342105812 876681307 931786970 940438592 386902854 402105073 964036306 971342317 486147402 922276511 814359238 996660614 688620648 965443151 607770458 719608455 103066567 587147630 430778393 476702536 398630800 953757078 163708466 834913023 809540240 853114125 447807356 678232740 31793131 321622859 709095653 986865109 263179151 986674733 310741382 550955459 581899091 926653707 465411268 479499307 200223787 756855823 882583601 888705698 413120959 907009975 420800319 994956784 760752282 875961895 262637082 614791412 152247195 842453962 422119897 612371615 496404305 812434081 591355396 676291742 519676073 570229555 852830775 911034594 223861485 249102864 844706906 918389609 152995475 766790814 767818972 962787224 798602044 867564660 751712927 849790855 522693413 587311648 410550179 750137713 189562121 650830166 262477209 339505807 357888616 441050059 108959715 887419878 845525787 850642104 299678392 802200353 134817272 811221791 453825193 687412410 173362798 805456647 221220428 442847813 215816686 337348940 614250264 730097516 766730957 821364879 607004904 609025470 243054691 684929016 788895712 812659339 569328338 722799935 724500891 925220144 209861810 607918389 941312101 996557725 368111118 751786174 409568246 482674839 445317217 455163431 871911130 913883749 606093846 991210410 460240318 561037894 98904730 778450635 527192463 809799650 952356294 975633680 598006912 890132006 802089873 985607430 644414044 896621403 151084770 249534210 79511973 636691781 855594664 904999562 574343075 788862525 546071000 721635478 439597465 709474786 72946791 478292274 75672046 751506715 600462847 679720292 55852081 774302417 856479590 917363950 250052883 635370303 547139788 672375446 923147907 955248190 405245737 463039402 193196982 537478022 292632642 720822133 628585512 850837383 633387535 851285027 960584896 970745581 897134403 977926625 595035126 751232497 355461824 569249775 170843610 564227282 356611762 860458068 482355791 754127771 548909663 791845737 823050730 888165978 435412643 720565440 565318829 962509776 335349088 775532050 882904178 917446392 102268850 358182550 69694628 537023030 462702759 678736073 250800833 750423253 658059388 753400153 549316058 982619082 578939536 888248772 150683506 822500477 922754927 975021444 577612349 939111895 98412908 919069492 673202392 708277114 227599764 375537990 445812748 595750275 979735096 985116509 967701028 990320137 144893616 451316074 286030012 618538784 312772417 434687292 668242993 686947634 137916880 823282790 400424057 646889907 706798034 946749740 772205816 911563448 673712692 839394885 314515052 742141558 939865915 969651389 192335200 989103099 100986352 999124286 678521389 753519017 859270159 903307532 449279474 514410021 84871545 231088410 175588038 694825959 735279040 925058419 160307314 342349791 606120811 705204652 586588574 899069822 999888129 999918047 745412221 790264292 940282965 999153805 155418996 499159456 934900200 982881383 94245017 145547629 342613323 628430101 269317778 833556230 946073499 972378612 204909921 302429003 166265871 393336489 684996251 971528468 587194719 991803782 145715652 560903169 914062043 992485988 160951208 312187187 895449577 897076039 119099297 232150839 902868361 936260010 508604532 910465147 258432290 385890514 988871833 991290882 684223402 939228786 317328047 487623302 441882460 593800266 688577021 771551179 547638334 819912557 491016106 628416741 956424598 991543532 62167160 739530257 781887669 828427568 645691771 682108253 335841229 341270259 534594872 536521119 705752278 976996171 285659769 457270402 433519106 782099942 521428107 967687085 725938069 892666501 530628897 868727793 494814696 682312493 935648351 980011054 282283293 591954639 998175901 998322470 886998337 997493875 349382222 510953233 761523350 782226694 22174536 180420420 858017993 979963638 117587900 360743310 489321350 731827719 645206425 836198139 442783036 896306461 133766788 223517929 724160160 963104087 193327131 829284391 966976281 986761583 785905867 845495161 53822529 687866121 197965861 994371641 935468722 938492927 914786551 952748966 56014958 709328544 310436661 418766461 973813344 996587714 159567865 534277622 569473212 795908102 815616943 883118130 354738545 367662145 583963702 710770088 738915540 755016371 168439295 615176880 796373897 957165347 222731054 280474110 55016245 87909249 170559706 374531500 173341074 508354220 293985399 900352994 616886258 984526065 544857502 723306195 184924819 658561966 780119160 941723239 965835110 996674546 82132371 234864188 455196663 544398535 479951669 846625048 860514687 915523336 390012080 732341875 873620045 911200072 370697271 907077560 975430585 981189977 433031162 448016137 305230941 445948989 400694829 694102039 271859099 444097930 850857098 871677311 942701771 954730839 538857533 573673573 973541502 991487978 869350716 925313224 981317988 988181297 833974564 927726136 31871030 766857332 81746487 293283862 811292078 922340592 711929191 871925621 800113381 979984788 744906380 814954246 868464097 891636617 955791653 995987857 84546876 231789762 771929313 958782251 260361144 743577582 30012781 256302993 580421168 794141706 794043298 970426442 811958560 966378262 180327716 248624989 448053329 730796460 939712120 982850986 643604036 771556073 746184682 971501777 362449488 914749043 559007592 970333241 828578539 834754155 359359369 838637105 945317952 996426346 913212642 986465362 63728213 220971884 108808123 905583659 662070042 842910180 98679078 707067183 322266572 469149312 424620008 556639978 438129628 638231472 541399759 864663159 593671394 694475128 865694441 872862831 33857454 346289463 950655950 987636609 43905784 405282338 232502506 314343976 487727648 618414036 390377132 655780213 112184685 426250239 44728765 857609485 241608566 427423556 120733217 173190974 153915627 586229269 914401248 975502138 5190434 603127383 200188962 904471891 985786681 992235955 612174753 706500797 570707859 777614693 994686625 996310132 301401885 508968284 811595011 871425302 144741644 170974727 134435542 739824024 850767544 866407295 530524281 641607040 418702911 639105837 141614186 174799103 206193416 883998300 565787034 794706013 169951759 828387536 579358218 970226260 604063183 930392899 984238524 987835809 3382606 765173456 259033751 519410047 474115007 930926076 610957458 739104349 373961109 948770652 968436948 970037406 808741151 999048962 911969287 929939787 810882451 869204483 961645791 987675111 820170654 929438580 430273725 508274924 237437386 825766786 982596709 986930359 90664253 435020374 299136404 680958368 197335751 289746957 375062545 653677340 302971895 936785253 152568310 382401248 201847613 815917504 931665108 965763568 189837808 603304709 485457270 529304429 494542825 773326182 883074913 927763387 285541129 993957123 454433419 817584601 398287580 754596612 343474340 766145422 258725669 931601454 521979187 999283640 616143230 938713867 931234720 944473603 844406523 880576502 385947180 662174968 635097231 709517348 942027415 946963314 357802418 508670883 963474716 992413105 928047430 957510488 211330116 856049307 663330220 891533793 474824479 716827625 213709867 992886307 588676400 933419676 996358083 997244692 769258478 893751112 401858950 640082583 749873858 983713174 640362837 764175391 611106654 691854042 783197752 922308123 157420399 621870661 117469546 117545422 652298477 808608721 953358526 981675760 27903581 793179536 254091734 667653392 431163750 942949294 17950858 810461767 349134430 667667662 97603796 765139829 310909118 545433976 70705966 794601912 553692710 589703866 161547874 795503360 633784759 659622364 149612729 764153093 445795481 990183019 283004903 879579017 108240460 774731862 856045134 995517579 463711156 466923572 166614689 658066156 875818287 877364865 412675600 935910629 366206931 757092509 798866672 907840312 162380813 820959534 33882882 879001896 911595859 990487422 822826325 872288239 811902365 923752058 137548819 567854967 392523952 605604907 106841899 965193335 855767948 952461829 497308857 506781047 202210603 414526817 866423814 922015436 286031057 546571584 220283904 346330385 236517583 344712607 318339372 873931432 338679348 947132128 668198351 931418346 559410527 973145703 532634090 640929096 893367855 923959957 710496815 740305965 824518948 899888537 780907666 954801518 406374767 630522386 681850389 805674953 9924588 879343681 162335164 174734947 873500105 952209521 139758236 662221138 825656566 905634829 395659637 841103054 746053915 779836701 899721700 950612685 459264735 865262650 374803073 584415083 625138249 997967030 875326933 889968803 340880021 920029622 221048364 850380790 705701033 947456752 740991531 798624412 639539637 644933190 646052083 743900110 571965750 604223930 850749882 948873752 351347500 456442840 828194212 874196843 22824602 659878598 880204897 997646919 958553181 965280288 734964133 887984581 533556381 882986313 913897623 922506672 908336342 916916093 69412260 503302222 456916938 997074451 555050534 757420962 150744339 887446746 822952656 859895691 141484955 409412788 8087920 927363803 101373783 789670744 713762397 843189317 927375108 932720430 606472007 652425142 625525845 812611308 854340010 956838500 374742060 420704327 289671630 982117643 125968578 165176363 440683519 828150572 330230186 694001810 543516884 753347305 395687833 681990475 631505859 888538397 533112450 882943768 816233467 893943968 635101439 674174654 406646692 718688081 143592891 591255992 86758935 958841936 872138940 933595526 872536467 970100938 974721100 984546846 523246815 989758476 152864336 850719455 498290461 685176480 749601172 978494919 802969226 803931993 586622026 645732900 623025952 926971810 339299833 641721264 263745520 849791007 829242354 906703138 488074067 666381777 132178412 802715142 646295556 790951456 740009133 925793657 530180931 886813593 70800746 891682913 675460831 901661603 956359498 982533167 24881438 985323252 24646515 653726769 454589461 889356704 965197892 984462835 347463086 906216934 167971819 886761641 64696710 768857562 96855456 851936715 735566759 812521206 212559799 248525756 150677298 200224587 625857165 975677699 778744502 962818761 589479037 623662795 493791974 834759812 761478337 991989394 293137108 635629638 21334770 600410045 352385196 780072198 669087417 686341720 987302214 997278220 267512442 430928252 374186163 780840326 359061389 994586747 247380030 962966118 578171070 824880309 367356965 742655262 895278595 955619921 175964307 709505933 932327008 991520521 866133174 928902127 841176105 888980917 557876073 914456075 901906640 987004863 152925855 257110014 860169079 966500261 173238622 799747235 594622410 835892629 103823851 172141794 535724412 678286217 530673908 960482981 168434810 768135569 304912918 629704278 77929586 924062696 926077061 960292821 437171170 890268240 442396006 638494229 204225209 446278496 717396929 786068742 95449834 366825406 772585323 795974703 506126373 783186575 108547627 206141249 298853953 360126617 417733172 611733566 423439405 454930646 11804177 671520415 178742122 431304529 745865774 901982940 62713461 285099068 437138521 755915824 121091143 409378784 390239721 854693276 725693958 999636927 922113694 970984791 220196199 560669146 389199251 784622015 971694986 990979537 649326920 825495268 546540610 699616549 318709893 462122884 597350491 705561990 360466199 416102654 124367178 195928468 16662716 267490549 730695453 766280100 269341952 280420749 765079164 956652641 430604044 942203654 850267684 916433336 567139094 608739408 747418754 964140527 256679376 521473682 931947272 974871584 918018076 958759913 855932720 991252187 288127256 785450451 290679091 802036810 166355074 482822378 251928369 847494307 315751764 333128989 703594305 821653605 600018944 894810238 454610250 753861610 211729702 354617266 87945777 91875780 341615903 584611822 499503110 920458444 171326497 842162186 221537570 686653636 841619209 917492324 88466072 241131008 584790471 961420172 454656339 984408389 828232027 938709551 589968259 809270998 864535933 988886483 702216068 974368667 547326567 900294173 29937463 497255140 984965400 985451853 630006243 977226230 781341381 978425046 373835941 711824912 13359848 494839746 519635752 578856017 979611742 983168402 844985330 990886671 434905481 680793231 144937685 343122324 791014163 791548289 304388150 448440453 656135279 929508838 400915442 791579820 771404050 845818919 286990742 859812963 621840326 698122563 397426502 779618252 615399912 911274533 901289378 946757334 576296860 712105676 938381422 953417843 659415825 955206901 683082181 961703166 337638030 621676009 194906065 539479328 20211640 651641250 554293951 911424071 387207328 387212956 45760272 290180179 644667527 979841570 688958377 849013190 220755578 803355972 854308173 946109404 127548668 434719040 782054411 890719796 166668907 435701000 262836012 927819374 115567130 664014285 624460686 733601651 559173501 844663903 12271873 244573047 131818502 268231647 165005653 481649775 545448494 816149473 840250086 895016737 703101196 756091597 12412600 345905334 603560461 858966012 90531214 532536860 576180799 699556727 910501058 954704214 334683128 514135584 545101319 924453032 947462058 956206389 336142242 401271004 241372924 691521778 541899729 921429165 495325237 810763411 585534398 939908810 937610220 996202488 892114860 920019275 796083638 842735548 218712819 885918773 423729647 642953949 463415226 605458766 403220477 899189614 30569285 940837620 90071836 619134596 100756810 905775961 86763865 860810582 685892056 758924712 693706700 884938623 267339156 631510390 555824242 580150235 231161179 713833274 180857388 665233772 507436824 580092728 852508247 954373650 508148269 738588971 836669795 874647286 203469424 695795319 905110031 910228040 45454972 278417571 236736237 518956975 67345246 239065381 263362536 930499881 229766509 390225856 409425646 479368443 522037929 525104967 549352011 929675976 769532281 992676838 533797795 957920752 711174564 999238436 547132312 857194380 741772596 880706372 219708839 581711818 320482083 734131368 697183681 920948594 491349352 547148529 49674451 131912180 237732024 517719115 206428724 883902755 216577668 591310941 17528443 223506449 58767573 621391478 917817648 952896905 916809851 933486243 871170096 875507094 268358231 846828912 83036574 683614229 932007503 976328810 181541495 889706967 292533279 343535649 858981953 981071828 274790793 501019322 864614032 905623130 961756221 996693259 121826304 305632822 278084746 777616695 924546509 934929694 16758816 664434568 990513721 995406336 269190266 769636742 165578739 964677527 234694719 263381489 823785790 957713312 276994669 409734901 703542959 956623830 119837087 129331166 793034161 954211739 845175607 981045603 99177337 551816444 254701329 981389350 591013124 758975148 766393204 807626020 588598642 932575474 565043517 860901958 904011234 986705935 327862239 734890287 628873532 721349871 647462727 872083287 580990859 983814880 711147559 716041076 642113665 979309286 674708562 761813812 207997394 723440559 92144026 802922845 392492404 974996187 395383064 451036728 871200392 961361726 597586032 609327079 96758868 986973882 386761556 896549586 168185001 967656437 702749636 932474655 447900379 647768553 374391816 621060564 251779488 840351733 822560584 997608898 228150329 369878569 567281607 743550628 5978242 411494631 644029307 740755560 248069670 515171889 278798535 792845715 993852055 995924672 649124516 854319519 261129634 916081994 159446714 836959257 920890223 943914925 148684283 586178719 78850722 947624300 513868980 920814757 637445845 693695489 564862638 758049034 850815525 961477005 541816617 593542039 503099578 524397463 797377367 843208996 21310218 482573986 86750068 421320331 895924766 950262720 583258802 739429016 280631168 724226920 11331489 121628625 356691879 454824389 795462933 860914014 698777776 844901891 679005505 738088891 963546322 996269265 637275009 742337653 78849361 633960082 32754247 473506055 362346476 519250214 16971283 901961827 461388145 962497468 55494020 998524750 190536711 302067835 84569297 649947471 975027296 990745898 794819902 914446486 40222111 540450359 855077701 872685424 772126782 919992565 91730259 316655860 705554231 728595730 951471845 972368969 813237183 923344362 148575338 766912761 701886898 935945099 748300838 809742739 552310705 688088571 939973913 949123626 942365262 981594273 229571217 645133557 923491496 951793571 38522283 376707360 207700185 877463107 190213400 573362182 756156461 839275425 826011584 891135920 985954275 995027928 696327053 699498175 99887565 463168377 320301650 628840236 152212802 186661956 283904727 829225379 530374130 557672247 30057765 294694461 836928290 886071730 634120061 791402552 296968157 803706620 651744250 852884576 799898484 998383105 335675895 703525805 562340690 722193521 866983581 868465635 242282342 305592157 357067376 907072354 357779621 788508523 600414294 963554311 279330740 986163828 343735772 391716522 815218220 844251584 670702645 975555840 946859439 951837571 250599091 496740284 15178285 374652537 718158587 771054591 665922975 888274562 876228348 956373290 206849419 731822219 37585844 354368048 394719128 430731590 978021366 984698459 765801334 931866480 802839273 848373454 342088980 429104861 714407644 980824312 371485240 846483289 657869840 875873029 74434228 306191585 939829269 952411366 255954319 806445554 530011385 934784524 143442827 312374366 307661560 476436265 790280073 897633501 564888807 797746023 709394147 739600246 725694264 940590637 373758766 550138160 399804577 973008715 284539083 864278332 66745987 925613300 433591377 776847289 435452648 851828286 356489940 943075070 334417681 447774142 278393470 550869709 792567274 924574132 416692383 969449659 460330311 534919915 696460169 736784583 818259378 960765584 87062873 752447788 918603617 967209185 879337005 965280262 787605411 844206978 861529238 966992578 659764795 856356998 855401451 928030920 74504797 721889755 876968389 937607413 948561130 963609060 438782397 521789280 375374283 419797454 579805716 742253059 167090250 735865853 568102385 851237090 913701971 961433796 561819249 761803400 372368213 469581007 173426931 931413824 49629275 411271525 414223801 482659353 102399084 143128238 592694486 942249328 233749655 632108941 891206203 896838102 885467525 890246732 165384418 870751454 758058893 940854617 194406219 915569134 535628076 542121685 586308823 762200309 420590325 945354127 279431693 623299965 29892744 624564208 133111013 472109499 294856055 709241782 457352943 595312678 105482646 519979551 931178764 985873076 776927137 935818766 870834609 920344696 277283180 821522163 337513901 407044977 820098538 851282907 809965275 973211968 525742480 693598406 246687973 311013748 56855953 171660439 791775678 973701724 973344212 990967762 52551536 356939141 957549288 965919118 909857885 977375650 382824406 453778078 289328249 573294056 380628161 399639205 481224003 503817524 713226247 966772747 628968418 801144612 599532538 917042533 231197995 691708284 421813821 957997735 725738891 801995696 866020000 919288062 876789429 965906633 501678202 856037665 965299628 990939170 646789029 908957521 547895714 843441776 241133114 733052005 159471981 304424396 415118348 727192601 754803886 966842798 16749368 165643680 813302773 825151975 432891325 907811504 884598070 950097305 193099787 205510422 193351375 964646718 677627699 686017468 403142765 870249949 412054501 957151178 428318265 858626914 226269764 504908730 461421788 726355537 532867228 634390642 902686010 987842558 649971527 675489914 536027156 578708661 993469620 994654892 248166021 767092410 220503424 785172852 413542096 812439204 672159378 759587471 599349960 659502886 248974814 547610859 196925634 725388366 761352290 991520925 732472459 787162763 874237841 888795329 40294177 977818485 336949808 354066430 523288344 915476296 434043265 550567140 153906594 561709864 528683736 722992435 12050775 909697500 510587212 633750575 7857772 226574827 200633969 225813111 537592689 878265948 350333322 615681525 519132372 843526342 366362735 582033563 106679274 430108144 693154 581786936 857659404 957577763 465120306 753932011 827965444 893305763 333842894 734429356 641319807 752592192 775414218 999422611 152597006 257399200 285885378 303696229 339549021 906608311 250737348 567757614 381611763 905423484 913058803 966245529 966606406 987939871 428952532 497683109 79370895 275557692 60348905 327372643 929552831 931284949 950484758 965283517 207104832 650719986 234436854 909497968 384191325 749770874 38909799 471799812 594910059 920944758 121538914 440628223 864175532 992755658 652167154 893572030 55136823 844837730 403237215 862410673 842525202 903200063 130774785 540782295 333388985 821952347 43518140 50629793 214864860 517538599 590071127 880277181 594052284 692167086 837811213 888848373 895587032 913662836 464914512 793453667 316502881 587393734 607696313 999175693 339435620 514248005 131398453 402325041 886597124 910774330 955660279 987814925 741578133 850055497 933893439 963468694 69715769 106536158 29936683 235997359 79378721 786600396 126452003 373691527 863751387 882096460 603897416 912683372 247196309 330812516 617109596 739014907 674897832 746965364 354847510 741398015 556161721 811673454 783101561 977489020 530994629 558209794 343445098 396247383 821287943 974685749 370349551 873095060 16111216 308325887 491251459 612023713 731753258 935947197 418297524 848091837 781345511 867350169 384948256 869465039 62328040 812004140 55381402 424199183 104908986 705344336 658342193 697301407 909734636 924475875 423156036 733973875 256486065 809047749 415409844 579063343 737003214 968840200 234501362 244569187 261104264 774975169 365806157 852190592 196303450 606679473 884318388 895447884 738160035 979176120 347022329 997738185 908189724 978600109 72814899 809752668 344107356 520845072 317647154 556605705 795227743 935272798 809476572 994856032 68052936 595734721 826472416 853791507 266212993 975056469 319718616 367738916 52513050 614602152 447866652 864394038 647582280 858339616 701438494 980707414 769813205 925790575 705103941 876936516 118798530 919157960 672730214 739180710 957707787 960012542 207586277 285240940 452809983 587904540 732016099 988324829 908162987 919379979 845896148 920469540 951122618 954842602 956495284 999232084 176613456 241404052 986200192 989129782 308820399 978605458 430655107 947862497 302169557 878907670 486424336 675277672 366686742 730444567 518783947 609384437 862794445 965881839 443809589 731658580 842957570 866025804 150059796 287591722 550778211 950228211 776608441 923575940 832841185 942233113 992239264 997655909 226579623 550359025 5006964 839700192 667260705 748168763 146462696 711509112 125786085 735965229 393637098 925051618 440568693 678586252 994698568 998329239 18285730 444804145 845243031 963059241 400573499 632282114 527445140 918811098 769632917 913998119 477571173 753014925 887991168 975785257 358630706 728453633 404746054 941146055 818957105 968666191 747583735 934957477 146045845 526622007 844112661 874776339 833230456 875790756 865385093 993539886 897876869 929900910 269106596 354083114 318801852 756060056 145544013 154681622 875149504 890405232 375317159 764474420 623600435 958891592 545347740 605990987 628964209 999834760 901515677 929375191 978530997 979907944 669545999 855277498 936393494 946901566 953229585 970481642 992391274 997302623 997414335 999139320 759117864 918346545 799232757 899042490 753131087 985536398 648025587 823922064 5149890 57948482 685338630 839603984 8324260 940092932 688483402 805413850 111280972 161161667 259148014 380861569 20204658 911765768 422526036 475127830 143578749 173910649 197343596 621067439 391115784 775211910 294355111 653317838 383455729 915597934 201981698 937091990 419545637 646250682 452690256 486881214 893983186 964086960 950530559 956241210 276717004 678245940 762840974 821743163 878058703 881263750 67459963 388199521 199499169 862114013 725175128 746787586 968950424 999289346 751580519 915020390 711007566 721441459 506806689 854027029 213804472 402478488 307383909 986577554 93948452 547229070 336642457 878592751 645333353 689353575 280033726 593425928 222958712 798846246 295580393 561901822 341481924 620953102 724065271 909428360 889777683 898511596 74999988 462964840 283573482 547142138 202322305 987205045 279514055 573334008 478827550 778614699 356639611 888889051 371699054 664136561 113577708 967556018 474639979 521747739 600212333 792739863 694459594 729371549 64639910 80514333 885218078 891061660 32250530 61590574 723542234 811980624 642303398 688384287 119154887 123591459 31950971 325387649 3072475 435083629 363103571 527706834 113783667 480790957 149150423 224386420 35060656 483602576 284995794 366729861 562470523 840313023 153808897 803200185 952205854 963763264 562480356 951264328 506266162 911393920 886480948 991581030 694245947 928880156 27620698 231334414 681570427 717769615 240290687 466119215 646765494 792522504 347391316 841424432 923818539 952870214 319570952 569091806 952801305 967424782 385547727 986689127 152985366 197536597 977923626 997198004 102833725 145988098 765887242 852856068 416438809 735166491 84906637 92075563 991780471 998358086 221286425 430128770 13668812 300497421 78281045 405784033 331798873 831788913 590527077 986115407 819516036 904481514 492552418 568841254 965095645 974073704 362459465 569322196 919037020 921100465 850929300 970916455 731822469 755449324 363466865 459558170 805526443 958471837 96401578 335650305 852900371 962345503 692080911 952869097 118358432 745565522 422899989 720092602 779826641 834508109 9803125 900834358 67811804 972636557 269338064 607069310 445529790 992481252 210618712 636855727 524460581 845744322 425707170 544297844 906449391 938046686 309130838 680604901 662201322 699451394 311709278 418423678 197239151 563717984 655163876 760391291 821163932 907043819 332967500 938795598 156112362 436343449 38943380 614320494 360473962 979814787 523947649 721106105 194066213 299326160 994005748 996663548 204180171 746885459 788175625 849368912 337170809 713192204 780596213 955813763 620544386 759878324 845552357 870804173 258685349 955590652 22683345 868153425 964325684 994753993 999383859 999806674 922032972 964956350 492529282 494840172 55272540 809779221 549401382 789028943 611626153 887957788 832568059 956437165 907199698 991755899 155420697 471605232 352359787 832298901 213091213 547033480 453578051 578626203 252688691 435714593 981060418 999124774 390919953 503780771 368420823 547648478 184044705 568672901 982168711 988712252 374603786 805810439 614089400 708690880 744166150 894381400 467995608 618838021 32704616 600039046 413615143 860878390 973909573 983228956 801168946 953596909 684417409 948643232 117591015 123224715 55757312 981573785 316802210 396019820 91271670 866569953 118259432 904248913 261339595 532410373 287761446 663863802 469853796 902058796 7028583 201142267 676830388 922211343 955883836 968455825 692247744 835623645 283532284 669698568 166457037 543035487 764828662 866689132 221935628 821430153 881545561 932190815 892843009 962274747 462602233 628442451 327096472 750351257 884235401 914857685 580884211 898032672 139857614 391158445 54076699 526576652 511497223 518586394 625880606 845648937 842780337 850288324 781053170 953187606 327540894 738319980 847667542 856077849 598037336 802897572 712900037 938278402 237418837 854289840 775700733 995206816 445353564 610940156 564536883 858981815 80000551 514041578 116162416 834728732 608403477 973443664 340153770 447003563 351380454 557106688 250671325 489702763 821044950 864749428 775472132 908351331 919770743 933189158 722168373 824785907 817839818 826972558 989691936 994045412 571505388 752464595 807597850 808219071 117798138 264010337 736790004 768979603 579357749 974891173 564406574 872099604 84314041 86812346 375234615 862709988 407390952 888424264 132036453 730113938 677025469 866997176 296935353 806145511 739093656 887943366 285501793 888675146 2493244 660784140 813847827 826131990 651651514 659241750 885915173 908498523 490060391 972713075 676683214 937511899 674663116 962782607 474760312 623157927 816114319 980638429 237764420 509927193 451351796 968499526 878948611 949228414 435890014 638942901 36417159 456525653 99923524 732424647 758918211 767409830 205107608 384017564 556762807 961783844 709203039 838930970 322205161 483482023 460334644 941428418 258054520 736845379 883335104 909079311 113806361 302630152 227254103 649931312 425090464 909262240 762556176 813181042 9699970 965277569 518605674 524307406 672993107 965123412 794922099 879458809 805012473 837170330 989267612 997747212 202130097 975293477 415460967 955459864 391852233 446999569 484080113 969977548 434045914 615667872 710805045 928312392 703828926 849829058 692269004 875777488 949704707 974730903 746200434 771169611 709845318 897396385 990102719 999405367 355187435 475993747 696871788 947710742 393842368 945218686 703247539 716660838 124461495 175132633 126680665 305580942 447915882 881821821 221012634 648526174 210028074 402957956 489975176 815054452 224001986 738916172 61389690 388339527 25678739 352220236 728364025 815843145 122959370 874751720 204383535 349126308 761538648 837858137 201376918 470866233 689979733 761149344 557021490 838800673 544472583 620123167 963613875 978527134 545404738 738880558 712589347 832819406 748712444 862062078 152792735 446618860 556331010 787113896 632381085 834510836 360027478 929806339 864458491 927757005 857948594 897480290 305109608 405399778 926436175 969034965 903129788 973964937 399195634 537210646 936542729 995433116 938323861 993256283 859087689 923130572 351851034 956758919 251398909 672137643 159058158 652111458 109668483 192633689 196140086 972286506 418261596 861362984 730678725 742606648 106946565 170121395 895335863 903870473 772119228 887571329 978634834 996117197 632471391 875743313 827966662 922055112 957472843 995693261 577794322 745208698 55355154 97375245 933942067 945775639 97416516 761665587 210635193 712940387 639008748 728443555 910866485 968968511 459270056 580218335 483470302 781099829 249091905 965180328 773085838 833759223 386847158 674483189 610770086 819529003 147033025 196923874 113919791 614240777 523056421 788255808 372438584 853822297 636086398 780297286 911967022 959031906 11133583 230951549 517384708 657487159 300619172 434047851 936674713 959309574 211348151 728467675 331569873 687694576 872052499 971814991 426554576 855057417 595241562 853706609 493368787 832125009 539274647 800251267 492125562 925625529 479092395 795876676 502549703 678455416 541512814 894897865 529008221 975194391 942309685 981386580 823011239 871817565 430960340 886344197 414128986 739039923 618877480 874105314 572288321 811983995 403741595 860097427 881526203 934640213 142738761 575974698 921369014 952459463 579042273 803710890 944525978 997094141 649765102 775279561 486253236 722559670 148463055 262072001 558600000 578957348 177635870 725054610 824310372 903417850 419541488 936479576 291749536 664413937 264004131 814382137 359624337 855630574 451235279 620624583 49841841 446450236 167103309 392347259 106932812 947965718 113397680 443489416 627908079 688565866 898129213 972831323 718626288 821338437 441739205 818012450 877606791 929093595 695187003 953056819 115802713 961131863 608316873 826974516 994650579 995740105 188044278 560606061 520739721 583822465 661757011 833797782 522564182 791290699 938276817 998864223 694664498 919777906 960178177 987423443 807520333 950711565 498126699 509837559 663596783 745075909 483365152 622569090 142922012 953642354 905563246 951105432 43214191 97017411 518189318 521906041 935662104 981280357 111617160 596523556 630655651 719085513 806729545 866894496 634434811 956209764 409407191 772814098 774615499 949885871 149645775 766089316 588348283 645539501 54004042 156167768 283157305 689857971 822884299 826296283 9127354 415620782 499225208 827731557 844141400 905323967 715736073 786659700 554389085 803037899 336399511 982737681 875925409 940604203 792095907 879240018 478799573 627070956 270133683 482711521 284323893 984107943 101729353 927528614 536209372 618763932 922004144 977211223 16449706 653569876 762452199 902719398 625695991 710896515 188595053 813700062 513695264 976939657 739560496 964279242 236950868 250328082 60175899 667408793 393073436 935149575 391002479 479101580 122110790 419237726 344204435 567290853 174047484 531731488 163742754 329701271 496388358 878793695 680677085 794591303 810316927 967269766 992139073 993770477 952299071 953114307 228124693 878814029 73529648 906815903 864270256 881899369 982799495 985341256 510746648 944026834 962654597 973877063 756782610 998604157 763039718 964925353 160007761 934001163 288352956 807765600 876202392 897481383 127396855 343875062 279665381 974835105 664061307 758564210 686594742 778114300 681923310 809839413 897373362 948405469 922451629 939212838 635388621 754633277 889264985 891742503 180766166 287636822 970404981 983411668 979681459 999753473 821208603 892960882 872058334 908487863 69172665 963210363 228873762 474676233 196907460 469056246 753568904 909862688 557303951 895049796 924415606 946633132 170961921 319309133 857586425 870622320 370168064 662533572 270365907 688051733 722318942 856760302 316947184 754865640 21533954 810476045 585865519 886341925 76039132 694836189 796705917 976493605 662698211 979880910 83521575 616744144 383057975 799899443 476049334 692288434 906320167 947242237 692479512 739756829 767579670 963008098 390643558 941060547 729947783 844578571 967572347 973926524 417248637 742553090 523955075 663893960 877529898 897836909 960977320 990305601 620226492 876272613 822053357 887791629 11291411 455199463 665861406 681756215 644936513 983545197 193770012 958370505 299309795 714325637 949443897 995433888 282012568 796279008 780980722 859248261 78455586 981666015 131817126 698822007 478435421 642683897 595591621 678439016 449962410 502681314 987939747 993945194 28979486 416578503 740632100 863474847 4136952 582677858 615525026 802933824 834023987 967144622 73736994 662956017 234703404 735423645 968344455 975755210 803710055 812857077 468877749 654819477 347480591 638868963 177901725 233145733 492059229 825592720 682471529 855124911 593632522 767525238 252434330 711593064 465968269 640119642 53227913 829083890 662265823 666771580 603542699 903706081 437732345 482441994 408290828 638725657 410995554 947961392 279096697 868174112 750970934 840113100 391964491 617184743 932959956 947362064 286242701 615841108 825739580 937321734 743248428 890733159 329527036 410585242 340874035 505878362 945501244 962679511 33032852 842898778 47138658 513978334 569134771 742922963 413141607 526347701 827721578 940630879 985995612 990487274 717021766 969670957 906309817 946776027 389059770 826167992 727580308 989357996 876366266 939865355 402616622 840518122 585136563 950437656 358316479 495776076 52817174 511045464 864793764 976877448 420484670 681086336 82082749 846293208 191737892 977370939 509052157 947132512 833341399 865664770 11149627 169751998 182276200 459063454 621873746 733341948 656003412 898522687 401029019 507749473 522292169 587275053 893616717 941271196 332762530 507422573 348243180 744868418 573288375 917956395 713287560 836513769 299666180 710031064 143152536 368981844 629892989 848220598 599096323 811003926 496735894 750717981 833719445 881570029 376170684 752193200 302534634 457568010 988538480 993853619 61603984 372261119 660562636 677615832 316620888 565737103 567122796 829549066 287172046 953963286 14056878 702328244 909323593 960556144 706613409 820356506 857658536 869527458 453151874 726557021 480881222 524913439 918733926 926708162 813336961 832650495 852349449 856063845 205446005 432770016 973088308 976263817 643151665 700715770 369719474 944391805 615681903 703081207 555041590 886952176 872565545 940167973 915597381 952039763 118923895 964401386 387285455 822634706 830228523 887111977 64085442 849097730 667370909 926482015 663748132 905667880 42128379 433413177 534012533 618546385 187869289 245375407 300508334 782517587 980700894 985985157 586562581 663065355 258449731 825222773 5769513 271882061 488099598 588026997 44329022 561605485 574103445 838309432 418283872 895303536 433940592 866276476 251804085 510807594 79160968 256762186 266152446 517980017 329135174 464076346 351836598 980787725 481892649 817821064 283806530 996283094 928798025 930101100 437524338 446916402 356093084 468666783 531334441 704125807 363391010 897391354 764884400 993162914 456002734 822877416 317834553 431775188 349738151 973960373 120336060 374852634 630085697 819458845 528815642 770839066 905175962 971872094 780251395 859688313 14879980 514363660 778059733 908406573 741211401 760124144 67104133 185451516 47990611 463857238 557098919 804897452 283757473 706802286 349637140 613171504 307250102 852341531 703628097 753604618 417964543 561640735 380328543 782385582 669948934 725242967 576528601 722888220 251595641 882079501 149643332 818830555 168906582 909549261 450036305 746932734 501675205 739108283 893600735 925651667 132211806 408306764 982607864 982947707 220897896 517084853 335291252 954321565 39805431 97278930 945646541 973058936 840175058 932115506 133930032 805115735 889456227 945611343 502523711 882556634 677098974 759042705 896223275 991977761 802488936 970767686 662816789 874733858 403850328 687150847 184801217 702241661 199442441 312549070 380750881 867949219 870150117 980849056 759274865 902689553 243424038 750564799 190085731 345771530 628123608 924500692 385745729 537937025 960163019 962252633 881659427 914598753 479570684 825198309 288425548 517454803 333739774 337266520 474461097 936209202 414156437 475691515 370835084 402188322 288271379 389623123 95321775 379542585 782769989 885025148 354933379 410843637 774663284 884194544 184344817 360374740 812481893 989681703 560565425 890357125 378681464 792985089 835301415 837249350 111311874 186170736 390090967 687192643 504555213 937255969 845143502 917534441 804937706 849693894 471756937 892330623 335130310 670556549 247534561 783708512 410367051 424657240 429182113 481872928 574966190 704391915 191819265 261734147 253046251 331951623 754458668 857105054 341474683 423803146 787096743 809163137 788641337 883331739 347712895 365403547 532527855 974627670 172009387 442964977 694037356 746899833 314067219 341176007 830895587 992606497 811646820 905390652 426799657 557115522 965890151 994654261 258595805 624149117 35569195 929184726 923777182 937901417 131014598 238633924 203199255 626796435 596592674 605809047 519188585 566909679 455701489 860790362 326222407 527437422 286997027 582041718 157890414 427524884 576227017 937688130 125161011 455368154 192823982 660464951 71773403 881771898 835025568 910503728 367590997 844604027 244216562 579054174 366625550 959610044 232152881 888317015 210704381 695555552 775630525 825044155 897951690 988608593 728298894 776531978 672647375 885142125 759697179 880952470 197185539 638625162 129078432 470626352 422628425 579388860 644634202 767747416 932803908 997703141 851115693 920495807 808438584 815430576 905533865 971818648 986470166 991017953 751802952 851876288 337140948 511722800 699680980 713239241 786179487 909942992 351202307 555179192 340000426 931832029 779074780 814965040 156704109 851416682 265035838 538028594 819619508 940620135 256409944 547968049 699613634 947083572 651040253 902070828 629650835 852754426 859529484 941224580 510628917 938816657 407501340 543444844 576416826 725326758 691650184 770416442 249016195 428807715 48142215 137574564 377023655 387500793 941237549 975676896 549784415 918077089 325194808 808629852 380197396 723195148 959620281 985024148 508762575 799230244 809105002 976121212 100083163 474249302 731564340 801256547 339498166 648676547 600726272 683167431 969143946 993160112 592728989 658825409 158305655 623112818 223924683 706577334 263889104 893387629 383521008 944267513 390682835 768195972 262242149 832078455 276090304 398517985 128414058 800948059 182447095 392581495 335690665 590750404 293383429 754953461 676780686 984906123 989228499 993202063 203345771 425116443 992620234 999204151 361103954 410439413 147537313 365481926 355805097 737249487 754892354 895506654 241514625 557989751 861595374 915743392 906255646 998945238 174618620 876526475 672974955 824503051 565061948 726729410 331821190 821692652 63325494 767377254 408328909 788507260 134821041 338199531 330126418 997332306 85516706 913194719 619045933 745762579 976074717 988768957 294035596 816741427 561826731 777696828 73443235 766387269 221692481 506775336 475387582 712195496 387011036 845086591 891784927 936119858 622211840 630321390 716136314 818498272 706609973 782698891 785450082 830204163 818977323 923178565 595307921 654534706 301860131 631528894 62680322 872416443 162480724 239742496 266725743 401688364 751447684 774645952 296335216 756874207 626282163 802550739 161406847 522432386 952259408 986047855 713019486 980518902 705619039 970191311 525353730 932489573 891018024 996153991 187267771 774889378 947329456 973574451 461732065 949281755 393775448 626358651 648955488 761586529 815019280 992999759 182184720 942014712 148197458 353244062 452327695 725643247 114635125 239850421 831827019 954208601 156776897 311337866 575898865 717151849 998674995 999154138 427126292 638412858 303442836 670055739 630204779 738313988 588106510 803642821 105277402 764493468 614922065 631146846 879502735 897865837 848579288 945593594 410000786 432886320 132349932 669954193 606451160 687491281 413173988 903120010 940187309 958033478 886992141 962893580 560430973 616454059 900776684 947010206 383137812 515587570 971979513 975958938 293102579 984290395 83040713 520648497 733508847 858028913 959450462 987609975 701067697 996414455 778761013 802220606 661228338 814676334 215642781 950407653 381744841 861577376 596757903 978766507 488753136 494346521 719710946 933655913 27056984 836776345 582980650 688941206 246005289 625950444 458411395 660685394 551132035 614099551 561241433 613082458 81423548 547217930 65739390 99779677 91577948 144338205 260372667 966933898 540966070 987652070 963738863 971622106 124364580 346580822 234203197 428708111 317924724 864708101 102740538 911517812 103345464 947005936 330054858 724541352 12707905 766660989 348226518 531802456 614576505 922119416 712178698 960500694 173085387 630868360 242294218 983170502 341491893 372406782 395992851 620124801 232750081 940183573 761040935 926815923 480489418 978288652 945338164 990729299 843954893 976991997 893356213 990417505 133263552 720078329 62572715 187901649 112249744 357164568 728038686 833010982 883090107 980586592 734109217 796496943 122140438 644087737 626226183 864413436 311838028 656222429 724289047 863633526 3884194 570600381 17659425 107411479 453504712 626321521 975662446 994836751 197236452 980066923 997468696 999692672 105267838 876180843 858260440 896671447 782089234 955532628 48570035 887756329 33641620 256572793 946958601 956116003 951776048 967911900 583342033 864244201 713536883 787175957 91046649 975872579 76353795 454473715 751824470 756448896 732807277 801810823 141987949 912772293 465325073 835876468 591816742 761810329 711386168 739210703 890927817 958434182 791143432 983602316 524090713 698481949 463988958 976021322 645744454 998927244 251817417 509203465 491553378 711215234 444255960 495009664 664804130 862849821 390889677 774732065 825177760 979533443 571444898 799417170 150665906 913585558 457590022 533367015 337885141 820974291 347769710 500743383 168094985 876325187 988065703 988497792 258781483 658627565 463307842 528144430 903775249 940058038 672097805 797706147 634877624 829417446 146616277 840814483 385315521 580472907 116767208 515914976 21048467 451639618 678787219 978366619 159190949 699796174 518482246 881461864 477358636 719984253 718295695 904717562 934549788 973463575 863025650 873621888 203608361 220235797 625546177 976944930 657303140 765778406 49026201 492758226 118979507 507467063 8357111 33893888 556788117 559626139 404884928 623412709 969151107 975501734 283173178 374777007 115177358 705847022 119648507 194721793 164221901 920430019 45998480 938645876 222611616 770498256 274153445 372778882 234075276 612937073 561193059 865004594 311965084 908390078 235737500 506081664 995162656 995563068 515750261 648293389 510121008 579906062 143621911 887165360 224563585 302783498 664259376 843314205 672421990 873960335 346127393 451920824 340378005 375221639 974673572 978087527 29891257 672984988 376933044 712235715 932203958 960858769 243056938 279736376 144558493 706122134 699278293 860735355 588878086 961940500 753038470 974898489 962969953 977997504 105705697 584268425 144429023 837317334 110158823 333531029 226193931 721826552 811702373 945919904 568954768 768894333 927967962 940398963 752625701 784997111 173224654 778584999 888932843 939147919 758054659 989512255 417841854 935890235 276436504 365756452 255509002 593059501 622534934 911269708 79101025 928679662 936734936 975139132 934288554 944400861 964108605 985071945 57223291 303231528 105539994 210880656 826822041 995191774 472551954 955254860 554102756 897150768 965667836 975339728 822541310 966938026 145338815 946140392 955695480 966017302 158750355 777117678 925228447 947503230 849357392 856065357 808420527 977425045 565592977 622116247 17941191 916462176 63426158 669989947 240288516 249264903 718462597 745900750 414787417 643918039 359730819 386446681 588291266 672028674 367178611 572351283 399624570 988547864 705729738 752110723 73454950 481580558 364736833 586921394 112206954 828826235 806967343 902688580 614723806 800191943 51396192 810402497 440024401 743955060 12705017 212851043 474207929 966769619 596593591 915299627 135462490 168280337 200844374 815643935 418160472 535058034 227084376 500146456 312374766 725419987 709082443 880820060 645606777 851456186 259996685 517508623 45799267 888018656 358936998 447535119 835355495 987413360 377871795 644427568 260174841 733321192 38696812 799615017 752287658 848446451 891357928 965389966 85772914 415241381 214574855 293820849 973433784 995805087 946218652 950384221 942617940 954590112 657926703 924119086 159067178 747787800 779285524 859356261 522470694 717291102 907069434 981771179 533034729 764901353 653785414 720163053 532243667 987723009 577556938 781754072 896673130 962979292 559899810 927416807 694586222 987908039 778546589 845459185 847216114 946188220 603779210 972020837 39771127 848372592 761708825 929656420 54128183 536996597 127801728 493971352 631891661 851614944 319882434 492743520 634911672 918208120 584405016 753430567 939108091 992807503 380120503 935785101 598380507 791263530 954589633 983299503 558712525 620285773 487731347 577852259 426129770 673176301 724487380 857092022 534066726 877399784 50576796 907987368 212621191 344184248 424596743 763174862 614402761 714817361 312464756 977384501 432301979 907483605 395311935 928896400 962242868 978012814 522185981 564396517 469042698 940155133 501226746 641023632 627674198 647093460 730352306 917042412 47016559 293466407 759383521 874291276 436261656 791458575 743492075 841318380 411059590 560530483 989595755 993901921 783358731 975822734 455173474 792456603 395127212 967963051 620910567 845987048 880360254 965844792 544313677 628703214 837454526 960258222 872697036 960379500 486377725 911789710 456826298 672669489 580504861 683432361 579112061 964945807 444162445 842990708 594120004 939686444 748542094 776275984 98660390 151101952 47790291 223035473 833633035 999613820 545155828 822744012 513106861 648425311 202118590 226114666 246786137 977212519 301607444 503662762 402069393 457468806 476816075 863078643 795968594 893735033 663139007 932483751 19508905 319814914 986418812 995674406 660106998 773636030 144558993 424269781 484708082 613356326 354552217 917588361 644542292 964590554 775928832 797798240 364991210 541665541 296649456 700023806 875506678 924814088 946970927 950459570 585841057 847616380 390180977 394306317 138664939 524432107 693563759 736604929 335197513 732572437 901499263 984884252 273747623 631021301 382601414 898815593 723442144 780453733 48608830 618287733 748655999 892301756 343636916 989246542 668605900 990190626 865910336 997980206 643001093 812088489 774702396 968149760 54620766 306856175 699184661 907504501 650777669 940287131 939181588 982817428 54021812 101913619 179413778 990220409 155978385 259342904 674398931 704652566 967780293 986384368 168021553 366187264 129228627 690017256 993860201 998672000 691854731 747455167 101382466 102862160 3108967 383322000 236128462 470721393 368916861 722428744 938162782 938849634 204349352 942470330 617408906 966379217 939327484 948137457 805925264 919125645 972326758 972440329 121001203 780698028 611500487 849880164 134229724 345695658 96451821 923052357 854312618 915621199 904376985 924320974 609754171 700202238 295869650 369501019 601658237 772715361 998990052 999151327 95872158 642469620 410808558 999175256 334548151 892228387 479706317 616710491 622270703 895119822 59446134 396550093 831298959 944189398 993425055 998722516 275122313 501958840 451616390 481287670 269077474 396397693 574285865 770416760 305002086 990191713 747615725 881003012 313725460 687833140 612377641 703234021 308522421 767352946 270292036 547054612 821661272 867060705 759426699 811534645 460577161 890666374 920129132 934174159 431393166 917922286 133044965 560098059 888068495 894897194 918698649 969513613 659180785 692069365 777736467 785296424 379344101 622058760 276821292 996775155 660086728 863114379 904911965 998835033 503015906 570110979 853440097 920675219 968784638 982519574 470037991 785863935 392990689 491226181 723453242 737934669 327293123 871025544 681993383 884642860 568825772 848291962 826006823 909304845 832673711 881931300 814511287 988044782 204828290 699860635 858458846 995843202 695231864 996048989 579647009 709220465 361716729 659073217 855601324 886850612 568105931 681382270 633355380 803434495 956416619 986155035 880464715 891065619 879221588 982425887 841107766 910225356 809162885 986265134 979024629 996044891 531498007 561585607 894046229 991061221 287260892 529064935 1710277 506282881 709403761 971814286 82242190 953720884 487213817 874858102 613351755 706669195 191534805 972604584 734856703 904169835 695629170 781807402 788239509 995892984 719474731 758670690 295067355 434575798 621566123 844853717 417364308 686377651 965314249 993881074 733694847 943886717 196089217 262667676 882705377 976038067 864718716 950037236 994641044 996993771 10327889 34024700 587899886 925807845 296309225 904051705 646841567 817609618 627383353 808505199 14216446 607805325 515021192 625102617 488270026 969671562 414623829 499754621 950324968 996965117 849809053 911626354 960593083 986385371 347829279 624660284 279761790 874446485 5265180 294393108 746160638 822499582 441658127 774915817 695237229 910996559 937821167 985007604 809267160 993023313 849006795 860135186 774497765 897442619 895492875 913935294 327828116 656749339 184103273 315869829 330148940 330371660 443103462 866901902 448404028 537334099 570958412 988173601 43646236 74463628 46968909 975171820 214344139 913932981 325098993 769703931 586815377 681587670 886940377 958605808 827435635 959342136 223236272 888034086 24939721 716627787 325477653 860989409 77047220 105912531 369576777 795228732 105962975 811657696 238361989 400122977 451352788 768705915 35124585 363359401 129967248 749895437 580573127 877519293 247403800 685752042 986548790 990822649 939906696 987798137 29721636 397201685 194511968 543570123 762651991 875033106 888718781 999413599 559324444 973394370 694248357 724342708 720757864 731605541 633462223 953468318 896581278 978227777 640035489 869215984 480409134 548110914 947116042 961652503 848976398 952142172 557219055 598676039 895703285 903554960 190336237 502321837 626091693 963544018 92436625 406877180 205961698 647961194 480655242 881852132 174895598 187808333 76135440 280205632 594468473 929201137 331714412 470893787 937808996 953185587 680813028 765673157 907955456 994689845 464623770 971866169 194738873 795156816 895227374 927764532 178058635 647675268 402989809 873955791 441049677 575612229 84116694 989248639 533683945 950286109 802342798 844793119 729985245 795886421 240059399 562889905 711483225 744604733 379167134 889547213 32374910 440635551 850273853 863231699 731681796 804328618 731500613 931761602 473921039 753298060 726449704 738448327 628390332 666964577 205487581 972024710 18353798 641891532 528396242 653269478 600089769 925518519 267542150 995419095 824019313 902886375 914584545 954402936 729016925 910621602 844028905 902612124 952682025 982107287 352942547 768632319 777996290 959406300 204579592 556558748 388844775 426622424 730798631 735118037 960499517 989523397 177766930 790716390 700797186 861524872 502369259 793714421 761946768 911197039 872643770 971328544 192056311 759270377 668976582 858246031 348528678 739984481 127946469 609355987 879007672 903232931 900282942 994280277 145903303 494878935 214943192 384777377 305601666 430518936 895936049 998169998 507284715 578393205 233180027 740474677 87819038 404102526 15104489 739075771 275318079 707529530 894376716 965612679 803803516 990888459 446383392 874672850 246208091 384087801 302350046 715259911 815910365 908833502 635642038 756578840 876646525 886215701 636672866 973401773 483933299 644797594 1869939 108843429 140525369 683776551 433873554 808881032 384322797 731725421 852955922 920807354 693437959 744919835 72194163 966836618 363764445 418674197 349589499 973975171 911704303 950483150 165244804 557252512 504301002 841221926 683303246 834773207 403949748 969073248 773169410 865653323 508382153 826296964 349228067 510511750 403082544 602194971 221617579 434033530 618984885 752586654 820959574 849885085 842889953 967559986 218073302 630869473 294731324 471534825 304492371 517010101 370461316 566534770 820670810 962690055 983125279 994293994 566454061 949917703 470077824 520049763 520507673 946015573 532203933 836554849 423206479 898615177 335245145 335552854 57226800 71635118 731940610 917737200 348236273 699258717 200291945 585511854 288150153 468073176 325671180 803440239 993589713 999901871 385158277 783889953 129020599 981878285 810685315 858250970 875698521 902502298 711080719 805851773 173209129 317912194 889416225 935390360 600683153 792458975 742393448 782423105 953901714 993627448 857946538 982359977 155633917 826805347 189331885 763143327 934014000 960281370 594048789 721126341 33901913 387163735 901450394 942277835 839775246 949423954 62745618 592213805 904852331 914625189 880280450 959440459 467117655 975007843 694498020 982382237 75609388 101479482 765021434 806135291 41041456 994786187 404839807 520460119 270735753 819955475 834229628 977425466 48902456 536959275 238864272 626427579 897480047 905736664 428287408 705008147 787953965 974443737 743131444 945246998 501092234 765621885 868303804 889883321 558914426 873138313 67455952 961155144 409607830 710026898 141813560 980737999 116462145 995949482 369832929 602539273 717592248 928485550 217228514 984969925 496322464 851609475 406424938 657180779 342287769 884347820 786457938 923736930 370588215 974631823 962460577 989916340 985463085 996258571 192357747 564687590 507454078 829344951 349620986 982463854 74267416 923436124 711359423 737561451 748699184 932316300 949990005 980991719 350208595 720853498 526637029 687848747 803979521 891893338 529411526 769609855 15767655 257937426 663270876 910817457 891363556 924197380 991525 553632786 238453140 641209090 83475578 126651286 655609371 658817122 329898795 659662856 108212936 930035973 364013356 842970734 490583097 776288677 630766056 973476019 355584875 782326848 861725210 891414659 12671901 586186835 489380411 911621301 61960515 311890814 421965560 767522438 381837956 948579645 601432662 855629309 529520647 602525184 574538206 972722110 532490442 885667107 930344078 953982748 445835230 628000135 674787607 748964385 344792613 622860718 230471319 284057050 721270483 935291428 645145979 831678394 492042641 519531857 640116922 775716347 269167051 822817645 55245675 229260762 877858936 914834175 166996413 498846282 116863582 666242689 134094986 902520584 730602296 826675255 96376677 503135327 217161678 419522634 380096892 920660329 89655429 226552486 328859789 503711830 613342420 695283188 948448805 990316276 356017554 834763274 385794590 970844060 366323442 593983530 855111857 946043780 289063329 373064844 147110774 976881962 469074536 827118724 95189616 952835949 205502124 418528049 262599820 455660531 324707853 903690427 249717746 511751477 652093911 653527229 192905020 328839639 232937458 391731458 872990675 929542115 665395865 774298779 743859858 929662184 626415444 942902997 265524131 466940430 702583133 817870882 242728448 438700592 711181840 720012061 904360599 985043453 436897190 695489750 514978878 784357625 800044363 918727948 949247755 998325041 386375186 972811306 117324466 884729645 759417499 981582944 523089823 601628850 363561846 745731342 98715284 684113464 796181637 925484133 138929088 689457568 829260833 929136929 505751984 684368774 325272589 458475997 733657529 747030254 981027729 996117577 896069822 950012540 141652122 327740649 212003616 425507930 636256680 720265255 256201077 333760396 200945010 998868987 527293088 601445001 916243573 970076780 373666956 582072042 519065588 756255201 529130852 548750918 739998721 973256125 148647693 249671810 867884176 911796944 641374559 926975248 614508651 692824734 782740679 957577730 219929035 379451896 492701756 918988218 523122941 917085514 269105347 763070759 753404030 834140074 652176197 677428773 694559328 912221017 539395627 881889501 408666907 741064848 167645707 705678044 387963087 831940175 453130141 934294127 781941816 857587191 152787070 310904776 428056283 661907240 958600948 992878811 296936859 599660215 229618812 513791050 779290471 788218589 162682768 692069430 995057168 998617745 810775068 975465925 631075348 756272210 152921481 746501527 466414672 708245491 424351967 528593841 864125216 996780665 802117503 853364262 130380766 508337971 887552911 949049901 411958861 437477315 86879214 632158014 76532407 731183697 454577371 926288876 378785152 423887318 146550123 214497169 738367684 745934430 931365683 946394871 802424065 879277650 939093004 947126659 299591632 966510892 824087209 886732611 186329347 481560218 375412104 770584417 895172153 945131584 878867482 896797165 664773826 765644930 249555321 554256917 203365915 737132433 755613276 935625380 2857452 79452640 202394120 593296057 218010635 856857541 279431530 596869350 719676534 849203696 959902723 971951501 221943098 385649224 70333891 415895732 798562114 995379845 821083473 959362159 493370144 760262293 130887649 831344254 554105171 561611360 834470452 952228971 77098895 221572321 370531859 843551915 862827610 983330488 869760250 912917641 22861502 935045454 155029213 420856452 474309977 996252179 927562104 973427143 460656671 471874950 750600636 977176197 382661325 533677135 990776663 994546415 355580145 861804322 385415747 789419504 941708531 963693786 752702532 951803962 310080634 649873548 211582253 657536183 474661862 843025271 56979651 716726042 834270652 874480886 871639784 945218615 777825856 940928871 838720738 974499934 749207413 940701467 451099682 523301898 411482651 484243696 908778761 909092521 197928678 883191321 38385483 318168224 579531472 963378490 706697049 896443305 59446478 769201783 341276822 823581146 642587275 833181166 379098480 527972008 29270447 78448036 403648222 920919642 544345096 803003253 970040870 994101354 261006204 785127511 406504327 424334211 929485735 944814874 845983076 910283658 434763629 846207423 947988723 994251252 846607289 892773461 859469281 861418609 852388251 921849091 173927539 200219524 385036013 687764832 838501615 843652472 802993192 816108048 662662778 698739164 374004163 472972397 972657843 998334100 667188016 854861991 773009203 856984483 144097723 415350675 826316029 885173286 840859656 891600389 162080616 926475969 398106804 845680684 260323265 588018998 871913050 964272415 951093213 969827746 569476762 880959630 496525580 550685974 431300039 553997251 583378080 970251155 81079080 591484839 283679271 780044396 58914333 441091604 853367617 949991473 45944041 150029933 190993568 931428672 857558948 934375616 871792928 965392537 403158900 944189891 455188675 934060919 670253484 908473446 779555474 885934839 623499519 643217560 23463980 800207930 104011515 258640993 161142489 232440129 888700659 906325403 138844951 763189741 830275198 955424356 834228516 909696818 751725148 973492931 884273662 949328696 215314091 798785988 129124587 614901610 853099572 902776747 183211471 345738516 639296534 860934631 546317731 797096216 499497345 881059395 550898923 861443360 248687681 942054900 30780548 326089376 194823956 718025209 372431437 938519103 101765091 542848598 927066860 951772367 308743498 401105770 587521852 955686584 90299920 227702507 356626175 697437315 916539763 969433168 456125727 481737604 687952360 973121896 435813127 878791953 386640215 962775890 384755580 929986278 318630844 705149288 764941747 804176988 142653767 145252136 640450063 966465079 909328047 930513083 624491335 904829093 636591899 651757492 114520837 480604417 481070373 842194117 264644661 806131784 547990695 923859634 642144370 923066004 22142378 789598472 89747482 511145496 403738258 408050397 90047195 124841127 303644553 964697671 32679111 887790129 31448647 408172627 541636720 979970922 226350168 264278232 179762725 563063543 11519317 850437190 945912467 986192767 843551827 884320786 748726028 831353103 420541167 469457831 216950623 270828844 138683022 488459511 155068717 333052114 165990171 608343603 630972884 667038265 263990371 380589852 609966646 855639909 799643836 966587202 544218701 867232075 231868739 919967923 829796196 948457132 864142323 984474955 356396022 411676382 350012385 741958324 978494132 998044248 583837620 597668364 378604572 409757864 266543679 318048750 608691831 932461014 234765535 515305519 821951552 995070131 485129428 770147801 685058849 737876769 284027581 744695493 320455467 827994411 342049797 712256029 787087865 863918544 623856466 883204610 462977033 849948220 715059895 866608655 153806348 836561883 946082925 953642326 25681943 624664675 992674285 999778230 614586526 867136453 180938378 364669804 620440879 828065948 354943234 789178364 196797930 743385993 118952532 674567269 127951221 565461426 135993779 159705063 858471772 915560709 313607612 395260816 195294638 391468625 757286614 937135807 545655797 890219425 789134131 903131021 486159817 705657754 672839142 910738624 374915710 435757806 760828754 897326374 676742287 945439759 395234328 975139824 220282576 872258603 708452021 948424984 838169202 908505403 919502697 958022795 913992578 970188212 805724067 946261449 773192036 988169987 769592507 957003819 922066305 922283158 594758809 752082314 486537643 987863714 806742342 911161366 700536040 919339076 556385425 889292719 721727923 733131945 414467798 646806988 636981190 828777813 385535663 521496185 675835642 935753521 466070764 970473349 888638596 988070125 540620726 708327181 908719358 973124037 128038071 324301059 230569343 275361192 426008888 979240894 366163771 508883749 261714253 646119425 755322221 863991070 900637017 958799326 662342619 787975516 182482838 349679124 914655616 983368678 413057610 640967437 380136816 633570910 13221780 965678883 915123389 954311613 304248935 695061999 588707747 947369160 390785984 741397380 12457758 444300803 833749804 937128652 952634808 971547879 968429104 991176838 194236195 315704735 111221552 317887980 767910725 886334276 619172070 690374241 463682581 828271512 599458427 877308750 694747774 997899530 465157292 603362969 291029251 772826339 706670339 926414891 402078127 785897748 698641334 796217243 497655015 707799904 199000200 700234015 302375563 992714441 911239534 931983613 209201503 720834068 713578148 737924057 835768790 945235686 694640670 830286971 304362365 497632436 975556111 994885298 146222557 385121631 753518640 892751765 748272839 979737198 583333543 866319503 955094194 985953736 910301041 974855165 388103050 861116034 839585275 983661123 988433694 990979325 437218645 638675841 870355623 977491217 770066076 991683655 389805337 871216684 655023838 670932245 573731876 740605561 78894778 414984696 929556082 943517751 976652925 983554139 431609856 455511359 444417685 826863010 319078673 406512687 621238810 923101103 122281928 399943454 210736481 511916285 248135333 979401108 270281253 661235402 615466203 708008086 197256829 439218444 261953668 929288320 876778512 893101362 246384637 370170698 205537927 541345609 575794194 830346174 87928015 520737507 832275393 996935924 728762041 891700537 381096869 634371725 176862353 651985767 616624399 939795959 442641545 819633413 980257281 992402525 707095563 970797351 175127061 379101855 708101337 925040388 828776873 999793463 450172649 665471165 313980442 713642540 495953103 650631295 168216833 936189016 310347032 958103048 745920085 851617539 982135226 989034330 123481365 179189378 389623915 999072322 95562882 728201487 942574026 996460330 72848543 629053146 905585109 934340623 415350586 680682135 114029233 166814526 716493725 717592726 800634842 891676406 940665768 989052871 134940863 577161484 182933204 341239221 924248752 984425993 552250128 620878662 896266279 999900434 460964555 511438033 142897401 494743880 942382041 992785967 54984108 931562351 110190403 288319715 160228342 597932554 653332010 694065947 522659707 565463740 701420361 747756206 695466556 756692784 994062184 996038586 136537643 320091655 585542304 697846215 620588202 900583472 676739749 683229773 96407016 489648144 397664604 536345750 771238049 956522071 995485046 997558908 143394911 352899355 893816266 963241954 909510283 943772930 257530471 960679167 149737874 642329331 95482039 443955232 234198571 272769941 459404977 866774139 197794735 704211614 271610825 481918899 395313481 674858950 902342497 927111988 71629217 676562671 199976662 905206595 919229995 926891549 468656890 726997238 886922500 994641133 217719767 932672675 596130013 663526772 633897109 669513020 558097621 832798980 790403720 992639560 347204280 529935677 101664399 445302243 599115155 898104040 43692654 728189973 344431151 558396909 215024258 890345341 411340458 678341841 400978186 805684718 29240893 310800409 825793133 941069632 444004895 937646611 760123568 900138642 873023175 991150068 29579035 698581082 702509312 878375891 478133295 578929695 840223626 899944379 209977730 212312283 510409430 928218264 633071951 657780231 327664854 503038522 162702090 543874554 910501916 988823194 521070147 773288223 358431683 859545163 154227723 431129515 866434673 927120136 457271155 911593220 423606004 484267530 814662641 933754712 29108413 509236853 950388650 969455002 696769396 999449000 215689636 345102604 59062989 515055696 141797052 612342109 250885222 852384974 22053952 191009976 149527460 157611698 745092328 942762464 376678418 820961065 18824268 522333027 204688250 698941312 929329444 975728216 39847433 250554051 386542925 845353489 1871288 170606251 245091407 551784347 507985439 940575486 326243725 816436289 632703554 949712038 738489492 927910371 30333952 213557808 869656351 883950889 139205855 188510697 644285174 901718205 257401625 925195030 655604586 885354725 205474168 913865231 27687324 755192595 248999491 482577827 357073801 692241731 751812320 918546674 466420345 553991649 71797165 126114533 481769245 666920520 169742631 552436391 637267783 668059525 702456529 985595937 822581078 954251476 573388735 632635321 394163155 670566605 73385661 203874974 337853503 802638127 853680348 915480003 647650825 929982116 334633437 742379342 362168690 455743766 86781386 874824001 662258887 725595644 516394392 569394084 265976666 335484368 123282292 639509264 493492636 556509013 640645873 826598758 768501904 961158862 447608315 890239451 446093444 469695400 119207222 839919689 668853969 992904806 270286302 743702665 934367021 983330276 589263184 965877148 258862434 613131077 533798051 755910337 260947137 647396588 352264094 514911112 417762528 894438276 848018797 965135574 695247216 814654493 953234596 957041977 699039717 777269672 838647288 940347994 160867105 789919830 490956158 821185520 803697648 842100817 236832930 603885058 66472820 480497673 11915311 317380175 975125697 978599403 955172297 975073103 513897942 756435062 691887794 751184102 400320203 782265889 971136326 972274133 108038666 146579845 744172658 915181650 656110013 880336463 479515197 915816522 867561100 979281013 958129382 961430831 717978532 921461647 255037574 814824888 592829289 987154744 370849977 689418074 761813270 779484387 494693950 623537973 580424643 696193130 17274025 872213961 792466293 894593528 451096271 970677060 264777174 458487650 272981104 274423151 70119815 798018859 560176858 790674164 74421382 787200188 490706686 872053353 851798651 939767398 926121118 998462267 767379581 880311230 715846642 977580284 895608902 987291210 505417618 935534500 462989128 766759527 49911455 516262607 121052755 909839243 969328934 993986348 299096762 975115501 436915300 680242371 875549185 937435662 380171696 440553476 834917244 862366562 773929315 993125585 24345388 917544301 931586303 967968824 269951588 380561041 954551560 987208291 183058587 463225975 877646337 892984828 399057874 684841187 625674485 766794512 447808541 738607368 942026978 960753235 253709185 583196461 12595753 871970201 582256359 747427353 460937862 660382575 199384690 441241489 108016189 826076575 338929544 699424382 437171546 524412798 214921348 478552205 432730163 598224995 38252212 348350043 745996866 908133506 973874679 979706460 499848271 661160043 991438501 995212886 400084163 795014731 598053767 628788706 616063798 952387903 978264965 999162836 265058329 342941400 120854516 932788161 363169467 863492873 271802081 710466374 445836064 657585520 967019996 996722546 661341085 803194453 876138205 982152543 862165526 930853758 905547751 916657718 239910555 754954677 949696975 980951913 118830568 132687905 364367839 509050121 659412693 819014942 49656999 614042921 618859230 752983359 555008327 970250743 103580429 752891662 586970796 816592413 158408003 263764714 780591644 790566593 181346239 818628047 304342927 655732831 642140515 771824787 290559250 964208549 154812108 455762131 323813648 654158887 287137472 532335249 703451590 935943503 312485771 657091490 832606359 919927094 358281511 439080224 662511731 910994785 533901619 952233435 858189058 869773498 639511527 784439078 835587350 903947274 39827180 741088798 235357843 660887890 311435951 901383824 780578531 853575659 236366954 345651539 133422840 213978889 635617604 876946697 324063297 640994643 137557796 668461279 137161489 284730081 514183151 892152750 594103249 968159935 787243673 793849035 789977501 954198416 768972346 985030720 619406010 766427153 279320868 807767163 115977418 402695258 303605779 436475935 999025239 999939223 138462658 389871147 594215544 862411550 953354272 978144044 976972458 989725591 188216374 483869071 1984889 618473750 643022650 757158545 648876165 665095343 989105180 989323510 882347445 999628810 196467768 231253283 251768025 947722056 335831425 415638976 728578670 910631915 396612632 483922354 352920700 836451304 610383360 917212254 36867314 712073353 352170233 544305403 548697769 946192208 526725964 892464826 781097670 913479345 447672225 567293335 961681575 993441594 865739901 991419337 405676437 824970964 179597879 510665718 601438635 614580477 375631577 518383487 147785171 530999242 193771122 780808951 292763481 929274136 245614536 452305969 148907464 867417427 678560444 691025181 751820812 761770347 923045130 926864478 943008420 987142021 389335636 540651124 151778112 392945798 959798474 966309155 695443001 968659736 325330215 349374258 664990108 696329264 556825549 988879026 169817818 603486016 437417163 863563789 950215542 961145890 147082473 496154279 527230356 592803592 330028753 635181676 306422273 346864642 830824935 915395262 102270731 898920524 195389518 889095451 294345241 869866997 171818582 949373090 897179052 963302878 978990183 980177002 702701046 918128949 458197817 861969183 814661433 986775623 119944091 609546790 540516200 980652309 898228651 994630680 762689842 857629173 774986690 795632202 148506891 955092338 356959307 700043432 648988350 926664562 306121533 568817704 246048497 676763060 321975501 622893595 650516575 722703447 685560844 968388857 866436161 923294539 783210502 901849732 914649339 986178399 240380353 274484982 948833425 965415300 439146696 745589902 323036891 940085954 974476951 997764220 622163562 951501157 822342496 930994820 848443169 922861800 895686894 985889256 100041509 292063549 531906906 982312661 659492562 742574167 169365838 430736495 86441619 917350916 336531156 691871049 419551967 781866939 398036612 621987432 648580096 903036844 621849135 695213336 361488596 971533412 835865603 927343551 197514033 206063525 883092824 944948098 196844545 214750028 928027245 936967853 87925318 389464701 918448508 973187780 352197892 768433985 586699311 880172717 346267188 727235390 151416835 992082835 441807790 969985367 131447841 718602663 435240372 646531117 355817941 999786387 635491313 769021977 597873991 983021173 776367516 915845119 969245932 978233809 210930248 360086904 619943267 957958346 813572387 975421146 411258716 735858085 416830869 945412514 25850298 936664584 768347532 801681554 830769720 901109150 423070284 736275654 539544316 820277557 4438842 298724837 105954862 586007192 327451936 599569021 439729587 697127475 492928995 951017164 628054748 895286219 383875428 454871148 124835198 934745661 121649049 582883208 189973230 299188588 827991716 891967230 900520606 903147331 579323511 762059663 908899409 937411236 929291291 986640638 400779365 423254268 250852520 834804548 339392700 811932680 681986309 770962559 355884945 695189373 807688099 987661661 430332288 668585202 998377026 998949771 697299738 861579640 811174018 844590226 134134636 548068303 721415515 844559930 431828072 647458201 586655741 828756946 2796381 983583793 401865899 901405012 275287738 861340507 582416806 874229070 943222552 992921128 743923503 859087366 673102348 777831781 916096288 927487287 676928534 973249176 141832622 980589167 643644686 652619754 572312072 954993604 662487571 673700894 875774065 953304265 651814855 724340103 723907051 988485633 314825538 425750457 438380526 845733146 732796446 849386294 457628826 611211898 552768739 932401415 153875030 267730756 462248827 625123951 590750746 712220086 930762783 946263543 204374902 992784691 608350856 864620313 474508706 571615622 169526950 507016711 920843461 953325924 967898959 973714207 334553525 854247316 704156265 985812663 558581105 917794549 948216867 968921069 694298938 867674725 22028662 835175008 162898001 255224263 394204219 492484143 729579385 841833668 747949204 823444587 854159555 988773875 222488966 928647134 411918415 525350399 207642999 530900095 286964227 707131482 414144855 886453850 140663820 309327178 467991270 988258110 503223004 916820942 737820869 760011583 251946065 623114343 825792071 901987780 109519816 630488411 191749210 420818290 255026064 656993023 176888956 266998082 25792327 662378981 736024917 825772812 311680425 585032109 697870007 833734495 53512099 957764162 422991724 771721019 521322726 753906389 15526446 74486489 460348222 614293159 692766369 806410873 787827458 795597390 337396922 989531461 591610292 829776633 668712940 813743311 366570816 867633105 924475711 992421866 890758231 981897680 446629797 764420287 262148787 839842289 357510948 683106494 878138307 960065534 678847385 946137476 629094886 982466278 308565029 383607773 106088261 220195348 516113044 594737119 296378228 564745962 466313092 681875222 566752113 990276269 816232123 959109570 513628630 733972093 238799566 603408354 81861659 342549865 840827434 957963612 820386161 856337120 258141420 468361721 261185395 265080596 191056021 195950110 72760003 460112202 780384861 914814512 441418412 900070445 960166025 968240322 930540607 978738616 379470618 857650132 531472615 776582556 775802883 837060468 423617165 768850721 85269385 694633507 554760393 820131563 465848495 867334098 61406460 592576653 487368303 762271008 92623437 640544501 800308443 961829543 504976698 991172402 50308515 990843227 856183916 945918777 794238688 877759759 537930323 958955817 743946616 948006777 725160893 927507949 80555746 503156569 801590950 988537654 401006641 795067328 532264867 595180811 240409885 620673188 395655650 541774709 333114664 791702672 460005753 752443257 531296732 544493994 632300792 916962061 801512710 940393407 978283957 985037563 122725898 926750675 167662005 601173783 401033105 996039561 970986961 989923286 744172854 995591947 817595404 873149817 947865214 997993652 149677330 213768217 643555455 743926129 774290459 788148654 820023812 881252339 428887406 528017861 316374412 927903589 307506918 777558371 889824611 962191771 555536918 873075576 601287871 650435941 547758307 956388392 231837454 554449549 289360253 543152915 69364136 768100410 845585261 953661276 275302953 441671197 859524907 920199189 131037454 941443698 215306632 605550532 7567611 848589122 40756734 122308891 996164995 999033835 736626558 806244145 409323615 543266367 297062210 901534996 462987843 713053635 469889596 728283575 987883793 997531275 429334116 705407506 118348335 863553567 345987798 817052222 882479045 910290545 929523655 959209129 692157224 915403087 752519040 890964638 691543747 927751296 506172317 671159464 571897436 673689546 600592200 771139042 816497255 871846696 468507061 494703318 395029986 685992613 403885935 457423416 431925546 596731569 235552933 823024157 92508777 999866390 2259481 400725985 329323408 729405329 995511559 997077391 918977719 985946274 708231890 853300371 133382329 726108361 950774024 980299631 620556546 977292673 538893915 838477880 65321021 190624739 680845905 957111155 297727486 364125848 575521627 955249664 905419746 925470741 621326974 626484738 994466506 997252005 934411737 994714804 174271183 675097233 805734424 903366392 243344787 619085745 235288362 834917595 957299623 960715134 45532602 230225185 894761703 966503713 566338121 804385798 900168068 958263732 93071980 475621792 947428076 963500391 245378704 322122270 12438760 668240890 258932057 621181084 236066244 744707592 122646714 845020582 839802804 889865058 686847382 698143183 706273228 938065493 772157283 879290429 247198939 775885429 325582238 724165305 484259306 811751232 509131294 962810927 305132180 560190874 775220129 875904706 25007151 321436138 774261893 895864565 783662224 824608652 24279013 530845425 388922630 607764046 239454563 247976937 248056308 585191338 351314628 672865119 305921957 429738132 896435993 911250112 557028896 939685637 372166773 929275570 44237546 529785285 159060162 949980368 300464624 910055387 308370277 313950127 720901633 756081288 608085270 618037881 48593021 694023519 268748739 568672023 587186500 972707922 890606236 931713543 902751062 968840994 496014412 755432799 97664045 553243538 310177677 428260837 19638830 134255808 931525973 963727538 423989782 478617139 918407320 993950700 76240869 297117075 588003898 850621673 181268099 185944204 178282591 361140940 754794256 756001432 277667607 498634043 288533707 477438312 209002085 302569544 238638254 896381129 932366918 973121878 974941072 988211818 435639636 993650366 780142720 869228900 468180915 602870117 9238314 828710700 946913046 956562724 693625674 735876705 605709425 781544836 334345775 638944609 29505247 167773085 230029525 605012128 95137113 172165023 353940378 466827989 710631998 953441346 764955266 789469706 826289993 878720315 269037706 668739277 687857405 903067716 10752112 727637743 538920571 718049070 600161758 805472703 798491188 927852990 642756382 933344051 730195722 803249776 405374596 720141834 190285767 511422302 939637612 993627397 486729457 894842878 733669099 794284321 340384169 563156576 604029642 836974113 864691492 912452097 14030976 655432087 714211726 876946124 926694608 985525866 279183240 954638458 962071009 983387858 132236089 313014465 112757716 380524111 617315978 665307235 804386821 909739333 845492638 881425932 953898500 982523378 528839027 832818417 909242540 930718792 601650963 943149492 526677653 705533556 237190845 865324473 876115952 986497387 669141130 987235270 490206019 728521575 303109455 646318386 743763745 978725830 161132952 507495398 802888360 844674675 411388550 443905421 969095797 973338151 816043048 857884572 936729490 973015046 582541349 692438500 440395759 894609604 700069319 934106012 778873483 922914860 45516086 301517791 986428796 996461041 874963668 996038674 16583249 312860898 362454857 893199510 25058693 207492417 976739239 978987886 782972147 914600138 143758251 514337219 45846741 369384844 194029682 723285551 261308048 792734928 196116018 361906346 281551397 902478521 673421020 943267183 850372733 939948508 25023160 195766953 761923111 987790066 156760008 964051877 4497025 784406969 462343762 910838127 666903779 797393911 838012087 967530832 466415733 537415215 538945330 658664840 198691800 232877972 857316714 949866349 214495433 599957203 464592702 633841178 883061722 891395616 102384242 988318835 823949151 902734780 619831294 692684635 3924985 474987030 339155392 741371339 209440028 325689154 555336309 565917156 290529743 829542221 367289635 495250863 529434787 560235764 914288470 993968914 721745994 969141477 570431533 728723178 879937720 909995256 50210264 583698628 817530918 986681157 22872337 845907960 267555785 456798394 2808673 381931531 462610928 889346077 361014906 858367717 96294341 106273705 415675824 558485834 687859821 812985777 401355385 488907357 58554405 917633876 36494780 867153138 120249822 252077061 82128247 579897827 123038495 281484614 284690698 441216253 843105144 951833091 450183182 716632662 28233655 926064009 491645482 856978150 737544660 936926268 405971132 981992693 804020296 920908170 721931593 769295178 927956449 960649377 823063106 824918776 662635513 914331931 920042749 935058271 37959739 94847810 907837665 935459365 456250627 537444054 521473158 586574432 808583624 915831845 842346987 846969126 155338169 477461817 23679288 212498243 958885395 977759235 85143338 291431940 468004807 667227283 924774912 941983713 674476953 708650047 869341115 898827685 406052423 991365417 50221677 581834784 232423179 673473500 618481651 702658941 499285405 726453309 987110274 989291130 515483983 591731964 289304080 938335538 75662325 925699218 894123140 900932842 189455220 768219872 775502014 961136377 277214033 875443470 851828103 884098737 558882336 857518914 205199820 656073691 541122955 670395610 809210859 903811742 371631210 546609185 647972843 991636165 19938918 661991646 914485589 942376144 861399821 983055062 502475102 659107049 888671268 889320932 209741191 387636371 940576411 964500507 611360103 801967465 662365009 927213764 42671884 265489523 404375173 650763249 472257648 631541794 408117678 820293412 227878279 834036961 290765771 322888737 387535146 415402380 198294940 489853120 664770529 724098332 45100248 462666556 531146280 757341249 155898137 383814032 274895706 779332252 606131323 670724267 888031661 970463689 561570292 851949133 622853651 757769660 202541906 311666991 488254248 783714048 861853862 993658712 413022173 706729116 322671617 961575909 247870676 406911539 614620957 815663538 298820774 486156533 898446672 995437897 876307243 994778206 520249136 651050391 267299705 723010112 524596447 726197899 8306419 819408972 603665391 871949892 69480261 624026314 286844729 294077072 791953765 814409856 435149134 800644392 834013564 953170726 467445153 600880185 705636406 892969685 696421012 850388422 524705736 814371398 863793186 898612535 892548035 987896832 165248713 936619572 467143863 606952640 537636170 803998831 177088697 858961464 299596176 855591581 530087367 895914770 185713495 237445936 310395268 391465584 438536598 749961073 306493544 450546466 315562544 891078696 952864544 953601461 913954041 970870449 797654227 976030767 224065834 316956050 274487786 704832677 128359953 934744371 338759924 998732410 596778447 661814649 696370482 751696870 972188180 998462485 8241007 319244503 486613166 833459294 694357743 914755968 845804297 996771057 28389914 34831748 339896702 714442712 892084275 975129794 347775203 389542832 26509361 270267383 990255560 992274575 3134432 242447465 808839354 820030903 292187649 824394480 365156811 429645954 821028166 879440729 895377605 936448621 543755250 756130059 639714925 888968333 407459042 501319897 157945624 682080393 469529996 943690498 580852906 789931070 369269728 900559807 530071492 828148283 829358657 835456748 193675282 636463030 110551785 701148012 33923483 544421379 714167098 752216569 875153220 904579354 480632395 733855137 230113894 966529119 818345452 990275406 944098079 954044762 178513617 894464737 779578636 902115113 574881790 606931002 419855427 924587101 505427674 858825922 306531414 569770705 60231601 833293311 156655236 360057388 369154842 967642726 537449747 582433473 214590151 304718009 996097811 996396405 838967224 992028797 808985922 868595236 445898659 643487252 39373334 264728922 170911811 998403086 240154222 863349339 684144674 880659722 219981023 458245764 628910527 853509630 458246461 936905010 765152402 843181169 680399724 684653907 337868483 427015493 505862407 575194682 797547363 877912665 949631322 966357558 984533503 995894098 819877976 994093035 628511493 763013328 774801537 886315621 612947358 707435658 476345302 715592774 974747058 988573608 613842822 801932840 992475962 993723354 246675574 496060249 240368257 278107807 519191080 877628992 207419667 264004032 147392548 878153610 52300700 681086291 447904215 727902150 829347754 924285997 349898052 600574105 140776601 759379097 965263673 990697102 211807094 537453675 885753315 981506670 792561535 806625393 571226892 936534056 525022965 928706613 986443054 990823221 982708585 999338307 606193230 758286870 480572467 950660128 999203964 999266581 44324119 274017369 456964670 498647420 918300337 944090924 133236507 992828274 652758540 930887837 60263807 821597088 436925972 772756447 205714924 688943185 408109759 634070947 32759330 749810520 298148856 973939694 376429360 763926575 684584442 929999661 622997101 823537013 257742938 676437590 729945595 785161450 413496864 553430239 9595463 17941995 963067708 990420938 323140154 954572521 117477903 281615172 926550706 929907748 15213942 772399300 951516068 995430851 629641611 688028808 437170675 953896667 543797197 843711385 817901634 972840609 971355006 981915913 991135016 994682750 30146178 607209097 456653326 847004200 963686500 996776859 642678316 966067311 557193800 747178261 690829377 717617677 561497782 947038468 800833283 862992464 302627445 855097846 157367755 524816847 399587402 910964412 898565576 994178908 862463098 954812505 627258361 686905855 459969790 923044106 449360791 794409770 266848020 718790096 66770905 287892398 724672617 779988711 536377308 708607117 267104382 590063177 3352763 4005105 340779772 351323821 828795578 988450488 924676552 962050833 832516902 975868671 866405071 916141579 372715694 961330076 282926306 527106996 762763872 960124078 308409540 361952174 156325408 179936353 404994404 818080232 332100057 896862633 557012411 932069186 667503862 759106746 433600649 837399847 816277271 863973225 170923127 620697822 357694974 359287923 781112904 986508848 882579818 885279869 731476042 911401873 192162816 551118300 867071382 982282165 892690270 932748847 8530830 811093951 364490065 662284742 82335870 566267881 716760823 771575249 489251706 818722886 106631089 908142359 444687059 821455215 734470727 763885896 552584189 839306482 514109040 844235460 262124971 398340345 9541689 610454284 823849431 886873226 775908947 842526570 950665635 977025197 887348615 895038612 421748248 973513031 967821681 987015357 31930927 140239389 375291567 829717429 481550129 872735827 975637968 981680599 896527382 898518369 127886781 833172748 710272547 992837230 771955430 799364415 520497419 915449602 159531987 759309360 543994082 798491232 627070570 914053167 495071486 886285180 149040079 260794729 74285625 771335912 264286758 918331823 98833030 506323689 48068547 96878479 376325776 611542585 756160520 758294961 75995947 769973266 562248716 843371714 46868528 787675229 64551509 674129284 429525714 748908227 242158978 472939648 888889908 935279623 514597185 938013845 444260013 890517529 44217371 250627194 560315231 572629223 535387011 703640781 21662956 314979668 761419898 948686728 676766087 892752576 470594005 707085841 495033744 944599279 313452960 691990433 653185829 702788874 540993547 720370830 539763973 548883569 528122900 864579301 640629752 875326008 255099529 494679804 570448131 652382469 752270777 997913898 71420157 307106881 192349893 305062181 63107716 479831819 28915107 976678170 362113143 879673200 316356749 864499436 201272388 851997534 883804453 892069620 490070647 762814422 691273776 839883996 426334598 947013339 591129383 760557769 133360187 295329860 962434226 984402899 753598764 799077713 497592073 674903650 161887968 236165598 862396482 980295867 375219572 462318416 143210740 408913382 508483667 904956214 685693454 930171578 949602433 957766602 400497576 887503215 726061815 847639558 758078187 978303291 129400022 656006503 105033617 216190232 709798585 942342704 94152115 514343337 356717809 696250063 135430479 270172148 957611308 985934878 981828014 984636210 483228526 983483075 905090738 984151916 688247256 946046070 329695636 503213887 350882173 411263018 398610644 953643331 155313732 333956431 290093733 862058523 751737408 839581858 34459409 303615562 836393213 900867457 417300014 778039436 269379401 479587318 101033044 961471441 457727343 555365334 730951923 731336185 221788599 682573536 383670217 794861655 247990975 823653672 266475960 447460596 957875601 989839334 10248153 211263385 815748286 936780716 977161062 990190970 426540496 962535026 232565503 700174753 611310712 714603073 334688960 456051780 599688173 612261275 661915704 700085148 218112177 929786942 455160068 769327430 345337263 908674114 609353859 763167776 290742009 366102367 603979006 614715669 850064235 949235849 796654273 925264746 727321680 910345132 919932002 989192587 785965658 886084583 658308997 731807021 549349842 914796133 825616852 893238121 727183631 780397731 950489052 970303635 653378346 997443270 690335481 861682723 769543356 844027690 290393335 893966377 801536353 813062468 231845841 679315184 856891543 902569083 863659490 961711150 12755394 306551002 32053751 131506220 193086239 648815424 924883931 950451380 656620772 679026469 575457281 875406588 863273234 921836259 993512542 994686992 412956411 669388354 495869909 550125837 488855560 907164978 427185905 435234169 874028199 887440368 655699695 964327835 470448444 796974064 490172865 661301919 391675799 591251944 630604805 899024858 633120682 891849890 372900221 761503480 306917346 462174328 923125716 969456612 697687946 963644938 149358493 624486270 317433957 511773720 159232515 277451478 405713666 817418746 92548051 813720537 665393309 878989095 786074268 822643293 975887973 992130224 128393573 968186739 567894503 689207022 555948867 899993468 862311108 998690811 122459538 694739650 518114753 529994256 494477491 866315047 368208489 597881454 601040608 980752705 598999379 974340161 74901920 935731851 288031350 826143053 684154765 927786615 368903794 550561265 486889086 954639832 898324688 930783054 803558608 980767533 994710814 996339143 188418108 692906130 920108869 976853874 994308215 998622503 370252530 939205469 832912173 946703193 309443348 422706133 249255569 581304435 34288618 820310560 464075272 715784837 575959687 938564969 846890250 904825141 426578637 663106873 472346057 952802941 926230111 954359636 711881740 800036724 61696221 100886828 921665781 985687536 177995359 727456869 341194735 571466382 527493954 579450971 350259880 705776345 280891651 432764300 77975812 329609981 465595849 881223503 736948408 875227753 56624016 925336940 762728092 823723393 627215615 660295530 99418526 516071487 653171725 899193425 867958421 876103454 863965385 906338831 401752512 675350173 662871390 765711430 552333020 579777877 323264245 768411967 201176528 973621045 75744860 399539001 114837346 896377221 443322302 537764558 778768446 988306475 40411442 300825085 927038269 976402213 143597353 856956251 320812118 785455752 44386905 584341228 849819216 887407765 746480878 800680284 507637033 857870042 81337909 929203159 6630132 309779430 803884489 960778298 124084551 142233617 981461424 982036316 621293868 842815844 575563456 974634957 12748618 128675264 128540785 373932749 748660937 916978983 420924913 857347856 568948704 804507705 192622279 551155159 976276777 990334879 908104217 926205196 625002807 665540858 116287149 509330181 89682903 359650527 105689768 303388466 645511129 814517610 26260488 306563963 453706676 498133326 588058602 591452269 196523383 669461258 830220065 980407785 883860051 952861375 904816888 998802143 419788829 735546601 136955942 752278264 728696970 736370810 272127521 651850275 894938563 918258587 477561654 892146212 461926612 798522516 661059261 747837939 310030890 809576549 846741284 990785201 682281062 722316132 755491752 890880128 973718693 996600437 717052517 799898161 195455563 671294810 842646673 866184714 665588433 760927529 79250300 531478126 760078543 938474892 879092219 947819319 723913705 826806797 467254014 821241573 376035476 761747635 747851394 885323713 995170111 997741529 22468741 486169351 664192123 900004246 737476274 922034946 388329014 470514142 746225287 964092466 488643230 978575124 830029218 919640852 236762286 396106974 354584067 726287242 713897374 774575891 431721919 610798798 35267373 452735282 130485409 519586203 194310612 450059510 462028449 817574549 75794494 513891962 211496530 882613815 469397730 721859006 987294848 988788847 560452578 678849816 650000783 792477727 267693571 328044958 412703999 943655880 184823168 657964584 877393345 956540396 105884475 679195115 745313471 798897156 182680167 574792882 928997903 984262891 289039449 858631155 878200947 904217179 37345458 685937778 402533505 744263938 614774287 943197181 156714802 248675885 188527402 667335935 746014446 861816836 332874169 962379958 400261168 997176135 921696234 957531101 56199569 306426647 197236217 458321111 413545372 613763617 885657044 933992552 449366994 994051673 399038164 743549128 464784822 782001339 208310078 879938109 196015138 728480363 908446399 963988785 20218166 317670424 572635551 618818541 913169430 916633434 398718744 966020601 695687002 859984566 910291146 935899808 895790495 928711258 696505780 827130874 933673713 943511636 523445771 980394621 660226079 897421536 893069497 991006247 560409292 775637312 502566177 782151173 518633730 630696410 714536600 791741358 369307499 777233897 248062180 949031103 666525738 738898507 597836948 779685157 435961829 755008227 863609798 954942648 470617046 843453632 149546447 942307188 578712527 791992143 528268583 834341365 321352983 674597028 63526403 286204653 882063192 984181193 576547485 943740691 850290447 939574671 155672579 755099439 131828936 927356750 491195940 706592898 219267403 381806298 350591660 376600302 683711956 919639460 711801716 797376932 278194619 366375219 979147790 986485969 301267175 605546468 753593925 887231902 275741835 286976645 306714348 805112074 736258264 811649530 927600059 973772634 162307868 855568256 721813107 835964405 423661862 750676728 177305969 729980166 184044908 208899264 276947739 855553959 951086796 958563188 710115219 747356921 825949537 882012848 941549094 951839827 709278682 816298614 929349571 952189176 330447193 984461684 279138365 855023118 587071620 620770175 837047368 977030549 354955134 851837631 951790126 980671279 335285287 944658822 409953771 769531549 985332513 985411820 491689229 678817309 178483143 486154156 205202846 549114184 771922209 794048925 282527091 997087943 33273866 530894944 870304146 985218473 711407281 910666714 460423950 761099824 957130973 981947777 459648571 922670183 43322669 956778186 22342349 151811670 554217395 820634596 273748486 790038968 48269132 521194938 211017126 237738168 706653862 711673120 638387642 997950040 731479883 852973609 454201232 971799504 195356274 252039110 315470435 761288902 393308720 981545908 198489929 815256880 503031341 700996792 638056381 744204536 812439146 959835348 128018149 737348362 32110286 487490675 783032706 789956340 989083543 992434402 275320720 431861791 217694149 235006955 468620911 745397687 179248683 273480915 535380862 809171986 878854714 936623202 191943029 767728490 148042848 731581861 159760842 854428454 816686817 996638237 547112248 810793161 618789866 753541856 478294264 887658294 64227480 947355838 243960660 992969475 284252189 344125686 520874674 985557858 433696734 675495117 254031138 934154943 292515361 837246849 874856023 953524366 142368622 573725353 451474232 932670044 37877479 496947202 780610795 944790520 512013611 550383556 696616288 783932379 511679579 976102936 497720001 732304738 475576562 554512865 187036818 200702269 320124497 775672137 941645553 953647069 650766848 663300688 279234606 418079245 519248455 567855721 418078180 513847668 440254675 517188493 233126118 611884045 748567663 751246156 554935014 647811445 729217554 962583626 638940736 708962693 546560080 910750509 689282936 959123515 521317924 972215111 589757202 672996640 912530683 913376246 60655174 794316832 802438933 843446202 853857344 958954014 674656551 825013436 217605592 881191740 572010226 689223994 58157670 795020698 782493455 874510423 889906566 960811758 747869651 957215863 18071498 604008666 355102093 551989605 818475688 831894996 637682406 845246392 248257915 285527636 561057083 977884342 593462371 974502007 867928745 877774148 73833064 89992628 839927270 941888738 992122941 993339184 350709426 694280605 409976280 852000777 102873188 554815698 487818527 805816833 880985912 886669381 760826560 982519879 99241618 101272806 886188369 904357635 618719983 690010491 564925592 804006834 226434387 646431929 975148293 997429798 382233958 863472466 989865054 990635623 104815684 390972291 963083492 996381653 21966984 445338544 115719484 421450083 206446628 616100626 922014922 988039975 796626832 963437827 19188188 491805793 46654394 277930388 116370914 160513488 253111027 344014991 755822023 897957191 440539568 883211578 460154339 786298359 492429109 594040328 54760392 806864306 31053658 787275339 648969141 844952411 386284436 715661279 997396478 999760126 948194477 983910284 118115469 498199420 203411787 312597794 171734911 419723207 589609974 617920955 666923664 747679334 44674477 876782150 899043648 994428748 340483069 975332225 224261457 251066598 242959840 934085262 201479143 770491133 16847029 141835951 696094989 894688420 883175788 910714439 879298733 899641010 762773860 934452702 318151284 620387135 884479704 946530333 94185929 939052087 122316955 231977691 759453221 901772012 206150988 233107682 727400330 790231282 925949236 961149649 772918196 970293976 512379229 654499501 20318539 962541049 457531306 512289615 46440502 693645385 991706508 992424803 6631614 254414479 821105096 872544867 557530124 987070260 239815977 818123709 262971562 504235423 143954902 685526887 939768796 944278626 418001255 575799145 174577580 982890244 399917993 936135895 509457260 733450608 797000411 948555819 708476327 856024046 92280391 739971905 178016447 509293216 314601233 646213121 936714611 975751329 188578135 353746917 278454938 668579342 786800445 872421114 981386364 996581370 359838468 762470190 429549529 595402100 69841254 633758810 199398449 236071320 728657191 994623437 631280510 892345412 820131993 891168093 194537898 369906825 381778078 597144164 735277223 847587857 325965951 499609154 325141241 825632205 453817052 598395465 296564159 661184167 365864938 710512955 308335406 673692431 895546142 953046590 170266751 800969135 189133206 991455745 728258627 809394989 133330601 187454057 850658263 956221952 736967093 830228380 418036382 913125385 177433403 366560793 743275204 866793282 182904177 534984432 726609570 828397309 171739650 854917990 249731003 967047814 248185868 941148296 968464398 991915413 360200485 729068560 394486561 568378296 574979429 989055762 669750428 930548365 228687950 982730795 264799232 307736205 889500545 939808881 531194018 691979475 551859720 978798134 971700447 977412234 99451159 191808556 767046884 994491028 517067997 521903614 890127554 924396190 455724197 845506074 963585146 981788484 841438106 895178086 511311991 616505682 937395402 989015112 53156075 760570819 556174707 732421641 717526694 942090988 975333799 990066361 238748071 349195438 986699753 997429686 692968575 888212661 338890959 559793286 842994584 954814553 251786736 361873942 812216738 950803643 321304929 372905091 355038525 451197198 432297497 458060756 794719811 835991989 639041670 780630424 333726509 821496696 476376798 792109288 847762486 897241541 563363347 686935238 608078994 622675963 970309390 982186636 856334447 905713631 244324315 605803919 536145792 606247584 668951139 893900992 382531227 461479878 843316132 887334397 904436841 967156263 188932223 768680162 794045487 920295884 31585357 793989955 727567266 860883180 160585239 189928133 531014860 670584215 454636082 907693964 188998357 198549570 268210553 506144907 491961623 579114002 35246666 371058908 405902867 773083048 826842232 938910759 312646302 485678914 839358279 899739447 932970888 954650681 931062283 986185868 588004238 841801196 656466950 814622917 461110865 611699459 562003418 721372060 362066561 589971775 354975761 657111156 653039792 744233925 49329394 959737904 482191172 575562610 332278956 938365569 593805730 767578353 443188448 655682084 76294337 990490057 258637906 632046536 471716876 943893840 817313951 849991598 404869578 952504802 469232862 748007186 141635362 791187782 751503209 931072571 625625869 891498863 414130497 957436594 851052333 884800419 631539922 784404111 366484780 892516588 836059543 883684531 142231151 206472121 13592493 298480580 599492416 822781260 271638261 476062368 902911077 945247556 589609989 762399201 349796258 833060949 876832903 985599960 164890972 452438725 482647939 950899596 374497883 778632342 165549808 870963779 946425671 969560309 95185409 522445377 275593828 492248754 537154016 914731872 159364867 839904198 722779658 913703543 914599494 971144642 20126429 561237826 666380607 952348466 371448711 693704156 393526961 754042227 232941157 238111946 160349323 187458666 465688560 558601663 555400252 786690210 861377945 920355577 234187400 253984739 637047262 909108606 284110688 498097368 372340555 792339964 786969537 807955613 275354369 417565031 998726712 998787323 576216953 922276612 482356750 642943575 113173872 841839539 734831242 935267633 416585210 517884778 605784993 974729794 319678490 890281835 267227474 622631518 993015761 993393775 801590583 836100997 604787934 750037977 390098322 649860738 448625790 901787857 97123889 98020970 519876489 720858249 378787023 450087525 195880122 719214500 348724469 742168345 571567708 712768957 679601918 910330882 161640559 413570104 18272347 170400684 794505824 838081156 869828601 899065241 156799987 209872340 508547514 540575193 873029871 937692573 120835555 346358172 843319966 981174664 5028201 508180417 824592488 893470090 775816862 977961374 456634160 963741732 627236434 634947471 469712782 894697315 361266872 819723783 872252503 993333142 221257108 515461077 703818919 823413546 63740901 344926185 452260983 723627345 804111290 959543791 670865321 908673690 299241140 701389792 459879118 514525810 129507982 475793923 969239068 989556298 95845074 185896483 641740148 998508552 987510568 993568650 743036450 925618466 54431105 934643738 154292668 815015003 492208924 833633172 253419968 371362504 44967795 144110776 210845591 727813497 135988237 575732912 149566899 182093042 177236151 986363311 613203818 931399992 351362249 643654552 562226754 858909844 12930973 144353331 903570571 927013571 134422468 690215600 75499011 173355879 905753823 975829249 902187591 966277681 745496909 874914402 554469376 887517527 143873074 898827835 147242620 384893472 930562328 936903576 944484806 953449793 675878507 811072447 618275211 833469324 892303878 898862854 492137594 676854967 472887111 989262449 304761287 313637902 88120788 633181726 839609194 839663479 17751821 232069555 198753311 201732238 50062807 112890689 428643144 997034104 508066011 814416028 356128111 829804895 281862389 416840924 823172369 948761797 21373564 402675034 483322331 848414965 548306303 861307630 357029909 569758952 3650295 689764781 243931133 464810343 57074973 117081419 706446575 963578358 309493763 620956066 621484932 721323177 16299763 556878966 754562463 777366734 390717473 706553929 112647294 928476312 380262234 714968633 310791291 340588894 539799988 662610048 104140249 462237932 546975983 685046992 385185204 797322751 16239242 550041305 985500903 996684416 318500620 675160917 969461957 984102373 379614204 860161808 223429911 471934574 244235802 408959449 499026914 937101150 407237125 796191461 259971142 952803572 479488650 771369729 617306635 809565894 804656097 949606985 45447845 268114350 263318472 941857808 700922525 746547255 963955377 964215824 497176951 999901455 17530399 841756544 386888897 824810750 205795287 354417297 553958591 859860375 96685388 929991219 182207282 547113093 904882405 942916528 984906978 998827201 847775023 993580682 875724506 907618912 943275920 991349522 365099089 741580531 960684393 966252991 843793079 889231466 10818855 92460107 519485665 867800776 575023576 863281790 209852083 465026716 134467090 312934492 305767564 999766950 196323461 436978349 519136157 722067494 889686136 891365597 59530129 363804456 639882556 960540808 614786752 874668481 471845329 987577646 83462931 648643643 443144571 912770959 87217264 197307548 66095858 433238703 168509369 738387558 183410220 920773900 879226177 926603456 292672568 509827894 893346486 910008664 272431302 909430470 668957359 806372750 830048595 858118885 126270814 663574131 595697904 651316542 540174635 727734478 281800258 815428627 757330358 808597156 448854149 458251694 220343201 699012827 881422550 921361003 456039838 549158984 774150924 964449594 46896964 764343638 420795899 467730951 451985364 947535580 651395 928118360 496900424 599349317 653697096 686756656 370299763 866257136 11120353 568580406 892722416 953826159 159458412 366643686 756780030 872919349 973731036 994072433 314051098 528229143 6155508 690732157 751515372 898768037 532057258 654520280 901377451 965683804 767373540 786206192 503877543 847747339 109294687 730938383 857626984 932915077 966941285 982085402 640523479 888740801 887192890 903218960 927942806 939971181 144702676 237595980 812963168 833572409 360971478 587771344 375882192 796297882 223463824 310025099 527577823 846949140 73247515 226273372 346579531 813958205 788894551 988696282 957134994 995371070 580927674 704710512 643613856 945851993 407124376 507591477 712102431 738092095 198315195 402999770 293313190 349153996 601417598 956798973 658144344 959655649 703798905 997048533 801960950 867066153 872832714 916252666 573939901 881358095 522917538 599956583 376049998 711048138 33198647 400392785 434173901 480134998 902233267 932332068 977473816 985159528 249880113 514258468 221065127 905258047 978306092 983357127 984456578 996907452 705699202 929216316 520110551 927962701 940933903 976977955 88365143 957012614 533622727 734669683 165840720 448534750 409364387 449125509 381989155 580949280 398227750 600422167 598439994 860397606 493588397 704656017 480772218 604426922 122511604 795696065 534217254 731075344 862317349 977221778 140777526 530989014 533376909 880753720 253285245 389149422 523974584 644486822 188849287 413687740 722378746 791554070 198181482 829631565 721164922 827833239 407103266 522366153 440855647 490411241 347643321 989311183 465743915 561775755 165824402 176702438 73904023 616463275 609749846 897225995 335954672 425024590 158495500 194917565 535811234 655041331 827000300 863660259 527897995 811231222 2140577 538049244 128835542 511054458 875201743 959904792 165179493 508687065 561956507 845445101 354976186 963249183 293729087 417796484 732555277 961808643 4985291 176159247 183956000 639964210 953796625 956846804 415488090 440556934 125929672 829307924 853659018 898614671 498231044 843622427 960691499 969453482 991242123 996448970 587297056 927152377 229606723 438996883 259177996 523660712 735197658 964299240 912770383 948998687 629410196 877498410 806703135 907557690 562355362 721708627 400883117 994858715 576508437 987253584 830355490 891239642 299167746 396817330 271075407 625359335 904503403 951274093 429227468 519840319 311426445 524618901 569757861 919277297 55179061 584188602 873413069 977332457 451671673 916639031 132135560 850204710 990515475 999416295 714039387 767166654 63181861 261756188 221774250 362560208 694755188 736960247 445725534 939590934 666600984 714382277 727411223 998591606 357309558 938259494 987702865 994198050 26407233 809968198 944963497 982897061 603823632 754187515 169122613 957396262 245280488 718522205 909519067 950782042 537773098 709591321 682843410 907692792 939478698 954606217 967601969 971739647 949753491 985484139 750637312 990897412 188511643 914449763 380276440 473584399 425730448 863289058 715527978 822598219 120599223 629912103 841292091 940027857 868985402 910425427 400758579 802927945 986452606 999488012 753092133 905754809 76132627 170878039 869811331 946449887 567722863 744895127 789206564 793888908 397736614 609006080 561542357 630252887 564171630 580735958 648681145 666170547 803378651 967766305 554105184 628621315 36085963 556859454 590414485 615974887 799033783 851072951 931913646 986397951 43029200 143112904 698207580 894145700 551357019 795420650 968890311 978493848 506531791 989270210 716320309 856129799 203071870 975446709 220613288 475384377 891465739 971234918 322522249 694076660 457352031 526377168 584525354 976082842 660633688 994576255 512692129 665930946 458600036 643668941 367357805 574985219 976029579 990179656 301583040 958516340 324362792 558676619 5355869 828801999 749445374 831636319 982941693 998466770 388837721 724330829 110822427 836382344 222798708 807152166 830315813 916689788 21733330 564186220 98347803 573973364 869014355 875706056 992126157 993054314 620661096 997620116 309597447 838095808 920576709 946901423 386536026 599819330 225486503 796754991 166297273 314463271 67949022 104996282 201265613 263206258 838916603 899562141 437919588 776998454 781594650 988479621 337660174 702137913 640312436 775661216 966454122 990797594 463485359 641117145 346484900 597205964 876156696 971034764 467555060 515663126 623319260 828218399 645264327 877762208 67590681 261508489 662371174 798327572 596885165 727962519 293907342 639689563 301258861 314234570 231287625 474597671 505964342 957487468 840879706 936060928 496910728 949904883 664304381 666110125 434403238 659637580 970191437 995431925 505034495 633929483 568399413 852160215 985141722 988678751 557391698 710711873 143807463 467392780 934017770 998948269 195810818 387590251 940022942 986155205 712826187 936880401 665081523 985397062 361038231 967498947 419322356 929378245 38063595 462761759 457277392 953621963 91339755 580692922 1482847 636787684 627412089 895610539 475823620 555273879 212642776 230136055 952632045 957456370 97283788 613993932 714699860 852564848 146584619 862551451 647208829 920703086 310761213 426880904 553750936 732478115 974021295 975504978 202027095 458680243 439122012 846619501 553508364 820856280 235153947 794288297 74559328 999357039 449868898 919883283 239075598 702938675 801397310 982334391 841085469 871820962 165507496 244759143 369854902 807363449 157479212 559368199 873191960 947473009 630942703 758829390 439115823 635664347 887454287 928620980 88523051 131959174 592063146 666261580 371540665 744617082 746529061 938758695 354736029 811236152 238374434 873703175 82821300 355560311 445798453 560577461 83627173 398918661 972479617 994409492 437213220 987149553 655345340 849344904 806507404 836526912 730161623 968630529 524871624 578825304 148398081 809028525 897791729 989318490 489439730 555997229 341251435 693342808 594266402 867062173 181748676 361906701 277491199 626302535 792819527 874630996 495373965 771643035 384903261 469751627 905171165 906620133 496331803 499782969 620306700 886407374 350766382 444908541 308377626 528746390 863368610 928385055 571184323 699653400 691225520 980560298 564279961 982267972 720790307 839118087 459969088 610480865 967395368 973294580 657726471 809165753 473991292 825848189 909978988 975005599 119973837 329163486 859707624 900645937 621272813 761076948 725070186 909727068 937118160 970928020 546116468 734210828 401442938 521386577 58722333 849709794 969231932 975036488 375594264 490023464 666741043 931896480 396220406 659276939 585162735 650129948 81608967 675596901 157405822 602906039 116832470 219439598 748974167 810173363 83280510 654758074 270195380 829162131 791374238 801533362 730585935 765915952 451824220 732076401 596244615 905613550 534418388 867254917 830897334 854720215 880645704 962390120 123398371 534278529 800183823 907189442 324932236 427443059 989760291 999376941 209470309 341564315 933597924 961903722 746905505 951223579 927727275 971356532 577120239 763675979 930769560 988768855 182477853 263562630 642330495 997058255 920052483 994105727 927487072 936376821 181601933 506070212 543534843 565935067 243641525 767852798 807281917 835995548 743160346 909623256 872712723 971011781 249209735 286852597 724380566 947650357 829761121 857021435 485653972 603123154 803191415 971257069 157568631 739822322 139315589 628019960 637436417 718023924 256067016 514193466 247397859 624838586 547662784 554074761 832413391 900792099 301590434 826617661 496803394 559633676 512742188 810003013 294994618 406617798 278587733 712130822 982920655 991571653 137682508 997029564 723135137 938886370 89241109 111488235 382440988 748060375 181320135 842840409 358723766 720335594 540237161 921927073 883891879 970526743 258088246 636716556 976196536 979856938 359971523 594178355 839308458 844416943 617416496 633844606 978742565 987737104 330238643 728186320 276341323 433575648 561804440 766384821 667032283 730133661 766484221 833961669 430629701 625550891 441913409 602092756 677247808 766643431 387152144 842852516 651997160 731769166 226669777 305559189 896451728 966356052 395866438 787541998 665552353 863116450 807132518 917843595 972238681 980674062 81122568 752152000 535649244 746256131 599615250 976293438 407964024 840591391 657810841 801685939 960517033 994758269 410211535 974596402 188026426 402126031 954759340 981656212 561625183 916800574 609297868 825857499 678411636 922910120 504530473 690248276 433636217 976067808 508703421 871121417 370361927 765791224 407198684 950957924 920147402 996958907 600028292 625139080 580267151 877166726 682958435 980237509 849676607 923453170 809936087 907916273 129382663 186834436 825552548 881881195 596520133 861036024 209589205 273968261 466738314 893790621 704677484 915351060 946434223 961647661 466898680 865259640 522308305 574191674 96144902 893785361 779129637 838412008 86690609 973882606 215628677 919497244 65471035 704981584 676395915 855736564 552298523 605460246 27487262 195513955 501916611 980765059 716676383 775845032 815871663 954725422 897046294 920762712 213019109 230580695 861005072 985931840 369332068 443279119 106121048 934856995 16237991 273081942 286779414 878833404 620292052 892688928 605715874 694822626 999422257 999712233 609328393 869426777 687649289 810295593 280390775 590071174 456197977 495155251 996480007 998385206 362434523 720102243 917557796 987447255 450090478 950045130 860801390 913572989 857486366 943936737 877930091 928500871 893325635 985442963 743936903 789333874 392917555 767549937 420349984 663026498 835692171 864567725 776661220 825814498 74406455 500132730 964644352 991935734 735982983 814938809 192121651 447214387 55071266 389133161 338047388 447003583 859001804 903328617 590692392 893955994 790079909 807351311 257763935 540851302 580473905 854168427 702123035 823931207 236050108 831139260 641908910 936213257 23795892 694137786 129831559 827040317 291051428 495602126 726443085 868268497 277130815 362885420 520661590 681286564 739550473 988188946 326324957 830337799 806809587 913008866 951863477 957417335 988232073 992992490 865926390 934669227 845525418 903701300 689230739 783296971 501119408 993046771 900062644 912629586 837241641 885494161 102670509 153605744 31969226 644854414 681532020 922194119 869381252 873971711 903578508 993072370 861535155 932714552 68362187 571893143 765807458 984474252 225437594 296077255 216558853 583689167 977739906 993480782 848683537 997984099 645848130 795301389 312148190 939404437 95468520 771289981 522446446 695442020 352338014 679273404 223247230 704635578 557158893 906617673 49815993 93558326 662141216 806959957 42212259 498952348 830907156 839919993 527602202 706223996 301481934 779498635 605871479 723475298 956296672 972254764 29618823 430366339 671159206 887017222 724650531 811253173 682385046 730810054 602789050 698048881 28769411 481862061 311492570 601062111 789837984 940934568 520121629 884089960 571609937 783119223 920088142 988217471 89972815 689706167 441985854 664289312 161425446 312066331 794936567 801035189 952968488 999363113 405621723 583761927 644480782 879172473 282938153 572407125 311432342 765209610 7988802 596080073 26159435 303694853 267883372 516644483 161185632 649240533 60037753 621344348 98357508 573483015 647003558 904512074 855195020 975319593 338001588 903096473 999778339 999793329 902434806 958387831 815617842 929595466 403737255 716878062 360064407 646667553 676392499 976037365 894372300 957176125 403992213 906632501 617776683 906212132 889057012 990832584 39754522 959106675 740588663 846788955 146729076 197593039 5554674 924792673 500684737 538319230 372280747 602304742 799114750 850898258 232998381 540776842 51088720 656059029 145044762 455028541 878898974 979239265 569642082 592694438 577348310 881298704 508847257 663400669 52381349 622863622 578208215 862808225 211288060 972224573 555936587 779005079 122773185 606148753 337892033 675978020 489460984 695897569 745531540 828426523 748366234 866024819 45269886 296957006 919127498 992350449 836959293 891726739 998872335 999198494 585112862 679070062 79972521 475051338 988645585 998927847 471314138 742096605 100104933 436455829 786177700 872403778 812521067 998703532 249188156 785012574 907657810 955465695 523611711 536983741 739285643 929608178 714990998 793768508 470209491 998668791 550473563 817127955 919470368 997853541 581688084 635415074 72988519 280057337 90414096 204818080 454832404 601791377 502236427 927970619 631788218 705769111 574522426 698459837 318246852 422577321 180198370 711777387 17532975 81310938 233883652 872537021 861768491 940307582 603531960 966773762 147322036 758702399 69322041 335374686 539520601 560860856 226209908 821145668 168661533 825771926 404533229 816991192 763547408 774212563 185486865 291476182 381665529 874717309 874305646 923722102 841733755 869848404 330251282 777093379 426575465 575881756 224387793 944640470 278507399 652689311 296958611 651790947 987031056 993134632 142766594 472543495 813298135 876738195 185722213 386998097 338713999 623594615 388687925 819549726 525105847 658497994 273260948 947477879 470820364 621823454 606971742 875399247 126458608 670814475 709086262 821444911 672668148 764068456 461018086 716095995 116055329 744770086 172685841 465167497 171053068 960492885 275550898 548449115 844381968 994256295 471028143 703865776 142209600 553221688 768406446 973667733 594042159 666619584 52121640 927024354 28469115 260423765 280057599 688331251 542338149 853886765 878517122 910290873 320382512 879208686 602939711 617381542 904288059 974273667 324662394 393991419 191730768 961408186 911340158 956480758 878488203 968031923 973049863 978928265 303382497 922653979 418636759 854783041 676136641 735641590 468184306 835144419 580154835 924750121 200345942 531951196 434647653 941384009 540850351 834226058 360667850 745420834 657038230 875532402 6681918 827966148 407629281 733399387 207700969 573967574 539397741 556518861 130257200 371852314 301131757 682359166 228791315 495348842 739708665 759145658 91260457 420621407 298970148 529806671 270041884 892563427 311701402 945569948 606320447 610255134 30469003 346104158 180324677 458290928 233407871 393058203 320054322 930259879 583929947 978954236 89744590 427953730 248484889 724851340 88320804 994441123 632083909 743619170 894876059 956258138 27887117 37954838 407849420 558495691 495388351 629533942 389253510 494425873 969520393 974282560 117503747 149653847 410156017 638673260 160761441 940983534 476341447 572840316 478579861 894539338 814608689 835120856 525255375 644630830 186571818 434269075 248747373 397171520 837374401 980560318 808062275 940191876 104948098 146853416 678711343 806451685 395903706 847079016 80177861 689016650 615311908 844679326 223741728 233620702 237058305 523007288 551358593 864041080 5954275 595521015 916244162 988492576 377895739 790550408 570036546 607908342 453700879 856824131 727236058 783910130 944850321 968094260 686910884 938856620 103380446 930888469 854711389 952007196 209697529 466605380 176411830 666575462 728359863 886265269 598202056 970911705 417738428 723469592 449085285 564272034 20534862 330250360 451504838 650133851 91475222 681411263 259119512 820240321 367176001 432807103 634018994 676047110 449208504 559775928 69626118 966974236 351907823 726506805 292115693 650700885 170715573 580606931 76938683 969635991 1484307 955352064 784013171 883658853 138993951 288082136 285680171 663271756 722344246 725839501 391481220 998918790 322080563 518202136 88461996 538425457 144515908 957408481 59324365 335917602 556174772 818106850 948017407 975628927 825945361 998691922 761197777 944251479 429308804 731281869 198108274 946296651 76398145 250873017 842041519 980665488 908684138 921787378 755664203 945693764 112076885 399360678 951022363 981051165 572986198 807849227 963362273 976370633 684250930 925347132 51676274 280076312 242399868 561991869 226985509 469584245 652076179 986339049 936686459 966796440 298266239 751969832 439944341 768082667 659268207 711744630 18555001 741716273 742879919 926342216 210194011 581501270 994980929 997655015 512272425 673296114 942502274 954232516 450158148 915637828 701100485 874747206 293530363 588487063 403572820 967771638 159520476 945159790 14362181 595815449 414339357 633445419 962909264 999494732 485936401 779188188 207075732 628625904 707109073 845473422 193023038 560783840 957327588 992801121 561975045 902426624 683737779 719238560 110594152 389193060 80447889 611943360 243022826 337718997 980511403 992675381 882206015 918104665 149973196 760406318 806819562 974241502 237775570 451594672 636137262 778316440 729504260 835444672 578121896 600573730 637126815 729091515 598171821 685393388 237094183 475597095 582952343 789321420 302036238 971574246 600952357 783880314 841755346 976954243 756949354 779677560 648942559 956140034 592172308 772772676 522380814 530097288 719512378 844142362 679491913 685010852 582066167 641885263 566450225 659515049 935776083 970455864 681680639 945896085 886961142 935415371 9476984 975069530 572926852 599527553 748401935 988206113 654463499 819520751 975559205 995534982 881987952 954392853 503083018 968924173 798898431 903005486 668428743 854974391 119154867 359803191 638383042 740421817 880038390 941626992 16082478 115658965 108219306 387363804 213439721 474449239 10494783 320352077 296174536 702630961 76898544 921182699 388348796 949852072 993635539 994997890 843727771 900988128 39793036 200332918 973531751 998128297 308845032 972972223 132888817 390056924 801034829 812182014 782609262 927715605 359746734 993437901 452309658 690130344 884907824 893936323 503491835 721684491 174126036 640603314 643197604 755834272 203902414 399529239 560293793 851309499 761757516 808058670 142914000 669571131 995726258 996170980 713468002 806942311 19329932 636439977 644946058 681168343 425331505 450600108 940218767 973010930 496986154 523545441 722909650 751853012 631748602 966932541 637990660 942540697 625558422 823285253 639988229 963398049 82251003 816851822 164129317 768585303 358873552 525394399 212849327 671365114 914767293 985725165 549672323 695124752 606142747 681036960 423637196 494326041 813306254 991645359 561147091 978563118 340316824 662607917 665428829 819435269 624901600 702003104 154410930 718792488 577109371 916737470 197259336 894831974 927423843 969220848 70435590 755254610 410224151 449658575 892612705 934741281 461396958 480688264 488399482 751393940 526198865 993970596 540644761 821979429 664942970 937337217 769694051 839844689 709634531 922213889 429619745 575467142 483946097 619054257 334453350 395648888 243840095 801022353 314849178 926737172 647935723 734082044 580855594 651972660 293259190 392428883 580647547 843799792 384749417 801348463 806487539 859183969 216567107 905792873 765322314 802295158 670597431 809845818 6367616 427709292 368570551 937376985 651600654 917582729 753621786 792600863 907034366 923088726 703000419 991764141 458254958 953339360 898421025 927037927 244078742 542549088 733554195 770990936 906570255 945571461 51715610 667236934 40517392 188286752 277939392 733548037 23811825 710402398 477671409 782076230 136509993 413989126 585854689 994108348 281783993 479346991 43528621 914459620 600130207 789187274 480741088 835785957 600556860 759603996 558771718 561078076 484876513 886313422 410818458 540653920 620286779 763688106 932537817 985675953 361705740 406913643 200101664 523929489 468586507 919677819 188753430 483740135 746189234 989155687 826496113 990420127 316651208 503594026 492968710 567431216 832926263 845296845 44225610 451654888 327220016 619033382 607261816 998302838 583014968 644701000 260375002 721987125 78171551 930294565 623911927 864319787 164071834 595407358 914094367 966459366 520427538 687549706 648122325 710059524 335050214 767464149 523934394 586250503 17524097 873227070 900818007 974023938 424459130 649537190 315785695 731837061 380976878 664356350 518660272 866813355 714408998 725797840 865378038 871360115 328985237 511556507 217754111 453535081 955268961 980063720 611365860 830155350 316914933 784723926 776324768 942247808 20703430 992584697 888713268 979335577 826993684 922595421 615443806 905503949 803967888 956286337 756714657 856213455 888503931 911500113 706428172 970499170 607350219 627140036 966172354 970663602 123081293 325088162 807664440 986250761 804986834 940709112 855179581 999828214 369576580 797723537 441975582 794271777 923290132 991400561 413104850 882060955 473699404 709600038 931117565 990704625 366292241 715143064 226777149 229725611 639652321 761883865 877294165 892888516 212012871 258425422 327774751 632704957 523416028 525520229 729343825 937439106 886731504 923465830 807318900 877050053 33483177 851796393 850506080 869865210 15782376 438006524 291738356 679325847 447742408 740419773 3756205 853745368 22646424 349803798 282743435 746140745 489429352 587463501 979280388 982194701 935277893 963321800 848873233 852069981 711456655 853575370 740632980 842670120 15705958 472824297 218027086 480254510 822455379 840156828 572987728 599960126 570143439 573718780 24047457 390306058 977488895 987613010 113545972 710631399 294604622 533160853 54656544 785503225 609139227 884782745 767218793 886515090 169782695 753765753 779151093 895806581 767437364 941218175 637765665 878805988 508381275 771952890 957450249 993829676 772863860 935060881 773181074 979653209 297657765 885004214 15408807 890075150 796255102 816297698 681538373 833205285 116817427 127159868 429128153 991138914 704632113 746000488 785998017 842184952 72054234 737506218 857724413 872186052 919240582 921350315 5899184 580719303 25409049 747904447 150946524 230411693 205642779 795258662 718708087 945421610 274767077 720039367 346370044 825254550 231094102 910743238 685650690 978897420 814820599 901858312 139111327 840185188 224160396 375027039 998615566 999263438 665771058 855671710 2158629 21528298 539207367 744693012 340650835 704508606 460902279 624546856 870425594 941554668 938626400 981904091 936445589 953515530 818013190 873001763 122910971 954680164 628686850 930614630 850811514 966027440 703453295 993247719 843480781 881712061 54468415 740411424 392195172 771751359 943914290 994089076 378029737 444283222 714260930 802002820 148420645 645867915 128745749 672072898 442921366 585933915 922131174 959625225 673325931 704479218 415502943 436740456 472172887 655660113 177704453 858643191 785210530 810202294 822344924 986660112 651163755 941691637 500267500 587800341 375266504 812316193 793528492 950243508 399091422 753600715 23160348 635069762 766521408 915906316 568615589 973816575 531864477 861335998 203200146 239083478 841993911 855979438 99765684 259756921 539459602 806168221 550191970 810340378 736062992 739247691 362082296 912001013 813199703 901609891 368625801 426765710 154309571 779530920 37470484 274151855 770224584 844891568 89380482 506589575 57512708 432465644 860115810 967899262 527539098 650165098 391547712 982105441 606503986 611103284 883071417 893485880 592377335 749012732 256071632 708389148 357178139 726336260 390928705 820514327 448438612 955194627 216694073 409735215 465194490 929013993 177377388 783095074 376438938 423464888 96132444 466876815 187045255 200636592 645825275 790635469 564744971 785641119 832120753 909407948 114188287 535714387 994645079 997537626 149084676 192798824 917550598 951339115 373795975 697216052 175566919 839685154 186680496 206442327 115537975 693579482 151229267 977778169 606828181 775150704 583908339 760776220 524098380 690765195 952429717 981330382 345137483 574685964 740081054 796950930 641707613 708378095 285906758 785706850 705676911 807564348 437797439 732128310 554677868 954483083 853636047 954258459 940187808 974043872 911549383 969142277 860552702 874419642 410375118 515258788 472864501 863651807 860950798 940669576 466276726 659210498 168722069 168730763 153573480 529845993 663458748 690677538 861003892 971384955 993335075 994912326 163806995 518925895 890703117 992790384 119643028 505541832 761729879 797811264 624371631 712963161 12516245 384223363 664904044 776957944 718087587 737571956 324261375 829134292 506156757 677829636 851951114 919774485 699985963 883286007 146842836 571374306 442016754 756094332 577784077 874829960 571115125 924160874 877773248 983842210 423541350 781967857 648736590 694534217 379027796 740973796 997440537 998509950 940722157 942344686 1499843 264711722 62364386 730176092 467805501 571542722 742087014 982378926 752264116 942112784 705668964 896839554 727831115 829655919 143064129 772096211 624627709 671096585 248101096 561479382 205186872 269564634 271624603 580565150 288695912 318172944 784952270 881664711 577502198 994838093 750666239 885552774 933807869 944009128 329344856 898814994 390696160 702012892 694926774 965973421 351168144 742950608 84798873 715478457 504716848 575417383 723774264 914827658 936170750 968700007 825535204 977243971 589759308 916234643 798951876 868766249 796140813 804837331 488682671 651361287 18796863 754151444 675528504 915447313 501338139 507963158 697118861 885263270 406101391 900069706 619745505 906832079 254785376 786184894 262824269 334449508 852194132 945453699 116509581 809549783 993771470 998478144 888842442 926196394 167400226 910710340 409848545 797591383 997391840 997873208 990630450 990734341 649275178 790337724 53605633 539845271 981360082 995334933 271234321 523570077 693763474 824275573 80311242 869855162 81426501 989830981 349160697 650916498 703306124 830677687 6534987 902788834 798357710 931761625 298789610 444456869 971830621 975295753 100217049 360758669 895105005 971181965 110153058 546309694 168686661 982771649 45918461 334711945 978538402 991561819 861532767 943629336 495640256 737148541 11010023 413760696 838962917 969534575 293297030 343099632 874322148 933270810 415346107 451182540 537105202 926250596 294704614 441192996 829580715 897912214 726718887 804283969 8889296 628596028 894277729 948085202 877526249 890017505 315555643 852429243 339404174 993589356 957703275 988836753 650091543 956171857 56382163 523933551 327110022 346025068 272068496 408653533 614817578 941309726 744522173 841824836 954527514 971307454 146436447 485738352 452058261 541134251 876522623 949839026 671240874 775240116 689050288 721040745 173416489 832091510 682252719 960615104 902365461 978234932 843018289 977614957 640171594 808895017 574800624 753213217 870352853 999108531 639138283 650496988 46751332 213471873 120055609 243003986 308990706 609358640 835824302 960879468 57514850 614157164 631894313 923179610 96584755 813489841 741556220 815841138 133941064 979200207 403895125 729866236 238741803 465365055 8766617 862932582 396522587 558020938 59402619 572204851 471201953 513004581 105226513 210141862 793523125 998331101 486646572 785742425 831299382 910930379 290323999 944207723 303444238 406487710 589788152 620274901 685621911 889491040 11307921 656229520 945859908 958186460 162805989 611962465 992070665 993577736 845394257 924094284 271467860 624373872 964813705 977559628 42855825 725117632 653553293 664433401 102500278 278068342 99602445 765620635 677370388 793559734 744540604 887923887 578278889 922712962 242176761 449933447 749948470 808278851 849933179 903625582 425965293 694009320 516285168 893623020 772241131 941657887 526719449 607249140 423359109 542783353 975845634 994640900 194094772 907273243 876317061 905077117 237529574 477713412 112378043 166987027 676172319 983588828 232832136 569432204 16448380 643981553 456679801 739527646 376650347 894850174 281018706 557171950 17457930 43227454 54441288 849071740 375684535 943577544 734856682 868369956 734242289 908360065 153246267 454075207 587711647 736545302 81675233 498241695 997045696 997940756 137217959 676244087 965205057 987603215 399822256 641245890 989530637 996867852 501987644 802485237 990014078 993351865 248083275 856501225 516443942 642863624 380235823 967598010 108918215 954202884 815194722 851354964 486874030 777389694 633948273 756493379 36399225 260737039 131972202 769312229 221827187 793889747 861495651 984298459 128803482 891079364 107194490 476708794 96880966 701222700 339159407 428567257 898026008 973763276 839541953 913178264 605398070 947987732 957084561 959606140 251318801 511481424 23584994 964395673 729388794 784976642 276555776 975650143 390248510 742663473 318834839 646367827 534465129 711658202 268297425 814658591 973354827 999452170 559540511 819108784 8436637 499691769 717854112 744507976 615671082 671696191 868385879 982020399 526836757 780104815 631961614 953213451 544071880 878622314 584049892 607483230 360602639 368173073 671460257 824135067 996554728 999404782 565126752 666944162 803153863 891855383 46524241 716735707 193725683 669520158 67014192 745920628 716663861 901924944 632120153 921183569 13273414 462261026 173747575 776052894 338885920 541887678 711431698 850871482 942613581 993426257 313451157 363200797 353031240 900405700 991138022 996349043 936538165 945059859 926283463 939555659 117429983 639982971 362225237 989132412 793893715 836074656 854057206 959109776 845495778 900087713 103400631 339684003 969433628 972310227 478182755 597983005 9805615 47562000 136253690 706763201 4111991 216602839 129770111 743683723 587992276 942308490 297524190 383975891 775176241 788613521 911179436 922112967 302730056 366142418 373764582 588161266 80252517 347553710 217888997 315156091 926891128 959983061 36849076 194172561 883037311 990720479 524075205 743293754 393280942 966244512 34030193 391886198 633955209 812351921 571043231 586212407 910108435 977752993 304170889 811042024 815592615 954335183 36659873 575922864 531029479 602943301 322979875 843112929 352834717 975189510 816113933 951225600 776745554 980768229 279770623 827130431 451855689 700873278 556207026 570719627 763167832 891642640 713534165 982505810 320420219 663207543 875579483 983593492 889552121 962920554 469715637 588983309 179473534 935417152 300775263 755129735 863688404 975329754 801184189 874870197 490730080 685352861 177072351 667971475 323794702 929416682 941065695 985578707 589235635 719471182 492282816 725045028 239629563 794865259 714153326 892302897 426805446 545395201 404714777 455222656 212828804 483383935 233836921 863125528 30028289 610154666 596527054 970613977 269357626 555909503 725608889 971234021 341791799 382485805 811166168 983756035 972366880 981828086 836394549 906318682 938438559 993103859 570872333 935987665 629603913 707298016 933658806 978739321 624293884 749673301 735539968 942959367 270533853 911593233 990272639 995863766 749549107 990474391 758962357 995188282 968936821 970917853 475071933 547780427 448844195 681098993 405716563 616795812 532686181 969527876 672771964 965140514 796092954 926477716 12402819 459704631 527430941 545048782 178237595 575654148 609426178 885408129 544564131 767611488 494921410 836672387 620196319 959992257 920215412 941266224 171468757 220200492 755936964 975127651 963646616 978570331 29906759 107847066 897701357 957980910 21443079 39945991 390915795 766320284 627552321 860321526 646601167 841670037 139424436 322434052 623501357 720457542 722791528 981103953 248883594 364669997 558354955 703404660 858796577 981962333 521168068 906803507 409976596 412988394 809111665 872663399 58652312 406573336 957323081 975650433 708966792 986655938 911578860 987065041 34592868 331465785 941642508 957897857 119966453 273356921 339868251 623025689 71914377 188366016 71706029 76571999 330005488 401176489 326879007 531408814 473175974 524729142 229038543 589016002 203512163 516206241 214195807 841971781 692591187 934181605 402231366 672106435 210935282 265886980 34494631 515095123 448644601 530035233 723921631 915313818 5910690 175151370 400179165 569182328 717928715 963959470 882970108 936462615 861716686 886618492 180325138 447440204 655610872 805058278 874866117 980510938 943128624 994304839 188830659 412404324 497834627 853969539 371983507 930600645 788399166 987251139 50407910 692197179 441480982 987689983 370165306 825479735 961349179 979904777 122033473 648486851 104453831 988917289 271384932 532741451 977257279 987170300 830040041 838716959 602419135 943362337 619050861 943898512 579897700 962465337 31650098 265028848 68824076 287989367 140456366 818002882 109214861 630758011 321411528 880035158 393904450 773990054 527372068 972564460 737920678 742456460 974087969 985563296 342243340 851089231 175359757 989844261 741565557 985496276 440390875 503815713 806332201 988065516 373023638 412437141 20153339 916323888 352413299 867242952 390214057 467877350 634391110 859010131 104007653 526754030 38332898 93033945 562982393 608995843 799253959 951496501 595285371 739827050 422002798 865932339 382751450 461245231 722846376 842200424 98891716 828865409 632114808 997770610 41190530 968583575 921257774 984557465 781714150 894192853 146181259 987084014 134792692 134938489 517321870 727891847 619732353 804445574 887044941 900187113 35943237 331358644 891938622 955826903 936933618 979455287 88181421 785294461 782340091 870207918 173216465 451407853 283995425 829697730 632547512 812509229 247121836 786226044 365325227 920196703 195174982 924847702 928781801 967942894 292793489 368794924 651589369 840629177 799705180 801782828 886516407 943227210 86136924 979183305 259776568 353215849 187980921 988415601 162838575 695956941 692859037 777777536 649785176 764294602 305864694 945848517 449856080 664330678 14953477 216993418 290780901 876944288 747228022 783619735 870267843 895895248 544173855 697560383 524374505 866922613 259568437 792605575 152346271 705033442 996592760 997149774 532825721 618067808 212900358 611981537 858352888 869402360 171001049 720077319 638659160 839284878 753385087 827388398 172358786 755124247 210007339 669133488 262862904 801515388 551588741 575715603 848874644 901588241 474624532 517845406 101801698 336538964 384787557 558077911 517829995 577271124 15714231 292739715 94460099 133850884 705870820 873506743 502948362 569170151 688235817 830511034 503159134 963731847 946492594 960613350 613668669 682119427 641460658 812335617 50831927 703830920 200438762 631854572 755644353 798097121 185727999 890929327 342914508 691205328 109085829 464262483 977855292 994577497 187746838 987794309 975169598 989692042 910723630 930782944 214957311 907769817 139927273 292126659 76756651 741905658 441897789 940121004 727022318 811002248 376182899 508269234 636912826 801471026 713537501 894079227 979917607 995216772 990749797 996413876 138178098 704302295 775888082 947477037 183381788 869801656 250586312 908791655 533677430 567651250 711790682 973431788 763795962 804477237 747704692 989256103 368921017 370657934 702897054 888945276 368620445 468342276 932537316 961539115 591366440 789347562 210029259 714535717 692351907 793520674 24391103 994422659 407297898 894761976 766309928 840746847 174310091 396185051 245850730 927985188 728245374 978839887 793674681 918239284 167879618 511629287 497579340 603070398 135666739 222731514 148121039 195244644 811792032 944238103 172165313 364700405 69099850 488374544 611647429 667869169 685262093 831300801 803707484 935491201 468277553 991774489 668976163 701884411 306066513 399445616 58875583 572176032 313224563 776024613 221674150 340971651 816630847 888925689 117420358 476429349 930780771 944706394 57495369 968464206 964803655 972105917 482552104 923771663 759712330 861190575 598921290 640578637 630237552 899028598 935193031 965886603 886970928 952353336 778710982 992677387 610487697 610675718 652481358 815790523 225936543 377085620 705687411 890994552 181534777 676908748 689853982 791005114 314888935 379262755 282487496 338998371 550373765 964353459 796949300 922416891 646772846 971739813 339819232 651065469 197755812 759429804 119941694 250601573 771115547 964072030 341916435 873111318 147590269 419572231 826357967 896800834 606981835 718767066 732049893 906421934 677430711 899527957 868143400 877928138 21360261 317369948 652048700 861802226 510798433 940396811 244850148 868664795 310358314 497033230 118585564 914318723 223539839 714633991 377478737 499644445 544169999 926301296 318904957 404693763 450480219 788792785 498547371 688327066 978142705 982075814 207944439 728525902 251962845 681010869 877592405 948582037 202095608 953208697 965912401 973963138 519690895 604171628 989399760 997231147 845299673 974121870 126702894 974934631 357219000 641583228 576251870 738988718 217340830 619649188 45366291 188305357 660829920 887621584 529007164 758900433 914486778 942270503 692144988 876731538 143724720 700142281 891299101 999395253 123014190 509662282 225862902 758498395 743940348 793849966 435784412 520855116 958019314 972208835 81068430 653348065 909689028 925173922 906531805 971749116 552953436 604753726 749692283 918427309 426588326 987725939 392249622 835211176 776329737 981188275 181388984 843932619 898093857 924727551 3629479 399285220 384275045 730395044 977059727 990114901 145162608 909250010 236331935 925194346 857957024 922871525 82574062 338787654 163058004 495319766 642771910 850496872 937052198 978220276 818802139 921936259 819883828 959127244 294198674 573982235 750466778 814844144 567115427 583985112 906910953 980251017 609453991 622046507 593103699 959977167 951274376 976801128 529411327 684959052 885546178 918214418 777856697 948604583 523346611 895225554 296873506 988915343 156842802 337976048 449803922 981202491 839915557 899795345 109735120 852709833 413984711 508255122 660916415 786543472 120686388 846031428 560735826 703330361 227153312 551324678 99336020 869235714 64994655 281446703 101700118 875897529 286480080 415818300 658478976 984105528 863056931 882006476 208316378 345801006 548177742 976089584 147033427 473980244 569988998 977598056 418699212 572672690 692776799 843791685 612393024 745998401 958670505 965606233 340372929 545992486 549356956 854988944 943322957 949237931 311006053 852984246 342072408 834712867 353157757 534477610 622224379 816691356 960888039 993081882 219347173 943279941 752012419 920909470 210932364 646637155 958173017 987513105 377353752 710564247 872997152 991999772 829401144 903165695 519014940 738079748 352133640 677601660 426747728 693502163 447329211 700852857 833442604 932288953 427422584 781844596 593977243 688765113 161770963 674863599 768204661 859279208 372611376 822459457 867505541 969592402 970032175 982666599 446883270 649859909 749823936 913921825 581983073 652454553 689925143 751398376 814167009 953876874 644229730 934664521 551296726 850741753 398453709 721049444 245631668 785083832 930177413 944538204 345991490 512434285 73291104 173632104 83222099 704364281 459632447 962990442 38406950 212140674 460238802 724271597 509440866 638695744 207736897 367979550 968546010 975285111 582517977 695091461 915115792 978923197 900034488 907507836 874467034 935471168 311614558 984970737 237359273 505514622 313740563 366015946 226544699 751482071 618300316 807267256 862294163 864527284 392762260 761504279 621874635 994548848 253609236 994968347 173185788 457191783 438160934 918644211 668578952 748601071 86765666 841710234 568306151 687980723 902724661 994239133 420501449 991501168 295432107 560308810 998073809 999427981 746669562 971128312 562199037 723659477 522343275 674032500 128022234 401990275 949172 479228105 795326162 962861055 903398203 907298542 617910875 828076105 869633042 926973085 500015516 507525205 953690565 955953388 566345362 758522964 710244145 982174214 921747123 929243879 85260970 951598336 937698892 989418024 890234800 905674880 104083464 867243077 36202547 664386938 466519663 910125923 249011148 283314367 448283830 461849780 150153470 990032327 603256878 809376345 98164265 938636676 249660761 445845553 829959772 965032896 383156645 478678982 322861802 645580874 439557964 844978521 330282939 427461762 750400277 789130920 114182969 757981591 736310569 773863952 811228364 849449284 995067163 995635446 934142160 985662027 904978558 998622088 759720610 908256978 805399894 888081654 443063282 983716062 778008304 841419691 540203652 955234690 224303170 791005653 405786508 474868364 675004743 715643064 508648729 679119046 751408648 951819426 151412740 176518571 155615564 169198785 946360412 997504533 709704275 785556085 410083346 539372432 169234913 470183400 604926957 912964775 505819692 562035955 495016444 966203386 922494835 941510779 402242636 634484072 693072142 760337639 15118307 586599626 20483913 297166820 683804876 840462180 639319747 680112837 437057288 987136024 192192300 193516708 397384727 674219287 191230999 818607808 356452156 654385234 839144054 839620408 453233145 957444016 760939721 830652869 66078392 799589970 50120514 424068716 900410452 933388367 947229443 996753355 886317988 964540035 154738674 985050314 727160980 887989404 580004599 946871870 369931481 637232698 208633045 791052104 470100110 481652647 500192237 699860566 502791768 998359722 627673687 903683469 784956870 939542791 854337357 970370834 861509307 956408810 199386497 969913972 405303809 603340321 12604417 302423192 85358624 860018698 581621851 954421947 552344850 958236273 954207429 976835943 604645513 857085904 401135564 975311979 364534301 897844395 781505130 893798198 254811621 944926554 203888253 902973598 84966299 791476323 244039956 503700383 677863142 860076500 132631876 408487194 979864440 987843392 281569252 412203037 789082873 913954628 824737806 954923227 162251078 922898828 258816328 975134956 887467002 895388163 391606468 778731599 965818180 971619509 725999036 806202612 411325191 923370344 141468881 170258717 189977876 449184934 35466022 126622884 533096161 856137035 912412254 915608854 811371499 849823685 827279067 837868781 33211904 780034864 730120458 784659843 183114278 397632798 916122660 989336684 817268239 994745434 973325603 999647516 693310941 728665746 422676428 883914940 599166564 690117145 528399054 786965170 430168750 843708212 669461156 904226099 732512910 745787098 277336221 769954236 994619613 995257513 183300073 433780753 480722488 833210559 191349928 217164880 218544788 719948669 512294068 745276009 129661488 412313518 315351491 425522904 721952235 875955949 946270947 997377455 492593424 758926821 361739234 924650062 607323523 910401413 27133483 194523578 831253963 926711190 842103924 929794645 230309812 548576210 975805276 992093877 736728459 830577911 811180939 868048500 846329166 926403504 260741180 818090706 980881937 981008372 914975005 956785369 362548551 852869008 408251379 424280610 753896564 849607584 813482054 991964314 373014097 431795846 16100592 556464643 231151914 547540859 232973144 495154735 517084830 877088037 421730152 797448645 450487204 467752289 387250937 739397296 170309691 387326787 638194222 905314296 221416220 664355202 276490734 408818453 195767379 398223903 10074822 861389948 365574320 483147345 903295849 933179823 873968578 972535596 896992339 996348282 241121753 283885759 744284432 831298568 419331803 977385327 761614743 828541845 167287162 930054187 242343521 337448366 712268218 976253699 760478095 987615375 449266552 992068349 839626406 930096324 345896354 964868822 259913201 387083058 982052531 988318421 251441444 776237182 257113713 786127109 170811487 176735609 146818288 645558701 652216626 731889067 816094511 879909279 973089720 986863797 685400386 856304885 190134145 883843230 460766515 966613711 154219829 838295111 139856809 962671675 440979071 687082819 853486093 937590426 942851291 951635904 670940272 696735010 380833186 517644740 642965612 965886192 270654322 720679070 263094504 731052930 594273497 706962160 407805232 753666006 142373860 588890843 793959055 857467823 723140734 879782412 512378162 603519452 917152952 959417309 427839897 742024610 550462174 596565264 467006233 818509359 25796271 799876975 864951104 999012639 74227779 154491211 992755554 996702270 222628283 226260218 580235859 734116777 609494977 702728066 205451200 394337444 225660389 288111382 125632320 495342414 834978481 883597289 362014052 868243824 758240730 828921092 578471760 841359240 353993762 808530593 889037105 947150967 547394027 743579691 649163214 667102428 909635261 990466704 282429370 787586435 539535724 857145745 332949543 679461832 278436315 753768349 521397988 717540808 132554192 296979952 741073194 965437900 37505439 615325475 413657309 507698034 534849177 664007805 866899671 929888371 74881086 567700967 364092987 905550637 695240334 921317825 611907468 951261140 329561598 980025352 320347907 404947910 876717797 936827580 513437454 985487942 419521559 767857592 499414653 619071349 556573758 799537343 567525935 942958587 470295651 532982912 689980059 987163228 766173669 786820446 529200119 693710397 229194237 484919092 920947499 955335881 15138099 982502946 58741202 239401416 541212963 882189130 646725453 764595721 814511085 937936868 971290629 996688704 729467133 831750702 793761572 887753876 234981304 632675253 440720661 691826955 523166257 611799156 507152245 886402959 852842780 998321277 982603916 984127943 956829753 999299311 601444711 661696799 891019268 992193390 840435338 871187875 598978231 633239334 363292625 901014289 836738814 973961681 93121094 97215085 44314478 959880581 64522617 373190427 849339223 906283424 142828019 505873083 276773440 638734363 381666976 904792824 190719550 960860644 443314863 538741754 400506705 997600859 224243292 697945132 223265175 458928189 424497716 443929640 140140720 656110314 380921666 953211535 742104509 995994358 744465487 916789221 991829799 991856981 226175815 696100440 665167840 731644188 456735098 688067144 101587784 339256060 123541788 445419603 92810991 788680617 815191541 940257858 465737497 785779926 617202843 934279350 933392515 941908937 967170264 969249067 853610158 923452144 135797809 960247300 788082947 947384671 871161545 998887441 50071055 380882723 670953394 755897511 411453635 574605344 415327402 974710638 676870451 942492357 377958429 590281733 464529675 880371104 403455134 486832122 949959820 950994831 897243598 918902019 830029481 993319785 63712341 472713786 141602479 232299896 810802773 937334789 560343928 985408627 205770908 241205371 873854500 976053091 87210171 355057715 991953200 997011733 33920654 745406803 230487565 872625353 434814130 986966204 626615847 657928900 119540313 365431542 602708097 714621967 632778089 938747683 270308609 352271662 732175616 920580650 136713074 264696390 143816004 890890654 778175027 793235369 747910661 754729051 705212604 772018555 300620435 565553001 906337052 957533760 944080771 958591662 648017276 844693824 376602893 965760793 256973024 690913457 971650584 981586939 194732925 938281576 220387055 845841465 803260073 851220853 286110606 446443793 703703248 805262469 927262366 998578301 945765461 990592238 328911404 411976532 615316382 832555845 405338954 979186570 931753967 984874881 914365028 945133431 800073309 947413708 328149888 815040005 843536486 848510957 239588056 393542720 829740647 924708523 377105641 599868172 287179196 436416394 304305129 890253825 103087033 894401966 39274698 230768093 211652466 605329916 837462437 894257074 869054823 900706566 683851401 965511751 645784094 750505864 120903371 808281849 687866729 950333406 506142132 730427214 175380322 607443773 509174914 710622675 701808647 952260764 538689313 817942919 448921230 692011297 51599029 301546828 926569293 934601224 485946631 687998240 110854164 906383594 348947488 687680063 634254209 876654589 109181187 780535616 618242462 769500300 699778800 758159189 603668059 635030958 414861824 686834373 785910269 807908827 780469116 872779772 471915897 976367641 339452977 567212932 22768982 239029781 363393460 780389184 115233633 260948687 263021900 879616410 935225037 959256508 492771092 535069566 719836319 741283433 481484457 961733528 350130884 540668797 172532757 826967823 293461834 904816090 734290119 832900696 816204759 923955380 772827487 782268218 717212811 721479447 244791328 867919383 321542609 484292787 851196372 943526540 818726277 958906853 878819726 984602783 789685342 959380244 733674284 808528984 360696884 525114359 433340097 458629752 482193807 616091835 897598144 916993469 313958882 591481937 516558005 579406936 625390963 878524957 42328859 193871853 806703060 876079973 772342900 877522486 677699831 904737601 311608806 455287963 252072525 408855297 492859974 864659869 336516908 560641143 994490999 998452982 197258104 744498230 403242838 760160263 963710469 997253295 862425168 896053100 428378738 455159759 483859563 703513552 729858327 990051823 602180760 690601783 435583096 857008647 383257154 449928787 854954462 968616285 157945009 338712440 682145823 918722167 906961486 976019711 654765069 662051691 274849589 820805980 600051764 668346146 145002846 478171814 835230045 962071172 149671168 711523288 838103037 990142154 134643931 756611069 128526814 678571775 213718547 442833209 434704974 887404988 319546612 913599745 862454311 970032787 65520874 485160371 672598287 712963743 894435900 996511766 511371580 679888159 792066823 831356917 786635428 923966957 463931837 528768536 579227849 812470983 947281323 965060722 797732997 980035042 194756063 635370069 291684841 807704174 508046293 760533345 321535112 956777829 197797634 893624803 454722973 925025360 127050517 483993614 32754605 892541166 713709605 775304394 547618969 651241783 409626539 555475361 609300725 833814060 103243633 404259184 691632886 721474560 631469709 856625199 967183164 979290671 32637740 805402540 382352487 435240794 602765989 804465459 83449757 274548984 96188104 167275146 225929910 558309157 383948731 489482085 706046037 863885498 988477818 994789102 132477186 259440854 75757556 728833134 665144216 709017208 893841866 919535183 728364805 797626375 213522443 896528567 155004322 432852863 772112280 848483293 877311974 901628806 941030908 945174740 532229016 793868768 981590356 994816338 8629123 421861418 152801773 670805604 501987728 801155886 861820708 998197482 544441963 623682203 283822458 582937701 614259259 997829942 499949188 704086778 236809960 542295643 637237526 905505843 778760981 899285365 855216607 907438734 54601670 144210052 663808494 675766194 329820418 808690598 889364524 928880398 561278282 673698980 6796367 259928495 558475630 860560719 887435784 974082270 472497640 914158768 517616135 821303307 474493945 856572025 976643630 984069738 299479336 508818867 420401994 899947454 558553863 862823083 253567403 584827033 200407017 953125911 326537206 917406972 541464542 955231045 934595750 983654753 889470554 933867086 894895947 959523677 289373315 988294456 980369537 995266327 588674746 793515544 596133504 761554820 777971020 989234827 38401480 382301360 719642156 931804672 127264655 171575438 293287216 652382996 172229331 617740980 72509145 348031332 122071639 324868480 198180456 440116950 889284387 984406622 53688055 200174520 538598357 967039181 662873504 686078832 148674183 435402806 510998987 960038064 133068690 491482512 899027205 973750149 167648245 656292906 959720428 988005995 866094121 910633627 212250479 855580089 990475503 993698715 388571410 389344310 22519040 796876607 30897128 809518487 128968039 707095165 649326852 916393773 539090111 736907782 322813944 958373235 19785701 894535984 542481923 817303380 649781071 772353609 917694920 935717692 869133556 964732242 113626944 753494939 388032958 504998094 915342171 915493940 48696844 313684908 400553076 867123460 797069056 910816206 917951046 960819925 504715293 673496855 295083878 430227925 453710498 640451079 945963215 983243970 239518017 439216984 375591264 619049199 805132356 859375318 897809015 997340090 981436529 995551361 858946192 874468749 93672883 200683027 900405282 913507553 118554770 598361873 359891430 385817863 323082627 461653007 822697316 966476886 995112219 997723262 52342419 979362607 872870376 948173278 436947007 556617409 556491633 620432972 424210048 638947467 214091103 626432719 554952147 854429571 138639216 952388733 882122242 976393236 750080026 981113137 783041515 937695972 783673850 804984361 147816797 733295956 838643973 996131639 93273581 181683480 17360707 576146425 146476585 178212206 738741660 852907689 921438111 975457350 434602276 683844310 463723692 980934922 58289361 776482906 604640447 696448419 761254079 903269810 74525061 232021837 599472957 617039119 778231660 837411581 53291906 412136531 835404811 931434958 839437318 918456327 850502736 922675178 791891995 871829580 825908356 889615915 148630497 756837983 364366297 367064015 134206277 506220271 467804631 813122506 356595749 994415436 43675623 377129645 911413231 917690490 628299318 887245601 148240824 486827634 312233187 823781853 83728047 921778304 130223411 654373899 593463521 822935517 195873403 922112062 833700786 913103086 406844346 973117909 133962532 801918264 621726128 742758618 619022081 629788420 799279137 875896908 93689544 747917369 256398312 287957306 311664064 953527938 640650182 746961263 896244675 965158440 521644067 792238309 25018656 526298459 716364678 824604717 229319533 967368105 864966566 884476795 192270047 839121874 421544124 955251192 484436597 840539925 949922330 973380356 326773986 697511227 170412045 418341872 434283177 988044885 51050229 216679285 798675839 809203576 735299811 855399159 219363851 811934898 243611834 337380717 388951248 761349672 496703445 685551754 35804271 784619327 658602956 822705294 143257902 545209493 17437824 650971501 716513703 961768012 80172819 309839473 61196250 711767580 895539292 967289917 440145579 841685043 902405368 917480455 583167575 733625104 593219201 627362683 371328369 702752894 351849810 487518150 678337591 679658706 267593155 866289848 542486786 960618629 37289874 449362025 941681460 950762679 827644021 991746758 993916538 995501059 413931237 849225399 621715515 673553422 494254605 520552787 84031495 658962044 938093906 985947346 330804969 847563572 973131275 986046765 331270590 798016069 106257247 900824197 548683565 917380378 609378877 936834634 659509431 905081635 753371011 845988378 620780456 807974579 441482155 934957607 35410099 717533578 325568604 736119541 679169785 941854769 375571847 403956671 703660705 871420265 997231732 998691727 174231309 445428709 872866557 940449578 715467428 764373695 733734991 895705453 200586608 457558153 159977242 351977145 775790058 786659663 712815501 772873823 658191197 738658499 493947192 518834955 918527117 988257593 182057931 362872481 501120517 839814229 57496081 959443060 714457500 949137905 370064849 665015743 229817750 741282192 296192626 799736454 300212625 819983185 319151049 758436518 575836202 860808636 139906749 164465672 781978713 851891099 765804137 828623555 432214643 613589373 1625023 587329014 94175176 964036055 554967244 582741993 56082793 480689831 606630366 818306348 758496259 794105783 305891271 811578562 360939416 501013616 306688537 565229642 134341510 434905512 457910905 607575478 546010574 562883958 443130489 666202984 592196402 952440540 856407476 972538483 762521830 776932884 168557858 784780201 376578583 589637425 89345576 729324395 708265647 997483344 498484447 555487137 268366660 830195662 140280148 738825647 749416956 784972586 969266530 976587955 861881029 907047405 613394274 814176289 120774959 674727455 84102526 539701849 232817771 931710624 674804007 787934643 675550484 809601598 428336009 527948773 519130904 853486559 30929937 111542939 568788018 628748407 419734248 831988643 255845337 788385421 274669584 883996126 485034573 504303265 255607880 703843589 393999611 879913304 538990373 980146276 569788554 903291593 901719010 981711190 491704938 820250704 227009787 500370845 130328157 838680704 505291829 935077387 670894437 860428418 276568705 428172925 257408023 696853466 332068033 785030552 708491395 824433858 118369989 503800476 818053340 987667001 390195102 809386305 970161578 987409555 91735280 459011221 161666868 235724685 197498660 896678388 304300633 512407345 972443710 979469166 52315470 276452892 449799178 869179434 501272474 544022058 927231836 940620917 527806037 611087802 990557194 993490666 332623587 393239330 753822940 774967233 328875225 345225091 336584306 428923957 55444420 550457645 546319722 668277468 801159209 962659446 711443784 838138294 41465662 540590006 587681914 852791673 178859222 436689658 81904942 976754141 946069866 977330227 126327234 626418666 592889206 667497537 801550678 856215567 94668076 845258189 554304575 998754113 320641940 675916636 263998581 516010350 472511392 920163481 830811648 970249897 200043668 371219718 134302516 163991089 30783970 320878007 998101594 999289050 624165334 922663783 85488331 238515583 538258833 690364486 757599010 791831377 563339919 989270414 185983483 410216031 259658690 562744489 173532695 654687536 371060395 945759261 564617347 792477693 197022177 594875017 497739312 761427908 986356830 994076214 754974729 881189814 559153397 868687944 360939038 904488392 26080695 163740615 44893203 117790143 381351212 712227702 420327570 541674723 513503653 754848592 714493867 983649758 11769645 105475135 74926341 254246187 738633500 942271304 193229508 880807796 599869536 775849717 194633091 689041103 855588599 929109275 779637541 903719160 175256918 317055537 176375236 986538401 417591317 674786177 282599860 748455233 988040306 990258450 882082892 893754625 722807758 895692396 447136233 506126627 447933515 713768237 141246026 262161878 215788476 255034135 819366283 893521003 228449444 483445166 812879815 854800836 394105677 841250303 163486227 728987025 524271364 799877204 489168175 724919869 544570643 650365351 616547485 696464959 907270109 999636218 325996109 602566588 527725650 858518688 786373807 850321809 592508588 655373404 581217915 669234541 607637411 853481990 826275863 964974409 397066723 883232740 61761488 158149936 87744828 827791885 938217143 951313712 638611790 690483131 216802204 350706891 534564176 616280315 857837489 863335412 903661819 996871302 178302275 366651793 978307952 991333544 70116854 410254312 551862082 634235192 472089795 941759944 363345786 563499360 885189575 899299646 730784174 789290073 392332054 522817269 866777245 877568315 573041473 913245632 641903579 986001874 924319728 977357134 736897504 898047469 499473662 670573069 742321181 832194126 938714971 953578712 121882148 365806921 983366633 986281258 610118597 789410040 576334953 637055709 712985520 959089947 415208103 422821375 709872159 814639934 558766317 912660289 988295450 998464656 519871411 713681502 525764913 734834706 881777317 995768820 401170121 614206753 65931702 440071805 701607 653777896 19851719 42790292 405817449 946779450 911314356 947419858 280674809 954899601 283165376 789859478 53721502 667347713 780462014 882791497 316583458 882364513 301416117 548229617 802874729 899578105 619601802 823743890 644089360 675238799 181023204 643424927 992451160 992900773 982823402 985747673 974951088 987063031 565341260 873868161 270218761 953500195 397568542 885508112 585332259 750711270 766761395 886602130 60652282 129426565 235513970 305853139 816331017 842423474 395376186 689043349 971630524 994369052 982539873 995715392 658049899 673438731 656398683 753864571 928261102 966048799 890047099 896161277 691814289 954989031 243608845 384428274 614829901 657284622 439559274 572396041 236193090 974364650 79963149 760258754 628113255 816532847 367362400 988058906 876255325 892236326 667010567 779026136 411764543 609794261 650276889 693241117 181360469 532585965 132057451 139998251 751223402 771110304 560188104 997411682 140329191 844877710 488395524 960999814 998393615 998397279 183095318 666870202 33239640 373134288 717879002 964909402 971195109 982323453 111840021 239597184 261136195 501028991 849939690 852391098 997356553 999869585 353251569 524249042 310439099 374358845 103088817 881719437 790564514 897218531 213576792 879618646 256968621 981561272 28105447 610632243 384130820 715913193 144557228 145069794 592760169 959785861 502832461 808038433 854888636 902279386 255864193 957531837 711834476 854597702 439513592 472751953 625724159 913353992 535691366 839725997 187869397 908101782 408219774 837376217 762201206 851011097 552447293 651794974 406696953 455136120 931359434 947401091 262386030 976061107 729606227 797661870 511213309 817670457 446100065 845433954 474377535 720261964 120017158 769835129 693626554 810239219 408206004 953585103 804149344 961612627 46375429 194288660 813601328 972749265 787935014 828807830 922665957 963527647 213205721 514926018 45828968 618800703 350354088 584155792 106786343 258825813 826280154 902445699 927127511 948721981 459155872 515425619 798510522 925084760 768865120 807717917 965100759 974697095 485538784 633668049 48894443 365608065 449396916 787192685 596456161 994723388 285975968 381894770 284862480 774128501 691453578 998797005 588847577 933624251 199436055 341909054 368887518 869422851 655271624 876758247 91509309 596883477 885208601 901007416 403639591 451067806 129409088 381346799 982694357 992949141 134410321 452316681 653356484 994646422 639735007 698231108 985199839 986874204 648633254 955823370 881852183 951997132 622584683 960348500 844611115 859205586 200327343 717236402 620348380 975526693 19981121 98811681 300427051 437965527 380490266 571211855 363692136 923590246 420293452 567592132 761198541 857142749 178288955 869391937 916548554 943574723 559914011 876406818 866535899 896435564 393847338 663869206 905271445 939891321 250309551 425924008 450864622 528155078 520375427 827757157 118440351 845946012 439074696 926003186 346086384 449512219 195448230 670961327 976969357 981574249 366900928 976158696 334104002 630409177 319296159 976966873 218241429 655237431 614681404 704431986 850289091 890524048 427108452 573351636 220496391 241578094 394327724 480723791 733494079 736731611 615068372 960660435 160921407 502881694 870750887 989167796 80429184 138829126 33441516 669633748 695015668 857444099 131814403 632028024 907439549 954049173 430233236 743039123 280072656 317214808 82602154 225870014 315742940 316298588 524930449 698972737 584933497 652797976 584630255 875657608 98247436 505640458 684996167 711311103 546510394 763037095 328108858 745400040 88128473 765176529 832520387 967789041 266266219 424239621 303904142 591886305 909715724 959728115 926438638 965764406 460908547 893122855 531279811 900234691 446117193 824291742 773952756 985735448 996038376 998449461 484682620 718406516 812581388 939177064 126956468 609678361 376011669 453872126 345375154 353127552 647217204 710728988 62134065 984068659 863238874 871881370 95459674 664968259 948743387 983343589 699137327 770438025 495205099 784658021 808286568 940839392 242673203 940387056 242580642 816847460 757690900 918714877 106166535 343525751 59602037 771624099 313542201 939664659 756643420 814571840 633264781 891509397 216213445 561266219 272724254 769702932 389695023 788163646 769871299 909344714 634511041 753433764 734156244 759686559 276923228 661275019 530056019 718809875 482065046 724882991 952654345 956590959 780836190 881140822 621578423 909612611 41681825 61519111 875041093 949896236 812370285 817112500 72314020 131449076 345939590 487129408 795269820 837157295 833515109 882033495 641713390 846093790 557974622 998282342 61896176 331569576 286109867 898253533 343484813 363659134 127460295 240792933 570921280 650521009 391265636 469829429 869088876 946218223 615330365 639619798 332514238 868002342 547127571 825122898 341263558 461416565 261761194 968004509 620144691 636831957 823209187 871772210 281148120 362703946 981636040 990979809 144212383 716878370 547307536 699877254 966184687 978525722 35348171 111356914 587331093 842304845 612102535 884397527 757820193 812211196 829852299 939989064 420987714 554640667 475632580 617776266 797794619 871106787 397905563 454593453 697085753 805501097 304993971 905895628 706377981 997626708 106776612 183869889 279423592 323115678 762334435 782754478 788798502 866731736 776087453 810476825 676371750 728307582 315903730 714645586 528906439 887155075 752699297 837785214 655440919 945472397 666432822 713283108 902479390 927822001 164901392 721602015 614470978 791218184 958018200 959867342 914257437 924063499 861447396 973904230 870133591 930019142 937196484 968321354 408816463 626351431 233321351 239437948 492787480 805082086 914691479 936085182 594031400 829318566 518614746 994881357 487856071 557643910 130340833 312608227 453449665 507944667 454507272 669380140 369484322 534310774 891582312 935994461 914552560 917798686 499155094 899390644 188640963 652474164 664623915 993688108 887452471 919178688 394200116 812095786 627598033 978649828 410416340 950400039 569471851 826665172 205646229 598414359 626582673 700574941 386402660 905445732 707147596 767689736 151130586 340162244 494110611 678932681 619342845 632187751 511678501 574214397 237035266 598682614 848484380 874169931 363763340 871120943 568793655 749372191 381708646 742185340 478012416 992454483 19771291 542469445 693145959 860243992 238095971 695767236 299508062 588630113 323895706 685193166 669228162 782695990 794336567 823913970 491853574 715488646 656402296 961606913 530248576 734933209 988239823 999036671 83765070 434692527 502456082 726435606 227606590 956035575 777435583 883307054 261183220 723717700 553373212 805477774 717281172 843937663 884439346 930670905 373572136 792447235 548275888 665059755 655081243 655547900 660920791 912436730 494149853 801289235 944308257 964819288 219908345 238739841 199084279 731379593 805197520 918359083 115803424 359121685 381145398 471589347 800083991 803127137 42702307 781016789 906300717 914935411 492218868 788184831 263573345 367449401 384475000 423833569 972642253 976935056 188380435 416888381 42256028 646193510 59622347 773666157 356288169 515946957 701740554 961007892 469799409 475485912 212266145 231663421 744325758 994022169 897291932 908325383 279828673 739302416 742525064 861417615 166406676 218216372 268450256 441938124 831893214 889481894 24510849 449717485 493586423 950788539 727050243 777996431 980234874 983025940 595021712 672599133 816555391 881749401 486741255 828775803 970027688 977155946 270463884 928989220 474620713 629088930 947898197 959933352 842098986 895711357 338532305 696107631 747426766 800351221 744428282 815994250 357444757 456972095 174081092 725127106 873458469 883177888 684086774 754719694 713803899 887384186 271576824 399176470 262771056 493246850 119807801 589164919 764564462 930103859 198934359 238815379 738850957 799715485 529892008 828213562 983107596 999329819 986521744 998207555 51512704 330224185 301355131 363546314 561777593 734014015 944349131 985557344 822534636 953153903 688228922 892231805 693234480 773564021 383879589 941365644 544491717 864431948 382587663 691500077 814320291 847446998 621775926 771660747 996048989 999963331 881180712 940717960 958588511 990911129 760916203 903389330 484197722 785888911 629893947 871483109 928718485 960798543 336490891 715975015 733314306 771482947 430797895 481872419 621037459 949035963 831029858 846528328 94853005 397533855 147265824 336010350 377415828 966953817 58892242 923409536 809605800 830592239 787083375 924843287 100665715 780807864 682982030 795932780 342675609 779707746 720638642 721573870 234622812 248795521 165204018 897603021 943729736 996660783 524889413 817374333 445935976 555590977 714771461 922343861 466073271 644204799 6959594 988095650 888189379 926215539 674304563 765323424 891265461 896930613 72380464 130102362 777084593 865804134 966013337 983128068 733673486 799056841 687477215 688512236 881539978 983460975 998281801 998794467 431207082 868889738 839331771 942282022 385173415 561432790 823052757 942076867 74492414 415642034 79478956 241659156 478413987 484566259 39029731 678201364 135497544 358316057 126275026 190702481 923445278 964444120 463318168 660280952 120739743 232908098 100469491 316698046 40301715 350113549 526429725 767303084 940712537 948678273 563820725 767182063 116219355 843764303 332934527 568872663 158778112 655965053 135105385 280783166 525841364 735742502 358928613 576391208 695387219 751634997 563568906 607945097 321141527 849048218 864482093 877773229 424533969 491222525 910931826 929258899 359908162 624861009 854948626 993744765 748043821 846411262 126982209 442802505 420527401 747544574 580890302 769936469 270506296 793259046 199269148 611365236 463343368 500617461 987928093 994182022 841364424 892379268 150898833 219136404 810578247 845112577 519659 694984563 925675367 996986784 66090491 316682220 234304950 719046907 898374491 991440321 597208742 945677064 314376877 881927402 453619890 763780397 973930604 979926943 539431523 789106326 742129073 864022825 931216863 937698994 387703596 531300113 734620296 954661006 739407677 776022263 490274674 665487837 107815398 664618924 383135438 678999766 338683501 847616682 150076640 840640116 335706833 609067085 168357305 959376551 602507135 631756820 17974742 875922671 272866862 437918301 500365617 992050916 233314939 303166789 779850617 960990979 697282281 701860957 541748160 749458324 564372507 943379597 828568678 834308519 311271524 775117907 910312408 965517958 534156558 865751618 775088616 877115857 625204232 660594332 63836520 945028831 471155970 716638157 37743287 660179711 909600927 912402579 116672422 790162158 4635534 584030417 763030672 926735726 838977806 956236889 733032941 971373045 269309949 861027567 885748425 902473690 97464418 621997032 255761794 704042401 484727319 984052512 716260295 973778838 971169154 979470257 107818859 224146476 599593057 712280990 736907236 837633787 520822864 806044243 110009779 837804299 766173598 909094159 999782783 999897522 499563389 737259933 927971045 991257399 520806886 560784136 189458186 341125637 749079043 808244356 353568190 894809708 851748718 950551093 538955031 632180094 237579569 981243050 242085983 653614503 798510856 919660487 9509749 610174484 923529212 926553500 605047515 638276396 459244555 786155789 834722524 978480615 896972120 917899826 731260909 853031664 426494395 506475880 256482605 589146977 736527459 758038046 231445500 462779375 433803825 927047396 598757450 943092948 855032186 963788116 756268143 811527954 140416770 177769632 314020482 601592082 990175537 992960779 745228699 915277042 212715358 878810215 549397713 786437310 503083308 627828934 563908701 615599376 689046579 847885127 335178301 539695026 170595172 595050346 228716158 918500147 135739312 155616281 196230639 995550592 81794475 688535537 471242824 928887888 23352480 374751244 393056763 527090175 77675106 182787875 199367090 320895220 597342419 828095690 545565904 680279536 717907879 843548144 994087352 999780331 214765483 665286839 275454305 357129206 56061659 920835263 193243214 917501533 44371673 352914852 407917191 661447876 937625913 958678376 860528503 908967635 387689826 652317481 483755138 590719186 609112785 974146605 647594371 949702179 652094481 930573414 968357395 981180473 294525566 718447543 836220275 919077289 703440019 932220089 482525303 525159363 296810371 316584315 46211492 873670275 359098272 752842419 575542705 868090848 763847168 825368009 412050359 789204213 857664047 877840498 810913328 884553957 202927354 260220437 158544146 534761473 594309269 827927384 564543985 650925863 997688647 997721152 433608726 829338050 419700871 897983193 683988124 925397314 670599921 851376505 788868900 832578165 790543114 969574073 57974660 861983458 241158738 619781051 429246984 959075138 835308986 956862180 279867130 995984771 530348430 967886295 705752795 914448215 406989994 697781091 972077672 999176463 899095182 968143391 479320429 590825477 757044081 907560408 630247563 691340353 421351430 519634277 488780116 720233416 67461104 962580095 187154208 922986563 664304183 766834008 823684155 852057213 831538597 834202769 945731289 993224782 32602112 699422694 919955772 960316019 528304519 885233638 306145464 985862585 346155859 853505750 295453801 537554248 418097901 776030353 957419690 968988107 291431901 397775939 168868410 850330753 642889785 862055597 630360099 638213210 566206204 763064934 602101250 814904441 70368232 989187189 14723656 620716080 89099067 273682014 481617499 620977165 8247314 357427521 921961932 953063448 543397922 691405117 46416192 453170172 954679649 979565250 854865642 929043442 405479233 820546672 402873158 626910730 292053462 778939843 168658613 639634402 806629518 975341227 325644986 799982699 50577154 790439590 450327064 509749453 104493189 176215064 867203297 884142415 804110605 842485705 202168079 805969913 205791102 727296606 860447281 899186850 331225604 698867457 815159887 872185656 955192878 991659924 616025327 716779225 630945623 806314907 415338127 793006825 485951451 871388789 528664214 723109190 342092494 445237469 655528906 908156014 452127449 579123280 231263483 642054219 69575630 726570163 816522860 959533969 73701254 982516022 711174661 925277870 776287101 994736088 972684391 998393502 275681999 758216547 171388955 897749229 345283647 358265461 466531636 924406147 42730198 702175413 191624781 395714305 148332608 553117912 289807581 966724014 286348263 856095981 430852603 458491825 458971910 994505957 479591517 505016115 24569894 752383932 778251958 913206950 562852064 732396160 815052035 824143321 429555480 646994400 221974300 518315772 728557658 828807923 93716939 114684256 146746432 785137763 506044348 663432860 647150409 706243642 793413563 906187611 938419135 974011287 797485482 898184098 327318009 436098380 168831381 609241094 741623780 833202769 784319669 883870294 589245186 891412551 726656581 752432122 54440337 965495620 998683647 999221086 41623155 881722786 553553000 997302318 925419198 943853542 964981773 993093455 826691902 939620488 967234305 998566422 32459323 151024121 477275222 860464613 24305140 824723877 486527196 760267193 622146611 634791820 473619258 746230839 963152667 984007412 343990653 438934397 836663178 961407944 264529628 612491687 291206467 350742780 328759236 771994297 73022610 621248691 791129276 976986838 905257136 949141567 341698118 660837033 34797056 503298913 416967740 655406269 382205433 992473133 316881738 453016150 20574358 135546203 760887976 811520747 764234108 836368718 679090600 960842694 810932304 882257789 161425763 493089205 298983839 870867043 715815437 801907169 86612845 809477259 688388057 792432653 930104669 956827562 66156554 578719362 415159941 851823694 719584259 929119219 932851098 995304380 2996059 424377926 746097344 783551398 77605221 205186597 268870785 373438685 658953283 802248528 761794344 877007959 247622791 700485965 420820999 455420845 68027388 283573748 815818813 822622341 943230321 964221855 208912801 844057137 938959176 999983913 843091002 922250511 803813653 868550040 538802113 812440387 655260562 859783083 925682645 926679809 908283362 933830586 713934369 775360909 874765856 893336920 667363979 901896836 365235865 593084892 885484094 965691995 601011491 709035789 63616557 558250390 872721610 874345804 406563519 609588801 322547411 752655199 316247274 723484200 603206288 885816138 69002280 996773369 951481723 987104324 812830330 826404656 965681454 990610435 581283756 822831880 366430280 755238911 296654346 675252271 647920158 735072774 449223438 795422166 879001468 881432987 154633937 304364259 605695199 672529823 249997568 722735533 132972979 466510768 505603191 518179771 498197357 742803547 575126077 758512582 242017455 259956045 484197882 720779062 239655146 685348226 888063945 958834985 51262394 702922055 965594442 988255519 471271142 858264163 4265731 35562064 637132429 733478638 353398866 547412557 251287289 805593471 35880616 331496686 876477842 904269963 888196120 929048201 80352331 445547438 232308895 684837077 397918358 443579264 148578749 187816922 402327642 785292024 535796970 948472201 960421423 986423451 851001898 866977430 371892804 601323312 617611981 884981197 495787318 556551645 821920850 906914806 210808070 362081426 956179937 964560643 955219127 962152006 96919658 550987074 223732577 491676423 605637811 879900513 650676262 720721246 833715692 884480555 77010953 428771353 282085858 474959877 34570692 181521467 470606157 980443943 819999673 926744785 50017670 202055528 127790773 576182203 84129910 314147360 272542280 931968489 869513045 874046855 204243506 339672700 175786030 582225441 68058155 955759226 656119951 892752611 448299617 704962564 387464826 446989852 663178883 846421506 138765278 623274890 854189959 940236023 798003052 812559925 254681899 329549470 503399640 627057866 82871521 145676503 947222382 957735408 893773445 939873022 973000118 985944132 725305705 893235607 407510641 684291619 446738579 766267417 354378546 588133263 613249769 969854992 108271160 575965889 221055490 801622947 190485160 469893611 704510560 722557288 744516186 868077436 7035387 643303946 999950089 999959892 566328006 871524708 220450884 645812562 396673832 953503153 849036883 915010971 83200887 429887133 392747188 593285618 956971476 976275775 815314580 898344819 96544698 778709837 89403839 983169534 987366442 990635374 832810312 907022250 130832790 372964715 659493974 834421940 322008973 373106297 936168376 949529106 226263163 620117583 26158743 363211424 437805400 913979586 438930404 907231808 310345877 587639683 281024583 829532170 808614842 908271522 490604028 541139739 281781782 370185828 780441141 932123833 208152638 247390858 412836605 998499834 205768450 729609284 451814337 792414798 105889184 184592814 729812752 763936382 617424470 858416320 372623597 918107982 176725443 664946017 896144295 948147565 284863644 416126316 985415778 997042931 887651119 919159439 191277537 746209380 283836588 580908580 6762166 934518816 640233350 825931397 822578412 891056334 586091939 697861840 636064975 728442298 962976800 972621253 625838436 896803994 304172210 590179746 86050553 304109262 461529513 884657603 491690967 542852581 67967905 148061422 93795784 538655467 53258000 700804725 132581535 490378769 660745403 719126045 89268818 244215021 281416924 465310919 371914537 586996908 354894849 810526253 476894346 720418641 218342026 432104210 1436164 664321846 74262252 206711902 653827429 995060635 299676778 486875507 84009372 718994513 1241142 115948046 488539147 724371924 234487143 432189521 805434306 853505161 980257664 990454929 632526553 856008273 46819278 154233486 409285542 619584020 844993062 882011730 848735833 905392428 50873451 434934947 666648699 864259877 827743314 865148206 890156810 990772951 312510472 766119240 383254999 544512325 186141032 261528753 161713576 793440427 124478011 772803972 552611553 554989880 54704672 607875779 344261501 511507628 298132463 691795424 491770772 550473874 790916638 795402088 169664852 628467503 495846459 734095710 296761382 364849915 306783829 670089137 578142801 834929735 847975981 923301425 914334488 937367004 845135295 885256617 182268440 803879260 813061282 883630688 952652320 958124114 60048505 266166599 158365895 895648196 524379853 904565531 396331472 432365737 548713573 875831408 889439244 895149834 885138158 966051633 500147069 875409788 363836949 976359533 832774138 974849627 296094169 640722809 820742716 990498317 657154678 917408360 230196934 349077483 599415447 865256538 250817852 502697663 895013540 980180477 760478533 941208336 171748250 492499302 98486796 101747733 24557154 564443163 789046928 845194590 220824783 674489008 45426794 758029117 321439604 987000047 506538622 739428241 32433833 551131585 777540576 891535444 705630810 927772274 884565550 917970847 793515878 927956922 598062278 967891418 428836156 952868787 868751042 894678452 188483328 736536281 449532401 609125922 922647657 992140466 233562636 357974967 304368424 793236092 158582254 514709845 776190670 853425983 398512885 567008364 382565282 538465579 916615312 929108384 600572207 607583091 877626053 909041735 929056577 939872582 898771227 976704886 900740132 959156828 599928990 645138898 661263586 926544071 543436921 731909304 540645835 794307604 888442702 926390540 370597909 836953017 819169175 954137377 507476998 684001031 294248341 692820885 906811868 907240918 644070378 703060985 245888695 483002420 793080017 956865132 364761156 630893298 645770507 796374989 207206777 962508368 642155235 746236530 592206669 993194554 683548695 837405090 905220297 988027172 195697015 608661623 16584550 185881209 725289781 788587234 62694683 205627823 678422002 968613424 594626823 741082384 598872773 637165104 751601507 903471365 640371298 724711496 875445977 964616932 179551983 761599653 134688938 303085552 705280267 983402142 733498832 852106534 314711277 796066170 521673217 783340853 558014092 886122295 606586521 928665336 994492262 999977121 253171294 903896340 429857352 537633208 44770536 825212327 398117505 644427383 982814474 987901184 582665976 824366691 463152247 488912740 679788907 965457917 499489019 524882950 760955068 906091170 332624883 702070627 414428700 684733852 264138865 850757010 922279311 977739462 766711404 834597193 602380076 855809457 78134858 292640781 323162828 458148914 106098592 538070976 74794357 931696225 145558656 943151254 970697316 985952384 425816060 498622274 998922186 999335994 961367742 968130652 239101445 291474106 977226024 993243943 570283230 909038517 531521950 869833330 877737408 981104182 769587481 845533897 479423242 729904657 635293179 635800555 69323614 202319529 551159491 955134332 836305440 993076525 313422107 362412374 116185742 842536040 153701210 360024420 806130616 832675537 901732011 935606047 211305787 598238198 117334700 609671438 268110342 752983720 945456270 950360479 210668555 641476462 787748922 835049897 287192642 757720278 373243824 634257617 380932986 524827422 958241721 961648087 294044521 840661319 825704859 959662783 668972535 790186428 722257993 934930234 576736130 833056088 480074751 840516631 428503080 656070047 928608692 987751038 932524728 968343796 169407746 980153716 942513328 986622518 483199987 659538476 153086718 716065472 501724496 810956150 350955608 612020950 191932820 737768979 242614011 337612355 970700325 985639089 791974043 902033178 801258002 988337010 221188116 719773859 681571799 775562178 146011187 818381323 342188571 933375221 590890705 787059672 573426656 658169412 106299904 331232484 45506895 70199633 640686912 654598044 836053643 985498814 534884107 948591382 450677669 531095512 187603819 433004253 37796047 704966992 514333735 622025249 936226188 993788328 625082980 805815510 416293856 823014209 390284879 566018365 127537914 191832404 525178629 670435826 5010010 727500802 99576440 212343361 646791918 951829447 220106604 996070575 916821467 984500093 732210647 788292481 375590571 723083582 430001470 930008896 343944582 808228319 333264731 493914683 459456334 968488910 540227750 648915365 154023279 365595249 66848008 682474689 31196750 304628322 733387991 950190731 40752643 399316511 198570370 669151651 772157775 809572326 89622355 386253416 109873539 160146910 590458982 726559328 967173421 999401785 92179404 894161017 594177720 789253726 475330878 706972782 74098840 797140371 910276147 989072938 910555495 940380853 141463029 564896736 644421661 775541040 666091331 776671119 70179587 314808939 550310472 792313655 182177166 964620390 4243263 317950611 356724894 946142318 823218719 899495237 539137580 561629940 858236126 867437927 478889552 657228393 480130798 798645077 353095819 395685053 690334943 800516957 618876297 877175526 992543215 996170956 694189149 740197489 736467884 990591349 781117173 846599245 433791086 999470027 471879824 880809023 965434725 981413136 386064829 757080378 273153663 770588532 274647141 458873341 315346938 858579341 228902137 423849142 451695859 843861366 368255532 782581197 470134528 518808714 234710284 580043219 649837290 951196987 819481532 949682865 339432153 886302527 460264324 972978576 773950912 783381469 655771213 681833064 835149332 893726503 553419621 821886887 231411517 960574415 771810048 862720708 775904415 875564265 95948341 189581918 700870604 913637748 467116157 855091514 676285870 936447024 905412580 951185257 939151466 973551977 855452329 957332956 382948821 483171425 105894543 595660137 402279371 655557880 210791014 336543089 72653068 828075039 795690453 951696173 393057385 894376358 713039884 766903767 954303034 973872777 173743562 189968270 226114399 350749258 525661183 768850608 315591449 698858248 234135335 447198955 626092350 999620598 977406085 982113500 81252867 822700040 808873369 855955991 71375257 199834298 524235745 745088832 2038075 469386477 4818206 269682882 415484039 873065211 493255286 649416670 945441820 971182305 125670405 919626718 419725562 810444282 892165885 965586140 871789397 959616678 206904703 954502850 57241423 252067191 753038973 979603081 562708044 676310158 29738023 650169125 440538689 509707794 70954169 911433252 440436173 736500355 243860844 390366088 333480138 695451176 700952241 875163921 252320512 847390171 913638864 921077883 61476053 528151844 858137964 898244308 917696157 957656339 557676004 727920680 421474529 829385853 680025281 692993521 842140583 920461536 953385857 991127000 937239236 953298531 989573768 998474754 757791368 939422004 457804159 737143996 842661786 939904503 907160431 932269189 157235398 847378748 910575817 916590078 184684946 569138390 265371803 934342905 878018369 953606905 509973369 765490101 620087937 965069831 487445316 751607865 91606167 94636278 269212356 873375628 618738165 844882754 655978148 667568170 869603077 948914414 726319584 734726785 274724314 409228371 55740960 707996899 704118127 716267459 357555892 678727823 228397321 376981578 865399411 887302941 42574619 399725209 42895394 560837405 875413456 924664863 236615491 940624236 456374699 540055545 153282108 246653583 247970536 409296442 297610068 397989357 289017885 476553514 101385490 390937952 32618243 796692935 221696602 996144172 433916941 520904001 119493535 626766201 403854414 606129272 406205455 880880493 996338170 999110957 642880097 779417472 711843870 799343003 832565285 959830260 434826931 437686798 342655432 909185909 304603647 809052832 131565825 683199000 211489108 354018646 994240888 997701739 441103198 778718936 961361118 967354959 535587695 931304122 651117750 774465936 965788592 988241184 389913910 422485417 761110969 956632275 311682626 437003643 183474248 561454385 351605860 531100391 707815799 979116106 842944386 972974907 246937961 944007175 944405373 985517335 203710457 628582149 226857063 414627713 820012252 974300404 148112577 903617016 787238140 871626923 398113013 819300177 105125574 210689192 804751924 888640977 631258559 676316863 562524154 608327729 43425278 535284626 911567884 999943915 786723722 808702468 993544600 994746544 421289811 717463940 56060623 502898449 930246664 969349013 826280163 989564747 154040977 363166174 393041579 566369552 446868541 483616141 401887341 944099464 474592794 646279194 657751145 703630026 288813863 640396491 433687902 521943757 814790405 937944097 85502769 284248741 587822720 807053056 70401806 769614728 423907609 945357853 737083232 962846103 92434504 868252715 513750623 830589165 140778795 226709371 28182393 112312238 916221711 983570499 49133990 90079262 438695660 641380007 340498290 576692143 51156069 267918790 676178861 939365399 938663923 958093630 10885836 145670796 293335917 611330130 661869441 822345041 750831230 807920097 389098847 999195514 265507749 372782018 132706352 461327643 295356614 297594973 715026265 748089680 893387630 978136509 372544103 840396163 721319995 813402547 859500042 963945778 826605321 990278406 262684247 656010798 296270983 777501718 851145395 983543827 662902257 820509413 610515907 852887314 694999399 696206908 387277619 804709153 729408153 904032169 678122936 814945017 244693690 462040607 713045920 972479998 176815830 405367243 397871794 837872648 977478295 977739988 173606672 635525838 735903818 818181298 835073081 941596589 922321376 940875447 704208242 907033641 934722733 987169710 55850411 534176017 872971488 971947058 373225583 856697850 126076669 535009581 48085414 193446788 157876889 879054602 345164515 893685227 389214995 814444931 375768415 929949085 138349472 174741475 45361250 556554473 256799093 457424822 530262043 961107277 608818624 867707860 28398221 308427350 517873071 611968366 440745863 693968610 920887263 972090512 771543135 969284959 900419588 974848136 892624598 924234153 792095177 887481568 836844392 863939581 998509360 999813799 856745242 863539529 301097954 395256747 946947023 963527769 469343379 627607478 763299711 808574919 939360610 952448946 140581046 858166099 695930997 917446315 913647617 990269018 2057604 715736184 139296983 998474316 98755376 161688177 586722941 759382338 454046633 482033715 589684924 842680882 467110657 935520602 501171182 909928895 644555029 914755061 900292486 972137763 777320278 998812120 664028276 764512557 275551865 751338184 195772772 836460415 643681337 966632900 444384705 776987428 379515220 650770726 908148183 997539997 901036277 973366481 559261073 708395537 265150236 958031346 193792084 642220691 377191365 964426975 260557832 480278709 221033952 277316889 771046930 890421820 572494134 581017589 685841846 825929105 491762572 982964767 290790612 991940602 971108708 977395758 467830890 558628395 329309506 582385061 938914601 986912176 29122292 518917747 347809288 474427211 927469768 965413313 168799437 170091156 933257508 949059084 552078673 647406851 663962662 962999005 175018847 212123882 668502518 843051841 972959069 987114904 101073141 140672432 274366509 877864783 469020178 540611816 841977881 968194994 482399899 525768467 283955965 514787628 331144259 557383225 752436567 866582862 986822806 986887263 68043351 238621594 710272722 711774647 10989261 473655811 225956302 417724974 518139510 659264473 827345632 994263742 416206575 555617596 553818886 631525888 881603660 944112083 897929379 988350351 484008225 551103607 135992861 952124723 519650939 965952760 421812632 893192208 535884407 651762408 365809368 862490912 154585639 552035027 430550937 470439213 961046104 991006526 384327440 545958706 238958317 291904428 458974648 991074475 873031458 979100080 694567222 860273664 158931325 549462156 294740015 938717362 796242942 939258947 117416291 259186455 635399681 766673176 655682437 659163291 249896936 319739800 778190737 978186692 777660461 966332768 540999412 719309814 743646075 957786218 96307574 448841199 52312978 603022384 938426210 960943889 419837411 500897626 332018279 348265576 301718026 692057847 434775960 656556521 799286418 862762438 245830684 786236517 908643360 915724081 543632059 653906015 616792014 832652342 536521424 702680372 725342614 822908498 359922506 735146934 8253610 240683971 853024480 968581734 877612797 981706285 607534882 743290497 639821752 644522663 960873552 975186321 283189348 323290348 969773355 992108724 847115467 965694846 187064105 289094970 395529889 669845998 247058471 309297069 437759047 955066513 877594092 931859664 574136905 951209021 767985363 957932884 855479147 968184085 724898 713958089 914662983 926343448 959621131 965169038 828869948 948890525 287299851 947395396 236214063 932555340 325708125 531974412 166072132 827672496 429887355 456428456 649294815 925907657 401016427 632698382 921305299 974098822 777363409 980096576 857781452 874476074 90934727 944609853 331500812 990599922 379643022 464410589 704914594 824425606 177676427 913248491 82278727 440312247 961352879 983238691 905444878 989006899 68132523 100001616 288446508 974375737 868398081 919024139 216292246 506090143 856224757 871485648 1367690 521514442 691088745 718964365 59404148 996884502 95763701 389462311 801883184 892776177 916140199 923163900 639010990 987098793 671431836 689632795 136935920 268527726 66845718 339649812 309474554 402213853 596562836 824186548 814457553 824166908 949163715 971760474 928152259 960785802 57486036 706808651 21269329 569775620 211374913 873575671 552357472 673055898 177006611 625655040 114826827 674395048 289525176 866964955 718572295 926753161 749509367 922841623 515610169 921062551 28900494 191973131 352848142 689140335 282994347 732383748 903144454 959049198 251920325 261185696 779178842 903250664 38245829 126437941 503858007 765741390 165599398 373115015 429308374 896644162 423291769 881084166 649945436 981482049 117198797 170463405 855777023 936482552 52711785 461091293 195950676 907717794 193128522 903193856 959838093 984399565 526082179 932542364 375340057 661399876 163396463 462289876 70610141 176449468 810758098 922617345 267323070 657338795 207196466 210167880 966673447 975215701 176251905 404156084 390062934 623072282 775966197 948474420 15905899 515844547 586583766 906319917 740332912 778228023 334688328 716600448 445973040 863245903 43721146 424702960 734943607 823684429 864991720 958203372 532985491 965042045 154780537 788939831 604145816 712463937 409430091 863146746 549568507 841480990 203719592 715886402 712527378 902813080 862233707 974852126 855035226 901236594 639415487 975460565 74123256 440453530 447252830 582855259 849762496 951389552 160043638 337209018 955425821 991723826 420602368 762118619 965145288 987075982 213322875 223412977 244713739 991808552 782190536 977958072 815487969 817622639 391680383 951190613 836196377 847110386 816138545 979564043 754417099 761443140 847698473 948963251 122327072 779431976 87728196 746505172 635812226 829639320 544295882 918424608 576962908 756834508 526319665 851224720 235319469 483796492 286882682 502093310 177120265 905768023 433938091 663141985 582223839 790914600 561961035 765597280 931673896 968192140 638323198 779087436 959914166 973277127 249448358 949834042 425948147 638696127 206485596 978278227 373998879 411383328 357865772 407335883 215853574 801545931 213983666 679958354 701908903 872213364 675817294 757747091 922761051 977004364 344415664 951893681 687210844 828917123 547462719 751133924 454533784 653111537 710693016 758631761 842534196 998616320 529691343 626772733 157335165 374240535 112348387 989221516 168973538 784187481 967216987 973154770 357083903 587651016 100176279 553999576 641634726 970803235 427122847 687993443 524861196 936135953 988487646 991750102 118932004 462039495 190281575 864068837 348428842 651947664 815327488 865567750 771453004 862715012 753508316 834486758 948040052 999513019 123290362 818913434 660311174 796797423 996371938 998455181 409089573 464956941 491661316 714010079 146994574 456989533 939254111 966405037 906289179 955360960 422971558 861646294 295009591 681879555 321508591 790528172 150263851 710189901 842558757 917833308 339679425 898562366 311192403 655518901 99216979 128410951 856510929 908865461 570244955 633901488 105922550 823507768 98010399 395274964 65861868 73876943 107447545 339637997 525124503 895209565 243275428 298697288 816847704 884622472 232374869 783259802 106800279 567034750 423449475 780038360 789984665 817754716 900855117 910107891 320252683 829001440 471072506 554342270 915917661 926339238 806305388 845480084 152935039 856002620 468784544 775393408 604207927 690239382 243138665 693884083 280533306 425898234 94998189 693205725 314697130 487567743 152492681 361111119 885065695 926636027 238185747 863130404 873088942 964889486 985077853 988727308 372969075 752577118 638189753 775528639 54468201 815741154 532115028 548133180 709161904 782121530 39544534 180989127 786585553 921498851 471423539 881189301 882508785 979632623 371141302 802136846 727587189 819576632 975059136 988807296 142387180 198229961 355015224 945999612 368703964 434005185 675170078 947514844 53157549 518154603 410172566 615703947 993537086 993801236 424979549 632175559 555709733 710971956 724608966 809132810 594941665 764975106 331224495 598315849 536821841 835947619 584443058 600424032 832871906 889149595 51745935 192995190 248706532 478661633 838629646 875651291 83226094 880249060 964280075 989487283 557227720 742252207 925207094 928747312 769152358 867903275 398858672 585470210 967184150 972639059 748371851 812637394 16046311 314037943 42957429 965020718 703527967 940460585 785276556 874156958 185224741 561951871 486162238 776645414 605227062 737608071 60125900 624400839 635383483 938264914 184524686 302887081 930633937 985589247 47714872 534969995 967097577 982037796 975777444 989671209 725753218 859960561 354006058 397593864 911847841 925464563 820341329 939232731 67548274 850167493 382378058 583816532 747860557 932204874 825436574 904200951 104711444 212577993 661593602 722843665 675613566 826980349 200938540 731347460 915485886 938346779 863455514 953466886 327939872 587031783 404306177 480671866 349218874 982678700 840650381 888691589 720348447 906360041 466943025 553434044 45642306 611536249 409178003 414741708 963490947 996580678 808931907 837708431 396545003 401077242 755007294 866879042 648221565 815622102 202792894 904387199 646389507 898239009 676162069 806908954 531872521 888289663 66112335 494946073 902554676 997229230 748150575 967306405 35687478 843516301 464547415 571030412 89189845 879622668 844335240 909542316 973553031 995101003 969093544 990869954 819654479 851955934 289698994 526350477 312349151 852471350 832741305 982203289 789856394 849702788 754101754 879562555 919114211 922708483 881017683 927530788 442268379 484569941 757680361 789340389 304994061 568258418 437127558 718991853 941597944 975933911 652510449 681381846 76610660 334263503 388470952 526473728 742478662 811405811 579222161 600456835 98580823 967039574 477759350 519265998 982402392 994029796 918182164 979402456 619494621 647847227 832871153 915735209 746960642 764534765 417269414 514626800 300249109 860596032 671864683 732513946 898496961 975452016 645927349 774156542 960610813 992422180 580233263 850843931 218305295 240977830 380176334 536065423 139298239 742530578 583420731 847531045 598211490 880354556 469146380 681412405 880229510 982244873 471326204 654759699 194401206 729956563 224619387 300935374 951957473 990425126 99870414 446761840 552585761 925594866 411297776 562955990 997987827 998975766 302323895 598821296 199247116 236969098 645465592 839927134 179061965 282992701 503532632 930820522 844246423 878356029 496663752 950318159 821516817 917262348 303734862 658685554 946022845 993208219 649964747 662311138 557117440 947715096 184413008 728960819 927060111 980976973 18139120 62596243 482410386 796419047 120577251 223852370 849431149 994046361 647684777 807670475 521222714 634650011 626549771 888762304 667317087 686188845 323842995 378860915 301004338 388641715 601316496 824816999 653262133 724261417 69644710 691442735 583247040 677595167 259415531 765767686 144112489 176401709 527041394 621261285 630764569 782336234 825913040 889591678 564139900 695443636 241501923 861707044 72701514 557175066 418644005 635676558 496534762 645348983 426577224 918623736 730056690 913015557 295149837 675367074 92117119 918393137 125028325 431131776 620102720 666952875 103607933 302645584 518976393 939476809 797143430 817348848 868842603 872700608 725184813 946735505 408164391 560163306 445103089 583131128 889057587 900926792 998590009 998798531 233924096 948294007 300784875 842858691 327299435 851244111 740839344 825782313 944950019 984745807 247343485 294072295 872695774 953054924 236829670 300271932 352467342 943927499 779351353 845594370 289373827 885050241 930900590 982724625 536908245 922286181 767169176 823632750 311163936 634571662 301519380 325063026 591412410 647423745 215521357 717493547 310700908 920531175 689263039 705025689 522670712 751358880 618287933 624228725 815589044 850299122 713487599 994133461 360385958 495259458 149908547 543099749 532532419 702037529 258414051 492572766 276397849 397472896 857855899 893215934 231375180 296987190 448996009 844960506 48961651 910486422 715554254 804983052 980962045 995707549 612185435 624529835 118231746 969247339 201206047 990681763 752203531 961596104 204714451 426208671 65697943 727390855 944088575 957934380 413528577 591754961 417531209 917099175 264536576 871712925 674161238 840044630 104333400 676442702 103202220 337023131 681805851 923297879 161275694 239395693 686280388 822016508 248640418 904712618 202118491 768381333 514891756 961570809 40465384 471007495 623790598 947837084 50116902 476332059 88917153 990123430 493722319 651356026 727447227 916146663 282692239 853415272 67591904 231224498 38234764 344626957 1674853 870203564 997184857 999488419 684579112 986755508 950867772 971649429 138778006 452386314 275408065 496067781 602503334 637795722 761565642 925011781 56519597 348895156 117669566 723455072 315606950 836774835 421174777 708810641 220027579 569877457 251513210 797670375 108273818 717175201 79174974 330043206 338978148 570461082 87358207 349438532 502634684 705491794 673198825 753884016 237723561 903233649 563380114 967065833 162047890 640188729 137152615 734024098 179113830 516066080 16143155 475459430 257653299 776287638 196838546 618831338 22768605 959521948 985761716 996755944 167405532 844769643 951015570 966125022 842890811 905671092 606754807 702595880 381194888 583725986 217347280 341332239 489449788 878264011 450315492 870473042 895304996 960221426 550496834 688500007 579973312 646141170 261631262 793612054 420718022 465057623 273131823 696163552 227795155 785920572 371369036 634965818 418170330 917153030 324534390 366509996 143618552 659330567 414745677 424227641 732163854 869460730 105034306 700635623 784447517 984839371 140483026 687568050 647498358 780488694 143915011 892161286 205833869 245829426 516432312 775221461 355134271 953043541 753172829 764327893 167286310 919909717 767840862 925963335 906193800 914095206 606845433 820471206 829064591 870441849 107839188 109535994 885598501 924806632 206084769 572361431 993784108 997518167 574099176 751008007 471705107 867883432 367835296 660428323 106021339 861564951 401162767 890674557 685208756 930915665 329724836 541409671 608457532 784496136 143640367 252671902 839922600 856910478 797792114 972869754 917185846 919543772 628669435 844384868 172686399 397821172 760030767 906980907 511588834 675275094 955443663 978303332 572629619 946243014 808292866 921440825 489561341 671696444 440075780 790929680 930380926 959457653 353911965 649798773 987385107 992688676 82406244 649733109 233519498 762864697 508794156 973699898 102942863 492977435 996969190 997604668 715474340 847539905 167368655 446793011 46745953 423669820 55188169 654938483 563968947 777031901 284904317 675405714 533403192 583986374 563393900 820024357 254232637 635982988 857150823 948647714 763917822 981392878 819558801 962556513 845762726 886273153 394601380 499347347 883568912 975077357 242281333 801747574 326942808 755230916 829529167 940308822 887156597 992791381 805386522 814210538 758439916 951181235 973479428 988057003 129760398 197227940 514562500 622234788 50542334 206880854 767685185 829834398 52053783 310303671 822522526 840007874 151487483 233738421 170313143 931805075 694748995 716993568 75478506 686716168 593315196 939860900 954802468 992531453 971688222 988675133 870034849 904594711 912478684 924192658 779680861 863891477 70160511 345779966 932852633 947798911 79147167 248938558 356609977 903315842 457150829 944035270 551095451 657125439 738001979 943283372 174843433 970851540 490707562 923351636 221843995 266410227 49774426 773561577 522844008 926289758 12612188 216284174 27846671 247664307 603504395 750236675 197965133 242775645 674229369 694565580 410706436 466769011 898409935 998569674 576473135 804841404 785239777 912720705 361316821 821608744 299927710 672931759 153023479 173800758 53789317 859822770 18959108 923154350 450448435 687295515 861232416 999439758 649706748 825544102 516199621 863983783 997601064 997742404 37863356 554002457 350665071 695612212 125459110 448249513 241291284 538140013 198035564 509876432 211601982 775115764 300674398 638198298 208775952 408979282 994895929 998637965 516111116 597472523 245447183 729790120 256095961 921953074 640981894 719784773 19727392 62439333 215385036 619002361 294665987 955526528 526553945 638404158 415934823 530492838 894398077 956468540 238005473 705686398 838536472 949623720 385693521 403572362 92040510 844197300 394977951 887264734 233961261 425555175 82829372 621607798 442718222 466040900 747810969 934904912 25752073 269478428 41184841 985337415 957641055 974323176 362655402 488844969 400309823 965283585 897837455 935344801 838393249 958044963 365062362 499421320 783957107 851017079 765754243 890101114 515271709 826792120 223972607 538762094 529489104 765890748 873814588 962421779 506555684 726993734 976990272 992505943 732430945 863785691 359455278 851397315 382449246 508776301 507879518 970593533 216634987 288917448 996093113 997011153 604611426 890505909 806248671 979892850 113861303 626069621 962245324 981630644 306848085 623475971 309134506 824102773 880530819 987722180 725858697 940416339 261555332 996609017 113126938 339947823 466598620 719393152 203930439 335751319 296631646 602694696 917043971 962692400 897567407 917778366 537867379 946988551 292348649 952069365 873292623 913893908 808293171 888669004 445759531 613077140 884595474 998057001 766284360 899235108 337908815 373864645 412854024 853964119 713659292 736227487 703335310 869119542 804313789 901912125 725629834 852550747 577532455 894576599 937266332 951580457 588418906 777777362 173665040 453305321 644218588 740915225 196030349 889403071 902542279 984931258 340322622 581999551 627166727 902577151 11389530 778057789 893328658 960381444 234936479 632819110 576263923 649733322 466307810 736209108 721927368 743781399 861421066 961424138 637331317 837063799 891877184 905898776 352439296 429808780 547473258 947733315 248350686 698025745 152623630 750770378 566395368 952195141 484820041 669723542 270023030 349665123 94100108 296628878 422826402 981030075 143785600 562881506 225812220 677280788 990917623 997691434 620312597 808740130 416049742 791394894 339739622 613010307 583932790 927001937 212835984 983460124 906419939 985887357 74093107 342043542 896660228 931395276 803884919 853207754 516061847 987133821 461137811 479961703 421830036 964062077 769039465 783700525 578135863 721874245 294903806 651795527 911699426 977020236 21842192 986433019 774495204 850792650 380559034 495441095 87885696 242995409 480836840 519489981 680005189 855759798 354408771 827924477 922429640 947321615 623934433 822721875 963209929 974085262 869411008 969644718 320585300 533711341 605568010 966790740 469588186 761093249 219786086 979200290 886283720 924599159 520678198 971673970 401381845 785179858 912074764 971652462 264914000 341382770 464922016 494766946 807918531 907805863 796611715 816915639 312657767 609757893 257063747 991079477 51908355 460542520 231592982 640094062 695320197 957205481 493754909 902040860 504239994 973528543 417437908 790345801 395158387 513339296 68191119 260704798 942643440 967818734 806827847 940447639 822597219 964404693 875411225 961159886 622986 373184890 482075218 878148237 698847010 797954511 47031218 272372765 39094741 634370146 48110914 88264463 833384957 989915042 187777547 539396156 466512099 670286992 464723409 693177751 376668858 628964895 516561225 734873198 925320139 943267850 986369852 995618180 439323719 970334568 770312498 837752751 986527332 999897807 99703605 975022066 184971582 902509082 986207082 988729199 286815532 761501312 247727123 381945146 186475655 280549034 106117392 229467185 598380557 808574597 908924937 975687951 126293125 610060486 105042277 612644682 978483298 982567506 814776649 876778949 785493907 949851567 558516410 581758729 171800216 393986711 429956747 935880713 169545839 330374296 727423748 820785523 880086020 965687992 209330444 558424326 616397491 962980492 710242196 822215116 127524902 893958632 166415840 446431069 712790243 850992794 250108420 599538145 895041257 978064012 270673346 677645866 328390347 931975378 270573066 851777508 727714004 922451194 96577233 612110746 761038398 781055089 315412715 716303534 183857098 567949488 953907347 961050692 156137266 558450413 323315139 585301524 496019600 498693649 147107603 583080343 116434663 836117741 341881042 998996437 736458052 934760403 415312099 944621511 801751294 831911748 953995409 999323414 918882894 959272822 758734918 880480270 636382709 985510635 959427350 961051132 338420357 557478464 804881184 820116479 472212672 888844761 383715558 717892953 741557001 807069001 879477792 890151102 595574856 755153086 462903163 525092413 607036497 942230434 107163612 737284856 285156633 608498903 793277754 988021034 139952685 479493116 265613811 323251538 581535595 922117968 319735481 538848574 351714787 758982625 886563917 995533206 708493215 986913341 358682523 445810622 609088590 810023516 19390415 710411650 466044214 656196548 352967376 436510445 803975032 939691674 74399448 464084433 480767835 915286655 566678623 987741688 583575828 828175192 369229378 872098200 833109718 858776748 489256854 929532542 358690210 607288373 770878588 835180106 3848815 832023677 827444629 844084689 906014146 921650236 168813437 922778612 209985153 560269061 928325426 943886713 626653197 669786703 566952953 866918679 829239099 908879908 360688018 965061132 790932446 958458974 962389936 978003029 815623926 929019556 978061516 982759710 327639776 404693146 647304776 989354561 323351022 464818657 800759172 806837547 21530703 930042391 118613824 791634397 790369443 880781708 526943380 925119444 286488095 377324540 452976434 809472225 961205148 967021015 262334902 387603898 179092555 570020679 325931885 655305923 711858662 748354669 856067405 956900924 852517795 887049642 722966556 786775544 717213360 734443519 449652370 714302114 350599192 931586350 746415673 812443793 486990825 769597060 482538946 673029636 333034067 984335419 286023773 661493469 983520743 994538524 682082814 841230248 218288046 392794063 78475729 702786096 855857654 860760047 419141206 492550245 670898915 700268791 701354927 987580591 742041032 842452670 293238752 762369413 701459620 873403667 196161193 912788433 664130936 930092346 154588063 672817161 210722815 928026436 375762739 388982048 926552501 999467857 551203158 980006115 993890604 995673254 45350523 192111090 535330703 799297624 262033538 649344796 662254417 709048475 91460160 94431395 625096853 965610098 719560030 774784872 368551709 697865899 103053258 882698752 326972875 681879548 350704898 352276674 810414910 939205131 266667968 712663297 471929108 686553540 438899500 944901003 461689099 558108814 391282341 604783421 441476525 693129248 277105046 709475568 913996223 941378740 886028968 968664934 30284248 347004712 316209100 806695939 34954216 774607482 977193375 998146599 868213227 965096529 980804551 994154897 724800547 766313735 2669059 377012207 272375632 295868376 592105622 809790883 990891746 998451984 454016939 866429565 598640306 995982213 881439437 921571916 474523377 623220456 493038421 549332893 651413620 841316123 755494893 859827335 150166583 315144237 177892256 506758042 304914233 920477665 749492477 924434893 969148446 969230884 776032397 803301511 174225607 692754687 1625208 660763167 150228846 565795907 310289654 761965380 675960505 822380328 640335658 745645373 855002168 866446383 254220593 719977997 379570503 595404254 119456303 569258536 447293659 832431256 520424530 916536067 345698597 796159449 857452402 875157722 383972330 817186925 406147156 454081755 976099142 990415949 546053679 647039392 46423711 979554748 594301667 843703210 982060272 983043226 974771635 987530368 292773793 462623122 676000700 718460765 616523454 814566955 674643127 942609829 884729827 885973265 185288097 796761391 970710011 978877057 616753534 675367888 935520963 954489951 375473196 531868702 971405067 998800871 441541181 864067203 984031750 992465723 642954602 958468357 72223202 111717446 134796778 623356198 149357861 937339259 272484450 435351736 823437582 913571231 745263370 863149502 838822910 867369036 127225459 920445979 976099903 980319262 929195136 963850443 361029866 754075624 875483536 983695688 962282538 979188148 346814305 793207871 934142264 939678170 566711346 613897046 926117716 966949100 606440289 646169848 738246332 813744048 195160425 234848639 756311520 870093229 501820993 670807903 331951719 391168110 513894284 627073433 975081302 991117421 888247267 978858208 363632632 873395866 688051777 712002781 30865261 438601679 66694956 356125230 208695594 749312247 19062590 144599086 921390076 936915561 116571518 529661467 741663970 812772560 378601637 556765149 517431372 545759129 791911647 827557241 155328377 837372647 996549917 997747190 248069207 621053600 206889930 984986805 397816476 972124188 382184753 878817120 431630091 466151887 174458994 443524565 812613282 995516461 360675595 591280610 657024795 992521395 685099158 869414833 26223073 708568440 615204283 735771424 414651034 447745509 394567660 579792819 701775354 707118196 680127891 827869347 204658037 475650877 530529665 679761397 851460150 938593322 395613189 515517791 446497217 868740603 113488015 703860800 535857124 599974749 410233641 955290623 505624570 939375922 127484660 291541186 151130305 933074152 589666679 888196714 24207389 731029951 93894878 126214645 580035828 983850283 764125166 920552497 969864287 998994526 112591048 782360658 365353671 393296610 706992887 931452403 681166017 857118280 389109343 790188710 282095759 312235664 62444445 413961137 630448383 640469059 694006945 705054049 379984002 535094117 782263205 999603844 641291908 766016966 618477602 882080740 756259657 936386171 668349405 820192694 966974453 996357159 959569186 991343999 231490396 245839760 769328670 872181109 47940258 543448912 495990433 682080203 502552781 661415057 737422723 961767015 216387166 775786506 762052808 888136232 80547607 475118487 536735907 931411964 535282171 742176802 191262525 654505683 429041309 679902011 864766957 937465328 378607392 423983637 551074232 909058726 179328032 286510143 506139549 600736434 875730562 985917293 754854251 829100796 78503181 868647185 436129039 693200334 348965734 716510026 286213697 519515914 417655999 458769255 246940154 965818289 822128762 829457941 800265994 801505124 442997163 887347848 660414544 746358943 338084881 797919587 865653302 923228860 36402346 544876233 382961929 838668009 72714925 638393932 716522077 958965104 348704740 709900909 342824461 781733706 150428238 250247725 152465652 628282129 610830872 916161137 330223525 992666782 19988872 995763042 546804945 855136361 167517807 592572466 592752620 810452505 904417091 985410568 619671694 994084443 284071082 810663050 534393335 757580153 609120485 887176883 364593901 655887377 841509199 853402356 849329704 884785919 62479681 394714634 270025480 420741221 310827757 821756376 975378698 978991985 495270937 950490354 301373009 867253502 38617121 348907458 70755506 748612266 130369529 759651285 113175698 169017008 740253192 816543621 106072295 124533406 533258766 646556275 12718150 341792855 981810197 994933244 792384294 844361914 921095760 956810238 552419260 709616889 937553154 978717227 148584606 401394465 163990505 901487501 207496372 555154395 465374033 913236819 721107049 806593144 641528241 815401548 463311320 590115568 711272808 945398496 308616194 545405869 573552938 681554085 209557475 354860360 707114694 757024489 424336209 792921484 536731091 708191899 247277902 466390867 380332296 711139508 301059221 663966444 234418658 701408908 655696438 914125845 524413325 847611234 842317823 914480894 912740634 950616662 336580049 676574441 78388568 763144261 300634707 978413109 9815434 168891142 858296594 863967456 531249022 537932346 697366248 867973774 960041798 961608164 487716197 939365216 41030793 240946461 860784542 921843055 447606232 540243389 513800687 829519607 337959659 455446921 685898904 946402784 181581594 612508716 801024695 842765735 236971307 328245131 286090895 992378780 711458403 812757905 593537433 651939837 123863119 877440938 964372532 993732592 452944622 487750206 475673023 645563352 721689326 826875806 837221117 957239790 579754140 982313278 749912628 772146871 157356829 336999327 813293865 851686957 762748999 826043311 414548129 437668405 269408020 441817897 784424872 899540304 809254060 931680243 333546693 805141634 468345288 763295957 636292485 724765389 352660177 360684435 870855604 889269252 489370504 982831366 339856118 918295390 754355577 903839504 157755238 207324110 760062332 959839337 881440148 989103706 573805362 851237674 189403883 287897274 566472524 722788464 770897285 839279064 391127887 728494625 449337454 743015297 940124727 976139615 929472765 968993164 459858058 941084587 909056156 973058852 730206833 986246952 561072614 764509305 88235151 422474405 889651042 906935181 780377036 865229319 343433670 386289343 886107121 951437955 244326798 600226554 164260724 475312792 232800344 469559091 210301490 399814729 294054746 589007791 430580949 499599563 35478966 898269154 279124727 368971009 814042416 978561434 759927247 781944932 896674731 935332488 822834282 856134882 372458203 701060467 923761812 988142318 157959254 391109955 405190239 525633743 591806847 947094035 814699699 823996295 315880680 500125178 559518436 708478614 784093175 921947446 364916895 374547735 237145724 747668015 499162298 847691144 218017777 740431318 932519262 968535603 312299583 341407732 994078476 999300684 16835394 19258211 716419690 945099524 640122666 986357711 782830917 961134653 597212788 911342210 452760008 498551031 954393520 964958300 246928389 896731514 591510695 810998523 554115093 846193879 785906667 848081982 207493824 504071660 450402490 602290079 380116818 620732271 181786066 579338339 97064976 106926499 993416966 999650415 993021718 994102176 570423273 765063509 513052309 572916552 929535849 976956692 103541793 609527247 438066209 501662550 145701729 472779014 817945698 945143664 950731760 974164757 811846362 823055152 673280142 764055356 587054307 869529070 896823934 977801033 522646095 603871919 593249434 853199882 16442699 321800684 531138792 712280992 7201519 644647990 410884435 902617147 414764098 533917159 510734666 708928985 42002858 956443427 254055743 643179063 563245297 864142167 624949861 945201007 6475399 372604853 579742838 844096994 209731986 727238750 126267466 513288342 463495891 854133837 426098841 535872435 191540099 382272539 604316153 908301641 210582951 578848307 697630061 974333615 462201021 988963589 796529343 866703181 754994574 928334679 523863892 832860477 190454328 747603045 27746720 475637447 125041755 957259478 326534929 832886684 460718461 830324752 264871165 542964655 871156158 948180910 150275124 911775624 639144125 649147249 941948949 986006807 670879455 779051541 46836983 892621184 277576217 866310849 719324717 931468083 817612904 967446871 468566043 724633746 663154962 703011552 521145770 697214348 597602922 701901811 863269312 900280261 469016023 743911206 70324930 361981141 748470556 910267156 163501108 705051697 176453978 334529898 432259574 992335070 945372785 961120039 441591166 955778430 449716083 653314073 948417209 987975895 390637568 471140986 834210383 892581375 881019350 933928309 313846163 696675576 319122079 960795393 643298711 960651712 833096075 964456637 112228535 800247089 518487749 937878486 19951241 690434242 123508960 125400376 868740176 899691160 932989670 978150640 980984958 994627678 957047077 989886224 591293752 894527724 666524245 993252311 241707681 902617909 86745229 599440798 65621495 239246066 881976253 949731782 50066906 69584953 605713921 747143158 308873565 549602522 328522653 593044187 688221343 874854897 93872829 378394772 577429164 931560807 122265089 762066656 524239009 919511227 552371473 977747828 885613737 936246814 125134599 581117494 931740966 965558046 402087144 691843188 540044537 806384814 600013913 800033414 171623559 189493971 744106763 798686523 636866487 736283410 67467911 901276048 380721031 889454444 888955261 985311589 370691550 705420514 812504279 964790879 987508619 997336367 245256953 340256825 978967940 983728595 958383324 974463513 693086698 749948235 744572939 807162267 922496347 981453521 352713604 454772312 707322162 843140108 855342048 887490885 165198427 221990684 353460057 738514835 474263540 698782455 186402075 630406929 694697650 753318114 132485053 834668222 846586903 916027950 365426181 633840321 927057508 931099476 963422567 966151159 153064521 590408821 982745908 990652790 807090778 963586361 881847072 981048686 297589670 397503525 490366426 735524763 574492079 992030473 470517912 525637056 337880055 993772181 257886673 630399295 189040626 754859513 192621411 433118011 486767865 789470416 155420379 961924943 364126199 674104417 430986799 643634383 744219658 854306912 815146000 993242249 866968901 952130907 167351894 838215693 217213975 333791248 745901535 952938577 683100996 889040400 523624896 729012137 429425976 476078873 305075659 754357824 640877877 959768554 593727174 893179688 410937100 481381029 914283755 982404883 826715298 923692610 498346419 969118485 356471987 885259726 994237586 998664908 156784343 164179768 802492165 841185583 47201477 329277959 652077103 875956307 344780210 625498220 972493019 982000516 25036102 674968328 882098837 972004665 679718071 748157657 511313275 795981305 668326683 868346790 760944126 945569776 674308413 859302365 567459475 773871754 260058313 960092818 285815973 374216054 302992327 740528361 700548231 930850152 725558667 978490352 128057719 658033115 745096389 859552656 920974878 945139253 494087038 957323947 794101743 908775349 676919329 780156279 986420469 998855478 328946532 477110292 883584038 984977744 619985436 855274908 713175757 935899148 462465467 861166037 24380411 788403219 400140954 538543180 966878597 970376639 571218751 925294999 270946356 993943483 720928011 958195252 126448934 388859154 492426102 603490589 789414726 878870271 294704276 653687220 442971292 759282344 539355300 658829347 969566849 998924926 742625664 888855786 378573361 462135150 877744988 931334670 503696512 662421982 143062048 363160274 989941176 999481996 310911278 352815980 342522343 773048473 287351903 383005997 312499427 861513506 41734246 830180873 128422627 965657634 841980412 970599644 805181643 930671825 152637211 443552429 70330261 705061974 767687901 977159179 726546020 810050429 517844997 668660947 880034632 973240588 915410793 946406906 518570633 914934408 249031077 464531513 61095501 950271947 478519895 723180239 470932694 819746489 499965765 556388661 391810929 474561680 210825601 421015042 830699176 944207614 124325195 528985157 958114662 990114658 473019275 870806725 977978757 997140356 999647031 999672647 662911521 983303282 554312158 899101316 869024484 919879489 848650806 891979529 138648554 634346043 884904745 918658471 644443711 686674273 30945650 345473836 993190174 999342074 34022002 174504912 730869022 790012795 267664132 654151299 895076101 933104300 86083423 256451386 275930843 470195581 193394038 194078642 192560050 899190281 952060603 963369240 426025021 489172452 166369081 831433625 526025045 565463757 442773411 459746268 697256179 912180219 621763651 681311674 583084960 760206571 948364348 949676230 192811676 319391738 647556 85619495 112026417 328502452 820517266 917116938 529908075 802449178 226398201 285347221 614222051 953023618 174534566 651401735 639426789 927547849 794793121 964303576 929306084 932006728 569242979 920448060 715199871 793695085 580689319 629858675 57842590 305687629 904220243 916372064 263262845 268035491 518108654 526296874 28505850 908216750 278361751 310435112 523856909 721076270 599374643 921381164 200535119 285160052 731326024 912606512 454930700 845704980 17484088 206464336 249257268 621901966 701064298 770963037 818270951 921042791 7518132 332801345 401644300 564308291 646364360 990598455 29159329 980416047 933585263 940847114 598896719 984040473 142431035 193258815 125161697 906865586 572796302 726484773 439296238 713542884 772232873 773843605 51561986 398406964 147973281 257887303 549683015 937196732 697585424 712320234 913073698 928094064 538725965 563022433 787766584 898731556 115605923 283384281 406918785 607896401 19439519 743472438 341460181 587291820 888397816 893832350 509816119 924546687 968325640 969871792 595578681 868154555 231492319 429880784 967144686 985377181 213772004 891787086 820346915 931449702 672148059 737239819 382752285 852041940 773249118 893307112 775925909 818724158 757185124 808262195 168244757 582951353 606236693 768679954 977537782 990595044 318781026 585445118 310450004 661256701 405105414 734745116 828599808 976976468 461895594 580913356 818712230 819735652 394715238 976166378 631022947 644911250 942584409 944962040 719931251 763675494 855258142 855293927 622703882 966268203 71906884 224301574 415518179 712848951 962879517 981909458 410779385 673767601 791255547 944852155 144242048 365670579 522241687 575447285 167565830 511363820 118590531 404111100 208805633 325121789 490529730 928290204 857484606 974520827 909812622 949840487 882589671 907191543 683309983 831368287 41984734 664752504 36638306 990273886 586143694 795251395 8260567 821750155 536640677 992920220 730015203 814645928 750249687 812763159 423489139 850083283 472118086 633131017 433972784 814118182 268574114 681930023 910244135 964961699 981311189 983172561 55584493 611510558 253441196 279268998 4858702 149107590 792022266 794145069 502754505 901265350 183415001 342936787 540454331 823852152 630792417 719519482 612692523 697435359 331952328 376736544 762658925 955312012 774992438 903548639 205046536 266454523 324494460 608421394 897064548 983186477 391351062 957790353 879608672 930360054 936296448 967797312 663458732 881490765 454035920 724044098 380397595 862843071 238865103 734701872 443769489 468280463 294001037 309007790 656251267 833741446 323137669 899208357 142919563 405206271 660895998 691760331 17163619 435643577 902929179 951050505 942872515 962902190 373057309 801056879 334331866 587710780 362892497 917416646 88924730 115575966 4416774 908489210 961516376 963672733 543024408 707386907 412514725 626384358 963401752 964826610 718636670 996629871 551952833 885389423 897078378 957089919 865087827 961766621 364253199 617961091 192351156 527782978 837279532 862914988 749882125 937685402 802701125 972666416 135161651 718361794 718420261 789558255 930486362 945226019 996329182 997705828 814680814 979627540 357797901 940642652 30530207 602687245 335003904 376681790 586253022 764452323 250727991 707038982 924172490 941388694 691708008 746223163 531124546 870729551 684718683 825405701 126549471 659587083 595502434 941414623 642633833 987621579 921679593 959945308 754119144 964736469 489794085 984878682 101233956 776459785 674593179 819326747 55945285 517386093 80585830 686846436 989833795 999654884 948503538 962349576 584984353 650694485 849099678 869823964 315923703 607531477 34904661 411030695 606328412 724401052 23973716 884489742 832941237 965742475 877300324 982980952 384004052 569202000 369869361 689541937 287613147 406281124 718405613 796013168 735092559 742721706 54986456 873060135 823756619 940791638 907027784 991058186 208063234 596389266 604893663 607615688 613308424 807219048 102501425 327526258 424528605 839874886 244758441 618697838 201288518 456087318 490410526 958954357 828346817 877528116 333961721 744577083 397264018 517725683 741443959 811405505 589212509 659910833 150037798 207696797 412551302 925067675 649433272 915714694 154572739 642387196 121463393 523082937 393855950 989323626 541346737 720337995 105810505 914449904 926962375 976936516 207475743 538807776 471333744 840429351 589592730 792330541 670212878 916334353 11930880 678482725 51981500 934609093 566239840 617465686 428400644 652211471 307996437 609019262 910413565 929590006 721306786 970396351 969798365 990471525 789813962 940523371 226642955 934090665 708013106 883911852 775354327 967567121 600161594 868832887 209546856 926027266 205526975 599230302 483966545 800234076 464281250 717360324 302928142 576788782 796443389 829006492 483180583 703847170 30014376 276778913 582272447 809746208 317440008 584905498 428618452 441037706 348698563 742118846 76854546 315717096 946393424 983143180 908398329 940484886 604248723 646091030 41734435 506857298 453399917 887930934 692609239 838302613 726588595 914553178 788634375 886606483 189515534 402177127 894293238 904638683 688796858 999356058 341441057 466033120 33833247 261242048 112477014 621214521 448714015 917785146 877950920 987083407 526423783 832545822 209222795 249513797 646589600 707409201 117690662 582912908 4444842 699378597 984259260 995428508 898921090 929994765 484363984 633184221 432499368 772096035 685713839 981447098 783785323 808171836 530881125 688864342 186624422 266740870 269954903 774576001 975878395 992836576 407136980 439179120 900477015 937858200 151191796 256498734 654746145 908499041 299490469 393333679 148029551 489379755 898675910 921880166 974698511 975030225 920009630 953595212 26766112 145114553 370932776 741333111 624596597 740610331 676539836 911091565 137290316 743783808 568653017 908843611 369524790 898628033 776888489 891112922 542873630 852106636 88818313 579952746 203818761 576817760 318185168 707511392 676104668 795090497 532455093 620539633 819332468 821352678 413044369 610122972 362830383 426316040 524823065 754295917 248500504 774975493 621325950 705331540 225394115 608440182 627092155 722548352 722784240 798937491 775197674 902594465 240653329 828468956 375199329 899063926 530024976 560989512 726102288 797209737 326227015 932796716 166319504 195959188 271723885 304492028 77329418 495003650 169450850 583981009 696482495 767340775 855478067 873010370 593802157 887018797 703999754 955930591 529500209 678436654 805627129 983542032 453890260 837515489 105076875 948805251 308064857 398351526 690030435 949840847 619521937 702803139 928744913 970901766 646774042 821321510 646954468 863533607 516922391 729414682 306521973 911991513 939333911 983298309 262669039 634233397 537625456 582625313 279514835 864449718 736472514 855899306 899992373 956861520 232559990 856867840 81133901 297990444 354484539 754162924 877013397 896202894 945174572 968279690 265917802 919832699 388779750 400906104 131966483 943368705 402859021 534669430 985131747 995825092 863211631 877561126 77378646 699356741 95224378 687787022 874946539 947890745 408865067 925295769 42288257 979222596 879926833 899066763 810093025 888925784 536898011 771166734 257817660 275011958 622077340 861722634 384713910 479704688 442352886 540174274 377695458 944837196 324185345 830203641 222636062 554397865 648808563 716287657 841976656 960518116 634284300 819250805 121592391 547570060 769349004 930951943 964097982 977461841 248163328 698586107 274298946 673703768 403969060 418388430 707754764 936403849 530543496 654869514 227881272 576084278 225426512 419205397 688234328 781749973 811222604 844255902 612513128 745487480 134843505 237013315 166400000 587257294 273943346 724383373 207113467 894850706 53105468 716653818 665778055 912058436 638486599 751092005 612891067 814449630 329349620 674988472 905854311 968354901 229724245 569819063 447140809 563720278 935646529 965731903 98879829 994291599 307038641 906388989 734725031 883319694 478124362 998792725 289789098 330920579 904280801 918947260 888391485 932396601 900780910 988323193 669463155 942305575 823145154 950794506 232379636 400555738 607445009 701528650 690998140 927552743 601654329 894676567 624221785 836209134 104776559 504709177 909495361 935627823 198600755 394906760 370854710 870689999 96179408 857990771 128906752 410180649 581667010 586258654 809330318 852855447 467319692 894800313 456008515 964960427 759438144 770171144 301666375 770172083 703921033 876157250 575301741 870747942 667989908 974718838 286154729 637096504 169116676 519657343 769194093 841315624 951022485 998887861 613942042 934731040 994997498 998826824 656686722 750476073 986484962 988605162 217315656 729181025 164597682 535845879 40334210 310202128 372288312 994015390 440005443 502798100 370723216 994214706 195265708 457868580 473058440 801308386 164588469 715810349 104633790 453708012 966777738 976549440 827385401 890859954 831426985 911503744 435645568 770492214 423812993 554364004 973105250 986702116 804847356 850900743 849887322 883356755 336758306 526141729 178201789 568762712 662528443 970742934 544864568 828696259 462061955 758935387 650330786 745790336 839740454 884560643 845857674 999127800 5668734 656654813 577693168 703495599 768175327 931542154 972481312 975278083 785618709 969942791 280788863 654354095 22306701 334991101 732733767 946758017 460325910 594914041 479378124 607163532 209953988 688857787 164572610 874937663 630684556 927780647 51509675 875515545 122388851 393212309 738924768 942431849 139465299 440158705 320768835 830228223 769513467 923417446 166971802 604421124 285585193 362517239 144308968 524939175 932846010 974271710 17272681 651208072 35452324 774697913 959504854 964612938 665600920 683339457 351056108 700490178 731387480 805751535 473629191 766166760 79961702 904880823 465254188 663284281 246893346 971536323 22758320 655993623 521565218 876169515 234851713 379963312 232488027 437499165 731324699 890906916 702126173 978186108 20157228 122976332 236351905 247226200 519075143 914086861 53476577 62914377 430511477 444385561 185630480 497807990 670296622 967752800 822339492 968871546 190697217 424195592 282190290 658767611 422597636 908791859 84602516 987971986 827324686 902875924 918512079 978817294 122384557 978153536 343521749 434117173 865451997 903292320 594568845 777798881 160274926 967744844 319148168 757693475 342607244 397782489 964004304 979288777 323573709 998466964 71464600 963532320 714467860 854571832 424155148 568712136 254080422 684820369 964843476 975608609 368179920 679410055 34114729 793666700 933788061 951466839 457901436 651040867 792163255 842941592 717878634 862544045 94889337 922990062 221304853 387317261 783972695 981062893 301658215 303446886 528512820 780347096 118667522 289686391 709372809 811681519 995690396 999526384 338154548 748977525 338431554 911135120 308816254 686597328 323015659 676044821 426818568 545951620 952537561 955931662 693489374 926775434 265552630 789026272 363301150 603618542 225298471 742308441 136013286 440815181 562541965 865059965 255702787 610239470 162408209 442211025 300306742 954667336 148147245 298399158 303586305 483977537 841866660 873415629 606731726 680077625 82168542 326167997 272106464 772717459 11267578 396349479 602020273 987497013 541098028 882848272 114541844 604873962 879174129 941114328 809518827 825285855 784251683 802093762 915276822 931147426 15224650 155879670 309530729 504288267 364597843 430418923 694304270 969330389 354974237 891457176 917670419 998729440 667445078 852579340 200964128 698042053 286309853 903456485 304148662 564738738 469500547 920864311 640279857 972398694 167936663 855130973 152684809 177910139 681203246 983027578 343268189 680365925 129203880 177557591 153545439 576434038 784328460 898282707 976494420 976656474 340487388 858703205 503039939 558641391 341321223 621479468 220711863 375626199 395982178 405328414 484819279 837115681 572446954 678085460 839927255 867319608 637333782 644533937 874731691 958775594 847287248 940849217 894131763 978266703 280020274 412833440 59291363 199570800 628816225 963934387 342075047 504404459 621966893 701868436 619180680 754590211 299793085 920253062 923798303 935455436 96246849 208037364 767511523 992494152 95373038 456749223 135941728 680613368 324026200 905901266 343966718 879011819 624264797 986151507 796579260 981339284 557946100 648565079 902792482 954638278 607663298 921758486 738967963 923536218 547984773 793366880 76232317 921141128 873677729 964198064 773548051 997510438 913498935 974890651 654931218 743098957 223189348 940212787 860552631 871565788 546449767 937499997 703615188 926712265 733068555 962732499 995507160 996481407 367015096 593048894 120560072 157577764 53882372 97293417 953610039 958869579 634884258 764219136 478887120 839494263 248727799 916003939 795648736 812881135 128740684 426096343 97668643 791469118 809414675 895301308 188923109 230651870 652683959 845033395 805309046 982410571 801713928 901201627 313316296 853368006 82263043 991966389 665439577 710264079 607845293 980424255 692350622 769509284 225013057 885420845 857634946 941296430 308325174 629855205 996534548 998054430 851804017 889345147 37570399 549663179 293263558 837217816 989520553 991468779 365631204 661152668 270473082 512778940 7591482 156160092 175773716 664815222 118226552 208582611 670806742 843645958 488734008 709204123 706817911 816630891 647507188 983035727 445620337 936064894 510689921 677599168 308712095 703900844 278518081 690054782 332374658 890132526 147913590 886838044 904148457 979650386 716781274 950582454 378609336 513358487 665367422 940305714 959958355 973994149 196905079 640260368 452064619 999394278 216728607 866515288 510335426 896734541 438742553 604174241 293630507 750880308 405245114 428768943 112688255 487440826 307241766 572934107 411872975 477219040 764487729 896255756 812595925 865800851 504679808 909776441 111606211 248959621 841914007 964724970 464292703 524623747 944270760 974653043 493083686 856524386 118547738 573790149 871215256 967437356 1834968 214680615 383964295 892716034 825657007 831357397 410071762 458938920 424716713 856258823 298014058 457118003 312734668 841799753 148354760 500628648 567162726 777752437 91220869 958429799 242694677 918144957 906286297 982125153 148080373 192632719 86063898 90356250 791470602 928622485 952134841 984739490 937503706 985123624 467306944 744017814 212959324 843753603 950590043 976606983 30200230 480964645 305314950 676343104 394366286 991529477 708237234 918686560 337144989 900495868 15589026 247544250 648136227 714935511 378938622 964823797 890256552 962651821 408568825 667892185 641117179 803023774 112355044 952122491 989984200 994436110 569531050 902356824 531147885 575632758 155865004 550698003 828031646 866714481 93619063 664906437 396308791 781510481 732793763 835644726 758391916 819278733 575187608 693728562 187685942 458537442 186941697 498136531 310042434 994998921 256214330 282856159 615682733 997437697 854414222 924519099 614359802 677248174 921188121 939653036 67363248 138836185 338682434 706218063 623740631 676428283 237344211 432758259 283474140 840789331 863433381 939720637 492715302 626584075 514764322 810132657 967063868 997568369 452570097 589294999 457959701 714270433 952809377 996952242 510626968 927078559 688592663 854147356 258320741 831898142 276279978 886821377 950884916 987512886 782218111 876121844 807285665 908722943 930603556 965161955 190312104 615384650 732906941 834126535 133963168 247165706 637868660 998577828 742985989 942798253 272548060 460786960 575281886 709830251 548766444 763682511 819132780 967848027 100984777 927019455 112367036 532061845 934533883 960178695 307437123 944079101 58770142 158310184 808309512 929383440 422749061 916942626 179339615 823152292 877686235 896363028 27880247 297348915 505413968 567551893 397878481 564720039 45964790 133965716 871210156 978002268 434661837 966159764 966333495 999636264 349411289 659429354 688630734 823663935 511226471 873236555 738217994 982525334 482227200 925202171 140539266 470038466 477299417 951911198 671491229 717214201 572509600 803142130 213917708 512847883 821520679 909508858 899845089 932173265 196080751 655019370 496226221 772722755 659677035 675413313 704879576 950055367 111679378 234574234 28516969 884099581 667478940 928443405 614385772 976959956 94889216 816833062 301141776 666780086 42886012 130177478 632158096 746304131 825774527 888213369 221909662 545891206 785186879 845156933 295526829 950988649 456639798 606962089 301945445 802895485 991158616 999111843 298372137 571485719 984802210 995668199 706109169 797937587 763279241 914979398 655372503 897789806 921071565 991666401 726213886 781320303 457792638 538379413 666797289 850218024 32317579 215847532 812534890 874707129 188109216 982157708 821259139 851091517 250473767 712445731 808990345 928003771 517040265 628306663 735580243 935743003 53009954 227915477 285553766 344611656 104998425 369555544 381069226 481766718 648671281 739214781 149402866 746355220 480149861 879462736 534756695 536067716 341262528 705073928 561869502 606482495 703547297 855430491 948352993 986801692 764342261 819169934 398389876 862219834 662990067 879397408 256930708 895543420 748019409 946828092 957376332 994534142 414563389 566201514 373181754 616374032 107897684 418850932 888471084 987280556 51954376 165636974 109035784 481117957 750009028 750624270 871972807 927674815 24040710 607519574 702926880 964804909 819847661 899971556 725351770 769987481 284901524 674812192 918079079 939299941 291665500 791698415 772272364 824034217 280544856 555407729 898822095 916639998 179043780 735828472 2231932 354193940 940630608 996012968 875800182 876945561 6389862 982013642 711307769 864566614 728147877 906105274 883914414 989546515 26046996 26991239 199853676 537184796 559466074 794805722 352161990 487664306 195367151 403738732 687828815 851346961 741042735 813487174 57233723 952526272 409378757 841269293 321759772 709290055 572773314 755282788 40467315 40739591 607553848 850795645 868078658 876965271 90866387 978124936 745247791 814313000 538349973 981552946 183695852 385048341 892966944 999132972 880187952 882689352 562354639 862557840 326112561 927303338 957970543 975954727 261033279 598840215 359763491 554854892 737867676 844080186 260728342 825834871 82212835 523504395 110855112 565718271 640161559 869473797 511790205 697001909 670786044 994714288 894532692 965928849 334013222 536579673 635261710 970379370 471962494 689445691 233046237 391113203 413895193 990290026 151649897 158038937 252784249 271532523 898994370 968733502 263087776 456710206 834984856 919438166 755971687 922831902 559730390 569007050 119054426 724354086 241008737 413449086 894605339 900650081 240389414 799954510 167929467 401674661 237547114 836713234 521420352 856857591 496224160 837117448 414628830 829200312 355332841 564898194 493331200 521201474 504769497 558514131 57419400 403720886 520655884 672798134 97108929 860769470 622561490 631463903 29544338 696380840 287035582 665026111 475488999 734569102 743211887 821051437 448312165 581175246 308332395 806198255 99111546 631348932 917786431 962557460 587716951 726047705 984649670 992843720 906377613 967723436 766485459 963512656 962670238 982128391 30023366 624990477 164708405 757233847 635249497 893954196 824622264 957945628 304469149 485981739 931817692 993130211 294209383 512753548 706622115 812989338 906489878 960155245 455004222 478924247 400228361 860699972 93100140 241112559 371008437 747098437 438017888 936122520 775837382 959542755 7645844 56020375 889081468 979131984 358655032 407296147 452988153 620446439 675292146 854180836 6050507 520966242 548934928 738970405 324267553 525005425 43488601 201355807 901513866 995618706 849223902 936300159 913546401 993518852 776326996 815000381 18910350 336053954 461192176 468301277 646090293 690394847 603585795 729031944 562062818 857595304 616826331 703117247 561724896 860001968 392572163 684386382 95476977 566389085 757391486 941142613 291151479 660202292 339217149 476053194 969253472 972836708 878169566 949577732 258510586 459314891 761979665 898880128 855305970 956512116 809542510 830162733 32604271 728117815 639750076 852741220 938317513 986373841 105757778 624685603 80815395 818723086 360829712 675113413 556476551 807651349 484339671 747983122 141555657 760922206 237420752 261732912 693682482 982323430 604240905 786848345 229003017 576552924 669365180 694805997 58552137 551267963 246128948 981361562 503308959 600661064 894656434 910698700 280248644 942421710 371984981 453562834 58920847 221198609 689103071 901057901 765144542 795436712 725805990 805514888 524480575 903514184 500600196 745461370 971116960 983998145 791344268 824871588 710899372 884827695 970737934 980573443 1183070 178525297 467821775 812923479 280341128 446755592 222158173 885742861 192536800 564037572 850131340 947096163 1003003 130845002 136692315 253439121 508723013 857730814 257276615 891011132 254848906 289823966 775600136 952285759 732930652 824663637 150667397 809286045 341743537 751913506 953892986 999704338 537958212 889238560 306255362 788699463 326011864 507240931 751388499 823537805 273975335 424921745 422020829 593185631 267619116 978413372 588189170 929322359 688950897 846081598 931993119 990750175 352270353 838621234 750074562 834537932 762316357 904242072 962761658 968481579 72507696 804190798 726479801 797596210 144061578 887331649 444165880 617432847 399530204 451630981 711183859 856479066 279794635 383361354 94737605 881469574 929605998 957193228 562826538 817129607 896481468 903451513 483154073 949753343 222116665 971653410 464754236 695127752 46164373 772120639 701717129 730000670 936074333 973106683 126908692 388881594 139802140 412614717 563553593 807939088 496203359 866075400 54554319 745541762 476467825 514836247 371795590 922570982 214420530 931546601 879556363 909848160 537909511 821331170 230282246 878023914 44796009 600221504 769990145 802178435 704220490 896213347 104249877 792526543 793223362 972357508 515208768 839496022 872577914 982657449 983662225 998346426 934350066 934456391 687769425 990871868 37678192 844078641 548962697 756130057 636899837 848000750 207538463 698545403 718434693 921684587 41228752 660187856 611865991 787151096 738710881 938997836 143414108 563773240 246964150 622348816 689038948 695874623 901228346 904937600 733322632 938188797 366367085 660338215 185434278 254283298 240116806 298265802 555997068 669064515 656333139 729670290 216067703 642042442 949122578 951181105 827451965 872976153 678658565 713737021 887693765 981383874 999596279 999967850 420446482 766754435 520795781 721042964 812129227 914494004 747679012 953115798 413515351 941644951 214614 378471544 112849739 625960256 369645277 536124003 656022483 856319794 403771620 979634604 786712435 894014104 708940792 897471555 696089583 897507810 665067666 932059784 850834328 946283783 724671413 729037592 765593914 865336399 332211677 788416719 118719354 417064321 451236890 792144655 594655157 794307703 586621003 911582349 307661885 787611285 356540595 483117868 653919158 974452662 488537213 701347735 647698807 763254802 710030238 817367942 701729028 765306617 20314600 855320948 364675375 910323782 456037828 814101364 490824052 918263307 318192916 451788602 759449533 825593734 612546500 909742292 712212073 818678451 571474713 903880363 551079588 757424375 188270269 799410576 955399018 994680674 489868147 761290037 48497656 64772444 340274494 925051092 682088009 715298289 999560403 999872796 359848599 373264082 131878313 861898215 690296318 861030911 646427133 882069754 263774391 541446932 578525695 817552675 578353768 896144547 565521307 871229442 552945055 675955133 785464584 882821691 290558203 823145470 958412050 982002371 382053682 847516739 971074841 973814528 840326900 943623116 159992082 497312804 718225466 972250516 942039200 984059898 218046066 820423639 171955187 255093824 562676521 691171842 553480415 937067288 142187782 717163765 583654986 841945482 386660917 569356255 994556581 996226765 953048511 968670153 500701924 732023047 985329777 994143971 774496810 935077428 853117777 888413359 730127845 858462134 109322067 916697244 540113644 913248535 569610606 739440572 306700578 980506537 604042266 724367567 655832030 944314505 348382965 738958394 578875299 928422257 93389457 967609957 2575096 69193225 693681155 904717791 636926013 979705809 521650309 753046198 436556108 921231351 146477696 428947213 971605181 992284694 475217493 593720591 633889023 845003546 618735803 963087134 554712709 595711579 570619090 710231647 938421521 939809405 936366367 956014050 659812792 817168996 888926934 896355030 240603728 976589484 543708838 783386650 7287948 163705463 652959640 663763099 907785721 935271662 160614768 304081604 688757895 937191836 192932093 636153187 587755052 654989967 166892325 954957412 966525680 988949137 916569053 945630985 904152007 996360096 780534521 991549233 835989197 953973681 439926084 446580974 918088599 918684755 998307096 999723976 837180364 940562063 217976054 726914915 41887514 656964123 291600133 920592303 850109043 978818513 346100757 834666919 698421535 973925221 155179921 952533220 410764399 656846576 773763291 875606100 298414838 873515558 893324134 903525707 498207623 504466650 996463082 999028139 469651929 932059662 421670138 557608904 644457880 873313403 915765137 961379935 26086318 91958564 167641310 745699018 294688814 928419910 616867057 919284049 275461416 365554973 205050819 552650590 884319580 893521765 266111465 540596348 610907828 894529601 16874354 393174889 899116002 958966185 314440064 869916426 810966893 908934631 140914580 248157333 585125364 688165645 85397259 130920239 57437568 109610064 155094538 981158448 749138480 864323320 564736697 969902271 556444094 874957175 156143286 365249922 7883906 597575799 125360920 520290115 950441754 996537257 126293510 269405376 854362353 915294093 378142957 401780329 825704037 897787211 933447762 975837050 125792086 786913691 427570867 734076996 682789359 686722094 501569605 608513298 612917586 787359565 735686126 760374167 529117833 723156473 389591934 515597028 617487236 777891725 359248363 930445249 652899476 956833917 361495806 451541719 618196958 817401875 453066850 503718383 693823106 855550051 739637974 799852130 885543224 902148421 984258137 990059565 608226620 706504160 592204590 654123977 79896928 272374417 704021149 969996377 211776484 590003286 672218647 789473256 690602020 973658027 678944760 773306834 411829374 749967315 715967724 777933817 234527893 553126533 860991283 983993166 325650632 371865356 239522377 548218542 399764609 456437031 173419487 839667035 314236266 606937697 410091363 802334690 580936717 976652769 800402614 947320774 15747796 22415866 194153350 552937437 704648460 960600164 823514959 905794338 95702448 529074799 402669768 508524801 549834405 644144180 741305393 948757951 962553657 977819189 441420164 826169119 840158268 932227911 175251657 277581732 985127437 998560099 57567063 963033597 43721969 204358926 102047623 441247852 500716690 521209351 727581282 985444404 649112335 904138675 426184636 829614705 804329544 840594716 931369825 983184974 585474548 615024467 96811742 678498475 540828687 950593288 177847507 598655509 780983165 955498186 716227762 997962719 56742005 926926860 544744883 576147427 138725034 449688601 542204626 981225826 213182718 631247664 658826181 709080262 424613607 860374751 308278054 384080764 678158104 964824131 370368819 726640738 981589359 996037641 36116469 88815551 558128353 769764858 691060666 845356635 770875441 880677698 127653120 361902857 202371147 267899429 633575978 792064611 223871932 487371855 814852691 977424688 916138979 968800756 284215010 646822750 925505708 939849288 98292299 194897407 386016376 398150352 731390034 843971590 96965205 582543413 427898622 567893530 241486255 968116147 210302971 603704562 469273258 728250864 938152235 977900648 335943174 769564390 426643003 534093769 910169802 922421654 171419101 597178900 194043370 515528028 133787815 654599698 943930791 944872687 166477263 935347496 45355175 616675963 153756105 374714078 749834623 906453782 996721217 998952504 360051461 814860253 317314131 772642066 329784107 529303351 557454604 559061493 680253860 717298800 744971831 808286135 291400239 426176840 148101867 318483834 495958459 598903026 554255401 710794741 690310800 722240813 872779955 915305894 86235927 948898273 462482407 554365780 871714794 953041539 830038829 894438438 61643891 393866650 680249019 990671650 176864820 381228593 933112917 935531195 118733045 620769933 284246673 708148279 627210978 643949021 568120379 787740382 201217700 224183823 697793984 816581159 443102355 513045767 596684597 663652983 199715488 549675104 458351051 469477151 243666020 990851391 528507599 812694414 987533940 993011609 154427995 629351421 120523107 973423821 520295375 580012712 108494029 123210357 259324590 794757672 437141149 446599639 537260944 967050980 289800861 653253367 380422385 933294011 652090584 872801223 83441230 428813467 771311412 911091132 731419102 827411592 952645813 981289470 980276363 980954777 906739601 930428028 2080248 608097262 694314718 890938228 251614152 733055733 8770059 113625878 525247538 840354280 720462252 943783731 941720638 975084769 35086414 742539870 270247337 459539163 191406901 757134994 675945233 775532197 197947444 359797222 317750346 505678011 408651996 624439739 738739002 932565486 606913331 824331494 942489037 981580569 71548934 352852519 545934186 775122241 208828449 604579111 107700159 959005726 120521721 255444497 597787313 917172421 935441299 986890175 164284167 297172177 796091260 946470488 475723670 962504045 162945758 393033204 393347608 660886573 445786280 682030815 257989841 323286070 259568096 532165873 718021444 846490387 558837315 582255160 284942089 894377341 352942529 812274765 455091244 836770604 884261646 933063994 591650325 732537650 857647122 900223518 611507794 660666617 213815388 889627959 259341510 449391792 240781297 652671337 946689027 966329081 439498618 902755490 50040030 606758070 135312923 585168618 687159346 847157152 936558405 959170566 130756286 830981303 107280789 472615252 743687422 780823800 6820885 884259523 438956069 710134684 172561284 703437825 740264767 882995773 988053969 989019890 497124548 591878186 297675503 934948875 377494288 759843614 434922764 655463601 395437859 835317888 977705961 992448677 443500256 968880659 684373778 803515203 464908891 992687868 476890769 688230528 176209472 649992007 924607539 964708589 28476439 537817149 728125058 761448629 740579567 957258521 994610234 998235357 983040251 983772967 616643510 880410025 846972162 922169943 408974318 717995608 906335409 962269372 674435055 969679363 308207799 378654112 927260942 945139001 581581229 786243227 903052792 936806955 379517854 502801460 674876091 703768590 77251638 333554793 734318200 828181332 556057072 861139069 701780234 880900118 785933773 904468110 289304360 670199216 222121208 321667277 695814714 984496596 351757695 429515157 643102259 955093145 480972685 713672497 955047167 983212126 687932847 838366578 44934583 370867898 995571531 999150737 458194413 846193043 300772820 849919240 842543620 905924492 433697692 471586711 887888831 968279810 257237074 442453652 71145518 243667996 469366849 939679797 306279105 452914048 863229913 964878566 251365555 407137633 474335470 497096438 396334201 984740598 298622739 933846847 949343683 966831531 568372293 602184881 218632105 545313766 706393857 916776128 37941000 212959894 35122755 100504137 897885083 917307037 912440439 949728207 634952934 646164769 579355210 885876402 312384176 543286721 33007326 929600710 426477871 518244890 208823081 983587172 904910665 940002571 121491072 563276676 237506365 683983407 74995321 573793199 418497529 858873893 881014327 973444904 193139372 281655288 722202898 757402909 498433944 755101596 328885893 330214865 50419835 912512401 756766901 973454788 600694846 979484250 422263222 459353238 521970088 548146315 503261070 548248803 798419151 868463135 326287673 409693164 2636721 40033665 421620226 664439012 442440785 868743979 845004045 858005067 632413990 760273731 586204900 972485733 543258024 959867347 206417492 379510849 763521926 870257476 656497177 834966455 228834778 700999935 280760104 858816028 829718461 912074437 275046098 409447894 506142591 955132152 824667320 903108889 840162733 844359680 906367714 998078746 87149049 629469930 103426805 109505484 11048424 297744840 5444993 262475655 262581702 876891755 68996672 172379586 895279319 911305807 312260350 936149472 521164050 993678837 823979355 878545348 661085220 816794158 947939967 953606566 483136307 958199657 685061938 717350912 769783375 835628158 157229808 957266993 572179613 726427343 956081556 969204759 484939184 599060665 996971904 999566695 475681834 634135702 753726814 813928232 344812406 828219237 30994179 790220432 493229203 923711850 500531893 579835235 316623485 971699587 136132276 539654748 401838736 775487032 587984642 826821850 869340461 937887163 361283626 964623734 455051319 926043775 472403392 527414033 955742874 982333669 390609772 978264171 597598568 735553298 150814909 783226354 275551382 283972005 471751394 778165887 468875016 803737330 280224616 623194207 85511110 800539819 435776491 656311103 527919248 610359388 638402312 962332312 991156951 994816845 611103361 941357051 788762691 798033991 839262517 907628144 697036672 899106235 45681618 549977442 293882 746342223 695309705 740639500 57537111 651884582 466944412 562834051 583253404 839281423 430687547 497545304 755523986 973340596 572056748 856015412 927139625 999888557 433700363 757078015 685714384 909808375 499311417 604487350 491069088 985785110 132317169 362852697 593553139 669591077 640564097 790731232 287192454 888659576 634587391 995832110 749212071 751914314 406770751 491557360 759333490 927933067 543058607 916820689 805308713 942193011 1062436 707637370 914213066 919636415 578236051 960997803 361408421 908049945 344688670 736772164 784070342 855462959 185525173 500362746 921860154 951220828 581858451 974928304 846937812 849672081 578928957 994446569 995372809 999882831 877359374 995323793 576216539 982359034 428962742 902767219 437990274 935521053 493862955 742114653 823701170 932613207 694067199 834220310 801019860 884369949 853161146 965683503 703169020 872433000 597122897 911989455 346233321 800176020 162248062 689938781 124650534 777179577 487489085 765617583 313412411 821295976 100017942 558118128 469914144 780465059 333716911 621897111 544129013 959928692 540872872 686433465 318048383 361079462 293985324 325692882 404428483 993118097 348665366 890157399 884173555 900740316 840252069 891381750 611208977 781346235 612554031 824286204 825854968 965879263 334513603 456796707 640236764 727901103 11287550 627148023 471053746 628118286 290562439 455465081 617979956 932294622 158703622 587522909 33973921 273341751 138243279 459546454 625004003 667395702 94466992 532932076 50382298 208543620 861406495 990727446 995791797 996343906 401919344 690442772 407108066 587591136 378118026 902212795 132686080 390985684 325713725 823069466 92063517 442184881 928116362 987224178 665212335 927294196 698680562 982522609 127695819 388123383 466980036 839206662 87994011 160995125 677514337 902462423 917366398 996882733 214298809 224590405 50109389 814898229 145382194 457325146 711098687 889602899 770771062 810457294 879055427 896323438 234306468 771793932 253420239 980901852 180204580 977364922 273745181 313589177 466185419 488280234 381840476 777028595 460816639 468177051 536522611 943774516 228687180 437001395 107026918 734848978 799672761 836506500 264055476 584599160 855430259 926337456 947334017 967390379 513642198 866040167 139843726 200743580 307464244 887706349 515929158 772598085 690458877 856144474 340049881 551622739 225918728 621959054 365174603 724293363 836833376 868504201 485115958 758146455 702338553 849223210 915465612 978592251 675043586 856924505 772728321 913523716 99022638 929468131 7732021 55034972 964385967 972219761 740524346 891015300 917544814 963399577 387739285 409348844 600946302 892044641 219414529 491673703 351665284 710684500 355183633 469947419 222968397 928534951 232067992 745181768 147922167 693592765 382589255 577414559 909475458 987534234 591900189 752243761 865155261 900417028 477954099 970357877 727715479 887796402 100410405 539476824 947944417 971408182 168757362 255076853 115501453 941871717 418399654 591099038 259714425 558328160 49826353 158290107 407415531 967695473 640604915 979803473 912963107 928308995 676597299 817618533 868610081 879736193 819665708 989693775 314494184 514909894 109639408 690883901 475111975 897841250 951078607 963748828 638724381 776284413 335418729 570220508 800906953 934430383 152193589 905413082 862365124 883384428 28702249 630186025 862467273 869288651 766362362 966681293 839996493 887429149 359790614 695110612 889824611 939095780 148692016 802666926 636284653 839624503 589442773 828195858 885298124 932664036 307359329 773400442 447424127 671534771 444100297 646914765 218318695 226307201 492127898 566366361 717502864 813733521 681055841 817295979 906790686 966348384 223252334 460732995 647061348 923525698 459608257 810110467 466171159 795754420 618520793 897953106 127930490 741289725 159317634 279797532 601526352 773149011 168252561 260558096 367218220 666341575 907092140 936190026 581260288 902807834 944237994 945175436 122184845 751184458 41516450 126282830 675092002 986766259 503765483 577229583 24200749 496567747 519736294 541191665 408545114 456722930 538789092 657968448 374474472 444958180 713332039 980719322 734620089 907355912 734707016 870032266 284763583 793353228 364730653 687107604 730664194 738942646 339905869 791724384 315494068 891252676 997427135 998846862 362237094 648684799 863529079 892770035 976047172 983681913 425563525 866722861 979310105 986852630 495635281 629922863 878487332 931520944 998736385 999000702 313424672 540941875 652498494 711947247 801134585 881298481 655151855 934850283 223124456 618368700 52475032 163266062 351164215 871558567 499095013 706380907 443580035 812090248 483687694 601278603 90182673 622249373 491833758 606508229 760238306 863864186 79535738 171677661 375588203 598648759 878083604 999786416 669270722 902854990 528044563 906263965 413091701 901517601 464081011 783248267 57183811 598888363 209504329 994937728 279117154 899012180 972646283 983955776 657036577 730038069 394115005 833697506 454557307 989094899 979014298 986317330 659878722 834425500 523773751 843872621 933043683 975037221 24541980 618387509 932130410 987026674 783849798 962067887 94671359 302973405 987748796 996576267 349245516 924826197 502120973 954978845 158404673 570941649 525184308 725003910 787063521 999160010 777607052 924117455 869738515 928007295 979152436 991374025 401566208 453175037 386392824 665155666 985013337 988310419 718090261 961116469 831133325 924930789 190631129 908652978 874949816 930754275 368199564 661300652 139146652 454227762 659360277 812984334 294832020 586504935 750774805 806587843 919061925 938001700 754203967 945007982 139781457 508720668 59187886 805247054 883821747 986982406 147966004 404884929 184412944 858471347 189812815 749349194 125622959 336538021 869277998 999207721 536488725 965865844 800464751 874746092 901341084 945391412 520431125 533509683 249940179 587517429 738095321 901052093 940315162 973656629 679781880 685950375 80082452 424384823 570484867 581981601 145252241 687070708 92489569 651819476 241074046 702057725 973593651 993094773 50398397 272404565 619222280 768395701 550719566 950980800 11909704 177684708 915225182 940481768 484470650 866502704 884140729 975812116 478558239 722717594 583875474 714406876 925511782 938780860 884929844 924176452 824261161 890750503 584237771 934139007 652232285 911644898 494310410 595944954 925430789 966728377 985931305 992637168 118235164 664067083 268826716 781696592 425367470 934199610 489183612 895754989 532882814 927623210 985283965 992582913 463386436 986970290 573919192 613159484 844662201 896448623 783840437 902319663 487394233 964641530 848819631 883804947 864875609 868202094 775061819 941196866 202755249 934867032 437673602 829086430 468648447 485627822 738555076 778733629 328645974 684600501 193322245 950582173 90321206 241158031 960478318 980934134 825630649 956525114 376689847 542694476 263025397 465269394 343774934 393850024 627476144 649201306 292022091 960118076 87831052 906213210 942719658 969500472 223395228 988108189 758289043 951128876 453099488 455278562 650004635 751893562 137112586 888364039 293216411 570742354 319655224 604787597 595616390 728103027 304465548 549593541 439499283 822729289 380547718 980808631 241374118 250568194 202411773 648005206 21512157 43044015 94371128 914432043 627001462 717443746 303542569 615245566 382376192 803348977 747092599 903393311 378660696 757807200 190687222 532213871 691932025 833805970 9257127 22606521 339159050 410196484 972780042 988036816 955187876 974356919 565775389 983095123 140184874 902253153 488477898 724028949 678027624 901542671 903673173 985538607 705418294 759471148 261333860 901911702 430526631 464035160 903604719 968209415 97383859 216943228 311144785 595473352 903920694 959832207 175461272 911656228 466623510 906222886 942233590 967389635 212679324 956939592 486410587 632849167 205598594 621689289 391980328 957582960 22278602 145504878 358489380 780971830 564234873 767048387 846671676 853165512 802303280 959538585 341750074 510574563 663307174 789996057 935080663 949163731 614137530 707734771 318464055 925986453 214428591 735939933 313665214 463595895 872394227 977595893 889181051 976440706 500849996 946724794 699247531 990925805 522385289 934644870 976816020 999662615 120810099 400534432 799146135 988480234 395289503 455801867 862129378 904465869 822312869 932068964 188803045 850339304 234199045 321790884 238106865 797460523 88878707 991792648 761830819 834985391 812309079 821612263 555790469 638759898 991404074 993756422 729302940 846859342 865116125 942072764 194559765 579114260 432974952 973272225 731022817 882334496 684816146 853635198 951973594 953139092 738722905 772299485 211945882 784392997 490077255 690749781 48768569 624006443 387310517 916729044 607965103 873312472 374461099 721136188 480157150 565112409 16405239 683245985 357806822 630066277 591433771 884637279 276602120 675309115 906427651 918292407 997883705 998930594 688020670 862835563 833923173 957629012 939948265 955750947 210719224 370519306 896755022 977303472 990356043 992374721 160500734 583473285 111342467 132024175 210826046 614068657 512733381 812760918 921137867 998922931 529250153 561727719 651790882 746213441 429140411 670595900 783587394 796099272 876694837 926893843 838317209 934785262 399851922 719472521 331009949 453057496 741754074 857594858 810754644 836196615 502090543 740629189 287789128 884159831 633892187 712228305 666636529 710716221 629020729 862311445 898275060 933379280 290851110 535752647 22246180 661111201 127041894 635002460 128984855 233278916 640322798 857866646 88772870 641572920 280963748 291315350 810256398 994863028 226436271 561838436 822776064 927838250 6587983 451639209 313753174 523035250 381339588 742596156 335437935 854400579 166372101 553846831 547306529 773590724 81278920 759781136 120472932 143098363 50480466 722265187 90951144 916114596 103959916 349812657 690513880 932882029 142269126 817495625 880051337 994650432 323336909 982103652 232096665 720968416 935672046 981434803 238134960 983047334 934001275 974452873 227259031 746548352 24304719 89084171 130017516 628600461 907780395 975331163 531109816 869184394 685547375 789178949 95955478 346444091 425701941 635332353 154855110 607266133 429874553 676471589 41221698 679066048 277452389 845720008 545600344 968970359 953513764 961145695 637719755 990248477 172976580 718648725 617628981 740780398 782532939 834056309 961283769 965907274 694066449 743772531 185196726 639306966 100856023 629978865 165586064 856233457 326169808 892992781 985349618 986343391 666781554 844340374 966510113 997737351 659815550 952695976 680102404 944982899 258276941 609139174 161759137 518901202 521351898 728492895 962623103 975703644 693292725 766391283 312332010 656361856 54523453 839568412 471159708 592396991 566875801 775518928 625939928 975182651 723841707 800236802 488881174 519607739 159347760 538282909 481533089 846621549 322770803 366654206 422901414 850232494 926325756 968950617 54354908 194919006 414951532 872040443 597260009 609105999 654246701 768074405 401640258 522546320 488245983 885008379 171391355 620594999 286799263 810943100 86230647 354909096 317109858 601021311 746716210 806093207 587702477 759383411 14993933 949584233 507062268 745379428 186047289 522887694 217947044 399594935 694928364 720265225 635657384 856896207 706971106 750043088 491419420 502833141 591148647 839413657 738232503 882128860 579980991 667638599 766373772 837654291 598932843 693946647 465745960 687032363 165314937 627662797 196566783 714570054 583236417 787781235 650375236 994307601 535941504 908766675 194617431 354109648 3490010 335554914 758255857 985725985 534828635 914102534 439372074 919718319 482306267 732185692 170465674 996903268 13636601 712443169 252666003 988735128 713882279 943985050 324794385 851949476 915180379 993313430 149439725 316005027 58149118 569184034 536053438 944479276 557833121 832340342 819672433 947503597 485252140 985925121 777418592 997896088 949484274 953226321 262032684 664146882 764852608 988348732 276716255 774997488 903995466 914204903 156973117 710286562 472337750 497310028 946228561 947737865 313343046 939844838 827687626 971257384 744850685 828216361 551245106 995635893 246698004 561858569 726514341 980507080 206537488 257813073 108012431 427111859 900887824 990931771 6618395 740658623 542539945 845407530 218962582 588751225 180004728 305945177 313587383 988757035 835280190 942840433 844025830 874479379 494744652 888663990 742568562 997769930 33100815 509723491 158644556 938252994 124142534 233408988 593029033 681721629 784523890 884045214 575037169 831621938 520858352 886840606 707492096 913960082 392886593 958221554 949037316 949172560 981359902 987217026 398117986 726772192 135932718 435613994 993525269 999925162 786190481 871580230 111768593 968417811 891669987 925463765 660851224 802231476 177107635 251826367 260963720 821144213 87515684 788948789 782502197 926884857 128131868 548609797 335194478 597952480 179513376 518577640 984864671 995701903 567933009 900142408 732144265 879924250 303041913 337082635 839445646 970355770 884709178 936551164 384751398 806256743 857444459 987678080 968821367 987676461 547292672 618876094 825089442 987622591 386351096 824514300 955529330 993134072 396619763 603293942 532004755 824012441 627186138 957017060 70969409 888285491 619865892 800368695 279337280 906688063 743077451 940179279 533809333 974702972 581242763 731401405 538633367 971531455 15387195 976770751 384466833 802061031 836349764 873032278 83732174 436243949 887119433 921755235 768363216 956642271 190107710 308426047 688661026 993040502 884957610 945864947 963680696 970634894 458165402 919708394 617909238 945213718 476197645 728839569 893328256 916441869 2370496 233628253 801609218 806643100 132601420 631731942 61649639 251127173 862538140 957734721 404880769 428935755 129186190 193426239 277496798 784133279 840753931 999933271 581997224 868121469 377091196 420849789 656927585 904266046 349734506 820127161 348406104 720503535 245715640 465645330 592874685 846527213 490826698 941755732 464925214 509181137 484162844 962504073 762797860 846815237 988866416 993730018 237661548 403572203 813948588 880431330 198727620 211110848 196985699 995729516 709003840 753556448 16199788 462054691 940501328 982567224 372855141 701712252 955960388 981785310 806366326 824895337 412535585 554178978 619455906 667017393 62141112 388158586 337014086 599354021 8165680 167673542 248340901 828589431 535885848 796564868 668155609 903683121 48770613 569050285 439932024 546260101 231997454 685716680 667253110 943848180 544098593 765509562 980552243 983468065 318083234 783506676 82549304 107221271 717121575 973910535 258948022 321132864 959499216 995966584 902448846 983194461 172027305 462858192 363470419 903875556 448773367 940982787 284151008 591359735 256801756 396615244 588999967 609493865 220888864 908962087 90907518 809049735 43468336 151979651 676523513 687163006 714258879 861445803 624316548 796469706 561504763 789341525 313363628 765960281 73275090 519733494 63190848 943080528 839645393 848459865 756107867 858168257 885843208 963739001 329865733 617014457 779098575 985165917 641228654 675284662 186837325 737971891 111267048 328858781 218092488 223245958 908302604 976663440 712566143 849284453 802413529 866042274 415144387 619580826 349359719 983566445 626158042 958597453 172161135 772201859 150204090 898028167 921146688 953314266 645003797 668567475 763198103 956470759 330643475 997731502 685400933 913910893 994049706 996355090 684691097 931439577 766430342 946190882 192631617 449984669 928341321 998403417 411585472 442762853 174713608 313802394 352399820 393355406 748517178 985305873 756072177 815041424 624578126 703859017 157663698 219570891 490255425 633259097 613166762 966412255 503376004 930552476 550627353 773927354 643182484 826728355 197073974 613214557 318406811 760294704 500585882 697285460 178961708 207667347 681521670 807216230 748297434 794754854 456953971 460318439 9250336 635920715 652557924 794433697 301840345 315340534 480465497 729586527 845239190 997052966 146612211 408719114 114417833 954353431 542746415 799369361 404753415 755096067 239621976 258784304 362652498 437406887 299398681 483038219 898699929 903504449 679629139 865699922 506303793 549282395 762595180 803325634 617543621 812340231 36155978 120374666 583491445 679395803 744660323 796056346 427885312 668855382 670203320 980450583 270068941 776895283 282789890 345500914 796345618 863200209 715989575 959171452 27976915 40157714 413766884 898739420 386852123 989649184 361097839 840318644 210934393 548532877 930908579 974784838 323548296 875427830 190865574 595503510 895697343 992854018 437397714 733410063 445105038 566900313 294586355 633229163 126458239 332141254 274493044 370565399 404989719 895485384 193863651 611949741 514506894 666166364 975004035 985341523 92339797 832449374 185361948 335471514 270695922 440586328 340216563 850860429 258725868 499377833 173490906 397799755 248321571 390647952 508302640 603517144 328702552 485967970 184775926 618413405 693968259 709176260 243610199 742755762 10761493 727641860 366950678 840526860 273800921 998264622 615320101 956931668 399587192 417344164 529413868 921074850 876736752 932617351 408936875 888371220 596791299 855835300 421992417 569871507 158277076 208082422 754744327 768761101 741496488 763127477 462942253 996391816 729230081 936597562 204347664 210846547 508621568 853875935 938382369 979596468 456384200 532935100 595195680 705791999 838800823 875845288 523764218 575963666 74547552 249740715 861345974 921635235 639399245 745000689 650641337 762435895 72158830 826684894 75506819 120541410 893135182 947198255 858443065 998898876 779999850 977295540 589302718 613718830 270128220 515667975 318985081 671831232 123282165 650670407 924946323 969198635 889980067 938703326 306736982 324968211 267452507 689722828 342557060 542904211 318593337 827132035 790129230 977792511 33291890 876472716 884843477 928592037 726285830 920969224 832643052 933128372 627585004 821274606 402029956 489795784 159621498 826788438 380646361 974800738 914716569 974761037 466780719 899817574 389102326 708406793 302232959 569186689 623738062 913431065 164620132 577294598 872250545 985829594 967255743 987629647 995074671 999538674 195533350 727108597 54503339 786582906 384808575 822060501 658629581 946555249 428890536 442114959 580323685 807983953 449404688 508446826 934819974 942387208 207333242 821309872 644785567 874902608 638698732 642207219 369145409 975290935 882370901 989364446 941668981 955553575 935381936 999943891 503970473 534059495 273340663 740598887 475682253 590718497 74599766 515526922 417187012 772820209 950126766 953191403 656643169 965157122 140478398 878499882 374809622 443029071 936144435 944378533 910646455 914841455 265514174 770534675 19356740 154612386 310719135 789033542 822087839 863624477 662711509 687519386 227072432 339623479 862931694 948260721 394332009 702736383 388748594 514517344 664993160 803115114 556765697 630587876 403088798 852496788 909861988 945821201 549330231 934538802 689293954 936022280 173106272 769127091 377072953 753770425 674168500 787514626 935258987 939822385 525316732 957159243 995780795 997641284 199486459 540254886 147464417 201575403 283911372 405191661 462678500 823229612 470163818 791985036 399092794 436921243 468333339 507108607 131850838 458447882 688052278 979845284 728216002 948206364 856051418 947549686 295882916 698291470 544799346 910246403 573847428 892443720 121194375 894916549 282282596 724384817 848853012 919945154 626983687 831962720 154458260 422787700 828465837 839620855 151584465 474870570 693759930 731211654 926154919 960788146 196507207 919624176 896573869 922675328 476347274 505495187 256797436 332268587 847856004 993428270 382960029 442726965 877295402 881933217 892725234 978279149 239692870 893614795 154331658 605508232 384327381 424127504 741149957 979904450 678490146 980073963 117210703 774335222 821139621 929655335 773806223 847747452 153131211 877851142 504336368 511773686 97394806 645837161 339594050 596150744 367249762 624903941 207606676 930385557 712591546 900669943 562706155 826685547 272186540 386160187 468745438 810554690 5284674 886324073 529195857 790348133 457061364 993404675 769304358 888750613 15694159 125852987 698055746 721788478 606270177 983071843 565641635 846432848 521589352 675908232 956817678 984342343 668922202 751987946 353916546 546509320 463471516 490146676 754153604 885763456 173546211 205018068 481508940 759400901 323722306 850733397 827458726 928219546 511087839 637213684 692060791 788045857 838474933 969756928 897087006 978786211 774960003 878989243 452680862 653736092 474504001 658241918 652002909 790273300 532043850 830039277 669240285 968150476 925523638 965094693 838483389 865343412 133426731 331019063 372906277 858189954 573169544 697268369 741811226 743374581 417094644 889725058 6812892 273590169 653731893 915386607 584428446 710096875 775704732 941652569 325571499 810870647 807703124 925386999 282373021 719701266 588205172 811686195 597952986 939520920 32389196 523141918 316346562 567042265 208171585 497963139 789720120 806584755 840598067 852402844 928105561 931497808 174117901 762815620 573449071 942612575 390787667 443642726 912837412 948961511 48992313 491547993 98552080 336998930 510950647 954749181 795561206 848144602 748337009 819993754 798558901 818863511 729847898 867330642 80956459 866851669 930180070 962167191 580306750 813003634 705798121 885917573 416430549 995228686 608732904 778765736 297944390 522717863 691514128 935004565 735296326 927944433 771715390 840546553 656745415 782950726 654576840 741493928 808876991 886127947 707262825 967188224 352571089 659585011 238914445 622318003 535007594 894210866 64076400 977823977 549703508 674864855 935702821 948966559 647223164 891620254 572464987 956846355 616516595 989804921 902231773 941321496 601609920 896398406 541073002 769783254 650265497 953478602 668211134 924786357 901376642 953797664 309992114 795277724 188015685 614126007 53415180 976875523 496640570 667974862 249952519 619001525 973373355 980629857 850506199 999502697 219931684 978593078 422705093 927864871 389508668 538813203 69596018 980035216 261476350 612703324 783109433 824205343 28183222 804843467 890203833 933485408 930947987 941229633 357957314 501422381 30409277 400456518 119012455 319695919 212934213 273277330 185104349 330695747 248360688 624619217 970235694 991900018 120932959 177066252 341330216 666634399 468891244 922561065 750401442 940636452 943722088 974219303 517385723 851202873 76205890 387038062 348707236 751268511 681855822 786648718 397146822 648353798 366128782 617651177 268596397 798669823 358222803 831588751 696675024 712402695 419072162 581024987 259380859 681905161 406677584 998823646 763942110 806587592 745468593 899389934 911508030 949655195 120750084 183787166 838758647 860072347 296279480 604658490 61765899 866920765 827959088 910261724 828850494 944140154 868987440 940882826 701280181 722676925 766461571 918718729 833537320 985812472 20339746 368006579 81502173 161614506 736000710 853743688 820505660 843299012 770202967 825773311 14813666 400156820 576044145 942562910 695213444 803645723 825701863 852165783 264738715 996226490 240990252 644305926 598288903 860502863 734353610 911772374 86066369 643761192 166384029 973460532 419082345 545106875 160892544 485741960 274619270 538534246 679278543 838997238 30821370 647031925 982026568 994788880 220490862 509019543 955349627 970623724 202543103 337028318 980234172 998990798 347297305 926423431 637135721 969825596 610537688 696308663 646974681 763685159 314147903 423601855 71971866 794420102 12213027 168790123 995001818 995443061 903538820 940157744 351830785 615247946 223988973 752907655 939757394 953803098 5124203 27628314 698628256 908168667 295007926 807841930 608195867 670668660 15752091 43292242 717771752 948948433 374574011 468247055 169366707 502369140 831732046 991893797 37948761 947171358 582968706 721889365 601559218 895361103 415866516 756346718 923576905 932029111 921518317 956663998 369448237 989897907 946710005 986525547 179073170 530004406 701594772 947522712 459870679 586691552 366067242 722469766 83324649 934541525 166766865 547378429 616805477 947646633 23185041 262203324 408854667 513769069 715947972 934156984 156103562 760972721 483823116 635956292 809586764 980762544 353832919 683217119 234560874 794752528 688532620 990632557 349950068 585578569 145906101 936868207 486693957 494482163 619483228 639037511 213385459 323631141 692472810 996248582 176916577 304403886 528428595 835352916 647064517 647642889 875031690 909108514 659821713 928638797 657280142 746022245 290051458 887438735 353117685 664939351 732699025 857145875 413175278 589553895 989715489 993995738 408969941 505199053 877386754 936831915 968826452 992728710 338977293 514315807 47666476 947120888 646807094 775668049 50263343 62508250 922718180 983268830 17355379 515980018 290524451 726667320 985528683 994123896 759259682 890577824 566341327 592786527 549958378 722206288 113687676 511742144 838975736 947114369 194303045 763848125 175847627 528776089 301319462 927499098 944173741 971715077 968528448 993742158 203332108 640401252 592907082 897342071 769975704 880826242 137476142 577235792 144563066 232855594 675674852 986888794 72315125 970116984 985737057 990245156 713949173 756723073 196558026 953193856 550055295 982751705 690133671 763135616 137015737 232759882 255987087 548616972 108003567 276449355 253895958 779764365 847963919 989377929 16340275 279271252 5218427 198156256 542115945 624105597 491249432 860605644 69132826 248684396 596762483 998668099 224570907 760721624 225582348 495652758 171821922 722579729 544022281 880364209 417918515 582744975 176070738 294115675 523734201 575810334 431933366 697939150 768761708 827856561 426630325 438965125 411228097 908847626 653016585 732093921 951729002 961017646 493148965 626952171 345347410 900507528 527562995 642816624 755081407 873930504 181805655 557547727 269832276 431589573 346705972 950353216 998394188 999681873 698616625 858799534 215964287 709448769 429360108 549898384 469179463 760377386 920433160 992973711 217426442 549214412 115804593 517489122 561060412 852446137 156361470 752613351 67282051 165481040 486918808 535634258 455272585 596122696 730002163 895353863 888065489 962490825 989795362 996834166 815291537 838222059 552775876 567113277 172592838 442024137 603511747 729795646 443635010 684817335 668969123 779283477 556242735 835584522 127782939 237985904 493454500 730859483 520712041 752238644 727012079 756647972 967320367 991630666 865576540 882736945 672098135 948507804 807951989 860171416 324779299 945640558 382366302 574788665 767480613 958391681 550094012 803866295 757528754 830318988 532094603 922283630 502590452 744913844 215059741 508646431 606972822 681177433 937666510 971564783 798922124 818229880 952304212 962944698 592430273 858805799 516781689 742872666 404496337 687502179 817166488 892529548 764582816 924410706 753184879 919234000 516176452 516719446 915067082 945148301 995170033 999664476 591695765 705265201 26270764 771815706 157600221 279376795 273888135 771717743 185244397 770666021 8480228 488950951 667711577 775444169 369731109 829698269 685559118 933134550 145530102 762851384 121601545 957952863 361920431 851206774 482826993 963486076 687157070 952020447 741693793 887959573 141421623 933748970 468472699 660666840 120335829 290790908 614844829 675443116 918837928 996419513 488597204 832587765 381433993 673984520 276376795 603139637 561418284 780637327 59732383 573594580 122507693 698304959 945920948 983969298 301653588 406569032 566382801 966176266 621821957 981140158 522526007 867609825 498771786 638607963 277234752 825883633 739128892 868870295 6222934 131997589 441073213 965902748 513615551 844079527 963846710 964639450 442659123 833066026 854682854 872342869 516269871 585246387 92740703 433515235 518691059 738077781 292692849 843357880 198062283 525676830 540716458 619492272 412525354 560331182 507947240 766173310 562816412 696594192 593538767 917943822 961633215 975801919 415135894 873097950 161420631 466137526 337244212 863947118 867862180 945416444 240989225 341407596 252082065 264470410 238115716 452328213 174056884 340048273 937834172 968480313 575165059 726057669 716493339 847032051 11349099 820757092 340055559 361332277 951419288 974953516 861934202 961809581 728434039 859557112 179171505 349661244 361317384 788521535 923380776 923522206 620477920 841034603 568075891 583890128 905439206 963511474 807996606 927361642 146004964 642745061 356422947 744413566 960513784 990011821 695212600 784979560 6223061 870186838 255468597 486778375 780669288 878987140 483771350 668459492 866828872 974739908 8987120 911506190 997126519 999692565 294935745 758607351 113555057 414967731 27120330 349031644 240808176 809082594 739017129 871946981 2222977 790901572 499595157 653569626 685208150 995200327 773231527 822230115 214179322 593226458 39109981 948137190 531874898 842593512 468587115 721237409 429543092 684189250 419600403 788240895 733196884 895669988 852713959 989159407 663169148 969939919 904855042 926461302 131895121 313435365 327498671 618112110 827195641 998111657 424642619 634589961 294400124 913955236 399961330 954593095 759942937 800027901 277219489 546809147 973177411 990617900 607059234 969293275 133365038 741050047 454040439 620029555 77799170 150408331 111195374 732182395 151465368 728290997 840831820 866770195 538311672 607352634 179026473 649210414 645942296 674832291 303802415 502456630 242731859 676242236 861644499 968319521 935704390 936071640 553876305 951355550 838468242 893390293 789821661 931512289 156852119 246512923 544234237 900092137 470300678 659802344 160987576 438082719 210040769 668304744 89525303 536022209 674975796 728851613 271835055 884825028 600083857 816915166 734543467 895787535 533371159 877209792 821121168 837704394 643574358 836859930 73338969 449180783 455851742 821406071 943444703 989105916 85461567 300324153 623435827 636489767 982293720 983231694 475953138 906706701 815067026 946018380 979496155 994852531 386716560 756062717 109559203 302692826 414678338 729087920 672141790 995327245 678642309 718517938 906187980 917135145 32005167 210858097 465864719 920089681 139768812 878438659 269963043 711845429 229862853 790651339 98397201 688148362 131367654 233563479 171261471 449962727 386592117 685624930 20676447 186539900 553321712 633229699 966847175 985990601 591575301 739871657 833301105 942709038 309437576 705789184 730850250 733491458 110168328 595568890 871977873 973820826 823109117 927574291 461364824 727623514 389924544 563152162 649691720 705556488 993049968 995414854 362011726 991481750 831802203 894967298 620990950 708722780 700729942 756515840 23984664 490458725 744777379 774476547 322040029 742521151 806401001 964145054 592833020 699885105 608714061 888934917 204288556 717847161 501810609 869427081 7370173 946908532 213138504 805079006 924616165 983323120 200562249 402388267 965797149 969327549 169744650 462796426 950301713 965580394 277827197 502109421 297443878 624702466 6195296 981785934 508712132 789954965 256699483 986750680 476648445 525916395 383751007 494897619 416969840 919589804 833896413 901683234 111723861 137250266 587048173 733324383 325929907 998731477 131793643 234833997 835073798 911470953 638260377 789465139 844896598 865459369 240183035 319014821 743011939 866876110 881685669 883854704 840120475 923304605 157545241 435035137 132832774 957086505 87041355 293705692 630046465 914385409 88830938 313909091 878427163 912299261 313868850 787978564 661923035 721832149 986186430 998811012 120251131 561584331 7600700 155880072 79653706 982324247 470829712 723612277 207048015 538129116 670321044 737514173 313969108 457199000 197714245 347520963 383432367 966567810 119375694 912155024 839994204 872870308 405158786 692057559 847114554 898202585 857947636 859239292 391127249 605713699 157346518 273900811 649581245 788810978 391546498 522852684 509960102 920101546 667700482 793087175 657712721 786858288 470361169 633348731 557433136 642577262 23417192 272318255 122258030 729356792 626549980 724977783 556186082 618049482 298209718 316687864 736437312 970396724 214869211 543278335 27459792 898807862 905222784 986098310 589032122 735647218 886555021 962347368 235688853 391474328 857910782 947344959 738370770 871448065 425501412 586645896 107001284 857622318 936753527 972203105 607796565 942380435 216255723 981000552 662674159 744084701 375521671 676332004 769465299 944491767 320337972 713790531 219873487 912307983 245974816 664369395 510866966 729017846 183726414 658059531 700983984 775712352 461404045 742344896 830377299 987297485 796018421 919750909 647036982 757290710 363581363 813626599 114934830 891010984 399067953 900718892 272959654 853911202 146684184 208691579 319206315 711366789 897592232 971349384 71809542 501813449 402484248 966786022 864216086 952351816 352340168 400509819 850933454 958115306 249870420 731054968 740701627 963224195 65197787 302759096 995878805 998185138 560178380 581308289 387130624 875158120 472210269 548388161 59388643 430994944 738036034 826741208 789406794 866463065 145606358 234330340 932965278 976874262 294832671 853507413 445697744 934568595 905079485 964127444 766687209 851432686 977227089 987578211 756800289 873843886 959948568 964102369 359409591 504239453 762850517 914753221 281326553 343838634 150255038 666614012 683757167 718790965 446652203 943398558 201146717 759006534 478073045 735113543 404860929 410554701 259119284 481563279 533662829 790218305 964963320 972367736 224782172 931674085 433343032 861046954 255504730 715047666 392036086 894029095 344184393 598063342 468544360 922259141 925223563 984450205 43940551 78952375 535314305 994922527 22550097 337932879 531467222 850128436 386489057 903927969 146711726 622082804 397852249 862162391 369650502 556760570 8023383 155073039 481872912 744951813 163509197 712476264 616255841 670360681 273194984 529218315 586231441 808412642 163609363 632983376 999937302 999954137 978043867 991821388 208147031 928929015 873360157 903422417 413830185 578612244 86696473 856806924 315026776 588502340 119469514 286299084 927587242 964391296 104706216 578119191 841718008 875945851 36076249 925632393 611514510 801061456 174646701 806613771 814415998 894578113 892584229 993657054 980190753 989316881 727351579 770219670 351079061 398116700 940564260 959972388 617095589 735152303 638952069 973222908 601374562 779072961 301824807 913071225 759362642 838019335 521890454 863104650 213792209 747573813 720745101 872661645 256575693 701728892 229717612 399638670 109599187 475210500 396960508 410342194 578812709 904654369 176913497 376756845 909503747 989281428 875818049 965440747 218414361 270815064 908205097 940147051 155745783 466290940 594614943 823282675 760145424 970133033 325736851 764827895 27497381 327644442 452896428 609741691 753734589 778643988 124079785 673759467 73223510 928799446 274941646 900665521 989290761 990480475 980330982 991041214 387555305 585175859 142584475 754512058 973523442 986470975 409664829 710961518 349036178 693725044 830192958 960084205 91628895 546761030 881876000 902250101 826853153 900098306 853833785 945420715 833689084 860581072 763884640 822276791 682114423 773071578 337920958 955437093 634520133 751868865 597374173 732331173 517284563 590190641 229861398 711696308 320215366 629509552 617177833 870964975 154648043 561178474 464105503 658706465 884720686 966313131 690747782 706839100 663199895 904232977 374092335 611018575 404971914 566445456 311952284 554706338 834686986 958123452 706836846 827593438 483911194 666759543 830306904 936629103 332491295 994586118 48253298 565680147 536144627 590773938 504760732 913384540 241994008 306250103 572596269 573039274 113149454 662341900 350904006 712487261 219460987 909466762 651808926 993803161 703110990 867263536 305006734 630804803 121821993 167534285 52759490 105284091 539159800 724617402 19576225 730367376 603354887 941856351 555817264 591356744 404007203 564321992 658616050 904311787 565889927 576473996 242199479 620856388 982397123 996832461 696916706 702650874 891368950 960663761 980830119 992334220 26694937 958705704 310186317 387110598 509598507 780172599 645650527 765916779 319433299 864984932 480647335 489741005 355703170 480120351 569809743 907951103 256600342 963391863 807924412 822475353 910795917 975779194 239522500 448171600 499769911 840801986 265881976 338840111 387260516 411638800 490586108 932728991 6481671 962310627 264620962 605286499 593411616 895614553 273531247 870184444 128177919 674701383 121445085 614962170 867636630 998938405 874161475 945788525 707649674 956392358 821484408 945330068 398855682 759055110 46313941 94231062 45537454 618101715 578739439 653129182 293654036 909217021 557724843 735803675 116557284 370524283 663550196 829624824 913047069 923949583 342359447 446136471 406088143 860273341 648550185 760732740 150079712 917742748 805279380 819363831 220345699 760932065 814644413 844977140 67337069 204442602 553157390 705440765 236503088 493187686 770331684 787687376 593009696 997970411 253209770 844399253 274566332 385608113 308381606 530562882 114683886 864357958 542302140 726191654 134504177 144603569 691496179 841971647 90469246 649729116 369905430 633977585 72288095 682940743 686133523 882148884 989053799 996131388 304356895 537280696 898304434 940133279 354852144 964610251 646094811 650644316 139222009 625879533 941126337 955561891 799213950 986485572 16494683 300623563 74167040 745957801 628724504 837418612 899189862 946983502 61934599 481290860 60011549 323548241 720878257 974211606 667899775 870830017 526730707 728185722 541524235 878755008 552432394 559157981 878148187 960045799 153300701 495316179 663893014 665617709 325734734 545660762 284507999 750866365 842896027 990038803 348108779 957977505 857047543 919736080 50877617 243298220 703726628 982353300 907242498 957303686 826656925 835497662 262523442 435012434 822218937 841454689 378151544 661646822 405644356 858327583 373501751 892380987 242011307 778146310 646315824 669350774 795647571 938877268 366893076 736569680 227977552 419536656 566315145 693360173 747598801 750355818 561203303 919072796 892474711 939662094 609079681 919834953 870240375 904359609 669324244 930966638 204897582 553262685 53544987 629710376 615867071 876712300 354906012 917790039 365415017 465249483 516716552 948918213 549091243 977980007 645257233 890206748 773390498 988553823 904026100 906021997 521034214 946989844 640723775 977850074 356322927 742361989 308802985 793623014 299157525 388091530 611811319 735400639 43712192 393719064 932285101 979868233 766575023 902846482 181275665 621172908 712874251 932170106 686207465 918523629 22504458 391995520 920831038 974234588 327236053 592540301 769511755 990487404 366329910 457316580 86817575 594633775 855665798 964124536 73363427 737829681 436826064 550409853 341494257 659648763 651754729 668024132 780794521 797736541 138683686 451678228 793956363 827740056 112423699 172112411 775344970 899388687 666062025 829153464 700455119 955678338 846173521 921134369 683463647 983300961 271770362 599372912 511628228 865481414 348808137 951566391 846097603 983603803 981434968 996063497 981801426 987744684 261954127 852754136 975517644 981865604 341046516 350331675 152271022 211519300 388236235 722817905 736620013 792428507 19585459 382355050 396119819 895098905 311086637 774217302 364452337 958786455 194834902 588365078 11408060 419897350 570938704 713326573 2218280 825659786 37298484 111317761 858111910 964540791 904142501 946829504 331687902 430100846 357561206 981970759 988202363 993353582 623091121 739827917 402485028 722575167 249426452 682698961 406565687 711352006 788261902 900967003 500779695 654666129 395416548 625889072 229195111 869030848 764444568 767188176 282397041 517249951 496289663 727713902 422933708 830886917 760502231 829052784 440551675 672991315 454218996 571720716 106000459 872653705 295653918 601389299 540182901 987392841 960030125 995038831 427416149 642017536 186122036 483421269 820860276 916871882 813688338 847531345 936193657 983998867 398435565 762851247 452747014 705956064 167270001 844946863 256410897 603277734 837490383 958547194 934884172 965264223 105383758 770620465 775038779 912706411 847281475 990382297 489501649 972613797 969636175 977397052 843017088 856313820 349861974 868658260 190424174 745725736 262178360 776969812 202502514 964957793 980628245 981815616 636009004 717749371 80501943 282943445 114833412 365451878 350865733 368527681 678106085 999840188 268722406 659302574 203705588 531727536 609117463 987761307 367799101 977389936 375940772 648918100 815532042 941907960 154304394 770931940 905888821 957329076 849719651 957480477 212400163 903860517 653668299 836455942 370518324 557129505 259840868 701076254 80619230 775353670 262134812 534510539 210951545 269243484 410968029 741017234 947215107 962775578 241907289 851705379 509881687 826719485 82737556 108755655 866529881 937771492 359445037 578318845 669028379 742212948 116717591 440727093 305569213 460570117 478432452 707763408 892190235 997057856 843408526 888910043 728455556 791499904 202689394 616527931 144694644 609671258 202855638 433286091 680860875 857465751 314295894 516999012 350887229 626482992 649989558 988961485 348097884 983331778 137820592 653104346 540344517 833868974 506249414 596420612 40954633 875819981 586623761 801250337 882439856 973694010 801957265 931866617 15486296 19360801 173281349 900773520 494752420 742731016 387025269 677860867 380070668 841801653 38234657 593065634 499049657 658863101 372242074 878852757 274900030 547268905 92155231 523282920 105998569 376827662 530950495 569027345 408657431 759676623 832783518 980177902 136907892 606260575 703047444 911381911 979705780 987047669 224117080 907092166 897520432 931711936 352789310 827002413 924747507 983817714 172957930 820675369 702864019 806488198 978083289 986152522 349962205 928103326 891354995 891395339 190516893 364279199 498101412 827508107 68845178 908882955 699027432 938916383 477132546 668581439 647090167 964030371 841893809 930477927 698037623 770233580 380941398 946782793 375949996 499285330 775757252 847992362 121955904 197168049 297853815 612895405 83243709 139519837 880567644 893376759 458046999 458114547 110305091 277077082 179375809 760342027 753440930 874286420 118763045 482117970 280901799 559450063 298342086 912924123 592404397 975608015 75289827 683551486 151424505 293147358 199547673 608512241 410505542 806371180 298554608 333511408 529261561 618756222 509192133 674402425 179228952 231458609 80247038 162558607 434351549 682228376 453112535 493804999 902271826 971216218 71978480 517648631 217272177 608225669 936355038 996720978 862524579 949215441 934548887 965995534 576217910 873896640 22356270 286501670 657889119 860311576 591881712 763717457 363738079 552842154 144719299 958545647 261622052 785122792 408992695 917236860 649276219 866723027 187309882 200447284 171603554 559075196 834129363 836795839 577413725 985267323 582785307 638329795 31311208 178642694 454693551 554850261 853317991 982543604 5984786 766924967 819032920 833603995 39330265 342289045 974282650 994324906 318902617 527152278 310113556 562638882 385207903 438607265 820343234 965845261 628948619 872061069 558644208 595511010 417047472 721709872 319689318 504372609 132817798 728864365 478415401 929312667 781382788 995726901 617420443 669432186 641394153 742830548 996403433 998629305 523506565 990604787 37579858 81179902 975104490 984067666 82516071 538201369 668025830 807603076 856874747 893831618 620043174 693683270 75008696 621855056 534160386 666048079 535394901 667623798 830355552 966093390 489359529 722406793 996239728 997472043 913349138 993041073 916665997 985110007 405491827 917807017 971795855 984047089 72603989 513047069 284981615 587218514 671379488 874393519 741920883 894120911 473339265 787609954 41277277 196407061 301605760 760189111 829496628 930954764 541237189 737379946 759464926 920926546 954462025 997240263 169331143 896564102 780709345 858333017 944580527 990574173 30160930 467523593 868369996 929696486 193880077 439589132 515978817 994694287 925954252 997932052 446658339 481850776 458763198 678655345 224082528 272109800 435283986 535643159 427240467 839328684 908433089 933154102 461896223 666905533 207217190 975357417 703205350 808275786 577848873 614968181 759397388 977625477 19003996 185819422 951558025 966482940 390072370 618667511 463502853 523830592 548589631 890568196 883564246 954337259 403522399 533757872 198279895 649338819 76417675 836823300 698757720 860780678 433664716 447325900 480793194 861311386 322230878 656865216 472795624 790456076 770203716 892277701 974690179 986690259 774701158 959168668 841502147 933541027 57776458 883323616 448061938 489991109 777148300 780910568 80924991 939799672 307964587 803284955 785922133 842756637 666730925 711169664 902449211 906758595 357009156 880637592 560785068 945095118 274546375 340020814 183067859 486583328 882217686 905840494 627121352 757279986 437858232 721406051 184227634 381166973 978769744 996704447 834986833 888363440 100832312 839152001 748694966 896562378 784376923 793878460 466144503 945150476 78836978 444384401 308203550 499252039 728102373 846294227 219558920 795155559 13981938 113092493 222882380 822553284 901574411 997213005 373438091 910085877 480477930 827740505 958419278 979874884 390074353 672419963 248254735 662203198 866658948 966340072 944029314 951079409 371716205 994390291 45993908 546318164 704084774 706460496 107340874 645424865 14496498 829007320 457985210 820562040 260011076 642750753 539000591 775775586 506319964 878059139 484103833 823425285 424743723 563427706 705948494 767260960 480719124 500422800 434351358 738799467 698635384 772604563 523044988 861325051 792772361 871110910 118263265 879864427 613423030 818117402 615367460 747103819 145076929 961266607 836350120 965095017 253703019 363097858 703743958 744328139 469352548 733060440 239999306 771311519 565242456 787267018 47840077 158698209 939247291 981294088 676923052 905176607 487016544 720914004 687311144 816423540 958043555 981853097 947547637 970314429 91294647 497587991 281871347 693863491 623963214 811153426 902281822 993088984 107806761 213901413 314299564 502860838 762145100 866305601 486485756 510972767 921974017 932091165 728603487 770075623 281499968 610777987 354785508 819056074 337341109 752204755 842599874 932493261 29370160 392111755 527666348 556594046 892092305 939987240 542795416 722817067 466014985 574469876 505184030 604890226 870143435 924275206 41657646 890321594 270779186 306639675 661436585 896603888 962771777 999565137 813600698 827408410 451552613 546280724 944086451 959983476 113269419 677682353 891334415 913325912 599296829 731494676 245232169 914839300 821867847 906318940 902140461 954171038 38793040 179447209 459858462 932238721 268834198 589091856 772527410 797411735 65362536 270340971 352834042 965544352 458744695 758612758 517962334 779085436 429427068 937595538 439262662 927085325 381809019 696396893 362691508 757779095 73184595 826034219 349007566 727573732 787663114 980621123 111449434 322336585 419429115 984030842 430068434 825673240 905581699 944306521 55207742 959070049 90344065 508035739 756207559 968224437 613578326 913950929 308699974 923327166 519905670 891738235 602257217 991234633 309498804 808072379 381379131 525117105 972732415 980653552 198449499 647326907 987840805 999196852 847090045 921862212 934726538 973465352 853318165 887275795 194082260 286968796 614491780 851892937 460850381 702923520 271493874 624378470 74863791 163341624 181030621 770914037 709621867 722912196 139799659 615627296 107998792 657246444 385643672 466211699 840235445 987839327 567291616 909529900 531749527 824489678 375452946 877233921 993413941 995710846 426270670 886632197 412866551 756275005 765315365 944729997 992314124 996871244 341162102 832088265 396014767 460580702 795428338 866275835 76823864 242461316 934526331 937301109 144723138 258219648 833945715 954033672 120954141 296041881 327400295 833511376 728230454 922415761 455767027 917940081 247905356 889534062 308602075 592646990 774408310 958366100 336772678 718386079 702051774 745150679 150277825 235912724 784576461 891747244 852199110 897460195 564112228 596719557 797337385 893623756 18913860 253887804 520756366 864053824 421257233 769232292 906679310 914203363 116786014 710300075 605179193 995235830 209859846 277229678 363819473 917079908 372258436 974055324 732351590 929479407 341215521 953862870 538413219 827835611 879190403 999164977 375062900 954709930 466064405 904401171 370226208 618540843 312210921 708283794 843607046 916746462 265470238 898369981 631374198 998878344 771252633 801263757 892421808 978149288 570872783 938241597 890055780 983221698 17825884 661881385 779940450 945084912 336613697 429826982 883922184 910525601 631690190 818272905 239477699 299794584 167308342 379344393 803937282 909905134 900264763 901540215 171018016 475392763 847264447 902415822 397190463 867814548 471429602 735325889 636265710 637761407 190809917 857387920 723725094 882762848 45418741 192458944 846910706 974434365 118588990 439027601 320696759 700379117 454539445 861307421 572327788 626217977 309151043 402479596 234620330 249602758 642498396 987691060 641503498 927380104 365192759 473076610 694062722 799199335 970659220 988926825 750047391 898197050 28755724 234675142 577984972 788391399 19094408 951230405 208894823 875986809 764653862 936168386 830605169 868261025 534557109 955169931 879353277 904844190 983722566 985576066 749096953 917405593 562983184 743303585 527964744 747216675 263048387 336040741 554346617 597108904 285869638 837577036 334455780 784729115 750262860 750671091 812909162 915964807 6080638 607657804 372179350 431117780 701081633 886416210 122233630 883014070 775582603 801391157 309137378 667250068 235985334 691034498 536261657 828130233 562209586 957647843 218582786 429026228 800627378 805345597 474245646 606554350 612205526 982442714 380665799 861898063 840453014 906227987 136266176 863833250 700775190 779622089 338770936 980570825 761574508 795435789 487250147 902109146 173988225 443548133 926550218 964572889 943794703 969059499 668432280 880190009 346385785 541156985 486601058 772706381 68513458 80371260 901305374 943765976 472230089 564689909 884740381 911790970 269921358 689253486 899209252 939499452 491356478 536646652 108976960 221573596 953147814 995529840 703014894 786462550 343751550 559105583 940120320 984458442 256470146 919537768 340794219 374027160 227075834 957058250 377346627 997505799 149014988 561810088 827127305 979696673 237970491 800361889 596572896 798301191 681687269 858345756 8894490 504771069 730269910 756073334 38567119 961941144 483934649 694012355 409947227 729612599 475292601 973748270 542645609 873103397 661321589 942710082 521609462 720076289 74699503 88780226 223325431 363359073 769582607 796137304 64489412 939815577 154173650 202172288 268163500 574696221 156384143 779510334 616081508 816932878 235187461 736469691 38235740 138035679 999120381 999237601 567985909 742291379 124374672 227017387 532120919 629644505 622848384 918532840 209517148 603086203 247405991 302342455 849672394 993167230 325339985 973445534 964896862 998830917 616036040 836041150 636533632 990685153 188192176 617625383 338968429 808115134 260879204 652122251 24331377 677111044 33009340 509905968 631650456 753950801 201248787 456185671 99823444 257658219 666673437 911106503 269044443 896476809 795628880 992947505 537928783 554252539 471363802 885180304 554921367 968288437 258457309 499478823 58196181 119732793 672554196 932847937 134985407 360477661 724146406 784782570 895006709 971847598 503643147 690655892 663361993 934566314 421143324 568226152 368748163 779591635 288172239 803091501 476572232 778901358 979575155 986703653 978669776 984643340 497465306 967693543 685989557 774789887 921262049 996393163 112430340 893644648 324911404 641033825 503234959 598991411 519413107 642686149 26812591 458856125 49209644 223131588 739421169 960531315 527787942 672859946 259431798 857979137 761985066 944324786 794103549 980760257 414468039 883946146 987693797 989401072 523422142 719439613 307931925 595905058 405749485 578213217 416524515 478477243 333250418 426295010 661433801 709657573 279236751 803036493 691858881 950901674 506935776 725416646 22061158 778405477 40314914 538019740 850273841 969204761 896076704 917084553 301926233 487760003 475397788 877997100 694002404 969770773 627084639 709587776 123189820 661173332 941603110 977194021 959912380 982359225 203315567 607262454 669568143 836009658 847930323 889461615 725283523 986049800 863388054 893797989 887079140 942963116 935560778 990688913 782698426 804486367 402379389 825676978 457102855 852839780 158792710 396676330 852146299 994190164 810829221 875343773 367121845 735353674 932035839 952240754 232603750 822407184 959026288 971961881 969455181 981664368 430250880 755344306 784066358 873779116 922393138 985618721 649645293 766626283 600408771 656068945 518371473 817136150 944705401 962432760 455851184 959385523 884747033 913767565 580255701 883533186 771398580 969469981 209668492 452844449 181072347 616718957 242711647 443643323 557005400 762360975 843566875 885086168 957427250 961714623 845405414 933091949 993590515 996329152 467391613 632274921 82298092 809142928 616963900 992474496 502064830 663188246 879667039 998134410 141914587 436135938 768908095 827248305 206484998 721157845 845896374 876892678 910501102 975399336 798272083 814581227 871010785 887888780 268121095 634527014 81498282 279773105 73957191 512865819 390669665 972245572 582058340 746430389 665212021 691440808 651395635 857861959 508532457 788297750 341300310 689443760 525209263 590442402 723210771 811369473 267703668 703608457 792530993 845307623 260055593 457895029 80481521 972348656 807956132 891742008 862270514 936856238 692366583 794404170 695870562 882430122 748417833 780498090 99717972 165020765 170987218 765080062 539078875 644135383 766121854 962408715 911528904 952785239 944212115 985773594 445355776 588339985 49366564 84982454 245601157 839868516 757959135 999065833 309377623 954129500 468282562 867982328 845175882 925492054 830643617 970461926 833072332 938964660 370357398 467546211 850676996 880017427 717009361 722629027 265193606 387491591 891735019 894199870 449768912 536143703 314618177 580255693 505606985 737705582 900917386 902963180 784389412 860819963 201849683 945573193 466737636 953336073 613062002 900429299 231408889 436053004 202194257 716339297 917222523 950123678 781948292 822918023 573406378 854007313 957819156 966140742 72097859 703521321 376986871 541726213 956217586 960618762 785308505 856199723 235071438 669544809 542619739 874388958 682207114 782504222 408983544 948318001 111099666 736374756 923515361 966332538 637107796 886946936 479242248 904262617 976364559 979848969 321501789 577259553 993644465 997169080 301412206 399276750 110724774 186807667 552379075 955893269 902054402 998544682 193474764 341462558 811068200 832944816 26939914 619507011 976453457 997371775 945774469 961697416 629336054 871574281 675139828 795989196 741321963 763064546 227148915 454816568 617368123 946045618 584621228 870529014 517046203 728580655 291494474 660692234 718057793 914672703 252217487 539205510 931682594 933195063 293218611 983606105 113177012 875882762 42987932 622683183 69035415 196555304 965617113 967016731 75359830 388809282 432906344 526959735 963281170 980207607 257118169 970156334 734932701 938087456 573944408 860607150 899020922 952889444 109961572 716589480 799689500 864713645 474553086 645462453 116542425 858308290 656349752 875586987 999983332 999983646 467231838 507434339 736617910 804812235 64523421 127930361 80121015 372086620 698552206 846285226 103532835 805086231 610874871 657474990 363104227 834704998 512510313 978311722 274777766 783311099 194727178 386934980 294316541 913425466 83501906 195006499 724996460 761447797 748876823 778639579 47487385 986934614 367132584 395400324 482977687 596308540 211033536 921633442 677829666 735451528 333960838 462719151 462200800 886791674 960479814 971714472 256935873 419751794 636535517 991546900 462628274 725033606 741456114 897780817 571433524 924253810 580176026 741701912 350260854 632863208 577655641 845482698 355224263 688889345 635737725 767682709 349628765 355942239 601262958 626010725 577305886 901170164 489717828 981408985 340774022 410120594 609852514 637905093 601903044 820892354 991639469 997847211 249691611 377207158 781943903 861912181 847336741 916155906 640130871 777821448 601042712 611580856 347710758 391186182 101391641 356541410 735663944 875840234 340185974 612683735 182284573 324178243 141236949 749875544 709411844 972235173 39384626 980229112 617125409 896854271 511824850 678413813 317502859 652693748 399338240 634069141 495860276 700650438 521308731 860105144 250785927 888875825 595577804 640910770 282166181 969990978 614331370 877294010 899096174 975479307 599987072 687220296 345890601 436449389 146317822 435504360 956720536 981879013 988689580 988701489 595618784 954988900 871466899 918261286 564692397 735385568 194505238 505659819 697242510 813604454 685776036 951842479 566463054 742032276 611892278 657218702 929192169 964920326 2041433 383638927 681141024 726210752 875181670 979283343 139846614 937459315 20566433 319759238 129080434 385553804 306483421 526961969 428104682 491680028 713643342 911388911 638215101 825995054 461934810 755753243 268354750 899687163 279978167 530398854 645737068 997982091 936873051 955580809 365229577 773970005 683804031 732114851 455145577 513669966 288778070 445927576 430107842 593613425 32493084 629286933 393518526 972186518 612237090 853861996 248809250 556509287 587201819 808009695 625815535 984613516 626165316 676443243 448318450 600509981 987313475 993988648 209837163 834654856 185263457 982394399 774677702 940593990 474008298 555768469 909386976 942007635 242008389 989833588 867271569 983204817 77635910 888437040 399944273 518104737 43944699 129322443 176170410 212970626 669302251 850009424 340135002 772808675 352836557 374137263 427640 126207584 363519451 534920901 804223455 981894019 366205247 443681997 209532629 869567913 243031848 940374715 484879040 853461444 500813858 951050468 17829527 935072689 400357229 946703770 317301650 395082430 433682039 915888881 994442367 998938366 432312726 835230799 730013777 992452630 802792406 900806016 498785410 656574880 447210694 811946193 397486755 931584055 393625933 841263159 74275079 974357259 771280973 976762149 628897441 943135133 200444663 745108865 831150200 881644633 408931533 451640227 969905089 974055662 444921096 638816541 898030594 920423496 416940536 766791140 854712962 868286627 155637447 185170954 19312068 753578612 467056354 795266974 183766230 633745199 840554544 887568639 525576979 852905747 593298595 969115400 914884711 985195077 749704487 760325754 995006676 998017129 494267570 847075836 690340080 694205005 269173458 549324708 954392555 958218322 280765038 665383520 633146339 957520542 969775973 977745535 953015925 974149142 234218552 324661056 496803733 624474064 980141238 990154483 840852340 893526351 112128427 152883908 610567998 724505531 905612994 931364036 309459413 938822323 249588325 320089165 239737444 636240246 965394058 970016050 360265645 677028703 492376031 897956328 255733624 535356268 929952713 985120404 713447880 953806477 71751958 702990190 212694207 361025484 868455364 921909866 631388201 922781663 205003139 205173433 390226161 852029723 34978025 403273973 218688248 721976408 688821758 902800242 573026777 860843526 624886967 924871826 710740736 985722072 946857122 995230418 323136369 529942263 641468142 847962084 983523482 985658365 746029252 758348268 209731404 517607049 609252554 611261540 441007798 971208169 497899253 683025793 448934548 997785737 233414983 357821525 41983044 466794861 434898410 824314624 174560347 426790794 473048743 958854136 414447093 633117863 473685662 750696410 494234447 694895811 35763933 516090710 990069285 996074078 132147625 480168866 93877691 111751075 238438579 609773893 925302463 976614427 58930594 746575151 651384725 830383804 630300590 821140952 920637860 984877169 446885107 720270539 641572367 803850975 660247071 971823845 249837308 924919605 111766430 391971661 322729510 940868148 826317827 900552821 793412800 835036649 615426971 829050326 648504248 708504024 216000593 606471606 62703313 310820284 554586225 866761337 589486427 857732239 334730570 642188807 997937016 998780444 324591810 869889923 913156111 924971221 498971590 615785618 492250668 985373229 43834061 781557653 878627733 952390566 933586455 949111599 293752523 927055816 3198991 622403386 320318169 669572771 83220953 366391310 887780927 949109175 865233628 902202447 191520375 385611711 267608016 630842060 55012464 219528514 333199584 731939609 503334843 691651674 421555072 650979539 282902749 582095889 718469756 931942772 919618417 931557657 515989842 822919158 152653506 414701967 238966363 837737041 320106096 756156773 635059613 729452111 824553440 878787979 554886066 759099046 388064566 913427378 593560985 720640516 752692236 982366253 242125458 910987269 57616013 845521695 804881129 998262699 449921165 575997515 746238248 962479750 419446064 857930622 550328601 736144201 487519164 876026764 891509567 941478380 527336540 615980288 298017164 514010175 571446047 870303498 17961856 777452896 145752248 288387298 130285140 737420399 428149218 624331599 988894471 998940920 75063379 421657846 477539963 907452987 120163127 610492865 74777041 458895166 180018843 451264580 407912178 882132210 316470974 515858338 772567849 846582822 764008963 769798782 60907726 898101897 161558462 485297917 219561323 795400109 458512122 983046289 874739952 931213577 982773150 982876237 268731885 474434806 715369816 775092239 684818200 696035528 974796436 975178399 587507174 786670060 259408189 688930371 246474074 426526904 884334315 984090560 619725196 714510370 634232986 807087107 214176632 502646034 309509218 936228169 37851065 428183029 286102551 687206110 88889497 210140316 934091362 993277916 612678849 762930184 420417694 751530707 848060045 887757739 810960206 959699888 607695454 792320593 570342712 629288533 214059278 908451274 208823336 837807885 524121962 797981459 222634162 832374471 390781177 991586626 121439362 886015029 94450974 501491693 9943213 12542715 479679781 668868697 336235869 889175857 785253972 878441245 338729765 811776675 204716837 401426647 594409892 702268605 635939449 796806263 513153518 848794758 167497622 970307077 654670513 909122579 952323403 977072663 290684984 842542435 269445673 953981318 83665148 199930045 82423095 165332931 226739830 296238427 244364251 447869972 453474767 750844748 65311435 300488407 590468385 757138624 695443393 771914115 607487285 746075550 533942649 681954066 882549508 917908939 238101191 848201437 702644265 847917840 166693304 641038573 447170584 459157821 14532468 706568280 110600412 672576501 810679192 989081391 24568838 817891987 150388081 721629361 288328474 654867771 808431416 837697240 286246951 983731545 618797959 911353956 415594498 795710767 12699439 294386164 831529139 844576202 541101107 874144136 140816446 629449699 786943813 978296537 631808060 635579106 508552889 771799513 690981221 902056112 427380654 581939617 264761522 759992281 489409466 537092203 742994206 834197866 269447419 433408122 6336915 498289774 636097077 901632136 234082277 737464704 495864912 699030100 905783230 939794416 200627617 682421597 196303910 432091949 392918366 885926808 868532288 899821992 428063322 943587405 568429912 668623822 687100088 842171716 891131951 973812572 844550461 973504588 852671341 957635021 642150425 752435679 877230039 991601694 481722564 644746631 921544663 959875703 594218999 752301632 626744826 925677562 189833000 938413153 112871992 831478085 703177990 809427479 686289012 949416066 659616630 717704440 460420119 936844906 830312983 852001743 590559745 710668944 565116238 718558166 449546611 629180458 602107914 816954273 916999112 962158117 578158228 910252699 694860743 773058762 877422581 960450861 760601575 810801735 26968834 487387679 57419463 993813868 92636711 411363571 495933914 699697889 663344708 909418989 587708073 638463385 998995156 999016860 693641209 919094557 96419348 860029216 457743001 570569357 372449670 939583355 761071881 872773771 563716124 682050144 699913808 918404173 815159662 826890345 229132777 626194303 589105370 877087436 444122521 575797202 593836357 605116216 257630725 740608525 51943902 430307684 600095337 869432592 415193338 906855084 504821537 833442553 95953893 383343974 114327057 750390054 461951074 799390967 596955091 682511943 521438551 557806792 145432473 256755772 12682175 979460624 138008035 153855949 120851711 919953764 88582591 293095070 894533066 939617909 565095304 993469262 468036901 876036482 435925975 554066161 531968740 770932148 945463852 989616559 570206042 680471438 509259336 611822115 825102841 992410071 595688492 652924463 468332334 987445119 249313267 333082622 168622870 585173378 27299608 418816558 457181666 890819210 429497736 724812607 352684144 605433665 497670450 593722409 891055849 982080848 982030592 994673200 981781372 984354723 460951470 514629994 18061337 919628277 131892012 921329382 62247435 367391404 542660046 690156492 928886173 989811037 842925777 915171012 863040668 911727397 311941214 637715394 902160867 903451427 370927758 453429439 917951530 945877049 391140349 402819590 55434519 665490992 293673607 643280947 35373405 324919973 671369656 862777049 476825924 720168256 53527736 173948386 497728939 930506705 160824562 924887106 107420119 830413779 503099366 795569936 259709564 935778631 855326236 931993547 506948655 796790554 385115493 465654254 751893847 910578220 360251252 412773231 262219399 421790519 379753705 652722945 195488029 412720921 720336442 991617375 698584934 735300020 982643103 986604070 718026744 729182937 427820775 767151003 566013833 713725344 499116925 584836113 545704267 967501896 829051385 884958711 102314707 362296710 222191524 458439149 842343277 943300112 227114239 806494942 185886539 870205722 663120812 943544166 636557141 694546675 38348701 458732773 215353196 247157695 872027204 893993428 973565393 995807808 50398540 857553921 849339239 973235405 424057284 557471925 431297354 825104327 147007442 726268820 402920996 462806281 585517839 763054467 868153527 933248901 555796700 637511318 191395240 878260978 686324238 698627978 123554925 941691592 750150736 830197019 679976493 719261336 964912370 988721407 589196421 938163918 385296159 589054438 488029961 720801575 380508523 993489148 854590330 944911443 471080957 707517941 379777602 383689573 629907085 807370233 796429833 886880950 657756498 806500460 925834808 993584932 25549579 141449883 23753658 418716613 717951516 859563645 978139492 991973191 75739056 729419036 862170511 983305040 657704006 931466160 188154880 599502573 873376992 970998268 249532468 898202087 237135355 387487927 960455018 984700261 828653735 875123806 233811540 465828693 989212449 998230640 81978724 730488913 660678016 986472885 684607470 926524574 117060444 655290972 348257950 431426607 597757779 620008419 531506106 921776041 378424437 843928563 390652588 871559000 927990560 968149369 710630546 865712607 744302232 817563967 805271141 824363193 714407667 961161863 58447306 108237328 227253104 310771823 203080480 945254445 674818258 908541470 595881417 923780298 962068361 963333665 586891564 892471756 993050249 998460473 44669089 211721780 517198344 933891895 249994666 486823046 590824409 948316170 945615369 951658060 197051853 266848476 889638168 915821493 561586977 707226470 365438613 650865456 574827205 944005686 722149132 969210324 275514677 632432790 695185646 884663298 936191236 974094049 54917166 924190426 847789715 850517443 241312469 297689047 247037337 248832679 56588517 585958199 74302136 504190418 729999729 767564981 682488095 923384457 599220756 917608615 607210053 660003953 286829496 659736767 323726972 518296466 536226974 706604626 596583854 922612367 626412602 894148185 209913099 505371541 615575833 891225571 234002424 501728578 270861736 463296346 80627869 920664988 15448723 504695651 722968165 741003235 93511211 905648220 149146156 509371608 647011877 687724448 868037034 877454788 777751775 814149726 703675551 983265603 427679551 564012584 543850420 635278790 512224603 819674285 982646294 982847685 556132224 903000347 466779165 997585565 806407844 824041765 225147229 794101702 551584226 967128575 586383311 885516075 410152826 818001034 323208163 524714859 655215761 774808569 466198914 698268932 738325664 970698342 214496127 905683194 976557384 979284249 701583505 763876585 832798492 849879048 740702563 842894256 738966535 877469361 946896814 987138900 131503087 293733968 673521248 735216522 648588695 663329142 848935703 957883901 386746663 906054848 329479590 627293760 658987973 716176042 819385607 915559641 786473173 955430277 266716132 739475761 45028051 993650270 373165420 545707985 640653377 775833148 625771322 891027778 262169573 351808421 248335294 622649051 858644269 919490524 364197519 537707692 609555926 745251323 824322407 982429308 460993050 844270982 236215202 703747059 393267044 879575000 838745381 878099993 850282202 971662226 671787856 965089892 84164535 234617454 775612402 876508466 381732151 690578682 949461065 990041222 357727912 402728505 648629220 720821143 977140580 992242291 804590903 882276071 395833540 662968625 619274986 941744002 252574040 918425724 409268008 684395308 431363420 629717169 15247033 469178702 647253053 798732140 389776636 693234533 692349850 762793276 888665806 971120781 23523664 967605425 458059693 679414417 565618777 638586520 392109588 497751807 402813283 476762040 673851568 919734193 814271195 874013211 51267500 955980272 889693431 894781574 637822299 917998833 117129596 425987979 839505795 923897124 625453576 996175201 375239597 789997713 503515396 730028626 910309310 940126431 349714318 744552061 272516275 594831714 855279598 985471977 833460229 996575197 188393133 599811688 668292167 862643565 343638366 825563799 795999305 982655119 225843786 409202309 286360859 560775902 743201645 926072777 783116585 916887386 791122413 866382437 44490716 50142901 536675612 691304541 273048437 659054582 470811718 500428430 933249432 968997059 64761307 987144696 405458303 994170435 525988404 804399538 60784513 684482746 484261636 884122483 907645727 948634563 532323629 783490364 363565678 716524858 835253273 853077481 556886837 706229602 739317301 899653557 293897449 742016559 26548930 741154811 160847445 773421370 534117590 761562273 547765003 685124379 30534241 261970094 847480692 947545739 308098497 922864301 525715606 808083271 772938837 887733380 710927611 792029124 942578067 994017497 339673944 790450257 256944826 343794756 391688139 637016875 296411806 524041044 282344031 453928433 512796859 655453505 162364116 488852793 649009910 865236091 782505892 954023039 264688577 754167068 234838363 672031204 6280415 942054707 189855312 333646762 939298748 994672175 306424620 353174368 534063792 669444128 354473089 647763831 137900187 946740375 190184891 770536034 915691593 954576195 485103177 591918384 666298155 788770116 95240103 881478309 118456241 468767362 303956977 454653367 772274790 984186671 375731137 882956973 12476443 865855964 160652791 728862789 592066587 725162665 384947940 660819910 58278147 417727270 717660662 759377281 7151628 474479142 537864940 693112303 143906344 661449765 707882730 800238019 683965421 777735359 333080452 739244178 589042715 894684619 73261212 289291451 843975848 915114142 818041430 873934287 174359832 880414217 919219242 926540988 921438618 950278871 138954639 799203459 274420365 354532903 304412127 321606086 303746923 882540972 425718762 660707701 200270839 702657010 531304850 563299466 649720403 857425265 461701877 895706938 348889375 965634577 951973842 957169715 724864100 930119082 957243945 987192982 53507145 754527983 665594511 979133992 667056452 902405856 805472054 877905295 598027920 982155333 593966369 852486707 677421596 973200186 963503753 998751110 82658250 455830169 318334603 778250118 616544186 983623169 121954756 402879802 687932968 883277613 421084949 769917971 211580518 430866294 251041762 317981637 594490261 892634556 553149581 624719571 169735041 540239396 415805859 694965581 436238294 836507557 551570003 605376653 43089750 313511465 352305645 690520263 209037910 331834670 918926640 978824483 216178617 747157578 905739667 978107538 820392993 851978496 997856580 999012499 639083462 766207693 660030078 960201402 54975447 923901527 896300012 963452331 924196495 973259542 910395436 996053025 906532832 919456985 448123301 695174079 496959954 650299285 526328192 614315423 975619961 977105891 146960302 303911927 75750181 781770258 968516566 978711615 876638277 977278507 966864142 967251132 703483852 905021944 28973142 297734893 674239741 823461763 418631495 491682401 103427010 396642322 789969628 908039615 179534034 492569674 762602815 873164219 66355637 760072808 514762425 760802798 870609583 978088280 484968529 627787580 875096076 884906967 447519514 620318759 646456594 993671389 658584789 674581969 876296636 937171153 657457418 682136432 815109328 879415513 909060254 924004593 700735843 906040974 289753512 818191618 422632172 764469552 948285251 967282919 102568274 895600773 559739843 625655354 632273783 949869289 220904017 596379222 730237225 878145323 215942050 821922142 840155832 872723615 594289101 894265067 671961764 677442072 94351334 505436652 351792389 415173037 498615584 959685917 700045662 799450426 486911939 790085752 131810168 319956347 750259349 971446085 758259934 977270306 560080750 997434953 736206059 911958173 44338142 955336156 933208622 933291347 593208211 697206310 797474484 872360158 985519748 989234007 389025946 968073290 822944922 973279574 816736379 859197273 25695163 52072840 817565788 843449092 670929653 717898967 100690318 659238004 46149315 327071110 923572313 947957105 807596620 810146623 526722066 870164976 831538697 839008194 553459977 824570118 298799097 708450823 669444387 705576306 261149802 608633502 739588203 892561240 54075045 782050377 454945157 651208999 350800582 858946654 862871273 905451261 519880779 870393472 934281434 985578300 471042266 700272131 58807203 474158938 553215647 782368095 100789472 478446271 542193054 922132641 877992745 937433662 99133079 806820988 792957487 825691953 441462287 446836185 462406931 856857709 899337553 961906002 836345958 876035170 270176868 334695282 931371126 934347736 56786980 415856038 562734708 627505833 735113021 904255115 497964070 807056710 899540677 985402958 958528253 993434513 89394979 825806543 295271376 477981058 19884506 58812512 598216445 836967032 648563507 725978975 661406577 926370711 460821825 491639517 646370662 653722874 858372948 982972685 355417784 490844816 314413746 556651370 801426953 908616857 78406797 522052794 669604487 978949161 989552069 990009086 398142430 728637926 766482589 836758694 755937030 941580015 781746307 912880901 228084711 363100330 50027460 328508754 754573624 802505272 762346359 781981283 972624398 994383177 607221614 938465024 199383801 927341148 981699519 999844795 596575707 873376908 376067251 933352351 629493911 945859431 568217515 611500000 310970437 370750682 704665361 725591087 696010934 911115553 664647435 958575805 513520240 887281862 179817940 769841105 975879898 985596002 771651326 803519937 818598206 943281741 634481154 987593739 853036564 992081456 281162129 726650958 384747971 655669806 125415903 325128921 769413907 898860503 294283486 414127630 264431706 827033124 776969377 818236181 761118689 955178589 327691978 333765116 722873325 962623541 62198944 949203236 542773106 957792130 600354440 880621319 871442174 990844545 724853075 957065721 295073676 740337843 53031602 356673023 359759003 984179057 401040161 964692277 453971998 603178039 295181628 542994105 302316396 747933237 354340155 698740262 719149224 972905679 584056596 593026577 341362212 937729623 719162860 765604576 98944428 200522774 264408774 842134117 567315771 861735860 38385026 955363061 118176271 659736018 870311958 982109297 591256624 715225561 859836909 943954792 467208832 928129118 795994498 881999403 840913674 992602837 915427558 970241629 221422349 426108304 106746689 311183454 254364516 655616406 308728362 883366360 32097537 658101942 778954105 900925601 191009868 766170807 310811662 634872152 547369705 555309099 777099175 914343023 337772592 916068073 245841148 301498369 144148855 468722661 985308841 993344836 296360539 471196071 938677921 953983781 1472539 745902160 433760786 612815218 59421901 417951119 860190126 906260749 292694152 735101771 318724954 453306776 497587251 529823121 595597440 994870607 710855656 968348635 586429599 638772382 547113917 574638948 585585849 722381326 19494671 505541931 388645548 573394156 960649167 982250823 988371161 995721715 532503825 533611628 965709742 989695447 698353158 874361342 305251512 479818448 964320597 973739959 905123538 999195637 22969554 255070866 970396403 992925412 35676438 364277205 252581268 623674014 890834713 941496918 428559526 496787064 376439958 899601907 75455578 194867601 107639627 304920915 394823019 748212713 186387330 386941519 891041534 916939321 62487977 498817664 186364667 475903064 982473306 995427860 338990993 520806919 471012951 490573125 666967680 889023335 347209775 617829718 740310947 939799342 875346294 912860561 786697882 892514243 569642072 775637162 429504803 771052098 767802125 878435412 754493086 966984303 926353954 952908305 447783344 690379234 238693280 686923653 453259211 837772791 912467010 927148344 990285375 996482951 647494393 730391852 988115451 988590007 929387984 944395056 787102891 832205068 78779178 739887739 661845233 770957791 864369002 962924811 422913344 913213169 331039324 751421522 825980436 995134985 211819315 953232842 549345546 898398732 691518629 825934350 565273930 946193818 866638280 999574865 625126742 737978634 925713933 989289032 834365644 988982341 282327024 481622342 411279730 645684360 863827678 868500149 143331297 713512553 304931832 613677284 597279175 925526140 728644592 957292783 307352259 861376604 540935963 667414245 812921394 988552594 554227640 742760093 420240267 980049929 175128929 949303087 713480542 794027207 85023922 615005770 517396607 755408884 947100593 993484571 771806332 864377379 774337423 798103053 854313089 932138114 210100027 388529184 438256963 784960100 526350735 696974429 279334135 816503717 94782609 950525516 537083648 542382724 121811728 927259024 965540831 976044284 655916191 803675287 788414466 994187061 635988988 813926539 675241711 779627475 827556846 899669853 856212683 952298074 198460992 585493195 154533174 817002945 399882449 744298477 752370727 951870076 371404890 767580637 474437300 735267069 38616509 929038217 767078927 812024693 158815089 354436951 385106449 474903112 276529752 776734979 542445061 621223631 123189656 145401913 231609945 568357542 224437711 717179130 618250162 902846559 161356197 199109612 437356348 976429820 212140857 924718519 628113228 894813249 656280892 739159320 255234435 382966732 545891338 967712171 100529478 629436092 572157335 840713539 891905880 968171304 241440477 932105739 360520355 780587386 326419299 752952577 700465927 769582445 537208299 784966423 169880318 358896700 596809769 930579630 46005217 861968079 434097710 548883200 922725034 975697222 226446338 895244959 106023346 117729383 646895894 754136780 912692121 972273797 570222752 734231075 720181251 763546276 93229273 370683573 760587121 887140443 733180003 760003879 829047102 977320994 417205363 873344846 892494372 902167135 140603084 273756256 579274787 747278702 856667249 983470070 473619002 576607996 445594449 793815737 744175435 883846893 262888279 969471761 381886490 699325696 83360928 366929925 947328501 987594730 607805715 788060873 442141829 761353019 758251538 875973146 713354292 859792288 554445609 734126662 762091773 985517431 482006297 669474323 940520941 994907603 82829702 486263484 117418249 944789130 178372330 526580152 753645413 957863245 770654404 860681497 536105726 807509359 483561659 916385207 223375809 903238367 861676160 986347793 490125106 722711060 259936058 967959720 238754631 566473895 102970095 542012711 233937583 903851014 823991429 874973653 672480863 693538112 821925066 944886288 175580232 331303684 379569526 827899923 96325960 775811967 172849508 364034001 86427352 650836082 43001336 286223603 491549909 995548572 2923758 579962920 840031014 943867996 252627988 926229270 120017085 300409685 719207121 952363021 597775899 631496885 504735807 993464032 29433385 614596577 466169552 466508550 264116148 672978331 147373576 313939283 114142189 961916639 532805545 822054592 901925057 972373769 475677964 527626729 607101902 933133404 305329526 904464349 586768694 739360473 455221494 647299294 891714186 945582515 27905178 63868028 109968927 364344513 626203064 766155946 617979440 922624609 12312210 971513861 129504966 148377135 584028801 598748342 639500901 854639563 893462219 921839171 854796442 990625572 661261098 677278268 662159180 737141785 236266560 684721929 735005552 941650180 520415542 743618655 672154551 980548297 846893405 986057410 112080102 856226321 419252650 495372314 14877570 209353893 203140234 358032251 564791887 629798504 277912107 579166644 77146329 595598282 921021372 973578929 868693526 965802381 746089941 919862173 11765632 146689504 60965098 847415587 553975349 563931587 596825074 919524094 656969671 684771848 631241147 637143776 801325480 929558360 568432660 718490872 954246155 964390949 314012583 631150875 977019594 989517466 462201709 618795735 17555465 515779074 495243861 968999046 567491360 612940562 244394164 813588938 292865758 377388131 303671010 746630950 552279146 858603321 362674509 881098235 932985594 994133360 373523586 487583165 600421813 645770960 431205310 682482486 467968788 605057579 555410099 766485466 547634030 759090287 946319569 983464622 798583084 872309620 647405690 919290035 631958316 841111032 689353829 816329803 380254876 857914048 259593931 260700055 63405854 991803666 146252965 721843685 776458910 998349575 41242366 987714440 772710813 966210042 43071386 532313451 567287096 899681197 924194655 991439112 512661214 786461741 75272984 324527290 592041916 592138111 482404661 828763272 226206775 791949516 139586153 670654111 600683897 918541693 106179546 333863437 111379235 485598988 482257743 695190891 483232112 713284953 243578141 911952694 891563275 906168615 918052958 935854283 634500236 746683493 909231850 910351820 439277871 832388476 983921199 993181563 95464711 751923919 54289649 825181368 796682007 920209090 149558984 737871745 971587585 975886153 534510981 767009822 466781020 964923025 311382104 520092154 609071963 688314433 970706281 999452935 868006390 902504112 667483564 806804829 138110960 324897095 82933772 589120268 898146746 981814671 346638533 781011316 51584054 813116783 210637675 532761154 660316076 683955511 197334590 212419843 666026342 882380370 565089532 762555018 641429015 784367826 643754371 715206417 463898939 710695459 723730747 769456120 608214435 639990310 664540190 838470393 79846866 359400107 668977416 981177696 475513430 918245630 857785444 936677482 448148032 980136763 856392265 950137923 902816594 958655353 747882515 824828879 350247363 440645311 196483021 230029402 918682257 972878136 278875326 610486678 611361068 887922493 562283701 702944950 224850283 830334673 467545654 695008506 844448194 879935547 164799554 810190063 813209627 882052652 323975411 897144024 863884684 974001643 791346420 977366717 170128576 927956654 681350767 940579857 907026430 937462865 661783307 945567782 108916906 506421565 890145610 987583972 25809467 328267728 492096830 695328772 936756642 979523016 243558971 550869338 555737478 688883619 569071518 582750612 595017719 965192608 544345624 954632424 785070209 962858010 228936618 877756266 435867164 848498369 503210282 601021500 139145348 356211930 700059407 769620043 415405937 474802857 915126340 989484594 926265632 932324194 613236663 635748045 42472149 288979213 254174842 371932498 737514392 992409939 296804586 366963461 733346606 773432709 862093481 877786101 240075243 722691446 989823833 990732007 222822602 465445978 533504301 854367700 816710614 828764952 922455628 965079378 512082053 909173272 327605422 838878885 113954987 808472683 168608856 675714077 571560587 630023277 271470984 913448789 84740823 280522769 854905903 924861641 827392693 830547311 443901114 597044422 63784829 495330442 761613925 798759759 515655187 566076103 240919341 273630538 820658720 972515630 410134246 633396811 738916799 943451355 939251799 948065298 912157409 969564914 21795521 771204699 648806523 688615932 628009128 938425181 396161011 996543584 690339311 725851303 946514467 996409808 54633914 795464094 50431233 986098255 684691658 730506821 389811756 823559864 292253779 992194335 79019812 115170941 532438863 603262126 24282318 136192385 669629055 685260000 469000235 759908258 998262109 998891526 59321521 890406844 62048293 841171568 536225849 898536635 410801581 529184353 158539173 755979530 766852178 831140551 138940883 467799254 835450232 934481388 50669661 223498058 296597070 686445919 395187538 581851379 883865498 955625380 39038071 399021060 598468137 927448324 895440728 982280785 436087995 960382411 61626729 608009114 702818904 876052789 231898142 708965820 781311042 887486455 187587171 294409018 884522795 963816271 593630738 961157155 755250397 890035411 779080855 779536960 257481000 391735978 509846303 573525149 754878833 760785605 127844583 268675264 918434183 941194677 472839684 876238157 270966467 788764601 828815442 895850620 760586518 761937565 961292927 963897719 299759028 477121287 469858645 598224274 46014482 95910750 668040376 963089763 625728415 913149444 579299845 857772093 657407478 857303513 669854478 801436338 781055782 825171997 913414031 992113219 123767691 196983388 757276125 998649853 199192656 781946936 589040511 834217074 166189645 692346830 581910622 707428041 266090258 375558879 695069805 997305689 832712088 975567350 716155572 941518008 915792643 969408086 791239653 947409870 578778625 917397429 900461002 997285821 605910389 832005925 401088339 545834039 640265916 973963753 821328538 959818740 971547014 994490697 733804422 787338531 903849254 949096225 620271173 640267288 709119819 883586497 363468580 496866644 187397515 483078930 320287983 891800637 765146869 935314177 601740243 610192229 331248338 737802361 122391926 822467560 496488784 517726435 519647511 612226134 885622414 941721110 594377095 849276270 297456749 484788291 629475276 959123131 828449627 946080427 78874029 156948392 747796006 990072914 562868987 716576744 101317367 883240358 153317866 841411135 706813137 959988170 611713303 653060880 702650551 882354968 625402714 960559755 213580111 735503582 501816721 959738914 921407722 955271735 577720319 627073286 818715586 890190413 882466463 937826827 222229822 920772807 182240533 452448103 770149458 925054005 743450929 788311766 955221527 992742459 429823907 442651755 266499063 951814813 553222462 823362667 47525800 712287022 464921178 782791902 656018232 951845416 250925780 915437730 251516828 466326435 169266721 725874667 397739011 456614372 304622012 955406391 590762420 931771480 379607350 421570047 565750720 620561140 909141360 940279418 178729872 748015228 756800733 964773023 613650592 741218760 158700047 913958053 92372455 650519403 866981703 956759592 186697184 652733220 575455004 706443401 438245428 662294819 996181300 997137334 417728177 583007611 514240571 864270346 563776390 864757469 340514371 394008175 238627965 475066447 742498159 870132481 376030122 751743990 199780218 838212603 912284112 974981857 562312703 792178759 154464807 879855659 534840198 715008269 338157494 422310702 490148376 757390661 403879055 720752240 80279540 947832776 998130467 998496800 637455231 833061605 15837635 576126326 834598905 842827820 73163268 287512688 734066914 767033479 309624914 714190985 911055192 940192143 959653799 990071937 28458937 341545166 200447358 669256755 995111266 996302948 840086965 950191777 736396257 838694668 891934993 920539129 716140119 855611793 225662917 313475570 664859344 692424668 127194743 962425977 854996444 873214235 610398559 974872575 247432664 255285131 532334990 991265691 884103144 988761015 336511699 451112044 71500368 349445546 966127442 994683791 954817021 961247517 611752872 707877852 530168797 627129316 416208338 482461312 123285747 820614344 783961652 848860209 96338660 945453163 440178197 718660902 328044124 957754715 50577283 699280021 555754768 993677983 105956483 658704767 739455509 792956245 681073111 826742058 112204954 927698509 354844076 779897976 13116692 745867995 979198010 984789149 540171845 919045180 829411499 987471195 935085179 951863721 186764326 265016307 509106621 889541561 316445988 658845735 678669937 870804665 265725079 633319042 691714455 837720229 283050365 315283090 285149355 362577785 112294717 521225904 389647225 734464338 985842590 999320122 680674803 817168189 320382363 755462298 438480304 494537871 977570723 985453280 676320209 790954206 195681394 550748087 278564843 913396566 545488667 821931999 567769153 977426249 634841221 962304331 583350684 935866559 928255405 946589483 619713063 889179889 807325093 873353878 883568526 926409038 266540245 662778154 200206551 761757645 37823180 343326598 969029228 989495595 226363164 918341059 768411407 894018162 459433412 914137428 340893705 479453340 468860447 546863046 835515253 995660771 254824482 358758520 751287952 850489839 87894323 547883726 20667766 533673628 278244770 611222009 221803174 628492860 231307606 774068756 880235372 957988956 366109491 469693832 636892043 894643494 501334099 679055019 960146408 985475362 719847253 895349817 390895537 533363646 746644522 974885862 921508054 933996420 216945225 623920677 850958909 888038458 905304636 915542027 179120783 280678246 650639246 955215266 107835493 490959216 504583386 681021331 425620521 540195885 970652237 994734504 780143385 855660037 205033366 364603741 551264402 730637521 277199639 560529700 410558959 704963753 198959531 995551106 163592853 878164918 697196761 892265630 741393977 932514933 816402390 816437877 665136398 667648760 594728197 766991619 201746824 298651934 479175775 983102700 972466774 995644128 675458933 779426974 658683877 782210113 787381348 825103711 635195739 741746217 336301877 723180490 941701529 972613914 84169253 504303965 742683568 880758960 861241089 908411924 2564891 920470176 877897862 897452702 788729667 937628565 846391525 987191300 425171017 475591366 838530156 968815462 89292407 878820865 831081288 857115969 197976017 327277208 130976913 565564183 503866511 789777319 525102522 696250893 192484741 955124755 306588745 874079913 716066998 896970284 709888818 999201677 241986561 582929421 870813602 962249931 90455087 562184169 954929609 975220779 149932473 958567092 704175134 805272207 929926439 985228108 982558157 982633493 434127407 592034665 912244679 964281508 673194595 961066602 780413364 893348238 103406818 670260534 12797510 724693772 882430132 999453051 340924529 386040137 84836632 387064045 282220289 555690335 88293527 964181859 235525906 494221326 858770733 957078236 351502019 439720097 366432350 609810623 7868265 643083850 153402135 568404374 944991955 981710474 305801195 770377290 159372747 779190377 419760780 572428777 978568925 978935371 414946470 698466978 415639395 652415011 739090691 981061022 674850234 755922960 862569539 961653072 666912191 944162624 655336355 855764366 65002906 509765106 68436548 194129157 115371131 231776387 47525928 936971857 363944542 554751808 512617710 856016448 450822207 542989248 912445049 935546666 719010707 954426587 325294897 971683045 775285341 989678612 377958870 789032379 595054615 792437730 17723882 940145914 486441484 671679653 946711955 986533046 14393779 356058739 723541752 901999650 821071457 894993525 784793190 947319478 757891944 982299749 775958144 989153765 213522809 519705807 129467306 300942498 419943675 500028259 883817011 919763222 427379964 880907953 384518032 949864545 949504535 957299593 278876171 807190753 221895904 638683849 551076240 835815537 430412324 434918700 907906312 923451227 827963448 949980111 423260882 717373122 669343984 804755284 37682640 747378028 852421379 928777175 355559561 555848497 175332707 443560422 426302594 703688703 106087315 785181314 955485946 968455316 720071164 721336722 986364050 995974234 860526771 988142707 51709586 524404764 943292919 979539285 354258348 983968171 202631984 983452483 724636196 966033022 284689033 953273911 780756402 803386953 898578382 991545709 885122363 891794204 757842919 762536934 740260271 834202435 457434567 806009914 223677656 508170773 416646426 542948514 505053920 531241905 912391017 980666190 423037348 630017749 482392258 687769974 970478209 985673865 787541032 943635030 175875778 567240891 449742747 984424327 425505678 648424728 219849417 650807714 830507882 909226347 875759635 905475581 530757254 926957951 950983462 955295527 286254789 450079525 682290556 783652558 627928593 921546945 635929309 889188303 444249126 600201728 988793016 994784073 408450873 784592522 565979403 978712412 188387641 975154945 525050646 753499882 743811446 981992783 995699826 996768899 437478696 726214910 260608917 856495034 735391174 773556655 39991089 482501174 670786432 821222719 421995906 980285381 921984894 988018483 557306665 635157677 296568789 598225373 896465225 937403458 156833733 414393222 472773882 561587423 857563521 885988655 559866295 639986330 179053366 230744111 64042782 898943473 618448119 689088154 574967992 883486945 650587771 843045260 395857645 725497219 172079096 437930320 576933957 672148475 952504976 959471534 141049221 858559146 75698673 390991039 763607756 930969633 904623349 998327757 124184076 543147786 615424090 629222643 813836111 862175277 75345245 572770236 713520248 880384879 715076040 886481348 119908561 979007862 978100030 998056679 892907280 988519162 145049032 625608412 300125183 681208645 783972055 853801052 230963696 732906168 163687247 749201943 870054528 937161840 224747206 846879066 536131473 671613626 458636811 874799953 658170866 866570436 286535795 632499326 840404222 843795894 304569582 741838261 354662940 521585994 224298420 802537602 808283167 840277295 811415612 934154906 898369236 967675573 25690944 949290985 773257902 915680816 761042610 843763398 704508648 735838064 516512663 531115470 827376369 841896542 381764504 611753835 867011385 985332396 93367723 270511365 829027712 838447438 938722258 967028451 360240477 990646809 941462589 963598478 123017368 969278330 597626963 652686635 236977060 908737205 495098945 856253278 202798605 791498813 482397059 894805542 941267862 954088993 951414420 971593611 283673795 941394641 464404321 523414614 554919362 925611566 26457551 951366901 314385937 546135092 539610812 556669564 168812559 710032212 515835573 957472503 422697938 773404292 385522778 559881495 152782939 999743253 514655664 878614726 634875966 771072472 307982609 691588835 434965456 734247040 294604435 310914395 636043932 643947435 248894138 909104936 746793580 918213373 670028615 890113521 106302974 313653027 670926966 763971000 895144209 969683409 795223428 808420436 257798331 686583152 475350575 910058387 60719814 858897865 199799406 741328958 137051135 727329567 353415947 588450903 642385633 645461416 526228827 625664663 900339490 919635054 680806041 849630326 893145265 962337810 830164651 865262872 866709929 955273670 808472798 861713086 432905479 903434160 448087033 500213721 159696801 855130586 424108264 931800649 654158697 677286074 525964002 679082248 959159841 990973601 293074113 792695377 669926374 675470325 829654932 967465973 344277078 744466820 87558739 363279206 285321131 586467189 874812724 957315223 593568001 763395949 954455671 978319611 975599068 984985073 744974614 839171198 520076457 833992301 728684051 913832366 235178201 500831633 161171096 204158980 681185140 816404362 472570793 511486784 436196030 703761122 319822751 383517492 28998849 696570932 531073119 993250799 607357825 674570481 924619699 936632383 719705122 969528925 494492314 609216191 450960979 646207058 808051307 962006430 368098714 621894616 187705556 890913855 431057618 541480456 499877916 774956658 320756292 835274476 128586597 699319191 346851394 640091844 439058952 598853759 83996350 706445510 670034241 832305575 875463255 956968147 492809530 540294609 684193374 895823610 22091051 655325700 964129880 971909617 400102223 836418102 113848857 796491312 217109655 540552065 378879574 458807966 823429172 845424060 159384634 852549269 19449322 656217947 205233738 683383759 11930820 16746726 290990455 448922611 633171070 813485944 526272759 641686932 572907724 811912050 60342296 589716833 77257889 610564515 363779107 441436244 36865369 956931659 113365693 270385252 803508359 826985453 338627295 359571182 360838764 433418494 454451058 501429542 450566300 923172127 125733073 821733609 790453516 911664075 111041065 528131702 64631797 567143309 406191494 725615515 852250939 914918155 549244728 911049738 147062651 861179282 363047749 862751103 969318009 980617627 98480992 535199491 392736480 696078430 744378854 907753315 307437510 728339014 384486869 623587729 255331810 587527248 203673721 336369072 891266052 894376332 764075662 984201708 717599073 748766846 489323281 635824227 838737694 990718164 464647692 598970923 896146979 954216014 792533384 873661420 626481218 901806082 247896559 986840785 349175843 523410568 424139693 552505811 463833631 597812619 599276320 836671214 731027455 750236993 603617101 911297691 860973820 987984206 588773949 802540672 932695062 934594397 868849314 904805065 871183395 980599397 652642543 827460505 140062455 350488675 722103459 968046580 833755600 949748881 986548655 989336828 853427350 922657846 128340158 442550643 626968834 711992211 384308776 782619258 592672072 768527745 795902062 958145631 681354940 788232521 769082362 813536319 376573319 620604609 425623544 567235847 589272492 915182003 393028205 731083958 511864081 719823644 788691983 795087445 324314697 468476939 595269065 804962174 877771937 970408488 766956510 863331652 103873266 329111465 130700870 677152278 835454708 863077030 774922186 822159787 116380254 831227837 606032776 609521660 656948148 900324105 168119544 977968941 707737177 748544309 545474483 733242092 681916631 867125407 955615776 965646500 547732924 592776425 313346280 513020399 17115852 129027471 679020338 996630976 696332005 716410839 712586122 885589306 716010052 766944172 484491807 495218571 276754718 484873330 38975696 94144749 735939749 768656884 95830742 978336261 224002402 388429279 259207011 648267946 406187645 906779302 709581810 780517781 894454078 966726643 497340684 773144348 12768038 635964608 625945563 643947155 544511438 793437037 327304681 718786224 403252357 838769520 117388127 397988291 757558550 789665473 145329045 559091468 303961503 987378572 886541218 914449322 348108010 371886227 334115072 390551467 697769597 912862777 80096024 353588806 415298884 789752283 461907533 854158268 386923290 592816489 666719508 952115175 587839334 880078024 600412174 961819534 290287331 372343995 331897646 402604710 319283674 621823958 195986831 219487605 581104061 772507905 19462899 286644835 620968216 716720893 269410331 433298284 96025701 611216981 907784319 970424157 196666257 965787147 720459983 856434249 788205948 880580471 540131549 747746687 753620634 776603451 111455976 544460109 830483979 884539097 963354683 998192828 12948335 854222267 33979718 283585506 838594081 907488879 645256330 959809909 72499759 201577912 32178809 519292349 780195693 954761704 930972330 974555061 277093637 337251288 416407802 884907403 379353237 860718091 109332046 140722379 594858782 928196346 829983145 921207832 164245031 984566366 655927740 938261876 155929475 579363425 928675706 961434363 594677276 978859026 992125124 994527580 273119282 908547741 307685154 633640327 259407001 439243571 360174816 913999288 542457190 939124523 217185973 876468892 90183091 327880395 320907063 669001428 494574311 513273584 963074143 989126392 738683582 773861843 468318539 710842137 377472856 562102167 524451140 719234932 147974388 509830620 412547239 420824641 352038091 404499597 468185353 561111058 447170745 525253181 648477175 926286197 763917557 962822737 728461011 949632855 226700408 524849342 684125933 714832176 804708481 957895353 121640649 801142566 630818739 977395713 176076923 316230860 470845119 575189420 137964587 774152469 90028905 514533449 945929080 954504313 683320686 958177273 527387932 603528776 976778222 997271784 163336294 805626016 313203286 608699688 259094107 416225277 435622899 717447465 199960992 974082545 774007184 811618349 829805746 968789570 802911525 972139630 837222169 892256560 28791151 380398025 55532088 907598399 471634357 795666084 634363397 945392814 764281146 978812842 938891492 954210967 301535804 681600627 304776809 732385453 6118665 530462164 129059363 871655474 239400931 964103498 668645815 906601489 776519813 918085988 594917913 708120470 405242969 426068691 354292636 739459045 459610053 856485840 937786255 983112630 369447298 823448566 225655300 649515306 49382028 857625567 942689105 978627010 972382683 974300091 772773209 904860251 366117917 469243237 867761203 983195962 677370582 837869094 934976543 991041763 409396073 677837329 584779161 886411453 483180569 948214125 926099037 955249648 225745215 969573115 427548438 468119059 100533026 773925299 195077682 358804370 776041755 809902510 534971949 713547680 480677552 875812038 287642430 389141544 376398808 498717517 893210588 937747304 410755672 956132702 63441728 182087578 578698328 974185370 728683006 837314427 512979914 905361570 83281762 200893159 886857763 970350451 125225503 548924134 688329606 749117566 281706212 651960555 491616157 870385389 237951045 954730921 673593923 735908716 213838191 385900487 348331923 665233094 936379085 976094677 933178645 954249543 84095133 484653833 814501263 860042742 560008388 763089549 519342245 703249678 124484016 468881363 479707904 528204468 169218419 593462006 202920168 356982356 11917806 764226517 377458219 625346403 115550632 530410734 35525618 129728580 896180126 896764905 989545056 998867316 960254196 966656565 648289442 802423085 352518588 647387694 528509140 540871229 73377193 515680708 162215327 607359311 328481632 604692361 430846303 546909757 730468054 902412261 835189448 948252560 904574082 996837441 246947666 861934708 302769677 696679183 208748432 925723984 150619224 265300064 515185889 566845002 855122214 881796336 520274548 829203310 589263367 662481173 603718761 855408824 191562112 797979874 402351334 846859023 288131718 830587584 614505031 868777724 436736246 902437492 485298933 674997320 425208271 746495682 265057 728944623 80732729 524286059 558657305 888848993 911790808 917464499 862807212 975396637 23671199 277189069 692733774 998238857 526042713 941426715 375351188 839020686 467751225 943518865 24472701 248692934 61354202 892464127 320981367 427568130 528263645 721669302 852903025 932941162 955512196 972294531 756436659 807870635 505114585 622850821 646806205 690201521 417659203 557269642 930596468 966288654 162412577 858089402 250161218 769437195 480673913 809446519 878379042 892464868 225636573 918863968 258509787 299757077 445013345 832168965 380245618 942860937 601024381 959959663 626676964 873773050 537735985 901643898 858035124 963541773 401968574 980353909 988936681 996079601 265108875 668093409 150399081 274261357 164431041 672892691 514233678 892305535 464893109 583514581 477934055 635979396 593311727 943727430 569094025 865450148 909788981 930728941 131964919 503352719 984580422 992459935 602860591 849971941 295637983 421270922 538648290 755301019 61058428 132560871 887360859 912418642 298915734 977384693 939141381 964684365 527156870 860518447 697355719 867264474 985489988 986605588 699027391 798005346 125586174 352988535 795979552 980085417 346995636 844071354 863833714 988676511 972781969 993691447 782238602 947813192 752266698 803672266 987905037 996200833 799845526 957973786 49865886 360524703 372003718 471156643 372334748 543700985 143275993 862286267 404427645 422089233 326236468 930768192 543685741 830213470 210006782 342330773 513721637 569575267 527971676 589251924 434251242 643767032 531820645 998647040 831766591 844506537 287479428 312005153 158428223 366742697 499544014 691354230 22738243 236778711 473851353 672635228 367509052 640842187 340731163 513994569 761566743 947879562 978994186 992444183 278423036 376952583 895481729 973357836 571639491 733053573 325937769 919271703 615515800 700061142 120845788 326922914 482993095 926340558 996929515 997057743 805914229 903739397 69021665 221096585 786234968 864777767 28670364 803484786 432698928 819085499 504910299 986413322 330354132 812872559 331264525 962840696 261443408 829663566 469377846 553808731 334206053 673676275 750793713 949085100 91449267 947105533 763765225 967302953 548293508 968602849 90279424 652841984 248919448 686507864 447036800 684502692 758032143 888912133 843353674 922382552 346198921 594134021 253586108 817703730 693831941 730203118 674250475 916080729 497537641 948993431 998954681 999888348 315000222 852393440 503672680 748589193 959107942 999463004 193861646 757856581 491020368 901833102 653457745 965367278 898800191 950180030 344095760 818239992 67836536 230639196 344046559 397583559 397478157 461780323 798248302 865148866 138873650 925489311 762297318 959424657 461355653 767778300 713408141 773928434 881439332 946510714 242350804 548294507 502324687 686590484 251629219 356429185 903057207 989844459 216567258 438026316 987151539 991915182 780051519 994398902 641080259 703482253 176252778 367669467 905211377 907102132 886337882 974450003 432884125 543201006 345345366 856846179 738777170 929638130 435778440 710540368 295955038 953703748 887787038 894694538 767176829 889561348 806610947 942252503 509904630 943077391 326840980 433040289 307538973 916050001 845155063 978568553 250932988 803157130 991383243 993593776 106036031 418085453 237721344 919760163 58221673 670035594 46373915 599273247 749238668 991004358 615871517 743989282 113873987 843664635 962850768 999431744 533224998 643203304 482138356 982533904 969382762 995980453 440108882 597528956 78880524 935527240 917329989 952074863 297667069 835418553 531426564 724408769 532589829 709907192 539170141 683559579 201001765 710843442 70628370 108194984 978720846 982013030 196311494 370627214 508946036 677517776 397901242 876791767 524543063 871781073 70882264 385081822 485955693 895343595 680826814 974984257 320899355 400535380 985034101 999914427 910950161 971899271 917708482 922340936 428120764 575442919 64630453 805420659 326148760 676954832 107674871 593908598 65346320 126834975 770774138 873837391 281426265 546736599 267230970 549790056 924758011 960164676 681097139 977939858 624722461 782095169 484537357 867589136 714338441 902815903 956351554 978811247 211185176 253277955 441701145 819215863 506781604 876294485 676350169 801355368 818135414 845941808 770973473 842179697 112116910 932649552 817938856 992052469 992093666 993324905 55557608 823101650 354425363 576687279 100624229 989138190 726127583 844516081 440040051 969593690 480561375 854830460 15203901 490227839 660774802 722733084 348656640 647577568 760496908 967282545 957123256 998319698 112240712 377316495 11143657 450091722 608098089 650246714 16492224 678401968 513620130 713353199 996653571 999794097 346972513 665286294 608115588 831712309 198145926 963147176 625425179 672675155 487016616 558325315 230662009 563211984 894733564 936486405 378534626 800574513 991593540 993482753 879914642 985695102 410837815 595596239 898909061 961755815 851578187 907949604 318028761 679702717 688177540 950475003 308143051 331783531 794710896 802871365 613397085 750790004 736379928 908406436 145960144 881824241 912872778 923686301 815580677 837164025 800729417 809686541 951817399 996524597 699988633 810310039 740558222 847838483 363591993 934590724 436981715 503633105 358951731 366089236 321779532 356722746 443827188 460771197 532562347 734471761 83994775 743100660 49551481 52224046 570087081 635646014 80567679 181368242 469927628 877933534 265499851 427385829 257502131 773804240 393644751 674745056 709845045 948015345 237546936 943078251 197466277 542890281 551499840 622429579 29947840 470982668 542538202 605349800 958117711 960519181 848637493 964665080 586970063 737394293 112516044 984856259 765264949 942810165 891670664 913192782 923223230 984056568 384463329 520662094 203213100 643257321 458750684 827172988 168052272 697449430 773103988 934053112 829581804 836230334 391999499 655896737 969211334 995644625 465127025 986154744 527012469 939198699 44432271 357764512 114649283 201824029 952952365 976569979 653687526 665674716 233783271 960323045 146696740 695574601 135334343 249604871 224758345 998827653 473567377 485048339 359575953 728125361 940613343 985074071 8342435 307574554 414373777 941938082 935422135 947541263 314767016 657312724 285252971 477080240 800101467 837926664 440184429 497726283 793853814 801284700 718967637 986753882 657176650 927084410 416651207 708120861 239258655 696589280 110266196 632620503 242028472 549789967 508401444 890271150 423431425 789895725 150813418 963540501 272272876 747475855 47992589 652320242 875093690 991989926 973170443 994687857 431120873 784293292 139953002 530375799 45373 625716469 438987865 657070268 56532836 429416453 741053182 839966968 683213064 926400029 946535726 960209437 263661661 693394500 840301425 903290472 927796732 995610266 412744648 471082115 781928385 798915369 243772831 480644314 891451601 915455535 622110742 687909965 525633012 805205406 46331470 299068237 82287827 447236443 232770383 580437885 374919030 917588329 364862559 766435669 21267366 308681153 790380696 948402501 482207386 806202961 247239695 773980178 272233971 794680271 271413121 364507740 213360809 989356474 269676976 356589977 63742773 749005963 925697987 930686251 66225906 349470743 456719402 973014280 53928335 410473855 674358760 916053917 140075945 335050476 196672281 583564422 148262810 374153860 464565428 607023626 2537114 776749597 611704887 755122261 263129505 572137260 195747463 987411557 216457848 941791544 92735608 460904818 320892794 923695291 932724908 934530575 36567712 498679193 109873011 239918334 55055322 318536642 627241397 837479442 747510151 861615848 931187748 994013848 429086056 748121290 832230217 886535745 670823803 784447899 339417115 573178334 592857568 702005994 174432904 732232692 235372236 310638154 55826290 919016495 806321088 901761868 918772155 952422024 629821558 651747928 627270766 652940777 756513887 883973208 335464065 837599824 607825025 813264283 990795291 993236609 555606975 878982331 183287994 472780509 642368146 866770028 569875192 841093712 329212061 412398563 617657633 763322398 122244539 286572436 735118830 911831508 585488519 951670015 268574213 487073585 30530521 776819405 677671074 866861145 296477185 841349724 787298370 814875272 656783571 793000509 462589041 486496599 566526628 951099775 573882920 804686041 540584727 906352747 865488169 963728156 187315225 358696571 215469146 639313965 866647481 901985403 408063695 516434029 788531405 893983321 76890509 932780980 332281192 362229121 786584464 807823796 347655240 374917498 818353857 893729355 872872830 925231562 894130558 988500598 431544550 753678105 194150289 418965231 58569019 725190147 101458314 800406147 451682773 530612302 67092323 895782823 887988824 954647763 199017907 488595333 616904784 795429764 180869706 284114765 271495057 526355687 164105999 287638727 763808013 856735114 205599845 678697292 847511285 861786978 596321571 746667827 224194070 480251657 784860577 948443278 328708978 578844513 158389427 242367760 255813586 255939493 347402764 496133680 169570252 544505503 849426796 997707843 529475274 819867080 152484167 912947567 182329859 889118256 827596593 863920513 314891194 862421886 104746103 314121186 357760516 848850193 366862380 888873756 359396029 919342278 786539680 908778497 906264748 973122194 649459995 884189830 107582518 533154257 132464682 842010307 273017662 333195980 707520277 812293190 902547192 921523251 955628118 969557571 596466595 642261280 169102591 298768388 375632570 376624497 546265751 751693103 911985603 990050153 845704146 975780485 374142317 599185051 336362081 903749638 68975730 660794142 974337934 999703299 589868512 962624080 107816738 723287450 84657127 451845929 757655904 885086044 750455059 913540559 16475976 598578706 482753211 547594563 648507546 691972490 412511716 696622094 516991354 774684510 871084914 878249370 720510993 871676189 916403652 955893527 217222949 875513789 873183702 912374305 660486074 822306424 346399679 639562918 477181391 959905961 629200959 695945476 909872858 992712373 90654242 865786043 205147547 508922411 268984702 805109774 522009938 981309738 402522777 825313322 880602360 907118316 211896767 803385014 427743785 630834969 554208850 562185010 126267400 480263996 46190987 686167454 790856433 968086841 769997550 838019413 620547674 765684175 760046154 849382702 493603735 526975353 389611618 455368640 656019862 845795993 716383904 959010269 475811838 837101402 338173474 407966471 8241079 869300436 28410698 579973125 757851075 876162226 588640397 663897138 689458550 997481970 46760821 560094102 80841921 171074498 349968329 426516193 387116408 467110840 301469056 667479824 304456150 695448250 572066450 840662850 688506939 956501902 381829618 631013895 809364825 981471208 590631944 868605785 540573874 561724478 56732658 109618503 498763451 639660280 656736063 737803394 614189156 625451584 54199521 860793007 627806895 915829841 234380582 703658835 775714777 806329127 85926036 825847205 1271357 775892311 559479200 759890241 988645953 999958454 698253891 957893551 64274562 161874091 617305476 904423880 31131046 716187158 838745669 891448820 499322853 961432372 446732835 475245950 179139224 571710392 540242514 596450416 340478428 646259021 555075065 816460859 757572334 936938587 514929479 751478875 684462731 991667754 278709103 818083293 85332916 556257780 161078677 903977242 758895932 968953536 430034192 890069991 854549344 871805116 915763567 954399192 13184230 636602994 354010695 780502067 857966605 917677954 732099308 993167506 782004331 788579613 359373893 954763147 450340453 473201382 668483104 776569007 932239122 990679277 270946745 880202303 662299964 795210000 204861479 486243096 148632771 465682700 61248115 311443460 8188331 829944560 573176405 740089256 759092967 916518816 607133501 842536973 370918269 845128963 998380627 998503197 581643626 891596142 45520742 896620301 195902618 394062689 334123873 821840206 922852862 964063001 83215581 524930390 201352120 628925657 483381709 793236417 504234694 868500382 770780058 950702937 305805284 566529894 407140109 950429656 951190716 974652557 786525881 994614152 759640544 990539213 275193817 845209505 782637382 975091639 919206039 958924484 685015932 948097082 68885784 289110527 761021533 805808566 747929927 766085106 787665318 924052408 75935103 293342080 475840677 701069695 51015230 327797347 836616727 974215474 39071048 48871257 13322027 578778034 698254181 791368221 967186636 997727314 336891709 413947373 837105416 902155672 147961779 191295159 244371548 534933641 489801719 804987352 55827085 925330092 692510406 862023726 486353601 619832178 429630881 930110473 720181609 874339144 169197711 692288210 947412578 983450994 272954919 594150421 421560109 735943891 731382555 745687777 926155234 926555248 348798425 497049319 867691821 895128684 728394298 897467011 724016863 924329946 334869873 383094668 94344106 236602964 312589285 661585546 607497165 976843934 670990688 862899538 525570464 587058705 814796708 884074543 931351757 971575267 564528126 584109812 546720957 876957566 138838059 467994398 627931767 696157940 63948330 505832835 440703395 626615011 862835030 894430785 830450059 877192214 968178277 997893997 337627667 635681184 77695814 372490651 330590092 711318224 716897947 730117949 752483074 973429836 795628489 814495348 535441038 958010835 325020448 966831704 743964962 955233394 534880589 829664288 572264224 725542627 350846427 601122371 539095448 803119084 814200308 865736543 942630914 967511766 953197264 993396063 363067234 381133532 195101188 427438902 407928449 454690404 664383213 933034737 733401671 950045110 441974602 709641254 464603195 899024618 199363906 812075201 218938634 336914498 340887341 491802890 767804852 929198054 842594577 907325342 768279528 870414744 255234548 895407482 780696284 811875874 45285329 204592268 803505035 853196430 872376872 974503204 652469716 915346482 987921680 988621934 589905185 902150221 760880435 839104229 78853413 980221561 811925356 899178719 735385356 849775284 280288149 289695905 169641121 366173518 375809412 640007351 982154569 990348374 187925088 385194655 973762708 978124541 11019276 297913117 710412714 969621860 450758234 608384059 523107771 649109145 958406825 996943414 871145426 904282665 605444278 733776454 696573977 704257905 574304955 597185902 711951253 962265810 947190867 954517983 491564640 778086440 230688453 801058593 491189825 604228606 707514175 724980461 235040672 307211405 632826830 772089928 121470690 520890621 595434002 808208721 158214111 970545466 49523052 395980298 163726199 185139737 385890602 894757877 206032248 264080901 307183535 563665223 474723058 914975809 344032806 638447110 905720843 921444196 307709552 395549857 166179092 692591760 45674389 829786399 309105502 914793297 949514688 956504426 102519332 955715429 828311117 868538227 813724895 854736379 585718496 825710386 961597331 993747527 419806396 643411464 671087441 993370942 391242159 532843187 77071663 612221984 398698633 588401784 811896588 986587767 901679844 943527610 157340193 534366270 943651467 985375122 721966585 814467431 660608884 943292626 526291843 819345259 6491851 153482445 755929047 828793090 513330672 966586785 399674007 445351337 523292358 900573410 216487179 884159934 293697062 698150083 459914577 645833972 258485137 518642111 688650967 992468550 61405373 465293342 720714221 918052576 860578558 936068063 928281571 949774049 711959958 803250711 625506513 917212207 313473641 616923633 497363352 815238809 8714955 520421771 640804232 902300778 411447829 561480253 811346256 928380010 461685562 733652524 527685615 727867383 993260771 994043781 795361964 890207195 118483637 444856859 918782322 992479942 945851298 979290437 904272972 988762353 82400746 602711966 607320459 619880301 957390521 994243515 788056565 889890903 893141816 914323201 90425972 723963803 505612709 834319148 248670676 510774889 250501973 832797719 171421968 864937019 246786011 960398888 773829121 968971233 497532611 789341083 918152379 991441848 328203568 762514930 564347862 924718280 241832659 922704712 291441163 652781968 74437189 169481648 98038251 660918386 448033115 566092787 276222011 876701538 450791136 471906648 49178822 981134074 323838912 823551616 689967461 864996276 913065104 957609802 938981695 949170740 699862360 742821946 908724244 956139558 12800821 136461380 996512514 996668995 644662633 677449124 480085412 760175408 271705869 908567492 563219662 927523024 363270576 943343885 398250114 428639687 924115029 927174808 578860290 684771012 796176289 837754281 404960050 732930674 175601592 345108294 911631373 933301993 986299720 990938665 377428750 790438470 52744085 258867305 498206197 499509812 754959809 995732680 540977628 760871804 434675369 860359750 738037668 750579064 282820676 353487590 457143140 965007395 211640375 509193600 827731826 928578490 154675347 798712717 267535810 285899680 874741868 962407801 443680300 733529337 181134528 978995237 331536111 671512103 61272034 491003302 645889994 884884433 597458185 921770545 945005378 987276088 757233309 958912299 313097066 596752104 25652182 448451490 590961644 767927240 996541048 997613323 472208060 992793610 281150681 866005682 216607810 766556580 732623016 856862383 792507614 997561824 590365118 684534284 230589326 403267644 141063064 745116190 889264638 933702105 696720894 909281280 532143283 923285795 345791212 420222294 954050344 994575563 878194367 941237945 416442954 661906503 19193509 587921596 882851902 967361890 652214657 998125449 937831330 941595595 963341225 978834892 432795797 798970211 257804106 522735382 476293419 638650879 470559663 813493902 596957714 651869214 251937056 403847912 7653147 733348998 618981415 947805998 168594228 674874401 827710429 869062496 779322578 781561345 420688040 630532023 62334612 396383980 429712774 745735460 718103101 882975575 271651671 660751527 988693829 995934351 540686502 640432945 529840032 977042221 803304337 943003380 886884411 888397447 614269417 971962051 970671984 982685768 22564189 23451341 692101856 819162825 238611743 541612601 809753867 822143179 531187807 581161160 57859460 139409075 754906729 836930881 169040868 420419005 319985589 785430226 188401680 532466848 599423563 860868645 447389633 855429847 152943790 625469318 681893010 824500481 226203929 378328706 772509379 939198656 497585329 735958749 882355612 960463858 479337841 785335677 958766359 976698761 70744929 806968727 844630575 923069904 128354705 495326107 135067225 595657404 470804492 868789213 791531092 956283263 114418587 376894354 646263993 738063453 239943941 996149552 408169556 467455933 585656152 625837680 602216185 857740562 846874978 993977921 967159805 987995419 900044953 994553452 375524232 690600081 572211205 788972934 974383101 985359840 252677484 460701570 44126991 680129700 20472097 263934656 117787408 752158794 979759308 996245999 438997084 513104383 342233298 850828690 971801472 981307619 430596603 890810220 727370379 740911018 136239445 887843333 664626168 840589614 711330148 737224034 241395754 812504531 255959671 865777161 867265855 888161945 30297912 449566090 100193616 763573885 15687145 515956244 533404483 725941884 818645998 821771874 140023261 159307836 159993466 880139369 513618555 617329972 708621947 969634819 256621644 407066576 101267906 846759716 725276140 771041405 716528085 972293238 887850255 919850413 313100263 664926406 739333731 906482873 465985752 993430300 246935439 722380995 788802975 998960937 564728310 568845147 931595829 941418299 729112421 923801829 883045747 962345085 328324826 430886876 743747750 818520094 844426303 890412140 192835631 353283594 717910048 970085993 770632806 851405624 436802582 530358527 503673260 598933462 150384797 746544937 158115109 567070688 734668546 903745922 837823969 998754730 639909046 717412418 828520602 838742085 415812119 798015574 884579136 909342515 220426378 830805667 938906204 998987313 780106996 958847421 69963592 454497064 333655110 553923998 424246501 440215348 466759238 737070772 135211632 903723371 230800281 370901905 992818865 993294432 774383706 955347937 365579858 392492331 788859287 966775091 14566621 460388730 238830470 373839154 81826534 641509538 946591828 967080264 161576 350648291 42277611 60942248 759882003 867791593 97543531 849813275 289628994 332171755 122777531 289818834 162078549 849344626 80595991 904758722 654698977 947873036 338959100 432819715 348551002 538140160 526130056 784435964 634545391 940501458 784284598 955423877 331462459 791057000 444929304 669753921 55922167 401021683 697361648 774632526 995310595 997077731 512984406 885690172 796943487 936021926 376115507 960186888 649584827 938763448 334661974 409476448 441465854 725753016 276589552 866301145 872888233 873876922 932007475 937329192 190974588 817050400 435274755 600842122 978147806 978176827 427683963 812399074 206280290 484468280 674696438 918654017 543793437 621101746 642088892 729705786 67169667 542577480 756869828 975684438 942082005 991100095 620515257 722748172 972916622 992893192 944682936 999584093 625229370 766867079 414820858 856621405 598881385 989171718 539577375 649062798 264424380 670984497 888540282 970580493 164022333 999580732 116273045 287242196 435812239 750794117 482889182 505703670 708948996 734844278 56776398 107607092 31044169 659316554 375304571 761127526 10983654 283993940 950166251 968003813 100925055 908158691 266422490 721244925 576870610 644539208 871282806 890286196 547537456 871844451 310578999 786004312 163131244 441020042 854205133 945509817 790862907 931231261 405193350 616392564 406562053 910518487 738768155 751231009 163825741 574600861 837277793 985427166 380003055 590036279 664991563 890087347 943251517 973762813 471052780 579227454 732786270 977411099 729233904 848146952 397021127 582723623 763187028 783459660 351063724 840320968 966480087 985349336 785162325 825244592 846686807 966096920 101139572 147398441 571878631 906589784 443665241 581235594 350896534 427624837 728320804 903015016 572916631 573070100 261951004 263728523 497209850 688135753 960467951 980228164 997793635 999117900 290152414 397813444 390494063 491001762 906871110 992479422 323360077 695250429 222435605 438922876 215853561 311130189 25909273 756708064 116237616 783017057 698019935 809060549 120366383 246798831 251431223 904047089 703451366 897419697 44484895 956817808 529068668 764825674 476555119 532979194 556005895 752050663 376799608 659260951 633314172 819600862 171533940 963834289 372266588 733551480 647720960 712979849 879771589 997979680 247519403 274947223 444287764 576114936 832798828 889467812 969470776 976783128 115972666 981761301 81433004 101912367 502014285 795442814 155894988 182373853 302397336 785445577 511353373 584190924 18824693 579965090 297846357 885657353 555196357 615264984 311684595 622464099 262062515 296615798 990653566 995574505 245613797 438587754 816229358 925189437 847575010 848567730 518200948 588241271 132319568 819124769 512169702 714243207 590212985 692045836 683174694 883035329 801941381 906505999 65805167 401823997 696385047 726231172 125930414 155474464 933823995 970546687 382132810 931476951 711675323 722811151 854490142 931569479 895829670 918334947 267358371 563797709 388591202 887580989 136404986 478883619 781419889 841740234 912910509 946308075 193361351 404919336 311461838 359205995 880072509 992252274 547167299 839196127 883647417 975299723 57904676 176809519 115034437 456684040 843785452 918664363 418235427 754252236 536171730 755661609 196463777 686056543 67457714 432920692 340089152 821791444 786149189 958468450 756427551 948937405 767447443 794622434 148996516 839077791 470164985 889623258 667581263 814957492 241678243 710590372 532862552 981569279 544169147 962445990 612202403 822316615 647966913 772956201 433720771 561240002 304710084 464478409 324626599 382025544 521595273 574412621 903780988 954513041 599811702 722049548 714968568 950632377 411987214 859407296 463156076 867096393 465730538 476622352 45796320 629990144 320629102 967782255 741990473 994788255 835868759 950564950 100087843 719082586 31661081 427867812 423366238 617938138 295278446 411208714 405463594 459131783 916680124 962111980 795230588 828443292 584626665 709324861 411885524 881310442 980962157 997513613 544552656 828973254 803287606 995382687 64581712 606123201 959264090 974417623 789511396 847385537 686052026 770257629 808307079 809335059 167075182 782422087 200847955 358669337 957562136 988546531 95413776 887963499 839014770 911411095 90051629 715580683 69599049 237189450 509448635 926578467 901705449 906181268 259352536 628865526 517950862 603877463 730113660 778750010 400660000 750629227 398850111 903321028 21473874 536619453 811581577 900715970 809513045 994795433 934180846 947871163 621948835 652157093 894511908 903389230 832155852 919202197 145595834 351117263 800533295 809378063 704093099 805046659 124052413 814377567 861568879 882529056 858599015 895264867 214097328 837961327 777630325 908653147 850015904 928845141 525894139 866765872 688809109 855824614 441029573 484431507 571664121 799425783 753260470 887884291 190755817 231531549 474115018 879734574 231736080 577416310 275859121 890765231 975679690 983536732 615427194 826443081 447710694 973467657 631015563 915130303 558412937 987202340 154081502 604792364 534417062 555195674 806565444 889807956 318829965 662827037 443126190 856813735 763279550 997685324 248257021 869104110 848010153 918629278 989526692 995252864 215601648 988532871 528569447 857867502 332748198 893671280 841635399 871821929 793193879 840914876 669796677 955855798 392260523 875812415 307961561 397452509 756460490 950479152 339182250 404054975 289115298 459085939 894972422 935302653 857436434 911075805 897308465 979136160 890513293 913170178 739156366 890567521 929049876 949056824 356540878 874377260 955641569 991695105 923393405 937757420 667134856 836372319 325351672 748599275 444649987 465054293 941612432 996851117 741527551 917749641 908918360 989423540 493362905 568111414 513843646 924345906 421784649 992064075 808373067 876463886 432531566 891168281 531488547 840363585 634483182 734579619 96815700 964090376 225897986 449390186 664509509 694871910 43150161 710140349 228800044 439076838 299097715 663680199 856189437 975600160 594161846 641867089 842837681 996869093 551348053 654008429 147011646 376219208 170956436 837256208 52921511 286764235 172756590 779903058 588152994 640622710 450173326 833197156 694727668 976854396 253339352 806732062 342547185 442674536 338795356 936534787 336689596 992430745 600239232 814469604 844389552 939269463 109194237 434858834 424636100 909069463 508504104 518436399 978911974 995236321 432336535 592188049 804935909 841688598 544885773 979110582 287527572 757469838 986381045 988800387 505917819 866314847 411996323 885623553 852898884 907179047 576523609 681939159 692914075 788813800 660401874 722392965 845037737 921002715 653925138 962703817 351787787 502138491 683942051 773818618 560788350 570470912 598241358 630002762 978664342 996833961 546379924 639535486 882535571 921230442 830704836 882181141 447955494 618294808 962596502 999131810 968538580 996935446 118052978 510668048 637885815 680913740 544378791 575748381 857771044 882502318 910635241 998292366 796676575 865536621 841432796 901884673 534191218 539408686 331704111 473737592 490887226 838536938 60485203 996468923 805478774 825072307 481605862 850004581 594661279 694733925 870147265 917107879 914597395 923840704 596056791 732568689 938044446 971036773 835101360 847538122 177218669 457884793 588026866 775688245 760260490 790480179 293079050 986045668 19604610 175643618 521800300 858203758 747680434 973365604 536064730 905116823 826926362 927202212 327674030 902592675 427847990 670564316 600886678 945854914 314781695 350883957 879744924 899082855 407807747 545206546 814248235 837816392 803522444 908659045 930286174 992047272 141039811 245337904 162252493 712545754 325064041 829281208 156159581 841542082 389375992 682303271 261916381 712099929 310159179 641957348 547553836 794856003 205972651 829688284 809849059 989789027 448347542 495510480 624207482 824349091 602950686 738868883 468009312 567694419 68340453 553412124 130766014 595483348 266520055 635649374 328820280 383125553 237743456 613610351 270265910 898643913 564400268 894274970 321012299 868218267 330075019 881637077 979390241 988059017 81934818 709890709 554298590 945315440 315574921 927597515 772767618 958194499 405221049 998765434 270904801 366634288 229239462 413845572 999512662 999796442 235418756 797045237 576543927 780870533 884458785 907995487 414599873 668136107 41064678 115531151 232703448 690504328 946479966 988168483 17247073 905899726 105462617 263426733 497987851 708916905 43997446 997345159 554833231 633959887 511016667 605062744 924703538 948934527 923069838 963626329 882372467 901036133 350691639 497913430 912102115 930834808 770179112 780451972 256345609 429456192 474613402 676626802 247531414 716023910 627362428 744917483 818011156 967108127 721359414 747470174 897429799 960508069 418210684 905682262 941568091 969102429 80923050 321439240 979275366 995364673 909626556 967945578 791915577 863965254 778175109 840982977 604118442 824976038 188163975 992103760 713428973 841331289 810785098 982442591 63866044 544842872 370375713 626801961 3063841 161869890 679511510 715020023 58440543 160469948 215481461 877928645 657105522 862203329 211533527 653832781 408705986 865643379 621627453 681335848 47721605 420529274 416318827 952891590 238593884 389451806 116613960 740399331 117667021 476381459 508698587 537677061 371515883 737562066 133528229 892363753 633030151 839705230 14053352 186436701 300411964 816459796 438792503 565309376 33899279 587941474 872270041 919348837 797161792 988878138 537448505 559513113 907391566 982475695 240929993 270274029 892845486 967183706 459771923 879854344 416611334 545847033 853350921 889856697 275443800 894797255 576853588 905496615 964884282 981841331 916715186 946464879 884043984 945625728 323895007 760106210 269556027 461223224 53610731 658366571 581286414 961340873 495530475 517023175 944087519 952317111 700322102 751901566 948372188 975044414 240146712 559063936 128965210 460603042 767955470 832381117 645802009 907065689 110836978 753988568 407900716 648696618 794785068 992462097 53758160 979376972 880088691 884988274 475566653 842868804 831254895 978720172 62097757 286159118 758596227 850380681 822047728 893029794 811073046 954999758 401350600 519588999 633799535 649586400 891708092 952161524 90966372 145242915 672155842 798609881 195870891 196453168 624282073 797501416 872989982 991587666 431483677 946345443 332566522 394220811 591994987 695280230 269268450 642624923 718133253 973613005 525511429 911916075 224791965 413470558 719341942 739054118 349749748 679072747 359496364 885474381 799946161 869650737 302669723 440266714 88141571 992522103 963756728 975899852 994240379 998455547 827620062 996427800 86144140 516759769 138240369 837180888 167095059 699111135 413813339 963350914 735286309 870581721 963396748 979490639 584696073 773956866 591787306 788478067 317660364 502788608 238098659 519490058 105966581 869545511 707925474 807556008 763099455 884064170 924353443 981717305 506200938 744851778 577659730 918862793 658089133 860585589 274232462 897998916 938170927 952763621 918147106 928828423 732649054 887309224 339612262 349042199 208481608 525949913 474705427 735745636 69323221 143933629 930388851 957179101 225018430 771736153 508727543 734364710 965354281 999720150 656137936 810766858 375438483 781403967 145670403 696754431 815980283 914536241 902918433 916386263 359348035 875562136 787561840 792268746 776028770 809894746 538184853 789928975 306632300 783668378 569589882 597680279 299615395 757683284 35531347 251637423 582828107 918824194 89165119 298483104 377588681 946925645 499940656 835349489 2024441 258887848 831793929 888175220 440342781 814709771 709372312 866611723 914835526 972074654 631458425 755610993 820321263 874132906 270387404 734123584 867125914 912184185 543008881 723637904 303593423 440270555 718761595 852461729 43525483 704292992 277210492 796979137 354209809 952532150 523418704 583937241 109832269 564619642 782288792 800504609 440955505 441359002 289026766 776359502 49266718 582824091 344175730 408244722 217458140 451710291 109847647 209213617 682866505 812958414 440588237 482965099 30359542 763313362 50797278 486775985 604018428 636517703 297195272 922643239 896541368 950946612 58468891 548242565 652812710 883162906 814710715 985635383 516523847 519562255 268542434 330306880 20481494 318807618 981316193 998247535 65250354 591320331 244741613 934340056 717653941 997671002 291827092 734399915 972268371 993233779 70747883 451579327 172885577 965657227 167273225 857562603 295387370 950595251 887418821 995161473 588220686 715607339 614294891 927743755 931784714 998537729 675160573 733048122 746784399 996969795 876203000 893530407 745076291 751450395 322056170 631200337 306011048 492657502 65397321 454256298 69556415 187266635 259471634 708552824 451001555 746692138 12471053 594698007 675860666 830084557 741642412 816183395 698717569 985174314 936065110 967453918 445409727 907675848 228353743 425368041 971198746 982590423 463325269 838143968 426061651 479932452 163529285 959877359 716319655 809718584 291611371 316843163 221482949 436261603 468476163 484984990 786006775 800328540 158981050 769616690 610233221 792361016 491955682 535911881 70645028 340628099 45906753 777054272 644133373 981526742 658868858 734806058 265352281 894210400 562908854 637848506 330391372 767311959 970155385 989887936 3426005 30906809 852166822 865225151 419745227 962000532 756779082 793421014 850458987 943906175 471669005 833524961 646976005 952309679 767705788 783313502 594568268 888666952 701032294 904082228 819606147 974112231 963046517 969355558 779524416 930400756 799255490 835239837 124819963 191947976 738733933 979364611 929172951 942287930 941111452 974921589 702624472 706576438 721975577 944149066 723297650 912819779 543998293 794095954 474636988 561485066 296065655 796744914 166547147 730318891 718086133 794466011 649177185 994823791 618862133 733673089 263721914 408304532 290794834 928267779 7553215 776063893 855916962 883361653 689780753 712508337 388678217 711909479 456007034 803755345 91305423 525437400 187779044 641257992 494216866 539113697 170124299 405717988 605894251 732057286 250236169 535224203 565757776 806504718 376700412 439794513 504946157 704789608 160005531 838522541 33599803 778788606 862977713 945324645 433491461 720258916 261628147 799388233 328997604 386286745 199459301 223237589 525350818 568073698 198123447 846938188 241158830 274401282 600425235 698856355 31102713 669515316 971416975 973470690 556201132 579370067 520842598 588505979 3896488 826623873 569562584 918945132 687666925 801028501 617514778 623474270 217724676 287120677 561576809 966716410 510258065 682568328 922107459 978901959 261948172 301424124 290018136 513155982 858272701 976630757 319720998 912917337 471457762 659441371 234043937 660767150 125079186 702896583 939585533 961107410 165839112 486434185 792170358 955572640 555606602 606975535 823427442 844236365 356784446 426441911 873819764 946458340 825625847 896804275 557087470 627915449 88240008 332516976 443052423 469982080 447018673 473179954 233067870 961284627 596861043 790460852 989572110 989959452 881461342 907756372 924952159 957806744 278691728 313263987 832160896 837216324 39436618 382361412 474587766 598799937 428642184 822365951 664341805 789641399 669639460 974085007 267396532 892569292 287174140 587723159 572668107 858876901 821434999 993549686 514845901 666343801 914821908 929103292 186884224 786221958 181682813 353082585 820458557 928040239 619476550 730907273 825352133 885146836 671030792 993174463 355989613 421584199 885541223 900953233 837689588 962171814 837330233 983556139 584783068 989727913 586478899 880071506 314337689 757186536 777517808 787161900 202928141 735391598 451781051 492045108 544027624 996686042 604795303 606230347 565747423 903303395 64691755 336212557 94887038 642764234 632778645 959075685 455021159 570343600 985657666 989403674 986129494 995305407 969619291 999569742 969593871 987815598 220340410 754223102 548931762 566529988 670186535 865699206 680138854 864334232 817438297 868163508 878693486 998382629 941305604 975891551 422589906 904780428 654172870 881263607 419695662 743727728 99665017 558663461 614938292 655867127 292215123 542496424 412011120 772786335 455640962 521997193 485877998 922873707 738894524 816449456 334911820 749947022 457001999 975265744 215933234 926834152 108938787 209832655 167644756 456518407 380881914 995478459 167867439 607909553 687369953 912508747 406775977 755757873 162418251 768802138 580552053 648741227 691579721 988484073 59195229 95554335 401540282 472349489 631637014 713889633 747125782 853870622 511157777 750156489 870984288 948913692 597357241 911568638 393824942 724752001 924101676 934852291 626176258 943516940 52876089 556788004 225225726 772967818 708484764 861820231 730762143 911116751 368955144 392690088 181012260 469262529 62000007 516364120 879868482 907777288 247733175 617991108 606282270 992677270 231785960 721327602 723000670 951369302 850108714 952281833 124003309 608864375 664001361 755809368 207986372 338863757 102386333 153499199 743221606 957710193 695120869 757967896 76180253 89640296 293386550 635295485 435738103 483405808 973072642 977932023 415105713 522955492 14354903 655887707 779790618 984457726 532437343 574397554 725607416 983154278 433183372 750593758 792905469 904517568 67216920 732301550 673742701 884304417 109220344 991148141 85116240 334355540 915393427 984277172 706617284 707869312 898341420 920790307 698519833 823877664 60169703 105141956 956748610 996478823 9245703 261299067 55612251 296684656 256056317 329421835 264722130 749089567 899296094 928261021 593542723 715450036 707051456 732451728 300708274 307878410 60518016 745459090 536693505 828478993 904898188 937759153 984506355 985775251 231669788 976768343 362254415 687260838 506594413 825454777 743745603 900930678 687231429 790039029 293437616 569967366 751669132 783753970 922540975 994633032 346941621 750670272 716079024 728404427 499467466 557803814 66886064 778912624 676978991 901894939 314371250 966665505 104670675 580257027 393628960 445429901 265505445 672978332 359512016 859844728 813469036 868556349 965242561 986992331 172716820 274672943 636124616 754888438 279383396 499354064 105860358 307361323 826705722 849784632 660449116 968317745 66189613 954625553 310804070 961743195 95981925 653112301 41076201 219320570 249342267 519848084 247211317 860494335 567181957 722300986 682038470 783488766 805046146 997008773 785453507 979781987 888439880 966839979 340950048 977556749 911414963 948984531 526575233 807343147 184605145 847606491 826379160 977273562 674601305 824170115 895878840 997795146 316964420 523304420 976391007 980337612 338332056 547507697 747407020 834411214 405274558 906166159 50169977 264446705 127277728 771007212 803815467 945097994 583411130 998054668 111693599 829458512 583963058 649746900 790457159 954831095 637182592 672621565 804085961 923626437 568944718 952627456 902598672 949230544 204980486 729605144 466742180 547595133 736266923 930313030 456082645 819462399 793531238 794259404 145365161 831685601 66106290 561384587 237462149 798706868 102289373 119167093 411256457 678965973 573549380 924021954 244157742 630356218 32722721 368975725 956136196 968544030 666526525 826553336 991990313 993673898 198212846 734438595 748758639 882273496 980018717 988041289 813092574 843828428 741469086 877914963 158646902 663020013 554591366 722318308 352387913 969770395 244513460 712176245 422652004 827428254 307927637 826105147 97590941 332436676 453085108 497561722 283237788 563647370 7843637 501042894 758199942 860572314 352956204 500453636 730303541 962780155 378267060 889151077 653227516 660779035 40431368 665330885 168918975 978700301 360787881 534359443 418882548 722810582 458169947 473726861 396588196 677626244 454695982 765760991 89676137 184273737 877824680 916328890 221219006 752357781 598814944 881875031 481818926 488733694 136800689 443846981 90151719 959017514 127099230 429230903 861281804 869252751 804174097 986677836 942672214 958878988 517219215 810631209 869024808 889835805 226564044 462525085 624804874 981406357 853820298 877322964 696091860 976021572 51544778 175937835 291216041 578376419 716698166 759086117 419061804 838268575 156962956 695401204 978547537 986174451 399547151 540190720 609141735 920380839 294394610 524596209 143240593 644553481 974179085 994158302 165555900 701454663 631635051 847044848 338970138 886653442 166903424 177738154 239116886 986641528 94240560 402434021 565504218 950917088 633337235 910571179 311033627 899863441 34618587 109553253 322154726 593046329 706703452 893347393 646780691 699166632 11722359 671434753 76004417 399031066 861680555 947413322 423424276 869637039 205290395 982739572 554213050 854441689 756529273 842437604 787469982 794626213 70855735 109083674 382771152 587754915 376712760 464735036 115278267 198387656 798379352 814812389 522215327 618312007 62366420 342830940 830998496 950089652 379644949 467256612 102970169 323506780 464850642 517968295 251664432 775481780 754502599 934710414 987518317 992504434 781893272 960725744 858648805 984244942 83076711 945992691 861826454 977058018 320090004 533418167 479802783 974689108 401979509 889556461 599287149 662143470 597099310 729896325 973601399 980541483 985109052 986923030 37742722 393846513 418324355 736874596 4535695 63097658 176492930 227672313 586909350 659105294 418528525 927168964 273209316 803539557 190475322 225363460 377624397 841430345 904607516 973521994 620626918 721525145 934776867 961429165 877803974 992403323 24520785 849678129 702022340 988977830 926990526 973883728 747622642 834792760 404069447 479446153 580830663 628537412 597319341 774630001 139661582 487822935 336855079 389457359 63556377 641725270 361049874 701079711 486124429 982343673 706824610 719140878 935096829 961144751 864963357 961281285 138527947 993939583 698317408 796835228 793288839 986801679 94607432 503871278 321074446 747091173 794998570 922962347 157675817 881787239 936026868 955483879 335037257 754355023 801151903 936181729 47082729 928149901 247857753 899096983 436183570 884649558 768988290 958996431 461037536 959773488 932654452 999393625 174250146 462280556 934905770 996121087 279522169 338294914 536478973 603654514 705002649 816580768 81602278 482783786 596625959 976292757 522896868 566060262 138752453 892463418 996734065 998483748 870462613 910571099 719713643 873777727 97869231 109421438 700976511 857066767 991976241 995335257 971457338 998803936 678342395 939961860 790575304 971808456 553763119 834346998 180251516 557677619 594380088 898656425 627110117 649687290 558401195 562361876 69564146 535480862 479354109 852167569 166725248 362069096 309200208 441450554 779008363 835349438 889281000 976134400 625116297 645874674 744643372 754329173 634394225 885697599 185116934 548828465 633371038 859939382 919633804 938418306 383282862 410665487 156016539 190129215 555433738 669186908 359123124 701997357 327716930 695244843 666294374 818167529 817621532 962431732 508725723 900565185 514598580 957470885 4394270 674384508 198937156 303019349 108400396 918237167 942783353 955028700 672028168 672607890 881888339 905526975 777665355 863247106 866858728 903089008 711782211 780470843 920404274 969950480 863164472 899900656 188947056 441767404 645430074 754622267 889747336 913600692 11570723 98242352 281188598 968137625 78404800 910704247 39960473 635187830 201714138 703671027 807055079 811789825 377764758 917869456 27511287 787894366 887232392 936372463 632242926 894562069 776124195 855939766 129645068 525041574 208823243 308915911 567545953 765322620 88668267 176777729 822578104 959491481 530548 17696077 271709814 683444941 730415638 826557092 110172102 424887728 207840624 753400606 894366764 956984506 196121551 338127579 650402972 806240646 100230024 281196253 787234895 981419297 965622988 969951847 625629892 934785951 188704920 849994790 73298712 480932081 220010790 804116959 153934109 344999532 280246771 324691627 542610606 729448056 653951129 923913337 779892640 963854070 317918838 769427881 967030939 969998161 223771949 840667069 152078476 314300382 996345832 996363660 322458026 933631955 842584472 911975066 878193499 941859037 819479224 989860554 403565018 629413492 18129822 897359999 355851432 967600531 687493393 988141173 278483793 710958978 411126557 843202484 185249383 516576357 436518614 918772818 531768736 849379073 152816361 472481317 100352485 363282867 236940435 437644822 458437523 893763803 225291974 899537040 807685947 899886018 525544327 794348175 270782372 617191497 330700846 968441098 280420874 956219151 196350071 463763759 83503537 223443184 844755120 973544367 359118245 890289188 433929859 532659957 343602730 544709885 473334644 497176922 600854266 818172034 785267928 959390398 435455830 926062032 815902309 855957595 249934062 626516157 682726051 992555012 377929245 725531986 43818746 826390176 697969504 870847619 764105441 955142894 582429739 985589231 940624218 994077755 162897954 279730727 238144278 442165065 970743224 998872141 2794548 49375549 102682983 197132637 938926205 948830380 274856469 853451632 450350147 726860234 811706517 983773078 547683085 559022167 906339245 988014623 554818719 973641187 112346007 637492534 568159911 702548913 572988698 645428023 910665787 962701786 548507211 618150146 237835745 466422523 493025582 909266069 758418354 972596361 522515783 914315798 374872097 707581548 376119887 932443456 980183977 995083806 187039331 597662551 130584109 133171533 235382560 850657874 236662963 526831531 529089506 912435654 279856798 748257083 507868197 596682295 396766988 937273676 616127524 955515485 224281873 321024957 822411278 967414857 645899894 856688095 143154155 612772603 615010265 783191762 128577127 546330358 516300361 676505671 266678915 504536100 410670535 483498535 885589679 921538451 98435530 404545851 471716470 883756263 232304956 328884208 104184730 855316334 638079714 954806931 522950632 758639043 879435378 900762527 373100803 404580613 79367359 830433344 739870488 740179258 459884760 665658836 946411833 960236431 258206763 469651561 835013077 894997666 579700463 686866632 782971590 790640806 154447849 629685800 717233968 721048264 869968880 998379425 233358317 523127906 404917541 615695432 559082278 599489614 125132286 195846534 733354103 796790012 113322650 684551334 791033732 943459765 502323416 957789936 922376647 987284791 38605861 178410308 354498581 908952118 928260044 991976641 38730309 644166985 857253896 932801429 172907536 753263110 516084472 522524501 183548071 766976148 675227051 878645411 484559743 917019175 310699102 813698576 784184046 850424269 834180107 835227970 588976909 938443917 163643029 299475999 688238287 707863143 107373573 903641242 609292751 896394209 555332934 942766954 582323039 657595901 308195660 420535546 933104569 943854272 670908062 733213623 571866541 610739355 968320485 972208421 807122528 929059230 506500442 560816431 237802328 796683999 267016806 927431219 608419643 780927441 875528600 966080296 15852688 272844215 164146887 516361832 585333069 911401751 115586393 564738726 648853918 863485439 725962677 745062744 124867432 837731686 993528321 999991680 674852732 688816982 974040178 997532922 893623920 903829248 21431470 189477977 422071462 500784482 441511716 571862608 836714478 914821290 635810037 918105977 527303504 774298299 412396041 873743250 572668913 824703475 544660742 717100705 792530156 974044583 496725412 743388311 419264037 968044490 956843380 998220207 310844790 378485014 643380247 709030147 537062190 603123523 866641827 935004713 684733449 723596717 743063399 844469775 319294456 505658424 563574165 679919945 336172713 874789926 183151735 925938380 715422027 774880005 162793121 202793465 31192081 974746796 696831870 928136305 511742432 791483976 527662906 926305731 733657807 904535780 445172625 755107448 962011455 976192999 914620457 963897805 581479564 664606423 66613592 237856165 12465153 359079896 861191969 883062150 257008081 641120389 370523379 599951388 819964316 973088958 67747100 941790855 685236231 711089604 111931398 856899090 664257113 847159398 861372929 954357714 335573641 448516432 432741309 459332053 205199411 795861672 914952568 987083706 431012693 908535015 768168399 959108971 721605498 945681393 373393580 904852639 516709815 949775208 919620988 988221927 962122258 980368875 879406882 930827022 999922003 999972917 453854163 919976121 116727282 759735894 517880552 631157477 491202123 783927694 239319763 671685748 561922574 613702974 179545207 859830086 241924298 835966789 982933024 989907091 226551193 964997493 411445122 560635017 888519351 920444840 792499287 811195154 450459183 616529118 63408003 204755505 302652174 547473250 668489307 886155304 794457720 978518562 286913557 569734856 710031626 981618513 578083378 708904275 599345307 930122868 865779811 980070878 969828800 971916590 453218547 540228578 651321426 861830208 588733302 936679410 183092141 693146849 898648462 998240317 550071597 677958283 956621879 974210948 423711399 842069283 573128859 860790379 92301631 444658067 640460661 653245666 571134333 946844726 190798100 960351238 987865119 995507328 732406209 929980689 674231774 865077852 438499574 833856381 743838848 807830982 916576960 923768707 342980199 643032354 665885643 910682022 874420998 908486589 633108131 811556613 166133441 354508453 202916551 719764796 895072918 976283295 29006450 608647807 8935470 853824378 75549395 104208589 921328519 982866928 160648852 192130284 418518738 734324719 325093132 356566142 473965325 882377271 903780680 920152187 810893278 993074956 531994661 672373398 228373959 841692894 942736316 954491111 434345195 760710291 171064434 300184272 766574462 923081241 275548949 851349206 93873463 961027486 466191863 945083705 361705942 893469846 866992408 948091295 104197385 132724598 114736428 783742777 476356426 982341391 149236543 871244281 839135870 952245303 639679926 912740317 112919611 299293873 310459287 854443619 441284569 977398573 498700260 869506900 22133329 479071704 706169808 920183527 591504953 870788218 836070061 933530120 197872689 586325474 523956349 748302241 788636594 936064703 912626887 994568764 56920905 213947412 638171513 983333999 211696428 832208309 587983944 786467608 348827065 999541213 715102713 933417701 749798244 933803255 509770305 916647149 495004399 622980324 200997074 920792361 813389733 960612978 862750216 965973788 247515070 676599209 209093802 887273322 707909638 818410522 238229170 539220309 867312847 960316454 422422956 527531202 246259069 558043666 59216901 848122900 489588957 885047881 619654931 959783496 746538653 932133002 672848631 978853026 449812016 590479044 675739047 895310526 191163448 342317089 591153837 938462505 34059746 89262513 973139204 982588906 623446235 904150540 111262202 704187168 859918293 921661479 305115584 846951767 293326048 586454815 174389045 893982840 667029723 697293566 857723081 871545265 495809581 801303198 342949490 640373617 228594587 919527182 148104126 804007528 851850723 989518356 923652926 961388028 771170144 904006121 318403566 823497056 122155362 283219067 830019005 842061509 772191088 910695075 838584596 961306842 138203017 915511202 990762756 992258871 476783302 815475775 414107796 737265133 174769573 898038279 755991613 988785555 265054949 655949368 766655420 984076711 316863788 491705561 872676184 934713895 446955818 794835253 877427816 971935169 621228649 671232366 497773244 704230632 575005128 884932718 342646253 982624600 258306580 869278111 424400838 441920202 338743402 527759646 951365233 980315049 697811259 753891045 353147607 361012303 968547036 988029182 277285313 335650983 71567941 222269645 65302902 654501368 255220531 929600135 836911753 939632293 993775969 994297172 593105019 656103836 502325284 790754485 602984053 867626157 203019127 357387216 433707239 684174303 974934352 976343024 691608443 830163178 95370676 304842122 768819847 952470449 853630600 946576456 267132201 308270868 340625505 464796981 708528267 953689173 803304545 910459571 768300176 790541455 802189283 936285352 498696605 624110760 928730688 947208310 493171438 760536418 8719792 739773863 800344281 989059904 580486619 761209463 379378825 998960881 845183300 975461792 699660101 849930713 885154205 954060836 595015399 993036109 838720931 996608341 774449214 993840293 628120948 706530615 626332715 807172034 324491418 813515802 748096005 836109354 302771314 865827166 494324044 706300965 110859229 296401251 877826342 985467204 818858930 955398538 682636163 710214232 64978448 72372232 715395791 736054934 532203270 652245652 90587110 449778817 749740738 821415895 755072622 870728453 334002456 709852674 831917750 947490058 287866372 693146404 600772859 704617964 98548915 915674981 684846475 899844666 213793504 281549967 157942025 801629350 642905062 899667281 868829579 899797160 936689137 937990537 110934458 831360601 600590799 763373659 748472830 935344608 411413246 528548920 239019040 953994963 579042888 993882388 354928739 979532899 430729655 481298824 895808709 930121817 417057037 559390255 492353943 831209344 570142239 746493190 384784128 852331914 269364861 360797667 679529874 829770405 309093702 590777609 235933485 655155975 500288701 579790040 531987914 936046896 567584861 884444306 219183505 526596492 549116176 889267002 445482997 932742383 726280156 768045862 765069538 985526777 699143922 740977630 556611364 785927988 388822767 997928976 920846898 987110300 616395976 888167488 546346870 875121507 476636198 815727179 271120699 602363206 422150921 774894843 549607397 783767146 530599844 548493044 426262171 586517471 798208432 911624925 428993471 433292842 235860600 451013499 909738184 922616023 242753102 568295317 546885595 900613063 958242325 991448982 679173474 724608534 902606604 939400443 393923715 477445350 138262483 598193040 430398110 861114957 676329962 731633451 480937761 575384118 182416640 197299802 135500333 766282667 596634565 769333787 604036759 956093375 800632113 909094733 782194969 815357657 574274834 722149540 336461518 840277112 213970316 709255333 773902190 865500356 869707104 976114004 768272866 891496910 245256192 984479643 498015175 653902484 168169058 794540058 826680697 909200082 508488843 857827112 391340288 970433487 396316939 721865120 429729319 850713114 347561519 738524118 556253022 628349922 910118276 934820737 909857048 975077039 535121215 562353199 12710987 180680972 898633473 939106907 736279615 872183921 329224275 991258205 211269042 477583096 454317131 597643353 418892657 980542977 220176822 335974322 446417105 965929288 479542248 864838932 658248128 771433242 416698770 419023183 353606483 937748044 359270805 799203004 465724956 507533311 62727757 529942410 665825218 779765087 899891544 963243310 228620179 925659993 502687653 550097479 838386193 974802776 88659585 130794898 66872278 450605317 780863253 978162777 781892527 917544062 801701653 871595863 695822699 772130390 69102131 663202381 628496871 783470605 40818264 790587126 540436691 851602597 272965527 469748609 214016074 749484291 309744137 611253207 118389682 189649842 815635251 844450880 803739645 879073344 996680485 998014671 793237506 906906656 387182882 703278729 191745415 750553151 954086261 967195953 803658514 878314005 547252203 711068692 275677663 399493344 738958002 813549139 564881570 932157839 751416131 798622723 678306111 980625164 349400370 803325520 209016176 385127085 729790498 955171736 66837252 478920539 844202725 972005984 795143811 959929172 277063029 855022511 141136960 830180757 995991903 999496316 857439420 909751346 343819181 815570190 486536423 821847126 560464968 918380316 471867278 700778934 542942705 946186345 614745434 644598699 704309590 989512883 311623558 883862297 103979300 618629857 52648667 394297556 928734513 943114501 528433959 530313837 880009910 880037217 264962046 789657768 323031098 396699341 243243593 433711263 818454478 954508332 352804746 766535228 960056179 966553511 770517957 972523554 201028790 227473764 66471744 497202914 368944262 682941777 572781066 810009630 920948720 959619186 381176618 633592445 338990185 550910101 15211874 636273218 438193428 796126796 451122338 803840062 209173980 583054936 967906332 996151723 370575695 703128513 588956687 798030646 190018830 993168694 641973932 758770083 73878431 816518306 371364665 414321732 276288530 834508699 715617009 839418855 424261063 982725376 732996869 897361287 78663769 882930951 344471704 844124606 484261181 739026778 61577865 717052310 830315262 885950564 525462270 598445979 752768484 762567371 449755232 836538918 125453497 168993443 289541359 429780881 258110488 614708189 246834540 253781106 896867994 993844489 821984563 864649607 873254399 881575108 327610178 950915022 355370876 846379338 927546714 938372246 994990760 998801907 775442784 991309187 396803931 401032604 277276476 621404050 177359992 676527571 93383009 302500037 436769992 531412002 608644487 709927407 99019842 625744524 851120042 973091840 53763042 184114600 441658137 905553434 744685031 882576852 266692088 608446419 316589044 747938005 379928547 588810476 49109294 315492275 58469762 770492120 863713337 932083457 200516907 973906820 69110747 928776936 788922621 980180619 142421542 694323553 410161112 895404742 6272727 234745955 737031480 999904296 211242783 352850843 456136113 790825720 495844193 774072784 331288947 700858452 468181661 637239483 651346929 655258599 577299046 981821200 1081521 936643137 55877389 817230603 262984772 924945605 390329537 469337489 445637896 611857455 600702138 696873572 789626218 924487534 62696046 482130866 34756263 283272423 61176894 664247139 63030857 782163530 746436007 951975123 776645572 997665483 342932303 607515303 698115423 942581205 794369739 976831277 202952597 781834016 293462121 640277091 942761331 959414294 227829854 630347061 772035992 885337192 96166332 161768953 43374847 818774876 799213972 817891391 64490649 335932396 832784353 939661699 728667557 744759394 17963421 56112997 465300584 577543201 771530139 815617450 807167850 879862930 324057692 326710883 786545955 944430897 356102722 444007113 636562651 897959984 185102375 866783630 205948945 364812774 237128703 930352733 224035270 872918515 254166820 860653580 247749629 310891087 426555395 793574320 754221723 984351113 693455611 909353337 961912390 965994043 904430246 913004031 710174128 758777444 195357111 729971734 932175537 963430603 632647549 916549561 638325472 829653705 376263604 544619364 309802413 906267947 738187412 837572827 155186391 573151147 803566375 981776945 388717851 899073632 59378268 997076973 432603075 552374574 444888000 590892264 364596600 571824996 414473406 909038584 826799062 858465151 274262954 323693385 731608413 884200531 194152457 611223477 779221785 863965863 205182102 384020653 164578268 855650025 294476161 375910422 540738829 952663527 499625836 702406405 751067992 856360584 658150304 718462488 857827864 886674281 578713043 618474048 546880649 826725795 836642679 898619749 748672516 867435369 731267553 736956648 46911194 393218557 755075534 794943702 263793207 441584378 789996189 837511361 652235851 755173593 547749731 982466773 889370900 960568093 211375340 333075236 371338985 576416535 815796533 904884679 14830302 99298826 52652273 649674266 445331108 698717216 354766672 878338667 260710115 832748155 311733929 594941997 728581720 968011686 514477545 849374656 192681453 227706178 982653162 988657414 841051261 854474005 542592813 949140031 889006564 933838527 395774436 698006492 439084006 637344228 167808070 641697112 872606554 993596166 485421939 858333005 740728481 972153105 749443656 752914876 44044922 208515988 12836678 306905150 972025470 989237875 760743238 883831464 533738 382410535 782657323 864812941 395438679 467531702 470852552 893843041 937547430 954159791 424096038 921282886 343189253 966940283 485091350 874678723 28730122 114343664 584190370 807716257 359928561 496882739 190301019 829754180 334565236 417867130 393090713 570373045 920251725 957647824 169029409 631714637 385028588 824526892 176478369 610767901 894212076 916798807 326965911 342169972 20016501 681070725 588947708 789697644 883187842 888016170 211064252 635480828 298702623 965498419 401587304 656810721 909008573 971418374 559085228 571805035 57821836 232194742 881203078 894118239 676620070 998026187 750367352 828378499 174568832 449002328 550422645 577123649 473171047 641948077 564897316 961802181 389811172 662560180 94605356 785649733 610821639 836557650 384020914 622345244 169852852 580855660 353872981 636245404 52849247 608528102 774002328 824418749 163178030 651365895 212437609 362232711 689339286 771477460 974303546 974529308 886225356 929369804 410657470 638307365 316819109 571461878 235293307 741774836 672697674 746760737 615411071 861728563 2219350 976794058 139284850 372862645 983918058 998573745 309263522 435507393 965125778 991242274 968731055 992250771 237946591 497047196 480225800 816616884 34531444 153303241 881078080 963269383 805328825 947791102 328137397 825442990 539273507 964578682 440779380 657223996 785005599 949261383 203723563 598837769 623839000 920060196 214507444 539533670 151324344 621420979 818774498 935068037 702007327 765930283 10462036 119748750 842933372 939033365 2869339 591596929 705758057 965313237 482903705 638080801 356100602 707807127 363420535 526442966 292278688 655834161 372269996 896899442 321041700 448481744 669486323 922921421 247468227 248876889 625380248 673060580 925820558 929560650 270867785 373508778 490312190 564670688 346674886 498928849 104095408 893904967 42709102 568237466 417657464 696195301 718582997 890196708 422072047 620598192 889023430 918572389 289636961 597701737 211569627 539026338 456468305 850767823 599770864 715767072 888632801 936911903 809391369 939925224 503992789 740162761 636924516 669019632 591022310 768662927 999483956 999877482 721879588 866772450 603819298 956939526 685519947 771732934 886305407 897249441 466726994 661785806 720163406 933432064 754597805 862846108 841987915 850639041 733799942 780734300 428878731 664074471 631377699 888905655 624294036 908494830 644990328 965931486 207174221 750775766 820675617 917423985 165871210 205580389 686807254 916484685 415881985 805499625 996390228 999488161 101600103 675196457 739679541 778341664 564836717 907844062 295707018 998244790 726340537 780493596 831725026 937405749 525786628 717837766 260411411 334687731 211659215 917843913 854022661 878721203 812836437 886067246 468127473 715872533 491977930 914931919 399748024 470387523 778231855 826587767 613848237 643261432 678405476 698070708 444644572 527249467 980139351 980994124 459825685 940155298 344676416 466840059 623939568 767565886 188462146 891661990 730230948 918612657 349820022 938053973 925659724 998561590 573013863 620807965 597757719 725728702 465995961 677068312 312460869 963228523 746030467 986936322 530231871 876452965 894511320 966466880 818157513 881406810 133361399 391904819 788641039 958670052 518532441 880945960 285586411 864130011 733008461 960693500 759582253 802866805 837282821 905816602 634038397 883263599 487508895 883439446 114346887 206249266 197653418 869345257 574597213 946806040 283643682 804866696 902877914 902986695 170604977 438252624 647352404 920917161 820621604 993241003 467057111 663218802 267345101 424832205 19749961 449445608 317566804 531541524 914422802 981576668 989308277 998464850 381393300 903970555 675593231 999773642 29591135 245597261 682128510 758516153 220630467 721830292 639773790 823005390 992592684 997125060 753809986 978016500 728859438 818430037 689390173 923220555 822405063 866232450 216351957 526717633 604030123 965531732 534570565 775952478 378283080 649342857 993378910 994729891 651581414 988218645 884277457 986314901 433781414 605348031 698971883 779001287 93996985 857420296 101382833 517927629 383096084 503269256 149473033 756561123 108484862 651950104 233680189 802001952 718080701 810737274 790254386 982088907 129682256 852430450 475585202 711291110 630831569 907789159 221953008 899992980 188176980 995791759 860343054 904079015 816736020 837097383 988382174 994030336 672944992 947624769 283401851 501904727 747948091 972520915 956375057 985764410 185637963 952252124 831080784 870736987 803153836 887547737 328790875 842133139 241424813 424891602 302568845 604932090 838558045 932094044 188951530 976901573 731257807 833634076 890890009 897511847 66274498 606089660 346761415 938287987 949771827 997372194 473502108 481760023 747778222 962728133 455781878 770791460 184535027 341443608 644371825 967899816 801204319 955049857 825288606 956461027 14491414 281012935 842418089 864394883 275767186 865614337 388190600 812710273 45345673 599542069 13746894 333992342 92601089 619587158 57553611 282809293 514667557 527701788 366669117 896052124 180043549 216251772 428171340 557375912 265500574 993215265 294996595 832469769 254871173 616717025 285190575 839101248 344461651 674315236 384959271 397735774 185270489 760735538 607490612 981651525 223422541 849314173 813407518 871275928 154382287 361650215 179174681 980531554 542227198 755647154 923075201 999725115 426563569 952077687 475793363 861759042 361737122 969622854 283390287 673731174 436272256 479549288 471498271 522750899 163388727 475074144 862205738 938462861 913192325 971205040 744617763 944506010 523927539 820585982 527124997 850011314 662881791 899969022 243105759 285245881 762884359 785536356 143109080 850091477 123726821 318779254 76574760 960569987 100759702 627703528 854512998 924757430 770971151 907999017 451682075 702690182 188014489 795063928 825867032 856521427 797970391 831858818 20932681 462848736 103814990 699761413 202548192 222815567 951233004 957181931 621202428 822862868 853126559 883520188 559987533 985567205 385924555 389793922 658764386 683290865 125597375 347963417 372327692 937282238 279698965 831479773 416505196 892895625 633304745 857304356 31893257 881895854 31057895 129827059 341455362 457349974 471434527 598982509 64589605 350458774 895742036 965092336 980123299 984803258 84320553 981111208 17586323 882435091 520735297 544226506 494096968 625775990 216841723 895378240 568108177 595274841 423187575 779787193 937769015 951970498 948777616 971050470 941038370 947506350 593757386 834473397 802607290 952840177 479816245 487037269 420693172 686064626 784825556 852990078 390430491 911213812 305709288 660731382 776693933 778609267 545175257 987090149 912823670 989824457 442902729 476508398 613560565 629607402 707591742 905539526 632659731 858152028 522916410 599297891 758890426 899195750 257049826 472333507 51610978 740336069 626126684 635255296 801413631 911794383 844725466 896539230 939379010 983607662 877123230 958090839 832048358 872069022 861824267 973087213 978076257 980001586 532691262 757730066 14364811 42293350 321422729 331944672 108471449 342600904 528283502 620857892 72296401 628608525 359407222 824654561 856574497 917408502 876740654 941076817 730693291 909097937 339778908 797388310 983193836 990383378 855287425 992635819 5395660 789013659 896415755 987081085 867990246 950993162 237575866 863974162 31904513 945173544 51002655 748806917 383889336 863878330 599630908 751621608 980380714 988008297 969242533 985560303 329469121 601069582 896784931 920355167 237643559 402567215 70216886 732091284 143233414 803973838 27273925 469567084 908337926 918280910 728923616 885051079 804364597 890075358 964568676 998939152 977840517 987957076 70279456 433740088 395480095 623370055 321292877 855812283 88096689 961928267 507649854 593919959 950251230 971941572 150661107 848625432 81857403 928307036 148994793 420627573 874566073 875793889 922175850 955407618 772034228 942673751 582579003 653604580 578895302 597074586 273452254 767742329 275587822 561697635 816453195 907013290 55693589 989152571 540226067 799816795 216061577 662230495 93559839 385648124 400698822 511845327 392028566 807332854 256517610 362674515 805806235 834401886 257032299 574277484 916756172 918399944 881018298 982854244 781718779 916006653 428214287 823844709 223504163 487476750 323108990 580785562 443313067 915840748 393469545 736185848 682127065 740156231 366116694 598870827 64796600 934421776 411296060 650210017 881560286 892505283 531280570 680140359 107906052 607295636 526407972 896975632 522918061 961421440 150666339 932909430 306426092 549136237 228174192 801922421 92418353 414712349 28243116 889114389 944768568 975587450 837737298 913102650 216303746 828847901 355081891 978252434 181321695 910941484 832004872 955640514 27954044 958855658 279360817 544840585 752015879 935456360 424114585 985606817 316720242 966294183 891680706 942514206 279012271 839305758 94104887 349080177 713340841 858025763 386876857 562401085 58086425 736038411 633478303 691467898 223966904 481361901 959535194 964538522 487632322 684281068 938073902 964468978 854655052 908259431 826451647 927931105 691888834 786757501 469511348 966312463 607411236 911136283 817763493 978072929 163288640 501072282 493001511 506913768 327241307 642044228 156649222 225205422 3284793 806715631 177241181 363285516 175021463 940690033 531344192 829453155 336815993 959674825 563293521 938732251 557397939 738785886 794450107 898132088 830743335 974427175 899862865 970374553 558739212 784770890 465705479 737942539 620621359 670055932 590875249 877081943 552473364 944618188 353369417 528695417 845730910 998198345 592749745 919550670 564860740 684967009 454581200 674829954 174441808 484744896 515664153 572658588 374552162 543372105 789234339 932870271 759700729 841907101 270985221 566198040 446695912 695242637 486774370 729842524 644714287 682555737 573874631 613978301 24363441 871937853 541276990 790164940 675124833 792550805 305192100 545503533 204983759 605796928 760854498 923200040 37612774 867627771 126794814 183588386 645312065 913669829 14604431 569594066 497766459 654612906 650317638 852599812 37246891 230931167 99491810 540669259 262711119 999699919 256025125 964015879 295450095 443098936 575859306 977232063 673020557 876031790 249605438 854709839 349631913 352761541 728252313 795154157 718002140 764908589 636470127 852337827 40251804 82339991 993190257 997619077 258683190 928543776 884532537 968286680 111007895 623910719 194253984 908579938 97400108 578041069 595078795 595233178 36201749 94148681 184914623 623093301 188270548 846936501 519737439 725250337 78261882 992126685 724849012 785009404 394842806 716294733 782344798 981726461 367772684 421571385 396718880 940646018 677068728 771819848 769197958 995774339 115604327 179713385 660437975 835924682 333393370 838928506 423177549 545305804 95250949 226278997 979104026 989091090 436256423 746595430 755633042 950738842 607284887 677289869 808145741 835576768 193531735 289195610 755576702 884177580 635687495 863218092 72879143 548894865 50324918 831628641 660744160 873897418 293022436 313299622 929636979 935898478 56427149 725868976 404478645 491715750 323364799 465661788 847945473 999694658 405310103 901785484 287199807 941928705 517257322 643863692 251883911 435389020 577548962 899812590 895731851 984686673 310727044 873364097 35450693 546424744 159819068 237624153 479864690 637364099 262006874 263332789 702247192 798222111 528372243 677748256 120596592 511335747 317204086 465292695 85521399 543637733 684291188 707093324 623509834 930773852 267860996 405795605 43339033 786271370 261843350 959353977 682837761 927877635 298177838 728658087 249125540 639140021 943690945 963608556 153955672 868624023 888670637 925163401 903240200 915888737 188496263 460012427 841467069 874228365 921859579 942751019 430556182 696608681 708078845 732365620 620246799 692025936 54100230 99967928 168636620 337975167 674593964 936545350 261005505 794893674 208177237 593683742 472651750 934154118 30650263 959602664 713709577 769117929 338987240 921232515 368105313 678124356 303645464 631586920 253108261 445826561 104490748 280206341 901896860 950422143 335370292 740834828 633770826 706687970 615394252 838355843 451806206 812455896 328206436 716978287 822766225 823939387 279127428 352992772 942445573 946770896 683170828 983792673 195642298 527775559 695241350 799815096 84357229 400562898 20427206 622006703 182085402 246238445 687656422 762990867 921004488 957974652 144734793 158360405 749077760 956346613 9678244 942874567 172274667 896115007 399536917 418671906 719457064 818851511 40019246 419545073 355540066 954603747 209551721 716792579 162266658 677299490 67265019 241157702 991620088 997643827 5211859 83246410 511667409 517113259 924942380 980925017 447139799 814913671 885784097 992293519 855821525 861185413 419169956 916028208 898030266 951092305 456069574 490703297 491778588 874138035 869232391 891834515 716501289 751519153 270495970 901648114 164799162 711240136 61515983 875618490 817733509 911183835 106307306 512481854 189629406 960390808 114363917 244944842 179837944 950104803 915208371 970890858 919002742 930117322 771803350 866801409 165191150 220806067 255890895 417866971 674198292 781875364 720877077 806828929 109573923 143389942 978595290 997142135 935626357 986351040 220275605 992721943 601598060 655094828 859535689 912776376 715855834 781138431 692687135 754566742 957261306 981925358 905178458 945676797 89543258 154031207 154896241 670176615 565625732 642949484 794607515 801974236 771853586 779115510 666470727 692895607 462282038 491005113 353515459 390322553 817120808 913341003 32968924 189716974 259580636 341225214 466292118 596382692 485721311 929780009 641890872 801720688 821268743 855344271 398355079 987466534 499879892 907531445 825052022 837419906 871757774 951754988 721776949 772112941 406728684 851759336 790743502 830724350 422794416 858999557 654657789 714504786 546719113 752264300 992841768 993789499 870235223 955193424 269641899 351849616 761046819 989310067 895973880 956656237 643931983 660122729 729820866 976138276 260238516 945801089 856616373 871377066 242132068 550058200 583026579 880570417 873915816 950854922 848176229 918582405 890232497 985782206 7834233 431196371 162753411 232841299 676825357 972199753 833547050 989332911 580135790 607619675 231211986 762600567 903781253 967857496 432546785 450046381 657454628 788355648 596927495 906971189 496953342 819667868 405709723 700756563 211390159 328901651 856466055 997597193 686604316 814555183 740404927 897576259 848520192 975621713 92348187 466446481 156303453 370384073 668376540 914648752 140142939 213937417 165022048 945717800 760591865 769830304 234261445 373712385 196425966 258021974 488178645 750820226 915142157 924220933 620453541 628338629 638577295 798461756 240039444 337669428 117122394 401298076 740518768 855475271 246723966 809257675 200764887 452861633 302521565 386264734 78691450 767478937 6668942 44175253 182474165 247168963 786215622 834441790 329086348 975026893 295931413 957039547 773247802 887086239 829799338 925216138 71709538 216516855 688289292 819413414 677561113 696833408 170947114 597659106 94186408 158820917 131354861 626252159 914955296 920369057 697287846 770406865 547702423 993321291 382665614 588614869 410751798 627218206 357448903 487968013 134934580 613528166 93457125 329881946 530098598 981499897 972429532 974108502 199461807 903862641 414642490 890171448 368697757 927973370 891461314 957885989 748327890 876160509 31843644 708367567 588810189 691342162 129862075 966929502 468984998 790633453 946443072 999728275 564322509 964517704 428764731 882756874 120500328 339751374 587069526 653509884 665444095 882815310 382092953 939683709 690951392 802571769 412248727 745767374 865830531 998374938 655876158 774160537 812821967 952645150 13466194 253993487 587345766 699301399 429547988 666788872 715917521 957063995 864977720 911853244 905825246 955957903 192047813 615616482 293519818 691930082 60021611 784942962 6112665 439635036 272509572 301296043 813483941 912751695 426435127 431217089 240681781 245371051 584387273 863487066 268121423 679537699 316499720 439707078 94385759 843561161 168254209 569228355 84196467 166268649 53151745 258760693 177402194 469249535 492583646 728136345 783561697 908649644 865864636 973765654 222975683 750663478 249476022 510131904 968637013 982992477 304988205 715928498 93068194 969650326 219619429 318155723 883549717 925044955 478849003 705276387 384026746 583432654 205223016 990062427 169281970 402296603 13790382 324228479 685040374 952219313 842612419 856793236 715244023 896230744 374462334 485381751 620275067 674911860 396381425 705407562 982702025 989849594 9994438 870472782 60935118 761217767 788433711 841794104 962483029 973766394 869150325 921240720 891263344 951988104 556536595 784095002 180967853 859060617 73836387 176233212 733369207 975342262 275826074 451466873 354618563 766717539 780358322 914232998 795913387 861569602 732421344 762428258 411981721 693083543 786617279 976062867 650137806 741070404 699696549 738741124 951688018 987175765 356574057 822598491 994661515 998408023 564162808 801202815 196056330 674398461 614636315 685465100 685435814 854593203 397849760 788479245 14105895 147315557 612481114 945723357 613806082 742826934 686751539 894385834 905458667 906487125 594239032 936496598 435060663 563506678 224441720 770712521 574751222 926713721 843133259 959217502 338843651 848593483 801148764 895197883 841865566 904119762 952516191 961750336 174764617 682124246 957910007 998277522 778932784 832243206 497860183 953193401 963290539 968717670 477301293 965526375 314110655 476018269 314381725 642892428 858682847 961878982 653692990 695413182 573508524 668376225 592209494 938985816 171009991 860726061 467393602 999270606 265335190 662194141 791304684 875545496 597186110 967399661 232613333 580867452 602342796 888278418 158402825 304663628 619610139 740913887 954311046 993022315 370913495 596702863 355674553 843027767 324309800 527385919 199403664 483262640 898937641 944780586 630983782 976774370 957143839 987882855 320949088 660685354 202589923 848640322 32031482 710769752 895064108 968968975 517571240 649629266 108401787 183140632 264108950 851528228 274575233 822764855 121676126 307242275 244800234 973462099 732876102 741287402 980495063 987340212 3537515 896078803 935433672 971240547 909920702 988673198 92270518 206956529 212925033 395375288 252030551 755965936 709256712 825908773 399575741 401969543 508292920 961087337 111172462 344232068 410956258 591798960 989574003 998717001 520365634 645429733 692417864 852039342 433744410 819239359 150464285 908712850 288882886 608282779 100144475 372235693 710318322 778535824 578047761 686645146 873525502 902366423 890276637 962034735 187612861 777675164 443584528 926081601 344143570 842483719 881329160 891943007 196249073 779435029 69927695 990497475 780133723 854245976 416678494 633226574 549779659 808100765 690732951 694473910 667759186 786677053 246709517 631576713 900137376 920292103 83791152 109717028 539707990 932069307 679043176 866612755 711901089 826845373 374389770 837508849 175586019 745645022 894347426 955757058 471298889 595677599 65304183 796756517 83014917 258575934 179157261 700954730 601358351 923826715 986684395 997130956 712069747 812609758 414650396 647798920 102074619 778817043 754322369 808471146 727300500 876213381 736048806 837806839 139083632 921537781 180936565 257137549 75697635 803258558 551376271 567398131 862698339 949731072 781039753 969276352 48862662 175538986 268014612 738238689 910355846 999657401 276264435 916133523 878943253 902108833 137941679 160526389 843833565 938607090 676405128 708172787 392239636 550855846 355626266 587063320 573302688 807700995 414267130 530227808 570470800 873016405 34871616 580102128 490556292 911855096 185136409 836944109 672101522 971290298 333488482 403998230 847880991 871484430 893833811 918886034 897801782 986540473 973859504 988989980 272097213 771796207 762133197 884090464 710843774 976353638 793307860 904686770 955005508 973732253 90517515 705751364 919348213 957547065 894625869 995871511 940435228 974937563 278159649 712368221 259910660 886321927 420179165 774465019 571189800 876548056 786518939 915750673 782620231 983034665 198933611 971582349 52796961 427704800 816266252 967990193 522753997 882713289 424040361 454962053 47902933 811735384 698351309 971650814 153031514 929212410 639078924 969120052 33561829 736960285 420718115 437343414 727908871 912990109 332699719 415325503 739559409 967182878 855600932 882900116 675216739 928516260 834826129 860830740 841013398 911295769 388750726 613938190 243747442 288580671 757992532 899418232 966003878 971780695 796993273 807105180 307127394 534818212 843952910 995515084 356859773 815814383 657818294 755037796 258851278 840775663 875325508 965654105 634533402 693257059 605208905 673473508 218904283 448609152 695326390 719521550 126444162 961201992 104335539 732417787 145197737 382625972 724416829 803342057 633735737 979675739 63112995 661719933 754500551 939221273 499605091 975065260 353995194 530715348 460507268 587791608 938366816 987926167 555714391 935937858 643518130 885569230 814372394 876186282 616942277 652892398 308061058 346903344 621278262 643266681 781710187 990552397 546605082 743284682 338185861 615997822 546236282 668098442 663213239 951197786 869272458 908661255 102806059 150498011 912636812 958904041 78735023 106732945 312725283 635717962 863382387 865052264 911473206 980523984 911154076 969699315 802498103 804781884 640532531 921818529 673053733 704580930 168652674 834223265 772492715 893142876 61513054 885203270 4073268 126037870 815602904 935527389 320460534 538610293 108245571 456109328 922519305 958360716 919852384 931722925 857583645 878250796 122619139 959491354 821760207 944190586 746822219 986618616 964398049 982205217 208262368 574889837 39922485 890627636 687689979 916193634 776157113 961126268 391454560 883916654 882173367 918212134 417238502 861939963 430639744 707216411 701448403 958223330 706200464 857224419 300796106 465563642 59811856 805994985 47062821 252946642 684733915 839166935 228818657 247763551 502026860 955971566 189818723 938319078 738703842 988895916 871048368 972427536 39481581 599708987 760848707 868793870 523796116 701775411 261759999 717483866 690017634 724596086 525775578 775384071 395372424 508251162 152484217 912794037 490126395 685487969 821730706 882003321 859614227 935629009 291588467 729299450 952376458 969633088 710580369 770679339 182708606 825944608 941563387 974525722 266246481 843497506 176557997 196747685 166927800 519360377 6999226 949238990 109502307 463892142 714273534 879205464 316865984 508774196 457463024 597839683 319411540 320856723 132555024 720112901 415078286 457786885 112545963 252604885 419298513 768685649 125008354 731356258 361116619 426746539 737583504 820364803 655664061 945336866 48726978 183961106 174991678 399602662 620505308 905769353 624143309 825206358 311282431 906553750 150104341 183841508 828553108 853801485 601129526 961773119 359964828 700499078 612265484 885329989 60771087 365754958 630745668 857554009 563016392 796460962 440958884 888856887 98561239 880760589 149545407 440998205 581354513 875671423 998494361 999432703 4621562 599838588 780124377 976112530 5673390 358913332 123326409 515087405 630517443 874802406 569201559 618301303 902963357 972751871 603868511 887726450 999408330 999921606 485423323 667906095 437311883 616777357 632934527 940538886 193864979 607453987 607842116 716238933 815022844 859474728 352333443 594226116 626923842 702849599 641784922 726191224 912458513 957573038 236578149 616322170 400125504 769995391 985860012 988556046 560614285 736199570 215376680 430320009 4112980 978877878 55475019 145963105 722831495 933613475 146874557 932627687 208033824 256487532 361288559 727048725 697737100 876168430 968948789 991439051 30321831 585893365 734429268 742336294 183526973 294574564 861620439 993360156 24011335 356392533 89319280 159037283 916340144 950187675 670352458 784617563 537187631 637693919 163513142 873950464 440111738 607745616 296694285 368608762 558829922 853341343 974006477 986414201 533688320 583947092 148303597 488195920 747716558 778578670 997536897 998332794 151755812 985960517 967149068 999071889 690972960 734545600 732759191 857136398 582293595 940672560 195651000 897350455 344993146 646581106 535495033 772417612 822569813 822674935 180155385 680489727 914639275 986549043 526694020 816262515 343421190 465574999 896380487 897408467 2374157 500899058 705485498 751501101 799414273 984825172 234969940 640747564 812645773 947701995 468059971 781399361 239653541 535972719 928837822 970468564 636248962 846131047 761514458 931595820 566946883 860443828 494733873 692478340 67246031 433740293 936453798 983941983 526206185 838599932 944037062 963144124 147169659 444388083 665375797 879575374 102878171 312913424 278700934 518872075 410616559 951436115 445340578 738439825 264423631 514455142 911663105 930757931 730936612 771805533 648137566 681113131 939719580 986269622 364122527 621585956 424598306 854219998 475048854 774975617 232787610 972685131 203142474 919050351 686946568 951656906 338258561 699692545 234438323 970139893 639972858 709915033 128761221 665456474 225954605 864139212 145269799 851510457 943510881 998609581 597552211 795736443 472053571 900449658 17396298 400645580 15657785 794528250 503225317 821839392 441076663 527567974 933670245 967855857 287131303 847956373 96595996 660331316 506604002 921454765 623844060 780414352 462248476 483976631 396188525 505456962 969166510 983190671 817977926 838195587 613372157 792307679 38879410 981641811 628270480 694621962 452776706 794235191 746898868 993966920 134664504 929430314 378572120 860066288 93721850 500749580 584357136 841105262 284572130 952694963 683955267 868703427 30655217 660005193 917552552 998911247 102914998 127001409 772131402 974157049 191395411 314398310 123954356 445876117 343975983 498164469 164931618 448739057 34980167 167410773 639944112 748867247 632895154 730959207 324078062 998587242 359306947 632258820 239062673 991431269 290056659 353069620 557078953 633719097 4711711 366857799 732108073 949169108 847432244 869565326 204775354 653626197 43718606 367608346 205390672 637856456 271799472 999079119 4560838 719668315 486728933 743838720 419645532 613757357 814768628 904693214 609917165 705180877 412428698 426061339 805491319 879286851 536501824 689531889 407177221 635740379 471183476 715292075 606386968 625378732 101860022 710413196 560877555 967752086 431510153 850834860 994312285 998214620 785365513 992177650 33685157 927173043 839132854 884451908 481569301 810491201 48052349 504549122 319196836 662630221 457054273 937163131 43955353 243846575 234907913 318444285 234421203 250132107 421274602 988921334 468383212 925027551 857959843 934229339 657624176 717454189 489146093 554274009 113250786 520638798 861416096 980767597 440140820 621685141 778778521 828448695 419567355 600897381 561728355 838201141 668064659 720004787 911456373 925000873 635089790 836636580 640244466 658174405 638442899 784741387 980507282 997429543 200659533 484780427 641138743 743573021 546595042 816801163 240028210 570676669 315985575 817867910 336039038 556639636 814341812 868550033 52177091 846405772 605927678 665171090 433405266 723876013 574787259 648370576 759317959 782378999 108896015 286542395 390008688 713295866 870588726 920939357 535702272 921808581 401560426 737214638 52946034 270697830 739168012 833761810 544596910 882547790 992935788 995775979 862737779 865612988 115872420 968172004 314358217 753931208 445460877 627777084 512775601 823443163 826293834 917340670 845389588 932963854 545979590 906696141 961150329 978738153 359224973 913737792 286534067 819319848 377635615 848334806 68580865 315940239 87249 870336111 167636458 708740584 442488529 923498678 75694587 787702463 482954692 977397321 741200084 815370665 850909949 965900860 538859342 843228371 950593737 952613096 533241421 724265589 430529917 910485582 686179178 908712647 905858581 983648871 371001202 446305745 933496618 960928364 150186758 191032571 550856794 950224650 154769031 907312727 438618906 877760317 157085197 901032293 906407932 992505456 751491320 893937321 307998398 314529732 103175493 860191714 402089555 648442655 137088473 854524986 604070495 767244649 167685080 415659606 583788427 640468889 560267086 758492378 887230668 904629176 455024500 821832276 783484910 847135162 100097739 966902648 281932688 419510093 892044012 957282849 567134070 966706066 257944460 793568525 739943229 940780741 685599045 973230629 189665290 404713811 994053588 995618857 58585890 73557944 605179044 755335006 255526477 468142495 247581598 695373040 642612753 683633819 796925530 897801710 891645248 968593815 919182297 979573913 841322329 884283087 995320625 996476719 564949732 775957649 376175183 844567692 233919365 669974842 194759016 583130108 223528463 803056887 294197574 488049430 790839111 974696946 58311345 856816369 971382704 972734816 977059087 998496191 1904875 290389831 358823652 694726807 711143914 937920558 105631605 995008865 783465781 906339258 614908056 833450039 785203925 801475630 822585866 862015781 93141410 716225688 42582631 836733909 190886929 234434217 666088584 796329072 662391760 830318580 566489928 632449498 484094136 946163404 785149055 946281649 677550658 685018259 98766202 493400680 418078556 650562632 687951929 989345803 547969370 753885798 521838891 752285883 935802446 961274651 93080756 425998023 502203566 544888131 757542202 780132096 866061141 900656340 721446662 898911749 206326787 873545566 973727951 996315904 480415559 938983206 332053043 524611796 544288191 587657517 422235025 500619120 357823480 787614733 14527753 263558417 626201541 701710225 768911224 920116030 817700723 908959459 76856669 772321445 827365175 961235056 328365577 476994364 182684062 979549778 373548642 394439207 433856124 860624095 850293028 916319078 627262853 827997709 449447020 957687315 977062762 982574353 25880758 335150255 944440865 997209742 937813013 995810941 586999459 793100072 366275578 844875513 251688178 320807181 70250787 643780910 398822376 468859414 697349194 995621059 877682040 908010244 60425697 356064665 983090100 997888320 907917614 983910244 162707231 837103824 356306395 941158063 716913410 827791252 961453 738817756 893914072 940581747 282858633 504869209 756529138 783046717 389138294 839051565 315012826 692920294 558633980 818054396 679009323 764455807 138371100 665858294 359947124 583623692 834786674 896588038 795908924 876788522 840295845 845339669 449706949 814505469 892175215 919787188 328383555 830797465 857286235 977350277 848555644 863934674 597054767 708413843 21465828 883124802 641677777 708676053 361896968 834962684 332100835 814271976 199495167 841233090 818669462 980057572 536538493 537289823 842950982 985972937 104294597 367778611 817784441 968896698 201364907 532195204 920028414 995953834 383739160 907946532 663862193 803709162 437761870 853646237 334407023 639562758 169963057 915644332 681620595 874140159 577248032 853916923 914979949 931979342 965732728 966123616 929056342 950914507 809863062 953745518 199873619 408718744 942604633 979948512 39552466 783468300 993260632 996102695 802039072 980333991 910281283 930352091 368212620 949279596 398753694 708616269 770656204 962560462 894279307 958488632 536240223 599244318 991882793 996870204 736459445 978591515 459388983 632562704 25564390 143034995 177023766 553999905 719055605 768627489 959900781 982734941 918735416 930414039 22900274 582716444 941158508 953291473 106421787 155304603 135548898 591445570 246075606 895031875 802823074 976606739 837364155 864991923 169428016 842480040 605533176 874918781 800590312 894136636 238543037 790717682 892718006 967374849 757625196 931456140 930857665 999754720 998247674 999688265 521696796 771766207 341878494 741467668 6650531 628261429 694792528 780396074 471524869 898230424 569650691 833808731 981063789 983174625 931169482 956278237 195240170 477153959 818460432 944971388 73856604 471955507 920510957 943155843 345049235 990008650 385158219 595377846 49744233 524404685 505188285 993221685 112552730 686109462 915554424 931287518 531690165 777621606 919123997 981923282 808689763 810508495 994596087 999097125 383322025 762593695 581432529 879441462 65239755 157462842 253120229 853707678 909996012 971005601 60950004 726626428 52570809 752116532 138905327 980881446 941792001 999911026 389706885 560063168 206605125 680872359 346037741 785693173 93764397 239245326 429831808 734336985 278897176 931496898 542212323 568004408 13279687 48533118 503244799 546093515 713803375 992192173 940557469 972810971 856371421 960366415 314021162 816563636 489263350 812698933 517410932 726666935 154033320 334725209 144679284 390796920 595815668 732752604 452385644 813875369 884531503 990062188 953175635 978557717 176691248 717718552 405517022 424650503 74137103 323648049 861894209 893642535 744648109 887704549 141072747 779809988 541068386 952636555 948867438 962458257 767081258 825866113 488201302 849040649 179025715 890868903 694778259 864011096 476989098 923219312 186971692 788176283 584037615 864046679 158068689 893535441 669351700 944303407 209111693 703028941 883089004 924514431 232440921 637743245 222239524 656203069 942977115 965527855 369247173 566934442 682766653 876811051 728751176 977125353 707477042 749148851 871060199 990218164 452033132 899871405 251115119 698916614 9529977 22522219 171807461 596894074 923329720 930132456 215491575 468035312 930672536 957232565 445359517 901380402 118053152 391094937 120372979 210101822 209813433 366473988 549287536 737203775 964755385 998026676 869746114 996640037 841068815 919496659 934098270 999160303 942396602 976992107 773370597 804650345 807661554 873571637 593195791 708185720 777974355 791952890 580819519 934951655 563502486 883199170 796557647 969582959 601541690 930026836 858553863 915331334 512346730 767881482 219079607 938719982 187713928 349345116 408095257 966737214 70284825 687877061 710244075 728427217 479748547 508361635 304683504 564449236 39975733 327306554 940564978 954637992 537055226 988396753 750723644 960220731 144617859 393799179 443395980 828966847 216560239 770515919 109496160 114429896 369077284 833015763 715401999 989220678 248939458 568730049 602243628 705403788 1941323 166690688 261707214 614491175 355960827 793784044 143611834 751473369 995972845 999211394 691302334 939129550 357063574 437250263 7247810 362991061 95130642 985907344 141196137 861397769 205532882 853109070 477931611 557947558 680985405 935349980 939756334 947016743 279753758 722893730 970964534 977510469 787244726 963776693 437246200 986218627 92017819 170833738 753316040 898878551 888676268 889505782 487580693 522704744 718281000 917397247 670867495 726694596 209668902 785756295 274546727 550951109 445268277 662785573 378933266 638937816 529386189 993002714 701151131 760628127 605870047 708982039 599523136 792261059 520165730 917408978 94271207 561540813 713549797 809723510 308334916 988189602 642223825 938490447 289709791 786231170 105383414 841003616 397621393 604470395 173868709 660170245 64089358 228770460 483261312 683752748 418628298 482201253 542585472 797584677 687958724 987060751 65673931 247737593 152398606 771650074 59546896 194955845 404793542 644383781 3770362 924656626 246550053 416457802 56017855 398957889 697635750 808829770 770841464 812612773 396175765 921453932 744837957 895376691 256720275 292627098 278423372 897996422 620424311 857275373 578986856 619490731 414405978 618373082 652053106 669111455 635160266 767819768 488059562 786067716 42742274 756338468 676128413 745999658 637416422 879961014 536874256 675756827 415934361 876673750 965817540 975452926 597773732 840150569 744358325 965007470 313353990 525817028 451658793 680553038 898072292 928214916 913698612 968301891 966644826 985996282 173214498 325370111 989767460 993760465 814933642 859604320 866422969 927285775 383554074 498054940 387952195 775214699 986842504 992006105 124273854 280511095 909364439 922041418 668352813 804550797 314115210 675089770 682293236 829335389 357480031 885362149 305472171 870486375 518614139 579763018 554630160 795229863 436659941 765208578 700163515 833000244 190784499 933190925 587866051 919450806 528510918 847098720 822878903 982753939 693487671 870207014 953483576 962212859 397544810 480706075 474586108 795301170 530865308 713975414 225839689 771376752 224641 134334606 251039537 583686209 446875146 940749667 904148995 908409324 275384452 347141426 446086449 474328224 657979769 671071899 69001933 997121648 468547797 746033547 279894646 286667306 353613166 811545270 94216019 397603067 913160738 937961078 117658172 289045846 252556432 459711612 910134137 957526997 395859448 792429942 219030659 284861171 555488506 923220546 200262362 692665139 545341356 900246944 754587788 760749231 118436684 689389255 861444775 981205808 554179871 845743559 973791449 991909396 147906265 543860977 209414540 798543812 273118286 889796894 526824325 932467088 580216024 974145877 624464563 738509655 526696582 749145515 798907880 899686188 325921609 873756435 542854550 759941096 344303421 590633050 308147100 679721962 255031779 797506284 3832210 52181200 791863585 853872222 482275807 932409372 570909216 679819873 218474202 700467281 485730844 605992306 593624408 823087556 258657420 995844668 667016414 745516619 859592697 970549795 761283747 962160039 279888486 666095376 955033507 968648031 597563612 887379591 125609543 237555423 938965685 967486631 403189507 905491760 199385987 983590944 731742402 889835041 453514910 633896011 721444380 968519639 764643347 889676834 475259871 894960625 387666991 438248585 197027848 277283958 169764776 790424128 453448794 767488122 491249991 964811677 864410521 925992793 366719269 621187505 122245943 662492690 255992779 744167970 545476378 911415887 184108412 678666972 27207910 293638302 815169557 842223613 634995100 954249405 850780913 884613151 57104044 161454652 172271909 944942466 274088222 778850960 556485551 741689168 289426964 436599888 349764544 849451963 542502879 886608376 868793231 939205525 124884316 605000550 975883576 984172818 156286433 232755686 10200906 119382132 331117124 868288482 608511702 922919733 362003348 935292345 97252951 293267199 264636578 365985166 338915598 607358420 287845881 929392752 250795149 268825094 463160072 620128457 66262836 118751511 213326607 230715856 439574823 995788610 659568855 986318918 675702271 934050501 431795927 806300522 956566430 998768756 761131398 777631709 628367157 775835506 102643619 505820842 630529211 716156721 223285696 389837679 569032686 768106550 151822174 434335400 377681988 623662270 705658585 775825629 953386423 963186042 788953877 912751769 240447881 450956707 513909925 645758150 769908916 840561545 307584926 641185723 861886236 969346528 365145825 667909533 791800002 819100717 151676903 171058228 445458353 885180653 337414169 424842945 346492783 783958795 443926409 866192705 921126700 990363952 592001561 687966047 239189752 347007301 395046005 532417876 931015018 973781613 863180190 969269186 194462823 368575456 346833870 359297102 84896953 886637043 287095224 526284507 242996415 283726899 350312114 685613413 424480191 592406845 754832656 850561780 329429322 656237680 569348595 716983882 822474874 993107509 470910236 855731695 819381141 935852584 846081674 875413597 486272747 745991679 799361480 811543982 879922138 912174591 712876435 929186135 221256460 886214187 814254468 979073483 79282207 845620034 757627031 985507533 538044032 701420464 129615231 601875804 509465623 652111771 67622468 528561913 234774643 608684525 26703601 49510805 985829523 997045324 109803186 828248383 973878137 974701641 222402873 890044921 303750629 492524705 288198736 715855950 505623214 930992519 473520158 603292011 899979245 908108962 767256860 836016528 200194736 281818293 897810725 961043301 463795629 890489514 971028062 998644625 945532366 969010501 24208970 196864956 869221093 989363939 235357651 715449387 885762277 893109826 279176227 758279770 429997556 901139224 207190052 328651601 559557873 569196504 701389057 739633005 161069744 524938828 271410056 433638002 995039962 996825144 245516658 661179106 564717270 592124847 138014203 819894081 396355095 727376163 639840386 832605615 196850170 682244339 848404141 853102012 578800629 591921306 416906596 825453934 540564604 965487954 294604973 317323285 237278109 436393759 398064927 754268848 782225161 848136833 594639001 742812677 659981434 820584863 957847633 978731713 282250025 774828910 942582685 943482686 596383530 647302877 22258919 342823217 111976219 286200368 648839858 692596260 179085243 590495735 748227772 750193124 991213299 997775963 730637825 891950209 174074779 516352276 393016156 643492329 504175108 869127740 234513135 353683679 14474651 734642631 170718582 699782996 537609506 674226833 802550374 804010029 170150279 784148245 754575536 806413931 796253240 904595284 628889879 758123248 194118916 403485199 369863493 797955110 705624012 723075275 302763376 956843482 417231310 612576544 381401843 572055779 275749528 475273715 320541754 741806366 993154326 994479381 214457117 309863318 601179042 854770573 67870378 101884397 280602956 935602264 164479787 452359685 716706694 929002298 716548176 735588735 591599570 742698389 397287862 993632383 631008083 869066017 492167215 730438134 639760227 900882107 389003174 451583129 630996652 826679966 358818425 658818040 924868495 934733553 51552034 65728836 455916753 551544607 34503779 469869984 59665611 86354181 146698372 898152095 220201205 230380475 713256444 887758570 930704471 953885368 364957265 782891259 220366636 628708876 902941270 993275901 241834713 677044081 67853842 679203425 925509504 929761513 885069943 898879528 290815979 712359052 513119247 883773154 878780115 916125942 600445148 845186962 647846881 799739999 360152879 967708175 487036410 539801018 846307818 895530819 949428175 965828773 224017800 594352453 85618292 952351565 276629569 559598226 269926876 645328658 377712860 414245452 946646258 958106142 695913781 831726267 853246939 957881322 393946283 728879301 274960363 992294799 309878568 319120077 880362614 929463500 965710645 970219112 430240836 451246664 366585553 721067308 536718936 856655655 533580623 978657369 610492019 875985576 719133842 733319983 273699534 592452479 97286160 539000437 552151082 686721804 415326800 492532934 991863351 995588378 983486212 984474222 590628523 817800896 242747233 708589450 19602324 395622759 208672815 536589337 728320606 908725302 469860320 961482329 122071698 318141116 898113800 985759766 631197585 865352223 474559176 664926580 895302995 988615279 91187423 767073966 705364317 921146723 864638142 997640018 244565729 950690390 123364553 281873460 350306406 691988043 552910289 750815475 20167850 69183717 102878697 581365445 405874668 881429675 917396362 999454610 488127212 581282338 957280360 980724825 232477238 713338584 314637888 680792434 959164482 984432110 642562736 942007417 773055244 962567365 552097956 720992899 697067684 814533185 491211663 499812607 949150783 952386556 63141797 442679639 743545091 902741814 877482051 999652216 171984575 513410373 685111714 731385860 845041400 896425011 408824334 770540950 918327351 963003803 577110843 928132311 211163859 423658695 148496828 962141138 481183222 958513892 229366096 248280187 879714074 945617893 177325223 271532808 593767806 725139507 819110076 916445532 146380313 518086300 51546171 61730034 153584546 871650263 496516646 777380686 20394873 486631464 684476446 929647249 955071817 968565873 918489131 944905818 590425848 668269519 711298919 719775382 735574057 850750768 28531486 643132988 767126878 827802510 111853215 585621474 803291724 803634580 898588645 906565739 332435630 369445059 34543210 784081794 811667306 921365860 623556182 796092443 399281450 679433492 476264513 671265130 873641535 951011807 790232051 858969418 894183107 901222608 375645072 449032506 235110332 587458005 742400869 933076871 581754217 759398835 527609480 885809520 657428904 824137304 756023107 821112600 757187485 978430849 251155264 515990911 592308998 964493897 445099469 851645656 172718021 427449127 138801818 638897427 527725140 542740485 221262770 853425466 217554670 253901026 320238028 965881130 452059930 790933441 349586254 767053911 906775572 982141999 629519249 899415003 781442501 870231994 22843159 725723092 719973502 833715505 951499478 970342580 715830234 930696490 32356569 113371151 341159500 870306018 572776498 972702468 706956906 737819723 865159850 969208173 698233302 936293948 237434410 872315978 163367734 683899940 185130877 586395763 740596727 848120251 712835202 950741082 533502748 821928689 386758204 699867865 715439061 869316752 483602611 643241567 353931355 467974515 729623045 732671826 48638007 661488890 98283104 316691008 960825850 989688257 424902258 469227155 670062099 839804667 728667584 874385952 704390311 808061006 395787399 971654865 52200186 210301450 321284192 860068271 694370273 820877313 310899851 858483102 425714108 900941076 415437649 696170526 287935934 767427447 835786271 835831844 526407080 599473247 881155245 977236017 345508901 393526765 763479642 963111608 503202249 846408621 579659021 669631197 198748033 310696407 862911848 977204618 24493453 244376229 431133545 623896519 7147871 535311226 448588978 494039840 941685178 944338688 958999782 961455108 587051602 596845699 672325453 966831189 33627589 326784642 331812175 617180551 394264002 462608349 745903028 762921368 571941064 790326794 82402791 116374219 767386920 867944596 395740820 655582226 505746633 925473321 285915958 783624806 251736654 684419609 981996284 985120342 859557287 898998458 180005780 538386200 433763204 779811805 143144050 209361244 227134370 620188451 269268927 980450533 65601926 177381475 922151033 999233352 570098340 775833670 476072337 702141103 508547710 687007186 455479276 840780604 289830498 396677675 499661249 902797979 463713504 908135068 763495138 801267772 470494222 576632225 316623136 891815134 551154757 680258669 304538019 599111242 853986427 887337844 352372861 591671967 758472540 893824755 118472175 970872477 123226152 299941832 214262172 420495233 130539654 795669264 233957604 489802513 467609537 975308481 695067323 911828973 21241453 339343738 684409769 961585099 512013288 538949255 925987339 992559244 367692843 937408010 209480274 283788227 593753847 595024144 978744331 997836381 311805323 395840237 178411525 889577317 957657585 973588902 62632689 158623327 224484379 562778118 983535546 988060384 77058875 499166912 315529059 963425088 217169283 321168731 206054736 244867283 831394871 840093309 800627328 989627772 966161126 970931980 766149572 986368251 528737666 680839837 256823884 601854154 318418948 884285372 84325849 160305702 185249913 906729188 313599630 619268292 230471187 975014724 413786946 431481901 910691624 968320200 389200010 989754319 283838003 811861447 424252381 876108216 482870272 743132801 395668802 759718884 304067652 714233368 711984170 815056200 347267986 773685361 707097007 795173379 900459702 954298347 793686520 800851952 335067168 439785785 680021458 932615490 68817074 170115476 311014176 515026847 259376582 568136554 825898579 938079722 101367827 503816589 70627317 356403887 286214892 666784453 745816766 844195029 475877016 511981522 643125403 916979749 393646479 975181823 891151658 936404329 957737483 996937612 703118363 739787616 43574654 878985113 155871925 938456250 588878474 817261929 352892477 867970140 857854976 915572205 553784308 671682469 675751409 702461650 130023786 888002195 985157725 996999041 977087466 991562593 337779117 759840603 433570997 460610233 551346493 697283289 580923659 585526071 226957242 702129486 649939344 683643001 153536522 394003438 288397856 711398145 586442326 663835935 546649417 567204901 145798099 559607079 971461971 979560452 745879922 823168909 988424227 992550436 265451773 471738308 95761267 891488877 406590783 664844168 51664833 714807858 950475413 955415401 867178083 877289040 99545016 457012357 533953946 988398448 161760717 804280822 723354239 731302863 500978096 887312384 847223208 971373235 449084664 903204997 609369056 873002987 132382383 456207315 879312777 947179533 28022384 231549317 934433413 980505555 774172826 899423284 884499757 921713708 10741965 270694754 214252533 740871515 616801127 663518483 442111879 470806090 805123517 870397727 632071853 912726491 84933326 861956621 168667537 995327951 803882553 960578551 207749243 388734969 529460494 740796413 320855850 874361200 297017186 412031486 271877638 974253995 101056184 259306913 464485338 680863849 518391675 816976187 459422980 619927717 647926607 672106891 27865808 135304800 120545785 620749012 978377914 991808179 178619939 890295746 735814056 893695114 185486708 940236017 122213247 644396511 632310761 749731924 183347965 226452994 84642846 617691317 615102169 763388942 987161271 993959388 50655289 260805583 426186128 458243440 742787610 989298747 261192509 912334550 852410958 893354336 364041903 486866014 747785622 786796749 307498272 703545387 453812668 542252357 7262548 937111461 874406826 888648950 403005474 755693313 138438841 790434466 338014985 709821512 776928341 982288955 43505898 524981961 750136214 894906735 951107631 978517266 605447686 842285189 159329974 473194754 442918019 952127924 272592193 291086109 686383794 714001069 555975679 951959057 66743828 664990760 215205192 652802225 330018504 941366990 26736139 65722915 903065786 917776297 157352491 905139660 212130704 768040789 311462455 617859563 131068633 606565057 292384593 973421483 402449983 527953438 43207219 256253329 950785285 994871963 32539788 103160082 604942334 933344901 807896195 965484591 98933717 278935568 137338950 296417570 292950957 979015977 914476382 955793235 945467118 952149187 322988159 653027447 610897389 675389651 904534133 937247491 848315622 924554137 389504824 462374129 828587580 867250630 880128450 897740387 753289256 901900832 386905729 543308233 940424062 969547766 518454583 871495981 654435395 660164191 805003076 854612629 356376373 685951010 423060552 984998648 20121815 546848343 492209172 782667684 306108134 502303010 419500391 781068470 46616068 411366244 387365984 394108030 507226403 960547987 14274650 472623062 209570611 948440249 791401626 805009398 255019687 273924233 642432505 832688478 509713914 884237816 565973409 600815393 827231502 999686865 252217237 426491499 233818039 456960651 367739587 877391093 234383639 630817871 746116711 856251873 623953088 633276816 796302398 983490535 613282837 930242293 598348336 983253127 891669454 986069571 510844218 823796733 855337406 970231343 892102266 927276554 606128020 790460060 5805288 144241518 118121905 162815640 571219638 688064680 646749220 917582613 523140229 619689860 912182880 943107374 334359082 793837722 709713558 949283290 288409120 309577590 514191832 859386233 879231336 925450412 588465414 705866171 733416251 792518763 895384220 908870524 116872185 703407098 869251189 902925556 965578604 981557100 785144376 825082085 490593570 794163538 359215384 717027007 225684929 335363233 826802463 833146722 746048660 825895954 906002133 914138700 782680463 983204567 920939875 988434609 665845495 749739308 844937645 941864690 227612449 754782659 660423874 900337825 202387634 403301604 426098757 693916767 180606258 303367445 822619801 877786582 629532420 700911911 673697260 998333834 539308321 985829991 740482724 936627615 292995178 348925390 213228251 379180041 272549209 374988625 980661736 999332073 860124846 879660177 494299590 605100107 997462157 999092622 3197688 109662979 792168208 795719577 613294913 618416276 630872294 678628424 769319217 994191073 653438751 935140371 36899381 479308382 473864129 773745605 57549532 147754412 349700470 821897420 426613540 679189126 14472754 904025682 450976212 785719384 154170347 730474354 490371636 844278368 590421002 674088806 163558292 686767374 958790304 988999901 830331416 977704204 797024050 919012392 259364186 980033977 914416587 920781977 613420412 869160767 658776163 686152889 235539766 784492309 801703649 885751121 781415879 984960436 69506890 975250322 705816882 956556647 53031756 745088642 798918218 876507781 85137577 96996154 358404062 954209531 123781542 440461660 409715414 778940373 70778048 980667812 291713341 583986703 960719239 989028640 513731323 802876304 211053400 823960145 343272066 445220690 504546967 946099295 213382263 563090830 763546680 867402437 704355071 975666236 826109304 992673546 363877927 708040064 134092897 332195558 800371915 898071561 986676289 999742905 902498007 998671185 838517102 948998847 638802600 748732228 102031837 681454573 669691971 902118786 91162939 268911056 706458584 825134256 977152286 997209232 432103205 900942475 767028606 877173627 641453926 805607894 285902653 661677110 497334878 703393162 432530653 547580256 148821200 869311866 444968101 908353432 694172354 713913374 744195144 836760662 814841982 984503438 993933638 995017686 848820850 973435229 743944665 907394372 220586422 259214929 774307324 780389018 125980224 419119045 431605612 500171179 502201605 726773047 301791920 992943734 457203141 643832543 587584246 674015200 881300054 934628186 305277489 835222973 481240389 486056561 936575964 944606221 13895540 163892574 963401389 995660106 756167849 987130609 249661572 754479195 929890988 991747681 443410146 534486635 594963906 711666184 902523671 902612147 270832028 812144349 787024531 934388803 133145832 201105243 344090708 479237778 618807749 647427671 13885318 192952788 799491156 809633828 797760475 853724762 459980060 532114168 696351478 763340800 226203330 444948893 606086265 978636167 72679285 482485917 35436658 302339557 197409147 782972209 353624314 922104653 279022712 438751706 431389116 668930759 501569679 709619427 177327188 488453848 811002849 930141874 625141053 809413366 447576156 647186141 883840265 936774190 730013079 765983615 738372170 973983967 227110727 294456445 487183064 806981439 19113967 941464389 207883686 887887359 952694991 976155193 635849388 739198516 53724550 731634807 568774253 745313321 184118267 539312099 511251799 766737226 208634683 225553196 227259629 403872579 480457836 791923742 984700421 990419299 213213256 773134864 619462508 700892053 311723200 580762115 598971987 896800183 620301978 913930597 857830264 914059247 248684600 384427400 620902853 896269749 751603315 852318015 304366206 393259606 364264368 703080146 629008824 923685666 284630671 892990514 526992384 844615332 22205183 79570813 581078105 839868885 343975001 966689651 446806469 727121844 615345489 731611303 988940462 996266055 571954528 970269456 819576308 984132451 763002620 768618112 867534662 971190509 651633687 664902078 985836520 986236831 959621367 977590655 330517675 401946110 850576455 996973733 455538639 704703067 969456675 990576015 273836169 331173080 379364077 440132318 999311867 999547002 176616413 281362552 517949594 707030995 127064185 538365184 778085930 916014436 786166520 812479346 856901821 899103040 367179724 604543338 123279931 430348200 547880860 596868466 542573874 846298522 786123887 935475111 486644225 511562259 293063586 794900415 180957504 543285101 960651844 986097277 426837000 769245705 883114147 928544967 739731030 810808673 446438769 578527898 111681179 542117064 250751570 420794155 153995014 873772490 433558227 836935800 374350730 863699973 146959839 735002181 179236888 678480747 220260051 767303715 422250225 916725064 917886552 936035892 931074157 950027465 834120704 834187851 920611475 953140436 414341630 741877295 520361858 742276089 262507302 776751559 464352168 883370651 495198430 823076515 151170170 531613935 472863123 531565550 44828379 568538183 58336899 456460924 338895010 523929352 65394463 330721049 287563009 599408718 523026729 857105906 890403870 958440298 460549921 847204955 976423484 993157892 734554749 938749947 991813350 994316755 719825934 800444807 184627695 233936801 947816897 951869736 481637967 848848489 109248096 782226382 17604587 915671470 963427246 980333101 663975686 711669174 997748020 999976084 196607040 418634923 510272340 662010967 895893900 954193204 46610767 633741547 138880232 846191892 885965092 964036321 108513004 392694609 208666339 508456464 557965311 781831685 654354785 896864336 76086229 689278260 248283918 843289077 42283480 577059057 775893128 942660219 413921669 541384206 522948884 576475272 21710422 951237283 847483540 979852470 143142364 316002964 937578904 990032524 42480764 297811933 514950023 617261097 583603871 727669300 134374772 426856619 699834699 706687935 2148286 630362232 143254609 941031218 31502770 724572576 519600208 862907739 882704924 900926542 465809878 519887332 932624929 941785726 403216907 459556382 249555513 870890488 708117773 785219331 677178973 707699399 354101869 823148594 898525815 910454945 629920209 887490471 60453323 309481052 188099545 758678264 216886182 441221122 937383977 951807749 990773789 999078322 755077426 756646823 357213420 842394094 997477956 999268391 353912570 799283783 475086252 646901896 324443047 627225431 386837166 585264016 940047593 971603718 393497397 420256811 129822085 391989763 642918315 970028044 250229307 859969795 494311818 698821535 808800328 998104139 836861753 927587316 41000330 255695200 289132975 803618601 906994607 948631611 696500331 912843352 901827661 938719531 832009696 958233535 856236516 997498921 550488684 669107037 214671977 575646964 261528093 575916058 815440021 881785726 462997696 671968878 512852503 546882217 728040573 953283960 773948576 908280785 843178196 934482920 841715899 947811963 16203443 507674191 815015812 866089711 529639530 881716157 585973341 598532256 949815300 957667391 425778912 635002523 956169670 989083859 448609083 950961846 417064511 586698806 416950466 658344265 481961857 894306667 866553811 911852810 989629555 998532162 567361092 580329671 169925512 547959207 309696507 473338273 771558127 818931073 125602180 701236325 906901638 956341962 758862511 807130551 826248022 898779051 442988151 916621211 599171820 780451165 299231861 769238628 619477577 781724699 940009819 977579301 201631347 853969250 246714848 571734311 23507852 103288408 274649752 701053105 103531725 406426578 604766395 722574383 446138656 864060391 173402403 417199874 486916761 907223965 704525618 823737141 636059483 801445300 102639643 478466219 577507654 980455884 682239550 693666785 964122774 980467392 683172046 720058863 78547936 242449005 86201316 490462337 536162929 539685649 866101629 962852159 35951925 291482575 426896166 561575661 378090758 791508776 444032121 939217984 354942245 536838515 609260048 962336144 731369247 948668541 311582761 869530708 877771111 939488202 509722066 925419347 661853581 871786974 38912843 852063653 490501219 951635416 13352864 799116548 84103327 669046735 597902670 658968786 606789623 677605814 323435103 774910071 365200421 782461676 314911440 877109743 718480714 721550075 804606122 912317820 776992456 904608722 523487172 632613528 25954748 43865789 748591068 792870961 730536836 947810587 925552265 965404288 732426519 813750230 196722006 899492365 936227957 999059177 713829859 951562655 834193459 928149955 582114910 921694010 236456179 384736504 833459741 976752464 772359252 824706835 279704389 446689738 213164736 412576262 145560203 673872942 962374783 995842829 550880094 980638590 821925587 887111831 233694465 932071449 19712608 460288737 734140654 914409421 875482293 963744832 667227624 804077897 164612067 206515202 797732610 849813536 746678485 929797050 961640929 965595474 622197702 760463873 874701987 930853976 805186766 888588259 623617306 970099226 216421904 976723620 399135214 950337101 801889996 925354100 359359397 435470011 676468879 793319108 33574839 566373832 589508131 768076780 91560614 620558386 37345769 974357693 937234718 949556467 680109205 906607954 245902035 905489983 146481079 765981068 688567335 962304764 742731628 896491394 460302485 552080058 998200045 998432277 900830377 969789554 916188237 993185009 224194420 883219418 679382404 700054221 762987282 928278183 955050811 997515811 796942061 834257756 205333707 260851452 411067754 886509527 139366598 642033668 242638041 470105258 455367343 941962584 788348073 969871743 390420707 754306681 145758723 362911475 829666147 913278649 869343239 938870047 119696999 809098520 362027857 369143173 730823739 859843596 128362848 689849875 960869444 985211695 731363284 991359448 598318643 903994426 957491363 990315002 955174468 977971144 397088466 832568088 715610056 971547879 937429462 974358522 926251348 992168314 878761967 934043327 132308389 988802485 349449571 604449211 204421678 244016059 711253685 870488339 321886789 581874189 662020657 889419964 877224736 880975662 763079325 791106582 188734265 902629166 289461382 477616876 584958632 712029624 320304076 646894698 306420599 363199360 443015199 493970572 742751949 807830287 551029618 581997466 227152176 422227062 416773074 812595035 327153057 619962862 758801629 853450835 98623337 144878089 202604013 222820408 765203435 947764011 699730522 867265546 215237108 549377171 787295643 812860234 611198360 724878021 443000725 879087142 563771258 714240744 116402763 899878043 383040398 800536374 597024850 880002572 557762280 696027064 156699857 992327887 711116557 852763268 791406225 912674849 330726394 657530716 648940849 857420523 596664198 868140730 44548154 136886789 102682087 739874585 356717624 501605851 549108167 808524176 376537088 805330817 682021012 887417607 507993654 917897767 4751644 630710337 822767273 887236293 230908019 751945004 613290348 915711850 427907972 507955809 569989785 689198146 55067532 453780967 943279163 957403238 132195826 463028872 22208694 945046949 211024386 530616131 15235438 542583091 874794791 994050437 815735581 922293280 235857632 845955567 607644018 722315370 873505064 970248706 455881127 839214062 339304013 970447593 362011776 766838670 686222688 936242807 574299233 731875095 634979084 928197119 493654665 900405859 861930610 965673616 381897629 492948061 957465219 959440145 64388386 922805856 229562832 330787457 279199354 919205546 448636649 450826840 812430427 871462502 917460247 961259416 370383823 770866617 22696741 409214015 575091276 808433689 78086296 404165105 235336201 511015734 644891119 675367848 234164044 549768010 749008338 826038559 552234989 956604861 43293636 746101013 578489574 852772463 96269573 939389739 160058166 239771819 540354547 807024000 669365737 670060048 157781160 534782685 340109531 953922655 749494064 838944214 151198264 982369116 529641 981154310 992486167 997495387 14764204 399173293 868831764 975291137 611211467 999958043 696338452 865937652 355214901 772623183 928487616 968062233 766006784 937013294 701461839 804959108 292245971 523723658 851420647 867082622 449004757 556275344 549931334 554710641 471310475 586442290 681698610 700605830 374822749 462567296 593098107 711485258 998895829 999553682 999805933 999849073 132716948 271253323 237541585 272886502 536199094 565961673 279218843 837821505 371589362 614054010 553467141 885000216 388980898 456801628 355970137 904818640 797701279 945607140 598107979 662764429 658941498 661211866 457677480 726640085 987172900 999812784 880851912 884662234 659434739 883506779 127299579 840224336 143524595 803613240 832736185 949033195 495071195 897357605 356624550 720124921 249907743 903573566 529096718 959862804 83761770 596020487 53544264 90950519 214775298 697937470 724275244 875061779 951286978 991571030 827962860 854667101 962004411 974321199 414714759 685704711 247706973 622278274 389173418 509003869 4199612 20068455 524897536 854580526 852832344 867687664 512382740 754441866 999125288 999642717 592554404 613596127 478072517 878328389 455760762 822769028 521493920 553093116 453667441 581997051 281974359 762861701 214572414 253007054 271256173 832537031 877338357 978325755 392266711 988726428 104811135 302790514 262609229 628010520 952299910 962804350 792672307 916618013 787211602 852933682 481811171 947418013 556398930 922163201 851060813 940853997 305895197 999764638 650434468 718668839 575267048 715234313 860004184 891766062 128028145 324686701 246659594 672029738 935586953 992471687 644251277 818091735 697203569 750557732 656805336 786582231 29687450 213411607 253734693 577732914 269915371 422697218 92801707 410191398 899332591 980674996 468367574 500404948 560615451 916153207 737549789 992197596 635007675 980174355 836505461 889102103 674303472 866853948 963715509 993626516 638774931 679890013 115125329 977553547 127818831 805202258 635654756 663158369 665742490 875127069 728836543 749261576 141982416 585800532 870786048 938619424 906797725 927309546 930423591 972203331 262208035 770583168 830466707 907901416 485874639 641981588 782589806 990565365 243920285 449538277 363893146 958488709 333802394 510625371 300894552 629346607 526175448 945149320 596942248 630241312 969198271 973073762 194424570 872463473 41747247 242644217 805971702 986629852 824307470 845564960 242315754 669693603 907926153 949155421 535174119 862077511 801002851 973688387 772266533 829257675 781691863 809840547 325832260 737297030 133218450 707191166 928323835 970156415 440621006 722147766 218491568 229133581 626979516 927570307 740308716 870654228 783694032 912141915 385382290 709617398 630919717 782532637 642085560 858604947 964444874 979518644 415480182 846578840 761185279 834577686 732274869 811129206 446923765 873218239 388322171 918955403 988736896 995303380 789209698 789866668 832089211 931955100 900786639 904813287 175029632 475621228 77444904 941844249 844002977 900697263 66674940 390121150 683692856 988759591 806564542 980764325 824341882 967161448 653186284 834165629 219629315 519306846 2924858 955823222 158717419 573393278 150090874 862431263 580194803 694730972 516375599 909049428 426352432 606471313 478461062 610832868 692724226 862023305 125145299 193698727 904938513 909381845 479440722 959822676 892557192 925715918 687711978 850805558 150927619 464812179 670821801 919718506 220069087 448270420 127388315 393884737 449243180 775608311 850136083 920657217 857813234 981040042 524258653 547278667 177312765 613912428 837874578 999515329 194841589 734150952 449680533 890768529 575419537 909110005 546651450 773312177 998162679 998674230 203321703 895485739 439719168 903516468 980242884 995350783 383486514 454394808 502556886 732980608 174461296 810505813 239508812 242059179 280329276 735769913 501270866 899548631 957528122 972554145 314773344 467271128 496173458 561560833 432637250 460871411 444113936 586425503 162259794 303099683 843831494 932025338 31537182 947283137 494097489 574910043 907083433 972115435 28867380 385692523 879654883 964271687 949251908 974373511 493980576 686016411 681936816 865660154 879213693 959654938 202431632 666654362 769404142 867238854 710313788 870844514 427227720 684702638 961612722 974500772 837980332 949819389 198236081 223124040 412611678 507599641 169146064 402933115 300587022 557068261 262840968 618080448 662397301 763335099 179185587 379370200 133718308 684827370 882193038 919758421 857136058 908535828 704140680 952685689 266297626 281384065 430029261 785593896 596663258 920475815 97323499 979715238 468164338 773267570 441286809 453254261 918388513 942243886 154847551 700332529 155962345 795281690 235186502 461290187 651349613 889842965 623494530 679308663 987584043 995590773 814862468 929263112 425238517 964498728 312732763 438759520 703430601 779604262 601321885 645219290 287357964 315760014 240268317 424763103 734581832 843812828 458397023 723695649 651284534 692704620 272520380 943759868 808890573 890754998 65587157 930119318 126146650 862606367 679712231 865494772 101740852 898744657 429880084 966174234 62851992 247522934 22966411 908909925 616318578 930508184 708738415 891340943 591470041 622907849 733907375 770341559 687745387 745352789 824538198 933314231 557614504 986614567 209905070 656434667 503527592 651052942 99473970 289835462 500179952 526421321 607297569 712762837 838483952 858313255 707738041 869837642 488501747 682640146 940313882 950527157 633827923 703469110 784572298 905024623 900657942 939535650 93529079 951739393 477277107 521387564 242028405 340910155 909986642 929804806 775733188 822722589 774340382 844249319 115973107 145337664 20316616 655655740 743168122 943973071 590310088 902096842 916443648 946742286 740319788 786142535 231416792 908575563 601422129 961479752 265888845 903447189 813534834 925502397 122311188 507481077 812854953 947624906 176514871 373344023 933067092 956775312 724737083 999547136 690955135 834746178 719724849 766641305 934584661 957648952 447531160 659215139 105686649 356026592 622102904 721244849 570563718 665604639 713730076 944076199 896194704 949011051 285939630 523002533 198394469 844466893 946725354 966146413 643826532 941078552 312636010 471697762 935575342 960573603 644728016 735545011 474219693 881922371 3322666 751359601 450307128 857240192 757499656 853382027 211242078 562964244 386401611 795207550 247653079 836688595 798119132 849325983 765138836 974816204 591784944 846236947 470445039 928844863 13155025 336208472 857410654 900284143 468741487 501970296 819995897 986472653 765623829 885246143 977955335 978160531 908726233 952175926 876443215 890191740 309134554 315177638 339042878 926753403 794470684 966949693 30325443 70797037 997408230 998868555 727348292 733977768 264732988 993396308 884021709 920896428 506424459 875830605 129445872 537356694 900385099 918133533 696546330 967980790 588808957 692079028 456177891 997979415 625676426 788847229 381570076 793004058 371904382 891743478 109795306 620517608 620953585 879663264 286106811 876318450 650734857 873544687 213371136 868699382 112865162 534274491 660936960 731198853 313229985 562705542 969942810 999860835 12430058 705582216 83151389 488037155 469053967 810550859 17636267 619568540 977673003 982428300 53802662 622920052 522581739 629100022 704549782 715844356 915231701 981520281 291456076 886513454 230672299 485741086 513760148 800673044 584888771 824551065 559824157 716936433 19804423 620704393 85731576 229154751 949470241 991236714 872036935 916666184 344710826 907947226 474378677 961128185 237543966 790758335 316774637 972202299 289378415 766936722 965683684 979421096 381553982 759561945 311214272 915543805 924895792 986416438 337429022 711322405 992542846 998158061 225636010 962182958 223621956 949827677 380430284 907638698 148313858 657604555 666827675 886848579 84070878 819974445 449862799 896374513 35465094 608545646 136468429 425034324 980714260 998061637 891033241 953464232 192478770 199051592 563777974 737830903 428849018 852651522 923747340 952681756 272425724 931668287 116289447 604440857 778496703 818905078 327929282 432708028 918419676 992003275 782803054 831603219 32752078 887836475 404140700 431865927 633969157 856262197 268719306 609858398 931374786 955103407 47938370 967459348 96594707 757665150 395389922 894974034 653961586 785168835 353303845 848375177 171589355 583189081 900769836 958518530 85550636 141064151 443587680 640557011 179222921 829976529 840215241 919877456 977827580 991522388 172527998 956280559 857519685 919453188 108368553 401685624 324182195 414652417 828338530 865247771 157612445 225813964 232875792 591884421 833013928 903485352 179646947 437139777 526295102 561568888 932837214 938929165 171440168 189593889 623678899 976928052 208359822 932426695 904989302 989786557 267664553 942565704 362852291 384926013 196222069 267522580 876578540 948053871 316179267 536773304 76950715 706584478 576620312 642799197 208353218 725358918 708526287 983540378 689167064 942023881 35318487 725602834 810491390 853489490 548353363 877190966 654988799 779122513 585626008 607984879 751313213 829350018 235696567 998916933 681491626 873117400 741413790 917712131 688494111 797980730 326214595 442010246 654196278 936701806 246114045 969003426 902613462 995055523 253372877 816813217 934070996 978761586 5238723 890193128 479406783 828800150 598947285 728960775 171995839 671133580 495909029 614522735 418592415 820906776 217129952 808022331 480164426 567862801 929950759 965934841 335364290 842447938 759508417 886890360 454169351 863841312 730547199 932365156 630685983 887209424 642992608 923318001 399242535 878047912 908373602 922484773 48081062 415827573 573860068 614872660 657004299 977761898 862317641 994978301 669214635 722237951 352919204 899190351 893304759 988471158 305898 156037058 100397281 421592121 775719288 819843206 974844793 975771788 285332436 752685737 387221504 460828749 897802333 966091106 754930099 892845687 586036402 648572553 498407845 549949022 921995044 945280742 215177510 478806077 603405062 931657392 873759384 989599781 731780605 790625417 911780065 944904683 822889172 889146232 973179591 992340535 384126796 715851422 889221315 996028489 536452165 667813643 304626079 316551499 311471782 692757061 554318406 959628139 110432240 431530142 499157779 802115099 945790897 962897783 117053286 314518070 539575315 721145618 489060533 964614876 416354169 892544605 72111558 536846190 956326839 989807239 350775855 842727170 278127245 324841951 422259077 718020106 368286398 529355889 130055716 979959327 107721523 401526966 900674970 975375345 755404873 819904796 332851049 587029926 678014688 741131319 855816817 871768451 356877799 905648887 253043838 962098480 437323374 770624729 762789712 914778781 130879364 273585625 255137591 685789566 607956703 721344840 438355781 969236450 107309888 781953810 112006008 718685244 509261968 689897001 405076209 936651391 243470191 935285431 631428810 927043216 767096975 959535208 692025628 735814766 78433020 843860701 319198069 736486527 137585310 601002292 852154954 916568257 125079653 168801861 724842590 848039806 475282616 618379573 325990036 766352626 577454155 917980832 692097358 774715739 6916156 204234474 307796187 870024139 708509444 762834155 213924289 749515278 332579980 433158970 33747531 178831524 650860857 666609754 607814191 937778780 873925383 875837689 814764831 918551745 565445536 906542499 619370939 681609147 318616789 495004047 708539958 881992656 104430851 132349476 535382547 713858196 334287018 828895255 556503954 843856702 916131501 967209705 148773519 365147666 820554909 861743359 82359886 818804905 470220484 514803184 822788608 990914440 21480855 431876701 419613563 825888109 565064565 598610913 855879043 951171187 294490590 557609466 195655628 890668577 688179262 703973941 758599683 831644649 672390716 987332512 311430324 365551214 580505775 888873295 691326435 760842669 423974344 630841163 733415065 759750538 732966870 747167333 619301163 754598678 463068185 605120082 842554970 979609419 723494143 842524789 482225952 980179426 147101476 970964978 941449901 956489697 273521365 708067955 562802001 798840775 124791741 204940931 166298566 944749383 715321692 789018680 532772816 996491760 406588908 581838457 45484111 390999321 278310146 966801420 416600899 566182768 800351892 825785556 456445108 762620967 495819392 902553598 471689670 775864712 16756500 914055748 616860962 811415957 201806622 711969499 624847839 683557912 172020669 409029518 492308158 567638415 221680745 976134662 958216994 983920603 55546736 351871099 424785889 601469316 161152745 793525863 863149144 913305048 58841399 76261632 486146700 775089552 841841002 883393788 180065981 883911796 26795904 431435865 230369881 398979577 441381305 889791133 155384831 389012879 920767758 987820149 161362369 240391255 791088819 820085252 206282369 577901506 400905097 965329919 902775222 919974713 256357645 387122520 887233654 966131880 104259171 740533251 527125766 917991939 337040051 976568004 190751456 224686160 120013669 856140094 10293574 624646773 766954583 893033357 855891996 889294551 806736233 958243535 438204856 544496554 819106259 902594499 512746094 872019613 627729269 805760046 116721024 426759839 809262527 895030578 976081689 999730483 775970559 842798789 377158116 835227365 88257143 986402873 702156184 772353862 675181420 771905592 581180794 715605277 352648224 947024740 731362748 956985054 920997163 964153918 722198613 812826717 645476811 889312700 17733286 271872187 574027721 895173428 699074668 954520838 863985356 884725276 252178932 417475409 100042227 859016030 576914761 924360182 796033385 920894428 177827673 684172904 717354497 838977278 924564921 932783475 168629283 740972385 750643560 973690867 265027525 603438471 746546941 939779195 8698583 677437550 721369319 863529950 898795070 900874539 814286194 912979503 743435640 798234754 90859377 823552222 413880808 422715590 803197490 818902324 160303263 435823076 297197601 373954649 759909675 906996685 627265657 815184834 340341321 992141870 419567957 785186395 587672827 846098076 146954498 258157221 528173116 927603373 270933419 511007217 844942076 934016693 739673452 976452234 442893854 583353983 169323116 319916358 989300477 991927090 987135383 995069842 870053369 987811772 995279309 997328298 863481792 937634067 429079514 717330727 148632256 727989930 274038106 913043691 599515352 967820138 691139725 764742794 605686666 720715528 143619585 592435995 823881437 835878127 784884445 826221782 273873320 499032517 659868146 713930057 913090222 970039770 55264713 600097804 587787121 658393037 23233728 230072475 920419136 934269006 895196528 989554752 883269211 919647225 671597773 806875590 353821190 752646691 194675668 627496434 810179141 947407504 676662801 990356603 924953143 970237912 860017534 960988953 237246642 495902304 519148521 592606913 486673153 801948514 314744622 712233981 800162167 836206055 831074336 916141051 213280155 806369672 529011272 555995350 181508569 356038276 961444529 965293249 131600201 503698004 186845327 432930379 639607577 767642000 499844106 724543726 732297452 800925917 268417210 802238957 298688122 923041409 79055089 622494569 758572683 802671025 849088418 939424742 936655718 957974819 128332853 893741667 782362861 918159386 40658569 965635347 406854985 977548240 852769639 932440168 737268649 985206264 685756679 964526814 41624553 48646313 497179476 703826640 913089888 927617087 536341952 803160264 537510316 896755244 987067831 992972588 749080246 995425165 377485959 747729155 135606565 302916153 148561515 617356910 662500584 990458229 938548321 991871598 321182227 670499649 681107391 740313867 931045139 976897178 922346790 929720891 867396150 978022102 201912710 769141736 414490998 631635347 542207074 582468109 842102683 935209511 576034653 661092459 268190026 618181332 195064117 534048654 830391082 910935432 80346097 760887393 843960153 927315624 666449424 938653553 958307146 985782307 416338452 524566579 958639533 962473779 709324144 856403352 695801718 811169920 892401707 956639262 999397460 999989875 6455215 537304471 785513804 878242381 716008357 716530775 147537581 365000360 955575876 983454681 333210879 592894764 303143656 993705418 476005087 734172249 225442682 801337345 176104874 177630958 546374907 978092498 810222887 959504775 775851979 932242274 681615946 858920317 910970683 955780127 827395917 988759500 646784083 748913027 258081885 413923712 599470494 607337899 85563682 938250155 905598597 964178612 793830938 889434892 842602824 860554200 724373332 835356224 899844043 995453149 704857386 713669152 866447868 961224860 823752574 966606701 525769602 840488932 861665023 865767032 250737808 866663795 319514676 453212272 95685736 789413366 593994409 869956047 497149043 853285023 89634871 919252532 883079307 924746812 190946177 636462605 601325390 611652892 924611322 993909892 519566519 680663283 484877172 749272855 886977291 931307558 993258304 995514359 707304687 861916195 175639735 793075123 244732755 437773221 669882120 952516019 838619511 962959189 576631839 894448798 391022028 608973835 825607294 956549527 553032554 794290296 217269717 403448020 161620039 822994822 866241036 933219307 249925758 387968225 829447387 959727843 126748095 394293127 327606830 434868555 483086278 568377957 707241534 851466052 163277683 218048341 424165235 941686751 267180108 687085946 757618963 952439245 649545863 831387425 205358089 761924876 231279223 925319919 306682581 628242590 165586036 419494935 380759122 599232989 187890681 557097531 266104089 811254910 671710191 952280610 589558861 857283997 508345741 792566687 385424241 677282401 471047685 671975058 834346961 896682348 288765520 760009255 734254821 992557118 707243625 876482133 695208868 894814849 881624593 959465765 12633173 735440371 107905023 138384766 824828979 957545605 215065618 794639778 515907003 956763746 541200236 876642669 114444117 181464946 792572412 817023297 422432962 933123092 957452694 970208209 386864455 666517443 41829008 412420002 438774672 970961389 169994862 220297938 216555856 601329407 515497895 528613780 387420153 635233849 855496513 989483175 318324091 896876742 667266083 783236708 288917735 883407420 909790524 971100129 797690574 875654826 110909417 942260885 738171722 827611831 251240126 825042565 131590089 562963056 369053265 446109344 83575992 708399656 971570853 983389008 939087809 999719811 996237485 999069187 38254582 56772666 372576685 444844742 733385063 956793537 136716919 259747109 107899212 494452746 887978861 988590698 394117442 875534690 453255891 584280578 418797437 579709916 930107126 940036761 874463356 886444176 906790073 995623977 463872624 727814438 710149580 848017338 177263427 664653733 940549687 946314841 474158581 571867231 761674117 888250917 785391870 807485672 642547236 980523337 43265359 327289704 359572929 832514030 586477737 876751435 865508669 986611122 580008303 669403675 806140502 953124029 609646471 942456242 854760677 980654684 50137608 738552746 236665859 672953490 595065983 896255296 277527448 819270801 208050334 211990150 147397669 913493680 484863913 823452033 218829448 766258339 369204231 812399320 87645115 769740669 954986525 963194064 655610230 729841777 755962193 856754709 866165434 946793153 914955191 950969173 827826623 940936159 574005938 960919400 866408956 894800180 484365561 772079609 552828306 603794435 953963849 999674128 595022367 989223094 73082644 594218002 465556843 724557001 259461175 368340419 349897560 743989050 427359020 911171753 798187064 810906639 164727510 561479042 673415019 754846764 515066974 783444164 505336316 920450541 177640599 815678583 735448880 860906966 804819116 948563372 271827218 991584659 388452964 487334926 837734000 863227031 168189834 631915766 60455711 209858415 982093728 994076976 802671501 916894147 731085973 964603323 331884089 916026253 145843436 255817831 497432892 779668929 217069851 307619250 647546057 790283177 227131964 874386727 657761803 684756036 327308130 445111243 595725567 774798811 689042620 857035385 450600412 546386535 852707101 967221823 798332621 996836893 253071773 368972730 729193186 804639265 246367532 379726591 90365565 635392698 457823682 944714382 860915378 930831244 427883515 429728022 919342611 988385540 923611288 993945891 390761823 764582206 77358122 256737812 557744736 720626898 844527030 916545181 534258479 821889217 505690438 636652520 633053566 679655025 187928572 901089899 597612155 641794606 647777892 784846489 448532442 785151876 860268761 883184179 34008003 36865244 352646564 704174142 882180769 900978880 929196558 959523265 777915598 874535059 980688243 991941421 493217139 521188502 946823781 990711479 851721124 880914541 692574839 942261480 764193241 871419091 26124873 669283165 456938765 993076438 743597314 774238513 490315709 809689253 62086106 125880857 823625059 846010407 19253171 145087089 750480972 886292709 317601037 348250936 228874829 783819204 126156093 298690641 77144730 709067690 198458887 521904907 684989330 999122611 313878268 425446474 634694487 841723930 125186633 462591780 689538734 808135084 254096569 987870769 730958062 869594885 561820119 705442586 485890348 934018843 562167126 647283607 519399817 693022315 849957338 953928916 391793786 783070019 454165672 684414147 369253747 880912392 88603368 203630733 247582153 739784476 92632229 288819916 26998399 703798289 426329913 643299199 116742816 971960457 58304738 756489984 696161224 984811481 632715731 854242503 277709971 342643899 6407761 868533121 476018403 844821032 132783169 874655721 748614976 900291054 792209241 984821212 26895606 730759826 201382538 682872376 127817659 695185831 183610918 189048212 143788308 852124902 721885602 890733617 316756411 330965637 933339633 966850797 834927776 853176493 294804788 991984591 825463569 868221853 472033060 683694826 397364702 431594090 652949731 815583159 398428775 732812243 228113023 244793082 422344360 512709746 581593309 700921459 539072186 795378179 511192574 696013082 775104228 885217948 774501895 952849571 702160642 872513820 444560037 646021539 733774167 950144073 234308449 660115349 467340421 726229316 601277312 856349310 3645544 618325386 30235548 403873918 282934098 681797766 591955236 779629291 601533994 621462857 387748903 936240785 238498961 621819252 125999969 664523637 94918008 861632967 281142129 683381673 547064973 740292328 659470868 980826116 713353004 854507873 422212106 967230151 918939437 975571654 939974461 993924620 679855312 850934301 33917546 706699740 317360843 859010267 826059958 967962274 547968598 810464163 300164585 756829545 690525176 801069803 226958423 426471592 826259949 915151502 564802209 985599435 39130371 403600894 273613879 431350645 937354965 980045311 269212015 783055986 768432279 899286460 760634924 941020179 270201079 492141738 438186224 702493925 208823038 879591202 388672499 886126923 996207970 999605914 980830415 998938641 853430061 999760276 100086019 853226817 21251647 281795560 484293317 648114407 347991719 405969503 821934455 881133933 89973267 623955711 890036946 990947245 209465399 723404979 647499821 660159962 723615243 973161981 363633928 850579834 975615403 976256480 360848244 764817734 363444023 773513513 429515062 908588161 369661075 490329267 182836577 463688693 139917337 165743287 691708951 897161056 524844957 764849493 292306974 347907300 206003722 404174832 449753197 738758158 344161412 549943095 977559655 998767715 261564228 456204111 894207100 965349945 334821055 422502534 191622917 559238233 82996399 908985246 550796248 744908475 829091678 994667808 339530271 735232982 967021037 997591476 540404468 933024745 252821752 740984407 641956060 860603446 965973965 971850931 812813595 905296002 24177517 409682058 848336425 855825829 809690157 913813893 580221275 828900769 606307173 818736765 957109766 978416408 531286222 985294495 268039254 950043771 874439691 888966009 19274532 924478358 377414140 520873403 989077532 996604741 416177811 507863516 741645881 998670412 516032788 958385919 297875759 617466407 773366848 997888916 329103991 844169796 210118231 281534978 358018669 683893065 927927902 956726731 883449526 952815758 999844077 999877128 609457465 670767464 379302406 962345287 546156882 711100128 53585975 417201722 840307868 860376176 351323838 871772609 321831978 889769173 425029397 689355984 160343309 546112056 224456678 493448939 421793183 561990983 940508060 988355346 522653844 757686408 392237729 720930900 427561276 643647259 549259800 918535599 702304796 992367505 429804454 600328881 694434396 926913208 949402789 981764458 368213544 761862297 468256431 595393396 423578589 648418865 854549277 967525299 747600776 763916337 335871327 919794839 48238465 987450310 187123155 780204633 533951044 805355975 987331515 995372945 790564067 911505322 244343743 389371692 707434717 851852839 310973366 870634760 680665758 757072739 453424983 527185981 163584401 517733140 407139041 926748504 469290392 824862071 848550399 973630666 115881569 733349372 41162054 534971582 858823134 975997552 707391375 947046407 153944635 718522734 218803047 353848723 85067444 95355575 106027552 954924622 477707532 861115503 275355163 758237696 341799155 758358762 668531299 766116750 305498782 734132955 562017585 778683745 358532673 897662903 529716966 890148167 559404717 812090183 94293066 722124858 207219647 315953899 525254126 970509765 304458021 514311974 826300049 959139036 821718111 891225131 278862756 607227264 139057991 760709720 671757050 769817615 643855456 835509623 130900699 454175070 204770086 942059983 378778145 829360523 859272171 942238617 796802188 887529738 886922600 927397564 948641623 986491378 556810340 863985891 490505722 852679047 440054835 490664568 239938576 510798973 976558910 987131540 71042163 494113928 24369848 158464158 855143043 875815898 297949573 975558318 329225930 700065144 338495842 895985701 56047821 414918199 845821047 974750307 286952440 502774246 887156127 949490369 969879733 993458586 983294318 986215359 570669612 836429641 18819949 395363632 159464782 486451614 192611927 522805656 919972012 961213509 499869683 539436805 151452725 168590876 429886953 850803516 1262731 225137000 644827835 985211376 440298642 808064869 580949995 965767289 626454276 948870907 544867431 973018034 676259295 921040177 9581489 620000362 356059578 478223799 93124813 550295741 431681514 999970685 718168836 760952236 715115694 929264541 189915926 348362991 50506478 696656424 416242093 996071810 643206659 867076044 7977577 692706787 673998946 821017980 620211476 918276945 242114474 631479826 693102373 736315505 394680572 999867288 406240438 951357518 713173589 966169003 549482016 601566076 685421174 999902759 289254645 646938480 742713663 968205614 871349317 957089911 137435060 399463304 944180886 988690285 767924008 795547334 554363395 933375819 135893633 240707077 592989196 629523116 665109511 986132615 480915853 708358611 126663841 964984256 378277152 513036837 476378043 635238090 218733117 715197199 593917406 875488713 956369900 969119181 858458551 976140090 469337253 473827007 249885803 346997483 50079909 505315377 851275296 875592583 836748964 948358294 798162482 822936642 821072011 925207455 441355124 596514841 520234481 831435901 698178908 731550192 672760024 822092554 276777887 892158854 795647548 810695145 410440420 932696324 763243671 948395774 902368073 917943252 159197142 287999776 392882426 944696784 443793723 587647716 432334191 687639950 1228281 740034749 157377165 837439801 245891316 734601168 592637543 816475110 275824284 704379913 775276455 852516238 298648808 655872388 235039922 642835363 769038452 844847350 692042119 733801759 667764638 746374256 706323143 706480403 999374525 999629030 190379258 933095894 952529294 996800824 63246718 272540466 325928678 518079515 858841336 929984098 693951423 866679615 17932601 23687570 9870683 870074617 280607683 787643477 525711499 667905305 796172406 866250966 537799910 619225459 807102854 894640780 96049166 565514919 47856128 716881119 77390972 114809689 686551166 718122400 953122986 971101241 182642433 850791525 539920407 938858645 474800225 747243084 938324379 996176778 734173367 818672615 723969330 981192482 316526110 491491826 403424992 466011202 798080668 941561789 15869143 912090934 718928118 820198190 678036332 920278649 970511969 971044289 535138014 560237872 346183932 415264139 741056212 901669395 540861967 962532199 807156168 977182890 454355661 943726409 205676427 276274960 64374242 729210293 757985101 994791252 105963620 725102357 851217820 981841169 621171300 745770901 920671788 976736692 314451705 709218594 384041480 685250744 543543149 763877590 434258510 642310853 770815443 933843542 525281383 814919650 190485635 197610381 293109565 416886409 124481528 705044211 434875779 716575394 853816756 977838450 859572866 921660368 541857443 542751149 602953740 606428645 236402212 371990222 162511175 464394591 139305296 842718913 629207459 696611063 440162624 966383978 452334783 683316912 866699511 873671945 609932600 637377370 670427485 867643569 987016982 992139488 296283546 935030980 456614974 652047668 42165153 722900305 494666500 510246389 274791585 550359249 500266220 570784608 29773760 350388231 947972152 964285812 264212888 677679439 206151350 547700375 79436752 727074287 50528406 214095061 272983467 463972046 850807823 865298331 142180418 295868669 949661498 993709349 821032409 982847786 272659631 909511669 117581853 632592301 891030390 963945801 212934453 637396548 50556733 264987897 802828033 988854329 195804135 726387008 196039495 654357369 859923396 989047658 457346119 640047604 773642025 945372625 533648787 684220893 285959294 721051576 880817850 957037953 855811762 919686952 847491039 869212167 521553574 759426683 625396635 685269903 445892048 869034207 603278788 807245250 917523474 995123186 432392654 785034372 660032560 682065380 75953010 919495905 601018087 792039826 716867562 893701200 955818644 961545483 631905676 767588629 428795595 455440398 287204978 517495832 978729370 994784442 46404286 775610723 130480758 225021854 370619817 498328495 303196081 496213547 251489042 262428188 925714145 993803737 827967273 980948651 652419824 684478400 777530431 946622356 820132294 822153895 67599197 469802726 945788336 951228017 608262033 645572976 799337308 891863738 504275795 703372723 598310426 994115750 212168378 684363293 103399542 228126327 851668641 945206142 418102713 531394325 239108009 750199297 155945989 238162284 477343166 506424328 123352836 284333914 157837945 394940176 41653908 672223824 354428358 805343764 921708254 975283659 595489305 837624773 982414072 993420529 803525689 982393880 818154751 820280740 148849506 950157743 478054403 931879497 912097755 968957024 552749822 654418031 63587301 843452607 931822956 932729660 261930320 744885824 898220543 941189916 315061036 483550274 344212963 738401537 954921685 986615557 552346524 768907565 307901620 971580252 442613207 905365479 461214961 867000964 811338380 857974937 157063123 943763986 157237537 827737662 992267204 996286215 222526492 301827603 549449399 842469414 808321268 943731138 389436268 447917038 349611612 791065019 899934300 952062753 918865335 957985359 412545865 976443421 319450595 673873914 274719948 422962318 441040037 447392204 870086565 954454479 32507581 69716766 58831066 147395246 666650848 930666319 336184124 911559131 831189947 865131531 628537442 895293569 499171245 835633189 987777307 989684843 736382742 836126351 85368972 506244997 140811960 745877931 512367989 611720967 931910526 987694094 636256776 847814878 983219132 984168343 773236434 801487299 153914287 186199112 740925585 921578615 364736159 417050149 549058217 949374647 923142661 946222290 909024853 964047487 358898846 971926779 81622987 416771965 743216077 776199980 796917968 976480362 466717130 550981730 166351945 540859503 681934067 701359285 595509701 945223600 813784750 818027977 84761981 989994212 13060063 336407483 394209596 760546871 994773214 995423055 577764300 780703135 554110938 656315939 45289888 149058916 875756397 945747366 294739419 907710712 238755462 842734855 633372544 844920938 681378622 877593485 105256292 189608936 445506792 995098479 934084690 946838431 138592580 876379881 837796556 944656339 263505278 794633075 121916436 839195193 548072666 820280085 831259374 834050179 830408201 973255165 121766810 513649492 943102799 976979399 426927512 636873054 326836601 603770224 458352060 499122013 292382290 592523572 653005651 981403498 27609469 527558463 872407001 971061976 452406089 478355488 234770902 730602608 841897687 854151413 372218428 624329948 209264938 675397293 108004816 806312979 777626112 987446769 370115679 408816476 325499972 461001135 55301377 879431729 549446169 821106692 866965279 935538468 128887407 626699901 217083218 648545475 731535791 868673659 969523487 988685311 691729505 737655905 808178512 875070875 527062747 906816723 407721854 651976617 327890064 618905840 166135789 716014987 534277944 684316426 964980247 999069394 329220736 634724167 230004275 279158951 395977232 705527986 316500997 639515857 382425096 385593337 304429177 398558930 591625359 688377802 156573880 511592512 854608883 878121566 892027468 973809212 819418720 990943741 164400789 671356651 955396334 982706859 174387058 765569235 607804981 624192309 42269834 53856641 929670693 949257789 160881684 441782741 623535950 852909016 893963027 921421512 657822324 691306094 610439416 830576602 556299991 999096225 692341196 885712108 773308045 916366022 376247026 594080727 222143165 243965250 282378087 806250826 156523562 818665910 504391887 679997368 229201569 680213529 233763980 533790910 944700383 990806100 243344952 877931939 369877886 476134119 458589857 510603974 436583762 824460771 360667538 866156940 513109418 759777671 170841484 701002261 506163747 759187033 315042249 738848571 94203065 467972346 891383357 949686280 587873008 957898376 215048855 628994668 620982887 892448362 342882444 684367586 631263815 749182263 739157954 750039813 746802107 844821253 961010502 961978806 58816613 428564110 434183315 919677897 895861982 964910744 193513111 389946210 840486389 948068616 331332799 785260489 876152947 929777741 310726947 558960168 550853915 808897034 693042412 828940428 788066903 794869600 580006927 828014557 573302826 760561097 866262828 914953142 876377970 948549550 687630949 974112002 93514542 839829182 805601599 923123786 858478272 899101404 661887008 855510565 577639333 814135561 37810466 869735599 339307620 820611794 434929186 483841596 841813534 944526790 482224568 846860233 517320335 866448248 808100519 883206875 196177598 699987219 912443300 944180430 370985559 936623805 931979512 995477751 497670145 742132664 98178192 933876703 4280293 105429290 133442720 250788864 232707536 666015555 32458875 633255511 895624536 907942648 653966801 950235262 158129943 959754697 744440020 761190838 125535360 854133359 615800960 857486772 44910686 81222247 793139130 869364446 792331894 979045927 535136317 888721081 417238084 727105859 255526260 383739325 664479887 731044434 193884393 642442763 607187064 954798264 639284463 992976144 730906048 907052624 763331418 848275953 195114368 869750125 526144701 869677490 478553370 782359174 141951236 161011080 409554565 650950679 249922889 335636959 955501608 974981404 66940121 564256606 914775180 978973224 281537428 713420959 817134178 954355243 53171809 444476231 201944491 357428444 600027065 634280006 650610692 972900986 29482820 796000252 905191513 947612579 202494967 203309378 585429527 851292070 666476012 881198606 937636874 982990916 50171509 854704431 893784831 968195693 479033254 933316663 255680168 337002295 673099694 908393900 762408528 999167864 178878642 437957300 783398824 930138684 108091621 947055586 849139433 865571229 848501724 906295309 380304479 766731267 480618289 932456187 386707356 396668090 107743264 986008495 128400295 723543891 287299616 531389845 268195074 684900292 43725566 728568970 20046866 326106042 171425241 793309478 566707351 745544228 360341357 929232272 62957047 700823553 886832716 936592932 478012239 521575286 349342674 743503411 310977649 400806424 412951336 782852242 20476742 923586910 70529768 365419922 293133107 585431021 367007170 583028165 477868468 777001399 477397228 950155437 386413280 820083706 264971098 420291811 560124181 633858967 631831009 900129200 111000787 383262418 692731228 728065695 80031325 939878643 550547460 950873101 299412488 350563731 930324517 944651348 674170280 732331386 149799539 521153291 248261217 431578831 567920148 791932991 215255898 990040299 564137257 795412818 283793457 831253497 11303151 299120527 744225985 793351483 797581676 934391741 43890897 349372593 440653114 776603469 515946329 618133204 582789911 977510561 696998215 746970502 152902533 181935228 215613241 539741217 848988295 878702764 175966083 645482123 708981113 922159231 981372874 993148359 845433710 978982376 258195250 506669668 489323888 958919193 610256633 811306690 640538271 955248452 894845317 919566207 461712854 962209815 428871164 958966615 171341096 811177176 340415787 422934871 118287410 402696995 761007177 983795705 313389757 858556580 561430330 942105276 41042526 77377575 466254357 549522047 939706218 986318770 96605779 718471163 557995845 920997565 589565339 995676302 699326423 791713561 288926328 705214652 648979432 967330838 104518744 301555078 573819825 916161711 264974759 964305581 36591757 719698035 938874015 965314521 99332882 109058513 990153260 998731428 169823414 954681888 843217808 981067490 84965893 295518466 828924685 985294498 933528545 951736147 225565734 295730607 927685627 969536517 477345214 823579035 621113649 914072898 11790724 808199852 966121125 993870838 259544050 641485055 279867280 637046723 776860269 858719281 947281793 961808722 434694346 507222789 35153385 587354504 982218502 985432773 982702391 988416874 651189963 661953983 810977518 984984005 210464937 955362942 377999568 995522626 360285102 741239473 357699961 392018873 119955631 316340651 297900629 392653779 78899587 222425189 1733237 746487106 933571788 948813163 953232950 974801422 931607389 982769085 132372334 317706522 545649782 552422468 17158561 432139698 495734814 996253035 364199042 606758312 929481552 936274650 310546394 887317983 762325701 964409133 25845591 260862082 737133293 820635925 563737172 929921644 52502251 305021983 612825007 665339792 950411757 996153968 660526848 787254169 8927310 782867852 354260289 771472242 925785229 969109493 907539008 929341756 74470079 561080282 333603241 667048706 326460549 735629181 821784721 823739987 978033681 983211919 555118467 868110106 681704894 798600198 796185991 827682168 58922520 785666576 227328990 686582728 411033092 562972569 304727127 653590730 252011667 882147203 814694396 884652199 157122638 372605868 624053402 821400412 339053037 643187970 584565634 706026224 799107022 987003404 32561081 671774826 798388489 850217220 376889372 471073557 522841191 555531697 736734002 985387557 76213015 646152218 649931414 930948161 635141603 772845602 907850250 929355586 109977976 441186567 362203937 472172716 788628691 917839154 499568063 526790945 743312390 852321842 833229788 944837789 939324487 941022704 677225474 710115109 98683353 810995798 560743986 975468549 564376026 927965021 458606644 836625912 777503770 920216457 539656356 577417421 500250274 849036143 217067548 432239525 997625677 998721311 82918020 146841127 523761425 828545897 458803237 533334724 518473009 677217086 950181499 975267739 437235580 756852158 984707759 998997684 733668554 976611185 836009922 924110368 971618206 983795471 311350151 723517004 153565229 556559144 396108082 725107221 105661708 675913445 67586644 556777361 898712777 927116616 539133644 814782491 367934586 513665409 430055567 899729380 899213345 945480158 248836599 983451145 102097891 783655480 188521571 209399360 560631547 766733740 668311935 997393242 865863721 972372410 71777921 957237489 279847830 344720709 163022984 479325883 324763909 761997350 66687262 876287858 184000992 921224203 293110421 575224200 374190533 430443272 920900967 946580643 485500789 950108140 902238807 957209191 735169955 869461304 893230121 995394858 292741624 893600194 417474724 735448691 356479318 403351544 633833154 879695423 736475162 927414245 7696939 964564091 437586715 616580150 8201034 971569732 692237283 973366295 376383972 912081332 740100466 804875088 920526212 997434790 149182293 829832345 414915656 626802647 910719165 958936879 563844498 897686603 797223364 905241060 632612626 991589487 668587262 929053381 981423832 985613058 169001275 721330595 625881029 935519021 416550517 956070946 247164000 297277956 29483955 465377291 106524239 173478766 390982035 806847453 566446568 910869285 461411076 837408112 337890523 748058982 930474639 980262597 425296676 537834896 151286349 828299951 573184034 852740551 19609003 393213342 391734042 962835584 564887333 565930260 786169627 957497248 844205464 929211328 857961681 865353204 921894097 941472919 278750417 888714514 690409115 995862909 419698227 553670839 645047348 732742204 680453015 727862038 482775902 650272062 109499924 951814758 841710496 969580311 967278778 973455804 93667477 879071203 424980909 793236821 544880178 876971078 392910202 703249008 296446287 793059459 979415560 988605287 219867016 487289681 955304335 990400424 546461320 976077373 393096670 447420266 534446623 943732957 930866754 958977462 827618940 913796395 85244232 235047144 207239422 739134750 974686079 996108673 2298143 135586035 350521376 443730260 625952069 742282660 45661297 74240024 47647979 850994656 754495470 813146168 309631507 532747601 607880192 902910706 687802694 987892064 872304476 982560896 608046535 670143475 190215440 691462488 585323125 989170305 277474107 847010627 38274865 430679130 566785434 769692725 810870883 834824151 864705349 912769356 987059097 997884980 685443268 898847127 532885439 997130282 942681054 997014726 875239502 933699415 995995344 997681862 313038690 930659538 840045733 993478532 204413332 950255015 970316516 994962265 89936790 391531462 986392333 988360798 814437590 836927519 508526429 927466623 486130455 746522177 415770170 759156930 143174598 305242494 451458749 568368132 844384663 862346955 898082435 945253663 611537165 730215561 164760920 571129996 602325347 861085380 579002204 692906117 973752442 995992857 628230203 797447430 443282563 893533556 129905747 863388114 592305452 901793805 756302827 980074761 386265587 670024108 298986039 641953060 704754091 917389204 983854408 987396807 232428354 864060225 706099150 845056629 35647807 900421142 162310829 391034809 857663314 947147710 699716427 861882998 409955761 963902167 734796638 764631953 621025823 809502382 797544934 910565107 645697636 732215320 974055687 988202631 550574746 627959878 613759002 855182406 351244871 882934005 907319167 989648339 283092222 904938676 647426459 954749261 923145153 943881238 478309628 924006008 834744115 997806865 852444688 953774127 454265722 654214441 891227669 895568301 477858975 853321997 644054520 646550253 682567496 770794949 830902863 889120566 423981078 533580497 508311253 877599957 270387437 460035816 796927549 824704991 674745384 716252895 700996938 984499852 783010219 935490405 691855823 893289547 842216758 980296632 597033263 826274650 81445928 334212406 231688682 231865595 569818328 578988047 403243025 792371286 627404380 780546836 24548980 993437303 283388189 424109770 800778288 850146553 688692591 796837031 511457526 855050329 66573972 237984339 529819418 549800199 520869094 729796457 686181654 830692823 71333154 84632363 359284627 806032998 981482894 985785780 948491202 956346861 663766155 999666636 553571326 627187272 251517479 419039086 810269777 854726375 289836758 751123794 338087839 925048604 324655919 953836738 195208189 627093550 592563293 679738860 792513340 913398243 672785225 929022101 515340888 579883790 825109530 864274598 694429580 706270913 759564431 894847107 992068474 992492170 213996258 848360895 571933304 815645872 763618123 816199145 752089618 927909204 784749866 928167093 562487476 900159903 772011429 804197591 244906 588498892 923497235 939720554 212804859 671867319 112628205 441482281 790783908 939252561 478906452 622389855 115720652 279495093 511770502 693765616 65225260 539346151 739110448 823769382 405538229 921003862 624785179 687448278 796945922 942548418 281133356 666677531 751203237 974408410 673096939 864892657 535871469 679685361 492125855 860955307 615768484 906955898 157590861 649945273 727126811 784720482 329798787 854628318 242890488 708178827 807128370 921580779 428101277 836880792 481290794 878267138 195492976 429048619 926863402 990509615 38359296 465794827 844191356 920808825 16121536 221397013 294318938 584417350 973740448 978883380 204187736 260966160 324441740 731424546 711577155 831591558 998526065 998888650 999446511 999632918 454910323 575804723 453686479 943552585 232670712 929304834 658869841 871910915 363603457 470530453 300493905 984694775 447185650 670850041 993321575 999155666 582442931 813178030 355145292 576043323 403718394 979200702 277039250 716370852 381737480 758433503 105138086 717272193 249607367 416942496 413196103 548967503 58755907 315171429 672714866 869838066 262399213 996474569 285727758 379794675 905832046 964221664 764860475 834502801 919692716 954238749 680627577 837518971 889927046 918171241 248394414 854092109 543226857 758625385 522289466 645775615 455348134 998021930 850536888 918275682 947158146 954248285 756632144 796928461 771525141 934004433 38646257 449666935 583942430 897384970 311166469 906568482 582202365 855084155 365937204 718604172 445065575 889460709 62476115 666915287 451352573 652363769 866642112 946269250 531754760 982438231 443261369 479323605 645397809 910313567 601458441 916403912 124128302 649776896 940399998 998421484 854351976 982447095 370403053 785462362 424003672 710570435 276149815 803644821 673320759 830486508 746412806 751423795 848959146 956297476 240320366 515785748 52307016 381474229 535372376 790825987 848546016 993758945 277118421 933847018 927172320 952008498 147881052 465717833 88386160 890993395 413281395 418669954 472559651 522235364 176080484 526178778 463214081 960461922 440534792 542696265 996187095 998083006 359914792 891365111 243854479 958559609 325494105 564710711 867775460 936400298 205616033 980856452 448297519 763419057 467336254 962730291 267005423 286595735 781108713 855777314 959556680 995854383 951758442 953876744 328776100 748645078 440299252 483158253 537308917 755837533 683171028 768111908 44589784 751908677 40733732 131853202 537730504 789552552 107137680 611562291 58596867 344657474 325615448 491628028 979948924 990293125 941478133 955339116 877623511 957440461 700157726 889082598 200827395 539680488 413739866 460179751 599321118 681967732 92537103 263028917 31640125 565212002 626472744 952188887 281285366 565644437 154674688 553672133 212664461 692273026 591578620 723805809 777919467 950899993 670287810 824902091 655348863 972181669 546907251 628605944 68612938 444647013 261061671 331561055 259269120 867171575 116808402 804727779 571902976 696056396 563864430 796917152 541444500 774057547 624585991 937865505 204941453 734849652 10386559 838588357 560137912 903648913 424312408 696149749 416649645 882902224 504824495 511936036 340634828 486734104 765747531 946350409 293682717 434150847 624095461 765619081 543331369 713687165 567206796 672299355 712765758 878501405 369518515 448831720 288517203 576417095 195582471 372489504 553156076 992564451 882773920 925131218 659407610 996729279 697325267 765108690 291633196 644293488 260713563 797766681 640798389 795182935 422850833 979526904 42832846 492561887 249456344 760668318 890071040 977415779 117870047 818376945 58143560 659714286 192672103 408509045 47874192 776900698 312423100 533201448 814483102 905768303 921652394 975269249 301255547 686790085 146447167 431665359 889857139 962911197 901274415 943707412 328022055 739481169 72549503 328344506 746184 785174549 993414522 997525135 555234276 986700864 834291931 943014213 109423539 306019428 298596625 466230146 602859352 630170129 147326538 669645874 845254761 848941147 444254810 828644691 111970000 170941836 460962343 948615627 394933104 717995975 670800317 905965055 951937686 987271486 809369608 899307102 222076462 524604117 147831970 417760192 644452918 649724412 70160874 713750085 938640030 953757758 805262386 806779505 170483708 383456185 610128615 815777796 824095283 924070069 478170309 714953442 16080414 485361309 911102970 972671177 287627688 862415480 603716351 860637523 178719486 456431968 463974442 733789048 464383608 664520854 158764354 266462481 56958645 810675755 109619167 942389979 274248815 517215593 201186730 768202258 940464948 994099630 242370812 925412055 532491724 785510121 632999078 995754278 115514018 249092741 782798872 827607678 871354272 942534784 651565394 664759967 255428549 730685775 10710144 229234754 425818164 545551772 90679567 728720047 905543990 997492429 585309177 921565956 770664055 843210507 502753863 954503271 756738605 894490125 44499068 617548268 979617956 987168915 840648337 867117378 665431198 722495116 635882327 831518693 361656059 836871929 221713918 373107701 185214200 522826310 6893345 440941713 225182272 552755091 315551991 634020059 390394407 440391996 463965109 846179356 194064251 525570629 870181001 913574646 975953438 984490521 765210184 838943700 268363157 491702346 467191779 583901304 306499221 574057733 256814889 728807687 312773988 338909121 375248256 680679627 327408263 806077576 552897300 604825577 759153487 898976788 544644613 609553529 724356648 908353059 217308291 944571010 897732193 913095075 329072382 395496004 400216264 597567919 211504297 984009566 776577487 917764998 345824860 810943299 731085326 930644635 658536496 665714759 735773258 950953735 505559915 574968280 817174139 976964931 289625225 436177118 262086417 799728658 671081635 839033735 873061790 949574089 642524965 853021050 367064142 501970309 227304918 924536540 809460110 839269291 978071404 995435045 689173379 756533530 99637200 995771677 76614926 509444338 595288005 929768266 959361019 967118296 296232315 543170077 231378660 460542513 320687459 709042169 487934278 808643808 779683493 907820372 560483093 675350835 124334182 709005259 479614418 670714476 13571687 248422334 715025923 873821155 782784833 861525556 476868502 650203904 474254020 483875664 305397245 884159736 353282656 992354558 630625 970371482 85667403 391322993 532223078 747565511 413517502 893197796 839536429 882480665 105099405 282618407 391888636 646608352 10827066 973144140 163566025 998457083 946882318 974781565 630375501 777432111 217311635 300620925 490602901 684303601 755774214 983135440 705490037 717383884 906252211 945818080 653141998 654230918 326644156 437283009 384404311 512851728 642819867 666492975 553486079 938471349 891288440 942341728 165557069 843352916 929177666 963601982 247799824 689522327 725083611 987414892 845484106 955205445 200817278 692077047 415868617 459835221 424995325 661112908 32974392 151308100 348382891 576727522 909781099 943113945 409177851 826447684 65102744 760209803 589218739 713801531 98836636 424224246 575274894 855577556 451056606 482206573 751518142 868657451 781937358 884688820 753957361 758348296 367334743 909888114 854243 525786467 305389388 562967420 702558126 763446441 865197103 897623593 222420700 530548297 579864318 954963300 833688135 906569428 754012800 975953308 400309857 555967672 586146884 821155041 686949199 724003357 91726338 383037172 209976151 252876816 300147805 711994862 591692977 689766256 122471482 179643169 693345581 851208414 918508986 950087077 352946561 987602156 204989499 851383941 432520737 724644160 481433452 709919191 956799425 971417489 427193829 784021916 172322595 384111752 438200934 863084861 872175562 872940132 469062114 524163641 148113848 876890408 493793236 876420396 320645179 543627068 7359661 345007163 279392442 720584705 269308031 653728141 553706136 803301118 49182455 678495356 104935783 661171756 100888728 713124559 758386231 870293335 884937923 903600657 102627611 405987568 71356376 104896094 524521619 609377102 658870814 688793515 730689754 857883839 314787467 513680916 138837406 356409973 932205354 979789186 594565731 740441349 162287293 813495254 92034352 551204048 591839302 960695674 966803275 994548101 639167234 971979599 33302949 507241634 323678513 497684198 368559426 765648979 311305009 858944123 724282437 878966687 981524944 982509489 328759423 700756456 642912344 711699193 550633312 829205283 550180643 790519279 887416944 950502143 692049493 922172203 409232039 574742534 702928814 800593426 21532606 472698188 544910249 584470534 978537883 985080512 40634648 805784744 383779404 429522047 273386604 489935829 791971050 872963419 342049990 491062420 655062228 962099891 852979759 960232923 242024693 697089317 993587887 996810314 322849947 425714755 870801431 916986156 760894552 889313098 181281982 572072367 481249325 720107305 229408179 502708632 119989762 980938730 892996949 958787317 830096550 830892350 343584083 538069423 205993283 371467546 745673413 884871188 596454884 611120567 495082166 609483440 401057020 527815137 658846337 855948359 807429292 938869892 617731884 958113465 562261944 825464166 327499520 925001743 437848303 632369679 243576857 567152535 565624210 906163896 560108563 844465043 451308970 634970095 76630046 711621518 881863418 991163339 686841317 689010428 145595861 213003985 161039166 446462702 350936411 447903192 973953599 988952468 211586728 357692075 186081308 668631427 413344937 852708291 190730268 520339936 616144206 868455024 3860669 359300549 542104298 632399978 78710064 665083854 175820139 345143777 327286117 871123772 855257389 928634911 198746834 292086442 116947310 145301925 866652175 867395155 124787902 854911343 687450982 840100994 783199225 962559170 699447820 848950244 759618219 765002567 695517569 984531937 959745798 984407673 674787091 713337617 49275626 427299669 294475680 707842643 661634606 773922751 475821820 491319544 228671459 407588309 984343453 991512042 482917675 596013002 706527969 833015608 902433018 984458112 974524040 984887961 311208048 984199612 696283461 746704803 268955756 581533561 129397379 574974751 173608856 276365881 461929294 969354867 489251073 600120225 481314578 687347815 750916372 785944956 11535455 509912884 329106086 924239706 419053607 762638589 962843355 968788954 97584758 436977728 844206751 870394239 116244911 965463064 459271783 729358053 688535801 851060184 288446047 657759743 90918643 800866283 900159608 929041353 20589394 505810799 743070915 793049743 671106402 877132315 267149785 528273706 926685922 931631599 520951509 559904826 869669862 874356291 56715699 122002909 951837678 952507505 968869893 980391234 324055690 805875207 335085342 798669915 198724939 582103250 561823025 900772101 678699029 942140601 799135898 810296629 341038820 960614290 406627747 631387676 165248462 838532695 241298621 512296887 498523753 729518042 882252260 905126975 409137428 734132874 539205648 581609836 627600590 655375927 469635013 883584721 240053373 567950836 185412072 576575394 129752690 594183457 418531891 664235755 55911095 110368956 581105458 708251319 761704962 765206227 347000305 424947462 64447159 443049677 996884271 997159610 9452919 668040144 904097682 915266985 826658168 982261213 812320545 961365162 966786829 989455731 740642543 787996811 43044738 624528203 92863200 347362780 22897823 770627066 642680827 862638068 59242948 485498403 553056401 955332334 783401242 937836590 622862340 702701761 383817084 985320539 448734483 591869784 688152071 732876502 870168667 986608918 871206040 975915610 335755768 812064682 20185146 486633867 868144036 917949291 765856764 971362255 910072585 953960168 426840450 877859933 822101510 989947133 314779309 825602161 424528446 600037175 143225318 767610384 529933329 653621693 108655240 506995742 187155617 411443198 231812545 822897670 586909001 974620056 82788305 879622932 816022646 821338119 292012116 407080402 390804233 738370317 900353391 942469389 442887510 459917840 664788603 735489004 738182725 741972846 473199893 809591706 891949009 959645555 884825207 915520686 431028707 956577057 508851549 510043808 625611976 982643559 190178169 555693692 100569889 551042320 448857141 811947659 614273982 763775795 592529348 986520584 872651022 978793203 553316269 988939154 90664630 456631922 508144293 677540553 747445175 779057068 229738245 772316335 582385510 653049507 710507561 919834565 136453769 863887233 593667961 666500799 843117104 852427866 308019290 926542820 458561661 729319140 571314089 656595255 204666070 394209078 961607402 980504013 825186682 937901994 487568883 779041554 255914899 442896883 806573562 850887692 560587118 830644440 635252107 867578313 231653306 642255908 777270908 874004040 434446103 547046015 322169806 829095517 453294592 658906083 63635309 756891960 416379156 499325534 498945537 787044335 632248055 993165230 258076321 268391428 606328540 640222004 763988623 851631819 112789315 575810829 726658022 777739544 751129257 758717010 927150375 933016002 373298889 422406537 128744200 552366411 743497354 761470846 680367749 946827548 179642178 286681807 783950191 895359304 631572295 667866126 178558192 500377963 365990892 745832887 403735019 622968803 243569783 737975784 642128822 806660835 495477095 582322715 106879555 677168560 131640608 992769647 906309720 967971736 68610204 689499981 2497864 764501607 682991348 858568997 276912685 829842616 612391127 848433961 303098393 321658027 987068421 990716666 485560731 604769338 254658569 485656623 47196663 225056311 871669379 923476112 605437702 929386353 257280357 330221163 261410511 756792547 220033694 838235518 831493382 854166496 819463687 872643980 31925502 332707681 679337433 869167208 865914058 904052765 550897810 718560069 90504953 560670218 822315822 827628993 954637292 967671613 348870932 390425281 404503912 660452950 755558472 962233771 974420819 996742434 842928072 852341077 814556345 915979519 211806401 809911716 395603535 779208456 288876956 859251867 568973834 818393487 410225537 738723571 589688705 623930479 275532863 503997692 85877878 606677964 904316827 904431120 438174267 497861032 674773526 790072486 657967215 819508818 439782581 980752951 119054500 262396623 770874186 855360107 650679886 759853554 665377987 684288580 951546977 970435601 471491239 641604347 865244646 975650482 91322491 340775982 570574463 906717793 536801428 966920975 48364938 783072556 805240575 892750685 352034711 621009454 82541964 452810007 162589048 403238776 126239789 996003138 61456825 340000783 313193703 723706418 253016347 835856109 566179306 993153844 275265659 849632433 640911614 933840297 175755845 456898770 951098508 991714603 466179893 977564958 480794394 512894085 56991428 120822153 515388081 765541620 789411362 867142472 343513956 896808398 441206407 503217666 379155785 936502908 864595904 933102560 339381725 981357743 508843779 940442117 786206789 915895401 677774854 966523880 157580100 435452505 851406772 965128948 515410430 999671657 490054135 524417776 922115970 969997832 497585006 602503948 271532504 819061107 341067150 512248645 158630132 883094674 245253497 844324025 365359831 382121387 525632455 780469517 68933861 784346648 22626067 559494315 811463776 858079753 490621880 798350023 221390438 963659121 410680289 630262740 769346737 901774499 139365475 276907902 282477959 675807379 173156059 388692551 982979680 995944019 301796172 985915283 904408159 923980109 967080575 999082919 571824903 970589829 972770046 985307089 644946505 791401475 560469037 577842151 193934374 377662842 319587582 867013076 711568922 760421890 813326030 829270298 507409307 835180974 654003653 658066484 109070440 543824126 773039832 776255677 303265699 467064388 16351094 144091867 851267367 872477162 889981981 891891378 594179131 613620726 850332967 875526532 269020449 291142529 334378292 463554259 310007463 887615295 19004543 242483781 187772051 712037323 63051595 216452401 61771160 196535966 892059369 916042984 611451363 773909819 855589503 884594375 248046381 638583798 621417539 629678565 278040837 646426205 987698247 993942698 630709909 738341249 329072600 342794877 662529973 882266975 921395470 992373546 373494192 922842994 821099678 855114886 619875808 791502864 132405406 736849444 972821206 997395891 193122425 867367856 265679372 342998846 780143462 828264569 436909472 935095112 182173387 535333095 339533931 496164750 221313877 989416769 108977446 972235837 555899225 937279083 328973076 446524647 508117625 863432227 932137803 939190869 50523266 620579761 520718608 990871999 927340071 988403280 259771910 321332299 964244042 966717774 739976358 777437362 774336478 779867674 100196560 240831080 125050020 554129866 750280150 949084618 27901058 352488902 824673161 866641073 726764004 728048330 863001959 931428451 935421631 949387651 21923225 489871690 187463079 257519855 597391053 913508431 442439252 536471403 151702442 496868141 29505026 924924991 888552277 979181820 853710596 892322937 278288908 699262064 334754039 389304250 413835134 826696547 980626202 990292778 887546654 997584427 922924145 940757606 553987695 604951758 457627032 900541346 360838136 740878646 536477285 752443127 766203769 836759147 621837409 961970080 329829362 943474584 118363017 401636928 711962341 745269617 985136681 992088893 874928920 923472241 620866295 956138952 68578730 516230883 550201938 766398558 528895392 683823631 166534705 395313706 502656844 755531862 30986475 102363778 984297283 997944684 700500666 988150781 5178991 824569398 879303683 995196044 240309972 452980498 289995154 400457317 80151141 275066451 563671076 675575300 481346472 638544759 161363837 493374115 859951033 884524981 12431418 177179538 282944227 396717189 240666228 460136284 109952984 555655281 145442656 209390004 774011896 776934378 779000395 906323895 946938821 980051335 271513883 395460813 628775973 867601939 26661434 224212829 227937601 540518233 685915645 823985866 514071049 859012723 52064142 654823258 1226077 917958669 448733515 553735216 801627136 979270094 997989310 998827606 958515863 990997844 102703847 900561586 384205281 989847799 664356822 906943413 476186662 936429759 585531877 653291334 751733775 967638026 683949305 716001718 984974108 988774816 97626223 523525622 299510762 333593720 580674210 804029583 212026372 949845545 112024500 370025624 72506645 178139400 614501459 990040217 861465435 940948819 779939257 938880941 838003265 920206138 2026839 904534277 215090982 315583377 862472669 940937256 848748470 863679333 334082492 347233352 860580585 950963648 848259413 952125389 472829001 492175602 987572289 992769522 235293578 782972047 723509566 737586556 269813226 346736169 488594198 623158849 310149944 324586329 976883473 977264855 839969177 973484439 62785189 246820672 595370601 731276549 411069139 611260793 698562703 772357826 871669664 986115993 133180242 849976409 628658912 798177358 606751976 743217725 874174274 945049733 871823354 954482006 663002708 964129759 67368519 261397843 999656707 999799320 684592412 809757177 52774953 356150307 255758285 657872709 718189135 852019377 643434591 692841072 723727212 868559590 904815672 906639252 228361377 744623067 128640176 314035488 484635491 782994545 668286283 908664562 518051597 542838651 329409062 491969744 536415018 977304721 707267415 855300613 416407041 859620931 627951000 727819832 112149780 832566725 554960439 734303494 14380901 707686091 526686778 879406828 416977196 933711348 422451211 693821237 20670445 728574452 778462526 930430264 967256523 986258971 274747149 950638166 477639536 488659656 542160471 775572683 969974503 990186345 391907747 581259216 515299686 856290628 525312820 536506869 584504607 880853309 569534124 640984426 225600716 434863841 693412787 924367483 119992181 526653938 563501261 789438132 288972496 573685744 238509799 291569677 931471569 963043403 73466850 955577454 218941328 878629448 543329184 821023942 963369447 975277049 412207830 827639687 192284191 642116515 606270856 755650786 338453793 472299087 636383805 906938679 5611849 595238473 610868642 803039416 903097527 937485888 187407104 278124144 868314005 909389805 464959699 953818650 683091060 999002473 258714909 288223515 330593980 687683146 882669249 939268484 908405495 942355950 842444562 875513660 418568857 863483109 346312132 422727354 823784848 935456871 162230098 921927245 431845958 562347894 145809741 324154568 860210949 936345361 265772723 329774071 676435266 720296646 728983201 816012235 984742508 997964247 13357328 932178862 633941011 904852993 493347277 533764609 945398458 958227138 393976762 558827249 890366127 982612188 946170950 963241844 696564970 962037179 757247503 824358045 415716100 679259375 653447459 766812158 309364680 966696311 252250757 939355077 551662687 687090840 622515786 686745900 729888943 962534671 866634824 879084988 432405453 956705970 101348768 785045857 310364888 540690942 658845359 911286904 225130963 446761806 616161252 660879880 489737255 642298214 200296726 321906210 421098651 692413527 465721622 654911176 278850683 448187721 224700326 571257031 758151717 970788873 423492651 880009197 276017171 486454212 769949403 853820620 166799316 868967220 653770103 689348964 722058028 928124218 724313276 942306236 763663248 976958327 456180274 512070853 521961878 871416549 103969443 402503459 857833088 901713331 233114138 828805493 831805089 984189289 967046854 998384800 328543299 942332984 875568018 984474638 346569722 799408250 143367331 523247359 937116384 983711359 231429125 605852044 83167127 877248301 943878753 948202184 285407147 615972547 923064944 949909620 570257734 974951172 636586873 650322012 976127151 978788647 883218713 957399085 742454287 991126263 345576197 397924882 332468602 724536097 916417784 973120489 620676991 847912549 501177886 870361907 523686989 620058009 475712276 969871547 188485681 943565427 55845027 719445843 437239711 669312188 634758307 865878981 276723292 857557474 306959029 528803891 867067141 932625744 757563217 991200814 530906435 761770629 739330705 928202369 807511301 841804598 252742736 713619814 874545821 881814965 457928721 479746757 680646446 927485217 112601250 796953082 961640666 965492079 296375550 545417470 421547736 699250225 100276605 153613892 773356289 874656492 387586138 914561585 635255826 786324206 335561197 848301434 434369957 843429315 554504397 646006613 463318993 984056686 156871761 839113097 472489313 630832345 947016895 953477612 154763407 370547143 421007163 567395728 898610462 910060599 978658557 989918362 630325338 987526631 959237596 993384618 794420370 796627850 152816965 485357184 771819784 867151731 155406788 499398945 870566196 909594805 411343954 772870545 459950596 939057805 137917619 986429433 534846440 668584295 958892396 964559345 858679931 985819524 882537151 955987592 611073512 681918789 200260562 747855256 351588039 491811777 883009085 934634663 803517578 981694307 869076883 973422558 892138580 964701875 882837893 896254175 180869277 600796590 239477727 665815562 849201271 907164601 450779227 937907573 951471470 956691603 741953738 772142070 67145488 398823869 817590786 896401504 381406722 967836299 505587656 641916546 862193669 913189890 531324442 785086551 75189954 604985504 815868702 870562202 373771385 375799004 810981819 828429084 226564527 817769393 309536073 815187304 737132578 845384110 430776022 576668918 81722493 451327792 668330877 847427891 319756911 707885276 832812247 862302663 239758637 583246564 528921832 539353094 189761016 694138375 800351579 920428944 365632613 967162555 842564494 996243729 651308635 996315633 17055141 851302141 897936658 969767285 665201861 719835980 697314414 739221180 717712810 830510271 732083055 918777623 125510082 746110144 889858921 893638931 894329018 943317971 970272986 983690391 433109800 493543506 668495960 955972100 350372538 951497100 390497731 655099092 442907894 612719617 237752779 646721840 513382570 889196689 428015018 785314782 908866302 956899384 833211263 991249440 712209683 889140351 562087217 933442983 412505333 791633006 495093222 563569935 183632615 486416666 803416479 847114897 810128817 953174312 333555987 518605483 835218409 989872133 4722518 103481016 141146694 735501012 636379262 710816769 386550547 849365276 680564641 863551795 203951331 782025512 282917044 740434055 287731389 541096716 849966650 916253275 178539970 924019742 677739054 730635145 643134733 871091618 468786808 837338354 357858002 995448639 892077678 979955445 435930826 565792705 890371739 971720300 667823022 683922716 600179767 902770041 276800171 778739828 884594967 989205532 945396180 953943597 41952949 64428141 599377756 631825820 44372675 833088797 447961377 882250548 684858865 725365745 977985349 986928581 648832538 826319044 796849909 800654142 755856652 865854270 490765078 932923480 541243365 781178955 888689446 941155516 189875334 800722110 545492503 770911971 394179610 897901983 565867020 592682924 87297478 888391507 241206714 523370875 9601397 197193889 123101457 302938482 79016041 221725133 439430957 772957514 900992655 931332102 44589279 264715406 36199893 391788437 27008869 752822016 285693286 467525680 968845511 993308483 145509800 820261734 703942187 807928356 328690625 931047972 462348572 908130167 278251729 945577849 830784727 873413463 41765880 400311527 157829538 276412809 195155288 562685310 553082311 882299072 844066448 952182930 639736235 734627471 187418050 273771505 239385340 508223671 463858432 622807694 85953036 172796255 7461439 677196886 939426376 978065719 617358138 906983735 604478478 965664164 694335286 949867846 379523982 891561843 328744266 599154911 627457035 667605952 104105109 717726199 157291367 628140351 882358670 994351515 325614147 506151306 805084819 938757209 787048740 927078395 384945561 466359073 816408224 932751578 390174477 923830028 670125793 792293858 607642708 771383508 194962837 669762976 701469330 916331149 46529256 320875187 308414824 803301714 722443679 885536496 552136779 814010014 95642807 871124257 626235383 915090690 191298754 824204787 904408853 915263674 166856145 196212456 117196337 732179010 39928217 274551180 982102674 992872221 608514869 774904201 201732988 496802521 365316282 385134384 250782821 917905721 278862314 803711904 312468523 723399757 158643226 342171494 821303656 945875789 127564955 648138682 350919053 477111892 701253458 849104046 433335525 963406493 444984407 704157325 940638179 963924413 690105202 985573219 833487477 889082183 746153324 942363056 419636277 841894205 532216727 806197368 644697587 945715927 747838772 977217474 325910163 337801499 518384101 749463967 363730632 901219968 513263552 546507356 913978255 998103460 724453870 936767341 80209851 436912287 379350950 846445108 92710146 944721822 399577574 474203890 824783415 886126808 706901705 910009706 861935046 876242179 105950975 733217089 924145234 973398399 109687621 701073814 883791064 965843755 205545978 698585000 579030687 748434070 200037322 302529332 876380292 927466996 860901890 967181313 283386114 373973573 268780696 312029872 768933731 935674433 476631938 984194069 869487497 908999287 836400404 911383063 760441289 971287040 840837361 854962698 52781450 69782125 618132380 826347640 953983027 967905511 350312533 935446039 456559511 672685522 99580186 719138921 822920936 961607893 7455432 203022397 485646352 942822831 605649876 907072377 405974326 513043170 192561141 672744418 612826619 836002652 141704733 787076237 254427377 278717282 485877475 517209988 30080680 31976139 595544 284385967 755807387 832232209 768028967 854853803 865340262 883239733 4903173 258865487 231215326 990518580 369682838 538601297 569398264 739523371 892744997 916681035 167833652 836954756 402723275 606584041 291317010 722497473 255612699 916935463 117218752 705331710 664795701 959946640 755503911 956911159 1007738 781727336 821081998 861772254 11950381 327630655 117128873 957057634 584322026 898643328 341049523 506964673 345637184 624445615 512263902 531532959 316314890 542066699 337771941 862645106 950595367 969013213 778880518 921354195 830744417 986283894 389016964 538053788 646172012 663356708 196135102 409418405 856145740 953901554 260025600 730097088 604374627 674439693 176809860 260123787 533071062 832720919 424700239 509930677 283563105 415344711 604635934 780908445 613289490 870549480 609916744 977134795 754345598 755441146 585417022 868010628 122171706 736975903 784656008 896141478 158403067 275504467 762931531 899073374 46271575 858839264 39052790 947134797 740109966 782388062 763126699 869055075 148080430 248669108 325191976 973803656 817611658 958373277 358774199 875726806 910127941 935198081 290651980 554755171 802063217 828096548 839635339 846697138 537051393 822507782 627195300 914441110 268835703 876879432 720827363 727142479 666819307 918591946 10889932 422195727 244882746 673696859 975785886 979913621 714721128 813423151 684943018 719324712 652334219 852279988 128106410 155565773 57621361 632303560 701951117 914245186 736512292 783502177 374440299 815112599 452401757 818169669 98417061 133674919 743035678 860185689 888292325 997176805 942144555 973788204 616136969 785708062 972184785 985687197 895181855 984458747 873975403 951996212 17719500 578537810 470449586 784360148 613592203 828109022 813977151 854956711 495539808 897818049 575342377 959977151 302779310 795278802 31620588 804001196 470707548 527759927 706509927 731126753 21234831 836611694 713972513 814300914 173395879 928807732 587663019 945108356 435164774 616829522 656983760 707795840 917358882 953633154 413081701 713295420 990437501 994238158 20276749 733046478 437045411 515472458 745147182 822352425 661525566 947420433 453912266 764001724 788091038 983823555 21563583 933633439 420745450 623849906 987385930 989972382 411664452 973434555 578416217 589309907 358386335 915916518 624411046 812652503 335435310 900287334 25885213 646772296 165981959 661556269 891744448 920503879 876796302 883171720 16959791 402303824 779604040 929716053 98920415 836362142 123048251 189106043 19099395 240070563 46538406 142205273 544549162 842367265 86863138 204924714 975182948 975773689 786492902 826126819 24506214 441455002 896720561 948316102 231390869 840455732 377294039 468500718 503218749 554005603 317224604 441765568 720057871 810037389 373598670 885035080 101471627 534516303 810730958 864499882 483794316 685929337 466866130 576787916 421735946 702964326 196833623 948827997 958758390 967914358 3331560 368742681 133739121 314960132 130488359 896748647 492297910 726325122 265595742 973688546 467063994 596295829 778391262 778908041 340112754 656258320 27822116 940837826 629339664 843994739 505085259 515858144 300282678 568312526 24492187 312846300 88020118 147851409 359874488 370101068 436148152 631125871 858127155 979094244 479249537 763135931 239143831 484622193 811973849 974340001 960066514 985638325 568853648 944523240 409602888 437468568 862862562 977735907 244685677 892483618 762266596 828350224 405358974 781004401 385578424 779706230 359544085 628926035 873189365 998377834 727767947 948328174 52906216 695599252 866346957 957414076 422909613 605595328 170552815 641361194 12523565 989045427 239606593 370725348 752263246 812358129 608760948 973991146 775043220 901397139 274896531 317927945 339501724 826408130 403238993 557258785 139826542 597913084 384815168 556431283 228944613 907423713 534174817 782606845 274516364 663994955 825885982 863899737 223739651 709564916 789553295 843970515 551573844 553221413 90946040 269292750 320295551 467230926 985581144 990039482 399550968 623118967 483973448 937831098 12229221 519324703 862267683 911092987 168040040 796207432 779812857 980934407 607083217 967234821 686580548 719934669 509209049 868777215 271131732 683122955 516921851 946825365 449416950 568773375 392986580 780811825 959889660 962334569 797312903 851017551 902900049 930070523 869108103 897539717 672041073 811263390 269024572 984287591 101215880 142536126 463248251 737735507 762241999 973332577 583796751 626433817 712348448 815909569 702669421 710273819 453162482 599782784 684383013 966296336 434878507 583394388 298857489 419072688 452713165 915621610 285131738 588604147 189210107 871360853 914676663 950118059 729064000 987814246 988615681 998370917 849704365 938649328 363040634 499340092 512564541 814235023 313969459 769103940 729342419 926795790 767425806 876267752 743517667 793644871 768741471 770816675 54870780 968530860 905257993 961866906 598771849 962687216 192880813 792140130 996698882 999640280 986270397 988377652 602108732 666873083 174199866 589492721 88926638 171266977 230320894 366868253 331489509 786117247 389280431 649727197 5067776 804253572 223164317 285914575 716958401 875406020 967853178 977951248 68868813 936365763 390332176 714907651 824885017 856240078 469486144 777378721 225666448 897664639 445349427 992431297 904387248 974740277 401281531 898145855 755140028 808941202 942593326 944785439 166432560 353124486 593254365 809930551 790613313 973855623 781181650 858873841 815732238 862799734 388917799 639397861 316712220 531449171 777000344 996434581 27728699 753845341 124356378 569374711 54977578 788576517 117903414 805418036 699083729 779020366 509061222 898879888 222483669 918266663 727138833 803289786 436516397 562601731 927525965 960007321 590618774 916796289 795694463 841804331 58513003 735221754 760431714 871729867 971291497 994683391 661498547 712226999 691844685 824683400 180694739 517957499 211174633 792696222 136078768 547663393 350404269 622479142 609071719 692935221 960124026 981705741 760449944 858416441 771575076 848782144 708086728 989095509 606921298 650556819 813371343 870177564 462409995 556684441 897311125 907115074 27348316 164068367 600506521 839573765 385198250 692645556 885818673 966035929 551506732 688110689 269174775 915519253 590679956 767021934 997482343 999573198 311176361 529927189 440703094 728826958 761168892 829920795 871166290 967061215 221510745 391169036 23309862 891992729 287314559 386653421 38245568 169275947 297752211 626906947 731153303 871511941 91243942 485140428 192411090 986565325 975264958 980750353 530910868 758976982 83021735 238932540 214026233 598987105 416746288 883895223 382337097 395736414 354450631 625818083 35701836 343805239 56398510 461696236 477030860 688836437 521232561 886511852 21175761 997466714 726165137 945268012 614414534 799570117 840282879 928352561 755622181 814912400 981787926 998974223 132820335 457274787 847969758 934146269 284273504 617610150 30956948 515247915 173451813 518276742 551692582 696880659 885014001 937118208 213309588 812139929 863144827 922691727 748173728 795335764 648538676 724029137 413141388 678752801 718886932 752218361 514803770 792683815 898664774 976219546 10560845 870985378 448395638 730465809 324056131 787509286 585964902 871414905 520229423 528152589 500654768 599147149 989282417 999976309 909473626 983911685 159712882 482019598 900348558 946444129 525366284 803167062 225150417 563693246 203817398 841665838 356833294 977645661 409108516 773963073 259786161 654510605 68070046 372016633 442292551 914484790 912468821 942957076 377510662 526221653 353001175 869007686 389735874 675825759 33153897 840898541 68392350 808036458 726213524 916688541 731296564 919746362 704545276 723121904 831920719 841026350 369510858 843916074 319636149 357486541 461216568 770721820 165960801 331814822 504888457 986151592 711197140 972222762 982436398 993291930 13470865 630234767 475841640 662711654 945674716 986063737 347783936 778122099 91286985 215832997 808889453 909476400 507609432 519322901 609445383 913791487 134470263 978411094 403571247 641525937 245220824 515872886 590164979 704307100 430720703 656760674 75523553 805932884 297272283 952462626 251288070 366088663 681653017 960527283 407491498 431461512 903030600 954256809 919004666 993498724 711844720 924292121 226799978 476425871 691427556 983175151 242921392 577094260 822216009 966227147 678678573 765840557 54307020 716593941 594391077 658055305 524859216 531654127 958134972 997471648 59178343 582237003 962332991 969344668 798739198 823591300 81301261 979813393 465533462 728682243 915277967 925800493 292079989 614407712 57078762 826771920 335348728 413449711 912884777 983839813 129398437 803117519 955107591 999282450 858626988 987246136 818293003 979957191 503328619 778226874 727000651 884862345 998867757 999959879 12790286 294988402 732529313 817188226 84804483 631903792 828499387 987182188 408613118 859460420 143455143 889738532 499781705 741126146 371705548 388207513 285419692 311802421 489794076 925208026 862682455 956599458 544329193 791726954 953122292 980702051 767129028 789399239 289861179 538427360 512187499 649773954 265920119 272971907 185930905 970228334 221977174 753952099 6828085 902641204 322777822 562925979 186594499 713148118 514049443 885294820 304685404 496050617 281858860 526442821 428767232 476786315 156882383 719710289 980046300 994470717 813742800 891796455 892095936 934739694 485627668 659533813 442780024 697208229 749338743 853663377 272999426 800064374 581328815 957863451 651258101 953396014 824909991 913017922 837008296 903755444 553424203 568566089 403936953 605206980 378705421 899947752 433818103 476915182 317648295 635529079 691634035 976600941 679332115 769806185 228423161 933748386 681337727 755353215 774884267 803395079 451684500 535878971 353835047 594918469 667474772 956389482 825685468 913315877 799560623 808975809 577925157 742165398 761257205 789201663 119006998 815474735 363588572 774831204 991206262 994572813 643045080 906180679 43097647 82639692 196772724 326974146 878257733 961318931 434256449 545251189 194410219 842590213 951955701 984282717 683963505 726432213 889750418 980373966 353075861 360938651 739303202 917646616 275461958 688193825 11782496 323626528 278701883 522140286 736118529 965201700 714247218 892429224 187156375 753913383 563451351 822661799 508647589 930374822 955585585 963047085 226992232 614460617 921389249 965184535 16125953 126861370 599365201 834391881 359408356 960241887 689767907 757054381 405013000 597966141 27551712 925665075 80901577 370583126 287064191 474335666 422058787 711797313 64875671 566471886 111344119 234887741 331211678 787351855 561146663 571575762 53762669 617283132 516210233 664156202 443003206 810541014 37298507 747298521 160872476 482450591 276353727 986057082 178178344 674157388 541299718 564496690 932144138 952137224 877026207 950985004 383194988 422047197 735035986 932769011 80477502 825632944 836124563 873603217 152414014 753955782 685884182 947088361 167425616 353185539 920108052 968021862 682515070 808153834 526585398 700659254 824267327 962692116 473506788 866472741 21044980 972580124 40444484 619408306 562248075 697364776 396327496 654904394 275547603 862122677 160641577 479594070 320530088 358777875 977742189 994906940 511573137 974565046 829034492 838000225 268756098 809729230 364641741 645408976 34758665 834076878 29491041 293132877 115291435 135051997 315975425 718635120 586377332 841256859 342895611 862206963 75412008 704143435 560260982 793997488 501138912 684037286 905686076 973500509 352915488 544959136 190855051 947216781 366765106 974884001 724176404 967620993 137006267 336114471 345163125 814700817 510947390 747870167 70183190 622296259 203054686 824185487 681884503 926147514 279979089 931828058 759370372 925633213 322111907 585278311 70725446 986027578 251252365 464365395 78046810 869089427 11289050 247637469 240750161 768803990 133188186 238481692 27185917 892727187 691950143 987768819 395329209 904175927 608346081 971249994 85949160 884726867 989733680 993421833 122294776 563391276 116549450 687556857 38503021 523282325 387500758 959674565 75787654 706922354 676391372 884700569 642320642 827155303 560294493 912275728 814452033 961160619 262870787 465643444 923920122 960801323 643025109 781027048 161442573 485905245 318124646 671051830 489431710 806972493 977428699 980189419 91467832 855023144 549884973 844972619 248076706 768818144 712099616 817120783 13595071 571421259 155164728 288370287 640431775 811672214 518368780 869856104 925869450 932707591 279067289 632831983 599169673 863387090 448879593 711205381 182966581 376137166 515589072 627851289 105151265 690898259 478057065 613939997 658895149 889040092 230617427 894752050 50908079 235491226 100406932 801345708 635403836 822278383 960863013 998801753 326147019 732071041 921913733 986624212 824448044 921853568 434832825 937325240 546494894 721228789 452253610 579331555 725475169 759769401 202631190 789607026 297062249 880883003 213173339 398794432 50624673 712239380 861123536 868811555 394740408 838982190 102263421 240443196 413005198 680215458 339848795 720803795 599679793 840895756 598346238 659205350 439441875 792457146 672222386 815762838 556476176 772736925 650484629 872566961 717753195 857523056 32331833 424379516 745721200 895579000 849419938 858169208 829488343 833316811 269543441 679834108 469809976 528004743 723178790 754785194 874972967 941393298 228914497 682448618 961960923 999200940 293233336 969688401 714189765 787950587 139391768 220400438 512207870 639505876 119136934 129065780 334683664 624157488 785129530 909305230 399624221 942973378 290087277 393751974 352193432 466041186 717780131 958715106 359432493 456156866 593000690 618227911 43896035 853784742 747587417 845823225 576349601 821669436 518585486 865870119 894802614 966527076 676201552 935400723 978713048 979896781 835947593 893619019 754545815 787827356 843105380 994942531 206936358 768701049 188083057 884495425 696297744 888864499 622159877 903835864 390897189 560526844 74144239 683352963 820800764 906011789 372589859 616671065 249949064 692764738 874621222 961489468 475283465 724394542 707928592 942486353 149317711 717070044 239113703 542765038 225967583 405906811 38221275 454047287 431404769 730856038 201356392 484686060 891127194 928970252 702709377 805163658 385513848 734718722 921481767 966153451 267263326 892755035 857952512 959699636 954778621 960945569 89302159 605059298 634084534 904619214 399723183 882868464 406613797 976738227 476427967 728823664 32481500 486721467 219058294 404304242 238165686 535749668 72520700 136039227 693021773 752338240 20652279 286864312 412205739 536759047 448617387 625394839 700524064 766500975 897234970 967102073 306484051 957961500 929611938 963313932 127872413 245371466 749521866 835032691 320934672 590383887 660570886 789937434 619308712 856779368 51817429 412473563 492967313 792700007 214410401 228446893 417990736 828397869 106897780 360651676 381944709 643133330 391998 412147713 49249097 684767730 606405530 947951456 152475506 373130813 191574820 315367843 542114471 614645338 705209567 800376149 549410704 823742132 420960245 993731974 159200531 546384554 274218739 453593801 255258732 509746933 28858816 983141527 545105966 998603080 674649415 884994770 721635247 933285459 208237142 837678243 314883091 842058746 168442162 553097281 243455183 899518284 887171327 973380957 721448402 759357109 121274325 412784622 46311682 226352854 503969990 952997061 135322587 455122898 125193005 190815554 509155894 762570091 191715381 371317334 909484615 931688695 533013364 578216243 380435144 564375785 670694473 824152695 469461808 585375759 176536533 549337856 909990675 979810340 899636468 944178548 29490485 716978234 803348928 998765217 675620120 825919446 727420581 993507541 164299344 391239425 599088412 630959799 860729001 980914192 47456297 95884028 78317957 630440706 322405083 754036089 936124153 967895465 445743780 592691423 535737843 646255359 858780087 903777465 639038514 779924061 435797994 640422296 956705316 980571358 45202377 408257934 297700846 362035079 808162412 920870868 691210005 752717657 218074440 418832101 436089078 552829053 82799595 995029828 159909570 642939973 362788943 406524790 280808671 359261568 810853167 958403738 921173844 933860555 67091818 111045563 596121468 739175865 702900141 719010959 706430604 962277354 968935341 992706537 502661908 713263850 947933274 997048292 230864550 534708618 764701404 967843147 415502550 725412281 581490965 800588840 98150231 535824711 394635514 565564321 960035768 962962206 341350022 715215243 149413585 180139306 595591113 689861057 455382154 903810431 235035226 870265678 55545268 129769841 928833231 998243820 195103407 814481137 763531371 791042813 409622618 987961886 806037264 814035480 582774905 936991315 158161124 994479175 415011300 607913452 664643162 716801744 889817944 892619409 492767060 785347649 184444244 858483957 725504444 728218409 684780900 779084171 627062220 952643661 56316921 801970897 800099055 922527632 477596438 600900737 630490624 964753438 891830950 911495121 727922831 764223340 272263104 959261611 890356619 935674001 60084018 316118913 968204237 997796982 663247518 846785632 528839660 867759300 449164926 543867522 416912152 452786384 675213029 700702760 259375778 651095818 40130 676456368 347207785 961614134 731840506 990662292 499722140 829883320 237999677 588231239 48498252 795251795 673974955 871449185 963528446 994814174 817442015 863004055 501757993 745515706 645244011 790217660 810521656 842117399 711767742 846573359 208779665 588302840 273565476 917881179 792846571 869039979 992701577 992965589 815371021 885341864 781663640 929374068 340071941 781303477 967149321 977821394 827947150 947795535 108030882 909930599 78940248 341957402 305452575 465614785 568921479 635703791 909924172 933382787 869797316 888639580 784155461 933470852 191811441 895629811 114631757 937035906 389167145 873839710 891231893 945954051 165423747 510442456 798321793 977394463 336236404 792734628 193409652 849585001 731056648 828577703 357365588 444404392 732514560 963801186 995206801 999767440 9584879 712234965 311431604 731774554 659885114 779554944 439081633 480526900 728108919 773947803 320857816 946001528 798971514 971399878 828714812 984471151 197746311 752988923 788171043 844878931 502947400 938856902 256240004 789152592 596395258 879563295 110323269 739241636 153122654 264678855 224693234 872648202 76524279 639842521 889602040 984798071 168713559 487577110 712275718 863083110 99060329 968292237 249285027 785640501 66533570 570187667 686066167 709634744 605071232 852504400 147128026 356180475 107951702 264841008 614901780 661604534 287190361 500354864 491431602 763584002 240100579 370781925 321786480 577400329 205679323 228100863 921333224 947434688 537647834 945722374 458714882 736923048 973645211 992385171 431845644 834059823 911053036 926032221 766205714 771642291 696503022 803564387 200750599 636665856 362706112 529310313 407368544 769333358 506428934 759482742 168110276 412565281 971851888 992835911 735568268 816505457 235334181 271886133 40120509 294778463 39354978 922909223 406978080 439328142 877204521 996716998 154701837 525930685 506066213 552371367 865768119 981889089 456212557 807902126 941641547 945772250 489220867 489335368 240176369 503450211 762300131 766704051 646998577 851940405 810876 492326845 253961941 610880441 76836458 122513567 725218062 935380404 330183661 980346248 355450844 383922910 476170595 662099159 471488240 819639975 579050157 708843437 285199651 943956475 106916448 393623785 357661510 814182638 954990653 955011983 768950241 966363890 427342206 707284758 335395535 843172324 119656847 298077951 423049243 720282331 200882040 852591236 975612007 991109861 429482618 495083740 958308923 985088931 306405493 815973397 490777741 730883748 934846000 951952509 857210084 978738562 230104016 965862505 749223683 870937682 213926336 566855983 233192944 239349388 540141441 884602756 946638928 967409645 729965370 920608141 833277856 959137719 636535345 909569198 460910127 953998019 885681397 916794355 387587899 555721772 542602663 658014218 772679052 788112202 19520613 108641445 128946672 768087111 786324933 977755430 463349163 695230237 970643981 984613675 614239173 923995899 725308948 900472584 49728017 652510303 465531415 736459286 263527970 677298972 922149729 928282836 385569032 386614192 964492554 982925695 369044093 514565017 643528037 654757759 429998127 810719444 642606547 780114044 643000840 651645276 600183173 944874929 559760519 853867304 91836369 601912668 286595449 784507192 696818264 722729486 763693172 859646103 528464661 807895936 824821056 948743678 852953054 944548565 243155194 929816732 282629418 723394803 247568701 667342481 287770507 691337664 692608432 843216946 913239534 921036560 652968730 712077475 547275444 974405502 239825911 678409292 432928969 950016637 593215161 715162481 505348879 756589435 713899115 947342380 124967707 961899365 867900815 956305426 68115671 709576812 425809932 914595928 887535684 998176864 216860967 575427143 989800509 993520676 75054586 742097600 761985585 947980419 964082320 981494016 857981179 951758993 961199576 967453342 280666733 558083605 985110123 991194885 188945365 532842033 284607060 967479424 26896376 88490127 871953623 961998601 900909113 936509909 818804448 882933240 617728065 713849108 941875388 971095656 542444664 994598115 984646103 986121620 136835530 254583942 45313773 50103573 771568595 793487600 527040032 742560171 315360639 496841823 639669856 804315221 115330811 304839147 191315217 491738582 68736604 959618848 748912194 894014803 426503072 695811733 453562734 838432612 204972462 385239292 238370792 550453020 763648267 820240434 426766558 645567064 611603938 713139318 256127861 821828419 778436788 879728501 843160554 997186717 888571577 888980433 884786939 902576634 354682804 922938298 357103973 613736939 804813218 928101755 992976577 996919610 606672970 834409090 810991428 894575308 548628989 712002450 345145089 691468413 188355157 865785592 599693454 917107100 296007604 600466519 899572087 961493716 531353494 569643513 440911995 669012005 521985620 532985570 724155979 921685079 122616262 402654753 929564312 993602680 635751213 707324624 499028616 709963170 309111445 759820503 878320833 955073216 419715530 947958591 910942536 955653851 287453581 296401105 152014441 220735150 951655529 969471079 537758376 737464338 753373812 987250198 640051885 832281666 519796803 724374069 622173676 879307107 474221319 664785541 146650991 658695864 143445853 602620940 291686984 583094234 371698553 701037116 700572020 742724980 159354410 522773703 919569688 996413915 577465592 725480773 609302717 948080728 872148494 915027413 168607408 533909918 376027229 566450090 772614915 898308927 453454120 621046466 487123776 530712631 168502053 274075299 133946955 665339876 354606607 502520033 429966618 827451431 110404029 657353590 489774821 906364139 93614527 427322855 816741279 997067919 510004042 695417904 516787072 825120257 600687708 934779396 756839931 992330580 454308597 561529106 424117654 655135872 264027428 866879119 55577930 570711356 401903564 946098423 959156192 964660968 355558284 973908068 533142565 621279215 648707099 961968927 452486609 515067712 394890053 487065737 185254633 566365151 399799040 414454123 988810145 999223240 587046872 676062242 452742085 585119290 950920393 964208547 226761786 739537964 827068021 963775960 104996535 213352942 912564363 921990316 189458420 925848635 896988079 981782413 86922499 442565404 369737156 736405355 722677543 827767072 331757254 879541718 546779461 992602910 990513676 997912977 588407688 862641381 182401739 895243661 747206296 967845975 645361553 864845875 240040118 973667514 283852425 636018294 239540413 316412718 23448841 152993985 784976640 875429843 13411605 353337646 70381996 724371981 136415255 969705104 866362410 875915549 879927298 940984787 797773355 886593566 976963873 983010426 129604397 598634347 413706912 962975780 623583941 916463387 475632142 551533767 161034405 492530089 235028027 480566719 79150936 907158746 329847355 782194211 660912740 851733926 384889435 762621969 568653846 702733067 834380820 836007433 468087863 871622057 633740849 636395378 476347924 761179296 159254435 718869071 154416082 616286511 222029650 470598579 224658561 797430011 213204129 552165433 688392497 965211944 413660537 981365368 440287498 727474358 825141285 991360896 223360090 494255686 555029122 770462378 23207225 175501584 571648983 787380017 955519972 958782182 250879070 819636888 136793269 221648042 127057205 570565003 580389383 862244197 343558857 511213560 531078376 666693047 944259229 946061754 247944050 962866575 475205593 521774678 147250868 636869068 699252956 758749391 285884961 525192513 506562040 686952459 579501528 710195384 432691873 776841074 890401405 904155213 39188416 122427592 323670328 853204120 277536348 537979470 620086000 821923702 223219193 363634355 755165290 756069076 213457190 938733595 174919193 817593096 611165104 832820504 122690108 949675662 913217977 914166959 262950494 760777343 718980730 907143483 444312884 547912907 526382154 977874959 589019650 893485425 474644877 948095946 448144746 757594847 96567894 583574555 741878348 750000953 551768793 586853711 952218806 967012734 842490977 998898801 672658032 822829557 833354132 881906560 957796982 993086713 854693490 959130869 571249591 990725772 572113189 839179750 269010348 662340521 767514578 775283680 184940931 745465220 705255681 917032814 496604894 781948257 996292359 997523760 776314663 798855651 616786674 793240925 786011449 837691718 487310899 624635142 727044120 796126924 554223543 556515435 274322022 729100668 990045872 990739952 624133694 775720425 881945173 911077634 530676611 780522378 285355985 635089583 759104687 825902684 869505618 875466143 357170240 962338055 150583545 701261321 826917026 870893456 597011722 834057324 528162843 847217027 469013146 573320961 418315219 454257310 263701780 815736593 930483696 985559384 644324730 847653875 911755009 936896768 412556602 810857734 50646225 418208495 539648946 913057408 159894530 335608312 892772511 925447110 610323281 703245697 734513855 780754132 106095473 185279373 664936195 729308985 393778721 455940833 747981034 846650783 119577053 195421829 958382503 980715827 869010873 908874645 470084562 713427075 888857067 933995849 201575873 261827211 932745805 993768908 147103746 601062235 484450533 672696832 979407892 994109582 89682173 357496538 986076487 996966953 604761739 990309115 794147801 957095480 782556488 935579034 95197745 800969231 852898157 989325554 669130318 930217121 188272140 255069018 259879297 904488934 237388787 587459073 749321322 833389225 552237457 665457079 225701133 734682562 823586496 970650233 806727117 869638461 135032440 526792547 384460008 893601139 308549588 540682438 131201712 769301564 705875218 912628002 805668382 837903534 456268459 842268012 94805704 691642923 128500930 607330397 59011368 115665838 410201012 707954447 320914812 876293355 340776229 416848934 172053349 612801085 863150676 950373889 740687201 950784307 569391760 829640613 864307184 947722261 367018415 615344809 184869637 935355217 574752330 766385472 928698211 936332796 274610207 399582059 159720672 732201228 143783245 744738399 711897947 857052585 917426912 958154240 891973790 927869134 694707288 739899079 364319688 974519659 141419963 918344194 990703489 997245504 661247542 961563593 339438935 358947592 195909888 559133770 630360120 729158194 301500836 759129935 667254488 970973558 619893884 862704888 381179147 863917863 772687603 887780053 922605077 926056528 461249108 473666824 16830817 306184699 547414712 709298395 628277294 952051144 18199335 815305358 623349019 667337910 355416587 377562920 448759976 658369005 294309710 913415319 836439475 885706746 678224957 955631439 569745933 925297110 921796763 944249226 66760306 857976961 119375494 571659407 957794126 996082669 966373838 986742295 787537141 914334921 437362303 562846648 468897109 490895322 94431747 226853704 109897160 505423673 648663351 668922914 945462414 999884435 293958204 523958266 817020488 993380661 910639514 953170607 931705261 949168460 263585183 828413627 627022461 796842452 281802299 879797592 536929385 728354404 308227993 662083065 492563338 754120334 927205065 945950539 100262479 449029823 359563532 932252183 282134132 471826075 163504481 703130256 616559941 892952504 795615569 803790342 861816109 959152943 582541529 668170534 745044817 791807388 779726715 878185216 49791769 475835481 113179723 779180894 998563240 999680925 854034739 893930495 212348077 428043271 67215435 493317192 717885258 837485445 644548870 803593063 223033231 877726396 386999175 804227943 217056492 809591095 415332692 893482636 291993494 579819447 555572506 731315838 873831020 989098472 951126022 998314858 529784940 632630869 922494768 927638147 845958107 956458741 211704434 258390597 737462005 896228745 642649302 955190478 971593810 997204364 892307670 993429675 30889748 167350905 185567296 780921097 78748090 557104569 886430619 886632160 121992392 958755790 791579630 957049920 665992343 759164126 158292346 215834122 777895147 778685183 381811254 932968359 951711012 956998551 134389745 246120812 481425477 650525937 378364031 812678574 652355069 853549345 323170465 843448746 893565176 896699787 656646822 730238658 278862631 709436307 513299820 897508558 557656064 875498689 58004935 514502462 358444485 477072411 272473088 675150034 354920046 638119634 683607234 916260407 877350025 940147694 558291190 615845764 625775738 993809072 417740896 614473309 248373273 813387750 505709506 924839271 187502443 410422174 369330529 616646879 955321034 965229641 645310952 886640997 288781112 412735485 74226589 684737200 232417437 343024959 973559181 993130579 56730040 344101906 202355357 453754030 346880639 798109131 698903336 733720105 140495987 225493119 419971874 692850289 229415480 468897421 615747393 975217482 213378355 649807071 950919194 991691473 9476079 174578957 486147113 951512853 324281278 706867766 50377052 561625462 933108853 963516981 481668219 738885705 683186312 774605782 735464655 974072621 47735891 210990619 504330341 676999032 899897786 904898540 263782729 519268980 268085800 780140376 519530456 980568604 776787207 908604964 640675247 916252568 419142846 485136840 108570377 766200815 521015215 678724665 124594565 722078226 285777186 395949444 397543115 603283306 641180018 930947605 67820531 901453409 636907090 871388454 563862775 946912653 893344843 979174371 487534551 820091477 101119663 372146331 140882572 430873947 425373521 613889955 627148775 628264396 424316742 673730140 469594785 838811517 171208694 864072105 530343562 596073669 985944910 989534067 404014581 783664789 634774062 754483119 510894475 572607391 33014236 843188202 26446758 799800578 532287431 822328535 809428477 862962807 545642725 918522354 715452706 928573009 812547583 946713987 451668022 612842907 389163778 630947227 382902799 917024340 883507881 989582058 651124369 943322654 977100995 984746475 807676060 942444675 77794804 947527464 537432212 632914976 768409028 905409458 577764516 764815509 122688740 866217439 908221212 957149232 242571940 506487927 682484075 745429181 574015125 617361820 737557424 804123632 321412919 785953928 82527880 87608705 984118888 987051146 234405993 506174057 297499241 683141298 463727027 725425658 805573482 901494342 359416678 665283439 307327855 794689339 277891222 603507742 379839048 505196717 248097032 537992174 399848221 909579625 457171327 880566546 380046411 981369205 768562370 774219309 486959262 630184264 808941880 829470259 300061912 329630444 575204049 659850790 938254639 943743308 414161056 882656309 527221246 689037169 364240368 456927790 831826276 864212915 569308637 586113039 797212398 928408258 355480772 606875963 345801932 687874510 289714863 896983917 264593275 975739700 611158251 784625828 594151654 697938379 107908747 803799447 579009480 990466775 387822156 514693054 450781375 773328961 4445872 144455272 27696559 579609455 320753540 330864124 546315177 907084864 558284687 813263683 470918568 537760441 327478616 942030676 604486763 636672730 550517369 629897109 931546785 996071996 417667901 585238055 842609080 916304093 933341431 962410090 140199879 815792818 567315591 598180443 15120442 578323302 290718133 844485759 489607577 499906147 145829806 923311316 758195769 762973760 960488898 978433462 941841624 969187881 889357777 957173080 663280497 970569170 785836106 977510859 494148294 895943358 43952376 261304478 715295588 917741538 501346590 738169121 691270949 826501589 215439283 756342195 543420969 566436654 393946480 674543007 669235599 693201690 198403187 611473390 576130470 896348425 316878591 365249023 40530810 657167466 538119575 841650461 931882412 989730934 495808255 602556250 411933729 745279695 980228564 988495486 248453844 982468609 784705901 803401310 214801826 641902259 245449064 799572023 320749976 992139474 524714390 629434055 705794835 819374383 1253966 328168933 745132013 811663480 740974946 786096277 378015929 699888595 22844533 916678716 136361018 367578428 760640564 942331706 40910732 554258295 562653281 868132250 289691489 616051836 107941685 980475794 843381708 848743628 431858508 801691842 439281497 975058071 572319836 991865297 658530468 729642560 863078952 924305821 489603577 621181305 655415447 813941455 92765933 723586910 150558019 181346311 652831743 988768109 600862789 993974250 683322025 792481243 691857330 999557979 691130466 716301277 636434244 645194840 14860843 167957850 87476670 716506085 676489218 720749188 151951848 752963109 932494322 982346003 355148904 469168434 492782916 891288004 686355445 911225070 658699411 812429767 406328585 808448658 550177472 991761000 968312411 988156560 214083194 918636404 767625926 817661316 35536434 561080034 509726156 543840984 264842101 663709529 262819926 618032945 15770566 404050631 678297057 733446134 411639494 955908533 398906656 866076289 401233281 796767195 684519995 738013874 890212282 930451683 705291789 898308911 646572644 924508956 141204984 649115386 220303742 966608558 689193471 990425656 267212527 985736562 445412582 481145983 996728291 999856319 593788021 665762037 520991848 878350369 424226381 582901849 339158295 741001233 64978118 437512503 442528104 590720021 766879400 789583380 405121490 575842437 914263094 956632035 462149902 562017049 221428401 782003338 821726368 822274614 534860185 940143604 875941763 976404959 180424698 844561246 300371152 933185177 812693422 937738636 330028029 575259605 834216671 874873302 173302020 194514477 468202315 608959368 854258145 963953134 911950991 989456417 808439339 966096371 254547425 795662402 57525290 984608143 574885919 787934845 527147551 533202196 109693184 623376057 708842671 978951610 71315294 532311220 790392003 906245574 291705815 917582027 405870012 912571487 24559756 109116251 87204200 680765996 415308414 818625451 872609063 982579782 243699030 767730575 760588717 931212695 273091842 646089776 353421126 830971116 88016783 644470548 935475326 953105288 435147676 591342651 126401481 229525326 94307452 611204548 297022338 402921426 75409867 254123521 298205173 451888431 108610794 634083981 628696583 940124575 761936588 872015614 263115796 341294313 820386166 892646723 180865222 729292107 288035002 942320600 626781902 926183056 191690861 259899651 930446982 933339857 680782546 829176956 118525706 608384579 556110825 881026126 545273735 757935832 15944073 881540337 667522714 881599594 915800399 926380078 107022612 603551322 715970719 894241155 837641578 998821852 860126586 994935723 639170977 833279561 586159684 733417022 456441144 489065444 849951578 856490874 590480648 719830721 645003280 687255868 485887181 913347509 13471538 216298005 729114602 944448169 245659329 621442276 548444638 960127762 296402921 968680748 367755252 778963100 52501360 210818125 867531942 973970489 140506528 635529010 740396603 857885247 526738352 872239042 993849320 994421882 504836709 879744928 491448980 859399974 506533389 567754784 765717493 976501551 798364209 997179512 834445799 952306676 33574618 818034732 880695184 964706655 295211549 815700104 242272940 715351089 604033009 719343183 671604471 943170569 76904794 293299937 597553184 870077022 693562513 925432301 178454749 699209014 768454568 982059112 424407680 893326676 789476820 846381014 908154560 929177403 498385150 512973965 382814672 502980809 509691130 573620531 638481295 904671540 45669695 714475688 571776457 972684825 880076255 926887479 582849812 945574243 81147963 248079652 370119599 770382608 99484573 930513214 707694738 818194067 28061313 981174671 158941 324761818 167186639 180357269 80211546 627466359 674321148 848468715 554648509 584031805 383024264 778378292 304956224 726976794 606633637 835226471 879502618 926936990 420473919 657624707 92351218 766130196 719596343 773083081 903106224 905209753 459445980 748685885 819807479 966001224 156297777 937119759 433247341 482717698 833013564 835180621 538184060 877976117 724821717 807671997 611974282 934306224 108800960 788998803 544706767 567255788 633039365 656769587 143966440 528804215 879679 5924072 992238797 998265728 444430427 643514340 521577099 901324139 797843118 845998335 509401823 600001906 945726988 950395737 102561192 825850189 232692826 956022052 555243428 857161205 264126878 422741498 121835895 155025900 42669405 777216817 297221047 998644128 397747202 942387767 172820134 974947072 104874917 122617160 360934864 381184718 441782096 759115410 897480559 919150252 548844303 655640278 40341993 112423051 305883542 548890255 32047327 769143497 898039662 908042168 260266173 798248860 182444990 751965627 65890113 851177399 347719880 881875615 432388602 594735889 632505180 877155139 424308469 842288922 975119268 984730253 813673540 907694469 971117123 980278521 691579845 998094874 607853491 985572086 379280416 442768262 942078884 947240962 870187789 972250997 901724337 978159920 798289831 950510071 799816007 959854480 609543160 972697840 560276305 644994472 2830493 769777534 570983986 682876459 323883942 335152204 818035158 859127909 200687669 556575186 314215842 962871220 794069016 893030207 371160341 722580006 191424325 865382145 294673737 566458583 942367034 987489585 34828434 122013383 17320716 493480622 640778469 700633628 48790899 400781025 519939513 613190109 366153582 632675235 109746722 309141875 775793804 797759979 99825303 566009793 797154238 834632465 353377973 874346511 429317083 673077632 787748865 887163513 589196686 769996283 494363528 821034836 28027461 350137931 538617408 613294370 889396077 961611579 962573317 991091877 985365309 996008309 725217442 909913630 405440207 740728531 564003608 611220548 805751145 904613962 843449135 956458761 880251030 981281096 773098904 852768887 643860472 698661643 807684620 911212771 444469645 506619113 248291489 908473518 538596894 836580098 67233265 403988689 484903572 732457841 524326459 606722676 83399805 543188583 24329867 685560916 708051718 735886048 53049644 898416078 781189194 922934820 416227244 725302730 399763436 804673874 216779301 667572461 521954943 807153617 202896006 681695676 49283603 555769265 756851917 963332053 109126614 148749249 36722977 651533938 137881398 915486336 939005283 993948732 751745253 794247519 316227980 454965067 12088267 186362519 85619427 959608684 208134712 357765733 138305082 690369285 372142164 407838398 582461850 797919971 599489908 731397396 592814750 632330710 679788619 872447185 408137002 539677764 462962539 575918329 277407581 617749832 990658596 999887710 344268864 463982054 14475013 735437799 960492575 967958856 196592557 348144854 578143988 709680507 381672236 785703286 985402801 987750405 833668170 987672992 127001819 142755921 229728656 231234438 771275073 911831375 398801456 909493062 521134851 721016019 224632047 300229975 168639244 733269001 380601692 660142145 234929156 766492017 545507485 644893006 968896123 985763896 966851400 985502514 647347858 697439563 101114027 913259525 219200596 964086921 640984719 736766783 176281865 962289810 719626406 803545183 767528411 813359014 348591875 435948794 266277908 727062200 807863403 945522262 973954806 975252474 99602654 256549025 945505307 972358446 136294124 740365355 641457824 758676099 515655904 779515713 375327326 902507805 867397865 944480864 562347842 741586780 706651435 720865112 300528496 923603720 418686947 531183204 294441692 874332364 734124769 977746598 235021788 563637627 714002704 876372590 435458287 800157589 543088173 883573603 874608372 991201593 749600018 820378212 618280123 994276935 228215715 373983172 346948727 971280727 763196284 898673593 836223721 964151845 438171444 927921654 499865187 620649664 173824158 812735738 982492964 993753219 745182668 975490548 400005420 905792777 568616421 926080722 599649365 680921959 802459624 996731363 458433949 732595773 465079230 493752294 689420311 853908037 81182013 644485872 510359528 924845668 625798186 779373592 131069267 980903598 437609227 897978726 491868698 576579238 19281956 387947085 525977814 538878837 559680233 838833466 283687051 957826557 44087271 758907657 920643000 945530478 509121152 602746697 527971734 766145634 225199948 620456851 183493235 939898891 910491787 986095200 620966721 864485626 232471629 286511126 418753886 625722018 620980838 952678058 670595010 840138770 961485211 963633913 410776289 736975795 564875077 591599637 768036146 842195549 273521250 650840512 169033608 702217628 654825055 999847325 357158589 995197148 711641389 744470476 365600639 776097946 956119517 956878495 544564131 846320879 881257104 916697949 35730114 925296301 879735197 908170673 105905746 115875577 827289939 838578487 16262899 385324561 158134019 915418644 754335996 961516580 247633502 547698843 718441191 733321303 310752593 361733303 515545625 527077768 409042218 449213112 870226110 974825079 255633758 610921650 601889134 729021616 80248666 719298874 360063137 555080462 197651087 338031935 171509470 826879153 730679804 919245027 230830650 432636150 764631431 808485653 181858038 535918307 43062756 300333516 237331864 934038134 871953345 951671874 634402220 785950418 141327676 439915357 297914971 543964935 970725530 996277330 227726162 307835689 862595171 969366207 572870034 877971222 821643002 998384345 663573093 760636461 142201008 940729060 864332003 910915462 714523427 983279784 14999229 361957226 698236324 827945547 287227203 377504556 335859262 983441849 426457176 623629935 641041082 787816953 366915440 477848262 944908884 972146443 102916996 743395213 251471603 347738294 335245074 634445198 431042363 995162216 681343110 965056999 169231610 474582460 774474640 882039107 844959701 993618219 836353177 977552811 959706437 985209300 51322678 492522064 790706464 799110267 556783350 929892605 112312461 200189788 608773248 742144534 115821788 721564864 149198290 529814312 133565015 620963625 269505198 522686219 862283507 979718520 197801808 521347380 913403986 982738739 52681266 524659938 894377272 990085724 542308946 676374860 344649418 872932099 9972664 744001776 413401088 575191265 71080623 676054615 527136099 856024788 226169010 946912611 347189004 735316336 962123310 998432504 430700163 568927650 574744223 582576193 186921211 888406965 436076815 534861864 197450131 639273544 770014159 841017538 490805011 617001939 656902639 883254832 812331487 968128901 723678407 945622859 295124016 381870757 842324223 850322490 625540256 695417125 319572587 498608829 759050628 879458365 785776978 806703290 798486133 880982936 763831718 935696617 303638664 646786745 392481265 486970887 354279411 554150786 101416983 134309508 232809585 482071842 851755696 934696950 745924743 764111640 123398903 789954378 424275012 783834373 584071210 818500868 7952833 493276191 214580471 446162110 324153555 950024152 594363862 720167905 285735598 296681714 836294841 993799135 478500413 535991404 869766639 872338839 564344792 641417501 122049518 533437989 993555150 999732210 475795593 646117423 262921357 583099586 932972766 966504630 407209063 753300146 623496233 889682926 21084224 842624798 634118191 913475615 534563685 771684397 481110318 873955751 593995062 870425073 245227112 508071607 620557682 632595090 581841972 982570807 312884699 950574598 963445825 987392583 867450601 955352916 519784718 533313341 27603372 988718515 370732672 989495070 336950447 882601210 465617357 913505943 708022133 879514332 668560375 921684031 992263590 997116502 971862601 991241615 735077723 822068075 595492255 964381741 672873299 982235645 997502853 997837448 532972772 741634430 641535990 826585538 932199036 967341944 424852185 912968433 63198825 989204878 977426743 986910549 772443631 962321879 171033447 982479452 440628212 909855142 776995626 981879668 641242977 708789826 507632514 671471665 547223598 985704194 327205727 551382075 347635608 896266273 522574922 791601726 393878358 854103634 115471768 660415168 455490614 525066186 299271074 791692006 108016998 830716066 316134546 924440566 91094570 475469414 411331964 481711444 315315144 425720517 736070655 913403772 157604951 796899214 807926675 874010269 176127481 429728159 517824351 964319165 564547453 825071998 395701128 549532428 143978148 554373925 965114768 983769734 846290652 938187843 948029589 979096021 725477792 866710084 89845980 378639156 262446002 824002797 406631776 746544659 903982963 921966069 379811365 675047891 340132041 452791663 363495126 642569833 125478444 527284164 617302181 823576088 729106604 871642679 954705765 955441279 116561573 194986551 233495104 892169742 367823893 547193246 246941927 320870638 576685272 759815369 969830268 982616931 27847831 369371104 856960333 916830630 752151646 901507921 421800895 690574615 54626773 696879415 8829810 929634313 764233831 978190194 899846467 929915657 758707144 847885275 710833446 999067840 113391699 510262834 967246846 992734078 925419851 958575960 552798990 980699743 355808245 502706432 742175102 859135422 765171698 942303495 116564828 959982838 699198579 870835768 960291835 978815207 334098835 771890442 439816941 923949449 275078063 818494163 262493651 398103944 296630139 431439930 227867773 522100946 988212990 994034210 195633219 657584041 479038344 490858622 386661580 638104553 737565278 902578012 383425148 637461795 676910647 795694267 72521793 773526659 801639873 944400592 880788877 902106089 213108978 665018439 600178322 733816038 405951445 950000533 43359184 597332788 18831063 252240416 125455557 608452806 689093518 715576890 374329528 614144911 298651695 759259602 42784269 938092802 632790657 823186009 356065199 922564927 310479527 980227601 770619581 980385232 245615831 564002250 31666566 406327539 543021432 768346213 7053656 282414939 370614441 967012078 776594248 840251204 54906254 776551099 854160641 910923758 281410366 760321830 101420760 937479075 807079897 862564294 794905001 814874799 896251687 944969250 679293832 717280207 538347739 779539880 771257292 921995886 856169430 982156424 444736586 811461689 778227501 933431940 308457552 815757029 125129342 744272058 612577006 711898154 30085287 332845746 134027404 338242569 81485148 747782572 349583177 417657949 528144059 677543393 187321655 409609369 726385598 901418213 623919958 935633805 152236369 345011679 220598035 240097484 377832825 866111980 921847881 987354408 713304905 761965148 758590520 809340010 798939902 859558951 275234765 659409018 581652488 774043828 185666328 351286754 343809913 962011782 387763188 891283059 100847055 593872020 959398933 991979243 127916250 213187080 303055517 909540757 769758244 968139500 889669894 959792789 355307398 556810922 420175702 669197494 989407469 995153745 926240856 941092711 319621465 958305501 805889029 969102639 715500095 845909704 642275149 852609870 496555106 565692389 261503805 557631528 53516053 626001474 596433010 694465827 175636631 845368845 112398660 724961058 804870548 982816638 563047064 774085202 730615369 918564310 755922029 798209560 691186057 875000280 27097011 959856361 685689035 783231272 992685905 996159173 292565794 550798943 27833534 162977046 955109303 994466964 442843504 495064747 652111406 887757358 31999364 783755450 823183763 834264839 575128676 688295237 62809055 515541018 300402284 354610755 168039059 705039133 915931752 961408060 842874373 918395481 205130072 970740438 864106802 946547273 994152601 998152315 653025958 789700213 488529812 822870880 346883559 964448547 682328760 777694393 170596995 769785002 765358838 913518371 169751973 741313192 674169305 909080163 229730597 287942086 442871410 719119322 782033886 959938613 288241121 854908365 823266266 989684476 197713198 371640173 594902438 991971818 890874674 910791534 715207742 914350755 393704005 827514030 317539820 732510157 718107807 818494923 154634357 330124229 977370638 978704665 874894659 897264373 313347185 626168397 358379018 528787541 562436083 713220703 291018243 608005767 967555210 985218915 843986185 860337069 243970952 673729788 258940033 365203549 119649683 136938437 994338773 996190918 128830767 234053479 10956833 834141956 62721344 158154173 844991625 932891319 357222146 717697027 302070579 331018958 171981429 523446335 549654874 864981006 882466689 974487349 745331231 809817606 248680671 849316729 816721217 873547014 768390579 812866635 313867563 918201008 956707327 997159072 857741805 937221683 8167874 861306420 927776053 952358077 219981186 416155287 168989507 918312196 74383943 952239883 66730037 499243940 753257793 879205868 512943922 922712681 339145879 708687320 313141436 338124687 64780610 603019061 434919507 635491621 923317016 984372281 278736902 523392854 626253570 958831608 819328536 999713295 391225785 739838239 605981324 848874136 264341264 810914823 980483041 983851291 840240155 914223780 124937292 668313166 782938288 844145510 46929932 638779332 906536190 947776255 120593513 424370612 659122823 985970695 644446107 941769764 686758886 769135457 624606188 910930216 906240948 981801767 538535311 898327123 731770946 783289174 726303358 749804950 851205012 880527607 470631109 642099202 691917183 880618386 785563314 958505603 280068838 709895542 233414018 364324841 196031773 908706433 254327495 579878360 279278311 887747814 582262155 669222014 521746213 920245210 231009848 891551256 933837483 959019042 914121419 936608228 188426324 698402979 293668365 459262841 6551682 792171267 542331004 631492131 305689196 835520334 831163226 935696273 217124834 538621700 414279845 878557003 238151431 924521399 711515631 899805183 449889286 479013007 408593782 826561368 238778990 999632986 485890404 867204419 19391274 875352061 551801532 678768126 449283292 560906913 786629338 903609145 252877188 302451447 825781245 934194037 609940311 978332126 153764466 538580740 363871835 812988523 179100863 702113205 310857786 987562953 800724368 929924428 988971538 999506661 708336484 806324623 982850850 996588134 32835730 702877216 566147820 885878713 827068602 837233105 349321863 870103164 651978520 870419406 137976377 476581693 177682172 241321388 7939964 214011682 762925213 844977230 767953537 816842005 94446602 610965962 353915140 987562731 270121618 613262939 353075616 927845251 482281432 589213629 425799077 649183207 726857391 790639857 704596840 935637496 269656007 677075446 866567801 909308413 910125998 989264339 22117346 952547919 884777857 978342676 165281030 168086933 531555179 954505388 644347879 866420564 947843539 953926123 354726592 783490153 271478920 323950994 30540056 650526915 939792785 969982656 680716441 991410591 369054082 660516960 128136145 871139288 668633344 826300958 696497666 849000537 571191418 868336938 586282654 742159483 611322598 644245005 394518727 625179882 465336501 465692529 538470080 796550210 131262605 661591337 484244563 838109332 225965638 599004307 800863571 867620470 944936079 958907542 637819892 698995403 557627860 796087116 752362507 793808926 530622430 644766535 46573319 938691583 909260589 986321566 483009064 943119392 802515954 939448584 864091525 926450606 39543079 676463328 446659697 617241814 277340403 316948258 148369975 519694264 78117645 106070818 576954251 881687027 22467113 289575809 489302150 647735037 59082250 189807704 196660827 724842545 563909767 735826876 893678716 900774318 859900736 933124068 718249689 750776244 906614897 979757398 149821348 300310225 81699646 575590414 491230989 592026292 10956135 913944585 759850570 890998824 915943326 932326759 95702071 932324742 3180384 63779111 341633350 778677395 265415732 941591010 789797728 910802114 731543665 964568942 307934886 629015972 156809843 781965107 715108811 897980630 248995686 669531419 357907467 569982631 947292744 970804793 33255526 156983267 317728038 496870514 827383004 960945498 351333305 850294030 565202667 585238241 333736630 994877303 53262359 514335638 759849194 982773459 904229115 945954117 391620118 552766531 265061560 602489419 235027199 772603443 732983186 953196812 510040328 840388457 72760988 788535437 400459520 727177729 306394201 414008961 837426503 976347882 898379287 899765179 450744122 916712596 981439190 997082971 364205346 494395726 953631980 983124637 499651457 563992555 211901636 620660507 687544993 695813549 672255048 844920494 809853667 996564379 514232267 759653814 770867925 964514743 950703568 968083304 401736844 732074396 133776055 708303173 34332993 140853835 972728030 985765220 577367273 991299522 227336208 920257366 748931774 930339605 623972732 650488533 49269138 151797751 64461347 267291464 619722441 847004089 575375788 786351032 830943729 896930090 917599143 973534825 136087726 777249420 755596952 776516646 912761014 984254360 210025716 275493604 325701391 957856308 791163238 963201801 721135237 768196724 565313891 636635228 464961856 792562723 944510739 952035974 848889806 964121160 120232383 596803967 978016232 981717718 11926669 129229465 762567175 837508885 40412540 112960536 867759448 906734601 832774103 949945928 68760629 640936795 146560293 442403543 279473797 757363999 692061035 757768131 856482510 919888835 611305473 725735722 453069304 568509279 1430862 846989164 895973324 995137913 159381765 281639022 301263616 394153108 491347941 619442225 318798763 788624496 937325728 939574584 179498627 744210680 514728237 952767542 70104319 141459142 490381227 932936300 108455089 934220244 19492670 179854174 893057057 910577146 361369365 824199736 908940515 984692133 12308829 624143558 521011740 751265519 53705166 761835233 498024878 639314041 168361554 412047835 246879209 367379275 742456349 913201763 894475292 916060523 705361120 906112783 976809379 987500211 248897798 546484282 194675137 400372910 613958756 652900035 132082872 336255014 271569891 661733060 354165428 443724433 897451855 964530003 794520347 863450987 636884647 902007100 200396663 334135013 879967002 902767505 314659305 794753330 892679775 904542671 950523301 969353738 993937643 999090082 997831308 999769117 20592254 983221055 117575410 974246237 23722360 475856087 74006506 595062078 290350614 527097328 200411373 892421590 878023100 880077087 105810742 991120932 600152044 936142488 248943703 979657269 840491781 901361294 741738659 927047441 617844099 777545086 290379116 630923091 111597968 173015693 645454994 963031485 504518246 793830069 80944523 937053459 61172473 691295812 884260411 906804442 508384766 976720094 576008923 724828770 740463502 753558102 849201768 872590787 637168473 877342182 780756406 914407511 238565531 759467061 227537537 502418796 303585920 977913178 932250318 955095181 850035715 947579235 958842815 977201227 569253982 614377794 482687613 977196896 35146661 427108266 600074146 712279313 76490907 267769382 508594424 779300997 553331442 685982226 734994127 787630455 452007872 790114254 142645311 915983177 346880870 614470458 340019765 852855852 358475394 546331226 734871636 948732572 11383440 902992028 713201614 941368930 710201200 930092875 313343323 702571107 746655316 824144612 527115213 642279971 552028154 688976300 484939610 720144446 417033084 458035838 178416615 215132863 129295533 575384743 169265692 629796659 906569159 964548981 387828373 611147323 8934278 405042223 410582437 666301084 896591899 959635159 159850630 703780356 681830576 783190127 947247915 960772459 408639981 776276189 8122196 641553904 663574680 686484157 345699796 729049490 922639242 987113630 461192847 831626084 205552568 206570410 199328627 498750246 880148560 922291812 934087717 990000056 560343143 890787152 114196891 875933223 148727733 836177016 41408186 153486928 666088275 848680056 991485499 996724273 897534703 974621470 28469850 798437584 520985985 706591599 891730827 978255105 504280627 685182626 128583012 920603026 328641565 829981962 162156888 817504285 382194273 502375500 754608563 919493965 957948608 972651466 892691641 945260285 657826494 783488843 199499791 609589423 226453578 885260134 494444978 901441058 636220504 642410484 233230479 945373870 131130565 246813665 60222723 75418069 149372358 895061688 716849154 832636958 600453019 949749322 134966221 626827993 126430595 442309436 273708480 605470515 83687951 952228538 694109939 963707859 520002243 751003924 575715035 851099689 771197026 998937102 280628666 470528199 971687106 973332849 82891946 859582446 878608132 937615402 856715157 940857981 532004372 698169084 957879544 960996442 991521330 998480958 798558511 874278143 814796504 913157339 106457704 566717247 774692388 895842226 465619274 757383457 42016790 367229400 485941279 816706750 107078696 659501499 855020230 939730968 837622471 940083167 895575018 938854833 341072001 692165896 952061043 979532068 91674387 179598949 386457774 444724225 548250801 727619124 310265679 495477542 768694861 918627155 709037952 735078060 510857575 653184982 819102073 923677952 550362540 624620737 381082368 993170492 540154180 849024394 76968722 133461532 358774432 762522228 208075136 230623992 41647721 338053104 674034780 753873674 263606862 613974355 226004326 469606124 358567886 810665024 914771888 924406895 440171485 525801147 594945421 952941887 510603024 906600585 539622907 827640636 244809682 657960833 859772301 965930305 593019558 930871626 62262103 208216379 507757100 778845875 348827634 555186255 617968243 983187669 980025300 989400233 410500470 730395433 486201583 789977519 258378798 561301360 426845967 768507365 749289238 800221001 323373938 590876341 829926810 981606554 332261914 725814102 348265417 863888332 925866616 990951143 138039648 392606956 516432334 920839495 297681825 422959458 198568766 359225216 87002643 881394202 419180682 488862780 605608490 972453669 973400688 985159802 102644528 355134596 516760274 614228315 392716818 764044109 461649875 825725058 760611662 910085878 6940226 665883656 129510432 903133585 624629601 954756764 229692463 260974172 955101341 971574410 59743653 344980235 336077613 721446115 543365027 942843466 395276048 667940136 203232911 504628228 445641499 570167370 516116621 604672979 383543759 823944870 367280537 575486145 616659968 884299014 82696350 286930368 375050337 514370992 310620808 834862248 695470905 821188669 18520812 805409404 779674321 809611874 12958205 776229835 783447194 887750358 171594894 822959328 585826548 696328269 464114804 850637424 235316015 519714772 810216951 880265965 246790989 482082420 177482344 799037399 927547442 951966568 804118685 844794754 232880757 822216782 349290706 658077676 198229142 226139289 668179950 896202089 999950457 999960837 808858402 827687474 809257365 936789826 936883336 939183005 327565840 711301646 1143022 186498786 225932655 857997767 973545117 983619148 24354263 971548406 973978293 996723405 893482908 931987850 985741695 989218542 267520172 747003712 69860346 754682874 17051892 789063777 651156167 953917700 36140021 329936988 378567457 766218732 617188473 624820300 843430357 863507075 657376286 925292290 855591443 908294971 223091917 648571797 518497752 561973808 849096233 999668806 442228916 999429411 84144373 450031006 620742048 682070445 191290186 450269362 971318827 999075439 940143008 988388923 731197432 929182901 764605578 936934111 422395152 896394500 356841684 515200406 12661073 111237907 161207739 245550291 510330697 756388792 562783879 679795223 794710368 930608703 66550774 271744453 10792952 792585897 753174116 948053677 440148693 898071970 283694225 629432886 120200205 135355191 884685870 907800394 300513280 362675465 56399291 588995959 910071509 958361999 72789765 830324690 226919388 558521443 925347267 980046656 184063505 920510653 80974952 685774735 536243356 930703998 351741833 954241350 360718223 740183240 63213449 637559241 63849690 908161778 158121198 712616134 334137329 575457924 900892118 952710776 476474932 826202239 714879155 873853080 693052099 897594490 401916137 868396418 397934405 957773903 943749244 999434828 315231271 638330291 34620053 840955264 764990513 859252075 904290138 984269616 102115574 602427456 905816526 966372080 21804404 549278721 874657312 978652358 984825387 987870527 694718367 924850572 515970901 671009592 674260450 730726830 108860864 329042817 863829906 990389245 966013463 969299914 947668376 948054203 280412766 868312134 802144458 944081947 607536639 990119012 562659330 804287527 505376633 988717240 7133213 504025495 153830354 803697427 517750909 934715766 288410612 390657337 229503103 644753939 777487291 835154054 196131335 393670066 115286412 738460627 462737812 765602175 106832395 623264758 626196838 757699500 55469129 851624115 255732844 996894094 861137132 957443064 154475964 940931792 891733263 963905000 722632405 854550788 796336525 802808799 310551967 519873869 103189382 344701821 769875339 940704161 746191877 799700631 338903174 643042591 583363690 776878566 113395845 445944991 20873911 822452008 963718803 990018328 305884822 698783060 540601960 642001470 559829192 796748920 564650488 752214813 707177601 954073246 406910252 889240703 891777813 995568423 667589913 763767628 726745334 777981238 318780346 804389381 406906781 882452968 62164218 160918233 152256980 277539803 682351032 875528572 564519383 797822306 82805506 968302635 438486243 932135157 885944460 999197041 473278382 597441395 665491405 789788174 232730332 680323587 124284139 806973126 555067271 571523203 304154989 597255319 587496548 747865210 498331146 542481079 657452254 666280710 983716540 993057654 507525168 787605371 501561355 601823352 112278477 321279748 577042725 842562121 82564516 879459528 38080073 577785282 540084526 590369753 119989658 830201003 5210516 102864687 395941643 657345635 752593981 775971931 377421753 812227907 77608782 608171487 273725975 283177332 68498531 74791119 7384238 913208302 653395104 742889433 879246062 903072914 908528259 910183266 509117499 968588735 743436338 805556755 691713860 851323335 920273172 926027442 189235700 767402318 912945856 993089982 761445632 993304059 314323246 334064996 480922721 765192461 409486582 701596497 866535406 881972850 869341468 939996798 400984629 543048632 533519684 776914352 505533033 899971483 201866206 285196078 350337872 553319430 497963743 681300507 500063295 566720602 997776565 998310714 421162415 531599678 157088888 782786859 346423194 969009337 304461545 646399718 354296144 581467383 31972677 871346965 864448394 945667437 827627508 854034787 392608656 636096462 180903336 878081981 780409414 916971388 585314335 701039767 44290214 460160647 818909860 900528391 812509534 943390015 784763618 998377723 37571705 912249789 445981753 848379907 773279816 789277357 594038664 753645726 873095078 884869133 65924144 298539097 361759951 593013410 843299301 955776035 665590431 752264566 18727823 114505622 460928891 779299515 259909025 600924902 769686911 880540218 175376672 484763116 25562744 977251277 704835476 829021737 845213467 864286309 50867630 830153422 278703792 877704475 849990147 990527296 728007316 987186158 421844110 721067954 49912614 688104320 926277168 984482035 658723696 773181275 420906266 744949816 625808640 997195150 483431554 645821311 464697796 760683210 761112905 958858688 344260517 508214340 194911965 970224359 920513650 987419392 266172599 792890056 943070405 963186321 339182288 358420697 164189779 479741669 331653258 870156832 806070721 940073341 870434372 947340465 603200004 811798002 283975496 570264699 88214752 872882741 627629983 936297768 938826077 951545177 323670969 900287764 374855739 549540481 802904232 981176379 615827277 939050318 46464953 490748414 577253630 977567871 880598970 940196138 610353293 892552106 238737020 488763628 191908778 371051190 225715894 430483818 369540337 674725751 394174788 818466210 648309274 818955395 648828258 770960243 357260302 782519099 163921875 843418245 303493011 892450856 293566881 557141816 857635594 921471721 689397456 887620592 769522409 909470289 742727758 823345219 560264061 771189063 721695979 968278123 249140467 711514109 115881599 823536178 131657040 211962946 992613490 994965275 590280712 787800051 438077392 619876209 156559460 613773973 51098681 843665514 413003054 740709049 279904367 857832973 127459584 226864749 118566455 388599911 483653447 941402900 247948369 441684441 199415217 658539357 521952532 620819977 799421091 993307928 745422231 802189450 594974333 750376265 708670492 822409063 529869495 623907404 186350565 477976511 576264341 697538941 534980630 898775619 115595631 677494734 246984618 768422038 293117990 529684041 449170181 665158203 255404719 987826491 533877924 820031493 192239074 222734361 13103944 303712228 255684626 482799953 333455574 818975586 785274608 829222683 895564022 977919708 376548200 608961233 735658621 935221593 639050557 928060265 739697654 806782806 182337212 656078792 63563760 823826153 759248191 809485922 797753076 835831375 124663588 886942668 223076301 329745893 53832137 559851905 499955224 762592411 456361426 648994881 739040583 827122999 82003948 118005820 337757057 612109347 362407025 379595597 714529881 752033391 253249522 953913301 890932825 939961045 14279835 569226201 215002695 708194764 19532918 841773386 444272438 593850554 280652476 751862322 478036075 633270174 953730642 970290316 625461735 840308660 903208727 918172699 410874973 695757636 77141197 518887154 609799222 642240821 560639627 984997631 351565437 369655431 137384909 180099253 181384903 984243967 223830559 274185377 209480688 805424885 729722698 824470426 837756496 846581618 806592371 901319951 310355466 406621908 249846383 739361352 902270902 940718007 808608353 827662736 368248364 923792189 406635006 851804893 73587108 738692119 647759410 756837190 445811302 667404671 753767371 783840410 387834300 462214979 286366280 720031922 491879596 752358301 637598560 812557388 54194779 897266429 383308044 742885106 420573395 613849153 823916589 967337695 63191395 67093048 708970358 806517857 12268865 343075400 140725868 230664303 646888634 781332140 688376102 869301184 404250161 910958472 82051008 521016790 396564563 657255454 90425706 166488793 774538007 828926891 484958783 644878128 569318852 670368228 940143425 955085702 301337702 885884874 921341537 944945769 774117049 786875956 171472502 691159112 686402007 749223728 4200186 697176805 434441346 900704030 297770694 659728724 238715460 319027196 67326633 308836902 775346497 898859055 495289248 717984167 272037601 941069986 991381510 994397766 337849075 795509417 212706316 629708639 112261777 468819219 940773134 960878411 477127525 814546138 897915759 997942637 810364029 829934461 278365790 894226652 233364442 532872042 479222129 818002252 944156870 955828134 922925193 986031105 794701622 927395791 790772681 869124865 343431511 845467106 71828120 732857416 28753053 592471125 662214796 772985574 666814835 715300386 576330998 828918894 697851040 871975127 45831285 429457311 588902661 933275707 949531741 987064813 76298769 327091461 300480195 615563516 508049457 637214176 612563428 884558672 571903061 822057959 706103953 757572562 371060391 414209720 41722305 629985352 68257612 739024904 57321615 741927093 555825407 966416500 413084132 944111385 391842251 402609453 591900541 873351166 251110623 391213088 489236276 960526331 172798155 338343455 556528499 799996622 668185360 790841432 888302337 915734391 245574098 632376096 131633892 256125995 848340189 914501873 165615699 763556886 858300495 891311998 225290391 227956155 363135591 762659851 451588437 854041289 374827571 822203449 495629363 719113600 591017450 643925115 405240798 843277145 269821399 702868307 677378978 773933817 871053046 937687022 369916570 830272595 731886099 787001067 733794369 982512374 535936090 652348256 293712060 683306674 85200344 386750515 467839519 999600032 779968447 890739896 866815383 887529605 604106764 681807622 334625367 637943076 548258259 836434678 911668701 963746920 766839533 813944633 620220382 796305234 794604004 831048725 386182907 870526444 723447469 812977961 878723255 983074881 148496725 659261311 946948208 955078602 165097306 983615874 398699962 678227029 551376455 881641739 619383781 748420062 769714372 809586608 970270267 990074529 66425528 339037257 54870237 937242462 441925064 626887624 124134961 294850774 899396695 940526390 600494778 714023232 877955032 930121835 375248228 739846685 145826818 929993712 330324662 661388781 71915501 311870119 146073408 453499065 521647577 868576088 447863029 969917700 223025090 564141773 543777977 553089511 757977831 821773061 27993632 881317253 396687266 982586977 653549870 877872774 827046719 846275971 496807288 683660113 72281319 980307906 345949436 452976634 36293590 581608880 602767738 882619685 430908279 913471173 840349975 878181379 582903173 936432774 573414286 702466686 600010279 966701213 531616376 903013436 42348766 843611949 620865436 846991248 922906420 924475854 413216389 433071392 288902020 451073180 248863373 549114525 226739279 723910649 257644641 604058597 224436209 260317036 463378993 974763843 911128747 933571296 179945778 697005319 697932281 949732468 483493624 720424637 594950490 868524728 229136708 929035132 810633784 821944307 577978356 698216991 214487916 504548652 617223112 785641189 729823692 817608935 741568921 957941294 798514170 969543809 451848709 753318570 701517846 972567082 281695530 659602236 630437631 855645907 136429847 470419867 309589667 662304508 576335188 664120761 308848628 335341464 173747129 659762313 219937615 358224923 936478084 993642231 543815623 959887146 950427045 968907346 258895656 808809226 183169154 192809204 718455880 789870304 778360377 915266568 415944962 666925466 18778466 722328254 135830511 434565354 995512853 997787250 249861172 945991149 437651232 561352312 747563826 826571150 615915944 760051548 584974011 713852062 50877870 91851953 323534056 864275127 748144058 908897927 929549674 997531604 314825102 804328892 252965549 930543556 701996108 970578261 150810896 927946219 387258847 517278515 381310496 982408315 760368791 779378075 467046978 534198711 551997476 937044313 454906075 783788186 905211068 916613980 937638448 988956660 895372798 908712997 683582541 818005773 188409386 927523868 652113056 796569771 28679704 42691586 611706239 788989650 80733228 452221298 444270842 960088124 821066052 949756059 499978056 941818056 39112007 993491565 933219680 997706513 468181449 587763283 510351751 874719180 8813293 725837732 686194894 951854251 481348706 966374794 229577144 784797569 349448038 903442859 636638450 702447388 249962349 712801796 108314930 962532785 978045368 987533147 256267574 547994470 998325632 999193117 688098583 758966208 672173668 743751040 363166206 694576210 859394583 883963770 843717046 952842470 409876348 704113428 5594863 593047913 556524194 746188345 138548631 880923939 856157389 875430011 306215215 779715585 540702616 987438318 549806955 812846097 833584877 833810849 57581175 206146485 776100084 951564996 452827082 616107241 685915189 916399158 194969167 537420255 612865520 801672583 642222942 768743172 261063030 347641189 668409356 876104868 822749723 826898062 712730632 721673743 584799989 695626940 562642830 575503677 940156427 997558387 14680771 994093637 723969544 784409434 75517744 448891358 763999210 850815118 446607111 811818097 557370728 846564568 69473208 188140470 123154855 590506260 133167733 470761265 452089262 833704229 689954418 749601095 592735724 620975330 724441604 819650025 332179571 708583708 923753164 933950469 924724536 928089251 298170112 435605747 221520534 900067441 312656042 662402484 750456673 837164248 664526283 918910887 136233398 723213586 521145654 834181067 84001699 166046063 830121771 985319314 476400512 889935948 895643418 930447833 810668349 819141160 774560011 962015120 374411024 391803523 434145938 610126105 987566827 989951512 350494606 508568722 506651623 945347620 654934495 775948444 442582552 846924786 747284370 855264372 380909143 572097681 775749444 938454743 750131480 879528406 85522989 776269202 262270231 930370083 8257823 264621800 874258353 941253601 373552125 676571638 537737051 931560024 698467564 902817055 389206723 795947927 968237799 973059871 595584020 952071003 430975787 832751927 543283625 630808362 642251453 882278772 243583499 546137250 103605028 514096206 967008754 968322511 490422078 551634078 647743639 660887201 585983115 803490811 741159951 964934830 574532060 593652974 155253302 961885135 811915908 954659860 290310958 487623693 326168964 469153370 397369331 660909315 124413693 141795255 640696989 676254209 35952227 977312678 809864739 960861834 952180148 976001696 514331056 920207085 606418873 907438844 187982030 391107830 999592781 999901982 694026709 865565810 585322054 763060978 109022440 849721222 654377690 943409861 293750312 611931452 243326000 532086796 597867133 865081248 731314652 834184329 614100334 913151171 885691962 889803707 870103172 964484145 803297612 955594787 565029924 729051369 819273799 833998708 731693206 972578152 445669923 977461230 148496453 366653927 381180291 461804570 7975565 841465482 247478 271933791 209706741 330195262 171679199 524374423 452609386 746649544 752650103 939544083 495186630 584514509 885615295 942779082 435776891 500373260 452111935 472269649 382950905 546089982 262302410 524088208 797622998 912529862 314956068 635324731 323744695 329950212 273630354 889462520 434970040 947115013 266845852 767926950 341593856 496038993 557128070 843284745 915396722 977618792 846516030 899839021 248013549 940567048 505880331 988276510 495650901 531240879 437148391 945534467 194294167 281321069 790790594 866835166 189383410 348575080 100795643 759258005 271042965 818613521 897119495 900338810 294992079 849249182 734612824 976329304 749153148 806805021 361316374 724254352 692285437 907086317 771435642 779848877 386720757 995317219 896021250 985181991 758738746 979129229 403926655 862302538 626210815 764529389 677478335 916829712 462136076 903637327 758223384 954644208 421825230 746067764 421193603 945535216 581397707 903125871 976410141 988306430 495432606 928706963 331055791 586808649 64102455 354160939 149814370 199575959 383846735 697705201 154185901 957483465 212073420 621232372 164097540 373398526 339889374 991580457 828710471 961985595 441517453 530073452 698312704 881630716 327230325 806830283 279485826 998877825 432682718 676138692 406778487 852379777 913992402 972055025 463620825 687187594 512556104 878719009 957178985 981781468 605677119 992372961 215260245 997254974 249049080 581574838 781815290 892288876 225400201 928986874 392317758 910874693 411356102 740934472 773595785 934241283 154085958 283507251 460410182 611260687 432781004 453161995 168133813 381577756 509757165 632749338 462750307 971944960 958157024 962097722 453205215 994280737 22256186 414148187 173594649 267080180 574654527 911168830 412203059 545565287 344682486 690145180 340226303 568413536 858938826 882204406 808524527 909770677 678294781 926761128 257976455 606082744 139051565 822167540 359810991 407049272 817741456 821079087 784476155 862031761 478663903 606810714 405932659 561065207 79950235 415783586 589159531 596575004 478621148 924248690 867008493 921097575 861591869 912054945 302005020 940315740 377072150 508890740 694382675 969734610 234410816 616673510 645687198 928754125 160967797 394980126 25022420 142347059 933532026 998442503 985516481 988617117 186375965 697523061 578524516 899947178 43473460 563872090 525516478 959056049 676702393 995769198 842718219 991973645 667499496 994703396 725885562 918987580 815896480 984904344 305915527 887579248 823006345 826443446 192058946 338076950 37639203 390129644 284563933 898046133 693772500 960838540 712178284 893855798 743841904 748291745 380302563 479588091 195921434 316286688 18857073 747660637 929397542 982810113 952717737 984734706 613348876 711022737 633718834 769162574 811280923 881918778 666546840 789238959 657866590 929790104 806742082 978709287 755300510 981021929 894225433 995845697 599041044 718651315 138296969 293788901 968316378 968364522 111197518 965318141 705244263 924618619 637882398 916955332 604176087 776771798 332363971 980212467 742267868 751456444 900665409 981501186 684572281 810199033 620424380 656945569 574051204 868970164 377239045 750404492 988905926 994036685 814773290 945909337 127688933 584526228 157035647 624220877 773396204 915952083 688663325 748905470 740301094 811872755 529712959 892624642 473309717 658778927 249306037 986475231 809943675 918933159 85235291 817358634 40715475 207253238 94416132 835376577 736466231 909714803 838458345 928904533 952235645 956991597 855801625 945960618 381107761 405793328 347126400 964948054 9791397 353859519 996244022 997910085 894363522 929846130 671100506 851511806 34285763 263278615 831898376 995882410 459611852 465728474 95059050 960135185 291883729 485943681 506007363 920128080 379131684 632782774 416627266 623059877 485576720 707703792 775053795 917085267 364357758 637500470 116809646 380690520 266025997 852359066 733802291 804169456 201393452 757994589 758105999 884120115 344527769 578173120 329517152 672035237 617656629 674466181 407559962 711005504 194375584 973249203 154498743 751935635 983041498 997930382 550190725 737241223 138361701 440059429 764600590 993267565 263359937 646839133 650087012 775859785 588458080 787811761 214480899 936989826 940677160 944427427 847864316 895507300 359122420 643823957 473120240 548368894 177570966 982957863 934178984 958352247 827262877 913565822 783061396 891310482 33308887 575467920 18633261 595850059 434865742 665721629 468442946 710626706 813582818 857151631 527515812 956889993 523955516 981667564 934342472 994539862 678795095 944002449 844828275 962438267 518311139 563922198 508535343 650238108 578286116 994995516 665780271 826169583 511245215 956268485 854354362 858587218 783033826 887559622 733829664 911992364 971954299 990623963 16894358 808690847 506751281 790794343 837375257 866929990 28044353 611590629 213023934 239258222 755270307 967489496 174632923 463405436 303507061 444623626 203508988 893673017 895016080 971185082 820259723 840997920 681356660 716198595 216450029 884964911 893662437 947835677 890845476 896174415 325246298 971931708 57882206 554797057 624220288 831449333 349150231 859230008 740221311 939598048 323881923 833800638 551531638 985836804 397151346 831473828 463453333 785020487 830098246 849857001 334036274 419537438 638228563 680938583 419219234 967652577 156305717 619596847 250194338 863346561 406191610 410562115 377977689 737329415 731224881 907800684 956346155 979907377 493172260 527127985 82546236 201742869 522763042 794080289 327726196 639459399 878815563 966458594 969450044 988237754 75520881 559096636 266489561 696680365 445187034 857193250 4891735 989099111 464548864 766252996 321582549 602948557 386744443 988247260 979167847 982781801 602468461 717667631 55475659 205692782 555067787 775000364 455846053 713677940 815893213 971835178 412361759 865973698 440603649 635884357 206562846 814963920 108833421 579145192 891701019 978702619 867461129 892296126 204944610 640930127 542957353 556470457 538595998 806183848 170675902 511682375 873148094 937370129 60873096 93387017 496735235 625793549 243815915 318344315 903800035 927027313 643939638 797402333 594385567 764415551 715675131 806474241 32423793 67391007 210275465 928772244 751811 317617023 987870047 989276737 909876057 965702962 893897672 998684819 766049844 885285177 524824878 727699634 59512014 786723980 563859701 998695487 573807192 986554778 738615612 743159537 214012786 782260098 691734766 802526455 689639491 939685624 998701014 999890243 750602061 844103125 770031027 905075171 155761993 241162537 469285854 652641926 103297596 214723209 272878557 695582243 473260384 901449545 627483680 967796018 317221774 635371826 699830289 800810340 799043104 872650629 770901863 856887565 192901260 411019364 698541541 887423413 282452032 875744276 271873690 520320594 316248975 496922468 534977697 858312005 650600179 762538060 306258658 463275113 937219801 947108284 986256747 993616330 58523389 505878800 273556729 933016311 551616549 713989548 906296923 982139118 485423007 752094610 215345482 993835617 415006936 754549435 547019565 652561175 477174849 918591255 935029101 973755100 920119343 951083829 586086890 676097934 214333871 221635116 958900470 961092500 260456246 801873331 945478379 990682806 584336080 699048733 974856913 998033485 519006875 959410935 294296203 703081968 180624871 742245240 217909350 397460455 778262055 811711679 524845563 537728521 366866301 607872774 449517191 745205906 529952199 746841387 116095457 599958800 426674146 467415673 476434079 729262806 382124349 457080216 8784475 124919542 291005115 939771564 451116208 851456143 781484343 781489317 524404411 928379127 85024905 566302880 272011165 422153036 592371316 687905826 478065899 922397402 169873095 251515251 257453571 627922881 59442548 693262372 872396726 953499588 149535904 222917935 506640804 737362619 469217722 663890355 933935022 971863133 303155635 783065405 81746729 468382237 15969382 796977160 5077190 853480424 857684135 868424046 933989393 961064120 832694219 950045312 968944856 980019995 502392977 839806060 936883711 951162940 406152894 450259642 772350980 914437599 366226532 596986562 391992165 673873925 342605786 522711138 441959881 929338009 917673147 982407911 121686104 761798394 233810268 623758368 260571575 339308883 46234500 961691192 909297485 983881622 135147545 904609916 349085323 998278589 905759006 991131216 564127375 611071495 236921046 981253441 259231834 844224419 991887215 996353458 533363455 888008293 134745303 624587711 764723223 833301260 292526852 343845482 959115427 987810885 97746258 551254211 301707470 368137344 609636855 696919927 311246498 595559383 487133019 870153744 618965336 767106397 628692819 697821813 511069064 791212219 941954620 945782153 385187327 956827518 166622957 958544786 281508179 507391186 354154065 429309131 976798440 980504274 369629009 470816048 771854258 975352980 834625806 870136897 954656257 971390749 267888041 879769308 101016762 866898032 656926871 775381294 987581722 988562992 254312564 940309770 988291132 991333062 121259154 495041145 534524803 882402498 835690371 925601592 8113773 286960654 243593909 958980703 996504358 998281417 232375443 909335251 708935287 763398562 842079757 998367149 689576790 781014215 830626712 915548841 923838638 984551658 345024372 391194409 494562020 754121338 67514974 851126216 754413917 972196868 103661005 667587179 535279326 678129852 589598505 699046465 892954411 896991356 863240797 874673868 527000592 933348872 484850433 695583805 173625451 182732292 223744258 750525907 554596795 948031108 785543073 821927938 177636374 641878659 969932121 989853550 778247314 881473342 826752553 864871484 356782099 978108931 865361136 914981755 269328243 651261899 946015999 971057313 922306103 973402415 348678999 455355630 708741173 747295271 589306828 789502767 317617163 796305823 149979986 440795350 274827228 777963189 853544500 959387625 329420249 447093411 246347806 397282903 90421984 175178470 241598389 964417512 475320679 806541506 820642486 910103961 638228611 894263492 464793897 949045496 873295049 922288030 640481961 993325519 718252718 839756292 561889582 617174232 208229590 901269606 52624962 750901602 952089812 952377009 984233784 996968873 51762444 366056918 461932165 581625477 491542942 737520745 636521741 705003216 823449931 882954557 889686787 903895845 192051313 913379760 1409363 860002902 275416764 524178511 776814272 994646797 347612719 511225381 945564655 998319141 940359349 991361895 177607325 750912727 269145011 313383500 667833993 883591964 26515598 849554647 307023636 977234516 551777534 865415290 970544341 987040772 281205882 298987503 44977172 237939596 118876326 604415792 123916920 441953158 724992487 856712322 228972028 703555949 106059211 949437128 233645322 880817947 656792080 930752424 131076456 520918119 972572687 996937051 335349917 868768295 31197826 104473797 834866481 874679455 258876884 294937476 179378327 700665836 650756948 919436118 971326814 997272040 744538687 921524273 718894331 939054833 465313554 625850145 310646146 995388235 408584871 690253785 801906689 827956416 803494720 942616100 210103976 401901377 100551242 429411671 294909779 525889724 611366739 611657643 885050596 931116132 631945779 739756959 291922779 424755318 27115629 699527250 157340859 620375469 704043201 705119484 775720961 852704616 471697232 683384725 2522875 928883888 367472012 541701569 587646430 770413678 819115798 949361461 692341405 987197091 873183162 885247875 891477208 958606763 816446828 989599356 205799632 986127406 308190862 570951477 734895131 886456917 819817569 942165511 731983546 832543154 617148767 708801178 153582776 162373679 590949323 978330208 671662199 907242525 835674093 862472492 404073360 462577920 901743335 967994209 446932586 844238706 467598643 491174299 64973984 768191980 433378929 898583111 380422631 871720494 255706621 429370883 910104071 993266965 672397211 754876940 271014732 913273728 142980052 884516015 730047738 976842115 727757566 908693226 331009481 891835399 716657943 866836053 75230095 151529415 923000252 925909627 941476327 994708083 358219314 479924688 183539780 574775945 28264558 945897876 269670627 333401784 808430085 834938843 504764677 871055428 698347361 973193935 992691920 999499946 739652846 900535303 715573771 987412967 352160113 865519716 492717379 954402998 159296671 365522240 6971783 607652575 753478077 906263758 161459285 330140153 171498747 558103008 6669431 287004660 720123127 793329261 782650073 952340544 513060616 788186944 830351491 986244766 549989211 875273273 600565257 700101598 73407023 79860686 4107017 326956263 987958192 996191100 264037650 746660394 666504320 938820062 292056286 995687127 176197112 187716773 192599519 332180251 162288611 769999157 618893972 916565887 204060848 534042258 17435838 272025557 956784862 991469213 256141534 425111047 473055349 811221786 406468454 479641566 389032566 610941923 663356331 702750309 90509457 532512406 453584574 763433598 787176040 904795006 385848261 962005788 347739097 486715353 653306445 859859653 430630474 765415682 36491249 634059103 945437680 980456358 816443510 869410846 224229713 253905361 728836950 737459250 826863887 871972009 285387503 489364622 940028333 976046599 939981335 997475798 603229205 785731090 496200835 931436939 874304438 894295958 258081063 354214778 67780713 732765187 87971393 564369388 811913946 896591240 961784807 986320518 523937462 648652704 436552141 561659343 364045969 626198341 745768663 990512836 624948640 893218444 667173398 921589870 351709966 514537182 259162549 313538791 30937404 765843737 646868874 939185582 940936747 947496557 399282844 727447541 849828235 907316453 617792354 919666396 374612250 641016601 264680077 676435775 9737780 914831758 465640091 881440735 923775676 945153819 238071707 658108578 524329323 878392444 796667898 970951133 137684819 799573037 903705873 929399308 32003398 148255188 636672669 842276079 54485098 316994288 794842218 949378916 895813427 957477340 279173066 668832746 741022388 956754670 693823706 710674616 975553667 977777778 181807883 514266339 353298740 877981469 128732939 826684481 52351295 410278651 992614466 995791519 855941351 945462036 982888630 992989874 458397904 506135491 151182317 154376307 212658790 447155486 543372502 856233573 470463429 493227435 451042882 863614024 558294592 603403084 810345123 912134649 389039818 670683705 336431378 708838820 740283667 979105722 309644254 512050542 786181186 871305402 852021820 945116917 726469983 771368343 439386273 781713023 682926676 899430890 406065074 883264904 534970136 739314530 655051642 706759632 364605783 378889290 292645009 666582917 378274848 897988259 535886565 582061728 340198672 537126709 318834439 721062909 937435441 969982363 211277521 411213503 874520780 971004526 767683326 792533304 935527346 999799579 84946681 718039726 532046037 679884844 6030587 73730395 819632420 857430238 682657901 932046395 703596364 966624937 226415379 875957126 942051422 987371740 594678890 904097444 631249481 770894845 647911471 654036531 333979852 444681473 972469068 998529177 678339130 920627004 152841164 331522912 802531627 886726526 131390807 851046715 371247695 572936146 371532944 464242461 79495928 805530439 722065477 970093729 559892420 668013585 641763702 657904504 316982888 681474812 649415424 969238146 29649769 434332140 543866297 591732490 82672449 85628987 149059724 414744053 886970974 947814891 112212749 974458424 903361569 971620253 475371335 899644719 676028251 987808297 967904415 981537707 617762717 715940964 303168289 524078760 9819599 754136907 751651376 753232294 683053155 954796891 336223130 414439438 835111570 888105736 521937258 610234605 236348875 739446873 587196515 907664804 828689608 844923566 323116697 699976034 62361870 942389602 256323480 596734986 28091477 949900449 841179759 895575416 577826893 628931915 260181309 881356712 886499248 934588126 690509132 698447724 40837841 449806304 845369551 951157176 81011941 755506859 192903658 434926064 215922362 554990404 74973173 341063695 775972934 982268487 506823345 911664480 305454922 446731667 432725747 442082814 57849332 256663636 677113066 708857020 896209112 984451817 113485094 777622097 931775234 954086447 668911726 891097120 924336148 979150856 722215402 810825505 779529614 790244570 912063179 942747912 475787979 722596503 758332049 767724948 416398022 505678584 611480974 790796327 694865843 735782736 952805020 959924026 520793961 526405745 57884992 216958510 520558009 879196501 389111161 429179406 790476596 923045546 904718881 964594519 262827802 887873107 101055947 946671367 908590563 925607537 336411193 524169749 872756313 927264062 243768051 343067016 369579134 442528940 819329731 992128951 420796205 435986700 696685925 926683119 444724303 614451417 919794893 998198746 317598880 761205056 984994010 992892881 728774776 735361718 446311608 607435823 633525403 905402354 734804505 844967535 682974351 728706635 86549959 115361739 813215837 826752841 795800514 832905301 655987445 684364875 572065705 954919940 997562658 998092474 524572818 665002751 73787330 786714203 404361464 707786513 358213826 761577659 973600550 992741110 498919934 809649498 377841231 830442307 465635170 956660745 686821002 714559921 506997546 947165027 600920961 847539282 477638783 729437820 962131120 999281908 572525921 800823606 549727533 590856523 871523378 989017320 564062932 842573475 153877022 760701619 190573442 824449871 226606698 684773954 758145184 934124377 615957660 790101880 441391706 524346664 113694605 218262568 467148681 884978884 199870668 932598209 932410449 988622169 225854795 497179406 648246314 829833554 901760823 936764158 29638153 678487406 997942772 999882735 105158413 960078255 498429754 802908259 952623365 981177430 686344104 770572705 328341011 420581119 159551710 519928215 23797011 150381011 714888901 938980063 1479217 300018157 499313949 565914960 464888828 675796072 3863542 829610069 887634152 951134799 977513049 989808013 869576836 922968702 705967615 981530516 459433880 678891684 796058111 910638815 131459298 952214560 801980085 828826833 437959745 788160945 594125478 717394486 862161380 944888717 335357974 715963943 334390748 895014785 84607810 481254660 493335635 758507403 585438593 841889441 947992104 969538034 844584556 891941147 795700995 800422759 271829432 953534077 892434612 934771126 676424196 753255302 110027520 283261008 203497329 354510114 597711506 911314427 851313702 966436738 251573450 722183770 71694694 423818964 961007650 986412245 201222677 530694436 18827961 257993454 276298640 731644111 256152394 933514165 155718245 890360537 395878567 514627615 785731069 852050170 70837214 809059781 177939657 971806459 615283771 790649563 815534863 965522088 646409918 773241552 686143795 787116700 392481990 622246101 561301597 972896058 432728334 671811672 987735564 999502992 939146951 946142464 989428661 990862964 649526594 851581427 19696765 392897586 949132883 983989899 712569212 793060603 90902994 778626290 841530795 954594936 126196284 525914772 643097014 645937710 639013430 734237344 252910615 498120789 655029674 836021309 660667060 805348575 741650893 906471874 720993253 912155058 502571516 948999106 69144547 299886741 260012507 897433492 624615630 956217078 196998344 448152634 344571562 767362540 685603550 954071973 158238398 193831452 613963130 907524443 974143359 984657038 571038409 605741619 532146839 927974640 958666422 987651630 21687327 181832011 336121168 729503266 94295323 478742710 714513473 963623060 318303719 424160720 319865890 671845088 84050249 908032796 450486331 505677296 745336640 917822791 643287717 759375209 395612603 904999741 144867073 480543237 803600738 931778440 313519999 780073539 400961023 742518862 956496127 960378528 765968691 877949808 906304772 987259796 415852962 878164321 569561673 702292549 493048369 840526112 631082238 909909905 475921380 711345470 882068105 982393956 618265131 876447216 967301904 988139125 291640896 636946450 495113863 689280441 439653949 888012028 780191958 917210656 873501285 960560067 688722876 848680027 223888307 722741886 77357424 878922502 63517135 572216049 763506870 916398398 622053751 791750112 228844816 398699659 69695988 788335287 405230264 502499641 862204779 982465891 315533528 402804805 819452997 885169188 350791220 895081279 966132992 978402722 378662301 578828515 29722341 659054145 481319445 973689251 184292755 483122369 975506573 997751711 418892248 874447718 421400340 977093347 14092231 889487841 209022116 995667828 489303421 908454956 956683174 991007036 409810616 555384030 16526333 746635843 730596325 998149645 221824611 595371001 459479452 970424860 178841834 914499633 82028745 515971951 129614014 766678536 120722751 997238221 531514511 835681579 463793685 486723332 958768550 999011626 789927255 877661623 125041213 330782120 627336978 749017522 508222660 602039985 884083951 950097556 792423807 996950928 56135739 777557322 537065551 740010056 634906905 789147509 534653060 919387489 871023292 912618129 938077643 952344672 94830584 351364800 568551079 760079973 231769160 581956751 896183493 945279039 937964433 956395975 115013691 556342162 594133299 672125985 519149655 529803208 170316080 795074209 692389956 879058913 874709187 890525841 384250152 416279581 699970159 743349211 318698098 669374157 602365271 791065240 349136120 930513388 656176070 911790813 141746503 575739916 250844872 750149422 724688465 741780672 432921667 448308434 254283775 580442973 477355487 863835588 99086460 615867791 171776209 496913640 314581697 891791678 874417421 904776691 800068719 862171715 208830869 888843152 430731356 997535467 884514971 959728103 36802183 900910196 574274623 794192665 296056117 899408694 69159699 608373439 816001304 839468974 887350853 959570461 341845676 840305754 522686557 762664901 934652300 964416438 992023873 995035228 837033818 861261591 971571589 993754632 957667339 997200236 483902986 604440242 928258883 993020554 88351136 619763119 524185142 564780443 980634662 992185549 268172506 666753730 469130762 923319478 867500767 902947523 378702341 919401312 848487374 953272212 909969143 980217204 263874731 712339625 714460511 756642781 431133126 609124121 902183515 914509985 736954262 922753159 745225184 902572515 983236191 990039388 873953339 879080466 26875393 339091052 729246166 770753678 95009081 943385851 235770277 305650620 144157828 692207998 763174607 992287519 604229066 801981212 600085317 849085396 757882527 771072990 566602850 786395675 67556445 888386759 668133342 753588401 2124669 828223303 681367214 743245513 311015037 638830067 344644479 924673047 323868290 506376083 63645276 838860822 420822041 539232775 801943805 867557321 284109706 947085584 805033192 837087155 57393350 154105887 336629442 833487997 299228885 585296500 824309047 971619258 822938146 900830246 739150928 966132274 653620662 735554951 410063637 758285470 357832944 975786561 27415045 335157349 716617878 808250840 676184425 815564481 760152500 778501268 409157946 845311093 65315526 215762443 47908735 517823236 279845407 874588615 436224538 828541048 876859597 909374335 920611483 922251506 355760092 732939963 626546185 820889661 449153633 716058584 503397419 948246043 511441329 728211701 938596761 941640826 804398225 969562036 987007219 989960826 280074953 376348363 11095096 768915621 713417476 847618076 334599176 689937175 768871539 952753684 749699538 836678579 276867017 657896720 6715495 352738008 409364374 740809393 331363025 738652144 116804904 846057506 355753800 598482300 700290762 938289429 650298502 988127641 596014236 815320471 920071439 947687176 284815374 438211476 349405373 980917602 476483920 778564889 242033842 332201581 978435741 986456304 842047256 912105409 85196314 511087772 828387542 830458870 811787534 843247860 442100352 796090372 899466401 900467288 235402338 396660055 798483089 979912666 90457496 937399734 534310932 974803736 607052216 755680270 505011139 917515629 400701649 962762527 622457575 862381423 667648589 714035151 594321444 678387302 175528244 386905563 997166052 999626399 541226391 890887052 89537651 898082148 870457878 917605641 668542086 811247381 155213707 842338412 743802189 787490258 880530997 975711765 839228560 949374782 390722281 424786390 129346627 148715661 25402948 242926652 25773896 906184146 498783210 531537547 524187692 743366130 18772184 565180955 359127209 694345951 572597404 629464069 141009955 157827804 674275305 962577779 791913792 931858135 687625215 953263650 475499722 670149121 659366784 913975380 833037654 987626369 214466047 461470667 521978295 987586798 521747199 915498528 609685019 763024556 443494373 818950944 835901735 847552817 355268612 454338465 257703200 837570510 976239679 983152893 679702552 692053459 551238220 895645635 634158217 879050525 876691917 911426766 582244517 767826736 765300838 867672985 512811816 962342862 748641865 819836245 506438759 534047834 11283001 297858137 437941412 726525046 616094861 855757745 785549108 863805588 758679033 822217324 895868507 990384733 990139391 994101382 242579929 993254420 790367732 897411822 895067881 927950370 368399875 948780630 671808621 808902190 434038967 444011055 744143049 928260093 971364596 972033746 438968119 692431028 538927185 750015505 296803559 937727381 372986703 729753728 832203564 833177739 411999592 682131251 448234228 658322014 779720617 954876665 61040533 734286435 63209809 762685299 904692800 985326495 574613325 730665203 883815084 969101906 845351413 963866516 109083564 679325107 901413011 966281757 380692615 888284899 400454871 737331116 842388161 980369860 987537412 993490490 225427122 840440644 167370853 759015759 652060383 740597801 696268620 824530659 394569072 801028605 513663778 750780437 501006556 882982905 745968318 836146618 731445340 952404314 945640800 999040021 633188337 860174525 177602996 967859653 221502577 444551480 327356645 997151900 221697463 230290617 905103192 913410862 645859251 877738727 979402507 989817555 362641785 968164504 665682121 936103421 627440450 649998599 344363190 784310070 786712934 927564104 894980228 899036194 528809930 794156626 722651055 821123782 291038296 867175025 406878081 433945539 191159712 408173390 555537074 855408068 381747260 514439385 783522657 935728826 29693739 993477300 732831674 818208295 600203893 853086154 51368706 140568029 401427885 952185521 513678813 955201824 57113097 61957988 840350399 891650406 150254008 237777480 511733898 591013442 220554104 286275347 423236582 709084194 290498534 432535288 393654758 473318166 184688945 857936842 879720959 950303243 190485450 717090069 75947118 420475181 62879570 342596570 421589591 718992806 353540514 776605708 398827538 855907594 611336946 778766217 657496937 964715858 5569585 369108450 133020079 479120168 462841985 770588446 402938933 813406062 915128122 931039099 30461675 569600031 311204549 700151969 672285569 981481691 728914201 809546302 104260332 683663629 130064248 521084252 323423630 895024112 973760798 973954635 962177564 999714120 145667823 651357138 1770045 42527286 586225772 816471503 516697112 549055475 735178237 766114317 57080441 562348112 943594408 976693450 311924532 842042685 218614256 749334595 779580367 915439528 494159476 647208933 125521196 585545367 518429328 942330500 694549498 960018840 366456054 844460696 558038672 722325983 195941553 983185752 862029475 906285850 254371328 750926967 784162212 901469039 593979865 763750707 225982015 529713322 571159378 672944089 314576801 320276635 244597752 700885164 179667950 446631050 32289249 983851066 327672334 723887004 501300377 612146619 895864503 985790872 864985454 975680371 907282994 972203097 712690903 834538080 635206079 781613637 648155514 690557782 36581172 311980379 521832384 883483312 686038630 769434295 732680186 856656736 361908899 396620571 162128750 933170590 368063312 901308627 796782944 826080418 254063731 482473798 605174307 834584477 662068274 806500082 496886831 603436703 54442387 626699359 146260817 816651441 250431926 457089494 139936917 339403742 277596780 324299419 565908454 645036630 642123682 955735112 597380905 610090673 380477388 479094643 914392065 972003238 573983014 716286465 690546630 783419320 60901565 970065911 659080373 778604878 187599636 366113671 321211456 558271577 148136157 835110020 613516129 630729102 702664466 705391279 876288059 898345641 561054556 820466259 751710847 932787224 370126759 981205235 894113380 952372257 472019191 571393408 838110459 881608784 726832157 885539546 439797517 879057261 260968739 474556437 234405329 667051253 2986343 635551271 161711071 986123342 919887430 969251847 943584710 951594211 130452683 702283548 730704671 972499757 776877189 798389618 434954784 976273425 838100942 849454967 348537212 399192654 524585197 985707997 903284670 979145385 699693862 777352750 921478919 961198865 214829472 932891385 457401711 567633884 730421549 934788064 177125469 402334852 919092698 970601710 374659037 866566339 581095413 583582840 353323625 609783877 772861943 968892063 677616971 748697229 645154194 924569286 729476182 749516132 747548003 938699157 959579995 969322699 991747039 995313793 83443885 606803044 178999175 600918869 691381322 944548103 562297491 978239689 771831677 844899610 14889573 263634909 341221745 892513022 915029809 950493744 686659415 903074622 269596728 447401276 318798460 538944470 515013901 643704154 891920482 903780661 495402743 597495888 379330069 735383694 108356235 394302524 473696734 990151913 795491148 878197227 588271333 620436420 881849418 921291848 403718170 514593181 315572291 872338702 922201436 964901567 35195172 97829015 304896722 573025409 232943693 634121071 57993333 492605033 853153066 982155707 377172496 551886806 526659736 856802941 295391084 999495953 519849871 912283341 902385001 969821401 185850821 650311196 492604628 788407078 488575259 681357167 699105614 992876107 222419703 733102102 206198010 682152650 98875669 368684338 949219548 986260037 699306736 709189100 913715366 960061910 850108509 951123358 521017534 706554317 152545820 485077471 342149408 380911270 504055525 892101399 745837401 903794293 177993505 707085903 102997876 266483065 796345191 972113383 723191236 973142764 850137566 863330918 584543650 847518272 265666719 853485516 340048242 769173342 262307186 521913801 571702260 763437093 716673728 741054030 336566142 978469733 345204743 425624389 314989040 575835521 341573830 971836209 179233626 388357959 254650507 522771158 856286405 892963980 257498799 707756756 264702089 323220681 504733448 909836165 830368481 997798448 595846096 996061252 604166022 872514262 822031882 964736440 27201060 252935480 951196348 959434742 76859605 788350639 977866229 983636865 546391729 736024233 695106304 771716338 637432848 935250894 946738743 961905709 293834390 845839111 457733573 851631901 450447495 524426604 111889546 797823755 966327805 990493848 774099877 862772547 878506473 920180041 534056024 787010571 186289629 366374159 145747474 446260426 442671136 715688392 772185135 988248039 451840645 479911020 178576546 296589166 874177074 999980900 31507294 83755318 3347052 678051895 547134243 692036578 989997681 990975049 906103486 913817916 359578457 580878109 648981286 654525864 564466619 841182931 748510905 750968591 429645639 673357075 967678344 984337212 410817654 445512028 601870743 970765946 888115474 926274420 95574067 360369148 746519265 837995551 470592319 517608157 412324230 770977388 289548179 446822468 253164009 496450252 579963504 981585595 390390604 454117960 359135074 717020512 16081296 483921623 202549870 567501667 804033078 819515951 306060082 327817817 377314300 663597600 798710159 942505692 309547810 471636289 301610676 645174669 23466623 563097580 114243763 609923794 561648104 972886972 649985276 919377007 37746254 274349520 849351157 931179883 78016609 255752640 963535723 974250257 876008082 936506272 780730508 834865602 96710243 471477836 91152935 554612660 496889394 751195418 301657122 357515106 526986010 879847836 148302335 835436177 90396352 506821567 149667033 239134839 562144875 603264347 853772446 985376385 362007064 667653486 755525930 782481212 981593810 996294699 920586800 986032644 992164679 998964031 887342810 959187931 265980520 984461176 948223909 952804454 68826833 751827839 383268425 449824170 339895721 460550672 837330107 963689846 398519968 549508868 856399192 978465948 242072373 436821464 816841353 911892400 844640695 877507988 634380542 948328280 514070406 546551332 347139920 939221302 695664644 915549009 788854814 820388589 266786946 678449321 434287170 927577967 395495740 981585522 735093875 870428181 920293547 978109077 856834834 906040381 511889411 816360576 112882549 812418203 537790573 893061341 936485628 957904788 934391731 978099396 915369285 936971429 292672896 968103978 306467066 702852646 225369672 880539635 910510495 931034337 282442257 922913743 758409382 909128648 757559759 998914501 247554675 977953954 852627443 929016216 918674962 988340929 838626672 961007777 877823950 981005344 148745820 364541161 560588008 724800933 505295394 781752527 262708536 778153776 165261137 877012964 251613123 354364434 148583957 954365927 126870116 683279880 783450513 841664735 972234653 972729222 988813288 997088588 747741333 989135263 374986685 862972794 122188111 889435954 699011623 763527345 859111386 941455394 667389347 722338065 675331361 763470182 272931990 288278459 295458587 373294836 326593928 678553121 201814969 377329229 274384478 705156195 499307412 690558913 597641942 793104136 484339595 964495047 339068911 686227219 824974443 839315888 455983694 560923352 305538689 542255518 344055090 599121894 555154611 573800430 76730207 944776813 573450250 886889219 240167045 618294624 734319735 749348919 292097329 706820834 682858750 771695582 644167599 865888669 203570550 747488644 130750902 797395331 587056756 998385148 104977003 810009045 701787425 937705383 77791635 214860845 401203232 979417308 276172162 820684489 569662963 670124203 826986865 905805148 444613563 927013789 160843843 690945247 113370996 558215096 222229466 290168982 88380454 790719357 968897850 982771967 87028669 801472703 48972378 850704875 838344744 908621459 974786015 984281272 960037683 979389690 160979140 216113597 870873434 877129995 908794006 918276401 536718969 542061493 918784118 964470282 719482606 973076406 79496821 648858629 450504549 540038694 464314596 509978409 646601602 652402512 758376637 763866513 15219308 729583926 665003817 666801775 326387104 422138640 671604326 791105749 308206838 401337357 541849388 876120603 792323566 974527503 584875665 957149400 643496109 695581898 535184360 626006842 108253543 963095322 883165125 899128562 687953638 895120973 223632655 273754281 776997989 919956539 386021116 491124327 551661582 690821777 627267303 730654750 273090160 449815127 300316157 960847748 964582446 967562389 158370607 295663757 34956062 261502335 1662917 165763210 675621360 716087777 284685488 542677239 211880636 247133564 881955085 938012421 539530254 924597642 920976128 939547590 424775091 792255269 124710242 583569923 691369111 943134358 309641687 374431105 761736602 961298520 216684216 881493926 354238501 914784370 237724071 309679948 653984549 920466786 543367270 872911105 769294372 849122245 861537956 876567379 120503602 720519915 204307558 737406154 258711655 805660501 251367799 712300801 911249423 978815536 797979884 858744643 138016463 966125678 831047169 986944037 312524422 535251333 707795318 801799724 342513340 592706250 282643058 580944192 229517908 547056435 995135881 996600379 510516568 539338749 873239532 896488266 247770203 784081347 181282255 553782498 89373596 401542813 93407843 599887942 280366250 624289076 365175029 707036623 744741505 759530879 382247565 436830432 53671595 288450670 132860904 699400715 823674539 869766988 718696289 997387499 833454733 979428842 228749896 970290302 407441007 670894686 593339261 666199783 836893378 842801145 999396032 999926170 666043916 670328494 759785243 858977838 124562861 564601647 222597639 499447526 564847689 910191651 194245058 387309613 415041540 649530295 196153484 695203477 990910036 994836647 236070528 989967721 977955621 983416162 859227482 908398740 501206910 532577095 483231760 524239387 552142473 782402930 713685840 741761857 823307812 865404754 394838479 737171654 532239760 536492425 746634524 871062966 982981425 993138884 253500701 370536249 909633602 966842971 638733998 744059317 765058670 819478869 585686740 790022303 753428400 850931195 248174701 632091715 324042213 610391016 79556942 492824797 256511067 752261356 933655673 974704979 971110152 988192619 710736901 917521684 55128956 190444161 478690771 621327202 876443782 917730571 651533787 753359555 646878949 869833866 628433471 922397992 91118148 862517916 505487877 855638992 412217644 986426056 418650049 607960929 797172691 889050185 13625548 658131502 390005428 424772327 49537775 376128462 398169274 660618812 798191315 848387605 454056581 812499504 910674239 917591237 994272841 997172005 857424308 929312460 581044325 950824689 764803394 921022130 142202140 357296868 182576638 453790158 849717829 905395549 36328408 154614749 348530539 603728977 688831167 971614635 973779530 974848268 61563341 332762607 434988348 598400749 843738085 989950874 929608192 939206087 746425990 886454472 542649963 970690009 429279898 495458777 631407685 639476453 996924347 999316268 539027507 573811375 402949900 947799433 55588112 508684161 530439947 682192041 294274800 341993983 615648237 634140909 515147687 895594060 229567825 426463460 380972154 488751526 79956348 874156965 209490260 849668457 630824185 720643461 341492207 843557446 118785102 915341447 320296121 613812404 371641910 498825964 951342733 971644559 826415059 917811607 853184886 894317003 693548425 759133124 929797672 996666649 775367794 925746720 605514273 839033809 190707464 967472037 927763852 979563358 950513179 985780203 571430434 886194999 135679625 386907767 655613626 673979672 380696978 675108568 659023616 659339545 312769004 973922053 851922121 885072490 312086997 599130734 146425924 396248459 603269948 656818325 298301687 383205120 399175853 947243971 465657358 637826791 64036175 943776902 78296505 700432382 122616354 891301410 612936229 797614656 306742774 500214930 916755235 948737149 976024880 988883747 819761397 974933828 41626643 719217288 146680863 456021504 504197057 549144403 201416580 462853204 33821290 588964122 784026344 843587654 802577621 987584234 437265948 803692749 957342281 983160026 371305691 611934930 651389254 760507283 844277012 879862436 587922740 994566133 167574685 490240833 781251143 820686331 734792899 812141258 322465743 462991635 233317046 308029264 121651408 723303558 828542582 912194751 996807154 998546346 133986639 327623744 941009270 976674349 515377320 793157319 833267035 934439149 43436302 843100621 992507972 998290139 415963323 447812991 698138870 860006994 327699485 986956279 329423064 546902417 481818983 515263954 561605359 721542962 787307138 802236841 480970742 510797207 684396831 911671965 527728897 623798072 892798352 921564925 938827072 940811394 980507041 994164615 422812408 561419250 374085570 469309556 900160594 993630261 79965619 979506212 1075690 978152363 106814943 462870575 139127464 709873446 447756280 974641279 45820793 471369913 181331771 354610791 643815405 654750518 768639229 784371551 349575716 896067102 447002831 476385009 989727370 993724973 618683453 848380227 420443705 553985875 854443417 993689626 559265369 610431620 206262950 414011349 801221671 992678416 550275759 997621302 953842206 991525358 261739708 862199585 37838492 331190020 924784248 953109580 440982860 812723301 262281637 930972390 883947602 959539763 788907796 831082455 55745857 713807897 123406371 265708539 100749033 873100010 67444226 576880438 520164890 676633967 231767630 596677456 685133524 926025541 602548652 813462029 870073741 948809151 696048920 866232439 66341554 964350500 746537451 831686772 620731445 643969138 96759556 962618926 563993247 794839818 956107158 965466412 71877361 719865510 507696516 586325076 899012958 935610790 415400003 518826612 864600153 933146804 460092436 937709203 232667495 904587022 148927823 302846207 591174312 992570380 755621824 904553515 912633938 992438980 255881538 552175026 497957443 506931727 847993311 997554202 25290532 772205424 160845719 360963483 465567676 583317622 11900619 792726963 496627890 936698703 138985613 603023200 786166242 963345393 798429550 839202835 263051425 855228218 300241960 465758639 211042597 500361785 103335062 878855101 408451244 919872784 209138870 997341830 861021496 947205299 502176007 585119814 688741057 745057609 888251726 924193190 515453553 679222852 179486363 638356195 911175462 945768688 52631312 120922005 782238440 980784905 620869115 921405141 207523794 717275226 209851974 994976555 130819628 442188481 164925721 781699983 500005621 575671052 902408390 957527412 180792264 510282316 316220500 434226651 935183406 956000185 32319660 929191402 3578448 589477372 855837999 877377423 389338017 491815383 27097915 416285779 875415890 959984537 571790615 865554551 979792020 991865475 440129149 698105232 743931620 988154238 23700460 251434702 762655963 772516070 10678337 541125466 366002937 699241317 265099459 880485066 599026873 732243618 859956145 913630591 996030511 998012972 377668667 973730768 616255451 742214831 714229371 733391874 224793259 389974759 333755513 554083649 453628603 529589585 779548510 787385677 659562565 682411446 971667835 995935900 616582333 654947673 456140805 705236487 518699854 659151204 897160293 928351164 788153891 814555826 270855124 523659268 689274383 747654579 39198073 872913492 511722178 810928392 175403930 701614242 399581878 417173551 400961436 442397923 661036308 692319211 744284547 838447015 375572937 620481960 193656700 566639206 668706639 999728923 270214019 792567155 514377683 895740955 733101762 743143598 659055871 990483243 679459518 953343786 78054140 906471805 187978506 832991253 263196785 271175874 607522779 722810465 350937179 807566695 179751656 626101783 292208467 448060743 115782843 387455771 70956466 645770580 807439201 919977615 70409329 183061565 67758207 756609638 143433570 892290722 759973968 937940778 246774837 677553662 817129450 820809593 304609097 692968965 333935236 589226845 161944046 662763696 263733183 763559157 979175112 980433195 466866255 684967085 784483738 933576645 252676573 978837185 866464099 992177012 99727763 960169296 519693376 831008887 862318741 872291466 188487160 714237462 468262518 483407945 98338739 273222520 226632043 869694629 406023503 892079509 581038854 589792690 186789217 360903481 291087697 958479028 59639181 824847822 371908147 528260221 408178645 944626273 723674463 889680586 529322574 980370683 130229547 143446579 690559896 717885105 319922345 524180814 152803965 179688613 96989975 461913513 555966439 913554642 42097145 984646952 63389604 215923039 292978931 763984505 317018557 458250392 25052330 604764342 159646590 609719584 220859447 475655253 668568469 746609369 320415239 893017712 664480619 759467997 401427014 803899154 229424025 899669264 911739512 924589646 360870710 790601022 884113543 999561916 242751547 281521405 183287187 694934674 920755742 950681388 835133901 852525534 647473495 950212265 778176113 802602989 626959411 958341343 146726544 232401606 559337067 850784853 409250631 626877823 620336057 643245750 936913333 954199731 275515204 440248358 957248028 978732581 363906732 558799658 41993273 121654449 473286111 591597999 874130421 876148094 127566776 247718410 662090257 882279778 898816565 901756708 330901769 678094891 735663797 831792356 151863111 541411110 245418257 437358664 319509326 852795879 477893049 761417972 987381982 996065173 885003362 889127384 982708120 999415649 568506951 750555510 966668231 998683962 17637303 426609470 838107823 973325304 501970596 984138268 742943603 757814129 550209795 881874018 910382413 936796132 677373401 698990361 340295711 457630650 772914977 831090295 165195700 696038094 641837015 878740417 104069420 301245829 485152071 879630270 208998846 549386231 720178283 967210601 655043656 865965458 459171911 556798014 884024878 916396949 160324586 274699257 58545172 193616429 740712868 985614901 180264868 974841233 133690431 301534716 691500819 956351598 223613635 484387871 538659 82738635 1641650 528258738 260918884 656807285 634524595 746236636 448452244 661335484 404815903 626232322 195725190 804437909 383187164 457746964 765105127 802756827 846263277 987623120 255010033 308055560 198783318 333007472 240323752 795010427 861232091 881732256 931718690 975111484 135604338 593205146 886843165 985865914 159197769 617980931 59357751 284549512 301441211 456741487 663085050 717089981 315229862 608482358 67133628 284272838 274948312 590654685 209327002 308493005 363166614 987906976 680698968 837584425 238185834 675943002 224389273 602034214 133482201 995629933 44876496 68816418 10058518 901659733 938469752 979609772 225518052 554883553 958043209 962594439 61099052 193941552 34793764 536726943 434902141 961215791 220169731 968906372 766724537 968104707 700528071 823241969 995179084 998942327 17782390 666334065 744204849 770467826 593813528 866220016 176042491 752447776 628573081 678589882 580948403 601950149 993278449 995780389 194866567 673845871 47682958 643317766 257930324 826279686 815884110 858478872 497069247 886081620 389175367 978133426 509603645 639108559 713060710 994862430 591171685 882558326 984027103 998704013 493317649 871834899 314786011 997895006 66061510 996822409 409813091 472430892 453934059 990700815 355555769 965998095 960321518 966782962 326970551 951763653 787707465 991434488 586640695 732283702 459312227 529393626 408458322 624141485 483918452 527479538 656404930 776420048 823961191 878205374 824757818 900732184 985016953 989183832 581215030 661624302 656034759 993931401 363790328 791111538 607379744 708509133 561272034 829106225 13236952 196461813 458720386 793667330 372130 823040980 200547100 750547952 862772393 973160759 295275670 588801705 892173144 978393443 43353102 737617219 286950867 426625706 940114065 998329518 583193678 750478405 656019421 740076272 998919039 999500483 422887931 800264893 743485701 838133689 874112897 943684662 748517770 892115769 936793493 958504085 597533145 600187669 881967529 927535335 500111620 747859683 125177840 390062620 489567497 561623729 244449665 632581924 953749997 962510326 293526684 544091438 192388337 280264381 619027269 831617517 291513504 539160291 355582507 909783793 611544656 871924197 925743637 929015901 898688780 925416591 205109772 920323641 469501837 523067895 239387981 331936977 345161074 399685515 409891092 552526721 681662878 743632128 541274735 792138966 393510301 669174785 574108887 588806576 978608415 985159537 697047284 741292028 606786694 867717610 768587836 935447890 178024118 548899062 33552103 465067333 42479614 603333325 159730672 560664063 869948547 951294681 155395816 183171793 448728963 545708536 922293017 974782515 509924697 983710919 147515497 987500140 312262979 998320358 672147490 674341741 940174922 965762340 529871762 555170260 739468042 920267966 919515898 927815523 555316879 748054888 647989608 744876871 123957309 818253937 979780978 982587717 608734882 831032735 329884430 336553769 14093653 258250652 741460794 765914326 568773984 859783541 690200328 910795719 693815324 896406735 668469426 948491704 687054298 815738073 66560275 274053952 351008091 691989057 55049595 256939293 738509563 925592475 964064495 978137058 601777434 867031227 730276714 830428335 3133380 671020993 335793259 758477433 95854174 901882887 144696384 496623204 808640819 985787701 840295431 906828861 374087846 884236288 830648589 872333832 735050876 859191168 359706081 757891926 400176248 754742841 862612070 956112739 936920443 975454006 864997359 990967216 829239443 871749838 762003661 811416451 523319055 865059824 798846932 869999768 870148040 890947388 700976590 985399841 730293200 929803603 764475642 842016419 232740906 916056021 165844701 958966557 191387057 763351731 634800582 838555553 584134881 639637597 238466937 391231680 938612357 944028979 42197035 997522581 55924882 434916233 491714295 596456869 745469218 935458232 807215220 972022624 754828355 917600074 370279974 486467830 19353022 240285068 181582112 631412533 307652260 616663975 511128258 971526603 411725711 625439673 539547001 935013448 215823496 436532380 911343378 936050382 105534669 883687031 825217645 993821962 356901016 731980368 780297386 926731733 855830969 856238799 778169168 895453090 777479619 853610440 491674631 691983020 291795839 766682946 164689881 216796553 999222618 999540143 886132333 940005742 36991135 159256132 932121040 949312521 500059409 654889893 448677161 712260851 437620674 703444818 692714370 868461522 120133473 859235181 659802305 761346905 214386585 388624553 143183794 600646819 443950723 966620912 266317755 534029535 105273324 615390764 161435879 523914433 643312876 904052789 914449035 973741831 709064405 970109444 505944290 964952780 383427083 929081612 562242710 928991937 117016000 375412791 591709736 958873226 272103867 555805613 114637331 512883203 901878161 913451302 549015695 704895711 491423262 647104726 574244398 918368819 703120842 716408652 980487186 999140713 192286049 548158410 637853855 882925877 45820486 930048293 260463440 382040803 179126191 217505200 322704249 521927794 114889705 204805384 894052912 967627256 230777365 300893257 66762800 769641098 488550194 520654487 731472207 907812401 96025921 845061544 537258654 835639684 482443233 768080647 438803255 699961658 2776529 469754515 742475850 833545138 383522360 709984379 724326263 913257336 429356631 854532057 153072401 402543602 681254513 749914748 112006213 508133853 70261998 179322398 586017196 827193116 524241894 606642422 624751856 881982295 764330256 893413443 534474162 964141299 421121825 947066593 94249658 177970766 954218275 988818982 882523332 952530058 789240236 960228007 344458452 738524451 366947502 732503940 608780051 942505942 553404784 912881116 169769349 224292957 774870195 869248544 436104054 834841435 725829802 901207752 266055056 456488096 26363691 862802308 424206075 831250903 584397897 829124669 512477048 912753758 897045200 915238200 389779275 886874030 854436644 900290440 839734923 881223113 942906952 945704180 524064597 931221805 20299668 210699620 260779261 594521742 939067091 941500657 818519065 934695684 577926510 749562806 693998664 826331657 729537975 814574138 257200969 735197667 864812682 876354924 514513214 560898718 948512188 979494600 11434893 552656980 612132144 702263691 50548512 467781782 217522617 494919503 89527041 723008944 439143603 763737537 223222731 604552540 108114842 448742765 976348722 999306115 682113859 857939524 467317644 575600349 190784557 886018529 451239589 989559738 693018901 820628578 678553456 989050549 44088126 98578363 378189706 394706231 716502333 884758856 632243048 674998655 137619834 344645885 880495459 929112358 891993666 943528668 44596842 563412186 337606866 726363091 507591081 859048360 204383004 732072332 18828095 311605282 361302402 382376812 866218355 885576485 772970367 925134793 667073770 830500893 291625135 887806574 362532077 821442501 979876908 982382764 519625658 984277298 851317202 873750509 290457309 860784589 363988954 803304116 920782809 928496425 425467277 754631147 463386812 692007849 935525147 979436733 458741461 619495428 831230852 849439531 935835861 967291353 972360335 996518639 415002464 966774600 496647059 885472201 952422924 997515577 652871171 992030840 941402531 964579533 317027118 806587965 839936492 980425755 677214865 784395464 933903839 983324820 758315414 949195376 146823473 446816757 204837605 755558646 613932408 717012916 273584345 871283247 3576996 859941912 974937010 979507824 110645346 370674238 849924836 982861182 215544365 614422255 191200413 324727656 146762013 325468274 491048633 650708038 836815469 981865325 218461954 364224405 833806426 878703610 826261445 924293631 53876015 975925378 673452375 677536585 818461749 904692533 322780516 544761328 525156601 531890829 60704183 994139915 757180924 759953588 346665282 762185656 847892529 885084126 895410144 909907096 14472441 335175774 819257050 952241685 20116707 677706138 721513919 906011590 900272394 912775963 2799935 786111499 749826795 860754385 80498489 938581356 54008626 409271571 824015038 895411470 94757256 122334540 561290005 723567634 319653831 464990085 810076920 828626665 778586015 882159050 596439676 778233368 632538971 777281845 698068425 889105894 512227786 896830100 857470528 905345219 28515190 256914994 746757631 889267392 963729128 971713188 998610808 999114352 577477776 588871214 336876328 804348119 837123660 904794843 376218695 467579852 534634667 815357338 898413844 980934355 31536414 694701778 260142758 600827955 615467934 803924947 431811506 908185987 832914759 943580560 287475114 397639507 472225960 477350544 571254860 670762202 419262143 621610871 406130585 548746111 950838535 985672798 77773108 681250247 273880048 503695504 776597069 986333316 746993933 854479214 187976239 804552546 894908909 919326841 815400648 889787802 5680743 570470185 29589669 365501000 754323120 979273877 783419419 833431557 790083325 799145156 143632859 243891041 707111198 876504052 23071335 225403052 449892813 479505171 650755446 907843369 138660483 327980904 549207848 625773668 69494208 816743015 917746316 985751066 951476206 982807531 677696307 752733152 53645688 344251107 52696642 539633998 725744044 932861380 551762272 909186746 710377348 727530416 233427669 334177578 505919824 927875071 158365827 954228498 513290073 596406402 413028266 832971213 678058210 698965797 920547044 941143096 176581828 329870627 88280638 659005740 465224894 493365787 227396886 810392532 552519731 990709282 780996126 934450151 281099694 606803715 652087433 835621162 205048461 364738844 275505603 625420534 156957866 393580478 879302929 983987643 817991035 931818545 964075497 970952087 654831167 918589253 645967264 940216378 489273943 917710674 855981976 951137726 175961692 187950321 847488673 874555361 917958149 954230439 253237781 476028672 883192801 901626258 705716257 862751332 794364323 895520126 400300863 758111199 684849477 964256554 76939268 421098668 410870905 912976722 202414827 425742154 277368823 882098274 333647426 337957304 947340513 950515382 795037228 886261278 566700861 630618041 618276591 625024517 915021827 971931800 88769038 98415146 243757500 748593011 691797853 715692289 49278189 379951048 775996409 784769349 394777607 848046627 463990389 511261994 425587435 579126533 944276459 997112522 552432158 702638526 667491646 704311411 823061549 981920455 422662761 520430877 493906296 896288361 608439436 792170228 962248562 997060252 528145272 929582883 387716097 567211228 295995781 413945710 482806008 535309938 634283011 924920259 204912836 410191193 151395342 566317518 20975203 851891534 579490820 665822865 902782783 954486645 783366462 928545888 711453301 839339031 939225834 985040927 532531849 831823222 947159280 966692825 277128971 926520703 957525346 970807427 907350321 958021296 687898907 858326715 110269184 542517287 320748934 772288088 482616908 866018972 269936033 431075779 436372511 499260666 437736712 640490671 933542468 942607113 246457044 496968119 243286976 372732436 910566882 964836101 446954769 714170333 791901064 817085014 539851665 738857970 789496970 893274031 16447202 559433495 290252825 493692546 826735180 827840656 96418976 614608118 315957904 980378309 685315455 978124737 887917443 898507159 813226414 854700372 335153628 811373639 310402382 577790233 456447001 833512211 151838973 773677645 97802081 545368972 310708536 796015637 79672549 733567450 184070526 993292818 177725290 597317994 263481019 900446414 51733343 785380788 369842798 849690163 760091880 939777006 442333790 917592158 542558683 935135796 325691910 884562513 175356034 417092059 643336016 898955603 517467840 816792834 368870573 718908400 246950095 343927346 704663954 767055055 470079680 620113643 474405565 600248738 784341783 976680074 454390986 645392465 309176610 323403231 19327759 856772158 260589791 385717645 313861730 724842411 127182176 896665717 739508448 996273477 740472861 927648363 963804266 978865930 490201158 575364828 218639763 612572304 203302112 489017518 177265245 262736117 409215608 768875150 790939354 998282484 212819429 534338268 756433320 884314245 611984954 930830341 126819663 232624173 895853170 991340156 622550 302265239 805873781 911637545 548673127 620217334 682497379 945491018 355653700 468794898 838207961 973733150 288223062 316447889 404977995 723044841 791827814 945138571 115318007 420569093 880011544 926185284 664531803 741916915 553907774 666326640 159295237 388888727 227503186 317405714 958802387 995977743 814000492 817100112 473595107 700018547 567649676 621719265 94484527 541187750 888290585 959068558 430693325 802754822 781432488 827347275 380215311 512730410 860694954 953087388 359547661 489361379 803633305 906485594 406979783 530563686 999068557 999531046 628115597 771373799 692456758 901194969 201951102 497951047 184746101 242107003 513438168 759911233 217252524 954396846 423899517 688370659 533175173 739226498 941815444 963862227 958873073 983104123 260540835 677519187 518336588 701418340 393206173 611648304 884776689 994968724 653602711 879163773 284055492 756807211 272020521 811312203 652909074 672468920 946040503 982633758 780133727 929185402 36960204 238874838 144967223 767515688 414558586 649277619 177455611 579111333 906950077 948220702 901669094 914435750 709373273 949031946 86056364 716383959 894707375 901475196 447889754 502144136 616926179 989518867 799684600 858554027 285935016 831944731 845435073 935040937 168990749 236051231 927340834 936465285 800832703 924220707 867237285 928405191 334213383 708262111 64259525 563165097 939905424 967602383 907165142 981528542 280740251 367658939 835167717 918384407 435856739 555878312 757863684 849892713 321074476 633992811 897633332 964757450 354108081 663449642 295918884 827847438 328990511 681877819 397842509 824998059 57602475 850343697 976158587 983585694 608729310 946139470 422483432 619719971 27843856 279536180 728978211 803954101 918894967 921300268 219099984 914707482 768684808 835791360 606530639 945702596 46366689 74011570 180146349 484466296 754575252 905233677 130432966 466616724 182607938 233653465 440477812 708266821 356894247 868768197 493848612 901307720 826806887 885036117 290971638 926954805 913008669 998949599 542487626 850449181 806150890 951993223 945524482 953475771 318555808 706786065 797317320 849482797 615352538 977744752 7056500 294860420 379396912 535429247 131379147 953604553 945316068 995526474 187872294 500139124 189433379 859432206 976629267 991607740 486137651 676408689 505912838 975072570 930576275 931780594 654007975 783467297 120726837 496748505 605821144 932573603 125303557 198314633 622164704 976291443 788782075 887638004 222339474 817914512 374372518 413699299 577230827 835263936 550250768 595073480 107081661 429043187 5566067 156486385 547253068 825219777 241291384 822236125 605836836 695478419 519209739 552883660 847842416 906045041 546818019 693780477 314636198 360617357 160046581 937823647 908145965 925690753 847585683 850829887 867822813 869410508 259584221 906364319 609550226 743250926 487347653 583539929 585854140 761894964 250767479 888209895 857787711 891244874 228283376 709059565 36468802 609450761 846319060 973273248 916454146 995505998 61373613 472297334 274457998 862586170 52632368 813429634 385573868 997254574 34887150 403537771 569883129 977689110 542847793 652124815 225907992 591369016 676897923 719798729 493440781 560281896 213721997 613096378 729436035 909621427 584237353 693101950 741830987 975371131 541703161 806621162 54290715 80320960 909281547 983540496 595803722 762131808 63210504 723309046 853805024 874258785 421947336 796373622 178454043 205108730 133000386 141389068 15266493 401580945 415713642 585065308 833193900 982447836 472193189 684767757 293594400 441934601 586967735 695615949 787487156 835240692 5556476 205247545 769096132 793171249 98270178 197381367 838785993 918214652 921735082 956067588 915598913 930773627 220187013 525880570 915297558 987267503 104404430 332001193 558403234 820344292 89134606 729347638 478794552 935184593 657844671 994595320 378060136 932428072 858680191 986550657 781771427 840083752 598838544 900480848 587446099 656522090 185317749 905766761 292419698 357358854 445788267 593801302 552382913 593124376 216790675 881178586 377000402 378687374 998342478 999718115 726949940 936062129 144170034 852791848 956384010 966877362 834442868 920857233 860986202 967179002 174862457 948148910 316817392 648783917 965425396 986695123 178243609 515151560 691949366 692686672 842461045 908325719 428648472 983262129 439364586 523290427 504789149 838690818 745319541 887380891 855851878 912008975 703946009 892768723 379591679 549063874 808333862 887073324 864327338 989078120 606310115 850659151 284130494 646708578 102048116 761389492 207492735 378132972 625447172 809483637 424366583 618301340 574896408 905488542 997580390 998123440 456390741 473429762 137135563 935931610 142637421 987816835 140651301 439689022 506633564 860926608 752523307 887055172 854861109 881622712 149696109 486928174 257726197 369395550 579185445 608865249 707432344 819405761 419243411 800976134 846347721 944577374 953579087 994908128 848726998 925451534 740692472 788826843 959808281 965843823 333013938 980549129 647712291 688708065 265830241 361695474 649887667 903576483 140233799 672794781 353951570 549619265 372618407 647588993 209768263 300259480 762918502 783874146 709478586 819061971 30979455 238842235 211966128 521585716 157711988 369959083 456931550 922074583 991129448 991859254 188379137 484027676 239340028 964474369 211680984 909343638 61055486 774352424 887074041 909382932 714707210 745781282 271820573 312971977 969534707 990405099 649549421 718970067 267787508 623629058 156312179 929307204 206308882 212627692 960491327 962380520 624422174 654644561 695396938 856549570 126618303 770021489 231240556 983943422 737883683 838676037 930523285 990890519 683447854 767923212 723230783 843369489 939612768 940438043 900903338 939799196 27323022 170806360 553243035 790472852 639669873 769230669 246119635 551301680 840421266 907463176 63858239 579270707 494256290 922867726 599644146 922275223 84575453 362419022 609114097 873517275 369078992 748031934 170901156 874542336 104250391 177213268 191602071 747790373 689388501 789231134 847380144 906877485 526848566 866311050 181437025 671165678 991824631 996700815 597521371 981304147 146514023 875350325 318697997 838620058 334895711 779155361 118016502 954874114 117917889 224912702 287539723 606825210 267290871 384304624 785137126 806818756 249934153 648559897 431567984 564646218 279469447 857369205 761712645 809326910 67215943 551272813 884845347 986826657 820493176 822474245 142209709 899300513 58584011 582538896 904871405 989820239 436514527 963174932 582640523 974944271 130520700 187980459 712756184 922409928 792136566 826036147 257223248 846900197 34527751 812457282 115966556 704585598 650755189 743371717 604036686 963750045 36197612 898582507 159727437 459308948 672299092 975076674 942088866 947016707 475671781 937663377 96775814 639402940 879761294 900442573 581847317 888361615 958857634 989324056 426713634 733868223 836710265 893200696 777713385 859886813 897245780 948349947 127231720 177938776 997379595 997409907 378500691 846066871 785516159 883575417 439013785 680047611 299980432 606362269 773426761 798278341 133991914 152546074 95816110 955827274 736399334 943875437 772019693 842735608 415767400 728480487 917784680 949979833 296711322 711423703 767423657 863515051 562911801 965607616 416515181 692222529 744088042 976594744 870531490 949176599 43518858 336711572 982260190 998700537 602007326 834329093 710577477 964820689 669461158 745291273 319328611 401913796 724748936 867145394 166942218 443321075 84146969 771649752 201334851 885623042 826516355 921847109 815847271 862689752 718880962 850298977 177661835 370286369 635085964 838536676 115152914 315043142 589501283 630181116 414220487 699447251 406974126 799157140 983493107 984920170 456280595 689715842 683363166 930650186 439677731 705295277 376465026 750875913 741138610 892320790 754325408 907666345 783664451 808829003 232294572 858449325 976481934 989031746 870687839 993304411 446356801 449198851 258902309 341014036 660898738 771360555 527727429 682040994 788482269 974626278 137629052 964961012 451918656 673491715 48816361 729899131 167185447 242470017 271230102 628388527 779503221 820952146 274761026 624554465 265783642 988385889 463368356 479321640 450145301 683525883 751796267 825073136 658159585 745122527 784024892 918183821 472027532 688316155 26226047 825065613 326228777 872949917 861543380 977661664 709002346 982449660 8303387 477049066 684663896 689539477 461507641 588751255 572672379 618640003 931637209 957684111 984267024 993878244 153581279 773812567 338026919 349130887 240664171 949832727 349840056 672417391 148158813 838978953 985659438 995851769 521505829 687284676 271717966 823802467 50426194 993610920 330688088 501803207 284907063 464174435 90583469 925716856 973888968 999070595 686282611 814947853 975383592 976476705 929508178 935705649 457956036 507068956 293592349 529915758 25527821 27041154 182060624 924869279 330369221 894714133 863954104 889158811 831236950 881138606 750412563 878061575 174144365 906477711 97395372 169479320 200074618 347834876 524483780 951444108 419071143 523828082 714797682 886512674 108526671 594613607 10919592 328733845 145943760 863539052 697449489 737908843 54451757 354188124 924695020 995421818 64342420 418093261 710948346 869270935 388101412 485461462 705111538 994437689 70096663 375334042 869025637 973747632 263433902 280188064 624903385 644489495 394594972 740702305 714147249 794456589 527555832 568224077 621751824 756835571 227660490 767133681 362772203 505561373 836931934 851406152 512733774 633739732 666970505 850311945 284049771 657345206 377714630 733963761 278150150 419044870 736147226 995975025 959724194 998786011 87752106 236752408 40733564 281262982 596582260 614145425 162864652 552166329 232318884 674474945 390273094 412694156 843216238 868675289 974302908 977371003 898157217 938488425 461660933 567956820 342722766 464290461 348137768 491674864 896106379 922327885 608193775 765080073 480021618 705765905 802558340 954540985 7712781 920552183 497115904 710870769 458075980 778239360 939135614 950846135 317330703 493430561 159406811 169103224 629534231 886165907 193121427 497482287 95180142 504788226 894626534 985213313 967730808 981331769 122342525 805135231 672331918 891880170 990097317 999604658 466920411 644000230 794600634 998665636 912972938 956547034 930901782 933352672 726107328 875330763 62059442 589140318 211967467 871808830 458570478 907453017 401513709 649266670 631107773 958922746 766888882 869898026 501139273 592054538 559294698 982735730 458272929 548278205 115375650 131017243 500627635 865036762 664104986 996771818 661198723 914410087 498383743 956209004 364097350 778142664 48461362 636211888 574701844 811254206 327254285 690883093 521635169 767731461 637839969 858387084 8631901 452505869 912202799 941601467 778672888 877983832 740066908 746738297 85482488 633704806 205472898 571710422 796004781 890891636 160017775 582219869 147233345 788021996 596674690 807857514 906748446 961274920 326865026 880005479 169517143 818431190 466716468 678394945 561205490 880626114 877535048 909081960 399326365 421030523 553508267 759966617 303940543 748049142 345759995 349188576 948682953 982655578 533624225 542880309 797290591 868036235 191426434 239452528 916367569 967664659 906239635 925753611 392322612 686879793 507152835 725216076 857545472 876634071 461289283 952748420 444683817 452184298 701648862 731363049 395226024 956975741 553718925 655099530 843320824 982871776 673309890 968741733 450547412 983923585 794423534 831447005 640711162 983181532 53906296 726047829 713185824 890209095 106601295 384643248 799944031 953575484 727783376 846567911 492142237 716341476 306538903 748791087 182582689 528744125 607648092 992532814 978927430 986487575 207148801 827917792 706130795 831719465 69273987 354133638 822999114 850890689 123639390 557088631 796565660 995389895 214345537 679042580 245976995 834904751 111410621 173380788 425828021 583373126 841530679 980440247 869894150 996598577 925357264 986303619 985965267 993636748 601942161 703032563 101058759 856672605 142924734 978974893 196588156 935793915 649624993 797507022 300473528 806795406 818427073 858791088 330454366 615971818 513110276 789533802 648620484 660659370 462598242 655564625 275069361 758113069 710832287 759150418 803572380 905424991 142918137 630718719 657000144 909531135 625207504 902382950 885338291 935716617 254777761 695945570 27436211 845276272 173738013 723725883 824574128 834455111 77980799 587815864 692434665 948414836 556958138 747920627 747107836 912608108 955385480 983904067 512537916 667362348 975228577 976907562 526208374 911301392 423710162 915661217 358327154 896310094 739393838 928282532 858216651 895561892 615908127 978908809 280048109 649101929 219710170 572614621 807844758 978208416 109282749 546897939 150339808 314237951 776335333 984827583 22336786 537416803 656787183 689026370 439867643 996856307 893750662 978558261 606208382 807110663 406704401 945763267 104238606 185400939 524100632 549645681 694632039 751513742 504352852 830651715 689128905 832737225 114657162 775631728 351295208 845613047 829715838 852347515 874377976 919119271 733092829 748431835 215638359 756862610 502558642 634331625 649307489 703249590 997085722 998747031 409615058 494829633 763286414 779642829 214894069 877425112 140763848 845011950 739819862 886726052 506720150 511973440 342214103 782845151 322743624 364493616 18978096 223343523 950024788 955770088 884818198 942032303 601549456 804748500 975324659 983270719 392190490 860926434 60404423 534129181 809005721 962629704 53221006 724398899 178657745 542042041 769481868 959900751 246140219 446720391 815223738 899136207 181348439 733576491 838871263 915550832 371827544 411566314 644599823 852135987 585451331 660604615 763556877 772508320 872245305 925458343 108252257 271318702 569985020 584731072 392426204 907894807 507610701 610431532 607075359 990544718 611696620 992996405 346340729 828213281 670147504 684389729 775107287 902181583 635647492 709042336 548623043 578842291 433004248 755310043 19806577 820951155 325688882 710987925 128331843 477647517 114588441 243263378 697767373 804140833 936957831 947740992 232453387 665919092 651800382 881695340 654079885 954379933 100753002 241907145 338276674 949950909 24433136 365943551 683300954 984100166 301949025 437882587 336540618 498353292 665608637 789618266 211700157 989962992 313046475 563887168 613377006 963471116 347227760 417449119 264791135 875242988 685898151 782756922 517167641 875695898 591028255 990350965 652773538 789907615 874067230 900918544 642768787 913799199 110867022 431158522 930471769 998141804 181418079 348205532 152155777 317913805 163429498 616044420 950134264 965606184 825017756 927292812 616923384 899835002 210239843 706223630 926289397 982025745 647016478 765092400 382443412 450448489 85954316 728408316 516772991 747532378 752785825 787020727 576273858 923501964 696667487 821357347 109347204 182819671 919889238 958965792 957592232 977186519 536318527 787337905 864755688 916201360 699018324 810181329 662294761 698497954 925821494 956317438 348189148 634504563 974864706 992830652 619668478 758091765 722120101 876557709 593238647 717480967 99909339 808599843 599755273 859608762 695208095 935771065 797327457 902266799 654749189 847861526 348059561 524777443 81347913 385325902 364275213 732447398 6382710 697203780 126137069 345423114 283150455 694930033 322910473 851486849 629373180 692871920 262790003 626278948 728688330 976980509 265427940 760406916 885701663 936945900 875507463 925123546 78590518 962400602 227337553 737684291 315163587 979324143 343064400 941502233 180494843 340821100 61751519 834573776 418095757 568076534 304937524 599740764 360014649 391117148 388671319 763042037 150713177 191737161 638391743 938709461 763267788 963327824 371175398 536974901 544023996 929501109 683988171 784953305 973397023 991499021 906925374 923683087 135440312 860956085 656910554 736222345 289656225 543087319 862418563 897961460 345196125 910998267 101393744 611131879 803277610 853341259 948829387 959009128 506927665 656561329 687857349 987959823 273093172 853328775 540490873 689079218 8941400 772119951 987418695 995325150 398458913 511942475 89913171 758057855 644117434 754375920 749329669 949266185 254720134 457704796 135211686 597277056 39945600 562510577 646960280 897805422 349139906 786676624 796599299 917251531 964095832 979454260 880347096 984328580 844430587 992136605 724126712 948015394 610112184 663596487 127804939 179182898 567627357 811468571 954163478 986646372 254585212 871169399 687149060 744453990 526083124 626305293 362373249 463759671 167407645 489431933 341984193 598082001 289002761 601294605 258107328 669479995 23113653 811818051 82466177 585106962 255195312 674535527 316278594 806721545 989102057 998937380 336949812 805314763 820402232 840643702 76392057 668695086 597293584 851785210 30487914 588119523 40774187 575624922 556205295 982714856 272528571 581058702 228294012 685509090 445895949 859013850 663368881 828008711 48346407 622764909 889699157 919829064 851059670 922111137 397969506 461082155 77348950 315080452 913395089 970945700 129973668 857993106 397557732 448753117 794320016 921117365 827611468 927443172 812076657 988307773 17858895 334861898 286169121 932657946 453885629 778523297 943869378 978618574 382028009 551030290 503167132 683264801 898405733 919182872 276854727 338363794 127112437 869978160 54200857 889508001 883696848 994684359 681599452 969537554 837208045 873227864 921785792 923389408 863140846 869620655 837373524 958137405 623517683 871017151 872431067 942365219 568307586 921580344 681702244 737444093 96791861 241984003 383787178 386448856 916773316 929422303 881375851 944657787 996622999 999457697 387839649 526635463 177020427 878986249 65564484 615248157 184173014 591231751 699501090 878961136 686969058 929482934 157617459 260189843 798266376 974980790 794459756 914587369 507453599 749138697 950280955 968103944 174132854 252102151 919764358 999731049 56191596 682258940 641341806 920216124 282776287 330675134 901129020 975021125 266565080 268241205 531048197 808045075 439210733 588589872 327183648 771475510 393242870 528558839 483983644 938234843 497266173 652840882 703894617 829619638 403074909 477079534 446460467 601123148 331160101 620665935 20568303 784484174 603128112 810785109 867656729 970168715 794193316 869313798 952977697 968460059 667455206 758705529 908390224 925025509 729187895 984395153 691468805 691543246 796627426 937139155 412952006 682664948 816407820 922900859 635216649 882918471 505412826 536522287 380883517 636120155 895097765 921642143 640133470 752780177 906678249 917549868 558091228 579582238 170741996 596707992 65861505 170194842 580068450 907692504 920736201 955580432 21670674 336211246 364264424 805953356 814580697 962878718 328089642 658740758 27447735 257227783 996452610 999854501 866025614 892242540 806362149 855259833 672504441 770586078 545810628 723039305 244752213 877681271 150787145 540641354 443617420 912988883 728967402 844780189 900606176 976914453 357455367 446557340 233610679 827251566 564717365 617464798 522752895 560395376 209523761 416845210 999640849 999778533 765301617 791944161 310144505 583512259 673109680 878712249 158399267 835867955 312260979 533450327 325962738 833696878 56027192 744927520 1437700 634869745 388363377 943729508 91046921 842918288 551802184 949494548 956061763 994715727 797021454 910397494 912561097 941428930 381098732 463394689 96735270 368299084 56402387 976667357 724771172 752811051 969220598 996740679 198637515 228345167 915524071 996163291 116327715 614528969 771212477 901113217 394305432 470261758 656918385 725882811 136854441 881879564 583869041 594771390 280116757 959511751 632444392 777348440 611823730 972762885 748792902 943577779 455740533 794879368 133907467 174333558 100918321 255236452 747460228 801345910 871525929 932451989 17041073 176436390 470238268 731942561 433938070 984338013 899610781 903966274 750029795 937524867 859876456 999607865 176585765 925422986 982248730 994727446 917999145 956872069 367398483 433936803 519565169 775938334 641898081 742935098 248382623 321075393 812833053 988908646 413970000 741782640 979924183 989735003 881278289 981929203 467438222 678412458 570199403 712820826 921946609 961130197 379434657 744513646 693216409 752134135 504413878 802134812 982426063 992790188 37630372 517809440 659129301 956361625 75786166 577913973 189509258 716891560 596803464 884264828 346054104 891929899 372423933 379726352 420223183 742175254 436110275 987737489 334752276 768934324 97640512 694374926 73780635 853908938 691282570 892939832 995740732 998842449 785802349 834886641 304190682 307717838 773582381 817831590 584219108 983365272 11705947 895086386 153477485 510889249 66557807 746076031 705424098 760732018 483314003 895186994 850370171 886036334 129895897 772928363 339999095 867875871 996296025 996530871 240927614 330184250 668792293 947140938 329683587 677628200 760988598 853988807 689888450 701343956 874645644 960484513 838583139 955284538 850632769 982923337 993986615 994667284 516431229 938665903 891344090 895284462 284816398 770461261 390728760 695990726 812416222 855858951 648874433 891889791 24123487 157358426 353220462 433271879 507887048 947138088 90434061 406645447 298872943 984433072 42923641 94970533 812057295 922312624 1051713 726690890 2962651 577254871 757155158 815825708 409426815 659789767 27784182 720364514 800954040 874810617 902815601 907467654 311913516 521595743 129192441 791190112 336853188 666719438 920121468 947901361 831726142 961302227 626326229 939419673 823705668 973828851 592995669 719611176 841622103 856644088 755570728 906402744 736411823 844774907 212659226 216343910 602526637 956062627 36269133 487052769 926359899 934185802 118829778 544424083 352199211 749835602 913631487 952780878 676959964 859192995 515754911 762349942 834467903 987165117 670533152 735841563 683548197 837030751 644318218 911375563 321706770 498436422 718569487 751408968 866796983 998776582 602566171 711021943 914437876 959500250 401922567 477507506 213712032 952141174 960094658 966993375 489259374 750796425 863499763 900585401 655473811 735648388 480932157 826753394 859094289 910342899 85963435 808191842 22487973 717216497 120153959 707247182 34317429 200863874 578841861 644473533 708461245 760467587 34488965 104049763 12242654 937629677 985026620 997572507 662494377 888217266 257632644 510662338 601221444 791941914 712173010 982828456 522794667 887765125 667750209 965277657 884985499 930646941 651152391 771465417 110344069 296032140 55715018 401991164 376954879 494239335 627637279 738176538 574536246 667707319 250844496 691675834 500808730 523992470 237074668 531735698 495141595 644830838 344115655 584851056 721979808 867657949 252274524 625286107 547763104 704607514 557213771 923561202 592773303 871362482 995221229 995271992 776661199 822856001 110486539 425585866 792268325 944799869 220313615 311070665 750728662 843773304 229410367 738794207 834239527 939590586 15925697 560601740 876932838 994537804 44842863 178179929 689072571 756936692 124439817 462932024 318897173 792572336 366756878 837615576 952246798 963947233 608123401 856005935 663923292 868889071 412575030 530757983 766014955 853369930 889436155 958704766 131540448 508078146 203321571 311513760 606401648 615895061 61327370 872817312 164222655 948731436 527038427 877020963 343833058 599741396 212681121 243771310 724901479 776099287 745308215 871200269 242235768 969482979 318042968 760722139 113751802 509576208 475940886 552063370 287850570 381239752 320249537 612112001 302609541 504594625 529083316 682880346 290580704 528087627 823134470 887468866 491115605 995193190 16848019 558236041 497979822 776915559 571515069 589137882 881600336 885172749 930795777 938247563 810362048 929786805 142078668 956911825 684921297 835248522 698831569 826941880 829307989 998834961 673189669 726036563 433712306 455709014 959782022 992566194 431640707 822181540 86939347 820531406 9376864 773720117 102788684 937493131 316773846 756562723 284266073 849187754 594602537 956201297 349876769 693210468 511868643 983890735 231822789 827947383 149452551 866999725 403539823 931793393 780683626 991812403 396368962 797576985 340193946 791810256 780357505 943633287 98306278 283314362 748757927 892198863 687188424 924820370 22099928 205301063 976784009 988463171 23005685 769264070 565066 912445285 643676857 731549828 709478950 955722409 836447120 859015414 608820523 818298783 453513712 527355944 708729520 886460980 312924929 935468061 684365479 995313460 616236769 691127995 68627207 757023912 671735788 968625133 440668462 732141078 810281651 929121053 729494534 899912544 136498449 301678177 687255068 747239825 308428806 947138874 480489621 553438429 88102343 225709264 537864691 565908979 310480213 492621701 6652568 322454656 534207525 900144455 244861284 528937620 618302919 777747130 793571312 827298102 665341587 689983171 291015237 453908782 10883489 35405323 900071437 949164754 433678410 951686017 126195565 489899086 274047409 741492889 740945411 846365335 212225850 906632533 243968342 913575074 911332555 917278485 290529765 798159651 877452703 932982482 944385274 996835755 113737948 661296766 31193755 283581151 87321210 946734752 44772900 964595387 207994370 922693952 210474386 388431903 676795935 750635467 93456091 791832447 910662579 999658168 511760941 895350636 893872556 983681100 159072797 469104162 254453610 574586546 431793561 761310195 121329045 242834172 522918110 964984285 842717174 890380021 592871562 637908775 789003253 893505882 279240648 672416927 85772668 495810593 422558764 479394671 613136692 838520537 2845882 631269166 217778736 802220771 591827321 720467804 668112863 748034704 413973506 934691109 26414908 321075553 507849107 859647731 882643670 911381371 903451993 994219480 988711608 997418549 676486756 734842959 290285508 978524355 272634607 294466127 289770775 501828694 717713979 794014606 669182419 942569321 400691036 741982435 421538582 488910115 508186055 796977773 430617836 594603803 116799143 147809124 887794 860992237 743810850 805591661 973370536 974593138 783387969 963350086 644401972 995773047 966466451 997309702 23897931 347854501 698564372 995286099 815975677 816216933 620874371 745811824 940325056 961019037 654109068 722252128 798469130 817929994 671897472 966479262 473046505 730261177 175238714 299619696 145687029 302757737 597784770 770831561 90158116 223777619 343562433 518746767 416046884 603008928 357869269 884251786 502434136 947594844 621400324 954288141 469791466 761195380 299985518 669715422 658562717 941581991 981568492 988427993 393474886 475897624 645414123 756092418 400553250 600897405 29641924 293264243 161773989 791555646 825869934 898718432 977641645 980058905 469662974 703141411 181688199 514026713 943387015 975247826 345310118 530775529 477347326 630027613 391886536 604106372 765954064 999430020 667810882 820899149 133015923 998443609 587191738 694840915 614738088 646624153 82944869 271598146 598294826 780980315 729135544 993388097 830628085 937813489 467644331 468778659 162521432 256583900 270236202 276290499 933587543 944906519 523054270 834756958 318562026 345080513 97975010 225060501 595391465 903761240 680883392 884431655 957171429 966942238 525467480 547529866 765539171 997689488 182644114 294890239 529186515 842935181 428415316 553278487 449938460 694639534 55279398 691498543 161695406 993356883 98386437 851243822 577362821 781114828 193243921 737192319 701666901 960273370 699407237 699892950 178936159 914345768 477844839 850625341 524619614 946580021 664988030 754631951 340070296 930511838 825656635 934729322 583887714 785154651 459725081 637338805 778282522 802963950 350500395 852371328 639359785 885855693 61184665 470240996 937419769 974488316 967376080 982210483 306917028 412947381 329928737 402281579 421804734 480853187 261859987 652912138 213980361 440299347 675147201 731121422 990572840 992221694 88443834 273682923 429445462 730449274 621281480 626131198 815029579 949008693 35276581 696428764 681463643 857630616 619185308 948142184 505148535 966055203 883330891 925778702 887346784 953989611 291786258 686049596 298271081 572433120 822363885 856039939 775263342 854142580 189168701 193239968 708461278 970073897 492622099 793743169 839093546 971549500 158285724 256646092 108318444 331526079 444089100 913054514 944515167 955835913 825792531 929604517 993453232 998848498 873667392 906502971 857720480 861977999 114768847 337319367 314387830 761438713 857734351 889941400 205081350 476606310 642494541 855552422 289917532 793719116 3276678 85171948 839521700 912874343 798519937 812984335 189404373 668321747 649560584 743152662 767564134 832351944 131225178 971066478 758525850 911827180 388438874 705444856 789413754 954595738 233805953 652453621 829108981 926024249 834242558 973722006 996587116 997776687 933666138 966119649 444797021 707902593 363662472 634194557 146439695 190606681 1988968 401235228 685618834 921058710 567610323 891557052 163172279 844841393 56270528 948838721 440263450 531236171 102927977 413103653 309807851 568802249 948034357 966547503 722085153 864890964 169803833 643419367 941791599 980723782 72394042 679192658 291065275 812004850 348982489 831330825 199344031 863588778 325056525 603700811 821295123 846642542 561355176 696786430 687989394 779170618 6736447 822942273 491139481 659854108 48141496 854668086 609157002 628490075 524716662 629987515 106585654 690064057 19978932 215045757 606609290 764032902 550159256 745873865 802721352 843001520 912689326 979277905 801467874 980287728 919630870 981073568 466185484 813140152 107326653 270252902 532859909 941049746 871739978 891700335 320687367 948427547 616370351 800334154 431365195 549529207 450516914 877269209 83667138 605366011 431019521 994904213 438669604 701042932 800149546 915573653 868132801 936357270 229232488 288487341 743236247 761330825 898850012 992441440 982002717 994368704 373325831 502289365 356269827 731290782 814847587 913605353 410182085 975365532 618578592 796029224 224361289 312300075 948054236 968531926 446078901 536119704 194478590 883238785 660411650 744363699 914481849 956921670 935637964 978617054 405636577 407919983 951563064 985716379 892031558 935691384 583541083 994315878 46049307 313673933 916264380 948112083 293815230 973627950 390585177 617054467 455385785 973684559 666221854 729695733 195819057 871396664 208084222 826065183 518920381 603415827 780516389 856937794 484758808 548394239 455903360 922877430 960393689 987226821 492983771 665062892 964182017 969047296 937188345 972427890 261790813 514675372 138387013 459572132 493155030 799803138 316115178 414593358 135416816 927483664 472349282 809290936 381411359 478232231 670147903 917451324 365401121 698266523 184326650 971215484 242771007 710547876 335534345 532572782 206160341 797029360 985161051 994643145 271551951 516175518 522553554 684741724 1432593 107649708 793857771 853806867 785015400 920262054 293108330 377798435 165380002 399404434 82632393 774576629 479579375 659604173 645211343 947667970 377464291 911015680 55093783 347911442 549989897 880526705 824231074 877138151 571035040 795641143 70568198 160739365 315231066 650230153 556611308 849241373 105075232 244789759 743345304 999115593 819780203 925809207 856181662 992159659 752150918 882951355 423733747 469228623 735312144 865783041 727515722 799855354 456938839 943350111 420692799 712393809 376195192 498163948 298958808 307389068 168914488 521544967 754536708 976266065 844049385 942163848 633086427 922738997 518265386 608028654 185456386 919671576 690519578 898568990 89828268 850938272 611542196 658300788 841164968 945794034 669696101 963685953 193908761 705253970 872479797 905470179 480875312 646005657 957254878 974559047 529134438 965476876 481856883 916318019 610411714 710562324 92571776 253372864 307538445 687436475 703154121 794081611 727151154 883473503 404829848 678450962 419790408 855430779 577822719 617301361 57923614 100656370 270963034 560895794 949183313 961996495 888208604 925862471 388135987 910792860 534021842 569209563 206943053 805219639 914901319 916059232 807926168 990335084 522768240 925085469 814283013 844690273 582067470 907355128 831069759 840718123 731283067 744774491 811774552 853006030 212286858 400928884 945264166 988228121 47355033 688882222 606176892 809187682 915637777 944627111 184872113 422999213 489559884 561970413 703248214 950024620 580898461 686467862 980608750 995955735 121606198 358043567 787981231 822223859 138388866 732888302 39366569 428339975 278748344 474734554 68742711 953569698 250388125 949329181 436866776 896392574 259342509 396953148 284725767 531938655 711627732 975367050 999552239 999596116 105163080 404629596 504273659 758339999 704859463 763082805 9627999 441931954 286280481 397176737 682367278 805892153 411914599 874884232 477970332 936635493 522118749 954560587 342382179 393932840 677616923 847715331 188950182 324581018 393538610 910806386 464754085 493320420 860820384 911740680 814822757 857812725 645523839 998319635 564438555 706079687 665907268 991997860 193132252 388032553 423223555 446162416 531124366 565226896 388422340 477964539 908038394 956869987 373769480 807921643 893434556 985526254 850407607 927652298 615903301 878218547 602657205 920290939 859103764 901487119 987369501 994468956 559671287 575857463 291553343 830248066 174970797 907843505 546058527 942625391 606836369 843734234 687125059 727698845 753579936 893371723 5361194 897835598 204917684 558697172 885666266 913719441 780149301 990615157 88658253 211736467 476883250 807387821 548371413 595395710 834459583 927743839 135589398 937021508 675880617 897270596 431519796 691827618 442596901 571245666 809592720 943340362 520506505 546539988 596427866 927089755 157635846 818046362 730263415 918886296 763953093 935392704 30699700 657772350 93456374 305751174 680142015 715735614 932580232 939506670 997058817 999335532 357579234 584482541 450837825 508990223 890804604 995790018 492699371 631377699 982311353 995598214 929208644 959630622 856814750 888114813 408625938 761362743 338836450 486728714 362706332 682643141 485288823 786028336 671039388 907712898 791868335 837442848 847634583 997803317 243893180 619949399 142365013 720520076 71473742 490523724 589466518 725292358 179271838 485493787 24097615 44228719 196223537 991029403 347288346 486413756 333852461 357697898 548733896 893938132 968272291 980804037 970728362 986520173 905732429 986755424 431452082 785473286 399710876 498319857 248663908 698887024 728451889 911400515 413955039 525862353 75898341 827093378 289520740 934991362 769603163 784784582 716208204 955110273 252147561 706505066 634397687 768570008 689101847 957490192 612877297 964108490 648832311 999786744 125141259 849073699 805691304 894308219 154413136 295546773 426119957 619921975 37779034 688918689 157136164 165775587 58666972 183368186 460052235 941416551 165106266 194674684 968696278 992823826 128663729 965446891 542814547 718587198 111080654 877433828 794734282 836473774 184401638 612320039 674153111 856005522 712489560 789383951 523276766 721791289 91100602 880341653 493687674 747154561 725736787 841877905 339374427 878611850 340313231 534582289 494538442 548715717 628317891 636091397 318413836 375781076 724136817 981136596 659146878 993431923 348559496 692414120 990357705 997774372 977949661 981238072 49480308 262203440 930527754 992894376 772343104 934307185 407700864 487573279 125480802 157906447 978101139 985573988 937403160 971026999 288422908 674652539 514868394 938265695 776589736 858802571 321684703 687654336 229555828 352682858 26437387 382924936 115844046 454417502 696442703 779042182 703847861 705847158 442749326 763979313 359647164 703039658 302702085 636124937 949405243 949706042 60762975 76262577 31521124 907710214 228116903 229290193 332941279 647306367 417137542 661422147 233064583 242461669 45147242 902452206 241260611 628133705 899738376 956010534 846044807 958668092 221223978 280424146 822188865 962472011 321019822 877629686 289800711 389769420 720202388 759926410 597810519 649078452 988234480 988811852 637022631 938242899 50212347 82462712 96975361 293428864 41132913 139882995 999918709 999962629 535332825 929220098 219571295 419848757 696665856 730365360 666685801 708252921 35306434 113875093 276811220 441826662 440418373 470230680 228431435 308899707 925133156 974403542 357159397 609382324 7500179 691635938 317639795 668502417 249336038 956886786 833138575 907061718 113189450 949730954 847053587 905750062 577508805 826970923 516084944 974168904 480116196 569774216 56484786 180684119 85294559 705932652 371662212 679493364 147725588 583203783 269264371 852601822 271309246 826374572 286773211 914675666 699573574 806604237 141862706 231781404 464470443 468009370 486516589 604347358 510518823 773488897 85348870 943155670 454572984 713047411 407131085 509624366 622104343 761139805 589957901 903617690 809269347 912060207 636165768 872819101 851797032 945811404 741506051 994173201 510077353 622385762 126110076 384297529 606607704 778009017 593189372 625401006 324640176 327347374 942933800 989040310 575253736 722508225 301887657 568028630 442940122 490218600 203205549 801141765 222078159 618401803 479178957 766808224 250259837 806667251 506101949 609950723 927956266 945714993 519221493 522683327 228057061 493443569 719379299 863645122 976152624 996633343 591500062 882817046 398069982 550344431 582938053 856083106 286149681 518685629 371353493 387932551 39634579 398533959 722672 864111196 582863969 665585191 550563514 888403693 965239186 985534680 543693901 579825416 608403173 837459231 403538507 459045658 145714641 745769610 244156491 865275782 238120299 357897264 138820947 204045463 501631934 971352136 69962854 999221083 265432946 451379746 590614029 898126166 600577436 647925886 312071568 362071622 255551132 871304275 455608258 760498571 766871610 843923715 253649365 717461503 541049350 587392806 879434682 954658605 249734770 602652078 875679840 879183375 178257234 406247103 413124193 957467675 777638617 817310267 678619903 900487521 855143133 948683581 29458032 555261551 82092792 782216394 370237280 469174356 641676857 914586358 909523154 910270055 183412776 550172304 246444761 989475812 271708593 540823760 648342729 703377983 48729954 147914391 531865686 532063888 348876602 961176711 446187306 478402461 699160230 895485467 151264038 203795201 272375142 453419975 627743924 803510910 756772211 797946089 637185498 709759137 979554578 983226333 688208268 804797164 456899031 782287062 265569847 277423200 699243753 819169148 73966982 232742941 444275797 883599210 487730211 612757813 26969380 344061925 64928922 736589668 332489875 880263506 497444064 551503383 384088488 611340212 965379822 978640302 774297972 787060247 684667695 766722420 778665475 902696848 179942838 976660462 939371558 998517786 24361878 748296306 153672157 883865642 38091275 680847852 701134453 734915949 498331394 859357444 769299791 804479194 646876926 860433956 321691801 750222911 355214615 930007565 317130868 433524240 600247628 746186771 162280173 619206575 574006165 728431304 98291644 312709323 824846917 997260578 958081049 991741821 405394545 442697913 670579524 719323246 783301332 892587958 640744546 660011556 9811125 527744043 135951628 934377479 697890159 817581923 875942680 918870239 242086298 684060950 215545377 350454662 48444163 63881363 872310660 898699890 865511132 943032881 500947813 761093308 916215659 944819931 949352226 970511370 187384034 801409940 368993147 815273135 781421817 801396979 562415764 951708379 876932970 961192277 304482086 609597966 241349949 815236832 839164961 975236741 177249782 981770718 334090829 920760060 578487420 967054888 75054183 322998980 878025709 968914944 275020155 916197071 675690863 767900519 785531939 990027887 245238469 616010079 60992555 330628285 797195944 849510661 283954347 388938627 217280767 727299000 942162475 948599228 246950066 681609487 826962544 908817074 352480499 827121486 670252337 764230140 713981254 808157138 659763464 909381691 113186695 524589423 464593247 979333692 534684418 937127061 114514809 582182043 374275976 735849848 971720068 974494746 173435478 935894671 782519927 828297628 280870304 470384439 83861822 967434073 455170778 665713320 155900149 456355363 695033032 755785026 941989327 968779623 126681715 532286256 983202899 987193205 926117472 992834996 428894526 445564475 435824696 889537193 237899828 353387029 129152161 928401478 388874626 837818467 276432064 786082515 984442463 988017447 409023062 421241421 339670170 694891039 75472319 437865754 188314639 871714952 703847993 857124257 336807623 842356979 734641554 757869533 568332561 622623130 669819716 978739252 888070209 959973219 941317421 979824095 691170650 896296460 769526939 807756713 806095584 914225907 271714347 887931985 79962071 926863431 554145967 677074535 852911735 958424459 587088786 762271332 830406968 924175659 168844460 595423851 749736285 843274060 793521591 805575101 454563329 882758010 334575031 841915562 442072094 782356648 244202615 372029198 857577667 966337531 875665755 892097060 959954154 964650090 895887548 930159509 337536276 378276492 766598376 785715669 476144843 793506994 952022006 971376065 256891889 710083133 473248522 630883044 211732649 491463418 809097708 863553623 262214299 576508616 678970208 872840339 317849217 620353115 959165191 963591160 676583045 716505886 68471213 103113357 699354217 796888427 319571118 625018675 601157643 911515740 465877987 823532945 269238339 920224154 902824000 999042627 281872934 519558488 694087880 930641894 556919983 985380702 692876630 804899885 379945409 893602309 343310271 843595881 496586590 764477074 255343572 621566790 847588976 990225084 496084734 909933158 676448783 883548271 634986916 759243624 972314744 992099488 882896160 948700578 55976466 267121603 963664889 990318014 894933162 930912795 696630380 912958449 95504620 499277991 260396238 971297041 35338080 150018793 897446652 998969451 107078551 323151060 476588823 965402297 709766019 805039644 929020540 945214887 740025788 791922546 317156650 518310669 260206142 540707628 897875352 962053023 407482094 949348347 757602346 821285832 788468405 870655883 102989444 397007615 922935065 991138337 194751622 339087399 292947163 656806013 935269863 986213257 611097579 659671245 145282342 317739919 899613428 971278843 135172980 761315539 616651284 754015924 437204837 850282183 730841140 789250728 250541983 355487342 130403241 702817313 928645867 928776072 683183499 726813588 185359606 524413783 885394938 902966588 987752251 998410468 769037714 926805952 748930409 984832691 475331310 512276304 613017533 789671959 899567788 921333295 868944500 935005020 907479183 923927843 908419698 915722898 33651869 429423473 214729026 590706987 582191580 667871748 395352457 414154062 809445390 918098759 935680044 970290556 653670538 685466352 150694023 218607917 790489623 899449353 340428451 840387791 613628164 849944508 336642095 720858999 439134397 674529853 179608675 444119948 245078855 286678492 296866089 968288618 712914168 854865097 796817923 811920280 731173614 920752030 514692140 966967700 166616422 228371446 613297466 927010890 508093630 591889772 478809732 629595234 388092363 401691720 101189411 438214382 528573018 621429548 966034252 987131335 178826965 263093299 228754134 812924859 368001458 484499087 414190375 978538011 177924086 644163738 486956548 922264638 915778902 928725386 975807070 982648623 491383509 638313143 960984111 997562819 533101521 966239353 566322455 941159251 420598311 700575935 795328812 953716668 331363662 423811827 709296794 980883955 391517440 593361884 637102718 919354386 761939292 806427278 193143995 306852879 986727534 990528910 197514850 657859814 605215353 745403089 955876710 991182630 198128684 635225316 96236462 487283979 958260216 984870367 587401431 735452683 13060357 647232215 495023333 790645540 326782742 881889887 301486609 787386781 775630556 846017026 86582554 277879754 266866879 275376943 59777336 791059691 174860359 389271041 50559706 248179862 298930269 382742743 326329093 789955041 79214295 796025366 416580510 669364198 414698041 831971356 808919540 830444939 522002798 552292013 737060721 964599336 304603878 534202114 279606057 802712852 847139302 872810796 442947912 510846508 576634605 796790144 700081023 841762478 546365009 566224021 584730720 873797861 84144651 922552281 949855924 995413401 394330787 556305362 974037566 998680771 30175649 360930760 537073916 920316783 884483434 907652319 939794343 971822549 739746517 968894536 52976002 952678592 103920695 173614646 331613099 366119672 786138404 798289060 709106981 775156766 94452332 155158609 260640203 321156511 179604773 401681134 443625948 501428468 410119415 462643179 151299529 252756294 704898209 807593634 532443295 947581473 682813018 957386526 102120633 848261603 567002551 777531859 679844254 705972401 765367476 940967187 366361022 701454546 122574664 347594784 11656693 781666739 819303508 974546080 352886350 788646207 574342159 668901641 774569441 969493329 645122965 968149257 206012114 595453279 976449381 986623864 986243313 995008179 669849697 960151042 916172707 961338798 843217245 872986199 266009466 304671650 110297285 457455157 482764105 581049227 293860977 619307712 782649398 833474278 792505154 837358946 755386050 770014324 104597939 354018205 398161364 862003101 179432969 639055313 775733126 829230162 659973023 735841342 470900877 905961816 705949336 843490610 17945665 50308666 966922930 975163319 160438798 745247754 511117252 750951510 517170370 817296324 780336158 950345893 617629908 934022848 142138291 774466138 10776308 603517723 595297016 667347822 335146170 644361685 561693347 670640732 259526382 352888700 160530627 957394792 337569226 428249762 704068753 987633005 426243232 753721830 802866844 826769207 620978975 709082709 922113306 996454704 934725795 997780968 628152841 714289099 953077841 966692443 692241725 765649605 259305138 577021813 740599754 875330980 586543660 673392580 698880807 889504793 775540505 960652089 579591194 887789979 311314201 542014846 822510642 858751117 453005566 555342166 74303232 669238304 301515890 669415356 635282974 960823593 107833741 251432481 431587835 649566903 290771562 796903157 276533646 528583861 337724025 385343782 122091096 880697513 860636884 905722233 835801140 894069403 729733911 830960583 261764566 367208372 321925228 985773840 936939075 969868693 113989512 125311128 271320875 947535974 98150187 242500719 685333879 791140068 290103079 753412598 188896320 754122210 126050792 184595441 409670629 886112850 55088414 97533345 693307112 889242693 92984569 332615704 378927097 379164225 661582655 931978246 246581674 870900496 857515071 964101999 741025168 858128677 762209340 944850858 370763095 401966478 529392336 758297195 246651275 941047750 288276046 379850134 488251085 639826322 546874897 670410077 842849565 994398011 365841844 572851396 450233178 970663830 946193242 964985535 992366616 994771259 808458623 835860923 834143965 985325797 530096021 635341330 404230169 422748052 429097474 688660709 133252909 177634481 935826825 978552027 66911120 688081362 292841279 597872347 886412282 998111474 435356285 626998481 355563194 435005373 244635221 929704704 852258703 891686144 608087675 923555209 894026283 973643934 60722664 941203721 138250464 193198510 911351832 969336086 650897726 736929044 278646077 974243978 216289381 683930749 356241528 853200902 53952604 91808996 818841175 993846441 57642302 604935815 242110852 736059290 101066589 204933154 444225577 541067892 51332477 728251307 696007857 967644635 428132343 970165040 839921902 977148158 106032954 679787247 774811954 853251850 881424794 907856454 184891398 861026988 477303654 500697679 434940000 819096635 932952236 953688792 388128106 780694127 863295584 928774528 242898626 856460671 437643363 892180793 779780895 881956543 399507840 548495431 864716433 984972003 461902055 518897601 992985399 993066035 196768580 386286456 385063125 523638320 894792459 966976296 216996900 612731441 71071233 488914736 209982316 624740307 715268164 896688751 742630406 763026279 632277829 786735914 967050840 995269102 175547340 893759401 753954672 889452162 727710723 851515066 823649018 923645078 375968081 862390839 754532395 810097213 130042127 783503760 393868492 623311306 924294391 925870205 666009825 871994875 644264044 753939558 684076151 695226070 839396010 960943086 382812376 825487460 352196071 623197988 909905054 979788665 536549218 758461912 760748904 938210287 668290318 725511161 189293972 217228060 204195484 261657576 609881739 719058613 21887460 989329022 150879295 445165344 632856294 936313942 724090952 729491160 552791263 597098087 681004168 925786937 520599639 949785714 693749326 823489158 499322909 984084214 920921091 991029517 71527134 700441769 297891635 348672009 201006880 272731886 643401160 797220922 996215999 999215397 984829457 992521487 314207091 843540896 405715444 433050070 869072226 894249571 715833131 990527013 3044316 201605464 404004066 763380987 272768603 417621004 122489536 560192187 634542630 963170880 84642782 741724923 545676816 742283761 43924743 991668622 913191796 928301328 775950435 895397236 196812420 814131328 241608350 791833041 792018321 870395539 949107419 968378191 864735774 915978224 368662199 941393941 518808381 734835804 860458685 873930176 710645437 998715137 821783197 923589109 336083596 439410075 728416937 736086063 866618153 938883211 797952034 919239243 939798583 986122321 701566100 870046714 96706582 261329533 987119190 989674398 448867830 939342923 38222672 643408320 482241928 918098388 793962042 964721886 656962265 673983516 551080506 689352660 260166353 589579408 41879430 700397873 96785266 826014046 281764739 597125697 319629185 932994545 784217752 869554033 904432878 943643113 233770141 470013240 634436836 966014024 289643450 475364564 617582971 846620541 176920259 263461196 765474254 793161542 892178597 979642944 901311160 946613238 53119266 445200054 479676646 691863499 112595487 775614399 65338182 497930120 723463772 952178477 977169190 987597734 759750818 967628778 461312359 725200463 399548276 705592720 403547481 605492749 590720655 896620546 23137688 245917200 507604366 808386693 888610146 920085074 586050030 903189937 10099743 829882949 35240116 558102917 242500819 253920062 201083066 478595004 894806254 996428702 824909212 846922252 55505980 247519351 569304687 878763625 302013356 938211486 912257836 972692994 98662689 501974047 13363771 76501843 500592795 991379991 462613557 814092123 596518098 803098891 555241680 666602045 685140342 929136227 984168058 993969754 309005726 875212824 228280874 396138929 22237426 785359746 32070724 309263648 323474551 861550119 811857326 996150339 895377335 931869902 157424210 743993331 532485712 777896971 545523629 763302870 18324672 251564934 303323208 834878900 175515159 209183671 289792015 971613441 602125512 767844406 71621129 558966907 901746379 965371067 150057765 427193601 989420782 994904520 387642122 927281533 819482949 867169242 990249665 994345605 575308259 894826959 370844619 401492981 341172429 355994532 921168003 966906515 943710445 962095564 511795648 633379833 226237179 674268242 841634653 939351258 115552452 260206382 756239660 997549811 44743461 423391310 970495597 989645614 370012040 916014788 665389437 842510908 385908046 414599689 555524202 864992584 951748521 976754475 33101502 205485890 981981043 985538127 629030704 914153248 572130922 740092459 215958630 720602171 978295769 986718421 4950489 718108935 830840546 957926134 235623707 473173380 900660207 953507936 266778070 500192466 605416513 872795771 992256760 993869363 255946701 404873653 2216599 321346778 207394349 787669853 344713409 949212845 845635476 912288346 395726902 728819840 153667588 252019164 487532125 613022480 971819606 976032504 234693345 666282923 628554444 959697729 434694491 495163405 23948550 618435350 552418731 611225852 696925453 800349708 990407071 997936829 879969631 948480284 70197860 842781043 113812152 505658067 952183648 980395898 4528339 412493563 683623550 728391087 150407519 626308586 589084628 622402002 91136079 278821274 218552512 953799907 51212439 591715169 682559457 715341575 839702030 929609895 495460819 566164892 398047479 421992559 619565495 702605967 611234525 780720795 77719212 865210798 317892429 335661844 929669019 970508385 332412082 858879020 868846702 880039423 154230427 809525380 541851696 613196206 497802460 861834013 557111217 861275316 507249280 509663579 676880483 693464013 204128109 263287947 263392881 863745830 222829947 354160889 52800395 417745256 302528272 974589984 654244866 826275128 946443207 985916027 65721531 465109326 143894808 301921546 36470190 485122854 194444814 251854962 266627447 632991552 6768703 723679709 200453115 295611546 368138731 477002294 919973761 946087372 783224312 792504732 810145864 982441263 26027492 874373789 888595012 970835346 171140678 794623146 203516398 458051014 466098342 486849536 119865929 374614815 354701736 444734963 293937897 550865186 572378162 989328081 905510940 979870104 537452758 853727877 520248661 548196051 625428601 761698869 119167351 840897329 729795059 743277373 248709047 319862834 527020408 801137771 710063572 823990935 444275778 675090498 730370779 936595630 328915551 594360456 299230122 423180614 471662627 712414875 833656136 972202355 719469273 950815833 942126655 979739124 486729664 883945856 895980621 932409618 279957176 591323179 966499731 971815828 803831733 820981163 179408082 781253947 430872137 472647004 175357740 534715275 383850935 629397771 677555619 750296969 387522553 737317951 116580807 404225080 789303171 983128736 494990522 616672866 678118842 690166777 424707083 884853675 106601711 118595089 910271736 955418349 515843524 919835231 679294410 883890975 916615346 983868905 848075107 983181260 788280779 915540318 918396425 923902720 672425779 946328065 589448647 679846280 419488300 938009040 783098913 826315979 416854232 620200975 385198788 522929461 7513870 312280855 902015449 948473759 204138311 634157026 939700321 973965031 732564420 948414260 583685115 777744889 793772964 863475941 534582166 894688781 449559363 879852724 27846533 279084085 122152240 856581846 407907154 623647367 662996816 697951162 125498660 331665387 490995363 571503365 346125228 734580662 618955893 970347524 274956282 358025600 638346199 984456015 180008533 612386894 416888638 446472532 815454144 972666929 443326850 634472661 809527156 957467958 819345947 832382283 291675450 751104260 506741220 585654981 321325323 918303989 250051242 939386502 502434540 800472845 937867962 975063483 823433115 998338237 904272695 958605102 967456506 985825282 167849349 404593198 901093312 927113101 66962977 343348211 256566119 824237380 299521636 544877021 502802088 883224532 609781600 806355837 475664352 900621260 530206205 956596926 842503435 989460157 380322498 392169635 330930102 464520428 686375741 887771060 205963967 632109461 842900388 960294642 629739233 806432861 788310575 843154810 889587498 944444056 78232769 290999344 370354991 508596081 789662273 857523962 118106966 401437236 193637324 903064732 910915136 925541415 208870415 715183770 452073049 632105512 204363001 445173484 925081872 960560156 882712943 965918971 371475721 492257137 718391159 862337683 723927381 783827319 954956707 994151547 591236155 786769330 748750136 815095395 466975235 540796945 776091108 913387071 151062589 229367391 385063348 553373794 770142310 875824845 34521377 957345951 788382873 824752052 508212568 736400944 950104411 975768663 692321427 975899586 737557655 780701615 165814442 299682574 988557614 995193266 629479301 701372920 133100137 844704458 869213068 915965232 634388669 957260310 194530191 373692708 349941159 668334793 125177015 724038529 468235141 893091216 764514262 824931284 65193603 543888351 578450139 984163612 100775273 514843703 822686202 929336010 941895191 948453608 867544481 997887516 724913926 807928453 502057787 646661710 425791020 766582891 386477111 575343902 782420546 879061976 748567026 926303345 183225356 535597340 145340597 857364773 748454334 751036299 672446159 829103979 584196328 980557555 552139884 670650887 432259679 525541640 716608320 765359863 133486176 193169202 684366984 945415741 265720471 880021608 916518323 958707266 384678218 427159169 950664106 999213305 865289013 968315120 183042586 764401857 694045377 755384290 745624414 956138050 923950329 946459817 154618041 724404489 434997387 627211607 52322198 769658161 272144566 802147530 773013476 963789218 850926662 948346891 605858269 913237612 282630181 983342970 25007707 290031775 440664813 673661845 993944928 999866785 51885658 68672526 976837479 988013627 67481920 153863156 102729783 883775839 537203056 838085693 508486206 623055584 339394836 643608427 813421752 956428420 928758728 930332803 649262828 871860288 244419459 355928587 499764955 968641860 212099000 954621905 578276453 651047494 348970651 792280419 205781958 717064728 415364614 865021452 547747576 949520777 412759579 436419591 340052441 508091128 949386868 951905548 942892841 959973937 547784844 930101233 136279379 852481290 929925077 961475273 896974113 981096206 39207050 245741659 243699887 968609464 113170194 378213219 309503065 455135821 291452910 552298115 430702240 771630168 395279505 719357582 304703525 833353161 74911420 182699771 316238068 382205968 589651962 860080623 441289148 950165340 883465911 986567196 401763743 762765792 446857365 832117529 944497232 967038759 792809842 972794269 670278691 932243928 108708329 261423911 647239875 715397635 943432867 945055612 183912374 420121791 255071864 775626298 383134180 958020861 936543395 957893185 679694693 764882416 894706227 948847899 212679587 241111034 496879919 607692859 658868859 948758457 307524392 973735622 908010849 987471105 946980629 984045530 866426948 983924155 301768214 467561881 595123768 944254494 362272501 413989104 773912790 813110962 941054065 957821355 744858970 925193448 325824416 836215907 12424615 943841409 955800645 995044989 197023022 941757555 32452234 210723690 916130728 975759978 497006306 956625575 587994041 851003273 854772678 903020222 454315361 970501564 246387622 358676859 997185150 997931901 117489797 460230413 463580777 901864527 970456195 975028574 945004361 993051546 710717887 978482546 648667231 663672690 47791477 674157722 938630689 974993923 278495880 610221188 57105598 162149204 273155082 439774885 371458592 624660096 406140512 479258674 995942092 996287481 50137739 736793317 167245894 925181764 872833190 972045885 259773146 986627811 329426746 966441811 429248980 907266526 331280173 766515595 725034687 895258198 294373507 450641839 90477946 788077442 114885547 910564183 568588912 794870906 832780837 886024647 181094404 388612402 355825857 903284663 686375555 704628339 514999175 943715361 727307924 736072292 441499614 714555534 628959630 675628885 676860089 837544648 151070072 276766257 45562229 733574802 144836096 526672178 328194934 918457465 904908250 949382263 898842587 928970826 293087951 439218671 687515975 945083720 899882412 974117849 812223683 965879490 211780073 414607143 518125416 784869523 998800843 999082714 106997307 978993326 66486176 968318473 205402485 823660456 621920623 650394280 688397851 796397453 518571402 883154866 30700710 318255086 735066943 748109874 615253761 667480909 208988221 417257707 150038898 757237559 487552602 885363389 19485646 67052324 680407758 935320286 547384472 638902016 208993076 545221391 257256522 882464900 430600200 881813565 162314980 333773568 436127237 746725511 127323776 974906937 441020389 615995074 84239820 246166265 233478459 395582988 502752567 604227526 850874336 988128432 401893647 838323425 983912456 997274117 131533342 820108035 910320832 925967462 496409232 807648431 321361241 508395770 897286597 977801955 106286690 164922929 827445590 963436461 580519088 804895758 131806365 618585355 828910740 876467226 948928020 988053776 73709419 143409286 361015812 905703334 729718764 760985480 900343652 987689633 516294047 773703523 875300984 954068353 989262342 996826368 770737707 905376885 316875850 948262017 143508011 548193801 405759374 769115041 786697926 951928938 692121441 716114083 185077357 557710034 891954549 963778138 168964673 616084130 297220172 568449701 811559337 937843412 75616461 943668357 876576613 988271938 227357139 659032486 889301647 933986523 488262145 562657667 616154421 754563314 438785507 708526284 164505644 172358359 238474645 926952414 815778756 837282480 401899144 710916783 746015522 873152491 351956480 826064574 523152396 952707901 47952603 128984867 760765930 936378191 569905659 736058595 293754644 702998572 539874008 696011511 156453467 549304305 766651789 873100173 875633375 901191012 370647180 406477587 414562363 499734070 112489767 125109929 877752328 923775346 725421426 977341180 906953747 966429210 525101383 931049455 491558494 932508364 561363968 678390017 1556450 165732096 501682292 918859836 135892066 210390170 117554791 797779445 177300989 875562857 409399641 431129183 122643112 240981063 296411312 343496139 491170506 845822541 685261889 708877327 863194971 925615489 556380897 609206547 537650989 794290193 67524518 899323177 314076642 439899956 642210420 880381837 267754601 274723079 726534159 812516652 909665131 951950810 531476600 787823346 617756255 676132869 72497550 540885240 237523913 872713512 25785985 514698210 989622716 994036616 929916712 947861720 391794140 783893845 762714201 936654019 434222519 819142566 238658027 276385714 397642777 757407448 744286665 795675592 379260839 889574497 404406028 920292895 132672494 661601332 401798282 551398586 776923702 990187768 754493193 915969091 925128101 947472987 219289023 388865156 542970112 926099589 529894044 639884460 157797239 658997680 665378843 977534997 578573479 867185355 700728510 831192662 670446638 760891790 159543148 934732474 184987993 624686005 501966690 669072923 159358688 971869679 933340181 995463185 840068235 880491703 741572403 850261570 87382666 741015270 961107691 992982941 597218358 988636001 723547244 886381642 968535207 980816375 64099607 673270185 553510718 773646934 496546751 497982446 807791555 957106880 902282638 911509378 881540224 983663903 320781270 961327846 521683031 911840599 75221413 322532652 342759312 950727134 903205384 989933814 201689269 778393952 740366747 929183964 173138956 844020090 52962751 376237678 688806013 732911520 233670929 816618458 916174144 947591639 695091145 974771389 913900814 944419012 728942360 771940062 276285328 363116384 75513355 489838864 339469245 398675565 72570185 509850769 840092676 984582864 423166365 686155379 591130569 779472352 894553248 966711625 16737684 692609740 13693440 114252359 892664049 933097777 397418111 753466334 993221531 997240110 994940122 995639632 933479585 965502325 897711083 948815217 629565516 793142546 290102392 932136829 399436400 403098594 81281409 357794626 97520068 739653339 200948293 388198681 144145877 465680327 417992650 514356924 826961273 995174557 369344547 984491319 448292518 943399184 510989048 565856890 39377021 98971700 665280720 815416619 873138191 879561186 456160229 565569634 837329701 839244773 205542901 240223227 348918107 676955785 911258558 964299026 640360030 876796476 792714129 897711132 6756776 525547302 145050460 292941073 776401429 961894403 504830631 557762996 853627333 959279360 579538372 798541850 43581165 452270882 118084886 868143397 755021549 973230843 555968098 909572000 382736989 916093617 344084921 899970619 575830703 651110517 604463543 626612858 951759990 977939609 69917055 156481084 695802772 956313707 142346658 297418032 80325074 883931109 492019595 947364745 808524478 893014004 949440266 965482492 894531044 949734428 506364485 810389047 29214206 202575438 80023981 217380882 197534179 572071471 360076954 527491073 321923362 481326098 246434062 505759651 407203690 610364070 50516197 859617690 330018649 580530015 170529540 512314626 266007882 473410213 8801245 806746197 510126820 974500896 777114097 849139025 532651629 678331774 594501228 930872800 683605155 690467261 89608186 493545687 292604238 864956671 86185407 564979172 466100924 669674061 474023913 858003609 242859932 609774155 482103774 961433957 368545202 719209493 424395181 758054713 832637265 941351959 589203698 803058621 630069718 939729355 193273728 460070089 356597998 797260686 812342512 815343311 531994892 881191686 472207391 902299084 153624761 469131482 554751847 577696601 323578373 732826256 806430895 890764663 275572130 536870602 87755479 225135426 187391279 305128546 403998904 922743283 218930685 482532118 639622362 878982156 403176087 569117660 879435837 884045469 68959645 593093018 489274085 856417705 381030033 583842342 742373952 953479425 500777250 704389479 43368500 975046686 717981626 950463119 537770979 578989101 496088037 520362206 133400675 981527169 388005633 392931813 147184132 844744207 783108930 838177511 452483521 701083000 758302403 942467533 188654052 452978600 122934557 290024987 246756234 485902300 62397633 186908487 315326442 685558012 925009100 991074551 355304722 888008808 164979703 295255113 310488996 900333335 403102426 544043346 384809092 648483973 676129540 887588253 287844086 315056704 555425139 666692553 408898725 477676115 512184332 807989143 380777409 846717102 769471318 774909273 626974929 758014699 559661298 991449707 104961117 970809854 631748671 834502267 321937590 604786822 397195923 521927492 926119143 938294089 174676222 415538498 754289498 926074778 795862903 903536977 701120592 923826246 771663095 943802637 195157916 784513870 201178423 243118722 188795705 656299943 162600780 438866159 818829223 844562149 528036458 827572423 40489936 833857237 499482476 864017523 57542778 924224377 152291639 198570595 620456091 861048285 540530997 992247254 353460050 700405098 321815055 595347989 813693493 875534474 341512406 403249814 784981322 966957432 108480661 350445161 689378996 857274556 767203159 789478644 937799626 946727502 970751865 973775394 213436522 262610981 455482252 925115260 314608759 951274230 57211839 141082710 422810352 753529170 455857765 682435615 803663439 877502101 726250321 907763978 642984352 990482104 621368844 805387008 992373588 995704636 227827317 397538559 26663331 715005731 950771497 970432262 208250461 751668311 209331983 703098329 955560882 972053403 837157491 880482868 530254254 966537913 394344241 841943745 730077383 940009154 390261936 482856879 324884434 643738700 638236531 809847207 231499667 896554904 202621787 540330685 258751821 673403770 547811325 782474231 769505257 960705796 785653449 882586068 303910559 728997199 91405154 962332719 391012320 821890570 641892357 811913845 652077391 793746412 651925997 857476564 481292124 507843564 427282921 481559470 933088043 995070736 573503091 607690312 98140267 182623177 490603970 706639074 422641663 834156234 562588758 907321492 792305435 862634195 949100321 952805054 609113313 917191984 656654504 848605350 981088270 983314645 612832054 758346376 219643551 442904702 850761921 984330794 901610446 984617023 868993923 901795463 690758931 707974532 418283204 646445121 894634885 982702941 900081918 961667373 916126639 962750846 355306393 766458546 966811612 990808571 521032363 743293772 15548280 661399972 115850753 803436031 175903783 897500098 275733087 563379933 51592156 882178590 201845971 417810058 412667701 593279399 731990676 914950536 241929527 762524552 601006958 968858064 689801581 898554433 12675146 553726850 402928018 438596486 515494779 916898184 138984624 794054439 647952693 678020852 932705139 939044546 154899621 779707249 632762890 900729960 18163324 350390315 167274439 754807806 284382956 367002794 420074499 953573119 671358367 843150609 813892174 905176492 953632802 992651572 213492549 556777468 643224472 753645456 87012248 596966932 390686089 952747720 613281921 808348101 500045900 542034449 686549589 757811253 495240460 827365099 84854490 502278625 739579197 870366866 326448923 499911870 340769045 977718958 754005603 775093058 254385528 365622166 502303301 627931196 927363972 933280740 955421647 986336893 867516631 908817064 813814158 815957859 775891761 964105465 997600490 999255578 426507259 589720785 693329200 843849406 999969303 999989407 943367951 981250979 988269775 997774298 238964949 837644356 442229978 615724882 548189676 866706870 490407616 501881548 795557433 963035299 143248840 537072956 319237849 586657219 748914471 786128226 18342548 963880855 5597047 795587155 865021189 913873627 328472802 682671343 414870591 633313886 658623473 768875836 161232 406826773 314538823 633672495 908158188 988029778 40449257 622334778 575853814 861695082 488213756 551103051 617762881 682737658 168078312 434851123 831097062 873624251 438504573 761380031 913428083 980169298 370854244 812243045 586739456 640990300 102836851 854161590 493243933 590074973 768286670 934117297 346014933 466934340 30013942 215066325 802528494 872043802 578868484 722565107 875278325 883753058 978542036 981802554 959778534 985878664 892793612 940885131 974658782 978781660 140796028 298980221 424112528 732138462 218028467 230214240 302933426 737539498 339112380 510406471 913094411 985857714 636907081 980711926 657209210 810587671 748284067 938276361 935290458 955089027 887219267 904905637 11325091 192155086 669525601 694489388 400834202 512923006 52365249 818606899 496548960 524094663 467108988 859973373 460167301 868243908 315523748 663957479 204480888 477417558 792703659 881503843 791148345 928819741 211856555 526422648 41931966 575529783 349584933 998918924 606500673 820884664 892090657 968540042 33808754 60529391 543564126 792066115 719204980 750349018 346098300 780693364 321088803 886664277 960346065 967755868 624169100 836686653 871068438 973574261 924620472 985092038 137185772 665237447 498092666 873543813 96587512 280798926 838443026 965449006 8100543 215364636 209109438 509597747 614478015 911472064 331830418 685295105 545482025 748323492 146086968 296575058 888924241 966259454 348766022 581742183 720081742 966095350 37069503 987401118 772141858 896073635 129251095 603353797 518678610 582850344 663281386 823195057 501066513 636038513 16231517 154121644 21190215 623958025 955081618 998919925 478172821 587082783 709888085 848027951 759008060 828172520 825509454 904200729 509281208 772525367 544132330 837248608 770632181 795631032 429260079 951966524 833900311 875610539 555590926 647771727 819012374 845654993 10864415 530199619 826241824 976364845 473441128 905356092 883353752 993460165 559988411 999580070 450718968 935521469 112933649 201368488 421099664 741052006 976841737 993323124 517540716 915675499 219780014 441685546 684168764 710255799 555448468 615702671 790299775 820577365 614977389 846398668 851474493 957083262 274930611 827715027 659041312 735589668 451231048 914957085 757882797 900106987 411741387 583333287 295054475 781089027 522002034 780009204 183878157 651210346 24321942 526883572 917874080 923784901 753479416 847655989 774978562 918851522 961973721 980039567 521076431 904637672 777719056 900746572 125012510 342859944 114102000 542634406 595313941 656089300 840101699 989387853 184248411 357279578 388896859 931187593 10805289 778513909 157906125 933832890 324591809 772324689 732863696 932732095 466133097 805846716 227295201 403344814 502876665 622731085 409123045 851525888 164235294 806706187 60507936 723263847 628231849 689867736 400411624 926014037 404701724 631989602 414048571 893028436 809621380 988308960 674506844 973581567 772495206 954188619 658267741 665592819 75576767 532288419 524733469 542571723 287850567 357952561 431963426 762372205 615243523 989630228 579881943 633900007 200412259 866375336 155616080 848251928 281929669 440021361 598975675 748898296 525207136 927799605 477881485 790194408 310503506 985001804 352908584 440173589 691619814 897536993 568627631 675355815 131175512 280171062 61500925 853140359 447763918 630203891 51882655 112340630 250027771 289277827 517008675 907515040 463092758 739927043 4573361 809755326 29572685 945938652 191329861 309022649 480224360 635893343 82703680 239004551 484526811 990225675 995800749 999331689 660009097 663761491 165065887 190636872 769978912 908409836 56397249 175043246 401327206 520863421 831401961 925595323 107076671 805422454 858686552 896260093 24138666 213519657 555710514 944494620 464027598 676534559 693325014 732700327 964131303 985275475 730312336 741586207 61892032 928322524 83700211 904993021 468678386 619571426 245702771 507563570 686887128 955367709 351625172 789161232 762330815 930402553 827354340 900103212 521192615 910609250 775780729 942536824 644672504 862171789 685552272 945976803 785462908 813375393 575522480 796734540 531443352 783313424 461704589 514021370 268820354 985916775 371789340 906304550 845937191 871742984 129852434 375917452 815981106 917411912 791156312 843192348 905718023 923399968 979855431 980600626 395129747 973422582 795191152 800739375 408110751 677401271 24190946 731017102 819227547 907374725 658566634 910224590 939171543 982518713 409413917 785965954 163968482 331651760 491650350 767908562 348107109 709016236 272745214 687563798 976014972 989822609 451446677 550913520 865535798 980186135 764591217 902009576 768812138 841942488 659528320 816711421 16380864 87074724 922899912 928321779 919771103 978537200 712212880 755589344 58302773 574726007 973429715 993019467 673516033 879160619 591652588 650188774 913486399 931705270 304415329 555822824 431160610 828662123 123643283 891045413 240252271 971469506 158565562 163903688 518126067 555811896 255074060 881813926 326046195 441324481 918743578 957238496 455247260 766829414 127376907 938887368 667464939 983567651 580949275 798818467 573782488 944103183 567834481 916258724 691413770 995593524 658765245 777172467 154767029 944106509 443701241 774612695 904942057 974685699 538915107 722052808 24478786 609639801 789485009 854582130 464047161 730708822 874999415 881425349 65239988 545125771 293207597 544453180 268771707 624658420 190648442 295212599 111647518 949219598 389718757 552534377 118835601 963608696 719037301 727089656 400690836 900442452 326465079 699866477 881547541 916978765 793185667 797090855 845175965 957178988 915269509 916907301 382856032 559805248 995237463 997126058 893779848 954449931 357650464 946999944 895292418 900901607 972046517 998114808 725199648 933114506 642571391 908875060 264033029 927071096 319660415 526979706 612961857 897609075 35820682 236459890 875672742 943877797 350156735 753116350 546059894 911929824 813094833 817885047 588268094 856850190 166346135 544290836 619152005 708489615 680420236 924189305 68946173 868345827 616401258 943904116 41586828 187930225 998818598 999812927 294759860 844763049 868959913 979766161 513518118 889228001 364615352 442491538 562472579 564921163 535260743 782725882 245845757 655417262 551777017 938338398 168417399 903585206 506153695 621945337 629916065 929734387 322454036 667989696 766062108 833776665 6217 323975333 686392430 838818071 664330708 825791237 40335171 249883836 861110911 919712317 435096154 930525328 869561238 977220695 811859798 988634646 59259628 407093033 60842688 529992216 438191669 756653797 498358629 859713875 409500049 947680792 771264890 834054810 557633541 579630621 930483839 965574196 37795941 851278164 617167586 749040855 620213145 840046819 954185625 977182581 782660047 792346823 344015420 770732385 964079360 992446225 652752486 772726526 442020199 764140691 877695364 966298123 257096203 539904190 678135018 713137736 791437276 945791001 688904975 789345631 33596469 500385905 87916011 952722784 15371246 649095093 214270387 831926933 217697273 505344153 38535143 794853367 401531444 674151889 798767751 850573862 371577853 711854039 641815626 928078207 482626430 677653140 119445795 174881888 57372625 88252730 8025162 623519056 20967203 915878521 871501714 895544648 805381029 984701779 377553372 543798486 942091942 965307666 35101104 206531736 304369453 588542673 770243898 852426807 890660014 935335384 1767017 582947907 772907666 906005009 273516036 579478068 200557632 644720081 873827529 960854871 511253613 575173322 923843321 974665740 386260992 855574472 201132998 649611725 887892408 912792204 508686169 679636919 972902037 987474392 309496264 937816505 353042200 654080733 247070376 871542286 929333356 995319809 882920355 958736124 446295357 661835616 326833213 629455743 44120354 822480901 300547387 649663023 347612216 606360933 841188893 882730171 449346214 669438432 537810788 684602630 462685300 692046768 727905401 863730706 701428628 723583996 559739541 808091330 663689980 869274245 834921342 911878611 141182580 473908352 503531940 989428983 616556634 786715105 895564798 931349619 175438227 803337946 142738087 377079887 73781821 503246704 415390525 687612208 566188807 587245395 917736766 936192447 889334822 920379196 876024987 970276004 236414224 646489640 263543043 457296371 429745971 582176904 392272103 663426987 295893642 679093888 618895624 828783151 686005951 830716073 521553793 594496050 701426309 881948346 928582982 994930226 760106273 951214838 892450695 955265652 860298959 924804359 891762322 911719915 145970025 879850184 381882571 548201061 687476205 759229895 186152064 771013846 375155660 927469970 505234899 587469178 703747720 872748484 394687757 484126197 599002586 803927670 221647255 478078598 625160470 793787788 315060401 496087577 902734669 910444525 441173744 471084715 802232747 819866233 472395009 700259275 446025451 626516572 545007809 848726962 110706205 977175138 542932319 568094778 141450785 756860972 799952104 864515368 83856953 353997912 979995118 988946462 604060500 887061000 713316141 900111372 784990353 870996384 655837201 864789120 757021638 982477464 352300444 447137057 640394970 702077202 54258325 623553613 814862227 995420905 886146979 886643371 499161688 858778383 875832825 968758814 723544661 956308347 155250436 995719410 419709274 737256002 770501368 947899807 330675863 827664959 500542302 790271355 552407938 937052062 411489595 598460287 389660860 658847760 297429174 980153028 515044532 888949229 355271119 696387685 79406098 555054491 468415071 770783803 901708367 991420762 7298790 531544758 430733332 597545603 843860618 982542955 426728884 506047062 55215135 90774630 469525432 552417715 248733023 545887068 328987408 919505909 224340371 887154364 283992881 868969315 344288039 882202379 880966685 892138108 165077278 168025059 739324073 971366983 14158541 50287894 761865145 782961410 741278235 762419972 150040060 353730225 984949088 993260215 870282931 901309250 799577359 810280404 924253468 938057004 547075612 961650136 994369796 996521985 323287473 995311167 809723254 880914451 311092709 495854863 334821736 339988446 862670445 945144100 142933553 785006469 615623439 885091991 806960633 975937509 389405427 592192484 708577450 817439586 894808832 956070788 762277940 884635057 727579093 989429942 975532559 998339088 721507286 739678322 81695497 466304440 243836596 311170101 406987270 978999623 910261454 976106144 939885498 980694468 456230202 933464665 73602958 216650125 868325219 972290639 892180513 946195409 63845542 836773677 789711774 953056168 22697328 534836043 603386082 657524051 630792871 913450920 927076912 935037103 413924538 419143962 477528263 927989714 289713849 747321533 326412149 670250130 125833562 576177503 78827461 347391825 35655603 946171575 610569922 709604725 916922224 932257381 125182709 968130980 33303469 250327945 145985945 828195544 988838995 993144258 835044555 860383278 802306278 814754810 773425735 822535382 921910744 989371310 364533563 728235424 19000937 813061761 935504706 957092919 941472958 990351750 830076530 947484929 194404757 695526354 391734678 868764739 582299745 804158277 250359222 731284524 151683853 363504918 924828153 984046982 336480023 521467444 686645833 688551282 870451909 942968636 661471817 847317204 705852710 842498595 530027514 691213808 357469338 404128085 995190340 998372024 743238257 924313702 34529199 483546014 452699684 779331157 450524155 476282249 530599354 910432587 868172162 882255497 423867263 837750727 851412489 859828562 894793784 964714511 321436363 619723945 421923901 817281143 551817060 656914433 808113231 926890157 906180463 946573337 166363544 952542071 871584975 886393425 942157949 948023797 390697788 985479253 772961078 900435984 900261 883352752 813861474 853528928 506173462 537484860 117302173 805973501 658554153 668466151 143561227 602694036 937493463 938516620 708901920 861893687 430746548 751825250 860888322 885823165 944093206 960414064 651272906 766891800 291951194 857861172 898072825 989941872 878329321 983688766 32760712 295906526 19073970 757400985 573996432 839085951 191972226 901064197 585233156 776843388 296181699 570152502 919693738 948153167 663622969 948214674 164685999 435448349 454786045 875509898 391560658 464631438 268526041 664980256 426558228 594018811 980239214 986458765 230203796 602009758 777969419 795479573 893061233 933285470 420666138 846764910 445529190 935423236 967265762 972590593 921807436 941799260 204160339 919807295 573678209 644362198 127540033 848073717 483052136 993453376 708204571 949782814 611239743 778281319 88680025 943423477 610477338 624822025 11372003 861760813 177804395 708308520 948250506 979080440 148198987 696461936 563686272 592953849 838330297 883280490 734818675 879809026 823312820 930301668 155838597 669668786 430944073 505728521 216989259 726657599 908509638 958650496 31903944 298512685 885628042 912828686 823049709 874655037 573123636 754910463 592254426 703005453 602679213 708909838 552638313 602368021 858262695 900953859 61929522 707733109 450133418 643084495 96754990 112402550 82668448 779661079 73491434 458697909 981279352 995050657 164499033 742574556 965244518 977381977 290719977 919949148 589659860 967310451 790681113 979658478 971854937 973164214 797215808 866215228 35173526 865651975 579612538 940955008 677807977 990476355 700297901 709317151 68073019 429188187 15028471 278843041 946854763 990042968 965432044 979009375 549304639 594512622 543919494 666276569 625111124 789046823 76126639 996192440 478064587 599350164 990572914 991857973 243320273 955214828 966620828 995752228 104117108 918943842 268437428 296115559 718191752 780605272 587894666 777313190 679312443 984460433 849800767 930710141 743640562 749650848 507800181 552881898 516411700 813546455 813366591 821054274 192320956 256528569 656589113 785963581 373512872 771938605 44201788 537307576 212061360 556462176 939018768 984843839 878041525 899059702 483819087 696502640 130633871 602878738 293694710 738548009 835322553 923395662 33623356 867062154 36875859 170818169 254330511 723751659 315152780 732140614 909700719 944423921 394814104 633127396 909281886 950137596 584059764 743221556 123707001 685450949 131159065 495117965 5664248 150503061 968116362 986449158 985404694 988219642 592381504 701540478 8200727 97830907 519966136 757693715 209700799 737365585 895504682 956661652 912485399 969805148 374811645 999970052 46801011 169737830 643805584 818283693 151767307 887793954 258858766 984030717 891070553 984150762 853316709 967268082 649844767 797420429 462805836 961046224 539356905 815890906 220904402 882989777 360820208 704180169 132470096 523815638 54445242 639754276 157983508 899199627 677538787 744771867 704736073 863929951 628505805 984424200 150969716 797626720 37421142 154590047 619913198 935712020 5697995 481734569 385593416 479267940 165351302 521957966 83223716 592480647 955612033 983291849 927662416 987350872 193195892 653537946 907258941 923101688 920435430 935160172 990481803 997220726 604139241 735098933 71569286 777261155 805809734 963713117 987239742 999888276 345275023 572257787 313918275 580619975 40047503 65417428 282396426 381116892 685257620 960624709 679953639 939272645 268621349 847665111 561756598 623366496 812710233 978737834 215169112 377114800 998568603 998757582 334184748 353077593 718329657 928792439 797099575 815476655 340576501 537116460 157815011 970383240 116726587 466240124 156025528 157505307 734886119 853601551 793651114 893071547 693880499 712595303 638433673 699488386 436058305 929324351 435949660 468520507 666834093 872457059 107136554 991632335 802677980 945387526 880103245 957106967 771236661 845966636 969351348 993527313 514295909 594209408 575183176 828697196 715599340 755452687 394855548 471511724 139879642 174761789 87509822 620353076 62618583 438087560 854250766 935419225 12168217 506048759 30943434 419764030 375535112 603818576 640311225 646633661 736826816 898837462 407636623 812054463 11466017 30093464 414910446 450484950 403258383 793194020 428098206 633001268 688964737 768285463 433459356 479125112 331813556 579705099 670988533 802319727 181241919 855662454 311537833 902890380 196687735 893755817 159087102 277922627 289357187 343169830 893872763 992294690 460574430 732863342 446225872 619383095 344703440 590345215 708641251 911462685 986699185 988290497 11739296 170616734 197289826 805793289 672258018 761133803 97396777 929868317 857518403 929840859 721083409 915127707 418940265 663473632 141017865 160221478 37529339 99273596 579252087 968839607 802654896 842049275 467154365 959187893 820401798 885422801 877288215 897889539 845811832 890302408 292118446 876766493 554190092 696034747 672888541 680511753 203286766 620793694 551108298 964889554 549660936 999682890 753057554 781060230 875894117 953203253 381012409 496050064 206841885 603446190 771075642 886009921 837817495 901351634 240523716 616947110 782884149 939256277 195001928 632010707 708334172 856807263 98734849 376566359 664649354 922546133 293028183 989169639 846483857 935564666 856615587 883702948 816211120 995490442 993033851 997886175 649974733 720043950 894698442 992227618 261610920 466370341 56229700 391106186 430366089 696000322 895115638 939379874 464434267 860386731 542264716 881996390 46630926 190955826 896480225 896604525 25135439 57729057 600295527 887996004 595440525 636837427 921369164 931414387 217751976 988494595 649312922 813981086 492934246 956142601 624365462 692978227 822426083 952831314 941956701 958232240 167292800 999892484 965923144 999030662 157128054 419493517 865076469 957705967 833159802 956898141 690374838 915497133 464479068 807258906 397416585 937823288 264253705 462377188 837668888 994489059 709771405 870953181 710613768 833884616 224946955 434734228 936608578 944387680 765694708 946450676 705072134 809639441 51877946 716893967 932789583 950289837 32801190 223120040 677196001 763896498 19047799 403557671 146468956 573059551 946408300 952833607 547048946 586600857 951709111 962873614 726523031 838719583 819336649 825556937 133935568 925463469 148392168 405518784 863614876 975210901 88624485 602854531 292433250 793830419 411933591 637104851 357680278 498488811 518522718 748714616 67277293 323816261 416065605 967481687 38395625 593652428 221325506 955977209 506478511 806131290 955896876 971641853 136681959 303185455 713404323 910058437 779848380 847141863 811094893 882327698 69573320 224877138 562184773 992845647 780969228 963037694 654435591 842840759 596376167 669421669 896540800 926165508 893874943 927343697 979895537 986313465 7456851 632120843 184183297 979606853 877667419 976211903 313392517 484809527 580737970 912325393 101209137 425443706 781046103 888562198 782714936 845945027 814111520 915815422 280577045 381765836 749128365 936209179 633247850 959756615 559148991 813350048 976424079 999537903 232438587 653189973 718365738 879586161 534956941 886992765 686417512 698006744 473996965 507008636 287479057 422854769 840086835 937337326 827773321 977225051 350640560 827566641 488693235 584049592 409543495 933511868 988484721 995105658 412910448 837943467 557027707 706422250 606687212 726157050 699879877 865499036 712737395 780233139 785502849 941523709 23538520 952554907 961899820 973054838 426766765 755301753 575680542 716810964 730488161 810624132 665312945 744347202 666730661 743781393 365307370 798920075 755597213 889718607 517609421 609761809 731324422 839522170 487734584 506673730 309787883 773612412 468406940 790321157 400800843 669453313 220146522 327682266 284537484 459015493 959292149 965658880 571822767 716455472 186422309 857661456 654469196 831677788 609937807 726128537 787634849 919486014 334896783 492789726 380729685 586118499 741728397 951341448 271964088 533686513 458307521 505201143 993849391 998707742 231818670 383412128 36710915 225287450 346989209 381555012 35427290 161201483 945798642 989121624 711307353 896944080 828253125 859068079 433718574 956853411 294668192 536344961 683572338 796952164 86472512 425316018 579754593 864720919 550357014 827155951 712190800 941093430 176719200 197872938 450226944 806541500 285902312 596336163 326408667 890894812 595759449 960420201 491430774 925063824 108011554 706199337 173399220 360424151 55949081 107479831 540657179 925848325 327019391 492938814 956473488 993470913 304750706 778599731 155446441 549508505 270464875 540856296 646365272 716240005 325816119 544777016 887371938 894892298 700081265 733565062 381869580 936401426 903834869 922282494 128093804 582014610 229446073 434162131 373687506 563553246 735601842 808687700 570667379 698091998 469142223 870825253 958475823 963982318 27788513 687511878 384974923 825648976 868610045 920354540 528996694 724283496 333100032 575814893 255988225 548470662 821537441 959838481 764326003 899118723 782644443 799704155 529776077 670415566 155655867 644005381 110289843 325242190 143410552 357199644 601618041 930579634 5904994 555044169 645781379 766583649 69269232 270436936 246514034 973996393 113925457 397187778 341717225 609452867 427166618 799229339 25206719 848786774 618276385 620962120 36015453 386202083 798269667 997279633 261080627 806553529 150216389 231109604 437469331 897330504 761400980 883923080 109833361 198178040 796222415 803528320 371226759 884362691 194930289 617655037 154750033 343146092 516450125 620951213 694721443 911426233 599903978 626464205 743179832 941065385 520897824 611355035 398850492 981739406 227369574 554841795 582213909 734173241 188649149 660378567 853022112 937921512 137186557 253917898 712576424 902458056 521967695 877022725 769113266 954351864 907709513 915244261 763037899 928766664 601423615 832816910 81893154 742254232 308334825 681918877 568020641 888561561 396662980 699820240 559501573 980372220 581852655 702189947 328741275 449767026 285927170 326900596 981408112 981792591 430219274 732213478 751282418 929910387 496340714 635624914 766594203 767387118 385900007 736905579 927407712 948940341 811638251 929551424 198978571 655041029 595273470 880449879 545193252 615143938 417644458 423949952 675161683 852687427 548996720 606907031 302998838 397610319 49530151 853251538 438437177 755338758 38124740 585941350 854601243 895201276 537828331 540205821 81191243 353021471 764880541 903069166 333245975 788465668 24348540 747301312 415999210 543917693 707810337 917056794 18523009 138030934 619109900 990828178 608215649 668378971 215162288 756158803 543693306 839301151 198599917 259487013 909167506 953338476 728440370 954601024 833536980 852026715 4862477 290660487 911603194 972354322 691579326 906772493 640693576 663375226 258085911 824898512 965246106 973881961 647547291 910286811 344126668 741915417 552409304 941612162 922908298 986235976 174089914 698860414 606697036 926519384 902574090 970974840 348015767 506023262 724896612 962721733 830158420 906720857 113858165 347605355 934552490 977720052 329191019 955369956 300785499 608442673 699715310 756609992 237846429 445248248 855629089 907495120 647937998 703262592 740525178 761614351 368412401 986106070 927271324 972517026 330946589 490135686 278369140 668957012 711346305 921112648 92157434 480619962 626235830 812466009 910987310 941618475 70445121 262322547 773503996 960419268 75594705 993247661 992223865 996646931 19770851 584981258 490783972 733552745 329372696 653666244 439641759 681788421 920801109 968921562 752404252 922770564 868046606 868619666 594924473 700112651 530097095 996931970 533495097 668539726 600571847 876982692 401823215 619803036 723384147 875682208 727205681 881176718 275854905 815831970 886433436 944707681 566989029 889360081 387763915 914587177 284558168 316276942 217721376 521578057 518260907 908817505 287078602 877352129 720691746 726098718 396494191 699942330 998738069 999001473 25139568 223730346 734563592 816457199 527389226 932968426 77168280 283548557 582972623 953267856 871645322 992310034 397492031 497063106 634255495 761831011 132071432 764270124 561655319 566783815 476905513 563107701 873671544 879730349 643389324 798642213 11129084 889119157 541587772 766143979 597628234 839210060 385644342 571531911 953672324 998585145 865208851 868216354 542231165 708808264 670909439 709991761 930287034 946026631 774334883 796077656 398402955 594046268 872220436 915034888 659356396 968593755 149995947 589738194 711913570 862631074 482775007 646258145 263116802 691059969 302581107 685042605 168896775 260027058 188740609 327597485 163719213 331773950 461882998 757759651 393510960 542134979 815955651 975279541 805253620 989714568 699372544 968885064 681983451 837851872 655262032 978560453 543537530 679776845 307316250 611890786 807651816 997496148 917208253 927880251 8127119 184943418 343706402 816870700 942044141 948793060 794028648 900202883 344556699 553777046 278994395 972728742 633281906 731684596 539593144 789066420 799139915 850012723 867628169 933168861 645060641 961305721 701518461 822099068 153835501 982812598 741611556 786621048 752488644 960468435 635698959 989340468 520187864 911883672 762672238 841288891 684037701 747964188 288896954 821891754 5382572 567379510 618690967 833131230 567357796 604667058 594717489 673141863 781750386 802155563 568187667 913130744 484405078 628687943 214816748 832426036 503623228 867284564 400173232 639416316 867279068 896872839 212317401 962193010 569348241 609341575 357829622 866404124 572605270 659231349 835692482 972814864 838760787 979509111 921716516 963934612 157784845 194512851 639500793 939512878 734178033 923238301 443168528 817939599 85589427 274745846 112272741 973417406 47070032 846315467 401363444 591531441 164603528 352735147 724549337 995516184 125030251 464290464 441506534 991573129 536485975 875215491 709920839 946871107 276368804 499982452 480393064 938193569 94031102 379313023 868573222 911087049 27617882 847696623 400457191 560340055 607669215 768835568 588769520 848949762 997908566 998048960 496392078 710231162 160058149 720431572 219852479 511840815 846980651 888851447 194150953 901971342 343025577 618247537 262548333 509026035 39623545 467790506 342681412 586228167 156260325 909299638 527086499 809718025 106204657 488897823 492993542 884463388 149768714 457023724 112412104 933592717 255788037 352017836 963658789 995227482 184282605 687064506 482403423 937848992 948224804 994289372 149664528 343110391 288659203 600608215 692429821 805979567 433225980 696012680 818173087 932089141 652477874 820874878 99486336 724503144 736980530 955356170 69255122 934024076 453764781 622628978 574161546 696359793 74149036 749735203 668589645 783969021 681773766 983390055 843131429 847294717 657641912 796027744 888068815 978514445 39719057 708963071 653350072 819678445 36403187 84869883 951568144 992268619 609316584 641029442 18140410 385850288 780167130 889700903 525893816 872181534 585657162 611604064 390402923 637526490 145546419 683351720 545001726 691796499 969773752 987017607 254186986 710448784 155247340 445112314 355162964 888011387 805740256 945895686 664812286 948290826 416994024 664150990 297371691 844519213 415602053 605190617 632498740 640864651 704337437 950415904 903922182 958154528 262182387 758875674 624019952 693211591 803481681 834253203 41754345 742348661 199019794 268751132 944176445 987717507 95009019 308729949 46533050 711873870 932952558 933809584 726334266 906781219 774329380 906024900 911267729 911330397 161892786 527737887 469439124 561853359 190006512 222793784 197699806 941589404 239325277 424755126 348901172 954241418 237995363 846363701 10563414 469065679 326449685 456394448 116300791 839615365 461911841 691041778 950706849 991718573 91689297 958427027 994334964 997566174 118526669 868095523 385806599 673808245 135310984 438047701 212395301 719170958 4556016 271220864 272469535 774834330 484594615 634868180 203238076 435755319 565737074 645155838 225219713 459296226 185067250 758815970 803872273 896960039 804218023 887364991 282134955 314367763 512304320 600158315 832022656 903846353 255783471 879032960 94203517 730256436 273871577 748536661 536827154 563461580 910448343 913349539 665829794 964635711 571043355 783384712 279073734 475960218 891999892 988292583 491531553 839799452 490240028 885160132 208099154 536515993 953416277 987189054 667110906 713453728 954563463 982931314 837177808 966774836 793745946 987688687 520482995 869713261 743522150 776514279 600630140 809186927 826881831 914017524 887959045 988498519 21642179 530805082 902888684 913685280 52370260 835382444 428462786 904747532 832316939 863180584 558963211 675973508 92123487 986388621 324299255 490748632 354459641 825308322 322046043 985303452 984148526 984835777 17057073 192154536 484944871 903692674 114397680 572978992 422103750 997983747 342717879 804442007 558093475 879095300 162449725 944544916 448784310 980250967 832491569 903799227 57026345 655367597 715036319 879469980 997384566 998843193 598240306 629331696 272783960 316378098 364331522 462358320 83624299 903715253 891101352 901096776 613058279 826804914 536425053 763325175 181791106 359518819 569771958 653967490 936987049 981460022 585163940 790753195 206696427 578791169 416082856 543741693 165165293 497188785 233059434 698352124 689805705 691718475 446420957 871298411 466853562 501314595 118754011 291500799 576158044 820339333 279854132 950304079 778429309 784023606 8711515 112173266 721836182 888354899 968212672 999039984 821274033 899399545 488923125 543487893 504938372 567562441 618698096 911469846 378971376 560518939 945309578 978475075 499696440 860443572 714867906 890666526 771738942 923884678 122548247 385180791 208313244 380579953 292584628 361739241 33917105 194569632 93803152 658422045 682272158 729310583 433777114 915774799 273816114 527764770 836631797 848962680 697977371 923880436 208292539 694994165 999110697 999447058 395313293 398543675 71540750 204703819 989898590 992026563 942211483 991173996 906459053 911214386 93524325 802269846 53595246 144748505 173644596 911596000 74072867 852906988 198405823 809191931 537564084 876097383 350370233 804477320 798481821 981298781 465528679 641655355 971103672 995998160 154935878 188974138 344011745 476977985 514371925 877845770 56441440 539926731 203674159 276089740 641134623 661184977 783382994 847953312 760159092 891555522 714383651 862154843 256198946 910452372 328799305 343658948 919135837 981980438 546680573 549212613 498381373 740798216 900100343 907592682 530564391 887858887 520479320 867418032 545117351 784199349 554358434 850264355 972547176 998466990 569954452 711009505 165572088 766539521 101587697 726071608 227407860 462983566 847074735 947418672 321137087 913124290 661221253 812769764 972799985 988409927 748153989 894588700 151397698 819923208 806571046 903008331 704842857 897318058 859848732 884646580 15983061 30271401 235149665 329959311 411658422 419048003 714604572 849475926 224376181 573829486 162983991 458075844 585372188 859443715 172694612 880679097 578476498 703332144 750797018 854888460 800097492 808040926 17065846 581008047 272250473 703555729 568097458 979983482 216793429 780662139 338510736 870740931 350151470 513403607 725085740 833066450 589569000 750359989 336423542 834722279 15757709 662274089 508563076 852667075 358499246 668057592 299752770 335248327 515687957 683922097 480621690 857279788 796416362 984505075 26136431 538239126 858575585 961557324 726186741 743954532 300378968 369949861 691619462 750509183 987556124 994031543 374349030 799385527 258003604 325090175 268532836 816423629 351077125 409322009 391521571 854484797 459763948 642768180 911707027 912313595 77286899 815686270 348015596 515022662 520146290 652699445 725977862 971353516 846978037 890568942 968066583 990788339 798741894 985074803 961625052 985751266 748835744 935672526 755347219 804074926 852362227 948836490 303836808 853757686 945793475 979324905 30438254 507280505 271847064 699068103 416917137 649891890 925006852 964952504 201524628 390646156 128280836 167525372 804985114 989075596 937731556 978581891 550774123 998629397 411091057 582458880 713345745 804945464 465596637 700813213 197269029 321331160 825149195 970142629 625148473 696732604 171171314 412123510 175559726 589836318 122127467 614030558 865953296 938729279 256117772 535220913 44525861 950936467 656677371 698484577 846049143 855102733 424934710 716596161 310174989 686849923 218205180 547894292 987241654 990001618 959869492 966767422 742074325 786361365 682491176 979169541 754225500 816688004 132938179 365237672 518204443 605004581 804746537 949430902 480168108 736490089 897813455 999602095 741195025 876057114 63103379 178598311 21196071 238094913 422494916 871429098 595118388 730476627 625280001 801470844 395827141 459680861 267212310 858148316 898607179 923713690 778835457 820672765 223959955 369256220 583745574 651807350 997152195 999871382 164457360 253215052 125786900 180486383 201505701 545325406 55306603 606264826 691781459 974924598 507088696 652701837 383773291 954881737 214468780 644971461 10715602 660782141 439908234 541945845 620877836 812913033 410423336 735174463 345263856 439264771 580853054 722985883 359055397 757295534 660178830 749258926 331539871 933677345 759054800 848503546 622223918 644938569 789619251 907286890 364980041 568326914 321584906 651031047 226167345 826420446 84765582 332227877 963578313 988365101 925104070 970783315 764736110 842724088 324273378 519136357 140363668 570743702 331374125 660458194 722575806 781521264 356500045 556284316 806082378 857721959 87803074 237261525 226619954 548983633 283221373 298100681 508496148 536265509 310211850 815360493 421547342 825665867 407840261 606412688 873327653 973965949 526080653 831763352 742531416 772640094 936984655 998797855 67040643 489623228 454982194 998773031 142855821 919462682 214899841 766347638 409544099 783285527 517614486 950307620 667906354 977438434 166919534 630397761 511110975 842898063 409409638 500920129 886233409 997183808 116870332 586291210 643714769 732854627 470176196 841070804 994473350 997460220 997939853 998615676 123301120 958482496 375972536 564196118 727924833 778177291 370942344 482848193 571541271 910106561 56669448 156887724 575000103 916535620 669588309 975376836 955887503 960543565 644432014 908407260 754875463 896185525 540281928 636317803 164094860 883494780 905346564 986273348 830140333 981247973 551461956 889142458 70856375 849659727 694365487 926393695 275225829 927852748 447826278 581581049 32728934 676558475 204773499 611648413 566591061 740945142 215989062 687447801 455043316 622524433 257587301 846902833 290437852 375278327 858934172 923118147 350741366 413545760 395794457 531267592 376466526 460821753 427490613 527466775 541157485 924459246 850978769 875549342 529003874 902935694 241114594 608996312 192606594 679037492 409620295 462346738 296434726 977048577 679198679 877288179 288724772 723060170 447777003 558500303 121466425 439236295 62202428 704094220 987594388 998361793 843893072 918896691 511432299 952370498 816059974 830519730 770575919 911981077 491691509 914448730 600815857 710988192 128949407 373436225 837241312 910705613 613711747 916921770 467509906 961601639 339476798 776912058 584362399 880509067 700330594 961101711 226683292 698199029 225684022 716605498 82067887 810017026 702992620 734740849 665466241 693885690 749325539 894169081 534961624 729939122 578335349 923305401 332695483 504247952 892823809 942681224 265266622 486269500 816403685 993120294 335670818 981713348 728966148 881549295 376339926 378602270 866815319 961264149 859637545 974242086 626718373 909023359 791547124 885574792 117074909 408392271 3149440 711121312 891949474 935902236 709819407 881900755 735872093 790500640 662670955 882878127 366870013 585040319 655686999 846319151 330684069 609885935 451589260 549388937 706691638 719620831 380046957 468794455 247710700 713346966 58121983 691748440 701670782 826641962 268676106 872011742 867896127 905945918 560058201 615609951 519937720 808884936 371364614 854735172 284951088 689080512 381421997 754641555 986473675 994816817 445956262 747876585 365676163 562380316 53409558 907917424 164990874 312302121 400280919 562767051 662180571 782914731 399455291 474685393 243730682 562699378 32170414 93390692 638226467 866042647 739651742 870988880 839286321 884371068 665631121 893518651 193077623 221031555 396724155 587462255 316964106 911485389 671878839 921106379 45069336 387035113 626664896 741505863 445811521 453982018 24406607 56206778 510757876 893270311 397289809 766099791 759301777 975348850 625671854 770267423 593854123 707768960 155480357 713987333 214445903 466394280 227755916 805661743 773006766 870730569 245159677 304168061 583261670 816803525 124004511 566894908 128846172 987760562 220944595 972522440 554331949 604548373 465884884 865894003 382283775 998112781 44874462 430682725 515427813 594002842 234567519 237780346 794399649 827438414 822631742 842823583 764118327 805334772 264498832 566476818 499828213 892286450 991860159 997240361 143802574 274734463 983666607 992449224 115721843 373147263 855251836 890341917 498422506 515405868 38459821 106828097 657129080 958374467 530805772 943725394 790893411 963786782 195807813 514852507 365185667 907398348 669904298 694905906 709369506 965206620 290405349 426541016 832560348 899125099 288833874 505272799 688549459 933604510 887001486 932664165 525347628 987382164 473861160 720374913 141840307 480825646 917859101 977021980 209671744 857077248 510466166 951662233 235790389 249691273 413127144 579921574 917301619 972090853 451191902 587074892 66256962 968628786 74813364 917272612 518690192 774958969 649583690 923910949 326974841 680601776 464214613 992057508 131333561 141581990 97737373 570705626 618223639 635036842 458021194 996620084 372920110 718022939 249167405 337147603 945948893 992018992 578878748 664950925 806613061 876066593 13177188 761253117 637372718 818322460 701250485 998333843 471937630 519518176 334650639 631330630 547033007 754307122 412996683 664818609 600270393 897676828 309831874 894338162 999107315 999889628 310131136 557192613 541632142 875136866 154680831 691928638 985005253 991451511 532067102 720103801 247406117 318998398 461658752 799010861 154649069 779840925 623846474 742204644 45129691 176069983 554604987 807260452 591668344 645579355 1309441 719042838 819230866 910733428 306476863 482460481 717173638 739157249 855282329 873029998 666813053 859070533 678902561 968105901 227452467 506758402 363689819 610868378 323058604 958933641 52777538 389444105 358075248 397990739 565067223 907995271 922677275 926068875 674631938 739461846 811918246 870486247 847559767 958914147 153339744 405975211 283990496 793513790 291399386 357058365 443520724 659040129 866812294 908598218 642927669 916489489 539814625 911695872 774085874 994718779 613216051 957952155 866697545 871245278 973020812 979240159 881586047 997026197 357140939 761941948 984681369 990212080 898475680 915720033 973674298 978387023 184703206 813542079 757139720 849016643 668606556 782095249 51450337 799058557 278912206 889814770 461547754 564333158 405915350 661196790 460152723 763397346 116695198 222715105 189070792 209271827 157992169 536558444 742798330 933376713 983507075 995627163 414452591 576641306 204762279 746559137 963874525 973598810 890847710 978655944 971983070 988647537 896486121 974204495 532506430 557223984 189110054 505321096 69557459 87580385 913217639 921478356 503708461 864602129 700689646 747532315 895999621 899604109 262898138 414292709 54727787 462075037 81953214 200746894 123776870 231477910 709478920 866402427 858422936 925743547 71890140 387370161 297540963 881517584 68502420 153715533 910493745 980195498 68506594 706609441 560421823 838590280 803443749 833662695 359490547 686932003 443479971 522046491 506802680 814181821 186936402 832759276 366507861 490918258 595266006 951058158 787493629 984637968 466562003 847632071 830431018 912477096 548894315 585736109 456078357 668224892 500416373 874590000 336850418 491065700 107866492 707858066 920521078 965675074 790171647 811609170 889475128 902489480 223901682 688873557 244935139 494278838 90573359 230836815 606923547 679782274 650364108 756462228 148324714 301041323 741009037 991453667 160469678 240594244 892308714 981977865 559690675 777636418 51355267 60095405 365847711 739508118 433469471 521060462 527077384 699009282 359028100 526508627 945916349 971239238 991770196 996923316 641177088 954150459 387236519 469428252 767048916 851927530 394965434 801446728 699679301 964094763 62262219 976548858 691644862 871656819 935539545 955759842 132933688 501517353 197092341 424865370 166871407 517938083 700973630 956231817 770875644 777513519 21612576 642892798 967903916 992874097 910384310 984074687 311009517 686848709 675462767 719690251 76520278 590657784 260452665 528604173 320564013 913030199 790569678 818271442 450654881 590275423 694508968 724055830 638366985 780865945 950333026 986822921 278623292 719664131 506702328 609400418 784015912 939771929 494520375 517428911 217463221 664233817 272388126 357407973 754434331 976585743 684837756 911838786 486443627 734522053 131583153 229376747 100810533 488224581 18367275 539256165 454833598 615845741 174415254 995114229 938566218 967583885 688110315 725733722 378174065 947757291 555645623 989725070 585492680 948789901 840552970 930317584 382313780 673752277 277610682 441119015 477807659 481334633 997227818 997578662 653404757 762218598 984457286 992570715 484389369 539616154 810333970 950438013 875204634 902742501 231534625 341212586 371063908 818114313 359172228 741082458 274860491 787305473 376471828 917392887 857950136 926665610 854992258 992152728 288206927 593815411 513973574 892805125 967238691 977528618 761019354 809535970 422854261 557056808 820475239 854641340 53227809 180160969 191060496 418845489 806905463 904588350 722131553 877228486 231143505 313787280 95686968 317625831 647405829 967190047 213531715 995461601 151532228 722405393 846658573 950060909 187801079 201905805 292645465 720970893 343567621 364482572 149580459 883453380 159170297 471798082 702848819 860743162 502944235 899531460 634408457 873159000 942461573 973005890 132512166 722554587 275436469 502077928 132919208 725113601 687812024 825782567 556727949 931449367 878138471 969040963 519479766 687801390 211722448 400695997 405920053 733332311 656534271 740245540 82197477 127718998 609039979 945777432 927113307 973938264 544892263 970371140 54457798 796275025 647755294 977095906 557967537 962163792 271596129 312775080 496473962 620654113 355653893 961859419 463983701 480908460 643637220 687845375 260748957 532667210 296809910 575798102 642924427 778939868 697056200 728314499 11438555 159943726 831919831 889932051 889405843 936363622 536357950 688802582 599487368 908710207 181062285 313881079 604829635 890752895 849633026 947156074 548609090 976984723 338140605 903125143 634075644 750096218 872847366 928388520 966345718 967432841 34607957 448379388 403687838 964152022 124399801 176461914 309223665 929907439 928766041 981534868 706216873 741424958 273197228 545905979 198145929 987419058 45736187 210778742 173806907 921113810 931709761 965693370 919448929 934449437 706459212 761859054 392080505 946545039 137424440 201969599 673515788 859548841 984559347 997921957 465302339 800387848 396276159 819239162 40075822 302019693 764493664 955075167 798168872 894650004 199651534 418725410 459649816 748571507 179478202 277712077 467923641 775378429 197910115 524149509 294929408 897334535 66339915 774323769 549449549 922947929 796042606 874983385 864591639 986858333 653063151 804060119 608336754 987539655 824659338 827084481 287984481 832180891 173661904 743862725 146065568 950288774 673166143 825285686 490399914 775123329 900269208 944709585 78814300 130015866 540096423 674809468 945361774 995122016 871062703 929954136 42736073 644055286 414134004 497866548 895036318 900944322 104110618 444464906 927873328 978860778 977078205 997299583 632098375 935140945 794814842 879278655 690537760 873382396 646452199 795483422 862276669 922320830 768130911 875038641 501790437 786271603 921649197 996126895 325100841 729365063 409885833 537473281 726211586 852138042 443353703 603773527 191955422 486259363 122586917 802356771 800348279 848218118 603667618 813473293 112995065 578234274 510449969 987934462 9372010 228102751 575691074 776676841 754999675 833238838 900408838 963945178 387670694 936972468 511722087 625556468 989186518 991921680 305868358 423164533 598143512 946979473 796999511 910604633 403912184 698881217 683696825 873273391 777466965 853343329 518122462 991432456 542677365 840077229 361327654 532380916 40106295 848164922 804407742 991079157 372320258 838954058 293068317 446553034 541226454 896343219 103806995 458939883 158748745 592418116 986217030 986217094 524911384 873480887 379691136 749328140 305427313 566914924 707343255 710695613 751225389 845454441 113181331 784710534 719795795 805121138 431279288 469796878 977116393 997782922 709668483 856450435 89191426 727956935 263386564 312541149 965440372 983590413 808282771 948508444 592473212 859247986 570550484 584670646 779076684 935066682 357486792 840381253 673363061 755781889 677212025 758504422 460771075 669139817 290117027 980009900 366184001 784426002 261315289 952038160 210679785 895808664 546705150 849072856 772607220 797414800 592154177 813959233 91376146 419342078 990724766 999323544 681458273 825541972 282518281 605019675 113506120 200616761 443320260 899794998 682169930 802339089 493148715 655670862 655382378 711861129 67784144 89392469 814040007 817567466 329915995 563922362 763330453 911455047 572661881 864182282 607025452 847791692 441555398 979067756 717218866 819960850 594872680 909718293 664550520 774692078 315235402 661272609 781285822 955083589 883309269 961793879 882466175 951552601 384171788 993007932 385332547 616894401 407158685 436125140 402518385 454597725 375315431 512410467 674373699 748554040 259257684 885742441 110118497 135612548 64268173 955535664 27975367 227386968 575753090 701041710 883517448 930637569 691855796 786389688 378318459 571563026 637535703 866101508 327508161 929885932 696415736 909233852 277447078 419357123 475559393 844258544 284195461 925605685 682402714 741556380 691093904 962866711 533147777 700212678 442399992 758007238 846040033 846435026 365481427 983474557 354208539 417546824 142774703 725985316 576964845 785325794 4101272 557369220 137232684 467547318 425677680 562575285 454007158 467676921 583832667 649801453 936647069 937474689 343554093 763172105 116616632 811979703 89481198 811311947 769739575 876466028 459960089 934864786 272152221 513341017 120374926 123275426 343895488 515813131 861998504 870329658 405717471 582672727 590396108 868828463 814984342 848689902 698911750 847067223 854880736 915286641 832081024 980803350 298062752 951446109 525762359 814718599 243326139 769101369 848917746 897387088 688289728 843602163 131804559 418593940 305414788 635827320 64179865 905760237 483606284 556816468 209673157 937314457 645186297 991422131 610277506 780796922 844169835 977615272 128257234 413821035 192302320 508403101 619849772 802095915 726173586 869120851 944575547 980980406 524212288 978537948 415734480 619202380 187927416 824281316 682928060 947058064 470507077 876674061 70170980 806754154 431224043 640282454 708245352 853000039 259523520 367835848 434107481 579762990 933565878 937252407 270604560 429305410 850125439 903111118 388322370 445226007 379994016 592810162 48655157 97681833 774959215 999793542 934511720 993091229 388772106 788102878 569299578 661019708 159517452 915394535 837522748 964445688 671599981 923176216 704196934 979282806 657809328 670104450 673189945 938834082 969543493 999560313 318656367 791907635 519556452 788157573 56240663 996199059 820006343 852466108 578035394 746712838 906089851 955851069 509538774 926819801 282690842 314059558 821719346 961197257 805634237 827802768 76564558 681865000 17849449 408994057 233953198 480401232 94219834 526344197 121505369 988555835 568904625 954539292 539259100 789326586 907955222 909248707 475262463 555574992 846283281 934962883 450091022 487045982 825563062 996312107 685330217 865068490 322995210 489878473 787165174 903621016 929067580 944286650 466588211 722182284 316967335 710025409 50081164 947734241 824576216 826825035 696582781 827159982 792707003 814343989 240482949 895035428 770247083 977119798 315264882 790758544 307532341 793269723 87698420 743839075 35843551 922931935 829629032 935222288 108737895 618557346 469238609 546711995 121468810 860182362 207914278 551293436 767528279 987470687 975132567 988363618 447434811 803116936 926375012 949390217 932927967 946378754 955497258 977553173 944936772 966269749 66460335 634946744 375547372 850342616 881862698 978833037 245009785 709199982 116199971 253013836 202913437 627470546 508549434 910773638 357718617 908110333 405622906 634195141 454535942 952808832 87496875 104847929 67679274 126580243 779200956 829464051 740718654 853530179 810396333 896778360 289294941 520112455 941504579 983127481 195302208 196806972 552175410 623202658 150507308 532428577 52254088 755525949 403266648 649239556 832865651 914335663 826276694 930637691 523137983 902340981 487571682 833801250 423267408 704830169 494970714 827502931 356786308 956216768 711201244 828389242 905737254 968140002 445473181 882247972 133785356 954290809 416331285 869175934 591193992 849399327 294347219 465017025 615399390 909178033 341513447 656610997 570332709 587792669 344939196 750609186 907578420 996911309 329759193 388069160 362767708 777458756 744678176 804622333 509631088 930584036 497916551 520482485 69590168 281291838 680784089 691932470 834596653 874938087 76718521 979661554 871410956 927142524 62103231 164403151 611551929 823635366 434759181 672672498 955064061 957982952 260324533 393413459 246722747 682699584 545483521 590951311 986711165 992048949 776139625 975277381 761984278 937930434 321135395 477772122 767383720 768708409 844523553 935259404 394091926 836824836 105176629 565544994 12819338 633890872 228924521 875411221 590894459 916210382 51755013 67936073 788948388 858964987 690839845 856302029 363507315 810262407 343028415 478806096 125475193 602469133 775367160 931501043 721481766 913460531 428986782 980040737 88675043 848453472 766536036 915945280 354906399 462947667 756682375 764199485 90384513 383783521 265543150 909125418 267779783 852649180 961425854 988794875 291892918 413852153 387638380 455561259 6321912 771453643 634147952 913388741 137173735 727202666 704262862 967342803 171473971 676536975 302427720 620413553 913634705 968300362 856884309 979072817 490078120 907804252 822466340 930863813 432557793 582940575 599902273 663079548 799723189 929847979 763463801 818830327 95101005 919441279 849022695 888223282 567478887 865478455 929214560 963739292 461478986 740027535 459913919 918157308 625161864 909501203 475602694 984908025 838677129 993833385 580755002 952643952 750506878 977643354 41476330 807202742 712347744 979474914 80687321 216819855 168271184 303389053 663283707 972026726 163073157 615402325 523896159 853789019 49313624 764604288 317386264 873911317 897909015 950598856 841366795 877618538 91434571 396559126 476236557 668218331 679756049 925405905 97538006 698451005 539506692 853884472 476166387 526626171 806692863 904702676 250189267 303440742 309907733 749868837 891645307 997741061 58526335 145784401 820137830 968659872 315719759 966621897 32597608 751681062 802349140 886314040 223470078 425051392 495373196 750299512 325124376 893080360 829083186 918492022 190627861 241287121 781259479 813420462 655315061 720618128 3534054 675900001 784540563 833894703 504077376 742272123 729600085 978165954 616557 384498597 449706078 854385432 189576243 410009287 943354015 983080814 102009909 211914724 286460529 989159532 987877422 995989961 443157995 937326691 647749357 920260401 501585713 539192185 749579893 793055386 797655100 941042875 107655826 853171438 922268018 973843983 2105553 586308640 509729021 992261250 603763098 891252542 188048631 401850175 195454302 813942789 491755207 624571156 374636041 716104309 556115178 557957398 269843268 357466551 929552492 956132624 451457691 459570034 391069905 799779136 19255525 141914943 539517961 773765623 465885019 652371982 275299934 704136553 530319309 748521983 668907996 686178278 517903288 908529113 705467111 735816333 380324072 852600637 162777688 793294536 124881191 361164792 881111750 896262381 164402541 851803751 830913343 836530190 917638143 989358219 751856297 854993201 605216024 802691117 23326981 566664318 904555666 963877361 750155313 984659481 70037224 277023122 439489787 668277171 19757585 534314749 230187733 555132911 326369148 641680476 744842011 879912652 947962084 988704407 684892011 709843785 337126091 563003067 39477423 633966647 954748948 996662071 83079500 768037965 716909198 843434642 51896682 111990360 39878011 473105630 487064936 495731200 835385038 858152231 554384629 972350332 566114928 995199404 25247807 247594923 405129469 812851814 493417501 890510332 26223704 286624313 954587375 982945592 456533826 470548752 904267799 997952154 433604618 873741238 29311559 354588335 530009711 801437171 381472692 878246699 976390763 999683249 548630433 750876872 462932452 543031031 45839163 643547924 901126924 964754026 190876545 684615064 576841621 798284937 470510943 542288089 503562575 895883843 615272250 772257620 436709855 922807042 4169922 676763604 611107017 957512275 172856190 817251298 488274870 750732735 179413744 636589364 542280300 880265497 429404143 986765763 651636724 681430585 285554764 812869225 79423772 961260344 446786651 740112876 978302372 979422886 252150261 653526810 141054776 201533277 83010462 803130414 384861963 559405162 163935589 992898601 31068088 577729200 650966433 805868320 807927551 873891201 849457320 850389578 919596866 999731612 890661353 933997637 643830200 666352437 148722254 603693987 887020726 891813310 695344589 898163818 885409295 956738910 988572714 990775828 459857218 900056296 589761051 712249320 860317875 890962337 823288965 846251213 978680430 978948926 702083261 901407010 993185644 999505303 492284337 755501154 357355654 722466755 24525520 239867690 252624391 421286413 784828621 884219564 651313434 897949751 607418023 987780817 364649486 693770597 548943787 872468110 356162720 516443834 134875878 652909919 274061479 465432580 614602194 912508345 106827029 682904178 31090176 843088874 60664825 347755978 673785100 694600208 929732136 938736678 867687777 886673158 721319656 914233150 80876484 637895267 830047622 907759386 67802511 847814241 100937775 255233440 190388015 311701077 868518208 968232657 151225839 347804672 276377306 918918647 938862046 949942333 130582180 526861783 562787821 904832424 81986473 940942517 388172032 433722888 884053854 979821577 182823102 808255288 399389824 645443835 354407296 416978690 35101491 560322410 80155872 221978209 901073613 961872990 526323027 585720223 401354742 740743413 770067214 789687272 373827619 717336579 701650232 952778264 326742538 437721406 556608412 873007726 160623256 767366139 956509572 991524984 252127650 971626498 350208802 927133954 974937751 989581643 440652862 980296688 709795036 804028440 282144678 412801657 934284555 993270558 803510080 932862647 957712877 972218348 302271372 569179290 692139406 709439879 972200727 976437439 759204471 939464616 488337322 716555461 220268350 482176512 630135644 872568791 870130904 888988539 760138195 915682900 811837750 879417614 921694957 966196259 906709463 929311520 821066464 934113174 441501723 940687504 5748164 543802310 560457399 836020755 255180687 946815768 623272152 947204879 375561077 995608155 356029741 626509373 574163257 949711015 452377984 833813188 120204897 283230443 161911175 876629020 89456997 751450215 605326051 930382407 860645840 943588994 160760386 817182550 486994860 700530905 952432227 953547816 990140963 990953939 31813625 964580981 665571779 679219965 914852910 952949297 832298935 956481189 656764687 864708449 201216912 314761148 176856178 187969503 76579933 754531787 939423275 978523517 564652998 970259431 962306650 971837710 114832676 589364980 336199054 370449285 775929929 919600906 482637069 729327109 283754280 579239486 124443844 577367280 761396117 849731065 244000400 671374521 806651961 936623682 716980748 805957119 802104047 853679609 815935696 820442708 289036869 798016473 725390203 729165918 464530210 600566688 625334184 819712283 39617219 946953683 907627570 921857781 132838385 893220785 145535921 598441348 630528357 898360584 658796286 868748721 317794988 505609487 886289162 966863828 535110133 729914913 326280805 855575781 887628793 919237747 682474034 761741325 792721879 957577001 710248309 865657205 822474300 833514563 969197483 989005624 804018029 987110816 535092870 761313806 133097707 998315569 419746867 990396379 448453553 769653493 890995754 906327882 360854680 406357826 178242759 980734140 957805704 988058089 602297656 934358590 456137680 627029127 833284078 910535831 126951411 934313158 157843728 865793991 722701093 821351738 162801645 600376404 975157393 998999798 851403208 895082116 546796203 990688662 911551167 953445055 905623258 984943092 628919196 939246070 485666881 786308890 106234689 420699408 874897195 954726679 482934545 723131691 501018739 554743411 6011660 631674138 642057496 699622103 487427392 954156797 906367606 919983126 106337847 549337670 979284329 986792529 967888606 974167598 446876653 977588258 341724151 679295280 27968183 993773902 676357284 955612906 748604946 930691618 744489273 814818106 569857013 721987676 168542294 463952810 622898468 887952185 682744691 889774339 422538433 590155822 942111841 977222749 273774963 275437623 563090268 632491230 948311860 977417580 58932684 729209829 764194205 894127772 885710103 905719507 910080301 921301760 909210238 944931946 876007128 880671556 174833146 782528836 409712641 539694286 280000028 539786654 134484498 571967549 371178153 408027204 338451275 339473454 508080171 680148601 185871300 821776082 593175433 823869128 778810122 861361300 306135143 836873943 80162241 858014860 644088826 663004004 993126583 997070045 789434073 861059687 438184348 441489505 363026257 773709617 332131477 915069870 719931608 944441549 61720916 252529507 618764433 629809330 32478219 251506476 27803905 730629999 634648788 912921326 533584144 713460222 156458670 551370239 967460029 967479100 275843919 895575767 468605179 765694947 602971355 976302541 501724579 729680321 548862468 624859062 72132885 902796668 393884463 558315113 732322805 997190562 58958949 125665782 934284643 969330201 15387518 793723388 793434520 946520785 481838661 702613955 386103061 963624379 623084702 818300643 249835529 484453800 227989469 931651207 697621292 821448412 141792320 262111617 607896334 744361148 448924054 814436325 95166843 108965919 171727399 455054985 644374592 865953552 284509189 483361426 193821511 536569551 336482262 567396630 196130271 990119369 168149658 287201972 383819679 476234351 527044231 842344728 149329009 867212765 230514122 642456030 907442764 956454348 36236137 925983457 55123174 606690308 249954704 543064489 266961224 306938455 805832307 907723241 858904682 936267801 892202720 897564668 551298317 927723844 937526610 990260108 161119851 881522073 20464866 113896011 650542783 785968229 230896185 922124332 404100824 616269120 980954052 992555753 16870730 290083543 774175391 877005862 50866281 360112046 57953950 333519136 442628527 962770665 153008855 807777414 753750145 990996001 270218299 275833726 426593239 463259984 705997186 756577251 729248549 875770995 843754513 875704125 319390413 791221775 18960793 78638720 366118793 780880026 815473312 912500807 978145530 994192977 236797884 325989433 301225962 443841414 445329967 758188590 156039204 916237704 153980190 749275214 718630024 783590025 842380245 928074438 246897043 757994371 509172879 702991858 668092773 820526414 285484499 441467941 745085286 864978483 872254226 935765132 85535208 225553418 473096042 968929259 840664024 864155238 144007081 516669575 708632232 719321797 158890416 769628617 430096199 850193747 85004229 482073442 612302940 742953653 169020018 681823796 11818331 493918979 739284904 953336776 245931036 592579625 974423115 980356551 588337265 651026909 531514790 748909126 424650594 948540424 815146899 927688092 505408608 614913874 839362033 985919352 793517093 927145892 398720968 750106951 502655378 784618263 835835625 854010243 433020173 537634367 93212749 940357407 501809958 759044945 399065272 665564041 493948062 973747643 814987636 900624740 737803542 913887494 97853545 284024350 453026672 482840545 199222394 639333257 576985156 785725874 709788091 903817065 734699655 823733554 25015672 817578684 644286192 672336536 694127611 732874288 190015537 669411704 329188817 682627009 129370827 522079976 1672465 207984286 894619839 982774274 937263113 947425878 679087461 760264203 982468430 988965165 307940311 612478730 183941449 319767416 884630866 979231217 447602414 472709086 893384845 977973527 411628505 823215578 409181194 413455743 322467077 659128730 458154010 799529622 137425669 625696162 852564981 936277137 26795298 92473928 228926440 723463909 740670976 963747556 468299193 593395298 251357435 253534910 25574302 970543722 331394297 862889725 561742618 590705356 914470757 984798092 190698028 763235589 259767409 434319287 790618880 950154761 616395756 860439219 868683468 920984104 477422982 866803902 598019808 789174625 803995830 871456384 148375341 571078900 807346809 980594034 697873157 937479546 137028832 635631980 350153176 681881699 518061024 715199412 59988496 140342019 614418133 764485671 708894877 953928071 954649533 966260021 485273145 493523011 917628033 955523617 333321594 647066628 475790902 769122756 354073358 979926202 485079267 698121750 392202663 425544346 771568182 961303860 62809622 968621970 131801026 311258747 120137676 578488850 437958776 882233815 78741597 410313282 491654210 979905971 829570108 943170536 104202931 896867364 316825560 942593383 548522215 932051640 221535302 268711844 753546368 886387213 6955588 583225080 231142364 906768425 209700946 985176881 593110491 808284561 658947526 917782521 182341958 761912799 224167295 880256342 668490272 704749148 423160229 544912451 430753839 855926503 19253360 787072953 579017771 774903802 147532923 619305932 531830625 948948602 816473361 978552099 50687633 406508341 12125281 139034692 359334878 442420837 206895538 464503049 834832736 843080903 565656845 965544754 515571628 600129666 648812115 840367805 546130518 623704043 311847017 863758622 790602237 961808979 266614139 622969473 767398524 967559737 198182819 404218947 59327987 164538735 101952281 624901704 657287827 792765525 173220966 635272961 12148235 798843886 479667425 841413800 308601941 519771015 976091516 976261679 824620033 997874801 348945392 923003216 374853166 594722699 747390789 787146974 434575773 588596691 870955212 995437103 660437876 758390361 858251587 942606460 867954377 960300706 23700703 790034289 976900279 997562119 668948259 966347880 286621260 919991559 719076454 932873785 354036559 925704045 405536323 881862212 241953543 335305724 106274773 158552815 951142513 973954985 845006921 884981736 542163100 710316838 799839231 809384624 404955298 671415316 515949822 752797543 195001922 216501228 495398197 930671527 672820325 945958834 957656700 998647144 411452747 624591994 576241927 596613605 542289468 810862089 809184460 886888653 719232294 898697179 583312156 997803754 699305073 778793074 976337741 978024102 29451042 310232046 576425853 696102878 81801367 860319683 994893646 996556164 201078310 359718069 507046255 630146937 744776012 978194316 616467022 753249387 88276092 945329638 994467100 995593404 198710084 486056583 782363819 949515305 138802878 343413115 167083322 552128981 76185331 494872404 981914353 985283459 359008700 681709556 157045112 260630144 992667838 997932533 138129191 629997892 142512355 586799822 311741526 637871247 393963401 491561020 682234939 752733567 444756434 818971173 154965848 701692790 861731795 866994565 620430552 780902293 897480065 906693698 399532697 794336431 283833719 693558363 939531487 962352362 80647539 440399483 240615942 669671212 259298170 506430787 871644579 917144226 629229356 772761369 616453169 646674655 744110502 986269180 312716883 458611108 275812601 473847076 726777709 893371815 443046264 686779303 808173415 970762365 189817360 303528462 977097861 981539163 127272593 662982724 937548024 994069531 793738191 879348230 231807894 981610657 97318800 542082872 979955503 994939619 223262876 926752412 861160267 997663142 29445551 691978968 62379886 175790084 924756821 974159918 936662087 967357348 325812565 638946209 600938741 987706912 484631060 688966581 499084290 956729623 395214652 976648218 144933875 183233416 60908924 214893804 699586899 872459336 771479392 943975508 751675356 799966387 969997937 976658630 416121295 998477775 893137482 917130728 369228310 516735356 847213536 925347424 768955358 876587480 62158860 763847730 662729363 857182570 996401831 998214409 377724759 786382289 513528655 563622381 433411930 800150043 2587114 870254895 90219180 394685559 351259159 389829326 658778613 940469773 882773212 977560380 518247160 944535562 775089175 949458331 15401227 242177619 274442842 939124040 117778962 538181165 187133815 395984307 700409345 896239700 723447628 848061060 974111726 987035043 378409279 992171833 256004900 462990536 443885252 867279796 835228031 914043916 618088294 905093141 333727580 749706603 755890812 809367009 39586920 270815456 891559251 956331334 440898313 489281910 460388408 751337854 521107261 718981924 367157997 928009235 6783346 729471498 39202091 248914465 54426601 709797473 611203273 801400919 630067662 713491688 208608214 923074884 625254053 771484181 460109360 769871217 67050734 386683932 421585291 803029671 997128097 997222850 805491443 881112415 40967750 733595128 455844105 510450682 639636942 748368570 313325437 865388615 728404351 815875004 269799890 407680711 572936082 656038851 977104548 985455106 182238551 950984020 151969399 290138665 842157354 973502992 445691080 510042913 249872717 961434807 667719592 903459243 964609963 988595281 637706608 694384722 373655257 649870378 912086752 951740731 974884698 985232707 29315678 850389264 220552342 499249265 637634101 924988311 41520381 495632866 94150395 394945060 24164321 979127503 972647764 990666374 253173820 656409768 668407447 961367217 332533263 621055990 185962596 570325608 858666686 978960125 286557405 827806612 567033981 954012301 178561244 667612480 880014319 966188345 752156337 756360008 686570474 969760116 332380835 981862581 461263283 481784628 202806548 528880862 576110735 688755644 619281514 650279496 834081411 925227247 533610582 718754225 885062559 976175498 353313452 975378034 863519164 986066640 768117099 825533150 756425219 960368984 248289050 538993847 180114203 752078655 587491553 625529217 318583289 441034898 197241785 333412412 502926375 744190557 479382907 579957812 483692937 919807734 137092456 566148639 407070681 800090036 247930773 328053182 872442005 903492604 735489479 872284312 535357543 862430818 324960458 711184701 911298709 992128659 310164256 772117955 994078108 994909944 532420796 918251778 262618841 351037023 928944300 988819500 864296402 917206669 909641003 926655143 703511628 969223356 950614698 955702422 40450875 132508372 244567104 356232120 226830367 877187507 301630270 461493076 831708931 856902151 360549951 720409269 8130876 905105069 610351929 736031530 613749411 980706419 544426435 893590821 415520557 741504403 927457878 938151598 118858869 681097587 859271096 889522948 524562401 983140818 284323194 913351695 259536112 379687835 484425689 710751670 547251784 774564323 113896903 899028947 524885099 565419954 801656110 915150357 662204754 685153856 855781251 970497518 94509319 701381417 154020525 972697212 437958007 625796139 872620111 907412753 557045353 880805962 125175421 870111127 556516350 866662512 477617432 541554772 18281443 350467104 976423634 988632510 78532857 937252666 269978185 738989310 657320163 851108598 370221786 895683500 376827292 815618805 721306361 884824031 558682616 870583561 381875465 795774330 541233598 938812344 421969661 777223709 675060172 851327139 232404524 886964257 350258406 853479262 500315723 702445760 818685151 914215707 318610342 872403437 436155008 592236162 805828838 943241073 672400083 878559532 434892539 531585617 806663901 971999583 143784852 698285007 345393932 612329244 796832667 818976107 179832195 265679192 522135149 925760477 875039341 911711883 88276662 985474587 953247163 976084326 341528051 697052777 292481572 577777522 550442178 576863503 63997842 975861263 343178391 405271999 850922248 970512232 275869863 617743571 216165073 802369945 175970510 907569356 460706291 634774465 900821842 923167735 102103495 500572306 386469356 950355057 527655683 756028995 179118036 955574423 174104227 686342430 822004995 875845869 925984817 986253215 759657190 951756883 783086160 832077466 292754520 774146002 360754724 546893187 866443805 966602693 986496726 990232523 497277326 712976715 205567651 727010774 122258101 211434572 751586244 884409283 179786853 861303635 644976327 929875646 19340784 874687672 557839067 941663736 40885850 495958204 128578041 878492186 245409679 611380294 134048521 253123649 901353373 973189731 236091595 248611697 659935155 866008083 958340975 977351847 617122949 666352003 883771722 960653084 813702003 932868278 144059584 329948152 910174123 947759461 636204854 856044997 208156896 857342839 276141368 945645393 763355431 922784251 845033933 917890097 264658279 450640936 317618751 678348175 755503534 921970310 860565165 899335606 739770006 897546927 739115466 960240101 66388004 172363115 44080725 264312102 208410522 577449402 943762722 959798950 160948647 591837286 411031734 764226265 7531506 637809703 675281307 932856486 698487449 809794964 994408338 994532367 817347843 933283451 325244468 337511133 251595628 568309457 1629360 843880186 891525400 904098376 128744556 553689802 856688301 872600047 495140228 924102569 913095290 956431579 711427557 886730543 105876683 690232070 290869363 873738904 949412072 975921778 133380167 353100624 228777937 799430641 457369800 940150801 859881948 917220482 50384023 785047823 317636940 816328385 599311134 822254835 117045485 884513556 464650841 775466383 688858614 858027221 519904473 527930010 833165173 879904554 20753081 163453004 609003821 747349908 384566947 753877136 333848876 878529314 649940291 652601616 978809859 991952396 322888983 435677071 687925854 748571658 785428112 894313040 371994078 972835998 800441094 919912674 473527039 842044245 994782148 995749526 544594059 681017645 635987670 863828138 309754411 607718462 186239145 440125080 779122398 933909880 822384086 967869443 870295999 875757298 515501017 562768024 31147127 173671735 659546007 763287368 431915845 624174055 927274175 995392319 181002552 290008859 13690064 685287272 705897656 734058083 694859313 995695919 997531284 999051558 146771803 240871075 188949706 526400181 444861696 688968027 243344836 438664066 321706433 755580586 652938721 838163286 444491343 491819911 670527605 936191250 528657384 854203075 191201080 236581059 838402887 998836646 734024895 756729664 816493768 816622269 280929488 473932115 364518524 806476225 986773756 993149763 620806075 796170218 196686494 816914257 375261487 875656212 302905450 817970469 818134475 999731612 10553841 930151756 41511924 628677831 827997787 881883474 910222326 926297389 580574959 700913957 508626685 908782781 765866290 970971607 217673615 669013870 329714588 958024410 867018413 944625450 864114423 949169659 946253377 956873539 405877349 979180594 67594460 754866084 874082260 935748779 321840665 430570600 369638214 670042763 900857862 922679293 579493352 724044339 530922408 960467746 576256083 716899696 109655230 221625689 506890555 978147445 486770841 557603093 607156520 760788413 78513665 627067974 559672416 714553100 279627958 824157802 651263457 969740176 514533274 914855906 146643777 768589693 119462007 769281419 97374757 185924591 387706382 758548718 596268163 935386531 829055169 856836343 446755832 581377192 324350197 780956722 778931377 929896981 911287973 915229067 378794735 426580198 10654551 713073935 522537739 910397107 737290637 974600165 728818109 749855054 764168628 764299393 184554058 637394226 272820363 410963040 132593516 591962854 955724995 969853197 474215012 579011978 593952337 871811235 699011386 814055251 700074261 712547252 234676586 399749606 294597203 405971655 114877289 959339992 732855032 920152748 95110769 334041949 36062296 148788585 833941829 916895553 862040942 866476170 545313955 577444427 727909556 945556569 442743451 762693481 530532417 793794551 179622130 465736504 718601303 968753849 72246339 640544829 843593460 898771069 925678002 986891567 119193509 702670156 816178003 875286883 860161488 907186286 181977699 883185044 484284810 572353354 79713714 376419261 207147515 753295503 104830483 514789193 708852100 882900087 640584444 984032048 759178260 825466365 998258982 998692756 168538301 338942263 879359690 959475226 944199834 989375820 773982544 928380778 684275026 860056523 475201306 561718559 142954438 936088336 565342340 843619099 814942130 875384104 321365871 516488578 556120234 881127687 18976436 263896894 875181421 909205035 429117486 723357020 60248977 568695516 313695370 820170432 772945551 877264449 542968389 639108577 152582816 335006392 226329537 606653040 852311462 871740857 140145163 549846057 463439945 939332323 923024962 968164043 500548043 607934072 860348027 925267863 893957369 981416658 215067528 672786012 879360631 912151269 437524026 629970213 648536207 896782077 69505232 461086340 177905677 235056988 594422396 808911592 312420451 615549081 668380734 961005463 369825661 487966483 771364709 837331607 490847074 634899107 601800918 998599730 276913155 867292772 591515474 810129032 132804978 983754240 604161416 747134464 943521204 996596598 732815575 882985518 348223739 975391494 45784919 587362887 903297922 903824003 221601772 738559897 797880612 887077874 538944440 885852382 607529371 830114790 269621284 675347959 758726817 965469370 691952642 882631793 711897027 858824391 103819781 544595744 262342709 564154222 449178992 863998896 782644372 897536206 555237504 590776053 110022079 235232157 865504305 971935659 699834335 972535870 219022837 397563597 467120120 489794290 675965879 707379194 160822207 335314042 225972921 342519303 468980055 937676377 40632104 973106454 861987758 954252151 209098191 577964019 953424405 994449779 747024420 910640414 18569624 949066380 797976641 872515494 273394022 315712726 771626637 916379798 513690424 979954809 81967423 595494745 195356752 744113203 157461406 800442267 374150221 447009736 612342838 691974413 355504651 935038478 451773050 896550052 600975292 996937442 655039178 906388584 264639455 414940597 163536094 867015635 13375126 460473351 309723620 474104356 390993392 425054228 491834838 494742927 475236744 815671802 378271957 566633841 126701823 698037993 605720415 998539843 393262875 962517594 967223322 995674168 834025886 983077046 375981345 786913939 832260558 944655744 55071390 110739454 277122775 664501138 827084773 899753892 846697056 875884564 368959496 815411618 920393900 931009766 58865703 736493136 999345780 999575983 127214651 373460447 905700137 942989584 367149963 677179284 846712709 959310761 940117863 966991540 95076523 227738651 666538437 840656653 613295496 909059235 145801714 865976276 183130425 298002954 956841568 987939761 614521692 987768736 915498286 931580212 580889714 790279356 537298991 904607316 262676411 823321160 809398603 857286005 544334978 744942407 559458427 625665783 421279411 618654742 836774029 873583518 740220418 912281170 483258180 787574104 382443442 666074741 757538579 826344392 97662281 728503398 86694973 797849798 285025432 829307752 741187303 786809650 746677972 985623348 335282416 651198005 607991981 831889963 243978419 524837949 671246428 911527246 712757525 721878391 503382137 731941277 589648018 821470033 789516748 915127647 844176311 913185676 179837058 561529806 709200612 901829517 396357225 927910653 324739951 395289907 170298974 421131144 885699369 931212511 693247465 849612697 962277241 988448318 578710023 776412406 474495928 686284894 877086304 935796270 67906260 93520857 352734957 785956670 317719902 487474826 935766685 955214107 336763704 639983283 701983248 709501173 876444868 896218232 580260323 870258801 179620571 462578829 735513367 854158882 371945431 513481689 239667792 472195006 473356805 786383832 290130909 297872520 77710513 731033290 286476381 665140012 809592775 847932231 182378327 708329210 651563741 909941863 152079206 857254389 630954241 966253308 777463401 839760209 435589820 731132924 645987749 690676188 344356681 370349810 636527218 992214808 499728898 510130485 754101951 899416094 13365641 175821361 674554072 755387569 553852969 924270858 389749535 498818032 703403691 829616372 581901960 836819424 424472469 920307525 531918956 704634785 724861324 862732361 155558547 825963097 209165009 978294904 816845924 955408220 18870164 344460109 436429267 947892114 662884822 880692987 664810732 834872950 772263311 823539330 587831153 745929805 796893465 812810271 883581405 980918815 579198632 725441858 502539586 572680309 255139661 749932267 504625367 821729685 82872657 600412411 387953315 550863461 521392612 637413523 14955895 709723382 935191698 964825683 5448272 334272133 832356847 867486349 320995709 736174835 725229659 748670549 949187542 976917888 582518046 906773538 587501658 733806945 259275195 323750887 151202814 633096199 583945334 721554183 449781287 839386849 739945354 839548655 631372532 808601155 826699510 857815926 876964549 888475400 880709529 927967449 292219548 849380227 264236865 460517407 496886528 678770841 802574611 870033100 103956750 805836412 764631072 797111462 551622836 876661738 512070194 708895043 396581620 546911158 471877126 681999453 950171186 976301794 902348496 915398498 635003438 981031084 430962718 798555865 488461805 840767649 137306541 865774350 47770221 693173062 302538771 572845103 442662427 864146382 579676347 992978759 663815584 769149991 405785631 943299680 431839058 607733001 218479391 402015990 63902717 484837365 171324493 377507572 485464679 868809160 752180706 943908505 163114691 725245965 10371132 757862811 48531434 554497284 678490162 703739515 651144917 707555040 391245543 624858258 686340281 797744818 556008309 770221050 720895780 752417181 839968676 874819128 60778923 790301635 414522423 515784388 80322557 211559534 980003630 985997015 457997095 543173439 316604841 351270322 223012573 825493888 46702134 551447324 107068420 260795110 119321943 553222456 36879408 929467682 646130160 661369766 601392110 968875345 221524658 776436106 488759485 928565020 763451348 934310426 161369650 391873977 414548395 902566971 913493368 996233437 94949176 440617676 447905492 839901775 558385378 914333305 198847069 636963507 585108173 872415899 891581297 911944775 404997827 407610768 124603756 838739938 397755738 545004986 563500626 904224396 929538952 929695056 306812574 733762029 473540670 687541528 278401533 281141037 965877901 982853257 773888678 814746678 185812281 835006984 464862882 509347881 640243000 896618403 503409173 867216703 969950528 973249539 700441334 846621264 547140604 958610831 360712812 923357735 424698554 559003573 810632604 992191555 547388811 561294945 286957079 801800448 885147622 947136651 16760948 80059168 814893302 910539654 688776417 751919991 927318828 937438654 411432630 525935316 996228522 999869175 993363132 997982775 843395847 895707501 136550333 843625744 156577475 189495244 383150511 859554970 629428735 642633361 53108885 757522669 972816925 977974989 37325635 540761752 282425935 991232834 569842136 766777797 918263638 992953149 740366921 798795574 978715918 999992945 149501477 163960536 831992574 981804052 998530900 998958755 853133656 912608128 653862976 729353039 528576937 918400871 284324159 697791408 568348578 710784956 510118909 727069017 157165642 766384915 241293722 741775034 566651145 786825565 933686468 951910358 483002448 692815928 179186634 496899488 104035918 654467716 180434957 703283519 585990459 626031517 232800320 634327037 44652000 547400633 84703846 492757377 924193538 932283339 275777067 837997268 400856068 520296059 306634034 640171328 769566880 963013075 942785831 943813382 822580105 971080337 759164854 816068495 929495673 938007530 483699582 531970166 58837502 689464464 47239597 621009635 306693470 454080750 917355276 982914261 132054399 842216558 207482868 657595677 630533664 674912404 807345792 987081585 267556580 571753423 195873543 433529564 53092583 448412163 190786908 492294717 148522261 720637301 258762575 974062754 317631773 441574271 941189629 998369648 161970816 596896643 715164833 959805709 299908153 512218555 193343281 773741556 430438256 718731188 913143592 937978193 308417727 652597478 201016288 865318686 566832204 717114291 762205612 776838279 287732407 975741944 129020813 346633646 895098076 910624270 930787148 964785883 737533431 898689648 334476396 373694993 113302206 665651176 750510724 848165788 751769517 950994537 730639875 835404133 961664125 987124852 874083491 935960936 121040604 705793451 253573658 438451855 943985929 975507035 760090540 894231650 785609583 822817564 990883017 994136272 334012618 699876754 971643740 986679029 290109750 843357437 241366922 265466341 106185230 154354395 528322969 869876564 404852742 855149716 444617539 915434648 220402131 484384545 407377046 431047433 963425371 982303562 575840938 877608415 748635978 762342064 2751631 677419823 512661917 617002970 37655335 935205695 450625805 898543718 105403814 420222534 993531001 994126971 188021877 789676227 182893476 492398420 810934132 907556512 392358567 875896397 570232833 933684993 160724651 838764340 635806755 655302167 21147198 962315612 785134350 900561202 65878634 145049362 156051649 894662057 971457751 998597468 975611682 978997039 130590721 340776487 187209733 922210439 734077478 974605479 999561516 999577943 540591856 945633028 310180809 941932973 564258080 662715935 885274545 971271491 791023474 831064076 292924718 407739548 71252847 505339021 618970192 840107957 766987235 870169058 221997697 611081699 380477504 618453118 671362990 900328336 361652678 999733003 355229744 657731766 100541010 807686339 711450870 753841127 270456937 374684662 617363428 739078401 939873182 970280714 328637814 543063591 250705109 505370939 760844629 773915638 782032520 800835965 615346242 792178141 49238168 546354386 79860578 756480958 3725958 343785437 481842784 513654402 294974405 833588750 443927681 537879404 959805194 992249600 986572390 994520184 662583259 732430951 567781434 784546707 891963784 952106979 171724069 855802105 761139528 798720720 814139980 895063684 410440275 753722234 348527243 740765710 56581597 709258802 8775335 865472477 254853067 459733991 229015020 426823042 627454800 969471078 247395324 485589983 708309316 829435185 406342713 486286236 443563615 705361201 668446946 718443645 563476676 833564212 637482241 870883577 891126868 969894971 972066568 974730411 762322508 766553927 131504213 731575114 181181362 373472470 747205392 825565656 454526428 565991406 71534595 690106846 705814158 964534756 456318646 671357589 363534567 631165799 164805665 240144364 146508407 557288374 628786296 943440540 32770500 946147347 950766536 980069609 270963674 904367898 673448669 745612549 978902772 999535749 447545022 892312603 382535817 944357653 373600750 838245496 983013564 990392890 933937258 947303346 53057085 860256857 615460770 651272454 539679729 997348340 31593823 681874875 566962680 826741019 175308784 789142460 642339264 986248094 576651788 783883553 912597805 977535914 253477631 592738672 287676657 806873039 995171582 998701208 331803143 628019607 648057214 937150830 541994366 616502287 846057967 846401745 228670208 449836244 281394693 701494534 934237060 983360748 144860042 796291646 645021694 992800323 827633283 895092969 698433251 804442422 923128235 989750824 139859372 863079914 330018385 381514340 584398515 651203588 920190707 997331528 307552367 569923375 395029887 591303984 563313908 689945933 259287391 275696087 742508232 895692691 235944950 833434916 101404334 304179462 496672979 881194154 75765879 753175362 90508304 626988472 428294581 428939938 847143749 958754935 378132899 872486065 795734311 932776183 251968946 346165518 15527881 155636418 503775257 858697540 254822682 917981148 540219418 949650111 105424609 852064296 893913637 970913469 335605722 931038608 560008023 722825365 349386814 499788551 294637357 876471639 79451364 803001299 529543938 552184647 401395752 488659563 257032120 408630691 689224017 912908476 896108747 973763506 806090328 836092417 226314484 739330920 105553245 904623441 261990958 478443771 93397983 813316472 283263206 704520917 623631256 996184816 761975412 812911298 478724813 922474841 885005983 899069389 312423639 463306356 50594456 280356875 174456522 523850180 21187091 52778358 668016124 715751053 418124411 846189389 87656107 945924269 731638381 799038281 869693885 977936981 991156533 993577308 553761141 794945266 987180369 987888230 503776003 623775542 364786572 534858349 157173540 478094644 633742297 944662401 768583873 903772746 595636917 731750243 363096468 708621086 878502913 906022982 641408132 756986878 439550144 980097854 271408084 750499950 792047686 930002922 30710034 636564719 94659335 970513763 429087976 748908860 365823524 671547403 304427770 845060035 737821243 767473233 152797210 477401630 753635017 843725323 693248557 854552620 47120811 499316376 2767735 634056585 328731671 839738573 574205786 982054015 69555719 222661528 757145990 846126240 138519758 182282063 63228566 477183459 298787140 324104040 897542075 963943690 445458626 944056334 92753278 228868228 945269717 959151233 267009661 541801517 701922761 884009151 460456250 669682653 84863190 862367507 27676872 714666170 389133496 657793264 985536670 997558733 326688980 978516639 547221001 614443790 787384228 790353619 328695779 835041134 249699614 729667799 97788548 740982190 964822185 973258565 176750625 496576174 996144649 999977846 394836094 845012575 161790244 911766557 512891136 803275080 378092484 610699125 806950496 905595839 652829390 816674482 479637530 812814070 313619591 878529081 714087451 902372004 433461480 724952054 912533062 985353706 715815681 863679567 216861938 678866507 285651231 997019542 421252827 781949323 755700332 800742143 447429397 606474712 665719326 709961204 117960864 751529029 215332670 572415825 544449379 640864381 564409983 691894179 250048243 947865978 948368349 998389745 991810270 991950602 96017592 809857050 656228588 886313239 318203747 646745278 605418245 804284229 493214237 719707559 319301547 435328540 298359671 714085999 23805211 849273843 863961443 925648804 465078655 782224111 193597311 405557293 554558548 697776427 320470992 811338195 844196347 924849848 293888707 894560999 396557272 704465093 272121498 976639055 133454035 500243103 846230169 864990739 583612216 953421596 930105323 938072577 455221535 897750393 300550390 466483600 932328233 979130313 693592959 898050846 872858896 941531092 587428413 784959627 750341 704373978 995703563 997912614 976453120 995009337 256851348 759061493 54928721 937178030 74012824 432736371 31033245 537401412 786768286 996422767 494250712 990622203 103873659 640282744 736491488 810922152 839478892 867868018 122652201 474257185 944486507 974167413 67390545 148966306 444226529 818985538 189475009 541635765 323931034 555836884 484366945 900976884 367198019 380485764 514380691 737909210 440411873 560468501 158655067 937258094 628830877 884049380 774431390 924212002 847977863 863669140 694672791 845192517 90656833 863937089 152906870 848428123 768864368 847371339 139474491 363002430 843274341 909806897 24667412 614222775 31982967 685312800 479384174 566972963 924243040 943600350 105833184 687984685 759524349 819308753 802223538 872255386 243400147 410334301 318920162 405920452 843581428 876371743 574072178 836181539 946212845 997116721 626586435 923996730 95069885 201085764 138252097 286828792 518946734 606534860 454648653 471213167 223742927 485841231 125952785 766383946 190790460 521346127 872042251 916402999 776250308 829328548 825548535 885976150 301778773 310226511 324859656 696508800 60713117 68745313 258970735 752970008 385908690 543161323 591139456 659220988 431333921 972567622 135122281 921968179 804083455 822842330 561697641 930753121 336988686 815086994 151492750 487600072 672859802 895409061 418605015 797306049 714363997 943198541 705587867 758333347 290792801 761589978 272935450 618233830 392850368 495789397 227191449 573279617 255001290 671904026 415823535 860865841 478362143 634681652 281552527 360316836 433417163 548392279 592102631 974581937 903961545 978141927 673193419 815970127 724727963 986350067 874861693 952445859 33862435 851414176 900303239 906859000 144872848 699942715 770919276 963567991 176810512 693243900 279745264 316849014 326081692 795232110 283013034 978357536 31779051 199008015 19514485 669334310 525027080 534974176 517250544 679285822 548669224 892230693 780173794 862620502 675381338 787109948 654054392 759351330 76643573 502060751 621572203 885951904 728054162 737551936 828540887 873588810 105836857 172651111 50605555 585905314 613739562 804085773 302639933 661854263 987432633 995918644 533022100 843025904 629904245 639607558 359048095 660614105 73321694 936763910 688689288 996769468 144710488 662312640 621783664 836565220 94095120 565759143 521427988 889387279 811709208 918091589 639971806 772519928 479288172 981720415 669796746 743985685 360387839 774744838 957264104 997932314 190424785 813561650 522757803 652109009 401245997 824743675 500376922 769089599 384832400 761024742 894836117 975073631 479975043 723798443 864525083 959761888 718645986 786887599 804740289 821471716 907680337 912710864 650748878 705411592 326421191 517405799 896062848 902440719 903571340 976526409 203472581 995025303 594680692 674666429 296782194 666774424 239057721 577285029 810331634 928166408 996003458 997211009 69649386 496155364 104642379 281405649 7428818 731953511 32489050 43218647 876076137 944894940 982061741 988668651 331965549 602785267 890660016 918677376 664899601 932273550 518028030 833995437 637083531 730447690 580735537 751863876 752954150 831316766 791895969 829507238 609769157 996746053 649752837 800655589 305159334 732152197 28566673 826324785 647450804 753134754 946782209 979183963 491664415 539805682 363323817 993397573 15028261 121168126 409733572 784976562 537991863 705626597 550012561 855692821 349887574 880430878 802888165 983113425 768912452 943402943 6061370 808184738 166097308 185833922 774523277 884782875 30127229 975754123 536306779 537271449 949375856 999358137 388712329 429682858 136783270 360802826 583935043 713917949 828287172 927390208 313223967 370951059 965448670 995919214 858841417 875822223 525133766 941547617 887550851 965416629 547856815 924530666 788666363 919040406 171057328 531176074 300163126 584971764 7043968 98213055 954835344 961289211 118424436 814069815 613660096 956893665 182745111 635633374 594116398 772887258 824401593 855742437 780816880 875622618 644579062 835278942 846793282 860077715 496112477 808667901 455576712 650113828 968760492 968996204 131884374 584769085 92582448 227420040 44159702 281795260 717138995 824366450 21141230 466649298 379708317 537653979 308893706 889732480 237391719 431592643 879950613 893355263 455538441 885956477 470591858 672523581 130049157 318918571 242082022 437586835 622595350 921704832 890985492 977631106 344414886 752615084 324989563 427412637 812902864 964815209 262968028 476608902 356280824 678365027 329449005 979138641 552612487 572023354 819980321 822292310 185923139 333466362 984062011 988104353 540929400 781270613 159317337 905261352 985085418 990081879 265184113 467634271 46929395 579012982 820857217 944378087 351129056 432909436 122954481 379694184 461142695 635569235 247694299 530311726 79745263 252918602 775152757 846879395 66317838 86295713 578290917 632168400 191504603 368215858 85672553 382432025 723330797 729075507 469594447 951540444 787396950 843433601 425798937 804585902 309792705 569408104 542475986 801205044 356512245 553021813 665061729 792425512 485091581 973352390 643200343 863862068 231209811 391361858 253412829 556508516 41345026 77102590 362258606 592161730 922409557 985222424 594797791 734496285 269791814 417323056 339664431 639801905 785626099 968703858 720361189 943300867 866593 315119052 863186973 948679379 831418512 979535565 607105989 805223208 913387787 940715119 797306795 825425837 10385949 157347333 363599987 903612962 692545292 948609870 638431435 863752348 422854851 828984057 279090003 917835229 362051913 456816455 628846238 715244662 938971280 983679740 119836895 394592336 161754419 711630184 628585660 657331065 817608423 962159557 247363746 427598048 924181670 956270847 231854502 999401865 171088822 509170319 946595659 966497086 959533096 997370927 82811640 126589897 230595316 510312419 892135381 965957126 922067056 934327165 703123768 905633763 344015227 774380212 235246761 728505593 694081641 835081296 743904815 825845728 114549347 965375115 680297125 725556652 612465729 800124844 749642030 840556181 44692486 556850617 853757037 877445056 747344891 988965077 777971637 972003780 719365847 891109874 202059774 826618129 262738978 959109730 485208933 974414465 913499484 943893776 368244380 521470747 902166540 924097770 305179980 376227626 814287695 889245318 427253781 980980999 421699731 441504053 492761791 726686587 154950136 921420674 928088476 984829002 551434148 685140827 206928796 218552496 44000706 463145509 58004115 75312527 643032796 774827189 462660016 723272067 399319316 437170884 627000140 968286914 868462342 914034387 971933694 981647561 581881925 812603714 809678075 858144539 783186160 945313139 714207048 972799460 797933747 831615637 624616601 877818621 83337059 789976002 682105523 809677954 627492907 639003264 502832068 735634909 751738234 786425062 3240643 694256708 1154092 712853302 179972638 428645234 706918895 976532951 835641777 960975864 562318010 606834742 85031573 660653997 335454278 493754255 703824678 798325040 563451171 630447141 690272954 837035932 756440842 765142280 761834452 900953774 667687525 891204683 151300303 918902556 554442747 557010710 298229843 860582631 378704815 639401026 407120759 870045114 348676773 774131717 227349765 994857544 651176435 684379805 653986509 926480233 859810523 929641424 696527551 760861180 905505898 991514297 867439885 933960688 377510754 614608043 468323211 609449095 636807024 883352087 168989759 837699574 175111915 649780705 757529757 764211952 71284542 589208778 276522072 789709399 430032720 484833570 123975055 770455336 608394806 941144040 796901596 940887351 599086831 642528209 265812094 571393413 497471218 817582103 314965068 747063714 923348046 933963471 32564014 656080830 657442090 912533023 838458495 874028598 183913716 358659573 877741988 886570990 40815095 657380316 919699311 931622617 412358321 698003906 380112000 779010641 832052373 898127696 669629122 747995947 975754430 999048689 417591584 924195335 537152701 780435149 771443692 780770020 895184855 922958759 843553738 861630716 332293168 604121391 622232080 968708778 637487644 739851186 89679650 821159311 550772248 575870561 691172589 987721801 798909164 889414665 202616866 348035695 101529597 198588060 586339993 783382534 697854425 865325640 675570392 699246257 242415488 489127381 309529397 992280738 407781165 789279095 245623678 303223243 746945525 967985579 678112036 967529717 172970917 839192344 599878612 917583392 798659344 890176358 156824397 526624793 80059505 113814812 897455594 992412266 372754941 764666439 256921969 486710740 646104624 660932082 72811174 894458833 414219103 765226314 741066344 978456138 814535156 945211444 137170620 359975678 308806264 757218853 391280227 466907985 4637645 793260143 363283591 446482905 726046380 930348768 500320332 760760429 639867728 850190492 588805923 734965701 95781693 508848960 217179063 683770928 73298134 750725900 66799869 475598400 301949098 420491760 750049175 870635866 375336614 746353439 517468775 671278519 194255214 570007508 250241106 866374653 404597623 638948791 111813867 780041543 463535405 641732284 481541043 945400785 578190061 892540884 904651191 966136003 736465063 851923462 934387782 953458540 33889094 728643362 297098406 780477314 291906900 485062924 270017963 706938217 583974790 843005672 42023307 544419213 714265897 831548691 854576493 885003591 714328212 845681466 880188419 988509273 969172914 991166436 366185954 526379791 816088409 869379867 370951861 384369525 46164326 299400268 889420177 951672887 399297290 450153415 750299888 931339288 406943188 966448566 313947097 860766080 900628644 941405896 973571849 995496954 673085229 887611341 915957789 961014066 251452514 648114356 929823835 974512458 310238255 667498348 896455254 936518524 331874535 448731482 34987753 947083649 892359859 962433704 671804966 859714254 905882934 912068566 502607830 698331649 313103797 414402447 505093882 877439550 54301005 310930451 147637262 943070438 568982374 699805570 416007734 567280651 925801594 929607572 287147998 773433053 981938511 991462811 309923088 317397608 938207530 973568916 507481182 901134708 438235543 517876688 936297292 945023895 583643740 625969006 660371411 775178046 250395893 617063035 557992375 607217927 18896781 484719571 259144679 981996004 967028891 977954065 557426947 879201113 209188354 615404758 501888054 773379232 862112955 884845908 395136993 571119816 230611330 546285008 821855750 933265574 34665577 782051778 508022452 939838201 165720322 668080304 444818563 512963128 240595041 450121676 989386312 993617867 278706660 645585786 585144097 977837412 500191395 640215400 971212574 987923530 951279066 980810267 106489988 567197259 962972631 967959182 228267619 782446992 341831184 893138397 514135421 559549062 155051678 925050128 998711374 999323123 178415324 962134908 457932884 517986442 523244548 742505429 982822495 998916920 322889787 865293341 479848950 545326103 80140083 553854633 57032054 262507096 861703122 911219134 350712124 968026026 865956208 929202805 27827098 865832317 794333229 823712441 625144995 699374058 873423015 982001077 816099382 839012789 534906569 962142190 2033105 909955576 185221774 426996188 331729809 996707570 25650333 764528566 929360436 983975971 959032109 983625781 72253379 992645673 877361293 879823265 901839241 936399777 433420384 505751146 389271783 697210012 706729273 878923408 792248037 997014675 608525645 779448824 440732118 543689301 342261330 930650607 878786782 990043820 10325808 215914103 109935545 980892383 739389166 868772093 654905373 852299973 341347814 616675290 762006344 856438262 268132294 397251090 532001673 798750313 282878332 446154858 812084996 908235244 532226413 841228860 328404032 589247266 813379767 849432608 665724586 945060535 212640547 547125396 528722862 698627515 281843225 793408063 139469966 175798538 882938654 885583063 873743158 890700501 239606742 803518492 577679607 811707028 824540246 939932899 347441084 459142947 169512597 934872737 369489182 761392455 326729711 759252619 134031779 385273360 388515010 661387919 84100344 833346427 447779290 838838285 49180410 713903813 9157039 583335407 479607396 874030136 642660108 705045059 341130808 830663785 519111569 738586652 657869531 798784470 859961256 920701960 340952199 826697360 616159649 804953667 902777580 963297555 5593326 554587197 957735004 998367030 564541961 766528763 513720694 593584975 785733560 984932881 86297891 122954310 938731668 967049420 175502906 337069666 989912066 992347308 570097896 626990279 952003455 955937024 375317315 423239872 385172255 616369208 187584107 305532182 214698704 475586364 999234950 999772406 276863855 778772204 662559977 670884945 228920268 983003199 675564959 811104407 774805344 919570782 895765762 931031775 239335141 921762199 548201308 621139330 585289528 609477486 721055056 851185808 43010146 232923259 536776242 572882528 357605729 416666017 287617469 368097701 590058761 849705475 699705695 793698524 332052262 450865932 248641704 370133734 215314826 248678629 328958239 672930354 89735686 712921103 34083644 654131702 79985491 898743412 361183760 583988733 588459562 941031818 127688875 543977603 37279868 741046302 5459473 70029703 516867444 874156869 848804638 956409694 663758482 762856485 584326208 929441629 930744404 999697381 184571536 594423455 839718348 876062836 324557626 698754076 717012495 798249885 676569850 760016540 619395394 640109662 229414938 897341694 412221200 582804129 496772035 556890296 740665932 938396791 580938371 643922059 269964528 871234735 916729809 933543027 424069528 657233542 855491121 966661512 67373776 995851012 819324823 913785990 871643650 913446143 469639514 713536048 517517231 600383961 734363288 738588299 432339769 617839812 295246173 797290108 140755333 885743136 460235228 936295245 320681433 782140452 39688913 788234839 111162653 917119287 399957965 963917779 217696395 952482900 714417527 818046607 395720366 423477611 537394556 908918781 571083588 647677820 836136925 869113452 751933455 925702367 393038942 623940498 202741664 994841058 498257691 816303768 150285550 810022255 29537998 721003728 358644995 417892871 90438528 596774635 567850072 785717781 946711269 982628471 659996638 786600999 124539769 334967974 354245968 786039681 411691982 838823473 566721781 627321074 468526286 635388672 427531395 465415926 782847462 954860905 527595907 980092052 523709580 835532384 709136798 981773370 565607507 634560709 33323989 339129647 538252898 891504039 958693785 965681093 52990623 991986731 598071994 982730179 934261711 977959339 802514724 996214971 480549693 992165877 283886074 393096390 127667887 221556547 58960027 708986086 696992406 912518296 590143902 679850744 338913895 437961692 716292704 865229911 921009411 997952159 223059997 308198315 583041673 641441370 838461072 968729716 310171216 490749290 700757340 710807850 274866203 763999618 180573749 507859713 731296681 957000400 987983030 998751278 546133025 909455003 59154212 689619399 307201254 946566526 488998573 562888887 71534621 713555993 935484204 959285584 941455638 994490834 602950570 855279128 345142382 437386872 916813403 993793400 834336379 997923613 94189341 451438337 45438859 381329435 509714360 923750078 2499054 779161655 657138478 942115663 299274453 578536126 465453011 523359524 497101186 737197940 771335280 993877023 192280753 871523181 246300977 355983502 775591959 837888374 614469936 965182819 30468639 742517877 737421107 978637676 607475967 899016725 946785021 964727303 718791459 729103541 864823214 917549747 799826598 819602759 516964287 657062399 745056574 836518000 891898060 928764217 781525715 819394631 921224824 952917187 511741253 953640009 20790987 823463024 782570807 818943835 705710240 824199703 930688704 951249065 424112171 717152200 198878892 488680501 213745743 646220853 671555794 682381220 499709178 657796227 915972918 949589846 774996688 814039204 623163942 821573546 341361757 628983209 900363887 909581490 884738274 982278558 370526808 549765498 459212900 534784873 400312839 524495628 613426037 783795037 759723615 766067648 368107353 553198244 557820559 644913820 280564388 637863106 938173325 988769629 181715371 212961772 266549134 845662036 855220864 871508085 734809167 907375176 96365410 343299179 916682447 974759525 464395382 807916286 791398792 866718905 363992182 718810078 974477411 989439527 115948216 273923054 848098951 918698851 417536348 512092440 625357911 641989578 221089745 859340217 659575501 984715557 318634220 701430128 120597624 859050602 420926402 512788088 119438131 799251206 934018904 986840864 908987502 920347242 277449444 713323912 231569036 801035519 842828438 857587225 367925675 659206596 575227256 899916843 880742528 933038878 60307194 206585795 334361519 660996406 828294359 975757412 11562624 138372664 687897167 863729993 398140149 905627835 74701640 797068197 361238812 608579981 588887265 677889831 323912581 518508013 102802666 766037427 559702318 797072883 843530180 976171234 79653988 865527922 407697403 548486113 499200675 759179151 224027415 513127792 341546659 664404887 644992369 844078840 542580934 741554049 795824264 913344181 293642268 488380466 788177815 883065795 660299842 787276640 568331479 993833709 868100116 902677053 202799087 477109847 758158271 768213206 432812628 980675882 485602696 964389694 410949977 613181072 648673946 756094303 633065064 788125848 149733771 448050844 691915564 756813975 92137087 548169692 884579900 967537533 48248465 617445122 294100768 587878283 82422879 252920336 945313838 949389506 520104960 825461205 466785256 650326179 911319006 942945709 198758917 514760853 890831835 934593031 237211022 311506878 154836076 258979705 617876093 654231779 499244372 499690275 579944369 708027156 223307953 365001441 196246950 926225728 898414547 904589216 445787365 974581650 438986006 899888657 273693105 598784242 847199962 858353514 373761267 561110502 919514355 968872366 145830709 472551796 414174834 999120078 256455442 923910689 229033848 770384865 424186209 436734675 817724173 880705278 556725519 727629131 313064758 478616706 282195014 665667246 336815386 889589929 567936592 673825652 401968421 752613452 820966957 993993906 449784131 520961309 692685974 755850845 766279583 833052682 149464921 694665167 216452611 498633876 298495298 434830119 720702535 799188078 877192480 996847110 172102154 477691058 369597632 516185129 784906517 912350310 854621529 873352671 714762179 831853103 848365713 981670559 381956237 629260039 424358718 829201830 490747425 560474619 893118099 975153404 306976491 968885877 917137681 924865528 5745572 735208756 941571115 969869761 948710997 984435757 118842622 302400255 694159074 924482914 294828166 515248658 416009228 738223192 6211114 369683588 427234276 754348494 255883845 343415602 52006246 573782958 175220427 344628672 549591587 899478818 389874301 932955779 279493457 474977662 971444234 978528288 787173491 878805293 207966872 827919270 791597426 940485459 111397544 446031387 73807443 110556820 34579353 859518216 461630064 684821103 143350533 784548014 225033640 624430349 611499992 705589660 353289082 849237991 570425875 762988596 429834140 751037185 916320011 937369704 802004143 823871289 481537279 672125939 166893059 369072819 688569611 791282705 770921530 794323191 732022325 973677171 962411494 975187143 198676993 750176374 463153191 761839281 74483263 122275786 89463029 331014470 763462881 854864709 796828703 798359745 639087783 729497833 653729022 760507381 810961019 964141843 412702133 881012810 875344856 982665865 273988603 339783464 607833728 675332328 454134279 531180782 867151383 940442188 39159145 418370640 972820288 977778850 191953914 225795301 908030795 967726835 429910421 871636594 248008606 412295188 149788450 630002507 26640486 692787079 25836325 519021346 278935761 730773438 774881143 981677816 878083440 964777648 596606675 782799861 124945620 776902061 728967853 750150667 925732321 929227138 765564374 875467299 213459364 785603440 943424170 974734744 840715198 872396388 419683577 439348525 859393522 995728656 787187530 999685601 65806733 432299579 694519620 912862039 596613782 689874441 344658742 621902240 918408045 932170939 619375541 971668516 733733058 798322699 943522959 950306166 922509507 975086560 614056613 856646820 242927976 566508375 847193685 890136976 886173264 956592061 461911896 479483270 783014474 994722736 608349174 852570399 149742693 560228358 48595536 89061688 966266265 972676543 97192431 744100464 765415306 899323682 577459088 610310465 308081626 580510713 249711863 992870222 152208459 947548292 14604483 623977989 836520253 870917994 660919533 845584855 22117434 198403308 928912924 931350132 760376458 870939057 825912624 899531141 242477654 334589368 930090072 970872449 276907010 288282084 300752190 544055640 831729400 986372092 676437137 714355614 552425856 597882013 603860216 609508588 703330556 990252700 642074958 884381952 376282571 939814285 16574079 250134891 132843817 214013997 771068444 860851663 200870577 715346074 559372824 989442674 232266699 431409813 953325498 989698935 767016600 790913363 476519884 936330488 412180878 722496646 808891634 911524334 519549935 929743253 716819878 983951453 351915174 789857432 101623591 734410700 523807539 709435868 189921520 808509473 329070909 517484970 853296246 976549359 483184320 562627782 388460602 886640452 78771347 962733857 406417241 581457543 864653001 989316540 697243942 697413150 151469604 751378095 975201481 985276667 397242344 605042258 562740589 979553409 27925344 377241490 1861251 46697397 55937919 384299516 296377298 698402118 818129381 894463897 9955263 509590124 52240078 974979519 995067130 998033981 311134388 887741516 293628091 402632708 678760239 879886953 298497607 868931998 286944581 804677065 283865002 424035809 83347363 943229862 839358110 851478144 899257513 960434212 384527580 387799958 739624508 960853617 858520457 861905298 115944033 186319317 415852394 587518290 814061056 921635931 582662833 919809729 231874777 617365640 535441424 703216346 883098866 954150919 583436652 772199869 146825130 991644736 973442222 974560913 147664105 208648763 776113480 887015532 823484547 910337989 697879467 967644921 13517139 939535346 498576911 909636539 402745629 952632921 902965862 911118694 847574326 978316551 454672837 829986199 569126446 602419434 956894008 958419805 27383569 470433566 686693513 965417364 242442338 773108441 732975579 923472473 210630087 820021709 809493549 908938194 633209910 870661225 413679042 445095787 721301660 905800587 593069736 873963440 683714867 953159242 24635954 220013811 395290451 814234358 153870238 529797120 816501056 821279407 25628096 774451282 312289789 803123955 524520087 856920980 341344658 620716669 300592351 318964298 506485286 957810816 468043776 697523370 590332434 758353101 165551897 589610192 923096199 965761414 799006916 957582981 299886529 441719910 444521046 846758738 136201304 708654139 71826664 997876008 358325425 853444754 519125995 920975490 485065465 575359159 522816736 832282241 577128283 774214605 644109324 899342869 160270092 787538736 199318234 752198315 434137157 634885244 163814324 919486770 333520559 438887768 311071950 438048970 550849644 953354550 364428771 457069964 285214232 877088487 994516511 998317286 332404129 899597464 188044373 726900150 950606536 984999731 156656848 497511453 644882826 979929338 853773198 874243668 255859755 522504122 644741008 662499261 420651272 436981831 169056044 728805431 32444711 747492433 293604576 761013291 213758019 944528738 472068038 546361761 933865877 962059333 17526253 378510570 665962282 900299768 788026578 998890367 698286770 898174417 184858420 853953057 878505812 945126747 251929460 953749321 757909396 951366110 453330572 870324369 292094435 798095112 753191365 844708668 711039797 963185223 560868040 663224567 443950226 593244536 381602540 868204353 963583542 995663783 72604030 309676472 258579409 835583201 971330534 988635240 396046495 396821258 816613372 862372390 629547895 674004576 306445298 951733469 293123354 320031752 830546031 849056277 181043489 435525725 902441858 986933225 267681563 833141223 389814235 968942983 793051938 868448359 364789358 913820647 394377101 990763290 977631455 981193117 90590252 806437166 722433635 819532307 445907979 750301200 562312668 869643548 516847146 814747886 699483134 758284492 752827591 935322055 644674492 852276351 476358738 724650647 985079013 988967650 107800858 872638152 749395368 917884824 737122977 975034663 153666361 776933762 503115916 996455873 69457779 888933701 518606854 666651961 769954994 991491311 82090082 214658912 773460737 985420903 156995063 787008979 772571751 814069945 257154629 987276347 744463731 938529805 162758168 192258321 931930892 972263726 72680387 785591515 740773332 868693521 512185855 592222521 730769323 993675670 259595848 918754663 452407696 486615304 593548341 712538280 846233137 973208253 35201064 291594614 379508661 724409362 9354426 440320308 87916684 461796437 352979054 820876161 663465565 807292246 175199279 671153575 653673761 968352627 964383127 993962469 654266652 812226400 471528768 995192772 669532710 740750706 823988419 920736273 713905949 903166997 661441935 859613090 598725758 758700436 943546760 997028565 278836352 353910229 744666433 829006443 458201411 791122523 784171288 915862221 712639015 789092822 98236422 740557450 955866842 964804755 659274872 878777348 126953084 424690531 747459560 870958887 798649923 806014748 295059577 757614314 562666337 992445351 550559434 856307034 385488212 878863313 216368522 636775139 323331235 526413120 381723983 661124346 50974739 929024087 82708521 494731525 19434128 921533282 581765506 778248778 996743489 998760612 472573687 888354836 918660000 920361326 34429237 491836393 682633105 895129357 803288746 860098851 302188721 448453285 554253663 690284460 945344399 953177586 955199991 994278209 204028016 754149371 96967549 437516060 196627406 736918382 82918028 778576323 502554891 785522200 565166416 816372203 592412923 993826634 668730631 975526962 503948713 814698320 71692224 608575753 842481958 943280134 820288700 916140617 123275212 141539396 31806100 294614642 657428371 837284830 864607878 913014923 168833602 456903633 377498792 705090660 562779170 623167983 104726952 938581930 457084907 710027299 89511684 291625653 254147778 299334976 690214321 943660801 612286943 917065047 328548835 436506982 439626628 980406614 518990749 961692127 320688462 638423341 867769338 923320174 615340237 974634620 978084815 994267777 10519172 337495129 15859525 423582117 39094657 70941705 248757544 995556191 335309483 537076158 338728714 790630813 184809519 402504252 662891476 954056085 743863451 747052821 564872363 820779383 502207341 830414150 961994120 986632435 242500868 860569827 995400235 997221309 951351537 988328558 746428336 878582418 541371211 601499300 90245916 748900415 486778681 896069366 631316625 719014062 630696018 956074178 584827146 913267569 862177250 994870506 203379142 490855913 614965791 932176615 802088278 949389710 411213935 737568963 303536060 839024667 571067442 879808299 754284704 919283338 988005151 995259542 118488898 160156957 697628151 898840024 859531276 923807860 196573327 559017257 676187651 947407999 817047251 880725370 401968465 871027023 61671665 897871048 210356227 316877575 44523051 576134488 103353196 905698427 318205374 589327771 727627164 782045827 513180488 778824069 439128932 864224186 341464802 535938378 286611397 342867084 870223214 934258614 714213634 765062614 620667796 629058352 242282433 697394523 790815222 955847083 586488101 621664650 525785109 919326169 986726819 993184783 343960215 529286257 234594685 643941968 297414620 528644971 426404261 617695768 295678273 693707008 685481727 908636137 517003180 987200213 388081588 862571736 949261559 995751980 25564973 119444555 472822719 553647185 939670643 944771355 604879312 908152822 591965486 938376131 936074478 986162005 740233199 940128690 370749162 851937318 148274896 492246178 471196481 994199983 742121593 977103562 374782039 783919143 817563107 930270858 100284925 679000920 241247996 785915564 253130753 434089923 793754205 801267707 738910817 984540776 659726290 660799421 403764204 972502342 100980846 438264356 359032929 771628117 954501019 997652620 151375423 674924238 921701868 993907586 576392538 596781330 260843244 747382693 54988469 535514423 451380532 895184654 629358488 823260649 886516473 948381182 861216736 977938179 339924603 479158998 952327129 957672013 123992301 453304363 640172018 672532490 275050515 900730603 51478524 419602844 115099741 246081526 845828483 972432537 105898171 894783649 150981280 876027112 751224052 931229705 317359219 591591264 987568096 988791228 331234683 881704520 754151924 937487031 971706799 995421634 818272396 842467057 712919877 888099427 199735834 466884634 591005526 908892886 57597251 367644070 293296673 746309849 927847370 999736325 535905038 904239224 738342873 951807917 662615811 847829666 471518681 745570287 586730362 697107438 966319884 974723141 167438900 778641424 913134558 950202841 26017657 952518667 278258760 310808243 816940527 963923393 679210132 704655772 280409833 354625134 487549319 669972593 360005830 708107401 159539323 668830606 630032892 803509195 36834033 59712938 63859335 847017234 200638880 855078339 147251260 287030219 567590790 613116338 349637535 828576380 313898866 938201718 893968538 914122858 171963769 901395545 88546619 990228380 714346739 958473109 496262395 999687486 33612925 797718993 625269798 870430087 92526449 524344433 890859452 934971241 265447906 364529084 995050008 999346303 219152036 676202305 817952841 983607444 557823177 737652108 682403381 693199039 129912220 243121608 714602926 770676804 21018801 474062812 319595053 864072844 76061718 95459751 5112473 382961245 6189708 561839294 922505030 970152269 919241941 992413477 644651059 703283011 583286667 805495397 428340108 845986902 429040549 644439577 265875995 927396262 54575479 846085224 184036771 684111221 169637362 741486678 18990847 954091556 6740693 589906318 37763049 155667866 103231917 906326328 554927753 801190550 55531036 127196149 434919595 709772808 251614022 625017139 552838753 696519091 929500384 933482233 452538155 655299221 511232585 996479230 568044732 713433664 358559126 832895998 236427311 762757610 716655291 907114548 164410432 596235359 404702115 719818659 595658359 668389142 53988939 777588288 733628411 884409402 539686002 967050751 244293488 739876325 150884606 386963545 601533551 858643157 774002984 872310325 832551794 921785159 750801741 928646664 323041750 344353612 831430391 892628435 367140166 856010260 190401053 272803892 286954764 530741597 539923112 826725642 854290350 919614733 539156385 823470469 582927647 752689088 536943603 626648623 386567475 692513796 186384337 391855988 23642431 268540501 601255000 750324833 587327797 732168944 914144067 998111120 139326837 468577187 556310458 699425832 386850465 840328841 68189871 561951557 356796761 702378362 73098032 618879432 431578654 904112446 757912239 789762199 724425893 866131548 99112401 657316066 126877779 245856681 607768937 721120688 904192665 919706657 37047906 749437045 794793662 946566878 335291851 731382451 884316487 909865965 359402992 935745701 7770137 850553492 46716681 136967142 512998574 595783702 211434554 535201976 198557504 286483630 165909592 910463393 700038694 889358261 179949738 425153038 51017383 801432252 705151341 821264390 472476868 678561852 390518479 997916148 830427070 875801105 655656545 823242958 420284515 663882018 742485855 785019783 660840495 921952420 512195598 523351566 238220451 374103083 848033788 927424780 111374999 966350307 861851159 941806633 629061743 776603162 375602099 416633884 118688143 263451537 801326652 814616711 169832380 808972910 573508799 849524725 488035326 776509259 340602984 641584415 85367999 88386429 640248409 778708030 857658278 926380513 483261839 537910508 702429285 865838066 60536529 940246139 320401750 849188023 104938254 922745835 174397232 907899659 450954470 564005003 735250712 837633448 738460017 851724096 835217940 992259780 188200536 675836912 953044567 978823054 560801183 953695876 530576791 796073258 698526198 890099223 139632031 359674771 727299604 960065896 346248249 856622120 310699675 990662410 789563913 827175479 566289234 739103708 815196531 960848491 595917449 908498829 587372561 966436845 186273293 411467473 882522448 929896350 455315101 840436134 89304338 852388567 423410283 786193181 397433581 407671217 505507458 787185206 18657737 622831984 818506366 924933207 964727091 984265454 257603869 830255053 809996638 962811065 714616284 825622372 225137271 763098176 564318448 682902606 854967735 891555377 695267895 821616900 418691193 641878119 417361429 867270933 83484350 353824014 946912351 950747106 739479176 802083415 907676882 970856419 85760692 950636184 901016429 910590681 153350931 698295946 658378155 984056026 842652438 866248454 318215043 596315044 567804123 628730681 741132061 891066218 305928853 829873452 363979965 596550281 10788437 55385322 87554217 914274242 345005873 621991077 147225597 258135160 34380122 911705928 531972137 535218874 335819988 738901232 30724041 603694828 728820853 985125798 338722906 394173436 988921802 994658172 756334898 820413091 780847511 845755821 368867054 448622752 580389604 754682096 652422795 938435983 487404381 618255593 261456732 586111939 104338824 699316346 295169607 583769159 151864595 938872058 59832510 799978633 924681774 937466681 814546157 913684335 120298551 823214562 141776229 196485930 706875451 747394734 90692526 295892446 967727918 988247050 909427499 987291949 78424307 397551059 151217646 322665105 646215307 949446639 218203827 714122252 868694291 958755371 954570178 964910405 651132835 855386118 224387430 953486217 824195735 992117615 708692462 800027286 496179842 756889732 4007436 142204904 202194039 340023915 89730052 282500280 101726643 894941698 608344012 658943876 932627716 962681183 176969940 894928101 223999099 974671991 526263849 783269773 2101561 762976203 94743328 899965257 946132110 966546772 18163854 531533783 688836873 743953101 760313445 941403070 862981914 897427560 948302031 968441443 688974777 981613341 947099313 960922819 57804470 211113556 71827123 458795038 895534965 989830263 428953906 692660406 19333373 533954545 648536756 901075013 546247038 910788416 327337874 588940846 902039101 915553410 971780344 972787975 339134364 872031079 668552334 840671304 427285202 872227398 813464009 823404600 902895330 988764887 480690904 940881716 863910763 951420990 268649279 818422369 352692357 830913895 468281125 895217887 104640936 864128352 514493120 844111386 460992055 617243694 129588364 252313509 441405442 958263664 78219735 218725687 574269920 658884226 864358240 875741606 689105162 991453239 489683757 696292307 722605520 772002245 287455935 351638390 173708208 807824456 339705002 517583510 826579175 938388551 591673559 874122548 883911568 974592531 645360917 877001857 54367401 777764944 913693000 991517681 965521500 971085423 417835053 856324421 886096165 891578256 484608408 725301094 431871206 697045578 342341333 951768617 458969593 478442351 127258523 989383683 817431475 842360824 457513145 954415329 79684311 892634906 320595367 606514445 931986457 990892176 55635384 98501233 458269480 605841156 73377626 140503269 501897113 962027325 691293977 797656856 682973787 878411884 356229974 881049792 5365449 821812052 783908008 884738682 159437370 451452267 796563737 976854198 208158979 260344286 278242992 283273667 181485810 580411962 833561288 891215040 381538348 777295544 597310557 935647174 59396726 59958380 613587659 688854490 300057079 318401741 796108655 969666746 563653574 992866362 966152000 969371847 59328185 216337876 13484750 894907406 100511837 518849349 478349059 799559730 962297815 975309375 70517855 496669589 238612469 376709050 629256394 824987961 276702893 979756734 481764639 590078784 586284689 732903440 994938652 997932723 357286687 982316910 819745716 981930866 81141064 333670083 513576367 882280320 489866225 642890287 593142800 747398266 546395032 768356116 144891975 391278363 49216752 840351584 214779361 547902840 847146606 899961789 418813129 598082357 7581840 476365201 972989233 979639822 346930240 891202303 591993497 668316741 236395655 741975199 976976870 994562410 959159840 989962223 883244203 937364854 940707454 986450611 19822664 692330634 754598120 977803838 638076989 712012127 357647669 464540824 204438135 880001644 617975766 782355512 629882121 780063771 385163896 985639869 112717073 480354899 528502889 791260284 263899670 403503982 171196463 554003466 62402931 542449541 692213311 926524924 20918708 499573976 260175520 494037297 323441976 688400446 965538251 976986604 483192975 915631482 129065339 976170287 659567207 948031913 736971418 893208862 930520555 949866773 219075299 580807652 719164572 863307883 727228013 903350180 236304669 798176567 174660994 567911863 497184305 864244799 205971017 355239616 675496815 818416810 559132519 875841050 110161594 877993630 727840762 964616257 128561884 264346495 186313094 206152309 857981350 907590055 480079241 811027693 919789574 998306893 749749203 867568925 326602220 664713727 411192397 962203777 962030735 970461462 852862048 903244395 121254178 621975510 779338674 957797988 814599703 986462164 805458461 828194901 823493418 902581690 125177896 129559958 593671108 931457636 270710788 480361236 646040096 803438489 156647398 799705435 591480620 741786979 829849613 933041961 688324494 788094885 530628348 563865162 876259842 887342281 860952640 866819965 520662946 926675964 519749029 950734548 929236215 979000880 81163861 517479407 600977007 660436275 850270361 901588936 355520028 753642049 895373872 971693446 211111688 906967549 84685877 872947375 521948768 801173499 33065970 840923061 698614088 728153578 368046693 949211428 887568124 949864183 456725787 585147659 966780028 979443748 481568043 895686343 836486088 956278191 417365 664041012 251535842 842542452 805112899 881492051 883250706 927789504 9010370 502858760 813219923 816325266 951228727 996698085 610731755 708695338 155388984 448794372 831212192 841500040 115779496 403211765 908960943 928398082 159833602 495985094 438071859 469488052 967478625 996896782 21620528 880006402 472977600 768707823 658620381 793944486 222478128 266400186 643034378 933928337 552032872 609565171 151410874 604398675 683536704 772292806 513590711 986508784 894552435 955076152 129349446 510194776 752777832 784673156 522677811 570895680 652098272 656975292 691386719 938283850 326927799 883545339 196318311 199255490 109059462 863147245 780073336 826460254 386914745 981281860 724503241 763389943 416770798 676307021 295744963 457046773 762715907 774832212 422906496 666173140 668215312 837265504 205429221 880490516 142747763 243189944 548514363 755125146 927189043 982771738 531764 829342474 320622075 583276210 701832839 991618121 955934762 983398284 102569965 731349751 812707663 979151124 723149063 923479989 847877966 865170084 67257701 76964778 430619212 787226152 774590886 878657225 36391172 416983652 800031032 985322409 83278567 87785846 441076196 816917185 775534442 857182332 751891729 815391477 754804834 805398996 326855381 929208734 85673326 757601466 502418612 638043130 954121985 994875565 104113888 358918373 603902398 657919771 97497554 344501151 843156640 922268446 761933509 876483078 881332976 937281789 772605181 792296149 906028143 922385316 879945938 955061659 880188335 918760760 689971666 938132258 775269203 886588169 231516531 415834210 716979563 925228523 110735754 943665446 934528048 957501858 273827634 689645945 433120160 866874722 513177197 803516473 944016912 978345802 534993328 725270290 614824912 756680733 243046763 913118051 621058114 876246526 561519852 707539784 302757636 303585532 926843182 997831898 869123435 947143604 921466591 931817148 438041242 476112936 947759996 998712571 965695065 981436720 585760705 666359996 186648084 611411401 180115696 630967568 338487927 767923701 158009117 983328544 79744789 524953363 84551371 920158275 709861233 952812698 815107955 974940576 882344979 929115260 154909836 208408090 366294898 429442774 212338587 787932669 306281614 990919796 982967792 995516608 151558846 736956358 276898223 311406008 667204880 966191317 620606642 759137216 71753425 673589178 155188984 641146237 915582184 978753582 169022684 249609054 715518573 806079906 991848666 992062384 227514024 668542495 80829990 291053401 962354081 991953622 914453516 922334421 26226876 819164118 409234361 997588808 63488506 67825267 306534921 461548263 433238617 697498119 286367736 703520433 714068793 796946766 258221358 396550128 112639298 932558743 431545510 503779391 379886644 655591662 979983333 996700223 318828266 818135470 708972981 711906495 197056039 423745744 206799223 684196644 169775951 876156717 150285387 765678812 299353515 673707560 287540151 439364017 897912661 986848204 951373009 976679627 984473777 985473027 164205411 191461754 760505111 791381803 313835725 357655575 493535704 992914958 613869991 886538561 244278774 636956164 563504134 983768448 840833352 865686846 913232144 954370857 115164417 736921631 526430552 706600063 203177772 906873841 718607367 845434533 758492329 957459284 391694505 975882409 785830991 851456047 840859512 914012249 845841866 928898285 496048661 717121164 599206526 800586496 685391396 999239767 973800353 982836559 627046735 665143803 213268509 248792587 333210698 943100284 259761634 882063951 795600561 933101338 290343673 358855219 105633149 750142923 440334632 756151895 619565264 904861909 38762548 680835681 187827222 954489261 428855069 431036383 999225951 999627352 813860536 973343170 555115418 611210262 253717792 749593626 628900151 656972908 544713634 778736524 234967570 863974384 654819129 750906305 903841998 939748410 32345111 399374769 399855439 768489692 721429673 813880739 634095066 769022454 107432510 466724959 913801551 926047024 992505724 997408837 120195814 221362590 83843948 547035929 911157396 921548194 827059407 886730699 550565163 721160162 365974327 489806093 63601058 224060184 900888074 933581837 250563949 298444949 7093725 259780262 841493719 901132725 606766260 822545466 165774060 506827457 788982102 957315136 451284212 635287840 260347758 382970552 284209809 385124392 891623773 931860617 903975036 936833611 32754157 302440815 971342359 989272582 283525036 937506400 726523246 875498606 690400318 950258614 940215865 958750451 677178767 681782601 86341256 769188156 89541933 673501497 823718839 920531986 523875909 592451734 828665498 880265395 610505452 782681486 938787900 981512697 410992840 512849761 676515562 887462394 844070310 855834159 411587946 747266952 432776725 931822159 289894568 676104283 113947150 736779019 501599684 858373782 278506145 717843531 549498130 767813434 357282177 870016717 984098406 993427904 18737367 468885040 832095996 968353214 114995865 203429211 676673725 721367411 671082474 992763331 796692634 930949945 593040137 988847368 660853463 729261545 982087009 988470410 939254018 984291414 517373962 762678000 571067703 681882063 679544656 843856937 249579175 701185820 259264339 376395501 169938914 698471514 121794591 431374244 58350217 387520438 174280817 711943067 180143505 576742399 287037538 443960056 934244920 954962429 870352843 915474254 807766839 905540434 281325901 713887035 367016067 576340275 200689781 577526385 503040781 878832339 847032890 976022318 930036340 978053885 666017004 850847780 989263291 996539197 133638728 744676051 36457771 116775963 247564017 920605227 17144480 205297351 397995458 547654518 745163672 992510026 113816641 981022687 951068856 983294226 543267224 664697834 140277468 788844102 570041002 739403018 119950234 796203874 646824729 996636194 127919566 171175695 534930360 547674190 564108239 923020241 268787284 407073502 77614701 280293814 380699226 487072239 337262860 405167470 538193747 612986386 446327640 867773048 457366284 608790728 311371912 648447127 349386005 972759850 333129156 512840156 282628760 622766466 37330700 240593761 263643310 750625387 972658779 976483720 780262656 824873552 336994685 496706533 872223645 926641139 384922450 543629513 45935573 766820521 96897035 909783613 626207492 712861411 279167538 452444213 622575137 946132508 497023167 751763806 122612591 205682570 89926026 726385640 122160242 665162553 490062042 785906268 509220696 980371767 234604658 700841499 252761451 985877573 66478955 501500835 216492101 952872504 905579693 909020108 433129597 943785151 955851547 974993910 47197261 193866318 945894957 996480418 104638199 189707871 478820211 981565667 522761972 544287706 905890484 984019053 39496490 762859003 69177266 202445580 645493068 677623891 148401019 216009261 110448457 212284414 870990077 877425468 715238482 967238436 992647537 995385438 275953167 934056820 709728777 809496068 926711201 930936371 395510074 658093777 469428521 676990732 551596738 683223973 332919854 635452290 737515463 801288299 628258476 700970735 671042159 963642914 237412639 551893897 635432553 809323917 94310401 715173263 58925458 806998083 309606099 393981916 992141663 995782326 743631860 775680053 460138333 924579870 245097921 622619331 180867225 506177026 675862970 764448483 437603400 531759083 786399402 848179921 907631458 983418040 66018996 429156782 235866390 601382549 753699505 984938009 318545288 997016958 766198005 835390478 169176306 293521836 961927527 980588090 274690685 670678922 750617262 923435864 832770780 847335584 712925195 750438291 164063749 490590004 476122899 524388442 57387114 486801638 658762454 756841962 158993411 518734273 876126675 987034648 523875591 986752098 938866354 971092467 801146723 834540543 913423106 978478542 595541853 751640354 560424696 952022337 109449184 688805549 721675778 729612740 910230174 913318649 407514531 578797652 361587679 728798781 835142056 894843676 403933922 612917384 81284300 873116340 93024138 97792241 806322050 938472297 651896407 913189790 792883219 970643117 475981354 624277155 96982099 145292723 568472030 879824176 109189081 297318461 906705392 939549949 387080722 918066935 869683534 928580398 140755812 563347219 92936201 121780357 116038100 190033201 113923021 905567823 891483533 983881015 52152308 604939606 801954259 919196112 200680016 456402224 660755705 884695422 496924962 665676169 151519089 520006488 544703178 633910768 702239408 856275304 233365846 511338959 181266265 524336035 109085619 796614976 578871629 929757583 768840720 822484693 724176488 766460922 867489921 880312848 737001434 746214739 866420328 979572052 65773568 533758476 135198331 671854868 139913557 865298090 61945813 986666732 79811273 236931385 201325130 346153795 135046714 788015552 875709448 967448275 906879286 972175357 599014175 946519340 257517324 983656891 544582347 974603293 828218038 951719762 72805212 798271440 226572318 336080070 270609822 521631850 903767771 911332580 103163495 577938658 269992493 551215384 829091154 997799858 90157259 778469113 278435517 609506792 429054775 840702398 273028633 534287126 923483111 932870577 846649517 914459380 884556124 957355931 556523198 846866984 399271517 587089880 820841746 939507219 239681555 961224197 559289228 565175484 545531974 957477160 755899741 821129111 648013362 668723346 807401004 901958136 337640029 451362005 624283002 844462029 228650481 604073419 332823275 484179996 159118643 524754051 100874680 205531250 135987999 167023291 642422738 715389503 522229988 787149069 268631686 365916586 415701656 541829525 702848834 736511886 239327383 365621764 768697381 908806315 389697642 900194489 399836988 425189160 36476840 674023043 4462079 13605959 590168183 601931828 95608691 291864107 584315686 847794675 502044591 620876675 296342279 944304925 527426476 833504458 850261849 940886324 729665239 920669746 801985767 857610967 234400184 317245503 438762073 787593184 675059060 907372199 115622719 977240857 330420352 477093282 20029646 107877827 762166122 899848981 110789159 449909395 880951923 902432451 373540416 725387307 378349615 947448642 586559465 931009910 26615393 198676900 401430537 766433018 926691445 999876454 52699107 175834155 293552825 815368209 170420664 758452197 995475982 999878589 17888263 735816443 368746449 551556865 280314839 511290736 449448275 993083540 212127892 367191014 740541830 990321854 536241976 759386438 677648876 688503368 536990585 949763755 217656356 261669541 581820074 634821486 839131856 862478293 869430979 983243536 83987466 988397339 51070330 218589719 769257539 964079328 228235265 817081645 242938077 565713962 67411475 464622358 541683366 604732957 709164042 997937128 871184124 989908871 506161737 597207897 9141077 716268051 660995797 889333290 730402241 959370310 507467403 581642725 584400802 584501965 209477209 935792477 703854848 926029504 532471190 897659641 901238410 916224687 587854590 713262819 246326731 568761466 204391979 486373006 408341488 497215278 870994997 933758868 962956028 981218126 676139960 704906572 290446374 818143314 659867670 828467558 256893685 769964779 463833333 803327324 323565248 826783458 918320973 927337942 932184498 985383995 16121653 378000360 695805100 890822846 415665971 957648259 526732492 836064916 819024563 978105174 196937822 919203220 290019967 761261389 287913594 337656637 931324187 976438163 497438805 917186357 758609743 995763694 542978037 889123229 816598350 890240951 54889360 919163861 168679559 697159266 100243070 256763752 9830628 880563973 822763595 950622317 438007141 585315949 819534991 978207113 735489640 765849719 99393379 856616721 593579803 622733634 219647427 949763819 128002024 725206420 977000929 992190118 437039177 568002542 225019149 370188453 356426190 510969543 627085804 675586341 825989890 903532968 86673605 441059415 591388172 919847783 337328558 862588115 261415042 597998823 585085431 742952144 679063316 882778953 533983842 853938512 542259910 585406460 222022836 592167036 296719595 771052854 935948838 938292681 239639141 742404899 282149407 483098923 811119093 816130790 539956620 798038844 248937791 706833099 421073692 809673546 564949399 580790957 686127946 696633902 945815104 953372638 476609446 539917652 51515639 842219508 481154285 515829275 492963987 691818627 285050397 804558866 242324837 828062174 799258304 992253250 472968695 655104164 355533419 994695198 641749941 844855616 213801045 642240344 992027445 994382461 37089797 126804022 606226024 704507117 134395407 442370855 373443879 677184522 937942639 943468951 305070473 485968655 708355210 777627451 570836548 664136922 309144644 807294678 841877197 987868921 38442586 396391619 269808959 769537165 761469338 856057412 874373663 927686281 773355600 774067492 37861049 243252073 845342522 979733343 813018518 823941716 708564397 725749272 69625970 411691093 591109071 908089372 390714142 514214127 311408477 964735037 655443737 674051898 359511602 406985757 301415841 732702815 544258127 818655787 834569225 889679077 381546380 685091866 202341623 957551890 883235470 968857375 875231597 936284243 66293632 376141371 782682833 791986821 851887311 901774458 357853357 597417351 689107905 821562052 577456016 975355223 280555455 462257055 36277661 865138556 41569428 238754016 621682225 711888622 293854921 818597546 596468706 986160996 733216420 808004838 546838380 939560322 738626796 782784582 999284253 999298884 91776453 811737800 941616817 962560574 718903689 985634586 151163196 558333156 70298516 559557071 117386566 138653493 988230792 996933501 357446270 566560689 97341278 743789538 598484278 854995454 715024312 749948499 190766650 244152196 894852420 993678851 488051527 496450244 555680702 789809288 56636525 338946497 445574964 705846175 928551360 989310862 679360990 756812185 119767207 187700897 379301372 945118883 251571961 700556812 786001591 804827817 554999465 706892370 961731789 979175900 902570778 929084863 405810265 597542605 630922372 776452356 66173840 664041312 371194520 591474896 756827420 825696853 278814892 617134742 705307806 773383294 377647853 855954116 255981094 950433110 397148044 560148730 932010686 952931394 507912895 897388922 383757857 977788300 343528549 446026630 142284985 703871973 821253449 954080244 65813947 566117446 432374401 781807612 116351841 927810721 336737953 357368173 704600637 843318696 191701800 872873947 17153042 108402646 853759834 895063884 719508277 944264956 332393875 647659050 384402344 996284053 490783983 708523373 767202011 827922041 825844483 828703850 220572093 453460638 340236567 777387035 717156203 984561217 633807249 668288209 701337101 863614471 982189619 998251925 672651877 770449348 157964250 449823739 698894091 811273348 2405071 426726915 921996706 991497814 634654761 951209959 804060595 854101363 777579876 870103051 932655229 973032902 641222161 994970952 848826286 914924831 857049053 899363473 641892176 795058323 735937286 913615212 892103882 929133156 651090496 721042080 240469843 293035814 991127659 999889374 730568467 890722557 233391823 604382485 479252338 666733406 89038133 208348498 385580964 947908639 810370776 943774878 304596941 803906660 303993323 502054740 408558374 868955194 952241955 955128474 263565474 548511093 405992189 894158107 376283219 985383416 115676841 437897354 569722735 728385753 646295125 947221414 474842234 736644523 9784973 932807876 786407427 999123848 646175879 715090206 15513876 565971773 880510751 882022843 571366358 811064967 834048989 883591510 502425356 584394515 714257507 868159871 234004421 500624138 840518044 935700854 373195579 815704027 590498265 846894461 185273030 437294126 340101018 699810623 611960463 981282485 516513854 586567263 955467438 972322513 121926000 705982269 929166480 967397623 736981236 829430955 349717800 459107572 143425282 662852033 276480612 771630930 870276501 980965669 903536044 965213914 219366688 444279966 288040987 691234555 747131311 804589852 801100460 873559022 917659098 970750461 816638555 829355578 504783966 709179061 284752212 769228189 597788860 712044938 250779439 342311528 359802063 703508961 74424566 560842772 521416176 739994513 897550170 963956667 252777166 698362852 818294747 927196211 856716353 939846577 978291320 991288320 441709454 744497791 346917955 881220548 730981272 762737885 547604549 625107014 11633215 865228580 396889107 411642131 967959510 974990553 642537225 941310483 925218220 936822452 820887766 976745399 865746934 936394576 731003983 890469533 195421988 663206586 466428470 952438669 540206612 872933392 300553355 495466201 183441530 551441697 165002393 398669036 393577733 597455817 546294962 646610741 525044642 684688185 145042875 364399359 746316199 928358496 349586236 659766848 43350335 711590037 998360729 998565790 851495433 924481158 959550783 991100658 857474931 884552509 851115578 903866871 959321095 996364875 814882129 815724634 440740452 910524535 666854580 948005760 257440945 374983508 971428709 983772470 411911647 574354421 775836079 813713397 21693349 318764250 938546110 983189453 539838241 942227603 610106758 654351724 997617453 999279983 66100445 715826249 170842751 792519035 718626388 971506987 166395694 795920187 88062375 609651667 640919223 953893191 279818367 687934491 457084257 996745959 972479411 992804418 234391220 271078493 739579167 787722298 406019008 713395873 294705822 637291612 32406918 509453092 181361109 475268413 867902332 994103766 916966326 998195352 699122349 819281251 674441122 897995926 464807991 926210189 349772397 438467827 458437806 680990444 636571826 919611014 197738495 990865864 232361874 800543224 970739487 985266815 663284743 874682132 633383099 965691822 494081246 969329752 149338701 319415139 472505410 577737520 105352076 343488476 513898600 900204565 210028496 360345181 988929258 991822780 462094407 941255511 137121636 988729085 209030737 330101422 619131637 663265990 914006655 994847057 550408007 828194847 358251014 791713341 739180172 959603587 982880443 994530130 969259000 988256889 1521125 758012120 938703680 960191611 747772845 773426396 173127425 295785322 47689935 142092995 817475485 935133282 208108296 679736420 475959492 907785373 270992043 403780458 91117235 320724767 214951049 454598463 216323931 646791266 273383995 916327483 132083193 549987050 490058746 749419939 80651856 486022749 771759050 821613547 966192993 999851097 831303506 945637437 862454563 869398020 962585767 987566521 721631943 863620896 749320712 943541591 624721280 816218408 59330310 139281965 529510279 876372857 634640378 874239584 368306518 465553436 54322811 592730688 577666153 673801579 383232260 474240435 91499574 664768121 846946116 877112040 408053076 763729068 886592276 994386506 928466325 978918073 523414920 897701584 639240613 706353797 565970583 970463186 374181555 918035061 366559125 981961766 251651080 544750661 789761343 796089250 326520190 848940075 247261758 987692800 407457537 957754756 142858428 236062758 521566152 934116865 710568169 720721817 767654483 775915146 790177417 821155917 527378743 569575206 517460846 951166152 464088407 619756379 10181129 997332094 823106058 923065122 873512556 954019578 983192260 998943765 544001206 815804157 97000549 361447559 337447870 446579002 479626849 753913207 372770788 645997834 364268674 946984991 300513859 784028230 847058913 890237241 807856383 949685087 254613794 735591701 738562077 972443397 941251411 976091863 98003008 169532041 544906850 943429018 948991966 949875241 428436881 871143436 944723896 961234633 791255985 890077364 233845281 774577828 855070693 945645867 586604808 927149686 973877624 984390122 677089956 933027228 548591393 786923424 872447474 991502240 364457728 402930902 41729608 103906948 988385584 995774715 645302791 849784376 680898214 991664685 248442491 728371444 739563809 975083640 973876568 993140481 473042672 961873610 751016553 912619771 94733318 823421250 55286398 760170671 840394727 849152289 316211768 601075737 65281790 782900134 601785724 716161629 969215451 989011782 399922368 875783082 549027864 960751623 471985236 694881535 233326849 507070465 178819667 928817919 204028718 532058865 457234045 561939337 494648794 745432663 318814221 899257431 919761154 945294431 933634402 959910871 241010603 842158913 834314961 946373490 800736526 852212858 985695374 987997196 151377143 502631571 908480054 948974976 247891927 480661942 378567500 776091667 70644524 71140881 393445469 619839999 97242094 322050704 369946118 465833752 275279339 455720024 742855409 862608262 808175763 889984844 509682096 648046052 509731190 694005219 812082580 964081116 943289747 991860586 531650471 596130204 77902859 568926496 825358193 889245716 749848837 830818991 699733433 757338400 508151989 547755762 604168242 753774098 461828996 936713209 986187149 998736641 948212333 997046083 797180459 917389299 540379906 690902167 71447479 938139899 76291645 364707281 977739405 997745268 802838484 928336015 754076309 769757092 799995245 938772116 314532402 796706214 984906724 988304260 218100701 707073859 346385536 732948420 119416937 555186716 865206038 982573843 270573194 744579196 186284643 454355776 841100342 962780620 97374186 656383083 735150263 850780035 109152791 795367550 335887536 714624690 598584223 778696861 840661384 882641692 585350560 815925146 556934019 812340048 368056754 854588342 986801583 996887025 958274161 981957770 91281744 597075227 175266745 645300789 379722138 702098174 76888822 698383486 864087227 936017092 750609264 790985955 723173464 742744900 433882583 991226042 201035484 436542806 72083507 301875379 78215144 839932546 946241056 996373793 286554887 872638514 841319114 890320286 437592555 939352948 811709841 931523898 441233791 528082420 863838645 998035641 371949166 830897371 353709256 534661109 58548938 345519734 311183764 791590946 130384344 859344090 495606590 713007314 647672184 904807587 943485297 946265012 546261073 571105071 222527597 457927564 394354614 457436332 257901807 414645689 362457609 928052539 89669666 868046049 258265354 570369398 853871585 879434140 228920907 675477788 105452770 996538595 643924567 648343396 169326266 732987704 154696547 319146251 741859396 825242930 80371793 444867772 598555895 796621077 177501151 186043503 480129839 521487002 104842174 415431039 418290854 965568316 251192195 821563407 848927501 973934954 946383040 984078548 215045077 579335523 458987533 522465434 267881165 822819236 603188390 866050919 834973477 993547243 540153068 688575918 465941326 498860353 223604199 275268165 180028180 473548490 795663872 804279730 817438250 987974145 765049864 802497778 563867757 919227068 675269935 774144258 882116785 967259606 678855833 862096383 538036540 663367396 108707351 603044474 358213750 925102067 437732605 930469479 667313454 796211410 478460705 751504032 730649918 798135508 35982473 808774195 63327697 626283876 6776471 822268410 965800286 978613623 84032099 708941824 408359489 818896861 992020831 994899017 121995017 221546344 668385595 947387348 277065889 525647883 676344184 812264314 651117513 928300292 87955146 913690273 586080933 940933481 561362020 836993380 13628645 586725973 211123820 621104501 771071403 925482361 714858833 969756485 67533921 625132114 445029452 921449964 793846787 810278205 691713160 721452030 431312567 537070068 67044373 172684430 972756330 983851870 912089568 977663044 205081216 977389443 518527916 585704794 839666536 951913197 36573632 744341960 316548128 408369947 514708503 548290212 498241622 925381537 500249212 972393413 849741213 883771028 100073801 916704267 48279677 666224571 686785058 871094292 26918912 308950175 57399640 181176881 858747208 886237913 399040336 509587394 189957979 496749012 820304351 824690487 20735155 572910286 606397421 754695432 603788313 873840884 822468646 887168933 683690085 741731074 878725179 901696286 464427204 899899657 166685815 530084090 805895529 939078364 498409317 788291669 915786944 922031713 341558356 942435715 885146450 992205037 986088714 993029578 4340867 532585578 850765666 972287413 120038489 977559450 197029445 817104324 79543821 876367059 871795435 884170394 238738258 971763213 90092985 913778189 978071462 993384543 968599934 973303785 979204006 983710325 770233193 950911771 338231526 797771806 227905771 872569527 94433040 564227898 511132199 995314247 83696154 652886185 570447431 616138347 341381536 905126092 371492135 665481259 526122456 672001551 326074541 540926708 78546916 129392204 707364468 999087219 560088572 673082889 815657114 826608968 245542663 619076760 280330388 800339916 585687413 588437416 248727627 714894684 799871205 874323882 101274993 536048837 180362344 565423324 986754294 986977759 818693087 862455089 410078118 582432359 985390386 985567576 151619148 156898852 697762150 757682255 318010872 548804114 983255029 984949309 6527857 157376527 420060632 505393101 309438386 777152163 476236753 873763489 911708168 932556864 624707210 885679684 593638035 722810818 335719072 778414904 234211394 587845071 619134200 835283888 332523784 489521693 214602769 559585463 32566586 815268284 705047921 870687397 544504491 900211027 874636431 880723986 168092078 663341388 665435179 780331294 865798623 971560409 792340591 969535035 746082863 840459376 285910664 723446477 972361971 986033647 523695041 949806336 688176861 742790945 498018598 750172804 486920823 724778967 501823502 562795864 685338821 957371908 276773231 897414774 53521701 800892327 317771439 550174995 830458132 964015955 325816588 523112261 83007874 650844799 475618516 615191342 476333188 947646890 14746827 257549031 159895630 726661271 41766416 79853895 453244989 614043794 726391125 906773302 538773327 728825886 782854737 912457822 314252877 640547853 849457858 903205652 991486379 991698320 111822621 782066180 719197099 941247679 978055968 987852525 39434145 239379126 957111481 995736105 879820172 951973270 726104885 781609678 103635598 949952874 620041489 804438211 669636391 727714145 673167515 884540252 138719078 971834146 95202781 132881756 963297552 978062015 839249370 887387515 243514449 477529623 564366161 743330461 613734461 950812275 603632495 636364616 8333422 133695126 947545125 958148623 768655592 945299541 682922464 903706794 280013551 861966843 940149133 969250360 915460935 969854226 354440785 569467636 183954519 550753890 241619308 383126650 901277824 983708176 399115989 797621505 119925962 137956090 306853259 977051879 529172106 716374892 703019163 950606165 356744938 922884033 581934402 999613466 159920724 307606928 304360293 582213017 213531362 539061640 949805578 972827721 477903025 968972331 857957326 869841978 723707601 810583921 311132457 741173901 123046713 651202185 889038625 894349223 618575569 889604944 912236600 944578511 581724996 999446358 456335682 845284667 708467465 853796347 17285731 874188188 600621911 941272351 396398191 733052550 544412010 547210690 298243431 649639713 182132451 800419131 485112513 655136359 187284376 313400442 390845187 407105587 484167887 663800034 299842402 481776039 200658047 358576565 87631790 520247262 458451983 577657746 664236255 975464752 601564287 649256680 181009694 238626787 79157653 472658394 985972718 988790312 163428750 611306309 724752988 831249090 483610668 993928849 137666443 818463912 89896455 617840494 116549140 842273874 854138597 874250841 65724073 518730535 52852916 975060002 754491015 785477725 125134641 473565051 389767824 836930819 691128464 700800770 457353360 971975848 726998561 841885126 309139159 387052942 557300351 758441860 541236532 709075997 189305082 861340480 147315302 367271172 599354497 883616649 562440683 612893617 298112981 511653382 292873980 713892265 150938536 341008079 625874071 795230691 683584029 771864427 357570779 539259048 396783829 638532814 88971371 184278295 379489790 785789749 736740099 915151462 60943861 140234679 598030476 821607729 545569159 595221419 406843254 799589781 621915270 707710170 441435153 524840114 232977403 381968096 932974473 950134658 434066886 699692453 150307496 530718573 572501758 682864687 958789374 975400032 806378432 945764483 893689263 971283474 661167825 822051988 17625677 670818753 523136547 787486403 72849928 571661068 977111324 998371818 284456849 498796338 838837806 968780631 720473533 970874677 831564245 858846286 712699058 989982743 56902029 302271233 797254164 892318248 768626699 789261266 971978219 986063700 675575652 718265598 142222246 291241500 958875382 983538560 22895235 639344181 563057489 810327573 971792795 989055203 552858845 771304122 334613077 551290061 754156154 949037706 163124048 815235217 212984205 948748697 784379963 828437419 834488794 934394154 31376070 905956142 833048876 885050289 848375639 913013677 310832118 544773425 143610796 384491304 302273022 892041266 791990953 980647325 436107783 789328900 583604608 793977589 621889440 672166067 624019510 638851249 869700152 881896132 754822313 764083856 432453844 875426905 997535402 997966916 798097191 995199016 790903966 807746590 740029465 892136862 488814527 746122335 719824930 939526811 470264918 724128212 580910053 951500266 64215202 540933976 915874937 954120220 260218283 841310617 221050454 929580391 14733673 164308077 86833041 343424676 791400513 830294002 552141122 754648896 258029138 264236259 928610417 928739275 633258253 841925140 438989373 453086785 738946911 952448228 73470534 205539253 25147234 371751544 213110784 478374694 505968189 597113318 733248625 889880000 502465493 903044781 968249246 978739429 75115216 504781598 5568488 17615198 962414935 982969802 982382572 991145761 169513993 976583337 310784378 337278731 211204466 955944904 999339525 999347064 197956465 706037279 323716977 619006731 569051492 827470037 140756417 162761378 48759154 471647212 610985676 666236967 682328576 847657101 561180386 703008073 350839084 926131263 621172144 641920984 784936038 823505164 761163999 900029854 66840164 522658908 606422427 781833533 899176534 929654648 948957563 965500680 508200379 811072231 434293454 752578636 83663633 115796986 940400811 984762757 569821471 769826636 315988056 812990189 476312441 730008854 12094892 676560195 319958153 801054770 321771586 343880923 741297393 956934155 5307251 312736838 152607223 731351105 674426698 762470459 146681493 923626610 93254546 543573703 526322664 834071844 286077746 995839912 31841450 739105301 349144267 508041129 745145499 897988288 98138599 926491703 477777374 953166071 821293125 932807459 406670953 681386736 586909252 683225994 71196692 130873338 810693322 951481600 155526054 420786753 61164068 455758572 422908506 441356029 741791308 927706494 191224533 356338452 648951721 750431243 283160310 578172413 15997887 111056510 76640814 239970026 742586434 916402567 173641431 220842491 373144877 778891612 994821202 995927949 19063048 279527303 752096521 866412587 196702230 325140826 251531168 936264617 41325457 526218484 121481557 623259634 457919304 564260338 163293154 654627115 331406589 907490325 551377281 982503074 222321234 988014983 980011138 986272697 249265464 754613078 562597239 675332747 776276478 800359291 928902751 936867462 137784931 484994518 798267676 970882012 131858115 855564343 230458115 465670365 843442965 920816926 893061164 949710684 192066172 980905287 788890845 878165142 512084281 983111722 969485548 970581246 630229823 836238579 907344415 908037759 983266394 993277724 185793620 957791930 57868323 306427544 963695911 995720916 265267825 545685100 556890648 715604848 823316388 869240068 48198063 906201957 559369720 717307905 545708807 684257588 330297583 369786433 208438716 939258191 637226479 894030424 123237202 681840435 488703627 903041151 413223919 923614780 604759002 782183330 486169592 611247400 15208464 531337858 283033362 975571619 567346120 942981465 596201156 883822500 922082267 966306596 915466160 984547292 853345937 948719468 483824316 860217459 230411270 363827486 679311488 937062039 378615940 548494039 294508951 326250331 901227468 931994919 381322964 748330725 779560268 925109758 392924931 998602037 934173878 981534634 136711495 673854365 474877918 959365234 334111471 565648117 116815115 499189613 147405985 922248775 248394227 627317927 162056782 505095054 348323300 871112958 297015995 326310036 177661835 544105986 544450333 628317478 856235196 892342808 916002603 919430562 34676329 571450539 26552321 838832854 126592128 204282613 100994812 445725029 736759152 738531916 198496772 520155418 642356453 659699888 337095828 882282721 195662832 209927285 462579726 793282883 437471289 875504171 510041686 959943510 554024053 740067251 438810058 692673093 601997737 992330740 753079111 947255050 723719883 992751281 425869960 662229498 612506588 950007157 196172617 892692664 192656091 347622991 31809447 400002845 902479845 913116371 91877370 181848380 531217214 688489038 332433090 801346319 141205342 276836113 849201716 903011682 925719573 939780175 49993569 678223366 98476669 982352776 326685082 473218282 70969788 151243696 388187926 468974885 914588461 948308697 177149200 965260195 24404518 311895348 690864478 882038971 648203661 955528553 700055903 763807385 306694433 979416085 893192079 940754701 903425174 970151083 502889964 979456092 99323962 529329382 535458927 926396072 219600347 277600612 770976255 868045355 865240694 881136958 509587713 750553222 222856298 350455215 197716458 668239792 877985190 883840377 101210479 333297894 998894555 999168680 247721358 807887364 952038669 994805073 217471083 343651443 960699763 991701850 39709658 955113560 488094199 544429285 307013650 633362056 602699333 745727140 664213102 788506484 986756098 995915286 842619654 845622593 815818761 848983734 744814948 845832398 326044627 598598668 17173259 409923055 678556429 685018972 520852604 895875645 88386130 98676893 367034433 400991755 921378728 964476369 400327517 835765068 57960340 826257150 539542796 851057403 627990158 857795837 355219725 427949610 922066054 932239208 535953144 887925231 700840386 804717475 547480203 589648652 630169108 785653237 92400576 939381879 240749265 601494982 787520789 917631172 528090558 725533550 262732502 847972561 610491962 674401627 276105855 946421389 421950518 451242280 152299563 205542888 725500766 799200073 394384605 648897242 920179196 933990687 941598892 964732189 920318574 925119633 459714010 757859468 13230246 665535978 882017723 949497680 854543583 939761862 802860848 943270435 571760382 700992133 531591071 585809058 335857974 792412397 263796936 724084281 689409909 917109177 969569275 971366403 400645213 413823348 807938593 853138628 836083363 981788910 558933110 628945017 192029038 466515378 952619546 997809602 100423052 885967040 456990855 898580543 750607122 965506439 26085529 263765091 64664060 547943665 513536754 577715211 401504424 886031518 571179200 649375035 879087447 926379444 823357637 944509543 85075993 437590332 530073546 567602297 130731388 536383767 841272919 843284545 578014053 663199355 133805354 539265377 716002342 913148671 121204683 187910395 480519189 822686629 520349453 711247495 760207761 952171189 812025735 837932968 62231870 701899241 55653180 394016589 459969551 932387954 257936552 966337757 622285174 909288044 16142026 397409270 445522825 613111781 407636777 985043797 124804768 997241560 990733646 999729502 565746720 646299807 763069924 860622376 887147418 911426996 521511322 929231314 711780477 730936466 99621047 819998986 186708608 953069463 182244620 296436046 877118481 991078365 133980841 884660709 414727898 736338309 416447639 912585333 891176006 986522263 495814004 869691660 93906032 339407493 961818051 997644773 79648327 227232606 44812642 191623574 88630360 465506571 511107935 919657919 973886872 979427240 956523087 959799481 110618167 333610505 257643298 295036788 856891442 929494461 863608158 969571808 756777927 986494643 55092094 809118317 518052902 692043256 498248518 681398900 967073733 979167185 874823925 993637494 391702824 767371323 426129168 428181490 626952635 947013328 834501246 924278589 695828677 806214610 178476188 439434134 101866346 792547252 728142069 998846538 533170258 891778938 10312998 869054294 211754196 895814492 286150795 858707206 171834367 346229632 448266734 718914630 834842719 905737827 136323395 305752800 320382013 776452260 690059097 697071949 663275701 800767513 652889898 816744465 575921977 908134318 143070733 368846071 754513609 821772450 451137152 631187993 556356020 557579056 697507267 699914328 28879827 781592275 902601352 939858118 585304722 617024014 662197513 802517300 614769168 685287845 414838197 791669622 628811618 647493305 539597852 990512477 178542513 404442415 690931212 976492821 116842439 650062025 693455062 866922970 628034591 689378567 512287504 971875990 159515124 320430247 733368876 938738540 337339884 930725104 87634636 991970475 637120412 991867265 359261741 741204174 467364994 968638853 52400370 303598440 958127290 972889176 52538456 60978339 553152730 704575560 910641819 942919149 396393574 712576148 990280775 996173572 833297803 905115047 96811625 114774122 143071412 989558087 282951359 913010045 619360497 664125742 927119217 934441531 387922682 575073168 590280226 708471615 313052703 435558730 717777407 978920562 446933250 782621092 251121018 997307301 403391546 737945148 356485078 695845186 837112203 840205403 858389850 907961364 117752800 233956422 531910544 600154878 978316832 993304740 625857314 983415988 486401463 756925437 336539004 446192570 100288493 598830378 367687540 669025095 646096636 806897196 921343759 989504552 887119797 950064948 366234154 637411727 92669988 945330000 38665725 963968173 658391145 694338111 186369729 266784199 569838352 983247411 175316438 783955103 488075312 662550146 255232443 731071589 713741137 756260379 624377830 908815415 863630775 875237203 769861150 944474305 221926347 744786030 632866089 991072275 533228437 771996398 554536176 948576417 951611471 983712328 317040269 922802067 584306337 861218546 815627214 920123668 400841072 745995477 298414738 544300440 895409861 941674736 141151713 821840290 725328740 847095486 897390194 920580301 227783618 439188665 741141535 771097291 587478927 869024373 831670306 872648082 266869957 573497029 869825243 986752916 118261789 396727939 671247227 758275505 569049015 851443906 688307808 980040979 188213048 208801444 582693463 731336725 298000971 670202596 545461008 715941379 983368624 997199454 413953973 975074150 293359857 358792887 51963033 539458072 423172936 503218547 123822183 151675883 961465062 971313693 620719510 964945826 927762256 929474473 155461011 165667813 959545692 989109187 597883393 633149201 295781213 858719221 959466997 990627652 832500376 988906046 912773210 954018426 48441792 937566286 674449863 711288647 489134121 775635896 731635893 837697865 337211451 839306554 123162715 867974511 299968521 412202698 342723712 352029210 25280316 457927452 66018385 399835784 301194316 613345600 514947678 660795194 919697177 983899130 618172523 730370682 187540914 956028558 907182765 913842730 594031127 928537970 535534014 947402798 431169155 843691592 268236902 552269176 944835191 999148393 480601339 824091375 906624944 945530139 502118958 572849197 649161493 961002252 393206824 857527825 678708619 854060469 770553015 926201929 156141611 711714360 715581243 754741130 995197059 996416170 196858434 638157013 58017947 801457859 940566908 953367180 128512833 236934102 708287443 917867279 346570152 464770404 184357142 229976736 578668296 719349032 563973555 613768757 420338218 836644705 55820019 743996575 334468544 520867344 753023792 904392345 926575564 966313509 81505465 701192980 84973512 136266538 701976871 829801230 943228343 955143712 614857764 961299112 174901035 334334807 587632851 776422403 451616099 767446675 397107653 478252012 288033734 789227454 303663824 634948892 192790509 457162418 602057343 701875178 640397670 892928121 905815790 955125225 686148943 839976636 175265388 324595691 682099409 696426002 949916014 990285953 422577629 699193615 711954526 809621904 766283290 912165313 746007584 982895098 406929593 560063998 266266933 766774451 148383727 817249241 154627149 549481635 863447957 938341138 92207804 973369465 96703626 956108542 755375490 772006862 991355926 992197949 177391669 646999605 714251552 728043673 437791267 449869120 991493904 996966124 556934491 595717373 957168211 957296701 203537988 549905542 263624823 689876386 295594854 871532278 203650200 571333548 584163412 652910023 20804304 784811333 765875381 961664860 496283090 700152552 294800323 925800868 548059563 609166137 868132425 889627515 854731169 945295952 850115070 938598980 659900385 763664492 994918241 999171591 458582698 876796887 522985331 808996529 23867703 262602374 703290266 936368577 925912698 971509109 523261280 562933934 793028903 859565863 448918025 969032480 664019229 703063639 564434978 617663286 242227516 954950906 98803390 568057769 67267426 178839004 160256762 668081719 629710975 868925329 425302430 574450231 483078738 990640724 59854421 490889185 506107046 834502285 105998480 312106561 652498929 852564693 630499 111918877 878129455 895981120 462398329 584066555 603680190 856009639 963590760 965652755 45809205 471387472 516008264 966872755 418038092 854034424 784930903 980029264 725980052 948455330 402634651 786377917 574460379 637890548 207025672 991418798 124432391 178956212 453069553 556059999 263872539 291417807 897829965 974812079 474113911 938666172 193287 894717468 353793606 853379469 931156423 945618960 346636146 678557096 245003481 251090079 313646882 700082362 120225853 324209340 165078879 285160711 769510869 975064079 868844073 873140803 558369089 763980370 769586731 969769144 208152484 629329620 27798734 122876327 680992001 889736818 733350006 795646654 860020921 939508573 21772238 716935347 11485171 565689505 647091261 738427051 237111484 267242562 407081609 582092689 133994837 152862146 644829133 868937626 534719186 576287166 393446938 411562377 415383000 752178467 926033410 997715575 4335718 381209181 153946502 334014365 819704698 845539820 499103445 702027852 715578801 957235918 463017826 510519843 192455980 471775302 574891863 678480280 821694429 868257316 888868424 967809321 166599029 732924928 803722818 845455782 992967748 999471698 863683945 991904977 307138158 700065291 709118658 829519919 654855763 779846839 72712732 293166801 768283376 990568064 884971044 954885270 187117953 948321925 957777284 958663582 80667271 643020144 164820177 579980746 927209736 985078414 483374316 890123523 37991954 205114837 503308177 692201965 882689965 964393866 473820528 747473248 658817868 678125554 829025051 958482185 285504643 655863615 181317665 355451999 651010769 912056244 296495486 919528073 203210425 877659500 323867240 792813755 873088875 971452639 842977813 981902512 369573787 575811145 583408316 814720887 752989129 960941084 408818270 565263294 856633252 973400885 156988164 768419353 43219819 413396941 192685037 662982903 503027047 709045195 197690143 347185599 257903870 366494425 589263819 630794460 404428820 911938373 735679418 907235691 8543212 465225057 933734078 933738883 590747265 813282066 388615481 806238974 668878889 933242304 738339720 825613674 336044696 516676602 209135362 689691568 452987267 541422886 340916545 849274272 966976283 994881484 836347233 930842312 455795446 944113797 954059734 998463370 82996900 584075432 517910952 628808000 772152874 786671777 959337043 978044788 854791774 919497846 984442570 988266366 870232302 956439732 619545125 797984785 260579140 871661393 478444553 703591623 265814279 788815560 417502005 620741514 975490787 979697419 944447619 960596756 206791866 433181584 764847133 801935919 133432905 647592581 329934025 626347112 439831670 476655305 760363564 857122245 160008655 258635630 834240134 890535882 495460530 926595983 567621306 636244129 948812983 975862842 161240916 580798488 139801656 488772181 576112946 616748021 694912372 839150400 816671526 942601917 451188961 783016022 135335740 330966338 22688818 258905646 554045760 638855309 858369776 868779096 836084124 865388736 73247371 474162796 126996302 374500479 551880769 960426183 446517995 524972431 796658874 909281193 462930309 710848048 864008913 976017724 281888148 827131309 23317320 66311192 472565490 684333071 597950533 637286119 164709025 308028574 188497961 464071313 895261630 955316757 873985980 891659730 330734453 663741059 430987941 603438298 594032491 766268781 986656852 995662390 824193507 836489179 594109861 722971438 758101127 820695940 750093269 846521099 17528609 801391658 600632104 740443998 646574372 948749734 381187185 516035064 293992198 460744303 407658585 757049579 769599681 987740102 452986208 494332881 65755972 534307002 478339610 544705457 451874044 888494506 161164344 275941980 225871871 470915726 975738341 984640264 822130815 845046757 671023430 796321485 698291086 915882919 306336207 431892242 269064600 839333636 425560422 835399742 234111839 900472300 607486371 848429975 184250076 440390723 444969768 654386689 869145945 914310641 262563860 807209828 959771543 999319994 32955073 721617871 38083417 453615172 884858033 977086000 612278450 989649594 503715892 857998942 967051237 989995525 227277512 407895619 335153479 553590918 603412515 887695886 392172544 437321041 113900162 597750985 850145788 996790489 802183677 838913158 797228949 929095151 287667760 339553868 886573776 893469086 804336569 963781876 160160860 846056402 466267109 715192284 546174258 779431271 464867977 671739256 822403566 888006083 305369282 563100638 724163974 780676288 900630418 923025413 776583361 949098818 460150593 811741401 902641353 975125326 191698328 199850169 301488947 715895309 102089756 133594239 509293297 754643268 619632905 867422998 493183729 997787341 745182025 986646590 157016593 966525560 144481432 386528909 300288709 764419583 113375932 784592115 652660889 673798645 30150698 667612678 935302619 971981288 635634538 746477026 488604933 968492787 187092375 406368597 410435523 896836451 457849722 962108840 477200063 691933616 765175891 974662242 357016715 723642907 97895277 811221087 960916508 963950719 641930901 856800448 436807751 757898109 589246045 849240191 341308357 627407708 585241786 981730187 865087867 906333369 937823294 947279847 1958731 554495141 273378081 657093895 358206885 645393032 414631908 553120798 108081692 500532280 679382227 914029847 462996226 486770785 25859212 223096937 754459729 778006392 931094276 986502196 304879642 832863515 626150452 803246157 58065140 215217447 796560970 998234183 49342481 840066954 296783698 529359752 549933946 866867586 720372060 995427811 166233279 983180472 933694071 977751855 796395129 825775870 151347384 730441259 726020590 789256848 437214476 931068836 684015178 815194254 763302639 790918711 596886589 665472140 696779004 803122094 248030544 722830354 615970232 712923167 849603241 913507093 726665385 988419970 858765462 951145493 482769763 930805781 40250621 633737484 67072168 109690814 325984820 449978593 704547632 912570423 252553141 963218596 847632028 879129751 116649276 923287640 284097550 517139474 609337061 665003666 369348183 892587324 633320879 637270625 426336198 433804197 443553611 695203728 902170530 999423476 888860558 889538923 118597070 514760653 975929075 993924445 729083570 913153045 875856032 916831849 244502971 321099421 815997154 829446739 972151309 975313122 228283196 928219191 253304476 341842077 18775714 499486121 57134548 970293514 407639427 728953637 288536000 908646744 112673127 986239521 718911326 964850870 725940575 802403219 492764715 528441122 926667134 927119489 736368306 781897688 258389855 558203070 625908291 827561769 280181067 739815212 880458335 966272903 894355561 986864103 605648850 682662278 854558056 945799935 74429329 556857842 211790188 732332325 238927421 777050508 302007729 861249949 672334714 926355269 113229466 794181800 419326861 732596507 640772131 654747561 14378773 740491983 173036403 321808916 734336912 739296424 416631829 419918930 437704643 796873010 684954960 781927103 75355665 992254115 755457476 944371292 833689956 936234580 320315824 463723786 222808742 903088201 638713669 856901242 405574396 442689973 337587521 441585945 168361971 864197759 498481053 944208546 968606638 988170118 823517173 875162477 818476694 946745306 932942298 966685468 177392257 422555174 732097703 936811150 828107579 961272504 608268774 835997114 434052497 940604123 53267321 393085635 655439281 881759102 119046627 365030130 315995003 380451299 287810560 753393469 444563612 890441659 900295332 965194492 304932244 658008285 580091226 945755509 536718193 537820921 293803677 499498252 896263802 983220324 219526526 807290386 292343111 758268577 233041212 631223623 5955929 847803577 852792470 865281438 366520586 661121562 312655713 358664696 940578885 987043421 596420443 759374237 941868180 992538561 839745318 905523348 461384498 481576988 333475800 634559800 487221908 607689094 946220282 998557234 294870044 447415204 546578367 839393983 19348578 368591445 77543382 102697752 848103089 961385750 698953675 880968321 676613650 926623861 140709307 297756893 870016452 928022427 988077937 993239990 688532950 730909371 71937185 805348207 387980158 400779784 409655949 525786778 826469896 982010110 686806510 757249317 206818410 526061440 232495877 358601605 920637988 985232136 590275471 658232606 715472052 917552551 434644644 903481237 229870098 574533860 927698915 972768054 189286826 776741335 41699913 301941990 549558510 793957913 988986506 992212264 366610904 708973837 261314191 892436877 903290176 966680249 404456544 709573898 476402089 741028915 356027502 683155960 29526516 906411182 151180108 820063731 696193694 778774894 167165250 371447142 661867762 680465056 464797867 705576086 747958215 801470772 238701806 358687345 788819244 811547858 640522363 941772882 848931979 914186793 345456027 631167128 118202537 902573687 641458863 934095886 708925250 871889357 704840510 982053750 366460340 854616470 465459043 917722725 611032154 720203654 484774453 645269874 750980780 976619815 7792421 226379164 798644948 987252775 561713124 882435956 187314622 621596508 877252553 972140085 986322457 993354040 733105086 778713811 817070168 842316161 925297475 995096947 987159010 998861658 580547029 684160441 634433333 741086256 350840194 633191901 969584050 998302841 74063674 391996418 514447311 716356744 45937459 80980476 854212802 903306479 38691549 188314258 669535588 700264858 575993887 788812011 915708471 970796108 459092645 591845811 814263761 825492843 440947306 691784491 330172147 999039765 941697952 989069129 177807052 842102543 593868359 827151307 175414651 598927735 718223683 897902905 350027310 988340276 19188712 708966999 598630182 609921416 541353536 913314455 99747572 621080634 403248639 921645294 560465774 855704041 346727061 733704557 950618625 995626654 256076782 316245096 662291352 952663026 166184354 330755646 738777381 746112289 497747962 640500692 25862184 645023800 654997369 986844572 160573871 739237813 683344168 745605553 450554869 538106945 799833687 827367416 149352176 633719781 52741689 495520193 686584656 733040447 596106510 827997641 432789729 665252311 616581475 821490018 11792112 676333805 25601939 293190919 794747733 867973608 319213815 871880436 691025682 901286585 377935603 927149107 466703445 774797234 876656287 992763970 446417103 935352141 539545016 709266009 30139565 165097218 310296641 799679285 806738516 934119226 633108923 979926554 650652062 816163290 402903608 437091634 735309088 792771111 684146663 730914352 879708204 996766471 820277371 997719583 233508007 767667737 161532824 345215933 465592941 499099924 228970831 966972570 437032421 510546003 109969244 833120757 167691887 593924439 768603512 855837382 893544400 911339840 416562973 555919896 170375328 720992469 326847577 779289400 741552924 975257575 488028935 619437437 600583137 887473278 811536038 892662181 58515418 186835647 5823593 354231207 216725614 310628481 481588611 842726673 964980981 997997979 958670305 959226680 666236071 726257562 425350901 996746208 726003723 846286365 811470974 946506163 42698303 76188537 102732150 193183483 495236721 930735029 205440852 467296552 517814890 583181410 398792903 645808869 458313629 638038057 551924182 687742982 880553604 993614778 307436530 476031477 917890479 924335404 803475160 951174598 580959654 818290307 526736315 900351589 413628340 559746314 996182583 998724577 656390092 885818478 888128555 895797933 113462841 995281803 860349912 912055143 500234205 960548571 260749881 750968143 905670721 941722772 530046912 939012619 202655075 668723673 253156743 349285279 156622040 613048110 1774680 890113177 253335111 428612845 376577138 960977533 69678619 949184048 869812069 994699122 73607446 416048975 819205365 935973629 541961959 838929502 56159149 345291209 404014002 538535174 409419519 661475409 185944090 777628313 735007886 796067100 694065189 718798013 230240627 889867287 381556381 779048615 150469958 885883983 709002477 932530844 642105564 723374658 683626186 935651501 306071738 504364683 437698658 946593996 366882458 395259442 952002137 957893852 420962020 485166659 652096604 985198966 537444339 786405690 676894918 693698362 10417788 672882929 363496610 381032235 59785412 556656564 249208665 323329084 679118561 790783866 381146872 983166272 207706310 262793607 843968236 875118689 392766834 779637504 926548989 995941211 360724608 949948752 225424917 870157382 353275619 602122995 111484969 627404715 623796088 898667937 266720128 560633176 645920962 761203524 371480207 530227904 918954010 975740035 182864922 183809326 846248154 888305753 839477926 953695646 970562761 975419115 163233314 294470449 837050140 889016549 394396536 628868023 334586017 737013794 691408973 877042373 642676750 952662978 374020370 675003271 686512068 896550054 900692932 962021194 858653881 985547585 297673405 506982962 832175966 971911599 494312926 715447876 864876252 986935710 505551655 676863640 890815503 941877091 527211462 528002144 211406079 823423657 787866158 801266656 514216041 660927109 878102512 948003577 235523033 708504143 545794294 942487583 828970987 868037616 886677446 917800769 316892415 901445372 305978434 793272036 284243088 862702758 666547016 943230070 914038917 923723271 419919949 771348991 417115540 543643132 234979177 581320154 467606116 837771792 953127364 974064753 31507842 516363051 263254793 875981058 806601211 989603741 401084974 967964002 455975942 557206826 178675310 364393282 21125046 953084520 340302453 493682786 46769877 343325699 425937597 714099681 57817309 272722510 780691232 825269929 360201127 975593716 266301442 453887036 427954191 726125084 683345958 782000709 155240722 852300984 84365234 342035822 897092023 941829241 276445182 952036160 8558258 539112548 856671693 862490096 259836469 787316695 939247034 989120532 641986477 714391652 484656787 771488935 107665353 604310963 537547455 792436703 427094147 921151945 260409967 267900143 477706511 925541543 862977812 913334152 46832481 831450165 750792282 848072368 135473864 150021601 20023942 224743963 857372434 883859812 758457723 951892763 311482525 509549540 817795360 828595893 428173583 691163460 379768367 658121284 293270656 931264014 117926173 161562213 774159123 827555361 430559425 653306848 230210288 417806462 847959380 878520076 97489811 365400338 744921767 947620309 553799073 868126371 274832419 855996421 800860428 977822346 487739905 914374207 433238527 757028968 157787237 409950900 346003412 752919222 108128858 341265349 287536105 518564142 894242994 995428979 40109963 276939578 805918201 824575731 220187961 640395524 112121218 451340254 88832910 744316074 928733283 963707302 32561981 417583221 517792955 604663046 27145254 44560543 887360035 981319121 72077340 377748884 985281768 989036439 505589167 912129528 228797523 337498253 867748929 919622656 592099834 966335664 633449873 883062724 387681944 790753434 876797209 881769467 484995889 858775625 545089549 667056412 129447279 584413403 721323390 835347563 834894091 848594983 105146857 244258455 924211416 962851117 801117557 840703998 80895328 821810749 432609717 467969768 734129060 888601683 166862744 730999622 663427569 872026177 785601531 929111679 487902935 518300051 637237741 824604068 701733455 973946186 747448193 920758628 247914950 894734461 823166658 993390880 799752323 854939056 480097404 555088702 856443518 951606720 256824979 587897747 413399700 813102708 337978228 863950275 163164789 940833116 808129623 863454120 811138673 857043450 285454358 387613295 896413712 998235845 32394299 252353480 50287227 127267327 691129555 981749549 827486313 833019511 829843163 930471758 265002907 889847714 231515402 500752987 36427562 602560696 535134523 589620695 521532427 668136171 342965337 940787739 123015284 602845412 395132561 796652918 527876594 622843441 897371127 952551001 80698555 481103853 240656235 945855929 239856766 313554372 335212075 624255319 285208136 918777719 789683309 878263349 965171223 984095294 220247111 359014152 205786772 369757854 295575511 939410595 382461331 707858024 745945263 904108867 612526514 948856208 331522508 713180252 261377861 501876688 655225287 989863293 235289745 746569621 901918523 981227401 970419921 993699629 331776744 951545387 461345370 462495247 728312285 992259560 918839337 971470202 583173626 919541638 793665983 949280078 958878573 986620770 649443662 660774248 942412229 974650471 179184468 874804097 88212772 962266290 553705453 979521769 829711068 988630251 336185617 708420384 914355735 940260376 14879197 275596134 589937665 746278578 443054262 738440234 840963776 924498829 726412637 748270490 678505649 894154742 946046297 949780099 745449588 980178747 199581900 311241783 585207346 858392673 80236393 257217897 696089231 969977788 778595672 832337122 799042428 866521598 363902736 482475230 56253750 131677970 769851968 810041069 462927870 791420507 690931168 893418162 295035874 532359596 455646313 736187114 496008459 645446290 294575939 509194744 108862346 205168838 440661986 633320307 113463806 600775863 918226772 961891476 5145487 750742848 714181829 854938472 662046137 815022340 223851353 963534726 19180910 390206779 935678697 972158709 880521007 944606696 731661472 801716556 198812127 272643690 465031984 526278576 317049236 924116000 467075602 780645916 645667839 875205536 633247561 661882555 406724964 822242346 417632755 771600639 231558070 964993314 782939783 981216918 308513817 359043593 807974531 899032685 790918508 845296494 815629772 914153390 163721589 787476685 552073321 821079883 142887586 975252950 690255217 732509931 485641300 636135732 928377933 943351224 523671304 543680640 843123606 879342863 441962950 838911349 7773185 426842473 569964085 822565516 561601021 730093804 720540112 816567834 187565587 346960458 927477092 950691963 720678896 879955657 589753650 971404073 261987227 799674734 730554763 841376594 631909091 927881201 663137046 977190355 360597563 946466743 935811844 961434821 260067132 402708568 749482763 922169930 833138295 912234905 939455603 945297028 681809142 923584245 421819448 717106128 773311560 936745448 556463264 719185125 63244611 470125386 382244791 720304606 232757197 487446173 691168389 934291445 979990991 997646919 942070738 968930185 939921355 987675476 386242544 599939321 219791003 998988764 997813809 998208727 755929711 791832888 348017249 683298686 430395645 528269630 910504605 940149965 847301993 924228201 416054375 427700543 131025628 519472426 293291764 960676251 189843504 816516201 693721535 910026418 573392681 700367794 404261743 544128469 332819102 430554980 418189190 958059081 247193567 408931626 963796292 998727366 210933280 350472608 930408015 989861271 257301001 654227290 402426704 973723994 490424048 509135732 133057368 423269929 830758024 893836464 741258938 880981951 574438266 693579503 15206828 49905982 733230486 968208522 413949457 588163873 250533448 861944082 574971415 635150415 719392940 741356711 434101216 831071528 159493778 346886504 154379840 503338945 235003951 800292875 706155896 922957357 922162361 996827983 974684644 976241967 87798034 190925240 253795713 908043681 86393375 208087081 233708630 398694785 553431829 954910663 20396895 290029076 339641425 547777608 753685130 907071040 577001709 715529416 378376084 822503207 337230960 899412740 173969689 584223897 162657575 577568185 414509265 866581945 254432694 358811716 875005743 925748955 615352733 733971535 428051301 756292721 870101246 901746886 16962804 265199492 876762749 928443028 946510064 957061593 527601414 881059225 160898038 238109640 195980177 632776024 143407071 432507339 453768736 650251333 840081590 942071405 307161384 790773141 624256890 738812036 317100459 679600742 611225341 724535309 302875355 567706393 229356397 631681086 598166871 725102150 207030731 872912237 646032485 939952370 284792202 373141360 256281664 446342838 794026144 861303674 515403266 536222563 839277519 935770981 973868479 979971530 892918495 942378331 320084633 410841239 180243506 288712986 479589898 924150492 70171964 989792806 998986719 999401568 208732506 789595636 540513410 992929649 62579652 218427489 790153282 809423748 846399549 979053029 892371293 929061680 975662478 986246323 33751080 46157663 983952767 986053439 769691520 914117067 923394340 965756919 679085893 732507998 533736770 540634731 121914571 954763709 437892713 755268635 75218432 631311121 514816994 777919764 149956077 792294351 660354731 896015381 179349421 952242837 989362338 990773577 254138881 255045310 682097864 686760816 916900171 925857279 431521752 907661031 581692869 746484357 97823045 842611037 24614191 160202814 269113084 774228401 248868244 442151278 261424308 923968860 225076532 427862752 697587313 716149320 327503321 855098388 401997087 445851913 454759116 585261985 213429265 554602711 793502498 933921312 967227130 991057142 295034450 473851529 880865955 961353450 321177573 590049083 11871763 764395924 93987647 105527960 260776264 818172259 802261049 849537606 777590294 870882425 120122607 155825978 532012358 808905592 131483283 970973461 933880744 970078547 764552496 837947360 559149546 695798153 992425556 997828360 995209744 995450826 424441614 877821969 294421055 472539155 349253126 835087631 914275085 924281700 674616446 722481519 307392887 462657510 22762502 412160138 142035348 704319117 744525255 845548945 927707430 940166591 144177329 318045831 203376890 367978711 477145968 930985179 907630008 964649066 62561219 468004229 629059224 760786923 449448214 549981458 257731009 495527844 816925541 996846265 70628822 214807333 453337767 805171559 244704863 980297116 159638546 814370713 658299021 994888918 454389132 730896586 18622197 404452569 261282923 357965840 689158840 870024075 798606589 947002872 134354117 736420312 191917748 813680915 222645151 574201894 10448854 773498717 752898378 775105554 719195695 978008984 687640547 751525123 818392631 879942633 313183150 898144382 484642739 948232339 420988494 446337891 259593681 769848578 726336575 980871644 383607705 819357348 856186450 972641967 67376603 767355566 745797749 797563231 874879883 885914194 147400441 194645013 254469300 729212322 422097660 855828843 779820463 843388453 979239195 979587586 799850245 968235047 787246370 978462143 732408887 781042245 834699257 891426181 895157402 990700245 794159965 898354894 248499908 405323874 489447729 848407408 881917119 888111327 706344241 987731741 541811651 726875570 578865174 968384217 759366695 863771300 567177059 689415673 480870695 651260789 377934525 846582439 995111931 996926177 490767217 636484259 495910771 510439182 625214387 821528276 552096331 730093034 467683755 565976134 251062370 804115320 110545264 500731326 198190898 210370722 843731659 908106442 415879890 667023000 553062233 567198778 781094375 815596890 25532467 452580073 723096260 755879334 458820003 874263835 385259613 597218154 714390497 871313321 280067794 286382948 605343319 633961815 177308146 352206363 342898514 482502910 311456537 318552721 200542803 232718031 113747873 249481320 750585259 757258547 812259011 873179491 378253692 994783980 892183931 908373763 586996415 772871151 44671997 284771321 707755612 753342176 816664349 956726419 563601511 777957085 236697004 245849181 414799653 688768221 155327995 664976305 109853741 504139228 398190127 683912280 472435527 919505055 12042377 168976431 551255452 870033383 25423210 590188247 202507330 474662611 640094324 940518161 628295848 965693915 759309186 781712673 971598247 985027009 46652299 435160459 415677740 434057602 505987158 993954923 493175747 578656510 450388917 758019334 176884437 577206269 35959176 335471596 913742424 916619563 923618404 992134287 810888535 899947973 480736991 719794782 532194757 717425804 473649581 961946025 626961259 767013908 203459112 488177476 372646032 669504376 262065332 539912635 931603397 973832786 687455521 726683256 462021548 553541279 626310560 891298838 307042959 590831814 763753822 852810502 408336118 981417732 853327320 963953897 242786214 345923843 506671671 827641508 713093893 794698288 802065470 997231603 765173355 919509883 113188336 418635713 923235137 996911618 729317314 789626761 396006499 594638936 456239484 762840549 589329937 794262635 274847880 615009429 861221341 870499221 729755471 904114196 133832775 940874267 496638882 771469513 814486019 893263071 85883729 110979380 386060445 389883026 198754829 953117906 537460797 600184247 142766209 433606798 644049871 915905026 986617 702687572 79216023 691337859 904724610 985547495 514751363 532389199 885068299 985145739 126176761 886746629 370078832 606192796 239924941 898995019 364082841 938131934 639492770 708897908 611729402 878734459 192693058 921599220 331003581 876330061 76306179 691767199 608206637 627254874 857372771 891926723 76262927 352296804 103455358 874435607 206186652 742013634 315752027 446908726 596860121 721876706 949061803 956990380 820255198 925306540 803055453 931062616 154347733 902082022 894692405 938598775 774998622 974198146 481111715 580062617 364516610 634127116 128797090 976014739 288860482 776219814 885890545 893886183 185664998 210667442 313780285 464735464 395272173 431735951 424323129 639577757 909084319 976853675 575087904 901372780 787745283 905324264 300243089 319133585 40420582 707401525 877601477 889550997 335134037 432461528 52160737 95340286 418755638 974341716 101326977 674208414 801492330 960738996 192169941 563098249 889118412 984188721 460407542 939002171 709928203 878285277 478104950 579801861 666364874 855401861 579317383 658670802 80797799 885777790 156306458 212678308 138905378 691130781 488790341 632197959 783641988 968003811 471841039 490879701 351171383 935715439 204136128 674865848 533672823 680695767 334164679 841237701 536163198 836422960 687008395 705167311 301204074 669850055 315396843 353261036 95159670 810143683 310674638 793062813 572155372 663430341 489881812 535229715 509719061 550096210 635653740 672504833 270794292 540007527 633275493 873685907 569904400 951651453 283817570 471694396 456648280 482540029 628452160 807875320 646388717 949618550 52667416 297426850 832563852 995619077 731108171 813814803 566070226 640846396 624873025 644361845 279376835 379753645 483521945 808873348 626538153 955322820 295342862 733315565 404323175 719946512 890100683 988014914 672901957 728208601 370359943 605626973 5965076 497495233 980248341 998469826 47759571 567527854 888410133 889833231 57284264 673072122 715377320 803724359 833096254 952206939 544341256 674964317 348599294 657692371 530129273 669853813 809815287 895223641 615881919 950522433 657284729 953041396 255753332 566372522 106408076 500836688 994284923 997289522 944577782 956187656 715543524 734498076 494309466 523447526 335833743 420186888 697285736 897631853 591279898 773363626 770263150 945690654 794977743 895800722 964507809 981816298 780769312 923621918 970317144 991263220 183723784 505470805 107402215 543749787 986990562 997047038 816752038 950033234 853403960 990257785 983950877 990225351 186196829 826932305 7658159 999875890 758874093 939226433 170957645 681558502 254598064 777869983 606608597 965949318 813863965 902681635 951833077 971868771 11740068 332222471 958885654 981333673 524386600 758041080 502774885 683063580 584702796 905922038 415251659 742929850 289269027 837804765 64971914 582852132 981111474 995531917 109084326 628517852 373600050 805822883 649149791 727906551 880245634 902344095 919844725 924736941 444884279 580422381 349839193 962323408 117845736 400854612 381573963 410355531 410264289 444156566 365782768 642581169 155489082 741393086 824558650 943802404 867828626 911939586 845580078 875810694 323162256 327652055 708551082 741952769 490510204 632782329 116222954 651269423 147117444 362517714 981192722 988219795 422421717 446165910 550222789 710502027 404985308 890028886 541615400 662403733 796235494 802755947 713388047 721024338 738259257 973194898 662474389 796789055 165674384 332814477 512691130 853153445 656250624 689110266 320279435 698375895 403160150 905956745 18611135 994100843 460991057 651694626 922662787 950641364 546818221 836082149 505703146 569798942 302505535 532248244 353760681 414812479 584181471 810850793 85847731 735282553 114227981 820491350 760379572 806166225 913363346 986944892 478052161 689844899 85828551 529972074 263542248 491907017 595246462 697625807 52656126 162743840 669879625 983114304 630100933 735287806 888248990 988795081 880508914 937565531 588395331 769097613 558321220 771633208 219786765 383420908 397875349 944003584 735044812 758159049 998839518 999936585 366930927 410649931 298261946 416662189 673173439 688824738 613369366 801134270 744192660 760938748 670576728 672000142 795564329 986070235 289546428 687722846 309134964 907325434 142267861 158796297 456106314 460496523 780501012 933949994 194898965 934727730 407456631 975203872 937377007 969293131 645304769 650413533 23523810 934673075 710886792 797246037 288059305 891946707 750034321 954236299 50736204 307847311 351315665 843849629 542289262 798870832 768604593 983692754 915863552 992572210 712589268 814113342 952761316 959373018 229153018 693740789 197571734 337318505 962583129 998829711 198061511 947028075 894463001 985585470 630425818 684342518 698368386 919899460 905755628 977678747 125241728 664627605 474479863 822809908 111604502 849003207 945962692 967719977 838845692 990052567 853120618 973697213 857482865 870686959 477877948 929646214 163957605 384626013 304691540 827410499 711598672 952270564 359477258 510854224 425570516 914617702 826481223 917002362 107131584 754353091 188792463 638877920 999946400 999982876 893055527 959814507 124402075 672120117 38831800 575947784 479912695 823645900 951783337 954001450 876529158 951930021 593694300 698919001 90327884 442568858 106805883 333198061 984059874 990646193 191393678 947902533 533215056 686729260 870134366 875090409 667059062 944107966 24063701 198861562 885335601 965887806 839303000 927272163 400148196 570218731 987476592 994141287 185977260 994957394 971416318 978548284 74438758 535027849 509221362 535136117 80867393 448629049 631162509 819741400 77044402 318034995 706711581 906259019 470106471 793725631 515862868 918495162 697153193 709374931 694791435 736164955 515924083 701477763 343547206 966407252 116323391 440897811 18185820 683699996 889335403 955799520 455808256 605929654 883984387 966376634 939357248 944117375 692462241 987204060 809668811 829994473 379079929 835428544 711364710 786927019 437562808 810952244 632659106 701776653 306933351 634568909 726224074 899059917 850547425 936367914 129621986 137232232 449248641 496731288 341732245 934199742 284754663 717025680 426464732 976405967 845543702 968523962 496638877 589070209 364833218 547972487 653086774 870794705 259895984 714056869 695713059 842577125 570088151 595913699 467504277 732005361 491450930 840368501 592939482 965170658 716821823 872798343 123530957 510068779 655209021 677099913 406935438 876187335 150126090 175254170 993407401 996207148 44640813 506574724 904394264 969112866 378685612 429991055 385750398 652417415 262777088 670138436 796940113 841271947 462448134 742902362 171668343 926183524 221161884 777705744 88026177 125147929 705668434 767735743 764828792 827877084 161233611 900951478 793065043 943830253 743568177 909527363 767157397 818055573 264131430 345321762 745582518 886904187 172650136 949750427 892325571 994285622 64152086 267156227 904830703 955926014 961569763 997334937 203044926 952274098 85504242 865477637 371975862 727360351 282276495 995796135 769177543 952082805 80660623 995089526 482573045 778697274 618559297 871709943 940295252 992532141 218164609 921118614 929290892 985130617 593586767 910048494 404483433 986907244 27027915 376482914 302892544 897010681 252462711 315709622 194700035 673920104 534333354 621828413 249882983 759875395 925208585 987492306 386785566 947814146 277485123 705833978 781749352 934579482 778902837 856904071 62400389 443767608 202525242 896341403 862050521 925571707 305829689 433229674 109912027 879272817 864510366 898804935 900863300 978955257 836919438 930495751 716991237 892443297 565557016 857369793 450636540 479819694 22770439 97172226 541299805 710637128 591080949 739433001 238744005 982157291 743746803 967880830 458260507 914607918 563961705 766955377 551707386 751482236 264570578 288748324 957717001 963064887 975378203 987646512 267984124 629754580 911898053 965822027 694602980 897955077 801927210 875069161 60958012 742111892 742044609 862911222 885451602 985422905 986435696 987987289 200813923 229614501 844972896 983795713 661010013 999170919 457232208 760446444 277443665 302073882 717303608 870237481 818936168 957623236 615322455 940450153 658981376 853617887 355121326 440203606 769035750 900897898 328424394 983513692 994698958 995187748 906696838 967603236 81799861 397646297 194935138 202291047 531787092 779727901 482147414 765531219 899406606 941882235 928225930 949057146 215593750 341600620 937805241 983141326 602834576 623496125 650368360 755327525 554652343 563899449 925622055 993721770 249049999 849724975 922393224 971689845 526974996 609592478 855137950 997117998 96383345 315084820 708235626 739821351 41865389 772790430 339876624 719729006 552427933 982252760 92456217 328013422 997287802 998869269 849903121 983539130 936873106 985313414 192815839 753035373 846574446 968026693 84301308 659672685 123135708 192441417 119087025 225009508 195625953 537671062 512922739 667998037 866860698 998980056 494078188 545431666 18170717 406614624 842888630 983784247 351002413 585648801 520480320 774941586 45718327 563655056 105921932 296621001 135657268 354483327 755354580 798965292 757405227 869877920 116909424 639194380 832142377 994183768 265279357 802519620 521217122 732129165 364620306 429375856 354737563 472192554 677041787 712504690 963793466 994120507 248672513 422876003 798072295 992935109 72712168 979937189 115716904 502979214 884388663 950162807 93593587 829030526 546414422 790345518 204370031 780087402 125869300 974921471 758353676 961479242 191762608 490483758 81436369 386813416 168938899 691521636 507326827 614721099 783635629 840707907 452053682 978309252 64401336 137568378 196403180 729332755 86800687 772533161 477851585 865947498 721800913 828630175 971718891 979905737 383384597 905905153 79028872 315651279 164453892 394693949 166937908 331272910 833493814 858736357 954508683 965242080 89173162 598891327 866474668 985841042 866240432 876519927 29515431 446818125 222976843 668822521 132859979 275174219 418472751 841292216 983305532 999966483 267098990 951212455 254564695 700500232 904869593 967959426 236820225 434301825 916462628 953148555 458356737 709602081 475282472 925764264 446413823 683717056 936496862 973233949 307092968 564700408 37208090 233195415 888416878 937859798 93976350 576933600 252640785 558400640 193288691 560189599 721879674 905816080 262694252 860312021 578854858 811274799 34216091 112624302 900422693 984959933 630771179 670715358 187204812 712251870 926234107 971355090 304283613 716501175 942056411 942914408 956955170 974490770 406630853 810331635 242535639 914158582 329912489 738804387 225371547 536026388 644992444 983994301 985328619 998166331 409331175 486091053 746163269 793281331 573030574 941019893 784876141 963943964 646894824 743573285 343656532 998965019 64664547 852928262 768210776 803599260 234491000 699872776 706522141 830190978 707138802 967544251 539694737 572978617 287884141 525652791 143431262 847050556 403539564 760985715 948383657 986629589 555952283 847660171 369319623 452097213 959786209 977854540 547288906 776023157 204123072 401115052 58384205 483719795 521056931 522132030 632927360 742027654 730273421 846437480 186675509 558187606 834779244 914931431 70660227 866636140 908007603 914412503 202358664 987662318 416447560 737037086 290808679 505920408 900602802 976236162 706892798 773827096 154279567 654092917 505250115 533291896 464289303 468990028 952740087 972650373 353731180 999751291 508408008 844870076 189672917 489129147 109142345 208971343 509103014 695681579 938684556 998660450 911297005 956812553 907111451 935323279 593300544 722578691 85371549 772405863 772721690 944827241 11235485 891708601 413241225 485606590 112060482 512836713 593665379 938140918 354729975 497411598 863346268 865971923 129058940 460592716 168392590 275761944 371390867 894840246 239819912 898484265 488486845 934449851 307419882 922111639 508002883 646712500 34606221 130892068 418254012 627779075 736475929 948115135 273290167 484433132 471155015 740525730 203603275 368834448 329406911 635340090 235250045 316979204 337517124 554576542 733097927 825105151 79535589 309716370 225738634 544359565 738456592 898520444 769344507 970562632 680569049 841983191 295772163 617290725 909358651 969182516 430549275 993093637 326505382 893706311 571072548 651716012 990904524 999701630 202208936 738935937 617527982 673462191 906319965 907012553 38349950 675694409 975471490 981232144 932352588 980197195 179449529 530531500 659501102 995278099 777243786 955980216 492831198 600021151 372771029 971160290 570254098 916628019 981906683 993725266 705413733 757592390 405470728 848043324 137630151 173060459 626015605 900944733 15707032 499606964 921567982 984253696 785005765 889852384 458970716 577728639 677411051 809856267 98034822 157411897 158903195 597995202 807096138 893626730 209604618 873182332 409143993 894915587 507583043 883499866 637932053 975500537 886437874 934635839 627308325 940675573 644244777 881929989 362791942 772751250 752330050 783749824 343094733 541981678 347209955 505782810 618198922 814603545 631255383 853549832 879999231 930564823 355154243 440277438 183559591 870196731 926853792 949624213 305636964 323394902 271502694 588687910 850923381 856904339 280017993 948475181 652006910 813788178 932655935 975654794 538085454 597768791 971491985 978708088 570068955 647273177 9177688 533648757 972522740 989056352 482856999 773748414 764023339 975869913 210404 662794417 102110541 412863290 66248600 672856186 53119927 265832744 116743373 570210177 587697859 822525951 145367530 860479996 720318073 861504511 423984671 883985914 698896222 748716289 262259513 999487375 768394180 892733009 280779130 681230585 706951090 856454546 244786925 335713823 123798417 641969625 226929073 847393482 696868714 877665068 157168289 450379970 980853030 997176831 332241307 597946443 177485888 372638572 761348474 943414323 956403248 995849965 560755613 868568561 565088077 895205919 135216233 748071934 144062425 765241427 338408081 691233289 836520538 945966939 286443732 719622586 956787971 987912708 603008404 698011149 718429883 927910231 634777351 868817172 617679 323521358 76749874 519879268 329754695 494102770 659964871 834584505 206086666 982275068 332883058 548925484 394254145 636781765 471911161 872396644 515861509 906084095 115968767 199764428 272696955 866280738 195738150 339350449 225408772 908383658 116978564 920423017 188470603 502370504 283538482 765750857 537617697 544116007 299584646 805715331 324909624 754266183 209515135 870677643 441472378 567052111 79227393 876207642 715488379 996028595 453379660 645624237 3323317 294210057 656505303 864691168 845858870 963644977 189252597 665278995 961462143 961935974 94497418 469964859 923202511 986142463 591477310 971221079 712927947 908829993 713564488 730887146 198947099 954088609 245154246 255087731 108086736 891429410 10415121 879579429 296405428 778540932 442044999 776191697 630053203 668256507 110429075 118322257 273407439 474408808 483912122 874520180 443151075 554479781 942375018 967114957 284915791 909644589 414105888 548787029 848726217 880493587 425114097 913555773 782071311 936501649 810422454 836862148 337245734 511947294 996848044 997029450 712494204 894584648 868859973 886786261 951906497 965975512 503139020 922924298 842632458 982312735 709893830 897275320 101289589 334388659 850321421 963906689 917879415 988176565 261380684 928235076 96450805 907274231 174959399 869211607 309634063 805875349 140181956 491862463 352445052 385838364 426342023 656827640 598402747 996770727 900204000 988092819 772363246 956343171 975998818 988719465 956992135 957459161 29541511 831457037 479853651 591006705 191182655 946904697 464159461 662237213 541011548 614665115 113969356 827792241 581116201 875588155 766296658 956276632 763786815 780238514 64442765 731709667 744753947 882667396 664190395 799290282 937576507 960835224 329052646 388888482 497408735 497586171 737882866 989085129 509043903 631665470 737400411 888460992 586668269 993674123 619320950 714481020 421817513 583679073 47007615 757187275 108834913 417445231 930320950 978863634 262695113 585563574 941918074 958311319 861475596 976005382 879664186 971562290 53787902 670434097 922117619 954413443 813710468 913807149 320590658 850618256 588862087 662313732 304844911 889431891 20505025 67310896 99155153 954254475 56854734 432990675 335623140 874275990 511655727 913653300 645021216 682447764 181282745 188134882 48846231 816044841 723804818 913386942 283555173 330285952 610053015 841866215 511906211 761887832 525993368 595190742 357962223 594356920 638547102 848041031 374245096 788864233 498763222 533569351 53852322 775209823 198095319 209923549 438509113 684904146 547121086 564982857 529302175 973679327 845278746 958148388 717014617 732400815 609601729 615125364 502998964 900054085 430700373 707331182 268750651 525618030 861721918 919894306 449875150 864614311 833253271 833761380 446958451 564091618 991140617 997465721 698033965 882881077 325651633 385319425 925987402 936300370 835959234 862995530 454786670 497076774 876193561 907713353 841393964 990909850 929732938 941712199 637811603 844614704 594244979 682801276 250123011 947156955 973176355 977353961 582310351 627090360 160957856 528265379 115194647 316910217 855732041 969426403 884221145 947672359 359633937 384651704 965256351 995256103 410684318 958699269 955011273 992334604 181983535 769332791 421796067 914086103 422241729 915356102 72623635 200159899 459425445 587935749 806023354 834084891 389366901 789121412 3105882 692004529 420655855 525702564 759557979 849351145 417169082 946805648 146004878 849813586 760103675 993086693 419759068 971203186 2450124 879442107 338200850 452019669 192549259 783482415 728090551 958506346 913614773 941505274 983812404 994248313 259501429 535685356 915497606 972567030 394380144 939092776 587260341 800605001 620653577 717378780 100565404 967252102 246166272 472964338 416106661 747323227 6395874 481663687 475055374 883996349 160730905 270606764 95295385 997526234 487478958 950164063 165045245 391363586 660031597 720356907 794852884 801045450 756167254 846312511 628973184 915759704 675379482 913682267 300208148 812434031 804689110 889453232 883832754 946112885 765897865 963351173 215885270 902774286 281247632 456943233 396965773 874883933 315725134 356393679 96808955 984833980 60022684 417514337 365768632 472222625 438086097 841222261 257247275 578667676 352479789 707539801 341725972 628498736 642454934 678532558 790686071 987262833 218236507 452649490 188414243 714133915 550082814 925326524 174640820 843408585 846015438 862093025 229448488 970094766 600172807 923338794 509954737 627654858 363987592 622088058 162980260 810519194 526697688 554341176 700727853 844720447 754148087 922413267 805622382 935488820 948953314 970078985 895562198 971229983 240544154 379248191 282360086 315778927 211185162 333693611 18295525 621110657 829412453 860390402 520105666 782288473 738216608 958650696 28186422 406147717 390767642 574878177 417393680 750252750 983241896 983449824 12516838 190109794 256173645 347650030 234920944 325327064 750692656 982989991 866175394 985557046 654212272 821626065 743689428 824798061 108089441 596775519 494590592 874589101 167862349 197180593 730842295 797515089 848708063 925740686 755624320 960441624 458274798 698939645 314104461 504546827 440908841 620760677 518249961 614526240 33664083 686554468 845457483 971540431 201135588 369579256 465898659 894729562 978901283 994480621 716076421 873855698 200375239 833003829 461821785 675192275 705156025 916232014 770177234 960859657 522351069 949802909 357553964 895600624 368974503 763594719 266804578 639728276 464377575 920375163 572290970 623939924 642107317 994104674 352837185 964282946 339747991 887672095 3148117 638825956 80252780 471233976 530985980 960474284 89614324 603941027 29642028 111070847 888925749 933667012 617173155 807829996 574940055 668061653 465820195 558422153 407469463 563357238 325442497 575375599 440152863 945554541 364580959 569726997 128803390 388102587 783805527 958356508 895474314 953681801 917548498 948231277 673070275 831012471 179022787 729479537 511841951 708476830 134510169 298963921 525679701 564123597 278175840 420415530 392049875 614953494 348030310 688761941 652455600 927101126 347703794 430204209 80302637 378079587 918459745 922412872 902093883 945222868 262472041 798958592 859462279 874349261 878369722 956482185 204665657 853918694 267365130 713100012 390170858 941840764 267336229 625138560 115013774 566428461 313142510 918921493 500422194 820227492 213822214 787599617 691220350 892491737 551751544 569518937 191928945 887580048 44869894 376907403 885366944 992180473 772231471 950639471 908539092 939452494 376208389 823993910 140770063 684455789 486906046 910499278 990921098 996469689 551238507 776095975 199760437 748891557 70999139 186157613 108384022 148179714 712631844 862134808 659140450 907042832 17718744 219539657 923602748 932701562 854357029 987580105 808471477 823171938 586635645 889863335 565580052 852058612 558683170 890747294 150634025 270490460 557700428 778009414 633606967 766941825 264953186 271819733 240852627 554105738 866844986 996017057 710160173 715164304 334463128 974937284 641913896 828778355 49999671 216679604 766632802 994157479 303462307 918857835 848520935 995950241 533290518 634193791 560064468 744494877 209256966 585425064 550240106 928012376 943705882 956857867 549644254 841021593 950186438 951851306 197844125 370123725 714529677 754633346 904661643 926157825 392039864 676027839 947307589 986685868 884397565 891513897 870069208 990276382 317479213 380836684 280931078 369268876 909693927 951287503 266715188 640834124 127350691 278641398 464526276 737383384 15205695 53561503 716320406 943422498 543537455 839822190 121017898 849249273 884357893 941553701 312789882 910705361 459350328 592202647 934162409 972322306 124626083 894368645 815179000 866586611 251425731 880485490 994586520 999101447 588798247 779387717 655160635 725640629 526046316 735689399 700871887 914834602 336662615 948300646 431851887 482493941 637352741 759497135 720477998 746734185 449514801 773598798 466171706 627161737 181989632 558415110 974166297 997363461 724755970 731945901 285299307 988184024 974239005 987483862 970681596 977190865 640909358 748750794 540184537 540735729 619899265 853746303 761300591 785528144 417661985 672724791 756181488 840674301 98108366 963527722 736948742 801069427 344993693 646743001 791789274 946066122 12864128 435240767 509289734 667771589 364589751 796304869 364031581 699666292 65487404 800915899 359268569 541666833 922000576 949194102 163242071 635307494 30424140 595983620 445830700 650911473 6731709 832284817 699570734 960386488 305755276 782581557 552207600 759747006 194513029 518933506 737870093 990470181 977283304 982492022 566227662 655102464 513551917 648969036 177649370 772285677 684595779 759820901 902887498 949139027 313791958 954393323 487810070 728682754 519325939 594367753 415948893 697567347 513899642 809971596 82103784 905760283 271756861 346129918 623882840 757878799 794439356 804292167 39652324 330159254 103031830 295707850 399169707 482906049 230699142 400245129 914886241 931643165 697960741 792976686 379624168 955582540 205864327 955486715 529310257 907271158 606727778 732735968 345285197 508193940 704367592 972742072 561810748 854709988 16746409 665422355 220525140 299350071 686500303 804225377 255333886 283372195 963722886 994759010 675548814 844267970 659780234 788198876 248613545 325698880 935631903 969598635 552562526 709051765 140723812 776612079 552492318 601232467 498024255 513166071 66918258 767228115 948755768 968372204 246852953 991841765 102465993 612789227 446796019 767885428 897502763 933998808 747877956 963475809 373222838 647726846 85864906 841201926 179489411 855725729 972882049 978871850 345692949 695297127 664639033 759051006 984117490 988681261 475528562 556365073 941324354 958873671 193851283 975770921 383128480 420154678 77579709 216866728 251912318 915553519 970594148 994994533 194838386 952815379 831998303 851537620 663538462 948680675 765208191 794968089 349030047 805078841 666144597 808524689 691926475 841902088 492062535 763518618 395735483 809297952 462780881 888736718 960792202 962509781 19240919 355672799 534143744 693966422 547481593 938226153 371457142 429658507 716827466 986571042 345923327 950070650 217860475 883646198 674298616 682879246 38032811 783628530 572630677 757290814 60715665 435648371 427242234 789540901 328261869 706088874 675084410 894706078 997660630 999131377 355647482 814999882 142757530 233202343 984318272 991277623 373227190 781964639 422235615 917999785 171376189 834082797 18857976 809687893 927301442 938507385 390987059 534616244 301760583 545054712 160066883 951092253 746670636 769124437 675113524 975708588 4437797 359649473 208722555 922656638 354352983 762427042 933666792 992664114 750150487 911991020 404937704 843707529 775207299 914901589 472685767 926789818 542718267 864273544 528074242 845668512 868909674 973111095 661854009 934047747 876845089 894316329 71346624 577300090 529421497 763560231 190338692 439262388 936732417 959628496 451377279 578022500 249080995 773342441 682800936 738801826 778138428 882903010 8124614 26685558 586471610 696656257 880258363 990434975 852912479 926058272 819816887 923603889 425986577 894262015 394357150 901362946 961891672 968030412 528157208 703439089 364730431 641124252 225993475 958964247 828218998 989582477 191457535 881688539 134852425 166320611 132285987 441476630 429413984 950062365 139687316 441016979 508833643 754676179 648382741 798224904 721415935 946277192 227630134 942150215 254875599 912783881 496788152 570766190 992988445 995154751 498670776 957263448 82026791 920105406 840946876 946214306 556279306 915683774 558522966 752377164 644661974 683298434 138126435 156921257 321111469 406420488 625836612 784980112 544052388 931672855 940977765 977528266 519422694 704083919 153499796 260332104 952400436 963234677 671405970 710939336 993179630 993690828 235835110 316303948 350020672 454663060 894072882 912498728 492476136 907793985 950787712 983015683 333767693 781992501 966729433 987206426 652108078 972072577 179393636 897813270 818531188 886818101 680851806 932693026 588178010 874015554 917813631 966594247 988069340 998444360 439065683 583896037 270424719 734127464 232061165 873964378 315232287 766332005 930628044 932713175 191149 424421146 515281743 539055722 254388984 890466924 402430937 896784315 234202380 429304146 712723670 994185513 211388952 473002730 199160265 571493629 626137959 854407224 744679692 784474081 108165013 743080040 890538747 911356654 535089145 635987202 508217858 533320861 357055486 445847079 741149787 828386148 685624258 739185711 959420692 965560525 883241072 950366487 190300164 691669198 153353556 783682802 92629369 873287237 843132313 920367992 610643718 790278597 525665018 853714717 307185416 855272342 184969128 374080369 729904477 847205329 754253596 939014838 959197890 969316093 262591952 813425312 367317993 592682452 575354917 909611457 376936557 423343855 679580421 993083372 552443846 929541835 247441739 830576035 767924943 828092009 247755009 651062429 752670597 871556138 445049312 820460244 310900800 337118717 416343143 778331501 51855545 892354151 532483800 993095519 266050695 387495310 830483025 947816227 799090527 856112620 234156210 922703167 647199734 745282706 468853677 972987000 461360396 635675419 523981895 855185584 700817679 913248167 556244460 597612586 899719852 902540928 439660199 718710286 536823872 778571598 186547102 906763608 237297935 345238218 211910044 250484981 327663864 817123268 428573642 520549898 445080817 508236782 274488372 582141176 738222670 967410632 606237523 920477244 263034510 267400583 106033943 284679157 197885270 814885989 618829453 836830627 769508962 861448373 60683412 173372974 611454316 802309969 565054388 914757112 240452712 825093807 567408008 865755506 266640848 498104305 167510243 386696588 490734458 880511967 180335770 526765558 898489494 948668170 971645742 993893413 119958760 873686325 214715492 767233158 915146749 999824509 612422225 728481786 346525908 984052799 33538627 218059895 373481368 397153101 915883014 945370866 130575265 773456400 531597763 884120479 367743112 560146405 106760820 984586847 553567719 631945375 98888020 105788975 302141693 520897825 279748397 633117372 648807176 938214144 91860208 544433867 804001243 867095554 567784211 670876730 803818059 953338958 859960722 917535501 391107936 824110116 690067962 888646729 636259810 773773296 3270127 708802654 466190168 662325952 302409216 526284609 38397316 777971841 64209131 477733254 502763224 687306345 650959672 767687225 35069869 893487338 666985096 734637692 41107861 324369412 910694178 953823243 118632677 359296487 776887545 994700963 377352773 590382391 514148070 781796066 617239847 973648130 718659286 978972819 917167021 989229934 414020934 466921221 102339323 506106818 509689170 893639877 39602426 820732624 505891747 978796636 316713403 389029429 428063220 654569030 178520377 861296982 397277385 563016224 113957128 879014628 863971343 958322425 743361396 927258235 674087074 894753155 123891176 209586000 419870810 606589024 828453694 954437008 531958412 764188683 714049411 749717522 823937083 978820636 430307742 540867637 16884351 660693537 9286093 56655852 376929906 713568396 919150727 943192354 564505317 818145493 725342562 734775811 818703971 912450785 430725868 911447060 940091553 960111879 148513912 436006202 655283386 828876952 738779549 922014480 865148965 925006356 567276163 803916982 641217183 672179575 29296316 984646483 591675648 970848609 166926017 617119848 912047536 914900618 907374327 935886834 322770714 339425441 258626532 760362000 606879632 864552296 665533754 893274875 313644574 758318973 982109834 994187536 596594135 665768903 501102730 818263672 271455613 807567759 562627538 650102012 776637334 981619565 75624556 975491630 414865743 443851998 593196506 854419213 106773206 559879089 46902071 517293547 116655896 362952893 135691825 616956910 642883476 747968957 134479367 722851748 388513892 409767548 612172013 940719843 630035226 946074065 456242874 471487192 468470342 608005645 623302132 695522315 905382888 934810161 329118262 478845039 682421152 871641159 805358936 960253547 253919482 313222931 584375737 738601595 163986574 868524080 92234690 675765928 359711099 562921999 709687868 967137312 798151632 877044775 90365832 537081209 108463768 231707073 430482004 587407924 743703893 778085093 503750217 535649253 255294614 890838180 373125086 393163567 180131712 202191703 69409782 611152071 883214083 928857853 757251265 807874931 412843009 736237670 873671364 943336789 309415455 554355101 252509540 526660201 58205444 223690120 875467676 918143971 647588649 881874597 950981667 997753037 366483221 958828990 574494590 835528138 631636070 920955720 463110186 910591379 861297352 972952893 870185841 890226395 534284391 795714457 220823093 857671393 264911685 534805900 867432257 875098158 729350774 935882332 229043460 475788905 664085216 911630786 40985687 88596189 28504092 837497955 337643379 667120282 820383493 967985578 26024650 356447108 656924919 971382694 4127005 30617603 355500846 639267824 84015874 308743266 512554729 875337007 24450390 520675712 392893575 827364289 974090468 986677022 285714868 953654510 459160451 571001065 531500172 690285735 751208402 797337349 468001623 623675883 178741522 879493968 417454224 627046579 630724475 745958927 787314424 969257101 792674253 816486189 501745144 986221193 785366073 938211650 531689160 622004711 878084430 997127809 3083578 263401887 93848711 387174290 541418283 621056264 3287053 112874753 903841400 987334836 307321943 544129282 805603264 907262628 55222960 866297029 105704434 942406314 450214568 694146635 884634452 984929014 580695794 726255505 711364261 927332559 309098302 960033634 472747405 795068905 885307740 898415667 802611707 934445169 582904326 995439473 703795036 997777802 732165412 852889817 239785571 796714989 925276450 982978668 946151548 967198846 681917512 750618617 617522776 753895802 325759800 740166355 25469963 492784450 930944090 937191068 271963213 972029370 416921828 616888390 711993931 801291659 810929400 997974458 390431437 567417019 360136376 462421103 611266858 962709970 938930791 996318119 88093916 975798706 893610623 921925787 477271076 530577723 49915373 186656836 173886000 528771799 621107693 881219351 128055826 974290923 877466834 962867544 828205793 952258086 929594963 966128098 614806358 783311406 716430383 817217104 703890015 762483184 285222635 438703804 72129064 692071713 180604473 698267940 824714968 961120720 661231398 931484936 95543327 369698228 296673586 813814685 730485396 861620370 641107526 681801373 196112369 989628199 411537356 470044351 928252362 950399546 100181221 762943777 641325520 935313464 150469690 477595499 629240740 901501538 818847416 893636196 964453662 967226459 927839848 963270026 144252410 292875861 882991443 935503848 903720996 935706457 359457847 425616269 303614882 607496826 43414203 533439843 439429442 873165558 436781794 591653583 973198538 975025364 878912515 896399895 627509176 708903694 184249284 356573725 525903490 605806554 936064335 938634466 640957834 643423572 680283296 959635291 240733181 528094330 96252616 264266484 102214569 173717975 457043880 572614694 947519202 994341780 624089649 921207588 481142222 679467051 3516305 213368816 912417491 916727086 786616743 805757937 230011345 559564193 761196433 936312686 45531624 297416629 591579733 817929143 349927085 642492564 871353214 987142132 524888125 627753675 102946325 546683920 378695622 774970797 810026455 858592377 107885055 476300891 844161472 886662294 75491982 922689917 963654158 996430773 400253542 579670821 76391560 255682628 539360556 874137643 630259211 989778427 733587457 764793126 660932293 707603497 376179890 387164360 512592431 791341556 500923147 606538508 921733834 961818512 227521274 746182821 333688456 914891301 417438804 572488483 361756913 824450219 418815399 631894874 705689041 930789295 602451526 657699748 253356341 306481397 366432581 946117814 726885631 837915523 654872101 834327729 929524013 974935148 236259021 659437670 537551621 774891451 839593838 865173247 792719192 956963698 623642350 901721287 969170521 989068721 138139443 969418841 248552489 298715662 106783550 707346392 906654254 934994943 30010549 660999336 569357519 617294487 710914180 834627051 498747677 531471136 150963420 450226764 184704906 496803645 584575595 732381611 817376615 893063189 680137452 688164361 144729888 257792139 675376363 738920656 813859910 857726104 711767772 901174957 544611212 861843886 409237309 722308200 427701967 467933532 78171314 746182071 741603291 853472147 12586322 287887178 123324165 901921721 468690335 574221595 220238458 739074718 714261101 972195702 55534033 580691126 646303560 905977657 407968840 783700285 990020914 997613386 132512686 967865035 978389777 994127748 947601276 957062891 226668536 997331985 518153332 539836699 67767810 326175154 778454768 870574747 208365554 622629872 394380270 769334941 99549047 269240799 608425656 674855069 858159298 934844715 625422505 779737296 789973392 925861937 549567022 971129270 24052339 296023961 11941165 380154202 324767221 722836963 996199199 997550936 828062210 923799519 181870858 542168149 358404108 651059701 80281402 466130771 556490996 983302562 851858512 893891257 437066911 985669652 433161207 563144748 433775936 802508125 269444956 436638270 657711351 657790418 932282028 988300717 234808137 336263899 666482541 764637323 627745279 706314626 403231428 811030000 805215631 974931339 959007835 998848518 516319153 842770100 266401881 622632547 296581310 685819233 70675659 599932599 348944652 728278702 470500660 710148615 910789779 971880369 69617227 220455421 83373648 272635525 595646308 739005554 86800014 394024032 752263965 919745831 319751458 610998421 889268666 892441928 760839218 852186198 57965843 182731200 487074979 692863878 731998455 833345403 564598354 978349677 920327238 956044739 485579621 579209204 919939863 991573330 628354180 777925885 771957775 801668175 526628305 951554329 422654326 495976589 35555722 543919173 819815431 915706475 147870806 178919057 103572047 575982443 177128361 600586564 288846505 494748186 967267348 982950834 361653616 617509644 623699848 827462861 902307770 983752042 254858935 626964197 38526176 45721411 959954853 986539432 67990449 686247256 642632183 772602770 613763313 660199540 152711717 683084889 705640057 926408298 908799173 913722379 594571993 821284216 823667237 978976952 32281388 964363836 79558797 470537129 124783448 840952416 151439461 309245498 145331886 716180727 933848545 969562110 280228550 648597949 506998838 911278952 4448046 679988429 562875589 908662738 293240329 894169322 261700695 646357662 201813399 352068323 745293428 860151853 952884245 971356943 506585168 780912785 692976085 960465769 905616133 937348022 742903272 890699015 848142161 916042556 608870353 949263403 465790340 838249264 178548996 703654819 889234978 957155516 956707079 985244089 674126750 702316742 787251095 906124552 361414397 486155812 933153712 960477929 634464024 965701027 426146001 462899367 477200560 623906323 593778470 610588305 690167535 840174965 418123192 649904903 343788221 828291095 676865969 690487783 731393883 800219341 344097574 925494014 131046609 817451320 404779968 451394279 21434758 143218410 89324658 982145012 507108237 842793415 195831148 227345996 737874142 743795174 127505016 736720044 114683499 687432715 668123877 677124631 429821524 971763847 502218322 799678529 784500433 808864045 236028361 964826138 281090190 609387313 298206368 631547393 736867715 761959276 681382841 772572065 528023175 978035074 803132524 809482525 642548948 648933721 211695374 549328324 736082165 957805262 206490544 216033565 49380366 673707197 792438379 827475745 739088103 852678778 759859103 827959686 286644737 724814453 550061175 556269643 531112479 986398835 620013306 996832607 478893010 587522205 634114875 991972089 725077065 985685229 24757595 387296013 798521010 971871151 247735269 682611067 672668089 982172483 469734199 600214099 966371223 987282056 640519034 882697070 771850371 983756302 161780618 426064408 987245322 992908165 961906216 978097872 313935584 885308679 38054381 121862857 568554495 810765058 692387147 978260412 268945074 926670619 611892094 740190692 879883497 979712723 878701457 956920034 363899442 685118935 505285863 937973573 587871407 980778148 396516713 568060478 54756308 991049680 15395671 543773475 20995740 30016871 522550586 686517032 636883199 655516594 150220899 172948711 228144381 694314533 823099303 882243623 446198380 766279245 267225245 766057983 86877877 92403608 51089508 474107906 148548794 318193988 720324404 798445314 518102172 639727902 669589957 906499504 381949425 591567773 976088688 976208766 859038518 956541261 275159982 639498047 549448949 955705292 677134750 978901462 895640277 903136287 714070881 838353711 383965942 642945371 776909847 885521852 993759156 995361911 92404704 722476564 565679283 857567971 99379731 811602667 487746797 661478444 862188146 959643350 616512540 698267039 67028541 819345493 320915266 362852877 467991944 640593487 777904887 823945667 383213614 665000268 621868511 649294266 501070766 560969295 986678243 997242314 826643654 861146897 436711241 532732408 713362839 980304681 206088871 665058690 579646490 675559807 173042473 820129948 885215252 973019021 742740310 778709418 575262914 984729024 370849755 586757245 296733530 461029628 342890577 594380633 706173421 873930144 216752622 470322127 820584902 862480417 912288943 994118816 852302542 963965392 126884352 706865232 832241688 967099532 782565107 887105490 317728528 817345695 53913648 325263461 105123530 670510309 852014527 929523205 800453883 989019391 372928351 846923016 397242018 927650572 53245636 989121141 867759272 924871221 585517336 780628508 873432337 966525534 157066093 889370445 342850599 370499090 88661613 909579853 363414388 398991120 731772586 790557255 297199626 682555778 763442535 786099169 230037758 243277035 178414608 552193292 749652255 974499909 871183068 948037598 260834231 903730957 19359958 810568500 294600122 343074299 476642290 613608034 218476846 734336392 378734286 920351305 512508133 733612205 836348762 851445307 298216948 705869091 346895066 522529526 185930713 368925830 762768424 765274935 872487689 889175089 678616850 896322422 156207561 276349298 547092687 941719617 637347846 988239987 106570560 729522289 884962213 947494671 193058987 298717953 670336930 802074699 722577298 815378133 167070873 556446317 185116345 751204440 97246199 577901169 14871195 20042133 1118165 893535001 922051673 960377096 761142573 978237585 337551941 810188366 609821999 903411006 342888661 855765087 344926697 619299412 969068078 989270030 357441669 584365953 485214167 773630481 380608410 381704725 913780326 967628068 301362403 633414616 186073246 719454692 760793164 976536611 881565857 920646079 697714653 948074092 196381827 875083303 986089531 987662384 673152317 755073605 591449846 854620248 167076684 983012885 696932951 807375968 50173269 158801715 685836572 868193976 933441801 983788477 164958658 907217637 4659686 512031433 444097777 824107529 838368989 865563288 285506282 804788365 395715834 469934227 991217438 996332095 582035410 746516352 128888322 240451722 534263894 817806655 846795893 910540509 631230075 743850491 834679358 897693788 195119518 341644522 756822075 989083235 482961289 916264029 605433219 889340796 405924390 918107953 264029622 918540955 455757752 930261012 821993625 948368226 829598494 916263861 602658961 650070576 389746492 416797206 741040343 856128863 301643473 845629601 754494738 971340677 57501027 725315289 880583516 977797210 599420542 798961753 129296904 840131969 798686651 910680009 563415280 683176792 820770355 833736537 484037092 605388654 654522038 666052861 507708452 997845262 761626607 857649759 11252320 292487339 953759150 998632780 645878681 943791572 58681388 593707358 817373917 855785771 689609323 927034264 10710465 607029731 224242494 516120855 558890922 764312589 192604096 782349822 983513031 994182521 120341538 767347492 387176096 611220638 935709438 940737377 228458235 581076904 234625361 968240331 768942574 989394702 782893060 792808688 175853483 651457288 676317366 689997873 176476412 526720391 977803056 998199952 465013692 892795632 589660952 636325461 710511168 805411669 967552259 978884705 114540492 251665878 766226958 827307809 129741960 759222049 853787197 865340042 85781881 390714770 793649411 902289954 128626196 435847038 604021301 857347789 388447448 429791972 457908181 464078539 178021189 549781080 990248195 996868609 381019631 863273653 303402770 737250766 817124710 986981362 126053615 781263391 634686575 762532257 460630495 786775009 111084465 773625792 446757165 856409160 140270525 200477664 34397024 594062620 542798746 620630599 815306245 992585923 754635705 815124292 503678698 980977576 844603739 900850795 60893505 225935412 53155637 295512514 98356774 563538897 340088603 551964592 626952178 863207882 484784921 557332521 885459724 947444281 635914494 733836033 778901041 878274905 927947516 982129019 818387175 996302269 713480486 958425542 621711405 789419554 782977383 999668249 328002637 990865598 652849951 948860082 707601286 980142173 798591781 811768909 972849947 982509943 732363265 850753552 269187159 576346344 501705577 589937819 426564862 778570684 98508491 977879344 580666847 934135434 607850005 925475224 202233858 709642398 416411716 857389479 440070671 470481072 459784091 513047863 968499403 985498387 400961221 484430424 897539636 908925478 214136997 421108148 553887509 902257957 569926205 930494301 849246446 934393881 392132843 413526555 844910607 860798260 335284611 474486158 799432754 838326260 631730215 782991232 456121014 720671825 511476246 933690834 905067991 987316961 48627525 928855259 445552821 557740062 253736083 636946400 36030062 38896154 905601631 928729492 394189381 572236526 294771672 966284650 715510977 818060822 793175759 805429598 972967263 976076514 581430420 900892503 252828775 537697026 765540661 841534613 403621512 481610372 760962199 813003904 939181042 983559128 486344398 680595867 996754472 997904171 917903896 985307785 886744620 935525477 498932335 743044381 519497308 568550205 556664182 971891360 171659556 308415791 31732594 232745965 760342791 814833861 269029562 295723118 264587468 938587563 450385609 842953255 789949021 900054468 537232738 994988258 521586494 712414127 879553207 881941141 493350718 849206547 611802157 860824520 679315069 912171258 237163877 804110833 573163435 719240902 525309916 981838295 191300878 990018226 60556065 210079716 902061352 988401103 539455108 663995542 146212262 884634665 327756905 544864920 937071524 977110197 659160402 682538210 961666760 977019053 232111065 384876080 863446576 969904547 646552988 916519459 661310017 870987704 203053632 622714250 589309884 697877250 739349113 774603078 410718039 417626458 474711722 793903602 102688270 619225286 212137361 360692816 938201850 953270837 251823774 999746376 807544193 921669705 625523218 996703700 632976801 657153884 637639526 747058516 69042604 978009377 237208162 293256099 431060727 789464867 675822254 872624140 499350148 825907359 563350941 681262047 131068009 533159425 293484516 883745933 761826055 901522346 126766780 961909694 198326148 736167188 609506784 882194917 351155925 679899357 383828353 950266200 173910722 719898138 969918869 975280394 881974051 924980406 243837701 613519848 188387416 633915146 589357113 766666780 224719416 566186789 471486594 842975303 486043636 882999323 196712457 999578631 402569360 714143256 552493034 875376123 435071032 718255784 984641296 991796937 795098940 963550895 650595448 748516679 930521935 975207267 325647197 920129915 622291216 801713153 152126728 874921293 584921695 754422093 989374149 999804284 745793635 794390132 803754590 924175247 751214280 999502105 57264626 558176415 100746008 683220847 324823983 675230585 495535132 536258561 534118014 864349608 979659703 998423712 84528682 768994182 25794495 775034935 713851798 826423841 896808464 897618736 803549775 861717002 681792716 947887819 400368912 477481046 231613995 301838532 892999800 926708453 774019614 892782992 548599633 989982233 700871691 820583583 906067722 972349808 305701989 780687819 630405968 886134468 704985958 933550748 645964421 719941319 526496589 917830075 732121269 859445091 949448347 977506333 681515026 699109580 14374245 899526416 305951969 508140930 688082392 731655855 538783181 915939724 292051328 590394805 136209820 382365430 378601246 849972286 565956914 605961224 598624340 973247110 519057337 817718724 907536058 964103141 343930873 985912732 904065425 999607015 689481159 886281766 454005679 768417694 677636238 996389283 669902629 980442599 403415003 794438488 984689056 992236786 425243289 898963607 217488388 830149276 273999962 643184812 978633007 988910275 824812827 933837371 841887580 940170570 625370246 646250270 797475165 997878304 54781984 717479448 249399069 676766472 668478278 749600925 171520626 466735215 769397319 849677069 628893717 705837716 746372150 872995577 322251955 902800383 833546140 893226148 228870815 395636804 838562621 974949764 569215484 753876094 881625318 931012283 882941564 973011529 788646405 869475698 522278323 887912700 484650042 865540248 777453005 939974256 565301729 605056413 941105649 946223908 232908446 863158730 651615497 733723610 13658061 842079412 343465632 347063237 440571222 445538854 832410126 963934661 817284693 975865721 49544561 97657256 294725305 734724362 891792810 979367759 641243660 836945430 781326615 817969284 301208449 993853101 154804703 620452516 261251005 456095163 729331212 891290365 614786937 691925282 989144241 998905687 735621729 774407122 598363103 949543677 6632134 867265154 472518392 637024350 907129971 939228075 9180706 715505373 105168699 306652015 927331115 984419531 849726358 855287705 686096210 914653045 928099022 939352486 114316949 808104727 243568139 916933951 683581066 756915166 448742329 948405347 725775292 998382657 293360843 535096976 109051172 998308576 199478287 869247971 472787688 738415498 9619951 161336730 970539910 976165982 843782099 891872451 652066475 890868656 650357385 714436126 582525057 624764356 441661077 907475477 399319732 493725355 350805871 539973277 882956755 946486543 968950047 998590100 778170775 993510701 500770971 991526562 282156843 332081667 484128592 697082155 422389456 868713408 969673739 997408660 63883539 940342675 343364995 816350665 600284153 683196035 110100854 906259616 745338120 896885755 970594236 997151852 232573370 760367405 271983973 786487578 398518203 511425508 431964494 627274513 269195538 658268434 415269210 479096159 847994803 861783554 939400529 955114132 507912566 739142821 942879858 991331356 189394090 958398405 404280045 597718281 852051102 989498981 492250723 819376374 643346932 803610632 333351739 388949008 185537533 343490378 509308516 945625530 506828503 744204966 450012040 564802225 221340391 419500163 500220110 831255608 457687690 759897431 563288448 801105402 159029351 801267341 34747383 555756565 109375776 341151333 505764886 716629501 370433862 426952152 805399312 995388458 981474427 992393821 920223464 922709243 912599912 987304023 251640450 781867179 148221000 683558410 655139074 986340151 446660781 776010774 295408099 643504082 471419924 896359269 899652759 998519954 233316403 907904751 827177282 950888160 366897883 833890704 462771103 601938308 131031991 574917721 83637220 518382409 996603822 999881137 289171724 352185203 853741802 978526075 738398600 824429944 727244899 927177542 923307490 954836847 456603125 973138603 7583027 806034389 811476885 946199514 992359414 996313159 213032651 788765356 846951824 976534544 427451169 653610961 401969316 980578014 816093354 833068959 545560651 800478614 389805078 971997360 479797757 596798810 877069463 906772309 889304336 973314782 645682430 948198202 207876824 229291677 453668748 566343114 557539372 946861320 222891439 427900346 192070635 462903279 109443699 785089778 681776320 950628048 128592717 494194833 152846645 907596345 9451242 622405266 118652460 633861813 748725668 921423770 917512272 930870491 28485523 981032473 716486182 949483782 598006042 830938411 90357594 145273610 922526593 971447741 694102495 834039846 836349878 979238181 131004868 497536493 791414345 963809225 364598994 582105492 655083466 928046664 458723957 620189005 768127912 793303407 526601800 783768705 440886893 807604051 245646131 650343290 466206994 763220432 42038257 263949338 360963668 989080395 171369989 266072382 751486747 988125372 336685310 400723848 730831603 919919614 874606617 946588217 497377558 670200529 654104380 663841958 724687165 736989597 252276388 650055598 333902798 766381588 850020160 895148792 364407239 393141990 244730715 328294248 829922423 907335736 190387794 585116807 842209039 868489251 974533166 997194064 76651458 579953435 819602931 877932434 922905764 943970248 890046514 943665852 98889586 646679371 227204866 386462820 25346632 864279700 884094931 955927042 250921339 899420787 571138233 916190390 38606205 993974646 589361670 708623330 275373315 622983405 781278729 854770397 443429232 838273762 410829715 969179898 626216150 730340053 654714759 971841926 555808025 843049924 953066033 993901311 293149462 781141820 102718820 244389501 82144147 297966604 504715766 838504548 448463086 801152067 334758587 401671563 114667314 409147755 703976162 890218987 436047927 973883296 888171934 894244567 377780686 408290307 5085908 216612919 449814284 482630299 814355668 873073115 403853437 768959935 523876674 926128638 603776405 811479432 874986307 903266777 204227849 651337986 790610927 808816430 68668384 500879383 748391031 874581672 503794383 955112685 536272416 818002865 957604174 997745749 464846593 577143999 412513098 761386281 115660133 647126291 312135259 540110693 313979530 692447000 588326141 601691056 370441206 890587100 260040002 700203372 459353560 585275372 754584125 988493727 321421719 963704392 440191481 650113614 158395585 648464890 98961581 373614697 803055447 833663499 967807892 994058568 899751614 908305012 559869820 971002117 139861796 944254953 846794363 865601303 982750113 984951580 572228608 597563179 844195643 879267150 133516211 865903468 924271910 932621033 800023481 959672947 348607794 869956458 379131853 694529191 273525657 488459537 301948722 632370063 417013250 579577856 336177391 965719568 457192797 521518829 230149987 709053003 24184603 480589737 712532188 777214546 646077508 855224614 438490550 696103952 390694404 419143689 422370702 458833021 912874659 920940940 411245703 645376080 978074293 990958381 280690244 474142198 981755758 994185438 609686514 620198990 406709159 479419851 509139493 752368881 61578632 915464370 907577619 934958015 116930668 538948074 389694944 488480056 955078187 959466809 894681206 959659186 922254804 991611810 2076985 48787943 820262917 880481353 418393388 566701198 571375149 744698572 744517239 779017866 939349858 979281890 386859788 699473870 996027821 999368981 503884259 981285152 278174346 774240554 310387611 367907870 497108537 566558827 939007410 973692499 799524721 818720605 646524030 786642338 73166386 612426021 135410883 469498856 357090486 569846278 531100632 778586392 767416854 877571976 639679398 913085645 635382767 920316228 696487582 814792054 98488455 400075375 818098498 967506979 263423942 338945487 90744859 649153920 158318081 324303759 283238187 595980576 630201566 995239106 620991937 628981858 539525390 930489423 664218868 874677865 106258314 802306326 679979295 820640948 790387101 995311029 934197503 988079064 908976185 966254925 694483311 859916348 793753901 856863180 924113900 954033964 274216660 640328051 516303320 677235282 369519348 976728115 463563355 675161775 405395276 739006948 28246701 144773007 523478164 552771963 409087443 480652910 32701611 144222643 417429749 435244443 569279108 576802019 43863521 259592354 530527376 842668688 310766348 382602698 831880623 897978754 763639485 866287013 136518651 688165580 231135791 475537138 696215855 785036903 152963222 858522262 446141328 873766524 736980256 868788946 492147574 917071377 785178307 785845526 577179219 641524008 613641782 741488744 975743838 987638116 581130523 968475039 99126319 543811830 474396029 877068234 122183227 928048211 405883934 417796908 437730548 670796678 540848069 917857053 907915533 954145396 323343933 928646309 321569324 507331599 922988664 931454859 62809074 340189288 32930037 262460489 863929640 992193635 830037134 854246564 971135239 973231447 604327522 614628419 872796901 887014728 21122327 207268770 206558514 738135093 467972966 494861791 628461240 889543394 324714948 419295638 325509785 532507515 609926441 642889506 242604766 606582916 634756112 747029025 373464295 999927910 591675097 735150839 140425881 543367553 108503923 577645564 297233244 922757164 732353145 981271996 592169674 662774237 510699177 895067964 279525412 732081437 43591741 924185878 306931495 815772584 146717701 379849220 990598719 995770421 673598429 690847777 89699128 932044410 274061034 646719682 490910988 597253331 859818557 944532506 442258559 473400485 508709447 988705376 514562477 814835902 365061733 543216395 600287181 778167749 355582178 632923577 630157025 973627784 670821901 971528787 709877355 910969279 741343144 848129097 119249485 911242011 77894543 680522759 270754177 735739411 611165312 849149213 269078724 376608102 644216880 845668563 707721735 749644342 756951904 903697236 457605964 620581704 220660101 893442864 473352880 566965680 50272752 946587917 522760419 807448809 402618400 844632379 145351159 817900355 593508626 950025898 394714599 578528741 532407462 998117445 872657379 918807159 155282562 951356934 678681025 958053024 923087576 953258014 556094582 665239265 371691670 408454094 759647580 762111778 667514729 950541010 635547592 641396567 90913284 127913082 895905535 989983603 409917600 928552038 824984451 835729422 830638801 869834184 836548925 954471737 706129569 923383597 442774070 782456715 373880559 694959669 143232002 748870566 414805805 879225804 838382202 953025739 466673468 675067581 916467737 939922860 599761726 958774352 373122299 657067948 525346855 753396319 669340870 980306040 259882962 545948208 962994140 981319208 384184571 786203356 931410180 956914240 186220196 562994742 286272252 986474101 742548950 802171417 67611583 473759932 418732780 940683523 119059688 560726707 507038233 587862786 944682217 963267204 628195415 991531952 612996874 650266253 619525380 884195972 115983831 691604508 86963153 793264472 888628613 913214650 498594298 951535904 311067996 944929683 558097840 968642109 675742801 859649526 613612355 861180811 379934874 956866824 440504315 852555958 36349293 848969124 279422964 649514679 82182915 909597186 531136145 636294944 801455453 826558899 93283889 630497296 367181519 803062638 998154709 999286592 656609119 983477168 7612856 19497826 100734183 725897869 851775608 986391624 384121447 975851786 294490605 574570104 714233721 968122726 864637640 944724690 690390381 842601024 536472734 639889606 170680879 671963788 805619201 867587211 168322861 373532493 845511728 925968081 172132682 859735606 995310896 997567150 873853151 902791889 520813994 702874231 63668313 235544349 832541232 946275754 703323720 724042140 745875490 917896871 551964121 885866886 909814199 938207981 509015167 744573609 749604577 997798084 497210552 765413278 761011558 921836520 505561312 861596594 795533408 939678966 661832032 764570806 433054640 881632645 918847015 939728558 246159719 282594079 614090729 672021059 545350916 983765831 962341038 967571328 60294751 659898345 897237613 960987460 771362855 979154800 579709232 829159709 301195010 691419823 590772949 687498503 965241078 974105081 215635812 590293596 20669865 954906906 332851376 358261066 284790316 665681930 755696357 851974287 461692833 912716806 340773109 513659312 418354169 435852459 604805710 732676169 339983882 601074282 184345070 280195867 394683188 533392784 661777111 795056354 45785221 303377798 627116536 675472731 295118245 990944688 250103802 329444281 715162902 824846318 349040808 923937667 339968872 885743237 241589079 751309491 86336530 411887261 478796008 712244704 606806071 981862132 526779224 978913997 832548345 840863037 257476978 936878959 655371353 878271462 362827644 580195291 687645328 890954092 698566690 955402255 716044306 733776693 330039354 975550647 337675300 582801146 331193770 962699710 903993896 981346701 715361511 877371356 372760696 716893325 148977923 389592459 974387328 977354191 879920830 887107237 569882491 652476401 536009272 769780702 727729022 943381853 730347986 972214084 456361031 991145909 307743498 335193736 826077385 950325145 856011719 877383314 28463561 308769631 126498775 167275082 954146531 963407439 634719743 640990117 603830001 626540457 552643613 766751621 328265130 560126427 215141593 906915831 233036013 364030974 447383865 673324881 537084062 916346194 553032785 775665960 950185576 999907230 212694096 777161304 64255485 429628637 312568553 939615496 364634777 601811735 214659760 468493094 893256223 895740287 215234224 591519337 553342931 906997189 593834944 988741707 761668658 789019259 333764262 583745652 572346450 622214874 994058985 997288399 495013699 923116135 683440853 906941626 822976457 915983616 884196594 951321556 980905248 990822114 83417266 541647042 702641574 769958954 763609366 841200021 274933645 735356056 174282869 613612135 723042571 881141574 182087256 830060349 673457643 897173676 877024765 877919257 809339379 899311754 632586736 852697244 7614156 689572985 107832704 346100233 692907143 726615052 168663720 746392473 625774395 678984177 615356488 743302637 340426450 506843903 385420879 975171215 678410302 685652430 146612112 917744934 506349154 974484092 125904830 466416954 724696878 836509708 572074251 782885483 581648740 965689708 644472853 910212941 5173891 760810637 486309675 730624916 595115509 692907518 10144612 883402611 464238879 902896763 94691689 608577328 84004613 384584512 706518548 808381756 674820111 771544240 87330633 222197861 799905122 827409701 7060930 896741680 365072616 612140322 735391729 968526517 177103717 315646582 444500377 929077883 788373447 900939634 477504325 720555862 94647826 427650283 398020068 454638601 116104871 692356311 709224614 968760345 652030999 887951543 922071670 954148689 975412532 994276338 760631812 894772673 276999696 701858006 910823400 935501985 178752504 472083006 359826814 609116159 646255210 873282731 905555240 993683603 875360619 968083639 642422029 995847267 546679438 830883704 109027260 749149693 708445131 995012335 843701331 930013473 353664697 561399971 465902822 856589713 285834423 816714168 602409162 685338435 96911873 973644592 522128511 524959897 301237283 753798562 590633651 912536531 622620523 722057000 848038277 929876158 369450195 387113785 490019214 838306323 532706376 849572953 955617328 978888953 626091853 631805120 251918035 963885667 390181478 433227472 444469116 793379527 571613104 988051256 749063789 855499601 46419237 506920995 235669744 953896099 46792943 989868346 505706378 869105442 716419485 976189257 901034603 986665983 456330207 884084399 623678341 816042375 4848973 917756181 146604505 661111963 816136744 919327977 344239504 635655896 721954832 995196837 762802261 870640821 541084057 725765395 408119024 542305738 44451041 364642868 658184699 678876356 335054920 490054812 995854016 998287211 657917077 886963040 936342956 995896462 847691561 942018806 92263016 723629702 385099967 854796123 859199732 937250954 254215988 999036272 849288835 887718323 835310902 961726730 961775873 985627957 389778070 769311984 795629469 927465539 418199704 618832449 335674729 555166086 347084341 862687984 78796564 678141091 526644212 813575093 258740126 288536199 566967890 913540530 470128578 886845661 192551204 400926783 128634285 626680224 874862739 946507621 741948693 919347714 423912133 768306408 212682750 826130958 307137179 919251881 480273631 936677090 730861190 884152903 324092872 503992213 408603973 661895467 610452523 997608699 616318096 771708479 736381465 851981597 329841973 597844222 40284336 545043358 895183496 908366010 529109543 763640343 818574208 828496971 900187026 941675663 63692296 781642538 95006122 412027012 204178950 362706974 139501940 956114002 331608252 334152841 706271201 837041757 40230415 855309748 509324577 927887520 231216032 667099427 249869200 655080346 585720460 692469317 798446756 877864794 176458585 487931023 242458178 713450123 575140525 882278627 969949363 996567275 98642375 210722167 230655144 430376732 957780409 986655906 52488295 335727565 71500769 401598809 65314569 655781382 201101264 471144413 70612008 722403699 71115144 523953141 955240207 974857423 651304794 993385587 18387977 245925257 836802818 874652277 523058615 738911141 870781544 888861070 634129125 944844137 540319834 635012441 144942000 146369542 324527350 756880868 770898330 803890122 335735284 481819247 946398632 987286136 536024445 694539223 865174750 907766084 498029858 978325642 975200900 991020076 854570611 897365577 303302765 993128877 824795916 870729887 494231460 960871034 455771573 549331529 854053907 929252116 632448898 788416906 824976583 849214660 364175349 542082209 350976329 675786834 331992235 888366572 710149078 900666760 88191689 576005922 12949440 278879984 236008023 383477326 488564241 722077756 535008910 985483711 600144841 914812964 468756234 651101583 484770206 550090346 977954290 990010941 871648822 942713189 338782269 744780470 696051856 983393581 754940106 777289097 822229580 996626014 792243143 994818045 596830413 913610069 275135570 613089591 562111419 667113396 571922822 732277457 591577822 988174426 371810893 643272184 829204717 881414688 982182767 992280016 659731592 682073743 208021442 864484628 341014991 735119522 295179379 295837292 458339109 984562031 829658156 905277659 200523067 438568861 157717014 163816548 483440621 898402396 931410132 980933148 634274136 762791941 430913921 569409986 140566120 902212628 482242370 725656859 896269204 931604698 420160886 616774000 928894730 946352246 699554333 751696341 686973497 958766235 519453081 914682013 976843239 980578046 381492532 402346031 812056235 852596316 670874147 712231562 250411783 621828097 494947386 912135291 511408897 542502369 634266981 695936691 334823761 392508644 333055399 337472720 494513301 601666032 470912530 795518280 180507181 520378393 668645153 879567766 958679552 974152120 703499178 715793555 333683925 640677473 314901945 373037442 941461967 955879338 512824534 645921383 221841156 234279831 251054461 384429554 561597376 919912203 570445644 960444880 22814186 951669646 458157309 719444833 879111546 964727722 234767632 740899773 104706465 420101272 989736080 998013182 630415148 771918970 223305980 934310055 596132487 979609257 309092140 981444912 565368691 604883490 128800320 707160398 794659564 946361203 409657017 799896678 656076077 872476914 581180270 982757074 673678394 874429877 443233978 807504176 470646688 867476535 389304050 998910641 20490772 902030469 864607308 895402164 194546981 874569512 653547422 749134293 305672674 596312566 82320735 641232528 905319037 999163330 994921290 998078516 398096918 668812620 554784963 628469100 338873102 621112442 65359113 159436510 240117727 977594897 962841884 970888506 594661345 954383130 198305754 437953226 819654897 921525574 455932903 649720701 873746297 908420025 106945807 689038721 744962883 896213345 399237836 531598954 239534145 443255185 145857359 231944017 144085230 279308075 746222956 981478177 670716126 985387852 388841322 918979530 936681859 962547707 86310633 751754606 173702507 424005403 211542740 991038319 759370699 760145515 115060346 363908108 67460146 958341701 716945925 984393832 234754709 867619025 284393190 878466230 429000185 842096085 304795632 484607567 174975381 461463803 856506302 982511397 25270903 634657766 858181027 957427950 605104402 797518010 184335008 704281102 765804026 791506890 252977402 895526237 36616846 113756084 594714837 684620429 663020930 697875527 597529382 636699893 412893793 752418972 206366882 548921090 897223692 963364554 33258987 356828530 106049787 846761661 492966176 748817068 100744832 162928928 618533742 798279871 749024019 962780214 631047569 673666115 644192414 897287163 203964370 475198408 799715410 987696082 685025740 841339886 586167939 974684547 236605553 751672148 111664354 504345704 734065637 929497074 867947969 896357837 14380598 921308451 697939104 798106487 413223007 519801506 630252161 865738077 999815566 999996468 46164604 428964599 606158540 634256765 717752778 794533519 197959121 653411707 319263249 550827538 438068655 932151868 768538997 796574410 398301657 697938730 14547409 288757572 144759064 766108555 750497832 759503346 299377797 830557569 959095970 966280936 693651470 920188296 416148792 444951720 768727611 979157180 874618527 903179531 515335173 805232012 140289191 552687794 225193827 745080320 100204187 919224373 834799572 903375626 101630602 882318214 729149270 828177863 49219877 292559292 70965716 698041085 234051506 744930973 234979891 594805565 618354042 729380542 277459415 810129140 541070770 567805290 781473753 787129838 746287610 792070385 91309704 666139855 163095962 549618224 282486842 930991105 528072835 718195284 363953643 540001573 609524473 933898580 256043849 652952132 551832318 708444526 917144601 992576612 39164047 398746611 639308086 894034418 219184726 572213224 732529849 928757862 124731681 262484825 971409042 989111248 186906222 785381979 158809244 872742183 51594735 683057887 563287381 995817107 472320510 552771571 352156234 866523094 437460795 914235820 627453899 887747394 970839796 972805631 333623579 513431208 39281465 287176774 88213612 710907713 860809875 967918031 50561807 676252601 629715489 859551294 729927858 948409317 227489077 576819471 128611939 911603349 107969956 605327054 639458454 966525116 892368720 942980277 786565957 843627937 261533827 435990737 645099233 962326544 781223900 952885621 33001780 358522272 532376263 789976027 727839636 745833354 89018658 732415042 251922260 740989134 417606850 511305233 666967538 809951391 979170256 995988701 520322520 952482528 140208978 487725792 772340414 841881358 520627226 701078707 443748697 763899330 972508063 989808655 867079604 910213087 354044651 880228602 495070385 504308994 255119106 555318355 830059855 994807566 177734174 333872674 369477126 985765099 474345160 622472966 889238842 987894541 700505344 764269932 382160685 789143831 260554112 496013090 618564629 683433098 67893935 658457453 144816578 517669086 574108943 738751865 903975787 994369431 868188770 929094625 264574367 633486021 81543852 235842014 313932330 472211382 669079618 926222835 232062062 844586435 947193568 984519682 544171388 640269097 179433962 776234722 835529914 983781937 381786281 662317878 67023910 215205717 614801154 966287326 228446287 693567542 839290736 931365002 944518298 963849759 769969441 880424493 536835368 935609449 327771774 651203913 940176097 982270485 296509637 382927840 785793859 820428668 428100886 930841732 16326308 642343407 973727113 991356611 846760134 880758621 244969529 247056788 692852340 959172234 376502953 544807208 363188738 623840598 677056089 780259764 674819311 878086036 732430955 993216862 870174771 928845071 869690407 900140422 495955373 500153722 396428512 655171949 17264862 121015780 33415161 218232880 939944745 957940092 674091280 881313214 508017691 675728124 454263359 699186916 679730232 707424063 275841895 808717613 527206129 738319087 545828219 803877614 373524101 903921111 666118875 753761474 195968261 902817691 652884413 983830218 103520140 650498867 799442972 967016737 308804385 446588706 605970592 631925621 68488318 272176978 862087385 979572555 17812518 205443724 637335714 934723993 104224177 443727625 348850310 378612047 487136539 702200116 134436722 619585361 512902333 962952055 823869774 982085139 857283681 905233431 480449798 998534035 640826896 873274854 302447869 932719418 97300113 183618261 150228882 152850663 963201159 974391418 332365930 857572145 947282553 996000741 318976104 850367583 455913960 783590834 828252754 891312863 846403825 913139325 277896777 295844884 186767847 644915386 771542619 928312640 766259327 935231579 477780310 923455897 179111129 344650735 270520041 317354159 691949493 981847892 651808163 803224751 713098209 742293758 649143747 854351503 450379246 842672931 847500969 963309949 858734087 870508228 143254818 172947422 24992875 636036238 644892236 990127878 714954887 811446832 794320899 815421645 629652600 881921731 702200052 746388749 894476763 967580741 287820167 467106831 609390134 940883670 804251108 949679365 654659806 925766145 673393869 706580832 718839213 770753933 46556002 724509777 454757283 499403647 910379204 952717579 769059857 788806563 655257043 967274587 467308801 927032149 355086097 535374507 804711085 920341218 638384442 865140929 386076623 534393866 692480226 706322066 433215973 509030233 413336840 711307952 633537029 826450076 65020741 93053719 818040903 875775527 972850360 974745742 722521453 744449098 950523209 986130861 178768457 584979696 809041287 915344907 954246182 960781097 288780032 697949150 907515785 956043041 156365385 473580642 995241499 998608866 917775284 985318688 406775663 807805559 576409476 629823747 532261595 852506432 800324857 982448688 921533086 929037483 648419951 780176370 927169472 950989408 79703679 568017848 394612422 815940323 913773468 935951594 422849548 625575076 79712368 778380943 912864205 930467926 318279909 321997432 980407765 990210221 618997892 968268766 275671931 338707648 743261699 795605997 97984033 365277315 29585085 309533526 31510657 714550308 547040568 817664933 348456702 577722736 553447663 667669316 136155481 495875402 653569840 672723442 831279009 859026897 568774659 835517347 289480734 554063502 431207523 470981005 26992623 539368300 217027777 434163186 100575433 110529616 8429716 886662222 967562718 998474131 88271899 879021190 147331601 818941487 310872565 476105966 574070367 893074094 30828552 155314579 141129273 504946301 200096508 355094765 439075687 621434906 936426056 937285872 36705506 965513952 678074067 851857893 916746950 974498405 299942437 891843492 75164508 382965396 942361554 958426713 23217943 176564102 125985825 809915965 841954383 966116348 807944277 881418096 512282775 632891369 725649581 791802883 685062627 780947818 261212386 472226880 295332519 812837414 221215871 658304885 343633268 754068515 218503199 840769279 875844209 965515910 538079728 829017100 772676893 855337195 567654294 696488051 101726251 837927510 792682507 879782831 77868292 683430919 647205392 711467837 157528295 412843243 692806535 874686243 875353002 945195441 175637461 922170063 357913673 714909123 473904363 964135796 181420409 409178496 781730330 988348830 70370768 825083322 906106984 993026123 421163977 690409523 47642536 226786450 813516365 990078457 728256482 730378517 664809210 873452064 544740873 602457068 856993713 976779911 584585727 661993634 78094754 711983730 698756154 725162680 781381521 829726745 767890811 832914771 63937402 526900682 460635348 713011062 767573383 936524217 940337701 978047096 419838771 705798779 504683561 918462063 47409791 346628313 139021874 751611149 438998513 951135836 292112767 518636098 388285599 910665453 835803041 986351739 146807937 396077489 66276037 675750815 490716071 637941168 806552938 890374737 519163713 817573819 362270921 648432555 59859791 494774534 456337673 508031468 589504158 765464683 353634746 583861224 965080721 990906064 853892579 968187086 780778530 927274505 752993970 924352286 237608082 832409447 500388846 880204319 690435949 843967047 907553875 980911376 499823007 598499895 679648558 787145423 435631983 597150212 897439735 916258798 93343135 501476679 520912766 884446910 432556721 508833848 273422590 905716503 79219468 478553005 431962515 513156784 168030383 988146196 305258364 840575922 246527270 635507082 736570940 870588245 423184380 517171464 292037848 809173856 566008742 883057816 826832164 990214284 81647013 358095496 178757500 831048255 264905048 735002326 665778354 854310702 611216016 915257989 586311529 763599830 31783408 621280950 587884848 707567404 482221893 986877744 824209306 880663808 425368338 995444896 58899885 377946466 100742020 159801474 359210841 735923538 360122963 882945378 576769755 894299328 357091555 438284342 236910892 421495528 377127978 585667831 37232392 472532758 445001911 790989235 795816032 948156861 50276516 849676038 304783490 545537555 718031231 985573566 494024836 928172975 122637577 452233649 159094176 274992265 405135917 979004463 959249377 974231377 107222926 476699098 794890101 991868683 583286354 951819157 189052859 365537664 373656457 541045525 353304173 547423442 37349367 931320737 803437358 964839993 563301885 625399874 753540949 796104755 549909962 826820534 63837883 480392221 814314429 900778440 276401475 703210178 604015794 645074273 508926562 832941850 781080047 801407295 283736009 685020924 558595495 933866635 897614918 976863684 349485332 849555665 388848312 859953560 130393903 652620884 522725242 882801520 804520563 939995307 508500159 587663742 831789881 994777782 706877984 898213291 338351296 844970540 287807128 956218047 326739699 720942723 548673947 795921261 716979823 834417589 530002464 994352508 584344465 589108745 236152152 807912988 908478075 921965037 712185305 950387091 706546079 813140368 877477528 890760175 973373886 987746300 565873274 689524036 711010909 950403582 689105252 866635453 374077528 704320047 146816521 915914080 106103508 644028061 595285465 847762073 541999477 621756705 918169701 976988908 722092927 849765368 624502571 687050046 803597289 819571436 60442277 806868388 355207680 487818561 144274662 563888715 609425927 708583786 460205010 676968039 332625579 945474500 564970279 900160335 116625035 917407998 850047117 911297750 58652986 709105736 725542573 921575536 450530293 780187327 312462184 895116266 755809469 933535883 42309803 290774231 832611815 969911629 951754763 997957968 634082242 950332347 348012380 920960615 29363236 859500125 271742862 635688432 343180818 907665008 142931999 241974478 319460264 841873529 578029262 631201471 77993265 500012011 949819641 959218857 615659143 626772309 297002751 457123207 719531082 772496409 741794487 799258212 885775534 932226004 571199693 576339232 912476278 925514681 194693808 794058508 672555814 994549646 959297622 992645578 519304489 612897998 831129865 869758266 117126210 176368611 657700788 736582832 115875812 931501594 582800381 905686237 41649433 228147583 19460978 491395347 127412351 422352643 191728338 867859038 806947519 861586627 520129553 685054868 838567009 894987854 513157220 914198420 40065955 56599926 191259829 380480893 85145136 993572325 736597864 794416206 495299710 868483538 341207844 863397846 320738280 974346941 634053418 967860254 423879881 529131438 796443443 813456381 906511701 921778146 178097842 221547447 79189675 885623798 396855191 608582173 259934671 668976849 874554307 924969621 131541772 699457885 677380521 871843689 481926455 824937498 91978915 241548821 437067984 712558389 340686993 446764745 128204646 984500150 862012644 994173822 339247780 617318500 36858796 480784826 16309377 944686661 282108282 986846069 991634432 998973386 146392788 335577120 230517469 975617894 330124064 372169509 290522528 738252839 140397455 382472591 621131912 988787529 148808855 363197140 839249684 843594401 973126404 976200752 202553669 244789503 442951072 935788915 396549324 685669490 624190770 999203225 447071585 853901586 675551963 703015481 254003148 764901346 629825780 844190787 394180004 562129669 184190351 380900344 377933349 602986102 631135888 758091989 125400215 649785717 176090738 841331251 636705758 637438987 315414499 627068924 394399510 936859914 490700888 730215784 384904975 455686494 182053637 449295314 972432387 977296410 91103436 564554608 704042840 801646191 977747574 990593604 145345101 350993075 133584987 414940886 3579932 389843865 498803751 577447494 144761173 925782147 676951231 749082220 762883408 877521539 616178038 949126273 888186510 899143710 891563003 971974004 39871247 961462609 512747455 634809231 165736901 371756447 247333289 395166776 964653777 978432191 463146740 943718451 891961989 945054531 275452896 387049048 261150272 705363062 740925987 955570417 703561597 789859374 684332485 709394019 106242834 146535617 988506225 996555386 933550672 933562098 772582415 846538868 881754734 945803392 953483138 974867994 115545205 213212876 508430972 992334029 95174123 477164256 214635075 653610974 862915897 890370616 22768052 564219464 722302938 857427454 839635152 894320175 304654997 900321166 680110413 898083215 80881781 208781159 485389898 696590594 991303889 991344090 779002642 932546849 627133550 953725612 495400296 597491319 486789547 635203307 564644766 816483325 969724882 994938517 560920128 907489601 776568631 935776155 483013366 564991961 529121687 973847338 964031861 971830468 880211195 987769493 273924194 502897517 87307607 607611514 6937288 286789631 191051868 484660010 600513068 739011009 43410924 150252105 921247123 981936276 683731590 883987188 728314912 825910177 493170870 731968821 393725689 812295298 678320322 885310377 801924383 810554833 358846299 536951995 739862297 980266932 158130545 732631076 683540840 884244928 517248129 651310313 323046731 860157329 370268336 983906669 688699074 811150306 399057455 971324081 90707722 795323953 668976906 875918603 665413179 769056485 424816089 507933012 926798474 935444583 871066169 933180611 985748140 996553838 876353229 909198805 451887746 904895776 212580415 394478078 134365243 201086239 657708907 893459015 616744341 938047423 420040238 522606312 633739924 740668767 507782599 923547120 900176423 946574484 437727702 897419144 42086426 589160941 388132851 918626492 180545902 963078842 705674018 779490880 504800241 576772659 466925847 938164294 649857057 854402764 110606688 368818035 967057007 998404268 330707201 634686031 671306092 948570738 320122404 447232955 132512397 561398153 102302511 900091472 195271585 602317836 692827376 831745665 98734939 229238945 327924213 482235044 566631250 788641380 918047292 952945633 246313506 345519368 246777170 619179866 78748226 142432381 228512294 396829834 981797062 987832751 122002278 429846715 782545329 882381286 762268073 905472770 815745398 928338166 70421325 388346798 184304471 492366431 963474097 984997824 717954208 824060768 875234856 917734606 998183999 998234366 136002875 345702272 532858366 678296951 448111862 678192141 643883375 731313846 430392017 556634828 122029340 918047879 375395713 914227966 132478369 320528988 584186574 632988464 425290297 787942813 883250366 935253267 183000503 959797621 801628470 912729302 247992227 970836025 454217634 871926642 620455807 711223070 151453871 259636093 892891065 919361175 919411528 962413552 952621171 957877951 353087972 429961867 662271810 968109645 900762312 980048428 977824364 980705408 693405196 947612640 51347212 675897957 931413732 957832875 202957640 818476708 178819062 891388179 751386115 780599712 788017755 827741493 82549828 864961830 57544260 121473812 298159568 977619754 615371289 998249780 885783016 963264166 364171181 794606255 685058770 833347855 375468833 624148969 186037801 903561199 299106866 716161090 246917354 909724649 553947533 993024745 537688268 683910035 788146119 849553436 543831072 957383551 354053125 965353544 492976740 862068559 607541463 756094269 509372762 623304046 231352656 350161548 490696595 738669738 377097011 713067310 798913487 929920418 963052285 993748987 364706255 811331945 74540321 115411629 845043308 863858223 372551814 888107757 192232232 845166564 63952457 966387640 166343430 526127846 648444915 849663789 213879778 351411716 359170193 950220611 903179933 974834944 367478024 631998945 572243042 680311876 865324759 875930550 27287748 705654082 500408080 532837016 664169747 965258126 509109655 571588902 769013747 772735770 279135842 843534213 642292474 649712803 482076228 562298091 737084486 884488573 322141964 849803633 649208359 771884005 37096431 785258524 118997379 860494857 657873619 941291681 335102128 654883596 449913138 949910261 687550048 771124266 784262830 822252923 12699485 690065844 581369125 633406294 59655606 430139332 617230017 927329585 713369744 798406025 410728741 657526547 313893747 509571672 226811565 798813574 782490613 846745532 381545501 716796252 458591746 596619517 978221224 997863077 937382078 994249152 418172262 790079154 523822559 997537182 928100529 969977673 337028101 534053245 634542883 984033835 523762817 801385413 989243723 993547726 474388956 903211300 415334549 431741640 207340700 769369421 227333894 359301141 876108641 970995964 985980606 992731515 203757920 429871736 967477152 987435960 173098281 730677157 955193674 998077693 537251522 816588068 733364098 852038145 182670506 865702802 16099518 940906192 719326122 906419647 855028437 967694377 34782822 790449305 847253621 946354808 606366210 866342349 325631722 661606371 545684591 653114826 539407896 631890981 327585666 947725982 953283207 991951034 653008272 707644004 619845929 949595693 292794792 374583111 478956610 528614138 933877554 996078003 44070054 416009380 485243171 625467598 380156915 940389925 414237070 448220363 746711457 800795353 489001609 578315509 359054065 871026770 469755831 574980074 281878321 634671062 864659142 972861416 800775134 886236045 788877963 907090860 750705051 809942048 500226451 551715877 886985304 909599442 488049572 929945687 346774851 491922322 230390011 651925347 59861486 847555154 331874656 737869304 332999083 949785137 896828771 986912964 56850348 778528622 112153979 389106883 858372595 949897237 47443440 692773706 489012393 686944738 884993468 951179358 735779416 985236649 750250884 955323051 624023197 922323685 360495767 894378653 679383051 989483590 495721534 770519100 319736617 937842567 448439652 626112351 176656220 908206822 297910839 696682365 966174058 995429842 759530075 761882569 225766687 536220127 67725146 412778977 360893834 781821038 966048734 977279114 742666215 894462053 909379071 911507946 632002836 741997386 56185569 629012775 66658872 920300104 3969119 902333438 979138521 988495092 135677551 746261618 271088742 295562812 152261556 837689157 990623195 993859781 209012039 752306907 622282632 929201164 723580376 856264566 864059869 987325651 953447160 956003499 608071957 688705416 212951163 744606118 327495466 645812636 867274201 994682172 362175032 763049617 771388470 945881234 758752012 773040376 40224611 331383727 277808387 716092597 949206062 977687597 674484780 783309264 771752569 838167865 299793567 808334772 333804689 764579812 752789521 955492277 397291874 742090759 965594788 977160033 27714499 662896330 904682774 994427437 878250062 982044826 598493001 744117088 154329112 593330900 184575307 725929513 262795169 281867842 706726159 900207448 933134832 934854872 175020360 832469473 708111758 862417102 269596566 523420571 173657510 782299445 969870280 989902803 811111133 984005507 87524042 978631093 907167033 922483596 541346941 635734537 145050148 364271011 771451988 782056710 607121444 653465751 500432539 608843549 602556797 642201907 77275872 153266163 529254365 786362166 583982266 968380417 786693554 930080607 961511763 979350080 586651232 718569273 766919770 845810669 414247292 870848068 596314504 746095430 292353300 465701321 128344771 768460428 257580065 550497654 396708526 569423547 16430802 62382755 299215749 737055994 181084400 240988211 568054882 869301455 625725043 706318353 413836132 526898925 819511064 882226934 31294506 248693182 698303773 875871417 542541298 594869818 704409404 808427397 45195636 855060927 249946773 284223688 682097587 785548510 22902105 735923271 627743513 950474376 723040318 787665125 793017280 909600338 674565891 866072183 223002351 292218732 821633801 932699366 355342473 567044099 494323735 813067566 708006138 973710747 785494877 814358498 473089004 582777143 824077704 984920110 900098270 949579029 358553686 420298871 840933860 963535994 719847955 921670490 922675553 983480158 587292811 922648542 632138114 955981882 808976540 990265513 968287 605423721 67515176 657694489 420436911 657132748 991047769 992678503 242607715 778628499 650900846 826278616 42508571 601867971 906315673 968727894 898196542 952556998 495131435 842393041 313106743 405761846 220574329 569014359 228699009 504913916 560144598 710765362 723271268 844583899 858935670 955589931 450204010 737779074 669104460 700382873 460347105 526729233 237358432 693392663 323793998 402558842 592084200 796532981 370691501 592887413 263580308 353530922 955230806 992671144 770524749 782283523 851436532 884786117 968291330 980373479 821983573 952310946 392484115 483257881 915919406 941456649 137954848 934815446 992926608 994851153 416928480 880758552 765119016 816881630 240079463 611708407 675381013 754089667 310372303 968570606 20611571 71928822 608102259 929461338 94465099 843154063 906809695 961808191 340297292 858138399 964842383 992254073 332653793 994579707 402046874 895033032 925671328 961205818 476582016 540357806 384413355 715047309 402581821 423912456 216451270 927426805 448794874 703925996 679286662 885098495 756398852 871666668 137445347 733922088 904593740 986262376 411107263 502780137 732682922 866935200 330590503 540476141 54939401 751166160 138549706 697267951 195888422 876829170 719904284 966815223 548424357 655997038 208583889 642938676 787669820 854727457 145094806 797773786 555623094 746401962 73762079 912867584 291620193 639460175 233297803 331802769 867631012 892505264 164443334 335743859 826410757 864849332 819493549 854491373 642840081 845289333 447801395 882939977 906127122 995984811 358803836 666157188 722190672 888930555 679738678 942215560 319400056 680230614 286474297 419904858 597467187 946730573 806474279 823700147 998969507 999069799 16529710 846641539 486801255 946872397 405726165 504180372 559957260 893646976 497229574 850407676 793433445 900674834 747541302 825757161 288305530 563890009 9570272 338290914 758315833 782338283 576413785 940847537 567534210 714887142 298338941 843299898 743695730 860532463 205579438 657937373 81364520 320145500 974732982 994593921 260463146 763386628 225596983 650249984 200252960 412896406 834119028 893951638 138796629 883400740 552558338 984091460 708185331 941092771 424356073 497683769 841135589 983419868 582440703 884209412 612800731 946406698 880188176 957597607 278174396 398807644 984917213 990725674 819630056 921433290 599803288 799788585 723874456 940127596 438501037 619640435 909335140 984598325 443108550 782701841 587050381 592486201 696431072 729055405 25949030 664621431 694644068 772108201 955623649 979576286 892929496 918505615 648988954 667962593 983622837 989531379 483997854 877793786 240655345 469490426 60755907 322816026 555312455 958653575 148745442 681169968 527062203 900165994 930057717 988778977 17161513 387346664 274407145 556332187 149427053 185322611 994847726 995510117 311658663 595963235 270004812 510352504 41272525 147953487 728572761 919261663 314802066 656486112 470315103 944745196 684273451 745119277 289567397 971189854 74322223 766031480 706578239 731260273 141230581 994260297 779381640 957485976 306247668 376495903 75068781 984864966 997344062 999030596 153056805 540078878 287119414 900929807 695205515 712967683 972281737 976867832 793466731 976049753 980022947 999136010 185989583 474985604 46480395 50283218 126213005 334267842 611814774 755354996 236891676 746271286 621967107 720576299 427502479 993371322 373675741 549186473 255827141 322394446 286084603 819553090 758410124 844660438 498939910 614938486 425338251 633504263 5334128 278530841 465424692 564615881 564623461 854495906 306880614 962136497 134233324 611842039 879788922 962741690 200397308 873259821 218312325 992408615 215137694 520951596 429436611 965295994 952347503 990540309 679071844 952797202 547954006 835253373 857178874 981177390 636016888 717827343 152134596 445912210 563211119 911470825 522490447 572691709 872310580 905327746 568196025 710518133 939270214 965429723 627755588 785297426 545026746 665761151 498517828 855329058 819797843 852774375 677630110 750214695 372178588 981011203 368172957 676284109 211836955 724424237 129667240 916724217 307004460 357311641 610594943 911302444 583077270 783964827 806032273 969701150 35777426 590943919 155123412 404312478 14851865 334644004 834662483 873957955 233767213 313399639 331369196 409185860 383673921 726731710 340075052 629067526 169931258 235094072 196187975 694742572 183435616 328011831 672234222 963347502 458426212 712347072 150381215 938766286 928104256 985754382 650988200 841310884 124085904 566044941 980788318 989672989 340435927 543679622 674491412 728535313 642469657 805320291 688826496 964923742 847728868 900401908 602587937 769386783 169842817 364625163 477480398 948247468 840606125 866383201 493832326 702079796 728717048 900423707 936629350 989340685 771843982 811172073 578552732 956663023 242934680 800406614 107348852 473625208 28158507 545731718 82720941 828326357 85698810 206695438 133321063 804515420 759341406 918102427 830055021 861493666 941904359 960270781 281894892 463083468 126983850 882036515 332998818 993262883 736956339 833046322 153233885 305558135 535390445 853142046 846840432 978840060 96696825 330408246 869099055 997319922 205371889 890797271 231567600 695531353 76460871 485803414 110235433 969125239 30843494 226688928 784144189 873847625 230992547 489807487 826751825 885218223 593171477 721824350 404593052 458673787 654176898 657877474 808296877 986875906 754755697 932901613 943116388 981514835 362554407 537704284 680900815 972165223 687442211 887944002 169261194 929203807 273207685 915212636 398952576 633886576 668987964 921489470 163077678 826264538 744754811 844200649 134010073 514583755 196743900 748810570 460285432 922097009 118425421 830745141 208600065 337303358 214739161 229569332 42412343 467357736 873482897 909346967 392203722 924050013 359214479 515769522 289730583 511934810 217705811 672950245 458429073 617904148 800224206 853809187 272785972 385646928 947812260 992582236 424921893 517210874 579079913 988246862 350053335 358038017 95175082 433493779 845308685 970958461 873275522 932723749 289122644 762911745 313220730 570416976 807471316 938196556 165492267 983135619 585700946 916541727 179904969 348123780 679939980 822524817 946255274 968143112 973734602 996723369 761052670 931488208 833940837 956676139 77572656 876274069 327923647 565361402 789088627 939553401 52878385 183592686 352236904 899228462 924381505 977291049 127566168 155576999 319667921 944374875 440769676 802970615 71927972 395359907 397945285 527867548 624199520 663300444 217434375 636423260 230007386 872008649 849040186 901600202 446570335 832943382 468327661 526048270 249777885 496857273 477222021 691469272 715814479 917912731 674003100 903660679 915027354 980352462 271181985 385765843 147007159 529963296 746660039 937568476 515689969 727180259 276043119 846412470 650056795 800174417 388550088 617804065 253477204 274598715 68054402 471382679 994581169 995903866 346063486 727158401 704959516 776146044 183698517 561171006 959066137 989610486 810672842 841978435 427719550 586638287 716011301 932587210 915032381 953212564 538810938 764241299 651990704 776390292 777551082 916173827 614528440 777609700 618055025 698766314 717972863 951299714 493087330 897268865 860065521 975636061 986117793 992995647 690908496 883690652 729458168 947034537 867768302 956806119 63890355 465977810 106136102 397234826 527139621 888326081 109195991 751428950 52330512 927750455 435689370 785869481 298119132 744881598 594307693 976902529 999010532 999750100 316228972 641700660 603638146 973964480 748446222 870948416 43660202 544804513 206888755 921955866 357106799 947986212 174728604 231998400 489194750 549432994 873174801 906810421 926096330 963625772 676900892 678634092 646356776 881321244 811876257 993880893 216674990 971715563 388729393 555291675 813596613 916376792 13275675 414635970 314421555 676717188 626635803 881422254 442496942 862466752 230027815 562463844 709058790 863721353 868943952 945056190 544441677 826012314 924346266 950846592 481865856 691793360 664751107 953780346 333469199 636815575 418404238 820993920 946168632 964746834 239347245 936373923 881826350 921677300 249785139 384070566 739289581 941085032 266057054 585294478 631109407 754382403 883465023 887672872 245637858 716683250 672151907 899978357 707859680 801548838 310239248 765993717 541945545 741146268 921249717 986386341 921332720 936798258 871907891 888531032 203876984 500498952 106429439 872583877 547723441 656811801 234982766 487752178 711637096 988521741 711817034 862867966 84038885 750794398 467590432 554445425 340946002 786561410 872001743 963757067 156435295 236176807 273206309 364894915 279913911 843236980 431236357 785765141 556823103 725165787 772697107 891336705 853300864 868893001 323207899 768988602 282033650 897392120 924494252 931034730 523403678 577420172 934522179 958283440 597963324 978180897 949430574 965152767 640706276 990406864 976651002 990943268 721863582 990843212 216345795 234738374 438007051 624602535 530166944 812460915 443225111 858802136 669699122 972738010 114441588 728751551 227227279 959036903 423867913 811931361 842327348 909267720 975081675 989255393 554878464 668803370 893246172 930685598 879012621 923715066 725912184 957525307 836187717 973303642 80398618 847279251 742873962 764334917 746185120 964778984 285745120 499870944 516963335 690179604 603250727 604764832 69222692 649442251 44654000 955398358 26966709 857578816 242529717 635062920 455553225 518893410 45283294 262301561 539517812 719039451 629314051 990612275 793901521 914439411 411309658 569419943 704156693 822753223 648810427 864606457 120972749 830249765 671105373 781997184 409197682 598402040 959389052 973194092 573815639 625506967 965278266 997151686 246210987 602401957 908527039 976769846 109379336 457626395 661912585 788918135 234599753 642738975 667524163 739122292 712023452 858738405 498136658 684855051 212502258 558743946 644490458 751951155 424975810 540167500 516478488 922716135 479616223 852859726 964246126 972623517 583527305 844980459 209875075 990211278 970176852 996229902 690184791 999173518 123872412 499529137 157173482 775792690 535851295 638007273 439921440 583047470 566842884 780456389 731877313 993345885 22826494 772811638 973641545 982045999 631521976 693996922 141343117 814939882 816134594 820795545 519696634 611303613 157822581 530958111 957315794 957503247 340408517 642379777 372825433 475427363 957285022 961160314 868405959 979887154 537800960 884173046 521804679 762347826 142683053 513277045 881652118 961096329 747597862 812977034 136612477 626573899 349102390 989967602 654541640 711345047 357705105 625225425 995551696 996707925 266381788 377465046 88596110 499317173 75409894 867602970 563845476 755671797 233712418 554878236 761182646 886780314 260161082 474514300 4307472 249088119 761126478 938176109 22757103 152807712 760400391 880035066 532612489 873985701 472358671 820020864 679828763 953032049 719346150 995652724 246010476 714256639 467884290 838998864 89507237 888870534 415800217 518033523 139233008 333647851 386463775 547931648 250639349 609151560 194943080 843563728 989985562 990149134 928747221 935721295 902684684 945264832 828115862 955681032 14397655 618063313 207177404 279580046 233077049 841998751 103128384 449164255 118698615 146314608 855270090 859476664 968684325 989001221 137053802 306100178 597513934 649163129 219762763 690544990 79845744 853580672 852814888 969468450 248297896 462848114 162467132 217929486 700197910 912737810 735447363 833553514 189434960 728499864 258304319 628708094 102037265 564580267 811277620 825275149 494032597 559642397 21460005 557370664 407806129 453955710 980856944 981777923 621260798 812741555 956096948 997621407 729016761 943268040 170202093 400080771 42869982 262460700 942406725 954034228 357753692 426839621 94982730 108776939 932750326 963989290 273891968 368049376 401268520 900500569 486182616 858604944 899876369 947585301 203014716 423439100 419624981 882065694 347052954 915182178 506199480 970231775 421536643 859302795 325500399 567792589 346513955 952234460 156796883 860640969 360582381 555178743 650416475 833066848 305194783 818802374 521928520 791028968 263104019 478665475 42609574 429576448 102195085 715661412 885579803 888030006 903693234 958912578 795201902 929564841 119489493 863638434 773744779 788819846 803853088 818486458 620156291 846648235 313707266 930907501 344025413 878204916 262370127 752224505 597065120 928908731 972396396 979512163 365326137 753956533 342253499 356282759 91384460 532060138 937436522 993536554 272129337 928555108 657585918 855010892 243983535 399888603 364011162 499717562 724683049 855487217 458594188 710401966 761229636 969968613 273590287 329357859 103942686 237757704 47875598 77628231 637912942 859971668 894463600 985607173 618129032 666865992 284302449 725996755 841629340 879006359 464840274 988350042 801654773 866168040 544743338 551495613 111447639 194212952 390210013 831228148 697134578 915528962 909684737 990320818 35579251 931341837 528366924 584525153 54721660 365767501 900930561 916118740 484937172 578440578 684416499 970481092 784167907 953236269 117694013 502184198 297206569 643915987 155182468 447257099 928992614 961361195 84315699 490313062 665135181 864648140 848211825 884838535 495002389 784085093 900390332 922351512 300189092 437714489 9000294 914797639 901020951 929616909 886656602 965608109 748086133 832074540 418056551 746573316 4696186 427986338 930158656 947520319 127603983 224715036 282988631 817305263 740896223 746372932 693415468 852264902 31590704 813399557 407861383 690034260 953866108 992928718 223207323 281235992 154944428 465499493 674532296 963769900 669074616 734301958 702905441 765946091 338693484 432922523 753533940 839762663 505619354 649379476 423924390 539794451 480040801 647138737 804787852 930326099 780022871 877215425 140623525 655588202 975360190 990070893 361464315 573266305 199038622 780637495 158563351 539140701 498283448 838886495 792230741 988488293 240397714 845199615 776683844 796987594 874581696 899091414 543631552 708323317 240561505 426649810 611893916 758763891 194529388 737908851 162082579 936652065 470126530 866417949 904448647 969151089 239069331 792133807 807621122 839044755 82854100 966987837 783437809 966935660 733324795 995936195 969101310 991448298 564771043 666585935 499996145 539111813 23890150 984788795 641891203 707944462 996442423 996856971 649939723 879259682 562979055 598652295 848220399 983214770 990547609 999448124 534417896 829764495 852939884 858111802 194905257 724816793 599525378 803389907 658187136 705964536 297133068 991295869 73860386 88014779 498741158 519274681 287394112 385233722 457300053 990038911 610988303 814613659 491595546 868947792 324734074 385538753 127175185 652231156 197690832 940447539 167919248 172008964 352181542 751885540 107501060 119509544 783389436 856423748 477876355 531884777 30695028 619515829 758594261 968296269 16127403 172181197 546271254 980003091 683202360 785217454 346984232 758589760 181096678 498747217 487791793 897572726 93373906 348005254 276922308 633156642 597284807 758966431 899502300 949728488 151474212 456000470 287921646 798162692 693314907 851547506 905753892 944021639 882821523 981353514 122195269 500555375 733657905 844449429 886799710 997825444 117869198 534809556 816741398 832559167 837046138 984648827 714256658 918339285 12327144 870186329 221287889 299681185 4395505 218262666 118726705 420521803 627163916 762950930 547804162 857064714 312394515 718010204 437340214 673481486 99503767 704174612 820120921 845332122 270940502 931686557 474419528 612704247 423066635 711520507 37760842 932774484 258085980 863043945 670365254 818135668 477449045 954514228 4316829 703604255 565294327 990340811 256408095 877729036 272179431 363104441 537677142 909907260 229452994 428111404 30319472 842193537 103175546 340755638 407927411 889477316 50730123 673873770 455184721 989381112 993133356 999564010 252018567 404973930 51838595 166413185 713865306 966210629 119450876 228206645 248419905 983243106 82733493 711542887 306155329 858662598 114878958 205437866 371160437 744732379 436525386 708888392 648947536 762768695 201277155 710526918 245908366 699954903 118715563 428529298 581033010 876777639 412058124 726806946 855732703 923308513 887264710 975927375 249770425 948979326 351940405 416224164 533413387 903725366 875672983 978560947 833383174 913630352 77756809 856677829 365013687 655941473 618148983 667364119 927602 635375024 996252932 999591963 644397334 871077699 718000489 724785790 215747196 384151255 253410317 964744914 783592179 919707412 256298807 415593773 947543472 983652785 888920995 901544793 100629066 459569688 484871977 918621727 255920940 829532062 82817388 160099719 230933489 371467263 201479459 306487070 176038289 309867382 98760980 840952398 407768329 742251882 81745972 448014268 312357419 438576094 928966753 943676114 683725980 919704903 348644920 939635511 423730603 639062696 50935145 165234986 377767244 434641886 246904980 785789056 744392200 862101111 74535070 249087580 171737499 623675654 873946640 910297441 726656257 905375742 651139183 669407145 81408328 412426477 422353904 675023132 655140553 830799871 172490652 518848641 755910789 837015278 769238064 878140516 824245329 991521031 170185685 728148067 574079768 638444980 718374283 804410418 738854031 931962290 810516017 914809349 796902744 915232124 608649922 890909678 17551258 303430475 246319495 532828263 426354668 707595824 465318005 507523123 813558475 866092456 449956500 687282362 707092928 803051446 438778716 761562159 39801689 314579478 663801739 714977742 498073994 924869393 960720299 998074692 261593827 942983372 772212931 953352413 517495920 604160839 279981893 333484148 729353481 816731370 223820570 725489475 817224678 926648620 85289563 202771599 629819563 781921593 238755918 748036518 133803722 948195483 183789609 482086018 739985728 923056754 559494014 994186684 812676462 849434620 50642825 456445152 847491407 897561900 909759691 957422090 615805322 645030919 214964760 578734536 800360001 853553235 998085826 998304655 416294459 899081019 747462404 992649950 585363869 923248634 113343173 725481502 326845629 992284171 252800110 379235964 494773004 728794742 710048242 792123007 20650247 128247251 236990329 603169858 349406163 884937754 362699165 816204660 802856811 970727437 274475705 409631286 471127112 661277228 22276621 797165360 916078051 990691728 656945916 999537747 881853431 986516361 865337657 959820385 30532230 281599451 287231714 466380578 364005909 640384283 664185320 768005024 393653416 439595093 492182235 931030250 601334184 816119645 169052943 711481941 454011284 940616354 998272743 998497269 49109405 474796528 695315027 932104208 960412527 966504682 399291311 995575191 330012786 811250658 913923973 948839839 525078868 963689404 301197817 928397685 488883789 529333089 244320579 782050414 834687990 897558885 122963057 851102319 482925664 765340464 172929069 736691513 420355164 763373177 588633072 887055967 377770863 881674369 538162195 928404273 380290256 456102293 951167844 998221479 236052412 753442540 432837596 930942590 401226673 561682259 845039806 853210868 860830669 977017280 196490325 954269878 654322450 771995950 645603119 917353053 462464665 553714497 273223897 705492073 131876489 831563993 74908942 243821248 366826385 930412943 634764131 730595509 343645496 853478013 933171806 941302255 631008505 756589772 871572676 953736325 922277124 994957457 376931118 531878347 486612386 639361211 47040991 822846550 348101577 379120431 380050530 899063051 317538011 366629002 96062739 375088665 643948001 909125591 80903126 502380149 134735851 172936521 381960909 712539639 921703157 933528705 115712910 785235697 259128766 443196527 12546185 287210096 410895838 889370646 973485166 984767455 396239572 890749685 678417368 712019737 70343394 277393598 58025767 963498931 389725722 697760692 172388709 391436381 752433245 860374780 48032755 631912689 690574308 972831594 453518356 672834099 209990149 503801644 709852082 910819275 340011195 796149262 409600431 777381687 535558572 693527636 648629329 792430742 584504510 676972224 585495542 642655746 684410566 887719032 587543704 806715285 460206289 797146960 469650405 944597178 330446955 465611239 899046779 969567794 461041858 615658805 148523377 320597071 262974583 869134491 675008206 756302368 967306175 981358110 487055422 598155506 769279737 860594240 10056381 435077350 756253633 888624871 633607392 936953073 950954896 988699620 330410005 642842710 617211461 685031083 605663086 829052328 762552928 794721319 740008208 920386925 190054741 825434252 755258277 854045214 269280150 750188487 661797184 859324690 695620410 787332866 202967730 651446405 129091993 888919490 262013884 531792793 787965152 805367156 651738379 720477562 597803956 844516444 105330889 235798546 476256313 857879861 464665817 690532336 65971841 837302706 346488137 742905917 574194498 620151854 357504594 971260326 881410249 907802704 668338507 781380796 844726389 943599676 384571458 607996353 231989452 289068960 833433967 962755190 232501454 781232619 956838503 959962112 761051900 995904643 112390289 538985593 521852842 883274567 708818813 962324862 778742228 997075091 450983049 824222287 33442569 725256912 427970402 926932748 149393305 987286368 907368678 997232746 584525797 596977684 96128096 118578212 995681189 996508000 799363885 862453563 890929429 975684129 567369776 834056445 60047353 705698837 707928596 740804509 914761199 968527892 183575589 568823948 477664733 715286465 969033448 971083515 572874098 621045684 783986724 956653175 423973622 557758998 728285275 901865766 859845636 944651623 471778037 541627964 632341523 763350880 111171579 542885337 925210162 965794439 126602378 555358548 777433696 802518749 612131284 941084236 560401176 745287085 957024317 982472183 807492720 827204657 474981925 700897707 188797329 718671954 255639866 925731306 341456374 596607977 811294431 961954444 982513480 998338674 56146185 888317166 199310089 591355011 598682546 789361276 745813154 809880784 828993572 849240785 243634482 771581871 583801961 773981973 219433380 384051120 712478620 734419753 992440616 996192658 226913897 590840667 853894232 979466106 793303756 976271305 66349973 632808129 377732703 384046647 544706362 651939040 788517738 911704760 846632575 978447693 393065900 428894004 99260167 295078450 59836239 522255851 899984568 911201182 882520656 956920628 839097706 907842457 708359460 743068389 102660859 400444129 2213895 174726858 182349750 836655742 893737305 926316332 946949627 963242848 942507804 945993317 386203183 750530266 579000143 940995302 369552630 810924005 488048418 747428076 782171247 937270692 713774992 953219800 409240250 595089879 525802526 797700246 299323761 400578698 811652274 883709241 193212850 588795981 687525888 871091372 535843840 635438645 155548635 502556855 858798297 865924080 935036991 987414230 511888434 848209828 921669869 996213467 319381515 698000442 175501066 961774997 658782296 814457769 813176533 877383123 593744367 707473582 88030938 129823497 126937255 798015974 765136308 920656864 236660018 827835309 983225975 990095685 62403805 136727063 199106593 393349496 312213240 447885927 303148981 465076811 658182604 688602561 254259653 553522713 993310065 997683922 665253507 881307800 740325748 785957154 305245012 673877323 866748404 873463558 200785528 729855567 363177515 452108233 828186036 871824194 487396950 729988503 620924616 868002099 989158703 992999417 8014968 15887176 899439805 970252709 969627098 970971734 863162884 943037605 522483239 632620809 80943546 527692081 140957889 148734534 626063383 677842993 688545888 707272207 972000834 972353568 510345210 763717724 367550971 934239943 826976793 882201073 131803747 660111992 220100360 842437883 271237086 969988711 450263131 909827498 450357593 523955744 725964249 858212279 954069219 958286798 448754494 635825422 24981312 556399572 439698174 924297356 19235852 396542031 716344749 722248710 37790698 670857557 742903884 858285847 966740665 999586141 564351886 708317049 512107606 740723717 868978689 962636498 57268748 162002762 250976443 326042804 202339478 706067518 906431093 999245356 15002473 584938978 887864243 917610235 539365626 996426885 43840465 521021392 616376062 939721410 879254401 927886830 427943476 716365692 972899685 977128214 47236761 615586060 763633002 995406327 437600057 624014566 454338990 807197945 248825108 360835584 355532708 467126334 483995367 709827680 172408474 838797350 450505297 620103446 744656798 900718471 364869328 997413342 276894302 497916909 716809096 939150001 772664110 780617831 398025816 975733371 827550682 920473626 852175523 940303869 895505119 964393225 52607823 941490052 196053806 924532809 881888659 973831972 56751929 402917017 376696599 889232436 981252469 999949284 129928972 958445891 528089445 921954196 234637969 384237582 239682793 332298852 279556653 464136534 512225637 840876655 155415197 440437167 176992875 459213628 566631214 901765346 104856861 964560207 97311736 685774873 512850529 590943941 982399225 988446286 834795474 954310796 260859359 761164979 106756191 205960530 321724601 356500550 747128419 857357811 626975772 655294844 961733665 970786082 381105329 820340422 761396856 953791708 796757608 842717021 177679212 857908608 715580231 997713221 252841241 333554117 515869807 963727417 899084580 963051263 579176698 844301657 962117397 998642840 931973081 994090417 966218859 993025092 63183312 637883481 659699095 783732132 26645883 357672910 365729231 806537415 847355435 985917485 982421641 999153078 911435112 996547773 901502347 903359975 214218808 740816758 691417717 764450681 826956959 912431074 598465148 652027525 366025355 421439526 108927509 474592451 490835543 593586057 435523085 673785433 38964358 862761862 905948294 949152113 310383320 606662662 285053020 815494535 809624201 885022692 249346250 346149634 769929982 847409327 171739473 423262512 745015494 885139780 592972562 884584165 887742901 915375070 502974003 982174890 886966867 918581668 452796424 499537302 183233090 781303721 369735198 705822450 647846999 842767960 328556029 965537432 127639754 310851804 278432235 764461609 810416742 938978525 648306923 990174120 209513494 685506374 136813813 942999272 397863272 603270452 732629366 782569210 521113780 586589348 500242920 881475695 404960734 891751333 979591889 982498586 773596451 815582954 533019895 538449784 639484557 826366840 645612574 662988612 189635402 335803851 56553582 347619806 603394211 691652145 657461110 879389804 978287180 997218333 975351071 981359928 322942259 915840413 474612781 574264032 786206188 792619754 471357092 718417155 835176759 873700831 700933055 923976160 969245563 989647518 156599841 421946912 36845073 935605183 973760633 988896960 347489179 440029111 465247119 663033025 263951539 328008653 109829861 397944861 909527450 987277403 736714003 849457862 629604417 966173870 697832661 954511830 261477203 464830852 954135938 986437745 363146916 729350889 186712534 958099364 364495172 830667787 783449957 933703823 897576275 913308771 864325385 871058751 656695622 870779265 299099643 364565777 997171797 997666554 367402444 889979228 717573741 791141833 713699450 737950598 640965548 658410511 602624772 718170166 491833823 901168703 712074531 722481844 940334564 971148309 458431701 634228435 281537064 951310564 637591725 942434738 932436925 993312045 272960762 625117853 576598554 607406092 466220196 847118951 620558637 968415461 698875157 837107428 226684907 455891705 633481642 932797505 513006589 550271809 789683155 963827926 726107735 988687420 770146026 879712741 418191233 487305951 267711276 478315195 737053199 870914205 278779990 967854329 870609249 950110138 443759642 516967356 581188796 873177225 463256828 728061584 755799177 913611045 40022593 168413990 530759916 958917277 877909356 950054278 601935847 803076542 222866976 944823519 626212653 856849275 909414176 966308118 257049647 593632987 733022040 762991271 7944293 701773389 77914674 553103767 516560504 557570697 366976116 402323307 978376187 979154507 679375671 679810046 616447226 977172521 418640479 461131581 505262522 897961203 255525505 514459796 934052722 946468518 173602379 834305137 898760423 965896331 629973455 913876096 854097188 916457101 390248294 832115363 419769891 454040353 980040315 983251864 408426979 751833550 87443223 818291943 615230849 652323648 386445445 875985252 109828042 895752005 74478868 255891848 1788802 72512159 37897405 85560111 145164913 479456683 123049235 673158316 433099631 936280769 114532380 802443085 548103271 733401172 987121203 987169787 23936762 262162096 457503648 937089804 919144495 939708714 542820999 902926882 491157793 760102325 580618307 995515384 822352763 949625999 117174531 227269103 209960033 708674608 275332271 733449798 292579092 363111884 951094216 980039123 900932732 949835755 88116175 419412400 541935484 757294093 387991495 953302569 521467696 740241231 724246936 923837117 9189246 697411257 727139263 927137383 427970079 925870641 864515227 921846785 652902504 845019558 719837105 755623990 412114053 629308197 472003402 745354521 374918422 591498127 715688325 998754094 595183649 792744833 822857856 840514961 91428642 150248212 567376980 888335689 517886287 639230947 41446142 888590871 286404662 559564971 164572398 589165312 383308175 756531049 550494135 876823411 239860686 776267435 189816524 331750504 822537835 950579368 547644401 560921811 163406816 393760307 538636734 994479241 27193500 840545547 308663860 649546041 36815018 810602558 67717489 799678622 164579024 770670635 52971482 756990267 529300482 696035808 749787138 990079862 36461118 734626774 882745760 979861365 75855286 173783494 215856833 753090246 264281254 816482138 375137513 606452720 623979467 916560542 112630723 693516686 367153763 655139919 697533653 896136264 820428535 958467991 896169537 957503562 929376636 987695862 143585677 498469929 422387419 974986460 679250272 697755480 412883661 596172436 15744381 689755383 496089441 565276730 176592275 773827762 155836505 725544083 26785073 787931552 873087293 884919399 728889963 931211967 566150941 868223591 642112981 723227676 492786318 882269239 24859997 407685448 279885975 608860595 511594225 639798722 210508028 589408634 40953405 973896191 51325743 184512276 965810081 993663503 584546149 751722112 440609616 720065135 686404647 779457197 257125929 319282789 629191237 942561751 30117653 833089657 81897496 236138499 893221400 908964299 272913802 350569418 701468376 948823648 322192337 327636922 190287136 978662966 564968881 798101814 15559941 280837123 177397376 208991984 676619682 971486700 574222493 640749225 310528537 564316616 222216658 982049179 259958032 946118009 146294177 788596496 948953375 986265715 120522095 807405509 767215093 831399335 521298929 564367858 682284855 710179275 229850675 389972740 307132388 792891390 303246605 945111161 716023645 823777101 113146639 737401668 796091441 931155414 745116256 775656414 439441388 893593412 357034239 821894095 464366101 575593023 76872658 678715323 98290347 343958396 749716044 846659918 430105357 988965086 586540255 976614502 559073352 992954158 788069134 915996894 330645987 424330002 225962723 551288059 804307593 934397280 57414548 946073555 968261508 983341575 654908343 695320881 774595490 883168048 627345064 695988889 542963569 721278932 578464743 912449351 755848065 852765185 298220333 830800974 804433514 920490701 915871722 959877200 582748460 606614563 775202138 845474897 236422102 275184501 359291370 649768222 953623661 960925763 195320597 441656217 973128709 974445101 702649978 988198900 757663379 840334621 947628151 952213518 278943443 985243017 223836941 673515053 960537382 999242921 898856663 983991582 267886543 465770877 434355801 469698082 426011416 544079054 590678905 918504208 70846122 568649703 61623933 827292429 59797981 107398894 638200213 756226961 14594058 944270704 104285796 640778162 61725237 141504218 301536438 318259021 603324509 632435955 878050711 944845240 619018272 775987191 136349666 551131853 217446833 402542654 936338943 980472912 961555375 965972017 538335677 856838387 480535149 948526494 94127647 293828419 23010106 461666684 730884296 794681680 321461149 750506375 889691390 896847047 720119104 997796520 594386961 611329722 913860951 930718905 497797920 927747475 355135342 944909466 900856718 972641303 61200672 189752840 808874951 897230701 824089170 842787793 449791663 562784863 961447951 994853938 532962013 817983118 751989348 777494967 621499692 886311126 958484597 980739987 535151386 539090936 516504166 666044936 295543208 355046992 420678905 723474824 867435598 981789584 966147754 976203821 876279042 897232822 175324286 785165407 115856015 841274272 669061995 838527801 113787787 691605224 531574669 748054896 9193841 847454286 928699299 993033148 73155041 415446126 280713014 398413467 571204894 827734319 127825758 880352177 925768968 962032726 641823259 759120412 157258689 963083740 966700511 971459402 910382221 990950437 277245403 721337981 53357391 444708332 384967254 905633931 106975067 912484746 137106156 687466098 355527582 407379604 769365320 849940827 307213612 871304696 288611031 637737933 234122624 779015793 200235586 244611926 652848609 797251905 962269285 986659101 688337447 795385677 477745125 751500532 794010960 802076496 31176005 495003160 768850374 854859846 696213392 844131887 376361922 434829753 795863808 902895594 729327140 816431639 642743187 871495500 53853328 471880834 831278733 914791642 743570717 873535892 384552278 493055527 346546112 940709633 293405936 787534795 790412207 967299708 645389415 678072913 361010105 606122933 179470734 821403789 869625189 969944688 981628759 987909974 622687428 724754666 346576615 410458968 851777992 917123964 858800191 981180744 337102238 982955446 212309607 750059097 850240987 992595712 129102076 814054129 833992629 926793690 792729696 929202907 790351072 968586763 26556809 762213746 219914407 221972092 99079543 265862411 185178548 549373255 852482781 998447516 401055809 844225720 287252569 942713486 851333721 936976745 765192871 819177460 475652722 880234066 820302098 931850390 575035415 753234020 77710767 125862895 602292629 823189325 119417499 566365514 498125958 859842178 67095064 289699575 819204564 824082588 844950041 845894727 442978301 844030919 423752746 726519958 893936222 984854822 339255132 701919557 970996562 974722240 306149948 652150819 948253035 973120644 407633415 566854141 350810307 698688198 383669090 765118252 493983354 694905006 616846312 688527461 842219090 901840928 37621738 796038580 25983947 680950848 248694883 739751909 329273694 925423734 593354297 608727107 958880514 960972198 906160230 945696631 762067336 790864554 927981022 956414394 237297602 300155406 465948396 639527650 413011972 740225528 928034591 966221303 402573441 427596611 520062733 744942736 75023227 970611912 486680037 845210294 514493829 628137740 904791737 972768504 567411125 868569948 95627662 425665345 87350903 846163367 410593010 788258583 588168993 595980367 227542369 252220489 603416729 664142191 571513597 763291640 84109489 102705898 107686882 826060493 976441799 987270974 292236912 600340208 626646585 868136179 424253646 555087968 964144550 993116518 769356899 821786733 355974027 525520805 913932717 987240760 495348102 731322640 169456738 713110588 962081959 989548742 856407131 994310224 947805774 978570240 814450812 921624339 315545089 445579780 776574377 855491010 535741988 557871240 499965483 686506893 285189856 874398225 629898650 853410086 744726236 852699638 753480161 832591872 265142152 733191965 159320280 846306242 87012276 311195872 193621922 387658656 843462914 931275395 524189492 863960854 681175377 759266994 906968218 946643840 875868962 881755933 822809197 999833485 146287843 217616651 386298919 394867120 632975078 949303571 984768761 986122578 128149141 476802471 881033453 960782947 737822969 899419392 684086967 818508957 511960894 726931914 131994590 899241461 595111249 614247756 713741551 796364157 627949577 660529510 36334869 882856139 902150771 931881957 662339648 959133249 772052812 829995309 97652471 205490082 461305856 516399439 711020130 733908235 564724337 982684145 604226715 605028363 408228306 544591023 927060816 972167637 155360456 524702727 37217562 562738210 834064525 934087179 98192107 183817873 517474818 576676153 991899671 998982220 829753468 892486552 951882552 971280574 484823192 524707176 939903098 995402094 194585440 837798034 373907601 459061837 702313474 877021650 396173642 913876507 612555772 893083746 669573087 974858047 401250782 622802250 457670037 835976449 54367028 273257133 712923705 861263901 758596281 807974711 305548572 988508256 520849699 713452453 59271270 229503443 469927348 958769804 475416833 758044472 282044474 427511345 227344967 881138858 690229429 934922327 571290079 712599875 89113962 604818725 671662222 910110003 402391396 698517323 52782782 508388999 140356407 228438242 230772480 940167019 990963736 998970646 577896928 606395043 642329494 958474667 127698391 245406009 686686381 963348045 271063133 617374423 538476567 744755897 497143743 685644659 736385764 777424330 578066192 771961988 793011476 982554087 367646857 476617722 40427555 881950623 728919745 889300121 878784022 960251400 680952763 703064967 846242579 891492646 490730178 849596974 662849359 976254146 418423161 965028593 700283789 935820925 889113556 976449626 502903454 704176505 219979043 245648756 448359929 632929137 684334626 855664968 784347974 818864288 351128166 546691117 492896491 605642533 751230592 823235465 980695045 988982475 273501755 562332669 939618317 982858897 927068090 981908457 767859471 854537858 482988789 568775898 404900404 521078912 407192753 524343062 568000028 901567010 920193264 970382059 332246688 797234025 637659555 778946387 409973936 986088139 823320385 878623244 3477742 516318435 537766171 814722663 790481046 947140184 928390281 949720404 743082126 812225152 863270977 959845115 837276198 948446824 562627673 839071654 162798269 988836741 892389834 932670981 62300083 95161748 355737794 572608252 652419139 808133733 527522555 657155718 386662555 926391333 135846545 195372042 507613986 621221779 667414521 877351133 835468244 960437750 558675924 646115551 189080477 438061613 976195310 981583672 44166226 548322951 155012664 716143408 965032801 992761368 124982804 150063916 94044486 216529625 465113398 711853992 313103769 765465046 406064175 604117830 697575627 698722276 508492520 852318411 20669572 664803496 526049753 880502584 867518395 922924709 551952049 807528566 15135936 501693765 464040358 841197290 799496141 985743863 798214764 930171215 220119482 976588133 353302298 611694010 434148226 922197974 943174114 952454103 625536540 654680076 392175811 868352328 906490668 962061504 950522520 996596376 575927622 900421978 525715675 623704907 893808015 912561331 518271560 689299198 435150756 587347289 936302434 996373505 645779981 799517271 690873177 923298443 831514227 960742368 794559251 957917043 63498202 922387492 731278932 733129195 759426525 925428891 546928074 828472508 129977419 321766707 823605226 955459221 149434910 885975637 33190757 921671400 872712473 951603010 523896963 840500950 750186656 985904346 729605119 773241614 10942232 918071267 722200279 813598015 435590058 931193421 735509054 832255213 902636918 938680535 895746515 939769605 871662699 954902048 238847737 782569461 358416010 632675155 805741987 812811076 824810600 895941572 626356447 706859248 8505095 479215041 703852927 962742548 162068267 585184964 216488796 417083006 594838602 634865103 124065302 264361574 72534347 970989566 507296994 576341484 42728788 219343043 866733967 876337423 640611477 673607110 33802059 117689480 293563650 570143234 806151511 948508348 499800711 979773134 200876041 365405813 49678219 367648893 533770554 538082465 940147094 989840175 154430791 330631599 727255757 921346129 417020772 774453795 720406063 858452550 428149277 642722833 223391297 253783493 538435643 641759535 208138115 454727462 818921573 960699375 71516035 794686126 129066752 391177209 226994189 403066987 665934591 735012652 901589712 993304720 276550341 877294092 732356370 901067268 950224171 962763981 224694928 988311298 302308436 953725455 534020138 972158667 412236522 434103586 936706761 955798244 209709846 751759806 121245035 707185778 590365961 895116586 694292467 850161090 602024153 805879115 39889626 690028141 210248009 795366615 798923093 930357559 79357057 983701835 160381189 803688983 666874962 910597961 308875353 542046252 321801245 713667527 401785246 698733435 688696697 903643387 726559052 902683804 648869516 800760996 11226736 91125706 168485280 960289576 264578055 338942692 830264347 893039974 904002752 966137761 269131007 504441563 248295531 651612160 749329046 890048895 874805674 986749511 276010214 993454588 660642690 959310995 748209197 808499293 178391699 297080779 47854394 356880206 417756705 938914263 829386868 852728579 121105174 696501283 380279966 887382130 563890543 696565393 722985889 841144267 132592937 315785250 179319425 727371257 885030839 885292610 913474018 996000323 792792809 911482450 914151004 960120684 424076644 768492903 921676571 981182036 326887840 551176197 280261594 754693508 919729441 939478476 868008929 875896717 39363670 235863581 877638490 917094165 288776077 469348876 892850549 982041558 677922278 906704768 65707891 924944407 340154918 439161168 462778557 718250032 820253739 878268337 817145745 928371607 414627876 900511004 79844621 703401852 224898598 920235103 875145475 984580793 478897407 529786082 371705122 795716996 366009366 935347621 847456675 951946673 939845599 973248097 61723442 778155050 893322926 980359590 684173021 815952246 626257697 982717855 715328682 869966713 340965175 870519928 249388425 527045858 810127081 819195734 509627728 993593227 577968472 980853012 312045918 604193021 895144335 939937604 487288979 782620300 5633228 854597647 220724515 944795873 563220747 731851620 438264552 981259559 309065355 324780032 355178102 370705780 984778584 985431221 276778044 485336850 415815923 714554900 966126106 981472267 92587070 990813775 252144844 561571477 685751873 888826920 861048642 904472573 281948749 705680296 486719704 712081730 198008233 488928746 578175495 880619956 497704340 866884865 226588968 252542288 21204667 441246725 773236016 830248999 385038576 518788309 391443898 550298748 818353854 978303003 227754756 548541003 651883343 692295755 47467151 663682024 871355814 987178789 200049597 353799737 632681514 748844438 435228450 579405750 621456561 628842082 783418971 913883693 129531387 986450594 394192295 485443984 808056778 974738214 90026577 363341185 74724608 360339777 21781978 548775025 384163250 664966145 510837366 621066056 692422237 942691213 893997317 933754455 312069197 343509993 349853735 782108838 845162260 863632838 165918492 374282825 903799540 988542325 133509174 929809188 672166750 985106899 885820984 931268947 219978306 282127074 993870387 997366800 664374835 769719010 970422729 991128395 121272498 921139224 19739038 366910116 628295786 857841955 248864539 308963273 113171331 346388931 146682019 273758479 262583197 610778627 805048959 812636405 911388466 962420054 738934227 793692756 476926641 980285128 24349653 316535777 260256617 649764870 866884015 870012045 358824643 929579476 651164689 658293118 609537813 826376045 316450515 686923999 316343943 882484988 393462594 972888629 758296251 941956659 831418156 893598890 358049353 967035528 193367418 625763997 382868587 536344680 407485273 653890461 56402001 310506717 653808449 819390748 627906602 919766484 127308184 368551591 149776892 727668520 809863878 872455463 736326111 765884940 543826134 788454898 950644777 987139436 635042128 737730138 720853007 791397144 939075385 993479330 560144863 806646118 368810516 721556107 292062319 356623734 19758326 553962994 479447034 677216317 780687731 788700839 669883255 709287423 519306383 805791490 417434609 719123824 579539223 773127544 410436930 776575677 640384306 996406037 195470677 630920607 691832542 810907668 384309148 464772622 292812175 464104217 712497142 966741763 801235580 956906695 864390293 941187020 257126085 968555894 280936689 690741170 747670050 968074061 153784715 201047314 803457549 963519442 254169011 345354960 727100000 922886601 86126392 500237347 105406782 207064103 255639439 835633886 177240215 612506207 905824074 912105599 901582669 934664680 613020486 673897633 978890210 996352914 807795630 936121307 512633583 768268151 849152413 973163889 466364651 486785306 567279544 823122029 966933867 971690448 65158545 240307273 922392938 992464682 562464617 666392711 944149801 956102344 909689521 955657747 943435028 998819200 995234557 999284949 967026080 989017758 546008936 831186805 63391983 993464113 827396863 870008106 600650263 880616199 723021514 871613858 459681503 883253158 631600978 783921860 180371730 999502202 284128470 764667097 201871186 247230616 728771495 866321029 769353584 810799416 230516610 879078174 623675995 729621874 743731410 781126152 84538441 246969327 432310929 819966212 908140019 987491311 138055923 617214593 577868356 961027014 322316374 623594471 470293952 665674297 95903632 806232453 926842000 994284847 623688919 968327806 222900130 450218901 562259003 986017981 762351185 775425691 406154999 473712638 572022509 803659965 535371285 572733244 304659410 606911506 46326998 215212461 213493419 609948380 340710405 463132920 783569490 828539528 192543236 615714797 56247263 949867624 297629399 597543805 160758804 587168238 409153799 513790285 416720587 920554224 17485391 307902335 993426067 995515832 113890163 992597469 912215290 994964418 761335469 997125638 180798898 779192132 971395357 994379175 403058395 751725573 267996997 646859098 111653707 166174745 53332416 111439929 279619325 876771859 503915327 545360896 521200247 950621135 426578578 468606430 245238887 417998777 839667555 985012695 494982152 699448906 32646449 368679739 61269962 356736512 676328959 835005018 14949849 299756594 804509808 887438511 482385947 491440282 522849619 903012170 173584521 773723570 336121959 808350437 752619707 944130225 240659429 293755544 497668680 571356959 392412722 397330273 363866745 547608562 505516813 867480390 50502642 527412772 633394298 721980325 101344167 351116747 200924165 625019220 972322724 997882607 796618347 994539223 159095123 977304862 764012577 849772361 225256772 631807694 905826046 933818031 255401303 523056319 907327146 960067868 34101650 749151789 199123516 512021983 95270727 591564289 257777806 887254130 625677994 784910750 695212939 837964737 242922445 441075234 850141947 910191141 34999981 67819490 869914389 946482508 105496849 742859590 999198784 999215256 172702402 868729695 450180293 580314132 794381733 927032843 773101906 876800726 398531459 790319191 149183479 398085332 299919094 455144698 163970129 242252320 379806606 486035523 273159483 315888771 899643582 913398500 102241753 291113520 521567160 762309283 166587087 525533660 128422227 330852643 773956455 939729017 216208043 803639432 192830812 620421157 88863582 532168456 109258726 962081898 799155367 972173479 470909149 588999195 674807030 951598725 533848599 803069161 500899582 941507561 255091721 508839585 349082715 854952701 253021092 582364414 620883516 790076818 200919452 395745021 784757002 807190298 836413398 876867189 962888220 992038041 340444593 834714779 240937379 984743417 765450781 984274806 804166922 942016453 161748359 558992966 502531637 816305367 233914047 584444596 53557064 770637487 879830989 885834119 639376809 809773168 767261709 793007405 977885532 982190698 893416700 978138702 445694156 646291692 178165957 875936420 712725551 879924894 594894789 738079004 815845069 908423716 522586439 975589183 506168559 542381453 132280435 186388317 111474084 175339682 812047713 950877655 3943783 493272339 7656083 713924932 476671841 895346004 44556012 687827773 874555537 907787569 291442585 377092078 863158876 909178623 252879195 526604897 16058649 35975465 394482231 570883521 370975402 766082283 308269378 974519705 537033685 625825662 893291950 931767606 775601447 888922453 161534682 668467394 881924290 947791561 918236834 982071670 866597180 964822836 75062662 227747657 447774389 890555590 998491499 999704171 969569453 973735982 328390123 673155096 227819023 488092462 639170299 766273343 109928132 323565395 505747268 544699686 595553601 831754849 183372670 447828339 337721102 589210147 701436152 898839101 321091591 656612623 808469269 818631305 360150458 592544771 685246070 902902209 323552887 376587282 562444305 616210595 613563790 994278007 614246046 728772100 991442613 994464008 759063688 787073700 73269364 431316001 904244030 923938934 988272909 995194787 103168233 642641011 3283761 93318317 449850353 464338123 620664996 651516327 399491495 928925260 408368909 741804417 99660059 116783854 482781815 791417624 800565282 978075632 917969436 936563872 742874832 976745006 548040103 990919554 548872500 920011243 247804530 370123071 929515064 947296434 532749580 717877199 645474823 835625261 518507179 580862661 475516081 500580630 206173268 962664637 326098802 675870548 292979128 512175747 21682307 58259916 960824938 999869792 683217404 937273035 281543678 894242881 261920656 497156798 735007494 951873974 829317607 983545234 58388238 639555590 438244612 686282444 851239234 985196361 325178205 950791274 514760477 892665043 381638919 448285713 869862216 901776754 935563365 952500755 627840688 916658611 205899557 251870134 61226081 968785008 865626946 928985757 999324020 999636506 891192688 920629224 437772436 859674889 690099923 760539680 739946133 794481629 6790390 975663013 866323961 890750475 988071836 989506198 823528278 852601977 748819619 887021334 531982461 878899818 51405538 719999269 830893750 911750527 100298826 198513206 808288268 839115692 110793372 363199304 764380377 821099238 531483740 722810841 69947865 168700650 271116324 979958944 912850677 961565601 399067809 666057625 356663024 610673566 447175600 499012957 272224294 885097837 120535207 738403825 20997560 267873205 547649710 833544970 380404385 457225628 558726131 919404623 570767383 572528318 813551686 881825031 178083958 654091463 645631141 975125897 398621734 682594456 489029268 753817897 991849692 993940554 498941932 672624050 519865921 951590004 763854165 817171054 428266343 600735544 697832863 713723910 698278071 837297868 969329762 999268696 732250143 989098533 750460003 969578768 951723164 999153891 772220527 863308498 534426616 600886794 480646035 671376358 210405793 853048603 712668688 912585416 26796432 51867454 213671825 887484568 662478449 868839905 843406485 885912007 23319288 829302925 990001091 996220332 188879872 690008848 953242343 988754480 428232260 593264268 289557388 675012901 626463076 899000422 441741774 806686297 400125472 550050492 241623738 891468842 650985116 963286657 481876666 642285979 981447128 984514036 576034374 953279280 243639344 788426236 911927750 997589475 452590118 496213681 867413787 911447771 186064484 573314319 997668818 999004550 209616679 656389747 23593314 863591091 981426100 988180052 380677456 898892807 385942551 755426148 985093788 992692113 990837951 999529058 779469835 811424333 723366422 913118574 680496537 848921598 59897265 831394984 577847975 732171220 721851363 913809419 807804246 945261198 755074790 928538734 796230339 799671912 585997656 782300113 772252204 894892752 357830738 592051030 104175224 900181684 166025331 685618780 426619647 509692158 615225342 774704386 378048660 639657098 16369883 588509347 104540042 189860710 878403794 977253896 831913903 985362821 461949372 833240985 108115809 490875814 106564360 411578364 821382667 915100752 864107571 928996357 633845533 735889538 322752236 516667652 371603347 580070238 813602272 893778316 958871563 964016334 241550660 756629680 65729394 336764800 26763955 440105628 638658747 780962288 977525970 999190493 816590583 954698206 449455446 673649184 456507834 728756062 698023494 799339351 719548026 876553621 55261767 680526146 180651680 211351581 401727223 520381364 756987669 825148590 308284645 503154051 712634868 900780850 584812831 934430749 853077156 973841741 960346504 973063492 288047589 995821402 971633 445864018 497099914 527367050 246646646 586323633 750531458 949708953 694466655 838650270 921308467 964335830 526494368 661375835 813333977 814439907 897087243 909250599 822640356 886770385 322331361 615776488 725259772 827885343 11365937 549048560 393528832 495182118 813478450 876349370 996833930 999471167 166865578 490191735 310012672 853306989 450319598 704770294 516945132 566249893 77895290 513192163 871913036 947075735 135923996 960792560 583931781 664741898 319650142 741889644 695178981 848576027 56688453 869970077 792435996 831243570 402234832 888388095 486643330 704420711 671923892 934983966 326987556 643210649 541427679 680594279 757277224 944412127 911448764 977919922 480989146 864000813 685892688 752216661 970894259 983649121 176072261 837845911 499885714 975453221 115318845 371978922 686521961 988606261 201590201 957178647 804958025 993719792 996928342 998701243 4448849 167635618 728520216 779134500 68255144 906988279 869414323 977675670 691231581 854989441 16438943 531065668 921281412 938508446 833018542 896339535 111161659 820216478 470322202 767732454 875782926 891667583 198129905 314880264 386566316 477911095 589111071 933609259 53892754 72360726 547288993 966251133 484241833 884166561 748395852 932724274 550632004 766110679 805634517 864504709 319159687 997594320 192408251 847915087 477919789 841440549 53974755 342347076 999004152 999785224 352925233 607052124 143131593 894156858 559931600 633604477 147355910 649895266 341919193 625659958 854962361 884133581 947746010 971368830 373137617 928731207 838837005 892295209 924889984 990742514 359663407 569268692 86333337 575158563 880693771 991302658 644516531 870229846 408101181 875059339 478840877 938020170 692609659 821998578 940569441 970016670 670881860 751655406 547363353 839962966 278792575 425531716 906252902 950733413 213164564 616244446 832058802 894198759 598699170 628952240 688676445 779384599 520279109 580053283 28923012 964001445 867295630 954331240 434450982 848678465 315602675 599365645 977290147 987327524 616630441 982570321 555029681 850277237 373909710 577739294 814633244 877700724 407769618 670759070 504887304 516561680 506545811 820056841 983106306 989951530 786195314 797407824 668911446 892698311 8785770 769631513 765355116 906161293 838224446 940642364 334973155 867085674 537766055 684026455 528712137 744629730 168483450 607979892 688169267 725127139 903535612 950208784 997797324 999098829 702691210 809460804 102630561 564775589 234035585 367269517 662797075 861722693 463006603 733203469 603279495 714461058 720342084 828441351 582169902 636829687 375126589 958028216 298772204 940269536 353561650 775841838 265902973 491084689 988122765 991222226 31204027 57694840 471161763 729424860 815289001 974039687 329547009 700745739 129554020 135014644 340506144 513763332 28214508 541011690 117744712 700760073 573054242 684690002 78478765 95441086 937106691 984970811 911117521 952605226 326321509 640276363 153151299 392687963 450762565 637638819 779428341 994649534 727754932 866010176 337002689 516288503 713577794 833686298 739086256 919736198 907229639 984597808 701672130 717479431 453061717 783784667 919968530 976995483 630673449 834123664 617868766 831907374 112629295 290066872 391494803 935408346 809959667 880409202 813928296 943104487 346078143 902169719 472865312 543952714 213501063 625370733 427349820 897023481 719222817 933478857 649860892 766481499 650766134 994734630 350863517 818055891 855399485 856457108 665754018 755755681 431314870 616630829 328775672 528587077 5400527 669704621 682580949 817942374 416888282 545316908 840838432 855377497 432998790 723910564 356946173 379265629 284503307 531731211 565613392 994452986 406162085 428251613 876669416 916165262 375262109 490587381 716775194 922847477 427689750 604649016 19999646 514749434 346818004 407159528 302853006 547834746 672921285 949524771 518198612 923509322 373284097 673887857 755926139 800395660 336705854 875226445 720549962 722630397 353328180 571772588 653350616 855783062 141649109 351568879 470649098 480726291 979094505 999511491 435964598 631299923 223044878 839384592 578348040 799524693 924620476 992095034 628424047 904589242 99650971 560723582 119509038 142183306 277277800 465540417 262506760 951655416 310679859 925138544 99857080 997702161 873150624 932672275 605538584 742577101 170151967 770357202 4467692 473462665 322061409 572373842 291988825 925441908 700375274 783089242 593633372 923448551 193221222 818733845 516103065 977410549 321780224 927505665 320895460 828024714 367278445 429634073 709272586 981721356 190638162 388133747 934603745 978455816 944663186 989384967 306931707 454803375 488392448 714668680 347286618 432304217 882400754 967121489 94922087 836092038 991221494 993692934 543951363 605593471 397744672 738255310 775763195 902992071 415211628 639574037 797326391 831366564 254827761 997682576 306673008 765230842 103547855 687022417 475029675 927200670 130457265 353342668 325870136 457292103 408544870 984816868 173547056 466047230 601298272 825639808 560395377 657632748 244884106 260755628 789192572 806359850 155350484 360246634 731791285 957376453 937385026 997749782 684923806 806107436 392177462 462023158 7360507 916647030 619928036 777039971 245084747 513342766 56963504 881743117 78705455 334353254 156128869 476836541 723769547 910809103 393527724 453291585 282820607 850999058 775099294 947748575 287033070 473378166 49349916 279314629 904437483 912306224 531510344 567007985 205924040 407994042 113173580 551476792 201899641 655616479 826092040 895972302 690561135 835291775 80161812 698120636 877579441 938490750 734764049 904304725 335692946 758160019 427876586 939071209 195517148 707305426 523866857 533620967 199561929 361008648 174968601 968399936 17844544 828607758 932660212 989407788 841342247 957165673 157716074 567466542 676954822 832812599 143811699 823977942 141270776 695457269 274878349 606423204 983987120 988273011 930221430 949109125 46369560 283798054 780432168 954304391 725806354 916640065 485133249 991955392 475363238 501067755 79865208 88852404 3140309 331889498 476924015 901273713 850605457 911013293 215323443 384218249 167573067 323621508 235948993 618034234 695912546 888000744 38834387 626884990 560955203 668814866 474841967 832809019 921260600 930175643 179296320 605121502 530252976 569793829 541590369 890946666 887823356 954967880 542788434 595099114 752273255 986128157 43660765 386346028 149475762 886763932 322587137 618635395 598729129 996721714 497297582 977491274 721388617 921192055 625914852 696139852 709339909 869632969 121654599 933488128 74732074 989553015 143347796 219025962 55669096 852290198 744829712 940097064 347268104 711559194 715039353 932607354 624939977 721592646 145962719 747668462 458219254 654815173 95030820 318747512 31439787 862028752 141710481 882302812 601864197 752829862 852769668 904496886 914612375 979167402 227170266 653243989 988373214 998783727 414681387 902084082 473417487 607704942 87950837 903918964 939315913 985014588 162594533 888170786 36887059 166366807 864132421 872674945 669465919 859558613 432498550 926819603 208014085 414338427 987329822 997721109 558476253 835246852 67666988 713520771 617497086 947271158 493744744 641709177 826101310 884675501 31760909 274800701 373966388 653027847 63452922 868009275 375604339 410609999 4990833 372628471 562395368 711633346 199402008 568258842 81794292 649025392 607607166 765868500 802325188 982655563 723891285 734871723 112296339 699685234 872194662 996287712 445267621 697301963 831743961 905058277 855515484 880029230 19938737 960617702 10496019 728982910 958453524 985923693 101080934 478691551 869387849 981582813 417339894 710144144 365731633 589734500 967928035 970092970 875927506 914236261 434129185 796248193 115208117 333663854 648960207 677891471 144730717 597436606 923420873 945463128 181523380 955017252 712815298 995203247 536547622 992088674 312445762 539028388 644833948 766634257 725588164 827929216 195449334 512607462 120617030 995284633 922053958 966709880 11194015 128195247 87038671 204115388 930035229 954674236 325466998 638576276 159054888 745882391 629484485 643519676 497942437 638115562 549384750 925626376 418802574 699967045 887745213 906101238 975576852 995797141 854364007 945222516 548956101 557836414 892508730 975030945 772815712 973576130 713229755 975228630 586646479 883876357 271115622 456548715 596029539 637633484 521142312 593975288 96269733 507307801 178293739 301835597 285437581 404285101 56240590 915376097 388350669 507101555 179378695 207565898 610878464 827657404 318920577 618386157 690706609 842791409 206182062 402842907 205020138 924783525 569418580 839985541 811244525 932214840 88457853 576636493 729730975 821828682 40947886 848219339 477826223 715369320 172495075 580066367 269427923 378886766 56085891 316897914 982482609 996062473 965522315 979983376 620286322 855408143 267095384 944206345 161503332 593971557 120607319 752268929 797211804 976934643 872719165 945410723 383879274 695177586 952071347 999340788 689278709 742542262 156484275 930182802 45124249 514939830 723111250 852308582 309064460 543816464 664883991 834079567 929045918 981800871 784597745 981165220 931329530 951083400 976916631 992621239 570242268 723458498 603067130 754569494 871530948 950744001 851600520 893685891 315090928 739250170 741180950 810386364 116225289 747926651 815521946 944274251 823226379 936853381 403819957 474081918 790296587 957112123 147073619 211036596 851393501 853116332 419171282 720684933 580793349 665148441 162265074 396023031 15221637 183602506 641240172 808217032 642293807 649278262 198195789 350377075 308727138 668602962 438535513 638550267 717671283 726497487 195226859 720928174 175897880 607662003 913913367 980885201 300141816 387095564 497672426 617729090 775366288 854609172 956907435 994335723 63040670 872103842 216519917 528258959 837161419 879613043 930882087 986062108 188436899 527573930 99604809 382114086 221457858 845395115 640148785 982335494 901052264 970369880 662701584 910918978 867090990 888536789 129424457 425504767 327543040 608652457 180150235 965631865 739167075 953721973 471107669 792489801 146689362 988489888 967957823 971743001 387371866 992118978 424310240 796617358 557121153 629446720 606550718 683828055 545086015 725013920 373597537 826418398 937149231 962708049 142410177 821229410 610025575 741978365 209396594 227828299 267858760 629905426 36288088 274971191 9848250 162072505 436777105 744073556 841434163 961078537 976151971 994075856 432803582 952556867 798394512 933192461 873867553 960441826 604503081 870294173 900389964 982705853 223855876 647599106 929766507 951260133 720975849 725050882 384050922 829691350 583709682 638727545 910833805 990412402 116203217 263753687 267927884 902283283 886107496 998724022 547145778 610655457 401503702 537589774 310941635 764853681 192876253 424968575 206410105 291298966 925737994 933848544 399864317 890881695 540383173 633341463 927533253 932133180 778235164 944850366 263551633 712453048 913882485 987078925 850467346 957498584 405424990 497525921 686820478 823479522 545251530 811534505 271029648 423789688 902191988 940278897 587370090 954707558 455199251 656230089 468415085 735737526 561801003 861920517 406505790 564377012 50521168 765019600 226910114 299949788 137011269 746155835 915281322 998516331 869540323 977693313 508696685 796271659 94825458 576725991 206182710 980857501 10336802 48622669 470305452 789597971 926236918 947747073 986089120 996705582 357735760 584943743 641322919 978300995 939544136 968131824 138894332 217065942 543939621 561102779 609175245 814661336 700468294 805273704 589966345 629587252 693466234 769086851 221235555 464826719 447556898 940553789 601915771 798787526 895048288 900033903 753109160 880755670 70705632 332016323 660361001 938639492 462295192 770475005 547541481 812720516 339136312 463585699 682006281 697230920 37521723 595545828 221554604 818662513 283315296 417190813 544273755 666743555 177891544 350310130 408037412 823072548 572363116 844509101 863544359 919777781 230879632 420329990 776996819 846381629 988000482 988066740 178506846 823884293 359470951 484081711 859119517 917481720 885356214 889828746 738981277 995541061 788703986 818220073 988065754 989419396 648105958 688340793 818024468 971606741 410509651 939591001 83550961 875044004 807935358 964888117 75116047 468983177 287630397 863948449 603024123 837438721 550121645 892663153 68424828 335869742 299687944 686076795 420246032 472156140 588103557 820729934 677091276 985672366 884340216 931223129 827240902 922773420 962272250 975521466 998442406 999430384 308317481 903162907 738297419 914408979 909439338 957092327 690761331 775239153 666830502 722660534 462898816 517928250 724604809 972164079 218230077 271826525 423885223 499120758 48605632 161722888 45379484 476962055 357957325 575243687 741789995 846343869 937848962 994133990 598144710 613851439 578297017 675751440 826191660 996829051 228523795 299052961 943674322 995485220 450647078 511989165 284835892 918084723 628543284 864185090 505693121 835000355 235365789 808786371 818622963 820928508 844586222 851237757 297747918 518186256 22441156 807982021 394580287 677418898 895439678 943239199 966468384 981057363 781268917 812015829 818718557 952772410 849727452 896920813 60659206 876587098 428862668 678942293 553176380 571153707 640340222 901090079 68969812 491411711 586571306 621584508 791149091 909944252 774242953 909548717 200718833 541414630 495041232 989653047 986780466 994297415 961882470 999179608 35295880 280095448 904489865 919506863 485768555 939815439 527018268 602942031 105998648 324585574 463547739 465296476 870923884 929682175 943722284 967044523 394882322 513523126 711145188 952444428 951585328 979687767 269185518 589893149 491038643 979274182 900914018 964992743 348112110 536475031 233712786 644060769 536580642 950314233 410830828 676378507 439208360 917504572 732502483 906930055 227559064 764857622 259902700 581477467 565904236 975301809 808085243 810843554 793799290 886119206 643223052 649134728 468322035 718798098 478217773 584713718 634747110 897154008 72167780 755856357 738512975 824640825 168883730 963607013 491503328 555280888 367700433 893335989 38968674 638107312 878743162 930466667 114397688 599094761 639523278 771580655 777210275 897997323 236411243 782977443 852144703 904439934 305994486 551293460 780759518 814650388 637924187 873998252 920517375 933818913 206775542 533180500 105981987 329894160 656811192 904411951 299151153 421613435 572432570 813496062 109795327 507404747 518397974 954100251 844880112 947960813 810316878 832486327 579504355 625461662 420908988 851686988 818421314 937860653 741922277 912357868 940045011 945814665 148093262 201305710 891706193 941393388 24648047 561253019 214589725 349759798 677768742 681950838 207234973 269303680 777574284 983309377 669354669 906189761 331121565 396851630 298275272 496365456 268486904 303228012 261433333 493623513 745534727 763617239 772316987 883054554 645707666 863520653 727172891 800304747 641916293 930635466 503973112 713504640 89282537 444641671 77797057 517816936 667208287 767147392 975801536 981933135 554807352 992659324 72922209 324008219 254097955 288486364 54817010 249200819 911234911 939342605 521400195 611800307 725411762 747840849 107151991 182022832 127206951 335351100 113711559 854187780 243289422 276463507 398393047 742198457 747364616 948437105 863759461 872534342 192744435 690057316 641097333 658414417 641022994 968201225 977401442 988519494 931105078 975144627 853451392 868466622 767838104 816589421 113829579 267090146 642385983 724583175 531749018 769894807 969377244 998564820 61472727 194398293 805352517 859639099 296185581 499671210 648924327 820329597 762436819 794604310 439082430 844622449 608591968 915485340 737229844 947623329 200148714 561666974 650973265 791527456 639146874 790530472 546984655 829794572 612906385 923411261 415696527 701095987 242411671 757593909 209904157 988053829 131285535 951768104 290981554 869302543 550393290 960118467 477276222 713254312 189975426 401577854 715614691 722956918 443436799 872221318 201871073 767166946 745410039 947525250 193987865 351482615 512496989 978175407 317767371 468931842 467468515 552751477 491528638 508933305 504127902 591451729 40010434 664658355 676192079 826326560 255022414 596068898 76016258 601639936 561583198 634713063 491249216 814121098 851694928 996031414 609533728 989952620 111621077 180659576 291740410 650585599 253579416 971415500 587352469 643604099 279468716 425222486 307309331 339866427 261196028 504397734 650884586 799706332 74476774 207523850 87775072 789789808 440806838 826370312 109705477 280323882 44168453 580260066 629321762 954831146 867456419 870885180 240839693 638616235 16856662 740421831 495490485 569292062 444312854 944663435 883001443 891706472 202374838 642436246 938589190 943382259 823109192 864345330 116265653 735854660 81199854 676636833 806064137 883308291 28058718 944864736 300269867 379548247 600874637 906671808 290263320 861438933 588323254 787090087 577632563 742817671 249679648 817216038 472930597 972714549 692132172 833024211 874356958 879264505 376016069 833870114 355005432 698128074 344824217 814931077 995695135 999186660 382713207 773009497 9438969 911315655 598379072 716279946 230113602 350467856 948645924 997757092 410615558 916380704 763204919 955767565 360183704 389430118 508339929 667102569 485536814 598810981 78723976 371580179 71759976 899290215 316075541 686276098 968578607 979426735 832176772 844987306 637554667 649014974 333549409 354316863 537828078 725799315 558058102 590719091 564947891 721125416 886758022 887093222 57396001 778445495 507334928 820368004 377086123 905887985 53670645 175939879 277111892 737771924 443346929 739225106 138709868 223544907 798317041 925837645 552317577 693409609 173529289 275997686 282450956 943694695 399084271 803630750 694165643 885153034 450682766 817529005 391849194 476001872 84750143 123149312 73756211 382038101 726324129 799942397 249217705 897682910 248905876 828395578 828255649 906607868 733856775 986776050 477967871 520115129 855700162 953640066 346853298 660167835 211333909 320802246 73017341 753668524 703915957 941214025 747074126 882379950 16141504 290898803 814692520 870120479 870408772 886583337 111948952 735212793 693277834 998231544 229064629 414032162 52046802 221105988 845448133 958704655 924872245 978214430 143519644 312762313 865236519 908346729 205794456 539337392 864119317 936569199 770957026 791679190 168587352 868628208 245091019 925943988 716156006 943509503 623364548 695176684 99796631 435346524 797824388 861458197 559396615 923466119 657066886 727926197 710707762 718997388 196921124 910427566 227626420 279818354 495459779 515969053 230118108 451371641 481968117 774680899 102569794 528005113 922826019 941383828 990451822 999542560 566252107 592459698 361367056 402135924 690718718 986273393 49085619 57958229 867122192 953449073 303954956 631956344 622166374 771882841 281522854 604084173 685310125 972419619 402431843 563932140 812621680 880767506 749638825 780000620 335888929 917856396 426100367 927081565 495479189 558299591 673131492 837376372 539669967 947818913 201993876 619892915 739253868 828016764 939554642 949464094 242551104 963142540 19431929 55578370 209219952 324898453 216395092 883029742 717503616 825635660 281261844 413099601 551760641 998361602 323565253 362279508 607643588 959751188 370865702 891074772 773063972 894749201 845754095 864675068 679011051 909966810 649890377 701995348 47866878 886437763 787078822 900224477 636240559 807129226 302788750 649398389 548072790 795092950 513767425 784089538 504276227 840776056 832139519 839892129 656263434 906682432 869033905 950576758 109150432 239349957 267392704 560088811 630382093 751615015 770891346 964067437 115216195 307528569 148564444 748601111 142043121 672527761 432585179 825621918 965094265 985265042 581691659 649436614 369548317 375421255 580131109 946455921 282484595 941524772 541994588 823108766 856551270 866058292 477406487 780796635 808396347 941395435 714684614 903622875 733448260 915970666 500738812 808730775 561307437 838951915 748539092 928005698 527080386 902741855 353626674 627531481 887876487 950342748 556567788 862304357 831342543 847456902 49949616 850688945 549418691 748095271 326250193 800184316 774401487 997907025 439411616 551771018 643562097 861995935 619553114 843131087 648077429 780125284 578280467 633802552 932781017 967354535 766728186 966734601 901818345 915227606 127376071 982231728 856587455 956378530 435155366 903525724 138295238 936716420 220787660 319002629 601339089 760539272 679063311 844359001 838208 620704595 690721560 711946775 283702825 379327293 334927078 361494011 746760057 913415984 471921932 566787646 679175575 781829033 132702365 406681539 629097459 865153379 223968239 361254326 264762979 539174156 751825987 762425795 21459623 464367072 918417096 927657217 90781347 676399379 11690017 414580733 701632556 899058261 570993477 954047586 669807326 916207951 37830598 147886241 261643347 969594764 223104651 649053190 387892669 800459812 193917330 383517912 148816180 662602898 959367061 968590416 915918092 945432718 812573123 889689220 686340809 762176637 97443047 795468367 275442586 283338688 223186760 649876447 391225445 796819635 511081166 943953206 31480229 110066519 86962582 256128760 351099375 706550264 187569948 735340164 525777680 797728770 776193634 802532600 343221853 966053482 916220887 986341585 579971244 752975942 826167827 881035968 859185986 869360946 340085510 406994367 719731851 853142202 771088336 967706686 555588233 899875422 150122867 219596338 226179745 328664278 81798134 480894870 343310967 546492671 524182169 557946159 654594742 699883513 71216851 606144046 685679955 770020693 695156095 758914273 968085210 973910227 292033174 310373643 705418986 883710539 129162531 402020153 123388364 784321079 745306281 946987942 295394828 641820984 252452163 695691530 542953936 558454013 599459814 754913169 342804220 954465973 513283585 679929028 78078306 726396272 262438998 324362830 618914792 870920455 318113845 521441709 158709526 473780876 151216032 980741966 252842889 760608219 124642430 566520280 62471837 807211431 634711849 910078035 457590468 806812921 943908949 999083907 710850994 877075026 715605732 769584923 651410504 962704868 884440113 913569386 950895873 987126030 902212343 923164270 404262627 743783123 601065022 887136101 604978757 924283969 600516161 623152599 575074680 757095418 106933721 272649268 134868884 830075561 446376256 552591813 673878739 737635253 42110087 945027333 471351018 879593683 742215695 960446877 171757638 497100440 46287834 209109236 755204616 885641711 55252273 657554947 647872623 774914902 235065104 540779222 865822484 927164054 387551561 810738363 161380743 386203314 555010429 609758447 428246972 705433189 730534730 822529185 989709702 990518949 59912063 723383811 691376997 849308622 217786461 277692352 159036658 329289392 48150400 242089057 461608352 587299144 918018559 931391267 314063349 585711752 768487337 830438739 409549337 977134602 870227573 935751395 835068600 994994447 539535775 988693494 447613464 677770273 60369855 180349598 136032013 323558250 293016936 946446737 656062777 798174346 184083292 707179802 552745063 960531735 291415792 560328805 351459189 935408433 611551235 999056547 155469511 706721513 640130551 755846100 352818370 589979298 7233077 255280822 669395101 934106311 452476524 827421489 534570056 827322601 196971459 521030212 675815494 784673760 342840638 366217364 186432771 846228375 687859615 851202502 62862540 842798351 79192344 325037759 607113099 616926703 505517920 874187907 496220643 724058465 851778206 856562541 816516637 937994931 934657164 980010352 810671056 929883647 193593524 656730195 862905847 942025147 235767085 453332283 612978411 760007873 726901713 738504695 52117427 868349490 337950463 618073643 697441209 940221063 509212247 526764089 9098307 297657196 330443880 809839967 122348734 580824288 761889777 808184791 505145181 847518322 326403862 677013839 426664996 696323106 385202910 563154937 323307568 334110753 675051773 959774026 735658337 758221274 395139032 828673134 599992397 950636084 293674736 971970720 771260638 917992178 166611422 512382699 649731408 746936862 637753306 993765976 797189155 968939459 949939899 961397679 156889870 835678794 381132347 780378857 322341830 845648786 311920023 911587693 677859621 799418549 668238912 752292356 635863371 696372829 862521199 991185204 319093322 794034991 579634264 977379725 146792912 576684906 708194869 896479736 47851725 298494712 329282569 797884157 116191291 966820160 521232053 734370968 408625215 684573797 730193554 780789855 406479018 951461161 357652489 531241942 446788959 544559909 938783245 995631154 963754390 972396041 141568931 488278101 21139036 921611974 232956584 684549898 739919284 936141357 918251353 940278868 867392996 939354956 402401636 824173565 163255970 931208367 593468487 995263043 652493836 878383186 534139733 706192440 87404087 691939340 515382574 545421048 512909050 700778662 406464114 898945665 91883172 199598054 792685214 818351452 990803585 994873221 804055036 889219017 119117981 784503211 106753045 425278257 182194243 191492869 829501619 995677636 972780451 979409250 364481599 924484225 544854245 836509408 206744476 421782046 572801507 923110306 60394672 216190688 105415307 851725441 660096651 897341264 70656520 153744238 592750182 721513393 817988605 952367016 717573701 989446547 197621368 384328558 711003519 906740795 853570936 861100045 4826795 555103592 125580393 961614531 343776214 545569197 119665304 358615689 468426637 966733133 411305884 671326464 878433415 937802171 55482717 223212727 744449494 758940403 697570418 840793407 56627759 285546560 272976647 495713800 647520126 777262755 296387324 676577723 931638919 978055688 518774016 792961086 305009203 482673717 184737371 434485037 808508314 981702564 260271766 684323930 597357491 893042037 366505819 734156596 249342852 272332736 579062711 897635501 226947707 927163556 456045195 712809909 754320116 818565636 709723381 846186215 644032639 879672335 149892103 874447410 510337990 627926696 733915151 810045709 821196610 899171630 316605216 623876091 247644409 462942494 707705797 992172728 336370725 744502142 508053352 974530457 231316744 639927022 592919168 625656565 519093918 775308136 798976924 821042985 813592477 885542378 360503156 366501337 936769057 996317659 468695700 487244946 410259092 482108205 562912238 592421712 273348543 550454624 684847663 822617180 887700100 927983015 598358246 968384852 882310792 959378080 685463482 925517968 853520314 968569689 897032949 962576404 334930768 616341480 860685031 907671825 740083795 764791079 936892166 944159846 500151728 742793146 212526938 305514778 533800235 863369339 860338638 873764221 734108559 948667735 855700194 886043184 252551319 621338962 14866936 740140190 535759563 882828950 966505420 986790350 355132967 908316274 963958413 974371782 610092153 688173797 962806839 983095983 216337624 964528352 997140812 997357326 258213759 912893985 354790331 638207602 948263221 960698570 800287243 901825032 873684067 900814462 715396792 720588012 950231809 974885532 913497983 938732721 482816816 768567796 357452574 564878030 683965745 700372824 586813687 723479957 896207205 922136638 82642563 413619175 35278059 873263437 204165666 608373098 373820362 468870442 190771341 409000983 351375293 969068221 56680385 272438067 82236151 150518035 877964613 880569624 422689593 449954918 262744547 357626595 707370938 714805548 797470890 824060427 820331724 853348354 823633069 916983392 961070359 968778692 705847921 801662288 457022634 836016397 149741935 419932102 997588330 997684811 862064325 982993393 835381760 846032536 849437438 918840834 672313106 740584746 240726950 860990618 902035573 988758910 823330908 983240844 389004913 609019471 698349073 717008298 826485869 873260351 28863365 173410449 439044275 797099777 786201505 852775358 160528315 183059082 290620009 831979295 888650498 952139807 665228134 769238280 999448977 999642112 544039125 952754900 373227162 959489329 513427352 840998023 852542740 988566383 690415975 860684364 571760017 799860489 440072328 934544000 953005308 981873741 464938041 531292281 206076299 921047456 969613097 976496112 326418836 361293037 773216796 941399052 424564334 996201955 625313175 997172562 156404802 237250960 131093316 534288756 421792426 623880096 934909695 967688918 313656144 544136243 50566223 691626162 205486344 239756537 617270899 831712998 969491914 974545894 629764500 677747815 699750194 885600268 870667943 994806329 476261308 650184099 543950105 556243865 103316946 574877230 682096554 787074757 896922500 984298013 538719404 777934552 101178278 854153954 660855921 751431472 277865208 552046361 866616941 945092562 878425364 937832637 761935577 794062284 695674884 800414278 187813790 298700827 934831127 940962536 125710094 661675361 970397072 998404770 932418809 956843363 539212306 822890206 452951017 610547259 389150811 483282176 975238361 990586752 843722021 866919384 989233489 993661219 988627662 999265311 843342561 922099007 73227801 362768693 864689674 893189875 446729352 518929793 760353875 998135838 360327465 653960004 290939667 386658178 35380838 348623296 157907435 793995220 336894936 797742082 649788707 959288547 66994263 353890421 479199241 906021233 992208985 994956869 847594873 952795152 290735556 391011691 364655369 808806419 898760877 916415278 531369362 955956801 563726102 582354755 47960313 493048164 440014502 720674394 78375 450691010 888859340 984594216 920094215 960349351 200632997 738062968 853915580 905487227 824154952 858499527 396566264 903833870 758676101 955949754 911818844 964422260 894081829 983637393 94842930 139562495 101648850 635402173 554909275 837331524 366236933 895288885 101379224 775177450 335951353 408678617 424147371 562144256 346387135 815842675 722495073 989074837 628592047 908659829 748264809 851438237 232394832 449032405 646273594 820518401 547988163 910760803 519806067 621238224 778583826 820480683 461793907 738363509 470314998 480984432 413245804 885198496 352198674 694915785 881703322 912154944 154915527 191260765 385918630 444246803 269123344 854248353 407402056 990448143 708415049 848238026 647295575 892524642 925485572 941595873 461347698 926697196 994921721 996209501 406274951 416565945 876619275 880972279 227558483 934443780 105713434 857913889 451928650 759019984 303661675 841475426 659437302 808320610 303803877 663384712 868596997 934767855 773294682 786453356 677918417 815889188 676356172 948409493 950373968 962966131 445802540 485371850 382238151 690776357 825944091 849010963 101850510 541960580 285392528 342254290 909926832 970122977 622597695 729658820 724828129 998203605 124936925 767430103 747865070 961486580 866223733 990041106 202789719 805498522 716578538 990044077 302223362 761509918 688334064 961059125 609009661 812240508 919887607 979815516 686136541 868028808 383263448 889451250 584954495 788975124 14614521 91801177 975794912 975976304 186710894 646630086 958741884 964912352 376536100 774876803 269116230 399642830 820738265 903757756 757392583 825543294 627243463 887976115 95264576 670814010 558256188 684210402 146246457 545602058 198271555 490530207 37900272 459055964 93775616 914404794 812176973 871288642 474398939 835880133 317637433 579059556 1257335 609674521 974008066 974011686 208761176 703039064 165971872 337734027 568358311 601555463 189655047 893402702 502520952 994475787 717816523 789109149 807431775 827852898 899182882 951680133 523705417 770132644 254948731 282677841 610937537 927219829 576482131 740708237 311524020 935802788 889068844 998054848 745696468 914497364 332007888 462824839 595901746 826241573 726550854 727161996 106545266 476626064 298239074 426472207 603063084 975508586 237104271 663066524 664874177 736879514 927734971 956775676 559621550 912371843 598744000 737824723 88850028 342714297 884876165 916657269 185369674 966301354 9449140 934333833 55449110 363509352 177649319 263846407 814190089 822219346 502327408 606194992 109657957 202205977 92982959 656411330 508185253 798243720 908487158 968877872 774582154 844130618 905609133 912674536 520880692 670267203 669330749 898668756 857439164 904325566 118926927 574731601 356573315 514180409 506959126 796438046 512171184 744769807 991970420 999742149 174757735 627198166 527233178 667816354 651088688 748546874 582656502 717364787 612614520 669614866 541995411 720136105 481887259 626761092 207744958 449574456 690704351 836672053 899126387 904241868 790672338 793307970 11812353 169991674 616126853 910880821 372284651 707426744 977250878 988791094 145879914 158387443 192707374 230849392 22941923 497819611 772142654 890661838 980443514 990424954 735976324 806654958 967855115 974481624 27809378 265834244 186217751 341347633 776937250 959816195 692123992 957634907 549742955 921846130 940151583 968088514 186350381 340303922 655676495 848280735 313842151 440293730 445638644 806757120 21078346 971470508 827866516 940912153 607426779 782239457 324487054 432824524 655680157 905554307 219488583 827429955 306923587 547466593 860262538 869950745 432873466 751918988 743391770 943779133 112392449 828533276 625644673 968890461 684701891 908454464 720876743 741116443 543183716 574897092 173398051 896403362 699854008 896245109 646210668 749341345 187905368 290130329 14597393 846030862 793222228 963882362 275506055 291130454 606273965 783964406 874390097 971147216 999571945 999802727 146181456 193413796 911419395 914373171 223096621 622309603 738043819 943955849 840145290 962595135 23878752 831629977 535127271 895946479 106320219 590780997 890736494 891974558 660764362 923297904 904145379 992619473 3453729 140551521 102477019 740093727 172334555 951526876 794197651 879818170 839167011 988384143 143445974 793929793 46048005 859656109 826005309 950821051 691210332 776537253 720935314 727119842 527427263 545750169 383674945 805901715 375964847 484057785 720344255 775341886 528759598 966901618 926184472 926796947 499889330 931250946 929618106 966716558 625509446 968439360 999815005 999868174 633406913 880208675 96425785 706039350 23775037 311295999 758855547 830357537 650315700 681932026 791538952 964577173 846150254 852532184 593035607 903224580 563303410 647291927 119014916 928953172 178802355 830291272 852239301 933622980 686462150 841654080 499493772 606875546 520649173 874358598 800938501 852146775 924242990 995666345 155363147 968323026 841167472 902436968 122995681 812717626 800195618 834003697 115499598 741276108 497277635 846196859 532904174 954329179 863813754 995679139 47188574 218664642 532560515 662062370 264327168 439431853 778447852 794373097 309241874 497272094 415217477 577344646 162302138 436531456 971046755 994481578 220600535 456921741 391174540 488681719 959377842 960762928 563471968 686191894 207568327 427718880 389013817 776115570 845064267 990283745 639742033 825486707 57150014 790677026 69887271 322778736 705736671 731940924 176780784 409660490 77765660 801449741 806708108 869917409 112808016 123195509 387675108 653864722 532919906 539137790 4665385 676551563 971791235 983953628 718547677 868249232 699883532 740167082 923367581 929096942 94312019 754671952 858514896 860378920 766307878 917870588 744993119 903699364 366154408 686653459 584790302 981675567 538010841 811516426 704474358 771891656 625740719 880537331 500782408 669472787 783651537 837665383 695775856 969860416 973523599 983511554 595037579 763659307 133276221 443530887 598858700 812392485 170555801 928067240 402421137 773977484 421469365 432669369 707701686 890668837 715855889 908224258 862966563 922397096 206209186 866128931 677149210 718449475 537156016 683622618 289191749 309015159 911188813 955619623 471991213 841243049 30605749 966969273 751084361 839809216 337797508 727139255 829284170 996673993 496125584 868282086 716063130 728795707 992541240 993588750 29612968 847620981 841734881 946170923 880800285 908750089 550958309 839475946 869135186 956607422 455264543 718400454 847577776 999469631 312392266 858517023 423162393 587194909 544458037 704023801 284662615 897947651 607376434 794269703 753863758 947023006 13886054 418492699 843549231 853767058 134388816 944263655 734616467 971309012 4940698 303142214 813679965 843814748 353535522 384703432 101567397 158574600 907834073 971115020 283452662 634368583 80585071 817767297 268062058 739618370 804401217 991811729 925495590 999503258 505233742 799993523 530522887 604866807 220250109 498459139 342524722 497582897 519401719 990777746 360024777 550322363 274308604 407216594 788200455 791610183 438601859 504514345 691900262 747845689 998323754 999925000 418467472 782258024 698087545 832522573 863340783 910577298 581744779 985851140 664138205 862922319 436972759 446630486 393611980 947557543 516490288 673507164 497275973 794438970 342517332 875007684 823654169 997845552 644221521 861939669 416031819 505396903 846470810 958777699 551778933 600916514 191715265 550329147 481098787 698294973 48776861 287151297 52011947 645926679 976755120 989950170 992857913 997121770 284493091 415689640 340635791 622697901 359678031 459340662 683567584 997002428 180647672 444148497 376018095 675095702 496519033 810250271 175868495 865600353 670496279 812866394 803851860 976455578 80250091 623347567 173825178 694720633 329285707 522829404 354248472 418999839 447486056 775441247 401819564 546257326 1647914 505680272 602960465 864140386 19237248 342733341 334886468 742164028 893193008 997347200 722873952 933342162 886898223 911336372 449624803 884678346 824548302 832924473 869316916 969730581 289148826 413887846 17076690 110042402 356403611 708485407 634122988 649242042 529045635 657763400 803925457 902630362 882884226 959982585 665317841 770292995 234606376 340247680 426758218 604246875 556576510 868067140 665110760 880879612 882945429 958006293 735770437 833693503 848551930 987859529 266801798 989816747 921129411 927428286 753651898 985501760 634384550 702713713 837691733 980615120 342549331 697153109 992956407 998446199 55410837 752165798 610385008 987190192 988404806 990735165 989407023 995968074 397126947 519164479 325993033 872869522 242626417 954896304 901901857 964748905 865508665 889413990 413664186 485838464 443171149 794998060 996361446 999031257 500671333 552019555 168081015 964588832 708480878 916932389 842527022 980658828 293190951 488483494 462854191 790310105 272201551 685075548 950525946 960092631 714769855 930401897 846535199 981814677 542592460 638515045 884291196 914655564 31586203 757216710 631759982 640027313 135367486 823505009 303424379 736807159 325364607 675971655 324330695 711661857 84785448 882736772 573924108 938242870 864293973 921039343 415321849 610054130 668716074 970963637 132673587 232550870 464434761 829987172 605549483 723175316 152173190 963243719 339389254 548483635 606422401 811854307 515626838 811140919 266077209 341544109 890702782 932725555 576768224 971817424 195835788 826391528 855031709 909123992 668226344 956468824 456283867 925508522 281067447 455498115 524482094 829216576 221215837 610067375 752691045 923040780 841707481 897593354 776422120 985684451 900191336 954266642 313614991 621796199 852142453 932093818 215493930 768545312 891586445 960349792 592952625 982241837 851774660 963990799 224030485 730956590 105797893 950023623 795664039 842654135 148629155 966429223 343067972 578293648 231149485 476558130 557665928 963833497 487342568 718676303 247582358 801807101 14161108 568623113 184045236 871010789 362170919 881584769 290334644 781105665 841992152 884263427 819728886 885653661 643655369 655515678 409521611 472365988 589071604 832725043 109305229 561986256 761660178 864096917 989026226 991977225 693949330 802166314 547682525 756984536 245686252 262500606 168549851 681378555 280120580 720395084 669282213 695536508 149881175 363465623 621221963 914619666 342396657 427807271 895891801 909795343 790508117 846246711 585976603 937319860 170256005 712452799 998815251 999990639 977307669 983750476 108259136 231869465 415622034 515900625 484349802 639153276 986780020 997495377 46005196 736677969 306898831 743986584 803809024 878333939 483314502 803791894 114296624 957513559 706219972 831822355 385612146 673370125 642173773 946859975 782493913 891066946 566399215 735393830 144515207 675425625 252163004 360658384 501604457 536076748 249119719 717498161 419643085 540126283 991713909 998418344 809022967 864196910 640672324 878124298 514710239 885396056 598523807 663840806 663996457 722646838 807716664 947942614 825814346 839302811 50076788 656016131 501106396 622181782 470908454 669025754 941081935 978706263 367162682 657128636 324487242 534187909 360385422 442037450 518559427 743552291 737810794 777295121 18495758 858359494 749972650 859776091 315121032 315856428 454834386 530662464 734975541 828277309 990540727 999469031 345177863 520347772 853826264 956672740 124393079 333019864 238044875 939571325 730421612 969594690 15951313 77984019 863100292 912889431 585615164 858489017 972459140 978725878 760723948 956157558 573220336 666794758 184182746 257230314 567641767 798119749 200910416 301895529 57077748 84201914 363118877 687079351 510286382 519388191 240897398 854538377 474785113 574758617 644780096 983794665 351401804 749216258 92406560 389363502 665807211 854128053 2386982 145942009 464214292 639066617 762241902 789513252 43361553 560699448 982123043 996145449 687158953 778243010 1243667 6004644 226064957 705009561 864829318 909814170 777234858 938655250 277048280 962736494 211129118 869146453 478510212 843745153 898180387 946188262 958829211 962447886 216416606 325462469 156728225 676872762 42998030 149001616 41464681 88677635 506014594 620580472 996676437 998960364 259787067 512730021 782733800 942553954 44512103 973685893 762703823 985787247 606393744 659696571 520733596 560453411 949749963 996156243 524474630 879798763 507652630 846469979 252099781 648026974 676814340 960601155 435929590 500533112 553259632 986529801 781709335 798881233 387421375 613340158 329841908 770055408 278813749 722524942 412055429 483871982 508153511 707369310 546759295 862617637 501330416 503009690 943029174 973686283 371504927 509269060 601005024 829311895 725678093 953296432 929982972 959917721 671625772 973563368 412512926 522611504 515215251 566239718 650487704 957868290 954431383 955370775 957894862 980206944 33627688 272046237 604619430 832760732 869671924 892499929 799931116 981934379 493009320 959820748 620211443 818472749 315014610 701511943 254280802 538459636 239145667 717311123 582119544 817223015 720657234 869090480 580213217 818416621 544378175 926986240 10788846 379022656 113282092 761288147 714349181 958530500 285479195 459667493 968597431 972900032 330926840 875151122 950601888 958328298 363173033 825883148 69917883 343668937 442201509 651636124 719851442 836146771 54332278 509848054 647101356 748889238 857535396 991808045 556624954 884115713 534822870 863328417 832670857 862024051 949105605 955915277 517776273 992258223 760069095 764171413 307905178 870231978 467538477 567063343 253273561 779307921 728103656 845563737 723106907 743329011 819322019 850490459 938924112 983481481 640316215 691096522 220153829 891550260 687455715 734002907 862596210 960194317 999384627 999414650 72524104 529776885 251506204 536791929 35978605 657676760 972585247 977801229 490256309 746376048 424406084 427164413 600298008 770128930 340780751 387941188 620841833 623570567 715023816 898864985 656885647 875755909 412208530 560733496 822816292 853141867 774250405 984304214 488118689 626901035 408850279 498495801 443516031 895308934 740061252 780259850 551813903 683969709 401755283 433650259 109492367 575083505 423245682 930764421 146611134 776223162 777147470 832738216 879015058 896321550 440479371 799161974 499006772 749189513 402601301 661409947 98364597 289672855 989860694 999879597 340784800 756176501 181545037 619520247 328221517 359195247 223723161 545797567 900572963 932568026 322129112 628981156 754032275 797694368 323888810 956325897 661409605 981692256 639177349 832888678 928525280 939366731 795295979 892847036 335688449 454100881 69599330 380010026 42240135 805567571 387322829 699716389 521937685 756862199 93770290 651741278 433354052 902128330 899549376 951901937 115448522 908218529 425758738 625059829 700417050 779916065 900294240 911617390 672215175 985846749 947113632 947131209 374394823 637908496 6185717 255756275 910375838 961593480 315058338 827177218 930716893 970466768 311923379 764476527 749458578 869973417 309340652 560463637 933947944 938359681 958798401 983323146 985450814 988267228 371370401 879517056 30274720 427455952 668408670 896621371 983758210 994946422 62001164 263432574 491248102 732470605 522051018 688084450 453482369 791800445 706610033 773404327 563257980 993362928 179044145 272377720 202918441 590759581 165189729 748602079 9947006 251768372 663780065 844818582 138126435 446240018 776855995 880590485 118317032 913582710 627373681 636122083 257717570 315396020 946347115 988101752 818900187 843685240 530719392 740238855 109687487 929706954 655708350 710130262 406178535 580479494 501103312 768214870 116136438 869589154 609743177 857146934 966358238 987017225 511342028 658492737 643385456 969536075 681721029 941091591 492471624 842473396 263744866 756973963 169467362 642428749 625392445 735576774 321299619 843059321 99788734 289281555 539071702 936987022 193983839 401834690 378269638 385468844 83530400 684469787 758039714 811720594 771250061 989033060 309330758 852046082 205035817 597941894 301297333 553473182 226179376 349537154 496710625 979502140 853272423 861993839 213618473 381928852 482405325 894918508 685568433 854081374 931315477 990932259 490391612 634354542 269878857 423654161 21505417 516778684 750990272 818742941 839804869 965740476 110505560 305706895 874270244 908908012 490855349 499944817 753390073 960501215 329111040 805356726 321803796 662964836 148029888 999440133 880548901 891508463 810792858 968462053 160877893 677610346 680503023 955254951 740296718 891184937 673104037 811167807 407061519 927432688 924254346 968014056 737412449 905383895 746044420 766506531 664129728 731487358 805028260 985389362 249038208 934732044 693270835 721804147 142600718 572467953 201520438 889894647 899272400 902490162 412274211 595552317 494794232 694339350 952410487 962908269 596350034 816679354 123026252 852965181 636033681 661492875 930173271 990445716 62423215 539721898 127495200 427571896 148564078 411543371 428282960 430568546 666924267 917658973 561646670 772483810 145766201 942634317 942512294 986705561 449417911 481385632 304522509 528536450 731638155 737230169 381181653 639780242 42116328 306650476 634401156 848718680 999855166 999908729 724015511 975136397 369649477 801921574 309744253 553071918 157803816 700437342 299454311 620273489 984412511 988510434 827279910 905863332 984529343 991335205 285005508 465046052 535705052 826860653 610076078 992760842 507794830 787180091 886587042 948328123 770720180 812612207 234212004 850090913 315638050 885381448 899352079 972745272 518213429 629499044 562511598 983838825 508497067 609107439 433096305 657114470 726968458 864781506 16597362 928567475 469716107 633092953 446004703 728445958 476133285 919682203 903476109 922434567 43797817 190253040 856612229 968730418 6815371 571159868 892503388 972934860 524192769 768901389 732318066 898634849 51310639 754112421 870046785 974024731 534527344 665823628 113454243 343459508 257596673 433286571 194340813 436741922 312886157 823495014 814293492 856075025 863449781 985677890 986705686 990685883 260783396 993141210 115049351 732025677 789335538 806506119 181694984 751769500 241902259 413935027 354137810 443591767 171686670 336188132 989913310 994903286 602963816 888469290 798786186 947508798 79143857 363052365 72926576 456345107 855153219 862902359 719042066 944504314 399444366 494706092 890291943 919142521 313080915 736228040 579892261 704391025 518156982 861807960 936234316 974415571 605582443 984163046 854856634 876278073 717798110 884145508 800980820 873185357 908087611 987852902 744625429 930576012 920231455 933130753 240397004 408200602 885442145 906592844 310612471 501889553 820893700 940184645 732853752 832990636 197323482 268998077 915035100 991260066 740901983 871632096 285155127 517078087 960253703 965886828 904095204 976324930 101511721 103462726 455321286 573402631 790528306 853392719 362215568 406831080 261907642 505023985 691985994 726101913 290396330 486727196 613210155 680878816 599151847 937063315 288143100 338633407 906574709 986671851 57992707 669396995 983659015 992195408 336610231 385375807 572987016 671898624 944404475 980093587 123447450 840750447 646303270 901176247 668701604 788071558 203044629 831732310 59766300 598354506 99939511 432869704 998155487 998502152 612419640 709107644 810516371 999801560 831122217 974132799 725323651 759897175 209785358 747962408 869289740 965561517 417959717 828329110 248919223 375721841 145325406 693944779 74779560 880701825 855627827 866496787 271629093 396883872 454243190 629285129 966728736 997879151 372193764 926127333 459017126 976537450 911505358 942565230 226804681 340558473 933059505 972511184 777997089 803746945 575957336 800674156 84254824 175194371 841000936 924077301 242142980 595102129 62696789 115251144 836058070 859734852 672071676 676693990 140889450 463151670 627568092 628218315 770487074 871987143 24995569 141264907 75303588 494698695 380413599 433061774 775508148 828764671 517077526 678073533 898949524 946452528 659944056 912650999 91522069 611571560 878497308 941895768 533403152 595577765 357654183 822678285 466500966 679700946 875151811 916259253 653734845 927888590 310755684 907044664 505322391 971699214 611093106 712094538 232829800 429162415 894263750 999058137 244200879 301310064 754426454 783513227 150167931 892027776 391121659 926784879 626832610 910708167 895628784 967563533 75454248 495878969 303763413 853168749 35761433 674336008 890346839 988032154 13037152 30560229 114273230 173782919 747559154 831688193 727968893 795318699 804408182 820180714 159327917 314173453 609060593 642971895 161515086 816438815 412382599 681806989 72448153 862113241 37221983 477444993 525461909 912440324 722531633 844813881 910534897 963319112 361475372 989127677 743328615 867495748 902693633 991593180 120105245 655936981 569106194 621052346 87117917 547507266 979880741 991497146 855199739 856443918 779141825 975782342 540497984 769819605 914382147 917471041 823654292 872091046 735106105 976961163 847258608 881320474 871286086 883539034 722604476 914335251 98354961 124582144 763726455 764189519 134615037 171996028 574453239 841871972 166923819 659408433 539513271 603279440 629776542 813270535 378949019 512152317 727114802 944616046 434714867 672521143 253655973 968234004 841126466 851709300 491762517 837591099 913562027 982702789 702572648 935763170 89077839 643472643 319756519 825303146 484909672 997591879 575083588 659480056 171412564 531629759 482340997 600364871 91682708 470400457 822792567 845649091 91915163 619024106 926802894 949436937 613825121 731936293 706244335 938536567 894103404 956775568 279364111 991527164 703789843 828196997 312616698 895093534 482722573 565572783 230665622 258793851 308436942 923741851 822580136 974278964 326555622 858038203 335236228 592039370 143544378 330459263 614008435 696658210 889313338 950579294 143717946 804471910 599405295 850603370 651399059 722318187 9814436 133027253 992605380 994568747 25272867 157930559 289214789 341567942 557233147 801516443 679122005 833841897 235216576 972816792 715650676 958479078 258708735 338800868 33535896 165575702 126682348 444608540 585908619 744568001 429749226 914171301 984008321 993779779 702825796 772413209 464325987 712415213 391409679 474642534 495583626 665654883 37334284 751624933 352092044 687006064 694489532 984296422 666739658 989691032 535932492 917928897 27753621 280863622 139109109 544511505 792705211 856042341 653904267 724928494 761536653 909202390 888546717 902183107 27927264 623817549 195065589 530639042 254062848 583084452 146391271 618511577 956660641 963262068 387356357 459116072 58610721 207563451 206540193 733505932 336284312 844813232 529539126 761012287 685322633 770114674 245584102 909604785 195461370 227468834 378227896 904240123 353298916 521722935 567906303 804380278 569210814 778269445 220803069 575832975 609624423 985696252 661745663 798491514 161853726 886908459 787260005 808650339 443677479 716420871 485372035 803216360 887444493 960792751 516689826 945385987 943570006 979429101 59051821 93061303 444591181 621212706 445257397 997079413 215071793 686003960 326136328 566875656 196460546 781837882 760109699 812536858 74636873 418595897 143761814 278192933 853627587 872154643 821290300 922634881 350933081 598480440 112206708 214058658 843953133 910486982 362689128 611758520 935291774 981824202 346407524 536395585 475272666 731257900 156463091 170766829 448631465 956157940 727813479 764932477 411896842 708597097 585488535 940667907 733740279 902288907 697454519 793530286 773076703 866074747 434024790 812759838 678687394 900256954 569948482 945038091 282705448 983433002 694091914 962526547 202724783 597097495 526707191 539753702 750893442 933916200 74973955 199456760 833639622 852063335 599606758 692144322 365638266 714290659 481681673 536783236 811038366 856844294 847310390 989653230 536689407 549907208 337311232 990643068 78091191 286481622 507099682 681242642 424333024 997393869 463992401 566132214 673064504 969208482 583915050 907614707 43517179 471989961 813386861 906488543 129071710 332895662 335921191 442843729 534231835 637177933 642007456 897109972 529179149 655330792 709485921 977586801 414399641 424221246 648454610 812606940 75853348 689445916 48411030 341938990 533897744 981595297 226541459 719983266 646973768 789900546 662121843 689938792 897483652 962634354 179766908 592795706 752846027 817952448 409851015 547414890 27955911 700237782 289045148 932339295 422922268 893531582 160800588 878708308 94087939 598786861 51428519 860865247 330825394 674102620 983120256 997330040 738177574 955852013 542713817 774161697 919928483 987854511 92531722 341515434 840416895 950631827 498672920 872075710 187809569 960942012 765005672 784097099 783991577 962782992 609823475 698367513 895285845 989133644 575002604 643812810 292880067 717308444 645298236 668896326 886498153 979437794 254016989 653299045 638267674 817822884 655554331 930633804 248900945 679424604 901736633 930562656 723496157 986082829 859854894 955579381 43117441 959365194 307210372 649828314 24458668 196628850 390742268 391728943 705939786 892630605 605614559 608436997 408821093 812213209 50373736 361953062 259629178 582844508 800282001 968455050 839362031 888815682 261567668 747823976 592595810 674754833 816967165 996367168 201922593 770801314 987922461 995844861 858190459 935931211 679242747 843339413 698208385 885286791 636757775 932025729 803833578 977269747 642419228 996383296 766438937 795600172 842862331 961725541 551239764 797387747 858795255 951269075 789771737 999887518 478123155 545219083 680165979 708767677 933499984 989338890 910407982 997048207 289515442 899226632 71029100 473508660 772776341 926873423 457615305 804909852 300006165 984434493 315721098 622319068 799288472 857394310 268999017 621101169 923899485 960143266 516085677 814857835 827907874 913626630 19653769 642566758 347300807 419659245 502318835 673546069 268979689 529139213 331350038 910699362 132702369 995490273 912081767 943974611 805658797 910355070 822475945 945181176 770979819 789897525 810803327 889480724 499286924 870611258 519177220 595701821 471395775 771323596 433680174 778265917 317389044 497998235 128355569 659225095 798106446 923577639 592311313 725781555 614487443 947881342 43959733 364572407 302547431 433564274 530914622 544590534 685191849 904196278 629684989 951763754 670484036 829170722 552763120 991132455 703945337 753263633 693807070 881852022 990574357 996653580 583563199 834490573 585368513 967948279 633375668 640585583 285617702 888818722 277517865 881809670 756840569 763031106 67704253 919296562 641362617 663367277 932549643 989738954 466174328 951727098 733329754 762033637 248030838 861361592 203165375 305439134 168340096 540548873 515084610 550996754 554285728 995102211 197928092 403354922 45765723 568884136 641769612 867664653 275348763 442377788 725154138 727437708 765257968 979195799 148617185 927644918 631783051 887195281 61693288 755784720 723526798 964915573 797004346 826679527 421686941 764301265 34388537 909418888 78815404 773024782 903536744 951669786 665329975 925025473 118497132 200735754 194502302 542922688 600369754 921163423 395165694 404875760 691158642 786799257 477751796 776494158 723653547 756537051 365826671 690028847 455387087 566507151 224674670 703555723 42295489 497699450 326699400 828391918 908486161 985583045 434326672 577742648 98296416 630988462 595290170 701209052 214819209 763521458 306508288 441276473 743265008 838408981 25016099 256100281 762808367 771689242 164708517 415113317 678098213 685262253 257066929 458128571 141950250 479787117 350415330 579108083 667509849 771922448 872776250 999274544 817369390 877946473 637129083 786981892 352490424 966284977 896900308 982299337 569266118 665947964 700409056 793316886 136486285 358213646 34666274 987448411 324155438 676758984 502503911 927195616 951236993 993503812 87398997 454508679 499354240 739186339 103533959 142219595 634813493 780999940 797964650 797995946 248531240 907104146 503571387 548625113 875307875 963379388 509757018 666894272 303701039 460272101 288545596 846474761 708558094 952494037 306235059 593832433 147151198 293904433 934571686 963857324 985222385 997208895 515391494 636838821 171065496 602426363 290326058 715090204 116008138 291926940 144126707 356240352 322274896 502745496 794756529 902030671 165838224 220130889 893084606 893240376 230471385 784267032 168482429 194496332 532233278 777089367 148217497 706548247 955187922 975687171 436091610 815676919 593916954 777074049 85025857 674132768 113939690 598479504 206250306 320416183 139689519 501164073 326001886 959721354 252519162 267617535 863584297 946499662 720453042 894946270 765068149 964331784 422760672 819089669 765751852 990640293 522118 803994287 757352563 977550185 120408504 364372959 468890737 790907831 60924363 200800590 775614470 909262567 937732856 953226220 130804062 306474405 211358599 891312822 43812667 890564673 300600190 922384906 848289974 882205775 210747407 577823566 47823738 334795884 758820029 969510761 690767973 834188695 682969395 935075671 468010873 734267112 97815742 356109077 681159237 874632023 633461895 888634112 971147170 972758413 495071375 552551570 384702518 713300410 426565706 507972383 524908284 576771657 567119117 727351876 899901991 934735007 66529474 172582154 892718933 906214012 672275476 839038042 834692423 973250828 171347982 505721700 583013164 607604282 984588612 986529513 872609525 907132979 548940907 959347081 826490370 981121648 211000179 611693875 868690107 985542166 826773814 946471744 555659727 586313637 229386851 512801321 766775779 768442715 752815575 849270629 596932292 748573515 204212063 265013610 793057245 945505720 718239956 916842239 576735210 721697560 858349048 932726168 448611104 772821534 322571448 870120590 671254697 990574560 58407004 888230655 998079112 999110722 580468347 818506939 840461564 911611070 934818783 994151365 257202325 806008572 284347236 641549441 979157418 985738455 859722458 906094117 799008428 943773272 383869645 963201214 176531446 792801246 439883590 524589525 237234041 631076130 758667594 933892662 143545346 593174869 392465870 819517036 508696965 778154938 390560828 995567784 99580646 302687696 462774497 469383709 722916527 875524059 311457635 561128573 575475040 907426579 165628922 630361616 295455168 511040923 616900138 754781698 881652184 957615707 714245416 928169636 437413505 567431064 767804157 999443113 660211869 839316867 393348097 911479671 45972706 402223522 794405222 939328001 895044530 975228857 278435206 372316134 605828634 681812200 337524935 564807776 695626614 886121998 23060494 771784319 931702864 981738623 49731119 927346995 360879910 983096029 428490274 824506112 675487320 780647688 480284837 918709994 997860160 998664526 307468690 729982507 960463140 967524209 621277217 634598428 930427212 949265189 646895132 853719993 536160997 977457243 756858437 807876857 277703272 794424527 180393175 236152756 925061515 956674232 944999800 948844316 265593652 356066395 329189557 417266733 34408279 272653460 334382545 548248853 435278720 816534494 277065034 450973161 605053182 760838160 23518540 769403522 676426422 851610801 142598885 213324985 622286145 772514064 839081969 879344276 977124680 986226837 370619480 529792286 87344425 732933383 989498893 993465716 124350325 873566538 817887281 887799665 619083451 719612370 256478168 842931280 700495333 826497104 842787095 866957056 686383527 960840855 582896843 880374860 518596369 560029025 884385532 885740700 464420237 695209026 424725017 675499104 622194804 699139973 466305986 982254069 352008011 651477159 742245916 952667144 32910370 894239509 73643589 714339611 435021304 920222171 144699103 573521786 350597760 709856692 787161863 896831368 124202081 839606324 300834199 999768178 376019481 407966864 223547872 586641453 630981285 920729830 263505070 573008999 41591798 923396503 927369152 945870191 56354496 946017885 755359228 978161107 137981629 699888012 700651013 938503671 532193345 857416186 978799549 998140578 169515274 867702431 747957172 833365799 15525059 451123175 467164004 910019512 559178216 931462382 301251409 617053948 718751120 900074805 708252254 955439036 513792477 651987201 116368839 628969580 807894231 830168258 439494821 934636074 762820063 800968161 400374514 733636561 103270028 764691214 172747058 187129522 145841490 224987324 397770983 839475056 543917241 859110281 174346544 505203842 525218174 626638374 889791932 978037072 120992928 857018644 71982673 193032831 186387066 785436067 711063955 848725369 121013502 534688444 770723945 814066506 488972997 948903942 166011482 598879557 270666021 490426020 199628009 820780650 675861492 971077107 935470571 943697840 923351022 968822502 314855572 634502686 459534975 528299520 785304123 934048659 709260908 711360148 848727906 983205684 648175253 934680243 935348103 967353658 547795072 722872905 929410225 962832979 367376474 776058316 996773882 999073925 759787512 807769200 662511048 738867201 327352193 998765729 188997343 227483436 807850425 956700662 860943039 933725753 935051462 946696641 94015402 924556475 256070237 838484933 273381172 338613819 514108182 883959338 865391939 989990693 339717605 349164927 326871286 781932643 738843699 780775891 410103166 650856784 847902981 897061648 492967786 820607089 267363146 456250533 262483717 659263386 464354360 585055825 629045559 916068730 503811832 530459537 225317444 488916765 254427767 704485871 351997551 815217277 455745444 736537237 379479270 524043500 145883809 227275363 817875526 862787486 509714282 831379935 974747979 982546510 455814767 851152479 614097805 841514030 216943683 464492208 204674378 630829097 195708999 658140979 642010120 851148017 907130070 988588904 848660873 985242451 612980197 918484207 791163544 837453507 767937679 808738626 94668190 969502662 190978147 279588212 480204366 946489855 933877981 987723942 819808963 828741541 968867477 969198251 431904757 473101825 196737192 408571294 877380613 890485565 453320859 740142698 992827674 997311906 781349997 786064858 941615299 987224104 840893536 846134774 144356684 151259748 704793230 854972230 700451589 863501967 62346835 416425539 133826288 927669110 849436484 918849047 340201215 966189341 984412909 989541570 423921661 705233685 435830243 738064996 55119896 421100836 535914771 586968174 704283164 851072561 838657335 953679133 298401946 407108938 609355163 739530114 639210784 817367341 143093321 363957648 496273833 574441876 646207550 719001954 901986787 971145036 414062240 737804826 456013704 598559348 817510940 948626928 820749669 916638246 246634840 809065525 986490569 999019305 844230618 875773715 566537157 864893451 61419531 607925245 56016325 211234584 628918160 695625382 789799567 949469143 635700694 687825671 192298856 202451025 516062255 893141378 37184146 588586373 227203329 994593100 889208042 959675085 652149667 943017939 890651472 986938411 202023589 964899062 780189020 970841944 411932891 519912526 90881393 681849727 659313818 820806075 698891846 989001271 38613852 576428742 549058774 820206504 239148039 361762186 98790879 216891771 385755157 602915297 553324381 819581466 885249916 961460919 135483434 401751266 708366709 990672550 940613337 974973932 452770112 832208838 967544218 984462413 955748047 996361945 245198412 734102682 38563077 360290339 281061390 869674143 614608680 889264973 262866381 578886649 274147480 326028141 488113459 891159783 722707461 758756106 662702405 966159162 210567639 592751875 579707501 693903241 593719221 713122658 244956631 502433793 963289162 970796131 284877532 508148484 509338137 851680418 493688324 944346427 28332580 613676249 109189695 871559321 388772849 577736924 460334929 861359332 746383353 832965900 329369387 834611971 453214663 830078677 235495564 240231990 362252796 778705445 253312663 324209336 918166113 966194301 740914685 811703930 704012627 912527390 868747728 963085066 121239376 907567615 809741751 926293086 624031908 777605130 540206616 684422919 28145091 488832991 96880557 305201685 433775878 865004782 29018677 977626297 690598093 736048136 422796070 959816546 803977397 821883997 619606436 912539327 897920491 972517712 200640872 202956383 97803612 324385032 690609687 965352402 429524310 467626171 299257445 309640839 765085582 829394990 409385232 603806645 298994050 880516294 598971526 663257038 166424183 559053135 665913279 926733259 954725501 955607356 142700972 243851045 766283285 920530329 274892530 591805013 863439376 870291746 151318672 377769391 878433326 981577533 221031828 923335540 221091981 581473374 55436654 874864638 16135104 663211276 579119561 683769073 121879110 560986717 204196971 483278811 678041643 776872854 985414540 998352723 58233130 668666279 632286912 690021714 887275206 964807050 644341755 993985291 998116382 998181093 57210974 759426001 720399465 728842004 521697430 913754117 428505878 999307503 537335729 762032744 917342730 997981676 420597658 951478912 244303919 341286060 193826488 831325278 157709372 626465962 710415600 785201004 432831375 797082131 202275199 771135796 867739166 893771738 588014251 926371017 203781591 326231540 254411295 747085976 622605088 911753698 700877776 901766164 730115673 984728872 337835323 410458264 792555045 960442128 676427409 927150948 15585289 362899759 807741433 980247737 1107740 48495911 231053642 514665417 1643901 874506601 445156885 602370318 389586984 588413193 503819449 580845634 220579911 976025651 519985927 877758412 80510550 451365020 897146437 953165183 61288873 293592507 878262132 928280894 466552087 651464289 442373599 781090044 705602557 980868883 385325149 723892227 16761304 743107622 789903288 868014793 835691195 933496265 136085427 242710702 718942217 813468975 86299091 625660829 753272100 825575254 98395982 996238153 987729961 999846766 374211686 906934752 277271534 620491208 292766159 822375788 790719722 957530897 829984285 949543822 858291434 950701840 778289366 833031174 140424676 556800004 280958183 766018601 106882521 976206149 539727666 618575565 400803061 469338896 449856428 812072243 906067857 917287824 502387838 902573368 674470328 827571896 214767405 928819366 684585210 733268902 223960018 400261623 156593795 578841507 527772139 584087130 652622292 673392408 64262257 316808839 964189618 987965745 52341141 775508933 453076867 582644920 892572383 893196898 326250240 580039048 830730352 908497817 524845808 914213511 171585982 423961447 23934822 889519441 531795045 611907727 522030240 586723737 28131595 681342343 457300311 664199622 121133813 534714767 786175991 806676690 178166203 209035480 26727799 551523188 166911858 281958737 262213052 601502232 768285671 929909575 691648304 838829642 762883870 972843507 806537923 910986566 427584472 512695024 862380936 970609290 423589374 603901833 264173686 502007093 487499070 789601363 14768436 460128148 597378822 767369988 554384488 739530269 390715583 870084634 572640094 835742681 909549340 923790431 754799289 940118391 661014607 835790081 980138119 989356415 713428482 808182096 754064155 781817479 881516162 949039948 368499712 753415119 773905690 789213463 271134346 648872426 58873383 714200708 402865045 549041134 732964291 890611889 516306267 833236588 209652866 509089855 417025587 437732293 252593270 411907367 707363761 842148570 442668368 942999441 644569043 777374671 565760317 851752581 373371523 417741301 46370722 813837891 542796442 859586103 448860558 548711674 622423736 747772534 12863048 301254931 40541658 273833789 908935313 969497515 515576379 522173214 882865724 917052359 483696717 708730681 662928592 903008716 603189438 817348481 109087192 998794729 292335663 660486164 980553436 990756174 108357985 490124733 761625393 969735090 337665428 380019058 562409782 879063736 115722132 553696698 899599656 968036719 376530546 713314661 359552743 851461898 671055254 896763395 592450341 697008077 836961206 873013474 933482726 945419301 484448726 717477872 318984131 667405456 842878440 855725566 360262200 917141677 56915708 777062596 603913878 675733778 458788317 785515734 92149065 677461900 21275636 150002915 235582387 652320901 826473408 962015014 343935641 667768864 171010246 563514975 9057060 53513546 64583687 213033369 733527381 744475289 264395420 849805214 565176136 641917453 495739871 537809577 839846423 876476338 131533232 362090331 284046038 761970915 62275534 654876506 128303361 912899870 982233667 999614802 842101328 896785952 555083759 599978664 509648876 835585969 79162629 79415373 912245524 917725588 177926558 488868060 53342489 626945175 69975765 598896620 877780252 961831232 739828642 828239113 916016004 987692182 217601935 276767973 999802827 999932747 919945974 932828899 443703054 989815712 636994533 740065337 17227697 770413162 167746399 381789161 400060417 906909858 812819005 868293593 545672472 626741568 733799194 992723202 615005646 992515402 223010480 869028940 450162338 555107435 307293618 483620865 190273250 703254099 649125417 787890445 330164294 807217419 232447058 805183447 848048462 962642535 117926729 397863952 474957104 839689123 190464845 543673051 582520254 616065352 931257283 938202410 657094088 896885563 207776822 942995498 205778625 777470571 462047756 894252862 350019804 676806235 780046435 966672829 7556155 229367543 683264244 732373269 361772448 474624756 87913880 107723367 948270556 957155362 852363427 962224339 749072165 779553605 156530346 786610231 786881415 924966586 911404654 962788445 259880130 284576267 632186680 680144803 945968848 978779757 422235326 528194026 13982637 873649016 386984566 479642180 775894054 785260047 64422142 499268003 321968948 886506806 799418763 906517996 784819551 971765206 435744040 686463457 692724048 853426792 228774065 491982744 256475693 995192949 347668581 360126868 677100208 949641228 15259242 970772942 992877094 996445287 542919059 885643686 236733294 579924582 885275350 982117725 113064908 400241520 331512505 371560133 81894105 242027651 254528222 364750090 830669184 979780279 823160264 843590572 988512334 993217024 448601992 695092063 334564291 406551762 43628393 555330089 419449959 932189356 944849075 977182881 790901122 812980011 824549619 959249285 496068842 999916962 529945896 549915118 784582143 800729027 144340301 454557944 86558236 106306305 343964098 426344148 767114858 887262264 627954727 926806766 983378267 994383376 777495576 840487014 359496699 393651574 786937740 884382054 54163397 186696661 888453447 912595763 879071820 909955136 204162348 387981878 630565379 747291487 732534826 966804057 451467265 692493578 637638461 772303449 778884287 934245471 342167018 544375225 718970505 752289565 415522398 965238106 514481798 885526033 880116334 960973958 907595568 937525061 855336181 949332299 648133133 971603472 699945385 947206080 915671509 956410238 310619562 462500233 684877542 749446760 192547324 558513647 243441668 838868248 709904192 874419840 90698503 734984852 103711742 707346694 963831078 993124083 826526198 948481197 11699266 636340138 74159294 537111543 370382936 646995594 608103019 687338190 667817009 912229910 325453473 396209715 607344681 942965194 396671151 870209994 722718470 763263833 747629497 768586807 601250803 841715795 866396028 979588030 759518652 928812058 112566441 648109351 320071590 946000152 997947738 999765527 302145391 934060855 132253462 655619756 942897543 989463273 388669430 405019394 799234978 986365109 19539373 554100458 180136200 827484189 471805964 473771901 736938164 912112091 388875304 922341791 148248338 807071815 663341485 787290251 222432334 911210275 523634519 638636316 756893012 825615678 80124445 715345366 17495467 926756417 914483948 977214303 193977541 494831199 104973339 435593253 351158519 985731066 895302835 955937116 724081388 812469670 166175674 854265577 630357316 786775079 925064013 974714036 815857693 890836374 121782093 845978590 89653659 436970710 625270015 738009283 641355589 910608028 229481035 538805532 162895691 951455920 405554718 603132192 815244055 972001644 106487997 991583839 658316923 802037231 322043259 406885149 504357430 719486671 610355228 952470610 876705067 912787844 75919348 150583440 169236244 423614472 28853200 319170227 323270879 695640687 256730080 453316109 411020268 742374280 602635022 792168346 402508453 745567633 424929518 733796417 461205605 781023191 958226705 971012628 262847081 981901942 410082374 964645285 444159976 453177074 863677599 906741229 259585791 765899299 286716242 587586400 642533216 980678763 501903229 860053309 233981135 305212896 673900212 971646652 526078964 746874550 167568429 312370078 382309199 689147433 195235249 995309667 128074711 621903805 273488614 698894540 814766453 839888264 416542834 669477639 687046073 941146266 105933756 339450120 510434957 941296736 203843522 380505389 983318412 996071216 285791894 298195544 97081047 547418047 904587991 985866214 683511648 997306327 301895783 306751093 211641678 582510728 929609785 973673919 915522795 920659964 876864820 958488784 976160295 998949142 775539198 888030635 770612126 962391514 582481006 728890821 556482934 743934549 573924992 579430953 923814734 943002189 360760984 776248472 487791241 882550169 491088369 982573054 789506663 860195298 355779471 993709629 865609698 953205804 727731974 806604509 148517167 237854329 961504727 992934003 589688039 619521936 324196753 435586727 425397155 629185926 616853852 929125655 271041969 847531972 95450416 382629428 987583897 991617398 929943903 974069690 23865219 458338413 946391169 993129956 418391666 436516276 672749757 697778132 791275196 853320871 368632983 454782968 933502535 955085411 264841854 353241474 48206119 719920819 294347994 978904079 358942914 701680755 793729451 969192443 338612549 714465126 499183350 956418863 817562726 927587632 442238336 881138474 258632115 808767173 946030632 964433922 487549780 615131229 813917426 818269882 469598839 685788286 161309868 209096300 672726768 913589892 874255267 915135458 567742619 730561400 286706734 961102037 166703340 868840328 894134914 953516030 346256127 983874802 235855728 342212818 535827714 867531373 506823326 566955899 487087688 503134526 748064515 787120429 865580296 882624158 455371938 563380668 365072708 946678552 781789210 898228470 883293750 899553902 571202509 724971102 87028360 112622222 973420306 997074924 386748255 476612400 239005761 904212310 126421459 459492456 923896263 961745194 315699849 792508257 915156539 940519563 721758249 779113190 151726011 559273410 12919341 650613008 58866159 609936570 826894837 992940636 156053771 655622274 393906182 472334625 249336467 967389765 623903298 895208233 112319539 502624253 361952663 448148952 863271548 996177410 82562576 747299323 310868355 368902048 989085598 996425300 63460143 324105040 835435953 873045083 873953041 959044064 531901668 965434400 275381371 369331406 137116093 304682023 902895050 957256295 45766676 186873729 371783156 795296566 96306788 503736853 130063792 543205169 918474837 961847152 847763680 980665842 277457654 857441372 362871265 843636984 281617683 372181987 318413106 794061556 771622370 857716938 805943175 864473538 688937588 857636409 923111739 929173721 144341070 668970104 721324383 858525095 262112999 431920797 106109568 174766069 219440616 726417840 574680135 675125362 295686643 833046901 188046818 614756987 318810816 741398622 371452094 878090381 630882354 656977844 323718149 767349190 273371164 288862762 140766138 692980813 664813208 945326904 482596319 945305846 946829962 974896477 820823635 868673364 573032328 885633136 993821617 998613954 652453985 938891673 127646570 996500740 172211684 621606692 979467142 980940886 823928410 879957994 46007580 324532358 545619332 665240358 643161625 651077916 842307588 867873420 236801021 786997581 547709854 571233187 286296071 320068854 308535290 703223790 261011953 308115283 782078591 859307448 58370687 416072478 186115676 729381905 623166663 931734927 495505487 592318226 753385637 796550090 405675465 886307721 23961894 185749973 947614295 996921184 952267526 977536268 665068701 927295861 155728080 348237396 446963960 451123789 389060375 476425941 36088467 456140273 931146995 999882944 974710968 996214640 260943329 331611707 177744669 369262681 839006882 949088851 126726601 683147043 894570156 911866588 490378217 556512154 528952506 931852300 791805305 845708351 437344556 871244309 385051198 397933197 874541775 912421768 82318885 772456188 839260996 984566741 863930357 867391916 952507996 970685893 822924580 958719647 362078996 862409692 512269472 690658513 832851720 842074615 292946536 680110779 678643865 758617951 97291535 589941196 617185751 737439314 919260306 952973572 333884079 596943107 984650034 998115878 985044490 986405723 907263419 944556447 750082450 765419818 481057535 857203594 335914448 461235866 317784305 824067860 61006717 623082471 207743593 685500299 746065471 923089088 19842137 570159246 745606420 834637312 154455128 598956212 251319976 681836231 647067056 720081683 402955477 647086441 373997274 967337831 726046077 760059796 76870013 801805417 877713209 901836795 323572305 691522152 130084932 174337590 144435848 391873283 694921025 797544165 427221202 505406598 630647382 980422921 431127349 930168462 689580863 956004926 871356875 873113707 453824233 741577473 150761704 513309019 717517491 767902441 44123753 310872722 763749009 979865342 525540611 879488640 987203394 992429043 904833374 945600742 386227611 401189141 545818156 793142165 395488264 600191115 537244284 575462585 869138381 986717783 511292315 913785511 733214044 829957161 587063276 728370865 724893183 806500036 9970902 629891817 94561594 178054957 38549531 125593321 351723010 674815228 841622537 993314775 460195016 957246581 864535310 977419234 524770998 881778951 891785839 932393059 698378314 831144962 688828884 725468157 847247436 917151551 454229359 862147267 15787923 642766478 759916986 932580658 670950739 910651894 633392228 737119993 552202688 889735389 457352854 459083696 824951273 945117877 156528829 617010414 25496191 25678419 326106320 933609372 930273844 949372573 789163176 965760803 298086437 580864893 60325766 441535288 175576153 215435709 671351591 763566942 363497858 554858664 618386438 750051881 618742937 739791861 612576974 779832110 153537594 498147642 66101495 472895881 696414963 810352814 3707416 292686314 361050433 401541822 409645533 675245088 451292323 988270346 808831621 878145538 717783307 747692554 171788156 271326753 954628894 966732229 129298409 555188997 287168734 974563356 260862841 672917665 536596638 890767829 285197295 322090466 810574760 947134550 591508364 772590972 302725297 462247448 609331933 661900328 113393760 302338539 443964992 746909975 179953772 461814000 497867047 566602659 465354781 830605716 689154325 973615264 1950690 468418028 567397291 983596536 234945521 973936492 749383625 831636403 422239609 907410742 634552140 920835396 461077051 700944239 432221092 833645994 613287236 793043868 186110769 909533629 609489329 639012186 381070599 569684905 103855559 540988747 192895164 773262396 840609301 961056968 464651774 728355001 280786204 980850098 605935552 732867332 28561035 367220385 188490425 839309854 25278784 121873417 489617402 605460658 228690709 431553007 710974215 892083416 524372681 584819849 669990760 786224183 519174276 567334296 126148998 145643359 910235796 962477739 736951779 799986761 426676826 582758404 641301545 826479593 722790434 792079478 38302758 115976344 282123229 721637845 862870091 945317493 552564819 569383422 964791512 968861166 669521321 848781699 504192242 969048973 74752870 229119798 568485660 801278405 335144711 984576318 566842739 690613110 525926145 685713425 727357096 844534899 48163497 925649397 83189496 580184130 523825511 608844125 328287513 871229329 262746338 503441201 855273391 984131235 337025303 671527210 314126429 568146988 937777805 978046160 110338973 674086127 605199963 859342657 235099813 658226501 636045159 896528961 424618515 988208923 782762870 986451165 422109924 932512610 461395768 778133415 373173556 957116685 334079053 594018771 652775938 885486257 699340172 978851309 151596389 524016835 450643102 789963939 449896111 894802274 436912031 865155213 642561372 696849404 47481034 386695063 177114224 598077660 354090782 711370831 890613705 962015243 254410452 793162073 18220341 149856733 375163499 605400012 603575384 787940749 262022778 504413789 440840353 590505453 843066892 941438216 100215769 770654047 534486397 867592955 162794233 714385468 430261213 874581432 18318819 872627755 126391899 500890946 346501441 390843239 493921385 700604008 450556061 491703158 273619711 477540391 534134507 615924662 679641034 972366997 830304106 972867221 699250318 917016110 928196790 987667986 561146006 748402296 695190663 978426333 919572772 948787587 681340110 857894900 871764296 931067109 352532750 531009228 657732579 854856741 86769002 234863452 406386943 823165781 821595243 852971891 914146121 917419848 723171726 784512958 649972102 925588049 446300597 536834280 417934121 450078141 291920977 902975998 798935311 872146218 49177390 352583033 317755969 345844040 281413364 667990292 267750228 856272640 431010404 905490436 152325871 909835398 122482724 144713263 404338740 493978330 160029679 320909541 645236106 742023189 557032373 963991300 126837426 743941640 869090862 970371693 903234973 947687266 283266234 446281062 162151903 428904596 512318302 966501933 79334195 495839309 823306537 962397828 973136869 997501584 980779529 991668128 136425919 943927431 72985820 457412795 933286838 998182920 869657127 962321932 921790059 931819766 261254452 824028016 268213475 553726126 919000793 942922401 378659604 392711393 353101982 795713989 452849222 556669273 414065534 772224107 308083980 696108792 438235932 707678547 365683773 541055324 154423575 982268413 520135456 754162535 166352702 282101691 334530989 413963649 704498492 742471791 764869090 842453589 206403981 729109618 151955506 461751738 197420522 746401545 657266573 845940369 420243346 597635604 126220713 712665085 320815194 825605172 639772000 906630772 739586617 986974161 994965483 998755913 122802632 995513524 508894873 851843071 454872992 941706164 738010996 926058660 929636692 940189036 908249805 924358312 701736350 888640144 509158643 682554882 326459599 893848282 949022443 964930184 394729670 992128777 768077146 869180867 597444694 878791048 243526796 376374774 832689364 878823880 706629480 949280886 481597225 514904249 692508239 913790955 181442271 620041551 997377249 998447417 916437646 916954826 724895675 820175927 10840810 181643805 446849078 656696578 25606084 237240237 995166787 995876879 325996402 917552131 208301190 496957986 180487021 980891270 836623957 992338102 258940498 691449274 849137674 884124397 600665177 790073733 547224272 621309912 821278779 968757331 798406949 966675034 337108405 727658088 857122004 868835480 273819832 703619342 307405101 829552774 31377011 672647256 362286465 594761126 702429116 761899032 34747693 410377600 676998968 790441592 967873953 977941045 907563295 970673898 483301320 973675835 526068847 850894535 460458632 834560058 345001776 767820103 226451983 868527241 712674733 766442626 177918825 626835408 880258509 986942976 467281253 745818351 858447153 976625718 215643304 556519104 931623514 999594550 246188288 253348175 525954649 710558132 615930791 629415833 582704965 845778539 168245988 649895269 359755613 447411026 354264811 504689166 816038978 866982581 44437479 803030189 774286875 837817992 705442896 737420831 539169180 963744148 233621326 578299493 88475942 982723172 639176780 913013100 163449737 966445342 865218630 890237670 361991951 652007596 820028860 993890626 267306456 556047095 746514062 773939151 282948642 609637159 824350055 965560585 81275376 319040287 943501873 993945748 443599829 806114506 509814209 766309442 655733718 691397947 550754415 674314000 844758545 975503849 950731064 965204961 268375203 376194369 62890443 641440513 419372048 475994356 908958322 954337907 642428838 899735894 168216200 964832735 471479207 664076128 72609025 325305003 533811384 835367875 808693555 964552554 42674625 637373139 618399606 901765833 41278671 339221188 459862868 485382700 323030104 885401465 40605775 119276471 806695054 935189727 948053238 977602588 501196575 602725116 608813296 869328945 660105714 757559909 829317700 929407396 635145578 817023789 250272404 371319627 262837305 376789016 247230330 969913673 212577575 973887117 669133709 773549828 207823396 797982216 138444001 186347573 917695076 988922537 485893056 698438125 664724327 864633987 708621612 906068681 590351456 783961006 887741617 958836441 434336795 532824425 11804934 70119899 433214390 965229632 49535525 501717501 811413803 857333062 660568853 933624341 895639926 964392356 133705334 326701549 68587018 521504348 609082052 917474880 110530806 655642381 674380145 729251292 603013558 996494197 363393715 616008316 405160104 791189977 668739618 980350519 350804897 896026852 674771306 931370619 969762903 998577062 363507725 959148705 332206408 365802438 840392499 983889733 305163360 924527383 904129612 978073846 129632611 977115130 353569396 723786380 937055548 999308134 56851193 885988742 460614227 731512832 989038671 996889505 828990515 931947664 741422045 874930959 820634586 886021455 655560673 943012140 334692378 381155119 252154196 548999526 449604315 845390457 578948662 930526376 515352548 976892084 283545012 498072144 362628098 598773817 174109443 989481177 258573698 771020160 624252265 882647828 856233732 894075088 918774836 936786938 712607602 823399173 519422926 533465796 357045290 706847086 546944039 876434645 526985658 814418662 944583570 996542939 818416345 832162629 266317056 492300294 928194148 978276659 114819234 369426142 844271737 989651494 948314998 977825424 648927133 996529005 305255880 779005196 12057977 693855792 603996544 717694306 318345656 434993095 443896950 532330510 306083154 993376591 452346602 622668403 487324980 541017206 892426929 927290396 151157102 581932769 97594719 206320805 689661272 932490388 949071849 990937535 654587793 664154228 285791177 532396879 859211329 893623298 390357333 642966312 43359796 173896938 378266322 378985878 14519683 62658292 413188547 837289284 66203102 166713446 813386645 973244253 416250665 501800971 420894417 525189333 615013271 783405034 353718666 661301617 808279061 830557199 120617980 880721107 765219002 879325546 933640456 934050672 891194570 901867962 659095095 689596041 245815572 850942816 250703236 951829088 219236209 841354481 95553582 402021816 868357773 971162233 175974685 827023399 94441363 212970129 386830885 912222629 339635839 675319784 451735404 894798673 102463736 870560852 707223079 906228590 932819316 980188057 52030253 937808550 981759947 995103319 833839457 953301853 519608975 997751182 858728569 880493518 681481204 870316662 644678341 706223640 545646825 576712065 45919448 241440671 326037042 571015101 959499364 989844016 981266250 995263242 497734393 964092429 534670729 814540184 701430840 759231557 143383518 244371144 286519516 924415630 173688655 841350199 543867520 658913156 242085880 550694142 693050711 749942942 192844092 418418009 834531453 913010719 593900941 907090039 183516370 715383225 776385414 828875566 346588485 739659875 748754348 868258608 996522203 998618426 705405084 803756312 160350241 307204022 575652182 885058244 376580301 387369966 50610461 700947102 304931233 958640159 255452737 282371062 98788179 852587787 355363238 736955568 237505562 403102083 466765402 549422757 883774045 946245875 42876706 255675384 858400226 952302368 961420235 975813068 605095237 621073593 918475742 964915302 404301964 722046792 739139170 997230427 78181563 854836536 208815181 834238940 222848626 847111466 900427441 987877440 686132342 904494371 96917176 770433122 443240099 588001395 838191093 917391048 157597335 750226525 403862909 592074380 41670859 942043163 876849149 919129099 663644817 704667506 399111622 505052510 396489175 947553115 133842054 890251987 201666468 347468985 593992216 847345282 789050202 891794521 511288775 512327606 359856534 712556977 576206736 716937744 855816458 975137268 929290327 991353196 786734135 831348042 926903710 975476951 313986426 837243519 498791246 860653160 525836483 714546473 213920663 296968969 294248582 349071279 474538312 717598832 530652374 824608689 691642862 933784738 335106239 600694081 502971696 986425170 22584881 910808190 108348377 968151437 57869541 93644598 37010622 210112329 968531909 997962121 570663149 681092591 229750542 944676469 266984355 393758138 7899928 135945086 188592511 502271113 400110348 754169189 877384648 976835017 614235751 796727733 133090491 933565867 773401004 862287064 608783624 924207021 791352395 885946665 416076138 573442861 116267049 571355059 586613426 845182029 630631086 952615668 759790692 907992104 808060348 963261687 786387776 807962568 222897228 746381914 986686561 994882828 821335439 955024503 551389652 736903514 244879916 820604975 393811156 497694977 276698417 569914246 804002863 976892266 115351900 735481751 468100198 900573315 721660859 795790149 811506977 834089910 562893546 873836425 259636335 408719322 523772367 880079786 536481501 817049374 612683030 794671935 491727595 691081864 696945879 928467432 122859844 842041930 124153154 885958512 144158643 968786139 811505637 998866833 89009756 281233821 744044745 757564103 768925643 790245343 697232110 940313334 982248438 998683815 230505640 803869139 949951465 992185940 141961205 568843418 550392690 635131842 865745923 969482721 780321511 848097877 124044926 572088747 160691358 351187103 445108910 789716557 88932407 722426070 752278805 754121731 583987558 730492356 672465496 677590643 381440195 536099931 946138983 974120248 654265200 810752210 225203607 758531883 611981249 991913107 466228238 896854155 161085647 176609364 860085708 955817476 486919598 759782376 972761026 980618140 309531246 418971735 834080324 980735708 362581198 444896777 947390476 971331862 553943531 863736284 736015413 904827153 300604511 699875409 568903564 938361251 160021018 757895783 574347569 985976789 845783959 967884983 202976362 642964079 959582031 999852862 332172327 670684032 205477648 801373253 679280067 822854132 296083077 372488479 800489973 872071569 768956345 770900234 495867459 704724699 912926715 984048261 323284418 808875047 817914362 961152016 124280954 220855210 792732510 904367417 207193212 302223669 33180421 496391737 561162263 977012352 513258800 869163448 354217535 964484370 738632908 953885689 741921931 793635556 351017766 908136721 804084771 989568974 191524585 198457181 817049752 969248101 938360647 982315983 800585355 947685163 974418912 974747604 146987942 767294188 121409743 358929101 952018834 980993065 185956299 395951578 249718632 257650791 499183793 764904933 281578771 284584312 478249549 773227890 490513987 753505784 729377302 764837586 504016901 891953457 972123305 987285356 304813795 522130608 867724479 908776642 776927320 803450516 589406178 827001039 956529129 964405289 431600664 660590623 125643434 922860394 403382916 754488729 449161216 988192844 654261265 726871516 328717799 427096177 345280981 652364210 657472825 842643472 22300074 814156027 428322901 905058671 870390250 982769311 59735840 338617655 21260176 386556508 695198334 960746638 373331403 393042195 926771935 950464915 45412706 764361492 542557014 935742207 453730954 835654784 467526640 921346026 413790367 761525965 250980730 634226213 352005426 687057004 779172718 796760843 156140942 299329874 342445933 909264785 390966463 864367209 879239295 918723890 713588710 944276972 784832956 946163514 601482820 793781737 663094602 734763820 76423334 270915039 449269374 736898470 479810208 799066079 918404058 926717177 591382033 868677422 991826727 997481286 359054278 798254081 414903647 835996433 468580615 683969054 946026908 989808700 579701511 595660713 789267539 877555512 85505657 146831149 785454454 868109022 195550213 983714986 198192889 426966864 422721656 743457528 797745167 968820583 395498540 789619065 671566947 846292967 862862013 951551394 542477706 706311142 156770383 157853702 795694611 993014853 490398145 511421660 942850663 950713397 109786713 217527328 893748095 911081845 337011694 379135001 930864586 971060151 659762948 793316767 779507499 789636880 500118093 760848518 227679885 927255873 951017499 978068791 128083348 932795786 82446351 766809056 170059241 778185343 946060886 986870671 103337684 949603828 813208347 904741632 595048605 841154802 647597625 664406809 125286915 412154484 50815118 115816365 87652678 244139667 542674483 889707697 904567377 939180752 936583334 981567883 713645763 895924216 404405169 627936778 106862540 300411438 13024511 434196725 509974288 970765844 180093869 817717891 723066240 986006357 165840743 297329559 201209842 443308127 955608891 984531110 283830584 979700487 652261099 895984374 764826922 957629347 42394280 783859242 271248584 884372887 972873938 993807469 61886571 523777062 136630941 401938400 999834834 999898910 607198778 653489267 626024004 728748228 410576787 957020511 298375472 632011627 307267558 449555827 592961509 758983529 815259408 952959938 451355745 906430471 885981844 887638816 990625162 991970985 534599015 757423462 853641252 930315242 804080315 887748021 230131194 288244199 643214150 780644234 162953989 400912030 643115757 850022120 279516928 860396092 466077958 598872111 624662380 690273585 514361110 637462363 864393150 893335968 443127837 818165459 986903011 994824301 114051978 700514796 296555241 880918997 203031993 346193554 759972593 814151099 532836062 661643440 883027739 910536125 562198025 929655234 94062156 706284388 368638000 799835775 925152937 981906143 344483670 860143712 91432933 729610222 121250741 706321543 564880545 996293075 86317014 936430943 683850230 893375892 471493734 609753188 315059624 726506427 905279679 941014289 312564610 403911721 55682367 386523547 836493153 911596077 822858127 968285902 81687179 268569006 584689421 860013122 320568058 347995409 569429968 667241980 74056408 625684956 987836376 988941584 572178503 632635493 647186579 797589201 565238557 688616103 959193350 976034673 642364875 664498234 788788452 927800079 378770454 511064938 77529992 270387466 270441651 775168604 537690357 807111597 631937685 883499680 926810853 986183441 8538422 280747643 566862406 846408348 526672743 746992550 173114370 445531335 455573644 794118902 193385950 277164878 351078563 478522271 844791827 965630241 385861805 818840363 888583130 920369899 684998960 719186383 980331205 997337027 33094785 619173835 447328345 447700660 526135306 943638073 641428453 908350297 394170376 519860440 507844271 832068708 94383048 533538396 882965709 906510058 253887616 515361770 483718938 710504422 51203965 861834131 988918405 992825187 468989866 631083591 241712485 464927929 79711337 255238885 409211812 429836131 535747489 679247595 416181903 515791858 784196054 943526186 35205629 890384963 125266114 952462469 646699992 831198591 866148237 879695944 106432898 446661474 790939322 813795304 898160873 923426090 19231310 834302310 238494811 507039608 11605489 136830407 880117413 888324368 492217214 512340909 917836175 975955773 341033622 837746213 332657645 532294883 993507765 998688743 897408398 980975461 817387715 950864162 213258489 587568701 592541634 627893140 129421682 291103817 45008372 783846820 56491879 764100723 812243288 881677753 885251489 902274008 138557495 190454556 443528611 559129155 456146148 646675359 581809016 724234680 669893943 815920574 825699631 833329261 992470701 998257821 31899460 901093968 5649112 198706476 794906001 931300234 382460603 531142812 482001226 872866816 807160626 828118196 357144732 498241833 970146907 970974703 473016082 806958340 550666608 786674925 720354176 828455835 588189973 698075925 237281274 894260013 654429862 885188162 691254892 989040668 376805671 875758142 796482058 826586608 213450539 668837550 425972504 867689370 152722657 760600451 615745124 768098854 771102762 853012521 378511333 731185749 317985511 382070501 253539836 606634591 678398296 879034437 447140074 648974475 331703813 517687468 112768473 514143248 472521343 761916204 310579987 723779272 706790294 736423703 587880794 855124061 949114592 970166921 710506190 772769092 319598246 579795589 846751099 977844865 241806381 269260165 39271032 899800960 345726591 846901832 393238425 731585102 379870728 817167418 529447188 606855389 841635319 859354524 373633896 381760091 399335488 888600641 663577102 790370998 739558243 888545158 165331404 615312809 105034074 220557211 822622111 984095951 541694791 813094771 606081695 853199316 745199630 841705587 327802712 916306861 160845639 664669067 201187210 322062701 932058580 945816039 43368103 907701134 487017022 551016935 540572754 573751666 353459746 846720713 395586064 519659992 486260956 496450474 363249383 827789150 971603643 995892817 334452828 812360316 988681556 991093566 588383980 752866302 996895950 999080219 332513515 405816714 421127754 945560649 918587364 989584708 315957729 949618516 544358359 821932855 81181311 870562398 724816342 913505892 797712463 847993310 407774561 818315339 219476582 865885791 556012361 890424267 231025121 641776954 19908595 869750477 201918748 704604069 434047574 733518286 435931153 483462517 615424874 846882066 708726249 821765883 372868078 901920290 973660401 999431217 279881164 867366655 613431017 665170989 773864701 923021544 781977768 959166939 692228821 965362590 636665074 817134820 253532788 848320335 524228820 566981924 956038517 988194605 516469720 779477857 971993500 993171616 420625657 637069324 542150544 817836138 188976753 208655662 638116847 667659868 31414456 751974271 188754629 423417116 753581944 889195717 641369011 985878349 199406932 632010729 650354100 917085876 11712715 97093848 610014352 856733940 700839151 869447730 555567111 944623705 759418059 788872323 273321299 860823529 571133802 649229316 610406937 683836267 752653876 889725577 274450453 755204555 982181006 985890196 179694679 421185132 422217344 625892068 125451731 632981654 977069957 990045564 902148721 961990077 107167104 777937029 756884359 982067634 933916176 975581451 166331716 864027605 107852083 984861500 235995693 748976744 276826230 776891519 796748035 929539413 677776645 978310100 347764935 522967813 565413656 580562687 374580773 432678589 824894229 941072374 406157628 797331564 38314620 42833305 845448344 960504629 68461827 282024921 942592840 967863476 657913918 663996657 29133531 356134730 974264655 987358149 78513264 955052561 791905685 856605980 257403943 345417588 835853559 962150683 740147351 828852258 225375321 780457065 80593262 812255615 688021617 821783136 151768447 774115475 150551200 322067935 458063737 845399209 661714549 857534384 334749316 617344331 157427922 658115501 766170641 909878703 841742193 860638463 263080213 817694370 833504335 985147162 33075222 913959339 234026145 735156058 641216688 931879735 444675951 933644668 318256279 876304795 906083703 981621259 488291402 898889477 727623684 990461826 571202051 714603791 895106977 966215880 44458275 143544939 528510175 658236273 284177542 500665872 806473908 876124664 305432015 326600284 552794028 613345414 698152906 877463802 900917671 902250996 850255623 993994629 41183252 109923154 778717326 909301266 238980762 976768249 521817968 625274399 819231254 952129205 266396523 921977134 687605876 991584241 405849214 970148874 304841167 437487577 255401732 275127043 161003503 412447466 643858368 654864827 263656276 905914789 145724444 546260839 538234616 764320289 251821810 608167985 518012052 762184456 995579203 996557227 28229266 961504965 21125555 856332791 874326867 880723285 939770127 966310913 803710272 914000150 33413504 90115940 759638017 894958474 525633122 685987034 534364920 583256367 165649279 652535020 117187346 191397013 602769098 887731050 485244819 977559618 744193095 797656399 76748640 802783200 529830167 760050615 827089183 873055131 657559324 871258373 932060862 947620520 697968447 962884284 66903624 380214667 610601193 760967077 707371245 960407267 953970089 993996757 155461520 261545323 933203496 969119480 974702105 996506471 142988849 733306751 7357101 307027082 942596908 964817164 908707004 944081544 87652852 523552923 791785510 822916701 224687062 999495003 240967796 270030609 924321260 933637456 906056203 943004660 136174170 537021167 460067904 751441160 681078115 809826894 871511117 989290003 423902627 850874192 601713227 951328160 281898261 734421373 665722732 919390434 759874244 863838623 913461996 995157326 995037982 998921649 630828783 978294128 665549575 725546232 737657951 753930288 63610772 528215517 597328960 990567601 434847465 595197636 237083390 793998020 279628664 939750147 382938663 634065466 694772592 906327756 587276228 954728412 706365218 941113408 844393991 860157403 155598240 796798557 885085078 888602520 400250494 573660984 674082713 740176519 396218495 485514595 396135944 901597004 943962295 979261455 499096096 787968841 310135261 427024359 142738268 422937650 144795212 934532449 549524938 741619109 754289927 861099306 122949313 246332556 295914657 780477767 668509268 827631896 71246439 548372948 902734557 996221086 317245519 378281781 109138983 133232690 636553048 814903707 388721268 808367901 909217053 932628030 500881653 921452487 304699158 949173220 770409865 891817597 801587397 844353981 143700790 646472228 17343725 794978291 728396515 742290722 70895721 922729527 486126077 568703851 324322137 576369946 503945602 521358669 82658766 847774568 344356174 730719198 116206955 663726607 846047901 959639725 607391319 773521342 246287151 285341947 787404057 991505363 804627982 876157667 508815379 867986596 766282845 949472568 262960161 858399744 975561862 998209564 361886172 542874280 99388430 197262337 659807900 903431623 188856594 541957787 491788453 932525841 722848863 925653444 512706790 560515366 431782186 607150387 95103655 541071187 645777139 699369229 634269827 678017669 122278462 906905585 917059317 967574217 738982678 857704888 981297539 999831132 248729562 967861370 302762488 459332515 475414722 921215890 336162514 412706568 140804696 787156620 321231422 587982331 92486029 998362713 722075215 838404650 749632425 924224431 971903165 977567281 269163688 360484961 14322226 700474732 477029605 674279806 862175899 936739460 763042682 823226229 362570333 679159983 114122302 430578229 632703223 844263986 522440602 713868145 969506535 995771301 151349564 950812665 224972089 905085595 284738985 648713732 198743693 377207636 670094994 834692610 959406950 967145544 62669633 831278681 260628635 904301496 586091342 848101683 476355366 961889409 400422418 570104985 806124441 952666384 841841846 890829822 801957454 876742129 490678035 961701409 772384196 948978464 920889606 975116041 446599033 500948314 993316494 999234080 683963477 824645920 944325505 958867057 249275071 785514611 444296936 725440725 648406253 785257554 421817924 675128363 864918464 922528957 440146331 738142822 461316421 920080340 770119964 846868865 693178695 737553927 899467974 926553301 325883184 472264005 442731477 967194102 81638502 342995826 578261399 814012036 859958794 912720438 85276514 183514323 869773393 870464876 33588086 143872578 766717369 786261212 341795648 812260764 885880803 905607941 109165869 388807205 754258840 961601042 796016186 838447162 771414050 888841878 438365433 476764836 471485946 593552302 955762088 975831275 350568967 821052399 439335172 750247896 594973879 984516198 208136843 313000167 441042013 942518179 860268644 950757287 163606313 171245463 998160265 999633974 999579310 999957551 950101350 951932643 579545914 964025834 606775399 891561864 913551975 935536901 451880640 844776674 89927466 612712790 906330860 955649321 71594575 837601435 588713753 875881678 917211558 987807444 386327201 589890865 257058100 594047002 854763577 982067511 958291272 988030144 209877886 866642250 4142286 501000959 92669813 393778839 180790915 520050084 887186972 915205902 627698089 653909427 842983396 936056934 521426054 858190617 602444586 631178675 402366783 507466117 554918739 770035534 510401230 968504504 511030624 985253136 917798999 970132764 316002590 654552124 919066374 939352368 28274600 834592381 838089718 972482800 570511899 809764902 498857243 983880843 900682726 956955478 616723389 658398776 544967444 638758983 682692132 804153538 390676814 564460966 771333719 953360133 384883365 957316069 819851031 861978470 3298754 151613880 592847730 610489815 691568083 754380140 296250329 700669585 590772269 609456372 245367750 599311858 889897908 961596807 531573335 703849350 903680086 909927939 169130111 570524199 364963913 930480217 303201195 550033313 836553777 893681665 600423666 737341816 69415571 997454305 37864903 443696266 615694254 858053086 418483284 459856381 902283666 934038785 194171740 733597027 785041070 871587960 737465406 912813866 231557122 466545971 735813682 877495306 660696252 868365291 965086722 977377634 210710556 254840312 601722041 826741631 146468282 764120925 518618740 826304918 448708762 722276780 318640781 467521438 591647142 711388884 778594386 807472828 631601033 992202764 497859053 689171483 214148329 795877794 602391256 680452637 14894824 85766984 762625885 790713484 182490543 992546699 216511002 319181795 968436967 988372541 74487307 444267940 124639780 848483347 924406496 936218830 208703265 547102269 955904216 987324500 654867549 716241687 148905191 608132248 726918258 879118607 460361460 550357930 509113321 516960233 204857167 926385856 878864293 955827437 711143046 807138203 582864317 634352083 964955878 991678810 280933689 737291401 181785781 748675568 553410331 752483110 943826013 964942550 433198474 539235654 704650434 708018745 518703212 961001596 713847912 740890915 943361312 986855152 12894302 79566660 875611829 998499015 584255313 799718054 411696598 547377371 267430137 477768097 58770259 405973191 80412485 792593577 942763242 961087966 731364125 935912369 205928765 747335307 840960287 973320275 397106711 781708475 762516423 778037191 614089205 801923775 969356760 993680080 133983947 230407773 452924529 737605009 82631373 683896343 21430003 635128562 495852069 573607844 531492438 543143131 534448218 901814212 791686606 828271016 911399294 913318476 384352089 979491263 127552300 914592883 30976663 216431077 395311632 740422838 902194078 959832341 650689901 846690995 85822738 480065144 54576075 877709885 600748523 683168011 315569032 759785580 627416700 693707000 534925174 912726419 968796492 997295131 908525693 930718820 84425727 513711556 920089481 981730816 716920321 920636397 887007305 929009276 796964625 917566574 524552083 655832702 614024887 857159141 332424260 528439531 800483875 836324778 827526365 977605161 178845748 343402382 302442505 952642955 476934115 928492114 484115036 774694316 6596000 829884103 635215339 861498058 772408560 842884947 741460418 774879372 2292950 957978655 679027413 680742266 749758387 974680073 391519567 614983896 268391103 445467845 803353385 851320729 512162835 548741607 859089814 962680075 135979686 886185094 961780532 974367551 487762238 749599712 937301175 995896547 791326198 856865000 692314998 781707729 796726668 891121623 244651210 471749306 560659983 722716587 770195725 918201984 901089189 969497209 231926049 880870764 659661136 779570093 833602250 897551861 472709379 509448241 213012375 831188416 12323796 333169690 562196677 746297078 323703103 668814275 958276955 984404322 373938762 401387261 488196111 549810654 540902780 773939372 288553758 753660591 277522388 823306176 105275303 609932476 522852076 675633215 397853562 786889138 825983294 911783332 197841214 383377354 678722446 730147204 266241897 880194798 109399372 801670303 730896377 854591561 157032352 286764692 441253876 740181078 227581777 735036068 834490269 981735765 647111547 674849781 585136173 668669325 901499135 991916491 450845979 616923043 605911509 631732888 154865022 354679622 315709482 521271924 138202195 725612000 426098687 842414522 659996397 827264450 924625559 985958667 893778313 925172047 476678899 904061143 519616845 843191796 833358584 850521017 635698153 973428353 855942357 882185586 340822375 384469942 70801476 784018536 51838438 248668519 259519840 394595480 559648997 672163313 19571263 852691986 560386967 995247761 436457126 888405875 945707023 948375051 565217190 959837445 158330657 347120069 881659068 996885765 947098337 971752848 541059498 946490836 889014099 942874203 308288473 444937160 334869546 545379237 830736071 983158696 761740992 975972510 814195263 918691757 739900270 845170326 430679485 466904637 834624630 998145024 740507434 824270289 46245234 694334398 664980277 859369189 237796176 528255912 325378461 475596475 921942228 962458900 567464599 709003018 252596252 682287384 561334857 879370487 890493888 963312534 540919285 967817571 835726602 859285895 939826662 994437354 365783721 501711471 798478084 821916364 540979828 959323752 618388300 684314384 505746417 995352057 212666661 910910239 876104286 919789612 303054985 967145384 569575609 752337996 868978108 901036508 769150226 999672521 386361499 989853135 85283657 192882992 524640178 559940175 758150882 948722422 299117372 484916163 313219411 524820103 113199549 143922297 553822792 703586028 123689069 802166976 738146349 925306472 597673616 723791403 327023506 909819442 621886016 824711027 738999638 919678684 936592685 953840237 448098480 753674891 221043981 374339017 997181453 998598608 220912302 777515185 341140920 841891749 316752022 472078880 8450978 631466140 952081823 987639619 500412061 713245214 218341271 617881773 9180873 879961869 445048874 474188267 389599977 781538747 17790131 519211530 320122742 645003606 270677098 382731137 140791172 759920794 488083712 977689265 711183735 846775314 535358153 542271122 182454180 314888543 273031285 866991012 170608149 863080265 103176173 103495530 826228144 917816966 940317213 948757425 231148697 290111209 61387432 479325991 242143770 728810965 397062886 649748181 580759296 649119890 171281956 423882359 214120046 441061337 165339448 611500968 207384929 933218165 335885770 378540466 966134722 991368069 207205230 683119777 617602957 634965668 341872656 993905137 650520143 952231051 864384185 872669548 796634684 913103813 136576751 961491604 214770451 817768728 46194546 182650217 976858740 994374777 668427386 688136142 936602216 952080471 499625050 519461421 985102761 993102134 194537612 589695102 132382209 271556317 261273707 628916628 610085793 712374567 362216572 865904999 17847142 793108572 353297475 839670351 760646886 912607904 603155223 641615795 225851900 308087899 990614491 999922986 600916069 799403576 668292745 726601200 512173256 740009019 204951405 332504744 163553571 490183308 202374163 551099149 68334924 441088103 904789188 917973480 532366299 773736873 241666329 308978630 689011321 690991762 678292848 747922175 140162525 270511113 202879524 726831578 798525499 921999776 754199512 843903713 584907079 947010340 237099606 374923255 566245889 856686958 169226072 493818387 385454613 420162946 394819523 497668182 190285130 862786819 377631205 378959471 918204644 978564213 702267044 806868781 269709656 636539121 328511066 957015895 170676160 981489048 512883249 540721833 410314199 600767172 526140378 744733594 897747337 979216569 468868492 969582713 112705389 852723975 495863699 964277038 484207870 856411208 943555842 994746950 506753255 533842746 957960401 975928983 600421334 801309711 320591880 607786068 931542411 964912826 965988022 997102635 391041544 413818553 232995597 557139649 960903876 993791579 483084525 926234205 727789725 935657482 698196179 840502226 272850469 355705571 115728366 757551403 265689656 819225198 86879032 961585829 449443035 788863840 102523394 498551728 655686717 900549378 376994799 527367744 359708785 739802435 493709081 880190539 53927302 624062572 290283231 863942274 243823887 358952396 824113425 880298739 783869792 927343884 839251578 858127955 63179523 613781628 698994067 817219153 309883514 709527066 852986791 868491675 527276296 662473601 162073812 569574795 313689740 837229437 450293660 739108612 44432308 368470724 363281311 934503579 369148223 653910083 837026191 871646089 270756451 364823409 616129096 770356978 601479159 742407459 639802596 929812926 251992206 633160888 761952533 840738300 838959784 915040948 56530044 192986009 16258401 573567542 857827758 908405264 170998908 908628476 354622046 729620208 885211207 979305315 951818609 972988538 178308774 363878474 623251675 898926758 957798589 969683843 484062480 606086118 457349901 945574898 417040306 747466670 928554788 958059029 234622570 747037960 89913026 447112566 606360883 804289873 311862867 823438590 850524376 925782422 57175410 847713682 392642895 938342198 975234316 986241569 603488758 760477811 291666937 542254773 494776042 607245420 352261945 584338530 891571050 919147427 13411848 193773804 440751442 699917036 503262888 852338267 96159768 171439671 171558927 543290503 714923983 906794360 962451822 997050109 468323064 557175375 940405846 975976794 136477576 416955790 724430772 898887943 549381624 555347495 655770902 802273001 227769690 355521001 283062013 775685153 119371614 878892633 355534019 517138032 934121831 989538518 453438790 462114442 971205248 990195656 367308715 696341470 962685594 973644304 373688361 792321286 789474645 833529764 203582188 411323438 191503435 489657755 927098692 942295580 980283104 998275727 712241697 928100017 356140024 524106480 663424133 868892107 512667677 851875519 816246716 852837171 144772452 346344796 777585173 935761153 379668616 598432027 635939278 676489121 136092059 579015925 685462069 976989903 834307853 998862458 896449848 956707581 133340745 401769770 135165351 168678112 105297936 112624723 810989515 918775103 222295558 268091964 975298941 992281390 972338626 999854047 571652811 872940352 256441131 362907737 379540733 947720389 389776148 662522498 688883198 897140284 884147964 894177835 109171384 307884770 35817157 428074325 419453690 840933373 374043734 551583484 897943344 906356969 586814739 589547963 323652593 357339409 820268545 950349765 865014550 979421975 378178629 577350351 865970286 907444780 47264141 154331788 209137310 321378770 620675697 987304258 6336050 160640696 468719491 905514195 197524512 768791201 840503072 872599928 449195236 742825906 47378429 679399161 493643474 633247388 517302774 620820879 956135867 957644113 478011605 870145744 928470208 942956969 666863007 795835596 952454833 990772255 827935298 936965139 558582221 611602087 531940854 946546347 693500779 738068875 913850939 960921507 759493785 872738109 826146519 904333851 372804246 959786855 446972907 661956702 22301322 200674519 677078361 983970793 846634909 918944063 538783629 936185973 492738978 536814511 870927367 963118873 669439032 687640212 442254629 564368342 576962249 886625980 781569028 878612724 830891796 998722882 319980573 632483861 937619548 962912231 297921251 547690059 837210047 938721042 826004960 892945824 278201518 977094891 339136913 974305251 522613107 524413324 255236203 393085886 679281539 689534750 921634797 958784610 316321101 521396482 726510787 772950329 593293947 620861026 842039396 842577072 868617771 900701057 846956656 960296605 859322548 932904924 216302739 520191457 216113792 253844115 660592589 929370579 861921601 877689150 234280133 707934372 122699070 208366537 490294911 504178266 110058682 140132207 422371097 428364628 46421921 890864288 385688382 833868739 20637804 294202526 896178584 920605560 126988357 350707939 422180042 584197307 535598425 959132691 507373854 844303033 418603111 505851225 374689690 482924313 359793172 898851833 601571514 661218569 784425161 794269186 368418253 502985822 782123236 801483452 934561269 957384550 659463196 934846943 627736419 650852626 74043332 629735555 68903990 962316464 77725030 703634598 838337522 843476523 610675548 945265087 311582361 737003077 561454516 965527006 853391183 881400330 797166474 850681210 598115794 978077615 740610720 772982396 968196505 978626898 275152557 283208211 7380977 385478963 289128841 438986623 899192334 979752732 309378343 947305516 668980075 767351825 14495244 338091331 680622207 883430468 110388578 342565752 238114026 601111644 581620406 646778839 156773087 677578094 242431634 885669194 95228832 729851191 719446986 738645042 237979531 422978849 17822579 585947711 66164567 204712508 180748531 712000199 322446857 535982536 979900423 982885925 830024370 887882192 370650873 895529648 982759362 987392790 209965992 357779967 723419043 936704679 553612059 734659711 699009985 759230947 917496555 941275063 471128484 505671351 370662035 593319382 883996111 898849003 943604172 973320453 887020731 980380326 243840530 855421558 845649446 873682875 509378497 597820359 300640938 580091939 304737512 377414000 112885118 812033510 291808857 544956779 319092327 473726425 561980656 596766068 875998606 929460932 839015342 921652284 670249459 869658703 245238565 357703993 406168496 498927698 70155628 398225680 601047635 622519999 620681091 844474396 721072546 765549246 72419474 790397838 551910072 599957170 475599654 680115910 444886407 489146536 511257980 698315882 963398331 982293665 95643195 192325038 325843468 450376920 759123093 923861575 849026563 955416931 249038900 610665635 905191491 933679529 568704340 613284707 197294488 707288713 806426328 911398981 536523233 664660290 385944409 886832795 101782235 596659691 305385804 976599469 362588988 604718061 923246098 985438839 900120713 982497283 688585614 889787219 957233163 988180777 90973369 590296554 636192 250309603 407202877 908846617 123698948 159959638 25377073 893858357 263373672 627231265 34344425 213945354 301892492 976212602 744527738 887056433 536535568 887324295 467098454 869400294 613776896 953750090 797724270 947660352 692091363 817147413 654886436 715226900 876702981 955012892 247636872 563337267 378566963 685521747 784784746 934222948 113071055 774085332 488024546 881791142 624333562 900443796 146109673 356584702 730263481 930357387 259975636 924109727 546960757 669999277 169439585 907882455 344680113 371131046 725497059 796038420 436254674 695069765 712549745 731125924 870948590 965263449 703786780 816062916 596462697 700495444 800599811 886224402 509025154 928764778 451665455 854465029 999217692 999399090 573485534 643612654 127687114 327375942 415650001 526270600 437490943 757087265 476200396 912879218 411628685 794623824 356343260 983310390 286469149 930537154 196652600 303066829 570531960 867000862 886934759 954147984 470175738 724206932 22702954 682102483 603190454 668656019 112050819 905526316 269201561 817810529 645421838 881749672 647064670 656562496 461239572 840374769 643408750 760480872 359583100 803629774 686241931 745909834 613877503 788642283 760972682 889902252 135799728 491222258 437428182 700280402 86122116 740665373 173032420 427319569 463251318 702985261 437708415 735649026 136128138 907003142 412414372 894311961 483419913 505596515 159770741 675866281 947915406 969264923 85982658 257462915 764771538 973721879 543024295 938554012 316794864 804235722 206169433 692372625 396037827 601697781 83168081 93379354 606122763 852403771 507428473 520742621 485412807 548026342 123080269 388566958 679204404 955162747 42700604 275332629 949017396 970687782 42867253 91588532 670829632 944702883 328720542 870260283 550784293 937873048 393663467 593424637 858956539 996465100 569344484 901816036 683064987 965015488 301071253 436080164 800997154 860746006 571601591 719636512 253061561 352868439 366676063 380651730 996459529 998057310 920462365 946912395 70191032 186763523 115166530 930098740 312298077 966066682 750050284 824061743 282168852 404718113 840963373 922667236 177536142 198169078 475099122 499225295 363948297 886706553 834668800 955358553 118573211 312945739 643131759 815804674 450258156 716450615 176379232 312720956 31983244 332943982 137868171 543023122 917547835 983346738 794912767 839785886 54435531 921398857 892046279 954140849 288134440 809211809 694938572 888161006 777967412 850506629 697055053 846731404 414426701 690734435 930790465 969746452 259118159 402353986 736001982 787085804 574974360 588963839 796960518 852359637 381923923 679382790 430822070 891225753 459932714 962079730 985316340 988341819 529543080 829290559 222974720 630574151 923150330 976513445 862291452 885236424 385851491 746070194 996115680 997304354 376227605 439657899 413724859 873610909 441531213 537620943 130184080 546743845 796492660 895450760 434604841 826176496 490868033 656460026 803131430 825537757 379829152 394261312 470174664 699015059 242636540 405605499 800798933 822041884 343510389 820056040 822325617 843258659 241788408 307602887 981962634 992078712 665972719 865669088 941683996 973624169 858884940 994380783 878730615 912286257 176312571 347078271 949130741 960583846 525613826 803393870 987679999 995460582 327886523 903060649 899549770 984829872 770944575 987637169 35392841 493595240 160105981 522673131 790819030 922472691 264506820 507771654 338386943 590323806 487938935 741807421 394639836 716787964 113416087 973091608 646486066 681834947 647988195 679228648 762434600 933245509 515840964 841106498 346933846 803585670 827729463 862999318 585823960 741227167 780756203 957422192 481815015 758835669 920190741 940591590 334052578 849838649 55815654 690753234 60249438 700764808 551797662 902025023 633314840 719713480 626417816 892260240 515736473 718116903 256339774 363909773 417656833 839568706 862577663 946086518 1436522 952697981 661198090 790136657 497792120 716818890 361840278 517590521 268884793 408824465 813640525 835105969 688591656 924447662 603716524 868165808 614369260 665189087 556592284 855742616 296332428 416712268 675583550 919278384 971305126 994368917 905910665 968868675 346358830 543120413 157536188 766246011 258864850 871233666 908511556 911185926 889799228 917065334 494316783 928953504 112834110 268222778 380788098 788165879 35054 704853550 182265999 575070909 961694620 999574085 413707716 746996152 755483331 889720859 862401538 928759523 472026680 842372192 522886810 747708594 965677711 976749250 591846512 682833372 157117352 471447458 650668893 738093294 592355893 667322341 219432394 316671959 553159402 739806371 256704732 542502478 418194868 859880964 578176820 700254935 46326252 954400440 97764261 986502976 416362064 696826975 407382477 678598755 238327905 669628615 432888909 746839395 614112343 872002319 719818720 967845875 58289132 644293534 237452591 819735738 884473338 977145356 42590770 750019431 311578489 998702797 240099773 301578855 87358753 995044438 862109908 905680183 608993333 794822980 910410863 950384524 486391825 724257936 428338751 625596777 982824268 998436713 607520861 906412967 773428913 912332222 657167075 838686627 767986384 957489841 611033889 927340520 803739239 872536974 979429520 998975882 98396253 431592865 790797277 845745836 682556144 875149635 873502712 988432963 307699100 842605963 233523735 320660540 823913085 892272869 189073534 459025176 41998448 144015735 790523871 963251404 498651477 653722076 697739273 988926149 837424309 972268313 955293720 967816751 616727459 665379308 49484234 926280069 32619474 982497911 157290649 818692404 607104393 723232209 330782696 343770043 928899325 940103333 347615065 910063299 904472769 977262674 748119863 869527523 109397235 466192185 687862360 774618056 629445061 742430057 477165711 937576087 937804500 992172177 504843005 712798605 760725393 901670785 726277334 934799788 285534057 723889422 744939444 785671219 74540548 76938027 108415090 275004877 305867954 338852193 303661749 778297720 641927515 686433918 437385336 619895463 458815702 563445881 547784145 697204196 922806225 974830071 932601366 945261306 710085633 985214737 319358560 726441204 663102086 778097986 286909525 822408799 291872690 469116717 828057171 955649296 866688885 959815211 493835273 698580249 986992936 995106078 569860485 929075914 150548180 692140123 495737464 859755498 875423450 936267531 151305246 849661970 225946598 328015166 730385800 897798488 976298420 978579067 893333009 943173401 992170050 992555556 909871395 972344305 572136700 654587548 263407206 936600005 66324091 452647357 437683942 553045560 273799217 702722444 179875304 640527959 845578807 890266169 6478329 707238100 350601059 427531945 199853514 668227063 9690633 256956288 86095297 137369363 463905341 953483445 373281281 724628328 386942105 450308531 122723287 274265094 851604557 953129427 752995040 793656116 639080467 736091630 931476246 979982247 316878055 628255242 588850429 990130302 484267023 997695027 727541835 757664677 394630516 491269874 767390048 847903348 497138258 984406910 648864555 658087074 60224396 563824261 165865228 872282753 658995540 823599569 753848412 815119571 842570524 945941737 601809369 631750849 608894570 736045817 474867447 945702563 679333483 883818561 29301046 167090069 57632230 276614288 841547992 872060190 532149325 776211989 993274771 999326214 44071368 524719027 24153570 969020920 178624272 746487677 303691087 691152196 184505346 911021783 650872402 840718219 100688023 926021733 791393911 876813325 790392492 908520307 249234423 570897920 428862586 557626901 344445259 686340702 400998549 926657091 559680764 659729492 426078625 481890594 952263757 965244015 809203650 930157195 455729328 861388171 762552131 787663190 887798621 934622313 465828393 603762141 795342088 926323703 516192657 791996216 468121071 634793776 836523171 911059158 355223617 869792125 122189431 806071419 398427372 583794829 971594961 991204303 970488207 997562066 782643521 954766156 65199747 818091615 681792344 760725599 934914477 943910432 926056550 998669863 295014001 335882153 899864275 996249799 646440396 938009332 903509785 920969269 919885742 950094917 32752818 119316929 564560426 714677615 423883011 835616267 949470600 962403690 963009179 993666127 900436371 936756112 308057282 702976638 474443496 965746219 643202455 679186816 870381256 931129569 666158858 768719899 308426464 687789457 988620705 997737631 761347231 994434769 708497201 920665527 910110383 981520711 787059935 815021805 689353071 716302847 165641041 339731284 773794208 902947197 835153701 922684190 278742729 380709422 557534333 761367552 299042417 849523944 977699106 984752454 387771827 505587364 738092640 817723288 810249044 927556757 18546392 778471843 442676930 775530447 906457071 922071405 978033616 986295714 630676819 979866930 619822688 804187330 656592095 733186609 512700413 642498924 685912117 754866433 440767775 498494023 239900705 529841816 969555679 993226155 253193247 327555905 9168170 556034783 867777001 910501451 221236613 545777503 113361634 634107696 420787313 827361403 343121197 821018219 211389308 314283001 578220391 766892483 463957549 527539051 175099597 843209479 432707174 644882972 502714233 762143257 845008040 975802274 505858770 522343414 856633136 892674516 732300915 933722826 762441835 766203384 261044933 614994629 702328287 708837785 231154726 388790880 842730859 936624535 67087372 921515428 523361167 959158017 990781694 993913856 749626620 760334006 524039852 794631448 129471786 501422170 397519516 630385477 87077786 833918899 925631564 986868044 292165663 681517144 657199510 726384705 868622796 892955101 212421701 240666146 187562006 996886716 440454399 767757197 791065196 867672581 635192758 742806833 64422096 65718234 111524385 145420998 729922254 809249333 60364606 724945269 358325618 763105330 777060202 848332557 697727464 910637187 468208646 974587004 149966954 615779595 446048230 989453891 496877802 505840122 305461152 545378632 442027957 800039324 692172791 946787577 297193216 901979868 90558060 687145674 433814360 737064149 984964548 993941549 876733096 979287991 563998711 898410046 243420567 487881595 946480732 999767029 776954438 936526336 196364175 919734371 836407400 952526707 508116293 938681902 460544258 981353785 425033245 491130630 605636071 709321621 326011554 366660283 287079397 880014007 972123398 976172538 398122351 566949658 885185526 932070106 501615609 794997100 883159359 970437414 364370565 946980938 736909067 755176389 10102065 175334031 640683096 768869218 992396604 995442039 374339633 796727070 700270997 706368944 600676011 702052645 624092471 828270162 344092104 509856687 280883735 635775903 801722236 803136363 814033 640147599 89468826 346031461 338878724 782182909 980150354 992928175 34576000 295963947 286633272 866413446 35799456 435122790 921535180 953983193 588809183 936762125 965125947 970812984 477151487 983168196 324049238 890272866 56736250 312861847 248851118 576520585 107299517 748741918 487022932 548758236 544551208 877689312 95789192 772311979 942524523 990852162 925169031 986659014 283597739 331025173 668666293 973131035 763082416 834992159 906679440 976750271 540744225 842182007 528340129 968070239 334868988 953707882 788285390 892172363 552870071 855540425 823695255 900259824 771482291 987608211 856175467 880196144 322233352 534788728 161521886 578848855 945906383 947785181 205602697 454257690 682575568 996614376 188382463 298449432 358203315 467595882 422488526 848243904 489834860 933101802 198350296 341686169 509666428 919645933 86062819 409127213 852696647 866354391 960417228 998052218 813811925 869956238 7346486 404302833 780908680 845698264 757185984 881129399 633557268 845202502 378534194 956982749 172190686 234070048 790327368 851747022 430622571 779550817 701638659 887222988 681038585 757397614 484644260 944183658 782469361 892944243 881629570 991814586 715432063 773835429 210688057 258479703 101341495 634999398 135636694 328128726 431716856 876924625 887582643 982025177 555911496 791035606 767720317 934139118 262783277 935637266 731980893 733292993 472841510 514010614 11240975 392452258 510582207 642766691 490358987 634997726 890432851 981188519 305471718 412496604 534843507 901094144 973697141 985300641 588198178 911485635 191530580 876202895 352019241 594246631 510094871 855666633 655750166 665825825 342797767 999949586 206900251 725133639 777423555 884409704 281305955 656237943 276558322 683796225 443906179 565261701 294910081 891038030 420819133 647788570 346855773 775221416 418567113 481777610 870677379 888813452 268275301 374321172 431558053 497581468 905260036 997829870 230217198 485847137 23385984 691081214 905143934 949592650 966861088 993240615 733598046 748389900 932422244 944519582 219355693 665990618 472148806 920667895 140414785 271288896 831247259 857210482 294560680 913502324 237941858 720500895 17722388 750022100 846908158 919512622 507794787 539157722 90524364 111789693 97273362 848723440 199618677 564069422 782777318 800876567 637800349 729107491 116135655 577117442 239360321 268248553 926904185 962991134 933985889 961279831 138894920 463191044 582855012 751017156 549881699 904081278 793326810 910417668 341091338 772372109 777173060 907640669 941902320 977769854 489155088 835845716 167098598 193379244 780221464 826976309 252583841 392159203 244707106 738459692 285425075 381315045 445575065 604841281 860148361 920358746 475055993 906932496 988891526 995060556 236570918 860368822 936721793 956041621 311981900 635418636 198293351 303372555 740504981 903947043 253392483 680744501 297120878 710036197 106723476 902819393 813892426 905905502 174121523 322149959 203960458 777375635 311485185 383873193 466786757 942023440 971606508 989267606 137739461 647353134 166095868 880169738 803923506 893341596 421346794 620638628 698690259 840731625 606996255 664344571 539612524 566453523 461466252 475403232 992247113 999125908 199515045 250215662 781780484 992266241 693078203 717213976 838134979 992207181 496312995 511041855 52583029 865655128 456436018 619794024 855348581 996122411 370847381 637094978 385943347 779876365 959619046 997456557 103941592 573571019 311145040 801456265 84656904 109053322 253445073 973677738 64342173 508001662 105505869 340904132 494809269 664199247 592414523 776107359 780066386 919900987 912366979 912414860 412004998 856633788 443027969 564122117 831250073 984764637 504139760 646661788 438089183 746696010 972541041 988628717 768912090 989200213 758374073 988863015 490619449 886267376 116096223 522013932 829984524 895542175 364973223 904596639 48429004 981855718 982163602 999014530 584856850 691745600 564431124 783298599 886976605 980197069 246150942 424875568 679231752 921852271 497504122 651752782 778253119 805544121 185843544 418042090 272297149 606771469 595539336 694147185 502035222 602624226 73232882 79842806 598071252 935989998 92976255 950957604 286310024 401256977 486395732 675748997 377174901 767236860 499322803 667819301 454655750 890330323 547523727 625312444 105566517 915730944 684000399 889813313 380301906 391240190 230919640 616230657 508238912 919931796 138220314 237433785 221026760 790498424 669790067 753006272 90478596 647355071 642544526 859618581 736069064 996400398 62743274 96422993 821552656 928242854 252899284 819171187 559049272 681615915 44390711 164645858 358222415 481664099 694957733 755566930 1294626 395545687 554505206 844172693 149490018 396137191 242598396 409403598 842192383 893870428 77953496 465623039 102966187 698734499 545557631 754576734 758527346 858803912 697314416 971826952 955708816 980219565 451216981 784935394 283740794 726989919 523300731 685379621 547201565 890446684 897426029 925578295 46922010 870451086 846718881 928782074 746273725 772792789 265504698 351862225 435113363 454429413 79800503 905214123 742251462 918422993 174106555 177313614 187839598 485982647 290511599 706749441 491336011 812453929 651045408 969924187 433130174 716867511 998571483 999046051 519295045 556684559 805469602 835119311 342569998 615533054 345326380 588852734 833702792 943459727 916156954 959192344 574144873 592836421 792283131 917763918 236816652 890274688 285754122 374012131 48736444 200960550 490703735 732132970 829298441 968811156 896076136 934842774 731391132 734292519 618481709 979234158 810142768 988301859 784635775 802193022 688782561 730399351 711258568 803053074 954421770 989129167 489225697 559256552 605627380 973563463 896517169 931046305 151328952 609802207 512783961 661921130 984553217 997441194 206838102 997949172 944655285 965664435 251371803 913138052 872305607 940450481 697187306 895230597 862055693 947699716 464070052 947523985 407192925 599959437 699332939 918180225 92964050 559785450 439002533 965858524 984740700 995581713 510909772 815921743 723168295 921466236 932924686 943647108 639512176 692895136 479715006 971656985 631755286 692599947 139055024 355318272 475708133 733803563 271799012 715564807 551475002 926302966 611890978 656048985 824087274 864479277 862416398 886488965 938192183 951133709 399401493 642799427 954881991 988677814 969309908 988432641 36425232 283026953 596494316 881501271 107771645 912853526 470429928 788679863 300253208 877653083 17198684 770790214 639371024 940109901 177835593 922870745 887948378 932302304 464675834 797987171 533705333 858503871 259244109 865326490 389681808 636611411 320054726 626663217 847194692 888113374 346594644 497614619 335451869 945914893 32886950 450880202 492378107 527306098 550357434 807240781 243467542 658619977 880521079 984032215 888820693 952679684 982302760 992792544 276537145 868995180 723006769 895854651 192814992 678786161 525141814 907935370 356924313 996822825 877545952 976773133 316342522 895097966 631529566 781125211 696785794 742528089 823612191 884542690 129410024 427330290 422102854 801820419 531434798 601406112 972036186 980042432 976456278 998939060 144939724 393922168 144440276 628613776 400538169 821156387 971970094 980799655 785312553 849273786 905249227 965139809 742716535 780117686 439866814 528152978 409412646 747700451 212542102 562204689 400004752 898519510 943057698 944865386 788401001 919286786 265485663 646160734 9818012 580255161 556950156 637398895 589492250 780462280 466670769 520685204 110181397 728839148 535332135 979735475 295779854 490355015 675937328 920588311 727793176 787913081 361236006 826622701 245029566 503140747 623730469 793966171 570558527 766897738 342783943 837728391 111394069 502456654 95635059 948244440 323843645 716227526 40196457 115614700 292585562 954320402 486795129 614727189 921047738 962857697 922256505 975238818 72373836 544655625 217875541 373342144 882367732 917530983 626070380 715581951 159137556 873649160 590112929 978263480 533363708 860828664 154066049 404974155 400650593 880936576 241517574 769823372 434913321 882151986 715088202 794792116 603309931 816549097 585363003 992985507 454834271 745363954 390605163 695989709 47113318 835447551 847743983 977824855 520795106 905963260 391815873 773352935 132798548 462135404 222555307 284190810 953113668 997020148 372544462 880935545 813170066 820035272 653253988 937780231 16504550 704025536 376829142 853429422 537533056 633597977 177807335 958968649 994169671 997093087 342523224 467998503 789294378 840010237 822686816 943445341 274272296 909226536 568943324 998893828 492397234 755503353 927817035 965700763 550378023 656758952 746215339 820801169 453637233 955634021 405258057 652784465 87457824 409538976 512743223 707417832 900458072 937415061 609998537 680333242 468510612 650645543 744291524 863989396 964075593 994762473 225332197 345311087 88688579 203284206 512248050 585343336 397398315 671892478 490199934 518491053 81849206 438436714 62908163 176033619 651515568 708424676 704061413 816728336 941834532 995353430 702260577 968753264 75249959 918666016 911692675 961313180 218405466 430874347 741731428 769812923 96490753 669090672 191694439 861881693 654936498 956014547 637823490 957246777 966879242 971286405 52717088 59117384 316933247 966667962 397167577 720912755 872335017 885125644 678695975 752847150 184393410 916862717 108917844 983048698 426997274 544381090 267676848 803288709 216329818 877294751 476171023 519991414 838341112 928220594 250067302 934759938 475724134 543182223 771371355 807803990 24908475 761752617 674843165 729301720 2802333 529894950 97983060 618289813 590009632 785379463 31165021 151604228 196975443 887975583 10399876 278884042 13174854 856499360 508125374 600770920 499972824 921066879 372857443 638277051 54698921 883403898 411293849 622365189 253157297 294732565 459505500 676145326 952043973 986839171 74975334 417660694 893343354 920432987 951444588 978083259 172719600 895993514 876644896 878609734 367705159 913847664 194993861 630353716 990826890 998588679 994781191 996725713 748434614 987658849 264626794 464144269 673947909 709305261 340661765 757741300 114386984 716614346 613663580 913175920 397647355 654743896 224066902 227514449 545323993 929602247 524276842 623352387 522764390 799999884 390188315 706807370 28651209 274716942 884762533 924299480 479538007 525848167 410640459 753187773 446336468 727170901 198826997 885699683 652637620 887974813 195548292 893820540 289139964 872178312 566287458 800560503 240942564 936040197 381686062 721126848 766271610 821986718 358967244 828774524 151180850 760137312 956846635 986401907 927039872 940567190 992157785 995450757 70944464 857247089 567260676 592752031 346784735 744905622 51781071 489107431 356783227 766045153 264036727 514445774 447429463 614130818 100716096 233066808 667164449 839761151 518486496 730350205 550737450 832525031 396122263 941512824 18993470 405763155 166945456 844538229 578359265 858174435 467064892 661403837 56887424 59463313 188360757 575780105 185391812 859877569 98270578 170156312 775931797 879973227 962146809 993881797 378811962 854954404 360422968 662016090 648156470 696124127 283841871 823040527 390671912 422196991 227408247 281208146 842569186 928249555 346440311 950824600 350793279 971067208 191435655 195962291 812258737 889507579 108442574 707842115 289958289 750274514 805667711 968404598 633261431 792127460 236066550 390142616 862967873 936039863 172984452 994201249 166416368 860092038 354340262 908784072 673131961 974071358 248785808 926546561 851908713 903888875 281790077 383468718 111980290 942240227 143721785 151564667 933922286 937956324 25871083 394506093 974636761 983727288 559278840 974324478 530775472 706195082 780071285 819146996 612081527 627569058 205836137 807717340 174778047 591288802 480883487 739265910 193397618 446659113 154060029 684454784 679761334 950738012 735041153 891753999 88892138 128841805 380622006 863778351 13032432 483918400 366544168 768369866 104615643 402642406 601774229 832933211 53743119 129298415 826402740 955767821 270931104 755499285 489897926 892078436 329741558 647061279 592125739 593381753 975469642 982541419 831427240 953591317 941230478 982586720 606919488 765496727 987570914 992874186 523662701 686803763 660303022 919451295 332180811 770873012 201340174 979331194 864915298 991274968 105870250 823997501 926494094 932331957 316643479 427897068 862139534 986997303 520716294 636613600 922216553 927410297 913940408 949395090 336317866 462480065 907908947 987438346 26266830 418170255 955362289 984871226 780340794 925535488 62384642 119493035 667689257 900041080 934857384 993135071 798135654 859301952 596345655 888699637 700727604 920164640 51948793 664618904 489712021 760068048 36825748 613446553 907774267 908593939 194819663 294772958 277882144 539977007 448890592 585202103 873495319 997908437 178497489 899298322 183188735 943475435 160673849 965656659 541148980 552361261 967248444 973578323 987750230 993869443 462855950 630609446 399303516 573578394 470480154 558325488 461776168 477468999 225692990 259547768 480896840 685835161 578019111 841311171 341803924 383187684 66420571 473921637 694903679 802526288 173934605 671732343 698065690 873001061 761827782 952814828 149764062 414259201 56516196 731468091 940438193 972114790 473282532 812217407 445001757 622901546 4324346 866921129 708997586 836046015 325446094 985062217 964214379 965865060 384074633 979437162 773177468 846942074 325993937 723043058 580532418 776608039 707150349 722497481 176791574 789934001 851948180 950257055 19269191 607057398 367497706 436915770 600321175 630706869 76387751 857152033 709893195 860306759 660342992 858398060 447193891 724726161 699732628 967632377 920638678 920683398 787066367 796838896 292364689 386011873 497869756 548853580 574620344 953278985 951919350 987076457 158989280 863389809 57485435 758825711 683607416 686407155 231814406 237742599 896865717 930980025 232336518 979000185 24753418 421981973 852537681 858502082 966517641 994656515 932546604 955085680 447143254 609876011 736169448 897500535 907081145 916283060 913939852 978750535 47492071 406152329 161899146 377264525 88016311 470514501 214863559 535853642 915871320 981587037 863988843 900062199 992735755 993836205 546741363 793098819 179598115 768888972 989159126 998533207 4508555 685343854 530792283 961240359 600667758 966859444 856873528 913998446 811314661 911696008 74356731 571301250 775610544 998000462 997903938 997940624 657353763 698822110 513614555 735146208 542416404 595703588 798679588 978331808 259756892 262870296 139834432 276931683 164957668 499878885 382146835 968351555 199510825 409690346 862027098 993186728 64717282 432428448 300025044 896430092 852783968 920548665 966081424 986541553 619003211 985898197 932930281 963603860 683025901 964710835 527711752 673558091 627090622 905799207 748077306 873263798 8240282 575346776 240046365 381260810 354751879 977126861 907139697 994576533 506887722 637979320 96285679 256625207 866631841 936624470 883285706 900047514 994206725 999922541 369010026 693895053 228832351 478115748 824721452 825168060 889440985 987231820 3508129 43751113 526161917 832549218 807774208 904598425 926759696 956391686 958757949 977864997 415910726 627401750 173315654 310456879 95205877 651406857 646386880 714742079 628621647 781559600 293983889 303819197 903854152 985230179 710516785 755256144 738545010 792235145 685173620 796622115 743035081 974156712 284317283 496169940 623688169 644895458 763062996 853756235 248762755 261967950 588936381 717904105 390226533 688845316 325526120 674373744 750302805 866682902 304381880 725919642 386942232 554766901 719861596 880531613 822168865 931038983 627349248 767077760 487470434 552157282 728423379 942509867 835192136 917595903 482770933 548641352 164566529 283831367 315695031 880213973 878845993 956571951 447619752 954074442 595997158 636607160 163604337 656208019 716784997 786558874 849200823 980729494 871241605 879122689 446468248 984740309 936890966 967035408 820481464 857611767 673506657 735072459 464147673 483248271 237975879 910678652 714325885 796192835 243728561 274689866 96318764 612940335 138109387 660421740 600224011 666065531 564431303 972784771 57005673 140707712 541431922 632485947 411166418 960063865 288516193 736333251 573568157 598228508 806709903 939990426 98488090 619498904 15140224 220527228 677616443 824372047 388898666 673519831 366505792 460907722 201473183 900320083 907338 214872882 18288121 159602969 624388113 969613666 95780603 284959977 359063260 696776543 565373808 805231668 301153618 989446231 364349777 366661157 720231876 721868331 388112415 988330782 912411744 999883272 429847194 807358054 518114895 922074214 855109147 863191289 545282397 946699866 833910688 976227313 197716710 489391943 620884060 722176955 271160947 611645111 259659226 935098801 517133912 917149612 637171116 711622663 16379861 840464755 298424755 467054517 777136685 897580336 96452304 589859665 358258610 698859535 668774915 771582074 902296439 935962745 739902966 745083395 161861749 314263204 845649621 951261387 510777010 943304367 931420952 985510790 729864085 986666716 483118785 918944751 620467478 830157970 330537777 894559438 41942305 951298589 566866889 951662948 723010693 734109020 772508303 900624229 911529970 987123540 434843104 547421931 369961384 652560687 46353923 115778672 152463043 941382883 39625604 755316701 201921798 268475346 618795193 734734891 851387569 957631494 850637578 926302952 949507247 967653521 48342131 311236713 974430042 989037585 994717268 996542220 237293628 628246329 298572099 875455495 812814784 995686066 817497976 917866830 807744721 960038756 600591069 967230060 433425121 650776391 787678165 871697315 362377766 365638390 707521898 973175990 786659355 977914859 963843156 975181336 581237055 919731187 877806334 987639895 679701133 892342456 367245492 651442287 121438668 166734730 16783687 436470560 97187853 866479067 36934731 551082992 162802043 931686376 82488906 554912875 494190875 633967853 751572722 970594870 582519840 708246217 948627036 974337358 734080810 776988527 502703890 674196777 908718719 915381786 67370932 800664883 949366200 955676189 389012839 824374374 258426794 413432503 996244182 996929591 521691029 974901581 77152801 774536900 529538604 742961176 768948802 957684926 988954230 995773626 678505488 841600266 750738661 861774767 803782935 860927606 669513864 980002137 926406051 958198433 771100294 877561255 68990716 407088048 216052445 704861311 172247527 965613524 363808147 908504508 382603208 948861501 845193067 908648883 76490147 974489189 100631408 568695355 660638620 972640596 46418914 994820996 497328340 787033600 522033299 714244090 580152789 952274047 967542354 973310090 132993712 149894660 166924775 915722732 380691371 885541931 504607785 959559590 822919818 873735194 710954129 843596995 860066428 983277912 470412072 706125184 77853526 492299164 551364284 888943317 913620919 938209865 525284840 861842403 87832063 144068529 596207228 663312302 282718616 460052583 395445975 793575940 290408783 541534292 503404604 779606211 103920134 204470925 992035435 993216815 17558060 194572980 460029811 919905650 946051861 984269769 660947653 748760799 232371757 731416464 399792297 449795946 888867411 893295366 382850659 813242949 823097116 970675094 310779304 929732975 50360908 901220623 688644225 857706727 277836563 595309675 186571059 602143718 708284467 787564100 954839914 986844358 54469407 584315021 654275902 728249705 31703772 504394886 16124253 647078454 793928808 810745938 213063554 993157014 747706331 801597604 852642922 982474872 561220395 964487550 815953623 950160437 467506822 820778890 283574679 526521545 101503278 324203442 462484553 563143316 760493220 979108649 22780299 419642667 737838228 836115305 61277701 376185029 633641444 950270750 260409118 899655137 986053439 991506607 42866050 284505561 961431951 989897459 774749051 837768537 733561564 967450439 631010855 979912937 918133333 938755106 479945840 708990815 517311496 677352894 996744033 997830393 689239479 726264062 102035222 949102726 730014898 831635840 807782090 857786505 351081464 861141969 830294928 990639736 460373929 683312031 654268494 787705870 307625457 550754308 541000543 734675358 602169994 671387320 364976541 409161475 498895686 524169922 636289656 873004142 478455281 925160663 80285471 218359182 667961909 727456485 652979667 849652022 692835436 920578181 347532703 939629808 950777764 973949796 628606145 753587144 621130746 756653900 462377476 643758795 811360283 946003560 135245518 383107711 191645101 847323811 214921668 977391228 862382388 994376336 696218872 987271461 862985440 917962585 37965702 418105141 602879365 684917403 445472937 609489357 829401229 933594270 198932437 868107546 448584632 459234481 31259899 391186613 230596909 818679097 599048211 715656184 776904002 800641760 860001263 876020490 917022653 948085419 498519697 993613685 777520633 904506367 253713912 381302692 467193837 717056422 640371007 851266911 466300601 528113241 882330475 905556343 637204067 971710476 995097478 995525505 353091262 364571266 850956373 914419966 352085408 951336228 206838871 528266748 336387846 384291615 849676489 907025788 135541756 396164198 87042709 763078181 510580542 571556616 340364897 837967417 738319657 851822784 79820903 761902088 75472230 933089670 438478793 936268703 943403271 963374889 3269827 882731245 855361327 896955308 252118164 348927623 274156747 954412346 900263544 939472097 244904132 995452191 451505561 575770286 675733432 991226757 975383626 983636831 916662591 919382519 142993422 759991306 619339813 888454388 787307041 925451602 627716934 779662675 519984849 647847326 932402854 988761835 382873783 845025554 865157727 892283001 551661745 988662816 199676887 818694973 661391372 691455728 442224857 661343473 619949292 907421649 221878652 317706586 618752637 684236504 732847690 914844565 916173344 927116426 977417658 999499234 666204150 963119457 89866783 427523066 244029831 303965571 37678308 219857750 217237532 734828100 734349324 803739352 401265653 525038089 737495842 942162537 970909700 992756353 211721527 834796438 551703805 719302868 174638888 212930844 871268193 989656014 157609938 521595903 737246335 947624656 788126862 894033250 493894755 666894660 139836233 832116344 185136510 378481795 432775064 569144969 828294428 991664641 83212797 937293403 513744820 661523681 251695452 415174992 768831659 794797524 261451951 458253009 712811811 796687025 804520484 859711952 912737459 986925973 208030027 454129385 432981660 543294841 35908224 710429530 292044862 553005209 218341850 385906453 829301431 923571577 888062326 954104204 606574076 728899273 972928977 988310177 798608516 973408062 567873998 760151665 587621043 781799358 336268619 597078750 788729742 829648742 17933867 68691245 313976118 386042209 361158883 859210180 728112279 805437696 986467660 998573013 5788676 641726308 289043294 492931058 806415004 924525243 380089629 631424877 724912613 738215583 354531217 422731686 483064406 991062395 283606236 287527176 897498206 955001820 14312223 796918684 469422596 890436735 377812654 625593354 47803615 811906289 206405755 734181875 501472462 846446992 574703976 694035960 686444071 709963674 114623316 712410880 402454591 420958877 523522453 920999691 322304359 335010383 657006510 782955397 280140372 446738710 955176908 986801004 551125393 949907062 425418540 721566739 121130559 743226662 800572471 901305932 63475885 664301434 14617081 64515212 547255876 721188821 234139977 252413449 588232875 972164930 623903424 929995599 115981410 837440431 504433800 564930474 620793490 858586556 76751851 229786248 67266854 912279495 813592842 865219786 453622760 664614451 881852611 948880772 59946301 555126869 18043508 656237155 770574291 879763109 856943885 912949313 486145580 557450310 408281425 434562486 119579205 684583778 38804784 758797653 473503119 736391358 82631542 995559389 271173240 767947254 31086332 649757026 34933885 235038941 839131232 877625707 923018276 962378549 568771700 836766357 371378266 985978764 490919307 655119864 454004384 515868561 618302938 735885641 120799932 644816062 631043645 972642527 397315796 989678044 408250626 651052990 777117116 861554284 231563533 351030685 514126489 827338876 166473401 713461698 970205493 974399617 991218242 996467803 202189461 593365164 448332014 927168184 608144960 913157977 836486098 873193560 382009379 581496539 358980123 372096192 790682625 832716105 547242820 755378632 748955769 834618774 169322714 206490404 299260406 641299996 501027336 831876788 451978880 866526403 683814588 795676472 58675143 78993822 825434313 847618587 445600328 669584481 984025148 995359111 150855595 260398323 146182223 796003964 579544733 671140861 131973370 383352154 414804000 856235627 870303269 878418381 977812343 984373684 489718121 804131663 997226566 998547305 902736231 964185992 980377065 992740723 46470621 757572505 849196410 988929840 508591678 876005422 583132152 868052067 868564899 991131547 670685451 942849098 947462038 961500189 248998150 840504375 254870401 559293912 497589620 787579206 178969964 700281626 688992100 966308042 871297071 960423581 342505219 913640058 184150374 678503276 926646725 956269141 174952732 206898009 317858785 789722664 176788529 647578477 91901194 225019082 251698498 477275450 906767886 972465878 622190142 744234081 587386769 941014062 726058300 988356323 123015100 598301081 677434105 824679974 273428670 443534749 271631887 442364296 923697456 931479661 326194928 973827495 81031503 553358763 698436620 749389645 577695419 653793442 670533220 793613948 857230024 866946815 110821950 616077449 562621465 728319816 551960557 615418913 197809056 895556180 4008763 896666731 182404374 579646580 484623837 925474356 752664453 755925768 413851873 750150760 125689365 917463899 35340545 211785564 741365549 888488003 812353588 983907698 473986545 494535107 454221820 844689285 468230139 701831564 260920786 830949589 247902604 538216401 655073372 915002113 127466307 735975616 832327451 843002375 970416123 993638099 923835329 980634669 946001086 971807920 11810730 119805394 500710899 874490871 238324298 387852462 219875849 828165293 986243760 997712466 633422867 999397549 151174017 939679285 307778402 376500182 801659840 880504712 137378839 527000858 689802228 707121684 187009693 660108821 478117676 953183344 903255229 950431909 251933704 759271828 828068663 977706791 806892637 913593585 646308125 962598451 749879127 949090753 431276753 926090727 406025202 671527222 578926361 716775789 786954877 959142867 690078638 842996422 531573333 854503100 305657340 481264908 554246889 812820092 963094636 970000028 930925903 980823788 202967374 827889493 869540634 982057419 529944787 642230615 306482451 637421148 716112751 873176594 192373084 629074435 697295765 917549870 784879494 866098300 909709706 955298138 815379980 966779680 992331011 999512727 83688453 583878840 280003038 821779570 119158827 449304356 560936817 705983787 819363607 839539249 4373913 898582944 852330701 930014086 400210392 841665228 30900789 91773107 80300061 173501046 263109181 313565509 306064282 809687395 302835305 818333518 525663421 902764232 405296286 716762654 194591755 331710506 61830777 546642810 418598736 577469614 805351817 935343627 658347912 986801641 260449438 469873372 716068277 928893501 824701823 992469825 250072819 441403803 137944554 863315559 789677538 973500631 746837640 750679203 888116752 984525807 736319305 867255539 657798618 852009340 354948489 990873101 633519520 870156860 103729818 591212155 441642908 897967858 918853735 923749156 600187594 806961972 827256555 911264549 914040590 929630079 494799613 815023793 208801821 299256790 669056725 818791908 634850685 679943380 457218863 991011270 721728180 870873316 15478921 168785221 343196473 575497004 219428066 385274439 79081010 550475363 325531781 833401507 125118718 838236356 789357129 839987490 648164990 893615510 784824790 808995236 736907108 821917562 571122486 979007843 954542395 962227417 438595422 725843238 68142301 482011141 451677000 808929933 209065118 332460812 426290908 873952794 972311456 993711057 526418754 538998205 553544063 858375234 308097491 816948544 741915993 938094385 164926829 466445429 902669867 958717046 787798847 978687748 919060287 923675824 826001386 892968478 426693532 468813583 284055417 671984367 387630117 533749775 635138778 705622913 400008638 643922560 702878070 952777042 388591159 401184888 775278038 838687399 626176150 634604248 994668418 999741532 587536019 936799809 251381040 690928992 924624525 974180086 568572734 767652737 271343822 354911807 567749137 925228577 445243896 557299333 392261078 563595826 132039285 733477658 379851997 641768363 912316020 928740631 134747250 328417375 341689010 984998639 778545040 953293137 842767729 844768775 578178161 886929390 750611861 792557442 634894027 707680617 691506694 831235335 181657346 617222004 934845493 969467735 59494064 954722755 406751318 506416211 332303849 691640126 575322941 607924592 526340717 853365093 798569562 912341395 519286842 964865330 26331843 771599157 397324932 639332343 189335287 778617979 176985848 248381331 274484836 503067271 730716942 972280259 159192577 297512814 461187548 865528527 723497466 781158200 839608127 958161545 652773632 876779711 37367241 258293828 296048533 382810834 271122707 760687456 353446154 762614145 971680496 983310216 18259474 187617839 287330685 906477362 538361571 838069178 778423188 872667395 92745799 154411438 587028075 716620631 334721851 832962762 654214763 660874625 558762763 895531609 222138899 839730662 906347111 945796041 635629374 782901021 196942493 711277988 462332169 663107642 249525914 513647715 866308183 985221381 866518386 981882520 425207516 860374180 326601997 936733200 287969783 409524613 430742604 891446020 911708771 921659447 736785413 846960198 260245352 421916866 227628630 428598655 333142127 687460783 327821968 943038207 75072623 317178074 228919880 545307337 683461924 691891841 124379804 212602700 611700721 647065711 774420071 867481869 856682508 979946228 709149054 979674071 121678669 733836269 623062360 769827385 458065366 827656793 416125366 681602262 634355217 641187224 969603058 986562919 378579240 643488737 159876537 454797572 85930555 373541844 377964474 912656421 828689129 939304031 501605171 900280470 791928724 979636996 960844093 977641364 764734452 822638770 689024756 692919095 888538425 999848261 715449723 936611831 246292802 398137462 833491960 857844346 852560859 975404735 963841562 971027543 170649923 980070779 547446696 799549246 546161104 726782105 436404843 835212918 149054119 335316344 399725591 749944851 918767234 997112766 184119909 685566584 182814110 655340361 487550239 967523037 323199768 566746030 309064183 844102812 994727203 998684557 671231392 682914289 966179171 987938084 142798157 936362132 849868807 896119071 418089533 599205924 411959801 861935239 893775193 958348336 131762574 924718837 837665833 886984661 714783767 913886600 541002726 613285078 774779197 852020685 527498472 684784165 834254586 872234986 824080123 937878509 903033605 911023892 224870589 343408624 202973658 345256346 731820828 970937800 31814681 627864364 930257302 989195413 301816434 948210062 432406213 998623491 766080825 847461344 140339413 457516712 960482031 984629088 847661649 950421842 303185130 545519021 863714978 998171200 196244079 897276071 613801787 946724635 395876082 874045742 265769707 534408788 352081588 592931718 17969329 286248925 202816290 951670284 724006052 947001436 435334512 440004332 421276430 512019269 547171338 705355391 289754336 998604922 414699535 780926158 591426 698249614 942746053 963378945 321477850 795123569 605395874 764183650 277490974 579571472 29271422 448406349 588519127 795364740 712534817 899865309 272891757 702102944 838043641 952387292 747208356 893622150 463398580 603967089 169076227 607261584 902287525 999888013 867776783 971913255 24713775 621423802 4886612 857952718 286455552 760727557 852241660 960683879 66752242 895960379 257010394 420572130 24610704 982509549 165347002 622656376 338458045 884872593 913459490 931746051 998418360 999029478 696397214 921941103 985213913 999204816 207690638 752486422 278153940 443131567 977387016 985693110 740586030 879121261 645364822 858121955 468957200 734109211 849869638 966457824 788704760 804874951 209660102 962924747 495575816 821161679 363229882 541462244 248674378 332366273 128466166 215042900 291629303 676049816 938083082 979081853 149679189 949358902 394281981 661717460 937880538 941192055 359237681 936759771 616752807 981675849 714654609 964557218 281082270 530849968 550023189 782551870 786631065 938911028 147090029 223552416 316126844 812093457 595813230 859623313 912958473 945898531 552299489 700916518 136537092 532004289 588388206 679522242 34121337 143525745 71975536 469087319 26528151 499981538 617761721 630318463 462066809 679659585 362315795 598026968 7237245 358514709 421633722 542237010 595558728 752408031 395018353 747229773 873714779 989173413 10581690 874366618 669927926 925910851 482036905 985886663 930069220 969350713 232367207 564207174 716326279 723416994 580977743 622362077 185981718 652444430 856675606 996012212 319577333 902590832 303607496 825141647 913219791 987570210 954051381 979783561 378253551 428298477 852180969 963091365 307481703 331236181 846057462 936769954 728986463 758229806 415166029 759833834 999251465 999396939 335604917 719241091 381193480 998683582 880128852 995871616 617176005 897641729 991860120 995826317 213611320 244726820 80041050 537751758 569909958 934676813 750385100 898462804 448611238 804598556 293431069 858416351 312205678 976045469 313456646 435487660 417745149 872846691 797464121 802503421 497212852 634602540 418065068 996741279 591143033 728023219 942420270 948857998 311601844 697196816 329744773 667027744 579975829 874550046 952876267 986777643 355585066 852593614 38427620 109419648 955836106 988953366 539384870 798462596 916249759 963600431 327424876 551955072 382002408 439333650 209600972 616135793 410741947 611834801 747942764 856511350 385575048 750652574 34197639 739853263 377072723 893463700 902587741 941659631 885492177 891301456 875130275 931413882 926118789 994570843 896530678 930142916 448281322 787294535 786157251 896905643 769853024 844053059 679242997 812269957 840397046 969281083 747516829 984318764 624110635 691814460 392355588 903210065 726809984 727278049 786478807 790351691 171483349 215410788 915887182 960499542 95367465 952431564 221795000 863145920 620846683 737879985 408310891 782701357 167938020 462753340 672738402 834321245 859139443 952404793 338122548 611624191 429061535 439391321 222619351 639180984 28028808 840293865 336822115 641244600 242732106 452685206 826967450 924814251 233460723 810513644 667214456 978886294 522128718 973384128 529492656 897018182 383897264 899675093 577252744 590726985 241965908 400076460 918339927 999723766 449467189 787107549 402348800 838964349 295931917 606740105 897448913 980352089 360932109 420820819 2112632 540272028 508647373 887991448 352352052 829399330 477733827 748825187 446590972 582488839 216996533 510505089 593993033 614974863 821696628 906896683 539368248 706986981 84782416 924487111 975702113 992321349 615021013 934152297 277337961 306872228 287621043 597926021 769646925 870953519 629631059 781400348 282956924 688934836 346636313 892531721 468258315 607940960 90866656 483895950 675119272 721766355 940711108 989034640 32282469 405876752 682973978 885085533 753355762 768685869 485566285 800461430 417478803 574978269 969490489 976376185 66109964 793070376 968204957 977451286 567089040 658327728 256832793 912978739 697574581 800200838 977753504 991046062 427937078 742064357 82352863 827721153 639775754 866821026 744965358 911761209 626187476 784158294 682913419 897873580 294951066 329557449 474293585 633054332 810914127 910490188 432395318 785869218 793997264 962964818 977755505 978532183 675072979 818933253 907660077 976801071 116864554 649023994 716693561 796877460 574758702 825733610 41496135 651316184 748335790 748481678 787899708 894386551 1145280 895541590 341548769 610721244 381081217 949698656 60018635 188967119 805202938 832333481 564644034 915815228 442974115 947724179 55746892 189077757 507513181 834427203 902407735 976710823 826735554 964184412 879426069 982446459 6013480 607609515 178759062 349465286 585966181 602238212 884731604 953290155 779703159 793544523 421731602 758013500 411148957 450475016 845067419 852516762 169655097 503591784 941442289 943818350 814714717 959472197 776962381 845335210 837832027 857929327 208259546 610412098 497180588 537227783 582258134 912026742 355011639 388997131 854952575 876487092 319769843 572314361 766973569 805136120 881916465 944298761 686709769 892858101 396282933 788077133 627895345 876954734 153711762 679834432 925387841 989713444 752385485 759480275 465046216 474753421 923592749 982363520 108635979 206782891 827166921 850185320 641619476 939120616 497569658 960380884 164748436 514286476 687545620 932054681 413490414 677922837 294537896 735834970 271936026 578557004 671208340 866259284 818049610 977385595 733832788 805588211 455070541 712465451 47311652 786851674 597802730 707695874 310436200 436502446 851357692 876794860 177848100 630266616 195825077 730236217 120440271 928970819 803435968 925680139 193047290 664576878 474387712 809847026 625690547 714110145 555686677 926458968 790943956 920007758 799755115 908304056 268631351 509772849 910193974 944285549 420706732 447890583 82336622 605003811 485640868 823848250 203136375 456678513 947639924 980581164 826639440 889822754 980958263 996382940 8087867 657097394 513181876 768021188 855676263 860583523 965633088 990325745 35805810 79470093 160433628 835964990 763634313 888725854 620283639 753339272 506260920 921364854 198913060 662216416 600337361 966634001 366915064 999664518 966433255 972847898 130985150 358260085 694019668 944403503 445786969 962575809 64022192 409231492 890143577 948070441 187091298 999980829 942149842 979062707 547867756 745089786 369401201 509589592 631138860 749036132 434546934 968228061 131861580 285315559 845353216 891809350 573540942 891934318 877178858 924348943 226599150 559770503 493751829 639223419 53587612 930086593 251784155 809491296 847425714 963514272 403186514 504228084 290642573 574679976 793937860 837938029 205988367 332340916 58131233 730661232 444695179 756682846 9406544 93456242 288117322 739823432 594745355 917408296 75581833 810649302 73299574 600964835 620893541 661970854 707083450 875968949 966002825 995795807 140843140 342011531 733974631 798851884 545736340 562734245 442117261 794161949 896387137 898935255 720239767 729052960 764361823 986364919 980194202 984818954 43611483 779211435 721213176 794589639 86225392 961324356 449839492 815446047 830394156 871008173 228734789 538190571 419884506 436440824 323701522 738318823 299257948 471877375 749294072 964782272 835724081 863210271 520134408 650277086 715225611 838925901 738871035 802650983 8213732 499811697 854719650 957842485 613400736 806839564 495914611 772255324 911266673 923178719 563345931 943565177 728002759 834204098 426133289 604006586 801126299 829056781 637151593 818291062 66865715 720879331 689027064 756747970 12045405 714931811 190559203 459890593 39204395 647183446 339494896 669789742 918414156 934188020 79789101 282457503 321958925 489600205 422627445 537564593 754957696 840023493 844073427 943160210 250835335 803629665 893522879 926265169 474650204 991734070 536353348 847858402 57359667 830929336 399072512 456787347 103634760 518884692 142806080 951077142 536383613 722560797 27017202 288298747 295805241 638512500 14002588 876926961 227259236 304635464 245154368 449351024 598639917 979144769 402859720 636587909 647151568 721656271 731563199 820047097 574752943 778486782 907676644 956671904 369348808 830100132 885803953 932428867 173999809 244420180 522085334 599414320 554647925 773124908 359514111 721948214 505620680 942897570 938148094 964303767 690908107 959866785 733485370 850186539 470253820 544116016 235974240 503303461 327393128 466997897 689297772 907980468 304942667 452560617 469928611 549879616 149632128 195918816 522637967 697969829 698035377 825639581 470282395 526343646 520062466 698410710 115611520 127602994 724460960 780038629 818829812 980877735 844972392 964756013 812734841 971486278 229044299 603310727 666619870 746607680 960463915 982696190 476407517 678966685 576377444 890494097 681505797 966623245 542655742 970076283 539814336 638928634 59895911 629008847 241730396 342262299 149945774 320920298 794282421 840007394 638423536 981572458 764945525 987705243 484384699 543606536 938393629 961097497 187287889 446177172 271024575 658558403 507450626 800912137 975617413 992804921 182136380 971434419 757765040 784229745 123061465 525557164 724123406 816386841 5680916 206863434 176271943 715697022 657298949 759730224 791243050 832727494 926206453 947704675 894375316 992122015 897155769 908269011 517199282 678994354 490114040 621657555 620691582 925948494 609842458 734161196 980723155 995853409 444292572 786617304 413488649 957075829 709061895 710750614 605784881 827401215 750837428 862837198 286202374 783407559 47329579 834465492 289559364 415841685 980613882 997831454 374844218 803716356 91882090 978272868 875511928 878647640 690575808 715854301 3569937 527937482 563325397 810202860 966905409 989476984 878960547 898204881 241175752 584051528 519933588 736664680 330624323 943467092 344545086 952112196 572532111 771709830 704188232 963327296 958346650 970147757 701955854 704906501 837688576 963475154 214513685 305797678 635024466 679752763 4224516 483541215 206810608 492300669 308767691 589326272 701071353 720789920 488499049 910429537 438133769 849486953 381556014 840105611 422442674 833309033 941240291 962024792 814990497 841345240 578886378 966450836 2133988 223801919 414979754 975096835 700241448 828840634 533231607 919397816 379012727 821167464 800803038 872507139 54600520 265907768 916919917 969265950 983969126 991084805 109201171 611448075 610380295 932587420 737813441 982248496 911902184 956458341 614300318 637371534 62231683 847409488 157474581 292270110 254662374 723403696 289693737 897682574 744447096 995180672 312432718 333702495 306337797 499235884 774720076 930919207 68905316 85041748 115248093 139233994 162974913 336952737 354095922 771244974 87563951 914396623 351239937 594544285 595139564 881907755 164427555 870798075 649819528 937038382 399996045 620328381 842612077 893356087 304924622 693245523 217074850 955734240 714418358 888414449 741231779 918816827 428039684 815251225 660680338 823611021 386600904 756124287 15855128 686429290 452123864 759233110 910880625 933076055 171930007 197146183 788178791 901705115 242052024 572644637 870363009 982236928 319526422 665043359 16617754 117861577 889209339 960589791 974255675 991381591 787866142 853648365 769905825 774587304 276352807 404228215 619735798 664765776 709218896 837035986 853123355 927443644 549371116 948015632 566711452 829542248 659232737 694698391 905533287 993133275 165617807 822178217 858568178 995897876 620970458 813992513 786331078 927630291 395162601 529212423 499243410 797753716 303538653 938626504 463209223 880672280 677241271 850278538 104827196 544661820 484928663 897774481 610698474 882024291 498659886 510747248 89517621 169872047 177538928 946496307 438172494 904866180 140650268 996266111 185861590 214125237 408554187 603754770 653144607 944675152 757825343 906608323 688884782 773749586 773539244 924625628 69359497 111951685 602949913 715140288 315655929 564890108 608787936 812664173 384935047 618154945 683133560 914867573 98791163 191162114 291810733 462608553 636111191 729003294 781687478 955655731 203068950 773431745 122808512 321299837 473346244 733965660 50446865 781736278 624234545 626735579 780683668 824411930 338983163 549976084 384834237 625927496 229893647 648452100 142444348 812101512 183681906 637993347 71754808 121587459 288828673 785503182 480997669 977451528 825973239 837772098 99487954 245482806 577523142 931717714 29597030 416425247 757225710 800479885 244543041 899458628 90500769 655592647 612134042 827203608 906720743 944646153 834155690 871017064 544511964 700147047 262032718 973654793 852422721 971181230 31485926 973079813 525296078 967447515 18706882 189772013 635335976 910234159 157686086 294416596 697092270 989317922 701371431 950602280 156157162 902827381 752996577 929485784 569040469 584489647 883140147 911835269 296733331 696116801 6559209 636059477 730773874 773740937 857177948 964796831 824773998 872550252 534478406 883777421 934023854 982765473 394340462 534308861 862544247 923465505 230892964 931313958 633733973 666756952 633074101 723344727 922032165 938199245 234547842 618475115 773250396 807272920 630202908 710224204 487580540 541794355 539877353 908797673 705988936 958317448 141130894 743286931 88098965 131122192 703179574 818712503 544169683 628091940 64317507 729240632 158505866 845487988 76702495 955810696 720013028 847893507 396072562 825556040 340030412 700622213 633746761 888232619 57653107 364009704 467960684 958661599 724508038 909947806 825301193 852186861 506664579 848630523 535086438 538874117 719998126 870556626 737620475 869977701 834052728 853399030 411150711 448082462 252694701 958048041 731923919 903263083 404646812 675745613 549839085 566576546 294249928 961361332 528718515 660315280 141709654 657730655 51388707 778280908 542242942 851725610 787508508 990208571 315294639 692078695 983936985 997713086 31911819 247670042 84494270 266861326 223890855 604368445 53820523 932833512 376746771 553686329 300163511 665372257 222926995 400002788 132652237 762975072 970123858 993122325 223105813 255362585 396988572 460743881 961828669 961921588 646325124 857662131 192641802 630079451 633714291 978110168 905585142 993843602 105312700 205660799 804271414 934867272 321917673 886544625 26370851 562363357 531292624 652354998 786695871 853377237 670500345 971518761 237635498 945387372 778453069 993760153 791258630 868539086 17607276 57781285 41524790 203400538 355640352 913249196 890784835 984103936 754513232 891192017 844550031 961037008 971923758 982193250 49484916 584467885 733379708 925881891 717043291 805452369 74491711 619245047 439007567 905064532 13431792 465717140 287141080 317187396 891435547 946507118 625419070 992281799 318792379 500101157 150812097 989128138 782610460 791006440 904107047 922990919 285629549 981715239 305819890 896225610 129907511 368867339 608907391 852681222 103985786 233035957 605354370 869255294 96206084 170835231 986116964 993428210 901057251 960365756 965299525 977709567 693085971 860111061 459517575 835284974 111720035 921045654 123062872 933749275 978804067 981706532 958732330 969608329 399755239 880523771 4200686 309052110 184373775 764314070 511528875 692915904 345702287 441854374 505784306 837700442 673659405 976481665 769222590 769700759 207589240 865829344 199457227 437600655 713346516 801459086 735797745 908605461 619378555 859681096 262562669 664467060 65712634 391319998 900886737 999070392 97828554 281530302 100277857 806628403 385441359 984081391 866156244 901286119 295115504 398444652 396807849 682918161 471145714 764390997 935196585 955702544 443321645 704746859 280985492 409676630 155349915 215386127 462654363 908273398 972196319 982295085 149215581 309338315 536217049 719961969 748610150 911344632 857137603 924593348 705010117 846348270 785256124 821000819 81872821 997123884 761422343 865710239 203623104 295636181 638369996 683320886 925719843 928344467 230135976 515132575 476136120 796791989 769318901 784986870 743883916 917120450 557199323 600556117 975750342 976436776 900092082 952593503 342728620 843274980 980795436 991194948 949721175 989702620 211139810 398946032 264363678 780371493 11387232 495030110 144182280 961504283 589892071 660849304 1905351 800298009 316592240 648984730 660222027 829834601 237604109 824122217 709249176 967617732 125857105 278261310 422766061 802175039 723076774 916268479 77653606 728839631 601490400 936978500 23157763 395982752 145906503 175068150 888132290 958868553 92149108 401197671 433468564 635427189 709197606 914470412 779477479 969207704 264469872 378573277 354801452 440851304 966503271 982152898 448363041 727364717 813054360 870858478 746377846 803134865 796534410 817888030 999422761 999960062 524151173 784429446 551773416 589693631 722037228 819375069 423456799 728527616 551389944 712584602 439341907 505115357 472480230 659677190 268588908 921240903 231979483 900687131 933824107 952380697 920960304 940804179 84717953 130462833 831909300 906423601 785658540 842911976 42496615 258288718 87146716 655360710 574917404 772004025 409412927 665632934 802508787 942580450 34563996 925671167 441380349 920728336 425427912 820126446 694323149 932491032 247529254 862656008 43373379 339563192 490276126 601818753 991238844 998584890 850288540 995224671 920576476 971687092 643159089 905321600 514190798 945963106 558436861 685048885 524403091 743234095 779752688 946709072 796897614 876329163 556460086 794848105 80716442 655052604 691079951 842414354 190993112 667732436 416819084 753495532 893107592 940527858 982810931 985112893 118869016 756830631 639298882 743028471 89002148 616149696 264806305 606079283 109980604 496265242 575355685 719520850 112782418 830015351 557496513 928128779 668336757 978942897 359139773 374861449 24224585 451072104 41188703 532084153 518937535 850646265 806941216 931868668 783397371 961696554 242146601 355187772 601304145 999808598 758421363 979359219 172579308 843104356 980645840 991867192 883086540 894375520 712216978 886758397 932477228 939081965 763424456 905760260 607443114 728137749 524562837 871073084 23569723 832809608 199867757 849738786 895270735 910213796 50318029 928328351 48115745 228391968 693669462 873930124 162070473 440928506 909346186 972764762 852610377 885734303 530142273 558953928 905877492 913687413 583103492 596123767 105836249 928447270 847260407 915377913 298947030 377617041 759124776 907658426 829664263 863705200 151712867 636781131 247848764 873205382 528549613 838488100 90862349 800198147 811597243 852853861 711258428 742298405 910970188 917510153 88763977 919465551 881358325 975212457 324558570 626981880 539040407 835838584 816866976 828133524 915885129 930589518 457151883 556536377 72978738 915468175 18143186 215463621 746027525 808746868 885904441 927962754 632683198 896437665 461860872 977426161 695671097 782244731 558172343 888074425 939473668 947994068 287213082 952853515 358101097 566619738 9325207 265579463 13745077 646306151 286575679 510886365 130089072 571003554 50485928 534667368 657526294 673010830 223022271 786497442 910099336 927906861 679574312 889120861 624353740 907354763 809246154 940334555 367553825 505563064 752663197 927026416 572927581 987276612 342569222 531776639 345750242 532155164 12191037 854121773 727616994 815311768 439292340 848195153 670305938 923851566 752953096 958913914 20442943 266093413 437452850 717203675 167057789 268815733 216151507 358345219 918073927 989539911 768812741 899335072 682896181 828165542 85655670 224079679 480681841 886457400 105612156 124037987 134634178 909596464 452344342 750392847 756214364 858723501 955534474 983253863 681726536 787358465 66241767 897196328 38728913 290174146 293572099 823624875 410872381 657053413 600663441 620615694 651850297 817106188 875683550 893776775 113792584 599990225 333007200 598311243 908511839 915103117 891238929 938957986 935971932 982261299 215780450 375185155 207864086 306711303 896043242 921667308 510766240 792199533 206640128 345776033 327165539 393941232 370159342 742527570 277621808 732905478 115144635 807699838 908150837 968386868 361503989 379420397 176681302 387432457 768180980 806566124 406173378 711493389 901928010 928545482 661735235 774595454 386985557 722773664 545981766 653825277 428907480 528535726 784622385 949220986 238674928 663875512 757161287 909893957 32884208 183311640 761404566 847453647 178249659 639334601 355536178 840183668 584198942 943590740 994021643 999584641 721976367 947692651 105118528 453506798 563050471 737829765 71478336 832339009 159787473 887480684 914446163 995983624 763295592 787626867 436653977 770064278 373762314 715214406 24411686 807288112 949437266 956272788 722320129 954149407 92711113 546738937 608216599 685057004 464870336 508785294 914361400 928299071 714252458 811550843 745256978 805457180 102392874 648615733 420067259 614409774 174123176 606015062 527894522 609330598 554098727 627189252 184186743 974110413 960015371 962200667 41086022 286713627 668142425 814112704 952053200 976802801 953810803 966792905 785058809 869972023 755062460 854284768 736238701 744332386 817845562 859106274 463184023 988133153 765716621 859794908 812735190 921961545 384760285 578035475 521959342 637955376 439756067 938946113 211617542 754726020 98523826 652606289 607463875 619349514 617701205 890955304 176072595 877653610 904770261 980888689 654471507 884500835 660085416 997780479 587577947 974970836 711386730 776649458 218786092 824945516 325424827 557000921 939087237 978349822 872459766 961006190 28090847 933133897 122709320 956338684 854862164 929544138 863305849 971433952 775582456 908787144 458956861 589015556 500942495 818931636 8304116 337125939 560313226 920666678 207120007 709006062 985836846 987280351 556163755 885783391 43631962 851375197 619485313 747084853 666078840 868783341 792358331 988895267 126293409 485959316 945382609 945522058 535173506 744268532 415601648 888443375 645248388 930416929 305459780 580162506 927286667 946449131 501677225 741104893 666274076 882758876 773048888 799995513 482275962 613572160 56789888 753301566 459031214 761418695 57070794 658337571 581688811 678816346 274821159 908278354 763670200 967517669 418768244 720965825 399121200 477991523 895776432 972383654 935258194 946136900 838484846 916030773 78301360 770813993 94085017 127401969 608969316 788226216 533961589 992861291 223446809 318081946 588175362 940665526 59576200 316988683 181359055 264818237 706615217 997572543 179036473 409292689 237641414 870543762 964704876 966935210 585528796 763561191 553023497 997231701 907947584 930768829 419164246 512378470 286612275 517200404 353136670 546709207 963520817 987675886 858787888 918830036 177293905 642299539 973554437 973689809 808662876 933704770 296014301 697638661 218675560 413133799 620831350 917104281 933136751 990742706 931520119 956664125 230590205 836449894 787919452 944596973 392597100 857808631 617117327 903428896 898630300 920480482 180899285 845116830 833620640 859822103 984353935 996692053 3478764 89724887 789504653 795253913 763965722 813091742 485995922 522044216 597870373 743019537 120112337 311624933 405732515 778886974 231267813 384784893 245886768 534237524 253494246 595073324 565384488 882024149 464505185 485597375 726528993 862769190 375459307 650504390 149176908 380376443 301790355 970778277 963954701 992632811 569766252 859879652 76194743 219517143 941036617 990769079 657689298 912504630 446676364 916644213 979958052 997518385 776451780 885441727 458020535 710518547 186260748 646705204 774820335 948210530 265435422 606309294 520976719 919857006 618873120 632149935 271988166 686373859 50730026 347798119 133449691 628707988 924902182 987571318 489573746 490645015 987107750 994863566 774000450 811971680 697448146 995537885 491243173 606350697 369983686 945567881 469387591 989844883 393863130 536930032 572689913 598532907 105149867 638389768 621274554 993218150 805639338 972029260 79265557 323142413 439762463 676433845 161301605 302284085 597617275 951209849 665890515 843969360 114028202 832171340 98338350 388644641 193033126 900282653 876312990 919917331 802569025 808258849 516832481 746418611 852378199 967318804 311210455 713889233 283536213 568018464 240979430 275873184 635380251 865061195 977032630 987288972 35058755 596747835 588965150 869401517 491853612 579287509 512019664 632467466 257176839 812556028 678102867 757018614 105442505 305106768 576854399 905560062 224945090 752062756 296776999 857157445 826183872 830812822 330301371 726386585 811008970 863193790 454373947 975660326 905338890 957851198 183978969 818358424 193294098 534762396 809233499 824692167 65107724 756646391 508777388 939840789 603471446 618062296 927983540 938600138 248456452 849885962 604114481 931938573 609768476 688481306 328279494 766563278 502839681 854767155 394454302 871596987 27125432 229845713 586598189 629719058 288143823 549196844 774831767 839421625 838428258 960215785 917687474 981640462 334992933 436031191 538899119 895059952 354772617 533779199 198010899 719851233 220355455 227959229 225055891 403519782 137818646 806236653 345842072 587525749 691469840 814551899 813652572 993889275 465178170 676623909 994022464 999176284 990660397 992543954 356113697 623960760 774460077 915925906 112290172 114673932 365193428 882837258 874445107 942658786 408302138 676127236 232095541 954803586 738472023 791193811 627276452 883899101 650727386 888944047 474399994 879389524 49773914 223301716 906762405 956012143 405372736 577292420 562448020 896139650 757341711 866263170 674187728 945049082 541963634 582358088 789182187 862216505 120706470 635235468 191160471 703913253 616851573 781027560 816156295 903758150 16585098 48229299 523269122 950427787 10072968 725728930 6131937 232639696 744078682 894272261 81021667 906435998 757924254 865746280 319129384 714086112 852560696 929063234 686950991 746610634 741408677 880555168 890597955 955768953 779554065 890964635 820466863 904217866 712695692 801336428 116654380 859085589 392503696 488389161 856328193 971037316 808542109 955048872 559641731 902548175 234848218 298300752 114952631 889316574 634034079 871482735 283752160 965104564 50856103 588110916 896494768 976750701 53238718 354521541 648661657 668977711 276532958 584128318 312874287 995266537 647709253 845862013 377891871 705948623 187136099 932550920 519661921 953002045 82547078 843567679 241039754 691974501 931793242 986103621 352656149 890574713 267994338 273705308 989077965 990149966 394284540 943536616 522752528 818045936 987105650 999100253 177462446 736641713 2735635 892309053 547406165 895839217 154222168 883053498 467527728 972894500 55834923 386712033 468934213 954003149 252813179 863025880 602067374 807459474 714519541 863915079 749913813 752824683 331296296 545776752 772841924 798512449 613924140 830226823 407382018 558538830 416215871 670687960 502659435 754546288 363965063 938749481 99537788 937344240 420279888 626950395 602725265 707133629 930000704 976116218 912705283 940251211 162389931 245259669 601170054 781387004 351066374 456486063 355898940 930455779 536666882 931892539 670846141 786603925 26942813 679068626 479229891 671061395 43813624 916091597 362764874 479646874 333834813 446971812 361159871 391323551 8897079 964247749 196009426 939931883 787084431 787242493 673862096 950514886 270018219 697741962 911931898 974322807 580873936 976878660 4430170 556958755 929318325 972570338 212952473 765773878 962878851 987383429 805396658 808415008 577544100 750351072 836641348 838021718 113985507 819299883 144227180 902654315 358316115 469022705 558595467 891468337 969636781 986605408 837989374 859474604 754168933 771432774 611826425 869941290 793506920 943574883 947778097 949485271 639833704 992336097 392516795 859666115 945120079 963580286 665088350 849797760 450544310 476895618 460103795 976937473 870039115 915092131 122304257 737277353 94566215 287891080 928272648 967997141 834886030 907621825 340344125 544379287 969064136 980803832 631045145 969140718 342901930 788710544 37566220 549892789 498056341 894926427 771626556 841225690 185057764 887360201 14316926 471803736 631116297 926935518 315146341 436868488 234053232 476695315 294625690 394489373 69130121 827153240 594242395 802766287 20867372 980615434 174102225 734527002 783863758 954507443 696331600 705757064 40528003 416791225 677539296 919355758 194843031 630326770 973071463 986924567 644142862 971147892 986220564 991078904 323745372 925297911 312375403 826783671 224620231 629976703 473245379 906351734 447847641 942221571 901641016 922139116 625236778 840638071 4273258 162359409 677561121 843226440 771956696 933114644 235485237 652057776 941502847 992735159 542707195 573790714 643647347 841755498 359444839 699445896 487588961 519418499 622672829 839740137 772406382 865373700 127865867 418029026 816223441 868651487 167124668 528639617 27504684 764547433 918966158 952366209 404629998 598714371 916960671 950019016 738907097 986851008 303455248 569189489 520703230 825979040 889129688 897009396 567734408 935767707 294206924 777563980 829624854 932244162 454044843 585937514 246664744 255901641 455455590 839194095 930753842 951647591 78170564 860834276 848953150 897425265 972115566 982209396 976831472 993219010 121843877 667022235 213783676 734332522 415315974 914118902 244506506 994423311 370261223 772225712 103323009 621505379 53357882 400966651 605821724 703305899 351608335 499694936 606380876 990275497 230193175 627311231 267127821 699196355 212808814 289177249 341039832 405741821 260860000 619258332 977824756 982841731 942098321 976521405 943137168 977171131 884945434 945546849 641582355 904339806 491175842 798268246 707944544 733620750 580407000 931736172 111486603 444271796 698484890 865030607 285323884 966558905 200556511 604910066 30174248 704665913 143390217 594136884 826361588 986027593 878585569 931031366 609574648 736126458 447694899 590934484 209748536 801519919 956490553 965380605 170642041 868502238 484884627 775271414 887546257 949871348 158948303 683918632 228071996 513629735 727229202 960298596 193422796 604862519 322254643 861725249 314588005 772553715 231492614 786925857 429699162 684662910 782070450 785269064 868871631 895338921 670785746 826341755 235112360 527880799 406801938 744269497 801269424 967940841 867321872 987805300 815962836 841863462 100653075 971686024 388822126 973185920 501015904 968353874 308656919 669550365 920772576 959805775 971666214 993560838 494097011 725965534 368146701 469032305 294962050 993389222 278857802 390861708 130598603 450136070 684765752 998372091 834090901 903802867 367539114 417329702 241660941 992322325 813771433 885614300 924806742 993619442 823115505 926277197 235260537 946542739 341023982 499602078 905642925 994268800 333943715 527006518 908954709 911262582 106552241 229744221 914302748 915856597 57678592 270767219 440699592 710666211 310550876 993973931 375656556 910470193 216887922 510406527 149843011 841116822 679451565 888729950 25830446 232413366 622701934 965366427 926059052 947392165 173021703 293268039 498911125 820073021 29789040 108405845 418724362 948955536 309123939 435521757 259218447 553437976 377198588 982580357 95734126 983919599 480371147 874127541 563450292 749417260 181712340 854578734 440984348 587727919 571767954 606405761 468970612 778880969 674850192 905288864 134959427 913365641 496768166 641442871 244092807 677739997 899292043 936766384 635412942 835273645 770948868 862645272 616567848 824276581 797141772 860594268 839862167 990225150 565626921 773583394 145607687 763266575 564918079 826023891 650527733 873986521 222188946 937518163 277857479 744296898 618771641 864654838 789405101 864344270 719143916 775191900 559303663 560011843 295673794 966250481 101496597 564097944 458257872 684665102 577621801 997720886 67179413 526865965 35395506 265201186 974102397 999542625 846808745 995438051 711069955 765624827 419552821 715992872 51030030 683564604 176951826 623286183 49967072 828820562 414738079 500237006 569793618 911918796 8419227 880401398 253859335 978847125 889547551 994798792 729465950 952403777 485641273 815034439 401762453 597714176 516836639 654265569 779032482 877703651 686923970 726327813 153596492 524198137 728789632 750101058 926823146 973733147 684791736 762223733 244380478 943740272 86813987 315896106 490244121 515593461 149147857 837128159 889886406 997394964 764485743 958144189 99309730 882161813 932984113 985412406 822158096 988103504 589721083 687739360 675635509 874104784 635872381 927103778 242104295 912058450 346014099 720865103 651377626 812495724 917969102 951477623 705955714 797283364 885012668 964654656 106403804 171333905 906367603 958824240 208010318 792098133 348765654 523646342 378634227 528548288 380617861 403228626 612715190 876877753 142040616 649769471 301206826 409246358 935858559 993280163 659795313 729041254 733157108 872534435 124282 642133993 235303910 983398847 28073764 756334428 299423002 503561991 973870458 980879614 569050004 965009177 392204003 627295157 269258587 758895632 777384078 810600551 662482603 849820412 188713212 720693260 482892917 539570565 557509233 688636788 911332848 923484827 649372406 753687443 153067839 644875839 643022604 817670248 475450285 521657552 254030578 456707318 723635112 913013531 795678902 979655288 726168974 824804366 110373438 901038216 983261187 992426228 320022539 412686306 912266082 994820878 472873249 803249800 955007389 992189793 270519448 611661502 25323487 568997884 657273995 740628082 172629103 987206140 930973056 933693074 73371527 799710474 455934015 570503471 674664873 993916592 293830643 886520976 890396930 903099446 292653507 848778183 791702439 894600697 236609258 723166843 180788808 413368366 756219298 908663509 908697688 964754118 263886509 620153924 387275789 459160523 381351215 706200120 215365697 858026906 914281877 916068624 28131971 452444365 695326747 875017611 668770646 709967513 25557013 64371733 72737860 146937735 29595876 227278120 192684385 858954957 885021189 896390756 202760750 233917923 157425588 532482194 972496846 988919440 742994804 743573005 545260122 793782822 551459090 984194522 583434635 860745238 790497898 955718733 82464789 130429232 610377795 648585183 898069620 969260360 622653051 786054746 9142861 909192046 288201019 362618969 721660550 805732121 360434160 869139439 634516449 657992125 205582894 844087439 728846398 821176139 550983256 918087340 511827622 778325734 282333166 498914584 707230044 939214375 537673264 908218048 311978974 534030434 877791098 973744721 102877560 443153294 514258044 765998907 374017182 787108667 702421485 959530015 491602292 958769908 46553511 377650441 680441305 832316946 885313099 969108908 549772938 613545003 843027339 845610238 229884120 335516273 38344761 478301609 842369359 885370049 18024317 771854790 826451879 977773145 910341645 932883557 317634570 416671487 109393878 230952965 80751815 362044615 308207390 637673743 636437966 996150744 675296635 787548627 41640786 956409083 22227251 609556824 563978703 614273124 547115090 917651933 196742932 916283424 299876060 322204583 77079567 447779106 229338960 739173141 531886383 948247000 914002624 918691981 847630881 979589513 797758167 937561393 490895295 695189724 443421100 814519739 827897829 889517353 170533673 637510419 603826771 685077742 369239756 485488109 203231852 425131201 491413343 754110760 201412274 525770563 901739012 936249290 577750895 754214650 463762901 599864402 623017247 623506737 595047208 894716450 482693531 973026067 766964036 852644287 349653563 576010972 163151928 669319822 158704684 741498607 825882657 947914539 937797012 959296840 757115408 882617642 821365150 891995147 47926457 523726455 273821469 517414502 212587865 310617284 342616495 966695071 135755037 982626286 492649472 858431349 413884793 951033177 979823694 985971053 50418914 223434208 14571860 132469403 221701949 778768697 378543224 713372732 302949620 391662036 447408504 674742914 681473771 887523173 498820451 694112973 501428501 705940523 990106498 996980844 753156967 773482020 371054567 532469856 430619671 832757069 937821352 957171249 166265963 180437511 46243420 733683499 15057989 727319136 783120626 894414126 848236431 903636550 812480191 835448530 68032705 147501694 763103973 859150544 714555476 744286599 184532313 452738361 923664126 925041984 881152808 956802443 638660072 901894980 701285564 980278862 770758288 933812797 10399801 500521371 252158201 912735517 528660875 643471621 24828399 395633207 66620458 103760262 579859880 753789293 428230419 749804039 649245600 892114577 275986834 993508477 486009815 971885636 574909525 689945839 721658330 923482241 699496936 815526512 665317618 806723168 941234131 977052112 334427509 384285359 72919806 735276496 673737407 946254178 582300825 745503672 996054285 997534811 414635240 750670294 256834986 503953833 670844531 806994662 585064339 967070751 620068395 986715939 163912634 640740930 586330522 597630352 542901213 641678895 290163002 793768766 443769108 541652622 691719671 753901532 425983749 782501642 260636076 481760985 837834186 845090678 18618263 715661238 568159600 934675396 547875441 678741835 796017155 853605895 716295801 947144370 537357253 753233119 760001257 832781654 995176690 999589452 271984633 762176492 453048656 502953107 18977907 265272027 518382994 739289146 497368403 523916596 501654562 895724987 834318829 887520638 420167995 457472906 392566270 813806241 404400520 782704027 328819173 531243858 231071171 635895862 157219430 279422867 885711524 926556709 145485068 448406915 479665504 718701237 802985231 924580703 344381777 689422004 934411614 976276631 54701578 515306915 338750223 725679904 238172083 596951911 403590105 855628587 427050029 927957339 587263188 940505162 878110588 990824922 170689496 964823575 280994557 581000265 63435623 732844650 781532899 821652348 854346010 972874501 904159323 976723050 234512889 868862968 58260410 432343569 68403205 705401933 453761603 534503260 480404971 498946137 452442246 503528061 403921710 546865587 754453663 755166495 664935998 822408807 291965939 777132545 895019835 972372427 310958971 577976704 49643591 684248869 72249410 541011954 118303411 699828473 273784752 673822471 191895482 719809943 91403011 743881093 500947357 898822071 230188491 788719907 140162278 959140542 929121727 991758194 456034844 534579996 996234509 997438182 494469801 866286518 458383697 954623681 303570908 344583409 894031634 950424883 454716559 730630316 746554391 767130665 631781108 658476265 390123190 769798354 724313557 921827038 83796538 729767869 727686283 801446189 413224295 868900457 798761264 928268199 229343311 378613367 837932125 892276561 287657561 461289909 756712179 875916546 274390805 517535682 569814022 600470637 153715384 616472958 950434706 960875175 525492846 801220597 387682454 700474858 62734540 785072364 780915092 901353215 846342138 853473997 214504350 923921504 815934675 935332230 619398419 634624195 680330447 790983074 86396868 279004032 176998964 466924490 27091789 161689391 192624436 465224038 511700603 750716370 558696285 905659569 507085152 789111889 188677773 986514548 495476367 551844310 417274531 841773031 494276146 568554962 506668430 913175471 519422149 928437746 146668846 385030810 471803850 766946305 673217181 920984657 197096839 799865797 236519551 619866760 458859828 558999530 823505924 899980192 303793618 605613930 646688788 781974136 346264357 992381661 803906388 819413753 577676788 720571893 3381344 483911186 796577373 856645763 199554723 331856361 412663490 585571281 254071651 559666218 327671838 721808817 308690051 714540156 141201342 780884121 81955556 548618649 792335676 967232556 826055656 978629995 584022310 972915812 569029359 824068903 798832778 996260596 282715005 805019668 265574041 571091635 65354618 550253192 446461049 907933600 777545044 834234815 381815950 730906754 651238901 996064711 998919820 999627517 113308913 164321509 555387167 736667454 376558374 950523305 583451204 967545836 690635780 945159895 817333091 970442815 204715238 392455111 394942838 808163554 106733422 919271849 988367013 991888153 584753639 774928990 743475800 829263328 856670531 984738694 861622968 902811392 310642046 790021977 233267722 501699919 383350343 582565287 8730346 808729025 764180686 961690708 251842256 524107160 957754566 977864898 133486179 535706319 351858446 892195359 744420252 970366732 707991601 793236286 138564162 769239076 521239225 608088209 45263979 719984976 168379849 342983324 484662574 774075275 195219796 517630054 265468459 641207780 789783908 884067144 454247519 513620962 324211969 890289197 662878371 676572584 574856160 803491692 611287077 926639390 4961271 157827627 996726781 998539699 854469873 942215531 189022266 791055994 30007254 778358345 517527431 723070074 62745791 881689820 340302722 510728323 326462229 851532898 740848833 905446919 306524051 489379675 828355465 867550818 535057009 649586853 690815832 987486220 483525295 547145068 953861221 997498391 618591286 902257675 79729875 828025161 830914928 840113071 456480225 840417660 904535074 965607487 608592048 977753631 597195038 804785886 516762774 897273453 193377514 606692545 170019333 836416177 274229963 854505983 736438002 840635394 112021459 322409884 180834343 772814461 471774684 480342516 188620959 537344110 131057737 608939311 790769657 954148077 55565093 563124190 871089181 914795364 112363532 816151919 749542571 836116668 613140294 722919349 970512079 998404472 721542554 830270624 163898025 470998358 884057753 981849497 892873010 914713565 135464336 734868465 639831841 726910292 827298348 880947578 723564847 752548159 274442536 655178346 193357232 773109169 323731900 850865125 646056404 746441267 676447186 915723156 698555815 906458643 708367861 832123275 727305200 899535615 75746946 598208532 324069975 413454021 306233045 570810414 204431818 407014309 658980287 879497152 414398206 492508484 636737693 999514593 538899610 739538907 358361499 478255408 154817687 392572658 680994535 794589656 805906333 996335250 843840174 878552901 73358379 710886914 205209382 376268232 323482908 633041289 827896699 908821242 741979313 898595083 135967337 597921517 860943927 866766025 486806318 916152024 580096940 680785383 426587617 590315089 188182518 917949099 62265367 808846102 802559492 814979956 105610515 339527192 572850150 964022781 866100775 898734341 486946314 902675428 740948850 958644727 288059277 332745697 407628345 927476489 439607616 455681061 438892123 659073910 409783343 888180769 288672909 319241276 222064724 711436977 961132292 985068298 486227433 635400719 908885265 930705058 228094146 347221179 801191383 825266808 392644915 905381699 105068284 376461013 567584728 581652527 663030886 918952625 59196792 936211514 361303975 772179921 627166372 777609257 233630679 318224043 101540047 695230000 507523526 760548776 785497492 982195258 263730375 289966943 786453612 836555152 457795568 602200579 469451884 557672347 520604174 837366717 60245987 283875912 374526011 779009294 607575470 643530790 303411760 885711635 546984198 916232308 899955080 928877709 173508642 355005167 821440437 923726395 351696009 569894937 561541158 597428942 102787073 414213700 68340250 221162415 539274939 793711453 298257076 635534455 899391274 902646182 560831145 962709659 832979393 951189503 462663919 872617982 919221582 979870337 858186364 896162423 677401165 945839208 943240224 978153541 319427566 662141480 572410527 860522893 313010215 440839294 127218957 869426884 849512834 959741689 206247649 323692912 174405392 238493403 442195235 881295947 814190849 930588193 682678031 921653725 334654002 696556822 98237293 632976300 615857569 808146733 81618398 206064239 908811773 987298560 772097769 814887308 992311404 995922348 820497056 998004310 174343628 936759174 336997734 562412978 988778539 991149764 558904087 910687795 186286690 864911487 214099560 265930813 936199689 981719168 263537523 558828375 306423668 469605727 584829122 911984486 515080753 997821801 85705580 920442484 29562646 450472708 404356633 967589714 643582198 922437073 524219847 862421868 386397078 512957061 995031089 995542931 279033619 721894508 926137813 939312199 372725349 883174660 150949050 396007327 614023082 641726325 261827083 407709356 337619223 982845820 483448341 546375207 2142473 504061113 335822836 571372461 307061485 847445044 871712928 915330633 853765961 856218865 808855956 941077832 662680265 757991287 818336510 841836434 205062476 830320389 418118679 801944264 331627030 738760428 197759867 643409574 678752688 931503077 50203150 203207296 276678913 362559115 982477185 998176440 466526366 962532275 420175497 502067339 416748993 801647766 467591799 581101776 779045497 852758966 598636977 931583121 126020447 918022523 972055157 999319748 853261296 906528284 613132855 874365730 105190565 243085996 318189306 544440071 856325048 903492835 875951993 946545117 284482009 365992211 661385088 830724061 572933661 610692115 702373408 868932092 323256924 546480536 526572259 932460592 441864210 588241481 3236856 247041140 505883775 557168556 376567124 661599855 107152036 856004430 725743339 897711354 983372511 997801104 402439095 402635428 530701624 850052399 3708615 252707815 110335075 986006423 111242202 333113888 722532638 815594504 838637260 952035650 851611390 982810980 433483630 745628545 353598865 957979808 223015163 400284959 82014467 920035030 370647210 936928897 556199412 662977618 574405594 749258706 466582499 897775218 477626673 558367507 865288001 886098611 917932425 974609984 760198767 979015109 866924751 872892037 721827374 953669831 302670510 521696491 701490237 884780093 362714246 847149747 632934885 999511236 3376453 106881203 247935245 775685377 848500832 989546541 687110626 726021939 581091313 605237858 783899589 860067324 541354892 627004786 480146803 954160967 249576769 550207570 164104632 986425774 67345438 828865458 426598259 564929350 32664490 936180239 49631630 453976964 532482783 702390200 959308107 983687092 711959930 821693352 797600181 878440809 195288009 756919045 899768377 925824515 951691455 979498133 903498991 920384649 988209014 997716700 263173297 296137050 676380345 913537987 150989366 475304215 938979869 950535645 363146466 799489198 707417924 932912302 208017120 241563729 789389979 904652983 165325996 828927833 593282265 825109349 45917041 479885386 85943258 422195421 479981624 536302721 407763962 617554575 286070857 914195709 654708234 923503368 523386362 979444450 62165319 693394499 626891185 768765695 300293420 518041271 399385082 557410513 116037715 516126082 954872194 996206318 292967289 407933256 608821395 965631533 482680014 969236578 847199812 929195963 591284396 724284964 712491433 909893229 129350607 300975588 580582081 904783696 178828716 586623784 18705652 520076388 349821651 465602747 612410938 850057530 34402880 70415470 828544023 953152346 789807485 981269475 513771743 967724687 408088764 618398669 491286419 608652904 910929313 922625488 655130796 881296292 992040046 994100930 922436646 954250007 370795646 411996410 700195920 958626572 534278145 675546400 851419271 871276505 810601942 968050062 376648003 457005518 895321982 925234490 264186710 508759357 74471319 559760897 578001011 865408122 375140351 766356654 652486939 729173500 91219531 774372835 950090561 997026779 589508963 654651207 20875415 626603586 674255624 713447912 786951948 997309337 841681961 920951040 80823841 528639934 61507835 584426570 834370342 934212631 564297768 662327595 438141515 497440045 298192947 598252920 829049944 893243278 741225353 805614081 886880379 996150616 571275546 684251928 569680368 926439954 463277190 562480210 316422509 498962831 404353979 708471467 850362274 996333223 413509794 652272062 728457988 803434615 271903509 935163744 630974808 634127222 499297079 995392551 703108350 965732697 134873157 259568787 685391470 704516550 804172058 860927662 911249147 978507365 980119030 990185932 703576014 730727912 824625733 958182744 926555363 951412990 944474229 951948614 341539688 989937709 335922486 537487565 106360009 354534852 352877275 428499893 79926249 686438419 51686548 164615134 308145359 580028328 329263257 964059855 994548945 999860790 324956191 562430896 574566682 706849642 573350954 799977041 599646133 966159404 420321178 641345696 628046800 797540533 864411773 963471843 326117050 548446849 436326598 624556639 739238973 965685069 958946729 975494538 610984961 872225838 41769893 671224834 653585838 659098317 478074171 866984088 553922025 681530353 673575222 824909709 270560966 630769212 494080062 987236030 113396573 299841260 767137749 895264189 741223849 939005434 464401621 538190410 224934798 886234674 552227060 918354705 603847796 726486760 182668186 616223935 964277153 984197203 440786987 980589475 902135362 933135976 93781566 262964290 821442787 835931059 799896869 944118645 394419198 673037675 989153505 997401453 199113612 374751312 974435740 981482932 705717656 989402165 430398580 507783045 325513261 984834933 269258540 329948996 890233622 946218955 33646243 457298724 12022426 463354556 99801578 449640608 376389625 925998658 132398984 638002991 232179584 396627870 459877988 597452441 923181566 962159275 586034249 859321137 376131572 975315133 545397721 918700597 325834910 560463792 986335517 997000565 693879178 798624704 562581516 738236680 985258328 998106888 890522858 892994872 452387156 943279037 241620087 673516526 84878086 565863264 650923809 795281067 221377378 637449103 384679474 887480842 533378917 805857649 655483079 825918115 755949676 946726652 854690615 967850298 290261305 449903026 766218638 884264232 676084491 791015370 777519109 856614921 254183885 524085243 502121640 979444184 25360652 385120508 887667317 918923811 992033820 999292536 353499962 369101765 473575373 798636179 963329749 966007361 130706636 854977761 668111067 954835070 264616670 869571677 798205722 870739095 22731279 819657329 697239734 814367819 811972394 954882251 988537430 994382241 747163512 998157003 58387546 607510301 510384826 804193721 144513705 581567676 934380677 939137249 542915505 584763253 972227626 996927742 289647933 869095470 123775180 226914703 503011817 821171641 546394111 613621715 564686771 815918203 998291188 998375365 829549169 979675973 321305999 750651299 1386459 817099768 419727319 670149960 897857189 995509352 163793954 326506085 161915360 225628258 559280524 721132206 481023750 530740586 671199135 732232449 365439763 649759904 680380808 805610148 932211794 981717003 844585219 953019407 85655382 900498613 889682622 984182832 791375361 943789797 276270457 854838953 593841894 757029765 118099974 677371138 901950595 995029014 824807308 829706814 277945500 518248131 553838238 720319977 352016378 576509262 87207133 492021385 221828782 792154280 778987474 912297276 90686541 503933700 991251852 996618454 582286334 831444435 136583427 952319755 822539993 963370141 848360922 864154087 183370443 430543767 609757154 860865466 645494632 794098078 607295039 843862625 542846876 798772445 291060267 676940987 800269598 915323925 563649167 833181537 703487725 862726200 345353785 722677730 674963971 938404583 72270050 559862845 844716495 960331345 954706458 963495637 164678749 423052332 815551161 863120777 96423259 207992810 991832699 994423634 121685466 686577558 701428068 732111379 13258648 466788723 626348572 863738458 612072928 695135757 977258213 994601933 631192069 865392593 311069119 719604161 501195071 837535533 578077835 934179763 759605350 953550903 691712094 988786678 750836410 751798757 834968888 969873411 930741996 983755424 375221678 542337983 234911172 624803352 438052579 660975708 920921805 937256127 153193883 857140388 926607195 967056146 10844034 871126804 638165254 818444594 252547717 961542387 101348985 977090175 672941297 695952857 795933090 863569629 487366402 896111663 798537093 861957519 696200079 785312840 28300348 477379803 134837196 815899392 256034111 355451832 772912593 827151581 909321030 934252616 205385520 369544216 387789979 793046315 368863929 773431463 947857869 963133242 57578744 738921846 536099782 788220019 368273071 680622316 399524096 872406857 64242477 949798212 834463575 995596919 148695016 484574832 64093207 592563997 566994799 819460166 911022406 922648354 896137511 991915252 890476876 959163341 481550852 519119074 20427166 913398103 825086870 913587370 252485209 953749325 854787816 891756651 638819764 763632027 220711068 818398941 332479372 842517512 879046535 959600316 293566441 533531175 675176478 808876749 38652131 474188130 846557901 931484246 463175585 860761424 164781256 940187400 186596619 530217506 942603240 972175649 402742333 526083470 54562762 868092447 868158669 983403053 822565444 869736417 243000621 696831660 641435026 988594414 512465823 964031674 94295459 724933401 117972261 796644527 870861442 974785236 42993637 154255624 394723070 410949599 647502774 988143610 305624753 349806257 247006210 496868724 800097155 974984567 638846925 938898961 185673156 287581113 523682000 762768460 313894086 583047124 971978052 995088987 992233052 998113578 22231257 264334085 720139469 907639627 986869966 987608809 751996852 926002171 814030203 971115383 323943710 438726154 169131774 673795156 949237345 956941535 584678584 762431513 260198777 494452909 303457112 509586449 399207092 648353434 211076072 673020804 213158174 513168848 869437075 938605466 212355091 573183081 649907808 980999117 654690666 750903252 413549598 853716077 160151523 598174510 582564108 659989909 648226354 849251817 634971406 825603660 833763569 923630949 495922296 807666294 605460574 917769882 413260597 932264506 55173244 320360657 369572883 668485168 952704208 986307239 222261219 923740655 624621631 881328095 771798665 875164809 66651152 493449370 228236746 857963290 136617582 758194755 483337744 763091470 384653370 637373411 934922116 992681324 965562368 982727220 164610642 199051174 366427706 939818140 736523565 757130699 651241759 788412347 241955405 575481262 275708004 675286080 400065460 923142354 389740427 436880477 238525888 844119330 672683496 839683721 530110868 743320662 766885571 804472948 563512177 832922741 480440396 904699200 224260417 687756350 589659220 647048679 633039513 949078280 640551158 892581591 151902979 391387384 549876904 964869258 631413228 981218899 89473642 939266896 267548773 988900770 465975731 522766675 269255995 474343907 977016775 996294272 690314759 904949661 59881646 100067649 517164988 837310375 35590029 160968664 825327206 987616982 417856130 547368418 69111830 301786039 583473536 902135060 375215658 869523394 474297130 739845791 327010024 571681675 325181173 659033098 31255652 777526724 663470494 850520223 505826603 555439428 723669638 976899057 488607691 944406889 942517359 969421883 582610471 612275429 392072387 743814490 402024937 464178322 123659055 918162186 283732347 483793478 772997722 896091034 270418979 670228637 397223432 670717183 582576921 654822911 743639325 860848178 307181502 484076625 229628087 761395604 359289529 818821225 346086346 611924513 445074431 889231279 992676827 993370961 433795971 525461929 551663744 843413035 804590752 965893396 45988426 335921353 110645028 466525387 213671132 238916812 681137774 958630061 22468220 494367921 275067272 321100196 66277458 788473259 701572518 813104685 243756432 627477011 429604770 545202978 817324355 895124995 265972289 735020374 913510306 944619568 20647122 931500090 173397142 183234851 253825161 854833230 206094452 540421719 305968512 422684830 454450910 933060326 998925041 999048478 9632069 560822956 505511151 588175761 732345300 735444583 491048311 857706985 250882048 561611641 458440190 877348388 981932736 996409235 95681765 666838098 230914719 252288715 899819058 954747494 855014496 925941810 209499522 467178922 924631223 955980776 784080129 914284430 158378709 898995839 612770143 900025126 32766513 994323876 974645273 979824130 620058903 827202363 277615523 478148415 584202688 913515955 603086723 985432931 345850052 545840914 753990274 960986958 708665508 916910273 203085599 355283479 374941917 998795241 896611210 949539040 543991091 671117632 931481712 990836189 632622169 712328487 380268160 592822121 397220021 664692331 374398735 459089113 930150155 979631648 97409857 967562091 757292615 906425082 324147498 947171528 97915916 651999654 899504615 936331205 567422528 753798203 661110550 797128081 342626560 452924144 87872405 940766540 940294489 994703990 287451139 313734325 399942746 886601399 260251531 995597244 161618281 598731903 905505385 949068579 334026568 434478665 607355365 925221660 347724753 602184045 409522081 920331801 915754422 955006772 919945851 984658390 595717732 805060920 455886253 930868020 963780514 985991608 103678512 816185516 625834042 751363868 176556773 327645991 547264008 625982723 554033555 597994578 954415347 963503363 893388003 923010021 323113458 913201493 217483638 358393934 938167477 946432928 877699346 922756803 427855238 557570372 15132051 847718909 318094251 899891338 823622661 875699291 603129669 735890150 665931134 815848864 157118826 685614678 968207211 989089836 583570634 824456018 117453739 532396212 938091240 963934057 396185136 859086032 759531989 775732481 163129534 913030386 695599094 703067929 366749036 543652421 129448922 432277190 693719456 771397433 381263234 857812606 256229922 424342953 30736312 243836253 403065679 675564266 344691109 909143117 54981810 199845286 41644264 504816627 374794978 861836992 543346476 910012522 826997592 863913667 123843152 431828343 967199648 977298282 547689621 705561141 247645225 635327402 496167626 910653650 420250667 706395617 498955978 795420723 526944872 541107879 904673892 950192659 95181090 993601075 357279628 943320879 69310720 401956376 379192660 494384023 305060348 396793225 417197869 554009994 637154849 709220916 315601064 421990489 91627748 973291445 743443725 880673306 446216045 566560314 896195372 929418541 6452728 650806455 372104876 895247284 495839468 566540992 693333217 927068578 442580601 539583527 627969475 799136401 779903398 828686015 180917455 513751583 185332844 201237226 191027735 214511264 800448135 938161401 435606501 957678682 465669193 594784095 958731510 959968471 194753987 635783338 703609054 907962204 493312701 739617285 109541988 280626108 261750005 399634409 146569093 844809411 316585490 942120822 3133349 87061114 58369794 824497762 901088459 917741815 298690269 505688601 648247684 915462412 711461519 819846003 45247418 637481570 632601786 698059319 684323218 943380496 853327787 995532322 635158895 834782559 766905422 876627623 474311097 859825012 377653999 526696492 550171234 620218569 137835546 374052069 35210225 580788255 553991702 899151884 293778652 980599732 806011327 978323225 930469398 996515899 958202718 978860695 624839475 669740418 461358124 541929798 284965290 847217795 862033217 911980404 497316337 941115510 915431320 933258120 474692895 698993538 546157230 781622915 297914176 642490196 695234532 916068103 478307490 796355927 460332602 965627289 780415775 924063402 458811663 856515125 760244277 790396081 312753316 779851534 400250356 490269863 929913337 993668106 266108075 419292867 966891101 974026696 851430435 860339772 204138914 647544635 74369317 900470816 761062035 820650061 732320919 958993602 572428341 599514752 755116756 788326666 924036768 989309139 734272373 849272397 71057981 335070622 213562588 773992545 914075576 920575036 890846542 936501075 45355019 213380092 340646605 860288894 971287962 975887910 404263297 492842042 846101301 900068884 172798064 987170770 288410281 890549194 193673377 682846229 664339136 833392084 247826001 319402759 834474979 909610725 671849033 754785397 859456966 991767731 472305134 792574965 375671726 825655079 707202778 830923951 564375628 872342177 273574022 756353609 484424452 783789822 482370691 882649730 604212889 716550411 685966287 702330200 248245850 626786799 517421774 685986532 627096871 913017187 680093392 852461950 755408892 952072567 406831683 640745109 474043643 670461898 388488371 843774999 503484948 913944824 746356315 797290624 754272370 912902166 883249586 971724996 975859967 979714023 833285906 892547440 245667772 741076179 270141369 992950670 169239342 251208561 685393388 796327680 709352912 975197114 85994875 721317331 17593953 672579400 987852614 988980525 805668787 972648018 118550070 124067929 527091838 717595569 188334877 796339117 774040724 816021338 678806607 759439621 922077426 973727407 304584827 673154536 917843107 945455286 157312370 242160074 529086624 804299615 69843778 258874115 829110922 970564917 421913760 940560639 794825443 944369771 422339862 815096184 305491759 822538414 191512153 998914256 760687812 938840308 388544890 886063985 235083725 767736968 927767240 943523799 44071256 139069780 139610618 332563662 75541668 361297975 865713695 993387646 396939223 619825818 420480193 457450441 212629259 405955632 224044992 799138542 799708894 888747487 288459415 748867541 637477755 959784748 900760532 943027957 413398647 664099320 33198517 407855620 996018521 999350584 347056328 495846335 410681645 901756225 30219304 507632329 391235948 742269562 264722343 675295184 703446787 915755549 723581772 816098771 364118857 793450452 213126006 961572890 905846088 953781571 691163962 867339085 979619833 999111533 101331343 134726934 539574641 736281721 955842304 969667178 105284607 530894264 920825925 976433190 46819700 333862634 148390876 833317979 979940395 996259895 498621073 908280401 301752910 430339087 447743796 689378600 158604683 234776515 189717258 722267575 240045848 339005047 203098081 533018767 621603525 907161780 485166129 578744522 17952153 413802398 149607807 638603888 135030020 936358605 18133198 332246830 414683988 469152521 532087135 988970748 589486550 718604853 572663347 629387000 483501692 511542166 543247359 612891271 976507414 983656898 176206140 416965068 388174535 941092126 978605287 993181378 916067977 969780132 444773810 492947205 388031161 619328235 267994767 659121596 147951697 759797503 237409467 441225187 579338272 671403423 391918952 960962317 250264443 721460271 854199287 963384172 964311367 993944841 707064723 826681357 392587610 932886604 704929666 824546457 976501103 988753115 387697848 957514281 795978708 981274717 764157758 821845861 664493826 951508616 775193141 983191076 298838159 954031889 612988283 818796933 278001235 949541439 80634522 591176879 845654527 897254632 814006429 978781981 65394316 501475089 635961420 970423998 274832385 346658835 334648484 770463249 660056234 768252403 756898494 782444868 450164779 679829311 780890779 917489453 452750494 708097943 907508338 947105521 754101642 976173468 494755757 899534188 74231654 112676402 199519465 674797801 246914265 303832587 105164126 449986274 860126602 869874630 446528420 922735658 162004652 729571434 390018945 941090722 792324643 884684616 24808752 498424005 468599092 535689253 177712957 263794095 866422520 972824965 150782626 351722355 509124628 962592709 947972821 964180994 36370711 883273510 507614802 806757543 840197134 929169446 804471134 933876893 851706128 903139240 474911915 739786243 260667644 342156809 991505060 992817951 580181168 754317488 491030633 696166199 10084103 947739912 202904809 346849982 837913551 981020294 220646673 965300988 705045841 972716956 658603327 687244791 460259698 612517306 803738850 833841486 361279201 639894719 447456524 700498795 535540450 592275017 129874816 738789020 325994360 987234658 846464123 894511174 890459961 935939027 916564600 931084344 134023932 273439598 533528336 941453877 613580542 879530786 9828678 952427307 896807356 912216444 709239782 746938318 420227457 655763048 592340960 923703226 78914362 474074987 805458622 930493498 927734665 930097537 518681690 781549785 907829182 918724646 953938394 977636225 413111988 729732483 761959024 974437791 710794595 789264446 551035034 764169375 691407387 734046359 118321398 624810502 692058448 958597894 561277314 960395896 35684267 169819288 890766018 924859311 521306348 887466636 85641614 869238891 817055572 930540950 443754044 753487361 391109053 651445744 316889303 477538507 972077804 998587654 191805602 737800785 665349700 832659326 695187152 970108685 715065630 753205358 28796081 135643960 768673965 900723763 727444952 940329213 165123207 320600264 732615113 840159637 494850281 787855801 745208128 925572562 497750859 733134733 534286655 734056191 342900922 593967503 492136410 959531502 599921685 773930191 121226550 471726788 469613052 921979462 320232746 427709638 753764219 884792762 44410297 768588924 99648630 418925523 173993202 371555530 591803728 913334987 274285456 579521404 963409886 971279456 768155107 817144020 866247620 924266339 617557417 989640457 702984490 924823551 218235597 369965404 452515709 569822620 410373812 459039474 757382312 921344639 378060803 841052075 169550576 570441936 639705079 696628258 715792232 905384637 213442578 687631581 231917757 797771115 507825837 719280867 784018302 914060905 486074751 681496444 788868103 796696098 729540952 873046916 426033746 565275789 761807698 948700215 648905132 856344413 195250136 901615201 694623248 909654289 283188316 836602891 214571816 866003135 364401669 501696987 71284493 649912103 102606712 805045040 596747207 833593801 324487798 899289985 900364600 985764736 445736478 531593146 124430006 453952081 238108952 653124419 300694704 641028173 749851110 759980670 435559573 559594104 382179749 471922158 832485097 996320080 275586011 827877108 450908772 594826639 199262130 747955099 991465916 998257401 349515850 379544138 545584132 888664682 821754430 890189971 396139954 644413924 941192372 979145162 120298868 774281734 547380267 762293745 359987661 750093621 96292248 466224452 818982613 962954804 366173999 774741351 260128436 342712169 632160838 650881262 421356014 715471959 284701697 329239390 528261669 547964705 778460202 823239130 947459377 973364312 858102267 964053685 214185637 842646302 717952022 803368112 17210416 529660527 984107439 998753620 131302504 837263521 831970365 877990936 982451116 997503051 84449353 924210237 83463725 729527857 325201407 612102866 967858501 996952203 375101687 502766034 420263090 571725901 780568953 949785717 72286814 502696508 495457656 897523643 998136886 999501154 777546548 780991316 651343649 901238264 198234640 471875258 269085402 351724961 703840332 919794540 247448433 518410381 889449715 937624154 754199763 850300072 415477338 507068621 918102317 925510215 611743608 905556881 174172658 770972756 30342284 327482055 627613158 925505980 308511063 347899266 132293588 226948936 839569285 874093230 844086962 901606823 112681082 720336378 174068368 736698855 411466258 519282402 733550139 767039081 306334135 361172668 414650903 638306434 665714115 902915051 559000649 812345598 839152954 929733972 713705295 882868667 779938412 940900142 155397899 917683148 237586424 325529952 983908242 991521499 367005339 988074308 586439799 590512512 945873910 957435278 918160997 923210230 753737698 873697596 702782267 869992354 319441276 750486990 40221727 395290207 969545201 989890560 41013973 212161318 724655241 819025076 368208671 749687614 250208286 687291561 632697475 645803067 887640409 953751352 314627237 553345749 116130711 621458894 693097721 934378158 871117247 901454721 323626566 560785837 867174365 950371979 984271127 998771256 262391535 655458068 920858080 952306852 122530183 176797375 439193078 987413742 608604779 883973519 685218696 938654672 137022007 396010038 578402096 701098939 910055542 966938130 20491384 410636506 17267155 112566802 160861161 773307585 985030283 993976482 460462867 650784458 124728306 125655584 548995110 867692667 900019472 920345370 477473821 612228768 266806511 459606775 370386566 904599133 594208752 879710437 756948766 998433286 533809454 995227642 873915675 886517808 35386633 865016864 257634818 571316218 552879086 990849913 873001453 945740487 265746167 546042592 414777203 869757165 768065590 924978188 873372346 892639727 489623082 873041639 221612920 917027051 556363858 690997237 262234678 613209634 680903175 941706841 290982975 889289243 404556751 789648653 807173437 957781812 88772491 881445623 516296636 543065691 734052468 793304102 512267718 884258494 906635264 963522855 392525844 945845328 867730505 888088111 237806259 756776064 266951212 396492665 172015099 610847485 374940222 954967887 23613152 371005247 746634884 923018370 489633228 491322705 424220626 641345225 821753236 935452840 698351213 772084777 620435102 956285581 551690550 598208794 265271240 426277723 701362155 860927285 392735402 407422916 782895374 866948438 217918112 356099037 324768097 357608453 794210394 972570834 674137541 676850075 480921428 880056615 861770843 862695609 999042418 999793817 638298269 991344930 484093701 805116040 916516052 946507127 345583153 741371495 208230629 741674343 165667615 995035061 577526052 855971944 62311302 111107418 487985650 866288470 330243210 866210829 378082758 565115395 164186763 262086754 856088193 968539059 925430688 935444820 699364492 710806523 230997138 634209495 271605931 983210072 18832233 340147392 335954490 806995756 857520614 995086203 664549709 811004821 773457347 846663652 683576814 895451827 862920290 940739216 247829819 347170669 210638346 471034183 991935277 997768389 597921480 991015749 190557127 250896142 657839147 786834625 728684038 877808224 855967941 914995577 411432169 889581280 494206136 952895959 13040369 821998728 759369498 981520120 573800390 994570938 153483714 223846809 424445039 908123735 328295005 518144482 247191014 334008924 550448092 819572954 131494713 681888259 907460541 947855821 271046961 440789004 394969963 627048252 896157181 918662784 203894186 901790895 288416241 368353305 845583745 877103575 597603701 940582071 837943975 841247155 439446488 910539039 871179307 927313689 705117319 939334404 730660749 871547698 292279921 514207839 51704983 183004940 225509718 527313118 870085068 997950464 362547460 981620206 924900040 951913389 937657129 990998140 119563190 393248752 538619353 645511487 920116789 950012506 82957530 165935108 973231604 997966918 168021630 926265183 715029230 992521386 35574993 285720680 673544266 974643559 618689233 694917845 470547204 593833894 484069774 872819318 526571190 719289393 10648084 843468352 761763293 860225422 654220059 707174046 249920245 441686093 501439820 898123147 817985031 936647179 588298965 914249245 573793665 990907693 207989243 369218812 370992917 794982641 299582278 479351018 880768287 947573802 760395761 839602212 486161517 924047364 868998589 907056426 851841118 940705738 359119944 851329200 318093526 420982555 734327236 827535909 300850334 409789748 461380458 917684371 569108765 911044354 618348290 755891746 383582760 742897707 497528668 565451535 981685027 994009075 160782270 355389565 417304675 719445381 482571162 929272748 31713460 376321914 578308381 805764192 479719905 557145412 604989034 930073721 854495644 870696655 573354219 882454660 875788620 972159210 188252798 306568307 491728315 533376031 168285659 551437745 394846154 782774174 705055172 982477174 140212350 821635448 661873247 819994755 599933059 915854793 418765916 439674955 877958907 938923733 408242608 680264024 947098993 953208675 423644731 765912051 265610221 796005729 418839001 555217466 552766993 902038142 17291946 533027811 708233190 944916154 499362115 981617756 749734645 987704486 54648898 422645632 882832361 939180144 250222185 793823714 425420365 904283099 208806716 634930734 246029828 260619102 863079363 903765313 578507488 702250051 898016017 993801145 377434374 904359839 400448460 855268411 177630952 475130314 416528435 782803334 997690248 999545321 686351426 827289248 399055176 496095381 694674384 923492572 556545883 590783166 256087791 525642148 290450803 679137683 18498723 834423427 160991349 697709207 150777643 584904433 755689898 934973821 141018429 811573328 711213155 877359530 59450813 743656605 429037814 740390687 668036377 713603929 331056588 396547013 50400065 721969783 792958282 936768880 378298229 596868778 955321859 992209898 757463282 832835954 48051781 960696603 852235939 932400701 405448912 708138312 211472329 393859146 106913127 416779656 844710221 888415207 418073149 813330438 4884401 202906480 414434740 535435529 890550455 912045616 559806192 583060663 421348614 979955936 439497732 781884061 14486107 646819082 108565581 154465142 630574612 813749814 183852605 402563194 54663601 625020930 111517468 904725520 209547001 443636694 688925461 754163861 771990685 804005165 869178451 872328342 759946980 848418177 498021095 630883383 264559983 330447699 880800481 990941497 689711845 991938722 34863252 771576568 759897284 783233902 377116627 911426496 29180012 935873879 116772409 561519058 445042438 740431920 880665367 934516300 779211007 836551393 97407266 192460209 526269770 528839881 60342270 473173994 447519754 730399855 662612398 953722532 70130325 598082898 332333242 468484124 59258224 654569030 750323638 944546636 516920936 747739750 665370237 683508059 463486449 788226443 585444425 615729428 305047246 495706594 901210619 959205865 611138077 617797178 923214002 925580056 178106881 617617869 911851455 923908372 836829075 924769038 113362175 466573624 782630445 858863995 317143794 847117038 593932593 892463469 388230399 395169790 357341285 956175841 329735864 580970811 524731771 739554583 33442027 478323969 53315199 115178800 45652217 148272344 742737074 930309432 189199583 950129428 523796603 938644195 188693133 895213840 313681121 389641570 859435715 880334119 603879819 844974738 622543928 980195614 915983486 939275140 116518936 720859841 351849451 897802250 64419311 349195989 353269087 720758130 890156970 893493731 686223768 779267642 257238512 954185699 763671604 764047991 666986407 771093016 360308758 576576583 280846530 534201850 932083136 941148055 481644680 793454446 805880640 815517543 548690503 622633088 806074515 957549881 268988829 771598206 739433205 974829833 63976479 524485376 777779540 928568554 949008453 965589432 832011376 957299648 930053363 942041418 65926972 402753303 277984277 751232020 854583176 978311800 505188944 608256121 688026030 932052791 30421838 910848349 273450855 564537758 903534490 937394893 892899188 898528806 875051756 875858189 413772560 530671916 277989352 849880071 544516847 945495193 764828229 913586441 474419203 805768856 405562277 576621609 183100222 695463367 533379612 615161727 838305631 853169816 882416554 918217225 404783186 684087046 146980655 429033706 401200322 510574404 435782005 688453691 358763121 871014911 917545732 950480136 567539649 690907597 139373253 306201811 882494634 931672615 943934463 956504984 256308495 274055399 414082743 719563917 479028076 915444115 994724824 995086601 141992374 386977653 890117534 916003630 189104885 781177334 717668463 911278580 540862341 823046004 93084706 637481228 359783038 853553364 612380088 925677032 675706561 695070924 859834626 992817773 952184559 955846758 885233295 894041949 214721679 346293907 864221003 980459034 618965282 717934777 54518393 913611221 381285825 431567497 773333122 870214552 753134357 963561280 85571519 733667033 770241532 937499483 343615540 755803832 66610888 160915918 955053682 985897774 90192251 721725351 851934066 932216457 774544096 864947492 297045400 526420058 56273874 188124329 751295887 843142967 943810120 986067979 87906272 564858125 412460989 471450442 218026503 679489338 112037797 826549882 214895332 781740773 568167162 787929621 435995946 607733364 424329043 741626080 839840800 988483624 489957851 593802271 448080408 942457395 781797400 873440041 747474115 925636088 469973783 881076880 972774179 973213202 307007301 838996458 82942120 465357418 63674946 999318296 972031532 988481424 404469673 909645810 20905315 392139725 123500133 214862881 997886777 998093139 371760677 998864151 157425213 370228677 173690874 796850775 545050062 960392970 713289977 726088160 18588302 366793720 352550519 628659437 252364986 594413827 777483056 973751191 979542880 995925487 28369095 851925961 395156040 405936489 366634501 528481316 172428013 693069262 122990648 344973337 689120961 889767654 463402292 931669402 90206615 678481295 911928944 944441493 997408647 999648863 185286374 672820726 298244034 819679464 651121075 656245314 417340640 622346666 264582420 532376890 675897586 776661697 735454111 803612856 681348762 962182675 313973010 484401795 992765119 995405225 656367535 826211956 640909284 913408706 424167955 517700655 375819036 765792582 822350474 835384752 536970914 724712151 365243946 937737158 524281614 998336315 948271896 966358865 781011395 798123604 388720582 984524049 242599603 396923773 812014270 906016663 491686232 566253100 925678350 986144454 60272694 143141784 384905641 920882069 338750404 483090459 560277076 890015912 972119230 991364676 547193578 836899234 386264776 968190506 767754247 846136971 739996518 858143056 834415659 859667113 524437011 527298699 381783764 534006844 191646013 287961911 716762296 919713430 172247385 384495357 200500617 275386540 332923196 674933076 778630604 895485460 894550264 923887079 411375200 570185781 825029916 894131816 325107096 727670376 872758177 875790100 723947252 983085208 918614378 997723083 873065718 988118672 663922637 878416440 207441300 717827161 672512106 760037367 880495557 954920278 683922714 716603374 723558789 764318742 152385678 405170167 535386501 609474805 685708844 863184552 885677376 956535056 279463431 308502041 956446391 978747925 251975402 802145388 904002847 921728971 20265265 62663270 415543115 780103914 30060795 87495076 597993041 973989288 135373986 570217359 448837526 479713434 131563436 538774464 652483278 755643597 222539450 798816310 530553671 787634188 974609755 992354489 705151771 804286350 829019529 880169729 733050850 866883907 875214033 938233099 51108125 130793098 593613261 885775700 734589306 762846613 92500624 853388269 913253807 926652988 84337289 117961933 54586424 828176974 491196955 779238884 146943329 240519373 316347958 610843636 192460074 593887825 431579180 762017173 192465070 941280983 974773971 985527671 500544802 663462321 896704349 915308065 948742877 962413574 462093207 898654167 41203056 417454224 700456080 968718219 642285992 976911683 484804283 944531239 573317145 917345995 815097756 985633926 197813101 896399815 85499331 97821662 44927661 144319146 1162744 666975227 712151308 735627359 783192171 883249115 366565734 534659920 182137546 526317003 524586643 978964791 337352233 788341045 293159288 614259003 885708289 934147216 879209514 965563118 858528577 878576599 839826078 915034372 928327774 992467153 12628252 371703963 880820153 977449281 520505390 682078279 455564036 944541828 437066028 947167649 304185869 329675359 712198690 831844937 637888652 657630343 263762582 875298799 740219126 916281978 656283997 958464058 185526347 401159538 775032373 822919079 828525103 849495007 857267715 945313117 137316167 274383016 689584788 823925108 795436079 880232169 166096186 997092070 902281628 928132834 666656946 907513226 197187733 920464178 54241525 765435434 572374119 720579383 959676671 990812501 250795617 727881443 849733154 895570365 739136981 747128201 508570702 760825060 722139232 994099487 619240563 879032556 838303332 869156817 306976003 619954618 938424474 971000611 758866051 951825480 873550623 998724543 461956352 860436264 909974974 998563785 315900081 386534104 381223693 903794091 74738665 599507441 903994088 946325965 629742689 862275445 743125433 884339978 487040760 628178740 422839500 987297332 270676238 784562473 266093955 734773704 769057001 855894857 506117135 938844281 270538677 364488887 794133099 968924318 865658303 916726980 990613700 992288632 759376750 875891176 729259253 964101009 247098504 386774293 81822520 491619124 36699552 504557036 1172638 315958990 828331172 999084827 495683364 634898486 298711361 579917047 181845206 835862916 529094393 713447937 544618258 724610780 541617974 805928297 239736415 814948970 590535204 926134262 507290559 540053022 334385566 866565241 449364630 466826142 604422723 651545784 548564688 762708131 957364869 986113073 928664124 972375726 145337687 260032629 19601014 550288780 613916360 909381069 47340294 579683442 260596486 412330637 550181442 794475291 319345105 918485213 833131062 994261356 227084620 841372166 119576588 264297607 657986888 798781687 34773283 671969129 821520340 878445056 298187823 530979156 678448240 949057150 188561776 422071959 89119454 427714614 393345972 892668362 367738229 739530800 814899467 816292998 422867254 704706147 615251911 664025004 516202533 566324020 859704872 886792952 74193666 417186480 515462582 981675566 584518813 984554774 207010379 809351924 32209724 904044459 373816912 423488526 425495687 743663840 144776140 378450023 826134517 993481247 788781550 844219739 741501040 759059154 198746125 443284995 618626895 950564655 721617282 818339580 83863620 327674225 591587247 731970930 42034208 109350201 92266208 696108430 533798599 694799134 540126666 677890817 813628969 854904210 505871512 931294997 748237713 857330328 662813914 934918790 21796058 695446581 340309804 405835601 132469842 274260513 559843093 875551369 881267699 988637671 539311586 909131346 2254299 940158891 209414552 722995309 233059071 810037382 646399595 706677224 194426684 642211869 682184802 827834898 792240759 835548422 947576448 998249945 976450280 987778920 39677220 652135658 640386669 849270360 351773768 585606600 708425723 852989050 916454694 958413788 895753734 899326768 930892596 963141431 754976361 914152848 615253772 928841794 259179586 413549830 805154248 859283186 699791980 944848841 232256234 544522747 905659226 910134052 520145480 717242609 928201921 929914347 140416373 280408568 61638382 603958684 402418816 785729580 210785268 807194999 851370506 939713340 442334756 512729802 83428490 285887762 916125947 938959079 659995862 983333221 109146717 736625600 234975452 805007293 344002428 601259758 456666115 529343142 704705906 990901107 712080344 953177118 619099335 715406712 595408163 611581120 138679026 754677085 806766761 820265208 581056862 873827300 226701509 231827715 98326265 805391432 550231970 878250985 710108161 978426338 48599944 657792916 206761373 885736952 562567786 808190492 221366069 558297188 347264501 477821289 635392427 951569743 577937391 935779824 70930176 225630707 429292620 839700689 662738651 888481128 264028673 678374344 764536011 816830278 197272370 405504920 661328891 950778452 7819139 484943675 462371772 761527104 448639732 598417569 455226218 727691214 81792951 584229166 390464113 433061763 476892190 599091179 438551798 583389826 494392575 597235473 124706388 297314298 150183941 838968879 281687817 409965094 985012703 994314579 78056466 921857440 24800809 805774474 273742378 893323384 136474043 437218685 551521173 637044814 680592471 885695487 479972740 988496564 641742878 748412096 126563303 914444976 34627286 842712581 315316032 617284519 639778760 792017474 918239941 966597526 667783984 930686253 333004163 408730910 872268623 927017642 214242312 975170485 602374150 898771024 65847458 89082310 121874779 356896599 461755420 802528556 894469547 987545485 488639567 736506453 936336664 995118700 464935559 947900719 265349077 482725085 306239400 541312718 403483627 861278139 548689567 816216042 470062304 607477868 262096566 863163921 171901994 891351537 165774022 692054118 438537852 563193531 905934700 976519677 544955335 994216849 160749905 562930157 517885062 859025282 373000151 524978148 342820030 443153026 222109984 299282122 278459870 393680725 97723328 630851242 768787344 912375517 760670593 887334732 507683970 877752577 306466845 791063760 420877294 895118031 679649939 926207686 80228798 135931154 868554352 965841981 397372488 603894376 771603999 959175070 572579116 799096350 670658141 745085013 727402043 957002345 596475199 934794420 182424603 234668628 168978767 335332826 339478626 527925399 340407367 712097302 441601742 499186763 495015718 982778807 54167527 351928753 540172270 616850087 205576801 678413868 64361478 438650150 125449522 442469780 172300232 716864884 8720577 62968516 893084612 914732633 487055720 653874392 327932077 839336893 165909107 483118540 589404618 993137921 496513217 715558004 729651322 743755994 250020335 891600821 741852960 973020454 42744606 963153944 876941833 971545136 552213053 576391387 996337425 996751884 146889406 348919554 337870391 909610345 710424899 883431148 151282894 334388066 161566840 368826460 455071840 573639544 991954949 999444939 777728609 958002528 432128453 481462202 950584196 964121352 226114277 548886788 58671679 472674256 191686541 430947846 655592990 822795876 367822367 413564650 41630036 843577355 113626666 731997539 276457678 935506207 124403482 440092665 705884948 917449201 742959708 908781173 946849980 985020690 10960000 468123927 878387100 974518820 102947277 433245834 655211731 746949747 497751773 862075253 762582942 925381078 997592895 999536298 59899131 215221943 209313507 809218862 989701471 993003382 489396548 529813839 588010556 823926009 280762381 589659197 451431313 681523079 173235939 919079466 131813030 822282768 45116486 201464492 280550741 979666161 457954389 943281822 905301593 976262186 565000176 906587350 181009780 309318561 262188300 910887226 928395197 985448918 547743023 652525705 535403584 643204240 641835481 772755310 331129422 378624389 103338064 423593079 35128646 527204555 879242529 962032255 495561463 587761718 868935220 918630866 72657752 110416205 487332526 522859311 684471487 833582613 733653388 845835846 81457907 506001944 59331381 124421676 510489067 986652322 819314114 979815460 755795139 840207665 816526301 929280788 252479901 941964999 44086783 581052080 984866666 997311555 221267275 710064774 324547545 552189458 606004752 626584607 256706010 733357418 832720311 855314410 616890838 866205230 145016055 825297300 872895399 944791193 695511464 802863727 330238939 385251839 740301763 966956360 579485095 711840118 75149182 316286966 449314350 906451245 136725709 231674230 858486606 977284180 430468701 500993910 635634695 929360236 865889821 899666834 919532019 964102930 446748125 618094680 809953095 964011173 834298132 883903742 502203166 904065137 968316030 972781538 191751471 826336799 390835375 805096939 141475598 995010265 231994980 743503926 638368631 881296851 145921975 407155789 782869124 917463900 172164187 496820774 402906388 701860688 335992999 586049703 122903485 605155439 98620052 201739406 914674017 936003188 544286618 849114636 470986610 925076269 383320145 822192895 924542663 973947541 94292010 836270238 917691754 949262480 113675260 343345450 65505088 658950914 794405769 830202962 431372164 884113093 229665885 247921370 968295618 973321486 799169090 964626269 932895530 988294936 9514921 231863889 78149841 586945868 505293436 756244544 526226489 813262475 683923825 751345180 249376801 981181161 301134009 539310552 122807859 958520621 616469696 921587222 728249451 947112216 96354283 386980024 93188278 239777818 456955103 740424515 147614574 891056336 386707876 987531373 137230624 331952424 557767722 764216983 631740307 788938886 987000259 998238276 334897070 803789643 546156537 568554859 220695804 726292495 324584193 593266217 544828770 692462692 751800416 773602580 460842412 766949581 460312407 679687481 226481029 678816663 243829346 933339568 130601245 502627660 406801522 873704645 914251117 971846412 666571904 971508969 436319770 526838130 490761884 947821804 399496437 814927566 726783625 964599037 442003609 565745075 313454953 804281417 621217485 685597470 896404638 902430820 386457055 749100315 392899383 433140452 515610855 890211899 373589090 845028110 582511355 747504218 251623793 758620912 899986252 997717886 306078544 623254042 326855524 857334065 621397294 921668607 368015952 393113729 131624521 914551790 752432313 775569079 530665828 563076761 535618366 605263454 998985356 999744912 780577661 872664573 436092436 810840700 833381276 833447545 858337858 981726375 312739485 535129305 334117300 716631277 211853946 892062722 927866508 930833517 29762314 831307176 39779170 424823992 668364930 867925521 786853857 952378928 791469453 953808821 24347262 471845013 305555451 497422056 368432819 795174188 669132363 761019638 357817821 760060857 125709923 732580061 356935439 750468770 160834218 972119759 834445381 990629419 348476532 713746169 529903003 843038759 800543289 889103738 813334129 943136441 889602276 939759756 845099556 980154220 223207031 384366096 757442294 996042267 945176602 951730395 991448222 995885630 31477142 639917302 667475682 991649018 776271896 866745203 372075622 537217417 65183329 753268709 658721168 798091560 419580353 633862167 483326462 680393687 386566892 520381488 474101064 931869229 158877205 384890671 876582638 899654413 94400681 333079382 901665906 915638254 696651217 777294912 215524025 798592329 950131819 953917480 548569342 781308594 795388869 821823173 825680796 955168357 324201685 962316547 456028703 961475542 363140817 699413117 992578577 996935221 710990403 952370599 307983540 351139372 400031269 905172486 481502721 753700104 46674685 507303078 937400537 966279858 412202135 476270942 193468613 832734417 527228141 626889646 563741120 785359218 203409447 913721239 628469069 872775607 886637222 907445283 163231799 416554399 156491333 308115208 893073007 900876275 390229455 739407437 122843996 724781655 822534090 825353142 466345740 784418985 658458609 677561398 13373419 360915010 278719117 493080689 93276043 143872836 909613494 958260273 906089401 935025684 593573058 887335155 47673414 864227176 931927038 968937334 890717978 980749849 148196692 202765722 68829495 953007299 384782826 612726057 633415996 648412963 592836801 828335535 889555009 908472967 244730791 353008463 203924964 839144482 642306242 766388650 383103500 891520653 610062533 800800272 522874417 590875038 657180221 951434841 220939025 558293994 410586691 763075849 324095966 890076970 919178584 977786784 844476293 938750705 796852276 969571966 66859843 119185415 594681961 972362431 923861908 980808448 754853864 762130778 934027058 987018037 546933652 620502854 570002525 994779741 968421508 991968064 34971808 763944314 986098461 991089918 44521731 926044184 61348006 213206788 882614222 888888404 191879179 376467102 496966003 926188431 34774335 92102002 504605778 707309688 555609391 681551931 606157168 666473680 919266145 992079833 187227438 822989236 356891858 945263141 480026513 969977585 253980487 433377627 846452363 975583834 151102267 760919670 970582914 997084430 359543474 614251588 740208355 979570655 780741134 977965765 919481543 983975316 37353505 432575296 902357082 936660367 206246681 695180760 508821793 924976476 101243373 737613207 996526165 997452366 905851285 944625505 446709160 753503089 169292829 270296703 52675757 411073005 526197044 888043504 937447559 955849146 490619038 982948793 693812716 799997741 858703522 870468014 100990811 800656328 656339085 870515523 168672702 931392187 247924424 312687268 185636795 224256072 324592924 445426915 871937383 988653644 936579336 981725611 153194003 787223363 710516447 735833112 970637269 970656002 293773294 552828381 807766637 832664351 884040786 962436626 666557757 808467932 696985752 805093960 698154824 951056187 618866380 839465989 71353109 837802947 431987474 754085778 117075388 865497349 90025000 300606315 549208781 746801761 144546574 211428767 753816342 846231580 784346603 977105851 247647040 597564019 724812270 916433039 288641446 296574830 269520941 826975172 824832864 863688416 359942902 479032366 148591335 468945406 498854279 919891209 910975000 987021344 381973099 701827662 82325161 845990433 799928074 914393767 583906997 738638363 588777339 627962680 571824438 831575470 446151707 905418236 349270074 602115038 780814692 868055232 304266427 512868698 711578554 735732943 114054798 498801265 19145815 51638151 876386832 938983043 541909272 683251062 56576836 375998193 952835726 968528052 289460920 879600085 595738704 708211265 537412934 663239524 604240917 886329223 545836506 549626323 656793776 894473698 450128265 474971317 756835356 839591308 387794338 970432122 34665155 529446661 980242249 993625950 25803654 671339818 370786361 389832590 371525421 539909802 261284958 768741143 609930317 681702873 976338122 980105323 890565786 938904612 817995855 845853619 811536560 853810249 941170389 953926700 610122457 998004146 948757385 975304287 465841620 561432340 283281567 489600835 610254581 855526939 262506435 998288736 740015096 982792567 176960970 203708761 354103404 810606746 993505794 999541650 56664562 80928961 525317271 700785146 526612971 979200239 921799245 968526928 468595318 979507124 182902474 576429764 168047701 547756220 161685077 569797378 194022493 306843155 310457362 491712696 524614819 818894584 79133313 176420810 699961315 801893292 603378839 932920696 998818929 999616438 148111278 877291295 859475403 999049440 975485145 985630702 699681943 946492071 592038597 842986978 161919222 331313380 512570103 933417302 164442431 403143490 551379351 741064983 288693962 638479738 152329962 412141451 785724211 987806461 27796115 822264656 410716116 739449121 665222635 866506903 607210721 655445099 166614950 270374576 839518764 900037889 564490089 642985302 599343493 770491894 630727585 689480731 928225686 942844626 187113798 643725343 829882293 853493701 478753696 480283273 401599589 615074643 483041881 583547165 874127358 988631047 643610561 709550483 65775249 663652723 386359848 418368774 770097089 954523819 645098475 761376065 749924897 804082614 465405 548344709 967439042 995006836 124128608 394869029 529214337 651532378 476069888 972580510 199662146 259523555 855785282 934540325 434230420 629492369 159603202 705996075 777979880 878461314 887006050 983079368 578479251 585408365 680569435 784871360 879768077 996682549 679568648 831056062 563048316 780788409 914238214 968804232 548463445 618777344 918816798 929422622 864331005 932938949 446307110 591181075 989659211 994597622 251938754 478791079 702735676 777598692 263024491 899702586 166271791 707320887 527495748 857846093 95169538 329087505 848784056 965600010 96903856 165084791 814813987 987482656 674117848 822290967 738414089 962812671 822892675 999539862 682228798 715730278 200588286 936028062 469204670 553999762 203766773 806526839 182955613 914719556 577212163 993541477 633154731 966735830 926520280 930452263 482134166 687427576 225078936 779441134 381999168 850105265 243707962 468601492 738087725 935576650 281740343 864756982 450431894 477182273 359334157 643069214 459988197 943989343 44575135 686600296 679458525 847103972 327764171 493726142 819477004 846980947 698306924 943973664 630821486 801415809 449849181 972306314 416628755 430057105 618354572 733535864 316576892 617362098 14268509 743791561 989601427 997716543 94235991 225677935 497698279 576180094 828381524 977662993 688343811 835389235 418531957 638114787 809745306 942057208 466888798 487143255 32378703 709149272 898864501 944181861 801459529 860729503 776642202 883338264 148389443 288449242 291629721 901801257 144403289 229280501 812229245 851321971 176307647 614420412 376683145 542497424 889727170 898601077 701696392 838931825 229264850 437169375 319760129 758833619 954427278 960825958 253781580 405537322 420962985 664672884 690027613 789945104 614334598 851590887 124800673 803245556 635542700 695185700 135063987 940625952 843054700 916897925 578132555 833392743 489167734 555435994 610200597 677879858 61956220 289025454 541034599 579323280 175250514 535890193 71097489 615307747 630481277 753199189 484037870 819753235 123531061 295298783 309469311 837974548 668170516 998895444 309026000 720162689 976895337 978777427 482254385 961749046 522244615 610600803 811798663 847114932 952658345 975027623 432045726 809291012 829203700 911883446 330537781 355200770 817629782 944985096 371853925 646606926 7123921 190396279 901540571 954082616 582637900 677244065 513518874 906326285 355234461 725983382 322085910 565675542 468580939 645923251 919092043 979693835 482660383 531713090 402883146 762121715 918065176 923950208 145371989 191410376 659312700 936585392 226318424 999293227 363614016 687737389 690155976 791289004 346410602 593930550 262156577 989393112 655364825 937083463 43511463 930067606 770335359 903828505 211098464 231354093 995616528 996938896 466103694 517259550 934997787 957077932 637050852 952027366 271882860 952763024 712693056 764876072 962000194 996993293 80038810 134271758 969669947 995659976 716168953 866074069 553054034 803357745 332220954 610535628 572793749 877019010 108505393 604186264 77620571 229326144 977300119 986209429 470168558 935024422 884657041 961196091 434645072 728061284 270703571 527717970 925185845 937707179 926892162 962003480 579450404 715535323 513294667 703004491 240678774 415870400 480983948 524366524 645966310 904272688 868678549 912170115 640283286 781902023 633396089 719883299 956331965 970245383 51829799 541022434 401024622 874138459 51649748 768481445 565705017 862680618 534119568 730815963 293924512 310643475 923628885 974810915 676514021 923052704 992152843 995331695 559132854 844534374 912273347 992277444 515933514 648528913 561357858 583359431 117933989 504659976 502819479 558860285 501129419 580966076 937754267 944612640 346752024 474911020 996879033 998336294 205011041 665523074 975675723 979676660 428453947 956349144 521912194 792140485 497859612 526125975 222659951 243752724 295728687 298439217 457455349 756454726 351676669 490659561 832713532 976422195 412616196 546793802 429149223 928586671 809630761 978106809 871211797 893618668 105635111 315150022 196011026 848964003 123917301 860397590 369350942 714353470 367636337 530446995 730535871 959600607 264599729 765271308 655258038 998149645 191017166 445342198 602233043 961883380 582766408 649122584 571578691 921414011 485847062 629294993 493631199 812401511 774561875 807996693 524724358 526803598 898129746 973759821 759858183 774032937 978355066 995254157 713775189 923617517 835691585 968514090 217479675 921068775 695049705 961002775 67985972 498110770 616016143 801111324 297904273 679774569 881896127 924542459 877833243 927488868 333626019 467730821 590637754 991937435 139059624 646643186 402519127 562014197 331888680 962026735 762900945 804344717 89401023 874033474 796779459 821996591 299477954 445807810 483627333 503107511 156768064 404927479 534882660 687444373 396574560 797155856 62064883 753021537 463619294 820902618 59175432 442986335 628413777 718785577 500824304 753045758 318258074 571582774 616424557 791277195 919472899 957901528 792844045 921714556 478462112 933447244 198757501 726259385 252033919 710613142 995468312 998049907 305523013 913397584 473505888 732913299 791093741 842927314 3114703 693774914 392088381 442707012 194377563 815189180 923934138 942778035 131176307 962774312 478672605 688447157 305522509 846019651 402907112 955969000 321261198 770025373 51487793 166555661 446201191 586848638 729005770 889286880 558213985 729840542 653006275 878195935 25954097 565202590 904954743 980777683 992650464 996865919 358799380 846781614 222444361 334828984 811818780 887864092 139595025 933567891 25248275 878897061 17744821 986387864 543992674 604002756 565684187 921052763 114251117 529942408 295597196 679660912 451023043 570033543 793138342 984987892 806355547 892856268 836986856 962335173 147956793 851465666 664142528 919948254 729888033 960465021 212188000 294230039 614445297 705812393 847510473 869335024 456948713 483727082 464578271 844377887 789529238 870017617 788319825 937492626 392206584 915627353 721442194 780219766 614973299 628876741 593821998 955889987 985151013 995953649 969417602 997332934 619035619 637691410 150064153 622450423 508695295 590476862 674464314 942081566 298818412 905971658 316554077 374681619 284067901 424094914 90428088 884306580 209397075 336969116 5461968 842974096 814219718 895892064 289798304 866786486 291500384 992334193 574867272 995212399 757178167 871826453 64980114 438108889 458594566 691333385 485926784 703489437 763721777 839730233 793651675 926461702 138468573 750090445 215015054 999075814 663260689 838441063 568577769 841293264 658290840 755112058 768857474 951343029 585950138 881350586 825747371 988777614 82618434 145932982 355838560 592508179 355466472 530798802 589091320 881043332 754095455 898945777 756827519 943775831 358536706 619395056 384947516 893923497 498800972 626073795 570133417 684435906 426658564 707314761 899445671 902232440 768239421 977984478 764930747 768935866 783708733 877456015 545473692 701706110 810938365 949133298 296068338 399048962 120908001 774269173 214180127 642873557 796497369 974495361 872195506 919364625 417594505 930580521 898507398 989289305 565260313 923537754 404782659 469630932 399631687 759060151 647671362 795849087 782868984 804530252 442847573 899859041 321382083 731907736 117200756 749688483 227022688 707036785 701349906 930817440 99026994 770154835 202449676 618135612 512822086 995633564 219383800 677513943 570184668 918598166 523382050 792947437 329063268 796260035 321900324 676899532 186391552 616845404 177895772 694424487 71936291 341018186 296633505 303051089 75121549 621774473 708411100 837947802 724012352 850213457 772461518 857542833 709697380 812578722 350675400 792420440 125031036 754306122 266739977 343911289 718723349 992558280 161470140 965216945 297989840 781299339 550413656 574532488 80934439 97870952 875766259 924149554 543379640 979826844 798612653 987900028 485121739 575903644 164393004 284483363 495246704 662182456 853960083 902438850 704103224 873526473 867874231 882292729 924819116 980860834 788289062 982445038 656626954 711903817 606167668 662831749 632330154 794002511 405354962 495455942 695641929 774949417 637554854 840265992 738241397 749933218 1731697 876311934 734358208 892720574 696615931 839658763 629583444 671537226 242079955 898523269 733357273 808826193 680764468 767660371 400207541 627380824 52045758 866439026 364171516 812127658 141868963 822413505 60624107 497613391 425013093 992062971 606096682 751973211 634834880 894135761 694173135 870878298 600595552 710782761 608674392 682985316 43328616 318880243 538349883 740448841 26234549 213259987 24549970 695386984 782903206 801496135 10820798 427462175 426658751 731808591 269974549 752963760 880061920 907265013 992128009 993530816 765728685 902867207 613050411 975818044 2723820 844910752 959435709 994155595 505517657 740541754 487828006 568466311 206055114 458532185 695342756 849581116 422046862 724999079 825107903 916223073 768719732 880623106 95538062 324286407 552610510 600798414 966562417 981770583 661087794 979091983 677543400 934322573 847909695 907307171 30624979 595440730 745697219 980001960 553170589 908390859 504459210 939535597 659456182 942750181 642029677 916109956 461926011 932854726 496970129 876636559 322654413 955615509 392587538 813646150 407413648 827856981 287492873 544030498 931225779 944866473 260873337 618823795 849964471 943465135 878211907 896606543 602259603 883134516 973027116 985435661 490468033 498718739 924234520 946409406 671025624 957208425 62598874 469223169 33783658 788590255 639721941 757283190 705304079 805952255 218794097 639457727 821186755 957944485 919042984 938101304 348749033 945730984 693308572 752513637 304515428 382665142 123310155 497489223 234962468 412486974 665514331 671374757 926330911 928534956 199020948 832981780 229010177 431150984 476226411 673335957 945963060 974502458 189070291 796536990 126237662 196094846 371743035 680126276 646200982 753568283 566868992 578028878 334281208 535717599 752849370 989990652 326358753 404616179 296185609 785224763 246730482 907538013 518528220 931500556 779943208 955076900 369066806 951439549 563112559 911405330 764477936 962023891 352516647 905910695 901113297 901209455 766085763 816217467 383250468 471265823 26372944 960881111 514074447 602709401 26464306 907966182 201609197 830416746 902515284 946281700 44700214 66555043 161330469 345228811 693619286 880543300 404043867 847828106 186369651 932622831 767339546 855479521 966670509 984295638 857729096 860508610 808505005 934620137 793420982 864585637 568118689 839350590 207278085 968110182 885340357 913116606 151397224 814615317 767796750 794418306 29305254 128617243 206885791 498855845 682931605 968257006 37526145 918981144 878049028 900732932 980084138 980459379 182027593 258317396 109396103 349755478 718256212 777376301 130779863 338740745 986587109 990804176 341518767 661625096 905496616 925429205 627772258 722336515 343709136 441108957 172921968 727570838 633626011 996178489 477616109 858382947 705446467 753297471 490159191 851151000 293434313 923276606 301852674 863844713 842360715 846423847 540278820 895494238 933272234 951906423 404698255 812570745 150194951 943511658 859322689 976211010 938029780 959156994 65914297 318120749 96063946 623931674 453971672 619536994 932012969 941775411 20473245 735334826 907155632 940608676 338617502 464871992 736109211 767129159 608452067 989477957 37975626 490733104 921074166 983899734 582023236 994762781 531901677 686980972 616862255 904793692 55194645 431444882 69862480 324274884 291021827 474996068 294349737 704389614 230892456 812412138 826203702 936677832 156452109 988120456 440175362 532853535 634540047 741510742 729786014 899408251 64606132 850022732 968648493 987272812 965019216 999932581 810544619 872062948 339682628 853813854 673152750 778485451 561894845 733529171 954425207 985549069 398660159 516795637 325864194 370019743 20035958 215646389 71219691 169074586 185054229 849397236 983077153 987620533 409674186 983791959 258750380 995885051 791586374 896169620 116771998 193322971 5634275 847518934 844149725 884052807 187099510 260357567 473838553 659016906 58613962 138225187 342269051 893930854 505782315 508210536 871599189 932321098 120802684 214221940 766996691 894706803 582609692 862891415 998517035 999990906 92999745 925079226 424349365 921972834 822853919 940255688 1755624 369347890 994638449 997870831 773260537 874818964 64513754 300597671 991437930 998580733 861993307 968268896 455761192 578358958 627701432 668020153 847076818 919664082 250813672 618386977 110209073 584255830 677342278 893839416 278096264 893771386 705533753 973421186 320817522 884961679 253428131 973316159 700197008 782364219 474152002 574104513 926866721 964882484 821135654 865692084 781858261 810693751 795959489 901340680 239720791 671484887 231549047 253746000 234792339 565637079 912685534 990360580 241272010 880527410 56397676 284058579 809042480 886876481 681866692 800387381 43465824 102182941 312875891 973795079 537436613 757588063 120768279 687367921 846479495 995047185 68671167 483648793 990709964 999834774 619181042 801861820 399503112 906901661 83344954 506739223 597098674 877907851 305276055 901775194 176701115 723677290 905844204 937052543 955014679 968452502 862383461 888113739 127707615 980270612 192863292 249636245 150014773 539495968 385000180 589185110 924296799 963164822 934921250 941086716 401947025 670009105 113298186 289545555 868759921 937542896 107703879 990411964 284580816 772715112 862634395 890072417 233930488 944548697 402377861 830014021 279091576 947460425 924358151 962991003 410601631 840886107 518819136 633317012 789555213 880507053 615339748 910217983 399538658 760872565 586898360 848980220 711207829 912717597 784844805 859659651 143386397 611823300 704889969 734488738 420010714 520057011 71615027 757601920 817235574 818414860 915710158 940015233 516699772 844020661 68339315 826264040 629697158 686868403 888675153 947514942 760752829 906228866 971510971 986464750 993677323 996745545 582607345 712380540 140938807 293172532 186950106 985373806 954103231 982566436 883581422 938966731 456305575 494216072 959067025 975647983 180996377 354399789 186617025 418560841 551988376 748300076 593518396 702565991 951954598 998611229 618689143 834003674 246379089 786064462 517773344 645783954 677257214 902234419 859068368 989094134 684232221 972109948 194605738 971349650 969567440 972884645 474965059 819178979 17317745 314733125 401001396 467988397 181388747 239340306 747966261 778403580 523800355 550765110 814815194 851464935 219739653 454124061 567290456 726326236 137574557 740478562 243400114 734366963 75191456 188078060 826789814 859196749 306254416 640993708 430567345 981385926 995922082 997812473 86328128 573896548 994541769 999940168 189964722 720540538 974257854 977283709 29013458 603356648 781413278 909826387 19490612 165686907 456400620 775467674 662463945 940592004 206223119 408198637 193269286 776693015 254828382 367861606 314152467 781013072 897624286 960329897 370051946 674555380 979494150 993692709 852023019 882348106 994769835 999925385 853323249 906185426 498420100 767280461 659150968 771379056 395852321 979650919 274309763 357824215 185850029 803747414 653158141 936243207 705508364 796649290 872007984 885464778 437310542 907994694 381309727 847312574 335774947 968461801 357310505 856769489 543846818 825129064 982322377 990960344 698443818 887316839 903003843 935079058 120222000 498068171 977665329 988002721 915516135 956261304 789535980 936264880 95080308 752582785 29855625 272972074 829598098 832457869 298503099 325770446 86628638 770915757 536388134 628886464 85738148 296594269 161037745 674282529 593290132 667229274 279008295 627921975 551046150 779684301 583304066 908367713 192502258 354562533 699095619 882823928 195577678 707523590 619793935 769648702 864478757 913636864 770048165 993048889 928209500 968432149 495085318 756758175 305992055 981420231 538186940 672502827 182943448 773771470 843594960 944661378 536428033 777834655 99157192 734528173 798486057 931930332 811907462 827313880 970915659 971992461 919384374 925598064 814435625 825308097 94207705 236422354 187661901 454001448 283886871 837639207 817876812 911107377 496715357 965810467 142811305 679369681 80154706 100426503 194305580 576350222 878185813 985608650 607755743 773302989 178522188 845652110 307603479 669803661 767650380 884502139 321105864 740002793 804471766 819618163 431066609 738543735 906139219 980394129 368295398 545226587 53346371 856878048 448142013 928824872 13158242 661556386 675254660 711590193 227544668 913777171 759470619 966107178 795987949 856743068 265552687 792750670 883125438 992427870 527829248 533608130 880857412 957453537 705666224 938942630 126908443 756174709 279616203 861380623 266766877 360519180 300612386 522187737 654755503 993635310 973159942 977050397 350249627 417965925 995825083 997118017 849958578 915335242 784180175 831810821 492254026 891451002 107753537 654628072 910028250 980610154 951259787 958555368 464959034 819966049 645867776 726280002 393317940 895688384 851321487 890258454 608689981 676247685 126387581 746308626 92551380 443085952 401245007 775945444 81143 126416375 726705472 885703784 961673931 997703564 17527251 648952815 807972309 897083504 144967203 683645071 905020945 955686164 306682127 596797481 78033825 847784182 370823053 592487273 470043812 627187166 723678954 863102945 893197532 990533459 935348788 979849664 321071530 462438796 568484878 904127100 548348132 591711381 751558985 909088382 616958828 916413404 14278528 957183631 19201970 674341461 159391790 686107866 632663216 643219642 816597961 820697553 113363606 988228273 423783192 942122876 211675173 951453974 303226914 694566424 338286654 514683975 318945568 785756292 328610730 512296016 153810848 705029313 657065061 929791759 329864606 824633449 502800758 653407477 325920598 558708308 869686401 978210687 325098169 357476306 936957380 943744446 563501993 786152220 73556800 844717443 773214493 852578385 977030142 996582076 317500689 575681338 33248536 288077992 652068252 938233875 99238947 654827029 458297156 580686106 298060881 354763748 274386818 601938699 429240475 978295019 554441337 621422685 594263630 974507363 696470711 947297958 683908956 956444478 397194111 816225147 778751852 784671936 916038080 996276847 623902374 689674841 248863833 960052749 583832432 746365575 815683782 930626383 985865164 991745462 252475508 692890201 231605575 657270307 499364958 736800920 736024749 975334553 257234547 558949388 523897798 576949875 786788188 915962327 683828731 875323742 516089862 985429351 730806815 884526956 268939405 668805403 101634061 198883842 978300795 991291807 275715546 844932527 980124478 984627667 248761534 732929473 759575351 841893626 381763671 629279370 555745285 862183200 102968693 535241875 62376232 738815658 753141214 769224138 665294937 884556182 524850917 870625163 396884427 953209368 289139018 611761147 175886509 483308465 825595705 863073543 64941586 938228903 272160700 351883303 535042018 846368015 847314906 917296109 980045159 997163384 55860486 905400700 93062089 214964235 558268812 628202494 749705233 823708201 102083570 489619688 418238050 778452440 328391610 614204764 732967818 858986014 654552126 671405327 405531758 580837907 811611265 991334186 567810480 723302618 351613083 927418536 254505794 283952550 276228661 940306546 823589995 978729244 626711788 670480994 876579070 969887572 744887240 836966296 936454875 971062506 963295889 968956628 600075997 783967934 213670629 897786900 754685870 996784510 923880044 957057950 46562071 949617716 430601716 788296590 781144042 832824192 399956161 848744558 293975182 570272113 224302158 578539472 369193825 470337737 632609201 924601149 12345539 290828402 117829010 242101528 103607628 646386101 675288370 991978916 258993483 900675489 435127417 496373634 892302816 998914174 605234286 981017703 122937570 354699886 414693146 847114440 981153555 999704359 212401014 474799817 85435306 744403282 800762612 875266882 417509310 634745639 402703719 533891353 566460396 747191928 556868250 997982682 269857928 417339921 474769754 579224973 953214508 977465198 330721336 797468704 326064884 713612126 669316005 932975279 419370350 504650623 522045761 830038552 239548875 901223090 348594361 559732211 486531002 811262972 80149016 967141796 796827683 953665953 17325366 265573966 104307998 187311886 49971685 851902374 80785350 480059696 604542265 607441400 100219792 783293206 240254291 331622849 829933652 940858192 781053077 992992554 232241377 730715218 594597130 768091842 716187599 927301410 626012621 640224135 420695465 716882577 849881200 976349249 181211300 542556275 981478834 986308077 344635522 370056777 369691470 700879969 633512708 913462187 722198199 883240236 395631221 712673727 9652291 244641627 223051792 290644907 497891777 767997017 808121642 999778369 678488526 719020947 42985996 876057163 420779090 708024328 305499650 335341863 111708585 122538389 599825193 740371789 639440766 727271920 599170615 996622995 328893374 604617924 463288724 636084804 71873496 314348234 871830122 899835197 245078116 937314487 167279422 671070892 278968940 864152909 197043025 223476707 536221774 577373840 29816139 126645165 349121897 977994680 214601541 904638142 625040008 881733338 784830949 846015722 643928203 890903494 737182414 770630480 632805824 690572928 919977515 951201248 86187779 409516361 800738518 896710551 107314318 760749146 460478027 831303262 389593548 957468292 420348098 431046733 533482046 837093974 951413208 973204566 602607424 783233033 60258188 407469008 958285804 979881636 254646291 633914199 887305906 889170922 571427575 863094137 307802367 897816452 432820712 596709672 805602171 854814340 675381478 856631562 42281776 633103368 285047192 982549223 190895713 340436912 417672210 639904003 142477978 919430295 786376124 917653648 900901794 931185416 47378396 877702277 966963966 994545840 255450184 515028388 870399908 893393576 457532888 525724089 423057213 476503150 216395291 902496574 276572168 355803776 696046880 731317446 634417565 967206087 898407630 998419308 502225222 824331143 906389750 923344382 459901768 620183833 612711739 856934836 891030728 898709007 751593548 901188691 105732797 648600771 417380322 752224005 202972832 930700460 974078308 974517432 109614106 656385763 672737593 683285163 164031287 407349354 926448183 973842046 777941303 823673909 243177415 500539494 278715688 780198159 163385197 218304173 536297497 630311642 617378066 895238412 362885153 861098171 132048437 758516678 390170898 999801665 337654873 603374427 320903774 830948549 942954954 951687933 97827971 843466117 126211438 538027158 899711256 983389602 253184877 331036272 253765733 626798688 121459940 150778403 840085363 854118789 200880280 692808577 280111635 373679631 178055233 949411310 319921474 825680926 914620688 982645904 605821972 953958156 210100953 900666179 777140731 926222883 967170625 994377012 940088482 940140312 324166161 575964721 428258800 758824236 553185157 864943566 783186444 992020019 623732077 894127306 61257841 411282725 92816018 460369816 178960033 786920509 293713631 677079418 68524851 288049787 938706295 993598788 267035619 807121374 186649611 739690718 116056502 643817935 884307548 889327011 377468251 994215471 501849064 860353425 799581584 892882037 74985708 950033811 893782088 968854768 582387271 674436874 440372167 866207087 783043841 950437538 873477097 984266752 432410490 562176642 187184387 581684226 401749020 706218906 247855617 522556897 503513588 611073358 912822768 952404516 972615843 998436653 638332191 671020173 825084551 968545162 320968529 710282911 21806289 943063830 531948767 640727766 621441075 743105719 772418804 809945873 777636398 796842526 242564315 422306300 86906301 512467495 360714710 663151763 207941355 532388270 492714425 788206269 722987923 913517248 870946361 909588950 356033016 413883561 437982452 997986515 765429573 874599824 792948102 891011789 585165259 764525888 951234551 972313729 890830057 970426803 314593379 600636470 754609912 835315205 185968767 681983202 680472411 830534202 36094858 766598656 343330500 419987907 984665534 989110975 78966674 98621117 74517007 478890810 777667947 865386888 550268345 664427255 589132523 990444435 954571164 965083997 662410201 825245326 895894039 968429729 314598998 945089890 74450358 152627424 911463515 964301501 544488659 714911258 946732912 970845225 301580248 909006619 549878806 998967175 970927508 980775028 271970178 670705341 222366057 849829359 653669507 744145928 677552010 719137829 224314284 685201300 110794156 876158521 671548939 764229243 513004292 958554688 493885393 798254567 243047616 810438573 684527577 726383647 357898983 747561958 123418894 455921522 25183731 48780579 739595556 951232093 608267398 689248781 609877075 874937602 423889433 500939972 844123273 852147077 756272747 911565472 275418090 975952580 360377377 836572367 579238828 639042255 737622179 821615004 265118088 786396308 606162637 642240922 463522707 551934800 785721591 919731861 669256134 792022243 943864071 962767975 820436183 935410300 775094229 805350270 739920936 954345823 985408691 987721514 737642388 867840492 554850421 592069126 936556924 993897905 624719224 939157685 564556691 935112196 336686109 597307069 822012191 936164173 110042159 877432878 138027131 139549587 363727476 733736443 617352476 995290669 716143210 959912058 787891603 990015795 58217149 848582207 220071356 546889987 401091666 927908496 509780528 953818311 922811132 955968710 954001681 986091861 16653159 390283145 721423510 813574649 911300268 998006800 117114557 563402334 831383005 832520193 266915279 750805062 972868871 973316852 121864509 698395202 471956318 959919373 95056354 799647520 826148464 987174563 454152244 733944342 325409374 581429682 92572946 935467786 634970305 799188925 993822331 999304005 241989027 458159458 636180480 999603129 870236622 969390299 719757126 870051917 427923696 678569417 967157136 977425661 428542552 456218168 407046742 448142945 972240678 990587783 378082743 763052482 875455902 948823493 28579440 400923030 565159113 642867500 732044766 752938897 410604048 539242039 419416889 619032874 835358248 937369949 104850930 300365219 903935226 958614774 498315924 643115823 46953248 868674649 414666479 752376789 925238980 956148677 998738375 999127697 741161870 774943777 575803774 658437947 787987737 861251961 174549177 919140333 243139807 250601760 459047183 690149792 616300019 898561705 120193661 205973789 522707406 909932145 701174704 946071445 389599285 956393703 317210648 839002975 415829079 922187291 252261188 932533213 421001616 618741843 318288017 947944649 436470003 631098080 782825786 865985195 322134853 981174331 545582733 968444444 695290826 922323392 977340139 989508729 701101437 901052976 745363252 844780158 987051004 990953858 668924897 738881788 303659459 606320901 520495373 982370598 241651827 749789732 852707448 983375017 2369445 993661170 959257885 995064200 611402222 888491967 918976456 948668848 227349878 335325580 439130797 905220655 383433872 813541579 113044226 510672047 111991252 816470454 590643748 662018061 107058512 250435274 464794676 603769931 264499298 815649034 201861511 241514765 347571695 388062436 344731046 817898291 799101260 864226412 675028388 774323250 624589542 833881382 527385313 885151915 275646811 728056168 864866586 924590061 572206552 697378693 784094693 925494514 599206770 828122169 710387873 808732640 270199565 749862776 940130554 990419658 250625864 953259458 577111096 822520037 932848570 961322667 874670730 907810916 468421552 967400639 720715832 786026262 565416584 856228638 593134080 734323211 974649264 992118805 281584830 371840433 4765249 904344212 817525736 887359946 321070741 875276228 497973137 989156192 879464082 895545319 64283657 165906686 603324558 974470897 475144410 965107362 539191115 844793383 832933736 983848150 471571675 824007436 707383256 923746094 897143621 917681259 893758122 921793991 397638520 415443762 37349402 962198228 726632366 926248820 984239280 986748340 749765983 836588629 319837762 613453753 459589661 766698517 639805970 670163848 963199597 973963625 834494396 928352375 14845005 287326124 775520422 848848975 617817894 859056454 165553449 668366607 33791744 988273908 261831271 674669057 734291720 814134336 110392006 858154882 613960568 797241677 726314941 815025477 291080312 597382963 70943687 775198177 27283563 484384955 445253372 682027904 750775254 984659093 20537274 259502606 982647492 988092991 8110468 862628096 745421976 954972155 292362248 502938150 317340354 771454419 716999621 817828487 998523234 999653783 714137279 927297072 478701425 648803111 407095291 741902953 159452772 366116605 625544272 678009933 683682600 883479353 357112696 531941040 771467723 874213887 242700557 289477311 715459539 982276428 879705325 945454300 106157374 704412243 151218110 738786005 391119641 555401866 228623450 341924563 270598479 412513872 393730996 604491588 33637605 884222103 878935976 961143492 578991545 638084056 104560522 855469035 509703443 769866627 662597124 675781176 382088312 933448711 66807822 317649678 782581858 850979483 567611493 625380483 522233982 550862602 889887758 939806002 881991702 896059920 658851562 779662804 954576194 955427201 68819443 831610211 196148706 647409304 140653376 347172948 698705399 823107708 586927051 809244781 335626225 498880734 657123613 771934486 574496871 870701902 552507737 751304541 471336204 624483749 301282229 857730599 807166481 873554828 479504402 888895751 962880519 976589829 376288269 867495018 169466038 986088795 646639620 783523338 939834068 961298672 39242741 487278648 524339510 653267081 639953750 780177832 213669019 384645289 985312050 998940805 793474382 794751520 122078230 847231629 787999030 926088930 126995484 321395429 111041197 563556274 337924233 521808871 255378454 748749044 427492299 643954363 981471978 994383607 145905328 927824653 409435632 913941961 637086585 759162433 260861442 988436905 151111173 526082701 580414960 617221694 961820163 985981221 308740199 802472542 909036334 919893782 873013717 957162545 485214405 697496918 943399660 949087524 227100563 401510992 572713682 729037034 661670107 823774666 155064425 957053053 454562635 480013748 282644860 657191172 479635235 636643513 491999430 715877289 711654004 972444055 274212064 491866231 469352310 469905135 468967168 511531651 369961463 780583582 932853843 947192511 874482055 931701518 730055454 806070172 703112191 781601885 746847781 790420846 371053882 707993932 182168120 203036479 116761861 215808822 932014305 947764851 490585002 565397756 713668968 881787724 585066278 955325873 379623655 852084217 602718657 920346453 731552598 756603702 930405316 943835012 445702220 681199070 674571964 951946087 306747158 788462274 305772859 346506430 650639392 943328713 371796913 469987163 502684798 635579651 977205385 989697763 426461294 530597056 179820870 835175492 895988853 994757795 260851919 546132029 856871039 948091047 452744969 457892771 150636474 608667601 800100197 973814828 55987747 840200820 279264248 495691562 998366387 998945844 476432301 591233208 161098740 979899183 7560230 643609386 303302625 802377375 948036302 997059633 279670161 990556834 708251749 780283660 545646265 681236578 963706680 992975074 899846092 935707510 109466461 836936697 521823154 701688238 747709019 863630307 280129188 659619779 362226009 464021340 472176482 832729451 803182824 981775508 514445763 589699254 300791056 659188358 481418154 590422509 325975699 799872935 892495375 924014107 694443775 839486176 598767421 600125655 65994064 946269598 519494433 843664627 867298072 970253381 833046108 842656071 760479513 897711780 854895221 967807934 801488557 889937091 39938137 132635644 649971823 810175703 372776403 973154957 408500143 457699066 438242820 845376895 639690208 969476151 244366714 400188672 2080044 307815412 737667415 745413176 123520075 204611563 451411014 997383482 117524230 468166899 761029089 911765117 511600393 946190058 641635778 991505574 395977394 964281708 102757659 836903708 862774650 957607527 710405047 859501346 492874768 911541623 601130907 997309804 483854889 527093382 395811185 418383688 913323517 950966705 866126587 930157897 109758981 293585100 379442829 469342339 264745479 387184884 667637812 957491300 370520377 946595873 352238144 406537967 560057825 891394737 581202387 698374384 847138285 928520217 188342024 490897193 82205737 776087800 144247711 874729089 433633026 782001794 318492991 604155775 186873497 747664791 54236454 380722063 915799286 985874551 886029506 935789364 965058552 966077756 823759197 999760288 295463087 395504579 432812512 756129735 875398515 926060954 215758515 831347997 96966290 615672236 807189578 807941275 201047899 286780795 399862661 544754931 204078294 418566009 71454622 672085503 52667486 114171880 976628655 987768322 310604553 830629097 491874233 786514594 28065076 711487047 123928522 188454164 407298817 891760173 67503986 693381501 824163158 930003057 494382021 969277938 56115213 754445054 283964483 630483406 396194058 583436619 703970843 807974772 273067763 479324155 270138506 410005556 498511965 950159438 723986885 845144353 436000814 744307323 105024179 994541832 441493680 447414564 171111864 921044656 815660676 935425944 359013117 913865504 916958301 994849098 785249117 860006355 275655962 793387771 126425409 196236180 496172246 532372896 417593858 497402990 104147858 941699169 43584163 724153210 497546615 781794963 130835309 716471683 864613543 969763226 778377570 900040711 40291070 593126667 700690644 705681558 63470311 98702578 221509723 366347552 92772540 495007838 281288736 328942347 741100905 959525741 617895865 818485800 719556990 765187618 780885452 810765262 269296674 487633364 722585083 937285473 990699933 993583261 950747824 990686610 191754389 973691184 747518575 897315692 124695664 404152186 343877070 396458125 646777625 838834679 676312646 770254517 50401693 929935672 335821075 380619179 864892339 943690031 891892668 938833379 706276609 964833844 360931208 492636633 603951079 873812274 734394557 927507506 884043541 907155279 51962206 174301948 834746966 939733142 932465903 935986020 811037015 857682333 981477729 986155313 993016649 993642972 846314964 974900735 878502902 934861964 974269755 985001936 717077729 924677974 803160969 909017790 485199637 807597488 23141233 388550693 374929840 764114431 702144394 862147976 183443702 934818272 641206508 856578413 584064478 980967521 638912551 807100313 569810524 984366684 394862859 790553532 758745716 906578007 349992056 736049304 604781674 915721834 300251721 843190665 801311176 890170603 379029975 946869309 980779896 982273431 950764356 982558723 201755192 778878448 454172259 487571635 109377759 986992518 498026033 998496687 959826614 997326968 318470682 707740446 597157424 684119417 493715613 499009763 599653506 865238682 857720790 905314319 43607582 630711524 52567953 379930745 488924828 536434839 827025189 948347889 991143173 992160877 471881779 598093613 164940923 683904394 650773018 895834298 283721711 940410955 242986274 740622125 819659007 949317206 249384252 615940056 358151946 401039556 426713734 733281930 986708574 987719837 714541255 881510510 704056469 852745328 672654730 895505071 514484398 561087926 583974908 741699942 240447521 369629237 737730255 821199147 62980404 751829731 292782446 774249929 237651046 354703005 455841086 560640311 574328773 707358731 278264460 627381182 155628471 352933884 230292365 867599561 78324753 713004715 631371834 995763485 158971578 486457361 540306806 639825940 445055857 663176023 108652109 155389248 68975938 430830401 405703616 725101178 629953941 780132198 402112791 735282697 662446927 859358513 139118587 457935636 394315151 684935770 490855658 661367603 60957062 830867847 259719369 772861697 691897903 862531697 77628018 854571745 79070416 449513385 391280050 816796738 401381787 581388306 583258295 869138203 867938832 874510674 296243428 604075277 20099945 767293192 319355428 334388228 710321358 862826762 994209553 998171930 155580121 336525128 841999860 859956439 521785155 683655328 895605211 935685414 912215649 917680304 376265273 659678101 945637508 957229492 770071528 962595718 65026620 332944398 80727060 812212454 496147049 506566075 585776954 938204249 746664414 811982430 372490478 848735571 802069175 846802677 997885297 998426026 440809323 645404323 686414724 867704754 65799853 233832242 347852135 966121551 641705417 860488972 73944323 306689326 766312961 884716061 455290619 540349325 234254688 267613538 934606307 959185663 59413937 668384379 640770173 899280103 666629678 831924381 989441961 989862079 739860181 997486010 858667128 953475554 424674567 562694917 256916292 430257244 311055159 672554961 1552786 622047099 691919391 899686696 212654604 341568170 865873558 898573277 15594731 113605416 900206994 911340074 933780633 954455044 989455700 991243724 851026818 942328177 501177271 516254922 227727877 592286575 56787868 797635189 852520896 979165416 296291955 443603229 441375084 950299501 635116231 784285167 724768052 926986952 442956783 466502072 411843209 485744480 52648500 271599927 220908574 675885003 775748354 990850303 660638771 936125518 859570119 875235838 423796911 545518606 81566683 212975394 188350093 633395673 401795734 945010083 138621771 870297218 24905737 385265480 873372846 991686591 788840713 800080856 29689105 116013534 589689515 596900812 166082479 639224581 124466983 218944315 296736677 545317132 847348310 979100631 517078044 882730210 865848745 934064165 892378276 968770215 988905824 996238259 833439450 866721234 479557109 736664088 992229268 995455447 962964721 976610144 584597706 695583002 798775923 828260179 210203181 656677578 299923528 596953789 116777952 614444744 364262192 592821448 499938165 864886916 437621163 678963167 36096205 816087334 140131872 630550390 349429477 519847489 560789772 692631380 314903198 374057189 110137296 817390709 903933487 963197955 501863301 789575653 875373490 885277388 76312496 725269494 524455560 968899167 251539108 705459898 544799056 911481489 669443814 846291837 737859716 904441350 4664222 34316256 545995322 835116268 450013572 658261883 398405830 938537122 36703406 738035797 854457931 974652346 145930878 855118723 553061643 827701636 244381185 567936087 734042095 898697328 952800453 976705778 148505932 724972957 835819135 911311200 610320425 708246816 72908605 577099665 147127255 657999327 520747730 634136598 864080699 998174945 574881690 658592480 203510545 477156732 193781823 918302969 620286275 682832698 990195190 996747068 850709737 944720643 791557855 994629802 695159861 707681799 313116351 509262299 911111487 936929469 696963589 730818807 786061125 883211264 768097324 874269896 466556238 845945523 7481156 463247982 577737820 938781341 731603685 880014111 336984288 761919835 557815605 902310521 317305365 905951010 563037029 598497955 124949945 946527595 635677725 969998838 586746023 670787768 724808758 973292122 238649609 489314951 424408749 906628205 980090282 981882475 964451866 990811141 558116048 794882332 646439892 909562174 569552099 721913740 433972510 512361859 680329342 733205130 50920056 546656175 751458896 979471321 167533875 885201197 367310161 724285728 937903548 966418958 894118817 913347919 44205144 484244846 398784226 649500888 124572223 330411191 986620858 991211113 857974831 881917029 990659186 994147897 598127026 786083174 86588116 144055695 421125737 569376644 64688482 649852655 337108779 793723981 533636541 883504015 349299410 666735296 824925682 875301350 95897850 925164787 437604527 874002871 486736598 520884313 542800515 692267980 665978267 875356162 574663151 767399795 533107704 554081621 904168052 992945033 851373739 878103566 63844778 415297291 506926898 913479290 311730806 477436674 770468613 993217875 313764953 877092736 68554648 506213320 995001202 996517305 401463182 897210431 998102107 999595723 643932897 801239649 727447548 904210006 27997960 782991541 590186861 628461295 958301771 983845101 12197973 821969356 81189588 493209590 969620248 975500840 967085057 995256412 691612965 931066741 2192133 671129734 126652099 283898036 384718377 441823118 621152844 689501264 546360874 874523735 70546075 491052314 296945803 722487966 120563060 784362992 491829902 633328782 309018183 343202861 958170730 981862490 729165531 985233759 653986397 776328564 247490127 948236334 28743570 30560653 688516818 764766810 311916810 388909200 339309336 534558483 806202279 898823985 446924009 843417381 319700443 990874062 243104457 734717228 665478673 865412967 301818096 954386333 871926625 951652184 140468754 527595430 426720955 447168844 484643525 841661704 570781328 809887955 46567904 927963396 164176483 493033536 825242296 882597601 280515139 737839934 797179266 919765299 274218258 992511738 205374739 742343753 142689868 533066420 614768708 807255823 333662452 631783832 965152326 975766744 298963215 571589496 298016784 554201821 620368230 749506922 178998068 187479119 439636562 679258753 24851246 365322548 470416072 735043537 580375881 765619542 177687306 709633313 216583333 407930484 698061970 791738191 53691484 241374141 717949169 912406586 676980821 990717867 786452363 880255045 520835455 794999155 454934360 522646805 241546794 421344926 539689 74643053 899267555 985861120 974107696 990240912 534457504 715507373 807205125 914908158 758863649 773702345 579084164 721542902 528356371 808185843 965927170 970885375 262714034 449846366 73066029 901954832 55002549 828527263 541071493 947274595 491110321 724850649 6772727 720939048 203406305 941652266 151297538 683969555 227673498 278571288 254145252 951496058 253182377 694009982 517286112 933251272 140000847 392709128 993182187 994386691 590045644 912022910 64417866 738545037 239172496 592207096 524390171 717595283 674760511 827930451 701922036 855306921 162963150 188957871 649337900 664714070 365560511 933594057 794956397 898790265 953178695 976135849 681080566 839185205 332960238 419968201 470280043 551452130 150000525 889759516 822398281 887477936 277745350 854351315 715327013 860439881 887280054 981116622 132930554 259028265 154489758 225885017 361346201 960133683 158534865 923137108 294779491 645777248 238403846 481150266 431932136 946354522 365447438 980406879 534192117 734970365 318587931 860806397 418084532 973822214 426405705 971599576 204947679 437169342 214062991 943066797 273454357 691243142 875467662 878563638 820197290 872539009 803766880 943321960 652472401 820912832 502174371 821491719 200172135 884245798 621139114 901366969 945780955 958410929 1910746 776382479 272107996 610239344 738714660 779806665 995572855 995678191 694831259 775915961 816277371 953042935 829762785 964962570 608798806 961666627 931147215 932973510 641317467 844133060 999399115 999406591 429882607 989165673 925470107 974861824 991989632 994485881 912090788 916997576 416198061 499216353 294868698 524172598 759070735 994677110 602344382 924572852 715576321 922070494 843308986 898301367 6768844 568288326 434312576 555995510 842422948 865868938 403748727 791189482 89890575 443908085 241659446 786693152 624360 326056736 382876552 814388374 469136823 529214186 485499463 856180439 898171648 976623050 58466398 475189375 331484957 828518776 929069798 930540320 984890500 992567548 626839380 667275145 609993743 614061492 256485818 843179623 589734241 975234284 448219110 565985882 587767590 796412373 518335927 708874390 449579251 552047943 511077024 522233161 753309646 831142582 539759970 712579005 341719050 859745494 887778862 985969117 837515099 917042043 289457231 399339069 689223063 763407086 748906745 877555504 873858758 940558176 156191181 366255372 472760407 978409123 143667142 661921477 551129840 748250050 919509994 959224313 827919360 931570593 717919668 971950063 412068349 816393208 546770992 744951977 878523513 891030373 662292956 830161558 622393953 750591161 362371946 724076773 739409138 804021795 15145594 197213547 235522807 856290130 371503781 516510378 554467509 923273384 942523374 999034734 153931276 952037487 65873117 790046488 268665063 551764418 651620733 973656197 737267125 783910189 93011041 985949102 41758795 597015761 115324468 983367654 269818692 526169753 703873601 923956983 402502851 761910977 350216297 726189150 796677687 823897990 391741178 577760946 570451219 688095734 808752587 842057595 561929373 677850409 183918461 768534757 74447561 718832643 779513217 781183278 583735045 648543463 788073000 881966738 702763316 723971525 896713841 909499817 474041667 912444313 538994376 953025501 517972518 875474968 827933547 903740926 38726073 549646866 290416177 525003981 484181724 884102331 561972666 858084931 250430505 660511298 193757418 287615449 414442583 785502617 859209986 899164016 473082027 941768901 118285185 727626609 565064471 622564179 479584077 654963153 814333303 859150964 869399092 993304944 456184945 888914732 977550843 978307581 827360895 934722546 279857695 886874357 152509764 188173402 682793506 689298271 652096598 789421536 784943349 939794781 53973326 188830760 525658111 856982744 367363016 431273977 605598968 998432950 496506858 677974245 78144390 782168623 571595645 908715671 278586780 384793459 606951368 982163566 86124905 807017803 265408518 941748325 808820899 853099187 741886319 860594238 613175876 708206940 446761783 740151176 80904747 903816887 3316775 178300665 538623317 947855424 215306470 631535339 233833760 414737616 799086614 918148493 947257632 961316027 411201054 774566274 437245780 626238476 110949465 850688265 736297025 871246191 638157269 818521345 559848422 612830800 30914811 799462078 696698130 931831770 876234700 944493982 615197556 839269056 700044785 731896638 957057250 994137736 361405241 762951355 62176557 554963918 158865397 267583972 229039663 420523725 416544478 546873965 930244318 990869542 358805802 694280193 290349384 620678411 288929970 332698919 668236892 738365841 596250730 816808826 142087858 833249345 910990107 970265495 969545620 979436062 13167122 251765975 327063470 560289293 42542380 687259352 444323291 570654962 972573803 987279009 838568066 844526712 329852335 769426460 609263527 904341072 925482662 997723876 782969816 880695378 258449033 954715688 677325064 801794110 39019686 809759545 29356058 876931096 146325054 443796877 138110497 969003693 7071484 153640682 38477956 710621056 699657672 821445691 44149366 463910922 78745090 683892300 28716898 960662121 901804545 975377597 37424836 882820864 567391824 999050368 520171742 917596176 877012846 988094749 4936754 34167384 898508102 946705680 324228032 647791773 409082679 767839438 756681448 935233129 180726223 801546922 175456280 441002266 228314784 740097614 447843667 661589362 899304650 979415747 864413922 925799932 284763805 318396887 114783214 411301799 50883710 176171486 871722947 975246154 149224762 324162903 60035039 465734110 192989789 544930066 222749738 833226758 438369519 950452027 400971569 966403846 10396834 733591647 630635164 776824324 706804277 920848731 499925018 962781007 294279167 304469726 343816577 769536837 47126305 544777999 984807422 985864514 52716049 220836473 699686557 862341168 182163645 675427044 451848388 925839438 796901548 981301390 805167992 925442831 640646554 915306321 305098286 369876882 328557109 412051057 336660275 792877427 531682680 536639740 819587698 865802627 718911989 767552222 977206967 985598218 565667699 586618105 419679378 553939304 232074774 783304680 727006566 888035469 483582600 738520151 46604869 269310259 567801834 656196989 204079602 381268011 776993141 900857881 604808074 758577746 831099148 959647922 933776897 961266026 479504952 946309854 547090636 665552054 80472566 860558364 42959923 885156711 959397645 993659637 516528329 724643295 753171777 895165869 401763957 856850947 806425134 994708409 947965847 955039544 485236887 751595448 204571605 898543720 597038338 621744789 910915972 911517670 47170195 270372413 623648341 980581047 651418318 711521520 704872 211694358 447550740 918965426 934029527 966894042 197212763 790988128 137628546 426312232 493754583 983295161 688886226 976113816 720928844 907342920 159590088 312239969 786733390 944781011 793463015 891537729 602489647 963609604 554863339 826713827 359213572 427614187 921127983 974953246 758690562 825649501 72615349 115304910 400699630 592882870 378404892 483412552 330566370 735236427 183839838 798438337 55734742 88704176 69963477 302423605 735048656 999651446 25559868 437376770 371301227 974771621 450812258 461390002 689554780 742453756 60488206 501213549 646418753 943644336 785236874 906754883 916911624 995825687 641497378 758609316 210854443 976536903 821512970 911192487 271109142 793407686 759033189 906281911 33867406 786428598 493602744 920948111 107084523 355403401 214431006 469501169 665511126 740268953 871126038 907659284 423093333 830037213 700886887 750091779 181664762 660217214 186751510 923564401 102449032 555693815 403331850 999252944 962670635 962892474 766875082 784145911 964767023 980366272 347138963 826403672 690183891 985316214 129862285 604944048 241404795 275324287 894056707 974482588 623194463 940338490 532971485 679990537 956733647 965198645 85096869 994225243 189461623 433826064 20682087 170432751 2994914 371489980 153814394 170126462 220624438 349777885 791061209 963129293 505527449 596290939 899303477 945093645 923432188 997273786 325155915 377081659 859953921 862137011 783035100 950340496 128817453 948926600 685795806 899526317 638497646 885461464 426374389 616942298 925763668 957367811 383191301 912896442 342225963 546275357 558581980 754313532 273443914 459258546 728128503 926339541 976545708 985583161 705597851 972737219 184181959 644521075 942753928 951016014 85458510 724698872 253637878 293478468 528167036 585518078 341747029 989990423 493868731 517811870 544020745 612076545 737668967 858660867 766503000 901879835 292281038 544994962 271384814 401137842 744240063 911673453 800392750 954516554 828250624 895122092 489198324 938616239 352351161 356615438 491030137 659265126 978566551 988671437 447336509 517491169 444171581 881507976 222450128 662160969 137709013 270108100 549120045 680264449 17241281 637030401 861423007 937971732 989645828 990412088 992417211 993305881 392913091 794277729 443410815 489896874 13109910 99397589 443079443 951910065 553751579 888910088 814704707 836785471 932714939 939432058 305640021 804694723 971215505 976284461 784494700 963759880 557655092 739106520 991883354 995378292 613347199 809270982 500593397 634078227 147105371 710026995 559025131 756022736 69354538 322278312 179696812 541320645 116832684 250406983 542039983 837468288 559290507 672030321 688816373 822429948 217876197 988301485 565169946 714025091 101859117 685274694 922036150 969181705 293233713 293591867 80341352 536100675 986018426 987430032 33803782 620901144 561243122 726891465 246419263 556464800 276818627 683020656 618308722 681018539 423912316 613368943 494608462 858971148 270593031 674358766 961441231 990863645 302656367 383262128 868265538 885757114 9836799 937253224 190536003 899336204 86422974 222700162 218009051 768295380 439830640 481482791 360505552 582610020 981485585 987028272 259095151 693378814 39362078 659071170 284527863 939543801 728931925 810627729 405815302 776674837 989912024 994367148 708858380 928623801 898196377 911531591 361024313 615040649 372652345 793598888 875038662 985335425 783185656 940125650 48996752 367207488 82701619 429509908 756865966 856114888 524378530 792679520 20803719 641692571 228601792 481994297 732230160 993586242 309485199 338435279 297030455 670716225 185904067 494107606 219107755 221618654 320949926 446186052 660730714 918821753 345819207 400651176 216313984 770404478 563875583 879068466 918510205 977901823 461293034 799116257 163001766 293592953 732161447 862220416 315869679 483680922 889455757 944530503 367529096 796360823 986813879 997709819 288559293 397579306 789691316 850889924 389851311 802589387 20161864 594033370 771291503 856887120 381045966 528526084 889068790 911026339 366620582 412694647 236651605 887225898 472187165 538534865 466176929 621622397 210085973 237728007 249458593 708808993 255418137 694784301 580509598 799322134 536284017 770513530 213817732 772729719 742516660 847929325 373283105 528667918 822514416 856513353 399318321 941589263 980873714 989612228 526796727 783745783 275818431 566926803 477543542 702680070 479442864 664312619 246354662 685002839 981759451 982812825 785294223 876803973 721747684 736403288 737120617 820044137 188945005 766693912 834674943 956533356 230655380 434886955 467214289 616727819 459554468 587196015 723117134 944110952 206935289 301427868 238280687 974843297 799254254 972568866 802402638 896367122 896294587 973305196 843747363 882836207 536620504 627359296 633229488 870722693 87477163 585276399 198907828 374772718 585668304 802579396 593089057 976459535 87562763 938080435 144647522 283397354 592868049 939328965 19423293 439988022 375831329 935959562 342231487 353875776 708004679 894468641 563145157 642948217 385318124 879652492 451727895 670576789 949530780 987424834 245448810 889975357 293897680 630952103 341043163 618265061 734435646 788343843 22966424 754221152 98937386 917665518 51255719 67223971 50907348 350107141 260708042 963116113 945747273 978344475 108851889 904755763 495902095 566122117 666825263 817754354 552214536 597230232 498580469 573283143 393231579 666242802 576124530 647589506 667328530 707296534 75494489 75867756 871850631 987332248 645574853 792047700 298847820 490708722 674185520 899508486 494221374 736928380 749323075 845402897 259525239 798446453 327665028 906874019 823047575 830192389 964619591 991152487 764322685 935814736 630128748 705059457 319735031 965876637 741535929 830944569 577489548 632229446 327545873 547004410 841031710 941467792 646585745 853406567 969837687 989389891 790497950 807810292 254284560 767766726 661459278 890641577 686613889 997440484 959724683 968668153 447378272 865465414 177344735 650619739 163114372 899107158 735888070 742777138 23128341 179258704 156897268 417077256 972019446 992987194 298984568 528401242 713940684 835149741 675553498 890244587 752141618 864647950 184278142 271685637 712139034 803742234 813254439 842846772 465844946 588916886 343283552 991540820 477128190 689984371 350907306 474028577 171694473 314055445 245010486 548114811 755251619 779230413 815072678 910293923 515177926 717692397 585234814 644868452 354726941 692728144 463939320 709295755 195324800 707744186 809363086 943696558 904398056 932703589 757101993 796314248 206037069 644606722 695046700 858744222 958938937 960035794 771934135 820508029 11690320 415615649 483252935 594169003 574007247 814900236 348347948 554335076 730552977 796162416 824709868 960216763 878240594 998764999 354772013 455876354 953061465 953171070 741174431 877073262 508582029 829651240 507576186 821406964 666483969 706274902 621235801 921462405 765190597 842290100 182060025 702257559 196796964 571446504 389671306 698109956 352624556 630679701 378129232 812692482 877583237 999070516 510976539 773253177 58306151 813721064 752267496 793278823 855312339 865099335 727621308 973184658 44556285 124393996 795909031 805853569 175646084 889381182 274686356 738877092 430885042 700022552 845871605 918286494 787490263 975702626 26258756 426076800 895227047 901843274 144615629 793951504 324529011 972221439 78103221 695745326 68011680 934794139 405373199 414954627 185560998 600976359 900288470 907081517 725204329 840498929 205136662 694345270 404543825 444177767 348111849 361797940 118994934 635222608 27966533 48251772 242771793 702750094 680062445 965549330 410837990 891171736 431629684 988015121 124093392 611465493 570292906 835210375 580149029 873970329 300475481 508007109 71243917 580940742 833124269 947128056 241461996 297642955 658921548 937720668 628497201 907132260 503843311 526495662 349312453 863208772 197349157 480516672 446486792 871834001 810011363 984435085 417600361 692394886 823952391 850001835 364498946 499416869 482584654 804484604 769500602 847853304 43323314 432413551 932139566 986203889 660612284 758364506 230724314 452734926 612796707 934573116 435257663 509672843 476399888 769002810 366628948 519938609 558765506 916404751 463836238 765851941 445321268 765008024 491729791 574929571 934820145 971027812 110028795 406909649 29127268 952836179 116370424 135575109 693937885 719235149 595669658 774915195 665320191 891847472 313188188 448499387 53781524 668758285 14422685 240973223 691861574 952625945 944719668 982592133 308501560 846982707 511923049 873475399 63308604 90934937 692904922 983065807 985520927 993641285 137076924 462405197 480387669 980741098 822747064 880940727 678407074 859256356 760538900 922236140 162619295 499816193 285011229 490106958 986622124 993037323 517390405 925158720 496789343 693866470 947281088 978563136 248521478 595036028 421597240 465912458 217111235 332033320 57814900 791397438 672508466 811348197 263158076 269654024 630855864 675965871 539748364 770900290 422896541 811900859 69424957 628490350 634647434 733625332 878427577 951002007 145024323 457389442 139641287 709155363 794367291 908012200 458981929 635720507 674623511 850119734 893470511 894574271 452889151 888828555 383585239 951549075 168513278 864266155 393590460 931649998 152627808 531104810 307761824 347116586 876788561 899310096 351176267 755710813 736775718 963492638 159888888 674844016 668605366 953242980 493273941 642253607 429877154 621592867 842703163 948579561 113343534 160047907 100214059 931089910 745134813 796520674 236094288 392916675 307304230 354158368 754985261 975878035 50400632 483812516 284158461 610049166 321995797 555397712 279791473 713036047 847340947 875864192 545763680 633574667 839342736 990396722 480365387 859449496 561840387 693457885 215164267 914662424 657368506 899429868 113627610 284103004 887115509 992478817 459870412 896849456 713563698 763331070 885279164 989283606 995295710 995899572 234701076 467263942 398028904 808427392 945434034 975684529 193356886 761386966 522663057 991920875 552910433 990596423 158828852 886534474 431458358 674886248 647702563 902542283 780964754 951892584 201621472 815602557 748119672 854183173 296520330 322917544 880815945 910182863 521713389 574400461 530916094 983624718 422444679 622168606 79055086 853012682 685742770 888675725 342966147 631639083 706844546 942552593 223236301 425282235 132616004 172261202 501216380 696479230 262555456 770959076 12646260 293196024 761678539 858081543 331175086 595943353 170345665 494670611 964100227 995913391 403156454 660109375 318570987 944061349 669124700 953521828 352743362 716195078 25316301 538642619 277532734 560067038 712231813 885055468 142660150 310933393 895985088 911572371 128318281 319038989 80290480 963145503 829599238 893260893 291379470 794045311 610227328 611514765 490719580 730949412 163372653 983780006 161532217 334216000 194511171 723932959 259991014 701772935 963866953 981523178 49844689 366755411 154523570 507287366 256864517 324533801 789786483 846718139 19722933 41984031 578507282 614063057 110941790 151852626 895624963 956059127 6636937 182409283 475075273 488937896 494554625 561188133 714487912 868322373 215495494 495453711 250867449 635382962 548453760 734044985 979978885 987245447 966378614 976293290 11243390 966363097 933834831 975277558 887840749 952634773 376939332 891465553 578303114 913618561 381879053 857194690 854796201 938841025 625710324 767357033 384632102 648746735 800915466 884000957 555038212 724386372 666939520 797227024 760698956 872095135 529293682 752392144 68415065 812612292 593737690 857707768 863595492 892905906 432569944 981679119 967350991 998742682 474814639 679302884 992620533 993920655 744204911 854319564 832167310 898996462 507690349 931861277 600785128 810985740 144884841 603004091 926896100 998890023 144258343 483633633 981216933 996327928 464233690 896067367 22170653 876196350 252556411 674084922 676897448 939327202 134939500 630319587 463812410 881477597 400416691 573948862 765415477 871794989 575788186 659495799 227238429 881125007 328562267 709028387 792107384 883459651 443103065 670478880 452519379 728391052 992576546 993659004 862204600 993372738 404851264 670351189 447643483 627269412 896134606 910537776 341981463 649947908 130569935 560731535 396180095 748842511 239807326 953592945 634428398 948970741 560900580 966918563 868489840 982805254 114379263 471030670 670724107 857455261 293758679 638663558 300497288 991865032 420118948 525363429 192988716 226802525 235372767 942770614 832150131 935965087 189524726 362605018 367459138 868571221 329575298 929235021 226587128 880051868 959594732 967517321 546644883 825517842 239424659 402053172 73138634 582349219 768904171 824509125 188534459 331846265 810117312 875793383 450316703 893822027 288301480 992120510 39139965 941132964 281451167 475982086 576560307 710419737 117838013 119254938 784474814 817977352 68393351 256970591 228971425 265312540 515965647 970387549 11566867 159588021 448570890 712753685 191459342 194661695 432638720 513218028 117069648 823495285 830531545 836032251 445200614 846589483 472286560 573042807 17733247 151445273 209230798 999114872 926278401 978474592 852094757 891673325 378290106 583327481 754559879 859177151 393239318 578469354 54914511 372273283 862928928 954127023 836334313 942564716 133027215 238580946 463053346 941433858 664798952 862563613 8080376 232481806 631352607 847658386 772378771 854961265 220468917 289452629 906303652 913305554 185376767 929679902 196418043 692035629 501961167 749838966 917308429 958538914 23039314 81425506 15474581 735700396 910266374 959446418 965528694 981132850 979361056 995385452 100542494 930625563 177969703 179998587 322618302 532215711 917744463 994387711 336210894 782773376 552832402 742783663 299140620 940969247 674994418 987130286 967534029 995194546 732617722 782160453 693764863 702979740 766631752 973540276 205047888 317581240 147565981 183305293 249943335 970971212 111248369 523685193 772524223 928482551 174063809 328379337 772216616 872386109 473306957 771284703 649911315 694374529 818609545 920992268 298211052 494593236 307680792 660711453 483278203 923447739 8537697 294655582 867132054 976381454 594228821 630565011 637203811 910643515 879208755 887169894 833776980 990770956 587646731 634304352 465386588 635301002 351293915 398508096 356519030 503539135 840766501 976507513 256170900 704683786 960778318 989393170 543204955 628724176 255119155 595915921 389181936 639967269 978686844 996464058 329839562 504593481 804306497 856351452 166759431 926279078 992336075 996954482 336398553 551032382 530254001 534326244 149916482 763695467 131728656 707541288 528097012 617355057 933979730 997295160 435897828 548825861 521413211 731833463 998455366 999793755 216808263 909837173 563632685 919368807 152573001 479417587 16990477 610297547 280897607 827023297 12330539 280797412 178343170 503284480 634479973 890269894 894437592 937461505 837025498 867533633 71300568 385744470 821228438 869200517 653100961 768994903 587289194 600040960 587557087 675856542 233189680 940545974 751341363 849467905 832353456 837959328 86177075 939629738 50334332 445126344 204875169 955445865 711907742 764531589 716680014 931031923 545244922 977828205 488632783 668409219 905682626 938355286 138196131 916680918 63476169 633709353 115081978 876009435 992161691 997803571 450489405 747257463 757289061 797921059 489707241 804653906 148265455 897135244 1029264 39490072 835539542 873634633 837707206 853881232 699666803 906723815 462474477 490884032 948918908 957818423 270494032 658455623 595429195 961668496 978949965 981710609 432885024 874750371 866321187 957609471 686852916 731002562 881704849 983194540 655056879 847981600 145809525 530677865 995962633 998596631 283587290 945497771 496811604 501104979 827829936 895502470 548895847 741886173 493954652 827974029 133342724 989221798 221686874 421575185 900917977 923114717 641213645 880703902 635355559 759809564 488909008 543206181 71485628 807101930 813792691 878341419 630027443 694270364 382247701 408507705 816979727 905942512 944283850 960528311 649894753 833075026 446665906 802959268 339220692 458049387 367451849 408870961 783771706 979496956 337420443 713879194 372642303 773222712 450385214 898448425 38053272 684742373 259978540 860528643 590213860 747852524 157705715 244574911 850667976 954278329 247804550 825931999 277206780 689758037 909733251 933816078 335479400 401671446 194123340 866666716 512809768 638722327 356437285 844413257 493487631 759147185 446109396 753115102 98991196 926113099 85231604 934718108 441110768 690276946 296561147 983044949 883571828 951044849 787034254 965128485 874947361 994520728 611938177 746810868 842333531 974515456 202760048 229536758 729955813 875664510 79521311 544197419 586569770 882236431 338885666 508182330 899874076 962354212 988141752 999513778 235963682 601733963 176949166 853510240 353361741 636707908 561852800 931463531 550469533 827596881 640996758 810635390 563777095 890513848 678647233 913018981 303222805 332129849 603442433 939247543 812152992 984481258 3415259 498272358 741450408 907120905 371291029 932123021 606473982 683175680 724837240 893721522 658022981 891560817 842767964 852580213 500643585 877383144 121205120 428805079 442293050 885413036 513103205 611911680 242567603 766322498 968695970 971993140 66943271 912292324 103521023 774958864 458820044 479286746 63664224 378589119 453753208 931352327 583795273 813225694 930910267 963225542 947441079 979058437 559039249 661897297 942599256 956511811 345864969 408462625 71693142 593766949 918923685 940852658 154843409 727067985 125878778 243903185 205974622 902916856 106372424 289981574 890046789 964972954 794010399 875454843 658650036 686676761 596681274 630356301 174859408 964426143 778250127 832276254 456497686 809160371 694567607 871866158 293737089 866266252 27924825 372492170 692291021 949749913 483758621 974565533 671026023 970757421 822092081 912727949 112818848 939367508 721421607 938591570 750611056 811136899 225689546 346441357 27869348 269272382 879076817 958231137 57416200 249598883 516938101 965106993 149357679 180764873 755966907 915882739 997837820 997987430 898392708 943253300 477804029 734987161 432665253 825046963 820260905 838444457 980133524 996689014 839441893 992678266 677786952 717711396 506941364 599858950 116989851 369996457 723483286 729608887 686983456 807649384 779972407 892199696 813875177 937474825 952339809 994932896 77016787 577674072 137243134 148256151 174358437 321095642 302881897 798930793 444268201 652966708 304604810 825661521 540903800 937147231 252085504 976181640 620042294 874595272 745622514 869305824 877249930 939794564 325577324 673971372 896627654 983927551 1791212 174657234 521563836 672159380 426189736 533364642 113172318 967133131 659877465 926874548 259141961 382692396 838488816 941820028 69586545 248875251 237455235 833493000 375048058 546511541 981688949 991416676 997778475 998838814 830650915 954031903 2582486 768579214 242860187 830406594 971463272 984990360 348448513 744479078 616366467 647497545 242996469 536754901 179033940 926835984 898826139 904405742 193757704 619551608 457927820 956975309 270903448 614917771 23112269 733443417 398609288 455420903 335377176 397683745 428967540 494996732 789537968 918149843 998014591 999662415 488948948 998254441 515195875 567110661 485939056 490689137 479006325 899767162 182175891 267081993 303481785 606900367 646995241 989838868 53972268 307868381 211875962 878598213 639752960 857863959 330326707 918487438 684643320 689697422 248689338 715270299 494219307 877992992 557587144 706383233 302787098 371080693 684515455 776487406 474582952 573252450 543885991 712663465 592162026 800992125 827922181 967721320 425477556 953265364 953383455 978957087 552818494 905552901 127306755 965241149 75361475 693524009 140585490 936720340 332444941 419992732 894420704 979935241 744936361 763582685 118964010 169011562 24244697 544720146 181896864 793570371 830691886 918671596 875528383 977788388 356562330 918700186 243154168 447460413 728175180 803433501 584850429 641618267 623862678 890549600 109495086 402094319 108366062 837498778 729930950 812069949 183739107 411064206 837635385 871001448 637113192 840294967 546640491 564229501 870044553 928913060 386160620 425835817 238642859 659589545 63352178 734341296 663253967 984814697 436375459 947815865 841474181 938644479 311532516 712526069 737967864 916806336 482718723 637886482 657378366 735351451 457089236 553099552 521330942 591346798 355689538 911159683 122993756 963681834 94817804 577018880 727661453 759850210 146846182 751120023 651949823 914294901 597406280 729130361 246266361 747228628 788481518 817665020 478191357 531178986 393580751 904753928 964334808 967906364 950501362 965607151 817593732 982211541 865222138 932148528 591293399 746292299 554309547 959929610 924506930 958424765 470349491 913721476 583157319 741088706 75551495 397839821 957651652 960816110 120187212 687602392 788266270 912043357 254440481 541506695 118599664 187675557 392891489 731260818 112213824 503955870 133615868 563673021 505606979 522849437 119521828 516870207 1555031 581937708 351076620 701727071 407290512 543266111 835634658 896288703 742044119 823398055 478832452 731176232 12097416 338179297 909406219 910281128 165982150 243473524 207890577 449425685 867849215 907543744 559750236 904351431 887550091 948099876 280046164 537889533 358347224 921150315 380925336 566378661 924423002 943235815 294018776 436452726 760401309 791216887 727001398 897628035 905235152 995017841 927606766 988841356 369055804 561072998 666314769 851204843 162582065 825313530 294836997 659897177 375208174 604130695 982413343 993973733 270248105 888439996 614778740 919197658 168739242 194136627 251041591 256306048 700867711 906422822 672595799 837018754 988642033 996381826 172466280 283198541 746858570 858595606 681639224 779881346 685306589 803956548 22818878 84600353 409174958 680322138 242961049 276756781 541874297 709924957 42069788 473433088 458714987 698091117 661072922 919684305 706582415 729827250 316288550 919392948 659873211 679405046 167478175 613458488 395634719 452203949 647823498 734112975 781922485 851927594 499123664 577781938 525701507 957065709 825713334 944899599 940707127 983357748 284192428 831937643 854427836 933519616 34617156 340228612 184008525 946882244 932250568 955765517 591751502 769301564 601166046 785603143 546273750 634289358 715167209 794890545 966800927 973297939 523401917 999823747 406040591 956456226 936419776 938605189 802796185 861581795 714468809 856146976 963570526 995048437 349749775 746326903 926905383 992077804 798384642 823648209 513390289 585816366 943504511 994020720 984682105 986123641 890641725 903812385 190132876 876999316 926578036 975237414 567799568 689191786 492039863 663640384 491322682 766133668 468332440 698835920 642166520 778866778 325330004 765381809 381347467 895266744 101338469 402675128 849028216 946781022 553471212 878493905 163214168 751457520 427495955 529052663 447825551 748269100 611249901 954509471 706839309 788893972 899224462 992945443 748934093 855277931 70748010 670807252 656286175 909869312 257571559 459266865 982800343 987755296 244223724 248749417 293951532 592272572 456607615 770431935 886603448 961405123 318328004 351538211 111971349 294008165 518904564 533453218 608838817 663836146 845390709 986618839 319332349 699985593 823608618 964259020 441099704 713305722 505590557 509438372 150397594 493384245 441293336 916219543 262322406 383072821 889751037 932169531 586022497 802746629 116032557 808035433 332473288 508506959 365720026 444174825 136000412 563452650 496315123 892031076 437859696 838966757 487441749 719725625 503593 885679703 296642584 839853097 934078059 998835911 415725660 737471317 382394449 838485374 30639484 750383047 258484388 379342593 848155199 864427764 349150849 979509801 505126655 585305354 802570757 809676678 631189585 663641825 974291895 996659189 666179206 965476143 745404834 869081993 568044286 790221503 963758481 991435885 37548942 423653989 495741034 965189383 77295216 483374575 409542568 469069900 498383870 614380188 785852823 893466146 705570048 947456277 6087893 898717114 197422898 290882852 962970455 977151327 702642396 922186875 938632474 990593013 599890076 620768689 193996702 546442177 993155478 998941124 604207075 739166474 748474827 885696121 349931363 588686845 577684976 963380048 805575314 996263469 652679458 828504848 773153621 973901694 487978441 669879547 771736992 796827263 84963055 980115308 902038148 950621385 384373770 523730588 593848280 901930672 155467816 384299283 17081915 67089123 343560829 782737214 168805155 756867941 607576424 920769740 222900651 831324316 102417101 376958151 219925124 400922368 851447550 950103122 129282920 363452121 710181951 951189745 37639060 510662449 950368533 997047002 8871637 779071242 954053867 978616726 900083564 951073431 699594280 897104560 353953389 803407299 740008114 933017055 750010730 801719632 887282697 977797595 294228224 466666279 61182555 871122659 293325678 597497222 354979296 831530468 544648817 718748949 41868647 961370853 536353144 745973365 600875082 668986945 457662098 807438879 430781361 825121567 158225372 390419632 64800606 939366364 702298218 916340996 465238844 917306034 428870785 549206682 504063894 778886261 444554124 833186893 478534302 647101535 691540106 954936119 755322450 924451397 694224167 873479689 547915294 728330283 104914848 527906701 810752886 855684836 526662186 855918534 912820521 939452555 817354730 927752565 338315439 395971119 28172901 731363556 286751629 608302139 189560657 758105457 655012902 766148502 531894122 535785508 180471006 451207344 793439916 843720194 875241868 971068136 272612012 597105876 945314507 983818006 527830193 693534498 999921986 999936365 393292115 427122418 510741101 796601373 76234057 767737805 710381166 778130267 328747972 654960491 106927766 667298890 685379634 912567834 626258014 762744582 415030722 620687758 506549902 730524445 602089714 821950206 981236213 999661848 910781613 987997855 271214431 509548517 441668036 641510252 350886152 567412748 897321363 924649701 413882315 615557972 18488566 696503563 865200588 910093744 63074783 521898700 274010853 787245166 986155433 988344566 808241226 985213266 315690697 577921758 246107465 431774231 442183972 989904006 44177699 516255787 935407723 985993624 738966464 808404737 650250961 651406124 889655897 911244448 906632535 920940185 871540307 966476576 73174255 751590269 55830038 133897743 658313043 774512673 918823579 920195362 374401129 481700500 176002458 215383437 219296731 619884539 996585777 999270150 910976012 964069458 184760760 753906634 257531059 329940392 649783281 761713675 156237429 616638790 223546866 863569236 604786165 618988135 855558648 960336745 450926951 666605556 439497944 723883696 371329442 665352167 5101987 473525686 843138632 883270552 676717585 776216053 440970309 523504989 132423354 489914939 766059116 870272273 91287979 599595081 467857520 856074545 674977513 678857095 909955672 993018045 475530062 820298226 355036921 634910096 884835159 972309825 500146718 818006874 990700330 996266380 398884419 960276974 343675829 501042226 561045591 687811126 399136347 419317278 360398441 421134627 215038118 728397637 334573081 833929195 60134863 639260075 18518251 879257427 253977023 733063271 907403662 934220651 127948501 317327831 303990284 761562560 801570913 892947023 1409979 141262383 782123615 817638138 927131583 947923041 60937763 540573935 282663924 856266604 541910102 562598849 579804374 688729408 610038686 690537036 771708800 941181370 253703940 879386344 290299128 713606513 664087721 883831902 882992124 988025918 260697982 462692876 279975902 697895143 305332235 842937991 67563076 409628050 703173574 950654963 755021190 890969696 183619897 862140804 411918538 590946828 817643541 864844033 707901043 981413149 825657014 872490581 73574867 532287752 23719120 511951386 514494320 942052064 178233772 650292912 187838442 788114668 568428597 896170081 688738273 899676381 508600595 847454630 490108054 627566930 804075553 972681658 778275666 945312091 749946864 755751850 595073021 984804688 611207168 960635316 552292072 812118571 908802539 949900701 499837848 805593729 540793405 586814270 560027394 752626687 629383632 838810001 40424692 217435328 606107973 825982995 176095554 403169171 212968829 618758983 3981628 136414450 355734310 661048083 507580938 554682067 440991129 847357045 312395036 757080761 205089401 734131332 228567575 826477924 784919048 820383407 412248286 807098879 540255086 804467885 471478869 905868587 232833524 379778038 538344432 595563346 546062645 684434787 549445672 572800699 977011558 978293982 950889234 967670275 301170754 546268924 664706544 897985955 806482702 873173110 507285498 517172355 104305253 160175070 851271919 963674429 963145701 976850584 897888913 919022056 272948588 922906025 454151217 498049753 719802175 723829450 760746815 838035946 134334530 447569182 374616975 555188581 147661229 184240631 24962697 362987632 678232807 951134346 15300664 208676424 730705975 837515465 58552868 649593340 703478777 784224993 563109960 802761668 913232513 941229729 634662471 988415370 527069233 937783114 979296914 992647649 466930617 738877398 878241598 923098116 521063052 536686766 215726590 968741252 288745516 797751615 577336344 699853226 716980772 927973567 678703296 696659723 105464927 380397599 392119963 670696128 764805121 916455269 247847464 714742572 560312428 573925839 756365764 921607192 964178556 992176165 466675230 617824894 753465319 819880186 367134075 417125639 649994533 721215377 669773492 713169832 683286909 720277743 842824562 943773683 985997676 992508561 864458639 963763978 882438763 977262415 238043024 620445658 235606398 868248979 662164940 699929899 133865948 693714020 324856460 594536062 839746465 988688813 84451973 703884540 205528499 350411210 778872099 839761108 692187188 987544849 614696101 843905799 731800511 884030019 26638877 662491369 210649509 231694171 890304868 949834364 864505055 955565463 549771808 808282635 871319294 983229115 74765250 777529186 971117670 978792842 841302223 969245326 159857599 940879959 353618735 703539769 566055948 682359450 180605148 240573566 678911353 772576403 641111621 999770726 998112121 998767897 860585834 890628452 602664961 841660754 71613661 955152032 942510418 974928346 351171310 399662277 529730699 919059761 409127708 502430349 770429288 878536515 520010275 752342887 517896606 835349666 179088030 414373238 43121530 965338555 551383227 657919544 963825809 988608534 579845168 889896138 315066426 413798770 483555000 498884241 787516451 941175414 339428854 916695433 721559501 894259223 580157283 994284938 296516151 319153746 957036721 965262562 975062032 994341292 895227057 934167017 779473905 883993288 175402256 559020874 617829078 958107747 424708728 961249843 465389997 601448845 77281097 436289528 955705946 991251937 114566033 476389874 50397472 322936155 943104736 947647333 902208563 978961774 183673424 878978016 756209524 964191168 473208082 525629590 320782932 586305435 671104779 790864841 809517741 949626453 824489270 985431977 658150920 839929628 973569361 979132895 442971359 604572006 137840136 447328185 233957007 872068356 592004865 615145122 131398237 902336364 510945416 722207726 874835837 939629419 256266923 674091707 827837425 904530464 18637100 563735895 299363166 566830329 329995193 560655386 233013098 476796713 415781146 872445930 36353812 795157379 351823073 643294814 864757950 893222792 162572886 799762749 46489405 510230060 128186480 672974291 677262943 944298400 172726136 878296250 392936523 573070929 96461817 579234977 452819783 835416976 371591103 448135493 219632819 469840923 391555001 827021678 76576782 908354826 735582456 921035452 719751107 855240791 950420060 966433055 929863193 944643416 32265457 290655348 690256364 934379575 920911655 963712373 442776509 811464265 209553005 303445539 142304012 456846950 861927376 879255175 484614952 702831023 785978052 995264515 781986695 884017053 467076840 587397345 310555277 491141335 604061653 751854697 603357037 797315812 62181814 880475438 335422786 642318328 761779011 977694453 164381123 477718941 136850925 175521665 691053248 890654921 853446390 922026379 484770853 564327459 362384568 801031732 990886169 999678157 134080412 889882024 243120817 851153874 204757719 565067575 765019137 896359359 883507907 983651217 753263717 870541143 818582925 821090640 656620688 903010260 321248610 605422366 805905502 958308368 647486117 671656775 581342454 706810959 567987094 650742574 72642141 678230088 148107207 929135353 769212605 849499201 747496378 777125925 629484744 994441005 894804567 967613215 102471974 483803420 93226157 287687179 658343330 986120952 275362555 335251192 897660707 981989634 770368665 934005933 982606290 986263454 869518325 882833761 673457422 859979356 694184449 770802600 59981793 197085670 544259916 819078649 883694610 887786863 643243838 984028734 266416635 827500367 707376594 828252562 691073925 871055955 603296784 944575957 148680137 677215556 939920994 996535404 461828826 804004831 313723254 765090363 964343682 977675256 35625768 793984085 290713193 882966265 23991302 577929984 627454233 769609158 741456137 953196656 875984196 943423366 150733454 348528931 732139087 991320575 358672643 510402608 756360485 999671299 97220304 913869353 116290587 214403973 854953571 936623163 275423846 636802247 101554553 884936222 507030735 934697604 662600604 895593066 1320828 738789701 553533659 801035004 542855213 882591414 506830683 916556803 964750579 990979048 493782157 543845644 355683214 513637479 881938396 931666190 715356324 723802753 33190438 617156576 99592720 865785715 708429252 927405405 507013704 967341882 34983617 590872716 451855143 595603990 572439880 933022054 344790293 723870097 261367013 462551703 800475654 855408902 850042566 854486411 548297445 651227265 567297113 872667226 388024815 925626245 98261830 167707445 322391998 417016521 671471350 772831657 393552112 554296835 618836880 743349297 975901573 993155871 794636354 810894922 376692813 607454173 475356919 661958140 755662497 782339673 386063789 804256343 132135248 615242346 69353509 326030564 628999284 760879426 413641020 475848094 13617631 115656159 787819680 802327920 351819944 361595718 871051082 925079442 964230186 967835565 46368285 310764470 448015067 875039895 900282979 961176218 614321448 894459457 136258854 700228393 653114481 835682547 750977822 924118716 234166543 641528972 316887211 936312008 198033454 965377225 983545670 994125878 109360556 939172004 746404240 999837514 572926409 815923098 151000885 757434849 751653877 991039172 79429847 83150952 859906795 959458548 35415399 355998152 317186394 716632310 834170266 915226708 435307162 906767896 227143043 598240796 947184785 978938451 253074313 617254954 361269998 536485766 915954223 957595229 532469021 837427233 649942686 861439939 390329453 588152965 896564835 969349274 174648419 674955418 677807312 860479087 346692444 764474876 123760156 928368958 936087663 976813483 426167765 541150890 516700566 671654430 277706565 483657766 730344788 740516752 593810533 870484237 643240474 932193713 132131846 939532741 721193863 829225761 707567576 903761686 356683273 424905480 897001762 903565303 34419008 973324858 168737538 497935480 375382757 633371970 818171772 871960590 880631284 974910249 59672648 859979983 712215628 748866196 188116933 494520756 249724772 918453375 918440307 958199395 147425300 947177696 919581320 995178015 448960317 811096473 796552576 890792400 190056787 679199840 413022432 493807031 958434140 970250864 244285553 681024394 902047777 926691408 55508228 950046752 971109104 997787525 443876157 769977945 348547286 585797486 449095935 877443053 361231730 573941586 121876854 693807564 751320033 821916389 950752151 987393673 459681939 692128929 631175953 724892926 326854002 387643909 744556190 929639735 204873232 455517709 859443896 971734301 506552282 706356988 31951943 36823104 286278627 425348013 786038964 787232794 411686055 685420194 332525231 390645883 968229943 974835302 34202693 412665614 770352732 996320988 212117233 958484887 183166489 462074027 907566944 950337275 666067414 747069446 897167231 960295177 452944797 464176177 824096220 955739390 32881976 774299899 362677933 698393173 768364524 918365631 942056813 967927258 27843980 662126234 477695996 627413414 528972222 881881200 152771044 868293719 497221171 585273190 824453215 976059968 364061919 736157736 418864746 486672233 259804718 762523720 803408891 995569542 322039958 760726054 224040407 224195179 744487801 760720148 731099856 789142630 981419218 999741529 152193862 517835608 521748729 895605404 652733973 845647506 153051439 730191928 951542979 969285590 492076162 767011789 337566319 713346317 915595839 968975502 491504636 809282680 512949571 967999664 512656278 964605806 848517388 889114479 791732468 861140175 193297251 276409395 802702188 881805226 523999747 669704779 787786029 980124362 170058572 648204892 166110360 570659754 318656020 988479010 866843219 968682356 580930448 814324212 389550814 716463073 372105602 923207482 663842134 977146857 701977657 743385671 427822556 487354756 555745421 779023426 153106215 433530022 442163835 789046880 463094316 779654511 617044878 776157146 83741521 895813495 275223196 705409437 2183952 633806261 877061842 877570627 571970425 874791352 596708914 761600960 166977089 402969966 772606839 850931129 267888893 672902943 909482082 945975845 207775150 737456066 989352068 996086497 373421844 531178419 942694373 953545221 636609175 913056206 453690838 787099848 252928606 954698989 886229919 985502635 450399667 835798480 159731840 224650173 250775758 391171268 463710188 520601529 491340019 599188516 728709462 954602611 812486950 987470665 664984419 830957124 651612094 733876924 422653777 468533741 570336047 971785009 802268176 807900903 222957253 860305233 377003047 386842727 33630879 142701422 972057626 982036067 790773353 906117295 24107650 574903138 972954274 984099993 59831727 89097658 58117463 196462328 823637236 898658578 244043554 959696688 165651943 816575407 473000223 569384965 275087374 894819723 367340060 585288135 218726967 580991011 284509831 297138850 41597401 560220924 466230887 532134508 512773397 797845663 155282219 799038648 654664777 854935635 394178365 484621319 712342849 918612087 507642136 890922225 693421800 874100234 731551755 902326738 780481610 833205386 70109477 98430644 316000757 724813934 293302182 705220578 361221656 496722932 732252006 957736290 315194068 448483435 398550538 706296785 913304204 936484310 192525549 750087921 563235647 795619380 874189236 937986260 4667567 329956389 253075180 744185923 406141123 973745565 960959388 961483504 349465844 984239586 926634393 979190119 925145513 953999606 452431086 988991487 45605852 986253610 175993473 548223099 496471728 696159988 547909514 701834815 422126924 652146615 736727960 975952777 18189623 363404003 976476475 995208272 71284060 440301496 807650354 923171982 526872887 625248371 394272926 772241561 939929374 940820276 467636066 950216832 77974612 171406104 820565331 943890599 428645806 432999822 352456025 923781066 319358428 770468436 757955239 886888196 598400658 734557327 35734706 232925523 405888272 976676283 590641749 752457123 403531789 637750279 379061017 738409216 782114636 857658623 309068754 675719704 187875872 469877620 482476102 885513039 993261049 995752987 505332733 848414737 527358032 873391602 133256812 828684706 228039974 609266376 405799752 729101337 113057383 999142960 579060206 738490121 233166486 938580931 250873998 535682847 245311979 580425348 542000803 888043390 244750794 252298471 753008925 833974283 789711159 949689449 727082081 832914196 53715281 126167738 887884085 996010726 128165344 159070407 423987188 739506916 12804711 844642958 11614818 392226593 676188907 842885061 963339356 965943411 355534219 688690158 63379650 818080868 329145800 380432290 791197368 865627811 81754286 635746833 520496656 525669398 680690884 830976685 16534077 758929108 254925323 717659793 304485989 780119446 612710236 854910353 222266897 427973724 847726758 904468525 995748414 995825512 60345223 385292879 840656415 972971419 751399537 759698428 279324686 485460591 911617320 936743833 563988973 644130481 391316555 424489617 645410128 772752723 637364821 681126238 430692972 891432363 221633552 953201790 760343140 905570294 538597920 614363422 115945462 723847528 195356378 207801134 598421496 715045168 458365955 966458615 762716358 843638192 337634935 893243808 612054314 680366490 84063041 294964105 949767101 993999060 656689413 810545051 192848888 237156364 129479571 701346261 102874616 283823882 695959678 751743994 507304159 662735693 638921905 709723166 921664409 950691230 294447814 497017543 751925683 775436716 134916215 885105158 545367276 724252281 326275776 353383319 302754787 359849660 576738870 595802878 7985 653829562 817074795 961272900 459810421 615639962 103120085 701654601 388119678 949055306 623998044 834526270 136941496 359206691 515390872 563352220 993439895 997446975 395784024 467644187 162852385 499275604 580130130 900930799 801146923 808292969 124587683 211879477 439360100 465530639 244254422 522839039 919508735 982692751 195841758 908818742 961624595 979990213 144459003 810736411 729411815 991664484 11314377 320350076 212966406 894849885 703079553 934550419 437017191 788412797 450681476 598923761 540989543 679320844 988246557 991434538 138598410 651324372 345716139 881545113 866036762 971506175 904583818 954874951 148530551 879602255 868511193 875908917 37758477 336947698 190039563 462901741 101506075 129664858 144788549 367049194 35838857 495937693 92456053 234562410 145447430 658885161 140899320 844909730 272577801 338173461 571747467 917013531 391684495 505370987 767815128 918123540 17532557 823956527 964118553 980381208 894229493 903527377 696974683 772683865 918265539 985497978 291732545 954741164 747803342 971902825 921977130 940664764 144384624 203499910 223389805 398458838 803695799 854161118 535038594 856597975 911961035 974077951 539109560 863096315 692677991 839976727 336972598 353729670 435089567 840486872 413124319 936778972 954221414 981628840 523693863 712006303 384745005 867739416 31454689 843785419 529343230 931986400 516119967 958517635 176409392 655197942 572166062 811350830 757581463 774012448 762930802 909987518 965333936 985204618 489341408 557573525 717422937 976721517 37920282 230309783 816095821 961295218 481742258 953507261 120622565 322529548 690135379 788284276 26308868 553910394 343569425 380229712 638090689 715411470 408888132 511990197 802179674 816639278 871614580 970202369 639971207 733146588 37619851 611904456 964831401 989706833 463940919 710221497 923592138 947142955 443248839 741663149 901594762 912056477 412198540 964192587 887159462 989106153 117442696 610792570 753192772 848906958 261407240 964082235 638184996 777235548 758248932 910576612 922055630 929234030 381618662 598539038 872380564 891896185 609404237 854595586 544767497 962705572 230381827 296816360 575704995 968810146 83681487 903574868 731495077 836599025 114820000 547168944 624963026 907941158 877082773 964869951 330917051 935570494 926913449 932541452 811136570 890200565 133666443 807335175 602577655 748172573 831271528 835372158 489953631 731171486 968231064 969261707 316225236 622881059 125141009 294378228 248048268 723171304 956233252 958253002 486685108 868104661 311708664 346843752 154456265 654601235 401641926 739626677 480529178 884108484 32804333 892375471 116223284 419824550 599733297 797215364 598413841 726875282 246926967 960131453 972635890 980485916 529273310 568374790 783420801 822958327 931414179 959505440 576297947 590200044 323336506 997659343 242591787 590924163 636591512 985218874 493028801 692896368 594829181 753426048 5632055 105955173 219470511 280511766 243047707 561373214 113084757 985578726 517519067 875024794 246449612 763579171 406885715 935990203 538331806 599673818 385578899 782361594 878051525 951672585 485755358 688307673 987565778 995471820 596420359 992658704 371702378 506353936 4706849 763445371 529983775 735108708 838290092 863658386 920403003 971855132 532543108 628161544 189865173 478556916 640631761 758710504 618670040 849303865 206171521 492258748 598181009 951774990 854626190 905327043 972468598 979623462 509719317 728929504 585788480 766922695 108121074 865167875 141866867 741350994 36717218 672877099 553630469 807410296 732844778 891423001 197551847 482043057 460674678 797580235 534833810 807664452 852729454 948003547 875916298 950294666 23848039 490776266 213137609 643038044 572598188 840367259 763549011 782069663 292260314 960071465 768400644 882895175 91200641 163702051 751659888 832894429 959690409 971662954 546065135 836838111 420314994 447832643 43197174 923143750 582236123 777833614 668101139 834996983 673553600 962710752 103247497 227789259 908067460 963195281 7093395 293189415 827581551 914876630 511201080 783063915 292427379 816726249 311101832 348127518 512062720 621300794 521743684 861528303 586883981 719660681 289521102 377360964 161404308 959804873 288836293 495234993 775284358 817414219 53868870 650730601 571058116 750771472 795375859 954434092 395790869 464851394 390521993 945764697 617435346 934963979 245711505 447948738 612480082 667547845 140412133 433631958 98852112 740661966 851761416 905580940 122373014 821494426 248818115 991787490 336214828 604162080 62468043 185742135 232610610 353669464 685371641 921762067 181440001 207477563 859402804 974422454 131244651 203952047 112224756 354657175 166193115 193390409 78726859 169004137 929123534 959236536 399349817 865994624 515897439 828337983 270292167 847614389 452733757 936411918 845292827 905026199 864897763 936505820 380356461 587210630 546278979 855999677 357893852 662130362 59236222 352549574 413378202 699171631 94167613 785534418 976671997 980193749 812216773 846410592 702599104 921331911 563472782 892847361 36589186 970907040 331938942 874754962 730714207 763500585 261056460 548830700 534325077 729150071 994974813 999354192 627496983 701298857 111098370 253633362 707651551 865810341 957053473 997566835 217921121 661925672 742078086 789649185 610444174 874090924 625719073 688155513 291514555 410279663 509636853 510377352 357204526 690159033 478076291 978650000 419785875 807160182 199586308 262133894 389577653 427876897 19318830 753017572 87721102 310302018 796414334 898095940 794383679 909041534 496052903 717848806 963915533 983195185 878468066 956161634 909554745 987529040 338524375 935210978 532777770 855161653 879308530 992452466 848439117 993569193 778537533 897492529 671674049 792812209 25550052 924858339 299514309 869858134 214678721 979166757 718316565 893913204 97152419 150057601 32738075 590529075 366041607 802757447 92125782 875511253 747811703 936428954 984848177 989129652 622372801 936657119 699663474 989747648 594873550 756819346 526441587 778815033 527409 567615556 637622581 875784021 882370945 890555138 399805945 745966110 109707276 917445203 928544757 930905212 353790801 543905967 173362507 717710777 193147519 781149796 414169560 962648219 979528403 996284850 588965525 749951977 993021284 998038424 548281235 828716091 306636784 635832165 487836529 812705281 828313229 871538396 392554142 506074456 854153092 855119939 500871091 698048333 1001160 958690381 618899941 866331578 904279521 949411868 611577915 979935932 461603756 598206900 643267626 974464795 832703565 874236820 70867776 96913521 583342630 966052618 910113391 972267211 443878950 745894407 519725341 571773043 650251970 936588732 848287902 900308266 677389669 760963972 629478448 946398561 5675978 698870751 820244651 980549751 506030025 652102694 283187621 881493587 772144894 875774105 897308455 965322661 95213654 940065098 634544086 666601503 168684088 839995400 346562313 974384568 399504347 904737457 788462486 871504188 504225948 535824807 214455803 920492461 532850108 907675926 81284765 660277675 96603714 287309169 598838960 717811341 746425751 988567438 261236499 844706229 960958333 995712114 471800066 496260646 976467365 982412510 414588407 754584998 474508044 594430558 621156477 993284166 919998871 993432021 121781538 494872002 590016055 623917877 832944309 911738798 827398063 918408762 361985396 544933829 671970960 730939541 847894323 953859216 904528470 958508428 537673525 750164080 216200623 222314282 135778341 600381668 946028754 978812973 467611749 496077353 772743 27686263 699639551 709667676 762607682 878553912 809571324 949381069 591350749 728516065 552345406 553758690 538721317 776491806 870958296 958621258 509443486 678787535 875652409 986822112 677941907 899711591 914742469 967398622 48097764 175728661 751671310 891669188 506740005 719487860 276160411 833282521 910335478 969491872 33320279 161557941 45575185 578856335 599075760 875039892 540145336 861162123 840671240 895610683 464619238 618792952 975071521 979445837 902786513 909735439 386179690 622580444 260762602 964537487 224832259 735498943 887353907 911274115 679393993 983631842 151972539 995035023 196308527 318079514 600144805 741883027 805431292 837826327 623358132 735759166 46831793 765538115 254883840 874646358 883410486 888814532 933989330 940121177 183367116 358083625 911615129 980461056 303030129 991800074 880843963 915663953 322463335 586368681 312564459 998427377 436784537 842094075 99777153 857363275 921987208 970517190 918881000 953726195 462728656 924075003 368245720 917622305 988337338 989866942 687979279 800007173 101594693 587187650 105101540 151673646 222443813 836517646 23980055 640905891 337922372 985665539 763730212 959616902 533234987 560623350 305675881 460308094 511278117 561321233 445676523 566397882 338173511 905624520 925709362 928224899 390082004 841456594 505567528 952197373 851869718 901130719 900848243 994270125 31707913 736419963 878858649 886336264 510553893 815097569 243557575 583259823 318346661 544691119 557171762 677948738 140080407 669978475 291657273 359943256 369483796 967538616 834816010 873566509 115558794 172582713 953264172 971639001 256007667 393823825 513939103 936346589 525807581 556365971 433669040 741642094 356130568 883999490 159008836 743027719 348282223 869084518 789829897 968797997 712180045 807317040 755944735 878540014 187875326 710995506 294596422 317387468 451511481 671829047 146935556 363045055 5341265 870690613 928725891 961930775 335458386 434183167 994356381 996932166 333228805 349482928 962386810 966509388 974264522 980438970 925703126 950846813 571830048 865665254 283283621 393815000 270534013 513235290 42997103 881535037 914428562 960123348 597848601 927352670 787414786 870525321 598117307 918127417 142353858 256845278 228293492 463806151 356142250 627664597 809479637 814953859 904204464 984591858 949345038 998629580 218714655 720502428 150208303 246987156 488589451 634970813 813980719 923999407 242253011 464073212 403791106 699142090 631636946 879139475 969259798 992942126 172317394 932380849 959637576 973297775 336220970 426117841 68159645 670010046 491862003 621104412 283189202 786310968 947933033 982900624 941843052 964958937 324554226 707360012 464818205 657234593 349134299 989636215 869481652 993345486 248243691 404730357 933503052 941738936 861759762 989016262 142757638 430721733 551341541 721383833 72908686 606403239 743988416 746320905 954232336 970936185 986505639 997140978 528550648 980081646 395791892 408222069 825668791 917898933 535883592 707692577 147182084 383890739 208003815 327179613 891758802 967338601 710219620 721412004 727112592 871700524 953659770 979676075 789721801 906443642 772691120 935790955 127313195 705289663 216304545 991877122 803827875 863160076 506142431 576180722 195708464 609136021 168730059 588175650 112865210 407927021 937853732 947096613 388018639 868482391 567106590 700538745 283628236 679844922 378125661 549026717 70533417 394542488 340902896 342383091 199313320 978859474 905015817 947606702 44452800 198962910 38610998 543596180 464871106 877812996 44751513 325317214 194275000 804317201 838800166 963181474 437912677 822234546 772952802 997908381 290147229 511615490 408357333 962289171 128827372 449908793 781728421 969682161 698757526 699399969 732219793 954904903 951820727 999992838 85907053 753954785 413386556 901472450 272949112 762620638 779783944 862189693 141076104 896734275 136106110 561433032 106160404 872503166 786105742 943852426 155357729 449668052 466022330 537907702 918679471 957713733 652301337 706537621 847844611 892893026 640781029 834787811 460149873 764769439 355169792 826702179 110449977 562865850 121365385 287491504 845260750 881811875 238842922 928952929 350853038 395319925 273427763 964535358 942389877 947609662 471981606 865584466 199526450 240178156 841964608 894410658 325555684 652507342 848134665 895584810 366966171 703647587 750550827 947859312 737820943 916430372 290081302 748006635 239102848 661743932 552697707 968277111 173983151 809940289 689416223 843270588 318547878 354235890 238468584 243807545 82279640 191347137 493738564 986036833 152428294 847314683 895635841 904645954 391493216 943477940 698893941 750535237 649692198 652319155 523843002 990907667 65512995 837179030 934789981 968921586 570874302 954812478 525815581 862785630 582213833 965989345 507181503 790607856 676992220 839943786 695067321 803608584 937920239 965284123 594904846 993668097 531069459 782015631 601007522 771742789 850972702 907696520 163246705 501606201 590371197 833593012 259790284 580861569 249834368 895589233 922403779 994972125 873209808 959574636 993040422 995747466 346260674 567890035 952623702 993717476 129897503 292691491 252472469 273337827 599936260 942560295 79095863 252244744 391576563 599815103 881321240 916044845 315209044 582692558 140473344 988167054 692842597 799210233 915282479 923112892 474656102 476547020 749529635 811352881 998813197 999980747 852594104 999510721 257926658 400958532 880683565 934478393 902351467 954249171 363463789 716642108 930147418 932589091 591834883 709411130 979810287 993781575 643042926 648360781 588273785 931957822 659038055 710221840 48864695 970677274 617771498 791263391 665851252 975190407 103320358 772786864 282877993 595293146 952171099 978920094 756803949 843069268 797203613 868846193 213116453 414422649 884645106 891082911 445456077 785374244 597458069 959833150 109008867 404613022 829572379 886147850 686011865 800131592 30988338 288174012 739537818 831689598 288349691 802819130 987541564 995991060 268163227 524441111 957819760 996332229 397758681 705138967 757014615 763339857 662559719 814716655 649591035 961752329 147081049 598186357 732523417 773112422 8730626 916694910 974026009 990024474 92650292 168485708 259866531 756658103 852708279 920962081 82183644 211875548 821566576 843565248 79002916 865075717 970268011 982781661 916363941 989868539 179333423 580428062 916314812 994959156 365041513 786045954 724422284 732419622 385600987 841741090 843622029 892971770 665279474 825843217 891446847 993355114 406968104 802513775 714168389 921907190 302259715 687601707 445760900 456293289 611031374 682365571 139977974 420300007 225021523 789858987 622517383 958717633 134289422 580797127 932925832 958053269 190687148 980610698 380625718 643022670 30345271 327127618 930231369 978385475 703853772 825756556 876361302 898802891 691760097 965910407 638295212 928898404 344383745 905345441 144645618 925968493 227822613 474118598 231597212 849519281 19279344 854349614 679288125 768530912 643827619 934672897 833914813 989207499 765121206 965350801 460540029 839560516 993871999 998725923 885476221 932592129 199011789 774961972 65064200 371987279 807707920 835370593 31253302 968646871 245430582 651248050 807652024 985716172 436941662 782907605 23975984 632097425 43654323 693589821 922408976 934260355 247592250 298990982 388892395 866505071 925534407 961940088 503875727 965096184 207342076 336006673 850826472 959516274 500770424 803120546 940718573 950377345 972971425 983268059 340435546 528581567 651795043 668605035 775004026 984938861 169926531 935960434 338087963 882147634 110261099 747328995 777059203 886085660 325852056 827718101 434802561 580767094 720805573 840902617 327885697 997826156 521863871 856782519 160481201 802970744 740541502 924856575 552543055 669904225 491095193 563293897 246227349 951647148 482264892 666074039 64469508 493722444 855363529 863055566 298655327 664010975 578928926 965621112 900646616 918014390 755369700 788874015 570166716 914203580 158899758 765459698 721021591 849247288 144662479 819532805 923184223 945180611 177496496 905523383 73193809 198918684 113448119 767718921 861037001 897837395 450491284 803428763 978706209 997458104 39877429 656163254 848943884 922160239 528071521 736156019 3404700 918562302 814149251 955783506 628963061 771445910 145232555 268430241 32654202 169075158 862128346 989003644 753163443 925235978 362185813 407751118 983510679 999521464 778112799 804959601 49558775 454767019 937756825 947655700 87732598 529261267 141533915 799861980 368403657 757618712 989526988 995081712 251468777 614249554 916620100 931281579 827071470 901798064 727267370 930779358 598601558 998913850 155269565 183480166 386701630 703545724 56047657 882989832 174230006 487524142 335979415 408776838 262130990 653475527 620800768 923291956 80188135 310332197 299572080 487157902 785813723 824520206 918272979 920114280 650160185 680587514 293149824 583193087 690722700 941380869 445535082 964160101 631438836 659813061 824975857 914753418 821671833 880413982 954598526 966668088 610402214 714471016 675888180 958875461 297826525 684667667 878978008 975825674 306029043 508551871 762525046 981450180 972540585 990280631 665764208 848308122 269087155 390979222 888066971 899720713 605608813 932012456 544644948 547640394 43493177 229717793 901174287 940542012 905233874 924306674 357590758 856336498 754775682 836707205 438207617 698859280 671092070 700164035 722664505 949883567 148432738 425559187 55179970 620872317 103773361 737531744 741051047 757118814 675029282 858138472 102981758 483417194 126671185 317809619 325628837 643813342 705397739 955835420 265141806 775434612 673375360 926146333 638232988 864803567 593975163 923136990 104425654 166309076 931357012 999755665 566142760 769970543 742722700 969981451 78892435 465172630 8664401 850241407 399418572 724925394 38044331 605672310 537455952 891484833 506226301 757667922 805234938 944778214 301886754 541078286 198896613 823644822 95372612 728814548 672958751 964191637 767545994 983178785 328307896 399594248 490950150 495459304 416117800 596711905 560704785 594625614 550773053 809808711 65369712 442751552 452720454 765689403 968370924 969252417 299189154 805000894 110472259 602363490 988332700 989036371 873937362 899698043 613381223 737709879 932635600 944348328 822513535 936839905 778959009 957597480 793480824 979598960 236744977 487258362 82442814 969838603 502270186 766861965 869567610 928709540 712734824 856943990 578525488 953524874 539063989 657614649 527037836 697348107 931135999 946216698 361815288 920232203 705580248 792883770 321341473 397293144 180122289 843043327 689250162 877509641 695521410 890410591 898847686 930927121 362230285 859471093 875265924 878640486 149858226 454085167 234169881 326423492 883071342 890660673 993437252 996305631 248887026 802165123 358729731 818531272 472775 572325457 426401442 494955859 526805900 809173421 866984411 941172621 214923366 969754419 850239065 926109547 923096201 946693236 529964695 633189190 265482428 317179093 522460384 737820915 842595407 941111996 70459217 735937592 58062744 974165739 456155806 531629331 861626725 901054680 768847877 898483765 54381761 98847581 284042315 305043667 483358003 875104951 73638518 298721561 872165693 933382826 817900428 878416117 933490629 941053932 257635034 278686974 602973052 858765794 362041458 921754755 634802115 702677332 904039651 904422733 807557647 950147375 693795655 956348611 769098332 939454507 436660577 623510407 367006144 399516205 45342424 131336545 460690327 544729764 19818090 150176138 763691745 908701318 120981099 441653272 333649436 470866870 204879163 424012599 260155149 391699762 928208416 973180004 84319594 674304656 162340821 423471950 362651681 946141441 58414819 168340793 135786413 331062321 708811308 786382414 942607484 969813933 162110576 636373946 972513834 973630475 491470634 777390836 282133178 653962026 175540895 240626842 617325457 659799806 740921375 948592328 11668129 850391807 832941964 869547500 108445309 300375541 542943470 581959006 94623069 456021597 460794971 687733133 341993716 421492801 181322867 893193017 253845177 592952665 163514580 529688238 645280145 833500920 588192201 659916292 525348189 531155188 501838583 531892608 286271874 702290309 81696901 925491762 368662260 933459005 202275416 211538514 321209176 992393189 107070962 993523004 471307433 902607418 297858378 783217183 948186090 987329132 825100782 936765522 539682407 931569700 992959952 997736829 659498881 979988423 674810741 792455033 195675253 574520471 96966999 883526897 791859416 973570110 366654870 750355586 873309805 891487858 463590258 664627879 996993772 997611188 816062780 846572153 248059834 668922817 799891004 969024303 994907787 998704248 327308873 859947717 794127906 808359935 91252367 859880109 443580147 899110555 204826 792675589 173308698 738508951 737224320 948990322 679299429 935615104 385583101 706678846 951986994 954209277 655277343 662305150 928781360 972951609 516632373 845063771 157489496 654644324 650960400 944778865 43917566 858528089 693859370 919550713 722528139 776808322 21064117 872858903 249249026 616973560 746121058 940573848 621180493 937465385 156786696 598827050 716503089 906475757 575842075 787745577 480125632 985442704 812445126 875709426 590630566 882499889 483404561 611813663 221772221 371338721 866900122 936171027 129632450 422959468 463119448 618952704 476143374 846721871 627478507 838134979 855500426 993571700 580212748 860895540 960789139 974737320 821783419 995337081 355972900 918340143 615057666 976868337 126476542 650701071 221336834 608127315 54202650 789330200 981724735 988313194 601054830 844047340 499463674 896581560 6863135 815342534 16203527 994525189 597564694 614460234 90815923 258823886 509038679 685230798 102190948 188626829 152478634 283580519 67316993 68288497 467953993 820793609 289779132 998871212 955680391 985465474 946608258 970730768 709069262 759923057 104356607 545105779 30568898 34597549 925410662 997407403 149294025 283803051 204271035 243385102 418563852 697012616 973258095 991671209 805089688 842706436 652923414 973248514 515704439 616389095 253339446 592768250 934138096 951495531 235580844 980641759 306400271 945193764 215882945 595405051 957542662 972906157 108842257 158492664 698914644 894839542 182437579 688325632 960988209 968858620 289241868 449159813 721327509 894728399 534914499 939013102 347360205 567713220 349169259 454412139 793360597 797327140 764784642 779846045 449151868 700435008 783763027 788358509 457976049 559685429 62810020 787858461 819017473 996011183 983779216 999134016 441853647 735316413 807308027 999434059 644725214 783261746 538082808 735393887 731189307 880769760 259493247 930422432 144656266 940438906 800634215 801335230 941002930 991701837 184288072 666013339 727862815 857996120 365038893 905160720 158393772 671581349 616775338 823740360 871076566 966547141 82764708 438714544 454813512 665249885 618465832 682249969 817230627 955995047 253840115 348387242 360096381 675448400 255388026 488374339 143179954 609206014 255365399 387449146 649039818 698880028 969678389 989056529 598374199 629267334 294194641 760599085 154584273 210573826 275267789 469673633 202680318 224756754 814622465 931680768 251964033 403970818 688236289 694430786 441977920 776282836 766155613 821239063 374026538 548993702 896276428 995697224 438200965 694135496 410068919 606439811 25186768 700614370 530621219 941541377 635190822 638519192 833314499 873939453 197916151 604627721 798977016 820479756 99677804 557367093 395185040 665178868 181036331 730130974 253804907 280671156 651184469 929040408 732480409 834480273 945868303 958627659 318919985 602018820 51225523 914257142 484764325 792496666 697360273 918079566 83876921 594215665 550082617 561102694 759147360 882687820 646556821 707731423 541724677 809883746 840178280 926605213 54574833 797585812 768685597 881009396 625468227 754627220 574255862 634078074 627527497 849050146 318486253 734271016 681026705 892083209 114151151 179163089 243160341 532470010 939349014 974765769 719676052 723058293 141883769 410525879 160297835 335292833 992426692 999048211 818040653 877004388 534626022 605133933 91860631 580203467 907791826 909882836 354192874 448264189 542809073 782267797 865714960 992902901 7995697 693646649 968066372 981242063 443522823 632973262 153889413 439975166 874260420 914962748 38671617 760876793 518008684 612721436 868262901 955724329 542637408 570938275 602172046 985796537 25028727 854614072 543345879 806261322 909692085 968774768 179780351 924390174 758394730 905208492 744444056 866670126 949899198 974118825 387935595 475173238 679357670 953385882 955231660 979717833 495815308 762923522 371379175 847671163 370780331 498646389 516556209 701334265 265937170 475550501 79952135 512213544 435344647 769898652 757561077 966861130 15227060 777007270 239503097 729655482 63459949 761689522 523081969 828256237 221541104 317255412 288576623 659350574 283511961 399333265 731106533 802701271 642895287 737294844 120117501 365403242 649914799 714698391 785513086 974938854 412344185 814396679 888472621 934482056 875721151 963937351 782475246 963033632 420978134 621060932 696314794 755737455 521133567 854070998 413167053 952290786 615814915 827665340 415764774 590780237 843819284 846810658 174738869 987785946 284261072 831652981 374380892 809957017 626693810 905870341 280392492 422500322 255346087 856337328 251378767 396287363 353148807 995717994 693889691 695874656 588316273 757720874 14046828 278093048 184624459 563100249 634866829 667231413 645757017 695977797 524872742 917795988 6573100 238284635 627465424 734437302 943107641 959467855 278401217 430219168 933983175 980935223 919536901 959006771 418835260 875364700 153187141 203643705 246615047 890817839 720584543 987368980 212338729 919616452 314465320 940180937 407772712 417052418 202635029 293197979 722958275 902619632 541994379 807924276 135300950 787151459 475525276 613786134 63988548 172224335 570051781 984045913 818181293 831284744 292056869 979430270 323028829 989036416 972346708 973081702 363160104 410818380 58124933 816937840 876316267 977549321 699975480 731573230 880226041 939550978 234807782 591945458 200204036 392302444 721327009 970627848 637674414 715234317 629237197 807179048 404673131 546808911 997119438 997979936 880303579 983713950 206048411 496136692 485972129 749529790 633572002 752005210 87249620 398739190 738874500 842931586 324993357 483367729 734553221 930050825 630615809 989629397 756155311 862399845 592963846 663293984 553566527 717307714 417116053 915077725 517245069 933801573 336829264 379422784 380619537 702240148 535441362 953159817 52194303 279800717 251288128 866457272 440825570 594950845 537785792 952535627 13705489 734329701 458816276 564340789 22366641 185438347 915665584 990947858 680789278 929924363 796147407 812016914 878280254 911650027 705802291 931760990 132728565 564309981 102604625 914685327 172773902 620812569 789331802 952796385 352688180 478147694 74811022 356126189 116484238 640290134 982040132 995489328 535446129 680618084 8396374 454757992 46793118 538078653 14434518 39217694 678526716 786642840 533992624 618151146 303446856 577029841 921769616 978224188 647079007 770698663 189323735 822373682 167551874 451370038 160723796 412134336 489365865 575467563 790198472 974491604 869812944 883833978 360887605 893456683 827250622 838007455 26262856 465861399 817833976 922190333 29014661 606986425 93294353 961216380 791355187 954969209 810360631 833208219 465544361 916769608 23452561 320332213 91651286 534583022 911519959 916643007 900369326 978343715 62312366 934474856 265582830 931960911 54433023 310707073 410290227 482663665 762474846 858926907 281117942 940004168 596915614 838983714 364389818 700018124 297108751 762715411 549778301 869252304 69005044 273752273 228267666 516426614 683603459 925492287 817641767 983585736 763053358 807308315 242806885 513710558 490909626 800519512 518624044 746494418 652608205 898428902 992978558 994041774 588571615 915330563 777203701 837378612 995641831 997091367 114699212 507919974 321283016 793853347 107857859 961998491 112441722 520820124 203099880 792097736 660870207 676238473 280116442 928065859 829299222 882387553 951078090 958602915 998733335 999941115 910003918 957727200 139841368 664104625 794669494 977259611 876629858 990489067 54337504 792454353 376673828 921844061 639342536 956236881 444425062 664486711 418345776 490992052 229124129 741250079 834747441 955075020 360036495 450025513 69203572 250236889 446331859 976654301 745908438 976884743 99761979 506801191 667180991 918140762 577216248 955143963 895850143 980724717 304281159 563042076 124405735 866994365 691542619 913255859 119524956 308956376 579189059 928663424 174701116 772407793 260330757 847414361 748385670 801957133 52217276 635131638 382179258 665692263 432149937 842070611 345655917 470682788 846718862 866045013 971615588 985140354 19906125 766359495 226408177 297526992 10246013 761959145 855934942 959264372 729454931 742810504 670967925 702623245 461418873 559408312 1076235 603302484 786951487 867667050 453498243 737483104 784854390 876823987 146569449 652194594 870526496 892396511 324714115 829279530 967589968 973848078 14688670 649607057 870781753 985066586 108949709 289838210 141998639 908063436 492052666 861675788 682803885 940870437 938695947 987387675 971208070 991745678 421911908 710604157 265172204 709913145 289452518 516534260 297669594 668193409 967426874 991758654 557904415 992469759 735187822 836310329 712395720 957659655 152395681 421686433 392171112 506033952 287973768 938023704 19052314 395552897 922201633 939773517 52057575 116144548 656274625 864265765 734988914 762140020 376678503 753893800 741502475 934700156 691112523 869077503 925695562 936151057 416033191 907105302 363994075 895409078 960267499 984213284 594537310 614862370 464212369 965990871 910711539 936473497 326409081 808330806 915565619 948284133 797657284 935271804 418874649 786560484 137707932 367912797 914982198 977506977 548909359 945531108 263278997 885341354 510268490 634139424 930092526 948772333 80807309 502724026 379583686 583492310 664828159 989881629 717528255 877333403 871031689 943706226 831528028 958983945 609039263 810748445 505463805 985478025 193492450 233395924 61697872 253618177 311804080 322261371 246614982 370808848 740062592 980947265 406874956 748904758 162002337 376586138 949805812 956936785 764330997 775625756 565976983 755592304 811379829 859265416 956371561 982993739 898342309 938765820 299864614 586506113 485939494 692129493 290226468 420199262 604246175 864078508 251399040 512619130 32881956 90245851 478062636 540225718 503015821 678115592 375929161 753060778 25903398 481872908 847675392 982814715 385091643 984108726 176900613 741136999 532823037 697845480 137864640 436550017 230997307 474250652 727265391 992831844 712793963 936664881 842011644 941632593 618694994 770126216 716239510 819771757 461877715 829339563 601452625 632164288 658416043 719749361 66086132 917871259 317828911 685895534 629296663 991821142 309739327 977966904 115151610 931083692 509216105 877693155 224685060 249742878 776899076 993340616 673953370 717198211 898695269 995461855 72767610 752847319 54550296 137166802 385779068 637695688 825897217 947733460 142450829 226185064 71851953 130486877 493232019 556502912 909869591 916047390 401141042 585114365 359932268 901857634 69628823 209009176 143968980 291787503 522449532 529750922 615496669 669092647 367640957 926782611 284716248 409583143 429621791 640796613 114345468 643327901 275770718 340574472 193979199 522055310 102011540 497750227 3058841 69032126 709111730 726094208 980915173 981494888 148089162 806064716 157940011 776172168 423844668 752290047 370867388 377867079 696760650 811474977 158311134 323322516 63621649 596844345 602844048 624202138 343535069 502870658 292777782 458171057 714744502 956228361 974620106 992392474 476117505 871234376 364263811 648617570 59137492 319731231 771034300 828385671 845180522 848477095 202177605 340314064 670265526 802143569 882718350 966676584 192344649 611548038 980107227 988128984 404620147 648837204 166704046 346728889 323071788 594789807 486822629 503754643 8471694 55733457 625624100 785065426 346625903 531839838 825345358 903551057 349468261 758037246 42963566 224438686 279856243 814644695 378246504 877984127 294082081 505340732 293328645 308457759 383126073 506439201 200483152 633543255 50849067 227614069 407435851 913930459 548261537 673420914 711108616 856085416 289547568 942941876 94355595 786590284 418114178 865300283 367044416 893822637 430760581 849353087 867736858 980993942 366519585 646413366 862802621 957417515 140586050 843610144 557316697 951758576 747628977 831899181 939896299 946926424 242421029 405164426 668686320 672800470 780130506 804370579 77183630 536224029 127520388 875147643 189552853 371916703 506214098 725261542 894940546 944387141 574046570 974499835 343100970 576587296 208456567 260535213 580963449 584088354 45102527 646530881 322637672 733181632 461398281 747177650 431640705 763765410 110552961 388864618 937867057 959281033 463535580 526620904 164833518 899172762 972602423 987042740 850097835 887880849 671284415 808830709 122545434 390846248 192638760 453212513 671262777 920999408 388508600 601091556 947106667 998564855 616822114 728251544 445626657 717298536 393179391 655177810 389310050 650887244 14523454 429564632 221253803 964128584 778714930 926933686 777066230 863131327 113749356 793156920 6458419 846341051 818799635 923837784 900421903 957146835 97063273 742209332 827213751 853895270 706140928 987149609 929215227 978280206 89361536 461685979 52909211 827601737 983518006 993285268 75694820 588236747 242486268 761642717 804945534 891899020 221364935 333275404 817814861 954447998 559853073 978899120 526017483 797875443 351243686 764637524 19534124 762658455 856377713 956422338 344921109 648081757 589425432 767983368 622377039 814613124 705174712 832357195 110330169 355732972 784746379 824666670 128325933 928854117 604970026 627863916 947851726 972519065 64976231 880070480 585809079 598640396 797698588 855178140 161619871 377712873 608740734 954779766 539029278 569399476 810708920 989998296 399744992 900770025 134082236 208934366 678006363 696019430 177252955 704869614 987730279 996353886 376636566 607444429 511352776 802498621 331214031 796911620 691552369 833991984 725230431 894036718 569374699 720653626 378390076 515712617 576690702 841076001 96828791 627167961 846352400 906313584 677701675 738608209 135570737 583417224 352680373 457832779 789874098 822231006 472849251 692844618 228035826 966423508 974982139 998104589 308824271 796121164 320242870 947913721 651301559 787937808 535387192 591756038 151093099 968224790 29905708 137892872 217478186 563646083 35279076 375907964 964337784 977953612 348014037 420160668 404576342 506961799 238237001 690894512 960896055 983866136 985864463 992592471 100431953 377616863 773270953 872226711 254963211 484123810 99061846 727281233 768722375 864859447 797134955 965070278 221913298 789037191 169339467 252276747 449468961 769971248 604173837 762729710 100751735 685603160 77787750 269252804 803733395 974195054 165532149 755669803 789017793 996658307 192306690 481989995 96772180 507729255 389401085 827334137 254725513 405390215 293471353 736122964 289910917 971096484 441622432 997496547 779275995 957856515 698167753 770054155 771130139 833372297 567787614 849268761 292499756 947907990 808088518 959472609 766622007 781461127 580659364 721463707 803898051 982222415 743706479 876337637 656803171 912868847 237697632 406061765 909423899 961331982 386288052 625636625 311153259 460553239 527383524 961013488 922185996 957745719 424269560 460646699 337963121 850124005 450298146 830767105 498094403 926272701 726142646 779298147 904337710 937095561 356857073 517166788 125394941 549037521 937636609 962334850 406379988 768965617 782487880 969485873 892448004 980597481 620155265 835355415 179967251 572473282 988481087 992852958 964408365 987129969 530318525 842116646 628215239 999200612 980779674 991203843 399368762 580741237 554103298 872835698 171394236 774325926 273224946 512479097 596524730 939703030 310913177 652721347 102307732 187052138 948845560 992264227 866438985 985983594 572332925 863323241 149247193 737865545 921572230 963644467 224801633 662406503 689632663 948057869 511933679 982251754 109711345 449274733 480339742 734111157 520420997 818658611 407093437 955698373 201338387 634984781 748989790 976677648 329489558 512021523 36232047 842498896 533875848 578653961 267242980 585268300 513572351 952642613 809773026 907932637 32079641 478971135 336768240 812862714 726626979 817985480 758290592 884764852 825463296 842289487 66755267 836339230 702118363 934531565 178948749 458553362 845059095 964929096 760833603 852207788 505919504 781927884 149021300 174690343 902652230 986080608 4741757 316022502 610335050 917078753 600682099 879957415 94009457 374003824 220525982 654707598 487407231 533975954 195716979 595580620 971722029 973599711 93139126 841385041 415340632 799514948 115620363 445129193 465167176 796174968 109414154 635101654 349748869 705680670 819079709 898867478 185592735 283333534 878815294 908666307 164545235 689874602 12959458 839859587 864335842 880214818 615063329 907348941 790728336 828372642 494720688 897946300 310109254 390501257 741491690 980249112 390864978 819345069 235664796 484514071 67029652 143208284 68758594 620802158 680541325 790529099 264922843 873462244 676727233 828028135 154899175 350470495 324326719 681031513 56329130 138631999 412593050 833534243 961531782 994455775 207850501 632954260 670520641 913157568 179100128 488521434 147399036 644720480 219358167 641536796 168588510 454893911 123979310 337003554 958284895 972284713 238302151 754080668 161285659 637377453 753297248 819113011 750763756 946632217 722753043 802942990 465271297 739105593 551035007 912943654 636630088 977303743 769085006 928308687 342387887 425017932 743663621 845443140 485710693 675448262 304506830 354563036 515355686 980693603 552481300 873688293 930657709 946372195 105035783 692562414 283340733 945852260 405994034 556232228 772894603 941140123 985291521 989248594 663931015 998996187 416654261 875332131 706078945 826064227 314899248 375104817 491695033 610542040 61804323 872804009 71461388 384121675 256603455 403601430 650934973 991922646 821323974 870801253 118621060 911003590 174410192 822772850 91431742 115168061 350505481 368311500 824137232 839756401 780449276 946571541 298997980 613370172 551245770 659692418 901827433 960400450 72716917 753881055 51888579 918755521 430496880 556584488 114323083 778312776 308216261 510130300 734952209 797607684 767358582 932186773 247488491 889147336 591875698 821515212 903560067 993637009 907769704 983877205 472544907 515562142 649523895 722532327 617832206 857309217 44225840 263913305 308283330 817296174 355578282 488132141 270365795 281191531 113267990 999013475 42151251 868209440 341785147 459240019 819709109 954255105 351190639 926287947 779089437 786927868 137640160 916085978 157797943 451146301 604350836 765599139 677010999 968029212 4788982 809013484 967852616 974593177 887902773 893374979 702959554 996931602 566966983 959073342 121985653 196519170 355229131 659563262 927324485 951490217 756149433 912087832 729825597 761586662 156900776 989986526 487057978 901008237 960285277 973852072 236775183 774439446 898340058 977122273 27336486 408060716 363370179 865657402 793111176 942699675 411574491 468224520 438125307 800099549 571326903 656465204 555870393 871202842 500967893 678965829 662405284 827738971 133871458 156217268 994881841 995526853 554581411 616970258 87876161 330709331 454829658 788519406 662433921 992658393 774625875 917653271 817855424 883841652 916632634 953000662 769117506 862960303 146327232 389409673 709758105 851756606 223502558 407509413 98457497 713505524 252420824 936380732 209822908 381248147 997615491 998211720 737940458 881825213 209324314 787167734 688766670 806768129 670105075 898040081 24080660 874474901 994677639 995499489 946196555 990684895 431553703 432595153 456189261 967629594 395031400 420963700 693418156 880164486 746237612 837253702 369873625 376125250 907578749 961781481 736270647 748929405 872278068 922304591 245832634 564080741 118173864 118699033 525286660 788492344 438769818 770977335 118775700 298568940 545445359 592441339 33280131 860785315 738654755 950915831 545750270 723036690 121802871 662171736 797269505 892387508 253000269 793009357 755219658 966236738 968385341 981317626 226339052 547945420 763394704 879054640 308768593 511453441 420446689 834455877 287476725 297905164 913532713 984139242 521723255 522417673 282440556 796818729 294118089 518915025 639661603 951034549 375883734 741963586 514634017 661283618 884659317 887975157 458140594 919552277 743027508 752599079 941557694 983984883 306791552 883128919 383797303 719837835 379631546 811795537 898480284 939336161 140368371 673893099 948084969 949697162 735804298 919196338 777727660 916484155 694183487 983906692 508369648 867676116 43118539 379793721 425574618 486032169 387913465 801128466 46493924 938898959 367962400 544403167 756995904 804809077 704559637 981736868 625568970 939124166 768810202 785588327 786023110 852774425 433578255 510029371 334738244 749914656 443102068 867792339 391037336 729166070 138263378 354867729 506717298 778205537 29641607 253463226 763537672 832112289 627763421 824336837 139178698 752976756 48373676 920199737 244435404 904339598 980471046 986261525 597522176 644549033 569177480 715531963 283508990 647202253 138748036 756403761 234277533 661129089 652919 788303429 517947958 980973411 19517335 706197671 415286093 913280827 869110664 909642018 853290818 920581935 76922965 472694873 577242289 960335064 936917349 963191605 296030729 409157194 64722210 222301860 565192374 885663231 907812114 976935882 541519149 790050296 330316056 423935028 623695217 914228146 532447055 989020399 13904416 545439208 232912920 357095690 463323299 983613271 573302816 913246793 846841012 936055689 147141705 719268443 451200061 693341056 251248346 563548790 994357135 997140138 758878982 973157215 135832450 186174575 50951548 231373969 476357950 494775358 821651681 879832727 538489498 694837556 583607366 933080215 44316276 711017049 258507502 537421296 451577838 529569111 481704423 520411148 319229725 900444351 682905314 968569729 505545067 674007921 326646359 904993132 350245168 423571916 272147285 916140397 877547295 971849971 376576537 520838775 285137692 732139388 899808086 905919028 430232626 688386050 780852055 891372639 111246786 564221179 527282209 826113289 456916648 723186906 321480509 653354636 150619628 714365652 528883394 595945015 602896000 985857725 444360694 463010192 124723718 851755378 178004803 327402677 549835803 733151167 170625035 172258634 669823858 718947087 539737555 549180226 914917626 925257733 577978327 884577550 287806978 437315662 639024019 976900300 832285213 852892362 57457347 557620381 455835403 885094354 162965338 259849531 688908909 708330418 117216360 717049402 998590952 999439085 895520610 900942952 187871558 453877225 938520471 974432728 456156303 601777834 497394252 855115979 226310867 854288852 630388910 974839349 119855358 606076389 243287926 451162670 577883005 661796405 293656984 570527224 270650383 981281407 971782799 986062613 590002324 917931998 365009473 606621959 751123717 979905898 156898473 197310294 769847366 906784213 926849207 936419075 733626532 796276383 99310313 998146385 148834372 933289192 404320413 896226093 388608875 480139116 850416325 867044720 404402024 421572583 431982555 848398469 582211461 592296753 723105103 740013082 348506130 926441538 982463742 991556983 140991033 849090764 571750840 908169477 128305149 571778492 91274885 511611367 849147809 936540069 14431920 756994574 44924270 907646998 803366603 832017833 71749930 706038291 162150180 761907718 316071181 953161546 385860555 555686123 763452540 992433503 787230801 881045503 871539884 943435190 438708814 519313584 723409076 920464451 667993211 883874742 327853074 865944202 620589403 663218361 48000637 629550439 37241545 743865492 249482862 804918586 693776308 798358863 892788031 971108623 941076035 965777823 853500820 958694246 83569904 199977855 876753260 998138649 351048966 415696534 825015635 925844777 632504133 928645648 934083858 987458381 294748092 493048285 896047207 987966567 690223735 805729770 187010379 556878006 453325573 891048322 359666113 726788971 985787891 993317579 92329983 835049997 475029225 580337901 131625602 254543989 686632685 774407778 358736573 713322088 746031957 999895168 743758413 824434779 352391146 872182751 724424732 846360336 285316353 529489851 694871572 920905865 272171980 978094423 845360811 871875459 219342929 890580913 284736456 983602306 237278436 839149547 595070480 618938973 43610643 796877138 221017196 763697958 453469688 569383517 309413680 788793926 55532893 319396909 695903201 715507769 841830365 928180487 752178512 932574792 730200602 816871903 106449350 190569744 884947360 968153050 657544220 929207674 279687933 446118459 361380810 588498836 89104127 865625209 992372345 997418261 985878450 998749767 969785641 992199005 998106308 999123040 89807445 892692314 382256859 478991586 315979224 612649415 963698437 971995407 19253653 748933724 610269729 667121097 849969454 992783231 45066830 633484435 933186939 962476357 348401154 679845178 555492733 939483554 997175619 997198263 717650716 766502907 383669660 929203582 442845681 716865614 374937337 420207903 697332065 988595867 94967555 766571618 416479 96058439 101582307 963851660 912911695 918263677 66054777 137841587 239810143 902802267 266022167 308077952 124288158 983825739 541790139 601362678 497372876 679354982 593730999 593904744 163702345 363891366 985378150 995075715 21300827 619419687 280098780 807294655 976999732 989516269 471369523 693137890 732467521 882192718 497090739 902694100 141843264 207438452 533667702 603565326 589613006 696217876 942158478 957056382 132391851 443592920 810034647 970160413 922599600 982562487 450534951 571361930 122515957 316625466 626312662 767461956 326324929 418195445 848439285 873765038 352763563 558442753 20136867 350421281 49717135 951201576 513250196 675266663 93523819 750819746 221065181 655735460 314178886 548063555 553352891 860516595 156969306 258253051 891664961 951687553 843753092 866442768 54698114 239497157 529599849 797090898 761170284 773048746 25418654 326755719 171369444 883741243 229233113 580420472 50433503 98212256 42188093 242372645 914111817 916053903 359234748 584181508 383368415 441638260 22509450 675178435 437484628 461048391 817299194 851366749 868199558 882531907 106847931 539581347 413751927 794741216 932175314 939484660 404823422 794942157 177458755 217595104 869714490 920639613 312661669 888593276 733651819 934285851 562492997 634487791 948557302 977262919 389159786 827568945 16443721 496074815 230453601 950407854 261480548 593053655 209637801 836794945 491392329 667081202 932818265 998271247 776228220 951767161 228136457 306324732 554206340 817225246 125908498 982901538 913885575 961272628 885881338 893690540 302370682 716984204 914118519 966298627 303595976 934647086 158918050 668521808 480844902 806699565 712217802 826848703 572496576 796285431 53417846 707793240 606238202 899705435 560771282 837028767 853840231 905401825 11202882 417999677 124267813 868844476 917970977 980477493 540536631 640785523 552983402 611165225 573243623 744609725 70613758 483066111 8142830 226209964 657982507 931498171 915223192 993132539 33417219 473823716 821464285 899618440 835989153 864153601 847036103 878246617 499867232 714359418 93779329 637229301 406698449 653983981 83767420 806271789 588922183 778540580 602932478 909344756 637199577 858128280 728295931 980672291 952884270 997824453 440040895 577190616 525186199 948623714 942940624 988250666 366188850 602480579 747004626 809230496 449695499 814800604 202872287 292374354 575195597 677595894 163073966 690166832 510814749 841520026 886915203 991527975 999819734 999985914 969345250 995456425 60185905 563304297 779581774 836454564 75247986 326160900 171468203 448086082 493267937 569473579 49423012 595897436 899972504 960967669 191287381 350638954 765340261 997829466 470025018 948059325 2504887 826317904 356026254 537988249 9799536 740287950 632226460 787764145 605883670 895915330 361619895 437556543 78317314 673212074 581230298 829000929 148905223 932333718 71842794 370038034 808571589 833471611 22624054 528215043 101289862 293036509 286526237 434313934 412724894 530226465 741111940 771874665 693035192 694636248 683088188 992117506 231023098 306054629 347587735 850144702 79131858 430724688 677281397 856200738 126275353 920048082 479104335 910706660 943565999 964319253 231485142 588433115 93595015 217689081 461409564 981153787 675949211 746051113 364666021 479146321 704464053 954238376 336954775 608972009 485448691 739883000 135324296 692913452 135341123 657367671 727515920 861289510 871496578 967365189 142256623 844215833 262823159 584455512 740651887 925857850 950495397 976139527 28461673 722883222 259944975 988464872 606315162 929403272 194161536 596521856 332038174 510448177 90774876 687717882 937680014 995502748 486372324 737976984 123392014 569734553 73708525 206401130 198067438 574525229 690441779 770586138 900566455 920251441 444473582 573117486 221688318 396961205 416785644 793453081 80942949 555677215 600060477 983272112 71099862 770326942 411521817 747629369 902263049 992169444 697640931 810765175 245227358 349655753 196504156 400587418 824039756 997218261 445023253 865971425 962473476 988639308 958179803 968631472 592117043 674553046 860349061 964706354 684260572 855521135 78174218 628111113 604155566 629860665 92483730 931964953 952580266 970410357 172189251 336096793 273515100 446530364 717997956 740518610 103736093 207544762 978603324 994323981 771593759 958541617 820262494 966506052 204288454 464818725 320725321 874343814 967463139 973775052 991111588 992374041 898044065 910413789 598379265 904792247 505357501 531832443 630392789 883719745 359735376 522374470 399007605 406891718 677115905 818993892 573218892 674903783 97461672 771952958 573354406 932613571 473488462 892829720 979746946 986713910 909786 533080270 996566742 997006556 923577070 930254442 149440505 542308234 965130297 998171661 386167792 680888484 400774852 917490797 824277867 935179697 21279541 498408408 735887018 747668767 868093036 972418750 771348273 977052368 822201222 944381607 377874286 620709184 600325517 622496303 439673218 520048878 154045117 610647455 117026817 706627192 705513523 917658454 738111485 864031085 813533886 893897953 163277370 329722673 239754636 499941375 186776746 553387866 758956214 984936245 361437454 655917143 252905546 370750841 749334961 976348779 66174231 788028661 801887262 922693588 747753132 964656686 356315253 682364192 731184860 856983075 741437896 812850858 719958231 923812038 399467974 444687904 43372936 480290012 177018128 353328801 816459961 953962118 656118158 805038505 887595476 940141096 431943746 810580218 525947985 626580743 261558216 819452565 315069639 968080346 721335621 913407106 635428300 727001612 808899058 915324621 714720971 851617871 872094241 997848614 348776907 658569231 420746738 765247755 939321006 997437737 86267045 600993353 123874173 800863617 610648293 678182483 962924490 984433016 624218441 704342650 419293527 956855853 136619816 650316934 402301637 700178445 540473119 597975074 615561059 856794157 270214105 797563713 349298835 840783419 76216597 661648516 674207238 937494983 82567282 768864041 978738145 983402017 958019911 976876262 118024705 487732963 852324276 878587949 122133994 931249422 904556860 954505868 239211354 752389693 56719334 754291921 686842439 982644200 760496968 870657446 451722395 902189670 809448211 868861534 155518482 802194224 196806170 996584153 844999761 877269865 586285088 894463750 839348501 869277430 997067589 999742943 662421808 959602188 849679834 974862854 222516059 834511287 460979629 860159752 794688498 878537121 760024274 762928132 817125704 939147867 440296485 706400576 991964431 999307155 294847001 323470260 848151673 854568521 971231836 980465340 468062332 984330666 263716770 793415762 644526822 775868948 295359518 779498590 220277730 822760010 943643426 959340148 162355925 850654653 892465513 934585542 17307394 837276957 813303865 818997083 978559178 986751449 230752744 797845444 181523309 527299508 59766960 873138623 741329014 758793687 773844240 850406727 334380858 509066730 814261193 865333111 158419876 791546923 751304880 856326218 235325896 925925165 748785955 775005955 893268321 997381389 651096641 920509330 75501149 768082349 65279612 252126031 237501255 770768994 277645815 793123896 961984332 980511668 216547938 233052608 292045994 747393837 585907998 719491919 269090471 557100813 316246158 787425501 278987648 659930684 358392698 612574465 301330223 513167327 900386753 936426302 870295327 887106653 232862452 482233386 586671522 592070571 194013507 549187704 438611894 677937122 306905472 694061175 962716226 969139271 729870014 739520726 20423937 167187274 640557137 714565404 304232433 542489459 347320935 667115476 60096532 438214347 688675478 820504779 518125039 721909067 766366067 897243061 750910216 766797470 170880019 284540580 536565614 648821384 445033031 468586936 936413592 945339265 686087815 863923319 842185586 979253004 985948129 988103905 527296085 868707747 300224470 429206186 801391552 967293521 101578601 891416463 471134988 723452064 538937663 712125584 1038867 849415974 635660049 767831012 156599928 624580235 83624896 501428814 391171169 410116425 971765433 981867144 704052182 727947804 527646203 906791260 140796582 333677452 777666438 828474125 591125688 594509260 686938961 903880679 310249292 703093810 421260506 438416287 534287756 977840993 889311872 918162445 641080584 889200901 397017458 641024134 200398554 205741085 491732049 760723720 93442469 562367110 879584983 951417857 529555139 650746517 47068201 369066318 86273271 713434518 716636968 747508329 462164119 743534702 659421247 953720166 381509003 561940875 62509905 410047982 448886575 881390902 16145860 103608405 569779478 621427755 49018900 272954067 676536901 972682880 291331383 918490869 212468011 877115568 677414381 876362738 320484797 588551438 213496493 997021111 581782722 908222364 513378105 556645387 973414801 994897218 270066363 790576977 417123779 648013063 509034229 816631334 598437695 974529318 749823288 942080257 46127530 63436096 603932199 749341517 804092156 926479165 82866465 105673028 116780110 615057990 258358835 711337388 138740904 639894013 695329516 958662720 588640956 813267202 512809409 683660989 869253084 921989783 254827626 459268463 249321352 331364345 716873575 732911960 216024494 825000958 687179354 802055957 941412282 973771627 15437934 733001901 214505996 944468115 151051178 911300627 637856816 771006319 250129251 293781102 92927200 583023000 253602645 980897269 818609220 940816288 754288860 758650923 817447888 993626767 733581897 847844755 66377352 581308829 144055186 364343200 910110381 991554804 147597725 241812669 428984812 971615718 634653738 699317425 444148463 797493765 278502866 544959019 113316650 539969460 66088694 385372097 208220625 520255814 358890587 399062509 171318059 473979116 396988207 782077454 828427599 861443706 396951433 480544259 279203240 859912922 625582344 974893992 476987176 813812938 993670432 994391048 15955590 997443271 10553879 898099964 761155180 863835954 42230059 968089494 30019485 240493812 778943234 858828109 992365679 994972706 779141172 986746896 20404261 354883975 34197257 773533916 456819695 470404445 446308953 684003635 199257601 374254388 501653483 562897045 970256372 977856484 522771569 596946354 706193023 824431613 419852306 459950107 697531205 797508739 54202533 791403292 3188316 473711093 363192768 478299027 605934321 648013262 87737758 618896972 977292339 985948550 508774319 788281631 388969206 556682110 209327276 726643304 233244249 516189261 789357273 920729620 533623807 841629600 813284929 874270418 734568570 839109007 675020866 927731695 593247001 751295639 231857127 550897076 908520411 998000402 914760687 977918888 559669596 613837765 879579618 992102060 77883305 175192797 598256312 644927763 681315617 907307871 728070205 964596170 732833039 847124825 458365253 977145855 654836651 941942546 862841375 981192892 804585501 962066252 222959166 903988120 617278753 756615277 95962158 901457990 420024175 806607774 989659456 991550339 609535149 992370962 923855478 956506666 533177706 783168024 176457410 371231119 708931397 742334180 630555590 928872503 353593208 918421358 668590743 703037379 854094047 985121804 686972690 847520064 410752666 476490521 160729299 226480631 849617583 875093867 610619240 711265772 427588499 749710831 494682631 693990995 623148577 749094024 340597826 413048453 488875881 974865932 565519309 944952274 798962977 887199707 39104765 58149722 3824233 545120146 481872144 647530595 297131960 301645946 427830016 495070961 736689153 831368748 420126982 806714411 104855139 314858534 277465756 440060448 179951498 243030034 504175648 663037155 333550821 343274912 548592876 966155673 781158990 925587847 454572400 793269760 715929303 878461216 339800938 615976831 993925978 999776352 38727698 301124845 455670689 569423531 429177899 454747231 988462338 990978113 929254695 972797327 3535020 288041258 898158909 909567195 532641565 679879531 885101504 910593649 474878636 949429661 973768286 983501691 982084505 995998358 690780821 752867998 356935525 535806317 170247681 584575460 418362311 730925000 25500150 245331791 124126491 764740431 411419915 983177198 650201690 795315755 230572023 376774387 797712923 929671691 796849714 921773699 874830253 950106914 448668668 703774000 930566420 990961103 421103598 745925367 987315827 999395041 529208880 902371956 890229238 909013536 684145957 912487297 144573209 590912755 683783471 775943941 997947655 999351822 154636090 681222679 480229458 607330227 648969072 929603938 480536029 490497330 850540642 868640023 258673491 942455339 286547986 507937255 462253588 997190325 675175159 697502749 219152706 906081803 301747961 412590245 559214013 870867542 124376985 768849648 738251606 946892314 272955829 439025814 55852573 644813181 924217635 952224888 397256622 689550610 37795765 801587388 280842101 907405290 227510550 499186387 79835434 195601382 869024505 889574954 969193878 992606900 488353463 539677984 52121674 498359120 278459953 963394043 108909008 493681651 502887677 790191783 789743786 988345382 835419091 932351262 565729038 653471688 754919345 817240788 481405529 752726766 211363082 354767306 668799850 881323116 624720500 892586786 957065847 993858871 81990739 881724788 341984343 840908870 678660205 724994942 619814597 698851981 599526275 608240171 320490224 854098431 376448885 625447155 945229682 978717262 143580915 613792652 950813608 978178230 210474671 800216704 135153853 673378336 241268296 494133279 778054733 805915047 873477561 904459942 932023156 991687692 983254646 992098837 387973184 538188325 273927725 496672093 115807326 325907452 942205536 956454089 288653790 752611203 937792997 954450637 481261050 702951519 322498086 385151052 81910726 184514068 10070158 466002090 957870505 984858551 344021367 895673228 881062298 922283540 574270299 796498868 392157556 832238101 360564499 606551942 374115111 718244653 100021291 521528475 117885579 308154008 980408455 992573441 311275345 462424008 714947257 839068765 214447561 323027630 585449419 668782996 413839509 461527495 560091689 764742002 5637231 32889874 710348787 986456456 274309597 315036781 350075472 478621578 407290845 566754448 386007360 653998670 612109326 674541743 571237332 881380587 878167616 889104290 399159350 405377574 16700788 345119454 14822969 449187298 88029486 319683893 482658697 815318485 256213654 322015266 365818371 475176121 574994476 684003295 378255935 508033300 670911350 970713046 27202584 154442241 706859331 742359651 186545004 871467567 145576147 993195603 643297552 958599777 782760555 824449531 886155435 898617366 959752341 965858062 794055315 927324172 535610612 656654668 520260080 647406144 583472273 892149568 574068304 676112979 268628414 462845767 304490471 906821890 399689367 863480538 968233286 976478913 647877485 942468796 322500342 892076092 257688170 386424616 149653711 822866672 221613711 703456352 676774050 696049829 948466770 969506650 198195055 868730457 770924508 795708607 136050211 348640706 909389085 966397436 72641868 808756167 331461556 648070512 441410621 775691390 459174676 634124935 79187855 208755967 131684609 162587789 684999596 750086151 871395622 896030366 908624505 982330408 735438961 914006122 149054622 532559686 974595200 978827997 824976507 905468352 916117215 929267749 267486484 645994217 550624073 567632854 995857854 998345852 661688504 948872989 136345411 764360203 602094827 624764903 909459178 987741578 417092639 495392198 805942857 867443916 684635651 934732838 775993275 908149150 668143864 711910025 527156143 561973305 360534012 846136881 142383144 658099486 867048497 907293086 6469451 946003826 428936971 454850358 668385382 862934100 47880952 242998848 645563042 721809219 588686795 769578370 898224557 972243182 4954938 544671435 564319211 612651962 93044852 843968946 747300662 922043546 198409808 602546198 524937913 901007324 254155114 961791729 739076509 988431504 655019123 706199934 207206981 982061105 346044043 525678383 104056552 999731154 482395642 619484586 565931319 860872519 957734483 980375083 266826833 713033806 985465498 989229380 540050923 813332760 941879928 973561788 723436755 760640416 516499331 919901405 98156153 513860381 669635156 713017540 973573575 987361846 684450558 996938357 16534709 202097132 595056820 858171972 183839870 628770361 812772037 901010929 32556172 475119450 774262101 888569738 231399398 723050269 836628920 956655458 556269110 984108319 566262981 970391699 622328068 991967468 138862676 916969596 193270119 815265304 697911876 842463566 115332168 675208523 104573193 745075103 16748260 865138740 16711416 828306972 916424595 974666944 735308420 958506959 1623956 225565778 236408940 449738253 770799100 931380777 423131749 668669879 618510833 791258679 485540698 875705270 916260862 931165644 858473602 991699634 575563615 724624285 713161679 945414340 762282623 837282106 241458223 508090515 565689025 882807382 353233383 859356133 186821575 835703107 914825612 968091450 80622502 785311130 288345091 984677203 135669980 306964042 639842469 772422465 293946181 346272756 247913358 710306959 902992958 946746891 875254165 876973916 264100616 978209359 387939172 635699464 823497990 857262008 482099963 873657756 746548496 864586114 744659619 857918291 388472289 697739605 779992680 781048632 906888032 984981399 297595446 709304504 836257371 929799114 394318726 792821525 275544849 940148094 171937893 511087623 64411193 576233154 74681657 244530374 508714717 859835655 615895333 626235470 163764129 253832899 466096381 981154822 612465041 859991470 55036271 60713771 393639086 742585310 782178182 967572763 827472317 871543780 695401750 940759223 450700430 861344404 79651044 857366597 943920346 984468293 804321961 886594004 474220972 855003320 605674057 795141937 852112717 986396264 627375755 937462843 412446928 824754412 964327032 966234155 346571613 770300618 118068550 529068911 93774451 94388757 467573482 808521652 24172640 463219534 797981152 824987713 122200964 880026805 996751866 998784449 825911480 977144386 325551391 930733386 248768881 998217796 184976161 830143541 717994475 878346222 812709827 968489147 723845107 936326976 671815688 903081583 417362831 864016965 724630913 917879667 897190438 974473200 802705570 816560868 618104702 855262787 850811100 859367847 648134392 753456439 555185872 831658355 617329008 640540011 190472150 611685866 370103841 970686206 39594821 130079263 675532596 796649655 261739027 659045935 225992780 795595329 700217306 709797471 383924072 403942568 105610897 147155469 297227172 631467036 838470110 886152136 64124672 107492486 686468470 716240594 755952326 796270992 277109946 490036078 81187762 147046042 755485348 809856656 960506906 960533666 903630649 997338488 708960361 797326038 884320190 956861128 187720028 523221466 466032820 860838426 361100133 622620748 89236217 443757230 341660362 458376425 334796560 697761947 484288047 965381842 232306429 784431058 989426939 996390725 445686801 578241556 396961331 919626036 431030628 642339027 140772590 487927366 772455802 949560195 428178809 880214925 912163043 967189997 649483341 713837416 404743719 445263371 603398026 919857548 102210566 298036973 605568819 611836951 880800157 922016784 444489414 466615766 201798453 516656843 435364977 757637069 436969019 664148302 991498970 999959401 392696660 479339657 359199602 811574388 989624101 990570036 756923804 872544387 927562453 962302978 155408422 285074515 743315826 777019247 780594831 956520635 735458865 935694674 668914686 877606697 944904718 993680845 677731200 681829461 988602800 989952482 738496909 929269655 375044190 750471777 450932482 579525020 769177548 816262161 834611017 887473635 17967302 126658809 486687654 787446798 483342560 654307195 897727020 899544250 21206493 784201141 418361072 472832001 911177801 980223835 8600750 537884440 185895620 764052486 890850847 972397458 548489385 874779645 170458527 904448745 118715333 684193808 164311009 601658492 780394608 890073502 708035961 738445440 893307848 947592141 557181074 580960834 383279558 750983117 186662194 502980169 694768959 956909420 92212653 239983232 403393295 608370938 521726127 765952989 296786862 936240280 155678891 918805601 987813000 998227555 665092008 806535527 561668911 746407833 131909969 819743691 456715024 830224694 258434204 639087431 958134898 987164694 611079752 760023927 453386985 732000371 944377228 947676498 209698545 284917857 937270147 997441457 93350266 722206843 141201566 225676862 664149050 705247773 405223322 589937605 123137876 933623578 928901322 949199336 659792063 740188788 547447872 859372646 926607785 926989666 781708150 930830924 195240551 422074955 598778345 991018363 962732628 980214736 880636907 990576574 993516298 995643890 733942914 853858178 173497816 201924447 460364539 749350638 869532562 931654185 617357489 880595698 366732011 792639711 474727827 951133035 338369918 403700424 131160713 688343704 226332575 410273278 88542738 813120475 79606403 113810334 806556965 832320051 855003693 876931566 878750876 880750516 887499896 962022318 881654250 882309708 309324993 494933020 817336243 919732812 237658577 642966803 681653122 725918055 431437756 636091818 360098310 876356953 850812876 856217495 802902265 905366238 10304714 757645971 736762831 851919777 579251522 669699318 95465216 667092548 597082239 860427479 954623268 993481966 536837193 802593373 76416135 825341733 290649096 453650098 207668373 334097974 253313745 512978407 289745171 473972871 886267309 949706209 759887524 886133753 139855396 192554305 789739011 896639646 777374383 944544351 615694703 949872989 577104823 701084953 376100052 393259042 294880428 763838757 258338075 631097354 333585866 734254951 652557276 744408235 416293844 798372509 789533194 965697773 345952030 896641156 927583782 930343085 328750881 362798702 308270001 710721700 663811722 690568388 882236529 882937327 672511814 830584384 455527655 547719321 142817083 975302310 448213710 754946262 870494681 933254667 879303479 982427391 972088655 986244902 843429507 934226072 843265989 992522876 710161836 967172913 115537867 368179223 449989939 590909478 496977658 637355596 397488813 664167156 330493992 429628038 547414658 688662807 855456321 863163562 117334934 747117641 241249240 266244875 982538968 985547222 782997661 843527476 624729426 901628445 279968888 903402024 719719755 724602113 570600956 885666616 352596530 783651386 723499008 834710020 495952104 959392565 433756258 779739896 61206000 912123692 641944824 780286354 31600517 555628184 530200560 856947206 56181090 390882419 142786513 726329713 519106865 710867428 834979989 923917336 77084474 888261992 32010196 219943119 259756958 561095430 646456260 765068874 166028876 985405358 400340072 849765584 714477087 863667293 651567146 741706102 570934333 732124319 382036853 446137980 422087137 613946239 549132986 640654428 695012946 727053908 505795988 725058595 865267589 965076477 911838963 923524123 460574734 948427353 212251129 988197047 375193708 668370390 745103209 880902169 791161222 820451130 534720555 639397907 14119853 199977408 624046114 796663258 545088696 842042419 857921096 891517780 594071839 732607611 566195796 636067083 17047816 404315133 873463617 969958550 628833080 837665610 673067459 711175723 904307065 997021976 55973167 845098540 257263737 836867917 919733430 971353332 548234922 890770963 658895016 784072234 444626406 498578497 527657858 565101300 394253586 476799541 825183784 835871508 913345373 986061637 979351430 991658975 819303364 880642654 514802593 565153941 395901665 547234746 461861600 561414794 521292336 638288894 425516976 740140342 636170420 702995402 114318117 435725035 335952206 341870648 43100241 978692387 362010533 667164893 152616381 317532210 224391600 975883013 848808558 976214328 473081056 767482205 480423718 851756169 991359284 994323562 245906466 567763974 95132437 858631749 693435245 947892220 321289934 709258381 346866120 458504781 251046303 446646215 204080646 848703750 404532637 561716799 11764142 186849810 451650976 535956950 403415545 593144803 188300807 765373186 485245657 999129868 53676647 300929760 783920179 949079394 243986646 244097772 782502210 984160533 290767734 419957048 795179625 839701978 878433992 986092914 923642376 999828863 97397972 278100839 647207244 915290760 697132430 786500081 752366708 857090660 499611616 552107541 137875287 518680506 972540128 990646491 539182687 912225295 62468055 710764438 547812881 666407737 696516205 824520795 628338232 792440429 932057670 997542533 508179325 794193363 852957802 864244366 708821968 810527889 163200458 994149599 52692285 805299941 158944063 166655379 469719918 660998114 684841150 849357244 58848640 553308994 580091152 671908902 800635937 960598676 41359770 771774804 407977230 475797099 927545859 998333331 15230910 338379416 350099302 638527856 138446780 307794825 349212466 980509582 453337111 584592250 849047052 952082636 80341952 647217456 113873508 474765886 611358116 761996531 922536667 975530983 348086864 387013925 88629474 859544237 903712169 937095816 543367890 973435861 648490761 653864582 281630153 980158946 569741352 862983932 978499220 993563446 502591308 691162441 940552416 964661612 982989297 999976814 468965269 938377814 126984041 456888803 794945918 885716582 126804755 843247184 238283323 642108736 703632790 818854715 577340633 961115251 258759253 403938037 795244329 967266448 207224280 663990649 511526137 709272440 144387152 849836427 66457652 460386921 68402816 419058368 495457020 562048382 743091138 789526537 468660164 670538665 765491487 988034272 185378971 816732050 647057175 837519541 432589277 869419524 245276581 250881854 56246847 713922242 827918781 857186233 785603500 907766386 908069094 923627236 198099873 909220716 270017980 824233166 297697732 861090660 108933090 544658431 628744596 653062957 659672042 726841391 149386899 833942053 74609812 782477195 927980138 977819298 524622498 945478322 304754051 490965815 641175929 683413199 293828952 767899539 463125572 573860908 626737775 890316448 74844447 546701548 875207654 919801508 838004363 861624876 115674014 944241929 345328056 670708403 369455215 690275574 302659680 454285566 783683535 795665355 685541287 854636568 870668707 877163506 759485276 960805773 481993324 878328036 530842246 788023591 281874891 576907307 83509356 734721061 560321921 744263634 877719270 949745157 614473624 982364824 10453857 157346739 297066654 378102716 863633830 882267737 359521790 771063176 392575492 467207316 621238855 708269486 881672155 899057698 117082765 859709228 928377201 967610078 687401765 895287022 565143766 999589226 358041418 860934767 740022729 968936971 576890240 727825493 853022718 895366527 698243816 847044324 474098521 823709479 540035856 546696161 155077987 869709730 366405456 700709664 961510353 981854781 433470824 947048152 342540593 524977244 919809238 970694225 36312834 614001800 652409372 688058221 884630976 951650798 141413871 862867854 439707959 636688920 969154230 970915320 632921436 841267532 461379042 687375520 709430042 888366012 797161359 891805582 474744083 857312705 402914967 943707181 925228640 984637094 188044317 763220268 519517359 888757074 260362907 333680603 43661109 605595480 499348876 628044104 640821639 893484370 550232580 672169176 988575321 996415948 459153999 903648920 312867699 931571612 290200788 869263460 870996398 905873585 378764723 689482577 327011636 990593543 796096904 918559840 464109524 492849420 747881924 835215807 495972030 901978576 686684908 847967297 486906731 983585633 177904822 737180645 775147992 925941736 646231446 902836764 424575033 733478832 284877556 444202250 962149961 998681059 142107708 583693678 437744453 621806896 965005034 994520905 621678839 843407476 442298045 739052456 586879563 804406766 283703131 422933012 664665414 669049563 612845755 763622321 699370507 806436469 716459441 717478491 848367167 864468359 123435533 858742236 844769632 959054530 332615074 827561086 588574786 659667076 64032475 481331233 254537883 409070096 396980693 598150161 542750449 626687595 771602071 808928804 366886118 600617151 85003889 523618030 167250393 518037845 648328691 668791181 812627286 932026295 749750714 774432237 883254571 969870571 71049658 755626164 519448078 880113022 634236698 915643975 155749860 854117645 203327891 735570840 157568043 990740527 9359726 504535005 888281925 978933907 879306764 945001628 785745507 898444153 483875926 776178358 155909275 342588660 716916123 844042635 816421675 839377044 483674251 780710590 521049016 529599183 721832823 834615535 669540841 809350696 503701897 672877929 326713547 635690785 450357575 910926120 631957241 713448995 163842219 922562277 833821396 967127399 656270635 959712840 524752984 979823860 822757626 892909227 842693287 955130014 110232682 902885595 653261305 675694571 804098690 872859653 252147162 841437729 890948014 945530850 95826755 321520451 179484219 900336427 764269197 996130772 403559233 598018254 734919179 997217716 734982169 893935451 494549906 666498051 867878622 950078770 900611662 949954749 487304686 639496053 341213037 375712680 98406259 521135583 384719793 392830553 36628723 539746519 8046799 10989279 890126278 995754971 508028901 580455548 723157373 783865179 838684673 987606418 881950308 885178838 405292832 803921437 560634250 795309208 137739934 539095943 115873886 851195148 203901419 628672789 424451356 738158587 479489764 721810769 631821282 987554805 915518613 986347216 237793757 396123879 671631144 804949220 982821703 983879641 667582889 991585356 972877018 982787517 649633100 804489274 862119975 961051294 636839910 872879022 31479788 712414692 886265400 890094006 437513873 620159452 417108306 633510247 671086801 702916620 608409771 910888228 511035956 666942395 946495762 972562554 765785487 931450126 206801986 826643173 504032619 536425289 411660789 531478318 155727080 993832055 28932033 132082603 661667766 715604185 546706611 704858712 317060469 380361646 643192578 732589409 91835286 919991930 475383502 566520947 617144180 918000262 857631697 916556967 685467411 779032939 691397430 812612758 259291958 536852023 565891451 567766761 946803637 954193399 296880630 927923641 521773738 764825249 213401188 502778440 339608569 881047539 500009571 741865792 146963664 763294475 879897033 938155186 216478232 539131499 30391846 557996537 822065630 824786309 154110378 164610887 535407059 798970136 210838950 224774221 2891927 15776135 363524710 764471718 813390481 901340429 523917651 866202028 336478405 872208392 848302144 938380311 555725717 670501230 941603908 966148276 938131856 952857199 599615646 935309790 388633758 970839216 574966810 831203009 558994722 701035297 154681448 644730371 488233379 687916412 886299773 898858588 266123930 719119114 67984425 731265403 800548356 862357965 713367479 791843689 427301701 778506382 366832929 797046749 520196274 865473079 277341141 755684198 293033028 390825823 510868289 609945207 1337224 106109153 841453954 919977815 627184641 694264818 659411649 868568046 409204060 680724863 523720334 961345762 311853874 671241714 518656468 839462185 152726073 242419428 611129154 753479358 38428823 287802146 344112323 855857722 425884495 680945054 404156856 753306960 511208006 859013644 850248395 923734016 624093280 839293072 967509077 999203377 853551288 962932298 575158172 985910999 554484457 909332994 594246095 763905535 146573294 519117968 3344467 177352858 616186576 931529206 990730106 999387515 834092595 863858501 448478075 984598693 366811706 668972575 3730872 355409128 619680124 752861388 701754682 949944728 717974105 964670534 621949514 643428808 962358206 992465613 708670519 882993321 652736943 845377707 672488790 747507748 713897709 763161775 845933916 908349767 908510694 925498460 326170070 816523571 256180359 782961414 160937483 513278766 545140339 935490880 250500272 483744210 404295994 552350777 476069946 837550961 9234998 660371645 954413498 954794105 915347352 927576440 674146037 758196339 95365488 630584554 787331787 913813895 212778207 578763727 338984823 613382885 815000981 900486221 626983262 663518395 221843383 871310961 954666771 966005439 16786964 310725023 796629498 879957712 435634354 911854988 885207548 916260980 342668578 992266007 811749375 977736372 430133278 794374190 231089025 676791346 925678295 969952095 969033488 997971808 739257232 797029897 498379224 632134663 685305745 851265835 701467329 949181270 898430737 996963455 850177604 912735897 815110472 829562484 418401479 864580369 226598122 496061395 742186012 822127763 479647801 777161482 31002837 890103659 99839239 548060331 628153468 946396190 882274854 963147415 267500102 828971771 264491902 717327963 776859845 911911700 366203095 989938058 81723261 820636681 951736138 982167527 662650570 754358701 304663048 827031877 970773012 992205002 732201879 937103388 864332799 928540559 173984365 337998715 730699849 929809096 380598263 582176132 889306974 947787030 43911156 56659907 121135646 810789611 980880461 999320302 164637388 370777628 181347614 718088311 621074615 956874475 645750176 964295743 839287726 929311942 623344450 675149478 438234631 598181292 847814297 925574370 116714568 175668262 638025360 843705092 504698052 888128538 351427219 886025675 726949499 827762996 64354953 426162784 132377723 869757068 146743439 160194104 879715588 881178508 260202604 621120136 39182004 650287436 945134787 948797344 18357577 658340407 771279136 905284012 881955001 984622611 962897593 973190776 518962303 770450133 604281173 807067692 972968747 991732752 974433750 990530368 535229414 761728841 434301943 608263352 198886025 488475445 986264128 986961789 942978705 985030958 615295635 695116510 903256033 925701479 87536731 193958657 879097341 953991840 333008547 352926343 195667664 484193435 64772242 809313939 20436982 606311481 954124799 976094620 418664770 782656299 238588778 459160412 634403334 701942180 263444128 956972360 618229025 715462230 873115089 894956506 939354515 989776842 387204173 829133732 76068587 800837242 446314446 525111712 28397724 220936810 8135057 220648764 854882061 914922456 524034493 719563607 938972819 998878017 53528199 949205569 833587026 858418021 156483540 737477124 242015281 343174536 483422131 849381886 374766085 472121655 786330640 820358644 385515867 890026958 199164825 326634251 469473620 657810952 277555163 806673770 645288595 729218547 728368214 745106986 579143776 620684472 513365750 918416676 556545679 906297515 173921317 490585174 499470623 825678485 639824961 867008202 537605850 808214213 952314652 958531046 972754643 995983298 183944738 668240562 218065604 758422343 358513603 548735146 970122024 999755560 499534131 770086856 594512533 986233806 255519377 693941432 580113277 731762790 532633153 651038688 577917354 886690279 101539381 121355056 638822049 964575286 504515134 646212772 341041307 781453372 93033671 504070232 295249419 315438143 847516136 989560624 232698547 334776181 16669073 56196235 430703612 939725837 260898827 266185502 865876050 880041635 127049840 179783907 436770995 674151664 750745803 814352371 811163722 890002832 258544058 546661513 462919505 997310325 632845053 963638022 101389757 853846839 554068920 952425291 639451110 684057827 371088673 523681737 660890175 825871489 277281994 309056935 466263989 980891923 495091274 638935463 989007311 999985709 601653637 878523990 390034742 393226600 292435264 746646841 157329669 342672402 567953372 916929020 956651360 974148048 299014083 491943409 456801488 832294163 219015901 451138786 549192868 714256987 794624996 862310662 765546982 984667218 995724298 999745368 264767969 599689440 907635710 932205572 478073097 667252043 29996690 929779718 739263255 993375975 299452824 862531839 206247274 495267779 385178269 703462812 796471795 922938747 698331177 996252996 635730973 936514181 890876254 942128158 264788318 780353391 90297043 419407597 570263572 707336354 41504670 493313012 901344672 993497448 227391251 460111735 804944695 832916261 277240309 919871885 481493780 741225280 14647640 503980710 113929657 338986980 511424507 515520042 391715156 504778883 362715728 639932461 225945967 845417816 995977807 996237796 853176757 934170641 268435884 744013890 857710636 980949102 721767854 752533688 140070723 600495994 5461987 519847420 818618604 863538686 925173792 951758141 560286481 632334038 445741574 977469432 718101782 974751401 994438132 999749788 935036931 957256330 255327926 642352106 847447317 881254810 843038066 988890105 778630189 821450879 992381781 996291010 882419868 935368356 881445983 933010209 641525932 723938784 167958426 705736443 219859969 392309915 486710361 888994493 931330095 959268355 441499369 972687260 2925813 463622745 628393792 785993568 295425801 988946125 720068228 744409064 403874148 673769322 394820486 628983863 109445638 943407814 85942228 390692565 902277004 914648890 709473650 940458570 558319423 949228210 473495376 754958174 897417372 904317576 625587903 957699981 296695707 727098482 121812226 363634918 480346512 605164970 857159328 938914590 848475573 887879835 940834988 994214944 687624372 733218402 469834353 579249312 315122497 933929549 569382540 748225132 875794580 952583163 767449113 832242291 183760220 682254293 140980115 250928560 241876487 942112547 685356152 848268987 107670062 366093258 425709806 906174767 392125388 660209398 318074534 325571849 87056253 660096174 591249505 775969880 736829264 979635068 660308470 942132241 47115446 486415403 837137290 943409418 286411427 692368129 673654685 870999551 369079834 868708587 413459398 842483433 787175536 886313949 572325353 676519620 603292378 817839008 970773050 988721881 859928950 945208636 870482030 962372678 647112328 919332281 765159592 849086863 4662494 745617973 494450651 675353879 109401203 414383562 439733029 604844588 734534290 736627078 630452897 987531920 929352005 993432314 173269117 442414705 398381600 405516024 541288924 998478504 437803088 996604242 406336026 615656474 77698584 756653404 709918648 865962392 525647481 773441633 167681519 474398673 534248406 638507285 504809394 602639597 79856705 476314915 272037561 881932789 669105822 799444611 553471533 880230247 433912541 790718722 620782894 844495478 80138759 383937977 869862979 893659395 396089716 725661204 410456586 966845798 10725038 269238996 539848602 737634805 830212706 833092398 290620091 789912512 222172379 643427819 66819760 198900126 210511864 707651083 676319653 842549467 620326229 947573020 574928724 901922479 241084461 764292229 496219123 626234709 470103719 735432184 920960155 979128403 987200037 997385385 430042472 893245457 722836397 804752217 334137560 518946807 806463629 896420729 305239272 987452353 263674874 857165123 992601826 994576688 976436336 987106482 308421362 622500279 921464067 931794158 389649871 709802360 53390358 647390323 874423814 974911575 96432533 815324835 414732995 887381889 317053762 678332932 155641900 697736882 609278304 681188456 358125110 518373608 133926977 349465093 720443316 998320602 455503537 800612393 466084116 814319968 4793916 285485084 569687477 871267993 822410758 967778905 982237810 991117938 32589831 909665449 588372547 940816497 617019445 948668537 232619402 780521358 638448989 715528604 774377316 843109514 453218269 972882280 574115631 577317228 452035187 558093926 59116435 184389325 53293453 112777199 115577194 146504861 425385897 600348398 998069340 999737744 454653160 884908573 929807669 967721761 183765817 583314950 84868279 190173065 854090529 914628788 907700942 985172901 498364980 509176333 180627471 456466031 809790169 919810296 991337993 993669760 308094115 537524957 104021190 284547836 891340270 913503995 388219807 622462323 362333057 381343879 700033089 728061310 974526508 984437179 144191854 434815858 371824234 808929933 882018917 961200924 616792628 955453539 689297195 761995969 266448748 557481234 988287129 989845344 473265006 939334644 782542592 998238835 466254343 687351005 549580531 888427742 718155112 946204788 155539676 303892596 992441709 998989273 6196934 985367847 921550499 994864349 136542797 734864576 170134251 562662259 527965847 656874229 72386916 717248614 398313019 979109736 752350539 950179142 796558908 925970062 742745906 829840293 340258642 373048168 827597108 918941347 133229186 686095928 143543174 392017381 479284841 621671209 349239817 456880313 538665146 557995584 309752914 443581902 479821291 769707207 333314549 547154221 484425176 940232048 778140507 841149866 529229987 729364843 234563653 793169838 71983414 292196223 253789758 271022697 373558668 578390761 45032788 978501402 601901205 903172320 174433038 206977851 560955052 879541307 502239174 605548477 685683652 940859433 396653674 413644973 99722138 550396254 532163204 598444867 656851217 835649332 168312549 572639577 249403275 916285512 677665305 711104380 195395451 218428291 397270520 667873465 922534384 956931839 891251492 975565889 166929038 810284908 30759996 905119775 961973100 997960872 320418028 404892358 478471422 796693498 115141207 862983480 618412094 773053539 75048329 702646348 638845911 880688583 332949365 417685250 278510957 532876825 854512511 893662085 403287133 553480636 751433635 816517407 981977458 990082065 311308702 660495832 98184017 420532592 201082205 969162798 414477921 715080988 331103413 862157380 63594933 406359137 119584017 802028942 547873661 979375355 374573903 478305603 956318683 962450896 849614752 999198330 535620007 671867262 315828266 508514204 378028718 568514952 75733726 623557286 237378521 553749062 987125781 998425085 39973909 691482237 671983029 743018039 685662830 985661085 192866849 620700741 299567010 770182295 806995176 930646487 658942166 869822130 341287481 894385136 718695470 936837048 706636556 922812452 801111662 956607387 937959480 988212812 890724613 928455013 872873663 882013004 842233982 958178234 103630418 517448793 540218840 893725148 715274224 962818378 714736029 742089168 529315601 839759983 494970408 537293225 989220551 994110372 857222067 989213396 762528663 842306409 745170871 779634036 446523054 808410588 130161247 610279157 633422982 981625633 402006218 774554574 856137634 956682894 263034602 343887694 18622588 56461576 129783052 206872486 974530630 977116902 375782561 790559813 383848669 658416556 715495726 715503773 480921000 554729364 960590620 983989882 216038208 641121147 765868195 829101070 485021912 871549922 126308732 563189637 561504512 652876413 632540446 849323935 315985901 756329495 715339189 920414681 851263405 962681501 798147392 981469381 159113505 808456023 302205783 527203108 113363895 395212695 6193302 470892844 925131648 932938670 615322948 643890894 521055141 616467886 760889566 944181635 145047942 724735856 922286593 936874843 772027986 778916072 866387602 964846301 889309798 995569070 830647329 930807899 713008423 754460917 316470383 326962848 398439164 667681079 27253071 588046456 478145766 648952545 68244899 928106322 488354285 706154263 824794884 908599464 922390853 977562268 368388141 533650425 364040447 921155241 801964685 971166638 632933299 748590141 287451271 318720394 256032975 473493686 978344716 997700570 248868033 662815440 825690497 906851352 294435258 855456910 966286281 971708338 975726639 978670318 376537620 646892653 181470163 657463082 628713031 818158672 167520184 587580368 637646081 742282833 10964441 85592776 327935597 571249416 213871613 945531002 87852951 140198773 133264496 445972413 348099504 568016102 67488830 918333038 380730836 495208183 828812586 963887008 266638092 954784586 199176070 264670922 891909941 919866847 175150586 922169047 986508217 992399707 370284484 499235965 409649620 523019341 602706519 709008254 795480305 996074499 90184898 659628251 200753847 956179294 521386255 827315290 414378996 999610775 778106009 790615221 768265230 859315414 968822517 988494884 21348011 861077857 803621466 901514589 95904868 156602151 62355277 572691366 901939036 965902099 960876641 977211176 624596882 776513546 337400578 346485315 764029755 924142147 751443585 992953055 726956896 743325140 908383836 997882360 738222919 876783793 793611434 833633465 693882178 924896892 310935740 911312891 249137515 737842271 538882794 788491764 913971808 931288951 476743096 833768857 270294732 628767259 841611961 888107348 911348746 975349270 599088247 888783740 929801448 966729860 841293074 923337513 367457877 881083388 428428706 959122693 749006385 845172631 114611098 460957398 80711575 273841778 124384851 393880172 490930046 694167835 22227282 559677048 479138606 970794721 827455511 958445966 305817079 518919574 456715407 631020929 704640092 884207001 685118560 948952088 409216164 520494528 981672408 984892033 702085893 929833995 846898567 961188721 241422587 609593365 359333670 528371150 848949916 977473483 68963231 365548881 505917295 820671658 77710518 706602829 850863376 958945859 314875804 539425277 855763976 918498359 276562612 850007983 877704520 964199605 484307242 852620953 82719983 937793976 253485635 717519940 349070905 643831857 956565610 974708084 614826607 855676737 20149558 45794133 760421502 928215101 774625382 994255295 659236118 783984076 715074025 747961474 684099495 724124112 475486450 934140584 590656598 598671212 707594725 839879760 110913140 523310247 531306726 967663776 233149578 629535810 566991535 839736775 630470286 900423182 118750926 691505022 191389389 364414559 255836691 582102407 105787523 442170709 377908919 645123756 963462862 969746116 766455052 789229131 435412236 530487164 760620931 889574230 498466702 838684024 162191506 909153453 234265255 368858317 448833994 914387961 294740758 529617118 560981926 576878814 251917300 767062630 912724737 988414871 459943952 990429639 581049552 630518384 299099359 955684271 464209373 904725082 246245730 503979293 379050971 954554077 453783059 480814451 467297925 753521703 268700658 741430693 465127483 684655278 486182253 868534228 56832328 434820175 94005663 378118381 489154899 889836905 867698966 882439132 35502878 977645598 952792673 988646588 4725592 565058717 940468766 994343141 51548030 821525192 77049280 176277381 286833235 721060319 526925859 723638617 925518200 964482603 278025032 568869284 433062928 904721233 781251641 824875633 952161687 995630942 913548765 969164512 702035130 927979947 914796303 977989510 172081637 179932309 127940905 264704870 584309736 905928200 843912355 855393290 110483288 429562571 121220642 863518199 183595289 326645602 915404500 979569697 797168024 812741134 936353394 962849705 121296528 878542943 73919800 459195123 312391577 332578804 605700530 933865081 467253306 980317850 781787889 895149153 308814925 758048004 562287507 637824851 892006829 960386654 209121127 376317110 456738885 638430199 197837337 985968949 544131055 819275565 967201887 972482282 170767484 779489813 874088843 943014342 291388147 658667510 209823682 728365538 496614792 556671861 783556280 926668549 450982695 899009834 261548601 280761153 245369876 828125541 122308006 627356912 524892471 562702074 207754040 608272260 30616983 397033449 779473078 928827414 170018708 188160297 877221104 878418139 372028856 957954097 991166501 993776242 83588504 973778425 89931653 703207569 710901737 922871395 354487878 407941993 684513858 927874099 543703155 657201288 765371242 852642759 808292736 857740622 392030838 947758485 994052912 998851175 859726188 936588927 325876962 843574296 540299077 759204591 748602176 910637088 523766783 617921447 651053269 776145810 509538490 839441440 421613817 688777750 700530856 836990977 423192747 580121626 6624100 120809442 922753529 969274305 237547927 973824019 614430620 662984256 208367947 711933412 304981587 703739144 921317598 925647570 365894616 542721695 63044188 546187708 882936924 910923470 818805406 927367130 307884505 859632756 848823651 887403841 509758191 695073145 274891340 942984481 535068018 621090840 896850389 917064203 738310119 802773658 816696625 981007441 612408053 801634341 93037590 433252775 969232066 997823290 377320974 479293726 694078856 922429433 250839317 591566393 921725371 972660633 667554886 725484945 885544159 901573897 390799762 605876609 711240972 793166622 447529150 903618990 708701313 876328628 719626713 770775659 889309082 942298053 998414212 999901204 616912774 744277957 271933720 436442416 110809790 138988102 752706002 944041657 500371035 994607209 46149468 118769612 404279858 436264509 813956985 975282069 116368216 994109470 205155676 567032204 382888180 745590628 194454381 252005730 186294120 737042920 255803530 501600661 902110835 918918093 773846457 780052065 699714854 986491579 485628142 590266454 484202402 665689248 488837435 854488473 358997119 493319859 753509795 983817120 705590249 919850862 493943509 589059031 680226191 751671678 995021319 995314357 90188897 174812006 664395606 921610171 281878320 528183229 632956963 872926750 933289746 943541918 375687594 811881448 11427081 364348276 247364263 574624692 896381246 909232635 938552866 985904875 585966377 831386537 716108438 846586491 646803065 960522273 939681523 958597983 918237005 969556652 474977180 817381380 586171647 589297720 923194818 936906774 557771406 729987828 109425383 541166468 238289934 861458859 466372761 790913247 621619295 930282081 61791242 283206644 69029232 661162162 623464537 948233481 466981415 976030997 18067573 472632571 176275412 566958171 195782304 574330079 238635875 597230489 212709874 513647485 1468897 483913498 277206695 657852078 56447594 189367369 425304767 952684313 928831528 983606686 110169532 269813549 959643492 982452053 390118362 945308613 302288810 345715834 114662761 779105222 213044633 376032996 29462202 660571606 391519350 737147313 881663806 920690807 507235679 760111599 929036488 990166724 927759306 942641982 303042120 575035414 414507410 572466132 724555817 877635390 447937449 695879280 294989391 405152815 894111669 997066995 440668764 991954236 603881283 930078646 586116004 884114532 666655935 858787796 932125305 950866874 514414387 536646090 789677946 855221347 429264575 679829788 156293383 928837189 789706153 803475552 845207412 985843777 273891894 938100050 906232067 972572497 538825052 928816199 94697763 296344840 398192972 525940237 613462192 807160226 361870501 634688085 670320216 696723512 685741644 958973784 292667241 631771902 497940639 789316588 866183389 926535327 8092093 667579293 791524388 980420690 19316717 103017717 257517121 426787587 732731176 916141142 547926722 790965605 875418655 919022593 172917259 695136128 191599538 248365277 626586973 690992723 805909117 910562059 739570309 829565568 281940258 751407880 1593758 932677649 302862995 676744987 924834354 978615641 181424228 708442292 378018072 657250558 495167249 966853028 796745320 821364997 95383088 722476388 765359042 987249903 935371662 982495829 365707957 798061630 739892049 996309485 111308400 456397886 382076871 861312297 676700764 950043576 386435766 604393151 807574261 920372892 531380241 754446294 21808330 274626171 578801391 748835245 759216171 819450353 66221323 900303295 680326621 901346772 618000848 875502642 458428833 902326906 101276781 539940930 30749504 230347144 981065518 984696305 765006646 871629759 785854180 792963352 633248632 992162040 703805480 908793959 877579852 907819579 70216452 829419221 984584476 986600739 603689241 922727170 149713197 654326400 868915259 988418823 427138957 434928109 619484959 955714364 73273658 139885592 222405898 726651122 402429182 751712572 436433422 539082913 166005814 325052936 976205739 994689277 182468107 900566301 967067818 997620455 320550954 548348291 310285847 752808040 784335703 838746191 70621375 349055378 266082076 419806583 95517246 212560115 70275788 907588375 556238654 589424575 506537021 853672410 777445031 815047558 47280718 270662460 179297789 590963817 513206852 654768387 762722234 996018627 959819925 963040707 601828048 636236546 705431209 830337125 249587709 577606199 293103479 426256504 656849917 794612995 696225488 702308690 52977507 216174809 55686757 307732735 432577239 505482747 184325641 611048369 970869630 995033284 480125273 564881313 990356127 994811680 68957948 830026798 938047921 974110961 955688538 991827101 247673924 655142360 623583059 901580839 542495216 646902034 183579854 713118154 939953238 949215482 947251062 990209211 97855006 801786582 294454580 783276245 41034685 184433454 904484276 968338858 581628942 844859388 346187705 793793418 612676497 881389499 366860468 502590587 849928919 986742609 611093119 710212020 920247269 950867850 162851928 687437195 79632818 116751644 34685568 275748011 684427362 919463030 188479223 328473747 46406723 515398077 720504241 881445556 890732466 960763041 853231737 925507208 418271502 868109728 883909849 991855243 322387566 605858905 731483021 983381411 984907246 988538934 427141425 529598688 500403915 868835643 772045984 997088557 830362756 938145989 898595464 907420964 422779614 901037334 374853715 913756172 426781110 511699774 542674605 685876671 440260288 744269908 221139748 328923073 527081091 638338771 833035815 840472624 61084444 948609085 540768328 854424600 414449575 499157320 199835083 386488585 81643022 797314068 676792302 720103098 714436827 947291727 134246531 809066074 779447595 882565091 922594604 999131595 873614599 875804305 631381499 985407094 294535120 836138879 609363255 773566604 724359259 764352337 115519195 944452203 111499275 179883311 282679680 561672852 879073579 911725846 789183433 827947417 839853382 963800382 343436176 904249978 425077099 594555483 367661524 624303321 640597777 988060903 239249864 296070085 159076529 846823320 753590056 813766923 134499390 160548696 513175023 883159048 625713616 680078801 473071821 511719163 594897419 635189929 549448279 987485102 294575498 699142534 720042216 966907604 553490862 920137660 29816261 632575796 561815395 717627730 86666988 210317591 554074674 971067353 529301478 854095115 780672398 893796952 266818065 463746418 539125615 836607560 989412571 996419893 406749893 659185847 719476799 993390403 785062052 799157030 145923542 902271591 264133723 971404904 856023509 927354557 409941928 975504597 76454311 245029582 614650937 617781218 530697235 810182246 137384040 447910112 703301935 861905745 99579736 413672585 812057360 950557491 134717640 996765507 108184704 635940281 460631346 702415178 339981720 671712267 818098429 968300980 246471801 839357339 902937554 965056317 470942809 893660286 120404020 352617042 747705433 927309539 61562016 203566140 887030154 992627487 776554551 976192408 344611524 860812467 5472242 192961686 239686862 487469956 441087549 933157428 496337484 966452285 734161103 899963698 252730578 933762465 957414454 979400742 493821270 552539184 349728630 384381557 632518732 691335396 963116998 969354512 507849776 734223742 333458423 676007244 995582503 996078139 558586664 935981978 552031133 819803245 181876139 356372787 31515089 812555980 434172363 756126624 108187894 495047236 586648174 848785753 232435880 333773122 171474865 654635351 627769094 766867540 700307906 749451811 942449781 955527969 978019584 994767147 375509361 563281365 179259428 300341077 750459902 966059976 568451001 975054518 546875891 976714974 714972810 883636695 587212639 666049202 28435736 314791536 332855348 906262902 85292537 935540698 576966272 665309349 176344975 360034056 764172833 994039329 279239197 712290938 769966341 971211688 313365722 738466015 45892858 521083394 229028596 250708410 585684470 663694388 368704147 701366785 5355631 114037848 663742100 978555761 338071041 547711868 153071975 733186412 454438104 605754819 383207810 927273493 300400684 652787861 302718604 820244878 136022704 917179286 666250350 905259292 487608922 497467546 796718241 869729817 200846187 362366170 307581160 653523907 731662828 886458615 178852705 606454560 983691942 993425895 786242464 994717405 392036215 967772742 934960494 935911353 560495946 856922465 407788812 493619716 62279993 768189296 187697098 581593072 49229529 869613724 636411720 834479728 755956900 957466487 393926971 688802603 886418509 954901315 187239202 564309433 522572182 705602432 265364503 711813279 56011240 581497195 266041657 686020948 985082945 989440545 339802355 382071942 27339290 86246350 61652580 487561716 371887533 786360731 333502341 396375369 147501940 367040242 294587185 618168419 385606548 623597378 685971230 982919724 579739438 666959318 568202278 930925607 251735584 937346842 310350102 688842799 318338608 546389405 929214668 949553567 363896915 428848895 781747493 943748353 567446191 984820709 547251456 770968227 471696133 922321522 469188094 913928924 754617262 993141709 151178570 503423116 854902808 887538773 26438229 482011334 657244167 848431414 983403612 995019195 523743116 582492316 930235503 939060682 874910769 898978765 835940974 992761239 874726961 906896566 363439545 783715662 343541358 843092014 700230651 718778700 445533649 825981535 991523842 991660506 255985643 825345373 214010249 766610712 108555618 777063738 766961090 922160582 389104195 964837585 853924065 927372409 339441955 365555204 690329294 886668307 426844437 839556645 577154211 587862979 378254627 928369064 500927106 702561511 100053408 806327233 15625982 57521261 172547734 283780460 553947297 949537016 755974663 927547367 828330531 857623583 659014339 978558215 586879581 837483732 59267892 531324504 809383026 834388839 883098909 976867097 995011892 995085175 681108492 929260573 104623360 868448528 5042257 792372449 12385556 251129985 154578119 528508660 397209506 900366207 608500823 868064964 790034726 850992246 417900198 844360606 402868050 704476857 453783736 693493331 563684256 766570204 157931685 880362570 799439389 858097316 668846522 920144905 746868767 759761813 130022870 548491066 251742357 570747182 13511963 477901184 514071177 614948647 130014819 967193840 102626 972447868 708550035 834260691 803592928 975203055 895305114 958601355 933601872 964540725 562550074 797477573 163900103 924633448 832924031 848476975 772939198 880982809 259635846 795807910 222325206 474559396 639904019 782990074 651727232 923170955 954541857 967190486 267732674 761220230 34976070 986711967 792214928 955401517 893442875 959557835 936526188 942844984 543242656 658227665 125407007 519758110 843390200 965311413 61875044 300707207 380118565 575592253 96367557 925906033 873335570 933808759 187234550 811189259 529613906 608984467 524036399 885579083 40438705 342438346 360496844 538818059 492186948 793842125 993594824 999025978 872030861 964596943 719924997 894266602 485737287 837713424 347765265 497982657 557891340 692754181 127924519 281808430 820554966 984681507 308528358 647136534 657026964 688694624 883869443 925544647 858306407 998789400 910526933 954086518 452997672 954785148 676279397 863752175 921897660 964522881 640631383 938189429 304168028 636058860 160560539 664333113 346559617 774226039 275933723 784092151 842511480 911008473 51365683 144399301 983616707 989211998 816841268 878872897 160661135 788931688 658391693 709531796 54218438 401871861 760105169 904107627 379940539 412638845 929259899 942345157 923231613 927159092 850029840 992732716 565531950 921015902 148767510 338817018 49039609 359893469 533091423 740998200 152904536 976844880 189374609 404790712 579595322 816579490 987350080 988062329 608248546 962863991 941957933 960731777 947352813 979446849 86292792 109614293 95021516 587332704 446104862 550667935 26672386 321010475 767407091 853237114 145925800 460187481 689971410 777493426 959940595 961937965 110005917 656814613 478077579 757955337 836472728 890093040 224842056 600294474 50203893 776097811 134067387 883370147 287958637 293431042 363414657 564375662 310951603 973440130 692449615 931751734 699910263 999616733 236211925 697029734 768048898 969604442 992941948 994635247 590073422 972333286 526012597 979012573 428877397 495366639 411642668 666661155 167821170 658374251 917249079 966489425 551856480 938793297 385857306 501952869 421811599 846678770 972525357 984001273 961293501 969461227 885744369 996265142 802796840 958783608 721078797 797323954 103671993 797381476 267117055 339150389 539524779 649577801 232058462 428526697 799162729 914938785 512708118 521206447 914222568 940945455 428995242 991009029 941646354 951440373 794764495 934655197 659455431 694948396 272677644 984637300 665627371 730045966 661136907 788865433 575593688 895104484 433544739 508500432 595287299 679439450 556138644 622892503 624980224 758217198 18688735 723619929 449668824 800152895 938246279 961328429 313071958 654713790 16944315 640907843 488282001 852828147 573367905 626947670 137196146 891605594 788401463 800975681 639898053 777405176 691342489 737942202 718912988 985075836 709570052 970516319 19731889 647723233 703064114 861669466 638085578 861600044 312105285 639391610 901506223 960383956 854466940 959266806 583128948 617810791 6550399 133651694 682758447 921814319 69542953 465244081 60074508 551530237 692958060 903678908 631490958 669409073 732480990 956707282 873605877 976438776 817126156 921619466 668461992 990510091 724389071 943715352 273396639 971585712 730184016 733773351 668718009 786650299 483291609 592146698 372327952 685858434 655796543 810382402 745741317 899101161 156760105 854104995 986781582 991154923 320698281 671506045 815023103 983522049 86883234 229816142 984027628 986503938 165115256 663243004 313688643 431620914 201115648 820000549 410550219 560149291 85246810 189122891 579414412 849622117 82123070 197002230 373648377 501664481 664557606 971777629 727336695 991544770 852510739 879598163 108301266 195835731 550134274 588103784 335372327 761317821 108092890 695181186 559746982 860580301 90805381 704988861 496439126 728817896 542549941 967067173 925564984 945305177 856923785 962253015 814289042 898984186 137846165 269883967 339504391 964890378 484397878 803373614 424929478 662132672 641302618 956764295 495576150 957085028 898642853 956298986 835315057 976557205 651972734 779097509 186654131 212761955 367160012 814787911 936506499 996396037 774260095 842099684 370478373 506172560 525912473 528450910 287143293 481170678 77546710 87783404 903367818 953153028 665059678 945059402 412157145 736920147 991573029 998948142 84110321 964648323 486715429 539386854 4636465 57854791 407845066 893842983 807770635 824821369 984166694 991348101 843879866 901415091 318104579 739978468 179409863 347449315 541975150 908911650 352875701 824935917 613380581 622009790 990483293 992583997 867853965 981200062 154954662 830784671 343747407 813566155 366589579 413350863 950963510 956153374 649199031 681121304 311525176 432643954 248368182 594146441 79981533 432332221 40080093 517137200 819155537 929681718 584160741 735354272 667007673 843621921 611166071 676802663 845605341 919158906 567061933 615804081 305940139 313114888 97132463 931002333 583574018 632611263 361208470 841882528 141027761 826113042 794418138 992324841 630952762 681025762 770409705 926339294 733903043 940071214 619368766 647490333 361707379 701288714 127148425 918378328 375156603 811306178 131176562 267376670 60737945 86749005 279389854 539930017 487999653 790060739 229051427 957031665 681027145 697668694 94525075 373814822 157818062 924767654 441570420 726079627 172280615 325155884 652052522 769078256 485059706 863701419 771926305 963535051 318417422 692626691 182691395 374741211 701485461 902068033 348796328 748104067 803461880 947817416 67020026 675387059 596157495 830156007 43795590 114517689 237312071 883161007 214739967 657173273 311663018 728653489 949772227 963014186 59222096 973239168 831270088 844892013 599198579 836668650 931952857 980428054 59945145 895203177 327674426 786442896 58009723 496212264 293044278 806599790 801640405 855790644 389778045 844870680 56077562 303863788 992676365 995933086 547082015 744544359 331388350 496746333 496275828 921165517 269315685 716021446 69051189 950336971 490660145 842593542 544356803 569343940 418087757 620141559 366481190 849665946 385397724 745041561 363572248 727281220 415386733 900371602 85426608 838952329 334359063 917310757 183775023 284994674 376760588 512950170 758508253 859245742 60178540 528354783 760407753 793376768 787154127 850927620 397051723 602767723 282800047 978595280 104392420 234115473 272652613 745721967 175374099 777862094 356258651 657697202 3225022 299706707 89301227 730598168 15211103 490254398 973181757 995621760 55087864 249509184 562807846 941309731 404231548 821942228 736980470 912010107 604073349 752523520 698259250 795856119 756647661 966402752 389449921 503559559 496476367 706103561 634746944 972539275 572379124 761742660 463902732 910200842 466963993 522919551 455921220 925416941 342764186 472353376 637202220 950710149 366629189 922380885 755360873 913295927 723483187 756903104 146758086 206439454 91984611 103563952 683371316 916202517 90004311 827096543 763137429 820756750 119632172 919121812 340261006 540539390 667707401 972835774 990974199 999039344 789565653 995137022 947836315 964418452 484587921 783801000 152215598 531259179 166213162 538921944 731051793 908860966 544116477 872780163 188170085 319230879 458336527 535837933 192774043 358092650 471973032 839801819 971988510 992438723 681899365 800337446 708706119 729319971 196664624 860691708 673898061 707542343 30062870 135903364 440166706 494574526 524733063 912686236 358470100 505892765 489718297 931459596 259525922 320659738 542704050 748590775 760468211 935306964 61335151 841803768 241629162 963389854 277894608 863256218 980662838 999011081 902404172 930479104 536341218 722602253 294023451 382465598 698295772 720381357 789489126 991993290 22812735 261392203 838138939 979636579 766204799 957619416 678231608 961456541 781188387 903729821 973053957 976570149 646752079 837854068 135218044 934686153 256898648 357543279 651999321 952644534 214829542 607286794 780109470 859691182 317828918 832678462 355082376 536439514 375920738 567951666 271288258 647752395 902618331 931413624 774120572 938469441 579375999 877811137 438034527 995064120 822867517 841909065 68528411 286249903 137314586 895538126 737530839 800175124 24111317 318062537 934231379 993942157 554027474 562661233 703223357 707584833 436006097 909844081 155521915 337202112 929773595 982654956 344090698 977600363 645029471 837152537 817497243 890149523 580599662 594463716 342707550 352728403 701293563 881524549 214514624 914827454 636479169 673479053 293124976 759948662 236150189 676697355 382512955 548865398 986044684 991389888 344697219 547640436 982165521 989556765 64722333 901967919 530725252 537651420 933466632 943548083 234584312 949474739 916034083 984327906 858291256 886684152 138059972 714042348 737880026 870822135 113487703 740033383 369394755 530848686 733592263 831839689 18674754 449855236 417535953 833068356 620401791 626830456 983505297 996005688 899265183 922690729 580017559 854922502 517510882 532990115 958537283 970421825 787824026 828112840 940401465 950056042 204002490 938246418 646657573 941113985 107188171 829091047 482293985 642481581 930820569 960543245 59507052 493351641 6079946 591484434 879274811 946895171 105879819 960533631 326353008 907466172 310088046 952115972 274402985 593330018 900496216 905284391 12653543 859148800 988611966 995491003 615413709 780125781 832887487 875126663 794204726 880415597 186058211 611096362 747318055 804762657 968453829 999652336 332864819 489730485 874275797 910005281 652166470 991160905 496220085 974033254 846499344 935171236 744362760 745537876 709615476 882148939 279389727 339186224 110665091 548961255 776718698 923490998 518546829 657119518 182770891 704582704 299630247 793160809 232971318 402056489 512278703 616887927 462826430 481810392 60952196 667050980 547245095 914937766 138403401 255542009 470889411 853277463 194521542 852065981 337139765 893341080 441233418 669811715 559211937 689311641 476783818 594312662 166799381 985042178 580372187 882599597 660849677 928946670 810912277 910201103 546937650 963269263 959065677 970240814 565089779 784137440 145322493 855147632 788751873 881224566 341331550 775800265 295797739 400125101 967691476 998900317 341268098 471367109 888230922 969284530 379986411 884596099 901727495 915440153 721771707 811666881 795354158 896808637 140584207 943331642 432312663 490357044 133679108 711034001 756283194 996916665 216609381 342102229 10642097 476053100 234132103 850449625 358382011 807025692 712785428 721918615 249764023 761844097 880879520 948147844 670573680 958405379 481412990 733124275 105814328 840050222 858381312 937760084 37227509 910870860 271282156 344516152 998138364 999111235 143547375 436634434 266055429 787396809 429240017 561250799 156863182 415425145 192719253 829066267 194724408 733922037 762773256 971483142 578581284 919613253 199784419 417456980 723757907 744167542 832340268 878144292 525571612 673382345 910419745 998708510 196158032 437177743 162612034 666981116 32357443 773861091 588559874 605035322 987940929 997840288 45749413 221182064 715445949 930936402 594460397 801486503 143840269 355457428 883117183 998302138 620362102 639911201 515185485 855572985 560310088 819031500 704602232 813789137 452150463 758628576 869592255 929278304 550591389 946104087 542497569 655306963 820516160 872129732 856568562 951498304 734232108 890697325 709997028 978669340 134763131 762645321 180052745 851556726 859502927 873922958 946387173 987358457 510539099 561970484 97673518 574817950 695864846 866835692 77067413 316983012 731229908 969542926 551410395 592141951 792845743 831663988 229774737 854884287 319343736 786241125 470455965 707498495 572430468 624825932 300086846 516146816 686196099 745150626 16802371 347727938 865165093 925791444 958452550 970351475 58833125 990149179 615769480 834389922 814069003 921318210 301239361 533889356 663534957 855984847 11919972 217024120 98765808 600198026 979066585 992655487 524504012 883233687 661033803 697789708 607788847 999143971 504785259 725667813 908376777 952391994 964322122 971745158 594980278 907029712 764551395 959348418 321158394 820856412 399608457 794940601 917978943 978098755 308794566 738025550 381573616 481833325 196326480 996049928 310811476 714018669 371790964 579789599 286368902 552284897 722556309 892094350 253314098 340178668 884910438 924194946 360026850 846471699 52529522 554736106 138546371 223250435 296260147 411229664 300110556 524209307 444743512 889884106 174464843 459319955 585969883 834121635 795881196 815977717 885685780 892777497 636313346 840948423 98648544 293794934 261610590 549308952 296151413 981278975 112266105 281816105 976202959 979191758 264608694 364639259 712749823 770697171 307917632 873799557 57214007 264576848 517194349 962729576 233870651 695209334 256197054 844713151 119490372 849590238 246314578 673609042 291571189 382469472 54786084 632921664 85388540 215432663 566437731 685845813 73863967 166161057 153083847 932074005 143027102 811097666 640786393 664134918 471486022 533707158 269876253 281120000 340370844 639966052 487461524 901629002 580282008 729990296 902835145 964068828 70291952 288502288 429268168 634166483 115794675 256338535 700896215 845773376 466512980 905435245 889497749 921780168 279968217 299524676 600679281 785408145 580870698 798950813 626615986 962162942 53007957 734226501 257239650 653254787 13294206 919091043 230184707 326671122 791113473 990276260 746619695 896295243 198234798 457705435 121598932 501034276 38265295 326908176 215156600 266527563 859006739 967972202 688896745 717454029 117018516 990707180 797285137 988023069 890811481 911025915 878949428 993284638 489344156 811341101 633419546 660541043 342047686 615510186 657056486 689398885 276768474 487360923 566238772 643697324 342952111 556056557 190239548 533589041 38827893 52292755 120701266 428800250 394453687 430696046 468962830 771806219 567276234 732522554 213599225 925721780 222242792 727508477 570698036 945876930 64202444 283513325 948681777 990131125 186605734 297209906 780291547 892171522 24474629 38516172 634931498 942102789 538308458 724127005 761684258 806229868 462163702 775762633 991052698 991600589 361851342 547799516 292544814 922252998 641115900 708514713 878297829 993691080 428046674 962183373 207795524 523579211 960800108 969848049 499970212 841012221 153103992 278327296 565044151 995556870 29130468 846826057 997564869 998950699 822463694 978421607 340133877 796704123 468999100 996965152 901935385 989639489 152072402 968762698 994505943 996016754 359254909 701111401 411567904 736353190 744756075 839767605 38412040 140895297 401697254 920603359 307561843 335055287 236686261 525510851 974766393 992089945 802019608 917077820 621839904 701041660 141211361 845844834 311045392 398559503 191058732 807926617 583803868 758181653 978813420 997078899 870572936 931934575 689060904 773508511 988201518 995530350 635999851 869799270 550174731 802596693 272209532 871506678 593543984 798699032 934871274 982849239 467304046 599157499 117482238 899463748 800418929 869033665 484280764 655714801 383757302 896508650 620402626 922395453 668846685 770320178 795259983 798795548 162793592 525181671 284717848 538941095 90931869 114950333 998173962 999701471 525113265 883423528 696329976 739667353 234369404 739225329 300659289 354075596 833306156 962404828 341338050 623519697 298519607 361377789 163267383 830737635 242253188 725627776 16017942 406424520 617862841 906800689 543827857 647565417 403759446 447170050 66651021 452988370 999516936 999978651 996411054 998795944 974832819 989449448 100086723 501964686 557499608 700371420 369542086 859542658 47634627 325651839 861584479 943469221 246658446 762300894 844413442 846352457 871140714 913923687 223191652 671843475 914385030 958076610 68212551 506533603 600306818 861469297 960909701 963218778 911885370 988064695 338383499 689288168 314398773 980523871 804558102 965013046 429742994 804515754 306522340 365717528 630470874 744330241 561972213 917311740 465677422 516503017 794021029 926862154 15588373 580522905 50687746 56393034 116253564 492698497 305694418 443044684 141776658 305790063 504560726 564137416 689955245 934950938 407589790 792355106 304853338 681591101 756375889 977683547 3939880 635802754 776660693 809406576 195076103 195760111 25469305 162567130 885916452 918140999 378798673 933738849 564721548 682876728 876354428 930733929 58893086 817843212 247204282 438109806 6336031 954871704 208550502 336361814 976850851 993254959 810585082 902300344 670185242 780978244 231577723 890330311 311883008 357932594 493882593 663126250 350473234 467328395 197774229 360617005 514432235 617297972 825928601 937971241 166442509 195654787 738314412 879929622 733389842 861823201 503715630 848184100 205340111 779819960 543011763 748436452 405062443 516864631 984130574 996784882 277861977 560487419 23038422 668583771 536595345 873198453 748983774 891037180 816629395 931176645 580814703 844146070 262045778 643164890 486640849 894570442 902736254 981022762 973257453 994084755 135235927 736092951 938049988 967346095 192497836 433127297 655418319 859936609 878759232 912685844 485782657 562331681 707491059 993706979 274968487 675028285 583181068 705777652 819121596 855538054 678346600 873482250 888317951 988796237 136056718 369646469 959453991 981625538 905997334 910859345 520313652 941253216 605776133 742424130 31742998 990048103 18337835 508591713 203023762 342205191 81406892 678497297 117222703 994297176 446933988 457545610 146537651 575275647 8725914 349796490 546994158 856800021 927034391 941247708 328395281 904930998 528597347 850696067 123876504 781749407 716767826 740826755 839091143 889314510 79101185 874050626 97631264 323961675 680609885 890191254 725685800 983745350 60505945 933574532 599588278 973909378 728646852 946799126 154330392 586877838 445016911 898094062 785355659 875072601 153407375 695561248 93042624 126038013 288713617 908915269 654826872 915468651 532845297 588317287 65852019 969108616 262074442 278656029 896796318 900665825 175849708 343791834 85619091 730338229 134905026 195981850 466185556 667899971 475713728 563529212 11789892 590152698 984771352 993233672 342973392 711445393 665820344 777394590 638285497 796471827 687861230 830541456 563629034 678696009 145931071 734438427 770339517 878539927 433817138 986744842 673462905 883882100 248082927 655117852 749247123 971653551 279191610 915836206 287555227 561326134 211675680 455669321 312414535 748227121 178048979 572698665 303271751 755562973 837279079 967064245 282886189 656110113 882564852 974080124 60317744 964975916 442359661 646438326 448452102 531135752 863451715 969570338 261392757 953081381 463016931 555100628 102791565 444947347 403721865 740534986 245146996 318092580 829702326 986968273 580293633 810473595 198869910 998208289 406346940 522192386 718732836 933759735 686231685 939976739 931267513 981632347 376168236 618312821 699478118 914456057 574111550 901953222 820569383 897631558 62069827 234028944 146571110 598162049 684648453 891140926 522440156 937228801 725942190 906077870 549933357 751233073 861771663 937114930 924113533 950099304 974237256 999007774 115651066 465015435 849075810 989434435 754386667 893618825 831781915 955514348 572745068 699295363 225413171 588147666 875965430 987484424 65696373 637864926 974398889 976565673 885386129 909830875 482445685 928453756 632353128 745191240 173497674 551568985 401502196 780852038 186571360 645515254 327368512 436673478 270508622 945684756 273037886 413333659 379732490 961531987 43453098 477128740 698587724 882582448 284476553 695663459 547470223 640792616 568439246 809119048 416233803 525766609 179683771 855381948 252709483 708632244 211475191 917252786 32691436 501270549 791103243 803181424 259988993 456397177 176459885 432960648 262539497 302482021 258159599 949048482 491815323 877778498 423560849 581466506 529098449 789236183 668140641 719656534 103058918 207365396 671146678 826724389 978740098 990348733 286146286 490351477 988562303 999485800 962800669 999152375 829726390 989511199 155146363 180390004 447199467 574845799 847544134 875999426 444557643 849720635 32659280 877719848 466136198 738242050 298598669 667295799 725865066 869373878 160737040 602236454 94777679 395630789 272612905 740477802 560649044 634890947 648306901 680171612 450722117 804110874 139698516 624776743 789181300 798656682 551014558 945675563 730043385 882814185 388927721 826646057 947871897 974679728 733929343 836222053 429701815 962747505 720135188 914291884 611536801 881354226 647774457 805062242 655606535 883284307 233712090 669968531 189067700 378691246 940704417 973872718 819552619 844748831 315214942 666945040 109655738 319413050 983100789 989480079 338503878 445728047 498912504 771132593 234937929 645659703 993833839 996521732 594493014 953674867 69638526 718455933 115924641 400012057 786597888 853894274 858558758 992857497 735944600 871946370 30387891 131732006 224349204 539915245 627578933 863330859 60572540 704015261 241437073 870029516 225716853 966017443 17587749 368002251 431979578 805341168 356236345 865151817 820431415 976354535 829045212 891347781 782947642 858919895 940325486 998820929 957241254 965520696 901294412 957000024 963133006 995123444 407161414 531204975 888306269 957316951 672031313 925674850 299731269 501426590 97846020 997776987 524054021 693625175 554025893 826954672 62832709 390951588 932311376 949023590 712006772 717906080 14737401 184379232 464340424 894712996 206043452 601007308 382852861 799833085 599208130 888363337 185913808 960121125 610939990 891432237 5087753 929446658 225758020 496822112 359735816 868344559 369423340 688020359 799253664 981099984 72431808 223043197 486975045 559942476 822353327 975084663 777400533 908924091 888229398 899088795 729223885 895047274 739756069 840228141 142830734 583309831 944118071 954742050 19101223 662321739 974522823 989093601 241906984 959472777 82071658 560097719 710692617 743343626 875469313 995458059 559412843 562317124 340454204 715512383 79693179 543460227 392933892 489634050 599002622 902965809 644974599 732258421 896708931 994666021 563309683 755000798 892425080 899353610 100737919 934986323 592206793 900730801 542608805 825055643 96763696 613474722 580875859 899210524 434558711 578512504 918979007 927899593 127419103 152201269 184750873 658431430 403404903 629102460 206649130 648406995 924987046 997866708 959276657 997079203 236939170 371307995 707713115 831448624 170981350 765614148 954918630 986438895 966594501 974475014 234124629 476446965 550136012 932330998 823632791 830925706 73866727 659224930 972121492 972635387 288861049 342455471 807750215 827173189 313133990 765095949 650884870 713884922 276214578 371786783 610887017 876790094 64919360 581761024 569322742 927870128 527315171 948647074 891426989 902731482 758331848 897368330 882539211 903612586 705464499 768749851 664888492 732502045 210290969 427633548 626521010 705808658 985455813 995900704 113808290 246898058 384913400 385779791 11131726 222221030 119705037 576082801 142786113 360427245 323982150 513235366 36156148 60617049 220000419 876899643 238673753 767219333 835448891 848001787 156041769 551345833 382741689 659776751 534749524 591355261 236514200 766885379 32933147 910116404 881072213 930290793 315860378 842922186 121401276 943096345 464215258 474151561 618807893 771601404 119261894 376580641 212861185 396584008 930623267 986637192 142809210 786696907 569173100 711742651 63253761 599985416 769963076 794729353 838448213 857195778 836265226 885986875 809124570 954584254 896347251 971288431 9991428 714255137 103098478 512235572 578936291 951541917 514327881 758854751 498452319 945489822 785492312 833037744 867755133 904981418 574309203 592059648 132129163 403891975 949339278 979278463 31311671 88478559 162020068 649957954 917454522 918804141 708183204 952136172 502211780 655606649 355072005 829764577 928940386 933629574 773864070 836960917 673939803 801441680 43387026 545588431 928025915 964492149 685813583 878443887 193603888 984658537 824912544 915820129 842153190 852645078 927328036 963145035 134689436 843692294 535715474 660889629 653578896 883901413 819408454 970257439 204330718 271068200 408679596 544115763 511122239 536808153 627404487 840463338 91965079 635971937 532815895 669463099 460539063 949354960 878730308 963360005 389288538 564824822 762116468 772905250 708951406 875819068 694916329 868421831 962353900 997692877 703645406 711098147 582439458 616974991 367577609 982770849 979940195 980167483 106283937 270406650 153975539 924146824 507653503 732964057 488636344 892339233 883018316 951154572 792471725 846052035 677042426 871362695 925864009 959584202 823059799 977061902 883094621 996914629 406614187 635504227 122954765 493367375 581628874 781821545 180694059 927357609 145430623 249625050 901290356 958534566 839230167 938094961 202936658 459268169 134788027 612421607 323009031 985854809 77302850 650618402 982746631 984067851 769372275 882752234 665856117 741390323 298121637 575825714 403910132 892550073 991950707 994260691 445278192 674407006 265562194 884328649 955441028 993696403 729670144 863232730 730335866 930400642 239062180 787105774 327237125 451184991 15550059 793099306 318359413 646171795 933885662 977618278 783130589 804406008 898676028 962616176 966457589 971951361 19477358 940660090 53592297 326031467 697174329 944213511 106530140 899715450 209478733 708764883 71913372 761950116 122038002 372898873 716669590 827417231 744989590 844054781 224996000 880369464 781777080 866243602 739990542 874739284 71253617 406737075 322191497 362550054 937581005 974398778 942859520 995925180 214574147 262060281 24067934 836748358 82688695 576995443 690528865 953145099 5597622 261311743 129371269 247683621 50444071 825539194 229096158 313270370 500132543 831272971 208753425 693356074 892180492 984685085 548128615 600874478 765697144 967332580 825638219 944408944 758412941 793862855 438452534 776570727 676512366 858385033 968653269 971501090 554288400 809899906 969987401 993632591 919882914 994813347 605998249 726639129 66335090 190066490 594537419 596815857 428806071 733106045 326863950 738499684 599998428 671940468 173349236 888210255 221109678 390075642 435524463 464812312 710271659 782119453 62113766 426468772 684866517 754389310 780814782 973501720 732835297 926438504 459965777 686761413 855701163 950777615 438209116 745826588 854542948 914608928 573251873 918871148 866890350 872799215 1826241 727193917 957539465 958123354 839126867 873492237 576245670 721669750 866409347 970985637 190988983 409692480 420985376 760081609 445717584 591071425 22996863 472615300 198291953 771905176 831006126 983205107 855277731 972138787 511732688 654304188 307028040 453114594 704802610 852671581 348022755 741116611 87456611 237453437 111844885 449539926 856569960 982558747 331802967 777646293 647647160 681912468 602294519 954175925 922659654 989669341 368526881 428375190 773996253 983858125 835533328 905329124 821588151 994616198 4210381 151482761 111146296 457563786 357256855 377293963 950037080 973249315 530202895 629383187 262604916 588139901 200001638 792731335 333393948 867373206 704608619 778474771 96283380 360291940 720862959 803455955 149070992 259542657 927215904 944977333 470927431 650108350 308466022 956669412 424348520 751703824 512715665 527435488 115597270 322553415 292042206 395348316 276945330 376854766 743830401 840306831 459204591 928095388 57103632 412290721 130149129 465306896 193659310 334408899 529706826 631404775 4298570 12929072 640293421 876871693 468086858 643275867 10571727 259711415 168663713 390316499 722143727 797441105 626478300 886352465 879628093 937814249 656321682 733678439 222890073 351116016 212078136 381613750 813695597 942890940 202394341 596545660 949998356 951391646 205162633 341491234 259127589 666162619 534779740 580922275 596500191 767415769 550435739 874114628 967176972 993157885 406088653 711518378 167206276 861533267 613696403 809987759 597514127 892229994 130469019 729350313 954640862 974361385 530407351 620517520 284309071 691824340 173089379 482024278 956953379 989642621 215009681 765028334 914486955 936062822 531351208 852536135 522039852 529800128 132810805 566901136 635022689 955340387 99212794 239894446 613610258 662733574 724031044 919424696 895989095 937490902 305381603 738693017 522687466 810492345 971668020 997572185 75606870 261892955 91726890 531315716 647210977 876797110 189420078 526166380 759839795 806998633 712223308 864431086 663926532 831255495 540773247 773019022 968309322 974909479 712307366 811067461 185633517 572153755 880648162 925475845 737184763 941324199 796175186 963431218 27599379 853576555 888631415 970690032 415306264 860780558 370112425 910041851 403596118 419207778 992360846 997653349 590349437 984217286 688850362 903007976 233110590 779685443 354216822 816532556 635084309 717670685 568162426 924576248 256187315 780512007 9895030 153386592 232098280 674214318 97767777 959660085 145830407 168232485 915822371 929793475 726974575 872965349 274229612 388961246 740631007 899774943 286718148 326300889 548544503 624410955 261415973 697636923 115861303 182255396 178327386 669448890 993755551 994230965 258191564 492289782 580770375 759330733 777608431 963529130 212732521 734647681 51787159 399821798 106870932 280815985 578375775 672356075 177377594 453302157 999325387 999489407 814276025 895666030 933660902 986581637 50544053 576557220 241631915 276950125 846825419 853844932 891469508 960463777 15849422 417257076 690362286 930386286 807622712 949792085 210414632 862725002 218790830 614801460 659462150 872740771 244570568 464196043 352114874 593812868 577453029 718995215 517811034 725851288 971296729 990851168 364437646 830466785 644198151 719258334 323210302 771590685 250366198 442930089 513268750 743435380 636236257 938433162 111603200 581886953 876258096 889257375 766572390 874945240 895489189 944338092 682789937 972287701 848795614 964765729 208397186 290583011 319041857 684511194 552274191 594866471 503295115 966649989 885258306 946587770 293594234 396487963 551149020 561471492 227999359 490359294 323623996 420542915 92355202 659642154 282714366 836419978 734454647 775138250 256758783 416680338 788547013 876124219 55044227 920199186 219729338 877134776 466803888 892110244 517648598 802986045 680282886 695911591 390090825 537513524 912676831 948014742 257935301 271597454 818618182 824255687 160631257 404565409 907457026 969404497 865705604 907610653 24912126 791110541 765583216 982363433 158739383 879404520 986261993 999142527 328531541 585238503 15892276 374644335 765087448 855219124 687554034 910646095 580704845 945176721 579133281 683785099 771416657 894943420 455949357 950851603 597852996 865143875 456988204 911573550 811429309 813920157 362093793 813969321 639399316 865865437 493329761 732259260 945219208 988615797 125715423 812420048 808980602 869801587 281494120 427388873 150585348 194529114 485278214 778705528 74712585 432006959 912242150 957411870 588667106 908580573 534280077 661000242 364412641 851867898 656065950 844546119 201681890 546136600 323262777 889808781 563891134 882889580 551730251 881869672 186310762 569322204 727573227 980811091 237216679 587573392 367436560 755107020 383828286 969254178 979680622 993928312 478665738 689482667 925846021 931361171 537809460 740254313 153396925 874300188 298657278 507024538 370541144 775000949 193396775 745754500 649916233 711864497 517661750 606540994 464756662 782209861 340146073 456526878 179956764 705694604 291755358 967172213 513615301 771161666 790889356 986077733 550300138 955757982 618642237 636280133 88741897 657913202 596873796 907654841 460866644 943587608 962290697 969611909 361741286 940953095 418244559 832423584 990542713 996974810 230370316 844429706 910678509 994817441 579104307 947392736 541505621 867025867 385751233 780646989 196197416 336522670 156764347 523093996 108224505 934771075 539516227 899690244 499161413 716601367 817095038 863693101 982588416 983294235 613018297 815498798 729366435 939178350 839295950 895667967 506239270 933892086 436310135 754259197 841882258 865124296 806498021 826169724 122664428 575553559 146285416 949437869 890202676 958262048 731908718 938464354 56874786 489958461 209474873 871213523 68076169 502052065 398455854 783425050 890701544 964096543 905459563 954763243 418368724 815750531 44817898 64946805 322041042 967214232 374047656 429558145 945962178 998857257 133550018 912690954 196306577 950793761 451785093 946660890 371453788 842924565 889427578 967235035 18852356 705508943 32494097 773444076 246336920 312716335 26737326 442324126 562255565 950554358 699060014 854530982 256696655 918963269 939313025 976713894 171512159 336167650 204710068 279662093 383097762 978760962 5893431 260260543 202273056 744370430 270278678 575499813 15369809 829030691 404731593 640431268 83608085 825845568 571593968 821119981 631285294 942878750 776573534 903567408 415418784 749767865 325447549 361934366 553443980 758589140 290233944 603763069 101557044 333424698 814898511 815723887 498242469 591771640 533701749 940895955 168681988 172588727 78575787 589839631 81489248 861071297 995318420 998610975 566066381 760848909 542445477 788095829 314083576 948841800 76453980 209439303 492505380 641935122 372639201 908649859 572657499 980289839 409476899 900276345 107043149 670129672 145701457 348564540 678839713 954512107 534577078 857199214 172650323 839719333 400205288 881046879 369159848 437044992 966976964 991264879 586813997 643109152 721167915 773600841 949868923 994368057 848607988 957894694 707850368 844575420 146613729 448125721 780488282 931997399 225552127 404678027 340639098 695195329 57072076 152046203 884963516 940727762 878551527 929232505 734671149 828978909 63607116 279996886 329385128 838203652 672097339 725722397 602234195 745547518 637403057 839676562 852305173 969593253 242566595 626748723 310881555 499670285 90337608 199347314 444009671 976268326 266968088 542775636 381438059 737020911 703625948 970037308 186088249 656662800 109183734 793529115 380539008 810561357 25639182 864324269 381333712 981622449 326449147 927234788 755953906 891311457 777599966 817731117 302899471 381913190 565423002 613154512 652280527 659433995 667401848 804792509 216345707 345771974 996252924 999435336 937000390 998679143 760732898 857180103 263658380 946866449 20757413 227089329 815630000 945757806 157570571 218334035 735686744 825673877 362005319 823023635 85727599 690676998 305819527 781391627 600895431 732991485 251598261 270221905 575428767 601646980 689621339 933203453 973933165 997242636 92400422 604368456 836114671 974272703 227997430 343083597 301867153 781954782 311297222 540402235 181786396 951216045 869888989 966023753 950323637 985650833 688276658 909850010 859900540 932471561 975006503 989905351 742275036 813051732 140045433 738071430 251179055 647971917 503071949 797937361 583494258 733499188 182209398 341273498 272692155 355387212 996638728 999962163 793705547 906408086 777041975 847754983 370097043 402457336 739858209 938355172 646483199 902543171 495077269 603779865 773858162 947731367 145785095 752549333 398184368 809866634 980425779 988155742 323340718 990724531 314672714 994985970 146435177 195474170 587241525 891220425 659978126 875398358 182252140 738241828 543498580 666927370 84820524 141466796 211267498 388564957 602497987 754682521 207068731 278704852 988447699 991037166 732800053 750364733 454999332 465833260 352465164 761911736 813228858 821459617 3238740 120250763 660250977 986742123 687177204 833762887 818846491 961517193 564205364 908834550 186583128 264958494 423975227 551523777 523321670 610317646 186212569 254053816 912237156 943936526 266731255 594756590 838061467 925150887 8469655 842613683 722509032 888334999 63263035 521214834 828111967 919792281 789173621 809216052 787864501 830721760 744993701 952573243 843876344 900097059 23496144 115150166 358195547 703341404 809996013 852807342 672763623 947422453 691640436 812079284 100266074 430294805 820547039 947889286 456753058 493465974 947344122 951267449 337227472 868380978 483734238 715688524 553495114 598825149 564122642 658138832 492827574 615513646 825964364 910186764 811849742 907645362 946395860 952742217 894537644 908240971 401783768 447992854 109091324 638936557 21735708 434135893 27111425 651874343 918375036 994071429 730430129 895072388 799284676 976538851 409599017 986242293 859387491 957028321 656337606 805693582 542671523 548764573 307985930 671309966 403525789 597991550 753293487 942724297 14231347 976789813 749213859 891198978 231598902 402459452 924608599 970524937 352803315 743875447 974806221 992129723 441754199 576862733 727705941 787339424 928219479 999768707 396702922 495352361 569939367 813843437 249792600 954523683 672405243 870768463 699019188 753842577 282218120 313468947 193650717 578461434 657913322 782112949 956322277 978091853 281373841 840100285 249182634 389389657 606625270 722228944 858074313 984575498 513554972 518404486 764419466 955865539 942476296 961547717 357637194 954103953 189161061 442741767 75582472 267868988 874639637 904372601 229469874 764826010 174526308 876886702 245324141 974363491 201344409 641325337 404765552 704158220 318302483 511642061 368617755 430075091 815745921 972487062 999945729 999948865 314506441 732105103 998148824 999738388 769249047 801172524 261255227 723665295 495264380 744931660 587726867 764590684 997234345 998066259 948871396 984165515 348031684 751185789 282817838 538065510 878117547 913858138 437008933 739556552 326048517 510923360 572572240 654538188 340887899 756010937 132073982 880639813 499913821 573493246 250837902 535547587 380161534 901290164 64825205 878440356 399450972 918835906 255861973 795342877 646290430 994352169 419629303 604757709 689316314 718552029 554080483 580945360 354819758 877733400 935633534 959288190 491210423 786015139 444094158 956912539 522046305 966721290 793434496 830392990 341180746 399171984 631229343 663927064 48951196 392127051 986709178 997462956 639264311 879221135 395844414 604955329 802772637 952819730 663691011 938898935 866334805 955638374 202600564 332972072 225917093 822890919 185139610 985471098 783490719 819750607 754100946 802026728 299214426 768027079 775810133 876786039 909009806 955833654 187981799 251923645 277149576 657466334 826445 694347441 968052570 996663319 761136205 829879295 318898110 843420943 396873172 595563854 145334207 288654790 313302357 353519616 402847719 896742340 3851677 953144724 556536602 661232589 955243547 986672139 177726475 368806161 757120247 945493137 678889431 830327249 901900527 909320721 829889517 854861092 827343021 849755342 439631859 923593668 387637542 902928488 23635331 310368034 510040840 747276391 896700423 993138449 776673654 821018750 686616404 796310712 306227222 853172385 690339233 959226360 270356884 789781617 877387588 990716489 168159812 467969388 867723080 919889714 370375720 858213407 706328776 894977301 409153270 974878705 814350972 891375594 500439588 645586743 671797685 948231606 225291138 917470910 549944319 761168123 592289301 631296738 200580574 293718514 724596545 901430771 424276710 933379363 48768896 870933057 579617708 946429863 324862255 356490192 147989931 643636781 231077795 717463359 216375702 849551355 82591610 753116644 485447911 965741786 191974382 316871818 492102631 838600514 488096447 956679292 444786811 967540312 626193248 853702267 566077256 797677436 585186955 759241156 933111324 938747808 358883654 406704581 731189813 823947055 127912955 804906447 321364284 520036662 998836123 999588729 345013473 984546940 137358592 598166065 540064566 902532058 580548386 812663785 837142594 923019689 36789239 120364604 317253548 694476026 914590719 964148414 708518805 807329061 176567499 216238099 281773623 384788283 444062028 867533455 830055066 895201918 231932830 423993294 211572372 959056326 879524231 969137853 635426508 956851992 388995311 516363597 369109073 918588284 844649327 976374694 901717496 939233551 545036267 863222396 909711177 944970154 885233093 890024120 416881534 766186589 74239885 112712172 616353979 750370713 828986392 944474771 729968873 739660679 448464352 935399256 981238328 988007938 595411177 760289830 5919273 704168222 118272181 361130773 497598280 867254093 580797138 593592110 302126610 855036201 595901479 629871578 774187126 815710638 785018648 866909736 257635856 623079067 329969111 799904838 361838614 737948866 606748554 934038185 379848007 964097744 791221300 844344661 635378077 896081398 221551923 364241034 740160239 889055209 703547915 723384009 951165984 953728901 969799814 987921886 760583843 951660491 972643047 981365047 268987171 444481135 798024393 864738021 567212361 748034925 840603083 899341635 673575751 974425925 573623336 691913185 393131369 974286949 655648858 683642939 894712247 929067896 236050742 242161717 523759208 934455875 132679303 496387413 701052656 775650788 696334308 752016087 657411160 834874266 967794628 984207293 564889165 661140422 395064940 861086839 629284706 665245130 185671936 238289422 457665081 922622098 647837172 729846838 344844874 913311538 944710701 993809369 81475821 351769981 340708863 994385934 900782598 968934379 405866461 769841425 438227272 960027711 476832632 859192374 582471459 831699096 230693597 295071306 163549797 215901004 103799138 988414996 230153369 464772419 853448020 881874414 190852449 329839296 684339838 726755646 978553378 995685295 607222023 916163391 346146302 630146586 481787794 920002974 465260679 910114204 77645026 326307744 903663683 977064343 227848075 932912342 589636348 623180348 983372882 991784360 904037544 914380053 56472714 400154054 169905645 805369211 122567589 654365370 131723894 197019045 716615557 916162816 600237466 954797557 700532571 908724335 130416255 982881209 926129838 944811661 245255084 731388572 107382515 951442284 227537063 669989400 389880561 718721768 966785146 999773993 624174754 667350560 35082578 399217749 641984788 753036873 21818774 783474466 476065421 795287258 345502600 773141240 930286139 981737210 304260167 642070491 267649326 973473276 738423525 970237598 838516984 886556188 39012383 973545467 853558665 955778194 9271096 291889648 652375831 873722249 644367311 737432637 800091259 957373952 22526521 416264792 229807377 533934554 857973971 934922201 676114722 681847044 717521158 910580185 15420877 716260615 284636958 932964502 852696613 917324282 787917333 905604540 685923676 734158706 731329652 758888537 488926843 879618995 664987240 956380236 967566679 974471080 488249885 681128346 270324593 470458524 977617371 997668825 942814879 956697536 564211466 713920888 341809345 378758499 13455795 526733875 799724913 869656996 43964927 854204462 597308087 606618378 101176639 378065255 413414050 960788860 484214339 790928920 369790231 889316583 916323807 917945712 573720608 850485822 751260636 899969308 744561620 897346510 121390946 360887126 375996549 612521463 634759957 844763722 21353907 785196075 961645699 992796767 165202130 367352741 25647941 662384541 345568617 656449871 136306810 238111613 7231801 266364032 703535929 827870124 469365024 992747843 325430545 706471351 914888044 936179260 78621844 615894492 591588482 846154595 269421485 372596758 179563600 744839846 763277395 893817737 386057532 752331009 526961854 994303236 584150592 740113295 555326434 769387893 328953569 384463207 358691661 705039700 233249227 623463103 672446936 736455220 160141912 506029715 312298653 345358601 869711877 999068099 594056738 656477404 964934321 999721202 284041875 561743916 966340038 980362253 249039815 782709942 192160433 946576962 31406808 200773303 994475201 994750266 25355912 209332152 830202000 857227449 148804233 777545846 559669395 960331854 45914013 542935012 613996457 949247457 619333007 692672741 76059142 82966675 711426027 962049346 522934554 944549574 948180165 988863659 815700237 942604918 825321194 976232636 490991299 514739794 292919330 461619293 465644079 648361128 10356719 703990858 188257127 991420894 637238442 740471678 59324409 975815349 646903366 920497061 606913223 765105438 43739171 727012004 603228563 851899185 956912429 992508174 364859224 379222609 964038723 978442399 264149359 533166823 330651987 530767415 479956290 502897748 408875396 890782690 230728901 267936659 627799616 841285111 996965351 999720882 419582277 571693713 250333910 646332893 545050837 677193944 982133845 999600912 662357201 679243153 543614568 933818904 670629514 760675357 664557609 906080443 169844836 715701757 657299029 689061676 29884014 991278159 94766098 619164928 878180647 935351773 160422409 586386192 334453440 515246628 516801119 978472957 205755115 312233960 161579814 565701039 343645349 365099936 946529694 984983741 403944637 431923508 467087461 635530465 408991424 790843871 52240777 197788021 420866689 777519869 729334310 866062088 418652750 639515136 314177523 424718286 135170495 655061411 256868742 340893938 499277216 695753540 311647800 423758463 465323792 918809062 438253725 523701458 298521004 909420333 864272432 902140133 208551824 822326617 808893475 970877867 521688619 749566591 527321433 650403694 39518736 554650294 111125003 318260617 819610903 989168847 925635960 978860547 477082490 638080117 536416979 868455156 529625962 827001309 285821552 632400827 684982073 792291400 896586297 949412331 820156007 828045357 959870903 990340318 963173661 977451090 32146138 778820898 13594101 376155478 251278203 893199501 423725225 955854046 853150853 899583037 158156292 164545305 848012974 985528597 75910797 477495156 959959370 998395095 737403505 963548614 190129651 754470716 11381790 989567659 952928618 978875115 896416366 944602512 877244900 896174989 448980451 726514633 663202 656776472 808552920 832860377 298825388 781593434 630351185 921036811 216167130 830418709 54022038 354132438 199063538 690859865 54501530 100702082 888790660 983932418 787720865 840129289 143832514 570645900 390035584 695791992 165632070 451255396 202411824 931455956 427884718 785270402 813078907 867424408 27999875 88544617 81877961 85166402 534328625 550501078 512980551 965693353 805779674 843535570 61305743 360684183 248206365 842157548 276303529 506982212 495647396 907120823 17939090 597216351 398707611 804374592 391155235 549812481 141065825 612005085 900439353 914525685 165283729 863946255 332808472 944300599 263961733 417525690 539336141 952529912 161350343 902459477 589500624 793441463 994388517 998811030 937702297 968422314 668552473 672719851 630270059 776850346 583639889 982171979 294348858 759724300 261144031 762760858 130813891 480093909 174015350 326152583 632339528 746791995 715112239 887110256 657537640 835263412 306378130 434261178 552990950 951601316 162582639 927170416 683684220 797656437 862556193 986648697 494405443 708377022 656505683 875902916 552154038 806077693 323094266 855988512 139999992 148594588 441280810 572429793 534872401 607762938 92843223 220440308 572516662 994940431 289891349 608463571 29354295 432747455 452157698 947765369 449777856 547430309 214243587 502311333 127760248 785934883 318460878 798310675 997389873 999387155 382699969 700793271 676790064 922936299 1691651 396757794 789450399 859860014 566558325 963147444 790728973 882250768 838136504 905684877 773183493 884152925 148087373 683561111 538740002 835613155 536034387 686272024 932272233 983932953 304953914 647880472 262439589 574890254 259122876 782058947 281037337 744004260 16606840 22852214 363642394 483585921 610550756 626946897 276501162 470879534 104223453 784747826 875220073 953795847 315347708 902900966 41645125 165464744 776806329 838620205 952634963 970475769 290085514 360166735 773264955 920664536 221702731 586698605 398093000 948395577 837761802 866994430 338381627 722146861 968935333 979867480 930045821 968255610 522908507 581733968 278769937 880462789 693825110 886910046 525358864 963207175 202828935 695137653 504522675 921935371 251014839 274095282 475579589 627417562 262188111 822553080 901775105 950632655 718790406 796291801 892352531 908736323 663915639 904598264 332502213 419554142 517458837 518520428 787978456 814465560 882025976 953663539 739692761 938138054 598311038 866966969 445373052 883948154 422009568 654785932 387988030 748208592 563268501 980073225 695143044 906816770 389637193 545140717 973785871 980414396 347949626 657149179 300906050 756433614 460621290 878421532 635215049 997558413 260109656 796037694 823825735 860310021 741242080 927670231 4484595 574244048 305025768 554934721 929575060 959031124 741281261 837256762 962742071 971459102 400721253 858319293 996096963 999607522 510730161 678679777 902826747 951372838 993582510 996836562 513532469 698462006 376586783 818652692 584199832 746545592 681282913 779899942 241425495 412386280 421244148 452775555 670401025 921995180 439491284 569149640 977052321 985900333 958311436 967527082 317810127 708520875 432350052 593079056 658195946 973282520 443191311 869320592 285815160 982740532 699106999 976500045 220314471 229266432 927940263 940289371 390136556 631459792 11213608 717436577 697472028 956727679 138406881 915126635 488539171 755405847 791849258 908699350 559698534 657832077 681936982 936989874 62931543 751065994 875602160 935010889 876822421 994107193 994045455 997440415 527166306 736957082 220561085 934229036 605235587 881259901 151210827 483626261 985979680 998499193 554592979 942884247 724237660 974379494 199177670 389919868 666445318 863918503 938232174 969585723 979433572 985543877 867208760 927490393 218599852 640391017 689943525 879712626 808817130 881949334 102181478 559234087 687399207 873382518 122692305 720959626 576134474 757052502 447509815 764881026 849923451 970681918 709232 939879132 800288893 841586436 355599423 454150873 238854937 683616876 706985573 881239072 169145048 455658990 779234825 821609961 152321060 879184979 918504181 935541947 703323518 975150740 913838623 978070457 993451184 999815538 781837689 840261619 621052970 686957484 730804385 777973456 689612015 988529509 279317609 374960487 769438958 842431000 72002877 548876569 88754279 604537919 315915911 645479070 43434341 986681066 743008212 923629533 528438149 778822863 524205267 594048385 62864731 843817600 550731962 634704480 739075374 948942236 1467132 264050601 382421329 627101656 484798716 806288873 85720690 963557289 231706950 681213173 10254576 603719554 960598116 983648011 602118694 748430090 629894039 744010227 859604656 963596481 549024548 551985901 722001647 779478731 284129544 589568530 383336522 451286597 844782078 891394397 639160031 682406006 634832541 932780821 604159752 848287098 610753025 761729448 434489587 833881116 317662317 630703990 135689523 688420583 112638748 485415350 906362514 947841604 886816545 959040630 236250015 270271040 815305117 896116961 139966471 186596676 734064806 763782910 866752638 975279064 348117044 611534573 63310737 123432227 889769358 951324903 426812415 822573788 287663962 291321516 247131348 579590648 5040057 169498022 935576621 955481991 747182934 770378079 563376258 819992854 642613483 948140411 798857680 821141638 936300757 995498089 726658600 739574265 797754988 834112519 729411946 867555537 538031386 654678393 192815215 562557911 760526690 806366131 465796093 635048393 890022315 922021400 209176794 652047351 854754176 981058454 33043239 984624484 4868428 792619352 217703765 524968451 9947392 892585610 886709281 993999868 106914428 468723340 895128480 988150211 311101098 559426833 319558187 632568709 114549846 584228394 218177491 303504227 30785645 450357693 548682647 636958341 55358528 964771111 13358942 215622753 771055365 884416305 277405916 507445497 290910808 423128948 530124029 780321982 589543648 861171614 386537906 689114213 786256762 792898044 966346321 973727604 930601910 952928124 523109363 566073411 276638328 805751864 411348785 864589090 955746619 962032741 547024787 610830381 859557862 926197346 502646591 716051084 124639472 685501616 1458551 50334257 105259967 287706879 831492046 964429664 49788074 987866047 533449581 976581948 222632173 603397823 41882037 933617689 33680856 185743450 386492936 828931182 733959610 864670006 100289870 667009140 747425161 938129878 112288388 596058794 909172213 941188384 861673514 888676237 396602470 446205979 83554305 489224502 584013783 784861820 159514389 172775924 396790758 416882759 236573722 305354148 401404128 464139036 34917258 105725042 698500882 957933967 604762908 836374529 390019474 601328139 591352961 739234987 223191698 599938491 566978466 831189153 267258819 968223713 529639785 849980734 20983402 376283354 391167254 865627103 462578442 582914351 614654623 616349082 449524683 464165036 829789835 858552555 177603474 874475589 402246219 996111616 190393834 988367142 205531081 940812225 956051482 985057311 781856225 875425204 751898920 792870191 875388792 920038152 766063286 906866737 119921917 595975678 226196674 897449537 570536073 825907013 723995123 836608712 443677411 528040521 194805943 351875836 773954482 942296633 550891883 886816495 947050750 980217647 473671242 875711830 518710431 669176756 571062769 883982364 292270867 514313190 701069209 711366201 719795346 866925344 790222448 951786340 696509037 882375589 476388395 633513372 998806032 999193508 207291794 746339401 644740018 851513479 739513436 784892877 707948181 755099749 985146376 999666879 307206064 899533215 352888065 462702254 280954369 379105653 332230148 658683568 727789458 827204908 620536447 944854056 505120419 621761054 144252575 224758445 349913116 703953987 507860676 907568565 501974594 504608339 534595334 948665658 930057070 933428965 925657914 938218300 947819278 968732172 923987021 967574612 974788598 995804713 401572890 847078569 12017625 51837368 699992022 963282529 610071406 994869486 981757725 993084242 840406272 891433075 379898511 849680494 641220255 915270398 325160496 649673796 331180119 945226806 568423271 596457567 986118418 994679314 919480999 989628516 287988938 756479216 17909625 754256427 285199535 742351518 690330850 693682522 399648493 882438154 421120094 750859512 499186020 751262775 17744775 184494331 664100387 939433951 594392102 775374459 245145534 705394861 750727278 933299167 285053176 752059711 357370979 695576456 577513156 636130882 289250459 391730171 86568726 434957006 265200559 884236903 48877697 412808748 546635283 772017980 334593575 791383759 240142494 863592042 666656054 855315311 290958027 412051856 416630554 939982046 316483017 901327806 715464679 950881457 400495561 953354331 245350853 801536721 298203843 834317132 982742211 992694488 852430283 996636325 286926025 935484364 454395944 578828110 241396527 928324042 147539337 363977225 345309071 886746245 237959290 898748264 343854217 712051360 483075796 712772772 467095064 646618349 127076650 621735884 920462095 958422283 968234955 971807974 757463722 960049698 994818625 997142054 38345837 458248855 465080548 882640118 501387803 642216483 472907270 605390181 10737085 252793180 943017680 978414145 851866101 970568460 901185334 903141794 131081522 724168416 54759497 607557784 973041815 987061057 845650638 851415368 435435795 458849169 442237662 627914835 614561038 802884662 291922578 735564194 320188526 801378918 197252698 788852035 44017810 824158840 782013675 803927772 846630643 990292609 785299 275357992 66847330 230069604 325444623 503187661 846462959 878024734 775201335 948852623 553933481 696240973 437724747 894862319 594207454 678629434 304145349 735933575 724907192 956532754 602111712 653901513 562710124 947664290 35606899 700149853 950583724 967292523 660403464 823320022 824570188 957681434 684202308 974361718 719762481 837063281 397813079 800836342 926568510 988678072 327843670 731416841 836799713 942528905 256333763 515957426 865210572 919903430 588829909 696906789 713173343 881348023 215415948 489488363 503462346 990764490 914356867 983039256 924647426 981810911 462070640 502480948 51814506 437762106 36328162 244637985 526537767 916785163 989706042 997995079 656679916 673562310 48716595 264814650 157773592 723409938 567460940 833798862 671032290 991721367 235826011 916563143 717790848 973736248 543247631 706030361 973103566 987075933 4306191 817342150 166897224 242446388 179311166 850274946 491996835 980331321 734935709 999294577 466762291 782243916 243186379 834923164 416873888 808864917 181814774 890306991 563307675 611900345 469765980 763879424 184265778 352715691 213843403 981631300 142161403 451501585 685977834 790068284 183052216 973997079 961439806 969552336 700361817 773937792 910999571 966682960 633434647 831456878 508044750 567638016 991464800 998916171 475260278 684214310 760371762 974785004 650905856 740221573 673467078 756194133 362013087 670704003 287251705 970190427 443353544 536423293 795055959 863450190 356177379 999445683 92648904 519929646 351679015 625841230 327206371 480290059 725839013 981076663 342911779 823484474 574949920 672496856 404802974 917984213 300405929 597794356 277438595 332848010 802272114 944168942 638764218 756352933 618479362 927441046 540200472 904805739 18822771 138624748 341722697 647752921 874129703 896252294 45610576 374927811 290751583 679119801 147745618 853499125 447970404 554574773 269756683 998242006 800794341 874934065 680255181 968865338 769226858 992419145 127734977 459018025 594680221 806381565 310978815 738808682 21591107 481172535 503791150 982133864 223902258 335498120 983936227 986679697 938774782 980776522 783897337 908888434 399268257 511497064 481094071 873955129 543484551 747348726 344436672 448619517 40547365 647513682 72247554 237425527 42077119 981281255 882646387 982037738 693088590 931562255 492294462 678946271 192063053 642080806 412980150 889472457 760440262 988202386 795106952 940035567 393164618 496814299 383852836 494624758 66239391 140173097 389748842 708639518 128086769 598019893 46910567 251886328 626616338 941043519 977371697 989197560 129877043 980156889 489138430 695260353 32823464 144621556 106354679 784371150 124656535 445511099 981227413 998380021 666949000 974514315 19966321 457626409 747132427 903866978 198126290 819503780 203288971 410707961 817837958 845061009 843679856 995083379 471764665 855693330 173908336 949974823 273347435 422694420 273901736 410994274 303079752 820688669 483648297 949898644 807503192 897092150 582277685 959519544 375736968 592028531 599540904 925447423 9662267 510580074 325714573 979267120 620368855 888580746 943672274 990886283 289153097 453255726 611885187 962378032 477842924 572442509 224370405 574871239 266069558 566973983 854241171 909582447 922548951 951761785 443484675 816366527 793177634 888623330 947576148 981121057 920108366 999013676 958970881 960132573 610346385 823444666 13124024 609469866 912704828 982515328 714117383 967472224 787627516 985425654 603437929 841030873 650500778 882375938 818949241 889038123 44912496 651140040 930213051 944801840 644005109 966897157 520108449 630586616 368847098 424045138 122000821 286930598 976707674 995817098 25436346 136847162 341997709 815481980 16618671 674549841 870931613 896682699 737092396 763774700 69701291 591085059 189732092 563227759 583268999 842731326 731546368 742255359 283920734 380090719 958934750 984904052 202887546 267936700 206757536 585594762 910770779 964721863 750525403 843411034 94979163 702348190 114778400 647779965 792763507 827481570 535417921 722540924 118121634 998978709 77824083 823478642 441243913 471520413 857671899 999339552 813189985 987860647 297459045 653352069 72722345 434555920 826221807 981794059 860098883 969897509 666177249 933038312 396475550 969698246 886661815 992833544 824763971 988796323 521805527 526819207 686841771 747311701 115118261 904611497 867748999 974474159 751596568 935238109 705136547 782429120 882659895 963980042 89080503 474966454 475743209 918673953 170264016 510073646 160741368 816506624 668621568 774507016 424997356 486676850 99323234 444675377 288344958 324173632 795637797 865433259 211199824 458698805 943107979 959963856 450731809 870781916 23502410 658680278 250420739 943043237 54314034 221941847 675168056 926910369 107828103 322436422 726540782 965097447 613051760 808875634 818643616 955639722 530900072 588214346 809558891 813224757 567154138 981811668 513224937 591240172 565337210 911443761 243627478 331312095 921537733 990201050 496961304 842919589 295179248 547806458 282443123 695974398 867795039 901205552 458201520 924854881 844626277 932774019 79016538 581879721 466881349 604814045 861778231 979818383 300767407 890829361 330899679 961382575 159244651 456910519 877532749 885036323 191103383 860023627 893411800 990224515 635627274 996990286 616042102 633146571 65478119 167797915 932772033 972982380 477059208 527892123 187833928 814842057 583002562 831004202 619243492 688131443 15696256 527617120 190848686 421246934 956946848 958533767 648835793 798295811 237140618 499330174 567168987 998617401 554776542 954875007 960840516 981369443 867512841 971078161 56804376 642183393 519515514 878545571 986400538 986684201 413152530 463556683 400164240 721397759 751837696 808209236 547515186 712430719 604340791 678938083 842641014 877982214 727628135 876080131 87067182 948686447 18213041 225819751 248306999 725916673 20400837 164742566 751541273 910885855 984633053 993228398 536869429 993633048 22099653 368679865 186371672 685905053 601860940 661431470 497638304 637184641 776515546 877447783 485100273 671674437 140976253 442899444 798761256 978754023 524567237 593088108 821080633 921526771 765342991 924533013 393917358 552984457 907914406 908775261 252757114 823018223 517071838 521543854 914424653 946018015 383633286 610662564 989783773 990404151 56552565 181158939 44164723 812065084 981759728 994088582 970661161 996479218 376283016 628250901 939047768 958941616 782540503 958664733 580362279 736048836 638136189 811245932 787974836 809793314 82223547 303642037 968940342 986015577 988968465 997029809 934381957 961060153 386564516 676193807 459211901 893193735 232961207 954794507 411514396 698960539 858658655 954654871 82483955 665833087 954954110 961192471 544746159 949084934 826573667 929843283 923414105 943263255 921691012 943684708 399763958 452896522 594704618 666023115 554384376 837613146 374867211 574779431 404720534 728590729 332279836 505747647 391817162 494643404 541459633 667871019 606050903 775748933 319069184 719978315 350156782 514734945 619376966 949113288 945400084 971744044 746498623 896857823 909611064 985431147 260942222 622875940 664239857 757814100 553253232 828180769 951239867 966655082 341302053 654477861 696032037 782696517 358717918 832145302 131704635 177868497 302702757 386399972 981979737 983301819 808364384 874821843 915683938 925420751 283241627 626769395 966813001 978456636 4765696 964871606 925180837 961738647 758426577 954278614 279831469 506393283 501876867 649720723 706184195 782864646 798630552 924427530 833466102 870611293 684161360 768476779 834417190 906187306 367497391 847910888 433668920 745489766 910771450 934400442 443011054 454709019 868272545 874685234 323139374 764556463 851260745 990118698 550474743 872331425 506333712 604043475 752570625 762169104 648079833 880209158 787960962 978961645 258602870 450144537 227532894 849972609 333580026 707724646 540062111 612932546 850125032 870830301 231241910 497612109 817009172 918702160 431352233 945779822 956067315 969252595 960121886 962735238 314902014 609341120 771449449 785966616 603543396 714467734 221453989 385285248 285091582 700274070 637390683 899596967 618187080 677627644 377221641 821939282 516502607 534957449 945821618 972189807 218645231 491737698 716597285 827692378 699224654 830083417 225421912 488315976 347233734 951173175 638363160 859212691 257109269 473685554 365139813 461553543 933995956 942809587 32189460 679076375 606338640 823239564 370697860 641015177 430516308 902159434 790728821 980178040 433158646 558471785 764151839 984864197 116459547 837446494 717657456 803011899 180168320 348896950 632118904 846383973 251165696 558986894 870240566 945134227 428894658 780865981 748089048 822782271 177687414 941405668 208947433 216092153 743770739 969642062 628358624 757367661 814713534 835619505 211026077 633667686 743867227 861771584 775370763 856536834 756930108 944969886 909517797 946427759 62079044 700567077 324274431 334770293 865826682 913338976 979528596 983378611 807406501 824751988 63019150 224151486 960370148 983713541 902174211 931191345 805277241 987281708 171530459 596343139 51231963 310407085 978537948 989968980 154076693 508775423 49257048 200228347 670559638 844717865 918732921 923418053 594877304 932411237 572818761 748862168 110562913 111363845 236106663 488841746 920532459 943105761 744015776 822730815 308024634 485445288 208581962 852910572 106497520 233555504 676955494 704003502 758867654 790592825 61399082 102600248 601650129 884820710 107874361 212409669 52320065 855119066 945535167 999317683 275494048 424795578 344882522 466508539 968616390 998664465 635416230 751974835 866183233 904406113 121948754 599306164 176250306 909929012 647121789 703613366 834310572 998409796 272496851 491116225 987371852 989234483 793845143 853078328 831189476 951078596 572611487 976633254 433256562 639709356 247741889 985552311 46241817 596378825 202832214 886236065 361094752 987868529 229660544 953390882 884057070 898098950 945777894 967549257 515510376 815054706 934802767 944305694 21618899 516643800 160120437 638927747 569027852 879152456 741553331 868533386 336993312 989289922 750077879 904251520 444245233 729186714 481301603 703655307 792245250 990756086 370740177 893847321 597263490 810031576 365301181 443532846 420696833 776878501 821054787 952809969 407354247 907642989 381009325 640754671 478689274 479695312 677950008 806304085 824676784 958985124 770515449 986833588 878881377 940714602 928359562 967012727 987791531 995247980 99365003 560681199 105422072 734143328 223093926 511572602 860916350 911505666 638040909 891105692 253264572 659133982 306765084 372432767 293021904 418798008 438169302 802611264 284712261 418458585 11260282 508458966 589691828 962477575 297194037 858177495 386452897 883752321 511464474 655959962 638980178 827031503 198745681 330304264 172717040 824600077 844528544 947202416 453337195 711884970 23053462 598295254 815724880 968185731 879349971 968358306 200679369 841823123 850765751 980871103 266969853 636214140 784353502 992279932 621007594 833948788 473632184 795711599 806450894 848469338 272345966 401587660 430964384 777819278 148304731 151871941 729605338 997718731 234830710 923577695 52931453 362540265 450994334 499870598 461303614 988265503 63697830 798962397 792406863 935531859 25563808 320807746 81898792 932251598 204720021 255904449 850752321 903634620 231895377 813226894 69655182 913211124 674650381 888449919 755818051 887827322 950604077 951102692 384374373 551323920 518080006 685539405 325276423 334160050 129211647 964222197 192832270 235374761 279348913 500914346 872828521 981578067 984578355 994155632 394032337 568894313 412164078 716929126 440358695 528928401 615718221 705220921 470950013 725588887 951157859 981611906 828459047 850637760 785252122 991042392 652014560 911234926 840513148 992140146 43795541 917258540 958055428 981748595 382948307 634866491 530406173 829886514 162198640 714306776 503951766 938277891 473150205 570783214 778919727 842652852 677737751 864630897 62929150 917264253 177298624 269135941 394592165 498952334 501110180 769469717 435787159 959440978 557584312 769875566 52614569 505713244 423136420 591251476 646099385 961781782 547698657 848850610 661543931 716721214 946755576 977248857 927148882 998714977 131051096 621987640 727653006 777051144 705744924 777112646 242994443 868314056 774769408 851972279 344842999 866488128 708078627 993605740 88991275 169944217 763568295 868813839 593744880 673690833 868497850 974416500 429994807 626980875 21424187 930909044 738224492 738759822 197548191 443810523 40621165 734795853 97681842 858630547 24913069 730791043 559867916 669463483 194377209 402035672 231816993 486407735 907560965 953570177 756056692 919755466 855636896 927940487 374624711 893075946 803688885 810605686 873864823 888436030 336364975 637354264 575721718 815476000 225822560 355267091 954806666 999178680 926505594 987905217 272060628 346546236 590255685 657818471 180837745 625834286 209637151 404789503 451351722 843625609 467731457 851543182 289802188 484023153 750299532 946515601 699958692 706486705 785941712 911706175 87063329 580675244 996607568 997554549 794661181 967537161 536191394 740637759 250757501 959129249 446330954 729657927 517761689 548897665 630690835 884803292 451647911 737115047 362775924 815492098 594925408 800892527 190580753 965540160 82844217 324087300 215983409 852935908 467356974 591641368 365287381 902648919 975158391 998625996 138773707 503248988 296929361 750323945 369279203 610665539 648143515 831298460 408719825 758284489 853217417 884826958 275424635 853387307 328852457 483359716 270205856 511189896 253050765 408256822 909251112 925479333 352943617 772378629 365593654 812007163 282706929 518393719 882935596 995698288 609584728 941269489 95219741 763821329 170583566 638545850 668902562 999736789 265710170 898799575 841579524 980722879 213229387 339294299 557943896 951887953 799195072 920889064 279118558 603984828 81307352 347766722 323891418 339986977 388962530 488695626 914091237 932604534 868924178 887342730 507435826 841409165 170229740 194316645 492095779 607875577 372204928 799699596 576813366 807531615 832641464 959354472 708011900 835427375 77289317 450276285 8531341 327530034 436819896 946603063 603682392 899963436 635833952 929233296 431091286 527978860 367703697 959746073 919390968 937140978 901327392 948484733 761370930 821404297 861499248 888612800 56877402 395843424 207074091 857518726 868481251 885351877 534319629 816097562 29552580 510327349 679563318 684808114 420197294 922130925 932065209 963973757 501028425 838128792 106518897 720879186 259255249 835115238 776580977 895907756 904956172 960086672 383000105 669022492 541661295 656367544 176673706 222648683 382127881 988932831 509387575 901354890 517266759 551157970 583072208 630532667 364369876 661650112 171071583 283107746 766439586 809208984 84469091 89134028 451360294 717509864 428308848 805424181 688634975 911298157 987376336 996247870 765081468 923354314 755859723 777658167 125639606 463260918 848368167 895616506 701155325 709132701 843351016 915858022 626385089 916122171 346233635 710284803 317453433 580524534 320343905 390619649 593123647 613888541 575983592 819065674 195547764 840803207 290687420 777411926 78919694 171306454 57008236 922191378 188450212 445935814 736828197 776503031 850660023 992522426 16712522 306570473 152894435 349889302 249598854 440469727 957594072 969263120 360805513 370607655 21983749 896896117 671459040 754786833 453417332 661608506 76923466 778497245 104099970 824838458 327713258 957034081 644261493 702452097 418084278 468192571 755284038 887028656 665771669 881820536 597961974 725425229 837236549 866526509 510474535 866645748 3336916 940577420 540261192 942782999 827327252 827824538 707711627 723540164 361346344 530330036 124405338 293904312 459178982 589554890 557038360 664477117 448987487 657815254 329377500 812464143 392199175 517286059 485123549 605627616 597913535 948253156 420993103 969519747 668920198 860854662 903187464 946429927 589424527 815216310 228406131 252044438 182267264 205907245 838588155 917466341 691946759 759063918 917862650 925642856 137609914 545530702 34348111 625671277 10424004 785948857 97705560 263574449 320172728 950045442 179970617 906012059 713509365 750841533 762991118 958156264 567602541 645481688 520334812 986169661 887067159 962614962 353596595 681961982 888252553 975363689 934521406 956715475 403558270 714634507 712383857 969350827 520557014 742932990 946099001 986428268 559419013 915043218 7055394 509278311 999245051 999480414 146845655 433798462 286579627 843877730 134438069 357466111 490459139 512110884 813490957 993356426 10537430 222100731 267904903 936067757 585239531 892849345 682026200 846998895 502051310 520933506 453720654 746061477 710494209 737163078 681909638 743443423 338307524 702050259 796500678 974429040 587187363 720650288 420067394 546015395 169756215 459160913 514529683 538450779 618666210 639950140 838883584 879219068 694953991 889392298 257898101 907444198 999784613 999856994 963854496 980513586 363860910 466569557 610625177 940793768 571817458 817479955 228734648 881852029 423717634 483787955 493466328 950202000 246666853 925228573 277455241 902807664 950580334 961970232 336935732 946920023 749688876 752833874 573073673 738326279 400119148 425911588 675161790 757904780 224794095 992780300 505046493 537526702 748532264 909988063 558762101 687433778 318487722 376284472 63085506 411149211 850203923 912937529 183313603 573605142 406239399 798202303 769054928 904954146 31174473 232357453 426857 122747501 277821144 422602018 399811300 973532544 702365358 860025328 422514668 969183550 957523475 976811344 562407144 606106508 687419321 698046712 890659909 923409349 793423149 908998306 116154528 442759808 226972882 565636670 42422108 804526491 436763811 620253125 662787304 745885379 528485264 613430081 666726979 996761924 67803571 409900166 198557080 571899524 404791764 752263103 364231008 773984254 994110835 994130084 579522353 622750016 559449323 936145781 170361924 570976119 214648979 341207281 877381130 903114157 966080381 997787438 302961620 739172428 691749227 745274462 176602487 186412009 78422600 411877830 628494125 661022761 819087193 951420212 885530144 996989126 164370091 390997904 760573637 914770532 114094073 708010361 218635877 998598768 554477397 659293759 107131509 541692266 753337866 989094667 164091877 692953242 207826823 229156726 405964522 922182579 776554927 908997966 239359376 588245681 988512298 991583978 44329378 282879159 369292287 657459550 732344604 768697347 603412374 729317017 612290004 741704514 798410181 920660771 772204679 938042896 702665181 842443755 965055405 997907177 396752776 683262302 438917774 626749498 35792846 596401779 524945057 553395471 382127668 857807815 917593211 943843148 627887725 962198281 102919756 488888140 841172303 918714208 861404807 975569514 174292941 277447151 411907020 719178756 271905914 331921830 780810090 864250259 801466687 854940911 556037269 909361824 841410067 916009913 837783335 873395880 353742741 692467588 375971417 641978416 347265375 442481047 348206288 560714943 648863050 685432610 163257416 391209232 554449497 930264928 967497924 990227481 42302123 981407418 799380672 945475105 513682301 841173670 984653758 987213788 995047700 998212008 194364829 799632007 622845465 710217364 762107047 863444251 558883329 928356343 542627263 602778233 938569460 980502518 66852389 950803763 4582091 699981629 497659837 737627379 276576299 718892684 607047419 922924982 520785155 811637260 316164478 424555708 590936018 946708469 172608782 823076252 816415564 861103821 2395296 977385199 27269848 814157394 549269245 904933713 4046034 804367519 640416695 868550565 741316645 949682230 559719229 845586193 152957758 764421292 121397105 212681106 49190544 770115888 567319777 731555057 931071650 952556871 959144177 999390397 199322747 292508991 109944863 875457859 995711689 999472875 80124062 487546601 462141390 671928313 409004184 713765679 86760041 513294602 469878510 711826406 215332311 974751154 650225611 693467915 31025251 668450299 879221298 953206209 233523714 661751374 456778497 935585990 728344476 982903272 395298757 406105277 50637594 390889194 177219122 728272042 83357938 108858707 810908436 830047020 179862184 423582213 463745537 466086652 108279513 620714587 61915609 62214513 483536283 626587012 759614154 873653336 738168224 917889072 518354011 656587079 888996820 889200023 157104442 487678040 602602800 622560970 475349284 842541463 741207752 900630731 627665798 794350341 196118524 939442314 373208425 712731576 968713746 972567896 772126072 958499046 614330110 884707440 999302832 999320266 39399938 734946559 910723709 915815596 162959789 435065891 450605580 455084994 950949143 966765776 925129780 954841338 613418928 670419139 109124304 835365733 5143752 746025473 80405319 689020215 477120272 682889423 964321171 979292778 69054197 757854862 928718585 999344879 653803602 952767150 317960874 666531107 744114110 778792987 347699802 399321695 815674451 824695054 821663452 857362761 868212130 943111570 148284637 562120301 877264085 887387031 973897707 983261791 305359663 689182224 800657765 834407007 459696149 976729721 766913912 944582704 413683141 625960430 586386717 671183623 150898814 446805047 526857552 821298628 212876626 830191814 2790936 310226331 860388508 917709110 402131946 497787155 176110198 819382852 894574534 982344547 785650084 887715029 28056514 447809846 531974709 866048813 267739468 845231214 178381124 851810591 586999553 809961335 83991605 613056100 641158735 650900346 817593974 972070513 367800942 388412439 819879633 905540814 491561788 799416821 850863340 940250955 291585734 636599978 507139450 519929852 499755923 706935771 187790975 873139327 804824996 966814482 75887304 78501853 850928446 956625628 120764695 974294047 97212305 941069360 572876485 632193203 275022952 868118253 378412489 417417981 365965674 998582614 261218601 896832012 274756334 553720031 172475304 946839288 289945602 791912551 589785515 868172162 560658760 687211701 422384424 725020679 626701147 923401660 354883669 749763820 369545600 935174756 342713161 374226404 409211959 852141494 120557219 971770954 417767084 661135178 525016562 587023057 666093572 710167656 677815144 754147728 652379119 983089347 962241152 989848992 728604867 989621901 969129550 992469259 818772854 847423072 609810471 897634098 169089183 614838693 774019418 887650513 51172412 472272246 222192395 631117257 315071372 966629573 382935888 732086001 565057218 961680859 326231499 421765067 929664513 986439829 635409403 693020638 384062614 965360814 360091183 792924328 833369617 922350545 813541104 910361667 44210949 747251398 532583800 604376746 591691074 773070654 65955976 303677982 451158084 520939648 420670190 729740210 180656132 367398807 104604705 721603354 150722414 747649901 716315690 776083296 221168967 516422175 104041393 268234103 96768675 929197833 62176478 895713101 955806814 993048235 121017520 346648279 124171791 868390383 732847094 752520868 414200486 572168572 454844343 806389295 83089367 164960023 296357929 388990694 834875698 993856607 495592730 935621262 631225417 747079291 457193065 469355679 197375490 638236023 211059312 542609900 363144792 640899060 401423674 703307468 12767452 904131894 464203227 549987724 520907122 857457998 364930704 832544570 408955130 487243977 276289615 861339066 5895068 542103857 449865395 961626332 44080937 853438192 783704716 796609421 610375719 969343185 590520471 945278753 260665480 783022345 261234963 599400476 19570602 422205062 250682800 810446572 624097633 801826165 583219165 847547696 355226274 355256960 922112980 969618081 559439816 749653693 537576425 905342112 127068547 159816750 866997756 888436676 846040690 997381039 8273117 619168594 283984111 862709955 170058134 195336514 291935691 867785780 403842625 832005629 345280533 795315857 853190557 956353075 565944166 799569973 717400143 785181829 573670010 924568085 306367835 410669434 960027717 982540724 929192158 999170887 437398692 557941651 100350097 780978680 104241561 265422159 653942835 928123917 8643900 180173811 368649757 373626475 284673230 387988850 621065650 671627942 982917338 985830089 554402403 948329137 212801192 760729521 383369658 858179850 622157056 798069270 238567269 863537324 441812067 779671858 202034162 246143298 47852521 870638532 165817051 180659819 58246738 259598500 440298552 762637683 761730263 849477884 155662322 747551170 842284965 981632621 201524734 256458650 425300201 820701325 54299722 722691957 40277930 412415041 822770113 979576249 655113160 963007010 881559812 936209201 700720016 957342064 51386520 444304066 415531828 563023282 879630779 975933197 888597505 917339179 710736797 821781507 508695999 621784466 288543663 460174032 175560083 378866861 500438677 867375932 743009477 834464542 157668864 330948861 660734406 711791505 733814826 895566793 947973126 992457449 939131832 983524265 14204528 88759973 939983033 972373514 226691889 264364958 675767631 996733739 360280537 931577889 333275428 504144090 211106413 735729706 248804852 890916049 892038601 986112304 76840437 566409866 654764909 753623492 558503731 720796321 273085524 529964940 83389716 173039160 874956750 999220677 864189005 998469971 262212342 747220205 73005457 987951868 575015333 936363683 754661769 885459249 981876805 991207904 186467074 742437548 851485842 952203531 27348404 204963179 760950494 933824342 232961293 809680217 1991308 720267973 466544267 840313951 665404533 721343762 833500305 946731365 579850430 806351137 377405253 465925508 813888082 851707235 671274305 725220068 785745014 833785198 904730379 944327035 311024450 412319155 858326713 864711781 542848760 689423366 439641073 580241078 765008382 884199009 493040591 726633555 800012731 944563396 242091805 651481233 757422543 907929903 247502383 253131635 97851775 335237135 750387119 763209683 384206291 933577730 100600954 820796464 510033137 857456717 372499054 676557001 463717337 976035841 40773839 572557987 93659382 818359980 62170124 300279198 880473258 969855021 896999937 981997627 593469538 687601838 597489456 764435836 374365881 443122680 545311650 809968609 513980165 779015848 78615618 267677698 950539171 985293876 132077800 267425646 616490578 887730257 575598388 866957321 36965625 999254492 611741262 924021759 95356200 319902187 93570551 189227644 164754107 582170529 257094417 730369806 585825960 967363452 573926392 816349985 980292366 986584138 132341497 487619606 545586960 841904623 499855599 566669256 825999349 865378387 608689786 899971553 892347125 907787510 140814828 744613186 410647226 985723683 14348306 361901142 747936023 809351461 773435554 896656356 695338774 840713075 575945899 836007038 702896794 952056949 605033274 842579345 688457986 771586646 742650889 776867277 132032504 925402455 960861324 967789045 397062699 777691990 824127764 994485659 420543643 515508610 938192634 981594828 42094105 116103083 455638361 823152229 760170755 776249745 791433761 791650073 85955470 394586619 860942839 948280095 55712622 94980839 752448699 967773731 906208804 935514138 710458282 808161576 1336158 743568981 923055810 950243242 845966750 957922751 409952097 716637989 536647170 980618076 42155065 503093492 916910413 927052759 304612595 993679526 874553261 895711779 482953978 739788240 659162150 775467088 339632368 602043025 174215603 472183174 240263069 888854952 370295704 703579087 815986515 930013111 335349003 943922399 782937607 821003608 938024084 971347178 521759468 841381340 43857425 67180023 867872445 978926189 212317013 280692976 706349036 965677263 704758654 974765659 406941348 509476628 17689269 736829626 694886638 909759408 356055853 637867283 916460024 921561585 360615165 966065753 81480687 568233940 233439332 811312644 319684970 541026491 931817471 998118053 118244586 186476191 119011821 970889094 604157278 607389763 994222244 996523304 388767576 836140612 51642271 571140919 444023687 667510649 407078069 912280750 232132007 570434919 630208487 792259887 568249186 722592954 686809943 832392757 675062332 909873056 417287032 846422080 371259888 798497823 107749206 574613070 156409747 181630625 775194059 958795088 557067188 713349110 178952761 525411697 335956923 693080357 802245925 863417862 942040430 981507283 366022640 792933699 14941504 130207951 771755409 931270201 594388664 779810839 199197834 848335839 366688773 813073406 674001903 783860528 65251823 310609265 493246978 809235711 780130658 847011729 365673097 975237011 343614061 915809009 599332041 959745292 802203313 985350147 744888200 864120493 206477613 620097535 810002579 984827984 138676283 918481522 720927743 944976110 587276942 888381761 724090333 803729199 817140128 840821256 444884384 804841846 348695749 977709272 512164796 838509689 589992593 999394536 552965713 823071590 96562169 567929484 780181955 833202748 585012634 856436733 629479116 924351997 842075020 863173832 497415481 977490599 746710453 922301826 766948162 875136176 61719876 712079777 847064288 998205286 482448024 951133842 325479494 422955466 963175151 963225645 44750968 210333520 912842054 965781406 708675284 969496840 325167505 677693602 120363902 206479386 97038573 455095924 835593993 933269614 487925944 906358430 594271444 691919121 976394343 998485836 231010516 646417906 963390475 970083736 845403803 954705020 555498365 591123747 575973307 853556193 406417753 831782605 219444905 654174304 164617243 316729956 223000282 274145065 465477533 825690897 816534893 828693804 275574157 288458082 616775642 950088254 288658404 693464902 879469549 915227353 747955974 897264930 821204140 922554791 375799310 702797532 925012384 977019688 918016915 922374015 124119417 667080059 506794465 661020175 37006910 544466759 388900419 418739432 470456687 866139613 498810437 867668418 600758859 629411569 500786043 715604103 97400873 364134323 495754614 606224914 258697687 918810977 76890934 396406406 424247238 942603385 462020725 487767090 722201157 854043293 225239612 912134001 273827591 410625764 472741107 760308417 646823690 851271292 928257301 973651164 69527761 158575841 231280631 443375816 594044925 666004977 36676706 95487011 805172495 810415777 582669082 886620165 483945375 848964229 287810579 848025454 749885298 900784097 150951602 239889737 413958091 651383148 13284070 766547941 495297366 707587037 592890582 602390497 314293204 659236303 410311042 442959233 426489350 558132395 509877776 699847717 662510713 845132319 430011004 676453142 517553820 783487814 922554874 948979513 148815400 189536945 401913581 981150658 885074167 903658462 110909810 903777546 637323757 650626318 703598061 880265315 125942419 365711709 987106819 987423978 308872212 794478036 373321217 935930122 222138869 887269757 231500297 494400179 877021269 885654448 831857527 915290267 7983314 880404403 977186864 990404291 100869682 457609471 170812729 626567356 143143092 574324871 834321025 979953727 291704732 694386044 317060615 984465521 182072875 477414728 14751566 486822470 550625948 784992973 275653273 901384519 569217227 903547496 139650958 794799565 3352268 503862056 370096854 378008423 302517513 472078612 175817198 393074687 990473312 999018502 801900645 897609822 427937536 673299489 317588687 330719454 614950806 732847540 218670855 811733574 110206460 766234242 835610878 921201654 908631091 947173271 270574362 552898329 518399724 678164765 907008699 958290341 3329600 348758018 627435133 662126615 685864359 959158067 89401576 353189618 905025238 959639757 825065174 959598957 978262225 998507793 854608017 950834268 621248323 842313061 236268967 318152312 205238412 330104604 115792326 799892387 396676286 586562567 79219971 155415203 334673971 981833804 891514698 920180172 814041040 932710298 968018076 979371678 416085012 520632080 222014949 531826693 717592142 926596916 167168292 644349509 684653650 781794683 86839549 882074482 812823572 974506069 594512998 937534407 738333779 855354979 891963079 908123175 940615229 982151204 591416077 631131169 281883883 412546159 516767370 653580400 396860811 530191569 407190539 682973295 459428809 711040749 264200505 360996554 234840236 912569140 454101971 458523083 141833740 685035504 410054955 735592927 67420541 529932425 339113020 980008079 717529830 952769235 113455283 613224168 524606103 981474588 731191332 791102243 411130767 519335655 981180139 996833379 243913305 698050294 633649636 638165137 759676604 912235578 458165388 858557694 744758639 904754645 804827813 980938656 652044464 970347204 333443541 881498039 427665448 728394201 710645327 787771292 903008420 962233646 924342109 988303203 973907720 991358488 707772929 948209722 720303819 906801117 760868733 797529625 698733875 944601265 605418932 668104774 897123286 988700595 784790256 844458398 773254733 979079857 578449723 844335475 542230027 721236382 955646587 957905682 915925354 980714745 184929896 977885212 708930737 857655371 456733243 706634028 117226197 319386922 259501637 854396264 748475855 836768175 755781233 900663074 676209230 789389274 276996023 509415315 199531075 462740598 608184067 858132969 69358037 663735353 915748511 958944250 329622138 480255778 4662672 385969626 304246068 617521550 143229156 962540701 367217664 540044845 602926675 930185075 743334758 793319870 690144282 875690543 840373434 875154872 106811302 168755953 902075570 974418871 294726371 619908963 373227217 464368444 84372482 87718899 246229412 996136362 111597732 144380135 489482726 803423920 461512884 734605330 711291519 990906539 18609806 710203422 165852448 602316230 667086873 735334382 316825030 659291761 227549278 869186584 959980519 961288536 495853896 817806154 9099896 899493260 68553005 536208413 700236089 749422590 272641825 435055543 78010433 828103095 461613288 832109106 596816442 789816311 324712422 546267874 360558500 900947838 408007367 419153130 226846923 338661669 784347059 932945676 366030583 594507636 706489850 758000533 415031457 730785739 287133987 492485287 416055262 969206973 196696771 268362637 14734873 339901320 757441467 775522280 616197959 730754759 957167643 993127715 738976063 828084065 624507458 885014345 448303204 599765857 106901684 497143219 562507365 948900883 746797192 765736722 538324537 790238590 635573729 744338059 737340085 924037319 216977745 597963386 76859110 866362929 231491652 957529555 274750219 383772397 940383215 955012817 230527558 569356692 972393406 976947242 804997845 910688415 811067811 868312617 334703031 467157604 317088121 451707278 153801356 510930882 441023942 681932720 917558185 986134806 375748516 587647992 121221841 265616864 778019406 785045795 702528457 748769574 675329153 942104475 848027489 931307887 144909280 973041072 589572326 600492639 240734470 406371431 37645399 355072451 679083260 692390344 705189439 990388760 694886428 698437743 762774217 841500161 821543213 833212786 807494518 904822513 414683216 960229640 687794206 742125825 128217938 700827050 127508174 771813981 130703027 472134628 549669492 754634023 923479426 989691052 892500964 990103621 297616262 615173581 702974366 787671436 460733077 973263826 390635040 413814148 574132228 585843565 829554571 896516823 691408811 835040544 173059808 845482945 489988683 685045232 154243971 208930419 106004631 269600225 419726759 982672365 98702228 783038915 986709071 991568603 938916538 972075159 150823962 195556923 320980709 737450582 581969386 745560935 363454028 972196094 216875688 842710638 68406911 143378207 694565161 983147688 26934061 246210120 554390180 587309070 17701368 787344459 19685272 342884170 780424443 817956082 272522963 319408037 971509532 986878012 627861601 669885476 171683287 916689907 698642119 931317637 405811133 918583550 602833718 787569280 10507928 181517855 933851679 964711300 336699185 614204078 513203701 958470132 500167664 815570546 115424179 785562576 221577751 643825860 522784536 764872298 110113639 879624695 463391317 730920348 6338339 577391303 726345611 827257343 925375596 934677084 519002772 969372906 244016626 925742806 434518868 688672558 410073075 708577695 77590441 461942773 635530441 978684611 396113851 598087336 193340864 480635699 504923018 708913461 392018421 766237457 6110537 743271491 658485080 891055421 497519907 752724060 735340882 743580345 249870126 844516712 562691317 692126950 137252495 260876882 507734886 659974306 122926435 661504373 680374187 699084532 671781937 938900220 381123962 418509545 154165379 457402298 170874658 459567668 891980482 907906354 412477039 592254589 50840633 223200779 205765880 458669456 546961491 788344079 574658396 670423351 998300448 999019877 82768531 830635696 366654845 672389368 631013553 814999543 309477050 842483250 783722201 791430311 242705957 868208740 973598682 981271375 10739193 886287027 666505153 875957096 580154847 964750674 231490384 526032708 945427686 992832499 292725440 334896190 51144460 499373584 349514183 484052980 939125193 998295897 479867490 585840177 744418220 748692271 434405861 813900587 494890957 850078818 813935595 898066781 396256123 589821078 910289574 984184093 209669472 317527773 189848656 656028541 915382945 940376649 544119477 927493744 38375568 470715981 610352838 990998359 498905529 689233808 403232704 747245484 449417378 914203188 197160261 988671050 953810582 961333114 65406412 484971813 507863402 557332854 610303315 829547010 476977757 641153563 557102211 777914500 993300445 994388007 701858491 756574581 902108475 980320133 377561936 599670280 131593149 954542044 73548137 553073860 41967648 229464739 218591083 590599275 640274838 980796015 506705828 834739756 383382981 698437815 201185219 645011751 805438190 953169006 899983029 950636245 827583011 863630268 935891379 941749822 805212376 936418199 468235659 725066276 921707563 985428728 383177964 894603282 141753688 301436193 399003100 449968239 612026946 685939445 616672697 676988324 622814616 834643604 404387319 584633227 436645839 491069761 800842391 986275240 800189637 883243613 120882516 430101521 16147398 972345147 486842456 961912657 273408658 439729598 681166559 972578893 186610259 732316647 180494181 571272834 944029917 952753757 685275713 846324425 252366203 539750245 543320590 948589401 329995068 355527663 700528774 916903022 930897522 984873169 536073385 794038845 44166821 257033923 688776993 955869625 863920284 951126729 38762025 466252248 885742664 961062407 788923703 955196148 311370783 670712514 859859042 967530393 207355880 274209136 711216396 734369097 174015919 814846055 476844703 878344581 621261123 807291461 766289563 952564997 351525435 905470209 82112963 239821686 75914412 83663634 597550120 972881041 7358181 164421663 464152160 971561844 712518372 829532391 259110545 799995350 916575920 958797753 100516328 954831918 502225872 955565515 439314372 687873979 897900534 963482951 517960437 576315831 264310242 481661573 185124320 984118744 341679545 773523175 535735835 830536128 607508158 764892231 997436164 998573306 860194504 875362574 178101703 817561616 77713831 533051852 954276666 987199907 894191248 987240889 268715627 810227085 103050052 900017639 709562385 846222495 70608279 374882051 824291358 900059121 488270001 907634806 854438985 922440125 768911602 993038358 707403325 749935263 501303298 723952498 644909727 645436138 266604380 783421594 989100449 994661639 974309871 981139398 807776335 841097183 565170627 892611503 628335706 739012957 828269661 975751553 302121909 634684404 66503614 337278171 593715445 612647816 428268147 865328362 388310938 681624524 131770115 826704817 351045282 514010755 554921223 931210240 847019372 847100680 232478852 851677982 781058864 802359716 859642587 991392953 520148314 630052283 480427407 679180367 663307533 887999037 616143812 756902729 717385607 791127467 230255477 918014875 10215464 776070417 951282416 952250890 69113097 970461982 725662135 978618919 97343845 563800203 474865079 882334956 761036522 812492626 321981993 555183970 455454259 885999690 238869268 869347329 564335165 565690015 397977607 891301157 144532629 167570393 677157285 880216544 717999028 875070994 143967974 983699862 593571369 875478284 266050237 506917662 886795137 900314322 663150322 923171586 195791462 813614739 517086149 661855132 74537436 927780244 896100561 900062207 618746702 941746168 395973562 439066865 903625508 914644144 509650721 869877613 608252834 834952203 430962078 646955677 84530663 922621720 672371277 883533787 83814920 883290076 496596542 614127617 718672379 985938328 701376088 945362542 320293033 452837335 764095094 857491493 712900230 748678638 499672950 966987760 29554656 289044864 178105500 254199435 921999021 926772151 191407490 911623375 731435152 822801161 984087844 999326394 24245947 776811625 253329383 845728921 194700778 624056275 161815223 590166096 421864508 645042816 824871792 888096955 969136581 983480424 488259685 884318888 788797202 876011202 284376233 529081298 318781971 878693378 146477323 431225525 739457003 957737561 209766621 260825260 286838413 673976641 580318154 966078271 966254617 968240621 190984253 699592596 415860710 859057113 336290177 377295907 733556008 876497829 377070890 828367591 861007582 940626698 264993890 600724891 679849574 918516546 534585988 925969870 790567355 901896892 886493266 968654629 815289369 999350503 833718385 975701244 627248465 930431096 349834994 699257796 972560816 991477950 761484833 820480142 917229333 936184824 963603199 966786553 221350200 623404064 244363065 406827790 54628712 875981027 261451928 977650740 830636189 899439216 257631444 602156854 640142307 977238036 706249607 967619911 977751514 987482819 206280542 642617301 679699146 935164639 802259942 977611769 701238118 788142901 938860856 974889654 780814829 781098532 503001720 629523640 771593717 818475457 413535522 752620050 252374445 881381569 466850309 602821278 100402471 474692910 774854386 977509693 91981021 731637959 576039924 621463643 286309283 307757255 675043560 824856875 764391727 774032397 468156888 882293569 512093668 549718914 414952706 731697825 512551296 585803735 765958379 958339071 811057073 826706652 385945975 923821715 991624255 992993784 182521119 672513350 6744504 325230521 222780548 473416425 988759068 997408976 240216034 613654363 331416725 872630981 807702307 835695815 832195680 949508332 885934683 968799412 401119544 580220978 714326820 988555648 200775291 594608026 575100471 596658656 798519773 801227305 354259432 960470232 969728771 976743517 104518606 752320949 824801756 947551620 952320085 962842550 808518989 844434996 203403300 825322715 147883056 481379767 949248135 986812086 839283843 948491264 688028690 804377040 881249828 918179526 254123704 998395536 918294209 967163321 160337204 426828910 63172801 237061726 32658692 92431521 578351027 643803885 758492088 958900188 586111874 813460388 236810490 468941489 71368064 667639884 907317046 934772533 103112541 606559766 806148439 861811796 919616385 971950849 182890360 757586832 781345669 818190235 358562311 748677230 415173871 888662778 452164893 596412458 958097287 960353332 347378609 581213104 738692563 748578010 956124317 982009868 93259234 486898803 668034424 742105567 447677754 850013602 348788307 802834119 510433352 972060157 532952006 743665452 351141554 471768735 324942487 858700578 86165241 259723926 907654321 965023673 32456016 391384037 746975765 880145765 176350282 960589068 425658810 979644710 275381876 598349863 190236233 328484712 107611250 913851189 468165919 954939259 479813267 661359686 689691422 704217029 562537774 973284198 329590314 591913217 269577647 555217165 298385497 780791884 913404320 985458770 916864065 956838193 194200772 484135490 98768781 958825170 28527730 925263911 905942078 978525375 350108332 596549722 444039355 926443164 975731384 996312411 186005612 869068608 365432631 986119192 490800678 955164591 744325841 775794900 673729405 845297129 243400280 406905002 744415840 831140302 661499245 838356197 962499261 966909825 77594212 257806520 104349685 251124189 850337097 874548666 194148866 775889574 201707929 646006608 871948296 996906093 117755131 890857500 393548218 430765422 894770411 898137397 496491163 801296364 170777881 205271349 118891974 186797315 91431035 144382189 199581204 418002825 730425456 918236599 747048053 752135428 484013535 915873409 926350142 995178433 316337586 708635600 419742241 687433889 694750224 917585995 10139252 536311875 166176096 956826505 988284537 996646832 858922153 972306246 16729844 884727408 556155498 654948106 890990407 919767636 287755316 566849192 835692231 852201742 587205435 951945416 327424273 794685432 424805581 890233118 411604111 733194988 5576401 519517452 823898157 830115958 267094829 452377938 107498739 664836658 695719474 784052270 915600662 971367500 948336275 970204882 621664840 719716506 306117470 688919219 683957201 718204914 731818474 762125784 4442771 926215570 640188907 770368065 970723172 991525992 91494278 809429210 882228470 909273316 377943102 435484607 78409380 503216858 322408535 733273963 119243373 621890846 769351470 817035482 211536469 730741803 436821954 580290448 572217490 841367577 366647041 772371765 359364039 743632303 942811378 944927080 555681807 678496276 410189350 660039750 129130127 693609494 588910288 744363581 813348800 912224126 431379274 509597987 135730141 341821431 905603114 970566152 879181818 890876448 484606287 875109497 391406434 854521266 511083223 685544349 68016228 626083958 505300113 807271699 906744540 976866081 554997752 635074966 37345878 327513589 788563288 934553088 859111411 964223053 49477125 577282028 35206354 196794455 4416510 386097746 612878123 687297074 504360359 769231665 631686881 781888779 667324716 678559525 797339599 932542254 855582078 862279861 303734350 574520091 226181837 402015109 923189429 968391005 219390035 600115969 418467197 790274947 77050413 795831934 234459359 807012328 506187182 967949595 619469636 871010780 220570138 946891297 614444300 932593135 342221374 481707521 274585400 754092937 384953495 976230586 784503661 946795594 836399722 981364171 34805175 369831909 142506787 272498986 513157654 945074282 16926458 397609465 506517070 840760155 221642308 330718074 693609548 967043018 727410382 980748502 481877178 629125528 326093158 411924661 857941472 931420348 241067186 614393564 308408170 520115389 197878060 209342946 98925263 671519726 930276188 974281011 84990021 921281570 881250253 909660476 858503556 868265277 789438798 859649314 569294708 685168233 356415046 410699282 198239078 419042210 754268515 829027315 265135620 811258912 94701840 112091443 825858547 847238930 792407477 905388057 279074812 996022096 862390659 868715302 745880512 859181026 289909375 705911016 709031292 971665990 12566026 906577685 495789390 630490744 67631593 221645645 426584255 797232451 77517706 710277447 502805008 580326168 936405948 939023556 594806608 622168269 236729696 281344385 823618175 823733357 962326920 977134275 364361438 660651032 52632979 657883782 382091355 791529100 352919296 872148613 494841751 569174736 968222538 974206823 233098382 602237365 548535649 720267988 234965338 634224127 635711985 903138870 327833648 450531314 304165642 779760486 664982138 872431905 932907104 952167627 178363344 826443773 316224325 373895061 453119613 488019365 585342481 969298307 966572134 996153955 272480657 906124854 946018539 971945683 420228944 907513963 256813172 472801894 889396648 935145090 799563092 863843389 722802358 987159151 764323117 967109127 98898108 607334493 92983369 910052062 463492334 661389849 785197763 984023383 287247773 314388028 91209232 120007434 609299886 859476539 491021326 589399938 988223743 989916924 115543690 410523356 154490422 984698200 635929540 972282858 97051680 353855017 478891494 978551944 708225848 898616704 94308501 171418778 81857031 176976153 1302732 682679382 883617962 990409832 76514002 881816827 405482059 779449122 253766123 802600321 531805034 831523518 486860069 874403806 716514788 876223543 746096478 880713096 498724166 575035320 679071155 992446352 815152392 904325120 434074993 948467726 62717869 740378773 935604066 947727585 564204057 786668394 994240724 996318989 264074211 675363155 435434577 497074790 172999102 438290248 961914792 973990581 981076794 986650214 499120361 664226428 83154617 518714395 182167604 691145282 873367062 897537708 7351400 524014099 201944441 722730629 960339691 969295238 714343152 890221030 33441259 372854644 509158534 627875226 955994490 984322437 582063755 986429243 694545665 821387466 378360891 957035901 579700379 745287281 444284077 872769350 460413317 688590927 553379046 562615445 715534916 859688805 705937532 956537193 374071147 682121414 452752312 510806545 88288678 519177442 39528213 693818322 667496559 869308589 367571039 792226110 733181082 750714981 601777722 644452898 618849430 745676962 487506270 984835018 459022367 775779864 303265293 351089941 123431453 368203819 39324652 389991873 928661525 970378008 456054114 486865757 539484218 734948434 803612351 860926227 735304511 950383883 16524289 647955358 90238169 97347481 305599335 307593527 492366581 742245373 309747921 478493788 43330297 339725563 972136566 998057218 810469663 884048536 636527974 813848339 703937996 932897604 57745632 351448766 122431533 292482027 159205845 630332567 842232896 875113207 331748563 728043255 831726749 841250289 655817951 935204788 769282934 795028206 38601283 783165591 818844219 975076559 171762115 284259259 735036577 914315342 335460541 700487833 285054924 454722028 522192233 642221103 765880386 866680019 627143532 795429858 154387873 359810482 841604648 957736753 278820786 750573796 669054822 722695624 895257684 994064182 337351685 548066620 369138467 686864495 865579229 909757039 573971544 800541751 690839866 696871398 330296065 966181706 344281017 472619889 405166834 544668384 195029440 863977680 506813034 923712340 33472988 894473303 607899455 988280373 356434861 615082365 693560057 932075001 917023380 997884216 984968818 998098756 526637056 741713513 206422768 885776350 503506348 654745601 213881588 996930878 220082470 737177281 847466914 969410550 349644348 908911955 452397940 892661252 770372772 921457639 743976101 771163393 179844049 953994683 627693928 771201900 702406853 867381998 727911799 979789414 971618672 992433297 625027710 851548786 839882747 875551607 91097609 340927943 918458471 922263093 27940173 790754713 219062268 397508141 557269901 974945315 676179420 909409460 563649181 990010904 401625228 928812118 739193314 742110900 423789516 997822274 687915228 806331065 475694163 852655315 935510613 954428783 423662242 802269657 169384553 580080665 131710922 895401956 725765028 782911691 311482941 324821747 456942794 873902768 987696497 992929561 44884097 498260576 109151237 720248362 803074166 827950432 390951984 863651375 428094193 927288767 141016524 579193987 598482166 668657218 858641031 917651069 205856062 344300139 710807141 853525485 982191344 996070828 419857873 720186918 998266821 999802342 970748853 976231207 312391936 681434790 715806582 932983308 75458610 813412517 58726992 225143318 174074661 361639006 56488291 687927113 814782824 940765244 346185705 678364004 85313647 506958162 568671537 890880025 346954933 435637699 47297609 474000736 634517903 966274486 40884658 908090088 866741066 940360224 847606356 907039335 279890587 794518204 190678364 220000850 568937902 599682584 919047010 973491220 912303337 968266168 161167845 338186550 407640086 463422557 86887490 334789893 211320407 542215330 845697442 865289587 277453635 879407538 392560656 937699284 43388701 344298339 419468660 601742877 743321964 997387575 484235128 631859695 434593718 905059269 840836243 905505294 887936789 942674423 678617218 743460178 514018097 582145714 629780600 718694586 741676291 932933739 407050318 522803533 737048013 953792927 160735660 345677663 446240413 921467991 76173777 383869685 25948648 411007412 704388550 860089429 675176542 834432095 509554471 887585676 751594116 908284539 101285145 143420301 189551127 817085430 426181273 466141400 246486355 438055165 650454024 851875157 378821174 870430177 123095655 857293941 24005371 958780629 371629766 578268064 678755441 981368387 781651786 857733198 136024631 681154903 202068287 367431901 602301980 612558040 649352299 740711124 661395742 691963014 478492832 558350299 734095204 962361394 42241848 739172958 923084069 955228489 178854418 934204752 836328372 911451764 139266034 357263444 916553550 990224941 915835552 980714626 130826383 954380022 532679686 832130460 214465529 403945659 786161309 789461725 843336386 900651359 320343846 538526750 419985357 947478252 33997186 176842853 746595121 874825004 222198851 920231738 455333777 663752443 383141797 942734679 899212752 938284417 629292253 723790507 472081661 780089484 106018640 782505289 925631905 977102440 426136550 652133312 464856556 715921220 929333753 992273595 117912487 678365742 402077879 599867469 243086707 320065125 149152957 735713126 88280654 125084853 519777256 937702999 430831105 641548400 818292229 938762341 450543486 830583055 485375391 775854488 647971116 959270525 145063785 709741380 755896477 925551619 34714648 121643012 195562118 511230676 784760758 853500876 966652434 974765005 978323444 980680112 229191308 963897491 724241840 808702411 697997741 948735469 986986541 987679571 820268418 898266729 181839661 690608628 450134942 882434581 333821994 490537762 934039929 935611446 592603971 813421438 540335946 964731236 517260960 625152877 601225127 691001541 570581744 862643389 493249625 751670054 793305710 966496856 547328280 739701965 361185181 769385868 854445888 937708977 992913144 993844629 8328490 985676912 919193235 933545481 12927786 337638203 425400282 678337899 425935763 867219902 550003063 992385372 180936618 403155041 727528920 838202184 535448174 598265900 750285857 970371024 190905845 921405683 152109081 529305180 459413788 523822728 559252158 693408918 217610297 718585726 254743721 698663171 515663336 723110371 640906991 779377839 851610614 876546370 17983206 983457558 706960507 933743629 109766052 384793906 531281682 765579854 529993716 648349112 454674441 623386187 37690589 304407568 773716532 781975042 602796033 740644536 503731165 765642671 552346223 600333819 515183325 603632894 772771991 817678260 784218188 821065710 231925959 688661087 651327668 920907187 301510684 883344210 964561774 995192539 402054174 488548242 345009918 719615092 209820428 943152727 679505623 974942397 242915101 873710684 113833746 319082766 857926226 903291873 359961972 634086311 914339059 972511784 828087596 856469358 595280396 974851166 68433235 522675893 454922989 845498613 615190493 676836219 934054281 990439930 648915928 773870435 298327136 334846959 811536342 987599732 47204858 658443838 415019191 609423213 394296848 901072680 283915672 359293592 919762909 971387295 24973576 996401353 974704722 988394538 587943662 857893236 941029280 977496849 935878303 958169503 590373170 911254891 784919234 860099619 918964774 920933409 46291656 931255816 702396358 778290784 806915366 937468607 233375279 342021709 223431008 415682414 282616982 527078207 66215826 987351335 845743165 928944924 55207507 360467926 49318052 394381574 401378547 872794354 781134328 915322083 437332980 613335134 843622018 921376172 194573198 970871700 54321744 677914866 275213565 388368578 997027424 998380217 122431845 342362374 833263796 962751323 373830152 687466638 202428967 763461745 674141162 687506078 989744350 997666148 862981742 926559241 957314488 969274899 233355965 689598808 550869388 856846646 613813237 847340217 606331026 822965084 976045873 985685227 88572332 551515198 781980143 847890082 99220820 594909351 28518435 722128024 919433187 927300637 227253123 626702107 890068686 972406284 536550732 998347353 244150566 538979452 976231598 987623940 667893826 974684668 547803141 670145944 52779871 204482346 118878852 344940297 338206769 602713815 492665367 725432453 339002129 702460153 299963433 402107837 358235771 942086900 953903004 955509154 209738781 310452702 831034309 855718794 306181814 454413018 311292088 581570501 529501367 708828279 102627922 451216672 43761584 980110100 877959218 930669747 616478157 678802798 199098736 277312388 70055870 541684123 551634277 659130287 975477314 989009823 32036566 798529373 753305766 829442241 170622785 464949385 788507477 853621639 855926531 981006435 88559769 944425853 679933842 709610235 254125194 308079350 311139490 740870316 347361658 415226304 229436332 940673070 305164181 656389777 870311156 904387286 344371508 486121817 224774613 818649024 686683310 803452808 481103442 864444586 572589004 911036676 379639963 910084179 167126562 665805672 210561309 964452450 216023642 887719173 541537218 783312573 797187242 849921380 933233190 934027210 272828822 549165321 836458385 926268384 128952662 160026828 245301441 376313595 257936424 570522345 419194023 589978612 643880341 752941557 497211925 705718201 100463117 104930828 421270535 628336755 162758684 873901918 75264330 888079522 152149365 299442951 913743529 997108852 593699436 659458841 802885173 851534979 541402940 822532199 325751372 966809171 47376057 534899700 452463049 965017552 432583891 961224771 798267477 923425470 242850332 669097612 785373175 967165976 389289823 887165069 752187131 895581720 622470127 981441697 611170227 977887370 516024942 678326206 529848317 834867901 789654783 971481928 363548231 809621684 879752002 982510185 90048096 799700453 554523906 579622828 318495306 808953330 681580244 924574665 7422644 459963769 415658525 633006116 785362295 883826389 786366935 934124767 240213102 881206395 392125566 625785721 249036363 576848401 451911309 934603870 241735199 261724851 60272099 112607867 222652700 909628086 114509683 588786579 407912093 680788155 714383452 826938882 832521631 903771430 633388779 981250656 43036788 61128748 751350616 761521228 562126653 847218052 21004153 401414864 36826395 624721497 84162869 241696076 424505673 666619622 145245423 577202587 117181094 407804064 216653388 382664485 886082806 899377882 174828731 327270977 416826836 743870049 750864002 984917593 671482420 921231723 253653451 916235517 248165310 392490374 814471251 843963409 152130222 878438633 598265840 863334295 429500314 687243238 312991996 939043841 876392149 976229049 978708954 993742544 222925137 506303243 257901561 905771763 180916956 847455597 367220181 730077746 846335921 991571276 156848349 358557848 701861295 887894923 441706773 503286375 676936157 847416934 911428409 920952733 720652739 733011054 998123788 999760558 864344886 974369342 426823950 955743683 251743679 343497994 850538895 881322606 915592241 958342552 481961427 818129814 215143064 905810950 399291783 500938089 859112955 883948489 239392993 813765208 616680139 702737556 957622565 975731564 144200567 250230712 25687588 910561001 306208197 602994461 388613056 850265035 437161067 881327264 242436061 997409438 3086734 32461122 406944072 926169945 907793449 923041964 876675813 961995933 161142700 524365134 171897871 334039513 525758752 831848602 167520956 240706727 300730700 984966371 877011071 880205340 566333212 720551304 208794190 529254782 660386188 799012126 200190748 343539848 152031542 807508997 377610926 796086724 347552083 567936251 800479773 918787952 903766963 997652984 127480213 139812354 494484451 570885581 482659879 762251703 197733052 593972653 307421762 758249562 529213641 867502248 198040605 780303678 371344744 551760637 209773610 567091725 207417663 590022298 824593434 909043800 347307588 877707564 167147502 264467046 945423377 955213864 647021551 741250480 67401611 788573280 97817215 414687418 441357690 562639731 757331425 769812668 315267272 964337895 768305416 993025868 23862651 818553888 685689213 955964830 878378335 910172138 253259930 569229201 97117709 548316119 759382130 956021200 120019665 211077847 524692676 911241149 400822610 744445199 459171040 539222623 24834883 301043971 106209021 163500988 131535767 510765131 439072548 473424021 628401553 693890322 248589121 749327426 720823373 925265317 321118856 330042584 435974168 893840621 394039029 491685865 587882025 660121390 840318591 899603761 819059759 981045614 456518689 641345367 578687344 709577135 746928679 850429271 843073164 979228224 683666110 785685373 217882184 959395694 717836541 733628336 104450396 437547262 74479253 115252322 578840048 949772533 381655342 530156186 150612908 339231766 941473915 996946775 791390365 903405241 732585727 923272087 262423122 788291673 633794309 867000406 327814637 745821305 544845601 612855783 352245340 665528134 96179806 577138920 78017470 175469178 718532382 872472873 69252524 252660139 573769051 838374271 781221931 863537186 250927879 501193468 304556427 439962056 305960765 554740405 744394326 752581040 257510659 627120110 156483251 640550851 644864567 791769861 359262040 721486065 476302603 677878358 877145952 923439074 596767809 687508571 996458836 997943126 51269826 722697617 895871572 956557742 520868769 840084028 203661780 308823269 951922898 981401542 753467454 932826580 588036987 998523031 301700224 875424326 606573150 647058440 644763372 909985827 371660153 571981686 76981493 541643473 816504014 857652612 908745117 955901934 795962916 844698772 560962932 767778566 50384168 216711254 318774262 990006403 702867016 743547727 241378990 755869791 960195886 968048419 575683858 697807469 883046049 993039980 434300072 772821642 345946486 706797003 185667141 454804932 493973797 633772813 302533030 472924086 359313600 868473466 876314384 922208206 730584967 898843193 272435405 980827238 294067996 371216308 807932731 823171985 413117918 863339466 463179516 850222168 845768014 997582164 555852471 880900019 468917588 940434077 703930084 982008805 485223210 902055204 314441844 910445282 909389366 920255564 772921172 958045963 15301199 80450634 816639538 986566240 919676987 955741608 941937106 948785972 647414980 895569783 683718125 892822845 61478661 892187072 768948777 991716050 364711287 761538553 115915819 980472615 694623356 974366955 734662911 833503319 690064297 799253717 825430446 910681679 200781692 988163248 451445262 623867297 552010102 857011722 500641651 742230799 75666169 107004447 234351423 361975956 392537573 864524014 284414762 796774163 682831790 801822612 190768908 246598623 809187631 812625671 848124408 973415449 131358600 241805874 51755614 159332047 578203647 643649955 900939150 943648639 973544149 991788161 640193277 770177107 970948758 971538476 59041124 755131913 327320532 378447014 579427101 891977735 426519525 580374055 311131646 554851296 635966725 779339809 961299148 983186896 614339391 822419842 854436228 905764584 276560703 370987231 157782747 987230931 148451940 881209917 307244959 696630256 264853446 796964736 57737072 462469399 704311244 927093938 493818593 824978456 628242484 674203717 922651178 926021068 379537570 532312808 978078311 984811042 16167177 613130961 423305472 488915404 996076230 997749853 629094414 775939493 957308041 959480227 787005785 882443471 166919250 815688353 874525581 951998041 697999287 916269183 534992989 608122551 813172639 815271980 67774918 69360401 580648136 639194897 180739992 892620729 412611178 758083481 316296939 991699813 753248103 784804726 747374333 861896122 147464726 308978849 641293108 880773190 990082030 996409232 569986259 573013454 121807732 350285216 762843817 954817089 719664764 907749044 33958889 944571093 213504452 229381308 342571548 603694499 19610356 984526531 528942923 854205728 570773097 721242779 398589322 930817820 383810613 431034901 534180009 850062120 229706975 973446474 595368886 918778382 600480098 645945998 327162595 843253323 467535073 773911839 401676819 718657923 504000794 551232391 526209624 918419549 622366151 629594472 223022865 516751432 735683324 888036298 173744146 211550352 666229117 753703071 718607700 856816583 693276582 697826379 710519909 879527244 956597137 981542975 630078131 679256420 463405220 845178642 853208452 861666242 234809512 680235140 817480264 973566252 577024551 595719025 65636009 561807979 854938587 925778877 327231753 477100920 777227476 829922831 851956934 985631936 999120363 999982506 157124290 460266203 809304193 910095883 331477398 757498606 535100654 851615105 818313701 910427939 136299134 192047642 765160377 810604786 670761567 783820598 721678971 790167012 23461653 753432008 742863014 933877173 776166074 976817699 97352720 738863403 861945271 922693364 881994383 914553808 922146354 947335090 24324097 897243825 288194312 759891638 791562663 816647786 933562250 990482963 378840981 409419016 323087789 348963381 229048402 494017434 992371049 993299033 70662711 207244527 475943525 745118315 155876857 965907835 408446811 809274931 845107764 911730817 334259531 979999591 338713080 981030068 682899451 919308035 715618862 986912284 513933683 596255346 479726349 598717419 76228370 837950675 54515258 726954344 673965883 753043489 638212723 691965452 572535842 988828400 74327836 801156381 941280168 961727705 352694712 546654922 539835258 991905601 600360879 969734243 653277919 808483571 606708020 981114057 26966120 914843494 634701186 948123668 56508574 639556620 293378015 579167913 123847699 233514701 288178180 445689273 29449354 539246992 75619021 928661766 738916865 854049994 312136841 576592170 637681148 639904876 986567728 989964775 516028836 993490787 944548225 961998602 390438500 755722789 734186409 789563832 946349768 970311762 562947065 651950334 990355178 991434169 446565994 946183355 242054073 286789597 16805383 554037200 650838446 871421532 966035866 988410317 401040070 437729735 863052230 924239806 13997650 555001164 988816296 997502338 157921057 680402974 641602447 719280513 174713550 277952460 427925623 442037504 528995807 910729810 426112923 906079797 982249647 991346070 105917065 844208262 613049455 689237962 489196178 736392358 619453628 966466013 729390663 805961663 966801767 991690468 364223753 652889123 321142287 321463184 662077477 731988638 377147200 453491850 118063580 152172999 524948133 599792642 849004861 884623223 153078883 545173240 435988082 533350154 73086746 450338495 19665537 637941382 385313543 456671302 495576957 711874790 24514287 530572717 476139077 552309339 544370922 616833736 792239453 991977242 93204874 566653342 344997788 683118526 924732644 926102066 399517822 581654657 995042042 998129680 996088649 999019246 385139064 519687291 19174870 59588495 289980635 312561962 884404438 908605785 221692944 851366634 217329644 590955511 893770274 945242935 582686265 650362625 542055954 950746434 396459306 440639607 254653996 706208901 962599530 999191544 67111146 458936824 713974341 776123134 931337315 984895851 335047336 534877677 367115632 956475141 607126394 644710610 471623973 872077440 685985761 817804068 789471640 977808152 816786610 875130754 70487419 105368661 199300366 345043880 897540366 977595871 142415295 460398703 880348762 958370114 398258480 758821411 967810489 972027992 560906943 763311377 675713919 734320727 10111244 455407295 438031850 953852252 464564936 710636736 603740053 791289770 411330303 962457818 215741391 702490613 306669013 564379400 443042947 494032492 337184635 496304171 578245187 893431565 566506777 598409961 793793803 996036851 804874066 870309228 219353730 638301873 153606022 583188510 291235792 418060389 880244994 995752379 40605938 240320837 546721142 865603046 767384164 970512730 902373611 939637178 743281819 997877576 765133445 983682595 561823939 959081433 285314356 671047314 436000954 544903799 512273044 612577150 986344067 996044938 118047346 435023279 986426493 995407031 61571235 354103708 721931756 953501332 911032490 976533959 696797469 833216093 725931370 791649759 841903555 878169283 453532880 516104382 122830719 403036162 902166710 981303201 67542703 818475627 247271842 367660799 519186734 855273687 172620893 343861068 179657587 976703214 349388478 357097365 475662941 900645229 770762368 959102510 213979602 306981496 170126508 367831374 206227382 647914557 106426141 622509124 399038021 883954709 261599795 579946249 966689673 970253149 247853246 977260329 867264216 899078590 447546667 850781547 1737816 409934657 46452478 962699905 767080153 879702282 700692654 962455585 489794157 688837982 714806353 733929386 876579988 983369900 235384870 566716439 359822477 728469495 308968762 849206289 903558414 995302931 534294208 597099837 118921026 870090992 900326973 980913112 331652430 582330610 45783238 116078956 296520416 358837787 944107192 976956196 318210965 882304322 967431593 980373916 723396680 892342127 164609312 892015113 706544598 881042654 975876992 998843189 604066648 939411900 276703368 747919957 903639235 915303774 31241815 524627250 240035277 863635623 529375209 760477921 733884794 768508273 957547737 983879376 516802541 819798090 119963676 466315234 272113044 510688988 848516558 997203144 865504011 983030754 420211042 647829367 697181177 874883788 325018488 494672169 567415475 579330037 545121067 715976579 663944100 743964228 63975632 145991859 749369585 772796746 768601624 904961691 29045514 61232074 370953157 958411080 922733370 923646137 7340596 610928338 477467369 641081890 175777403 626197020 513103647 960882864 762926660 783859205 762552144 794225511 492087679 639193848 946418344 974394559 354358516 524542374 948247404 952725821 703698210 922367855 67566578 252669653 860274228 932200702 573321864 681734398 257999110 941103158 516969928 898350906 815531473 887683111 839454741 935425878 574781930 661846962 828073795 860668434 789191078 835222324 622578717 855005463 610337760 618733393 86928171 661912945 205917511 468371765 844828671 879220429 269434666 480033021 889632847 906582551 235965445 674000978 177576370 331722035 518858708 864900809 528292353 699923866 624883872 853987662 319227380 850610200 635626739 772312158 949542779 973374059 14551132 767099293 942849915 997003839 151062703 162639122 280503685 843010610 555233902 744885959 583122712 820561689 148327426 578117817 794475386 904876964 798174251 907893120 366908778 918548514 417279604 678398032 657358196 673777389 948330069 987687275 227215192 858124625 528626400 782655289 563423780 794745971 628860927 739925126 434955663 678306968 272844667 764131379 201992535 628113983 660186248 776099584 209780251 879425335 939291437 953846798 608216433 956175406 701788731 734281859 939982460 995894222 584646695 786864223 160541784 943024360 129419484 311770430 170968946 612729646 487857159 669877191 808950874 897539614 316103994 396825302 413708215 797181826 264081090 426710033 555267083 641246638 971157494 986331406 801859189 965615303 273748351 963464861 566798295 669398589 41577296 872787067 584352247 879989428 673680922 703767670 863445425 965718441 209607353 630460651 251155927 843536507 485011085 995489373 914166303 936458364 173956698 532515433 273695338 768716927 307540023 759277761 177498681 745960373 742757414 869431524 716175324 989913372 478921291 490780420 239483731 346255993 944278808 963959052 975772047 977699405 442547889 691155927 639786574 749868765 856081580 906392182 431450356 963758504 309163770 381937683 609344206 890353120 158468094 972774393 788687759 829814435 19336634 529046840 700806658 923514710 275443969 813342108 36945265 827131980 750337616 867472837 609183358 804628842 811505644 934617239 260938603 784398596 762493931 833568052 981437086 987672799 852155008 975234190 773618998 827409919 892339258 988337751 67971942 415567778 9372852 640952039 395525524 417039766 802328225 996377008 276545654 846003628 418003669 838868933 384185034 565860521 471275200 679697331 36572200 79832364 330646906 395014722 55436217 479804358 175655832 360231507 858688715 872490170 73571543 688857305 95432187 769843044 762392990 876669969 372749002 828722501 138636833 209022998 421242302 529107059 814595374 972417536 421739415 855000232 766874043 903157576 424936336 710847328 491186496 637116462 209129366 605240672 282086988 672779662 940719781 955524903 81976619 325137572 307140111 826650274 732116097 756087204 821958989 867013750 834805442 887662002 875690420 949606776 689864769 935025231 161282120 404823549 312852251 841842612 506217752 842230486 805457216 916608463 764293063 873303337 804759476 838099434 194179585 900695758 728441765 748419315 113023424 537178900 401878431 413025161 75997435 250248694 504031555 563128271 57054103 247339377 201922423 609959497 298790413 804911903 89419515 627982231 557297751 686015918 817536690 943172790 314168064 433889258 957310153 998504329 552557654 665689899 880484128 930893411 352233442 746380530 610405232 832394599 840161823 997665467 481627162 498866760 608731948 636513695 735277769 782794202 517452009 696000742 597004656 751164011 59667794 374000710 153960803 198271463 74502468 775173843 898643495 944941761 719863940 956623885 721450529 738761139 331836744 758624267 294500340 492181887 225234895 574421701 215144836 970450895 628197848 772970275 220776410 268240657 768857868 967842432 997274364 997816216 293239462 835950659 635659725 878673406 861836639 904591833 571591953 690474445 64156541 273068648 302759013 664359335 463742061 597889162 128559047 857928349 155909844 384138968 426350730 633310620 250759903 468880854 18052130 882238521 576759747 808595006 540440603 851220292 202503086 761371654 566407094 577172576 158020314 171551888 612338446 966507485 359404906 942859520 782035064 931479644 418195055 871423265 163470102 209384920 224246748 462329126 945788154 954241550 619979530 655903673 470833307 586166280 654228506 973497614 204794859 755712770 529001773 757738489 744521955 784687596 276676476 344183092 991547007 997023811 183975677 687462628 456760937 745230148 748587740 786144967 484734962 999529488 849861934 909125280 557850839 960189133 177153591 596644084 958554713 965380947 86269858 783655026 209443526 370358543 590507465 675217001 228548145 364966078 551399590 843594451 666401232 891219256 690216845 856235078 573687966 708210364 784643783 851164566 608130731 649550569 793168741 810369471 463853132 949417609 961454580 974934718 787267860 831752182 878306693 994788230 624817467 991281984 905048731 951471321 82171824 153878776 364460139 530878891 147137352 512789453 350982950 380686991 13258235 585100867 970829357 988370958 327526602 987769853 537837977 961379208 884184796 947094073 162950907 888474775 380461355 515769382 854866778 876284626 675572794 868795952 10417267 198447269 343789310 788782918 898092063 901302181 368419789 801812921 31298027 125345840 101678771 279170490 502030777 558000440 590564740 800193106 116497371 194356410 882067781 972748531 817792451 960882401 351305792 904898824 277449774 815922931 708429178 854278646 72974053 939872307 569833510 991075462 840813010 919334663 203025532 830256419 579814736 708583335 70732187 778184961 207927106 729050344 795654251 905747353 61252760 406968404 197372155 989693829 35315139 328272447 885153905 986991226 80998615 334075936 292027383 448446898 468262437 675533284 51504331 798642152 761001962 791920641 651712983 947627343 39536464 400814607 466328603 849722351 108338239 513256595 493665858 981346567 312315071 825817616 548489823 617717610 734223944 752917073 239142923 306267975 646933581 944462637 458252279 721866429 35423834 748357086 678033843 770470254 93170454 871527977 828104334 960430658 159958285 747946407 780927580 846243904 368965786 493227743 923923455 924409604 208289050 400799069 286708245 574668782 160958984 247453422 174133838 189537944 278062404 926491483 819969449 970508139 996302473 999144623 929165393 934295121 257444278 537199270 976860216 979500537 757252222 988285788 677229222 974748350 687620274 921369518 597359063 837833330 921351723 992087486 264635252 747028286 220605431 377669347 567257142 867829216 779776798 980932633 565759639 991943423 141018163 312226781 647148590 832039612 306567896 999330709 576464589 733000991 897927504 980532121 894947343 917467446 293689109 459465622 592867380 690135662 545125008 861615199 154422757 441813915 675830592 739517111 198203185 377796861 636118655 841874942 975188271 979172044 259756801 580809491 83892933 892143421 942633061 993307239 708793903 955750927 227654575 766194840 933502304 954276254 451357145 644724303 7452363 282009229 182381123 399179246 837995897 956392124 291126772 492117371 475371010 862691215 556440142 586910712 253178039 908240823 973750421 982759601 814326986 920474439 417281582 593258937 883931001 915239423 330738058 887891591 553728308 993348337 911887541 924163623 590103388 985204716 837852504 968313872 853558125 958780008 454883811 534937376 348120527 618089052 612319850 850662799 828585285 881164164 832748327 834820062 767839196 993400885 249549590 958681900 214777014 747846265 336617913 601659944 321084202 394202510 140456458 960806544 705582285 734924533 466215011 550873163 775700687 812446322 241817237 992676227 339804138 450450075 332090826 721644501 428177457 548703344 118973918 683555626 289728992 926349386 419396182 695867163 621250646 957340124 632436909 668616290 208407496 352799385 138720875 229534781 828193924 844580116 913089110 974168181 909508245 917308170 129180222 307818646 253108724 568221037 134398362 478124218 400307125 900678634 946287088 967285676 471829923 534833447 389291456 984294855 539986064 681641947 504245903 757495572 597829683 772442425 348633326 578257589 544994241 949428287 290968846 827940197 906497489 915586047 12255295 313136869 290277089 763047651 506131209 564765528 863535180 995355402 132684062 337217129 317753141 552580182 822519846 892218172 38612326 841375715 798480949 952125151 857152353 882850745 172704571 787727652 385448537 506876780 701642113 751498615 10242435 119077791 966845760 984046386 775447331 885131566 338295152 916378127 393212142 630005219 602200887 620142524 188854205 329050433 65199067 382471747 583346770 669802299 235042509 996364027 601763187 949131543 16235681 185120865 709183037 973386831 166456890 233000278 813036844 931188579 349675803 642191600 571367250 925553379 192673211 990391685 997681386 998557526 351071630 801568563 490071071 892779631 841405447 850603707 975381437 983270305 676837881 737090124 226339115 321387036 752407280 966067873 556688260 749604003 674450341 980549265 724757285 817308301 354075596 429587436 837752264 842604038 787833941 926459599 375538342 882417944 161814837 784126823 819711396 840611858 176136803 698228217 589320393 627042267 260985553 474902205 460380409 578784367 409705195 857746259 490620766 491146128 344438829 806055346 643068140 801933936 669578921 749405137 133876268 977176100 686011829 847306103 759823029 943995359 948536544 992294729 914342280 993000948 967113913 974804285 60073518 898348889 5752272 373435300 412261207 450973029 967856396 997793586 349583266 766723675 592781664 695347957 295879178 540232441 351868772 713124742 660513634 828028997 333646561 779886754 323524822 896180805 135955963 623691144 638375205 686602149 140426082 759995936 446646456 908147762 390689750 995600581 604120504 615717186 410044718 649513528 979233373 985216578 998845317 999048915 864742563 922014564 895271012 923716327 997417246 997917923 707958584 868502508 791499028 932219651 55338908 424474551 72994254 362511728 544663219 669700631 593988628 804292414 635622471 682692532 142389581 293841703 292004363 754628914 689986003 852149205 551709211 732874135 92849992 383339637 721890640 799555421 493016364 702141799 947997336 987606222 94520815 495438407 625818298 794751819 854253666 888885345 960298897 962210338 886974805 977320749 625093175 889513944 528601522 635977614 667348786 975064903 283307207 414834569 840381273 884742993 79586752 772271982 409263606 467423082 802614725 898368753 221373430 287947462 819353701 877561485 740525592 900340690 330078597 880169140 624812265 916728058 846512009 969879069 409762777 534551292 764088527 950260483 695716134 954506661 795833197 996722344 271813665 795912512 852736162 944071732 775159719 914295991 164696023 966806500 322174741 747361817 630170024 671866922 605912894 921576011 80031778 695556042 199367174 330792390 923098164 928020013 119423047 205395870 810246307 845987198 958849359 984698329 353793869 591126440 962222407 971230895 253419997 380432871 796258245 979176739 816031409 867857392 342494516 450980360 313600929 938713297 613239569 812009310 914181464 966579009 523128422 623738673 376700163 476835693 671262777 901347658 104198263 380750767 920906653 940999935 534496216 769434556 765839298 944872618 777485363 888085843 306918818 884550313 243031277 403072521 200291238 803571714 146713285 946150905 873392178 921279997 917142857 982614302 690013252 863789693 477069702 949508792 5619161 658506718 542661002 715469009 778048354 845669367 107342672 493596774 849210078 979154627 997229543 999372713 217111169 285265196 163871332 407026960 475994410 986120164 386884801 911216436 28925594 298538386 545225848 610493149 737076399 983565876 305415172 640722693 794623887 929082679 630606916 714012624 241329402 552846955 201271891 481805512 876953840 922729023 403097625 848668389 316900689 339432930 129917006 398320263 349536832 561439315 805187224 957775821 906986570 972802849 472613116 928279266 913702644 975168810 183163796 959770834 705881049 854488607 38406987 401806799 781556876 794189539 276449167 657571372 854183750 957174001 131198339 508947553 147605313 651669557 49919948 595179178 546284355 873972041 510252795 828514837 455876845 601144162 267117896 582015774 176596986 828173124 597400991 731236883 105060475 315376927 655037556 914757261 954395892 969118773 622554874 726889308 204067953 419312527 472203390 770724268 134465715 619674340 270137175 272783520 411282768 515732136 24743438 696916685 165009791 610293300 731822611 900725162 416821501 791534431 352198712 881613989 233907200 669199315 837223353 986418631 850094931 947573467 642428081 941153167 831040408 866421816 373534804 652216870 235360830 620597646 15753635 230647421 142747613 323316188 546730791 844592385 542525544 916315202 134687342 360454597 850574217 978417207 628398982 911523163 452011012 806033638 793071748 866444791 384283893 944647674 398694313 761711525 15443056 887330670 296006205 516625489 79940558 732636108 149943199 452067759 70122423 753780988 20558726 696183446 895612950 930110116 532404232 825285408 40531962 782077525 817485193 980880262 272897361 662233251 80639667 400479933 330702252 605686171 268807338 625539095 545544842 983214553 804518294 888196747 768492196 953975651 546754756 598054399 81633658 677191666 713376401 880256149 876775808 884433654 428147945 484508726 243426792 747406534 999141105 999777010 111208554 862559627 625157038 979396261 887673791 986301540 809996992 995744426 322924194 763244756 147139321 564422914 123799394 274972864 850925608 914332623 277583939 672214531 61249381 751345348 465042045 538300456 6544815 561508298 28544929 596415441 568568993 745756632 61958258 530034558 934709758 976183477 132445093 742473336 965195601 977720985 811108274 963020736 544878871 722795226 849391930 920659471 664703044 749789156 173503952 198772051 321173135 340231231 749952812 876446946 452299578 644951341 815179316 874850686 93982407 848855244 64927108 264639164 91174465 294180395 313976376 554593371 529766315 765008966 382386995 723021256 87661838 658011079 517915488 978247153 860814130 881211570 732181891 838206723 898799517 967851858 6668523 831486196 165696643 270736674 168292078 270595455 740374523 836754550 217178611 602792690 167325812 395347441 86175730 303239241 73539623 944689872 726313069 739181026 560680205 634986912 634088717 705859167 923677694 939381831 523220275 903532515 170153301 435100045 214024591 306523383 618023672 788422361 757976180 831472177 708483943 725104137 146660123 242191038 719432113 752278426 48369160 340491300 937247253 956108928 930835760 969399438 651519263 770362744 682913934 814655054 21032206 623712366 643331866 722911828 530195669 853558274 163050985 463422326 237187345 262832821 185038075 987125706 970244201 988186608 776795807 784126949 136435107 263104993 359861472 469197662 754431571 929975033 110087263 366364028 128420274 324814240 102868179 975629405 35523418 948867989 681684167 844673825 353610942 904819226 361294993 853629923 144409417 729732909 448569752 899214850 661635388 979688366 641683959 986856523 855104249 961399445 660988467 714646743 220578772 258205857 396156910 760092660 168732845 572841113 334615301 977141876 879136293 960558934 62758681 842864663 975199836 998409716 547349091 644064447 853031167 889001585 360944262 647114452 98382356 301807385 649031694 698547065 1872866 711765776 57413962 734642551 291975854 658698563 500949057 532753968 243744323 707816178 908509823 955730037 5548760 130842168 543566515 763186442 466931234 739512524 127917844 367372366 346982694 608442936 976373519 994251781 294899468 380825494 926059125 985492587 242001029 564456254 763324691 925820298 738671858 814154580 663670956 745212555 224723085 408702286 295117658 795335144 323480915 426192454 6309487 362556866 942082007 958517335 277463610 827034526 323440303 583147016 600628628 673481696 664401833 856557377 277966906 452032268 458549874 796474071 230671629 649590949 495142519 824262144 536046891 981624008 514238291 650493961 558611441 696800688 680430659 886165479 745582865 991681876 351263112 599818286 377123861 779864225 825668233 849657362 335929382 639197408 977539364 987327893 636521740 951398287 391119955 861190222 881422515 924848889 987511764 995865109 885517618 971026373 347337086 830433981 988095267 989737004 233301833 464685661 618690462 925465202 375754486 490020398 831787242 996100915 780206838 882641811 895039166 978172911 22104585 903641341 240134804 585350269 564862840 923263967 257098477 338060153 244600701 825181974 82565519 569473492 442368337 635251232 980790386 986394197 257599465 263903366 295071307 758702781 531125420 646175908 985344186 994177146 628898997 990475443 479093252 629055333 797483840 817270752 117740594 826856863 981994259 994578435 489733200 933219003 449957201 477777092 909645034 922898486 829551886 992452413 662189651 849272576 26459354 342402216 950703590 997881562 684644629 929368113 488857757 610236894 435561004 629310327 85721285 671438383 296006340 770122684 794052407 798886274 452719536 736121448 394545305 934437195 824569098 828785466 894043280 942571075 162598286 933753893 361582104 484162874 577218221 660408772 721378832 873475727 355705493 827957602 484836008 512949595 364694743 566481361 366706142 739226332 476957418 612105771 499095246 875148619 206002997 825311914 800338440 875950899 287033226 469358046 328945030 418289805 380023285 557573807 456058315 763357237 691273560 821086851 668004197 838797507 252593702 447047188 277404410 817675763 299893868 560885836 656788812 930011772 628870600 749858061 669200916 927160488 352693832 927434396 133552569 550196077 14550699 490977704 744910089 810478037 135719220 885671685 127249762 608290740 329517590 910196120 571900544 784779091 111005472 317544615 780830012 888863686 288910111 533581904 133366080 444783816 144869887 397619953 316052808 376329211 172298964 997089997 301634477 883941700 598094313 876424254 81087219 743890380 703433902 710910953 200654980 947040583 512799083 808827033 180973230 932018346 215292196 710496549 34614643 240111507 573822305 588080633 771725058 987131434 928066788 960602866 459903809 614144873 474888878 809796372 492444276 643085232 412169183 890320755 968751260 982344971 709056094 858754963 533048509 884811126 776221822 995056358 4863496 246706563 367542796 515046770 204280360 593042559 749518397 842793211 203556284 353878737 793138977 857998068 149760215 582273278 740257016 946850491 936469169 948863334 684248592 769647693 567059913 686830646 967373075 981734587 825974616 843166174 660849821 956786685 94264988 447724479 144373041 244107787 88340137 632167009 922030644 997656510 912182628 952405993 459649524 948543218 556952770 614622406 170225866 622414835 746097728 922131883 741006738 831247271 30643707 168657970 885315521 912804057 792944007 866445040 893481030 939126957 577326824 809860514 568041617 670948427 627014461 858630905 220128332 830352368 528755024 746496390 702081988 895595145 973127721 980111979 882955493 965247032 414210907 707280040 66341021 934628089 864727730 955074890 751306916 945775525 253250596 688250717 539011718 574636603 866903662 895338779 78353306 294443911 920661727 945483553 156858747 539306314 940617637 980492754 817191057 983125944 27608163 436425184 866283826 885284028 622966996 629090642 26636308 898384933 816621788 978403098 317374671 831251565 24326602 758974294 429968967 766413386 523878768 667859679 724795875 764382145 710468161 853667897 844612040 902304606 538213565 609307615 899572528 944955958 524240 511498017 704526523 972234760 682258171 830728577 749740186 998783743 608501551 988953208 70785896 731787138 713189623 902796922 430035527 925772524 120507584 435840126 517910212 538518624 190577665 530631221 659832278 870852037 557707207 875644070 378360743 656819577 450620809 834759379 229086023 468311464 212757528 929378408 678683704 709668164 220944658 822790175 352122719 521002484 565719844 724962948 616375181 643000902 376241268 598778285 240264718 901071563 585809904 756845954 811790411 987458726 721460416 944019874 328328132 378020540 930039320 932736339 72013641 749105488 419005299 693086881 119550253 334720692 961953695 977887667 463307802 927817601 909005549 947534296 320519792 831486619 243137820 247998052 278513128 521706788 437481003 992610445 220503215 276566208 183837140 612496983 892945008 972064567 950910301 987078513 223424360 577459170 923917594 927901154 263521530 852729025 679781191 984487406 765291319 766356247 161779272 616788376 98022772 919062642 684959657 786770824 437818451 907021287 461993023 472702595 566118918 890206864 535548101 889489261 533143471 876863561 698690728 860644804 978101406 990922624 760606982 880093826 327245371 854732939 31654478 905630307 331608354 879320893 684571758 709669805 711392266 985654985 372295976 428877069 865304779 999456873 725223499 978109176 581743937 737833941 132244193 975795712 266761079 398782837 975744943 982925375 34594696 786862360 633240339 944156378 241072619 962652454 639711564 790048531 610972965 769457423 688055676 990216101 506659396 546021828 929338510 953548631 686309246 829355232 624410085 848786269 655917727 774294086 924416122 985693167 521584462 736225637 400676480 448884361 578627634 635953911 15337398 495634371 594328782 613514143 25894638 706375206 714582610 948358790 428179805 676351460 960399007 991459247 34069424 178143487 655691510 742555080 967436758 996617393 255856351 393331063 254563103 881039874 203506899 385925079 558197207 740881802 14940433 518415280 859327781 919514707 552030 875380796 884916352 963654016 343177894 770226241 785754317 993010364 892253239 914147957 858869932 867095598 178799272 715331562 430354662 460506673 448569941 798245402 762878740 926962704 771475195 886910716 338314250 587949693 598891554 796534740 506936900 849403608 199383959 322371083 21088718 681269454 868600866 886899662 965439528 971862335 369252709 487343674 812083670 992937792 640119917 945185498 169072056 554276177 61605800 175703328 162870333 821483570 249808594 991359756 361269848 878971684 493817595 594003346 310703001 732125991 534837594 881792335 848598539 897018276 765763765 771138002 776406593 779243231 945791212 951062483 173545137 624829048 426074563 860365235 881396871 934699035 429840796 720852905 690318681 995515842 718119311 833024431 809209950 970847585 934099419 938448383 204979999 346488483 360808555 702937045 373292162 397996092 224001250 670622304 139381047 513357177 75568750 625235335 747411990 810181402 217239848 925102427 785733049 899238003 910528701 930744283 63734810 455366863 674914171 895946327 578603145 753983717 215721427 441068414 782190895 898692183 427048870 468327708 478831333 776559056 568354489 842653078 576255100 659418103 183923906 562964938 671185456 875718481 500426204 982245529 308130620 470076600 137003726 858951897 511458695 684549510 313894027 836981910 690184443 851559630 244436497 430111681 500841853 682634244 358754730 881490414 288668650 800579644 831708204 956882288 187220003 672319364 83768019 713766754 339065631 574400554 282962362 772839638 70182690 561106770 596217950 960080656 4211291 772046661 755685273 912945979 114675864 249389396 208315687 646094309 374671938 399427738 198789234 528374123 928581593 969142764 21995339 250038339 338136109 383426775 199160129 304205818 673618063 863381540 395966524 981349408 44496716 958106115 823655328 878690208 508406833 968325527 6542158 929315113 661927245 669137278 465815639 784404107 69125617 618052109 374020970 645325492 555406071 951947019 542628228 725591867 982844783 984697367 501439970 760890963 281169095 418709980 180559851 712831294 648174468 887449519 258726933 502915098 576793627 814384345 877658794 962174969 517737648 952033725 687845071 805961244 706752163 775198238 81527214 604919133 976015730 996005908 788145900 973873546 564200468 713711720 644125615 711415811 509581966 797177108 652768169 707689645 683355825 863528661 110353259 753461047 658598996 679280942 950177229 975917550 19479732 969341765 750566102 976340787 252735426 541679202 536002471 820014174 587813724 696546930 825681292 976156764 313848191 582560649 461351107 755127402 2505166 447271989 310302009 966851694 371765133 403198979 610447284 775182346 289966642 839476779 189467748 333293840 127648435 191784524 517017222 933502848 931771157 944227454 193582753 677296189 962624833 985778229 721162318 726367105 16003958 910412257 475975253 630668615 276321385 278459095 376831339 578929011 999648929 999854580 192802213 490152475 363124173 498488187 459619547 507417420 99547934 599825992 971051457 985376319 295359204 990568029 51970816 104613912 74359469 550311325 686993396 947114214 964903603 972692241 480244989 735639648 437674665 774448024 413617905 774146670 672691373 922239071 301484471 480275791 571624094 776132006 246596571 344038402 125207183 290633571 892143209 961151010 452400955 564872637 593691566 873769147 706410040 722724215 767098508 914943024 582512695 703858640 7941051 685731631 278406389 889860148 448601606 677214645 101165679 559604033 686383814 829452516 391912754 849421557 149400992 708901470 834634014 978360921 889539766 921556717 365694368 977074288 678716571 979062794 481399704 883034898 302259642 896222942 490424294 712278746 828075848 937333061 120450956 924816512 537521264 594401531 285147010 507710468 172917619 480866568 695635915 930920028 652650322 768077800 353748946 969697884 389154735 552523091 160961435 963343487 866158178 967164007 18577634 148492808 765518495 818075330 619927142 630639795 860652895 920787681 791664675 836898751 715966691 796505550 963310144 966188493 486457392 935193687 840852357 859331731 515866877 631539241 235257873 491212537 433660342 548780030 417574166 971151901 17648653 928727318 375772980 925180178 653777688 831778050 803177713 881016928 891635509 981468481 24878817 142601826 388032972 865491003 533730203 725822941 944853996 992011232 228863124 346732354 500230786 756355929 782291359 886751331 76712739 175858958 593754972 748293671 529045322 818645198 366745394 415882526 498504120 721727477 91813303 276301440 871395852 969185380 727868093 959460742 888794600 937290740 176785740 575028384 935347662 939854060 600259329 789840456 589835597 592249560 573945273 601394944 58135786 581418911 914231260 990527560 374824830 660438127 354108503 491283817 851847574 913824925 460605979 515177736 943577387 960734392 516802686 760262004 185882386 818023519 360840517 698195335 362740062 877050936 652227421 932907952 278754570 634181892 480106299 783716177 799467129 869456572 782842531 887256164 548328659 681931540 835947838 849960536 574887198 986028614 921353055 955173727 546990948 891271379 630352041 954492742 710956964 794164503 307239903 617795996 214907957 975012369 961568555 989373244 549941885 773697682 837564368 945616751 738887212 795091766 998791348 999468094 78267867 914941869 337657123 720856134 809151908 996259353 967746427 991572485 55265003 963306149 598870257 905942517 106791747 862871062 889865350 905680560 235909960 343845035 898456739 938490115 719182990 955496977 754964466 834445696 448294311 641471280 459392993 548548465 811823694 839988217 74795404 397079219 123561646 868953839 714190597 798957821 520558084 550308819 378625414 793499528 498973433 512447527 907034898 920504642 692603436 865666063 715037370 830982004 421505057 465395122 364324963 822772667 823660487 973439278 553314111 778019743 162327489 372833003 238439781 374029296 659473879 931964970 41726937 760653999 198754719 875302549 227910706 783154061 365164581 804774107 766343614 951504507 9577494 894441386 870299600 998773915 514009110 764792305 717940559 926420622 348843049 517463956 302977657 868427910 590706 977373243 7136203 325321652 619299718 653772877 148926362 350441185 90774703 294240956 863765807 964617203 423006836 424295331 832400829 881347679 969023467 974227780 799651274 995774777 7960787 616833191 504219952 888182583 863714711 875765127 628415052 949260787 837647174 861407911 745313331 753583314 626591417 793232253 281516295 695895881 271580526 319887668 942004889 995670275 48584445 609031155 376188672 851264564 330196294 659163566 396319422 472609024 204828092 435126472 850190047 943733497 134902172 399649400 991804960 999546783 887276299 997626263 92195433 786365373 720981163 845654448 296801005 881988296 619078536 642189002 519203942 952441826 748697944 796389869 263964766 962251015 954034311 969621165 97756110 546518981 830724442 885377062 648610745 963132890 989925556 996587519 682670057 846082152 83201176 390405438 767312834 832859899 862814660 909791067 706038194 980085436 821390267 853004357 537175808 770487266 340020619 794805647 825839889 972955557 353223752 413402798 547814951 892131089 648090758 827839558 14838408 20920437 695806138 999588972 61631341 153171264 949866706 960969778 314345694 351389417 754510989 757800782 782620209 790781706 271324230 705143210 115990358 122584337 753890756 857686961 813957999 907719088 298861546 369355629 597551072 667411924 370073990 773152102 769871384 963798909 604456917 969875184 872874574 930383725 453953016 824451873 236519416 376701141 643456906 895800697 254393073 623769919 169241626 443523039 651725833 658040292 976313301 983561817 910295748 920600588 250391908 736023462 692723126 911988214 204574324 556597098 686521774 926242466 88893714 698511456 40478708 530813938 638053483 945746819 94258869 797532046 976184187 999187679 653760717 917187335 672099964 697130054 57288702 818419028 128911369 237206831 528360920 809817495 901783823 955241379 442075891 841751869 213731634 412259635 503143497 592961001 285032465 982603773 84758698 877049287 128363588 858932483 927856150 995526824 880566489 983318876 160552736 218429966 989408364 991247038 176540931 578693055 120152086 322223269 221905530 988366045 425639662 757885692 740286981 830010139 387104669 672626529 657571427 713801564 192965248 628597647 577431759 874270270 888141891 922414274 386683693 683492053 809140017 927331288 565851656 864926846 756339071 875853213 328376010 732713620 793673209 870216942 653486795 972429374 209569764 766485367 915097370 967685412 80578723 442294555 429328132 783375662 232863019 277563508 607378917 727174009 748034852 878682533 898260680 936144522 765764857 924104033 149299017 737009739 242858239 955462727 655456939 878432849 392816380 785642716 386324207 736313233 184759717 644645091 128561345 779782231 659551116 713587728 847963414 905041150 967200925 979246582 306228806 725838649 314287404 842538871 195028746 273484980 717527130 914047608 139975713 608132027 322967454 569923007 82324801 692499510 250758086 574784771 99300702 249571247 191169574 553620258 53888906 592503971 450581709 890245194 551202912 975262271 921026041 937309516 709936550 897555166 265489524 286007814 578793867 615490952 144190990 339130921 752496038 960236145 463091539 885243005 937911974 959854760 909901914 982202213 944187759 990171869 806954086 959398404 375809854 944285854 595898058 606329482 38325383 513805676 141006741 901805995 76338454 919410432 614293907 914947077 568595535 737925725 98516535 847575378 835809213 936663560 707036283 891757756 319738627 572577833 457515288 854100837 338468146 456854667 6200127 136451445 885531468 983639695 310114466 521978647 548413726 705100531 12795529 231155123 426811946 902104452 695224009 850881922 205655677 217993244 440432879 838781094 144034927 707644196 596012690 841851445 561428248 745662528 994939759 998432975 167143154 955224349 894411772 902306008 401103238 664992421 467420938 749327682 304813757 998269215 273149806 366396355 561978742 769867230 545938199 969293264 812757874 973998678 98019587 245593370 641835031 755242520 791436049 860686494 495701483 734618559 6111650 480394879 130014369 701702903 451711615 850511682 657056794 943108265 200320836 568729357 15888966 96321048 993054699 999711356 658595859 694470788 632513613 860183227 460813977 984888900 402627163 996052623 894170929 975205048 837785512 939509563 570278431 867143049 680084571 918456988 466123811 935637130 97042129 938812668 799312790 940471052 325953655 915196533 737690562 885579640 594343353 663617808 221273169 374320523 649811409 972310392 635348012 858925255 468455100 645033293 797425614 956698469 161030253 943110433 868585764 921791987 81341634 981203146 167774461 686839662 147744710 700212189 792025443 891887297 452040976 916030268 525966281 974954116 252424594 299981600 631132936 656193431 352284564 729568359 789532303 900491880 936815458 980921503 822640333 911982443 49750696 842358740 543761093 692818179 564874616 763924236 213391782 358568801 503257071 810030449 670621102 723977613 445564197 473172483 494583508 806969348 857184929 963880303 550080147 848236595 76265607 219128210 424362399 515658874 24051539 704380466 549034201 757503190 273970555 884003960 141400599 732079253 902215017 962973982 407575997 794486728 831913202 990873294 949993829 974024424 553173613 821793860 637552851 882399066 59443971 915739789 292022957 844601344 388651607 989540605 189414889 860541186 20809257 609031530 657149533 833196470 807766809 819080658 320821890 501623121 982046456 991033391 108706606 808386172 392950205 991467760 547714037 655893161 391928661 438697093 976951885 978366017 304155170 495611801 617583819 767513957 375855403 914348565 601969767 766870057 21594851 257207507 499314626 705995926 615020426 983155000 688193882 688209546 253753715 285783870 794411907 936387877 945704634 988235826 827393886 962589578 138807298 314866061 759717875 947849621 654571789 820537572 156480259 950556112 154064870 372137910 537207215 924243958 258695985 794061700 756830683 946828660 130030635 644280790 851563375 982382496 785842130 932760688 437677097 625050345 519336970 792961970 649479339 911464778 394600681 889822522 285621121 295619191 422887359 797267402 273439068 410043118 847443859 890535143 976931090 982561776 892669072 913819076 819539468 978451034 107547872 161792450 463687914 468155109 107111038 653832064 569179833 700543433 545291321 747511397 190008756 395558286 660529232 706189122 985766395 986076349 790300772 986237530 521031199 601832032 472793788 764018384 311534924 995812592 369853098 786171104 70118126 978738964 101187703 758722683 140693248 409768338 626584955 866300604 3578494 532342155 608303745 762531302 755728342 786908850 879947220 939720415 101368014 400794605 924369660 924908873 127992382 860530221 629827119 839893251 640299229 709555918 525596071 912369616 323923528 409297597 614006829 923290577 304979552 650971330 508765413 944003049 226297954 679186058 904703359 966960716 633116038 822323786 540502387 633604736 536682271 578519552 242543521 527852061 541588883 890502955 292307922 505252143 497125841 755342948 455927480 515195501 835347664 866660682 693230668 953677316 14003492 909082965 693406590 884253941 485067670 543428713 742602899 939227022 655101141 885890257 495659021 581211073 348180971 919803203 286750279 764420800 179873846 180420293 687271172 807711203 470570776 973948087 431394246 580930545 483377344 669033496 366029224 951470880 480730451 980458410 51812808 301361735 524407724 623220419 987241634 996335748 508195111 676922177 986883535 994457116 750696151 928910305 590366875 948610100 403653704 855719243 996959119 998901340 693401457 804439067 761205535 785736077 426420284 913440281 78583234 316725838 30630043 227812853 390213113 930855616 671208523 797193164 127853060 253293531 398756537 589535311 595590978 796948763 589568390 934100487 210215651 687433007 947215219 986542280 264109701 647655546 703990244 739097210 275509117 290197200 28686238 939557325 676100321 824950000 889627329 929905923 654614743 716238806 408280611 939806195 606842905 653199774 338218569 930951145 7905962 227187161 112777982 268889466 970974170 985976380 157583477 362550441 288170363 551306609 399981204 449537593 904749303 957401521 341235008 344177805 772382390 892177672 22772380 845358121 260231538 705957688 716997300 806267424 239024891 612792096 588502566 987860838 272987372 390272742 734480416 870639210 143083885 311157050 246277923 552925978 460110480 502185020 457061657 645314712 870440409 909553380 610349115 982614125 805351320 857692985 120790808 261884719 994275419 994705353 439694559 605194233 44768124 124794731 66769044 287288228 671758121 682166570 455822200 676230038 897493068 980754983 107482054 932758024 708105210 732652652 428625201 934725561 649251210 655507299 39652357 303840663 351224935 893191239 69591126 708222681 300173376 910273968 52854317 673240293 193257103 267284437 885894548 991537041 199057630 971016355 667107877 674408259 646663601 759726092 361061205 495286879 859187785 861093720 515509427 995597093 192309244 695554694 537493737 715313004 904589549 928827180 102334059 962952187 703136753 808646411 837838749 935491737 955032232 965144702 660634501 797335192 372327528 667072608 85606577 537183277 380315881 452447142 652871319 761990761 274786238 921602974 720097861 870674709 110096612 191211536 464987595 963474665 625144731 841419925 153105232 397762250 837865813 844744949 335186673 676153983 913010964 938069305 726449588 838529183 698598801 737861016 983270880 988591671 42742504 382871443 626517630 787285805 533810947 613197050 332179178 561596540 259505959 764883038 347200702 874908396 389710698 410338430 281013835 589545825 710070592 971855617 449455968 812048740 590947941 628090145 621324306 787852875 952318911 963824695 33334586 751561255 727738514 733442873 240805758 651516682 8238953 720174721 655681718 935129922 623520959 889364510 106750249 495423018 449166359 499964211 585126371 931436671 369103257 839351402 435514203 631039451 370763960 708326074 245158409 792386540 90313697 832817124 691791801 911121772 27550877 497376620 933157920 980532692 641795989 960174228 276739715 996078245 958929643 988015882 45377816 302768388 812555652 879328503 875462056 928806529 749672323 924615446 801025206 866034971 448280321 582238206 109570469 591472912 947890732 980269292 452504154 770170491 85770129 476764845 967242626 978891490 742446528 983356888 687270707 974436578 893798244 957337934 933667417 948561146 192070508 791375961 757943595 796471379 855425833 938243239 57941340 763923046 836522193 874274461 302515769 400533604 299593759 365664876 170673426 831963381 259932654 377607075 797479687 807647172 115512242 889280772 356305776 493021176 42519288 337280369 752993755 763286475 281682280 434188370 737210052 961641167 996021766 996191246 444249222 460703108 859931990 906453307 106782985 149879951 453373044 774567391 488605081 533035737 148892463 560016331 729552511 918359727 882199305 928681202 101168128 602342580 345480113 766192452 59206755 296145796 261634807 394182985 82426880 220747199 830794844 873842009 740849694 763304276 547620944 933795677 217517825 911406837 968638376 994145015 743889128 924475585 908812102 921069176 420635620 693819972 710549458 890744360 447714025 817511690 178815145 782269606 274660672 489661783 55850751 243955860 952764369 988597721 973052061 992746272 542168657 915020810 799231823 844401454 451057567 653151379 50053487 274803124 775654499 790927620 324890056 404478855 227109007 533482916 740437171 810672458 482475629 754349737 564467149 864150427 451747598 458460078 147225383 488781921 850014731 909129605 727353990 991344518 46574360 921923810 617782599 727389158 695348475 933004625 18632532 737357438 582096003 913535774 713253750 931642841 942739990 982297775 396692161 543525196 838575132 857686499 379065923 900198616 871664226 975895097 68988592 331264738 832699202 888864440 749251804 926502578 459692455 822939705 584028500 955889797 650210985 821298122 291869818 818258766 212912452 768311400 938054412 953732241 410087222 956626305 491865636 883318206 721282049 989515712 349422572 868456138 435243479 967363242 795227215 863110544 85213710 97948906 522704986 566372002 938605956 986917727 47655251 656950586 769866465 968880279 727034318 799371544 88980082 744739961 37920414 153389728 99549670 719905223 888784573 951888252 136119932 390860627 40226475 687099889 557836102 703794864 470545060 955610893 745866797 812568098 892537819 979271893 98576593 116938885 77622496 202681348 857912766 873251894 469670287 512188126 777054288 926166907 103552098 885816181 413186934 906439282 556499534 684293661 641956617 774578455 442982632 996337928 44466958 589718513 267640777 964595847 352116167 822026875 681945381 951952470 458349411 940552078 359774066 913118185 420176935 786160315 654988198 927512943 656707865 788697721 942280478 965012459 401477530 839942472 648156261 714064869 940437190 949849522 417808183 440233160 113850165 200464535 193927629 956701791 257702179 462441043 700981924 932611824 53144771 456099076 50996682 568901065 464394277 714523208 770559895 802616251 443917362 912749639 421501750 686371126 922589690 999211752 304367003 365866356 933292347 981975256 622731967 980068075 948368475 993233788 290681941 481509367 460485634 676034268 494074931 662179902 734948123 906377293 177456211 475357402 154350937 580858476 565610569 616595018 75541595 229889533 866558005 904441292 164127640 761766766 857963245 865459677 808428570 932203033 263975907 309845105 36628718 65302728 343721738 378399393 911430975 962547438 571963558 677271423 989213493 999627089 918394923 955219713 833566384 996887087 872250169 917741284 582019563 701403390 620550083 846225600 435380674 687830051 672255086 818519192 851187423 973878550 303161029 472585816 506731430 737527404 136947799 941652516 418085524 837702070 507888445 867795453 128686569 894999195 296795462 592166773 205184750 874593561 813051089 813746420 549067368 609286562 874106474 976988492 600879618 614343807 329374245 676006260 887721981 895011877 389077109 800161559 42953983 546079474 965641514 999548981 425137417 572679472 716609542 991639194 313926625 775598607 214248522 971000587 430227270 661624010 779142956 889222989 504737256 562292771 85885264 358615403 46048248 386258443 994679721 994979768 8532264 582652454 127559428 769608176 348893782 861033731 316767688 669440444 797171237 846524966 692973259 944760362 781599895 925381177 130273323 666057343 274269134 762563843 83785559 236869442 677195760 939887945 885335019 898550213 687954295 772233361 110121957 876712772 220273478 959141471 170244455 951719097 909235864 978270092 15656994 653884744 83502130 882878240 435797831 641890622 317815582 867984695 615991703 977708167 872278481 941854190 32023690 650551829 729250252 875802477 449147684 779483235 26077444 992176037 839918342 917085438 80200646 498201477 684044986 721263112 751081269 898463846 503781556 887132598 395112864 867974749 230078606 573353409 178795936 208542359 472824333 596561651 454145469 969542775 526276335 888034862 51329265 926515599 417034683 644499801 793662515 988835291 780693793 836116357 258716280 311705410 333547480 604452183 551318044 781523816 725562208 964057568 346627076 362162067 496945798 886749234 222571403 958909563 573026044 940465390 871736375 879668377 383416823 410817832 969366664 976464787 171739795 855425184 980668238 981407115 314035931 431145813 383951742 598297182 820567467 918728205 850424713 938595171 823070337 931435906 776217799 813374867 759364460 907162325 612325030 891896410 43686659 227575527 954534759 978016983 270823141 541324864 945153976 978951192 533420943 986085551 524427686 743525900 115112740 948253632 132229579 777491452 188122959 258941537 564120792 881214075 698650532 823807408 827277433 966021032 731174393 854311399 448976502 825073686 540516059 991890061 794869516 949248184 589639762 647337926 545449366 831015541 868878259 904805921 72542337 460325610 806825814 998127478 545167960 811696430 96658043 752326356 654715979 966281080 179916524 374955137 621860468 900725641 756746925 796845092 283187880 616854806 557190120 751163841 372571771 810523086 445329984 455903171 517380122 646271602 940013853 956990655 714182061 875928976 483984621 743096304 351486388 843457562 820019512 861472064 567229051 972816567 303197086 306332018 309985168 779534278 546547514 690729904 84185032 875803795 753551763 918440918 17535505 822533285 70785428 647237850 705124733 735529930 563013954 911480749 757032349 839038578 594906687 716447794 12052577 569691247 446116953 725101683 877090718 951563937 342275536 764815100 706353449 959180675 621518492 697632216 866724441 931698434 799732430 875326275 277560587 333279205 719870318 992160923 6991225 296591247 431741874 765874267 550005949 927946207 203475292 784000778 497969976 719456289 975011438 985697264 420783452 819103500 173584537 876351683 661728127 762249620 832530920 857307173 832834820 931767090 795587992 855693737 392242558 727643697 378989043 872698709 981741607 993696541 552818371 588914570 706161196 738357270 885723197 936581262 359626093 385498970 683672049 964437686 593239559 798387272 843697841 887620122 648510135 959331709 276556538 939737322 94633523 476124988 215731255 471394703 432802137 766463603 133160263 946312686 818892486 926806512 104850555 829102848 560443167 939960080 769988249 996901518 407837685 841305013 197717331 580655754 995201769 996480973 604184051 800534460 133374968 744350589 812244509 820220145 609260768 704225456 807556335 832113064 376391317 829912011 126629808 320264004 779655234 909564255 276672038 628905596 469729399 686134089 392906123 647508130 581038425 673853197 577760744 762758833 484498687 759752899 5004101 190811550 308781947 794893878 530514466 768789455 899525135 928705991 836219850 947337103 524470303 738364704 561993614 680901012 127817326 185796594 868640744 884820536 216742342 491003434 399319518 643091739 110950804 431257196 54902067 867217823 683836065 867980403 31938370 165409595 874563268 910810920 217587171 647671146 786470246 918403428 114730237 566305190 493603178 788493860 561125713 807690787 255027553 733690913 683678621 930947176 103137824 991395004 763492158 908929459 642918877 736639048 179467632 211284526 960785049 973368900 727591440 982730798 15004575 40816748 952856384 955191989 462675290 775496340 418495348 529811997 877521873 998989105 843235959 861292560 64871370 781218273 311450777 597770777 577742779 630102685 901927820 964849622 283706559 718483545 277183274 427294862 999309649 999931793 157667177 539632953 141756979 967841733 257533349 263478631 620263622 855271488 932828403 953391221 284916278 494465290 517939293 937372327 455412799 674862607 399556418 925724787 144512157 756662847 562175813 604941328 765881098 957255126 521538173 671501639 60510194 278081999 956315272 979568986 978758485 991298393 117563056 360055974 69858602 605033204 314567925 898778014 876682074 968866030 895620673 922632145 100327719 616313143 238249796 361716907 565623064 918107417 921645256 986334405 242587693 943630958 471760355 895887259 65375437 619133141 198649346 864942108 42992464 929621268 423595104 568790493 595857466 790086438 525346616 855421450 451242511 772409823 794582528 870246373 29373243 640970701 395429994 418176727 671147443 828124674 906166570 999261570 583233503 642923560 876903815 939778947 539457979 751994373 629425770 869692661 53268524 922646160 708672155 724512539 578113015 827577367 209903463 742754117 2513894 692852037 49517787 741325246 838960726 841643883 998030980 999081515 163826403 258707931 679176703 996738729 912939805 940673311 597544329 906960625 838445327 977274744 349197516 751645563 315554734 629073285 270724071 994333295 893957376 988688917 944147086 993107396 446136810 648780575 29133491 96240148 522393551 692380497 463009722 701087814 830737241 933806373 987874191 988560935 636611508 706964117 172410696 982685484 653683328 707290835 868511143 987521827 337779555 941893578 240917048 825230253 640220062 911350609 351025465 632241171 812421167 926233083 838397062 997612979 613999390 982995727 630620827 781725680 330759621 996165831 935327622 959252848 834525609 934744997 101171141 300096649 279497540 715121633 416163114 650909477 341592733 847820621 63343654 724171617 33827761 936272174 2753369 160645178 616442593 654577996 405178129 732921256 904216767 977388577 876924090 952073107 24129613 756262489 698266418 883386288 717540441 724361598 293057192 642602557 111947650 469793302 567917688 714449387 615885648 961653291 444897384 861363425 990940647 999712162 109462471 395399525 298641767 586540152 384349309 726309644 781918633 785468048 819204187 958144413 636448054 899451119 923151976 966200374 519910990 632715726 781072891 901500978 402178173 880911536 22881918 822855079 823066343 981405947 257413627 619511229 858142435 916794740 617223081 791819683 991897643 992020330 896622248 955381802 479746039 980082511 759737199 764846850 955584943 974136968 509108365 853279071 436302440 596075975 91530413 749567439 827388358 921112933 849922990 870111115 965827402 966294553 173795996 273928352 193077381 875631305 708100564 788927929 51358219 80412948 508256271 735863612 90404074 436842108 13396673 451430650 6701016 185530137 637348484 905405533 644065542 985466905 484861073 985698388 44274222 89658538 203578143 882684508 936240448 961592228 438691219 939113395 216466901 337070284 910391515 991100394 586826967 884645854 52485616 310158043 189654521 382810615 976350946 988103339 867414454 870892099 983747122 986632435 76866264 885432033 705322664 979668481 284685071 551274402 485110535 568635447 907007044 933015359 682414418 913675449 506270853 999703223 768391902 951010411 400468668 984264567 888136842 902085661 769691355 952894993 907089255 932174487 779756554 917283817 495597351 507417773 975234594 994851805 416671062 421308188 807525674 872289543 532574044 889708108 55186601 121696663 510392510 786898853 678922986 938145978 321422916 614459738 894508108 911578706 403900559 760334071 777672830 787723936 515880122 677568566 687909207 895841569 660003176 838893209 202887842 991101875 63352079 888176741 359802254 933310415 763980625 967403136 282823611 542600995 810408703 819083550 710133478 878061143 529317105 765647487 508039083 734976862 19615961 30542237 323881450 905752832 257503058 808474863 139284269 385880505 155472987 590945671 806069343 897370046 236686413 927338254 235862221 886505958 258907662 562299628 934305361 967737996 374530144 756204681 204648389 390072863 988981325 994172568 942468653 999832476 526994174 680579653 699870854 894581721 814786215 972288763 887221475 993321333 987593356 988451056 882009018 920833006 745782849 862436260 55107767 121855917 255485322 777404960 457245398 997229271 314643786 397134874 894674170 996791363 662099521 969801085 770342164 966469969 558946843 800232592 10783936 854247177 307538702 424028438 318652540 952709601 662763919 833856221 837933870 962928331 626174856 808199708 41488675 728215044 805622023 861475400 848259869 921537248 309079375 683994427 54511268 777745925 368548265 558253630 983724558 995647613 615963762 739911629 247105798 977332322 657717915 659024717 785896824 937921358 355826430 857561594 883948588 951600969 78575081 338065985 176620080 600201867 218372633 392633754 452054024 675926522 351173946 515698194 317105237 636657726 334511327 596491935 858331689 908448378 968482921 989972047 115618198 174658735 222494399 350535514 129060326 857310062 392807570 443685774 835168875 850682596 32432073 304497000 777689140 957897933 557697203 710222215 456600875 804280985 137710732 541699056 230363027 607790163 794338734 882287321 16997438 590141840 341731325 760733865 368785896 576720569 261176624 778032249 366011378 519748695 306519773 487063865 739441075 865470517 9737633 817857074 364276614 829907440 987163397 995423540 434233187 730178302 128796086 397223936 465674749 846544328 574896592 824039893 462946556 973072819 989673370 993812446 43456328 767142960 560892632 838013557 665387964 951542001 825315442 931703231 907489695 965672543 939787058 967361747 332233747 529165503 670389283 785274809 936207070 944570690 353572601 439903486 670725305 781991304 859809688 878430735 195717510 806218902 777641450 983286231 742258937 930221287 677778613 711785291 96512053 434815007 25996646 906644780 775000306 888496314 736839323 743402063 744226854 780485151 385445940 614482724 755966107 828455931 106204352 595016965 308234261 701302486 348103233 717038751 661157773 704226920 798051707 875525418 621549625 864164934 412982784 515012049 755449405 767360745 701208207 881829833 118688836 676215958 737112742 810742435 509746448 660049532 496961858 561167930 487464138 564466073 72782646 834952271 157671282 686314931 337604669 372031110 601623788 817067024 708379625 878973017 770023732 907976968 56054946 694755279 88411710 229062555 902220919 931793583 555884710 612698229 60540200 128964352 556675944 634962085 713357153 829856776 178352219 243838813 586475815 835180898 184500820 721812020 262281839 926423155 121740795 604580256 481454468 541021742 76543189 701881466 392757010 407748797 157750430 361310799 883979550 971030350 5664301 79918339 269907795 876868672 360053035 535938048 336934022 486136741 373041098 675874281 490171466 875583917 798616932 876805869 431943132 632669391 745269208 870213598 111901098 637978742 540914296 945220965 320053 891816169 393388050 817011715 168404156 947152798 19481091 948671132 576594216 978638976 174537422 307406712 678320302 971603006 541228471 667152820 972822901 993740437 512375574 839898534 916663697 992302551 613105338 991440282 607629237 676104590 609345822 948997563 68391052 288522438 263872025 617230257 166077767 979756454 558224331 586756579 549767340 594302807 540874054 734778748 960170497 974036362 396545905 722732275 592632883 774244977 236427270 695903627 769295312 803301908 572343011 765241053 665775235 764828893 558344703 583818107 721117317 756793457 786764937 982040927 3699266 894594631 904085338 962121012 132091435 537769294 946319548 971847192 834129170 881624420 524375921 702171881 269736315 734861559 119716832 731551112 881839197 944180840 444444772 896655331 986498147 998184933 246521593 354563539 836277759 987650227 400344385 555588110 20372751 330959177 400548954 869095834 829312592 902123135 980930379 984773885 850786567 897386238 406812613 514246195 271667586 411125246 510828387 844053195 788925247 915131755 725122578 919100130 69240249 671264193 664555126 867744239 478323037 758882074 648844191 745167277 172528967 382503888 199274874 808642226 546285469 899128103 248937797 563450196 228159691 682121215 415063964 447913059 599025630 659713554 503627749 744412037 479177466 515368003 702972584 949031554 831244674 931302231 388890465 693412959 109151598 863748226 95751866 934220868 514704616 644972340 881148205 979710601 624287203 851282592 134325495 295987905 982552851 998222370 573026765 595313533 113630551 950297553 760977216 983782376 719691955 906272736 462596445 986716722 327628803 928940381 670145044 694980762 582587035 760976721 681794763 683464316 547211322 604154899 519318645 680558488 494446983 705517382 658622120 850424402 451101273 501420084 94121787 746122435 387416804 441087729 617938955 973283051 941540620 947425869 616216924 876097038 416856744 644083670 739047130 962887623 570357981 766919020 522402279 533188322 459469029 950988815 166514373 595848800 270643182 924811875 53733108 997611464 625150064 939270246 105585425 401329423 220037333 982187735 826840704 902758265 327033519 442719603 812524833 989955031 297833921 713622500 478253114 568997353 12436118 585892854 120551224 240223820 885816486 970162740 122237927 991115962 366110533 753268177 979996543 995668965 964753499 998957907 362707930 885200267 110589384 625204257 353333418 755080909 591538946 934795379 319207528 746367221 662938160 955656262 27841554 306955174 694867938 747231503 923722529 980931490 955312869 962594220 147588370 791983362 405123456 976604209 260943434 362620610 549984879 762166066 123106968 928280406 418088930 967089778 815764502 926462674 455936718 813826099 745272684 983708683 819080868 951482408 877790164 986267623 612411896 883801029 553647721 634686485 115509513 540841640 664688620 879560572 650393409 883163414 814612530 896498671 304383270 966248017 633167529 696513632 207950374 989810259 889228406 910793966 991817487 997669606 977616511 978825998 355378176 458806291 858972133 994597440 706730554 925740152 665794298 843855523 173109450 220127037 868917542 960578085 269595296 905003367 263627136 273595680 133540737 281051934 54145731 464894386 593927791 862973964 284359600 647561696 56339310 714744204 989807787 998702820 447762354 579442816 924620771 992420916 653091457 845306914 102709752 960842538 815718748 911729205 472762815 976928677 996043192 999616779 197465299 757634979 253850457 452503207 538664323 970638049 817327784 836301002 160473354 211801656 807878752 969007149 910754765 943441742 630066541 683104890 895217182 968313819 486761516 975983223 468662488 813208258 803494004 941192366 937274326 953468797 990197996 993713066 232650566 523896748 378816016 516053720 788261490 942975687 530623341 705640449 733886489 766929088 320937993 463621144 793015250 971514309 898780926 988265736 47520687 406352130 795657746 902825397 488516339 658760535 160155536 883105327 332649345 587282054 821149039 962897419 564585394 922999659 395236088 461070932 23990336 673870212 819946411 954695662 55060411 649860477 459801897 761500422 973212829 983357556 968405815 999412130 766174229 857720708 909156499 939045940 806239015 888912984 741285070 977258768 807670312 859502841 655339261 824946500 323584114 844813522 494290388 918682861 7798482 893714252 261631548 759167536 812574536 917916694 204537983 705376365 70297054 527484210 179714632 249505501 375175968 738529230 688639068 993353195 646260848 819106860 841379156 974696952 969941020 995000474 296793259 352748333 162298625 275570425 468173735 947782967 871263315 984430014 636868303 680568185 690442424 708067885 187045380 297665658 486568280 686794357 93708300 624835515 860414611 951510714 390737070 653475241 323182074 965898520 791633119 896454791 300172990 719863976 39398389 896526804 774778163 947743287 503103628 559391011 467502103 528528133 148210149 191356605 347367619 717726115 758498847 853158955 642829806 883274785 694836919 857729774 670910165 912075917 820844079 939678283 90589731 745383081 779595774 833555608 558991637 807192277 363558514 529536979 98761171 571904080 905028882 978203107 402566593 880948727 495448507 687796538 353961123 714010486 642783596 977607400 998095811 998968340 533196463 664282496 223345839 605967410 754523097 885742301 449801360 759810529 416512937 671988229 956205259 996939408 358374888 364209367 528205057 675928659 474469619 689145824 288999724 860178915 660526108 814177907 166962522 936286199 194684931 641760053 782468134 886914951 590634645 716262703 586352604 590740318 901556762 922412638 140564188 145136899 748189441 927847112 971349151 996041071 303888723 899842932 858626592 987864966 785864640 997973392 57773829 514414263 680385840 955519936 394923251 638934257 880153298 988685575 539326768 734365575 618984895 748926946 653055255 829791709 26920466 513910019 196963440 945299011 588480323 920358597 407981508 758469460 187384569 201334285 810154171 830547949 598825987 950273592 573008175 761776962 935011849 948864185 223108888 519736557 372434890 563490802 762187063 833227955 554605868 872706534 202112907 326886974 211943135 771878016 972105152 992154416 205504658 285550795 37076957 741226769 867576346 868219430 876195854 960886726 499144164 816405157 288237728 413716474 130842998 183961864 465914973 795753860 376071470 517422373 486043877 972657299 719201055 907873615 449170843 551897365 908811290 960182978 929207423 938511760 882012588 893680246 120222046 850683233 744869872 890986494 487314945 814326710 382702866 823898591 597278364 743039304 839386100 882400947 789072593 814450931 782622626 866796614 947845117 988957119 555546035 667932818 578369212 651099866 753146454 827334003 807611979 893288637 973433911 993172432 403634307 420450082 482549379 555014573 899614436 905482703 606982193 655595292 530601435 722493012 598853762 827671669 561421744 828424575 235350821 883588629 839043675 909955121 269035811 759996411 506952857 785874041 212768432 263702037 492413410 807143383 436580041 555252903 809349420 967049676 61339247 584691961 45764662 568551860 500160172 884542765 380494829 670538082 402569197 552891516 907503228 999074813 195084373 228789213 92604467 920732977 911859887 943212138 504573703 560869164 322535804 470815193 807421916 888141782 479579265 861436086 806201260 838483274 303051432 321921104 904763103 940632563 523451208 971953966 790617699 842997310 610241166 614370442 528943897 621859412 245402287 637089559 977616585 996102002 561491899 650857851 86899954 232221156 487800225 549682792 437232276 785625212 724063638 755135571 190977279 761313608 300711144 888074350 297488515 380626359 5383940 665864442 439595515 553733838 267686188 798304320 314278763 745613787 5952614 33715570 867786086 979643123 744953388 777131079 456521898 686159040 859054554 869089941 680592080 908668406 410000166 416013965 506180229 779424037 375127604 825541579 241141305 843986982 278902892 326080037 189987712 800306254 399763363 933515131 868288121 983974430 255077708 499209809 971373410 984874577 730783759 906251882 555608540 890025674 20060488 41590201 946584648 949901779 175433033 221348330 60242900 873127360 98299823 974344593 355427026 386665488 125634952 218200133 791962088 861743190 494770139 917045903 592340877 807011839 954141718 975191171 16796287 719558570 278218714 394337003 248193998 276775072 20529980 744021112 311382210 463633462 68554446 98917710 250375777 384768841 744361346 959563544 839386337 856688353 816165309 840372115 888380391 941677412 756902221 993945296 100586764 429176836 958721262 984597066 374667748 903547580 673758032 922590895 549582068 825261509 327817940 443085955 24810691 126061842 917770586 943448929 152584846 903862818 117022202 343776906 408547055 906418688 304746416 974721047 457839350 561096645 579932642 816662024 835125093 991541869 789931940 900160579 95970096 741990624 688712051 955491402 421023656 444074877 714675376 972100244 958808827 964219929 108483148 976168496 196006701 883733018 492596765 712453684 259096368 845738323 458880375 948469819 364650888 666264679 289305967 582035286 834491294 944564135 611318298 854916176 17649457 655608968 440639412 931143587 92234416 608124527 693261036 958133575 889992403 902341585 295358527 714227222 113630242 807883608 578016159 742032496 834451606 879170260 326281550 642083373 602908280 826963312 947263679 999198667 16883668 606644409 685018518 877144732 514810744 827734610 287356494 826423394 899983596 910853932 10924489 938667882 846164042 896171666 925733624 954581521 445242201 827569476 858817131 912706594 581371234 820879537 987908613 998592742 219081283 611190217 713976164 732538280 196875936 356907206 846726224 973450834 529607962 540646728 324437431 433112595 769627832 858345544 217338970 377757945 10005498 803540331 349384314 710079422 274195092 586554551 916930755 995767722 226076241 815128731 131050320 295561360 911977461 958103621 868792069 876231055 438882554 443568796 168241913 393075390 434242493 656438234 494902132 923471321 744349103 813007633 890193553 904039419 138030307 661490596 632746085 849869431 317967904 793837344 321970812 416759038 418098103 920038724 673231609 858217224 567084371 714591846 534835527 630458811 196716950 419648124 127111427 859010017 191816411 551960501 910542080 969149806 110717528 185500185 802243442 962205638 327676787 621092624 328300463 930725249 480434990 802512797 687385278 928894893 305702158 727511730 795304410 858629901 433679507 474565121 758378090 802764443 667784102 865619236 919925659 932359798 238102401 958174352 725032697 753771154 4492483 197829794 588055665 705579424 999624082 999961398 858343214 988282885 278321115 888398938 522039021 997519723 713779490 793720673 556011939 962479175 721532903 959547582 316149303 929595147 346916248 500821118 994583038 999358176 541625538 676465637 254016886 670388340 370141181 694269840 753417127 930167597 300894014 428622642 904514642 977847080 96249798 194863330 967293598 980334490 819672820 850592928 457354782 570298072 153154396 854632838 530807925 760292959 676320841 909498868 595476927 898637805 410823818 510114537 536182064 900188979 30555530 199018379 677246797 858258520 699255312 888546272 989591664 994462157 231838643 882923813 874660998 943132496 653516921 672157001 145080366 237329228 960114592 994643782 745970695 926236056 308783991 844140773 126712899 296332905 751073231 972577493 279100863 339534701 404004913 765776415 135368170 261331785 475813952 941995523 11361657 485038531 929751973 945923308 693970974 895400095 677380814 710202771 650939682 768979048 704393117 922262128 554530032 806343212 841751199 849436770 382074778 547721550 451162085 782002099 451671474 841553846 443409072 621411150 56450006 570575899 2246878 881237826 22368031 362768214 763462536 862357982 883521428 930659909 497856874 597728285 550328691 661467537 134414180 627514341 358618424 751738031 20011614 954207066 252921973 765620666 536045170 929815588 583168886 759938900 648709089 901610556 649086276 910966570 675534897 739710516 649147423 920093972 676324725 705771659 319702643 518179174 627767837 809456861 839459605 886244534 82496580 760719321 301154458 523798527 155115954 682189396 511461763 739097693 498972284 651871316 3818628 600919237 649907577 757274839 285299454 580333769 917553834 961387177 869177623 906394271 544299933 799598653 255821768 733926251 180132393 820569014 747223700 857651207 290386954 478330053 99772052 527603531 91179981 279905432 33099934 447778889 821541442 929854146 524052892 547926144 142511431 329917096 324015765 661028154 522743250 917402976 861805502 947522635 661831693 802278878 992695009 994515347 828010968 829619224 93182624 112689377 976117636 987990668 2174534 116607186 444624156 744858290 322507343 917151630 79565924 748822868 928603375 971554964 341654679 603320058 789780730 950393898 31843060 833793354 467467622 806039283 361606779 783371796 281636011 319299990 739491146 801673870 892978783 896712721 303962364 974740315 837613840 846607274 412338396 477663043 434320443 903882537 503873034 716205415 891140176 996073926 929502596 933511538 378744202 959418201 683482292 750983095 181416790 748660131 798559358 919271367 584518172 687282468 591625501 602889104 315207575 927851394 985616673 993291020 540210725 639171956 50410557 430097108 674682437 795831933 941324528 992497426 903788622 974516485 777557339 890621659 937176451 991365344 45676004 317594281 138537852 626298342 418519843 589786480 967522979 972247428 156234185 967456574 419168987 742947276 648321725 660765507 903469335 947459303 691587867 871220305 141974846 684479356 529026347 573326430 396453438 512000926 328115837 448659918 607475272 840043600 580176327 639630222 155732286 789481503 18182143 586707767 279388959 328709961 655411596 816227066 825173850 864855909 765430897 772650315 196135532 857055317 757970618 933864902 872132436 933345010 674258824 732812152 113646203 947937622 725604905 838759410 374282837 616192826 980354968 990269632 81574930 747122802 388069476 600344722 253813047 439854556 989729476 995995658 430590354 499484926 559488657 625359927 326696058 405379682 883615991 922472041 926670394 957806875 601756034 844808469 893030284 957471998 54951090 532247733 935102869 993529285 593888324 596371502 351863023 694126626 127785222 528455320 58967792 623276240 546138945 631690275 408643555 572294859 707236949 852856538 814905879 845937951 263014447 569230104 634075949 729509498 760177168 946833619 212315991 339726215 127349919 389544261 602735701 803771836 605626539 677487347 223158137 233667260 972516675 975754661 611412142 907952515 475763866 490081310 679334242 707254525 242623763 840123677 277165254 913839095 230039781 732882203 934064898 963953953 36329003 713472709 930949502 962452378 10581053 236334008 748126668 848560943 258909326 629748017 394572996 753519852 647249356 917673165 261779817 539897641 311741054 716695955 99888994 998108654 854240700 893796572 557916659 729458063 246190856 412331803 569022954 917540929 69272376 376222709 241632332 388888477 197150193 776621310 923768457 954904729 116797542 902314735 723029312 773502025 284183779 560037581 226546175 459731581 326859516 729495260 796993507 957330512 149564035 317854879 237974553 570704070 528523330 711254346 222657889 457413340 493664065 607648324 800440276 851664678 718364528 891392298 166834768 802735034 872283134 900044797 763274903 981613209 249244339 656882524 199453571 506617785 240208210 553258217 518530862 520497851 856161844 900054277 699234973 720753658 560842751 943300543 914154043 923179771 875052724 940214853 730139244 893443345 636497695 932896795 673350876 981197080 126843981 289613397 221401932 716109535 24785169 902282053 760064636 968083692 355590775 744469603 900322416 992463609 345158118 570560604 444387766 896684779 6901859 224897257 60640296 707105057 705920921 910810078 558079397 560383804 444713433 519160424 972534072 993439308 447207239 772632262 60211063 637559554 818882457 883312723 722630924 922637798 373069329 790842807 636245734 657474707 848218323 983629282 570888764 828155092 178996370 212486027 571505638 729051892 197243315 943312493 471164616 887075098 161230974 373587642 639908778 736011236 546159183 827764579 256764086 738568970 908564986 960305991 406375802 919358932 410540434 539245005 827506878 859842894 563228774 806601602 343863701 730258405 99031931 123555721 632409099 710859757 321745640 770307317 300533637 319343213 779838736 879266422 418820342 725584339 393256749 409251119 848857326 977974064 334810627 682856997 530530237 716093285 588853914 785516196 968800727 983857551 581774999 828054968 475313930 873361343 978025315 986086435 231996581 528247475 65747990 671935985 926775679 976815982 229992662 932884870 563611781 573616090 132774671 555429236 662846751 834985711 744874234 788320548 350626035 985531553 299114516 772001757 534802751 842855155 725462424 798698682 344927130 952328060 152605817 172895474 386185136 654634219 846885975 957561525 922756284 943302460 46899866 427204725 881648577 971168648 122718123 506676672 642613890 755631480 336486119 572928159 683995590 970129136 115105703 916830940 507188013 858483539 322315454 979865581 618764547 642416267 322118911 679303466 597368550 599836575 444456856 646924420 590590030 979133301 631546922 703088125 360338026 827319309 37232985 625799219 32331089 135141858 364825576 450537837 21051947 194745198 284375364 390355826 657751633 711831156 420375406 675942832 607137910 914529971 166253873 273072112 476062660 784827775 326802540 910010770 461787099 855411538 507469198 748397773 742938254 917891395 285658237 607206117 765772190 982773391 947295902 991507076 814328868 879376432 924135469 979808685 645716811 852120267 618104408 844160850 627476587 668938789 683530996 741224307 694727913 876645531 630649632 875286642 996683665 998296707 421395284 468260819 894829515 929529343 436499766 591647311 832482199 845572798 48274955 292766708 621824470 849028730 715645885 746202447 18038846 215537406 66250627 930631212 393556569 689022324 772967371 906404703 924262146 992884294 169219088 519538965 668219655 854776900 807358340 997056121 68432845 683869994 525478418 612505137 978770361 981183899 178605513 555431631 140715086 424344535 252915783 274167785 530162498 537183046 244072478 495144080 103721949 554078757 939899857 974095965 296270506 985745860 737566535 911987212 786386591 895548533 522790090 770813533 469568919 495971720 79905006 896345330 323385924 949133474 891256561 984605839 301250701 734581288 185506624 533466607 565951078 897910868 560460329 562319575 812034810 958045293 788645494 842555686 842933365 849702919 189526764 961212801 972525219 997193937 528564973 532193037 636061823 856474764 880553457 976195950 609452572 640932627 567419393 809617336 142120367 927355112 373548717 811739111 959673011 998887450 142551149 868239892 794413699 969701344 464220485 488315219 769079631 875749947 719501181 750644902 694958352 742436877 333238038 740268829 357601172 363925595 329465576 741443197 803815312 926257664 561103841 840301513 812599830 974482242 322077078 961439335 711495973 720247668 847217196 959425857 800348456 938599986 213909565 291944930 297920082 945325782 483677133 581589749 570539790 694301773 601546033 637233082 801782629 837116906 81073021 546034692 106677357 468599620 516747745 542813564 872398616 910715331 224855276 557609100 958407710 988058549 102288190 445461662 731893158 904529957 949471926 953039725 467165273 838118014 404854466 520368470 221750620 596243219 569432387 795761934 168816116 912589413 877803512 891967628 204160838 638027832 738795179 911814226 399832508 706351404 166631007 413828958 139125324 139710262 943022928 996527261 772490578 917954568 829126345 866070960 100574622 809905607 889145471 964606030 340223523 632168792 454369279 515100821 782952933 975061278 553891495 585906762 680078872 720382474 745731883 833067552 186355900 654820713 666290828 681671816 640995361 762029520 874226148 915923334 999078811 999567666 178469512 349087209 13230011 108278387 985656531 986041269 694381034 992770344 329077406 674047337 671028139 905640480 810715868 941124593 46985093 182401633 307825252 441447248 857078482 952443467 247040719 996852190 118922038 198220163 758737953 822969713 169308894 804457651 907019236 956173020 377539332 808857969 818735597 941254160 903313114 944666230 966580747 993615273 56047209 893406635 489766264 818988303 788681638 990196598 169288068 754592540 120106089 207979418 652468571 903216376 540284791 663341166 400044714 958552776 183527138 517496299 718868760 983446750 924042499 967731977 780487488 878341751 920263294 945264001 212238699 687755796 941779494 974626489 380705731 385856588 691803546 929859454 511325597 772363138 769145055 937595786 128181532 677459466 994827768 999621168 999538474 999640787 892736745 919031344 268545068 355621360 105337642 357372538 902440626 988231064 142199658 529576488 382038452 607478822 371926761 688836108 930897932 932038173 243991207 648707950 293473118 984914061 397075052 961516078 109212992 227574664 513509175 911366352 147325955 727932019 178795343 422475866 761797492 881310738 858074966 873676888 766517274 923310510 912856485 966775378 237415685 319075534 40834216 77809170 766883973 792915104 995144550 996908408 8961209 15137034 19042836 405113955 963659381 994661259 684762230 801687449 719046396 800054378 175448404 392311953 368791909 523382915 319308778 339939578 790870817 995237883 940709435 996333507 574780960 878701271 330990952 618729112 11902167 305625474 826913707 985924052 33780886 644552704 452144160 498324747 108073310 204705699 460037770 977601412 580542428 877121260 188779826 267369194 634536459 914620820 398613596 812833149 112379354 905080966 923014847 962157378 289224259 989464553 193534692 445762156 200407057 851415894 985702466 998708321 581898322 923618372 667001624 721080206 784229015 968784000 7875683 566163852 46773310 372741123 323208957 930005330 563048396 644765832 166653014 534082523 760616868 979274895 867343584 882368642 884626996 942008407 184703816 418020270 627506401 808051517 201974168 558325471 668341638 947263763 126224776 215057624 906995040 970827244 723561538 743240928 953155945 955814045 47730763 506190046 729399067 911681145 262838608 287359701 537294362 901307147 679835209 919877550 934005271 938432230 27922795 180310752 66689887 211497301 321930077 418845911 828783120 846459540 762552469 967383609 987704361 993482509 817751964 978566377 821612651 898066114 717306196 788067693 660138162 812461180 921973525 963222729 276486147 578611274 620205530 810219828 733894598 928443738 926238928 964355692 519675094 926174993 344653665 808790866 151325546 701065436 597843239 971148927 150295662 541813492 708564112 865290363 295782609 793610378 241855338 646269065 93048166 124391548 320088597 360535395 630037748 787374101 640025353 787230944 634421161 646474997 992842930 998031692 535598766 732104539 478812495 884008936 706787639 776982460 988091267 999183423 218669950 792171440 30856580 54627978 911122851 996600646 665134134 799471909 305138097 839414453 606762750 934626463 276286595 720314558 848062368 913312027 816629521 964893794 124750889 182334434 988528768 994039683 13609508 31016825 952851039 984821510 281509703 382303679 827404911 954616606 610130562 959683071 945418228 985130346 936148134 943399626 227671401 925135437 659372207 681281019 304314011 845516345 605557328 760457439 92676518 762252345 276318038 952737106 655846982 904871319 803726500 815990894 86846916 225379088 195412871 423221452 843958024 908129229 303906996 854516592 371140030 585036135 65574663 121993728 891015552 986221881 721570883 804543289 398432551 759633926 356541146 708179183 972030896 982064100 449462861 942066733 686671722 908216612 926266048 949297608 887224047 942320893 45764438 760262469 592281152 946249279 633268932 754098348 297948096 915303894 382165394 626024837 74004578 454267376 522949776 940276936 232108212 845810128 45219754 811812152 532050194 564648894 389947828 928230776 833393386 834820672 503082645 907736593 146398953 260543995 680993452 936614619 692348344 808285960 389321266 595664663 71725882 252992998 974296794 984414971 638988871 967708761 665890215 675489298 831925246 986981705 696167816 923136992 574799708 835084638 58421819 237552067 238974197 834236433 364373275 534699460 465712701 500247307 664261286 897471201 212966896 649967130 540023885 755177218 632291751 722836300 362838884 517718741 176580441 285576301 282033407 664301703 793687263 803028039 642506393 758405408 340930779 663856593 257891732 501824165 754952344 845508538 455111694 929212549 954094409 996870979 716507138 822748798 287794059 661382410 38915857 611868583 648411590 889469719 558201444 592022059 627594618 841815387 109892811 558979365 539396546 550225338 759054869 911478121 416625036 946169552 155171311 328734815 159268981 787417111 147445661 689784948 940174464 953426016 147747823 637715289 288303885 306154683 24762134 721102357 642233603 877376212 997549793 999240438 930030594 977023154 668479602 903833079 577609886 596042309 230532059 786825996 732596837 928009314 419508546 880333899 882884629 941748141 522001772 613913932 29756781 162415827 804832403 899195482 616100551 783709703 505490368 644301095 271032804 911973922 709848660 978730567 378080312 727498694 255767553 860445810 658987676 682240838 913382201 960970520 15548129 730229087 15836223 916978929 684821438 881573424 626817334 927364375 672889411 941717789 326915943 664786570 35326386 852535563 849978841 856162200 555294940 678082167 990267545 994326741 591821159 956814999 508763060 629647923 798511048 972274338 280864574 701805007 508132786 971193474 477964176 814636643 85620899 592767164 242304774 354168287 688806006 929978664 584010517 681205148 238060993 248253336 987265612 993872607 896588478 974571144 901120618 996910338 563087658 678728073 743815769 869885925 32681289 735412062 665482076 698698824 880376070 993530836 625772689 721105274 993430410 994504596 14935799 319589664 432912585 744214967 377609519 699523322 480302612 723779171 991851240 999360010 242734857 424721316 421583916 991362003 658744393 899857537 51373104 79391470 873579836 925506638 888204506 917037353 841507900 874117702 144780843 773581175 318417670 842616595 803226679 871835323 278388681 522300708 263532276 472566675 177562098 546616391 67135484 313226759 783281887 922705635 965486648 978546517 523668515 553036222 545508763 846567106 765876200 874586539 737872517 831607998 535614397 887219334 493310796 908442228 248100813 442059276 527451513 825396714 86041459 600309341 162516338 436108397 264166393 701453241 262879871 773612945 891709023 939778724 554655928 766144577 592311305 893321364 56392129 788261496 87003861 655730874 852340461 952944828 868880958 954771965 572417068 779439740 1298722 430348930 979760100 992731657 308295557 892658994 187164702 524308122 239353155 947837924 317766605 828170396 215120477 780293862 469050957 831759312 737160455 762666105 480442083 992376020 275456102 750534090 762547984 846186775 454686425 806312574 667185489 888216149 484103163 727103996 49669230 712040329 733001391 784831944 509861591 799231498 578951388 608933172 593063909 901338192 699792066 942777705 260164235 985199311 824572782 955483801 303728575 598529882 937744723 984586782 879871409 965161740 49845028 78867736 197475538 488495340 832003749 979553699 633102117 657636975 949591164 994348922 460944382 485353705 896810746 999261490 648065238 963983193 691786238 858329428 889465323 911277919 570104365 800216053 933380910 995400374 400396356 942484003 409003376 805908512 479413076 934435555 508306780 987359239 950003512 968870476 738138027 931338498 947450626 967838590 530661399 631518239 825546477 869780368 4646298 250425834 577093171 638520627 17380911 773296203 500017172 709073595 406885665 519185674 111784137 335931988 703279254 718414770 457454234 539275749 610956514 611391426 817950912 990238974 895889158 981289802 267784478 946762848 782762831 903137816 205099225 870131035 555560078 725035046 153174041 768966470 716930232 778038853 655908093 725628874 690353693 968605168 131083879 513870675 816267291 871739208 508073215 801557447 858905906 897311598 897537662 924199696 995390573 998975071 289127097 350100571 315049782 910856932 308872018 777564077 181839902 938884973 234399150 982152569 332207591 453572875 104720120 594520878 831838391 978158853 91810959 627928007 145306203 190211039 608036836 684996728 429760964 474584908 945809333 980646408 191837875 427114099 6742721 655395460 404991757 736112767 522877465 952842187 500102238 613914669 922897293 978080284 793526114 804833847 928667151 966385554 172817347 252511152 72895378 764496381 573296196 849943137 860689036 968387391 791564 537186765 151194629 466438870 599511456 908305414 381743847 955484909 391848955 710767560 126836352 440684433 50985319 346317488 851374278 965005089 582331289 646283601 255375684 449029322 478146385 815709124 943193951 993443937 860685980 931360224 797961817 929181790 73546257 203501998 748042601 811968978 104718801 491596967 83852606 581364159 590364530 879505521 583366440 973033780 66099303 192809828 203828830 977303040 488627693 769536108 930348515 961991524 973488050 978837430 682321430 901199876 278009039 419584106 971343469 989073926 962693944 986648962 969781192 976234057 47265079 562381335 509465475 598500313 218028679 827838878 842986066 936780347 685462427 725959699 370972644 798461947 942374302 975986549 790905015 927239413 13354726 611837955 170493917 763304887 143770231 347476477 273352700 367178277 255838946 581952204 599234369 716020639 269938992 305516105 886588829 997887622 752209069 794776088 399167616 509443399 964930054 993985707 506185436 724200925 282658295 577356456 192525426 943615937 929186459 938734541 738986882 947520618 907131924 919460996 336977726 591401815 441726198 748557022 385493741 670196107 17255718 985284873 202412149 763069977 157621338 868848292 942601593 951263321 91277246 342403099 49733142 883402384 288188752 466822511 321920280 949302929 393160684 563085704 432296496 768532216 419482121 899283633 664377280 877139187 47977789 927239773 293522398 650728952 381540807 837369761 32929630 481877811 787208582 848519433 630108988 845188882 734159631 829120862 317722269 963516614 802462738 991447315 828837053 880777473 827656290 921369111 355542817 607764823 83315220 742528281 817304300 950224638 444356564 646504959 759036814 990748538 104437831 472422501 351424452 960102618 944226313 956448345 368978605 534389767 84196968 885525335 626543177 672389735 992102478 992959861 867585454 967557622 116179777 523727582 571363624 957625147 154737490 968006311 553461404 991262104 925734365 934294923 366965350 815173453 745326540 828772961 36180878 572730062 84940597 200574471 220793043 243896312 730744805 984358491 879036553 931033277 721677044 792573052 217903001 951830853 952757808 995006819 680599230 856805561 942350263 945864297 154149799 423515678 20498086 826165378 215774063 932676410 683413022 826550054 881683556 947092284 48644495 379021173 911726534 925252051 648049686 953010826 446149676 643786523 618730627 757843767 676718987 994306282 143660797 201541824 241762948 555840162 509945464 632784976 720056195 811761159 309137160 783730452 661477891 740030850 706135911 723277484 119445714 785671345 94062995 618710263 315807016 983560815 701455049 720499088 555845694 676787262 871194890 945114468 809206205 981984032 668998896 989473516 484704409 647492465 160059652 918609659 420915878 985737396 346572293 953387495 541199010 943143588 103714488 295181366 941883344 950989371 981762138 986369786 709094475 831922703 538186283 929494036 52003815 538286168 136050566 937263214 271354287 807623890 579126359 632770696 602586340 989160340 445014721 894464452 863081734 990474411 735934454 893498182 415842021 539336694 652935389 921347321 452007266 715629752 53153359 661619589 268188165 810096455 933263315 992912151 121816894 684310260 520562206 915891109 150301109 875780890 489997569 618917485 795781946 813965764 852428999 862370120 530072852 534485725 828065324 919542766 528027503 597891057 884971082 955116879 689672583 728725842 118977523 846517943 42469845 563557400 572087049 901915652 590690959 766813466 304421395 608867094 983216881 992189401 795656829 886267692 990225947 999079615 815761761 994209221 671786839 755413561 468301727 680847431 531484450 798828460 396624431 507689545 874608211 994738203 910819346 960789054 631382607 866829391 587497738 782082858 3086826 631838758 150553195 170373049 751215437 920143672 245681927 425363310 860833316 868333752 386062379 797318733 624509742 673832138 632363173 721929144 597042788 904546836 940068634 983980902 237761397 512463127 806989425 980233972 819647043 958033489 142136997 288774942 331201335 740377617 542657319 969187753 394831844 713759878 324365153 663517268 205747610 578851998 238573198 627243479 594946218 614189417 842549803 932045923 296643961 530007557 38889133 924493582 205289380 370981655 808992730 862456165 775941889 885494029 356259528 800547063 23282805 417395963 937278787 986593866 330514282 421919778 940872036 983900190 16917079 572379040 164096743 362851710 503292860 915130659 915120884 968402175 204978228 271928977 89373845 677755747 57795593 468169408 188615159 634322087 325473130 731683644 187633591 507103954 386663429 808784601 849051258 864859881 487198972 954515877 599436148 626831826 885975240 897320323 420723357 772454254 536364971 678108993 860147224 972182563 832954164 981452959 802394346 929489073 722279112 870055924 376645343 652130162 444988168 803791051 690562033 873481105 254149318 509383068 867677498 953256046 136199313 279185212 136435145 852553416 544219476 974284148 204213006 995171510 656409733 926449812 106784732 670362124 13641041 553724972 254845541 956005642 936738983 943243596 666130536 759490606 103110635 534296941 407006346 774244113 731131485 998212759 149561882 733886859 669720209 945688029 90046976 316390248 879465858 992309233 805933011 974306977 768015957 968346975 349126812 873990150 358951094 709871643 898593276 965662380 757977199 865341624 75554924 945613857 596647833 899125361 159418145 252294382 198306010 678935041 9640557 167122117 951487134 998733435 458316861 865422747 621805872 709843332 134512502 910302734 127191399 521830066 232468621 476000149 642638780 973582676 912503727 914260992 983381499 997082422 224458460 464838371 254402073 963462824 170826449 738829629 473669416 716484699 292134359 914859403 803601238 833831938 49402390 507179582 749402027 909532209 653083150 769590172 606006874 956378172 818935633 983127697 154102865 298626049 465631486 671636557 935771183 956955447 751315943 911301941 149826160 226785793 506566442 863174060 130186239 735150576 824274104 867652585 794771863 930767410 284336147 751322543 634545643 695183291 88823656 262496975 616153937 695363213 979574559 992195106 316939776 547818994 34954559 426654681 528733476 585452754 535784590 877707327 1014917 730511974 988882232 990067060 527034400 945317445 128067406 128414866 606432984 636930986 1738244 801119728 715431181 964873705 148292670 623299755 332783495 734452621 960446875 991917420 538432261 706968385 542152352 768543972 840392707 971756092 335402735 616911493 257494592 932646583 332240523 384316100 689684865 921313861 610453368 863677402 977222486 990123717 265563940 682700240 772349418 886629328 402683968 572701765 614689147 759681094 18431947 50127202 617934600 874285860 572705462 897026840 547465828 629893224 663809334 784198953 893726589 995483696 512592392 686603217 148673785 898519900 21071312 750784785 586989202 938841766 832239137 858175624 720706046 838604353 793380563 894515734 621574691 743668073 730463582 902496784 350767519 369306429 588334814 635531565 1026504 955124689 210182102 912690551 435990055 567494116 191526096 396586934 630933772 910167582 847955432 875203619 304393452 317245523 641029663 855144765 613587296 944283283 633781491 823165084 351614620 413041116 650049340 805178448 986742583 988592911 808041611 924350987 918665776 970610873 346016864 967554061 953518490 967069238 242153541 753071549 629815215 740772025 568265742 686234154 882399066 911178491 288221281 944964423 748735722 904904502 231119522 490744495 385503704 658254040 204925719 987809033 807306811 901959598 282135252 489379637 13069063 956489274 283394953 606623335 455773423 916636805 920930421 952153848 621655190 841261015 76882373 453531145 343239620 602668201 348020871 380163206 788275553 950672926 290440061 911921902 507307654 768265212 44309450 617053285 138464095 570537813 852800010 980967431 753551309 867652746 389807421 588168780 214840600 608094749 37570461 758005723 14788083 403749205 629186207 951962544 830934360 895644189 99038503 571073593 165891279 225978249 724649786 822951089 378099857 639555162 260723536 445068829 366261113 985364006 702596394 850942995 712424243 955353112 390019042 424300226 353175087 880417416 102557442 778079391 907287823 989908903 374825425 827439403 989355739 994671987 790652328 864938215 560699308 993021559 274040653 504912712 380690841 696485684 135629684 471318145 290061381 882534286 369519612 739960700 121389028 519583721 638726775 692352192 327197490 929684402 739408579 906787216 280576345 395184652 988189625 989299354 532856234 866149034 210401138 297218656 407640637 729071763 468772461 558520208 874916193 914602310 288163014 374891761 15999199 472734273 964080471 971155054 372379224 761692730 97526044 158577615 101633454 643660098 412655026 638094993 594863484 670815762 232604481 542378396 385347551 773960838 411323696 488921646 191094952 394216039 74700878 920299667 344274541 536075027 970426361 992377391 680147322 750303643 63219745 375838248 343225743 631733664 358305883 374738706 520817150 787202966 349135646 428897249 280404173 409291380 636950519 935450109 382701417 636668660 89595840 224515351 749862779 847657223 606439719 882683862 264211337 533994571 37395306 322991563 926768765 961423945 366831825 630213471 924591892 984621972 434119353 753779161 398839372 629293906 164298590 803140387 218953234 656146225 924662416 951995492 387130554 495124691 316341467 494852493 628747337 785641565 325329417 633513654 427966237 978783220 272939035 319122996 626716870 842457756 791564747 822553743 197108468 942787475 696708626 805047536 182037307 529403191 240532749 776370017 638331809 834192036 526413301 866224968 963608085 989328242 887288041 967885373 53866939 563543489 16506211 397083548 117263689 342260056 458915571 920142973 17492268 33290957 326183150 592887829 196724875 984544371 713325519 799963531 388006245 710529464 313103430 502684908 935038691 939366329 671181128 700413718 496804746 507035894 565086440 891353265 466168016 761645266 418304381 527210121 242411120 911769060 797415490 965327962 263044478 847999745 85971459 362186547 259225050 976553448 134000034 242955261 78001845 346279884 5926612 221741740 298362738 609220190 270941601 331704533 812256080 980183795 155211231 917861935 545720926 641088364 681461677 906407790 203023825 645437676 658382677 729184870 242769245 746973534 352242958 938626679 821852760 866050363 31363836 471223903 534190129 759285855 410686736 567546302 796627807 993818739 721264457 826049724 118791437 928501305 264099562 868233367 322130874 964565312 164178970 203332970 853717260 953291398 985271816 990172617 350894087 356588406 444650691 759938306 306589612 918611938 813021949 995363878 829123352 944495227 631424366 834360420 263686725 302154551 705887336 806497073 11564278 202336455 212187376 943930198 960524837 968498881 854886861 862928222 679708134 795532897 854170550 884809644 333331767 897423309 336421825 925336842 512798150 575353512 913088392 917105837 448866095 678515243 331231069 564789183 777983920 783802883 578326067 640743893 700622449 988726978 722267215 753474251 780364798 884796594 549722918 938756250 482716349 775089273 573344825 942052319 469017656 655805679 970657808 996996805 928003078 970188033 345387606 942394521 889722734 982652348 976974767 981285700 962507 770365222 423376478 455004616 677081724 793379335 42500683 686237651 257075558 726743948 615225938 981604771 27881720 595207321 991401588 998894661 809830564 855051787 605270447 853600164 376445767 694203105 4307558 352262974 999975982 999981767 980679626 991027143 991170804 999060418 745528315 962010857 678247965 783868234 60379285 727051348 67069070 959240698 431014988 524199497 433685160 953544434 638564991 801438003 170202888 862085073 556488877 809695431 632146971 963433329 591727757 896879918 357703400 780148664 451492189 532998072 397568935 763086799 234806180 935409495 744290299 901446021 637677628 736446649 425487446 813732296 312989319 988160736 536002629 640679918 558922283 915171359 351748620 774034597 969256910 976651567 838784467 900217052 899897477 907696073 642446788 994062079 324472060 699724361 590992908 708651291 60250808 424770133 859160150 871382239 469426315 902708927 231084765 524017355 926430828 982448693 594139537 631929248 263318335 773543964 460626631 950347554 49152117 234234189 267522409 835722981 156240076 158582432 858314627 879076904 836605270 850413252 812635509 967775310 692454576 871878212 30408035 876472866 701623669 703271027 543735702 808731536 85607357 431456284 136296149 353853874 436397249 657791975 5314573 196888397 840864087 875359301 209192345 698978967 769650110 996220517 574121573 825988526 507822291 509588089 133059833 215007850 72505240 874091073 267876442 379220095 184129006 353926612 974003533 983019126 764017773 823721407 352572294 970561464 685805853 763997393 470369396 923071718 968411135 988272387 464878419 578467685 648931771 958124794 961109099 998245226 54274881 483341896 424399634 795463466 8242491 689969822 662681802 732529422 84319564 263180782 845803504 914384253 453891622 941939227 625012091 640024267 834219670 913767045 447755630 681231549 585955377 962780658 66669635 684476088 58391300 227817607 75177512 949335260 235761760 960989042 335509715 824969679 731938308 860431407 404714448 524222965 270621721 584504047 467755897 670324457 193763368 761905053 523654129 716886990 419313848 871174136 878246998 951141745 464890607 796612929 819890252 906415750 283230799 969746234 591141742 980786273 767408539 866644803 924991358 943212894 118997645 263643865 823508271 886269631 233958209 488960626 171962219 309546388 580679308 890093009 233823439 317801494 480335004 810559963 671692185 970863372 304169983 724937932 89732470 195439729 650620876 857673911 607862102 960373008 975178136 980479574 166568514 639190895 698553073 928614240 706286552 813676819 774356612 840014278 798231926 832813911 810862101 840840655 182468842 969921812 47501780 558191482 105777588 936595643 680849599 942991116 592108960 654943271 905156610 917170825 208455117 490744353 788316760 807759646 629426221 875096635 342849322 946449989 652344752 740807383 163904608 821962566 442218474 481165432 799281464 800542656 400587949 716214797 846444732 866583016 171864941 717944855 652680549 931070428 905241547 991777449 202043531 505366561 824578473 841765250 422902551 840544344 34524266 573798054 911257928 936167626 41711863 247139635 874431333 991510938 771493642 782238355 900898487 905797162 58758725 348922925 579720341 915482448 239855619 247632143 252025023 716341277 48644278 300482657 359813509 813514750 131194379 973681301 591060224 728671817 54113150 286095021 518226115 732471944 592046894 693402180 834075216 975430928 436035583 703547854 346358488 487263182 168446038 746606483 302843012 796279701 348877101 810602873 661396531 881782663 94992978 104493068 191462520 439498756 195141128 924705198 556381907 755871345 47966720 867983904 810020700 960325118 659095845 814908044 408901620 698378876 698558303 782384658 246708380 612321031 640768929 957735904 981034994 988321066 659710221 875925167 343985663 675319876 475232625 626638253 98170727 687722164 55523177 307435091 895794793 977941249 801712758 932125216 132387593 456117691 629959255 639472588 536794583 636021629 610270656 622053847 741460606 971692628 521757190 779895693 302135363 425864695 289262784 750200940 888110117 945842849 86273575 280787024 504811207 633412749 926080154 988917809 194402728 458764386 821440254 957820916 912224572 964405255 610383438 908987209 398746222 454320937 205656796 907882953 252868456 583929300 996518405 998276981 338465672 910865743 655381844 867960644 31760321 192053449 315415199 493601704 357860179 373423245 494076091 928648128 802581118 907611223 333299738 569962947 103446900 678365792 780615230 946966845 852847106 905229198 527247024 774173610 632888616 724436369 836228272 891738324 265307022 631108355 376624941 895445651 961833099 963619011 20489178 394573523 256616922 508229503 72759719 456707970 204177529 334805448 612283770 945305535 161404909 769819485 627443370 928294333 774487167 840075089 586907960 971827202 284514270 599153474 167851834 887864898 125185149 627292327 903269462 934098678 394383185 448323999 129131288 522941966 620506364 815191968 764961201 882163785 996159112 998005422 979423962 998383387 970544088 977604269 505400561 650823435 52742728 136566471 292297012 445386964 170056892 687925214 385760916 598797766 703050306 820481525 471046388 851755795 264434499 900178526 653921061 848094944 130007626 163603934 934402121 998095207 753250904 913042745 361902530 842943605 814411470 832000799 258564708 341509775 836355942 900924631 428435495 612931214 110139558 850743310 757079760 785822074 154591363 602399794 669769155 844122960 371454311 828084181 505686999 804851347 43488 403211966 715577712 722972559 746808385 935893801 464087591 536438693 781077986 966532138 225406998 278324864 241562278 560317552 925839740 950952815 648026125 768497998 447353386 898212529 264109988 364682725 230457916 989519656 640569057 642748096 866453372 910957577 414386058 599812410 389991915 973415147 807901411 973201413 963452586 983295307 924854749 981969146 758399980 784277512 391766346 535427239 526151364 811304229 338574243 469315182 515757082 649225861 390342064 984338847 601194573 938739604 149115059 270952271 435578431 878724911 472207774 644760993 589709556 881887710 606662476 986741815 437493299 864325083 682912958 904259659 262477961 342492043 601822849 748521917 792343414 973894791 395007316 802797463 736176518 968446747 822014354 907328495 758508147 838647642 280676106 640706773 496960627 814454375 637940672 942664921 199757570 547079262 868276448 970162019 326329503 974431828 206397617 312457388 118257562 443912146 118043859 315886651 207368588 401666151 599635314 888858184 498764364 694254595 52118942 873619937 241236399 281291816 555734320 736330060 500288985 640518814 831475649 953492085 678370169 735918095 316879292 798083510 78851884 481560591 988063578 994594401 525946077 802808027 731259576 939014534 673918281 978087066 607132898 861553628 591357673 854419803 866529212 989432855 313715792 980216116 963543420 976283953 529326357 915787703 546134330 829859585 711396011 987402692 888651318 921562534 295179017 762766054 889046397 930790353 60350856 225584293 312604744 801365385 914769955 964122284 581886253 870658101 250779211 782590313 274775586 482818789 64075798 892061986 883475389 912898959 318827927 677421711 803312658 922976804 552294602 770062021 303883823 622698590 189525753 870361025 452589803 745582404 353267272 638700952 648617611 729187579 200759430 961460547 903387654 996155962 340659306 547471702 974191219 984781327 229144890 310981364 619442219 632442997 788966485 906357269 800480010 983504144 934373267 943066130 917653345 934525697 26056853 467016231 161136982 834350817 373668840 820925973 958618218 965907624 504361814 759072290 817701544 875005230 824395441 913410351 168535578 725035347 299642632 654608224 50247242 544548666 536888451 811308310 894935958 942680225 615409792 814974423 747350535 852866773 200213236 232563318 555826927 683458238 659644909 806169983 499958592 785716786 516427328 901866948 154352134 862448399 895156083 981576701 10424026 919603144 854081864 950577557 30789405 250975770 736355063 908105732 323989977 663208413 838448288 865466072 408600210 492651826 886532608 967324499 45440179 302202093 791614498 943065551 763503595 863023341 519900766 806988382 146373919 480978068 104277207 596616644 842775799 863324986 286863959 368878848 823921914 858773264 504968367 759955833 681813572 765930355 82616661 952547748 349611330 959015458 598893794 847577551 479556311 899482627 347832437 635759220 201143631 907111997 734310629 794592485 560073696 620177546 395562461 647829834 593609875 908636186 431908079 802438578 582108149 625555606 119456730 172227005 749822086 945576571 748358421 775683689 990588766 992228106 767212618 845304122 270637465 694853814 648576496 842395022 856808992 875403258 393467947 744675215 863760726 992331149 659036331 886204216 393706506 614580393 283888115 666557047 403880301 786217692 368969876 773466054 718306779 840309765 504240482 937055000 596874670 975087613 162413233 568691502 547588236 829063824 143184563 327835417 260135922 427901609 342542691 533129098 284663580 692527367 535437915 819875155 39244285 497414859 304413038 574219843 31055569 480895849 223629049 637579000 536856771 817158387 667951510 910810898 373524105 522254810 651211973 907717287 797678829 987381302 663591469 783768538 997248268 999920385 880347687 899958905 665779412 957531447 272486835 975212039 71922829 96933428 925581850 947485504 275197841 346534544 139829746 870885621 251443234 707809390 566224962 696845530 317318044 786647000 848254225 969312563 801389685 840618118 890029062 921678417 541446856 739501691 565693683 621845090 169684556 765717155 211937212 387871479 670659730 805626655 606814253 794355975 189598150 619401722 183579004 743848131 79422426 982211214 10309953 406217509 819358996 872295626 593692 929396190 753057213 959311344 775051996 921334546 227182102 414457261 120617149 296504571 148721515 701401600 692588990 847637355 445266147 984306627 613844560 832857693 577313706 639874284 653556136 770696994 809678803 883651463 299793601 877456693 691267327 710852854 635158475 793705869 309481421 818669133 203079389 740975459 821493988 959080847 604691220 969423472 425102417 981342004 769661898 814424355 239398857 401123202 492274612 672535929 133555247 423847020 807195744 985862562 437033282 980484290 243891702 317487516 246485406 784742946 895730929 980611197 784037792 937502812 690644649 851124278 86691946 338619293 4053640 772387703 678711320 875857164 912269184 960316019 670807581 838122387 282280927 593272834 506251116 893477994 194975188 630676717 931548326 960049826 990181263 997471737 174620304 327851529 113036592 142177741 813984961 903608507 128176702 898863823 554909436 871234534 46616693 653635308 425136043 714935884 591170718 703091785 803294049 849293516 956043163 961760401 891940799 938754833 768678 438352012 785494401 917265902 289081358 410012811 715452560 906936475 121911829 450446526 352470455 800543017 326458420 441636913 980166479 999677804 601016640 909321783 984341801 998875951 810931904 943388736 537578969 773036236 329308235 920975787 427570164 970067973 644607695 851692174 104954362 240414089 356407253 782904650 948330359 969645031 953422266 955826148 654557110 656573944 478553819 715287129 26371828 320974369 207796832 241853387 629410680 933293187 419368470 702721230 495794666 924395829 719752906 918370653 820401813 894765929 128251206 317177904 820952378 968051579 286185998 809368073 231115421 551403866 835506713 991305277 385275883 855675662 43149373 130139490 65943985 346170439 93820131 373700494 181900818 344568050 830532350 938021360 422504675 702769219 393679293 784944643 343101057 476567068 591758798 971056923 800681310 986059661 643979953 948997545 76947586 190290226 5058960 940500163 398721164 925348713 528467278 844653746 416979324 698920413 100705610 854333268 486993691 618072665 996184291 999197932 236118190 811296194 545020222 814186791 393861606 425306570 885857000 998266373 332232403 665952564 440021920 833304572 316781065 763053167 983104438 988688308 849382079 893257937 914770941 924957485 702373297 784181791 65541509 658472805 564959706 590126747 868414653 911289710 188403958 387314453 137133621 168283310 303889133 668245475 454723449 844550861 203672417 676603448 42475332 810195754 693611918 906324764 484017930 663719831 29823028 862153402 444134297 871180440 870170472 883015848 218737325 689415306 370173221 963831092 878244168 911348834 734940414 737257089 478040797 523628739 171581835 912015935 32095337 760302241 807293727 969731557 23619001 834591142 681263518 868697031 955641072 993076434 335636285 789513009 921741478 938435328 955701597 977519840 99242192 231538248 302057742 788209525 276917079 534202026 156715608 340767667 26856959 449456731 786663915 908254999 896520836 945106892 86722971 285145535 527127822 856809990 148312229 578754561 195896102 368625794 242678415 508779101 469364885 836594695 885713686 976115324 397718933 711867999 69639514 325680005 746392966 839756291 918082682 927791414 778474414 826334251 646245325 860222984 690920760 752190510 757674432 982208565 820517709 967657519 281597341 964064763 650979644 837205071 371388906 853425229 540754172 935297354 994005642 999258819 468179485 746410733 284294163 949406701 308581356 890552322 389982767 442068683 629887081 636254788 565559542 971635427 910159025 967607047 216047552 580975844 758104402 913275469 890236144 921804695 362285627 960097688 503159921 982247082 759753917 962329251 726034054 887317971 148642015 389893892 268563772 331615497 479672737 573973733 587191986 666847272 80824889 904337450 891776245 937527404 97561704 822363224 259616517 617443707 946049342 955705556 905044976 958394796 400436274 780743952 146101932 174651848 759853332 843304009 33980503 696898095 927088736 975485695 327095472 926077671 170614956 789492499 77645596 432301567 861192548 900409756 129965175 474047554 745144095 754779035 673427017 690792130 221748280 964727473 645711896 717305056 79241996 960784640 77820296 253158572 594559993 806373522 604792605 651309010 255889380 910405665 319080468 595177793 170167591 893572606 772684484 798946992 531698495 697294571 180239752 764000595 862742586 873353088 720108986 794832865 665242633 777955375 309243185 843818077 691381672 839353960 654147167 991101401 496894042 774628559 796350316 971329165 599118888 790284677 233788930 833414133 668835999 735463543 601742616 801495955 717414069 743224445 991313375 993553720 213785360 959846754 859680376 896010357 683623210 731595424 762418196 850491391 766604081 943970192 53716593 273208773 168913582 667717409 649310210 966228039 25598298 649416871 402114643 703521219 870516649 989665185 431605945 589240135 165991046 365078132 922212180 930857581 503418098 711095245 984642640 993861332 125320656 959357521 843333781 969133255 837895296 951791575 578780822 988188859 806432912 866281270 577878501 734845102 653094281 706128759 603426670 967544423 317087371 540196064 597837938 828878029 792895302 886163640 703132609 827733781 898947808 983548071 771278617 804482568 658250200 941780095 626277566 659012181 654926363 866209691 372504950 701581575 772234955 804365949 839247774 942083122 378377630 996787700 925764782 976987973 577993188 651197597 691551844 933708834 845990133 960326160 407036585 577874677 412105876 813326610 952194720 983482491 281488071 322971360 902914038 997773148 105320630 203505931 744533629 807896719 790243988 861376767 333767918 798034897 156112954 208605332 702063151 907002279 961936535 966577664 727855244 941839712 837826858 879949208 44832321 125597895 535937054 645328833 776529812 972672796 293156298 673512207 265814831 483249772 441007629 771972343 522946845 634815140 845201493 933432450 719958574 721353893 990732355 999363209 538538103 805638610 25469909 871460477 156890250 508836300 613722402 781033002 339531735 742906733 528085570 621508205 697902489 991752896 111276623 483490061 41481850 176366663 112211017 257829577 666110903 962340909 988271811 994584043 533136035 738430485 923914449 944355812 693984473 698735668 432936125 529462271 483448760 615922025 348977309 780590839 349107151 412781329 561850689 640042167 611330770 825066893 471640825 798321981 837439421 847890984 299442696 659128055 765824584 791146859 476593971 571472497 43070797 666673014 754745917 946703704 396649030 961831114 772859130 841193300 31873276 786754775 247362719 522196115 344028880 920362156 874400524 889186406 26704150 899486000 69081886 872519360 420350568 652227474 12858685 631189567 794841190 914109002 228994359 524344758 666157047 751129787 304677971 741015264 5499951 471255551 424544009 758820262 468333132 979234516 86357978 109407676 156543056 385693489 828773833 895925140 230713587 822172569 740869926 770824170 562844176 687472217 43319842 183884735 409754313 432263888 80845164 684918980 40546161 521483948 149089408 633921818 897490480 913073608 421448171 568912302 860541203 903963182 763600960 971333690 761601283 873370171 183820028 690751184 372668017 502535343 169902770 600235143 163851184 333095768 939406811 997261356 697143712 814003164 104842513 321138894 626629880 790020938 394106400 564087390 830692577 837865580 844357670 961284498 472842919 778006693 31170397 663387536 380230387 764805233 502128205 884928301 497964583 754966702 393857225 557178750 253194608 800763665 792317638 895667351 625650486 821186441 960586632 989563542 489330908 843655881 39601128 365180314 668179606 672025445 563119676 653380812 166379024 852156744 920237754 925622922 623304575 937183305 796995950 836548875 759867612 879141301 170702952 632258535 732126479 901051256 140822144 555409386 4825233 428391263 397151673 442436988 657316037 776239577 945272926 998595705 138759935 610052649 104853434 687665042 895836377 945002115 7755563 179377837 564149731 963045998 178891303 623338736 422568844 683395520 69897556 982825840 825504073 975727988 368661690 568466671 378015013 526670688 875688079 886811870 594706266 812733096 445821076 939400501 553102030 986536262 458960817 503361170 678893998 974364853 265641155 791980054 305464021 991333661 908171045 996619192 684512136 923994229 91713470 849400818 14063997 172912103 800528596 860159123 144074038 465802356 841381472 842247992 134399877 690628367 324056032 410788864 277600604 949008809 70042683 717442880 28164050 576229212 99105618 800906437 55812739 68054807 185163976 707481527 958580452 959994301 802597320 827573706 586336359 679060088 222413139 800730294 541238335 783649556 462267059 553796256 729232123 921938336 877279721 881692683 155312772 849508601 33518713 303682496 177900256 339670915 453039398 751433987 358173761 720765276 708108929 723015753 606218742 775111471 813612299 874023994 686569673 748652582 654012902 698650256 393036907 927971583 716265252 786538846 653907907 977740635 947366065 948646421 710391794 802707573 845665642 906139263 224998790 377116353 245163285 415561285 533657354 867129041 629760863 800351141 225164629 725583793 827543901 983044305 689654658 947824958 177218650 437584366 193534444 882752700 277012067 298205532 136748578 383178376 784709278 927459767 972403602 980727002 60717064 119374508 604921812 667068498 662383699 844140299 650101523 728838728 157912432 535711966 747183059 777083019 926241551 931993874 401105483 669465608 754529396 840405939 261690474 378675447 35659280 907913589 373516116 959328906 342774066 979911168 152166067 959204425 560744047 689325484 700550497 977634902 513958517 690428429 174672507 379055788 166073045 663927932 843182569 963893088 577745499 862083270 396660085 986303109 896424403 922727883 707951343 899395004 571827075 616914341 279019731 644810367 623353775 729747956 531299712 875391012 434756176 849657874 972922254 983495614 725679047 765629061 101736190 585509448 455819464 801766929 302436056 920791120 312976261 369715373 955777947 986899920 647276874 886042130 95351 247837253 213036199 849877353 48331387 213078488 822281066 976853697 307000394 762442695 554570721 659216814 799978026 901466073 222090474 725725792 256555838 897347607 38705344 273792886 309107986 903666079 376157248 614976874 968344678 980216092 440198374 801654811 25234673 719102055 436349961 718217346 669200623 834120396 497468318 536535870 748009022 855392654 627659325 869017952 202245745 886450466 452231313 939414903 27680017 761097238 503504552 652100401 13375474 571695002 15995977 845371117 230819974 787337843 469009103 616049088 936373354 991186631 140698950 864766296 913138355 945591857 84427977 684483029 745914153 930062502 450037915 703598662 267673724 467412463 646218115 940028429 774992692 878657867 920526006 943925594 735727645 960210632 418502262 498878155 838517185 968384707 853063148 949598756 129950403 819541872 849414982 873058828 908226952 967366857 519338122 933679469 68700859 603653967 445717944 638385634 787258629 827259514 361051112 617474938 574185345 875716626 326235696 779773732 27168904 637929157 739043636 934028900 20498816 494790561 39606891 261521500 878302032 892334476 547163126 759829666 728451042 751204328 609484176 769084663 846287062 855087396 12276185 758227258 339533359 593720055 904522442 974958532 344639045 811119386 250985204 276350342 128974570 684373267 169334028 713229487 854989516 977036375 867310263 895877561 63400780 453934601 458539891 885875074 351353590 989099769 982727729 999700192 84248711 648858184 296990349 323041135 379753849 531743668 693452695 725279038 677637833 808214929 528215611 952286152 679688247 754038453 506210397 782547039 613505447 756957856 749064295 789126635 683362421 821225538 570956328 704138122 987138873 993121228 211359292 622802071 599813799 617615106 978916356 980082593 824515921 956736051 966382452 989667165 134511966 774455919 342916399 810746534 467832881 494450813 139230361 933959482 555097021 909785395 613117210 810027523 335583747 893558965 674365265 710121669 4196481 23150993 320853936 479082582 181519713 240292036 811543242 948498589 643319733 960812401 498771587 773533478 866896704 892114854 219695535 730641435 275622889 569999359 568171390 988267907 130597458 354158189 195225571 535024976 339098738 390681002 932083511 974463201 621264734 678978363 527770799 825815996 898115708 943590131 529748840 568362758 322531603 478708364 598918564 840724848 958618194 962010404 920717225 940757587 253763513 524112425 511973261 640472729 4576578 485155128 624474072 686084335 199851955 996894066 241335180 917493109 775054343 897069770 876580426 940355051 280385330 496371580 549872784 603920844 15015321 277003405 988163034 989896545 793225117 905320993 197740256 401540640 24048645 718909640 237546095 628872876 590508486 788785745 977053225 994496182 809985271 835891337 28046516 308820364 953971126 985407953 444226615 750054071 88651633 622691926 444585980 671122561 535931795 727217848 138581735 564986804 188244800 983824322 528168370 974387403 471482201 619455999 586441582 772412597 816539450 842223669 455454278 868423935 372380891 689444723 347835298 405953112 249208730 551170917 977828572 978534079 9407240 926151376 150455405 276205092 489966543 724824408 191024389 986763270 694635417 704220907 70275239 88866265 304426495 524221959 703482717 789794556 1476076 812774348 796306358 899956041 795142293 819313988 98107346 885910180 993909406 995837481 269845804 880469324 127755730 653975227 675889372 901286530 484828228 739433613 567691101 627920714 376214406 976401314 432712151 601545719 375740184 834546031 609029418 817321108 550819594 798170934 59173419 610859640 697101313 850185589 864473464 983653024 281087554 860858725 975349781 984957850 630048822 853153343 643010585 834941729 19695074 928599072 676667446 950710195 233257139 610761811 318850272 829483939 958474852 972859743 931160642 974837606 587563151 780765518 577198862 680266824 626755078 810965526 993138263 993252838 221731260 291739110 319711433 861726686 972862255 994380795 775268144 850331002 939980717 942470799 461570155 645099609 386134292 763738544 642958639 831338704 797925792 994862973 833780928 891474895 223772782 319773178 621579237 939727679 560709746 588426655 122338906 193291580 864348711 895637990 849778708 962972192 610371515 671152922 626022663 954239519 253537604 936239455 291889750 698404510 371739948 653060860 622672910 956946740 400263458 559692408 32032921 113023213 108206046 624521152 179130922 671626038 674379010 780168676 283272826 959177767 121991036 311557387 166261988 528559827 666028203 778223803 920226105 969984672 573707484 976405082 571833371 763618731 400663080 696614601 346629351 935711426 985292755 985617302 469007487 476780818 441849959 961210854 983188472 985415955 280240767 492082623 180437900 574886747 319427369 698316102 657130276 670216146 570035498 694661573 25825127 812039203 603604041 657068931 9778858 343560659 844389909 946350686 277482007 966930953 981005547 981528492 87729151 120642325 241337292 441383782 821533666 903409905 886884752 906302103 356023771 702549347 219039551 219937405 484314155 774248008 827369844 954005353 988689524 997807237 949733425 988418049 675251034 745673436 96066540 824370543 257168421 924923888 443395343 638953068 213595795 410666973 683680759 797846933 391067708 626721344 13573695 268314532 29452651 620467501 581219146 664430579 577808168 753824317 366196929 391900054 410021493 600622594 872931773 981925621 380438197 953098909 951386264 979244230 996940782 997336778 802665252 939769800 327920484 997310768 417058339 462891461 672139943 942517955 304629447 659204722 815955192 921371568 359803539 939668234 686521280 801291122 448364173 459444212 335103920 795870869 729954420 912867396 94266136 442662532 157160156 399568732 937128106 978939221 756654269 843134280 59373682 941775670 896529229 963456246 74652739 492098741 859543328 933454071 928898426 976131578 383502725 509677664 954587647 973817448 31691884 363305330 401781692 879851663 161022162 502782523 254780803 514400611 257763924 973295076 911921897 989677188 98875487 265139680 295695794 863934365 628536941 946450363 495792014 605701259 724631751 770591465 248351900 888753827 405528490 428630345 545315646 778367359 930829470 986758469 837297032 925484867 116064492 245859277 233273666 833494008 776972592 862990778 52363798 175435320 378753478 983770411 520054897 789960571 9265192 794590097 274475531 522185021 715865192 836682849 246659126 916746178 947610778 960425444 200011811 445420835 868151941 885254450 624427507 637397511 738529883 758223239 732697479 980588077 27191904 824081503 750375382 832049302 487353636 964739809 495181255 868399305 206470954 288077172 217871268 474347103 120803939 980734454 595818613 886903318 827534977 887382658 961709822 990928297 467647782 506347284 190723740 455118905 977352391 997905109 202894219 851964246 231702791 957337954 641108195 704739349 826679019 853861593 988981739 992628163 404562854 647251214 652633581 951784908 347958310 444876967 139454454 331859938 486913618 500031017 808552301 966871989 388333673 574788099 414795328 607750994 362649213 845039954 916403245 991373549 35561072 303995617 315612098 564405622 514792416 958080688 224303737 560367853 564718483 632796467 752297921 776186104 487788942 814103737 212708587 743460602 988851965 994872748 403747239 602370235 999544753 999781918 792588903 958455095 514129307 980539059 717168524 999328805 505219976 668986046 477986936 951091659 566094234 778852259 393393872 584816875 197553828 493470336 972558545 975526459 424265477 769968731 784242733 840224358 524619605 819818698 930537561 958419888 60804152 75412923 489608943 710740114 986068523 991500207 229784084 700730902 573759037 845531382 569131628 690793913 951144728 980879104 388418112 424839277 207905653 942958915 227855046 510092008 533227876 832127535 61616664 473729510 440418761 765239232 20122044 362282576 99513126 675540730 171566388 282569837 760023897 823639129 628617255 956101841 313843637 723765611 49697340 643140910 777406220 811016529 738815003 943717322 6487038 864413689 175634657 468062732 798526301 880168589 202972311 436408369 468017716 994682296 204507869 663929406 813951894 922435327 23284311 80331961 617312443 760387075 444873038 952543320 339145305 789727575 789144334 829933232 851129246 921638479 554156524 580380292 106230716 632765017 581071501 730867949 471766252 893794184 160947556 787985072 50139152 288588584 723501119 758837792 677147405 723937051 40688487 594180896 74669280 456529256 406524718 800626539 339452206 801041608 215060948 832674952 844370496 969523435 744564642 783479558 719635464 752037094 909940139 924478564 197575603 546695897 344873067 972134777 674265038 903956017 499626519 701307136 151173187 485996591 5220569 817737598 949952778 995720002 533883546 679013307 608417947 778995208 726970996 878936658 892772294 905090157 751552208 962040079 112492993 990420093 97257789 478484623 952025839 982998361 816426844 926006702 970689482 982515484 595294788 946308069 495179855 729427675 349661948 373160961 361770549 858107015 470757685 760882616 217197479 250776995 95107071 831461197 877148948 980493701 941235608 949279901 736359034 858397006 792140926 956810214 526460547 830495919 697947988 810324020 666257569 709035507 579821363 963660336 831016400 943469942 503455367 650454430 949792353 966522335 17566272 862266686 210444528 580458410 875256255 942962106 376274896 599135519 206090300 452114076 104530393 735996350 489434761 656586768 871711186 976232232 151626160 188576637 110266317 536037608 47176054 179744550 66989959 828185278 693611579 813263074 960769794 969631836 606938717 721512536 695967913 937576954 379213384 477176502 155093681 407542284 220462829 291119663 535744500 972648535 331921465 788460510 255575154 694492724 516609610 882852203 584807077 751591278 681139108 832797418 861850011 978188409 712936982 837228082 917804349 967090742 3248135 558174270 575127292 603626169 815720724 820724910 360261296 568998407 935744443 941767868 717368095 875289116 450188779 853785942 341496130 986486990 221884908 992014564 673137220 978702602 587041807 802542943 221246941 915633033 532723644 540905838 945365285 965114445 434535535 926614330 143899427 310328321 873046814 899696051 143248276 338095926 651314575 780273724 360508394 833426356 631058847 766178680 247907362 595169657 703675061 807493323 620011556 966679837 275454518 393565819 483152320 739321866 454288596 901169540 445337850 630217626 293624209 415815308 56630804 874478309 796839904 880585039 108815410 422439838 542519018 699453468 502424611 648836871 290452135 297947127 425102148 798463126 182923799 391102323 612667433 810045564 965355184 996550563 522045131 873197795 186052074 664519457 748976888 914326519 642744845 981196454 250881498 670071379 21929397 34931045 865974889 950214188 186375179 668395230 642332167 770631549 798049156 982889258 690978716 751374840 524354278 915458376 837847512 943920339 535743889 827063195 569230972 744026345 505126144 785883020 730338585 902168873 235808167 524064463 945169571 972431188 451495712 618710527 36327080 363638708 176191693 461804291 702030029 771676978 680148712 692765583 382407573 954796220 545646826 916227124 161622228 394828844 501714526 855309057 37227789 770339130 109708907 893380255 873397326 891333071 780300154 923223255 113041193 242806938 773024 486822543 23576269 617373502 140013223 404508350 6630395 955419024 486050433 807319796 780878565 928411727 670600546 979859480 655388371 674146824 655590251 685632219 69599774 512147805 225511596 265890986 991363619 993287252 434275757 535753571 172264592 841820366 412655154 438061449 628494383 885209648 511706457 924643938 195877779 879005709 293844929 871177862 889396227 967696381 660543813 688947981 681609982 779568950 276361671 488391765 643620696 648227213 977309703 986559318 7710530 563327305 720837681 855626656 533726824 933339472 352557437 674031027 641016252 846471460 840508092 932017077 998315085 998970983 246288768 691715169 78077271 391495570 602796704 796459856 950678983 956118296 857386476 984335648 297940937 488810328 559323788 836797157 214817173 699738568 564419729 955816252 865567068 948761034 185587159 354941119 203795575 648331441 840081268 896923895 200293931 479711998 56636051 675161312 866766432 898907161 640434292 797324755 507742229 627761048 420139924 709219646 354141096 601829003 629984065 888207704 568178496 848637275 253030664 405052975 146062668 158333735 176931081 454741867 777907965 785215280 803943510 889281041 225068394 694293479 619915700 803636514 8867258 344172877 753144153 852027855 884846349 925155936 125364162 757948297 788432250 882413061 106852812 593658792 591407943 755011949 618870532 879602089 363563010 609684105 817546311 994017172 538690526 847189188 676202889 762741000 401902410 820543689 386846217 566572329 678722309 979915774 310335391 472355789 565660599 912506532 434796325 786199568 50547750 431382798 135652971 807814827 84833802 376121588 850616018 898011867 706103072 857347280 176030722 499868161 372421840 983526886 199625808 352750177 406126417 891952204 879784929 925886529 415723984 776311619 700714738 740139005 319762856 958908203 857290783 965495573 434999877 713846024 346989594 946276576 224221210 355707415 962523228 969466589 389647024 477629296 643562147 806958194 807262245 864246542 599701883 902398958 37825281 836061674 927599120 999460489 156549441 966255411 364362491 469024010 980469905 996923899 619714648 790672291 51428726 307364328 459114713 947131346 474894 186373764 548721546 717705001 983516493 992416214 540664426 686146407 73992398 288907214 539197805 641099714 840381338 896287460 510944736 524409245 501019438 783351237 636990742 961645914 297055516 964258087 937050668 966403151 396473434 535057723 145520553 777309215 268781491 866753599 702972690 974944677 959300391 984911348 797322950 870567369 516300256 887971666 830522005 942423576 78466987 763592912 54486678 607075505 357431137 587678867 874925557 973982591 217217986 495162485 624382296 705873637 91129758 887670971 509774438 668433094 139587438 768421993 220827975 409049470 265938216 404601026 386859231 526797418 276486570 488692592 773026059 900825141 110686624 633475553 40231621 969244154 496772873 625144862 650395397 667148242 651728095 885286912 84792952 249264773 386086390 677027765 872742248 992150630 523565968 680302159 968056734 980516785 992839455 998708657 546342674 711688357 832903351 934289188 783153613 899800554 623216470 739989667 616871278 798984536 895180984 995896487 208986138 718879290 596439069 818294724 540787119 617487460 753300028 988043587 161148587 195532377 173070471 692783490 294091899 650911782 829720407 912373616 363646574 623606540 681126886 878200795 550111806 959849549 381285214 399325339 494457028 873118769 652304812 852062987 154797159 681327531 206298722 250278690 456061366 562438325 154448379 984570369 471073543 660370179 898628469 997487754 648483798 887702095 794461164 911857242 435302828 914376820 682901029 763095063 550659972 685363647 270683503 861205760 908179365 969581230 144073542 991478853 190902326 634539056 616229812 910747877 487753866 619265842 326645561 446717543 216520754 947521748 598186495 922286719 812319557 979983550 827985368 878745664 583462689 747631256 424487355 524711441 159356963 817428668 373930508 425503640 816453992 960954023 817630498 994389605 501081018 837765652 33262327 37014263 429197823 460945174 8122620 607677920 534196481 925259164 638354977 703825891 462302853 832091172 86750146 440154950 221260158 773703377 264429031 373521067 652298462 821021541 900080813 904057834 405822864 897654534 361478707 364047314 852388091 963268228 467781137 776095941 828656924 980754215 788449947 846835174 512103516 990335072 683210577 975337103 726759919 873234899 681973392 963153456 587353720 593220697 939534898 975750206 351709160 384106022 226473038 981463055 581989165 600753630 162668191 590703461 460466164 816960386 198786228 953502756 489494135 839014649 95859167 685152565 605281216 659574288 291656070 492337005 500138889 548973141 53622454 457172945 692784588 938835766 601809716 833839828 717251441 989102788 356258700 666084083 385262920 433811589 739992547 778850267 658842562 990536113 836129893 996994018 755345864 807521128 345409838 764688380 278445061 535282542 452569874 641710575 279674808 429770594 383699807 703294169 312274071 470733323 372598637 753646571 440926137 807776609 955923990 963756637 866946690 985129560 27766448 587596157 102157789 215610624 37579752 755624580 259725475 333263242 58518507 915812877 350504774 962621398 583065942 961087951 829947995 956573098 618327680 719690878 656434249 667343950 882197416 949692416 416285443 961106966 366652187 520654998 763344296 821570660 860249065 861069213 637268615 671515393 520680454 718353152 209556072 460319674 203030181 795214502 775708767 980111965 125487906 361934968 290867314 636334404 741642903 964061933 456488546 670275109 260068583 466848980 351111375 987825891 816892118 955686276 550075362 967001866 775304370 805701306 66285704 82318918 26477508 263910059 277120291 438819734 89762945 817702403 811065522 900479405 521144814 921975350 644097511 904972216 828088241 935867115 383849036 879951511 698733537 889463469 883877965 917147882 690613323 832094161 177446440 786523478 302169784 621513601 377485454 954898580 871832771 961095375 88958823 501331312 234354993 408579870 349740344 773791449 355012866 728590067 917638273 948842819 266984892 817674295 387932739 653694974 819927068 830482999 548719263 731050592 141521537 341618863 750360183 869345448 461037266 908441806 404727577 939588576 548019597 718605507 762354324 789250919 353134495 401993149 825216553 847765396 607570515 647955984 373450182 475256519 18613902 774843054 273843269 968808822 310809630 792813511 237382801 765782514 227200465 386398980 780229686 887182119 886435517 967235479 824289451 901887106 930832369 951921750 770622524 785725983 141858013 690079045 481750962 727315286 497001072 988485786 622767192 887812043 922222057 923771590 971808879 991052006 345260101 762840385 309822737 919134704 942701075 978021992 531600307 796557745 580359697 849375566 115859445 505620222 762563346 773238487 183986522 709064110 105957331 359435444 362700036 507917883 694311856 732611401 633217923 919397800 180259969 398139005 787824372 869387837 141270060 278290989 335347433 631963534 907542 875400676 164066438 788475606 812819364 851844083 101636411 853326184 42219225 234948078 554332819 983153618 292873908 770503740 488230993 537509672 609425185 922213079 597948754 800547563 338165982 778334227 416798364 820698904 900352486 948794084 875168645 975019492 748970239 909250121 492653878 667394212 885518421 909280642 55645876 833551859 650776357 922580681 507817846 893356068 823811192 956204731 841550670 879397522 277237673 644816878 557062702 677510483 116104956 386073597 201107338 422692879 399580050 696382071 526272025 604074558 122355222 204601491 103837997 164272793 809192334 827360731 516401816 743554253 860967326 886494261 621206690 664784530 403310519 771364885 960827719 979757666 395366175 858157414 436539127 696614362 737481906 897369339 918537730 932804017 86964462 806381786 49369028 871557034 454975001 504212215 226267635 609378319 270848486 778896473 945049571 962605804 109507817 840131668 30749360 148866242 708476825 951354897 509456400 841101166 714175782 846722994 925200270 944251096 983919034 997837962 654290090 858158864 433024664 998607534 766203435 820461596 770806539 967356695 313582771 673859598 789582585 810999285 213895219 402432118 248301771 305214376 6384370 95555466 17816461 54759985 404658974 682636857 235765354 885990459 190150232 715456381 64330805 71176541 763822249 901524933 443246645 992933695 448964384 728771021 691376405 691575658 524689202 661210485 305030686 859018289 382963397 848032902 874558619 896110355 960419515 964605011 930688701 999465676 417301443 783475983 32553010 593805557 520571493 843365422 481632027 932091796 372032351 564273648 874795512 916911868 91086127 756112711 94608383 816840844 737780074 798280183 858645498 879503833 467503759 686433486 518081704 520784145 256975218 807258172 99272379 195512071 331333930 406446402 536202800 846475961 743411917 911800357 611410795 716796851 439031665 475035453 83458231 727942651 243543157 912567056 731740746 830305700 116651895 214094349 384775419 913376950 973401134 973570891 138150264 618713820 990328094 992321804 289694416 965533562 444082488 593713038 222900728 252554885 873675015 997321748 640555142 855773055 364688935 830209542 616362756 668211722 409143541 816147206 628268522 660159186 409528286 621111013 665356969 802680405 488546984 988805322 96581955 216202301 959960705 982887071 836184118 892736665 210952975 638740827 483102926 909859514 344675376 397124216 672417046 964935027 318839660 760977343 671760043 691904659 984771627 990454173 880864861 891521040 945758224 974563599 187033655 884835439 629208829 806891785 929389704 970245824 240809652 765457700 949841509 986009472 903712285 927582892 408941806 895086624 121277097 800862597 595560475 982525118 937010332 947386173 21071415 786104911 497049178 507729452 186646652 920776645 839466047 919499946 344633361 401279407 506934809 606727150 46932046 840562292 822205661 934199404 552687216 939980933 800269671 883572135 352394853 574729840 418811066 981888230 657299186 843092074 996287067 998693187 465456766 875096324 826022911 957452459 392546129 923835758 772433416 843192488 352841881 719730601 640017034 985784402 853335866 984704280 347524977 621364975 956154391 981405269 555178291 649750722 798373878 926146314 959249292 984069214 18618188 562135614 44543708 881271091 710624773 756055989 795006213 873553547 33199166 621263423 395409037 970475246 114149537 516007571 782808731 866929412 847053189 923176117 193651357 207130575 559111891 664559175 915028167 938911436 503378809 774875080 635800363 877201524 845946344 991177441 585398218 645439055 301788867 755368287 797980275 874687219 336291580 560023057 98298145 844794780 450732465 856435903 559005826 682765481 253962224 686085318 634748861 853315175 295226726 478767763 817158992 848289142 267227081 344523466 767864345 908642860 735673217 961919558 211713697 747283754 276612132 383227699 196425313 850130143 495472929 784594101 296917117 431545936 367682537 427453403 181295723 682626751 342614033 987457978 103851665 293091345 319589847 980602389 221521553 844966847 397221661 553879724 579945698 780388979 476080209 962600718 870669316 922217602 395301922 663881947 760988987 940647194 697997357 921301770 188665962 472579462 77009080 958199672 645516113 946750073 317991611 620565704 652000704 815257009 586041981 894286817 259104487 534007697 310728967 948882498 844026555 844599842 386675173 580446962 209772209 219162012 207840130 550766068 646139810 877810847 719499754 724450970 477575337 545536074 601759999 744634027 955980112 980014402 904760717 971943191 526278505 608252877 822133347 938232438 139555356 961463156 526298679 808273437 438797651 488512739 934214976 993346842 853254809 879077566 747661607 969561802 577097921 705065785 948197085 956120159 453326471 514793336 95810413 413074760 592439816 834370554 323324731 354783183 13547730 441411003 992206788 992469193 574886376 965378538 458106964 827398327 478602300 682321554 341074703 737600987 364765823 702770424 39848531 911855735 776977215 991709282 810096915 900688698 747250475 935796479 619548238 787369735 640621646 956690776 10103593 285143613 749032461 754038472 956667803 978097595 846116837 938122994 327180101 555237279 709640905 979655042 421627281 793062563 97123394 199503208 819194348 836687274 912780445 970456099 569793141 682567660 845187732 894761193 290051276 763421924 564785500 928506735 122596488 366936291 586337805 763357497 403318737 810602153 904589870 929789394 319949145 429009596 930205011 944719502 24337779 790404666 973439285 987721498 187249680 217875961 646307777 985499712 192501131 444131784 951904828 997549430 106476547 785859436 707122322 786584307 425507875 571909244 441933340 907973038 623510469 971379899 948627015 980144640 633437223 818275744 933817111 934860669 556097111 561534759 733016251 840815025 966343203 973713254 980946509 999934401 867738020 951413376 951925528 986577878 858046787 913667026 905639560 983231851 554723579 605140905 372113330 979786257 337516469 697299955 904300176 944909813 310339882 601547587 708907886 791803253 666287801 878440712 767460167 881065300 516282311 564707276 231638018 569700998 855734157 905293089 569243091 947584124 109891254 449417111 596548830 992841737 563257064 603028939 933709541 935198688 31987859 881627789 270923457 540646690 754525146 904470898 411281638 539127382 606307168 628170267 406464858 567370250 125295191 256108456 684676492 899807617 500366916 528259852 546067228 908093236 154896199 622125204 19796739 357304384 862043038 880261059 162856241 239464063 311440782 999664551 987277196 994833901 354041641 510271440 68770332 750899617 486092322 601353770 118167820 864088452 717003219 776260008 518391936 950010970 481873254 591436217 753184801 774930439 166945491 593830313 823081353 987808921 922173007 966663920 794290442 983407318 411691818 805928509 516472861 814205983 381656685 794085926 343451743 766620829 970961383 978234869 626750529 849001012 386996630 965496957 255297602 707875383 944832476 999105134 245921706 798906819 50733131 750191943 789274282 913922634 395544682 902669122 218992493 591973539 662077848 921178487 300092768 955448048 363160881 686465850 653736125 837853763 536526949 899559795 261957248 378834525 531848309 673909534 770754070 779922189 582426746 938748570 965663126 978395489 200441561 523140613 651884345 775544530 572157370 983787231 696368844 976963838 333169929 720534802 617236985 787134133 22630745 260449100 652821362 819062584 517158294 587040549 325578651 733482598 872972013 995726819 406238184 707653325 282159639 589655331 4246 297443521 595723371 981732809 611801255 623516550 736399726 772221259 897005098 957986018 139995649 835439534 212105154 803195440 625525746 938413378 609679003 742667102 56561401 331326104 915067580 987205558 365718119 896335488 669443322 994024264 926569890 942345791 846662388 981056365 416987739 911400961 375395876 797240873 569732067 636478606 294813197 489449909 484880042 965052867 158551261 998350993 557312091 723247696 233016383 344622964 730816355 851947458 761398356 957618285 679941925 893240817 405355687 722568707 29054416 749687242 992648624 996154721 239117938 685457101 599780264 616057319 483157870 929682670 573916448 949945571 570961415 859872687 915024136 996147816 111042390 169944418 503238447 939935199 864667628 937274739 8753230 526823753 398746985 637865325 399813090 656300467 542544080 810439988 237313825 742471526 198105153 492635795 834743433 918790661 476588826 761266127 400240842 426485276 422073666 535751634 600779054 815964822 625591833 629034848 500589563 648941212 499042976 915634772 848703846 898137041 639572950 690993000 241758356 884580411 493080657 731374956 75196141 817964794 152317283 358755826 775368851 950645443 802133741 920697713 380124096 632211123 235638306 355741248 465205015 878034208 149172930 775030562 10072990 602738464 161418556 168857367 205112149 275256004 141857560 820238727 288989247 326603225 563674513 587073326 20084036 250242335 500793679 691526130 685829220 806119591 958234298 980943313 489576936 962791631 741217654 991964818 783852703 987102503 10968346 453033370 763388908 921662308 289917997 815139332 616895096 995212634 393633516 990681660 180893278 437705587 431525717 880785156 915562506 979538804 135154155 858787552 216138815 763200482 624835481 877235229 2041405 581668645 873252753 999705364 346031316 612387834 897293340 968686657 689815547 875401789 594484293 624009438 365597923 844553569 23052628 932137518 717767687 926421105 353710479 517592526 591194430 824464132 185297016 369470471 638974213 817035744 575836056 639125222 100841970 702075840 391792609 856241073 325829150 884458503 667264939 686296243 358224187 821244554 908476563 964857939 41245009 782529421 886776483 926138931 37736423 278478524 71861393 836535175 653518920 797308441 616127925 844486228 544232563 762322400 195066414 234935598 125132670 755930816 768308825 935193135 215004743 940601117 189432079 288449790 881858983 968096961 215083501 336299800 65200411 259664053 11948165 657093814 3262899 10220672 7524235 584824351 79904816 719903785 231032490 803175463 490157295 580182397 603326640 964949906 526344945 855560122 680386156 947605858 80936262 287698205 716580135 935021882 185103050 211727626 397537508 404170170 590858820 601851406 290633443 312099356 571476033 916997453 93066754 354953976 567324732 611198682 794284819 829123870 77185446 582518265 282277998 307447383 880693941 997191490 456781129 900673334 786539433 790177894 650641066 661350944 553214513 885348003 846608010 863672250 950360209 985305273 438414344 901167853 596500641 883288148 715582403 802951937 295702732 675280115 296477391 853086048 145225933 214338635 235796230 724514164 64557950 477094704 303432369 594335380 538183412 891179656 279213482 651074629 999329066 999404459 427981359 910429757 233197065 455890074 502570792 518117013 898758007 936857149 30696616 404442905 483722745 561888173 981535331 995878050 54142794 155788654 856835867 932765407 842309127 870338048 831978449 865470773 264425259 310785510 700298673 947453859 899486756 990493060 551521807 819742111 227183556 579007964 568233153 756196520 108761539 499403361 675934329 872886557 123998258 958794452 369005220 526508848 414500761 858457580 994926845 997406819 243291131 998672327 378486121 844692477 391998509 662893759 50452184 241923568 412718009 939785099 385755757 856426819 6271280 813860967 823376658 867768509 141848622 366705864 770370137 828711672 46452693 586950086 73932850 595284289 497870696 657341794 610942045 923279231 856863448 934325771 138480728 699043581 748212527 855942820 213802523 704611212 477066004 495931658 299459344 925354937 479320952 484756375 700013763 928876013 305420471 491224529 919898935 979338389 630760557 885424494 974674743 996709674 392837628 710767960 638068864 644297145 800882582 986830110 969876666 995169056 125195965 546008192 933428871 960708058 789577009 800044708 922498114 972598216 927797468 997335725 135603832 207799653 847233272 906661969 98910558 217084838 307781511 799460756 922375947 961137890 435203718 863088567 705983809 725415502 59254740 259883104 948419432 965497208 315954990 770475540 571444757 668561912 970735379 998898593 914385120 915042250 528512165 679103635 127437743 782841409 465392954 670525084 782436974 788665002 497662686 634277086 298256176 788927030 635535128 936999120 152948188 950999005 787739522 955238153 561599819 664091937 537183926 659983088 512018771 690303922 591608422 599806363 816987612 872725516 151736611 354834271 143397114 644278968 880410227 891790314 402150933 937351418 8018291 896038582 682928282 809009345 542660336 567147181 109872231 188118736 545934167 987234611 270112273 996933082 123182693 465718652 991340316 992361227 80408342 683558528 486191529 730198946 508371108 878282648 966559028 974275226 597998470 732151122 429364391 907713659 537129029 736814107 658311206 768253583 931329390 941873307 687352166 783115548 398087787 614858072 898916170 942822089 54282049 959421446 252307606 708946585 602711507 935748273 925924260 988024058 317407653 674704349 451233792 635764931 101512236 426904309 205263341 383783961 256388695 962337459 252446679 528266211 726735153 785239602 670524284 817502747 339131159 703705756 236035463 422903737 107489352 275942754 108933011 183614457 226890839 574831808 522693771 836921446 507790099 635054758 631236452 711299725 193215739 224166133 802977552 982756212 606773909 827438551 579854195 809851294 186720196 763367079 863356873 953000186 357314449 389453858 480360537 930223049 984657378 998380419 421378717 651074767 897902136 926546551 789324222 867886057 466755570 831795441 554649074 577015636 637920465 724348030 349996678 513470791 628402723 719657433 155783763 288662261 993561705 999212439 478196061 507065514 975409146 990362431 632814696 828057901 713304120 807798044 972576268 988053673 439359522 656974375 218243903 988311326 180325485 492284441 592515001 864994082 607067115 989322453 196050215 213657798 397666144 582520712 32295050 239871489 278839821 584370435 923875983 992591812 960918426 980341684 274737659 767575566 771715870 858065322 803901232 863838239 918780330 982614113 20314824 277614433 301607985 446041844 101428314 990923866 43834903 450464354 102772522 470616909 136912587 184005373 71961795 398862608 333218686 657757489 664746002 765514852 278895323 970072798 16401474 44737400 935684629 944023652 936934486 939883214 965823110 976728767 535760365 885876988 402900463 827282844 155225152 166745199 340442774 678541263 958506210 989133620 932334600 985294305 921131301 922089717 663118684 779871869 451169770 949267861 300440229 778034914 496129033 660941370 680892607 917449801 526870231 590199056 752562184 944149100 203657776 933201251 420614435 634559356 611167205 916745259 791927274 930545421 462305862 948905768 715474875 937608665 754610412 930721163 126976207 664319451 745347294 860704508 192289308 538005335 332433870 795911313 131499997 544880851 848436818 881636053 781477244 841219010 171539068 667881101 741604479 945915037 150776309 751292322 737991408 878647697 370238637 524161107 356693548 983114548 43866712 528318002 78430652 158548079 746625684 840063123 168494574 282389716 266409831 931160515 815390351 816922994 505435266 554781352 436269013 809031087 309791043 816450502 30737819 848730654 406550316 480669800 52552386 454878641 189653340 902965145 699387603 914083098 259777091 805768907 373832193 937172688 888470695 933766805 54065138 804476811 56104268 485964604 362876733 445111004 273599383 936527919 540266477 967429402 731771279 971012230 382461809 421770107 397566442 905543385 949101922 979807686 918028760 993172164 347715324 772114229 41174980 455562804 6245409 862490954 6949465 297205518 605144858 664404169 712526924 992943529 842877469 992581662 322291983 577127761 848118841 931039760 417083932 447111031 929244729 946058435 830648674 889929275 655787217 659754243 166967960 678887889 538398490 620444134 328227555 609873823 735912934 850218593 227201571 869126499 229347974 882519258 981824252 993641005 401789089 666011740 79210192 732301112 335472733 365226132 563459645 872428686 264528952 438914478 919845875 940722672 209879523 351498820 817622695 920642168 559656857 845043959 238141876 467720069 598867130 864031654 595125812 860983858 234429125 861439022 828723012 909570017 518306892 672923082 206966785 792620637 976767833 989712961 777134942 975690125 961008390 985067047 183186758 444358968 705810263 990686933 305521986 504294060 243506198 390587391 565881716 953175093 67148861 949478967 647324779 783400662 789376114 819569904 133586841 991282494 3493773 312645322 64107412 207981642 861205140 961260256 892513237 955505289 655406827 873676189 84492411 346658614 21214867 759176083 628607135 864388474 352233193 747605498 673328461 747339342 692951606 902413286 68382466 525569339 781937572 812058123 446895472 913016880 894327732 924306837 758473272 949266466 919506406 964411478 550723038 935671277 179486516 327646711 604525181 687659069 729916170 974225674 103909957 823661824 727650214 895519865 814390568 855682791 404304275 576584532 953340434 963641081 631324799 755667836 288194100 595059746 620067658 943875246 481875057 601033152 512732730 566112615 83894508 305269122 434665737 725130919 625419823 998621662 334764404 426770022 539351807 960405949 423179511 950445753 238923174 959397301 295898577 957222790 425890602 962041938 296956189 754216912 126223526 878589296 8978426 283572309 434596018 636980935 63434649 350750631 853836463 874813255 911717046 964975122 940648992 959476249 619917529 687092811 85687700 307034176 204171679 960185374 138453653 590670621 699638217 881571553 880083010 979236586 322319300 966971509 447985237 651546437 364894221 553868946 889941548 907169283 710253773 861988431 730000732 940394311 835425400 981726719 928168239 968182254 786774535 811339017 803131708 944743266 794019147 969171963 226854259 404030003 915872684 924783460 431696104 512358508 277349262 598755575 863766539 934184210 317449936 492001848 773873202 795569323 767700019 915695449 760078563 940053700 285385052 693648122 421146748 840420852 380118316 667207390 285085053 606953140 229631596 443015132 948117421 948858330 455249107 936464333 738057411 983165322 261609810 350931011 269862791 655231785 137137350 973669202 340180358 885528033 922845116 966640895 219491397 663533086 975891335 982455835 171132270 309919776 768818617 785934885 745602180 913085427 689943924 726668643 427050483 683277911 686901835 959783622 287941574 390157489 66393057 839730056 365254896 509396095 929295146 989333271 361525428 860288838 664611391 743947944 244079568 535323418 340216330 515225800 686160219 725345655 793193760 794310254 80206752 978981732 894637349 895385771 55322602 251768490 907944021 946957447 377298874 837835985 370810773 735007218 673953388 960821650 194271242 995610493 807527322 879838565 9948440 204153736 656933670 919420734 205594153 512728870 435162432 756892350 826140143 930710116 976799172 996501633 81976510 726269675 10752323 539608072 689265821 722047760 993831050 997928264 730711956 805409147 991448238 998418567 899992660 942543915 428726541 723482836 223877385 473867830 428838162 500224679 191711597 737816936 287441422 868552675 679738372 978967717 40650060 445049903 671950814 902883077 748369798 977259956 296836590 802429358 393535153 610333983 83953423 215073327 434340470 626984159 643633390 981971207 780998135 899057750 45433105 895695443 833500728 964217517 129647110 301487657 394260137 418171110 938014458 996378211 44287925 390841515 49069843 52913862 793248263 943083252 814439468 927566382 926640781 967986201 943981367 955385858 38734397 891234931 415048482 859753800 957653574 982254381 14854184 246033142 67045087 176322634 2974969 48577137 753989475 961901331 146311132 371256661 65904743 356745577 857707846 939379990 280620782 923283625 429465359 979107377 97579651 888042472 690044192 796541816 446254720 840619991 424921526 749879089 776018222 779881345 577228627 774803696 974142681 985402069 686532184 814584839 354421485 905022019 519413257 720120681 414719650 973822328 227068086 737774198 863976463 979651225 954573127 985185451 357317313 993552102 442863315 589393181 54090441 770688598 448516685 734962370 683795998 992745853 330554975 394207572 244325485 390657607 166927953 945995802 320427074 850925449 749900738 881089314 884767859 996630473 72383236 659518690 500875819 974714765 589741367 898387196 597051635 792122021 219732819 705249363 675278176 797823539 918603250 938919850 136688273 167948260 102597277 166379777 220762938 680320712 869303092 962918761 868412268 883852856 881790867 887210633 995489074 999499153 688709202 740967669 561617249 812940972 275034995 545558120 356041380 799436769 591086330 723867343 358723327 573478147 657061406 982639847 24030974 133199230 986023894 999646162 744599523 829309685 283506096 615038737 106915214 364302129 643089474 842395033 476905644 941772669 593412519 769374800 916146496 972422718 826443092 979890038 146976226 222959532 463522406 903220126 21692064 769877258 329813611 587926819 580788003 799564863 625680033 727196285 341377554 834062019 310368930 979499067 702409950 802849415 509822124 516229333 101565434 911061477 670105630 978709598 810306541 937530759 607498177 906135065 446803684 948736148 739371630 855284937 535604116 933334398 566506451 851664389 552839121 733689718 804668375 863277077 145557448 283465661 967064022 977333617 108391959 895028160 522225860 678241970 504034461 873878602 211361010 820582836 920297335 932063287 341357051 432664913 592143488 809787161 926091738 955270286 983410083 995247040 697533138 937744918 123819154 230107185 394236119 456315840 87268048 666849950 53047576 635440412 674680285 876113097 797512982 949301672 223379836 892111797 626698498 831162505 319026782 915303130 972501981 976575865 585524474 783321626 118845653 253704283 143114283 542455442 478627508 646190484 428297938 881292857 84102780 604360743 979995141 997765144 164151317 753221172 963181352 973434175 503299398 819485223 961190736 965357603 738481834 747215469 417240577 464071449 775362682 837923583 860315751 860361674 653503743 961728098 353694667 764335135 682530331 693162174 865321155 992035682 3508833 88584164 318150813 445643851 969049043 974155447 604912248 973474747 589150830 929078337 130004747 169465957 616416540 863091519 134299183 328470430 836367101 869859648 884590567 992753726 310430353 456312245 156604830 438307244 32843054 493804185 627523218 974528734 848165525 950814463 85382276 680368042 987848575 999984854 479973560 500950940 240979526 387129108 953105728 966822511 236079373 444540325 834379809 923281303 195233773 336694384 932751013 966329419 851706296 989343732 274570015 733089243 117463286 622297743 694685134 958991029 289558620 702400199 152662472 289102899 872179154 887976976 901354421 916111650 842209841 978463872 41361240 397677376 385877419 880289330 564230729 862227142 945331404 978406273 441735974 714877011 620214293 979165073 235210128 271953097 351107377 358703260 32450313 134296455 474782573 896172351 31528189 341049528 149510707 635924774 320286156 830503067 534663144 744067027 523286586 572994386 44952522 529029392 209008199 879699504 330957722 613623178 550310878 965091983 278251093 754733934 91343719 457193312 613427614 988539512 842787849 994133218 760801689 767790278 985408481 999270736 940094016 965326794 374919184 851168855 57250492 231654557 172771881 256875359 763787452 796143570 552209200 973918090 310674822 546224814 15199329 605422806 359642395 608469462 36307721 818285248 127053316 810234477 242505268 492506657 814836069 946041456 95329310 880859125 340562004 908798506 548939863 819080695 63629775 109220746 569027617 944713953 386337750 609409890 308592193 588719802 779916309 850793372 758063675 891593414 568565743 963880756 67666181 773764572 466621234 583261259 425031758 486210285 403891290 788127357 14447356 827874769 369097206 789998627 246295047 381281206 779742188 939604199 787990919 902829619 401272540 839470062 348823793 452026963 435888644 995382687 738607955 877131948 152321050 675174848 365888344 572722415 675861166 856334845 788789142 792849154 547182055 899190241 76826084 523190396 490430895 968636292 138417444 635050453 292604956 920226742 179757264 781093427 600755843 626070043 917491715 926845087 489136459 573803204 424877384 613030449 620501610 906899090 428595846 611788560 137843 107960654 961582901 963339113 632832298 758591065 362097209 379261883 761508886 818914140 641721109 720453774 537418397 729117481 562908369 660527111 856367106 925452348 965034888 982982503 351030156 581061907 767418829 834131998 421679344 868527934 544360195 898772876 50098673 778089609 791327523 933402706 500539542 819160400 821028693 967544729 130503728 722756182 72220171 356177721 39205982 913172990 311351938 786730279 324781923 887113053 711566455 786668196 653409710 934173899 389408984 643749222 103413473 207938062 562647006 900244306 22829527 537244919 728606584 915617871 175856761 561444405 799956998 919145562 996793598 997141388 299007320 927912202 173094974 817168265 387596262 909054787 883291085 900651049 392063862 510065504 115370223 721633137 532504008 572994784 700870871 875688740 849557113 883361679 49197258 703347623 489307805 996531332 483526914 583839437 852146348 952589956 186749952 579171760 29870893 167477378 97784119 856357835 418779881 950487397 163567218 884597667 930615085 950229992 829859115 902345262 411094830 494059719 309372855 655715124 891488031 992708962 375946493 906834237 805070397 878948555 201342873 498471865 778150742 820339014 409231215 593247738 65639579 153671462 373697538 945175330 453222145 702368309 578016989 709414934 240356539 724833076 45160862 246460655 412621178 868417357 11126298 440508836 903482923 992399160 191466902 534113728 357097460 677615598 564045945 809680396 697737795 996720817 746735429 819834100 5387811 907060414 402323875 776551689 988057620 998416978 799925588 923959454 945896392 975383200 451848081 918420139 717942629 749373075 172299619 366932812 984120041 992153236 633772569 810009811 808692054 931276687 125701734 738356583 164349309 413246399 833436397 944164320 165763662 786942944 425076328 563156902 268959443 374393351 670518621 718072172 436334399 550019655 447444474 852552053 246718098 478159701 696385883 892935183 436415983 708943446 41624497 231011756 703175160 703195698 739566041 910657776 156114229 172866356 608745687 996257209 555209383 762339916 723152165 830252610 706440605 876835631 877818137 917317559 695445146 916776533 209444357 375569385 964605682 991828096 49755272 156765667 880634778 904457991 715444218 912474258 83437091 111989790 467601742 666136697 749437981 932640836 847544289 848431352 734825275 978087590 949958291 957048902 699557634 770865298 83874968 702040233 166359210 534778567 264719640 829250902 507023356 656287075 239373309 535661820 192296991 708736286 758432368 842969492 362384917 921295922 720379468 965510551 326249292 976635519 928842788 963829131 859939774 952816636 956094507 971907178 990189745 993532931 192491690 865754257 115103989 344307948 762766839 861795724 173613365 888739947 218967606 611235099 847732475 873783538 124940869 576520776 48203582 260108144 571407961 733926102 926877950 968921263 983811268 997388360 560515734 629682711 307370425 439913777 550128273 655917114 636645403 715935079 858008399 915576865 422967610 464821406 77023780 647359682 99554383 343400793 14646142 599818394 844808431 870550792 780185055 894750771 653838266 700480068 329526494 402952758 521037151 559425786 181985612 711753033 333544347 752357720 701795411 968869921 429850730 959823639 969330572 995076461 495174689 496852666 727097540 850937680 552835680 862075204 806348252 831231193 450738556 579463461 400408909 510669645 651965014 690704228 835394388 900978471 250919005 964285924 718333406 944311985 78371096 272728435 775954229 835871551 341803321 832978747 210837561 258808156 176904118 801564415 122170174 987706567 97172521 555927112 874019619 978824459 805187893 860315493 804628571 867053928 562213731 870441298 768600189 970840985 202249153 362946273 66708355 598436580 227828562 540462437 918783806 988229563 929757573 940373250 117015102 452643860 218097177 663137674 663814860 680038220 740704351 800625074 212857488 493902955 378580899 687001129 979901169 982325198 823500654 851204374 617840 539831402 49313734 478835867 340166092 638872673 423678648 906558857 133548579 905657304 295488388 574686074 243825007 963053945 824305979 997849884 548502716 689435851 142800074 961566319 701061769 916181609 57431839 97852963 83346884 850177530 527035992 790691522 67864592 921177665 273836054 326586794 336889048 830645452 278013329 458117287 813320336 885320936 181313988 258434988 169429830 431420997 237022605 875994135 23651879 92094885 271488217 708749807 857420435 955155434 870176517 909265606 127885924 331377621 553194555 774360450 146598099 571304497 752428474 783289732 217951276 687037301 348799860 548215846 172396722 621159047 525632279 932292814 947453677 962780997 463052374 949976189 318137591 734229230 159084452 263782185 487683373 748156688 552068895 727754365 167888423 356745918 200613320 397806056 443320867 993886896 870371839 937682305 610829278 626835495 533810981 628444210 373157958 889563549 56775644 905626310 40951400 878706370 511384939 540100021 347278891 812736167 333678054 963161249 932753731 986953209 156826449 453802239 50460742 726208945 85565651 736763928 800209746 907773417 193525853 552896921 630947402 710796485 684146935 788597380 117402461 481659219 600071806 905006003 400775982 451406230 685138448 727520203 761259979 778738102 910541201 916843625 768470069 792662804 738066365 831096347 479153248 923114964 35711437 821559176 489015484 507599809 701356749 920920276 289195286 981932388 845145611 992132691 826617302 851222824 767867789 807037430 17955673 555594164 708143068 983836339 452941177 588478998 620741711 997583751 952030999 978132598 339857033 463969744 336780220 694403215 574726720 766516180 252646258 540450409 629198555 764723077 346143351 907499482 363179525 612306933 192344249 871493771 583478662 707155920 584109539 778265742 594744475 810607701 77019034 889117446 3993785 851143641 684103334 930736382 946653268 976591148 499589282 530732327 608924109 957411572 946222485 971282048 691016410 954433273 469619129 820431653 600300570 840862422 982008953 992830491 812714857 818143031 590214415 852663384 64012247 833089715 909787196 931615195 984423683 995191520 323672613 522701693 686515729 859742588 80399618 425780981 397141665 859092249 272981654 980486734 906526856 927541133 377039529 416105100 214918012 286228901 358324353 946928950 494780883 802811259 323566913 460335335 310487835 468663277 813588874 844574879 595409232 766131674 986179484 988484277 164486078 427720205 400226529 418906766 179832953 714986374 370506009 676776638 498780934 516980530 490971394 705734699 611418757 968834425 262977373 582694884 903157095 933004215 106781946 160064636 94972033 191570122 446707483 580328713 13957728 541740951 959335586 990833260 752294185 975073749 770466207 879578391 193342644 351365556 513602943 944887529 838932841 839440394 894362082 915937244 647329814 789750143 884693959 942637288 153831368 667873247 469738813 562041468 625703006 761573932 401905896 997438279 390065571 811870914 447770125 921668038 675359429 871620360 158428965 279328870 30052105 907264063 305317315 383264805 647650472 972530575 175053645 769185771 149730787 852936260 133451938 172181728 547837359 582873990 696691797 858367682 887590446 923892321 26140355 289715752 146535148 592074881 662596784 772252939 247953265 756534022 606717202 774864885 479880508 797068361 544872626 793514743 610362104 955751542 216001745 922349816 535567240 703908518 368883114 984237748 55466151 326742759 225747053 366680448 643625984 732129624 440441535 529988259 674195646 945501030 399134762 701467350 603746145 814594172 555523001 924216445 136712283 682611314 921545539 955315668 621034676 838294380 757679453 948369643 388075761 440199036 733944571 915793410 7599411 97773243 423292155 781290661 379612383 635508582 354210787 653462501 795516900 827524544 983187587 997684662 29149053 162099210 571701393 988434149 990417969 998516198 760203888 765819636 7345107 526215280 630230640 740533525 396552156 752169073 741140590 884332489 758527203 907568777 611960657 640398061 961811431 963444564 403785804 911409792 867845712 993324074 646440548 926292560 577667794 800055728 815049239 937938246 213544322 816254172 403034273 630048833 4077022 781592581 173168907 680761982 25451147 346247478 530638237 783892533 88120834 266883162 993045550 997718160 883195065 922847030 465063531 991008735 203266554 842763668 277914811 376525361 600423507 808208611 130404879 283234767 140539028 519530484 283485759 981501194 85599246 631977340 876020652 992836185 99828544 623637516 760041687 772978147 177698298 512384509 766127492 928613049 204801290 910761091 351710137 384624183 948142133 954097212 714249317 953717336 924242920 995185124 359980756 957535223 732154614 748447296 951181554 962402278 55688428 415303950 493951528 961407067 723694275 957433397 910623284 928965151 503316452 759226201 710268106 850910997 385780442 484893123 801895051 900301944 491554975 745500553 195043882 265905196 397408278 618539099 42478024 606475472 744094741 976668963 843128321 921908804 549292357 844850281 330444656 619770639 448268978 774704165 671101011 883910037 136333936 897362581 122373457 381784776 634636964 771359804 371054501 555026755 647726245 956602230 621377290 822057940 338303318 894973708 397830205 840944208 52539572 134336626 338617036 785084603 687860387 874625121 263214166 720451729 663318888 792107324 597621359 909391086 186434311 230849350 773310019 815599749 240680022 291323322 213042363 712722622 702773521 869398717 606345285 931894715 971887719 979143956 349215472 912045468 961934090 984232106 673042035 700391215 198530232 607967710 473681435 726077676 575559936 656707607 515003835 904398138 5065116 672503589 988729383 992096195 694667616 702919214 693097925 769411094 799234098 985468384 347280120 427550929 92773043 286314306 491436245 585978563 766544732 921424462 737989156 887588571 863317200 983080231 162193625 812921580 608442563 864637525 716753346 819028095 745926718 786459147 864171829 884925696 89052164 739836798 511873530 608400209 46699100 670403453 778334645 860655411 268216464 750375487 90388945 919542675 575804924 881534471 471094118 807700436 550402560 897405603 167083424 226208927 725552857 850607352 921139607 972925997 748946617 867479778 112767638 711433958 387469664 594948200 535429565 948835231 271971894 806665588 75172807 576772439 726532238 763611262 615975854 746831251 979891029 981406700 12548564 602040130 527864307 738149015 393898639 416245420 114232954 850971834 448758555 666455911 515061779 696785305 725744096 857291839 609545489 873008526 74093183 171512675 886736404 921535266 905264016 965407390 837906798 926626029 11721442 550624797 695217943 891556478 824064267 885496666 82667242 572253820 811451179 967474651 986112441 992719640 927995529 984054860 972321478 999251079 369013787 467026556 503281805 672713410 958453981 963495289 768723544 879206497 462129159 735329009 808582498 923283159 19223795 698191271 469223732 529380915 273235703 499569355 500690650 503188088 959281306 998503706 76910869 972243683 429647544 558064219 605262701 762676815 922333565 955085061 304416830 746897814 511924389 540050133 716901015 782474311 359215954 662795404 547605556 928060991 960443648 961521720 526485058 872084718 1305325 491711349 7736970 819214575 294021797 963071358 34267014 927286274 534934067 755204390 772897897 915262941 465639317 584770822 308374332 998318869 392032957 575145624 465183557 869335994 58951697 801730666 109486901 828323511 152603096 509270103 889682258 917892341 340771964 790893896 946238708 982345323 212785865 374967634 952419023 957452946 570687732 639492374 502924748 760235575 854599771 975861280 370541065 824430711 957056850 973696895 246274618 799647176 819715678 956631550 946254776 959163113 940234572 997519808 736546133 760860570 699719366 992038110 807936159 963754179 857253068 909402258 92394256 867383487 926649892 998077173 750431217 977047658 809642786 850574721 390934045 793817426 942027459 945764639 768250625 972264465 50135347 324936018 495523267 574223038 903303453 931693618 543222820 694425470 666374550 792714276 191694436 361385158 997407960 999419372 303894441 395151059 304364443 521806022 670475458 819793135 948673855 952486777 423985568 706195637 30485763 645280286 164159676 472872458 558465439 905431890 308585857 833762716 320148667 463672641 368856265 676125378 130511829 237151329 645121813 689239913 261126604 358840223 125726821 411703089 198861395 709333889 32602833 306850530 363840870 675205716 101446091 317285226 237249109 414034937 3419781 40607284 567246777 608315012 135035058 683566455 108553959 921950361 135326459 487477662 380038913 459730127 432976724 947945457 682654243 708329482 701821476 826313042 402978892 862644828 770650642 847299032 884832180 885161894 656085486 755208648 540621442 853330001 38430455 580477040 235498577 450690899 872807469 904824867 187493685 324670424 170004863 930394679 648258137 877156300 611354229 743001313 606151392 979847160 109355068 760134578 668846205 778701208 228560139 324457683 622926406 705537514 968812166 987683050 117232054 195820638 537960661 548116956 363021585 602270948 770251459 957084605 384438324 806994940 203224912 404351946 971071033 972447759 764149375 884563385 611713926 722761530 179615410 816821052 71621369 122371177 594428218 672847684 437376231 585400919 898993292 939164731 451726082 934086933 674844390 811842104 461967774 700924039 117484757 455844078 477595564 799959119 121205694 931674954 729137692 735709790 103591426 232618047 21000836 251891164 987070364 988635511 16577005 942602298 825055214 846274122 261214616 386862732 966690375 991826627 435786806 902416485 860686997 989059345 389963484 963747238 640012418 773729356 546874207 736138240 769461936 878716331 525294264 600830969 116022507 685326095 800058211 895416344 149711643 575118536 890169778 911913309 579794934 707273570 105580716 710356338 986021111 987072490 215106046 676276611 517015989 693311758 280603562 868029539 240436173 975191560 98478255 214980870 617242704 820784071 740717241 858916747 487064085 622499774 640023822 883633284 194899840 453310858 900914190 997159265 62102979 912390192 898065880 919523734 763758509 800670649 120932279 755961687 616420799 762624581 21021528 604346373 778853857 972709025 957285361 976574379 316002634 800192776 754924878 882862088 70994717 158970752 136337881 217388318 458585347 820331555 184108886 922783641 725987871 863873051 639163177 953548706 317427384 877390155 11752249 217236913 289880532 318931173 120697241 275445167 756102709 779325229 546979440 928269202 425467287 490669868 778696547 971972065 126743089 242887356 772559491 812106241 122751387 631052647 73460309 84525931 114453517 351175792 116842543 804741255 709784987 989319305 698373516 896732078 822587143 890816202 532561428 680534518 599253798 665018866 108365706 771395446 796369076 946739003 988244871 990873329 158618639 684242573 784691152 862824620 748488342 777863367 790506353 964334214 518877641 670801213 164567251 538466119 914864581 949558865 267285544 623213743 473730037 902906555 880909056 989179794 979949885 985794576 288293728 916906792 717054126 928016402 125658862 868591435 295016479 563666178 318008337 895270749 998174512 998798249 345696779 908024825 978359337 986419367 268291578 995150765 827394995 968136197 733641840 813575194 235249649 424376030 743289349 747481029 648212288 778100919 430308452 544211902 702381290 824522400 957345445 965942212 474023970 901603760 400453173 613603037 585261987 815846936 260962573 789963681 399837818 878407038 938649972 959439820 315066532 548472632 49124135 167119455 849822491 946366553 755351421 866731467 392354360 873544228 464837073 684767272 91283925 224309045 722543332 931324609 361672180 504307836 735828025 942262127 502358206 520126848 279356715 305328890 930584076 964565860 378492811 745134950 828658601 965408165 534761832 969711923 737079437 943887783 160058656 814381167 427924829 503101759 630136211 632008425 637194969 802138467 320412570 489677281 604684730 851087582 999339579 999434403 177276387 206347826 448137063 934307856 190362310 741223577 14043538 87957264 292134163 616925420 844684952 974941187 160769294 779799060 433658142 960731008 695581760 972265496 790793974 917769480 88223766 905515241 375578689 739642675 948915865 960879437 756022549 988426285 630618657 789621295 803718592 860106899 963295687 973708186 329110610 817640680 414954734 522380003 88332586 516297049 944812522 965352760 724854227 898493327 995834375 996503848 629136504 991585223 157763700 842005321 931014341 986060612 281086142 404352572 560272297 787752522 459370557 562158783 314362102 426962676 430157578 549852195 972818323 991354262 626782492 740197255 240783161 366721024 953090181 955160440 496675835 898195041 445460325 631211363 381424532 718025914 429410513 635330254 31085195 285000571 303355841 888513707 322031769 581075259 535928331 610893147 71443668 922863446 582059761 897784313 28322937 555253805 647293475 805970609 729342850 857515853 903470770 929323379 850535238 895844686 318349932 667590535 857816709 900465005 227017952 727001111 372047799 658149683 487814915 871181585 608103454 644915046 321577212 682878054 900103487 923910920 226825255 848820820 887478694 955305044 451065308 750715247 68593521 999040256 695990452 978499772 479621352 628203816 487408301 797634493 841028528 978278940 603585619 651600950 333040112 787388290 769250915 834747597 777100353 908062950 539975264 766936321 243099891 974006766 698167453 923432179 361587918 997499130 944361171 954184941 444083937 776408929 86844005 177553945 245366813 576449552 190194737 479035138 129521004 856523903 908650214 945369405 619746698 896619090 121920438 623564095 280178091 652951343 294899228 592121985 639686423 671169628 56723510 547886500 12314024 110388118 151947786 373944989 733736895 832358333 346160121 835139229 536568736 643305867 303677912 729227881 801479944 835512902 814036223 983952717 884228071 904078167 873813344 963755090 937805025 957468632 220574724 356881710 392429274 774964717 982856997 984360853 740041408 841838297 818185969 896930930 339527022 374456111 239911898 244620330 713650559 886022676 463464853 767768474 843405669 977757685 944211441 989606033 940249857 948839836 839629502 972760863 403760557 998513533 530789104 696334080 843553387 856534971 474251187 954032124 330017914 925852065 745755345 840381905 561726439 694658983 108716186 912914547 202483119 583216441 488053828 672715710 85380212 424239205 894025212 974936359 261596290 955317544 205919892 942926477 537959333 816966869 940972495 965624432 350218396 845983649 878684556 908427768 955059902 963600440 670367788 757620914 293264706 382521077 585826947 971625386 105469674 933816855 762270677 879467303 229851065 245597594 259783015 485506272 694427110 875871019 766364651 931096126 615144823 829528205 188807926 351516043 629227190 867384851 529729906 560451060 298019818 358763679 39137069 801165312 402705628 768220453 717108573 807592755 17107432 491349026 429183454 434283365 736468985 778781732 219474695 975042769 164625943 521200768 65111159 439953300 956990018 963578000 257891676 300203304 297598371 299945342 52101679 737807651 410625199 612080191 628153959 950134007 38735585 495222489 284154094 903566423 333678094 605186197 236471401 811050088 657013769 908622061 324516923 647122249 842821315 937103347 689307346 973946176 504256180 769540844 200492063 697952380 717115454 925753583 251100279 641074297 743557665 981560587 117105614 912155450 332640832 965229654 223105679 940038146 856079332 906236049 766070865 787002108 298841497 553444650 636511165 788354225 336356578 613491812 375820879 484357618 769654763 827619309 605632132 688795596 201810616 803131011 360295359 675591785 729874690 879038240 785946967 951454124 483830355 917818846 550951322 650247935 637113364 660132533 991941896 993152684 287506669 700682789 498922834 504960068 84196315 247783069 815049545 975173114 278655671 601247606 147602459 270740459 163533754 595208378 514221821 579847885 208069754 919831772 759619903 892795630 522381843 747443766 496053599 898011798 469845010 780451249 256179096 294890012 702022478 822758883 536387278 986108026 512340106 958882814 630749556 705365475 53228654 172671742 128362836 753313010 429047919 778661917 366660603 687496588 611089106 869231344 839970594 956836979 504994966 778558515 630779684 797735875 538272438 687769014 516686970 768323790 692020675 849212226 643089253 678065802 329113412 902354697 992650640 997254040 62808085 914636570 450144118 749256399 452129999 802654178 160423560 751601534 821996731 908508085 816106025 900050224 131673984 922557397 626963867 791034479 252890099 977757571 3568441 718259051 918661290 966826295 750499420 800489974 224108144 313150742 561541235 600731953 830631511 955788355 968299196 996931491 315954220 448245802 619304004 879647970 364538173 592345235 102560542 447065359 658840769 761308162 662631523 746263700 204190464 949194623 135516613 194591360 865480415 957481954 49271075 192485947 698442638 786433511 405912859 933067760 378058456 502712090 454032516 502462655 32524148 82962936 90105049 282008349 370093292 998407270 240494926 855233920 944382291 975534951 458649039 963525899 393687855 430234315 133925049 368140856 116818637 457016263 908669076 980353125 501762311 997684673 381995802 593577636 435809123 572592941 711061292 913452775 168290946 257156256 849353102 894682570 702556978 899516641 42899781 60293938 206671841 306948644 822954126 909320361 917390042 951709671 868703067 984263988 406249338 420230675 457553098 988005307 779533752 873496176 106372901 991735840 265553333 480917201 45870152 823094993 44938275 307153917 831094527 953374287 633567414 861484047 943464839 979322039 328069664 579320657 666229454 902234984 812393227 841521040 845559819 964554618 845216732 884115036 847367501 952028778 685881203 761217081 896300803 922021948 78809148 735511602 41912274 448047088 628299938 926683991 295008746 592371555 334902335 777356243 217626603 777567674 120975504 646031298 168529966 664422263 431050295 516512615 72895216 995484168 721691572 954230359 1821246 557130308 828822389 966096061 892062564 995766200 668924445 689755268 495694509 914239915 90844802 138370635 265199650 402535328 349387077 462742816 552736086 656115866 480017750 675189792 16580609 536573081 686519737 760474603 741308843 779980787 355056442 721290303 353452949 529586131 218381590 358243571 290043447 701530357 598506129 611354915 112881139 774045590 200437434 365607668 856969071 945287462 880494233 889962572 864533890 976444911 380543205 680430967 780103044 870977172 254897238 857306463 28137680 843101919 950326940 992356180 808758681 989218245 760233167 933643442 720072948 725840358 518950423 686871411 600734420 961201289 532537549 992252423 826489186 965813827 455942677 605592141 693243431 846898214 958924406 963264785 19219183 987340599 750839360 870341121 74446511 857510197 187339496 594751784 832725174 952112938 82267448 910188428 10987444 636086883 163461149 783242714 179015137 512584812 407816002 696598076 888185294 983616245 373756608 999880109 250321737 324744100 323080820 358210676 635095945 820113608 765447708 887376633 985540376 986198321 309386854 429489847 111937023 574670828 16273400 466469811 575451160 775121447 854338002 859317518 82436865 685638925 600122025 813088035 591455383 943027352 36892027 840100824 410172464 845575446 200058551 617845966 462521401 786974009 724295523 885183928 929931817 978517786 731087569 994490226 258684334 360524233 690041898 703568313 657378261 804721452 476423017 860665610 654652987 699845624 975998155 982222480 408168449 648621205 237674552 347397611 832816803 987808324 725963965 852600705 265284705 915676743 977901409 991919147 402855 256053729 651103990 667443102 223186015 262288664 154133003 987361225 325951250 711962304 21550793 734593750 101538408 989563488 269998061 434691907 458093737 725888779 69056085 227435395 454082681 914885627 610050498 957136439 142341229 999715588 303378226 683924373 515768381 836678185 56990310 620903115 569187403 661326194 117426094 499687624 869468507 976769214 2006728 147955031 433199525 906897460 358657022 478980468 231977226 306234220 399945990 814530089 263557332 397906146 377672380 502833106 53989884 714299683 279929195 515053684 760084969 958545020 283887689 597872576 119843402 172932004 242764899 812934480 839301022 972265528 701378758 894141237 48618414 330512681 689323999 809507570 12712326 278283781 576762157 934324712 597309817 969431998 868216428 898388346 333752005 735293789 352190118 578766602 117819263 997187940 404747753 818016993 387344105 755919819 666402373 782248777 732637126 993552791 965653932 973763954 733268545 799339980 321286523 953393511 447659561 516027041 228140496 691001414 214219742 361815887 416718604 851294212 480437918 922335327 997795870 999447795 932175712 975315372 419602338 799673524 554718217 581900413 561311329 888188426 804740157 928367212 442008180 610338065 366648901 956333883 126942127 261585206 281937773 928165853 851874786 991691267 366174320 462278638 520380741 736763193 943679052 953171438 465728767 795916465 915447924 924863222 340541794 797099790 332215098 437346964 140610329 847948340 854547460 939146637 72458039 251935534 758720113 770037538 479095508 546059052 228594302 742604315 901709692 974654113 764035992 976786253 410224320 689130071 955608025 986114453 990913187 995301791 707185804 984813137 297203372 362871600 617004947 845658555 299292119 717060646 797248381 800256603 797647702 808617347 187662423 766670705 654444314 674322210 71645731 783147142 102903124 658475507 588162514 791450502 894887912 957618165 923228719 923685596 957422811 975525310 923726198 958682256 1489642 833302546 77529228 263805025 512150971 883576256 53159239 807133909 138144226 199646446 284633298 921097429 791433115 878526166 703036720 931896671 894137090 947651225 27656962 340590950 828585194 900535002 512047906 583564873 401842997 994367445 806611261 999859998 858215510 934948089 142137590 483377840 381589819 951694564 72799226 564480553 748836772 954602135 799332877 859600537 182313881 649705677 234097197 582980531 506352948 557456381 881121045 903794606 919380629 957807068 40745275 897875341 447510178 704098975 413899541 414719361 451028421 718782984 503644304 873422026 144018319 815076706 25549754 956546067 855965742 933918356 172326365 929809960 478834901 825531782 129045845 433487410 552585515 601152584 687680830 980410392 749973967 929768854 758374132 810310039 186970060 649787289 744756302 862306027 320172864 884493890 926833337 968215920 955625204 995854542 771263691 798866209 84466852 358769050 392777504 471876765 181289618 563587178 401779329 994097050 239929623 882321020 875027802 885096012 235759448 379495245 490283131 797127014 33549715 986113727 584555073 923538361 302073221 803783198 821045249 982344529 297915948 437943400 125789751 760415462 244461129 378018354 431538461 668817685 108010038 964863353 785153243 878171586 620519998 630881867 598912652 940791161 699792816 755395074 999484425 999931144 290886786 422867923 337016727 579543029 180766547 370097824 368937531 969938075 17230698 878934389 880619911 892012553 396964407 946657968 325487676 704681177 624318299 694291944 478557848 852016651 934637322 954810982 389451852 393154215 435486156 994392275 884234313 960001255 221185079 756240242 66892031 296242280 734322660 893197039 872413877 879500049 207416443 424470124 536451911 873595933 21813340 120731970 440721441 960106281 552135780 565090935 696365580 729116771 456933452 671193486 547320334 774576831 933393174 973569574 405185219 641630404 948764014 986168253 575634117 794849308 139667183 384002517 944599765 977336525 788706379 962643758 995605031 998679624 332563441 719002319 13483222 427082326 697785096 905465793 931339667 961960323 942020182 998352541 333088852 470744340 258146955 475892326 876918520 943576496 440848526 508790852 347291140 796715445 205918376 770440724 108719967 822359867 388843825 655842504 549351563 779033912 819113069 917981776 879617356 886129933 960972739 962870906 409759328 481893323 983481209 991811119 239431082 936694438 371991185 898594191 516476648 915840551 284722438 584600854 198866780 420787554 676822259 902374087 509532346 721223197 157938659 187136245 790478156 840636067 793446565 813317696 979421007 994108132 423299398 459362050 857133940 903418190 707361449 909865354 257648741 553207004 159520240 943102248 131668507 659445879 274528624 580791426 432918169 993305376 709958586 734661535 428748218 564238043 387262152 581520423 308851066 741958640 19067688 996669275 85138052 430204754 300866706 749854019 275548150 567024132 45157860 308798862 373165362 486659019 546806224 893190941 829215696 975696231 712624746 841543418 602475755 816387663 924467386 966641029 873937685 984368961 723938568 824241290 205555886 340379222 707085536 777991170 933065593 955800566 216326008 425041481 630661006 948844786 488029359 716842310 665425748 724990600 491057865 624550606 532709822 763000529 439059023 845799259 31863160 403696402 928163020 966458734 297191230 765529625 172718797 621613025 604392123 796172466 928773081 965899561 585786608 723440350 914860454 916991000 192544932 299417036 421585852 964673934 523916895 859335789 4170895 293024373 170998378 854059504 572121349 650190857 576090119 602435282 340062969 417031818 451608540 720417822 963964460 972352404 334568887 535519183 810471619 842217799 708518156 792233202 477180432 648397631 221511775 953274978 937834220 973557878 299829274 934136346 33943121 732624677 744066163 830841475 101861386 603668893 234842472 557198510 232724188 431201954 130025827 843436915 227126683 418477173 404784356 949587708 189886643 714131878 747416426 758577250 229458989 995853720 640266950 770550861 676940255 702126238 394793175 529904866 458251192 793353171 439730134 998771619 405712487 758770325 635467203 998985028 695674785 729574633 748276217 947480086 251312362 395728039 232495768 321910737 120514481 385390179 639151807 695883973 820166648 960076157 540729271 641719728 601581104 864560201 310482734 939136009 314290482 665360010 917353562 948369815 625376172 627502805 148617498 858167247 4010774 540291105 628363023 741522579 329935308 336472632 89689881 495604112 852609908 872041106 400181875 509157144 727918532 941937520 355117174 908465399 85596083 410380261 337852393 786842038 692640352 873324133 120759563 557629535 677991823 695330311 518695932 531296955 760871024 819004682 24504860 768019544 785134144 958502110 619061505 888349042 343242694 407206701 330519756 748698671 79583605 349066931 198322 170156053 902052631 970005032 490678302 632523399 629872633 983709403 836188061 929376416 878310383 879543286 580318573 941207524 487247761 962111590 648811625 942997365 588788620 676839974 123632761 997235947 791395900 886892029 310050868 372665432 433159688 710872636 272406153 983805149 506150807 621774088 26028258 776625872 816377453 924753794 426069759 476948184 100133084 528689515 510741833 658544226 326921775 443401295 445297038 561546792 365190283 423501045 581374697 941400338 90139709 512871454 417318043 662665093 186187342 527094707 606217469 674467232 910596604 924891595 589460119 896467807 192846693 538538008 982478350 988875543 555733475 653327771 414572576 757177920 643497241 911113455 867609402 879058887 376655056 873678092 116421443 254344602 388361444 676041726 85697604 726602533 586007059 798342987 469840821 592535746 778136691 934738136 53221743 953626597 397139227 769860734 876944637 945133237 946345477 990262140 901436981 995020803 913973498 966220937 167513623 782546080 294538379 318368795 430737018 548717729 461017218 924715075 656553966 732636123 355319715 625735862 992660806 997490800 191853427 287952056 584144551 913107080 868627418 953520195 348214309 563880245 43357251 412843584 865431985 906328469 113313387 770820106 368235464 421424842 119655053 220976398 596936757 845541299 956415036 963133163 908862563 954211731 381001604 759929626 840769791 910379981 663494248 728229227 554935214 674803953 658209694 950011358 477113601 710805189 527054982 874001078 825451517 943259774 947185588 967345452 57248684 854638562 797437898 942595634 107437766 392141562 361990686 703185396 41788711 279993390 749977577 894070217 591925405 854511779 388710598 826038345 848616587 923044359 962202744 962427106 158996879 636933579 759629705 844720225 425690454 697809321 947630845 967407762 52628352 221202676 723701003 778100913 133081951 149750373 968749888 996860752 616858097 795750626 59601711 607223893 965995426 972019275 536919842 584406588 772132375 963146073 200910872 739960775 247597626 896702122 690452008 850033315 324106285 908484949 645434752 916659830 442188735 634813005 937696641 982847736 987402310 990166620 63152515 944638175 740293256 873024383 477993436 521711737 321284727 534669842 197072274 421714598 621090724 884367448 552712993 751118843 408310914 803916272 974935679 981644460 528571059 725381486 228438462 433719837 203687936 684756656 234235670 512909720 184615441 660237703 417465786 818719557 509962528 588464305 208122721 272686924 776221350 969994236 845593308 992875219 724511651 818297308 502112818 842088843 574164854 933426059 615218701 663168049 632036166 804076201 826856992 908017676 894161689 905283789 885749472 916107524 834209044 991677837 710367504 957723657 692313709 950284754 701664728 802535702 747513864 824353112 931528201 972239729 808706396 927499328 324899108 528562907 41007319 326815436 726595654 817672946 749419066 970274776 896653932 968115799 503036702 854930606 172693257 972001496 978138559 979979186 210293415 415755422 781924444 947140319 933337976 980311661 175930345 339031187 673586054 731925936 972508779 988421963 433718934 967771612 126547345 780217859 630091914 859038130 590951498 914982737 920063725 966985224 503084802 636767784 288620958 814612012 933653162 996743665 941864928 956153173 367391853 373170574 104354930 560987104 547570398 924202928 687921895 702967822 794622909 907904053 977927172 999000908 604178059 946095090 60733215 417622216 167289931 227325015 857181487 930942723 375253818 394124347 453507488 681408708 280472245 963790518 756624214 838713689 916176082 928308218 144075470 396048665 4802135 665179646 382333638 987292068 261501522 296937711 607621097 950231498 630219616 773248313 191686332 546938692 816973949 978482535 718721258 994690980 821590933 992239121 923540356 927371056 897762449 960775906 899064366 987326872 423601810 619076873 331841374 922618723 396351707 584982070 811083468 974156280 711708048 890740733 408689436 820149883 144162250 751520645 345938180 751581320 31967217 664691698 9777931 272492549 160770795 290671717 651387705 811643761 379384317 449525588 949210694 962559485 478399802 780074030 993598835 994721433 931257228 963742276 152812500 388951873 961791904 985021114 204409873 204688502 748504436 869222977 579493034 733569431 530273996 606552379 787795439 867356707 663267026 919862215 945520233 962229830 244852328 392207971 442552875 964769504 311900689 563971562 846077658 951961904 404980461 543653227 703371060 881596117 866438447 996936207 947135321 999326502 408162993 595987327 102799497 145311935 112836125 764593106 957931895 958329798 55017970 132518884 605685348 658156617 140565968 863690117 69590487 792512535 482512826 885342866 407736564 879941988 681386170 904922262 324792998 420540050 45589047 990659643 114840996 451280309 147463276 876739256 544108251 589789553 841372593 916497990 67273520 334708495 718152825 908862898 424099572 529826494 956305062 964979833 649057362 885665219 684483859 954527958 682971964 981393581 194261521 471546313 629102219 932548985 561730401 779244560 370041829 383802792 960607705 984727469 701339238 777162585 657302947 785934479 597364433 733089898 703397376 776775990 146503122 605610628 709065303 754110166 587188708 891933339 655249372 827225414 535493384 729332690 268382717 518525473 480597210 519683416 198163560 640091528 96970007 781075761 18114417 175801013 618846378 768732048 965274077 991633577 814047747 904702701 643471348 909491103 916854543 921154620 891101625 951360429 599664251 887896120 993464718 995086754 520944849 587162453 939332637 982085406 422382751 697829510 808319532 919424089 79272723 920532413 823027856 827235848 834549276 848804642 632512684 837867186 155854581 792867553 224571627 557144553 569457000 715472491 984075300 997344730 750043575 851172123 155535383 466297176 759355551 901537234 704983899 739273929 136631099 967538312 802234389 887311757 775254316 994183453 780885497 945979258 835820412 979840920 573081323 802912860 668227966 897194817 551271832 587438676 608943429 659741454 506871214 506978433 313766844 696603494 477203194 712023397 667573147 753640703 149333093 336484492 937612540 973523966 169980476 548580903 53642215 306325384 758242198 883910778 1098211 438002228 881960368 997313249 172813948 543893250 410712142 490552599 30474477 490515517 679862067 803122324 662532323 707486656 674510772 837639259 517351342 936403338 808381997 867636488 508841132 704356491 883990582 941552699 147933928 883953008 93826349 982108156 135160859 801616411 304588442 920847336 303071218 597395225 455065147 521107507 917248574 974764440 922173907 939678758 605937153 738608261 739265796 868122724 233281997 496012609 524762158 750684904 513133331 758381103 647006584 708184842 746736152 841678147 195055147 512874496 303639788 451108265 653591064 973131229 712365883 919780805 18571360 387374427 139942768 541298553 698845001 866905573 106536205 555043455 509650056 883336087 328762751 897826797 72495091 151916319 531649920 630490566 77407916 621956483 16865809 297800216 332094375 574582116 182509986 684871033 893931161 969710695 445840611 513210854 371772435 821244593 837575577 930784761 156948838 490150569 292592588 921590357 718603710 785257128 623604933 947857073 235573454 913974436 118398505 471908395 196434304 263605429 351541317 707258479 726868694 935628138 309409538 417990835 399803565 853766903 817133729 913351650 928245752 933373630 478809635 718012522 614453438 813529266 617771149 904519448 645921389 749789332 217000073 894225366 449535822 575920451 651692815 803036695 853184499 939871587 554404046 810506751 821558234 898612767 20783 449454839 381162667 932490670 502711892 505256194 601664264 627348210 738672186 798815666 485927559 585481487 687283392 966256732 265230651 611072163 224183713 398654618 839255092 925858983 872521863 965074438 490800391 682658878 505817045 631416614 268142027 883657122 159845881 518348787 372302449 628324230 183582069 431811219 80072406 189637748 914077325 990158683 519816914 784684892 540206951 887325259 433439068 481327117 841732014 868042132 616605265 927651545 897791169 903940168 703885755 909056611 366867861 615904805 311814051 554329952 953149730 996967753 84480048 936882081 348025276 540260168 954049896 963479794 112004470 322833551 181532202 974109866 957926077 967743202 153855850 634494721 971151217 995826400 38514580 833343518 19012908 304022040 427620714 957788030 218639756 557710588 717682720 756721015 643581272 724200653 226210100 234771355 664203398 984716094 100854654 963490572 106904557 536885304 974641269 987737340 634818935 896276142 414411706 652931748 492674799 801903700 387970623 480007058 438220955 621713044 613712301 927794008 9030106 426738208 568868367 863997306 874447322 953681082 154097745 344805713 872369994 973187260 951099489 974409017 792839745 837053852 723441400 860137918 293942430 465401773 521595360 794491267 982055573 989636665 152209926 703028433 694082750 833200627 104328481 855453974 92756152 559583144 470026729 759389325 625403908 819621507 815697414 976117934 171433305 278015916 159345612 390404688 489241362 595333420 392201012 840698365 89120622 208896645 907535525 985953169 843597893 975823627 674264304 794630696 613967752 823000809 658970892 717412156 731110458 755419609 371348418 502429612 689677669 919724697 42556990 881898744 21861891 164736754 894203869 977148562 774121554 943559847 26001286 33110869 951726539 965707707 264517046 669696516 364345509 729596729 856512366 883935846 14916692 883261539 484150538 943021597 56934090 193685989 126475569 542398782 371110109 399624757 329900411 873919990 950086449 999838997 778158085 817577072 146461069 708173169 334751913 606860517 729778672 947449817 58348431 421645788 741020950 821479409 57587761 945015402 910741661 933763802 892501183 960626258 953947778 968064106 853177588 960821769 888404836 902866612 13163565 116939931 877828143 988709974 653526287 816772898 243015426 483299679 903969157 983610230 304425723 780973465 74442363 502866821 463619774 603128785 394767341 963586388 645604996 783134699 667295017 728138419 749690601 842601450 738293730 796023665 910429678 964319811 643320422 909973780 813922228 818696555 185621669 600264144 984186872 996463994 947234159 948942657 655685956 873001260 329150507 341393222 568859924 976011881 755125267 897972901 578706369 970458673 973800836 986092658 451013522 499822617 974805791 993185057 191916593 235176798 885625534 920245407 253502966 742624200 161661454 189560836 792515868 891335799 221106713 598985148 251750640 615213599 114567499 350612920 122369877 138374124 969221885 995075200 593721669 698930701 435359285 970004907 849500901 948369817 134616959 219446744 298794694 560916492 564839548 885748662 559901542 801242393 784896487 896741483 645750054 821611263 979132874 995565244 47858855 821839177 995285813 995609062 266080015 582414586 873635877 898233762 513633184 810064621 976411012 988479524 462589030 807399758 650758908 661794644 116523791 757704283 258862190 294422438 870462101 910517155 376702505 565172573 848921083 925214596 295346837 404148740 142089384 846560330 497889778 619962601 804065670 998554856 748796232 815339789 132364730 231347512 438811216 634409875 364314479 492022707 921403897 982424484 223259045 544344023 122331151 568632249 654291185 998933579 666079520 823908780 885671608 957966229 871693382 889215499 859611802 923601587 644525389 668046915 854077737 983789570 665436951 687008522 567586954 812437555 571629323 607443260 927271750 980156257 170091496 713041335 70803892 347284936 526091898 562446950 567647785 807169686 935295032 955315243 539343975 749843441 599284215 787834268 312679777 454216832 690192993 824057972 360671077 388577429 464061652 695857478 797830341 831607346 523823143 903906038 163461597 306540838 521930184 755478764 427461447 741239440 207111902 936925250 366618242 469299560 259391638 962204442 241404070 472596980 473587498 972455532 541812036 875011952 880743614 972615776 741601923 916451148 660154967 759353034 36451808 216049689 538947697 650192051 636482243 894586888 627405188 875065299 171700018 392421854 953278485 989797410 246178995 344399908 958024658 991920869 804820637 934324909 118060334 129352119 220899695 786767007 732027323 759384766 526719058 714795604 752192130 878970990 329796288 967372992 420515806 423402062 154197796 384353778 515209414 691753706 215776174 985244272 175331861 360978012 480904220 864011469 832579609 871415078 321892309 822913059 929272008 957300920 741764006 831905915 961948980 968446742 614457574 847078595 425149450 685245246 30255826 219794460 357072429 832034557 910415224 980810424 288114902 655293100 488883250 832469011 683059942 962090386 850575051 862964037 233866399 387519149 725888911 745841069 373024450 857117675 470948414 729000256 783390631 972572604 929108624 956286676 405530886 766132493 512533842 895340704 11897431 997014524 947486119 997492425 999213493 999678796 257734642 694790845 947269408 998950740 789135673 936353320 187862897 425243123 994381411 999926929 986190113 989757304 489494212 834736188 227841680 410318880 785911940 900948849 924404619 963243506 356315688 921322747 396492972 613433666 986911532 995173062 395783937 543249474 945918884 982017444 587042291 780162558 734990833 928471984 763221886 810459210 418963884 597986366 431786431 486348909 221476315 952380434 392003237 573937584 617406615 936185224 59191617 198286892 278136631 810071280 944803003 980455243 850378687 977480764 147412965 652547610 90667753 276140346 68743981 945135644 885078716 933593650 249979323 616367541 992861114 997285631 856013218 959739968 568773081 856399201 584961129 726967775 60994430 248033552 149309362 444701796 661448879 882965537 362917292 978734754 882001088 916789660 703667821 771995611 990881647 998759526 415881161 801695163 544391574 901546483 750370602 919032820 8186428 194833475 726968031 777047360 852249855 959551629 68923955 775264707 586078363 985060400 639038163 818039418 686195943 856445112 35713191 886208187 413305678 475959935 631637026 686675309 891640502 937018923 693172197 873076110 128914427 336439595 875061811 898190399 313765333 662210067 92837661 174343729 223603692 899426072 324553420 431351525 178577550 939456674 633079487 658791920 781736477 995634226 638468707 818645981 475746799 657341428 422323537 633334264 122603199 819188814 513656820 536373474 239537298 706803895 7045261 710759805 957854316 998365062 850867414 937954747 232560815 388104954 191274762 724624698 144644840 970317262 782212616 838317379 103200621 898662365 179288827 874450080 177285788 807606690 405959569 981886684 310652675 560998569 206605784 416563409 637110209 804417225 87306111 123042826 706303819 710531242 845702002 943975865 796854402 959022478 947610277 967568773 454015481 962057917 647619246 696761821 630186019 840926041 875379701 948886204 770169352 941905326 533753168 873080062 519951907 894733221 684890968 839633093 257083501 767248085 542378406 819241370 974520703 997261083 565670101 806714515 839133733 902641447 812114499 831316605 618216899 786351525 519879242 611940970 869719365 906384966 894969312 908580252 725892816 742497457 304145800 331296749 124612901 647743638 718168389 916601333 580712184 987869560 421574194 857950786 127813313 476392951 435520360 448372338 252407886 587809298 944874606 958933692 934375990 997537130 100358908 737056098 755224237 918123809 310406530 445646112 510484691 931227828 782009818 872509162 266626087 721763297 491697959 580669619 402908118 564663750 923396055 960047592 922601124 997850802 60191817 229300765 309694554 923516392 279705947 647058866 205167003 813890495 32307472 587345044 932590656 975840186 511437189 861805728 92547333 341737579 243853097 601423495 43054113 871805340 183227034 599378483 815800422 903281054 688185801 972876167 921236766 948983750 665952052 928080959 764984137 833856905 308203283 553589829 4470785 254292629 608136851 929151011 875053242 916170833 609834552 747377933 704284806 744645689 425199041 993344895 306406209 877654467 845145685 929488434 940903264 955829265 788219359 788249785 420771998 608622389 416231919 978937880 670780436 822839853 740873010 773428666 783880083 886262316 890972574 995753170 879701112 969634363 116405290 916142292 763620926 811689998 726153073 824208241 567937706 940670382 200248952 722451917 24062302 758496810 671458765 792442677 806703315 852034422 345362249 460688478 972214418 999511157 89243006 105040833 923154688 976293730 550537706 712508315 893667833 905219705 597670385 724145117 334108748 782347379 162746420 229176921 765380293 876547260 970033744 986319026 676681089 682694708 125318196 187513941 536745908 992651160 928624337 942210414 343752212 590044917 23410221 51173396 311029321 394869407 893907012 932403799 148664877 435020072 987242059 998299219 211417637 654846981 779602789 850693214 135617817 401750653 721753595 783451460 823053607 891290717 812560064 977993811 704086617 727692310 513966929 907820121 734376651 842820714 848491407 943398618 928396481 978775763 189979385 192496480 808980333 899441274 806389221 925705003 489895883 897689922 103738826 740515540 415468134 520756815 497601863 980035719 632963067 891701401 186076401 876138032 474439225 953121305 666802228 667469337 487343934 637056277 456176913 491837076 553544279 855120535 169739405 211826087 340353878 837564763 24880637 898477281 894114842 988580392 746574339 836241743 559299252 665534535 892493665 973315451 253544026 942248168 162078435 756957790 260892763 884287698 801937663 878206206 739057042 962661746 980788360 999589148 729649518 953731693 353713006 535130954 789281154 979927081 173472782 272889316 704781613 789846903 646031190 665831339 269909344 282898058 136502165 494068685 266915217 766090055 582324430 813243063 50411808 247750410 981466470 982015034 194966072 423340372 946573590 974932064 830609834 918970051 315551204 504758769 388847056 462299346 626466127 654823184 507467752 924269330 502295361 824864008 416927353 880700104 235237203 999712450 344045899 483862777 595074505 671460302 417597301 866996715 727634686 953957841 563575736 796351589 915144386 930963181 354974592 662720114 316932732 627661793 953478478 971812275 735622408 926474336 664368707 713626117 827714342 948510958 278436419 814702443 224112075 480655721 856580587 984518876 90885926 620934899 695007990 767445533 605403258 615891018 61265002 759706108 715673727 873673398 979970375 985116843 729443524 927454096 801609824 970674848 91026782 684410546 141053289 440908376 907459795 916649662 113526194 713547563 552088673 953725481 482696494 562962592 750918531 974846443 730410570 928096708 918222057 957891607 611241002 707309898 357535850 870081105 386030669 757254894 149658644 398085701 827203512 906407721 145169614 217872902 202741199 732100651 454197277 993201206 709579481 908617298 899683569 977313746 941999906 963821480 555374439 969705689 894186954 985133607 27649873 418665230 777513842 957446237 476826441 802392699 748472455 764865016 41029406 468787308 546817087 611742579 268434873 308391676 670116684 923711924 14562088 434862366 4032894 892431966 483282100 995411503 789933560 792286000 697710438 836970413 201979449 805191095 592387298 722594155 217402056 354459807 43483898 952727462 484637114 517842422 120807800 687882136 590311738 987193351 717032039 834095126 126737158 375467707 480017588 572359554 294673945 822872280 958676014 978095368 423346569 918204163 668049774 729423862 481902654 850831576 880302129 888521585 413333145 920498627 753193449 868198789 428250432 829906257 224519048 747087490 516399390 969191805 120797002 497301110 180067668 973708310 92742388 534757683 990160127 996135127 856308646 900445830 156762745 303543895 453480832 730928802 36964813 202217355 323824515 957330351 302031031 592996603 647408839 658928181 608561496 895902559 797087601 812342683 568234335 864833175 92183180 884493076 842358167 880221778 908346766 989351914 942748700 954174552 421875299 791055697 12029629 827498858 573614672 700403136 290695833 393390460 265653201 867606149 837713555 961166825 743661556 783004962 201176901 365274450 822241931 849604179 591623495 659019859 656176175 989502021 842004393 849302786 837266800 944651060 460135589 576234009 479917146 685045618 957454214 996198644 301793258 863648129 288028897 912999252 367279693 669097279 136912224 314790712 437067735 582981477 136436014 432105427 813976016 815566004 549491992 763348457 687880666 876079517 768435274 966235316 85156372 715774505 270492910 776417925 816144701 863571280 420165858 515653630 748643252 752787236 694297606 962400623 657383798 926056001 324543462 981423334 72073415 228523695 88666717 978318890 201274381 570144052 937267075 952497001 994180301 998957280 844201849 947737153 854878367 975150484 317461970 460273910 890847036 921302810 765578556 840272255 553090548 738122784 213862243 769127091 831962827 870623325 925233709 982512177 608387792 622288962 270519540 571831121 687486611 985218121 487829551 491868724 640764257 891035242 645504297 662698863 864753833 928683193 117608225 447080723 366781010 833004061 482245882 818653433 252583566 581623664 341962515 961347520 312530546 857482025 892947043 899753202 119259344 278380913 857033016 953272417 891567431 992269567 54053270 916867357 379939895 872520706 446471939 542306400 690629306 753661460 73424573 785387209 139805029 805843552 24418672 537001945 19769095 310454328 814256407 998760565 98270144 382183635 453418881 545316538 227438773 742322242 32866388 575298458 424580344 889525180 450563422 594867392 81262331 959536389 727147199 819860273 45307783 413446819 501146507 625240463 503306135 529827714 743408668 830163665 495961062 511042318 872949436 885955214 442811079 770805454 860356054 955670795 967112208 979050505 513784108 543257986 9525701 913276591 799833057 883581416 962449433 989643033 680535293 778336847 826902274 847643698 967085918 993139465 475056359 737823926 686857796 972820114 984552976 994317797 219647264 617868027 254512401 940824829 907381644 980077171 722104797 906593329 335421433 368344405 739314470 911038755 278394167 539903725 286496609 957264444 312919142 326450493 922657143 935133372 139962752 886914008 51962732 380695968 421839774 601224658 265160968 620947432 57106729 486366876 726989676 760446270 972890855 993083984 234826424 500021043 4330285 313743530 799547044 933266404 499876466 914024926 611434800 673044054 657328193 749751330 638277380 933482427 106379338 408668472 542180482 670678762 321025705 541472492 94851566 902674368 937768691 983527071 159309737 488007949 870618366 977233524 179624974 952839116 219492628 750643907 100352900 256439458 574262021 600156545 435599309 961447006 107919302 879058961 403870359 840896416 53624009 943414437 424657944 941397272 552114808 887377048 426751660 676054709 339337904 856769993 723903440 836081681 497745120 515703798 690216950 792744945 502321336 812577675 821588754 998365883 729816384 738305221 115217145 612096389 662602519 829526459 459546901 878736389 193406372 883162428 836758724 977431230 3419765 272820737 904445405 975054150 22454684 293387549 229443295 303179969 7529471 91592709 977316525 977709541 208101484 640816022 639181552 809979715 215230127 215248714 60500475 853569841 133813846 993356753 24168658 594843362 88356447 944901080 825225858 966219732 338567754 414244327 852518268 996013494 299580540 335638099 650237248 967359902 484697639 492473326 802049491 822149467 575614854 964873013 214565653 336761116 643875947 976769561 249482544 266869821 300929977 471854838 479032154 965902968 155788534 754155949 326538658 486749399 149071359 680560846 559699267 917551618 639627586 689146197 497844343 780420492 102297081 939063310 440939989 531597047 73805404 284394245 337298362 942859995 702689726 750739340 351793277 534366048 475624088 485221217 56390456 603772022 345305761 514388382 489455139 980833422 370074294 918708373 357660824 893201486 519202908 881125914 271521148 697544185 461134707 647473742 34108030 347887095 507702292 536093686 717891880 728123609 833174401 880253400 649215567 711366919 596672165 901186378 973712231 989423015 211008407 403583148 62291893 350704146 799728503 859199319 496901296 667747370 420889889 756534121 319969367 330728204 101573030 924000635 113861295 222074964 96292732 605830154 112256218 181077656 256341390 953729385 938614418 950708629 438211626 731254978 210934669 947213083 142755609 379583686 281828119 324636365 966436109 995734628 435575853 642204451 230978298 853160165 417743683 455176223 144235010 745761406 234246646 238701863 913312112 940025565 342411024 634025149 854405726 996913919 130968881 144247071 953899127 975202544 25105839 472024988 667283860 871357809 594015146 603862639 521253188 759729495 325384415 350540710 260622208 641691846 146727030 479176273 91557223 209983877 237880405 414463730 448885236 860460852 809626802 813155743 135616097 862121295 579330085 598739491 279160857 542272947 900081068 907918412 480908587 512381526 527130003 857947244 47400906 156481412 896464008 948728206 288084406 933186314 581338444 780270285 626250767 738883856 982385194 995688298 732219350 893940751 362311551 454172642 106217889 760190502 20681342 846389541 694086979 740792937 626266360 761271752 394875489 457139704 678423906 972302558 459951186 664073337 926599007 962310023 970174251 986241057 287979398 412770969 937242252 957013093 964217090 976961302 223601560 254956222 752166586 889408124 49459695 234805296 967729467 973703124 300398158 894628310 37089300 369509840 372577363 758263294 4293439 482379219 184041662 884630603 29453032 240746994 291450924 746069946 289710070 360649446 544465683 598635498 297924291 683785135 956196945 980928037 766243490 770196813 944746466 973679025 318858262 387311893 637834981 976138519 627300994 782328023 55256978 833178799 619969098 836186964 408534574 440333498 878435735 967098349 624697677 675525612 123419900 652667561 80855872 459299635 71124478 608147713 313308376 778207935 886408581 919842834 446113881 547560359 772951405 960015972 791835561 924154014 91665658 319643298 502189823 693868524 446131434 922068796 1884896 595640356 322687686 370364744 102613646 215226223 498198578 519917631 675472788 809412378 138556973 392038959 991093443 997009819 105134159 532849205 599804906 870846314 354951582 862206264 784917428 813688080 811060205 984719036 874287747 955102585 785420573 913794201 455792208 470702318 742460116 947685306 467509051 629028139 182727201 317378138 98045170 442133912 512027644 632115490 356049963 572590718 789390215 909184673 731943278 906109367 641447355 969784101 805884151 900686987 218217665 627370805 95950350 791576420 866196253 871240236 326138508 740879607 842553639 903883911 261330674 380536703 590803803 776954160 735037663 971566517 13761717 961034802 512886686 606461484 341356997 805144861 431537489 532422004 796332844 907770192 192329411 927444254 913661672 972998304 774591744 828862388 282224425 928472294 810949840 861113336 85684539 652487061 71357287 178110880 534888397 728395133 882440308 917770380 688406785 712628556 471052991 496901240 238727894 704800705 834484453 894445094 937802429 964918862 803053320 843563673 716039549 808530879 924615619 944396046 497008318 767550703 38761323 137180312 189326735 463944030 527709334 866943079 811824995 991195115 627017235 898052878 598217194 932289543 878238778 930842193 909233845 944660407 131656313 977157253 511815990 518613975 456530376 900132171 930650436 939604785 384929090 531320368 392897199 694963991 987673925 994699234 543447203 933191451 833038295 837108507 882182456 924721107 975533472 980226414 494142166 838495528 670918706 680849715 581120714 804559915 401656523 756651651 775194104 896337492 157294077 553134571 487469278 652096205 608521011 815959791 347222521 799279209 492542735 575237132 489773223 661165723 795840097 889691613 485299074 554351874 55065892 66528158 685895276 894858751 919236910 951514890 837716122 993252361 163292502 994307080 825776039 906278146 974428208 997898364 23194982 903877146 384960167 617191031 26018262 410392420 126222780 280089066 26772457 893575117 21785258 212912788 204142907 741736509 195372857 640857540 954383989 982479945 423564175 954904421 176077060 591906968 969965800 998581525 98754155 189202640 600885893 988001886 614704798 637626601 576468446 883562800 183118611 269536369 294111651 793943805 938477670 967035534 446196279 959099214 912180979 989563780 383819173 637249937 933459359 984395281 986231904 987852087 315323233 947536335 352014082 537990428 581209743 603595104 192307620 550552987 488862998 635936910 321449771 706087759 108847662 129534202 576196849 930084000 368791950 973430763 728935201 798096076 161042667 516202579 179737767 530879537 302673960 791482979 10714881 845982864 306384319 646339932 285463602 932504634 703977783 892332183 300775126 949326377 269147806 495651047 847528499 850558194 129682435 360832158 556385396 860965456 745250706 880406998 723306800 900662433 701269217 709710075 929680063 941955099 948106577 993889381 607952985 790155416 193706805 334806030 166038665 790697585 155527419 286816609 681369141 844059856 945890225 947519120 836111859 862815444 880701599 984598400 978592115 982589677 477694673 848686384 158445208 425452045 951203662 985696412 713510056 859368122 290284004 459402623 783368941 943598510 52477567 782562866 14035877 700953167 750925552 846596199 735446999 911793724 328268889 702651998 607829951 862516162 429516134 940000510 674853229 728427567 678535213 693601678 230696887 616449931 772082740 927418000 738289742 878293890 946766857 974277100 549650868 657366506 386346837 489088705 425793045 428759729 774268240 875433743 863169261 916174733 755243061 984531401 569734980 796828489 775006755 825495032 574258620 662619445 494299847 494336522 619859444 808482809 325257126 605102063 727256899 828780792 2063450 93294125 950009313 988825831 161630371 768426200 408111005 424424498 477001589 799174084 394761325 505734399 621038653 966085990 548804948 782359358 412022572 512941184 323300293 501951941 225199602 942606983 775563263 837222534 886497518 960039025 475609280 666215999 277520763 834337443 274518147 657296773 246161204 750236573 693681046 907336343 364658891 961822813 715285571 744539392 92989085 486206645 445656794 652697484 609634144 783000701 466776886 634809593 162908538 854634236 839335605 991070481 425749210 621922349 394221208 973940943 461450945 516312764 229038438 340080478 763919124 930064939 513120321 971910491 783098000 854836787 650659851 817057212 123717045 237525667 496732050 548188063 580672853 826450901 766018299 962264164 554392918 898679196 989244709 993618565 304011812 664295712 980001394 981307085 462726928 567811456 293818818 719916529 101254745 194233194 84797508 335597203 173547963 387682046 82308595 722304770 78881531 136913300 937077222 999035372 303409651 652958282 329723053 916541776 757470518 761716261 474999475 509688453 732996520 866654341 935197387 964642440 272106769 533169384 871735108 939519478 135154447 974439045 193129220 370231985 829771846 882097665 356112054 870011293 813856698 933013532 870238797 997490048 201183241 660944258 814038940 999185936 968273027 993982102 559233470 679029539 248959336 620375276 348588004 700965089 922469012 927803648 309516597 368136465 782598018 891789569 970182704 989779243 248170820 971872761 26556097 198710508 85972548 814489919 342529874 353203175 445869750 804558216 756612866 818046372 152525826 567980120 675177529 777474510 665730168 867245798 186300652 982543670 878569510 908791583 988656547 993778688 650458519 981223114 483766567 797681206 118715635 190455492 428018645 590516617 188761688 681171187 229226107 518485034 38207096 407808617 744390142 827227191 437582750 714149003 285876165 640639622 110158704 169866958 216474109 983064470 201954809 699322856 290133826 951256577 496687464 928305826 588566430 702713832 745594076 975464570 188611355 253597972 711442396 781948852 653320544 926356033 391637492 869886572 868742041 879036247 58561584 675157040 674016525 779027699 780241178 787717785 918336746 977666675 695720490 890745112 91561271 352120059 463706248 669903919 518580450 846066426 145880082 760907106 697437060 867976136 281430912 608348946 362258370 585689489 425834095 725370810 514041218 943226245 980584484 984640842 718019514 939098630 572502678 886931834 318039087 446345674 962212512 998003133 878834822 896070366 733658026 974744110 525572808 599695622 836561040 894489596 95866602 655670445 397812907 614531836 639479665 968336408 944769092 990248499 295118476 708757525 631408302 975890829 341641445 843954260 17055767 333965648 965186153 986779701 473453459 935463814 730505352 941393713 704369204 755683248 527722931 934879570 990332488 996560373 410115928 446338311 83227529 998754378 784435957 943661308 431320326 849353518 995962004 996189828 48340266 158196898 579611042 985883292 518390612 979886826 307506155 855889497 745644522 845189756 634548846 982617692 185683920 265946706 344455411 764280838 815401014 853650266 746937722 874915358 491666379 910046491 887830497 986364001 461400670 937859788 836017454 995019173 466217441 736759680 804280212 905534907 574287703 923648129 714201158 912067815 125240780 481749767 124210065 897117836 69809355 819139086 145748966 617491669 629410762 738995176 75126287 698524804 124685642 650962674 636603173 660085753 37438397 621235310 692808868 840886945 813469739 878440061 469628214 619828922 958596976 972680616 393476851 916944347 521904182 614047076 754610294 836705796 271414710 881360764 861005123 939117669 175836709 453646121 885562568 923536309 357684103 970486869 640583396 768948737 448622247 862773822 889522100 934046418 897206178 954497324 33020460 86795307 177628632 843333484 782123833 961195717 324088638 841878681 618288067 620063816 669299090 791543281 397463384 896065857 360428970 696421086 724742277 725332577 416857528 636516184 851946640 943372175 151178887 227283518 306190858 977489503 570278797 962192737 44771240 835413981 57459726 345750410 520593342 801156738 110509041 703663072 802518825 944363807 957740953 968642817 93455483 142514315 722987671 869661236 34671418 413371463 896323261 983449574 215836477 574908133 261426492 631824325 838640290 991849445 848790996 926419749 906889482 987547523 830445783 932338067 540638806 547206414 431132518 529249191 138471002 507825698 426611697 548794852 560639815 790795857 461550837 987603002 830391304 887486161 337374676 705888427 735079107 822638407 156983898 640746882 617692135 811930084 558041792 623474401 97978171 592177712 429026741 790206518 297708286 632972244 402761048 881088986 556328018 815820129 174125128 999257262 945053630 997414017 956175571 977657058 261239513 972888362 839006706 851175556 848180607 959691859 502769748 555036734 106898242 888026426 140730703 214262671 970987757 982235583 655977658 899064862 690191594 893089058 876714444 997036508 707525485 862426623 435894881 776191905 569013054 674091507 187501795 446611007 698857230 756349746 897929237 964838895 302844886 321118788 350071184 956228883 149711605 486168272 390528511 917640811 803344218 828955291 426355121 430785753 323910900 375988755 439649358 505192152 325941941 662741507 549935299 785735271 991609783 994619105 659929013 810725982 979433587 983280803 935377866 967148047 438214289 891459409 130698140 889065437 711737225 754323734 92987233 983501443 817297041 869052027 848690024 979931307 885241821 904541890 66222445 591260036 988316864 994810250 159754458 484157752 75655648 103599841 321081142 528558166 207673617 912055445 46126356 221700836 4681230 79706233 769671519 984551023 26506238 228925505 425559264 566936299 494554580 968228499 721866136 862881100 754884744 804566673 319743164 535775606 403849813 471022744 707200689 724325779 162111827 944576313 745052966 821908872 344327182 950314227 46049284 617594536 143515601 662824740 97515427 468800628 585910016 836019316 593419755 882023145 463779326 893501421 325997022 333049866 862887886 968389814 971427772 988635739 864403031 885035326 969398593 998799782 670272501 754970703 500450706 922431999 903679064 931883041 942591356 968915484 331260946 525197465 904346585 922958658 422605434 874975834 391260522 573937492 78928887 769713633 769482681 972757582 590402695 916672086 392984767 529390719 19842811 831448022 145032536 943193562 16540443 952752294 217752671 998216289 794006087 878226878 953117388 968591966 840384581 848525659 210568619 963920644 256780161 769148404 910454538 941401982 711829434 791122284 307136238 794895859 185270905 621953049 492155174 790491773 888518089 889191134 158194168 361212655 422343214 890944859 99592235 403734893 494218109 973151480 749279178 795986867 189906336 377260837 371346460 792451268 591244097 931474584 745851364 832075824 196468626 919394105 218407232 309702517 549698195 694201116 716926245 867976068 891706222 977540967 400223814 992298225 780331726 981480375 515623854 828579795 15030444 982859892 408316552 500951262 140613191 632548768 139193969 784078899 686167007 697783116 557686436 894659524 769675254 953491400 6557953 114572536 448827266 502919209 388303736 783352993 836752338 963127985 942167047 952471386 267723467 336739588 339674035 756937940 902371781 969189437 579056209 784012437 460594555 563939723 10623286 688904205 571805866 807512062 332894921 524034824 199008369 825719233 358233066 944705366 347474522 789472936 169064522 693376544 299558491 951854207 773148221 946662884 359186239 950873044 785857140 918519680 629348308 873748005 309448929 820017473 23102119 694183075 821279376 987295474 653390418 678612780 415525206 568993862 720720273 867000387 3794400 206937706 379025564 383990844 884843186 951920313 276180910 395602105 463929438 789723147 147794885 623558008 810934872 884436081 651627307 843562099 145824084 657127465 381221668 835583211 494942320 842411007 60232676 67017104 535352959 682754493 552864604 689684532 259750913 350651879 364328516 925722343 280801340 747878544 300104272 851646377 246054752 489936894 692849334 855745293 51025499 641570920 109496836 166808869 326077528 609267175 229693630 377641885 650511620 840792791 228463580 509193140 982180335 984383704 479638805 795080425 263825244 638621189 625412651 682344648 403843474 512895013 879494208 897276479 48937939 779630903 846615625 908354402 813353156 994667884 965468002 992799988 977398357 986336679 379823450 519214776 713206317 890964850 441316519 587538847 624669604 898706094 97174248 826362827 351671722 691683125 247273138 500242246 394686538 802603594 921902434 949364681 455152115 599229437 660856529 739131211 790004741 905071180 35241269 600245980 672905022 738805258 734614111 896455854 641613059 667604156 461229892 786970900 433908313 602767614 590860759 898592129 746098712 861418086 704982439 858641650 633163879 668445367 578089837 908026097 623785788 882839697 835707905 859914336 180631572 402673797 507230794 847683194 551378450 790737639 338565689 412864584 501347001 867959806 640902745 843978526 413890274 768929018 5362959 628917069 191717310 639210508 807702023 947975498 898966756 901116213 99018648 797924002 935465749 978341953 64362678 755849970 861989101 883748493 93396637 407136643 782430973 951165163 363080390 810876735 648587844 909145911 989205369 996460986 341505000 420278892 264157543 661651555 32410729 470427494 553716558 653120565 156628317 360626946 503548515 831608654 12062277 289655646 392350501 621820650 471596390 885506424 497442676 707890055 933724225 975295513 695789389 996263553 492838312 502935698 44244177 178177009 767935877 977307062 404105669 627223472 591679370 648247657 331735017 882832050 474889103 660066744 432594908 746227471 383012689 986863709 984511470 998531156 262938965 503079529 746096953 867631542 282945334 350130756 217438319 262806792 194808187 760232051 254877420 980822153 799432012 830943721 158708102 773449731 753004981 828062710 434711017 484532867 248996732 701349244 527834289 854852010 283142546 659690941 19445655 550768925 808618303 816348153 187652522 944116126 579681771 981416219 989694262 991476642 714262651 821035168 735841643 854258601 966930056 992102999 27975521 719082579 653234129 874240592 654540636 856744641 757460179 890585876 679922222 707103546 204546247 767173798 703219056 872779329 176716637 214580929 856055430 861289578 957443147 981122261 422376858 597701856 509368652 816197134 714813004 873404588 332095749 734285692 109810088 252478611 184568495 822996889 416285623 755571502 928487840 933062599 312141392 365510917 241523813 641972891 652610129 817209480 7136952 409134417 842283911 899693607 737367927 975285815 808031693 981227319 372316610 650587010 856680546 997325531 824181668 836684072 947830950 976157675 128751294 589718058 495098756 592746644 30576571 222253543 548689170 684976242 126030812 576858969 18728388 181135689 37958297 178419226 607656079 671919345 185904794 443630385 678209916 978069664 429559869 769194138 798442100 999118872 144286472 144614666 852893527 921278965 147192437 564836778 228743952 626889367 570691010 834258843 534669330 910296742 843185680 886534368 585936815 745763050 101418564 216149294 426770851 946137876 666104664 848485940 856878936 994285366 374712477 463895074 76306840 985620833 593569771 653279093 718070134 730357390 733496639 804416388 416877725 863791432 559024577 980308710 737486174 879692872 563541735 881340083 558344409 751091797 327461711 898498828 24438285 87007657 827467639 842976546 875478164 904922282 246333193 330899097 750051526 913789095 599566780 736569988 496707125 850632649 118498839 326303285 28972648 106830394 384426035 552837943 344804627 923368882 807775879 937206382 659902795 664433015 360733137 423159410 634978074 744955736 189874970 502659420 3241571 738164150 386899290 746670262 816883221 971771534 760742991 965800038 855572091 905846935 625947333 833772464 628346030 950423790 626252998 816662242 810554370 962454548 770879523 804561801 444894866 876986708 939038916 966002898 556049722 951568594 288730961 347355463 212894766 978301065 108889310 451513526 67797754 113178694 638541812 766672686 645814416 961951110 212122850 962958273 506463695 947329921 193246527 752042243 187974847 754674975 410538000 809852763 583799208 769514206 892383418 979405303 571360365 811682733 897598524 977572806 688975697 885080001 469069412 709093191 520713349 653137555 981261177 990335442 309150479 472533649 973939674 999398326 777645286 949420173 365427659 579577116 380405479 501796414 144825721 921172225 268062150 925537205 798165733 804307318 876373426 997590679 524490122 968822874 250069801 325177363 64933514 971435348 958543700 958580814 134018448 814004101 742471466 871062737 996308942 997338533 444086924 572973381 838527127 954433248 808407349 999808772 589354720 751767800 783276559 783495642 127554543 905370519 552060484 680442185 140027614 812312245 620530705 825601594 892053439 944262479 235198963 871802516 363972338 841935523 567168743 959143048 320899243 400598634 73538579 856836892 113223858 574719527 607076737 608611954 763144337 962685397 825300326 924218927 514790813 535330361 816620348 849960133 706653853 717353197 98290165 731152226 999173731 999882449 653567120 692710035 800352126 900570226 88716379 98779431 350258452 659219379 856220259 914513620 364386225 619373388 926447757 956048672 238894045 776770446 574546370 725720053 522637466 546820643 110512117 759608795 923781476 962828874 147690076 743968550 377212437 387180488 652912549 656448593 918454860 927158657 931160476 978989631 89255132 305619293 225566410 509353700 529280971 964322089 961078933 969610251 516400785 832490779 571227404 919399781 513328787 575272928 36828932 705365473 96287903 781751625 832182021 859792767 707671428 942836464 595238202 802422630 27811114 113453066 166709543 503174337 584041463 958472869 848924893 871595451 693243090 697135028 910047520 950302277 388074584 451237698 488958159 918157555 869681195 921327676 288513763 483130414 34559895 561800053 390958607 544843602 871313346 987427086 776858866 929680601 203795926 643494100 228611170 592228510 468571775 685024495 297305536 743914808 76272907 947143831 806771988 865985353 986079874 993269006 138954805 313490357 904394783 910172010 875630455 987909638 356218553 980883409 362212834 489963123 571593684 839808408 722972181 776902454 807601197 895477483 583734932 887432812 318508290 813016140 194524297 378261617 189047933 923679215 577886776 594177257 792987500 875324679 158671656 260974721 121759391 457559436 908034580 937927832 477799967 612666136 368430821 923184844 299261860 884576167 709363903 789518452 560047190 847495930 136840113 808415344 473490028 724598066 720641491 843402231 359735511 745105764 149489272 728246597 843527036 974052877 791733480 843454907 590822780 682765404 464809268 819873493 71333966 355721141 904259601 920090450 358834079 521428081 716468839 825512561 726107851 810256145 437561723 982385979 193662548 825878704 823500969 957246670 454451580 732295967 404566695 856598165 862660654 938031833 884050080 939709827 336355908 429659482 383950896 774404893 258461287 455014564 696924802 777511435 582283143 665510008 137791560 679535930 58354933 647704103 659755611 834542663 516319028 653978792 655051865 860645366 870995222 957584439 186341487 411766094 600116669 887408182 496207763 582181502 894740485 953891920 94723508 428590978 466938169 840451577 608491714 815252485 587019273 877215069 62937712 219669503 855275187 953983929 469704913 958216739 837104153 948573952 661224412 901859742 753681345 906201736 563933204 902623540 553235392 812106748 307999158 461071967 332455314 693033283 250284888 543257776 661783998 900142489 200564232 406599461 460717239 768542429 899394316 908952173 128716915 577607588 689982390 922181140 111756612 727347826 487531021 738544791 55127320 965730013 230542219 845440429 869852987 874419721 135005779 672386219 457144823 912502015 502333026 535128601 391826342 661599532 621692371 953235915 286983737 904203293 401226772 951979274 128858884 992079523 61501631 167676433 140508513 311722437 947958096 987270838 513192216 562324438 244729916 506145283 561235517 881836674 539209608 970008875 871720518 929597611 596495801 739397341 848174039 851392018 125154180 266428959 602301934 629589485 206217454 589950720 370518467 782048314 623522506 858493814 379941480 910754605 476191837 495826640 703435120 836093123 598879980 699233769 780668852 967341244 113380674 418220851 882174665 907876247 427935353 728834654 776866578 958290800 567393588 600561928 43213832 960832741 110669771 539878872 221666739 691314559 188493073 758843706 533740404 685288484 232761223 472961526 86995418 850468888 88043815 750852609 23139993 992957721 684681321 918312608 802198695 848512900 713409441 881428961 548370764 555614574 16202898 982625655 419456048 743059031 953946985 955468129 574259384 720922518 6700205 101135858 188541547 477077040 432032183 839248617 429976569 713716218 468118479 815191937 703957014 736621365 642521936 990644773 871471106 984314129 859186274 993266904 594789764 918594823 947579703 985631034 208795491 770757488 75143491 516358625 362984832 446748889 137896569 487464902 751129955 992823835 563973708 726729053 180954998 383725111 804897016 881453546 325719621 422636727 42132615 134123178 454533781 775893584 27201684 140802525 9416567 986190655 205894565 756677265 348234185 384037920 842941902 900315200 72771538 938075087 356377747 450361656 25299076 538411182 331064982 966246605 303827627 546266035 722018904 881264733 523973294 560918401 590590208 863327215 784181503 979744892 895077197 917731791 950382676 981699737 211195957 476581045 555051711 767293038 292360100 607868590 887291381 974854274 719607127 880984050 994589192 997974763 448869357 590040757 756585235 860724474 896162940 934630861 92283161 710672518 475255299 904273865 843786189 982399132 235001145 860452798 94069091 901623893 821509308 876238947 182035874 576146441 564853280 615426333 927021388 982530088 112006805 323605572 907359342 929606515 532868587 542176750 472233782 952458953 838163966 885513562 612610352 760749044 251064101 346772115 955927790 962395495 266113970 413348629 973780138 977909785 383047440 651496290 433902911 997000695 269272303 916163357 433678688 698768408 101784632 649538683 536716509 990066795 306355307 816987369 141136078 268166227 79194232 926177572 680453156 895297045 513438088 658958137 985997414 996252067 922446738 936701364 454376611 848028584 902096423 989891649 981714228 990996215 853218750 923276259 167742075 415427649 208481022 822559416 714766322 965049196 967072425 985243314 779153658 814123202 704272539 946593994 825040127 957268947 306384352 555330928 359966681 754695899 575674228 934924552 94747718 597148298 910244089 999485420 32706478 858814719 711864952 792979068 902001575 957679859 219211703 370768931 808482113 930536292 409180837 627513068 494403473 970836770 331861824 967850569 872351471 926919464 328098304 682447628 570000989 690019844 881284170 925735531 735477925 933779172 681404853 892633875 429919643 749541416 34834023 748652935 704035059 730557336 806587007 841541601 15635617 900029971 998582786 998960901 300975556 539429711 72975197 709979359 442103830 837565495 603667188 976832745 485369318 821979653 304621952 470148079 64396526 736422459 438902641 463853363 666874949 951120301 118669979 947240971 743306349 751975508 283594750 400808861 780299603 820279352 248938883 278242261 838139968 960441603 56018472 410833147 701395941 830723801 321206085 650522428 844865618 923620691 316028285 984861685 120932236 559721994 310965555 405996292 645729866 754817571 443141807 998036696 488193134 534886352 316777400 537913216 582912461 910116236 231757595 237036071 448312025 683801646 221639786 832558151 129216490 697856418 519042722 533684216 825516577 894115256 841701817 967639001 378337725 844527462 182284060 934534651 516253051 630314616 432921082 517764322 742395 743759077 61952659 857921685 347143483 657353569 374777143 927228708 887814759 899168120 746970492 889436105 284447737 850851725 884855339 983640175 58882552 706690147 500274151 931820523 339226564 709313465 473548339 845716746 684094148 970381519 793707165 796465806 680443092 926167942 956958947 991946931 996341377 999490778 238091925 527909342 339272152 549524620 143332518 328991928 542087047 654552928 700702653 876493851 793650289 859343902 419062358 620970479 566141281 935796847 62445699 838905942 383280789 649813500 681785808 967099297 793366300 984799796 192493386 792596770 442194348 602557058 836342231 958572332 365290992 408248172 100042689 836862250 783906203 824183949 677842514 949218309 73834663 978133607 728541183 923195765 253545896 802954718 931459696 999599700 408900908 469709340 191739787 423396086 724605913 948478995 486660703 863860402 271245213 583777221 871303714 974721641 67630521 421509628 948558748 993426279 319338843 496511083 81009786 776484232 831701027 934155248 15620856 250728915 791339763 917284459 262401944 762590473 316056738 700814787 613428236 728854892 864771522 951969409 524988677 719703160 812256168 932222850 326106622 362075256 410389690 615047428 891249616 985092023 781966521 788567402 6284920 167437436 314157004 324395965 527207797 542330369 947766295 955410337 134050887 404823199 935823005 969088685 549055973 676493027 163363608 503691469 858214330 889352555 434679938 749122043 755393305 914406344 308212022 669346487 57060722 769898637 445632325 650222103 636004120 825455155 646968492 809454582 206757489 820800423 708827411 753223451 572684200 982347787 727042193 981565910 330677557 776265916 860098691 963599070 307281940 390062148 62098157 121464959 863991268 942585997 580160090 757282102 87308627 631664538 556281835 886246952 631987172 651822253 361878727 452201071 897105062 978416251 438900774 774885743 460142520 963805804 317749048 533717785 737561097 949293312 848884590 999122395 577207241 777789197 995233418 995913148 953895178 987046766 876738082 913872443 669408948 831905955 946803043 948415573 771751312 777360275 819593159 839734818 947752831 954045851 285332434 691749026 969099326 994320399 271246778 914654635 740238203 884829738 81716960 297543795 957064649 960065979 106508901 775409858 39932309 594560512 506765881 713506721 771416304 867338441 661030373 908130418 402371626 904068731 955828424 964731908 208387505 952359854 625507147 728356682 7410536 173962880 291735942 506609348 403061854 812945747 822870575 934793171 143112559 847394343 423825176 922326254 366081337 563147822 191942602 789964937 39429698 678081046 60982625 608494699 68543889 463548252 402642743 525733688 385090140 693951535 600145035 609900701 342734815 755127182 600782788 706592962 435827212 605540972 64261650 118836213 615738242 930898401 490056042 588928226 6456966 777617687 580191391 617124219 925954655 983412403 243507440 825412278 336994643 793015271 968285241 990388825 657235656 852724903 649067450 897409697 728477349 968708054 22273736 306883498 534981229 746180415 344449173 495469565 849002908 891186624 364817619 625588165 538118895 637479987 152740214 329030518 600722799 625788199 487841878 767607658 685603848 894730158 924341135 994627930 519546851 948067480 468999777 800092182 868204507 874247287 522840663 871297350 23473462 392165073 415583257 926528651 746987633 892032902 987891946 994500014 820714966 858519651 664250749 731704265 899780911 992013057 75176061 125393601 109083302 681353111 921994062 961789552 568166843 671535536 363234742 843016917 941113673 969098177 928799591 949656067 162697752 866934024 613254669 641562320 691866631 876729074 468403189 904641946 741028344 798227939 380060741 875762802 775514589 940279509 369777620 397734501 532261750 780613664 203463588 427599184 89124765 914585673 725475515 768264910 667709093 688532170 78423703 938227412 831031767 864845687 402196995 625136615 345033045 483835170 365863905 858955606 602757469 607173661 300780460 686073748 407934545 868209851 484303121 515142467 47439056 456803657 604060660 790038124 866092081 928892946 298834804 569661048 792458178 867781912 518568088 784757313 130482179 723543442 868733599 931915312 414863545 587131004 860618517 986004243 175782621 296524948 8075193 964690745 735166773 742668014 783581210 913751763 574232892 932555011 185002295 229758115 359798254 679481410 967630439 975389621 473613434 954895367 679385243 827559680 790571384 935962358 643700008 955739807 641450712 668885776 432910054 876564936 425003601 967453641 605193494 753562283 573297902 837892611 646063185 701325086 144340205 429645150 947171178 973887003 282325681 663332135 282573789 596309774 271915521 639628244 118590752 189138766 409996690 676826327 802657116 946296146 401449956 749739480 855740065 915944804 784684316 897375575 32625286 655776323 671990362 798800059 677723852 688689448 617592665 994502438 886020816 930332959 175055102 344324423 502532950 743318727 490832329 540951740 252521908 989891427 474225968 682055959 790996165 963559705 404676654 522301210 449847331 503131973 558571223 805955007 266215089 801399825 287724640 989381531 408454944 837644782 712628776 735189225 625386994 751303283 166957693 192629529 268571621 503207795 241533157 607595388 382088259 998689169 745477871 844163195 894061523 911296846 195775 343802818 954983138 991934746 762045378 893032065 389333577 989514919 112557762 262410137 310425059 728574426 20277394 272513368 312252657 897807992 273072460 301658643 829848998 996184913 303183321 314440958 37117384 281022136 427598215 694223491 827358926 907537338 112154970 807867723 458325282 625583522 124899285 383869679 887782909 893884716 392913633 613549709 736282706 885477893 599708360 693068674 722923926 766920509 568155535 719412029 96346951 676205383 172776799 750460016 367109268 553457647 533820269 877196438 832459054 919864204 141326984 364786187 980204655 991796892 634546758 833388874 177316851 308318570 991991597 998488779 644797342 933619400 547135499 914099846 236338595 558215774 462221853 991136415 248946328 847501581 731943486 825380472 887027824 994402541 533856093 987029186 757154605 802329031 258391921 923443369 751093865 984435023 791605656 795735249 691325856 796526541 713037954 932035308 406389400 679756920 781614545 788318303 772083808 827725736 948034973 962391010 119070889 900813797 547639671 661138595 161135986 409983733 412071250 526878243 896968853 948809292 473763180 902507015 713502109 855514754 652517417 695506906 977567222 980029707 184796517 503851014 324195043 992081484 728491863 901843234 118659315 705240087 923416675 937907357 488334068 882230168 950140975 960973400 912102666 996995530 500533775 941885363 718689203 729894843 437530586 760594344 834058168 837826529 184508379 649209637 193020222 981147793 333440560 492145513 607150547 969704872 441212450 458238218 41094359 676826768 987252281 998433836 843770572 918844854 98409143 244459313 314761724 418356715 689097702 835058792 664119479 981012668 645918549 762352470 279634613 977577587 683725254 888372126 334627164 621916622 19088503 402323879 509728305 864679743 379449930 861081743 237821633 586612021 554427120 808700509 181217913 689808050 265991909 714587184 792395156 983844513 923512564 993276643 627343266 791916865 947023875 986993632 639942021 669677585 293583074 717625162 213453295 577292877 142128150 679134089 772380214 932551783 539615185 596029647 306889502 675444318 244801817 343702050 716377738 993534276 911156561 913922140 424642391 601032924 959973015 994499087 924518834 969438192 109594787 496843772 535811417 777992393 368659260 857899671 907228846 922622852 281923153 562653176 630908499 895303112 932669482 944518879 937488645 944240675 166068211 963062339 340989387 708920976 808250494 855460453 986460309 999208314 986153517 996568367 497889824 714717762 671814604 673307491 201848771 457277655 825322152 872306645 634323444 943547854 923367109 926691243 807746589 914634398 373662691 963504725 232411804 989620458 276781119 737386229 496567470 636980354 666170197 783581709 926866847 956139143 237718400 727675967 30482897 718965021 195297549 914844337 90102652 525285457 539064935 772302527 676256655 778575949 938939935 959862366 147246163 341829994 539663110 930226679 935652710 961452349 430725309 963067298 887247280 949697649 30240320 190596816 724864667 804938219 468293131 973116483 861323093 950126497 638395787 763222073 628670904 754609835 491644241 827752335 901860287 955549882 57288736 669509055 85452196 540041897 346509287 966127468 827084294 920176316 153688204 590618835 329243369 907984863 250830908 261463353 933698980 969338855 705006182 754137679 40987479 355832483 831627670 859538951 437462103 552622186 625250607 916056520 4227646 651269026 312993001 370149860 759776479 900265023 888528914 930637963 615099168 730471473 833944624 858378562 95725765 788008012 810237222 978078199 914543218 979977641 763609993 875672646 875157534 994944776 567611371 722699456 324399987 616787209 261266897 966066011 167969226 405247000 239734745 702183585 586197371 949654785 700270336 816179195 69117161 291999721 818932911 935189707 585191480 676746898 108950262 386614849 442293789 463896984 841485249 883417867 337544056 836971004 442884541 799297341 325163344 981449181 883447954 924857061 149988726 682114795 320234658 573736758 846946159 979082191 195838508 254000782 330913902 655435557 608911251 942256998 331414213 816901229 122955847 730202377 825107112 902786994 939937706 958559871 498981602 932987878 750162960 766877220 454940854 726385895 762714297 784724238 308852142 817344556 718771077 996522936 886377099 896130821 354831610 917258926 22104513 748607153 86507313 850539173 584068050 635259292 284603741 781986525 432588445 573710514 846948878 917365205 311926501 947335788 192115239 805933009 88071333 801307288 4539706 684318756 671084988 677577300 933664997 941435161 171553067 976945107 612116315 689918740 69414486 506298105 302108700 591251165 258560362 689958505 281945932 910634451 716757783 988416722 451567626 578847720 742926163 751619413 902179550 967500769 76641986 872389958 12458998 453113960 995657956 999758049 355587089 373523400 90342767 501236445 807677429 915793355 103965859 117003345 961229677 981937806 131510927 157052658 427025644 857332368 144110218 603878024 630245810 827768491 35695915 341296304 998023726 999726802 341402778 961477610 453083855 764142234 58894828 982078711 632506470 700631278 750795502 837347360 937493265 966108637 863725142 980101221 205280587 225274370 674572157 876308307 839556473 952869774 750438102 999040953 998885695 998897841 117832439 342154108 641794767 657010257 714134916 975364084 986178729 999574748 476092175 975516193 540671810 621067684 7628046 401131642 211118875 866871424 821847052 879055050 185648560 362473474 308484415 409529569 963719928 980686067 749069488 851850324 717200336 955826740 516330334 744083614 949444367 957799219 417535058 563011068 149552145 462353125 996898896 997440334 31877577 137303263 66902532 401621966 612120622 731789181 938617094 956364219 70946218 590345737 235877164 684343316 266437210 664294042 618088708 934506664 454879242 539718541 408805381 522238900 71434689 713219715 846653782 860944388 525186044 930652940 325959117 762336163 161432146 576376719 567162012 907368024 397283713 853706000 362099770 622208643 147880185 214120947 341341447 745164013 274488047 912040024 911891002 964743969 294086636 685968084 629048519 975536279 617232187 932830614 879869162 885620750 533173090 730580247 855326826 984991762 70341204 314961098 639542545 890677026 599709309 995528796 836495076 966230784 54201920 851540799 365369302 517858554 860973311 868764222 178433674 314632428 490688991 879241944 302803635 486243744 640612226 809135333 539143087 971646825 40684824 999741613 566055020 853578720 672272951 862231765 293651439 355106739 504710593 576313507 293390534 767817365 701112684 768011856 794743595 982241491 749898118 894199211 733065341 994408130 752776311 806782288 647934807 751563241 179144048 181628760 687661978 996195526 508614255 543394511 948710426 981453224 561406947 561776564 443490623 772466736 320943921 375771160 798998832 918121000 417282148 670428152 532649104 862823763 232027640 946657381 253515621 624849669 10252953 366218503 541016375 703817144 943149746 963213104 333701613 441409668 617350276 701540487 14501253 492333743 476945102 914657108 259658219 737577727 2547336 559721766 503266814 652164424 40158741 598586712 542144849 835736616 117846623 779195130 211972235 335836762 929565816 982077768 780905284 880986643 462249144 584284867 238652891 810843121 3998554 85924686 407156496 481545720 303120473 472617481 71071913 285860605 244834375 498200157 580256693 824708479 3444065 510309752 697954051 960918176 638612729 786637534 325691859 800926257 424096668 799913741 231697396 748251448 766164744 992959184 33828849 971040781 82093097 122822005 278395074 495626464 138223396 410228644 839838305 932694795 504408990 526308751 463883402 681348606 464331300 703506429 948931447 996831102 456949453 704717214 846364942 929227335 443357940 533586606 168259856 813725720 179717673 891591694 959077055 986882750 346982976 411074990 59753333 427791699 592275794 867787612 787987465 804802441 655294460 921989037 843612367 853678122 495422425 984696110 75043478 337452125 554991662 751338384 417411140 941198340 990737455 991016142 524724641 595805109 485634632 677682944 63371225 839894008 324296448 428290411 63038734 274977937 638246406 660387373 522130700 949041668 269292917 534999761 123327857 186042614 814400316 972231034 341415442 482522374 645689877 897172007 781392670 814542700 201332490 899407710 499725368 830197638 128260842 752170088 599116655 738325945 632672696 870143181 143522654 604721604 715517021 884530871 959692251 971197578 805352846 952367823 674002783 787092796 681836137 729166941 409581459 950220030 930400259 943193651 908865162 958068598 583589557 929400431 377818508 716559895 338941366 437081200 219142320 757049800 650817200 760523657 137821300 472842314 820421051 857219132 737125435 823926145 496911328 996578192 689792202 984400294 548206782 889210588 603892104 926469103 360222847 533764812 528026059 791020890 684880721 999309629 830955848 908697372 249940061 763352748 172973877 176678137 557145783 634600167 4212438 481910798 547216176 572812590 646934244 695900250 877406314 979623889 903228779 984894374 475513626 632908719 210415325 954643433 591247054 995093232 61076578 892242708 170747553 437566865 658809533 719227914 964227330 991583681 742065817 743543631 482227095 825120818 84107455 736612809 316372345 737714525 170253718 277498717 584327934 816197734 456679014 578619138 763182287 915911526 798441283 864270365 327226678 946295320 650726072 840447573 92116186 948833254 9686377 509713941 443685939 588041989 228773468 980299341 864648854 959179944 17660671 827261344 551216014 942982015 340439839 410955297 152520004 501742498 549478979 841662258 435909026 803842409 329672768 705560325 246281994 358349356 686292029 756544259 830564694 917769981 575846586 784039871 250239171 494794469 763459218 833769183 877788651 901221896 138553 999665667 906872058 956702260 817172446 841152281 351191736 964562121 293019976 407759865 364132669 892831985 262315047 386185442 670213999 971339719 270699470 782992271 419150858 569791064 626930009 814635353 630555921 692612150 546335200 696691459 980493009 992892787 155550471 850031680 558148588 827357490 426728358 723226658 797754121 944999952 639098362 980246281 917305918 931163779 342896408 976113004 634208910 864482710 318984512 678126482 86465784 366742988 326395735 873951382 473733384 824211559 961848315 970242465 882999848 971582642 918283975 965330518 711147556 875324460 73140659 320135431 48188709 202549602 381709935 420948230 57506095 557511032 58174868 860889423 614985193 941104063 979743903 987563073 905959605 909751844 373382918 916940436 163193361 754983895 287629268 437070090 988074321 999502738 505553774 742062031 991525333 996939053 739272181 746345231 73787570 419051512 179776631 450093996 650009042 860773352 819405283 883999372 677247738 840289688 868708069 994807273 933333689 938409104 924809011 978161792 680137984 817384605 915363813 950656235 891156261 992264364 465848215 958596035 935193738 949326450 89263324 354721229 563296643 744663414 868499055 907370712 973296319 978131975 775240521 943119751 204619126 773181279 72299326 337318856 588734515 790671648 874841409 996248467 938746339 991644228 669150905 902364823 187151229 590556794 259516862 750443779 166808697 257225984 534520777 645578998 637110498 734775907 387577972 829905601 16724113 594348143 742247300 795091709 617782221 671423290 255245707 854164496 782215813 834051103 484933794 708673852 898354893 986735621 344393593 886588642 95584007 494489145 658949172 942668544 886986288 979593479 402680707 509841706 159163707 450121752 55869678 189466097 385939493 971329145 24291758 449564034 956980955 959752713 611441679 710264167 423739008 482387731 754547701 936741437 629170405 686043986 916815458 977434610 603329145 617393127 413280600 486759109 36415052 105589904 65698742 662763650 449316419 464438606 811106248 847419759 903107895 907510916 567861020 876818505 217925016 914472039 130802986 891383484 906400669 958245840 710796641 910541802 905113016 989557961 262624907 694243950 583587773 868670079 739870779 987134668 747116552 849575458 50306389 913000120 247010302 525905163 375419514 843561602 820855697 842879466 984196139 999522736 706783213 724658097 9274047 527339404 340691864 343537551 453750185 506213854 335656835 533449811 138006887 965925499 991653059 995819884 367946031 692931886 546055834 744789470 567199770 633851081 796283447 890513651 432742420 582931843 116419104 540791278 627495526 781243025 903849751 941976849 13788495 655045579 705506176 796703207 726516364 872483055 333665216 630808653 716199337 821552720 548868158 824498464 615713603 966950476 200598298 345548544 167529200 236200786 990503572 994351241 99486320 336441064 931859080 968970747 808648595 902816431 363451699 587380155 773529035 901507582 822204410 835983424 274640095 407359553 854453699 976403237 44913345 635007192 9121021 307702577 424686929 983414170 955303196 976608944 356546461 421699496 472668964 766912528 231593281 499785975 807742374 863029882 157989435 925373756 246997818 876865290 911048064 924064407 388041577 967340509 560185420 703384022 999832575 999884568 389504645 968830088 855827494 869769092 857155519 870352198 1252302 802790322 159908243 566101754 993468272 999682428 47301486 984114076 805048791 869745888 667244777 764147450 295764484 694016460 854574994 874803190 96773199 844364693 835099932 917999827 52233602 93827453 805883562 890679894 796898404 979112997 576834622 996392371 790992041 916062787 769590039 775242874 669679984 903049714 179365234 932655259 701292130 713873444 522170115 663816035 537449304 892890282 30565964 257380026 523832487 903330009 168925815 257361380 267538587 811743377 18916413 652433680 435887832 980782595 162002240 686890224 81464871 371266168 578144924 995620331 608430102 917169804 960597358 982086637 966059874 968361837 243051079 791212059 468083103 554619374 752000914 870386174 553721216 701124081 867872763 997137884 451083168 601503395 996016752 996859028 608980629 690097946 15120932 320225221 465965705 843530231 439911170 905904617 719787127 725441886 55239758 942825559 189985350 897174000 464330528 866819106 558288218 635099635 741121297 820220284 23566567 99561667 980826409 996493044 613947849 896727558 717771178 774559655 176412756 432588043 438049881 925355437 987462766 993553732 692014624 941466312 363904419 573903068 346622200 376266781 771989062 828890793 711300316 793054449 140270388 303219533 43167208 43314311 303535761 614246386 824439032 939441961 85518404 115916597 853412497 938765415 826236865 913511310 424864489 948934187 125786958 515820897 943086717 966808478 604398702 771621338 521267816 876212964 195341314 624707008 178012375 942708696 644698291 877221995 427697660 651017386 661669691 898957903 833063988 899653001 949135407 974132290 529170500 822946355 415907234 453723874 492221119 911368210 169263987 488034004 289618000 305569052 760014633 890725129 693721653 918871894 495971709 983438753 865712129 904991815 743061161 905503049 571588200 661828454 824063948 959636101 439774165 852113453 213681308 414508492 805621623 896150156 615467576 885488653 464945564 574718759 130384872 971553333 758171777 887235731 88390651 369790999 180262626 299318757 879664602 996029486 336086944 741096270 934976398 983926774 678713506 907726488 510062131 743325848 208276348 923372656 924645621 965229665 639825046 729319260 752596527 759001240 814168281 834987229 517547712 640267158 547065288 781194033 35096978 765428466 870553520 994914875 265202563 404175225 895027394 974521915 471799010 792416534 6711852 702663981 901319519 928106809 531999703 960913606 590844921 905617310 645214876 760284527 309525453 488905368 823633278 942971715 293355014 583297599 598955964 641991556 861240860 969196041 248419762 492862650 714232475 771399742 727993454 845881589 253820713 953500018 150124105 664214506 540768532 812027632 6973443 28074104 99246830 245211924 581629204 899973407 916590881 978278664 451110982 814577580 263746568 905125347 864670858 889133241 103078459 331438682 295936028 906415379 849700975 994949601 806615598 856939958 363233219 620047102 114337570 595602056 60144766 141244607 265758787 658303136 59715501 847625771 737616007 857167502 18304523 622157018 172047245 743847369 482660331 856464407 359803655 545982172 586418158 658232301 575045783 957017807 151672946 937333336 890910939 992412997 370924945 890485392 734063337 805216067 302899589 495915399 353596051 685448652 942663719 993488185 550968448 815603066 104204990 607505269 168185967 397342408 469399362 757630201 905683597 941906412 966881501 983561572 352094017 770305016 812368705 955033282 641612831 760957920 550321135 758350658 694614755 941993917 879362137 982613608 569973267 940976685 760721707 900942306 883275656 897529998 324938194 890326514 908939264 913362478 424166204 425501920 348458096 591649700 297202275 992616118 703298917 994988571 852086617 874351648 726061303 951287591 233707729 600665181 786968062 946063872 45427269 810695046 192552195 336609076 601516435 920788257 867297506 931433447 626125811 954451612 296234636 447725721 741022200 958166015 595642608 761593999 594850303 906306768 192904535 891944861 789070982 811441926 29480197 947835209 427757477 686283489 830844237 941954252 546963759 619081021 672553802 675548538 798647870 839465977 214488517 990880224 985387375 987205037 256818801 658101373 294145017 303308722 367925019 558451838 444531485 761917981 79508319 822472090 433198127 776535845 758992821 888382388 393806312 549974772 960540400 960750948 766175087 904625666 289137233 475070415 796635772 942781800 420332970 681782419 521220086 975572179 997486561 999022984 520454921 906879640 104518623 299337152 590798650 734629588 585543982 739339302 190123809 469605300 411155985 506988480 532439313 542151966 220123681 375229197 225908861 241442498 760557653 762221807 485945153 875146101 555455727 968802506 514283182 778854635 644451131 963489659 804506437 811570827 816995417 961562673 864645363 932757436 664587258 949742100 40708038 149095792 900269826 955315547 2022364 26752919 241063462 667651942 202766539 386991250 570842865 907475897 468430161 895458716 992863025 996118357 465147784 764116468 997174705 997267976 403738357 626744006 646806668 792400556 528266376 667766814 317340638 728052210 12230807 620841919 663287807 956886458 83218516 626718817 547026387 962331663 274444931 420651966 499894397 650681382 976910090 993231699 377551173 886366385 229707521 355639508 80873410 902845283 313799609 342135106 351193702 909818556 310906646 503100986 532511985 698303353 943408651 974466887 423415946 500493238 702073013 907568783 43366453 303520098 45179253 576002074 218203977 514198803 693897471 889707240 425710815 478441238 149478090 235298632 288231825 482452266 962650073 978649024 675724279 865216374 145546945 266609839 121549750 772167804 477913528 927681105 977708279 988537969 694420962 985190438 865737352 978468482 722655332 764133341 234723962 452341487 917004967 927816952 762451439 991762836 799138636 851546859 668519248 729557443 744241038 828826408 275950975 986854921 136887029 722441481 107719152 514180419 537300862 897093933 739677538 945032779 672124583 822798960 665915947 866827742 633636088 901148911 908583357 996927095 158567865 643989062 128042594 268689119 504002493 517113919 84160758 940139592 899755694 922582649 715373563 969247969 201534627 537750752 628267161 702638921 495253331 546963429 582507304 595237947 393920543 863504149 322562292 530652637 883994902 897636078 585463169 896718433 586773508 621924926 732590262 954601176 382676236 634661212 621155893 671777741 106611182 144784326 890663386 958521562 591422268 730255938 175038956 776137955 356803685 536007331 101944749 565801199 155276432 497077756 718783925 915523522 142713563 196908420 832507677 836904735 237857574 501081118 916621322 933582510 587003732 791498129 286699957 800049743 561365581 883354994 898785043 975178625 678924263 713521880 60578994 526496504 488035364 630550800 638337640 946288850 196487321 720939894 484459982 809540012 769624596 857475589 459851081 585713257 221473310 598012465 752629511 827499283 936633276 948784592 767947134 937673487 4909250 480985872 204966266 921000134 280794505 816259358 866312792 975579003 297089963 453274147 866623974 893072698 693400796 978181662 217080108 616978486 805548264 939648506 535512302 793541106 317890187 447242940 498411928 892130914 654832025 811492789 981589359 994294493 218139188 440428268 322474536 396481016 492876445 826374706 339752687 556919897 396990371 404294295 728564801 782236668 53234758 956478841 90332555 286334792 719011598 908594756 828667949 872000317 493869122 676708296 848269827 891614946 976372185 979750042 284923393 650814311 793778302 876236553 970873172 981882920 298671023 635035632 537457698 935730463 456237970 998361847 342008625 475551245 519673386 986033630 310435888 362719535 306479084 560015548 723107806 746285969 882376453 936113416 744084170 914576155 263374995 981049058 849365537 964555653 840528060 933963033 958796005 990848365 407968734 570723031 771350301 910488695 147687071 398578041 727697982 974142325 260787051 913410654 601378213 849019845 692776040 982659543 432870049 775471226 632011221 675644467 100783818 481298354 471176957 901936119 748227080 774105947 364441006 399854472 334444531 455017746 206609604 677403817 269034269 811048499 951928316 968422230 470608049 524579686 847060155 992240612 260522121 406130998 17922903 381372766 854128057 957127242 887642518 890236342 461068344 907479221 90287417 833601558 613162753 933493927 770376869 806267854 167534678 552726928 284826290 519537063 159190619 638811621 260113204 947804316 443557656 661720807 927556937 953851838 261682061 514695588 45481410 560804374 409826284 485981003 254582041 333177057 916133388 936675449 22810222 301072235 236189152 635192598 543163675 948654659 865924339 984986599 232039856 890877711 349995538 897013675 322185323 986719860 757831929 956223517 36360723 626591278 742385984 933800050 174170672 628925624 347631760 623412414 777853840 895042103 727590807 851476367 304866364 754574609 262611011 490755091 144300105 785187458 54500088 448941110 860314578 950319725 550342141 642475570 625408788 802649892 15634594 55710238 530466420 714042663 684707816 887314447 391436407 911908723 485552825 652716974 106731491 107592593 768097053 885450243 36832885 64400660 372801822 752447777 867440307 922643414 335730215 427356220 154436357 383022652 283418653 927344056 811378122 926470339 29175002 340767830 463129391 678282869 205553906 443133967 196864207 933774523 571513965 855409760 752881680 794363987 29219027 849220112 846142015 853499863 347759374 663270536 486357945 846942106 138918909 742434337 241896841 248600010 970057823 972714782 627496076 811166824 617656088 724150491 812356401 812799124 110063981 843322362 19011780 727712612 594106059 812128674 8523668 830250211 415471280 682850902 555070659 870233404 299642184 956871308 478090036 940524754 419797988 701085592 132620133 308173468 462090583 643517654 869313651 976457310 910721449 986984489 692491754 834156316 959863202 963062848 233341219 293060392 966180239 976732004 279069692 477937705 243715835 432666288 992688235 998960451 6744987 734099645 649013942 972603874 587657677 745736985 770179319 941176707 414533551 771001740 591180437 745719964 905703871 993895097 384105089 403979194 338353741 731752920 510498486 733480886 759948231 846743290 315205025 796598383 570842031 865535214 186880803 863854211 223468953 882000223 60715155 364873769 549300486 594215321 671049123 843255908 796381856 805189434 790693209 889761721 154277784 776421465 713971863 892313924 693931617 815831038 500046566 892175458 746280133 761603866 592166516 867238407 952431963 958054269 298574383 914684843 924771158 959548192 400577431 938403194 603859442 704821173 808107323 906989344 375132856 775388442 450232542 656161657 828083888 832725814 271650079 966083916 610830540 627859723 544904953 622345586 127008331 378598304 321647224 501664136 658714887 992409834 436858173 985372097 838011364 868813278 112319026 432142674 52512020 257014092 693805917 720447032 257020426 577003027 690809805 713959537 547326156 990061756 557039091 853978465 586177303 738175072 537998146 743568143 540213842 727510278 71058540 441772193 916562308 979553469 91644219 289608929 940079680 951046155 611123395 706999003 270926385 447870813 466995478 999258454 276240711 531306364 871726088 996937805 886611327 998733729 297340421 793637640 393792316 649935266 869520040 963953158 661241149 728182284 224960064 811370829 366092057 544455728 363756674 947708366 948121374 973244149 235330223 298189866 819615769 861120504 89854634 835293033 821376696 824285092 681013669 782006033 649397537 901371335 549905815 556830440 914589994 988815939 198252665 295485927 575808768 974970926 759816043 776978439 760429745 861305970 794508577 855458999 530161444 984366141 219529755 814015967 739967578 826279535 361725201 740002198 392058641 968256045 590140435 980192527 160738438 261786672 692342668 976040920 793615242 986352072 445487174 984928850 390173257 589198987 749478926 878656273 937786672 969966221 272060914 425066962 734440143 986131300 244819698 868290667 130511909 538178541 606395511 984690011 303582625 489209246 468225085 926721117 223954806 459672961 544658917 859060336 978048531 996425884 152355847 998860631 177332275 257399760 367295822 394066060 626097904 932838281 21460226 491366331 531760281 788307319 846261316 852030207 775323300 973029970 374873106 878980276 373243887 749114320 157497409 779282970 840485281 866728311 201120172 679110533 41813627 737944015 278919446 460749696 730124753 933411976 854805296 903158620 125738375 795632398 923476113 959336011 238251044 345111084 505224263 744999902 762437311 877955366 805344513 884979963 831856461 902653046 141551740 916330278 48794147 926797833 971914872 982422888 855690905 986157645 90919431 949853934 397309562 743867811 242988488 331123826 98576516 288463411 628241463 869542641 259213159 576372044 284570437 505011246 196144215 734211837 202926963 446213928 841066025 913657402 797440805 882168780 181493465 368165950 953685314 970922612 901651372 967282506 950915717 998814381 795661077 904959885 928146408 958117504 348896400 909909704 576874666 985945791 135631530 969185704 591172169 653180614 959338610 980796454 863611616 957014952 122483340 892785828 855953888 888021949 955886147 976128765 19611705 667026173 621897188 862808360 387939002 766646705 541853548 988660798 506104709 956185779 264568468 647025572 620680246 806015843 938145538 972034836 670328392 800615179 892524240 981236333 800631445 845100491 113393268 714728310 773236560 931288655 69289712 785858483 168341968 772259508 797254925 839832357 938775709 954028226 893660691 959246044 725808004 766011015 469249837 524773330 841837098 881043169 679358002 997787822 951849843 978905108 699680085 896869152 184839761 299800740 998401212 999605754 720895892 891876072 903806405 980553197 559371582 991480886 708388600 950574097 213424986 477100415 253462363 414388663 903164630 915573126 11563331 232328438 393434882 985304608 443373079 958194964 708583951 709004072 748646531 914511904 564699500 717173452 793851158 850632614 333004484 893865561 136453657 603921113 596791275 659363331 641851251 983129291 277894071 647478749 879563554 926603409 269268806 829345729 614210615 650172317 442524300 998463793 28130640 323875606 958224925 978373684 405414658 825995655 442688670 844312650 720535794 805040980 533548493 937163785 706049928 913357431 26146067 97124875 183009617 584062769 971414654 973395872 340411864 511128868 403506165 484971864 310128815 594363099 581822074 621466703 565586990 744263691 216325486 553512816 476737705 754678042 938081059 958304947 483583498 697431950 910491431 940950429 86490445 335075488 180568719 821350104 7760169 94066524 189875021 521882796 776173690 810910535 110386389 593496405 229720719 639268379 144312262 999398019 12812270 833053802 866966407 877317381 671000350 855182921 702156 988481228 202532656 349216302 62187512 750598622 916626846 954992663 269597090 799980738 980030746 998087743 270854462 498542711 273085599 507726591 799998792 803472423 616749544 719367769 509947259 791752124 836293614 855703060 74433050 593467029 966094724 998601659 107355884 108199088 387873906 576632908 718305107 926422172 916976196 951493254 364871719 849047500 662367749 798633281 497081063 722199783 700208272 902269729 999466043 999814130 47736557 242217751 646645026 912440915 33213820 685649780 391563732 392156943 386819397 701260979 787093600 996620149 181758374 714769791 739761841 926281757 484989902 795472694 790254428 872432796 22634109 218700431 167858030 437950107 574729424 739559408 870034390 898890645 225217115 338663186 392176708 854683889 64432080 879745519 893783973 951428483 862012712 924676571 936429377 992588700 600611180 961130157 828406287 857994443 653473267 736769446 720695951 981793048 390237835 884209838 862293785 887895027 63781172 938423998 875103623 947325375 408184454 798597059 846547643 964092221 89445716 113901043 390075670 649790509 984072167 998618207 925025718 934401155 910057761 973888162 46337341 991279624 453699447 950259362 564721800 941448799 414166757 948676011 224624584 412077892 842737839 925291310 322807773 514076523 78689619 939047446 602248423 746683876 398383833 923997751 391217078 460121488 533801524 709051706 790837829 895556644 449300555 555382779 285258921 408715783 655515531 959873226 440745641 788945005 622982946 860672097 619162453 644591706 456812073 638087784 325264870 668323492 817042226 923695729 507536972 541395178 157310387 392242533 627369763 634618738 479939472 654898083 302065656 800428230 369850274 464745227 845445481 975898189 553742647 635193279 948878217 992066004 90762012 284948835 44276793 816715676 972452018 999017342 639096226 659378536 334774355 802685789 149258542 246125133 131088313 285325106 53286857 301547984 656229834 845453331 903610489 909081168 176783070 633169747 943060585 980280145 865151936 865480231 351335829 801681437 657075980 956996361 476926627 806559422 228039263 379413690 584184136 979146414 263925984 591427256 226902282 466803779 879077568 961616591 837054192 909526536 385924053 565678026 981227466 989041929 274059556 985898335 234719713 510884902 518498119 693594825 375223026 951711859 823203688 911878000 534640372 950422335 495781576 989945655 347631553 752011677 362204050 711204551 425173046 569998396 763879857 813071709 981174600 992442077 636380784 834417659 478745174 611965410 190720946 767499275 507401720 798146397 722145873 939768939 37985727 143513486 777960796 832252191 541194549 748718210 93377850 195838712 44462577 866343589 337609243 886555583 617865935 775585432 598628866 811927546 258526262 930033215 509934782 520520350 109200726 929224449 447336323 506926916 796864314 952953426 645991415 722838364 91468838 123707534 186492342 994261974 703458985 987227832 987699376 996258978 903022162 971298341 177154247 940236235 757314103 857070085 704186291 907581154 114933991 518672213 233001069 494136084 934717378 976036050 604124902 777617848 189472023 930357710 904630083 965001246 852693868 899435287 832215489 888625605 562506979 614205492 883738975 961430624 835102559 878244352 156540314 359724526 720241217 955494803 161444114 911829716 766846518 890559368 926782038 982366492 596482804 760791558 521424173 919040008 469310455 711271923 557088354 686938088 798007404 897636768 42331655 278362417 360649440 652367255 900654696 949777479 500428081 706427450 650062031 909667504 81329144 712929400 240591539 575676573 536124461 858169866 200713409 207928585 527262212 586609338 638076503 710353706 484232665 697934930 219840074 916887435 741077792 761143275 84216280 321083195 958884088 998169506 306512961 631898117 97062810 682290527 855630875 871327900 779413608 952533734 804275227 991555029 948478792 973915215 306856757 384073378 971912124 992296686 952146788 982385035 439838484 843546735 112628447 162607951 783519406 981478571 702267523 950682145 458636062 650729788 508547808 802442603 325019933 892359499 864924700 894675899 715027473 737906178 101109670 958008597 919388874 954201640 824846840 863696024 580132742 832191548 881769653 980930780 137919504 985577222 933393331 998982501 440805005 484894773 520243977 730132813 831381573 933782771 384170041 418615013 296055600 475017025 590989627 702770424 192588783 800030870 232337672 256131084 661604564 749297117 942690414 991251421 494339139 840202546 425858345 809101946 437112408 505532945 793206026 951244479 863917087 974739805 955503567 962117665 142747323 387326522 922171619 986215865 123097363 647964929 836322784 977573387 153349242 532311434 398549115 807501595 816038062 943986296 3465485 804146099 704019350 841500283 919315719 931987362 329150630 796852402 164671836 183929379 558116522 895492507 164255106 272388303 974489393 989195642 882489003 971525818 55059267 516534628 927134964 993564614 888024932 974903608 177575753 726703146 462411457 712489554 389072461 867824811 253845846 514136454 9339052 205160432 338949585 686639155 124212052 471310320 111819336 222256862 49484333 150921236 28543496 765005237 94380954 212786450 756438567 840294543 409865051 462972717 241066341 907425171 285561569 608449287 509522431 755135273 948288086 998726950 48645329 97862873 571748768 600538511 53656817 77656610 302196737 652631059 425008716 877649576 478726994 643810738 872740375 942782476 473813603 521637954 819025473 924169453 928861856 985393412 393553729 599151417 373491587 671849860 163898160 447908040 84861763 868937089 715774709 923494562 971001672 994534580 466204937 846178494 739154795 761080504 794537987 877734478 509503116 678029352 69831187 648682897 424629664 644717315 882307243 997304443 78268499 883883598 989573972 999136471 51590955 242970215 290505804 686856168 510602868 627839276 472694464 668865087 877895239 933957540 340355379 367570478 488549928 732736743 392273766 407592425 254819899 416220948 754960212 892315546 898284186 930598828 530627602 933884177 234932166 668455359 88396467 338435581 802815370 970689536 201851598 248734266 185867433 476943889 522537411 682583266 456470277 722969430 722820993 825662430 990101294 992594568 350903618 897446891 432715469 848788616 16987391 450257103 101674160 436849981 89804141 331591594 602505077 894722060 859326494 960365670 520927517 938325565 977305683 980219865 386245920 970299644 125064991 712569967 733436573 742096344 313513968 347881303 126852598 953145438 594876062 804674074 634701634 801678039 783549750 838979285 686989281 864741177 242616141 402804441 416167672 888686969 487028056 933227074 293736515 345456048 422333531 782661417 483444212 801415937 504372416 967051390 577878866 905924970 96607788 526378591 954232865 977661964 625240149 828186043 750241454 950965983 804790448 945228719 32313915 680397800 928431901 941433790 188033892 683650646 120772061 822773233 101611904 388135778 666075431 929383794 309749552 889944613 888865526 946725903 59772573 216511630 844197390 935630482 990272632 993861880 184097934 587151263 112541278 984217038 688916193 782738882 382168860 968411078 752261626 841153651 150059187 361894864 396675075 958855960 555325887 645261996 335492954 379704475 474350073 910713153 671774257 824284721 116033881 515213132 217701731 724901853 787518710 961221556 25043128 937644439 110490268 336483533 884025232 941929168 120689555 458011133 113352849 493347403 274716018 396617241 392972026 634492030 169518565 572899314 971307853 978454995 482247843 549358905 223750233 799036557 979515241 985940272 89096848 902447889 242567885 653313040 199121462 788276206 232451228 240850803 461756509 581108356 198600662 249509323 934737025 952700420 762872002 887041689 972097980 989453062 475237004 522357842 119121531 919315679 769028041 937911839 270696247 785590500 404577834 807505659 443713698 857912773 832394112 904458702 649522295 670109721 891457372 976434804 422755556 931401672 563511565 998937927 930948669 962404857 127452735 239413829 843276643 940769345 450305392 984106412 700054211 726190137 107960284 692619878 366220251 897723671 559401349 950523568 593529054 718279997 688776828 815844740 56445582 461869731 530724750 910674691 170486663 920429090 206288527 509591708 632165228 959962520 767153133 927887433 520060745 564388954 945548460 970476853 949611329 975157531 168372127 601314040 189528689 421913724 113730116 845727772 283168036 361553071 642627652 752348344 98041101 727287221 866442323 946096906 998467831 999839443 746124235 780636395 725872414 829002125 222347403 809873843 518846280 865235671 273307353 543847229 437779396 949862513 784092961 849394926 975607062 993581469 934341385 996962178 897325683 943995588 246403800 286073020 505390284 990497872 6402651 686734050 969067941 986806993 479963466 612475087 964462591 991073636 174534573 754368944 902847883 931804696 813787514 990640626 130137473 609530476 783633699 891554360 685207338 825643712 435060141 557185693 996636336 998945150 657849020 970304991 186918690 559362930 322784582 449918301 780190907 838775464 946219788 952523948 46497771 49380347 502399930 993196233 932682194 960040995 705885923 739427338 521637013 716058711 975662455 980271593 111654869 307434788 347050726 411010109 444073278 578503933 443841059 490045888 719191413 974010230 151233787 501084410 112785911 791216317 754373216 975257104 323347732 965440221 773101913 811517626 510171362 903659806 118298757 348230209 40865184 470511557 748310998 920633634 340215963 614481079 774282676 850521890 950879658 962962593 237047610 660236668 278247339 330226985 660316577 925774667 95496709 879373390 496611363 520012096 38199033 776586613 835362458 995440583 329146712 436368382 233345219 544116109 513709355 825101901 672965220 965599752 663182889 796478804 811622171 907511061 227710656 309740880 711922187 967172043 286303913 687203303 270660266 597896899 221140607 627452821 172092450 299272132 708854532 985905751 365058103 386932510 564917822 718615767 911303670 958987915 260576790 577688820 444437976 936271180 712390483 981622192 334013459 611089643 161010567 231263491 159664298 396455838 190305649 713430472 543633229 686170215 772613551 846443925 845385457 862481842 76261463 520974555 480613180 596984286 158552080 759898569 300594750 395115842 439472473 954452071 383027024 604258430 507595980 672053489 406257713 929435387 413742275 938613210 359746374 927987879 233572265 622650148 826681083 868169622 343825686 899160761 325013654 396666185 576602836 820578369 302593475 430474008 325203736 562986818 866675788 955571808 448258004 650099290 90587078 798467996 457379190 889130364 262668813 671184514 456610521 504594720 677605352 928682264 24026824 851712341 183250602 430539184 84343150 366291298 97492678 867024293 354072893 838051872 363378040 439206250 112293430 715942119 932749049 957851609 591995145 721016868 499237443 706236963 524207886 900525959 156586825 915437902 303968935 949104263 572938292 585087751 626463659 971886792 951044463 951654842 439681374 940726799 599823810 768023178 217590482 730908730 962059286 972688462 784093860 928484287 809680068 952650757 221386969 908287128 919220353 998362421 449467717 991712816 561569287 934389501 418432441 871422036 679831586 702650360 252379202 937475104 440892300 528283496 866923272 897427901 622088552 700540745 974655273 989271133 147981903 651730199 862778722 968187742 122074599 562428096 471347116 590094046 812673397 999475092 217199734 706177746 940131692 994914709 524374280 775819092 863884819 895191641 256483816 293506539 870289712 976857866 179123619 750205354 968718997 996582190 325614709 954777736 681661308 939335186 446022242 603151543 224692894 332132495 170972859 881714092 963416245 998636969 886813690 926164091 599389214 923250138 872577170 875261795 910825070 980617465 984648476 999877829 408461754 466700190 689926308 901297367 205996350 801088558 804077199 878705338 262213372 561247753 275969030 697815237 632764113 960209722 746351465 946574036 633034276 947889415 491782338 963960798 24925116 604172587 811313196 967996740 887947949 919244024 454573309 760624034 824680448 829907476 594433812 993225168 519587516 772030509 663870278 663960626 683868931 783889389 423851059 617486731 596976714 727595270 968346453 974501867 854650000 888284033 38230636 121503897 126643729 630942355 907588661 959084510 48347757 172068398 371766086 816903529 572180041 676795105 683035761 833713351 100541515 572230269 418841554 806646371 553137009 798364543 59693190 700494853 446446698 563700441 120154783 158263770 512325390 955291262 562434685 890850246 549930445 740173818 237492043 437532786 399286451 405606209 372450767 586369993 221404397 305347051 12839928 392376570 798096018 870608968 42818253 589590607 492149462 601053580 496784302 724901401 956812944 996787957 145407980 783724416 375465050 719763216 826106887 890004465 429047095 845852359 165980726 318798925 807621100 931693872 291008148 902293162 722849080 927399745 872568918 876645031 791978110 984343655 824245179 921548037 692214166 896466224 285907813 867512941 784958794 950833548 237883891 268061880 691962601 711291801 745158291 902041990 379806222 936188156 438958012 924595745 511823777 830642345 719541885 797928430 235650353 944102777 555000905 756403679 830026138 956447235 754603518 797690619 53063123 896155512 831994230 894988529 490406803 871122739 414526056 892501749 220539110 948216972 164657960 700139247 793937527 813166082 190764119 746785082 519412684 793400076 916545292 964865097 577258271 751019560 398661551 839315595 796996943 978151789 416662468 880116994 401836572 580796872 21505935 249867352 224831941 602843191 613623056 948990916 283966916 921342029 114284431 408907846 227504256 286317219 903621713 986664890 682116222 714412067 650817733 973686131 93896442 404274902 54427722 791755474 927604340 936816801 442404845 597421569 672147451 709837329 80657126 182810367 387004725 847050217 141328342 169601925 664122971 907566594 476041350 854591829 497012192 701830684 738046894 900371904 214774261 384849789 272014647 692098950 386499200 874454287 978932802 999312225 424044784 850975084 559119613 655851902 810365762 840986168 626862206 971144822 335967148 721879419 900698927 976644850 29875820 790381254 710717966 791049733 707508767 904145726 419590153 480417996 644742998 656226330 428180763 991296015 279194354 721112591 160364100 763983521 941916537 975343252 520502505 702361116 623070945 803841953 352564441 852255662 414737232 500816345 565323630 985213971 216533890 659167945 248789878 445774783 762152133 772548958 330216651 881497803 971545845 981955451 954874472 985579919 439159035 791200839 406875996 606413288 930034985 955321569 315880759 471982690 48960215 990445640 612329956 616847098 92159493 992566123 471645 782104521 969685735 983291846 469369931 546686207 202243324 263560467 333058570 766169970 656616438 759705374 59229674 866684254 684857630 753854710 47905968 768351198 383378101 872111081 682127993 795107465 550399900 637667608 689998412 796221920 693698409 753695302 967951314 997983229 599070614 791517822 43780447 138427858 537949025 807510291 136494933 855530591 158386776 163133987 888029805 908854389 178687163 354374989 632821386 937167384 23973345 216404765 828653313 975662817 243667358 578365755 889085478 944882607 515498248 593719337 793927750 982622441 931300320 957483256 42292501 262904733 639615179 856196525 384381427 883494314 920084957 978628176 480539449 905928217 868955097 976988730 642425465 728667903 861022320 909820121 568820047 972779852 193669113 370087414 764683489 984872486 839251627 916105711 328703755 509519743 665402324 849681942 12875811 451633611 788642638 877540701 446624989 921765775 697456404 995043307 946312394 973307172 337145302 350217540 986166778 992123346 194285354 584215058 872246836 963875275 363579016 925469331 103739940 652915453 225757486 962389682 946339676 964981219 525143010 635560562 312509188 618620508 143475002 791342484 494312299 503721856 411770793 883606631 618821903 958746925 315395125 722471996 569876750 941009796 919830266 923325833 495547546 959516088 518957946 949584854 883453843 945564225 724964784 889272503 728727453 771503611 188959056 692441938 889051681 955719412 258562816 467881446 144639539 419025982 960195697 972012242 362273487 529080949 67019048 625199679 259118532 535446053 1344379 61093642 652200403 955388498 29526494 637677162 405553779 796675212 344496445 657876656 870151125 877795049 127730389 975234903 12619222 251993242 715011281 857659861 832028794 866333379 34516559 419406337 883851301 933249835 486343411 575372521 281041659 435076122 907849454 972944874 14739032 167289979 566440418 589112233 481961939 960391541 56855311 754130159 262387994 429389568 39743883 496220764 785395857 881792874 103841777 993733310 174879659 367844877 137925300 152704739 278696481 869862619 832378107 976937430 474918045 892729331 951223646 951525855 75359067 554678398 473647588 894320964 992131907 993320003 769755181 834330966 849764020 955442962 58552802 851147975 79494545 660040618 156343312 196712787 505568427 559653328 867272040 980829230 272539186 476995562 761073945 886193593 915524580 956614100 789644028 865791692 224064279 808150180 712096306 833454647 479631427 825117762 557935057 560077389 652124145 781414601 341388950 434013298 631400393 655028267 475736032 772335489 882040540 936896020 270170474 557570742 628366715 966937771 507787168 611183719 355258536 948816474 960959776 978654108 977746985 989594241 102751180 406872811 263288985 340368613 272526486 626194162 548052122 985340389 298691722 727059644 637745926 898204290 120334951 803923470 890092716 990935642 122421617 773771516 771376285 821128376 533915961 639963092 518544126 786486385 470670968 574375411 786943248 858880931 352005436 808565552 105671543 890363807 498700518 844394918 42208503 655798402 18995793 65754753 724022798 857717024 333998597 829384368 433143301 734739455 488627349 928678837 668919802 789720361 769602615 782344851 142445150 660612181 698917953 832281279 980979882 985276879 599767104 771015187 2529805 59547989 770765101 943145017 551001131 772841374 664442737 693629362 381850779 798439234 962377864 992176278 16239853 686774636 811296314 855551697 368629885 370842660 940797398 960050943 66113300 794988525 180162654 288252776 89007116 743098772 860042271 879923229 477552126 833637366 910170433 961357214 969501968 994095364 141612099 571648868 668224968 684356691 870957329 945593631 324352133 937725321 408059023 911172822 69900645 384209738 173405028 852536673 341536234 694964770 535122351 881999083 580108578 903202040 626244179 805387120 272151595 668221124 529141278 856274364 918064159 961139721 750263128 773419518 287952196 493356935 218066707 316271281 741603316 933742211 665262020 723545477 801889874 941607680 242978291 780694610 731493790 958124958 668602475 829155910 742560713 921569336 183703777 358141768 646278333 994431145 97691948 646359145 344495267 767765149 891456235 996839002 409940833 675962399 39364672 98690103 704490764 774888557 920643396 932657712 208001731 729632508 61277897 418254432 640534974 768848221 322173889 499776278 760842954 986751081 409358452 537257392 143992814 505698952 840069600 851855671 351790255 647646844 775638947 837902702 759654206 854247603 527975075 935947527 175311434 934326258 426811147 975959120 62694427 602941437 668036125 867895834 341418047 899603378 87078023 746256429 435462792 487096700 984406207 987149863 726291677 732246415 531520677 539648327 792989572 961914719 224190956 751554164 706185274 950921269 302698837 520833684 600595449 924040254 499697967 977962703 428114355 442148661 528663080 887459705 753533522 917326491 871967974 889889091 166750130 613677349 814266093 910400682 790896590 885636860 169779436 543963076 540234928 919044858 787925837 914158087 913677283 977296675 453133010 956944669 159709316 798318896 409828109 937709114 73473891 407839565 600254184 750644734 216043119 903697673 102532945 660996392 470294851 582053376 626802074 913751021 200895964 305665202 533653866 622578459 844636392 855751193 740409084 763772708 463522136 839029261 458442811 470845631 770093569 978006130 909833188 960441411 761960042 762989164 839278184 971600200 268150879 340589099 782557925 828155086 58105614 486170159 138474667 904245726 514481044 530492381 99600942 286332803 318338080 525285732 809535259 912394812 261699284 666747369 499563733 963836009 895426552 951677031 276415811 948588179 844207037 916289824 585112113 876921106 847204660 948154619 649191527 733394257 106557092 316410395 473072250 987391323 759572912 901991949 100495298 817813187 82813429 489055385 272361471 952375706 313461980 984952942 480731528 521026359 585260384 904261420 835930085 945106733 982322402 989630314 252426917 605898648 113859219 688816348 187089719 708121178 542823602 719353970 869739342 975509528 244567578 965049177 136676894 662568902 330253947 642713955 719551181 776354067 20507572 262283323 538484700 637622984 335060287 881642392 359439375 796508747 852849524 998748931 63337512 505823738 854293285 963185674 231659443 604819956 128528976 877935024 162103826 494434781 271703045 771117470 438217902 623528245 875145702 963193587 472062302 630964465 64138665 330137686 931650497 944983078 516787160 560145649 143731937 513932057 666439874 755028250 470103002 536397389 856361022 949613864 689601566 736592268 754978055 861167469 280135060 950451800 224278364 776952334 592740701 773194039 264084012 351440049 613559585 626516447 561196311 941668516 656858802 669106491 990698504 998559690 151547428 358544264 134920827 596949838 109301506 557283090 616695743 770064522 270590308 553809137 294048074 341946512 302123304 355780561 39510162 915675455 951979533 990875974 936265415 959198338 379764393 893200144 265848856 287430340 642048529 922880811 643571251 842884465 922718412 933172299 102577264 125309995 631982728 924002425 939370493 972267660 797574926 939601098 941213094 981213621 556645784 817094365 29080143 715641561 353715019 761685583 587535871 717738425 953817244 966688962 851700511 959000670 915699783 924343629 850091177 869825014 336543688 342369372 500189165 538329925 303321118 511734745 934636477 951680939 62495206 586448425 298480843 391329329 32036545 476877815 557137278 581410285 874917009 905599268 125584510 664317267 297774166 407633852 721029429 979312064 900069206 986293085 838734134 984437538 360784617 770875993 742733780 995389301 610959776 934234873 895433943 956089636 640599875 667652210 410571835 918762228 53639906 430052547 223734433 753227770 410592352 411081634 569804878 613164387 772595504 814907617 640426195 673677496 810603489 973483235 716183797 969904596 234968871 448657359 650716349 905667656 635613763 734326089 426868973 825524147 162519754 774628967 895251542 941428812 873238090 933922678 860627262 999523955 485486091 511593406 456307763 651398006 905682528 969397460 548042450 623249114 685459703 788428179 929625486 939511339 952356806 981354159 258381567 505023379 995624128 999155944 972934952 982186500 502402610 521276528 337775073 984835889 751434723 992184077 525248617 554563919 556568662 894080553 329806110 356259332 68949146 81601846 831421596 929276058 977764969 989371014 902796975 954835335 223418488 456741818 185884678 433405634 964362764 976113654 67138014 223041025 28695144 459539275 690726016 728591910 432638718 863909602 441665356 952913713 561662724 682736765 404881442 894722363 408481087 831322098 17041093 792565161 300314460 814890786 862761465 872608465 746849669 896617022 992657140 992699732 920701819 925430513 710613217 749165191 610629721 775527751 382642084 587609620 744568727 837876042 17817823 778878945 616044106 805559463 182870012 732312646 303932325 883192439 47257687 703268535 365127969 630947905 431926292 434225272 541197400 686643492 385284795 771443960 943891434 946225163 377369614 461572641 738963568 882547241 905399740 947487927 498446416 736430810 962934064 994332920 800573148 860638261 855984789 915690057 483691602 963930207 446652088 970608744 250961336 621535112 367431074 523412384 580995926 599451188 999541413 999993465 678197061 811871751 753565142 962299182 811522139 949102808 135159715 424202200 421157934 796703477 969807208 974807849 824613549 896350572 624329133 831941971 372094664 437971027 177766558 898006553 43117992 740284814 742440593 949640698 817212353 997950586 318754454 927072117 996339779 999983925 510356832 912376724 295479089 739309566 889506957 997603016 42361838 140995654 180711184 492642415 15763140 994534135 976713950 991039654 401027774 694529605 902398212 920620894 885120121 987032110 738195163 832384910 828979487 864218085 578998054 704872714 831986432 977042161 737469299 824347578 493957550 722428735 523521613 529648318 135560536 559315572 590876860 944355819 47532042 104653983 312159236 348891003 658018586 866927703 964540247 968195497 90383559 907918129 265866724 939476930 153229679 571725850 641319141 795022371 593737005 805066889 377449458 886143062 703696755 776498788 304132793 464237593 73465611 422526374 996477957 997756020 526231619 955276841 245617349 279243078 62106846 326805846 541757554 663637127 585793368 944334667 434442488 702652395 100902835 287964756 76563130 263748730 270148255 974242319 416748781 470671717 606214926 625595001 823314846 980787135 596657252 788978235 670454055 741093812 523519209 834478343 240980763 819789000 299173599 759347475 189809045 526480769 229365068 469734155 101106045 143503289 770278133 953956306 565505973 775594928 142505537 608413827 947451215 969524240 680683173 871031080 692949086 922015154 392529502 583579239 164262546 463115015 540581054 704444715 841278170 940104476 346949794 954985413 937434355 947901453 623972599 921633016 661510309 717843104 652535102 746652450 956547434 989687823 307856050 360818248 408205556 838460530 863991021 888535302 340906888 472665376 853619630 991167293 598920393 807700367 190187714 991105562 136180049 180410527 986189191 992598858 30034326 638550292 890136461 926706269 613410732 729842457 140590502 916442788 171830307 246381759 56929930 997439047 385906096 472423202 743919404 859499104 402614713 943513151 592734928 950975116 69208360 534050120 701795133 808513870 521200626 717014798 775999982 868776762 490696874 613822703 830250277 985046558 931953105 943439986 7920734 685464182 254117831 503330968 528264078 805545672 947574444 966263940 771562176 989776996 799849074 904038959 30868639 889211340 400940926 498341911 968669988 986369489 668788218 720695099 668398276 767062127 962113812 984521892 269707776 820269559 404383054 754047392 729858757 787080244 613837415 970843744 485527809 584676857 902449248 915906557 117906082 733542062 740039374 782995895 453306562 884046803 484091017 495004088 629490035 654567512 702816246 954074002 941922265 984784869 78952733 91084499 474572398 596262397 359263551 664779105 849067602 919120092 381237142 481479777 368305537 585016394 575596052 657148447 648058744 984524254 680892312 836573302 774286744 860155891 883929595 996096120 159308367 389864352 272356721 663148553 91819342 340718197 605007682 997930712 3772962 40987450 605863588 722863494 904110308 968056809 276196949 390196610 839628678 960608805 852007970 957331569 595557774 617334584 704269142 789067782 521263159 793837047 823552615 904666659 81084670 628633623 746947100 869366367 654900894 941861990 102046062 221504974 732821095 808698295 252816966 791045766 293390066 883835523 402160228 688615110 176919911 878187480 987712752 995787655 316607839 909761325 992324391 995082321 685578610 885967341 254926400 851789372 933040564 964709183 719131513 995194997 498385632 641007832 484755551 648586691 130082500 446749708 38325800 952703291 856419532 889585295 986408689 999652462 95893660 597170936 690267268 860387542 526512780 687843140 676878809 758988203 104580760 623021740 281507778 476910457 885792088 941485888 806300606 990515615 293869797 982943742 277109837 787716802 846639609 967030815 475101043 680682150 283211021 320387465 909825837 994544827 777372677 796939102 982659556 988069990 19590439 305318137 708098966 718064275 226169855 490212978 244694556 252080763 910617191 978815011 875621490 920400301 83923779 573963669 303254520 879161992 24080384 882055054 95374568 182018564 660144286 994316290 905525761 937726364 514593681 615354440 642414174 766063381 505583164 944042484 734062339 778875141 430649858 703429271 658156404 797183884 252960233 925169689 558951288 654841741 312625257 467028255 776152683 957971565 984272913 993563305 923596542 977015195 782529232 966089040 324909239 879879483 516949612 825087911 785595545 935896484 16342370 642309600 481716354 945444538 804719636 819912605 919872369 959777924 493223963 823627130 846049911 978447846 769414810 875452562 38313104 210637285 486951617 833333463 925904788 987476513 843416880 847268109 741812216 823018470 87018069 733443268 191597031 750620436 101615449 830553562 359376299 989260178 213017803 573251759 833808144 993808551 219516619 911029784 177446500 233093424 351271103 354239079 639023274 676576075 77413776 105017684 69950683 453208459 874575804 968954500 650723611 988923968 155861570 871525191 199048619 452263956 59196779 716121678 460895246 706792879 32584002 741563310 678914317 725440374 720498890 833125686 409332723 703697077 43517561 649667488 127073842 434786496 865344223 944878407 874029173 893321062 978233497 990090516 402042674 825039139 599073768 969847586 971244881 989677963 466839451 473333883 154925086 968719182 969100100 991346080 400596470 498473936 546209473 723169667 174179453 306063192 196731761 642403658 43083598 863189091 208519133 639556725 597918927 625050768 156287953 590101866 502868827 967865310 58822602 492572708 717346069 728961143 522603537 645551112 647251359 916746385 744656823 900806637 327640920 557012942 374212920 695273622 409080428 863103323 746794470 780907600 944776110 990217468 634739212 833863651 407572988 508397157 596217465 611683316 954134129 982671617 391570706 719257965 337343543 491351143 680696757 783786477 901718915 984566200 493283386 663381282 823544204 891331483 488103525 721538507 426387316 607271924 694151108 723930408 848393468 886552553 970938974 986816504 408630019 879365107 252194185 876479663 399345929 400884289 758842847 896952673 19126655 385751277 665660789 806089309 570150854 990661060 308391413 457787573 864091128 903422848 762984027 997660984 918590800 956042693 107098152 516204209 495960911 963824063 372951378 594106968 925137336 935314871 341702751 388885864 439140525 758442301 846198733 992622822 430575068 679181095 80047743 168267734 874217949 991976405 701767764 810671269 164455954 613015697 82857423 917507045 300248709 445833128 567647200 826430362 117854972 802134290 823438307 887162037 628441601 692218259 939406424 987686857 224297497 525520537 175982884 933066069 669612459 751983194 83798162 312785924 826583300 907863299 258234189 726946496 444231831 911065053 567834965 697968579 981619603 996453078 326290021 910100450 568118296 942075683 731206875 863479793 940817953 990327421 989147003 990027075 161931357 546285121 165636689 299533318 132466589 588951899 473640900 898764276 573363893 994705430 492899743 584927489 616541133 811437083 942579778 975389388 221355449 855496879 80100295 338522589 84383025 501221223 525668461 559450946 359944749 598806129 28461176 518167557 854840925 928195320 924185242 972599189 105973957 264872459 111105206 201070058 742883680 814791825 247354049 576522464 829892869 868513098 860680028 995599262 605507897 631504308 754150371 772555737 587207676 971016536 140868909 731735825 894374492 951840833 521108883 722140403 726232069 860968319 159452896 802867820 270793194 901639815 578911840 946843406 267893031 624471525 492819739 524008221 100254480 100815954 306038827 593069118 85060131 933422500 655085338 728035070 962482880 976541768 480116455 659728831 108441723 789933479 347409937 379757148 737118846 993162727 159793959 727183777 309196150 472799819 799146624 877487229 851149894 948108589 861574168 977349720 219799923 563026080 479920411 832145053 90597793 562242101 708595668 954630373 748955440 861672470 536267757 597898930 172151908 645424543 346496966 685327711 852087672 989477839 895934018 926753542 670218891 741171770 671216838 763932890 399926973 924780631 621471502 794915229 591296654 697308721 821725921 848126825 542629996 587228177 396914880 732176535 318971697 893890121 61875260 530449477 879241629 881156159 4609793 265752471 653018978 899661170 393836847 829742986 253633417 549393396 421865935 740614215 447261365 871702869 579092538 971336999 806727387 894136905 833547392 929801336 584228930 960982510 501356458 638945581 814634545 887340554 245036628 565265316 813072288 948620775 906908448 947751413 315455116 669678893 245846620 711469419 494929798 795935046 167227650 861029288 104316971 482747072 786939516 957988026 728986849 924619621 504784623 935810838 672637467 884809311 220181023 837520988 171437972 649422108 600917701 986103314 816723271 965850557 808257606 945644606 223483222 320393348 934866059 999250405 990188999 996071596 175640814 228006412 212414937 955807531 643786703 805120190 568095060 871069418 162263591 778340295 363831979 962354825 488221551 722247455 897498316 969895215 37962387 573802392 26850936 587895545 380398751 627217363 282987070 482552308 908325402 957690952 698052527 986099117 164776451 370749472 811489734 892977318 355408675 459245548 760107380 991162695 133171395 856367851 343490347 526781436 184738738 680250449 66761858 742840359 4073503 566689964 60467658 879964134 830994591 983671551 97529876 330241788 107024494 835960439 365229632 526209803 339283044 353497815 347749911 722642391 388654455 955456209 988614621 989077068 229974336 734643936 41611383 849751981 863401876 867790787 602139583 774496134 671418283 777715638 854725603 874395877 75048849 961418687 981646089 983447010 856486191 978214125 690369481 737089149 534122185 725081230 376764843 749518783 295712941 578572389 957976415 995855833 905042227 931435626 347613888 947308150 106357117 314330888 339406675 926611100 972509836 991968164 409240521 885553580 708295183 863521380 562089869 833659575 574545246 764663261 376994802 848620829 989921261 998286262 460624542 876909092 434596454 824584464 686652761 971428506 247202492 799326421 358156902 818094110 957361129 998094751 573183953 967865731 256243583 893061873 908689108 932401257 280727015 711020310 258575543 268000431 975434292 987719231 66602382 573994272 882498557 965199833 563662943 988513938 210758638 593142269 260174626 426944452 804921634 816019039 45089598 193572467 587565496 648540983 25616184 756675610 10068592 875680166 724808285 742451948 621929559 776727785 557712384 912006930 709934891 897028776 709989414 968904930 24604212 550094075 91153525 977553082 36905356 955902385 105141507 790902671 4041308 606680752 882516966 988183680 629744477 859450127 525581379 747302135 510377891 943664889 935768758 945869431 239818008 440736042 829538103 969505523 288914295 458202441 924391579 967623697 568619192 779108022 261561225 394295941 378862505 673540159 283013562 428840703 535015723 769124825 371229811 518523924 125294029 561738944 280387978 956753499 701437882 716619689 923523880 929488359 444213809 463150864 627347028 968358673 574057823 916788885 58083720 270652211 350126285 557595278 785114597 965714175 241559805 941953369 778554768 798057511 968730033 988232640 943071031 988114275 178124402 494390000 490744114 830643547 715795167 946152125 754421347 947265346 107490677 558950665 962987244 985175862 943152914 951987583 186426004 600763937 801712396 980954433 262422251 814071189 950585321 964333314 470567686 849454419 193254729 928161104 677996465 951675111 769241460 867376294 908957999 926333919 267717513 894209286 694659952 823025085 590370082 786254151 352208588 808204731 424616059 543657163 581855400 895774768 751012000 927262987 97025248 368985577 492814054 629776375 386507969 700934555 14386094 839714906 200082548 988642656 442034702 778798540 549612062 560957810 572424107 833669861 396502542 562522191 778721994 820731810 275356687 919088849 269114241 511546125 18208304 416250116 887078424 985520128 460115631 695719424 449807748 685041445 210747744 560267966 275958011 331128062 652405792 884501788 273029479 615360247 343531439 840906351 691304553 798785788 848104271 980439383 40222858 992418449 97270506 200340915 656155054 879896704 960968810 993510095 194654377 974360549 211815271 588799262 217750830 417285242 265180570 576298373 27016966 81818615 111414952 563641352 820109350 911887427 170835128 391541141 748990219 912275682 285331764 850898939 116730169 288144496 43163168 979535143 810326844 882346418 392640655 478326768 912508593 957283105 120329916 330947197 339175456 759885694 997003535 997231078 296669392 366005734 718974739 821129525 434757284 476267554 722214068 940333282 366117271 797903469 291114202 954254395 114366421 370932559 17236625 706116726 187279979 610020539 129232005 991528614 161238578 543806163 714859099 852853791 627769612 952629081 588503519 695432171 637597152 650923479 986814981 995120832 47753677 566568857 593886890 855800975 578447769 863611973 411417501 748098953 536115469 870783708 549081228 599022472 75804287 837385093 732778630 863005951 658845809 662312321 147342781 520871172 80663576 868205068 594072557 674894204 708914260 795585597 746412988 989304017 349272759 495495773 187284162 470266967 553159644 602086443 180098348 207714962 159505690 283494232 389315098 404013899 504028096 787208949 849689411 988912946 327224480 811427742 346659567 755773840 82923002 375476357 977959605 990500759 257813874 442303073 718352051 732210873 428240064 758497893 700673918 748224679 258678403 444767935 675720231 882850660 553376781 854472356 545870443 918951303 399921063 486286223 824810512 986631885 560560360 774799577 696490413 854244721 415726049 806350862 307292855 856996729 330092656 814489304 842085474 941398200 691110271 792918669 56026492 425510483 235568293 831419119 115645836 478187702 110333544 893241619 651521282 958463608 228778675 436893750 640380179 756612116 751403667 892562509 902686244 952241896 967057865 992429698 733198131 926205271 443541994 985507331 51438760 222595707 665534134 766438867 927600751 987187914 780729863 975699862 859002931 929374182 388073641 610450861 252118161 289572238 161867598 726457263 339925152 722908417 833474364 852210540 584658017 695516603 375337869 782560952 36751002 222555517 230324990 520110387 620925906 969579046 188050976 413907670 182469328 712979993 154547862 266349705 335087223 575356453 522595571 969988465 749538560 910350731 342095270 928111004 108933215 174477682 893707428 993337895 456428932 974429717 577525869 761341282 333873035 415213681 923677029 989682792 41737426 254304497 573807442 599879950 765108402 971241545 419206456 422831363 781842668 856727413 192449261 778481619 592313235 847083397 142739493 378909508 18205003 101979119 881526475 986122834 748966451 858798696 363405852 370767521 705476800 960464809 470691034 536728828 96015146 731671406 169308057 726621548 167631898 354686035 610837476 616668618 37286163 144478554 519360349 932433779 912411369 987830068 629598781 711844039 263023038 374073576 820558521 891449465 693568774 851475521 265659761 859812356 419318279 770565861 24049873 361798473 308905233 694221041 397938269 761622480 514489007 670290021 139936731 287899380 434776429 947113527 194773056 751045418 408798365 535879371 681217830 694212464 309765185 793436563 461368027 704999755 552167312 853924255 875454067 930865294 776364742 870024931 991904838 996544505 871728863 895762255 976861928 983444602 279011982 780354832 778912894 986654980 212317551 831775640 310456887 327681429 575071039 704844911 959516335 966845625 625606269 823429403 935746081 990176235 191561408 459682707 838911758 963848390 260124158 791408400 818337534 857349463 290085710 935683207 251282323 738872130 381122961 831470448 797907017 986655388 401249011 723194332 662199243 978041184 789833196 935745779 861335755 992845968 390800018 665553041 489372617 654739950 119450952 600491634 608688787 998691513 228961849 859056193 834836478 946726023 920650685 982427922 808678708 833669822 370739354 986973739 13022713 981055784 265783150 503555277 123000249 512251780 131608619 562366918 831518918 966598823 695345407 826806522 662830340 715240354 587018838 856016852 434427048 460263085 177503947 770311606 923869851 994401370 232660608 907940016 471472110 496883770 27049384 736090885 210500679 540451426 659221792 725432899 353190457 368600086 331925856 863055792 453496223 607409457 364420727 980581059 173987921 884642045 536012836 910820239 754421367 806731409 950680683 965390434 230499322 341391725 491664725 781295864 656629104 902415870 828326208 965083687 441858324 592440521 262950653 505878503 384440198 697930832 809746164 894009248 822933375 897512501 284816114 719263678 307312905 589301150 123381384 678884803 161150387 943876752 307367017 741573505 760558871 930111649 151128887 687273425 525536992 735251561 531537819 633188537 78328658 367521524 477284773 840930015 954390710 998541982 349243619 862187446 378725214 697564055 46561891 215728532 820105177 873313246 399748770 407115547 986326457 992405970 362256907 533959984 512734257 810233987 543024492 777850926 871098372 893107690 245911430 335308220 114403367 191465077 590038641 834341671 385107456 485353991 918672884 974863406 388877634 770228338 56766420 229171263 613881421 624191651 372489619 914737729 392967861 908705009 748281139 811993147 960805859 982987942 494127244 832541775 789131560 980628884 343554141 874340256 385869212 913742609 297664287 694289737 607302382 783759649 901443180 937192433 934263923 945451574 184858934 565974325 745184544 830423390 914884506 931872242 158016102 925928964 716798276 799113510 702702220 767783659 373495283 672000672 608909806 812548164 705268932 754148768 773413110 949459312 874367028 880174028 700088238 911290136 752580349 828509704 639997947 767523668 218752091 319236959 76741373 915491425 516877941 718705332 137191546 171148158 292123069 725199378 373878062 495403875 488342623 870694529 980116389 994409772 783091649 862335600 844286567 958554571 617996857 950781282 602705337 715420542 173424536 691423258 656412197 698683791 345069601 406388974 418553872 542205544 573708580 684764527 368794356 437021701 609116740 742456591 44134823 827895293 500517017 941131923 297068922 959257175 220447956 232633896 686968529 724974167 787609301 940077402 73371305 637126324 930056374 941439728 867281910 926266338 996596130 997229783 29878741 907045033 918085229 959586289 987646339 995288801 206896143 914733041 254934796 789647439 873076511 925213164 725996953 760527667 203454534 214227573 131182028 775728079 113471673 943783845 934363119 988424891 724340125 993049444 747013107 917962304 97877926 554356363 446261097 763825607 67441061 280909638 444256320 836023286 763066363 827718391 421569646 454615352 923896632 980196491 149029064 714616367 588886004 637007326 366108800 517924051 947167426 954670903 604715452 784721132 197663701 505613245 838078233 963507339 371364444 850741412 360924732 818675715 342084665 725109502 735262603 883611284 26829295 205005587 404005789 780401059 4088020 853070325 431047332 688630318 540510038 806398652 802930008 993101307 673113820 755637842 535525133 757997366 202866300 836953264 302177113 956286499 51513693 406444137 658982087 985416482 351251819 734720191 498143784 575308364 95366944 657589734 641979978 981592408 291262094 881374526 880048404 972106164 772931466 972328892 76825969 165729600 786218006 806192459 336204457 903795019 240962198 530392133 680486462 691472474 753318514 800278927 776077060 782842541 861181290 956336730 658818207 789233223 430665418 846196271 241548859 824577241 776643658 954946182 486282517 703618298 119910627 578069168 438762492 630652105 340406130 692408106 407839837 817241287 714195348 792638135 613776731 815870739 6644150 108551286 532932991 559851821 415797585 971538090 575792471 681783437 445199221 768562545 726175198 838773783 424222461 790675550 450209955 665366079 668547969 801169639 511560318 733343441 479666383 626457854 363248416 908175406 251628043 509745947 724620995 873767856 930693901 974914889 695049608 984181478 632674270 837594101 11917300 612505829 4365885 133808512 274810429 696732640 159746913 706950494 518808582 989082928 993167366 993870249 187058066 475213127 829021605 893868721 653861620 821341704 940065378 968004545 248749357 382044174 662868801 726002070 679872811 932597774 866335086 866585143 674355147 846231324 854491052 975776685 762441880 770570628 559574443 995547526 298890927 871301286 901075139 976134261 790895548 850744451 614805893 636356690 644456246 718997446 329501261 371584780 327785917 929239737 410210892 437908336 324528682 781969183 311101648 633757276 556639267 592227921 816689454 988064087 675827993 828653327 292492108 614061610 282107217 683709007 612587932 706871418 340995508 535318205 565979103 624304702 891670570 938947708 96996930 756979576 412170590 731867994 948203942 995168702 893923095 925444307 750553058 834414902 421101489 839719075 421141750 827826621 442618616 695389018 741709191 996304792 40074325 92877594 280428916 934614510 957169201 990594382 190113636 601730106 572699717 996616768 932358403 959430157 13191953 501305511 733453342 983512519 391742854 401288137 223463932 464711797 194308435 313725998 727057367 953851128 378332220 559265885 46726285 955097598 579211468 849750765 331762788 845784824 498854496 835069946 932166889 947084268 230337872 770290815 291678422 544341078 778124849 910576912 150973828 290942187 784146581 906945429 315772019 944084599 297583615 380343817 726994743 925127359 382165471 885111270 407506643 646372860 559213249 907936932 377808655 566355462 737026553 804127642 771813311 866633984 893708427 963353535 863611079 980804783 329699703 362799187 113166312 457855928 555254195 969656280 284146856 435201281 166192813 178258718 330944046 892551239 225897294 844216422 361042505 915127862 443797840 829749824 629846827 956824129 479875784 551628100 8994434 229733844 752973375 952297242 684605447 999055400 436519742 913154330 94133444 381745397 480252789 754326979 269125061 596026853 307928017 818378192 264149766 566003674 355127232 363582344 89083511 625990918 729107121 883475703 299620891 942377171 26151466 795984157 974809238 988388765 48931903 752683955 69547730 517837125 502022169 937512043 351680324 457560981 831776949 968241859 200824462 610992224 987142170 997639495 890462827 938260898 567796199 704612102 621325438 773662742 803645406 930142377 574957528 785820369 783158016 950519761 535134771 744522861 426952528 632811906 98622134 104258089 790878700 800254595 748002047 762887741 384101003 411298195 417032721 552701951 171944256 310629667 313800727 632641511 925499190 938973308 461476620 905750985 307767618 489113332 231883726 270978075 627041775 659896726 757004967 860467361 991402609 994035522 356231876 870668748 425852984 853762976 196842347 226389138 432557614 621193231 71058999 179307487 238223813 807905566 875580592 928669666 965208300 986203780 269483448 952379752 339056088 877132015 425573441 486844603 76650848 917036908 205184760 400172372 170100870 934103795 438319919 715430669 152417701 918537750 371288422 806871286 739926232 969816920 435312839 609629424 69448253 635598251 287989562 371945802 817037508 858285290 391072658 672942012 811389684 853127386 328995133 683909964 638060582 749023419 957770603 989832517 595533287 872114416 65080005 214985487 835785361 906244162 180570645 720664737 148708247 281763177 819162448 824962850 588287979 757817582 806485466 941655200 222600 51517480 872874406 947885819 909340913 986949594 286523921 503434476 741655660 845758392 162315518 858825460 578626920 592952487 91445445 972791772 322716807 522347815 785838692 828245032 507212341 928757142 170619149 754332131 461441716 794417795 777456309 947960599 421648602 611352844 408187892 518257035 203243045 990201390 536819720 661021893 810025587 843341993 152634840 519367611 205148952 668846930 645007819 981278664 58070690 950075473 994788085 995834238 633826323 903081101 596086974 726385061 867622374 874084510 1479063 208203970 839105493 982372407 456159056 834945949 293186884 678676314 299588541 752375264 847766639 868809852 540165856 830829017 372182892 927971899 92718776 412042729 671586082 911659095 579690200 781434085 863826310 874269980 883106754 908212903 302141190 951653746 475665545 621881913 972604988 990852790 450244114 818972548 33800073 722605620 603489456 936992907 51460031 143277725 976681554 986267185 888312400 891859702 461322106 775359716 642795476 643421811 765203713 857913134 260901052 768390348 653072132 808505279 328561009 823649545 793339059 836854366 661141343 949800691 756705143 999774879 936454755 990592286 668874705 950969831 62657333 738518005 642223149 978741025 889081622 941416982 175367033 853086377 180837040 706808891 993998314 995445161 744266420 960164502 220122006 738688337 113566185 777793656 474651939 770375389 218959840 449677099 857934121 978970498 407048455 978763043 511516645 699421938 357003155 645595555 283365069 861532719 931155760 958510943 544212801 770547676 540344374 908821859 393600578 666598952 624894280 629233913 278479597 598992657 88295320 907952943 757601558 969213235 102111883 767298630 221180628 420868692 553676988 775785137 180082814 236469861 974468067 999547612 5829030 488702658 716416315 966617415 961835888 993200015 731582261 790701144 630488780 838569049 764179361 840261368 523868821 726238454 278970600 765895747 504869384 525536030 977452612 991738990 960754487 968750499 419983512 854073986 227733227 745953500 44761016 64603045 758784732 900981485 46650470 817609268 596780654 872382010 473384299 944297116 286863946 471601777 390214054 830427803 419693697 866448332 342394957 392609335 39078384 984053942 54332510 300214838 944658615 955378562 27301422 640970729 895383390 962914460 225084942 673569809 477314787 709964764 850170934 877226660 146495753 257623552 501134333 938081965 875761716 953440973 152041743 580807447 182681847 829037227 862796488 975925395 779992698 844988653 356578998 823373808 249996998 863125594 323930608 857329939 77131065 804997936 307179890 976240042 620045202 674418631 822575572 915556665 50405212 623016339 182175082 634141043 456877369 662347978 19074118 638676670 946639015 977821547 560845417 632330319 702134220 705678465 987366373 999595545 606795754 925929499 664397987 678795697 746988725 847585373 116504223 634336501 564527220 731910324 580797248 832662169 107927436 424422246 817942595 986980750 578918974 825294190 40783806 147973405 199318353 367052081 47703162 611055377 105468625 247598701 597565393 649310227 528171100 667570081 237471115 658590038 242419484 704900916 398088784 431867992 367018835 821844074 920725058 990807252 768560323 966137942 565413849 683076209 7417533 749168341 341069964 497547976 129680364 350669778 248097470 326352379 282501093 292428555 304227896 603318029 140358183 895023776 585356749 906950957 451252142 953129755 362693487 737673895 846639923 855881050 245131632 489007810 1405409 323206824 678077755 958198101 520929249 941793861 155411907 335384600 627754954 724128443 635949662 812425627 621503289 861769737 836327442 865856914 121462790 252293367 208850921 259281827 247445251 483519047 792634863 870288473 853205042 861830992 545948736 739779839 536179627 943658841 541767543 659024529 314074811 825675488 571265459 762380105 175947441 205450717 68910417 945430210 157123620 529851251 410590320 659465277 120185379 421556416 697337145 740298511 57669783 191621539 564966055 898272470 158167138 300646979 698026180 869941295 756598492 997349632 785427202 812417500 567592699 946534160 494737260 666378347 20497344 962052783 728421842 818621918 966447700 992569472 683708137 963409182 613421914 972828285 217796716 221243994 878407870 992664644 98743507 331486995 443246621 672911643 645359353 851521488 816558908 857391135 580817911 714865856 525752589 974721216 338118532 891861499 588844610 949760033 126314678 594116551 771378623 810353644 896243060 912858869 114727528 317683554 977740987 986429607 125389534 268185031 292148289 365629149 808832119 857141802 706191943 941096556 736088868 808599839 426425340 720015716 304127986 745092274 3252684 294399636 275665683 669399945 25596880 620547642 337587722 539212983 149875401 385212407 939453773 970208115 6165058 915736518 521865488 658230702 918883935 960276158 454734538 582055352 297263188 830945643 819539899 911905135 524424710 587349482 848937272 946538131 448526828 806047010 564630538 800685168 375304504 488366154 817498053 935725469 880731152 982574230 359307948 364452420 578566674 700281028 749719707 954226206 484745294 700460734 77334743 572399794 699978148 721236437 203703296 378080637 157213815 380421058 806135079 930529323 290062139 969376890 992552447 996592839 738005564 805993161 993741983 994354535 347868884 812008216 783875775 918048634 871156477 882036085 187785751 963472726 28988631 967868867 881756205 959048467 398833080 591643502 590417825 945717880 300056814 500127851 704466645 970195964 672902024 860498425 4828209 297003107 782040409 806975372 199979100 729862396 341855491 858873994 155095447 980828047 21624470 920171245 48375752 656913847 409724671 778751676 957339139 965847857 499476225 955040343 309020093 684561167 471321071 913648568 704037301 960087040 557816984 986255299 555232816 798107084 824698775 865138722 308982085 928880866 423749752 666543056 96243952 203739069 163240122 250618198 628817278 927458917 951382423 963878425 987835925 992817588 46535746 557720281 793464189 875266051 693241006 885667200 997589108 999957621 832882622 953513979 617655969 730217049 478909689 718443536 84282579 512778749 149214346 735949928 601840040 709740542 531400918 844042510 828517248 889986589 815965346 825130397 556227921 816408473 388060672 765765621 40168438 917478533 720001043 883740136 292830345 971720591 306302301 440236853 854786706 961160754 365062608 389791172 173321768 926405727 46200119 702287241 762606158 926416709 500541781 898013635 360370020 399727265 642094087 967045884 546868597 569516544 475527514 550993832 964350183 967589987 512101450 621089920 885447382 902669361 699809147 748397556 468564936 737459271 26685475 96795173 342614306 452557454 999874826 999905755 445179226 955249580 305046520 999217004 154078281 203459585 803317013 929991858 652370092 792120476 659730373 881599990 214028518 840899400 743216485 777875662 883034238 938230236 459012471 540347341 220211407 665843113 911219261 979823293 689535255 909447973 6419301 141555526 125703579 701214352 224372670 615895902 673664430 913047721 817107147 881384391 998292260 999155459 186713457 421993796 182631719 672420497 565432298 876016019 495225203 560006030 368931432 962819521 894084550 919212232 593684017 862481745 311400828 582950521 479796436 892273566 679185012 936483945 181530167 534865572 787751840 809785279 250885041 899833640 376851502 880277704 667594090 764545629 881920753 975055048 813994571 868589045 125346309 392156890 919863900 959415533 14144376 895407310 594934626 879651835 270482628 433110196 584731165 976203208 889510989 899225012 767847686 897683781 799456983 856702089 434691025 502267432 468275651 610610188 681239846 761230417 510134103 959730846 777205463 802829222 982616541 993988762 468446024 866337856 966130130 992321058 72164613 288718566 77965137 748563705 453677311 643675185 39169197 282061846 581553430 719339714 711384836 776001695 236162106 659913202 608230128 908989146 171359948 789006982 122311463 296158229 812546207 993027140 660091119 700525235 202436715 801762480 378515101 504492580 324744563 559113872 710575172 813050669 303668497 751171125 741648115 837932504 869430060 896981732 572503322 689992615 541280236 557458742 375099242 752401597 69061881 518497082 145511504 644893460 902338077 943163421 57485151 190374869 609570509 827482849 988168157 995064710 419415944 874879721 455005458 515809955 964107379 971506193 707397096 909534924 308946954 751123762 910438353 971336897 556370789 654925780 93198919 697087338 423265694 682578236 762092552 780014187 849503765 926327945 304451216 522297030 778799549 995320284 823682160 898607295 697493764 939310605 565004399 645822165 598504982 865535998 177669504 517322287 451348106 703416871 758687032 894542171 518113438 897133953 608693514 617234736 925560522 991667953 784425400 865381617 875488007 936344889 40459577 693468450 366905284 672054636 17838544 221819540 175277286 777421376 691416376 926825276 875291002 891945048 923248644 978560590 722618247 881259637 733671802 965827293 190356813 990491720 671521681 897985829 752753890 935407762 863338013 925685910 714952951 934303487 761849886 794892733 23831962 274937476 905841858 947514125 909629669 982552623 783512828 859151316 845157138 888909397 94842568 692796890 492248486 843662865 881557642 969586509 269549859 670027470 597955699 727650367 944234889 954715695 707747544 877033645 583504649 635986335 354442455 663204243 77962723 613324473 667384612 950661488 522214138 754547432 213988777 218776558 770517498 856244023 78028427 708310689 763654670 962010157 470917524 964712904 946401723 971845176 517531699 840782332 302833833 593370138 113785191 468325284 741112690 795929552 497226198 910990785 838474990 907323631 528439867 627783128 349043245 972660640 26988479 611131772 64001238 648693632 466046321 570856691 239608422 439715453 639253230 998832943 939785733 969660674 316014791 343596518 103017435 117183934 328553567 476139246 981698811 983156520 975684474 992055697 777434303 956225974 380247984 917175151 53145223 246598501 555712371 680058272 500160006 719850675 455629055 511628504 523520097 655500968 31801208 758933967 686967567 726897628 945169360 970033430 330644038 539987467 135906199 558642890 991439453 993053386 473564189 641233382 630948167 684255347 960032585 972025928 241095455 990804527 346950543 440450652 293675309 808401200 226269542 458637581 774238654 990256634 733342771 970885245 803928150 924588025 171467934 264820923 87001163 126704880 495718304 753133664 415979662 455588282 89167417 899346011 177661984 346423594 616617574 804399286 376355579 943133847 55421526 152662991 839999439 953394897 815466965 821497387 598744404 811965280 710771874 895598580 515728595 844705197 82618625 954738104 449548850 839790295 621618781 702243190 140894460 543072647 201898718 583298293 822287934 855097170 515545796 776668043 295782616 522375238 198152781 558797266 758735189 761610896 8674217 673083856 803177109 892881200 82895912 659052273 518950532 862528656 420686026 894479134 822998137 854697763 946397437 949462895 179992936 670228451 550505060 572053583 910211601 927814864 99646939 635209103 208814691 390391889 599907003 926569309 915695752 969697354 278112351 339431410 30125240 775011623 573872383 593315810 83660710 948675591 457353069 658133503 801066882 818046940 447038357 588039925 393163507 646839703 686643406 959526542 395523891 498484581 950963707 974995035 462570591 539221870 460330317 794318792 99034231 955632920 716231801 932925955 292193223 293494378 492380908 862968143 665157961 835731887 335804957 393235162 962619727 980193922 78411027 738407151 836394043 985607830 387558433 965490034 156636331 380507397 991821629 996700688 299451627 558251401 921968217 960774323 217029349 900964229 648488424 870702563 997279902 997320979 780720006 858962734 162356722 656502838 339733436 900606662 551177543 785409096 890289580 966721762 372633952 516379739 752406220 990684535 896402880 985597720 44244104 205490668 875238575 910199425 748220683 981124194 623906521 969806130 287895408 332411925 678917798 873642540 192501958 371311623 851429987 975342415 136018382 734626710 840193421 936632966 349172761 998735145 508286647 663820767 111866482 338341115 462311844 960024784 916493926 996427517 388745694 505574180 91018442 846073384 560079909 748363335 202902629 966907881 101919413 170111230 500769971 892670478 285394460 439259161 312479744 408478275 162301409 571498456 756977164 964521527 145607417 630512314 983636815 988864761 943227141 970071479 241378878 446389496 891493660 919542654 299959469 984437701 439635842 574910686 458225790 781625479 69444448 550792506 301214984 369326680 149886660 559096543 819717162 947394298 428048499 797186195 88223925 89805769 608422924 866970405 754167445 995324294 444071613 461330107 643512038 948276184 774403679 810971619 901406788 920028609 977181692 981040612 514749320 738401371 327639068 407975028 763067776 767227987 918143095 946488790 20104525 126599532 514376012 528812560 622759369 660716234 16697677 154960165 964993939 969861303 524692679 595190820 214003182 814212391 676659387 704844832 975649389 985168856 240434092 989043888 215200344 701808180 905872460 907509231 235596100 990731098 767906791 904304304 47190013 691473584 752513760 985063565 916176889 929147342 108623872 363210732 290463239 820161307 892243724 986859722 632530955 726155870 29705591 474014410 510329679 736492517 530923910 535821249 786716810 812783601 716358414 736150653 722811165 882674626 876943641 942760479 997854126 999656519 452206618 652144658 778823003 999759619 262529966 783395142 602409144 720751633 146113623 298232153 154016096 713836314 149379816 310003159 233657980 816763205 185194230 825971058 200451915 901850721 921587522 984272824 647281632 772922803 734298050 759032464 674055570 845093089 591666129 729220704 843679614 905997301 225878914 990564289 500178528 776821429 681632839 996766341 360636001 549907471 768239347 925302425 322847328 567350971 227471080 962785591 842860750 890034594 371223822 740233551 310479379 813815634 80863636 865343661 665246592 729400926 848253778 891618793 813031782 842685504 743120061 883099365 925500968 936755494 846934102 862679290 754210121 918735410 483889374 906946348 606179547 970384898 729169044 901400640 251356396 870700624 182846808 286272194 89067442 159269920 331780803 640032165 832079114 927284709 843486555 924935981 311935630 872424860 174897673 237305947 374591506 688990140 937525885 959144024 472561576 560101193 208878840 432616761 192519112 851686970 770789005 940177960 410300809 985073196 230587266 701234414 116285591 708501777 863366787 966668334 169888912 403050960 332804278 635708872 481856966 672331114 243086612 577324055 137841856 447180975 997310196 999336384 305491663 757596587 337718067 493406113 274110169 928179877 133119917 462407783 376989872 458046198 559235947 575886189 2468861 661160550 972941775 979275444 299809061 329577653 189983312 720006340 862928586 992801343 333561793 718623542 415357348 734262303 221246964 500344820 650521993 665132202 295095857 437753858 654355452 798256924 790487255 994475635 81103987 350046374 895359542 932153674 263389097 716304045 84926268 737391911 983536431 992147992 210099746 848468698 826625765 963745976 265704366 685776798 671648618 840405923 704593886 714448748 361378630 370629120 754611964 986525838 847980224 946076498 765999601 917557402 907707794 914025044 816881079 955603276 887049395 923363833 838085408 971500232 441157625 956483178 887586209 952742882 906743777 935866206 811868365 931990761 987695776 994628027 28201306 927034246 847747792 912230164 904622862 964952722 561336873 952668603 964741008 980096873 996781591 998962715 776997709 789456069 681836511 911849168 569920098 912927956 700909995 994049617 90451023 407106497 382074783 908063482 571470177 993352708 71514355 795838512 810819340 838527852 778354993 934924865 127704670 581669162 793962771 836049868 206967896 538415449 638947170 886457740 614291808 812678440 712391270 804052359 621091371 749438235 100356858 243432669 956014477 980019761 903222741 925076532 531421324 625368166 410723428 758693790 845678901 935013228 472718888 877967514 442264995 572229906 147155551 610155250 888470107 891139170 481518511 758914991 221811910 910900629 38511797 645032297 49482793 241065153 116417083 823925519 75867566 608323038 308159141 828630279 98640839 778649050 392570166 768933545 264362675 426901061 685148249 826240319 243557641 300954827 91484387 476747199 936848878 964869078 133339990 411570830 699134638 960278650 671432733 896502386 385901912 974125278 583076925 866912030 896796853 948512633 59319139 947961409 687086719 930653117 486575957 723577978 324912114 726371032 229232262 842784857 704675379 959965294 863542611 881693890 696372238 777262795 694565643 992504359 32701616 853267410 495827246 673504849 782258250 827788879 643328365 706411157 343804686 705870812 342001652 846123786 793907618 949227815 118114199 758712992 22918078 474420078 841811567 871226328 745648056 862946273 437718409 789555558 525899643 832899355 781541995 906464850 47380453 991579711 620492444 940441962 437704018 986231355 565965310 643856531 485214652 717727686 598003596 884987310 501465535 736061733 837483578 980101180 370654586 456343822 786383870 926783198 127063968 572654995 665399321 702700137 873580282 875373290 615962489 676921122 510760469 857211759 713982785 993381092 973134345 981553322 432180707 521025876 480059263 615180644 786009327 890619235 867514382 945334904 296712586 300323159 311923525 386215233 57236556 863686677 348069296 541653834 799168578 998136431 263118765 831673672 660701715 821639770 602579271 739750459 335754391 773586202 535609171 720959203 754207603 901585819 563371463 623052527 858894114 878611412 125571665 336022865 769635153 967212261 390346839 781877233 494856016 677410684 38135213 425063902 448021747 497705721 422342563 508818691 527765930 998618656 386171231 535634654 562028751 775631056 568814314 982521877 376112328 898514289 532060369 692223960 727657525 895276043 917673081 955183864 319894065 470463757 826796189 981269548 414821289 464774949 272311213 452869074 338137530 448797799 920663463 926534781 603972066 640625107 146472256 831431134 133192039 850118540 984590191 987419388 984985795 990181891 859475507 966558827 775647116 855243591 711733339 730839296 398504239 626695703 321509117 523119790 23416007 366890374 212850651 757294338 727820540 978780794 231316673 379332796 795907855 817936432 119173543 995151094 446824461 575520170 609274042 835794350 296143629 842269456 121465053 924418731 85587456 88644065 775184055 998223091 345232730 923906417 32036404 473087226 380947809 551902220 320299652 530950225 577452883 623837342 332438046 875053669 84156391 765320214 811583255 916066604 138498630 615250111 183699304 703330298 391384855 418686166 426349854 544312154 827801258 867707738 655867075 911483556 772059057 885370980 528467311 673415337 711995644 770938175 805387929 849227730 885170409 986371214 133274786 457243522 291555895 402884942 780208872 867817638 68478412 901193774 411505171 776498122 388071597 612737191 613815684 882900214 240636473 988425748 233945172 353515583 465712355 985032369 893343655 898317700 408559309 575883462 403720317 469593089 544773458 883196044 999208325 999293297 196309390 666204406 6340198 835898966 877109564 913207525 774346048 873562043 471662054 823385697 642504333 649012076 866617269 880857563 693524209 838223521 953539076 979420932 523668592 546084035 591337975 992551144 912747346 922979293 924249804 940082641 133056818 888196088 349623251 463362045 729549193 937893877 248785919 273185375 158318936 678961298 841184656 861283843 1705514 685484499 327753804 615822389 95068196 629877537 802741719 970298339 615802845 766136375 255070002 867827337 390588242 614755142 13083102 528997306 72986573 510301676 861683034 995116943 948659983 965852028 207112568 410362411 223028895 525389652 432673054 716183332 577605331 644864377 322272693 519352613 205826379 675222195 386599648 844828047 679693893 924213604 278245193 793076035 598661707 599087194 967986989 982936856 430194913 675506612 104536621 950193345 302468483 729967790 419902463 747437914 21630757 659256399 313166536 570756468 802435827 999151908 873095523 981972481 848117300 992700353 171210312 492458637 273275315 887746885 874233916 995257542 932597748 984028297 586295414 741862181 92372479 986126531 264492143 618222139 953308401 968313716 512745720 593086362 78149029 665098787 286857363 395949637 483710409 594316439 13402156 430474003 174039799 845629208 248186390 590638616 424934682 820830700 160281569 557287818 602980648 746929301 455101961 580627267 801264021 960491662 313557436 623385518 800132464 974962416 104494155 618450458 633427287 900221808 117451250 468123605 334851138 489482342 527092845 963027256 120395907 779011585 680546174 857386616 880407588 881536904 789676714 951692903 328465934 987322184 390905984 615779484 894309923 975216904 4968397 191611502 77761014 847119203 2948980 384317811 862239987 896556911 692887802 952728534 281756826 400669080 754091765 984623417 412195582 947997424 590083270 635136590 487367972 928741850 41593686 922723256 5932961 721337600 606555050 820073164 53277519 442886443 428437882 609006172 94640309 208645623 602913190 647891201 338916627 621841032 520349848 907617219 688176559 724500857 738697119 915554337 610200957 865332436 79715650 998689479 981053140 999604022 832770531 912876434 323579266 730885002 352715204 711443804 673781316 815877907 829262712 994876646 958636885 974862485 901505352 929236367 131743916 848190464 473587306 597944454 652036165 973011104 616662990 976444365 963402759 982845706 711870387 715180739 231996908 565505293 307487357 546164090 325396555 375533884 241591384 599287057 875454757 983473569 173220431 487906899 239520357 726791350 683690115 837663944 645614965 784997991 506447983 745780218 260543363 584449116 344512098 620205158 799960333 969679540 714665279 978659784 573665016 781356207 484988622 785733496 806448333 834254864 830275108 981370902 51323471 727063603 809810977 938781070 74521313 787079947 458378198 903709059 238424861 390531759 10602478 312150823 816377136 821611205 122828816 608852147 629015493 674420615 595960504 907664973 16251079 532585637 720895367 872749417 160992967 388017390 892166673 950809963 81423128 181240724 141792728 358731416 888678925 949413648 926622618 978279551 54621390 620614563 457315920 645285109 379679824 877251728 398348111 546003133 85932747 589475016 40361737 309167209 980120343 998025093 253630129 306828203 538614160 733025640 66118659 369718493 696550702 908928943 474571830 555941316 708212377 754708673 656948059 889734818 639504408 670603207 698824490 987336325 387549312 937863867 584842139 949987562 616949191 689724862 704369433 877016495 802523595 982088891 235419070 442118146 527682252 766348891 677638735 738882502 23654835 741210317 763770624 784754822 711482684 884281005 370155444 486179810 895824165 941822979 873363306 970785734 45302632 876193793 616030012 694898092 526996788 982980449 163512962 272281186 640027441 721168718 458909488 801833490 33284078 384142565 356039138 566070656 16788848 240836778 410629136 413216639 441009228 729726729 88288560 653022671 799302380 981487599 47546025 349094704 108675019 961450767 798553877 995798880 677947188 722757292 183781811 580036212 144698329 700949425 75342177 425866651 526823595 671325179 456733972 848604849 732543234 760069670 982182118 987910412 653789995 902057338 938494273 971657917 120618812 458652189 216992746 708957044 528995223 838131335 743395266 873595054 373769957 404834065 633614158 692465117 277922611 636021088 641408231 835857810 709695241 813581322 968955404 991251247 549463876 778203456 210533680 347583005 956382507 960244254 527926013 916217175 166602576 286186098 745968184 870318183 252902297 840829395 819579815 938281645 19034702 881074140 32267968 227513154 945072368 982625728 307246023 974332162 626807941 758892820 358973189 748852624 244918044 672047436 758206909 981455178 584890791 641195259 683071093 792617402 122061225 881331794 922071566 929883257 572653217 793785841 338523112 438144012 789880297 793652792 499741367 625639954 726381781 791673534 448113498 924782333 207479923 604629231 307670972 728118606 804375017 984870216 955896321 962298960 162181449 732399291 216195772 958186633 237104997 498652029 405906452 548740238 498621112 864293329 878614929 966553210 616785573 974234699 201240912 814293526 874627367 930188457 859075839 922880639 929656615 953882540 596347116 652369418 774805190 899802817 113878358 903136899 68443375 381339114 345133816 688448705 424754382 877850991 403510105 490711129 794194188 959954440 671701194 706776119 401355397 985132547 152613239 756159249 532877254 654127652 21597947 282159937 841438301 936555031 133529723 454379660 664639432 804170007 619765222 800871201 52101583 469214325 957503590 977228462 438171681 690056243 9072614 983384758 519138700 631397170 116913724 602396894 602898691 659207806 991999666 996153482 983169441 993852323 844647477 990573352 422868980 545767244 478779281 957418894 394320970 966795965 540975455 692911558 116460565 331018585 938835007 981432684 711310902 961174786 412518014 615849444 518795836 721896815 290757533 838554632 706294034 839544050 408814475 885113143 653560055 927183219 613814133 836830173 757335020 918218081 884499658 908588079 950587741 957890827 763028984 882118599 515203215 701564944 85773555 306541997 746148669 957875639 658382874 787473214 421928300 673239353 339774034 840255263 583791256 993438790 988533173 995244009 298986859 591002965 766902409 842384621 63023760 877749127 161242453 270601735 169747552 692505847 30299636 420953951 92233019 315049174 58025742 616186161 416334939 867573954 569846806 889666161 726929775 910850326 683588811 740032472 237844798 766042780 693828922 879891301 955325645 971971172 602238652 641062659 663717324 716919833 911548423 978078907 255260371 410312496 496105898 943972889 100245526 126946762 160190137 839653749 476735493 974089930 564230588 808288183 938287527 961673712 570942567 998168010 472843957 933597817 21424178 76552009 49028343 378683784 171492853 645468169 648004712 818711488 392825622 612567879 534465224 717394290 898804420 991513570 25598385 809058892 331258289 580340209 930496642 994193863 940100154 951793887 586304799 802081999 209257476 527077589 257471303 931260616 553309922 951864094 975443034 996889511 267040070 737446790 110677574 290697494 496095451 995949967 150300242 888793285 580862969 957322355 414152698 830920021 159410134 293312184 845913743 954546038 753033565 769898177 17939037 798446505 805636910 924201607 229566020 714778271 801633598 989802712 788911939 811174159 767638679 845555052 15828766 159022164 84680446 811530159 852147991 868275714 287676976 614715619 565446771 736989680 959980428 962012040 182740960 191228233 373745283 535723502 981032122 991105407 122390338 882943309 377022963 720656053 350442325 628224294 581822377 987228415 785369771 854390726 478626128 862797839 542144496 650546254 286718782 392871066 174642968 427420798 906281188 925633010 90068712 375032196 590837277 624983039 497553805 520755217 924835582 926850313 933083174 968152972 94256454 337663234 390915080 877920862 599346463 738713950 30530583 163364159 185070900 602953933 237808539 952311046 105996790 208053750 777735623 803723521 685755338 939510003 493366169 559605070 162599854 591075548 571935550 643075676 353491138 655354047 850622010 949692523 932430419 957280534 322687833 778450760 682931124 888964094 879117889 997047156 739945018 979540900 421371595 577062334 750313946 897296427 452609357 737723038 355756349 488789397 997656703 999076733 349956468 481894186 851859304 952179650 943695275 983928312 152061053 682149480 391726565 711086728 675669776 980398694 767275973 947268052 838355259 981740497 334572800 775762483 509603996 677195911 54238129 645337692 635239510 647473290 100688401 359975944 33441689 370438160 903016677 993533988 987111501 998468037 11312391 224906998 855814128 953422844 218233439 747251418 815451026 877615632 625118181 991226063 832856583 967818440 738115906 749657894 272101751 472641769 901876576 940320078 948251300 977808891 562110402 812345643 864847299 995444521 979307862 987785749 162005996 329021773 18291195 806151747 435965034 570524954 177806826 607671731 448657623 884724795 203266678 680316150 515027024 852834473 366441401 603492739 548730936 594205350 771483753 849663129 890599844 989025155 282206001 636412248 897569665 901774848 840024270 986448876 668902457 833761194 582950824 889791232 612840314 941653543 157662241 815319433 225531784 902332156 161005730 462115406 240176544 333669533 665588743 986153229 808409826 901950513 159305514 674736627 669159924 815704657 150937550 650687706 325939076 816081479 237738448 687942355 53100272 740010141 658433100 928923618 84412330 669501092 11607438 136507552 442084170 899216128 845830120 848137997 834568884 915473767 631383700 864871646 363609676 944200094 999079761 999419719 934763741 977870312 555049394 599259967 485927105 799823829 568931464 579282151 361906059 682076328 447376565 569831669 583971211 971154330 18510201 160310103 391807089 724364405 800411868 897836393 718509671 955366921 484200317 776646170 611489960 997549467 439199244 541513393 873895894 886435085 690920549 899013429 274332914 512207731 377289744 835106347 466133538 740530088 496898431 701081726 676671453 725727313 855202545 895386921 244454415 322481056 391927705 529914503 410824056 624135518 739529898 761035304 201091777 272457276 95000945 151038603 972679978 974503237 326405267 459448520 743672125 747104714 262842337 571870921 178820849 724557954 134314122 202414838 203037602 417619432 484143018 694241683 141175335 760503147 780457343 921228685 874519243 979606871 710650703 924935700 272947647 530511739 410852621 850051130 808907275 990615522 5896765 231948838 352290931 671838491 235388121 409668574 890147857 942764276 175374153 752743418 909862988 965137133 571860341 643893256 253198855 807937743 646858296 759586606 551901232 935734590 607325841 905453261 689391433 721664019 343050519 608641294 617210569 783381264 514630957 787700173 363438640 776959045 624592241 817151143 357540051 654865664 664663224 974675658 450616522 933082264 700809654 941441096 49438558 998876816 383332969 838895041 979590939 992035972 260438489 941838351 593599217 680101105 250032935 343008331 498809184 784451210 577773165 693798545 147426555 453441791 653996885 755973436 315603 988715392 473197779 745582449 143269471 368601853 808118185 987295295 184027203 489438752 669172447 696751030 364628726 813248174 475483182 764168714 377330059 642306953 343048686 349742930 804839128 861456877 1016092 302889357 522173953 992599856 45954919 577168197 177788446 409552089 902203333 926788294 577094769 648950164 555166160 715258073 930728678 976628512 559402406 974169874 870433997 957324434 964692440 996658098 997453707 999259898 912167135 963372546 946350720 999994049 57715771 418268760 718859441 900722045 15369611 593884533 745846301 922636347 642455365 866376714 550509395 896537767 70374326 437312229 886979160 945370356 106143070 469416059 341468313 987719508 161273450 796047884 586733828 734939578 219217803 382436385 161732652 609814912 529400572 572020676 525341484 703218805 176199043 690854244 519161747 716657355 335919306 499752432 594061077 963691366 389113283 620945282 683309805 768064032 701707821 793189938 568294017 615921411 977263613 988526816 442721219 859563516 7828639 143196209 912076142 925395505 744607646 904833994 557033524 797137664 782827959 948767894 766159282 812826553 877975946 920714482 307816241 916718814 711810704 713412652 648395217 805227380 231940682 325655476 31121152 100644051 794909570 840700096 426734275 490921649 657247566 744591331 404949984 928502716 550687001 628559023 758707337 775014507 536150919 545701531 945490067 971586946 788840147 823780623 315661192 706572580 625227295 893567277 507127903 558132640 588515630 730057166 863367802 953572082 535800821 790924207 579619045 787652657 887840208 942435729 490947541 834419556 657675391 842340553 623691564 895907478 509744388 906752430 305755288 665052498 958861315 994857440 633472932 910537184 112789566 357022602 388708208 437912139 973747310 995849540 299548598 835722618 129330194 892736433 430088666 455294273 347733852 498094223 918187990 984518836 514652251 720555571 126211193 562043464 363821810 629420201 452424331 696751987 230859411 749054613 455872073 864663215 561818299 884302051 226392341 279460998 39234875 680526191 199062604 938609840 540897790 693210987 232759904 388627456 6808467 837183041 998327264 999004114 125386494 128171401 971120391 982188804 168702450 802085177 682991781 932593072 916244523 943795476 639394655 964674761 265710385 552135071 548403187 822899417 167287679 912395630 85334027 871807253 9222343 783192326 615758808 752064688 479979211 731343518 158448556 861001683 511050363 989712159 206941920 522585577 512435285 944884113 75723615 680176063 23896301 413992289 475836566 862960805 551599623 930208500 237016892 661270176 388660128 971605743 809585751 985455691 363223989 489309940 735253302 890388573 197786505 280194961 512097237 767640330 146749115 321375466 60999367 343219875 507679875 745636894 254527107 282653843 301652539 628922885 911632884 929445137 442547115 716216642 768935883 808870030 556679361 644389909 191765964 694511803 395763879 905100181 278798732 637142135 801738121 835368766 319659212 523789844 658107212 765534677 149474929 597093082 913685634 999724776 264827535 543135581 933677435 951718542 963909494 981853817 55922347 259966677 216000433 561198335 676277579 770874630 455904457 862527803 559550668 925239128 681599716 735529630 600080241 912043783 631403823 726893649 62080510 603440865 360411638 515143226 668744377 885940762 403478434 858846078 217274287 353229888 208703702 375950227 184780348 501774695 736057794 791417171 616268810 850304368 801631118 857505393 287166941 780317738 492113778 717252044 361409883 876474790 388113255 981720638 810397508 819409059 599708466 821418060 130833152 759861584 433550585 995363063 82209206 352657910 394866619 952361621 365129112 987524067 47022177 205350389 708108224 886297143 592250644 620572770 94034608 674340789 632007646 654182199 753239647 964252915 315611502 496480160 914030760 986258385 58693202 630661055 479007202 882483333 17746031 21972105 228209822 449244515 513058300 793261911 1518105 913729152 535376904 885154554 197307358 428095111 477670707 876485879 8713963 279269156 773338385 891371984 676388928 916434174 211894240 494822088 757568843 872693449 314870500 953652684 962121621 987310844 716994178 837460217 915392536 963107679 156425793 945167348 416851951 510928190 494059489 654100643 970025133 995095505 304658430 640157745 540957650 825359399 710205598 999976752 622398890 876386554 924278693 980383628 317340924 811045387 340246873 368657420 381466676 765796810 846965275 905644369 195236149 626853410 20950846 306007234 445807438 788697604 648096934 754042357 501285377 628496051 594529180 806731707 604652041 828117955 50193911 877430061 649972714 942872412 897150102 929704847 103849677 224369472 49005204 868365292 376031147 396551486 822918678 995062139 583364194 827310551 442739045 880999721 214770175 333558148 959661900 969398050 513161865 915351983 127715274 850202597 733957937 858506313 793800236 984097486 459063708 662228530 448051914 576930852 120799214 577336208 265176073 955468111 746792409 909586242 344885217 405277219 161158960 256186091 169360869 676440022 318531665 604063949 154833041 874739036 800027901 990680788 341395504 560379275 842128276 858355949 293145752 974528310 1213481 954621456 905940198 910793528 790872129 845756252 859055294 909928086 845281999 939287122 696002570 834563509 844141765 865551263 290133297 913993950 379193527 900543544 825790182 988566504 557642795 924484002 861043750 945322626 994063378 997641629 330568041 399783472 24023707 451040287 243770563 716830142 325350110 820137486 932519520 985122320 340218691 942212414 401851609 572522936 269798468 696643256 700447700 906131590 594385322 814550430 324686375 591315779 281933015 510021169 720652566 943856028 590398019 775035115 57324490 984799422 310607395 361523627 852418567 942406456 51718529 677090240 69472373 996595933 696999583 950154283 705392761 733427535 776222498 847913113 369905161 924665217 43918331 214400752 863245954 916974264 290097152 503699175 489655072 902472181 574379618 871203496 80690101 100691545 807762420 937190521 320624242 887564810 236905392 794891847 147217011 651409006 687605058 884229914 528639176 528672861 993745233 995276825 327570358 745382431 672766068 783991912 504100926 525756018 403803245 818883107 185201664 317824542 738015037 805468796 997360988 999100114 703754389 881756183 665061042 877021320 451065012 556155899 668205555 957843448 946746066 995796534 955559948 991464672 205175380 561678279 495301894 957392225 608461830 822580493 307055450 624861433 117763281 686621975 272221766 502723072 450568050 606497140 726142772 852211771 609664048 639940153 42152345 554767929 749641554 968784282 283790572 304797804 179038394 182358941 882692513 942592289 530138534 843218662 793958162 930707421 900536048 965316212 898782124 906690992 89208729 806571980 586334072 790256368 737530658 871287875 824941338 933461927 541614354 800815908 884129058 992299468 736634459 906934089 67040354 628339235 742012661 994071293 527079819 808892786 807374404 905337357 805291394 969775542 446000916 494508297 387939285 575662010 242785054 614828020 579887915 993674230 325416273 942288639 324102675 487655340 29264005 92511289 346234966 386396176 805305372 843537208 407283128 753106743 652646720 768931399 244323542 379111652 907435387 945175401 2966986 857382421 993550178 996810746 886776972 926234623 488388061 884149691 599131202 983326437 722589312 938491808 447800326 722304100 472875787 941162154 923092565 965605929 636360549 951150192 888877954 900900341 685244184 750998323 873450006 900451622 411644094 447165878 739086602 835964403 277998917 836739604 419129041 478464892 119967078 708297289 720804558 749221267 906553344 990011494 269740821 327993744 360608742 834564054 872277732 912411076 160310454 783916412 600778476 999294625 88129387 661093257 840543681 997895876 940578857 979102941 660013779 810324024 836772840 838497856 567297514 666776783 109865888 728219739 336482181 351872797 241865584 541199943 383878080 540331516 202253087 255861365 319567566 500507448 407504440 754080383 221807226 565761600 589569962 690893734 57131192 759050776 508416140 810472681 284715802 877205436 197259087 522330087 486205089 665137145 218905784 244304476 945665118 971191158 458117520 650193813 516137850 720590139 315989932 790530619 231364657 277365218 344567807 602348028 39000033 955249010 827785803 841562956 297651619 369314388 713993424 836453224 229751777 755514740 176649482 792772935 592408691 991858471 18655225 766358349 367518226 841758752 93942232 850872476 646490878 793345113 668515982 970411796 539836543 914188659 968059667 971142948 381229331 574072008 789666788 825122514 798961322 959679641 967624788 977273555 80097332 894790887 655402022 992318694 49700466 582587312 181472746 888744266 800833763 960637943 318460526 361924122 97842273 602496134 23646743 45496199 522774446 834554153 877686963 924790640 207077681 218286599 142636507 839254150 493147768 510944265 26365877 946024488 939610757 963632596 740391684 812429952 914439292 930944011 344968466 655584530 506882287 850395938 22751533 220780579 968401323 989421931 296606032 803253196 737029377 833729772 310779752 957084766 694069915 832222514 191086848 371599674 28221842 346271653 236140512 785303840 285465973 352838750 326333667 483562891 230729902 450823871 21700512 823692302 560396783 582762002 56888058 567437802 868861524 873634613 945631849 985168040 159485346 906686051 842855715 923592356 221423027 460253975 798750007 918524251 751085837 876845791 843691764 904134116 590163065 987242779 288962327 511460794 83973561 827669101 451470034 772240900 700430995 949554115 103795469 219788892 148512270 530600195 445588926 479891986 348929454 504382592 486709184 965981726 921207350 965449609 797151994 958331128 780761704 975113665 896298456 962912341 397899202 471055566 376441325 825079270 483770700 829234901 697109241 741404933 395669476 519733805 895402115 965585687 43081236 269314527 959357249 982424983 587162321 753921437 62383283 747231545 723664632 798389482 592057631 794978262 531141869 703860611 729886459 976547877 172215632 338694156 853850299 957173563 12591198 21869121 177324506 460888769 525527208 698191005 244109107 875684246 637022445 904479574 313261429 810173622 27262378 805699931 535612055 872329175 804034912 926509464 134785400 949645126 155397951 369612591 635353667 821466565 689500287 992236065 300169988 695499090 193190148 458953135 45455409 200571967 242444532 374046203 264072463 410440349 81531484 581998356 772036590 822002037 263642493 982274468 511699185 847778314 626135246 880761471 161595379 989661274 386793253 989601308 535832537 788033316 878401397 991198891 547637798 973425857 457672153 825710510 359397269 459586476 356131300 673021945 572964277 670935483 91810589 739161579 496228733 830698627 559207277 965835031 962700236 967292144 473630699 603155848 318762089 865983092 629465582 998379344 631236642 961970336 932378328 982762393 781669320 965832382 693394618 701904084 469986237 520813561 765052625 864046505 38061598 745766126 108223636 887557214 138434451 853747536 886692074 966602517 200380555 867189430 182083300 549599756 501648733 524810914 471533076 513765786 810659136 859359504 701586662 881545364 471251563 979778209 783610373 881621165 802414383 910690565 355503143 444339951 215539207 295931771 524468169 882287966 266271695 820444778 159410597 648482118 116706966 826534764 80619309 315803726 873018253 890013576 530089252 957768261 120665838 282723217 860805931 869211667 272873800 531839874 747499361 779694906 843420892 847290309 973513888 980663431 357253302 531876358 269682500 758977595 19207799 343885950 3904832 626017482 390718224 892255706 258644295 968841450 64351198 104069692 540523878 797451981 417649847 524872295 826196185 998196271 825472181 967281479 142013880 832747476 721589251 939581780 770971457 795537738 926466801 961905151 13722599 948304025 740703457 860315085 272697735 586626225 675626218 815289630 252941984 818518408 424936309 457923542 625150670 730089293 25700011 589089989 621099350 884782282 341529223 996048557 252721959 782581780 782963815 915491580 224920035 714539753 514580396 596272301 687148728 754879850 42335873 486327102 372647410 373907818 235739933 818521521 432367572 968717180 94197821 757825563 920003509 923806242 150722858 801947305 296347010 798840514 35342013 631865787 383441050 918235293 112435895 380639573 202237025 414379608 555401303 932539168 435408886 878427525 827423348 856510542 236413988 344996540 173567211 487610303 523909567 753454140 302500715 780638892 73235206 641725466 800240059 872067590 419754495 963682479 911702107 925836405 419301915 442651090 465615321 580568024 920549204 948742380 31493926 391963048 502157945 991654076 770271120 870501759 78134125 373091362 958445373 995169016 548772129 630874544 276597859 792227646 674467025 863887550 397229523 521485855 698511997 766082119 128256246 250684159 503128527 818226866 67720101 136722691 487077471 817292485 51954701 278588040 798543100 894281643 462059340 518248478 773365199 822086798 478607661 645883617 682298335 947323833 197342415 865511191 719708554 784289649 439887975 620107847 732224313 990068926 972911454 982607178 732057189 734652941 15701027 857482780 430231177 547827516 157615908 252147029 903322220 923808172 387950238 972918470 400772842 949271474 152343913 318842048 124128466 164029843 189417570 309411809 276034175 458931127 220420861 843468262 11285596 756491857 162261850 549566510 238601571 622201070 125575605 151424807 192301994 850551799 153041903 543427820 912102752 981857753 519642728 799710756 956294641 989137173 850187433 932996931 89054963 799335742 790175995 973677745 603557531 886718609 344334955 710960920 450552265 717012665 652543763 931195253 861727208 972290739 282625055 453721339 892220395 997866657 745323190 921970126 766788485 798228927 876474750 876813249 259533987 816148908 907287779 950862675 783810322 951003036 624915892 634704019 436960097 437874628 397406145 470819630 533300351 860735866 557854819 759130488 790988823 848212530 586886015 721068251 605797948 896066719 583844980 730330915 248299768 273487130 690841227 872597581 553142599 625575757 787287498 880985041 451277408 741753470 942947034 965652730 619806420 915394421 526197014 666660051 916925071 969781020 220254498 541741753 27632732 283094395 594135718 671936462 973637474 994136169 68242244 614141297 788462643 954401812 489472236 757491528 379159775 950267397 198425946 887302530 618394191 788866250 339593792 341061254 229454893 791172941 554146121 693914703 846382362 869956436 259799560 569073845 881333249 955099762 98765982 115119152 782236067 827526996 301662356 826821893 658461765 989779534 238299705 576412221 769183530 866028178 176408843 283326635 147982838 890322779 928876638 973919908 713512522 780474227 693598423 764459521 691246217 934533870 218630102 680341373 348579427 550877086 393043276 536830234 375536986 841732388 150383512 152504396 741884273 753102343 677807463 682023779 184126636 422306723 197476578 253151083 843217679 990346707 355584485 561261250 859505986 888555717 769779839 899153693 9244255 817190800 919406817 943303361 354830877 741791224 317713925 927191745 221121460 714505967 610823503 778578389 62867355 693239281 435824771 762682566 512510931 927750096 912572350 978965962 919657768 936407866 468391502 512390430 869596865 896450349 122046259 626862792 158810820 778161876 74907735 261417401 841025899 952149753 933603415 987192689 119634541 704985380 95022914 385033055 669439947 869311259 786077575 945725193 463943818 549577266 821722098 953805570 482271502 835358763 337155134 826311337 367144712 717933065 570102729 627141224 306004553 760329948 50943124 513475382 372134090 712437819 260725740 783900233 428552742 537112509 180292529 812954614 159535272 978174189 179163619 683484403 405103104 649825908 697129556 875726825 311381361 875460995 464766863 513003468 926996005 937787614 75526876 530862985 165998352 562970515 753913001 920465943 831415481 960962154 625982359 953062192 910003549 933005396 736043994 925939083 179562895 473369054 481566472 512674450 89904560 783554561 271232171 602554661 122785185 746703894 367760081 873569893 190129044 826701861 801052214 871911651 868179554 925048903 551188160 716313274 30806955 795689166 378505589 847089208 414520826 818567138 852780191 858568174 802429560 920377981 878871084 921375636 366416317 963554370 201209233 856730987 76971901 551031904 877843038 928884510 45689120 463306843 916436616 987296434 211978262 990319808 336303588 938633741 125298666 636823538 636577333 872160002 331305261 830306297 484373241 825546341 926853334 951574085 737828565 932604300 481439860 531182696 322305199 851968569 47469639 870658231 962261935 971349897 234283362 617382940 145628502 656671638 195471676 290846107 302089864 394135959 856010340 945459707 356302916 794774704 443084666 566029574 412008798 908352917 464992806 470518192 592830826 607176646 901102508 950629390 281293770 318909752 174389318 785974298 255804021 873217649 714320681 714332679 949542220 988441242 210797972 402175841 564981636 958958280 234366429 488388832 271726268 416172183 605256689 948138723 515732994 945851605 556246730 963384953 924641911 949899058 125215961 342195764 374512044 415980833 703058850 997812712 475701939 757966007 262926238 555351830 928960965 935737060 699193936 777515480 412883210 739015457 774395591 974563376 661766722 849300726 662003033 958579527 315003281 790575942 16280664 706875275 999654496 999857379 800897312 961019922 33033039 295828891 979794890 982888457 626321787 896316471 626882070 970621211 976626925 992514199 263238841 508676803 855658141 903539259 976255796 986216849 403827674 972191829 445493686 608000492 18751560 460117827 750668388 972989065 588697434 847177748 313405145 774976372 4903777 937965833 969450017 999502448 172920006 999182716 175431380 428138393 574980187 933609999 786264782 823755014 991863440 994984175 737354024 821086314 996752239 997367978 703551330 755915434 680177586 914289141 451722855 903049587 32117348 62275160 59561926 541605601 123394948 423616689 192571125 375729590 19827630 332374443 856126470 983714941 143617692 771191742 760524998 968208980 473720009 833077161 65721481 190331206 823001659 829699498 884135954 965304523 531227376 677242568 976066492 988001436 630012206 652854261 670026068 688175111 574939682 665128259 43735614 811591889 610125802 767342501 358994996 940559613 168202666 952831241 478457907 940657521 144147117 486147305 229373784 258813990 894237442 920329285 72784513 726057189 426665972 999536663 366482749 477054251 399984436 545076600 532663985 578436959 705150866 726214144 990054207 997538275 632734224 778305005 805003796 934254072 537796909 696699156 22426657 766600979 893153883 925347828 29441757 150811767 859867636 972676267 344976470 974139093 529941844 647988009 23217565 840700598 955114614 996708777 896889423 984504882 632823732 717845153 894870198 906837611 497750660 513572612 180296901 777939157 708242234 843292692 7555229 111006666 952218154 967315928 199567689 558618492 800302044 874394846 370623666 681597982 225930364 338818718 323209934 552422827 104231621 797135495 961671353 978936312 374048979 856172944 795105914 945129088 981243286 982877166 522664853 634396468 901931888 918316911 133574965 622279835 684128397 772751422 793108929 932520561 121645114 683131104 400513020 917262076 39862946 535343766 366377763 875400062 714087279 760936131 604416572 879084432 818549244 903595448 300167231 916409007 805316171 926838286 650107909 729585890 598773789 644979667 93876450 920527116 62759491 867654909 69303836 779478371 887319867 993684178 944302470 989597224 78884762 799294865 840471530 891922067 134435242 993147107 633291010 977516316 732852678 803202876 943118462 979267535 90779276 827115727 899727507 969117869 72800321 361454845 792199021 878625894 859593168 975237044 966605844 989838764 324369659 720958053 338308188 729909883 747485265 839926313 853996596 953731050 7363804 834868671 916479872 986192609 964090940 992530510 145182636 218725144 987793793 999404853 189184602 949431183 742616547 939107046 609656930 620904932 779940676 925367054 728431341 764374596 986247743 996119042 636206601 676849664 935728928 947334816 96130620 564173234 1880727 235873331 913226823 941933864 76296626 998368127 349370442 353548688 557244971 770507944 48167465 622995432 311739620 487737519 941069203 992238427 891873562 919689001 311991447 532492947 720346155 796111422 361737453 456550196 261228068 281117242 247062810 842888834 134384332 812253734 281704899 855084183 726224243 863200428 674233538 750226290 586849964 722683593 851658382 924495751 168201439 998769900 429391744 585256580 26809425 825779764 668898589 949843122 839651429 845938628 107376252 128123796 672847861 873187343 690808136 985917887 303277031 373525888 699835940 723078417 866843893 976242008 631777526 984072308 793974461 934627920 230286179 451750262 858875070 982208736 985745232 986275565 229840639 469359343 105102758 110363967 864768658 927055236 558692318 765278391 158911754 783266134 690458858 717956037 153685901 484818860 900844241 960481129 452952601 635396413 273518055 787673270 44864964 498816874 710007554 829210704 710874939 855109739 25345755 51892002 438627344 501000482 491852932 960197801 612375327 635823517 619762211 871855443 20566041 134038101 62523532 511959204 633115677 838200391 828909101 944589901 127810237 841874376 131578870 495653901 754537386 764071954 183241707 481518323 931937840 949021881 470216482 988903181 773612733 870085787 826106573 882853163 108186352 760064981 607081475 734868892 948471322 977642505 400168494 749170943 316043361 760566925 294733620 545888674 203820839 440201756 135436457 701633705 103853603 218174502 662326930 681129468 247684640 819055328 884977213 895408298 984544227 989302970 56115186 505227141 281556961 441817615 272151737 896051776 314788044 646993577 131275167 944928061 576405709 586723140 640755945 793786067 707559752 955464686 704315485 846030048 7062308 11329000 970649231 971877541 38675014 440360677 621982209 824953295 827032060 894645976 260937392 408898092 80344653 597587328 97841396 987057550 475159088 532036771 793574868 897261080 105542469 431993806 56344249 682586180 667661787 783761373 360182599 813749437 102928436 774985186 402307972 765974884 791524319 901744907 101836196 310449251 764568700 880376380 223642399 224885293 170744710 471193433 669647477 914146331 261207675 274471228 937309406 968969081 768682490 794715875 669123091 779684700 982877360 985680933 193615025 844096275 940442835 981489892 728106621 774942580 368329867 580207673 225758102 302548808 162296146 451058457 981314697 998701645 852612344 923962959 96528562 783538248 630594133 650596412 724409028 880142816 846492968 898620640 153744047 985091703 841219579 959545028 298778788 593775594 87573092 805358350 602869187 656586573 882926033 973926823 559066615 564727468 953977313 985805932 534800302 805113302 750424791 769482229 860843253 880990115 780172849 804820126 765339176 929288712 142901955 859410093 901397277 930847125 310255382 826437605 533963413 688785459 328710023 667171768 17096743 67527751 583048424 588409566 339846869 531549446 221652592 888769076 540518645 788468859 653445707 911693581 764392633 968607827 305902423 356978638 893079077 896803159 671608152 680421170 682009276 897165687 975864895 989270197 661181402 904247103 462888913 642883593 545703356 667581685 655756308 675321221 582663826 780447853 868994208 935742431 76109671 852667908 442274262 892638579 545381782 863306102 715864279 942994388 432787432 989704520 424667202 579211443 681377362 751626071 725255095 847878032 709378832 802516086 120130785 297291277 154382258 549669089 147444411 617746306 321323014 703237516 608617054 684043878 418302602 821786617 593749515 898716180 469874324 571091228 523867360 917752600 82432376 462877699 313089350 854476481 663913265 750839280 993018061 999954260 684415016 718709052 465097807 615284585 385294193 468625709 546271212 683486789 54404441 396187288 92385702 307925382 675691325 750105950 334836546 451331320 901740743 928291441 730988912 770474628 741361747 908022603 301342009 588784165 716590689 818936933 404641305 664281822 181245608 616417382 605665718 804761205 674507258 736738086 936614496 977904952 142703479 182118724 187017722 478029902 331032912 410769687 842131065 921039785 266816492 490215897 838550684 929497147 975060830 999432773 554798235 663096800 989086375 989637267 285114298 441265256 936939750 964392750 994219634 994525412 197773894 802275903 228654347 721532317 274880286 883992554 315662895 915470727 426016608 797961929 622559623 941100834 529787387 853763372 781031860 893524285 815358762 868512819 115298038 978074213 518800023 880257809 979647837 989399482 274396763 829210444 765363309 809259416 441017214 656257712 647234402 732276921 744239378 832360703 206940829 356410334 825431635 826139362 493562278 733107553 68680775 598144152 537923359 618185572 517888186 587554116 84719272 211932578 127163047 799107391 224182924 851807967 345406514 979131478 59101747 912544362 807267626 945115968 464983155 756390343 641885853 646718405 541140255 796294745 936308173 966064244 7747335 118368277 65721337 122745982 337801131 781282065 644635254 943680926 966728873 970589672 259189064 455416468 175846545 692237776 708281380 779129212 357041822 579225712 577623352 924162437 30710975 42523780 224454067 366615627 744049301 752509676 919491313 980505781 284422623 377342770 753706248 923667388 593993151 868771089 134787525 201319669 365117932 452264798 254916932 750903254 798989568 981468217 387042393 459119315 119970710 204803169 808972668 896882202 403284950 937550055 656966451 884708891 711377361 798251681 667895721 914897885 619258439 767374667 759610041 791282826 141985101 165028173 759998500 870286581 847672484 850203206 930758804 945306361 636971137 888017226 496920274 815344454 27573670 89503983 152394181 274265527 490809219 890097387 106256927 497212302 999870242 999917006 183921215 310661841 549341668 889485419 948387547 984929350 709455899 990902863 851539235 877926381 28528172 727740904 718986488 984122598 692735156 987083818 597458598 615635031 397815846 673944199 461692675 755213147 256865453 268416461 46471537 511005662 812037289 893638778 557980130 718013918 474929811 766245860 331786503 796874878 363892343 904449225 274888815 781290306 885761063 912048288 969446562 981678207 905067057 957462229 465353840 497483443 817109362 992976533 392245258 792652406 803854758 980559237 221711098 363130663 81178941 721738673 962219999 975670804 883202885 918703692 679964960 777449149 415497638 757208001 812908237 826358714 258354987 348984205 196423497 590860808 596888711 942582510 300517728 505730917 123811991 623779976 824578579 980111820 732866961 750462816 931777943 967183421 375236066 439798182 926682369 973633142 57013983 134776409 912778065 979587163 465434355 623997392 698769251 985391818 531486389 988114705 926462990 984876983 222804490 524184834 149596973 435220557 582029225 811021227 995016990 996706495 324233557 761497410 656046472 815615165 425027725 650153320 665445545 861219108 726463021 770862095 372051124 904386358 340311735 727858110 760339427 761880725 487416657 827933662 472317797 691021614 16240216 156125106 693338344 798801414 506432208 796316752 591949396 875778748 188247362 519512243 322643921 757820042 563827741 881266013 110591308 213650993 600424035 653627821 527829855 759722907 364455869 890049438 738997 348891309 609022963 957745388 18110309 138844235 350543859 656622766 13052413 902997933 172058639 275335381 337855006 898179470 609742771 776566567 575491026 786172426 523089723 554274000 747673927 790870609 82976585 510039576 286809072 681152702 609824008 857723073 44901737 963962310 966081435 986409477 573176689 658496505 957180431 961339775 139841001 169720677 59000909 742252317 245433267 708051107 551083092 706854556 724361779 734330173 335867108 814838702 441260890 990076155 927435462 970190844 146016165 207287589 109503577 236927484 237059236 998290441 700216942 870395232 222618084 534277625 273217172 474924284 876993695 915160902 876150178 978928734 967825380 988866605 804632450 854967627 513711854 525824569 408859283 975073990 186983753 395491051 471067415 636477809 227374905 831019864 611877751 721197897 512989937 889315577 280935048 739707485 644977594 972667622 489857132 742935675 882201860 959496455 889498206 903729057 278124199 949336985 261011111 313400607 185317748 194556878 943913762 978861259 296707778 587454201 667137256 757369166 121030907 971201413 649188359 892301504 659828123 999307107 177318341 708331896 741861940 807652719 232612025 244468706 695925434 731251655 557100342 798461543 188812346 310698775 311559721 727697293 524949067 882904260 220235755 684733406 267753953 610085367 214360897 800282854 501683057 614049353 607012355 992704790 775093728 817644367 83757287 640083584 57567950 322300423 479209465 831067144 421723623 721615114 431927061 901555416 90193052 144431384 603662299 983429603 437427549 677455489 709395751 913630907 259655427 452901412 942636127 954487382 644508478 829142640 195931537 901629046 710005762 777415492 423005774 460764106 469840715 551260264 643490574 778296553 905105109 954190288 660571894 961644284 909422910 964408850 131451185 144441007 961565660 992957309 910168924 919262859 597863534 791612253 179984356 793055417 37305281 75862830 966549866 978289155 462774088 715834064 816465134 965257501 618625346 692302312 452368256 758887062 72170302 719635544 293217330 945587182 853732707 951962836 278685505 992946117 813538775 877288752 361227557 595997398 16740888 968641554 962524018 999020459 317039377 590513211 441112954 555803712 551266356 655196605 661430755 892710060 946418491 968412248 180648085 544663604 517154920 726902442 431617238 539210989 704449679 906519860 645382906 958165824 381564561 664237183 21958842 834798451 982170526 996042706 7183403 311046455 905695179 906012148 389708269 433451571 971181451 993186861 490920202 551037349 637802816 916470889 188860960 450093299 650331862 893409884 537603584 601675382 317313369 475540488 977250165 992083394 478890947 569205352 948820681 988042900 83908539 301242700 119075340 929541602 964409866 969926001 209899191 600457003 880209347 943777728 467653280 694716237 183022507 763368465 694157789 962856953 794890627 897614353 703151840 907645721 835102363 874904653 189445365 746516376 112269362 786303390 925269689 978397308 75084345 585223478 18415771 711915129 954333923 954474021 900431640 937596933 887902156 947202222 18702497 286144614 763820053 960710978 827797733 884139334 521700917 530958859 735801088 802311546 739946955 862904955 883555177 903681751 203339993 251464044 908568041 997263032 239072332 465957560 741921386 961273610 422852198 441884928 377022223 729113228 28782798 484808972 797619853 983443678 739528957 938882151 827195490 844032535 819692055 820505888 471909205 931556790 391695770 602785105 91893854 454779272 103618224 884545131 683589085 813422913 589569680 726289833 318958456 329572355 986348552 988994819 699143774 855459849 391556706 772471268 219052271 825901823 500931315 681459566 338785533 772228010 693443629 956170925 686326560 986591971 210913372 273591709 224646704 984310009 811592516 960236611 146203368 312904114 700954703 953965711 304660292 862857296 726560703 846156866 333298459 336230031 776257337 940312467 933283269 985289417 267507348 794708905 455518633 966298345 839114926 960289475 851646990 890451707 592792023 931707745 307511895 717246658 857095456 922881379 265987447 683538362 256554720 821772044 53314016 119737972 569351296 631082755 636877177 783151857 672566808 859635733 169614670 319344611 118112566 133347797 901562695 914574449 965223462 987955772 56628906 118079932 934429595 952725051 126413572 195044017 332976153 507252057 629601944 849171125 70165678 244135571 705487943 997068448 642960115 726768398 756347405 963548206 767198071 994899278 76923268 734777707 687073046 822203613 837650923 944052579 71958177 495194969 631262144 793722008 457239498 802292550 502284463 653053182 92854200 308841566 588419673 674247450 476577830 736368526 920319715 956325881 323266607 344805991 58078099 523599255 266081192 660369507 622605585 820548585 601984396 927792087 273239882 807995840 108143484 952166042 519290330 764579913 556725678 916654359 164810002 903913421 332237048 532152161 55705353 513811846 471325443 798803505 261831011 314299508 451397387 859296227 465083956 567091678 147101331 427275853 143637620 173391382 174525617 885611819 797313990 831452238 569303438 730299750 614271260 804838285 520748730 643560736 178960884 718348759 18561170 54752143 859900031 910709828 998856423 999711437 172832026 336883965 217658156 545022667 829292048 849955047 194860715 617264515 502727744 621057687 328228140 919639281 571666520 853279378 132721495 228535265 361050761 846909850 934292203 995985666 472054935 895893394 485764339 725490880 622127954 909699813 719067849 781038508 96238770 996524712 188216901 573098920 46242808 584900104 898559462 992032694 386161686 658290362 726784602 925912401 63691638 656383452 67286260 828145262 664676026 970278641 67129744 103579576 306167936 508133028 738700222 912376471 24587571 243374653 151298191 329992758 699536274 909120161 468072473 666577446 979159973 996723832 2684186 234534549 634610497 808890581 852333734 955807395 803150155 998222703 367705953 681720188 331124682 675577942 866004232 892862658 6247151 429336816 753179457 832838122 363147404 835584995 314160348 753321548 78187344 97480135 156443111 565164639 498973953 506417370 702757165 937743623 356589335 802621207 413201186 904328698 487386847 790601933 740722742 810032098 196249948 877895302 928362063 938472319 588778412 691474265 90272566 472414624 204832045 645438054 835323299 896300048 263035828 347463921 979156655 979398262 878981082 880407271 406089006 979315592 528935616 547774699 22400820 157354338 511109260 897282027 939503731 942179288 278487336 685929828 67795828 287324689 165975242 520164165 35576310 374890423 374086582 953942946 445850432 848463026 554704606 854424944 756464037 870621302 954937640 968831544 377791508 616913740 732575179 897842244 266568616 777735644 791380252 815697660 353316966 378138810 442067315 654898885 854772716 946337689 293105273 918761726 95043986 838206242 168713969 583856599 323456991 539949214 41225447 829517197 535178734 786846546 483297345 896623875 629195928 696037821 786692226 881528511 370577037 759634138 442042097 894689344 105579562 654374384 596512409 750987221 934553378 988894114 15396091 711788248 855155085 956615176 499211104 911469729 917309870 973881148 790987775 990154608 510929350 865011682 879072103 998280887 536939124 758799628 32581715 608165255 855110613 976241866 724606778 954103530 662553388 681161938 653248437 948285700 722864379 928384603 829896555 854300151 216349095 508862393 956513845 987547889 976032079 995051283 46627109 729588716 350203850 411231736 939026638 973555033 92586391 937986396 90184513 836670962 437163189 976826057 620133897 657838225 713470920 985014560 670890829 795185671 31760705 297654601 830835190 933093064 647156618 711452169 167320142 574960966 386124819 746864832 508869863 963854295 121932139 311935537 702221122 908369335 398481883 465962677 515563898 622235603 850147095 999365444 532824350 919265150 211083072 399146590 510949753 669456718 737709062 802580950 532885152 982573169 867987466 893201441 32425236 210375059 800571541 902213419 585885856 973940768 647596608 834991528 724025762 774674426 485288712 781743429 367762191 844857277 574840817 898977783 291038559 633380293 853087985 878297067 594746883 644754880 503845883 521082293 641019478 944801730 591590597 917971639 266668527 572091622 819944798 982007458 534473659 591411899 189798953 225538595 781890535 804442411 69582303 946306672 383281098 944953264 748063457 953278642 383553241 774909399 611084265 907260359 795447550 886765850 916433623 941230381 947269743 969147712 700332257 784557806 216671053 864231531 204564371 836037134 590530104 986930807 856641907 960100834 250808474 662873773 727913578 908481530 900561488 941562749 461438220 571382990 981215036 988761520 846326783 949232862 212806766 608917947 37974923 704529201 129312335 421577272 3910188 881058760 189706110 210448915 539330147 852623723 724052549 755175073 926294210 951091621 308903067 464342563 223785606 615706855 65838781 813886067 135924124 502300032 292077808 776348463 34383788 229278962 884283017 895605847 962543710 982643804 300803313 831677521 857924754 940818515 570668952 715077487 90923196 715886651 229561798 405219340 813665914 929990130 360711476 618052282 807279156 845356694 665721303 836559799 687746930 860660982 924517758 979190782 597393388 825530654 358210075 946719151 433792004 451261497 84632346 684344840 577127864 775999886 723895248 916684860 846942378 966767113 274688727 876135591 322920313 777809331 448757664 650354657 940275364 948425711 958587883 971103230 251987642 283340388 548459115 899466228 699358491 846794121 312761838 427130275 466934840 789372024 480058225 577427602 798063077 965143324 516713261 800514703 970841357 997056421 191032808 547368900 135099420 680272506 215198661 858505862 3347194 373315593 428058222 555395364 144395108 901801060 123928979 904717612 876513956 951562242 260780679 943933379 940892194 946765993 544636515 917747211 648336574 713320623 321871557 487483356 263643939 440920003 10913957 904103539 617753249 856867711 815155004 890739083 679975765 979685466 444299647 894796279 353321159 978487796 19295595 810793851 385995585 889821977 447123008 561634524 511292457 522714211 658139326 672232504 393787306 896322262 675738491 995151615 6073653 7150223 251897107 609732883 451195410 733530967 708385302 796643415 747240060 822307881 960643650 975423220 355400480 471418678 283423891 990014110 646323472 951864132 845081139 887944074 998378870 999085947 776573360 805985060 543841645 722325750 800136611 897190360 586334867 831133369 555106201 900464695 140831019 828508308 585635892 662574326 786855895 811796397 432866871 574077939 1853441 462074114 957918097 973469216 562868661 585833255 456034491 834739473 779992496 837073015 88313767 276503004 851117233 920198235 871980428 932058805 867980468 960060383 102829739 317788970 121446706 717166337 74737775 720837046 187533071 228318651 782434853 969033073 26203948 716619887 222979005 594027601 14892504 307156137 266211272 899297580 142189111 493800201 613713720 864865255 315014850 370287624 54029583 472680107 715098280 769621829 871089475 953610242 18579848 824743574 531004779 963519893 58791845 830845959 606327027 755302578 711685701 785789114 317246425 727496234 232719837 321699349 19782759 211654933 856867134 998869847 726517717 922770682 595404035 672434891 633552438 698152361 72894588 732820633 808191914 811990559 147138780 936732119 405179007 529742520 152197126 809712902 188535677 440689806 101350868 796111739 526606752 549036945 372322260 983571219 125260983 884525318 144425650 454048064 295039073 514240620 659105308 930200548 452044577 993002792 532791098 603637869 784265876 823567557 849135229 892184002 310303488 644946819 881659127 905783871 207786739 743759910 943832086 971106554 104682789 713475700 183540297 431274954 92964128 424242820 108896778 522526077 385525694 984997825 800855084 884710141 397526045 958213188 839520189 861255295 749063452 978735413 274380096 441309246 78379810 656943136 872684001 915120741 280885958 985168582 295620703 970227108 110713044 268896718 954305209 999309080 117422221 310577436 281876955 847514650 397168302 671178938 245784857 798354095 231372752 466810295 548491780 775798185 87724855 375796675 742136163 828822760 169928649 620859641 776203886 955841986 695466019 955729627 461157990 659233635 53974677 499104872 913775493 971032112 594374029 661315138 408306808 951419070 191448431 664807465 411925231 485384992 64025292 507282525 578855976 690525861 897168553 936817633 870941579 977839389 940140747 997096132 394310413 713441717 383319238 595535564 154454484 646720682 367354781 864074598 84446327 214031041 932566972 975835322 858027420 862377060 905225173 953920628 884391700 974924973 980507902 985516417 13231841 765757183 673153446 981367365 843353228 912085756 607124372 762900515 255446181 557414780 334072090 758640543 666039892 739162902 878613022 931645809 229741494 565305566 238093125 467989504 353655387 802302637 421910507 746666940 301139159 325646079 164761022 759676385 545672734 994227282 967198518 982552967 568084409 654225818 266747010 444719372 920680872 961061046 795105217 933092978 234336861 666997069 509542112 644088150 253300882 289131865 520476140 751783929 341824575 796824614 724653370 998658975 892932333 898984964 643443334 946864450 471185560 968741654 186271871 755099838 26501318 907651312 170406040 879288634 930101377 989405514 679987482 829860359 169543375 924109845 840630380 847952458 809931688 833728893 826679481 912657710 895649955 953041307 951183759 984947227 256740896 762594098 653745775 879750007 378103740 591443024 131942866 475180045 488349014 733963284 579057193 959288669 77512228 950021949 915895067 993342454 918013142 943918729 94445658 419750730 784113581 869189693 450989262 565041124 132672506 709721995 538091999 660171929 662981473 755658261 470220203 837120964 369338307 611690264 898481104 933796285 497172905 658283775 615550465 913229361 394997381 459190688 990285877 991291929 449680828 902119873 805705793 989688612 601743896 661235451 950177290 963103989 833537092 998811228 812058885 962156680 228929727 441313082 482444182 787659992 391166836 814440561 337942007 500289985 947566560 963739823 733705297 908676280 971845555 974404949 936997295 965510907 814963610 964530742 887499389 904053258 791206635 794730435 809606903 892094172 188446057 764680100 531072029 649171745 818512106 831479063 488286873 996588199 971673046 989431156 351577231 628495416 888781155 964638855 793137969 868455525 224481700 350370040 837261809 840689114 559338919 703674481 662486140 731553744 531699972 796998530 276022342 338355611 81709452 468690988 769391204 872984935 728270136 793452738 459356498 582267572 589266843 653968753 816646770 929680832 463335716 652734730 108473972 495936218 735146713 815865571 768503164 946990841 509526861 765066207 419909606 561931519 739543121 956671292 328595075 775612190 150116886 822901433 675655747 973080934 496218065 889507313 13130572 924575568 634220807 851038887 985890837 990669787 798776458 915462684 511160466 960069932 875951880 942383165 948179600 960269066 294492581 830150565 718523577 905347609 646484422 925632584 505483010 522237483 451899589 833505642 441066686 901018435 734844785 863924158 745238714 950864590 800213694 802375076 928823245 991774154 918182337 997908165 269565788 998599987 175463988 760412286 324771520 706929716 276250863 673216998 831783334 983756713 119678392 658009632 107728434 490554944 59648276 786223683 315341022 512883875 563488128 683581704 819070113 929061099 556963696 930780450 316639948 605915485 735425253 804839511 193468520 612529050 397404551 708897388 490743103 977907372 244520800 549177392 127480728 490611803 378296699 909481899 444453555 934938674 657966626 979634810 144719357 325386095 754687993 967983181 257701769 313996998 606319411 791251766 294173465 420070421 539429834 834151127 449212085 542552800 597686126 983745660 375122478 383643953 256030435 864313720 209459028 843548067 220034361 838981839 935287521 972336920 968504519 994578523 520822077 854050878 896019701 933670743 568607719 785046209 829925751 912838032 602250763 739526848 223068624 490033582 745432093 971982782 756548854 871224139 106987528 928958692 951013248 974361957 138283881 861021611 480106584 506911074 630452859 724039781 762639098 962803346 303532672 796310642 323239294 723802590 48533113 369702366 178661701 601933078 546454018 805984724 251138228 716826521 223099200 288378930 59164390 855379218 155165942 712449166 767006893 998075476 42555819 496249193 412384284 581372366 815365259 945450139 65229115 194146551 209407046 415796958 918867858 926086225 448127157 727751948 444238706 627733289 169369064 260511783 989715835 990639196 20053829 913352727 326800760 467348790 326851150 812923248 99469793 263477403 460356199 692024355 201453972 753572122 421535896 588319541 32479530 248697237 410391514 755330917 206446071 495307170 841829664 873162122 720680908 903466474 608785671 718733647 163093531 804213710 778065581 866237985 304599909 843733752 647076406 658166729 609360620 931946868 942615619 970170641 362953295 661562322 584056049 898106640 103188051 212688350 815779307 910933904 218281446 871141858 872242864 911184938 772703998 876423513 919425364 925273186 500255608 510832438 148487691 163353008 179359745 797961855 449295575 718547697 245214305 509885312 168656732 633040618 952330865 983349567 802111160 929848498 309099552 405913140 236444767 593570307 281775041 866116306 738110216 838990647 772251023 810436090 30313427 554249793 540604146 600155437 802605656 943244094 350862559 465845484 396650870 926368546 769212755 876900349 150204909 591049213 729808182 856368104 595741280 839351616 6690790 938320401 868516632 992094641 847664539 999117095 555626256 782855722 764980334 937420392 604832113 961421785 466617835 604139414 569299635 892242719 977318923 996667281 112824013 739773594 710684515 842305013 881705807 990935318 485799355 616750394 974081197 977418270 549018553 864475983 138179311 434376585 939772060 967639918 984123439 989247811 530853788 921019112 41052695 915969697 17775497 293266344 152383390 794172793 205748943 357238490 97623599 163317973 518884805 911076674 804071868 863866782 384235325 670687239 539510514 975061412 67986887 741786772 221610842 837045467 478282850 848810109 992272040 992496583 664762756 840350800 789457672 823408673 365413082 846029202 576925681 905984199 830225732 889384033 413094479 740877415 803507612 884731385 583851055 704488310 159201861 170636915 627551907 844907044 663840247 935947808 844133491 846783023 329528222 772870385 688854292 829952950 480760861 727846086 600332162 786708573 688629109 837043953 424007334 930256205 894682725 996253978 149380297 765789974 703052404 969752604 93712992 432968002 871393207 983301423 61737747 587894672 338976491 386892805 613227441 795240712 909826733 967309953 1396950 166868069 245308171 369622486 914068883 914410344 877328040 947630095 261786025 441433442 316056133 638362375 470209960 851736577 490778170 511469046 707023089 849748628 783375743 876579528 966405831 982495084 739313222 978210660 938867711 968819318 253343349 487544387 490020985 789948971 814308337 914815672 225516236 244238441 914380928 955955061 763427836 805530256 404804346 610004110 350202592 365226507 191081819 931986095 868598183 940522309 776253680 810393056 742407766 906702511 381312414 746204939 345349536 868140047 545014721 748491667 953220773 989416533 407399389 953482993 627847403 975124955 876220313 908394315 652374448 915117161 689837079 700700377 204150910 481452227 719671628 968261506 345052647 898349496 448727110 556592586 836900037 991239439 282659370 852064215 23154712 667460916 843331042 889246097 562387522 964601098 79423808 894861525 873637246 933834429 881546795 982720034 195565829 288433305 11076735 935493569 642156490 998598204 882663242 963789758 930150365 935931268 175555143 884146891 204485549 320232662 920432849 970836049 306303377 549433086 272000254 521206336 908934490 962450942 116699010 687812447 802875679 816884499 712647415 890516396 807595899 949310565 454681423 916820246 595490001 938821345 255154040 580041246 893751926 970108433 762984320 949934248 506406196 779855306 994847819 996294344 511411194 888147351 745518116 829353245 852379260 974169428 358726790 643884193 992638157 997887386 557768738 665884004 839201173 937473738 169456432 376663774 39420511 566998466 716749543 859355526 31909625 332520428 107302903 902913924 617768042 884489230 669747847 700159439 966778320 991338224 686206025 979203250 655076392 817851395 919183889 980893662 528392934 633260437 978732851 979576762 872298837 888622915 687701337 983752622 507544061 892199259 451280959 929787428 992524256 993184322 605049290 967279776 68455968 863579748 806579894 877446278 809692924 994815684 801808872 886474371 607776519 796923337 981124953 995572904 719302026 955876646 432278057 553384162 475815772 741061301 186858401 579783978 733106901 957690423 473749328 916781696 523584782 633009437 755709791 966272698 450958453 629829213 734480824 950961600 294026417 944219056 829197563 930212733 550643902 619262583 98623200 99653366 645177452 726824446 411534850 427622200 837295636 881058461 333893834 599681994 777412774 810892021 772240990 875148151 780787137 974241202 207301132 763283301 857523370 895998957 816265727 968436955 330158340 408891762 680185771 838240524 142378878 582468553 949048729 974696384 558607394 833514606 964641082 967934735 535817627 981660479 596676151 899859855 805851625 920157335 464038608 768816511 527553645 888869445 96316345 322710605 339360599 467499271 496480011 825503794 363811193 790937218 520897496 964121981 770621929 784312466 799730043 992398918 700216512 725258255 251269329 323941248 860269637 881250489 465941427 622832488 522454087 763979012 730648123 840181794 215263670 445717479 729886699 864316244 618302681 999982360 383813644 452733160 745158931 758942043 831868892 867784019 506206260 852917750 171006416 270992441 817397057 925274789 832256721 983640284 613644650 677480217 135680095 509768553 57747165 821303454 137776552 785452028 60245245 531332641 564255179 624626628 243759720 716907435 314075548 892301467 174734793 877753536 293849639 508223691 386472918 777169775 523987600 940548765 403510964 916448787 494083735 528362478 558397348 637494214 290772096 315557497 191049244 818526421 531762266 599113004 340916818 643222796 825511320 960699532 333073492 895144290 796627397 864591976 288320939 312892231 234928237 448982047 70681967 197878851 675907032 903096177 113206471 504449289 307988952 603452810 482271703 692144370 922252560 989551191 613486962 944121367 239500465 547413467 191951196 839097668 530860610 812921111 835528399 935424364 734394885 883996382 505044038 516154970 54366739 847538956 50670270 170092662 297262957 463300731 569098417 778970184 987406012 993042399 550165137 682968673 652424917 983094788 618244985 887552705 387970009 581630333 174242397 562045303 615295893 961206788 641908119 869562908 171603896 622641234 283839601 420213400 287800307 869828849 751128393 846852451 176859950 881448312 628339330 855623978 656503476 695562984 573793012 969814843 862804188 909355314 953681464 963519996 283827938 425096163 446007672 595525225 208476760 251257178 558117001 724868219 156219695 520999007 886705473 955855960 727549337 954978844 69888834 198796884 997090024 997553152 81498547 678811183 327483965 792044492 60342913 389721907 483113364 868066640 586766148 905265994 42453881 787284178 88732065 124182410 196839860 851311021 82893950 715452210 309244260 360171928 554835311 598753892 59381442 108700382 399929760 799205214 377828474 482994892 141823643 907835778 848141666 928917728 975103543 993689061 154265222 568709071 982688663 986701525 827687819 908522178 517183016 693725503 633629822 832009197 274900815 713009198 968850280 987949471 627994413 919994694 318531273 424052086 156738162 402283256 770947575 847183814 612512720 719883814 989363363 998987780 691607369 798437387 448997910 508791108 907066385 951210660 202980952 493281748 437131585 787906139 676054988 816383207 207639537 802066917 344716973 754237584 151527456 626630947 319827187 963104736 229006257 456821876 144654519 511418612 572104585 753697797 881874302 947649495 856064325 972742244 722078062 977351965 131996914 622061100 46248917 165349355 817780508 886924758 939731843 940814515 990846293 993718046 259497833 401646672 219096218 924723991 228696609 418402276 597822488 613606062 805854053 918908398 310675515 658241115 254584713 769689534 563806215 684243302 784426136 849126138 780401863 827343986 172949001 337660226 76413191 333958480 577809917 994663097 580652319 885374733 901711486 947340382 765954929 955094220 428821560 955605364 520219902 781165131 297318151 457968660 971374127 990077804 835513639 835683926 872739896 950210367 263633113 844021868 140268054 447914994 573533775 970303081 776813648 945099401 602152893 912688239 630363083 753288843 313562540 503584996 301880149 763361683 877635983 931721139 525284134 728811988 531957692 665007555 530257307 673810650 379590698 754526393 147458536 349974001 851307525 975659337 927491127 958121841 126986121 187332592 417798557 905643944 375873072 746692098 454675453 670549669 983726998 986538572 174348711 709902579 168707302 670343521 966668645 977169387 648463841 791906229 923147308 932054845 251745803 294720223 887568479 984110371 652438361 725628875 134119254 579596944 83122614 615746478 790417944 836999149 557592002 908937718 485402484 562180868 835060997 873788470 266609021 323831036 791684235 978182080 896011050 940347704 882738869 980746692 721180122 897786959 472000821 937129113 174584082 285652603 800841708 991731397 880212344 992624540 210191932 846127109 714921419 937205632 699205025 843448072 326000648 471405878 386600146 718689039 162851051 192955229 797763538 844774227 210029110 598217104 511908005 704771620 756266936 773209178 367844510 597374005 581211561 804937160 172184514 209571629 236075058 873678345 231208715 884501623 592087371 645603654 166843794 304232527 573488688 976723428 543898964 889949271 984954818 994319759 594237446 922803007 701495391 835918854 82984076 236483607 475099413 563527972 345344994 964967155 901615370 967586248 881019943 896438665 564543823 677236336 330506503 933765097 364037128 693045769 600537829 701113966 429945034 814037723 101615332 447702890 678375400 702504548 412400687 608187408 698660853 955420058 26796833 291749048 84956641 485629791 877554437 999163888 492299003 823032166 81655470 987963305 2805013 421387790 3364085 842740337 521099807 754161108 480093350 711775111 446576782 752179894 609675175 614083815 527474290 747948549 819996902 835882636 997400003 997801261 468662702 736567394 471077607 947633930 605850259 811117744 144328747 472155504 258857123 879718570 145213202 702654781 113347960 420317758 29120132 163187474 739546643 840658048 988632158 989453688 262388540 387350664 165942085 356849618 177060182 466749049 196580274 923168546 107861218 118104316 361531032 788958904 536212089 997948491 949513493 963726650 830217008 977993565 885690749 970462421 301982677 395944200 562698853 759945674 217247421 572833185 880940547 893245212 473581279 873076823 186035358 874445996 502487458 797176901 700450681 997134779 129223443 276140148 657486212 966335481 422221607 750994918 288294508 431146755 853278258 888137576 707625118 799073864 565943591 699568066 722362151 913256113 124769799 364459335 366296502 638892463 64552327 206563742 257361193 577021058 179038807 702090697 577880410 579098362 856761221 950298611 187481085 927464588 671847806 936231732 529030466 941612997 963094424 974713095 202511851 867882910 939409939 968775129 513462044 663465830 786284479 869120805 91389670 562652275 1963801 521454702 601521382 862990005 74623470 582684772 742267145 956777413 499042452 557980065 653669929 909061017 971573468 974091421 610870011 965503907 445655270 959702969 178408334 834865552 375141169 683482331 776304998 809820906 79494570 623874367 796560322 966127718 453740055 628997774 546999585 660401378 364249482 396402184 725086102 872432710 544846217 595014762 506644911 880972637 446082757 774856913 501065124 925830209 258286008 853797000 286606452 578999669 959404197 963030426 155671414 669500966 215854406 255033781 943070502 983615253 294531574 419025836 73705385 83551312 389196968 629454878 616935459 877247727 983893247 996382675 829886755 969857828 304668463 667488689 991183662 999804205 430832264 937699699 662413626 913336413 225496675 275605676 778612984 974816813 564596175 680126488 826809764 894672196 11379720 547511005 456161920 642121140 80727132 826505329 188434078 775895648 646853813 839396913 698535987 831245119 934815981 961402472 26859445 571054560 654780803 731423596 762904076 943444945 371605873 738830804 139096647 596336077 252473673 339288948 350891361 541011580 743412690 904414860 855571830 980701182 371497251 889891628 841958743 860494236 843403445 958908532 148928538 459299995 154633495 694290653 629748139 648467300 736763782 788677381 681157166 849665212 87534117 624520875 295107864 879353834 195567538 347020880 62292439 500394042 584103226 683672524 207256620 848568137 981304055 987568763 764626809 892520805 850995492 960393432 460058369 784400279 358567086 813662392 74916587 185047927 712480235 889596195 617254263 886202749 296900428 984574515 835633949 891604277 666497090 705562162 14307838 982411900 531338107 659161151 493173487 548469572 208668267 404132283 87519154 804564736 186031899 615188039 693357537 992679453 885026210 891538840 875341021 922384112 275164226 377566870 637973139 750181940 477175303 861692000 427771610 930794575 792041069 897526277 945465398 960694964 369294909 900550644 616525963 701830645 494828795 906322474 102245610 232138478 537535141 814072050 231088830 790234980 64374895 138720843 487607888 924771016 783276646 975701327 106462151 407217077 442593292 783630862 618459670 767454890 21867617 247881226 728825740 952345218 24128970 847976299 790301557 844516804 532559456 874918017 190173682 880705799 889401878 913464299 237234335 282571909 231322201 870728774 639055505 851095998 624421023 784389892 201877636 625056965 824399524 995210094 706023586 726063877 758615220 964728862 478127563 519087474 609644837 913657603 774582771 880197149 468081217 745994397 366551252 458028864 962165350 976041423 804790326 824554430 733451165 747839020 466410399 837843021 757921494 931580580 823409002 991621620 508620781 767627946 677612609 711507289 885705229 924252925 692922364 912872981 560995482 779642003 1362884 777897016 736527383 968222786 536057704 557604445 832509435 863703838 917273138 942954141 677260931 819171840 476684676 932385283 4017273 206320664 628153922 868360724 715055942 773616964 853199196 922137657 947808753 975877148 994192839 999393940 239026322 968331135 834070310 905644313 261657422 276823587 388492769 832718398 559246777 818938197 784193113 951531388 521995636 535501277 399081253 623010437 171048990 383371159 26418915 590305087 582189141 736715748 885502991 943757021 515024789 691449080 100402387 521803785 170629601 839371216 510461362 558729134 784649580 898596184 425023431 670437166 941422874 965099413 516127989 880841865 813631838 930684483 205919987 532137929 726353751 847537339 377412404 419076524 429692478 727422675 119825125 300969959 275676957 636519410 446405985 576010033 55892096 632484355 86127033 692580367 236990165 388120967 893497018 963304962 313305655 847410380 695953754 997207973 201828465 902134777 285876177 583174237 175571970 639483495 469770084 927981555 846079483 900454573 729839881 799776726 206056755 748303585 892638985 924076819 635742687 739761362 68428064 740106006 926688781 971251368 605546729 768500083 604064634 891561763 622320337 829821967 126051237 695888102 497963746 536464984 946007666 988935764 841411079 902946377 140859646 549849126 962374455 987859453 88809951 442574997 56811585 317316994 328731916 466809528 118811735 771597605 975926970 996809048 767935988 849858361 615175842 721243900 757566685 847497513 621233782 839155405 551159196 884012736 432598277 719991693 681903900 743066736 550638641 897212469 980417093 992999223 374600455 824656043 758431363 990000963 380881866 957149918 617821602 768480179 320768165 874618381 659224754 996365040 581466214 710276174 410953011 442954868 914344912 980006557 677221716 738960947 897751462 935814878 738160135 937028744 979959054 990387537 406832887 590948201 889997032 904919492 654107468 667054418 64361667 535512473 338915697 920694658 248113990 797213972 413074098 980392486 87572305 278785790 371901455 638709520 165995529 805946636 178403822 448557546 298839276 674531647 390838213 815241816 496940949 771020028 632741866 956621708 474278973 889241240 64279317 149407247 39753940 255123770 999051992 999421067 954804299 970941036 454599436 850076376 204409964 580588813 387925373 493038270 937890934 983174389 377537962 426795386 864674794 909574636 272822525 289331054 925436861 925548195 247052682 926312345 408515365 549697360 80381463 331195904 303889109 985138651 737834948 990089363 786006169 821306319 72715841 405415648 246218545 971395566 105772399 387149946 979686392 985649899 145285612 887574603 921573074 978610891 53666415 137498211 102402499 256026535 918419906 944909202 57712012 810634754 415931521 719721723 176624189 496962223 349799998 399806744 553358094 631151557 534312410 971822792 35238851 511411373 321903210 785296429 749617723 863766322 353702919 519134384 493508655 701287999 876422787 953839881 128706986 368974553 652055243 801775520 568055730 990548751 344845762 381299494 853183308 908253410 372684822 631426023 835605271 966361154 13411109 205780909 542907031 924491079 247164841 725316987 943319181 963051095 758491852 763209762 980402277 985862196 999396223 999838121 617420821 972654341 563303090 793609366 518008397 663444494 497862276 768334808 713964331 780458324 582202538 896818047 742052649 991498064 33100687 758740837 774826483 965938062 257427363 426273676 70879249 877902928 834239487 961258345 842002300 951181572 992675161 995284810 257606014 872696976 695777059 846292246 89578218 427714638 974143251 977697384 893533267 990083226 137376323 768841415 355401146 772940172 946326348 983408073 828933257 976763552 868074747 962762824 823135121 935795934 862495955 869397348 105374840 425715632 217177864 789359032 245079450 300059571 898604897 916621693 935682006 987337375 545791958 580021073 444483246 744080241 853281300 965325835 417959356 609036221 110466894 928289251 294834729 725515422 332633779 800463862 853642242 866301789 589315809 613008371 142054300 390031158 509422526 560506574 316447236 507685692 814033895 965528232 999096798 999944332 793469898 923439528 188296629 568184179 145448758 563814542 315520206 668111706 931110167 947137267 596109135 689504537 825128509 890895267 387697730 792526458 338732081 664643495 31356860 203273011 452824610 703988886 809936382 936036765 488996014 984101236 721934173 779531686 78077895 998516945 909248128 911431084 126095357 481995085 581154885 659798292 946655040 999970428 547698624 662045745 742690060 914894158 731864894 944104064 15311923 771545981 991508385 999082732 445117949 562618934 436036443 988922415 975021541 996764089 309455277 477926304 877257520 997391180 651643986 963670629 222833234 472235124 211246868 752474692 865438882 877506613 399687321 911138448 967108959 970170016 353020415 921533624 104351392 912950862 620621778 978266086 486662056 726517423 78820736 684544237 309867131 874895599 241230956 647888433 639506798 961591059 902780941 989219533 641915611 833552712 807715724 825866551 142023927 874220638 149843734 465686491 992910082 998547714 787647989 919931919 21449572 266281551 890585000 915593519 643944782 793070285 805208529 937751556 930371090 995966625 624640231 902492996 290277530 343550429 44476263 601651065 355923355 921099239 385429742 867993643 17336941 390742490 987554721 992768420 449247649 796841611 600238385 601144847 357453883 606457835 707243406 868105679 840416986 895983337 815651973 924836183 300442516 643790734 502458290 580469162 447913390 453367725 168505166 261081757 976184873 994647384 771861295 832330794 204717969 862831079 587090405 995926353 261126302 924641990 444277213 873216456 718998495 894706509 268491780 383884122 971090254 988626566 258176589 950344667 989089712 995124946 123458156 477740697 366926707 545110670 950787194 985693748 86608589 808472976 91908226 157537151 327559242 505542235 788341690 854419640 120264331 939966196 754472008 923120301 160548176 320883507 718350719 967881984 434740151 610128605 20421569 56575790 575952041 667167300 384977308 616617896 675824271 859119860 122998846 331473137 205758982 802146963 401189403 823169599 462570736 811751451 375457808 877830761 808943376 857229963 436315240 795380469 574464000 905926642 905515378 925913274 406019383 930639633 901593820 938037666 396371408 590838419 245857853 757534240 674671931 969793379 338246356 951520971 489389291 791458119 361894932 590695388 225005590 971456838 927579984 928761256 812073897 869282203 374303253 771594702 67753550 418646225 196462682 229726139 757738491 766293277 187182295 644215261 710728636 970258546 177776606 853579495 643691205 906374077 708289193 973306241 495841059 949354910 429673203 561646725 134232205 461178116 80930559 322583511 154381315 814000187 192802754 540946553 763513053 967133222 613543710 769579053 789444908 988297301 877038374 963543760 714857193 917365028 874088200 960017828 230463815 727725871 133084408 270151081 377082587 969598312 597112759 994196548 738138495 952781896 3568929 573258260 731676929 921706527 629122483 872434377 717370128 957647592 462685498 714677686 255489382 440286328 550550226 739054228 456627601 614566404 994789780 995245754 905857555 930864163 792160056 914346204 9874643 274409358 516481953 841087295 464398290 675882883 376311519 492510066 429244676 431491161 532962705 801803668 112400895 145873218 439084610 792693204 401168874 831772702 670235937 721046607 115355268 122642984 176735263 855243807 374823253 452032052 48580006 260784744 26374769 229395557 279320482 784535030 333725249 913437506 119465325 273632483 613434430 954809636 971079831 996702161 780634823 830588562 593362690 857734467 911215261 989663106 68304482 140077356 894595184 988847041 214460987 882704277 632775098 668602489 609461341 667509020 133929671 991423032 366901044 913814934 245715726 881633147 38371019 123802429 205018435 459388856 972902925 982178049 238304258 357191961 279231688 366055339 369580182 962231125 215346788 402810026 499481259 999338514 192448298 201366868 527800484 661225250 823813345 915978087 355996709 655342505 344825816 697139448 316369206 371590544 457216560 774151197 327804129 975934583 291204178 550034414 629204699 933692597 511527651 748173475 465976557 555803030 154455836 274751785 357409814 404425069 696074920 739702560 232984141 607688715 894912970 960731612 598201483 985211028 827272196 851631002 316628049 696977115 992149544 992552366 526337776 717357968 697879209 919252598 186830129 917142248 270532837 877868138 764091996 980629083 755984993 856539123 863168028 965713773 669166185 784638162 933475833 982141894 329065267 938167625 128777711 748953619 592003139 896164707 982491876 990589403 298363937 678393052 310120316 618032286 956940007 999265983 656706164 748345300 473900412 784461810 695301597 929739326 81144229 411250351 52329203 67833300 645540158 783963270 617668737 862722309 621494367 995094706 730456755 830049400 537526432 890398060 960794249 961709332 241543244 455887305 537765491 538277733 751101779 943765952 94357041 441788510 745413129 793917685 905464864 961080117 626323843 671202335 290258221 581415125 381880781 971124739 979912230 984352279 465943245 848217515 256075331 625202493 217968444 529737099 911323323 927716309 868976375 969069615 920957869 968402926 339760400 549341800 891456617 979074903 953025593 967358096 649286120 891794623 749000162 796278800 378804498 769273180 308212671 712218626 760174666 926264703 564685665 592772640 716483310 844024412 327244571 468348137 59362223 114422672 263092896 609053647 860538253 999014638 266045693 971351082 77595674 888459508 858892639 882438925 281313245 345243253 311823418 368042568 796819358 888675194 753532438 867087860 137320325 946029475 455831103 868398527 744515127 770806612 807100526 985704623 348109278 898920321 897055550 961995232 548739743 860074807 849120437 955061201 704089099 829697690 533685977 651142466 373217489 628186317 956701628 971799614 878552566 973124396 122940739 578485115 938252207 955986483 178427450 813842421 452231398 950259604 59899292 87373990 164357459 484998421 82151103 776350154 399148755 765697163 273252122 884724497 852974113 918769496 355700132 573180127 893602841 912033536 95498800 272296157 825233494 896918420 129456314 302777738 158780017 725517461 984446570 999897111 795609795 861905238 740580174 899999885 897869523 945038555 698762669 786002337 108188550 993803129 168636434 384987469 390706995 939299936 901079520 962345552 552515 10807653 355650162 959445991 722760220 848539014 79196023 84662577 464580308 674174870 412197182 753314893 341159674 692550755 15082428 981727381 326751132 435486622 548340254 559962350 644908611 898777871 597456699 852941618 944393738 959659641 421332051 956885588 678982427 962370486 47430260 641172229 849614530 960433987 729460773 738057479 367257854 470371271 284059235 883448353 140391425 457483941 155170296 861179690 832364112 865764234 231032395 913222361 678551792 741382969 695816565 983231761 416896095 505082764 789844640 804902411 69595490 416094515 179262455 638564632 574935209 907117331 193022532 202448052 65776216 926213382 813264170 946119917 638375625 818442008 25025617 167184204 217682224 831287825 278088414 431106013 505238570 857311280 111554875 207526320 976710944 979668046 3851519 41843779 495998239 659251495 440753007 726096984 818237094 826441147 576547501 805861304 301488179 646078815 94273551 928716334 411304286 857860562 781046060 790005036 966334704 977961649 902635723 992443191 978925181 983063575 451592995 717256912 685880737 737594002 101747136 655029404 886083818 942162656 70391186 76908639 824484169 851012211 592536189 735716464 976010403 977901545 916530648 981244248 8285650 257443293 376628158 673864394 669382748 897832761 986643608 995190024 666113146 980855131 728518373 739298646 365291514 822606530 489363120 548443567 529804494 843592813 360706043 953273868 138941451 662854006 484733468 520578452 68224015 121990407 920259631 992872997 25613019 736329245 295045562 598890989 372129191 993708438 687027703 928703621 680113608 944226002 481198697 550418706 194906315 747955551 375793160 527850550 141399930 913036732 523357116 775485534 460869260 597449058 697528599 907055378 972446293 996433698 398851512 880949505 232217539 774789554 696594686 972478499 365422090 890027721 25294007 601725001 297720522 459679521 7479987 920396387 842995228 872913236 668039620 806073574 51987849 183221482 107556416 715161633 106177774 808037840 431151309 922928879 803710800 973404032 411772307 888691811 115231126 579820166 52128011 551335388 389412977 916857962 724681202 732523232 30489861 728403205 306586597 689254699 999735895 999898316 547815948 929715252 56696329 582169727 783455043 903745138 112899414 886089351 299659998 834129216 246470618 674837116 836879190 928272235 409564778 977502071 67729387 709355220 927847642 990698964 987652170 993669068 991195800 993740872 942403317 982692442 977060955 979087769 995213662 996191571 376525448 440090546 997135938 998838780 376940203 702024356 459396602 553077035 960536294 991105484 559192669 664274080 246900635 933211333 838821943 952854809 680487269 798923063 785257818 840761067 961998638 998060138 749344418 921580905 273884369 370607027 5716105 994251588 398097434 743452319 732424725 984988352 522041797 904339694 267650547 557386085 445272829 469783694 378663439 393306704 911669330 921855041 555236834 898912150 33164250 994504544 327975618 745998402 782451563 996121342 760279482 889207188 730553669 772739673 553834786 728293842 898403219 972658383 336699358 402442193 591384601 594539860 631548319 913778649 175123011 767964487 97535506 669298196 398881385 945392076 764784911 877253101 362005374 369542400 666124070 909631418 185833487 642666652 910853968 976132202 151461725 934400656 208849375 813031986 113081087 802215142 181852237 324095192 565853603 718856293 73569418 73748031 381954107 846558593 491813767 793505992 263762314 631888422 698429940 981966043 413027572 565281212 45644074 163594296 715479679 903670187 535111317 783286495 927645359 948158998 614314238 712550074 277720734 822993286 684853949 959381137 278181432 448245720 919275985 954996741 748093814 914958200 600297223 856059549 448024952 547021768 283822522 996454481 581601529 907030695 507710955 550803814 745733463 867746077 353041004 933856399 141240510 179127681 295170944 689488664 762225941 886635152 83029915 717153310 514300047 685520363 585321038 743067397 93571847 279836774 39676672 531389619 978429435 992720820 910954489 939259947 321891189 570965933 304796843 905471921 711277026 907245974 449425320 483608711 711178872 750451497 781339996 912659185 58847863 835101646 566839477 684660160 931955492 970722736 5137359 61060910 475227055 508181512 329451715 384345945 399973169 483461151 632689606 960247713 886263512 944810420 565128453 648539832 289611190 820135221 789106345 912958593 275025141 845258977 180266073 457514148 876814100 981209216 109203458 697820789 578040887 831619725 637825773 708563950 56440141 962508243 776046285 990313747 231946752 980303212 322009153 391580552 87689401 722569573 379056500 616719095 249081974 798390942 230146736 554071574 555504110 749039652 793625844 896820756 756928344 890426351 826399149 960638672 164996965 296522200 617576621 986226609 360204449 545790385 325624229 712814812 59583431 436680355 708056819 775678214 314285992 382007823 59378228 621447787 285858524 700448531 438795373 882372502 302461944 472410523 274913372 535850229 972618517 976189246 360738056 493181672 93456843 114055297 570893491 892887531 389255131 720399236 623044226 928632188 831992965 900132689 764251505 959631345 876294771 996570471 499332826 550896014 777004538 996624315 802558580 933234796 136926963 831105882 204993965 591443621 909646006 921214742 15488081 502409124 291253148 519940187 959108834 963344980 110400831 939221888 390974547 585978880 156229304 373019022 773039486 822802940 861062760 902622452 33450060 674744237 299033517 991639033 818822134 933217276 229755344 871933541 97799299 278776270 752354741 794426906 59719423 251203430 69806358 853984560 294660024 308915768 493486482 496631278 342650629 938252392 465694476 538593170 21322363 859649964 87114987 168048429 204742067 607043781 459750858 896484171 159095148 680515838 961247383 974508833 164257569 167345120 313229525 810293106 221875607 593632534 299437925 530682814 862786637 949462646 38057138 127618966 947215006 999231999 649343425 914750345 752373243 930774296 868942046 966532720 62627840 493548834 115027183 724615674 106546083 579948657 889778577 923859163 132144128 320046007 922453542 980555247 938344620 967313510 320204235 689679988 728533285 925628049 614531312 636571589 416142822 972957937 225192496 687825594 717689624 867740047 341725808 475453734 164550467 933274764 923207689 971214792 18024593 326320860 854934859 955385759 133170872 398040135 103961743 174225084 116253542 626138277 800317486 973072037 932490289 996804021 136720262 733949423 792711716 881583769 586657970 964150094 262408386 570772622 353449631 956336266 175324362 233388412 256532298 516697332 51173691 303236422 410466235 702470805 518478646 650353078 848842980 978438754 980184381 985812632 753720014 805692784 215400901 768659152 814115897 881288328 576040662 951158559 59338884 131999478 203909632 596985017 978585925 986751665 174592632 816998170 361249684 385295926 212477074 312524833 269387630 931834311 288702923 898322452 178985583 338050782 513702364 817255225 183459553 282495238 624602697 792889879 290220086 663069429 627728090 757215248 524550220 899318517 454971762 470981356 946591900 983318879 445283377 486791159 933249065 958101520 470549708 572611620 359035870 837152180 425106168 475083202 87358317 564425314 63805971 616575674 746439698 954109857 20952888 972375056 897779357 947122885 377930098 853906489 912276908 914093504 410252143 990912386 201015452 433473525 771896314 853261938 795427593 859975291 83805533 512646149 131409880 992764706 376045841 702069166 925121799 982948581 869469526 951634247 278775435 805880588 33292057 134787414 772675219 810813658 831411209 966394729 357883396 631869648 770294828 920129710 244051440 780166941 354738678 852015663 669808739 824270517 28133421 767591871 836071483 917494906 22070902 64606794 63806282 587111449 239028427 489902788 606538299 714959452 502511455 830316770 608076244 613471462 841318062 948016425 358264240 734485457 282345588 435704269 915603829 979760709 432968530 956896678 658919853 737679024 855116379 976245566 252855004 594345748 289710248 531264647 612541292 622034187 684237047 799023244 727033360 832691462 373641283 668735289 708905183 839685823 984101551 985160413 911286660 952960983 947328894 964711835 71965443 609039937 425687157 580752332 334498481 652335718 181247185 534585660 831996604 854197671 971447032 976709516 168008394 330025233 495306695 647734794 839265878 974729601 276436357 717424694 850554091 937958806 164938494 481205092 125660778 978609249 65402984 176014474 484199770 626878319 148195336 627811164 87288809 343649462 428852407 718065252 962093447 972546637 649599187 825013444 110028952 846738219 486022069 772673655 351791587 994845984 421123500 899749438 863583398 943488277 924560081 962022115 54434732 662086619 113305131 695551274 724890868 980359721 959871589 969306689 318753663 463653752 331027474 774980901 913679678 916003274 97597163 944669788 785835378 877597866 696668514 834724646 668602530 736978641 471158889 994836426 985999069 993612861 108829191 643580503 847765576 847987749 180123683 285872317 70970526 132578598 833160707 962679806 14621472 511607143 987632384 995560814 329279009 815769460 242891408 472973655 212332958 551625849 850295047 946031574 709522151 959785643 128678304 488570175 272137971 506650988 516302025 725750204 366925436 621327246 629369567 925950404 268725462 736232905 582849864 596418194 619683743 668327036 281177530 400588056 400550252 978288938 936677692 938231480 503280971 828431740 440186060 724819492 941131800 994026723 958987402 985273400 994369676 994666454 777559924 926980538 70403273 711409491 854112088 987449769 988040849 996949962 432422845 958900562 892514348 981957337 750561500 975241541 818554071 958793037 221229662 398332877 753905915 862731295 960767434 967900565 593680594 765260621 996290011 996373370 78763417 693624586 810394767 988795637 618035232 673187134 376390637 954170227 201781331 410776243 466839405 633611971 167639635 974937955 366372996 447754665 67077853 361096585 141519443 341654791 413782800 901851935 999883713 999965828 401575586 695056091 54920360 810836948 224250173 815200517 421864077 775654827 742911767 979336261 275385575 898020617 294327547 648366508 382185912 682575282 349557531 552044327 65849894 531499131 521767202 611855482 171881289 768005182 355760079 844262447 506803019 612029314 223021345 645735400 503124406 815965607 527445375 563075426 132812079 963937784 833103500 841270019 615618467 647241770 171132126 197790246 724178526 754764509 688631520 798564617 874165345 966797122 392677843 580770358 286800839 707254492 733566373 861977139 252332688 332530240 909404700 920264387 653285216 970623609 581579259 928705308 876997823 881935396 493545222 545884413 296594853 368460760 145393960 526530678 718251690 779773498 432913678 994284346 867717435 908165380 214111931 255419389 532283387 819952940 981577853 993801835 387189662 610084057 765771404 839090903 832638671 964533264 592096020 785963676 362052335 792594267 500812730 725294720 181846220 879915802 697311759 767997313 453675174 500417437 624527296 739644828 734442501 764302955 342972471 736762643 918393361 961421494 700928591 782368198 131318397 854136815 959903568 973167991 143627508 865064633 443835466 911482880 754910956 837882722 578891660 922130739 916209340 916577628 304042047 950179828 218655768 806122245 619352600 818923718 812114145 844722333 408570561 909744515 765984394 867324843 599977817 770320958 364263936 632363745 420076260 849509868 237125504 996107886 863045554 956698291 880436998 950557734 653148988 984565688 191220757 940391339 2352567 104261644 860161702 860591101 5325361 261600474 699811603 728405880 792279780 932715946 452877310 701901199 61481540 954247579 855013220 932170631 160170379 975892741 702486917 929256371 151283470 846630979 357594564 485175291 824985387 891265184 167520826 912016562 330330904 609513537 236111176 278225175 864978612 886227218 308580567 992754231 946779958 959945407 735263636 790701203 527715967 822461856 719303291 759815529 60529882 881876061 448502380 728007008 858705860 890087424 294093133 573593334 437175967 827329765 423929956 540532742 275150577 422728590 413057235 735542236 331771559 502193973 716778257 720347607 349742534 353815584 475550664 499331297 959695413 960110017 872560483 909191500 951609018 963638846 872565890 907814808 243776900 698947898 704781961 810898476 312832564 404425103 899744233 962761573 397014789 743984347 343183537 970185621 496161297 872568273 844209136 899649311 583792314 927364084 403271699 491591051 696238284 717522737 642890096 776300944 452041616 877578498 991196879 993299785 566164309 985270631 984877681 989132040 241095421 305917149 49693383 468064385 339288365 425254008 482589557 735114775 630175748 744150318 874475967 956405451 613200961 876555757 580061781 678152851 462431925 488676170 946171973 964655856 382116638 415948355 929107985 930396993 383795460 806333454 837008681 959933812 267200778 780126123 635745601 984108124 255803345 333955970 661971836 795340585 969034748 976295618 726980575 773226907 158876002 468267508 712976078 724765759 505845807 685471406 551445997 851374944 40867276 125157330 732466654 753697557 564384031 657720303 37417416 475237024 906971282 918496615 752890132 859084733 602607751 913863638 591238655 826218987 702983064 752370697 307572461 712806524 385591174 929790488 875988992 888665110 788732052 987800888 561861067 583414787 568286130 979292655 342906511 588510665 679547110 993465154 446845180 890252688 98135220 305586059 924290697 953000719 536415452 552182454 276302152 301701162 741955274 843534957 175909879 594602830 969300233 982787915 998696770 999468303 200568013 316000532 92732267 612107640 660504138 807466330 897524816 899238228 612296844 893634912 234713358 320198642 471030102 502460192 326716232 621961742 974559094 990876127 324946917 982028584 700432046 947943389 761390622 795909385 171376995 994855022 183664326 577419292 63854939 420116129 382946768 437823991 661054640 967261786 602344816 842001876 279899880 921130308 5716271 140660360 311157971 696598360 624907879 960305515 83637394 966523894 904205206 989433403 530898043 911589934 227141677 631270824 172595477 398911269 710059777 819177266 476096406 808922397 249840156 411254215 377417131 519841089 980427121 999235467 456873304 521514493 965663408 971385376 160641612 618571210 807540792 853131315 318909924 872493008 631394899 711083304 10359131 703899486 380956649 562605531 273431847 481792013 731620291 876690319 739976328 814860846 411207380 755438588 589490312 830611998 896908101 934019073 596989598 658439717 638619095 933419101 771798482 876708618 648207996 797748060 394763680 982864604 166184068 805236546 339656041 825124404 637530565 873864569 515398844 955397887 769820061 999374027 943185815 947368849 317434866 614107260 594071628 599657710 643325168 801395593 547122578 769303605 171482142 970279841 182159005 717080716 335797264 909183824 185578695 873681097 95702851 755105977 104635821 326451575 364641694 957074400 499683229 516734830 146465515 561512556 137665164 400536301 856046425 998244830 182821440 262192910 705232373 716286471 350450757 757279523 318205936 334796576 204949053 529060935 487918525 927614501 2383583 838772207 519241417 778549808 81954737 327199011 325862675 885467850 702783119 872354178 97396682 376139325 542093312 591793342 638123143 769944222 690851024 707538411 152330441 933980094 508202349 764733861 194099974 234023684 281566661 327999788 257443569 365892686 268841716 612354538 707866058 801391015 812705718 962787373 404093108 878635268 584077925 852878503 478991417 973215742 101160433 102622067 281672536 902648791 306710338 318943857 204164688 990351212 597097795 822957518 793301766 890865135 375475850 761172082 32835918 971048478 408253100 614871830 863807888 909243892 738369269 931736806 772299391 858421285 858804421 866417846 524181752 972734833 632847879 821518526 25263352 561804301 418075884 544944128 412669129 519246187 476780683 994612970 405858464 658714201 773947502 919432772 638877022 759334704 501302930 732886355 5778875 396740070 159591440 766431482 87618971 897703695 570984860 639313103 371438190 602822983 523552943 695398324 652504396 747523950 396182428 623029000 242822658 822163344 959328302 995520692 67026857 317370282 667166332 715813258 616871189 698748791 87744156 583810932 800335950 869770786 665158842 674520863 799525256 899467310 325756751 968503589 29514085 192041356 92763104 220010563 320860221 580992058 568429181 866755970 790781542 910314465 440015201 665522567 356113944 658965084 225713436 498465391 477992256 545115001 258089900 983411245 26946701 449872623 519332591 718168129 126185390 834881181 913525864 974615414 500342747 948979341 347412408 787131840 704655080 865226694 710510299 986675563 533541017 809789427 31093287 612836184 65806424 223707688 83551438 472879358 623334910 950509496 942488350 955568377 265546651 843721187 910011921 918450650 865702291 878069260 906316395 932156617 491646651 604710403 387696530 924778930 483051504 632912820 693478863 916855947 172184208 868233785 942092266 962673211 639944694 656665492 669402610 775107427 320169166 906891125 606469014 684420707 684240048 797194649 591043243 922898876 802446030 845216089 423896328 741156157 591763768 868775734 176798656 303498277 728323752 885633653 757090490 835709338 249851227 851961760 250206851 351348976 581832532 665356501 399620650 470722109 403715374 643441860 968291699 983570690 469697036 832492412 771482656 912229387 66003697 671458486 412390167 762673278 212619567 323530858 722140753 784771366 757906257 794111862 616885546 823841668 586729088 780097873 802838527 944401006 548976350 845875184 242973897 620638204 21142471 598572229 152402466 360123683 986367408 997325996 852846840 921141015 47894578 222518451 300167768 333601125 295384044 585648972 443081839 709177606 596844726 859829737 350019818 880718896 133271401 300044539 499471598 789561022 185311683 305434899 249793447 270374435 832252282 920971924 374846122 495924964 910045771 935235142 267617260 486517060 802470435 965590920 442653887 633681445 890012507 996113905 95393237 290484241 194621226 936715799 372469584 791415651 366987119 470926426 639211172 642454209 570639249 669557200 582946705 959537712 566041574 680568752 940239458 965368898 304649542 624213367 858257926 931113956 748825500 873228048 732439658 887180203 356466340 663085186 616954461 999635733 604456649 808030946 205495380 498783537 212261734 831562390 736121878 816613930 742313690 905648363 832377677 874197849 304202284 682320157 116099465 249035072 785285226 959003885 390512420 811189267 379458817 855501155 930561322 990888554 129675863 374884610 339926041 347206951 349147978 738480551 710235906 816154490 877104517 895761707 249450524 295055856 75098719 954286876 189859956 304748556 411633772 960542160 776221123 999276891 278841957 477650399 353269983 985781332 772764062 964998323 279030577 976575223 128974477 761933741 585449008 888152416 447192111 678184048 434863010 823550604 635721433 939713890 502851163 511360886 696252038 747205218 797057829 959912166 333712295 346542997 474854535 707862238 154251167 396131073 113060942 178332838 373999521 525029134 293646180 559984003 52290285 979993553 786569924 973475544 190917786 797375739 447869837 848053169 803272956 901915734 996311246 998363844 931070926 968941692 256201178 743444353 832799914 879849698 72228191 373886681 561871025 787702447 398907371 742856544 259750177 354438887 130873248 921559297 961338966 995423956 554698936 925948826 347908570 983243686 11429979 871593450 969193698 990441087 689673706 742547678 884155742 892329279 157829597 391023327 194963942 428916597 540221365 659999838 912499606 914100095 737042397 844666107 72370468 908391670 852671475 980569417 726033178 742721091 42047291 934517821 244375972 687502470 820130204 830507168 580533560 860124350 511551276 623822809 598475836 721284768 34149928 445754140 886370209 978681431 291033603 603979663 190512818 684199879 147492413 682147624 777709915 932518531 997069112 998375377 821037751 956305742 239477773 515868628 487927610 614392298 707160957 793534220 432039897 640951650 904950114 919644095 128812289 698790510 461148481 737304800 658623801 805141154 394367457 769496929 225734155 998424699 763942641 980312002 129749351 971868954 692697848 930494981 648872601 978248878 599685824 842235459 593093317 621648611 785460956 979937613 857581622 915417880 645960775 866891330 765095303 809215424 644960459 761292851 490905977 676976714 619314397 789272303 362051132 515428924 838506041 853480254 214971116 694904707 882039999 897360873 355498455 698354971 2855702 591212528 46872522 64430769 205464011 878942811 764371828 811501436 201046435 824710174 727335203 910862199 840461302 893671864 441076356 857802468 683830205 792831552 999650573 999940604 895451654 991846420 401791456 611697732 564640832 907463384 571514588 698128629 885537468 939246693 2857165 836159672 333395531 864899233 315835102 428054378 309202450 765086014 763918922 914324105 672109270 845559281 546814636 900626297 649582805 985104600 656874133 992767705 262029031 292175277 206027542 573118925 490746494 572701322 684656699 721088696 90573926 206120248 431334353 994968454 302190528 610898748 346673940 589167763 505411013 965181244 732590818 852974160 581141691 684165369 11651338 838614186 705786947 797912732 682366063 942988010 80547916 559943534 180397320 937382439 604044883 719137860 971588120 976237455 885547227 923946180 263949096 693334637 300145367 319082734 219041634 276633783 193995376 317918470 666487936 784678226 291123305 467133200 672527765 683117030 41128112 974041034 991361434 997104560 453805637 894242480 88301401 802038823 864415432 901019800 372522832 898470991 321029107 733074906 806823148 896142684 781183376 877236598 742187664 781412656 790826628 961216838 821414885 857615000 631687935 941089833 27901548 247850398 181567208 662894980 348790028 585463150 910965971 976958802 801415211 813017120 184423455 727888255 332535040 499393504 77876672 885786576 237513292 732663052 768467403 907202033 627717831 763787039 598954968 890584163 961371320 997730935 221634297 268184012 935215777 992619223 467335094 793643434 879888315 888551729 180336937 589206509 786475538 806362696 928903259 959289673 846633471 982129969 516217068 814626762 907254609 947280878 662660891 945674450 197167934 814382751 847235544 852135076 800073331 861437703 467961215 995362451 996288401 996708914 951519412 993245828 604589658 842480989 424182939 526782621 801837162 954695584 745297026 842126321 84890359 941322418 952402655 979647611 667640724 700468760 555628269 621663729 342133108 728559580 593793551 856856146 411902486 849457263 698103914 738708903 734711856 779101129 436691064 552194881 306976892 346422423 593359947 617225871 308335578 401205546 820721654 916787461 32959990 413491823 595571 242229700 372414905 909787425 50671561 326324887 275858744 998289704 332159186 341831276 669876321 922612524 242189789 800287130 807350887 881653782 947065424 969546095 470559316 971102491 800218703 985796718 933025698 942982327 434388368 924261356 833086413 874581229 126596350 844122763 894334129 924871937 327351722 839098012 589124221 644522409 466729104 916582640 604831640 702829095 168228636 407066095 739797280 831135326 62275111 160459016 456511074 987256335 76645601 574276700 114433407 807362749 76679184 751022544 88819393 367529658 65483516 297251262 775669954 837994753 814428756 873316855 218271289 385048386 21044950 784595534 355743297 697222254 986657353 988148359 786423243 891310240 200195286 916099821 366076828 426172143 389099147 543929758 802435939 930441809 768013479 822453456 400577420 745888115 485029428 915208263 611050976 997175830 989151014 996015156 446908788 658841810 186869312 999976284 206509995 446492645 701552838 798326445 252913701 989213492 459665378 790495362 374756542 688117432 89987959 191153975 102179326 285636331 607554615 653782432 3140665 987646787 593314263 606136491 418435181 935229574 82779751 479304221 334233799 383074504 144299233 333315807 797682969 904720201 860920066 967144609 810380200 895645045 706974409 893487500 551147049 688565102 310609918 666395143 125995221 255989485 422300133 814110417 109917423 673806896 361057596 517262646 656925766 839876799 922445720 946669940 82897784 176763582 559759565 773279646 895649332 985719050 718331293 809525614 429242201 532340635 895757809 973779179 716486788 982426300 450483691 817484203 952408968 974496448 37517962 677133714 437218274 651002070 701350211 965132897 402201321 670277289 991915428 995495396 611564072 755799450 420202968 574884620 397676106 547712489 124193357 768335675 617214156 908035318 930415820 970189485 811588226 852460411 680945154 960977631 59003110 331876138 959474616 977060524 817812949 896419674 23440994 499677141 76770754 384198045 763166041 873436513 523127251 547588725 116926099 426197980 476361434 798747037 609145071 818670219 860297509 988633288 403818465 445598325 326704480 479796756 112149487 326916636 36811273 212829377 256524216 352330217 578574697 765616235 342025274 496746336 160899739 948365933 151032369 266036593 271520151 552615176 770215769 907715562 883169127 885707936 150435184 702772586 380588057 407843367 180869930 815548385 149815378 323835472 544539111 946048597 42757962 996154830 270478616 397116007 296933201 596225097 179568414 962227718 930488763 983269968 313910489 696331166 176075949 383305567 484663790 695146353 963505586 978362172 632824855 779363190 423576881 500831384 263042889 777790630 726244746 764233384 637551687 940710001 972123898 974841587 237534932 978055724 505011285 569603958 807298955 880254096 694729739 797493940 443827593 899583758 488328813 808250365 461893 226799014 57806640 992664100 959386352 981400842 108694671 782214182 777163901 979802128 73843239 812947668 1841362 284620941 288707877 684390000 924577066 967969277 876243146 883895181 738272281 935936465 727562860 967077174 837091090 969328690 526039272 594503632 370603633 542302358 835241590 863106181 63824531 159629833 499066552 839043194 104296805 660534548 432031667 629066908 105937768 582249906 284778191 692880822 523959054 809928963 948000957 975311300 871631226 932735517 967784958 997988155 477335355 683391267 383110916 775092938 737489919 872641789 645247808 682209746 403360855 534363857 575714243 622635887 588828663 897258397 315540943 422531792 139355145 602558917 847988374 943256125 837292675 896794580 666422566 818837698 362373273 794969341 850415844 995550056 908359336 911998074 769216601 903896631 224599913 975868861 543412477 700365578 85023091 371373480 970922411 994525158 921152637 987178424 938376921 945385829 583006094 780824736 716111060 779413187 807339028 984462104 299084657 752680418 161041138 763697942 369339748 555378340 985088704 994759233 311514280 769591603 310998634 576554260 400870989 577557110 21709873 186657909 333184621 468683040 307740099 746256961 697872482 856691940 499364932 512524733 741452106 976019991 131084562 531444949 271546606 907252871 821033721 904412521 442076546 721862483 283593354 300195280 301921309 720234703 939693631 963993999 191023409 906632802 865383524 885586658 217336932 938372678 898162821 919836283 640112410 683451013 737537293 909113540 895466662 919035533 224232228 485432340 496697116 835010040 743881808 933474004 943436123 952106966 911906352 998275106 941130589 952160625 730857074 818365855 363772311 630934399 597100648 657945894 68159835 537994653 158496610 331074860 23158795 565091347 570382532 815159794 441693292 551789156 881964209 887719981 929911588 949722265 373557958 403487380 760476653 937996134 932066239 953820783 273505222 859068172 75931415 892625379 884243381 998628493 242806504 811962546 775211426 922286098 548485126 982467856 192205553 540960072 403833562 428958697 494619076 553136860 750188586 994122834 174933393 175763501 700133032 989109729 68422747 735511041 591526569 751193339 736154471 960910162 769598393 993401241 205820777 943225014 597324067 926308006 916294822 967218610 678549311 995785758 248501385 253378567 943118776 953233084 851889215 857791577 586107478 701791146 240512954 766477050 616246684 827183150 867668870 997973545 950402270 969766219 799782322 922136444 174829515 562264408 472989480 527506922 20713962 274645593 494237008 772733974 322513576 975754158 33179392 174101550 144158975 849344405 537799407 759214244 351706053 761494230 576218293 949287482 113045380 280781510 946557698 981064838 226327471 509800917 465627186 487632907 931122784 974352810 776318213 781375504 311687779 851762144 452962323 696786252 84314966 193524874 898997544 920234268 831470541 947476480 513811340 717387489 753544042 937341352 306457226 669206877 912544486 988033533 99870739 383314433 540527402 795999472 308064869 450397550 906122911 922564044 561695497 566977857 16404873 137093555 390074358 519353884 241083251 935566127 883822229 945173190 865767694 879832163 558862725 853339254 377965209 826932496 595567871 802222609 477026642 863536166 696400156 759549090 107482592 234026286 485616146 873761304 602312492 989684842 515641444 626632325 166237861 490412105 632881476 643794283 838179207 854808025 195329175 726755751 594425844 810569646 429788543 712239170 993887171 995012647 786106804 902943809 53955421 79124913 709833534 808690413 25250804 355598498 203942274 469184665 248930203 289376379 604912220 674189808 350139006 422035033 621024907 768923403 504302184 975371701 544090385 605962548 459911696 626160146 752229527 862171610 473300962 662839268 157752670 921922641 398807537 844818262 956164090 976608984 280402635 323362830 219561526 355462001 216548420 573639668 912659819 948210038 730950252 927136532 697658909 830907277 889289139 904139315 838912429 953771846 35797249 601696880 58301855 870222045 745739114 823137486 827285594 963187582 847811979 963197768 175238685 995201439 651973109 954872013 759280376 885863620 352861384 589367858 350847984 875995533 683320616 714417791 564839271 731455207 497350748 743097232 254124129 733164129 812860158 941355434 557751058 836025141 533371690 775518662 672121351 886840794 278335592 920023235 255503843 357822625 943691057 948839368 957848695 994216383 748125942 881069761 970833403 998154977 564364642 999972946 159460163 367644654 894377705 903891815 758247500 842313533 443719276 695279433 675263446 775363726 213332943 604207934 69996343 634483744 187864275 333409375 596989851 867213344 4584883 905799230 146206363 829240063 965299376 983555253 776836690 850380299 809721113 928864520 622052916 874476257 388354575 435357888 826152417 897126710 897248085 922286463 49532381 363815569 301718689 524485755 349903832 921073408 248139280 285727789 796971125 921747316 393479825 481213022 45588691 566454574 344284236 724543635 273719125 727263122 386125293 527982116 202438019 862049375 671189267 737783327 435261761 454522717 687949622 829484929 749424467 852292828 440219550 678210944 155290897 603287830 139342924 336574845 969838531 971006113 790439795 943835028 71493506 801238522 110857981 303886343 51667985 324583018 518370703 791660437 803556842 910609762 946374778 948264019 998687670 999533076 391350618 863215112 660720259 916539541 675325365 958361179 857136635 939707555 301107183 671704139 173995048 407244246 974022852 994388012 155410143 216267753 286840559 359376885 667510447 872226722 732645870 874247629 298326375 652203715 976959067 985818419 612434366 873307209 525312394 580364296 881292906 962147834 970818340 974390109 346662463 921061931 341716193 519311943 686195588 884515401 638446158 748617405 805467461 824729490 505100259 917237668 916490078 962490387 151288886 965280983 494008898 891552543 598147780 912454589 699720624 852448791 74880683 704513955 916136715 933939055 353373959 635891719 451106364 757602592 643538105 721641084 415055317 574933797 141533249 500207891 260274267 856742365 304626948 890779019 726668331 972868096 537109431 928813794 116127527 333737532 942674554 984530682 169894982 386817125 575880036 770209483 180747258 506212555 67320937 406774837 496292545 889287981 455175608 638156974 835543004 866963441 799784415 953985695 592010138 855870651 767269404 972334397 137443509 727926340 302740970 379548366 264577303 982481129 21023810 884317783 176392672 361326450 605684232 664883502 342563463 493592034 25822789 634345916 477314678 951917586 951902545 992005166 675649383 716633024 531531740 880480934 663356356 816769780 52980508 319034238 369773287 442671323 326747407 773383948 709891638 858285768 302542657 894927482 824408674 837049050 281974696 498266987 364302292 795025811 545924968 659229912 530784647 748593304 104511809 182245610 628412235 702443570 582822965 930658037 732171806 873531865 318832619 515802851 501897706 930297520 808767789 924590258 227080047 351974942 886326851 955479014 80804133 453293278 768531410 834125099 702159043 764537191 819928449 897804136 42982572 959508919 723494277 817590397 897791866 944823492 395034303 989590797 961007752 984361955 439642074 835317796 515480994 855714481 321725852 506184647 955224310 984459055 532289931 543986325 347561423 750188703 247740172 304108207 10963855 883451325 376459044 798723754 194593956 256598471 97884038 460757610 713148617 791155623 537674430 688955676 958417181 995444313 608543482 771808259 199689266 261126688 138913250 345345656 616966534 763170204 574201147 601806994 321746767 499574541 921935973 931840249 372386428 634682210 688173579 992837604 49677619 678820121 258861475 937784714 701632535 774464204 296987310 681923053 357871227 576197013 153683012 271153452 742571354 849165836 165555252 779102678 863587039 937349939 717727318 921569591 940861366 963860765 635442567 759116186 680321861 712282860 938905420 952571587 356523568 523393794 445133143 914114601 271149068 891628814 669550241 986771180 374975233 776404060 520050978 608339792 508261404 671563969 260830117 497125770 941888485 959799133 210969098 353178029 729050595 910155241 639419051 828904510 973002313 975706131 790336247 889789303 162766797 564150038 141322698 367534046 232498502 390612130 772067800 935126539 201403023 522269247 600901640 765275009 959207967 969795114 868908804 896252847 388747932 559557478 653242462 894509922 986633869 999722101 355881126 812579354 213964971 272606414 79144508 363346270 547214892 917497986 982630558 988574567 346183609 351526819 226558644 304253069 725997612 903173971 318870596 765831578 593581541 895743055 79658146 473124573 631917112 881882371 380856976 513535248 419490081 572793824 720474419 767115782 575784774 911657219 422479041 669256972 859292216 872917323 498291418 776742338 94974765 404621061 671138949 719003652 885667679 981274246 842904877 967528161 744874787 887049373 817376668 995711541 119861370 469563530 255583257 588149353 437360144 572984069 715142528 924941165 806321516 997788346 428304599 433599200 233305061 685458196 741427215 762121538 521571254 799877133 260462160 394822468 500587031 853713943 161113269 662550234 449980709 617695249 584630266 952381792 340846712 600567551 174166165 363383265 296009327 550841275 396078760 850585134 822431088 896679487 176123119 691453770 889762848 908487447 849100767 953693211 126942483 459806283 802243088 928492704 978104215 993229103 987472012 991844750 542230698 631655510 929880041 942002540 260567646 270024790 675925690 821735744 178737218 828086919 946649456 976005760 506554456 767211070 92878981 250101498 249818501 271812115 231206592 752327384 690921691 883054987 367916560 699895445 676552441 941747253 422270540 951963835 342606223 932799201 805478696 890144697 737144700 952744824 589241441 672605076 321652909 976304807 207634532 771850583 511594271 855442703 600586545 959693537 987497534 993656692 680458693 802626597 337742933 814110286 202282053 908104948 961079605 981906374 515561026 933114297 151545012 772664937 195431009 982814801 657761033 979108420 966607951 967522449 656125125 710040019 220932794 417326415 669373018 848630724 629315037 949649599 974076485 974229389 794024517 819953959 491463007 679051368 245035486 851598373 687615061 885260827 813245351 955911265 295059478 759242202 627738056 687108785 426856564 539583541 144161986 730677557 282209517 447419928 800395905 825835096 208058590 973947847 992305756 996592396 445558956 568900304 312088499 836842796 975155847 996296488 14938551 978813337 650152199 812848886 396848968 575005205 858511275 898892309 782193367 949718533 455643223 494464413 839870301 962270147 369336742 376221674 147968817 525222807 466911578 669694967 560986635 642342585 760827954 992200031 647886866 823415796 833624620 909684498 784734933 801652444 131014218 556226096 670923706 692436134 194747617 209285360 651458858 856099555 963531358 976077449 679341224 754980516 248890075 658055794 176293199 446806791 649611364 865077092 452357839 647502492 390827113 647786207 981710057 982564297 318540744 417101862 421116157 607056316 177707165 765995902 280585088 716772881 758450443 809028685 750964963 918321791 849353796 968904606 96079867 131875331 590099436 835697049 205367764 367017378 397321104 967600222 721877875 742373717 591580526 888969712 305404291 580602840 53513123 723935246 694522379 764620274 533495750 634734268 723354406 786931666 873288441 995869790 124673634 474753994 555730428 754704510 623227549 706956835 361883801 702969494 25338638 249867215 563691894 829318686 61693779 996424985 883613785 907744965 678974513 919680409 465144761 893427311 692661530 965731136 787449834 996333278 758217554 973668547 155896864 744706048 856793017 874642062 226370504 585100449 535430123 577995501 742053065 955664620 830094686 942259543 469259091 673332231 663728669 830667486 933449447 949567186 975760284 977700532 931980037 985946361 273012631 417185180 297602354 302095950 506630155 634176816 757759392 766680157 535726431 856534532 892250723 894039488 452208928 913942208 443429497 548189293 982960095 993220794 624948220 689024026 524565938 944857039 442604517 940135989 21346015 284447703 342880585 979046216 597894699 921119914 789613435 991966203 740187698 991002542 307465811 455299591 3135092 293952949 900298984 945944941 375896174 591177414 943993559 948342777 655144322 694706146 752686200 956037983 193248145 336058570 794932741 963245103 896812794 914741137 225301271 326024660 296067906 535680574 978597968 996695923 948934408 985331475 602373246 759920410 518045365 605027207 595252761 763828455 25406684 983073303 231237187 401821794 832851186 954838015 63966676 676385003 379162856 510075718 231948347 357045899 719443619 782425528 440967071 903290871 629969772 651078908 958033150 992672301 267897686 720887613 729797695 928338754 551272538 908920389 161528961 275211227 755851210 925742710 330956768 973384845 369379671 541122406 285494015 498038512 404679350 891689430 556877135 819491820 175283260 711632015 134771694 762689715 749863351 937303427 579679552 871850926 617548140 664388989 134818164 507682241 809141570 988864412 424778995 689688486 937185904 952588837 724626912 761629819 699846433 970717219 13347176 728269227 307833855 941340856 945319549 978122081 240920307 631212665 568959288 823349630 274830344 895337119 898140895 972058182 362964433 841760841 145423008 458886275 453376714 663982386 662704003 679212370 460519722 841895819 853424377 962592910 231536770 280039860 622327329 664135960 938415004 945778292 975583283 978957298 651757288 691716701 194120493 298905483 728181083 759830503 44882944 479369903 960281176 985013267 122616402 157660736 504073847 917297233 703224985 825174165 431552115 888474255 37542685 202340238 917240954 936604580 413188109 851496636 548777991 939382613 810532729 896735274 506243040 879024964 22939817 517461604 71078204 507763201 864287342 941089012 54067145 914363628 754384087 998518324 517624705 616562378 461173484 852356398 26100380 764935928 474864761 622120190 21081805 190512865 378016227 389313905 625305106 673646114 231666073 615105641 630491632 695877346 530540143 642007226 342320246 436472222 289523466 496069252 162272026 908877784 2486622 162891250 15052152 714980138 554454340 648457384 287164327 643581988 172372250 372100344 327862127 808325509 828988122 971044484 979933803 983363715 118201486 937886089 300300212 564523442 174535819 271282053 645639404 880183353 205488013 335652770 703779341 896102304 81592277 609379619 731959656 845834707 502449735 757623236 97106601 718395508 350970740 791020471 918775666 969205110 3319608 542635864 426744191 631780008 94418829 511012236 242241659 259843498 264742141 699119739 736000795 914611322 989195026 997528504 771008576 828065484 454659834 805608553 535782853 551375509 518451113 534533518 247801024 379383444 734760960 983048420 791147705 954765762 550817770 885814068 457310024 666906769 135087912 766861411 43206057 192615188 707500840 814577759 510593531 818042053 122805996 755424949 14972440 843120520 515530520 576770618 708776847 915908622 534840105 720322521 338481017 487833693 429700383 673047772 681787891 721203435 123254047 124862534 952492022 962445013 580266965 927789163 905609253 930614463 34032935 462046764 87669636 121628522 669584052 826141739 256574140 993911005 83780739 969142334 622805605 978039661 241996373 926991123 577023057 643322613 808022640 904294530 988237979 989234344 294748223 955158709 111160906 908580545 944258901 979604984 376839088 551874629 497700184 777105541 477123542 490462200 909425102 911521364 127182957 436251807 619550507 703313288 247493460 847740324 23065456 666283016 280193553 514783331 77393278 447381948 653511069 957332407 862250174 939808420 70186955 92512142 667869087 669223715 901062563 956442322 185600795 272377702 747917182 977181046 47013187 619265877 59722488 583529872 244335121 602398030 252176502 867839194 985392377 986846859 770873417 920375193 147807734 863688161 944065989 991018158 297800795 812939048 805683565 966192997 243284207 503647869 905873269 921427926 249209447 759716598 683134346 936820370 880173672 922350118 626758865 839757034 882873281 892911235 439722471 707118918 843502386 855125027 719836242 730855305 454160806 729135838 881323079 939549554 863945303 885163390 158811978 989370139 206939183 630476667 64510686 93187053 367458156 613915925 733204670 928584790 379821020 972718808 512713019 839055021 474219091 775128527 898823814 949407026 413179739 612606450 56908704 914732374 954340529 980624983 500488968 844461490 408137876 721991011 610212516 676381845 713132373 934116992 947836690 979223531 222383737 703865663 899588171 954947896 975631953 990641799 441648620 670626314 87743535 336192040 857400101 981116754 128005239 262881780 466479015 979855721 848368912 857255246 851023369 892814509 725457061 868425791 789208100 922462465 968787266 983244043 614526214 698134628 360690863 502694392 787619684 992803657 314523966 419139910 811456367 958498400 351929646 570122619 248235177 429282005 921889894 982342636 429613440 441209003 774735626 826793289 245582845 602490136 118801991 431245421 635494698 752057856 639470484 848718070 565499687 915039507 903004851 929552059 246152306 502214552 324725005 540356605 324286978 358333932 486658652 544980753 324892002 942918950 139213425 508815493 298262695 636743062 535926107 741929687 749999778 934831728 798507737 965487035 562942865 843707962 375715602 885690121 812777210 845791037 923132000 943844480 702380323 827702362 330845273 578391607 187016915 206528199 982970043 987002761 124086433 893038617 834254040 847992358 782741677 926990529 817690127 982987332 701315669 875654994 238862495 520418493 813375341 815565134 682505245 726564747 293423700 774009200 949715970 966399211 912708476 978018555 723479051 939255999 110375118 777933082 811329746 844868404 822869831 893851531 966251072 967812070 394722248 767240738 936891171 984381821 455088956 740988648 829320432 914245925 102567096 649626094 946428004 970320198 7034597 385734514 373404987 686224562 772869098 868615886 288816964 516269222 470049355 756868102 544683583 770386318 772972588 830643760 477175052 606903734 549735383 921021433 220780931 714679032 809509959 952085640 612241476 901403832 515014214 941345034 685586481 964691095 773617456 985133541 454796247 643718558 897421175 908448470 437767893 741475324 710532496 852096174 738366141 999280349 178204588 304697286 374026282 900272982 724988319 859524879 717242613 991319391 355815041 516749451 438983680 606475469 995298982 996008928 364108898 407786237 618525468 831872519 275070838 588358420 715958453 903388020 496900541 545679794 381460789 541554303 262441941 736878254 849349947 948732644 113151001 793080803 777055591 795795340 329025458 383843405 209589029 577319373 908423968 939087617 803134170 937589416 472491604 695365155 936248951 947190007 287534446 558894862 384943093 696960407 322189085 583635231 700957601 875028417 827687886 977347909 756475317 899742656 314294707 708623720 167111151 421912204 236007159 481206585 873728416 920656422 152349716 181571309 239172734 772381214 341521844 676130921 568591243 676333646 171245523 450474170 725157527 933230877 278653929 337823705 679975104 879026958 476159722 570554841 679092282 886007811 507879232 887662852 116288293 721224859 956809491 989496854 116614986 636638177 751341017 923851347 337002137 804087849 881118684 968365104 387306749 388525292 851831773 895844955 128315424 922313447 233052915 801233084 70494293 183087473 28182011 826556621 2487311 325276318 942934461 972603124 648058590 765113424 493905785 806746484 764249205 894712083 660706039 877245726 630216052 906840841 843040294 932874788 288014680 490875920 55367377 134300710 230838875 802934704 838449233 868504370 559922035 589727959 838931091 993814394 204219260 612148667 525006465 739359939 408025388 821448870 211024044 565259901 597195484 678703267 821580975 986456601 199621733 325702168 697745136 941362608 898628908 949900833 824899707 927088149 197560297 913687608 28821462 649935187 331958781 616943892 905337341 954869285 293380196 888203532 455113652 656504414 541226595 803920909 418818770 876440074 292474138 821398204 69864821 676910673 252171145 719249396 272249289 988933855 583121125 623616834 962603834 993057800 472242280 812630872 441784465 838865083 647135455 684084957 166103097 366441039 587391320 619096120 959142405 986865389 438738851 606216307 532304313 836011909 241836410 573720966 988849103 990735134 134092398 453283876 989516809 992677214 412792622 981988918 491076809 495356439 788007901 965925481 495279538 997405325 701786723 999050494 296588648 658093237 285947067 706346802 616033552 925757299 634640875 879517966 139444518 797934284 201426997 634297475 457889220 515978792 189873125 708853410 766445922 836390900 20146896 562072709 602312560 645158343 249763342 310170812 550103595 613386204 629670692 813054993 750070565 804852984 881744908 896755280 789562430 896873283 731463506 844607802 764767561 799243724 802995829 853964592 300767388 993279990 108289935 921278165 758794134 981881488 715320519 740028030 920067517 960062122 535846799 967449672 488345299 990446599 65217500 822998541 984053471 985511610 399801256 585765451 89328095 381153602 703413410 841269485 360381413 517549180 249657973 626979668 156705347 517978152 958194375 988284622 535148983 832552218 18081895 306055701 119189563 441969798 189035865 688226085 699499996 994715899 559890815 738600128 851895540 986908141 539559769 571646148 910184027 920609448 155025377 756912379 44921729 987272125 291041144 866409256 371288407 991146964 350478396 651960766 562641356 613323458 68670874 892350897 644806700 646722425 209877683 887423581 685266748 759000167 828672562 940361660 86599601 112534670 249251886 841100468 803488607 959088919 160343137 820191583 260975895 720128210 848803823 900138489 803436650 979767874 284584254 526182541 52478264 737541237 534231987 940121343 681048763 834093016 625790836 730709778 694950910 781989387 432417565 933914586 504024759 996496713 556980702 926941476 927019787 978962612 647510959 875138716 772815072 778543791 650459819 849463226 863739271 948953918 951008590 986675796 692388619 753779246 917784797 968234245 983503936 999484387 696481096 959422244 711716675 980782642 669227541 893515253 61104371 562899252 575027760 875043968 435803327 784285181 530355316 975495890 80513356 260250103 232179767 913409119 501041617 671066207 206933163 538886745 940224738 950379100 167661190 861068520 52573702 397735964 46101247 74789761 361910654 490329357 638592720 876535375 490571876 850481595 985703728 989290866 482340164 597557025 488361482 490266156 248651409 785487642 794716029 857130202 117963690 701189174 405644552 539855869 756682092 798176355 597879989 721743399 372485774 775666586 553888568 656734586 543779919 725723741 98803168 729684143 680508140 685913148 851874224 998102275 505575698 766829416 641648914 836409710 395026097 717319030 664352046 803129539 719431039 956801856 39189593 764002539 34483613 222648701 842258014 984977323 167677824 307488337 509952499 960078486 58816729 157129482 330034143 452617374 996038170 999215028 717419024 960122990 991400152 992279330 811459239 937057609 661676582 864075386 294073021 901162401 180324386 585630240 391300227 677082020 763945709 974257271 124433040 851080767 360577292 967820787 558110569 769423282 966526696 977540708 900694452 975385095 464763563 640872575 50182635 765994913 327659832 969494459 582123597 766705043 204973221 888775689 203185333 723485231 225768991 709266042 981499818 993737874 239290329 716351953 756093501 957044170 652936487 830936575 565588778 754430949 912790784 972889061 979230247 996444990 772643167 882319289 312934097 744498503 536454428 700370723 740274214 987593822 707473397 717552102 867099177 994676269 994965723 997157421 832878205 912524101 144659140 845473192 268038145 419024788 200925391 684627016 623092965 945552192 333055331 371236169 72488561 565836925 213795550 458550866 942408298 960924212 36669524 216748848 578313755 791065942 569168212 929788506 416437307 912490630 817893613 939009302 274689244 488325278 517808472 684267419 381477531 424222649 839337171 851087678 548184189 870780993 24118794 199647440 230236449 446646216 324074150 331143448 457778268 603202119 228753810 835848015 932629350 964632413 111087647 612177448 966001287 977228180 712577859 727401701 723438232 803250241 980213343 984442484 448948094 617060859 352800600 615245698 5433715 808282807 799010917 830369633 362734951 661835673 823215845 845136582 722280841 749258312 137953082 448070391 1652484 411483378 223584547 386961541 230447137 297165525 874457895 969622614 704189061 768583484 53050581 870667272 213227966 501270628 458254230 758246513 680454127 878252850 555325307 782736422 374400781 419586110 155444945 670346434 237976418 497645579 690395377 859228228 97587928 411313019 712326365 978894785 633664383 912062992 479760737 892275038 221866056 709756768 568831021 626753455 673400262 772384363 738393225 791345681 825565352 851114018 700673955 871879754 436305038 828188705 862347320 886395948 884947116 886762108 241361068 786112840 383445774 500239148 985923019 999949350 6750060 827643051 65698250 320922283 501582249 566027103 915724914 963168754 56041065 601021217 791109063 893774786 269888392 675788233 266618733 906727252 638907504 754954009 921063190 947425311 471108820 845373739 588554697 966951915 21293278 939127825 862624814 876686234 707444022 907769461 512960059 736752317 150699511 345397133 484806783 998865476 474138163 964185855 400813365 743772749 957023463 974002577 419894746 875585006 458862838 983541742 120707081 923111510 447950625 545785399 849514941 881393239 529172078 941928233 681720032 880481283 534131117 905635909 608122502 934148213 92332485 898291402 731724472 980962489 773741033 946480920 759565117 910567595 832599831 945573988 267407013 776508350 837769380 946655711 49837755 993359634 943433527 948889225 367329712 803152224 944751612 972919510 877509704 911634636 491441863 776838155 109867866 556625413 876222493 987817979 60580574 786184349 769216075 909144737 372177638 618643711 987270497 994259324 95210908 920992182 345514415 920017649 608107837 835166161 706823192 789219164 714521473 743932965 243074434 904128179 166016574 989846366 499367458 565889667 56842779 122871784 856269217 983257344 12482035 929263142 319048069 332544524 127474086 637335006 629577641 686016544 66815298 537921907 670021777 912274911 212573843 356127681 23836105 989763119 413143494 914531059 72421016 580321203 289516467 756967395 549567324 824989113 927800134 987780814 76524786 246367011 542436185 989040751 332654414 458235902 747779771 853335275 605549908 816061813 647962991 799998246 986005981 987064517 759548009 845214635 659339774 896738490 870484959 961282162 286564794 594147674 581294196 689502710 438861890 913987256 57815951 851652512 503835559 597154704 356948111 791911128 346095443 707008151 357164548 482437552 727633348 746915985 69437436 848328343 743961657 874970837 661437756 797460029 831528803 936963979 369454369 882374760 832265136 948721760 737541268 837898366 536828781 830161711 672553347 978209411 213603423 339213273 618153826 819580134 157210299 768328336 238093613 367113504 691530140 759293274 655251998 819673511 252600304 611269530 66413317 958226866 167009499 677842589 853187025 866032788 481148435 774926853 821466363 890821989 70941333 176219819 141696708 320996504 478810822 575440469 436683333 970289743 496285241 574996440 653139895 974018296 17460017 363010783 202165500 783198404 235026617 832177479 373077735 446823311 326515844 953826031 8306788 520198845 325696061 986282627 227042041 269000747 831578923 992782389 622553701 929454583 779625850 861395209 191346559 256134608 429062408 535897188 511805165 726744293 607048615 653925828 750877858 768465691 711776253 859984101 18543535 617383176 723722784 770352371 98438396 486502384 287002651 728571212 20383994 114583118 711765366 911085088 240250320 855768501 526247082 811836218 425043824 936362989 80016816 462849888 271271126 888359692 915120216 962714444 755276714 840505124 854333888 868556415 513387423 650249202 305576308 881037478 337136425 955658076 474323241 504030504 595191166 979223060 64205396 914319873 754783655 988062704 180933745 794097899 915319127 929251764 84945830 427760946 44578499 749799565 618382641 873392206 642620040 938764960 565014648 768660108 258145122 349165600 813250881 957376993 745693017 995017262 562340614 940609262 298400589 439017563 55422780 887217220 83000094 382181696 557938870 968410512 577419314 854283311 773515462 999465362 119998942 549782023 503714740 635754811 556857349 557822040 192706280 495421370 132193598 427422051 160700231 450853313 305516475 968292821 983045820 992509793 391140584 727736495 702365014 980516097 661334601 866243251 782804079 849703134 764947148 793099009 133606086 613268868 179594582 547857858 862212093 959205274 828694003 932837299 772419591 921976435 982670098 987114900 1123554 690761688 39191694 734675845 875049893 989554426 208125728 568967124 211123614 914537145 721404219 752881513 129614078 657121635 70828514 381445111 326093981 609168991 342682281 716682259 818412660 898637526 218769516 995652667 114110213 854558873 592021560 774836743 137300573 411343236 278356854 411808594 98904689 655696191 907868291 942961332 770379842 931904561 61484883 796446973 358446879 677904321 293896396 399318591 570719085 789403655 795268388 976150603 37698833 914042344 584603402 743321074 81932421 289554555 273568267 867581970 498841912 935393941 514712998 811432713 839518151 877878169 605974057 834623134 485874760 506224246 384877371 506481462 265292187 765858979 576139428 933408850 587591828 924790320 287358460 479205689 984013999 989220529 272088205 518979811 100824102 849027146 271338222 488441170 858455129 906099543 168782658 635969657 552999699 878500361 639471554 833186985 61779260 190272034 576292381 775182161 764068471 909372370 691853323 733127493 697748561 711864206 466584705 634108347 379076107 469407540 870945015 895652667 782108616 791427092 224173341 809899546 619746282 771216328 163261858 457624778 82616479 398375667 153586191 406104550 735012145 998620630 113420989 931578386 45531705 762136245 873837923 927366174 896719499 941555715 29161421 120128593 13115182 912751620 248459815 918522429 624162261 850116916 388707469 953208339 640183538 717228903 897290086 969589179 693714059 774117416 56626639 68997586 531762270 895171600 150440103 367393257 867151221 984384947 4272522 522041126 672233369 744381385 806195373 935061376 798147877 869563902 269620102 834827708 577142829 814132717 576360075 606934348 863434893 905018926 840374169 876365597 932574289 977491210 957690525 976853116 712704345 790736287 860000990 924436173 776106264 894077610 585355664 973547452 814830129 890835441 178464333 863117104 104885254 802533467 374869973 585250352 362542279 847680498 405708357 544506396 792544614 905524497 816325238 949390394 197978839 712232560 150450512 972049942 375226178 404715197 959394864 967576461 182464507 221175087 25946788 678760830 206945810 398108302 532881884 603242812 565152421 896404753 804299365 879465202 120912849 397598962 916514428 935473510 18370727 436660716 371918967 901334471 831010953 865323542 294389197 716351222 706694085 994387724 862827832 873022624 300094248 569526740 230542976 395430079 135518677 651765190 355863880 588190912 908504396 964547860 402546755 696436256 116965006 183511672 725428929 883361220 734809224 757787271 573864078 671635318 328112191 905669276 494924639 763347613 120408397 244746347 266002884 819560375 852453727 919653377 579622195 983091673 854188256 981177654 240569725 648748457 195795733 280873763 381953223 831436135 561492985 619081872 538434746 651197453 43851668 397963194 823711597 845853177 450396898 962693699 60869336 696474727 283943891 757146699 767524350 883216223 159161384 447333088 508350497 853244412 176013613 703753700 458855389 729452570 812295814 881169599 767903930 914287321 645677877 820107452 88503286 957732674 66124105 301392556 180183533 357109219 173089573 458759516 244434818 942169445 151897969 821716945 778978051 805787925 981907905 999816951 945110222 996677320 373874757 581380484 619896603 838809200 178035718 888126201 48244559 109817275 467285986 892773762 845021283 889185715 504894177 554943117 379482810 552622507 876935079 982630778 720980004 952430760 742598234 985484079 269268062 521115940 814122419 909883535 979643803 998001487 220649253 689916395 456525660 929860942 574741345 976175851 254836457 359045629 884230128 935566423 591746356 972943946 788586725 943796471 919292683 987576414 953506913 961339341 284894561 872442606 984523387 987141978 719617945 723238155 588624768 759273904 629051897 855295751 530963954 787779326 547534221 698134324 646235753 699380016 969699025 974141736 503617881 927770063 53568368 882229512 573686306 735107617 295152252 444524052 435512748 482879961 887084808 918339894 799165987 951223121 967158292 977956079 304827864 741415688 75897565 612889668 146249550 189464508 637190079 849054452 261923022 424211114 476137513 716010936 941749199 975732798 127483765 830432684 128898855 881620257 359898861 676048009 66333225 80370045 673779573 727523571 541917095 896235403 442444534 598197605 523482318 682205515 594286931 993880142 733951815 984242875 611640360 755818669 95453689 107533614 150227379 455447400 189008221 472195853 281704546 802047026 651580752 778756635 382396921 697550654 723215220 945921203 381352800 817551161 886419765 970211499 307057028 931455108 195792598 976356255 900781007 960060462 531030959 853805003 768549156 879850240 839596135 899570881 295303659 884029348 567427147 742421866 910324054 939240901 804911537 888364941 439497502 714675030 997339352 998187425 427944287 983043675 53765218 646500710 730850271 852683589 120753609 258625173 828856987 923313976 141385756 535181228 112227525 448151606 181080528 868623052 912136014 920921968 615995543 746260172 390015790 517823135 619134156 870087644 608998240 830363496 672533075 886090340 340758972 486209246 606645461 847076606 344034734 844867181 927959166 931471554 877572938 992400824 333523265 452707961 783830852 820046905 958407115 964589250 20572207 101290922 429971339 538499993 93609854 111515630 376008357 443306951 484401799 973674587 153440967 796352389 320020296 966876438 732504528 943576957 203122732 532684738 462348007 683810394 566934465 632934142 398863091 731057940 998390032 998466866 113433672 906267334 446991279 936376512 144896055 972717539 907848508 950338805 334425114 756214758 293144708 759027369 258490350 525784263 443096259 980953401 523072420 990892899 144308727 774948058 789227279 962281671 763977287 895238380 185943653 370337770 142862321 259638174 451881222 462292633 971406959 980325185 659307333 985946907 289010552 543996417 744761202 844712367 228495430 961549694 546660321 772448927 977980607 987230811 565731262 730309269 425775278 453699359 314846057 809911716 955775438 956047385 295159864 724808044 848253330 944534157 929554993 934097606 615168072 774483788 414663127 906702849 360849573 591229755 662374604 666018862 420497132 998781924 507932783 533155100 836680549 884476874 151940147 684843138 635968008 697607332 539607255 877530849 96221509 885836939 934113569 993066921 907929781 982589793 211564661 424354742 882404800 981381237 73399158 707291468 816604605 966170163 494572390 669801048 108538978 620158445 93355019 856696742 194694713 571546017 506318742 719120445 328288106 549007664 227557540 895539806 170994291 310194434 538557025 569623878 363576803 470623322 185669331 560008421 461233375 491161253 130120581 388925588 633214503 725609349 669545231 885989987 275543328 786199673 876416709 985232439 688959086 841442976 48890891 957472608 242432791 992029146 327011891 785310306 181481228 995181898 781461314 876756087 379455924 996071240 401047418 456483159 911990178 980986606 65733303 429818315 786786997 951732054 885679633 907048035 574425807 679340031 215251638 273293163 25426185 359358414 346341609 554664595 559824824 714021147 915280737 960050266 112191849 957706043 456976486 979545791 14508694 949547490 716286460 773045940 82419101 236683508 250840085 347302608 871806204 973988048 249717185 749483560 955123504 967954210 282899527 912752066 375998630 554034566 844333388 891217814 390767524 574868595 923917583 937596077 323113787 783199566 738847059 786386004 909034642 939890236 823451073 995621311 771562828 948123783 752876583 808628623 53077162 519231070 778211645 822576878 758176132 936966794 706658053 976628375 802557868 985785687 20883725 656296056 527397781 794225082 33666688 503749815 103581427 527883816 76107692 589232891 483086920 528921629 681679845 877028362 588738846 926860535 977735024 994367304 602632135 706821197 732018597 799745667 630658910 852608318 953741958 998165728 979818281 992802585 46651397 93783512 554781134 556505591 202249192 456201139 902301040 955744356 621683091 960362390 904352101 932392777 814614640 975023778 808138993 980839458 538807917 562142723 515068913 879124388 67735726 559908825 845580034 978113513 945432242 956585609 499000246 656164111 735696735 751160469 176870009 663009283 995487740 997552132 44723985 87123739 148759309 811448761 832921165 914554274 443740632 736602049 407882325 647517687 418937628 532645026 25672379 458335598 348918027 935071693 904610121 908118300 763145377 971199644 752308725 978481733 177569961 374969242 328584796 884615160 939321776 956553097 744715306 756075416 17676892 485916553 434407506 916442551 322106924 972773180 958276053 983903181 98706290 691717147 759457019 971716892 371863969 867288984 830896098 976738597 963944011 985688539 815369311 888582901 881589880 927852335 881382113 996297274 167516624 303732787 627753915 758293974 804168901 981313074 535113656 547054588 165605728 974516097 73781074 678966964 393242854 676244961 700415026 727753557 728985636 998176454 953580453 964453581 29600474 806132306 447633846 855478670 405753130 841260159 178202496 569051667 954776040 972789936 568738207 657099436 589540827 647428276 337709994 463406229 773058362 826865439 552338087 657968577 287667817 705838471 665806405 918240807 679883125 726530050 30871661 32103214 535744944 730753139 284888045 414302424 184327791 465768707 682985060 712141532 272926829 527809283 967921860 983999163 265151344 907528080 790396318 956448552 904366427 941895804 585681083 832611557 769579723 963303731 675896516 953345912 165172744 180313975 125690403 966176806 583384349 952915694 434704411 906351806 658694617 994839333 191387051 778484637 108487681 255512369 121890327 218319486 370308745 777007514 270027580 919844754 23787136 483744754 767874114 897272559 456930463 841037395 897909612 955098540 11270617 224385010 563613080 972164180 727928384 786407490 238806747 501696407 444734843 704534441 778790460 894960635 758157705 969691354 802319967 981531216 948753226 989951386 643323580 969275446 558435797 662616496 252899366 785870167 2261935 981960816 679287769 780253667 963005307 999498322 551891848 807102462 562335326 848050724 655555316 774194877 742966357 995480394 713250650 851471733 694071113 841534215 307280191 804105294 471908920 896054030 813754281 927501957 572119128 936596123 678780831 755442588 621160607 949823258 287959937 590342241 678358715 887011998 300934158 524164775 411087883 761900452 346490883 723049400 519834 282133611 973867020 986370635 190735797 411239031 24308632 725778947 606846637 677221572 342695069 533110933 527644547 896882488 334853533 425148862 827202730 895335434 83855065 694221940 429178332 815388612 830604181 869704106 388199428 953545931 918661472 941136751 661008814 956347737 512697401 554729166 699195836 995560612 146912951 379182089 92947558 380877242 783650099 840021784 583374042 710464314 239324426 808772817 652059675 948916234 345868949 619570756 733939058 873119091 373270678 505876685 480693770 927774780 457109166 849219908 143709883 395188486 341777993 905434606 276657230 715241311 683301800 884772108 965874178 970239214 664247438 772009725 171173717 909107452 734769696 909953137 582120743 961872175 714224865 906472786 933949606 960631633 29546015 227282919 854565957 982846219 370718557 954458803 608164715 897453673 681597673 761218319 944325638 944834995 796374770 956068494 616107239 905011044 75146342 588400789 940657083 953869389 583224620 719989202 489421154 694833618 801115548 955517015 450562409 764319210 237006963 530846526 174417295 225165491 381923617 953808522 459988130 525370264 958414400 971917419 387728511 668715720 234585968 418208622 239689663 690800923 524672563 963071552 631944041 637101670 720782314 978410824 297956310 615287651 73969306 837703031 867626990 918823390 678242504 792971338 935285812 935507485 418525425 607381096 365331382 831266896 798342938 969833813 139181091 172406776 142369062 650465625 799916157 800686003 38193303 674643086 604579599 651293579 796433286 899167816 130068812 157098741 282568132 770806168 85487484 227239717 29141259 31584108 533587227 557660242 154655585 883597452 865277087 889046006 918666329 966127087 260584756 570338907 399089060 605912618 867514740 929544843 381308156 659169908 381898978 551368077 972023516 981163473 316946878 764037438 346911709 607556855 601630760 793699247 749365261 987964791 623931525 694866256 530137998 778708188 200093654 992961608 18262694 564512774 510169925 700195924 452836686 786504353 524752918 631659433 954923344 978590459 482839123 722506271 316927061 613119145 693613622 830767373 684301629 914626780 652176641 776161059 894857838 921584191 102546558 902566490 278748256 976752025 291574256 877141829 274908430 450653369 61022540 536463713 218683746 930904571 755654983 820201108 671844383 852809049 842609397 939901359 55318922 284681294 828992433 840016503 355983709 610911971 613985234 911656932 372964524 785798004 6684929 763145034 775548730 861804873 553923844 706918799 916070539 932846382 467694950 776425958 389548674 902914091 637511636 868366010 683227302 933099461 702989208 776400047 661771679 713714300 207334478 348486069 904733859 943408202 481116093 841198263 891926862 968274334 922198750 959415098 51409461 585813915 927738092 935435194 465507871 727576496 433165993 835105403 9647722 629149599 827041353 949388069 877723780 913995577 886303770 950699993 215856808 805215680 421635990 721562982 156786525 357886085 199086391 617383018 788784959 999444806 943178198 972521975 429900648 742130779 690695717 960175609 404241094 898203260 373358089 927660717 516418315 600576297 153698581 465340456 958626384 996410971 483653169 801880080 918139517 936562873 282437951 788072922 698860434 731885223 472731828 632001853 535149243 864663463 839462797 888955573 917692726 961913427 257234534 907157029 792630246 910986488 2459184 428672209 221334233 292727746 236832138 818421553 815037321 864545871 182373869 839663394 442536605 774894628 235373122 594309378 161580228 427027576 613622876 774469845 89782551 900488104 958852912 967633990 826012795 849158276 303158729 870974863 392006485 723697750 185666797 993424491 335794595 738350458 946076478 948295606 471506759 800269620 86287533 827990909 242073519 617459515 560876762 773024891 655592347 817962243 930313229 974670805 704995156 935096345 464522236 533795872 264874238 459454795 553486484 944051452 806089719 808783810 474386648 587326484 253400616 997667892 684290491 879285010 668708616 957714706 173751381 473911270 383275190 742540892 327827490 946987794 365841842 819650869 576485877 615564065 514301241 931566322 234997322 893746442 69442132 368668407 586740614 883761150 534056965 687299405 325366051 632090316 992635164 998568553 99806517 862044150 541803800 872400378 218824015 347460467 668856344 922476795 875873098 891960820 902291622 972863493 244393749 655192583 932508468 994315768 681456822 987107013 392329513 498936036 48177082 114277284 387872689 413159464 809231762 812607456 424042540 934457497 495742151 969748532 514053985 899616221 280815163 856893013 106243423 549749238 409183054 609077506 171451787 587186887 780582044 810325709 59941751 568610634 371383252 637285711 851626480 878852073 292993505 460542923 349861798 802821912 637193307 935955730 993510299 995143428 323266649 548395994 102889773 715351988 274899262 488571225 19268406 604449244 773042274 797853605 354856398 521022386 636530002 696429946 11164861 773210174 825802702 873287394 850331277 873016650 675793125 714582962 640633844 840476818 479859719 819686355 800216469 944903194 335492739 948508682 784959288 948798892 603397126 630918925 408333466 438789635 900644104 911796634 237398024 785037716 979072979 981993052 256529948 872919662 466162677 723099821 791230327 850429429 61099661 219141860 305967262 750960107 745730072 846819477 191994129 954175638 258727567 592495399 986707462 991425153 181153601 740216894 379731163 788709354 863371643 945286173 199863780 953937435 34205858 618591095 854875809 967015870 492735361 900486499 594850624 755494722 990443341 992615380 970174807 971661829 497899611 559688314 955656969 967232604 325374312 519312971 480468261 655253573 371302592 873037080 335829447 698842232 314172088 673977253 173103812 326426996 213459178 523186085 851610848 858865658 948839424 954307501 459267296 880028230 704703963 721851528 445686834 913241700 809763338 936310377 109004171 706930613 766953354 977661901 883220064 970912054 726323163 899644187 658214319 837724301 925229877 959107866 811612854 858881023 953453338 958619362 24216887 609991712 895468364 944262893 541387171 965107186 950248408 977222742 386474138 600309693 660117320 721201499 328618432 610290042 406122830 503942115 557311439 639233215 551916775 649446186 315635655 398971973 794195344 975965605 841025290 911798332 723412826 993260410 248178457 554257585 733019447 776263754 54276676 710309366 599719221 963851115 807639815 994357561 522395971 759099376 138906316 211651142 481995343 641301206 525937116 678374950 846723461 905598725 276901509 795531324 989773412 994665729 307171032 512932941 569210676 787319605 316298714 550653742 52463727 727143539 438329823 812420628 956839158 976658547 328399317 670807357 984820676 998334562 89287414 457097079 743334012 946322823 417510436 974607426 379508812 681276985 97343278 161535158 196572576 979532584 391542375 977486781 100160559 559547647 694565423 754507826 532832679 825806858 669340285 906840181 751330814 938635868 92229068 914803702 222876377 974558287 36240712 716518481 88194246 411386906 429673342 536491123 186256648 292215301 901278065 912638456 706411146 729757956 175727862 899218637 695344032 712596761 770763160 815816430 916211267 986367503 936827550 973645227 121600628 836457778 975186208 996475072 525857617 918252794 888892612 928121780 354068455 382076302 312498520 778700851 219373178 626315709 175055539 398017190 869431834 974757315 738783556 854267730 145650321 271444174 920515931 943173508 155422120 261258671 222409407 788451785 809940927 955260951 697987771 869798122 235715947 257318545 348873589 764198481 729241113 966366552 335191999 694223189 854278203 925976084 455024139 478957265 142441793 516262390 149493629 367035626 323599821 574147175 262305204 491505681 799012826 900246087 38381998 117384910 319327929 815215352 182661871 292888806 751785912 861066652 363602125 658482823 62404139 129372869 133458929 587226721 89903713 681579458 861902295 914180009 50455509 908404669 371392108 896269618 567857488 719220877 76981405 263956113 570832145 654599473 418037457 697349731 353658553 896043744 117087222 400350903 774380511 966506144 925890840 973249572 482305254 835434509 949642765 983010270 107559386 924249689 980854334 996366332 431165868 985220975 310763844 986438439 128976438 424115732 387031023 416298622 239129811 766048229 736221134 812764312 880992905 976732478 23095895 802869452 83583818 304575516 982951008 983188426 122377460 767271051 943976592 948002343 901119798 965132029 284265123 604608451 702379903 713089210 833489028 989541884 980234053 988263903 262414061 662956407 938413777 988607564 485804452 655329354 639413922 845551811 592802773 777565455 84344629 621174402 471936457 782394039 892686421 949797660 470728693 574081801 936035760 989251126 739462387 830266040 673349545 923755864 976197012 978256766 243827622 329700066 600247530 846068814 539497303 769240669 696222998 727434151 580966050 699372509 274067361 707671458 941531757 949915716 665761188 754975980 767670359 799546568 901010480 965075363 147947030 746097090 366732123 723395071 47892154 786699194 154290486 349619440 624801018 906767032 901979355 907848812 646306802 852896583 381394637 633000170 851986511 922955250 288368430 543394971 975182468 989638770 623406132 719260054 177291541 235003715 885535949 930556738 560576485 590771096 196935896 473646052 524673643 798267482 56568720 236643957 737764806 766262380 602728738 930690344 589654528 653908008 147228292 728684135 615827775 794815635 314173227 395342893 862959841 973984778 526170008 555471744 395688445 983288919 691200935 806881149 661870821 953249665 27493035 659754305 246833471 662390643 857252580 924658692 560229770 577184258 726617205 740865630 599563887 944088676 304124556 861411685 764872768 963877795 288039769 836867282 884186564 926983041 248505260 346562127 200480097 241425281 886786614 914379113 292615516 921335919 530720125 591299384 903875029 975329253 372373506 489252998 631835063 659662507 285862440 947758424 239787250 564852279 213189304 258998111 442028596 897898517 574186214 706491018 318175531 353436276 623750149 745246003 105936779 867439133 663123332 768736195 29276641 113418697 679427519 784462872 967979836 980602397 726858757 776290089 81793836 194362014 696210524 980496791 298689011 605739556 825154125 903287589 855749587 950606633 248566007 586373510 608427086 863180771 938582053 939924079 192050862 997622425 183177484 319855292 404118197 433465161 72975508 166176357 659393460 745816974 215189381 474408748 583166361 688781644 701200774 819433120 264348918 322820352 275843265 870999302 434072921 828359836 642491007 705750235 380101546 557768210 649585217 894727916 14009855 22249367 135156358 975660009 605401908 722912665 280403081 893399702 842340710 858698024 566089309 762145958 750265716 885259453 196885895 677892109 757005745 975980759 785328936 892236254 618777317 654587020 427017672 455399755 268610039 547072301 366523198 738705655 49134058 87358844 188796497 386574881 537809907 591077775 735244693 765910055 236844237 800935658 588472603 922366446 654867382 847601549 438333680 811775018 198139015 509137861 326156272 393256178 555405282 990259005 795979799 858503545 929055845 987860699 33025315 263379899 85251103 149768906 640367590 668185661 723735634 895633016 825251513 920265994 274948948 292550725 159117035 731126656 829775484 988299607 948668800 955669287 982508981 993342060 859214109 861835619 583249947 955781437 577474980 874013585 237358437 401657208 872045335 932594165 728416153 939045488 171023997 609509652 536880448 893203399 880006829 988095937 612896329 638778501 29692043 863977404 544650110 703303089 265998245 699399828 595599813 771659074 822790909 881326662 921011592 967084395 546282409 867980745 82979819 541129518 867710850 907417368 447643957 616715865 450840849 973291925 125263051 532304359 550751947 569678080 952861610 990434017 34862738 214105123 616595086 872060599 688724723 745893820 186404965 694541035 733801731 815935677 24315653 216154092 632530965 992275445 803513709 830418099 559634979 646103189 230281051 578308466 204214107 280590514 478308033 729610187 344027640 679215405 469375178 526070743 830976082 854326949 59702909 492535391 889801631 946573978 418901394 705506175 147730589 900954613 988944817 989718859 651257652 847874169 637250216 886181918 822907352 840104460 406945062 457434660 201824497 330962638 64521290 678281634 978490946 992887092 511029213 709584347 606081009 907919808 453431672 519116258 112308043 669249494 416498825 999699160 246309310 897432646 712734907 833309599 827836598 924850116 544100622 621839120 615478680 772014273 98987768 247822711 42473855 841373833 978467873 986102308 855142997 895205614 432163563 825747448 905880870 990088969 971909128 980000370 432218671 638086247 96397247 268919974 79774660 659721482 627504032 701891658 574560089 574769400 231230692 754826478 994263356 994406144 339575114 685826426 674876137 921940676 129570527 507811342 148921408 657117023 365160455 975252141 531610366 869515321 346658613 608941435 843212252 950849981 315967785 684050744 225721872 751179751 807726160 870009545 184142587 344637841 918469273 937905898 101964466 970818461 477308068 750831784 816648649 944620464 440542215 778501379 505448328 893371847 526375549 803347347 815028229 839224844 260133684 549981625 516489562 743705113 83894390 930932547 276110997 456030947 372699914 537341201 502797432 787235036 28757935 498001343 319577317 527059924 987480891 999811285 206467961 928884795 255479377 489317744 764025818 991531912 768929478 786358542 920301453 934417448 978889498 981639117 539504206 708286126 289635210 717512864 868673671 887864851 944112172 954724510 608910146 668816865 682014502 789480802 864043187 972004930 205555654 548322944 696784528 883457046 664698202 723463176 758683076 982153250 229534887 673441061 916417419 924382727 993763752 995546192 57748514 270040680 381408349 582100128 358692196 658154346 243264859 954042566 421710582 840656518 490413870 652492190 427337754 873003257 981207529 989589411 465807764 812852664 616957482 918982702 281590048 559220625 392792716 419857106 359675382 372668367 789713466 882146154 935933025 991022016 490830130 673525920 494904052 519948932 846449130 898662672 932426570 990712762 116633721 964304651 693588613 943329095 219389786 296326716 738354303 747731797 871951581 898593118 699218025 818121847 676207573 852404037 350157708 645539383 569858609 947312781 305032594 893382533 789785238 815670635 563276417 949913912 757130777 982876512 821040323 868400044 97655819 277445400 285391634 842085415 25912964 820080769 626246213 814524890 662167015 979183155 462581137 606376387 959428785 961255470 840112494 891790982 729977483 738571714 85944276 157109740 881612232 993649712 620656938 769883777 628902132 801918519 38470761 644905222 250406645 509327899 865995641 905449207 618391608 949123431 753393107 916543689 615486680 819851634 794235986 858561738 416895168 475666784 421863481 888719692 892033970 894883954 203270744 230770570 469587402 575094464 495609957 534644043 620172498 713657410 625481682 856536519 648017781 794314311 688320588 956429346 309820700 717698935 650386224 830598618 528410851 891208096 237267851 685424588 663955607 672000520 902177908 914034720 379089448 844268273 266145500 770165878 530224394 635265548 672147410 781140760 917057990 964733943 43089739 943313397 636872093 935584664 657473426 713557154 583544193 618382467 112910351 875895570 630710458 657794274 215642970 681275730 322848518 380008162 954439482 964205471 599984727 715169818 390846294 897808728 603164833 639313508 429232268 577302165 149611469 570266111 343751569 516316770 614199237 925182008 808559651 886361537 635209548 750243550 770034126 796891320 735420350 888028969 635044385 902418217 728004332 847581019 218018385 715584636 356553963 828065369 596371527 968107876 272492693 695822747 693250578 873266359 196438018 415492534 123296169 193887529 561199558 574505795 968281473 986235897 45134778 790638723 431081154 821452156 947288468 968608761 978799177 985759757 592405549 951693301 105157210 122274581 999950733 999955032 421702412 441581734 186940257 493527099 916519870 955454757 122397564 465889593 356720620 634176490 52768371 867976119 660551716 808698256 566887609 577944178 204329341 680207013 517974375 623854221 633054645 713953477 962068184 967687096 859839224 929628947 278432266 486995929 535300841 990588330 595954535 921521111 907365730 934257534 277900786 882430435 803964471 990430484 359839827 780054944 77974098 380494096 623917278 957101600 518044256 817132016 744186563 979467948 151024289 432375738 577735467 852678638 508532526 609682920 674547799 765776191 429792078 718250853 895957844 948233378 81784331 173476635 292125434 727135407 516559496 673373184 196987340 499674071 657038074 964518637 158660950 626082647 647267708 675903542 84772604 728070359 308328328 401356478 773852475 974437718 754444029 829029727 960348112 971128364 210152566 942411217 597320177 651004376 455062417 572866577 537327634 867949169 275306786 326294327 687720826 793326265 570195581 613864585 161378379 289732694 881738011 937009182 714091830 715854428 665491267 859885791 784090614 891797988 698488720 936267878 570043390 717725631 75152071 518336662 479921505 507910354 965627225 987564770 654254708 949502215 673458806 762658526 393244631 945268917 493828607 820386623 538245157 720275817 714592847 723752956 336690724 645578930 963665119 988082998 231227128 544991120 386576467 876678547 789132428 838166903 349102330 967155277 116096212 164992910 875023854 918994106 959062660 979317357 974638064 982795662 60900138 325063371 142185818 903174161 988819594 991386444 665856639 796947469 432598086 718627141 826360259 872741478 637033100 818062404 643945690 794619648 1276557 513419463 180954460 568338465 460821293 907998225 674269340 973800491 578132297 974753214 621800059 868718493 697567408 986869590 490777342 954329811 531010248 556739685 567435164 713992952 197958858 257478335 973499621 979347685 775467797 832651059 152780650 605705449 288530240 923472149 61159947 946397751 442178174 818263822 906602041 920782211 15287221 685964500 307638343 602657641 864689661 876048651 719492528 987534066 300040604 319037022 674042580 882930520 71763508 689199758 562990635 618575504 493198097 860098591 229228491 382386757 426401564 686216043 244240281 523183539 860889546 885101433 244486579 836964127 825380774 924777535 726676815 813520552 708610296 864913446 874270640 886994607 482296261 622631600 738065787 922827996 659822167 921166036 302399798 834379752 751594670 906514934 646843584 820018567 628640854 799210999 630169994 783955707 667881734 923490324 403583727 614724059 109852541 149000577 33745554 324901439 559338928 928087254 115441717 474637149 802328265 886887257 262110023 855552528 826183117 916555595 389146135 892886099 717554826 798448959 134954333 191849134 716565623 756419627 107619270 383523283 106497781 113450573 639755182 659832567 28491712 805170032 210111005 881520943 903106817 943830927 865834458 981710751 395076547 508978211 155492295 337185405 232190415 491472155 586759429 686393716 940748162 978670458 993648564 994547844 692033587 911586751 972626452 982076978 347493860 991394204 871709661 900756649 930552483 986594889 850899212 920628108 138185686 312935126 229108640 706879423 824590257 964773898 465145427 828810156 164675604 274664452 168616361 527738025 441343557 903405622 790747885 909852559 482906408 705921548 114112740 386302438 336745905 774724575 660954534 841451034 74959072 577113451 176334806 340604235 560970515 988498846 882844048 906556013 682192938 912392183 130345392 219623518 397635513 903587700 138915146 530913592 573313487 975577690 845173645 972067940 30598019 867395113 328753630 333437568 207485359 428893579 165648707 881527259 254156190 552094350 976603456 989936559 979548505 993977184 420663781 478972624 303983135 495922593 184184056 578130429 629318710 873421274 773061118 967161073 353846275 866965751 533068951 613731304 90579914 860487139 114420269 263110825 902794856 933102656 77186974 763616450 184260297 692889657 22182801 139439418 747398612 749141307 703221380 824683389 278655056 856045311 679655906 880388144 780853668 913977154 447092345 946124240 275326344 750625928 55810694 494197008 984039661 996878478 499315131 952687944 248328445 696673376 989317945 992951017 685195196 745362723 890273287 967855985 782356409 902031376 272678844 681813204 651092330 995899352 137478140 562561004 680825393 712166863 488797583 915097213 389874743 803797030 38946031 866253090 917142204 931231730 330449030 542193652 907068530 931337304 84481723 992739904 865402686 931209707 3695513 662976891 216152102 382184008 420905568 870198602 564246435 931461408 616684465 624532406 404283218 657808542 693094324 758634930 342963699 798228514 217152697 580557430 81226266 167703129 483666052 667827905 122563848 932127212 493792063 615265658 220420286 356013204 341558790 610691873 535824366 582073153 796491403 812893463 497553571 629903908 467555015 685434993 554651144 987453892 211218331 375339248 807231512 860381233 755751698 878352363 841703770 948555824 139639512 636330127 468123825 878029979 428132680 854121175 454107696 567136168 774152100 901896756 874606309 948329757 369114608 680834547 134141469 978335919 141638347 228236628 218597225 865096548 732757624 756120918 881163540 950873147 86009207 743658692 49658656 164591518 660837525 739294701 971746835 980518612 853907881 966630050 652905097 746634499 564897349 836561278 290947990 661412748 501241889 600672976 409621699 581393731 849120322 914347029 632519516 817032935 805119545 942492250 483905417 786392118 958330068 987743173 711068147 877131499 980024455 984489891 236598692 369243365 354327091 975816901 39862180 935963305 87629591 167779023 442773437 929645803 168239401 316753556 508269598 772822256 286042516 358058299 328178287 450694071 692263930 780825041 487272248 941723127 410818408 759669633 537225169 996626242 348744779 474977958 109305302 454127482 39006406 983701545 546744494 819101692 779055452 926349952 195398187 421213249 426717906 738347330 725399853 767617030 27464833 593458789 221009101 238416467 593130643 668629354 570550033 982061624 884193855 943454983 908821964 997467776 337465699 525231652 119446891 311155534 698064117 710612634 709538812 787539226 220481280 382652391 122860595 321854363 674472160 961278619 565315554 695053378 425073608 456610067 152522562 594768126 542287944 634775970 199706892 716550517 617033677 791266166 188607257 206336625 147203038 813593035 36572595 355547346 806889497 821174725 588454619 909204005 287978379 825709237 217109662 553446597 903904190 981359182 847906659 975158929 175237158 378836159 716485668 933376381 29112369 406529758 302574620 445915454 53799387 528370814 104135260 240700462 205254452 822872756 518694325 612244152 817583756 913835404 955979543 973826162 644733219 775260566 306788653 592572260 534474008 870942402 78625433 572881751 246085801 539139352 481915833 749745826 794143503 838443597 943257307 962137320 326350767 927403621 162576381 603936868 583021016 817455975 187689593 243803255 447412853 922874071 91135222 525437258 160531784 422387859 377856486 780410287 998354133 998631794 897029203 966582569 788036977 836470277 890895240 892092496 435251284 478187358 523162339 807974470 900502545 974040360 126442600 739329426 725671395 960178255 482649135 892787109 932332263 938410944 514800265 912519473 104823787 142374738 154320734 916901280 796962653 936490333 417120770 793027326 460516407 515689482 600108982 725148591 972098152 994328133 572823902 753952702 429420845 642364008 157894760 963643501 218518561 929540683 447563225 526180556 624150794 714938234 409153395 474779996 965543050 993466865 689155400 728562937 928119616 974369974 519921033 768244181 914593221 947680403 490332996 708873611 335768974 358161719 638045545 957756006 586022381 656895758 69745128 377583800 705677516 939848027 318538984 499484098 615644194 615781239 306258455 600184135 823068259 851444501 634928768 752872521 743271223 796172629 713244183 754156846 515352402 583980079 423771387 970614776 46852887 64996479 474658614 559722638 249836642 927435067 481202168 718407085 993212530 999319731 27616150 583833904 570333455 739999715 827255677 979612876 785977825 893534598 262457958 480566504 206915173 935045167 475971035 847437880 324866605 795995054 535363189 660299502 489532645 978394480 564660897 967057441 62984399 638230942 800573633 917699453 58713590 91121787 250288811 942509624 445880840 822780930 276750073 507033943 674768679 999191119 491980224 807630827 436720983 941339118 714116352 799931332 275687450 804944217 278738178 664363551 886721633 908873891 571251633 623151633 911251861 928286275 270783793 999264401 660906927 827560670 363637802 534968976 624023395 765365323 853634496 959152254 609731653 848695729 332332878 352203321 88968631 962380808 602401654 873428385 133329807 454492758 413273081 756799449 365957035 736516581 147347726 426999137 537254966 790486805 288126738 485566771 385834508 423824479 757831004 910175129 294251924 611615703 334956861 760860579 140032539 291040601 183830256 528720529 97019283 375000929 383807945 913387649 985388056 991815047 759716640 866251037 458581225 672784915 607820221 610426467 213955848 418797150 316720020 783756480 867085184 973551968 76415604 917533243 793069239 950647463 668976180 813527303 964332663 975543121 408357009 443289184 540190547 637050089 128258544 365423811 456790525 686054749 649010995 960723145 168298005 365941250 121850464 717839102 803238042 931978022 220853762 495549843 726861550 736123746 896467048 967612522 244546821 593868307 545944005 884913507 874556232 883507167 762741773 862638952 133392032 722979205 901402321 902107550 693307336 890355240 427167742 915340832 985514363 988394761 13747555 623220814 824113868 864408558 517592865 932130073 497510907 605610404 995336166 996970093 128134293 890412344 930340702 971713952 224784319 418598793 115806678 412213873 723327059 801141026 442229373 956884226 926181197 955030892 592158370 741548748 769303956 938396840 666125877 985524055 148858582 658686496 200886126 536996917 248433051 791655354 205284591 520288693 284761492 486008280 607501265 958955746 135115886 364039195 559592874 913916503 986877712 998489515 214432021 312715985 755915651 870378923 115174362 682840850 751137306 823713974 796515366 882780788 212399933 989385800 665296477 738483867 226784489 969777813 781984477 895179702 258597505 685380832 228674544 465781872 263033457 410509547 353452961 831568534 151886259 959365344 582043906 866781278 355527717 364516543 521323698 985569376 323326186 687851611 530164004 595509790 27869467 268434209 763288318 791852083 924447950 943248583 743994074 887741515 90757356 98875676 865885315 938427867 387568728 828754937 631130124 699911189 356312256 486878749 675134920 885827198 445355507 858831998 177931930 474712978 680205988 732351096 946318844 975817310 813035917 895781462 90029151 492838339 800095141 916802951 130825459 877399351 270391992 944345300 643948502 725000437 61604111 251399649 467968444 783761181 961837956 971606244 726452877 822774396 196398195 520059971 933450497 992425442 892883962 959751932 566618162 769866921 669697947 996632447 34373019 842218261 269271208 707171668 402310083 595781734 772335869 787938586 292404259 378496734 410239472 628186052 991937722 993716756 306423162 364698262 627872065 831949389 270223211 496710915 489936205 655954060 956671296 963702163 125765391 264385359 345935523 539083982 449253704 745690680 415677856 942413853 60225274 681952423 796313093 885765038 241879964 940933976 889100890 962740485 553713109 997257067 383492936 913989150 402082331 449884982 452959277 740634229 187054597 590763205 812161787 874136632 672725149 823688155 503551774 879774283 404329725 555927556 897558453 920624401 646194934 878221659 294281641 807162000 116664358 929985868 263143000 845469646 980417518 984588276 441534893 938069945 289553027 830858969 380511560 989857227 215515992 666704992 404016798 916046797 773151580 944023828 430837499 731851087 422761309 763710353 917152795 987497329 57174531 670759739 627680058 695378350 391207251 877989798 351420160 893158333 195355268 453740157 926681888 927542002 891751101 918041117 410467772 494133119 322704478 925469008 735655036 938578480 826617552 961583258 477055054 897094130 733388636 852087154 696644938 783072366 221390026 753022742 642328118 841029584 393837936 817370570 197948907 779330099 434536779 545792868 324361885 419831714 168930981 193128593 547069480 795138018 411375683 884180778 786641809 798453906 352404910 820800739 2935165 599838293 604522633 976674864 426953272 967583511 451070102 864518171 325715124 615860562 2026120 369308958 536420215 759614924 39324190 199141709 666947520 989282581 346485749 848954835 157922422 317062904 746923520 835939435 431490409 715533319 553474116 901778671 289689897 329072328 28546307 226076952 981753968 991915143 77035747 209062113 585219481 753326023 110113978 709659488 557805336 572726176 699707168 872166076 541963838 990100677 179425538 481749383 556258825 673115597 320261753 682802869 264962269 550415377 870266178 917144753 141659553 590904652 342733557 474328229 37460484 804851906 97617641 188171903 531227545 781745097 310040143 556316477 510782881 971506139 736904220 750043025 770185706 867046146 254703307 580903633 22759908 742089975 38737056 481251005 813010395 911022136 611146515 923048119 516601243 674817760 974308672 990596063 592495766 650695004 212031367 449476846 139724396 445813087 619210914 838109963 245490630 648913625 477715530 812454586 152119286 157051038 266013007 788035835 132545797 211552817 347280575 969485456 424858116 486489293 846152952 948735410 305594081 681627376 719853847 769688354 120389651 655956652 276686426 404965524 613986534 723133332 888001521 995607942 859504848 869112107 613580178 651184937 62159026 382394837 86759520 175330894 519864173 573989883 34120064 919650143 950355180 954470055 487239096 963801066 819026126 953348156 648385703 817707121 746239085 868564555 952802397 998737133 390865240 685717935 960452258 973112029 305159683 628530987 924342006 985512057 876449083 929049065 24031315 341721413 817371566 903692057 682148886 818563722 709154225 837394409 988017706 990731520 417675516 956159686 3925054 74257320 935487166 991702210 565704415 847926623 577589153 969861465 729491241 879102820 738291064 868911945 679814885 871460378 362035848 583085060 846714764 929211268 709979228 942169581 57429814 146599423 575010835 751868900 607323443 745077560 902276188 937589953 875541369 914234210 575126713 638251254 560854005 821906452 677158576 779629196 582746215 776792869 967154678 993672136 778996465 823052680 581289211 873459950 283684564 968522133 375448125 790493886 818013618 911835167 854480508 968778918 371146319 723365432 880624738 993798877 330696491 663828696 146171404 784159036 89370007 778173347 856031740 897805535 823502194 825201836 231797044 758022171 435850557 905895286 950298598 994337099 103442834 379911543 767858116 983244128 189433616 319786125 12440799 914224686 985443272 985726683 866836760 879168735 185437908 393189094 381108272 609236676 973502006 990865914 783036250 825305108 134981981 765106307 728188886 966157476 522605492 768552956 973409105 975364334 934132524 976570197 599350331 802634894 921493612 952904849 201861167 801691292 35394254 596028803 345048699 823064504 714118318 877891301 150732276 687421344 835252723 952501112 571206218 656161916 944437284 985586836 267261760 388497659 525597998 802315774 703243643 713339701 9789161 472067050 956666205 996751946 451971188 557877100 425027988 704419785 660024088 681852797 789709404 792893681 496567026 822599559 960577777 979080006 49338657 783346763 853506476 855835663 814831029 853633637 138215537 514484522 651752104 929581700 247724180 922213537 696714976 952067182 583784746 930988476 28767399 820862126 73128624 166492986 182233501 938983647 162672351 479326430 591753806 800319133 793734233 991832761 380485852 832900735 848873690 906645190 873454474 959401873 435668320 862428579 923620316 944966736 331353188 801452913 797049487 934962915 96092062 285385071 554306645 988470160 913019188 930658703 283595459 651487591 339422959 730674389 798203585 914436053 403397086 757757939 654577310 894018744 221868297 366629253 495601037 978492168 825846259 888501416 180600295 923861416 730768123 757319314 958778574 978607633 859097029 876812197 490212149 854632042 847954585 979640590 154905222 709695886 401628029 549850355 226687253 810699312 685793278 843325187 167276305 682215806 11289582 459068624 598437184 788372919 295622253 509743746 656982952 785551331 19423598 414563348 94733854 530057018 492253693 680451234 39747104 174904253 756306002 788818337 168468145 902225972 598783531 754047554 791788791 974394651 486099414 608080045 48142267 523086151 510015414 668304822 554011175 910757262 211989408 824965192 239676474 615309525 834039304 843482119 933974818 989399471 175857179 592992731 416956660 582745500 221062818 467293642 749713219 809405148 690267867 857474374 240985755 346197632 364525959 683691532 491954681 716889076 713467535 968373682 861579965 958762073 470339402 876432047 593218349 728726456 116008842 344936090 275713528 877522785 591391817 865736724 530209149 958520714 981541981 987655937 722856564 838216976 476431864 569568621 980798943 998694345 696690404 773996772 935492683 951467004 205248090 264615446 610478633 836541563 939315282 975532726 463689905 596711895 440590858 654120856 653412621 874888050 22766361 442986024 714765409 881278070 653021807 888750621 636657307 975141543 766005498 842535748 902601032 945972388 553211645 740087582 130134839 641038764 72466793 626203538 601655370 621613516 712256031 785646442 800894246 919286241 383845734 983578176 817146517 988539281 739210329 947186235 665287587 900274128 492615121 582208747 482435556 589596800 79415915 294827595 776534957 871812267 710789635 721630356 409962538 596054384 377021305 567894298 987559558 991555400 945279022 972793066 603721656 669021365 610712731 974439922 490740372 496730516 709026224 860056535 579072886 797378274 872648122 906484957 584184611 973422116 603391024 790645088 507846876 726871351 137250142 703774747 63128071 745778431 218042135 747824889 937813927 995882715 143154942 365797731 101526829 566454790 449703072 461341768 779243336 803306342 895144571 933886225 599207782 687318656 153123250 585020651 923510477 961248033 539114372 885489342 500322561 821792947 259751530 737033634 578280722 956656522 977367607 977652381 714220764 792513871 730239635 813717584 278302589 534214636 498162360 681374211 590864071 978269005 549447950 597897373 456676261 848745990 547568576 631567805 106302684 588862987 90663097 348733881 162837292 268204965 216214419 643209052 217458213 658180136 676476605 775880372 210582088 957593211 29416180 223859397 241262395 988631164 859347768 943249796 266646117 964387474 427827197 662202002 35177748 537457672 146317098 158380596 927221069 974067224 483084725 947937226 104952970 754058123 160891829 431172108 37470695 502245317 726675018 908175715 457809890 887846419 143624570 468670412 123434403 973283286 866647551 994699802 592463418 647204987 301639978 911438792 239231551 447401528 728124093 940679261 62388589 643555408 299740491 418929992 119465167 486655518 608550447 634724878 527444979 980868442 659784318 729342475 414317336 748378782 933131286 960447751 851706635 918905577 394754081 726400646 174222703 933415913 701654917 991673748 535884559 668073139 137312014 942865761 325350870 745838371 958007480 986438116 232165929 435070169 739648715 951857684 118394610 340685524 828097447 864705170 418815465 552691273 527874573 725850504 451478096 815115045 801380094 859616938 240052839 300571803 289105358 819481359 267826776 974198389 751832960 940978444 427960595 694555604 53050792 691714466 583046586 889341738 891279138 916619182 553902049 730565943 798008913 846034449 472060608 942303888 884040315 991502539 941937860 951476191 784778757 936182895 539716892 647699017 72604669 312241828 816551297 856795539 199639001 647102419 430417404 815489132 880019685 963043272 745962692 991695530 133349474 201937885 601322915 603796841 957327740 981784631 896034431 896063202 393654544 756675248 628086029 901386886 914655716 950939129 949009247 953091891 486472745 960600474 817744714 861070641 982648126 986648717 440914317 751422080 432958168 596858314 63526912 187581304 578650807 950460944 464253833 880636869 564959254 958939359 322006172 915052693 259642856 286509293 505994615 812731092 88153697 613708048 698730098 744815071 22606643 155389642 257688375 785430409 806802991 991873192 319526050 966698548 64410733 394402488 171389876 210739426 930709668 953110242 420852092 615577483 898942692 931558067 527818651 885961320 911339389 962291652 191776925 566486795 706649151 936267989 493553358 812636029 611147978 700663863 681863903 770237470 923931775 996162277 855852783 932511303 15545323 729180263 565381959 776213638 428356823 915230993 30183630 370061297 259672360 705560922 129167913 484633107 168342373 674113367 829943404 989201705 985333923 994256691 908487079 980667113 700372242 773331204 898778831 928006937 595738865 709423932 273731170 458787584 424062610 627897584 887475119 929400757 29777982 912890949 53959147 778717000 367776499 633119940 758796677 932883390 394384858 998810388 536136272 566381116 753642583 814408041 592742790 733843737 552702278 645492182 34029568 855872956 801202494 814578650 200790926 706178220 48446060 836062003 462119467 482513424 476560029 634823303 963095830 996969746 413080442 925448189 56255838 389258037 916869792 946632974 243353664 968889482 613657024 912529326 504838291 904729591 435263719 692239821 324235877 932160112 275079580 305384610 536141720 919130600 494520603 926484760 852121940 889717594 978415393 997677796 138454721 637561733 879688568 901293926 424279838 428885786 613589340 842078147 197920284 468185080 430585601 463984243 735732256 827140907 50158006 198426612 716190198 755837635 492468607 861711281 667095146 855671729 781228468 808020686 23710428 479110180 486276272 762348826 830189216 929060059 889755538 986175528 428389028 460583394 323107395 325007350 722898302 887617071 5619514 356104520 785495193 887856938 102516540 942977815 807639665 984124237 26569916 630952138 458445562 912946586 778840453 945223074 402260827 498562266 476943461 501041222 379127649 623823564 653872917 698419127 552922049 885917516 42226757 90206888 187074848 325279223 109005283 543153131 137430489 775327382 282168394 678223409 112238149 846319301 729694472 851090713 934286242 977032777 209860352 472658420 402483050 763690905 10665380 752003410 763848696 973780684 225041751 244922127 470685987 567994069 562322341 585980479 554054787 739214429 500159500 723926161 116300775 629727611 325704911 557043455 57239098 563521351 2954304 35686316 183394961 268420882 234908748 548674745 229759894 906997760 853551682 858171061 456993237 611252223 553798583 996701621 905639040 959739288 712421627 943341312 640714305 740906003 483639632 915871122 348746047 948295751 617093351 940114471 134750860 818748861 142771292 849394698 537849537 938594774 851311909 884741983 928856739 945269939 937076456 948142521 130379371 756964758 53989639 350998313 452245897 725361559 975649057 988101255 203869837 953043144 331283164 358933389 720008845 994083162 669701834 701804297 991073123 999892605 861010862 983334856 275240245 358543407 762333257 775445372 923229458 995306322 932704808 979860036 84598872 287362265 243163814 534121250 737333505 772697179 848466719 965207932 881460847 966289174 883563728 894770245 364169244 579704248 533204583 677623625 913828934 934874316 918755915 947618613 532863073 815533880 49971653 491013489 346287641 574512930 916157783 940931400 197990495 509867156 381742610 490145340 537107264 602926577 93211857 729353587 432175347 789455956 29186928 636964469 872015727 898135451 748663192 957039125 816155876 867707825 472258280 816975624 118444976 695514118 70604560 361515929 673874628 991133712 928902787 935140072 816394419 873200271 986740849 998650204 891145149 896494296 119622574 750610999 569278041 588763828 864872841 934897706 987835871 990021697 864194757 942086083 445556166 802741639 975509928 990757440 233963286 711460231 799772992 963824085 719010035 739635771 84768596 318168560 502749877 852869069 232501853 599479763 994723879 995345451 831360729 990634081 253536473 319889169 499656014 653476006 992943531 994370971 715390688 848538233 311886864 859852247 114236482 639264850 663124641 677526300 17000883 534256833 126633985 653993701 714508120 930417356 722388366 813559658 71899513 605655703 876344992 930510777 205792581 722287202 259353473 841764531 336203258 365230332 950521384 969600133 797561977 883262253 952159487 983785388 437726463 584375579 703760664 981256274 236298751 260290404 21417609 769369951 132340058 221415369 359858322 408356622 898780121 985013548 737239528 890620978 607977185 883838762 593321863 711752212 159962589 261663891 108367495 975175452 775371769 946510300 701520302 986870626 232259598 457897449 609278221 999255545 143422766 634843523 742179158 919423443 966460426 992313834 783073937 943610856 624795348 960588813 124332255 464594104 849917101 873357525 237096850 805356353 548395677 825839001 627530826 873888625 148890605 261157494 477514198 547517921 56919193 571902082 386368636 843989490 798581650 857046190 98830851 919426116 765128885 878814580 949050975 974465900 236860615 616612793 355202077 545605205 17405882 563303544 83679339 289109125 877744711 929229001 412941058 996851209 78608524 748817083 870425462 890878016 102429047 687032950 100093068 626311988 289810941 860047043 911228236 952202479 594834212 944788136 864864510 886208987 86219703 739458603 921461324 976067661 881541200 905000862 375370903 426386570 115751916 408517059 308242302 573605128 382967859 422612184 511501869 786655129 816311057 910760772 754829726 831901160 37747324 712588035 43699862 399074115 273590622 965561171 480853504 866321000 693092098 724478269 357127173 896574598 975388355 978599311 807116455 957058248 933429186 957882205 725877963 774204032 53234685 112413205 981907810 998981967 565170569 931795633 306803016 741044238 694939782 814578377 116096675 622452998 387178241 866333284 306497735 439544844 464158207 472551135 486832774 994317886 725076707 824982210 667608343 763743111 932685403 969798137 126411889 777869971 831788873 844167583 173381607 631869359 231194979 738862612 706072968 729757424 663004452 768342199 647736283 828673922 745778561 852901068 894453466 944669081 460114792 740812821 504221834 691496733 310097743 401237140 129801238 257309164 65325338 106131447 468465269 595202768 580316611 594398469 909317099 928349684 872768089 941307111 456876347 660741358 549653666 685368611 823344858 894956990 725200440 865227206 41705254 361253582 973768982 987142257 992496321 998747861 138216538 744578401 94941049 472483211 399613168 785649114 621300750 856699099 890477384 947262188 593400579 979432866 745904183 798092096 517933446 713962373 880578207 932935169 599777167 828264572 328445114 474621690 625526063 989456327 527946825 572284670 676423967 762745187 935381727 960233767 175010794 683288322 960028423 974532340 123221937 654140025 45298330 843616799 540872831 649610328 21754787 749785296 504233762 939744333 392177113 816676152 447560082 651677177 985770891 992000839 672956195 993935106 735998274 821498897 498082159 644961958 708730194 881884858 948656464 973846059 940102493 964979045 447207942 821467162 67870275 428666584 135547095 277911762 224031250 313705996 468701772 492469570 673899714 683320613 277763614 726542663 308825563 611780957 168176533 804142775 448857069 765561713 474578479 795529110 632853257 638298595 593452588 832665098 778110482 930165409 142732316 350056514 83877324 890221950 944558821 961078157 259245720 609451064 326294066 983447263 461651528 908243095 286565786 925800000 234028163 308355611 152806145 599899966 450564481 620273206 840357409 846059856 15458425 796034877 244298839 800665995 762277995 927965682 671535208 846290622 762712390 838236948 655028038 665793141 161378780 673280476 471092046 481381159 513620092 807687309 902767884 905278648 437569655 800486201 281026692 640776929 443307111 506385829 421928527 498643203 209238727 376676481 680500124 733366418 217945568 508899307 249683673 669408078 778491913 877600373 983419289 999917030 655346901 942635880 689527667 935482888 315368353 471784561 644388953 797306474 281612641 667771681 746628555 760042333 571148280 680546038 999873403 999920797 745814548 817795590 651490965 686450191 998467074 999819011 354606375 388466758 727348553 966945649 148678970 424941544 128934074 547779519 287578772 949948204 176202564 521371985 681375293 901440216 746867509 957295306 589039076 823722207 501448474 588372202 885130843 943522906 626977377 646354393 90022954 846462324 631088541 836509695 936817814 939990168 447552325 887965177 506328547 561067214 289888654 965245713 748490134 968405667 103068329 368285262 708047046 918998409 372295427 704166874 487093215 611887129 599009579 731499917 90417089 244940260 173211066 203018280 11791628 671684599 117416339 417240702 666169235 948907795 359649947 833559850 777796558 997379362 305247679 709250696 639318249 906191501 157436349 213365328 934473918 949305070 821654160 932081222 22275890 677352474 382530339 414375339 114276223 884183531 868676093 888660346 459210855 929198041 406832478 436434353 163208434 584118572 168171308 400676016 207003667 267792357 55614450 103262741 942409207 976791353 92647268 975283485 283672563 461001874 656572831 723779429 290202311 905625016 322887707 849775587 541221073 630980135 462310910 740310797 239907493 890066623 285673914 976298080 714605650 878614436 206467034 756768451 569063763 789936762 370959910 667618678 438508612 889448233 433217189 514247258 715650345 899638042 42613646 430275778 179170581 902397040 680110970 969870610 900400585 916054253 630436966 815046348 571085973 761407504 589443727 607970815 894375949 909108400 608480646 796038545 906846350 948085181 395252012 424287249 456656607 633464397 272641932 321859553 802946832 938188881 815505416 946038144 996685126 998129398 74360186 698557495 479446235 768528089 465990825 685186437 847181652 914100197 118292228 466663813 285728614 974857314 67125231 195618583 288002524 922881284 624342354 999678277 810627142 895500043 946531312 983421522 629790024 949571293 300659527 637063463 922833381 990444581 406487761 837791313 696832018 860890345 503942375 682741492 558059183 783787145 260120993 310791725 257231900 856856721 117068195 838606984 932256251 985403692 472872959 538751316 129961177 537569537 513245906 517622519 483979923 963038110 287734660 801190862 492358477 738188146 131422112 213292521 687357265 984369132 211271783 794204546 907242337 932878774 363904997 640182356 939482013 965719128 71746093 526645913 664961818 988171412 914965521 988455033 277579112 921270517 427874064 846618579 964507619 975359368 876045872 901999845 739602233 893717228 758299290 819441716 57141578 917729842 407405491 480940159 317978566 465054365 463011157 997771552 357219167 736304159 975353869 982584013 742669085 775698758 917984757 945913821 362198448 536875502 133922418 525244385 316787666 923267985 288188409 740413969 364330366 798161177 476057582 791488492 589893971 641293648 604270912 937208361 37379612 749132995 474475102 633131273 548940794 697005136 96721234 323634131 195134265 317814195 500707581 921865217 677064369 722709727 466045382 661903863 569423470 862620064 249568025 711358772 23550031 778171757 533684607 574301475 776864185 806128453 830292278 926816539 897576645 908556044 139417310 261631015 596104647 813648878 988003461 999723451 124097593 204981478 573742999 881879871 317706793 644758045 970608020 998779935 920834226 930500247 895511717 966536702 552484699 783806543 819175413 828409473 151186007 901525718 971790896 987885915 402486083 641963237 845090661 942510509 698622396 713022020 336855023 899782548 908945682 922187276 374403390 805409543 176941017 526414406 657987812 691860590 9787120 660963112 602012091 671879723 462264114 760043832 774234845 795620628 180275030 825216662 311336735 529730984 245522340 463093095 251000539 498752914 595358065 701056100 741201994 972791965 392886821 732838100 710318978 910621020 465559184 587121744 916169746 959244485 893465724 917542418 413996912 917418144 156611750 732766269 864181137 988261828 418439301 767960284 965432315 992635777 727979070 986181498 523282518 782352444 11746967 550999036 27815408 328652959 982982590 998583000 917264399 928917685 339659705 765847492 802675140 892867462 11991837 109751257 214141935 728626876 811286055 864975652 210717833 231937161 255738772 331640208 147674320 243474542 855920960 975771707 607078852 802905568 683701372 993131950 14984310 517147320 48730113 780231648 767434129 811891109 24144150 728643543 335213334 367457901 123344273 252374229 896403011 943653105 328474155 686246249 154160232 864092665 411878546 567136520 783368468 949272951 386593045 569790058 906883972 936549582 984356622 992112949 264531661 511784955 754346569 984373444 546094048 698784993 810118827 916744384 564403582 668155215 430331246 577008980 10215053 293257915 538531491 799072314 599068513 630347885 150756615 928579397 762267940 811251008 778247721 966836654 571159311 715004032 14468467 565528150 328723554 466497277 395742351 405071743 684120441 941824497 494997455 902055253 834321297 886363587 968057662 976834266 83468021 127290070 242514769 343437305 314858781 672629948 769856582 945029581 286977862 893895479 232958695 680063194 603045530 930233814 609773527 749314742 874903755 955472076 142901823 293396278 439316943 546054351 568166637 590738415 842184564 971886250 602134555 947511365 27906815 754804274 831347815 908673571 416754940 455203736 898883362 928872818 958547927 986593694 101397701 634136898 605374486 781394266 629626351 781028267 850289135 880478766 469083585 503951997 925410014 981199406 911590379 994952943 723619862 764965741 489022220 856567945 722008139 977040327 415467781 633774778 297215167 777093658 306503506 878760998 228040840 563021107 691823385 839761091 851166330 920912352 564620088 641293771 318911844 497510756 657023656 700156546 19590233 276075291 293208463 968297695 929741591 982732832 301423369 912604165 753770711 859996225 694319952 872143608 795867164 919873691 273578829 510143006 189930507 657076890 727918602 757641217 449374722 943179862 117316612 904262974 889535124 988218149 577546208 725918099 119874123 915570584 529701202 990642138 830771231 946057425 916469955 927720111 197846581 916856135 516811731 845345445 834347121 950304601 383964558 901049224 792451933 792645358 572476162 781073484 604056187 907062317 653614318 945442131 923712691 926425873 496983826 907062380 946586211 967270644 476887269 581890569 18048645 676897842 288490736 840323523 588972769 825284633 870741088 928519830 535695023 636301750 380668956 452019385 643918059 957664649 845670730 872130135 191265943 290792336 157645331 965543979 639343192 733292966 821780717 884164273 413350789 654477648 688635440 717491129 44502833 926799369 176924552 616710360 885813643 895968632 790921164 852680437 824587770 877464116 807772471 860674942 258995982 509745966 139970797 627650135 364836822 483827720 482485501 573441796 38573608 905870565 548523664 887919454 859433186 956297580 103965409 883087315 390560035 524267715 911330002 912960719 571462933 602665152 880130428 894564391 746231608 888759511 944318069 990878019 248045672 430415161 216515698 914677556 588464683 973183580 733719670 802903928 995774211 996242198 949271917 983241741 843250329 981561771 777735003 900139842 47990779 259739684 439223920 537662924 287829098 862952101 12477036 981156783 633863017 987898760 536271048 648890242 620720472 969616493 999266585 999446543 132161789 575038297 429796232 860505290 446519297 528192880 700595671 759287197 764367649 887933110 270349830 751157937 406587739 687709457 347381173 431757571 342459526 634743831 506891129 942368635 407393959 900136553 976328846 983389957 685013939 861911394 172185818 669522741 515308991 899736230 526126333 971523948 894774766 926020429 377986302 468261607 449849201 526245887 601106523 922261515 758353076 876279696 871478003 985946895 845929512 992772758 456323901 865963832 111604893 977545439 494223883 848223181 755152199 830468901 274861273 558171172 931611469 974918350 572965510 686089080 98979152 304548492 222867970 410595141 446966501 768138875 829547346 876894168 74344210 817543922 650439601 671481384 815987155 913463998 730723229 831409808 730028642 943317912 133719464 167535785 544256110 912629578 595216561 875633650 807594278 821284586 436770509 802034130 139847693 910849196 751731142 960694912 765845113 968692342 711916606 776289802 765090190 971939624 660892905 906919359 749104025 856337071 506087534 622579776 716763521 885979286 352037844 572149798 653306509 997163537 987751310 998793884 258127857 488779042 918603957 985496835 850190675 911293113 491282390 573400872 80899842 657832340 517205608 919523254 801887735 924698310 720958101 764472630 856751706 925700407 559444106 684917524 325843199 775607120 237788260 488869478 773812279 997380015 5972047 215218527 247143115 792858189 242805853 707234641 360106896 998748858 146505661 298453407 554615015 779142486 641929028 896949852 300567193 858038513 406998148 632690405 617107142 750433575 341779619 359992214 933180285 996816163 87599836 688444534 932666867 951311405 851855640 876627146 126419677 376609955 420263392 663658395 708936373 848227306 515917041 750480556 858758020 961514746 721250855 868817172 342870473 419991592 693728756 960996430 586571147 740356586 797647493 880587660 347457775 738153569 847197413 859763688 508056071 895825047 801517437 896982400 821044867 948956698 856909643 922940040 178207294 263701486 730747141 847989800 92647658 177545414 791399980 886372069 467789416 525956568 507873985 677442198 24183465 244520365 105596173 392303820 334269219 523981093 941689095 968416664 93303326 177759235 879750814 977884842 692897766 909152506 674746990 922920177 955938981 996874615 255832098 997876737 889505694 957895970 63330023 191637098 365491717 875982994 968578367 983678975 61046670 530389242 255017937 402355738 367400494 571029774 543275426 801493028 164614914 597920111 777979770 882078237 969789027 974838603 153039614 711847954 163263188 252394264 883245442 962382736 3957536 47757088 952320590 982724594 602357929 695403553 976967501 993728133 383124257 615308774 973086157 979493798 810257894 964043310 91354751 114039162 487735556 801920567 809312524 855173480 280329030 851423437 355733838 425803661 847883022 925515115 819575448 983100562 422372235 447234328 214231327 227389362 316803501 945998313 364956820 929532668 194993438 774420112 688335836 776652764 935886904 964127704 112224259 504408276 939122877 949018313 238422437 556037457 274777225 494091453 76711897 219548795 779691623 856627318 321716000 642084563 641426885 673866759 671402843 930659017 375138442 977524150 507348700 781694553 455713085 952076062 902912598 974122506 71591219 75235736 632937737 997007550 541625621 991287321 984065578 990003469 746977607 874545353 689822862 712466815 951740371 982740672 865479657 872620502 960013097 964381581 897876881 923496622 49074620 137372545 462474904 923718489 826235964 959358652 954587250 970245396 993121287 998811048 256622514 962155212 899771345 934018044 35521522 268421761 769948273 999632065 468649646 906148382 949492602 961130638 125883137 407570372 128282945 874778781 700531649 822080794 971742659 981031183 73051576 723199817 476407478 560545823 760645156 859681647 293158725 444708057 538081117 931768947 964937297 998523089 905957016 943848335 595507639 929414013 536833048 912334222 522967091 904843612 561454335 679322640 431995065 718880455 711377640 928331853 855225520 984889469 442893411 608874311 317282349 789262264 600802429 710028245 872891820 934067075 985001329 985331041 981401329 988868607 175608165 370620353 658753308 844598053 441953934 968336285 430299555 926063984 958810520 969770843 812248390 872856724 359252475 716115939 744601278 883364396 160344251 484131576 594980569 824923777 358469229 920345865 997393004 998977716 552261696 996823742 334897502 524341845 13086942 957824690 556663756 574540785 233260638 370649519 965279041 981065257 197015626 924055324 729496671 902059537 732378826 948858629 669304382 982506564 619923799 728846736 97047413 447637884 841470177 957281365 851363745 893164519 545049572 557796982 821610704 910543566 106459656 663823688 936749675 997247045 450989377 968761781 289472439 829941277 871179569 982397031 494127809 833708585 183896424 945655407 218230555 583070554 495336743 740698162 369070775 427713470 543807257 647783577 804382050 847503958 834545258 839356197 848039110 895771327 411428773 568378903 132466873 777702945 265091275 851379787 546361952 715289136 296866656 597439333 602202499 855877406 19906266 696367537 7327691 459276688 936546986 991356958 19525661 251355288 420534853 483513285 617192798 998920449 672110987 997241202 982669830 985206289 842846497 966985361 119625942 762419063 880632610 997562057 292064448 747538092 60944918 299898809 507264161 560799884 665743208 923285116 687218883 694039434 600652814 805923119 748139853 942347250 2194517 735395004 699866126 845476050 584947392 798434613 70789050 874956787 204390299 965199028 260079149 567870226 826993495 979628383 171444676 488813657 76435971 735385079 221755864 906389153 967879953 969338869 832360854 872307837 921970528 961781613 173481512 630074876 865753021 896175884 265284746 645119136 41824710 891543893 315257669 342614989 147745349 287602411 100819841 610134599 766582866 968361468 247436622 908843136 300072799 428097654 670540787 676003183 752526748 873787870 990318550 997133594 594270833 723049723 702834259 819282169 573185809 807484877 345821208 473647598 737560163 815777019 914466771 983059446 833323844 917898493 993122361 997653954 541333116 679382052 538414027 670789131 666583172 703197000 445045124 970991595 774476792 867335235 93461154 588458719 64983841 746461123 537956658 594787508 448724511 483172710 225648447 863841424 340521684 580778220 14436898 662828196 195305840 763617758 633982592 712418675 826625359 923462851 560148020 750403353 379529158 791436861 364272402 659701908 422370804 494179865 952698696 986684925 618239148 695394799 796003063 890693994 624954157 952957936 117290593 206157023 614992292 932681089 630418761 977932812 642041828 920306552 90180511 448908071 645059492 854596828 97076614 425712203 451231884 656537557 182634364 411626250 208522510 490772338 107936627 898720386 640112375 854368575 395899524 987294519 614229614 661894383 708745982 831431214 531318998 801356053 858362977 873460932 566895534 977790025 301430068 307194685 102236544 630703559 9630470 576593534 580235236 682256358 391449174 767465676 87305308 88435792 820306236 852858682 741535927 813539297 621564197 919761994 734327204 935885239 459758560 851161175 276519544 522289778 526127205 602321996 705036679 871281258 331965928 691494986 413837298 814235664 577636384 607332522 25738149 633807929 628856572 831702646 396209579 788235339 840151898 944465398 554845279 968164103 180978601 364168154 397875356 669622549 303655094 588076389 185595614 317794923 884052000 977784015 782825064 810489719 214225059 424834467 467174501 953796962 3160780 609712058 562069234 672357242 193969972 282035675 821964072 848961936 846697900 864803367 85591642 465628687 244313685 851508074 970242976 995970708 794496719 869303791 128363105 194351674 813056227 904074128 529941515 596190595 866174040 928199164 644818784 807353171 471680397 746543489 26239634 259366785 81485573 265098603 953205825 972164768 867541310 887574543 344412949 712117959 156042975 377605086 235299112 557049466 90255519 462417495 405769568 441966831 931862845 963173541 865935140 952200648 907271157 979598544 63088104 405483495 770585586 914132999 865384266 979326347 55269188 198975399 714611961 752974758 24921804 864370338 526113657 872595633 118195054 687847191 970571560 988608538 582462212 778701609 221932095 516412103 161691186 414893649 350916324 955647488 899768222 913155590 61136157 312440098 163412469 447898026 10811350 587989375 722963354 936168599 52441528 160870625 862916289 866456589 332663632 349197367 438009702 645920521 710545335 731908815 773320672 858159852 784790810 786577444 428677284 659592394 288171164 576053712 584750665 855216147 958648680 987719245 194770149 929231948 581468325 917518924 906040673 986105737 798577202 899029239 8020214 352695550 650245201 651953534 253515896 582095621 714115919 832798072 476428019 815656112 98348183 752353238 753953273 968268924 571196891 800252170 63591669 727179637 161568657 960676963 112565038 842566759 308147350 781443877 510249681 785726403 937566312 952037863 280246009 582847442 170495952 812863594 888362704 990158401 158118114 725928782 322606101 604418223 816241514 998296727 204816352 772500284 875983267 924680995 41708953 721778573 503554854 790132296 855541167 893052826 653976612 783076816 369199186 483038150 708467328 772583972 874610462 891501939 220041348 574462798 853086389 905192135 95268982 705396791 783787504 944038479 46176496 117355264 19258937 938314526 588670993 775214685 52657779 296481909 979194218 979343071 998497211 999947652 858984588 883716670 526439586 549558387 944915315 955512113 984493946 999472676 608360482 823229642 755058376 936472792 826738632 949599910 377239103 856282874 778747169 969880202 931282604 954032816 998173565 998619438 435369578 525427566 52574844 275685624 145080911 912948818 678644549 979448786 432504421 883585074 521958403 817439973 861640154 919170872 580824456 964553047 894308207 971566148 289062363 408755973 945879104 953062439 62283955 732646404 236415636 920691259 335031543 587116924 74229782 289722143 40588042 470604972 84138358 753790592 104655165 811420579 897408571 931398330 934767756 963046665 420657963 714979282 47105153 658893203 469088413 477105288 185215615 249464527 688644202 991469392 273967180 911421655 176888000 721625337 816641330 896272425 233225872 793299791 115897406 726235445 256238619 801177452 95537225 570840411 183579620 472639326 892487685 900526529 110724575 161338982 46099589 707626733 269494471 974542887 328531951 875405565 723423142 956418797 338260740 700673610 878905252 948202550 369549348 482850741 90594320 597075199 474298482 779806250 304968885 873909787 259364409 855562064 259414097 520313122 987457151 992003743 170213886 579140082 444922186 963590230 126479608 367041016 496478837 693051724 995213107 995773876 855886040 962404426 278758236 872745632 451778213 584099615 158523641 261341644 215113666 932507230 513771486 638033146 200822607 885275909 870609103 969678357 907058451 980617368 536822226 853614581 958155801 974363621 646370984 697086208 91145650 904718878 320096086 409364809 179850536 936708826 562391570 668055094 966673104 972559608 79350531 398351768 589117303 910824906 235990380 305996149 276652267 689477663 789066810 877384603 107833539 750868276 358789273 964387885 550435139 802969422 374530956 438481124 858797063 980250586 809499521 899075289 917444895 958753208 29552184 893451029 662701544 846908490 824654839 952259784 372884310 915015620 763420783 832932298 754696410 857188664 291946048 499055039 958205814 969202863 831123195 933318170 60858854 396219492 392263771 734414848 571986733 721207659 727871785 782967501 586201485 921818995 944125754 964290302 234873098 800199314 293038501 314686863 879433751 969631763 423928608 556869500 642433012 953407121 392284607 536949265 841465145 966577185 989707691 998322886 154655203 354259068 487426434 668619560 470360139 778481111 362331733 444295130 285047549 998250241 501788969 738206050 931231842 992294551 409040960 687855248 903269559 988431698 525513042 849506189 325904921 594354727 302502298 523497330 436149477 768234714 330282703 342450016 673822596 902320195 686714291 712406145 832645114 997363124 131827222 730499935 910288182 942098177 257055 942440989 80870422 485636739 115156538 363461064 99064441 501929596 793339407 915641118 871098316 974279920 873600518 902792800 188855091 708852579 564177137 860339044 762901487 779006511 699067867 751254134 477747540 738059240 672142057 846257064 265544628 726574967 111613067 260857400 494887653 652586686 785076201 979190120 936262843 978930549 812095506 958466101 957135546 978885731 782740335 985396815 551844632 942125371 140719736 144635095 543543447 804256102 584310135 729236446 181846304 769879727 275368958 451167534 959963839 984130632 994526894 999819486 367214087 403181439 321525943 443548324 534823248 593593451 380248882 517996394 734059146 827111342 731383784 922559773 21664087 517087969 501476537 565038150 521896160 931888030 623083797 762954662 601804153 654543558 9043367 756723169 892449460 903208047 540345218 868506543 970319941 997312633 196479903 705078541 289992598 360785673 888903984 933555180 146560086 795749194 686752243 871350024 8646649 798150971 117850875 647485677 225827664 575753386 177616406 549513497 923461561 992971579 813461113 933900123 286018596 299381073 594590537 842589419 243526347 245859567 580239624 695978936 414226724 755702218 133173287 425200244 213815553 514131777 655006460 877469482 130828924 666399021 643631923 821990121 9731958 559960609 320555986 993873586 851642393 924501600 409618234 858499470 650615214 682148242 943461444 974524433 757115680 980811075 385949108 671515884 20213079 107277180 944336754 993913506 49934357 746000461 182347441 497083982 920091786 942496848 627072170 991184290 743423979 969244422 436969639 624450494 443179706 485414913 121771453 787420190 391442970 895889439 345003635 664029854 92187402 807133977 619180772 789411840 902088543 996549255 774262596 808429131 151359001 234703861 374699452 503013035 720791799 781630312 623550171 901762738 187197995 468400916 977558264 985679066 793829978 871004111 872386088 888822644 473533999 693620045 835734177 891424158 601693808 743380733 526417399 881141900 867418374 965556888 634095287 644423244 642248242 928015622 658656980 798660192 476534327 503601089 195921282 618861283 750604049 834128733 367299086 900735304 437900179 778702111 711516788 985902173 203082944 918524563 568723145 814885542 170424275 909182280 275501480 812381656 229231232 804103609 844713258 966934260 423270783 886965169 498042781 711711285 681112985 956094537 901572688 918996245 83141766 986899323 394622702 801811528 378293291 921698896 122651517 600609197 862375775 889373312 96337508 103621818 301073739 368263546 765943678 802906865 879193684 895368787 802227509 870385440 561481092 959922760 426405131 722417561 699426322 801776515 733799964 794817718 884270496 891491975 82687729 772702882 822262468 969652378 509923656 987586700 965650393 972910102 22474341 502978023 887755875 969821168 191619112 761175884 617414527 860426111 424541146 672914765 352674262 471447501 457303971 512921857 352073378 650162717 452327901 955175469 976487649 988275397 58122230 463678846 991620466 998852929 212080178 412053892 346877129 856605935 43207736 370105891 754740552 908661845 261367340 330602925 81215821 493695734 328576858 935994146 553372657 840614655 940680765 992128337 359075843 941558408 211272190 962398673 798372953 900312520 687737774 890155740 661822800 881002986 193477695 911253504 102022187 310334598 663860405 869159952 82082774 377460066 197646640 229582909 531072239 835505209 841906278 976772885 211419923 778858887 496061335 683601753 470863739 979154165 122043801 815761122 950805688 968423809 487922111 853635228 430199900 953018006 250731879 550956727 536608937 799425303 270795023 333519326 171311769 616937425 150746749 515729265 287332446 484396130 292797403 577289623 915497679 953028822 881903250 967287672 460915986 694833046 414106084 726816893 710025689 965758158 157854224 518260662 621273119 634576714 660343281 857452862 931661758 944137838 274728279 328215797 542149420 678323736 986402551 987017537 360226676 590026956 57633864 461460159 346767804 518754633 458168270 508960221 192605349 199664421 348489990 497266494 193031812 944651992 652951074 801123928 979418600 997745668 522365096 602743679 982836950 992134403 794379407 906910937 842674548 964113134 472350970 682407232 909253857 991496968 796966118 894150428 817590187 920681266 264750446 393976117 139126547 997421359 621676619 786596763 403724179 763424927 449772765 612428397 479051519 771509200 717537243 960019517 592256957 971587090 984751647 999277603 243596343 654146174 950860347 970985103 564783453 750868682 620201134 796441121 466560720 965420727 309447249 948046003 503988591 830139181 886682843 886962616 808813386 972122799 306086994 488036709 53281272 95931917 827494308 943679906 926596019 990564409 396064089 455863018 909887085 985743863 569658161 970400952 662469698 997776814 60988308 592510853 421226386 606872462 276664457 700472540 860359203 865830621 167958377 684707307 803618103 876458328 762274271 846810001 455249182 601898898 134266839 859949689 581582288 861043040 833650516 945237926 99508902 281975304 394020106 930254308 722057498 963898148 427894939 972369535 72013703 131034448 641392613 785671865 991237253 994492152 692597681 962792997 276221716 616518730 470156072 734518023 869938146 999398246 656155807 793659164 870138945 991493647 705809744 823260596 546892934 623721130 841885101 879852532 996385053 998436991 223928727 696737199 137432779 713269365 718123576 968118415 161354685 909046335 406555625 996825003 505652409 892231782 235778001 805828402 358052570 623594407 516940547 885288378 256095254 391105628 440609374 630034813 208525665 215926357 268259021 285509117 719921795 853889934 118418733 526450246 146295987 743688596 793009986 893388087 984567459 997298510 660023551 898236062 192414748 803816254 273804592 340035419 592177443 734215112 590088570 780581582 601860034 781452226 287917514 882588992 3000706 62473382 90105706 135469619 806182326 869958223 820270384 918182480 802547987 811863304 209513851 483908498 608673924 908564022 348936048 914673617 172478279 557225777 532255291 865794760 755760645 779142677 124003435 318036503 273816940 926838290 383287862 654804711 320422957 725979960 695674354 733952524 491815699 744932735 797110919 956863661 947153868 949658123 888169816 972474203 880434648 912864840 418017743 910595137 121068737 494208719 861459382 922410739 621773603 763050603 702844856 972700544 984230665 991689418 463620526 515867233 690548119 920439721 393089364 602464437 622570126 910686176 208024754 808203711 980570682 986598189 555894521 809823583 381595698 792840870 340720446 890782770 558702652 992382186 168782751 959895674 696807929 802664960 169616781 408787912 880155791 997048175 337578812 393021183 940832622 987657179 117844941 696530304 319690059 795739318 33335786 810922424 798817833 888504549 170908241 486119314 802305261 906718896 60690013 89781354 300570844 443974120 917591431 956592586 827857526 830756162 83256552 689773171 709756298 819485715 197449584 888781038 69250797 106680406 236634256 702256610 183917111 375919525 547812428 993125472 11231783 444924357 594914720 873809197 251211659 424762049 524116522 746710769 141000136 543600409 117133629 833514886 52536108 545508432 100753892 406648529 64214464 763448938 13930017 100180350 67904600 486259761 935919093 955854825 294334612 792738266 914721460 963626612 127255861 144814696 678264101 943683748 424060688 788421187 575744167 971743616 966586490 977115637 913897736 959240530 682518106 964138617 369499381 852831569 564536145 992302614 4275363 450193176 310994566 363480772 114406819 119064933 659661729 962954507 258460072 888643653 788345999 862512315 825596321 905521425 237665207 509546173 262142084 862724856 333624171 638467294 379889450 555768768 245259929 281258425 104068863 627009358 112347306 215278910 440846346 998695656 929134902 945962910 537448660 632335130 482451877 592956113 366304024 789156179 530679836 531162820 529374893 754635255 240611759 547273300 410851877 616657873 563004256 953995531 675266800 920053201 258786103 927146580 485661297 784009876 419659046 623572924 889830598 969925911 226603775 849583033 784496666 872909575 644716545 976704446 325672583 643311684 785697567 806706323 107845763 522704438 713830598 935894676 161936931 484529879 760226158 829262649 376246983 460386340 493188169 512861943 53601287 804433900 301409121 625926319 790491051 822305355 492213404 573588910 272313592 869888770 886185785 941431068 374879093 783174543 524238068 711396603 927459295 949931743 952715125 960855515 823164921 907731209 478564224 581682111 447443534 523977148 524344984 791895153 850068774 958979105 724696803 762291360 592779459 934298061 289286304 777464088 816926775 987836446 308812461 660877303 323357143 756808385 490857916 967330859 182649337 814716137 170248882 500919439 39346388 142705726 966013264 998164322 20649785 116828739 668260827 714383604 426318213 761834745 504360341 805018438 676361633 762610799 857625555 976326179 938590092 989553113 118011618 540687817 628832727 695360717 89164212 553778472 336397655 724142766 248543103 706407552 874021595 998528727 253916249 554650145 983088947 992804507 84775843 722205804 60192052 586779246 760745080 887633451 171732462 555981008 434716512 824578342 845233710 855448549 620642386 966159472 5076423 816634497 628812325 744212377 881070572 971688466 926966731 995499734 658365714 722762530 637006179 742224164 824054975 916909705 429089439 685903762 547450961 991369785 137860517 531996900 717250666 751547381 600794215 708816181 739813004 799655912 861318955 981707871 522621414 798662384 152664514 313586258 546365749 901665577 246109405 270194993 659450952 736801171 191381524 447098204 34052169 861502384 744715396 753440955 556696613 854991993 320485164 716386741 41223167 968161160 118916470 320003803 383735462 883721273 390941281 789265144 33274726 266887888 508594622 712262093 47175720 258533581 602662536 736150056 312962458 742735862 279862717 317567077 601774628 789799896 342162298 883828662 903332202 970158956 511143749 879777884 472311094 870270720 817191520 974104837 247032169 981353385 412153761 489984830 284913832 385736920 19369381 719282752 751309821 799743969 667180498 926556642 887516403 991504825 473759865 537690909 650783569 762882256 672199815 945169963 962540092 996106682 581714067 779709403 419370962 912821255 649540688 989247117 670394832 805042547 300785021 633951811 324193342 632694373 113084431 917949297 817277307 962425274 283488228 790409740 921163858 960680247 577069192 788647743 986651971 998602213 5905967 196467456 621124199 688009098 791759074 802219419 69443338 662826781 741014837 971838191 642375245 758855168 950957059 986269891 986211671 992890227 535575296 817073920 403248940 770760498 360785270 909699872 153235712 293325780 733538988 892148131 942242053 960133321 705897095 722148984 817439907 833445232 230992557 666724125 989040000 997844558 439882514 972085552 241711498 957709776 920463787 979276705 139995702 575933061 255736228 460808206 7106284 66295278 665432378 948857215 178049407 484963409 695321060 827537589 221120117 724199325 971319468 994660524 867667159 887765319 144762759 345455994 669117209 788363562 462310228 479112881 655445218 803539686 89352915 928621757 587786847 824807210 569221054 764543966 611727435 927348444 77020977 118899230 998555057 999091747 21361003 695461963 817157648 945600400 606781830 816760241 564574538 940498019 888114194 943778651 386244927 794542762 956308718 958401385 999663101 999939367 113144977 403979639 783393013 985873748 654969916 717784733 749213963 781830363 527424173 943630072 35325943 449349318 249081759 444706036 776873806 999615763 238209879 677089369 45549584 542352846 710493813 838294373 164258270 907583202 446698994 519553933 520269534 754574185 778455095 850444790 309963247 407141490 250247793 344839417 172806710 793666847 300567050 823486801 699915317 826662733 418562500 745056286 313985092 336265605 483470758 981244629 756463436 851266209 396802415 615237277 172633561 518138511 727049223 779538720 362304343 969101898 819006152 956633077 413280521 974537479 827104288 880001668 687422571 766720568 534132728 644177313 120136752 188797008 978890381 988454965 977751798 988874786 632199722 655202064 429682335 708139500 590528703 941161291 114093582 538729070 759640103 859845523 209035412 434513273 806496050 858435112 439979316 941326081 471845419 534877900 439583870 459537551 150661247 425482615 880331457 996456059 239556492 864329645 515706129 890909784 878808266 885034204 60415062 548578942 694027453 722422586 484261403 994183509 609369285 977696668 783723360 785253071 127224137 754398628 555586863 708577546 230662242 719299493 282542925 904073761 579554609 906330481 457759516 918701751 189612674 214094535 629045357 857330045 604412985 665664201 247896022 559231465 947995411 971447695 588623372 662510780 247296237 500664126 658833843 824902949 413335179 747791737 352883726 638539374 935110977 946129235 717996135 914865282 895764079 983809475 43595401 785459039 535335180 977415570 100927127 233059071 924111681 997450343 725911040 950389005 644950737 971364047 576526650 578807687 877018347 895261313 635716359 838717778 177989471 890117936 452598455 658392243 784469864 794000945 672729210 768390802 4543452 170594895 286904887 472729545 243065518 892045204 647658883 847135104 799870133 983269219 943698620 956217329 978561200 980492327 231841974 453967091 234506877 872908639 226379027 646774838 939029474 973655088 641302568 654051630 136303885 170776910 649534401 733956923 330427089 706519826 364513276 954825024 849666179 932029791 27563061 560753055 409973078 875082807 293587505 691712581 926568253 941488541 465566685 864735920 422709511 969669162 967482805 982814075 904500397 985641901 579840051 819588199 122344557 217011747 789387781 803117832 906775754 996560466 827610094 843586308 35247925 279391676 781256559 974764400 392128652 868544653 975659703 978157905 151577695 523672487 540729586 658706480 855823625 915400040 996734265 997404291 490973924 578969623 920399984 962003425 584735139 825397284 679294981 787875391 626973466 636625264 445790243 933389661 438202419 499520828 310513121 782364598 27456063 674072686 986726085 999795973 33056956 122458860 41416135 650533321 48471666 483102780 771287914 923576625 10936903 351609232 96537396 255867603 146844546 197356884 483380560 703961465 493751190 787019945 703449625 749094406 933099055 971885530 182300121 628682587 192983465 403174604 677869139 783200735 775436984 972445606 162536131 598640104 482971606 580606703 110579747 899362632 767961258 913648654 296863541 704467649 402160173 567215742 941613213 946739188 524941299 803273373 759010399 987215182 716101718 797962053 877034701 914802034 327060874 864729377 402514349 637134169 57104286 725112596 469769721 598093014 646819379 961329082 359729772 861429581 26132833 887230657 272706939 816197271 16617302 158943723 581465258 719742427 862320524 864116617 737742373 930711856 135564869 542637705 916642086 927631681 261771286 682423269 568689260 779457187 687743118 775599966 323152371 445827717 105320513 732071199 787145324 842871815 212929233 378174154 813491500 897275270 998204988 999332601 19608698 797107579 854324554 911672248 713327909 947134454 27474590 990361242 837623186 913910357 75291251 240729136 399897651 436452511 267634094 363329231 924514493 983702319 587774511 648028235 967878395 975885511 523048995 908719131 500636327 935939204 474495830 806745188 653714165 974867512 621705908 645381337 500890626 754331795 908903736 915867836 792765032 890229065 186378059 211253860 903994065 910542918 875434239 999529245 66783013 400787717 197632539 224385349 185038405 299334477 432127391 714067258 103505448 798785818 782334701 991827382 139420798 589479941 609338240 833652958 291115917 653170120 745127943 860235892 377889816 507873838 295629103 421650373 858807076 861252918 997544772 999553482 204096120 989949531 576739436 708212345 236320164 667791804 277204373 937725692 317966512 387774536 979034120 983573865 682923717 730894226 437923457 520244455 995665068 996372885 675758965 925387056 363222344 955275973 20989527 697278810 505568086 963250579 358004986 856110687 702536068 760062665 824898682 913506509 438763614 703282425 986114643 999793286 94326063 246543034 528352283 791167062 212790888 249322192 533602714 673802186 53308187 165882693 333790206 603470881 209227604 304294276 382482985 716201468 658353564 829087938 139446557 936943980 185952905 825662984 187379124 566524514 648007722 810761856 959454220 961305329 516180395 872801218 3272210 389834165 640059486 830617192 888097888 937076869 514965880 646669803 772889913 827884219 997305018 998240093 714333481 942231019 519246381 966876783 796426141 910486587 244096520 962700505 183426016 662231151 678848735 820174666 712216522 770962668 600541277 946906885 646850894 891570372 102402030 555329256 173342075 292368987 228784970 835241181 957461808 981038434 238400667 821164706 597385948 886207845 866797490 929355681 391307587 482072429 75184016 885361430 497693584 839504429 444569082 664865434 902878290 978045666 31582837 146314444 559728028 999853142 70983328 283296515 409786539 487823884 523636932 667462878 810818285 891618497 899067404 984761469 736139103 983819980 688873213 734989236 421363300 497876843 893769941 989842912 286752667 480531066 892358348 936466947 783293370 802129749 445982532 930863005 411879800 515823981 795288654 998187440 110250721 950338648 880257018 928816420 388106113 879741108 315973859 409828345 848624085 872129143 949539666 969157285 406117670 598133085 243389100 630989169 372700393 994610117 98689492 123707795 598876866 698039656 315956099 923884175 113752567 942278286 591806752 601058913 613183396 809318269 96966531 906753973 938179965 938988011 954872473 982404378 515082110 796506209 249601788 280473814 97341852 418810406 308858478 560778599 77835088 320231222 368681500 914341768 970750162 998812861 780046877 812274173 261429683 511123598 486291154 526357773 148303604 601570429 6598428 252768580 44770701 411650709 481288172 843749588 409154177 723290936 758332984 762260790 339893469 459532807 325975826 370654558 702194583 889186915 505778955 584611895 612711051 760259257 512907189 552179392 303004554 903100881 637833955 741244421 684188218 881452609 335555397 880612913 658943691 787768233 934679862 993871240 714233797 995317513 32351159 310439646 651570642 910224870 412378598 655710901 242260359 253640899 149817722 802312229 324981085 410895741 303567633 556278863 550906615 871590093 163466365 965702279 305212837 753576241 96254197 201002724 484787932 606615377 273385333 315463790 837345380 980218211 730653155 870194482 489336892 944744260 291160359 322868316 123683289 627599001 278970494 653187465 838555767 847887264 308818875 413239237 151946850 767768284 156179813 578977648 118400214 467354884 473983878 500419921 615768480 774013156 234949087 278593419 845646783 997332087 973324007 976842481 744667350 836303412 951055389 956776612 667013292 792662956 779404450 852557392 948603473 969378240 677001307 723325192 372376713 562576545 265260671 795771691 475994785 634353338 29971111 426251175 514292221 582916538 866096596 983245301 258035989 903844901 703517541 912847299 83000612 374517549 608467410 781830432 753097718 971425387 995916170 999972455 486813957 753851726 344447023 454992704 481707436 824231790 346561522 439247534 769678162 956626729 136344605 284224932 337095237 788059199 226402377 794131578 654395871 923033843 148427605 690295381 622083879 899484203 255413005 672402085 803834452 913036287 225001969 854300656 842168499 850964867 710632848 988832885 724230146 962798175 247997431 275125211 473897292 740145913 188771902 441880298 456468569 966214462 28522376 207569480 77157808 194770757 825075831 911984813 99155066 584852596 333927242 508664621 933635093 960988331 459852079 501494483 373022956 926011868 255370680 307718298 30903828 211997233 17195241 239339002 792272406 808739257 228979526 702374427 37749545 482532986 644615382 799762911 289135918 688313638 210302189 361746980 851000576 874853720 361004719 961152172 133430703 441959662 890060034 979005114 650581659 942557560 81661290 888143003 86469792 535961473 372936091 804072307 590763569 693237145 867103423 910440590 336281424 949825172 758731437 944567671 708914034 838561399 932745873 984219138 518892739 520834167 868609722 934974632 199987494 265771301 736124242 855440208 763811436 934173682 794754885 933954272 518994346 705259451 166443422 212794156 609074586 756740014 474056616 476612804 583628400 880300501 18236014 958856227 314810639 786480834 212900726 869679217 284088569 593408997 911896800 979423661 663234525 696170505 765873097 951216420 161511619 889064918 408899414 851239964 56873950 517492502 429122936 966506467 715730473 895915429 416142895 823313926 680702756 738769378 772810198 998276842 806724621 882184004 162690865 574442560 979680818 989387250 522399836 671057470 853083033 890823273 104760357 954958328 344782837 854521421 978955487 990485311 414797475 470983373 828278039 841066493 567032729 832534726 478148177 509561478 994322255 996219224 396905822 403511375 249571860 802559603 242129478 302708094 589572621 776278911 265751515 796734008 717825261 720097385 640170978 967784044 839560255 909544609 840225351 849560364 582654529 648247666 53870128 300308995 968722735 969244459 204908918 915083200 165186879 905973656 393834073 806065781 171033658 664778045 212806150 738283745 495228190 501992215 368985365 700524771 455489478 778414213 151998289 972660918 179063488 545997990 264980177 648592970 547632009 719700552 445818733 679799710 629149200 904268337 380547225 785038678 293737253 297456754 766576771 797696066 445931360 781166502 348639245 985027470 616905418 791433905 896384681 958322291 48137399 560271257 646780813 717104955 474607082 820137386 533490810 869342405 731160314 991252544 367465293 367757210 738973219 863856580 748521670 976651702 446699324 817456874 497466777 927630658 976625765 979036643 564201618 578560256 235253420 837843630 46457938 508234502 37071103 401924857 88446875 184110705 157458131 561702226 483170304 941606741 41629825 380848589 951877484 986513083 17188476 959578089 670322046 968878555 791156301 810645901 265439387 279774979 687539836 695357674 981874649 992628678 576621667 616970610 456025605 588353141 35848779 178038317 661325843 967015954 697840386 796695285 541004974 832172210 764789548 809158523 297883093 874221330 30352468 972860533 233239898 619757465 269501476 788528038 489118602 588788478 21928785 823079338 79331907 686535823 328132200 627832214 754752179 775476745 944805917 963978526 370308367 968858122 284912427 580819207 370730579 626677696 769545638 953207318 880548932 961859840 485425730 687003057 401290270 828436216 340668477 393662761 840712276 863500521 182582785 951124067 979777321 987588482 502293304 821328370 657724984 721680020 884898714 966896130 731330008 833635290 239320429 788844946 957942448 973234169 751948611 874262267 516594071 968182864 409523898 631614494 472157945 683946161 454093007 537898051 893147998 908354077 526565720 975303223 159065826 433562732 37031329 903671369 95709235 412827696 741458329 747978128 323971603 915384697 84539643 806264833 609632107 894823807 947948289 949909596 889489516 895504992 387750353 990696648 118843577 581378724 838466459 973547399 469143412 492203647 943731639 972393705 802373171 864569921 211852327 495468470 625910178 768449995 584211813 643709765 470208751 923150300 85181690 843732423 523632795 554042510 26408752 690570809 938549369 955545023 86780254 478931822 956013395 958220934 776709701 878166173 831131427 887267977 927587138 989693301 999866559 999985810 891247529 980619753 558416403 654822491 915461051 986332662 671392355 703694091 285716340 331893622 599853633 691991574 100928390 706208623 154708389 270369843 709133040 964372504 4729107 632076699 392085349 955112854 468271113 662533065 922181035 957624955 659326375 955176614 613447686 732780853 428199561 838359458 41154903 581771028 248908390 346690682 481425535 581422790 668897676 987959701 243523067 896849440 569873362 970781469 629774728 644031661 754134892 938610226 831639138 899193860 668252649 933347832 137641723 244295087 285295388 323273740 915193936 983783947 617481024 789788828 249954983 418198739 738189126 785523450 385119773 766336846 562990484 693545644 340125812 434035396 289144896 886975989 784334373 887838228 196124544 713395459 49605803 792731895 317004606 952224119 84820497 848274056 18324127 88709313 96870511 538850145 504338567 752515819 501856229 663543765 965208898 988548560 127486190 871477911 663213882 675456521 427098345 972190525 840350476 994187668 417274839 752543732 761841440 872634765 539150672 943328080 1742931 674936295 31805145 169048621 950215036 972645213 626066196 628304167 58510576 373993103 427007276 674221904 121503235 227013262 578629195 884697097 167851557 206012062 306512383 727039032 22415397 997227489 513164581 698503739 372282027 858998270 198823103 523316451 411095565 457448076 383390606 528533675 928737122 936638489 433401555 803107946 420501035 749727944 174019217 772195489 606495833 652974358 944767670 964541416 457815145 847321657 563542149 844944615 991759808 993993585 902668936 998192796 772566320 877912045 744195056 958077084 518207429 863803710 313239167 320211521 766782648 962109954 223556805 872023293 642595518 804712028 607058171 871642217 210332115 287813786 243264678 805107030 9483743 784388227 724159289 890420524 191099258 628867817 752462604 986045841 49375192 452011808 990424108 994911337 84806582 777983354 193361840 821230636 73031927 152634394 67045472 773797476 115803063 173702893 893261984 909028673 803737082 991057268 953457173 965565285 978314184 983684307 962325915 978169617 498192356 692684794 100422987 754339226 491314355 971297077 559921301 936510492 932594736 998380654 107288221 597628723 804463117 956302296 450376876 630319494 115280325 643021532 921583697 928373865 644973529 914434854 665330669 802718214 912029111 918165039 261790860 989706162 788216410 805663280 192882276 441072557 805730586 988188440 864863645 961698285 834038600 963285773 330573489 591760543 537522734 974660969 6178971 113238761 50962102 52442263 972226606 980606182 119366994 427208311 143937849 532278306 324520210 936341607 761393808 939781263 131790590 963829557 5535753 467111498 483947721 941005496 631341106 671292055 6920656 97587532 27691096 299477366 313333108 906896901 670024838 866003501 133834280 826294745 99198352 934845720 916568130 997630800 832980671 931895688 177011066 722160696 538668622 639340838 346898516 642545989 898038109 997896103 895803405 898585678 91964571 670752928 189598624 674454758 936476640 956045828 27864883 84738252 236800940 847450101 542485102 602624761 364945241 863628219 837100975 874900285 118529609 614665795 907084180 997888812 371378628 477698703 621001609 821330002 484046250 732405686 773383775 892768472 289681267 957533818 740712978 958028985 772661165 791229916 947398428 982397400 602631700 689976138 449561630 867900277 158533352 377369150 555254647 588008486 255035913 620601259 681239566 967393833 697335021 846671785 358219714 545596235 609824263 630336528 29239291 235444825 230367579 756162136 243278927 794255040 317856138 428856907 605671570 912013491 419068398 909409476 805102826 975551045 439424446 915233141 477343026 684687322 909589858 963544263 666429478 920919062 135006706 724058044 235803189 657789953 834353896 958278462 634520825 854400874 364944315 748276793 632698881 780063012 357824210 760567391 503634226 711198467 933531236 969228176 368590965 989632617 603694546 985856611 782608323 974728185 803855190 932035151 502064445 631262630 187228291 402444822 566899885 998130257 821163712 934115345 388810483 542934104 459543589 616021793 544895768 893429454 841756198 883281421 584743061 863103527 216148084 239312061 523272697 890155240 181673664 298570926 827849952 841589195 140469917 827712104 664631592 912328134 694224824 701270703 643840658 810202162 221025414 503642595 968828429 988962331 103614100 719536946 355292936 750837657 351732133 413030879 904626093 973481074 415092795 679478996 774651324 942542998 922826195 979430181 643836608 827468280 272754652 661645772 763219264 924212661 636128016 767677178 994457707 998342498 911730482 925711437 244096710 674113606 868071391 891766699 851477087 853212461 792647190 807391164 255573293 814980140 657728949 709614260 331405588 737140740 833585038 933047215 916800485 954932673 794792887 948028035 582364556 631283117 610150507 723572874 481223235 905454815 962379527 990096000 794831989 857517006 875854337 948330799 152551279 315560954 48311721 685316343 725509334 753404669 320708677 404948338 669545635 721527808 988326749 988515597 290086566 682755990 508253284 926377216 459830022 745208255 943647119 992666161 303510781 780451041 631341393 994227082 551110093 638925971 614738506 916375510 929074317 949360564 977051559 984130780 102336293 357230399 807709597 940761040 222602073 271451611 206955626 363276411 736909205 899771611 115713704 720147481 694023021 803685296 12165923 102382335 785050401 987707206 840834566 958085740 132590442 431230200 785788813 948174732 379334762 598839538 961990886 990031772 84625175 213735211 22922075 480377930 705618578 760926231 85754264 511975512 396474124 849513649 824663256 848846392 852937961 954580113 502966529 564000397 685614872 968945598 949244881 978333433 865882742 921039669 745936921 751398033 294786769 870709324 964320383 971636176 807399004 830642430 405860961 498799704 813422666 838303409 756230285 760033178 957724588 973672504 311790334 745575312 42353683 113191609 446789189 694932079 122055299 767443186 932935920 993314482 154943566 450752234 345055918 758847838 343850319 938837727 184718116 929797028 998981300 999832524 908033732 989969484 267350190 707628926 467193766 983929527 273327655 557595751 783512287 998080597 936233901 969707148 964919677 967964079 325235147 640661658 279645643 716541078 11585930 475153729 85674266 679742793 75263132 854345068 871798455 946118657 976765807 986392219 376400371 496176217 103001580 317968679 530060798 828445868 527203029 722040192 22691844 609454137 805474108 881551150 615072496 638077504 114785082 917007816 229375996 485077042 845863168 856768041 420986059 559835282 85317197 950792985 806181521 989959886 651537897 848430808 552470884 997501439 753339130 806030708 403834476 458158268 784163253 795413694 920270498 971098139 331738332 776651498 45131660 664830615 32965446 65684356 333567555 347102544 383681165 488895309 973717564 980715399 305975181 596888387 945171929 978505530 873685233 898032023 750382747 908699237 108063238 967343531 794689715 941336277 308979278 539402829 153484001 871575189 478971132 510281113 818299316 879803270 294843055 643099119 196440520 356823424 240406137 832268586 211170807 718021398 242957329 628210800 424359155 844043503 963825698 967719193 26248650 829385826 858516137 968485799 44181143 936631807 89569187 855210796 536454891 682425393 583401276 596629782 626144686 640181115 782555409 900056058 105869530 183272717 212704355 486547553 457778770 742772824 282085181 423076713 625778327 972768415 721679600 940130772 184627748 653929498 19594354 994279817 324488337 858140629 80586000 531333752 536529464 583353398 483621337 693641178 128202232 627146316 995288704 996858708 453986069 915702140 892027677 959439964 860686075 944932214 714849388 930624798 121567438 690065695 483587996 599407920 969541884 970696469 61527738 783776599 46333378 816754743 752878064 857131088 659834260 981486254 720093708 919209047 666955554 849078867 103961325 556516270 403122089 413932900 436422874 784364256 630645531 702343099 960418019 997478496 184158667 275145022 442349107 697219591 34761115 215046913 990404263 992978921 631491287 754918854 733136501 763784145 942759023 981593024 275040081 471454683 344260512 798223450 272679497 309186420 51076033 956009361 159046185 766578046 142334590 343738515 640475515 895669110 63636337 461313347 984367619 993137716 781687780 899417027 411675883 969018680 392041301 784334339 92562864 722609325 427202778 974096439 640058270 661945420 64194018 168216726 992701113 998600117 694035104 853771908 629952658 862780521 456433619 944215157 768828327 818431031 45256288 312549857 676665896 901314770 426213068 691689898 645890609 822869920 734705837 814360417 819699565 936277080 705581589 892321396 640458058 797235650 3812056 963373811 308833486 633780964 680831254 689705526 566906918 612297968 874805925 917076263 96267402 314858589 888579348 921641916 737508196 865782808 438637446 884076231 580439730 988026664 541717798 882430956 721914838 966614055 999939147 999967188 323231023 655316587 998873964 999693561 237861098 836351608 351964895 537591932 660447069 971553334 675332991 876866231 479997280 508577150 349907739 593876101 45376560 107648909 751379662 922978031 241270359 316098336 337835816 652563208 631733781 987553306 778683816 974550068 694910454 913310045 335260673 666701096 247338300 767756369 547210969 596896480 895437058 971854375 176159531 798766916 360203827 973241072 111916582 247468809 801895921 938615919 216212350 857000653 966135049 980936174 783882188 993550385 804484050 804829950 849822857 934201726 76586805 499397136 386354705 725899664 108161398 766001269 463732769 827746289 163635370 606339960 850379547 982992436 999254265 999526684 250938498 524700600 214298108 931865647 170232400 292722223 982426343 990857474 766996835 962241401 435478072 552148905 273208072 424717420 27361199 46112299 403953056 993205340 278982615 286006435 890743773 940363600 235261396 690810868 762158353 771556505 999924050 999978309 356100658 749804594 584273917 708839443 161848631 430555397 855552958 953030496 644952929 719360438 209152257 789380274 325948398 782315999 147462409 870138176 25131733 866900782 951257817 991698016 587070516 709104287 49963670 836071477 805043504 943455903 756145006 980093734 654712344 901831522 805163299 845100729 18348573 970727327 573784693 822481652 796606512 829334948 512837691 784595040 570779844 606100589 650981241 880535626 1679260 652098635 437390863 958382676 6310228 539792145 145231285 651315087 740347695 771551068 704377149 882747468 850521041 999647730 186708045 653737035 983972393 997839803 535099165 750011110 866313494 935988222 261584983 454165325 741153307 889450640 629440591 829739470 365895217 970655499 158297041 786119771 349142617 660048954 719589506 811646191 668410297 979055683 523455062 622358502 996920507 997956819 525002353 586918998 513484739 891837978 742907561 751323345 618075520 963249950 828987180 914520636 731799047 803842934 674738123 988414246 504968146 804634997 8847154 657492521 927868186 952394554 593275319 877485343 157121977 731499258 359930990 605221015 147397245 378146426 544529214 951832317 760062818 959053912 163729157 635913884 804371106 936440592 560064568 735707355 874780402 985872647 171867072 785026422 873800607 987153577 311340788 509305127 142581632 375519508 940170109 944974727 706276211 736756371 949351267 974725725 423904365 619080397 62937843 963614524 344277015 901059658 878053435 994664133 201685593 663756688 657330261 790982825 615396286 702749233 43127859 474957338 16600012 75941732 19172672 898547022 380740920 572436882 129606677 250994154 106525535 179943376 884633537 954194938 573840184 810935710 117139689 423055179 788557429 801194602 228420201 959019327 548127535 615512048 230845844 983123378 641168399 949468108 954981353 955650781 821684041 960241881 241156123 579608555 856516905 904129328 879153427 927954894 270639691 329465241 907134115 967532442 540537757 983686058 507041695 623429485 403776547 506240370 237554805 955898122 806849314 982564491 3745791 670219238 520315158 962526457 922320182 950305470 652445298 707438579 858522457 968786669 418818407 786222116 162687391 536724423 252158144 685824738 262123769 381619886 563798166 884694797 751468979 923951646 949070427 988001545 848083765 945617498 8451617 843114106 847412579 935693712 573533405 884804021 276694165 610034215 911027952 943269759 46842322 934012723 108833574 866312590 925358691 969400608 67299621 495467367 947705356 956769513 11932570 120476033 322194533 798812240 2175916 79542645 943586717 982955811 617295601 901773920 711070379 980426407 464594520 691799156 412194035 667577746 255888730 637217267 808106630 923064937 976285480 993833845 591587541 830397361 343047619 819139434 475294311 996666780 842533364 948575874 248876117 831097167 229238498 660759524 383210450 768793487 814452453 960678551 438664096 698533937 886237064 922350037 367518815 635396087 630704803 741615391 794067151 939479655 420562326 893818409 932803142 937985604 637325194 638519581 139621699 248449875 88528123 809161744 141590723 521875340 554296907 674521119 707605219 816994424 361371166 511586785 135957040 496022848 512662164 734588786 475460314 839178597 671020610 898163315 91032530 355961906 455474319 681290263 500286230 828114564 93444595 446134713 544194669 922700525 39267992 630238924 561223201 712172432 398726328 400278419 438531059 485253676 937107620 956190049 355433318 933677529 725129594 896828050 540532580 695758955 330132181 372948615 553840726 797802637 746305758 765443663 670037439 773187778 969773010 973022846 16741304 560234178 855030256 923152602 268882974 339980569 534857597 588916703 586502976 721243684 416288598 585707198 52995620 433689176 455135069 833792014 201199336 777234931 782010953 923012401 738209431 749957400 176924789 435480369 589921704 775361981 896725444 947347326 129186710 137767556 244936610 849720924 383831404 671500834 315698282 586509016 61484955 282628070 267436633 555972118 216976842 621933845 26717412 220315680 8264711 871020284 941019193 972647562 250129801 792990998 388703959 817963919 233858977 984154038 782454526 973568953 484166808 834413260 90716123 576294789 851609901 928056988 143265831 819213472 47854446 87780450 308748479 489355408 197605855 372677278 135524378 368556271 398554045 520243708 599117466 967809786 691667222 862253935 82148511 374487353 708359970 990437631 944926783 949025187 872713772 956611677 335229381 768534193 687512816 934909679 706475817 858426940 824655392 947440208 371837164 696906380 132634937 715997428 867135207 907717995 99206599 778932059 765709833 831824553 819056692 967146927 538050272 860945546 821705568 941872538 660157915 862086902 383280850 610615848 503567343 580860571 637825722 744685865 334775292 528280053 841510432 898168819 925620222 981323190 536140800 679165469 836993145 865297737 252713093 522430229 735798579 799648499 796111593 808300262 330581137 807653510 864314075 930071094 899059253 944078326 610184843 727502663 696939040 956471769 225338462 895819147 763671731 818966480 911950959 950025221 803132402 918360675 478956884 770795482 610620797 767210054 778100592 979369106 961885915 978068770 838369001 906871336 634036567 999324399 691816932 841718831 637407376 796547369 290052704 565164825 816361939 996333773 186902600 389882666 483197789 768455924 952620761 961692261 392984686 459514278 776628381 830287693 794318558 861699171 257119838 645098636 893020224 986994766 543646065 794092903 269193470 817838687 964885832 995625579 41951632 579028152 988439599 996018592 976803250 993757241 668396530 807816756 181159378 924159508 904012491 945355188 241773783 671683903 720366571 857035590 992575419 998348100 883647439 905528590 690552714 913386824 142256060 937438844 311597470 728523515 527733505 992873341 546220683 881221168 828639576 995660743 403142547 953098055 375950937 905945327 133994719 874811782 915052511 999680163 625329822 638536361 735160609 756080161 364753065 909546269 21082079 43506840 582994075 616295860 679994024 709480407 656854812 818814614 135896499 585266011 323131795 418487435 22197788 62759100 866853378 953887002 20053546 330853345 133408205 749243418 752183992 928868693 281442818 872079550 973954309 974271689 838666257 864295012 476833465 580717728 763852397 939448132 162306004 636951541 280237860 988090989 521272411 775538990 676165253 963740226 250317898 956458468 837208318 931330751 287313643 683599887 329668997 876128992 963710359 979956401 806234588 992051106 660431109 972592421 560905048 999608106 434756387 731957417 100170819 162593964 381486141 419961335 510281069 807452540 227269870 947926255 135683604 223272789 371301507 818447752 767793578 918947191 988769653 994066754 826173018 953100581 403815941 483677245 627902960 659817181 64723935 172324787 323792728 946005293 147509611 347005599 978185950 986759015 166010196 340934237 414283085 873565135 915561650 923925388 629153708 952075583 699315181 869397791 345911904 903979046 528432775 607843900 614536199 694833518 193763963 528041370 653486223 689783951 792427671 918566968 148090233 365715048 518902806 963223011 718999650 755872331 286677745 649264910 194155749 613243317 500685352 596894308 943999475 961982696 972659537 984697089 24756806 662711508 735529356 956582416 412585187 677875647 848421146 905278236 615661279 646515105 118505829 721767643 740508509 847711372 119038002 286836557 476265319 562632846 317031372 853923288 128766151 251290616 990185305 995590891 321227878 699701913 424828403 488388659 707201853 924666239 447684932 584467974 931738005 953897632 888105947 993232568 763600922 854279973 188335948 334881200 429346547 895194560 926104003 979811556 848589657 920089006 788318039 818953435 567829238 870739867 649117 616115172 349691742 441177194 193181181 442788990 884475645 918952063 968277550 989142977 776370667 965128388 433106998 937086917 754447642 932335388 575583581 676847383 706961890 797925890 818107043 875496972 398539931 710069290 941167648 988063809 481409152 901425165 677692918 991763843 292342980 349405390 14040614 656167459 751950002 813627872 819312300 953457678 348713586 467848366 219114754 495276147 613478972 792800925 472101970 472267328 394202757 405880148 945205401 981090915 968353667 990575489 271483182 486507017 228421961 812967284 357287098 563751232 718840135 783280940 138160754 667285315 719629511 947603663 315194034 907870975 310643475 844784701 21338010 858875419 851264036 955503135 449171546 563206858 287449445 388571280 705107652 920454902 787819391 821366069 771178193 875068159 894964642 958791314 680693906 964783988 811429641 923261371 561431688 848792120 477677064 739393726 815434898 920980696 464576634 870545849 339351211 966842969 75507685 833736270 94989239 281312713 785281298 798551110 489368743 972908489 537932444 760512668 189542907 594418304 881563753 914806917 413493513 950517199 959423149 999735468 826411209 853921508 678924059 748577744 834974783 983086486 775177476 811990594 918908919 957925099 648458669 853177172 324733178 418300549 746587723 877319910 918324171 996766571 376695478 966764297 659584943 829904190 477084057 480079261 44069668 911248990 683524938 712905943 33712812 386136739 517437082 901689137 113281390 787264314 430289190 853667731 244543416 601760674 246193722 670983527 86431009 624937375 226955297 239426867 703002189 842641864 506196967 943653184 167845042 283982216 995753372 998683498 254610718 646222294 787163687 937182487 542532209 659708369 619533158 954919013 262878845 843401719 29960087 400458066 916719060 949031441 487177276 612565538 591164146 957951300 113968284 673450296 82284434 427545052 61666162 336678766 891797012 894011568 139137147 764431362 601622916 789593430 1353010 581820010 31966711 582990562 639427223 975410537 484036739 723575211 328929067 598121217 726721917 784496662 161648179 729489463 221766638 637165243 941365515 968665892 478394277 636229459 11920201 549366732 736856790 787721500 427823122 910800412 617868633 821373836 997148345 997273798 397980900 692594065 242399287 892494443 209871973 826294590 304620270 911333347 399080129 783915333 515111796 783855934 903166698 907045295 557771723 795787662 261609530 496577888 800629254 987361398 359087755 979750007 97656202 316919110 323305660 431963017 843013651 917326358 419758710 900622117 633053004 665151109 775144926 784030236 594616044 672162811 836938965 960478675 68933132 547540534 94865206 389191674 28445984 410388807 676157627 891233061 488400119 504553596 566392143 593390561 9267915 516664210 198404475 254299339 619768981 882647965 134366391 290079797 884821228 885509841 694296589 698476275 601066637 698371750 893430671 949381788 698610933 704390261 311182942 795706001 638655887 870251099 519802142 817130828 311134312 608202748 744769609 830238094 634233889 957719981 322156308 403369701 985884021 992777152 964100484 985691740 968362457 977389836 801191672 824798057 606240785 617402476 907080806 952437497 284625974 813543685 224206657 969316437 914748796 945758698 908828487 999578237 697712880 889680457 193332000 449506798 28840639 574154415 463411300 715930251 273939549 737376755 791511720 992010736 681949233 874236839 206917555 769193844 557137017 721200554 954958580 981954153 539140810 998485006 956643615 960191670 543817561 912015379 708985259 767376947 460611944 991688235 691772463 802094043 990603311 992798803 162187817 468663452 582352371 995429186 150466766 685001712 283748331 956248611 566473096 647981103 372625017 372970246 343670077 507922470 84865891 859894868 516036261 703097893 160603360 633012021 613552605 720914112 833715388 983284563 527842110 642296047 968335614 982275200 545782772 971868724 905806587 983484278 864361543 929554473 153138149 894134531 273466772 547348112 174632227 912729781 987030998 993670900 321795583 535219590 992840470 995034933 145071610 630019904 135361136 601559171 169729506 245426790 849187155 889957581 408311052 701364715 531196800 892634421 515707553 773399647 573704414 743228853 980337106 982207706 236282105 474463906 876801524 979251502 168534940 590009754 189456492 954382367 570680005 905123132 669695027 719277467 310588524 717859506 9003477 202478409 929474870 963593412 752197679 825324205 2638423 542424783 295804909 940625719 311222039 976098599 986754417 995549913 504575084 832714307 227768316 415156811 467130889 793877877 291571818 811877900 673136249 914887762 295304317 326198611 475921715 968333435 455377757 888977487 668773390 966532156 827635717 959839905 267950865 564679055 758810013 838718468 373335494 919582756 17342415 216995155 971961449 998798791 990154429 996863422 161144076 336659162 625916489 721800114 134057576 416903879 167306052 697107699 169316952 942995694 158046860 773384345 714505554 896237467 77997333 637088752 501154819 720800832 585834185 650097110 324730589 600071314 617916626 723937302 897294344 975643843 119964045 649331321 516320679 906837630 960689263 965475609 220600619 247001754 780917226 870341128 518905509 628917039 727047359 856513784 772443849 885809238 536871676 545837144 536272456 968448844 760443007 929207687 243413628 912577335 260300779 412486547 126181773 489166124 99825943 344740379 785642998 810365291 58635335 671528981 400150117 426170786 48478196 258219780 897493740 909666669 425154338 627163251 179787596 424785629 55571958 655210732 124411728 574138450 216957057 771547992 955891456 984296160 768836248 837440950 194608206 280165209 34970537 376328889 333026015 518163999 878427118 968359612 809398093 977609646 507909638 766777141 270405038 633897904 616528509 970012705 92655960 605977624 546564036 739517107 658187568 894035798 407074732 420104279 702143971 802996158 708511386 946441956 224389518 982972220 478546480 777286043 229319087 763784026 195411959 597048940 394132450 630924862 21856043 670567587 178525320 370998967 191113887 579531600 284178113 865840921 989086751 990551358 645131962 994932697 460441451 526484426 229566870 372931735 698352201 948927118 137536714 315906081 23716038 546959656 941293762 952819908 769948322 812886442 849996093 927217929 385833404 618204581 523178369 811536043 59259963 153383284 188908203 220894233 184965883 881012481 646278484 946103490 711880435 946553659 345998869 734595982 185459858 675197633 146865220 284624654 386910702 516838076 814398355 822594230 252668246 900216600 687834236 768698894 504561035 966836799 784329836 795347786 430827720 678993214 735664570 836216393 525192272 542355060 324443957 459610287 133207755 470528983 698980954 735503299 621527104 997899835 392197240 637336371 959619708 997785104 867527519 903557631 782108021 911205415 43227448 336887629 454288163 715117279 653633034 665580687 939438358 948311764 588445404 597218444 53832503 537288221 897088354 924468286 99128712 463935627 952057189 963227825 789339313 998462583 798428692 986124206 580716617 870930274 384351664 563366608 733231309 929242224 330803742 622872775 511492376 847895076 993472631 996184911 233921647 849450706 2156177 599759394 204587506 981208917 29750658 704689968 147046749 262398091 404415009 803693491 968772144 974953790 779134000 833927032 236243712 431273922 917085225 920869024 286138539 980008813 120017913 433304899 262397086 568556816 722405979 723174883 692921438 837354616 515296370 997657057 65114908 264208127 914089907 960450049 154529072 967034085 254535060 541490701 374153571 438799702 372831781 969862818 835936317 856987877 597773067 737080141 922463297 943077908 694670673 946191949 687049803 691140685 193025151 424459960 473478207 553937562 711856151 731434970 189477344 446379499 306851545 835996014 343442635 615416275 916432323 991909406 397356756 409625865 326993221 987209431 465794191 977508881 633673519 857212061 758669884 816607196 375296982 729045695 794603695 883727558 101255185 562437133 391129625 581856123 697663580 895110424 973313483 999273252 482134767 843948310 61216677 503508150 654568503 794587624 419641133 821667673 998617307 999404288 204137273 300693772 679459654 995330077 577450079 859398548 46645062 409340382 647938859 840990288 348812618 977827973 526292231 901291655 912911269 934229831 528974293 695042579 805321734 926308814 126135075 892221258 838783199 934195926 210799812 499087590 913401638 922222661 847088118 906060815 669321258 780301640 715947701 807162395 701927224 720331711 643743514 666799881 326095001 775520516 190116990 517737103 349968005 407116217 323760747 831321330 756480649 781273840 561944006 795542775 314243031 912467401 966200003 996214008 27604022 344054192 544584930 777804723 391576788 526491951 611451351 886459472 396462366 682940446 133933565 733033401 641297906 994280983 255780160 823108422 748620725 858622290 18017876 108993362 138324309 582586969 206812365 538111547 449910419 554918518 711780298 825079358 369135600 440289848 960677111 978889454 396184414 694965229 664581454 971588603 298799915 535456384 293130347 294771350 784292400 890198818 577535182 919907769 456889791 633628854 689180447 882737130 470374613 755759835 886124461 893623965 703743834 732019542 646926802 815658551 534100945 777902028 847457228 938943393 614855301 781885731 908546254 980907120 476741779 608294204 979275717 996031714 328019548 964051122 30930117 708039150 570341406 916625735 117483106 398308146 951944393 962099805 826860566 957463114 66321165 193913957 659656641 986639853 711057781 715018132 139354803 905781693 448531414 722452508 502886025 860772621 464282369 774197461 745414691 928273656 539724787 866675294 18538909 822670535 43234301 807112144 417251142 780525287 636799913 808157201 360623949 932483302 171864182 595691247 403633236 427259939 904168568 950328552 132919719 335871920 419542460 864096205 861565896 971569839 45244313 148428641 494204079 526161561 881170840 958025721 975518019 983028241 435476696 874782360 462793427 525640269 296469243 418022003 353187631 503261955 974487355 998469215 670239024 670979315 883667317 993636697 411684736 834624452 549858665 586435312 358158724 928493581 304027646 327269671 308610871 951808588 273410145 673514234 679721498 695267452 784845137 947759739 411942931 784687067 885568239 969817872 843383020 883942861 345585853 685613885 895866248 980866911 687163590 994418269 232392368 437656152 687006739 984333943 143623552 244257473 990799977 996829888 34646566 883092831 419666256 450987709 330473089 633877234 355848879 968129039 373679820 464124975 531231867 640665986 990333733 992359783 160953326 261850365 680614434 925298638 740250312 939048554 400078462 715428945 307205439 763275284 571516434 840562777 988359423 991668168 857592706 869864175 75575138 189270463 685949106 893372757 728665696 969151689 420729736 843128809 393394907 597495329 992610947 994441689 677008806 783195365 698943610 737255023 378786278 936830961 308105466 419110129 92870698 826311191 186549234 803952103 999642435 999804472 722386617 796597701 896531407 905929851 508689776 776451471 837583717 993188629 405306706 896886458 907724922 936307422 791095292 835639224 537748278 909922112 488798922 914851401 334338354 530240058 451242254 734138267 661889325 764866044 219872564 369801538 458795653 939184008 1594373 616978938 233329548 416190558 184606440 997705515 550763121 929797465 12701659 346089702 509808976 996608965 730886966 780603422 729208218 742466351 340162145 559599380 40495489 285331563 792913161 895316078 785705799 837105933 106807487 756331009 86734810 328787280 288693675 411265455 90055615 160437409 5004608 281762953 839686068 885330352 740861563 763413225 226413659 882385081 238122263 977507795 940117905 998381645 145397074 804420410 542535185 767231646 106848489 785585650 749325571 974549266 346793336 482992513 446743301 854474348 842016763 849252055 527626013 723535492 636115476 719300234 836703973 958436331 326154903 685990599 651947538 964615026 143217382 808877416 56208513 157672637 198035546 884841528 633058350 756965615 826282402 966064907 793711401 906434761 629320187 678699144 443513237 559205268 280811065 374820484 951726888 964763106 979950325 981248886 833135829 900666751 628354859 813396680 609185387 873093289 599964246 690475528 453925911 897882898 330762868 678620036 257378925 977048094 868067223 953435960 673088681 735061482 30102719 427638393 377283674 667443195 959561621 991738741 698768007 775406516 105363140 204781530 8742183 378523956 245909487 777272401 829273824 963366464 272787203 416348925 663487965 855364274 842574046 851815410 339553838 550141583 659514805 829027722 331646384 420396707 939671544 957946387 159070582 361926640 889766987 906245172 230078027 449654802 949339980 973463488 577042143 951884339 509836580 647040107 340651750 404879947 200046636 780537284 689719584 883871159 913845120 922683258 444325373 640796271 765073509 964735366 764837406 932906833 317027434 454200085 178925362 190195592 110841377 186987058 419170355 452132900 506247169 748167505 127016540 169232663 204948418 907320757 539936153 604585294 598283159 644824206 186009278 212768328 242797397 621149097 113615763 286384059 985019658 985531600 510820137 678256450 189991416 588066878 169184090 587418913 550002661 951233942 739036329 900382632 553456583 813344343 512174319 907109029 876020692 913365797 310103445 837040713 927450131 989728101 65780523 560703573 413768274 910291583 799338511 956156390 571755767 831034912 798256234 990946565 643865801 671297975 930669560 950257946 993038652 999458420 166291458 255118882 270205406 894936648 613455730 903103519 145706941 225178156 139186184 145562780 45969567 927848254 96417233 115746536 198356275 249179800 995406366 998270186 956938095 987457292 972079781 999213486 488612256 649969916 235417802 565525693 769494863 972397061 682982680 751670104 231597403 978261615 999740389 999785168 528899863 545499724 664648747 990726171 382909705 993583410 599816790 920502596 378567726 837573039 16664533 932691597 378082250 645817616 71256769 662764346 824227513 852946072 271035863 447219782 40190551 661116773 778266048 858576183 890879982 918510710 382377655 916810759 489610901 936727785 294429779 624182720 56104390 412564830 933880144 979312171 131556105 931197252 900914812 929859591 6765297 369289524 94661332 148423544 348287432 980035005 750613332 805226451 600647096 983522662 255913253 406496500 418551603 708004673 287741526 939496306 15213806 563632600 880770677 890795174 472728521 691941536 580185859 724247132 498409685 930159699 33924035 274588401 915067606 946182736 302755355 462538807 843061943 900342429 177987408 859880038 992649010 994538625 171057403 881993232 47950635 554846511 424545448 550285263 973953464 975050453 814441371 848517132 645036528 906282511 679022364 863046387 184609022 269233641 757977732 901520602 461431686 930383041 580816106 583740432 232450449 867381869 306547554 825228564 911794003 925637103 818338029 914259513 570132070 843587310 922716133 943061886 214617548 558723854 822207952 958685421 857386094 872298325 183190405 916737430 561816449 745758546 4935570 906257094 8816245 283569747 446297073 966492489 907209350 947330588 120024120 153790072 723093606 875709040 98313082 423683755 20065886 379434752 538244589 897083187 153493375 173926249 676507891 758682045 885198667 902012568 844352290 994328336 125394651 900584135 274644797 517587735 319180549 572695840 8197748 112251982 986361844 986910562 339393052 828437353 853214802 935787247 724601839 918780525 700609296 747729307 698580673 987960036 10735428 52429164 376764501 948207885 878307553 938879050 250850986 957045211 433838644 469247039 915363008 963758909 907187724 957971760 613995765 758405746 579338353 722422029 292316967 954657357 362702877 762853303 484285908 979008952 638825276 967152798 295204062 398082200 146363083 739736490 391969860 791458415 676824394 974658660 457205471 880676374 611055013 872774026 905048378 933276458 386353893 819202714 895102173 921069859 132132219 781838014 366192572 804393432 439544847 698284827 630559915 914164346 336789265 819891692 22403525 341829929 333717974 880655243 663475501 811845350 282728292 665157493 938997794 973588606 559457943 645121041 844032091 911605994 46239198 234332987 650058893 981016113 389433442 751881174 391427157 676153256 590887033 996282898 812305041 877900955 209302361 879087179 942264433 964498978 497384471 948106346 697680204 852350504 779839142 818408293 173823364 786473729 747791228 748645914 839201754 974180824 222274607 623871053 733761774 862494631 377406498 930076622 190046225 352269179 587549856 682938717 779843454 960284251 166041108 252017706 177281237 893966042 383741333 400697463 575536215 911605937 400884770 943697090 184015527 850580740 681494951 964235878 743974092 775172349 446333810 974273007 721132035 948495403 635971393 772444106 928477763 995008150 874546588 889213463 62637543 122795882 478086821 990086754 306347892 877240200 158763438 884094261 635947776 991002918 250156239 707898263 726827947 843770302 167591659 522428138 595529204 676771625 924513515 999691173 333783188 654223373 799110913 987907991 924141427 954455492 786607306 855649948 632074100 928229429 267016798 816846089 535369250 961263746 448379760 993483640 946266349 957153128 427655068 531296586 871242711 971972607 909649490 985640519 841799628 992914203 840908911 879255655 791498317 873612310 978259714 993200523 155054495 552380569 728893829 999452578 439050186 701237860 763267456 885031953 43597181 823528305 58241881 414492327 305092018 519557918 550997335 818926213 574997686 858475799 281510598 352654618 514834364 757967017 920841032 973945438 345831357 659629917 128149247 655324366 65776358 146282156 213813997 821910698 295845248 483611773 216017298 684501262 542090848 716595841 954299620 996321736 795126093 838150713 849410628 924985112 26892327 550113174 575707222 637655579 144736546 411680651 348084426 379280838 236884146 275025783 24362768 579975580 105231394 147371793 316755478 338858124 719914657 750284270 979744234 993190924 952241758 990920840 30763278 855324495 775238212 987925710 850716050 877928104 909961224 945514215 407171757 769061332 852245477 972657387 409716945 870246554 197378360 858636937 388167187 842395589 419889818 607572523 733958231 734897033 178811127 757548293 460638856 807502137 238569365 820323591 361525552 879294953 924664737 927227989 190172124 975585826 785569895 882568571 180484578 451442844 619705567 634009257 665059895 812868784 848151035 990716307 76440272 938404833 156950125 261817010 4131774 975903854 366269494 659386064 119671300 616497090 61247277 626027005 821861645 867261836 409349981 963685885 785501874 838616816 408852407 757227013 356269568 979697727 179190853 297950694 843044584 913082967 757103120 789771206 846236408 974510602 868981717 968479443 948251053 971446714 646196330 833947588 136550651 346752752 99577974 869368765 597448692 954800418 723334051 971656104 258474722 359692234 750621244 861272074 894314371 934930250 499899034 935464838 514595137 531782475 209502258 564727870 461702428 667585430 814614250 820487338 506036614 912882231 682685683 958039057 810070279 827261585 234027038 997696374 197533926 414028766 675469807 958811183 655738262 689104637 889010338 918385607 69933584 987362187 506708649 616462651 326196555 890903467 345311940 688325965 771421562 827607370 276081872 917749049 967852671 972474981 720328519 938966452 19612632 41935026 188945685 420091387 99083951 511862612 335138760 673821332 216338721 785798261 839761557 970028230 591991639 863581678 959782871 971887696 967085790 991686408 451030686 969361354 824402253 945713278 544050882 906233989 374699741 706936358 869812652 984219671 465024402 650000879 213811145 672219497 968482515 981747452 503095709 640538174 245772622 502359543 623810287 894995058 949855579 968683146 592332983 712355155 285710552 906298864 278093117 690838252 444178588 769539570 921815691 965425986 555350467 978011481 270345609 717625349 364064306 734654357 859058048 919712990 869882256 975276666 579214058 803838369 413404421 810588055 798715115 823487525 584559690 821578280 733816800 775149617 49717961 470833085 811036213 845697776 762224804 864923083 16752305 767395506 538082169 815915007 305725895 377622922 705671011 744021443 595759618 756833985 95354309 298572982 449820681 990615065 905618817 920553142 176774039 359155566 913593412 999393234 128596178 834660590 495681563 800531624 910926333 963687344 773651982 917321771 58049660 906213809 42122266 575267738 482760692 676977143 103206350 613188146 406315183 656638940 455975935 672649301 394989284 769407671 159259916 664325492 245807348 620550468 971131282 997397916 643918825 707200554 981567404 989744469 323935589 370550721 130410989 277455116 814266780 985032325 938054738 946902475 344090917 687303934 826290401 913258909 657592988 813776423 604529362 743342691 91541853 292466908 78254339 738405865 810780137 845439186 946603012 957821694 315266925 609913902 96676821 172104204 374694510 737711262 983894446 992636717 514582886 968508003 424772805 492207351 545806974 596973782 171202295 635699138 946981404 985806275 837383752 838663939 556781271 804701805 424314867 707866932 285139545 584751876 271205516 789952401 650467599 967817352 502401571 549722294 932075264 955937513 377326560 932005385 459347670 571590683 317194456 657099099 321559373 489327410 901559699 989181260 880901971 943134549 716197944 947831468 642151392 900011146 160821693 806126678 522906473 528092200 39498002 652078329 734242458 907181452 220294644 547316738 159478417 670634983 827398415 850607003 697847904 801970393 378581276 936264216 182163420 676536661 131419267 546916118 141229212 442923581 427996226 828683579 254496361 627154829 508844262 919334621 219451912 816718346 994166856 999549588 249907405 455563525 120743370 450825733 188114092 338017761 117234436 407541951 90992958 103041185 306405459 490771587 155796849 164023137 694861281 931990119 80820129 994787479 762179443 972333253 963511923 966157966 589945546 733274252 600846849 698003402 51268037 727155215 644337447 925679693 759205723 780783649 906054042 979945501 782317403 945075817 591814625 806623664 381882347 484337842 426474908 938561531 954188515 969774525 798213497 991707858 951914921 987829121 624817478 989000745 211298429 952267520 219239171 694365045 778915676 801814746 680333966 864777338 253983 366982156 758153533 859455734 427106870 629820414 448890296 484450979 778940457 785354094 363533015 584423787 744295589 831956942 164523414 622151605 760659740 778387097 212142432 496609431 551094807 877875690 602458852 764103827 774223446 847689961 421759859 503554732 73793813 799292351 542064738 649988162 902463711 909875479 149739089 560764859 54125804 453460495 71844799 307312246 627889630 663463842 669295468 861975750 219521851 718576635 958474117 964924019 459791054 557528558 110548271 345899262 231955405 526123483 747383712 806436078 830578433 841822873 118059094 535354310 685176111 963459014 501622598 669163254 548167782 832305712 668906686 835398849 444997666 684778352 199095141 581732101 803755475 804599220 551438289 683682298 195932358 363036928 472091175 480264000 574211269 696982574 817321207 988296732 155929093 513491794 292198032 837814483 328068170 944838609 607714515 623592622 163023998 501865318 958107504 981526006 239286837 926680799 830183723 926266465 161431859 904962594 304029182 997229558 633588429 901098831 150281696 533676510 66520127 629417528 182987882 777886374 367110846 758857764 168796663 322046966 102204075 822833212 272257583 802457277 365580639 545241560 225580762 738145841 752620285 911106488 307805827 983209084 459999874 837788683 867438179 988882829 723449950 782046257 943752977 991151199 970013737 974838183 759313849 816990175 696680035 991373541 394162983 489467102 955482601 988174383 961364684 994101535 327376343 929217806 156959246 462990548 943394714 944116105 233395820 417933432 195735185 277393096 814977797 889810011 656777199 818648653 883458934 940194349 144246570 710391922 463520899 503811801 450049456 451259097 885173 940251044 133406759 479447107 482187035 697214682 574846682 667326232 347264368 627801803 797948009 899422928 876919913 886035327 563098045 581142283 913047344 952623608 770063770 943841389 730718858 937615290 897528430 916645366 811925417 876131388 187729620 964859522 675177995 909746480 669501349 739855429 384464746 748410131 487910576 599313652 287030787 936043916 325094139 341467331 313332771 575804195 162239816 993985665 43009811 141628778 176647975 651192545 840997156 973286671 590129530 740312574 705320075 774338956 940539140 976442201 223334120 360769173 783999857 919309051 837627993 867480381 564143376 984508568 937598698 956177972 476321143 769572579 554142348 834675838 189195132 802471575 175591718 249818503 431415654 763732836 505939365 673273098 588735848 610662837 842043887 937629154 293099381 598408750 60516058 575673259 853471751 895706763 430770088 846307991 847221014 883966686 248980645 762410644 309955231 594970728 309051834 833875410 710023439 874360230 302633042 808296609 147657846 458698307 647145286 735283442 615163177 893872237 449778766 588692140 581447579 717314725 976421820 980724504 882204451 980178672 187486021 644638065 660307752 781455836 710296813 976943352 220054366 327927177 451401203 877722478 365006070 957399018 569963628 571548763 755710071 820021360 773779664 942736288 177874178 226831227 160000530 371768270 386856039 466755506 483375767 553436799 127250087 808381758 210129379 882646123 880055071 914227064 814456628 890228785 61131109 408129324 703930066 837482764 229419494 724207734 429921603 781255134 60174137 111011770 741295961 800828560 244548198 411224734 322943424 441156882 795387973 899043388 143821312 884769713 989250550 994446725 398969235 419799236 798588506 939336392 371984645 721810836 831429560 963665987 890044605 893781324 535334421 896845438 200005572 629345871 479676122 925045656 642692253 817430875 251907540 831753864 539179624 764287249 228130730 943191285 550977684 923271290 999212608 999601229 991407156 999500819 453702111 528526301 418827338 617227126 895902345 911781661 977592810 989756592 476043714 571315138 539166227 968922094 609102903 976712001 209685526 846277540 718240544 848882455 995738199 996141338 94558885 460850923 116364438 929127798 628735764 666610525 291878647 881886966 10345113 527697588 592860983 629726349 770638719 899469160 220327883 818351932 884023191 889285237 462939590 701635567 320563996 587406085 324115355 526326054 279351633 532414865 80392255 593081219 164149344 501867480 780145188 924978856 34815900 766346060 166743168 601839130 883998964 974390662 548719069 971331886 641984649 771745418 886945595 945346230 915628113 918349433 963115346 969989455 387694156 769433349 314930216 893624754 456270125 918006373 120885481 466320670 510507232 888878284 338516406 896981297 216513596 795892700 972487405 998061515 382592045 426016970 380360197 997221333 339942151 472998857 347313681 524314412 351459938 757957304 296624681 319482556 781020505 976522553 654021087 779271409 227168904 696393445 308355883 954044387 620190824 893595418 946360377 990133930 80628657 633188149 877892653 959260365 534511702 814438875 316718455 698071782 236051533 538874172 896825408 999774580 695512813 899645491 366576547 749396404 113122124 495563653 102147485 444558092 903164507 968408881 637996041 975783835 591911139 833191155 508860594 728908047 553086092 714565682 407002940 979723632 934737982 960391161 231000141 551343070 844023776 976881211 67112600 210458439 590797971 862461070 590304322 945616101 641522656 643097507 819544917 848045643 495791926 896741574 209024087 543106425 332101088 800663364 817051798 882617604 326352324 886573017 594927202 750347902 159849763 719397760 77329824 314165469 481373344 727988832 159610908 472272471 132877330 487233776 306634207 344381888 341003254 640265141 448847020 787183333 258545594 662735238 898078684 941612018 747358833 750791443 206679999 275346457 7605800 149325320 904222088 990628676 345700396 495551769 963095746 980075324 898603300 938149865 393045005 915479041 364158320 554372993 398485614 654508623 145300409 592002893 742590235 974373745 212171448 755003733 781119660 954534836 232422605 431529381 392000683 577072572 298415067 769213380 975384303 977229819 40707990 892708993 460308241 706770276 161594397 284207757 621671505 914631727 849512539 950220728 281091671 865447204 618088837 871906501 315080276 932104007 665238133 762130232 151724070 395348579 254579283 455452872 716337449 906579743 1838761 455290008 800913837 940976309 853423229 921250146 828151505 928786493 119385443 776774844 244485216 942618093 452710626 981944288 304627875 908357890 111802554 787252557 399528283 752799871 808890577 855918292 451549795 527781757 826158217 844559006 814396559 968647467 44668442 745071561 282053194 514360009 209400419 419301290 847966341 957328770 940554846 954177752 552144754 995497338 342086963 978519600 346179160 563380131 927505329 989342049 60175809 483304838 483137874 700033084 96269506 150359015 739351278 814112098 486583539 967491642 312916818 583064900 198678221 903296193 307377367 810361779 606131908 708866038 675400248 676993528 433712790 441700045 674065794 694107435 566674438 772676297 153314860 491685501 405348215 505994296 239170807 588774624 900867430 954970370 960006174 996149232 824435844 866102077 304015201 774517256 709872504 942287436 266460137 618817042 947178951 966097464 611047934 772638796 935508765 966150461 681585695 728604516 230230923 238862154 650355365 875103049 602487546 753407954 236030661 306853107 229281448 723716748 397594824 892579274 621246308 629840906 31310186 725957865 955208788 963613435 998311399 999119390 742055243 870131255 780453750 844051262 477687701 578278534 495145126 724205667 535806235 866474632 578972397 869691250 114489650 294296237 82924579 351036672 366741866 676820434 945199496 999804651 508077677 887006467 466390472 665449970 306453690 914614091 148675283 323737711 820566828 908867622 244095609 994337391 874072724 891438027 372477862 668030763 576706583 758708463 511610788 664096056 807843586 975983542 429393796 904325253 671859004 707072408 98791477 707341822 627746926 929531719 880881499 955005231 403907158 623136435 613342884 990647501 484288726 760990007 992414015 993605695 48673230 707006280 426351810 929477036 325983349 346068550 585325007 708566785 23686505 188562112 680634984 856859563 875613303 983502177 472302455 702134321 276644747 939224796 913255373 962395943 215735650 457278485 752585990 762050093 701277193 797979883 200019704 876310008 743330695 811825085 756217547 867409442 728788320 746213255 832623572 876448033 267416919 674160414 305989751 780080797 169398975 918002265 284782909 625484500 715216068 748929785 627636022 665910050 433756986 797080989 187137550 329410439 985637275 993410961 803063348 880189092 936668892 969176313 97473731 508881890 108813339 937669869 170253853 798140863 192424312 878196565 307996774 819626085 188272108 766623003 796888832 984393580 152412352 627944738 565128736 986164261 650155339 732032681 986195107 996053743 917988277 935525588 912061479 926285361 357309607 918572739 637805210 909303237 274886318 768593482 1602628 331593957 208057294 514455014 618401027 644744416 51776937 95395827 893042267 986881613 77678787 407743770 997150474 997497896 824562765 826340247 355435306 479439512 766381082 936193783 480582149 942201620 780190498 915959136 514773850 922919205 131142408 458247254 977225266 986055097 3153362 295312960 882025836 946826732 268037484 644200355 715754344 997480157 845507191 937158636 920134481 976849960 691980994 920197429 57225759 784689414 755450830 900817571 458968115 771212979 204821848 355650453 182171881 511037502 350778727 717335582 419137780 892985799 426301155 668599557 49059051 969037939 322818198 770887840 11236627 405222213 890905158 992085996 708808510 843990984 678397545 913746162 369048515 680972392 101339256 416539125 510679171 613362920 843449093 947443400 635490272 732718023 337562352 436916030 579617628 590601034 443248534 638121441 969812020 973578332 400446289 691445184 791737015 995243621 381539167 432441329 632035507 931105123 892037622 938854131 954681514 978598282 361053849 494173932 963250990 984691783 109515233 148469470 248525546 894110422 683777885 985399997 428764504 992106936 811861989 905662542 958695884 998955971 708192121 804945586 139364286 888570990 516092491 803119215 726834389 729118441 710755750 950349369 375100633 480623790 972312500 988116886 296703199 542481814 391343083 494692334 473574460 491343505 342039794 607093458 812144925 877415778 170817340 690809612 92978120 496634944 742471664 933780567 967856892 969195388 447195308 512875627 391823632 985206857 645998227 863112026 409596866 732390893 231399 139911580 786131960 847255593 62382734 804263211 942430730 958342436 365039371 858329117 538109148 853096911 590874068 682359716 800592535 870481026 96026876 343545123 312803577 708544961 628523756 982375512 879625968 898520258 891981902 959835049 811701321 992539427 190574689 552142094 734342623 906611462 560063884 761867169 540827625 667299504 885737307 909202968 124492950 500243100 970306135 987015782 316980359 793482579 967915279 973844994 258286276 788612350 328133982 510973301 209896345 875533408 473736795 703544547 969340740 972757036 642590019 718819137 274523169 453243706 766522975 905123565 298635914 784817517 398778856 518497781 786498032 982771363 351490571 432997424 376083227 571997911 311586505 523247026 435927116 721760951 471703813 510847667 145476572 535280376 176205405 365649803 527983893 944223287 727252546 804499979 918929888 923434353 480223889 762993427 251537825 545128487 548746930 708343060 211066731 418465386 463139227 727114316 989403888 995546442 563054099 993025995 893034994 986460271 936539641 998868310 352992154 576466528 993769156 999495335 470984211 573758085 724485301 746682105 652388845 932959949 47272047 469931573 484339181 939390607 934753369 959972255 22393932 742346548 820114279 930701200 324529129 952904894 904960611 930612535 978720848 985111538 958145021 966179899 214478049 297570432 241125082 641942106 457260055 680815795 783982057 937280625 123253358 676540425 886822643 963088713 875956608 901615481 361649045 572583648 47921959 608228949 216606781 971058295 858298523 958741929 12400420 674334956 4170911 453463617 571770190 853731268 374016113 965806611 920517671 957670006 81475166 839200874 209572289 702984203 102722177 988303312 471534590 859064415 527950047 719069074 763707061 824615323 391002497 412990119 517975375 952399007 207789549 695670790 825302259 893860358 979014033 991935177 991555178 992202387 13362102 75385222 291419598 739010883 254115364 830932100 984176025 985861641 479543308 864896837 745322067 827257693 64071819 396776396 955702630 965888647 96877411 475177439 480052447 974721252 386200269 596894180 704257914 995367243 259346462 998858965 266283643 861087160 700158242 770205366 478579346 992417608 852724481 907619801 512490609 543696385 801223572 992022744 849956369 863137815 51133869 160464968 389838503 755194822 834222000 900064697 360358576 584931814 384015872 742398267 46033494 657301317 157984272 804551442 179881652 787982587 170015974 727940374 642714245 704304303 11227817 601911793 277309936 333038253 749852659 879173632 460748692 626369063 850402933 974200885 514117473 579535685 44628565 144255861 921700307 965193809 881644711 985342323 596775635 763300883 193132297 721470481 565597029 818849424 638118177 645229464 345469331 586820067 990267747 999300310 766742029 840281866 64922689 489645523 508786216 596075152 130716799 486109157 388405860 554235302 868500687 919417504 824512504 890024440 927641450 982077185 474183612 774178117 749489075 848100786 191468792 452808909 247148091 321368247 138877603 279693458 210341225 264316780 731125683 779420036 816561850 944592813 794909216 919755933 848499933 863828053 288193321 804555911 24756568 944670361 130559457 796194755 433534643 639456761 756716268 935999481 908078156 983765127 563841447 993406546 903164655 942356939 337533753 501281023 590762971 868588733 742537905 795831406 360768030 807471183 795756153 802269618 469357877 761620614 265280621 663334594 632681954 717299131 34362828 397526460 122521780 867539987 416454447 584042430 986251344 988013926 119568772 166756431 115613803 750456116 105099003 856104125 47664567 953689249 466868432 795565450 134363626 660445612 740434913 985884442 843309883 923277966 443925651 784355297 330453432 651093160 644650665 907043159 57567965 952528555 303137897 896641203 734367870 927594672 73085265 599576242 403769260 777409211 516088649 894622126 481536704 729495965 677890377 958275858 13454685 999733541 938785324 983221129 246088680 838286170 715958759 893281204 274649517 732408823 475608501 732379721 478615526 992370153 751365496 751989667 990143126 990918333 149848755 391396754 272166292 375351007 252872769 605953619 334445354 475399602 467804465 485349537 823902041 862775334 330442275 912886864 844223058 992815241 845554401 855580938 222439672 576201907 820474192 896891629 141586357 513177795 18102177 396970556 454320488 731599389 216615762 665324296 183815459 884480075 975226617 983342066 614855529 761094753 703346340 751643058 835127377 929630996 345169522 746775553 222566 5808591 105489508 218532114 216152528 601904747 623498510 954009554 734409171 791685956 774231366 936985407 717357958 794095562 967180282 985615480 594080008 898960577 525632308 795069882 607463708 822433493 256575378 530923181 661435503 674381102 332306277 776088617 748171637 801707968 13140316 666492535 355804379 742927193 326464212 509448959 77853313 263097237 586776141 880137908 933440860 974106108 510882317 658892793 94545832 207518435 800915395 840603928 822842406 912870380 807965035 831952765 137245172 467331283 13883503 708924831 848284209 934961725 550020458 659420014 116537467 547590983 591266468 881983794 388948679 436750274 676078407 688352880 75671690 438321170 381130433 664122977 315949834 337494627 584525775 743139125 554149870 668540089 409641589 876751258 151080641 969638407 145626421 613207049 650114901 844893740 207464591 647628816 851597846 966659229 744034446 841628659 95633340 123439691 607729225 734177904 601060885 832416876 630714863 856297667 858491131 975460743 598533992 766107091 980224005 998417523 670895713 860170128 164284905 917321659 340248957 688610764 627526776 902340845 459331814 771425614 990799218 993108581 769799957 837849099 873840746 945460105 462443584 874303811 174292514 933210961 894266177 901959398 528373254 535823137 93830487 863143793 274301470 715349893 515991017 938329479 143875753 556891125 188591411 429629720 270732609 802034958 437406083 657838423 918842646 939104487 867810583 999422137 209086266 398068374 505755090 681593120 262923387 316680881 294008365 538564598 281129530 443023832 505663833 994015273 607464799 819853057 712454586 785069638 567354520 837764992 259939418 816061828 254454521 588023189 33930437 542364917 469887298 632604869 351721952 898082044 499841645 823262724 390151992 949912727 32642920 728874054 153825031 697783392 198630356 418688241 98080388 892451223 900621011 921119308 298039664 960417227 361095787 585666686 149058668 763678493 768566410 836370592 250589591 811104243 361090181 918183175 189333555 301194737 67803960 217721378 636177289 974137737 502836530 830955266 635213275 934617365 69010439 707090652 732266425 871592226 644457406 783426794 927019769 927468589 488795662 787854572 339165009 884250108 767268144 817963058 881352299 995798451 251920035 700765100 479303491 877557210 612780090 736423254 853167703 869334415 431630354 563173258 502268355 755358174 663781583 752325989 242168302 290292501 869171915 969780490 289871259 625909850 443603094 904491358 504256927 782869144 622183544 985698959 29886873 738626952 617030789 655522037 153736458 655048691 561355894 638782581 247200663 789324662 43269168 656094849 207792566 571384449 530709011 575555455 892329430 900082140 947918055 960351080 904531292 930925408 362523357 460689342 464780996 530873472 671801758 864198122 584731504 950991410 664093848 810931223 562417774 667443134 381412367 984859857 421883540 608182488 602883152 971667536 385168377 796424010 315273030 912041478 125539170 542303530 124714084 876681687 633196470 777387947 360876175 452843270 547328480 876051893 75813361 85873715 508977287 974522597 900812699 997499646 947377063 975421341 599104391 688958203 775053482 802355186 239770273 264409972 439628044 529204460 765272786 978193307 35704108 834801233 182006301 726396413 72317827 242430587 871550836 927142259 55136622 710701932 151614707 337161556 43333393 850034186 554855554 799003131 501309903 542394578 701638668 839970122 166479578 331963866 881218974 890152723 768683578 978563648 11343120 98618859 88925956 471350038 489657452 559333436 14970992 803623729 934485355 937730162 227829578 953246524 942329430 991981382 466021673 845516635 117790216 981433469 643744777 740266399 560043982 624954827 762479503 798633956 888964251 956027852 28574585 668694620 849449411 985651958 402530923 919128625 763290590 921380951 945215274 998141291 791419027 831456383 276734275 963547711 607484802 873227727 213658520 247802856 855696551 986073244 593653976 609919434 64092932 261023539 809194298 911872525 672055331 909071920 773218011 889313307 364910265 397951040 158325290 917855518 96250467 560033619 376925129 740119700 329868393 851164888 499408578 846235230 105984507 824659759 589562214 691706499 285582763 500934748 385474208 742976734 233870638 306880371 860549729 968031731 78998992 396841385 40781227 884960703 523615316 541069571 974849635 975517961 955588593 968560982 546196920 709899407 423289850 919249276 504439983 915631707 913059248 941674244 183447762 238233212 36821207 299652411 199324294 868599953 596134956 664593698 718520512 791192510 47992006 585936766 260764185 480189166 924190461 961402213 710772128 968452710 869735093 885970237 912734362 914662647 991405122 999389102 785579766 881397390 995565276 998010104 865701609 914286398 769549254 928594265 275626504 572394134 559387232 957174921 701192448 924788622 828658715 886123075 30185985 516895165 697663263 897333651 598048179 626588803 349557328 740844572 608273401 976535798 278607995 509259498 444787775 962997896 958584176 992602224 327087917 690504559 247517867 516897424 732284358 952757783 332838858 762829195 252440555 658260055 529249558 962039124 800029577 978313121 130121242 216499830 41110805 301778394 668588176 713130712 272842475 359782414 350241257 569454544 90524366 979753882 496772699 777716222 175337259 946178297 239008010 938874218 585044668 926665295 644122181 678531958 132406885 135473480 196011998 720107807 281293928 491699126 428970034 646551284 920242151 932694968 661362067 988310989 45297992 653474352 571228367 715571778 144324758 897320830 401095335 714595439 183396029 500145483 14716974 845281477 325757712 432554968 109130572 610894376 884397950 901518037 555982866 815410373 334981853 430786920 354236167 901275466 922617654 994297208 316103027 961012829 38963106 60888196 86462612 382192113 274292549 698414394 834476626 920274025 157056502 687418242 166562574 906580345 35263390 566065986 302960204 680063571 564517119 865052605 384903499 711799247 96110154 730433808 890488896 907606749 200621271 815141970 683392860 733980140 118684228 268781575 143235660 595992237 313438429 785389267 795589214 923021920 337880672 430281549 393931354 640673801 639575413 774213475 933388747 992589035 316137963 800851306 747747713 808835489 414639273 587314932 156506597 924220574 867125800 881426869 206330378 718732032 306735954 686451275 353972764 823697729 348372985 435804867 837265926 867171893 641418372 763146211 44265756 470113037 599452769 864221533 165985568 630239747 814934352 826932638 369830703 701697378 672493359 723628778 706618678 967829458 401953678 720385784 969400035 994375582 936710701 941323619 545697626 991365333 85942796 667655690 936848937 997435925 228004003 682797986 627149464 985348259 84715412 842715955 133335865 333157294 790952372 962250424 550979266 999846051 271884285 323173165 728087802 963508410 468703635 759713269 316106384 470866507 118863266 910777901 776383064 943816122 178402669 971948293 320199079 361225900 224542725 941308848 105800704 637107860 312081631 371784579 119135573 259841178 487148403 652167778 896740332 923996684 997247872 999303439 357503019 902433912 690591219 691595792 725937580 918356465 131354574 989727660 352602021 634398328 211013217 708641265 731049422 821009846 917356238 969172502 719181243 900936082 769895811 822846315 714685309 961702693 294392886 821271071 915423335 980135834 551896332 592386639 734761798 795965172 710862900 950235393 525781954 540934911 963050404 970912181 75012068 842751125 903014756 907914917 394035830 723900129 533460143 782058252 900308667 906319238 434316072 512480403 243787747 655241152 325087643 489216789 710291509 916914699 721807784 976393833 225013122 921578789 394359701 766387734 530249332 543203168 591798771 903518724 900470016 902147700 489987011 904652397 884081738 988581737 410230233 789056444 740248129 944490556 361171363 458138957 835667704 899256623 426848557 647917960 882313227 999206043 42462349 548304015 334214786 380022286 570648444 897445113 38498738 147374652 863636913 948468796 407959229 682015090 820902770 865848948 216433699 317411992 411334559 941123724 156979627 776141489 191316480 288755307 902704101 985406635 744102290 757771213 804175144 995492670 132547790 247775647 712433106 885971032 78064600 512539429 534632888 826478426 519568873 988653101 325051296 834754232 788406857 900663207 438955883 658546730 309722270 867103441 817454254 923257544 983299388 993462484 213415650 316191943 390485939 916181825 44649634 204025433 983725007 986605794 8921368 244403339 244347082 918553449 269354405 533739717 272697693 807837407 888534481 963911041 569423261 912188157 237724548 763108771 748808589 902505912 662791241 894378603 925822856 985676260 781787759 929415526 959423195 982798752 263550008 296101388 5493910 786095280 633697239 642202215 788518572 934325429 289258298 304148875 915241328 999271889 641846108 928873748 992687191 993904930 960281316 984740580 116484872 373698060 189800988 287556588 431728993 727503124 985841491 993478555 696903833 856553390 727335375 832664529 477582631 732879268 373033255 862238631 812065862 830528997 411878085 786199563 736763708 795736054 289954276 628448242 709672698 945043668 680531515 889366062 347027537 949357453 562104440 620121474 88144731 280333806 596092051 970613713 309002475 512208128 378234550 658906156 351692200 777733402 597465194 834545424 849440165 971968343 229928405 721445674 576654510 923444322 942512781 971468599 589960977 938269867 413034435 742089129 935133697 967831650 280966315 801072616 484140595 493212957 621878736 725783206 979245094 982790182 759123660 967533570 519397167 669540500 27331293 703346444 338397825 624481670 447509973 583977882 212783978 434612917 37630528 913062374 931130878 968612602 160890985 517292249 170966542 343689700 92494252 356402580 178267244 555776884 965455943 978329827 375627510 507802248 878235480 897204133 53567956 886760875 204973013 370335867 319548873 446254792 74242334 491910812 193127055 228831823 87705102 233159716 176420769 967696020 483362286 997509401 556555956 849376234 769155109 806388787 470542892 501777849 914479845 955268015 601820290 833178774 325411840 880703689 115097660 603653152 659200055 913781924 644695056 757358141 677604714 849744204 603820621 838918203 310345257 816403148 207284175 631790426 605167833 934868830 609049525 988465178 47772604 659274228 215909536 837677630 955718261 974898177 408942588 849902425 582752142 965066765 610573368 683546805 635382978 676912290 177201891 597027894 288784725 542974491 174667383 556457040 346750950 948332902 138181194 529210375 838248450 929053912 132582029 151712057 415586912 801248947 752019055 893506356 721204572 735265815 745676968 942449311 939326410 953561793 906898598 939409837 539074539 892111806 769812571 915772386 760508083 986878904 228661370 333293872 266532416 567018828 282988107 624095121 726360335 791764918 913742292 954684803 321394512 615224585 223608905 751403515 154384470 468800258 877513091 941698489 945435773 999036242 19727619 699404823 223217734 991476996 40100458 256886672 834014288 971757365 503803190 774666082 843392263 870073748 554050123 740923241 942176999 945764123 572100631 947646464 982678487 996155531 766255978 988593702 308731634 498569994 883447846 997311740 774948741 801639435 120318358 755769234 369980573 542880635 605317044 993970503 948996916 971781580 308174974 838488124 851846716 890272101 894377116 969678194 437797101 793818224 35964039 243113334 971807975 984139347 629658824 867781419 418655453 537224269 301816769 698398894 634840290 988907361 997861392 998947742 623561706 713527893 574687035 958966401 683044166 838639486 536183289 610680955 859643014 943253354 837725598 908693326 858878784 989080079 89871390 568580827 989619248 999011779 853314038 909594592 569125000 816368433 724542904 897816446 983353851 991558468 511784112 666895675 732953936 972428475 51056460 929789823 57978083 467996048 849842707 970112315 670463608 693776578 203225424 241497997 87661106 109415066 664098670 940513026 41848094 117654792 398337278 646071349 262626085 688870841 304907240 391358153 81490627 415319557 211702188 593804790 83863434 353647634 652966038 739338999 24365535 341269195 666532138 843068879 167649534 765653214 403523628 532623125 664233128 818440207 99351967 746814400 597088627 653175045 27765687 50902616 928019915 968673805 564933070 861503978 303680573 756795107 234332861 239572569 484523680 705915244 588995576 879214519 88621827 870799303 171609515 453619943 614271016 755445378 505840513 759504079 400164832 461131368 749304669 826043837 169712379 411105515 507439636 633848599 564879549 809876314 661612570 860687249 250899042 363516206 667330451 718006178 190151914 905671856 257860131 902514691 219106659 727561468 990085928 996838568 372580638 859770037 102695088 987711986 952778937 973223870 138125253 408200065 311948144 653158658 246747899 867143251 856043003 968470593 469402103 875621842 14376145 714851417 571001637 723588900 731535855 836591483 805239452 943755355 468335334 888724979 901620305 931769215 509467585 691198288 681162784 830862671 288781982 916161151 435600589 580656184 655434124 903542021 295842659 677648890 875830449 909282778 113241445 567272233 178469478 643138360 779872752 909107751 715533888 749879979 769796125 882033382 851242926 941457892 476308881 644507990 29914300 334014001 558142523 830014607 561304359 738017697 302458911 601866229 465642751 467228166 441073981 497236613 856124459 913444485 41366248 218688000 980583666 994476336 997921083 999211567 78570320 644210133 994695203 998374710 635029610 912542983 856218083 938028137 560421022 582827856 908872611 994011486 539294654 874185415 91926001 884838165 435873469 559278527 457047749 701729551 53219637 105594547 373413242 882047144 679024568 918200251 35118836 924385220 541548899 981506994 742566302 974444494 314770563 568731316 832484535 841912681 495091824 806072723 733287121 864116171 380170805 438723336 60368500 506104941 773035890 856843206 864563644 874319631 633867396 717709841 941076359 990246674 925733597 966914566 908530369 925589936 114712200 549489506 189495590 293194994 523858167 600984213 146664961 815028308 630351924 712496285 433310970 465730501 431435030 839550549 421655446 802197231 833228267 931171706 891916682 901824450 298909009 730900173 919692753 978964973 919781290 951509233 151593060 739360982 649571719 966697380 411776250 772516324 385037693 898218199 730595433 797656858 959881447 981379156 64076958 953131060 996028275 998879566 742320257 824197275 746422110 956488184 37260108 270806492 886186152 904811683 222270680 456287843 10951950 632151770 448962323 887012968 596746511 799794425 960512226 966005970 865930645 890671743 999141796 999679614 373485396 960824599 515474416 838901748 819046563 857494851 575088258 765590027 809985272 824588465 345320537 468008170 42036528 275143130 641537005 800477264 712472867 747324632 501197192 856420541 565974934 923876270 94205257 440539472 513294748 988797108 650998985 768291100 83928360 900024347 346742468 551439740 363790992 564318310 273216229 777081766 414903813 496124724 174760394 246022085 139751883 868056864 235498547 267283057 374077662 987795051 464890209 886342376 896374698 925475583 760841477 993741219 517524163 807227356 551678995 871548162 822792256 895497736 500245202 809410947 918442128 943563875 615785942 617431291 840810187 997021595 248927291 883265592 851894953 918801599 867655166 876302904 671299363 943991314 235319695 984127706 977005335 991175275 593570951 724857014 613947653 886515683 375244731 814437792 107463752 923092274 720403276 858836443 213954581 560356118 580677613 895026753 655391996 950605647 19695900 610643221 575454123 637588105 27358075 523810693 600955269 708079617 670297185 781352757 995596978 999147980 546196752 648291541 214608351 719258801 921592014 991100978 994747073 999393274 173193986 761640690 324063691 848855883 94213973 341543132 362041825 758614968 182593992 388143741 227514735 476253181 361316076 957203895 146519313 167954562 680129467 731742751 605386740 936977378 663933591 711452116 382759069 761638046 68672858 816093435 73008460 240240596 847342854 987357834 571771720 872769997 784629459 928877621 500541320 723507376 287510722 301011325 219274221 923242041 477955392 519035964 788903380 821418721 590724201 851625302 457894017 950896909 719690961 919188473 540884990 825672717 516986901 994054713 103412276 762362124 666541877 798958583 372666467 622548464 277662920 697317250 56670374 997474625 435603733 785629839 702796303 861935314 261918119 822020741 6989847 652905878 182366992 894248354 274837807 781162578 475180673 490725465 518075568 646393895 949833981 977813033 226809743 299066437 52419219 639526673 883570408 987590566 453934431 554110979 17858051 660957922 608869162 931350179 865722909 968783508 503305739 576596140 669028422 741595265 192650083 790454254 676066630 845716438 798789449 962179826 673541571 898625931 217712509 703376065 364812888 596358937 996980367 999772455 838319131 967617080 616477303 987557168 288511999 792118106 846865905 920986633 991364764 999350086 595404083 845903518 455792123 714569487 212620829 618278335 261302527 728357122 455075983 985306664 306568012 431406077 953205005 961501346 508664249 962848391 582246753 684433776 461074670 480351403 407554147 823781085 723157163 952028416 144531799 661533888 937037889 984102402 275066301 646463234 306999006 941299852 609154160 876090724 132084723 858357171 428921591 938295785 263552519 368539303 403646794 684109673 398399130 592437733 614034784 722251855 582809557 961575406 234893273 959062663 979131963 980783386 595150516 984274144 46463967 383921516 427582050 786297986 878940228 911219156 999994923 999996302 509602811 886299681 763036075 931018369 344098622 482211739 275822257 483437598 683470113 846243001 982349970 997162606 910831406 984570387 854505382 922030370 223920801 229696079 865327732 953144217 341706315 498518576 15966875 576436557 60555276 814848112 781654511 859852905 409772299 623623439 780541171 976185600 398663284 891790142 916699235 996479375 665895923 842993431 558598207 818997690 270035991 513340414 539023088 925677477 744033765 889155320 30695163 691496423 865088117 981888147 625707597 927298325 173147985 421101280 287887703 960617772 505812807 912760731 925443304 987226139 408011176 596515069 667655922 954536516 507454187 901297432 471488098 912730964 580005385 609771554 66752068 754655729 866248249 964204912 625198757 863727222 743107063 797365501 42655527 773572087 970575721 974326130 936408730 957992165 332136280 392725433 244789029 850323986 821125082 915041793 491345209 903945794 39814993 775819813 629042886 654137721 743789018 926426689 748952723 931422916 513509407 880231510 496131400 505204886 138854068 888027970 963081484 966984607 196718641 377905402 809811747 998442459 486334703 655228823 403929738 662809370 145194503 882599609 521476922 878691507 806352840 851523335 30531394 50591190 435906637 438601294 823239932 857550598 845880704 938420294 693353607 868389901 107878428 610388322 807600945 872156130 300004225 355911144 631065354 985976584 69052820 520109939 681315982 741626902 381554382 560084039 885320075 937944822 66614089 917260337 482155872 755969940 380343615 960341265 502389391 967383801 760493666 972357764 831260514 913601315 271277766 355067477 971173365 981063499 905842662 943610913 496295076 501637341 58477610 987589520 998923255 999649732 652844029 679870841 664027876 694753160 852144532 937220042 928407276 942472948 311111686 759360936 918003514 966991573 709541685 958613594 89431420 440789177 75695928 615122152 344102115 882429752 261083942 449590291 709862109 738283246 516112782 665619850 774096206 801436077 227510940 986240855 150932332 710934168 442496442 925567433 530349099 932990793 751190428 820098250 839827180 976993260 985770218 991337501 259493836 386289136 85594703 526082139 129233463 869791558 743752621 998964063 613897737 868725398 900535211 914408496 145834865 499914858 588260276 952961007 231572444 706267627 539620603 601926807 162518100 985530968 369030696 531174830 452389421 865993264 385304020 564601765 596111053 769741058 935972978 937222222 802924946 853107429 112475916 309971587 63155304 353152741 406253567 510095108 48037374 826398796 215387911 281679964 461025904 467810164 591087674 686612255 372443143 851792739 332925751 753992696 441661225 484906315 599494447 840103896 447521854 886695711 197466874 950381700 119138314 467159851 34999398 412919078 948067839 987917619 695653328 853912555 405668219 727623775 188901889 955106153 173973411 712668767 784185694 926889702 150174768 770026792 564559783 840280433 456144507 704067099 357131103 865875545 666126631 829466769 966813375 998922675 55440416 510540754 480312615 624852990 746337490 786697484 584093346 785263276 368997666 622900203 702720539 909680748 435964271 666253900 940677203 954816024 486271289 578539581 113724361 258426183 436011904 709140954 586643031 636699347 16959370 498583944 980609956 993080446 363729898 882215234 66180783 857950754 162777091 242667083 93145050 737075723 764127111 999913386 91312704 957705600 951960345 962123894 565505514 685756313 531716993 701036225 784574057 938751801 180263206 733786651 972345032 984720281 93988064 492507287 98398068 584087311 355884717 487097206 990784850 993963248 112557191 278616422 986838090 991635733 928470480 943622577 517302254 800966914 264448844 549879642 934139169 937561761 961552056 975128612 397625629 440416769 390580128 673290346 393664917 851199878 768158263 935749942 441745251 790329333 137417717 157313844 412448719 815665147 577170825 838778558 940696970 978681634 361252886 363674717 48219718 336879416 807603682 907016094 19017740 695101315 169076221 797923866 971125000 971437094 334398795 597958624 143664656 248071206 44999991 636583414 874910800 954776809 461586445 611199158 704607438 935940492 29382798 515741134 587887449 826981525 102431953 805517182 472181138 710162153 107511182 382175684 529964514 544194117 680224666 716481638 415082958 863171128 688426938 817514372 729265738 803254949 479854622 663371377 819885110 866409468 937894302 966908511 893491311 933164250 727886901 803555935 384671344 954962310 838563271 923398455 499127755 580261538 306980756 318920795 532707923 753751240 987893229 997004363 535373239 630884657 263029323 751065749 784659606 939782945 968073149 968839799 24524707 440557020 23030845 381947670 612724949 995700818 810841039 988221340 947097365 947271723 828519398 909212017 74576497 130204109 595651349 849160801 651184104 763171011 392758198 509604804 3763742 50510882 165110315 448121655 9988980 740206256 466147000 604450571 234670435 822330298 116134246 409138916 883891828 966873642 377965235 811032254 518150812 644140532 557870711 679712565 670137522 966427822 33609840 961573810 503636632 975723949 802509266 802588662 39224533 112352646 706807814 950236100 804221954 936183618 711690385 789546206 976442229 980700582 588168571 662636325 937070844 995672348 63147915 873774385 379124072 618316960 617862819 710451346 706584813 788884457 382794425 887767035 566042011 785937760 514349337 665896106 53643648 407763484 439085433 739609419 131031782 423933938 466131747 957406765 905241913 944218039 258169206 767772940 910753554 954624492 85407554 788603280 493377343 589810664 762661696 905815415 72445568 84222978 802588050 886413927 513121869 798630769 744714845 965484181 138086905 317345835 763877738 996077264 127431549 401741719 408146751 906621187 95038867 450091448 73990902 373609341 270982286 488893253 302800067 497404725 189580353 559030686 212022304 668691706 152499206 818833838 196508152 750737976 527562167 911692307 887403368 887837806 257982145 596875263 745428043 877628817 349725831 923618988 313009568 797024945 531923666 854412112 291482090 811834315 510102727 834907707 873442235 910501512 464545941 909362347 862418406 995583600 605248164 999950710 719930862 864521707 352800953 708663982 50378236 237502688 642533131 988358602 617784042 619059005 381291067 829618156 371387304 670017551 340198075 668285515 700765589 852655079 62335193 335267409 547346486 999662270 527501252 967010715 132979939 918647065 411168231 737906799 769609305 982401267 973251429 983813461 167013417 300128824 359341142 644019205 748058392 751113547 841363467 862500681 443860008 679956987 308306166 784289187 249060205 394420415 320126279 633999416 299314528 354127877 798781979 909682446 853129001 967105467 966888520 998441054 648672626 987628751 202424899 585558113 803303022 832152596 648942880 840048904 201622764 351779934 642962730 906031366 1594557 915985012 869182839 940992902 142822454 546985183 533785378 709550396 458370200 760329378 805767714 896888667 60699636 157972417 299094595 917541699 839873210 975760222 91201522 732551506 998425287 999489668 915765321 998443811 937605060 975619451 609248707 985070612 631771498 672257563 889158719 979623348 811980399 902532435 540242214 868317778 971689679 999153141 360944840 882707097 282368827 329022643 70728775 464655447 902671867 923968818 71447051 567507421 526730059 564649783 486644874 765294288 398174299 570866432 530211102 982441235 863416424 923389092 764464031 964572611 102151816 890880466 278148247 964224976 868808482 892800714 962715667 977481288 952297920 996663629 794149152 919041439 756980539 895575912 116249538 122780527 439604726 895239426 620947597 666533555 770619429 807126941 155462948 413613864 354532062 459006960 171019095 473772238 9873141 147125704 370943798 760967884 529753560 720814028 524331540 600303947 257331539 466540311 91297728 642993340 855897498 897105665 383164768 427615107 200092505 221004833 930284308 987384899 711751592 735231852 537990295 726214211 241594312 365777609 689990767 925430174 563395959 633352160 138175224 946497381 24948615 705441678 726960531 737260213 84552305 320599704 525845322 854767850 706929357 745805790 340917677 720110373 940718478 963422230 420685041 502321564 371708401 853640197 790087331 792960227 1878828 590268773 902273513 932524387 975557302 991086421 244719927 401531295 687064946 994982997 676692900 759322161 621724881 791312856 378351120 613621881 248052867 721687609 258401779 687711407 731570965 779146308 385918009 550391477 65850783 980965101 278062908 383976580 506062172 876871316 216660112 975941790 421552749 518606606 34955120 86945565 659390923 720635635 546840006 991379888 428043491 619920711 744554804 811951203 98878389 871259337 792018095 793404782 538856208 600171139 926513401 935992889 923801804 956584114 922130407 940265475 714161702 748710652 709062751 924703220 958957018 999229562 955808897 997564832 757795915 762644475 951278781 990688946 48436410 193141215 393312587 493861186 327882467 973041117 592555104 746490077 506566299 798789381 342607481 740040635 266887578 956591664 455125296 596848323 374458925 546235214 867628343 917615730 88271594 809140705 662714608 821850276 397886476 581815430 670600041 763242990 307363882 967440580 120390411 816025314 276588598 693138650 189086373 251350920 84953741 949140700 371318516 722404138 877854616 938103260 487390676 582549185 376778281 487176419 861178521 979619943 541264846 979340914 450602522 925057222 451280282 600847565 452279219 697376184 413904721 452527634 672697339 821353590 761278853 850697811 212210278 329116458 424160110 628911862 198478394 614665663 25930499 916316453 911485245 982705802 678279026 825334089 228337746 261334520 520477550 956368524 414165415 836654770 266603409 385648287 531320415 966040677 769666160 854339463 540530947 947035147 614321820 725651431 462408022 704874971 641298258 983642021 776590883 961259184 211675214 893771102 950348159 953865744 129595016 687486014 508846540 900886210 947305438 982642818 912293198 932371901 846159991 962261736 104071048 174993655 487030120 814645188 301210817 447130531 351143645 599994346 322732474 975699699 458907565 565473474 906767752 993051212 662977824 728793281 215284434 347600430 537687147 711589636 816875390 909094506 486357663 608983039 649781759 861975184 731007264 745553234 91281999 830259308 877941941 952451109 238382651 427717318 798772468 961766870 738087262 930338915 853300689 931970217 409179782 583442812 500347182 782876886 199429381 853975023 296009891 705252610 889602453 966160032 996578074 998209257 788717763 863817638 550354935 651261834 117552679 870786581 370608032 586445932 268028323 992703091 891997347 897112495 188354969 587476842 299381696 680004723 384419567 561837208 871924761 934776243 49800674 130677363 403866415 921306360 423021648 490190768 776845333 995283121 638229052 921465459 865266795 905300270 302520759 410211432 101436876 701453883 41953557 315179633 226298815 416928245 779632143 822511051 400271397 996414123 112171698 975722980 224932810 748643685 759914303 933492933 27884979 639461311 29152611 987185651 582148845 718333840 285266894 981372387 231001867 307629216 280023 511569011 432717680 928669631 333285698 335056002 158922279 706806370 130335068 886006691 487678767 896834966 112477137 903307296 550916098 570919629 348904660 665507916 248509073 632068982 615592692 670676135 656675541 710886808 385837095 565666463 53065745 496625166 868586583 936450324 983422606 990770354 798066548 921807811 829863973 918862532 685260065 692689870 429855849 709449817 413680801 922602016 904787542 976124724 747887237 837319038 511310534 791253752 449518027 621583671 247495084 878219559 464461233 588318952 485773120 496475289 900999858 951622331 159903066 511201876 291647781 501707443 710687531 839877274 842174445 883206119 620494062 856002870 578263185 689230778 396036259 645763459 786874860 996687189 43411318 250197854 682830654 768757772 115829682 516876700 586764517 752398943 588876901 922241467 827179084 890485630 150091765 637628994 159064751 790725084 108369801 485044743 970146390 972351813 757096328 993247127 541795957 858273568 731846380 952397910 966722582 969990465 446892836 511352730 932841545 963881164 966201200 990615213 341597587 954713721 151172073 191125929 235060993 546893273 344277776 642806644 996642106 997899457 273902713 346356904 3377460 268926559 358157402 671371139 855616849 955740418 86878961 743319990 360446053 977334427 168660377 424019889 383607281 803584806 106958186 770242511 720344138 936192028 811630695 843176845 847249428 922876295 162392317 904109917 971069112 975776613 771229323 982780620 319477936 410242425 510200257 948033660 815676698 936153522 919029158 991355597 578455843 688715216 504645602 868720977 650463056 945542240 343491993 686899892 106131078 941352906 337861023 375863813 387317277 987051258 704743047 793808014 87671975 248358850 259386737 430351942 543318430 880434103 405370876 563656272 352620382 371414747 223920207 960194169 570866564 963066069 859883746 954039164 937401711 962422820 112247645 254333089 901807496 936163577 216565221 763185889 140891777 404478379 569347219 829645255 633900151 905350998 694144480 966280915 557409304 870422548 201168743 854714892 772306581 811015509 300331101 545723261 229023416 720057210 773137272 812868242 192334771 248279334 662881059 929657787 635345604 933289221 513510939 584038438 361619889 960650737 899888928 976215886 974551728 977415104 781355293 800501452 408475787 446959372 921835151 973763892 987514334 992464052 868011038 876373810 387194304 585082110 673223438 908284439 192282819 637855636 129945865 620325969 671667664 804489489 769974232 784332763 51347752 545703720 782416633 846731101 337947918 546185922 647380906 820281393 754873793 820169043 71948242 100180512 994362792 998039819 511925377 802970713 511740838 685542249 23031292 29375612 327697720 688786048 376357463 891694902 42898608 766486261 564705497 700645958 722991002 967138451 245847609 923322001 862236351 943732009 748779375 961551770 388643894 743753434 215774665 603723036 525360041 674072368 632654255 794875649 849313463 853456663 440896516 971945920 530655645 680700121 630953891 650198666 776403749 978012798 64684921 514215832 257545808 877214696 567614002 684169317 272582742 299055011 662626241 849752714 594057132 866706989 212355486 919530452 520660812 993684451 807458125 856794924 20746760 339469557 833925403 949594588 315166543 614078510 635073157 845011041 319371204 764237463 728294835 809564483 84529297 594703412 463437121 617786276 607723851 972335147 753380600 806095035 630969912 737129622 862385421 877553837 812747454 825081793 91850347 784093804 702766334 790299645 684299932 761341146 234086734 509446151 63874648 598822127 16284176 92447537 233563860 797409235 233763050 460479463 30338583 685934974 208838398 526206489 158127898 272462248 473561747 704831425 489404639 711733323 231781256 518608299 43663719 489744691 120088807 462304607 55602440 867395110 354870316 568480933 507944381 646883124 847196793 985670171 178880990 902390059 861845225 979718128 142955475 816225294 398980430 863953271 117242443 840188959 649659250 649929358 798554910 970339010 447935192 788280766 138226573 600381442 636740948 748474925 56389178 698442538 685190639 822455938 606392322 844351894 766373204 869827963 785731102 913867463 360645111 686163529 925698732 958490724 52142541 811730152 708309780 792102106 412981769 895244247 634713541 967010076 778926995 791914138 580524741 592266996 702559695 752293813 575557276 684646438 398865763 929197097 55768480 580545448 381234880 536815891 994789134 996871342 188384764 638303576 200439243 478302539 258138484 776589215 684814116 735914802 6109413 294378553 231494420 905486339 104844136 673711346 128797596 859414689 785419801 981886506 463187832 984725926 140256981 876574745 859834782 964114701 488098521 513258437 40014199 403560771 976290435 994188479 498281662 984432709 558034871 627162898 118914696 734913585 81984249 802105778 371842322 865852951 125314657 829302577 807914497 827293525 313054704 652693741 847664275 991102247 472078941 803502383 734106868 755757690 850804838 861544074 654346654 819008864 484063343 735649081 36251820 127876210 298654291 399100241 384060604 441236389 526403119 642975646 902409754 911876124 534515898 544960160 967992451 987403500 710634217 935313585 279429894 680908647 790362157 835239460 4131295 696214843 217271364 583612574 461114061 928493869 411734866 595947693 633379833 685585709 151376913 621673540 264377999 880438306 990466036 995195370 930287032 943970551 422138551 980200872 511439926 573560609 370616271 484978703 952914895 978637101 60457610 692455327 138059058 487626774 3295028 324707865 236108452 764846864 657008056 991908741 352408532 631047913 150093911 757920042 178382427 454408694 103304365 761410858 967986202 980699763 658075862 694378024 589431347 629916969 778892856 783736854 309030318 772032553 590280743 955718431 864809738 895447845 113280248 135168516 5820041 114867278 442287428 913911604 475610673 660202444 591017933 666277315 191686732 547896223 820400400 877916516 811304267 992844075 334675270 370808552 69701444 806878988 929826997 996617697 1456786 980089198 495736078 592405649 981297999 998075372 27484811 122849138 278002711 362163835 743827794 839262508 313467926 887931561 975467757 977944722 24312317 961534246 734728266 997399418 613255052 702779272 228262836 904874861 562509242 633116766 518223635 636728547 332555283 824745436 448302523 915106328 723018562 941453276 185574874 273970095 610649701 682515620 640097227 761609896 856551654 965107583 920237828 997738485 797337428 998960180 748445564 860579404 364483467 728150265 658820348 845362557 170066510 749105927 994792985 995779891 549092238 679680293 983347057 988735911 456050486 937396983 381444078 898259996 521851499 904379658 543032445 942576598 595440953 841122210 804488745 993451930 213785226 431206682 160806576 658932561 362037407 734295290 483136794 876860933 631624571 681180582 341349664 419090747 876896871 880203259 989209058 997640892 209361342 966867951 899234963 994808413 409613824 856103314 431922105 908984340 673365148 968319734 744397332 924888055 468232474 600446706 318641387 680481742 605861934 675867454 984916036 985792419 913044904 951995209 47064413 690974370 758952445 782071835 653630327 860618354 137801157 592433012 160311961 500404179 886959144 905791220 408100861 688078353 538030405 905808774 342193356 343136497 750635560 801490018 725666880 858389452 10339677 224024279 754939960 998668174 47778271 146400828 275780919 954583876 671966293 908535230 46216734 555622099 43561796 929000384 477653338 603969432 852856171 900001959 586154860 820636441 439397554 822305695 891317858 924789936 789055045 980431933 492681801 676183471 538858023 964805371 316773876 752677666 495430271 498793257 256978697 668675095 399199236 852029601 885797298 978193344 971806160 988580336 201825944 435780384 132043803 579470488 733264921 905199260 601498278 751943318 970330844 972499094 777456040 933072025 582857810 882986575 149949898 630555932 960335541 995426275 620975740 659533696 329889595 671251802 110222902 147407015 988770261 993497018 557793500 813033925 788791175 913145056 620958400 937370141 956116826 974059920 594354597 852267184 740276816 890027640 598038117 763837443 94386787 864872356 96786156 570508166 525770534 734053822 289917248 816848822 952988535 964066995 442017581 508268041 951571256 999086770 372541496 910123426 952492917 963779417 197103799 462476478 539221506 587164964 72026218 561576634 972969620 973469637 500220859 658786489 680771634 951575102 409624372 917911433 88596947 112450296 982107191 999930547 356661503 521785178 20632635 699089727 855199437 984449948 688529401 827759232 660753992 934343826 412422463 708542114 922940718 960834914 53842126 919426455 69335222 121231112 614223733 682054989 769227122 846665987 375559621 648777928 198647739 398439698 602205571 771902299 484266724 972829183 357805242 543894372 909684391 998701239 38155773 510178248 478447611 813637814 627235873 803469434 881180624 891626871 553210682 937449339 878252482 961575898 279458500 301503333 82322341 686491552 279664453 540582638 219013857 946910205 741443514 908484038 198229735 369828010 482764140 893807960 784349488 923214090 360099940 647446623 670270411 688551447 800947558 808512053 395473778 571636940 368590239 988344121 476788743 479347510 532689648 876448992 361343200 478174421 569234804 856674571 72763366 859627446 8823136 172249506 920206460 984871872 253367725 296294272 198113137 481350442 389890035 959054223 777370671 835371057 801982823 892504395 13000216 632740707 810217341 963671689 688202503 774560235 441576839 786165725 17140680 240038409 514621759 533621698 981219468 998195592 153266099 188420394 301577175 550939627 529086047 595359490 567194815 920587898 936820876 960515417 10052304 447209291 10064324 757935854 973616824 991800067 66405091 287305175 685960921 700383938 685002859 963166990 911625255 922194628 946376258 982818134 72057667 138934187 981603585 994755837 410429688 453934466 324085879 858235570 462602381 731258223 276198169 990866093 57799753 550314583 573691564 773084825 741204573 821668583 439543489 480744519 778742556 910768015 841092199 960655659 565757862 675260284 854542210 931489537 240837960 906218401 215106145 218904003 21603866 305108301 677290597 768473821 146657594 607285453 765374618 885819602 842870242 843834047 145854167 896523857 273419081 769590933 156759278 801446560 69633746 400644831 331362574 607328658 313847083 539017704 907294696 963296130 917862359 986105588 518050043 751110585 247041062 491000017 782540998 797274040 555215087 878591821 320405723 796339246 325183634 413498664 99304152 934634192 93519353 895256072 636157095 941351487 596360350 752252269 36285625 189037626 194779184 923399429 723855875 779187680 138760032 784499005 666092791 697359397 536280027 721219579 133493824 761294821 203758687 731243728 720352887 952062816 393375489 518604081 272852307 889761705 609342009 621246106 884793965 987659874 646464145 957762356 69521558 178849042 240314792 729593079 694598142 742745121 23674959 36874957 492103611 907748012 817268164 866667311 488014880 542033356 814854761 946840251 884429160 956912905 622686161 837382369 531663139 578581795 66497840 125015747 374266131 446613428 497382777 653597764 549867060 620607722 738555001 776795042 924017683 999331038 324174375 969434212 201430346 376175710 665775846 675232137 889448559 923858152 756210237 892719851 496037640 617664670 821489258 913685205 836271075 966508317 25402591 475864289 384812211 901781198 804022620 825892490 755422790 798579696 643073698 707287663 815422730 938790293 787874436 828880112 956482080 997175891 514078875 769419868 627988819 917980801 361609356 844287924 891282153 981773312 305089864 504622788 662529526 863162810 635341830 655490133 210098911 995950823 504060513 699417030 958787974 974959159 33717063 87418457 160185756 595937298 914357165 951136244 493664975 794162156 446327624 753578923 14182692 922056111 40083773 852360956 742475849 862029855 146812216 758960602 680813070 685718035 726657890 983931568 978517840 987457578 708291977 742895788 622287215 905133260 101250687 590765829 282784729 757279617 6954849 201285686 221879165 557040670 628020406 835837002 798860907 848972326 78457602 212215829 466348682 945977080 948959957 965585178 413079984 554968635 172708035 722943986 900946988 933174842 252587526 271983619 786097086 871482221 6510591 822498627 819257205 944875483 647388386 988824395 466576104 528303254 783306077 837969283 823172443 946250492 393935421 419862897 558968289 685518840 531824803 841280709 568332433 995563947 115416862 989602311 752383152 951341973 255342365 561869378 255515796 862303055 333563233 808961460 571313457 727057746 211941969 696565237 899756153 931033018 811485206 916438941 944706785 980139811 487171336 878850481 857388732 931353112 506312852 951653044 767742787 837336024 238393050 966771318 265154957 324421783 19316547 614645934 537090446 992780944 982278581 984267688 382094506 528356804 699555746 856468399 514786537 628597078 667681715 788334295 241675772 907639038 69499781 767968025 175442396 707970881 195480807 607016386 611354064 875101171 632175829 779373100 741409363 995584881 363693374 738861953 606825499 884616992 39180999 402678689 924389640 994444848 806006514 827909049 36568340 731714583 401122725 671129993 837134212 962164284 144838751 887770273 151301250 450044799 247521796 556076457 81002943 495004534 473048059 536704205 449601113 771128620 878145124 906537004 709524675 748379748 901700446 987355908 855020588 969091017 211218812 847626730 710117130 880431215 763520378 957264443 151844746 686531651 763442191 781581152 978120116 998347290 73281903 869274738 561749677 720234806 304743565 421085619 437725414 575133144 770716091 976266394 546693262 719990713 249392416 835130181 189586472 784311047 675282155 933633436 27266550 603228767 971165326 996786907 201113230 683027883 815458360 903169337 600043193 720344148 383576412 451071959 251728294 902048979 800387688 904751429 81605661 168801710 281926718 757081915 433524942 738181587 448671036 467400846 987636413 998995837 326662991 873808940 109009480 625142573 582743172 587595807 835043319 872892956 83791960 650492167 79763499 261435525 944993113 953108096 612876681 960120261 517478992 806667013 75470143 827514453 836304988 867146842 799863108 872367416 867899785 891253752 89742780 810350577 362001062 702748598 131502126 798233002 67611181 116568957 705157298 911222721 735237634 951455763 99072332 99858465 122885681 412360770 525397554 871479429 253237915 602878735 724463590 827220553 693831763 889856592 294626702 379530645 500956242 986697833 925187922 927932796 38812222 334955659 44133707 964763304 493617057 540948718 900101036 974621938 876318409 982559339 303450288 709069501 147576429 862535437 45120138 876700067 752481810 985142581 245267384 786508656 285995110 639744419 21232736 418557151 488595657 989350661 283975467 864836634 884197617 948899813 673508823 855720828 170476789 359323023 866495263 972753820 138897029 238420133 443949228 780626538 974573537 997459689 973107927 998630562 124497790 223489221 851588095 999891976 42485350 575185461 305204488 737955551 410591763 546828425 329905594 585684061 37325961 385597123 328169722 559201693 637798223 812965338 646563850 651971433 867576807 963155905 922604472 966885684 415132231 633146684 845649288 893027204 304600974 469202578 507269587 556450983 877650275 983168251 596158638 609142496 420114199 705247553 38765868 470051558 447866212 890661638 101767494 887086494 565245115 569150114 32174715 916019212 930789730 974937871 940345972 989111153 333023670 957583816 296988653 327110945 220015361 682629966 461217670 827557371 912581560 980240203 802237398 944354912 780023766 920003235 541924391 811624747 971597220 980950274 383934053 486923570 120539254 235435118 127407309 752826049 488471376 901523203 790631386 836016750 295980859 368181472 398746094 996667983 403361451 543259082 524774380 632949799 993962266 994720400 832996251 959287928 413950353 566030784 472055422 780371982 693294574 757104028 788750472 849202257 13939886 591545807 716643279 918678742 529908714 755466465 607188416 805503503 247799346 446809477 396926617 829209096 4895075 945777755 832662575 882906807 458074729 719762586 555431345 722488508 475507863 478097973 227385967 563399600 365101778 925300215 265062139 987333262 984206044 988134215 295948939 720090242 943726039 996953924 454039233 501261725 140860084 464526893 339457763 570798652 206352353 653850719 60862254 201350830 120775502 709941829 782976812 874199908 306338996 897053032 296446469 628799033 739391840 966272146 876715674 902332244 735265106 740802964 996043601 999722719 653059620 771411640 235457390 962204928 817582161 939296016 492780193 501220513 838388952 872858220 655224129 969909587 712489638 982855194 125386984 151190497 657202823 800903611 665611934 986644183 948642923 997444309 693121875 810949827 654441237 665852202 774280289 938215572 864243780 950129536 437052337 938913747 930967438 947266550 529184181 996835155 591166947 710464385 870665102 995386388 714069858 785900825 407074227 583025214 602633946 816103315 960965019 993055604 774646333 849795165 572180032 817339038 950588257 978134557 629419600 639424560 966222826 969766273 459543476 886791553 397908818 530119524 9074351 496290058 319938637 923344643 413594866 834212167 100412823 317514341 436334491 447191483 879839805 999049791 16022871 528045697 419441544 690558345 121296194 149634090 428793126 703115286 916090557 941965482 152128683 748176272 916188593 994696427 415108883 697327401 857754615 945118541 202284421 734851969 289150103 367736008 107433776 347781472 633609918 731847059 41595253 124647277 697051946 705050612 314742378 456924155 63673088 560512992 555564152 749220839 444766720 824434618 349368921 360249439 402850445 421568641 611407954 831310836 724528496 776510640 318243884 745922416 737182715 935150639 772520375 906655562 941543086 959899234 926628541 928740536 322808100 496618499 36671486 260490187 799701479 999061569 439921950 926147126 999458257 999636290 487503342 520633814 921996576 941370104 637410146 753530542 542775593 721229319 523387525 837943961 301653687 959298222 305250408 412395326 324519872 818718072 103805486 459634884 379031240 815419039 602987048 900609302 583402534 867312847 976700635 994277215 960655021 965806380 929597766 974634780 139343769 721815526 130695000 678336417 357316426 576868695 213469802 862062691 995095530 999088319 364433803 861638412 837129210 921306059 3735644 904791846 562236628 833068980 320354548 749094889 711059764 885982556 803198163 811766401 9095949 460677330 896393272 956771035 438317751 775644537 453126273 730790200 491003039 783485810 159565728 532887937 111288537 310656145 638605029 825466080 525523611 574228974 732396937 954916284 354762921 870258067 380645527 809323471 2610779 413248417 518900394 761490319 547818687 827344039 840570006 866495651 616273930 997957240 954691732 955555671 786326069 864623346 992226748 992911361 933341688 985768998 20205335 497337311 146577519 337186146 974273250 980219773 531626752 586657571 630785008 833875644 127393370 129460211 228771507 962660227 348636022 497214412 578303654 869174423 278576937 574807996 520633340 741912712 403854555 860200541 594656296 770992082 832605658 924496184 884848220 939764337 512564065 917759749 743587021 780798924 53464565 339603724 24725938 708760110 440886995 828171234 941386686 984357356 496046307 959809502 684037180 874426929 74527710 364479390 603431896 712710511 734457152 949015338 477289239 964976141 954693966 988827041 753448345 819774704 860984036 893532917 551156685 657817906 317032096 953955870 240653827 962879636 531458375 638249669 396969109 516119046 986845384 994037200 654944321 969593473 11009861 73536391 165912774 703423637 133830420 448710730 784102463 983779829 240245678 781570002 33291713 443604753 881920281 887427688 983104824 987777081 288247569 309206067 252501408 287100855 418622971 779264655 131958287 251575042 692284664 703171883 92751419 998757840 789387234 885569137 384911720 952494684 245701829 806442573 640193136 985063599 479423731 866240386 430141429 659553092 496791812 753991154 857192328 959625243 369173684 657930011 857424757 933145525 735899274 797194054 511889109 855173356 412325875 665618532 915876820 919565715 53587821 682465603 348122313 394447947 588103542 735195448 991244687 992770852 253891876 496450072 728232733 899198726 436069657 454476865 23233348 808468862 59901567 829801942 675331480 883731904 155719043 358332877 349001986 671476321 908582701 995093894 35210237 288675002 885728669 941580502 253834329 642391887 384368747 784120363 65524469 807358324 672157729 791704890 553094882 908056430 853721486 914795703 21606422 701591534 596218757 748379056 646917636 957691268 745976649 763229084 447456275 986915082 211189459 755926525 366252438 381179442 33272084 418439117 302208522 410000614 323596501 617176009 152907705 509542357 351038079 512403736 499895749 685472028 620306439 847020410 939792085 958798988 122899760 625054067 923014806 946643162 976439819 988221818 209937424 524422787 9265558 142890222 423989368 849184164 678054533 700830204 578608963 899416451 616265950 800625502 751845188 952375524 583305871 723412038 435116540 694436253 66336947 262986474 559599567 848264901 27261796 379597538 849475587 900914655 571677790 635061999 556663985 807625651 383456435 395409446 86383956 550059159 694525924 945362096 693626888 900860037 126936476 255759436 46857477 768732279 389058560 444407539 400511150 903860881 918172419 974569409 492313631 914832925 274851461 299378313 733840809 906082973 64576009 872261643 727819825 962207937 355607291 461465992 558638867 845952606 795601391 807784314 970643196 987249317 217529438 674165888 560884564 993927360 440123891 443229715 826548981 848235500 289175201 562090084 867565526 870054741 291911264 423451952 172607894 676521342 196583537 473173302 130765596 987871973 941566234 992035375 84126419 361419075 408746219 834044393 879725035 927490222 429955864 933786026 571810029 750429771 682783420 789913182 858299404 915362424 651425911 780484683 317616711 888046163 680716981 765002443 560106612 695763102 422662205 672534022 724288184 921310508 597630374 994381755 593913035 728156072 43578317 665598254 617449368 936140296 417877689 593163310 445607262 856192994 452737247 650059080 782580354 973260501 880486223 898012174 541278865 607377587 52086869 726419744 112196348 615918528 384068682 650653803 158249546 838981309 262579900 298845836 597057639 696080632 903234668 924137483 156616242 737299513 266648139 726687883 250168669 256494700 418893751 607210518 442213781 596457141 92982864 192556603 488734849 591715622 374050676 394033097 354302921 696814341 555576230 853810357 125804553 158090800 557460295 850483053 567628702 934642483 759245513 867086644 693346318 968554610 5800796 523929008 395712967 711475827 371989110 412890501 277026810 772039886 306398622 821080984 368146858 548399228 530271491 597937215 185864895 275717119 69139340 620458990 225992792 700761465 476364439 654417738 265846302 620765372 945161497 962707229 511847763 588464735 718305611 945521798 269129266 534938723 714494156 935616509 326484848 385807021 673414467 861803070 628409366 698953220 144705436 851513120 846133756 852548196 586511167 878003199 556645164 983793767 79107428 703190209 485629212 629717185 974599937 982399989 469850890 507673742 58537054 826094689 655492226 835603896 711478112 827888628 62004518 285698294 497159191 831607313 374291059 888029620 991475239 992837283 42335112 945576543 596257375 880693586 487700193 632026523 649029273 940419428 747130504 953607094 109464019 884693614 787023064 962488468 190520499 934989182 991008056 994517514 449018198 941150661 478629974 511602607 286004204 500350645 948644072 997615440 729799430 850260666 844784981 932582130 735643110 848864892 863593511 992996777 565396367 776687028 853090801 955022766 577669947 711202310 770218249 875310240 51575468 468364250 372454806 910451553 252530794 672921252 13888850 108699911 587362174 631803479 427819832 519931062 707603327 851718037 929974515 986240937 505812973 669949095 238960639 535833643 9930879 131726865 389208285 818321736 734465473 925742373 366030792 765985759 292603269 566350643 121545648 278847257 492349837 559513559 674120798 760954563 481803707 792550923 524141090 939355496 368544073 533305348 315858805 459663954 301659334 506036118 465424461 867802184 158886022 716102076 897305909 990323164 58885528 413358685 3230525 118372602 438889930 783752161 800784907 966404282 844858930 978092137 495185729 615124944 922687419 961981177 690317451 920915955 674351577 914548195 911541807 918973261 289118034 730739504 413974944 595589582 823584054 879116129 434226287 596323111 624836878 668731038 351268239 359384457 68339534 205137681 696076054 913832043 141242039 396752440 49104090 208236474 174255383 718279704 219950584 257083229 389923504 821851610 987976325 995721024 323143050 547000745 272657004 661369086 427768895 862819063 540768857 741807941 356334524 589087805 199440578 939689068 767800844 775374143 979877027 985051574 217142866 904930484 9177228 548042897 35658652 442393732 379920282 876665685 416261804 828933483 264062183 576765785 441321952 807898275 792994892 924176619 158923928 475542012 78321891 843751663 838300090 940884355 993064336 994744117 414425340 986473878 254684845 820337141 190422165 212616145 489239916 552598811 346615495 408231804 237857949 252461852 786206046 967697563 905040020 911992467 243530037 642569983 419667825 488678401 772812006 935357782 637802145 767840049 315400477 439572402 974015990 999250630 815395475 986165684 508360577 761694511 86546987 362778247 961384444 993889686 932080962 966843133 29848003 793073475 39437147 111915815 348316426 643923868 631513122 843514644 440026414 473021293 141426311 663185169 455676961 971788146 177220350 278679429 236791234 337709783 169831270 835294621 578986717 731356426 924930610 962258513 361287403 986947187 713044063 756491605 51184624 482101726 614075679 848012892 156391590 259570405 263941300 665821944 191520212 552868357 17654154 991413675 648548663 890732740 467751455 693061747 430087917 561088458 331240059 857169919 138964937 880772830 302817835 555349584 836426249 852370820 793826209 805833370 552019296 982092393 239547412 432368244 811674052 897319632 721137559 907901623 14759036 243796211 585194914 650123431 389291973 808905490 939538307 969815709 273713285 629123945 731835391 852642067 234952745 373169281 175304480 247927749 183903056 724652515 502567073 752977182 334370467 376426281 342258667 522480161 39957843 918210677 25937832 136681241 277619976 596349455 143850934 507733408 132505214 791053065 810210789 984701313 811936229 843372901 308728808 833369146 148062797 207360803 677242909 795539914 996208480 997885361 511811556 548623355 500550081 762701973 433046379 840067582 745111517 841544719 932383178 975563599 540717280 949753833 526817463 868974087 751308540 906311872 169031550 840379973 779479229 819278159 487153181 746797913 414700922 967864398 702528939 846431428 567662385 694037546 598307169 689855620 947868921 985389486 615111789 673566378 370447549 994688865 949907605 998672338 639692985 646802857 327386896 431386015 323424756 503536329 739229937 849007406 762836851 810169342 148661708 388105460 848879285 989289547 965921627 967358886 618808793 689702472 666627812 872692622 309205489 884366983 93062880 514813516 365927717 487187618 670286912 712260059 764569810 989824970 991590529 991923659 850228124 874295004 572231635 796616378 397989566 857879525 682873846 938992485 779226572 905186404 617298444 920386294 886026774 979096325 473932622 842213189 357978708 524196127 928580538 986215189 875422707 987234641 343168962 798337717 174794056 363612904 692740925 951993402 305143770 749121897 222033009 467320566 224106943 317476291 74136068 507035011 250998484 593479788 4379310 908406492 594556930 845565623 924541865 977522424 788730961 803399364 934378963 983010319 347812963 817571615 578116395 764057663 898392686 931450360 570573971 699772122 688440817 924457476 148480878 458781181 761819953 884906294 430549254 826900548 68072598 272574201 229331601 583328870 68253388 929208096 216214440 602443882 712279968 881520286 785766766 825629693 173833459 335838334 720471547 928232915 681932024 993505687 186961790 907703977 156579549 579373498 434274160 950900691 131494920 504204161 681020022 900073691 845679747 999280040 874406986 969445921 594468113 614108390 994460255 994960314 122940448 165689727 971846764 984622118 460640143 974674232 314910753 902324245 589465485 820242850 688756734 964551057 231067761 707571704 537554320 780287223 220253479 910775802 325918457 994377412 883550517 919589780 653729373 991408133 568321404 690612340 315313509 348497304 715364409 761145716 160269455 345418881 293321921 385364095 712344298 789000453 82660935 623632555 114348813 782396717 346443578 358605580 402367932 864220980 828999787 910947225 241574335 976913978 111501022 972176294 183429040 369857635 388671259 564846436 168705674 953229325 162883796 190055335 527738687 605968814 42975039 550709454 147938679 989429881 917329661 927077455 868384980 997577086 390225895 994379570 234400613 336039130 537553853 745809013 517605324 970063931 215695832 256750364 249841874 897136130 454438567 522607134 643438062 671582322 656768696 919268985 739449855 765591295 986783889 993168790 822159650 946470645 397331204 792034232 558037267 713003786 978832349 989540594 731695656 906117701 545666035 989243908 204037912 643645655 71956183 775413349 270451824 368483413 647914760 648277607 956842846 983504122 614533566 694422001 688498931 936335948 172046421 379254766 391351096 531447571 682203285 807166316 574495117 931048467 818097762 842683730 90430933 722585945 496676551 604066012 824198979 985795005 273882675 892478238 392867881 724188268 160365819 794313088 644042623 762048748 300092349 346407433 643539377 697674204 947973157 999043699 363141831 744434456 516859907 812099997 459412478 755175840 867328506 877070238 676282466 708178309 417927228 734745666 570907788 996336376 772788398 876248285 905937463 993605246 785533941 979216492 585012683 894379985 559702290 809924678 197638365 393797966 973238556 987773201 573281280 669324997 454565873 906712293 144910076 975050791 903193458 927250334 237404736 840514306 176820646 566253436 350498340 371975945 412032092 852230378 100105566 754380619 825030410 902436177 652472858 705026271 927609000 957672982 836797318 981741029 234275248 616930867 518070478 595763395 623474838 934989981 526187667 644954717 964312409 966242933 21542418 250987024 239266923 481594404 21058833 889945219 173382287 957520040 221242099 471885592 101085803 144163038 141626982 362615481 639771709 860005383 908774815 981340112 552496752 667421187 228066864 251173154 10195664 226457158 982993992 992586855 866023394 903942048 295686433 494110854 955174389 973346315 127610183 867330469 664110390 686739925 273826168 547184171 326774479 746824134 741514041 793604005 237615841 787638417 289764986 824825079 356161593 430703229 138837798 930767622 457907734 930948911 710263317 807173529 910043509 953083698 908665389 959690147 42701842 251518343 58230582 539321389 113448746 747447257 19110681 45845058 747086528 814417496 142715220 697887869 298625286 922872649 614244657 643402842 89486978 722636178 537730941 716403441 561192129 773028978 333074336 664815090 168534949 365245523 464109713 557166103 107175074 324149330 500702888 719811810 830082437 876556452 727715304 843657932 217977421 726601827 787663112 842559765 42115078 561342777 778686558 885706394 337022404 693662281 849961908 917070120 289332487 873076782 506283666 955704753 743061387 942426178 407722665 524740763 383026603 965615566 973441096 975902041 792688135 823262980 405724174 439568487 657268998 728109332 671512026 735731478 102981101 217677076 3397957 318905550 943091286 943815639 153961538 277724563 448846314 893096164 951027547 952586375 877106591 976334006 869635676 901434153 329324648 789747366 36463313 527381827 510184772 663396105 236061321 597110375 120605696 194815275 95208569 520248213 925390582 942173201 550704981 582718811 54885602 100303631 645851520 891358363 484967623 959827162 613954440 698120266 655460265 783615003 171403579 268777950 711208846 847592351 342909994 693312210 556810072 869246910 923892850 935810206 215536954 298765337 223595067 926718106 263019482 463645332 608413581 608967298 780457515 970354490 768095206 790901734 392557713 662931793 414853738 554432002 437430858 492763611 134692260 527592817 986936203 997939502 856943803 980497559 330034524 510303048 240644081 247557106 960902069 975729691 492326808 972875479 624426347 730752872 738477226 834943147 419458448 919054923 776089766 958819560 462806682 665177279 356216253 864051733 371147105 916211066 540873678 938643302 387911170 512812044 988997049 992510567 928051737 987351473 711912183 848134258 36324739 642028139 800210959 965620129 206438790 245005140 189889255 824037983 697513351 700669317 504628512 590914521 629614083 994305325 292946811 741754793 577010747 953587482 21697914 319678615 301356352 909892450 805086287 884801305 458798698 720998038 186896417 682223500 395937631 847827442 877903522 919004120 782278465 942660963 753874526 829073631 504831603 707682276 839156383 858859805 621585980 676820748 979039709 992289539 514618629 528338037 816273521 879879701 246201781 318009900 829930443 960749659 474229850 940596740 619072310 882498818 949264855 971371673 270154813 824810179 175974270 454595840 274416130 361291739 119047446 347032727 739029339 780749974 866754095 951643633 653362499 716617271 191756653 450867044 113141968 713297843 978192185 983811293 930612965 977137536 781787409 968443145 389779197 663315980 404170012 799620825 31046800 62778959 516530980 952201856 967921606 987172986 457131154 800992977 123201862 877803321 668941560 936175062 565895881 917024732 959165852 959594397 268626354 416135160 120100072 792343802 433161677 526742803 496433826 991354179 724749181 776215380 85789859 954616327 75389454 793674117 586255357 586262004 904488123 946744016 855859661 920605214 153843130 485195128 98238676 396625313 636610512 758400724 943449292 957162838 646321595 647190791 8688871 955266927 440752389 609613863 660748661 675762141 796640577 858154117 201777441 816870497 243181712 468848924 202844918 418364285 987238344 994235690 957018760 960635082 213498405 676371311 22679244 203873108 865142743 924225460 611439492 955182058 268857419 926822007 280330901 558506560 266547976 738693537 135331960 677363453 165161475 911745346 982665697 991941441 497140359 580985649 802609633 879773882 680085472 973478784 17027078 97403327 594068871 711919014 423179615 631483726 579450267 884295457 603663635 774976309 618287389 724596906 794172253 994544284 378899981 552071457 813209758 965868420 455720289 572767387 635929469 936957988 754476269 989124479 965559167 986085006 431603652 472057115 960518714 976392166 372528707 993443346 532158139 874631873 951521791 973717984 721090030 799471750 132121380 516305869 987517842 990779786 933153129 995984736 6493273 940566618 195805251 757381684 178038075 767271759 465235307 694357367 866898137 977239797 887848247 921133005 788855070 830102072 461247335 473491224 703565761 814187254 611273040 763700221 541563387 931515422 488825361 525042589 931771706 976857288 809198991 839924448 873502892 982133575 388937650 771202283 741257335 860415697 526833157 805776070 509308571 988606455 108835756 469790135 13552999 200391175 363146666 715042259 579792464 619625616 544094368 890241684 466256765 901459689 233770500 949064835 534009137 796692538 840897643 948857094 560424178 640896813 960704535 971720703 644297096 921771208 836631574 841385781 644959427 797226591 427219567 803837243 5090617 977520730 440811362 466301855 623178153 632059954 684491168 781899612 119937668 553358787 737001523 966298624 198116959 947995080 96789604 397449618 268254751 395866288 737656655 955846339 950654927 966693810 715171513 864837521 393010721 837368719 257553659 759875038 945928475 982547930 516288092 568207673 473520172 575837145 210357825 802055170 278438419 655590408 672552573 792972155 484243784 947208956 438048344 915691053 436321019 805520452 11329343 16713390 963032977 982703521 988476662 993308660 210356686 484790396 150292436 595388489 777724123 950235045 138204502 461617726 87360515 636335136 991160794 993316795 885346167 924398876 393394919 949058084 719176483 920643528 438804005 474194406 424391443 935699659 277328065 967031051 67970133 748742519 799719717 932789259 661053252 672145124 180732609 518214172 839058336 927932847 856956058 995808067 666026996 792436561 260896329 354285853 664960887 925675343 29170656 719693478 572179146 613611727 884411102 884950030 48023234 633105580 359168194 824583377 862398087 987559144 121354586 171892422 360026949 782245669 840537268 874914600 552395343 644321147 771401250 969426631 833421311 893060835 459271564 634110829 682707432 833362587 586488366 657109634 475339738 639140751 213692164 883708238 59579004 885915574 780463091 984977694 182692977 797295130 415503448 808475837 399430442 446854554 153300254 751103912 161809290 678217516 717569969 990024327 380429432 737302548 976243422 985190286 801285208 968733150 463872793 994270267 116412754 521880709 333007388 539333584 388351829 551914674 651608499 756800771 968444027 979091972 382460392 547870558 915946737 935784136 329331513 720595995 58488098 124930405 200708936 611295297 61315687 994380628 405657655 838039198 728999494 857373812 281208524 447182088 547404215 624693938 761059457 934941033 537781529 736640403 592638155 751312683 174830575 965314760 577484236 578261623 238180647 874636810 219084203 340789885 77700914 837202579 337667535 669157860 667378500 894748433 678162028 686341481 116347181 728176125 122546944 490593016 348685955 677695152 717317393 735607967 831604639 839834330 167261263 490840760 483628857 874671102 458173781 495444328 755531740 907009923 925845996 976445994 559456949 965800130 241383941 935098615 169769513 881632872 463644888 517205791 818198648 867997108 188848091 386642497 279802530 788732033 31971825 259244453 617208171 826300638 185426017 768439269 239365212 967916114 568864588 794906200 464192708 464807430 513420732 702367088 128137814 432679999 132681392 609733116 768959518 808752925 211988181 818740059 130964857 602465402 244136373 466645283 47432518 771332225 243386703 578544757 717036192 762313214 567647027 621640173 672884006 930031374 852700597 856870548 806578971 814453786 37971392 488890486 905816973 919547810 929665187 935585673 416883223 770385448 733359077 900344329 757435819 870376410 986897513 992003699 178584326 921806190 10927846 550036138 239165267 441989953 300486054 571392326 737860800 781762779 788427682 866424637 435688228 709292188 279019699 880953478 803097601 859075283 350189084 553942075 888579784 939153542 389847184 503494053 564542984 607253805 216952897 796416662 183903658 235479288 398904838 984428482 280533668 537646007 434881755 499141729 470946487 550200474 10018302 513023105 984103389 998072148 10357627 973758097 938274479 939378012 191236002 681402688 649782645 847752370 376552558 885421994 966329199 980199231 983379822 993134888 3045373 540550480 472559520 652334454 868635971 870022457 40061837 740083093 180317406 370074491 778901379 865258636 191650160 623846791 555573229 696117211 698567963 921674278 291652012 481413346 122679775 379525179 272470987 697389950 714567700 805543059 829393390 906062463 695794467 730215536 827645329 968052279 796666947 980774978 66094923 527988328 917655018 973351281 435324399 441942010 548966151 615898075 673640558 879813411 546751799 718646515 656800912 751396647 847662447 995519719 542842297 583583665 996044995 996567673 52767053 835748652 398063043 474703214 770484953 807305995 43393698 912772111 476189062 899619201 643255472 970877262 4433123 355408782 326120301 620569881 946836999 949555358 608202591 631666645 436834242 586055004 863661115 874089642 736313952 992802549 569620419 911617009 85451383 395307644 487111328 558479084 665513402 732159968 797684026 969706596 541566078 655338098 909355528 952188941 946040828 989441126 372942646 694533054 419842957 934154738 133970096 966743231 642392102 849175095 610641892 851356850 181972566 209905675 745969441 969367574 656391060 744857595 371206242 595312021 856327502 987189174 895495648 983599749 229484108 528520532 3397602 624013938 467120557 886899169 740473698 826794437 913790528 965836801 21487839 245270203 174360810 412108723 451970272 770036623 623958055 849011202 431826811 517262177 681307810 935399468 416643974 881546904 351100916 589433442 413378908 687811146 685265374 743114288 120192113 848295350 792989909 797360217 300452593 534318434 897303975 958532025 983822774 992640990 962696234 964816058 209247444 661765609 181696392 187675026 74675120 675446521 700001165 758317177 150643763 736625860 420439231 819290641 948082553 967645322 415959180 625480091 411561315 925657711 972435276 985794883 906077383 956998754 817793644 930022297 954125895 992596492 641070604 952026554 114027277 982325749 121863041 767087085 166514917 402560844 169339493 645816350 784219763 981333538 816075853 991016511 974568252 979140459 962698867 976090150 860623745 878159721 600662037 649790951 305188965 911196137 383109610 830720729 333261784 482121935 798091799 873931397 821159873 906273901 14858915 338469580 659085353 849268550 122487496 326996538 471262926 837334221 363515417 741316684 982031538 990841775 125548339 265640487 290663578 481520926 64504420 321777539 877780180 994084366 791213636 809657556 830225050 964714819 235547162 800749678 790947052 811981384 877537061 888367017 676661818 766925851 882581080 927869144 816105462 894380355 422717158 701452060 766230330 931888450 335103289 536935305 671213011 965012242 981042632 993984793 306279169 764803794 530817508 657249444 341162027 841391997 982294561 982918259 682084984 865414570 138555273 940054037 528286992 953524006 105227926 212454396 293316969 536786437 510562455 954367497 225469515 426578640 790514488 932928148 266475492 906553240 515027400 705466343 244682466 696361777 911874845 973965578 21410990 324280221 947485126 970206782 411264112 808819007 757636851 895248025 201304261 467814208 683535333 843685340 715592027 794550860 685028133 756414431 134916652 778399620 672009454 854449081 827448870 904270854 984194685 996067205 461363640 721025354 852785106 984897269 592852941 777418405 20220862 218373656 65940104 967587096 777544111 962965531 717583688 932412715 46206519 652390135 448802939 919067581 187473407 649973763 548039459 900974436 252216313 512792263 997846688 998234571 656564725 829577185 266926905 619910727 332072708 668082964 686882601 995729547 725077354 810626118 130495896 473902270 760835583 767999187 298122863 562398158 470155030 988638742 284939150 694286776 945105693 962563740 181026825 591644010 823158364 927506356 827124096 831788498 457818163 801023965 687773043 720317703 458145016 923414040 517896958 737539078 84269866 438945725 507637365 715147581 824813228 866497893 158435052 241381126 825571848 979475901 120125754 995283646 448365235 632279755 354751104 814447945 613047296 769262435 51269863 251624454 100871860 871465157 973169489 994464285 889743662 980655810 650270402 762957071 273051839 852562973 224480804 434445959 817998365 828506611 670838084 851507833 494498579 798534424 761456369 938629514 86469375 533355737 169119809 520165907 611441570 681767125 136823157 940072624 442940299 492694228 515606751 688241610 881449491 883205156 646965396 757121103 911647385 941181777 519592707 837173375 962001516 996042303 399418683 952396738 905116941 933090436 534596864 672121014 75208198 711312356 260277902 275391865 602002687 768137859 736595451 769404101 82918344 224932869 811926041 992690397 452133862 966667822 669676956 682087014 574051984 605264084 216280045 663775357 255502919 950375815 677392073 904182513 174830670 192617806 764768669 765096888 142164471 192109250 182776457 966438910 888094710 926288463 721971811 990450222 42021333 648812806 326433506 724927633 14331891 571869622 734529396 772302631 226641449 306676553 85320101 742737819 438471756 871807284 181050332 267455068 584943401 768471639 499003296 928883887 419966569 752689758 635482112 846404939 669633960 935517260 466969355 664454008 257122956 832658453 408882038 595294345 324920137 533923813 940667990 960510056 436554323 822146427 108635332 249269920 816495460 952865255 287044315 691230625 889480570 997337429 233818764 709777806 31780726 101160333 999049751 999090246 122204660 531610036 85625143 750071592 812934512 942330337 183391358 460836402 460008781 754542569 901607572 934991031 167366389 832929648 461373385 588332667 303289317 524161574 952188117 987701753 397632597 660372934 235310221 363603780 460073434 476685912 236408078 433307977 315078076 326726869 266553233 339106559 743121439 990155850 989851703 997769113 439599639 688817810 772902752 787487626 978676482 982824236 369055177 981848032 550981215 835408596 274451020 880221108 669929870 779149794 210870098 569219300 22661333 575055846 678840765 834070035 799135826 826207736 575154120 994632175 834600715 988589433 964302806 986638263 548701829 705277571 217295471 701062476 414386734 665499899 24594054 779599344 645023815 703650296 326024756 350741951 289509353 458865471 485343825 848160711 443861335 850646243 44098610 637545384 86442670 834134745 376869766 434967379 176873418 767748020 849060724 975017245 569947354 770809764 551545771 670849754 94537462 841891255 764788308 807522676 99703785 526872364 540507730 732419243 394560972 749614252 195399397 869315877 838190204 897330556 330246598 848145824 865736278 997905387 730533776 974063339 312655093 329410437 443324788 589157218 831029048 839692872 707935794 926927756 36402411 458954208 543479023 566413010 591799382 616020509 690691650 976985199 138296244 488105594 238133497 323379879 986807111 992005929 851272053 976352038 598151651 684162584 793884466 868658292 465457697 833417057 104328650 612168306 564986966 865573468 303921159 681560580 798019556 825495287 578704070 940047209 689285772 988051625 655642483 961130292 541500435 867741354 910286958 917176376 673000756 796141107 374662679 539097735 447656670 872799656 90563844 663612378 525781861 647873345 843299314 990804537 65461480 139520730 353793028 863573089 893162766 954535557 970835221 994496801 476590134 740883333 372988439 940526200 149631308 400218133 424311457 692853326 164114939 203010096 31035526 299028953 651553526 716301091 391823677 466100173 768907287 942067618 203020104 923167727 466598853 546400730 551026939 918719503 605859834 819625680 144181390 693038405 834998915 905008474 312894392 409153743 516260298 785255596 303498626 694382598 375910217 741105343 679347931 787585968 529103793 815032346 677022074 693390079 910406240 990829605 111033238 670319099 789638854 873401105 296181690 593378002 77645481 833814184 369141444 837614346 804837434 847800576 828463722 927185210 513369962 867554426 255831793 785448880 727175186 952419766 372926834 903966546 120340120 832522136 588592014 986552636 950513933 965936332 707001830 737011045 434912160 489796472 119790468 555650606 820266276 892480926 779621178 897453179 210377204 614023544 118595200 458258645 799543040 815495822 485927647 789951141 208451553 301622500 179148656 647348487 979749534 989069846 583233661 716676914 878247431 990272654 939481126 974052161 959614621 988055467 838894960 943589665 126907732 595711154 950675470 960136521 838967282 934235679 533102098 769716112 152828830 777457009 49816054 692487319 816299357 963265021 170283197 773891061 19100300 426830206 854755417 977254874 242923829 357521989 488956185 851942036 994565059 995225372 375203327 994385281 759172513 811404543 405519865 924770855 472119245 807323302 362703683 692396983 530010741 611360345 766647688 941397447 787051677 894715304 400011722 901037068 382933479 435259270 579705318 791569572 133399774 400880520 68548547 286553125 814076643 981883645 510947305 850369590 852183888 932732171 161808565 531067641 943032968 975184464 839155265 901650228 508186749 580656927 894988419 955089268 784499608 997053803 18273039 463702434 469215739 508848995 129213441 383596973 612635081 771043707 770412977 801129282 266530773 419473611 173883897 445499352 325269208 608019368 76665768 252627852 959932326 975782827 3581018 881466202 42826188 293182383 703302854 921142852 472058362 915560314 814865578 958788907 726288361 730038327 218907844 307716146 914092333 926240261 761764444 775722294 883784701 976482748 52081469 484926395 93372957 101806453 525421732 700332688 491617649 686312751 967808835 976861270 836976281 874081062 936936362 953608658 940651432 977657441 793908043 943140678 489578048 508311700 224512015 412676886 913805564 946039731 650471058 998921816 330881220 837788457 98882571 907897644 608673898 876888684 499297540 641004507 263267117 925973656 618223995 945837570 845133475 969857419 501375328 969031787 814512081 909172370 711180566 739832800 26335791 995665388 3345827 964648191 844973912 924862032 527106455 795829634 14661543 164069975 103010438 407735912 274166842 782730749 142670557 897477978 89856645 508526796 743157283 958563554 868739147 959553450 930378072 962112392 69947794 393540549 839951714 933299607 950194215 975246513 151699133 681056139 216025975 589720942 382488282 572677428 626022696 972187681 541164632 784449375 579466804 840719805 285969184 937083299 674623855 684630190 798747658 825241064 861477941 870532832 960455406 967080744 854647415 989367540 78691367 676185714 208195818 248764717 304434355 383526511 72189497 258017563 708780422 838604617 851089776 999021521 226815645 688469682 940511344 961371816 369776573 823277069 224141900 608884629 444693142 484997677 284257873 395382648 86086058 590986581 376310218 694093909 712359013 979951925 160980484 407585000 24836750 383330481 276475168 462409771 889836283 927218102 538668387 631489877 156020086 875271916 19574792 389092110 530408465 676833496 120813481 983149383 189494418 793653885 771822985 994895310 668389180 853678005 309079579 438912806 885780316 921495096 759538918 879327892 838873138 976291894 914835051 996309970 365414780 420090136 890921030 991977087 120208191 254521226 385567328 866268627 268661383 700897092 177101464 299028273 400725198 489239319 392012391 723181056 472324856 831063613 712819288 810654645 605631428 970006712 374118514 633627798 7794597 758359337 236074404 924399398 263234955 647802885 276915833 568452491 919296159 986221564 295280997 835187479 977067326 981055359 437503430 563445707 356090986 820884782 20400823 845533623 557799216 701588695 207218253 836255918 506256615 875086738 298072273 384144886 45866943 217253755 13310504 590448405 396610567 400275671 812469453 950979464 108863486 677541865 409265585 988153710 826385073 942416806 196087645 427241310 228935003 398829271 810174343 826612632 856655673 937888036 563841236 944523703 732137370 765041841 217120358 288269486 148968051 358251236 111868568 987929498 963271556 975411063 877208392 941196834 871598498 972028336 841968921 927083946 235400259 604362049 833330022 982317526 247447312 834718842 814862031 938170707 557101089 785323758 865723242 973271341 252648152 879345437 881299213 971915443 407646727 768704193 950672308 992049419 494537257 806112550 106461755 685935151 963144960 984444391 674330112 826669327 560039487 630628878 53355516 134080995 621851027 817960917 309499029 770196198 187019307 629661826 768769732 809329008 995142487 996769464 897984388 936914097 782593272 929625635 766078879 906852488 221618757 226005380 319083307 891095862 507469896 705830187 413134558 462450339 280890557 466534361 549172796 565430691 457762673 878598649 517231407 673274677 135518153 670523022 469804412 755728989 974170302 977261120 610862060 985966619 498724954 917432633 658831266 867718471 273550240 818876180 339623427 751396019 847282056 993939752 143227127 657758076 84209416 101052004 454970630 901831788 355379506 968296389 804908707 862340801 267984504 271326957 750169061 828075742 936942378 963028469 356108382 373539262 609416540 634720593 431710312 470279510 838097485 945963464 652693175 887441487 455288439 632094155 468824435 504677451 991701961 991888322 363345795 384804054 317375585 548035154 415754913 642812774 12693947 931030758 131079988 580942087 48974075 570983199 810982274 957572091 553295840 809515088 624971784 816172703 728828194 733683984 12658811 584367075 852538535 947603297 321904808 558335123 855355698 913332940 874648757 917292311 980439377 987913802 550858831 924221928 656978342 704592643 277995925 630714221 58454415 574016382 159373709 331108014 322248957 427703604 427337855 624880540 611449944 893041231 69788439 761620053 166296893 889766676 69827893 285794130 82215927 432464942 545495130 901622773 89824356 886658135 750255600 928054014 717355838 766054339 82744120 133355281 223236833 597010727 589117119 747272909 858337003 901961599 381435577 425513891 849392533 856439256 168306596 305871885 783774585 858114630 595887862 674776082 188050596 632650415 489165205 580101120 537947198 587778771 732312726 757625569 644522737 653763651 747129683 976116035 691854756 862051852 807782884 901783781 395767999 632004211 240090776 661698694 525712442 693753599 147453175 543630424 442920065 733370695 474346799 889156087 962564551 994499450 46892554 678147098 729070414 956825517 903146457 960692350 862777179 975099885 156555492 753662681 628375168 795963936 214177732 927007545 111121742 793359811 930973602 965196339 199268209 647685464 751367379 781613652 426100206 450501289 795234863 857100715 693602479 923286441 398152745 592542681 596936783 686159799 620460219 692266355 56826462 259814535 775488169 876242858 192869330 712002199 785262126 854157162 81114840 469157361 102086549 527938152 860267855 892957693 971555036 972409345 608834950 915239096 433667198 651762972 441273382 843982166 46412226 433662296 127772667 382194757 914229871 999378903 403374746 515001731 437287166 592947415 196480379 320533471 711021268 987295448 942621120 982429716 172451141 445267366 980022691 986291948 585906874 883756689 202717782 707125547 964263340 971283852 686092221 773974647 386699724 750896981 760688239 887172298 64225377 727927434 795131152 923490525 178223661 790560280 914894083 955205377 26658725 952797080 340539208 651249281 935180984 984621723 769622163 968939543 221286678 726420153 297616271 775818354 318791337 442237471 939378823 981377034 176902204 230170044 290949799 894372622 933199620 961727519 602383692 664255804 564677132 813046171 548134328 658170648 933659613 998881932 715466871 986882299 845869950 876377084 207556618 647233476 256818403 302829944 112367594 924206207 217441889 583357907 628937218 782418323 370815678 714812131 678032784 956943929 799346593 978914955 120529864 565747784 75607188 256587756 847655391 893487250 57688979 242408575 541153595 838666477 631561242 709917194 143352755 516747760 915818988 932589536 563624207 766137891 926202493 970682196 235210905 284764357 962685132 984879061 133249007 576781383 892835782 965291060 505512080 550202148 349412918 952231062 717850755 940748439 103812743 238659087 554451325 746988467 741328340 866008499 688530809 814154011 315577607 727912309 881224029 896176477 53923703 587220294 195456508 939801891 851319351 948665374 84125675 820262110 174408523 713863621 806915061 912119833 116127213 374502667 261100094 837917166 183687157 698281088 935239605 937190724 115127165 471632519 16938372 599991773 166387320 644488492 927601723 928509886 432643720 980165652 73514830 432042536 199182801 618184967 90918020 115590800 234707267 315492120 697855521 833969351 694634614 836198080 794115993 810957545 636552245 767808471 16597366 238462820 882087542 966555141 315929526 388345435 45865664 723263693 129763018 643016869 647786075 943085408 165262404 427999430 463906521 836957552 805454476 841258671 756543493 799678024 161937735 625233805 893416593 981113085 804290509 963120601 254184135 824568562 574952135 862941109 443023204 485397091 673413188 784081326 733265003 977766715 167997946 303335903 703157059 782279442 107851280 258150515 765612380 768916828 112058183 996965014 599371360 793925332 614746945 962170699 155982730 905782836 451698599 739741438 804096625 980748985 422500695 977439904 943899551 962610348 202675244 963814867 98263356 450337355 406725786 858076033 343065937 975202010 256419145 724771154 132947152 281854895 656539468 991621436 94647671 735161503 409874127 606699554 558279309 899180190 765285645 886240638 286183223 619371007 77119970 955953436 770827677 993221630 875899610 966735075 595624220 775046393 109701496 238192598 260124612 598834991 511317889 950527825 15128547 264671589 645862882 861597670 196310303 223988114 110461977 541907657 923597010 987658059 737141503 901390826 909751932 911894013 333589740 386603469 699977225 884921275 220439868 613199033 184339505 424639278 805602342 884040011 627413732 823710191 549952296 712911746 514464797 681333272 4960915 36872307 332816190 505995794 210468629 474434688 296130869 977270660 938173054 943167341 589355048 802198597 498862674 799003319 134251128 920070218 904464414 914840990 320440076 736177540 212055989 971465861 767725690 993230767 635123379 928025407 598980888 930449550 466208566 859560397 136097262 549205763 127660749 882956244 39142331 303646074 833047453 980737936 471563166 628444639 358697327 947036438 837375996 911533462 927581034 970925315 892999404 986101947 260356766 585290442 436707830 760147558 333241576 868885880 47483791 469432374 577525715 923702539 199569497 383620981 304665647 441987289 697074951 809783019 975110603 998987716 313728800 645763706 137795965 142145410 489808023 695263084 650857707 712081010 87562893 729703744 856174043 927001995 727143067 921531180 975322998 978859853 23416896 495639812 705203968 878686347 152354436 199149389 837851072 966707657 603247130 912925570 983993802 993175731 660102668 992757081 226508827 841674115 253772946 847324348 661940328 681341856 355094651 719062348 920167790 947061874 661895675 818955852 595389758 818827379 552305466 933903883 135757339 966016490 106316020 813376947 139866120 308016005 966693550 971116708 657136095 991160919 501333103 673076289 126574790 420137116 478929488 955740822 148947304 588475027 82296140 85943092 738069584 769727459 641651182 871040364 885758055 907418843 233208113 529248186 314000092 829925060 217077417 395674695 7605909 377802854 196556601 545474666 567757327 989011418 918305864 976403866 521242749 585540182 25746317 849704095 272597240 695693134 595845640 729237802 780367659 926001243 146738503 973789296 372021219 384552304 693383387 934264818 775865771 888269079 92562557 976708019 181870564 261529147 924334933 946639484 708662589 976259807 722638903 947015491 707712455 800031905 987655496 989231198 819836203 940726572 336875299 754864156 106247830 540274248 94043345 329572200 109638132 849381576 613991115 856505550 721338909 913218025 158082761 488198981 148007175 945389038 712945775 943472931 471698123 951739526 17055824 258839499 106366636 703930526 315430699 586112964 358890100 566796024 698326830 960287453 545307267 905162388 37755013 895007136 674848809 892488393 331566815 866593062 458479285 630885315 26900158 103935591 696628030 863149996 331673797 652035882 135580390 428389373 980353450 991130442 294658623 759924418 296058838 622774866 409281215 820788331 675400108 899369375 517431224 862605679 324207615 372503614 704273997 926547056 652902482 686683183 645273136 891355094 124026868 891158647 759849968 860743707 92671875 358517223 708944493 881936964 550706944 935873017 150218211 945930250 618051068 945431859 525396671 865176144 857588414 858257392 960195448 988197193 653257664 674518483 218872530 300278875 540677364 742919430 316998384 679413495 229223781 922547096 301769204 477031271 573427118 842155806 927494134 957443730 822260860 843983773 151548435 336795842 780060492 861892926 373508510 893434719 586731990 706102024 447267522 925457840 149980108 498594758 482263913 958501884 550680808 687874922 819398044 996144916 335104308 795561369 295823217 965863231 958826472 972244636 466961113 933901204 361867148 950562278 333642197 356494467 465645399 867339193 627248932 922346235 377693871 658603484 491287263 591013675 701534316 722135222 954070375 998204209 942279023 997732611 430440268 773007218 720811752 750496528 440181009 686431875 200801066 502759766 890290258 916211775 81506372 958926928 51721833 662613725 518514754 701426147 682341999 906886274 987704733 998079267 175599053 837264790 382595967 835849251 696046691 863672878 919768080 997321309 774570743 809375179 53109740 651414782 420506743 814088809 413372624 518549000 879901338 908578984 647401482 730165719 381782495 383815101 132857543 242947145 770197918 810603204 558379674 988359112 366348248 712499071 897034374 905345896 996569680 999744779 220214467 521486369 238570047 283422745 907556012 956573947 859033021 927163354 736101394 762841817 604318377 982913884 204368685 534392654 380484481 970198183 455011377 978454621 648408218 957149425 296633068 893164584 632964392 660349041 508239029 742308514 366850821 377617311 850677562 879780528 214961701 223737196 370297777 526076265 7146633 519430178 60742538 477551319 507357713 851220007 216388439 648111634 32013400 242265903 420795432 578361152 145928910 335327636 518218306 857029497 771761882 923792437 304188038 884478508 970585194 991279538 911963444 996338080 717570156 889147689 856067362 858391141 64385181 855923800 179938255 859150666 832407222 836428682 330894251 591085102 786833350 917735386 836849382 875793007 300082175 493959202 221233667 483225226 933146344 934911600 931125525 999507677 234437583 898633808 664260165 671904711 226620750 659688523 805935837 811679888 572240612 704194663 735018417 855692817 385208645 659492381 987774471 995108722 1589847 555517066 872315346 979623958 661395438 900434945 720314436 786979100 789214702 971952554 99411723 174075616 661028706 995428371 375105834 862314409 397454670 793752682 168629672 574855886 709386851 732636486 602959102 629020133 834525079 860912524 864113577 881055947 407669532 640740595 536480180 692372044 113995364 589522737 728916526 731474022 212035433 344942801 705804487 764430586 695141191 929477944 811102470 857913039 141033693 348190041 667891572 834512101 625440627 712297436 268838687 375626426 768261788 971618758 927810927 932608601 607102169 727540626 486654158 881179994 978797873 999702942 12011337 840846793 654279584 891496372 229656989 502348964 264548451 450321241 899639693 945007977 243204448 482213073 415175761 441364467 662091197 918473500 196439636 374288417 683329574 728451816 789482791 937953146 972546618 986523506 261695993 344194371 184486548 326011975 46618581 657217933 206372926 948871377 341917814 900249974 901765535 937088164 411017294 554423703 757804808 770559103 338576663 694458068 55938665 629230406 918110790 918118324 788201502 793020769 715403943 816322562 60402950 854435763 579073780 787557589 589863013 880587371 412323623 493609512 289851713 380529187 122484836 518206937 251790515 748417625 454821440 797207606 365956317 627328364 176373770 359759496 333518170 657129853 222687862 558769320 996436442 997342235 576115324 888761022 850459099 954322377 529679536 606069085 769183980 904927579 361251740 697704116 291465310 466850862 217584190 703709320 895656462 931091700 473664837 963802728 184900532 698681736 526788733 623815556 482781843 636346438 96834865 162299553 465871097 904831881 553884402 808293473 738122510 909699361 235609584 276907368 167722509 375068695 626615192 958535239 139211478 554506498 403099641 777720446 331313310 483491764 580882956 930674038 68561945 514920109 992154133 997330003 436906391 959475839 147659444 531572789 566289963 643423568 379664294 882083974 384788964 875298181 586240432 981133606 155379923 373826102 798781010 886204602 105098541 330670383 616187995 916084800 797193244 959298559 970427299 984816187 735841204 869871783 798465594 888323362 109765628 300989696 212203970 303993947 295280831 364109629 466827753 701033327 787820143 970480156 554514909 658137679 541822920 718222037 904332965 968172251 287131697 745817278 688939897 972450267 594826117 802009327 715221065 912803459 408033487 513459167 989387754 991411554 107062346 758619160 536012549 818245707 851031717 875447593 764585650 859782949 809252997 867059908 7375484 159028158 212311488 250121016 910587366 990802947 447153690 625314882 762034045 785946110 909253792 988413159 483362968 624665557 432684998 742635250 635920145 702957669 160222802 924796180 4207113 353518136 916541659 969937379 604560031 985075595 639894600 740901933 528854026 680054108 201662910 912376266 586072252 769479261 152018049 554642428 759585918 786951832 452574757 908068074 277772201 557577282 289264913 337160486 654424993 690301920 555877527 574178356 555034560 895426805 894777035 990229960 808419997 845207095 393681951 784412784 438901289 882295224 401827772 597633191 673981015 902391958 172888762 671793203 241703038 657569660 997269539 999580433 938696120 949421998 659978733 728392435 562759042 848890667 116169654 820339655 197643125 466099648 36431062 958479490 588629450 834780004 884928950 984331253 562305432 998190652 968972880 975665093 459172792 964565205 331252325 524102992 500377483 799215659 274143862 724838222 105163972 127950487 475121503 647134029 664805442 814538639 122017008 709367572 257408926 641756649 820969834 969324022 965451339 973743017 467176233 567837904 832527265 857263656 481369057 837049979 25820497 287089520 212088548 798955076 934973139 971752411 304047552 317299350 294153101 443421796 735107081 915007222 868304314 947851965 137846919 447333122 736976546 992557800 297217821 840533972 37006163 566039038 299434405 460155889 79014408 328419562 348783995 955201005 144582219 507556520 651218573 819860110 864641032 968676178 435189776 488166963 148401174 917903105 66181633 533714058 808647334 960714162 203318774 638267844 145123909 848883965 270300840 990238175 731422425 836315232 951543241 975270735 295017111 412402373 984395101 986387952 576018668 733225721 843808860 929548000 39282221 890958455 180718680 687242793 203515691 369533030 883952722 982192894 164101395 350722304 782698454 945774020 969759503 989644173 80458216 91880431 674251994 735080828 551269830 990339091 892580070 981261214 352136699 561233279 742719067 788056910 267455387 910262603 849304817 950162572 907709554 968585711 348981947 438579140 332030046 399317623 989444916 992624038 642300214 795600902 909475663 926101468 42953445 105887502 2546048 151011868 628745238 671700769 327717319 538514505 495379931 785694953 667914685 751113430 959395892 990567003 688642145 986370600 81158890 84099460 148993125 202607955 888147085 957232311 164281006 715456514 902028052 950074392 120665928 984594441 253579775 813475049 450753603 921757926 765304933 778344545 758044482 784958229 554992746 838093091 533694020 959316034 983718736 997015868 881497645 935869725 122505882 246272291 511724449 944936872 140431542 300487520 763257302 892141129 831220804 970453641 784308491 850542579 215847493 363894539 303340654 434030098 214069445 358403054 157661337 576973934 700431471 917235122 883531207 911685728 129162090 867912314 447291367 928576657 245234727 491586796 728701961 744143119 601116398 643053865 115581253 998659148 583806574 685079504 921449709 938268486 480122216 970069050 213255747 716203254 543214176 671109095 781579480 980286019 18958507 858489867 619003889 985731866 435716561 775144582 567807671 637507987 362893332 517260378 124858232 296375220 96706826 791986131 137764321 781041341 849591425 871043473 404888813 442117236 730079029 936588086 731968706 793597456 956374477 975342095 314087527 745930738 302124454 465388057 563967885 639498345 205420003 401697515 473515650 739077556 507600585 850265747 679928246 856451304 510041419 903538843 509286415 711371610 973611498 999524273 247666428 817762773 760911798 770702685 724380133 821140905 200230358 261177239 487270804 525916594 386816603 967837779 794751 70798684 386036304 460086364 513067534 910798216 242358736 961007689 798748255 980066453 527978111 893007247 83804730 424466049 687027631 708106003 681187254 843327565 808824171 861947200 56374313 499150157 694158174 868836048 681661760 772698871 788308504 971518014 508712315 661002071 234798873 913594580 78800991 364627281 483686049 888742775 708004383 827549381 128719840 716785086 585205672 616341674 452259382 811057376 257068642 266759437 627964822 739064987 118930491 357735910 500382129 891664284 568961401 781304435 582096442 881279649 516012556 929004793 764145281 970044941 380851632 427838542 969502752 989050413 676731261 988222078 830776653 945710420 322495708 478396413 179700259 181328464 353216417 811810302 635125874 980654112 337230866 783797166 706401158 737423216 479174689 582634156 919654185 993658618 769532720 830009242 579611128 819746628 711701985 992991148 85610313 173712805 233577881 273153909 81496770 132832162 823915062 894411138 271714682 666483005 860976755 993859936 787555687 817540227 23755782 409803947 334451668 585185514 827836090 938904755 609656746 967812712 319783702 447564795 523767820 787860518 111857048 915625436 726245311 823946941 429655459 780672932 680563087 926498365 235208219 963139789 488605511 874229510 995795162 998415836 666597144 903011410 493399651 858064925 923684931 942247213 495357904 660033927 144646417 387575004 931245915 984103300 72238296 139015872 715450774 991517218 805866588 994158197 603768753 827729917 559834571 650576370 572314749 581069032 589556795 875456146 506731549 904410292 274861031 494841789 905058269 985522816 103628668 116925090 918130320 936231151 397953761 522316798 206977526 769492823 844111420 934774663 470344343 947067823 498224411 724451112 587466443 616422920 291104311 516712085 785736001 955097463 576872306 681728811 482451276 617362758 828854907 886324299 753575088 875502895 515162889 889623370 915825600 957907793 796930591 979463661 143849505 398339630 44149720 391152323 177414987 305491442 363830972 564782488 316272002 820782889 676833551 759929547 156437781 414160063 455005543 967478961 307865168 791386288 70926496 252518880 38288802 451910311 630766055 984906562 966575827 985789997 937835684 986463745 58279713 252481775 86233117 715152901 328329380 437231713 233583983 629650111 650476583 991854569 829808903 836424580 758341125 833933399 190861218 646714928 505567281 892982657 342948542 851045156 287886848 707511230 709636468 720578322 771559868 888880894 81762985 579089035 288395929 861159001 676174210 949659755 22635127 786960429 478719499 731300352 243520638 787121352 680959903 725075977 795382763 855729223 62986165 436782246 889946067 929737579 357191980 764427527 361906580 415282968 392775620 777505086 478552149 849118552 741210653 913132277 285647559 949006085 862308378 981275424 566369824 575743701 628163170 897323655 682269907 839025703 498072278 906895234 270244849 356771957 454823308 576809686 1421612 557137790 980897092 986056539 173743552 976056150 529248462 770065058 144261269 558500092 619492539 956540472 109218126 617344402 855094027 929390306 983408761 989004156 671453799 869865359 850041729 898308826 961777670 981568314 19140917 338126573 919723497 996379850 490865630 951214377 594353468 863842243 484368947 627783343 19292383 578683505 627860962 892040328 885531015 895888167 995793884 999491224 366820908 520334027 686569953 815215308 639485305 712038022 753584952 919931100 393655131 500507450 664432680 976099373 628203972 860634033 620796453 878622829 703655598 892704575 784692565 829916548 322253158 860848964 279185266 434329106 298345434 310131640 622140045 968894810 612199956 753176973 39638448 270936652 840178577 961908067 742754842 939509348 261415089 928630074 571516940 862160531 463436708 657837452 220291766 429344461 668939230 808083654 516289639 722065287 139209657 677838191 736168579 841020457 387693103 820510791 936018003 969462126 839486768 847908917 441505493 979123281 88482363 814775350 864723493 942376068 834322664 942396231 786723704 906642413 180654730 620197283 846940859 929015586 799977406 865039414 835744608 988021730 622842605 904326747 873653847 937254385 833114446 964238926 296109892 384525871 281578702 831599695 470455457 638821317 429087221 653305577 113248189 674773126 908166094 959545307 375381282 483294410 168105824 267102579 441054742 851147942 666538831 901547408 760505408 806260582 126752788 661478487 175620266 802188041 978392468 979407674 925114076 990454389 26157657 838324896 16072818 43171963 919135530 973601988 509684476 718472022 660913076 943860664 662981436 803398261 144292845 610282497 819230205 905632895 413532632 982611878 479250999 508875645 587543635 984356180 256525098 825848907 600453516 763280868 497870835 684367564 175613867 242361459 990544849 996549969 831948205 903753667 672330657 940703433 225905734 542091797 551496946 831252995 212547475 646810441 80628942 211647940 670367522 945176849 390007015 986419607 175382006 744038166 603467365 707944118 763856807 993800580 524919313 777877790 571132950 758399310 106018050 651411738 724940555 806598678 938538525 982201459 875486619 983583642 569848272 703140412 419880078 990959115 810837174 948642241 571131946 921156417 346155805 577427171 776591466 880303177 137767001 901576683 697848009 750922255 57370354 398336023 870997768 906889631 976701338 991788139 578000365 962746197 325148737 939225426 399447698 413960382 99190980 403131720 611968920 824306538 211668170 393124441 774499431 896563901 981778647 987180360 353682777 633264299 623076988 809266554 923399459 971961549 604499000 913220454 32694062 957343085 622000766 831103651 441079693 618945987 146749467 819335737 965414052 965420554 580670559 669247827 219485452 485551269 700196886 857626620 315653230 426253678 84751907 973234788 446523828 783986281 617630136 732383187 688724712 690527541 828818997 938438774 624273574 667012592 712457742 998724023 996765215 998749857 139986245 223421561 668303227 933337472 553254809 897211552 771420902 886245479 22920891 926381088 504787357 667063333 901201264 986258792 658114495 712721880 92985602 904269521 251300890 676518952 905515529 930295707 575401129 804339594 403673399 522630970 581737709 767503577 601946702 677251041 749626596 770181289 440538343 801584443 954451992 961630361 839701217 858884219 220310490 821872637 520910983 707755383 814674169 914584634 817929170 958577510 392365092 603858557 886619867 955166225 802630360 954039184 322719603 936698072 654177214 906378174 837492275 989100241 445752263 761539092 320108913 350023664 538513306 658388213 432900099 560157751 297277828 559149396 5557348 104686290 163552700 807833515 941289919 991607567 633392593 891408984 284571395 568817889 481571634 672226915 872679292 875000519 179956857 219116149 191381759 218732493 761187645 818942633 955077406 990619394 278413067 784343330 594871375 705589110 187207050 295399043 977575718 979491012 370804790 405347257 575651429 731880966 22317445 381995604 641867236 690045085 696072563 767433821 943804766 992224391 594494624 622051001 240322506 374943096 871929905 921340846 317588247 826617888 755544243 759010456 183263042 808501990 341431032 359310953 71352212 964007682 471008901 923293086 291273482 518636080 213838717 294373950 562321250 717115975 384800294 713284347 75678870 601173377 492554366 893162704 296545664 977350497 989745741 995580281 865195638 982671064 884781008 990933621 99814809 299121889 895744546 902222062 323839281 417637398 185057621 620899046 245893713 675477886 305690758 322492044 919492846 919550697 359549289 673807885 640959427 664886976 751963502 884956584 327054063 901516387 717606878 737339321 978741778 980707012 773607924 922690675 721305632 864465994 115792202 529418392 105067646 902920381 160104913 198178543 741552983 940290987 539379432 649280667 165777446 271692221 328048118 546749251 921190813 943615690 506155308 988690362 536608053 585780885 317469353 703870572 339390810 535224379 913592542 986310606 527729099 608735801 720911424 983569756 365907046 683127999 737345307 937498247 728485126 941253761 851839400 860619770 605728090 842604473 310984461 837300701 458320978 685628491 230420646 467227473 843765621 892901908 565890455 991303612 185891374 765735806 176886454 546180507 427020137 690975878 519661534 828536435 938153087 946836878 512262370 647186351 150215268 787094365 793342693 930867702 130484042 960129568 106549735 795297255 463714408 944660953 244780160 274117980 172768202 808133797 12850828 874751657 635383971 854589448 136015713 261379717 570137252 599805915 495045046 836083231 288963238 679769976 147846504 756708733 747431022 825864505 160056563 793590117 601352725 907009665 854008496 908186363 683876933 972191189 170447243 868963415 726932520 764465611 538652011 659743558 296608217 943498920 526233994 903945019 822697568 867890493 440372980 665666220 161415071 489440003 243838276 873753333 737711194 779823383 256860408 794693602 672243415 868385216 401015112 871948099 382081065 547479664 584169758 803547543 896167122 962028597 576122698 682118777 636261612 873070309 50385006 502391977 812826705 876074568 238089054 557784001 212640625 245064189 385521480 832595390 965339018 972866282 312779430 969915621 128617503 206983182 916007698 997410521 579479254 828694071 753481710 814319033 172039394 528882668 627202091 879114856 549645666 692785656 54876653 225300836 413204664 918561609 320860326 350199602 226150915 230588322 671404326 962823636 774761592 874918556 514142641 648042141 436248199 502750807 722730305 829536658 850887820 883217705 26439565 619858386 125170511 930520959 708352565 733484091 810782780 901464935 109121534 249690061 859724799 991687137 548750295 974534769 594150537 682332800 293784366 919060533 126156164 181430820 435778274 841481215 220104291 545257522 846980650 929984823 917927701 980127928 195957816 682007456 65271880 371198056 930740084 996669331 254077851 465240984 373556995 491953192 64328799 615550467 162038540 898226281 268847534 815373042 262249229 671378824 182707756 213512525 254576271 867812099 200258517 709083301 866016154 924375043 864810470 961348434 657907360 994065547 567540720 746319844 301218007 822174888 280293287 397498081 87076989 921447373 146394948 988746181 354842475 909609770 218185627 377878232 38205856 892291764 853956266 876828806 68717639 806386932 622559146 627351880 485020347 550417152 603051714 766812863 313836481 658689141 454836962 960133391 100974198 787803211 980389230 988528608 389955869 412459441 933939404 958625382 334773114 928279163 208988719 873899897 684966977 932953951 721187227 862826284 173133721 849526458 239687610 683972225 533766430 640665427 885999057 891772560 954768431 998181266 139377127 914459163 836095691 898640769 311343037 923544293 246773746 706591582 323687613 354427829 411531787 511179014 539947571 790709166 166195333 721884372 159209237 625395091 792356890 834486627 769484575 771678970 912722142 940273600 92122110 516119045 602115497 782232690 840812492 958179370 130665491 627936647 905290793 999435190 897358578 971617991 939466040 985979975 779408744 835647947 363762673 571884898 105689225 821634930 322178076 591869977 675906740 990928818 376425756 862898579 172932236 414326300 674110019 785569831 24170833 997200836 335297663 816673968 759202697 816785093 425179896 708394105 607656609 966812563 265210468 567704270 996794857 998181432 942059017 994323831 445252386 630276406 918704202 927353128 44602318 582365746 769374019 825356881 607635477 912022231 549681544 558358971 310286440 865462601 207752634 281553778 692575940 725469875 415543395 764595656 889731896 902602955 860910817 914773842 285741068 816808522 888934249 957046329 325344028 831018654 198477938 591035129 740699714 891878071 397564540 709725784 393950018 450447751 35044064 570337412 146323502 917887102 708564586 998941563 208344089 526333350 937375761 973615992 203111241 500107381 479263335 830983318 108832658 676505728 571380083 888103159 395984273 784441381 472520117 473021031 729518949 841955173 925252285 926611159 25209012 176953371 977436937 983370640 747804277 974624037 763913160 780014759 996755010 999582173 288418846 679508403 946081113 999806707 947383068 948075139 83110125 114326940 715486226 990915435 933998843 980573823 729705621 879604744 364455389 480789718 177479294 467930755 156359675 911409262 207707439 479376701 485952083 495348906 819534163 963002241 431724728 738800270 998437140 999842274 49089859 795894078 481545217 498145950 29812793 238175971 121925621 564456323 837275795 891324753 683617868 985646971 667691913 758021059 524160613 747455939 779076009 896346181 495511247 986514305 714099214 849502067 217721186 537300577 444490485 883459885 604912030 748471372 19364959 74190707 45857256 816079392 634910872 676339129 813084686 821155697 109541632 319265024 999070729 999387296 711584680 773527625 759671461 921476954 721703433 932062116 702611416 988858307 766301919 921488078 343615547 404439340 781405339 820359506 46584153 891520161 371346628 913181775 902562230 903876705 683614747 802993280 483321742 825754214 534085195 779957431 529908272 983517202 853271553 901769842 258527730 564005571 45298743 408174199 213644869 419878607 199460496 495908252 962492401 977078570 677266333 725746056 995978931 996085352 511762483 875905317 887448881 912570008 104443137 150821543 274694738 385908715 391756233 706925812 495707229 890358562 240555036 980436845 745157281 792798278 780970120 833825118 872319983 965696423 659550070 835404069 341398248 716485797 556151116 986655014 372409331 484029244 168320232 959729333 427872304 819746479 561492771 999177174 918227735 953518684 388846986 745567879 383131901 692965571 644455331 816473697 463908119 686410074 609977046 830075520 144136650 928587609 396805623 729697340 559130564 769287948 852865652 904331137 49012505 343113316 99976449 899113101 728717583 861571526 297880028 574949888 3778477 907350358 175814061 470775587 43249141 150514096 128677478 371932598 221734343 613864908 354023396 703661427 631344573 795511057 686856383 714254685 133059836 508231098 125750449 601455239 627273300 665802132 713139522 995918117 476220908 732160446 897676080 992325672 510296739 527163320 284525775 891066980 406543203 559959279 992057407 993676167 419399544 605938506 598793477 627510167 948561611 972326143 188545069 366003312 21226889 219163458 322074647 627899654 954294749 966149490 407666847 877005095 667179956 730703959 832813956 894560631 336314899 436601777 666524554 905231515 323019300 896530548 607395271 812365148 263084868 340101378 735980198 755576704 98520477 694826935 164961047 431887433 388167603 488440442 617446293 911856005 712621662 773092048 355457111 399993207 448763187 884087442 659436074 724586522 571772681 616434627 220661362 261370648 881888140 991190044 692847577 933662623 711957260 865828163 108254502 465892318 237842873 748584277 611448145 987698968 393199624 981910514 592572377 875684479 518810296 693325508 695138306 972948481 600255823 881859343 443105049 456648660 296809072 901865109 915707515 949664816 380928985 580127602 435943702 938261613 275395946 924079647 341654201 909283092 841979688 907342690 819908696 919543034 749800485 947151657 348897938 978971807 377765884 961032673 901373069 986965257 575309710 753954144 672196703 686669113 582062645 677350359 284530918 317957404 294501352 903519735 289852947 461591964 332550721 951162171 187040772 936479001 289202149 331954271 722968489 951537145 371786792 397947052 628555235 997703295 518027231 861046163 538618556 686277054 596347154 901091647 613407239 663060241 483689352 799309177 558362261 621511774 846737997 979038328 835142874 849378137 781710467 915824333 826834814 926292962 600335765 927595620 267274416 982244158 18825560 331881046 904270353 955028284 448825803 789306888 674152319 984631159 469857374 989903862 440807840 936729585 629966310 963312597 320802591 797509590 584601534 785406622 837352908 974934161 936982055 975971912 455799594 683349119 788401773 857325967 656273797 812090310 354015334 790292172 454673152 536149920 788132772 882297224 253924285 587321348 855936688 996416986 478083272 817647842 20512346 222656751 680056054 699886030 50520199 918526646 466697416 577597829 435734474 647527208 98341715 194518435 112405792 529412982 635881122 920905232 543731393 572560895 757244116 767985012 332252248 596607829 656307501 660205588 836759157 840579305 728192685 853822640 780097798 932742903 822946898 885644611 823304703 829324645 751614351 854850345 195969331 367574028 893193993 914708416 199157933 532880158 317466001 772840043 871675151 903682667 82524356 663087771 790354538 818985506 207201792 584172533 747699512 897320231 995281642 998762076 275543037 409430518 679468398 787778135 408888602 677629996 833979319 935695537 777208036 840075833 438560894 585398801 503476282 714030538 338223942 797866790 733669014 856552385 476145596 855452284 162547430 751031594 427806790 979271553 876815881 888026539 74835095 792671204 915222240 960020556 615863912 985858670 498734929 524927049 21968824 934736403 333984825 952083887 418040107 982185366 608324325 930973890 139520596 478514541 386684273 717706035 145068676 312874815 873933846 966910788 578191763 757717584 576537208 630446881 675527957 878094246 130182132 650155271 702419425 797444200 808807178 918222456 360683854 675750840 649502070 740296898 400662563 629691520 149232890 727906143 19545449 113564886 696435648 697399721 225148835 881535280 9809818 734093133 364268540 519545321 977760727 980019485 846384905 925888034 16536817 697932271 426271273 783611708 345015306 662628361 489666572 929346744 540650559 730069969 100572249 664869542 506555878 996952980 551670240 834131648 815109677 979459157 437000376 534409192 856507742 941222936 339378069 451766554 299883175 858611954 196674507 371051520 334703976 397565162 544658381 842807716 120715801 739233943 258155322 304643967 591459542 985050430 270586820 292856844 39530475 86069052 161921296 997354974 782632817 990452531 415354019 796044205 548013563 635496745 819076163 870905082 862345832 944318807 823767464 923660444 845212637 922551309 881906241 955250969 255195374 680641922 889668421 913457207 981055130 982154790 952697970 994567879 100127242 986378036 539036050 923025385 761767137 827001998 703360408 901688568 244620434 890963981 849231788 924853747 800106541 993316290 312424839 941188926 55744966 414944308 704258371 723381987 100912596 138212204 139109621 295036585 760717137 828570998 122553906 338269831 872308397 881451538 139167098 514602546 847594773 906788439 905698310 983499286 18612290 607031307 389737936 485143937 356082817 698910169 806966867 855047208 340153920 883673472 591190032 749398438 578380828 963248092 367393687 719605314 154592112 907209699 802690290 956666350 55764538 428590907 442388174 768363639 200144127 887140295 373173821 386439463 435099601 822938337 537690615 608347646 10097514 141844349 597911926 905665169 224672080 665200350 787235949 944624519 644163717 694187645 837843084 886677873 462386095 801381635 177612863 255993970 206660779 272285264 896866553 939430619 614587349 803491528 122208831 226591098 74552458 972775220 491814989 636060781 269834730 500599565 713029584 766047479 291531592 720905930 638965214 844309344 583165147 754277352 727401018 955039729 748302785 807335547 448833274 894795357 448795470 511546451 396765068 726490961 895077557 905925109 912192245 962804252 927758470 956154125 700609536 724364658 297662240 564808185 145628322 701800714 620130976 775830771 765134437 897635578 596147273 749005269 361586918 449586991 448695597 556938137 38661698 819285325 231316269 415326943 697966883 835261074 379434739 477577280 582251421 605961696 587232046 608807179 964483328 971452171 284291584 927861528 648249068 816495614 309659456 404281071 619475259 644634742 281254196 996219797 879541196 939163201 707016042 964765989 887115878 981419377 760997136 987242979 913444998 925154210 530991008 977360440 582607835 885280732 359165250 994053547 975916601 980886143 160524372 525548743 591356683 930301313 635101148 829121776 56882110 827899459 510758118 771094938 697646362 876025586 185959841 821220142 247035167 423338161 172646217 487470774 435541882 645832728 807165174 929882723 47705897 322202652 907080726 910238393 489620352 553177546 590129922 999226331 531781077 811394728 869051008 892784639 502726925 883134430 976642963 999016045 215070633 485050347 277788039 879489976 225862262 685714033 968324702 989336399 472054360 757687427 164627135 593675977 186110006 398387366 878188487 878743532 980651943 988337719 671774045 818232327 758994351 806514425 293068011 485754785 649516045 916440652 477751862 913545060 565913042 770161766 97308738 736798804 29884057 79990429 751398307 880485354 681436530 991243157 331536048 710667849 424571357 876856294 60373641 577362840 309323714 718283243 561755631 611393731 831337573 956747985 581244330 846536833 315551592 416702566 113816238 606426118 624433720 907690689 65194714 812348140 519280329 711834061 982104976 998942262 649115585 813310054 590228705 999300884 485257100 556021615 656172876 777408920 110488321 163810446 216408453 733754736 729506952 804322293 397713749 654423466 196506684 845704704 41523966 340454732 595201613 658828025 834097203 847482837 429915949 659024690 559340519 725187417 604420611 670289206 131146227 329355883 227724260 627928762 278275259 849197045 814300875 905987623 45175193 642510732 714746780 854724825 507287668 653426707 149090925 619151889 834010771 885042269 963080718 977908607 395877857 636982038 953567834 954644742 90073523 258411659 22838379 469557195 80184251 293485699 602199647 888548421 321729626 539468540 131019681 792321079 717108563 843535337 894111398 931503508 245557346 657929709 127625371 789746945 537573239 624681927 258064602 712781076 749238294 846497100 910481940 929198311 152952252 205250269 124733899 476835145 840570208 868168919 161843362 855139844 526914277 634621215 702055193 931840490 892095781 895687624 245967081 283470028 296514720 572190799 441554012 464999328 258332154 486617700 518801450 907177515 719961436 825633198 792405744 900376805 303606587 677138331 622223148 757827269 688536378 708169024 182857700 602425149 172935554 400286398 405056935 698646013 622850803 841734852 958126186 975682943 686580577 865756136 331813909 594022538 356215689 839496289 916929361 920330377 707787075 815559857 509136176 568177264 835479761 977441754 591316054 910165905 478488124 883288983 534714482 692066632 637931803 889045019 985932832 994192625 911549440 978031303 59697097 406397743 565273036 731421518 623646761 635606266 263339995 695374309 482597986 489479302 254921237 566849424 290377621 945846798 190955290 725890385 782150143 862074855 260450686 776929419 902681097 982435988 88874565 119914725 556978887 693042723 356122816 693611642 243473499 581857832 298833656 392357809 480190039 782849950 944565672 996704659 941108288 955915355 365898058 774703446 97405023 783782684 110863632 805610741 738534562 989192506 428720074 674585279 426172778 581820785 772304850 931719204 910312031 991386997 259276384 982609132 742797637 763288416 80898960 514816716 465819491 784217769 745957732 930136892 635660499 962138791 204720197 720697455 773873479 907250441 359794049 593567269 892995762 923298379 938399518 988147211 766730070 816714782 997487319 999692434 161349691 269041535 450340708 791711443 13619378 530520995 212230344 538918873 6628409 798609637 256630450 376536780 238038819 304637353 753120363 970688493 975679298 992915481 800419288 846087062 827448313 964085269 914325038 966456450 951782826 972316860 792957587 925498341 682719072 905515387 600441745 778647636 231827808 627579909 688921696 924240618 126227182 607517886 122972247 281296322 113277918 511776548 945678862 947226032 998407502 998496749 390606675 539462758 281827704 734708662 434733423 438033715 864978836 995796884 339772616 457177867 875566519 887441751 46626947 444310078 727590246 961544794 816259109 924887298 915539564 951264924 263935738 376240317 211550715 362296344 521829604 847509223 210513103 213542748 286404469 384183787 92514263 565878093 887043585 903647420 225251380 992666824 263035440 359742868 872195758 917174507 228663916 880414793 491410706 732326814 685590839 790309520 498802361 538458177 277540146 966444193 672743840 926606363 967146022 988892284 634956167 823936796 892594701 908535625 641967581 838286864 614517640 789255972 915959232 994177924 752207036 959789941 798086735 844398140 736622428 919374118 555709253 711753560 360843043 502722222 260284437 781894218 654568455 836475021 944600230 950385511 798582625 876140025 100133592 343757260 956935295 957509040 83930708 675153012 739004574 933745354 85278687 963503090 209590982 749206587 595572228 634200019 710202913 799750468 68143132 170485615 772736764 944058375 883090133 914882346 251626997 867989054 474288354 963505476 648898816 913563079 481851645 767120827 627515064 779185907 147788529 578654448 552635630 937205273 98358485 771682036 66275237 815882699 676382635 948216062 616849589 739658628 482354100 686240747 358291277 695223269 141457640 706398034 108613768 741829929 909738339 957653146 470498997 606735651 230049299 662809937 565560126 656570343 483944415 522732311 99088106 548332608 460645488 631300211 547883065 868570427 520453614 969490067 887002967 924371349 899259035 941038317 609407107 630867781 396868044 439030737 352581337 950441197 633419201 986148425 151087373 284583610 532988145 819915572 920947298 991044006 317928067 481160261 31663970 809219782 905681733 968050021 268129977 946713170 895366788 924007407 757530239 812177573 4056956 691626114 973414327 997590068 712323567 867896530 184941496 959781917 613141581 660357246 306935687 455486457 591363294 934078124 972613501 987842445 538489645 720327002 847988687 962525132 944816994 948533448 865802921 928767891 2581484 977574418 254222315 771130972 333764332 903643093 788930158 902203805 435419424 715431434 663110524 935729682 715596318 737461721 650352567 837073671 56389624 984445283 661054231 872709755 432379693 581083770 650989252 973123467 853755947 878500554 777906620 851203135 181224972 239837660 831019471 885057016 171367039 903616598 865734484 967411393 556799701 619935383 78206975 138059743 10389298 442535070 188045704 405585374 183759491 592335751 526835419 921267305 736567202 934749497 322740666 739993311 989560371 997667599 612652889 657124577 982066108 998364107 545125594 785289809 317319216 791696197 943420707 995003566 424329737 445956933 47382342 607105632 473458866 717421167 834229057 837523948 448586869 944080859 699351167 836119089 242763851 453018097 407195658 568772048 284300156 846105976 175620290 811385987 241387217 433706391 518863731 639831820 366993584 668557998 665348976 787139119 339940926 709178782 204763635 390840698 76387696 681532798 821413758 831799054 470781834 566958135 322282145 826472386 739828155 812532578 324339000 708758074 657692105 766145417 704717755 930489428 886770972 985353809 722439552 865385879 753137422 826342918 214031094 947510786 27675421 342232032 909416031 939301873 836139702 993074921 961700721 994335555 308798954 484098964 16317015 861822451 443055521 717829774 53318757 296686378 166995886 469517304 745160529 791986349 346824544 385673385 357121101 747704587 845871953 955348871 603920781 789263382 848129641 882570969 225069759 275240144 779274327 808701823 476445144 537575358 407517286 782971936 220309627 935330653 496107201 787461364 116669224 891241382 442951833 958493348 37329323 636193485 639135844 649729620 943962941 995239368 236076107 841321089 254876384 858370839 366986218 956015873 120747535 644292802 942061645 979144757 569288774 658325143 87892464 535656670 282998137 724675396 794246321 870296970 637536720 969642979 930929536 946641806 664062476 790635519 696606858 717567785 636067402 813354002 419191218 922394517 21024213 990532026 465498971 465852423 945880404 957108059 98646269 117591221 247210207 805546309 675918502 686007057 556113620 822574945 440390621 496740372 830440803 890374030 16359198 121050206 397734085 833132102 453849158 562523041 386880033 714791818 92947606 126573591 874135106 903586614 506529912 860277094 782234495 984249267 796179196 866331538 108793035 494217291 813766050 854106962 482052853 747320095 640169734 658858152 974508809 999680786 507789912 676853912 94346588 426447544 375048352 528270691 134391666 907212010 234062099 364378481 242343184 959453725 946610169 996904999 19094355 584031135 12943057 111257134 673491581 772617138 361821625 976890317 533741272 809935398 948535120 975468554 185625057 717516871 238539258 916479995 309640482 730021231 304523170 370450818 339285413 905355451 166723156 591217970 440154057 630542078 137604148 386570701 792552823 920092495 756820245 901172953 558283143 910043036 688177140 767929672 757770832 839513117 566227965 595361093 100007676 103286663 34167093 375144795 284383949 710459696 329451870 837540170 332016078 909182421 662535982 899156148 584802496 908955970 598038631 632309553 637591364 771167083 549986377 708250705 173397404 457657489 367030290 648225979 822388683 853542131 485657281 610200028 52140943 815326889 916491912 997632844 321241455 547129622 859911546 946171254 119443724 560632407 431421679 466303291 615506863 808474103 809378951 955655469 654471048 763440193 711466817 908226207 144244396 196438726 120843689 308392753 721717343 913907075 860772357 913107537 862141835 985902283 443659556 675639436 368272876 895401549 511753858 747119667 571948851 623708744 131318800 787291827 854479954 867179851 54141750 101533956 569727882 967134906 996578501 998052768 754846948 757086254 969949643 983351898 881587524 947960294 753246673 915550679 217027584 917024871 743443512 908207240 211670863 529726301 149321010 983530535 605687223 675594559 320441740 402604899 458796543 512573045 602879245 824821331 320481800 698544915 212724189 724701551 627228557 745518323 320874973 579698668 297723208 862269525 804520537 919167531 674414458 952946554 22806753 961200926 563754740 643310229 303582178 978926627 443790546 620069144 94185989 343457882 47092710 960590058 32634765 60002684 473283012 847858029 272072490 340889716 171884951 432660697 551601907 594104603 582378739 662440907 991510220 999852409 13694325 673470789 257942144 846779087 264283048 499111837 206631113 928756260 583958765 720597368 887166109 971057170 836411111 910039844 206853460 264623551 461512504 558342605 56536557 143816017 592307747 930193123 189811479 363714905 42555023 161578231 239330917 782178062 788351023 966506760 726396595 850523119 29291550 65183903 966212061 986621011 523929774 644752788 138328486 917730553 929301192 971000418 949032664 951998322 59127784 957873680 4545188 558346015 223733780 472581063 839572736 954666350 125040770 423869777 260746943 327588062 854936828 960319401 898201832 927125031 110318654 982946863 576932496 719984583 719166500 957583296 108877902 844633631 63008043 357460793 387663784 410424032 401594612 941607040 350435617 867218660 358841129 939521907 677903091 869865742 398574084 999390972 462203994 987209153 486012270 573382386 42381525 70487421 384271496 739490154 422949683 563308888 953497473 990478896 762927390 856921389 874309263 963994563 163502076 277719952 170842431 466753670 79375322 464463749 596956421 624111158 413458862 737892892 214054044 739915962 626395446 896220709 890456962 962711368 828898099 883283482 315858509 893718172 836382658 944492757 325584028 610808111 999042785 999939709 261632117 302711364 999932746 999943699 979844496 998325314 480855085 956801416 151367196 988093235 537336753 661797751 241307062 969580661 227560807 354034261 537522501 816098886 222136849 730821474 361967019 458440383 53617629 345737806 166834148 716428721 932908045 978318381 70840153 604845581 853864513 888842432 286878227 487451249 541692931 962898393 382194088 769376590 804470279 938212009 647094380 928664970 146235583 461269126 871434760 937402261 521244780 576369696 166994945 989582510 613466607 656839603 650081530 757767884 245536984 691324115 342421102 775248772 481100786 527504256 530088652 927941619 247726227 447671537 395987451 934216178 891952638 920291871 916235216 970387189 45453152 272634528 468362112 636292722 271574799 670343003 142424083 315686824 893726193 912444064 359388555 905796551 117349669 986441575 785074552 823911723 562756659 707189812 953197485 997644247 453193020 557096293 401132836 702898374 943633960 995481732 543075058 994157192 896692483 934349574 979061924 985990196 149610395 265043211 194439837 939141740 778554132 932434918 980760995 998849971 977442912 994467874 372229242 809873662 818027130 938478574 682012515 734756443 162079564 356862822 75074218 623423374 150168496 285188497 897079041 978065757 459962693 752255082 215327074 765884836 143164597 830016657 318251932 734724634 204207115 586456259 221661621 415762107 820834365 969290561 310167237 582835748 397747048 543521391 88106942 147208917 326850418 770090914 747943056 780541740 183340561 320341448 562074070 812394323 891845645 991909198 355877234 714243655 18242802 800346414 342579823 859270133 728167390 934454435 971646032 985405116 890533478 941134773 602145043 699210594 398868883 737063728 448769019 646289785 874474800 992656330 386060213 496775627 847290127 886424781 638944587 644121148 840702684 881196297 958234618 997037740 790657370 829295001 687809719 688057011 812339583 992688063 890807861 997382825 288377703 549669506 615081376 633852226 201462279 651315435 183197088 385423970 425186304 669733283 505945819 766918050 505875949 540018468 734255458 786373102 284662162 666373016 792164833 798625450 877063160 917265342 130575797 647341875 192975566 441920557 853588329 887615493 46614129 973336152 432847772 576151737 156878920 416286545 968980545 970674796 543809685 856432301 372996678 385550789 845127685 873180605 113430746 300003434 978758946 987253227 296790306 334641148 374657529 921195958 87388369 234664561 804385246 958991757 570976550 602034462 280744810 786279336 980229775 985083478 818394697 876468570 308223855 511191843 47156084 542615902 926968232 958128686 962988535 972322015 896867175 903593111 15255653 24297629 636851267 652257142 352018705 428283312 560218456 741456565 694719629 884599551 850737173 988579939 436845620 617897839 654613614 745744068 588847075 786919731 496152355 967423211 516559349 752682381 601620097 911526126 645935331 751284716 264309291 899574812 508583349 763262806 383743219 855201410 883992307 959081126 963054253 971993204 577870255 732017779 713679101 974568694 503180622 809335086 819944542 994933568 789848868 857064051 407330888 828898774 991452629 991521104 935055798 974404300 531015913 810996558 447194145 484117075 653362049 811107084 359792901 864903532 692772147 996755816 842722538 884157460 77122761 146196375 959146957 997267450 181941454 236635041 329289679 972733954 399482135 405329874 110059681 752230089 977334199 991632890 526568546 708366891 629369891 841572541 474962117 911554161 586426517 845825062 670517460 750830404 452581213 474371103 163389715 383821152 575386560 836551603 785924301 986546800 745915831 928022968 16091225 262954579 143789149 417335933 126815573 537248887 296587747 554230952 893976226 952888316 192148306 668437407 966620290 984887031 922571214 975800137 726716985 932239382 692633418 782095241 669008135 981916351 677071118 822414349 610554717 627097367 738074466 943176197 935048301 938672043 560179946 568525337 459910809 665318889 479456205 884644245 819568052 892271323 871987156 888727838 294488206 363168627 569533652 620368958 767105076 965961987 447539433 846340063 622473508 893112163 262859735 589359518 92421134 817684305 619858698 866121075 311007395 455882794 804055493 923836983 211668558 625973520 775747090 980641007 550896121 767735249 438313663 713655821 95391839 309028590 697746262 881315544 574913124 639318075 304059827 708456694 2970955 309857058 311246069 612335694 246892305 721782536 187228280 799445707 920612725 973069154 868029867 903070112 795379860 833513965 784888498 812078610 778316761 844458136 124905453 674606409 843671102 905148927 452430041 975099733 837636940 846308557 493259209 662561358 220855332 593557835 262454196 473735159 405256438 781933034 491034503 991007138 190114036 917789003 736455337 985090838 584562937 851514520 242023403 907321875 979574703 995100281 865119601 887750190 858745576 927120308 415659070 889430136 533745055 934437295 836663977 955883839 656920497 711435411 525628710 830919896 609817530 691586655 979610061 994205762 594832510 741727464 49481750 891043488 361567961 949861293 932969835 968860947 632610466 975875534 195979897 911023566 258445491 686061505 761941196 992700262 304499452 660126200 891940282 930375740 715068902 734503634 599813690 686433832 755328907 910250073 346044334 755410095 640976882 935913389 476087672 986801693 739586254 934065685 369060452 642965197 920569135 985727756 956999518 987399306 945826332 979718555 418064794 753959259 582387230 788762517 322451583 586220942 511577847 611803741 806761627 838528396 775034437 821370350 808821065 849490119 176181101 790103444 863852696 952808984 261910940 456624675 546154158 597045346 470520667 624604795 400659389 819559666 954286775 954995585 879878552 910168713 498902964 631670467 493641928 792178797 665263429 778440174 510344088 629276883 411746477 472042585 670291301 870697950 487452351 728881347 555502399 717783120 105401440 627964174 575586846 784917682 271130611 605382886 610269224 718884463 280198326 290594690 340048187 683861454 959543882 978634482 564357811 986269736 60354782 388813520 280660597 621068042 197629587 703903879 256233383 576322376 67002619 447253958 22103466 463662198 331147577 578791903 828538299 858953786 100154023 543574101 545443399 545676094 699651586 791368076 405720727 453455538 336138623 862340158 318760084 517817728 742068498 995451067 263160192 782264158 785652872 948631188 333019236 434110747 375569090 591168104 920707068 960394788 680329695 993474113 434950061 570810926 967981837 997110806 372709133 574384221 813112191 886491896 17575351 796539199 807683961 985838267 492192447 585405210 244560114 748769821 943790767 992438915 586505003 809850793 545484773 700517465 412562007 953858554 406767072 493965397 728405127 993324549 34681653 250165482 238312247 575272606 199593353 975399424 95690600 225304302 59845605 529002915 647818250 722747341 846521325 935080021 547008797 978159158 531116449 666679193 905658032 990078567 990186853 995783139 567524689 665242379 667179532 947923258 146313826 659229222 19129373 428948378 787669344 982940877 936631656 977015193 795089255 984539725 238359381 452323002 423784155 665359825 428350035 627389329 811495924 932915991 511677945 610442920 916633920 948137490 74009208 481244344 941925105 994973441 691694249 809112012 156823917 811529261 369867386 484602113 384894521 833673060 979054716 989955929 62108550 163662432 543427501 894727959 5091977 155458498 958621284 960906606 420884808 530560736 325088674 814530347 352619237 576002103 789107441 911006902 982045526 989059413 293805735 649541813 419566552 691718972 123705021 568064510 323067601 800791865 398362031 918446865 433091442 695970285 418393359 622836724 518435356 973752141 552028421 578197109 916972144 975442273 411981831 700239786 323799951 572001583 55787972 137523188 791976131 845649479 123390470 478646248 80985325 841036618 895815955 961317985 617822725 757079593 685360124 763985683 784981279 851617394 237029676 604069908 186683723 194475875 918517281 991488301 930129198 997347060 877475078 967098599 924812400 973392378 923624262 941301771 297438921 371216354 477918830 696482775 562879703 946401796 134338863 647209522 597467277 705377331 307822752 746853975 688825379 792464231 901363948 902292265 401319005 949225355 96042469 519017086 441708033 455064527 486122978 557899003 642146564 989662891 757402878 899896286 542696508 925797047 373760237 820417338 758192444 917468772 263766107 763871492 67109659 621150439 152521510 806929341 461841181 978545384 533454155 665348894 414460573 466253458 174459886 649243496 586893430 948723049 355261994 450298394 525864071 811964933 501618351 544718758 414544683 466408462 197582840 713411098 617067899 704716687 247152717 861571330 267890100 767831272 937063655 982044117 688180875 893607013 702078471 720293233 763841889 917017363 894577293 989680234 23818835 401930136 756733910 869311182 880136528 922500204 194035144 313151888 852523656 953784199 922835501 946895231 834248662 994844098 771212031 812626105 416219635 909000154 77429596 791905632 344449049 901103211 358102902 637551492 694077640 838076799 689305495 950481414 820093754 851129841 966940771 996014121 627313202 846904208 705168206 747527348 988077776 995420563 927139991 970216414 508795840 602410758 925190669 983839201 999774410 999913937 569634559 962442570 806734422 984494658 789896195 855420839 472804018 474808706 349364635 537586911 759252475 914847845 55108217 566770774 258893536 520225010 838850755 913726964 920982431 969887594 516530905 546979819 951669156 955272943 609566745 906775184 435679147 563699507 537766467 668079365 645858229 739279968 842403513 877560119 669587315 884195517 916975534 952139645 666420529 893511145 745856880 972627332 923280828 940858636 842002565 883779388 540205965 693870570 295448800 750836770 500018590 570655884 261562118 397799765 704080566 945070744 276939436 624350829 236511539 676785315 306351461 500925781 234421394 993017888 406753659 785461107 806833317 810728031 10818024 660611860 190520308 564309285 990916954 998000804 81087588 394577208 714571232 774472950 832056414 872295599 174220961 541037580 95902849 702806797 512898466 626074055 118296047 626879108 448305936 540628122 76046895 444346830 451454407 645460166 493940602 657209835 934788739 995168887 364520530 788189749 657090532 711563642 850983293 923352548 301019229 441912057 753773428 810048444 879345097 932137743 232790872 942417683 558992204 653813843 508967719 954220621 627002036 757368507 759792334 866601219 203609186 509377905 439231207 686015011 477975699 528805447 401896036 873618455 291095399 598033772 738944489 938335981 130067744 907724879 651390825 936743572 752892634 755024507 175352259 642113558 182591909 288772381 524408244 709711052 921719108 962686743 250836722 351160349 816186442 875395530 144651403 236359923 825595596 877153960 812741928 919388458 762359048 916819726 763942497 874594764 601813482 821865798 21596982 553415115 901513321 904622220 741065304 970887367 409067973 415034009 738190839 824161631 431504087 956376867 653310301 923854750 202021597 437006433 894284816 968771576 408030683 696538739 806350970 928460109 308076358 324848161 347127899 822191449 742608723 837979421 257308271 282862059 714431444 743482504 237671548 875564110 308544390 630319935 270729447 974138941 642354539 991985010 99876310 770346254 356563936 656121126 295386975 748249922 240901405 617964690 873557985 910413608 267935627 288065314 383911686 742836243 640574728 919231164 261095807 558211134 927702181 997797890 238669471 521332962 363510324 584170535 313304203 818431971 351353113 807292915 335638213 763228286 512655055 613991421 541214171 910326113 531475894 804044887 530115896 591683522 264118387 807700279 758735654 794080467 701130212 847203405 416470524 526076158 704324948 942129176 804867260 918681597 632494460 643329166 331376334 626199683 72965333 173914911 627654598 689589630 489621837 802403273 158118891 376738028 190434932 629596487 656884334 701251093 575583130 860850435 594087463 789627442 777573501 811306232 567815708 867227467 875670607 994491737 642998339 780769029 560000082 642366260 186693638 978081759 178445056 395302766 969975610 970260435 390100690 789314464 555069248 766899782 735028949 830352557 752407288 906863899 834259208 984703752 341589894 963956583 40065738 925216006 434223071 592911552 272550694 411800636 104794931 121616177 940265577 989975897 713535307 748052060 589712674 796006192 499227460 756348228 763169375 876958455 519276619 797684543 563183426 821270998 942374497 959751541 949093171 986710394 968256872 992064299 160823499 326376069 612478672 914940515 21262734 949577853 699353145 905971470 163552543 431890803 749527262 782511101 321993633 933896169 445605822 897378389 275241697 631589346 460434984 782384494 331295751 519998609 640203768 900259515 637928787 817606195 277294925 722209015 903541491 941661113 808446319 906607720 827764175 843161946 468535484 783969310 350566246 681548309 160728901 502572675 380914878 622538955 78003714 835322417 502729487 769564736 946599462 999811874 218684949 908642011 456624647 476834380 569008725 974602402 412590869 452026239 279900623 867150669 242933474 944427247 39094719 291427973 785045962 990694252 424595136 646651295 625953696 715484574 38729625 695517103 484053310 788270412 889118064 922669342 758385099 893776793 340267267 721745701 427748324 835498058 815383017 990241911 918852387 989151030 975828070 995953286 638091655 924005267 769308607 825599242 663928944 841631513 505576207 595076512 988974656 990397316 93947255 641648063 281884455 949262541 453792549 517959322 797236232 876822029 448912947 749807478 410072643 652776827 469205132 656166356 910300547 983583147 808588199 861988200 535781921 828725325 547776071 825742649 157762970 489285857 358466830 624568047 751479619 877217697 366508542 537628654 797682588 824600210 490364735 702506937 911128740 948938661 477934242 824611597 304207590 511402804 906091632 992984365 267060252 306023827 879921060 932399918 265555660 540338300 509548818 906813539 558945000 811965094 364897303 599337335 33536394 528968225 811236815 847732799 160412818 912520438 117645011 235300023 203839631 275674645 733320981 763436784 338127977 787180045 591598712 597920792 950282623 972329639 481629660 861019618 216029361 763479706 72424327 206980465 58192484 529229446 560149745 948777612 17541392 921237250 585775405 722233295 767490612 807250772 849956033 907732697 640644877 980444671 416215399 754453942 279636948 671109128 313013667 566695436 946952702 986856787 731756179 830816978 631451073 751647152 178752218 442128885 754756514 903291381 37011861 763270606 803984678 845812896 454176539 914562443 534750003 848921198 252958927 797873677 454288231 536308004 960775147 992706782 518949503 930123685 113720247 540782586 496877791 865118049 310911605 890614712 755963682 807913925 795772023 913018507 421899232 584476843 930745483 956684717 262059356 850940148 644303940 689116802 707172768 933511168 290032208 315850793 289883666 375809816 944585924 961576362 529001469 574883846 639382915 844209984 619515403 884806585 398204785 720402759 126848178 272065069 671000162 960907771 463700826 857408198 230232056 287191663 254013088 716766747 196486953 852577749 549153581 630611622 107798445 364278765 209675553 802584714 504731310 598655448 182021011 733736086 921314087 992203904 611007163 861295467 889283411 915867859 142350758 491736572 962956436 996858934 811464024 905637211 161255818 777568024 52544676 88452769 151372856 369097063 932976970 959111036 442144623 539085197 231158214 540592541 972984784 997727668 521389954 606004892 512729183 556350197 823195255 939629202 398261642 545437272 584749035 988149963 597047158 708556328 365232370 380247025 720586617 820126328 214128427 241851087 99881094 182725345 699072743 741122234 196954610 955649879 360242103 724621008 645107703 730630529 613069611 747169243 810653078 852877373 60132585 536668705 941990351 957481239 418942935 936174465 498170958 600872389 872710435 946217626 729080253 743217407 491794501 639313639 967998442 984197448 980739380 996608371 529809248 533365115 681531011 924078781 913657939 926068657 764345729 923268147 173177931 385995590 283495383 905211069 678568993 689395572 4145946 548628787 365199607 445767375 452816869 648514642 365671838 386798291 380290843 821699345 62284950 736303350 95481408 137857620 322925433 373505933 286847945 893931156 467332013 707870954 220631693 453407360 734755822 821334998 888334017 955709161 797492875 841784827 24477195 528393498 34506846 754462279 409078597 699294464 876291754 977404803 572927039 939796639 756776038 930376927 122341388 880179303 528366688 696910372 857099495 910544002 252079153 572508208 981889769 987693405 221452539 793494457 448420718 814961723 368323018 552833464 759698691 929479393 321607288 987861732 281048978 332432823 546341936 694069173 950078814 962062027 221371705 884151641 535648491 790902591 101860441 524715896 205856245 532197491 373713922 557200525 231173087 666686115 941951086 963742904 570601801 751177859 787683464 806888880 628154922 696991646 704159649 834294485 724309367 940357797 280024936 328794332 134849282 679621116 154624676 180817290 766410636 805765730 667018580 813056226 91186183 761785494 778821278 868009268 929349535 977657373 7257350 777595191 934313216 961984908 862591119 874115880 456662487 897278325 579277380 636944982 240507515 457595966 911530785 918749333 450175172 547383330 809735283 968008803 474996423 603632543 812757426 837382769 568792621 655547849 922823581 965491964 44870294 565516432 481669880 943090838 287298691 472834075 153071891 394618998 733100835 770896559 469332671 980942462 806050296 809826736 839990272 954348813 823570811 897731036 82001383 503450744 256319724 940231145 637350696 789726790 376896207 876989760 394642980 708423601 519131909 811545706 963430 773056360 175594674 505871000 449038456 654632790 732566272 990386292 143264558 510377828 158080460 718980612 796599831 887167362 480569435 820902789 540040382 809421702 171864466 578816610 358921832 377464905 563870982 842771144 304662720 461676365 319124023 758896034 643846306 797278912 894002234 994767640 434688688 731805524 234460098 711077760 919262875 940093226 459495975 942899202 71795157 357201774 577938167 661688363 719532366 730538492 632261970 793431922 302663224 869082688 249346336 881503733 796729813 819993950 418151133 588274348 835158573 883392883 750052957 952135497 787969408 846458854 57789425 170488918 361034713 573966177 491194388 892605491 181112925 770285687 255147826 461323935 897655162 988476115 690411791 941519632 363745549 443067509 949175764 964303202 15818662 142727995 521660304 581695563 328453776 832369392 936032523 962216913 189009748 406239272 655552460 684258082 276702377 922500520 111344061 163536770 551144264 914010770 687409257 948494389 626036935 726144456 661545998 820887520 713921296 984339317 133472042 336392309 878503063 954684189 884408493 890010534 932940744 988344878 5241493 922473605 28120946 267362205 515963110 773481782 105005523 860426767 793046710 979952590 645527846 978495114 463693650 760696154 33973402 556557948 855199887 868827939 719368091 851081144 135478000 363818442 774471647 948083011 708901270 818438778 341488595 908604469 13963808 468414099 594042060 804305655 269152285 406324490 574338513 901049692 511743917 763488648 581808893 862093150 955516040 964498949 19529695 51059039 904004805 989910390 428015508 718627381 306282965 428587870 295270985 897536138 813252415 914454635 801667783 904861386 65577516 828088219 234388142 775670684 33925218 433871478 734187597 965305765 702980952 741017160 128597500 320166671 940713559 944244683 550668995 877917355 276172788 583549729 27231987 86191030 644674970 884494237 258084934 261509780 905140047 928235422 713868144 728793381 278678507 336153009 724458069 973139788 943145767 956164639 545310655 879574908 573847701 958100805 242338700 292944591 211015984 770466116 839729178 867678559 952005885 962642912 615278625 692439027 602984133 800828210 368469753 787488661 260327895 568281991 416750236 557285772 343705225 418969944 935187996 977188006 278891614 485154648 798171650 846490609 791766031 980680162 220873032 853738942 87555013 776625068 898934253 994345895 418934304 951824668 653586905 871890296 860385346 996671825 503869924 984354680 455889585 995986967 108155433 410885792 500779243 694501708 368720311 634698215 758502868 788137586 898453172 986769565 883110522 978730611 276817479 385204972 370536454 986175021 872311037 953166465 548689465 910130490 345737595 685331263 634696967 867598509 96637086 461398770 897458668 953885461 858601004 979304417 666430116 961922926 395338786 737565552 793336729 846509033 519993224 792726552 700677205 837842581 846325814 926956769 580285826 628473883 698804440 717922300 389660140 840512956 424835104 665780784 766187365 880805440 711053632 992769649 126860011 136888088 145246509 355473294 9317304 132306053 579503637 650700854 496281499 777903160 376559772 395614015 337767269 450187208 144091092 602138614 635752882 755544840 755729888 830260832 451877065 991864774 252654237 692496584 382412402 604087726 336099520 652082738 457798969 860553788 483703680 836917345 172910671 300051973 94142506 975269488 760621526 980717878 304684861 438784753 543544329 544258848 651425195 983573455 58489425 699282524 166154560 851635281 649331522 934533323 276329909 569944438 955352732 989389130 460662265 888830099 361213933 434006310 900288605 959114166 738803082 792671140 712419519 926765045 45438289 454893041 699032001 960160788 907196618 959710574 58687727 549440611 557815881 588782687 245984545 349170655 142936895 448899438 551730039 590564829 569424557 874913854 91522988 287725633 362901951 655268445 379202151 587293403 367439613 808737035 268742493 352453327 897770363 993772522 860846668 883505963 423169137 546211017 896713386 934277242 878468392 929248525 689800075 721468058 901102137 977591201 472138731 559800640 116285873 652335056 29118660 521558573 988953835 995099812 199255893 439251051 461455202 569564040 925988252 968417138 349907657 367847691 20081121 893610138 845449515 861335376 237060123 759478895 333819081 351516152 461166068 985274688 877171317 947281162 831471443 847945100 953492597 988589631 746537558 878789044 636807071 952674717 306060546 492489371 21002008 49944214 889007385 920470285 952641472 953480318 865034604 892652090 379671571 837826907 942440489 986162822 519865831 700949655 423745152 551904178 125229598 717052470 984386610 987788883 782193575 923911936 223002773 673796890 690874067 980226131 123541537 410220872 216715386 721589653 962355818 987043810 598564062 949668021 352379497 909252704 24020742 982111720 584399980 647193919 691653581 871844103 651889096 682032654 439640243 984187800 497299367 683668198 165087642 294088116 554010946 972802267 457719470 712039411 77672275 877798132 693210493 924796566 744646641 931556524 593065366 646999981 591692386 729245049 896346653 922057308 213571332 214399282 742355721 792615781 728617032 959175802 328103159 442622179 446529087 637685086 644705200 716376402 960611912 977135383 343776993 585693706 245615662 884761568 761035625 907347776 392671212 565047808 467233054 875388807 378551989 754329037 477490195 936627877 191810354 994093193 319777857 735843162 838140431 937686800 637793980 764203588 810810646 923124695 327937019 400626211 188295385 542509620 741304373 892078115 835419091 941531340 527639948 854380757 389603787 498167489 137095564 497610141 706150363 723343474 1183723 735029994 478622846 747100763 471772697 653530258 700968255 887370370 788267814 921940521 167559866 363101543 678389146 840469670 495552675 941970430 801428862 874112460 780788625 830828369 972735681 991046216 940901371 948294266 209497555 617836851 225716742 958184525 903270094 958727290 553219016 590575319 284099935 719437219 552256426 552450015 4395993 118974524 360575776 365638133 470063185 855422411 836840608 880648791 658627710 682603205 545144345 852192209 431557693 978700456 310779867 765197757 586511908 992322585 982801200 997941081 923561567 943852258 521417822 801253229 62507460 644073040 222349486 338891418 808121375 925692039 958110147 987429539 508771079 853768072 559772518 800508524 828230445 932998097 298170313 586998621 226631898 702400429 973410870 987872538 556731173 664659146 916821463 977413081 645444341 914511174 251066424 406701593 835019058 860298030 751036097 852406112 786349303 986205988 205209501 357545548 591798265 630259203 73372620 244978152 688769496 734546669 74103104 111339651 85859676 799256570 918509464 940412182 126939291 256546059 924811112 989428687 737060974 898126588 826181004 858787843 889163686 994639740 809898224 892508105 336781118 904944741 595437308 782619281 483652881 858619179 268167340 415018934 277012948 651809349 391212665 775731820 171397239 544085611 990180586 995002029 300770057 863251683 898856534 915075067 52400464 239394106 991254867 992749996 13538266 199527657 897516532 964953416 870053949 961805756 435383630 828222716 592148484 875392001 891560248 916004169 981877858 996324307 15667467 996084219 506408274 613986926 907857408 917536836 415676274 904777511 814885752 850251508 370183377 800955176 55184209 493121968 751483769 763438139 692663547 818893918 939184173 957289934 428677937 554301942 170826562 754991301 202042668 504009464 536855952 965393756 950035106 973947037 138542828 446200755 333905272 527789055 196980331 265619190 874559578 975066383 239549642 873623538 283052601 451202554 622878812 851345271 874908033 930554391 120990542 643932572 458480293 990095080 524833943 657165061 324239630 554068607 237029957 595171731 941240376 978604500 223391621 403546249 250989795 335595988 877746288 972410318 541638305 673104454 942507525 994062353 476029408 486089032 523956433 821760101 227327652 992666767 165699948 403342928 955807820 992752377 362392373 863270890 359310170 466000993 759562186 971048295 223394514 928016277 416375748 829339671 755522897 813166795 183545167 968173182 990954667 998603341 177859428 571800742 624998305 862385926 507445863 764384188 893464767 973965265 811145054 962309468 488997585 725448476 434331590 461069541 110771227 589234190 613723741 852941504 542801208 614122840 760951303 780605865 602083895 695834025 616479700 676376871 507785053 827680873 917523031 982027883 396753269 444570342 167848447 748518733 931466268 949596429 821184605 876052793 791932889 914603038 658740283 958807686 123446342 447866822 715515106 882175966 201485871 392639826 433150845 716963763 805980248 859955360 435346049 684724702 451031406 733414025 7002376 282930301 499784107 944587991 522157621 610210222 429981518 777947252 629657707 896841120 673122923 705747172 850955702 863053220 866186299 882902699 191319663 492906316 300975802 886772556 921685787 943053219 882491568 921628072 240640963 651512179 840715060 932524765 336174349 514484030 599398894 642151091 337413118 939012944 655812637 668334856 549479640 762658697 799202298 930815729 536694156 744322916 663534985 726557095 377691486 688965822 75831318 346852207 657897778 855226025 443803686 820893407 306872562 905557008 760424608 984946168 181565797 955816014 434396307 652504146 508997187 624745119 147807505 349604663 179858857 494259997 309250888 627083704 154453699 430324890 453943233 555578391 130990967 666580794 393811728 629165377 290541469 681353305 81367070 587441206 671828176 873982360 801488575 849471000 100476069 868812626 666641711 836485782 636424928 757247898 903166203 990138309 688355601 807048617 260883876 614916337 670711401 806791040 967340077 984372840 238966104 336297980 976419705 982044216 327988502 366740314 462656874 615115233 829539548 984626775 961638391 984135030 317067970 983860615 258036802 924299569 109890190 351689556 54983088 195016100 89038951 376134467 575825775 836404615 33523456 903096761 713113347 803571301 770782865 998405313 18545381 434016728 997499472 998526033 556920430 644634823 484858828 915868054 880483723 933535155 692588953 860060700 344284117 420517758 649413889 662011250 139733019 206373006 749493528 954648375 969908008 970179977 263075380 304637595 653115706 893553376 140350720 354938585 416322656 505860635 727923980 854177011 857406903 902211145 814855542 875692635 165152455 631730245 841415601 896346897 378949000 656935879 840110034 998939141 702939871 889814759 817185416 931242211 307744288 907349903 721991869 891609428 651490290 895886374 675129873 847141812 434311638 744510819 832736146 897218508 475671876 709307147 307828272 830826939 798464974 992238037 254083286 419272029 605383174 886470228 226582843 524194095 598328764 891172570 957712934 960389987 905009024 975202147 795460314 936924903 917841182 987630791 701190487 830510787 339055237 550633133 149837861 960054085 4492220 258553875 398571863 769330643 543163161 867735634 50380660 763193296 835954587 958017185 922848508 956100413 467883862 916688656 122905321 973830806 37435008 850296866 920228829 994434628 282221596 844857323 95780604 693637434 387874407 474327373 253510478 893857201 613881560 828018055 496678421 828064388 163125857 616702474 844406192 965989220 23003391 451023266 978922337 981184699 267964573 951868957 619479696 641313266 883913850 956209304 872468271 980700399 232958385 497797142 970386496 977445673 414144947 995948614 250843469 909974381 477834222 954111799 844518472 940231328 247331374 462504777 551516919 953136177 826076123 974267286 928044582 970360424 124727324 859795316 839652965 959690404 990074587 991068803 224674297 927307678 53942112 209956336 204117318 686514927 735315877 807238927 425592075 614954789 830219912 942651979 793161312 827632896 468005850 735701887 535839171 999522323 245979435 671840323 338733980 339160588 682074663 691851755 624193356 704770861 284411093 862211729 775783128 985933659 72080232 158836466 247274578 983547223 237370863 894971784 794970704 932596972 247557516 881982009 621125298 825170169 797556761 811612059 488667930 686559273 172846902 778170347 762386852 853879625 880571550 938031949 733917210 877661799 737804688 833367789 155606080 573362390 541775767 945801687 776190493 828574231 947549608 993393814 265825274 510765441 762627588 812587452 502048803 726700915 708911081 786355115 20769113 408305107 928795729 994480107 544442436 585106475 275655344 883660751 174031869 303743123 24864507 408967360 214167033 534710398 452291008 876559735 38313403 663102717 859315081 931230467 219684535 694987876 910921650 916791622 441976276 940553481 719723416 790199463 409589289 709077668 868634001 885860908 425720676 617817063 134952677 296125548 231445561 750426334 13658304 840149610 797677777 814325712 180567077 505188723 62913645 661834848 932586281 960404640 707997778 832465131 605149209 657291999 549615018 589933054 119735128 565986970 487926761 626781397 874591435 981105468 679785647 729246097 585238432 673542485 352583886 911415030 5541300 92145886 658647128 846165098 86454112 274991833 857000478 857037134 702033255 729483941 572597665 960988210 399193967 884264933 241354496 440262358 385753304 672794204 789002921 879524924 323963631 773751923 1442152 514871735 950142755 962566440 785320573 980354352 718674823 991631304 214573694 619622040 271380976 628124883 973530951 974287719 70140864 686626732 750874952 882886010 367606709 844871612 591937449 788040052 473725643 702843201 350275304 940052662 336273737 686797665 650142000 694426319 78314068 822721933 628144083 711690691 704734606 840869666 143758892 193875406 161718376 547385328 485545097 514734746 723966837 748975208 785074388 956403388 906074592 964581796 340751880 479437110 527049327 801246281 864803180 935117371 138887743 299623101 738738675 946703493 721144541 803179631 355424155 949769607 792851819 934356324 821692732 871068568 748101826 903656870 332798192 908165158 854539992 974488448 979242875 991953490 983460672 997162818 620571048 669518222 584415770 964235681 194122990 515543490 436403408 701025703 907720038 964187135 913540872 934314179 152059139 884161255 150931986 845116764 272201576 590627111 717772726 887284531 574992182 800141306 422559144 492506884 798775257 955932241 877290039 889869257 83995851 417561519 58372739 919441121 342069535 768227293 817897317 864068886 519921581 722873413 92793762 970521653 9240449 336596142 628041181 990630429 408630489 466750339 377943024 814087886 683733463 971348023 41177168 235976003 973892130 989266163 692027167 880058926 692369945 984770961 427515311 788042892 272056228 345290239 236704842 595814842 626261060 784018455 237617404 989181325 89463937 911239730 320893336 615574927 471594952 823732365 449782306 528955206 683459801 865626469 88233383 679143417 92794801 535656480 376848888 948244935 40566615 46896894 900455292 984291178 10379009 194882372 70459614 954346182 900320599 962547346 53155688 244651219 981765925 992468745 473823140 931208241 846177789 915954556 402097413 455298440 590165953 622910926 558475621 608333353 827634782 995472000 817116448 833727502 418484305 652406256 407747459 822525886 869287257 975878065 374314942 919254373 487959678 992152232 743689536 911837090 421125024 953435463 653613315 839751693 843082327 916445227 81930938 983764384 171322009 479772842 442662668 535449663 465164572 956289493 209323314 683312523 770963201 881877819 644817986 726826610 772434426 880063277 238990546 634527247 615193671 840658322 810629746 837182299 661479431 939116060 299248863 572795809 5764664 35032764 633020195 947526715 650692639 955383416 448649575 891632542 890713417 930850785 866157987 892583421 816120152 919089698 383130423 548625741 667040541 896553407 674277785 932871324 732203345 848600000 670260411 675781779 317594672 500714705 545241443 598814387 492720301 959562729 334991760 746977249 655568346 792836424 928052509 941456128 286103316 520990390 389756663 973461205 256733481 430692465 409534265 968787409 334818115 810501274 882420053 942602354 201011636 643473607 33347824 312344076 441149317 625936395 544216715 845861949 564061691 834044060 195041013 601271350 123928502 235960595 784333287 798209679 679494076 992657310 4248267 895784846 128034979 230784386 320988203 438790462 890849671 921129971 991898949 996314082 309788042 949478154 311550712 843297359 873993661 943544759 888706167 972132193 260875418 917525348 577835208 886083530 814622363 930479147 446470708 601270943 855252817 927239654 777088679 848882190 119119953 316618859 199677126 649017716 432992405 965935343 158489048 850057855 178652963 318570166 826604562 964351210 893951778 947855856 190600372 600635983 943909857 967265000 885086979 936300422 669770819 983465353 56748693 592786413 529641678 534956636 836434638 997612187 747686122 899354194 514494270 871184269 931602051 963175433 123048407 166390290 743189463 871236052 388475529 565588838 26874379 272992003 474466008 992382444 347886941 756688697 224532296 850814437 649951596 924156009 834865 985802642 123119380 478335571 546146017 650914078 469295526 631756821 196777755 417743312 954863831 985241100 974739640 992109213 63603388 451429273 681866034 842664593 395297997 834291198 258452101 618977015 780294225 861782563 935676382 947140082 316341705 441667039 403572884 963252823 292013170 689512654 270668665 661675322 199574234 953309020 618451570 646564972 95354003 908486375 642067323 774235063 15116613 239013408 569526717 719961313 534927583 987194304 358948725 409260571 406228466 454650071 630563164 677800238 61067094 629502346 404200987 982514701 932777291 967168617 568302894 802664214 490031440 990403428 461426740 680403459 949298798 979178143 643036393 778406316 929814607 985563071 215917725 584932749 550801754 988803226 26919420 571338732 351813310 755030350 493920437 637260802 283170070 971070389 611172871 858598630 569709557 757476579 414729589 592604136 247600755 410855620 103156935 195922413 349339168 617655208 376298309 629708191 573214773 998374156 106990661 683026476 277499519 575490648 573079452 848573056 153733727 685463201 121523240 965783732 66876531 673479216 811213274 847102677 597984736 989914239 914757478 978781839 823594220 885839290 72702806 884009661 82743805 337522390 118197738 679048029 533078535 918723429 788043911 923501016 21346300 629935691 690424528 745780947 917006694 942768328 703113421 975065950 101345836 967952732 390969547 865397020 460760995 785854947 345805579 794043090 973354273 987477687 163433452 413241784 220929363 232499735 338368701 568001354 678807899 841698961 499867191 559902429 291445232 974293554 775844836 839101101 151285401 798740249 89795522 930834938 507075203 800690997 529963282 622232301 409255544 739466889 107530644 470716368 170178615 256465741 755899441 769947646 578585126 940903470 609185571 906903844 86629719 480899443 565446840 648327335 330483448 892909806 319637768 882697851 887168823 958615156 347020741 820621489 940611430 952041903 640311350 663204889 167806292 570892705 333757390 427583557 566984283 849370101 941077546 982312806 791443423 930394887 637377936 864256758 975473426 979232283 436899295 799175342 438770529 852487440 196958867 781446936 904226447 963747928 879194562 883419123 4537418 589548441 340130501 533239968 834088907 937583463 628081382 641044990 814338776 973265539 922465860 947186223 268866404 461129118 241241643 474762313 332864548 746520908 421885328 789577736 174957849 923883688 833860637 982108814 966202818 977119159 911399560 947333713 114228171 125686651 709196174 743442108 715114502 830805508 468162072 997133226 125897629 161972880 13701200 445804355 783420055 834722766 743619058 810688881 404601134 736114663 732911703 953286635 429808213 876577076 293852258 826293150 415118617 635888281 409818226 471706195 700165253 758423630 159892988 623619997 65663416 240129328 185750398 230359872 112740075 585479993 269117191 656198355 335685722 882455461 7782856 258669395 716798774 750308950 410402329 453135367 743750235 905827636 260685693 410131579 874570337 988481481 518965377 610931941 456238517 873565583 519456915 669679825 697875118 955534274 673550471 925031799 779327753 973107236 492439607 626717693 502957897 784331430 518498499 774806539 780451491 911256927 873852855 996174985 249919624 466676663 167039347 525131157 442531085 706488220 319632150 995300913 968950286 988802750 875820688 987480301 464609953 466124675 487249686 798373451 684808926 789999290 52602070 301419001 840045985 927804135 712183597 727742654 551331132 695720852 69874868 955589106 286963515 762627703 879418585 988924197 788827961 837195992 521332426 593058330 187100600 657546150 133942401 955475157 356581725 982227616 315670016 681988477 231418165 698089195 405173323 689860368 845900862 983863321 315091700 427128282 505037146 750011108 478765476 714293262 100703427 779412440 682192487 818237809 711826822 950109402 189840493 499565937 40145091 506578743 570134692 743261660 100165106 913403521 298204365 724791587 140320413 730153518 675959386 707191016 278065265 441421697 71165412 967263983 356882745 420455561 839323376 983102324 876509223 997624626 646939539 834245634 189961127 661142997 121805473 184954582 228756442 266360594 687445179 797501751 57562700 146423371 553722748 794957758 563480030 580799169 976597246 993629679 760315591 768416273 553633131 714090090 262664645 421173663 649329530 865851846 670755644 692554646 560876038 759763241 234427525 844867746 700729937 958534498 209008625 761504601 63385751 879657286 878201680 937459535 506993196 704896039 867710513 953222889 741847343 924787110 847713960 852553030 2598754 752192912 191526480 241602491 546708055 878984371 28868839 705035617 829783578 960485460 809231139 949702861 46650829 358852875 475150022 655248384 327201557 507209576 292317478 690442403 307391195 370365576 281396081 723791992 912545355 972933633 556674701 989031768 682875779 713571954 903657624 983632762 334415924 995269924 4799417 972352750 608782110 694049567 874373149 875161664 447899724 732058680 890187582 916035471 44870054 220180061 573688767 677742567 834045039 840548884 766845263 983408416 179122230 503034740 574854302 677979963 95922340 548611335 702884411 712327645 45262389 674928161 164015 735992155 597290178 912534913 130151498 285968575 770453972 852772443 593324154 646334008 996442623 998440622 13781709 935783161 479490023 577056072 641694203 643005212 997224478 997642223 174734701 500587219 447524419 539106738 583367867 634325264 447822681 488757429 457960196 980520094 943549973 990121982 37107398 101825631 398801414 980430765 643021866 713368870 315656272 452859712 354492526 785543846 269686165 747611529 265332745 566956630 168826308 725969814 564959020 836676388 665900859 984498016 73321642 182391533 790078671 994539677 860022469 989149783 59486080 221645556 980079927 991856577 371770839 658424237 94045108 738250948 26766648 799040074 634990819 911485693 938185711 990712789 569769338 857562034 202653308 948941088 717315416 871582581 132477784 962568610 153210661 184929975 190329232 632005787 396133610 896992047 15454548 286967879 188508467 458211887 815139618 866446800 388078672 569775315 107356161 199392697 206527864 720805182 263930537 886731712 314902846 739127868 883776931 950832834 326267546 806859758 889419639 916595943 339429089 481405486 951664236 967144147 812377903 949603043 820098121 952059123 55499768 121467700 666683792 748638831 17464728 687961791 620968907 987304645 821535378 955318859 790848283 890727051 902932649 941098768 374064073 592992484 219387854 322061705 32996048 473186498 401807140 870382047 279018809 396075873 323316068 671245994 288270977 894337652 505254142 534544194 234940357 538336949 919708806 974087115 822280190 900989034 981679964 987784836 765187423 988936743 898049032 919583949 925629524 963264141 461873806 896594956 648456359 973825392 494078529 733190647 862908703 901277303 54504609 349880700 710911793 825864745 711113782 798729157 336727852 773577015 454363295 954663204 356388547 545667415 335627696 693781286 143667332 617092855 38135657 452513154 564037606 926388546 822524537 912361491 449877434 695187347 332431716 748571733 173624602 951483288 858291246 914406810 650157608 906144054 160433837 450289666 6160662 547775420 668102682 840083433 914245416 915508706 262368139 645704039 157917541 174423700 725262138 884583800 446043131 633801684 648342642 977703324 958811822 983125626 748567959 765947510 225944211 975077447 541816594 722489528 202876042 959433273 31655691 756818877 483289956 704652252 854940587 964753983 706898544 919613961 953336912 993269194 262060376 687100976 918249383 972874938 555303075 804466095 318295699 971765256 975064686 990114623 706405718 787374416 926609357 975697100 278161537 679105405 971075582 979559554 287653528 295786428 936007466 949000741 727814412 894979823 316590745 327311931 885213875 952384692 428568200 463697225 291085784 376533657 879045271 928746480 141499295 501945289 147705167 847074665 501523483 970699683 435188185 512963015 45332043 807771550 189538216 837926475 541243391 993007982 920492554 974588358 114593723 803220598 101606854 417999085 782597683 936019006 693935290 853384784 83641027 617823359 879197217 986661573 11024150 528253699 298733467 792061513 43374616 945084549 337512849 407267152 806894578 811278129 225877586 352397477 462100460 803654977 528546809 820494930 760053715 827006622 651522228 886888195 501261677 563938708 481523538 927924320 16587637 274815674 867467566 921854608 354446940 408266061 607795261 779542946 388343324 972464844 142671715 556256790 637857005 902928948 279234070 383027303 438217332 613156773 496377571 877181643 225139700 322465599 119047128 126115202 323242139 982627842 679881087 971923568 938752219 948730963 340227085 664983103 736347332 937580785 393386595 618822524 829972721 929994593 457753989 589198624 297153642 676138834 700130966 911550394 718295364 914403311 403503852 452149271 273940930 493468762 749913021 946870962 734635532 884665204 646750754 775936803 954187034 969654573 646536814 751887240 47010250 535595180 826883285 925158639 443920861 663322546 465612255 615004949 698500989 884711409 847550237 930630283 970615996 987004493 739567629 809505350 329376149 721427909 417368475 886902337 320655896 359941492 394306348 637778712 454641615 819070139 802567561 975180744 730032436 787932874 339700510 658454422 339467852 775388584 511792881 635491882 829386528 903312694 724782283 882772120 302933303 570518164 747830382 755512838 723681039 915503102 151761026 210809253 441842017 699891369 576013731 911816980 161317297 329011389 506345233 622393189 722309051 925574616 992356861 999578183 192753358 568811833 697384776 994218805 578241933 854634135 713167888 804741602 62604754 90802831 702312649 972314790 408418392 551418238 747304051 953953340 733028116 813586202 402573935 739409712 926507863 938024776 390450839 936097822 401283072 949212509 450462487 617699638 406058303 945638629 908818100 933288534 292376371 459011175 324809923 436859042 318739202 923637676 877394684 931153830 458271756 703749004 747280280 751882010 460567799 811390082 171878739 875449431 620450837 826070993 203630952 643858428 441213818 994012898 476765781 747588497 581580447 926240857 923216138 969763095 236513149 976741281 960478795 991330710 805143203 824897615 584909533 621004278 951679147 983946193 97468134 885900461 132760280 494978600 225322812 452540043 847576859 900656972 45300497 620594242 992898138 995292524 847840677 886631803 974885833 981445819 308982440 514894406 678500289 763048282 569941268 870178090 97037646 830898722 264170112 707336229 417540136 836534403 484867472 661441751 13025928 326199049 48805946 602480380 604639300 921128099 896918217 989774892 691373085 938553804 642202611 916968398 805058200 844206638 759682139 964038656 466502700 495197525 159536708 216427677 664232606 899732771 509804224 984321597 565149615 636768708 940016208 975575369 488911940 890286708 66618799 279787624 526107722 994930055 153317092 316006111 756696296 909789731 22767483 784343923 94482192 282726382 188215666 892838323 49306206 415338487 201971018 770747550 957808097 967463997 503363035 929282142 324432062 757937913 921795793 957424110 633919426 972636037 600954734 673306596 414438819 686437654 933014645 949925316 487270602 726076263 919647059 952398121 617198663 688873557 177289608 675921340 38280939 986596338 162552222 635937517 608656985 797898577 473614306 864668921 228333443 889563067 392057578 964020290 719788695 755363700 294792582 933710344 963387346 989649780 149444101 830726503 680880467 820210453 916249219 970733288 577221143 714143546 106361175 149477342 190921939 442309070 820368873 915881263 560949829 908652828 341118915 924211660 205794429 910590468 705121645 733910450 717269618 851652186 155526007 446566491 625550830 969840736 184336164 830801517 758569089 881739006 184775990 611363385 398903481 460764246 792587474 999665600 855632514 938978112 238350339 955404240 557171820 855728135 550907500 637346985 281044288 707095549 459292907 523836081 889729091 984502006 537769411 916372956 2159845 867699462 366792217 863414094 187643039 587856652 33258662 374554304 646912967 777440887 778645723 828760869 835167537 896170916 64119410 850107083 799213576 955290346 65156362 494067611 500042110 700989104 748532233 864521582 577123367 599499746 159103416 868284529 382099255 637485457 967202485 977276099 196669970 619632300 355336572 963219727 107839198 971526065 570139225 741608891 707008862 954436687 639005977 661864268 257007584 448350609 72050978 627648627 442379825 613576918 301850329 374510645 518242709 590186809 199078076 380857229 969420280 970895229 576869159 893949796 844369959 930983126 403958431 866730849 744456879 874532551 519393785 998742859 321455278 625181630 886198987 980321459 589541154 688338456 228887389 689068278 233886643 310765283 716925895 821725081 10482206 457848878 972661312 990545340 128062313 589864151 642684704 872016631 406532137 948944593 371146313 618824327 258754714 976199032 195275918 943209676 60502915 902707754 102183859 382954813 883278809 960460582 538739351 648732242 798288282 873209292 208803103 937228965 636133204 852978724 887500488 910987347 632449024 807716703 509006345 698813877 584111780 960908467 577615181 585631101 345847499 520946862 71253524 902015988 965044348 965333091 456054484 571908596 519601937 989463342 550714430 903849054 812598392 848762170 212457861 812523098 734255613 943441790 778416512 843626920 635968147 812140681 67837034 860621497 844930989 875419363 733688888 737087715 553642937 889367401 958779003 999670409 234107415 318626781 676072877 999678552 433803035 936948834 720775417 731513566 409541753 889249018 633538404 996794205 91819876 300527021 534270741 755941576 871148382 991622950 318447408 514171102 333240390 675612451 707566367 712954951 162249790 648360584 333175892 703016719 998573605 998883294 968245471 991555205 175898368 372326511 254005185 899903581 367248798 375780387 827284267 960211660 16389572 352691549 177262977 882979892 935586228 995224856 153428071 961521984 277595954 523142911 287188734 691977519 138945071 548244808 973469158 986091571 711261180 955106560 779978051 916793407 442434196 883179523 490167846 648926950 700638772 975039213 842454320 933333179 108169586 941248443 360579585 798645016 861864307 972905414 438065914 510388011 859196968 962647241 955220289 991514279 701241162 759488121 360637647 457460382 80822881 705352641 478045918 482516165 893077136 910243396 743895477 941360058 226214695 873617641 739636218 824896994 660005391 724503424 830629136 861502474 430527490 553666000 632590079 854181864 678528717 888570514 382909046 699374217 949275230 954606100 372652020 976905541 332101098 676838891 665901154 920695802 621609601 854154226 208884070 731828684 995262331 996379172 211059607 722359553 882880678 993799923 993269691 998175269 998344979 999595396 548763536 892467015 529517372 731693374 904438652 953189727 341076077 873944281 315635142 318460450 407108819 453577435 557190363 859848734 935819926 948105133 243012828 364911195 461402494 935713776 749735569 933637882 731038798 822916633 610763457 947040154 983497572 987778122 870847094 919937598 236387099 447100072 184453615 524860264 761431748 782860852 12143424 804097682 57791854 629236671 870444075 936999556 833865195 984479137 923670070 956020477 388379063 740090679 557489474 895240081 402587318 502423136 994334870 994741763 717374439 870846920 316687174 679451711 311925603 453972005 709314532 856344038 578961898 673765840 899579928 932172598 537565508 686407794 721958334 872370525 585312705 975701628 960194674 963355233 182776055 995399294 846759614 949315175 712728843 902362932 422998810 751854360 987531659 995257068 389447750 439094411 190000542 248161505 98817375 435614645 9076964 192188560 205889339 221720784 667924940 999158722 211434141 528552150 746167792 987938008 119205579 203933980 618659590 894648235 591033664 633856607 135820996 191679975 480420044 552166817 104947017 117317050 311590098 625139492 820343924 882546457 309589652 558966672 421584627 422501205 944712122 987531558 442775886 678579008 665103804 685052879 837248511 837855537 397143634 563491234 174697931 936348971 145999318 643777646 602915915 984649966 838043505 982711995 391507091 454817796 646218187 670516868 370005712 490259332 845971856 972351221 136247837 594901460 977602656 997274859 750332965 977621362 366583482 741046984 179487112 994717185 107452698 477041534 701033417 847038647 846697612 966028895 843741575 861174681 188072927 655519834 778414044 801149487 343951800 669775504 368366484 662123534 171897078 173092379 302516137 573583391 282121420 571695762 905754285 945562100 311542579 585416135 660988824 939687317 872501280 933048491 929464289 949052370 77271947 627831711 449647244 894941865 237483749 293872294 727388145 856980291 550122924 842698669 198108266 199009711 954338789 999031048 800427927 979397245 556466496 731650082 941578905 967611783 120002480 466825268 583153613 704399965 915235277 975871937 338167705 960488258 978555240 989086057 22886360 419007787 941805615 966425468 363796120 853236843 325433991 926545958 229210873 520907648 51669225 942208443 494612762 517761820 766061760 828593688 101366961 228200668 670779645 984458231 876503700 924773486 813078223 967057996 844180903 876858094 376920324 962075828 983774596 992653545 279778677 874766719 673159126 740074674 449922588 456512069 437400575 469383810 198985765 667223363 771615628 838572817 533955805 821656523 846866963 939967887 317374978 601094439 121826042 482766552 741176154 761442659 8078350 932648992 67580313 601585104 131722006 263291451 994574354 995746512 446271886 558065886 604901397 730219043 176793569 860040774 698747658 824238413 828577247 950342202 634335146 691133472 63697334 990168185 73330829 650479516 512770227 940150647 109476387 241369093 747746569 904074732 21998295 607967182 569606314 807686698 886205572 965159206 970420631 975356934 810310243 873536533 825567322 849803860 872776746 957751510 887502013 997862372 609884807 724868662 603497560 635751255 874284673 952184363 97139812 674946543 377909490 712057269 74959810 664756625 41589339 900555582 211709425 959863240 321439592 743330121 624340245 899092447 434209670 529782450 581480277 822109331 480541714 679269597 887851261 995538752 159228667 921143182 891403131 942251018 571736923 609713658 567311171 920325861 475832809 550025864 271710128 389544219 385768120 820321987 563744552 963599081 960532284 963279820 132438457 339130012 404036147 598218937 404200028 613617318 727473274 790821354 810461601 972647225 229926640 655650486 389926357 395939699 850242616 971243353 964682840 966666978 195264222 386784829 918569100 979207925 807529154 970689273 493236818 709178180 701477281 952394475 714411151 720406021 960452039 979419283 335629338 635792787 232960343 491903267 516777570 645909636 751505726 805228771 407594863 411180386 691796991 949719597 450353280 811196667 909429620 995819107 917979959 997783809 163249229 314409817 431067453 718029331 918505390 930993000 227046486 447915346 225047228 482590262 65787168 625804445 617839207 884899278 340239013 487348916 996190794 998266354 380441226 657726096 520906764 840146345 439035237 894574843 822034332 993851365 86732258 487223333 68881820 245219322 506185674 682603946 231106110 407227485 226165147 856994130 93035136 857199815 656947707 813594164 542152447 990189315 157050651 926763982 248416595 403497532 632083847 762731625 158349192 791660496 337087250 666217686 873965988 964171684 146606789 444145237 724952183 885997762 207005741 341827068 471817044 662555803 376967550 619584841 699842671 895496949 421777373 943184648 304678050 846995814 34903451 769781104 842099097 908166854 934720682 942807246 718690314 876290428 305628493 859562791 829693014 949523890 855471985 970964780 323937360 382463327 66197990 252867609 318428075 333515861 166032051 383782079 716182123 818393962 482895699 631977708 169430515 950067398 27067206 645441683 65822362 314292606 563933247 568548979 782042632 814758004 568023256 714149096 995482065 999557730 602184410 612878508 493640035 574690509 825521168 897673874 424041542 804924123 559851120 820365005 206807350 277827759 606412810 729083565 539797047 736966675 235398525 673552405 999118354 999420491 728345879 751501630 836416318 894667724 705801047 963173160 681735599 800360524 172921357 250542077 123717854 532363895 962980850 966222678 407401477 526014757 374576448 398116936 641679753 948566336 169921430 635875371 899627667 947540339 215255411 287589582 433023919 930624923 343273956 629523658 351186851 555347215 364111435 616784110 702980366 848958990 647430154 877517185 656292597 994930620 781555016 880014216 263261176 692702058 549421800 660252819 725255581 936840278 707048574 900562873 51501981 725654317 168961897 566189455 903512176 921448139 53823322 665088644 892132997 913272996 451024698 506644980 771878378 987840790 568851714 897904190 971216951 996222492 820465240 968376082 292293816 989818716 177295875 251064381 23010235 747652728 224208040 670496080 416069358 504823586 523784095 882718828 792647883 877824621 914021257 981295171 46074562 284397757 722902913 764033379 759341741 814831262 910925911 949335910 473918418 864199410 471728688 991549923 239077013 792039057 736861494 749878393 825696127 857670573 423218177 747695477 683463500 892053360 158393668 408380834 916396732 970209922 271449893 628554248 929568534 976131294 48369587 989409684 814533342 997679040 243448268 274791645 223776767 631096768 382992464 876380081 98025939 799955703 369837311 854219600 657186015 944954987 309821933 745130070 653313349 823345892 567165737 706033505 117739779 629695519 302370687 512287763 728717709 880185219 701018472 725553364 870624037 910637341 792861608 807890220 242030933 716211909 712490115 815354182 676721697 863332478 507864361 555847046 949323396 966742331 426596870 723885743 926893243 982381249 339751611 594063824 974152645 995898466 832388817 911196861 773790410 925387777 547655702 853287926 248374417 480929568 241152991 429240137 356124640 642069427 25355247 790811175 26746031 560159810 806254325 890170566 116262060 731314406 574614837 921089191 638872980 803327658 70160013 764362219 668842595 968431787 410653201 676414773 417338348 513492929 521891972 881307388 404269176 434291012 621753421 742173374 755367144 968121307 617169384 973374309 140610146 319952265 549638770 668243799 886092541 979626581 28526114 935344243 901473388 980052655 802370734 886846221 239681571 452185579 126499361 530950988 780699849 783436566 152442328 541872512 760246611 811087921 150870421 153616903 809872327 886073057 731369484 951013242 76385888 635848919 353385356 799696707 907888593 918458125 481353188 951925505 763625629 993095104 786625868 897617837 220036623 621920198 433352049 852291584 633924940 940808908 338663904 864500150 92966806 774564420 279778426 824443641 188695108 657224213 643281788 849288748 556186856 743092495 86496978 500939675 109101692 417301354 82152084 230585532 192734253 215886716 864750084 921596081 324493670 656231727 369513255 458395309 445979950 892644870 848833724 924940149 770632170 800425591 853276759 885096038 477205613 881073307 570236449 736421080 396091415 671773702 827076308 857979285 786916907 861046837 6770344 480797492 871967224 985745641 143489563 429816778 911705976 917416189 425366518 428326918 34966095 279897052 180199403 604592328 37913794 53792110 606623327 693319348 778382944 796076303 353042540 375568505 536828001 848758593 72767547 876944750 948513635 965214365 196083348 478755044 193505008 739577255 844869350 992672418 854434885 895225159 695601071 718739156 6077575 738072279 431520072 856476407 860587787 994968828 92319034 981126693 986594218 998597072 946502868 965751957 873213028 901444919 141491320 373995569 551419355 890832631 590528879 831918118 328850599 766543831 287452108 402445075 740557144 900109268 854587292 902612925 931776380 955690514 598774618 927081195 424793458 572371589 499971288 587002365 36916418 777172699 265214631 808560297 753185072 907999559 411944499 772808268 56342386 237305517 991329849 993083953 446160304 940599966 470307174 706584835 585360914 710841304 156409795 753820570 999792464 999921836 792902007 801375951 719941244 792844809 282080380 894603623 404182331 874509331 207058763 376100926 895844689 944228306 151638273 687562097 398386539 695682724 168809211 177696954 821058163 983016709 70547861 587282911 504149827 987749703 379126354 812619571 239562350 996822317 888487073 976278826 224581721 846136957 76890217 561199313 75126332 732899500 162917915 786524605 251864185 381742075 272595251 393179787 876894844 921781569 385722072 823680102 928989453 997118309 827374939 947303368 650080374 775038546 524729058 857630645 542471485 779595063 658612968 951093423 797476439 821327910 284266296 590658027 289838567 603239757 447180553 744631492 981416762 998490855 722537642 964469357 480904426 775448801 537317816 670615694 594499954 741088710 230748873 957495175 907715944 914335040 528681590 897635189 683350235 951208700 936314734 938497502 790000731 843251626 980438099 996724068 916728765 977886466 187789525 273464677 163140510 610945841 218445346 301997706 176594311 992555928 457277475 474505546 835150716 857962063 641117400 899874844 294204013 458359463 301102097 493047462 455720525 785488374 289160088 837196122 766201055 995774892 781653906 984977647 265422057 772666433 406537738 609500367 725354369 934762645 149214924 925752871 739462671 889173056 571357413 615992348 576132452 890754733 839348724 844758116 440978991 642104488 946821996 972795939 27945514 237410276 343174695 605277916 50178850 176205416 153108991 616611821 211506431 417449478 522520357 817589465 210934334 302728555 910297627 962041633 301954890 384980538 780796928 883786356 133720562 895523372 567140004 612581485 919433797 927880565 87962563 506258706 426038840 893039858 563476125 649863695 355566389 748592265 191384359 224192650 611961779 991170387 845300078 983378973 678772118 818351450 326318379 592541966 672940661 959700574 849753898 976540351 102363607 729613504 851157004 931135952 15138973 789846060 502347285 601535134 997720726 999208587 866310486 994320591 678251924 952766779 586945705 900149549 393640825 672330278 748764454 881950061 116255523 559188307 753335291 893608562 931673734 991619896 548733494 625412700 621553892 830849018 96148037 238411510 998500075 999555127 938180450 962223665 344152112 877414754 497406998 892325321 523778142 872277154 234906777 297801730 746806958 867011393 307628689 599537878 194732973 382484059 194636449 544373918 15657474 589954582 886954021 963532807 432932317 657810436 960855909 963634635 486455768 559665188 812315621 891019875 392543709 437826687 361385422 848265381 422453831 468489632 318239237 663895424 236679814 330922228 890547098 929960737 899223667 985145595 146709886 945027798 708262321 713517986 423641530 456848363 209934317 853915756 350896767 642447039 558798273 974730793 766609038 860973886 770228135 904110485 400857969 852049950 125855012 239739213 111230557 559776476 831371872 897077766 876777726 987354572 175334464 508252972 256758187 856029441 746023172 955587278 410732081 893154222 238314064 370710321 508945224 877197691 544077497 713021392 171321870 241090137 735289970 904406870 482774201 574149956 16202962 46083810 135728494 648331201 125280863 405021990 726353149 730448312 942878877 954506348 643143817 865576828 379803441 918181058 749909607 914513632 915249473 981917897 512335728 548350379 959803779 992713162 147770697 216794037 148638031 430572158 580457617 992722846 301417106 589108364 153121473 447085009 505740834 672099037 725014150 769293309 354260428 776789559 316770250 610291686 942794048 999175275 670442812 685562583 567496288 718799233 280333666 298112405 291964308 639956592 40071707 617835372 871514027 980390879 824468710 871634285 930746382 953450878 243338536 588985705 735431005 987431718 668966857 789129265 153299505 770554704 737844356 965185098 439447916 880010105 115007307 854317333 619842095 788830665 12970103 670961655 21063888 274895972 281149465 517023005 625082353 802760958 233485163 667188976 156609680 853728345 574795607 960792207 931499434 938531735 485733024 924541878 305273167 780798251 985855680 998134340 982432236 996143793 665602816 934559277 258710231 650137895 164283342 948842039 342606359 717546148 929917095 970066276 977894864 980317757 590083938 856734040 75610906 169453705 458939843 954210738 915336399 943150943 269376143 511625665 551377723 827553917 661354945 672417948 122403727 376597979 694981061 952850231 576507631 660458571 141633912 897631312 785164301 979242718 718549348 751041114 815127833 825275617 667728699 738353023 396349440 944942982 798218622 942219715 866331472 929815995 730801514 881850760 295734512 515019367 587357179 748403622 507697687 718969659 691394381 756287463 538335169 641947791 294939458 990164285 704332156 706729908 273635874 308878276 87572449 859516320 645396533 754592401 421630125 860551592 866813260 911798330 487990303 570451530 430654118 983076434 529696216 930654766 53278920 403109496 980526520 985354491 445110954 843964116 305703158 348930377 185060125 450193427 59953269 164846075 313902721 433875593 118857252 931126391 652019421 959774489 203234800 357523837 307735515 819537408 110239547 992301010 832481233 975034070 916446384 983110859 325728904 576159263 537322484 965866438 585901279 703778579 852012859 896533618 640389195 853304744 745781435 998347586 202142049 278360015 952297641 982044575 1264027 683758735 42331730 642373126 572880367 943430944 446131019 695913707 684932021 800874021 659550881 932357832 674740403 948064229 869577707 986264367 943819898 991193563 205230802 298508517 95728874 380626862 696864792 851203500 676652201 966224805 922591031 938155077 262592303 742553082 7148538 637929350 22290358 721881357 271462482 665001632 37881184 709575933 712544124 846799432 226736123 847197294 276369533 591650736 361485749 522606310 994248061 997230381 82410169 306459859 125893074 167128038 838092191 878249243 475083439 798818402 119525157 216655510 8587982 481164894 866727822 914640094 736470937 822293590 255288712 314954959 408262101 843538950 764746881 869682745 862210719 985449617 235875933 845807663 667363035 839041935 468512927 692893194 697318116 895205558 368981911 844876265 121950665 150423506 416157844 788305310 803557619 976869528 902875433 971240263 481051647 735758669 590817652 835860478 297380492 420214947 290710717 779596976 834928578 962805720 321854600 610560303 387260097 452227671 251837165 385513037 200720776 680654235 290868611 357613903 452964294 576507158 258692425 541643965 971751852 976699581 658489922 952419641 772061441 926695089 926075737 947116779 180721274 523498536 506082898 559030975 993739010 997143018 474447515 531445673 429262598 528093371 859368082 965323331 685809463 711114715 189373005 221420363 136680969 638007729 586198235 925772573 172543676 239086708 779103123 914292267 595078429 719488386 673602035 856866197 120463647 664967556 680292407 971752392 246066017 935215457 521041290 633633209 544225685 873483255 527384115 565907888 366805672 993810461 837273959 992084250 713096234 799518132 26972085 773034474 539323267 559794581 844223582 998191503 576494854 689259683 898199756 917138691 510947971 764153274 612956762 823771661 66032154 848984767 38513003 154857802 788286287 976152238 770050354 883852936 547411118 948377238 542740034 890567719 353534379 886626972 65179255 142194101 688985221 713626116 188008203 977939822 345705806 961004394 682439747 757063007 646394105 667777501 793544386 880159239 617061316 712498796 988353623 991289413 924512983 998211743 605749690 896220659 574968024 688664988 914985588 963787031 560721824 890162295 795953345 967226855 804833793 946469511 319380911 748278169 250347289 354925319 703111801 854102511 637746856 702014792 878071225 884166949 774955402 974295705 845569847 918997174 187878096 987197059 317531968 905017090 395874397 734623451 368912229 848300432 371149435 638671506 601417636 714393830 108224816 741496252 951193102 998284732 598267350 626316298 131629719 719723051 154866404 515399594 736746331 744512117 503615771 782089530 827254942 848980257 544593359 703969599 431733428 661264754 300043843 474169172 106696790 309709381 775367553 950623738 358439713 784965467 888223124 980421216 516456097 982090474 876839076 953870433 638000933 933565822 124064054 261362520 930867721 980848199 83388654 973289679 581686785 737077449 754756718 797765691 912841260 932852809 671775845 687765281 368519877 552934011 59164542 634530157 341558312 768352845 241934640 357489431 291888130 960866945 403401828 449097589 552430045 588824623 573190465 966534545 793250293 858844357 357927014 447708446 439468964 956409743 949898354 960239029 440185927 726722050 403458993 866240660 61420368 769321944 684696246 939700847 233701138 290645871 150485347 597404129 907406690 998777886 449548321 452262958 7400328 62799308 469855193 549045086 436912552 633554408 695677629 951530608 584139081 584949213 857830530 982030257 560199877 606347893 542309868 579642835 778282983 907603210 572009675 909280465 388425641 681350934 829710428 879167943 542389450 722765272 512154450 841613695 17810809 701372454 936870437 956585323 373312107 784576695 142932904 365498794 415952984 687361398 618862060 700269472 197891517 647785058 620645377 747524925 58902057 192432823 712046496 783257155 941560767 948802025 608511076 802211689 537652046 762820307 953494070 985495493 634785185 782218623 428626381 906757318 194334578 656494591 432817358 575761174 144986730 456240228 235836905 339402518 608799452 663934078 605459627 958252266 591005287 994899326 398500497 759979411 340924061 658620588 432108337 828852639 304485820 848232920 43180628 414179194 103120847 555154655 259656549 388220008 198026412 472654850 149317091 711339028 226852872 262655235 886518298 950357098 300672888 679196636 900027875 935942311 864143012 968486338 991295861 994530526 641743685 956700475 944179803 944548096 928845185 955449893 943772834 953431874 331103189 852808507 450267670 751593262 296263133 416987116 360582200 798556314 255001690 508430885 854281596 865462188 610874231 830246439 484696748 980906072 603201469 807023883 717167878 915790121 579872824 713411785 424405987 816620338 938483201 988935300 382915 415191059 85134831 614937783 58114948 209470138 455515380 846395603 816998211 966148435 679368760 810473629 990662327 994319814 892140381 959889355 511560147 516769196 861388510 983561601 403288303 894020833 544111189 705338412 86018591 548002270 40189670 438955872 846506282 956291205 25425102 614825193 538391490 996128589 441523214 530565386 710778654 846628372 358834888 990625270 95206356 866622423 464571504 768358744 35389504 555414335 487034110 789287991 866306449 879930963 998078693 998979952 667803264 691236385 524356373 728102318 252328197 298830848 395430119 804977773 765451877 946980684 454424746 950265887 640268051 858412506 328075540 332672652 324889221 653312519 979128648 992732133 765982296 959032368 538833999 588438996 852066632 883847229 675415893 876974199 62223500 387435270 964346735 996473460 633186083 787784687 988090900 992479652 992386135 996707342 900233750 980384940 885398765 985958343 433107297 917734413 723906969 843482498 832069319 883165650 297990303 806721560 744805894 835200106 594137820 616532795 707147264 791094441 461400822 771121564 912955294 993610747 586411433 817773684 879742108 996812762 58336941 428618834 180692254 249724575 91798620 222717143 692121349 956251958 707783532 930797209 962762319 983506821 358866216 820264916 896876300 939580145 781659501 911603132 355523645 541063437 672417699 753070331 169197059 318525279 162113046 850346373 114431753 357290144 390073559 903720448 886150212 901237568 991519618 995302122 349929503 403372852 781158269 795873776 59519150 571740638 448408181 928078257 609383250 614819361 882376318 944370737 135268930 644096970 897343555 981986357 961930100 987728787 283014290 956294695 294842338 950706976 162793454 828476804 884242492 957621415 604227063 962782216 82399388 894601322 354682469 435465647 906357486 995063487 521660647 903028422 730009643 738774214 181346501 739334693 149401592 685027991 308963865 486712866 137524862 323462766 246242008 909423524 690645635 873099394 235305465 800399237 433955818 799331604 442186018 444529349 78592868 761122338 349624536 894965853 741482864 841736249 758911924 825970161 274180085 906516824 38166066 193007069 930366943 984263534 269809570 338005293 292431623 653134812 128266209 892643363 770712015 844278254 305752358 803018293 46824574 235892649 777201115 967654021 251275047 286208001 773923199 905951681 593651488 915377254 81498850 318917407 214849733 268444864 655995761 967563933 771083381 821086007 358626949 873892503 387488123 835486846 270381406 319571291 679461526 831464216 166863192 520870044 635483219 892578950 661952907 677239157 802590847 916675726 86897388 339901018 176398632 475099550 343164317 894473693 138970222 683540810 321911857 387092337 537263474 963119764 157745643 727990130 216375836 590492104 447248295 764897983 897613864 960801339 72441290 627655977 868064488 973784687 262286281 374135476 806375489 936692100 153451122 202557270 550309474 567886255 526821364 833189430 622703778 651146712 448471052 566434665 656200670 877384060 864606760 979712477 357151492 408796544 302766910 585918610 391424057 488292214 136982100 759129919 674715576 779296517 833969940 890762010 2234495 52003910 796425204 994162386 865620132 890407890 365961297 490572685 790541358 896873069 162590934 784045635 894915984 976543879 246422497 387096075 718335337 813170408 688379029 884501487 72885990 741529686 340366189 362515087 562698894 568230090 917446545 984768263 986127730 997168772 496916282 945733163 948575775 957630844 599308694 703703571 930074545 982241059 104560018 695704622 758320088 761729628 966366319 999243289 283577462 433351299 457576684 516530622 498937606 979188364 460128630 786409414 81437465 292400233 148060897 433075934 417967010 619047189 160917571 728069738 48182207 99145556 839827196 993272484 531221691 637450293 321627839 509940649 669838335 873044237 236810609 843077446 294113252 378679507 44259426 85433043 388924736 725896689 172701704 418131726 330117024 560061275 47381738 485954407 485860944 555986068 126480080 193068631 771908026 858557851 122992014 929016780 145194444 868257146 204301094 544741940 803861539 886162987 545871426 874109094 265960052 463506771 824904124 827230195 781300599 837951948 478602363 908769698 664334656 884956922 174601070 532618018 965107023 967563972 95571913 927679241 70835181 718183415 953921427 992852129 179175485 503953859 463724217 593346954 297914146 872412869 595341970 701499057 723267408 745730749 725235861 796225994 364200319 395046065 581859439 922474963 296939599 621797627 789225607 912944685 804926116 934040394 37924642 484717571 473321667 661345298 669933570 694963553 64749534 925246451 666149213 780414295 433689340 508211312 433919365 820368425 999267137 999683505 253012225 887303933 128823561 899475352 143027193 475251537 406100748 726630898 973962251 979445066 460913685 848136084 85664403 494288677 878986562 965316489 512470365 949915098 812180346 897742966 698104062 951507428 532970114 880591859 96655324 983287674 388904625 851436780 870715026 970273536 49123063 823447806 895832841 977767565 260032607 374749159 591839461 614213939 68517877 729258942 573649937 949161045 677210775 686778029 190008293 651497624 978647209 981743606 930807067 943021392 998335742 999234076 876711531 888143816 273438375 832684936 577496237 963557582 488292701 744888863 611110410 913315809 888258510 940897906 778217479 898554208 634073581 766323310 574230834 909637765 156063088 791671575 355897611 823554174 588630519 838185504 316211287 750815649 505097302 649647314 235162460 546166859 508694165 555036536 289364422 877744219 962982145 995869969 257705892 411052045 328362241 363638008 365423319 675717268 934138540 935384359 920870425 964386766 728353195 729315453 624551270 705445926 933183008 986170463 986369704 993391624 679384143 944387931 241977120 853499245 177566552 693599223 314442913 806288533 31380849 539450385 959075502 987586945 925897330 939198361 835240311 928232331 536416882 830393294 332127307 517596288 704044899 911149285 70138697 489285634 383543486 960219379 74013511 349063113 499697061 945847601 961280037 962604008 867966764 882036492 304141107 958037031 320153764 439076105 436921255 745922294 845900723 903024538 145307783 989098191 732714314 777626169 743711639 831810337 537584152 787895992 251688150 361489148 366248643 689260221 764393394 807070862 354203528 521482073 288930098 760472035 515537189 591452708 793892658 992250970 209590405 661511017 516197992 899688390 427121680 605364559 583051295 662131204 468372675 983972789 893978817 899665294 982902660 994044667 576947215 759830810 557708872 854404941 283220250 501536065 443932913 869052703 450910963 860338925 885208684 997162423 700852800 803045062 799981320 966375773 883254655 940123163 917140255 971424473 346334758 586444876 174156093 632937399 63512910 891616626 44988734 790543199 950688642 968737426 939588278 969693980 809772613 970680672 978035015 984420197 640563551 871959772 529957387 698085044 820812698 976667547 919311824 950233410 546955699 574291363 610549982 918753219 91560498 156636283 172024950 972429941 558039340 728365918 17394983 713344982 614802246 754647450 854119998 886497113 175876379 256741590 517260824 575908807 945916832 965486457 809833068 980627876 464931411 848211982 388065239 748492458 338108388 765202472 395448226 465578956 711835737 936205726 838175954 848887069 236254389 888780330 688569787 881940369 738384614 918568224 903294363 907488889 237328288 497100622 378787493 839672406 819238739 996893915 114016026 151139065 540354604 610798660 137692290 621314084 990133319 997568266 114720371 794601949 286686610 556791796 627328128 772990674 34034003 390566576 235312259 840861380 370056218 877330127 327705788 517930571 583780338 887976443 162228918 412857492 415880533 711601650 572244310 648003005 574537292 872818811 26630281 276951082 544052864 616615188 948793544 984549866 242547462 683119753 142242444 503819196 215494695 470289302 445496543 544792322 693454354 711214450 694629753 993789940 31996525 178121683 855174170 927071885 39495397 339557616 87938320 152872510 386812618 765471690 823189918 907721794 775454879 927213823 763973858 858247717 297663048 513806346 650946214 855419224 313239769 457315535 459905105 967348396 892711429 928929085 586679145 604598919 473906008 523233404 646960831 755619643 851473348 981163908 622501427 703587219 803754676 908711761 132614093 793239256 346887740 817952968 133433900 735921932 556617425 807330928 419828334 703142682 886554666 925472445 645251107 666669123 588627862 785847077 422656717 502937955 267963962 882385820 180155677 187602976 40396528 834137999 683798736 857500261 492338289 757093434 197115310 661641338 88788396 384248444 973277296 998095492 450468171 716872148 399080041 517725537 808813220 870594995 772097947 883141925 242059247 338809311 416557602 754246745 90873340 917012951 158037156 283707590 804311117 875170456 292287516 359916687 901829024 902052666 102954769 784965229 665994410 938025063 687403020 781050376 923236764 988770015 255081410 360936371 605091563 914122852 318292124 804698255 35059847 707930363 341839593 453964161 92773988 104325078 415942526 522934908 765589822 872860075 791232839 950260913 314356610 964748547 972043863 995424372 248968393 948522474 301834452 773381424 436257655 911325630 224180386 261820479 772220419 862426979 171713936 967818158 818514723 916015633 897538779 951382173 7377377 264758727 187113352 484515534 406370444 544635594 672879877 956291518 662497315 873946391 244418262 814062694 736675609 892403211 545607352 849473841 288510551 428767434 852805819 894537231 904502373 937163149 819427998 941362561 692849668 900667686 262934529 479679269 234847874 942720215 315104880 914515938 23522100 390672543 821427562 822902499 202378962 435427515 28787918 609316172 988396543 994525937 268819577 949212605 218214135 626208070 702694671 724524954 819338842 944306106 465189323 845690770 376648604 795588690 41221258 864151817 755451426 955483544 802111880 996633960 894896219 946006951 410967247 812629246 408449328 830118231 494690411 933298152 937763223 994771632 129442341 969982429 83201830 235947121 389097650 437686113 167681854 949039077 983929453 994968686 152384553 764858076 327395167 905689226 354080400 713289491 569688336 993198778 142831901 219983444 388162750 546936249 584623860 665023303 344229355 708479171 673807825 863936513 988342683 992997794 673373761 967125372 169943270 622746112 806247575 832887118 835534786 933655212 674890046 676298822 139868059 464290874 260954657 650990399 373256287 914952310 207123018 733075814 898893045 994918148 74453085 139884401 15638446 23242174 994443256 998266316 694962112 726843714 375264553 404174803 25365806 828441519 135617497 618446706 536382795 819061684 937005943 993769202 791569628 942763780 28426955 382590979 238531239 680748161 544679462 916630819 429376368 837167508 732722695 944601586 58295215 240291985 444778878 748648304 770297967 793148955 107542074 975786042 616826417 957502491 842710094 920164007 925485962 945470194 312604335 513006991 362242198 797726093 141984696 516696744 365699804 855328501 331938603 974672935 931345776 952449908 755446550 771660094 284927023 359358798 336781547 967237945 438109296 946490168 912910331 979466905 837306842 978208131 57687503 574717914 457447321 699141889 727871565 914305579 100132401 539678785 19873573 314962910 350686815 973146201 277766967 702195923 398729430 578091312 929018972 930951892 206050296 653914833 344085518 781997510 136584170 792752036 138118832 901432634 967110550 999806707 715670165 747377030 75425840 768891135 896210359 944955451 672031689 816716443 671717695 776638583 808035010 829845359 662060768 772788969 809409189 973013240 932500924 995323041 380904892 977049929 20645120 230436659 260094613 382074977 815798785 830065373 974615070 981889599 774897873 944206286 723834782 735263132 635682388 899364826 927546572 961248732 643509662 855983759 189454904 768158259 757965642 874007901 128423224 288603736 642924991 664217269 595014980 598197259 86076212 180607459 911635757 941648998 662923011 791899404 406924055 823309228 181175869 494927453 377128902 945541773 883685273 903992816 438842818 695688466 400142921 705341531 303603198 584280143 178044732 920119297 805864804 817499300 652748743 864120877 174818505 206206381 317204543 703724371 851025935 959260686 553293282 678212123 922357434 932359944 835838801 978007364 654466953 754009416 324394719 526417399 257418900 719455859 282818035 416947893 20651204 231169128 872947320 919262222 234030016 576987138 534961148 868480405 65051951 448320656 828752735 998797919 51492346 578326698 187912212 606532063 546734369 909773846 983922491 989337920 970003817 990329749 781526864 908111870 712203546 933829521 452216242 962632905 506830882 646538914 43112717 825718471 474380709 871818582 63007068 328068898 690981082 922881712 524276997 877454456 773283653 787530981 811003999 956379935 435461003 839735721 377189730 589272926 306060793 913716477 844863171 999073739 320154931 329311069 367269784 494842280 564654919 897219360 422323232 887301124 190209231 416076032 440725291 719479245 212563749 239408730 749121187 999028370 889559063 987360166 57593068 696339381 843076274 844383185 170664745 371772190 686425164 813616171 379798059 908842730 800157696 867184559 411732779 764087120 545604857 713205502 151485589 956517975 926309251 944544375 698287918 913909189 8135262 449776609 656441088 955177073 311754492 549826464 297540016 370835832 762075566 977985270 140583988 830499954 76393403 915282712 220430825 979072557 430190571 800117325 165340603 469362966 625234938 971838104 773254030 916648580 6307551 530551441 983555429 984153056 661643741 760301825 347554117 439602227 379263327 683876645 230354222 531527898 13001675 826947981 131491069 177552203 29383571 714129557 704356422 731028099 859159702 957239340 623139155 737836724 516013986 609368376 391797248 816852510 859369242 886441955 184632361 327630650 554997966 870690862 987407781 998593321 355026237 883303089 699016105 841395482 770872060 995700425 581709332 812165134 595603986 802740622 621909134 761708552 787260109 933267748 913702364 927099210 649352386 849964628 990007543 990793944 296869465 883110736 791679960 804867137 504003875 599776256 842042036 911892758 22377162 153337139 144705960 642172376 849778618 854205615 450755049 945235409 2576074 867365390 748722010 993819549 456941381 814862508 958662863 993944580 681821487 788165252 296497050 306453082 852958401 857973917 7610170 685879159 338662334 475658516 67044881 440175717 799120385 822828056 237678319 429836497 853027078 855097503 883976687 929491084 324030262 834026803 179810497 986170814 475257932 641039072 324093280 518799662 70831790 436964363 751742756 918994575 589791393 692247158 705348502 915695721 943620873 993403661 427167087 770034358 87824147 617767863 473968391 605894149 452335875 990440823 257856310 681739874 501454560 905553469 990541322 997446580 15734311 462795043 826593018 915049230 271123875 735092814 907051285 966281040 594014440 834579181 900932194 953022752 737738067 922780419 567963881 716452007 625224503 848908324 262918842 905698191 142485820 723638290 282828907 570760128 914524038 955248468 67557291 349530873 233557769 623177039 832675696 940034161 965336535 994056729 945123569 996495135 377231753 679650967 931523453 996660342 929120408 935245434 150857318 765066934 246138698 824970979 505552072 526053666 580428520 582891806 186553536 903889596 642344822 913267799 692558331 885231870 324342870 985913215 299287943 913098756 662020767 806830131 278416783 765494136 800003500 817332324 908149220 946250807 326139489 468822795 531357499 763556083 52964225 809857832 416091319 477801800 8419597 970251550 385576410 657628165 450147389 587870941 356126004 436413874 846733403 847433352 793544435 982711069 900293008 973820502 463553804 590630056 25575779 336211789 819501765 870742238 629199844 955439823 431052340 957851926 274947758 891153241 410835489 756626210 677955140 994333517 787297241 825031950 198397752 242000078 742644119 793454236 927083408 931515694 830284274 841788663 473868937 624394901 670863546 915121431 937961738 980953968 28847523 568772784 431544666 663102185 771575237 849922826 123506781 710722078 897313972 981196407 263075311 957837586 919604215 921345016 126840005 663373363 544385957 972743784 45745989 981326907 922097656 945031797 694755838 898604717 645286316 658214605 537071497 953083979 646531292 783356883 287014843 997702496 918114265 974555740 391308967 878654874 756368319 819529209 729751645 999511057 189930246 845848110 849986193 937280361 428862454 913671935 261865934 301587717 621783928 798283738 614625846 639576331 527036114 707247903 427203465 914621089 835643833 891876920 47991318 597403668 51649737 779860715 444024572 639304743 789655279 790582035 853094475 978591276 952523458 960332610 405876405 858306310 206251558 827545998 309610544 804270558 646684790 974097064 455269857 647679410 619974741 972105832 512196906 667742221 315299817 885413374 771871197 874910769 868357370 993703252 385615360 724365400 800411057 944855570 648256683 940887105 848117919 923459936 460899504 538749082 936647583 972063883 68083583 681418055 185626478 736562941 670078163 968478323 807092606 969268096 60505685 736483783 289807827 990148245 571124998 582440277 884888231 934099702 380635018 429896385 120937471 285754751 108924911 501434286 783177912 947760398 558580320 703670001 357694698 427339860 797600672 964260684 447957279 454565352 844838795 931244317 66275672 805154200 300795599 620720164 268455663 920865173 235455802 735944862 511786472 826921113 503013870 864912771 635217365 703363740 184477691 889819581 580516605 707738647 151019672 799963568 347976848 911720399 750984182 852611425 244282517 674932510 294441740 734901374 492397323 617670507 259114308 691819958 278322485 728411479 954737597 989533831 911781540 976987948 294365432 427795819 134142253 626237269 411870231 539545087 835727016 868741322 596263922 608184835 904318518 957588081 193619268 800095207 703139261 953312359 186594727 586359750 971002830 982410796 36373617 344320380 376773243 601972792 126269309 228758382 194386337 908451604 650997482 713617515 115544492 710802912 251947402 691196760 945023396 966959808 755905195 927717302 522422110 592805183 567251608 743921193 801936650 971157070 422383394 787262481 352355314 678045426 128887130 558266353 922193903 993690424 830203176 955257873 932699985 938347007 17928022 546579940 323088588 878172905 649622706 918036376 226799056 768210444 311186018 824873118 212262103 718342104 22780778 293707431 89534800 776940494 443786289 810044968 34070922 252949399 909604187 918934300 85325213 946185332 736083655 985635146 185420548 712703027 127376670 176268757 615137324 985940653 800996940 968029853 40612836 711319499 511754993 695499817 78653017 215018491 548704308 659593419 471783764 601904022 781283135 945383747 692469065 985236729 795481777 860773124 313098501 354258102 396852371 795473120 450763428 690797749 282781514 905085278 379557875 790272556 392088089 850362545 633242349 834258133 332435262 832653266 542567175 739672154 93163339 603536960 444453386 759899475 323005653 334156636 851808027 922353533 670033900 924417494 70802045 102979607 63655212 861320906 480280376 660212617 865366815 911207417 710469622 891094735 604570361 924138766 544130862 940358056 75864970 188814049 11199791 522249190 469491038 569901531 708259984 936812440 206687908 610819577 392047098 514832636 749164307 910647227 145159768 236056847 930478346 985464889 147661328 887166076 121288952 834452553 509479072 894990736 582331602 744165560 475071486 528630651 890930609 917615400 854349621 946191116 695278025 795244734 375973389 991666411 606489152 982631681 156319460 277943826 852572995 978731107 253777645 815069935 28335733 986052804 533482384 574735492 173439483 916185576 115954293 942412598 894834067 896489519 407400012 885226173 204329085 325468304 91451065 304827417 18168257 57749476 319585797 451919106 660883 122694479 835701271 983422263 495961435 827610097 576166785 597971957 649446346 909681076 406819412 564233788 352400386 691924405 183964438 741131764 527401933 939508599 255358070 822873335 129647112 373645408 205116547 419550234 71188448 906758402 546141237 736869809 429122332 943075061 342432986 728567442 368031980 664562655 242605316 561600868 331046335 488926088 82788953 979643590 380993234 841772527 559252204 836019999 677174031 877899022 368412553 616676950 435332218 990501472 740844640 971751620 748756124 786106701 976467542 983520389 922676654 953116486 270312991 509644929 479351670 525949509 445914563 925718613 386122516 760183655 93764816 899661918 409800442 984329386 139915753 501254253 918444020 980342644 965924125 999576693 547915649 739485013 888825839 966647413 840242542 922360577 13403906 113926123 299207904 846527398 656156979 668265574 940957957 995574845 616052272 825633753 535645633 584174292 711254762 929159706 536483916 995258292 732072338 740471236 695656526 850732855 701630319 736420649 404281212 408829179 628297187 936591452 730155017 979357256 789751496 848415034 928548776 987999769 527163623 639769881 416580245 501412367 385279306 744349916 195123454 276091740 727690888 937163383 695510767 817456532 178217376 453274613 237128493 317239425 373826225 754299886 889306472 904659288 246203369 267715725 16248188 550772206 306169000 799709511 210442828 699760500 197706596 499292332 809069203 834149568 97458750 395093331 355346526 380879523 928285217 986447710 679910069 942803816 419214193 495403917 853702896 868092696 877692817 957706116 985395596 986502343 496551990 703838686 652173492 945117428 411369173 428668338 515355685 626502379 798832213 880501345 133288995 526355505 508481686 559192858 171156583 413634533 251804671 392944240 320332889 712334429 944350521 956874662 530562406 679970961 125986628 463537303 539148561 665543840 650527959 787222823 983070225 991517028 859757094 988708727 370414671 545393134 846354108 855488374 303420641 544679723 792016410 793945278 302718697 668893733 695712374 695777623 439616057 546754732 949549927 988875102 14168951 723956569 663403481 674983490 38422073 558943195 119548976 752485238 422206606 954987422 463539412 975823433 492426145 878887693 832956893 859125965 770278829 944647575 119432607 471858277 437411479 715295372 989745980 998195547 367559997 455854797 961487407 993118897 288540430 714879722 512184533 701505610 749330023 997872909 508753497 542461052 653935465 701649118 603920305 609713999 945526199 973598260 450398076 774632223 936037167 951046874 643224477 966570774 571538525 666016672 577096868 833254460 355509922 515696820 5698563 692205584 51985676 301027548 590583486 803034738 502469595 572792710 909861378 937075473 147239849 665207595 306197675 825102664 105726366 585450737 759512271 911218953 360535119 941409865 377266039 961976324 683677149 745545155 862734855 956230815 785919034 865696535 357332292 994460136 774616091 978027978 673669945 771500095 974685489 990228124 240672409 553389624 770156877 979495223 520552642 564218706 935368158 976106539 638143604 815394198 52290522 222004715 412180357 789914794 93784306 217757835 294771893 910332023 471744397 477654086 80887675 621168059 176563192 865571035 773974245 886927136 478683171 897895005 23839880 245650971 696029832 938594962 798603822 861474469 464844406 816033570 938641641 938830296 970807928 992723463 91458541 529434052 427132119 676931295 717124560 720596534 873126139 900860689 583832435 727611980 429171836 774505952 975837853 980119310 15153268 733388728 946085070 958017741 192202366 310268600 368466039 459922429 992991604 998005897 839800428 864170272 567039248 958946005 360649339 540751469 799446866 894774925 938765462 992301038 770076650 908333754 959181836 995745164 490113293 544163708 999311784 999567899 756821419 948080687 596001587 695480335 897245340 967666212 192358816 533092751 461104102 583755725 961410052 969106500 923183358 944556587 801139554 962831004 576717421 728618702 890816278 944460298 619649686 905902795 519570587 527574291 929221839 981322932 530150033 979527217 394973615 938748366 832551343 933359754 285101323 598478218 873045299 984890676 84163188 639552455 686765831 741866295 908751300 999573609 92448647 462594152 992474058 994409337 121451336 992008920 241594340 721985061 102291242 256656810 157046981 430292324 797244585 958832296 177139784 433707683 35387151 476417311 671031029 979548419 339127954 413405057 573681733 926252726 974763634 978643694 35935266 485724089 899346365 917906047 635754991 917566796 388562302 819578402 138207274 242663292 975489097 983379981 678476777 929732352 31722144 174364287 348683766 910125095 322153099 467848023 606543951 959978157 78995359 686561058 772071122 924965377 802509194 948929647 573915174 993088854 546922255 643295007 749780185 776962906 16206868 119345132 872470378 961620041 373770956 835165417 343658098 699899746 959758695 993428033 767827785 820135305 512920736 702751906 853782092 927734935 890302833 944613392 656548855 734379763 309129188 688274499 159861206 686609345 626785104 935465175 525677617 763758102 572996809 917991031 735037694 923544297 474298699 671809101 64742317 703600957 900577552 939852142 57224758 235675146 758635002 805918054 55498461 997885141 911241654 919727937 574427748 786241752 390158084 928961094 925503498 943943932 989140153 989452733 159334679 728546081 56924585 406753549 260387037 790056073 297515197 867384271 94147225 157798553 30737249 47296551 901528212 979270284 758386981 934883018 310438329 587796207 748333708 822169161 504834517 674880410 308809965 410264110 514878417 585651383 522450482 995383535 344481693 607362933 486472234 537168329 594783503 958344892 421131267 652814857 831234965 953719211 535819581 901460890 183253491 591414570 915852188 933736425 842170276 856851770 157575678 554888227 828906851 956188360 268743245 637482924 840429810 870779891 666080809 846080169 797358316 939768031 963846270 976019192 748141463 776613936 437958603 779232104 634066987 634481992 891483748 939336487 389560322 828676634 387826479 402326430 686157475 928600133 846644234 883517259 278774146 951375867 410822976 614039912 124429102 230798564 978756827 983600699 146140212 518712189 906239016 968265887 845007947 859849232 738126195 943707204 16139709 333057006 743500464 829414375 773243121 959355973 274179584 998434366 204971851 684741173 331533105 644119581 973375188 977456005 84426828 465673152 964988140 976315488 510389861 937593617 763139037 769314448 352680602 570898466 784442829 896127104 773858342 942049334 437654786 769714729 990075575 995978280 839803666 896119703 675737110 907369024 407634196 465364278 773454121 902318035 843604573 938151222 606895885 636939445 125971019 987177437 529164348 773399925 106238557 260782799 430117698 993578595 264050570 845574135 858944633 912185508 29289481 933538204 582714343 982065902 892678912 944773811 276067682 661955246 422510167 889074213 920663587 976617016 169208688 576136785 119919591 974948346 288158194 297361264 900010833 923967969 237352794 982998473 701267639 846054753 738064796 946924915 766360728 819656576 367267748 560066771 498159421 689153057 850497961 983682343 362573122 633111953 599091582 832619673 22673174 732567327 79261130 106136144 679543031 709224752 299380015 869678200 160932870 862510202 688777503 822885154 265968694 365386440 110933007 810893482 86676642 188189726 418564412 617578602 415831317 733414476 158372338 810940026 586843973 658345276 570371736 858777112 884295277 992691095 707594460 811595263 320573812 440531079 673119652 749505577 423519367 762991753 891005325 891527096 73915966 247454924 505137362 673051921 685991993 852411746 75458612 284208214 204109315 383213465 587527395 939723666 141506101 789033368 210700366 543131024 602401532 687635838 77065231 590957817 265654814 890276489 158276320 957853585 51274869 230012545 150239263 783970426 71218939 748541920 696940976 759274982 946215845 961460327 449462806 656425541 729042374 877416947 721445044 968699317 221537274 635913364 166783070 454083564 292392549 566128562 477453417 799969802 664177427 715753391 614372415 855309295 910261389 985351830 249212936 272591127 139713737 637001756 504530950 662707313 896067181 960558158 318952005 557823483 329272403 861013475 259979512 808971623 646318523 801603457 595333837 722106954 314712758 319829824 642981024 914052704 347102421 447135465 818648403 859432824 230564830 955997966 507904517 840729444 561049157 669293477 278817448 466309607 683301745 924289529 2703088 703637491 190018969 378375266 175290558 560397755 418912269 702397599 454586735 743773277 248066567 867855667 156346567 457824284 170731216 743703831 244391020 322872297 801951800 824923698 818412757 827259201 725256450 977599943 865779881 948700028 855210475 963954505 183190007 970764309 164039589 583579937 349941265 966493436 272955060 675123820 154737309 710564038 487476786 542465855 195602705 792425283 796686308 937059594 845507393 988318954 108466495 171955989 541892209 961334524 376679488 863005525 722372108 790218713 453173145 502721043 449073225 597658716 828860938 918744665 337615557 755884029 974003704 995650396 315621126 481445973 55097113 126533470 780657371 889330032 989295069 999625035 857205570 997807596 604646408 703221249 546427939 967908579 477486366 829184392 659459741 840076443 928412987 944636546 186290555 688283219 347439541 918203364 107069359 313547294 872266528 889651003 893477238 987360686 181522381 836165089 696474922 798432066 667667844 799556271 652014434 876952903 828405138 978424086 145708247 832638647 901233631 992331359 882492381 992568491 797653720 885262860 742219208 797641937 340783662 479814563 596901052 762904165 45073135 887296728 809235400 987458004 35142100 565162754 249157872 829495518 227852101 821069134 785716860 912539223 309492556 847909888 416748326 580518376 546592662 592333709 535288045 784309843 276615893 844144122 389297597 727116566 100559122 227530470 537710379 552597899 757093533 787485714 965666999 998862903 473029501 854399205 912177144 915864756 443819989 934764831 775140270 879251172 766242891 819313756 751337437 994817357 285482831 662031475 390358326 759540119 941002711 989254195 700350696 841774459 368300156 978238228 62141847 98907954 142084979 380336154 388782617 781008969 98827300 498370229 419922133 919831746 945038497 952454704 759818391 818850963 532260660 705511882 971332544 979295445 779637661 947653905 871525261 955334212 854641059 883441845 275582098 847403125 390986263 999973694 907185388 964680757 74724886 294272417 686947439 880312486 817037092 954479445 466942540 560609895 382150715 631697466 582026450 625239826 537339589 879196693 734599289 806299248 122010838 764769634 444888713 729714952 646822791 750367046 662296158 790304652 480188319 875695680 547013861 603493872 474477514 662730499 129393488 935434724 486924830 698669076 844400610 981874090 456100921 874129465 660430907 722882126 161201819 668915385 540011053 698899970 401058765 562478322 186311095 546845317 402456936 725841950 56685651 134935696 626346869 666239945 515612054 927587787 596347638 613693373 139148560 499699917 678696977 958346489 273036249 425005763 966972224 999334050 97900581 234619269 73192472 188006155 81681968 798705252 429292244 642234471 258829540 731825814 559001078 635875910 385023016 712666901 281234703 521494044 968971108 970300150 596097017 926027823 368274562 981043849 255891718 725933821 410262073 444327368 160026380 259683742 612883527 776872723 437455398 450106512 909555544 995871409 467096484 785749788 343943441 383863654 5184874 704522303 777985181 933432521 379638655 873216839 399814749 586512952 66724894 897403179 59418406 947840376 877985053 898481258 234419870 866433501 482840532 650982237 227492439 909911767 205169544 783594299 407205169 462922350 48333847 973076277 690242640 969175251 304989268 589354690 932441531 945139859 116569019 260507653 635882053 905888154 807555212 894277985 806731506 964965649 887863 737111296 745238675 992432135 38421816 435333900 287270861 552065165 556749786 824023139 86685104 257546332 12690831 31059309 627974667 823787381 468705068 612778642 159337237 397619192 405136933 421388852 848899085 925512220 359962906 972186507 170208322 325186006 253833092 534639409 562039926 898511817 592972147 769170842 773309556 794362696 478413691 575653850 625714037 799887776 870218099 899284215 253231688 925633127 852614998 899288783 854503597 991316304 213853082 757754601 424493173 917266546 815478968 873157004 614224983 741114426 629524068 878331357 726083350 771362978 476861428 778500130 424269937 520669090 695724398 819159290 47274788 695397302 55810331 226475274 487335656 519420845 567550280 635327447 141188543 632100306 496410793 901777414 993390656 995349517 448290550 886779813 480371757 777705321 959896790 970118577 518935917 993506578 732850020 858469306 548443629 966320188 610650924 803146593 658738199 710906956 925578264 954558504 593431524 853030846 332945519 910419115 733064583 861637663 526280115 638397188 337038878 802959874 819536942 921089034 102404454 931955936 953575155 956296671 288235496 903301580 78180327 83123846 539543462 964123669 795626870 874347248 277610997 370290598 214018755 672703574 756219030 877219706 694083245 921851996 218382651 376647280 809370836 866507409 384654720 687679140 772846562 982397290 765464096 885341834 149428943 885159333 400761284 990908488 345645130 740754611 154791362 939200282 730233499 923125202 166651946 203236893 859526753 915386154 884240746 968186393 160747434 675877600 642764493 970264611 397999975 534902049 762487868 896735369 999413991 999425163 633042641 837733667 759171078 833886837 809146662 842975861 613299561 895029310 48310756 560895114 752118434 824270742 634945851 955938400 728985024 999695213 691800277 817783397 940459433 995326035 77981085 963151114 476889260 816336298 798478023 828646609 357365107 686120905 516868909 896448225 901503721 964708042 608776869 626694342 34228805 317512823 629279330 666866728 590696364 734006027 424769231 764091399 884139225 993757652 872844230 875960499 100992444 665934698 265899425 469630746 745666878 828704026 335950367 369196560 141119591 336797383 904740511 976614822 372210339 491424929 836148605 953172352 66812064 734320858 643939157 943326453 872297280 965476436 176372135 484503295 462078882 722378874 648977131 853998508 922246896 928855881 36222234 939595096 532931651 784741481 348725453 395907829 784630043 879700166 990379016 992920546 560917064 893136415 701373916 846821601 266905336 861285731 810689492 962046182 465171460 762317948 545539155 597651926 65831198 617075580 798509354 965024382 474562225 554537919 869880193 950909561 940054670 962399299 201384206 276649081 245340996 308544725 856367212 900239775 137527020 316647994 222421508 845526635 332093343 660703786 35193132 978039653 869594876 975486401 575396004 776025563 817721046 891841282 936252316 957231879 465414480 711207890 437538914 678152672 453089610 653770501 385468998 584470650 684006876 732841871 502280074 816573892 566148681 584241028 638807727 682948602 861612333 925775832 345596899 685031071 113248437 974547514 180572310 215318324 619438595 812146191 407841202 971665036 984054728 994646144 632829183 634667054 987743842 997826012 163335061 729372212 550605088 934265934 574042219 638670116 73105349 469124146 597591133 808405283 48342544 315673461 396068441 468656489 789854064 893162050 90675419 334744427 609643261 789303861 353546257 732439320 404268506 443571973 204369800 426632878 632525983 743450933 373559352 497759801 856683029 922563701 920513009 928492045 620856765 663716154 964685740 975083643 52994093 603752621 765750360 776644752 873248406 934371138 702187331 958893864 750245250 846256474 94426595 930851086 744253219 966558433 759782391 880558241 144465817 682895946 346152568 872929914 166259375 872162708 283632706 566450197 546506632 808404148 496397902 599307252 861747757 913997959 117813932 453064337 579347556 675380582 530047817 665000411 236581196 381199155 948898494 967291688 360435681 405725453 396951888 519053759 817712856 884323536 610388180 674736319 865964609 977965740 444397129 723425601 225107174 949805814 618532801 647447442 41562631 168090729 481156758 526937799 712884860 887484011 201232084 301200487 933767403 960811380 766448620 897310840 618658102 660925553 337760723 795054912 251039628 437042199 250115803 630615097 212015777 521710921 569252406 764420085 235629112 353680236 121518075 975196904 692492689 815938434 101770295 769177761 820546801 872845727 950702406 986818341 977610076 996422115 581301375 584346285 832979322 961139960 251652915 554480019 593660906 908932216 453562855 720185122 552153016 636993468 754636582 856062135 7629760 996782454 221784166 855856564 373606395 913734234 332805667 897115814 519669872 875816400 297134999 307953789 458049181 504497284 813677215 893074548 490078590 571373991 970583437 974147855 138027936 956981357 852006003 900006268 576738973 946535321 283472908 423798278 377155112 979106245 789103407 875458831 203997027 617496404 870855147 959795626 388433146 582588310 861117890 964307365 553500555 929322032 948051695 974564084 636470740 879824410 702565271 752206801 891453832 959855566 929605484 933596932 616849417 954522482 502970019 517056406 781301130 815189921 590864955 928586096 116965418 490060272 907696081 968046842 394493380 397756664 888865339 986603216 809644953 853925268 761056761 958570895 889814589 896011212 971470146 982723997 389056178 996576564 411431180 575297248 122242648 627075951 843627035 980994645 841302152 988633457 700543117 864788412 907554155 913360339 675278499 932258560 672929157 940250289 823882061 858370907 117993337 719180882 468271657 711940319 281824730 441570236 625445316 887513449 499852958 675798449 612000537 975715771 192651973 890731465 9983917 753069241 876371511 973325963 717617724 869459647 377236244 427604828 541482968 671818694 312617492 902914641 280454640 545742789 172794138 822720766 46119352 446047054 902190937 914015752 397369242 871207292 96740123 651952900 787716810 816550575 249792103 646496949 104027550 569152731 954542979 964859307 533259018 988258225 993627987 997891084 139479262 421666307 547133288 969177100 692957932 886240926 479902117 587796887 563334214 568493513 989547038 999945595 318999507 812395566 289305342 940598814 453932370 730356989 162699052 410079767 966226311 972623763 259395132 354084261 923853772 979736473 444087217 676553408 736354376 923266179 323696957 442912361 995548534 999838409 931604955 954089428 55207991 392711277 350045699 395710317 732286916 853547331 652964484 943435904 392418740 433739147 296168334 525571619 4937101 545997297 734241814 966823775 552365345 839445499 404197304 934920081 125489281 995849918 575797444 994427889 505209634 529762242 742670772 779295244 795594747 972647382 156685241 360906388 577643578 651255970 132706202 255963060 577276819 830533558 581872275 766072226 243872133 957134346 985039361 999921925 562343440 991519523 564508160 676794018 433634081 740132708 488724168 510820294 204675595 807079143 785056607 803480275 144779386 368388708 239342474 626868965 165197461 908588059 570386397 897920980 956561202 980019522 882831991 973817866 674065822 705844528 821461701 993878621 320102763 357875024 377930236 668851994 424394531 666973301 8096146 154981875 267209542 931870321 698265363 969342863 4393154 667745619 755617909 865135236 132146594 877630165 59195135 381384804 211727266 946361089 426811785 934611591 880047646 957067355 562114795 897871325 298637670 399087074 9649383 124598677 888161215 908131572 745877690 981086298 286986515 656098030 666893751 762035815 373953068 733786811 559067307 709449565 459757222 767341114 511158984 924086453 332712863 350025617 173522243 251481527 644538460 985216478 886878196 952011777 915777304 930050396 707220740 968677545 249278324 803981730 123586378 704839674 204844875 909065756 940173115 982804563 676864012 963983923 345157843 706294585 780319611 927449604 136347233 597440802 798619084 974615233 841518898 904435380 333635320 503848392 282310456 668067816 382048015 453197414 831901487 964952934 260532455 311264672 914078749 934935019 263978680 777225798 275831937 798041341 212276317 692721292 261937663 327075065 805755665 877444880 502040646 791572655 427953263 695303445 789129187 986481084 716162830 788967191 483941521 771314103 814716570 980747073 862889606 871744582 797319228 963840096 421003182 486533422 22722807 465143147 261856611 799882456 992308613 999414938 317106415 606631064 3761358 394428639 467328674 855435605 682110901 857149315 480794737 641825894 599379694 877317434 533396357 667898991 21333614 759264686 449822905 739825425 389440721 932820441 351469042 865162538 608395051 887356073 595886220 633125502 196646164 936111834 78900851 511081072 314787808 438893186 544576706 953226863 66905159 962538543 897861224 905767924 708006134 807909184 289955863 709179276 53320438 627967275 640107562 908255390 234399054 486578265 751825984 972051404 123607333 709532072 737640692 877235772 314774790 453709375 940720238 969995514 194350382 360004329 598075203 913893645 507215665 602883290 373329330 649842684 205612821 411835846 230562437 280488047 612696169 891531246 804630230 885357998 550165691 778946582 460251016 705692356 76538367 194338911 873994856 958702789 870261370 882844517 837288800 974968336 162055396 371481757 65030850 72612977 303122172 406306850 525543424 825800412 963504676 976767138 423529410 806434212 307687377 466638985 693836993 740805484 841861481 911290863 418992331 592396053 859340305 896547744 124978467 214827692 994776371 998085522 109233598 594672735 128365064 379404831 322165706 368748693 380413126 410136994 438402047 537695428 297812799 688547929 287602921 538484402 529334890 861254190 268412760 875457412 284775192 832078832 366585353 688592057 36456746 185645885 626282291 667342507 971557675 973978045 269036738 657969795 727926342 935079720 636289076 637711619 564645761 760617304 995840910 997001177 447394213 882752459 728095247 806201192 796538888 845294382 279953475 734065958 800880195 878758232 842230812 985869673 28918188 530338913 27374312 751301986 849182668 961504975 349224054 350959760 792542965 884841826 643770027 819463038 720241413 904080546 618894979 765093898 772975278 805976076 372666153 661349231 719865948 791438745 505762058 659399495 571101397 682139401 772802131 979039144 458376201 783590399 832321123 987928169 813414646 910487107 847247974 882173303 194591074 423403195 562855463 924392680 515395454 653349983 722216286 770626788 155213935 187355382 697378429 991868329 69309858 279321602 781689253 911872741 520312121 978860374 203026321 541285009 475764608 720837953 147093250 936677101 641114668 761999713 310724266 320649627 988954568 993785926 167537344 630924863 441095854 725546619 992741093 993234798 544144403 852150880 637181162 918862107 726162821 982042607 473379923 720598727 187823089 807007822 754065680 963909684 265750966 530290345 868078765 877525854 563880367 753202788 876387188 951663183 567768798 978177581 57200045 325379763 693961325 789962797 209373532 276090356 684884856 893073926 159547413 239923671 616288084 868365204 327484070 917499220 106454622 989347851 21394483 284724048 961482991 970904346 759703020 803583180 406938815 588072284 817252764 913403526 895853391 938814931 455801356 739820182 287179041 506707202 891209635 937621539 492615833 584768433 915555837 986931587 489552363 786153945 175835278 538799058 513785459 594965935 996522220 996991576 307384616 856835203 713053614 890823891 163717297 978278961 178157225 293681701 31782865 398382723 322661406 913429439 804349129 892529849 918497115 980496787 923964385 949852023 587030536 669732380 503535726 934889900 723482203 935213632 791499922 992041059 614184231 847758762 635810082 757030601 400311523 614215700 206456051 630071854 267946626 850409423 201124611 820443565 921968379 981272330 976373221 988816016 860148700 940941874 245598725 542262903 150247557 840715896 589619550 822571585 726410479 961818368 14824668 800270590 206017082 977026713 533844147 644750679 72128321 999092707 460230670 889918749 642496900 675859755 531428575 683432933 969816913 978617408 300976127 418439705 895508137 967603202 584369350 933786624 590814322 935186543 284721265 767950695 203513609 581012313 834677797 948051146 532302588 930786724 279878868 371111525 883808775 987216013 500869304 961191289 761451586 930621910 137287061 188737844 563470313 864124040 494021003 816873271 123043812 635535675 269215366 818674570 148377303 812198886 74483401 753644822 901761429 926159788 50077182 186128281 353008892 956635140 247171321 518357165 37982524 456338804 462357180 766900461 12073676 297923163 798959806 916145314 191889114 658992171 549324012 890479769 7033850 839357530 993099431 996059249 521241650 727497327 506233207 829788069 312748226 879716761 923283964 952618637 206133351 687164710 794127305 961816396 792457889 980664979 623318247 760175607 377083379 779686881 608557238 689481019 637284356 801323137 472302458 807632826 950485672 996276807 629541004 741109632 66238368 317607288 637248331 832230366 596295480 688362222 954140119 958050366 624302740 670700081 797534173 861286451 101428801 660037476 250921752 844679355 145195233 828397175 48725060 871259296 132202052 264597693 691332346 715876607 157502004 245655168 329633289 802061601 431076845 641012417 683126373 899902731 3894018 881519135 820498976 931837143 882685565 895613044 561596553 592059359 604712378 910083887 399958556 835814603 183248969 610613772 809465968 943755719 362513525 564717873 130706943 395048831 367592513 492312884 37804329 665260158 660261061 990297184 721895608 933105728 650218338 777553916 766389762 874861047 395423144 404331256 974501579 989592458 796815028 994263009 676037108 957230581 305988113 512417364 722551486 976406546 678028959 988166495 893101640 985134498 492763642 964319161 696959521 897579136 896391764 986906837 160823015 513131145 452132239 773168290 505375334 859969811 771302236 869361943 346097429 802382140 980139756 986050386 730650243 868854434 965908168 984662845 84144412 164839478 566776835 850095368 700292203 737370534 564204555 776455325 302508086 949452970 441186437 880660438 552222567 619178103 825707951 896489471 352879087 417184423 128038991 663808507 537832085 600677619 972344749 983767238 809646517 870945866 382929657 542402358 635719274 913838371 569788759 604739136 616923499 733217512 516380755 742461801 527614906 783484001 68579048 909491564 183295235 960622415 740566318 969280194 442959739 495855655 896943354 935533949 734920074 756036558 639165158 849540562 687213187 729493523 10420093 906072993 209669372 558158766 854378665 874119890 968677308 984610165 808048906 851714543 407791129 976601595 878422769 975753945 820640421 973405104 21193145 303978192 498735291 511983544 143999429 324641945 227616765 338690089 135342304 209748665 201982111 543348774 429486982 924787382 252847094 574846933 852107770 882056751 585569918 651777854 303797475 611175127 926929705 995197204 146444178 176458325 460598662 802374458 865276638 985153401 866726424 988476703 702750019 794221191 619257736 723673278 16975031 580923324 585605613 801307016 845529740 920161762 878606464 924527933 205658343 564831608 522447574 812253314 298527702 808008453 708404424 871272864 244809137 648843371 521200952 979141662 447506386 500694381 876665331 967470459 470072657 652947541 275631515 718401817 366885946 722088664 634871520 651829269 769832073 989893045 142189064 364306486 633139180 645517992 144799526 509262412 588380596 611325489 955840184 979469544 939275460 976080705 525609846 640649296 108130310 961223426 862026041 898072751 503593681 629665882 644808423 867239752 23887636 688899802 143310132 255821083 936025239 957901434 140470523 348586631 143737327 202378669 627312465 647859488 84370058 160502508 864509182 999370020 523372792 708702292 990377495 993441103 746807314 825411661 607664630 844699427 124488723 228530485 459942865 758859490 231525059 367186211 155880347 685781339 334882406 571580941 199285630 619767704 843164765 989407757 304091569 411232618 99995616 316581887 702900852 811405851 971811166 977973259 333130092 820673388 226299205 456614809 398200786 489443302 538056369 823696468 6124813 575524519 124390640 959995641 142219125 817329638 669573545 774458229 421072802 701236723 691372591 786091556 236567406 556147554 634116801 661549144 257030273 283744463 204028369 665690639 535106734 775499806 677290650 816494069 596817027 979814727 41083497 934739031 421679406 978980245 108891320 227716641 74643 394933522 158355673 384284448 357515460 903258666 247974025 912837337 379962593 572777957 115589896 911711350 466844169 587093560 263660659 588607773 287537796 377003638 620277663 624733419 61600139 326358728 852105824 877068639 274519955 856659087 214014898 649455634 769259511 991603392 591431110 851898840 220427925 772401915 759666549 854194143 615173145 893018314 798920403 801492626 757330074 763551060 768738262 891740523 584561463 763121934 72908102 568877604 930747178 935797279 513216346 650936900 329976129 379944198 579328148 771325084 410517788 494735122 461066749 910316958 611276481 924606545 561043258 847237715 244300620 257083355 859032875 877889759 486727580 796292287 199030943 964383920 678898844 996518934 66670625 401892169 255960003 916823952 112798670 143851885 106034037 578155683 889679187 981998193 245813979 900272828 324619203 326788205 675042579 985021669 720587766 784673154 928897639 934298654 890558612 954564304 214019834 723484401 518243492 546186936 177164254 860181888 160320170 558629904 253568745 729899041 263022535 918019929 973755984 978972210 433846765 797304415 132330179 535154095 101106329 805263368 279427345 633662200 372481922 998709340 55281936 336640038 118338205 993288278 381755159 954188683 764957675 913558337 54910216 738049014 562238849 704990006 531009701 898573802 491000553 784468173 423417290 863190761 375144445 717329673 758648445 879226670 810835571 890407868 163925497 817742862 715592327 729852553 767709876 934931249 120432649 244912385 296041996 595341871 895666319 921143822 866624772 971472604 367030568 641112814 891618687 891951083 888613469 924594411 401546338 642634467 304925731 529775850 780307719 907532447 952565399 996145555 130133371 847734225 671149450 910184205 763277876 766350054 868988633 946523594 669128568 822225237 768092102 917570082 548752369 785417843 459381784 677764322 517882529 805596991 84728592 238097750 771545868 957879610 359701843 819651884 87066849 921345356 235663955 967111249 283037523 488542807 249492223 403977421 612657190 749289666 850744058 900860457 924161937 998746131 791801791 985486372 532824505 980670061 291365089 569075214 856125590 884290248 709310709 876665731 859997259 992722514 404057385 773080805 711613463 955865173 864248665 941990704 145619258 172382739 533472696 862039645 218412798 500114176 590574123 704003997 313637465 811282822 422024484 909416952 196100700 908991443 886252675 998250628 389990793 526435324 128448823 159918718 368096629 457486102 109783477 515310452 83666725 298043325 830393669 893524266 94869466 334385226 618914191 954629019 826690213 954694333 742434993 836078727 724219085 972151271 839645471 970134498 602602701 852050788 13033767 389890349 159266437 293170144 961896071 978477828 810023840 819145256 807536180 982278096 164970954 580592316 738811841 795079911 316946802 729394601 160610241 848983227 747794484 865227824 897659942 965853984 515594374 835690256 897733243 902427222 75703243 806746778 560368555 560893152 497794103 812827708 930260421 991406926 199310813 500381163 270647388 890999204 528907098 966770220 379334281 542006222 227026721 872202459 155251734 342135653 214031221 265803334 462034881 610211238 391022577 748435298 973203093 999375080 779179862 929349921 535499940 967456111 532345956 964531779 772755687 935455994 189294023 456181229 968662347 971349130 901963342 929255430 193467989 209601957 267932068 464361325 339169131 917346725 605881159 718152907 580741943 786669128 269669464 794699353 510170337 809327456 706296090 799764085 401490350 429227227 216780399 955248454 286401677 657204608 852348518 875798332 893140460 915399182 162257102 303679406 880016599 894418960 985161732 994777385 525908477 817015800 750628629 798947190 751029492 918332651 339667582 560499807 430438718 736945536 614376041 919549652 38068549 744227449 4925651 391834017 174872676 930907153 246709421 806334800 605380579 927714833 245854851 522112006 310969786 819273010 550414498 648325307 41406306 826707918 603441294 714723530 225507050 508101561 160847345 836514957 631667862 968806561 541427841 738143167 159733630 579922082 400160488 416227151 79018392 141197139 596334607 837441858 735800982 738494796 493822056 977752174 379652275 695791372 658621447 771316416 387308857 547698235 226406735 881218325 71186129 485463460 438892462 606673930 759459456 877826033 64716494 367665412 121000281 799778001 58055932 669409380 634113986 972581205 401582110 974483980 168591327 499846245 203433488 824581757 967971020 997390043 805021851 882330791 688405899 748973019 410276704 942295679 155266945 212402601 110149773 359771759 164162584 430583743 166383710 273490347 524009714 966382397 634689759 665569659 725383872 835682221 567917883 783038154 399973566 988495586 197189840 809219695 435009581 783573013 872140562 924463565 849839064 899620071 822874645 856201687 107068824 597133378 169289007 177230346 998971113 999775981 855819178 881168883 930782413 945590937 830201424 927449630 457756902 918085236 26572682 715721942 508485610 934407833 302888306 887238470 299973274 847740254 462042276 952346273 251131887 924946939 48409219 795303174 48744872 793850105 114368781 651576362 369802811 450039777 418097386 528802287 89715344 163653762 468055104 770018171 411749852 446293259 790653285 932677228 579576555 991715006 170238874 521143377 680337999 819188113 856520709 892012974 336302140 606821994 678600110 725974450 14041345 226725986 435051354 931374536 926617890 966129467 373131351 910365598 156290225 875031219 631045835 762829638 628301374 908175280 52574991 621005248 296355555 674035174 393459243 972833230 834918963 912876646 915919834 986517502 639845801 926896409 60692115 455722957 762935647 789021779 491438542 693864839 463391024 715670480 97337338 639030196 985688161 991634047 364202326 766749730 91649752 896429129 113705956 154496892 785569396 795242853 761576117 865816293 31873757 708678339 984362564 987413460 774268139 776268939 317070377 860683402 264369980 920071862 187061284 482526871 963529923 997250366 400588137 575074153 250867264 302035238 926271623 969523308 545513720 966312625 736739601 909244100 145714078 433502477 293103975 432560480 426921682 525874822 323115256 350975268 322495641 906246720 394924401 935795786 845670737 982119663 806555137 969082478 347097074 953169893 72311756 124424411 135931450 818779455 90465135 758792204 859656974 927555464 786923648 812361261 27385267 735654917 534548356 536855361 214387095 510496945 782600812 854996304 277396930 750091849 935571329 945919378 981578477 988665836 696084849 777411859 579534142 654516852 557786041 944926704 248183069 968141989 850275911 951528195 782989938 873981384 600134471 752339034 562935393 848953730 566489735 803101599 938662193 978592970 578216876 726032263 820690201 948343601 199261134 633684648 371475208 743896532 409622268 973285639 337973988 696338056 757752480 796777251 898581563 971688538 606934275 757497686 654830663 725498432 796468082 936918553 909997878 967439782 560219067 657258155 613123208 856654693 935405242 942706830 846646307 912910787 872198566 945625290 209990891 926218504 409128632 851219016 386707253 863828796 372949473 921691747 941451311 984361856 141162585 394877040 229981403 297549558 869621136 922479348 542372501 808584260 109851071 580801467 243363428 565218701 476757031 778812602 638688852 651020548 8374228 433160006 467975087 729962286 12041679 165801680 83636289 130570763 765596707 906532973 173344137 814093732 206846280 843182793 824851576 830755141 57786981 944396408 611710268 708611493 844784466 935536670 259767254 806825569 184760075 456316995 398974410 498220297 825583285 977027105 516415559 781712648 571002612 578461761 617337880 672610181 60006789 204188718 517705606 857918478 37931665 987815347 153840338 893696397 441903362 545986701 649611274 989400246 83632567 385829733 85759052 208121505 722538260 944228499 572408374 825482402 775368218 882521009 177250065 375269567 792587417 987123563 299463388 381281639 112837162 480402434 808451401 904367392 311869570 748383058 509382829 954915839 356514999 789182032 843085254 951183663 436026256 897133828 606729994 672182658 370280177 733793838 409309651 901871517 855804780 980697607 652072153 868746285 392064709 701848482 296369535 919047197 187486597 602126988 72782100 311242797 316591767 796777859 487651541 581983911 693540541 751894735 549138982 912510579 295660560 434053553 685681994 710921018 551943541 669879368 557969911 897134073 291943601 841183991 295719359 395493511 790980772 827501850 307825392 666065533 844534903 912347665 545986184 562425767 737155733 840888091 654520848 728768801 536830673 807641088 138913715 566088496 739444792 769515141 496326112 893448553 558943039 933683331 81748852 865389701 960614820 994827958 472626344 581337556 442079210 740454151 722642693 884510848 813489124 872738492 74140873 936558289 86904862 287647324 317414533 421355299 178712803 927644222 756133262 963532054 928398832 987317573 146813365 991326167 152727407 776936269 143794323 799087079 997402488 999512651 307988276 909413195 880289695 927407606 358995550 855916305 199834435 402912458 98939401 652085619 355949231 658720681 668666431 735396260 516024690 841777464 70311131 973830260 268864407 486405704 125418932 793952769 216053224 950699548 153763769 784605930 773350060 856261018 553803472 587281080 997568210 998670934 870766179 872843893 323262310 578566179 40882356 306517321 291828983 693972104 890911183 978766856 666109046 684438539 46295773 981362852 689708171 940467980 631144004 631973875 458753575 707545714 299856002 308091117 832189290 856610040 885569646 947793640 878953526 885846451 632490745 741488806 439022486 687068643 572771 215487652 75305675 387015661 87450982 343642032 488156264 524379083 312629099 892002294 418785265 823999430 101821135 526322688 959477732 996564165 32578922 311688282 438885736 650641198 654174117 687809339 777020218 954696982 678746771 687340114 502110921 662310348 220086775 736410425 229334316 631141577 181917204 455520251 232516733 962128644 465546680 948480381 646497660 938409848 359372258 970165145 639701356 696836293 438471490 953002675 411044574 445299784 678203745 833995142 57175176 626605670 441264645 838124722 48463734 891735747 169820729 665396830 423670391 904351896 701414237 897051698 770611886 834395059 379103393 784347908 798552421 872855124 422473893 904781403 596693109 952407257 383434708 643253441 376103625 983637932 335206203 929756863 692991228 800577136 285666647 546857059 155795039 497916177 826707492 986853498 516141193 638644446 834892717 907524722 291569832 922518577 50588621 749330752 514698073 548285938 307438961 373402308 779356848 921092572 728967892 801649902 788849802 840839562 514843712 622365379 246754006 612650961 377005696 575098221 230491260 715162778 138851882 971898199 318378123 508124829 650951953 708186686 269204112 695003518 788644085 943064692 446692030 692600553 648891686 986698559 223981041 476031300 680023278 711808314 752924808 956903948 383965224 838445405 831741473 955067373 305208106 993045699 218184338 588263193 246970870 251624173 372320932 392479684 513524783 770223194 686579183 806343054 91982777 224381587 308293511 933623655 457965856 626174727 504633738 928294367 925019445 949397335 848171909 898212165 680136774 754258862 25768478 64154915 366858885 981767825 282042305 772476806 382574357 495575348 621097247 747867890 379453871 533105618 377567135 589062025 948954556 991577245 385171309 736168264 71093835 617456945 818433677 855205370 264157883 935263648 794407910 810600448 316723268 981989629 778384026 942660482 398019838 682998938 436047937 648112000 969295485 989572440 490615920 652576089 926892023 973335534 887366450 993005580 142726328 233887215 348150696 668258290 28116409 683894740 860393283 889639643 662450775 809011382 644438394 719424523 524520012 542988457 747214217 768166669 946194802 951630941 772000713 998619213 661581976 936217629 18093362 516612745 92597327 715504126 998562305 999555790 137343732 420727659 374749982 554761718 150217163 695377391 817334373 975029256 800222251 854629440 450855993 849444960 869344767 999463496 856693051 909286924 391150157 777518954 712924956 743890663 228083978 737238583 777448563 951784697 589690733 804595804 232545995 530711112 150937000 270972069 802970593 950338053 467394654 630613374 749559560 848396631 716872564 963256024 856045520 900539771 68695518 240106938 441100447 456270966 156823903 173648957 201900962 596602066 392066423 605505233 288847508 969570834 817117724 853214299 17600064 601691614 139599032 992458774 98558747 291761279 720735457 796328480 164776593 271608196 715419359 918727612 522023081 786744479 587744729 998309689 915833298 941945859 970096346 991450626 104280206 589293945 658617481 799122760 675183208 685330140 971489890 975269510 466906607 895466304 105267208 995895110 822841902 849532813 34116500 162062758 391159368 404287270 136612551 979590944 70292886 932316552 948621466 954263442 994107565 994409890 684639544 883432668 4755659 406253315 357855152 902700705 17353474 300247023 446689530 453689591 347323927 874981895 807200642 888718448 326923227 897558447 779302146 809358123 85687452 649927883 753821455 845000151 922408499 929499477 883348579 947036992 19937349 322284660 801938217 858518780 434022145 662372485 807625466 808100177 505163180 506259815 99260793 969538376 803975083 971345517 54614378 225705608 699505 873806048 20208 844680170 957122449 984207502 451574002 836050665 955556135 983308195 128995997 411288966 747765577 768786513 742302706 918934472 206068184 431502737 750953569 825778790 409261294 842427020 863140590 944185192 289882446 705033558 897431904 963136073 883611369 893152611 697137408 987436842 946171803 988912901 905559219 990847677 230744749 792791965 519998053 798169807 943014589 971877053 497606039 632800854 363910614 754263610 889710786 954485726 137902072 237402350 261866661 584753237 707110057 817500880 905970482 994263374 620878558 905623560 565817040 795573360 379483858 781136326 128591202 582378524 886299993 907413579 491541825 678533477 942801244 946974737 949930585 973018023 834124222 850895799 191217622 437116157 372665338 821769975 283054046 355941362 176188865 932773454 508261675 535912432 927195584 974313090 367151628 894487479 871596915 906454022 287022380 819456677 494945584 580596643 214975833 609139983 56885314 144735031 507682431 677562199 634464278 704087823 528943029 698154495 273966472 288241627 196522496 594771025 219670360 824435999 989479732 996539186 945312994 981431835 217628776 900285654 770660807 834188806 136405216 412178057 532947895 543791008 285029934 916141189 466421787 961436901 309292699 826456465 191590910 600613681 96054692 366159971 152781043 901243981 655022935 940970007 812343108 939501739 813573751 837653598 416377382 795335065 868326061 887455447 736940541 859268706 940643910 945923480 57893299 434255185 188874376 672173284 697274843 994495957 33035016 899067482 715144894 724626012 161447771 767335330 117908163 892176135 971967542 995059938 749597183 777186188 249215939 981166362 148857313 680553216 885217093 901627706 127146685 143777085 755298032 993966623 35728319 880077759 202850343 721671012 714943683 762586506 455396190 930753584 27823318 186466302 633221234 720042538 481678693 887342370 733731979 990024378 735074067 789375532 909148188 959055420 350098225 976602806 154845880 977960211 254835437 392139772 139180953 584146159 164923785 559821159 246235277 997934632 680645885 987962316 748710515 880427016 531074198 888310595 752708835 992403579 434916885 943045221 295368548 302201575 358524323 362828200 666698543 771028005 532155003 701424582 931767038 963328190 594640232 625389367 597188677 802243775 556878441 711397304 470779580 941437230 931146324 992291310 270180293 308948253 524821265 613432445 271397220 901999940 461686156 631095338 811888009 928715962 717101626 883381569 890591651 918301633 401995413 931938191 551950761 655089605 226303256 252942000 817391153 848153771 197655884 602624925 181441943 594777159 869455980 871084764 388657979 488672879 840418805 945568300 980490982 994814313 710031716 714750761 551420388 561892750 44645277 579910952 209590045 559271643 382822843 693940368 55053228 308335510 353301044 707924021 54418220 481776224 751542922 970272162 733238998 873852780 435978794 844511447 670167722 898175583 735343492 855212880 198676070 961261978 198631209 746012135 34018481 964281168 693718026 802346586 965270935 993637693 682570479 967689102 398764397 549188873 637176197 724033970 391676227 463733706 665589642 706314576 58828142 521792451 899733572 930387763 921136015 947034908 838433309 929739901 530082073 587600103 269480643 780522470 601145419 924174660 4674858 75414245 291181921 888805945 379244027 988463086 715689193 768879001 522063134 994419557 510668402 826957729 444816441 476298378 905988818 942336788 174972718 756074103 297725841 827022555 507864150 731979884 960632868 984462437 508461545 732495424 131655234 603622680 807425246 998723944 272655222 314481274 344239026 930881426 219256064 353980375 950143157 964376926 749659549 758130352 96448561 718898492 687785854 758781557 128873788 431789344 214196139 611604974 670264873 809498935 712963102 795460135 183589564 493534564 328805678 694558380 787541296 828449509 801954840 894588953 235942547 996041425 645516119 660562258 638095229 687139236 571869198 575397509 318701579 857514359 939499338 958573768 102647059 148073032 229495069 508184622 222893928 484508964 66742003 791810994 693287844 959288613 650224042 932970637 418792058 979359008 871327005 874494267 87684516 234647160 760470094 957255625 670919745 800346876 256513992 304682031 431156532 779286724 964841407 966303060 984564045 985478798 707053178 884190998 637108853 728206445 999564007 999661278 798371995 877457250 647373291 965194126 7187172 852266840 706781522 873315346 557547682 885112689 886766253 907637895 566251342 741468460 500737134 735773322 649838152 904044469 833696950 835200984 955445003 975252048 179638758 612182395 743642237 799275034 338456848 495799384 298618355 934916678 418941586 737380211 698034812 943940003 745386974 956434582 298548275 579760935 22660781 648399791 644202756 733580820 4729811 767861584 799323452 880977638 569738343 881162529 635221111 825035771 316986531 480328685 747710330 808684318 433777389 908138299 687222995 696082199 356684419 492451795 335098164 751775781 89685008 664350142 456813240 772568471 623175486 997249721 105875591 679639248 737422006 889269083 232979534 836145438 4344329 238090837 452879370 771573281 276032151 912002032 142027997 151349943 97200070 488072394 207677778 382389858 569756479 758432237 48891943 673739585 904623319 932778328 625027919 818579691 834069150 949849882 281636958 393869301 119088964 512128751 627075181 823944917 275662131 969788685 245896596 886894214 158107538 984526076 838323209 984932808 669852877 854775122 148364713 179233536 908200935 975621494 30664975 57411963 476149745 754273481 421301587 955289537 265773944 583080350 360218468 669240997 127150277 888042052 121726806 702873774 701295767 920092867 545826303 905253730 741706003 763353752 921112279 965093042 631588248 710027016 88320470 575106762 506162821 816561924 404478980 509345532 780488788 925521993 338482892 724701269 168888241 215212849 190266014 705875376 29869118 831035249 377984503 586050249 590233736 726032621 637992545 816021721 460691676 578970969 248571639 921196378 46521692 464165756 554654453 861682721 422445343 787249536 698493372 979737838 887762268 917530695 647928029 730374269 774887184 803881980 296266177 562803821 540894616 972781004 455574890 934525952 283958081 969068390 608529081 693782233 87699258 374269605 840655404 978720008 681192830 791740080 323854253 967049342 592560131 786841141 816131540 945657762 531084651 969841062 916009097 970798695 756817275 842119427 514920895 930647186 437326104 748571988 502950948 579441432 770368689 889459556 874792697 883308494 929115699 992780609 690289467 698832168 293465384 656576972 507443211 573551894 169456684 957464401 524283637 866769275 757922554 870054684 597929849 838609285 381162524 754280210 340140944 692367362 330595525 827822292 23965384 175134615 115446617 561590301 818012919 865764932 735506210 774988300 126949856 246569214 572509309 897223599 964564727 976125465 179223336 552231716 369491235 740014363 528659957 668336979 247856435 841547258 812120722 850408306 423015093 604676614 955103338 996727553 408803937 409998152 455498583 753622395 494098944 827771425 259954043 680430157 604929522 710639468 339470390 838256125 372024695 567778825 409546887 806854303 309486932 845248716 906396377 996268954 968882617 983397275 853982277 976608274 679493873 819080441 673676586 720506538 26768208 285347554 652775748 689873897 660728160 697853935 670354962 736831601 446623472 608305492 759328372 857940037 111087207 620012727 311312091 628272297 245801694 573258261 684236211 905785789 569443424 878314316 678804362 812351701 384579437 445938648 512484657 553200657 450726058 510061662 759045428 993103325 937798064 972667212 633805979 758045555 966040538 991462480 335693329 638527301 875850802 963618779 234459630 499678366 46256789 727358917 161127765 175708525 15170879 642828351 390122043 706577318 188831872 631231294 578104274 658989019 800928713 977389144 215818994 358856404 329100073 686832806 764184321 919881360 102246496 568257823 557904742 955433680 885668370 925819330 838692782 901363134 62493283 952066094 386674181 553946489 725652954 925529686 139920920 405086133 388671057 959957811 256800418 412016363 847577009 889851270 162183487 785233600 901787245 909660738 593415621 747057183 720039393 936897780 772661396 813726424 769093381 958287952 703171681 819127400 393131043 496799922 893888700 957020462 525567890 886415158 68032116 144865709 925351738 983785918 328598456 476163353 796549779 852030308 346925037 487548549 309021084 732678211 882831292 966494209 200628168 369187575 62384006 538763481 884562047 892120526 922953590 977300368 568370818 882307917 840835121 971287987 719536931 865820172 551787006 850848211 963624179 990890202 167119112 413810763 130068146 527616322 65922330 363018216 83695858 111842839 188150102 389037885 399016952 707434172 97619026 876441380 535067016 967328122 807584321 819866456 78728621 816557813 582512747 935916341 287009547 395462444 466167384 898433089 363436627 839963365 61074813 71995237 759195634 793309616 347976377 428314738 63691419 653155255 625000898 823869092 6042955 503221577 896998927 916297655 923386858 980168408 695136155 988572335 347736221 767886764 912491114 978553425 664656574 931340183 725650048 979976139 980191814 981937801 172169416 647561397 383101654 892147487 785976977 978888201 46301241 301479201 297995898 579052642 83984245 482141167 813937924 983439297 444305872 791790053 276387424 781860535 839193376 923398504 65533770 139102942 283728957 911967912 872558212 961458031 746711777 810827163 647352536 870830643 601086749 821520164 789365593 792548736 476635730 879523510 553930251 666184375 575934982 742628540 925945750 977434492 457298755 597765117 960706759 961276695 677380995 782591024 47427938 426472886 850007275 893693678 157711925 636130850 752067327 883736737 106242781 824975717 101747852 562618155 461947911 492690969 23166786 593241486 702464365 980017801 257494297 909160719 722867058 729280151 891948567 976957133 879265492 930264646 340316971 849682634 835849209 864833121 963835140 986268499 988189337 994854367 452272425 794715291 972585210 986455486 188511192 233713724 854570930 903165861 304545163 554351613 425987258 883844069 265878856 629395807 760908906 851996978 388676796 994657078 502826724 627160158 530028479 737655465 269523649 998513701 492817585 825311314 344643811 439856120 18043166 356545974 225997060 554119819 694136797 955131971 62442711 610956526 449132598 600626349 318672730 880992847 165126309 989977401 95827372 148205234 599392605 912557862 784754191 859862528 676446595 822992030 495090658 918192752 614609555 885073588 360752428 984354251 672104447 800325918 316134189 852396517 89422316 729871504 188861562 908924907 212804622 359712261 960557287 969568675 434994756 591826628 895418730 909817365 952247037 999838798 433475164 616316826 837881848 985459052 134613152 980517724 614186323 789641769 737587959 874729111 143574633 281359532 930099125 940209302 722821628 748182966 59343811 371399017 433120524 666361735 153351846 838566432 314491459 374331213 633514100 952003207 890653389 927260564 454184002 743267703 889142924 931257867 933070586 958980383 117957560 746981377 130988525 782068475 543177640 603926392 319978163 328673433 733580050 772112464 566098192 820170435 444656624 652831705 765653777 810150943 515258078 688341917 949553786 950068683 13374142 257194632 262581954 723194537 813916959 972805017 926356087 974220925 383028443 900881624 85432082 830915605 622555234 640925235 87405481 459180880 65422643 578949273 969856139 981652664 645302414 764775336 852620378 923076358 972081933 981911908 564362835 837245144 906829215 962822862 307061990 853976706 107302370 853675294 96848604 951401739 722216657 947947015 763416703 945381496 509952570 873957319 213594544 286653075 221859550 389443000 160191650 455265642 140683769 668003524 630794234 724868091 372679279 475637411 941043462 944750603 951104068 996090041 563879856 824249245 463173813 717293884 978220424 984635926 223835256 616516071 104187131 400882098 909861224 970205867 716850320 771465068 691106856 991213832 798528215 899620622 869778200 905189727 376500382 974105923 943228118 987053487 168070620 282993308 103930060 619278115 401843731 465857373 560448346 623059994 239751854 382072577 226686694 545225364 674525391 987351479 955203471 958674214 426702050 916448077 640106994 768685382 853244592 946143736 368653125 766466245 118783099 223747698 613815161 885785605 604365774 703746898 899178660 926669439 380025746 735241985 352600964 831864158 994060006 995393630 684418100 729638084 986408901 991329629 20966277 375735236 227495250 546041822 668552577 692434613 609808781 971022177 460632958 746699684 603235359 783881057 931140858 968555737 597132642 790680331 337224207 862672927 37194373 191488303 164810692 487927104 271959508 657416638 889896322 915033501 72461660 785449404 185816127 903849370 286366465 700254581 258817213 925529151 288553926 906814503 714967377 859916247 290586925 822213521 283164429 710331032 891435166 933709539 684796811 738598730 204251089 660415078 850632677 969104707 553986007 559493373 811292085 832357002 908490198 921404808 682220077 774277463 986610728 999281795 655538356 935127204 340854666 672393813 580016957 747246817 851310171 940803473 704218273 776258699 197788691 281642487 754442118 761110569 833434145 885614710 735868405 831552300 999886964 999993565 127010529 750615363 767460020 955687774 869360609 981422128 68052266 292507461 562645062 745559770 232407398 257290304 683504103 877694557 152487032 191087330 15872105 308538336 402564190 931826988 964141895 991576806 657144073 940970087 806990358 953590158 494108729 840759300 91618777 268067895 526468170 995064313 253537141 643268516 26513884 835306397 421146628 880971289 311683602 983065393 994034442 996074986 854276354 886280938 429025453 498242562 111948849 222003895 267655196 951753648 925150768 935509354 357753288 475510054 698823295 966207781 810904971 957091863 809822228 900901379 190813253 876803504 275860159 836474822 489650872 753506639 988542823 993502985 594148291 638339163 530013116 608656967 124634655 692386581 522641916 587600496 752907124 860896884 839684575 905222461 854933856 977097793 13879122 598311805 276412119 546488544 990906099 992850830 412365047 490419419 988983675 994477585 856457156 878166304 322042588 583665060 218552205 330127799 407430541 521237163 759549312 899500669 212049989 888979985 308020325 563556970 544547213 796550287 710053621 758961690 460157530 553968266 936926562 957342940 147905247 619245951 329522665 896225266 15167940 840668435 809410905 936526098 834672145 865233500 51869620 615067967 379054364 761094589 990606362 992073324 772050701 863024515 104572929 783650149 192142183 197660717 511206525 627305483 64708806 563331538 815193381 864765946 55772298 88868045 862034080 973287032 399118653 995926669 80724847 676600566 802710599 827477160 199175253 409359835 426027433 792520033 255502967 849179189 683546236 889252883 608905582 862837654 357214170 637906704 341836546 977869074 608838975 708388966 124406964 428113517 347377039 515116682 607531195 837992420 487908606 608554504 843410241 894598466 762533906 813887502 777114334 850663977 492270957 616872971 828587723 891154708 626430126 679478507 330686938 706331650 827218198 924627967 227008354 504532061 834369384 985017791 632569451 829365012 402541983 635677718 759907613 787937673 415719874 921258506 774536833 793648759 330332601 664943214 849247548 936861493 460482088 529408982 670948352 697163116 964370017 998633781 632303893 969805496 993274906 996905424 730321412 924214375 741884800 945973332 999253179 999459338 160256267 845199679 244906385 580689295 945003165 971385847 546631786 613038251 843843974 898280207 940109419 940410447 983300121 990197367 465726834 834024942 895477264 987172478 547785521 599674248 667637413 831950757 526105795 565239509 337777239 586209030 509630016 808739256 921452613 985231583 581598223 903259565 350079098 617879722 426091194 816596925 520133287 982571894 447463254 893797924 997573278 997642059 517197859 669574846 847548188 986103743 123462594 882371263 107270067 743007805 957562610 989575443 904435641 932321778 903728121 999360779 392986542 584986197 180967203 789698384 872462650 932809436 836598692 938984092 582228007 664853771 831652614 950161447 245923440 389099249 335160529 611971787 874262315 946696417 334324863 738439125 407944782 973968965 103265051 822352559 697175762 955817776 478883808 765832810 339022882 696095598 59660526 421902268 200387119 263026006 986789833 993351696 637868995 734776109 222453370 636188337 751557101 979893616 94270885 674805225 231321033 308200625 20699580 705277040 753522870 957032443 474983622 844333488 533361141 610673202 76726804 257796398 811624262 925321523 509969834 834087656 567832811 818218457 107855026 333392032 645084979 875899246 481520204 504464976 694197705 948630999 258846741 447970201 508149136 996698664 718201601 937229979 116145812 373015107 108794551 546869075 181609486 975350152 331477719 494541127 199272615 919899620 916381098 974128736 911022710 959642130 310302193 854704640 498334804 605604802 384257301 883590340 798501383 861877826 60370810 716266886 301505286 512476981 475287172 810470371 119574883 495734772 677977982 794393577 352385611 973515036 426391091 565865552 538777703 738369371 211964909 621393083 547686156 873171582 549608891 674442072 220126265 450635798 972687177 975026312 242775870 885992224 479000145 665240744 76287535 456613999 371834188 468577759 994637909 998909137 51827378 492346160 396690121 923921183 50061463 982083764 993439920 995555795 926075279 949594676 231446680 701770310 464358116 686463943 221239127 695395303 865285496 998092167 558453074 775410655 362656745 467676910 101293245 840957742 867682112 943592597 122255541 440615069 557925750 899851688 964327117 981832782 793811456 905650681 601800119 971304985 768912770 972189000 468578010 596802867 317912607 845657734 622238720 760491726 707948411 789625644 281164988 693133414 176713362 450247871 997999303 999268681 639557787 907268755 341080460 407216928 331347804 544497614 559701671 835548731 58814342 323755809 940347198 963871966 432236870 744599676 434299759 933574064 78165756 534657892 337699749 822198048 496425789 875194930 270163345 812447600 463385793 472093099 673566572 951198534 219069995 383112900 444588041 801901015 582944416 984938181 522776733 872687137 935620922 956042648 773902241 993964814 998479790 999778252 522010280 571775298 729076268 812982542 55505082 445605712 107809788 223070766 98718842 846422774 79749067 389201899 844975353 951496244 401379676 556241323 941033884 971834147 836634516 883058003 727575568 827977388 353696762 954047090 579694525 653633189 611918521 713426317 570061525 691986637 766418273 959590137 303627402 924742654 239848217 870277188 335480956 620021057 793037479 920120430 174414781 470684888 693588842 963971404 491887235 786374544 392785972 605720354 607793343 760422756 613048441 906552691 877199505 928471508 282554075 743379847 309414619 981643801 447936582 740045552 930316378 985691450 32620088 52515131 298308688 566315943 770405336 838666321 724772073 801252651 584193164 796222993 961135096 967273634 364631998 587238659 466213300 986922240 497008398 590754615 331279640 904816962 319801503 350650804 959207024 980706006 808352220 863871887 90801731 446413040 428041851 689713216 289261439 823644300 370989238 557467735 203651160 827399497 802749846 894563457 275216744 434495183 735520406 822617976 577821725 979205380 58939220 369000517 110787216 565111625 557957146 687406532 685008535 907670033 983379345 991864634 781083021 793833100 769573167 855094969 162818079 684211591 464266488 956876684 396525988 913039656 483672710 653072017 85230442 413503431 407480268 508224843 454838111 890650474 191741733 542551344 542714885 902255237 115362515 827783427 991229449 997595011 223083006 365072441 228181641 529788745 574709211 771410203 960098316 980226933 650138342 680049343 954262569 993711114 336940227 864377726 521178158 616672428 717013640 944449826 108159268 962592262 595070906 841035156 179789989 320606954 24896828 351184407 854267267 895882317 49719605 980353157 760340780 861643731 284383585 461875796 234675762 312002465 830126418 908612022 919018329 984975634 193955245 220285148 198035810 435589147 519727923 613362080 563533860 665566989 947710490 963915174 554641058 932514459 104564356 172189982 708649573 710314452 296981315 733463596 32991721 827551735 817715747 844684756 748633952 849133230 501907860 720679806 678902384 833016744 464814642 975684937 29532606 616117096 338760880 928081518 803930588 888388182 456575887 638850252 281802462 406180975 631426777 954433359 785180019 930565529 80192476 508409013 465745955 743625165 311165685 598459716 981800077 997613783 401378406 822091508 17511857 671390775 483316446 596132997 722126047 782290917 954835604 968210304 692792581 922790923 681588791 852846059 245583540 585956811 278577209 340101436 670434235 812184321 683608276 711005592 71751789 217548808 669759212 675773785 173952572 487855415 335130055 513674427 258696724 397931907 214295414 976774270 560542315 621754381 203217809 721908626 487235492 824604527 593177950 912229384 881138836 991177228 841763856 968509244 224505507 254360373 290186639 466747853 353887741 851821244 267417471 997509117 236576448 806090470 40106402 636802041 549904570 928080485 138065780 731443182 473557090 547617301 587220539 895838509 621669738 868531076 82486691 219091780 541433818 647520569 452038040 604554747 646026829 947141013 815415764 901574896 804645068 857668226 384628321 535542853 823986106 990402673 951440060 965631198 871421711 883511546 129938528 967740973 295938988 907285185 171469659 715032674 375293960 453394036 352017137 489135356 756419285 941510090 765213967 941961990 236712818 840663485 177417376 649146314 323355612 499126119 615124885 744256334 527558716 903318897 242497715 705806891 445336169 923820701 429008539 615733770 196874940 311971037 756378959 879326288 836896601 959547716 111882974 318792860 399782590 508338305 849756936 979415624 205983527 771599052 749022723 897776340 727614390 940849588 218763336 432554402 889777411 992047235 334639570 410867108 698064136 878977169 946988375 965427493 758539179 933415445 299235230 921207363 615240893 672087424 837493680 963947951 356928548 546017543 508793558 943588162 628260493 853508791 557094441 837042107 707275548 960448354 703423147 909960559 100212144 439246754 730331348 890916649 478417643 521574303 108796685 554097956 920927086 999565245 318875792 469556122 743730376 815625124 574321267 604735798 645788483 832977228 927384085 992966958 420391874 851269253 936117273 986244443 593879594 650318420 14002700 17912551 108908555 745228613 640982251 690263355 966426750 984895041 375361890 908546510 954982951 976691052 46957047 639599936 319580143 664573635 72645402 960857276 980809305 997604201 310598654 503885623 729168093 958231630 555223981 673278823 846736235 924288222 776273144 809554892 894923462 908469353 645610740 848565510 61709776 317569766 119276841 711419236 387796680 875899160 515077475 826537934 698717849 712097903 962361368 971195780 104232952 738884888 287870492 943116580 234215291 581012756 603660636 880540274 326468941 610170417 669017678 927389358 896755778 981919533 982999392 989886908 693575045 954784298 806345194 886567356 230303167 467824224 272798417 457499247 508608049 751218643 265337118 319355771 400095613 850201758 644981864 840036401 833884737 981136278 225499260 846569719 390093708 968378096 697733440 795418350 932990512 950469010 467322443 723617065 865091098 991334290 701275893 999092646 733749071 844686839 881828637 974046474 115460984 266133795 207745491 541336304 483309795 652950320 5020258 589642094 904491527 995546263 198258940 699453463 445101628 871159529 544610984 584836544 624240609 765793738 975652165 991001267 144275622 567687113 366703637 961392725 699433203 873318484 463326581 764585864 971570128 996749752 621315282 994593051 524913086 943028935 561926809 689276336 331910928 826813594 222074648 362838016 746525928 913457049 980747904 995562645 400263568 663732529 290138378 581429929 563980316 866803692 429960158 746280018 56623359 642867365 346232484 388497406 704069180 978538499 263335739 537687005 152397049 717226359 834040802 888782650 601375438 893532074 663759044 981202154 433559674 858019857 47126376 535297308 923938059 932222110 639510469 734999799 414699433 467504727 586385834 938645299 373081253 976901931 981742253 992775585 289040807 497090106 619735537 934187190 263470554 447132622 892843321 965688828 408526276 656404863 216918321 795370309 97176152 868826423 342213270 740854425 78455381 592830540 492679576 658781414 293855930 975899987 443786232 858476587 643496177 915409151 791241162 913120978 208637324 296894096 546545211 713379092 936395811 965953070 798681049 817488696 697837677 975298389 699976718 953392945 423575532 532321265 23790448 366508685 690525454 764128487 140458250 250367938 280730481 948713569 777043067 779040001 29019675 438412672 182623209 914393785 491162176 601958470 35058195 85957043 666843851 772458675 924979329 985782639 945492363 976860986 436196535 705452341 384557544 483964624 968100617 998423278 842547652 892344666 924973026 975178055 989144636 990229387 523068880 810832745 790320492 889541284 145863101 496685891 794638337 957734655 530338221 597965067 806236825 877658790 979932294 983852266 3194580 179553733 619632284 659147754 171583172 974005280 147244208 598318940 801884940 816029113 953170288 972697663 816166460 863959947 424071052 575578795 623642406 859152499 711358032 754176365 302807138 543816561 193875169 365625565 823101556 925686728 750251823 990240940 541103552 777419383 644351218 909197947 606760474 829979028 202140907 857683882 136887384 461979137 663904178 769993308 619646025 856316444 45351894 51694064 539227429 708563187 857261422 897124484 168438671 180132713 803846272 867258140 337168878 362161793 471989706 761628060 96008478 279927180 255347731 736795694 508095696 877608891 756782145 905782760 532767630 728855671 853944974 910022616 861479520 989728191 562139976 867287022 634825466 869657494 65578008 717928886 945611708 990549232 931641583 984222087 388843851 712615876 157735869 311851683 190532530 879964255 246109823 876499550 104434201 509384208 428451073 632681461 335335802 876178666 773004772 782907316 676792133 755498160 501537336 941644585 711830773 976318556 276338676 425283094 210674154 445062703 266618872 394327678 603273046 900882405 424828051 595973782 161331058 198488352 821110515 940403271 376802307 435662872 627223837 856786581 627241624 993167239 671831345 945426350 945506012 974990744 428892734 657397995 765826098 841130783 245346535 973118021 853056135 945704161 124525717 128408369 751578873 795778658 316647031 444504936 45282103 72722155 897076255 918881100 817196698 988196891 897101377 932365735 897856786 909754878 728271095 874799133 603240352 975428855 773307762 840209714 693945610 881981759 51547502 741271340 338100135 717475743 779018337 988388383 10643008 700168299 737948250 913464044 518180293 538386898 537874632 902434917 721239512 908782128 117161407 412419940 217178389 926509768 229135891 800644890 935143833 936352572 670285112 769014619 287611415 895683746 667360537 718169892 671833843 881225671 280467602 396864179 946064266 984437946 700375440 780648467 573641585 908977222 869871783 967000486 180184345 770654070 870159735 978187495 357137922 450568279 702433223 877234717 866345797 940441019 572989413 574606040 710005460 891485484 907279923 938949384 997721014 998997389 343174502 537255542 424916525 848848545 74845150 631973931 770920823 884846971 866841935 891612162 856500857 969389719 659549809 923488215 831676546 972038405 466948103 816753134 568299523 786184243 857858131 970481299 667109945 749895049 310809514 374716397 872091329 911830678 20384158 801196993 61854601 925642970 728325238 884873970 228739970 787927356 10038264 523240263 132528256 424802687 595952799 744450664 472689380 481892093 44776158 602470606 94152499 344530462 812162855 924623298 133874427 562553753 907007416 914225038 311661412 805771010 952535786 993013423 62479688 134713261 193952323 210710174 528926643 567782829 123166067 505230160 780878025 926810578 529033234 918856956 770613813 775334299 496526174 648668286 810625458 928162404 170566061 868069609 675111879 781034667 884443454 942922668 539933850 801238668 265483138 335859554 382137953 522973401 490166050 976814290 540280641 561756047 554683367 569290120 236456746 948250187 215041369 503774693 81978046 188767333 313295171 943925641 56217312 605816744 100764734 645199153 941250992 950620217 261367939 362267950 48608773 562724050 214122936 982861294 957493184 990006086 253304145 907591844 358161832 934193158 844913430 858618565 521670028 762870871 96789248 279708922 312635265 919628328 330272639 711624055 510807623 929547317 232866885 334333484 171308456 274151431 314615945 864511851 480242738 591607546 747200625 979110512 598119643 610643418 619156049 929442423 496700290 547233128 40626623 97705298 964080242 976618209 451755330 647073908 85187401 806791640 59156940 715402624 241214266 676564817 50511172 164745284 201095918 281197153 298925451 366151269 230332383 683948193 488693616 838182537 566275033 964855475 122924725 200648259 346551402 606339128 613270520 636532755 65148644 733191751 401841706 644705999 3834337 831086330 441647608 982549881 456182199 462966062 124700168 417837967 527157753 767183649 43249688 658774033 654554962 793258768 956704679 994124778 529089263 531670602 310370541 362860355 553420843 638088879 527097508 970625071 171718845 475401136 20714280 400056663 686498772 865035900 529673762 530500643 346030191 614080549 3175470 477695390 708424215 832138518 725149634 887710172 443304819 890920740 479147459 830181570 658067525 815131328 208262925 723049085 317463549 931042160 868405322 938488444 185921167 566214021 570929370 588991880 60547839 300344394 391785915 684729293 144157209 928354079 124498422 797416111 924843549 940087514 743453693 791975411 46862789 858836923 742887567 800612421 639969057 721505025 200939619 770642288 614695311 895187558 625798674 793321767 631298595 821544195 794354452 906797001 795110797 862293659 393115690 454318046 180846216 647765684 143846464 594900483 977523445 993806864 339719022 745676105 874120296 893455133 928302507 963830903 347389209 772745862 396301380 553480634 786408755 959444661 824649604 905014121 720071436 902640794 78664689 913248696 882697422 951210838 561973266 710997883 942470045 985075092 102502808 497243152 607327285 783885920 275275285 471417737 410015380 421652938 253630503 429028616 921921328 955144238 98413173 654331826 557590467 891513199 223700124 666926952 479049085 855111476 478956219 781302085 117447634 899427746 22561685 853237398 529879588 674246657 7081588 983791772 430194152 812774911 351122609 748847342 8475549 535221115 124044255 266028165 360106070 951307901 222621400 333930473 461242501 493067880 746603551 786104671 904069434 988983830 403902459 926387909 355619174 365681216 377310901 431820441 401193140 725272511 95819083 829205540 443922004 817701950 936478640 957229187 596034841 644464986 784155389 865837648 948217337 949591604 709173467 848834962 558077461 633000710 440235407 999218078 282823441 308907939 88986372 869991954 29452861 462092132 840435599 869208711 896722004 967925103 967736104 979507398 274411188 424158085 313104698 771907011 222395969 223049714 599880073 772153219 673167298 872722797 614000367 904187906 305601197 661780782 66098358 949705311 867839057 868361358 170906018 491743204 723230791 844236197 14928605 454077995 810895386 837102786 957044197 963581779 379166946 907606651 918491040 958899137 19445153 706044740 709306703 818839485 44207081 300757047 585856497 967072815 719601576 921232425 768479709 837712015 116860498 352121218 114797232 758458573 389708474 813597097 51818296 998785584 677955417 879089051 747491212 925330469 814621422 962661583 568641212 597049320 764282781 772576702 124556938 908376655 363251393 900752620 175152600 469900438 445941513 490565478 695785797 989362766 138498794 653631954 668331590 937821520 736802866 841921558 990251450 993476732 559827163 982500476 277190511 325621249 127686772 248327948 795177483 921246263 504070376 736493534 966351722 973278967 521934165 606741680 112205788 732926328 89210283 677403683 334675919 492345772 549904940 872765219 965197571 991378285 267024069 286968809 1823899 477177933 86504595 561600049 204585768 972630897 625627913 834485080 381010768 412252671 924416341 956071652 871091444 986103519 814507648 848465271 72413077 173214327 533556125 690341409 395931244 685083375 966943410 969480461 49660003 447578893 709561651 915007175 674193066 780051127 288070531 592156845 864848066 898915784 740119317 937492425 341566706 887009522 850614970 878829732 688244783 898403238 518725445 543638118 479066038 703259434 249954840 919222332 867403904 947290110 965561685 970556472 254713170 361656295 727679088 803691593 11714477 39379859 240355094 736062735 746741062 943772839 952971851 983838935 105439765 533183415 151840266 654897107 646033713 943324646 969795975 975789992 536413165 965696451 978841729 990406841 793269874 935700214 68509475 172818379 367290629 824283131 899648865 993296964 20780061 456075470 910668149 944085664 41566506 858435392 850604771 851806820 807098382 902297804 372288552 386060726 612967111 633893473 801516031 917405124 188132862 481361649 310423937 489517761 41857280 511005557 844581220 942510791 449928708 591374287 16387590 717664790 209280315 918105184 645619399 950145208 466243927 797847994 89684091 621346691 486354625 496493332 431664968 765555144 439186212 730374573 182363517 612313510 89938381 571840792 111869342 514523884 179541731 933043539 750191546 772230539 298191079 852100113 887887288 906046029 470990715 487284225 891812167 969574167 572490756 765762522 423108066 636008519 155507634 392586118 149640662 450132895 248711877 383946266 458941924 578966997 430891695 466800620 477125969 892732097 403076518 667838193 250896028 650304484 145059738 929096378 123324261 519004923 607210162 759501655 281716109 879400333 77056067 78992555 411568440 664212283 653453057 828517864 960824352 962219093 783237831 971580056 297266364 688080221 181551469 479636942 321939546 548727556 515967382 875108711 451552231 506254639 741695298 976406742 449423214 643264760 66842248 335494480 544698799 554859003 508974196 963744019 965744824 972426615 488470900 817981409 747138510 864317587 574328486 873373677 895260330 998141942 882708198 945118872 993444385 998446277 296422166 778769864 521440798 522319062 700699244 712002236 555229344 724532761 703921391 995954956 33459685 92937489 775425984 924378538 54987005 202026440 567069317 800349873 877593398 888972576 403543559 821164556 782484768 970291582 368569001 996638743 352698787 788960252 913982802 914113560 660265888 669853610 627257515 800262860 45057363 696967837 293682038 472599519 721376304 945612609 637388265 868226063 571212895 791828947 257494740 736723678 249317391 983962840 303645431 440422568 545695785 767189055 62070957 93594803 14591520 292807199 158068312 517723966 640806180 978803493 684522259 800420750 791511405 898591813 718004980 979714011 379003971 965501668 550350185 952765353 903391798 988475978 511956830 919473246 723331766 782711367 66091734 373033522 700835806 758222441 736269360 860168990 122735050 224335160 210491289 923902395 649918960 701120205 273616455 873391454 618106757 708603992 65428905 78288116 559330406 631488880 544350096 608707736 116407883 677641836 718799555 838600402 252634143 905511253 359981676 646067115 337305336 750012813 434621149 566524316 570462707 654051916 523567346 815512465 876990008 982638013 279985182 440239431 872111799 940936906 133366115 398707870 613886687 873814018 804142608 836847620 704562828 718045925 958784373 961913962 801185572 825101120 839976262 942223572 50937568 760476830 926505737 997734019 735363925 916068693 156305535 603387032 68940343 930954537 514790981 913188016 439893799 722193288 761330065 951124102 153793984 169724861 523937762 916416688 773017823 833841527 219385699 312787068 680569999 906365602 39595908 379926328 732791020 768860341 919764402 975737456 972673132 990616921 352270564 674923452 297232970 972451561 168533266 871313232 75146711 956837641 22420891 147058884 520990058 656909275 870044697 933757505 502140389 610665617 186442789 991889228 503882641 575393520 468958215 749487297 477552763 828052318 996933226 997607183 26035316 116653579 107825545 347007500 923296643 945680523 534723353 582202197 717247765 939629118 79632768 842985600 120436597 536131339 746040506 941734522 417897272 746246199 453961697 746055578 907849042 930011210 644088613 803126440 677921053 726897265 52314683 909617982 916748040 954090078 777167001 788688333 25771794 834313531 668676103 688629708 95961553 622046509 756772825 817475661 213006836 332298039 842837106 950158066 139748555 516657828 917281386 922740270 253730377 987992597 299755508 310708322 89230035 622433763 884520325 893359761 83192720 887444740 880299522 951598961 784592047 902034328 463670716 860400811 507803794 790900960 886028184 894697623 731279867 850061229 759088637 795123741 972175573 996027968 655180252 886368885 415142736 510962748 278799820 876712808 422773199 430515554 576013706 597047019 836826081 907627394 674667540 869990609 523002015 608943253 385137374 672340281 2712350 599523103 296122378 860388113 5062574 849590750 76748531 330341641 363041246 778761633 438519530 714977458 732257615 767531774 508771527 940919044 588776703 940484082 38931369 836927445 667949432 740995621 997711649 998903853 452476330 496083541 233811289 347234422 889361676 994535250 917738555 945080733 391296566 584882641 762364969 953062743 144349312 380130201 875696280 939142068 315152464 657922027 867739535 978373421 38090893 134977661 488935411 814056021 191427050 961734398 902917191 933840043 653251350 771709464 294392794 309414594 110394514 527851846 563108884 939593323 95173039 305796686 250843538 452565733 304936905 582355020 178091672 814265055 508937520 721946468 234329918 239790143 940576231 966105229 525234181 898414130 637391217 776742761 997618344 998096331 304608092 457959621 634861930 757983699 828653985 829021069 459020674 665256187 916049834 980511653 966043701 983898270 675126183 849302399 844138076 908172909 111745844 704350648 526456073 552848474 980268374 980577318 315927377 542668119 29641216 776793721 155896181 952631300 236440635 748130895 915030021 915908989 306431493 872665075 579709733 789886500 367201017 788338349 977641072 995135924 366224299 489122927 766739561 921989711 783980339 826534048 21688133 764324668 728828755 749588344 129064348 144266116 294572040 906476197 262535380 823063054 628522801 923691468 757153115 999581445 403138338 598884264 428370661 575088618 25343860 613928511 983892159 994357405 688840127 779923189 807194117 893706279 248659096 765173424 399614514 781050987 292404369 443514555 595656038 795182647 898343907 972690728 158161779 377307934 211606804 581983361 121881634 357180755 398215855 680339821 154278850 695000009 867094024 874138380 972215210 991812286 724953274 923544994 500159899 657442816 549396483 775485458 858504085 993556802 991300482 995216736 802566689 912106819 646088130 852066191 877807740 911098759 80659000 441783675 954449415 996638744 914429575 942836527 193660447 746671238 79260666 256070105 113500085 188718166 456439869 857019414 842011971 867372066 277860354 384336707 655389231 907914359 172889182 760587654 753412777 816000574 835337198 858667964 585610458 880933797 888762275 938657800 688671257 716983327 398508755 627203942 185300850 965606070 640018985 698412481 569580436 740627720 570929918 616608150 520409733 609905555 101308336 261499968 192013038 904597149 134081829 400450902 428947581 601865070 927691781 985759656 494144536 547651483 646327995 760257167 343412331 546183745 745545635 929859496 310131052 963979210 376677800 880591471 668843628 808844528 215320890 263653558 430131058 944867882 923018287 945790021 952110324 968279287 635319548 916116407 586028917 639779888 831396258 991125158 554487188 705026119 60069510 124974681 542285543 569608913 785907749 987566590 121518526 588216181 464243583 895315800 935827645 970571378 603969200 746529181 983224955 997213698 860175483 971035144 819336670 893716934 843720631 950631874 195435691 905693466 304957160 501563672 90406986 328108205 877553649 944857499 440201133 855343087 207058181 548430282 574401044 637058018 844908194 885792175 435210518 644474117 930162703 937326918 342245102 707692487 972909611 987954919 306022991 694457989 437425496 605927286 77209630 947982097 968457599 975798709 274808381 302385220 75951101 907799763 372789228 545617765 882584160 916024023 871310106 976502785 682429793 769312243 959248247 986346869 377772423 669233671 145614935 188852217 738828139 846253637 508918683 653448302 115552195 510208904 600741007 874228750 27157691 215106102 753142817 924779776 56099039 70366495 489101824 740840460 820751089 995644183 246674815 759394298 231531490 577049165 294923876 501651821 815120299 911503568 277508920 657108398 404318531 694627944 219528863 920940118 657826320 997964395 884128964 987518910 644825563 735100873 34655143 310247134 75011482 576492009 323569719 508257603 532486166 785050269 602778684 668733247 456452651 731559775 926295836 949460800 295502492 972652551 208327159 565293040 287623100 434890317 132425749 563630126 107862856 864295909 463400445 858827089 882395803 921116602 330161171 883875121 717715693 781424544 98636166 868000070 703191532 943972895 764742818 770092065 243211944 425744486 231663818 735689133 671429286 957008622 586140038 922752723 493581636 783019373 606140406 801276129 84984262 213247896 570819683 681056190 924318483 995520291 45372324 68430634 511686963 745642011 279422973 582029067 119749559 387806090 864150158 919231575 476207865 758366031 530697955 852927635 484003620 723099795 832479801 885783509 580100592 736109706 478559236 939615189 887893631 894251360 9974717 893361989 492908492 658356370 633893733 807137810 67258067 308088047 460267603 882630605 633481837 911304620 707527753 810536180 875323230 982908589 3624165 977496396 193548689 821872479 84958922 101828130 42287595 273648110 343529251 499533231 53915096 123124349 163163338 314847731 900148905 996294664 447796915 877337938 538467413 736305823 777361856 964823651 390545538 729000713 319878564 822288538 884109321 987384442 690814416 740613744 54235415 952376352 218076445 334642666 699690841 734571226 415947123 831765133 387144417 679437112 913626986 974348839 826104161 833407531 962846945 995526460 992793631 999525297 860638876 936102311 651921263 710339578 721671001 939936002 623676615 868590048 796831143 971610216 651534459 882072439 358221637 780210057 812598239 998965689 922925521 956430812 174214171 227710990 487852990 649260901 63151158 821073584 371490535 756480312 261471216 421417287 684030749 968664399 115492949 483621901 354482378 819645843 327217885 850559086 957232237 962953806 181648279 508307123 192571723 754355554 225030167 743025429 158285430 515537854 622423710 762236074 266836730 721334844 851021710 963498089 156216116 649559136 178010724 787351628 416257675 661452725 376227235 871751861 152873574 698461316 883444645 977551885 838869355 900603652 861300233 943264136 484265088 689957155 990994815 997001879 135018909 298273384 287073105 328290615 400402303 803702879 821831808 911263396 285826504 327843771 982477256 987219055 717625063 865310506 221095274 590524039 977081688 980113236 475600931 848995707 583458563 632058903 597436778 689310507 231286658 985583826 482440228 568688410 132835784 173966545 704216639 848855907 838950334 995642595 993545916 994985751 841248032 924460814 896208029 931342381 878885584 894776051 934231520 934404087 405039145 680171669 448509806 943335169 76358988 199385740 904122884 943450030 49626031 622526968 729288917 981083086 338476890 610099316 61346455 180479725 771582029 815774225 971236680 980349335 649601586 985688536 176592415 427381342 575598854 684748693 985892127 996105025 224482180 967726192 801516671 967037880 42132088 238600608 962720802 976066086 906233016 911682637 79972113 455964711 291631199 799759173 948198256 952955714 779828950 911553780 218157822 835532381 575191085 739729681 306771594 504612445 619050462 752194194 691225804 744655820 826946699 877340950 443751005 612764068 165150249 676763843 543347292 604651675 723216076 885294846 968107675 987227847 5604761 117747184 38657199 325134217 859056269 991378712 657714940 827583720 622788025 789144551 649476617 892629524 153106534 705544607 258240131 458524093 216636846 293185515 681598820 930779875 541381808 605332126 986781955 991722019 754641225 848563025 587650240 640630900 563583904 705828632 728355149 923627629 915950555 986903920 487985393 690568578 612585377 836894265 167693848 604508535 852157209 880272441 884340206 905756427 941447926 961030114 746683026 790533416 394751417 944349029 391865173 457363246 63610173 85059938 188745812 924771371 891388313 996184426 497434201 884955806 4522833 436706526 146170125 531201328 604233150 711793032 96563431 417446136 581720774 800410958 897141051 989849828 846755612 876976257 77192058 486317520 928668181 988201485 233103107 692780773 131236083 992000045 963621967 996582955 818499914 932566477 55491466 233569588 417433907 750889944 652157700 741325405 79094777 456212083 832346891 884329035 265182311 593700927 188406059 416758305 268449943 599648623 160121039 535123274 393776920 799701273 922031621 954739124 732148392 732926535 596379643 921677617 684656138 888106593 127968125 707905259 864450372 880074575 184883812 343278763 881190293 891890472 664665778 910160327 28583599 134990615 331551001 646457841 963741921 966963575 559494022 792497077 504517209 595776467 691751219 870561390 344832450 504969350 658056939 885658859 633704334 717743351 38400978 269621585 489139972 754602955 693219090 986841464 423159772 545014235 397923835 794287608 436596846 675031612 240796471 943801717 933858096 981981871 716631312 783339741 911089646 997190843 988778068 993619620 633706249 906628033 231644203 979978630 58881601 454413234 379316379 607591813 495345499 840271084 726213638 895369292 793634276 958245516 276208922 443977671 506951917 564025529 416196890 975674303 860707321 938897520 365863575 908768475 448330643 555934675 748557477 870348360 212365415 300458179 634848842 811155428 480582735 545188158 458325059 672048210 964565382 965402595 237815285 835582916 981556558 995613057 927760222 990116622 623995756 922299233 746440734 961623855 675867409 756268043 537969733 689893996 452704311 875223776 862074212 881884922 934831931 977865585 326585202 529523065 400388431 847806810 183639869 866439325 74341363 320365718 626725464 909879508 200327196 737933657 889341692 970743972 826885838 901868838 421704948 643563956 435583644 596287049 225230240 261376166 160977290 654969632 861604679 974363397 738000017 946096398 248911046 823730424 23247538 417855884 879904070 920925164 422510768 666939842 728885516 935763965 77023071 860859821 528228150 997533989 334495210 746891332 436809453 529711056 123242625 216399873 571033598 700847564 154298517 879051476 462156688 858554593 692506217 890490338 826551075 846970016 294758194 345909468 21030640 453365094 291227912 972827258 800650205 943686242 654019553 794960302 766853615 881949047 625277424 830939082 605360924 738575167 242140550 763096068 553589116 848964310 983743330 997169841 296080470 492551008 928863051 978911384 979668021 990900767 941735020 970123920 294053195 473372804 591663202 984555992 117848736 815448706 978747234 997066917 301654114 519880961 955493278 984275340 957927402 997640763 337888789 410576310 333128216 580452422 803316875 866610524 806253732 977376055 684214217 832426999 910475971 986626241 568411328 823812703 193897137 709084305 976956531 978130066 807765339 998076114 354469082 916461201 44595435 996917638 746569089 951311465 465095459 789974484 258198078 401392956 676190497 792914697 730466154 923987911 292203227 957001796 724058579 972411279 957466663 973887284 971024595 978307513 259202787 564775011 270273762 275788662 44262538 269921939 281166820 342440158 445148417 500860521 545729096 558294397 944806512 953167241 263257990 664384165 298195223 990710666 3075544 629479678 234828619 748858285 583369268 968052699 652448356 830741296 132548986 495203690 897649486 990939517 115892089 337872117 629586942 741122389 864028849 945320953 655750465 757270450 485619041 785877202 661940457 797165798 263013029 855871442 776103938 952984111 270205996 582876885 836954493 880537968 739560384 900151412 31531496 789863883 896357824 928626285 938248906 979341233 240751576 966015581 148427549 979347924 117789733 412308566 779269663 978904737 991333170 996137394 228836601 437147403 900107212 952058625 614350089 638635002 20274563 663051910 975742261 994941062 864253721 897151742 707861455 786265680 804712884 958711925 904094813 947507424 143436009 789423370 708815976 718057364 745428321 761711225 407581727 435108476 438051019 507458715 98481435 981232784 556820678 708976746 206423634 484530425 951739068 954828600 668963057 870726042 665370158 977436710 304901183 327397191 823968972 962748994 273267578 352992017 733361507 918961635 819393899 848034211 915036926 979879675 422024043 751702167 130676932 459530361 730877580 941685312 316274740 602751737 502492555 578861356 159548955 278558416 244692047 301366825 787701894 947555495 796084807 857420881 441769377 506031222 820691303 911622379 876130349 988443691 544048393 835175590 950535009 998358069 422597848 993660803 843813947 935182315 848682765 931957035 450053345 791980655 707152874 733139422 987625613 992928000 113103186 554474363 271114857 512143212 366438911 671567248 271769 62145617 433810636 653039447 916707733 970984456 916261034 993032466 579733460 700267977 104212136 734436187 494884205 960376533 819123402 897227487 781293758 791901974 729324618 868168408 339946456 772895688 656690618 673583514 949581164 956436642 18336883 630790384 507477035 696092761 149429835 737886018 900966010 981367733 633186796 687313094 605159892 833366274 596481707 631935973 327219147 635527591 293667022 319751640 641101675 956819977 11385863 160302199 620328540 878085316 838039746 854668718 416640208 547337721 296866674 833041827 711193462 918918049 453482088 912217305 345640709 497931648 453549891 543119818 330079840 842029886 455381715 507747768 708765086 827242110 100792568 476201481 730354794 961362291 390933977 502147622 755376347 888168444 19404996 845545683 677823041 858345724 551333503 782527968 154137898 165880869 591844153 609227879 423602128 703887191 459895068 853321289 405419421 457259561 731520340 782251781 885087933 922420100 925487893 935832190 630995817 961457043 117673974 397099580 361373776 949178341 700134084 959597019 771588141 924593911 192840632 504273096 702442906 797681786 13023529 965276288 909458832 911444937 558585667 808278270 677440601 849120333 505525722 977664989 676316355 982622502 366311354 512873004 163927818 810682752 434606370 836058487 360618398 863898006 480078379 543390947 403772746 868520371 42907556 507003645 776209863 951677483 206946855 688846971 596359614 847070204 389689903 661803284 883940217 955424209 526871616 903289877 911472619 991454246 306843771 878098349 893780676 927022091 171173723 872050714 847185419 890034473 104347925 708800399 432482517 742044742 691110441 784186400 862805001 934514302 200414710 470916959 24989449 571483504 531654853 870192614 465803679 860892022 171430559 687258144 399614927 652737962 258206249 542551790 336031376 406637993 255905084 421653958 378383814 969137823 852294346 939346948 814479132 913887571 335244757 550842862 372017083 604449162 605052818 620469736 326589868 811253320 145564577 957233740 809708696 943775802 204474086 485791547 486147603 577017852 335794861 923236016 437528102 611004438 169151726 651388147 141670047 789126508 509983704 739575935 32394884 256638011 744675253 943895653 225411300 710066262 566072940 572073086 467935912 777853824 412636950 628438077 769963087 815455496 964130096 970601697 866425089 946479867 831274239 918594405 71739429 356780757 466050676 753718922 147037661 225800501 436520505 844967271 882792759 995991106 698692541 792801448 518664682 702699648 967734015 992236385 641423124 932314922 126464258 485856597 570763996 576178885 384042961 555908507 858348653 930080526 681880228 853776017 213532645 482178633 314694798 983982499 913724982 952558610 994347591 995340036 850549889 875451112 61978394 922443253 355985750 425753884 129955195 616650590 586496836 600044247 831389962 859663539 821654915 835798016 14846997 406553665 392588233 898933940 540654644 821601019 829466971 933064987 74199266 277410034 968757956 999399979 899916839 944614414 210707904 260567942 692150498 709827476 646822301 918073806 554858076 919719648 209057231 573204912 521283833 912002920 342237197 440022256 699499231 729389707 650797712 923773267 104322791 761352911 928519568 956795494 106837224 859423367 633138983 842840403 634110349 910086346 45389792 555323935 134003190 754208395 222761147 342727015 103428438 988950030 740878747 965647597 526477100 703214934 848441304 858702516 28490593 200557262 787863844 938598707 647766341 716504759 879735602 912017040 674884628 908331246 81603202 545133022 908681981 920836431 953924100 956049171 112786287 804659898 717215166 962373364 81052466 450959280 595958751 781447780 867254603 943338580 743658708 784061303 811727896 820278140 86148689 699700908 615439586 701977055 978195174 980164802 186239623 369892585 768856039 871767072 755168620 904428350 914718551 963072201 930593159 988339741 326978136 717978611 893776262 927224068 258972002 510437143 758209169 944448267 782908349 917342730 427362332 854541747 323335232 640146953 902485594 930965193 252245323 624984344 940447074 957416957 66367451 615483891 343634607 711892233 323142197 669694671 603987087 719196988 40493671 801885241 468728967 508527714 725563181 862725157 412885869 827981305 876555643 965666717 438000838 454811055 77707177 566128804 849223769 886422111 191844425 268130702 105060431 670717123 709580631 985576923 725245260 751001185 658627753 774015205 664848787 692987819 541372756 586261525 505021806 768821318 529434029 846818578 191378891 532144521 182936994 337051117 508602960 856488495 959976101 980731324 901310217 942642337 954327654 984162111 121550648 730822406 958989723 974543006 89866652 960666884 6392222 311771370 52845793 167485801 94890013 709491722 154527420 315967316 974599148 980976432 809884603 944450874 193221681 944640991 860738960 913393948 926421010 994940612 355957960 513109529 839870316 961493601 221762025 863225461 62633613 495603008 775057194 830674752 351869260 605617115 765033643 815585044 229241833 821459642 565326257 830628584 473761762 753566865 693089169 792514563 873047048 976983625 981101540 988818781 431622095 934244289 649724599 716766751 94631866 509107634 109665138 243216642 107058310 867894294 117729663 698503485 483342965 728887881 369408678 884055118 712481463 973351815 575843355 662079349 347752459 871734802 583932548 630191929 162304792 667823622 476344764 561606237 218566156 870843824 927735724 974453092 501594677 571666021 581767174 685909242 280733268 710463325 828302097 912617901 949455467 954175009 506464527 577166802 80999142 779277558 486747240 506668804 691172358 703014613 385451985 860475378 14823234 581046400 174061616 239545031 781127966 965474535 293904088 914870644 197852725 286154524 148388132 270845111 203101726 208236614 463622259 797490476 597567426 780501571 444810722 461130172 45835885 901115696 523080518 790741941 896887832 898273304 390111448 749777940 720860482 997741916 542902622 591671441 866924780 885931640 800036689 954510377 452328464 557298990 701536233 709921165 422882531 700006777 927505650 973758431 990887249 995104565 452721946 824092194 442838171 504863743 320580329 366380360 215254718 898025664 150769996 913936890 568910112 581775330 968875489 993095019 848831266 883052894 637301182 672642979 935820567 957889893 118978202 568535622 953705410 978930824 620874525 816814761 598698705 863094252 870443650 943668359 15557418 410735823 188861145 846292494 982818236 991656243 873855010 989446189 469019304 479808119 225759804 263042196 673059491 938899360 770977314 781144315 970330270 975611628 358346455 802735895 617158909 912160390 894472541 952131588 605350994 610497675 119948829 553172085 812864819 908443571 819372033 830999987 313246909 685471865 783451949 892671884 408860076 638073153 580563679 870292291 183233093 992671425 951965078 994008746 667885535 755996336 732075656 766045266 180848626 993670101 259195998 604879036 259346955 894794953 543301704 662245283 156447108 861551733 899236888 927384123 384888594 423457531 780096767 981841996 517940264 534283491 463051431 661367713 779306990 791662559 410289567 544823956 116857151 971560509 444831904 463002761 715532889 951211796 617432929 824886605 437878526 473294749 528063800 605627226 336214340 979507156 903607197 937590255 766063169 962890755 749114084 860821922 765458482 981756440 939679407 989791415 628826577 867962515 272818634 800434533 745180682 853950037 417628200 584248712 835191493 982663836 703985916 803422843 346547701 698662180 572613150 886087825 4185230 583863545 602006312 791846562 536406498 644417061 765709613 981525507 267298095 847052281 902391896 923580514 794839343 814433415 100535967 880226121 260258253 800799983 810277656 947409687 678743712 855799170 558907645 986801890 136300605 609659339 486480086 533541495 306949150 938723306 312295732 416876852 275484490 950308378 298201502 820992246 850591849 901596191 514820164 785851883 90217277 611432953 750141684 904449857 381503754 635864991 497601030 736436891 310983038 613698264 417087382 637779938 272909100 817234845 964379302 987849132 772760678 898483254 868650676 959659620 238912299 938821568 503910577 653947455 84075747 773231260 373660606 565571108 554887968 939220702 810826381 822417699 61025134 209551937 986784244 993313750 940471465 976258943 293820544 332012178 190666816 877467097 896910956 946858517 649225679 873681761 865169635 981888415 236102008 373991007 449196447 973140645 369856285 949569373 250057241 576299561 323877866 848094915 972999077 980041900 613507767 889885543 640997144 933665661 894948911 968979725 534521813 663992518 514098943 943677892 730343150 814765611 668775819 713779344 908685655 980185695 375833816 401446113 379673214 611024378 766186250 767201971 811163216 879064231 273331806 604886992 125662769 838206257 732081848 767271914 72535518 301135378 304653754 901967813 251318032 511719534 187787593 249218167 780001312 907513657 831641373 863322813 508376401 779369488 444896348 505472927 723342559 928770889 412179428 498038642 947700785 991587635 325329586 509171393 723243380 797442053 540942889 771621243 629328629 806609617 906587247 992872069 65396916 366544554 907783095 982769105 293939685 626665033 401822361 593212757 496672961 708925829 398300913 833324766 442100823 462675747 416951133 538188184 656347402 881189621 825205621 967003942 413572767 930516081 439446939 870596517 543000311 819130233 374879551 874524357 449586673 709425368 577360593 908212429 517203631 575090559 88836762 852406612 446723189 924753838 738677174 753916066 516155966 744708229 118872563 537959702 980847555 996587943 477756822 624503472 232157791 672821978 403973375 595638809 80814723 182789042 351878638 529293346 155848391 221236498 712917688 740724498 169093735 686411273 400482844 679256325 567871946 919363988 787402335 974082521 324013999 908659047 135217688 209328010 586549730 935963293 254367788 456880343 725628952 845936566 535110672 685195018 40668694 128310911 370253443 718375493 61593713 981656518 33628186 861439531 723123721 991459229 966963073 984163774 373734963 729356803 441621861 540905723 224971670 842842998 24516468 168654877 904946316 982043936 943197353 991669717 871254031 928246869 519929987 626521272 542981131 600373778 686955815 741457399 866805669 910939499 954390967 958067897 492458075 816260231 618628508 757175527 544235916 627292965 752322714 879217645 891206658 975928060 538482063 867337398 223138391 304566484 938008090 963584582 410794304 502762760 848206778 880355846 845993517 875291678 985372530 998416249 309883205 525338039 864459817 932565269 796721949 915095568 567812338 809878820 547960582 996265991 649349689 657258221 215023848 530708579 315828937 890004476 305650575 657430451 331171998 872003711 730645015 987782787 716198539 861490715 330530290 425695094 733646039 892337323 590346677 980114655 345379693 453689244 541368413 629946393 126455335 908694870 693198649 841876276 240668552 920047645 104685708 334875175 378483210 647097603 655451305 812417323 849657895 859236953 741708217 761767452 246364942 814851016 145493997 541453062 656733554 967177856 911133859 949860376 672889148 783782438 620231520 981645007 940030915 957357944 591802656 924017589 623989499 696104351 950613611 980811065 685367409 805175803 715014791 842410150 534058585 682599923 710506566 930181755 493442091 518091045 25631122 106836424 742512425 754678751 416499751 474838943 467627494 475965422 902990910 919909005 46248673 651904880 726209398 953419730 134869409 412083743 284682785 948999085 417943591 521356872 307955866 372886235 674687744 834298851 342662495 616895281 503827204 717882843 607649108 858082769 16648258 878768339 861797899 992102840 639092287 702564371 768984148 976631761 221947580 314307767 945690250 951920182 317216617 479762243 472027526 532321974 10933456 261827201 595156669 941486151 43539017 301708064 455967134 600596916 85949430 340930932 264227464 378435931 24252664 613711893 688474507 755970326 815602524 882912178 53850836 274933323 738586169 942682926 25453689 72627226 218830145 762041001 78130215 941604548 589188797 616358418 734702168 827596421 445544577 840849614 502873578 750020814 157172517 773821045 933328326 954838898 961151365 973938474 525823456 530676342 204233280 223328423 505319815 567930995 163417857 694616575 582943142 808435963 122937652 779143126 383609960 705299686 317952632 775590317 469176076 535402709 734697827 926290283 450446208 591614836 708808352 849537454 566987173 755041511 321688978 867312604 542373145 596712260 752261829 846456850 111363334 954923171 298426690 772016591 68696840 783530645 516966870 621257838 758743812 979005817 972649408 993075939 365211671 652355133 501606112 779282099 214394750 862841837 823768738 913590815 196450160 901097801 336805060 449160764 175214193 857903478 669875373 901001494 908482825 993950595 30919215 702899955 132156819 591057770 301936505 771950517 12578496 497491778 225541374 918338869 101622112 932218282 917992083 922706760 636319589 911761359 245211116 338329013 233248888 654999702 894353218 953856634 974620898 986678689 722130634 900407416 689076088 862187225 975357591 996346879 396193741 578203930 801888392 808193030 347057556 671877799 981810184 983240487 489021493 693085365 924816031 981191741 372201739 866433201 987035693 987193027 227883865 369772835 888172280 917656914 688649832 844525675 142764091 402051598 522892622 916253603 491180534 547749124 679022003 984676854 944537754 987968820 633377327 771004200 528631639 632836836 60854794 316928467 598575891 929809295 563524765 730426237 932351964 942431287 658231423 752250689 438333748 809827801 133755602 369013128 229722668 966479343 8692919 601767950 835341009 869432033 882374473 929126137 939787507 962330704 786133303 869402030 149168865 481299718 333525994 523545922 591055704 803069858 751609948 836356432 363044426 865096284 960194845 981635908 912761706 932241163 513338933 790903535 664216460 762009898 192365867 258918577 763551780 896072616 871332687 892757361 474831481 873685098 775346036 884257951 511191900 850450810 351591446 917480863 740381057 966957592 209938175 862130038 698191926 814031978 450084569 865865738 692661858 869991161 420624772 942094399 920827573 979823317 77458093 428096688 286994424 363846618 848495550 921825686 992686992 994714861 310752638 809647810 908035547 930542930 504093430 592186662 883243231 911921379 116353447 868500913 211631271 763298125 479677535 500539396 307455487 476931424 355433952 551631377 781658456 918098588 913966791 956545338 634699328 917699183 361871295 522311323 582481970 826126584 500405112 554721882 676851742 699174448 276468679 277537281 582859564 826470320 98224547 719733616 151465028 314626498 889686171 967251608 355393883 417789520 135616103 298891710 653018749 696281706 521081539 762705379 165064381 997185944 856519035 981613988 626709143 685432210 999512353 999632535 727549532 760899547 282683136 993029204 240291319 500979249 369984906 878849124 537625928 928392850 205507571 794497579 942603847 974241665 320174634 933875566 402638703 863098764 171913319 802924334 761182177 967592865 589440268 985816715 144087695 225812437 993523949 999305058 915512681 916097285 994245757 994716359 486581315 919144406 262455779 580506889 98844082 825049507 789941548 966638316 225600976 763174205 768916922 823854180 630652414 837745725 415211602 726187262 55495248 115316152 471433692 918134305 10360562 914785360 160568363 702931099 858251354 863905289 550444045 723017503 55130624 89746592 965580510 982868661 437657019 640999520 15668592 159279607 505257749 833785360 990979115 998980130 767594548 805347980 248756989 879126297 133168401 927275438 42932362 491666317 503763844 964293692 183178597 891739534 993871320 997348448 980879077 985917702 637377265 690741883 333342198 517281985 636736778 707236905 237511695 573905101 532570220 778012297 300771230 606246697 53676477 732187837 329297937 406277045 593171687 665684475 629031097 938664648 415199859 621915941 527455118 780910006 218376909 700666208 474320337 586008944 436749991 761878950 354102214 749447019 701262930 795210221 840016628 894135467 965622662 988960470 67587682 228866903 998611563 999537158 781992202 958216798 128070170 841936687 936946404 997491237 834973771 872487311 18111491 396062835 176771520 770280328 18198706 750211898 896461700 920963040 675280962 758661934 553338511 913237630 762980068 773443544 645768447 773526406 775526765 887902457 171092820 692968243 217550276 748834689 955441558 985424797 592481685 735627179 961000969 974824125 942027078 957188145 916858149 956901149 437940067 578489903 544221668 831270245 197737003 771684510 472381233 505864970 950082337 968445663 556055132 607410249 633707778 649592566 964457942 978062565 927225358 994025474 781820033 895742673 955950542 981180477 275744189 944924436 708004594 825986562 561794010 598736854 745778544 790764547 506866166 889651853 904014910 940557134 170197566 903190015 778436796 780069790 633390077 771698246 816893739 919275615 794870521 855954261 610646704 806760019 193224322 893469479 945491523 955681843 568838683 821806179 313619061 957550492 463824456 599711540 729194829 947483244 19333591 884316987 23335 693680331 291565191 562718265 541257805 645729084 845174802 865713267 133290521 741482753 923734508 955530554 945333066 959581901 833197466 947929026 106717345 216849661 903698858 985975729 969526222 972518527 417704653 998443820 206043354 400446829 866747879 984362643 925838415 979230951 658378266 933508206 835550421 979775102 621314953 812181804 616415145 640181870 587224949 761441666 178982323 573259879 636265881 669522201 643580991 733426216 596097531 796395070 535643 26594988 851511087 880243800 554551305 743948605 967003754 989132881 587875567 774759693 398099984 731334879 110482761 186555265 252254640 454381620 931571030 933131821 912815203 994492710 252061459 262903578 975216662 984256512 366135202 657203415 399384971 981997589 330234574 544134663 18642630 725073067 900719769 952849444 74747398 256542019 212178808 281221230 694301897 990982964 336320276 405178192 405697531 780406765 708403089 848756213 413963207 756212359 31030920 344792379 547371142 962654840 337992869 855946115 818928362 832308308 284156166 806002763 106523017 407238179 529776678 589681678 941596023 956318063 644586070 853811473 337899179 884367573 588704874 755104665 33360272 164534078 100231093 316293792 363647839 682336685 189225728 958599947 923204931 964635422 203798607 750704633 360734419 731783346 936414849 971657104 549217028 674066797 168279648 734807212 693883595 724288736 868133323 874033738 101579261 990970744 448340870 850035078 160482326 490102484 496648049 675067142 81744888 294687144 746597406 968463736 626577939 725092581 127257346 723209353 353680189 393115167 831310874 966047807 756579119 885923314 369696481 897074425 199564751 929330021 629977423 836258629 953986270 973252609 416861720 590686014 668132607 806297351 757102249 780342262 684461073 992774965 339614881 813558025 630568918 691579285 655238257 846706066 161459141 262303821 652331084 993897421 517764585 565148483 492755489 805697244 973710237 988774900 602179623 610547530 429938954 793573967 415263737 616727937 514646476 807237337 626924757 960313214 277085463 655662649 995748489 999588386 959686054 999071296 146940384 376828131 334854597 355777846 149630390 203381244 617847800 856566547 898256475 963279808 278151648 682453037 649540434 684919169 485995777 623762602 39463246 885410397 87625048 299160051 49459940 982292364 964386105 992015293 658517997 668523308 385259152 850946846 947724205 956442516 607237680 883522413 916257632 947023678 795673084 898437212 854637575 966587731 237260582 242424222 415354451 504853041 741065540 750591880 557880478 595297754 982310365 997740923 416148067 807185389 711283841 730826123 700318991 915158325 790209358 943901186 518076651 760975506 574941192 929588224 21211701 822861434 649162047 801552661 199858338 588498684 559038848 998341675 585627375 837231291 758653420 768100400 244930137 812857917 364006969 521096108 993124964 994978713 270927816 562630380 866757716 921710101 449829430 828437450 180926776 786431594 606630571 760478919 511738472 794210846 517253016 560863504 158462355 910466177 886847945 938571682 785395838 930593288 642735716 994538932 773042838 847796997 692153849 728264321 430964451 599286382 568783798 856064171 459060501 982098354 324834259 424421507 629353857 912915487 696239846 859930384 683177132 961064679 166232232 998523401 811051707 941281431 574041874 816433228 260919275 805048599 801358535 865925258 359738416 450060429 677297153 960650126 290438238 781826255 432385904 448894167 197222904 696370514 852795854 994019806 780522312 903772829 804350987 881329400 963199171 999660628 157698538 752677389 745723906 973582997 43596716 254765008 324939354 476941681 471008218 779961876 677994000 765235885 768498515 798056146 256750209 463368579 990274976 993889907 749551283 951428119 539762151 934314788 497674462 761286371 465357238 756640372 756858925 946469483 263348447 705472858 792917611 952647271 520754532 879346230 577901759 988840157 52616959 576960257 743734778 754136859 234285684 830326310 737531953 874350450 130333631 342836962 828267286 883919434 916941121 938737145 577887122 968451242 509336028 519802602 91755515 502583406 487963689 758234280 625718413 928046848 424994465 880177901 271198925 346201035 238381707 937172723 503706195 932438038 480635495 604786990 292077044 640212459 407768660 978990567 815950042 885642899 101220994 288942293 696482517 895936306 107503851 503330875 502619250 578104357 552600675 694428967 458984370 765562230 279460577 747325209 802588602 810295702 948287852 962864492 18788536 633419063 796618406 802040447 364052036 409420802 95038334 104768146 77740467 983073000 359208266 655384197 389639687 571114025 130864797 914261752 357233313 664300201 315708700 534244504 558294862 948547790 332152882 899945053 449977945 529233968 142310214 485563097 862075649 943821772 901136173 918861052 691775029 898689636 645784224 750759935 898132724 994839467 280871820 911606201 980362405 998444141 488159041 811865503 718276317 740023219 170501379 599167865 305749444 495263377 722326878 898615761 437780199 508870220 495063684 907326106 137346426 919205357 562251631 826752327 380634043 980484507 627350795 645161429 457802073 648726314 797957211 889408601 771465107 897083837 248323242 748346177 278291859 688413098 291823270 713057447 593147610 942102003 597213247 601875428 848290164 913432172 287110375 432022421 682283781 784041741 179520782 744469616 606634216 818961517 751702490 784411719 593471634 752308665 197662598 481416852 161400606 390499832 406150907 638659843 448351748 738824537 147498836 698898415 504708569 720590898 202092756 803465910 910784243 960963332 279771206 941204481 503538070 950574820 6234287 872062562 43723654 955427223 354879975 976025978 548807299 961791510 539457731 915164526 321009886 636419238 479990187 916448548 962680183 970562080 338397319 802409909 180528244 275551130 27357553 332108043 901093365 912853191 162043253 293734036 553952340 936838405 508265584 852532917 77142090 851090144 176524867 925003346 700230844 740553505 717857773 736830018 239873623 717658980 182371209 646125149 410790890 470884437 815340959 900642667 626815543 960787519 491236941 542975561 643878255 819779212 782072535 918410824 576374593 948587002 188667680 964874339 179503952 466858306 132086582 210999825 679867783 871169489 368946427 635125693 923066823 959354328 92526914 582480249 696217545 756755385 97121745 101986312 290267393 540526760 900367491 996746151 339758582 591510561 274755151 277366578 114417661 885200060 356228394 791771369 278800722 666598906 264354228 864931955 961845966 986477708 539056733 998343097 328985770 893066041 111412259 270470204 173877705 497022087 925231748 956013193 296708243 386887559 928230653 937101015 198641983 634058147 868105038 926880795 56503014 583747337 483710233 676421742 371444405 883507997 187313936 764919915 388621811 693120356 852092914 935400476 510950456 787978263 49086637 775669179 626204776 904051562 687232952 891702110 322208580 547669978 206629760 992075653 96311277 101792086 306401962 474607960 352906376 408953034 896783807 954643463 623981160 861470932 214355912 624154472 297619669 919865880 30465623 875357586 924331016 926243953 877053401 955257700 341688712 709105437 106455186 731974612 245432857 521785945 43447868 304927110 440226044 688956698 684073618 864004026 926361969 955028968 613599785 756865750 342268012 789771275 49043834 485237230 379631723 691251400 391135538 733817204 175255297 285542245 491150066 600783407 691844637 819993536 170699633 285134943 420371625 534883333 476549099 731320540 155034024 492088627 701742770 883910630 905358481 993270493 33167816 599341029 746009459 787363985 55754933 88995384 765293002 874190718 659197737 958805051 520041521 582168793 183509819 213110472 507957632 986777332 88677021 417529608 882720853 981731335 982549520 984543713 31768959 792337759 877816340 971237133 308729588 622883702 679190378 929461819 247314921 791243326 654023259 702542093 619766274 967656761 777100639 841092238 507413813 891660991 783183890 932587571 395072824 962882466 340529205 711187143 40457460 309118999 245107441 998350329 590934252 861878669 742633352 899909689 655181661 949085227 310852407 343326029 53772623 871192274 437284644 932815741 705153370 897216416 132424729 946221886 579723333 590430000 193406692 793973329 905462683 954414313 884993950 961125724 908414643 910243350 198623487 496312215 51949990 300346558 829934591 927246050 515607126 596323827 858533175 944262280 224749910 230471362 955265019 973422580 885090449 928137809 303745126 787770441 40796843 43477272 41736981 341229398 788325199 922417113 358264688 902148803 179322463 261510949 352270869 732493370 169422279 416728737 29154530 639843521 868598572 980517834 487811704 523551968 213855576 733813279 387496020 620121288 406802913 925478851 778246869 873937862 384787148 718671174 241706420 318422646 5601819 956517959 619641886 738278350 349482300 375681647 435348416 542488792 27361430 513365514 889038533 986842212 648423547 782992315 285031842 733497834 608401626 818104270 76885127 144382663 55251892 165618321 469987512 789468875 977930795 995309140 658434077 948634578 933322630 983472785 546140475 801339469 984471307 989015585 21847624 441678530 369328167 976643813 321261987 630083626 599359512 810194649 874748962 953323830 640838455 719722093 653849008 707540015 975074559 994658943 714447565 911508169 854842290 966880552 702491285 811287032 354166808 899290811 889968006 890737402 121103086 921230075 490692745 863286580 645464550 888778192 674512872 696283431 922751376 944028740 235866672 960142226 23419413 386036422 584186238 715160755 397172442 621696523 2255586 406261758 806062239 996629676 141163397 320990102 579863921 621980604 313836894 804387759 324355010 945272407 152448135 277517452 504708896 650100840 858934688 974742117 503708750 922803435 111957108 342190358 512846721 965158312 692162517 692866802 60371462 572186829 771349969 933604636 205981865 224756030 360409668 631799205 441313559 633750466 564237983 725297284 258927126 346642572 91895506 858798174 501845903 789436363 250895770 436219647 950895638 997608374 265641492 795680210 971992394 976087183 579143289 627283926 552596625 594293885 886408610 888876722 258448808 678657117 849302266 969025298 352569093 610733451 686012887 770418745 913988721 967939597 192603145 446722900 69450194 826993612 883918205 969219888 326069229 495754732 865275809 943482256 146795306 895847313 24610135 569111650 393294466 560536268 157239381 877201455 782113646 793822287 131029454 381175594 824185020 928240842 421909786 834286990 968265901 992990128 699733290 832919668 319800267 444282521 561364597 745807241 450945218 919517644 524120295 872921624 164905534 798713509 176087120 932075476 151069177 531188767 344730852 605807562 318937125 791906460 569788142 892262164 948804035 986400040 790785921 950791877 958518218 982738764 509871416 655039706 268953550 379584068 35803183 415275499 598253780 768729676 985685932 991310438 507325044 926539546 525457167 673504403 850242667 886181718 296580064 369470655 152724789 580930054 379103280 571041399 730227789 996388647 143023621 260275078 144511044 184690408 497304273 616081581 990131801 996127075 23351740 752047956 207602217 432551306 932202188 944169164 42976443 515574143 837732489 904103037 23276020 547594283 416817820 754363921 51487833 574556631 669085256 887252162 651996586 761292969 484818559 678756967 609613304 977954595 525037287 805095948 358276486 747526506 410459779 940952678 410591733 762946407 402125771 771442065 313297278 397797475 866650164 871760248 65663833 382736433 624124484 755427811 659510536 695049165 940609989 981586089 905528870 987248024 717631976 978214322 656215543 669619607 192075533 485149838 661917511 893165472 174105901 422981743 384732580 428757836 311880410 945452865 864893718 914582976 517292908 692065467 430620113 475487086 4417833 420418843 436009162 837932148 755738144 892910246 517817695 692595031 844380504 963369963 244211328 358063544 855406225 886808166 613723260 676351028 681297102 850105958 586569292 637296173 458572840 701606476 805454052 969849889 267468460 776112896 787878264 834767638 722178259 749931427 575900536 735660407 560003721 722819666 623981648 885727085 167731179 443434298 94641182 115815709 346181720 421146529 629490609 636886193 851971906 951535141 712788812 738982253 541699940 699980189 775946711 973264413 196483498 458534205 817919535 956898978 838491787 885266773 647481127 698763075 130244381 888896295 781355969 873625668 423342389 648431596 763923825 866796296 855066827 973982421 346580905 707063009 652969773 969594969 451492838 595927971 247267395 621390457 803720791 953974154 221451445 939346014 241515656 587321521 977449649 986382351 59632776 178559912 686868163 823423291 302667640 417927976 115512454 337567246 483694702 620501566 239360858 733522877 847877038 868314274 33997505 848925329 712781827 977327014 854556499 897314517 903094437 923737893 557786402 717781615 690495395 891705859 195175384 558285471 422559424 519777934 759535852 884884028 425026462 893867701 756694816 771310923 923767485 966401458 430680797 583966675 743889317 993990328 876807922 986174527 134876128 869054494 563129490 683502648 106158907 334271775 290605032 868283619 431668691 447291072 194454731 373763824 680452645 953498188 814843195 851124770 309035811 351355878 642516699 714833305 366598669 458619946 826800075 965234396 934625666 949950561 443972255 884686151 284049125 336354854 866531104 947134885 726093838 744437506 682627042 817709628 798943127 964927959 328208568 338766215 994469953 997397619 970435279 972589713 430067250 760023057 610671042 893217841 22921869 847399120 458559502 546892923 545230993 752660454 411931383 754568174 860859376 968923180 986606304 995469341 178778439 388061050 659941317 880329527 64944273 840492726 479923543 535513847 480904806 784648887 407231859 740073665 901310669 984424773 202469307 412638989 605502905 710428645 433577192 810559900 394056790 635621609 118923419 539613603 938013888 994350884 639638657 848582276 691255315 902641943 346161949 552799101 937513906 963269748 552567391 584578811 141921819 161183560 204907476 818077828 234190440 509440051 914882132 933976659 259687271 370010945 211791102 907269666 919897514 944814250 273241585 987708437 267349359 560119559 440124582 903631254 958886572 987215325 430107125 581474217 587146308 883251773 410513934 593455973 88907485 699543256 173396320 684761569 571110112 919484531 890224349 977870888 284315176 721274918 319470976 959210026 437536632 697284080 204568439 530187670 696813411 758122057 873333896 894106782 73173747 741987067 579387165 693321658 33136480 484397441 676922030 717794787 762164090 820630251 241964710 267056270 824386573 869516721 37991495 566237006 999974825 999986294 960168274 987044844 93675017 530991039 973745118 994584843 782587628 971956186 199486154 839638206 161521442 190824700 689303616 740613665 394663632 597940826 267163186 549028432 371286095 428556892 321486539 805475262 632323286 916567894 46588767 409398155 133274121 946792414 119957631 149638555 333758573 570766445 58432882 588899183 338551956 478763412 836857641 839097456 584319843 649084651 144742122 968486110 73922957 333929984 318436598 424045247 484367522 937213386 834795561 855020148 339609377 791242704 718865060 890014112 89192782 538675950 291852594 576876763 838269348 944391364 944212657 988489754 109279004 623268373 545099802 907009072 826976170 869182853 979876059 987390628 801374264 970402267 852038222 964501770 547555734 899008540 509034137 994808011 185438635 840974076 986097253 997806798 335037289 875349661 667703508 948049567 942746976 998408867 975018109 999558934 117070397 870948277 795931308 827406819 638410788 681786907 748895671 859622021 353259458 661008159 775179979 801473398 809728751 863079277 21259853 830834769 330384628 666382505 325474212 746039682 339915667 774744308 923851459 937638734 718305382 897987032 131300502 346643359 963378360 984766106 142480205 674530465 324013433 929785458 367779278 624838410 570237720 961949738 707481274 769477533 251903045 398227869 245743851 902028475 479646759 937785436 920706142 995431674 963763359 997532521 876085426 968593281 802370442 952004026 234139622 713556119 679207748 852372577 187343081 341350352 124337175 580967937 173962302 227572932 185866430 513360996 351621002 840883455 964477449 991159106 201962402 538859911 582784012 818721521 176923534 887838273 853926374 922264309 802216228 927662101 271523287 635051146 909248188 972356922 227337778 764074599 22082788 475705329 105442503 107481471 20388049 279435974 460368598 562644061 100978638 251053609 859650843 894078401 117444064 977906789 584154831 989523197 393210329 395732301 39650425 214225257 310371081 666462271 620546150 907531273 716694245 992898963 160955012 642725475 95559900 998934938 507427062 979144203 788364668 898824215 153093472 478641475 188077112 414430492 81837811 202701457 113267780 505505377 821398610 952227151 190130651 764657932 669558365 691955675 521953756 835460142 631639231 890987509 606211145 785944970 649524203 978372995 260941736 857992117 381983955 595528913 212692743 407309540 555743491 824422291 812362006 867654360 515015335 946819097 190657945 647080474 869267899 935243814 597637258 959252617 103715373 507957672 701464790 902343526 727526597 837915398 619264441 677469787 362605743 620629322 266254731 385842910 647450614 688312560 139981353 885410267 58070070 181539525 87128669 189416182 958561801 999323181 705550953 964150972 319287590 813997543 821028240 957351020 664949742 687942273 914909876 996541243 120183041 546703469 564552239 940332262 96003346 490746123 443160645 764125121 350098604 510635888 649653297 734176231 499011179 794343255 459770610 472476026 857037595 938239019 495495423 609676452 986887815 992635547 803032618 807661744 906747194 959472690 441141215 773397083 346437655 658787079 545053302 858043972 527198965 695095630 197775577 686331840 622229712 791965323 422268461 671336457 373199642 917247118 53494325 484828681 660181192 959760152 693654869 885719261 326783641 552963801 193937597 445689456 480087543 793222900 590085788 837383747 896115573 937805438 175987672 650038271 671892881 717036834 789192495 925033909 412426745 736400134 134877000 303320518 249368667 802380677 693056891 802969938 769034825 961536528 126201547 900960499 649020775 753105429 700272559 955196597 850497783 953094152 854968416 989911693 744951237 773967989 649141380 729090339 288591533 774304721 140534581 576662227 679620328 701014169 353027880 808281594 346974916 355971961 104002994 483235963 817545416 874480977 350518417 653457571 84883244 90450031 577793564 598923544 693543343 920818536 791191500 946890630 610619067 675639371 582658908 907415289 3708894 753969991 848263868 989816439 184268889 298038783 148705333 748202005 691285849 815334225 736516991 871171628 194995711 508210905 509808928 757912397 553652606 560804623 274635600 331341826 155032939 870841275 683894685 695801334 105395103 461131678 782865061 867974906 145074089 583225523 472822136 588579585 162431229 327308323 476875788 684989136 46563624 452405339 359142514 612657308 722658773 836917759 452224546 548071617 419229133 738473497 283342550 698918778 923000308 928434497 731154379 875071022 795297403 821308194 450374288 500547870 155899633 907080029 310397285 513609507 154353840 976226385 807990089 908517695 494500340 750406340 540385497 688549769 608077610 876512625 942890055 984497303 922932573 954009722 195069932 403776424 793693033 856492624 580197183 898118142 755719663 768585163 944847356 945898259 574957796 700050551 403306240 709544718 858241602 971200908 679219161 784230216 201642175 641346711 932453327 958398701 169054923 621224591 580877607 916512991 926691646 959888550 592513113 754880501 184313504 947479247 781998164 797466212 330606195 591551873 477909708 938767361 781407859 953718912 417841993 567969282 618432296 848952234 369239241 802861052 837121311 901066895 796162384 817990859 418502729 917632814 137364513 210201713 467390426 501079193 422314398 545337058 851212994 929598186 899507687 944268308 716281126 942150388 560924122 650497894 300556002 694988004 404090755 939038347 319350516 727835664 111946332 157022447 318392702 846425790 772584690 778064386 346832463 697559969 373150881 749969806 190600760 315181298 935305084 962259234 846480597 924866232 431226997 939782111 72621938 596123567 264178075 347991832 438752736 854015311 82791546 519139665 34726529 912103869 705635741 881992857 270064702 557913147 375398450 524554507 967894468 998702395 2133596 382252467 776161249 801154242 787159279 917100575 264660955 797635437 819433132 845321450 156272514 316011053 267367144 849702738 46618177 191631798 27475195 456570256 481069153 587940617 995997838 997118794 293148275 780605994 104776361 550350765 451622773 578648057 890258693 995138149 688264919 756746965 217282074 994243124 499282666 838963696 389342036 839169214 872694339 950537099 177611901 338243460 5429891 496401770 118616897 948976701 477717788 947540476 768912767 897134478 328808599 462540019 170536588 276611710 200455684 284737787 70627098 215158681 176956241 656964647 554720132 921370986 198234841 964318494 995172990 995708094 6100753 259664106 649041540 840976699 636480139 832886324 491580684 953561693 215685116 364346996 722553650 890182161 779677365 885674985 758345431 881118694 520276151 742662200 357374829 860113985 370405230 501431085 145015751 845935128 616696593 839916556 160577534 198428075 867346123 960091693 934063047 999528423 96527390 697608429 113235679 919094306 32981826 835128405 292029811 741623615 196807405 605986466 806637064 932641455 584801674 911371626 536690843 711139182 346163416 377564368 440002590 997893923 78967068 127379783 303173600 910282270 118351674 283179566 138497162 451928906 322407268 787655257 804530570 990737370 230900939 722655689 779366866 946747256 121144381 227250432 123939239 730584364 796311506 980258436 869231256 943071597 256708341 342967212 675122097 950749974 394938969 432257955 713584384 772139173 757839245 837468943 999943403 999991258 854148078 972359748 548543815 855757641 178993595 265050760 871973046 992264864 838959952 897165290 164773028 620145015 298615947 374729999 965481134 980422701 867880591 958064534 909268773 984441277 176464734 788690596 974640748 976618471 850940765 935715344 371977020 570662018 521165472 872360110 593912774 725273476 382598579 828217646 380630447 772134475 29459214 789236510 894522325 932786907 402400855 539675757 814452954 982575462 193386464 284863720 914904603 998990702 806674670 997143099 287371145 593102880 34734323 924351392 440716526 857740047 487090062 543666347 455796270 597492597 807458237 912747729 975534887 997231112 745857665 884592789 413013707 948471429 420998202 864691322 283158373 977788465 420672704 562683354 366675595 582330458 947274402 974634729 374739165 474632067 94748374 175306776 76216663 751621051 304904429 626113713 823337488 939307695 611528320 742217472 436353899 438982256 311419174 398034552 322012721 807026062 707495653 782318174 316770077 620420232 609344869 727448369 2703340 971918356 972375077 978305932 715515715 939859468 344973690 460991230 75347055 277753869 967229697 985668670 129703609 153406898 928590528 980696594 600947027 754170520 296601401 927270233 514520704 884434194 346343924 715207576 282369799 809942689 946339939 995556274 199943271 726579424 660587147 829173513 423183640 798694862 954240231 962728580 371566458 842151681 56873953 244712097 223875298 417698899 508804072 766007443 265600691 342135217 236318163 303383814 23393567 703605906 264402983 686866866 367564510 367701354 578526662 726544015 326518994 949406979 901049413 958063203 125100757 546645682 620987177 758513010 561571044 633583080 255449796 583146473 485954695 566492998 675434018 702065181 267774305 434011809 256535832 990832767 569340077 813822691 163616799 670078347 220940585 388572118 545934010 546669764 943784467 995537880 480260140 494467430 87756802 129704692 241794282 690673690 656691453 993464508 672402360 749787439 684524670 976508052 918989425 928419499 120068351 278846712 940050934 984850812 54919096 839336000 273177302 863554368 86139293 175745702 978362663 989582526 268356863 505108831 206006611 593396636 248064018 342020788 466819262 860241223 734297033 956186737 922336680 931843334 874813798 882255344 213951266 287075095 862788574 903771179 485266540 713940567 46756827 292563946 599864484 611250776 800266961 888964172 520429009 554661739 351795214 988502099 54639807 794053608 145689896 638067590 768039175 814038296 21963821 535433295 793213092 829816837 114294985 783350202 438962330 764670127 978881870 979500041 329486603 731775746 923428062 947214697 602734667 765718737 672912717 858955416 629968429 904153879 602605867 840315875 674076150 790122710 369452993 588560269 84579346 185354154 822261052 921358459 923236239 931511869 864846014 901787954 730014207 755244286 661286314 999134264 315415580 726058096 741373314 783893304 276179364 675578028 240889766 753238882 319908280 657260608 13296978 773722914 588840681 791229388 381988410 665892480 703632686 808242899 244401876 884359617 536149964 759219024 620211073 722267504 14479112 93947465 682511471 830704306 868848565 929759637 995325959 995440104 368948858 643444465 882979399 963102498 316079168 765705836 247350675 288695788 882495757 948115620 791830900 985788040 547292142 883953260 19367014 399713128 675086783 879133024 419243015 541143529 342801508 527437518 375889188 516111235 973310569 985265022 623468354 713054162 298146765 812774296 759244107 869758416 844322357 979100463 665757522 671185561 469247036 940228313 4893031 477146009 820320939 920639367 592359447 978442897 543664532 940914952 69496547 730752142 390972502 697952450 888429270 892913344 325790409 966525875 258437589 432391190 252898734 678123522 530561002 594489726 856374668 915519477 816525119 852734881 634232165 825049156 648658774 702769555 940828682 990029294 670126184 924925950 9190142 325390925 376987405 841856353 536057514 879409646 218307511 231297839 247135931 982650931 975860192 977319827 72353845 147031988 125039027 800658168 907719309 963310279 858204723 876279005 790958042 914938825 78753916 275195887 382301352 440112202 239582179 929399848 509751786 619438812 303005582 716655982 692612201 970057482 39892062 927952417 416180114 613756470 402124050 817478241 63530893 672330653 31538254 443330285 41057778 417693852 598187412 928790280 81436548 489647155 482809063 773068181 18201321 508003081 354815441 843304040 419180967 623753938 735553155 829781159 877694014 971003634 371736394 645799760 846995041 863514051 156976333 615375340 142283778 421202301 82727816 968363929 505486003 611606796 428305724 452526558 351220304 871027788 878869216 919306877 11357859 459803395 452073016 766381868 939163792 944734920 167836535 316973046 101154007 611905014 809857838 818895893 540058431 824165324 413852469 468000192 476545080 901805884 123543416 323254769 531012067 603137350 66061498 115617818 396062345 441036381 78261308 615220726 390058952 907169195 814213268 884946928 955881644 985879825 800300626 931803764 326511634 718138335 945737783 963544351 791626574 935786569 598112560 773565397 465133521 864619072 931035150 985791322 434788460 839800586 171676675 637185295 706320258 753263677 760988155 909108362 59476719 197671915 809424831 814507434 395014052 997330319 207247332 730406630 773016154 837402028 662429707 884331193 841050795 857583117 48849322 724946514 812364733 909081639 216321594 328966865 27563801 185542141 227055947 994625853 18765415 335448257 365078907 908988547 812795951 850564288 221614162 985482641 981757695 991921348 679664094 923022141 731136708 986327386 950009665 971834876 530066786 707005781 753096726 863663826 146765122 521879045 697078797 776412473 79955471 91381246 99208132 874873410 164796712 596767784 79820763 408181557 867470572 918520744 463033232 843681276 169823260 208375664 364497347 975520731 237991054 902093778 433165989 443028974 279861283 951953452 440698014 454784763 312570646 473207657 323412619 582013404 350588327 663914573 976758001 997937547 432671500 810881705 265449818 607690604 17471664 955242552 714535432 808484387 18233481 118207168 395153052 714343611 48500825 239891334 859176710 911159383 260437015 306422196 798103774 881307742 85423165 152371848 151781677 651268978 655100537 962538107 719442109 982163273 908720106 997633898 495131203 759533975 758416471 985312644 908080293 960151604 427525296 836722310 179683584 343875629 842239161 968558591 478503494 960784186 363520563 931312518 955964745 998012642 967133257 995009710 718569128 777663115 59814461 348475768 514697894 764733538 519963281 835642888 198171277 403918142 506704661 554262454 500544403 523983133 989611696 989712560 865589407 905721106 110000682 272777713 438517171 738268697 415450233 528433675 464360008 717995553 558714561 988024707 335329244 657198978 615701151 868848610 818445836 982822139 616005281 793841803 326875511 945520517 285818009 796178363 922284343 924554892 471145275 704535877 38624339 385083607 643096814 765102759 951238229 977743156 324607526 874746103 423013564 639837767 22270159 734399378 527920821 605975896 191278106 349028836 831472235 898647338 482504927 693036983 767436486 873796437 568490690 698558212 576387243 873903579 570412416 981869983 780486450 792555446 841922184 988128566 442348809 912063318 56231804 703950452 681566977 855455117 357121601 460500121 839880398 895135668 740323478 943653508 248308420 458521084 223522396 307685747 126067706 641675773 428694207 529628238 19016431 316920333 540672646 658585476 5389853 44577908 603142 75074319 616909486 855403838 432999368 811500900 504001560 588305107 905020575 963861885 116910488 564022180 493723997 770122206 755207098 875912404 12041240 305553531 194832615 893426329 748468499 943051616 437089249 479940424 757281325 805164860 197965378 443759960 95789782 973377261 892433135 962363072 825643958 907150185 339914244 838436344 881334637 991272792 221810528 628665090 499608152 951353962 340532664 674995192 55574943 113843655 923732669 952912993 697442885 921547547 277620122 734760158 559185181 598265311 660223318 773426548 127008305 679686732 894041167 909876382 123106412 722437632 782777023 889083898 578491837 600007303 271497557 808890307 772801050 827869937 550440752 561007793 53039161 500555650 867117173 900985221 446370160 864727130 800715012 849881758 33300539 680594077 760660303 929985116 874492904 920172610 135365363 230480301 188661774 645312070 245354418 485525137 339249836 954029776 512905589 711839877 237608171 595852902 800943738 893229269 436096553 695612871 800775209 809547219 894896568 966616284 19079840 782957002 136204286 796453989 582631501 790779327 604214546 993785063 46594192 118321160 331284334 543144952 837216102 979040111 153274895 548677222 303780322 344993509 932463075 974286758 208274110 382213783 447872581 950499038 793948888 850416161 259165179 896346831 270888252 978822968 398628011 874763898 11907673 705306034 173629413 629306356 474543324 882281893 74566486 558025994 216750183 963080399 246621785 850056750 54660454 235425768 264440569 683144453 473145764 966215487 456855789 853640554 372081000 741827279 317925436 578726480 72344238 709272711 598373997 733211968 884951607 966050122 764118123 832461580 67825106 528934948 252729894 454044205 841758456 852577497 556632516 942968480 90907344 255156345 102595301 124031634 577086550 817183442 909044343 953376568 968512800 998124582 23617903 884998025 899186962 948211602 991735032 994584058 148052866 595903672 985575391 995665466 697412068 895255804 424637234 828659354 776674997 929623571 279022260 771867351 62413554 643627207 995381883 997718060 903912621 917036568 907959332 992545093 344207171 627105725 646184767 849073533 398217032 565190898 107745248 640945127 417547944 985967079 787662647 855560865 785208952 980345913 262725739 458243904 733870760 753512360 907224050 984406696 223071325 267601136 46866470 189217756 246382981 269470748 344354671 382037548 734417666 963675336 994930963 999884003 691651787 727654217 822280931 933946453 958153137 995798168 210974951 887153519 565259637 667939537 606317746 715409635 518820158 775313213 252191594 318050259 268470695 934139103 83440470 867794851 177406905 546724670 76963779 85877757 277766648 818476445 190286188 970055014 234479177 599599828 343252244 741499099 290734077 369075981 448165733 842386050 262873795 381660488 995052433 999390333 787589594 901645760 874245932 941769664 737583092 996538224 112197590 807772833 405992407 854986684 729778854 748462012 683320936 839666959 852071843 987997761 50536930 217998955 309656667 544060989 726062281 979470590 612404653 662674101 188012730 209031959 574080196 799165835 663121856 792663869 476027225 585783375 829353921 948361748 182443083 335918412 106088418 432552901 409102597 858433110 804887470 990001762 132531765 887909389 488130143 840929805 972715783 979833564 787974283 989394598 378943295 396282220 456736334 879580911 110304520 695881976 715895944 968642619 478804624 855505937 554279914 858445840 188796622 922079511 642722191 857571230 172825392 547350104 392175033 502390053 396113406 840249143 784642873 971646031 769068443 914872738 160421097 482289764 426413726 999961105 437747166 491760876 213622741 628716277 606179106 952336595 181853832 863484774 3161016 983835431 69347602 415240980 934459276 964833743 929251985 938898785 347477921 692646623 556194094 906410842 584285893 972368733 88116897 983376401 913441984 988732071 626066175 747972730 100184801 916423401 872511652 943666925 858666825 948602772 906786826 917485898 361677806 882316011 167830430 671268419 809542898 941129775 359608394 827696935 132594587 904532745 170087873 955574290 314420864 364087128 284762120 415800765 857213420 965092505 709253226 726702993 972475011 985356001 86677123 101910644 319421627 777965140 634848655 816015612 858042044 914669383 977314910 996515643 70599273 688770071 470659687 479318714 129111654 890518257 881008566 942899831 725352483 935656260 367936025 843162640 955266156 956642616 764393893 860921291 256610236 776671201 347453331 389658269 787388338 842639780 46846818 412639870 116698593 413529093 47630984 844716676 506618785 735933673 284349883 956906233 375771140 790707753 265093710 588324173 167085585 629380921 879932336 982691225 918849003 959504844 688519657 856585156 178189369 560769682 427753024 808989977 627220612 869366258 199912276 362755850 16393567 145281345 20667064 336983400 820037487 859762077 54339455 883327643 623545624 870351826 719380658 745262585 809004310 860848750 519908630 649130267 522644391 615098902 405827363 505869898 452383345 645626941 560942084 579135659 118609012 652790809 102490796 724820113 41522164 430727202 396732932 793519636 574460193 984596103 626893900 912345237 677874966 831754306 80121195 463994234 68741277 585020529 434048811 886351064 313755655 446061343 912294228 963781371 216212336 923545805 140894029 776390664 67593450 598039738 359040245 467174024 465760877 858888135 94078890 852693145 909390007 991330913 876378694 907140976 574051979 888332269 420250896 432523662 890843838 996587859 382336421 635252331 357726646 529178633 288918437 623303635 298292798 604140085 499017320 825873866 272239222 407967438 2722923 547837998 162074658 640538443 13997714 708455364 177933509 549772015 163455343 861470664 548305567 872570647 934084618 953855818 570779336 702683094 191252260 893035867 397435325 477365922 356473731 708412467 393380690 550940160 210828513 861351442 522167826 767411695 429493789 878077678 445493240 979047369 916776274 939499075 22216120 375832600 470977717 758361135 18019717 861828634 706493725 912437852 35275395 959889741 52375891 458459872 819667703 906061764 817776287 870355668 958571237 995169264 489416068 705467303 497871173 635947158 230210062 256893154 51275240 237217140 675260730 724567388 335636946 452371608 878146048 931569682 954725597 981052504 488319839 524586548 885441318 896350751 784818385 964077129 869506263 935053923 629757909 932378241 7884688 47612749 468536735 971834595 441168452 978362345 311904548 837655590 280002767 376231218 194369930 631019189 641410746 726285006 329279616 780406395 433354937 967949666 289418393 366203970 464185209 796551109 572574514 615134862 512804507 716425937 96059559 856770922 154082604 215382529 629795284 790097297 705616775 955329402 84962109 987604482 277727979 371836289 901262264 932072572 693869779 997940454 918328993 968452821 386644766 737457287 675239839 903242098 387941289 684318492 756753102 855224167 584925449 605891768 156079424 927508551 750364840 793106191 313850265 721738661 289065293 532559415 236591995 443102808 848867051 957327209 183281551 607260917 579498315 735873127 352052504 596684374 754007949 853304680 260040361 747060317 956358809 984604044 120300083 730687031 113430616 803463502 777811579 909768143 736920488 779283651 755529528 779698500 123669070 981697795 666382779 993366754 756007932 855948678 788833783 811412614 261944064 728423697 71770768 226090484 282550589 462359446 841301865 962112809 472547304 663813133 103883672 211697881 827266575 943694742 925818273 976200311 209130582 798290528 494451513 753405587 184700278 779528355 885321844 979189701 684484613 725317680 5298219 989812189 206826381 737083194 572919281 662913722 898119668 981258687 582128213 910892134 513237132 686196715 432423882 549873410 525578120 805950365 178488654 728125377 296915321 738382450 275812442 634670421 941180790 961851602 612019266 858755291 206060765 224110679 31687721 737595672 55529897 243589288 879963142 892115878 518543908 879473794 664790970 778559793 825365947 829280237 198580403 337318608 511386866 672747688 337873670 368943641 955957457 960445610 78771080 795710234 282333848 730545202 849307301 967795846 84681712 346224188 573863394 620692621 834260935 905951695 42529649 154452195 566757377 886330382 702704517 974304558 563344056 896995586 159167717 541197985 207779585 526839671 414379336 869049059 910302984 946728800 587121140 972756957 944472902 983310317 724700779 954097512 149647273 189970779 699948736 706932630 571845360 968303749 272424921 731200383 229834526 232803416 193459223 481177522 326088507 574401010 547909604 579995865 831333602 891323999 170597887 552391544 493066532 605748688 799385123 849929035 607390601 953508123 62798496 976842920 803736570 898017591 970331157 982250137 207666003 989507447 951889938 982792106 337846997 429602282 664979417 997067938 814966910 870636580 253380442 312833573 794949435 815758099 43360144 991622531 209996629 367599625 223612392 738835243 324094470 344855243 507019349 911986882 254898297 891023377 510471191 773558548 770781212 821319961 288495453 856306341 90163474 842850490 25629652 577257865 379679485 892472996 838757954 986507121 61718425 599324961 568138725 990868482 380938498 468837340 722728382 969295166 412538613 982490374 764737077 813214040 661417739 930069333 762745625 827434738 652161171 734438225 151765120 387224028 30847333 603979438 735094963 954024119 916446168 917479913 542985955 762515568 770936335 837898668 224278157 903674629 447154615 951090521 42514435 843738230 44207465 426689182 406801082 670421986 396814109 693958341 836785969 856628186 118610388 377916095 477680949 494105587 531835977 914403935 758545199 919758933 539440599 582872416 933226864 961457481 767241556 811193748 60134816 710830297 554277592 747715500 743689105 870130570 485698641 757770542 470764762 906630404 705647676 832287642 689119550 850742117 779580438 782923881 770246990 933422045 592789220 643713510 723851578 979155147 853268932 897279515 821470753 926404805 117429859 473334761 100748931 463300337 138919475 268275603 842507208 847396907 442479295 784586300 741505716 756123137 120304204 537515895 680581649 735224606 452582613 623134762 378813932 385365738 397807901 720926340 562756347 618434697 527582434 671162857 507725337 624091920 527282794 977682570 996337813 997891755 572158895 617143588 848274753 880999634 192218365 547308435 864593497 898583724 601884652 725506895 228246490 341387148 418136039 586020048 660204177 870841796 154891820 719162281 4053522 774699655 446189875 861354478 718006985 929647419 927953526 941894042 956910684 958209869 989692418 998841521 631322360 991934221 942185553 954704780 299805111 981938646 440578760 750034551 931420429 937399971 811435488 869864870 189149485 383907269 360699906 428070795 153252170 764137942 299191289 734421125 370435415 490743159 306242785 805024599 155204745 809543963 429546148 482145689 789869492 934790620 911155497 924349109 182336013 566202822 275645799 989945109 425618420 567064065 610223896 889852076 538044830 690019771 312465120 341778429 719953420 901221734 527429857 718903510 480172756 914324836 516076501 724925238 557476651 980856779 400000049 901783102 62953675 467194387 391192339 695508678 199710168 844468341 998991500 999803471 17539117 345313114 836090105 910258866 835480797 990689559 979499793 994778458 888655009 994203009 498558466 606073521 290017225 952903531 714848568 798719885 373066917 483568074 8718367 607970405 407078813 682966603 510085171 592458240 342236076 466547854 388359440 653999410 211786686 504148089 231384977 360121718 107331571 502890415 290889346 970202040 533685516 998693480 368783987 566892533 759287951 904413101 433167041 520508288 6809113 47511662 830893475 924644055 129273025 277249610 558165499 744925580 1981326 831487209 575652576 766141527 457798240 579966824 597882085 629668125 363774815 630194077 68415148 422909177 327558027 538563725 697630658 811528986 82064367 239480932 350042540 536463817 809361006 886218084 533306585 888590054 251707986 536071814 382120605 917693321 667265945 824867595 140251890 509704438 440413515 853833963 366656742 744049190 630641879 851503581 824175604 917714667 478801865 669795444 744453627 829555047 744004110 831170925 2277406 745705491 20843338 870374563 574670721 805040518 404196799 556098322 419981894 470208169 243180591 829228516 664601648 676832480 575188581 765453666 843888661 947449441 957268273 992353980 960831368 983653883 503154036 690269879 126840297 315237287 812928676 833119921 326203546 836578847 118097782 824190716 337327829 537521853 368202272 625650650 244034333 494943837 141637347 471991065 92368932 272516176 136756049 274244511 417175878 495498555 663140619 897696321 498996155 679471327 542585284 662980649 322386338 753650792 569365724 586336486 541563528 990095741 702480351 744451037 202227898 405158923 995374843 998827536 767375194 968425583 514965176 547472768 123480720 865424237 569281778 978077014 152541591 928209240 695247904 733499043 316575348 434246603 888754580 944779798 643035469 919007660 893725435 997140000 766606087 953547382 929296592 953337653 476155595 810104016 192155521 785453423 815525795 999203003 806080581 977289833 123283147 573202931 797158243 867424786 871785432 973401504 379471898 401812261 994954635 996461658 173489209 449961958 38554364 632400483 421397912 854099458 214120596 849396069 437282521 878193521 357781054 671745158 981457827 992944720 333748780 767073720 107278760 431651171 241377419 765112689 801344281 866959547 340401842 422266784 449834859 869685195 578638675 592976610 825503648 920045047 532890120 713809722 587834223 634223146 125890656 562328118 884314906 933410801 224952674 312140371 95260445 324265867 367280315 894388254 223963861 675027700 982411418 994969197 503416321 887449141 43594862 971024748 298083613 501676767 388275810 692873878 381353545 951050114 468461645 776167626 227029038 765192100 399827195 466358374 749519103 799414634 454815415 741492765 203060003 668648660 840127810 947820638 510137578 926384148 848249026 990222027 217767952 476410565 625930400 726411295 559744937 736219736 892443836 934532937 747408999 960166082 546052044 796340731 597176715 705810335 742273731 969244704 705738071 778447288 30979712 215420996 776835877 783298667 104246388 869901621 58877806 215752029 220478881 948720824 610506845 872488032 39506139 178917386 548548305 798431749 448217162 456430207 547598581 945337857 602896688 656508755 138226270 500865515 350549431 523639137 62952763 464046056 792040191 850164307 852769362 971945978 379574154 563903824 817868909 985448406 628083650 884130915 396946337 452773229 881038979 973225942 491864829 670208730 945055687 996358577 374332281 422823738 495574877 941746818 445433781 958284412 388580678 695222997 174025895 386520475 121290769 822043365 478834538 533974035 147799983 266688660 864681096 907088870 990443623 998356219 865975560 972849741 97762315 329157593 209599853 572575567 644302264 788011562 100100736 862345845 686165158 759538894 278856761 973057446 444981233 598040356 157045460 822077795 27571902 666673028 628804653 995155493 833155940 950554774 246710641 745211645 283264428 738450002 495693276 726138646 440497782 723868066 230295830 534561901 6221870 273244461 302102052 460098162 39982462 593713246 95720664 383847884 948547858 982410456 371302680 956963181 91305489 802463863 308973238 549763374 526340571 577703147 457176782 665329784 237145267 313354406 390144118 997993136 120753684 965837550 297120805 898251449 382870614 680692524 214154683 713744465 51915207 820676321 940560346 949482834 25063670 697723536 614727628 869443742 944485654 962489406 433601302 839782704 232115245 906419847 211317831 932940472 6858611 340197896 347097211 555529104 178222752 401771944 525786100 616748068 786777123 992798026 501900055 973319622 771870945 981079327 974743310 996957982 352040833 683829981 676136980 696409140 269312597 504787232 840193299 853251431 184517485 835587423 468228512 610686361 232873119 250521269 166915100 679282353 348562954 357429380 339603109 999728403 138770162 228634282 13738627 233179402 285392717 604837069 262440424 507736216 361773172 649259251 996451884 999546378 329375501 388917129 375886309 686194500 109077432 401971785 952507431 990602195 283697967 813137177 799100103 965566473 301848578 907550083 926394659 974956057 102654684 123068566 879774287 988220142 461595135 820117884 777435750 999664948 910484470 914527042 169053566 482656742 583556391 779724224 695137882 705971704 247159402 483210245 763551808 884663337 341363769 919486444 321140295 475673011 192199741 597542638 370662628 380541417 949981829 994907563 488710068 548368560 159170394 858630025 132606353 317190023 256597289 982579742 557933819 959904676 446223886 661225395 133351465 523043805 348536314 941128977 386770760 685101160 734996808 865030074 720182547 888858736 32442525 709043487 67859582 475304469 482644961 594070636 514499240 987125868 155293185 649945271 452620432 837611732 737229657 989775488 411811390 998812468 933805741 952581118 670929482 729771171 800588357 937131849 570907365 639153920 566913752 914081974 469261793 542741855 657715874 709272146 74606484 354442161 78582478 933838940 963504150 995665292 748024822 928846584 970165631 977508757 497089449 597380364 262227196 698712639 8876439 229307817 134042190 888437409 421343879 962420230 680496715 706004768 307925596 562029220 359430709 515380356 478849648 578587767 823975947 993576959 880192976 996796982 460458602 881833888 687911492 816530065 94554108 340616240 734937843 791615971 60669531 440795515 548410013 825331827 347880264 679036980 467139703 783902378 253240933 475047771 701694996 817877214 711495019 806888025 727589263 832710529 729410767 762854482 801855835 957582506 257643963 592866743 101942565 244523013 833395089 910872114 700438940 975417122 238410442 358198321 942032643 997747052 372789523 374839733 491742437 942921440 788641746 898802622 314181882 484743896 929318833 990630238 548256825 942579260 440401877 502901110 23468301 965518550 642746203 850711184 794187194 995118667 824187704 915710498 640014660 915244671 166880024 404194173 807479871 951763920 942142634 962151316 150170357 273282503 640338029 835174832 694892069 789784233 661097321 850422429 197868161 578528180 30269655 535117374 365410123 518919505 758092792 843224976 98950415 706229369 52289153 331988815 299515930 898064395 18169456 834471160 738769952 851809166 31933440 435347766 899900246 921572514 417270449 813840864 934140938 941613549 823657916 883312814 218835321 709196739 276376044 602161498 845525447 949714203 526990759 810539325 905363562 971942335 895923087 951932564 445641443 464634486 782440877 974554729 282694900 333126227 707110351 888364904 11991704 580755650 602258474 659677444 292693187 470630059 713357810 819406627 422580563 774584096 135337374 291608735 405816095 493640564 906950056 960994671 923017096 972761982 235894392 807549875 322844076 372936446 721890482 984512925 648665701 950629948 739286730 875426032 723712095 753639628 599926308 832195728 624166776 757358135 163403073 582940966 664538572 850943227 966134377 968590255 862694188 924842918 378391514 571943452 930883706 985727274 389705130 934271173 31915415 49397743 197724877 875626055 758580667 785400286 674663405 903807311 636467934 860807759 38965531 222540502 481808752 531196977 596830380 804902088 704581176 715805617 856178193 927265494 13245190 499885509 672575228 883044305 398858987 805403950 522391694 561233836 476317246 867463118 970355119 979051132 458684564 719302756 939068124 962786586 647569485 944689534 174821326 892941579 799423290 838041714 678100192 730692764 354114670 877020295 262800977 513015270 908201759 935822791 658601779 763997130 897767492 968907924 653082734 932772275 836442897 957983047 941927010 953466302 285743961 929987876 39670204 278152557 573085433 729612452 957190065 993887569 21022683 933882450 449595757 515132391 117345376 845122172 961904053 970101883 166111887 966442975 9026344 557936390 782344825 945117594 186234792 352796181 873059284 910415286 15661270 619504019 914835899 941001019 694325369 880430048 984659922 993450012 801562734 814011944 690956730 741901808 100684541 105257665 215064160 638586766 775906673 986411904 947306887 980228207 442400679 471682691 225103387 701657605 290798621 652185886 407255187 715669186 969320432 972431943 112648924 299725727 509418628 538615495 785349235 961649967 618297166 797525722 865496336 955425112 788478540 991270578 126903121 369289465 39725912 927132537 901930341 922537009 977418782 980187152 565819354 813150004 925208452 964246693 365622672 883584846 828060114 995606756 855286471 894933093 552665549 974690669 976635948 982726569 531269796 584382319 614137815 780298879 553037547 940887057 125162593 316264059 441924032 975375300 865172244 985480746 2988297 655255628 448378135 516555746 464561259 524517604 680133727 871867288 160520005 773513476 681055988 738997027 581002470 589516283 475352063 551396251 45334679 352131984 395788608 768968233 989435705 996004995 621940043 927451028 910365057 949093198 550779557 572577523 228034919 716256535 637611070 824642462 841272114 999975177 346759661 749072148 813285247 915648274 233173137 578798150 685575295 686686784 638949324 970512140 268854201 667469033 45390880 379266459 417462240 645987595 88447962 632783624 957686146 979187642 490890179 669472902 818820998 875998772 170497377 208712620 112520744 375932498 750925682 807940674 827285833 980242978 974304936 993967687 594225277 832588111 406845896 755876257 372554853 496981345 205346240 753794524 783012487 847031246 40013010 903230553 667675450 949714542 808388591 922433847 462085938 566828383 978752601 979569054 334983418 445016318 69969764 346082936 977573160 996687258 629266235 844064914 953893137 957047750 761999643 821614829 546001028 825822256 277679896 986574938 590835817 869625239 831894878 864337325 537333014 776754011 79031802 831540464 320454573 386772638 427206165 922570280 332183476 960225326 49649718 329284149 425028066 444407679 718157846 968062636 886130887 977049739 647220438 960589201 407438719 495980559 920726699 948595300 3288908 564458891 551474310 712190056 251498963 314032012 648741307 944025052 955278981 999580235 941343455 992134731 583581953 687825242 268185205 473257116 873332852 891739058 756124321 847784679 410749772 589223646 700405846 782526917 787915665 983966890 66356088 226060723 266967398 299546331 344376328 766231100 227734447 453981138 571748420 819987857 896411307 958548549 368526544 910767259 393188512 557677228 456338665 913072713 409419125 446179866 940948214 985236814 434537567 948165985 903816638 942252375 885785274 888966513 210441038 828416783 38231070 177320919 580435701 709627906 723059596 732502196 185402468 302506814 129211601 264283223 84454320 606160240 279231919 469540468 969641275 978671422 307353237 798080785 35522408 511394399 86141725 993835944 497335220 922038002 592841781 717669309 533513729 936721086 999041985 999784844 814442493 899185504 341976858 597567667 602798759 650120375 300740959 730506248 874418135 990322891 203399043 879135530 515388514 772206334 239614956 786201997 879111356 957281574 59227219 519202199 516154772 615530427 415803808 639401062 73750550 436552815 649201763 766201806 702834261 829266613 867032221 939719020 504336749 740072218 75747102 809537534 850730318 908039280 879520509 893163813 507929231 835578623 697063754 720268209 211291372 420240437 786393317 977564986 268725477 691280363 432952389 635560210 932109296 959192559 973331566 987049383 814084557 925596366 180578305 645117989 965993520 977345553 886571303 964252216 942590101 974518303 575616302 824728161 825115400 962989343 322247995 945669452 538875956 686698247 662043824 678481838 644060551 901516445 189594255 486405653 361585521 477644995 392391373 974836597 513803888 939435642 959474728 985188029 903063047 982363626 425432637 912278069 161708026 367098050 786668835 952341401 225860710 564676776 794245478 911537540 578047036 935877375 369524295 800228586 50386513 862294058 949856064 996498489 905866574 941820697 669630575 932205920 504680105 755854169 782900238 972809858 182818490 539604222 388077307 612320442 963074012 980756397 838755286 857004004 751276866 899639404 217224339 415343163 292664638 341180692 293831408 345171319 110694883 197222475 818592226 935939843 645291966 956820051 608893963 890760843 640674052 668184326 148182608 419125103 314310116 464166665 778997677 908441010 584196780 740129525 763845159 961728277 986403942 987041070 712334473 861084789 10321196 139050831 485096841 722476736 726768655 752560532 45070161 820052654 344195758 426886773 402919277 514183649 402524230 925646793 643266894 713542789 523075990 816947275 210328576 248938698 692360230 973875310 14946859 878003754 978277658 994356909 947071843 999716370 196268102 295696149 558905749 839107658 317840285 681040123 567656233 624915075 968408288 980489174 99767936 514874483 125286248 182630164 303200738 881180732 15147044 811003280 902538817 905833610 998020815 998517519 178641982 279392493 441789882 998501404 67100780 378284099 469873630 677869193 201580848 966201076 351082589 407826326 303514267 434958866 538328778 844207402 825578503 999893062 625520786 738983811 22292066 774405446 883162552 916915362 372329611 505047529 126584755 634363909 784444569 972237199 50272654 691926159 807355667 810777808 130682058 821274990 799077002 981384237 53724493 724087899 711309478 784011054 176735527 301531973 360737514 973717488 190428419 696304302 518619217 548558258 28872564 261789139 712630475 741075571 15390124 197799260 21778905 588694458 889432246 909979738 200656312 604861371 499421351 691407580 930097869 934929450 80279305 591611666 773947559 962475007 996905385 999211965 286461426 784445604 419353795 674815170 784626874 912193584 991289120 998174892 570974938 945741984 427567916 706083733 509357106 738151640 754212097 998650275 343533915 557205066 829659808 931707148 868710378 960008910 919311863 923347930 181679716 953109038 235334300 966815761 601869703 746138261 46552799 53495170 845946344 976732705 95627775 720911558 976448518 996526635 424791619 612082194 768388254 876822520 970694314 973586316 488922358 927982281 363250017 446055293 728116428 846129523 677033103 770395099 652536092 854550116 901485773 951933530 939134484 968502785 449878932 705914709 813631776 968816001 708776272 709571341 390099892 736422332 268041482 474705875 539302587 829655263 606113912 979071677 805399936 920905972 865629022 937559959 733998337 755508118 704267678 756428807 780531396 979552845 798379437 935549111 219973088 698789227 513275090 923908426 228897618 677098608 917969791 986233287 240955130 607829750 625171083 629376213 512362857 708902985 629630649 749864679 913240147 980609155 868431109 939681947 797443839 921515535 277078624 786593510 928847107 994282749 922611133 925441339 340539033 757870580 236657028 399280799 183283527 779106048 203400741 835956474 350835384 502140482 838264909 913894697 262370673 759526568 339999871 443951351 790162346 893745549 110052073 801477909 57104411 915135295 934116404 999231819 244846811 477984542 224134542 952737218 356680819 540624054 896255929 925388510 252431892 756801610 528859580 733044181 498800458 703197173 884505392 966335429 871167950 959352879 385545548 969323557 682748564 688400419 825870153 899227408 641431880 980953079 159905054 870482554 134538848 634242232 789372866 883998541 164644228 755544825 497170274 727516130 794729948 983911815 246373245 919581999 168115320 638303509 475284098 779112019 887363289 892058460 687150335 709387670 131122262 594173948 372361061 938109403 376285248 945946795 494987510 872953350 3468637 566114274 144908823 986800415 120775997 666828781 186967056 229827502 995499891 996552945 898295218 972568114 794702621 876976846 795914798 925450697 329646128 615149358 83923188 911877383 604078388 956035791 34032682 373534604 23735212 205566865 763911532 970860115 45412567 210545068 706923801 925831322 994074239 994987083 954633579 983358391 987872994 992879297 599902384 985553686 726211830 811595414 997664863 997713459 969084044 996766068 819735477 983601237 860372314 908214435 484572218 989932069 193650422 419543525 834441782 837337679 223886915 658060272 795479037 852898101 290826038 988589345 843223649 905732514 391792468 559780927 965202298 980150395 263961784 515461365 444152480 556390989 104134606 246261326 591424155 657949559 48437590 527079179 402314344 826580719 482917561 978798780 381905669 450840478 228629715 912564922 735277094 849831947 955850025 991416923 148806551 382207648 590923149 633598933 719659551 908896278 978095503 982670275 465519228 497497791 182161551 519804780 772382690 907928217 897602561 949415100 33156884 312642974 569661962 838533532 391784005 580481617 755057627 973635926 467334425 710642192 787835973 914755980 136016718 392018404 780082278 826519704 672359774 926114221 846793771 886514494 413497699 961610106 320602606 766683484 649905031 868897661 460233586 750821420 634770787 893009494 327803793 651165131 866497020 910045757 814935856 923102316 343311748 888255076 316310685 606717901 315371819 831231072 851168052 919009256 352603664 696995490 541326544 866928085 56856080 542225204 977135451 988156826 864236353 953819859 291560454 297538447 646828304 944638408 69687998 564221868 921578938 933578253 497903566 949710863 520384880 580251834 795245412 926816267 539479563 690515356 139983410 895566230 776445059 955044686 857633935 882390865 629553853 641980142 776552275 815461978 620336692 754480479 236883701 682626676 463122925 809058237 831515776 958944665 418029599 526628313 446391429 624058110 769099186 989587284 608297426 908122596 625239286 809526972 349002336 809534070 591500398 641711375 501310587 853301327 863221505 866507515 11086704 391688530 374902842 928559495 401640913 562951053 13827506 219652333 720769124 847268243 252533022 532058221 935456891 942772649 120470210 352177722 535533593 895954368 450628143 641003951 874266045 947959273 276396114 843510170 541809299 697569427 184518644 664237850 955971903 985246762 725792490 868792886 528458241 702207667 213407409 297949758 425353530 650740134 435553488 441397627 866466027 897904236 182373342 332416475 662294503 918366234 378200275 544168471 619286678 854410736 875537715 985980887 381177036 937029557 634931995 763063713 465760498 566106357 961389383 968351033 973613099 985294306 786150266 873191703 762599515 916595155 136454544 216870363 589953788 595352226 74489819 464423434 434726672 543437243 717852465 799060807 708994855 892114333 930280923 958420396 945506959 959317672 665232439 912486915 338158874 648249081 719412542 831708133 567711067 586207426 874683082 905588210 562484638 636362651 529620288 810346165 771098008 972593453 992418094 997684777 626061466 871018150 582232236 656330688 136513768 672741564 653492598 746554580 188305530 794081854 880770451 956380531 124854612 223340387 534292572 557343580 508381984 551378402 707275762 893982807 336797998 461406822 308661980 719985548 718149208 732315927 922336903 963784238 808727981 927250681 797956352 990157703 914119396 936407577 177378430 292528954 23614139 249295775 271081872 860911959 512972987 666413746 831606723 927003557 141929013 854961361 939717281 945185333 735466210 742196529 414545470 746861239 421573954 980515104 579620314 932566081 447986585 770671835 902429821 976935338 331508026 702549304 922997412 999914762 465197813 792906077 736019402 934730340 892977107 961207863 854194960 912427282 326362559 921351789 156435894 529825870 941930039 978324374 398606847 535617492 660442827 935750860 500462467 542896568 22868116 821556017 217400030 630713260 93147967 376448697 91458975 521351236 331289206 611368453 26321450 509457268 468838150 674361871 133402808 881555092 2333583 844855290 62936290 692702237 725100098 938555705 672300556 711231577 509746507 973178381 84843386 894625429 661499931 852567109 52649637 226950810 50436326 450221459 742665522 754338677 184030215 441898047 522292964 615707608 800712080 870612552 911512575 970440458 288670276 603674552 804052199 839740927 383300483 754585512 925055955 952298506 276663100 777396229 670183458 913124435 212127633 389242781 749637514 829181655 901185689 911742754 865352366 923485241 753111844 885823657 514023150 921262649 364288877 405497771 593196805 851793695 982924737 999359610 117419760 797072897 775630285 901031986 753392221 894730785 481778440 615343504 900947823 952082786 74339641 922052191 813314625 963298731 649578064 860299721 264040281 430860504 390132400 727937130 403148474 519788997 663612528 669608774 226745329 818198280 926235494 997030467 619529937 642478643 829284472 835694707 522181627 789197501 564049757 740051928 48369727 831665064 274423902 440584386 119724877 431719920 939218658 991385511 220628724 402198635 590319862 929772829 391667998 579675118 176006589 987928421 218190811 843377454 109766895 666996557 335266543 629919526 9762170 353865610 796285739 808476304 93880626 463016547 888769517 980514934 818073743 933524326 708899120 935206610 482361349 777493301 365280342 834230256 114188053 382940286 446798401 598442676 846436992 987902158 766898094 907062803 343824394 744986862 544309790 928328736 464353457 614452871 614176641 616575701 486469579 890543220 62620356 873463343 149280475 727223129 397722961 536805668 523837673 681198998 998545275 999730187 71853304 475804439 354186083 412611662 374584367 907697307 715551588 865377141 318391217 953729327 737668460 752578240 334704057 371930126 37361672 882288188 316179408 734494782 580107309 879729741 113082974 987332315 563263560 869593745 197231224 959266360 974589174 994008163 582565662 725396311 912598306 998224782 278189531 699609130 312100970 711955727 804839882 916769401 728342857 792202717 384638220 486254531 748771160 938924128 562003605 649659385 430786341 501576309 38232011 559528789 689188330 832037996 852908007 854273934 623993940 643731522 315307248 615503457 922984624 931044315 16968810 224060796 568268555 583308766 636919900 882176732 630813789 849139191 664718812 867965646 396688164 864768997 341676806 536878958 870256682 971736261 106463305 130362349 505750601 565076252 426468035 689660824 37712950 478339291 119122571 214255642 383833291 977392794 216843192 847503130 893899005 984490124 434533631 512324384 852140368 975483196 36600248 738185823 13551260 772249293 865312215 993360520 455436443 829709880 513258484 855289554 639409505 831852598 176347231 983731922 749084940 999483497 161951498 969251220 31059886 179586553 176872827 222402378 175184665 834362786 504953446 767402772 852575858 857397927 643635097 823278517 334305409 492954062 644969622 913795307 935627810 938417393 817774188 831939203 24034725 487010782 47361887 340499106 706784169 811883199 537487051 960347212 916111603 930995398 41009929 630101129 260065259 533936567 499394277 989778294 19536901 489732512 969365693 975614070 878860196 906022691 383167843 504606196 547611787 835634754 991752357 998563407 3414468 164997627 804013414 985027384 49632427 489603263 702984246 776618989 12102172 364759257 555962946 724319798 89526770 999196339 516388800 894668123 551232491 669890512 406981238 946870856 499014194 820824245 97300269 878793806 481300205 657587184 874412011 887673194 383391294 872909201 939913213 981301656 908537870 964449042 139120505 337279220 585291795 779126533 19115745 985885846 978477116 999277776 564218823 883089172 267589552 624701729 253396686 703036700 590531138 913378247 800820454 817833875 595636588 705125158 723325221 827742932 213056789 828324564 995203003 999617328 170961700 387962962 241275617 301617717 63126220 847844992 551409941 777957350 886992702 956707556 645919206 764252369 585875499 961966276 997963990 998082121 738401533 743996197 175915696 792231329 713490025 765887703 120972915 506230974 568022880 663046916 829038994 941549470 740165547 994345417 395158648 706939593 212993224 539241606 780304315 819832106 912020593 968738022 629289284 801753208 607333879 951026011 845567300 894709323 62937303 932691020 132477035 703163731 826390246 923646588 585191316 716916466 166456713 916893236 16489183 487705282 868030751 912683487 265121350 496976730 82177165 265656765 382022206 731542661 570157863 861768007 302454788 730098666 74248482 114135723 759115426 914330310 110247221 374667978 17295757 583695237 448992099 951014844 43989940 264641407 638459211 685223456 469798206 871661329 536530902 784397876 739030690 894069602 704337704 847520411 646808719 749652600 109087858 288431906 905533594 958158306 340504084 536612982 132243559 495572430 7553371 334434532 830934919 996513366 831170461 870531065 223035694 247879978 137822673 739307472 445509375 518153914 312341930 874063821 824594615 923509495 133101353 959238689 254041398 399037198 877632163 938007085 538349870 798962262 519222775 994930530 486821010 971534637 298426436 712530425 627898267 632071265 643769978 739281434 165776550 974092776 397773702 673271373 349898935 913098336 6285857 17894301 926166312 989415065 467000353 486426337 330850338 432258279 343004432 923031148 604311843 844948416 96501034 770543955 445643561 506715947 52852807 894496616 989434139 992884323 330166984 718264230 925293595 931686593 862947921 866366070 817611930 883721412 200286477 934599386 676449973 852408699 692836070 918736761 492728602 692445533 763128495 790412950 80525154 354260649 225749040 785740298 423911905 590972263 116891245 449775077 498349595 866797786 290315428 713960387 892336193 902416789 407880130 812969843 651214443 875659588 226656721 932335167 416709571 520269107 732847079 970556672 873630104 923548736 757059513 780632446 501902432 596817397 671220381 706317891 73912069 909842619 412324005 623704115 825653430 828780611 838210459 960619346 258892659 702470261 632292350 934999288 913713152 936184729 163167151 463709561 497723309 935304509 678101020 842964776 843420527 947293244 319917564 543867866 729948847 888600160 917538377 927439690 69967124 285005701 611911156 993714697 381419306 606628138 892144920 937844823 899311679 937812523 384458555 841867944 938870452 987652707 665703748 723246215 409679551 523350988 116395914 377774913 187161154 509405369 48600989 997006391 424249436 660359968 884728587 916302262 590952350 921897466 942625372 997249494 454401337 889418437 329428132 631435910 559651969 783834843 931132334 968069463 785233947 895913776 494222561 945459266 239824769 583931026 712852744 767784298 829496676 869894669 372237363 951983501 595363416 880047656 24777143 591082017 450964614 805103530 176907683 306402321 953193945 965537774 443770082 833144753 952078976 972958084 923712176 989195003 96422639 503526564 168929920 766551537 845630815 966085564 692488411 730203807 229478086 462048808 469744158 660693093 759570155 767665254 73921265 226448757 351524342 933013392 930415549 967592614 243781164 597270638 92967921 942661711 568246290 789537303 518444900 819097582 139983900 320712730 381593483 560220297 591550580 786573398 385557446 387296361 326422119 917767603 590585948 872194139 749088521 960264768 995914457 996674850 35723183 260270360 671982653 680022709 595519479 955593822 96562767 878771954 148043006 188416527 280301326 297113956 343689212 836395295 160383498 745843850 532082195 985398623 172918340 295335062 481491127 996785770 931019509 943681542 514331709 635449198 89237247 633060190 601805879 806450448 983754685 993136938 556087361 829801234 668189891 903604533 200171938 809548915 652272860 954393192 220626345 480752681 309105022 814299696 961616210 965548263 549962451 827891007 998722453 998927387 980516445 998019338 774531497 840490403 123786559 368522329 71531587 870270438 773548694 780468596 159839397 972189200 6073122 70608809 582898155 639991037 223110332 489387624 918719706 996571642 939311344 946409258 90220195 507455265 696016116 970574746 818108857 910828427 291288512 774574231 362785828 534146300 32134331 675805690 844860785 939165903 737232234 943491434 986549779 987515313 355867484 898075846 29213027 137717527 188979822 562694326 568995126 684993181 924752847 938298033 409858268 995550490 275282288 799893892 175774753 481264449 764973652 803668935 700554185 778829050 954229103 999843400 416932339 837877717 2781759 545422455 600710145 900515145 583500846 969621503 985467913 985688376 736957117 805878910 981201185 987455170 421380246 583302268 679985698 774875043 144377627 750099910 325588288 575105690 882316482 992289197 848300034 861772097 340808319 715260752 717521561 889961113 473898674 761363405 653203782 790145594 173009611 862742553 458881801 720011292 482842310 536987505 996178065 999305030 554398588 812018744 959137642 968818021 788369206 967905898 617998448 815475376 143007752 877950030 626086291 706724153 513961808 527341819 520221232 940821478 313898003 997864785 334353059 392584562 892071325 907325775 644737312 878455457 213086986 975146492 235335207 893771077 32994596 814554639 849878223 854577163 592379395 977862365 950148629 988033424 937889573 975459024 254754120 990149616 890893986 904737308 530011364 577752188 716014091 751882437 880367420 901173051 127465935 382911656 499797001 560410552 852490970 967446839 840553611 911765053 248026812 615236811 55266186 708233616 920684156 950534255 592554690 734203210 242867302 365782802 303678862 352965954 402998916 889393300 482438061 738219818 115127031 342056210 308205109 354589579 837804052 910097454 16661310 739205774 863171432 921641951 955956222 959408510 374487894 952515988 51450829 580027689 486135015 539836939 612875206 911825204 159627412 782730096 527858047 623146385 639979185 871650133 851498764 928818813 688119505 830559677 456694811 857477583 381558759 422201194 484986082 774726076 320738759 785495951 954973980 977424983 742310345 767667177 793258060 885618235 312841951 827533628 547349612 658685346 825642613 890434765 163328177 415551244 408017729 919439283 707799484 913684019 653782946 723362739 143089691 503776706 669583376 737111609 646346149 704096614 170584482 715068878 918203508 978328788 352617501 702914249 103446004 438995864 290830495 447736075 215287036 819442141 965775376 966828655 478545196 547468282 950988293 959395661 790366542 841934262 834299785 840880736 798729607 834366144 722623171 848887176 757188134 798567862 890728792 960868205 31941429 364336068 857917134 872298062 184133157 205954920 289010134 675651123 23789303 560902300 640537975 963480838 251902884 401951276 178980614 580548743 511349948 766471507 101023345 948812462 268159508 514141560 538232301 902836298 481318420 488029112 797794801 825684337 420130307 649605570 924091603 945823513 542097101 869669272 970332415 973383552 630069677 945328958 721465707 828817652 366011972 588448835 242335040 478443131 806734276 893817051 768028322 826240651 19546199 74227028 399824016 772359283 36087434 599967760 501680045 512365521 95388481 213615889 149244365 665571028 678709451 924979314 896947723 920572076 386606893 542008913 192892515 219480869 270546678 612352026 710671240 823125575 719540003 782331704 54130935 490349123 870927779 934659778 198160264 207475509 334196424 802152150 230764224 630573957 889579795 979073922 78607062 730673828 623847618 791093713 930332662 978602763 537831859 979651167 206301421 626269484 199366789 864856604 365391383 684171865 312270645 328116143 216800401 605470649 812953974 969712583 253963200 415114515 653262785 879047093 145961085 635596291 706852763 888390551 509610132 826645991 647719156 911351618 796278665 998186754 383004656 490424844 403832342 473259703 376924672 379159748 785430900 894025924 816605333 900604643 266573716 489578138 986314337 986842576 382185383 563991656 544083931 725122356 531268683 977414423 259257142 321662307 437896507 831134074 763439236 787863709 666359516 974425428 409272879 944858736 377254495 669202403 315528580 504846613 829911741 873590717 45645810 360074413 391492856 458233589 449876776 611192827 849793900 964589408 567940505 703501371 779400003 864472990 759995314 780736835 254099892 566405804 267325793 529430549 907430982 974570956 131297797 347898889 606272805 868020227 952866309 987361591 272303070 386765315 603726647 734313981 812338862 890736002 456211225 659131757 343722681 677201690 638616415 943912665 732457691 971265536 529940032 549621967 535458062 685195888 171074643 221358236 373406943 750900536 747196964 803668892 325770221 709784291 519217004 860899380 847925600 906300375 705053832 869018482 289658805 410034073 629480574 896807793 796126012 950626288 86811051 883184549 808174836 974846959 711066769 794808181 74403338 877035125 999517841 999551724 150618983 864355961 471890534 951111824 380889846 519771309 38855889 433397640 688847188 913116508 771837979 916386269 230641395 817515337 58554856 576391787 234841916 460123629 422002472 724006403 725908023 963155391 50443 68080836 930804547 997276222 951980781 979191733 708776820 804508304 222835398 670033338 657004591 755736369 432342331 579491864 738192462 978075056 963783409 980629207 801695799 882843976 609717320 643931572 593202562 684459025 256659889 696502136 963104721 979679708 795409927 890935588 840803771 977955541 880942484 976644772 383278984 416181205 98811447 882756607 146530056 613118155 46151662 82953537 956474027 966802493 628576460 824290476 37516853 656292687 203256300 401550716 579388845 618194837 912839753 956606764 994239822 996830650 155147611 258693580 375111946 703366923 257954240 281422591 277355896 502304214 604491455 953260187 150892594 550377629 755131001 865310556 303085429 863780456 477095271 704658385 292541734 873578809 485302975 607735137 645249205 954359052 208988162 231587454 323664348 816135892 314111596 921328381 811735094 876431270 679542433 842162502 714673492 832147612 511765366 898069708 86459165 335843081 390617250 970553826 637133621 817952490 123804190 628560658 225471963 793008785 946009883 982657102 644906204 663460613 731453546 806764027 583478316 780220481 339581937 871808283 246416934 560234930 188059907 298286214 223150792 571655178 632554722 967531838 655523054 808820822 275964198 474069142 752067730 843586954 544041826 805013447 5453390 29005767 158594133 620621546 97945793 317127291 108368349 579079500 220177339 379404802 221775837 772777116 909171340 982003565 78150505 500734802 679865892 715937093 711025009 898575866 215940511 776403652 870514130 965287926 522159976 732723944 730670604 825800632 747614502 821536292 498262734 544297437 418648800 679704531 570797880 594553085 769019962 911338918 516740752 795177734 347071239 851911373 137251237 867019804 124071467 939876515 599635976 918558404 353304512 501900158 374411925 529090880 513691325 703215146 833770361 997999443 133077832 732435883 257994442 839817458 395399865 515696498 243125491 661880927 64245548 323287775 459990780 795546081 94474139 276674100 820862289 977558494 374054230 877569749 895040126 984648932 626241514 754052197 69727662 260103083 824269282 940661730 182456811 428316738 689692132 965962713 747048005 988118368 844815446 902683535 107602246 519127231 802601456 821387323 602762197 806223131 564370454 963366987 426207669 476309783 412446013 734785286 804921635 876940450 751295255 816267798 66261192 796666179 585158284 711577314 547046421 801571947 653890777 657084869 731925380 780083331 592103218 625080149 224176458 718072792 481953830 716713882 435707579 720625780 229071019 445376931 918086958 937357685 501581663 551178936 203405851 372965934 380405327 670173122 767838376 799000935 781767139 893677290 452800862 458516853 298018315 524702240 832156818 923087460 994947319 995160290 22485627 804192356 780827833 953471363 850216853 893323579 245252920 701247402 660373853 885463443 594821606 712910018 806501052 886206117 118057050 991514095 17258876 166158438 106403654 597162726 567039226 886738962 461204973 527786940 256262249 946865244 592474652 770872135 448727976 922192876 220361109 293884762 161474062 225256811 173382291 940041976 983632069 994015428 439725432 546626243 709391148 983152794 667810341 681665593 135231391 523003806 458788910 691662483 667612759 671100898 63231072 861816589 59864586 727288365 306412359 666865435 557582409 567991617 817194835 891165061 650659328 856330310 280018900 753434084 344620849 765536452 764270370 924229937 561986106 641249436 267337024 493786570 595565909 966799318 350611227 506753361 663431172 698267631 222760222 426956470 41981381 892023659 615415828 720071513 427545632 828864033 518798728 862066706 745157550 851337714 269127691 570721821 807557876 991558166 402782202 853665396 942003541 957943333 438193617 986193132 188518943 346685675 374513210 604256570 47644664 814321877 495549580 732704426 696179590 723370908 519680910 983008841 738537584 988502283 414354141 431154550 886068852 963231292 624573320 978410896 175505665 990549847 511768163 543557563 190204752 498042499 343625160 413699292 159239002 555882843 471082126 490013429 217024781 675920600 184251243 873255547 336323281 921434309 383405078 989075813 666018974 967430101 291582897 334314810 125807051 425567498 791777024 964937804 506332876 931790817 817054007 822764207 661006254 680565911 915481848 991279820 681669264 698281007 148063599 301931260 735251088 747539537 612655801 869070896 245596403 414904823 100106786 561870725 355299582 390693793 163518513 596719051 275035328 542681325 124357909 393377827 125152475 961724203 130268063 764094331 953261262 954201574 894196333 955676926 329260835 881944313 983535394 993515928 173294518 234427160 635822960 952533225 689230173 730517828 556373645 890634839 806406675 913975440 395726330 981427149 886968557 936611500 216421160 444913205 223975301 627461243 502066182 852536404 365351984 792746312 804378110 931605070 523730633 769460673 615930531 992646457 874061488 875581533 794488699 924921405 212119149 680566247 63285992 473930530 81593249 489993886 177731962 930464108 529837180 854304733 464331833 966499125 873239294 967368893 455773414 701396945 472639132 479235333 794528939 996970556 883577745 972537628 497509442 701269581 665640366 939753241 296328009 432398659 578393270 657301545 737053847 999463132 884196118 924841209 728337604 867802034 959362268 986147014 599477803 783396548 519275838 564861442 28554850 78820782 94447644 351374227 753134584 793616214 657055198 935209530 4174665 210686738 526831892 632875160 339445281 546914896 857854927 927386964 404936684 854151543 57003234 469669798 185661789 665175043 929112288 975246587 537675227 935693755 561566749 587842773 23324881 522488239 941162386 989766147 643926839 676390958 172733243 289946443 478679824 702248958 317435361 498909654 251255145 396587618 410034246 432379067 70414618 144302515 888325775 909297630 754203285 950196328 213844173 968935240 396203044 409857112 796050356 873018331 601023422 678602938 781554629 856569547 593313512 794963186 537092101 766481554 29905057 759880736 226683467 831126654 724766859 781895797 166082813 818501015 269886503 880293949 494648836 877075172 219393271 709232779 870312371 940604604 633417503 944313632 238142022 389398245 723753147 808597642 859968118 947517683 587254568 907158128 67421305 476639478 26724759 428681226 795531052 996405952 30907385 437059567 899814410 907011193 875087917 895221747 536567202 785057077 498993210 569738753 420052876 913457131 618106102 650456594 688580827 927863712 113832003 625698701 328071247 827771679 875555802 890694537 525710310 997457008 638617886 675530402 451779075 896346580 385074291 887665541 380170084 980535972 784629356 939651751 442100328 532057216 677810645 892430779 735345921 985134843 105966122 705875815 561139778 596540133 88763251 387471134 725315215 814662839 929763454 972127392 295765621 825029183 218054424 332452751 385977732 995311856 903684095 904022360 862462508 899743096 82674892 781815420 407277703 785547267 447426760 703891070 173473380 200918453 471208161 561646184 630084861 701149808 611973570 711525309 306464125 794835839 90438246 767665973 896425930 966098314 56536192 501651488 44825641 327448671 349980475 604140745 117311911 915625242 243862074 698389568 79206644 255888247 110189130 281088492 459597219 613009619 490478945 594042449 98924875 444230350 978888487 997567500 440324602 499197313 774175518 962118981 913024984 961376925 869371833 936213102 645972651 867325021 971608324 993452266 273898441 307260413 438082513 874300071 360848135 426632963 770462659 798992710 96593368 530178006 174530131 825844676 157183469 750545527 98255163 487168840 337882537 789324722 565704610 866434863 576328134 736060932 669949689 812174725 899368069 923484264 74377980 532839145 253778221 315808456 696849984 962078720 969033907 986136371 331030258 458296578 930695481 953292000 19316385 703439488 276704417 796940204 481450875 857456870 998495113 999819769 623601174 827581995 218539586 548891684 666539464 853763088 412373415 469646138 968114140 984368775 651113002 763041885 874774986 940336982 326204836 890297423 513749629 919763832 709277013 773830797 530171456 860667675 662399820 736312059 358744903 993702052 723289806 992175728 269335203 857372730 744993744 971644706 474612812 826949383 739582472 791890900 974171060 983645016 560066347 722049618 829794821 915818363 91196554 237917376 533089184 729674506 818398375 891097301 264166904 540170418 506906559 531433654 418596698 725919592 156003699 413771454 78747344 975363862 718212551 923097898 685041240 973897962 960252265 975054600 595773506 963097152 808847809 849109761 621652620 927537319 101861264 764899922 898256098 918689445 317767318 364294579 874606807 963268670 54044392 853335421 268661335 561357614 43034562 457776661 678958062 842076427 631901707 661358469 26948812 795190539 698587023 828668462 863312266 983567119 800475507 990796596 197910218 877523931 412613939 871600876 156639043 964341657 28072788 442126392 418645093 956814570 222931784 794875082 174108232 651051621 928165784 951220138 633955786 742278260 429814479 609818133 241837787 667910609 932981135 956312269 870588907 971837459 328204771 844317190 92882741 567476156 602245387 695813315 866870708 994461515 697299733 770024777 384358541 631524534 760590163 893814169 10374839 265505937 768029257 926157945 23708232 87522447 683878616 978766351 750045909 873909879 336521875 836671752 747159600 825296523 989847024 992350867 107144698 967851573 808714061 990050180 852573575 907179986 692965057 819247318 495342732 946398121 339280445 655161923 412826310 972917036 836652228 931083354 651400413 861476161 594367594 723071808 21247826 184064018 608139165 746048522 881692948 981499863 745507132 813710724 945817708 998781666 412190150 945401552 249407954 794269796 73818902 720903096 899265798 946370770 636938719 911092449 45416756 346405779 249618883 446633885 897535318 939079221 65354635 655749549 618345597 822085941 309409725 895734175 124233188 605065284 143980617 680178244 602274024 616836055 308614522 785127539 632371403 663769983 214194534 853397004 480752532 585251099 236009546 477060205 662416475 743688765 480481202 514672312 688002835 748943186 880775244 891683708 601453847 946050784 739648830 955483855 866453474 958324625 208559793 558993167 812832248 982156120 110349033 665873589 762694721 887035835 970260759 975343378 278338246 555444887 740721056 924272117 305734778 818972194 22919760 455278899 280739390 984261220 14880733 465301356 333709298 810491215 256732601 962572095 393852577 712972035 669172719 676893540 181632742 768653546 515283743 777721815 471358220 875904465 364038017 885672690 523927661 562535062 289570606 298467589 791686544 943934121 961336830 976479222 648609373 886066912 486638874 555771268 563717997 949174008 829530166 908234368 240099056 241973769 257360644 303479438 673494866 991022558 564758726 778164297 882478866 923826836 746433728 761197198 876038976 995142506 328542377 992812478 938797607 942600474 116952028 352348896 676300503 762313322 337544375 512500783 891685754 916652152 65956340 505461855 876963362 964641499 231954653 333592958 362048634 912792687 180140359 261044101 454652236 519715417 374980732 787288126 485800941 703936416 93591047 602328819 1437877 848415760 72279831 867330035 89833428 783361318 494322078 943427512 972813459 988006395 988277006 988443874 430577538 670165959 391250603 709087741 130688980 479387231 75833296 550386823 299346527 887785413 703787018 784470630 913788762 915907965 842666589 856610927 36518976 578146478 690397433 801508874 888768498 991576673 175005758 485817265 278861271 579104022 526108789 656104264 233897479 681797911 797912981 979612544 570633966 713604546 258968538 295794793 134927563 440891331 816270303 990517914 5039281 716673155 597554159 849648774 99362270 446629015 345502713 454989365 841686374 987665168 743818733 906123277 613306759 950610078 578529426 866359373 604197708 739145532 56774788 933733077 924729749 934300292 391283923 891741299 285321450 783362208 296353588 860842125 780950802 993878456 799900017 954638115 675322321 741261659 906097449 935162850 516334351 650922257 55738489 303099935 867478886 919545003 72083631 943555289 63817132 815174268 648935466 951422497 201902202 229229243 536247115 650119920 480191409 605118602 526800269 805338783 212958117 288273705 777380452 779549006 155600363 319976017 867560820 993111814 213952345 707096472 431593187 901404559 745515242 878417618 729848227 752100158 240016235 513828844 935018050 937802172 908740103 943103245 366188258 971039450 615788774 705414397 101204646 205299548 168590682 513249068 708051077 981244756 357490610 480796093 842086679 932530281 92329163 218044836 675931282 784579604 22285970 571736898 423840276 618386683 502874024 929036856 864171409 892196743 558897659 943747296 652417794 784883463 277116734 572957647 229203372 582209964 158162510 553182982 696996762 787637403 15563202 512123518 673632713 940612447 868694694 962510235 704724077 867300690 297947349 696926355 988338081 992636767 930346785 933036704 139656598 459347515 146913085 663478851 178644680 772469773 83990980 327556904 135687667 924867278 904166844 914200767 985407366 999329475 966875619 996506587 338561948 702142775 65300464 625977465 145178406 173404345 393475717 809880673 996976900 998729660 832353624 951006883 141448042 863669707 76491141 79715546 33296013 335790445 545881984 945059195 181241152 740392453 990260020 998216465 753377516 954304547 656386612 786952677 466919120 844135020 340649833 486322981 99041622 956459399 627607966 636903359 43200301 248034726 89427679 714056962 580791051 832361054 548492499 829484658 906955002 924595186 884865862 996596455 930457617 934394544 754857062 809401649 750748075 772521269 927381438 994371692 275092723 682568867 78919568 688226184 971270240 985707272 318424898 658452293 447272024 937589763 812534915 943361383 409215923 466222037 165094817 681492563 501007384 961053109 950670476 978284620 512032667 667594130 117006974 474314793 839001797 874351867 783209262 944444615 829272713 868703758 399338048 404480497 86187769 507366035 417779331 727396938 924275037 956085507 349117116 484127390 680276048 780044454 146799899 328116619 663760024 918582376 286970672 340391755 229368145 513751211 360467000 901775432 191349898 841374791 803122102 961367190 344016942 448426428 186073912 994793194 62246508 603239418 68505244 911267413 263697537 637824516 454416731 938719792 694318371 700375693 315771302 729642824 196336680 297451229 948070139 972284892 354578306 368929687 851489373 855237470 250344788 312708448 304976693 375470724 968359013 973025689 178863883 710836669 966470188 984162456 406092319 630497701 274655067 861238213 824813626 835740999 862448593 922198448 715350962 751743127 541331668 605119232 858376183 917577698 353199032 948567192 400966735 840273054 867841505 947567542 414975037 860154550 268690691 456582872 6042746 574041866 383935135 716087907 568430891 582477858 222072045 957809473 195579583 455186738 786912929 930711152 456668169 971079343 679661941 711151551 551372406 946794889 497404855 702451595 667174910 824461918 653707510 834163896 552165341 669987525 60703907 646830920 905202775 964809065 9176288 584563717 314245752 654746972 182234458 597266746 433137355 527137860 138328312 386952276 76617229 361877725 335557762 683301779 941072702 976591674 690184840 728925561 557298896 768042713 844843967 869528878 196484739 551728118 986111186 988002916 642197935 691214067 259003757 948055759 904637172 964879041 783636277 847138524 378231434 517547812 954560227 966635606 929907398 986724209 431655020 953888055 395708685 727755727 392658355 620265440 425924981 725739257 547314967 821661513 332107342 798820644 620067580 681093459 781808440 886903576 638981812 906568677 90718752 824793077 521337406 786046531 909780988 938689671 411695405 846151573 767818366 773105616 883817871 895435793 903868644 921283258 403288419 525291792 971402124 986590412 6488514 16705467 222155459 881384574 235055784 718775252 788565381 900204127 31682118 245708688 470493027 895277783 63992061 685148091 414693843 527395924 652334207 653087292 776134230 927239593 792352083 921245983 627540301 817705822 997794204 999055181 192432063 591865231 998158547 999604418 609700062 976249014 888231949 955610523 572158090 689356248 408016687 676806285 615964656 780103811 306204759 355757878 678616252 990857415 843599310 866262124 526997592 579256455 209904573 579566282 576265718 767886676 899224085 976833941 301961963 818448475 207742081 740034409 707186430 915330064 324047159 842512552 598545643 980596566 128718313 410325574 446789218 549061019 245466075 984177155 776803619 828279501 539543302 619605457 322327645 930545037 338984902 453711569 202139929 831531762 71607058 774738652 763725152 908485195 275292515 276482154 782603750 820919973 363055264 591640364 310954706 963649316 395119924 820606179 138865281 871920036 648444999 939211793 427323847 918255068 309601790 927624863 189728372 845368472 111077029 786462955 356930437 920383346 84152992 278719776 774185754 822312646 163494734 439694980 185919490 497170467 670938818 811843833 995527291 996857013 766757438 811026219 508457246 598474508 275762801 548611232 124349130 286498601 799005303 953379603 784881995 940294516 414578201 718579044 800210811 882467746 763390262 853496103 443467961 961271464 688946595 978986525 579748051 812878766 892790293 939548651 103995218 910582082 575867666 769268210 474070565 624564070 254923314 948361217 834996362 837793802 326878931 442844802 277894679 812783275 15496424 503836843 915744901 955413492 446936530 857622378 137463599 486647871 822482013 859674537 312850819 929395056 708562842 801116398 131008187 333765733 767484491 992644188 6754673 410160007 412268147 796071927 819356674 998055935 859907942 895883936 686970258 824480218 706044564 971641811 273116759 748633073 793632710 933619755 343869959 934019330 554033195 856406022 366861992 869658137 232300752 645884988 940882646 956798003 733844429 746143835 82000404 636132196 509658567 712277803 830201385 842061835 648582721 878554257 597116962 986844704 489880429 649845160 608927119 813675486 844589230 921994051 693114317 924521549 227914891 421523794 210747274 875666938 945657285 985606888 860764590 999760709 423896805 955356937 33252236 285554946 358172077 460280296 568757132 972420798 37459360 985018147 443530919 593680648 498962649 697306001 943728458 982167160 973700493 974130482 34388639 616429206 767733575 902546121 774620221 918643138 829255642 973906933 5267128 380747551 580732728 791603851 241635534 581894121 546148621 991017791 75768352 350508660 723635402 806939735 233325555 881675577 910576559 998425484 930901936 940153404 164152764 956562610 956940380 984753625 748458756 808524970 125853760 235995230 194527359 308248150 914678296 963276215 791575133 852598887 881158045 926329926 906906230 995423822 652367817 838485199 758923456 836456918 901398306 930895676 498975874 643336522 717696131 926182696 592938492 704305574 241408639 469948991 694874742 821468917 942595998 951405814 504084783 982919583 401873304 701100015 401745062 770168229 700542270 936021139 172898671 260913487 18556437 675742156 150738302 448245895 584408114 963942708 165668222 999952095 320196305 542974423 278308906 776259738 114757170 627109985 408278211 880960287 294473379 935403258 739086914 850417912 104758145 935477964 354244830 864735990 350109577 590838691 589322131 786455250 339605121 883663534 226042476 258446155 77287516 928156387 193178976 960290083 575014214 657692172 328819602 776267099 749860459 798174327 708837891 943153050 724033837 912286790 644108963 959576606 873187081 914524527 677085426 791850217 684551897 748337908 462124413 688448295 51883480 987153318 626193892 633110409 387390906 756147742 745308983 789309773 472297547 671217044 334246390 609180768 608502426 728739157 635132914 738102708 87798655 764719355 13690193 407680374 211797206 586122020 797812741 907483736 740033255 979970008 800785694 962394058 586767363 637395261 884136645 913555940 931969045 998726552 742279733 994227930 706537441 904755993 88422141 959645292 369442134 527312500 828830979 839720052 267248341 821281657 947937876 954071573 580481557 863414746 441100654 582602947 245826091 649678123 547906525 862783849 501351382 547080862 532024531 545519465 358243375 730451747 459737994 512933483 525054894 723949846 670571726 863874221 890115155 971812020 421941648 535381840 479921029 784043263 569812217 988260115 527952670 534209419 193498400 285220399 976441984 982193033 688700758 936036794 406379505 539855758 874001711 994328552 468690624 503975123 946607755 988437663 63090168 202070245 93308042 135725372 645976473 798740583 480049535 799185543 662283004 930473511 863066019 929960127 577443052 967894353 392270275 824494948 821906727 937704731 83745244 856728103 306515886 730155402 886828809 976587589 248900440 275652668 62617389 667591208 739156089 782428355 421089533 660452717 660568871 849799909 937472775 974010709 721395402 996460879 33734678 945228624 908080634 998803011 808290212 912559170 390982982 636212321 165031842 964791854 52433542 834803441 204102839 249287048 529972206 754588426 100871394 473734679 301928946 887029635 289526508 880765356 40087106 758115647 973741071 982724770 276828113 959930979 431834786 742469650 787455126 816112719 952425569 987017625 404855154 666635931 685138445 895280763 990953104 993992131 503898111 843831175 988455922 997023364 407549223 648401635 179658738 565697006 302620233 975013222 872527112 920903535 484778752 733754061 525086541 928051896 949687404 976130287 354933353 815417926 822923865 837699484 39969031 237186974 131288530 413926329 960659220 986502483 196434078 232294741 611081782 684065007 370419949 800511250 704143785 767598787 974276338 985728035 342680652 583867645 316342785 773835821 280588806 778391519 981258606 989832590 778777833 959055741 310318518 484274610 437253798 611106512 716297496 874188238 893599554 934333444 719857164 940864563 323319882 738072938 766068923 921338901 966312730 973074950 376978702 624971600 149231179 827144946 314192241 323176262 577998721 890737634 523098581 684453124 11121835 791105184 591920394 645569009 674560732 792633881 681305808 939968094 829692247 944255929 457899076 665877148 626505080 873227615 624233013 804605492 669626239 688598850 359793416 564414842 386513409 470435895 89849942 123354430 893240520 962742465 908694984 959995408 517152260 968731670 615038929 933374354 410285414 981513861 195058417 576309778 952137091 992749746 349092113 446357171 719700525 826387682 557830194 611908137 719373824 945981668 948953773 997163400 727512604 786994098 867852587 897664150 677341508 854864568 939326053 971491799 765342450 889953005 451938349 832257217 426190870 937184431 888711903 950282456 709023156 779280985 776698462 944067256 243982402 532924460 13648318 876692054 901025279 949248296 375682400 966174757 669291144 772601763 203336132 261912046 479907613 606076348 137928948 344181007 736584712 935289249 29160276 961513732 965510768 998002356 169153810 444362192 112208694 512762179 492463353 810169488 792082157 842320737 522225291 544255356 32518658 996568027 724597404 735407778 547730900 608510854 935812420 968817690 480084192 754424367 185015037 215140436 101833918 639931843 371438236 590477286 597245330 727840665 4045947 699556305 354143594 571910546 108382461 370317827 468182077 489646600 21420086 580319411 856777843 868383240 34739097 196127496 240998045 547986682 779404072 992331699 240836403 564517732 683758057 973668179 535365559 991074400 807175594 901413304 115018116 246267535 498239416 556747753 437039522 919024013 504278385 834547823 118812424 521614141 892269819 920181051 8803749 135845775 17141383 347104298 915478815 918684583 306531074 538343633 784530268 934809164 780911867 911532904 246602969 356045656 95861214 862328034 332020877 525986376 686121967 848573032 799923938 946398585 386169548 429715908 330081338 800454969 80686073 650884671 45518739 225726744 289004603 445662212 887463577 958127895 122353958 506508205 942516224 980264541 377072784 495304866 786826395 991664451 362057485 714732437 612575928 713310523 386969630 641380081 720205556 787063525 925237321 952980098 289508674 652014079 334331236 863781626 561184273 689656201 977840207 994442560 493333950 570230127 239371115 623864306 334438800 784634936 807495977 913931493 989112992 990829386 212825315 340558410 270145800 578015935 532906897 594873917 697761709 855403710 372642219 747880196 525526127 645731135 805187970 857239132 866812143 907440883 323383224 943219681 459793074 555187969 420537228 493437337 127295747 532275160 145274587 954400027 408028657 946021891 902146170 949834378 851815742 993537457 789961351 895363363 224935955 966130232 663083305 723137569 412706694 475310311 960459045 982562849 439812478 960792346 841703491 903120618 341314471 763663912 521351153 836070302 827672856 834261271 292380052 717379356 340243910 615646385 2188016 830071015 781060425 841530108 952979092 984004702 201648379 688264659 697845142 868605034 892125628 932767264 644507772 774953294 473255164 529430891 384047421 446213959 857715550 894830939 737773041 839389237 667780832 929133226 29234710 211081701 945884262 981194685 200625030 559420912 629168796 683446901 888865738 967348429 887535382 990499348 704637858 739866656 542736909 576205918 467520969 845893705 247205548 453240660 423666179 579636939 529092632 599630553 440238715 973554280 567954153 826513536 562944426 859977553 304246044 626721067 381242265 672531701 837067634 961903199 649294098 752414852 698894101 797347183 121514441 871139200 956736780 970582989 700437568 797550453 59774462 197315165 778100114 859736204 435776213 567476792 994785523 996377784 393344862 578389917 338233766 580197736 62915455 761239853 217666385 842219478 268076239 931479094 632095980 911337254 795028991 812728131 146921684 572582728 334006802 410162260 914286952 934803333 349727151 747528769 738704683 884971871 675768262 743843551 69917143 247424852 588614448 964655047 235829006 283080012 680695326 908889571 527701277 674633388 59076821 959238621 945447666 970168181 468282528 475699550 396843666 460085708 253292678 507843751 163003188 302735944 699490344 747389675 407943449 583426575 563397284 678781157 931396817 979447288 549565136 997891543 254588970 726519389 461835132 935631322 466955211 854398342 794798698 972739334 50480525 156153698 580246684 589310587 429820221 773210367 226081877 436084040 464754804 898586722 756130011 931384791 377872965 653280614 243445292 898354608 447820218 698560202 11190658 502985811 476990208 722042317 598178500 905941990 930786806 998129453 902780534 983172723 578464976 696919948 689773625 841190297 694369857 746508965 412706170 741035545 792102021 897568380 245268172 668096575 569565576 902863732 336676665 742563768 321960840 936922123 845803258 888999881 361531877 389850374 991819088 994923200 381731689 986245784 826460073 975145782 353274313 629328149 213555046 838393216 699074358 771135507 583493910 626593414 545720688 779280598 437072441 886987421 511050427 868835991 913814561 997116947 799371494 917155958 689686336 778951717 550014869 879696421 372664278 537275249 273831890 554213744 615780019 834209202 110354387 426579228 452003195 475684065 887633267 961300223 476370297 631118880 201682763 559953878 565131065 620245965 861324837 917497890 827240321 983282629 73525808 149138478 14745537 218002009 249692357 495103075 358479393 439780008 290838229 687673101 526311782 680246428 810768349 990782343 376581751 647824318 876513023 966911970 512500812 946947155 943751415 999287271 423242248 645824297 915079347 928860589 155326322 560393387 598300505 668398940 886199166 924579024 407664836 999102316 667261060 947259070 156550824 486251266 889994372 963442650 980835163 999172698 129897764 537723914 985203780 990003543 906940150 963386936 256086317 429542877 775102134 811791064 638826623 841305492 30222409 150603260 691663891 797204147 903467015 969750303 478084975 612219385 712818109 831979641 241970538 439182440 282154520 873296087 974939970 993128286 581453859 611733117 714455777 840246625 638021148 639776273 393314460 970452420 791938073 941118651 459376267 844621709 562551133 805089177 131623153 252208323 766019065 869986552 679573551 696304729 605680812 980730540 617851135 822396806 592598000 675434797 451882139 900434744 39156275 344886123 284006045 531801294 586507589 976867708 924988825 971695769 855178710 885649115 362330268 571732551 658635872 679075551 843340525 858144438 906251965 966612741 100761608 209281928 205165009 568132112 526317044 852448621 427245128 738078231 471968296 857864934 194504728 755728747 192940105 668688132 578210168 873809322 634349564 932465630 746272782 961660025 416783182 793258076 932337327 971790534 763421587 968158492 975520530 990593469 720301247 796875422 74836473 666397888 892497679 941697170 212286380 401210117 31670527 302993692 569892154 652665284 906338089 996605695 63307632 679914396 777526590 959672770 386339346 819920366 956914674 993118999 263369347 607813170 365288313 488633361 972436460 984804342 579384689 969631008 695648956 753913794 894205620 973383208 401312657 993295599 347973102 673100517 272229454 476967260 38476722 64779744 645674403 716029226 34504840 547659708 415608465 845316026 858249856 966689625 460703414 546234304 341505721 498606823 143403540 728874406 492696446 805472475 412217421 574982462 528382568 714915457 550550573 676348907 704857254 850865604 844414531 931390972 869023234 965244075 533683488 821186453 921856262 932717709 897010514 925251177 443062897 914766516 347730042 595120671 446136594 715155979 960736375 966036070 850463871 919666857 944225534 964927678 508012626 542129347 509694574 954034160 924358488 952316643 892784258 898669406 835928085 957166474 526749690 851943057 497302651 947255526 332078461 568193987 513094219 610944081 849427255 974464489 734959239 961953129 840367717 842705733 656009754 998458693 936143453 947850408 480626952 691645603 618128608 982469346 251693100 628740344 592172912 952825440 805087964 940512160 2457836 665874896 985078184 986874184 681469461 838460114 743143007 761356503 420223983 765585847 64393463 204325652 808623695 898521910 57097360 75541866 320961073 432827882 781090410 972108122 643522783 813300370 39693493 263792555 905239524 925267078 105309273 875588750 870394784 974210846 596601917 918705860 750153951 894718730 624953875 652384393 782349276 967882325 826648013 978342367 440243415 900538866 97999694 405191620 716181524 829353774 677516829 950590965 348506928 506743631 388895737 565954588 121869469 217929020 985999718 998337208 410293219 492810990 136465001 879368152 43937745 343882914 331421600 435335758 246913509 877746341 942771031 967655024 710439414 898949736 710186291 981145590 996260811 998160420 697117564 897730729 636500231 680587603 854094894 925543106 951307633 980640679 494482924 677149080 708913246 777219917 374999816 630442577 153656059 629319727 635480914 724583337 434583170 638965845 958410382 982244014 992499160 999789051 668093334 694367006 162719766 717317908 199433220 856059254 563341066 596647466 120435587 878253259 807933806 863358644 295841207 823509825 188575000 216150964 501635513 906515071 148052622 621586988 282058945 542630356 611158720 847292194 227802811 452682167 854262084 954188165 883930276 915259436 188940361 200336680 180996192 535534816 197575356 810906653 230452357 618380384 154938370 498954621 449915113 846692214 782972134 944140927 966159021 977878884 15368961 128377506 944447427 965965861 264492515 761926276 30052829 475985423 802612831 875276868 133619848 638811927 557997451 636376858 75688854 174254058 864967121 903997112 813398151 821224730 891260954 962061946 151202571 979697377 208076761 350153467 505777146 980683828 858460915 927042161 699819304 818808367 110182889 436204143 620513009 760275986 155543092 804420666 1159781 948343295 562437057 924516686 694034715 908888801 715779593 743793547 396196081 678718324 211879527 765552599 707737929 760242518 877936346 920399320 294344508 429638518 355025888 564627530 284046032 958957108 628080936 660285773 280839904 929625814 747961540 798243691 108129534 191704100 120010413 633634481 308026433 692843980 200427944 261285634 728339683 862956603 508170524 859008128 773921724 918239625 889232088 919855652 775254081 803685224 975832732 984003856 224504492 574193074 299237911 489913514 954178282 988581393 28707219 82037926 278549928 536014078 454320487 537390963 738495942 901270477 611920796 926510179 558694988 770004415 690593743 770631389 895065973 920497401 891865347 952685270 718628171 992614704 179763630 870410153 54159773 395017426 31126496 343743225 887240208 990667671 642428560 996499130 482773775 659693885 831672063 899078471 738430890 872246065 795156879 850570733 496860260 541406637 715966512 818954120 986247085 987835676 625216722 976784864 440869205 558802094 891053945 975284449 480059281 713287973 857819174 899630890 50143682 73035395 415173475 439971873 52794750 123114251 566316707 909701551 312881416 653736079 15439692 712914563 366790875 822859991 256492307 797337918 235197152 329046753 204590835 945671072 713520212 852254599 80062363 378583897 598597182 993023272 441435096 662002982 181321737 685258127 765947596 925104885 228462307 554249376 757342883 798565100 824505745 874009608 624944262 701503479 615953798 928899678 382521356 636551362 442996595 501976878 303534193 622291728 238303222 981874498 535828869 672110380 54517457 273285276 965101206 977349404 769158762 868755698 160033071 502425909 299234536 479283362 513503302 699041640 802602113 818897196 269451782 509457112 580368560 588684796 390901435 866579036 14103070 245097384 862859762 939555285 100148153 268812890 455535739 509548337 66670541 123109400 909671950 971036582 577727819 994201109 801728600 889854564 841505424 972951049 12626314 301548714 638208542 799826112 981044751 983064195 997196922 999010440 61228148 248072605 852930622 919082934 415395222 820902773 596819754 793155071 78296500 693834810 818533437 918235488 728637734 931289787 917070306 986033102 789272239 832387186 388461934 602840721 822527044 920994348 201343349 763617302 478721102 941731860 200002551 370947447 680999049 793483629 578078157 626278302 494535052 596302776 478870069 713214266 832311310 970571454 557954837 932928575 724026092 933192030 672891991 713892487 643769272 671885164 270197008 955003769 662334509 690239358 773729181 956562389 253535329 311319215 386368639 914428395 742862640 981959196 382014756 513332329 822455050 848074830 65423534 833130401 801146733 848138961 395327886 845710149 206774424 210745565 351948872 769961643 334308657 957762206 106042237 773456063 909208427 913837206 799172787 984408575 858843879 958725108 629828925 985914342 547981966 826587767 470026932 757994134 428104130 643492407 481674071 718610334 537949085 932790250 796476431 935921435 592604041 753229927 333401539 570316800 798646733 948438678 942084833 950983168 653659789 918842244 854456543 909042664 776334384 813819058 15838522 988895660 251650354 347104639 759238928 972580771 70608168 895971020 457593779 489212493 674148407 913491875 331681363 575715008 864807441 967928948 677279816 817625037 470922220 899008696 234879870 551238662 939235202 960477929 414515416 554391314 996281632 999100144 148142388 747551345 616076280 758722892 597909984 779350320 636822721 853920797 566783939 710071341 331717342 757617191 327318781 946833842 437073654 583514608 955353825 963648455 247675028 325640622 58218706 272362208 257149237 315493502 215523779 615947329 32618258 243862593 655518803 854494840 296480410 619351643 358792605 802537864 107950681 449609424 849016013 898898628 37467372 60237673 124395569 449689864 280858298 864619283 856774091 891424959 249999101 798681271 717622100 961326953 349043614 989578826 49198497 996798532 14750894 859972980 104784525 139552971 34496707 514083517 305041026 555854040 933779972 999550204 340952587 685571428 626020847 773600447 367504157 489167249 435998508 950269966 999633591 999976581 61415169 471793161 523319242 954444823 776567602 918361877 309006873 558731040 596919053 976657753 901610212 949957595 660566074 962130267 841111208 971816295 577997325 946571838 475152158 616120041 466284005 526300028 594628438 732374557 483314975 860569511 178893699 225689833 494253294 707217736 74908523 315285131 331614411 786990511 886525265 999934871 771607678 917645823 896938412 985344100 842286241 991268312 760396832 889444058 62874283 520972758 235395497 363694856 617475406 897995988 80187880 268217455 244316559 520233411 113082106 889608401 836358722 860554784 517634769 864523079 393698840 823482664 289413586 840605769 366545928 387797157 287657903 866626509 360085260 447343588 101359058 570438784 999381679 999732833 890224465 936675436 927229577 949380952 357387571 475167431 626218936 684216708 13624643 896317496 949375522 976315932 28375207 514329921 163984994 770359066 779264435 819597431 155384674 631280831 874669093 973854325 329158283 642213400 788476198 935597692 806064317 866576035 803312784 825067708 347308419 933511212 573588234 915132990 568279388 679353064 60383743 411978749 51349543 877543001 701230607 941075949 931755532 961758060 651962053 867453256 649623214 831542826 661048776 693557265 849182247 936915904 411289296 424877130 239052066 506030905 811009273 984811449 233166396 292464320 468000840 998431470 506394723 607258772 815501150 904654303 702152698 931164279 959356046 961697482 233567118 807887249 472050707 819216600 429621078 654413777 88698691 621923470 57612073 804075368 774080975 990034486 672567367 880781738 779740620 981410782 131219925 149208863 981944146 984136772 361329949 996085821 266751290 809459955 724711430 781565156 110131336 828101800 320007370 387773111 10911675 605341443 54383007 749234871 174284522 397874850 268197126 561093274 663893348 766126211 112535177 314011073 552215686 887685321 940871438 962938982 226419122 887691567 823918715 976361635 18146038 958698878 673292324 848416167 115624307 118363459 325597449 581947001 121440216 306284319 887375488 986604749 810030745 866810484 814211700 902977358 610302935 664099623 775788682 800452616 147830167 464271628 122535946 590260410 531194535 831375322 568061963 781877018 366313847 671807692 354890702 530953738 772260036 811301987 594777355 867632504 273937068 803451557 203605476 667339623 767244083 950638825 343480166 620353420 818662235 985347237 745478686 786668568 847956250 911795371 928126544 939623524 751067546 899796939 851900681 919747250 365302372 887247878 21751471 984853903 743822879 901195344 703319864 986017891 515791985 731548483 915813981 993539335 653614628 875175905 614365757 800566547 406161338 642684623 588238524 732368123 118678933 638538131 936307385 949397433 948813000 960676929 213557700 355666826 295538620 801072577 332861906 731645294 833918216 947176686 936853425 967105889 766706579 990709984 946714571 985499445 461607428 751036009 502619957 960995728 897599193 923363008 967599181 990236596 37818832 686234021 743222356 948872159 446209164 450227040 222404364 816401156 56721048 641800803 178580923 420647283 359933250 708902422 159047673 807467488 219495231 639635269 929733979 932794638 962375123 989267356 57115694 909976082 650495861 984025992 494168760 573575783 532586620 648462740 172002147 782192530 678085371 744108255 117779800 360113716 676424370 820178836 163894733 223272724 472693775 767744525 965699495 967723731 633074738 750285374 347068439 652544492 374868883 387944860 175078831 724408301 181997642 320342303 44251132 192090197 2470746 708266574 653128215 929473607 463167736 796637487 576381225 633028096 202578588 525251068 566734128 771549993 532707112 611083202 642129201 992879504 897835179 957616134 556321425 707915483 552292998 672682466 283006431 470841313 157457909 616961621 34222845 562349439 620863847 820170733 785406341 856571606 443073054 489186914 167661955 618916050 790266933 975717182 553394278 966769290 648855253 898203535 683579958 934858785 441597005 651649337 331745595 406286769 932083209 961762053 670265437 713408948 612056298 849728640 606332781 819461161 10960041 991508682 395752456 611516390 899105745 968845969 328080198 372087589 534763013 956095919 757121758 833313285 117712636 527764328 409468190 974091538 333532617 454803707 775084923 940028271 641807700 814156790 413764944 469045000 615926278 800727265 426761056 631856594 765418953 872871698 614876811 651800592 81985774 830034922 18452230 177965758 75721356 345829926 169592609 290493590 647387711 874230898 900127140 973026335 551681746 670997818 28408653 359312390 537840406 544498419 248705250 298374408 456511877 976578977 783162095 876439459 993975076 994965420 290571526 974543674 40748980 879293974 561986145 679428728 449001952 879349363 353765845 818989523 715909823 929558089 582660798 833690911 646819287 923899643 36461724 760190404 37605076 400741394 762136369 896546199 97274728 576046650 508196735 675814449 504251122 905970682 365565676 897240987 318519050 805657754 814969872 886593456 11022731 11968288 446047716 900095988 562011580 802819134 665059568 718995896 495093064 662434507 656470852 662594033 828954501 933215893 339479295 555833286 541990750 769798058 109766049 776250717 52812925 317630153 179733269 436397943 874194746 933040373 345094877 559410130 902503217 991514367 776357797 963226027 101176944 133622376 382592065 936570226 869190785 929838524 524658136 699150423 657657120 954633584 441788127 712612029 722841093 731132733 486861666 685977452 563458094 749044479 507285770 686127966 686155101 753620448 776141919 845773900 218824861 828856186 16915872 988163980 61294436 944118129 135434124 454586557 950924239 993925313 58534692 544422308 147988825 200876857 700738880 968050662 343598404 603523837 459337724 590825580 332271097 828368900 24395983 651721489 888285618 969809159 82934022 959741269 760480931 985274081 984618107 995944013 68067330 309338795 472895249 775237633 568640526 811601937 850021854 870339911 369352193 891845676 146853149 934300055 990872021 998174794 195146146 896289326 387644997 770901313 543777094 681060357 235018423 409130195 690159283 780992151 677673648 873895024 95388119 208702952 423959482 559210863 553364472 599427921 683690997 971734875 694504457 777297825 298743884 971457433 662808595 764836736 663233527 998515685 652186678 819101081 638919403 779643622 62987037 330855900 677327222 694521067 717965575 931233947 936529253 995676514 38400985 668976600 882504615 887207661 846411575 960855326 196121144 999242787 780726072 811695586 351521056 790970412 596187441 663392961 809543031 886627919 317482272 895721038 823151215 829974049 765848640 958022066 506954008 649857765 484517667 704951251 1837127 90471995 764475064 867537665 107857954 477117483 897850296 907407699 515165533 813984706 46553156 871735421 813369643 825185946 996862906 998283971 967852083 969535697 162010032 601119676 514156649 876702712 39860517 925866997 888324054 923246401 921554342 933365076 706687453 948194902 234976195 754647048 660665516 746087282 881039349 891459509 745648895 923074314 756830244 967543719 503699631 516262233 738922565 763874800 452046135 882043582 6587550 755535411 697282118 755247761 489207538 900211447 880510016 971663010 181832220 548038228 597193194 603437398 256709261 310488602 729661163 784109730 169351046 576497189 661957129 990484062 506422665 679224475 960925445 967911002 917625652 975481604 846130652 871555351 212791010 972010879 849787181 906021192 805817890 857526288 916048634 921877644 44928771 800118821 188334368 959963500 890907936 932159068 900135182 919299325 695695255 944228476 409773270 986969771 43204163 679276599 919679218 975305428 715212862 791635539 342747077 668664515 850022087 910856761 704054556 800767898 567691981 894191302 432901132 750996021 139990801 666852386 219643721 706836634 325636527 586982848 514595517 816970953 686361267 817797171 176747461 409872741 886365701 907709839 248707704 315356750 690861249 953693718 451800472 646028423 749672194 782669158 523549707 990011175 723882782 996664545 154845190 256433098 88872991 529243907 43359443 514388140 487590504 575583759 47948002 914427986 751258603 849312851 408841380 481447746 311141893 493422591 892744214 919002916 887675411 907082534 507864745 648732901 97882226 244816734 479258249 846574261 372437720 887527646 532617212 767040126 434084342 990027432 686752245 698564355 56385329 812932810 462485187 764090775 846804216 877923909 549880072 626988774 748113895 813750101 950115518 971679832 165364013 885958982 363374881 618365786 515159885 535189098 466003574 987241050 575058527 857828365 214289591 306598534 567229695 897184384 208353486 569539230 196032090 642258917 316599882 484008730 985573840 997240759 432514099 862047595 963124124 973867547 680549731 765442661 904573588 977214565 902869592 995129002 600911187 737643106 72858538 106134321 534955065 858247894 848734612 909253070 330850788 597008822 820399232 857303680 33120358 80210063 893634965 942047280 777102530 998908519 287549776 778821410 402337203 512122325 462030622 955223156 344249379 881375550 98808448 601615279 875818407 990855343 52277161 267644107 10986268 174339808 970200788 977980042 528151852 668151300 206187618 444662274 111284687 427380791 203097769 291163048 660950441 835793745 581320512 597364912 281919477 816995677 626176105 887408613 218508137 903903408 863454739 865945558 27194904 897303062 406853347 826070183 400688383 471905466 366881688 778865013 729068230 974409666 154403152 424353969 793118774 885108363 371153187 800062018 433972827 898651876 636062102 800370439 94894877 688145127 792272170 841972018 734111769 920146552 879823108 955179358 411108990 763308140 30863360 62472263 431293558 496517533 21685437 839506523 959271251 970167404 489028533 546823817 458576502 575610282 439129591 873443074 107090601 561265017 445675810 619020200 729032635 744519807 211648545 505133958 184190294 397317581 365120270 899470057 113236661 700168901 119213870 666342135 653770235 991361947 415617505 900088042 862834846 927644422 913484486 977693292 17015587 571348217 518957951 693006913 737837056 741150338 418764817 816948344 940024630 964137290 531076321 627328856 954138620 991543488 96586987 304582876 431421243 444174398 925660723 946427679 316432704 597441540 877935821 902546520 556792032 989247234 532739884 790268713 661052250 770259531 733221803 733728127 714987930 973336493 454261040 647142093 392604422 437995640 859207417 974920172 976968253 988997967 780863948 877887016 862570310 956543635 821058519 834076428 701704940 818880265 991152702 993777361 935799240 960074533 287210617 776646786 933645739 943129744 607493451 894903568 509550097 595313263 869250506 941791275 926866004 971919316 682574688 846704753 311298001 616785571 193237589 519465983 440026661 714490342 348463534 608384452 585219782 789955238 437130128 711830139 90074633 967248028 694438200 813973133 658198599 707286060 917774989 918874585 162234818 747267587 891291111 904882139 396244699 891727358 335576429 454089939 212318473 817396584 626449212 644754195 303201771 402853613 439851924 840337791 251966177 738885500 893150025 932265962 514732136 819706828 598072586 657670954 741325027 980872197 835188231 868169731 298681923 874708867 922002243 924037565 127186844 383038087 504216493 648946291 988662775 990026031 631597831 908654082 476899540 487404031 391902847 742782963 842895947 847935119 508011119 626318977 536814544 780927080 782222270 865985328 382448502 693251864 376388667 527847862 651261531 826337085 369066880 392691622 55846323 576967225 159520238 398333241 790311901 806015780 943891311 981410450 709708368 773099411 730806135 992477319 671790983 939473531 578611344 969064852 461834795 576380605 536999506 998168424 916846118 946821741 878064637 901734447 80525560 397150205 531322082 713697323 357093717 718436202 343184227 460138423 399825172 867085219 875334846 950753790 263045802 725132634 406137680 685573476 202981651 446776253 141096024 713177770 98448721 779968143 130716871 630141530 828383593 962351344 530244210 746349798 858072400 873746711 83870011 985980167 264691374 653340771 12169599 612239928 955894661 973157535 645069867 838500248 722655738 901300195 845363622 992089906 607987942 673162595 647208074 704116503 646883201 781794099 818625144 901895546 136812500 894653659 422352878 546702414 322838755 852453672 553034783 791550517 293545953 458827906 163762131 366142656 128395612 454421361 921291556 975763012 18445236 414979909 593793330 741940340 144643092 198673823 604209160 970608751 376749985 916825040 280740980 431855884 969511331 990387433 59380691 895762877 267023737 870666605 957447222 994007140 912255793 993345363 222066926 748309198 704713895 872112586 728787456 829254138 6991849 433784679 757089530 894040861 756664900 984276702 82382872 721188881 678931393 997709932 299756317 355972872 490972744 929081785 438282062 565823587 327814202 610331055 858508907 911244030 829254054 954387668 881011227 996243640 22892610 663049467 24342173 981683873 340768503 906249010 636473455 982860667 494839537 933619750 800228786 918288815 741985411 842844033 253900199 447291723 870685377 914657227 30407229 190754128 923267426 982422451 131761795 326694098 903444369 920139085 39450000 211687858 28380851 362319273 551924045 618001549 364087359 868336255 45800153 664434055 562698586 960324099 741341466 833422310 521990891 681960629 917249381 981745562 597202886 873600625 435674701 470751286 557429653 986909956 369461107 417113496 746846777 825698532 368884243 586589599 526401559 614865010 629324290 853982730 834455637 878867333 772544158 787545572 471545672 899533204 30957829 293392521 521700869 919388911 632449221 966626112 555282554 635221419 785434542 919208038 512891225 914963928 390578428 742813368 266601976 986702817 259780113 759390437 765870081 973861940 9009851 792497369 17519099 870456636 404386502 482765508 428692728 633462816 479897636 723285230 661140287 906627710 813249947 920079281 644032647 878068824 663336413 944120516 109789769 595748188 733836588 860939072 318004922 352550859 959131663 981404425 88845906 304413828 622381674 750847904 147045492 759546266 730148913 736175632 670943856 833041839 208591084 367382730 702496712 926854499 45420340 391771599 728263309 816109465 294091655 934770272 213519945 976674641 465740259 902603237 269519079 925796342 584731185 671851131 986905335 992824523 584682279 970455313 973461697 995054719 208762139 214059906 537361009 814974121 63930321 186317374 605095496 954021639 949081648 985176550 430888267 863093378 104111897 987610305 27263509 210065209 50315705 623977832 34296975 336105138 227104876 599856902 813222404 977849594 802170320 898642748 259547938 308273789 334525966 403197296 409469808 881866790 122100843 429061578 87522214 176906760 890644773 904555308 88041569 169209147 15649455 841610649 753223370 821132704 903701998 955746832 666834973 681969777 480816859 843859725 601404358 808950532 342829209 436481448 160870279 453267571 124242358 958638448 175065551 644348744 692680931 863292487 339906395 554332328 889684587 999636332 661248053 681953572 547247812 748688780 988315692 993585600 775407301 795518193 978472355 980034285 62742331 666528069 907927946 950923111 701119661 713177343 387722243 703495969 432293404 988470268 456050346 972306803 73980415 901261640 802861531 944494471 92223904 254141848 986198274 994430640 384086477 398745179 358875587 686270478 272301428 608243891 870696552 909773047 99458374 183183422 79206249 815043163 66438331 546398938 884925492 990459670 566148046 813798726 324889834 575516823 675406977 695801135 539900535 740133760 558483017 887342760 857560074 891951602 885734871 915449851 716463590 975627129 665013121 776073008 936090175 963483451 620410792 775728072 314092712 919273926 598740785 994318069 330750856 665509654 814717128 870831608 842802280 907120700 229430784 867763202 355220450 369324649 985450464 997401810 266861946 490872230 778303854 837251137 801034306 862401554 371155343 702446253 905491226 929884013 112379351 404712700 521415835 528171128 669125946 718582721 953146258 999499668 296035796 784100178 490278764 890154450 603468568 653432834 761782038 974763092 581776807 661292663 76825067 565059635 880222008 994019176 812346637 874861705 802126198 847262557 751901737 773418757 267648716 577351847 818633052 882214670 886516466 936893675 482252977 501978845 527397441 748275187 899587465 905975021 493881154 733239201 64123911 380223115 955568945 957797733 111958720 686847255 858211095 919587958 406312178 991807499 999819928 999839809 441995127 553883851 921506128 995613566 30166944 242914045 646674130 771723661 39707434 887674817 313062190 453667905 649957190 732602733 430399144 833660945 137235555 449445879 735148039 795556348 940146068 948396667 510261486 544756712 376804825 948612972 583130210 762792090 750208698 973515424 831148287 922694973 43441473 559371648 954824032 983242385 609371587 635649713 993420429 994390400 300590649 757343934 722745938 868031270 105660949 693835762 129807766 990125617 78855766 509705249 869381239 966073299 930931902 985204810 150078146 794645432 44809241 223924165 245221595 293439372 92847880 411574137 636099955 668528627 635504459 994488877 576350914 807972630 890934573 979162683 739570736 941362992 994806537 996987865 144922607 958739292 384684792 577259121 330037577 865691847 855778692 953022791 809345049 967162467 671945788 956405505 402482481 827748484 974739400 987332975 646248636 945060281 429634493 868396358 516640388 892431629 215955024 937062549 590500092 906497891 15923244 78506136 541204983 825191060 122921048 180730119 443048154 895293179 541068343 572186609 810508174 938625370 16648334 532741590 723957247 790993085 324771197 526293088 810855108 913777282 309539258 511485321 393367194 815506342 906327403 927325053 665864802 705803438 294959383 546997615 963782131 985143778 833613647 990722121 701600819 987441118 520241308 856381600 364931393 662705415 602038980 735007474 943902053 984159669 129309687 212259109 319068089 476749238 737472987 768187416 673367584 734943035 381995863 697367443 289285373 901422341 885501861 899296170 195619788 365642078 672660815 877791991 488018885 857144519 850434279 938240312 507183841 814116704 555837796 978639758 639344931 929238326 256682635 495961410 453575363 791467354 747882084 784020997 62461520 116905810 695858227 836027520 351281859 750179954 673126129 967743162 573225861 874814735 667653764 792790855 509946641 949104698 668450629 711585067 799042567 873410009 675928543 790220677 996129708 996224318 105511020 257088199 4620966 14753627 738422450 873475131 328860607 981485796 20984848 559147109 209858055 849708220 32862500 398376661 999000288 999908491 26774584 314671674 974450621 988797657 316069288 409341929 983009629 992106211 927201207 946517363 586191407 970974665 112635439 333131933 171392228 437331975 949739147 996155140 743893050 912454235 62868985 874440752 735295854 789097791 25382150 672492978 730946726 924496137 749092212 848140326 90147838 334806038 754666123 889074793 35181237 269561860 485051606 522272194 893267460 900726221 495138762 716694944 532371873 749960506 413651284 893975830 891060591 973799507 899905062 970243038 842619623 935334974 119397709 855092113 116880140 120068708 119979851 887073900 98794044 999027075 47320889 798080024 449429028 810357809 490939454 905657093 77828850 556507954 306478037 978514244 178819609 926956946 546574703 779730195 411136290 720028680 13064048 378681695 712168627 950576815 538146500 693074006 871687389 953593634 772099717 810045032 346946334 637451836 84926164 889758513 282056339 835125003 264616380 281505985 775495984 974710594 745941245 989628619 763815089 909485083 157942900 721819990 973974684 998159523 243640319 277055879 123021119 258410460 523093348 623339230 891264462 952980176 72691024 484756583 203724418 422946888 52480994 101152938 639241943 821917677 289897668 355390323 483793595 826184066 799136115 813234477 711654016 715840832 109461120 965581455 374219475 926164323 480486136 522658840 713452304 792093236 676349473 980967814 158913519 895995307 882116363 929672010 323412676 711070730 901255350 946359891 101135295 839164806 68529700 249505549 539603777 928913458 211187184 371685412 856014074 905509293 15341805 491093691 27226996 48743665 20607274 193395576 469239547 884254356 875171451 993406309 316240804 838495689 940731044 989575057 245527994 318817632 474811838 606403091 181139854 599207280 686981359 741762790 948307757 989230384 341097335 401998294 944605124 994569589 81987784 663974143 797416403 852758055 518656991 887891519 289904004 356844006 480826473 985007944 366525754 626384682 668239818 973360504 973628827 990180311 248582111 332678227 227989790 314946874 500739034 806499321 862419444 874495061 695600819 998254204 218245557 376138025 21846774 766791074 425375468 831614888 70199262 277705281 573611656 576853672 476602621 951051179 605006981 649895971 76595383 974515069 286494572 314048167 210331275 435669403 221905867 524016887 174512399 980200581 888659155 986479933 907948419 997969774 428715312 983643915 330832979 357551530 671354416 693636236 594958590 825410611 479867176 523307383 803730427 941758995 257111542 343797240 178143585 832535300 506369745 952738578 178959961 242982672 936779516 936825827 234787046 778628931 120688061 665002528 424294022 820282931 463904955 762642935 423417500 551217702 291861260 682734196 945911897 966445617 361375816 536409515 571675132 697370164 127451676 577470551 863971205 998185758 302099232 520437156 246319567 527529507 825694676 971327101 719136549 982097154 147017926 486703793 665229481 752571331 23626789 416579356 463093666 616481135 167547473 957767126 23705886 338304683 651172673 970311881 245138010 299896076 438145124 647470669 480954414 925060978 402802105 764984658 247481853 881254914 495067916 775005787 90719198 801421953 177425797 798675286 404673160 799904681 509638936 820603618 109353462 168097388 925667694 968492654 842953308 928914262 587444366 954632632 468324457 876635446 185100107 258990590 308177137 805793730 524492830 839322450 666645129 986850431 895420137 901346693 459146559 653241144 486263770 703528050 195305054 465404115 925842713 993476954 833250045 993851714 329730949 500226528 531386957 726127070 294540188 592506239 959207836 989078138 342945915 345475139 547634658 816644202 235466406 972038029 567797555 889568804 953585177 965093992 980800981 982601135 225465723 390009181 501120748 570320830 183863256 894636437 761413151 885890530 461553189 745417004 917617721 971009669 320486608 911836779 236440096 646234170 352186307 551135135 795494093 954047555 890141497 891699103 605247078 617675225 180033919 385778227 461116577 694818837 507954070 673727540 511977396 710621754 384356595 776933142 617319283 750960461 668917976 681859416 806115423 810443197 241921526 837626063 115057425 736873672 699564282 888915583 828911393 978722692 422203813 866849367 702031738 908492182 966969360 991945864 162228129 683271705 958889761 975790165 299458864 878835421 343378925 595758093 468963312 904240079 356973963 476479711 877609548 904515881 831749601 893323493 128593332 652685365 297907903 680613930 441527395 658995025 358303402 556352395 401868757 800319064 775170985 870469325 264106487 981928978 743075349 907904197 93013292 835159710 794627613 904068722 594482654 748907997 368211481 888568113 526555529 629841589 256147988 969026066 283278823 436074472 711628977 777800047 963201888 970933862 585347308 795045083 4354186 709459258 623670663 762861517 326290732 382077434 318747209 904503218 300845021 885544056 701321821 981246884 362677034 706053103 681252189 719254033 712062105 848928665 315434686 904510185 837882416 862582591 941844273 957781264 545228207 786742509 495135858 919603816 778060645 898198002 115971412 521253499 469420645 646578798 312469558 639296169 813175467 966254905 330272536 787685371 695248223 728641777 707513878 927212644 863408353 940082552 131190687 504480878 474409507 824096761 683302364 762854190 441639616 788506004 579143755 584005083 167437824 960122397 966237035 970743671 635947904 864497638 232303459 981698029 265166370 904868756 254536699 376458176 339261038 582968657 839474014 975752749 230910627 766516236 817249620 835474960 580124964 800548809 716610624 872483819 913162346 997525324 643145086 710345427 166028112 205723937 844043116 915508348 17382301 771692930 835731905 873456374 236025327 542299556 521032174 932479124 851981280 903203315 802502147 911678898 734264488 905823999 389896079 697018338 907809160 977870564 597902001 616221828 476301897 989386014 996422054 999753977 175970378 866136757 39564816 213129421 947211126 961787196 847555301 928904494 863382368 943187153 637088350 998903135 32968696 734630619 36805805 621587118 754157334 948179006 427531619 428526815 547638845 568219535 780043049 829051500 942417663 997357045 630054083 928040330 653195144 938744196 380869884 671128394 23023106 794989078 586657080 647708414 563188381 606207112 890105773 968779804 233814837 556563203 64736741 749996159 697444053 975992147 803215627 863100510 967468809 997809783 888623407 956158952 648335674 674579439 650895267 842727323 339038242 496875511 194513046 998066640 216922133 395018305 483305870 589873094 929932705 942005196 837552667 970700998 284473753 474955012 597251992 622458955 603590741 610661332 230636198 406792811 796176087 898422300 224609990 333423023 115888604 343979781 384537211 920364515 268210467 306801972 926733525 979016874 228910147 408297476 193427091 213909440 562078929 725423519 296011321 848618422 425491470 979211307 121050945 935588498 600894419 738436402 755383180 833834047 54040861 350180108 968109620 994705626 155771034 550543163 83414223 427784041 819258786 960431609 386313512 990799517 735584829 795621145 972129736 984312093 8060935 584724025 50584493 249559435 502501492 975951718 382999200 534392989 89581303 158370932 328781069 361830894 617120761 815042410 679108766 842760053 39867800 893595699 83844630 239522310 581613028 648728438 56927410 404955945 228951165 461782865 57148514 415199256 445228225 900304806 27893327 306814359 490589819 603381178 774181707 811533169 257220294 404939583 653970794 692973242 879854405 967986872 32413532 733433765 793999622 892740267 326936399 671643848 188833977 462671646 398315606 964895484 832119387 977423907 550902016 553138976 957575058 995493592 636385850 684305766 240038888 765442801 367821764 378349589 829293122 941880400 760411683 796326901 77118177 737057775 919420922 933426692 732317934 944077433 311267474 821012742 29502917 826357198 822434332 997010855 386636817 558152533 731352801 786114756 624738897 903693357 91630133 193449703 12848572 97851175 558503939 980992904 305050985 936197638 385083785 926786712 572877368 632624283 279927777 516727357 486042986 775897163 230690526 952701921 959302441 965905999 914465580 928611765 843878212 980907640 686539931 708531088 304552799 888578152 264070588 666627622 352418620 878286132 900450736 945605848 681947326 762718104 333196100 954786309 894023906 995725503 858945839 979406784 985272424 997226897 233455733 373243928 456500516 529293156 578156780 648199125 621088350 867564044 731884548 889336624 246656268 677580178 998941354 999215426 301735984 860343916 484987283 684527199 92114386 696411888 525045424 926354682 630623237 967892854 81687841 115953813 57196715 366744753 95371709 714163429 656878990 772851890 818900479 939316954 367370717 727040957 853742896 885325926 328498614 613077885 121981917 925754422 983439306 990195520 214437474 869225504 226826840 372206615 452636532 717774318 629784141 756119094 75981707 916800728 894400247 941444245 806763946 875628847 708174489 978163812 162657864 924855917 57464634 794171109 977461966 978058823 709361306 782224432 877939405 914710923 352245575 902692040 723402553 775761372 154562709 310950684 527517339 631142065 913713916 914916517 399091764 846938558 775361847 967222418 877443477 987985672 201188338 377343320 642520345 981026973 795206408 966683184 927344767 980275367 676852893 739030710 66159284 509791162 831638465 860302000 344069051 638778707 173427281 272371560 346400640 867221498 115791042 670185588 739641972 892119678 832254925 885006128 804412089 890205647 229103398 896697792 84034713 814683982 904853869 913115785 59432207 81547217 689829412 810966299 361010828 681716316 333214595 589849797 497906457 620652116 267815218 429989491 880004752 966162367 406132170 658848695 725230966 755630170 999396279 999710423 867750429 921256249 276642955 705645947 556783853 759931298 59894751 800289125 660112673 693960036 259530430 409927038 271237257 726921620 321643388 472194960 768741540 997919795 887344800 974404330 373103906 838196011 866052775 869378666 826282091 896773044 304124558 592096241 27801723 146760633 123561182 577710984 211600253 316759370 685125900 954423335 863968140 999825125 876750300 898158610 353662341 866506023 240278954 345410093 875592369 896559559 794498363 839027856 591243426 843743163 333476417 772496167 502468658 618946211 25022800 808295345 652191101 774698581 890626281 936389654 363702579 830390656 416077353 584589847 489654428 886960255 81738907 637544335 192041513 525250744 425563531 571252981 394547230 782099300 118292115 579202516 650073912 718789155 360366153 728779264 968631898 978814563 570075903 645129354 609137281 777724507 30852195 54262813 695407047 887398509 393518275 839440938 469330310 481982291 921059151 966283636 428196571 452639950 367606209 617951796 207998756 430983417 321326027 687678493 488224353 613735508 980303046 999494051 990112700 999860121 128187562 926870448 358147909 884102260 955001031 956210986 342419069 625447924 451456190 823261527 449513662 765637371 229572325 549280481 700503476 767559123 795296294 905728279 208067185 707512538 270242684 837092604 910230467 918441274 278560935 871977191 522999643 546746405 837469580 996643963 636655361 922425515 39774589 854115325 334659723 447182449 426310765 857343360 561902526 912795926 302166026 451613429 991206879 991624984 626435472 796997088 536690510 595366726 999598281 999835674 799972962 877309376 844801285 878214810 587962638 696847077 205257054 245293292 768675047 876889512 258470810 953050528 47045238 175947053 833700602 955952986 551963929 959581062 781831612 998237623 547983793 738854193 929328031 936638842 632666262 800449493 86583086 824356246 431969412 477868934 219411921 634060225 871799596 879843553 755369284 900199994 464703331 889745566 606145812 695468027 552741844 755945856 311654300 988711729 806793129 837620774 171898184 941107378 10528070 264743288 694373575 777353770 373687374 744265496 741559519 995671757 523609873 984940767 944022810 960748475 609487622 907407099 406452141 995044767 74438072 462901298 65835316 568939681 406716683 428192749 486857852 506217739 643301898 841710680 632107435 933550816 588725322 963685241 528149350 552185203 252872311 691476136 525546612 538733158 263480285 538994260 347919729 579041017 853964176 907963037 741475364 869054441 825890561 924827184 812414187 974301629 909661379 987873398 722939725 864601833 173788980 999542579 66264432 519024880 684155877 712069285 818725876 849671128 888138402 989481641 652040972 755430922 703900244 756520746 574862361 956410099 155777222 312018029 140291901 217713578 474792326 649930082 196766155 977350143 106982656 914749227 268179265 914464536 462747120 828334366 315397384 320392370 234184408 857575269 837843308 973622316 265190605 776649433 769504115 823284752 349718212 877479715 665718869 864751206 390078156 973709320 462558809 573390137 350559794 842793133 865653679 888492705 313902352 439548488 658427928 806590290 708311502 862730840 836157790 982147055 609152785 911262548 202879749 806586398 369379486 762753805 919967703 942932555 745840245 792433683 257633372 774572342 388641354 899698347 668499279 733083626 467066666 779878262 717236698 935924953 989946471 996375897 630408149 923060848 782355371 874160566 749798618 776460342 515595274 577699643 321647103 511388486 78058551 197302880 902511952 948428707 797048899 839800763 482781276 670230926 115273736 359316988 821985055 978057366 95045705 659147353 212134097 878859749 377938747 787646492 925828895 930290692 135491335 716350793 519695200 774767599 705614461 773621888 253268768 735422340 51345404 908357160 571616222 803760060 303811611 779051499 346864294 395354667 704435310 982148714 383715877 563209714 261218307 622628120 638321908 756307422 274011422 893446759 896956612 903721912 25864366 884196251 479968528 952557943 109440887 161940026 715800883 840949868 418878320 848507125 954281006 975769193 828129603 836466370 286555428 470232612 827782481 885419082 355688668 628417487 707783139 993017594 337904436 704080496 896143884 943990502 433445388 923644349 355259624 990651152 8796969 120510713 905572495 996669338 63748709 593656960 417264538 948349004 536130092 903994491 173020371 749626525 676509896 696091006 692504716 977112541 987532151 997627182 346321479 593873297 179269829 884438384 797247813 881696598 151190965 457571829 293320524 754759924 508076543 980807449 44661350 235892878 264003813 492365935 137736565 601069989 957277340 997757192 202543489 472434952 715910705 825390692 728122768 996663785 291865180 914253984 731833903 899238088 865847919 963650132 488128068 848474611 636600669 950984338 126206884 597754957 760357012 951636968 905119763 989647294 870687845 978439396 961055811 989323032 840381251 983878595 380453964 972755206 397809445 894841621 812311411 962227052 319998143 880594980 496328495 688254414 622793007 758782317 926577059 928326004 747373695 820658586 18241462 976202183 533084133 735111184 986572606 986605118 316945028 707802575 52959838 247768054 935211727 952081825 79507056 304801149 655954881 744599199 947441523 959084355 906357929 913329419 285030260 933547338 508617853 808817340 435804691 757708532 161405659 676973705 414502254 864881571 831881782 929854744 607512885 662863486 126909720 666797740 297757546 419811465 554173308 939228731 937071955 968878943 192432547 442988355 692780168 883577842 668210813 684687160 539648177 994971582 371318987 400898727 667061156 843584905 822493012 835365983 82616299 968665195 910876693 990029971 899063544 935999661 831072096 934172206 140347107 959285843 236697878 481581307 359740723 878332746 17902327 256337674 232636344 502248001 193839948 512212565 416807416 832525631 715254733 914956244 254032547 795928974 629266568 641395901 744600743 781271926 927388358 982546976 784903495 948866284 298786305 564936121 659684147 809601594 15577047 625704075 770083663 996170142 857672114 860305726 649126138 651955816 325252575 502223656 497265712 530184751 359849933 936041413 455218492 762839907 483854398 849468338 259220271 322266027 807234050 950946257 711147336 835259897 202314804 589063706 488358309 635220638 373478880 967469199 999979353 999989897 603788618 937887930 130934954 137433063 714749776 889771935 257181034 702243895 85194568 765077783 545554920 749988846 143534898 568457059 658686235 711144621 821087090 826762486 722787283 928821492 338057079 480716658 270891766 519655640 774964605 897447679 625442851 925416268 939330049 953733886 675108031 853279331 540752830 627057043 150891946 306614877 935041418 960617902 733099048 960473035 69255853 245280072 541630518 659351161 869247978 882878720 408693422 535852460 136963416 160472248 537920322 687203159 439014204 910337973 385793441 551561663 363559846 594239823 11896498 641016458 371759204 545466189 212669425 843113798 467367670 535870863 706513790 733271354 167859642 630707806 730190225 771810822 81715881 622240866 181278257 381300033 301650493 905787707 158997462 259983991 404730226 710513737 43588653 852080133 507826023 510851949 404029610 739924075 445242315 857484966 109816869 165821015 481807865 611189957 73427615 126046310 205892301 231018463 839774605 886397231 262742399 641752037 899204504 978422642 466168406 541256707 359597614 805202476 164418115 235593622 564300797 616471099 573434292 707557248 458392616 595451469 442069721 857977658 23792219 385192468 759408091 869715601 115755658 232223357 965956701 977478628 870988720 894341445 888182698 989120062 697067764 721297266 864507209 976854884 560839957 956377934 884878698 898156142 811166854 855206789 399671189 632060661 647800321 656227323 855606818 949172599 79626062 787917763 743097677 857376823 940289733 949184295 391285670 997432875 300643730 328559446 210550853 686505098 743663175 795740144 368167042 827476122 391891733 917980216 522956977 604887509 445485316 629626075 123790013 451375491 13340232 683275724 575471879 794557821 582181256 852398905 17386667 704215675 921968427 982098919 228380348 619184745 676150564 877001521 981524380 987613885 381444045 558983266 705445583 963170442 78965689 164387805 325411182 443206476 258064835 462801833 769424080 881026716 60957489 262973067 237505678 364137066 821227573 919849564 250305406 672018105 618017449 994188939 731750037 858611286 982634240 999509500 556560120 648277791 83596172 599798605 584120039 616283017 72736399 187763786 106142564 532569456 944826076 951561783 694466748 916166784 953642019 988524379 607461296 709626329 726541896 792786699 966346950 978551305 306267489 582052718 517260653 522826351 271501205 736584522 244534601 732938509 723800977 919738928 33704369 175177668 409822179 728742338 96439706 696742223 479534625 714384399 885900599 923514320 233680880 999395672 78701127 95929761 628064062 630043654 811011122 902940064 542886084 847347419 676768727 856234887 452737443 701190541 251425615 912178606 277928458 850515382 779110800 955856849 271382001 561997541 168392857 719728419 352447916 720230053 489805257 532774336 533026731 826346994 773302038 805746841 761462240 787737235 230639564 663874504 82209999 407994504 760623923 970814586 921455883 959884846 458744166 994696650 639597355 964167635 920036027 950481055 807552911 992502571 247378270 328187217 886931428 972291774 225662801 709529863 432104321 782571497 98500033 320844781 839014597 918437491 112070073 929535677 900083552 918559089 726143063 777467146 610471788 657461914 949053244 982693344 928400881 954580565 997016359 999991922 656732701 665780544 162126784 515005553 204545496 303583068 411610815 656223242 698723802 907060716 494304788 995929692 949784663 988277587 754226860 933788892 809291 331344290 525509685 964022146 53370422 527996775 15027961 419555011 101559179 344257869 372467679 429039106 808744945 985475854 936156738 940702816 779861178 803881684 987245546 997032357 792075152 794933591 670472053 683815455 106133080 576685231 868882279 991232070 162488915 379148759 500653414 839733937 926666614 930237141 52967938 205353467 592984203 713810435 659077524 821532501 252513637 908588787 503326835 912561948 936861839 970697446 639839730 686468782 832330966 916962294 176452656 327716818 450907406 881696660 736002748 816270433 783288984 971397120 545178838 786014217 493237327 530506398 438330335 721345931 613585546 767644723 67092026 569570734 170138860 932364852 700651228 947480964 723284380 875532968 478286637 986354328 144443341 495564183 686876095 946520146 361647104 851801332 192461047 730926526 375054938 556315806 30416244 278264484 65978430 501772522 214382754 309389131 577063403 873993461 677694870 863543576 58978404 646807594 190264328 347166551 82600073 582699220 10916908 130451945 34156153 315247590 680087176 881599796 961530375 982623574 472215219 492845415 805577420 956746560 307687011 369308575 175321317 239373067 299954376 898689509 523623495 561661933 639438759 774284647 794685599 826341153 332020208 710453580 30781943 764242044 475574408 591087216 453526928 856610969 87896610 425159751 658389434 713280442 767911389 880649933 434639719 656116908 937407147 989859180 992363451 997407851 964201633 968943873 450155853 737782696 942261197 955865196 822353672 826962757 401649250 860600585 163814987 552413175 192060864 929647558 559363661 590371334 25469021 286317761 814367730 901037870 697577238 901219821 763876981 968799782 876094670 880595515 795129074 896918393 268380989 999529998 699505895 711622018 251765895 420999418 744728171 999330363 170403911 332990831 364090104 632669083 172489743 661193438 645169200 683591023 141190891 944666481 667440613 695824275 506657918 876470397 978307986 990012324 112757761 144716241 668626231 818880006 714112442 928514943 982106943 983827041 600013657 856627015 114478414 943690927 613572261 757416803 80907345 91706288 999794417 999836579 948151119 982555897 390516671 849752595 14333437 564272295 812859706 987415127 7700613 859914040 913309282 941992647 177604063 414391713 368047190 578384008 412023529 884521706 367642420 969970028 746141312 997170335 650699675 697566995 382084450 871076181 611743884 977414931 918091051 994587872 49524732 266166034 885555228 957834837 149042313 483756081 408795395 888943182 317266090 422556442 886000518 913803613 84477462 395235424 97832977 971827555 161510406 977073885 491562429 689775707 130180991 303337003 14546900 638253192 91442295 817544865 703743040 763173537 147502774 514767762 625039926 991406264 722439308 899263494 409485923 574672841 136442736 160151075 56724474 663746025 932172715 998486246 986296159 993656641 863554197 921191139 847882370 857781294 17870086 615481961 735186559 864987712 248562455 593902802 69099673 511024983 339155409 785275141 208010079 427708965 275858126 953260015 626268540 648093748 921972380 998803539 76056370 938674546 835048880 941328593 492623162 786524330 713006303 936821575 215627509 972849985 667777291 963883670 127730001 738529674 832572216 926289786 130130447 936403763 608921583 633420677 754179625 890339065 741427080 802072496 732635599 813835773 199193907 547869721 581703605 856028823 991991632 995770052 864714606 986813123 864718733 893620015 445359960 851569173 409064287 412655081 702727776 900960541 463510548 944470258 108965062 284892238 904854743 972729953 291308807 807764934 469928613 672492971 858185352 869766137 887661000 994793926 434198055 846819427 685555711 962577515 462592095 969678347 374964583 621485324 488233796 733676962 535889710 727750353 602354899 834106483 629559336 887806391 879726793 974875195 980002127 981739395 147751026 940011356 453593395 894109466 854027192 998622780 639551307 750175715 850163057 921537196 785054845 809493240 518409759 948710033 257048429 954980428 982098819 992325603 221216509 752132972 201714985 711427800 362550489 403977075 767247466 922050182 877795064 935470267 503625164 938155088 350074917 955281820 158891563 977200628 174733849 490718979 439472750 528685211 315097681 865733514 558059364 897766475 621295285 947793869 130858348 627974981 803901835 866316026 250573559 862983961 66028819 592519864 615839481 940998580 688728816 704586138 132797294 754629207 927507343 996900171 874714368 934350457 447155220 655573186 771164792 921202955 859455620 928760172 489669372 962079871 150916972 195027795 836688755 990686391 289911725 602540732 169786001 299860327 450563017 629208330 821516092 992607941 217523821 892000899 636147784 905887383 725119919 947072857 837082464 970006479 197701260 903212535 163543884 336267350 537464625 909927022 892963395 910164350 722523104 724775394 465657624 722627841 355699241 675295185 195162334 736507512 57626701 541597298 738161489 967403813 764284930 892738557 528387241 732335070 193822781 793459057 226616976 622286808 331178271 891728482 687216711 692912982 503740035 592637691 87762462 240587818 824608660 874968411 49486482 683137340 411631689 501470340 589132180 683630435 669869952 698897092 985996226 996454094 941578330 960493730 668328587 824703982 113551966 627112035 66253031 277690344 189221247 808009787 9840653 522585968 743288824 965364313 60253460 988270778 126306285 651504173 325171935 416305163 252687843 337667475 263819443 844623867 809757268 926779921 880233600 902123865 15940425 715868728 194842051 388086042 812374273 875616952 577731647 972849221 571818165 721984370 68879384 365209985 832282767 951014518 292478451 417621183 861901953 981771155 11575362 998238837 723931475 938729406 177641260 847705598 315192521 609523600 232083847 723466594 255991810 599506968 773770873 914729481 2850592 324358014 83853546 483495771 20589087 216770511 630290551 722435998 948430677 967078747 116753378 210374902 704168031 804501860 683863233 830421720 4187 298045818 333603871 758577257 314103068 795215711 694373551 974207048 624637860 975531434 144607432 482567598 689472935 715488521 454091926 691170015 258549433 561714526 203182224 942075762 512834502 598064652 924088966 947768147 40649873 647825263 946389880 991281648 449899846 724482238 854965662 862221321 157602057 666547781 788970782 926566897 447158347 462470144 906490768 953016254 734140432 960596915 645198455 852349454 898151076 944306760 510563350 527137639 373132283 754121457 591579058 759018975 878397972 980232420 640683212 703428151 725635196 999578133 217075510 280475439 562884256 649960776 844799432 937906736 745297436 916030685 738839924 983835634 203783479 502364158 662033308 802161337 897979093 977404781 848655600 918691523 843238414 954853327 61125800 854038934 797566817 877509241 492586575 896529953 619182931 890013795 89206170 962983643 664781858 678195400 468763585 954921318 440969111 868911331 199910926 342642491 892603301 969578605 988849901 991372800 927219556 998013848 646386422 969482289 812715404 994567360 751993272 809052058 424961567 925489231 295103124 946825697 864381009 946159743 31323345 385127467 858674201 881262870 686221747 712574094 593211238 921832571 936807710 977794842 331339486 821894591 956446613 999029963 381293440 951078268 826106768 988248033 123701134 446250569 153895917 883274453 660083394 664691611 901319543 962344101 739962305 973003246 564937421 759224511 178000386 228469206 235066244 388468169 684785619 731227703 80500593 497170740 462629162 993575916 320797968 369215343 327139856 352147953 330581125 533199956 615925381 794119186 650687169 832051415 794679580 888130786 392238979 480258076 759606930 918719683 463213720 880248498 828561046 875173767 604296600 624042645 542822751 963302248 676743647 955705609 55799376 796105535 342490893 746286416 91076043 92932821 585187520 976089599 546167914 831254439 919332137 923581789 701243370 794489440 974989371 992806922 642821911 734573508 379277602 851383700 223197933 332146521 882407415 995867427 876562981 885290467 866381372 870855965 129276582 604186247 203794769 972036271 101670621 207498529 303650791 763029230 677848688 936113839 933574974 985783678 580396584 827217251 78009055 860282468 153090175 602720416 11345294 565050552 174726296 519221945 201068933 686479467 404546303 780738321 941088718 995426540 328615425 567830939 231911549 723964077 738460526 744768397 948978664 949786225 485662963 895153157 189976540 606440670 762850255 920152476 181730770 358254854 502413852 570003553 249680568 301955625 666922792 966628002 889717101 938483746 899974828 932673853 507434542 749001070 320765659 447382213 884173846 905319839 580624356 709356647 894589831 987828660 977410325 985738301 132542013 817333726 915592483 927645915 194572206 820125841 451565845 820980722 210000190 307266041 115945712 269868823 851291487 865777387 893383780 999162513 65263543 765959433 658514185 725033052 996093575 999146032 543406345 660191987 298188726 540228293 598926036 645316442 514743609 634343173 856336132 924266206 708867001 811563278 148608082 909747702 278291219 739707914 879129431 986006296 693417756 822638549 96901797 989038451 133247252 323175074 919405652 936255415 707232791 963143115 20112120 862805988 717412681 743330100 737495288 813308382 39695384 142748533 552326127 964722766 504846082 786859111 738736618 977967806 232247800 531105670 622118652 862557516 278088882 947826618 836140816 839316028 214987800 990841124 581718142 663027025 520876982 829377378 88767487 982895965 319616804 912358114 164736324 571636752 631370962 789731188 427668538 908390439 159951667 845268900 692394467 863057655 76338045 227023139 26542805 332308033 24258548 290497192 145646300 377356352 210003248 985992931 402090782 969351000 839325182 857823107 885912239 980796003 831605262 970612059 603760502 611205677 653324299 699671240 924164167 982284475 680980508 745588033 815857731 845003987 395742839 432646209 259062849 976986671 850270595 893743800 339230399 976924296 415498643 692363550 380762240 810441602 309962086 331365325 347634237 589256214 359216489 763522856 75994519 95633016 779255664 850009545 402545419 841648900 710889860 819476627 322896522 571103041 55976112 851661992 879237693 906760351 573033842 726682983 123187271 609209276 358538380 975173718 121809304 516914668 96291708 447441168 228622769 664578192 17612232 724367134 951290793 985366516 980231584 996897136 27692849 475212381 564907183 936068044 997027377 998493126 595419607 615694212 811952966 872651938 720340103 987521008 59216019 528291084 621500212 632049859 406492672 488769334 679247242 980691359 789562848 946929277 381589629 415148263 115320258 544938549 500328972 766302877 229891146 799515121 543812549 869310403 717730918 829813401 533093839 986993280 535736182 844012063 567682908 853137373 769996082 988750760 723306691 911555222 536892554 661297276 995611872 995797309 143052891 976147165 542727839 570093163 275130811 515865542 202453837 848303147 29579982 109651325 953394428 978695947 576451383 814490121 366141895 514774037 499232033 639252363 955499692 967578529 25690416 151137113 468987314 962944713 929411198 973343477 387561166 871816597 764769297 923264671 322543170 686878292 485568259 527704648 734213598 942451627 196364294 986219630 451229699 859480232 318676524 360353114 468789351 511322810 158539134 299682340 673656077 745647377 54148977 915926292 8705239 783722677 480260530 558606310 190522993 760124692 393344923 900175422 38685857 965666226 450848825 682813691 592841052 925363951 611242328 871566829 475409988 836817608 110118569 262979991 499826635 711232646 985160924 991750765 105661522 243483275 164284367 462246594 691139499 835881224 99851124 277696322 456126819 513964691 496842338 595460731 153979766 823293967 173018428 241878402 161668022 485600426 364960179 610265963 809362697 838058298 630380438 998042858 402027894 497421625 402004691 816616624 888223594 925364402 478007102 843596323 533253081 602304930 399846342 866409222 244528183 451342648 220982885 804418546 756341697 956361578 852856770 891354755 683674463 874681397 185487204 829873566 32394203 815380992 651399565 746138434 168693355 921213726 207054217 818269010 72795406 630592893 133939973 263073012 72503347 337219397 572243220 619329443 107054341 305555682 930842332 934635421 588960799 984535776 71654023 176021996 326394519 535595432 597356612 790857833 50222412 842835996 805048172 908238726 400599675 650234585 333656019 432282047 134613040 816803152 580346965 658841236 867854254 903935481 913826394 995095770 839204620 924137168 796400592 945187522 713914347 864875183 859775374 881649903 822773717 946074417 432015858 589761415 942290380 962167368 955010798 957446616 163596107 177666810 361585717 407427041 637079591 814188286 488248802 790546865 222342091 561434333 874235672 944110534 447128976 709619300 430803889 685632498 343193361 735795993 739504787 812933626 275501246 914603363 257009448 857684621 393804506 732992331 278833967 879426607 782066341 818672769 389178489 506665978 748322739 892251061 964241164 983531102 437735445 521632319 797977335 972471379 324027102 879077377 348649476 613245939 271622164 898016959 691936983 828343186 663647852 933581588 617031835 719415597 317784816 904966263 257664842 436349182 573509854 888997746 346502623 394746606 288352286 743371183 150618286 429922531 87918671 241002900 782315475 804061618 227408968 496866284 219247291 500320438 892148396 943923078 767078770 846256997 899781642 974396002 355699463 964005913 65734563 360934263 547286891 587579876 664940331 700346500 449823696 964811568 836604222 867919818 9242374 354649136 54308550 571071696 431534431 495302154 712734800 944514309 46902297 887861238 299512927 610397220 659895941 765966520 154446523 530862803 396752655 975872567 40753982 408913621 617115803 951766740 725053406 792166830 67606185 234763418 74603277 81950956 966091565 994434288 619062388 818425417 185787482 817178836 45139162 491117968 473861648 992528821 653278469 676062088 447161824 537379917 301492542 361619799 922534953 965954743 725560338 927014239 744123416 767920684 730115936 837155016 506910117 568663595 500647124 813497196 282294867 426934183 982225827 984005975 367604937 665555562 422456861 576373867 219676850 852352775 462878065 871032019 811291966 873877549 741277719 753666295 930255758 938872785 709011794 828506910 479557503 944539571 842432473 848206972 962729451 993434896 428976828 460729243 627758371 649290306 780133268 972150783 660223229 689515833 193312064 851900179 228316032 266149726 745537037 975502980 774176080 856390605 10648057 72996804 102999600 200547133 291625083 750367409 11676072 740755709 808824848 942749122 387834642 668645459 26052625 461839790 428384961 877388725 437051809 571749353 383529406 468763463 826791694 909304916 795251565 842978289 152151860 757748895 875175485 962839397 811628600 947411660 857483611 913989899 474231806 479121050 487989054 733545168 120672578 633068752 989586172 991772873 314144385 333696164 458349996 621852537 622795861 921782324 605753757 911677218 998388632 999100165 307581012 869908948 163215380 801696817 895995157 942229037 17106990 778614663 919093223 996014738 45686139 356874756 77263431 997050578 378749915 381840211 588926342 727772980 830274964 863831253 746146912 751759643 680208512 729948757 696085770 849217508 73686224 367575805 466832144 600459245 777315266 982756146 136071900 734117971 542519483 909030779 112383556 286825433 124461429 863003117 407591513 506247901 340349875 445847075 572122651 731578216 356568615 519677198 21368792 501278724 242173585 733532915 49205602 965325053 255489231 736564814 516823676 951261635 458429788 861649145 14389823 868906864 376184113 588024880 446154965 889960377 719124261 883060254 896273134 922664851 968218341 968792052 788504998 906026564 416404747 893219092 707349384 820389838 168736305 663938686 591765135 640217656 901298594 946764543 55637938 944815927 449112182 542640992 940966268 949462345 992615309 994924301 580452066 654380868 234074906 444026074 564487180 757109890 978644552 994184714 474851354 481870440 888666744 892329157 89215509 384456032 691604209 989226938 85065379 611490406 993374144 993854307 989676884 992828446 858377825 952814113 389954665 452770289 621335371 708956413 559140991 673543440 936810064 992738988 745282680 767111012 732280140 967062709 391179715 530686787 813518354 814331198 782963825 790511323 578799517 841399240 321152967 900304765 698191198 898501784 277067145 828466527 746287085 957177528 386922864 539164554 501865306 891530084 429412393 980177608 442875252 747171360 902976165 980785516 48862205 695751821 595663294 743128208 602969747 966112176 659420060 715157075 938572075 966307808 502228448 587141026 934039963 994034495 895711176 989357562 16983518 436670409 498720591 904614112 694059830 834264550 229636195 240325337 861181295 944657306 949711727 980421211 984331037 990157630 933073150 942806679 130391749 345300059 735523302 921682408 308274494 586723583 393549789 564331708 392937941 940515031 332102882 655050908 713326896 768008737 567695436 623948196 643257694 660425200 778246260 993236082 947656083 969090523 173217734 548493149 192750085 331477407 766167061 923006297 979635173 983595250 940152382 949915348 521846076 651682012 38999642 837658192 294697907 821873901 924643005 939741115 107990754 752986085 407544845 531787382 360857830 729970483 575591723 678280467 769411453 957709317 987950172 993835111 607761016 983002967 612209798 729569031 878908390 932476535 12222178 339930666 935006131 979560817 862140399 863610451 654044236 832377735 352858329 370556650 185033206 297013864 219997215 236139400 116556432 538958224 258215789 525831125 934519503 993470459 427446511 863750019 703589904 928156521 571683354 660176791 466927991 494669241 512495728 847521550 116368220 796088830 96621765 208244200 159041438 394475280 235148055 910060435 926826484 965100641 522389975 590750625 787705229 980984244 444620160 861215505 102170666 493915946 135688254 573591855 636025496 648475828 518440217 713230817 481421244 950551157 839094527 888173976 592015556 921728429 770089532 807555515 634322997 871516602 65079166 565625299 85571132 898624999 440046440 846292952 528117512 665075958 971251048 985387189 126900642 527733267 984160663 987411985 319310585 632695854 776393098 948330774 666246100 884607662 52654373 622450656 611923970 717757446 400569224 650043621 303928701 619029320 248400769 564931580 874038153 972529940 161436591 556895521 318206956 483090414 367609876 778050568 508821334 637502607 272116257 523491804 178838043 980489739 619665877 921794177 969659125 987579455 746050652 948165721 621846837 662918243 336838501 542414059 575292593 640236787 189053969 301030670 594758809 623684035 685640015 900367621 339618665 612507387 29410982 385365032 381808272 630258887 183086062 867167631 945414337 980920071 44255394 972072927 466581872 764598693 844150774 887758749 113638661 979619943 700971808 728389048 260920797 605675771 422820002 889200207 564910127 737642964 259057081 820632730 476265118 989755864 456346806 595007268 411615611 911016715 42813046 464664915 797479829 896421740 902185811 906303966 997145246 997812241 421031137 987283359 478835514 565639947 945115143 949460228 283264001 487787262 177848044 744838518 867911936 873109151 758590432 760555179 9753486 448675550 875208076 901554104 674928353 804094976 971589483 993325465 446856194 904803914 88472224 482503942 594782917 890105518 592675263 968990799 446242662 653547010 620563267 759735682 957916169 976796561 531343897 982951291 696830090 848159488 916254755 985978638 154872419 644116330 27944630 660230591 654397821 984748789 426767915 492251469 676138734 892638329 817946159 991925002 938646320 949409542 810448929 900183434 316729139 318958134 47418910 950525045 141811161 707245866 770794447 937653133 531988847 848095978 574814096 704079254 253741336 354501358 944103300 998432503 941981071 942265483 663579833 990459482 219249989 329889146 381040593 973088544 922771953 941051325 154643701 579061291 538749235 857976744 693592867 747619128 738281197 863721252 866373847 926377106 980719578 992797578 262787762 527590963 575422971 616326254 718442166 821517122 960183876 973150583 646001185 855170279 912342878 944291436 645698290 739576152 776703977 794644987 692494371 808485786 481033895 496192620 980156213 985200501 729308071 782767852 701493384 988768685 842342459 989263297 726335767 866196932 288729317 784679406 444243293 964646607 121218230 838164008 573152508 872539721 154144868 229862532 963350066 964379887 339267270 808218059 524160797 536570375 751414777 960794789 501819581 776241468 48633115 496642171 125075912 976467986 497227649 751793279 933403497 958974585 521869969 552521593 328584807 412346200 525195704 681271326 51268762 462800727 203359152 247536467 85324220 960586052 320507737 647063727 974302323 976602915 43874872 155808750 584360566 708931711 473388787 550072941 839234538 981431993 513723331 858492275 77356048 935515606 297992246 865608366 76013525 908751495 642300424 939199203 816968913 839889584 704466709 735384834 581860714 902713651 210444347 221514591 89414593 917528311 387467542 485671586 908443281 982432030 165007569 470341791 145791917 861928744 480695097 571724093 76786643 235301149 775153835 983987727 673565022 947457839 914994880 975810129 770339230 833428081 344444222 836891521 631425670 986510776 693548267 897323345 422142630 566139733 31611192 149172303 993841252 994652733 804446440 883547353 689249904 740117364 435998245 550699834 548746053 967018049 344712886 599185330 441511004 816455012 505064290 588073707 45559646 88752096 729692621 868453874 495073593 727419139 695124758 842120386 751228796 985825694 96478558 941040844 711777612 729646486 596324596 996043122 332687632 570626438 984803736 994529253 884399887 990818538 537594813 745812716 101022149 678491450 909615226 919822651 694779228 896090897 364472950 387763870 182794933 260987084 876619841 935812994 928840559 967478739 263448201 317427003 925978751 946054950 47973664 677240044 883788407 898245684 834531857 954357600 699241797 930817713 551327118 631497939 29111730 342776382 816770531 836665230 861128251 997155243 474001170 620916068 419878070 548203134 930376171 977541036 24969892 483260611 841380583 917108955 69260657 426407537 601294194 971340074 407603439 940809077 350504982 425582791 569401609 587857080 176726901 539624411 446948428 474624738 392205975 730612831 472790353 883916135 967247138 979062394 594837387 923508635 948182259 966359848 873707079 895744655 484287776 518416027 443138013 984919487 592397619 598860225 614670029 646086877 86780442 466768373 319854710 961605686 853966007 930660318 444042507 808621279 777405400 944673687 253402248 787167176 805510073 862237252 564698629 884648353 357451979 933414333 687653053 976967763 678153927 738990945 258231727 611838537 794673979 814741267 703440882 972486840 294348704 690042202 451823032 891328917 367522043 411973462 570784882 922453197 275653493 895814361 39310539 709275850 737623336 892892517 682356086 915533154 114121121 772871867 955807691 958376088 472977862 663272525 124865541 659727634 835809328 921510615 150611169 709568149 303416934 423924691 377995055 565810582 981719481 991750120 74861714 343385600 162339594 310696005 48648245 772615176 139586084 747985228 596334140 703430497 939030065 964038790 740768422 773217557 125556330 511849176 814657473 971030263 520040666 956099510 637799328 880278753 230274058 374325143 913732517 927697663 613704507 734565171 845047746 889100084 81681495 747443398 894085382 961472968 262689461 494067258 171687398 403277131 148265839 789788972 295344882 302290316 316418432 932969044 500117521 522732328 188288038 494658955 954964715 979638519 660456590 802928896 866136313 920091891 329467428 397279453 878892205 993927177 77801128 955033393 659536196 705274385 202440895 565096277 485474652 911839284 142461273 967632630 246554216 547682015 53079033 264610318 200924052 941539288 600264831 739034746 58078310 459346377 65823015 649900086 811704363 924773968 116489587 147269339 849308427 999307059 774658364 877416259 124681466 911777685 427811348 743649804 882231080 997469595 979852810 986702098 193736232 446920719 382513274 793176802 701718389 923950604 617410006 977675128 472024177 697271414 20245282 528394500 359021778 413949940 900399371 962600378 723085122 867272127 418513333 990321445 399023611 591672291 557388805 804906079 95033863 631951524 758233574 877408057 84022282 308984558 159865186 496453721 304181391 614829087 159058006 648534401 397063047 958324116 419625567 621815997 438329547 987846248 43316024 850280644 786429270 962894183 812326604 846480977 507976917 764322631 596301871 862738110 157556312 970329615 264775536 440261196 336906244 758338778 126594048 300664643 853107950 966409417 716451263 931729093 720199851 783539057 856675968 944822254 91681224 382697116 908902555 955523328 501662499 777106911 43500137 183812901 393545390 726354157 511124851 585063162 594016898 687437146 762057953 963337730 680186891 893408671 707194975 944143776 198443746 878460471 923450763 953650588 952285528 969029746 866916419 969168650 725262628 758493938 695658440 890822835 546703249 648018525 255568952 757905382 351973329 814740368 892630016 989215832 859100251 895038936 681231401 831289182 860727146 899806842 922572963 989526529 545532626 867507891 903270806 908368999 593395452 812474806 482183015 792189549 887008574 893052636 150036369 446581110 987504218 996286176 691108415 877062933 961312113 971986335 10244707 854976041 384918344 866994199 881141213 983806921 853881031 980480229 983495213 985878839 331830960 994210936 961163900 995614843 803252421 898741899 16549150 22223397 995368527 995698164 672286801 943021042 782874802 827489008 266221812 409586186 909426217 957126261 473954518 911390071 415723939 864710595 867246128 881453417 636760990 722959887 535059929 961671842 574928813 907620851 87974148 843108748 318333121 679169189 327868394 421527363 530905875 733482394 120720694 844502174 666467566 778312922 77535008 529897260 832897571 913392288 269049948 493302682 6413383 19192977 503648522 953660372 369402970 831015629 382249677 430127156 689225309 779663138 814225115 931884759 602706804 803964018 517069435 861000882 530043974 609644952 722716005 989953974 70860405 641708198 606992803 819279003 838890366 882931088 906402827 910681486 200957748 974455724 409919873 661768331 416522439 915125460 759355752 960399178 156909346 671609033 887291297 953050361 146089931 446407142 821210676 882474391 936604564 951074864 166400288 620669507 581014858 807144474 984211134 995157321 749318242 982975281 734277202 992486059 556509853 850234257 869108441 895094509 908789819 950930240 55677594 511874779 688083282 880858461 378392386 828294351 801592428 861070018 445970229 511258077 581135286 920373061 187177700 362734214 570373367 799824288 515617102 726002857 421067538 704146132 81388608 244311733 891510006 917347205 919574232 991926165 173419014 715534853 389132191 695397650 827143553 896292876 5166396 681701863 511927453 829222981 741486348 810851660 637385606 873730009 510531191 522900555 949250368 981512340 62161349 460581779 76707761 703184796 437287518 522353658 902301586 967924895 777510111 947598152 271634511 589133271 241874855 559330722 698967608 814014771 984414170 997812501 260414991 986500556 551555297 815011136 983090979 989415294 682025642 701340249 541841987 898115480 160978060 365867855 491910567 558769272 144986394 680120314 927111040 952632629 918606378 957001496 157659306 756052101 566907157 945878389 72972760 799894798 801399556 870591824 682194515 798734302 687273163 884875599 575518042 609372490 220444633 948562162 63671766 552510568 800948265 938929995 819037693 924192213 119212300 909500122 601110112 816576114 339756629 663275756 48526725 458227421 184657703 419966271 205266677 822597115 57568168 855732233 714965287 983721156 320872893 855802967 144207360 417197603 140267403 249902097 880187194 930306401 20417966 693417969 41267440 832578725 127057858 556989358 537695367 935009704 727450859 884249739 91496426 972605715 427967767 948913706 47258307 742031813 824471178 861001614 332312991 569318692 561287376 728668142 724956753 729873213 2643473 142024255 493822332 952562790 154372376 933824297 707640839 791796354 429768295 583734091 336341567 853524053 734437825 750421894 220670274 994610104 415164159 869076922 746356458 868144863 26094942 144450558 26843782 135762782 925894092 926896536 180970101 446709644 64087692 964807278 495059296 551549536 364886799 743187971 13445155 302971842 838007845 985805257 498276216 967863626 574243984 929480006 313957094 399596846 136055544 165283977 844437073 963680018 622913165 906161118 826611434 903840243 843646152 985323429 131684894 495151089 559969859 742938608 226044674 699753120 328034977 974589336 261115257 623310981 816544478 835060209 28383351 143058690 697546609 985524705 909614942 957772124 24702921 321884776 621902224 941650024 946729027 994364270 531211098 773851175 978816967 994463612 847164018 883235103 500757865 715715234 420731479 732025359 448079905 519198327 781170991 827612279 135497620 224576425 391702865 469729600 369269895 424535595 962609002 967773054 606543805 878168668 323749328 927363194 925753094 941872483 917206738 983300957 971027253 977197107 704352216 996331760 139472706 741893506 109873013 714196301 770092358 891120378 315632599 935480142 46372486 414610011 962103201 962379517 962340503 998840487 560919507 952780407 362084158 904861253 573393083 616202807 809844277 936100580 233577245 923349736 962526124 996266780 41003282 978627018 265976925 329725333 161658395 609111693 949068553 985308440 935727000 985389456 784347323 832074237 397116916 727545704 928228684 960508508 571409841 974490952 40603694 777763022 130816423 259780214 536641915 572684807 674489559 920249410 119707348 988593272 43381812 328908231 28983938 410903154 93776498 338550644 907913059 940008126 562942308 568066876 838300369 858138360 675912287 956657473 172733220 438316874 38175209 946702318 804985430 903505896 798270163 835591510 525837777 759057045 130909878 166617406 826030194 977718764 819245147 877485136 474234599 860461362 647426460 823865717 696316140 856699219 566680155 744221088 339872800 341850879 787658443 925157105 97475001 327632251 213410885 782323834 659623368 891481863 942665358 961854287 970821530 971416194 938335704 972518457 304048181 801092924 489432440 612276420 666122240 959314290 121055653 721747057 69066742 558188214 30453410 167746981 202826628 776616442 128682264 186603098 127089250 563962071 621832575 907845338 770392897 934936381 606443521 762044889 350628026 714198404 679899141 861579390 292551160 993620750 508911987 916241558 390984295 803113689 958737800 966273873 563981040 826946883 308289885 996206829 155184056 819712437 703935991 765189228 482980884 930806100 381106287 900852109 10635095 494175797 807411983 894188519 381718041 401672174 303936915 373010172 908487 833623779 262200575 335406155 143957650 615125413 534735170 782613243 834337516 854646309 993410785 998406192 29439128 142082673 460540930 772215522 87697652 144032330 141692065 264514064 11820758 791101534 767867248 859004980 347912605 680411314 287517496 716706462 987751477 995298810 9890379 970101727 464360060 991364773 294348276 426511174 449480657 778697535 433810687 720938007 125833124 609336147 844435361 865380493 888464869 934708681 552670471 918342673 249905183 999517548 120572928 234409318 160682658 384263910 828459149 853359954 204589408 298422709 266780697 526059481 250400483 905582762 107067238 314152429 524268260 982010069 945169250 999444334 715745726 957316048 634657266 907096313 410076882 411601257 624976340 914117825 76898943 458234866 157389338 667517814 510116623 830958275 366618313 930733100 324280237 534288204 670650362 848256082 776506612 953857821 162126037 846225956 213156750 891409040 3209315 821870353 280447662 884535020 716775145 866844984 369923198 375568949 472072987 878266937 97060811 354788432 272511750 725239796 41169515 797387303 413326823 693626717 108738124 435703926 919917629 957925011 977182562 993912183 920186198 994368450 54325604 102903835 639657905 726482067 708654122 714021433 381148491 545286423 487555455 682528467 141862669 779548060 126131194 381591711 964028139 984771513 518583888 630810668 95195269 998504387 58808964 536772222 571670124 709781752 294581735 754458313 650934823 831653023 469959106 833134614 723710267 778074397 283826258 355960801 669260018 822433385 226517622 978668183 887369113 911241800 788844563 790786978 7593163 413121768 503743452 852163666 20641402 488390373 933254638 936974581 991851568 998257132 315451778 863682843 814219883 814970196 410375444 421888903 824094995 911455951 511290301 717413721 596943373 936413567 786803329 887420093 892904397 908026421 687576562 946033760 342618641 885965330 391323782 959367728 938037205 960402439 211895502 677832855 620482234 824701628 318771528 444589724 97656214 105086887 637703873 737016265 364128103 479818894 896800078 946718802 290351682 886388456 78827455 378568067 580612142 794496232 704583787 944026750 460130605 757808372 424559017 513275526 726016487 779777628 995804887 997566335 757821040 967299667 557896563 876233766 412272250 419053152 572022899 717583171 156385956 199295584 809880337 847273754 940285682 999256263 338830019 811417795 575874392 918103116 282016042 641952018 5952811 768144440 482847848 529591013 657122443 906651508 932028660 975910291 748440653 923474534 620186532 875011171 783203296 800420940 112448962 130009124 527359928 546948531 630265759 840245841 417946285 976499800 242854806 290571109 223299873 954627978 501836770 824131217 564206596 629222675 613668890 846677986 720767789 940715740 304874073 737295854 403101774 721075211 707032175 945715225 193529435 805126502 120572028 208377091 964180347 981944417 477317616 514654602 328981740 447646361 492512404 753303980 992030476 996181962 727153928 893896322 573621287 954075233 50092279 238316509 257654334 633235788 274213083 381842596 847284953 896020906 783858207 805418002 476035180 784556975 455350408 527311137 142340534 460598254 370622500 412590451 481796908 575248770 844971720 995581043 822564811 839442732 574228574 718344914 490562470 812544253 499620299 504711244 363907100 505367541 996974787 997453571 357384086 703805529 219134024 823851237 32919503 157863801 416534878 990345412 175696062 742933718 450369988 730328347 1305036 837902868 761470415 822420683 980959888 988699353 108140850 544225788 189640615 310894657 575470101 579662916 800022211 972088582 764098440 764761555 994426826 998326875 280822037 932831605 810690353 947523266 944090729 998541576 198614500 962619213 975366906 979815224 425636936 816156939 305334565 454832150 252389594 394279452 378046894 437562323 218544335 368995439 598336263 980892398 209349066 379986181 841087977 896248075 98991554 187085096 603051095 711629349 649737627 876829455 188638708 255187532 952051566 965626906 264876989 782215982 1545423 81390525 19100304 791357586 58075264 487061953 268720314 345149088 180082078 660039133 937477948 961026619 791183024 908807419 726560118 818032761 595795798 613832914 990685485 994202202 980755211 995317549 460450135 955962404 632248737 863580168 835125503 924235154 332735478 415821020 888701375 934655988 876752610 924179867 695101736 794971770 902109565 977443686 815236042 921822398 803606529 840095861 686189265 741906477 372233461 409193274 205808213 974373558 616078724 738075355 948984548 967242969 44578702 370537120 647558653 958903222 588799275 712250423 344345350 435616108 657345355 700900227 907512603 939870026 40379000 167577229 331068745 456161202 135674039 310047535 163148694 267894590 981618286 989546449 287117535 538455035 139102690 732387955 799312060 969255751 357190077 853920133 993705864 998192410 514207524 593487199 952764071 994832584 317154489 503215980 888657584 965623733 600800322 687351357 830839259 890558415 898941970 923852975 54298436 682674985 875601634 988766477 760517651 783524896 62517330 921293806 195920747 479159204 10771982 992519882 377443054 417570555 509392962 908099522 783345540 855388027 794008205 844000167 970196365 979173288 618649867 944034172 18532485 113113566 460230027 954089321 182452424 927621508 946381478 997402188 898731124 973497676 175627469 863491580 277925085 858257292 543310651 857629503 914571213 939397882 63279783 304810427 497596717 836784647 425263798 492299042 629239365 996978349 153534605 307353062 787477267 983176885 910809424 947735207 942342485 994581017 9921698 298701132 785953309 975009694 814873235 867835119 290166589 767611160 197737987 670412398 746238595 860918857 646788350 669164501 666839854 784165524 372741040 847033554 664432267 740291917 19377982 815776981 469689753 874203821 567886175 686290073 925142716 979010294 884792904 896931248 766784536 836260344 688048341 725887683 887512630 962388291 135255231 862780283 74983589 910978724 426266706 447576727 615693590 921499239 510018181 970521581 766807032 984958890 257856481 823103285 712959697 815632902 87475071 244573296 270024077 508367733 954860434 996312770 635783271 787787673 240054577 906895081 445243277 497959528 499753346 816977721 240966319 813192010 775643818 823682489 552932462 928546747 774197903 798763108 290980594 827474298 313376363 430841441 477536488 683270184 834006388 959450015 838629903 847443127 634395242 984597306 495674611 761480723 750055451 814441601 42167060 201405067 646492648 848004023 977794359 984386887 671810359 904723832 714669793 802401655 745897751 788839751 370095805 383793695 539815711 732851174 201888186 871680771 789820910 807978120 266680639 736357984 767115750 795507157 569964370 692384540 116086262 446928376 838115344 890071582 485517458 537646433 560756546 934440363 837967795 915826947 730463881 770593377 916615382 953172089 78162393 285859299 444080759 594723535 906923645 964353976 922280085 989339568 612983655 752619225 95927587 192061988 621374820 943863412 236987030 440697554 454625260 750553098 4482738 509729191 631103557 862098273 593830549 930944956 652263284 988341605 665355901 676265977 221533435 678309447 486816313 568611554 551211788 910940545 461172499 648629576 241369529 887918719 162001804 695139716 73969792 304017393 143382514 948667319 41160340 313598836 366954649 875236009 852934644 907862930 817574431 886200111 280568322 881095712 317923056 999898600 53528602 733705926 64463619 522281926 227941950 520726470 696268506 970353458 282863729 830870984 583249570 770324973 726262550 858748624 589418859 631948880 73821076 737488228 288637600 989505334 108680978 459394569 592755277 972465355 947164224 956924668 498956573 729453978 740201101 800761483 293828869 905756824 564789787 798466306 522859941 826065936 749539248 791374561 124015475 187917014 228927762 510605486 333564399 617096391 134536701 445713110 910227808 997571763 814623480 889936139 362312886 799614139 896876553 951046298 42564455 601366187 964654563 974538993 282723108 496746639 831733577 975284149 804471139 999786776 256577764 731360434 744685660 916239843 946038415 953261722 992194015 992479160 36649169 719221340 373611396 572659204 441289358 711981524 615570561 949074591 550395742 586725628 841701777 875454151 182031565 401570181 550020196 831965335 261750759 542678419 842466802 882903297 125519753 632145172 573833857 871815740 856829640 985204588 970127620 993559554 475946653 743702798 631598749 649080380 271755572 911597938 814798946 992815343 521634439 529262791 68088767 751372445 836235700 990187183 791297114 938351682 372322233 675429308 982647876 987549832 602625384 838892954 939958818 941161604 956810667 975295223 718300409 918285716 71962450 763902331 114849974 659012908 798716545 871600288 255999742 636887561 830180823 866423240 323157674 506978100 423719190 792332438 534862137 651956731 161426498 346599349 645572895 897270019 234686653 957435943 153921743 216236591 234929742 703189828 136022798 765498544 257725560 832239086 777835156 889881313 320571070 388022386 424672265 866928572 243369698 402583531 272908402 830190259 110514340 191938100 536634377 612268244 220312113 798202208 777479281 799777663 538887377 771061467 408071411 714031050 8743646 805961676 807575675 999150919 518707292 818454712 526294158 957777640 774967437 961852935 652850388 679732138 170155196 251288122 48597991 323871979 661229486 722681013 405358132 599488648 36174038 584107965 559047867 626485763 930673906 976137530 985707807 991703257 532087491 954231912 166847880 907108213 627081057 815435257 27747530 54710624 570472954 581083071 386874480 476829580 971282470 986425223 68427392 103166076 818805617 887367368 326408725 536249563 898146163 899683612 972806701 981505637 741026198 812569703 203693531 226851484 418433963 939657268 188929384 672357535 656775305 955705171 92122670 936382668 772554440 950290869 195697686 625956926 483509687 800343851 569246688 616727698 769280420 914655951 993370192 993934373 628554665 730001569 292627944 879525113 300029112 972685244 950232817 986458179 16953614 548283078 787918649 790474363 437715942 984437801 249980350 924793470 487829105 664215277 682741270 982282561 404922126 933170353 491821213 934729059 633918299 711083976 462581818 574222160 684186851 771847703 928496382 972027784 992276463 997757439 944182792 980839432 956467268 971283240 467479967 929198783 215873007 953318293 507809024 641279218 587097671 669054906 601931377 742005519 835570008 870228199 801891157 839639679 77147553 374930803 141034148 709043970 495820030 496580765 912181007 936295098 921599815 975408308 550688209 764992925 871293334 925162725 445966753 553758305 651830319 770092639 723304204 769399305 254379419 353799876 115617363 870623736 807860991 853055069 344892391 630144523 931751278 992268236 459789057 885828026 657443552 960151802 860805512 873248724 280495758 284264382 168631118 231485823 224931679 241978383 952485155 954499846 61025704 127344410 633219245 961287766 140607241 959328990 933090923 959915093 556637223 844064028 52167143 978794299 246216710 812811621 786946773 964083339 840597274 849562609 459621820 627128227 295083890 802131797 572578995 769260052 433565771 992798653 73278684 111470908 540205198 765718072 181578380 450068377 7230660 215296428 193599262 430419685 666166452 742572639 56872778 424032616 849958306 955301412 908215422 993506734 176009386 343712212 147154875 303901395 145979871 477003216 556910002 666333870 119528251 639404808 388158109 592312276 902214428 936985138 354279300 361934742 841856594 842830421 637859659 743093527 704132632 889079788 583044048 903238650 234258509 248306401 439540820 763948758 900410186 940670869 756416781 933891209 758155888 826357653 97055170 844070352 75127083 638205107 979909569 980562192 123714531 930014722 519512781 963532112 627490969 694926312 759610566 895978730 766927445 806072112 216699555 712592922 388791126 933902809 683596168 795767228 918907156 926417106 576543347 820350359 413156445 638351690 869793048 944530365 872235134 942697442 169054669 443945698 80642903 858253508 269386926 398259874 908285916 932939723 2460480 800656052 891076308 941082334 759538457 909317316 404521942 477809735 704076849 853555012 637824216 660768053 318278659 965249837 659674761 691508491 734251858 804204357 411019033 604107172 38782328 941858783 198477123 552174501 734035918 838544985 248426574 490616843 341687947 782863985 640555968 693972858 880753977 937768364 779585201 864134846 654759064 900657639 45308287 815184449 494672887 598782649 474441293 625420230 663063293 744235078 925905118 940410645 849880252 914846339 957449631 969993985 162456103 261011559 754175178 891095191 836555231 884963770 632252278 718749769 970014267 992177514 776435660 973311846 811009970 857118841 839950153 973816562 149761909 715644559 239891644 775660279 255737996 762872504 908951494 989577231 216562592 563163719 318495391 353197168 925425792 961540677 413828874 907218438 701068077 826701237 487022208 627946264 486509815 503197441 115333179 811937105 624450317 703512671 265939200 509216790 49199360 441892840 403081647 829071396 129695169 807643346 60211710 77221610 19036328 696191737 726791170 816896658 858437974 964497820 543238335 698747321 822264237 869072557 113604311 829110571 183061816 453286713 283812894 454352696 255622252 436979385 205848325 335957339 80595403 741575029 630428834 779630168 558418766 678887887 139498882 194294059 462631141 947608955 903029066 923426664 389572911 617088296 775134374 946235918 506612583 650641775 935242835 955342664 77226514 199539125 390097774 485835780 356022164 719048017 369017841 964362399 46699980 66732080 644086528 798971763 976459600 990620812 468937851 666266056 13990041 215763651 494200068 837768380 719929104 897308789 247933820 821087230 726489097 780125829 188791565 683162855 845086443 961833062 983547053 997595667 742439919 883519603 63375474 558648972 129365992 379670520 919959080 998588101 769254065 891949526 360372984 415230332 543072776 675099831 995422473 997258993 354948340 525078322 99508241 775024318 597783410 870880182 661455125 707997421 567607014 890867338 195905364 942921697 757987589 838342684 691965902 776694886 643840611 883975850 620514507 731934021 914883925 934687730 939151952 957366385 766084703 800068486 704805 587115101 457432307 919639722 264684349 502521565 918784860 939739673 360965696 891057116 958116519 974195223 261180042 817534412 49095947 677993475 120292740 489398789 530748802 615069690 209807326 752660418 407624931 901384622 91212665 957997180 423116924 492866193 24392899 983579459 540499934 745965235 847846252 905446306 754283043 850313242 319982484 979487540 487854866 556981298 663388760 949279190 762417211 971516166 873895943 892252272 828352756 968924957 995271474 998277447 431227936 520710838 591059615 827370651 838269925 842893943 273700696 386401966 410541836 987260795 991294381 996093189 591608776 986379040 180009737 701911345 271016594 298063808 688188387 788388799 588065497 916166148 737961022 884180710 806546956 911808498 180117446 906894690 179188115 643432924 210632779 802916010 376770441 866109177 700904989 761181954 344395166 859228182 990411453 992318435 597694745 608991490 315089497 661126129 798252621 954699203 761711833 776386915 138685325 638397501 84496690 952838892 995930803 997325329 340797186 421257777 520041676 875373998 427465024 657853707 606167885 776061852 217540944 295461526 364245617 688633856 620625950 724019200 249301260 717738949 137176444 382835218 373190900 674896679 260650618 292744341 154058132 231771089 721893844 968340720 128338140 821122938 281812294 425284406 183199385 386963916 91435978 433506843 857066824 966397764 770147251 953467421 465231333 727544164 818407862 985240538 205791426 641996495 942512610 949172166 361172246 494204956 203827580 485175185 484364190 794570801 765173222 906923098 571648412 793086460 231468306 431376625 973273225 974832444 351567727 556175569 771462964 883152164 821536139 833186697 10814513 623639878 96400611 518668305 887165799 960979211 168644583 180227311 103323523 271912248 607417558 833813282 572632214 956566853 591623692 708044708 127816407 458385569 149699386 357423108 973055919 992188555 127443596 338724188 180585636 504025528 621118273 702839595 391393389 612314018 146750945 782960788 69788446 777353640 865823315 961960098 161581643 551462213 667776801 925384181 969680946 979206410 852295854 858453055 199239889 727706124 997304161 998759990 140200313 918797719 480129114 872025585 15004883 553699372 981403923 986043830 852320319 965063572 674002439 736048133 17971262 794336342 821602556 931469907 345497362 610456425 801350885 855606012 516127925 536721461 772664589 997778003 161008470 555925089 448599084 684200706 957459668 986132751 697002945 728457117 201379860 960071378 836363872 986936910 636897543 872034691 51311206 731161012 551992693 921492697 713651890 728066342 113514305 405447749 321118287 589853362 119916296 674762827 222400449 257732355 541299131 928710627 367705019 742463150 877109337 976559780 683494921 965899149 983575491 998143652 636753638 645132644 858520630 979119985 877733567 949934130 264782887 280830163 968743044 983583827 229054003 345770821 636658517 888556482 263983243 983702623 429069213 682261840 247712487 779285881 314569045 846033626 665560933 940626172 2393656 919713527 612576812 674769613 265968208 413800256 632405150 787207422 542869252 899535266 548126305 886510306 926725832 967520578 232894285 427972201 906812028 943750977 419243875 741160795 883062118 898920665 775589463 956044822 942405341 993623314 596920952 639862690 720073794 735434580 409932710 475446749 335711927 916633233 558311176 856756249 10854893 490759696 883042113 931313390 727323179 984991655 891015055 956007267 230484326 972681982 486179953 748596484 373402041 392995468 330225342 397573772 223800447 658486216 107313723 946694896 517565027 530936141 510569780 832373606 84950316 704910182 761218286 963390003 345778566 724605440 76046208 530252993 804842941 806925694 156516565 699987663 579081666 651788040 265970353 544743169 520765752 849057371 26975919 275479570 584526400 789896097 161141525 584869312 82192250 394738339 302734125 831883425 505488384 820532348 9403705 21713079 148742601 430556364 141152458 609549374 274640932 279289593 625128623 780986812 42662304 244442170 204755276 297047922 443307406 729916468 61127337 865572302 234496196 392014196 988453810 994416725 160199421 502742532 287314028 781701386 570373573 963327788 493030652 702318915 5854625 276019768 59975801 956564883 101235713 901482214 24777046 613964630 753647392 821843147 640483848 895294847 114864398 184153578 440891748 949176580 614657284 834598428 948968725 992216200 491378547 626987321 339929436 798827316 160497110 983247435 911653261 999980178 122692457 286451961 960636524 965646081 680001770 741540939 687248440 799898367 83692429 250498934 81966797 431829299 99827736 558851245 342908487 977361306 809136923 971544152 887799272 984842616 373895724 777882288 758687188 993384126 959650203 977946942 401918992 454543257 250586936 756538792 570782799 803678713 43941899 828548492 543209227 884637501 734924956 980301809 429122092 888622150 709141667 916803740 514861028 808192005 11762109 276917768 510567282 927913311 268875941 422722760 283361626 611670945 877529287 992577262 20418703 806223877 87105978 435638930 854029591 970379814 119478633 201675759 432328957 946765948 254907592 753121659 962334394 971786083 68913758 307805224 807665886 814247030 850995882 996733205 567557814 773530946 106537851 792656452 242220338 538410465 179909490 757551919 19067447 922498998 438200219 671424650 664174555 827496923 285593586 998095351 907439126 935688413 86085077 100390947 936454854 951889449 515272467 951714788 352732660 466910858 110733842 730151333 326266153 376106578 251703121 739713713 686050559 815335925 991489651 996318169 868509119 908985397 76816146 372662619 750296493 795278428 351045116 797651915 222014186 687166787 657196721 790955811 223341239 547459496 660690563 667970549 281160773 311152874 308753114 972569156 312460488 749946271 477914859 617062036 899948490 936393811 231096076 832488756 222091742 521841644 2315758 984336295 984904155 993362584 629297294 909747925 61708248 859327598 2943239 860309528 679310825 817618083 294637975 565579972 782043276 802834831 287940972 957685020 308193095 405015896 892389182 947186572 958577143 986024765 7308286 340698382 802849807 806262987 900817925 904762833 624246638 912537261 922534590 949657636 397197946 634610600 759443019 943840451 381631618 720377573 246454493 434341708 254659988 311341529 127838066 931056651 25871705 348916741 957925694 964709996 776496796 869925116 710968701 759672447 519122770 900051420 102452919 698259224 726463107 799610536 51330483 386952564 425841393 934449944 424734569 824914813 464037552 890757480 987425658 995035817 220971279 444645572 287469093 653351481 851008320 901482814 990490592 992953455 400767178 736953401 842297373 872187632 749239409 832273998 50240583 829196503 937400203 998540522 752749025 970053675 280853749 299283206 945504958 960620859 666737224 980846637 100009550 507848482 969459074 995253278 690165312 840738106 330188207 838122745 786026315 973455658 971587975 996922533 758620719 998066843 175441845 394024355 240431029 820609089 827739104 847027532 426435513 727793712 49597289 487015352 636438825 857876952 757159517 994076292 808776195 999208226 697572805 771772592 225177271 997338249 815652483 971618005 614514385 971510159 118893514 730101673 967005225 974525625 926318381 976184335 988278934 990515453 291482673 518103800 21702350 470938563 738962550 785456291 336623626 458324761 429768673 502887023 542603264 980461389 1931678 672739089 517592515 860129171 105679689 312493701 545929974 779042736 496724344 706284626 767292950 819784927 763052823 859351415 941595568 947758366 939603477 973016854 542167626 654787137 902448138 937533520 656794245 955468178 811680237 858414432 636948314 919158172 325992065 733459095 503809760 608321731 552687736 854321252 507565464 767807071 755455921 762106250 366932820 951534010 374031038 652639254 875970588 921520657 634900021 738637990 546213897 905106295 735371741 925291123 199010885 781835300 595330961 781134722 624533501 979133538 137199503 354356643 706335310 873375242 586898832 899652500 209196774 568104598 594802519 974084422 237999961 976294288 511394314 703861608 975165438 979997087 893831496 978249934 183021048 891354057 801803315 812455519 955951436 992406540 741977098 879264128 170099083 884400857 516237473 907617606 169790358 657607369 905301999 917166305 690332532 740457035 320103725 411843687 895220332 973940750 667004601 817638655 443931999 748824600 975255654 989968572 558803691 672073889 93307617 425636153 547422543 568550467 693215900 960951725 456546807 604585786 57841452 303694516 735753583 873852272 724226573 946462579 936204415 990471421 488886465 765602140 87631468 639503335 313517638 809379290 233333924 881030589 169472942 372628557 312522391 330410135 726796821 954695032 446770759 487189014 108807482 153703745 77284368 489214404 977465538 977877909 520421860 814592072 419528596 884437118 292698344 340225763 470425916 806160929 984900061 988832523 191970902 284437120 916343441 929273651 334562061 540906271 334100295 794256228 856288743 972238299 572560784 718987136 78687324 129198408 772466538 921666134 152660074 522690003 839507848 992783516 903162105 939116917 102379212 842164100 564955536 948197549 681129376 898186378 414545966 740634955 813699921 816837924 740173255 836430267 815535110 894118193 813442635 958721923 29118382 982148491 835098319 933640433 356438900 445115057 231107395 961921648 57338009 912647704 2786515 243952856 799215447 917987199 877586849 924292066 761814431 813569106 868584888 976982746 748416702 929881770 636207208 988117294 455871418 544438116 347155836 452047187 146991163 729762198 654610307 988428385 650198847 684741522 341348936 979016453 108207871 133684820 553272504 681138384 560100971 701343551 924962045 930410386 328506310 612249738 595207731 690180227 60231620 731529474 25729523 671299518 225512646 622808271 36484560 273753258 151560042 542213372 51647782 987516646 512015763 628972052 148756388 777301193 300769494 305488689 277846949 353834229 605417854 707580868 175353031 934356411 53246189 612423698 314720302 868569734 153080447 758444618 814829270 841227555 116986219 218470382 518742492 852234193 935373943 962119995 252195331 356406749 295794854 714493476 430901572 791649722 838148527 925220809 920805485 960835903 355192618 414247186 862580381 984808594 549417261 794505615 384555179 625209369 569560218 900860230 57126602 483954724 164680584 512825061 297319850 952491053 68677746 609738003 919229969 958787223 857318831 981468005 170563733 422113427 281187167 428382822 276028008 376175453 937896887 941317637 617951499 833764669 857250184 999630046 537319097 623845376 82375408 908290862 366457298 968609900 179956961 657140357 177521763 855574643 959412047 977425215 646215946 998690927 466568577 707975185 980457489 994106697 43659286 239837224 947096517 988632139 398130047 687244966 983415780 985740071 885697635 918076065 484425716 746661582 702593328 811142978 3883109 868577442 654514003 793727636 296885070 359267959 170496232 778268010 854986684 985556489 670244765 930319100 18349719 199279843 620301445 734137581 87558259 119134168 20389624 117115937 106865838 307143000 317136250 955260509 205573933 239378546 428221253 752520513 85213695 515972832 955692238 975705177 256382458 385776283 320554490 405641531 714441615 906877305 144098778 619390421 477359238 967900465 545628981 946819045 923188842 988106980 33990331 945800746 784556415 848802149 999922123 999936640 594309415 703149317 133917381 453684714 797778151 802002776 148310173 548471760 600955492 801103764 51296331 179295960 576318842 808905594 239001410 951454399 226065207 564886441 235013264 850704811 934376201 984457900 343923367 491148199 774568134 786486935 279413419 994603216 943557701 969018906 230184158 548266755 188297905 508919273 591516190 708413377 23138337 289702483 789059475 995183373 727177808 804235079 390829660 705132300 795115562 854715626 434987497 743310991 302552720 936467751 221903196 349710621 756763027 927330536 481316215 906112326 460757632 912088184 939175727 976886525 809218396 991574035 339292394 489656812 399918302 496728116 825901531 890371815 564658427 617390091 876499894 886828984 799814363 951299406 229980828 263362243 917057552 984902076 626357756 823114207 659984398 848586997 241683254 550603152 969728169 971994633 14486325 469847036 917593393 939963699 170777539 861673518 825276754 919483544 707756647 725803420 905011371 969605750 32532026 550310869 905523734 919636297 607669193 781429378 464280880 471167751 575435906 841323871 834877121 965277472 134061993 160701603 225421196 631466883 932657774 973022635 46756097 205753890 587836669 629346622 112310294 309589938 7957028 681485664 243562701 943175841 838199011 907073931 259690453 271834537 845646094 942409206 552789876 923054538 540217303 561879146 214820344 634992356 219718218 583638803 505138950 616143319 549987842 832387018 601576158 930817280 630577571 856781350 74915773 888638183 291700015 317480488 189316651 520528475 455019429 950021608 20100691 243502548 637584221 882138381 855171084 988226999 452886452 802057384 911783480 997527002 215152630 455121816 856359451 873573962 7298402 32064025 445776649 716738920 201133464 581846137 206986417 741505398 486136437 864465650 932710061 981504215 222399041 796394516 864592763 927602607 263856924 984234452 974475364 987351045 345958666 467821750 733541706 946580331 982411689 990619068 112921393 194821222 85582467 248801331 589607072 789323103 611223743 978060472 366938417 839520053 677647331 835645373 772350135 907322385 471186289 833062280 315293024 809497058 38200892 872769862 829068336 938651529 973222006 978928258 975016492 985448428 802977720 870093427 264469044 443620835 804844263 817239778 958166213 987579338 384594450 505914206 124419288 792175671 564600161 688897071 616650134 823862678 920748376 967585159 696744238 703419340 125333488 645852487 507706441 784725375 175979436 309789315 891171682 943886731 580587181 934504596 571027463 657972099 232675646 885667448 420442230 555038090 47555202 285718102 171787266 890413433 651292012 690661699 176899090 981544671 513422727 620133773 92031010 180605053 31663289 279710267 993966004 999742319 895509838 914061169 412855616 758568840 425899015 478115400 289679213 610495156 458239915 814811490 60900836 207396670 762665880 966755529 690590694 880489409 136918381 766940798 821320309 979330315 288261537 820343231 171536433 578310557 880586645 883651321 335276639 562111612 427099031 874395834 181223280 988805281 671627792 842967130 662939488 978744305 812475250 906750782 139299982 267739763 742485219 833742025 307504452 721094314 407322519 701104158 679776820 735837762 957143355 982449044 687850963 991687421 130379346 920014101 170389127 595923903 676777949 711852558 116791068 285058799 321496271 584598752 685257289 939382846 423362672 511274263 829825527 856211636 219998255 457172789 674827822 782870886 277806604 495145707 379740741 807955718 716194464 851878676 672913074 982481550 11799212 776942693 148421911 231248214 265057475 877896490 16389701 351996421 875609211 900245121 62584355 546940265 877020506 907707605 434491985 614267172 655939767 985325699 575404889 729501578 523411038 926810299 981664011 985527997 959509530 997732938 77755132 316762346 654866063 769058478 251567964 891809155 151326114 861719856 745869932 945691309 563429270 589819001 50465525 351669953 280442806 423395489 161712829 445328458 493478267 852233082 250863113 400290144 979713910 996438555 133931068 759943089 822901668 977963205 855507812 912043758 512042224 525589287 674906572 775615161 738708218 846926665 396117286 813733942 173569218 199132875 924229590 986061848 51725141 291064692 968794793 975667093 204145307 308906571 501047961 507304238 361155703 405713907 68531667 218893780 87080520 250089004 484228271 537382829 380616807 904356544 156285817 928690287 635111510 674624096 327826863 860275802 220248324 350834813 924071680 943108290 199715699 243052892 441870071 555732881 205920608 745005170 801141596 965424279 986158982 999925751 917665277 953549881 243562465 756791523 880775778 980219424 117000801 173964656 873045805 876115031 787243245 935079395 837651190 940411382 58913848 515389845 189356353 785647280 922123313 971132617 714474105 880468149 675008940 747707024 524354083 655060275 432835071 537557917 693515124 906051723 552107860 647195942 81420691 202811269 761346351 964848561 286106287 619562831 127183288 539381217 974471701 988735144 3173875 45046434 675117625 831427416 37265998 294513028 329558901 868502636 45858460 956888616 734124313 901201679 180814721 182103391 302975615 633068740 951062793 992756038 618549165 885622593 831093560 970324967 394616993 870963218 879253986 983800181 489939811 722096831 527563475 903138280 119735492 830588635 600742531 659665918 993988173 995137913 265681619 926558558 336107739 536618779 356030042 781684755 392467446 622619572 674924823 802886313 147073774 381623543 589327751 599310785 109068701 541874815 773545513 995172615 126015054 935296645 403151951 659672947 937602411 952109814 722265962 800244728 405544052 655929517 490244613 906342048 725312071 830586000 994008536 996068139 909012610 920700366 767812493 906017424 552490886 901955890 870510312 962054385 368840764 985398193 293021473 665863680 478693783 782191752 638753804 839189211 933489170 937878543 249530481 810880604 752077545 872103699 206019615 340688167 743299541 887360085 697066424 983519438 645007394 959863102 18581108 268885477 99747103 697777888 987950222 992212522 752698106 939333819 618234415 715856696 564923299 598855230 14173946 673909090 557838325 687973178 608515767 971999000 439234422 692359347 770153356 925878601 207817086 212621450 304461715 305628209 313145647 725262401 934279083 945859896 671587145 745197318 529509846 735255564 657235748 927924936 604695095 842024034 523442626 781971827 374727071 558958062 32482884 852692357 145885447 333086831 130052718 347070162 543540068 902957835 119489495 813412720 734747715 820597854 330877319 838623774 46573363 795156659 874893549 979134949 987512774 992352145 502610197 826654783 829306252 965020632 479275011 567674140 226402630 749486155 594557003 679903110 235298437 583645504 376968802 858033768 748711143 785010951 744100432 936453804 560676587 992605449 638211229 893639028 661653234 673818236 90897346 862944376 829863329 980963621 200934956 974261417 455001747 893765084 789566140 958687960 710037068 771445071 183743729 621768486 155383394 920225096 247923615 601522704 396618957 901873931 947681292 984855552 813559919 865809619 713712472 995496455 415334680 973940796 752533706 759374884 138457167 643678736 920571705 982293926 861543760 979855650 524117447 766669835 420475409 574686771 751949352 939555233 601500316 796884377 701718527 978188186 344374867 816686891 587687739 955429124 781994494 834393044 114566559 784710007 392627915 774444453 600065105 851317530 154233885 481869812 566322905 892622367 587150968 637161197 661283277 706011476 587449110 667386156 296922550 850623614 577690205 775012894 682348173 776817955 584645777 994025672 463861265 615261779 528691936 808583427 661394677 909948557 916219280 940560106 842595040 893619021 719162437 876766463 600917289 956870269 903740624 975650943 866339031 878424437 392957381 672945239 303797691 952992307 372407141 420883097 206878724 964635158 312041667 688573334 288085324 555653577 894901414 938405564 137931489 189778403 242056045 567266791 582680923 839864787 44074766 940974376 484368729 988699473 780742064 990115184 646830917 943385728 492740247 612090433 163726292 617245222 619984948 934533519 645414599 654778216 191907578 582095194 257927109 538086604 997416524 999681583 893916706 900079622 200075740 854461795 595094156 620051551 862797488 926033311 555172076 878152093 272290783 303154190 314045589 583834615 495142302 772336330 99284874 200021825 6469049 714880055 960351936 973822044 644015617 645468502 411909187 941685180 229370133 320310573 976807370 991678755 960206612 963950411 731874267 922839999 752232231 772269005 911895081 960592389 27406512 88239235 266806973 393298173 109091860 995520013 37132632 292381851 934993700 990595986 536323147 647304906 617182240 695115625 30494348 185989934 148286933 947002389 964540956 989300564 401946364 589492626 766592444 993177377 81847546 630109434 348934159 961333487 809778498 942249461 972451203 975186399 15405084 519527195 937900038 994967038 958756202 975339793 468433517 608392937 988250990 999130246 898209487 986834075 762666325 834720180 384453984 594313554 335509836 882613771 999550583 999659746 136438894 965449958 629306625 753661341 185646953 658034975 663117813 767989252 844652598 902550363 513205860 781549164 942695816 963621247 787711016 984189132 807932117 869295518 304841464 420766888 573449546 886476979 68950383 228591851 935396276 979393639 569563823 993353731 728057827 997039200 252545013 395832955 255718157 727052741 527396240 923777959 277101473 575015067 32357906 103069262 923757605 979043139 603431258 720000832 558835378 914712311 871345858 875544080 379103180 619997998 967812487 999568314 502375814 641212800 528489714 638662626 67403512 741434124 899872089 976935276 681256187 914278204 337766931 535903878 677620713 803337583 50475441 991128817 987262880 992115057 732702500 953627139 43350254 516977218 734882957 771560746 748076528 908373237 18541527 657085218 755350493 945921715 626627365 847206900 284379233 584950434 546117355 603248074 724587491 744379043 841791727 977552062 93595038 759548388 519160831 647664800 977551767 988574238 311595011 918141755 889493653 989818543 347194405 596872273 980971353 994880634 636813705 967338401 117029932 930195527 517723535 938102467 487430449 964616656 548754133 683377619 690928540 810019831 632893275 834889762 7174475 506560390 261224999 357480969 208693140 377395246 927645878 965447732 73788193 412994316 908907712 923223191 86727877 775195350 206983834 685110927 847346354 911839024 482822759 515417815 272101467 642787888 592086387 959675848 75612174 963131279 133935992 636275868 221079338 866985859 280443329 601481368 487969121 646668524 24655333 44832897 485402570 806504232 850707650 881264735 165906365 539401496 499328572 837044792 48025242 431944997 499012045 770647689 208529367 540632955 472916204 880952444 48499295 410925425 601792990 863518941 231066739 420531630 513137230 827558470 397386319 746077420 119242127 790953114 863627739 974731151 371335652 729879233 316172831 923041820 872284280 922808124 660977357 695759223 164187801 239383039 508743954 897843115 443705127 775559047 934939760 966864675 833129552 944973598 447477493 937311267 43276470 290252811 73051121 120162648 748963241 881005523 741376692 983054063 252015331 327279238 229908689 876995129 106977732 565524294 284845252 537062282 455409636 597255150 174158660 684140502 783970028 834734251 696335501 737133413 905028925 939023865 916875737 924612906 67745802 675091767 235661041 602794561 83701484 746650430 331511144 956801183 801928580 965642036 99402700 606533951 387882027 768249925 719821364 762173737 731330043 882992229 282235586 535446207 24194237 741828791 14466212 883451449 935033139 986153948 8950914 309774041 956217020 994765781 417007911 952654925 224799494 537106543 634769425 770493702 613865696 850222614 258750629 412945200 496371189 742561321 974557636 977706294 861838687 915994394 146717057 185019216 921046731 960187488 802023555 973747977 277419317 452576215 860857733 893508240 704980080 988268161 381239621 401183920 307868662 350865622 687787973 696202020 878127842 885467987 335921689 875116674 380560227 746481387 202167246 694626527 735157033 790840096 27390988 185355813 391282882 853219010 839328704 918326735 446382372 981158986 580371988 583466608 218438801 513774964 796858429 969549418 640025385 909753224 799778990 991318317 437727739 618301995 75632413 808276703 111179927 713684813 673029610 948715792 337523777 959250407 195499016 785297373 568626596 763160095 433891312 598964708 2278108 834901011 42451232 538799158 268154036 551321425 124885041 738131900 622848058 815665153 59815174 136692150 311890376 890690966 520774898 723805624 166866105 755386029 546123707 624677575 730102767 962385572 996401433 999813221 548092928 873490932 418788476 975295413 682676310 938435889 933596556 989631575 686387871 755856599 442388516 525162594 563683059 600490418 896274604 915215604 759067497 876995509 765581254 845297675 416861622 915994965 983899440 985420147 614854498 733689948 997839299 999750928 271430814 402390141 782755808 906148191 13115050 764600390 179633255 612052064 738353940 794322159 732833150 855555583 214044617 290237138 150085905 523400891 952910846 965427695 61302500 716207700 992890170 993391253 131159374 774471030 706969325 879161686 180721905 206041055 110352955 735171028 553380334 877752382 131039238 445388086 915718607 923748445 578471372 624346949 424518881 767787421 807350999 971290855 150409716 157383068 910175606 993487884 764337284 888545769 915743598 995857049 295286461 442100747 883990246 937700631 204268577 308985265 194502234 414866201 916539821 930394657 726900647 981118902 498942675 960192795 114459817 386604840 309273160 480495569 660611854 952598051 184524791 326182158 189271574 478593639 139233728 558455557 788669149 901248939 912131749 915273085 627492156 799324123 963036989 987087063 208760036 508691047 924212656 926151643 48053258 869195886 67295309 72428645 61512929 701993263 603839562 749639645 53544465 309594517 865427497 882335022 924497977 993280041 287788333 748654784 595120941 679101844 724062233 797415519 193964688 405511910 562089115 876852653 677204361 712069852 958373476 970070341 806638012 823085473 366055078 856646773 31529454 279938202 889517610 958249249 560543163 619598146 96445760 159239245 729784270 761082535 240891415 722277332 649374220 971428171 623657489 722710029 350193524 499668336 698728008 969506011 214205673 339724746 464358378 633696719 246397979 893930561 71272369 479225979 214131756 940202408 777639856 903171045 311669553 926790278 838072131 925057812 3111861 27725137 856271796 982281511 460931062 710429562 843860920 859034421 868686348 870344784 862374101 894726120 39613374 895064724 85142316 468890259 889070475 891512423 498972552 668371631 827024457 939880959 897710231 902581069 367514795 541784163 906794084 915817448 489331248 727302384 649731811 836883669 25048921 902231469 893417461 959322257 620870594 971699935 545264328 781939027 967744877 968732275 127885894 553135718 91083733 901883945 868044188 951306799 540686309 647684359 996045740 998383468 868146163 877748416 501336340 615445372 609731951 783843589 803251299 821223368 882404584 939010225 544576672 952800227 412297851 812411829 335479735 349874431 1776226 911918677 140604269 972674512 139944384 435983674 175093493 188203408 428785980 469940999 372846208 410489579 587600133 994517756 258251911 607147630 32114524 747462588 790782209 932978014 922955800 977258395 424185571 648761131 166738134 198983673 577267758 821349126 742829979 977802750 855621599 949341060 991676596 992266103 790893151 923995988 197573007 484895397 782753866 969919665 251423823 616425122 848702313 854119197 848408945 851360816 711441882 749475166 528664367 619247021 8238440 559894107 357576593 645949307 442859774 851335268 207677079 287390162 998315408 999451551 433500625 878430906 867726554 940701552 783861850 962082648 327255068 980612157 959172903 990906947 376003844 515162818 483388005 796837129 365621782 911911741 665019619 953259608 318287340 804220177 97862584 470088784 411623352 845382676 473468148 875945092 182469455 849110594 588233558 860938467 289010274 837619503 915864957 935405438 254124669 851391546 759602759 939891892 991507645 992266235 652047192 974505575 367049668 541403243 622497991 985180017 540601754 740200646 260562361 449623451 906107824 908118458 57804510 378518483 572516433 941688931 696164677 934113526 858818155 972693108 248851291 396686957 598410974 674921662 939842964 997832055 663881915 831843003 456192324 689013613 853031420 888184326 512378330 617861411 610038608 783428913 528776598 799624330 738845257 954237533 473270974 652332258 351362032 890581969 304964741 347965628 206564499 451813725 57353492 76677138 333898017 674867963 103424559 846471974 242887707 841973865 766998517 890318732 320717174 547380135 170562788 303819058 438463878 832175840 793419728 831269524 738522014 897326000 360612663 770232121 486268005 750021314 955050408 989028869 278445975 552909183 830524268 843555183 546813505 725044627 782052490 972338970 178215481 203672250 571492815 696893398 503116327 629758117 498994543 619913301 910832406 946070825 62475148 270505180 86314618 826937423 419409082 931406737 920059457 954756047 276332581 297974596 163823433 165002003 694337127 997757880 416204589 556529110 801968877 994423589 944498217 981897577 504171680 965215620 674327847 751496227 837645948 930242118 74792885 265633199 176336149 232702094 85499511 437507038 983910853 997671274 94084326 233334765 340111116 991089422 844317153 945587825 774977322 838794821 40769413 458459826 678096645 844218425 341402019 948721420 727592134 907085588 585389129 876431895 448911105 914430495 563767801 750513533 598886198 944370842 665384580 817948343 261161510 557008993 561625576 634332485 216288274 617554579 251703735 349949934 377944693 602059931 808767735 989832227 925815849 984755925 400760004 678872906 114406388 286827065 576178945 998768381 97665197 959469615 537977499 906478571 547010080 874291529 92435486 105595161 331307104 760890252 620335197 630068502 710720620 803907033 892552723 940478257 480147097 803439459 398171531 837903338 644742773 697665563 898753191 995423598 841600998 997049647 595337645 810502394 335352196 810820857 919825314 980472332 17495811 939308451 690858030 723714396 529886783 906458550 821648268 935613850 788267140 858366797 655514782 872604263 443487056 769077392 482095911 524061368 930585568 993746285 555659284 613842042 833579689 925058926 966935722 986978574 334898886 483738803 455051582 979260544 490460880 640106238 583373698 869393212 201896514 587010305 403202184 409850269 528229229 742879285 129082149 849850114 287529744 622737677 417248626 648808207 402842705 934135912 52279883 300042620 557777043 735195161 24548403 55290590 709205076 823281971 513291229 626504532 151983326 216213118 19773942 819299067 971242935 997191459 25740037 317882186 766831729 987458426 216105107 666511189 136276109 821833065 752035876 805228886 311008406 378624035 849268279 899195540 549970673 647109924 457084536 674628729 369761719 792885583 925207552 933336838 558338391 608072809 985784367 989916404 387232234 891482969 758414412 826763604 522250385 550398453 595007012 998040643 656477014 844083796 78420640 328693866 900620308 923495916 407129874 739170563 398488154 848311827 30835629 498822712 905485373 980845188 924228328 998351244 22549008 761529380 657735785 679206162 716379524 873903513 693217378 877896510 529812525 951938175 792829217 955269535 318376201 404782767 981505682 997397527 276199864 745998676 643167150 888659435 281554019 594864618 523153246 749596941 235774365 644718136 1613792 439627083 690764673 727945056 679362074 862840252 832786923 892046098 497748823 992781435 789961286 794555993 597391383 671135394 567888740 695883701 499537496 710030868 106162749 549086347 963633016 991027047 972640279 994020668 271775915 775978809 583458318 618855429 42331501 611766737 199762027 966669330 76383129 928905277 383837815 913293903 355411978 797656796 871403215 946369927 378969598 986816739 837976337 903243782 599102023 876344577 752399550 791459925 538765943 724598854 36554670 334148299 841638655 990437665 374830695 927988873 22481314 239418960 191513649 798914449 575303707 993693514 962708475 969592803 33828454 527252253 977020018 995544731 836747833 912758253 141458833 619042570 667347267 735246076 133753403 375513649 76295432 812775712 591913448 940108316 79501915 345605431 908930714 979077549 743215507 882481522 812254824 955482126 206846156 666394844 544405190 928670406 17382979 302156078 453154916 798804386 527774897 581165584 95711941 828584415 407845973 685285839 36868072 283568816 959063734 963101542 937269043 939705714 254349491 586973364 526785116 600083015 50207831 318565297 211602756 811668363 626764483 740301749 113141512 190240456 12713840 713382395 472522183 553043412 788521059 977566574 29399506 455624513 100839652 913930960 543743328 553594909 74497489 370154744 945444751 951586240 512967557 810551093 347508334 962877156 48175144 59516381 766665220 954506981 322001342 888099426 396824199 904283738 129268052 983598528 394285082 947092373 128016323 805748213 704370991 733848769 103379329 118510537 851540451 989369618 590596083 721604975 389603152 702521567 436742129 674287748 413264038 764096210 605904408 951380988 446490689 803777700 747376632 758399694 902507831 999607214 61275441 388301370 95352473 289450534 120297518 599912280 13339913 804233866 730864095 875170340 59771743 568523001 733733613 789526447 177268393 984227368 721395844 772582775 236599489 399277808 97432775 248778176 736843796 763482211 415519274 779266870 492221305 578914516 503054766 772037877 31026334 865907585 515665191 947959093 516286685 984571110 181813243 452914759 225299960 487483598 142683891 782409627 319645521 483329824 854060274 880018007 309839523 668454709 545038121 819262934 84979365 158007431 109899936 433535310 951819498 997412744 555191304 631174916 411679690 960648673 13215492 716010640 101432610 655617012 479232524 668402663 392430144 628465770 767335999 812218742 119445112 581056887 526023092 542062456 654262896 850686040 994190851 996560024 42447108 687936294 235060895 665018514 158284351 470409645 342226967 848359435 531043676 941282429 976679422 983146223 574651428 958109807 641126270 849797583 538528511 960097061 509289286 572543332 436420445 946728669 92204723 555365375 731080921 937932975 381121024 870676622 567205620 851979681 603038198 674425678 773749521 787898510 352591018 920277629 694606870 797233447 27883144 705275513 783318928 839834898 840277700 982589870 138872072 757014097 910190312 940011674 377807287 942555526 947713251 991556356 849143243 900520235 675445966 900768857 890840859 975730085 895040795 931833004 154816988 894179161 337612346 859373772 792707752 951048327 582451281 726770324 341082042 918366985 271055314 856154462 525900038 643792551 118943942 642020879 884272218 943282735 981170751 993341598 115345805 838456461 980835327 984565790 512535978 935421602 143964809 970314717 768626855 817231040 680730675 985372531 698879282 862153534 618848352 724745392 454874756 920309613 632072859 789694253 343108552 684065152 718171107 959941415 407032708 439319662 123780589 430664438 802583892 858323770 622762969 885617273 526654121 955991113 659604674 852298818 936819759 966437859 36386149 299478208 28550777 428503901 672038095 688561981 199237609 566325208 201597251 931826058 251229946 662210809 608995916 909021662 629194283 855752114 911445034 915695354 294266490 913733874 168491508 175434978 650043652 932052127 397041343 715901047 164107488 211097306 672505201 937897618 463270021 879392382 845637971 968838178 273468978 802409505 382510586 532307623 830368880 935815681 465100287 915442454 719042292 827217964 456329563 726315823 125971925 666330411 645710263 740462316 111431015 528516037 335984348 895459638 828699039 924244432 928038882 947753238 765875760 930198729 192655971 253251070 875147722 926199444 637530428 671949121 414306652 604276047 180454962 615473057 991740744 997997893 79111778 599934666 33098710 42497196 140571779 835042072 871788109 878501700 911184802 945917753 853526767 967285383 756291780 782878333 22935000 252668016 186843784 890071290 924298182 966639171 301559345 337586064 37550532 713648078 946543890 968923839 302319916 316535771 615395529 925115640 275716104 957629039 213220314 509343502 387358158 896660253 455936848 698256094 234572212 560353814 814367906 977660477 792313407 842545884 574956420 588416683 931824205 965724197 242737020 326286060 777375736 875822651 204030883 581684702 592907829 693516192 236668718 621325596 528745772 836473258 397376508 826899728 877774295 992602561 325183986 903139393 534050580 664839639 264472242 648252085 885941554 945929946 340188230 767823646 901534147 931778145 270244608 523133591 551035019 995966097 675851027 796885266 967682820 976972037 708783992 909698108 392768667 392772093 29534589 605019751 555310725 776930812 591649741 761750360 368699362 519907901 758963724 872532933 896793958 897958722 192863362 286392638 98683430 600911877 138179376 947345948 375046677 834125994 91773118 342618353 408546774 981711140 763593711 880184739 889582541 910442127 709879551 986078618 41784137 900927251 368232262 729303738 721785890 947717696 11424258 914401210 789647486 865059651 517023661 865338368 143919514 810260428 197341690 303507506 729727298 892295328 189976123 885397898 133362441 181655657 331277985 444204651 935924348 989767460 690746235 822761340 988585718 997974971 448722556 924313289 330561296 953688335 84451939 196117161 485639749 749429608 763221981 801085503 828255294 846353610 689254075 924434997 902243953 946575539 546973393 804050878 26524172 435587484 654677707 751404514 989705407 998727419 776735052 838165188 136256439 312670706 286795578 327408282 951094688 987624777 291588645 859885448 930432910 995285522 159194543 877803582 364416545 766112788 411052934 757780669 684942427 707220872 83938813 660276757 934799661 967762929 701745912 783011739 323064743 804534782 417591138 913449211 381343856 648026841 276627002 306854909 382317694 392700095 534570715 819585918 45997038 783725318 969290751 998323329 271892456 345434750 715962523 780906396 987824405 989783062 580434754 914275477 514751998 823379962 170953158 962933946 22139990 94624243 588295601 966285501 454429604 551212729 562467644 919032161 356180763 455983398 544665233 602440383 625859144 776755473 175623359 589242629 249348046 304076305 371071182 947885262 259308321 778704521 561531211 824295571 671776182 951885299 457783543 650355024 526361230 604883003 641233987 837985722 902145494 971039019 215144227 790662198 909878438 962112644 640057979 726981977 507028700 705146790 298605840 376579369 298977621 435132680 519377972 931032132 714579304 936515655 820065492 934085828 189923056 811312989 290576411 958478589 499452249 692067665 284263351 547592858 403750296 767115352 954005012 961417708 150664292 403726808 289585956 681390685 124561669 878469649 278338814 861688151 908346932 940361607 359904612 374643418 998818914 999352521 969281100 970529914 968196262 999694269 685068840 703321157 172789088 890132588 330326484 721387899 223976610 873088602 526283256 965223846 826177753 996949708 405673322 669522315 494684926 989617231 829668210 934559809 679866727 747369228 907864388 951152635 851663158 958982276 440515040 661555230 356579954 523633548 905867310 918711457 485204366 619508729 478553776 625785089 971137106 999699943 557214271 819506680 733674790 779309175 58309457 230017668 415105275 746915006 905124029 949747413 377743833 700401934 47100527 488717923 435783746 877630454 753707747 960167989 920587382 984401070 25906710 862417982 929646710 978095470 834291026 879781424 921206080 993435086 826402588 984380101 399273255 573918725 92088809 639345451 338871862 910306363 504195182 901915368 701139222 964934989 246643975 608707305 466735716 631391876 824070163 883960374 797041529 896135305 728763062 912782443 327126669 833052772 288473787 889625966 566947523 847686992 32009299 631217793 614347586 919206288 248388819 782696867 536301350 602820492 812042207 976016226 977777825 992693098 609083687 675315251 776301928 808251734 284726102 691797619 419996499 825203461 607226927 849513843 952522058 982357881 63646992 833568852 626324891 895431934 731736207 825261815 413148628 526705018 975928072 985127296 903413298 989409680 930839031 967101277 275478592 920728138 262982047 537644165 789820720 952807572 15875892 190875081 605848934 981694946 580753112 988758054 591899157 733883684 765212903 836888555 202172723 717651883 356241438 373675763 342900654 574512299 782537104 903984899 682714146 882498439 958469045 959383790 768882209 871022056 409236255 766628548 833399516 946650780 177603406 328551281 271680549 903213217 944741667 998955456 729193846 773236631 130570219 590794083 328447141 754545610 450727942 837926432 553600314 651850018 445444 695050491 513499443 555059942 885625247 944762197 828884654 970784776 164409524 734513978 82120132 700390318 715001321 998205254 363282310 520213965 691148743 938197116 652961379 805507634 774934203 808670594 457091197 588240640 351642443 571161176 782568069 987099794 115809485 593971750 160162118 929610755 393981185 471509177 4482527 447051351 264343041 717102345 814033270 908500758 885368286 904446445 823559068 996017311 545069621 986176104 320304453 922235509 401827159 825651987 423830315 738542403 167387435 324832572 12057341 861872459 79979308 818338782 396266186 891761459 21029939 842224721 865306802 931159144 342224857 821479902 905588047 999873818 142673140 592370051 598625810 662123180 226394904 996233053 736808107 864943071 938400882 991159647 385472774 681526691 423519094 881669403 399028110 753855316 823832011 959648946 25893959 268032620 259110934 774874571 159093201 945109653 408463780 902349175 728670718 773736699 518070933 720848864 737654315 742297772 910652883 951164214 792461886 917487112 696880282 795127574 244979159 995347187 329454810 930954812 777821623 895443455 546976394 846587900 57717628 196035645 419241478 799702323 651704731 657106509 947876120 987813088 119162777 177060378 142191855 603116270 908791256 939354656 12350733 272648989 521348679 777036653 68772729 337862734 738796468 996126253 286828473 507127840 536411038 672217972 738628578 939346974 410278556 581357346 761122671 993615813 326950069 977366814 22575484 933536216 242716855 636825589 139533839 876146112 435981386 641278581 284209649 851826809 507025717 889495570 102527868 672388346 73032266 821296168 346441450 557456554 930496943 963694227 810714299 901671830 296393459 522863208 982627202 991351100 974802125 996766419 111352287 856498325 480425318 582207336 807135399 818502610 738595601 877662343 326910434 928139251 191552576 576113166 884555219 929118423 998411167 999593852 710372144 993007015 323567396 664178809 360463834 630972853 654741775 799669504 682260706 944227081 660594059 942558583 824895913 930953835 116151862 361417300 70685889 731286881 813846485 831338387 698766112 702269561 38340227 187998504 712476977 894657560 807957439 961716314 581266818 840162507 648642804 927974453 873059326 942944384 274704248 906496569 169306112 732778622 457828525 629832452 666558533 795715674 255951903 975459149 747850836 865581388 219875640 717635739 787436562 814511115 748132804 973551768 653405863 950664312 896459649 968044958 64649869 508876877 833445319 918473271 608617787 687793429 796735029 938200171 726566826 978584425 116659687 272281001 35228809 915669069 787110674 835373599 895560981 942419902 613821374 917891702 209973926 678117067 571733150 837414507 327712123 453713083 221361307 476505356 242205413 503614956 294343359 381966306 851268497 871577768 43156011 423700409 67664743 514332040 879043028 935196909 569671273 873597191 110482593 434558012 898973142 986636630 408647024 835704570 683219843 827792748 894278032 918280424 370607299 931202276 394524280 954935865 485193141 591968027 992120497 993155639 614627656 779519771 859902014 874019456 178947151 566863561 398723447 735930933 85176570 196911656 710009655 950688093 855529877 856571171 860700240 938720704 654701261 698112341 714597374 833130572 978066960 984987305 298425541 362666610 277057662 460964736 365596688 967293154 94889472 443492052 522197195 645547615 983583449 994379879 424421326 827097403 251937213 863132723 893429585 984657530 493471233 646355974 166141963 797020860 424961181 485390857 957195851 989138506 467158401 775412421 254986964 831209900 592227309 839466802 329654076 743288185 681568266 871292478 573920804 656686081 335426070 575998020 389806783 417744724 575367235 804933810 904186651 971158561 823899808 981554405 465808932 905634409 742457791 872302477 361518319 753926242 435808982 501399157 209230515 777267066 84525696 705202115 154341370 571950702 810564743 942786499 583118508 780166393 828846794 954510080 500406587 829306907 824338984 943917673 780881979 832177558 755069468 930856386 167195450 976110780 77131901 960127078 914662932 973438071 342883747 733066240 729069793 798047547 776922464 910964915 296092346 619803742 715738927 912149988 892809381 906765076 917320749 950891115 977407863 982575629 498966431 625360271 388200529 518293181 755350379 920895682 828941494 997861737 141844165 470116125 314589908 607919269 980270827 984466594 883560117 957364796 632253132 792823726 382888302 780154443 701228762 834715843 102912167 822312696 595126866 757994576 298017742 602352007 514525414 933169529 274197358 292859322 302124317 533848970 607916288 986277404 561651544 966194568 996151855 998138009 360240362 601509387 265729428 429335192 988117599 996007562 826222664 891309323 445597353 455155091 489547778 503236613 540638758 906735916 681740319 827789964 445322342 471471010 49138151 373901288 503734235 884562285 664934597 872608204 357696024 908115973 561976061 677549658 96345255 557493788 407086684 963040674 443279335 458663030 2951440 571368761 682125485 824842693 270926551 399961192 878963407 952982713 461420794 702743593 424737561 638880035 190365337 492188442 425060531 803186398 223633211 337706367 807217875 812929525 82613733 543867148 673768160 833116289 770839844 820984855 289632512 457909355 87481144 789753345 793414011 812162983 794443443 826443255 68525752 103875251 458621970 491523177 159052126 762246472 142402070 364741675 830357957 830548535 684405551 920436037 866035679 905671533 238175298 862687952 259326129 398948257 545692869 675525454 774796662 783509954 166393213 345095773 200820112 735520055 143906311 456797991 252084717 628736168 941410702 953864162 361463153 367146616 652610919 779022101 269571715 491913231 997855996 998036887 549401015 721171490 280682231 706579815 588734492 848919430 589336524 735160047 551904137 797096500 77066637 163713090 1969502 167238342 64328166 657493397 855123848 999047534 234936067 369924920 212361978 409408636 428386135 729398954 947126820 997890242 970035263 995905800 776387313 783709627 454852248 518912436 57119200 291608391 331803505 947115991 849630426 928739440 351641523 423414956 517208474 744139226 476672671 568857827 311462912 666447723 122929938 736695455 326323839 939090240 192980837 645032779 790896444 905280408 421914916 421982861 732247129 962967340 687077101 945773993 979974899 982037695 652797832 810022062 213578242 841363936 878670146 895303481 571643953 910629431 41308738 755272388 718625767 990406627 365155689 616650356 757267718 778034172 206577899 771832313 611099965 680498204 147887887 870075583 678845561 804978320 1366430 415423771 483376790 734681104 37840065 199311227 650473829 670984466 779627617 848000244 336285032 556442116 828840023 839787503 331624581 595840876 479236311 894052182 356035199 448972298 105019499 479225710 129449804 433634690 428715228 607901892 704778066 786484547 452044597 502437884 495949026 763094405 446555650 735542001 20955234 59775152 540414492 698878032 929666214 954667388 606969305 698076095 928446016 986189309 256949292 608877303 527209926 754971372 252461699 848782749 928931205 986323713 627442402 717850883 479339342 942440926 836583425 923665013 250394230 973491431 183692004 585042526 797557874 858437281 503210976 615488686 311444375 601372548 637380929 854901998 626850642 836850600 355712980 443332914 134753679 868076325 684157028 965565778 872819845 927495220 251077306 295157676 196742306 853111489 785839939 832662382 957919393 962207974 851017809 939874046 242289231 868421711 342962925 627409444 488104303 818082359 175099577 870538839 691423687 705555600 271363098 910672850 888620603 936053745 770140690 771684708 914670915 968170228 693875368 864631953 716859731 965773885 279445960 964665500 122617364 537853533 699586317 879410929 58301192 379979400 436892995 467809201 776657087 860589993 316534395 349706748 220166105 452109141 104867256 398259688 931246598 961258009 411867083 717807919 381862038 694993273 322073252 766573674 99834208 210517339 184488683 532230884 653518764 657915278 832122217 902644492 735713938 736289042 308872276 930238734 299159577 736266259 539524012 767714998 57890411 908863176 969406909 972746582 885989067 935082391 578969468 638767621 625614968 933892277 249758807 690688790 189461881 583687998 77714135 733857667 52537054 897973922 103854656 189794172 112315290 295884565 449513403 540997666 498517942 617494330 506805519 756756475 985557268 989627344 557248441 967498726 296162657 385580308 443061280 768454616 926270309 983807427 623028965 700365368 359562748 725423124 276247984 598161336 406340665 493229896 256087961 776679791 821504584 879475158 286449277 441013292 851061201 856828669 768648980 989804597 634512100 687163123 782676668 941217875 981718546 982787225 431142544 979426230 300497783 335593064 778523975 904217532 898075698 905109069 968909676 988806411 460000625 771641578 121748835 597899841 181641980 524656712 548890735 622971420 272597931 780228582 767412668 951808424 801347028 970963785 357500650 953914744 934742740 969796710 904761314 959343388 364745755 743572361 856003719 927227060 74888888 751295787 733174880 948039540 669648646 999316758 845601504 948740685 566452253 780165264 943937500 968050585 181563345 701181845 511517561 716214731 557778989 705758125 691799817 978763463 625373491 885691194 520451780 613069121 942093424 950015359 77675250 749068548 799335890 849135478 713025578 828593307 402097538 854749217 751764827 822578356 967140603 985297783 235562396 620368926 14457121 347495106 812612792 837391905 503505505 586140104 119312198 558542407 99977678 422348840 160122808 720766313 528487956 926393608 733338115 854543963 170414445 887926601 208895651 996294055 735456439 866322809 799664920 958981750 65858783 81021696 672302779 965112942 944981 756626807 775954556 946976623 436358898 925671597 982317646 998691663 412993158 760485926 113108749 314773917 524928573 837577809 865488816 976097116 729319481 978446666 533132663 704262339 134524333 518759765 8860385 439177043 928569383 991538772 783459974 855927591 132650157 803059568 615094404 681136812 695955320 771398897 873125340 984851345 247986376 628699015 53941435 253436560 472715234 543283651 618133962 981302090 541716257 544230520 224535430 263932776 688605229 883978637 270435893 969988707 65965742 434267430 452055283 639101505 58986315 665492399 956020102 980637723 443388151 471258444 527060965 572157213 677497967 854582666 648647659 864493779 408093977 834229153 338841271 356096332 352565071 965369010 75510318 595432100 767065987 772278468 173117246 951467335 612711885 891856927 864338895 990607759 605294625 666907824 781688427 995384306 183100576 378836146 848125690 981563908 386895900 408920467 623328422 867793876 559039223 852728052 334311808 732615290 945292907 990123562 323273581 849553159 498804459 634612567 375856150 459633226 607466652 665065029 860058255 911066885 218527260 759700396 439868616 570609678 915328701 919629883 52009291 653444374 9198318 769249305 399371173 760097523 741412034 890860258 130240977 930892454 569714520 591257265 671395438 702768094 295678530 428588778 919515905 945435072 510382796 523494578 427633252 885244603 462936449 670942974 969711213 998515965 996402912 997589650 889473675 901279220 938890851 972263954 301530314 664760042 75319666 95480910 232652624 467717617 744311923 988872490 271723424 460003541 93470514 679804226 299434718 518274843 865051847 874753752 550057155 885046078 600746248 911222869 829212195 884254920 881848984 969787627 829678627 998196109 725199319 862354124 567283706 727006669 575282722 952957073 312299963 448628163 158667497 900029430 955504967 972235592 404730024 996872509 20600823 616854649 581089240 865384191 930880601 972329169 397601726 902278012 151334065 412263923 113728686 561499580 436460489 726433298 232517276 564228488 885002227 976887934 567754056 737295713 481307666 794437205 580660729 975019801 344463317 453091861 239692280 456612825 981467887 991903821 932325953 977010421 511166418 834354092 958580440 960884378 46912804 513317398 370085494 744276294 76370484 592670233 174394884 241816080 858260983 872702089 158249856 554536472 586870078 770948104 964611527 973366119 44337347 752471210 138685519 682222579 155158630 862829898 235250224 312543890 991120888 992872146 50412985 460706034 252455375 383794157 183798747 899652188 884314684 884405220 474973859 615271773 933310596 990446615 728395796 961856988 349135310 796717253 402484460 805382937 835253602 928109714 568161915 589698085 528514581 982007248 412914534 710293553 415262850 930923819 410494870 518360482 591630343 924834231 763594935 785745434 182011617 458569798 662830038 696942509 223886491 543912352 977710821 996755678 993315474 997731423 203236634 680172525 687054223 794274440 862566981 922403731 826290527 969081926 238153868 711253635 543186000 910147545 623910399 655690350 110409273 329196792 997158086 997456789 651304963 727012331 75315798 499572138 347639592 446513927 789284785 974936282 910915241 922877310 877393334 933700238 765921743 949935571 500648630 514701391 867239616 877095125 529000926 903140403 273093655 681338830 42327175 206484218 957403203 981978300 583395796 653092452 416746357 486626625 404726337 540446133 256668495 680238677 718050733 788046872 952774474 986123320 157215740 628735362 840124445 850876153 595289691 889731146 832877532 842502469 887371423 977830748 525904851 633029607 569571942 697604549 959174572 992177693 186262881 553234079 365370258 591194411 764762038 821858371 710356902 738653999 779540232 906834641 431849711 902945413 189813972 568945960 328676128 419628686 217910559 851973047 167178077 276491073 442414574 587981971 622377473 857590640 276356254 982132727 1996933 446625630 528369634 989064611 583113333 791536753 101354426 570086823 292142964 536829664 373161522 925124816 104439631 557492463 677044903 743082342 554475620 730463162 10887199 545206286 892347821 977854659 364284218 882619947 688426881 937089842 228436222 930792568 689888785 940140297 936185978 951155885 575553466 585657758 434457078 780190302 270612925 974045076 747951541 976005629 403871157 785666899 985124301 986681078 948978376 960472653 379312865 384935076 752337186 902327376 969534281 985495512 74101366 687811783 180329148 676532748 445226082 956696010 677413494 916441086 901098674 952667923 808155361 998065861 351654436 973680599 364128293 732680558 605416754 915443742 463753185 785045072 250371063 914517151 523415586 694342349 762330135 808075252 28415599 266411652 175974285 747611670 644053357 884429241 874203227 970604502 117661304 184745684 134383649 924193041 328171109 900000780 898455010 952128908 696300235 884067250 220547635 518747686 465811254 627553594 715573300 863586740 72170844 708809111 193438843 375135188 828199070 882224341 646365333 961666347 652342412 888740032 454204412 524354138 486618109 954710816 23258856 516781874 534083644 769580203 692478274 757470646 167900148 493295337 289503344 917626002 848537940 856642296 893876860 963053605 805863959 810389123 111536676 361864004 174401703 829576128 561856833 778106287 682575011 939275123 829470907 899170827 672850599 723753014 809955401 823730469 881763111 906820834 363973375 616237416 894176053 981870473 927547980 998618633 581565635 919179789 273534968 876618456 88097486 633773649 426936193 936103404 943599828 964480410 49046293 93347105 160479275 791484111 421238065 990857257 353948384 864505635 182718232 437443496 275411814 692289118 241358808 998078401 113969113 298250961 689698257 910839379 938326322 989553272 979267480 986253766 318552420 699335844 541554361 664744085 868065240 926454519 628078223 841158432 98323368 294609760 132305056 316701578 582991915 593675508 550513894 865279151 777880235 883303957 37575046 364388971 837198885 876712444 79526353 404507091 638747971 736008231 300797787 415835825 686410405 749807915 329856071 750304964 131688560 473164190 57794519 949765671 199840067 654326311 628230899 727936547 743739040 900045755 986164750 998415504 773157733 925406698 259848280 273426193 738085645 963966952 858698169 969731136 18969525 867523293 637783198 644757753 843947289 846289636 373369206 535709411 481392490 650988267 336278922 612026733 656746945 952213774 329487985 614643042 224851752 434909215 656799820 818852912 594486257 914109282 436415884 980494143 936146242 974430136 296489068 531466420 490008657 939316085 189842492 318845363 776102102 940921949 760842716 977050756 991813057 999606880 101323493 248629496 975929620 996947044 173931795 900030000 163015671 567475952 762363753 830583606 858788948 966675496 640253379 877368202 348123291 785217059 652057960 912008671 897380464 966186523 911386497 935019985 65524479 518970386 255890316 441956924 414211955 669465850 376215683 865100149 890618482 912932765 359893247 508088554 526119351 597758788 728316361 992039747 661677014 751001775 64527406 617099390 486411108 740189361 507317279 797392399 242832798 273805087 346045130 975779420 563838863 767592193 817398276 966395568 451534498 743878298 373058240 698423762 854267275 963334246 804182533 887482140 128116586 786730097 688036122 774039161 669528524 678865334 82705017 615919138 801606395 836863591 667351632 693259291 29681378 487519912 769965877 954848670 753912100 853496010 683755812 958138637 319594886 499219327 409525328 839008673 483916001 720783025 494435523 576365011 544929824 812384612 731389046 987949855 542341507 578473598 976880136 986219093 436112035 834939846 789169949 990336796 405761774 740562899 526924135 857339947 373075209 685647091 957596301 983981513 493895080 961576288 118878830 195103795 926206039 974930093 631891004 823760757 998931605 999161444 110026629 844623792 678340768 934137849 645361835 761305414 802301373 934693175 33774106 454944306 870271225 955853546 527592014 986897292 921595937 961036980 713861484 747319161 481279012 504613328 705388186 844509644 494545231 583000172 29299935 275899356 858565033 930532008 561319866 894677830 851812427 984675805 86718207 701833972 26970602 835935864 364436515 967854767 976540219 986463319 685684536 797024108 655785070 697849364 955356299 978487302 370196672 548481272 751524372 895518949 138360095 169509687 113273359 550871248 863095252 995401206 744243262 847902278 860800134 878131702 546174199 646077405 280967648 890994363 140867950 408108987 372272573 898526384 241335121 386424016 434716404 566753480 757110043 895492949 554854521 855684507 154629096 171168291 895227447 965901331 615330450 875497960 569878838 795327507 677490428 951299497 172970166 400716611 439734142 922678979 888502747 927712229 909950160 935355435 510009148 697508559 472965036 716668685 387425365 985040832 716406528 941962130 588426098 729659058 98276196 497603850 417335459 728996705 815204357 906319577 282524552 961710758 405942003 706853260 750043093 754806527 700892205 858253647 938862349 991782749 718559919 754243161 644016338 814164265 578489036 689135786 401058973 725558301 542711499 629044134 740078728 843975714 405567303 991335432 85800954 422154126 524360402 750860564 476677102 714376119 462700181 607273960 177961104 887379762 811097985 833438074 978762517 991291961 756586178 899031621 166846557 902765960 586522002 787747561 401289981 797165071 111423731 755092769 113271482 152091562 134402039 307592736 890044599 981741821 703952281 931236980 212584550 600060588 216106700 464187879 863870681 954382670 982856381 985637501 280153257 304532962 518903380 538596042 846611267 905959461 180304812 885597350 112116822 861968674 122897861 238015144 74469855 80006692 585183031 841853410 735128287 925296476 523013420 986176350 942549213 999815233 160617131 979017454 306439022 477026793 710228521 741684837 539794914 715447171 96803868 238466742 155391843 344523746 621658627 664081790 357836836 463680046 554720832 733650254 990792501 996099694 704288651 883104127 897215486 923001703 731565497 878914744 710917779 964470920 600310872 604654442 967380484 985760147 634572171 913249747 497594966 986895624 556721119 735023267 922270479 995194693 757324856 879456715 285220563 558288617 133869989 365890513 636291426 637432654 206952684 364584904 356771069 516887031 462809286 548405659 646107369 943945165 532383861 988791763 630104585 747706403 831969625 953939036 401867851 545154347 647497976 973233865 617608239 692171888 319458545 767522401 167482275 958081653 184798786 252438313 638715740 875936885 936154293 981081015 295519892 852276261 982118704 988601239 736183949 842590964 169091383 662819037 551293353 617867061 591966288 974846128 936479981 981676480 970966296 995852888 646135623 772914390 597488770 611157268 193788905 822322858 785902616 839464549 457661000 669698329 648538370 918236694 234941903 544964531 328429365 933517216 925962592 955821330 188881130 484068454 682234892 949138343 135633003 914062576 466480444 547583167 88675475 694175105 637334369 893434329 109778715 112974909 969869986 975127624 678212304 956852308 552576582 672437192 397385460 514877554 150135402 704989693 734021265 923165645 2660423 268968884 878783853 930378921 133632545 249909985 16723182 350087871 994893713 999354489 883535437 916116573 668429179 694754719 382750816 690117639 378659555 963642539 824349377 856713261 513472087 901247378 257517450 623160967 258379394 534974821 253053665 400989029 273256950 547559028 734347921 901276657 736845895 841262889 465765211 840360198 33007053 452234904 411688105 617359990 42287933 676904857 181174646 513201875 967567932 997030202 582041866 769893510 35827658 512613250 412343155 539630384 757049131 795278994 232565401 544329416 756017692 975884930 131802333 411494001 617614790 779268360 384928600 969034516 529769708 916659276 122974731 184343956 597523300 645533157 219093430 706642462 77407374 176316903 909630230 998092539 986068367 999967500 126764807 639367122 720398665 845589631 897354515 970746481 198164720 579124988 584521258 781776342 269156568 973242152 642172672 765525690 781095100 973722451 104861285 557140352 400031677 422363754 310127499 720248447 429878238 644726030 390845642 765391613 769802230 821296372 936169858 989833655 569267427 658121925 933605426 936284886 636318684 685277222 463747231 600771633 288921501 889118305 411385018 744392092 551660988 624230027 880620373 946174839 437035675 606137011 727033583 885216483 959707864 973897856 641818587 937535593 143365918 725457262 145414387 419969999 635529073 641156287 671104540 809816327 17993998 434743945 252759001 592140516 404921533 549112532 280433808 973896826 255518770 692935575 578519813 878615653 107146864 489041838 376830028 997559291 71069064 656606810 537349438 738287605 251285643 302233441 51279337 678783605 917975252 943142335 818344752 889074239 360899233 663371639 889570980 996455083 468325556 553288246 943926946 999759659 422735129 578658181 874462352 945922334 810639862 881779212 112883084 938020739 378478943 677112682 600458647 708487319 277419641 352593070 660610506 877726664 521480890 579049132 825459549 884292804 768309828 774807984 532590500 603420316 100357874 653821199 167441016 641357995 744479133 878542484 246259007 471482877 374051890 374382972 392269606 898656993 134843778 141848935 395190721 400665714 628931707 986040585 460076443 616234866 328258168 637916973 352159470 968223353 684748484 752301154 805383542 972668330 223049826 539447246 226005358 482782905 502442509 568114381 23336242 987353010 537158090 937734856 981792295 989344775 63400598 576296947 129764069 143935022 983268208 987141067 456995097 491592510 155507370 496675022 986616302 989899053 170834934 245975987 241282114 599560354 461917818 856028506 156134693 484285676 638340324 728700776 334558863 918501818 609289395 819823700 674473811 754247224 687875270 764905095 284773794 539859282 77271708 351511437 688885566 907006003 664971434 677352446 26148993 889968878 503133977 771803652 410852060 413566785 806362499 906114603 498910503 906019485 25171623 675583725 846817999 944530272 480320251 981353460 597945683 664637232 907813043 981742312 461859105 785066112 715184115 973878682 618550918 953763369 564520668 834488184 32996016 575598844 968851909 973706496 797899711 850260992 507487953 764579006 509456704 527910033 907300769 998814875 996207058 998806764 792841800 884558687 68899148 675803019 260338020 915089387 446666703 605380250 896208100 916807294 414977784 902478388 736784641 811638784 428414710 438797423 22071387 700307602 531612793 938581872 551178408 646507552 510749628 525282974 876757584 924764067 67172482 900440177 889976340 914013423 195749212 625251278 711422015 807642955 528246854 709539581 292407386 414789022 120014579 443217704 585678524 701873444 956045606 978464607 633580535 958275471 531323449 667541614 928578213 947886983 424017794 995257486 11863768 298139136 498840588 873252529 531351739 987495800 698618973 806219865 446670298 483794270 998246614 998344789 155717566 614283384 975355471 997690114 828597380 856608025 577394518 992211715 762082720 839706325 443641373 590143510 961899255 963261303 68136905 218203475 902055579 911928967 805642095 901002810 931469071 962108115 747904237 956570279 278614679 843845638 759039229 937036882 878744116 926555840 189093354 848608750 631629655 906119937 283862427 420175482 745179082 814053262 963234794 982901212 496155588 716226705 153472721 685822264 566357396 928158284 717094035 890670609 906748378 948302888 75457985 103145437 96101660 383397800 203787466 792904216 147053033 857062210 941180487 942026154 199972919 216464056 835736839 957623880 613915802 730976127 282171146 723440614 92756755 268381939 875590204 936462217 20499133 23572669 791209159 936213981 762612379 946036579 785538231 831758471 876392033 970708566 118174843 511405205 826434675 999794383 414227854 811310886 215596211 914970839 18251609 786740381 742989337 847605584 613635080 906913102 520722457 801984192 241680700 275200518 579749613 631813565 755313772 856539783 662907836 941315280 545922811 779311362 835724531 980539025 588440896 896224916 981311184 995013585 880241073 974196218 159202374 295392363 940538933 967276606 393965031 569923025 743747724 778390655 999769449 999851081 788245300 804672584 578950841 722628420 15675339 853638243 782045738 922853955 389092537 569055541 929046207 968472717 424640610 492066961 716837323 904666488 475241439 966044055 393670115 394912520 166467385 322986901 162836193 849431963 375883449 735079463 138194730 414871774 616940551 665328736 644485324 875631119 182832308 910999328 532429878 785498886 109666497 503942640 509854186 629157514 874635292 898099744 252869889 720782980 25080213 558659509 338661674 575960447 801647361 809809568 894246114 942076317 39859072 404238170 671592676 906219380 456440531 814329025 821237467 844978110 706944950 958754290 108571584 524774248 852156586 906557088 472929960 691670993 862463446 881221272 117472693 494050552 62256542 346269504 344081018 663096239 281619761 795668826 764491040 963279913 742328031 893520085 156952045 881940560 166157600 335986114 78303197 219856163 73592713 410825640 703242647 722478199 355951026 752364380 219059117 823413359 612911914 868401737 619938827 862011829 542876139 734267506 771102663 860668635 714483619 931549997 458579743 853960045 869214610 881094517 303161817 459494557 841719257 849768804 771074310 816456028 972789698 986085184 531405259 978293512 567820189 632363035 419216543 928478733 140511738 516439674 719049846 866452427 907926754 983952090 315177029 864450942 751028359 944656521 960746313 998531840 940193287 944735094 567241307 593819007 283488355 767574776 828775822 954137418 45452632 177421575 309362521 385212965 931726512 982014808 749719974 801923023 90895833 340790832 762882795 868320669 830528942 841437971 236368429 736412126 693601134 779950613 955304529 982302787 241052456 616263539 745918270 821347651 263416983 981448240 30620404 659920250 933645958 971507211 91285785 537211826 841865929 865604847 584609722 715971588 987828527 993240459 799970648 849513249 308711002 392455030 293721375 788137656 387497399 764981941 972478093 993956134 254102064 640232713 816083938 976927706 868946814 898413938 575856470 895398436 155798207 282035982 474947722 535303273 537449767 680314538 744438383 936935808 446022860 754397691 393002486 820409726 212220855 979806916 804397054 805808249 859505638 912559867 711833697 927070383 503863499 714890019 677280240 716972407 965255205 998830642 602094350 962229308 932984644 987835306 194176307 481662977 786948914 881473121 548281186 563956850 311448722 679146580 623954058 968225093 61920496 603617299 831305723 893587717 706477798 788678455 220342994 917229905 789042694 826226365 351437965 728526186 41330335 457920031 689290957 838535139 999751558 999806337 207143825 352598432 717030678 921729680 16788428 449319536 429520903 996211838 117422767 549091255 56279747 769501276 15621065 626604271 302396525 812442473 166167094 806218229 830250006 892640543 713291289 766093442 659786053 734618352 452868099 940540001 305841974 988840690 176471367 354751633 389862135 617731934 466245883 906010909 434743004 616665423 210129976 393749726 386483983 544405519 281518134 405129644 870653676 922194342 556739085 775123336 586957865 604709412 729692071 770737504 837125755 882812724 269693463 347105998 107545199 325735238 258095116 961712471 555487063 606903908 562216832 638032257 957073399 982430087 203987214 356628964 174218832 631118939 930672288 964915795 75850676 253148349 951806713 965664833 788729182 835922511 731622799 921327363 1465232 380988699 525709310 883325002 1344525 703275034 347814293 391366202 147237470 231871728 593617403 809889797 22332128 840958322 348024484 483669754 540719483 915397416 177539548 280226112 14082240 797680075 334662666 575834624 854598109 862254368 126173268 899161158 917160722 997943896 266643836 333231695 807543287 998142079 639411904 702089143 404595649 514227231 3006843 734788960 74496846 575841723 501690088 690012292 564802271 980491848 973595769 984820358 107621305 594813981 968861571 984670190 475184327 790179155 640643197 962112115 83698380 806286063 670318310 776428361 908563115 934916677 942696089 955915198 232416195 540457631 246154308 492856277 352936683 869414448 321282573 559813560 231177235 897344360 362878609 919843704 544098075 975211173 490234741 493582162 959112308 964845339 928924468 940493127 900851741 927387672 639452413 774104105 738851185 998205326 776050468 936065380 971086885 973375132 110946160 705255046 840433854 972022302 349746186 556276658 444119928 487942891 891755096 975521575 775702703 907449247 772488191 917913739 488640600 718704633 275198586 944927564 924551292 994427705 960430616 977570484 706882286 908557764 213375808 633517038 494272129 771566071 69243167 860818454 709203131 801974364 25175074 79732174 18793618 810329704 722188885 875902407 540483905 843947466 177143613 961179755 568264232 584523904 189189193 579711406 987890657 995881973 448890397 804585309 518415910 980858495 766083777 922745866 91556130 424832134 793353028 906291778 163450003 411136813 589837796 693175491 259247793 802595601 727966457 986044663 358422734 704535868 193700222 750248174 307479019 766356771 835303243 905830577 257383720 903416998 473612175 681434674 109354774 695837752 30676890 592640310 935087911 974668339 173795363 706799874 707960780 719776696 426635959 510744129 992221929 999005268 575210776 799564959 549341506 770376651 460664882 651658593 727277976 919104727 143697025 331127453 152989256 158184952 552614449 668871380 108104577 202801176 584715703 962900263 14565239 808971091 857360117 877709294 590260896 738004754 388730697 621051323 34390616 520390352 449003454 832503170 442640906 680842221 28387252 81806833 844440657 909639430 84567123 664245218 985755379 990368614 194414587 603385949 264457946 805367081 478776888 852297803 381159819 906313612 397970023 462591095 183739696 613344928 429076461 706365973 353446458 768502967 783857417 788131058 934867953 943977620 713476126 950820686 244952015 677068886 345051728 370832508 686603563 697629661 754315770 758821442 712582581 868219894 242439849 505816460 803888982 844299262 537381417 584418940 422191938 961646719 327304292 385775789 197034278 465971832 608251793 685914917 565779000 934207000 549854434 647425308 36634966 323237508 169190372 181132169 690773111 899331478 212671832 976505065 125394256 398173706 238342270 910657083 15312871 132558172 205539207 518882041 371574867 989084052 730640684 951603749 608134943 906897923 693194772 802814663 552092422 877288350 964244273 986171762 832162471 938473766 126190978 403518546 521247061 698364328 134631763 417255041 190561623 982410853 61655964 498689358 926307745 987547131 226809133 857604006 72710427 289626922 756588618 904952160 451085977 497292723 392412950 806554252 725708360 949857818 298902868 735154094 421706219 583894309 855758011 985372052 4979351 975220696 365145170 745686209 997779988 999906844 268620215 831966065 750155457 908278147 55726415 330787226 141599651 890782739 953209092 971579804 201566330 294670087 381177035 950395339 250471018 927222362 705677653 919155320 484283573 897371728 386711020 975416377 744619996 850804556 752277178 902331121 614957832 702112293 145120908 572860820 144675699 478714080 218492326 338881232 946767119 997587081 826455406 966105956 155518326 848017124 295210559 582175855 130912165 907337414 563431903 794414727 33184795 810943590 144213830 161252833 627786176 894257880 907466059 936463319 433357171 988796925 25558248 947891113 666775889 802405442 308568974 585463483 987687431 992392026 128062075 566639416 717349952 783287006 68531831 612654393 558288719 757345961 590486800 953711587 359600530 834876543 315395551 912776173 1417172 119643775 185305543 359227931 428456809 923911341 144235659 368477245 994550583 999557596 957675118 975016467 715031575 720435484 921556299 986166750 138029591 967549548 212181079 364440125 232970469 836643103 222194763 422828507 198743529 919362252 253444949 984565782 686830772 990537573 966992449 978144275 111002078 115473938 856975434 994381727 678223385 678975564 838120939 970938465 208475729 653215646 910553694 996285859 453505352 750931575 901844273 987966929 427994864 687756780 48209617 696114955 263890393 831892914 687302108 993606820 260020389 289493133 190935112 825998856 265623131 600321214 652840853 987997024 922849767 963201732 44318546 815112298 849161604 878102470 267315505 315156260 501618402 669130318 765451132 992088405 343840902 757756363 196689561 985446767 329582531 938889126 353024382 354844544 492373449 692416515 293227816 573370498 261928602 862182239 111842340 116995834 749242997 912523748 955041791 962704343 142892551 745800284 243240860 326076045 499074205 862618974 143871426 752227945 848575814 896074975 620448524 809961181 701783116 809254034 41851199 844110992 910941073 997702935 696064137 954073182 374867078 383325516 241209906 706700319 994679055 997062317 847794427 972344693 141025123 436439102 861610767 937848067 658424256 777520032 120600595 932502145 995685607 995839871 271208319 347131836 45707939 452359061 275733756 303586759 220001599 545850573 453300348 933999316 924621685 988303880 230566057 930566646 594728889 675529624 409503905 725612895 1618925 397732271 899094925 951104518 595137962 800154703 29452642 508897626 31280176 979382431 606354900 960020523 475510913 910968276 441039318 777437229 200902146 995239842 297652149 831419659 716023347 939566424 881777477 936400058 717002586 797597670 728042754 982156286 373584393 533980818 231771306 601266291 899770358 989470883 670465007 832018444 540671266 855643566 183489654 340848777 469935111 995466927 711463330 787828683 677047801 873198346 964691907 998894108 328114135 454769733 796346372 860158948 584768902 908220881 70874604 706248492 632996265 758750733 877157446 908227359 917283056 918159449 733145901 770008763 710124721 949087895 572763995 700314973 627041584 896258860 75418863 602508282 748145826 939396954 531560229 546947057 863033153 921869549 772724485 939239179 214222742 924419075 546234194 713228265 664924157 773133693 197780485 875602013 362338057 466797169 986970154 990546911 867477688 981275355 416324730 466802627 997436319 998842043 630792431 952979021 548094819 574351064 361626920 596286816 213631199 796667964 166326744 764983689 420853607 432703432 603391583 933687224 395514930 632194714 290315146 548400084 282986418 857919551 347304522 691298797 133290402 823181221 940018094 946515359 578198448 782613644 564293552 937561590 104727257 978288754 359155262 772099937 430499628 683108774 821192976 905646913 579609638 821448565 779040968 998182399 109843268 141261273 266514771 351280445 275162164 372185016 422422227 636172073 814530793 860360493 641973838 700153705 642295953 702785571 160476937 689465155 650086072 910072027 947820946 970475720 649391660 689709728 996045450 996818964 933710631 999364326 192270253 952325166 576954862 706443107 428582471 631118012 595463394 619114323 672150538 707046493 682559317 755317213 41814603 435220790 20657442 941825350 261472072 340848510 803755984 829340682 338926027 434571902 209472509 527030110 608158169 778006343 73266024 951230734 365127711 390096467 801532124 927695686 359334089 805565706 252171403 599321565 863108160 880006538 506575558 921268126 558545505 791432648 83123067 584430324 367541724 884347487 256974919 926290818 9717315 553825666 496531256 927498821 22522283 157267933 551657627 849361896 494104149 601849324 678875369 853220311 502594000 664751299 293377183 560787267 454375842 760188985 808653049 821899136 840965805 885836916 261548366 507469254 749252178 816335225 35655517 545337537 533894256 778453168 484250816 597755920 176036238 805160142 204314996 327617592 253640258 415952843 450661952 801352963 233068918 332864327 849970879 867098632 30774629 705724156 366160178 814443015 310291042 742795896 650549377 768359160 855043038 929527007 335586062 457679230 728749139 790995486 280558391 591947100 147427599 871444622 68712495 945413685 979869718 999174313 966945715 968595193 950063222 989230138 755918470 790126246 340388589 738420273 359195191 439150800 455233028 696670124 124627625 678221592 278184472 471392791 947359632 990704622 454832071 976826074 95078926 538243159 124639239 184862199 60589935 299945540 955064102 994795285 885404804 918760386 401180725 896827028 934468109 972498697 247353171 424713957 277051785 334149550 279646997 886298800 308720237 963295571 398222873 950361557 766727170 962016826 336212413 564299940 247221000 335972353 51894429 249799836 474838470 606939930 857740491 979370274 760445600 989180665 442354371 629624643 363218588 507700081 936100981 996205696 530888703 540409432 842290191 882973819 498477523 632388350 878225864 942216711 443806024 532538925 931372585 947639170 987385388 997747038 556459566 971945622 67826829 880274755 482752934 526059716 928338582 981800335 847714078 946731519 667169692 887733984 473447872 473718932 95692718 578084634 150588641 576377089 828959847 899344656 693680899 710686143 845444498 900715061 77128658 671451325 875232988 920984135 203005578 743860444 444737155 794256550 594594529 672814568 650051685 746477702 769652073 869965009 270908349 589068541 492490789 650378299 510200880 526900135 841088476 893528174 706696226 985371989 329316733 350628472 898517084 956038015 995970688 999470213 903409332 962690635 551678991 628728542 699584358 762727959 883562958 889020940 846219736 852022302 725577636 900364582 148921227 549489116 436746569 441395775 394880679 641624676 806364739 890838735 532336720 724351115 239323949 285664782 88904770 450224254 571323957 804167713 3891832 269254455 748717084 819032252 318174971 777489785 191474326 772695453 690806645 960273224 782713754 987076353 311332942 427176468 628298966 641491883 176606706 844386642 249858428 504745071 93215750 229109713 482897463 953697187 917653577 950074181 941209565 975226544 965981499 968394109 166300131 778399863 439270190 477014235 768999568 948186859 809227179 849877042 176061297 390105089 497578035 757813283 643518247 712714578 887209701 893394147 439036391 944179208 71811423 510430120 187747947 771733731 896054272 947552733 734487070 892940881 887496528 915934957 422548327 738324795 573928115 882737619 523603670 695758669 833438845 910747713 753244635 946078026 327669089 776562478 460770278 548226946 778939270 786867703 107895004 622819304 521738910 710825233 796545416 847339002 844702253 972487040 750189517 989383115 868975541 902832574 365711825 452763411 647746250 793681260 47393506 245608599 324691559 620276789 648690221 947383539 654437280 745794684 794087888 816327178 68661948 668929900 745299861 779690705 865061862 992507868 696139417 822981891 26785475 396284858 916656653 925849944 622744479 962775017 220665156 387256891 885185511 981301677 8652576 511287779 317334106 879944717 760192027 768574637 287078007 902864356 426497952 986628195 593037423 934305913 250725942 812851799 86780387 663540451 904639447 942300407 376146086 600425494 645515592 841761420 983586706 987034630 337893486 483826786 763535927 878380182 693876495 815818515 541563720 921191557 403867729 574731655 837855308 847969856 441809864 616521437 403831686 526382532 568101589 637495318 187189939 695886736 546611054 693891551 30695161 245290681 226944567 671883108 347654210 523904184 921357831 978724701 114276910 545137403 926485902 975728482 133138451 859667577 964889940 979989842 452702004 736932251 364816536 720707616 408898553 498282249 645932726 922105671 200102350 997184394 475335138 571217747 696255710 970920099 199075686 499255277 99064117 755227272 260033310 927641318 236275512 460795570 675206867 796431942 766479674 902915228 270613879 389533964 745004720 818675666 511777020 636485583 801571638 935860540 181139834 378311180 778335981 891427281 189812442 678346042 49044870 549554742 978692529 979430726 894774076 899998619 6875851 548317565 446874094 676520189 959124471 964024353 302401077 405462732 34583217 52824175 585487129 962139938 836399137 983526785 360787157 836779735 313373555 362020944 375743816 816235247 109551629 482226923 946884544 982788508 840724706 925717567 603023765 653773352 996111778 998685720 766444378 981656665 690669262 835770638 72696821 226959270 156970626 566711987 845208913 860603927 851698708 872986511 197017158 298795479 705510772 830633080 589399251 759071879 182011072 849875178 389990030 653025099 898179890 999964475 150406494 496386683 216816621 720025457 310971797 684701586 314689431 386988457 823341380 906968714 299055029 389960138 736939035 983001801 652675259 855953657 887306910 983047644 998264554 999299275 365433201 629921514 598571849 708170744 419858495 941569575 781506144 934617809 29083597 676076932 876065419 967925932 413725257 985245155 194127798 474077626 282091441 379625861 808541325 919092601 163530980 785345696 93772795 719147700 651843922 654159549 708306935 820386877 212464945 517240899 440543940 852026102 327522598 446418679 384859491 770272217 114625519 919304761 770155772 954898105 968030965 980519315 774632637 903510145 445561582 728662640 396711840 800710690 143350029 633335935 771736483 909242757 228850913 872718855 511085952 527243181 401660188 988218874 338672083 848443012 368571823 852741135 503417082 628457954 913847996 965922188 589222436 897845745 537965518 999884857 981089888 997533582 838814442 890628290 798654724 900781719 133161275 935426339 883202902 942956316 843887319 990641139 95763835 238464406 780484691 868716247 949639100 958304861 125047697 135270076 67214817 528254976 429069488 643684679 73678823 833021512 222639042 633747208 53104851 965453921 876426164 987122152 393370480 834576633 419187985 891936178 166003334 682366115 585184569 949995305 560403404 721533195 641499833 843071916 418880725 918467525 723620274 727701807 778567960 954180131 660101324 809568710 407216252 803662663 710373418 794108846 132188885 481997087 532291584 713839345 280992868 572500621 51315985 784064859 185708199 380688136 872457749 992449816 141868147 412230677 347825956 423496537 600255951 919617290 929186922 985010661 944259390 966659061 31728239 495748027 965612241 995470503 833221350 965484645 853164756 928184173 95785275 758121029 982733638 990874512 145477975 771347879 151814847 941773567 711938603 957527606 912717771 957004302 730329288 907387153 137596029 547593206 470733948 536941757 386976403 757467586 952242915 996262234 335140225 580353021 686928887 756737729 368208231 992140845 125673128 978883198 200740156 779596202 872140049 994420362 754042182 859914810 859501782 924823620 180182870 406755391 500336245 915041323 659794579 687729366 479853967 766044926 169440913 987002124 896238029 997695714 107317916 851573567 740908834 924738523 938242070 963232624 786001848 911929348 933674382 960558193 864375159 969826647 661600776 863191269 191989153 459993212 781517940 941268599 164896943 492425626 87992571 421403607 727249632 919875499 873183373 953604953 511378208 570604780 178698485 322023065 688370517 943940927 316024520 350425912 514066533 890457216 838156778 883084228 397516502 443244638 678675024 985678706 236487347 346149846 89271480 100456971 386427247 442991556 10083425 359796517 750279835 938174499 222885252 947080617 617025489 778235389 264757570 582527164 882192786 979003858 293442869 693576260 589906110 742882683 950649678 960794241 947687996 998590584 685872435 769774984 858091420 962075909 850445667 915545274 681312637 976861316 126650951 490617581 404589580 526850231 643614819 938799559 942987929 951345396 153011053 531610740 694726039 979149477 28418589 643922651 454071946 497562944 963554720 991999979 127683995 986517051 649320644 704794300 509706644 710626595 702760397 719795012 450865872 893284228 691320051 898824217 750979654 980232801 806405854 839130051 292994580 863072578 206297841 874994090 491508279 552091161 743931117 780954075 509203207 948653393 760821124 830988371 400560260 742194521 227465945 502157702 802106219 821345661 424547960 917642172 83262876 545847321 709005009 871626718 897482434 941412647 760916867 848370429 723730442 783323923 299511130 547731336 37676295 62827014 216466826 453378813 759725251 765069024 654848254 928745758 677431963 867265323 391143481 395515654 241320279 433325672 661764901 769559557 699555378 956904405 946685283 972829379 554362471 892281726 347749695 890759387 525430836 668503100 202719510 593254784 353342980 727915954 338493896 717305043 59077560 792267141 570677436 846162403 667614723 949338911 526132307 574350381 909004012 948833800 623710111 985353237 972396402 981410243 353122313 716396239 9766655 453579140 474390400 869650165 442045925 786321748 932189343 981046363 32311696 794131625 108642340 220291132 837589118 987253864 51952955 246307403 746650041 823806404 651816582 662456651 132403708 933422719 27808546 132158124 619822012 773516930 950829537 984631186 396315503 545024300 195843 746170989 981397617 982053856 812978924 865145034 79981283 520658358 647623465 931951948 304616001 705173931 889513561 909656411 876107025 885426916 70036169 955504232 204509608 885544858 856702085 863381136 217346812 733584131 409902037 778426562 1110210 834121105 20070585 433598093 545596563 585729181 442487411 754513305 997823005 997987255 840362427 964708732 895091888 974164766 997916831 999870123 140226979 240739597 440026928 581171656 550013125 867640274 381305928 936281868 300971115 778734191 63047080 528795249 309619505 685952305 183285026 497054641 938578037 990819457 53471557 639639995 774601625 914227253 152555269 634348149 809453051 846811512 627139040 788499403 417210925 990976327 447469329 493845376 285332685 667057821 81010408 858407628 23014596 807179220 760890780 906670432 863625265 967989185 999618756 999788375 907890958 953623445 587630476 699174852 613676703 934201756 991737208 991842300 6863062 515931669 859950241 995386906 492275998 509987827 442935501 662800503 960397355 973494334 725441071 954797128 235662669 590628543 52949254 500001909 582704960 798541961 110428946 793481991 450316405 976669340 645139127 651456907 131909504 234301672 645784495 880138304 933070986 976073134 95945203 205815782 106667338 535179686 476161547 567217651 323648695 866221598 559179014 860768476 645702231 877740871 135694670 320611902 845880636 944922787 976542779 981897016 407739507 565503386 545578542 639083914 381731263 427475892 816867471 842716895 311482222 540251198 28928958 612711156 174056288 841673076 876835973 991516339 917920110 959941829 177083231 674493686 485534064 486468927 147785292 530562256 584001884 691950153 348832876 503182504 941140973 954856060 919272893 920039099 234180123 291198919 772441724 814383272 6078076 798125153 566647861 682286530 183125880 815497902 237086836 959896186 124114832 846020298 709636290 718510582 796543747 822944033 119637466 542461605 723157909 874502024 912875821 978087809 449995593 493603841 182529220 243324833 745485918 870365139 979482329 996092794 933961094 963583822 373896981 535168023 695656637 895310260 189730061 766050186 122347596 671778343 959909372 997284588 252965520 445161827 986511843 991179135 752265943 822391005 8779435 94450045 355455418 924932300 677082550 976858836 330648426 636528114 222426717 288438764 741350626 865768017 678468479 743260499 153046915 800327699 25646390 441844305 12314778 137103634 392113549 724391672 674828159 685744907 779917433 886831143 702592693 804389540 951729885 951872060 293679381 994402181 205304002 709592697 957420186 999655207 411887622 495822219 402872818 676919396 138565230 844453884 83682449 359632389 227509003 999017578 893012452 996253611 994487290 996067211 782045820 992197857 384091539 853532000 82905117 523109147 985253089 997171870 311047767 414798667 198721832 957348601 62047797 653342778 915919655 976403502 893742897 954378032 177355242 470740440 348433952 548022786 770806761 955980109 7656996 431866834 703012124 791811680 806360300 820696482 376693373 838923338 424738892 793201487 582781717 944726131 76918765 773007725 93103050 456077794 665036575 839954923 778560698 887836200 813446833 922408129 989891932 993450689 643782533 813130683 818493593 941346126 972245038 973687729 580541778 728941615 612027818 883778399 799120725 865275745 89602835 97249208 932064955 960724626 648346763 826531836 217864298 351139108 887837544 945341461 235819508 881354555 935884275 955760027 423201305 947005093 605140929 972310226 892539424 918650172 293082942 586748373 705740600 895924396 558731052 868363188 276610775 610301868 756426490 844430794 950658979 954671410 835491162 882239708 703147195 932063397 857912396 866214968 577943418 774820546 543065518 769719479 924699701 936957033 447250506 642650569 398226204 551067323 252978386 740592340 540616189 848358474 484916806 966185531 590545330 694945461 793795934 821654502 870080140 933664986 790843126 965582069 758736014 987497754 751412991 941147267 613043549 940074691 943258309 946763640 825694976 906565401 451293954 590566748 865371647 977251446 206439552 800065257 898085457 898494627 338229243 762078073 225970134 925052582 765165245 847372557 127272696 719896315 85676925 131101143 346455230 439632216 49128376 617265709 693192840 862155627 278336934 344350215 846026926 978419236 812964042 849339578 121648733 342451013 3689683 865081440 630163404 659115902 360324021 372445882 468954663 712614439 969412457 971874635 756957689 928205574 763954020 933317705 646306321 763318962 72998142 844135465 878597942 895387831 248526035 544453294 329362548 378579961 289986466 475667437 86275440 528036671 16639059 441022739 887138794 935700278 944482078 948300173 477829612 847941745 251023495 607518401 576252416 643149356 854743912 878745969 973485307 999298042 823468822 953311898 473003718 780838617 10008631 182669987 140574170 722242229 108548410 200804334 575116110 823435931 422201141 838100140 820070998 920013537 778562487 899612701 984582968 991290048 596045414 656979414 951805956 962063703 635663913 971236372 8917611 601162740 746212631 898351065 473507917 687049726 718507081 722037479 980785801 983326704 336027013 622143201 710475585 947830609 276845404 729359442 872592700 939790144 511552314 671357644 868454547 981561118 467681540 894640877 25446327 339784482 348255776 561825161 587830908 883770678 835081024 987074546 791996621 960842562 662623807 706178595 603581960 810282837 320864979 684612623 986502103 998924628 559416832 800687947 902060049 950083764 523553310 722220333 386214619 572442771 392931973 726542823 657439756 809189870 882509100 909993145 161699716 375490660 684511644 685819659 453643271 842286206 541059241 871852172 877240050 997914303 727028536 736959494 210236391 915918669 447885120 793287945 806312809 988085264 789605045 926860169 720800003 916909432 794588860 850041532 207054253 441348659 582655930 925572747 786140642 843051929 655831090 708817271 388645132 542133372 952494151 960896871 705539622 824705915 299535402 600859929 604374445 743439633 882481505 889953561 940058634 942102510 617692331 891086979 360307541 770222819 316171655 997230233 384867657 992811053 66892819 267274755 412962714 925038256 977299483 980349513 799098819 809370302 952946212 980093899 90951230 982385184 279334702 450784799 306567242 463910249 707343375 770859493 12269821 91101814 772991767 811857391 692637273 771967826 628999235 691936679 291579723 669673292 704276882 958180808 856610400 911588627 884431989 922259583 827514985 948182893 573169333 993379706 604632698 654884522 799022472 866689193 49492226 908747560 542790201 909092526 903179195 975644540 234174773 603601511 882829581 975897926 357379828 363238722 86918192 299201663 297348751 910653216 900594827 979376956 530610877 607957393 798924527 802431664 830296840 869097542 716510488 909833208 684731344 984112902 193733652 776446310 341123749 615433957 443992769 477658466 93356900 551424903 1904560 162345835 960404515 975054293 174236214 236854824 473113580 780820308 592908185 957892606 144479152 297681392 381953772 999132159 851182047 951818076 320321853 795529224 932219086 949242466 587044624 587893166 102656139 393081020 134759338 537010559 7758864 203780760 757656144 923978176 983321943 986349663 60773067 748794636 993885391 996181817 820268807 938295191 769319100 783452390 203993072 739551112 556436539 901590269 523681498 691362102 41594921 551382521 704058059 965719247 503385701 881124670 495254191 696916860 780329657 797930043 15980245 388852556 62235313 520632312 608056191 687707425 841037596 910141136 296827180 895574644 218580917 730786461 223122227 682793482 234040777 507429981 540700265 662244029 447454622 960041416 970249822 989537867 497330559 713231590 316589752 423733927 329836681 985921318 238466708 365190492 202271945 260972823 412163605 831130157 766301760 861379457 554940189 924322365 668114130 725259771 427449553 773525269 222733357 502291187 994233814 999859227 533290376 720666702 736071469 846053732 883204436 889542939 301783164 327814298 815863507 891648188 624067497 679123362 560308199 664574408 572504728 611715966 733793787 872182682 566875567 856308892 649451024 771517770 11295313 296294593 971570657 996922196 174072026 929968637 903795327 905229641 215229034 652202770 246808588 398759952 664422724 757308858 673617681 834665156 759947845 983196344 703088611 926494873 691975904 794671198 850978967 949581496 321251408 486666727 597237230 874783620 531363820 563757402 579661033 602147483 206306584 757631198 885232690 892660497 192178157 703312675 142204694 842967082 771735767 791133689 404548983 455128328 502594283 667446210 797902985 854862833 531604270 627196430 211987312 946259753 949589862 970651574 986387893 989701574 931780217 980510914 248024318 518751354 122414541 683357647 526727163 954535260 863286645 905463563 706695192 787208840 741372999 915670770 121964771 258714491 328943004 869496628 380718037 679376632 848226252 895180299 319527526 486089266 358901608 654743738 382413018 389645309 544094964 838148738 379433548 815218364 329284726 665185648 961479395 969501724 513971220 596796693 84380958 502566732 711324367 947091403 629224671 964921370 639569581 878975301 515863502 753607957 423938780 613996228 153283836 856882310 295326056 457764771 321039150 327289382 79922142 265735611 892882653 986152682 605066446 994265060 855261635 978144275 339111204 438551866 764852712 868653107 280372033 571395947 199424244 494928313 290449028 910833813 139597951 743939517 310652448 931457624 405966517 893071927 854426802 887088371 734462794 949489986 511073741 600368106 436397108 530154914 697877009 848323184 754801277 975854405 637596743 732521505 277753723 388819453 921700328 983440604 408455084 507017998 534697500 909272405 923688689 957586780 522484638 713182642 374670826 769155342 735609063 804183160 661825183 908269111 59517551 781309321 273035784 423887406 811106031 927446591 199813130 364231643 233224406 244807680 142023235 167938903 486913845 918543874 574963051 587647142 237509477 771726856 744317359 885984225 740072100 859619536 118354690 906346769 46929789 899647022 21503390 187105972 950314910 956025465 584211623 711011223 269981174 330648078 190885839 369058999 973933475 986515104 761585913 799351529 628273977 933857052 893080130 971894201 506856244 765530511 153881873 224025088 879854847 970685387 87085543 833149579 236585215 460410013 744521173 861076155 909678337 925936275 230604408 467641803 343159387 723149719 816199765 855223711 649307995 887408285 676644217 985365087 158177885 988274458 241161162 418617973 685803843 780146105 17333243 386320340 874451688 883149704 68721663 947090163 179448846 855621434 592948187 713423758 224533118 665099905 492101892 651516981 334038481 995379026 710301623 835839369 916215902 936860442 41894152 276139110 296057076 582200980 355853343 927114359 345749884 366732636 961396107 992043460 384641373 636840286 41888842 127408899 627952664 670795294 353571572 850497503 334363532 804694693 937562230 958869357 894398597 901717240 869067209 926588105 276519655 452288884 397060461 435868970 966905864 995679646 258094969 680733134 573514445 992406655 608794472 801091624 224787932 374983720 631625094 754447702 195435364 250236879 57267449 965879735 618282225 770804112 679230310 771405304 864787296 917549507 113390416 455084545 850491243 940753811 589342912 882926208 41961381 515049107 231727744 787212563 739908983 889737014 512425268 915613922 27825223 563472734 874016349 886717951 109396620 273160174 516038785 535817421 64943713 171201983 283438529 889344707 823800488 901967021 480782703 507703934 761830082 792062760 696892350 758548109 587789804 677011443 387626003 892756939 907252206 973806208 285430561 668145459 451878230 933505010 127624609 394185334 494856654 980337013 732363713 759215755 311996899 708364922 724111250 788395353 509671659 706616093 461839049 471368717 449299323 604087979 500216904 550289146 121227533 776657037 345317530 625355033 966116160 988276383 280570338 895332201 960409872 982037693 702983098 736462805 332164948 840017543 126783686 362542565 94325742 221480887 320840800 387035430 51977996 587949806 919050534 999490706 169387199 968525281 401377505 954975380 52999008 181198281 214334244 978097697 105907063 983880155 797732111 948040998 123025124 743709947 259437075 415081554 592056137 822198378 695111929 743966637 74852380 749721049 478036543 977428763 109853353 870653446 503254182 698703192 766602201 786347409 204418474 674745964 878704144 929584866 240047993 473829289 491882043 539565363 650431981 786844916 572369071 704655938 936714563 968546268 610026166 764316599 629993019 640050151 923459748 985496006 681896394 693175771 243905206 568789996 332191671 634876622 983388430 997397209 45503577 902095690 719495020 955162309 544454658 838949239 847430370 852391417 570649064 598744587 994304954 998883711 707852558 954853455 941169284 972577976 40624401 848911889 542905966 559863420 718808761 796387937 824008850 831725316 878017803 881492378 631318684 925273029 515546610 814181754 136663893 308069836 4627978 902653308 425689484 873975042 884922654 944474674 523518698 885152775 696086602 713160904 688866547 973433093 907216191 972440294 246959904 597328754 147343345 657985314 953510917 992608001 199830454 935856210 228602444 284761978 445052464 687209164 269508938 851827187 714367036 847005877 341359366 509302811 128403694 992255693 410662201 536278261 439145400 881253135 748480808 885285437 430907721 523308154 198103446 829493047 725608808 816830097 447850593 665604432 170540021 515624093 688928710 736885563 294058070 983177328 319116690 867803673 834507460 852989891 617471921 664736029 404123903 507486631 644451531 895784949 717929038 976817015 547640024 955204637 75974309 583520434 376636382 688642397 407460175 448061964 650512463 677869468 850965951 857846297 307917517 376685430 650320246 909646817 751787248 993670818 238498137 357915512 601051017 707639525 427727235 709627896 939783262 960201289 460791746 779028847 256459486 747100676 884905457 932774705 442818018 910889532 225224166 932328034 150283432 690317791 348714781 367216042 852628064 909610865 791209130 952630651 140628002 708285266 88727671 758493533 40648326 813156642 809399603 923590259 708854447 843588036 955313476 982106183 205580083 667023245 76906544 164103443 822093496 952451701 362696593 539370794 687468486 834794112 378711827 556419469 337252138 987183187 794264705 986444416 479569401 790764277 380683914 829193601 443040849 896982947 391425554 480455705 322268262 944471400 210523029 862557442 345383224 949301116 628853526 872727499 343788725 750958779 789543149 869610864 549769622 905415465 39969633 304222992 289407494 303932097 806461841 930984694 281755182 811008765 709369369 743236129 814545223 951006905 202845871 475843374 912224992 968805723 369096382 977996770 59033739 197986308 717991362 836911067 388180986 801109048 473602139 703820247 284277727 419967476 589995227 644932853 98267028 520845145 21177730 881501728 237791344 663546217 166453270 860561517 59791195 486993018 706392953 728451358 191544615 675401663 687835942 703866932 722878069 847340799 888110124 966663626 182128526 412850526 113376373 711742323 471958743 636989823 335347618 956639316 734691485 957559863 65297628 238312109 253708149 913796041 406638899 613624421 283833814 878805199 76705249 756261574 729969706 826317071 685661106 773018666 731941806 902656948 317073028 343838729 8805152 401206356 773261574 781911193 671844912 849585865 906747382 923305809 834598774 877525799 525799209 819348246 821280041 856960135 852824164 950567414 142749970 711267837 623539833 764320521 63081383 783784448 374516913 468217807 663637189 971858618 479709975 784965444 740822578 903362970 503570829 745647543 274815381 518333706 750191460 824112220 835463663 862135118 527421679 911267876 800754535 840760801 639903779 948195186 827341976 971024696 124532704 886288855 391281880 893159745 526865020 916870189 698736628 788142610 894220051 992076398 91461893 656885502 416646717 457343936 197154460 634932736 254870599 917804751 244812719 822714165 222804682 322212534 946794816 994738072 826342781 890253721 500054171 804430236 703650510 966254644 717964854 957718291 57983881 884922311 955139088 967464434 211452634 453457273 206036999 280075073 147369162 204984746 613081945 901351997 716879882 753969351 134819102 662233048 619638722 948505522 138428310 196924281 331771687 695666079 676381567 955671734 312222938 408730008 465044983 931855910 11168892 889332484 321430997 920284744 255569186 307683097 797472261 964660994 242195520 914787553 441724060 829797720 396157638 839883953 754929690 905085521 169642827 759998998 603229913 862226555 881749577 973567150 848053351 862649733 919875078 942335145 514645624 611968444 485822949 690616364 43350146 74521898 728606028 799915596 471442679 584018817 753013866 916908316 397064718 545235517 416873651 751926027 632589022 899950007 986496333 999663733 279701422 597520290 258672363 717089094 384826598 735458546 243816580 711408217 673315826 867354235 329447785 471906816 244065576 584734638 527625079 533764414 463085682 744176203 818868841 992526295 783155788 894887541 573500885 641840989 819558720 891771477 561163223 877212672 187522459 393407709 803397911 835361740 895935254 917027497 616301595 996433016 822576698 992717664 946295058 964126146 184392009 221886542 289620341 959515907 357516859 616723115 560522720 589725869 56803696 431113016 790550874 818549063 806066921 939463389 30042100 718365013 259721965 831677761 758517024 856975012 232280298 556190443 726536158 803793370 539329389 616481138 489908206 978792255 490696159 541407096 418292973 655687614 625953666 901924014 945110954 990559102 20506357 505974215 395162803 933779080 544480128 551922897 281451053 658900991 172750235 440484203 315706035 715777937 844758978 949819640 784713056 854631316 771225125 979993392 343955645 516260945 762062272 770647603 72431154 236705245 596165183 813064968 538573516 940421936 722401192 976668048 547613814 922620975 658069977 790362155 705972810 859436247 253478358 312476620 317578836 952628141 853206710 873001186 25628354 895393380 515090242 614334539 923498754 966074737 875680166 896796291 361536399 841134687 434559002 872334023 117280033 517186295 185558658 996008658 939290537 968742520 327100648 425439962 600397611 611142936 590660816 624554484 371174965 629709110 907100352 990414509 289456388 712463095 986416340 986650912 604316171 742243007 758240294 944218117 8427202 666171049 944579073 993135816 241029878 683145564 142810548 933474616 417759471 792665972 645385353 774865142 283961933 759826700 593392904 663336918 854491742 887821373 739031025 836354672 365116557 958804693 618188662 696718228 458379594 555379617 980553827 996241082 634255146 933527732 945839933 985789188 369159760 450366767 171189740 906591916 139476950 720081396 319745096 511036346 368470620 531396026 14794901 575802729 460828198 553442151 413549300 977510552 486493357 818175606 784407622 991671270 957549991 965074716 390544623 726927003 686763788 687835122 976717950 987974553 824874638 945916372 406225804 568953565 822094728 917062162 527402819 531437599 71152560 333742490 116087514 988648253 223908865 374988822 585989677 965166508 267216803 625340062 522972171 770484927 227693932 696467975 901001882 986512416 128476147 708796397 379605280 488724886 147046955 303702808 96748337 952039800 253483716 298711160 61050552 590340996 127827336 795495308 270806187 630948328 586135175 949563557 886881100 985553422 224904201 348722167 534884922 553463443 3231519 930455108 757667664 871268647 187895591 823716177 653782314 821981419 322617701 460999100 871414464 982663986 813856440 944814599 66476565 297001763 617984403 863055081 160280123 579094024 900327726 964070447 396780512 433626466 586189927 949372472 823439404 959545393 289385706 358948130 813586704 972623208 644425297 864093200 736410568 765743487 477240200 653055681 295796992 461722801 87951104 465983328 303878995 912534544 750493802 757055605 305043121 392455061 342743698 928715312 498514871 950650215 626773604 686373726 737352486 824993934 551019747 590304225 92853520 687706159 747475690 858916696 343133445 767215669 858682969 929456792 802629257 807811589 703131632 729188085 266127650 569053344 889517108 956052742 517535625 785513649 346260007 492130161 174523010 883693256 707337743 979614262 986831699 997774611 830447009 847780523 948818697 963406137 643765587 830055726 771548379 944199559 581286188 651045959 245568593 431628866 851450272 986769313 308881575 874339305 636607665 944003154 22628479 486973358 138088526 184655969 144241409 686811112 344861150 568468510 262649691 327915467 91077283 262602888 743404050 823840140 289220659 299294604 433288360 586894835 855872337 930403413 206480119 333073952 121931305 629885557 852158805 904806546 657528127 903595684 428000756 905760652 377637428 922741022 16373852 246836956 54494686 556696936 127707696 239718768 383820634 745813896 512874869 986660079 616160188 806296753 241544 676946933 589051137 692065092 315175859 863890773 238954852 662156891 4091377 672630475 741962168 972840736 519487925 717358736 783741403 983868632 826317719 864534490 394384736 487950197 228225110 964398297 779302366 802221906 771403923 984139031 310002839 350396713 394215509 787404950 265295302 937476110 475470627 675681582 532004341 870091674 903344247 910754175 504506133 772084445 70174707 391630215 280172684 589471349 907548631 966242071 750798460 890249418 509923879 556098452 625606075 856175018 135060421 275227063 190426282 713676020 67513150 619629620 709340015 834212359 366874586 619162209 950602176 967344896 15953180 383119539 447273041 472162987 944110296 994453964 992156133 999980534 626081839 712006496 162935788 991668942 718679434 812817450 766590470 812836970 575173494 873386117 317829582 984245795 442744950 825513029 562689136 572258757 993409363 999460936 601211221 830720300 939761319 962077562 523312449 906194727 603330749 807243509 530964853 941613690 37535050 970492599 966400770 998074899 130589294 924706744 176774425 599492915 857668142 954996681 402771397 638816949 750096106 815868406 198264707 917554177 814412171 815129458 956365613 990790867 952898268 964528270 109293107 312501424 845420584 895639194 137579969 626221752 222355131 453797537 180080267 274741310 665363115 853463551 674625124 799323151 816897266 857486582 130199205 425861615 993722765 999704650 831242129 910534199 964624470 997038594 665731176 933948909 526646784 937880672 515566111 684277060 161016477 300642903 465128683 799066582 502700017 707481602 420659984 938798127 66735042 939023264 697337626 734307582 494056468 947081602 329100533 577009727 296311890 505952269 289059661 408652625 460060476 548317239 807206118 953546898 288726291 500233885 749997784 927295378 43348767 343032926 592301927 944672320 343944013 866398624 730103502 946683709 315311928 827128914 448188212 640241239 361900403 618101409 178585638 602770915 486385601 548884668 815469702 969015706 9456010 937299787 889141197 976067943 732274408 767043792 997184972 997598032 418273829 453049472 307950491 787546020 533435990 961066666 946962617 973245731 496497888 857660361 43063642 452138822 157674280 853211859 402652750 872655064 923375252 995656337 377728331 615799003 619545880 695463815 60143157 800459375 684083426 922379595 634113265 988278506 510620289 980707447 937030543 991099121 169084554 569102117 699473364 880774676 886614072 974117575 217935490 296695556 143131794 518330190 934933502 989688558 473896514 899855544 152661822 600755758 640915145 775451597 205304873 341089644 412349941 507054132 651455570 741395182 356460405 680897558 39939458 617706977 798600196 928527197 144696365 145841629 287022770 357623654 920332903 995566327 610185686 927973260 308563976 848469157 37067818 860639740 374748660 806335527 342014521 620148855 998308843 999447072 553578763 579606992 724320622 826369512 137276895 394662955 503332100 567699816 674430773 768274726 652705232 902599603 947040763 966757210 907559743 971581181 912107592 931626951 858024711 892499649 292853276 416972720 93409212 283885945 130781620 557785303 469077264 842639153 12842752 754371227 642884456 825895465 211450097 669512573 198882456 856977380 749562403 973487716 606038905 769928358 958508374 967473110 775080897 776275787 651733357 791407986 797733845 954595102 396639475 649372182 304221053 719905720 833756884 896492985 348125923 577932448 26934273 599722687 99496121 829370305 232422986 514625389 965722355 986244855 116035271 531412229 117146488 921278824 629080895 709316180 423989825 648323889 209133207 875814993 554862996 645902994 291281831 520998810 782003355 947112926 588593151 689774727 314793025 872522661 371829252 473917363 334055260 962440457 245313278 326989632 939154921 973923068 524143992 799342507 447514895 516593981 401843886 526196417 903636499 983897423 913499842 916634224 811434080 862717053 85103555 154748061 465666830 738099395 667543551 668594341 186352808 605867728 813392533 850344481 666820815 842197001 133271740 743237861 760606901 776106681 883482878 932068287 432693442 947753613 843202394 898279621 244806371 816500563 984056925 989801059 28350081 906252847 715607132 878190556 692799775 850219469 573191913 728852430 625475 84286818 904279929 992686333 447372424 589683052 933386046 958172839 602157369 730309743 155247786 928253326 610260906 691497814 163269350 998897863 666924841 981837516 553493746 613654558 443567343 901675465 437540327 905170776 281929846 631696929 904153497 917999547 751587550 905051293 621600067 829247458 199573525 466110351 112725255 840442458 218880567 656500886 236369749 362729207 997035910 998271067 930056578 994864792 252409090 432581076 377094944 419609403 612036221 930960947 374530196 473517790 178772833 442275058 3286772 941498819 556780790 892133399 743362487 842417964 288705717 852882484 622188389 702364052 316681240 510112455 971750709 997045619 756044498 882207151 271015076 916215683 376442185 598167979 592613721 925450177 464456626 656605948 846990582 979165328 187952015 634005678 640174383 879055074 441812039 683291984 583118503 590784981 832489261 956414907 286855484 705550253 143302496 651006744 992878225 994560731 238677286 996300878 998790037 999932470 135288587 711498404 370831001 912531096 613493117 707339473 231349420 552199942 141092256 477017565 484227687 623711199 2177975 45512521 838626668 883909590 784033465 857578726 354931807 684531889 211043088 949834345 704738528 960385267 752832904 918858223 811767891 996372646 911446806 955738919 144165839 759439529 651669015 741087630 75039412 132633461 33936913 889454061 918142049 943479550 646836985 962319701 482159938 658719008 996396055 997947536 308740092 714565242 305671460 475333975 600567473 788842596 409564244 836014242 166971104 193785957 826621188 855160989 956710884 984577914 248108987 355151718 796922827 905767247 550369286 723888517 194860574 874094070 468594311 560170059 357045166 692603805 53720860 968566677 357844802 952234980 326559047 734658449 456477416 635745487 295752691 661772167 691173502 803767083 672409344 973310720 923780391 945040637 824988993 995008242 168471714 637677483 216427965 859617724 274831087 504286237 990893051 995928443 76792404 443586181 32145379 754734538 723130405 790819064 492604388 677168642 744737783 762751040 47804808 103870212 931911167 946513262 952057093 987038193 480687203 535094015 870999844 999925413 294252681 711031727 891410857 910353630 223701185 504665939 315486407 374834511 951642099 993666507 402111458 455303082 554512480 797793838 733421419 915927778 824619300 854637455 181765958 863233397 208574139 952399488 824865530 885504088 356267893 909183840 223549143 817072383 301110082 936958234 731406354 742666023 775296650 782729956 305539932 656820727 356731080 468330433 36189029 419311344 459900760 846508210 816662259 838224998 334248567 997625739 659585775 900609860 39312364 592286445 827086352 863003639 93087407 936590516 496646476 795363983 779514902 964915346 905735617 957914862 811857588 931054626 232388680 803768448 421133260 479378325 44331743 181680690 341767292 454426503 808435861 976429743 301581494 356432026 990882055 993231943 292381403 822769504 879134764 918648772 665005573 842894106 890309773 940151127 719804767 795771990 137302031 975644955 725051418 844489552 162285559 663686161 174467186 952737685 247601882 681951061 192664147 523278515 549664632 871969591 457748433 909694170 262152561 914171794 30724189 761892221 588974691 985457602 458625425 928717717 315453299 574488307 638707924 679784788 667618524 896836810 445508889 635154497 541062194 955380857 9787139 617660416 30356040 226820715 737535829 880339751 59110277 627214983 225085882 423200901 962628335 993410659 415676739 785871856 803682837 876493804 943276582 959177173 694312238 742011450 885842851 991660571 478877308 846686495 391195325 721782511 867905037 943131039 656479415 797575794 583419524 887101746 279812248 811828913 812673096 857143614 245844003 617552757 469037417 551889939 849593414 930859539 716522114 969079196 857003850 987485231 987757135 993230693 368118075 777101917 278991097 320162241 576827749 952467603 738134627 881834569 246096948 654383949 320003226 545197285 495536833 612162797 150702376 550237405 950278719 985733360 705736382 887944607 969764853 998318601 417503010 888047483 349512691 609804960 646480178 883271382 706416848 936132749 977625150 983269466 192653113 791491842 401848547 885835913 222242343 571564686 499791903 829601837 791390945 815241006 566099543 827154272 194917632 924961464 513572600 554721997 332013230 691346270 238173558 785488941 692831209 935052035 772200931 940384294 700009843 917147549 964494030 998858991 55148409 780692327 975233004 998358576 748918229 755707826 833051125 990481348 627166730 790920012 308336929 989242223 925633339 939846903 257346758 314818103 963828918 990173418 325601237 870102023 651960813 840680382 478225065 792175317 800259298 995340571 451490518 952004766 663213781 841870459 935988329 994797085 560495730 907741141 32713492 328579793 728138187 937536248 702362837 747394738 275941420 323310470 840554649 982808909 589586084 746316791 583820315 659578474 982756757 991642082 667580142 697967710 84901673 986503838 209609120 736405159 78097041 689070949 164158369 295875729 495732649 653567832 168503293 899245158 922039070 955869027 750812604 899589837 533296975 964234246 653067453 709437802 156331714 363065890 175561397 478467833 98865989 702059255 899421435 941510435 143427286 275681469 265955473 290838146 532979608 879200043 747392138 932742023 396145182 701434507 68798186 892066537 769496471 973923346 474703684 953178018 7584336 453891053 130417852 977513969 444097350 608458701 34791918 953413092 863610422 867735571 251198995 652997627 154820684 273173884 865115074 955666108 737804934 940534730 626742349 934955795 857456739 927853170 10473436 419891269 223473900 793842691 317417000 597591092 220875998 626799260 886666437 992711290 726782403 908481497 961386346 981418241 601109410 948280354 372369673 407017833 669351775 943640238 329459743 667990602 297073485 679398423 872736350 880855565 106446771 529988577 336082418 390933761 789519641 913618383 617051578 779915966 973005245 973772051 756895754 764093677 854910201 954687519 650880695 942682485 957083537 996728078 46307625 496403311 58442934 538456504 119777503 889207262 518069274 918120862 763913726 883749288 48673922 433729246 996173685 997774322 144078338 609585895 480824853 683177189 832326088 943580913 849176829 940843125 149826107 452652197 433686240 552365557 111317381 218910521 762960723 792136344 694089275 981067080 497397714 666184859 545494270 884195949 718212840 832368283 72548544 340985235 706156213 738952473 91512592 843773301 936095890 970402381 261066046 949788239 220190116 815702118 613188290 806161950 714636835 988533842 455076109 595060655 478829138 811619035 3240415 776825693 205612760 933954557 914201107 970769700 929104567 944735668 290654876 534689546 580028370 964857224 768409019 968798059 692023681 830610837 476646497 969788962 719078244 978767873 301951738 624209487 196599970 812697103 450072303 783809465 585802432 951346811 296929612 805227182 592207772 773395831 793249655 943430497 880522979 917514426 960469751 989491825 305296154 901616116 352674921 633354684 2704040 182480622 30484349 596302541 166724041 225510524 914700854 976223817 991353019 999694129 243611273 924799974 156676189 312716057 550447959 856907317 681063842 807787779 659558836 820470252 828540499 833505970 497224422 652850626 601503342 757967916 754852958 916549019 474822560 558060868 388410201 551291320 289570961 704798459 669151148 924273141 752172033 835727624 565119668 719475022 162102577 175172013 783018723 847494815 819669577 825421247 502299314 840001506 992624412 995397936 631381809 863495482 55368905 193913999 735686624 816553015 285371313 387442713 620718718 726090708 367069044 993829385 600341171 909891268 952184444 970045058 41757310 212604921 4167884 600289463 748662395 836433432 979105840 985123687 828714780 876193793 49166044 64519909 464651366 983298646 726704570 958972745 549394024 914236601 579856141 996728875 247950736 845782743 496959882 793966013 453377984 569522976 635301278 945764100 969375940 995513239 304114355 996007718 577622562 622179784 915110251 957308916 637080113 820986815 932614172 959968910 577115536 626204802 630097044 635015476 374547925 620244558 237390043 854354671 879795984 899606628 297606711 891456971 969953126 980116661 230616551 708316581 48953661 586794559 925288095 944360112 762702715 990277962 324172928 861785670 436250798 607338818 613468136 636488439 577860268 830504833 12890031 971450521 873823973 965409379 219566188 786933863 131481259 490807479 13460394 995912978 431659158 928322539 193667074 837604137 153944574 777003537 73690453 218680825 727188237 815657381 47061281 713393985 160731325 202070850 809241695 910355244 326736758 441813508 324798244 984132260 435817743 667696222 146847373 212939408 956429898 972037270 698338426 966477461 457499994 542802815 626106203 945485819 613041315 933941235 680109508 830070208 530542613 565539734 502547933 517293659 135727988 560541892 945321978 962850266 222600873 822191911 914520916 934256106 200964590 904297496 740288549 984001595 172131026 900690722 610939551 744518359 68732867 928821965 551866733 596660965 580764441 844108579 576653990 956187810 578935765 658618876 247932441 959133502 894149148 996870284 533871311 958032172 38542466 566030935 723275789 794161604 906120097 996587113 498993756 924476557 712177995 765959893 947260643 974824364 205884646 793098068 889540019 997353000 88489606 312003490 409050944 952656904 732864694 848124325 620671222 621590156 47664048 443819405 773126269 775896677 163244329 404856294 998185619 999021369 659925337 918493359 171227050 811357407 640530940 998870076 299242013 850209843 581130544 674760245 955860855 957415415 741148683 927555465 442979240 474914597 483901955 716893905 388157066 671576709 546559198 607944716 688873241 965044715 945042145 978935241 407792565 922404268 863138204 973120854 954635005 960076084 727153092 849090558 405953391 797296743 79048138 729274292 286194300 713411649 594724013 649551567 428802243 563107863 77487032 87489639 745034107 849262926 565763754 707210687 268146339 951624605 52258997 110493114 25656124 911001071 894561423 915782081 714082712 759615710 315509035 890906855 820433875 879568203 771284637 853870849 723577897 766792443 253021273 870612841 910512490 934229153 523687627 851257507 364296483 766374678 172418116 685486650 354106999 566374209 395794418 887634453 947272659 996712972 583224576 814665864 415916970 433565057 602732675 658148604 415338472 899296785 644648831 957779057 409696746 534583365 614755730 844568671 148665026 385843966 116370731 826280610 221340799 799096044 581847156 905874305 181859781 543058606 218455116 379488236 777158292 872633943 586051867 971383656 442304812 998641974 543365393 557727356 508282896 714410746 746815629 899907366 891784713 900172116 170849105 494330089 749161635 858714052 549524441 961057887 847092294 961057930 418330375 673063848 363560105 413382674 664787038 720085732 457964916 819773671 484064847 879034199 32304066 479997034 967369539 976840365 613222330 980753128 936015017 994380516 423018085 488249986 394475314 959930369 558801501 862834534 691801942 986937159 761921817 836054053 337771537 925394915 675102601 924352633 718113813 923920118 314966413 928781549 289813634 956623687 879148704 882011070 512979610 747061866 853476547 907529947 439765085 573135274 431268529 572458077 886050161 900184222 671222109 699867924 629579481 972570439 152969213 873223224 763144618 983608869 665496355 898070168 89321669 935134105 264151289 290051825 383983835 503634358 35795335 682404407 743806620 956343712 542169938 898782985 319782341 681902279 130080821 909287482 344829875 894176000 397680229 707611879 719075641 752938479 396512133 847381409 502150978 824674114 645304 116677452 34881523 578254473 529539726 965184281 203581182 791650902 567834843 961498636 33593113 670880268 988817914 993767497 893409689 894504754 472039242 867817618 340705973 923671698 698839413 704591385 845370363 853216532 335955180 997009206 254680055 834542302 299413390 951087704 729804706 899948914 317575869 412307389 113039992 707490912 653542804 681227496 235295531 862325329 641066706 803535507 891338614 927776996 379836485 616735328 509054425 640595141 370206910 438623286 813078876 979000703 712158513 895774273 866083954 877450067 306761084 918417720 639670611 761782622 966238574 994653440 469519598 875591023 638202436 821501634 351410056 518072204 690901515 834222247 989787301 997399786 39677675 208951366 536202498 653973274 147091533 454693954 670692450 948473653 645531689 855730709 463480808 968624016 751674293 878436851 102010213 633153396 850200820 964103112 819935053 898696260 806996830 876886273 748468826 877758431 561443961 968255565 678853755 901396238 813920408 987528183 983936514 989225791 479126104 621935666 215378462 817729790 444412421 846279200 540705204 902817535 114838321 310361707 113509656 294561872 527433931 818517893 671592247 750313625 288008561 401116007 751393175 906350333 933407783 976313574 242973086 858933757 534405795 922751280 154583879 852674551 444253864 619459585 782308173 863943499 448607917 853226891 445619707 904739101 82856599 567757600 865005227 869115164 955404962 989706914 87434670 252051487 132040073 346160415 71733469 599979823 506628445 702381884 488763732 681303127 817362310 893696848 97103107 892786162 62878912 696280012 40687224 448299065 756164169 863741620 416737502 601686744 719013604 757496714 369276553 640592995 839266372 857515622 448430801 528437107 839329245 958857594 939275035 988588531 8501120 227481387 594309909 690476098 794402792 823924855 870791277 921200852 68729316 185487024 902953525 989693484 328995255 820640797 21753584 464042133 342702081 656500678 670587962 761909948 153126922 325126464 715895569 805162301 477016316 929684808 726702324 954532416 172788722 742185794 945283345 995909170 985723779 994018654 44892162 764851837 136086433 756490211 503807813 533203520 795800419 987214650 641519369 886418684 649184538 653150459 467079518 785014866 45493391 573134157 144899825 706220000 853028805 925086855 128233928 342434783 664068818 821116299 104071569 949868057 447153898 782827764 991152442 993712600 313575093 487172379 347684054 367710654 865947657 912065024 489619569 936327631 497892418 674937299 738175303 956679530 514309482 689495808 927366684 946851101 506155780 598615679 31510781 372303587 100584711 409426161 665688200 801648491 109570301 984975197 796260441 991470646 245034273 973933478 917461095 917516730 382732881 445110154 324003341 753147633 884789213 906127830 318618552 457064212 484169349 965638968 869929957 997799137 948631645 987686815 734817471 744817494 65385848 335003214 121834931 230931131 86902461 471718895 445794881 529196847 704998111 921871888 519288667 814468912 771709608 989851070 655249382 890128635 632922574 688767203 484021097 645796933 356618789 560592313 443597716 705404812 325541315 803949602 422539996 737175756 727827184 855868863 379462455 585666455 628841632 842166355 979747068 981739384 483911381 622784798 137092248 148477636 770970634 939761650 891097880 894962476 205377739 233060739 480483242 742729337 957373446 965485733 612264733 976750807 538462819 925845134 805079203 916145491 981213984 995186356 89360043 610635153 435628494 860196841 630695369 844353586 945251968 998357638 622812144 761058724 659621731 733787761 841909017 959784257 847774512 943498941 308288799 404537900 318715347 688695542 687953037 725590462 821880150 864320951 215058460 583216158 539345056 940559753 305605457 440992330 364808551 409275258 798085253 930652871 872115460 977642579 717665556 811514021 312364364 551460507 655238841 957037423 849639176 945993712 421229513 706429323 246510931 724147607 910994101 942414804 631018791 927951141 287646000 455417263 77482240 876306405 280694437 653447794 361473568 402613982 96608573 166134691 361187198 812954494 43595589 467036219 583638645 890469680 406819968 611484525 910713713 943747914 580678903 924853199 720062181 859911265 953570503 996408431 203809874 681815194 751133834 824143425 789677092 882164891 789759237 843031858 91368860 798481535 808790300 827752465 260175483 353422101 114100777 927337082 607862377 791630667 802460627 901026478 514299263 607045809 861391269 904218306 442036073 482650389 622790659 959473475 440887669 661186743 853104813 918497942 446550428 464050653 941926495 945157540 332775496 885696601 292108512 652596985 75876095 831567042 75682376 461854926 836427428 920785677 416223966 929720267 573809764 581668637 568669542 700877172 708273108 909099161 797760709 797883985 81796839 184225026 290749393 509172100 589836500 981926952 46987714 382070247 748108896 808381895 210039093 433044879 553049747 680516788 491847978 747921124 35957080 36189944 523805459 565813874 352526531 788217612 186999058 345271131 821186634 978865913 442315611 918997645 968513744 976506507 115721776 315457844 345188284 822634218 847314935 921776486 436736924 625407508 200056077 510761254 32605492 128454299 190838435 706817955 218343025 335410261 315443068 726502986 556745806 883235011 814512509 888783457 722206324 838678032 372141747 885733224 919351397 932639288 496568680 917793243 537668455 887404263 578074754 855222699 454135214 533176455 487276046 754488145 739083857 885334013 179686869 941529882 847885385 917285433 363390516 611239417 825385903 897532601 819976626 941156527 130584163 342794063 581659523 657898002 124064274 446646739 185181149 627255779 465134836 553762087 466558651 647381166 650101798 850394482 164275458 167177047 870813135 880943186 944220744 987367569 415260099 520336939 542317210 620513538 479405418 520256829 464436008 974149332 271243129 666033140 159616961 478927499 188295871 238333234 157922758 546918206 404538767 417658441 822100458 930471351 656639908 804332714 998614611 999757219 664437664 994007578 588011846 790224855 594136353 678977479 676228298 738861597 23113128 140545804 310702750 744981160 571255093 650322599 283620263 389273969 302613266 568729050 531835836 795990342 228100872 390623921 473940305 625454344 573207495 621290184 259985098 988063399 104816913 865765124 639160541 673032039 322469294 482122192 293367485 504730886 61556638 692926280 111722584 478192202 872563773 935119812 910389171 945186879 994602432 997677739 255640716 576337120 507907119 817881604 764878802 909398682 612491300 696873801 932117540 950032863 418970490 987433080 188970747 389517370 429718036 988053711 839221266 993845035 499146274 885868111 328523525 910735185 46172965 751268587 624561226 719090803 634168667 706539917 49438719 996750825 65249732 669949663 187228032 418670254 693665320 849263500 355256707 684478448 330729167 828078289 172286793 426287464 505026519 791884491 38844916 357962845 837552559 863017297 733371250 966425371 135307321 973518148 126058057 940369970 259237430 913414787 700056358 978737664 631192758 909734187 124828054 647872531 314985665 547841883 23194054 447995057 905268688 912044356 869465585 913438498 533998260 982380756 414100363 859554301 816054725 820710108 657172331 905945692 486681691 624794278 621786789 941584397 623184685 805112612 513465829 674503097 351790351 869897671 384291980 653096712 961170594 991529596 971850947 972327114 321329324 617026668 718322075 894922306 463413122 982586811 889195986 923141109 603156888 786569893 747269079 976332860 372895415 802502833 130072862 425715537 999083685 999281572 139898383 721339788 536405306 891914391 493974060 808773197 923117566 973801982 466891897 913505335 161509261 241183471 950598679 963708892 540328695 981989153 853922427 901294369 981311290 984389375 178966128 203568753 705570994 819842213 637437253 832650301 251277093 411834796 609794804 728808533 844281190 846637215 770089584 873434169 456526122 698158093 467340233 568653534 207675403 889833526 204749292 799210840 683889542 733208576 526211315 904340346 592168065 856313449 917426662 992453138 574245563 859293703 12232966 454434985 173443321 858734923 81816818 956327269 534344714 548472859 479610906 521449761 832443879 968886691 437585625 765438113 696058886 764562958 418488976 672136207 163144748 487753074 323124134 371281022 965615576 979907379 218792473 507616378 48967433 981790858 406067242 683744078 310284975 639730195 779564665 869635811 163478854 369395318 878957444 905752452 336937983 961876288 830111243 960986333 678256371 968165104 336709352 567515563 654181449 784137960 489854055 859400779 301046399 626636799 607533565 786508558 934461562 959651921 832399574 918630342 689189947 692671801 65206342 805788193 526477749 929869657 552377879 722760994 955785373 993948072 590896975 939527622 139155551 797012343 307292961 628873991 175765578 538786057 916569934 994284462 375275756 697395752 143352039 758020323 530519360 824650918 135240380 757856459 558717091 784091703 777881602 947095463 177642200 765747270 522755118 785186437 908703280 976908815 119785969 147473459 839998878 933965957 207639048 975253315 567972094 660596449 736639954 828800126 65638931 393560992 973271802 998826276 240715722 629879201 324830670 820955265 248917227 811682236 729543478 807321533 764955680 885837949 167527072 650348695 550441886 909205193 917086790 972338383 978340679 981084120 125212472 191812882 257621257 871556870 465668998 829307667 121836480 912395395 95706716 993786898 639466584 887495705 893422071 978535701 127170910 340279489 840640173 903092622 465993612 658686579 569827351 883646930 899804416 969884756 838825939 937866299 431126278 436618277 442079313 990819585 60043687 467246337 658529662 921006865 470252226 722589776 801682984 939643883 244069752 584945456 412212796 790963335 441994911 572237193 665412194 917425255 879557821 911065834 426651155 531569861 866181220 942030786 623857282 777707363 715908904 735378302 113000233 764141701 479131413 934658657 133262709 146909129 369185199 998737139 923729416 941237030 665114809 704712693 734594364 903115885 604164937 919261085 394708142 609563762 610188106 834293820 168668115 961710475 60517060 272993937 901570260 923991881 921326932 975395864 653231580 667549860 278351791 562193119 514087108 927675084 575554919 786169719 898488490 925730973 836670099 864456115 478058579 936993016 417992657 726259214 966871520 967618886 477861121 520943600 42951869 648675586 884782180 976742981 900167019 986540404 755714902 832701449 511486849 649495483 110758100 453759441 986943678 995442667 930462327 980642141 273124881 345168469 815545437 840199222 45901901 781267575 576135515 583632869 354413386 985829437 674262356 684871572 777094634 937006621 534763693 717378750 921893416 971046623 956474898 971905060 725404629 899035744 261317177 625571833 94041314 696486743 156548518 265125864 356982124 507392912 179968657 294140697 999012113 999098650 292941515 329201643 182132852 845341255 494890023 809026678 293451309 514052960 256530299 350179250 640025884 741985169 937261272 976408304 556886467 978781036 153417824 562181522 934901878 957555406 688869688 746857218 370594702 852233762 241940719 618508081 219512833 506381389 918024368 973535043 199621317 332520950 921607262 955231628 453351430 488544662 725043629 784410575 489793741 505530325 894779909 932572652 733766567 748355379 639284207 652503564 419300412 584078767 71645451 688283221 572066602 917739004 921473508 991603681 819277579 905644234 383310666 820575032 820553501 962214057 676905503 684955564 567300993 639782575 821383973 886187805 946345365 967600007 780245019 805340887 993593217 999317482 387773818 798472092 340602532 381537882 717626578 813480726 251921778 439938132 371417600 468951275 927717498 998355700 285699805 423502883 726043602 940714445 581531048 709729441 962045421 994726650 351885096 980011083 379876934 618700790 876029483 963739623 145785887 607661550 456503204 822624612 425585946 726986402 534261141 959845818 734464291 739802136 857560615 936525422 854299234 864040878 407672097 411742871 567270350 735031730 167305025 809213102 884291696 951253390 179278871 992588939 474902206 915063700 524223934 788025917 5488740 166679851 85827338 460397669 773666999 794807599 87215354 341676071 743307896 897084341 360252263 998664932 646851619 828363713 615376993 671394883 254740297 693338985 315146620 376321597 757229301 984680603 329718658 364343754 787715509 935986134 25181558 502857756 49473343 366052277 231330129 908130004 43996191 163335882 690296914 773975860 341643266 621160749 555411125 848340021 223923113 226653080 95609189 124251482 56080997 181591725 696824415 846519846 758697816 956204596 27952039 51749449 48362349 211210168 856576422 908996933 91803938 299468379 469415495 801517928 3092330 171528717 341315577 442174800 718293729 827897649 75143700 822732318 790630592 912653124 905171114 988482963 973981164 985254699 94386117 226333568 857029303 865611031 342428179 668319271 593854850 945704293 553895237 921087545 115378792 912368566 384381138 489932888 408979193 914000114 789023757 967866406 276289469 326580246 537698641 640355916 474677424 765283144 401872576 872456374 609436254 695401587 538857657 981553353 27953070 401432142 38798394 40903526 65094310 632899893 806700350 867989723 590047284 749833744 215109338 547123186 499655316 688912250 649539133 664362040 199733304 572866075 908551902 949273504 830178784 913298870 395530744 865303766 764701829 817366638 554925688 570326604 912181409 998188670 898042026 970472725 610671574 885538421 946511869 950883163 516084978 914944357 509660112 983450906 55350654 444076899 35286623 725668033 931558405 986886716 301444442 532805196 465724578 483690801 350779590 480291518 219330323 863659779 414624113 867974611 65510393 399409121 285814509 317072185 746993583 983152678 203572001 388978968 635318939 792144927 585393125 836371673 218286935 786049207 155236176 817593362 505728046 527090590 68298802 771900477 492937999 681012389 283885400 624811456 885670213 975696434 99421597 509865161 495180800 890781344 927808932 942442538 891736575 917278239 857587820 891837483 265981116 948180913 737650587 779754572 19161025 531236594 176113189 760646206 25544412 961648817 869390416 956014022 688266578 942607046 379804300 853267757 69936622 601304398 221777601 416505719 193857478 684202516 398196372 791859689 340258820 660767681 758758563 991045935 148862627 283269749 416037746 958623266 44124139 522497196 112248171 813595963 822479297 953646295 485885375 939787740 646016970 784927525 580775396 661217112 572121990 768341257 745972094 926889482 209495827 466142475 779289551 963188571 836928735 969530346 952300702 976713992 764766882 824765725 559803687 723378416 466075022 901641214 949960363 971472223 867886621 963750922 243444241 784113038 924002266 997310054 900101072 974068830 22788090 663056220 385920779 733166434 373325968 400083473 435085774 573179036 672769121 736616949 278772430 409334370 584511887 820228549 544165999 819037317 437233927 476344584 969193797 994211730 47299466 440733886 337204559 649579873 322705814 984577985 636675616 968579662 123100051 136181580 278723977 707126230 53675778 805495984 514789213 875599185 851203649 936120180 576768583 748756431 779409833 870643584 114227683 377370894 975105567 984163563 463438863 653999850 235323188 355201761 741315867 763037524 521758609 714967740 603546192 906880911 41989366 94497368 723166773 739407759 809769347 921627076 72893605 84755696 466454639 756313606 708393149 976351446 697958180 991821674 655490284 706251968 293611890 831307345 208295484 777896244 316252708 589733481 348847328 950646565 11824350 99287924 564743606 996089087 276225725 310422960 290553573 292421689 333637901 784463549 118925957 166427734 133441404 881018880 594230594 955838342 496454856 710300130 907790276 939136793 947937384 983374354 595992493 974046662 714682083 801618724 568356083 736752003 870894442 913649460 880676944 979527394 84209490 613479393 808719097 969410075 650601151 893142935 441523561 794840848 179910865 587356624 891296686 949164702 250233773 295600627 725097608 993594896 963789686 964341063 693511236 918069018 662069292 858132956 593209772 766135847 669558989 709516407 778453973 881934757 658955399 860071160 620171760 817264142 674539469 698964862 641959330 966814543 75811972 469110011 677794593 882533484 556725355 631781544 912622650 971113155 171204956 825904199 820279718 993128340 587175250 662469840 890208610 982507479 782240617 988866154 635045897 919582846 97208512 564249723 939241843 969763625 642848151 985873740 839742893 908079749 644441147 705830282 68287739 231685063 524471202 603583837 73395837 204862224 839134730 935596107 946345617 966597572 954907784 986323645 747475139 857035776 503179859 569652794 525643326 782998732 640855405 723306076 807201343 899161152 288226690 496125192 690801665 974777507 648845740 871388736 73974492 799868401 162605839 337910633 861030280 975007147 777514927 899352485 492660667 559365876 863630389 923293498 852548467 999489013 220368692 849912771 610468781 668793268 475163070 732470702 10173229 340172857 117546514 979700789 766147477 907271649 616924122 799816736 403803670 806623212 102960561 552811587 461864468 638610955 136490660 822489032 470502764 508762242 756082980 827028992 318300005 746317604 844666860 953629800 271793842 459780225 182676766 565765840 987043905 991204410 99334399 865159691 295979859 617058216 246168648 577009397 623514204 742661781 55687285 256875641 817238462 829060552 951434891 979703031 462715360 788817507 138665970 805947427 585327272 706369787 619108767 716003538 375128991 621876471 983238102 987068783 606681578 931681699 330778091 652946322 145314269 818899392 913755986 925153464 117978084 153301099 356402714 524404353 532394884 956517432 539097628 877275186 120555449 126002452 465535817 806738425 42920041 742632647 94757589 300957860 35350673 704695666 759957975 777274558 310357608 382253019 975366560 975657590 600037836 886337950 102889335 719393011 688937597 943488541 799705977 813083874 456849549 808689398 48898978 111548632 390768024 752655303 287979306 481942908 345210912 854255512 94442208 342736681 458895628 971799691 482274380 603401446 214797852 450717481 591370035 915863478 166848188 670511117 264142640 891687285 255342826 503650013 698339147 949920730 969822534 999008294 258397579 438928933 506581919 935415198 838453537 874195211 712778238 770246667 899552302 914394061 732084991 796888156 358546071 867757996 600624577 940012023 854024063 935724178 445269599 793242248 275547199 705748369 627385442 805014843 704347944 991243159 882533762 952689615 998922922 999566828 857354391 882093311 299614601 640568667 877457813 944490920 978003300 990136023 673500432 986652903 844981013 987411588 961353342 989453103 280679633 506802664 380911889 427012998 718532072 953939905 277235690 558035820 658459106 951342976 247083007 716674835 326042024 408425779 733529774 855916836 669105682 969830294 774455068 986654955 829476702 836916629 954395188 999295492 233779493 373062394 263678012 796036583 529228101 960968862 861000479 930275765 703713876 934606260 192432681 681181381 336662187 478508391 95078495 860878927 661008027 668765176 953609449 980527505 446827205 972696611 928786889 995028825 362986437 937304844 484734203 730892263 452262546 654215348 221252133 437576909 802715223 964848446 98132718 964634691 648302567 889138511 108052603 278508168 670633275 863744347 407260180 728461701 601989937 619594729 750658806 993572768 272770033 815186951 297402475 619840926 65418553 693386599 594125261 981830862 30224567 325009003 833087700 929706083 210444607 475099938 934396058 992866558 832654008 981599976 902907691 965437026 244471095 533589578 303376883 736480977 88585661 603392462 79924158 492519383 83351121 777087277 638802881 790004909 594060851 978485311 386101713 869877669 49082944 981229606 489566922 914349554 986814326 991303521 990874326 992212166 767450622 902617375 449340432 811700875 771932155 996213194 236449231 301290035 683630364 846356259 443266145 476662660 893420207 898864213 250230588 366234032 70485243 372193343 199357592 864774348 769029502 844896799 452258630 456044928 99238 819215700 382936274 407202850 914401690 949114148 41058938 703611320 581613233 686901336 702248811 892762222 54941857 98674188 317906701 756100937 851525665 853232359 70673438 554535188 587764633 963792555 166857135 902956374 863237550 873390020 370905570 844030453 524742874 802823201 123110251 501594725 31267692 654774811 99540151 837443238 456948870 578397299 142845660 632808896 28468940 681352671 572217180 845857701 790161892 875930968 915384344 957983266 259580870 965168575 943707870 959454349 716437723 947454754 780244277 902019531 498230937 977556416 132666342 442032192 20450552 896877042 492482104 888746885 985065265 993003296 28505122 382391422 9800699 570932044 615503813 804808132 777198371 902117412 250215916 325143942 349443655 485093825 946740212 978056273 73188032 311902317 136470072 414686266 782763054 903864671 874601539 954070476 837976411 840836699 470250462 796418193 463030707 843932024 856612223 919645131 561609258 620818231 959574391 986639186 567817043 951381956 781863877 929518731 741789094 772237086 779178829 974676827 91653256 166934767 277562047 659578214 156567143 419338114 881185166 900555519 669511402 693676841 839539569 884900101 735571194 921410134 506646281 509993381 580145378 622742077 167091040 896143804 974903965 976320120 705768739 754715137 310046614 760246550 609555764 623484030 241753510 748388210 283610985 336198692 185292342 846192859 930473557 942414830 688149105 701593088 296703142 494046583 620801060 827273223 864039917 901490881 94909804 964756244 61076031 835109452 863287569 929124661 146705204 489193020 38629348 819671981 122673819 655431743 586305296 808536911 83296912 590684101 82900118 533663229 379247409 973394977 383522329 496260501 365682434 638079229 131047799 739811859 234412073 926775568 307252585 791105734 550889783 990154607 122895855 558025374 749545834 768274817 797690780 924980947 787068620 968674046 68183868 492947194 848221461 945432924 770418619 998303677 97152630 760047652 938115944 954939760 545999062 605100274 505880865 780162846 995474517 998423767 395302988 875777867 647744409 793770641 242886491 331143170 336330823 758850533 465647744 493126699 442000913 722562950 466078288 530761146 635848466 661146132 141404875 636921775 56805257 282360914 131171510 332991172 360466376 820573774 224382709 275292381 250309006 657773153 759561181 891302100 200606407 864599533 682691809 835871894 9935208 559968217 992872381 993515260 640095353 783587961 252601674 613236661 216680713 360915889 827073439 986681615 675923874 958762425 119629835 920453367 618267209 738887483 148313799 153302165 853478878 906321012 98143301 656592924 151501907 371728895 281709406 713842173 83978273 805364599 442129531 704918672 558366521 865851730 323494492 983699980 754819135 938651026 672195834 946097666 326445072 927052599 600668678 787551328 355996043 745638970 637586536 662169630 472020924 550248297 414437908 878884391 561253457 815551361 984706779 994607433 633702515 683436607 995177200 997773482 221703541 276003386 751094637 929274915 532674249 819109926 873864388 950728364 921175641 972506611 462031414 944128753 813158621 876247023 46231878 300024167 168362617 458751327 506911959 550209324 492673847 566936127 50859659 847242329 263860641 350656352 974933691 990678069 978651807 985028938 577990942 692823479 972522845 981145715 347058430 839539296 169896386 784391483 358410497 362440441 389252489 527653347 826788519 966019762 218776998 641472020 909776616 956612763 667994482 786014733 206476131 433121406 361038374 655757075 140205456 585399855 22274881 797736663 202256003 958251220 193462820 885002258 289412477 552399007 143653948 941925842 773125970 796385920 277873741 358385667 213859449 783354798 638664623 973773348 980382519 990091855 88207201 925966692 401786032 767969055 67751135 707073520 337468899 694734492 313183199 958067932 765302421 979919399 979657201 983697806 805795302 915235363 864781254 925390783 388850313 471005801 900419451 919513637 635295866 773247350 188388662 194666806 492579408 865492199 233539594 720041394 533786325 842426816 686118385 723290860 219191920 507809832 324944134 821835445 681283074 694934909 99848725 700582867 294118731 529066777 991887541 996890972 805526838 874901256 576638085 826388013 328827091 729621465 516869447 996080542 258215823 398423199 742053070 795944588 253652084 466690687 663557990 797962477 218972078 301994584 403217996 987225438 782017331 803620418 475828514 624104513 304103866 730503445 224495471 764376731 238619462 329089304 175837944 736957437 181889959 968733656 149007501 409314476 177754970 609041959 785936768 853104665 838564838 890700068 336513944 409556488 647695673 818435157 655462583 926858588 545751037 648729789 190800989 530752870 897908653 914190253 356233298 664598865 926044798 989019795 934001631 979415314 674972331 890159247 884183919 945286202 93913441 605174016 781362732 926786052 873571648 978321067 612289218 957214794 825555441 989187851 392058238 651185784 918990424 999139159 360537948 426893117 252281800 878587002 815202964 949192834 648885235 913658521 187228756 975747773 840329522 894075207 898455708 921266470 43389052 547726090 340724944 888649460 547325794 857159705 629002810 765823605 10469944 203999884 668461719 783328477 266407265 652383823 690781047 702981855 312962379 871339490 645264985 706529646 505883852 720805995 175263504 355288479 625044320 892319828 490190574 573411364 553243064 848666232 124441637 835740886 624224028 786199564 300446162 683131556 644638531 777785007 916673175 931630960 138877625 598815645 277908785 759582407 460979694 914725251 729421147 781880957 691161923 828273673 153929822 773857595 111263814 859596712 928320498 953658807 577780006 871369584 128151003 534130727 352970033 449758938 848566425 957777243 447789138 673564642 206220122 499995277 676723561 925320114 400973973 840017293 768423992 861759354 912523121 967814039 915335330 969870317 492455668 682105983 864229431 943487740 824627332 957758145 580947821 856251626 230114572 376624340 533548189 918252896 516179816 682488263 486736746 600303782 747857701 789812437 213424944 541712405 504584574 728746515 415014530 763760583 469262540 682227795 384248591 688476305 847414285 924027563 480606066 852806618 746688910 792397242 205192213 533769851 53282753 437951500 958043695 958691130 355851235 530016322 155537615 234937731 127993326 692297712 761384794 871920237 51631544 268527028 574002477 951923582 621696980 969644487 962201395 992386008 820390281 852644789 839178006 854039112 557893909 644014642 51716748 247010655 682335032 908987419 500806317 937865344 488397250 630330189 537748034 703672643 583601678 889474208 105872375 497214288 199658724 526927855 440513837 691739750 952895179 993668518 794642153 834236305 744525747 882104185 703017734 901301469 713261989 827074329 94685621 123300111 643539728 955035723 371686716 766826367 36245652 808621359 405980917 676723912 392561707 819753807 469687473 613259529 292323869 390710519 691908770 718260887 287998524 755465873 457108991 748155233 966819097 986360824 658195639 950871289 205562037 948873670 767705882 842372246 176978411 405918987 730579638 968815591 902693926 915429297 149560592 529590902 192566276 534935580 465634934 484871051 410723439 458224596 185138873 885428150 300841065 604793066 957386410 974187382 861233886 942060595 86969143 983083298 163677522 862056007 444682999 943551647 350609525 453440625 122533712 178635466 144580780 814733205 985908640 990245434 989183758 993454138 271931288 836149814 810042356 891397557 431921542 468237732 199519458 401544315 965086736 992048195 139310378 280021128 648591957 673948561 564192926 603451487 452452670 912527711 770226195 770302334 684955889 874846915 12540091 219174505 118853994 445831488 716900645 757528344 280645579 842833547 310043438 572323195 404454996 617426838 122678602 247563894 665337787 676872005 256947364 783671207 284457531 378934198 555784850 912255915 354255729 519002475 611780173 619745532 714808483 900930092 19708877 241577564 123103763 751732664 604340999 703111944 816482055 834228434 409850496 726347778 546426363 831121899 681776468 843364642 598567761 884889861 946393607 966010714 252854266 323376790 549171696 717948560 449825518 850654669 209077719 576719434 386758409 554166392 267085962 711646489 91992922 714365431 70786269 929083590 212892753 792843554 655757222 990625908 492350240 621340431 998121887 999952650 687824410 854074398 542460043 826305043 677313406 705670539 760602065 994002707 165500971 516528821 719835026 789944939 73359869 489211701 752021886 775874604 914484828 923900853 982036213 993104603 916758747 979949090 496585047 879279461 521156795 754624966 191399176 849553885 248378166 511880010 839635755 896138696 263423684 749549769 220998102 531058721 490672722 838314429 66260463 859699919 585772614 912727361 766795220 880352739 691992900 905571232 999385954 999655508 629450328 839315730 404283461 763493252 538900039 867233378 906363714 999880494 660322957 815126797 825871948 919493990 467858128 775411636 186170036 722968934 314902073 658914395 721609686 799850624 938385465 955360607 374385527 856050393 757032079 976138721 968971052 999760662 280958178 530293159 112197342 377851858 636206057 852096283 88584757 265367341 295603898 593449021 770642976 843549362 887351607 986361671 862805165 938476199 295260385 596304980 509635965 758860277 706401336 818028236 993323288 994472240 697345605 868223026 129670079 168853038 156933543 631254398 894608591 959692872 822339349 965776391 474183950 808443667 257587846 261195922 711807514 753997726 52302874 835357674 890668815 900574998 329791043 717078379 115069472 306538626 825829445 994509329 592672453 641316627 768862698 784894943 469713129 940378394 358705395 536728311 277640212 822071694 728395248 984655078 336039240 846837470 157231580 777675600 879749786 952663409 763697131 838411464 480199972 970546114 25565906 302354389 494559213 566719304 593573073 947620111 888835284 960987378 300118093 535020659 949015205 973053371 870238632 877452981 423816967 492425231 110013062 995147274 572080011 622035998 663061566 669190666 503448940 660199384 556458513 694449929 83364951 640398562 413890483 987338404 377347790 848593752 470318543 562187394 362765414 832030063 217090497 350151883 177014940 754157129 7247888 396079355 81078892 549014399 534873438 829991435 384384499 593275589 623977296 903636217 690401860 717366891 15521794 892554384 176455448 964461864 793073781 917184103 459221559 567706943 99527969 939510102 650703882 976342382 851745340 884419845 863989741 965725937 846304258 969452685 252481129 882930756 866965046 925233632 997504863 999026057 193726082 456450624 852639851 899760513 279394316 462086137 241828746 519054583 313568892 864799356 767495612 948223639 158141655 640628419 575711309 736163362 336931220 894196193 320715688 932154109 511971185 738096893 522691923 811345942 514244861 740233021 484240566 874852555 992311026 998984285 183454090 620955260 117938566 965402779 976783533 985917550 612800247 916137864 487975531 579923783 532258323 920936331 550887529 991762191 255677877 975187565 290906248 319199815 979465025 999755404 173052754 918001163 410670168 954431241 375418650 684409485 196534184 384812033 439092565 871239257 951690935 981555824 712541690 775675476 941425638 999890296 161846344 860045329 403100022 795860667 632774003 934373434 205590395 793225147 426951647 530638859 846906977 941559952 807193651 857499026 666938093 921975783 902710025 984163603 652696307 797112117 641156067 703208276 823095463 823869022 45120089 950288490 599304707 863531582 576388529 993309569 122101488 218018907 539553016 606764147 555854584 709523794 317876553 320798288 399075032 892931273 722014030 953056427 465057089 877577176 26301483 352264126 494756221 852605196 791046003 913312151 536686689 727114296 663264425 813507946 724527660 951929847 493875783 836153561 680526304 830465210 409748797 453101060 995525702 999182912 206367544 250853503 38384580 722832572 861860632 943330448 139286265 211626173 439236212 731214597 199986710 943630285 605937292 926322457 973581692 989092214 21850336 972646593 963346854 974945927 725748482 768884083 680220865 914800314 566195437 568916406 259114029 973244293 183519418 661618479 52648940 160559254 164318387 797697057 474237744 612584386 997518810 998157698 913916477 979114479 418432620 648310654 75884906 414427430 890644354 965589694 593170600 817336087 953801935 970986983 483303704 546937418 299842887 672374083 609147306 810294375 515968747 657649684 403766060 821449959 909353763 935104098 951788834 976181639 67091326 959444486 82026024 365455031 637969111 659768731 525126504 958627045 565023707 673416643 929957201 960310365 750818694 806312715 759471322 829601385 866084325 916089166 596063997 611485576 887500825 977483942 798184963 989916058 365160028 462108303 695196658 923897673 186503525 312704401 437262508 687836636 561099530 745000263 553567181 825562567 65665396 761384541 688674048 732936730 780322028 987067330 621392853 979382563 136868095 337303003 367113431 692704785 622619421 913786201 317973528 853409860 121849473 375929221 485437579 958928369 18169046 344970010 813381994 984548296 161549981 309412410 252023084 549673540 636410560 914865854 151862908 281920190 318546594 698534813 337465221 455982509 187375905 423826284 617972387 950417057 125993944 559631440 90387609 280207671 281699964 690585361 752699196 806358567 939631435 973135677 524306370 603118096 118740462 339221341 231160168 482837267 54345007 805057629 13353450 253384922 576153372 879699093 515686482 761051403 179533418 900702673 691133594 692023154 908513206 963955742 649465619 779233277 401080343 683113476 312547593 924916130 930339658 934817735 555675524 673665738 765521136 819816298 219660815 955562761 401978177 543664245 903907392 914825931 403102062 593548049 42392413 520934199 506771773 564484286 739479200 855554518 13578350 51210880 970856643 990892785 1640862 7958782 193788404 871094299 497189414 868439563 466300039 557801399 74239200 906436018 878372480 908886943 695126695 927496679 332425463 847016657 676320310 824994449 323977242 751904188 690793739 994885738 789804674 804259449 612373430 868919315 239210660 586789676 882665577 937796241 448887674 768586628 244477414 590540225 33584301 43442141 501127116 857236126 730850736 969493991 985398126 990446170 949973213 982835801 89945607 827496781 780717728 890400122 817253182 959782423 307943256 871770671 492422446 746925045 135065136 295657801 813342199 882954697 744878133 813845752 60389043 122329726 83644433 714508519 350075982 858639562 674621978 788258950 635530755 810971975 559780342 585240898 165616194 692344984 125751544 837295595 195782595 514149376 998226056 999374018 7540945 586422671 680141802 955400348 610469658 912835993 922996830 972415327 706606393 892357424 457552797 760067572 310529478 815479431 744209268 889136365 132323829 318400270 496019369 761421257 571223465 985962756 496957719 780354582 992257783 997628882 720501124 820852893 28103430 145079339 32954481 692158800 384171220 409756249 950374208 955678799 472401673 931601336 688649555 752218723 794611440 885433489 69413523 459057155 801836884 824319760 123200954 292309819 517516304 610123925 742818913 973716133 846182556 860148073 434164888 600218998 987502276 991830347 650788806 896655646 79858370 512350447 728636711 801155893 690455343 719200141 675436292 878381369 958297023 981232956 582862199 583077669 138916595 535050986 430517572 472729928 127567079 465765464 338997234 689339654 198429195 675894671 402320958 556476658 769972463 944279905 424673721 767775523 393346847 492623352 210434682 661063440 549710937 811189042 156179571 363536883 739091053 955891531 854801470 986954893 304912744 808892266 207300226 263262832 427511199 580328713 110076191 252242006 529307290 742474474 357756996 738308464 975307879 982910906 941043123 967961321 68711537 528311360 60820182 795811957 328246980 332770184 688855251 914361142 700527002 799706112 217684654 900809132 601493894 786054858 75595482 860652197 8705523 74026283 804944781 908593987 148847916 241034179 767209230 999078726 340955351 634731337 705196685 756968109 327358864 354635729 205245873 699988908 417722213 532703692 384393279 851092757 290982008 419675274 353137512 374281900 593733192 699103368 565930397 954198863 842539574 874924450 758719656 831625329 526848218 789711008 210194174 249915011 447512260 986480417 121485245 842661401 151667909 551172927 984240839 994903943 245522608 653893829 887913001 951713435 430843391 886858400 990959427 994165156 673591195 788153718 302059493 317684935 590487992 939106997 827248634 909632757 284720085 571904627 663785405 970135297 465150587 550576038 582280628 643491252 717743077 732529176 309598792 315607114 228422340 791047379 676945709 904973068 635979823 728046183 25732469 273916952 787013312 815015803 42512818 988496521 421855959 573692371 201436986 890109572 466456067 573786995 169033911 314883367 932366269 968517490 463099547 485844231 617366747 704641352 219859989 643856775 242289725 274622342 449576021 732668948 82303790 476807870 467067569 792447486 205442334 852230953 829240435 926965286 529260181 706825002 22020981 656670334 339672703 678575759 129491207 159223091 249637799 264672014 613286085 844898786 482196351 645746950 61678328 957502603 342498131 464873038 693042085 938929986 297545427 807115128 835417801 975885588 832316604 891992108 193667015 536703277 483380402 761044479 440140400 637082317 781003652 916778887 668634421 912029932 359152763 532563324 253181717 470284598 635491311 855165121 208278406 638350704 422827045 510415957 990364091 998603988 541616779 604938798 100295489 140892560 115299574 528972117 110908411 761274231 230951283 561949698 152157946 550614754 569923128 792445809 21840748 878651126 698084923 774798688 360959387 697001441 825852513 832283530 828814086 897740641 64627647 610361047 1626198 450928194 731398869 782846000 649769760 771737711 244053665 426572675 362800557 541561656 213125926 927964656 901021767 979523826 342762863 531732547 304590446 826536521 475991672 830216026 745148892 911930384 432459498 547592196 823197466 857580571 784097100 842223008 483396320 543058832 458355412 532625862 317533483 549105539 534664478 751551569 347151425 964395856 499820860 819982014 235056595 568476964 549838175 977938302 643794400 750232017 453134272 533466390 352593395 479712838 635166186 875280632 869607442 992769894 34889444 418558783 19699478 950196901 704201718 931314571 909552484 921212073 446407043 921053470 185034629 273777824 423648219 671985529 333636016 816019083 506889206 893267077 973255104 994128388 803027068 952061899 916380125 963548529 317633917 735002509 22928974 983768216 685058701 866507034 920637041 998774905 695212592 851813754 612795831 666088785 707587123 906128331 393590342 954954269 128077633 814163566 651204077 773963084 54997804 382321817 635940082 854658944 13603214 989224521 324062888 720008121 987156528 990669280 297723613 536092966 298897583 954094565 590988345 996592384 961000008 963214414 842985069 913743854 772677149 914288717 859596000 896270763 99658322 979275623 959207715 987106616 816160713 919266977 14314257 263875272 725945612 925803661 811774774 885964098 982916591 996902420 997677820 998586774 727408726 752221967 899296716 903678776 565538338 661034800 122214581 657015511 813371817 986914099 441553583 493584996 168797437 811871971 970637200 974831832 39584459 183428778 898563314 971579646 255139189 331657581 129974836 317546291 866061052 961667079 762370962 785500494 999937141 999967978 258406338 758685113 820661487 954026284 83689649 417464779 519287052 639213916 527938804 982839011 894936109 999477322 505834615 554713700 40870902 272698722 762950181 982158022 947596926 975057361 20772043 477171905 229380231 719767901 659208993 907574635 888538062 903754470 778969511 937915934 613621632 652825161 45519589 604291167 954874259 963750832 866909230 919048657 979292782 997014344 206544448 607164416 270425584 644097026 732969231 821671658 743279500 915840257 108662283 259135609 61497501 117640889 437217238 570533881 391902721 879276905 787784317 810046380 869240447 899526199 86912279 715041858 607916828 656197415 72326671 921624483 838226836 876005885 802286625 965037255 992052777 998407411 399163357 686279055 123629658 913178008 35517055 230450463 921259553 946013848 424839604 792769445 445291569 743870206 106050427 992337831 628460583 980557567 971499415 987826384 648700598 792166445 248928095 775938450 570558147 821839904 442795142 507584808 735431572 935279645 70477211 592878227 516795831 764431011 351585208 974148705 190832054 614191011 386571176 700496553 877683897 938707398 933965074 938924558 782221795 858298810 605212733 613289098 627860425 636297012 620706575 660357675 707540083 734141808 270128262 655272404 694146664 705566440 935290836 949588538 707062460 996413309 629804603 783631208 921138023 980307799 305958431 956158389 146561758 393451969 682675538 691483297 47865782 239852263 98250908 283821627 354540080 574067025 912898680 985171429 497197694 824742864 307674862 850753480 469250598 847769505 734211557 842044389 733812453 917289465 231405667 972557272 29349417 660382109 292603974 495143181 284405621 899338182 967039429 977408600 486585902 556840037 947581880 996099724 505964774 715419228 580364838 800735517 51874673 292676281 440767629 632059609 508787444 621222131 568077008 755583952 546662495 668991623 455033152 740306801 582965933 670703061 973898906 979897049 946257693 959824816 238477527 838663367 727779499 909714168 155821007 677911099 671442204 922420768 667142357 803836466 990171805 990961772 492827484 574888434 21164272 580709716 363417542 690640153 545534102 677801542 545462491 816222250 832607014 883066474 724185412 877928353 246907677 998212280 570280911 599093561 945932841 993583241 720337794 887758280 758602642 800990228 990988912 998001423 335881717 932629516 423201710 635092749 671541103 823699447 216261165 287343037 595088900 719933434 103850718 426215508 385187464 674405595 271232090 325197294 309164721 907561293 61324664 398216405 740302997 925706258 224793856 259452494 372115016 488895164 687148359 857386510 492936400 675582254 136556477 807959418 563058875 897204658 293683817 681498033 33908552 840372645 862456211 928386679 800968009 927284838 717353598 998490296 241234418 668664103 92042574 748207567 919418567 982456238 457393902 554362236 532127633 894415336 31386117 174414817 165648221 855809107 60885059 617989689 584529100 596616524 176650366 817592447 953259591 970772677 86707700 528122250 913772337 989150875 84251372 507611374 848894697 915198972 445823308 748189938 810389964 944588272 954967434 992780416 33078540 931066881 21420921 30487084 692478368 792998472 608570935 741157368 112241433 737631725 595296514 848403332 995354637 997048354 8428861 407006214 288832354 332870627 468158079 483344620 875824140 924677416 666819143 871040191 584005785 939354994 218232384 588256279 117953030 636777625 92512199 885532114 143244900 463380602 664743242 721702922 496788640 958038251 639865305 767209420 412995614 945193530 19840953 266350615 156388277 937916426 623890818 775555082 446157115 965927394 829091656 951420556 461220927 914499643 334282116 921107325 961352176 994899266 414295782 544636369 929435889 986232690 19873424 858761348 360559597 995507769 788215019 911282814 960251244 966025603 490362280 766535245 888858750 981537972 444559877 471149610 330458925 559192770 554029761 886408608 153437614 225755173 601302388 645247580 723778138 895071236 694681414 746200510 712342090 780708214 262065548 913490539 238697736 674523920 155458053 642593052 570777313 583229316 664400239 875277873 107464291 837094090 421540280 851385751 55346556 145362567 608778003 864941101 516676100 937824833 814742843 995305996 755145121 929915445 141312353 320557013 405978781 767009464 296755065 317974010 496109036 905587156 745676098 899713124 472534562 517837358 940301199 998999435 548313734 983912495 32749948 826416886 180469955 994436109 192965052 772651790 655371486 765040825 31569230 198296906 157342191 547088311 254087572 277806167 522768766 571968870 430694203 908402241 36192254 998904504 409323832 895961995 765496521 861502220 293082153 581220065 318408766 611139982 535974761 865763262 757924171 769133625 215228131 837882133 616566846 637459718 460469262 893342686 736186092 925496165 57576746 448120881 635863014 742205715 276531370 705941174 460485930 987454355 959089185 978921329 808155588 867787204 865475390 994814534 823362864 937139311 140714458 147682460 551931164 555157010 469695308 650552915 942154389 971074544 650089280 720138256 337837038 454740975 417469920 793166789 297183102 460532709 882828462 907137775 548979907 823946446 493158855 954126756 309179068 506938164 883072512 899534531 717898032 930899310 565647388 654380887 505306668 713095770 773997625 939873266 238283542 393108301 288685371 610973293 872412137 990464581 10134589 146688819 672080115 781981814 133145948 796840323 588518308 701302604 452204238 595953362 918000813 951540797 484571718 995771413 433636640 496942923 590046265 640821296 841566915 947375793 809696291 813397041 127853713 444190811 876028215 960035178 474919423 773439655 66943713 903959318 783031226 966136213 41378889 574679536 211616755 494081087 443460538 908365655 119980480 301530386 677413942 893330945 215569016 917176954 283565489 423060112 856624953 938565075 182402647 428965152 305084298 336967484 259296761 667291247 653628036 856848715 384100997 700028008 164910394 387076048 754821789 781574969 12264010 223835113 389702910 793870542 153772638 987682338 15666949 546874801 304440619 435893163 425569553 570803119 96658758 205132715 213158810 381209823 181336634 789096733 503000312 843247041 344405878 436496061 688139859 818454872 144455696 744572954 530221989 545147961 346751335 793574929 142972407 192687653 100566434 807786373 936458056 975596585 569533770 978575920 878969631 915638935 519939353 880069247 157583876 693290620 407385443 846254854 982213141 991920194 266186660 784871794 833603036 862074194 832178534 976833747 519627406 724115560 239939835 467820142 356267581 684155016 215894546 731568049 534272058 783475221 746534807 869355316 960619033 999023761 64219492 574201406 40862397 703485275 222503618 630806724 332755473 750964347 3509038 459746941 621576042 661302274 562355619 884879415 736261950 959834875 543001810 799913918 837324351 937284852 941696401 982220533 205112930 807691059 734111401 939618229 131195949 894394167 221674704 724353118 933571923 975129592 936381006 942790536 592065556 879606125 152260355 394625263 274931891 951532914 222981947 712586321 378967088 598917541 615936389 902869613 992953221 999676302 627974252 904545996 199486080 379192011 597099487 601496254 991732883 998103571 966161035 981081735 137033884 826140239 516702482 967021112 507445102 573278607 487264397 556709574 909488409 992986238 874996427 896587272 155966147 417847607 183620267 553469359 361342666 682339647 225760137 871311612 488939323 776043565 265692779 410307621 695758614 882758157 493425319 684886890 344120810 635355569 672221182 888120619 341822155 700634742 281480037 854132264 149133973 268229125 289888904 384661423 681816804 718286254 315539481 578063424 849855346 964858085 514295817 644425661 992818810 997059979 12708197 377156776 67863460 542166770 393835897 884226844 842701771 907715111 552531654 628281388 741876154 753370735 84164268 221175254 981504150 997179538 701832616 832699525 966168244 970735754 859011209 903951563 720630725 779594894 415601101 784837644 447072616 582455918 289945728 644957875 545316967 847122060 313166380 609105887 290118159 941114997 531363303 561305226 769530347 835353970 855329320 872469060 242390269 642932160 508542243 665298844 902527849 927235222 262744898 541274601 908557155 933698885 146293528 198296111 54457238 306948147 466052926 535712475 561281096 593853806 935256997 946855093 426322870 839814636 891473500 903793332 777676034 779696032 827538254 982883820 804251522 859127235 901605767 912795825 188731174 292071640 689189414 995006434 716515077 843355331 316184594 578406964 780435604 865202750 157249442 547504059 832266020 846045380 426578105 790933962 95777385 731489058 595846764 843649209 923739550 981562543 371655602 971794222 467491403 554724013 493817368 620528472 699011608 985850156 957432833 981607097 775361664 893648747 132197529 729466954 2783531 243355222 351643936 841887032 565110116 919892033 479520296 517219202 711207645 871103399 841284703 942305657 327760163 369059417 424335 700799079 104363464 473077825 362413789 928444528 223142536 835494476 516892995 620412346 996646453 996871033 155713195 390360556 856585049 997263126 228095098 254169977 294939111 634251554 729138712 817275722 892122045 895846530 106013845 961100821 288246472 766553950 41543447 877230633 477109788 538217433 969450562 979848131 149197460 397351503 81403231 892033065 312160042 860737014 192629164 454210074 114836083 612361492 343014263 866720097 334835513 380442681 359392674 585926091 259844686 781552719 990291163 990777086 536503381 740052658 444034312 638703447 396083457 960966726 890653032 928054804 339369097 940760888 594859479 909292177 73009033 773969826 870021269 938359500 500391150 529178295 737210437 945527319 700259969 758464852 749352512 916593162 309252729 503474466 461705762 737421928 681468106 934211659 339738846 742457723 560265450 861117386 406495570 914582526 664726675 927586357 435869978 455510498 269890372 413784047 223099245 945983327 705474977 959441280 749890095 808083332 199558181 764612750 344750573 482363958 597351464 987751724 792648028 870430772 826209048 899672845 663261181 811712914 662502417 677450000 597975815 668283019 892244551 934070055 951966741 953483222 491129358 760791711 90374188 491247831 232241141 752795437 334333296 480565349 403298466 928299924 313614234 382963854 467852359 924770041 613349267 990915292 336255453 691963638 639702534 749268648 265116141 867751248 439343983 516783545 184351697 567715220 915307404 928997297 728509518 939875786 820307642 959514452 108169143 939405566 119945857 527944041 520036399 657107789 690832658 781496494 185252597 474028781 710172986 984878864 422469763 932143746 690692178 946713430 501759053 919904044 939680917 979188181 293514796 443196060 972435297 987094673 527567007 851864139 780815293 858338152 549211560 558366696 701436791 714936561 757280447 980501947 519793873 558118677 446393613 818253668 15759530 44145004 323455835 986233208 268454267 929910548 380460738 870365989 322428089 711123977 420278977 571948114 718809756 781887851 910301261 974127551 204625680 729909064 324413 65319586 103279164 434822465 986954642 999198737 29388114 488159552 739527139 817572653 759151518 811702514 250019163 506051144 846058375 989073407 283905039 479816795 39461821 192769194 802173087 934021274 570878776 724722056 339306662 620940749 653596398 981457946 725922675 880738005 207240058 576075896 499439116 841309458 972488102 974506653 200964201 407350651 365512555 737926195 832165876 995003022 24749142 901460470 909920138 928078587 444169259 980575743 615506874 807720319 768877111 803353107 287659266 782286006 171806055 227797461 913453671 929464592 817363193 871012023 81376184 124264049 70861716 207443431 816573298 944205905 225414087 776377379 453041456 490141332 232109149 276764473 58156793 709709137 583089314 996347951 356791557 524787712 402565190 409077203 663712840 738219663 582632223 775862350 273303724 853925297 90308657 521164061 10683802 645601146 95494672 434943084 813666497 927621017 188960944 862282410 563877710 684733023 653465926 979139934 671531871 932421568 764566073 892396835 346012080 611316567 695785618 993911716 727019401 860469599 678887421 873389798 615216979 898487208 736873203 925546141 65913818 173749435 252121757 929902099 113258952 543089560 247005860 372927791 950563000 974087073 238575304 484029665 857801299 909755351 892395488 989524906 898906931 992137699 489283205 760102588 989031916 989091930 992404757 994906855 671439652 698596235 964587043 990125437 525930188 724975479 54866099 235160337 481315684 903935569 980357373 994778968 72518639 238284938 69594886 556656507 769588589 871117224 851609811 909836979 88861531 179717847 352696954 905745918 383827462 539111202 564951807 584034704 4878791 229764299 143133350 603547951 566079515 996111964 550010287 937401268 778352776 907142914 97740896 633095909 120986076 433152704 959856960 999211679 73614565 506357621 604967616 750917642 946393997 999322565 87388935 122098911 116981699 144780105 837261748 931057930 627136233 852903233 958724417 968159572 157715977 634584274 438015041 440479403 158065530 521771857 381202498 580780881 235127498 588688004 93933455 440410618 254981502 670761052 348654669 373762367 683957664 781764569 84061742 708263999 246338001 680235400 900514086 983078952 359654828 609073016 447326775 823254226 371187458 719136057 980408967 995250766 686983319 833650862 525992894 818422402 964195189 971300225 543126937 815523872 295861961 889476525 104990615 141645679 521714519 714635451 704515466 915126882 229053974 312872314 398571636 694605943 731890031 933322070 735575625 986350188 689036492 705109053 811094555 981960641 132408020 357259893 966936464 987979184 660561343 893101552 495647885 534803004 943892854 965385762 953967251 994768830 23656606 997894205 209618818 750083174 264980698 732203376 680708031 818960140 344790915 536652147 760882548 851081377 589500173 848275120 202026563 366828321 793035986 965190552 649585903 716986266 709498761 854572357 19454804 591815684 880733428 958228319 208660620 777166488 69399316 287719042 296585408 542077581 109579322 873407527 662175822 879125080 20441151 508315010 464351594 682239726 909600203 924888986 737728842 804946137 712093034 992381306 560339158 728945785 481319188 792059033 605801791 739908445 373693996 676718927 635048889 697508486 70455856 116759940 267306366 771679930 367190724 856353303 511873825 895119247 76971633 104748391 972436368 984126561 107129399 883926219 243599330 585593228 569924013 818382318 901355910 983520829 344320358 848588340 254693343 288493768 6159710 623328571 947115521 968092958 92816693 592015904 671257495 797651515 708779424 906942551 836356190 887443568 933338250 992856679 780130079 930060132 767808003 867900504 1951818 858935901 31550051 644284590 281996999 920409116 962438894 993655087 10963325 930010859 149582530 777096107 987792111 998555409 130478421 951703657 424498880 649116499 242012550 947357164 589324717 813645608 768149453 867416093 362870695 410811919 62598863 657011839 432702434 462051702 199889175 870307657 770730458 877342572 195760145 835761311 433650770 526370428 837609522 871142639 261289542 764889030 549722506 741811756 856189528 880243540 25353414 691868950 34575846 226038514 50169212 223191970 369604552 776724666 76456340 357468757 57495146 883872430 379192853 834122414 527054773 733929459 985635930 988327663 897076950 934087092 802959168 926331734 4016798 908880057 825090702 961163444 423484308 967324042 185542713 676214192 278190668 443888276 889891878 920908058 330899467 989099736 451069969 710176562 967551896 998289541 746401184 970457528 289583990 877907993 205849341 661347747 22021730 917144196 535311629 904061751 560570321 942621922 602704718 881187409 214051709 689029739 972899868 997545239 469848452 671120386 564506978 579823597 62822078 887857866 445961718 732474763 204390153 780398274 12638281 905634904 387146354 911690287 162125209 288340331 921557049 962068355 266078296 417553198 498387114 942555820 380475677 896540298 482324129 565899258 416809487 607104844 652495345 843893658 330186267 387489543 805024144 916557825 255647273 435080608 345693833 768754426 914723328 986378656 803881018 975147219 863870 329050089 978229237 987314678 841644633 895068235 16719456 852214448 133721430 488801229 990762797 999577717 818141095 973933801 899592807 929903816 488802172 720035508 129423923 885670133 357000461 586839194 224619074 469728827 899995463 919822910 434033225 596795573 985634678 998034512 949608317 977396635 848314257 919471949 224398949 807256936 220559179 361015917 376765273 852314592 368701959 852154272 978400126 980372083 405139144 561759247 856972972 977705360 414351097 478298888 279331573 849301944 232295398 325323678 860598671 997368206 802391509 814109887 909257016 968826723 458063659 464989480 579512024 971384430 830044790 951014826 334279638 451236024 872331346 917243174 44562468 456210354 724397475 851405938 775422896 901286185 909838985 963684150 403906087 761842445 133790759 951785697 397759537 737417329 299391944 918263318 584584965 606221413 751172348 986486895 239809919 697017820 82980256 939085354 246673063 626707236 418164854 480807733 470551756 658511777 373912624 749692895 99866376 554259829 482441845 755186120 16938488 601558123 240352450 972663231 465289514 672766214 631144236 966578091 499378330 733475274 687038082 707937912 608563996 779444527 256229026 840476974 462949136 560315225 640872557 716209793 616846491 828026992 901634008 928842646 66247159 394488946 183674368 837891073 625369984 930672436 987185886 997894183 471954841 668377854 795215928 795871724 26303146 675830500 728985159 794649092 895236105 904054638 410222696 616178773 915281339 937236204 730331676 906710207 65036673 140210496 31005075 264863367 965430096 971937431 357433897 463185852 843635225 896765108 972942309 974844143 355239447 536927210 599627275 940670955 782291356 805873916 176421534 726709913 883093929 886294522 779095082 797800506 105754124 833606420 962572668 987715793 969899088 979742218 13399114 487153653 962207013 998895259 299228835 424209399 243003102 522817842 142812072 353149560 467132409 596902587 86782291 398815853 806653022 890569883 298922606 871721009 195898750 617645357 499111252 518221927 589597769 735694303 402813149 540073134 174202056 349322703 126740475 344224393 521205752 566334884 32213049 268437271 64274802 113862111 908053980 995515483 838252250 995355100 461473554 586789317 100823903 953273493 136881269 666463510 516847906 867879315 270264447 839428991 280791263 335382797 832501123 911135386 47844832 737655134 202491319 900649093 51546055 227086303 137333947 510966467 714687451 996853311 610373742 639695616 358572886 852708056 388718440 548877367 306188655 742020644 609346916 675978250 318686897 386094496 625644313 990725977 96988220 556655136 355466072 728348977 956325250 981822715 557602943 807391671 880702509 929243110 180523582 635281603 887074594 892195666 864402072 992746308 218890620 696313090 568277983 825994997 927021497 938976181 540788396 717959798 370014962 872385289 468795550 469430502 929401251 932370295 270563987 785717344 424260541 503495742 614500584 641363698 149687689 316752059 964198600 977095911 251989919 723716259 637594528 846795041 616943717 955900331 338991912 601696285 709738393 859516513 315386487 361693267 950998131 959662871 260582706 398496670 40561319 126405417 667757871 936032953 463876870 767422471 610734886 724117113 885324781 995513954 216986178 993267277 507777704 731131247 746111088 987449769 56665258 288290590 446392590 952778109 148417952 793152057 622987171 814289600 144136581 221548468 759803136 976694514 159855602 909561403 558525350 986057471 223946323 424396926 451721561 802906143 986594713 991543940 651016791 681787911 629771279 674649327 423023266 924700835 398305557 698105353 672974506 891150457 304936267 703459722 797716648 973165553 403249698 520703907 620238327 697421856 598172579 601086606 835700983 980021182 184586704 431650750 932238478 975573002 728144128 912415511 189311898 970705911 697905622 974998086 234113382 790956742 843530005 964569820 365456274 494182619 638550878 954898937 786786131 995884960 337873175 358888544 754661046 972651690 143950474 174017366 606604657 837425854 422758226 879451714 438968611 954555308 610863641 975953760 766117795 946694652 954456842 975413666 744728411 954745348 439220882 523721885 423220880 782712484 959644695 986389775 454095346 781215837 477561807 792319603 695615088 725014021 780567084 844500813 993976444 994371165 470171001 618052751 413472970 706848588 467676737 990520888 529362350 859581230 601763832 713463001 51670680 483843953 747874339 772108783 630799970 785043815 812068711 934993101 837099219 981210964 941680125 977730318 728001477 776406993 732823912 970785120 835834029 867463648 635984662 900821962 181392868 464833824 672864510 822213774 867707626 905638889 691448537 821627139 539552101 816715362 574330931 966697162 557279561 959415079 112119005 636054741 296103467 929095884 594139901 936363718 411608686 500522040 319144209 355720554 435045505 456262754 246819584 692407146 195143601 197547735 271227860 532205830 378704988 607434231 206781747 875629695 937297579 985211374 170787349 955652754 365384247 739050049 550210478 738998763 606861902 804542725 218815109 425817671 536076227 605059793 406258942 589187141 155166161 676290432 141865537 675308301 531370276 816115676 407584900 774262009 515406992 820658288 296604432 974543764 221132531 414823983 990702885 991629789 334730941 754174771 813544193 989887810 804003750 955902676 506287362 644149967 380177271 770345227 752430894 772563421 406901918 608711348 143822505 274563634 410161478 486228054 246353369 918646905 768038864 789192264 13923580 299057951 780276467 911444314 253315273 513476770 244399877 339025347 195558986 976637049 583930289 977430981 169952075 848630124 433081430 526144920 569733206 652392100 171808743 749480058 653805237 673833014 871610880 895786192 839951205 912628814 669253962 830723532 144891902 734646972 731481197 990175049 372579625 786287809 67809534 717396042 421227854 632741110 732174555 910110193 754746113 759329849 412901282 612254682 754459016 928882030 340118124 821065755 11955406 361463638 946374407 984223760 768098882 898164427 228077309 536320050 933769652 993919364 785667428 785965277 927915351 977945018 968292748 980774243 815761836 960984837 865747307 940062218 610754975 844166770 490739911 882579281 197528624 874841345 26280024 514866531 975671991 982297462 75581589 744377313 539155295 806122161 940423381 985636545 994211464 999978341 900433242 972627527 284226893 644416483 71471590 746375558 255848075 654604247 136072645 606463944 273043882 638438611 25799651 775710192 83222624 160258116 408489224 595514460 815370785 840749402 931406973 974710631 967182794 978370921 450081568 822878518 287371370 689018326 136582508 823337235 440702528 692590661 683218071 987168559 918222968 959225239 960362888 960643245 280935322 744777188 705221437 770712224 491828270 747674200 319033376 937491637 85010542 319039560 762491942 951826757 122134975 353479881 105972291 617564532 492417850 841658973 504823525 934256138 893685383 972511572 623190068 961536217 769864803 786317665 128592359 475155642 923672758 985261313 701049135 909410251 526211690 917488574 532744678 907953548 467825208 834818828 185487831 607227071 689712765 832856991 793478728 893451290 515579946 574406568 279937648 956470258 345452749 781476109 131860751 722435597 826984898 963801797 623283032 993470154 401497977 420229665 205736593 590548436 800862959 946894534 979861980 980500573 684090944 958629416 42988463 299599208 385336061 538073291 224603981 753489967 180154563 957627972 111963599 342816310 331358329 594086823 421941700 745634067 288529510 732375296 343877415 465724701 588214651 955009998 726808349 861056351 43817921 331635736 142577420 560954760 212867980 256063106 850723585 906904590 383722969 803238717 970307632 973206241 301512866 375342173 970594358 975861487 201234355 264984214 105836282 721474847 551619228 825046414 119335023 584210601 610213894 978052052 676502112 973903975 938537428 957890653 905266480 922940010 7103706 695770701 322438792 526658966 213387483 375359759 120014401 395520844 365197708 848015003 444295618 973831618 155757753 893471211 918604680 965143588 504205477 673051636 716603844 752073177 594906220 653546180 241192627 921280632 495406414 610768186 869053596 934114876 803754948 998430322 538839826 837891333 325227990 721781336 988339702 995853153 364761203 799816614 309050187 396523888 306400162 609609792 73543387 188762921 981167095 998797917 409618497 924031285 76490287 577413325 711727248 846666800 44513538 93552126 632531047 763622611 768093059 951249440 688192982 850352268 561567415 891859958 407236132 810327822 765409837 909964239 497021379 807087175 990810278 996728017 495108638 934642764 211165003 657440926 990133196 990351930 975550334 985379580 440046557 669593867 957751607 958080984 348065837 560320417 460786196 608202104 718692054 787855684 625036287 707659179 299714369 440966126 909599158 995760145 407745472 711196181 159746873 414705382 393366679 746810313 949807122 990700894 155063069 396235597 701922107 907803197 921616450 950900206 538409610 856807304 132670614 399106493 418226535 939096681 430337299 855972212 515934585 938779010 406956476 412125459 313663672 443156381 114964000 510670720 378242993 980124254 863164895 891527960 511780881 873582288 303267837 562526945 567997438 861725584 122752610 180372609 814117713 962480099 613458652 672467382 705333549 885510200 384643486 561500834 474582129 632034705 835244357 907246163 452857547 741421630 589976821 729361596 838029422 963638522 403737455 667681571 844063309 994894276 11082201 640515196 398286700 551234830 986362425 994287516 36300808 563101384 406113695 441529679 442285636 724789768 263501925 922786735 783902640 971974598 594450115 936616317 287646884 511408554 612325287 789222897 350858216 831322529 49078768 355188773 314893288 344689676 478059529 889589020 799773011 992316257 928087369 945595928 888065827 941558589 960498376 975985961 302227300 563562415 731694753 962588175 444075612 636140806 414508432 686485215 495702157 505923106 742757973 757394577 150825822 163823664 856283474 998007970 421304657 808064791 46074972 399366011 220678699 960298146 531519342 763559400 627731610 664455559 96081883 914882561 436043325 722234422 861985779 938064588 447185507 474125111 726817358 867297525 325113879 899057153 331725195 372149172 600905024 916372127 990713444 997773707 205470901 506370295 606403399 623069939 359363974 619546196 686070178 715511485 631537269 891492691 145431000 408048469 396385179 980607387 945802115 994305705 442211488 803220545 905240928 922755405 186898733 492014635 318974690 623861800 513921828 697539730 110993053 549074791 967148009 992876125 656635421 814351313 309938580 678091902 726477088 792265457 61752907 818549206 4176332 462665680 317797201 627769535 537681613 795473765 665111144 778258745 334196678 919182336 318764924 998867096 506984897 784498857 527928689 715481661 444793022 986048270 227173423 536788556 453956667 735322178 229959782 999267766 252782257 523524133 189736053 537448457 956271354 962842335 418892699 727076980 157612429 207039731 758228445 824607681 944882611 968581647 925887507 982015433 514220313 773283620 346034133 677568998 482666544 606606943 531202573 604115184 555762434 628767032 817716295 930688511 249263605 701018675 440627711 507762107 715408459 947714535 360894382 473886478 219199383 971288528 674198269 721821643 633860964 781210924 287113987 859791487 336818527 710901080 411341143 476562306 538131829 766377632 64326869 657390837 737261512 940333054 865466455 927337254 55716887 633655969 340670555 462997586 905343452 907410475 650413313 790825289 106838259 977266551 334803818 816175518 773023505 930150509 607283129 759768770 948449113 954485720 81741543 940468169 170130027 872077234 803867164 975971725 518849933 835971786 737986216 949574316 234312761 373439226 90982420 691186526 570944445 791258500 953391385 957531512 620345053 629152379 166897264 238685509 114759978 191797538 217268771 715522986 320604347 743069965 845712562 978248087 288733394 971152974 535806097 783212823 735872230 805690026 487259012 583330697 728644846 742984092 706843121 881618615 383889664 576788075 912180041 930291130 818152469 853574503 790081319 818097780 109619357 965804326 268098753 691446891 131510136 219986050 610690109 643660724 618725399 820696357 876204359 975003554 438629867 967720148 390224735 526403848 493442971 652650480 7986082 568644934 671725043 706583548 831922881 854663134 437880849 524078278 923966085 935427687 605540396 900580794 787601376 958071438 683108091 794664176 74328977 142763278 559124241 915275795 290834622 290865276 746066306 798932900 369701735 546459836 858214274 903168475 410942960 972836413 384969390 688516656 11657633 279287058 821222829 822938176 653550061 754954217 590019136 970360772 297500158 406075562 20859926 500418436 806234614 977308621 253088240 679545164 481072525 968679077 479890352 885389361 322769001 831757268 255706547 675545981 494310366 795880905 483044871 518531830 269948852 417733389 786516011 792275980 138177917 196418663 697475283 824860779 230377986 501409693 849763982 990605737 966561124 997006991 576655616 900101769 485489811 585921082 297974444 627327539 988842228 998447917 256312242 733715421 782918737 895859735 885590939 932014850 259977876 766745811 889778007 929515967 238532322 999209636 111117310 835050371 126905850 986397609 851255588 941114518 195746772 198546441 917205161 934765037 724704067 890534977 899826684 967147888 510908298 642992726 816976432 981123050 136375140 465195567 387750936 570359645 926212601 990778354 189371097 858044570 450367294 620275795 460044084 598483495 326546768 517673099 135805008 736995779 365507778 776119395 140741123 548073170 765139788 920189906 485447893 891059720 741232476 780215933 35751637 918806152 566097519 720200134 136059497 635772537 335794400 900588700 392624693 800804616 155468514 699116690 996364471 997911752 397140470 646339004 108605014 115774615 526580684 578254492 979384206 985338694 420244722 427299877 589299328 669634165 353556813 401943289 735175474 828566341 467802243 828253457 554228469 938056161 462741254 859124393 358071020 947504095 988751014 993537298 616089326 683679183 420012500 468741453 800808095 922326741 871420779 994669612 900045586 965772738 708747549 904660920 254270580 919503611 518158126 674031195 359219209 998851335 372003446 964642082 484990911 528167826 673586649 738152546 654245818 841708553 607347097 939927162 228138656 453264797 21814092 769194312 39036255 148803621 506328462 617036838 839354584 887114426 408963160 554196370 469479550 776051336 815003895 994513140 280932229 838977883 951750805 984110005 950286825 998706303 988350936 995530049 453588417 638765810 328114498 542153297 711194741 711725646 231588686 870988732 94332302 523976431 792832416 880148949 59228003 443320665 346250704 482476161 717399020 994364038 671888433 755067127 175165147 200276074 560045529 921884168 500045252 683719328 256042712 712365582 640368392 774475386 888047153 922187424 766989357 825398449 49856332 983712124 830052219 883952982 994144097 995748416 767375906 997779403 614153308 821803246 348127968 776504738 677050449 837016023 285004782 923861322 517145784 616233820 581393535 627174092 152088728 700249610 324218651 633710262 118833497 934568247 940778450 992025914 425210696 698556616 124510597 936069542 434043846 443916479 643694026 825296569 593482809 803818825 720719990 766752238 357705426 561569547 557327534 678083735 453851975 898161192 119928009 755025568 825154846 992588285 565965955 974842736 102921631 275048322 897400535 993912172 979334262 987677977 494852429 992787507 387654333 737624898 2185427 199662460 683085841 937957964 876233547 992429652 255808731 454558151 880154429 897130103 580668666 855833341 186108791 948655901 688161556 689546639 280664308 731101644 714917120 741687887 670253344 753587548 652860190 683891083 661636430 997214968 67458909 955780949 224493953 706303935 566586482 976408084 403919202 472196526 59494728 508296546 333594480 502492401 644873307 959514467 223545406 773845131 241991388 949246852 947153768 972508467 673216403 883351697 991782565 992950892 423163829 784397739 765600352 888746829 776893864 891100017 453553904 877534391 587236590 910982356 815679916 824640248 413005173 677683434 969615112 993945610 551112720 772495060 355659612 652784211 304095522 807598358 728064942 963717209 331687384 665747032 970371822 980042442 858028122 886463773 140592309 450677818 354167244 705941319 946853435 954394627 757494496 933570059 390440997 420988296 148413147 581225566 958061167 965980464 897609259 947199253 730638500 916597222 884506611 974440704 821390146 834972883 282360519 764760184 723480991 812335952 105450974 653197827 276729335 588125559 255855485 698014547 848790253 897135978 551981347 862908499 595727050 835096955 36740101 348789168 548239661 755616474 180022053 257471627 103213550 498522886 457937518 567297333 523513980 639388101 894140027 986641458 547751039 960426475 39467916 656930514 158055989 486980789 840185910 868980844 953762231 971315290 133042282 985855767 151615231 502927083 198676641 723637328 37712221 922500935 81591527 907808598 35809835 896824218 53528035 204721309 303126340 451464313 41854839 678765892 390983321 469981282 292857098 293612787 522650289 538521749 323126594 603273945 880121333 945283550 911017196 939040371 632151654 733702388 370650648 655846939 302666146 866146966 468180194 953632394 940729436 966004081 335802730 911018563 85316410 606578085 68285926 302011959 94989215 932416076 857827799 961771237 751579046 884712242 25692221 357191624 231941894 826324609 52925372 837436224 145180808 353827307 6261121 349771478 166170452 492776423 474970564 712078538 35967276 630932603 449681629 838535349 249237289 797610212 740950018 742783167 360170296 580802613 552460886 825143923 848484935 995991035 842170749 943098665 986285473 988073412 541778266 759915679 743604009 789849733 186127033 685153071 380670766 822305313 503239455 857363681 901554670 909062988 483976068 864921952 394344795 536233446 654469252 965371118 854057595 930749329 563688271 988728370 516824641 594377560 899816373 968652677 778012074 778321894 483754903 986032300 572485144 857234374 665267058 811622013 380840772 729488946 50190855 96469631 139956430 900631824 472779164 695747852 698694592 891063138 623336407 671177563 62964539 883263285 448996672 773630342 465819809 742251464 792846540 858025428 427125374 719814904 728495642 876326836 435488125 605711235 878902574 986267278 453073022 804903457 333296541 631418741 256015577 857649393 548826883 773035251 301222952 430900273 209343205 800802411 374070466 496431666 173824868 400225182 632082316 734026036 885380624 892998579 655786248 926838559 777800894 961082378 243585602 471393702 441806639 508237404 924738212 964162038 960590052 989772598 413454565 718638391 309025972 971409206 162000558 928397009 578747188 967725094 369005274 700269024 484026664 876198752 167335979 581857786 311998583 338539783 586326683 740970625 60579632 476568149 335575376 606592288 596221636 694260968 540331091 865505597 754042451 843604278 777291219 886231449 286212863 698475781 641080971 954928597 756670752 853902179 338788707 735709680 706784461 869172354 528946274 736005566 543054947 826610665 872307770 911134217 352619868 746466865 352847322 871772686 760673944 979950525 605288345 853163536 218279432 942111086 867469936 940866750 471527092 773088459 401030110 626856272 150724907 617570256 316290762 596877000 324133121 606124632 706893836 909457701 566798832 957125426 9294973 788248830 46803342 320500627 200821056 378784992 813264597 934933049 392777287 708753780 2463677 999541137 666757167 858485020 170464798 892566271 530791716 718013334 225605945 415500842 27617138 759934594 577588391 960548084 569272273 824132453 831556696 845281934 577115076 894250498 108885616 717269690 337372177 683987345 443770135 784537126 197211873 984627562 907733917 983474664 112205349 739787860 33647143 852832102 761274347 761552303 246542616 913000387 590728649 835971969 978742304 998247864 798765126 815230567 739114253 944056349 64735411 510249134 104073512 554454429 549744690 750170972 224805390 592661879 641284038 787763627 52495951 990520577 575709721 916972607 31486505 967137773 654979412 694422667 68618089 829599906 588934389 933337492 103807431 138856780 358932157 613689465 82276191 898806226 733236510 743401244 456484995 753840837 900739858 945249832 666305219 668034027 865198111 967802669 87722872 798574441 940689944 979309241 890901032 985282513 961689482 962454593 69788072 771451393 949809811 979509892 710092573 795196083 668985053 961370970 929816930 996595279 975524051 994537024 69122362 171282199 592819713 633933369 630515436 862080439 996240296 997036775 865840626 910440487 516351516 818821261 683474492 902780238 250851062 488330794 901430165 941551188 850969648 899146654 519269817 921753901 565561059 703664039 908503567 935404819 730166636 895599543 281623013 421983712 702561315 777863296 270754220 772875704 52175698 482413356 22150897 357471666 283191878 941051350 817799924 940224213 211271393 784613473 842910076 923287261 915731482 958661276 361975593 716770424 685025247 774326676 461938242 904910035 888134622 996496504 217892763 534400924 773123902 928922621 582304299 960313456 579307766 585012670 265275035 469969826 89550065 764623863 878681047 923680706 59791576 247477255 172719559 658903326 360806524 442881735 693272208 989493408 725936335 734475361 15409278 623021233 68831860 268641033 361389591 593184731 199545955 302652700 422904768 637200232 324249668 484974228 133110794 164279490 25539083 919914394 21303938 165667331 300088341 598785658 668952682 822288366 862612750 891068947 824418785 917987171 86608932 665437618 437055256 552032066 613494758 915628514 751298431 907525382 698428031 926721596 659497011 842532424 195263398 924409329 454001329 647199002 748055274 839453473 925011008 955467917 957494283 994812517 656484891 836650614 258428784 743647792 486106448 569908622 907305198 909597242 355504144 467601571 63248553 811119187 950685118 983338141 650387353 824694332 925362251 967252049 828990643 859121924 426711249 535290363 130738947 819253331 837808307 895612306 680578762 880951746 127696503 327028823 198202715 387480342 900940568 971883806 625719396 821004570 228536383 650758443 159220313 854859996 351094782 435697025 709977615 734547876 993755184 995258138 922425090 939107166 959301877 962777757 979314814 996993239 144828408 605064892 833059185 962258419 118471954 199052235 465336860 579042369 985079013 996879862 352108463 953312813 484991131 493028006 110097845 481319690 796307217 984539890 522596273 573516139 747683629 852784498 793254459 966208007 300196517 458114297 139563825 938418366 374459751 648083245 779146128 962227238 109495178 965670467 550834616 710174921 568381471 688851463 254184434 284160991 328250740 770440231 344660096 523310579 213359582 235696085 227060745 716754971 209242900 953545934 709279418 752929370 367467931 958687917 398433067 552451713 256232012 809726286 575194177 763295049 906239197 977582059 169656526 914102466 555342986 932639698 398727549 846552390 401718540 683724535 781651144 785448611 458327174 504369801 65284462 187328957 580735853 975370552 952130760 959614510 436331561 537034868 401137610 608228644 679324439 687195382 463798254 569456519 394465647 555872273 498202042 851229073 760869561 776589891 690249827 939878203 721361509 939644882 409489389 860951200 111905593 849142814 487721969 712578601 118904514 634136443 948782522 976923946 534451164 978389018 374195181 898155976 660791605 743526315 383451516 951370526 889951795 948685504 879330460 936189232 165405937 316570709 426550318 633110618 153558825 655625531 373399314 445504395 786326748 868425650 269536765 701440105 102040375 625539582 908771872 985095521 872824317 979798958 506876819 964237509 483800719 701155898 111298358 715685064 245747155 484972803 555489205 579256139 147062397 281838738 770848808 926851928 963438339 971037801 924743394 982925995 173551574 176753270 247630692 943906491 778558922 804397055 687675317 802635447 844271584 913915431 96273266 861111212 978148835 999699298 17615086 316768885 353447280 807415803 129129034 587131695 634590161 938722679 433709487 676420092 126456841 328624734 227442383 798840985 664711670 941819256 486052350 832952901 968594523 994834501 221397095 452859403 48993791 621895219 647378795 731000800 312232866 474511029 948152294 986368421 511704053 573613244 611817976 724201497 34352843 212052902 470840309 901973080 317417431 546013208 547345193 927736967 668931309 898981135 703755696 782989860 262023141 925364337 202930314 758624913 671514588 895753264 394849750 430292708 616471863 680949021 195136164 408721527 205413127 762281367 735242586 920241646 530192653 730456502 542074779 748101348 48568421 700010959 369596407 577393364 480804241 522756236 707710589 917026098 220070331 466564346 147841974 549897338 534633003 665134252 660041367 859650881 383941744 700853372 130638480 465425002 842423679 970997933 264526182 992346509 16357616 75125245 870586294 930304012 326128982 484004632 888702928 935351453 178227373 259585543 115548247 721119901 70364257 808173637 359993560 431942402 857707599 945603592 346928056 369771055 159742327 836284818 837071952 845568585 132663312 641568335 676103551 814048869 496203079 835847517 851594195 911409862 746780369 952811375 213882407 808110909 257968313 946342222 641028521 682290229 216038388 671534194 583786956 989404454 148216930 165263153 282683692 773156823 763767210 841223930 707823870 782793255 153809181 530538635 895233043 912379589 605163529 724781201 79776423 881935580 837632939 870758998 155244935 384863410 705400236 931389058 149360391 999189575 445240124 711351214 219874508 378051120 511892964 962851115 290401578 523969351 232453016 944797120 964235988 966052513 533218536 567800028 780076739 813411966 161725960 880696791 575668366 801865092 9591032 692356950 683075652 928878642 695153382 829538779 837416934 839980106 94487697 171897792 854150779 955045165 160022140 371694208 845339380 903595595 732618426 811164505 219418526 471171842 920102749 960170353 744965243 825400872 225484907 824684522 347306243 481696033 724217911 896031331 219584733 877271416 521413714 742331541 664441127 711270238 186026069 771540770 617650877 779641002 71930360 940619615 887728661 912203995 871544528 978352933 920376152 978301480 93579822 270135287 891102852 899816154 193553856 264213148 707123778 982674784 293779778 647993537 330940860 341050987 6264545 88421445 253594518 409264519 666671950 997010963 702517313 763784485 394517581 853800777 757798978 883442574 810403551 986033273 806813441 871061014 679906273 724609204 296442591 701158810 607266505 710823898 663262340 753832925 617088110 719522683 547494403 953227389 292633063 321436987 567290034 719983171 12255615 313016134 862811487 975976711 312500335 580652440 136713528 531330080 987797538 994426051 287994221 644800317 807823543 986102412 499599630 765649655 604838839 649529311 730668553 977525086 905221606 996994075 557594411 571501863 295398861 975180912 628717405 709530334 962579284 982416909 881237638 924664044 39509703 972146292 191667794 605034186 993061673 997956568 999782186 999881091 729828768 905817065 690322352 900908481 8389647 974034801 781328072 881909260 759211353 794626090 694371993 764548254 811778222 874329223 488970847 850675557 199245494 629936214 660793084 676579541 211676200 959926086 257455259 640271080 811685607 975648924 503546833 786662876 261137001 322704172 696421459 910354718 662565114 734149278 772233481 873519611 171454284 396431718 642751897 950461791 338314222 442883770 491365432 779544635 323120857 757609683 660987121 769718306 999519146 999834660 528647142 677302683 62448935 855507415 77677915 523797952 157212375 966718707 628670819 791086905 500405732 731361404 726447003 822119846 830556519 958408023 600865897 600914827 982040977 989751170 601192097 670633179 521933525 550410248 725843633 897298270 10599041 611065769 822048143 991636641 978959752 989218486 888029697 900612462 482218450 977509032 332511812 397940675 142418360 670309384 840649235 881508271 294762715 629335283 310293920 795007809 251598450 882884581 156341632 300237537 461832493 792836931 885377454 934966047 652761778 669686068 662495570 724067848 201766583 628091380 445320156 748059206 695619239 970239563 322358599 672577018 64547266 734766103 488576146 751059740 774681698 902911987 305295489 396054657 938540734 976020146 669031057 984521007 786260732 831344054 545830449 625381414 135102819 164019069 608864045 909856788 938834850 984036262 434732146 669636807 732441855 755806594 762239597 975058218 714757058 832011775 516628440 715012952 813663381 822133939 579933950 733959524 784534717 959726267 155718486 375327860 469787005 734989977 142424861 953693868 509360876 809545947 946589486 960047052 601441241 972055865 192745723 811947051 779345540 797144552 441935224 564938542 582525102 805580133 65059083 907884873 827290022 993553260 556932006 885246088 478558232 529765116 706110511 806017028 936634729 971625156 798737918 899782875 975579667 990984611 27246928 883029247 208932423 440857161 289707314 772084416 960318326 962959363 313214868 807548408 893398850 963726700 976317664 991757386 405880898 930080707 52546037 371020819 717700457 756229939 672351720 749213127 503125912 831644056 243092774 601316289 806716543 915662952 625170124 698493286 234751344 444075647 102588183 898194435 117709470 902367431 321244853 719099880 152147628 710982306 562598488 901744955 393045377 990868323 270412804 733528059 683073000 816829368 421481426 860631588 854195777 980170405 448517913 918308538 976969150 988872904 209969819 373713040 412060815 696925607 111829828 896658102 352751332 433998801 796899061 861448756 543907943 988979933 416905227 584534860 26158587 899318073 13608681 228995548 528216804 621569280 716789879 753177647 224918662 912482782 752981920 758145741 657853037 727451776 398518588 599095396 61857635 745180759 844342345 898163306 640124006 949334573 155804235 333798379 664869812 739120280 517394891 545632299 450327991 670920513 600559607 923697020 474202391 576916739 616221739 669619789 74156443 887725739 403226593 707833436 976627847 989655345 149793717 958144353 642161033 653941904 681890124 821996423 791171165 963044602 377147873 907394767 623357901 921386632 112350295 389874202 349432682 432413957 87422956 884802389 839422049 845787371 792770646 925739316 134444511 374118034 600267650 839280337 739240780 964894561 96727166 988205238 865287800 883939603 364003043 521904748 124172695 843366459 703809554 788599675 680086292 762381852 252787579 487026768 795089484 845503105 795588503 922193054 402843025 727262497 819685474 951954646 944526958 959514384 418806409 808885483 608020852 617354488 190448045 261939498 176462850 803771676 534812926 538519603 484870890 549804817 313955300 450381223 129228218 738758585 381798583 884523043 701144247 980639585 333019380 997526991 858714503 907319652 406929505 597938467 623748640 703533401 45321728 448503187 369318656 652166605 299144485 443704401 205207319 221394039 267912105 634494672 819518700 829727131 563800263 746987097 331169051 541926999 822334061 997765018 554679285 841123353 734345694 858420005 908578010 974082014 89942849 428442475 434734065 722909919 58503631 859406270 452152222 653888451 863753263 973826727 37725728 813698743 210979190 296077100 789286456 914275512 991228329 998695529 436331798 754462205 171100153 216658966 969347449 970059438 430043130 687801077 152465037 355259187 792711480 841334953 742568188 800196509 455940925 573541698 179205883 388848750 354251711 653686928 871202172 938136018 802619655 819679719 388985523 574447156 13721939 774692598 356215406 428026226 723263512 769402371 615357217 621436586 937210040 949797062 279410839 944764313 760005716 888873207 419306820 919898072 935394846 981334262 631958661 881740976 397699522 607150728 534336285 886050936 508079044 609129742 295983912 400563590 702899135 719094321 537660878 923361973 955048902 987527772 661305669 871271491 558819783 947298399 792577081 823187183 10744431 667809951 684330039 686487293 678828600 946142445 279196872 820915898 274833762 415280290 439147240 573805327 848654060 938715544 283314805 577715497 523303095 537487413 765609888 964782408 533410541 671231981 679423394 846223355 625928541 831850266 809072196 811177445 73900595 388159274 825370208 965425179 376501221 405702470 156346868 567680990 396499536 675307240 155872990 195426808 940194224 942285399 911223876 947129039 265910594 689500494 466451663 595925657 692111768 797601794 713343787 890378314 210408804 940411239 249783909 341700161 534535442 911574566 119865174 435949961 627172243 933282904 564866472 837511347 17437154 919075570 470389708 648984116 260767163 668230301 489368485 587030386 728264297 821410570 957174267 979428641 892526422 923088766 252794534 698317051 549474912 570087187 250314123 491969854 988286110 997308079 282959415 891514579 853658545 931055764 209027136 802987351 13890911 706007037 235550501 897681330 486978297 802942582 471102763 701650537 823893561 868682081 761436718 924397702 127806236 165746655 6886270 224647324 916816265 994514264 79621920 160274805 528092646 727376074 213821737 992930731 345644296 459049736 163123742 342029032 444825087 674639637 2638130 72961253 632481804 786773077 466983486 753142191 403525137 604785969 568317469 725246469 564546017 651527467 986159981 992859016 490650765 678639092 953922383 997585918 105762143 783406557 380764983 458599505 786701277 847840229 430808043 816733095 805981963 922095233 884135223 912147067 250732427 725158111 811225652 978003153 477155989 928905065 4298513 864123472 376251673 853504851 279433901 367929991 45189599 230582655 473566218 811003779 938718327 952187838 996958539 998911805 185887864 811188660 286132649 845675862 878061913 936353232 935856381 993828689 699112258 961891842 943666097 945745281 564354943 946461668 960812852 961884641 702717821 803236298 430404591 760229386 357026756 505613908 119526697 553128756 834995654 989598244 82863937 378731565 571295549 605621693 319217886 700821911 776981200 907713876 253873233 566356564 753023967 821330018 764910423 867753128 382716099 526497931 561314997 893812204 724559477 747157821 965472823 994377679 116320476 762258184 583287572 934879306 629424354 865427855 357124271 754282971 593014241 703631158 495497942 758641215 996082769 996918854 153020941 967630052 611244305 836787192 415697837 795158105 656326235 937970335 909351449 929700920 135260328 955496881 782901080 788297239 870094836 972830771 310508902 347666295 668944815 677394263 96340742 277122810 996965480 998600999 382853108 620521365 171205790 263539122 839011670 881573649 150357405 736031799 981870831 995956400 44091069 78619893 662791854 670630749 273672980 920165808 522361059 900868919 158402100 426923432 303724788 580196028 660986903 774078806 222397941 427073845 812742852 820617252 82686520 757342215 428888201 746170555 174897815 717180900 882370175 905760193 718795611 726991423 603298424 701649488 302428845 654556226 754689834 807760748 758153638 956323521 354830560 655139559 665137667 897229217 48890966 231686015 672047452 687459206 685808302 934423310 427267205 764221714 33058630 70420290 694897031 803037058 182077366 777726447 870681439 941950603 491054060 830526888 379091848 833401211 880295545 997907855 414859369 826317925 156058442 737921154 187212790 247016828 168864142 934423708 947728648 991095980 144749556 831278242 469070165 885068282 315033068 584132069 847470654 967798607 6091519 216240489 68512899 945252893 753528130 966743561 682050680 809201564 756681857 973850553 790013962 981654960 375339646 996328836 982080040 995158723 6222578 208245985 780551393 862362430 984369973 987151646 638578159 928820086 169189782 228923619 847671059 864648374 326784050 702848741 695780575 838229120 404280842 873683728 954427045 994837075 317156827 373504483 293017202 670428491 348765008 408887601 181001105 371147995 364694379 573632090 520322006 649354505 791173533 942757574 931988607 999001651 51014552 984885692 458444255 701083122 250315845 802009554 970965536 984570697 347833147 978691330 169578067 451579548 759179043 909074314 689943437 878325108 179252700 941362756 785656572 942615677 629086873 664568560 466573427 590920394 473709870 620049473 780332285 848903483 689740405 736936506 349760922 941469125 376752773 465047166 896327169 957683268 66186814 107302835 149024906 411304420 361852310 458367435 713289609 736002448 346582982 886183218 245253098 656433016 114798109 900381681 242922099 969118875 589559020 938049327 683743349 941802748 931303427 945903770 693375055 974083504 487653202 832593441 392806128 520092478 163788805 971873828 884799046 965823367 392444454 403673632 519199581 585215315 985524084 997859855 132851987 738295314 357110445 616852586 82444589 447879125 99909143 677854526 230673325 795000623 96588304 828654630 59883991 503690604 254041145 470038955 435241018 698603903 228333614 491174885 232188287 477200066 684942376 791040568 774079967 783706844 995964898 997166017 695263679 786037727 555469980 992892708 622549996 712256128 255568959 575153168 296301316 803821586 965577837 972224968 779943902 855604881 596536018 822257174 221601685 815432374 329313862 925293586 937048017 987951113 118174575 995855576 360288373 396094323 610488180 977990929 736305503 974032400 548355062 905689901 516985796 543501702 678362208 903111788 572232271 859134370 964965367 997669211 963471481 999304640 940795701 944038476 789006544 903378344 319614133 888455204 839251859 890702347 222414472 229672980 228311704 293823023 896352004 968674139 463168011 557076782 550038533 914778977 638608399 675623889 91701747 921239842 678300485 962739811 293427194 417479973 22383535 883283084 760190093 901067780 527600389 892352858 581538432 644920920 462424095 498551828 400312667 979336511 418734461 939183794 276332654 741763891 324626488 807531234 120605283 518097048 55330961 405438647 281318989 865839890 442915525 754650804 975607361 979009549 987160050 989802128 149013114 882665019 569661621 658273456 924217126 995025064 662078063 675263348 79566320 541864607 999221124 999322269 98536741 765536587 667377321 975302502 189991080 739616961 195461189 983389783 82501340 554980004 892964548 940342200 902574627 922518351 29589318 32465248 994996016 999866830 901506347 985587885 696418722 764385382 558657436 957909813 464853108 793737945 362899376 726114306 292250046 329435829 838701920 942759433 660640967 699273349 53076796 94427693 768512661 845281415 544693970 752501206 168275930 754981998 8062064 880689679 89340988 919616789 935289043 955830020 862280766 863280210 482351874 992942112 950018195 966707702 90062538 992228984 437459887 824260508 112353471 372974248 618475768 684379474 686028346 706570152 500108971 638654370 382706438 851031485 928450566 964991613 474854960 490627295 128989285 521225716 259314480 516527087 279191286 491341344 276813255 974512708 454119858 845741545 504304869 630205021 945256723 959281882 507561869 973942858 426180947 928210170 292359527 325760454 190653243 807040722 373329036 440290366 554804613 857648772 185500945 306543229 343484051 536923416 487168725 730074389 471114625 544764115 586694032 592940438 15719039 812171933 521037901 563972697 173167848 601728110 538874054 563197072 300350539 902651900 63056445 370679620 189399209 755464695 497219554 884011984 546320885 974280022 613861248 921570798 675742019 965345729 117009551 431070600 164978844 748695584 651263416 702211759 23323337 639165518 975646976 997300836 752585639 816282350 209106811 741377963 155276315 555393312 276246091 396164210 406031676 767432247 490277911 678110124 227270700 945908860 342079792 533283890 674827673 727100339 954371956 969008466 97399625 269369272 4277424 944817899 905388175 966395286 552497590 641805347 8794371 816355073 171920128 735313176 60521942 789074044 873408394 977407931 26457464 467805840 803083143 980096089 222624534 542596529 411798399 947014780 790414694 856822690 16961530 202003136 981256318 999845335 457817359 522937071 70765360 517590233 834141923 925301191 802574992 812196021 988318677 997277182 580385286 804321942 925172009 950515468 593918836 750910164 178499157 852124858 426836261 460884011 309074916 755774541 433840657 653889264 421739412 523410403 655096738 668576699 890531681 944448755 413578153 598442063 815702206 920173096 563608732 611155534 410933565 913090868 134323372 356401364 358952267 828021499 309158097 385873434 580631556 869307029 15981663 857614852 441777252 832535211 494505686 554023825 887302252 916051702 50125844 699603718 625511261 790656762 862496803 944497514 893079240 988602050 88402334 292998012 551126865 668887037 902711013 975772841 278316216 672144144 178401637 354090880 623695493 981490594 530232078 554394360 676274645 785897300 14494099 706360987 208712284 211866512 445660346 723088113 430823311 500861823 380070058 851376889 423435579 578161172 26621206 454929985 299106443 369855163 121526577 160398971 829626739 988205679 445478644 853846850 908286694 973266206 855340250 936701423 354479515 481959325 346420559 874789891 189175985 898839091 404154562 904614080 284290574 545738160 287920687 526887849 338605934 777357632 193036058 775035935 280897123 624762647 239616875 812984374 268721916 415730278 87642615 880784679 484458971 606898157 451431617 918465033 591364065 878198692 43236740 509497693 909871928 959463400 824466063 826221798 598551934 753775469 260965927 295325421 887887847 922184693 529218147 959879996 168272220 183804200 899327101 967718359 167354795 200145620 385301718 610080961 501248451 746454095 178795119 631262708 98025706 502212208 944201125 964545415 950352548 991830851 830082481 976079356 560234393 652521213 563002567 855454090 949005842 966285716 826339797 924605958 105998044 824511119 107802452 179479021 985078689 986159380 468665434 833779373 122689350 368472020 395652744 550426737 334857529 819881225 149639939 397534266 692814575 897034918 728951670 886161451 170345295 604476123 365736959 414036455 575380424 909885149 47632186 477906626 351986167 824198940 326790279 694866092 338256513 570863450 215799470 397149956 798741386 899737466 64282908 329307370 536821568 789853415 776615949 979557374 781976238 961743813 103384264 971046951 158921981 867950043 205731614 579653151 473100093 912324460 220620467 299618469 997727356 998240314 94914735 474629335 743009403 825190728 708718211 873954225 912269447 946230948 461992895 617981771 642976480 886885164 293639700 517300393 503807777 796776674 53996203 585935074 794958177 817251025 576322533 820569313 497151557 616799356 911818674 986254448 515729387 838173483 467761978 683772298 376407676 764635657 114629969 333240945 795826399 850282386 604835466 717529106 411684598 720960690 871265468 995143246 685370924 846306790 103978131 720979489 693011306 790444272 780092521 813149879 191066941 393047823 3769441 143101516 943452127 994695626 750468081 995863871 828042331 902089700 169767065 571502102 780850736 812408096 929986681 941800466 421880620 608607846 56254868 691300459 771192001 826592204 208739079 324162777 598613555 934757490 374575215 573475236 498601013 684751397 2329646 45409245 517502991 934989795 891020653 918793853 748873037 970070428 857213019 895846660 31381208 236657737 737800829 782932987 809559487 830717179 31116569 351268474 714453212 931244483 507030363 616719973 187007006 627715113 208652484 558771200 972823934 999294397 936348811 941836277 288965130 491213567 447246398 627110799 625311827 913862355 637350893 675850367 308473549 707920544 530819339 772201634 904290984 973495025 985387076 985450433 895858034 922287989 549009692 816924749 13361745 345563097 859521573 896256249 159084630 834754943 906391210 921428713 205024925 380662431 913002229 931135162 58633006 821302679 779694637 838484207 708733432 845880908 409276625 741665946 655274410 904633722 190956942 295707182 677499822 901293942 71399847 697502776 804734381 912412101 775635477 830089863 75828923 307438854 313803094 450180337 278760268 495904992 586980871 839404948 664409033 960709633 997810021 999386438 439384463 815221338 310683878 513094221 352961734 606169924 77941956 515653384 454050757 745942984 157492675 781174679 739148260 746450542 619071950 936154136 949855702 964857319 930235821 987695688 114711245 175776706 179485209 901088377 96375817 714554482 783300846 905108027 845353729 849867760 908888687 941899000 66039843 343474796 165418032 968448206 570949010 709567246 429600583 850967556 524746759 613644511 941865504 942078921 748795106 849426077 925154873 954056643 113820219 196599141 167380320 856786558 774922298 933181762 580335224 984108589 416212737 924921998 186248737 700361587 657145987 792344186 414489937 680704518 485555031 917641878 400960874 809497798 665733869 952356402 648802146 778728547 924764174 996340645 412595252 778175387 162400881 335325170 557086656 929595392 778358771 890986400 17365132 950521423 132725645 789711081 622920617 672903003 665856667 897551027 373113863 978809859 192805415 767897449 987022875 987569761 76431314 226348180 704602512 917508124 859163417 997233767 987389450 988112849 62153406 592823812 265417193 619032177 803288969 959935278 2320566 279088835 488231824 658199104 468589836 598300817 728571399 865206875 984383861 994149794 330290573 567117621 621131853 718534237 243659959 562167295 651844854 670852709 574568342 723622833 816124387 967996298 382702955 392142475 940540469 959090460 327949138 882552458 832701052 859858590 704998241 836674700 881987359 937811683 379363445 715127076 990882395 999530714 344201054 784958350 411374464 822344659 734120000 907769881 990923823 991595184 591450731 861824222 495706128 661102609 196092298 464859552 954050653 976391083 224806800 530263113 868505407 989049034 342849012 961793069 120170620 647692969 730091670 947955896 975436091 979916162 744243464 961243023 948573487 961505776 126675441 976133141 65056065 622925614 627801609 986079712 512632362 642666117 938516481 940198164 863162415 868471201 594118540 618698702 714085200 785369812 885975022 934096845 607690600 725250454 60490286 830145174 612581322 739861871 303153824 781515391 481939781 848754386 497948475 546906629 863065464 969134696 781068347 997016713 60956241 112553891 28296007 312752678 813020722 960243799 660521019 720462991 857747394 987601641 361519836 876554782 827795940 850847353 180858069 615664526 333454063 958691022 927113077 994734312 757300488 863050004 500132035 816193555 719731243 815017760 764713919 942541741 707605565 790067120 713635032 844342219 190500735 525881173 358482715 390843779 699284704 896304039 32732995 661529518 840541378 934439892 133752989 449298069 174278038 480070209 519742391 762969589 881664652 954113962 529773570 962967159 827386677 882335282 981979936 988477432 893090923 921150258 371908008 388012095 772704273 960653689 793092281 826520178 438031944 520503208 633335307 991024431 750013951 942823398 870363854 889842476 349240489 991151457 53391605 500271785 293955155 575023581 120574894 957553584 922808099 953546649 834844356 924328617 257103830 422424282 961697610 972524086 472020506 599396697 491826790 620638022 121111324 407897715 855640592 980856757 666151225 953539435 950987010 957672296 42857304 787621088 538703808 812571213 912536014 919092191 945140760 950036279 454138202 511083795 612994868 863583833 288282166 619432081 525569649 914167872 653744646 926351004 550020515 818388671 819433379 960884332 335437713 938211568 495181464 502421053 25018609 299440427 378754205 774415119 152867821 559579146 753446335 795189264 438653150 954818965 155217738 202606361 811500262 842719409 943320797 949760377 70335494 341891024 866262974 867805905 932532662 959961204 587555870 958206602 920705085 986454148 906182785 947130506 851106156 999589781 516739091 791200787 457604547 940672239 967138415 994237355 211003173 293638400 88842394 651411443 832521907 970458718 605910883 947147265 585519162 636723817 682194187 777102906 11763884 544087395 958410031 996070318 4814184 787180396 615440893 687644899 718668147 900747641 512006016 779720122 101061519 977491882 520933372 842245397 341457674 878524052 539828470 600389261 784468283 911537101 678138053 975366914 29719929 321294709 596194268 962821000 500722798 522292099 616483893 622293492 370460025 783596476 852271438 954605043 95281474 524883407 733448120 860180092 651151238 710695548 241139691 522511189 337968890 634650651 899671359 900385172 794907246 888914292 6994632 313223830 834307516 843506820 836319362 934961321 740318968 841614766 697865357 939011999 646004778 697769601 6641347 876871619 112966869 823939832 32922870 48310078 680093684 812252680 271473678 429674888 583733249 853228621 187241157 729702255 265014523 391234283 6946780 773831978 354214791 641843862 574671933 830283796 19438766 659463363 47952207 695793086 677003084 874176398 30296556 35805440 335316283 836671355 268254298 415418871 973811467 987560349 750846319 799405771 806945664 970328382 179862413 198968187 919435754 975835109 100036413 344533805 934966260 956242218 715088149 852722290 313949994 631591162 237061532 444753149 240873390 689680131 991984986 997684511 772608008 893331603 525882693 765468558 388455140 412511369 415860697 861448553 149491904 790598789 320054581 806372725 927626040 936925279 445142281 455521511 36171973 781716850 40659502 730144803 814328745 874291341 559254437 770226763 954520118 955082769 204822131 639088020 950825648 974716872 378992556 893926910 558066432 899830741 528486664 903161995 272794735 774917267 547007273 672615520 246399316 808191025 668021448 675272901 979284753 996758136 185166105 824887867 482936402 664977253 543833444 582522277 564785997 698479991 25174768 418486906 142047811 721050454 23344008 847512176 89237013 382834796 932805791 975508978 599967858 660117776 863060730 897859181 748932062 978516128 496569083 760349058 544213209 761155891 767932663 960455387 562470901 880598757 891877465 929396075 394797345 664710201 924763622 993186671 660279117 966836678 250073057 402599587 296316644 412994530 840505868 934201971 42985998 106423788 830831262 940774184 464746744 797324280 874144467 942578333 16940793 156085313 196492952 308279595 742901602 863083785 389160250 419703218 611664387 852132363 580717263 802457615 816485721 824534999 555517815 571700481 977164426 990835223 826087935 918115004 63661861 220398353 443930397 856777281 993474809 995127299 644343532 909654072 461842143 502465482 273761918 996128189 455312539 619198517 714196696 929138461 877562507 953741777 182757413 999483372 255884615 336699416 323714899 892374369 346359157 628177714 885138179 975022349 210071397 471186741 423002510 886580539 243945850 969272687 937733420 961755730 879231665 949500821 65128034 379909807 950578067 960633676 852068081 972671712 567181967 733089504 918367708 955488383 886417360 914587936 988892322 992161174 18540256 420976218 698159343 998355743 605168025 969641155 378521499 593248844 834146206 996231704 624804329 873137736 267993243 404329190 243243545 815604243 736798438 892866879 425267963 751471931 687017009 865114533 6138566 520778925 300796122 630183341 958779906 968959925 450731285 538447265 53158707 389495658 301144348 871009084 740746842 843420636 153865490 868465108 970602180 974382737 105559810 910918576 75547967 894551685 614699446 725027834 890185136 942828729 605913601 705451026 457334205 487430257 54413694 201567087 698901321 888690051 292158429 495487192 687391955 808106595 160969553 510612237 674384575 867152654 234974283 325067199 499534816 758704458 385349566 765004185 928014379 982200628 787993905 880170235 174377757 320525464 872462218 888435746 15611179 85792974 605417025 702069094 632181008 961163396 299000425 668228322 222753673 980181044 135017940 767640216 687516389 753230615 322881792 371177862 961894864 986783828 263433436 463224808 367685342 661719344 626967377 873152058 419564855 842790156 855546150 909638878 508531981 884866367 752456328 898584690 771110925 996662085 503586951 531219217 631381045 742596555 787389928 862100833 459789039 597675623 484559982 935801932 8328802 902182218 608844732 646934326 603048539 868418800 684731072 723737804 964447442 998662971 548203449 893259469 889668785 892935404 417312764 681453045 321635233 965526017 849809832 921644137 204922019 772313057 793704098 920025907 869908497 997823754 426059616 845616868 715253612 945566719 718090135 849913689 769726787 902434619 754840401 886825966 690183931 811501494 408360635 458271935 766601192 898082892 21336739 991924918 168265059 988695398 96875733 917690980 649016188 731748386 24354564 884490623 987358677 993685920 487222707 584136421 946835896 959901740 345936842 772388259 712206707 827686049 254832385 974361300 211530604 552216024 561380798 622537404 786411047 996248853 539795744 899990992 888442197 934387410 310439228 495897392 775380882 854994514 124729890 858658330 392974240 941278403 115194235 529363600 24355344 804932177 699286905 739784777 309718220 932479829 771071222 951952577 105888023 338457952 288602803 495299639 292838606 354096492 66118979 919346625 64467802 155795085 384403971 738319160 560642344 651395874 246081930 965469252 975405783 984118862 198155201 562260065 592538534 904809148 832979066 879862529 891650526 938150219 437943903 775261830 991500638 998295208 331227463 885444685 269678896 852167477 819284664 916194461 883811385 967008600 619407719 795360321 899713265 904157763 869684445 957930803 804959567 985543097 937978030 976926341 91042043 434658383 682735803 981361629 160430852 320459350 213861199 223129519 127963954 717142136 569637492 979355377 498112420 720325355 964791809 969595554 536724626 863683507 892529951 894814025 205221342 483612147 761422443 945341081 252609407 425022261 900769541 983441247 355713396 506037769 230225427 846854616 679303143 947719288 255167857 989042807 557853338 733362120 983923859 999700397 502488768 578304601 272242103 807023493 32691723 65151768 846736085 847283676 299510701 714977046 774183092 884169687 407497697 720078806 192730479 630334441 97895288 909994860 548232905 981589960 344827266 629413708 264631351 962580837 417316341 796941955 253872046 465273391 381038492 782974379 891214856 897502112 542152251 810406276 227758624 465542000 624272378 797943157 601894489 676137848 723158182 731590234 260791108 342890373 924661923 936118646 573520100 608988357 942374525 963534185 619628531 908894188 624162564 647093124 799458199 942351949 176536626 429527810 891456804 961231375 914246528 951798984 376501885 580875319 333346561 822816698 156095370 451538829 396490123 660482776 793442404 832878837 441275023 589612466 288664077 495136285 545056079 995679064 648749580 950655594 190520014 498649806 749607519 870027509 941119080 944654094 920149512 922586909 901255957 957376467 5901237 400810107 88772288 780398136 189209290 196354744 321508616 725249294 982669031 992112157 832025351 871074458 627541904 826678098 454825576 812963084 304752249 995210604 210759310 518544286 676783242 941590917 678240477 903399889 109846480 202250300 642687003 822927015 727030751 994306450 169501524 251085287 333454620 831149191 800960184 985224762 325489124 928229818 98754558 703998163 483147455 977368119 413637501 809699414 758932300 892426710 959093597 971017494 710118972 792160885 77760113 565949346 301816763 447187068 958705320 961255441 595947611 789904944 377461923 806888733 881871131 970920204 641522245 854296465 750670255 893691718 211952606 403449036 341532386 692385076 602453321 955498010 623231150 805079514 294938542 672945445 86281738 294297726 10197343 513925526 396655382 502387611 419123495 816409072 200832859 550596425 123840458 817061440 794120163 852989307 204223713 598484000 415562807 423955533 860771236 909614357 567273308 594772811 610857461 706226327 813583300 887645179 715878577 862671192 408643959 487980461 983635960 999135770 806824127 865832896 558431304 618411017 518239504 770740534 768777319 955870171 910255164 951882051 573660399 809809846 853882615 968968765 311257887 544024371 78842449 393445807 94105120 300889777 204522194 331716729 565561419 817487821 328281287 330453083 643496052 909329773 793366540 793522514 930274186 970658164 840013445 870362197 967515906 976948946 457323051 972871446 539518599 918212203 192904525 618915519 980789250 983441625 972700079 976928058 126782638 957656330 521870406 583370588 818174670 946247219 819700807 839158511 543401147 633254463 297383423 397235251 995825433 999090131 765774392 998700965 393418489 802339359 991243790 998221546 83480335 445084932 469197512 656028732 221152766 299283405 548479010 873162170 698300665 893927120 36217045 870408139 726118745 830025171 71109836 434712924 89586504 768495302 993263177 999722023 385358243 868175320 946238902 975468479 77389858 292317461 937973768 962193715 910360398 973048197 928077353 967633294 593440180 950945110 695717225 795837934 633474978 687340894 123468644 858277694 518912431 609634723 28218621 903746856 795685084 806870161 338419427 895085139 217069456 605167605 212272431 651157748 517521546 518492404 999404915 999518565 375560162 809911876 14579089 780852900 825693349 831976920 337099852 580257999 537752812 654899618 476620549 632439332 280479969 595102767 375592643 528958861 342013136 492568525 152759578 775159370 205896494 855946878 270587949 484410532 409059783 563754801 518879574 686497078 849280900 890109630 290710976 795523990 238260501 719053228 343159335 497729382 513486544 731118018 153858876 228249142 518595949 880461781 545713781 815825653 891234050 922173617 911362476 997131668 111499202 263872654 675201567 938490474 46334785 728766596 666849908 969874434 778609601 821981967 291811767 938504459 941266393 973462649 628355724 681286012 245619285 493001816 400182133 715260042 831088222 832904739 193188124 455590276 543586786 761147516 715964086 951743886 356005650 831014472 545966342 785529276 256192241 275287152 650963660 694606584 407353757 973457657 747034127 909300850 220667171 982065859 204838619 935914455 226242554 813223917 726667711 798581989 258877137 502948029 769775381 942091356 377423955 401863719 634249386 724402346 810401547 967376619 581781119 652205162 191413289 550249216 426968744 915347290 644823181 974305443 950401923 955273997 671466817 958785588 119308418 167256199 647068025 855248587 687929336 937191612 580538859 820915540 403783560 865240518 830757403 919671683 779273897 868055503 999010370 999710597 318408806 337752207 356530389 434975476 135653406 813133262 797749138 969906736 662260299 920599160 580396680 725367821 934379740 934516190 310643463 784619373 756870281 885326520 269404527 332525047 369794394 984574832 793543621 957835012 405405315 602019903 276191316 775119190 89890967 329639544 395482758 909528823 846752143 865447693 165581575 473571214 702734157 888518326 494192289 834411582 191686525 628296462 758072322 787588159 657192792 969896461 533268425 562821884 4613360 574515970 941262190 946787239 615674326 931963595 293278752 599182557 752329992 823758082 212366947 920276867 786073469 809130644 567998744 822592419 594951247 650407011 441620048 973385532 116802413 731920451 270143934 458842314 538925570 594841766 302949071 993776149 61148788 273367451 555910229 614395387 52442177 649984755 833361951 875694588 301601007 977659669 28125044 391610512 371439606 894318184 288758735 760959700 30567277 678393481 40173245 48590977 582229796 598830307 288542898 813343188 416175214 570528553 633843180 842041838 543684080 884937326 481159529 823646232 609994785 831361292 934068673 948350830 824254236 920025116 716670300 845106941 528871971 947101569 301653296 838343634 650045234 705141385 717796878 757495471 231642566 865574591 275660064 316912193 777585205 946439355 682553430 908284687 529439498 584151384 296786136 893145159 164344984 207966085 647038817 802217358 645864460 984818014 502344970 508290089 753462504 966532648 745469318 903292309 624095324 971040977 119935881 553182458 860775625 965207362 22243203 877842143 483386292 873515589 613812717 781791756 735895747 829687531 622652568 872658291 569402390 989928698 74523095 556956212 308283526 816567634 629839080 705119854 452135823 757126538 270902932 454777752 267430565 397157493 487426285 917567467 52644268 267585627 54952249 916974446 992909587 994334590 489657095 651208883 990324405 991058128 208984939 713015053 8946903 516777885 935455254 938998341 548320705 966587013 441217157 944468093 646821839 997648536 118445153 662877546 974918567 996709494 400483528 422092096 162243382 591214597 581261992 800877574 528719516 635791640 394261253 877508745 391734731 786294973 997756548 999766510 983093480 990861037 622866741 868994811 491429137 682690347 275031704 409216484 395878014 665017016 227943764 297360328 506890378 608002890 83834129 906058013 345267045 361884937 672042834 820748314 218582571 923536268 770990198 802925982 390834526 966564621 755284262 831215633 622282657 859804924 600584920 768334698 937580003 959827938 876213557 920100262 347583136 995520748 134036427 526746650 329026457 584888179 434727290 971636840 550865623 671747875 182709054 834058069 956588646 958156472 612494878 942169394 745797035 858751356 527225751 959479561 17516010 297701423 318281293 495800208 492091272 774110558 706868843 934381839 405830877 673779657 60314517 956131944 367516540 505244965 862798619 863774399 38669251 478315179 54232342 869988209 366001582 475858698 594315411 765318651 965712951 967525033 597251007 936507274 45569955 522821655 390734573 703534914 115777468 125711431 717314120 939030785 94087920 927533425 406610816 966059306 153371821 205069213 252486124 433762743 638840481 891661619 417259722 798761001 750393805 778543108 307168456 757313362 912175439 947285179 234235475 565149905 265908314 852586174 957100326 994321174 738728339 975059901 566292984 990375836 75045304 746682067 811242827 913085202 792024713 970636867 2955431 191680949 5930824 521678112 733442342 772354255 522475331 752378221 171912451 790655906 739842827 879552673 838825728 846336942 710782494 746594238 531320357 829386478 874025077 931608551 187553468 970175845 846306270 916837740 805940136 934735676 680472062 700242385 704999784 790597595 54838393 107377595 187685392 781906697 837482233 970144228 976207618 994976203 368266574 761572746 311842825 392383953 594795593 747231209 319662189 492696052 300866116 451246631 649043079 915140942 564595221 777558485 68413664 999508845 728894891 881967612 967720034 976508785 415122556 522850093 408551409 738249274 524456208 613531354 264992264 441120289 744786821 991403099 849097583 961167840 196926739 854527841 379799225 437811743 433073292 437916073 270075899 461678718 105999637 263197464 451712737 798985531 878157898 921136892 215273959 765740884 475822433 731966039 143347528 804647608 711737333 910477225 159348374 775098586 700525972 975753116 524583602 819122155 419688933 552805109 557569736 807321082 101894652 449797548 230339680 262723901 646385570 814422831 918479890 963961947 883310243 883573208 830357077 914353017 492144514 548289352 51478484 785290182 759366140 992917137 593941609 635528936 99453799 272769017 104728433 107758730 856267416 871896973 152069633 265221106 196767853 379369129 208868420 383936880 601685163 681926360 121539656 837191704 485161834 726578971 373469763 523115467 314182457 881280640 15143008 364905608 925635548 931986152 916017771 933750002 406533263 661246299 544253291 825701067 700999908 885819586 453837436 540201599 503009761 567134036 778291209 975260310 749074611 978231337 397062278 772056923 355658175 743716850 545385709 547343129 699953319 772413565 691462760 755572246 122937873 162222453 144834920 598489131 559785587 920676655 790071880 977001439 624908959 669121818 796900951 990252589 976907902 994055061 912639579 962584257 639664687 775796184 171647228 765853835 26512240 547471368 997389108 998818851 463430522 512666346 754171463 864489660 272670095 808909021 371753122 725857077 740861591 780747253 378544224 412445306 169595243 650010653 485111313 923979029 203629027 353887359 363344388 534279530 168467104 566259905 755100686 959021942 203596929 865193351 149014001 670971600 347239676 448044847 245961493 714078757 188858091 294573488 691068045 724523228 6987854 946930380 660496029 994938702 352686275 440815566 684422014 876443038 503980636 834584568 946193273 979464364 38191595 636983685 482644422 933289163 383154425 541092456 408178592 647595506 623507100 745338510 967237642 973808179 256123780 947728100 860628452 904678258 538925453 706371729 470919397 699207636 923079041 985424731 940732794 997149152 224682238 788158499 917016074 938810503 880978815 921259153 713853589 788509122 299754744 889142548 148533451 403662868 520891226 793192802 192228708 893663669 500686258 840479670 37888889 600844233 798613150 900126620 908624218 974373809 304904036 495134921 129593277 857085722 350989034 906598699 13897066 828188829 577511359 669157055 323232408 691647084 706935185 794919736 267933985 759376301 800879155 899187182 145647975 870287512 764085808 874955308 135063925 266943694 241243931 484423593 715855709 874543748 163210918 375159691 671703332 841112769 471442986 855106242 237538788 691767288 867839153 896387426 603199224 608186870 602348715 842062844 303787209 904777679 891029888 893031487 919703573 989504207 647415027 718366488 62956560 392466279 313228080 601263070 392352916 467070194 858911003 960527308 515501909 746319462 381631192 544505780 208758138 772746821 353542060 808391418 320843883 488553116 153874890 877763961 769707509 954287208 477072865 902695342 431015711 924454226 670554182 840510962 315661510 841858633 99942367 787596075 622621242 933614232 594407118 921040333 97295172 272875988 946318828 958713396 984230623 991984045 594047190 761499736 829261138 967414261 107639903 896099833 448483672 969793982 741819527 769824466 746564078 877152986 775623507 983046150 293682023 378163886 11687523 246185815 757582728 921062393 71051867 615994438 284955692 657884350 204779428 873265438 243957189 373067211 933788697 986395222 724306212 939853802 614257227 819346486 498641639 916070128 653327974 900690539 13473210 82265474 176024733 451383292 774092113 961594480 473971479 839288119 455570010 669329830 673383763 825738787 723456261 861377384 455424459 566210425 150383109 220736569 466481102 820492822 613844556 918836602 75642842 482736287 913620477 996714935 983082501 993286203 73524258 527243244 818446758 891720978 306569700 541231404 864601419 938082021 832312763 836967948 974162502 998929209 157770278 773588961 959363293 980500055 559603372 782809574 760937463 876634100 853744239 916554585 837248207 866389247 106341135 569609104 681497101 904634812 391907644 560062818 535860628 583355017 561559087 728457991 274842635 854536546 8972841 885581304 115984952 938352181 521825831 894665644 400276653 405087788 462653090 854354450 485917187 589722681 971871563 998753538 129356063 756496610 20847046 940084245 565744156 636220765 800838655 871588909 732997779 985975542 724969760 993873953 98795361 924962077 690549020 978429442 687656582 963143816 971271322 988290746 591853872 892370640 664694574 954943909 640635194 656207467 55193093 438086286 698554819 747638360 81107937 89173615 561160564 698952491 574424270 998494261 878260749 926457123 134011218 871322437 337881696 417769235 443521533 829549505 374742004 926831615 65479604 658968955 285802118 537738420 455748208 699884293 549476057 925132536 305337727 782175259 406047617 769327710 882639537 898048693 919910386 966566287 19811262 667682108 309413801 560780320 877524947 896483620 924323626 980574526 212623241 419289279 465762388 748503238 296605690 833636806 306114211 458876561 736308889 760924804 746311450 887473121 963489319 981801335 51986214 80010011 846709186 855755489 74020627 944503391 365193459 858706723 11493873 398149278 926799654 929795160 609413224 951698948 924640874 939826833 193431854 686693413 882515261 970326886 150398967 689096366 182266896 583733733 644271894 816912274 435875198 841056567 747087079 910124226 949349103 977873040 864928332 898806967 234329147 987155342 842329302 976306337 343577359 415308200 590772885 630041804 521879446 965350956 288639493 336019545 794554084 857875732 537271701 849212738 971500719 997879789 115216848 776281144 706429909 931270207 531642577 926600780 119496407 915982746 798302774 995301594 697982413 868653704 926516989 927315723 958361571 976087504 316883074 509249326 397021872 681581158 685099127 887820141 635675995 815807391 703365241 976125378 70962663 94620994 803514325 898662447 41451922 887327899 967812602 981007566 445562654 847232291 401253701 561219776 259191436 631690469 315876411 922085233 990073382 993695273 407197250 776094274 841865653 944403011 242278896 378237657 26649147 541578864 786238034 887460072 123217141 922725924 146230027 503484575 1194161 720738902 922115311 953541129 224801792 456444122 545213594 919031190 987322739 996380176 862467084 972658818 977686028 980514531 399760800 503110322 905850459 908779476 794629143 925938493 942005218 974035112 431999804 517925785 718972431 902942291 746401654 953967442 595426326 903015634 371694968 870506753 89320981 207543053 488567296 519526017 493882097 708471557 944078926 973778029 706611198 809583946 768287540 931910655 337867742 933147042 337640000 685957389 187947363 468883735 530652625 955717866 722407371 997633930 444008613 677663760 573328073 851955547 374900391 387840515 820677082 846608329 63228732 141305206 515817419 561430373 846860066 896903832 313504666 419429650 218884683 228221357 324572408 645487310 501326341 699383446 620814744 989048509 558049852 795753886 401874435 720933460 760851977 767864624 658777311 895960766 810166924 836310033 606830959 986861605 954771008 970869525 456149684 848552038 310958547 392000193 674873844 762639993 297803437 431450918 404078668 749327897 796794341 805883003 506958422 889726171 486443670 709676439 347967886 409529452 687977299 794669780 580965265 778980932 639688483 760510175 174118745 896909724 669886748 832067933 276148434 398440343 188516009 357761734 897051403 915326191 151572335 606733413 76128715 676155859 952946206 998719484 97206262 696189031 491146358 878887898 734280860 803416392 704544016 953158818 724688435 746496591 558358965 628614523 546051447 752735911 702637517 729976657 253728913 726269188 75722073 296501423 537988602 844546075 143817713 845733414 581011609 619774870 920247824 944750667 247958056 750811340 353327101 482425815 211950891 313577463 35511404 553810385 621966062 805613232 1319740 552164074 482711263 913966931 527207806 970289228 106545144 825950736 579707650 952933762 739424963 802114377 254571768 531112072 758323722 895253513 412805255 955632235 565441315 595410550 99229296 242009014 894713023 919782829 502135105 897249933 701222929 724079664 829409244 973606908 983722970 998046296 876569822 968902217 989744799 999272948 381767933 718625388 325788042 547988232 174507586 709972428 750348214 921517562 130406902 678211271 773741782 801255548 162258354 495228693 260716262 853652371 951644627 974018164 454019964 532826558 43515929 609500518 768327573 917637240 599233777 757297544 516398673 772682451 825979116 904045067 497898970 641338446 564126271 599944865 854385702 915933264 725547475 959250058 605872854 799501701 746963532 982481114 130642566 413509373 26143415 490442403 131107677 670723367 154386834 198034477 434599871 634035647 56209182 622340593 754824423 971105005 444393229 464936843 117203548 776487918 328463663 849952551 537165603 875943397 633108846 878308167 852241529 997542132 54932424 850005138 521679465 863218642 113514197 581381517 377671287 970987988 44043966 280887927 530514437 719757973 250836514 882542430 761690787 955566939 286918626 290261580 888518494 908274675 520545220 901493990 478584042 871038797 381002004 612416465 368664790 613284842 185489016 385375016 621445331 726286489 491856442 668376821 45419420 816783739 406115254 930757784 789273382 974958116 832175316 838187581 696207623 762265467 974887422 981778347 677204576 725372592 669045591 680290311 773324810 971624828 700987204 980583009 698858273 786645960 729825490 735497164 600805752 827022615 924610615 994730148 638698714 919750665 129406083 928371419 905493187 916184536 107041768 537551281 303176759 992431194 852242279 931786143 559753764 704491231 467653520 877165736 506594180 693729144 36695057 71065369 342138551 476024210 856825166 987460564 118697911 979124488 307382557 361010307 933126149 999718186 644322139 822392270 790832050 851004354 67590854 524820549 792988721 987945057 393824075 407666580 471140757 696870007 379000283 970424511 711602830 735880977 166893586 674363303 856626252 907482258 707442349 917665520 747819647 803604206 457056283 779736080 441997996 611455767 894301360 963980874 565051523 710494029 786126016 878375658 403831205 918565221 211729952 391054500 770927426 859082093 938979027 959275293 743709096 906946711 332728397 811098694 182910045 939556914 414975000 456523568 531363071 922615682 907045651 988532497 646902491 781273693 572517992 811368351 399183506 827720939 575311258 578976669 743327372 941812652 603162362 648312061 814974521 989938868 304013164 501626073 744272439 896593172 525044067 604487178 882829225 902181031 718941286 788330294 7543256 925299387 10232242 790776223 769681006 819042915 596229357 713124976 887210083 973874146 87505701 505183221 760316111 765026273 838578104 842060921 443518207 804507206 184951428 706887594 398317673 600656621 315954021 567714001 751937066 822873987 431393930 544603566 12936970 383232947 374402879 557130180 410818983 736729652 508146046 784303825 345603525 912999156 434227597 556885817 942924388 989636179 31684100 486666828 858113532 928025768 63286810 786523639 732212771 956232169 39312406 206719130 327216086 448144499 55253326 147293745 24149027 673016281 864456352 997237299 586921823 873316077 272796021 956686365 590406507 890325277 999654585 999798861 72020547 77631009 928468948 999259231 387722500 542968230 407914446 509225573 572414159 651661943 19685483 395859091 507531163 810843338 32654098 327325236 693336100 908556574 740922300 960957571 878885614 949718693 792536882 954257420 916823934 950252943 865479156 948993018 672694590 713692208 605758177 723890507 830756020 987166539 860719758 964764011 783584373 844513279 734071694 917853273 349010978 903420403 500713784 760430138 810970205 949328803 614346280 818901587 252131963 939444102 422128667 876695923 337914307 833708449 900383794 940166614 296765883 824886373 825594824 940422398 210507559 461222977 331369680 425551155 363433873 701814128 988300839 999328896 269076478 678278852 75915982 208399629 724316509 804993222 861150297 985171591 556988472 836894628 758321198 890541441 370653660 994241018 791509857 977726954 687307719 824695100 830305680 869983379 226970351 249445377 802799526 977861315 993358804 995179059 444646266 736274692 790479167 835645521 412071067 456402058 42817521 495621325 720008421 863998076 349296106 949780228 309497597 670915094 870606635 870938041 598290165 685983385 282684131 888152894 135400909 260083293 56384323 496532782 126615852 691825090 296983306 589447919 286065238 580380212 534810177 813117670 338729112 974629948 844685359 883275777 202968829 453480642 790384793 914966676 33470008 732847469 279110734 899564638 184543663 188479784 162208910 509335794 115729028 161947488 295107843 776483302 591470759 809102476 766151802 880995406 843457994 897643006 101341910 685887648 57319011 329495724 117599785 985981377 717556763 844977552 983492025 992869563 932226754 986493760 170008229 220433175 630990012 847288776 99927213 490096434 590537681 852299028 932125870 984269019 131293231 818361678 436309110 472713822 456161060 946113030 127079968 865222236 555431610 642078949 911130929 912537817 49066448 247879980 984995086 986009479 781247278 781699735 529937144 722537659 276414706 954237450 278028158 558146559 692821112 958543616 154942091 644380340 67994581 831081256 160132943 950102270 837873124 856972081 139653443 560218087 774906686 926236661 487964423 794211749 24001487 317982164 908126985 934055242 124287780 925249256 769440939 997996433 73479790 852168490 320869626 521776811 134637682 191526227 136854739 638511836 608760512 974815679 301210630 383446345 456103049 472607912 284224169 711464416 106966539 152944711 199267735 476561952 643424219 765798373 870790770 959909101 317378150 374399640 3056247 55277478 136327210 989810974 261352932 845370736 706871734 980259868 846865966 974210168 825116458 850600589 722368670 966658717 461826767 798696586 150198839 212265673 750673370 891288284 550128637 830403586 727219075 852136940 239250039 709862342 787080786 865666654 717890970 726512282 802433829 950479338 60847618 870261273 399176347 747237131 987341280 991355465 825036332 854215167 535443128 730498886 806537740 894093552 868318942 950631922 610214009 761610647 67726741 200873563 152174128 937198287 40813029 846846360 383528830 907869908 448196844 935786416 167836650 426060172 605787968 661525382 56844955 252400835 659288364 729111563 434936895 879777676 217155405 437728162 783378399 820197583 723559443 752929669 984451250 999628589 912356258 980761717 819222762 883312418 239408172 509873293 269359257 665269658 972420782 994142934 373667374 442959661 266372497 633447030 169411996 768512690 630492953 815811900 906498164 993058051 276897328 813196219 221278690 770652864 426220502 764845621 197869101 494279456 562524478 820253702 50373682 817431220 280240882 749097476 591001533 933635604 720317051 871888169 436438461 904007859 643110541 783241651 48616353 286767001 45896632 619806679 427456590 951652451 404622029 615431150 263276531 996813272 771421368 991031605 345477786 745142608 715325696 903677994 6905236 878738473 918549578 980774118 250369960 851955158 908250347 927693449 955085156 958225623 360194865 833165316 441390257 862357356 260403968 338454808 631884248 959882441 154285095 691718275 601843512 842397725 724185308 753220937 85471055 436453708 415092022 928430175 527651859 838952270 918112573 921358058 590486107 845827888 376492316 708376323 708962085 815311126 250518039 665557323 174498402 483692744 818306465 828783648 194564032 876799776 206552058 480804679 810338009 950440956 339366632 865785774 447713457 967967176 980233444 994893935 196883026 801049800 124670987 601786971 84143356 782020379 119697617 695577957 375512614 460159061 418822115 727397702 806643004 992817940 104416587 131649588 683222815 930967431 623801087 638802816 190212285 394314547 420172588 590015391 487075631 912393174 885655357 947633446 932537012 997064730 366921015 786094644 810952018 842472526 988547547 995035188 135871681 809063482 999881481 999947501 232000307 284274776 791245133 860278695 45721359 870048788 939150025 964596740 513144518 765976641 275745904 355197601 543256985 942770458 321045521 572007780 445349423 483165223 160966909 426489836 124987494 914026892 670385937 718969011 856569443 863195687 617769336 940040451 775995542 884787699 767351115 892184041 188490381 501900386 14483820 973947927 471477487 886180473 239150699 652034280 818477732 945593902 614928398 780736868 500531092 677886384 837923042 904954512 497755817 935195682 714380336 932573846 832599471 858014473 781211868 847151447 952675495 966230865 17668936 356828125 620244024 624009188 928732765 952449222 327868748 579924923 479099807 719148817 710390098 978671385 139236503 416976716 937110487 947280084 752458192 807471579 737508935 762539734 411293557 819475915 276440428 764577733 509294780 943938214 932498910 957978464 154822080 417684571 939547540 949114397 820788712 970309562 167664695 572337090 643268293 988722536 817359268 987397486 634174868 733008207 241036924 440642505 226742050 949624057 561682627 899545018 201512068 471326366 350385708 839215602 721633139 750149707 846927301 898173647 803632243 979365050 53256700 94094004 851483151 901728378 750615490 901652044 13571579 206473799 623810234 765758293 450831453 836792902 946096716 998504357 178559046 550490912 808749167 941234673 935425048 998462373 156114381 498864812 804710994 991979232 862632751 971786182 826046924 949814309 301970847 727619192 437442609 936331561 992315447 994519996 592044388 908070664 653022608 740678160 370970992 568433120 437058874 718203812 99975193 299666763 229296407 521575598 662045822 744645475 247020295 434170658 174620459 870883982 954858031 968742387 937898176 940866653 454406313 998590222 745467646 908648845 903219932 930027556 719987013 934359191 412726576 675951596 589652177 715966361 411000271 625291594 446903629 976256557 291675161 890168982 489152873 922118773 641818928 921244424 465406271 818001376 564537216 800495000 894606397 984160362 547946872 628642276 836184970 948880730 947804659 972626618 810035489 941655399 667665272 817851362 120137539 247339963 12354231 941289012 59324943 986817374 285233278 876857326 582756938 591966278 574345212 886653381 376576373 394458973 500662875 718939830 785621845 947397471 334677070 553069371 659593874 666790569 50289309 503356122 865570323 918753860 994377660 998160688 597315278 943328304 675222021 833023650 156451484 510130569 585140558 610540022 234284387 847452390 873790620 984538831 884393383 886512062 121985243 556499969 565099363 720355983 669814273 868694801 32149226 55623153 880473331 995780602 851228952 992328925 742214183 804690324 672750936 678148518 560883875 944498200 894016764 903467364 209179273 927773343 795094065 830375460 665559524 965915403 474278043 529062323 572918449 806418214 386575246 581324272 683864342 836599932 776247842 901264285 797849 937003697 298036211 890253268 763843635 968009291 827273474 909778523 51381282 835204179 702033016 876275263 208058721 252078620 773380192 792473030 571451905 937685937 528567262 619625868 338642053 697663415 410960354 948843527 957293055 966308115 73447446 169378346 36981998 460026500 733287054 894701501 712984340 920067162 184799893 915133537 310855059 988101243 333832629 822893534 696845624 755914015 487880473 630767797 660363046 922015540 422657831 573390851 300565594 486777241 780842488 886103835 566754400 699016799 98432968 267333498 814088882 983609114 982675837 993568951 278455083 644892500 107191609 385013501 925548585 981170276 403928120 512043533 681517882 981294087 390667809 722148111 346917348 574604689 33042677 909473626 255219679 336877180 395850830 638755241 890701591 896755032 391328669 566049343 201071956 685459186 860515936 901700138 223715302 239519221 919512589 967448181 194380917 640136367 277128699 959946625 966701318 969202872 318505839 750633955 151807527 949548052 268040974 980677917 455531733 650413792 58868591 871516914 708843601 767269352 154740693 756554255 519913742 627503020 103147586 281877466 329274954 563139531 615627052 938576296 649535190 868731143 737089596 737995229 604316556 757701639 362525000 868689679 602941563 633622395 848041475 915515602 103471074 241933401 980348521 981369358 417773259 831901479 101119511 151214292 506337981 601860679 606085811 893462324 273123946 661341908 62254669 171742260 854709196 917288848 253546444 507765450 731460727 960693687 708944631 797131464 720854696 775210886 448881856 870396693 326083497 863219888 651558567 679299606 343589920 587184425 597242694 668612175 247017563 669603319 130358428 348240934 434099131 810599304 367019166 820964953 442337822 665696618 726650037 802478937 335931481 591476350 553261763 753786691 474880582 603575020 648719788 802176369 863652235 885648481 316022326 412092465 992641772 998768692 44372547 369282221 606177813 887279872 794419487 990294397 544159401 980717132 622855380 650609897 832821328 918770761 691473233 938521097 729684925 780239156 738032668 884891882 47288444 759023853 806134217 969287269 970775532 976739440 945055737 973931908 533566916 840840552 104232298 718727726 191675530 343943937 289754363 991516497 326549642 759965177 359385004 763285800 510520561 745698498 839189745 995228637 943068164 981511013 797727703 992097816 961654424 988878519 492764628 863605566 721892527 990552113 654790295 783373422 576945335 761713901 170761669 438638191 153812134 976093114 548586624 834653190 162292298 953181279 869855264 924933621 367764589 975594334 567729765 575182258 511900666 943135137 584933324 709661256 345277584 756294667 309015267 745319886 498100383 840598878 629722004 840541567 203125408 244225151 350154330 919240090 991039268 999251169 492370704 732360776 402727042 479837463 601099000 890995464 402439957 577795264 976300786 995724516 790872656 971878333 342019765 555403880 686041129 754833649 17172921 610870219 149966197 230203578 860136904 870072679 315015626 762856069 706495057 942927471 638861189 787115990 899837442 975388247 922722518 938403850 113915696 683766676 559778728 567251848 539116905 937611140 449397283 467917835 349224178 355972031 6979860 62059908 885351940 980810048 453771993 972680360 993093941 994009815 714141818 921785602 568072186 977917390 621619782 735610943 448522487 558103668 434939912 451042116 473567462 709888061 336827325 744751671 235325379 397145240 661053518 667136170 473346914 603263625 637745850 991801546 386314565 807807308 989331000 994938143 870648529 960894226 659839815 863257036 838691666 889567336 266271202 522923403 837742707 976407388 71295465 854747091 875968539 884931608 392771209 972710519 342373833 405348408 339014065 731587344 643723662 870501270 980391084 988891937 339932795 962297155 810842731 866340246 174069052 988791705 539689419 964457879 703663346 890262032 867792300 907269337 417248187 817025364 507581192 965107809 695051386 853150228 86948706 695645199 545910812 756359843 248387026 715442794 160580493 363796600 261881301 471047328 429341547 935391805 34069942 558146763 619131739 622371955 918769002 952084062 601478759 836608625 798573310 999355669 237698372 898852179 251574221 558704612 578811826 832181063 350913610 719709019 279788819 873159099 649371635 906883949 916824177 998994080 551876464 875081726 17390436 845308065 666707796 674675859 890449064 939418139 169242834 546330742 446789869 763950293 937874132 952765706 70296535 475511638 170739213 257059734 700459494 714950489 156353090 739676989 930123895 950516099 924541711 929051423 425963711 755859985 589822340 893972369 309061610 713648535 231127039 300655782 782065267 857249394 906416965 942399544 844413649 917434930 773658507 970991082 702701398 969606409 491965050 602735266 920591986 967122718 805705939 812098127 97810937 811532020 527312996 620195895 711036347 958965986 972220733 977171026 302017272 903393670 291926004 499795073 809356713 838167917 833911420 946424675 175736372 975705705 329357492 924218046 694275959 924888316 165737188 715737266 368566138 391799169 280827385 934595721 172620809 907758657 734200963 998606829 76916009 792256752 165775232 608125544 828816099 874078301 960502253 999545546 624654407 797999658 46364037 947020300 839515007 972262294 410359299 861730134 593988752 790825638 839935302 923562273 323553138 566095452 271214965 335692244 843936553 883969414 129322605 182405512 292007228 946394301 435254613 910872739 261153929 707407701 783230342 846014179 714607591 872534794 175472590 390700217 966668773 985967752 782043099 872181831 831453128 839822699 678069430 782555859 433196202 516462157 519258628 937250992 472551347 503416087 292132529 737534848 705446617 803771148 301163823 994295428 875850547 882167760 736348277 891101260 16892100 629305594 680029864 688261655 261302080 416155422 173314902 565045259 59896930 428689249 713233376 934598400 992013256 997786439 487840908 749670539 153597704 337357220 665586440 827703249 979654226 985032756 14215533 43738631 857169153 915444356 505179820 538409525 773459824 864929611 368550873 771929962 536796920 620202610 973134367 978908343 697288335 727327880 652077046 732501524 924178894 933363898 116365336 981595802 946082315 969703444 848394323 966560931 19004211 264221635 751940356 757974973 297390959 452757631 911243675 942149666 997721973 999117361 366043329 491727682 115772785 691605598 449206708 587859213 220338556 987383637 437466911 898806718 885589628 891394768 572045467 900742438 789500833 913600255 258614966 422653717 607418544 642589473 351080649 794025602 136014451 564108776 500044996 594695940 61793264 547782171 309697642 813031660 257681813 960047025 4532458 702935118 931037428 996309431 388100113 450028280 779815390 973738667 428533409 979743478 350211234 896613709 859310520 871599229 704939347 765921642 836504986 903305566 691447649 832007013 94869663 544772385 78668542 883325571 505996715 889902966 3217794 876636080 481424683 637181092 588208136 879315875 91968032 187868058 538207949 733533039 162129696 244892097 628797338 675171317 216116468 473774385 885335185 895339027 166138244 251123804 840886347 981440770 393555544 998048013 575780054 937055197 118586222 879186194 16875539 603369540 625772879 948241600 855629139 873196016 536760394 669702223 744637878 988236841 491252430 957524877 675848336 703527272 406610211 850434480 290223437 527489394 69911573 731408264 40877831 928675425 349949977 752730867 288515411 398282932 735912134 997997855 371343191 555001334 375862262 505096741 299207508 307862814 741234106 906126954 666718767 821383583 709684674 957333617 931574298 997195521 384710500 750079589 2787146 198186982 239380635 564136209 889229483 967592248 519496056 743277048 577080334 869665081 990477147 998430944 901306429 909541271 845427108 895877471 502958302 864025188 392624606 484537712 873095134 894851638 756476461 804910382 539661994 831477560 395769360 478506699 840171557 926562644 952937552 975239293 137970080 864175725 119029873 413572207 370096862 540639193 606577970 734587018 444273488 912023681 88574081 595998666 413258551 599493411 702103907 867956916 412226518 514611160 683899322 862123183 584715987 684842069 648787934 892560426 366801825 842634668 253833746 850702972 806857932 813476683 694945285 908918947 153333993 594974631 141639837 533738393 669871643 811720109 544418277 713504403 365014989 527840402 154251443 553114151 117704583 921446273 390230744 528017340 985615751 996560431 233957731 844836833 630973917 800595055 3267033 255182286 917904291 963627391 696089645 824005583 231388318 328308923 358160304 560952713 52655146 333095788 232012395 415409255 50501987 384740072 111139600 476328473 959521228 980145965 121363801 190433222 927731767 995879692 867194165 942890980 854936614 867613072 764577057 829922107 104135940 213402086 721716955 977168212 519371702 657088432 27950710 514324627 282777966 630549631 264268319 650882083 58703303 557641283 424280510 618021492 620939516 701522830 267555923 314126037 51391110 92191440 350449882 368061801 972777726 983245825 308094035 732372663 543744632 601462781 523047818 632029536 334177490 445287069 735121851 765077072 347657313 380666235 345176198 935362892 56081789 924947141 128986806 307010082 822753889 897117679 755531678 939705197 336259391 547730736 627366143 784555342 208110078 585930965 205594326 670550367 897985142 966658207 782411545 854111172 590972251 596138983 21647371 479188950 794410094 840343386 739263122 961325535 10874122 340531833 786144647 924652089 247532575 840320716 533764051 828970339 44663992 127199635 495653265 774385530 252489491 338851736 804087106 978736268 587915426 773338154 285733003 761049109 790709183 866035004 727177947 888182047 754948347 778685597 808932004 853411941 556038433 981822891 445395180 950322365 145840400 937749185 588222008 951628241 112524918 522333722 269919057 873099809 14576592 663618986 993568382 997826938 922510358 992348254 891898553 929536109 497645131 976102169 786143708 792063437 688599737 907679201 745535036 880415078 328593467 695997999 832436418 955344640 75587823 497214563 674885628 819513634 741990752 937126860 677070098 992123327 545879861 820018412 988354902 991989928 203673924 271095334 697846995 928729055 234101073 550741568 649686069 810014412 67431481 892623193 870461676 883963923 167392554 847667569 282203598 530149225 895329714 918510312 813734608 970016077 967015136 998821497 603850888 770081950 10854965 473047091 15826613 565023217 497150400 660606606 443032018 724277602 507095821 545634533 98933821 193216516 703098779 979457408 27150242 847450891 579300482 766947160 773185369 805562834 90865063 586656547 187660064 458727498 243415865 875757316 919271099 934108601 509697259 977163148 684154730 825353014 53153505 520266567 186799272 247772253 354750750 939340828 389290574 528375606 457483998 754413609 179608174 935824240 865422042 926318681 343575687 723412073 769357783 961447162 847708939 864238938 455274458 617101779 398535511 976437556 358395623 993924861 903056411 905303750 144229911 889871450 105946105 143413776 367646576 747791982 282880728 716852593 708288524 712296349 551305106 944643958 225951976 350641791 80700487 586275495 996812037 997185258 29630389 410676270 880938721 972853329 626835205 965373504 788144091 930670734 880588447 895951417 892548881 992956981 181367179 446051988 606162048 997625684 57196670 690065644 169027168 828187769 796114273 940971590 275781788 950889388 948356365 976613578 393098584 564774136 284172906 386812631 953214970 978768312 931786820 999152227 558047194 755607522 288275951 417031531 810522984 840519335 498979345 545531130 696208367 904641899 831603174 934976933 841829401 945535976 437402564 560058836 944890655 977690284 308564908 372796998 628723164 655115118 292230288 942312754 361514804 570157152 533601946 786450921 560751519 718369490 418638123 535897985 440353693 658352718 911148178 973439564 532329152 594222449 704457853 940439156 118118948 998137594 488346726 672094246 526847112 953432752 34287037 982725928 627717327 768757167 621341123 697541696 61992591 981945024 481095728 887131031 114826829 830976043 383847660 851363931 960086286 991091064 601411643 639321670 358058714 699422633 436579232 491661746 267665657 850109554 341293926 600953033 612042604 654946993 962104985 969386862 155167764 510328717 506248643 941243658 499721405 562340783 829417052 910080517 498033664 903955666 590234055 930996491 158419820 692387109 214322106 427378944 594928836 740421375 409573980 858876412 802360172 845705151 137746560 613066591 930671912 969530816 209290531 852210591 959164181 989331558 403883843 616146025 608758331 618119133 117676531 624801918 780774659 967198288 543371073 930563298 889310447 922696044 274028794 935886445 754277196 958869988 676282504 730619708 367312243 499291440 192788168 317387310 16027970 121766026 702117098 988098102 316031439 467473049 620428311 629688350 759585018 923413936 739776877 800038353 841883056 978322967 334251639 677620091 99224643 852560622 101560838 133938365 1166047 137746937 441220560 576286084 257905465 924006546 597292566 760129604 843310617 886010098 648476058 849846218 349812457 991799696 806065605 920163290 220919544 954635939 728061670 992197531 596208891 823838409 167064663 861874155 971576682 983992548 163098783 300107905 105875605 746993097 231940959 657376181 943484814 955132197 852064898 857065412 971696818 992381229 852254469 942992828 559788470 620650945 200144814 727414398 714245867 856171019 42086505 122920346 923889760 960392702 686199423 867774831 856348616 877306068 730573955 797193998 397356710 487918730 539701104 582248352 235728927 573418396 787464316 825543575 501688023 970361563 130758652 136174708 275055871 867415836 124517382 998001428 953414979 968274447 482251356 710757712 961948091 992075069 119186015 855104107 750315210 760546432 271640705 330631271 233192705 534348447 708079576 715499111 380513762 803435875 388954064 869744194 203432985 874136956 217547796 271149765 913186728 950290765 203574788 551655556 821627102 851742942 190136379 805585476 6412481 35299317 357856749 808645585 588035275 716961165 635951598 717028645 204584592 886065489 164722926 482827100 629263198 947877014 412627040 553916362 435384658 756918978 261007368 562903321 252003476 965865401 854941069 862320558 326101988 717423351 119293562 283390723 465110758 485803828 584944616 655386426 487346954 728719133 362318519 483181435 291891879 642335496 763821662 876650796 566012933 944014450 128050208 226441785 679425763 746494170 182101321 409596241 70213974 782596667 249863690 603892913 231156896 278043849 368652922 777097353 230391297 965710668 254396699 668209154 428039108 801239789 624965400 691171938 36656674 139575397 416426735 433682331 304375688 826025336 428424123 860972950 380881506 428243369 11628419 457397899 149337008 526526543 655667078 751395033 417763444 551264285 612247116 976019941 198732386 670911432 501658227 584652746 21921420 606868496 27961508 846819375 161457788 590876164 218232556 573595622 204733928 320815828 602224152 841309478 358311426 656339097 250925573 519742000 30763917 111322875 120849201 750212192 237891665 280645544 392681432 864657191 948590681 948664386 576084681 699207177 633649700 760791400 265607340 834475361 153061220 687272315 51909871 278289275 49246124 961416842 881021461 983080878 346331769 825082601 516580526 915369689 827140929 914348091 790135489 906753788 709755279 832387401 772676423 939394185 642607860 716477669 678720095 719589399 413800561 449521494 807983293 998423352 494546558 755691894 50612146 527391967 749219918 807340962 373870393 780140964 624125755 909254372 877613228 929949550 919754938 999661939 11163885 287268449 865848646 873506003 810133909 998231992 699652320 913249687 337287828 420674991 615002730 687991274 21167371 674043055 589482217 804792993 502070784 803902210 742445696 997592160 638727200 801141147 271643599 512761884 132331988 933681015 649164925 794517740 230490158 906816800 728542176 806162151 707195716 941426325 467010598 976734235 13426605 455307198 502394258 819232437 481974135 808639496 960169080 990340498 704754567 755570182 796210866 919965299 998326339 998865660 877739659 929294758 613739549 957599893 963900438 999932350 782364815 936935841 997445756 997594027 909912576 913945596 856659650 857898890 144221664 518293548 273017515 919065406 371938274 384040824 477646377 661407954 658217013 807355161 856735870 876740587 400455506 626620694 890998046 993593085 935111112 966034919 810661557 931023048 391013564 726656360 265233620 581869735 644502403 913658979 923223189 978056828 628725363 726448829 31798326 688537731 636532685 704861734 939052934 946082657 739590208 863785137 759079117 819501255 36583534 613136342 722865450 918969678 544341422 874008051 557914244 669388123 365610269 785563849 869333452 974344453 254514920 257148711 355785137 373918994 420923238 552200190 63092395 437654494 851613977 984832368 573451241 847480652 999755903 999972479 996983552 998723036 773468470 856267722 101382873 815842701 403669046 436656733 945194968 964245018 922494677 994681091 783565965 825942854 959966128 969013291 681921301 865584633 84259056 401844591 667417373 779939199 18392969 553178311 751200645 937285274 446820900 899266169 364520194 424302241 726953468 806113003 613273007 679370521 667007495 863313560 164624673 399885422 955342932 977054756 317857578 926894900 863816129 893431857 476969227 645562402 811289735 961292886 358694636 932091035 662429166 931156605 317248626 477635344 436333495 755174495 980171600 993560152 13314916 905219236 361634845 704862839 199743156 977555023 645095642 826802553 654534908 978704790 365717348 428369752 354583224 736147901 157939522 239097918 735508304 825016067 401713157 594435826 57855558 420744599 910800306 974315776 981791216 983215840 459581138 851253309 59977811 324487582 435361379 472800195 609291528 819301964 375838194 509310060 628063811 829089763 405346221 487259736 236578914 567511356 506223907 513500192 616387554 964079437 202814556 547067683 890708681 968641167 923576223 980773116 657859155 874150479 453556992 556126765 301586877 695770828 22708966 621120472 396862924 965458654 413130590 904409501 685822349 877726739 243419824 661031225 320539304 745427810 145067023 165720427 936115879 975480131 77114716 687020057 672956897 992405765 564065085 574082880 353932199 833488001 350242283 707996635 664258661 871280493 255569551 914363527 509919470 627149808 161829570 180967769 318817875 895255899 781349358 828706003 418208632 454664568 251508590 583497854 35027174 850605005 435613336 896034401 319619722 607666104 241523379 977700391 430194220 750846374 487124292 903164025 825136736 947995191 424917760 767570690 985893312 998011216 792725634 919930714 734471248 971529853 481972219 524116902 750686432 762201105 604601899 841146261 658529608 854224469 385354956 704706012 58464996 915589899 508072863 925738869 203938674 208984297 580064235 711168416 644672372 930561969 455692176 683411317 54817655 911372513 803006710 808119588 719370230 859350577 291780596 401822533 906082104 910120863 103386421 966640379 9999100 664759220 483707720 514490505 434521761 986087734 746186678 946005898 319848845 450473613 319987684 529384581 688533729 818112775 272495635 541351988 3918620 397363113 26791297 855784328 863111384 987838169 130311319 288768188 306869749 423732042 706126046 807375493 449228840 492500463 94050165 510485965 882914229 897298427 498105809 663467429 284635231 552454691 704558376 791520117 175494155 372491452 821493398 824517789 802211852 963020321 194504523 237175140 783507574 810334025 819221057 839255139 433421383 588361813 723884867 769672117 494286582 770300892 521569559 967387301 994616306 994919945 947942342 981924119 349487551 634831660 914845035 946852984 282677213 294882724 179916918 787725274 308926447 432608838 890183420 897430904 285701323 476740997 988587193 995984922 861533245 969459297 68552847 412808752 301431975 490386749 92105896 260437420 412790279 590972765 285442222 681586142 18178356 403975947 364005567 925715887 671857442 785501889 21295855 484767365 278820385 797580139 75213358 261732960 340320128 986745349 930717762 947730794 197587507 336449891 937746119 986697874 690291729 738458963 710536201 873429847 647234520 837437903 928780488 952369809 801571918 826618416 865361814 934211137 270117608 816375159 76415870 277760097 322062089 873568648 42729727 656213686 818096503 872756092 83048413 398907626 600591727 764730999 46943977 827028566 948336685 967716089 262028201 632386603 283242337 539688095 129172119 474975031 320630363 459852711 914375988 993316146 106785843 642615376 345508542 988837483 994959872 998194244 80408976 282530444 573825284 693859330 469331303 517988284 238459463 787191476 435568977 844052925 477964914 895539236 801930596 912296987 836668460 954538421 724664794 900173628 283372199 784819714 153141555 370345947 866458333 877691903 167970622 457966295 359090209 706244411 41638176 232231947 548306074 828779464 41118802 639686860 242315954 834393072 520242175 621438199 372386438 669922441 898837710 906260560 470776362 654559759 942680290 952546515 199357973 541252174 387960329 587380756 819896419 987000489 13260796 14768146 760992509 975238880 339612491 645156600 387954445 799153292 320011934 659302513 724512070 795117971 505950457 710983725 204436468 263236732 191842171 879924209 46864239 248535393 861434056 939493365 892630194 930334570 932157058 945870687 632612075 830573350 493944928 712057431 891738566 915395345 362275804 877439379 541942420 681628869 59054990 65026105 672041431 965112924 34413163 60312178 301631518 420871267 433717679 646216170 498300442 627966979 860009994 931894370 59450924 189797039 128022987 903292156 416045276 585475570 215213995 807053541 322610028 591454731 438015714 738644844 34945083 501453490 222171003 348655989 692779881 868720653 912848789 985077119 295612559 919749742 109042678 674484564 575482147 628328645 257400980 435081980 250718594 944322067 63292355 106002385 263630898 744177430 904498271 919946738 695681000 732468163 143727937 693888136 744902911 899396605 705966420 928787111 129585351 267049336 680469549 686920546 991145795 991277527 876996867 943153837 210687361 749090732 189887202 383401665 609863387 940340899 259642463 988594534 633160125 907982081 72217870 725264385 368771088 937245662 441280519 637813545 962287867 971014398 400575091 940889493 332599512 400226227 636061186 968336400 321962125 752463272 811909566 895818910 134721143 924072648 738117045 750863508 101621487 838906857 417622920 737535478 87339780 510016101 841851875 861333682 982903303 985957695 804798399 879308472 444915650 974356056 787014229 892234796 16510912 369164180 707753785 731495842 278141929 586614685 17658701 804987489 628244157 856779588 237387856 351219561 811869125 833690835 649790369 708944997 946780234 973158368 21048469 183687057 310039950 386505799 344605210 409451782 464361562 900435391 971452149 997371392 487775647 900618735 222367275 744202737 465304722 695977787 551756270 975437044 347953542 451906792 907891963 971023503 274577217 393952110 161098005 947095913 175585031 705598820 451329513 521988050 929965091 941279605 506608 429529501 690281603 858555611 937707510 960502624 625384272 717386746 137346971 313288835 154275928 661688447 415821774 685464337 639058351 670588464 496433138 865267867 978556841 995887800 718054908 841570400 337755860 828337476 828832849 967492873 434478120 596963425 119583718 626966324 191959714 706997613 342134557 484310414 476767071 828462452 72123436 453819270 887594775 901068691 158727385 333191816 453971051 600865598 968449892 996364537 372282639 497594646 498250333 622249268 737396198 789003749 406202565 451693716 726075354 918130077 149249908 862370059 845201147 863129291 941593439 985136212 876205828 988567421 595641286 905284720 830415115 900432268 505480640 760395407 171499482 742879559 148935765 451785098 488447011 984401312 342165760 464380757 258661139 545767678 700825431 702808866 33298897 344609932 15220093 230485255 316219157 505283319 638912447 730830127 230797652 442747993 740852844 986417365 848882734 904044291 815506783 915011668 550916188 617444702 262501502 932713020 552121634 562535675 250068213 864227267 357841929 751789822 649759584 900094547 94315751 757168969 713645800 983375515 974312401 990194999 344929979 586266157 885279350 950966337 504540799 602973051 997935904 999154487 794465075 902035493 166548713 406269966 21902034 450376051 706460996 808095283 634795287 846201648 15653510 202994121 992237651 996982168 882545635 907704172 117977624 461069689 394926856 814302191 624227572 839759792 584538140 816199564 643875623 805924428 172956294 641402136 495387473 830119619 181475774 465462879 259693686 648450727 990405953 997584717 655137057 833322457 142324042 906608112 410051815 457740500 843991856 880059066 632217657 898290955 569729433 599449660 899913370 920688243 345167157 932904759 519430222 684346776 87257989 855924470 49216555 587396649 609266605 703736446 184082781 832478445 902192160 907227326 276335627 854253241 222695702 721536410 249689329 652120735 132721401 496104491 617544070 952934217 89970373 871326661 588186737 934963298 39577036 739962904 846344521 964109462 673079287 740556563 217787293 936214124 151194902 358397245 612726364 637460714 873175702 998620992 476063437 698422449 227695107 638601496 601223173 882198339 937963067 946209375 535963702 657225025 196729927 898852486 636876667 977232913 283904514 552708816 206283364 578732028 29186767 897001076 205177384 326539381 685512392 928815479 386871184 609889213 961055516 996229534 872014268 998407770 305226240 672761998 782864702 959960587 557546690 777700480 506697530 937517029 885748762 997602830 583715266 983232473 813154103 903624595 417491459 487372459 816219127 838036200 263751135 384661606 523657458 524488320 473529187 875978219 497543594 585388208 453776186 970424778 981837917 991891257 711902431 846961452 602589713 773075701 382066683 453366057 763610515 786731477 603015640 886549817 989341724 997449574 879476976 881405663 320953619 726666757 123975497 927675107 475153771 623659729 416338623 601728927 752652913 924584017 300353267 420747427 527998384 916728737 142118188 859161373 902935342 973856086 107448427 232858404 133856233 992145920 170705107 257427710 923573730 996264198 878299126 978835091 808546517 847897941 506856944 653044587 121679861 993746112 613212111 756127744 726195210 836534696 362145557 910165508 72991797 479437307 722020161 788421776 210816147 995492625 274649296 890484159 932184689 992839490 122316401 515246020 510671403 873406308 683188116 700595796 456258156 605026620 105331205 333398021 263813427 760318590 981927782 989467115 191408914 717015416 781988334 802270391 122532321 424615462 662735214 755903805 749317530 988870402 324109173 375931750 66755950 615079860 743269777 990334924 382748032 802667774 530860281 809548866 615288046 795196255 393993020 405660378 147404362 290130998 957925849 989763102 465754618 765541886 647767704 772253534 605666877 650776973 599769283 889247925 1497401 380324542 64277664 313567247 672822699 760826581 553435480 626838270 363340705 984920469 818631146 869470446 736337854 825556460 848198292 991852155 330397970 957853328 811915362 925173484 664622539 704183043 355586439 905253107 680985662 863950286 122886471 707953523 798835272 970798253 660564183 688334879 195231030 527354669 674927111 898690531 892010091 960236582 365965937 608996047 415367739 949297143 50582759 574837442 179868069 982462401 365240387 565986304 544891684 772871558 503279975 642536094 647585056 955051616 958622365 996482318 22416278 972301632 924312678 975828095 631807891 986239070 873842897 887910454 8901898 345408774 500618033 838044536 576854436 912992770 633167904 723955626 632863597 756508239 710424394 985315734 856644333 886022595 53765403 789500486 728146903 937213893 43453044 725761528 909591213 995513371 341173623 695640751 328528411 854201305 315122828 605392493 309177908 365123431 279784512 699890834 234978032 605701666 63698033 745423236 775102010 951675514 510210013 569789024 231073572 500702737 631706106 733571948 314239765 480442453 666557874 779626942 591251626 988996182 37827530 97063189 894858146 952886141 344849721 995610730 400019395 680165425 129654342 323696501 176754269 458246491 636690623 957774165 313891632 649931843 427635836 622591283 139538342 321415790 569871710 588300855 205409120 864126156 441261462 476380614 416068209 938471479 735341259 740077824 307207377 885307323 991627391 999139112 673100079 752493639 610255244 662821097 907319768 930759513 853447464 973366163 737613566 980485315 927987495 946255154 119748950 525609901 507069625 890085181 968226129 994704087 97301120 524780546 347558133 836277030 307011075 608277169 661029461 758863825 734290703 847868419 809792363 984239270 979826436 980092559 919311940 979197881 992407973 997501397 876988782 951938887 572207950 755317873 614276885 969850482 47846273 123497977 8370945 954800543 989594765 998075479 117455303 798100035 689447494 957818154 320475677 453709989 480145872 560905610 20135195 996250786 617220340 622122001 505388085 505976114 954314228 959565573 145411537 682752478 1434771 55730827 573261193 627897385 942871564 997545865 181395642 852927807 147607778 659593855 411667816 679288645 620545710 874634358 14241614 97140072 906794369 970624441 39977233 790229392 60767951 703982982 146703074 330920868 662781927 900577205 864728520 904390012 429547426 554860352 676716257 841346837 925972279 940771057 936430010 954955178 932676484 956220926 202795332 969350085 491281628 647701166 60562383 825272855 542460141 786723897 466061877 858268895 234919086 547306313 918468821 953567135 189955499 920625998 722971713 973732611 236122023 377075264 95206098 314190643 731996850 842576044 403690626 977845209 727099440 962943581 281621513 297075662 366484633 385977811 220272685 267567710 783615241 930639939 793537931 916974735 745838200 789631804 572469592 913154743 972034254 972380814 225826503 372824396 216973634 588892434 732763728 986386396 654930960 758510827 835348066 851245731 281821987 468609831 524746608 853599157 403676163 938533877 256045825 408471501 488006788 787904900 767149275 869322712 345542335 672176639 89193666 869292666 575219505 747430414 548214529 742802140 726965210 751628288 712797488 740536864 134588365 667699991 833583042 986691860 385264987 449194608 665590678 909874175 979729980 980463476 640230887 987083021 531545949 855168143 770433602 827963643 96910898 653121212 610651723 803436910 764272325 798334188 276354172 407264138 176887076 316746159 263617 837115580 630664210 667035690 374178852 734692758 255303711 976218973 930730076 993180756 761030549 945081358 287526034 541548884 902915517 963401081 47998488 497557758 894861083 984503490 66001750 486095426 281770473 318423918 756868609 953010535 951287877 969007008 205094659 870850698 396570908 657928255 688561437 773998093 46124544 329551122 998654644 999503508 599509447 891801188 138509826 350068551 524907708 838080591 322088291 993992976 19904799 973092592 164647044 938580989 66070242 442201941 176795148 295503611 53954124 916614078 727151865 767178489 590013312 845317646 22990076 983612126 883631869 899956056 539230455 910723986 896622692 970779504 834372689 840141719 428805962 863652310 9555654 84099071 183863744 840128902 253969763 843975550 848660604 915168032 548670467 810536958 634367482 906216219 838253566 875848983 850913098 886915547 479160192 717321306 33832967 241111901 552995009 829469156 572395504 675224482 148931507 815189533 212051955 386503316 659669713 676996786 357013978 986122398 19504194 794030306 289164557 515810621 307790751 983405488 398412593 593971298 257556244 408297221 391490261 995136545 717210202 964889089 545826336 564177173 858012153 915412193 956858038 979681845 819265633 977081114 724231035 789236241 237937581 252441773 138872152 598237075 698210336 885262308 639085781 995431476 110539284 926026851 447877584 524111939 803614555 952339535 278341386 334601231 476317762 549557012 73984091 542802261 57683380 664995257 40110824 590591772 663313054 732050428 746185648 791830681 279753761 441742146 352618465 484560202 347317775 491937437 668733151 769393953 361863614 372229471 609806738 898930682 310439716 349218376 8856232 156775802 47590015 431887907 321642611 608896857 391421615 647570271 158010477 902164024 425738274 762132923 472019094 936006927 515888910 913921351 923105550 940190424 999870261 999901297 436678086 898633283 458171359 486214218 883056639 982854442 628206312 653343462 477234745 811799015 2172410 355649524 517154036 659928907 142579798 618879044 972553015 984041667 124437888 528040867 366853086 853368242 524257777 969669289 179243727 676182779 994783217 997368690 582228993 693885626 809322499 885280103 361307371 558708462 328121850 448257192 88136681 675892450 785564023 832614714 903995283 968239935 62462344 342999004 376902856 614424533 259463925 821864534 534747561 608846265 437761191 963189871 622287086 716409451 52230164 481072230 323110634 783417352 370594089 824961128 936173506 982680208 448642535 530171550 899712780 950575316 742766976 928510147 173638885 921412358 70449726 764384172 399824721 761395850 699459982 804011513 891694633 977611958 879370943 983868665 268231959 935453957 558659287 635675991 91243831 808759982 124978246 153223604 472526929 613587917 376770910 677405696 630778985 672384614 70634555 212647358 743711445 868762723 846360601 875605478 33294425 240856841 468898657 747942961 342639402 508519014 785539043 786622057 977448483 999263022 275332307 276873585 35616478 934931357 588649835 753107967 293972071 306312050 47760833 779358373 41851153 681598821 82996914 936677527 333454149 635241434 670530883 764285797 228242771 753669805 866666405 903241480 736583382 918131864 103219364 179969643 152167909 746790104 232866661 868879074 155549615 217631977 904129312 918931997 636847693 990722283 340182549 479490852 732553149 863879942 759886146 966917353 527044767 543355980 876496023 929939563 829445881 912053228 499136241 957065002 185870066 524567257 70459363 874918137 368549603 610705217 374140076 837197443 202302156 413826712 903877221 962640636 863327184 954436216 302922886 435591651 286622326 991314087 370661198 476362256 589580086 770295600 624742626 785366486 779268398 957666118 586252787 717091213 135359005 604183450 254629392 945230644 521436682 640283708 506295087 569693960 725854200 755036714 716869999 875184160 893378213 975852824 373099395 892648321 554598176 904040276 818682563 931273070 732529628 802390289 255230282 674940606 919232145 961965683 899535170 929786870 696579678 992097750 228591825 879718352 920565225 966022386 24196164 931851392 21171963 669539914 480531213 922655673 988173535 995760360 531761812 987508222 407625864 426550384 99218880 925075815 273770792 306827639 953897707 968592324 931388233 998856723 970363539 978660932 372581698 847648777 996060255 996787735 833236534 940709032 722515205 831925295 333133328 952164725 568152090 583689567 204459420 601304523 537854617 756446236 294497379 458536123 346674105 869495678 140094533 471768894 337702291 966086767 710996919 730269292 356219327 469997992 733414270 791267213 693012581 968483171 53798560 837928560 96458330 990326501 305766958 429958931 16433179 759692525 24752307 828183991 798162636 807822030 782291903 858851362 251328834 632982185 443742247 689452475 585041114 843949657 606695800 991898848 842508031 922778479 155662840 544276470 441227303 614232874 481770664 750375255 638638777 842445674 970192610 973555060 401181228 628303374 180461485 669868690 742336001 884040159 490074587 979568060 225427362 374228361 265807564 770470818 977596582 994781124 540693446 779396734 266803963 298342941 13402895 495377504 215264173 743369613 168178946 779390444 972725746 998319530 980355112 983956765 955075097 974104616 32229359 56711553 958737750 961956779 151261654 912438961 23655089 720579311 96106912 117082527 937985139 978693023 94209766 741428824 829221843 922478747 188070772 955446585 439867651 492681679 782251241 921976055 690245696 842255837 778527902 974292891 50064365 525985231 129179959 939999267 24002127 256449686 724070530 839033916 195269278 515056640 531999260 998786853 446718740 827225267 109753625 500255536 553447527 573838540 646141037 862630918 540102744 795629776 766556547 911877286 762446273 879473456 595879024 897993070 941034603 967463506 854087366 985032241 142766038 253961749 873926112 952149068 819300934 967635109 804103764 858548856 253610020 685336727 713011638 916429399 656137884 691330027 933129974 957397205 703972475 836427118 609117213 993984657 627546690 968710288 191199680 538836819 55010109 534307505 377642385 637401622 683460665 840829038 549104382 714610852 301524068 796265230 47418709 396812597 760819792 985271012 257489735 895839043 955354756 995009234 699344184 866132617 838289655 949701278 905802458 961597673 100225326 721337038 583209241 880349601 216495789 409268199 229008201 269002052 376765426 484058945 144665112 567315468 229858150 991122709 415908306 591264995 301617284 336371911 343890398 568403798 307600105 973097569 246225031 537695092 34307262 608318338 976598097 990525930 334694768 978208601 370195947 570793751 11434940 371737069 695647871 936511620 595410807 699492754 72629842 797521576 575922344 871829555 858132972 950023175 307314193 870130801 102048024 124987975 26783230 268647614 857552017 865248094 699163267 954942558 474736999 986454520 583195655 642211129 714358690 762353302 757321660 840047624 245528000 924296618 977215237 977220569 407506510 659774726 161219450 940701595 147198637 396465071 675183704 703329631 827714148 836984693 403006488 592910544 155303334 819374381 118558075 249819764 665184984 834981959 382999709 739373893 172354422 774089701 70949021 209729490 549636011 877365082 366542362 378042067 424121889 866224854 346315326 741690943 237056802 273582750 796325579 982903793 758521059 766358708 131945791 434346194 57896892 269769353 987845902 998327075 568325316 602354352 639139914 663802544 945033188 993171550 447801696 735595698 365662158 955512522 799616345 868639778 271324098 767873660 197294302 604366015 339982502 447909512 167763699 720810232 270315419 827651345 42389136 989580970 849897578 910698919 583217726 889430532 426845429 865276402 759246919 913242848 643964067 717622230 668724274 840072474 25473984 810225708 554378262 809040934 609342738 785076551 432128333 600636956 707913159 913914948 932841909 968437433 400324481 446088417 149789467 408747278 573377144 718033127 791598993 875408612 312794032 476021384 173023499 244721940 750435439 974928845 109209564 887448129 697801282 860251799 861931665 988663713 593672656 792381715 935809437 995233076 313313704 975270394 845792630 893319266 266493588 483301716 64571283 666940801 108741374 665500251 559105466 720183427 790175796 912411099 746134834 935859163 609057801 669729700 258113209 898075210 116197429 285423291 558392816 761792697 736764150 754817062 172338623 714703855 731350917 947724170 276925162 372343296 893011614 954837036 931078034 943628299 278831075 395196393 264256669 827520226 174297545 986986613 269637969 618711327 323962439 673460668 477244862 686913620 344966526 440429163 81319173 760508543 830135624 868004713 112234115 320692716 593085106 824957319 834428531 974299477 759405915 839036225 316925432 702445631 119015090 176205962 231353776 670479572 458903684 509215131 616228402 688438400 195428588 478230665 697351584 795895754 568699070 800668569 703152527 756040503 998179512 998645199 297435208 883723706 162787110 356094907 777660693 804471358 8342642 968477804 667108532 896752380 807079812 818080363 886858861 950084173 981002565 982394996 236388297 772433012 370881970 778486052 241036944 711194166 246604013 484984858 667317599 776206662 209626293 715724211 951146579 952375769 239403770 409718628 411743496 772287475 141700672 454128263 801439689 860712523 914466301 954998780 686917975 867948257 608079830 712520926 890247151 947593821 47584993 992433700 279735758 339901346 454196769 837099309 98929727 339067221 357507134 944865263 786398765 937523810 62814748 316757928 872126210 929402621 332976173 578171597 885061898 910903980 652278762 729195675 986332125 987164665 212357929 305487711 884765339 955970573 597089236 924366987 769405063 777613216 612972926 715657455 494537441 737917497 222074977 660591619 98287815 222284058 882442929 921556904 192164161 367300528 946787640 969211418 400991754 635726395 611087560 870753896 281204256 677778940 953706731 953982356 768517488 809781715 174392750 461360628 88256265 246111148 775444799 811013896 727980704 954912852 935640796 959208681 181951864 915596277 819814448 866551901 6708304 657740129 727151368 819090472 690238267 763430196 492181447 729218140 586025587 801936488 895515938 910691484 181841848 930311817 228451392 414314869 774906771 815995243 603762212 768312942 154917958 948864753 690230612 975151242 375764349 601620305 996585000 999237942 881484933 986930243 146153395 290066544 924910288 987070353 465472141 607294370 479741385 719718010 472121799 912225133 81025785 639560354 636145237 753751225 343810998 692811974 403173202 491786107 209149636 274039143 164891381 647351742 742897592 770742826 547509351 968544068 961378326 983071673 999125996 999238080 191399944 468663989 94118058 948348080 405490603 973072356 686630374 699680461 628729797 939060732 847756354 919168713 420615314 497312052 578111166 673203466 951095179 969573285 569884480 925776079 654164781 731180074 94879402 134113235 919044180 923852164 240270119 296299442 725003254 874793482 670700232 770940258 377112670 595149699 1790931 760830674 966426125 968016551 91843140 826526058 749053204 991960451 597082332 679681475 50065099 558590574 33508983 283517576 408323232 933799033 107762551 401112562 642607597 806392221 225435368 332620435 356327121 360877814 767282900 769798924 797953439 980552719 632875043 706385601 834193617 861701836 953169419 957403614 779812294 940910910 149097251 473560804 27508850 448297451 831618327 985305882 16857139 235672093 282586138 650618430 439380054 654787295 753418376 885590395 828577256 923590667 657043272 960095135 238345018 655503805 764092007 951306522 562762078 976700440 405296574 947552541 661832316 710474655 969903750 994495394 300687909 942438410 935334056 965814505 469758066 714506622 265824277 649856549 385673950 983950646 947338202 950858193 328829464 565352566 703589296 916523387 603565637 673686437 593395290 605108729 788390046 868504467 576166541 927538393 547200513 967505961 491350420 727380577 688737140 808612283 480233223 858164917 73398332 290964052 334599684 712955243 815271766 985878840 755535378 800628619 927817168 968371918 623775847 752941384 800687428 802867848 903844279 987750819 510990735 921817911 96867651 727452401 449846079 693711712 153423732 352319277 221872455 741975404 212010400 436280037 78618806 161698665 373085429 670345528 194370561 782649542 480521472 788191012 516600427 523581637 493666819 570987285 291416833 797028005 39144988 540796346 517707117 610712746 570837543 730646551 620694279 711513806 744163685 849595599 392716401 733648540 161053167 914062747 804890096 844262570 729593860 774353044 472711616 563211574 941107913 974480823 186809886 963530808 860728104 975352843 967880125 997182805 34324095 409644297 635445561 689001822 938976638 977899020 904288026 928491582 617591490 986847097 493397821 805943640 723804436 986358982 416879729 953070325 33752338 433430466 438122831 662719324 521956664 842238315 564563255 845746938 889080807 937341286 624235854 896898223 997935015 999687899 623647775 891289681 965849271 982489929 774783855 955682991 125659301 954863655 881304818 947794791 465524 592175097 14335338 458154170 402670609 483966351 547773300 625538296 52623599 316770140 114191637 456142586 983035714 984936851 450794406 737555459 17415135 273621363 127457224 484719975 403904295 956492304 551874759 969586455 658190600 821681872 117212932 417627754 117723867 349833345 334334990 675424873 916000057 983576335 313829588 604733211 540608348 742157245 983826673 989581634 874218582 915174087 919441840 980624156 522009737 759075791 876976587 916591537 31993416 709917793 647016639 911157846 39067845 438468462 463738865 711519576 35707235 497462329 802069648 923333073 66376961 529818413 404098283 500197565 442190324 660991828 736138228 803358607 545508082 729685241 41931218 345795202 500009860 618842650 399442671 418667383 81224239 544426720 161719803 585735254 197562983 829581373 847908270 998829858 811526684 881945743 506089069 518894458 186352298 609583388 399037151 800293471 749319651 803817921 509620727 556767742 722883411 970025665 621779760 770767394 536805308 628243174 297531255 998201042 624966820 678951444 748938626 756066666 742203526 756771473 794102118 934467194 370673904 577549570 1139715 421078420 777719837 807147419 199011971 232890896 39433540 627687896 223304052 873093438 636401158 699409508 541100034 735709569 970059456 975016952 903981560 995708486 930476913 951811501 557291895 983762838 499083553 711303360 201519995 753754004 214795082 662543593 26769654 157716258 752752044 839019549 128782714 176513573 338428415 740922895 840099329 844820988 915061378 994203187 984044946 987872980 375278873 951856569 219461386 295148449 520572189 583562468 372221281 453970980 571680246 622498427 316092909 995221293 80822876 327635561 64047577 707216696 215392743 716738175 938752319 939101939 821562771 953473021 181041994 305184875 158414199 388096414 381124547 543376218 524431624 719602691 397782479 773091563 302622117 474435701 587682069 943806058 140634373 988917383 301587437 514110596 455617080 846608392 940227989 997339994 345158663 597342431 641650097 906502238 209330529 755282654 795167275 987505042 878980648 968779714 244569632 718008326 790579584 897487633 87843881 815697111 267136400 943503127 681658892 829400054 61775628 504457255 528245924 680297103 729518587 979871062 92527078 834563483 17906230 630839935 978795838 984410315 281187668 936749487 80008650 368158944 245143506 895196458 833492793 881623645 72438591 708496058 785064071 808205886 404064421 938955328 617550756 991685877 60353634 472256243 716238286 791171387 611412397 732836218 523865131 958124006 577915893 884606239 386630188 769720184 696027507 730605653 135176881 396222468 618125015 887811371 311710285 837617164 397015150 863203167 727455204 767162147 654871465 694405081 826681157 937249454 631144409 945082178 486550350 780833387 989239357 989814328 290493420 528310378 846929525 865610648 157832374 396913371 720568041 954894293 257334250 320964843 394797054 644948528 948737802 954270396 811072871 832258992 963509594 995882666 48350814 863409149 636571229 644544620 358452357 871347010 430241234 669317171 437160549 679756901 345856189 958006471 556125799 942112230 868847005 998346717 482222942 927142097 506633745 617188094 323164460 760107390 877600857 956412746 553484406 633047210 311795891 645011228 663668730 982083891 883153598 940558984 520949794 609503416 957714701 982098709 953421274 968338294 669729505 920855153 859387502 971155373 432860702 866289374 31435999 650985087 978735490 998403547 313282529 371754423 563374478 765491454 764453798 989940474 687155696 843078862 389140603 973775367 144898794 569930032 579318077 867765051 25671973 330508309 588300766 608791779 825225875 969292053 398596658 792607641 270072210 364729981 69005537 144430799 239535812 702416501 608192144 849366830 626320757 997588047 592785484 746076587 983718656 986649145 281545389 602179976 70821963 699529836 709181514 867335918 730535636 843476803 660919340 674640833 704858591 886588326 225948067 448966448 193884663 645365761 582397381 716578148 35773461 293286368 652233754 682685836 292441440 726458271 454230774 743763858 177304951 777429675 726047046 978979418 237362912 757842850 578135395 867817851 408387899 865244913 93314706 869463980 821569714 993283400 602353291 912094106 286126381 505114452 148197417 743152359 115046558 124106016 155746815 775822712 600061003 919723825 362823473 664466592 894432408 996732994 551613081 599385342 299685737 546326969 773352212 966782008 783469116 904794882 738538452 844856949 414726690 468958972 85627065 236314103 758916269 952706302 786634798 787454355 246200498 370021041 583898144 785293020 48573357 445857372 29329771 30773030 906780866 950360788 632219162 933132300 948569664 958702901 408057817 835532725 971328047 979826301 447773625 616968925 122468204 749240289 101354529 396792150 203933838 946711123 788723277 818348291 146405686 954031861 842684369 904693230 125163130 397147922 546023958 593118451 771423605 897852474 700306092 869461674 648163350 850674847 207072347 459631426 668994823 717522540 559958457 911418324 439383407 711755437 589119982 712982488 683638076 927957941 269477223 940196324 680696692 880675826 740651436 926863867 850726786 977975687 153384640 758045497 995752954 997629626 536468263 795217563 373582900 556023948 744831371 899670694 956367360 990714147 125684903 564588285 455538687 838183803 225196254 451247340 221099080 492159809 993407897 999711864 697037807 732566137 336840249 442398560 237673471 326908522 974791416 989893285 285209190 455741754 656335979 737869020 881758036 988817663 397060440 893314173 475311574 972212471 364626246 732517385 536479535 556842385 742225137 990473295 486529367 983149301 69797027 383706249 264303431 714967480 542828316 851655959 727754793 954461299 320942119 872017785 781876893 827460995 432645268 858528137 29326713 733827620 96600893 297138162 843733500 945267891 579046507 614790743 978833628 985923670 720216339 994044013 751721236 991115696 154737594 170785198 251504717 749275688 687160187 808290018 319543906 564990297 744829980 840055796 54815294 752403183 985890196 996673340 800813376 965138389 348722166 919221176 182992180 330433197 546677838 706806821 2166553 741398524 701812820 840506402 595063573 992413479 89485173 950903758 460912906 914758425 833579727 910576629 857905133 896424112 959252845 963778139 588496173 986508862 113740538 114448967 674079453 969930867 998836885 999097974 685672768 950972399 598822797 732003677 960379300 975836172 898832340 943730056 847685754 919294376 263952393 700044713 818552302 939743827 145657855 911561371 949235893 954763036 906630028 978536628 4864639 684917824 74229802 651922862 154739976 161678510 149523108 278056058 527986039 908937129 721089525 995478900 305544643 319314726 109220682 969994908 387277859 766372260 252689764 437079135 532266447 822514347 786583043 890153422 241230670 310126684 688030266 941468313 999130363 999551760 304044993 955388526 622202 434595334 735631243 817377488 933631189 983022587 907201771 969349852 248239739 633248134 880228862 975607048 815049364 819828873 725404426 864094762 861541665 874094265 180823555 261243691 460549963 937293878 134996518 473260758 464644818 523462457 522192965 892431313 196135611 598993963 111478953 990708540 219700304 457412756 104791722 652299789 632090151 749810210 455568186 535275599 762703171 874257820 551605433 719520204 292086368 535160711 441283089 824290038 847470967 865278038 870202583 894170114 633160272 992854813 891254930 958544594 572093884 775164670 318374068 560363784 766893588 796230181 162232832 523536051 675426509 966808040 363036946 928266077 345431668 608760057 942208616 970475596 577340028 861822779 169183338 396373498 432694427 532342411 493604397 559802955 839473768 917130609 591029598 785294304 807252001 863115712 961794122 975523885 187133543 908906208 665624522 696282717 712013056 737843885 800691883 870902437 34824931 454892179 359027692 553792289 600773773 758860536 989237755 995378659 349689669 892542694 602552614 998109077 30692761 926597897 613939139 838873070 122221988 262961977 894853168 931540229 63234975 756180332 46365143 110728710 629312157 741252802 813887687 835668820 819007872 989400395 279721952 625766605 631562889 779934926 349637828 986832276 490341782 512812205 122941748 333884131 265507833 730858097 93157803 730414749 639871897 899056312 128358688 191701689 29859307 462773955 527766801 650446638 179880331 832444580 589470414 985968520 625233343 910311927 87894623 529362818 776134967 885800025 266592829 764751084 425218947 852942568 315109697 911061656 496476517 638843981 914706310 999883489 491876025 705408640 677481475 776983869 20273807 374951402 465423103 658753067 404484931 435362899 662360129 694710250 41397871 714145210 958434396 965176318 337695847 557168579 212617845 653628579 643488902 812742009 959709748 979752166 808698444 984420262 280298572 881094437 465719369 473930851 327859741 949155278 588282922 909787889 451628275 686727210 90490578 485632717 852220521 950196010 721451340 997622603 632615919 925024376 466456151 684189849 901803987 910872337 446941309 651991960 718043800 972358841 578658192 844379491 196451562 574519310 947199622 955719065 983790731 988117133 634695509 870023847 353595489 528949986 313912236 379452056 661745777 778633976 317312344 486450722 811339434 889247847 815013812 896718276 654427424 887085289 355239452 865483670 116049193 434082204 702613625 920544297 446986353 837641490 905326534 997100905 372410776 489539847 672987232 940967336 999948848 999964860 33436323 875158844 411577884 425036725 470862883 771797384 33310906 603996488 96292164 804424815 49762905 158289846 51754544 560916033 136255478 971712202 468947638 929180787 347976101 586551287 29695614 855379177 930599465 956091415 632116384 666241577 817915951 918460787 898499049 982561612 682721287 901399287 588783985 763459220 954502496 994490649 121059560 653336588 493303736 992750467 138432191 293898532 477917225 973406210 378307409 383997261 530699355 830082376 995588304 999096883 888799120 980180435 422113845 714021648 278033001 441636759 470785833 708502067 411457623 615003568 298251682 373280063 114970987 143142646 912326741 983178168 666328260 700857583 601695580 802682707 635668238 879056159 113060920 250596836 64620974 139593283 571106912 775717795 534456145 658613326 148054795 203116685 721794312 882882477 873908397 889335476 705197592 845549909 803766029 920152488 648314485 785969127 650655196 707043392 317638176 327892183 638533410 761342742 349665534 778458711 668698440 929790263 225656112 348577946 472511810 768131260 344377502 912772566 241813649 888969675 55298876 235802493 319379311 907888230 867533096 962089679 916586814 981612885 6905804 660521084 554296233 876383985 624789035 709320319 898548043 953629486 947547408 954329276 938546755 957335941 629828305 881631246 299038947 350919086 981307063 991438188 783863039 864487402 510181318 595391396 557074945 641379928 824653678 914189447 236134475 736700411 933892652 943409709 792881127 984043701 111062117 318147917 91929698 108153699 433106617 483422654 269698465 892296069 86803270 379644757 306697541 388859909 670150514 803378530 913685119 948928921 955916971 982487665 574345607 611266846 420799551 641906818 903990008 959408220 351441219 646585979 440720167 599743236 382315190 429701727 217523984 685759778 603242536 674169948 755962313 944607170 164182495 889631392 46663655 62351545 608267291 712096789 134414463 269958512 44262079 256621956 415547554 879688273 828422508 947125806 624392818 948887655 685416744 943015407 540508440 897138107 381263580 675764475 119791718 192441438 31132397 164944300 776363803 996151891 361074050 936092309 332485215 933162444 413306815 526664637 220876600 997604607 438932078 813263171 93603969 610712190 471513433 967376600 960621087 999591471 895291193 986308853 179809149 784871095 473165880 922044228 346685887 430742287 148382568 378549754 966879221 991233163 860916591 895841344 601934304 636853237 754522461 917641538 253446380 400953983 569861508 909279330 649471508 771503994 686360795 721732673 341022968 444220609 467416656 849373178 808569439 850242093 599900245 716339571 918412435 971779850 566687301 790387406 758215741 946593719 979365914 999836228 569522394 609752802 326358674 858978983 211731610 917124778 522392911 528825049 390654482 398606405 816789949 821170664 352891506 671870010 33570933 712561867 492268195 893392802 317488865 410756514 31976964 401497836 25764780 606834044 559249890 651448745 771327118 893576075 718514883 829928605 779152885 890816277 737095406 892046143 525099128 959679330 498764493 906084137 729285167 784801203 508572526 729694851 846845463 860384267 637717166 907168260 692881651 854608580 423948063 759547819 721134853 869997045 733724156 853082737 976072396 986555189 593500455 762428214 77783946 573149162 849266016 968408445 804719025 897580133 728059239 742742914 176408345 401494365 158370782 624411606 762221504 935101350 245562702 806749895 54246734 215278365 182869624 212752243 327984917 619078153 729562575 863930015 583377147 718072917 358904596 653586127 960799016 965810782 793566049 905515797 82278114 328333102 912718785 962221846 153332611 743209984 568875665 905834917 272797282 707422912 676437236 844053364 952710924 971246080 882297674 883765319 858619509 929993822 320723854 995488457 286454679 682576788 936628584 997983729 242321414 435405349 453915631 675056093 36319025 679152374 295340460 946260519 152712305 692157092 883749063 937117084 716664232 723748190 660509643 864057591 646580505 719530795 41131043 753768864 630895966 879788874 697121227 706086807 810558201 822444801 683117561 819208491 596734794 842702728 882097457 978688212 386048519 928361157 605590830 959568892 533059876 679636659 443478221 745119710 448201583 523257552 246980945 645535446 682079086 758086784 215262866 797660512 581261720 979807209 323450240 684772388 690672834 815334419 600528615 815195134 372617931 410285495 755776774 842776137 519514576 828586122 845911004 989073375 242119199 340279098 783980223 964032470 779084594 979220493 419831038 922677197 76951778 797844995 559206487 933696346 342715107 653735854 443645515 708581992 540131734 616904021 441438066 566775818 350087829 544628916 678308910 797700165 92489966 967759747 146623026 195686773 118024794 490227285 805533835 992377441 910602154 991312403 842920220 901848799 866712478 890262293 295764112 606250045 287160806 837936829 665531946 677334778 922774801 966147034 941825929 987720636 583924023 989559188 541445609 545377612 58726798 590842724 321402544 729481629 775738262 892663534 938570247 974571325 411948321 517286665 954769622 997461888 83130820 761677487 165446568 816351416 300344824 900722839 998827146 998919751 933845696 950374927 395362967 572419444 942570328 973332250 647272835 956792739 239309195 662758198 552567080 665887739 719011460 930584625 687518134 912812415 278890548 891242537 296863026 855760886 805018707 977687817 672505602 722029713 121773807 281331317 237877121 707836589 70009699 404780505 55622502 902126798 757937745 939691000 72129387 747478863 414884460 453002882 393287745 486655049 209475197 432903573 174093856 782618089 754115631 789401777 367732092 898106189 236708376 386070992 805344611 989924540 724768966 752820173 411449068 849231856 764520207 840636853 468280653 755688358 373305203 376526161 861224407 973089956 811790415 846453694 56136125 663861256 630381381 699336656 480524751 860016224 758075055 832030715 75655256 735792738 22415190 375658325 44560052 118309281 723911431 749689439 945152735 976584393 570511110 949965809 139783499 929180690 719114494 996987578 425375399 779161304 422166309 488038318 69141215 116913809 961340301 975874850 81262096 476950066 816709470 908308770 831214512 950716675 832468719 837542932 221824997 519787501 446976060 570140642 394930464 886877821 448099498 844252115 861488880 891061255 40605896 922886372 96757669 133796541 873826145 998387687 483242994 862865258 15444626 808414815 730592725 873478568 333673887 722302336 733018221 793214256 711547032 827291749 612573669 630660122 908584142 962398268 523577000 772918413 890052689 894405424 232498680 807024249 866191995 983620711 978046950 998062823 629565873 967593349 422512680 455940692 378511988 765179343 222222923 413163253 457338631 478391880 853219366 923481136 446603472 778804874 456720862 581983119 322766712 932651132 990060366 998878177 777052162 833068620 889024285 950930777 644160070 745477863 174639463 473624224 87443619 724957371 895468851 898037535 672967404 804432886 178267170 703187995 793142208 895803872 29822665 243997619 830333506 912892252 787877773 988494666 875522996 987866079 169364223 447186519 567943587 921670641 783959662 810665147 955418 623027241 986983515 998070357 899982096 945506628 409584495 725729986 700849120 894547481 342236651 819204168 382438424 893811528 980617276 989910336 814956374 933952179 636559464 772800954 568435933 964338430 728269160 937112717 643516369 805392621 351707012 471304801 80152272 156349811 493658098 987696708 656285263 743409072 908863348 925331444 764463253 982864691 848795257 858284711 582615161 603662436 459384391 820988116 852527440 922840793 620967192 910507967 592357212 628423630 367585077 808285800 974943431 986136599 954182613 966760224 515545305 917394231 793104624 984061939 572198078 610173458 372419280 564286544 807774009 880337021 747437115 823859629 711940671 896654394 204330790 609932237 10940782 235951654 800177834 930998154 293203634 871035546 477134551 711603105 732624780 826470897 562901132 647691412 223025389 702593155 63115867 965545153 346839467 525550452 183911120 531188673 857349193 943729390 478718704 950892863 815852838 840929506 163266515 821115580 758275583 777406099 876676019 946801764 342364804 525453826 792224709 812531363 904967005 933690172 978790756 984189492 41348902 340541190 738195966 858995402 707731583 967441338 261759967 929983860 787654948 957097589 762761422 798832820 121817016 361349578 369501980 537187503 916311812 922263485 27592239 871142647 23027028 239462964 593637689 925266257 86567477 382490195 973042427 990908097 573579364 944472754 832765395 847569153 226859360 524412255 435587810 911177997 348359529 701126162 26016364 185111635 27286002 124725203 735770224 759126463 365674498 879160094 134690613 969418575 372780962 845004203 734416766 835545787 495801667 676355588 309121405 784514199 179978580 435982542 131355581 932586598 308006539 335962508 202871310 843887572 312982488 566299980 321949673 343646558 148809809 764157942 121989663 274742725 448192817 646552853 376882757 927305629 726009124 914666155 430139810 587890965 48483477 554118675 48883466 884082701 177124918 491537441 289156774 819623070 191951402 943889582 680664543 720892856 82954467 724727898 999768698 999974102 596391934 970273000 250846936 819090676 482978046 849763829 871377725 879215646 850291929 898875696 697291858 841621523 236313396 506655918 657252534 682034025 284303129 579120976 610103071 967385830 446398300 959875019 874905169 921486895 73952306 317845994 59734970 435216692 487441789 765229445 848586663 956688647 113542596 885647328 123726282 711255625 858856218 861019282 272993819 707970786 711254222 742665923 491756946 811951300 827636100 847041009 626010057 853050961 206134868 237108288 117421825 452623196 513191081 570738206 782295446 915554211 438984651 980395957 974732899 996270714 734376333 908548607 649768994 998039523 497731146 710288638 865403505 983427892 977118430 979766647 299282582 475111540 155228188 481574218 963861028 980391207 432142282 450925613 221369779 695778346 641831854 679253732 935051599 974176871 17027263 501608794 829716372 942476078 527328301 567998306 831102800 868627896 761355227 771990249 165114408 391152633 778729853 884644355 217127216 370588717 939521668 984505808 984322507 998425011 73747057 235687388 699819717 775958120 319279593 482245854 276757151 623321544 917239042 964005744 252664897 388871567 921413391 971455868 367051879 869202754 504961058 577775442 743168964 891834051 517425947 584273840 33763083 887493127 774340690 877521128 148362731 394484156 348748488 609592124 832874551 941244578 191795121 549952527 342917906 600988967 816272309 942532390 952737385 967157348 381153211 748743329 297722224 487103892 666037520 917985669 82930318 305864229 906428258 919173935 378623800 988893610 164302034 206375206 99105918 969222414 158715305 997022164 601087837 645102661 698690865 971914925 332085779 917193491 876552049 943418741 640185463 695631923 850626722 943417689 389884058 516301621 169382136 178873542 973496112 984242615 292736833 492478811 661566537 946839527 506178784 700549102 889401566 918203960 431406654 478541732 400024568 686843657 675015081 768030528 979393975 990642823 448729936 865854289 644972771 858402281 529233309 712389870 296390408 312843954 804165110 813762103 408886129 712266449 395957449 418144075 745364218 975625260 363066738 828407852 231356728 762959540 328352508 453576123 834970405 934165735 682794773 834820263 786627647 945699665 358353588 824069756 761442626 933944832 256191048 521646406 690995999 838312508 705869860 887581224 866196895 946207973 879507415 970013202 460398254 872952175 723074730 833770517 138004539 844564050 838330000 917706703 79187312 610783293 329054799 768671026 73790927 523282670 261974226 970204861 528557287 906640313 496611236 971710212 265593989 652548774 823523844 960484963 73940460 186204765 170715547 875882168 201946928 748227483 395755714 626748399 859758027 947235025 330232518 590328095 543972887 547142302 824530378 986075298 270203850 888573506 858881403 974467662 700867187 745354142 964366325 983090282 721081131 924968929 423513580 603072977 289158558 520613874 209166739 384654993 793429444 800088935 956588121 968747642 270412086 802902138 887742973 912139512 706309863 760727816 601369443 894046374 775449777 917546983 545116608 829395428 884543417 966148825 833317491 856374830 219938731 561334136 400615712 980014378 158291614 706598233 19487573 192967546 780687071 856675114 731154406 758445081 263484095 478095750 207895184 528289429 621761733 857729331 416569419 761808194 308704854 993153515 915005155 945573871 316312378 472224879 184432417 782531902 547085633 787405607 393581363 610999613 665782838 713374711 205310691 816255743 931217535 992196988 442247434 527761013 617879766 896002059 363394698 477474775 426270565 499198415 187878421 625842770 116105720 390439102 513017559 696005542 671725254 862722951 207300037 989062814 975232784 997720482 15592811 831969521 18519205 858254084 73617239 572774394 173235161 328081842 876958781 908638713 172468453 738073015 150952226 879504364 928154543 964084440 207367019 302690365 575367996 585191183 646740759 955892288 626459965 762442796 335264855 749954273 491530030 748741237 10423462 889046850 474845377 653731174 140585828 506971314 11423726 40017544 795845559 818341193 584255233 682947676 157182702 193214821 4901407 499883444 671561426 718819205 434148870 805134627 303825699 873339232 173922164 490135095 81416274 338131657 975218175 980800545 603764973 843291715 136114829 327613081 697319790 902299827 970594191 987747186 715475617 742059221 792993934 906058996 875173054 940695045 536250794 841439435 291293144 883309552 351258400 588270116 685545037 726466428 116183964 179775850 75922635 963198725 207377690 925980628 245828932 745285680 630743279 721514236 703585620 736193865 346486817 545550703 212438414 585025917 344208789 439890661 533704738 907684031 941499018 996913589 687009773 887402618 595549143 787028548 67424327 309323774 710311774 824983584 329619878 456404594 175056930 466254729 703807627 997213904 245627651 709879627 571817160 841053012 744569161 919691416 849726611 902482618 658078348 803950225 275481847 582896801 311851350 642929541 980365893 997085357 654672935 974171248 511477452 924172173 717866206 934365593 374020233 845834823 820949233 911843495 345007029 991533697 921986494 952916817 738976078 842611745 405402009 477979762 153625322 709228259 33454467 738417929 177210703 558684096 160348041 879189496 945204885 960483651 974134713 975411832 31166157 818748129 372278644 782969737 225624446 697592308 938617201 976063280 398471184 905000029 392717744 611977988 420498798 606814431 769421633 863451196 714914401 884776674 377517383 730386279 464734841 754682225 993781710 994570157 968798416 977981912 253509928 819889067 95025830 271848389 474819290 562672746 463322793 767145556 4899976 822395868 908927436 995059328 782074829 853378125 283448640 752272636 125399952 817234611 544157591 883659757 198207610 310527747 797667355 961748709 981109643 999207248 76100825 987763736 961913202 970773234 663788128 986385694 616891520 834586461 700130239 835387483 372141325 445850760 172887912 380595430 777747798 911503018 930637837 942606719 336820261 785971523 739122468 818596976 997070237 998620943 908975719 989256584 400772620 902797785 870953046 957291539 627925137 932839448 644586072 692278287 612491752 922090533 781210682 874437977 113727625 152565728 714262683 918786135 729320227 826539492 745470657 786243193 909089781 971689891 768802154 777155427 15551169 872171971 520757292 939515277 481270993 713586907 299118192 525596793 338214699 370736680 355405866 848931616 577932656 692699702 487646424 534355570 873295034 880331935 464967820 631986074 85128930 600984182 924220260 963180086 672833580 958589862 141816334 753992632 419960308 837675155 699699412 822284822 710508691 861388474 53723178 471321965 248461641 371353458 585978150 781644173 864202689 915254716 402749718 770947696 840482039 915510281 883275944 971295740 516795672 532369515 577839877 724836566 415211543 922083471 20404654 268883033 679281804 729781600 823333115 894744052 244060220 951685373 672958967 820992311 932220857 942215230 861844976 885479553 157976013 604852235 217705634 849184574 445614037 921317551 743946652 758901387 581761725 861894267 252164950 423466689 878037072 900348369 345885187 927114067 922966714 965988265 792612980 955376258 490120372 840367379 389515140 441289703 565560923 570891776 978768561 992732112 728549926 914454561 429745756 459638527 734087288 825810416 778340595 957556711 971138825 990132263 661799090 970493293 445488442 987664980 962912226 964821714 256690774 378210973 318686568 633745410 926656504 931282282 902600434 978907879 292721901 828670522 724170620 809849248 311327365 972125117 882054020 943116578 207863935 224400313 23326603 438130007 780397596 929671872 340707865 860459363 147697082 834582339 177712343 331852101 951569855 999037738 572248857 911341222 570635544 787191736 966916710 973538738 899782584 957070380 944976263 979212496 27319297 612526452 124475283 245563768 342010414 823345890 526080582 666551536 366552224 376752709 80824836 232408883 652324692 790710743 593493545 834061935 243484099 367275386 936176012 971106110 128690624 270546124 774560994 803015037 201877590 563361350 852864115 855114992 415690084 598947006 766157890 777982629 763956585 832334064 697945498 888201530 153100338 400198040 802510722 935764779 574334899 681290634 799247808 809037051 703967779 794785668 46413634 366835868 31665567 388639644 457693118 573178180 10229462 117888635 200647661 914267425 85956453 537667586 657359313 679599922 473925989 574399295 8689168 47844117 559032392 971765120 866729924 889234265 685379236 728565354 353153587 720421412 26181352 670821864 532801162 763668559 353817924 380686783 926236760 963574542 463910941 488672415 995504430 996614347 194299603 340701969 339773770 855829705 115018489 161590548 414943629 500406519 399534082 525149166 924238823 987312100 941590042 968580382 553761783 703725194 600267869 985086960 43822467 446067333 846690564 966256497 386241621 644298143 316921107 376682007 946001329 960008989 129982658 250942653 205423848 628030539 345332541 507994774 554454549 628722902 234012164 560560126 586612772 795680674 66293710 211194479 290242931 607715377 681169740 759335292 501970911 889375136 136966201 578191798 777161611 993073347 746265195 973595156 497692143 626856953 701788604 719992143 971808043 977851700 465222197 847040933 710835548 937323047 752775580 933883608 557413695 791409098 834559813 923984873 835313621 953147474 853491465 914663242 346917056 551024514 837938578 843229050 394481927 519394755 6598103 100794170 387894818 996377899 864582523 892158814 630674205 678463807 826151755 969621668 287820518 826850482 130954912 394193374 222870149 617472101 991950995 994255223 498356153 514128575 163559864 970924039 684466109 764655363 124375369 883481264 71325755 97712849 343688092 554873316 638733112 726557255 151735658 450008025 248957446 784840695 718388203 917001326 247837550 728785459 455306650 528940919 591281692 773165677 123748874 875695302 74834542 489679024 24034035 668707565 245381671 595086206 599068626 930717753 455929829 581314878 730562865 957848736 613625177 644498369 146204194 687413335 958969183 979674146 215476895 617299682 583556052 941189633 625034526 906790046 468256427 606871608 57298806 923920866 324390143 604884411 753497769 880658903 786288980 911950559 24108167 262278281 778033853 841694895 815617041 999247540 739866531 890790354 186102755 895385956 270336140 674856320 603416802 925956862 201306757 337913820 872524352 885655955 602085259 986434551 575409489 946672198 961126428 993578091 471629234 611257695 697804941 782971002 906529510 951759520 819018652 899364287 634693380 995718196 950051639 978926873 431470285 779388076 186956551 884249861 291652507 823171224 61844193 342971561 914700842 987478150 376184578 408087973 550337042 637248712 662770233 696417819 835180771 889040492 143253010 571783464 346739153 384905920 598746655 767227859 974974349 994841086 272762849 635154627 713053953 727539037 531792666 588753059 503645113 986810676 629369504 821109177 669843189 671477460 227077915 584544912 497172147 877536526 42076589 480280919 898441258 972901330 811788773 834423020 557915271 947313411 426721843 497389142 459213271 699495432 12702080 499234869 969656733 983551105 502944940 913080626 697968073 953225583 561048532 777258994 394875818 747517996 961706338 990329054 549927124 855616793 169006348 614593555 127039709 504706832 131956407 816498069 578120815 583324613 758985 65908125 504357784 687630598 47112395 791783807 984963720 989432338 297677612 468459852 684420099 911115363 747380224 872691556 934225296 959559030 255340347 435273759 690456487 907232629 909094614 977493269 95741991 373634753 341468018 915647701 616852990 730726619 550318811 826074415 174543254 795096469 718544217 890635330 996299551 996687829 457583998 614269190 122090110 299194177 575922073 897386893 806165138 895672416 167577891 404033384 325202090 436098019 573591018 839212980 269893787 776102548 213640990 744584323 14818407 425703866 803697587 921224561 544326165 842927408 444473062 655113739 204226339 807287887 974991012 997880165 501311556 979730775 970842254 988531920 363741051 684761424 194328532 384411587 993417992 999183625 928660418 995587965 215423824 621681932 870841385 987624188 518863518 648004898 164810354 701293222 426312136 859705050 40120205 836582503 557287861 886269126 521349660 542753466 743837053 885898665 222909770 385797886 895259241 983461432 1812307 722497782 211576553 947843671 833125371 886132931 758442982 987374896 63899323 545813421 936393443 941120796 429788520 705936154 640698660 919134679 16784930 943814515 6079324 185390845 858763254 943347470 381606465 491940908 443128578 852249398 137694993 843869320 849175332 934989372 939781635 961992591 11150939 267953771 963041373 995669967 970037820 981076235 414053851 435963393 230070615 578486361 181612004 376517322 420038916 711077061 173254420 532495269 592452839 963325325 382492933 483091746 80173236 596525538 472814998 723394086 816045620 963524487 496553184 785593272 565265672 822620185 122548520 897463809 867797498 984429096 109848607 947410901 444728450 464588707 162499768 810173742 918316414 998016066 287660505 705102191 515568727 551214235 184676534 980259485 944483573 993382374 255983082 680699677 920012903 925956044 39480181 754859486 869489500 870303221 454179753 572069592 914865491 946822281 186161014 488169485 696815343 991911750 493111963 691504482 938169592 947694288 700582311 945239132 461862387 579542166 739728567 741089319 196138769 309465611 107961717 771721498 631720923 697587459 701975342 751214810 712648701 808547152 265435922 401993984 26636044 645272180 72259900 668636722 462017885 803933072 486794722 846370473 999083585 999680868 172961719 511230686 977447164 992201195 682730353 853221851 241541756 447264095 442576934 454435937 627803687 776388913 966690431 977251048 613071530 717291017 942845427 949940790 656606620 753587910 893080987 915393221 818477092 849407542 889874105 982908449 469943331 700553785 683389602 946672267 631307524 756635225 205002812 349128796 26531488 86828580 490000659 970610657 588738920 940017242 302707078 397367804 622128750 932369254 497665771 660907205 87844353 324137696 490812867 681352218 606182432 759841141 431021879 779834146 824056311 849129496 540774636 951497163 64018126 800498867 548053283 583437423 970037453 983036263 681735752 870804154 218080581 677119709 949622136 991141423 70779463 917628076 772742913 847818958 940795099 955787962 86455477 428915609 981175028 994438149 918513456 995477049 443759629 930729054 362351544 997951653 678160191 853303529 760358913 803478302 420851772 584209438 827867000 845091612 347901263 535957558 728452558 974231555 272670571 470905106 571168907 806522939 848454807 959170419 293678131 703321772 469714338 855696108 417744524 635232619 171951901 215613559 316838366 372954886 524216912 537476653 203007757 880290724 576153074 821237264 891991017 997290993 728388337 789259063 665328971 890783506 815649952 861752058 265789083 910649946 110817851 177872456 364551977 886952276 838010244 902162821 592125646 667641145 760609478 816110206 512596689 589276291 224193450 347790824 667529076 886254371 657177465 861273831 870467873 981445845 897826514 965639602 298742226 528171838 962007061 963450086 424826378 696280763 729885262 931625145 862778452 891919064 826703414 949258735 409246444 996835337 775850206 957301857 137446137 640056369 732753013 869800985 340831701 362157613 427791696 892732034 886707613 905171269 498865545 527843222 343617946 474887862 15125017 51305043 808799497 983421666 317017769 466848568 238579915 916386416 610452626 814908420 870095714 964280683 825375113 940673517 203516337 573989185 322489545 386051014 913721980 947425594 810414730 853864012 884080036 927281375 575695463 914495426 560980759 832540872 93204733 757898489 333029492 822668192 564817827 591213691 157617936 806070291 858909123 941044009 777765742 946785524 517776163 535317251 136439661 454363232 110406985 132760819 597215928 632638034 847521732 946450367 899826273 954949366 481751347 818350340 468473787 477517657 275622015 889074532 728006101 890078843 275672463 519926467 737193910 742222162 428724009 927876609 193533935 521534986 14752224 660765470 958641600 975248948 990528547 995816596 62407353 696173673 722075055 765305139 614799764 655226308 710769229 874454843 206376315 979602995 533456272 768010622 990463635 998022150 196178074 423690603 744629395 937378805 124919250 125335306 505537811 851399608 415450572 468160524 377680742 573910142 169819928 191526735 835208794 955427315 347150909 782735823 621176342 989277490 142664893 698762961 799503439 835622587 594816396 723413448 737467523 773814087 884195830 919700005 246536069 436792392 83448044 537864480 637392150 715321471 974423797 982473742 103198050 186232189 62951040 956143436 722945472 948042893 644794512 737216420 212381014 356426216 32865765 383217370 471697133 643941790 862261811 972904259 218926656 653413194 772355126 973169486 152716260 897007848 659407101 929908105 604864441 877680255 550088922 815334199 387803548 850484252 234646800 694751247 607886564 646637369 553279230 784356009 178785945 867887253 335261997 484114473 841091369 985037021 774780389 843738126 84946566 269827747 889279862 920920334 710599534 834939598 188747205 695673059 88402234 726501005 778630511 895328631 19515981 609410293 319633145 879952526 833339121 896430129 853949910 899263209 790125768 852279776 43569093 108923741 973891810 998893443 261853082 284455522 52094747 210321830 872539477 906700596 998616387 999031626 246267326 640814575 514361564 673280193 656789938 903038585 71487771 508891606 207211701 872737166 815222093 916253592 22545979 883141862 203705895 731359955 912388240 963658493 535136011 977290712 570477964 711199978 398030752 424978567 870827739 950676079 815763467 931075051 200094837 281221521 916209119 966128472 497747297 699023637 139430171 517166570 296118354 583496753 408350835 476553732 697823307 779081958 233743244 942127639 18607043 947246991 804809228 970894225 641647261 828454267 122332282 231745250 120680878 522819253 977993055 986073957 911710997 945122098 831312514 850792014 589357609 910666817 800276569 811269708 209334709 881701614 891070788 991664078 815525258 841283615 846611509 960425007 33118161 314240489 691355244 752467229 220968482 345120410 225518656 414210384 245199378 433499843 661340058 912584837 169113532 497168448 52298994 294859062 691596203 797566715 373240670 988229277 20894687 408952913 839482979 896348616 411786924 595532118 143322005 375026433 172228229 731705400 783354850 961228119 622464602 993009363 814908278 819733120 711118017 755743491 102413598 405995218 762881992 798387707 876176327 905656883 403976271 837766529 327965005 833106443 992039164 993684013 728155190 810486293 681222019 696910200 916393180 991906073 945698626 988928706 894546077 978251619 225122446 345825848 632545325 677320075 709240676 994774526 420779755 843152216 360487793 749945617 563208312 877173919 144807054 390139791 129973805 844854655 139399552 244120761 163542540 210460835 767733126 926789074 799621721 962776446 556318839 742252632 813085714 852302752 17682290 457428786 550938336 781842963 832574307 967531176 796117324 915587467 904257635 943580814 396223541 606153491 498309531 526550114 569394364 795679587 648359010 864404156 334350085 368840103 834014521 889572710 281706888 489455962 200340775 706408838 905550828 986031089 570534524 878223657 146904658 357965491 69272869 674207446 389505256 721557724 121354274 878445067 416349687 808611917 442267479 907214274 408650912 729292464 492009710 717939091 409783544 951171340 140665828 616358182 931941569 966485865 91079772 823975250 614824602 856744759 336715268 720709655 725421115 750166170 824152102 996272619 944379620 993649703 814592251 896582511 281243472 335891626 318688903 505062440 718102527 747781383 715595043 880433788 358454752 698263209 882155806 987418665 214803306 969499662 336556312 607146786 893195398 921007660 474200422 494794022 606682418 786435157 228377647 787143571 540639810 912464525 196216966 593634974 117043206 928080298 946583249 977705665 241191795 367773021 258283143 962190468 902854182 967244271 615736746 777000239 181272936 263918698 37064695 677719523 578067259 696832662 40767040 605995132 996469003 999174019 567400467 692912507 805831259 850627052 426118087 494621161 970355533 991271933 872749791 981585124 550904700 844822880 571413359 658769309 421600933 597299875 971843369 981851444 92143816 317041954 597525916 826815755 862638795 943117712 665336259 840987663 918736663 971839689 344667303 818275887 52777737 678396331 901188285 920917516 714609489 734291011 945868122 956420684 458842178 824098851 511194686 689460194 979848819 982691734 825230054 962674161 927370839 935010243 165316481 641717907 261196749 493612289 906833206 925930505 278444820 484543678 959654932 992695502 958076677 977050830 152295629 273535046 563386383 980307184 372062446 458299647 416455188 659591137 526025689 668322469 680052094 829771733 103296589 836203700 600723976 627962651 491472349 928012364 763488989 766062231 380382857 459963634 356302146 721642962 978544149 996406556 777062009 916253677 13219102 980495854 229792561 609930565 30702168 398743488 3900236 209605486 483311277 583879624 193375607 388148352 476108559 498202641 243497496 450954665 981822488 992991265 409030802 813084853 363124984 637836201 333175105 684189522 807818890 896789142 926232707 987503704 125119837 129118831 219765090 920752842 685787576 958467082 573100817 885163337 745313147 923232806 954246780 962593207 183339781 951553935 925652146 989308007 784768830 807422802 462028523 490081275 536423515 829214147 853925005 912406113 790887566 792314342 941501670 985560656 227065910 727184199 290976696 894064055 505875058 675113792 322128886 370630693 571852115 741274161 879877699 950121595 965163350 983122784 369417805 566356105 11155133 187190371 812888705 832256449 359606194 777950420 620374240 644522830 284025569 695165282 892128828 916956367 84808091 116900815 874230056 983556717 265362571 381008377 275632676 418208472 51471396 621146621 525007751 605485490 99506264 614532367 536972802 961309544 681792121 827561053 872310891 887981247 894893283 925963855 41556784 220257879 891951282 952027716 822151041 881143408 494737822 876812258 316183904 397935541 950539664 959016314 557677198 916636962 667011736 714049894 25629285 908192819 457998960 855508412 338455315 827818609 673818190 673941424 478513637 487049494 764458089 875419393 191755940 619379043 432111053 787061005 55504892 322140209 553889549 710169270 502008531 714296811 573776930 924539881 660765349 985522538 781275922 953633450 947806003 998185995 180962169 512758439 492247554 585133177 770824400 817741987 360980560 772841439 412624069 753393534 909591076 987195852 363280884 477719817 638593170 647846952 460944355 689593619 918501340 995919725 458408167 598988337 987721286 987894658 551129823 585557786 818792268 948815405 322446143 333687027 714112155 769733018 323041659 947822149 29934965 631380794 849103614 879875401 341672019 438991663 989852561 995100749 342975595 710637131 794320895 866781238 496118704 829635204 414443477 911645152 513600337 686085116 772514152 887744339 968795133 972808275 259694617 513960712 142279371 278021588 920664167 924246505 73527871 736703405 355599261 505727125 999625922 999694874 860246207 949880223 649122241 678618019 87229360 698109791 479955288 929092621 190710523 874378823 877911579 970566009 125410607 827362690 914289603 990206064 314484174 934476401 606099777 827100186 32766477 173945158 873427256 967094888 445661185 837936070 468033411 986324099 622187653 795348859 238131376 680233019 905850647 984005109 919009026 964537543 533324712 920241768 779297897 961487334 790562169 809116088 587359538 713308976 321493584 842063765 831835478 929095383 254366918 940788956 9904881 696294282 299810507 532544074 898972878 967492017 717316069 821502214 107438395 548594884 436913942 792669834 456502439 496833771 384505056 965078993 602186719 863388464 387736642 902716850 262048797 706982885 884942640 896992083 636926250 900026727 795182076 968783809 720294760 816518208 820135764 988801281 296271377 566250210 988285841 995912619 571551984 902488558 492039515 508577727 683970584 961913638 201183137 210022238 873932605 961148539 768505102 868376405 720087112 759519640 724735138 908213160 301993918 482426995 249026933 674099450 440563290 499348391 819570037 998657334 668577198 798881370 671283507 673637052 255108238 691185172 928359350 961154740 113497556 378676027 183973982 264256203 497548114 802026872 587869211 629984797 264071129 987875240 301716387 436877763 364587416 622423528 43044246 170402265 264577697 827529010 681866544 790096565 138421499 762974977 517817300 904455055 686829423 733315661 868175095 890993207 196506178 777526704 273095946 761444519 223476629 405521782 729159822 926900426 252717755 387671779 204104474 664332799 961231449 965705148 629506146 858581154 190358031 851854588 471385738 549340340 415449046 891506217 723292755 774325374 492357937 699316175 651815910 892628513 418938014 658502389 799603993 970116550 876363339 990104315 446469980 662061216 701003841 812377078 608320225 713870111 654796595 682567209 615347421 840995334 671602453 757269504 439161776 664064752 847521072 926900102 494941560 512746333 673366754 805062203 40544052 141764951 888185930 899910076 342193287 681563840 587848572 679041073 639043149 671655869 634456682 724094411 611170468 621424127 314850936 369530287 204906071 949504419 893405822 909199446 283287619 519429729 347596931 986011187 613662690 670761358 660392461 693292741 899529848 980614957 794820724 905118997 321956112 884043610 528043463 747894834 813410462 924236748 423627179 903784036 627137266 704978339 562116344 953049971 984421537 992729049 870025587 991217949 106987814 711528234 492791443 584006339 836230757 902789751 793080431 832320424 17212929 142868122 739195215 956312869 772892078 995574004 941212497 956524648 149301238 593438603 616701645 774770117 271769726 772795433 755123734 831034967 675967482 923065446 145551326 286947637 863025452 989378013 84659280 570894461 867223734 927915771 727243334 813374128 989848285 991008339 191848674 951494002 628338978 824470303 936683375 995635757 839789432 978724949 605089095 958928209 94485984 258847371 791462909 819942967 17209067 427057379 329326447 490392778 588715827 799241500 200842718 590626511 373881142 911682740 170646239 978239860 208952303 989618069 986575800 994031559 983799973 994099153 469456216 470612145 439192619 744037066 803667908 840201686 581538885 647058681 554833362 559669840 61584476 106358078 900022391 933789395 149456128 854502977 834271151 900734165 567327134 870681582 751635224 848295214 216387034 631668128 772165182 869127636 13907770 586637497 879715624 892026769 857990764 946768485 999906060 999943592 840248946 909055917 70920783 214692369 852569175 973073097 356853993 773288121 656616178 830256536 880774718 939882533 215394619 445910418 568871747 876238049 339316160 752517876 872946153 899579049 329933822 783065428 641548850 660521361 809352828 831167756 596476018 876783636 748272439 876942580 769720078 994196693 722871529 794703061 198009174 804924846 148880306 733949295 96898008 644044990 138196252 187889170 698511561 824938144 112467985 326981297 292393803 872547476 892216449 919463706 391301731 931469931 113320889 803203075 93641209 376581838 90567770 575946350 157673037 779186372 15942493 571052626 599445110 712596857 211253044 412103459 36938129 955434974 190207941 488037077 563332334 829943128 970334031 989887292 924709973 995404626 235713317 924834331 865868934 988657764 624993071 696918561 769785863 781180805 696160605 976197799 467283841 480715547 827770900 845518051 374536448 560778736 131654194 470351899 100292612 647865096 235046619 413683536 782604810 870451746 901462366 911444429 69146245 205905335 173621220 289402808 591117234 717664836 57094459 273562500 560289818 801572991 538033646 766323948 953098596 968538782 109416618 212497258 513251057 632892569 14280435 94280068 849693849 955434903 47420734 562522657 362353240 867697963 366208721 771609380 249100004 997142011 928633739 972186717 542894602 626411725 985854843 990777901 270411151 748122374 870339848 950577600 639579496 700082817 265487464 934494963 833012739 851186566 536050665 723328453 830033268 904889206 634973582 677822660 534666226 725062512 950455508 969097545 243182518 737251312 153553526 303260049 453362413 854126507 910453525 943485137 61949246 236584803 561357320 978893420 807279701 945211861 568518295 635202419 722983901 988102645 522890425 846378840 7104335 504667533 778654051 837752517 488648029 594869260 327188450 940578828 715917961 851090550 552005382 615695925 542248278 734881981 946099148 948982383 968058117 990654287 621669902 674483721 561258496 888303990 354452329 543193084 459486869 612130849 846646495 877079308 762242282 820487275 495082015 733128081 613080189 723798333 17923134 283525306 307309867 340432004 983729807 993840776 990733753 997036096 250237058 330429748 241763815 722900636 140028988 215971103 440812893 700786059 734267481 846110954 659810166 892316954 362627046 436052837 685673639 750335974 971948720 980957028 764819985 939833186 410313456 571186758 776116224 802372736 988883160 999230444 902667606 960409998 159368957 255403273 837899947 993806871 688319770 738634602 300777653 558329432 442198980 947836211 651593025 945709997 842448720 882590785 846341285 992712239 636041760 732604183 806178047 918995589 279651919 894243555 319752455 594768270 229020803 685203178 43131980 361312698 943499570 959607716 452923720 585879289 259999780 991186795 918586484 971996375 439359752 819669303 242662960 807506254 273150947 614936751 652789955 658447218 619653415 997285760 818883914 884915968 202854048 244452154 867092878 971248828 371384216 943370084 365243870 673783265 635840527 826375801 133235040 642321317 901980340 973213827 591999207 621972495 905872483 986593678 161652816 536560951 199655712 693756440 716410940 969026548 642377951 955548207 930199551 983778122 692748074 998008640 951163402 969878966 370738660 778775839 653973265 733541078 745225974 984097552 450425192 720741089 63522633 914131616 164847383 399180132 511635096 646639990 427333585 744688150 810961147 986176176 390966269 536275580 953489201 994343164 296228951 706759674 705773634 926251141 835712564 910502597 816655216 868667437 277664068 584308486 934404624 962155654 932705779 994473889 234131379 275551672 628531339 656402931 241830296 903652675 93075980 481327987 995394505 996271721 591819030 903258924 983530297 984815663 647801629 754190485 491092727 492410417 968125311 976971020 166385964 711939800 746482941 852788817 730372356 877327144 511410060 837755305 366208248 855369860 727510989 817337300 993207101 999091341 615855542 730939438 894167430 993203370 154354432 915123321 568003259 626953426 983202185 993468333 337744879 492843580 501840094 952425828 383193968 413461510 423930680 654046063 345463223 960103170 244342213 414962112 52270208 230521852 837635073 865214522 182260885 764480497 641150281 751931379 258264203 519591209 299800748 946691111 978610282 999611996 26705846 70926112 470689652 730553816 764796279 915654737 868790680 992335459 416174530 912295956 75458973 124124545 768535912 888977018 871479236 946652187 73116181 250271025 5425865 145359075 613743230 947081531 642030254 913779404 755095190 920023606 241727957 661811648 351997137 852673520 367286988 735704579 858656428 929527319 59962441 367354440 833854196 903349795 463398550 679652885 261655547 979994307 21876981 808143155 313298852 657676140 948715693 962200363 349926149 482575587 74718647 990560385 752583541 824377180 144370890 330253151 298072228 874229608 489748924 713572934 597284429 636923886 873339014 901820015 299922821 759726042 643329655 824079600 606351930 862205325 317775065 507103862 361060457 751927924 358276574 838839498 130661113 173138489 111054717 911691413 596481756 897984980 825530382 870912974 32151084 432607410 724203764 885187502 508287029 701259043 428894150 447565765 209462740 668766419 522278116 999744347 794259614 895793450 478925204 725328603 476047654 686105009 776142794 814527196 269479375 759486080 763116407 890234765 89245866 197848493 872092844 996472138 124001073 169289428 164378770 373310821 928719770 976491599 380151935 557316469 499740032 595153296 977746987 980629687 843893836 946942567 2275853 172079516 351093619 453378877 204441909 435658764 480997719 740918631 457742852 918185620 878805051 933494916 951144880 988266129 47171095 514485455 349114799 579585781 357120835 683029862 531868507 809337603 47124338 167953850 198438747 920809647 389327417 951079437 713595765 741783804 744927365 765884448 516162255 597378200 606580099 766375262 958749733 972973414 674909219 721122820 511111961 753831748 163218260 661355320 72202898 592212520 888232245 983413687 800462127 990290708 379485290 953443935 591422781 699780361 24933897 698197069 114051981 830238902 457007628 565276474 177365293 716684974 740774371 791987944 864207627 959888370 713569176 761179788 6622083 269890782 369286901 826893282 815959208 991999679 961160491 981349030 347079654 522516484 971822652 993297732 175562662 571447858 91768798 383336089 59093177 302831794 264887935 881795902 765383690 834680205 691195767 869596895 345558812 837974218 991962285 993840356 824673733 923493703 881439906 994744950 252635283 608649144 143428666 527423328 791801074 960655315 838476536 932205601 513073911 822633280 842551516 964587933 192229116 198762176 359302001 400304832 564627933 819362125 411290590 513223102 915622792 948645136 176821239 290524786 104877818 317400354 176009024 911514695 646596845 931142744 223289192 851712491 145791041 293716729 589237594 929840989 104431922 274944216 124546040 803281288 981778845 996117808 422325276 717999991 176494515 684690803 439615194 733844067 648546915 776499000 169766012 437915097 179735103 227525570 172070636 196786169 244473016 485724498 273719744 921715774 782638950 787361646 756137454 953170541 884059563 924121212 220336288 542484976 328135277 596963847 6695529 356967516 612489164 992578429 471951150 580537773 873657520 880260210 296545216 773491708 549034428 685359047 491928105 719619583 584267312 977159032 855483487 874905755 751061412 792256381 528066334 712775943 472650590 648741233 80255400 985866654 322344883 756586329 121401262 700715884 433636024 905397730 948934206 981203295 727435044 893676568 304561307 817318396 521366625 831731964 846754282 912008281 445386138 583345869 394147762 932411645 961788472 986490005 959633246 965332723 599267602 893507535 428546635 986851800 362726207 773475959 510450774 778643377 836000868 919659276 201464747 592107989 449807640 858178275 281619230 824897210 226769856 797379397 369677618 706345005 914160427 976373743 445019602 989031616 50496829 174121519 893197235 929697225 216409858 819125078 725024384 905178249 351261897 457410470 426749124 945296367 327083011 506045655 803557994 807914830 811709554 941926299 677944769 854783416 718421012 790554712 938249768 941054282 747568756 807938435 787818368 997786072 754672440 961177587 109595442 546398673 145148340 391272552 592892228 741006402 304883740 867525926 614827459 757156501 887069095 962612682 50451850 144115201 949165510 956496998 656839034 798531059 384058933 572711952 555512019 898711240 562100741 999411391 302524809 891504161 92865620 464912794 930279333 996133405 573111115 596959721 527542387 753017989 682714067 829782479 728784531 826634443 91394861 844029344 581082726 869542842 117047234 241224655 721341354 863148979 915129447 996769650 395272256 830107113 242186817 616262102 727872445 864954790 457790408 621599824 171841681 540763029 714305887 802177614 285250076 684987042 251503045 734925538 275220037 773776542 590832179 789839737 821654881 979063373 75904743 234090597 741396606 900479404 755202663 968056273 925384098 936175763 779406550 831127078 408719414 767680347 579320452 651271915 193522516 266480859 99162520 375743298 556885229 871965332 109744675 838900071 31104046 552422063 720137793 876975765 792681539 970073745 618205057 662380790 695755102 712461872 12742920 446931676 712051867 889801803 19619228 167052816 603604701 857612384 531133051 645887019 139035707 870741559 431954611 820586319 587661526 653657741 402300578 981478192 410410289 599554982 81904775 335749849 45800763 201597048 802402228 943433576 848642827 849102015 466103646 558473878 899617776 970025256 603250428 959198143 505344624 648679627 20412896 61691102 65278579 560732447 806151254 974310784 74252016 680392951 613378669 807541794 153880564 216816579 774254781 792543512 999720164 999934796 560044112 590066744 56159595 549325859 250549496 708708230 166433093 178315812 572166430 987257337 850363835 995251771 457936201 663974428 29456909 42672040 32530981 237858140 264379527 554495410 836347882 899787726 559404617 709748844 376806010 442450562 350970914 443305442 791927808 975209434 437822358 615406536 379763788 722749241 51577109 617453529 111844418 834284273 488465536 992060578 399434596 924682696 154156845 183593846 53003411 329660004 772932764 832868041 271739789 481368552 365603270 851935574 411365047 746465653 927074359 955231172 366383290 848993299 982170887 994343265 421477853 860520059 105246076 859747188 341533502 963031114 841978709 939493126 37946912 728354823 618606576 745391758 717570128 771865958 886409965 887777320 658230965 690407030 493179259 665795971 163226026 822868695 453192579 527282757 35425653 249935845 106256295 147117119 447420530 582078219 512715379 646303476 790731553 828980625 274880354 819748215 45374732 64185740 88142297 116590222 970514736 986481316 321154278 636814290 569054269 879934508 347124419 485110960 509859799 660059069 300470378 619130683 498789446 935594671 280869723 971674227 534611317 973760738 747468909 760084803 350421068 965840011 235647354 486439740 661209985 849377591 971466851 993663155 717076708 787671280 847908417 924045268 192233597 732537154 48128348 794892722 976087376 981040512 354186057 594275879 5542610 735381402 625229649 971015749 30019604 847027720 233273516 731648171 217743696 382758773 36763152 173025815 577135578 996162516 789509980 857124896 809549662 934169263 109463814 179721349 428920285 687928648 115098293 296707635 798157334 848975713 785459487 845471965 255685985 362198946 608236987 619350006 817594198 964826973 452185367 853525396 775599500 990076495 189028193 282519931 196401485 691346963 450207125 718091636 640877922 832843581 909997118 975320892 29806588 229275112 179094461 502226763 652574062 921811165 945075600 988157886 71852721 579874515 984987650 996416034 208649985 712335848 956785910 983814744 957888002 972822883 430813416 965386242 834771537 967126751 139598448 548302083 751014800 802259954 832692723 853249319 608019333 668708474 764427705 764459767 498688375 644973815 840280522 883555807 215158660 756234005 742988803 844084156 90888003 365268159 627625607 907140410 97002734 858021053 754310225 878513153 305917821 841943174 230041492 350770975 720101716 881924895 821579155 883474061 892319296 945326555 243446582 923327629 7818431 464439127 482713480 545068231 649275031 992258650 614611929 890124293 551192406 739477027 780506488 999873720 375066472 450121703 630660339 816946664 428242975 964782617 97605242 775275780 594856933 631222239 153008100 444196107 627507135 813712046 653978478 903937657 613761850 982718081 803870913 867295404 618165975 796944685 905195156 914740583 464855987 738391968 95197207 712740490 424920643 894030893 611552312 707227029 543289390 973833903 258887349 541694504 803330309 858300007 111104697 978904793 425112750 473562651 135750695 912532532 71407834 600836903 457707193 941047019 798099208 831464787 916032982 937266616 123092719 413614139 555398380 566510844 470565850 525200264 616339082 670772865 266113365 304767478 830671384 889469266 257380352 288845073 274854656 941404384 480500380 618921051 758844150 796981935 152696143 536325280 958058931 965420193 582525151 629085211 563019027 836271119 417821539 984031494 197260763 364978196 697781115 729786414 273894758 537656559 744265939 781496659 367507780 602274537 887336670 999674178 145162089 707871113 368417775 904712809 977836529 986945862 733448803 739189751 57182972 636282806 658852536 767715741 892816427 982110047 718186074 779806778 395071026 446435466 961626049 969091335 781034960 983712117 916528648 937124263 472433562 988491786 701123435 881775039 482392346 839451657 757837310 967479247 921885639 941163668 425525807 466448581 802833441 978071610 451565956 468994558 672979714 777099613 672908999 992474062 239800468 277268836 627101244 635376906 186936654 470618142 746564319 849217461 461434359 625758413 211734435 548924512 293898298 917143707 793583612 944795855 280672523 892093689 345988066 869831485 683082516 768579919 138576835 337168668 260268751 945759865 58557405 609825294 766434316 829974355 217211526 644963383 199703071 800715700 777161817 922566203 110102998 557650121 504645660 762219432 960865017 979956036 331772189 485035817 890541617 917177115 227542605 528167731 480706281 532061090 59935973 238818132 428598255 843036903 170384932 641594997 457657321 863761491 581813788 773286945 903960909 904095657 327534984 882903420 499658075 843142575 130997524 954477690 88387200 457661876 959087578 977259507 431056512 638026265 139203541 816467453 888381870 900492357 866810687 978557288 957973526 958614842 192257395 192897070 875780698 963986226 691088752 701928578 713966323 825971197 787270872 814996773 426802739 545678873 920281614 956949405 785751765 944667972 439746766 801719361 839239169 948931429 634122206 950714491 222944963 968116547 348284656 944872513 5552248 752223698 205094769 928937488 484714199 988607745 520849160 561047788 475912994 552633973 677825604 691889214 311982117 403804256 697337386 904296346 5700171 60131970 804598275 946106395 71161069 316838066 61779433 68358817 873362526 998186184 783799618 842992434 536952237 878655719 808268036 825551938 555164113 868036308 657417508 788226181 330043580 711232864 126382318 385774419 544436280 630559739 386393814 449098331 466532474 582176660 469911601 946296319 637682535 707299577 314928913 701716225 975947514 995796952 346001324 580664983 875346789 983683975 177658121 725363630 105556797 840523732 408624537 656856820 481571305 822593684 426769835 440586639 420919521 913946784 606583444 648255319 740032318 783256395 886054044 911794450 883861589 990281219 764498042 833074574 240752007 420272398 63748372 386592550 120992917 958227174 855438216 857779179 122874143 154494142 184308299 401891020 918324851 988024567 563940357 951067703 283706417 523508566 797135018 906763519 500232880 820703468 11251849 16033997 448099608 899198396 90683755 775082849 663648202 698985631 667873554 789704948 870316254 901380743 142019462 739923815 108324963 522008554 331382042 767039850 918018017 949273705 684988751 800952782 143052745 336567885 979923418 995220622 649722791 922959572 914687010 956413322 344637866 430846002 312979283 683065934 874521607 993194324 725284753 898526913 423021725 552009003 714765143 880571712 655761721 780814419 623000215 969224913 344933439 714268014 18802057 318194670 397608237 565314687 641705047 768232079 258720792 675918319 582531045 877285714 705619185 824233445 409526684 651736910 224905870 870332350 198454231 315726910 148840956 280831268 804471228 881613742 728660400 963398371 790974601 872439472 379374467 381866743 381307024 669927187 625537990 826882413 304342476 918457234 853147986 892464302 75000987 909091624 77549898 369733524 327615689 440548845 397670494 925023013 469857075 961409272 263288511 662648850 973040472 998392271 167559435 324957246 337451644 738009357 147496573 440203545 759936851 936782913 343729402 953793185 285799185 920989956 275086387 837473200 803181679 924027239 124678618 606413689 155922917 335052341 373918599 803583815 455310140 550702687 833817018 998169715 518798252 540280755 782742408 811696748 168009248 393702255 592150770 926262584 820513041 904540549 121811184 402878798 68305293 793737195 755792701 942075951 328269122 948225711 759495433 783337747 725572024 778768339 296249673 751346780 629908909 750837662 829418605 865127534 928983054 948997578 671167999 962350423 589131793 646468721 667607927 954486073 849494129 980572157 408630375 631264108 870191372 924354251 953678118 964162508 603888564 660208336 683601963 727376014 686118693 962697638 419369648 847009177 9668502 898183090 18942386 607337962 410915239 745261822 108477360 370533127 633102867 755340680 223032489 332912905 85277632 607151327 907679155 921263920 960793578 980272367 604503115 993526852 869894110 929670355 25676263 802641439 387170059 405820617 136192745 546242394 618236487 886240764 517709941 792476075 303777999 625255509 787739253 922393822 146043585 432324719 527547831 978232123 270491913 846613413 54759893 230932391 859199785 896865592 310324483 785755398 337052006 654478238 151628640 590030151 403043580 829373652 757859558 970819246 770320411 907460352 836920380 926860279 84216852 125035542 53579224 188751613 304149943 745591985 554833185 976004665 19407697 299733931 734886314 950694690 124067473 534114320 948759460 994343564 603737824 677252671 11146411 586563649 827936437 899544944 135093922 453086852 889805707 908155165 430091033 684353270 673710907 726549333 466068630 937880871 581488814 996616890 207816567 326480651 193049057 425922886 28316624 186252339 152872791 656458403 981054375 981584119 7305582 383556563 851750251 871315913 189048076 239003051 497023958 913361372 723512607 728868448 525069060 816898431 322180256 573658075 504636381 549304662 65532716 461212158 33670957 267630657 214613160 434099846 27815266 470638820 513055891 621128360 855194677 937577085 155310939 967807032 514381437 864327675 83001978 569300888 657049879 726993718 567915646 663590921 599390057 615599011 419708788 683717549 598108670 716028817 118240714 796437347 43657424 667760902 178198923 301590179 15417745 487084578 747188428 838995548 984044306 995944720 423176456 580921059 721760057 725298677 690637285 949324402 545264235 765357088 268328306 975622739 576420412 986898478 201268986 849884642 536054516 923687995 222315088 469795826 271762163 603653035 347303118 778680760 456241874 987525835 588289832 963701993 323818040 883427443 596694922 646026085 30052155 695523847 428747404 755791540 513422871 683648662 298516453 571702220 220903641 313983459 229549931 492435038 680291688 912818653 760899113 797763461 319711862 650098598 77908758 598289544 63774392 567310498 460715225 637643589 314710871 376583220 497913719 780792876 173711253 540166409 15205990 151407728 552339500 918754380 538326260 618020605 515353148 795110821 230910427 747267216 76279849 568880132 344810620 357460296 888933271 917601055 448429895 823738483 186056718 918622121 683780167 822435062 431790897 884390418 422539931 645797520 879011597 922141796 734896148 849766713 362776315 877130503 66810059 120773181 102760939 976669853 809392141 917457927 652705601 714075621 158155144 952201934 683441365 686716978 604594480 952688517 245954329 786345173 623418748 898117782 608807394 695415921 332363317 543449885 795407748 975672464 655061396 806419985 905415645 932043740 928056729 936708501 61895598 802973681 727035989 801442515 520742407 697099055 10459338 837647646 716762180 903991895 875139882 968921506 771263261 813865902 452390022 788052927 619652245 743543018 761914738 943574105 940274352 960944715 7094284 523933092 931640936 979374725 238716392 952173294 239102758 657847870 456352301 650687773 588304890 899827896 958279356 968732912 100936060 346065911 573328002 994490474 383208370 606497318 92949455 184497113 643777439 952280588 489620636 993430447 650538845 975058289 104069454 849873500 907031181 929421031 422923890 863578235 675218381 947968573 978960561 989895391 606443431 675188977 258376294 423609034 286479947 326891505 705428466 859568827 347006310 412743925 457153786 665289150 635329095 792639673 882226846 996933997 503909490 591344867 695521777 911297823 788911306 875283326 574756517 920761657 304175578 896952265 802146402 840825711 245179139 452936103 641327270 756741721 863192452 909586500 179201110 418124759 563521573 951466110 960326009 986881072 569073786 637613211 71875831 166263311 452123142 886411141 419075905 695153398 988062809 991506583 942031822 954709279 686509818 840988674 267619015 454919706 146988112 940010723 846232700 852572208 774125506 995745488 676278197 720965248 828105415 831691579 221484115 647665545 976384763 986934428 743480267 783228234 981983507 985380702 46444656 508470417 454711333 764202842 348303387 408419354 513152540 930574212 212138996 926303303 126803624 398481805 927705531 943563496 482768890 822182540 893299152 931463604 274704267 351875444 274351157 479103444 147344503 987543164 459870000 868650857 119648082 900070723 355949467 620653596 833686664 923489372 777774219 929876591 22788699 535070653 650991386 886799919 74498630 958140091 713025207 797829214 11435778 265048033 141255117 208104745 51270285 751638911 598913931 831725503 434123362 555248791 964692948 975510457 104561032 770026925 754382747 814458516 569696751 570358322 721866017 861333125 689881353 750431257 266991483 343892611 342689209 488709465 86542460 984974657 54636876 820457392 476763555 755245418 112746862 282681467 454997134 480319995 754440004 931350786 935096136 955604110 947899855 994829560 957272611 973034440 47984977 443083993 778320723 846480060 228881813 647998228 298675381 927164457 140131901 205735475 495504489 927069235 842755194 957727341 815875442 896792369 461147531 910029157 892626087 917577705 473592748 554695322 825119906 911329040 581978721 961382808 575781866 858441416 984501683 996551047 605494944 720910866 440090435 794539331 164927535 503069761 186756083 445601617 592224112 900230104 583943900 887035112 122959163 351726824 510545394 607676438 378689731 938644765 301832835 903088283 325466807 408793099 369506753 970252330 698617378 995725383 802415180 839684115 670542628 903829839 177742980 411904057 338069036 376584419 991050532 997377862 721070912 812337404 140477919 287784863 619424796 757115086 188769211 739759040 101927690 189650161 769994810 860472732 706052883 919108771 772732520 807790978 72399945 370196838 385023543 869409248 340249820 385120022 766813508 971025331 321781653 350390742 289140478 988425037 853285219 854794820 615751993 830870090 305925558 586603911 296108542 747692375 606325129 774294354 183526393 388696189 411063273 992159145 74819242 292221929 230112850 499676101 269540163 395543381 98740597 406566506 272967714 405279309 158187917 666716717 112202492 616365996 369850734 852772341 572832200 735496169 593343252 618330160 473219612 716599268 260179012 542344735 126420971 653478376 381777341 675082415 347274403 664983432 862052786 961114997 504945740 560537260 891707268 998982628 713494028 950355354 237980376 810246955 685610181 849880934 921376063 965114478 613091803 834315159 224059179 447416238 391190861 939227044 25110236 749437745 108345829 565994555 538019079 748756071 225510106 807845778 592807841 604636140 422748654 975414979 377693225 975965820 215001458 345808766 387632787 979704555 62139630 870105117 478393553 635507046 856118676 984592266 230448323 750918119 546232901 836810866 574803591 652769228 80729506 357536006 817084068 972646909 987794651 988148404 437025727 778727531 430824088 620247740 840746254 924915292 533462725 832467498 611297098 862332177 201365513 994390043 692057320 738601080 381476012 522916386 571029621 791272932 237494342 455944686 80288459 721417471 866431162 975882224 304177863 749408075 8205364 29054078 774865103 921911823 387840785 873776025 522347205 721139772 206540528 960368451 62836190 503801617 286233569 659883152 869290898 931976448 110610063 952908606 153017045 399430333 111113308 430854541 306919730 908819033 854595996 950578731 452519079 957156043 607087034 831311616 234435071 279313285 87484873 966306401 692294128 838686664 471722369 956841735 192347981 790746858 86719365 176009666 60765747 866387782 297076145 495168501 20640401 961379396 108489190 665989218 162211221 904366083 638256087 917002392 437836444 535345775 968730490 969465305 494054728 499428950 25401072 48296946 414961173 526780577 30687588 697377485 706224228 866160196 388321128 534405996 743057581 804605255 734018321 990136436 373427408 552745646 105271671 827498803 401447190 774135748 641687379 679102786 550012090 819805348 423488453 718554400 353489973 568085303 264177300 690234399 196321446 612419786 897705869 951194802 163278754 330461546 924618343 996317942 190343410 244363499 948222228 956039827 603671560 632429408 934656683 962507743 564828292 704134010 448254123 996395563 489911098 607909268 172161909 602474968 501980542 816589196 378222588 973998971 613236911 672575263 613087864 686731526 526725930 647086702 581217849 972876452 456518573 618616399 411782996 495556759 695440435 918720368 347615834 929450692 387565693 455225199 271188927 884094498 907701233 922890093 460231189 958676955 128774376 843915169 387169445 441186844 533984890 592944563 472484459 951497845 628424997 843021195 351286336 809415001 483136597 674418864 749888508 933579170 663331382 912083989 774215535 966685271 554971486 617214360 77349112 847776593 418643160 761278908 672269768 848094599 16282040 236494824 909197010 930868418 267038581 540571082 793813504 859058851 117337006 590711215 128342648 700353043 945328098 977608509 963651507 995337843 565508647 962376236 92307202 702488108 406760447 457139025 306313427 817350505 332729026 847787246 635361661 796683348 640205196 800629245 450506605 736349791 506083002 736462023 411502426 993161304 924533113 936012366 769283741 958228438 428010685 800478085 721182702 838340507 180023574 897025616 730315482 811199302 463266989 581467163 300539733 557486298 408374456 496150443 901553333 914142979 589247053 699598197 897901191 979028099 825955851 995294183 297268196 669094102 318663571 513952174 614888407 749605369 733160904 925704172 858056303 909388502 122318136 425799264 337465587 514998005 76152235 738227862 333996093 722543096 491827356 918572058 977456004 983710041 319179263 803237441 830578832 908614205 172928608 659461829 362354062 588183016 798050642 917239383 221322570 386362147 385339027 698457345 244461597 897701340 685094908 977325433 869193069 961076224 290163804 326334583 308451493 800135753 65705739 907806084 836597072 975319782 369739338 484085775 550211764 596721466 878417396 957523951 833497530 989152203 439472184 685141564 830590389 869473388 477008475 828851850 829177983 987497762 481648552 898430325 962463969 985479015 148532772 943754943 405247631 437490122 121097386 620899289 72240432 811016281 175234267 683030233 122292838 223872185 995487427 995773263 16808837 45765071 379572669 917256413 805434476 806154895 425506104 754903922 122821496 845804115 717908119 753384262 262314147 600560646 839662737 882531714 799788613 990521953 219892247 579757830 277183446 778776441 554349207 962013598 228426571 902086041 907633879 952529086 330037790 793868266 567935454 657907085 93850221 790473236 346750723 874222320 712921627 951727277 992791137 995109815 74840266 264483138 159586311 286587486 567718704 593944279 186759986 894453545 142514247 309815536 283022731 737985145 770740020 793089455 891762601 913896035 843440725 898487407 493304112 926759181 605070384 744136284 801208654 979591059 988326174 991565675 496097252 540294623 695604906 903491877 717732194 787275563 526277747 667103358 394410367 826422772 53687574 670320234 440567841 659119447 427557853 645688373 753218685 892227669 453049579 605279558 718282959 990888837 95332412 190204167 997568860 998474429 506878279 943536936 355760667 536595562 101713144 186571603 976411498 989077850 958184239 989593424 686745173 719628586 94078835 139225912 323986062 511862611 514899487 653706330 605459888 951071055 987875946 994984974 854102496 953851235 382161781 566541704 859848360 903167429 841437454 944587953 199165544 311698836 932166954 998333668 34652699 362488694 470377240 691270982 722070219 855241993 168885259 994054985 635405858 884565000 46802057 261500394 149273073 418398576 101171136 506285851 548619023 867815404 799442057 945749829 929421040 942046998 846139350 930232594 414082481 706491479 844487944 997539581 249361998 721254917 776087121 836794565 589566781 744652442 459390576 681383188 25727767 719559494 559585419 832757966 209320966 944512522 321623230 875990388 480240004 505569365 978659989 982281483 594408897 900048687 735698592 892555535 649735102 725196459 688533375 755054501 203502401 523637907 772298989 954725331 446020991 713700762 194620080 466953089 377867601 482040823 274731311 519364732 211106474 926202808 29792579 454965225 125357951 334389109 60802857 649009116 647205780 799449584 16846874 697030090 273820705 917406571 13910674 686147831 660246401 755054003 730100926 740660251 450870580 500732364 169456427 871632298 189423035 815068609 175032553 440275763 718493280 937264000 697205030 861603103 680034591 728966493 767295764 828753284 261511489 400586881 521486329 707748588 432218856 565041742 665093108 967637741 296480164 655182298 4684351 810736610 959451528 969217013 799576138 849023907 997525509 998733617 727198995 852166710 393730982 613332683 476403908 518009543 393021130 977332577 702262855 811742988 355521739 587883302 309411498 493972036 830748337 901734400 922558902 933609521 319755687 985488518 988638425 991141057 911518946 925773382 581866154 611510116 248981904 705703256 672287267 775901961 846967258 978333722 81895234 955109689 839008957 982956154 266722903 723669348 835144823 907709947 771717794 820117512 193962173 570281652 8811943 453370710 457773710 749423551 446109621 891955308 824233639 836475306 78181210 959738177 211422055 625659090 967417101 983758082 771682290 880086850 355612390 407446183 793823403 846423068 282371788 466072511 410054313 557764112 316497434 450267844 480796535 735354299 861529807 922398758 596770006 740508580 647200162 986107293 247451951 554982002 618327184 937784768 985051953 998774250 522910735 906929443 714547785 916483458 166491081 259754152 52896541 75207852 680755214 749495685 292761311 840132326 350145556 794737430 545554822 561639468 679965601 930430848 266761401 667022750 870625156 875772293 928549906 979334710 213363041 543102123 969533897 987989164 763828236 894801311 571462049 599737698 121032388 528038222 62614875 966161755 744471449 932099524 968585707 994995934 336931377 422972823 81903457 293032236 750556092 907909869 141058112 172189272 738963544 924511735 472109617 811310979 262352371 463648607 256450786 646076587 437100025 725269021 563403718 998133263 906951532 945133429 791365551 879163103 985434948 994230938 303232636 824726173 860824278 949698876 390457739 645717181 376071046 675902364 733413993 929252722 899475217 979510293 817961815 847878071 768434094 832128537 901092449 998804039 53236173 996450919 464071081 583900702 62494895 202196361 137286980 728982205 810212201 938388125 446590933 646047524 873502091 998441273 793791538 819754832 956208454 989360380 403964128 979319587 267291613 998665277 159596444 332069520 459656638 746507203 828729274 835035999 711017966 886782080 938139689 983001391 886145374 914355880 573805346 795955034 832482746 866621343 687248070 862844967 925407297 987606359 693365223 726332786 361842393 948839779 945539289 982546600 58478657 411925833 209729997 415605475 130924022 532050655 653746400 695306563 232063943 410536307 908651322 944714274 820696550 860327528 665387329 819469679 740011932 896539802 15882501 149635974 274279578 696503156 9852422 252409767 2665799 569058512 526089235 990840722 160063768 686367440 141279276 741686619 396547581 980104804 630572267 871761555 812282831 903800935 764552330 938563834 580953016 966930516 496514916 740040461 444053374 869647429 669438480 924125705 514910122 696750337 278329263 577035998 490288471 828941504 941975974 992680633 182432893 877898508 924485239 938373726 143741504 151359017 286261671 407780738 598366195 894270903 193255633 207655346 853397898 867765857 548827854 678931424 598889434 846994289 339569674 974815986 431095632 791546606 217008985 776578486 109652553 588728607 627884721 739169318 973317712 979483666 489331930 692830125 453149098 814157541 344971239 901370750 164437143 945187749 380447381 605552802 335536367 552584559 137209826 213638937 958468587 962872297 195083601 638477782 293790240 671629602 917664389 986459442 561436318 593712277 629534478 930623527 166696914 367216805 416965624 606679103 557191349 840403266 951124006 983821777 862966015 866098052 83164864 649423902 844725366 850283813 912365406 958460795 343947628 521622714 823482938 968665628 389950742 955112538 358392881 596572345 831744881 837805829 870286565 973379089 142063695 637936448 49833404 621529809 324268996 730938820 709063801 966438856 297933599 384222748 768318354 914599684 171149877 876888175 322817870 457114700 68473245 681990055 48311519 497576729 78192233 899875978 779353830 863090157 487878660 833411131 615094309 940167010 913052477 967243447 732435816 828411552 291435034 823378449 721057627 881991869 236896222 592157364 422947920 686946089 998579330 999706481 483183316 595276225 589257164 954206925 428559632 878730116 637471150 715796163 165460387 179639131 35524001 403688559 292079108 753828433 795701020 910667203 319848263 551787200 734191981 938355556 882146823 884267486 716781488 846910810 625923537 641750805 794450628 923178626 599434623 678973758 572603856 634488357 763082275 868339980 208091835 838163984 120595888 435386453 362272669 962584532 708362217 980263098 149867670 186546609 647349295 812265357 973705408 987780153 631591651 654623632 853902706 866876169 85965017 468845832 19485814 905589504 3877745 408725928 354679053 384547749 959796578 979110825 869033096 878928349 964463505 966721377 127864805 337866364 507712951 795768800 351053901 552948230 576379259 772355833 296721691 323650451 30327250 813329657 529494411 746342568 152837227 768672898 921062842 977417862 818271646 856370978 838518277 940944996 146932120 931614676 33472899 363306241 785815194 798058363 856774781 886780610 460839793 916106675 979218411 984265808 832484567 921217221 330441275 816172865 935126740 991481177 908588084 961107725 469639246 828027678 657053429 877657096 686894529 770400494 91342416 183197330 52253436 679250174 135663978 441780368 642543894 859897460 790748227 887519334 68834592 703174811 952314770 979615841 832255424 933086428 925218547 926130837 856042880 870454340 849528272 952060525 134974855 700384552 553910695 582191205 214645862 461672592 24870104 465021908 975032849 999184720 844943180 872787623 165489353 587988732 590356149 998174360 723269578 760705628 505657222 519374338 431897497 465775854 936953626 976201474 580013291 908596657 158040404 736270708 610506121 877092238 679525162 816761994 992688660 996681601 890889210 926303956 882491422 883061030 261647916 952663057 222065854 585510768 893989084 988607183 428079836 888808621 701390915 935814267 741655318 825764501 828395186 835287699 405754395 555772751 661107586 704588326 989345866 994860710 61844994 109116179 762819509 889035783 3938834 385836375 452567476 599117229 801150765 814993903 417551554 717762748 780328350 820481382 96311627 856146852 905327545 968355672 810562531 853392990 331758694 555623584 988644326 996627649 389063680 618042523 722036949 990990924 157614949 718450328 931350354 981264246 338381635 648091829 796923184 801782250 600422526 818148247 674270480 809705684 317515751 849053164 341269139 361067094 632663699 752682971 226488727 346118171 300826927 753345829 340337228 746735464 852187056 936964877 476456042 850172410 96163816 500527522 67554016 244672407 31600232 115071875 533491715 754520142 561750784 964281868 719166346 731915006 820663182 918445352 711342513 808773135 68984083 655153067 95198634 941252290 35341143 132373029 210207793 250999501 927430989 988015012 198018009 538648105 240375845 242069743 855031557 909153704 551732934 763803451 311138920 441660123 692469981 713627418 816810668 976142831 273883411 704922749 654038213 988528514 23654776 436998367 63198577 316251850 252041631 866485304 833599831 936868383 348210545 414205427 340418985 442578244 978756674 992395078 622393998 684667966 170709931 699520690 163220023 897264759 884726661 889398020 344566976 436111349 87143193 499516156 383437905 450913371 985380901 993678795 138663465 557492143 683554467 897656147 473942694 653453493 25276432 510854413 694567018 997935992 727396033 919043374 621424892 804149251 107347335 594902214 239817088 297350319 949834093 967219546 913460576 919091373 679254936 795541768 592017742 634603382 439824354 828128656 210878111 739708985 254108095 466386436 277562091 464249822 815190501 825366442 55623890 522011412 965686524 980871610 837278010 950831529 21070814 56992797 584234470 938492332 845059672 945011464 609533110 834297660 238671094 720431333 125779950 423037042 93342968 129830446 213171235 362367875 453473369 461543576 364990920 644289366 341542025 561280116 117541702 376469138 343547275 827384553 914984580 987702066 742707735 971199570 897106740 999703629 88002937 899649222 443416412 584575491 368480163 639872924 841223717 878879038 843441718 915043361 416952113 877968128 735627015 987346198 825308726 984269933 907706873 922965139 191013432 777668875 137473829 476730929 560722720 871393410 240715141 896669588 695280490 932889880 675487537 841905250 404175358 556378870 144743013 633324119 118366978 973994374 536658664 721130984 95845294 286359370 460706609 556738875 854640341 911937752 493561346 979699400 840828565 931741902 960945749 997147515 405151671 713060768 131558970 479672341 59561537 670426960 80300294 360200452 551594891 615748775 626588309 926175060 980053990 996757584 72899635 143386482 472202105 835875277 927172740 937484035 713828806 933573776 464944864 530051951 738204548 764546864 383964154 774066400 845385577 965219113 251841451 613840341 830735576 986926129 27296437 757386584 207238483 432961887 759522627 786353775 107033955 209296072 761007249 808855801 472625652 903929709 290409662 649840695 191588658 380647049 209227029 436422098 225483950 488886382 25974085 305856690 706701911 797653153 929310406 936841102 765834389 847998372 487970189 817374846 376537146 735475262 621242747 897061641 497514819 684291136 744970310 944006298 506676820 653888042 489233714 679284527 112138226 773412460 85480505 689596974 825424409 864551517 221990546 308713862 842849813 910918805 293569342 880439751 382447928 419998507 679338796 990014254 849987296 879349560 929552487 951274114 270730184 751947089 931264650 942109378 133643968 430064132 24445716 774086019 714045275 730724905 470658207 984667828 34831568 921410757 825623271 905019401 624449471 858537232 336599010 702065824 826856823 912651484 516260028 759913863 690650668 839894495 191984892 197466195 366731001 999237821 287506402 497575765 863382011 899252305 700335975 800583227 588049103 732405917 634532589 816058936 490476320 920037084 491514255 917321119 827515785 932184425 981858723 987558394 397777584 606579190 495498141 798977117 101597193 594218625 164748999 717260597 443315449 570688684 249650249 469933417 916373905 974399897 797659093 900153539 197198996 614244738 293986818 964505284 168903614 597771075 384665613 736096336 197480364 564123604 796192134 801258443 919795731 994226785 681640328 840408966 646135449 927781543 18897214 667520527 421594380 927188302 341835067 871679487 894968455 988652828 398951670 433533031 948033849 950366308 845271364 956503218 183684561 744868293 415444613 451699948 695366974 752106883 576881210 602437703 465088915 991377111 418897162 522761596 742540592 809588718 243510171 323029996 341879343 712962214 190669391 540187857 188489945 606498657 976781879 979647198 28077307 50401360 379917191 926624680 368825729 623962856 253854831 764282200 854559934 923413118 67363054 81660948 264173426 309107727 510792180 963629966 779250120 988711839 569778426 895676337 50918979 780441365 95839954 405098896 842452010 917975943 534431928 815666284 517020897 729715139 639166482 942681831 890523175 894426265 148878912 339053530 570508011 602920496 192628007 745741380 32574513 194884573 761403121 987682024 237736452 337815020 511745653 909405902 29801163 548614835 647105760 737311954 203731999 640186482 188308417 499844922 311428059 514638766 882618693 952989941 860116252 956764031 686762581 820116492 471449946 753779882 534065093 542611117 893153275 909236549 899590957 961679996 460650677 607214426 500509778 503494736 820333705 940748439 857639350 924614421 29239755 386072593 513461675 936864430 298690052 633018367 29763325 237047619 633840366 680105526 737903826 789913606 654118159 807091674 600947742 944521280 348742415 351469186 160623491 903888678 79116022 989728384 171680606 512198715 118841448 817555547 245231819 750452426 462808556 639775222 613651875 673592030 160903269 470307056 789812570 908822789 384594465 722421525 973224533 986517126 120173709 203711949 928261232 994317767 526237819 944180116 946209867 968055546 316566911 517397834 374788860 961110674 1043753 744062298 652712965 714839343 331318236 362092445 668674135 686223761 774684152 941128644 773412224 990841049 15272417 178976964 513947369 564854565 661383909 936433109 171927148 648971604 608848342 761655455 784437472 978555176 981032412 988195237 801664975 828650646 48849074 743593543 549258028 622923343 635840471 923920644 781396679 989086914 713440884 821480636 992576278 993136243 827855047 931606319 482895126 704157226 587947682 988649346 882721356 969888631 736396524 946014130 561608625 791023073 510931176 735445431 736445516 773729093 869804932 990209098 82294412 733718281 15921221 962889402 207804944 712251588 986169107 997872863 35113347 170522490 169617856 952005037 823249578 925734821 949953227 995105622 357481230 871526689 500973462 615551149 626179307 782734892 505222722 618084134 219851403 423930405 456392770 964173096 687062637 935885186 480882233 820427002 502206574 637734641 89121433 594373563 558020121 860066418 229603754 665794934 896584653 958230819 911180344 939193455 702638048 995799598 97932244 162618485 692530966 846078586 509691225 730856178 263249807 611239581 532223095 802322224 766324252 779878966 686300012 740445561 700681595 793905301 743630595 908118706 859709502 884924257 351371720 973393721 478686271 741289540 680746023 757590039 298876928 699867185 955644060 979904190 541301980 592888849 274345595 537590535 996729481 998550418 824372837 921844112 106896530 700603542 663529305 805709615 120261752 622111407 308252656 709805833 429978985 491857218 523831816 769414642 373458353 479846933 537977345 992408535 194628714 694787630 990948391 995419449 602093010 809121830 998774284 999063183 872479331 909996105 714156442 944269715 757909941 865680439 313158764 349212838 723670269 842423039 55491641 981699501 174937238 545643883 619459129 775876406 741698681 934680675 500327491 751550693 529706362 603382638 253654367 999351494 959053985 998858933 354389620 719755832 301515640 767502002 879938161 928316665 144179944 151764088 376918051 664215810 487559612 544076485 214735967 501004148 59490067 197745249 673047512 825350536 325955557 790357126 429903103 729153309 786240997 793097085 904213622 926115757 391484277 863900115 219536339 774169300 225587498 704360847 804650662 878318086 395393953 938085680 573371728 686701122 460612296 714914573 921179948 987696816 840719183 981263256 672499407 911969959 998639407 999023898 167173987 173790636 498372729 628442375 520949306 703239642 153796646 713088707 196646298 852406542 539806767 634859829 898820264 950183198 439288983 911689284 785868631 796340932 551033354 670080266 642093859 879121053 666060045 993293588 441408793 773669783 119402769 585658801 937903943 997678677 754263057 901860258 986323313 997351713 722668214 989025106 31775887 607860446 322725269 386635491 372725773 572493300 265603099 332392838 667466389 912473521 866391020 996532941 337104964 475969846 397785113 466191893 434880112 865351783 944183073 956970781 213449261 866521589 931987343 986094658 356553786 865433609 922415852 989680078 536561870 746456717 913254033 975076797 745509239 993112845 537144256 641367268 888614713 975359695 827074727 868114818 285571647 381426281 140144794 873136266 266128440 800483252 982251126 985386981 566272097 637460361 733386187 835856643 622970341 809686364 49051643 745721265 718793265 721210925 373273709 948947683 766178248 961410978 770334992 997738422 870685933 875783573 705029835 738619999 405785673 464661872 454403184 633597522 171360208 231869793 782576409 785001992 536358828 777783033 610150740 926885925 471637756 921599510 707596609 964980141 445467224 737967556 446570271 449064860 117178899 808490245 85340205 663059721 519403008 921695569 649353759 992322245 248360018 401024507 790714690 804342459 107048719 796086025 409866336 922907802 409138365 782117768 270399252 467832695 427811411 463775338 719350188 991777655 497061712 631288379 376552505 838020468 174245913 900309053 745226824 813512680 273188591 952715619 836025784 883891146 905798132 910415070 912226337 916835664 127824687 546232110 103413494 612027618 855941124 921356810 692037026 733984824 56247980 675994590 335573993 712990811 742155466 929633710 516977892 798650685 870802842 962776758 840974221 854486680 984187152 999683180 123088118 168100274 186581405 382152617 688431005 721567851 920107360 924549213 801224064 969452071 644880941 844532148 635891664 840355813 163127293 412758904 227827835 472108641 405383332 921968022 257385820 960248438 453351863 733487836 912250389 956761902 181515326 989551159 619150236 653530727 287054699 558024842 79718925 135016856 962235866 996725558 152824248 330919859 175295819 277795698 563186886 627099781 787044585 856642134 180217710 943896972 826864368 888367402 443664814 672879659 197492 216235514 516402738 698782423 355234080 481288140 779256091 985462378 468970437 516196869 471657919 691831592 226074847 499974017 472743732 943066933 344823305 736770065 276330695 866233061 795530453 960169804 878210488 896188456 18801444 254229115 955494553 978219087 31819576 668468742 627195153 699567145 284848431 516545378 730937826 921357874 472346034 697061529 805955780 872857133 300122407 682581384 947426357 990925739 150117315 328738856 868356098 938792194 246941151 498678176 558274513 703843166 812016856 980593831 202286812 522610104 114871460 369202845 119328185 207011201 540275201 877191722 773040327 797516476 948004129 968280365 778544044 938947433 609540995 983693926 365116255 425043419 541098569 758292867 34862385 235097145 843382962 928378675 671826969 794008990 807831283 983405299 431831316 950552508 589254039 968939821 79223591 683297196 128007903 659816740 162410303 268004983 910871894 957918559 667232437 899214897 918734568 928501979 993507149 997999640 697074172 964306951 680421520 722157774 390738329 841197915 501790649 577491515 464670215 591807488 906834429 942838234 246409911 344987239 90408748 427773949 416017104 941323529 381225571 925534505 773510559 997543999 297887325 624194265 193761380 638225087 146063451 478468049 636783880 748213563 996831795 997473858 750903976 803251043 169812262 524656884 638297704 911134991 321607035 618198327 359689207 963198405 371570402 646202502 572520713 833789406 267106792 554878774 268274108 825745333 186589573 863612422 733746685 741598147 746814845 776644876 86490872 410290402 434168274 582264549 872728738 897211849 90043125 285019640 821910976 853420280 371729227 545515508 182051690 276403632 555092414 646570857 755400666 997441386 530564768 770144737 242499857 574694898 125653963 457155901 463956761 936632476 685272942 845456181 905148407 974248928 677738851 687601650 967573675 972391276 420759122 889163417 916752562 988366574 992020221 997849279 77200705 993512857 336295958 641212396 425915525 525891699 359311143 713714378 564774236 607677300 795102868 825412802 258363124 672190605 985750760 993446402 86576360 530647609 563181934 965891736 824568357 914706590 384064670 857260217 867468505 899628754 425169169 571265659 728630588 990302179 391367302 431007100 486321324 947174670 680193737 906795478 820067728 829573992 328367133 893005024 735680513 789905300 190882270 237982804 9250634 261763887 361292036 841965121 124936983 484680544 976337483 996135425 771105599 886640791 442844746 993284395 603883064 653508336 456015365 726919809 245732845 896729295 920912080 974100669 525473364 707867498 858312379 986540220 446121249 655254306 268435614 763602351 710911164 982064558 471945421 706135310 943600521 994343627 752479903 842223035 925746801 932368127 981471185 999426960 755054025 852874090 426620601 639096288 378065698 687158050 434654197 546670636 356851647 838583347 252245435 466035303 446557627 672467651 975161617 999371140 318279629 409624452 988452025 997538890 787307696 962280192 94504161 663011290 2507526 500771941 46977219 298828636 802569777 977056061 556693693 569508013 414739015 937111927 430787237 607491049 840900632 883502822 720166944 920790371 307583782 481282438 662845516 709782377 163878960 485383006 865450831 939090841 703753053 733470585 803234115 877131942 362577217 618531023 834064092 909210761 430724622 755128140 101038632 810122391 336881709 782050160 95646195 637810110 457888718 872774578 501942646 676932510 178117309 526850382 419016459 909803298 296547708 348498970 353995919 699212710 340448968 897625678 471082805 923702258 330510418 602754937 23265035 255527015 272221683 382486492 440702444 934672167 790675502 887452372 402773820 815716642 529082887 809059004 604993079 935272546 874463823 940164855 255573645 375019020 100701111 268028829 793725912 813299738 235393562 789377737 431911941 706712401 104124031 179483799 744880299 835857800 757108741 809500525 752101438 909980646 928021061 975799966 792235638 823747777 242827667 320008837 534332530 910519977 520119523 634473467 554727505 920212057 64794519 354895988 664240071 686477800 61105585 725896133 976211715 981525776 140559734 358081830 641414845 765897825 936759345 991615668 950609866 983015974 770494626 785377175 677713383 874416101 4199342 866994126 778504327 915653436 839536518 950310676 633551310 994910551 804630629 852053460 727326836 820354739 673161949 940805259 619930916 624099746 727595256 839383600 756241146 764075904 923787471 977851002 80699287 621766772 662802259 964877371 219004435 648596066 415183831 482441220 339327718 917090010 74016729 723669263 837183543 936302344 197761422 589324812 783019891 913221145 46063616 920536656 316898192 507808667 964499293 970940727 295876695 433719284 174517905 804955300 317444178 767771815 36395641 442145289 498070579 771266392 170466127 765179691 552711744 555738327 617105602 925101176 982681380 994651562 648860791 958985737 487062823 691069553 356129958 410790946 999984190 999987229 205370661 913735161 198284382 485071579 235648918 944480149 171892449 797122621 621578400 827009812 543846199 783858848 232353191 396385138 147248025 908321705 278716847 318345678 34290563 662921309 488966961 796865340 619462393 995638154 211045295 226326988 934001373 987866181 936785283 939069251 457222773 510672593 114144061 340509403 890403452 969199710 963146187 991883463 850124773 864436472 972105439 976987187 751376745 914870057 899781205 928679842 955889246 974994879 729241327 762309181 43398884 764040545 261597334 778948855 536320392 581242751 677333928 791635828 843836455 976928324 229471330 939644152 376896693 395125475 135468799 650464105 706381718 895306841 878817879 991232971 652315168 688587147 671684270 959284629 32784680 151341942 598060175 911463138 996481522 997973004 674663665 893021223 718233658 922132413 829174173 885049093 275943575 958751111 526239571 738053194 945158335 998969487 801763697 943758708 646961119 998519149 422106708 801779169 860113207 877243102 303055750 846482872 237396087 706898241 271755597 341592607 546016415 885500856 719973234 823922441 237001469 926321109 470897357 826756415 357674210 728090440 942716277 986542870 960695126 997583984 481142687 672186247 972284432 976199690 285291344 635778223 784226697 952109906 953309271 989011871 296276612 695320034 242766669 723411364 303908310 502092819 972440742 984537168 80926646 200543901 527065891 653856707 158209372 962878136 93361711 563273387 849508167 932277205 45670575 194520215 731757848 759898962 533737537 833143479 631754390 952048173 27960781 762407149 1889891 318909094 231536514 547908350 966877806 986342426 423279619 648158892 388194007 708664833 195672202 420683932 60821468 549417816 147010992 742841940 240527346 904980823 914103216 989039995 461804807 795460123 954046261 988357359 554313250 602016975 426395721 890448267 223812817 734475086 616401939 952419693 3337511 211275721 137365813 691444735 980050929 996292655 402642543 834510342 41946599 873362739 85393954 337802016 204453947 375346230 875479094 938626393 280248558 911568776 674139987 854984532 342423765 800301092 49367673 788315835 925728018 971724370 637866252 993132879 208851705 719646761 616237742 648421120 265406899 693051528 71321328 640527435 965079220 965820799 336312112 647346998 801482741 944408666 333353089 355209643 378127804 740872061 318117890 841081529 26524246 184426568 285117174 301693020 236234781 706915905 797329934 913791822 740089859 842522865 923404046 950852988 442600808 648246491 979239455 981677655 520092031 716049774 294027681 955495077 362070436 817676027 323756163 824159519 385296966 834385265 734841921 887315929 646728893 733854403 451063525 620253537 43714155 409199128 764006709 982390960 310484770 520282374 70675741 531032259 88934434 133067191 386003798 776632541 211028650 492075208 893951442 955422106 709922574 934877996 274898698 298799895 190198507 748824584 133467730 531262766 28322645 857786964 298595636 378492270 326584290 822112662 62085482 618969083 836875334 997992927 602648420 637000220 951862017 985447560 334736778 513634355 651388437 744477140 570075813 795505049 573163925 819221042 401581926 876322475 462150459 972686590 564435227 740031250 419138740 426004877 693450031 843582040 795429510 918994024 791106844 914270455 376150387 653765143 930238833 930542830 848586105 962648289 461648049 466689154 630013773 924848221 646501043 844068986 684026634 914864697 990494810 994777137 842602596 959646989 446063142 635824289 467826379 964155463 502754835 697863169 805123297 836250551 710037964 727326222 817821876 940738911 408852214 819140315 792035085 875885382 291041505 365349277 360257094 981203715 737757039 958802699 29847934 901667783 856273394 883473043 553344899 707863567 134458700 445900023 485104502 583229078 528879 849371841 825438906 947392584 927133678 961133327 524307944 581665816 532535392 982273309 178808392 708930592 226903683 730539537 615091865 755934619 270443334 870836880 354754911 799044506 460895545 591951491 544527241 814978242 958190792 961177715 478042553 915824635 951027352 969473399 385158392 446698518 970818253 996211972 247455303 584079871 227276385 288198195 850392502 958567130 86400390 930645686 341738045 580888545 337139754 438630185 348022192 722684736 56352923 588414252 143766237 763100803 431111541 736219438 659870409 910911669 243327994 898225740 286488671 959695200 667787845 997037235 421738596 444072305 125834540 521991004 319804027 444896236 297869084 700095964 175993015 778163484 584935472 813042282 274398260 658368739 566504175 723447259 873850492 998326173 150050886 647874270 24612947 423682075 836468790 908255624 14909698 973385016 629925820 889936975 678050281 898027833 195913966 960828338 882399393 976089159 860155489 921728252 128905254 585039399 614028021 678962269 905073574 975568429 522586258 956849908 367269771 917528899 783969174 901944752 223951445 459699440 472568559 597987098 127095114 886982183 469643222 728619835 804286728 924961199 550126436 869827868 186299686 981438109 805920298 950483281 395569430 912552216 801616110 886898799 842904579 886541841 891237123 994353833 853014184 909835991 868948688 995525182 531403217 615070133 243671110 803485454 224067013 514980077 237226216 431355050 667868297 986910740 718527727 770094773 488915443 796509563 3861214 405466063 874556684 876597531 695627096 976424342 637545077 719954126 732790065 833819796 356846186 808911596 745385345 905103951 365949940 822323427 287349083 376118694 965724060 974814581 518136235 701744902 852537071 904212553 457346286 732885541 281324810 637712920 76799337 583519182 406910707 466053356 92482984 111768181 661974718 942015815 209261972 657206211 480484474 492585424 575719325 810617334 297030437 915912385 437699547 711219100 728359119 940661040 314877623 832232910 344320933 545694255 723926467 787440544 245178146 977715444 166792721 534846050 912076606 970295970 550242093 759618457 946887316 986182829 15746903 67936780 795753239 882847298 346656735 782077865 703398415 858251058 634993287 810398555 502827716 539820352 953593600 964263669 97902288 627970318 593317668 999535737 381539713 695799568 222247339 757978278 25180448 812211836 194382406 654094571 833398664 892388931 617109590 727336345 605987466 940175237 843712123 960561923 802576310 987235730 420729622 500574747 845887334 915403945 187973620 289014304 187802816 800213200 888782609 971317311 919744034 969221583 240339189 812483504 506527332 649648167 285107794 595573191 910904843 943668056 747504387 835039168 56513453 683789543 515302875 524777047 423606644 568708215 631356118 650260300 311068016 449584123 77143605 938590509 186235395 720057542 189626563 660059732 676448971 728131321 2619010 358520328 734260423 764600110 846383079 920938492 352449155 418518308 43538312 241327532 846817010 930423049 689812690 825299789 819354094 864514318 485668544 922727631 111928893 964929607 174190745 540621347 177340190 957800723 313190130 966430728 638510074 810891463 572200859 972535335 391602050 866743607 540881332 841523630 198913573 979961573 527726872 724734595 103797669 215916507 718911570 746141240 703948765 878117915 52648688 976694332 472727700 940234871 491106520 751492891 125149361 867889318 339860084 802634413 466756431 804789475 451799151 711194369 567014131 879549800 462770853 560489343 385487240 386348575 164937071 442850908 720873467 891615027 671293520 859010378 871146060 889983362 190031377 823052143 905917929 950129290 626101650 997553886 183897511 513963397 753208916 942880023 804098590 869205152 367444847 738973840 239229845 446995383 530047392 674751586 204958341 382114937 595207730 860571838 341722999 683339099 621416105 838653407 105714942 495429991 13648081 25442138 192859085 242492187 629023266 676222089 71803825 474012742 172746845 389373208 648153627 822116182 805993397 902000391 676327623 933362075 65266378 816635964 6183554 873959985 425739963 651442188 592192001 961586282 99566576 829185673 225436565 886452555 650123728 829830201 415137671 508375435 336498794 866291232 574115055 995629593 416411669 767595394 696100290 717536489 689780159 894587732 65683235 960724626 330416794 881293865 475805564 681720741 914820568 942509731 987283790 992263548 87363202 289911309 848457382 890868674 628618349 897576791 68365379 202493117 968896570 982620686 119829362 644754572 113554210 352926697 683767757 728044536 213433679 469866409 245745114 923140655 923279444 980265289 290577254 930335407 144812840 148587304 199454120 376299537 690070984 712614280 945962723 965467842 782156951 954328956 430897922 918388469 149792544 698841548 438113428 826210654 362063513 585186621 544624512 693929401 844612155 988197456 684043783 860684490 586706347 699898424 163040255 400426478 594490750 977053863 246575409 803880927 548018330 791785267 718487265 902529652 210453316 353071678 846618180 943620141 115864207 431880312 328095520 881925991 82196922 851894449 966929688 985264684 876366958 895945865 432612571 743319688 601953707 636393163 24882820 307032407 931602373 954986683 526661573 938389759 726768412 956918782 829272947 889126134 127972596 926573809 130221262 855153999 683016941 733841976 792921089 877471588 185170602 842679929 418073 695558699 384043607 616657167 576909833 908494536 949633187 978015072 502744915 589877584 648081341 974998896 24818111 261540923 570980312 656877451 79412492 986783902 881075654 931340250 321510169 539206609 953349333 988212041 556310934 598781048 14815666 887086834 404930864 572963681 715266744 894980522 667293528 973328667 902726400 925163201 73282800 922271708 385442257 626055898 956191365 991840715 280192000 658276003 660404803 747521793 823112259 825680830 494651979 679570398 42474809 42637464 18676504 202946523 977760331 981271338 402017903 908207738 320972586 952499376 661546159 998487288 132897019 299005973 406115508 731024324 544483106 912953766 483031925 597097070 998968039 999788546 338422747 794341688 251335134 404627488 350532684 961985558 960455776 961880910 209030863 452113643 639279051 754781018 230902429 406049929 775188180 787749784 983296219 997936047 293192586 997375236 658423939 787376332 85139981 864105719 308664297 729456655 344719121 423887267 659920455 816563725 772568565 806604992 96188622 929901591 492003558 537400287 60074002 714167248 528572108 891339202 728524487 880814531 500819806 527799652 877839785 986476298 574276332 808980180 365661949 758577092 941300805 997273138 380983749 777561998 340384628 835224172 250558227 849315939 330168277 700214385 120961287 435199894 660286496 969100314 979024571 980768704 734734491 988366124 637489306 683887487 194169645 209424012 968315106 995148000 251233890 543366763 710567223 750177192 957959921 990389446 159367014 266040075 351127393 464489867 885921684 950296371 557637474 632785544 722511860 792928595 803000889 991356112 167314195 563732953 818353444 903481776 260869031 356934027 869638120 955501263 487986511 518351732 671033134 873513447 784886360 876573758 891772113 984294043 14855762 928440773 458431490 488098764 864180208 974943567 48650250 210814092 871079775 899741658 78017345 802681209 265840792 295505537 205102807 583749517 720884597 973428069 351172318 609210842 686399892 703602626 350730048 649713643 716060677 942473600 681890547 747134958 112562819 360405086 483486097 722030461 62975380 274000371 726515559 864097672 917705731 955422400 102479020 258547933 282412897 873667350 709287691 879584807 900692775 991616620 825563248 887006314 594077924 599094160 445765874 797146604 707370941 837984391 451008272 826164669 108795369 937867779 503338462 859252364 147986526 812264734 631277185 656381853 304678116 973780244 709584431 847274003 587043514 687587391 617986937 692204068 349433840 653401786 800136923 989205565 457074818 758174470 31503514 805349374 8361327 572655552 41505516 955063387 176136294 620906926 638875402 947130092 52271582 395445101 316697093 879372686 486982910 598263476 407843706 469638004 29229001 714110875 549345954 620958842 69699404 511484792 960951303 997493958 329450397 391283924 118106608 446359081 564263157 826783267 277086197 580831278 639408177 709466621 569182676 603172186 357042181 989557793 661794193 832279899 330828378 769050270 448395664 878325885 38729071 858400687 689965878 781802252 180869519 414719921 817393267 979400090 351500788 505271890 838776866 956650064 823040608 899535183 268092307 899433286 123130936 986437789 334623012 655176207 532953625 547685564 921836724 967149784 739915159 743479195 11608390 261781477 411389924 718546986 545522858 778302695 471714621 585534612 263384068 524560847 214092791 566269453 961698393 964834637 611128447 717635498 589312546 632406876 872848416 996479920 226040589 572491816 192691304 305783282 698704502 805788138 936252749 969779565 58118782 639525089 392871585 619799577 164334071 983355572 451283619 558043759 123560194 782330161 326039640 841084639 73271477 611848788 811172541 867248620 353253230 508559594 714855308 923251573 82935734 129083378 746017380 890167405 712631538 873624610 969831965 994189456 142371352 785262278 291200267 796633172 609859469 819955598 197765746 613524024 567192325 984042814 427480369 483840197 676440135 744105398 663024580 881502058 487459123 848009091 839034377 937652671 211204918 589616133 702708408 747873180 485816070 717974177 462843855 579255588 279212577 904602696 48190757 151450777 131591757 362063282 883301488 968411710 452913694 939648641 215082157 695842108 636101153 699464688 128273576 864419760 807535365 888260680 322240815 774618619 679483274 813669929 492856338 961717493 861444062 985433156 95105503 630733733 212227176 622118834 916041875 991733974 53650411 795691235 695904112 734234394 449342213 863849629 334188611 608782138 123753881 623113512 916908248 919671002 406750271 441547100 744616760 935928785 37681848 977483438 836666528 852043564 630541654 946360923 294920337 693417915 391990673 469843997 518726175 798489844 315901294 776085843 265842073 385624243 186886995 419597320 152873041 422302957 948341979 954675051 906616039 916537591 421952587 562939094 785970802 980617463 16991297 564285041 74643491 868596156 491118725 990102635 203331284 996312199 913787636 950775465 930131783 978777139 856848276 999652392 339706344 683681609 994925903 997729573 980865214 989125877 887009056 942919112 27895629 861502390 991010518 991388037 492338883 526989955 678107308 988179959 326290102 779629454 505357797 975148854 466370100 680317550 39567857 734730825 652421934 894625803 774940655 826382715 319592804 838000707 130886064 478090312 48172970 458159671 450476785 693291836 802558882 936034789 940305076 973189154 707397927 839250757 221816393 888955720 892761067 944167553 179020785 729406096 272004644 903855930 37430718 945786694 809373606 891260216 35775276 363274776 384344958 598553743 790759721 928280656 631757506 951317131 41422859 470262383 625363140 951628890 449782018 510603314 610382475 654710129 841636251 974947714 814544407 968820390 318584023 508815125 755454519 969993329 252662517 453448099 420196034 605713894 184168429 185512718 321358919 964234185 655291009 694570920 384626422 447411101 353750093 550449157 6202116 550439080 200868180 423376270 979144664 989973025 147956790 472627562 406564507 524245701 156536513 775620042 514165686 956232863 773802132 873975314 261561410 508652081 697153762 854557809 258657792 883064012 577875521 895428798 656269142 832255412 260925455 970268858 406113167 431849744 822108271 993410656 412769037 593406122 430567914 515257540 330213944 585085974 585234463 873550058 323719908 965182984 634396361 928893997 119710367 646850612 978168448 998234371 359958100 382492515 151256398 534656448 682848894 788582090 902265078 987803512 757786011 933041929 205033836 618443029 237190110 752248869 392269368 699348063 75977403 419770300 548932222 616727004 195060094 280833642 30785534 476609872 426335287 728478188 961820589 979858530 17883495 418061512 247351091 446749460 381827527 732405624 71283310 791623303 660529580 744090633 175251776 880422153 747964565 944327268 883207604 915627615 228656572 440811924 494130212 604371254 469669866 864360014 131952209 659631644 290145325 693550495 467335479 534309472 463785405 909164275 967662740 984396971 478011770 807725171 624302165 850669143 997674069 997706723 769590922 941780448 186482754 484386573 664134534 878940117 594231402 817272211 764872466 970584386 370903711 909168083 791239866 966010794 119531383 500970356 8554093 406647095 81257471 712395637 493408454 493622344 40943904 390587064 288022296 897345625 435771110 989465622 231901441 767563535 814326371 905665035 890984758 973465669 670656746 731807002 248189093 701718427 811661846 980245261 276170975 752496474 520886731 649598535 331717618 953817397 781222142 977166605 686030082 756495838 485499471 653143496 824145608 945877791 86222976 580504293 523308484 832697900 337008484 481744719 765500425 896256567 346607582 441131709 260415854 834640391 313680400 922039621 279291465 808155326 659479175 850675709 130748016 329089972 348050694 801464370 851384509 964731183 721194106 878992548 555735705 766173342 501253028 578793472 435606398 687571631 668290795 691351127 820276734 997190437 765058 655904197 708327048 715106703 975876331 994640051 501119101 887292238 889465905 909567900 179345451 971307328 939438855 951467056 690646502 705205211 5273357 395865658 632720481 882520259 160043168 240946339 700454677 723044909 841517146 852956364 777961845 893220699 332465364 560463665 670048173 805468715 135606780 183969429 682070554 714351913 487315249 788576786 263091065 771073028 776231011 805317886 215253141 918252445 189865355 579178744 160735193 612298523 873441108 924152438 772103043 937608240 484785516 997297128 736331608 773774771 69590595 809990493 205231773 722571369 811915175 972340214 143018490 870814392 961687841 967762173 521954708 837004263 574873103 774797750 464595877 505702860 690816568 707497268 770871638 815328785 560123013 781935815 643290928 958884139 966793861 969686750 568717227 787546106 485809712 797671907 289384122 707226699 318934439 755153170 888204187 923289630 638404368 720894210 100177664 167022511 954088853 986836098 51004135 106731809 454567040 471553618 868821389 982359080 241017486 243436239 143728124 744547357 544404310 924514367 108094502 394432985 120970379 801435429 143315958 980159955 230036764 916537827 580417882 817387156 502023899 686776037 518116918 997001151 708963022 935704608 172941666 473474292 335641840 942919712 26928454 836389162 5186113 829990375 576830233 780749677 999849756 999881750 575491633 800013709 497825972 896093934 560041949 653304750 613118265 689018052 536754313 728601940 128601540 482559513 798674972 847702830 907303852 958633506 649627458 664328628 958273131 969241032 839790898 934372034 11685943 80070610 947518392 968113532 145550710 819331437 962649372 975785450 999087727 999494967 843096695 958562396 869433371 952198300 309780047 532099419 410104081 856020608 315529017 824669590 179228612 613625505 190876271 337671927 646291887 760777849 653731203 828487704 642816608 807568611 714607648 898439328 818085294 973990550 901270216 998236302 422439905 999264292 310407000 432990472 876290313 892817811 587143848 700659775 597627044 649807877 243134972 532209720 945737757 960505375 671339790 789040420 591472424 839630257 168327047 638861156 309339811 337863081 516770331 568206605 608768047 981776725 936429700 954539932 929998868 957759805 225003000 843349159 723263851 767366778 902610824 921394192 891319506 996735867 557577507 737643264 31424503 317532685 784251710 808143603 258718651 985897352 786850631 902728381 135625634 528928828 175082979 793307874 655520756 964563267 676206813 914382712 99848445 428787982 818632753 980439835 165215171 729065042 946676831 951365878 428290413 614142768 135249724 938278450 898492746 938426615 219787933 781473363 604825834 774184369 404813441 698231729 206855072 740473604 892583412 935068729 748012475 984947179 600814675 692181596 79869501 431381458 561776216 732567868 809349048 871041716 768450897 826980193 337733656 456272818 966611871 980288796 328659531 662552779 909293466 953073860 120330837 478808888 305550344 668998172 3436563 335723503 495818483 606726526 827227211 876878864 428090983 841148877 248752639 738364212 397429031 607186049 689617439 986339106 709232039 807669846 70424789 548544077 891314968 993147279 298672189 964831069 721154802 814282588 952857580 998202693 338937460 827548792 872882189 970488866 951946059 990221960 568862061 653331408 973826483 976007402 963338947 977469673 90854942 547299798 187796258 429405442 841000482 861867427 654645142 972993293 264050121 710641592 429463379 550795387 189905333 747051830 678426754 729869050 705928104 901995029 552218056 916998585 88925262 916954166 152437183 292274168 856414274 920919508 10736096 386775318 199021330 310799678 61957000 505697782 178981612 902812993 152170217 579400263 6700744 351375172 955219795 991643417 971298146 991109011 144793407 460731991 26147100 272630675 685774537 930977001 660172902 753415206 240053213 796484445 242399444 746585328 112782132 786294602 100850204 410893145 589341253 838617923 503779763 712711292 880782041 897103712 600875339 936962930 930677935 962304143 350835585 901798284 364424995 628140552 251356435 800522647 388897949 576148739 508720964 861115212 843587129 939893612 466060439 559581181 329637242 815189285 999712299 999960120 59666601 476274126 223540247 764663585 999195480 999493891 837930102 984430684 6002342 986381369 610677911 711512365 442035679 501842002 991269125 997883830 754275490 856260511 66279263 259861666 412069092 825049055 759678414 792401705 483760668 557019899 871900004 897696540 98902075 496909932 837880661 911199502 327732769 568921794 46371760 317402856 736177696 806372514 432632200 460291581 279967859 902277440 203061175 987665828 510178984 784007765 245177364 246722261 641545818 957260732 760038071 806168018 112066366 974499860 314919279 819247664 983443918 991294936 2801953 556837531 536942836 709458745 126009865 660123145 954303678 958942189 355265390 823862563 238345747 853492131 711142366 938045086 525177613 951898224 641539800 921253386 217403054 904810845 707345186 748024149 637917006 901846700 505174574 684900298 238618510 346194192 796312524 928703989 726543817 763434730 178433918 945079815 701230503 986529246 788712784 806656884 92691719 777469126 859740724 980659485 557323096 569651371 129930220 595576313 913566970 991179382 280298146 802496445 1503560 570346496 471315743 596071497 10166597 793302111 62789894 278236222 270714514 701318603 487752657 805207328 109626571 770934289 88806989 922920579 213246477 510049127 722402428 947618483 773082760 876531830 992790413 995906933 636047294 925530860 183333555 406478317 211602334 797781487 591745153 609081189 261069327 325353461 461098706 762884744 357701238 759966237 44894709 656620069 444238665 533292346 722518257 942788288 42255007 60025443 564234231 579841012 75916301 699293095 892563370 894759898 793520999 855092654 543880654 834909597 746095564 749587888 189229034 988722224 842708697 991927501 575642723 899131087 731551145 960907870 196220233 448217510 331494135 396100430 553320816 727756419 841419310 899913560 423298154 858501534 27503207 706782671 941003625 964327333 614794584 733134544 186051234 889881900 321059380 698529860 219744046 801755675 718382621 803275221 839638350 851492707 776055812 866107686 179974923 310911475 497551431 974480493 75846148 689402856 825764272 932662088 386186133 811479565 447048793 779645697 333478384 440593335 264742984 309934669 663764204 809376034 62159515 575604776 842231435 887083286 447116956 982531772 909909988 982055010 581807512 822028984 658741444 842780246 187887559 831515940 690533900 984747216 245718356 917260702 1519973 984098464 389878243 889565802 48735225 953521220 696691088 875725765 569314130 922801248 115552176 187865447 260417143 379003606 991309156 999880666 724637890 940606176 528278981 995371393 690369795 839389476 822104211 937975375 228679848 775301958 960734731 997457102 33381016 361297982 332222286 790816313 308207885 590910251 76602664 572382561 153596284 719687507 282629342 955469149 820437897 888600846 804669074 869797774 119338708 392166308 767076590 769222448 391327424 398420249 599452785 909885727 332899590 949881472 355965188 702105412 578471190 600465235 964430340 984467167 936444826 979469446 658128963 890230541 612355452 872129288 182856827 224511921 323397045 470309318 699980456 861557294 817151475 968965176 337013075 662477225 584415909 687680692 621149153 905809332 344742324 681596314 357306061 810360516 480308406 614288588 106410643 729506932 728752159 835684403 949159414 957475842 269324663 968505117 775769852 939127567 767630524 856078061 417825002 867386784 624082435 766544590 98366815 365545092 997040459 998294326 367189335 778998671 789495093 893499477 702936748 977201644 530133744 884856966 62412305 169594688 629366470 882544540 571895618 674025457 444300600 881076271 764438789 906163658 905734693 994867256 400588337 752936485 558169915 639183767 9847585 485511856 601760218 930599810 215193054 731351694 995363977 998007772 648182503 656644694 955361504 961047259 438338409 911396843 280919840 399166021 331588903 780574337 217065946 388455178 626529009 657079717 823968405 871794840 367177798 781348143 26238504 398608940 159842514 222330157 698227212 738235440 686798654 725496424 101370205 423386038 337408633 766744747 294032264 656656489 275527287 678298932 942749798 999226897 389954505 806577288 533597601 720201929 886533976 980058951 17489274 102606315 628443760 631806644 277703098 471131693 435215048 729045009 877715287 945797369 490713746 849322601 38430590 820047509 325491882 894906482 833993922 898830492 993435399 998031739 60235646 987395590 804448592 891504421 777296191 807956693 70824953 558037722 921340208 975154719 240422689 292202579 103164443 186359194 979983259 990743373 992252456 992334370 182850297 959105231 128561222 170440810 125205835 816477527 414543935 417765646 222396395 769667499 734121249 787203810 227231297 439015373 237667267 638263939 327359316 591313292 966520575 996763976 857044613 928394154 367193027 902104198 70736877 413737119 750750481 930624733 348759370 582306557 800546268 873656386 389555806 584653888 62485911 707897729 991944508 995298852 309852938 749496262 793493287 900284860 62847867 102696030 397696683 668563893 800229789 942417474 334663152 522118940 94964816 846149038 792774855 944578426 849245687 982851455 907924904 967007514 824449893 837649690 515536631 582438668 508562359 769644697 252346755 368400142 272128263 736782090 267647301 519251994 824559276 863833255 911463663 993149750 209831539 928157960 597989771 639149984 573396075 903370776 338066001 770311049 543487096 971769822 643833824 811495537 652388182 707615683 840788573 901682621 898319339 952825696 835824319 916031467 223913720 553840077 961557871 975488829 393034970 558233414 988407619 993188639 369606567 773434313 805781914 964105325 187695853 218505754 713044553 744909865 784424537 833674173 119888045 232970403 323207617 825269780 600130191 987195586 920676491 924526506 282874888 570593033 416221022 535671039 47921630 237820467 695215338 907099403 496595699 694160493 62476152 212986617 443686938 860534992 443688282 798995570 31663062 402436520 435234692 992262648 20657529 434234797 66981789 849895942 925124167 963071917 728705939 962233124 192599787 486588097 23287923 720934681 540287866 763664817 589865684 811005741 207096261 887849413 228954849 571319164 96630212 955674819 231688276 441433665 525089902 676563185 835646888 925377988 591009780 771522113 972515032 990185830 37848888 567398036 184779599 924368123 435785627 525818479 201681790 386846806 711691241 862444051 898508590 945435958 988055469 991126317 936360195 968568811 393999930 924046107 779911542 986261405 231662997 567200800 401785300 659223394 86614733 682330703 697793452 935297046 513773981 973208361 709139136 765021439 194796958 197293641 547830165 658785751 344128932 763589416 866891314 890387183 771118089 950030076 329867378 748737306 356854847 532073235 754862169 930953103 106221684 578675555 3599746 52856884 392864720 902676254 432132768 969234924 560267117 595360240 292765685 617345714 819991218 893231236 145582826 326267851 130630662 541832487 129633378 937192070 887650724 944353647 782552334 922347982 873266202 989801847 102712377 668284281 69649855 459963723 262877404 913303019 307874752 518909298 199317364 692186571 564454572 836314123 376511721 891048541 392618319 521733500 464701846 724489556 238652394 418517014 45054514 311693496 595660832 688247443 320379088 676769586 926352946 961733373 613842402 881372480 466049307 748856865 65407810 816118827 685487723 753829001 662727996 975190554 127149875 901970247 234715383 659927959 707901812 962412158 430803402 993700885 941837517 957167654 327195364 806005710 392534561 991525530 739188450 919627849 321534905 830156444 822432789 857221471 910681936 941550517 91248018 273529680 413822404 871037864 934586123 938809507 791893439 841871741 421419040 542711817 377429368 708952293 67517568 897424240 628553535 958651225 909664883 917417566 873411113 915298585 678627763 703891611 782256832 808177789 413139465 524775562 287594231 317026205 977464760 992889504 957276936 959315672 142864307 511336665 619522868 678855262 963728542 972332409 454199233 970122147 685391350 860347295 476922520 507896355 729852879 874023025 623600048 902338791 791133386 808181677 637034898 858970579 200623538 313949838 456140040 983711785 259265145 531690277 175903395 178593717 720042754 819586959 565614780 926009376 881551271 999705822 362739068 762155961 157746488 179073613 338996256 515994317 577371028 601231299 213377177 340101207 365639850 467304764 887308688 961899073 279213773 559711538 666674658 977151687 570855001 909609491 208345961 668342654 598832856 647212388 620027254 928716141 495749196 814998791 662238456 693278643 512181498 766813664 301329104 819713302 790821461 859414264 619979776 792967528 193101729 768709343 698213780 870638500 205439560 508668923 551365788 910876151 297380207 342131255 540417867 823616661 882131955 938103354 399074120 646409710 894533547 985407828 413182627 961710058 720054962 824943759 975429986 980138023 963584802 988422134 783666859 886087006 272904068 879195774 360848457 370219117 504400199 578821790 493181487 527165951 444917830 955065309 648219388 903027342 390170489 833862438 527802636 562574295 98327237 718827250 260021439 859455806 769849778 830812805 731722221 792573689 803149607 991898198 971908203 988063704 232368493 875312435 424109937 923134704 735545497 983533534 294149686 450680791 815316316 850012261 949010130 962847131 294516144 666976395 970609980 983056456 764681006 952511981 901049367 990487586 5697808 497680690 332259357 614518893 558300841 764689092 149722454 231262032 741398625 797568281 482052823 666228637 590368976 777400320 301576737 946292676 523892936 648519032 216109601 499422416 937748642 988303219 48000099 599274158 152783628 882949360 763781996 822087205 346666324 916013074 980127402 980128331 58518109 102665409 41195084 871971479 641592289 655641837 815710975 887932874 455713635 569498324 253909100 662788204 602721948 955985920 399340747 847929430 768387819 859971266 181673464 692330441 653168301 990098483 319981189 935503127 391651136 470390645 275773877 574305000 36541176 575993574 255186543 683500628 360035570 603004224 227534736 274234706 703611833 732287001 590639226 946412104 540165911 764273538 68155007 874428037 781890361 784997751 814077432 983871327 561542040 833228002 635556260 977519436 703494025 752473752 274704966 806129093 475830229 547969205 660039563 667381779 584922476 666431036 699239278 956147524 365957905 940870975 325688473 682952049 185150783 526301859 867074102 909683141 141100639 951647048 958731640 970800189 483964934 751500053 197109102 371625211 339716267 511356609 108525934 936896356 221084506 721648788 882595148 970905005 858772682 998065726 594541974 941679824 8178829 699899493 548074586 583341625 214836546 907385608 604846409 649226658 304147513 954429633 52052051 678755442 296585471 749069759 107932682 284628379 833381039 950983743 139371680 266486360 333626399 423283232 787244973 963962591 579874002 633059477 965637660 991036389 511510309 743487257 807789782 949484222 766791630 804215011 342811041 769117325 391444906 703880411 533338043 537087465 247318043 727116034 148987741 549513692 868479704 973946088 625246708 984437385 693751904 999009154 640455125 685562478 689620411 818977910 705322194 737066292 111286965 761322152 783016018 995688661 970994883 988810709 307938629 970565270 830481878 961538936 387595796 575829315 133970493 728906411 413379419 733214786 608575923 958798259 518941116 835550483 869949946 941173471 907938852 992342869 806506071 963364215 484626473 759628478 130705344 925862454 721347766 912406745 800020801 951669511 354377653 433917615 818564268 909262522 297625083 464210683 52786133 112403676 978397974 991350979 978596287 985549349 75313938 162704616 947083910 981597484 339524124 853789753 155239480 739136050 158959769 995030504 659491135 674931620 71034218 583951489 363753774 405603769 414160666 740195819 760298591 804512909 97530414 117996214 606401942 713614253 696806446 982855295 58617757 114779646 182476306 431833947 823825998 967218750 953270854 986945046 580114095 989405967 486670447 936913840 872323205 897978431 697543250 947373276 490159864 999910720 756712821 759287662 799323444 868952802 122567405 162566681 652371097 790710234 629801279 963107087 628381125 687754975 136011292 297923487 98629691 807877603 774081666 889748095 879572723 908685053 73270582 322650212 986469203 995407373 196996933 668448975 134657636 238832920 347601653 931656927 27393579 899121014 929761352 945546107 810118260 903887024 521143525 701726400 750942255 771785203 454096998 540564303 301600532 985954443 952840512 968847138 582850319 686732978 830958206 928787057 523777760 881326968 316827985 773952120 241960355 620509700 331939585 728697364 215672686 401527608 702892915 918831851 496690599 848444022 553156757 832211456 326715159 868752431 463068043 601832290 9552780 528453555 412582702 509549425 900442998 972866496 438397004 708328900 84878754 106967350 907355273 917670665 293047058 886408922 599736968 908001471 676760959 876774650 374891156 694023394 641630222 999196799 687087227 688323135 325408333 545158021 402358443 804583251 951291256 996377402 406369860 973597772 763238973 944873960 844915828 967458143 433348858 739759099 913126707 929120615 762847501 875077452 285636743 303246837 2161754 909237957 429437476 798036606 816279758 888330751 765494014 776860154 836301556 987056943 356632389 673925220 104332308 357051727 875171779 990184411 486779973 768402843 55489198 670320884 135403611 830680175 553071590 843964420 85545067 313322087 766184935 958919540 879794767 987805231 128905283 300783278 386208426 850603584 169796068 375118016 180852371 882153910 639194095 658164906 79553815 647974635 617785857 992208361 735838984 917653909 431721416 524516019 298577796 944363140 743375321 789914408 673473563 735048755 293704366 734492980 38449069 791422045 636678835 790540840 368837344 797854061 253073920 527211588 989552346 995041590 932080677 946335073 331802914 386178835 108702696 207126259 509327703 959221360 890917158 940440918 363474476 485118041 21127045 275874466 386686541 889147039 842014711 910999873 256201740 999527276 950340029 990202125 702018194 970073482 119650325 484262691 918294707 939675651 310887900 961923680 655929260 694870047 947505654 965968835 322205500 350627102 433739134 498754597 867386217 876504686 467906385 867013243 673964544 786517446 839608794 981236969 675077982 825583588 869130890 901593139 615601714 808747387 672034172 800880156 54336955 500707829 776018713 883981969 559275448 767327802 628920717 861853959 543494620 646584414 743812398 938946027 628933034 725665982 773203331 902467245 78819883 216024811 18010734 532072389 920017888 941592873 360592951 632614172 153546530 688411864 617062909 740323617 178510637 991574069 39923173 508929585 104400816 510101578 518563356 739534294 705802917 724570705 585498329 799316789 935088756 985298151 773728180 987371136 606507062 927110077 867854137 950628272 850907305 975832916 600253526 970893167 179772365 867805052 539374589 821018083 917953292 940733668 139779907 760108867 300349065 770188550 292469825 499130380 998035607 998121604 773042961 864838499 949009764 955296497 498853782 601092932 875227152 897847790 192585517 394802381 254302906 857894451 839211427 944970012 459635538 895290776 127455991 974712536 544301577 950243658 45755068 461753022 777210345 823846076 168698825 323240802 477783502 481640522 123907266 302696663 420866049 722130729 236191631 869021072 256465305 978275794 921489090 953422376 242055816 379309053 128477498 236666158 401122152 532853122 230083817 275843935 222205078 275277912 296798356 787206425 336077378 795474627 389774646 897485816 473306513 649058555 746950513 826271302 980559317 980988798 883056648 929463210 986147605 990456326 277948972 681397489 418395893 778653536 400611948 523853601 811062302 981443163 396350280 946702876 989262751 997609539 43043384 667562330 201240729 618046896 583776071 653691431 381432275 545363416 896176313 907924469 341670468 364994003 356183878 999014289 176069244 737373427 853848361 922203697 69741261 228429039 775546101 819699742 923030927 962071078 232893891 646120776 336648121 799719414 454473568 655123568 889007319 902213125 224932117 583497919 89126422 837750331 477926959 555766409 896855922 951282006 772750640 867928484 632405864 681875202 873741700 975048986 207908524 508146281 801104116 970878366 39261062 535984479 810001275 857044659 390968016 995504026 165639882 924997648 990330835 998271279 459255560 949860601 431136049 453741838 374757500 629396937 465398468 561444175 122071606 586764959 127891543 422103828 729870235 824674573 982900589 994195503 651563695 723419583 989108710 996314469 302374160 751017172 617447148 766866215 90580650 437455223 282543624 758624593 322092319 465951510 883136387 959504387 203679629 572297039 383226576 465175097 618645004 750582709 826256688 863228900 575952219 982626045 411445198 703685411 130895308 732575192 123052993 702783040 113125975 990095801 757894106 844428258 238211496 525183361 994276007 998453248 594692439 696675448 554110736 894569967 423069898 840144798 696596442 791934671 489020775 582031738 212498467 377134536 841997345 842138983 857043710 990573309 401627199 404437035 679856784 880016048 32955541 640462557 794035633 835986207 9127824 224801238 143199122 149924009 340461687 566630598 337770871 683791809 158749308 405508822 429687375 960728122 741156631 940793642 327040805 865640257 768462999 996465729 864579851 900912918 131635751 388910499 459787287 937348058 642509674 923896601 310374086 974876513 135785986 722321387 900436719 968369283 179997180 481692963 796227126 851370694 911566005 932411990 142867892 622352758 312520857 617641392 266372872 720621811 621895304 643603300 694398463 749140089 182821887 686273170 282029172 414470713 215352907 522784551 193787500 526036132 156419066 495721953 942941530 994122258 118975398 170102696 485591007 605563436 693352005 818802782 952664732 984434616 798059792 922411061 529673644 832691532 792538652 833165911 1462853 772915697 645182937 761292597 428604022 697769691 99588600 558650907 765764609 795849586 828104421 995926228 759288698 949480442 695099172 759166361 874456756 962038015 612103167 795237870 722191680 886885864 493018843 959082005 124744832 751456587 972483826 979641918 552653109 699444407 137604869 733789094 167570155 385123346 531233149 861518901 130682866 751406494 285889557 443459005 852328217 986142778 687329097 922442931 273900319 389179233 708094130 897087890 941743767 975896924 809878670 886646072 838811286 877907877 501766758 796475137 612859128 913704042 745091431 870507017 903970649 949731449 921141894 975309323 29031502 651943898 21291748 445068503 220736871 688223874 919540858 958336756 41471782 880448356 580444353 767261476 789221568 966044145 989565093 994937797 690148945 905679702 126483440 342950330 37331239 751640511 690431008 768235044 879621153 949592766 835623402 933781074 507250964 757725558 322150490 990436266 137948744 819298757 609350339 970745087 535996303 641792287 610656446 677817370 294633236 493532487 411709290 723212514 838259499 964322354 358323156 513915937 294169022 866804351 53993536 894518120 554416557 896894152 169188720 990375757 310143611 911543912 676138447 827650132 553850355 599095463 695276833 963134043 810978465 897054970 823355238 930954766 65963623 350722953 234377583 800694501 945587993 951604482 298330824 418303564 827724412 912534492 349238007 704423792 974641950 997016767 190124978 657493976 867866907 986825572 408425357 515214022 813064856 898493953 773882686 864812857 541751054 636227896 247517733 632108485 350271776 893112205 266596438 981181241 346921520 443122532 251343593 549309604 820044466 958030852 549147203 605669042 23241799 641350912 295649452 561063798 20126718 661205851 871046221 962954965 898721042 920815029 470395539 947454541 235017430 906615231 113110685 124747403 143609926 262851990 326903758 926640940 246310146 426738019 552690595 651081226 578984621 860402577 817846403 931030355 415236533 710225548 862672505 904066679 484603302 532098074 739411017 868540331 581276185 621067631 664793048 950959710 190127384 544825002 498047743 938474810 737839755 804377698 298000864 339527639 963254922 980432432 132479520 304924368 12002856 544113361 284742059 990606315 492661078 688781337 321546707 720910536 607278884 924618462 104350864 357450375 913878520 916920294 820468565 886550275 18511402 670151525 900847700 987107123 756460600 966658940 277732485 851624848 547116577 709858713 603445100 838714159 576022867 748909018 947963424 985642724 433248663 752851284 991492205 992429195 392894276 446967321 864855875 907216417 419935639 598990314 908802215 963183819 362916760 842207438 416771550 946523955 58998832 413567110 35957377 536956744 983152470 984354493 535386058 983135705 375032818 643687670 957242098 963738501 330133732 438254004 702055094 724285265 18046238 199697516 565673195 755551939 332462671 383882431 199982456 271917758 492824829 802350340 113692960 307100795 712625065 807010745 142331157 336773452 298168512 996069155 85543450 663015807 223731477 762956757 254440213 599276836 477290617 945733730 554917579 668415630 324324405 904491222 947971809 981603780 855636703 970935586 40174682 845397483 698801869 858492149 948539380 952562026 891133554 953061534 68969135 235766563 38789197 117014496 135395123 544097314 835618726 867152733 921340214 975899231 619302696 837536262 652547146 654879898 216227076 950004822 332127624 340929711 243749691 320862148 708406344 967746059 488117603 597078127 493399258 524312049 115126917 972677417 756925000 774574008 783071714 852849257 827412786 868616283 7255692 561703150 394941673 587102913 30694399 349939361 191506912 752011656 854208638 877342606 232660407 852520550 986146327 996266073 199704831 688536819 310308126 459576767 956120707 992999787 511479054 767395968 503230261 948718248 308773732 321584233 299043913 796606841 990937325 999210472 805947063 880551914 977441983 987220804 222979927 900336815 51985134 69998243 647900751 854908352 30308408 66409795 272746796 729585156 520576751 607816248 748278519 882413728 513851849 762137957 630932207 884901377 662762501 939275200 609117182 955930029 78687104 894190012 540903901 648306203 92505030 339271145 756780999 760193763 852685172 914882528 435007384 557984410 542220982 943426420 673451132 707663176 377082412 432995296 9158015 438514340 365717565 979808218 117932027 197112017 480940 873132059 478851322 931452471 15599876 458732154 571200689 994817801 983152487 993738591 282029162 601079957 201406268 971658778 204589482 627136822 949424748 960095337 472504888 940596492 156456548 337075337 637318936 776125473 551710649 578661239 36203705 723306747 491613881 687184156 285621643 649989599 516949904 965301103 454904564 663828517 146301263 286453604 171832167 863642448 717662516 948510156 982263007 988752342 811577455 965727730 153844382 816553797 619737559 987405332 380772460 790548652 769385367 944018404 245331828 931258548 822992682 826995722 729269344 994425985 818140042 925819956 184639879 958077829 766872115 981991609 89191288 560717541 307928259 336269754 949099699 956974197 701748971 975617743 76899094 399563220 928822893 972194764 812043169 841298325 820580390 935426356 206691919 623227195 780356212 802852084 398348676 973814969 705668057 903307123 905792302 951230171 877848165 985313770 219391766 913060138 934981155 979907524 627014474 927705866 316599982 358366710 115498506 978291062 146284359 590496144 506908021 698008870 297949492 408358038 525519137 811610248 343191264 587170427 765747302 894081059 296253892 530931179 231252824 956300123 919573369 942492536 416626844 430270004 825804586 961583626 421384020 642616642 892923185 973003512 699669855 985475521 444797350 980242571 851883506 962317719 976438157 976691735 816416003 921504805 972527721 999371027 122338210 267720996 806591330 847436603 83330693 520258068 453410473 871889778 938828580 986080576 980715230 998937966 545610944 797624745 90464590 802457319 851595763 905412373 601625714 605699500 112274697 464635607 969985411 999456540 359558039 476407375 805480923 930557031 100970672 193207150 988348213 996905278 471571429 605850636 136903891 191947747 42164941 360427469 480241470 908371127 769956041 917602574 322360908 569906341 675088352 828494297 177608429 886367496 169489063 727150133 245931114 636244195 448577005 761046323 882574457 964439445 798193418 983430774 185930822 618114290 133261556 483780257 266941050 287778659 476079316 726293323 305437399 325920162 516198116 556793877 32687601 598892505 424054062 920134372 676791677 798366382 254255966 408481876 233051948 843372853 593818697 930785608 458139824 510146085 986818803 990477375 575505604 898424451 712081716 944249901 824311182 869004716 348135744 574284620 953690496 966666915 860530508 874507911 332924718 535411366 857256462 922207512 299900501 330670398 834026755 869457964 302132680 637921635 775185149 959289627 690515427 764778259 415847978 918749048 18306497 761718843 929700831 977147332 392279544 618071138 84944312 873253435 480302050 878468972 402406341 603578314 168872772 588265510 366157763 613068560 311780393 499996594 886322929 917370075 200987019 513406062 955874923 986999266 471376897 653872299 954165619 968001093 518432987 564162845 920502054 971816161 257467693 471965554 585201419 723115055 336841536 904438901 792317613 893912640 891576665 927416345 379419905 857333154 844921885 850456154 911118262 951961652 839938413 962521712 440751099 482077463 463671687 493477933 717657923 879534931 698619360 883403533 311915199 919175231 718369056 997368494 609696643 665287214 138171003 267658058 579528818 837038761 858399548 994770227 716339886 948838139 497768727 983625508 11978101 736207546 213337083 617867059 954304923 972829297 587319465 648710615 44777733 479971040 886118329 992459583 602792665 997539288 521072008 788091237 104546780 728001561 850424938 923161679 476643500 678429663 96601207 952610975 923677007 952749177 138070129 650984653 864668942 929084448 896094236 981222947 297379525 402907478 126685897 849670431 214106975 441487137 953736349 964073947 786726207 825147778 344225550 986336147 784777145 840351156 404916070 411858012 558489313 781479529 787477286 921853349 836673540 896773145 582578088 587523068 881086684 944832042 189697898 534565166 656365186 728069214 541178678 934813292 356579440 397638299 537636531 733934765 391006309 996588934 145150748 908783563 795483148 866664754 883882200 972054132 828884289 854567796 524590749 938392044 332918083 439024944 237585301 408712579 250353158 680491724 671002060 767094367 131118068 388503814 582503923 828031397 409213271 657901710 795518867 897768914 955843981 992494220 363607033 710062916 161075097 644006394 68310225 70821873 473768187 826871757 468203005 968100867 324239138 855846935 934928241 957414472 640971745 667086880 740980998 833729492 946357130 984082003 921022077 942739810 926602044 954085082 932812087 956622211 185098139 355813108 275740251 856316825 786928795 913992093 455375032 786792009 552598101 831441354 12813649 234522155 420427200 606436516 807473629 917095088 362012104 708828766 484252597 829194251 173124710 901557499 659577514 885126843 96503573 336505024 568170166 918704651 723222850 802825413 803192598 970629658 578724303 854427562 607091846 871964804 645772659 882070583 651986379 982210515 55253181 176530804 993599738 996779031 683999913 747371238 730243652 942973597 549632314 857175974 957244873 960836684 174976094 709330882 112877516 852206332 839224793 881245649 350956877 744895021 365612175 743862200 427594076 443927410 151855010 406225609 332530529 717762972 72813747 463379403 66215204 344608736 856989305 980011255 222225236 359467646 187875738 196599956 786348993 865687516 195236166 525560973 150381168 708359843 135595008 846410639 694309802 829148524 370335204 385900878 350673408 934142073 815758469 858001110 590494531 591337004 39185948 759451830 219812606 505693347 48844732 574097293 743768606 978582673 223097742 711524073 195360094 935759412 887056655 932614199 245813485 909529654 596180680 815740340 447509056 881477271 138928267 930704511 459870206 609491253 634473610 792875601 333416086 579255378 268987499 683137241 93117179 596620372 649322981 705143400 954292196 997899826 599444661 941066861 575281448 774936158 600098559 756561188 298208509 871804057 81533119 907584524 345332375 429256678 901861608 997413646 613305602 832581176 770234621 896660062 425402812 555883946 188602956 689246109 439905012 788397454 798538402 843408604 393146794 970449628 465579015 850723647 446121136 746142996 343956101 432959019 930950721 999427106 467864819 691632811 886134660 935209090 206558576 348151787 267806535 709822926 991766379 998738090 505270993 655759909 286140987 752674176 259550061 496861738 647126326 930431161 835041458 920057383 352716657 833022170 585673957 627317513 571614552 684786795 714080198 761632172 618497843 922964579 457665553 663322873 14539762 642312647 401155374 464489865 874925116 966086663 766663192 832783350 36634022 909727841 595758106 813025578 778715210 959395534 6758260 870372095 509241358 550820036 368341395 462488223 12591348 519553287 226788771 460908506 699090442 788780954 838387606 908133235 463103234 965009078 182477383 280051894 603472588 982735538 267229027 917277353 414172484 781512934 128102305 135029549 264516203 418100264 711086631 969139479 639041202 839817303 371600143 841672124 207773979 917399052 867689772 929452045 184026814 695064148 647289902 785469839 937925399 972004974 481814452 640865622 558216432 721319604 496635754 827571876 96452621 652828657 932660864 988273519 261032829 294628834 970570965 989755135 377057725 669437872 515178558 611962558 511735577 975328727 961332612 966574011 736915940 962390084 248273879 274447438 397460812 789987462 31985754 957695157 151868988 910722973 43931360 968826403 191353764 380038552 800910367 806362697 582726503 900261908 121590756 812945726 716700641 726227745 262985 367027950 357094129 963830839 761363154 796837099 172029491 853363314 881355978 902224376 575778519 735716610 84517899 687998334 710193799 798855550 26109963 670647356 960553375 997319574 551228929 738655367 667085906 963065487 277324734 876530850 258395113 971265286 758948417 832503944 3970102 19490763 663946471 767734062 858191092 967388570 841577732 952809052 617563724 632280420 229260534 711260927 93422316 729843607 252889034 368993815 207585751 924580886 289878024 483970337 995649220 998193064 769687936 804776754 907927733 959893704 226979491 391764808 420835564 808850738 98405738 715415920 446846925 917730998 198835856 843585440 178233571 574500891 214875260 948658285 971448073 972963142 632356320 721104499 712136615 862902358 590781361 764837163 597683870 778936681 145816745 824982047 438347220 811898925 113257107 734059834 550366988 717021536 7532879 76534001 507571638 860644025 650889644 659999792 236610260 583589505 577523635 731069539 123837591 398718264 746233710 845393056 304124838 578482385 951202618 985764728 708277376 962578158 970983876 978072973 338882982 433776511 305837769 668762885 279960435 466207798 69368290 133844046 156418640 807466541 525643659 642788088 699959129 704677865 14703139 960102472 241890445 287118747 513493940 939465275 303396354 611588482 140783878 900126680 772998905 989733596 66440711 723556090 643245655 870123710 973716938 988110364 3812585 815431022 929616804 930881741 217169549 916145681 630994234 661799694 393951310 615799076 617477911 922616335 998750783 999075060 335488407 947923538 316351327 868484632 65638191 754537057 776435196 822854033 254615103 389763636 504079770 718821382 132852107 139242910 83736890 536043372 219933613 459199639 58076240 526480188 376521536 981355148 957931702 958232619 98052239 141010288 965809243 971284994 699853095 897581368 548950562 655127181 476669661 892526432 774685517 829847325 288395196 403088932 792865472 819656667 131802152 700378195 62410112 820819586 886308584 952860516 604890547 867535851 809864373 848894030 327007853 570585642 325989185 895460482 834136733 853890294 352843956 729895413 871891247 872474226 9358963 217088261 155372479 820310840 134959850 150532869 433774795 875278914 382573245 451384911 751008587 956609166 294235041 432661586 636774101 826710876 394880077 616762123 266795987 341900901 28684744 105497938 491615142 498271080 598758737 967582556 568273469 953194242 491300113 586173529 425005398 947735238 345259742 892102980 133047675 626885492 485618230 657612708 807796564 959143926 381737767 848935078 403112236 630598782 568395932 611428517 780867413 874892032 395196896 737284750 864708226 866137297 382557456 627798804 628337812 970180070 193976737 440367465 650490623 870508765 686215273 798670125 408907351 606759003 616228303 655411173 865780630 927715511 984170368 990208871 351362845 633366076 528542379 624409508 800560910 980769075 608419442 634377119 594366749 861798928 983168967 989004532 380248630 844170276 289698850 856077849 380424912 567181483 795598661 938441076 982828736 998566452 278725553 676067731 927797479 936360523 479872892 695404152 885540189 956636822 164816437 887442478 574931716 735595374 62464538 345589854 865074732 931656335 931494775 962535579 123775985 569791275 620523623 763739749 956371457 964493182 171325633 457356598 968890963 996862475 55134240 733537859 752617698 866881064 862142195 869411403 718803052 719830815 897860638 956798679 577111143 788591044 836329944 866763130 827292837 939383549 678278129 881095377 91426867 150368503 904328279 999969200 332448629 975962898 862381908 935460343 740843377 949353032 811423379 997830022 616224340 896658997 822147987 981908810 275005571 776283321 822994312 962347199 615632126 805049383 419103447 881651347 21639789 190716020 581986205 670946674 141698994 787709345 888162852 889599292 12695703 407021025 701668755 784724268 955525241 996077134 729070589 752177145 604565573 773420812 216936419 371508466 74326499 541733269 88990326 983878585 819320977 855889393 546298478 940243928 389933095 583602358 49938648 194257136 402089055 730127896 840338724 957059725 821162380 860463263 902153472 978170168 100681259 376174181 211465278 791809379 37768045 998125157 411314981 440452210 879045644 902577290 286290569 616866091 415060147 526050338 394872077 758244128 552456620 957783913 361622465 594817611 25709334 549809734 638829022 655983419 83289089 363231791 171790520 273661740 334379117 512949088 531912716 986172286 745202186 790331715 322646210 620259521 435156939 855904843 611661145 715506298 665970766 831961949 541412762 542647202 763162175 833289706 676256370 782285722 988548142 995394123 738748661 744439489 819895842 957678015 690490701 818931910 756098114 856253566 112220575 294034366 984465675 989727089 883065869 984261973 751225139 808530210 818934410 942248183 263206399 439173971 706139812 785494776 202960659 388995128 965188323 996311039 150626819 387604522 340461217 749029109 679106698 992487594 150919556 569674729 635024973 933567790 17242267 881568927 558234315 962112135 98412463 928083244 373759492 672072832 272306616 530549138 56010734 285529449 236129643 640455804 665741168 886648597 463373115 637965617 964475535 978939808 425506297 622883168 823725973 952468573 356963488 394710786 812576499 907527286 696303040 967636109 642981423 752644357 888801342 934325148 170298834 598932698 794312007 850192161 48222470 390670565 847421916 979065092 646973780 707797193 485566574 900934140 112936147 751557667 478093540 852247997 478643978 727887408 242154954 967210284 113221244 442784887 260377183 307720476 586788497 668970291 166811363 223203610 925075152 977377726 641144448 967889110 867549422 947202177 444062752 635535242 150808437 655378953 626645809 661196789 281839834 484916072 850475605 885412586 924707372 984860541 661989133 885661303 401200927 481346114 652728824 739581327 832142969 868197420 136336825 813281718 232675426 902431296 184161351 607756825 622351379 719935374 822166307 952506886 599460531 851082205 427463106 972972811 107873203 702304375 778841276 806698770 509734587 662378033 313035145 335293251 983784869 986115916 132795551 179024034 996758656 996982235 780176771 890999853 858905089 896994888 905415270 943838942 706681260 922690288 732263968 771845934 710748652 906530810 127439609 448636816 660945979 901101414 709939260 784616638 381113372 895987852 977313048 981771628 332093323 561112676 912726513 923597829 937624113 981472728 673099471 888306666 320124616 321849890 396083073 523728322 280534184 744752683 786376808 787855456 918311320 993859021 915106671 934358768 228505784 456296420 344299377 386588619 898715869 987458865 122970430 419066477 462753107 634620027 510483855 513595602 599087762 964005491 799595318 908458111 282196827 335816603 247215394 277441782 77050558 935668761 90808186 148887833 944400127 952319491 976449288 983498021 746062308 847850913 917717285 969346229 132591556 162082258 660611767 862430589 307295408 978930910 592667452 607181036 101258501 545434479 159222057 850778994 916023482 923696097 540534159 745569298 709223314 965053463 701130131 727211673 768329389 969117288 126284766 451265136 740216777 887008630 342169786 597205405 557865778 588811724 353654927 770679074 444675264 924625859 991112882 996787303 186697294 701022547 809113673 862257035 276182691 695298008 867745444 938458611 387862143 719353144 805027810 921945481 714747807 971677876 100612917 344297545 500927631 967879050 154508639 499038952 595218459 900929223 939936146 948054519 475558772 672063367 301310938 458381795 194024728 888051334 645167807 765664921 389581471 405646547 342977017 867787780 844285476 967785095 873797502 953921943 22433453 341931009 88847163 172664486 634882655 780860567 959228971 981427124 501534354 793416088 674052833 859786411 789435082 913518758 378701465 431631140 79885952 365575696 850469707 946536904 882513526 904367365 708396970 888320902 978394119 982294904 921221581 930214381 426121026 868847241 1048883 84583876 660467257 793135784 323355022 782667018 540847050 704982878 511284392 960521862 142462992 899950948 650678867 817785187 678928976 876923699 916410112 930680255 621732240 805299022 522782848 628153830 438091418 712205505 850168548 963342630 957662881 976155319 286545880 960333276 555530758 806368649 403808925 542157878 18930300 308000905 856212711 939314624 878765909 939046155 161194325 410017445 354864263 815900658 55503121 426504239 993990847 994854602 217536615 878610922 959949258 995227646 746882935 789331545 245153083 288254150 390828517 958418739 152751006 498911938 498081544 777959724 247151207 967966219 561865902 690334627 28652385 180591956 737877555 870666255 78445974 301293794 208278804 631652402 109752895 802195588 839873148 865917448 95604752 442821999 433112377 770373867 643326146 872428840 698071098 789225682 652794038 998013314 785145386 883665292 951043960 989467790 951064251 988013678 499217956 629428665 827144722 972753997 302614291 499332342 362447390 588838367 902498827 941716423 528161429 772395021 96571014 854857320 845967431 919973453 488746420 651183303 337856239 764262653 272030136 616209082 363046070 563256144 199357719 852474363 28130713 398903048 713027526 863592738 70264341 901515783 997139186 997785579 650119470 808854455 208918113 268961777 889218838 914487252 952336413 974386291 469155157 511572769 735067629 820466218 427380192 747271779 118234447 257212907 895669023 904280142 678352327 959996818 515740094 650995679 186179374 300008326 740557537 763184435 821530459 825400581 904407732 935122803 503429691 549500234 68775611 156566957 800984314 971249851 123408721 742297792 249494102 943241562 321363014 689372016 450386689 621539520 658482260 922872018 570219836 816588541 336160481 342306053 939302271 949996309 759785772 884311225 817403087 830878947 826782661 928967572 1843268 564425684 802028510 940497439 500310359 935588001 536447549 943100638 895336183 936179466 716755679 809500646 310493198 723371012 416887253 455419567 393514333 437359130 818275244 897533670 807112860 817900153 503583564 584645996 651955260 714300072 63124065 655547062 456265358 687481553 763551418 977167642 611969521 690611270 448167895 909955142 925605575 972439383 673397457 890190571 93123318 851289216 415452415 893840010 102771810 996004421 873543691 882539939 577738356 704198547 312361833 391879772 704797122 908263333 259554197 838099417 590399257 690973030 721510484 993200471 820554518 862610276 351593102 781552163 631854477 765785310 249032718 419602540 440438737 720844584 100487040 557560570 16811334 230545696 912793521 977050940 257673963 976357809 682863990 688091110 190529952 803763637 748804190 954501458 423346918 684856876 593410414 897360569 331265248 617553364 802479047 930232283 513687219 676217011 670761618 908643941 487240773 958270983 689424466 992985869 517944522 642916798 640101836 932442744 644934517 827915832 887582206 902599867 605026371 710340449 267087780 580784139 590353963 682566774 619509449 831830886 390055979 608263395 191607995 863266834 957958528 958052809 189770617 875046813 869138298 925778179 598710341 638411500 434415975 552925306 545066211 902485063 222175507 540279587 392258507 930584875 838124956 926011869 716250061 749672751 527507882 980732231 168644738 310831813 325817369 557364273 870427620 895374299 950154080 972298647 13074737 269219170 614070364 682041795 323401622 655236496 44125244 512972247 37373718 913794676 440170153 943993786 774326076 798178066 297158123 477700024 225791814 465959245 675330617 683265330 50895839 561602831 881726682 944931045 543501063 639203318 375322998 392161302 5054265 426445953 300157824 614477814 224428067 410053136 892413944 896321514 729986779 930391743 40835709 550445727 677044341 677961482 156763093 403409358 849021456 946208124 530555347 752565984 483601984 964564965 964484306 979711572 61830383 350475894 490238739 590632194 604648185 751314595 189956747 315381062 629424367 652140081 317929586 918746048 762818626 954965001 269018369 421857157 423046947 477785191 718497917 811744630 179959239 588039380 614018197 726005472 625548486 695721194 190811031 891889597 500616194 716138087 734215087 883628777 488411754 611531858 944739238 978385649 563184633 894703687 516778307 848492364 661760154 985982516 47398341 754645143 301011073 316620875 645852832 784995121 952891717 972549638 223782241 511641371 893390517 969705851 736793195 938413805 211376515 491663459 48973365 338579481 201718520 829718822 913041872 945814110 933314835 983486155 443270284 846495432 730318648 968390797 642743504 967348287 903570534 957393100 48589166 686562286 118066965 330459434 210367729 525997235 557447172 628348799 977042733 984833435 591675413 810824116 493264795 911100599 605331735 828627424 686378882 704448662 862589873 999701139 842923121 943230430 165522252 616781135 10237857 565935441 202062276 984294871 350921703 993294827 665799384 685043226 877919450 908074151 600135039 947137818 74930304 754025580 643551966 971006103 144699430 984862911 422849026 516975849 96596738 863105198 840049960 927343569 114357497 422750074 426559634 723539223 385855003 538433613 631562847 823636793 379288574 995882150 549079391 561609304 679908350 974342809 40546244 197282020 343262471 483039766 107950343 915629583 666322769 777799519 205611039 536314500 661187936 807008947 567731322 702909611 566127028 811169373 90868198 549997158 748010919 829363384 219406976 644295572 137742196 832212957 946284500 965081438 654419894 982437221 61744958 947836524 826893156 971446239 958646781 962681897 692242964 940320984 558896161 621900672 411904358 504541967 336876237 367368309 3264932 603292728 249094480 622036040 439085697 899854963 723289021 941658030 969784153 974714033 183899025 972584812 736305617 975336818 828445260 833756708 226930361 544923350 275536021 966612432 776847953 949085383 583657305 981450196 634571653 654041919 336553004 623574872 345065099 449111990 327673758 926883315 687396406 692746985 508439169 670514852 426686305 881369061 250403399 392161382 798625311 820529689 964918006 976286719 69959531 187355169 563027589 615550218 865506454 898286745 212182495 466095166 589703350 622349373 173650750 620637240 784774811 929908631 796441631 974526545 925763327 968915073 589922335 777509330 504876467 510529606 267904571 647075331 523705617 982233413 141604967 891112167 158527599 575634742 887660771 921188015 68793916 542828149 312191057 794966224 766590294 909895379 895969062 921579299 877346751 984475929 678172607 697105867 324758663 793943214 902784822 965916251 329581967 747712781 545738338 896507670 25933475 141352774 874589992 907550516 455420050 547858393 606568314 865475182 834077398 885248504 562943843 910365277 50471594 500076883 723742739 984949843 325704483 706155547 486948949 633231944 206672166 740445212 535033189 838834434 434140212 941179709 814535527 895659955 41105412 259894014 663106598 731239509 918577115 961829472 116799942 981861712 970884965 999487458 843783741 885815830 743028912 794554365 855954513 875540278 318694847 441463350 330224875 925718085 361909242 984508625 803060374 810724271 856928391 994409191 28938306 332374109 849156132 916163328 108571985 548610117 162612562 934813286 857352758 994879787 501041317 685286733 220671407 847507592 72295294 526894850 105411204 996281257 254593970 777816307 181087557 767421168 675416568 949003036 999566529 999773724 538398403 790149220 870042772 891254729 949660752 997733674 494401957 704237392 169513139 597605191 532456506 999452627 717876635 874995415 334118660 874409772 343750646 866606716 819448870 834674893 312587083 331922304 130321469 435516465 767080918 910137792 52201021 725947821 883868715 987589283 211893891 284719800 910895202 912021836 167553080 281727770 886721474 942157267 784879295 935378012 76573185 329592246 367651078 778465214 981307561 981318749 72407326 359612696 417828110 448839791 140755897 984860779 877001677 969626049 73992761 779621962 231061309 292939970 229764386 808243295 939003317 992160050 18226920 235000011 146335174 924271629 918797460 989324151 803716228 998933170 124564519 515023250 515079543 754550474 3397605 476974744 788497310 980291368 694876207 758067269 546133378 935168009 578095145 902181197 275740285 997858173 74674921 331679058 255307409 481558902 115404190 706187827 882692667 903229749 356795147 819456101 854957075 983761164 522559593 723242430 231652507 444011260 911206322 957610541 200052329 928642320 358703165 787806375 328149931 868669244 156251298 676568246 990517255 991898131 697921231 829446117 129772023 671446164 169378038 550980729 5622079 623449254 671692245 903766858 146278336 590176938 568191886 707167794 224133252 664529861 130729670 873935301 796529048 982318776 3102342 669730566 356559654 590199651 735276741 928019762 741381464 856320921 255834781 467641089 109862437 543682809 530112367 565114764 123850100 193162150 434170276 992973802 532794347 694357449 103651438 309788029 660824493 762677835 699919088 745468670 842866479 872455281 163126954 956754507 525853307 604903431 486352010 578978215 950073915 956500219 781857741 806354019 520718711 815602478 176214637 577730777 921571321 993664759 263024064 471006315 57898912 368621925 459891246 475540999 205087302 242499515 800348526 972867051 227418954 607979965 141622489 951444573 583445877 703035832 172599801 657410933 411274463 911074623 851405857 933525153 670086002 825627971 2884688 13594097 732454367 788199176 630468287 937050904 706016105 950221199 787543975 807522471 148694919 237584916 903932420 945045374 932513913 952298888 961919426 970090800 462294112 664000923 231293808 949893010 14594161 532227280 878255280 880558698 876387714 972273516 882296614 957479255 138392486 936679413 801405184 966748232 748969397 761876919 160749706 529837493 698331265 818181383 924518752 945100096 821810131 889336563 50925943 891547550 426770258 988510898 218611035 809740756 346802989 841905905 459493834 689471609 574314618 818282936 307348288 354032051 645567233 788280496 572284945 604002465 335315623 575985589 115095831 774616023 384717495 935240399 232869626 351566554 999694229 999881555 599084183 781765064 882953079 976405882 779817881 986127454 729252923 923390382 707170656 857334435 618361294 747897877 380940228 623545702 412173599 896007922 3846924 156317909 663887816 723934861 654855121 891274972 145989554 331116522 794203775 812864225 535283008 660705548 865820201 994924853 322443973 447998980 935858946 983487738 636079869 819573812 472503587 567591254 257427610 824349334 172667524 268423034 178457709 621595320 684718315 760791787 251927323 493624726 214801908 297698366 258843770 562979484 618960857 730468138 293348586 686762503 930976614 976966617 47000810 732917122 692950666 889819402 291786320 652504777 953875869 990270103 577451051 764732652 54450269 803217023 973507998 977694783 865866656 901266880 669517123 721512251 235592185 989828124 519749940 706209886 696220023 955705429 319867879 863810724 712646390 996038169 271885595 404636828 159090520 378147366 621319481 758469510 343792862 572179506 939806480 947360751 733743009 787053226 107671302 174985029 624154687 646641204 82812472 524242463 325658682 874196245 686211656 936233698 797257726 823600251 138700078 895792636 239361200 905130016 769967514 845132740 431687846 815656835 403555469 545966268 116250414 851389719 126400187 912382846 742519911 803309452 985065193 997094094 677910809 780930728 321106452 576470455 995808605 999839729 345535508 908583818 393708825 465149665 110922704 873234560 476145834 652658611 633983225 727886763 950122151 951973422 939726104 988089359 966333809 986002623 765647249 921979850 610793421 804768464 624822148 795509521 30790197 35893723 91443282 490624527 284522942 654375018 805603999 900936428 69020050 956750212 75253690 599399688 111415356 676790618 623802696 855266467 744832092 889274066 271599923 800096729 455556070 818223064 379519532 460291426 389328916 569938797 118702323 369560947 927634730 962552280 544873847 812785259 256917429 972699521 382927940 631826858 521346519 822166905 800685543 940765438 872141879 975751589 961531075 965391664 592000606 642061978 815327933 821345237 317619422 533424754 884731524 926614259 247363110 874480571 687386039 828750348 953206549 994487792 534030053 596577336 866983396 979885600 370701351 820000132 129458559 958329429 189846357 720698376 736977492 814734689 568138908 942743680 613836109 961472843 782652533 901296595 194720735 939628057 972839974 980949040 626840765 840484468 433452525 450498604 260059014 313398656 12646960 351177263 234753542 981395930 550451383 717545418 80506160 554847226 931348180 989840778 94573924 201481730 614816264 877272045 883249656 961442593 824736174 867803492 231976920 441217891 369583365 418211242 687904011 794130085 96214689 658485781 629529529 810178928 930578863 969107250 601564691 938971863 703689799 854194745 145489834 832661258 247086307 936379947 526091844 769929975 576881753 716735825 141817726 274975283 672576608 720085265 225242716 983139192 403445454 564298704 952978103 962776704 574323318 969803938 191213316 285316350 152245348 344797466 241452930 573378782 548922338 677555687 483075264 811371786 31067123 868962902 700083461 808761254 80255369 102299243 485261036 943283583 689786955 762490870 824431376 977475515 213132616 345982324 115704208 234180895 987203062 989507179 721744964 955152797 525784688 909950338 451360847 553675765 668454801 925728578 843462070 947763314 200672378 718209586 675448305 799979828 16786200 194668574 964274184 979451136 245800486 379650367 261874 704412073 486950170 695087691 505907447 515719072 85735416 731938874 926814607 999474126 146591667 428043415 643718872 959933077 414355607 616003898 964222538 992899486 421771494 700813386 865802445 937479139 26042947 198446092 911673854 960091625 85927281 786778879 220851173 641786434 918279596 929267011 564116871 724481218 145686024 424525625 410117427 682475959 850094611 919013487 889144785 968101530 903154044 913926395 817270641 832124716 46688216 694115596 764935852 954147795 864131393 898836875 281968739 285853699 7389165 66200493 129042111 439307948 110890007 653355571 711667686 915794362 120120703 191244464 832047219 991906407 603517006 788845750 465418222 906687489 222666316 617924267 578193997 771769931 582413579 935730631 237182979 934599864 934641573 979160655 368286073 658181864 10825256 986499575 957454564 984711719 857878216 910047681 965837640 979895831 504506506 676432111 919226947 955378352 649713214 707353686 415263606 776077981 267774126 914712786 667274053 801932931 961446375 994645080 933316010 979678443 64760309 462123126 841386245 986308174 773257416 922516582 18619012 416754302 756769551 768611351 437469054 931722838 998863625 998948938 596698740 781667900 124998921 275538157 969976286 981322120 239937278 748195029 48616825 964563006 780735120 842054710 21351819 674462786 605312125 682637240 239659287 756234441 733791173 797846219 305685379 465975874 556402822 832042673 420008636 896737619 850814595 871824740 896974132 931097443 463684723 588672287 506014011 653867745 98916357 848613118 821291970 916555931 248556489 762886899 750022292 812027034 271172872 406257281 200724670 950726935 18852175 469614816 709093768 766687897 437108064 666079003 212951110 652199490 587111784 836915401 516230186 798883112 561551282 759538308 817396220 970079566 636613681 773796032 91617648 592620730 274223862 818446157 85798900 201142100 79178979 183652392 388457539 768440950 573954539 629378097 737885764 829367169 389698874 941162659 405450035 543183916 538086869 670166286 984215137 996220709 474242979 797748997 910078399 945342830 377529668 399379749 49020094 628720209 886893062 911050380 225713812 547367271 393208115 640123600 835735080 933594818 814775207 837788667 652828589 694089222 663299909 705287026 727471183 857363019 281196357 887408112 967479550 981524622 121829803 425346161 22948107 782139960 639842083 904672389 39957774 847291729 70694339 758067357 913208406 928278980 374444965 874961185 976415572 999208989 637486776 879823490 421151177 471667189 382499434 971712862 399484414 783503852 791149061 949736229 776500039 783952723 446189509 637563486 709784608 816829470 195871986 265531767 183481952 627855698 362816333 700435774 756307719 976007965 620934783 726002254 878254145 946237437 374592995 637130104 14645321 470401425 194556594 547792239 860790732 920430653 29563656 914336335 356807220 962762111 784752162 825432861 284959638 541149157 780564819 996989826 643284429 912381823 15105670 199751755 741762198 989214265 769937456 948855910 979174191 997933910 325754570 976822064 668186072 803093116 18572154 763537693 348368735 533684346 838710581 842131279 365405350 554277704 206201881 976606290 625906755 825976389 300913843 933542805 484560811 860427735 142939453 152152306 618605304 877969138 801960879 913000696 786692622 877145465 23538538 515549440 478927800 676679956 267122347 926635971 998044443 999502130 623357291 809998197 824317617 961277869 406722328 481108709 709073273 843183607 713733047 913811157 905484777 933607226 911092099 995800378 335487294 653558689 281905819 913242650 34989772 39531800 344024767 973880370 383454561 826478853 27301798 60122366 320445223 770623588 482418159 658729905 144534141 917101613 642666324 807166731 153706280 239526195 465199933 875729567 604699603 743732175 829899483 934727374 340440338 417746575 121901596 402292393 621872803 834228669 939331690 952620521 559347484 711504117 957554471 976535799 544100564 692891295 372803008 446053924 808636441 817982771 300778815 595830174 668542058 941369930 749657930 766272341 709062388 760587757 329381442 817614444 499676018 806698636 563343530 935777295 75778844 548662136 581112502 926246265 727779959 929337516 442405421 969254756 33375464 420410257 596053074 878064334 674976852 979872768 245303700 530596486 434617990 755161573 22989346 166058657 930053459 978596402 96599335 879766299 784845038 920724035 290770333 887211554 231782931 447523717 663692611 812374482 941228212 975483190 212710540 962659284 734480541 777017508 903935267 925277591 538834094 940411795 177270242 408734529 252115709 425039134 393135157 715784931 988358373 989792274 410484782 927374810 578381510 687510825 302453263 602648236 110613222 540573066 873762597 986556214 527715773 566503762 942836222 975435506 528309263 923988289 479147681 867957935 542094259 546883182 220555960 815411849 300962568 388274802 649129349 797438052 752462655 942890381 770249399 982652723 460245822 555491976 834286181 962324372 814186362 848788156 135421677 667574491 782073073 929537171 733176354 973842341 314549247 481218762 56481866 851871538 27481672 72038643 755682064 996728734 706007903 907727856 144573224 815318958 35177500 520349039 836682050 993030674 288336382 885216903 967667837 987747918 724762765 826861319 1971921 728885978 936631322 940798563 556016812 946493720 159260233 279112591 212622153 663776892 263246016 907554945 904097071 959189381 377454994 534132579 441925600 764696873 216260576 279699757 523773505 910695644 703567770 919525910 540842626 705101043 822949524 996423944 921407710 956768955 406397482 801980579 265462995 996595962 639124401 953904966 485498954 815984878 627636876 651023280 30933308 939903185 407434903 557760483 717070362 888404114 475085352 841933795 910825756 960036284 953184883 988286281 71865189 968845495 633412954 664564707 638444071 912843722 943685254 973484061 644677592 820550301 601364518 891214930 848190224 924965643 992929340 994443616 42204290 556091674 667020608 918315054 276878788 303217738 741288997 938761779 289531659 698446493 422530894 959619635 452170464 809793780 340700346 663861719 194720280 276459923 582677177 612741287 528452173 974247678 941375515 990813778 32951981 468215075 567431545 686705235 6194229 511804823 5963537 127988767 154378567 426994797 706222241 937998498 483604921 660069152 196044015 757495266 355002251 715373453 402546529 778626719 660747720 698480289 149054997 773711775 445669498 900518691 753159581 755716385 598982380 702176826 547662328 737022784 926606355 927153401 698432509 728819699 200056626 991021403 595480571 839474547 268356793 458648903 856013618 937891054 87285536 966739910 783953571 791743878 569796001 882155461 175495090 314071655 635693091 690814299 167313249 985398639 35139516 207088830 133472441 834722988 271721760 924957416 56624510 421466688 514014722 958162977 4679762 110570071 825931493 970331879 631139805 766464989 263084056 610957381 769922278 988498545 866271262 894260385 584052625 738296265 109296337 125490271 826441915 932616294 377685938 727035908 13728631 743171726 320909440 908210036 720789856 863201308 426248318 940321450 477228055 737756552 954091956 957992142 225164987 960889918 68426989 161679216 859559160 927333093 634171067 684700853 831297383 841792839 537472772 801816451 590917474 799964117 543018925 731664816 949789129 995378808 480960155 718335277 2015013 399783402 945112914 952049631 230384044 613965727 68731304 688259756 109865615 624609897 120281754 578332500 319889621 335542628 539279891 882544878 767661913 806808257 862270670 898392855 283039128 597791376 624047786 973428818 650097560 855111190 389374304 633063016 80663327 625454451 106074941 563973575 688084514 874084684 434116255 534553283 472855183 859971041 986664339 991959711 195738068 548062846 206761468 833487343 660989470 872705386 621489178 717053391 909913547 951939087 697149789 723598897 210997616 302500844 675640655 794352527 730641340 836863688 730835033 830382717 545714765 834697480 872100892 944598343 312727443 981368937 522637449 645461416 817430894 989404526 88144253 653181471 746954384 883890743 434521247 833647769 357524793 430007856 471893823 490093921 663188061 832884558 754267630 791399002 331881675 622252475 375679460 671153270 674944506 694425922 502821050 983602960 252100990 860774727 674757261 872669704 170377453 304203613 1046363 712700377 301490975 484180990 964111035 980863760 865643053 918417673 295651133 534467588 381343683 598414711 891817585 929590363 227786968 639665879 392275367 785080048 934778723 981984905 49259712 971162349 777990894 818186912 870470389 887510199 834183750 919413096 486269492 716175640 7517577 276448992 355560394 694410246 479862304 587013853 74184740 506505659 688337707 737654023 518161924 991911139 552077649 919454614 16147955 938110756 369709032 986683906 700055677 985937992 618720439 635247591 674785432 768762697 34175890 987809852 603176124 745053694 854316788 856932233 896794993 944455928 968429641 973900106 342731030 968876250 745470569 763241410 283350277 537971257 144329882 849746411 440757736 713044669 472277850 736286785 414208792 803339600 862963743 935880949 666537247 828629318 923825247 995113005 177133230 770657835 166806182 760434143 646234912 774794515 819127743 985008198 453911891 662306038 32327723 901809451 484639613 917244369 940524294 950357642 484154556 772622643 457564223 910099439 623845207 670486270 305717430 318035791 272830415 890158526 188107470 464012302 357388024 620468518 78547252 237854508 675179161 903652751 748029308 998124279 90095385 293585488 30298797 150181779 796885931 974411316 699248357 934084704 747085342 851792745 913184067 924794443 310131973 981266732 568714740 760250993 930382153 984083769 144133206 432634920 960426456 978630319 260111125 454240772 723895070 944525247 525578293 728897196 944536507 970319297 814652291 837984023 615223773 763402022 249450743 555816697 270149911 308692234 494061883 777106255 464328046 540697410 356298343 704391926 451000600 587774684 122567485 456592830 345362786 395756508 392935428 605042575 442998894 984853438 774028136 858281153 285577422 449695299 931835116 985914950 814963291 860923443 409095982 409436729 218412713 593747443 43123475 96843363 378997134 991133722 796236162 956753999 884229894 980293376 284243066 625291109 404698506 501589166 102390404 541364150 341655213 602512884 734383469 888469843 344723124 605777058 73066323 908728576 824997049 900723051 575741535 613815997 663697284 772492888 1770055 571388184 260614840 304878975 163830619 711197402 569634960 581424242 234842180 711058191 985089415 997558447 181480275 916082635 526782051 764704641 94780100 294099006 374418156 670579160 596089360 926257444 396235855 737377789 63785197 690927238 561209329 612971224 777068147 960926057 931739191 948151464 753103640 762988251 19838872 112413563 475254007 488828332 241990936 558914503 993917847 995427899 351396860 372343674 921499685 950096313 200202056 569568483 909006844 964852781 974418914 996033668 98996045 952561790 808424384 865122881 950984829 975884095 683151916 789233620 224471346 253907147 850147224 944039565 756733206 919287525 54324818 321727355 914691251 973541351 931207595 941010082 508355450 597169981 669726504 682986486 160802801 767827479 425712090 446097921 545401619 710300796 514576852 557563649 408835388 729658298 221752983 906663350 719486032 875307288 637004146 818461711 205920139 852496816 824267665 833067386 817305663 884640314 269036495 816997892 315528287 326724846 453194190 781883050 533187790 779790937 534094872 684139592 467761872 771712472 123222430 415213539 638869026 640426554 818363816 949660829 680600418 802510575 988611955 996521552 174221001 883277434 535349937 674728745 764639297 877864222 353923475 590875159 527444383 822898922 856561909 968540157 522696994 527138916 419948367 955168301 26550512 923421720 97210524 898971293 677060337 861791494 674456856 837988004 103525029 831693700 329535291 964699665 924144447 996632947 392729660 545051033 966694144 986051457 674037006 843360943 958924107 995046505 476655837 752568425 71016160 206709288 749153738 752795920 459063611 991955770 582113133 939436308 665717188 756088645 464470596 791772417 461453744 945036248 479190588 991899245 779765304 947919779 479836493 506765602 498544025 779592830 314923219 510068740 181179109 676405684 698519865 775121792 570026355 573115938 778671461 808230204 43817134 560138387 909470423 994450140 703069306 728142416 469935193 640941182 251593573 958824953 40188423 799814109 158963580 742738148 590226058 752109627 361999166 769975668 198672354 898983728 61976103 392102620 347966320 745412614 415968978 798785402 529010224 534678549 739885357 802489983 984812733 991647076 159572753 549627316 262160556 740146344 520460899 607418016 498961296 645377182 224642642 646137613 500281006 645873314 356000848 759601098 795314557 921948282 574233111 936130422 844833645 994608934 702597034 938648355 169209131 423904117 463290011 835193106 329262906 887755395 258867974 829738572 659896954 948116622 522619591 690790916 473210962 626226680 601979169 751391614 587365048 868757834 311229289 686404524 696794737 808082644 493923116 808601126 984891283 999611031 258397587 312509184 256374180 323286460 633060298 723757494 336498868 876006885 299590002 579029301 586341695 628493981 926719650 946106085 109319553 311184867 321505914 985515075 959002934 998702860 970185461 980021403 250791003 990081947 731698706 884309615 923976235 988818871 93847795 257496801 183406524 185769432 799003759 878780419 965943906 967505693 785164809 917854700 75390480 211517032 984806636 989731365 341582900 345441419 37330747 785296190 152879340 597930801 876514967 954209049 843214284 892580259 540847621 837167804 227860637 817743563 269592588 553577553 295271203 576197354 651462310 905538419 218869501 308595646 481315280 933881920 451466635 747570991 52492596 831628913 95924146 764725705 117260972 809609679 52468226 368197482 568243805 759259167 835953165 842559560 1236745 706158514 683613754 993740412 978476096 994447770 98633086 898675219 172403501 337351884 123651646 757222596 373889018 717367674 130178482 206635234 39272576 589116664 281343541 867323408 704880390 877401916 145439338 320492696 101380938 959276442 660403299 976901796 566160239 726319884 448515945 450293899 181044242 641233251 395336229 470537083 875994938 999213254 179321504 756172142 568818426 899214867 830953956 873595421 649063059 847801205 48936356 786897272 314990312 934402970 31412124 700286798 448464682 716274103 25317276 66403208 225401081 526473905 781567766 977052349 930269645 950852188 380120396 935004145 17736884 986572296 870394222 907702556 174902226 628391440 6328375 781066371 945876535 991865287 840415174 898960112 744446692 798005688 151523303 885004298 719646537 949582250 44152747 216323629 538794736 933086438 628769262 789448409 137660333 554483822 830702810 947722314 328959468 878591383 803161538 910088642 76898635 274949550 365873704 844088342 468801392 541332076 518474275 922056832 327786273 905994833 345284921 525472087 652522228 741094740 214626153 754758309 425310710 609448043 775454698 874229297 688885422 760042275 326664592 554661878 753599173 779382504 517611693 986640014 659396820 801795736 574524098 993618458 469452917 835222889 851932664 930194839 436081780 943393500 364525701 369890021 574034844 742535222 178178181 599484841 116470626 907306935 27125149 27405165 668842002 774074815 210062528 775997094 153347147 352919075 624198000 855484571 935440327 952350734 194975686 759855048 884365529 945054442 447031972 964878676 83251492 933553595 732946375 926307364 994836493 998548841 779940942 878742232 907088370 927273200 438242723 472430690 384549625 531201055 838449201 882688787 777400729 947917414 709597507 990543188 367535081 461882377 90815370 341474168 405219079 761388478 339693574 603364601 314559152 864869476 204855258 699107832 579654595 823892466 211522452 498524580 236329309 303385444 244297220 303280106 742291963 750685022 856708817 871989720 63478386 807423010 463852464 693954715 336175912 641090873 820784601 881538297 17634379 670290217 47861198 635495964 67729480 128491790 562821908 796599646 473216313 511747177 964955193 972559953 908768986 962247325 44986085 977765214 910142379 950983298 669888667 970150723 235281099 412211650 124768104 250052119 897537177 960446478 917327261 919469069 36701586 774551981 61290102 233389497 982059870 990118550 692547157 950808414 268584869 497080422 550828291 878991341 957130305 984427508 739618524 851954024 838293642 930667575 540653077 868000563 39784619 687394733 90691839 155918215 376046799 925990730 424262605 980276414 588039596 643430807 90559060 659443812 915726864 952947040 473707347 824833781 665727840 730930671 770022002 860873318 209023679 830633384 326938659 692767184 144493770 818472922 822944107 866054321 629105657 695985677 374206726 662231941 958175576 972498552 797513015 961657272 758627512 817510157 59775622 487189345 580169058 650352527 968287938 989701699 176145678 567414565 588765435 950397300 450257643 647821713 276639110 725372753 768886761 953188973 285036772 784138465 441022368 909108965 752659651 961444124 776267717 989602967 113916489 241174223 364267933 565500159 219628559 403835078 339030510 988496528 771420050 985904264 660759136 672987760 874130713 938508653 864293708 936393573 802517792 971612378 198473008 339887039 754040134 799333681 966952784 972446008 706469186 789799154 482098637 637149139 572228192 712379913 88542979 672664187 508811330 814130459 894514369 923920689 488462564 867805010 435867265 883070049 345049663 905148179 468052801 690513140 504193503 681554837 156923446 211043645 108635681 716323695 780516624 973401243 639929894 976950763 273132788 667896498 191501963 378217134 407461925 982606063 137309503 529175485 684347977 855730494 126792168 920791790 600242073 824172823 414639737 717249068 400466645 937198874 121244555 960262921 799054263 833178792 839379941 936364624 959524045 986639447 721570449 724226685 751130420 803524477 89379977 179376186 519350061 971311102 213609315 456988155 624910162 903225829 493727549 516269016 223082876 876475430 352935757 637847825 657362288 683440112 787727547 983781713 129307010 193553199 256109545 857754113 301346710 539766994 248564451 952978556 301387208 304331314 890788322 941793176 919473544 945374300 49471117 590622848 528768289 612676255 425321557 623313799 187037376 840455867 842464721 909098506 65223147 926763059 367036753 868467309 899327421 941826998 792171489 929008890 325767576 945011410 286985584 761343370 495241394 644320521 992960215 998420568 7096102 501777839 366603923 557383843 524231666 590238642 302465151 541228004 276595051 927896252 887359133 931756360 296172085 574489500 935231642 987726917 960544434 992870340 529990259 550411576 412523697 721447288 807174620 982866400 839881141 930040485 528927473 824927065 854133910 855105998 963230978 997383196 686872180 932010193 710924396 943421150 993157041 993656625 935468760 958098774 951017947 995058119 323845600 491632159 746810311 788679263 901861331 960261633 247982651 558497105 483770314 723903191 378849223 460093910 375249458 536428261 277951197 782086689 219598110 502242606 764476177 908750553 772070596 881866109 436318809 567266234 207090450 663608548 358763697 457267318 950521295 960544720 992811150 995503237 719857094 929019737 341667042 845834913 54707864 714388420 166916887 437243547 14471040 541860841 251240808 651201815 89531190 667810207 47914690 953121402 99563749 761794716 141133253 263596359 150163389 846457212 883922736 913218167 763049215 820601239 989432929 993763322 451544382 468103925 627368623 880017848 335438014 745983150 757483770 828275188 852968582 863066575 936380798 979267004 994410800 996073610 190015022 778840031 34358253 360312745 23824032 372027573 455575098 799555877 52184607 952785672 318754149 832843549 473909192 532024301 873528211 896065942 113425175 992980649 473984358 490602535 533185316 916218194 608262193 937202436 100273749 165948745 731641635 905714972 529090639 620496286 564102504 580510853 338154969 405236921 161162571 719634684 671663981 949718021 626047576 766196884 771831897 877226084 675788218 762078729 21134649 820930623 631016137 643131720 640860549 757102777 547535419 791867135 429369690 580117864 998147028 998155841 547333886 719252653 195808337 758285908 324284475 354409031 241176286 486873883 319779590 865605141 979853891 990995277 851417862 896552264 481560427 610120514 752244591 932272432 662999584 721019305 625436720 947447291 884964270 991732740 484273764 750297555 390472514 542698814 272917910 372903129 181505391 444726365 675270477 800629576 62282334 371358575 457986847 537240614 483899444 664184241 246133117 573231841 397460222 688412216 94367696 448753738 353793216 455709755 125290971 132958527 561021630 750719258 435373262 576627758 928369073 983757174 542134610 888699857 526604585 733057689 862016188 913418534 35987491 743071853 73323618 250132424 309968823 798028851 810256855 895964855 239722515 916919433 499178040 935737282 394862828 720238393 605177936 830947100 469703409 475761043 924337147 941061948 971677263 988407992 918934267 960029391 510968333 515292672 454267453 565643493 252393313 703201831 800238134 854572532 11161958 854431264 942725862 952864368 171811794 399135701 153628051 240608907 550936004 820001161 874071968 941611876 520803394 917236362 764127079 977249596 289187917 380474203 157744362 540611705 88612770 660637384 264209423 758147533 305181751 320095417 338636994 871365884 404859512 883641855 48810143 102597018 234491210 544913603 403518935 500741335 713388611 774137542 853092234 869607431 920341978 990333171 309721441 554804115 590224079 786270835 220491973 639116245 733363433 984326485 200652522 536508949 441771272 492076978 22439102 729060197 836400110 915685409 620289232 864225177 519055198 628090461 929058904 949326675 100967795 329346894 310209829 922662472 767525869 877047407 828105589 830156118 16915393 406556612 731519627 857403992 60265754 147592752 613791282 652763411 708588326 813674094 292518369 681649422 251011367 965832698 708914746 759561844 637351879 788998209 627066067 729939465 887512245 942850904 325377640 719999493 176423764 702481959 493146737 758944794 79208324 664687714 371875563 772025347 286395708 433297265 642742436 952542714 266871573 310393922 899037567 968177954 980596409 996905023 238758094 749318056 746023926 845795722 494170637 622139510 819463977 872435580 66839934 198870334 379912096 610143756 348981344 870466677 801011427 893354310 932040788 943374571 815916290 922232509 465098922 962455136 453155431 998385664 596462226 862394489 444857972 964098248 960875656 973231772 788717882 870045968 588516526 735686400 444289543 928984725 912306645 931867297 468442552 977649752 12581106 365054598 565354869 674682690 526544264 681451490 644403193 861507883 242182622 256552217 747199605 976501375 411654639 656857077 239028597 717404864 166330026 789196805 54623668 119768380 97318457 413952387 89450545 154255918 305754647 819004981 293272511 595937149 525468287 624758477 371609471 449166613 13455437 854289123 412795436 594758540 269163530 782850029 41631270 66503979 38506370 802857651 212486669 370495237 458648893 780228452 848691716 858798993 93299533 240527572 948133147 958025006 598426236 984571906 132591339 219518183 650951778 989924274 119180895 490185600 674993944 940100922 375864348 717678183 874514432 990262199 666038474 761185739 596026018 915994259 450956433 904187378 525416444 810431289 777220234 894480256 594535943 880781468 935041177 982022392 587391115 899192271 378041215 661908613 166204983 557083418 208667226 656132171 27967318 506261019 994520314 998869181 621413605 941764857 209589879 542228103 760123605 777774371 310060707 705977538 379386275 409759602 164185518 276656011 279657571 587841146 638434978 942611380 452954290 719222490 322061855 383639323 172819130 367829591 791492531 803226456 690842300 766884567 718422627 978649822 52497090 616021244 782506582 931484940 757977556 886097321 877794287 956435701 972049557 974913527 417688666 646502734 327915426 519006751 699068164 869042566 940801972 941984343 315392262 423469844 407899885 715390356 506370784 521951133 468672301 794425877 394731075 930101569 497521233 803019802 870665328 996768876 12362110 260863949 204072942 288645560 444927923 743323564 828114077 957821722 198804384 306919867 882231089 904747927 372785544 465326547 803102701 884562081 774405282 949013708 941470286 985611672 871706315 990568642 68852814 782516804 833817817 845529949 762230405 871921875 477173581 973662792 915397688 920239804 600027928 892062012 172672370 684190536 466097558 892727395 329668119 881877889 841660152 968976200 601781934 643360619 365866847 619384601 662474608 828783395 384521747 946871268 907856835 965261070 160124058 688387490 214696979 288211492 25865924 236748089 158674419 331392393 420285677 519242576 924767099 997391521 689658820 978973857 690551635 945918010 394761986 642664506 410300181 801952817 729824618 770988001 807386247 836701270 86437759 713875438 293161990 919871196 460675757 674308073 458700516 651550296 471562102 731892919 127140802 343175605 541164167 801544968 903935851 932822592 742332300 982782407 245696983 968249526 584970543 969545644 379775720 599567907 10374032 371290618 929055699 965424437 127430867 960772557 559661415 739486513 602268645 740594250 743393184 925092616 235358465 444011695 934294488 959076927 349686437 842977029 771610814 811275026 30495565 99301322 21284764 50577893 351233338 539365889 530991238 771363992 528977018 724875959 953493356 982483819 513831007 729461729 351403487 599557210 540718941 848926776 219553696 516609726 427055988 562432531 562218769 827950420 802855575 962593593 351040953 925766456 937427588 982861911 919356541 944231313 755107474 980280115 267304437 718829103 441569253 852862586 392369404 872572980 532035253 650046026 954358975 976676245 127045687 843276211 160278527 901940263 293389694 881644539 49403556 373102788 137545919 525363076 811721800 966024332 449106182 884856408 779776836 893303664 998593475 998625738 371958587 797385615 990723831 994715917 752417961 866676086 775064907 851444061 900095319 905401274 491614470 495096721 448157825 945406950 307802341 800442212 720231342 795485396 794031088 946476897 477768307 652839225 375961172 390978394 713754456 861819312 582188462 844495625 798730349 858158612 531842107 897860640 999339057 999873992 683713314 952790916 348562570 726000121 685709777 758234633 748746859 955082151 581166299 971902601 444125180 461995627 923605821 975926704 648937442 942164404 995660903 996382702 694189726 967631300 87837442 241720302 120871101 470279150 675090803 686296592 128870671 732868109 849373695 979662988 6290340 116418808 333298516 596565010 13813844 314383086 472023466 567770721 178295097 923573575 936592115 952945013 235277558 613318834 208896891 741019945 905575770 968933676 246915861 484659190 113547726 378164440 479796008 648381936 4981800 608467638 555818779 889853415 958580651 988699501 939263947 977407398 674337042 909795880 765800712 973113568 609334103 870291459 296171184 650656947 695301571 839965459 481650253 988744360 415494078 821217222 672105413 889432410 733801172 937831027 418715573 577494356 951318634 957541889 302176340 505168893 441827249 977036693 260025858 767571067 768701615 780903513 831793351 992071641 846876007 997791903 695121243 787369212 949170904 964402307 889253025 943913402 348709092 412965449 905739938 963835640 248995753 576619285 180061582 542401739 349385610 836642188 433483701 708259427 56435978 716924957 372269739 909078292 426609008 868886837 802348810 956628361 819315218 865173913 547372886 871818284 826656263 953439795 736727398 821414736 582189392 585592940 320950483 550347605 457624060 529355964 646339657 710654541 975323556 976838111 332161826 604620436 616443110 689219175 579353770 633403590 658080231 985299717 357361540 766783283 905399647 905584354 78306393 416238346 10978912 484710641 899546559 927926819 894473812 951310922 680732326 839832563 104099454 803151651 938785894 965089675 16275693 964636562 161064566 365618552 59185710 837161210 100731385 981579049 867457055 929935213 815089680 974376630 204956141 452500613 51623191 727181381 219345714 843062807 492100275 651417100 66162430 224989486 403060147 522466050 615095778 851398426 699288905 706754308 853392379 926403954 189703013 675829175 370374398 973000378 578996147 652989124 520304627 555425310 500584796 847221529 314536940 808101877 148441559 704905381 265722113 275479868 93795336 322838438 371099016 659154911 844532099 951892480 883487730 916020400 691320259 912770267 956659843 970925686 679099035 756940064 729418550 897698040 804952489 875813095 967026067 991087959 268011721 805244466 899064612 985217525 941738175 966439107 878874331 978262114 381522638 564145413 279383264 966226013 756760238 803305031 477260046 570518753 789409399 896965761 958900501 977668623 588071898 768075316 990270699 992066295 152586392 378036203 542886333 651783224 923978078 930045368 93590133 220961827 70455694 538080954 37967485 915751433 23688858 790695512 237016894 438668940 229758506 578893738 982709993 982973444 912409301 967426823 192918388 704857894 217617730 657400096 609803297 783761627 268174269 368751876 865608708 948367302 463332513 992026284 402892547 819710964 485067294 485176625 15483087 81591212 644406970 768913507 368246912 440830873 143097184 200292864 632744796 945342595 305586566 365395505 439101895 795471058 186668453 311864991 454469479 653315794 928567049 948867590 169432199 428202674 85382120 807788129 193988553 695774891 785807975 885529794 788445483 988305118 370489743 829471321 53699499 667403963 903498322 976914456 465188766 851489085 76033131 831155468 808740965 956625730 247309487 949438163 319583444 800249985 38625927 167209559 962599312 995915863 472804434 780096508 877751865 960401192 66222858 899877941 29409138 199107033 269242965 965579666 332762301 542756858 278995824 603345406 90638760 882524468 546543493 861869996 111778720 891634910 855329360 957062267 699825712 938197457 10430436 792400646 184027701 367977585 773898024 805856844 791799761 899673031 647945692 863829057 427322349 715178276 617946911 755988195 97221707 446765227 366443220 575755378 781159570 985128739 202733585 424047976 565058256 682501270 360598105 626997543 891038400 981603827 181041321 842734254 373403573 932539616 18003088 156903188 743924260 892786352 566452719 854159649 283548232 590291874 713976428 962253338 328737467 751816786 69126780 749609648 837449857 963343495 727617652 891166973 850473622 981299920 373923950 675799447 738325478 781582783 135302991 245319501 629087137 952902471 605019099 950442639 313466590 651572263 915061763 918377796 158713708 910505814 819997500 826425259 94586216 476948129 956051339 981338822 547464204 961633800 631156485 819087494 559699877 731944524 163482430 558586492 31055342 657574834 529413443 771243086 35081601 277161657 703980619 853575461 867682128 897726933 831951675 910639373 868130307 968763758 246268851 491758098 37463625 472453117 693794798 941657107 949530529 971590767 37559659 425375210 413966244 418048501 566982929 909317817 757572478 908824652 897779427 945213772 233217384 856078826 16003433 61829446 133706699 325930858 765913378 855534206 380773658 708508734 173587563 416891820 774542643 882499348 949694239 955868725 361239796 555686837 682666989 797462132 794573100 893660376 150376061 885505852 537744728 858749410 537109475 669316898 715967836 729449109 704852363 843387515 748183812 898492578 773157175 924563159 697011903 787323059 605415081 672397648 131718216 363856388 85536483 145158855 622196750 811973133 270786553 477987991 985767316 990391997 537645373 846390431 835629880 928755713 1592650 648185701 885512186 950362634 389039321 580556777 552858327 649013182 867535548 916854688 51855153 78262237 305373022 846524409 353773759 782361385 947831710 956160183 444281357 936362810 807174830 938974842 742615850 948084471 773224904 990006219 315841399 513305710 442444621 690516017 259789131 274547961 635487568 840241238 333606284 716383364 837689577 950676408 970636180 979735103 593892651 606589781 159191355 309804458 958532922 980624254 617645814 860215308 218008559 372858128 535254321 974317581 742169303 913974687 721763523 946421947 643665031 805315366 134769369 986442644 732629352 898333409 60079457 486596860 436067504 777695230 996560956 998764373 141629694 545757564 907163107 990996932 193152169 239664358 814925715 992154067 60037570 637469101 934806723 950191845 845624897 869871743 560784139 666326087 302969714 319083503 138666861 885645059 194660189 387372152 668236197 800859542 221875201 498142894 776557943 861572718 276471482 428953302 116522439 294643366 743963230 844822440 240057439 310332848 10291329 550155669 670680393 674642148 410743455 703613465 458100502 508177811 385087079 548084835 678596164 718554625 495206771 632133930 687661713 982783458 282613901 686106461 243094956 653341251 110508465 617045311 711744930 957365923 342456291 747843350 631840499 724487241 281562445 479110866 727072784 849625218 909754631 960711407 556240798 924743158 285016338 355631247 453927432 946957886 631936883 959366238 957957152 983829633 100188825 564333423 691810151 783794058 823788648 857778459 23796858 858062956 471840346 913395500 64949163 916474362 783175267 892200915 962228 921365419 739039318 855430292 712692311 745909594 271594082 844469617 338994463 477857826 800632920 904389250 664204613 879727748 203418779 467664409 344664062 665554052 732576948 986529145 331005529 600667547 65658998 986710240 513917396 769787743 186218477 206952001 843912784 965698547 238803473 842618404 835813832 873467272 178690084 964014957 320247972 829473400 111107157 266050809 736786769 917529590 654011035 782156439 141267696 824387844 344019706 526689071 750941174 941350485 155630419 700962705 530692560 545406252 374346022 491366442 363247958 580215406 258044036 370825685 80377622 690796620 575075596 890062515 24270878 880889884 98465477 316550953 825248540 931830553 678952949 950409277 177514375 186130412 302401278 992598444 108681665 811782924 620667557 846491390 147483642 230151915 547160851 964197163 687376767 732953777 181354586 453268151 123351399 741791833 216654435 632941177 869201435 944268744 332934208 537476636 323002612 360034316 599366596 976168397 670853740 746512515 67165421 122600559 8263766 290463419 726163025 890538850 591916623 655690059 459114684 527024440 722883186 990639803 17191761 427880361 378105810 761172692 432192844 931969671 601989231 989652780 780086749 990485081 106001752 167039868 541930476 865932807 980008019 991523194 631506519 973021060 433908719 487408478 501761443 769274650 218558292 924301309 91432285 336151684 149166963 305362308 879412038 926676925 330910931 748204083 176151507 718708583 114718631 522104933 152838244 910747841 931092757 945062510 942398840 999534208 787360702 857030819 694072700 826440444 913583169 964573757 598337306 903278827 844577829 976803236 232656923 398023624 403053190 939285855 51136335 382093872 194325760 362467136 375284323 602104389 260249325 382173897 670837476 940204700 441611793 942349797 163418121 805640968 816884825 884212593 994120524 994126413 225886349 560744456 74444237 596209470 879365162 962551883 633725047 747719557 291841829 796868741 83903123 581886793 556187923 631739363 58810000 106983162 992106197 998187068 14482242 901146804 691031806 853636704 653982968 717017780 504748813 682975017 855886093 960033779 104215955 608184234 568580880 904962527 39126401 673866245 928904570 986097494 852890954 956286676 691680861 761879841 916469271 971462356 827888751 933360611 760295055 863233840 192979570 457464898 619892596 822459664 227440085 870071531 25015196 887059998 215060705 441302735 351621393 835774161 166470783 907967811 953685016 969988253 502392608 927793324 93991159 599387683 482287938 807064828 561061596 804379325 94156160 822785245 220382011 983006407 907021705 927366932 16310920 421341790 292105565 827032919 575611648 926943131 427016275 644613640 963379722 999916738 59753502 794566496 573826707 974418273 210838695 336546208 571733155 943760636 283005613 849696769 621707234 726918939 34411055 995962539 365124599 599798358 240706737 502378004 664173055 828386154 173838033 563091355 996927727 998241298 88381144 840989701 379886898 588516651 389084398 683643912 369288673 438011801 299542469 552188091 329094851 504044251 919877446 943439732 701969593 760470832 827018374 992336831 497426908 981299362 772882124 909236976 659354301 702613792 221067771 446334664 541615619 897014297 916163589 939800783 893226465 918000123 857186895 990128575 63381636 297766200 220554545 738105117 216561343 218046979 196454150 853428494 668148199 773995493 133043908 307166622 437322044 709398327 929309765 961498649 744484360 894736052 680713965 976069843 446286053 453412593 483578671 995847877 121157830 181401161 121388388 351621773 118888910 896458164 479044302 735896034 927890193 942412319 635957303 646452383 116259312 374402070 619648198 842612189 917929120 997743675 497079440 743920742 822085881 968680574 702745054 761111736 202854136 601033589 735026572 742340838 664862147 929767993 806289341 890827864 81708786 115142323 949645090 984343658 603570655 870615954 479685616 616593524 88196585 463435940 213210119 409538473 542740792 735251158 345325247 600639805 834144378 934220262 511887983 801195949 292656832 719129777 744135209 767589094 910204819 984545149 319690599 889661981 697327106 880624944 781580619 885124535 601005406 884557608 233572305 450079869 28628795 700608282 121875149 231460580 590178633 595106838 403357416 491898782 485167293 609902755 583733853 685134163 744295700 850621213 228744023 780857996 393869829 796568509 90468416 296017638 888951548 928560931 835979653 928156810 21932842 814646717 215385207 657622657 971572622 977409546 790223599 846664091 172847187 421059774 448107202 528763550 379025895 666043104 925503859 930280373 300702415 324482541 42044136 57463771 57273244 264902401 870174962 999706463 455158352 489270042 912637013 934408225 883410827 970279701 862356604 901546686 181014656 291274097 70321999 162150289 921956107 994445360 910791912 924563766 570278890 896241681 200878028 661610345 588114770 741944210 881831593 999302156 627887684 875686394 959763433 996131466 901506220 952348476 768467781 923368507 955671426 969318752 607112426 775994394 717622235 921732977 591465565 981024337 943161894 959447413 171920535 823215126 758481557 858677673 9639208 789756881 119899022 595791307 42007098 383194766 681259935 748192023 638637261 653478704 598177772 872858519 826065141 843128202 981657372 997937924 712212420 729636223 273219028 347557543 193794809 214143808 770427908 880182101 866200001 997653062 24720945 281241886 154023879 606159310 407153680 739720146 422060892 881295531 269457671 721511034 289676402 573130143 50881062 114274479 397034071 498225921 445886755 780537279 813444635 872268583 403082762 571330014 789913382 807593955 578363320 598174206 941029557 973077231 645692924 939099417 222404213 972593773 788632819 899936278 753840292 790818696 24515426 894802820 312208616 678354322 85297224 452611486 617212013 734995555 905025685 956255461 592899176 778166527 763063415 777024905 163753088 692767789 212395435 828616191 190911793 402956736 393371888 983929904 481782434 740530252 151431326 990746014 367739697 380619841 251826816 260086362 130185453 841427920 661077477 728286166 988453490 995305405 253734637 321384293 410877572 808594596 645665288 953465781 108599245 434863132 736477167 892466967 980758724 983923446 255121849 335411377 415937017 970570826 919707965 936785612 14625115 229232832 789311134 879958652 155601374 947612203 146567403 681140154 110208875 859628927 460413300 846910250 293294201 625509008 356910168 466693387 20029254 515525982 453352582 917875984 995566306 999740894 795230402 915600355 686912463 861719446 571356201 807812466 425650965 870476673 468336225 834093692 863096305 957733473 517266026 916223272 71762175 854652405 792254066 835198799 259636667 302764226 241199492 345334347 87413579 103549823 869299195 976677729 741747149 913060518 207135943 641397913 882727093 908178724 436381505 538030453 412047550 546066860 467812848 540842328 588679580 704050213 128609347 648025367 155970591 955019715 325872902 349331112 415785059 666649195 426113852 479165088 332095096 660217110 142866666 728179891 116736316 762406026 65809346 640052339 642412722 940874985 194275205 619994994 845536164 859484225 610954682 909610965 344289350 930154554 424084609 966706207 77490474 654229198 618893795 898110579 331034551 382426615 107262259 122838341 846908260 860381763 686195842 830619731 662707907 883021497 904914086 987658247 86165403 595993074 423338508 866027035 706312448 829324144 850687744 956687858 612649611 707957125 650572838 958198411 533114048 789383022 47786564 948562730 767041496 900767569 761554431 921820414 165125905 666728487 326368466 639314469 227025035 491764992 580088704 804819841 729541956 919518768 732293251 922068969 304162621 424321952 202232387 718346688 917469047 977898143 998641429 999619963 148716728 842351732 554280300 894076660 565942299 872096150 579905958 883188324 208369076 256165686 539520840 748525969 66061678 203180366 683465436 978149828 938445952 972160114 893877975 953946122 10543424 145192929 123046440 945012046 914588073 930961060 474886177 839537546 222293724 655761459 702298465 996552297 650270166 973037446 871234088 974205615 328758989 844662399 723315105 963576630 316640312 990071063 283591276 521869573 333337157 676659472 84023843 283031468 109074228 732675241 794721352 963562536 979353180 998299385 911412169 947098820 966103636 974533366 29956775 522188299 568485372 752749593 185862145 281474242 497296895 500061502 662514015 815411957 282994427 440022404 135722772 145302442 488300436 514715321 467981538 617356063 297393925 709557115 572699598 878510641 288984232 869809265 556527306 806156994 635949326 726110994 549522288 673681112 831120628 894027727 32552996 227137302 537359901 590528881 966514820 971584252 165363964 625408515 647690630 928524375 240368636 321260000 253832462 643723752 839989296 912655197 911586046 999916921 632353630 821533875 98510230 852273791 470064707 809954633 810024432 879882831 358423934 801252873 567945090 717115132 449031726 645093876 627174725 958618903 77763254 172083048 180232023 320782551 530403129 917824627 470714512 654063065 940189702 971218858 623185032 970836723 417984982 771875642 886510228 892492221 579835654 623958184 773573870 983326433 151302724 328822716 41188755 659482332 114665204 496065456 868868526 959337230 542942222 616797026 240949120 942731038 922602823 957436672 968159399 986081733 261315253 588048076 920152852 970077211 998959750 999526431 377748400 942972434 44791081 132091716 762562 877463332 206723115 909295616 876045006 905664726 428697653 717585456 117803546 363487929 73555740 271499999 965151800 970320562 456855710 991700616 115736937 199688843 424402370 607860127 884375162 912422667 849185993 926942893 303409358 521960689 363978833 923873671 696396321 745068854 38469367 342647120 730000945 815616436 974613523 995002269 200292908 343984533 499198112 704031370 121015694 474471112 797552665 800953680 11119956 265215766 280238913 956882156 62600753 859882449 551671406 856556853 676126038 725230990 707462241 903436765 224813101 289146988 208300076 429753271 643870809 754960634 929165907 995262152 891643139 960088537 153861385 411663613 861592696 914563415 878854653 961340507 327323414 875103496 536914256 879569417 284102904 724511814 588511143 822811469 856621426 977570591 536325009 694311551 239317053 718549634 299247500 349343991 713069884 937668695 521712681 687058615 926930265 990638266 204088766 621238786 502961648 994761221 168095926 459639818 691129931 796063440 127784271 546464426 921201309 972681713 493739817 703569228 433905186 653787458 662415429 675998021 922986349 940089185 83974195 197994629 106053646 215414609 270671835 666102975 761179122 963013973 409504124 895884361 409845571 546869517 476444027 977097485 983759795 999454094 234278695 997303517 11382269 727206480 855700956 980430784 37444383 836597521 104461933 120758955 613822172 716333860 499913712 543789814 510418817 826874422 499037690 880173047 692644895 783325510 310751648 478169489 25573304 922302508 744275140 799182918 161064138 657691257 194081376 613455325 615311124 898939390 489993432 810298781 246604307 720901272 669360764 730919000 114049634 301045315 432276021 507818042 114872751 270888866 226780424 365357475 420816520 936260433 610681344 837603887 672012406 847925091 156220354 898302269 907680696 931568318 856540774 990327440 939984132 966636212 731106485 867838800 700616747 882542556 312634851 990337944 310003941 791898933 915563703 938187715 522786447 857023018 333464126 777967734 803743937 969009535 703612441 764813670 155851039 872298668 823936925 992401506 461187210 785794865 415251527 611304687 404730364 921755777 422764320 594279700 97725559 144295481 53095585 209948492 340426304 952814299 166306852 587244333 900734184 977354996 392401381 808029789 712062257 796170041 775708031 953718694 995280898 995356890 999413435 999985324 458660417 980003265 442267049 480305953 275851022 530622807 810800215 955682882 213974190 392371232 276493533 356313321 852043658 939849630 278278776 507496702 622511748 921706768 144931846 457215771 364410537 448172684 916278156 983175905 283362927 888839339 138165083 908902668 367781294 731196288 473083174 891013779 79405598 901512114 630823724 995996120 848304578 870800198 309614343 605673069 399996129 728041992 667291390 677439432 72740945 271703821 97707790 182602151 233411559 725993618 699050756 888315168 217173315 951565320 579785934 771903539 620671879 721621028 971316576 977213704 760148046 859302999 66304575 422184133 105601357 238208063 949093826 984798819 319472353 731538155 692543536 846695137 259483549 701201694 576746984 621516896 552934267 802000811 362502167 409961825 571713743 740742111 896965302 905008823 648719457 686814330 554560438 556660780 322345923 350991110 851945128 872119515 599622979 999870276 526149895 588443337 212256420 926746511 594813239 693242628 786319969 876897289 992440958 997334048 135570822 784269773 798286042 834893284 869756620 997278287 610721044 649324181 737096960 745722747 620829447 932841600 931364899 979640468 800118039 997385010 201527419 849516666 110860037 331848893 961699128 997451233 987446663 992299239 392108541 793564093 436644903 551487836 411455629 444673889 467158655 704388664 73358058 873103135 434711024 604247266 104560962 582292504 621348585 719267029 967389051 985853101 785875112 849418542 409164769 868533911 192428854 312633870 842847354 980513967 44436515 715188179 133394152 854796410 623846673 838339491 917853695 942565239 38458372 689442900 28075928 842361987 787117152 955992825 548270671 883208820 992626360 995568842 616706043 724684920 641064911 860933776 904607662 962480643 731065750 749602535 637008003 986257562 261297591 958556986 438699009 881219596 753730484 988685004 765509143 845822513 726383840 995147357 715040928 950867804 326362888 900946772 3770219 838294624 76141139 282816678 551655792 618919568 797361361 935439475 125885799 657528235 596613011 721666296 161844956 643631829 526681806 981409101 781139233 949553081 94658958 234268797 17734050 19055162 717373936 836101499 21792399 38578521 648145399 793165261 885986966 958056265 198970281 955177240 39343573 455845723 607076176 736437677 578750513 987525476 631214397 991014681 491677590 609094866 115297096 510920139 522181695 730778946 620245297 783715707 641282416 825684241 840947843 994850658 571955404 787786476 653506794 728429070 924368554 927972889 697837004 811791315 737428980 768292710 875521262 947253858 810231199 868166419 385996009 723499765 267034652 642414235 956268669 966688388 243178273 935076524 263054597 555497283 45132495 545727563 793535895 974342392 470413248 698514820 50697763 444090531 455552234 703564217 591774836 712284502 356570176 724003648 514885019 800612036 732917138 748603249 424152797 471697370 474357473 758109178 511635795 606841543 605389264 694836807 66769340 806446533 668120004 796914811 530733698 559486736 947311942 973851176 543641429 996874774 829225105 889430822 815103716 990139271 654154815 945685015 352697321 582013382 335658268 392576232 9338991 773081980 953525603 971891108 636879958 985854629 34242483 565052674 773043719 982616021 940406338 964980812 724350201 850022314 424874688 458451704 464192461 644548721 944950605 993945074 764471211 915409943 747006082 761249539 58879604 358734142 320595951 941170643 256746082 354341055 402948457 841956700 501442959 678752713 118649761 698125334 81618827 598540452 557726372 898293763 742938189 923555198 72606878 399073050 516023707 660953179 714553210 808066378 615893158 838089395 754208947 803453968 837355856 897335872 639181370 979698803 522491101 983619590 414154840 669315932 32762050 399764898 875422442 892806267 268974558 962779134 912681210 969230092 615751856 762697460 112195140 123575945 577957954 834347878 159238642 437061070 249960100 685621982 872349626 920316504 718900159 758487774 641210090 720303854 842693976 991137606 166306204 239903211 471023069 778467098 135625370 497561383 695552038 994014083 426503993 877999512 752703433 781469528 435917024 636786899 33522010 929050344 482446598 912717036 839044045 891899512 651070693 775150920 846550576 876370607 757883254 767288031 564322370 594836922 760560649 926517727 959669923 994527886 540100851 577568013 912679209 967447852 45662216 351756039 840815310 925927550 215018991 935772641 324730194 572005964 100831653 730242074 170421882 188976813 908249655 975841882 599588210 829643269 572659902 704936051 70687293 293358798 130434865 755130413 457716282 758192393 264078156 582333396 652333788 854562468 825481466 835264993 901609614 979690542 91783744 981994029 477712862 851933027 955498274 956523225 416549525 878780786 796909606 942565667 829904812 979418930 320206762 675839016 106706320 438617760 808251446 848111678 958656329 964268589 680926535 897778564 182629423 666162886 570492806 844974957 30297646 668053842 392432434 612425879 326981742 918745340 962549260 972513877 20582909 953011255 492083563 607305165 424108822 449679464 18753871 570236291 99116941 514789972 239692918 990432100 798076485 903373810 277205380 339670063 36415322 58632067 156721954 293814347 434703389 565251311 275738073 848727143 272560907 866630282 883551045 978470397 793885064 854495965 716085320 752630526 902408759 917429321 519041163 946534220 109816541 807876845 534737872 624751062 668586533 879564067 710091896 979190694 447004107 853436337 719572504 791852239 117451108 983832236 725348026 925610801 292942869 699231027 644217690 760042205 426744872 634040207 358812484 889602477 177277976 825659030 524446778 909857701 469887020 759503351 133444961 236342375 902590231 989616026 49353386 807921385 260926478 985701610 324317880 330534602 285053403 584976025 246211718 449876392 478578001 877423764 145186863 676198039 144774663 584262317 977314798 989888182 367864703 688810152 377008083 454741931 881993453 928348535 112085891 816447044 831427724 937391276 108432892 723466580 129606926 387502968 923432542 974933038 460586120 534832939 915078546 961137259 517413263 651870846 399571271 538133478 496329245 908956514 736440567 756011905 994127993 996435638 656115774 951316315 790975709 906876392 127581072 932831301 759520575 928875301 889625185 913485948 252236305 323442562 299758779 519298137 286569845 743807786 657335929 840281386 720680911 814798460 455294406 742266351 374459260 695465041 829009134 872082537 50674204 290300448 245042856 283921633 406058846 885271200 383322014 909427062 370956186 975369493 750578265 850488788 423415092 896690503 135816732 142924258 425061212 835242435 452138972 880549543 814953449 930545111 869671652 885485015 64692898 484416835 526119852 660597340 377603676 865465486 357535150 377497786 296772245 790693872 286919675 922986732 878800721 917746302 763015191 982605615 905347416 941220836 684880239 908146980 734419926 879381354 101792536 811775332 465771430 637487456 654353034 671218849 769096520 834578720 387798847 735723443 975453310 988316928 837696970 944193215 275255354 885472802 218043649 535368711 628794965 811882690 736272112 900933320 715976290 854634246 884811797 984230018 627846971 807930222 968921718 997407187 924873990 933042445 744865308 806798502 407695620 978887157 971482192 985400584 316315376 679650288 826282150 879911599 75926261 215273781 399817195 573033446 434902474 795562731 730206669 924808442 233667673 803722862 468124807 787750958 979001293 995755773 28342242 493601166 480492034 869922099 357784033 462455055 171099539 236243886 411369272 917557618 525228062 736281815 823831593 878755443 347377679 735435080 499494299 504737445 536344493 612540436 492652670 719814829 663805548 808041104 568429869 771184034 554462041 985125418 373796651 708577739 330476018 553007147 922055134 970503703 95387535 716357686 401139215 595009981 383547032 776200062 954809726 990062249 278128160 714559521 347965536 715345754 755990724 810872225 969106870 972584033 727894520 756243551 336194849 412655334 816718904 845135003 785570398 853175462 315853379 647057699 722054273 998565405 37237527 485974408 124296669 814924902 469156753 558756612 796648897 904911482 38662574 83179052 685035521 883760365 539124798 877530468 848930231 901053894 727970155 935933820 223937525 997457930 602958597 662299297 110116456 224386191 913649946 967259247 33417581 292385080 951817501 980994109 398553552 517681965 972653533 985584306 315926899 901643420 254304724 953299719 73884232 420132020 312752188 741765402 497613802 871103328 804635636 994534573 406292869 709469208 654370324 810094727 727559961 982418620 249474203 375388532 456212452 659065069 65152028 570544173 686389619 742244759 58047408 406372601 706660163 818820573 355395770 937605138 513782281 886415261 370918442 598066433 636477085 852747617 324976182 618455940 850731483 948973537 949873166 962576836 828198002 900727355 818413321 950438319 356653014 857832790 626712055 685122201 24722350 381333208 575188559 923291363 927299653 938831521 947965538 997991686 258095407 598247763 735240085 741118078 490870344 491441001 360667941 727354548 134930796 565331921 281146626 808208129 96593544 297359500 575595803 578715054 220282867 565487098 395975288 963763283 290625651 365750982 91402403 754783728 405891652 507397727 829166703 898464383 308064146 774624711 499090174 975097919 956210531 977342601 876627369 935757635 962761004 964626780 800567513 830309154 682559640 836313242 469598511 933954630 288083965 547814126 337813201 866000432 509973042 614972452 217181769 707386019 876130374 901141008 13961497 882955499 270226075 987728359 833932356 918465327 577116815 931435872 107860619 354516212 903839261 996706905 156727488 679396744 518586120 736529014 559354877 937190030 817094715 868838186 935761162 948410709 239992715 855633395 262075022 573747708 437403196 656447018 497919405 949531248 334886635 800156419 802038850 858657971 886824983 895441874 719982137 889451833 306590887 846933770 346381155 353180437 321993347 686520848 300108890 491142899 677413188 849256056 570744156 614668506 218757171 325121211 519255436 998940139 221924568 322534346 884691764 943954263 140288903 159195158 690453175 766456009 676692074 755451619 509273862 856059422 386091748 524664600 955381114 975085988 593449796 808515178 838710996 963869144 2461533 391430200 65432009 719892637 684526296 864580647 359044520 395323558 15622335 835381344 378985822 946528916 303932756 508669053 55169749 345720162 335566905 574989912 45396327 221015256 556301925 557309970 163023864 463810231 913948 982127395 630910747 935700324 288302678 295870306 647037724 851486841 253461669 901796463 812209629 813998963 155938275 312670954 77420225 224494271 316179444 991791789 421012283 868492518 433927535 976171368 362264249 614765445 155537655 518304073 451608692 877083804 74954140 385056143 768823135 786620404 257549531 360385743 336566521 351454940 355945023 937862060 218523747 238558587 215265019 814797758 212740182 441734282 141393904 990086448 636148238 995045952 570825120 871773564 350195041 571790438 930371123 987250520 369694009 511034054 797138504 820696448 807260423 850813706 183894060 584331056 58768970 461936913 614630291 776657959 511682768 923866286 543535449 582650544 649694863 908940523 812895035 927056309 619962821 684326324 663725327 882878037 140274215 947544771 512514813 911493256 834955602 876810277 733283382 839081499 935392878 955450695 494970518 880520016 221384190 870276529 349058035 381014177 490236290 931765579 908633668 963909916 233823820 334902513 318229366 943075902 387754231 569309254 608816513 827481538 955562021 990519991 810521583 966977650 722818501 873924581 94296667 444503189 819876853 828537269 864660568 970837719 906268930 956375021 486656076 945854961 126207229 544724993 692454756 846382030 578974344 830935017 557084011 790701795 931344618 969541435 600860069 885599808 7328010 992684639 906138126 948315337 138769245 372513037 361174354 890563143 577403595 830846958 373303050 607790264 658117878 830168461 646451104 768271258 302070553 514375476 475084167 675125511 621089581 981089956 685618859 769827153 627196264 740890052 852928602 951375929 405652044 444304562 119049751 783276175 675058490 954479969 213192178 756323707 431983971 755707108 162241737 888821387 150314890 737505749 543870462 823978971 745883721 985341376 626321861 959573174 532514141 546681235 895084398 902708951 199184787 689831113 125683104 515434824 17231929 996792084 933394509 951152343 105547834 988269731 493624828 649245766 121757253 137258011 196228976 947977182 455578892 692453822 357871101 563432235 353798152 430104865 62380315 475157655 504594014 755849298 323682140 944204934 611103704 621154032 370597434 758062829 307489517 560778439 967344628 996167354 928087215 957874649 700853369 719571689 660744527 830523474 851225634 857440767 69436471 667533648 209316679 654541470 588004095 815918098 648238146 814301059 711387493 788910332 316185149 592856971 124009883 266869588 806962640 952828597 815165950 900601943 301346657 456210778 593196892 635308759 659696678 863256904 906369060 929284884 405680127 445144203 355666244 995268466 350388852 378529592 732726304 875460422 147003455 935038512 666941959 834876014 177917353 809645715 128849765 343647458 572433010 932312070 147215680 585932298 700325205 917442016 413095358 479443879 832485351 976026024 867434815 975760321 808567806 818686614 84205387 676478239 362447453 582736090 444377535 474664210 524247676 536671244 484535505 584144206 749102987 938384105 709596854 926486197 86452266 576126647 38487647 47473666 198864653 425109170 930450828 978788191 537424100 898957705 402679475 570539925 679945643 974085850 492242801 986754437 533573095 708667505 648609080 814721586 504925226 930693123 192675414 389362081 966737314 993046032 112655188 363736611 860154980 958185338 56211178 674863169 375478929 731671411 542110926 995636725 796045701 929469406 798981552 842552785 534963433 934003312 463793486 860076005 313701910 781520969 982543281 993155644 274705083 464718914 519260433 660595139 696246012 817494110 927188382 953485159 838962082 973833606 669367298 870611983 853790493 955637000 489238894 808956267 920116210 928410843 343047028 394834536 252074914 685721560 448571228 934882191 603410047 799340434 945933967 983171101 685535057 887127483 75549613 910197754 657802941 915212801 73826892 718866046 669730820 679659576 817377994 871910093 936277347 993327196 946147325 986637563 433091734 690189750 938302640 973683386 906279289 991632902 145237134 778010701 946828011 947129054 898209792 993949218 373410856 813264679 666169261 997784829 71629218 455052012 217246340 924323925 362754313 777236025 593418950 766577810 162091162 346127344 808557927 992201645 980232455 980385102 306076799 774511566 874528503 908356489 13750983 448566295 21246704 818264833 247287841 999643233 173305984 856129949 329727122 729791447 297209626 798755142 118532696 465423519 686197285 707737836 239132102 828235782 448490273 879851608 773659886 858278486 941728651 976076474 557308475 906659109 22348736 223111447 680943238 954031978 59010416 222786117 738486304 815129132 636384533 944251385 136076193 327696082 71764232 998075429 394947475 513129614 497098920 854079548 816252182 976952276 834931510 946408534 406738268 775345318 75159054 217339461 120581813 272996750 985977399 998587669 468227589 492256692 138489448 211901833 535858533 944776874 446341689 927599861 378833194 823247165 138616853 264103149 691382368 798428491 921463471 942284722 246421767 812158345 115256275 216479661 4039522 841127049 182311247 861556619 106723102 885486534 58893990 598519773 864193716 881654210 144324544 227914601 863319969 993696744 86005306 434153645 647380950 959971348 534628338 771422178 22989465 478504409 297450400 327106811 289371840 349892796 884837896 945404186 701081758 803458391 534558227 665963568 189576194 228522324 14518919 420525224 693004495 874036481 973113688 998092177 802633157 906525507 589468825 846947847 175237304 838721924 309114605 875200695 403579417 670543602 952855407 990877010 311087883 717810659 449793108 938438085 649178172 924006005 413752188 898187010 139474750 622860404 810674870 995424748 673681780 782416948 444508483 757639669 445171281 642753518 565262463 905803973 410550352 735893943 540900138 786996895 321743612 753976585 814063102 849658023 648510535 676436960 950195151 952474786 621707473 658169524 540369665 913976180 337610310 795388887 313349162 551138282 202945763 901855040 605325401 777988192 340327664 962208280 63089959 102035713 363235702 934499114 316022484 762193240 822251046 830997599 376693426 850772702 119591596 236770327 894446289 906213276 293215181 502272743 248726460 632864201 346035679 801045906 726668002 993197217 220356639 391003159 16887050 581793711 55249201 932797821 428766280 552062113 187964147 295405487 18699424 614290447 388135729 969773700 207015118 498172290 407745900 547866718 360516323 906799024 614027310 921800830 238740841 537738361 607063974 757603637 789531093 817675838 329664303 496260951 370555253 885977544 882645702 997251725 951940762 961412856 516839709 998069338 285712784 535161528 377848869 915271390 795909597 962521914 771788050 828960540 583594947 978480227 590986006 835592495 614221521 872743992 939020872 980642199 905154408 915155244 552348797 939285014 316129961 609132937 61050784 794445982 390317402 531147698 142614292 198014387 853422865 904981231 708649132 981215196 335363450 870651185 389792104 392867450 676877739 684345250 815935610 936269493 558016864 733319887 742097666 900063997 967642035 970453348 55882208 587328631 535810345 768274557 335952447 442565363 307497853 654259022 231762776 495573077 176590620 843590636 597753815 792004869 306038873 492936058 489064888 641938694 190082376 279141432 147549828 684965684 862731825 923227910 190504659 840369556 368941096 983979691 325272578 352992270 931855575 986576504 877303866 944287656 7920861 470246920 270039419 714505659 693989392 709912280 133028094 713717952 113263005 516243624 925021609 999731272 61217399 88467947 866076836 953863446 710245548 788351017 660682589 757168036 954005342 998237099 515721185 602488516 182361700 232115145 837604548 982039878 452977748 768295634 154225730 729682274 542714196 747658269 634742237 725195911 123501268 174279094 75805502 777757369 199270819 476739546 690747453 777548778 245505230 853837378 607059435 611950112 936273206 993963239 261625718 584287544 513858520 888605529 975795130 978284226 556081558 989649366 844447054 978515739 439418492 450047490 787100082 925498028 625302996 727692985 435953919 668306969 98258806 774323632 559289572 895509554 638810513 679325582 114304905 845628654 515722329 710898013 854856511 949084297 310285045 360894091 344501010 965252046 520993074 851181552 369643620 847358599 622618065 773895383 320705316 663220496 146256168 336294117 174065002 361190462 262788261 396535355 740932036 954677108 402556866 554952813 485998039 979897264 681304990 975081664 972127900 993181238 837004472 925282739 496955408 611667892 718920373 983297077 720442095 977669689 553731323 629085658 676034238 864406759 329038144 924114192 298531874 811591859 452637338 514530051 654322562 694634655 609277396 996892889 709525442 735893685 895398138 957657493 901405506 957166759 203518710 917402319 8047716 806489355 332982727 347570217 250932586 644341831 542754368 708510017 568797714 714648692 7041609 93636565 677765789 820935155 895934987 936014632 708910120 870177846 972027235 986240381 43241500 503025887 727732189 876020477 151968930 636483565 352417621 674812479 497419001 871678267 919671370 957532225 518883064 726490064 804008871 943496048 554274890 923691061 903999377 935843144 584029728 627776953 979082794 997712266 785276902 863946162 111343304 622206664 32192371 709841854 879880141 919126134 352371206 962079341 822600771 849242816 591534537 897630232 372542955 384866364 420109250 593565878 339464865 563530244 435835282 923073075 976013132 995573942 868115353 921396413 473381715 477104419 338693456 923697642 225489599 751636630 34100165 319985228 818443100 983992893 611290182 619798706 300001412 693048348 899559315 954928438 526937257 731442119 740842806 765437962 334368564 567454895 122164245 985774186 139412065 792425298 220762553 340731382 771455629 829739301 81195296 123899635 95566909 132113232 445967218 791563010 529742305 965184752 115285629 585357665 899688921 908250337 273734111 717618339 95164879 261232093 717335177 763535880 72484206 965398516 1420530 360791780 122324504 465945031 693183555 798252625 543741573 567061407 469998014 957018406 428921506 472534989 294445142 675809048 264481404 281489154 292643122 965594895 392327570 674757377 512347997 863361115 152463065 201848023 322296848 726427556 443958633 471745642 23274968 716170101 342140927 779472688 332821549 570399341 242604326 936823244 708507656 786542418 946039980 967045407 743066207 857887340 560291810 765970631 459316530 644695349 37087013 111276302 97934626 317433754 193602226 971309360 814700084 873051831 510375783 546551064 607638734 766765540 452862725 998605244 244833447 887157404 906157357 942648116 788119346 969140924 265156318 748455969 713821342 885474171 74223878 624770626 185342073 809113169 191983720 693718914 361442313 629801261 673778401 795221063 370609835 955963115 423437535 830843121 361987464 725942651 395737828 424635247 816408369 966073471 945194230 953165911 458136176 724056012 64583800 113096698 354050058 449890429 594785327 862351816 364753343 537897156 612795805 639627036 736998751 961187733 788568685 902578381 58858525 926040506 36745569 979860165 902358542 994615789 486558787 959406173 326592984 882840011 96302086 696720323 564037123 795808347 987508215 999359534 902548349 998638001 418670066 885744109 802836301 816915431 76055988 994699512 464467402 784417927 650255109 988618673 851079476 875705090 120016003 340938349 221515578 490342110 954634811 984864558 284512031 894348995 308685772 849793804 849576899 910409497 689565805 793519004 523904780 561227194 961941067 998281106 573256045 679018398 225464051 482523694 80134063 737378937 251628477 511229055 523198797 975417973 524418720 583315659 632334824 748577119 828503296 858341954 212657720 464179958 871614577 879302798 596211610 773725078 959831417 992135349 97161190 791506454 103903015 522344134 204967441 235321800 269856246 911152326 866509571 899708219 822921905 862557763 25252920 746694326 97271397 546940246 23412041 625638944 588124776 954344168 777322893 784404508 676672881 760967373 750476700 990151046 175072032 933794836 470001848 997086926 914265607 974404170 338516857 817208761 266362667 726127073 203755776 985966486 32292540 559811340 862846620 995204612 942491624 945536892 378217639 384598442 712803071 968475636 280314929 374090519 241446187 473767371 637305632 759509719 668655264 730400254 58884404 997968972 145423116 235999147 488532260 842066246 917185630 946744349 522726090 784642561 410010737 825525833 782119599 955699958 855356736 902498560 631925324 775141342 552207715 641531893 594885659 760103423 152979161 896285834 435522294 754455895 76780228 455170343 992793662 998403431 911461895 951811573 288721396 316234089 435545970 645896036 409281591 806802860 559318793 967560054 226641365 315584087 243432917 600143048 64334504 356688144 199210806 916502115 349324164 851993215 110760582 373228462 742480600 767620439 205280933 236483719 900212285 914711859 462944963 801527394 270601152 904621217 306673334 319045551 150943497 873120127 181978771 576754398 681906317 999864599 211458751 459223192 915991846 965814898 801832990 869585733 850217887 991797336 149970178 662564626 17412782 483677138 586940862 817131715 432434683 693494378 528052034 855192993 699001897 863793626 125846116 633845022 687238945 813779812 164949870 724317949 990557069 998385642 988477272 989862358 687395004 700564319 236629544 425619273 483744902 546565230 663908213 687528819 75559791 90241330 351491825 547491528 360841434 518606920 155425719 866095470 634485865 856736675 364351988 421145502 772946100 891304744 60783472 351905860 358740489 552360788 167897582 893740128 312102845 999441397 897164147 899474591 208891585 532034516 988171234 997888357 668021597 805257224 929065114 988726317 841273972 912054342 537869517 659645102 961897768 978399891 680443404 760668101 452490379 689953928 106612880 292115153 255252547 478183387 872904233 972418480 233869237 775970010 323469650 949624071 681243579 824419875 818916930 871845740 958260107 960282796 973959361 997657817 69981634 284222302 178159250 198104502 302143565 641706388 57814358 811860627 227462086 525804116 40045455 855735719 556500403 627163414 582788893 692329304 790662999 817543938 853941425 990941955 66350185 159976801 49307431 951489685 811986574 923645124 823661591 922580443 714586402 931995813 192867239 864720792 221913665 557143116 225952068 348452931 616170810 880160633 871194293 956071695 585049629 816889308 856483276 891923096 413624898 680972658 80412500 263985739 236204669 273581488 502741148 570377482 137430297 871409013 373675773 736223378 913836289 932595575 563575281 848083475 328387843 450011796 912344594 957423452 932459964 950887052 210458588 527697394 296491417 746072357 580482491 668140480 321991551 467165336 465840319 468759339 13583096 279350697 296445464 600553397 72323853 281964135 527533206 774366564 480381509 957106183 379005087 989764823 341991218 848476827 634791033 776132232 128396101 570276093 356473142 880295543 297053714 835126403 725647415 897942634 365336722 610493887 870663801 973572621 909100458 913121222 278855583 985706248 964322740 972249559 787049236 924301924 541940162 726299628 724942778 824473442 978336224 981065474 287981168 603151200 432169377 768999531 784243265 957405261 464937657 926192818 211196700 528700167 741527727 923225201 360871582 944788194 333428429 741480029 519103607 640589954 640353899 974835196 51880666 432602608 36053943 403126137 465788958 625401947 302098949 505896910 373252894 774436609 164518623 341805434 335579212 752642793 225808196 574341731 417771473 441295887 715155227 953969892 550841288 635592932 429708613 822401032 747184961 756577200 975215190 979980973 173699791 949305209 856331082 870921819 767311699 883387347 885106129 889587312 646103026 902112398 440985735 628925633 921050014 936607602 930740849 987352563 713529815 973112116 319758194 613572806 995552604 996246309 72479921 307904664 886662014 945151285 45769413 479572479 364727059 697019269 124360547 172525121 392362582 641269004 331133595 779980907 205789223 968559340 292842677 766533163 209724045 599621419 661185161 673654259 322270306 993667534 191608177 449720086 514349930 705414131 943907689 969372223 792224862 961547645 663952357 937357021 560670788 969584899 867458599 906195513 169131865 954020963 963880048 967925453 325750721 508581083 822176282 953548296 259812618 807825731 398123530 969442486 731559629 793344111 782723562 815953987 340990811 642797937 354287374 446977101 339970305 804993710 261232024 961931369 405793524 443036362 11870632 197376729 980718355 984586957 262400671 846010965 201410168 270676143 383811521 687269798 826678204 972268368 667725359 871818594 71920542 72703324 697682827 711438122 866337556 964001284 570315696 847203660 55930769 302449411 192049446 750758100 325888549 501263767 234001162 849536646 388279628 462200704 459027923 526610912 649195159 773670722 379934428 795040224 118621015 243721401 217467678 332333006 365755130 687872860 659147101 861499242 922965545 939420723 129922820 783725125 554270787 716071977 706843061 803408585 153969891 345084317 626039611 671765322 85352654 626413861 564327433 601871124 28603545 593653806 561300522 870753499 769587448 894507371 326632049 830537028 43160204 197302287 988765999 991973686 593395224 851786542 254683016 439758609 574511034 761024219 530402771 631096268 849509018 938866344 380351070 910424564 471254733 722193198 433601562 992028750 75200708 897002856 965973500 994133509 209168640 502000343 923656903 937822361 809353231 960495225 226467733 631193616 560887189 664138114 544977901 727617117 769678754 996698081 960233524 968501940 860199380 890517595 252110555 395821365 442805185 637878335 254922139 832927292 907519134 988546844 287799053 862331909 787364822 843798487 371195541 410093870 148512811 804912775 761906766 844348787 101642375 152797232 704180896 941584805 629051464 781223676 495374634 623823637 279110568 910909166 858233396 968839059 601973187 616337901 754668794 767591211 593213563 873968033 178357825 989654395 841098130 904010398 355268506 671783404 478803065 738139828 174353738 506360664 897789325 994689662 196187277 922145231 228380553 630607361 713508823 748004543 58083541 639192744 979945192 989167860 427307524 661492150 131888165 678286571 295720527 352137404 10522399 276662968 238856973 622768758 452744297 609590420 347264804 701919705 343804251 678972838 2557713 153749578 554600323 643039956 274975561 611117858 288452697 996018302 197179126 444845092 514721033 635379070 424449744 918218014 796949211 956870839 125547323 799601448 134265839 492397452 475477847 832408165 74375138 99920966 346081967 869005968 351976816 402992396 140415012 799978319 199580580 827331478 71248588 397644749 831975003 994928737 135894677 804373178 704641362 819108380 826492375 996344413 35509055 432796555 739347545 792230027 939732938 939757104 759702058 934998977 757285824 946706225 142666967 748088666 806755045 834355167 417362901 827101817 626814296 851598585 248030478 757550434 37576024 835625920 704647789 792012330 674495441 936910311 656288112 975439783 814797570 947845496 646225481 693166887 288986611 698965959 633287783 933249475 441229457 862745391 401704601 848849555 7211992 890695992 129204006 153348086 551279416 692885845 993895381 999406529 128250579 868097277 363606952 521472338 486536064 874020214 284378326 833197008 756892226 941219831 764526199 862590805 568166172 732208800 969997186 989620948 41005996 176547050 521184357 897521630 370586760 456728674 62932143 179213810 570678133 801170986 839213544 884028879 409707332 419220593 352176800 759648315 48418037 478620430 107598300 206856694 211015282 358775045 920521029 948413337 140128370 453018203 586347563 693533658 345071152 516934061 680988905 923503769 764086880 901269994 456749019 666850049 871882562 986122319 330958526 810078485 189439962 978972813 763525920 985167909 170527650 869371261 560195762 883693797 69642837 144995124 164791746 679291617 367754132 581825605 308568740 533087229 354458665 407575603 50996476 452957076 646269770 660541171 108921741 990328010 453870927 725484215 28674122 537403583 704614950 807004097 493970930 833821335 457949870 646596945 50139050 118379188 932452781 972430857 595082524 857080325 701587276 941971319 613053265 992741419 967178461 998542903 974101414 974364916 966985719 974117440 855093749 969659905 694937932 817771384 774166719 800841095 713046437 924043959 910009385 944843708 636236823 977430922 741454304 756408805 849817132 936593614 914292958 974075236 250736368 913569267 62706168 690178791 236063788 301255720 811406202 869483266 234428146 319235864 820684238 933403229 702812907 853069210 180611583 864949078 617638761 908535206 70388682 562226033 431167636 980182194 258798015 935845780 627190090 875224585 384561528 712538472 898300080 954245753 823020211 957530285 173884175 268582594 876557528 973175043 802348068 838230341 707946197 940095513 115749648 242602465 137396038 455467804 432701594 643421625 77970920 82218467 304187609 362984522 688888579 882536091 582741465 842780486 263721002 461780679 192239322 540607124 944237127 945430775 229477540 729119469 295545604 429738295 27697010 36421280 445610872 583884404 330543884 954073217 951965459 988072599 278126652 509932185 623313210 812306058 654380113 928497901 167862049 487258768 767612559 872896700 752964626 949992382 783250652 833399484 893799934 998160759 719604531 849960602 612663840 858807647 574624202 738058366 728516784 768353527 879774509 883295477 803791770 988448987 812517507 857128088 630081574 654335483 383136932 955411084 336756408 975223992 816697919 828119266 890287735 996695997 820356758 822292709 513630910 828600201 326594817 987797756 895622955 960877152 688295955 877396467 72637835 922647296 425005945 504734976 755469392 992498929 641761911 980796687 38083990 499596973 12575715 754385595 342617415 514347079 984108784 986418414 696547502 910725548 558409952 836011721 897424289 898736003 770395217 889386703 458671903 854078605 674596745 912254471 100532078 862277725 182482945 720431233 203463243 502892929 839015878 927633997 941586662 943082517 409424808 795862668 543581395 631456856 493337775 787995160 769453684 967107742 178843910 621610596 294816021 982244126 742478810 935325587 336555660 513038615 171318462 866181891 885063685 946676897 920453464 947311553 706723432 746374063 452435843 734692101 856534272 926659204 538427068 980920988 595210805 905004145 712721271 928880414 471309009 734732678 600454056 801815845 71429950 414768349 112586455 720744825 959464648 994900222 759201677 795961123 867138605 883473907 915526391 943206419 281202329 624313263 129103247 983950426 738365591 858396136 1929808 629890892 225010989 716441563 309454230 403456400 683081237 691108674 792889296 930787414 25689934 128218276 555889383 993153927 494039421 736862978 834346793 963315154 488326725 705672506 215754899 271282070 604555736 809594992 469330644 755758460 510342465 593141169 562282939 623791711 787437331 850574664 125192864 985572077 55369103 454458243 841393306 857548952 685209428 885146690 761759832 924001474 428035159 696110060 808433222 963214039 250388190 716838736 932228595 955028782 279838172 818969730 773138866 853105353 626728825 911676115 758340096 987575202 404745973 831036867 908348201 918863436 171736619 651276444 236763965 295553570 218255173 701627076 17967298 48761548 856947495 895801025 785209792 974560883 255186106 306850777 287490956 913052536 964950869 979931990 365582197 931231093 951066064 951177148 294396391 585195107 606479590 683487727 496584721 701668103 235932943 670467853 142856261 312651546 462822045 501656153 755285990 909557154 286630002 964928621 949937493 951960597 514139620 694076377 766558473 969042134 2975005 77401612 447321647 866211437 328959846 578137449 344227281 480823138 413882771 539203747 108904286 561853866 485011130 710535393 202617561 569302247 916822325 967127979 978955636 998133965 58786916 719009093 677779208 886469575 302149035 904039475 631149215 791725172 971608718 996435503 587218012 974981485 556639748 603618499 517983656 687255382 848937224 901712700 225104486 388394691 513401754 610980586 523705066 949770738 20568689 667185192 425176579 870950861 421980630 637949035 123204941 686398005 90214630 626896041 306137324 462498644 351127455 830072392 832168197 864601691 451192827 507800285 673873438 847397582 732469140 922278184 516047689 771013081 808113625 817659218 788532260 819094404 352095217 697864766 811284856 977307732 365656103 660130085 2438602 734076905 460950485 504725537 848786054 923053961 491193884 553872460 640531206 780648486 248069835 679722105 536945267 906882747 724305326 823907936 210244797 861707939 908209587 997365611 709840998 739567720 133676759 464613610 429686755 900524914 575654035 809658754 658257159 954044421 475915296 996536544 689767859 757701720 630469006 814473488 321498004 775635904 333550557 494737949 876580842 896521832 99777826 835425667 419761240 657065927 61337823 609550398 836861389 911674026 78223824 243813289 541027885 752226568 96082578 635098585 69129386 454462829 302753909 723581975 213641930 834324234 989677974 997236601 500305703 795972248 217262537 572443231 725810081 916438666 250648397 714189238 252309739 999228742 528630014 803797449 183868917 683972489 514466645 604702856 61296271 456883824 373300470 440704799 414848899 494088445 65764450 969104431 652948380 668298014 89960795 364997937 502562241 994930708 944394034 965985376 394787546 905861628 149154894 243776234 736867998 850418016 859840215 927321404 679479031 748514674 8308564 263531416 579787140 663490307 976941859 987401206 679926687 771905472 761972853 774005915 783140804 869580741 395558133 580323776 619062962 959794989 29380738 982758017 512437535 666155172 117078180 949480429 261001287 788612204 344368568 791726238 578042392 820790383 29402129 387861628 829616254 909771416 941735339 971491547 208582320 655101687 595344021 933300227 827179294 983645232 560675344 975739762 536146802 814561788 200015012 942603648 495857005 834815126 219487527 887408033 855116512 922613413 48586094 311813802 141645034 530978438 969057809 970362207 946169510 985858472 619613893 920749737 338303899 436206847 612642070 655046667 870634536 952439924 917391653 954348215 22845165 156560442 635041278 933684643 577694018 642392543 46064330 385825810 389720879 578738241 692004673 750357972 365869590 749748275 948463263 966147078 511719918 822406335 367997578 407767817 761234916 822689619 621638616 754924331 450910912 953037178 402731238 732924877 555621913 751896292 985675366 986480404 69230000 981366923 727474316 957940839 617563290 978649807 762277185 865062268 183718313 768684591 986067636 991832194 102180496 492275762 498514598 848553056 903179474 939662556 209750117 471583046 799552594 937246613 919752094 958466889 727271486 822670899 106586127 639767786 992467827 993871992 502478650 614934182 302939475 921146595 580911642 709405048 433947293 614307806 327309321 485542028 399883616 730428298 600800552 604809680 285980452 526320511 141210755 839760705 265771234 639311241 719667634 989552441 253847370 357655788 216662433 373349507 902827589 966747891 213049770 772596097 48135229 446501669 161623885 309050241 170358387 882858669 309933165 524433975 387817007 626878646 827918951 868672394 21231430 64803031 869633864 904057515 741451067 950446195 784432890 989285154 90647507 323826802 588229308 850861658 409120567 836651208 383190116 605040967 896542395 964593018 254203767 816797659 682415261 912022159 321673182 602513425 722662859 909085965 133876243 245486327 674185675 890862717 199488238 740500247 70813370 476293276 223287142 523687068 153699716 936893971 593411660 891182303 418655253 628582475 584775872 809840187 223732331 683701013 660398748 707159651 939880641 967467821 711620995 910661354 39996487 743547468 127570127 843424282 43914844 114653061 826442211 966811932 753303313 823547548 977834064 982741265 308669136 510611116 945581670 987693006 778636421 975198729 904088199 965395219 251336310 702681727 822686917 852958598 243056299 681719328 197266876 878454583 689182655 832636114 914643388 940670236 119254340 464005540 949756648 955126909 512733377 658696270 396967753 676422317 21518342 184368962 330667082 934589049 649393659 831400497 799256628 881118357 208517234 377789237 561879903 835370297 232555804 288578869 190197036 266187480 790072249 874822697 256791073 762716761 891101376 925964092 905294808 953978250 835106807 879813101 86724549 139412707 726250892 945593692 237685202 928269635 883314633 964124460 836576468 852864117 420557586 670895021 49286515 515216696 771973863 938610738 696805260 922456719 948349552 998010764 701468741 787284308 269006973 566272099 798002512 831726423 774760938 967264202 347871772 816578174 301413837 531656093 741437554 851455409 830201642 885646772 229421452 891969471 453675185 591951566 588173478 878328040 73150131 852757827 676928102 786425653 663937734 767964197 845575806 998260954 788533287 981014150 173218142 603099553 588708534 614079556 531699270 537277825 207559745 954918332 10391506 108378918 455136001 705905183 599946677 914805592 325095548 688902637 899449924 953301828 320178219 453650597 370907841 924088974 477290142 599661440 812442757 828691569 658975531 896941304 862767795 975380569 162547388 487527233 662537682 834197413 282498027 905621673 438977629 894831870 848882630 930485341 203518979 666458528 968848293 995720316 773868165 830030982 745195084 800132527 884062281 886566025 706327356 761784572 730366774 989610139 984835591 993604261 847757583 898614861 954772802 957678991 834465657 938051306 498571183 743178569 204880628 809337358 758850394 890249813 113069738 132780202 962804556 969969663 267509598 657941093 212489852 963309998 285853560 571002405 339277425 789357392 100275253 618762387 742516735 916699932 323586093 794233123 966977591 993315515 884150328 958655901 202737847 837966385 139973131 781803069 106200859 706575137 695557254 866228208 555456335 959895088 555889299 699762098 67992305 929962067 998776454 998898750 73891393 250910196 970183043 990702699 309293716 496633849 277519817 964963056 376911884 908868888 722868927 776769036 942860310 987369767 731235419 908218818 761650980 818954971 196847917 468548693 808933841 984933568 696258503 753949509 274697811 598410854 389711608 945718739 197592523 350112898 66773725 951412035 320946713 595797641 131474932 259498665 303882672 548258726 656281838 723895022 640883493 702846883 600386248 856933848 438215779 589716330 236139802 910262761 410438395 753022891 823531533 875946661 510600163 600824898 211051408 237059990 701192038 988150527 586240185 937727949 821762342 959210613 646573959 774273347 416832384 809248127 427780327 633392656 660197399 988138721 285146129 749798575 730941546 829696564 716675645 961638110 422116574 604176248 142330400 756858218 526291565 810783116 391699517 748502994 134596630 908735815 680862097 737131064 934087146 993894568 15213533 65678064 619222059 912357503 373092766 689544204 101340187 779010191 902520674 935194248 347319791 673034127 896100185 919285870 559716901 808126723 477863670 786298501 529499514 946470398 679187202 762692799 25785973 425806797 464423175 683016249 650650989 698363368 194286681 550140003 246589615 766935337 718501256 959065593 759176631 875105787 783426438 908748374 2426641 290158404 651775628 854701937 498485723 542394089 248719349 933916635 872207817 910583597 889622737 894457242 825694803 840713164 753682615 865257326 286326021 501445223 960911807 976757082 496862899 903080996 712104484 811292704 411286817 747252003 608949010 768082521 200957292 911939973 162731998 390165541 769116349 902027813 552420279 987134483 206392113 294469031 823616067 967142807 772444123 873906869 488775735 812857074 451744186 703247445 836077443 934071464 777232465 986056163 332543234 391252392 672610946 898869459 931156635 962357821 907113248 960633196 998668826 999419352 963189894 983443508 740624836 886696777 470280297 693671276 134707530 870733607 475731134 748638365 235657643 714679633 272389292 310956563 620401252 623734560 905168038 905205834 80438946 619544459 751799526 900796646 446808321 542945956 745988641 987988098 398899670 482149119 270830610 302673116 250826942 561406182 739905187 948147079 654785188 903539693 688190733 994361333 604861097 609810905 36415679 636230220 975484987 977522835 706314191 747363966 444419805 642295082 104076576 245014224 697733177 842721973 80763237 259125488 765697681 767703360 26210560 752267018 274995796 869016064 49528589 392002325 697822862 756124058 383339373 536737340 659216992 759396207 167396346 303084297 887175526 887851648 679411924 882297415 228467956 487171174 315643472 321925515 55407106 376042989 127107439 153126234 755343941 850189125 611095740 639112342 556419999 881563812 448302794 459776225 953892607 967208020 424981046 797575233 840849495 945906332 776859330 937463534 462156985 898961859 39368101 116461630 72727348 93694374 179046439 431512868 547079737 880519492 986914605 994689977 246092739 968141322 622521706 652676489 268866824 437199336 296531463 325438143 873769838 972737034 233196809 241593837 848850745 965891624 604446089 904976888 921891712 934571959 842887277 938374174 630933904 741862405 957843293 963740149 8482859 644081929 802995414 834292289 557746442 595851974 397584529 877676748 928547032 959415735 712251698 914065197 606473089 878424143 19435109 424607948 681714757 713473083 752459508 763675288 425676654 681992944 623824716 818155830 764452529 986468414 152342145 271753783 554639217 866076987 743445929 963569874 335054442 842572260 535342067 821512375 1660599 364693299 79384257 855354322 168113802 882584200 307380722 623716821 664895921 858806180 285333993 580541789 220284393 798069816 240539987 682644147 756452451 947219385 388623037 575167698 88319820 88362670 800726445 861433159 378048691 645060139 638605220 825281221 223329430 388719080 994293615 998686580 469248597 703260386 476893490 571062631 858723838 980518864 353141212 927962874 839223043 974086978 190781899 569281605 978010941 998668069 8231434 703020995 793824905 885443088 280336598 903291631 66514987 265674397 345329481 626949018 820099858 949363395 521112589 943887496 822270032 873004568 691240651 692140095 649654735 904103142 375318648 686191632 16666731 535706423 523096972 991168843 400885512 950187282 548765854 929142629 522660878 849584632 155457429 346438257 19394325 998791597 673066521 778839504 377436770 854928050 54654017 893040478 950229546 997928572 819019427 975340355 766447214 917210785 113149867 330427524 889034683 926551274 632348037 954491770 667435795 988324686 378097447 412643317 777545215 992765371 651345154 867330811 152495454 971077999 212755629 328979865 493151856 703779904 156902648 335304318 233437866 742453129 354079290 508469415 454072403 792081371 847545069 853944883 127158272 902864542 250608480 672855787 326879247 546984461 265202450 446099411 849620968 864119632 908013291 911657596 225694195 557989032 940536829 948571876 117877822 618545406 155380497 694296435 793036105 918044383 865582479 933258576 375272668 459424601 226256705 981907037 112561717 447203817 89021728 544694056 961862389 992348902 306023436 621174504 866655998 871010209 137355746 426305782 268459735 963163884 865789700 872365706 431829437 459832339 772380739 846736267 193392766 969697996 163073476 795205720 567183076 992396612 421262517 889481741 535911696 975211345 203032343 653774019 228732583 682425889 42145972 796239639 542528606 852462285 211531466 585168955 399590024 480637133 403973495 759249569 461636839 864697826 94499090 154826900 198069794 477424486 120311178 748577222 703254045 869318601 246753114 261048172 436838952 804856539 383771777 474957399 683569542 923493582 430559285 601116919 178282362 351614246 937494221 991943520 231486870 482822406 306312571 322287496 764480789 999547301 803193198 990951952 653861338 740124787 729311502 951094634 732080368 906621580 185572309 351647940 265022225 387880344 636873530 787992977 764776228 821369685 373951090 900067051 902444103 958580340 603899424 834157152 879453154 887728030 40605757 999162010 829027781 983759086 752771281 902788566 890592614 891063482 211871939 437878177 952055381 994528178 308064186 404460349 102698437 630305743 748862392 974562011 857996292 870031174 169020434 410110828 343391391 607426364 244117497 634229230 637989560 921955811 731547375 877944473 963224557 970329731 381909352 622417364 601610805 736794808 50734132 356307115 112881183 557862254 781916094 974202809 37060752 537631469 811770873 927913501 189893882 409808976 631517035 912950573 780341134 823977014 776904056 954834858 11546261 315429517 491033270 545660544 307066423 996103827 567238339 767380397 270883828 736942994 90850380 514127434 80257026 884377706 304858852 856847961 88569217 550239545 388873075 637246586 751526578 815821165 846119741 923245833 194266548 950008549 824858400 959220200 50466435 341987028 645744151 897929125 971033630 997485132 224180042 644301380 175213841 344981267 479133327 497401532 303922084 796533325 146374312 873173525 319684040 420951071 361732633 533537307 489008905 856664510 249483425 316377995 531650101 620669992 110238705 694303077 832506904 851907495 751122442 799725398 606186441 746643784 955079050 969020272 912370746 991032123 161618742 612621077 153302791 707902830 749182124 845139120 214001789 492290070 504067451 863630882 158624997 659307819 615891559 954805594 749312283 758641309 190260894 870110063 39016841 358858010 967237895 968372816 575318109 711665540 364829673 481880134 441005675 990231936 874895670 949371890 651065435 678728120 768462831 911873383 966060234 968242110 663181929 832512853 762613952 833663125 630762650 787605158 375075849 569154760 46303161 179170634 10836116 457859222 699249842 856093188 382297854 667853222 810196271 970768468 980386223 997176712 665107804 808915806 37904163 921353472 180499854 402316960 462969419 929172484 560220276 740096224 660288427 862568958 632477811 900514363 440183703 536744826 238565443 868726381 160137796 311078946 880407964 906609118 735347600 976988372 808179424 899296110 2706643 723257885 563151077 769680577 377284920 523495505 821725222 864932329 457632598 673132057 899436212 959305452 432703517 812911713 27717035 658187570 10341149 525941674 449054661 597503067 11277447 514886578 374710260 519676622 800645873 824701522 657078837 904016633 744645903 951550397 478787504 845416909 444012764 564596616 464549636 602234821 401527238 791529125 115568971 278282343 331772937 897824978 808962208 908941872 322945386 447881172 375716985 653248958 539088767 914305996 290384737 399340606 554977385 918862966 199644322 336401187 41710389 220103035 777520261 950547959 274080344 907570446 163565877 720985917 865692980 924759542 469241810 800143247 255126310 356212557 599199291 801788927 702829933 832249504 380591435 751325573 849561550 855196118 165475510 782776586 144921912 900398222 768073492 770873009 283730101 698947357 989189010 999100305 576718512 961388949 469411659 983949467 202643281 941293167 942753498 960374833 668490196 999400114 342362031 693434067 598563128 661135218 497796643 830165757 554855026 940697164 351612904 778344500 958250419 962373258 309762455 999371785 904814837 919044339 723583932 991558759 681097785 988878577 568845228 629670451 257086791 609446502 443195554 976339220 756344613 997367734 799767296 987650599 499240174 807635302 73454443 927266673 165507989 758766900 693962359 999463341 485682914 925218066 698340046 834699145 729798371 948351125 967410080 995481039 207830209 400690611 468415028 758533964 967413720 983230346 368539219 601246373 711007948 783807799 901997765 999323480 234002785 995938946 85354969 192464212 27947763 350413577 582260796 900709065 440777324 664826816 16463899 477948434 703911723 736744171 457414373 877509612 276466280 414090959 18799847 953631428 888961953 952844798 835811437 900239781 625760669 921991106 496482517 707372588 526532186 908980282 384858257 424259053 87577388 631946027 487292420 986595015 120456651 778603562 656247485 799120829 414549883 840231149 817569278 856943543 516057467 923281644 849163290 929613735 909606266 992243614 952020446 989873864 980242517 982562774 728654699 865344781 179347117 244085334 103129664 314251774 447489029 538949666 691315138 695280124 488215321 974408937 826723238 833964327 627743336 962211735 659922729 824062190 815091373 832488964 601643775 717958753 447382542 706265306 628823817 781147462 713116102 765932277 786884552 886899230 454576633 780683922 223825410 861666052 991089014 991559445 85376258 280792948 870048843 925282952 587342830 894755778 252286939 953356060 323580720 349415460 153965518 156467118 78436034 636740227 151459139 414360545 43192717 61933999 313356648 981862515 376129373 529209826 237721904 918934974 390875146 855482572 770651658 781791439 310061300 648295666 673761054 740981446 110553152 154469588 192931883 317501991 827343340 903302297 906736504 926091316 882169736 887751176 319186306 808593104 218246887 962036827 747103650 977274960 500960047 916475353 388507892 504857764 806496738 932061300 132447986 728090465 653821994 856735755 106793402 390075329 483640219 851462966 88543614 474205555 935060658 940715945 836701385 858724450 958582443 982795091 865240473 981974734 664437200 807163388 139020510 784350690 948060445 970348029 646308106 890267655 513736193 911223373 478309174 508986460 526565691 799259150 984698668 998950522 428759685 627235557 171934631 513932054 705663952 777153777 969084820 988844447 545685103 700724275 318727907 845037527 60474968 454960803 645809974 882946021 922393109 943653177 586905509 637535715 989265945 991982306 335720740 738090934 647972485 893789341 906390598 920477156 744474398 998516359 536102159 956832767 834020739 950559441 555604577 842942989 716163945 951788627 74478897 786817080 877707399 943876640 112792267 638279606 639909366 820791694 133293586 847149397 582332034 899452484 98087010 174329982 743096158 957035207 395677494 487851637 3103768 450525407 377664825 577892596 727112152 984398418 597404620 845753959 748005084 873284184 275370845 836925036 462147044 986754631 798727508 936239787 155515388 614674345 178239336 706001910 936077443 969663222 539517959 994855294 834131640 963182935 369635896 599857740 396739754 814769256 228186424 735769564 835174363 944352330 789615912 895314570 947672450 994916733 849286540 888890013 553957481 895273361 361619420 397163678 471315907 666191726 80335490 608854142 333131992 922247102 800265221 872203387 385787168 734966745 391545588 407510700 183121993 775715899 290665834 616404133 5641999 89493153 145454247 336151608 786602941 854958024 89980213 99082775 98130443 243582966 860591797 927774041 391559106 716261809 837802096 845929711 646863172 860912515 171031818 598825094 464684428 694429780 578111481 842968210 495628348 848678787 538064054 879795201 286894636 420563379 734057995 754098660 350077767 817424460 257202667 522734415 105814440 994290958 251082330 975130616 417657023 452072949 293150483 508907540 940497958 958937864 905896783 978432250 460723319 531678800 436586799 877639791 992135212 997127231 6818340 124388364 635424414 899349538 972638732 999461279 686905491 976066481 460282613 699229327 625760267 712292772 433583691 702317340 610495065 771100612 845167138 934496293 461116059 751767217 420699305 943356791 246049723 661204023 364581423 955309227 581561269 624384311 957548719 990282822 113617733 239732832 725841771 985960489 623818685 891244175 340996742 882401629 512475279 766140779 745245840 770573016 841588515 875904554 440419702 942986683 602853293 964251117 263519433 715484748 504266311 995894054 196911343 513872314 524525148 951175996 79907863 810042603 222870699 882545560 849718026 880287493 718188261 722921999 666189668 916997342 428803547 806663366 206821350 235537350 479792289 586950379 811044852 853792962 4705848 506721002 142217463 358162897 434045148 817315199 224194098 984641951 563407838 851201593 810656712 923097162 142761971 303069974 96372241 549973951 369290306 924867228 878506903 901916171 960429442 963924670 226157311 375882566 320360699 849507845 989670931 991873668 615727321 792118351 11581724 423488436 398244676 826788727 394955842 888481517 952185164 982864584 372282940 757003232 644244113 677890031 805649671 895527788 644724595 908608475 103790683 373925636 607600598 640473925 663025096 932241490 601941039 725149354 84033118 811015606 335526163 501486705 739044472 990341917 257066872 912424273 810067592 997641572 977993264 978448587 910534027 946771102 936225600 952397829 191997538 886658435 50580103 643752925 821312012 960601806 796440299 880251126 285936730 617482657 600593495 987693734 934563729 967631492 608177198 938961358 999603213 999880937 364593603 453928121 161074547 852562184 106534563 146703309 307152877 613604340 937933551 944052392 933360083 999322888 691718543 801148972 792808001 832211099 896563139 907821962 266991884 763707259 684695236 752379629 90406509 663815587 639513908 953385820 106191944 460584575 162503970 374462872 713462332 812994602 919446430 922370300 738306348 852214655 870860686 972636799 69832090 496446130 447045637 719238991 809710159 872504355 124803487 631034220 749753388 781073990 520872844 573922358 852005585 867553156 887944562 961077986 164459293 984560943 151153017 467228881 725309643 902756849 93333685 905681877 264798494 490329762 286003947 969827945 854290096 887531603 481049262 685190691 532137577 953174975 603146867 731523366 95231593 476053207 357072786 633957208 325724255 411882561 261114717 601439417 984590074 986692180 800570779 912847393 245110955 840136762 392084418 871283384 155660472 842872015 323267720 401750154 809258819 987579512 890187907 960709082 139738242 955668896 914806710 936436644 958905451 976542496 535381602 948328765 920212660 959086064 905996504 906491149 583343417 896727322 893579832 964505694 29800267 925881204 792946213 985638100 993659954 994315504 306439450 984187379 660466868 722400090 782937337 911733840 720656477 785914538 623937784 838476931 703219440 895033792 657013217 726922498 227457836 628003824 968000210 981422052 187959181 232116627 164493922 463030508 523469343 734842755 153229793 169789149 45145329 579449166 641049876 805499671 848968847 872173893 381119329 840026529 823707293 954812851 911757994 936424691 16255866 165684100 923777063 990222513 740052609 785063355 219970389 601802088 631109207 885153251 166052715 967219599 482212934 912021090 889137031 988990956 4041549 22239154 223963725 337969847 506889135 581353703 372052915 915858666 349611402 775920633 951545967 985545255 683943208 913499391 204499127 793622104 977053720 985194050 853706278 899401735 489844576 491552425 540633623 886372515 953119814 997339499 852587623 977516431 910898212 972019948 703564703 938641982 669220205 683280595 175958291 673004227 472811737 889032510 244959408 939586083 480094441 522981287 345544502 754338710 670218476 686317384 69417916 315698107 943638163 964035033 933944360 989057598 391403712 540287924 908254319 959984571 145840511 547026207 830390021 835633062 189955855 640663425 570377994 887825694 956195020 991778372 213986180 949557716 324064525 348558287 419620530 935535577 748874891 987523323 676175011 724114297 134752158 730622368 635417815 675300096 77063365 344379883 526814154 737008678 818318850 993419864 732149190 848829978 241644649 428727973 283732631 429625295 701022083 878240365 230469756 619814692 13925299 291945215 545443876 582230499 10753524 946609819 837184248 971050439 262796936 939781036 144372002 220188232 679100252 969488121 513025022 946912987 626407410 801566303 761637465 796885427 622734660 969384601 98378822 379525208 829329967 878538872 51383523 53280504 184080034 852892631 138791729 706047501 888401654 919680785 857282116 913933102 360205554 626474006 304606855 378874579 54912141 964088942 81857229 776610242 156519109 448768333 955249258 980268327 863959613 996037114 255790848 292225345 568328232 976222403 621241398 830494574 335944012 539693871 403705145 673233244 397425149 884950100 914005442 948568243 146509811 742834669 743617636 985217495 896909067 948687994 234132212 510063352 391722627 585955581 431393871 928726831 537192024 591203594 439156358 779381278 249673044 392169018 907800160 962849459 418523896 915526635 498290125 587145233 951826561 977998395 130057540 391266663 280171999 942649671 229556541 984780408 253572404 849063596 239998440 853768455 476487930 643239236 163484784 521810062 396771271 521297249 3956469 936321832 872059336 922134202 656938222 771002714 877772949 931006367 616255123 970803950 424628276 931637974 752929058 917394658 569567931 766335636 279024713 909630387 699357677 912153732 37250202 859019491 152973018 458331350 698147354 948574726 969447914 980767544 706768413 832074679 540077608 887049504 846751998 967298610 632229632 932692731 432472598 951612606 615952184 773101555 326845952 751682698 337110321 623584220 784916091 911437726 93449254 741691323 862944181 941261481 172518034 943097999 748699141 905074108 860793504 911425347 973977722 981139193 770676054 857371132 810494642 891299574 366170569 544796496 921727280 992386380 926828059 978933138 607331788 973394068 806327252 981683883 249376294 821356920 195255774 989040375 977057875 995725106 928142314 974929261 19808558 612545789 648323747 735620929 819300549 903544209 251655829 817889809 27654861 497137084 878947635 939481761 522722985 537980125 281292774 573568741 130230669 549867844 318485899 761008329 908196230 951223834 555268873 648840225 417350752 655579515 432802127 528765486 838032992 984131068 219345928 942722467 838167161 886527475 181932617 910546043 215496575 597298486 751585560 803201556 362692546 898975870 162833921 968877084 296405396 974506708 497447925 968960105 27341834 763752836 507214386 803087461 45957903 651822891 874677138 914187330 580622837 915620221 79995549 371896007 370484102 875304517 58269781 84658326 2995081 873504642 952136997 981554097 258572611 401453884 133231751 906438415 229434465 723379473 331006695 483671096 895419697 989152894 947804639 950046765 562134304 593626671 910727287 922608379 879351125 888580535 407734131 782538863 910687981 970280303 229182165 822080230 469059669 659988918 960512043 985182590 621694009 967775443 864912294 906377214 726583597 748886298 946953141 996820823 765603686 812214685 27021194 937083128 764675598 963640563 306703972 657747973 115742146 616830026 715144476 748474125 939626311 951904839 966094048 970422259 910254313 964735828 619159204 790166425 438501729 787727756 388820813 622700780 51492351 624681379 950754360 950891044 814270329 926320715 57335870 439633045 716366542 729092902 334163925 448287678 794825057 977762763 842307176 979976011 658374364 717684370 205883749 815316532 609780872 809795059 843006198 951221629 900428669 934396480 508392244 740889755 917027892 978650405 137138746 483022256 674849701 758935940 48827297 651453948 183314260 999532417 913136896 926530751 63656041 986450914 628551882 986613397 49135989 811383269 124878038 519004866 818033849 853316247 511662270 631669758 626709171 986681037 12683650 886403739 415964010 949198734 539880819 860615146 760216951 920071162 560468634 900214691 867228569 933386942 359410096 817423226 588569759 989303908 772617220 904332395 373929036 541281818 417275471 594495977 354043939 574560012 791538258 836604385 3362700 475673368 966667680 982581903 110865397 991265685 214171116 398636705 987912902 995789344 146906552 872467429 40883416 517883542 391239495 651341756 810144959 870590670 555992483 557793398 406195828 921861305 745652617 815556778 568255048 677670565 677595429 715060437 93155372 892687307 933691454 999586779 449416604 654676589 238016063 509164825 875590439 964016950 354023398 501671015 867869744 970769110 699241184 967983964 303159629 431113916 50306504 271743852 391117228 923150932 97416403 999907143 964790348 974122036 573970219 961109626 92885848 695723566 953674257 967760093 874419600 946855971 536403157 745010481 408389478 675790101 78608411 236623265 606033284 846014053 831136881 929572749 404118820 643235493 750909561 872585681 25207724 134907462 310739794 640936038 149527185 854957775 942222473 956825574 757776198 948861090 799730347 902997941 674611424 747018569 214414754 781159091 213283181 273329326 338385819 745596858 807302397 870322756 220419568 381429290 734378924 751431335 535027915 678170468 880110614 948077836 473192755 499169345 762481398 968778125 302575640 954302425 99512161 368816904 843848079 875661685 701756604 840347322 55205304 787207714 138811037 931528580 357956874 783298675 890496229 940531824 196224922 927974999 401073206 590471020 178066706 423724732 229639163 933660176 985246327 991832916 97001306 994664196 67966128 757610467 719685261 867972236 109837262 215501513 912161173 948492067 608765742 628416155 834301042 842244505 138535935 454572437 870448518 965994251 904602405 920682132 873128083 941765487 47109710 943733996 251936643 750445012 168341586 820463714 426853318 571552895 964381865 984510797 118096974 501638437 77980185 223575896 660554001 867166672 404585101 642668875 795998131 985562383 235808920 657138437 246564942 944537698 256273636 956082241 862050758 988938184 60992887 923163266 172307446 279357509 656178343 863235141 596186281 801418338 318069295 485023769 259792734 336110787 286791491 992643667 462954699 926402395 666145527 918301713 309711667 821278763 76060907 935796334 865850004 883025702 388728722 542685952 852122381 894670867 636559418 669536545 17775824 30933515 463996379 561200494 707079594 757420439 606495392 657102902 972001403 992579910 171599135 380667888 632005817 908016870 520390756 609434792 763554317 788561205 590160235 960587746 229826212 850352164 979635198 987266718 770704949 996027485 495139015 774283974 940282964 948993470 364003799 830275356 220162441 799590724 270243396 290819701 795012089 851282163 754146598 886452685 624718191 632758380 159769981 821620428 527264082 613119121 780197794 921975912 817666436 859667606 390452143 801591742 191277914 952523625 601627027 667040841 270882175 554717923 433219392 586211048 755025209 763207503 79303045 186711307 410494151 468696650 231299395 596626872 587031239 828491736 344245778 861236823 453424919 929647890 912465430 927180272 190573714 999208550 877480753 893569284 229933695 549087590 896934220 920386267 501819448 694701109 41036242 286550683 883906412 894932045 942391475 958805254 671168781 795304262 152283641 796061364 645803241 888742763 51110136 810857283 836774325 879076196 632299147 740178348 130145663 937059619 229341873 297446561 16532622 633404456 705092429 992914536 451632010 907665845 583330002 777187170 766961494 815832442 563145849 791974530 424264616 922235029 312727116 746038747 491524831 975252438 949747169 998370253 551897186 830857317 14564282 84943375 197495738 863640943 152968749 847160495 959688375 966493346 960562460 971440077 775320138 866839378 557504389 736966286 421684872 437066019 291605886 749921699 154263120 961818008 276143191 444413078 518789338 679833288 517800117 814636052 988671605 989538705 611438878 716906848 373016276 547885910 530370085 820821019 792704853 871401293 13471644 606814139 671016049 735513867 820168483 922341883 225010862 755586227 6866669 950993666 142481440 515112794 640795376 846020952 141087876 514004281 943082465 996754084 774909195 937847824 291526389 730738849 491707961 767373353 305923665 474372711 288433115 958905044 898135096 903941326 151408181 597948103 864447743 902516429 311707052 859105744 173526202 882588000 783659269 853699414 645324118 920262848 958091516 971215108 799271401 870280200 862653179 939869680 810616453 859879005 69774932 818616384 566347353 850359239 19059880 959784380 53045867 252961381 289541479 915214916 835396331 921584296 329704835 761915448 79818414 83915030 908235751 914915671 702536499 959193638 648523441 651630807 7717445 321086527 552465686 874277139 73990876 996681579 695366299 934820133 380645197 748100810 879487689 970089478 509944986 549185725 346022429 691096845 302848487 358852679 989973184 997607188 109429142 698780484 787837885 829443495 126650777 865090449 443459893 665119636 744468860 969247940 736764205 939539460 970786076 975384178 244538834 639992437 996763564 999528791 960420328 988500924 662690344 704055752 922917564 998864257 142376929 797413067 834110528 970579412 129057544 312590346 759361842 962597314 266617081 977697373 373970459 452774816 484229122 856650208 517839596 804865730 11587597 617591885 531767399 695424534 234454929 289001225 564547440 603081550 457515426 506992094 771028020 998506039 773020683 807758436 884826701 902088007 862669419 908748456 782403882 850083893 667174340 977099290 982500876 996639296 807468070 830166006 741010678 775282318 581722196 936469592 319216165 732074497 219287040 803647412 92380435 337109643 79443773 469049218 854344462 926153052 99228545 528122682 606703515 928832956 473231675 719470046 765788214 816070291 362147011 973357927 400366688 821505224 877044954 896458021 424403617 533792059 653029557 904721147 396443842 731222903 782561973 944133491 326701306 606325706 313868612 943059989 402995504 501455772 942901994 949946873 862419672 875484394 224200682 425068276 277095885 502627575 49319656 981333222 383117925 567411369 740374006 950241819 937483488 950589182 90513975 467720225 816007392 881421346 41839823 769948469 139104735 855480990 391864875 810127753 13104313 449710072 94689892 139735553 19611989 703387775 948427436 982440017 477054498 615431068 270338924 456798868 403413299 745630389 685750072 905867844 211394723 830273048 298237744 519710166 486192682 639374953 355007350 645981400 306602742 564297483 244320008 508136266 397531881 879720128 898017423 996998267 103609073 212860237 168777137 642029263 424481537 667947077 491660073 774830981 361147542 588782694 63462407 494332137 231946687 628542303 565588023 633984954 143368072 427133800 74958913 693782774 838771401 898239757 952126201 960401310 61065887 100480525 495684379 668258911 616159452 799727217 144436994 415662946 101261778 916311559 874393813 975069381 195155357 436616867 550457251 663806186 192512285 938322107 295593859 543197007 753044966 900513787 734391763 939408150 409173584 609254224 705322724 818502385 943746900 977628260 470340800 767349526 803915560 843387815 351577169 522035326 538484109 797723934 428014159 474845206 984863576 992483897 658741283 751391632 399761342 897180608 482614431 849146331 659948336 927065214 2480033 775918250 936341600 966506392 121447331 421633269 821521429 930832026 476968497 546355325 506785827 962578976 934409100 946306780 570174821 760676416 704549528 996241368 151541684 440598998 706899453 761419483 10747533 286783280 486039083 867424273 226260830 920563402 684050872 732739906 106618968 551038824 755662668 974589049 136684361 524078934 83490727 903133046 107198082 418908946 959545215 983898522 752317613 772031515 464737942 588418079 932037614 945573439 131424532 214888091 889564871 997327093 453643903 835841108 962753104 987148758 669908692 769186006 662400660 919764975 481629269 488553799 311116120 785005156 716237992 878028815 790557704 808141073 872729514 902299271 162497193 995777732 192120734 503547259 785392447 828531671 280139589 859855988 233518209 623677724 505135237 850576276 398696034 553607735 127389395 851888121 373970503 474225621 520219790 664422662 200473031 896782049 113946867 461824303 906932800 933322696 359164523 946606776 917111348 919396387 223422556 635379987 798305601 972488858 258269548 491580072 808084545 966144589 860410038 988487415 121916178 571401400 121131459 839591587 375224769 571432122 327893375 791900858 185779379 520952016 452221676 968414658 421934459 505329434 924996245 997893113 991937102 998097127 304207075 498024892 17464053 79506925 83454235 242075330 832974636 917397470 623390756 687815936 713397624 744593009 348631575 642248533 133737473 489947978 907928499 962369597 73283163 718257987 981575716 983883762 411644531 864367098 956618673 997607100 384517510 942905327 828558927 831867646 241231794 523028207 706655193 752571147 913095719 935071746 804665187 901449102 141852456 216460596 813308342 993342592 964515886 977152162 940735425 955889345 162773619 919768048 408513302 993305681 257003317 297756377 607739016 992728585 61893078 757983150 355193076 598463965 965053833 998304178 694127058 841313539 323617710 808187660 310954719 552073575 259665432 817266329 447797269 534897882 997418648 999057973 937862751 977441291 921140873 924727684 888507811 921696417 679434994 859509666 265494618 398554815 132831300 655950254 972602559 982087850 926805430 975055826 441903675 509021609 172916837 889898762 798939162 966401642 347812830 499482167 520299013 850656795 301041128 646161021 426907085 606693715 765555337 943740849 611277428 856651264 686118853 718969079 848075675 987132039 761918249 965432326 951010776 958871812 178790598 225677188 680066552 963590666 891639336 969588413 4773113 464453469 345410944 391700706 411144422 715985063 291943326 684075510 634108006 677423133 107441110 979015653 533502879 550559985 841323650 903417659 628051245 702383377 927891523 937833275 506168502 904567808 847362100 980318443 521500829 663953958 709739805 924347363 821535587 821995244 398241245 856772253 474623235 627004967 652056642 865004827 909746932 964722243 417711899 475729461 927550472 952662742 76979791 340798318 935433784 955906068 228858775 323206574 863033130 950525621 154244214 943749524 564221638 622062506 53515452 407989126 470937130 772659174 518620719 731022350 253553212 343645768 331314296 761547002 823221473 836656162 384507488 742984399 639470055 812639908 695518813 888642718 238490167 934871265 364895600 624878255 700977930 880599510 677690684 848065433 805142906 894169909 119167941 794568012 787288560 936222920 696034210 902878213 761773478 781364973 128529437 451742680 826938241 867733916 221455142 696359653 173645029 195643162 202469941 719402681 578329461 587732070 715709568 919973113 863122531 871742393 987841141 991516004 123135336 259977733 190954125 764897667 564305348 750663481 222817053 903265785 299900080 730388423 214612457 378625831 388238632 618429723 964864692 983157099 90838570 354689006 823637250 947038885 529493441 628545301 50606770 199383580 768534955 829128349 938047298 971744289 796561160 913267687 302236998 778525032 63635023 774767873 849434441 970221949 104512620 828566986 577552874 922124056 666840270 918607720 395369066 747643183 6982745 659033242 774540932 951784877 465655543 632642664 602801889 952316407 215612723 987838976 576313321 965872607 997402514 999554872 619367754 985129227 795404325 848443045 269073616 671225803 716865723 961304316 299537833 568188413 896795531 899336782 314098844 762910426 188572632 374634488 866343150 999706971 572548224 703569421 233963885 784414900 868788232 941154140 533500478 836296126 791110048 917360135 579371953 898343749 925222292 950316448 887950092 928624787 316999086 604400434 779311889 814949740 853443924 916170125 505820699 723631937 346121468 776377044 138382894 557252794 20927257 703414492 420765069 563202607 354999447 385677955 706250947 710470060 590883629 928351543 281730019 503027289 604859369 926440814 521391119 909852911 578383172 587333547 616866747 855978265 134794644 894549581 405063968 518713334 660486240 943487291 21935399 39477324 662977494 801703982 384474459 426275433 810801657 835757543 452523356 629109496 241372311 929143680 617338558 914486092 399995983 919101107 759024966 765012231 1526810 866361247 932414933 959245008 328282496 610673103 615528860 625834097 21018497 253005121 52853177 947873884 678347337 964076491 720792348 819904346 617896781 734276975 427821252 933357823 935390283 950612209 159734955 543357176 262552674 667332827 504216183 723630907 700067671 986047804 798651438 848948666 397340550 431097705 444439424 605952763 941359581 994648067 310155002 675743042 90631183 452786042 856306243 908597020 20487070 519351497 934010635 951537817 349918308 588804812 393484958 897877735 353484471 421252114 19669441 240319129 650605978 715744090 535112022 848026239 523806408 596864814 841323547 881878185 505188023 733492689 318696819 930548477 388093592 961567767 771308880 901421301 43618430 650536719 708297436 993735420 542342719 795909390 838802787 868963637 205087353 852543202 763509332 901088249 978712500 991943336 673031366 867808895 462573285 895531563 721992079 945840269 887777222 958030013 8722645 67972906 202864242 296229662 39719359 463861971 531725552 712199048 539527138 880234658 902369808 915365725 506158506 649100315 3515363 568081319 160221631 921059474 365325281 525799693 4426532 751748132 850877972 998783938 868592907 878280449 350717825 522408337 930760798 937325342 377767758 735653742 518047258 725434786 797890390 849479958 226998770 394080302 164705159 826873447 765212701 884291164 335017910 872068141 919640376 987997330 849826550 981069640 771707095 839975893 366194062 885271056 864234372 924605549 360951529 423201166 656093326 970379871 253197376 582883562 154298442 155808237 574333863 891789466 15158112 766585840 122595089 304393979 409786159 861474622 878664264 997327847 598573992 670047211 431040480 538726680 892574598 902319264 486184893 892068559 916660995 963584354 216051039 907349399 950425028 972263896 482440936 830634197 970903571 993757522 579352862 888732904 85563859 327407770 81068292 292517069 125489379 643989093 333239535 871353010 691862036 900296293 615602674 860172208 459925059 813919599 315103034 581935179 45785892 858492945 338052987 778455987 836538845 979850643 941618412 944102558 153819214 832857070 169428026 762629905 302713254 923720603 383378426 468823653 887415000 959151364 554267791 831268291 910533588 964979260 530154877 953119907 994633360 994672383 96526044 188427053 322759171 774168951 47781483 518165475 841656538 953359145 385689403 438288006 105586390 995081265 42672157 844628575 412296223 884888988 89857237 198147760 981717833 992076148 841537816 916369309 177964198 935240120 335275969 461341193 990226815 993096209 282237084 494725227 850553364 929301766 639495660 996350264 62963207 549031922 988951582 989144505 273492850 741403238 340061774 704580411 953312361 976196521 89954138 708729039 650350188 720083885 424881437 882279533 327258973 863719976 68185107 157791817 620252847 969780885 181561819 471990983 622601292 818684826 642702563 769745131 852581050 879292656 451225687 914781742 40618233 353189358 429550734 811435192 5595416 586492180 328985990 866644311 439841306 734618831 186648165 745175628 567635108 904265719 928735272 933907883 528473496 664165105 942823931 965642224 982069437 997098217 485819451 798440886 537159766 701452625 465146495 780532987 995711383 996826766 478012243 921087514 24695298 961691218 553598214 778711555 247726287 425392303 889629212 994943878 434924830 856626012 546497442 668869543 121224989 321028283 413613465 857390923 73091362 890640307 29645771 473740568 940207826 985366160 412882040 682883460 760723899 829070769 545383697 883175884 830226476 894049599 713827286 839604079 697240559 826282520 829763116 987678618 315918116 939042698 879912628 893802863 38831086 733737909 400872037 432574970 2329521 349646273 219296237 659965571 673052703 725206450 258770383 845788765 313249526 842397182 786986351 908012459 668230521 849804924 22878668 387796240 565773198 715961509 342647654 813004963 484088582 682544684 246531962 759152119 117042076 475137850 788746526 860739957 171780601 448034471 352273058 493438175 598909093 720516032 528242529 724105309 695312062 724615048 846471282 874749138 990779209 993377535 697057668 809233696 25179924 197070064 450929469 588453085 425676348 504637397 325567357 481163977 865784118 928337775 851022503 859742346 430028681 779419778 466654399 907363968 729355984 971856797 728445610 798753038 498306956 728058691 704493448 971582480 918183222 990168190 750394872 771613566 722905485 782052806 368879028 662836159 670805935 719889568 453107756 534049406 985955338 993475731 796384071 988720765 198910465 702047817 488712031 905677740 161556496 504538164 762308624 818383212 260793517 621671678 929385979 992714693 126425414 344471798 242883654 543271558 304298511 582563285 47404333 618799681 462582590 685582139 359743794 942411333 684815367 894001980 495550185 688758415 355522337 785814106 947394380 984016447 639913713 926894818 651360843 932299417 491992617 879440390 38335845 877328388 986876654 990906598 743506200 944769591 796978956 850637443 613768516 618774478 745859987 908385957 977174636 980516767 590585165 763895288 50468030 780156563 20981050 133971951 631601189 694131926 596577789 719166054 617699661 645192257 450356643 587286944 217898025 729144120 399495078 831099549 596156876 911605047 531595540 763541985 809166799 876536210 667152151 824031691 72656845 958251061 90074389 644115340 441310934 573678322 640752277 924688276 913283986 930638970 373858870 844113884 17201080 115598940 28299724 896132735 81492476 437944920 242721748 268952989 690251114 722307064 106313093 883192789 329088180 576083386 219044302 235296281 526190621 806397904 809153481 855857138 953356855 978223229 915268521 985263870 789123758 794658985 987129558 988998952 742011198 795142258 785066265 913065236 144960207 822726588 654696024 881160327 715225497 947039486 843799938 887673452 361269446 442529469 89016528 744373956 774981708 903580585 154417949 732786964 153870671 711536804 215083753 594892991 261677304 724230695 627790788 655357344 757263719 998237862 956372423 996004356 537597007 545451973 495140516 546931246 639001018 799288757 591244765 801925793 974093057 999584196 625124540 758849992 219423738 935166301 801858488 894218943 322217753 970880988 129204709 416500173 575925302 958635087 962924712 986538791 260588882 478267902 543422661 551591558 403119754 679830163 372329358 988986787 594270593 597760652 375370344 659551680 387206312 558189878 288798092 373724106 738305051 888964415 252175999 673958286 936383550 966620522 737329859 805247743 291422044 472723180 3161202 960473066 154241236 660239807 47768057 938206141 619066001 631554764 282947463 322954082 194308663 564340448 137459367 575957685 567535282 906320558 622622443 624621995 282364707 447938269 645691728 919212936 910929856 969233747 257593503 929852605 592343663 946882155 794871589 946163735 364769290 957233464 38999270 571639350 392858928 509309024 168922027 489771127 354063677 438998514 428027003 620164617 666701115 763286645 323227254 938464168 756876379 778959140 436790042 924935920 514319084 537739826 271256221 541968559 891908029 986715143 312793223 485223929 894145029 960283745 274025475 586456178 358269931 617517813 261874797 380404761 136566884 912391434 240371848 910585234 730918332 895031662 830779986 907828038 21740159 445849004 589852303 602854274 740932467 776959638 406504275 846691642 175770725 664684849 497656761 794203951 90415620 206507120 893637552 964641338 908149988 936473483 28944614 839967315 909715773 967023073 175883797 224409917 501091282 649253379 237160407 357970278 830441320 906891816 904391194 906227981 7901915 913889167 628102638 942247768 550651955 642952681 419740505 506365765 686922992 766480811 314902219 476468782 22218416 340455674 952389475 954169344 972950608 993547705 740996721 861577409 449152168 750969587 456948602 560824826 424853457 452270328 578321395 922348011 281738394 645940654 761406246 974814266 562717678 721821974 941450129 953343170 582704715 829584179 709695252 966996512 156558528 354772246 265481412 669429289 101758453 258781562 224259970 541651339 498835353 921323631 817182167 926121120 71798873 156486594 791645684 799211046 750616997 798537821 893677563 910952128 561694468 639354470 910643528 982663958 478413893 610127386 772047133 840805088 336254873 583698460 396846821 708811939 697870105 722711650 447798350 554928709 853072945 975405334 797578434 983299414 160488377 761315673 563043231 989010487 986951812 997850112 515820484 567190960 780388700 904650008 946734939 958263527 166791498 247971869 686662896 806633748 793184387 805370947 184764715 210932650 499035813 643625658 371681284 899380658 702256973 865605022 408180174 612660383 711449009 976499182 569791196 616224705 406984889 702177121 216085398 650108546 632774796 966479583 627072250 681853140 829465472 835302654 145857871 579424857 667605563 985863111 9665694 479961345 775914356 923490085 340988150 722508587 577192142 912134956 678965518 942589344 761019912 821440063 3719812 157361793 509119864 850195151 113098097 984998635 107208393 280768468 829960192 920142148 805247640 874756321 355762955 693850080 189837047 838156664 251424982 847368563 489311015 831553267 677007102 979486122 876397315 877342941 143028550 505200878 612008070 695462446 903173671 984112880 416205257 746734759 984452577 997943365 472123777 817597083 957577179 979664807 819580142 966238038 435259046 502436198 922639443 967214677 392622292 650614115 230183319 265900521 761618499 987109025 967366111 998523868 991626885 997171655 21058917 947961493 334521234 552544771 41220480 633320638 87570138 380690317 281658598 981616258 31164610 766550906 718608403 824080997 177884835 470586519 312710304 773123763 549730990 804825796 631554163 769083566 155796704 393997213 390609556 630407561 485246981 631457583 661459312 994913551 370084891 499084308 127606197 433180062 206734278 522078577 128358329 221077632 897741746 910697523 103407159 125324913 410927847 829967827 311467359 746981272 846314059 964866154 69761513 520887327 609455835 821391731 347672006 870110257 781722392 922360526 560278335 872950240 666144111 904357725 350015702 696915661 202088777 815476397 926025059 978018012 847614877 863980804 122453149 587289291 293258122 650314968 906958681 952264610 889573739 923670830 886029266 977508180 76284194 681931272 622738412 882176162 630500333 933282905 131533266 814109502 943061675 977187947 326971172 823800971 629147383 901317463 712935911 831472763 548435846 824637670 412490554 976549504 80965266 296307068 608545588 723180960 698099978 919997749 147478231 148005053 169375136 368090789 294688930 781476363 590446050 928130290 104598267 584934551 403105827 852719576 10501036 387071597 536631882 576158186 728520113 854965465 119327591 434114988 437995399 631366067 711099226 998107979 427775847 487584881 78530657 817399162 404145808 744521467 311502866 620600605 55260091 106875521 953992437 985772395 886938029 991649691 161867730 407798922 30986058 120158291 592746469 842948344 522376857 767692254 642607789 879930299 889683391 994470333 771088928 972772797 274811643 982259793 145568686 833843065 324118226 724720059 630497813 672982993 168620807 425537539 829404896 897730328 403135852 793311673 157707854 351116355 579630659 634141510 459851576 810653057 803481994 885258129 978900932 988580421 358543918 494189724 952384977 991943232 417887230 561591145 396189913 956995715 445707467 581671997 111386708 740570336 662948702 978798229 372864805 399092826 528965919 941598062 962015180 979524875 254322483 684204067 907398287 995077907 442049799 488454931 32204381 459050390 552864756 880352848 480933336 876375275 934576663 978401413 474762480 962255691 910417921 918662557 23372415 656444854 979771730 998926228 361840771 637544677 1141212 209039477 810824488 811094022 388695474 922486214 939342466 989931907 439618981 816540547 974534130 982998092 280263440 869385500 442078730 735036850 129197065 283826258 921365692 984235406 812315951 872837811 797625999 941382109 750292371 878168680 175447685 443571605 338400853 403366042 13718741 740100461 599353891 718934672 293559591 744903847 662408707 753474687 715374940 967548674 300766770 455011927 984854591 988516450 436952417 809861677 540651353 940834255 264660228 496147019 71929047 593180760 756210800 837082603 385235551 960829266 47548981 92084749 974253758 980021170 4063707 90113645 911969723 972830590 135791493 321691549 561844254 772139608 24455624 178451494 107811339 650197335 240299837 688713739 986303633 990353818 748925136 772535533 994964969 999807992 942160345 954118703 321396616 672370679 843351878 888167350 691950303 778529839 739601021 804422665 983633916 984256857 328662737 411186794 445465350 593995049 362098390 710975667 996017908 997847167 670588565 754346471 179228069 707513718 17941897 129121186 90489987 404783604 808686064 879567932 27981958 870460793 598424751 708912263 591615775 600080154 616531490 664279510 867561211 935837771 994221630 999352169 402166622 446688784 338420497 925138560 658425332 728890024 173442927 856641371 529937849 854931246 61731542 815295663 947740733 988745993 113931054 689625976 361299059 669715571 663111287 969361877 836601783 905376138 911339329 986290344 907706224 929971816 160184598 240791431 960363368 991813392 699978098 903871401 481322426 710906567 986401216 991343091 359356890 607972815 234776588 378963712 628574300 873752116 389980226 482062664 762488352 940011707 509335950 801988022 285006986 901080282 324454880 745993888 667732907 910441069 67268083 610512493 896748746 958957707 454517517 715179903 584061542 785110954 755851789 943741575 92579973 468517448 165352844 922277089 680261183 769592065 709046159 809382896 462904450 843308039 846574510 850073821 867705992 961793486 709176618 892444530 313687104 589427243 476655763 511723199 435193661 494214444 982333775 987213616 39858089 474577032 697989827 963597571 146795883 968265047 209285470 729519001 990518624 995732323 517881562 914285120 44004372 901519749 305585998 769625332 769553873 814250136 960155689 997502069 471095821 887743495 19308606 147066127 864552626 984644314 483290276 528026131 896303249 964759073 153466447 653919580 740052936 851700524 383538318 635018895 235923483 287264346 498051397 791112982 305312384 901127315 384131834 410578924 249642790 394453288 608367238 841966790 595501103 926736590 10646574 962909887 54680481 241574474 758660301 940810600 865788033 984053881 157104803 587007713 771106349 818578991 493971789 579015095 807605732 924122694 115422933 566402174 922723213 980569826 258393523 723610511 381571229 996585937 264227566 695852114 626620006 651774087 594006192 671860820 872829950 893699125 109791096 923008993 62992119 286483243 996254817 999941022 761370314 783617299 640266352 952194364 830818433 894137673 596801737 933310159 938075305 941628735 812298225 903085601 135115573 919617843 797030450 884737814 236660549 538965854 724339203 866665261 499207138 605310764 703060319 876073854 223610118 377884283 681624420 858841712 849936434 923922997 519377086 652917918 603880418 719246138 487400920 719854890 913194084 918514989 332584452 757078881 68908880 562408757 173444707 388634967 410660338 773833181 112786570 698818810 23097101 198594601 375374651 744315099 226705175 713729847 169556417 664653328 390592957 713875528 231845387 338073892 865223408 918894059 326157465 693259225 284957097 384656461 429111322 529178963 885468337 923528542 180766490 981348297 64078069 280061244 865889879 949635965 402791879 450556565 895752516 959757524 115639720 516687985 657202249 867072768 281832947 583169516 625938194 856726010 990674558 999229970 954333740 967195339 443560630 542520279 672984897 746297274 239078979 817690000 105573707 448207549 936702985 996409030 260189365 297353013 713772313 995880733 720495578 914386240 731782328 825610601 721167340 867687362 579619919 604176771 921279682 958280151 746555294 763988431 605501670 860497432 437324440 527875966 252336526 863893172 97457574 552337074 559972627 682552885 488842315 789788202 145004395 389260575 22421304 725529907 520348397 710497551 365730079 890707930 634431986 765688065 894650848 963292024 160460115 911912127 902996695 962719548 334088272 976237666 573926237 803953361 355127600 988169565 970132847 990552515 54636028 71402641 196381678 471642963 410953464 656388690 126533148 982778120 649430152 788383806 700595491 878052099 527889375 814882966 11103687 522537529 500301640 717619961 759695904 993591314 813608191 928041951 155028400 774007318 805304971 823140500 866741824 949293548 24620982 326636285 802912274 881616506 692466837 757235747 138677056 677260363 474510093 684827268 976819460 989945120 116031708 399303371 455766385 899909190 30202059 434142004 49549059 292529052 989199721 992147665 769980217 929217693 322194459 953867345 279047510 487564936 196933039 691583450 342046348 734506916 342392471 889198223 310915765 528995404 859068579 895621235 347348268 820856870 204973382 729287442 371541616 519064805 141486341 840480828 527913961 797103965 278137539 636277409 240564832 766702125 112134030 695292173 675663188 742893850 429199042 485262091 976698499 994899403 715336173 964479055 709646187 728518774 996502529 997231020 718495338 795421020 533799051 626231295 251907639 857389968 597541611 781476171 809971033 816535228 742001252 768645384 841493188 925338558 482428626 562594863 625946798 684724963 976180457 988873445 72677318 541023509 338367526 439841942 352324274 928783693 255202110 875357334 120482118 422681409 833259389 897848438 521539845 796154317 993200993 999544693 670359516 771201349 938614607 967754658 186047692 764370254 24430253 674560657 921374149 948776280 909878881 987301461 176422103 543281685 437302253 498454289 289564134 967261162 800925375 964251349 390903217 730883594 878233414 919898844 598956076 913448165 711734934 849002954 148985591 428722397 852964102 990525302 559552513 647019751 809854877 969048905 696284432 698442452 596521982 744861962 794085738 986408787 970011641 975801385 804154550 821308765 625252089 924926190 353697950 521183105 267983171 435755766 173114642 361514900 485534664 903482087 529156180 772396124 436345677 451845986 863909521 990806650 94318305 361306310 236332157 701840433 103699182 534189289 344378090 857983929 968840936 976570838 3578084 470317461 51168314 715238771 948525871 966737997 971007302 997629259 350242592 859725002 112439661 617715540 733380731 787736688 409475833 410802083 64706148 66594793 569201973 631151638 346305230 991399576 416912333 743127974 937763570 992457662 508304464 907462329 646771812 666089770 688301005 762295588 550162418 875145504 273067969 386360917 584136545 685905263 336504992 460329848 96655094 707902452 313333762 446048270 144678643 898829199 616870605 835663034 543782282 747848203 97764397 543295416 569649468 876331706 272157418 854810431 408863651 926988354 151026751 632070277 128906389 450335740 217034583 805769097 937420446 987681107 660913827 735969863 13353440 292978078 12348743 481078076 958323826 998545666 552138620 776358600 118246817 288861902 376126586 552255319 575663241 884156317 976195930 999197349 50623477 347173366 660619685 694482305 496547202 900819007 463202671 981841277 784406964 967172509 818033160 831205103 832394133 908272884 171719516 276980601 879617325 938820015 927434782 978632964 550575999 760987391 176771001 312397787 475433846 508084273 61480530 223578196 150606679 874228117 189499768 926011498 546995520 965689564 278034385 752348899 58680641 530312119 486129185 513229916 934778198 949936401 904368226 928997552 981863981 995676967 897041713 974984331 382105633 450219984 348210740 513986222 160396430 300570362 610985694 999702737 354358245 596916106 622118651 866978889 135854632 551470663 753085915 942653908 740700219 817620615 23121853 813300439 993636513 999141158 334499104 411051569 54477535 613549338 240369298 380165110 365970158 984055963 704717489 889004579 627823386 909301846 411851907 774390623 354653441 768306554 726684997 973170892 597247075 708860000 599497343 633056754 936654043 944064474 521919724 870452429 535516664 969386747 346015877 811359314 292424904 939019621 209636587 432877710 54126590 753771246 62809271 947152220 932927395 966918789 198231415 330740546 22552968 465791108 630561470 804967670 67539682 996724801 737997580 914485528 549251088 589223939 712976003 973345689 744982177 952156578 893808124 982501839 487612512 578887149 530193054 536939783 110693950 792130540 118090251 377570309 708328416 825939342 422603838 859201876 433766468 967589200 92765019 736779368 189449624 295881650 362947704 606333454 530723054 899761535 56088325 908591776 961958154 992806926 370148579 887226162 191797942 946598584 257553516 957730719 143111924 278826867 467164623 937091958 461165828 656960866 703917706 986013280 304017024 371815201 834208607 966111176 603728523 800099850 854948307 977260936 824123244 933457454 522356715 539882624 373824397 972876667 124990772 536951726 495465097 794821324 90924950 806843592 819554745 845543648 706520981 770126259 349920789 808878126 513564745 690705107 128872367 833289152 811446502 915672619 786722748 798922672 181594176 770355124 644467714 931234030 139151083 984576321 93188716 645512368 131180655 952415510 960350631 966999765 108800653 647144005 987364467 995596153 505255871 693753078 188467597 432248000 434880167 598331706 934947050 960475428 323776262 995974739 314991565 797282891 270115317 462758574 801970906 923838705 592692934 659810277 940709150 982915136 202333908 617959138 217545002 374574066 523648764 603675521 622453074 971611714 159154781 845480690 183732551 472242969 600628855 603447517 581110091 987604209 466497183 602272125 486635247 720504271 11518072 763688289 492743916 507539390 59689073 97824450 973949894 999757194 942587041 951172922 515182455 837970610 437777927 834515069 96858673 676843428 539223297 850627034 890801080 944696255 875767703 883572099 274649228 666617001 277577663 605455571 997591572 997654687 535062366 810385403 57135488 483648308 418905144 888221048 115312749 576527240 92330759 628360750 302602018 590301149 539773433 716504385 213382893 559626769 39681743 895097600 703405461 863428024 256252517 977760374 667353292 850560780 201885423 381407856 783916515 886698376 434664240 646614708 386256679 605580913 623984889 640420666 4061429 217443868 293140771 320610672 848303648 962929362 185581058 766532899 794900837 832114851 349383307 504521236 865505607 866893829 105204609 133819321 446499916 465585082 189804225 412789268 246024260 400628741 221213258 778960174 235021282 249021154 966902890 997739294 342865190 423009728 318523362 835337081 584249337 642745985 935135306 980175103 924041436 970564224 922701324 969634211 283485714 733457763 587334998 729788740 867386831 976810281 63678648 948239685 939570549 968498699 645371632 738384372 740193869 959925799 154488300 693079619 128197968 513747156 804314012 993451397 671379198 740610496 633506109 994407803 720693026 822177916 635489399 968532842 668245547 760733020 722546996 985425837 61995283 303771208 722818238 741357753 848994852 881767140 277527692 829218040 613328178 736117627 614635684 915227592 788772734 873617263 541385194 632694841 98649798 172835522 342723979 945216578 511750658 794458820 600392214 655962362 408131624 755380301 277994519 491374286 306753409 421960389 968271991 983176625 537350465 558070944 641166251 670957611 684483059 808048373 764355285 890549125 172290772 290927871 732654385 870577519 393945050 826052868 278883297 907942941 114617229 296956571 453227011 514194232 466897322 953352359 310041034 360029543 524318935 557652437 979120009 988686828 90922082 459595722 255351418 873743932 85606041 287311150 388926150 499093260 229519675 735728037 152838126 684967949 834488655 842505661 444883627 922689390 417005748 495247157 461787500 886894392 140652465 502084928 60964671 932872772 492085300 550107429 594687336 957602939 940999352 942800967 868816803 912807575 547673051 705681532 720629575 876459257 31178135 526323165 985438253 986615179 811354671 931872609 126091392 573616072 306663450 798876546 106548206 652385773 303439679 879734095 809225977 880602663 429145025 860411485 726663839 872177309 500244226 808322617 947928561 991381122 908156769 991419265 251239743 716707022 33843313 496860840 174904431 775912527 110599611 315037046 326056974 713128569 356185840 451910487 777598441 820982130 193155579 658141850 385925636 859613658 215396108 841815175 997870756 999628983 45921521 815725782 75628519 596231392 494814360 976759443 12620611 75966593 372580980 478064489 282215215 298991546 731503806 858643862 141386584 414092029 721856282 925447730 4453764 833469838 450871334 481745998 716058608 910983199 947612522 991820155 772449227 841989375 750369585 946502166 490365697 630988170 277528121 655127383 108402370 849772854 963463869 989214588 828305543 879248134 672662 356001931 787490201 820628381 451271707 699896901 172070987 980117598 507065635 742893927 564334301 633059952 565724739 753037856 107064298 807353191 372298586 721228728 464446900 574690985 810363020 919262032 213590942 276912578 898759293 902559768 740668164 889377569 480775398 703959466 129735559 479443147 80139835 931249862 360255005 772811307 712495700 906200717 913050900 980831631 148775105 765563137 696989480 710927607 975286838 994646354 325800528 935822393 440574177 768841199 222351047 713742231 305362233 328600964 870591036 946603748 732629225 799206029 889967181 924511863 788787807 839331991 512865362 755746202 537957092 579108462 75121900 574350041 926332444 995242032 775071428 789502234 993423872 996311731 755823468 934870521 188829263 289872136 448871300 689121999 239364039 507263011 320860228 827193221 113072181 541203195 788943186 924291788 221126304 922743420 871213168 973934271 62228079 91965294 843349281 931065245 3983090 729637134 822253761 842706192 13234206 850344066 495860303 917971184 490704856 495036358 182367589 880224229 669208847 863020382 22170442 107132478 419766129 987475640 631262795 745366584 659027331 720448161 843181753 912080908 101266558 545770447 83787971 850524379 895437296 953333096 719015894 957776321 554818935 923537850 939504076 953059533 869281155 924120610 298794541 569665436 870472023 910047218 627607430 919899612 147655393 391244494 191033618 706536710 996150768 997967509 464280609 968218941 995880896 998921676 457073831 704465864 983952140 990776567 137396347 232761630 907244528 945913504 602311139 638751831 587221054 853081967 193972293 478661749 249823756 731249550 852737629 863079829 554743865 624348079 814954724 862701729 992727616 993131968 202101395 420151908 344532896 989249014 304854299 642858816 605300965 945227319 783812631 888702210 437596598 458942789 492830914 824572695 154453162 777360862 940888831 949850463 646333758 862610409 84707421 893136878 954115926 959063107 351404531 424228752 848136437 914805260 224672198 543391542 413395327 892883868 985157814 991926670 610115372 904941144 767382319 980013699 405095093 742766257 583386726 628820848 118282432 791142792 517866629 804225105 846343654 852255618 310069253 683052929 787974717 794991881 181014646 279842477 386213651 505699640 720886647 972763685 430105365 870983578 615825418 859996990 26048652 934789466 801492136 820770562 538691422 907023495 68001500 474642629 359210365 506890085 911745348 967772037 480888175 990302938 121745490 409129821 174521668 276185940 21616796 866633553 790851337 939541481 286480941 874434061 641211466 903238347 498042028 899124710 788302048 914367060 180903512 473019648 392185459 431005357 681548572 705171022 809890010 962973333 152299119 713093918 663347886 707932916 370832927 897600754 480641737 557004517 579785104 872423308 392564643 783662971 616009987 757249439 332755563 398532929 915318151 976208588 403899049 834484181 413362659 665866076 27823602 940338606 4591494 876882363 829355851 963826745 191720269 497028737 38427638 886927072 729991631 833794772 885986343 992867167 466489166 658144878 185827197 801185505 841577158 997213060 162297323 671343823 337791810 644653844 525666821 629519024 790567997 929792963 230102763 380287621 435054534 450146183 160649499 388973225 305870622 549399332 974198882 992021203 885018284 938622095 533043248 649744597 15309475 578445108 225635877 526390857 760926356 968270995 641535910 840227860 309351589 812844668 781193003 927714598 403150296 580227339 983673748 987812352 606413107 981224267 346162789 704068095 277117975 281573310 256866084 424985045 443895900 910695445 92937618 672864473 64714710 382545844 330661494 549869995 931818358 969618571 429308069 889360728 416352492 417426837 526823583 662902639 628703862 645186269 218990596 484480922 516081616 575171843 22709271 156185978 604815116 880260873 813903971 894158563 701597425 953996783 528405323 539535675 91043219 913704116 151772978 340945724 344640534 962594202 656435107 829864412 164575647 454455721 75192663 181002219 385455937 626048167 691416551 696656041 838996060 973944534 304674305 505148423 582769427 637421535 692554784 810072882 861152846 924351752 317956092 499057911 587967405 881050789 540784845 713563038 64014860 935830424 920984507 940758106 642864220 798078640 230631000 880728904 487273832 686092584 523051759 726202211 353516856 427766132 484728526 803647738 160160712 970390687 720716290 739010419 756922600 930001312 593220939 974014493 70465715 887967695 114412736 601377061 515683411 558351315 992247645 992861833 693899538 910592243 156778728 284223675 124655109 926575456 683269317 893685805 872996506 991744183 484858599 727181152 713997899 755872072 641582557 996426628 27324168 81406161 716685665 756304860 658952632 716538313 322431752 786978203 571306632 960523382 714268948 719347801 453132834 505345074 755194148 798856654 802534000 817222002 879385260 983788935 69837776 241115719 20282495 792483757 609574462 788069972 949822759 985001451 947857152 949500625 389467595 864689870 295984010 442850014 69559515 310905238 949689154 961764309 800129645 914721497 807488807 829214565 374558664 748882728 339121084 782927758 676942971 698153396 34582458 277979914 683110849 969386380 901191959 979863408 943102035 947715152 998282828 999184497 913828556 970137419 957248702 995334311 525335940 575564994 747017306 809468930 657828898 696995653 271306674 634248066 529257295 892166036 167671907 891161130 733732975 950983875 737425072 891091034 832349619 982738803 168864868 839163110 667997961 814872597 152369118 584476669 685805980 827627372 178955835 707574778 795711058 899756099 83772475 462354192 577167258 700795881 118037206 139251522 528023159 824968839 668528014 676435949 46068732 982043940 222470900 840966845 912889074 994075834 578881238 718347678 961294260 965284901 810265610 854728310 567585665 887271169 412792920 468284564 546095403 571498713 527041414 576054419 347477999 908833113 559055538 779447898 26904458 32370763 562509158 649349197 25591001 81768163 735096169 840399120 434310275 580607637 252536812 700398035 326171190 441416337 123504030 657007793 128265285 462121478 683988837 847945829 189425287 195155849 156838864 539088882 893266511 909194369 363877135 379057975 593132130 797620980 403724165 735291818 474827963 524764718 635442429 992959301 923394378 926775875 228459410 328210424 500860024 766082764 148368416 248790452 788081924 888774011 69574672 366931810 856589911 931762372 484115915 785701750 939238770 967679811 222652966 799421491 313412589 324691475 847245824 976462495 473935086 752958718 981361670 993321771 642257963 653519467 722309190 766019526 478350923 858809996 892530534 923463621 276393575 321428609 97006088 574716414 384404328 824870628 463126010 678982621 831072303 934348578 633274631 837936270 20263064 441265191 465313066 963042063 406519839 664336981 829727827 877085321 143772506 549085393 827753681 923730674 254528425 563656568 289757331 727957940 231882408 491753522 871387968 889694196 753771073 848261624 711251072 967668564 12090779 515231606 708837829 846627706 187248960 489440458 777119521 952193443 127249392 621029429 727944600 804253002 849768343 955977499 156351416 271757182 291950196 332612689 181397139 699901452 575597294 770958177 453426814 981553747 862336383 973134946 88025109 430951982 628586964 939431624 289034641 815676963 403443422 755766879 97088595 612103296 477292699 939442667 631897604 776593050 404677356 822987782 767202094 789692827 637571771 644069456 536240950 982070028 420844218 460500106 896157905 925501007 275751735 641180127 332052776 874913279 455772220 774792505 960989750 998346781 990775600 992412860 159786079 851058864 444005702 652817281 759663281 958741638 198599619 453038542 131045267 876545376 655597679 722699832 209439202 552245780 544219897 758151633 340218580 507566090 580666552 853419598 63219042 719350910 572223056 932255457 567617220 671237050 641044093 815438123 428506062 973007731 500661070 588962985 159873766 247373094 118856075 226718514 251875381 384568879 28579913 536269112 269341911 704214694 935661648 985329463 937177068 981322792 682469851 915534339 704604397 987471881 484103700 828130433 251441342 959621793 342134640 842532707 92876745 527592655 716399549 807807152 327321954 414358325 64581611 724066350 685836529 744681003 465908487 940552882 237514004 445567121 717350260 957046192 786629215 836212035 823704886 966352730 198336590 636345590 651404725 949959748 139445712 453821818 239702226 364825779 54070457 168724248 760070838 865508794 634162080 784925371 365927077 544018912 439469038 868151081 894211197 957653141 472673966 973128739 629259596 674120041 364685956 599335396 100267448 587116476 863429192 998731552 473242679 598685558 162442189 386536487 840777917 952306501 183586219 431035614 328430938 971685256 71974487 666850242 922242846 974414059 558325961 645642805 17813516 744039104 945635294 955486362 802391454 937758708 211785578 550567173 394135160 947593075 655098319 820846384 515788681 962703012 481739001 928881153 48412511 794581449 390696804 961036935 516755597 564363449 314340830 975898954 535059352 629006942 545166850 649035726 427583857 767974696 477994956 828429227 501722196 740181163 626546129 962242386 473837905 703420226 38342383 333477624 339569195 976250293 804309856 832317006 398883503 876123749 235400698 874397352 643421492 977447972 209892622 405048348 312595899 684940954 848567108 973786188 198047198 666983017 212710577 572412054 323093168 497519045 576094733 829059088 782091844 887274977 39255571 988282428 600462794 874533522 775888555 797949784 982598923 993028093 772958011 773608257 424766488 446673170 788885018 932606976 524239911 668956889 56518961 709952147 254902164 693643244 995490380 999626958 832696361 888075472 290787069 877016359 209106703 435314333 878318385 905566798 588011594 648890512 996144863 999339375 118489737 943531767 627793723 734353055 648088998 697643578 891422011 925079894 130246066 195749232 63527491 406876834 895004669 975683583 58472851 746463043 368190045 570384459 249826389 989433687 573675897 574682003 464689644 736904612 83982178 656362304 674248431 831672173 935572537 992560828 291303689 737206242 477739179 575498715 831940052 995413796 447340124 864223311 798503866 927521442 57869538 459966502 829160987 846410704 112962067 817324520 151069911 592654810 271526891 278700210 37634108 608379644 110664047 390676958 53031958 615464304 375701497 442966682 141026537 354936234 124262585 823150944 930738707 938417582 726137015 932202521 201159076 609817577 757421138 856333154 890607618 895320988 755776969 767595581 363203581 863094490 664903994 869707820 58640416 502986630 758433787 850424552 175374573 518602322 366762604 397508631 383371925 940064976 235531773 433062574 772868901 815788287 597390379 783339652 778025030 974654206 617121365 959339083 765478729 820875565 978684111 996922937 954477598 958768501 353941590 619275477 114403261 771991597 770179863 800218542 408003515 983796815 43452769 628207902 509429802 897406975 980740654 993599171 971270986 995134420 88044419 206023813 717106890 769323529 134332887 487589924 232905528 605594968 404042265 728204862 298204865 777980892 691876752 885602382 908451721 976479479 841152341 875026148 203075743 388739843 543019892 667887163 308474265 742575018 312459665 843702493 591588105 633826347 663923154 912933712 781777710 987275421 293220621 769395232 99359059 542309368 657021921 716628999 930685593 970502250 981942756 999028886 406715977 713947264 227086123 974969175 655074558 733760780 275899520 802833434 118761585 675874152 470118203 592832909 771944304 838499957 680181578 762397285 36178045 514897641 476872769 678759747 692048511 920346067 463095160 645616380 224888909 313272586 791681694 991556391 662046101 983237595 699682135 709364864 227226957 745970682 937017717 970638635 19181026 411191810 764872921 942111855 40895628 843151103 46180016 118656306 691944943 829567523 401709855 986824902 610291940 836369835 423354374 909061983 97356461 328277045 68814833 680390359 461398367 912659140 392716402 620748080 68836692 964005974 664438089 706723835 953512271 995464563 826433861 925854075 566158221 933712337 350187652 543876884 390526584 845745033 205808231 839481526 796154089 877990020 632498865 673501098 276355283 961856703 836595611 919622688 180514230 693063471 869805536 942391290 503280024 561772902 479814521 862298065 236895218 462129929 771546037 953741249 917953458 977721901 507210282 529371261 737163124 894749759 100789377 290178013 601286782 705972327 766555473 958711435 196174113 535530887 368161710 466252206 13040375 113714603 556958558 978680722 650257795 916122481 238388686 622967373 787406308 890593143 491138255 572853243 207850280 523982161 899923839 975183246 295931422 809690457 754310838 969049360 281172037 784911826 903759356 977780039 373092317 463228709 886980396 960125286 457806639 603440458 250209028 639303771 797548147 986381295 296347473 994362611 525204002 833621892 762755327 898481552 313048270 887391811 430527070 905199404 614462241 711811117 477718852 510078586 8403203 644074963 932409449 993918691 20860202 338420225 165121161 839374628 500148994 865153576 784743059 948122592 946379282 979744441 869279585 877589507 365932580 987973141 118457499 747524128 20232527 661355043 872887012 923534344 401241704 795069225 923301536 998284566 150407921 871266498 698671268 949067084 402578258 703479600 666275025 953434294 54664159 363049366 87551755 271950605 367379518 800945598 688718857 838191120 246605083 989536095 842183805 901751734 28919602 389813981 256960925 341367625 258535303 668824304 923410976 978664648 279158963 997595820 30759793 541481991 154411634 951393814 672989428 678987033 504266516 720414605 157613543 912418495 816757563 975555381 490925068 870417609 581298321 769661718 251150268 357089870 310915730 939504725 971961646 992439195 544834705 677208379 689482682 912654619 261598748 650680348 879322451 896738270 996882496 998563708 776644914 982459353 668498743 884656120 531653847 885824153 354145726 539661358 577601901 736816413 609185150 815058159 913473812 971678200 971534834 975307097 888521091 944229729 616536329 998019823 295352662 999610332 393478883 700600754 314494834 348093189 428370268 790854071 8694850 441527282 991922797 992750305 955988943 980397058 49347284 891849362 42157878 299666319 926489285 937218304 50808472 757655324 738112781 923122273 51102418 928005598 596685804 958886141 60412078 488877555 27106243 221627324 488570840 922879182 247501658 262454983 975956922 985477049 919584693 986493346 575915811 637944319 662279281 881585816 891538152 915129241 102599653 276763013 320693103 447621728 641303017 816431842 867398287 927494614 659631584 886211999 332486360 951005717 183030887 781734803 900347088 985828236 175573131 245478429 437380763 799098226 778190693 820148415 452113344 480799541 971750272 973492096 161705753 999214497 789749549 857668323 942002823 977570536 185864609 402726876 981062260 981243899 778510876 955405214 619968904 778501323 791642468 806738467 195480507 610186560 373253844 929800531 867106119 970463335 689332805 755102541 416719438 638196179 508235680 540123198 141547380 622299510 745838623 953463328 520275406 724929700 738229470 963406529 599584027 711013814 231096867 630634014 625985233 858884734 186855361 785037252 105628120 955278939 904348454 926015554 772313110 876355971 783416844 802357542 123847994 308015205 189168808 777449091 304051668 607586868 838767686 913039722 163725598 589411727 767909114 867856791 13882164 720674204 107641343 477906621 498215815 938629368 785919149 967045708 668009628 740189043 919110679 948588518 26189426 573176536 591295355 906667969 412918536 721936856 503087941 819978558 118223265 396676214 426793285 880752684 465278336 811944519 210495726 599280184 944018006 973727114 272350572 963071602 218530600 708784152 24931281 688080254 630600577 943728520 898899697 905159048 48538680 391751696 651866933 786017590 609023511 660547368 297967701 376960115 102618821 299070066 961724221 970106159 540053641 790238194 688536586 873453478 846034361 863660237 919101601 987561536 67626186 989488025 106116342 429899751 285053964 494679975 911293357 922276356 606701096 813068041 352428014 387345679 68894045 758321352 581907564 849498455 298985030 427343495 40703241 488366221 47511066 523035123 263381913 584203350 283127366 973082940 406295602 505757534 359428729 621759269 304180259 389509547 895354836 978990269 514399668 911429903 695397917 750223642 447562303 763831115 455911758 989308443 921345377 978483138 673925840 783851045 942039660 952384737 199131096 571840785 749988626 877056852 454987277 881353257 688678460 848189013 326569187 531284840 256961113 871179152 529859847 782897359 329276096 823388711 607862027 694503499 672984281 874086044 333179694 656653834 635184237 973659695 75226937 847014370 212342841 233434930 965238736 991413711 14834957 940487088 182369642 457007561 931297682 968373068 213766604 328880937 792887751 933026053 787036677 923228843 465947065 910173078 809741232 887401108 331659536 614171254 278952341 385953612 373199344 902663899 768008280 974314027 146371540 344878481 113647860 491690884 580370393 906258624 380961792 885742031 202582945 405467527 249336189 732068142 69355590 300419662 31874688 358437131 423193011 549653437 749516200 932281864 725680988 791795699 256164532 873177261 796843780 929237171 544716984 584534646 891986996 921828646 127289530 683532380 941478898 969266854 123508450 877709899 926027023 968391769 160977580 460265514 183918762 842106277 179217897 602259623 572986043 741111017 192915581 771354123 512993697 625732883 206078944 400584265 832239825 934449336 828915309 935163020 722961967 965765449 763097168 987783708 252735777 838349726 313501442 790314168 298407038 373064537 659578945 997245353 234170684 428755604 773942663 923624503 784290969 805684725 309725013 645067929 537292433 716092711 289791025 723433111 444731184 509176747 673455725 733340878 514958662 689151885 445818217 632226667 625416995 724834619 594315474 730737887 989346667 990231269 453233399 763886123 423732620 821184781 944286678 975917982 154691630 795175221 680091396 829355952 170713703 362364805 479855581 515775104 683028765 972784315 645392904 943374043 939484419 940182820 976921957 979183523 878230384 942149973 744857134 806008597 395245644 712636525 147069456 492110215 304648861 910014935 61926594 66324992 713083317 780809446 882809981 986536577 107705175 481994236 589544226 629931883 844369482 855938833 395860983 665613237 237485930 382749135 514740191 667327210 34479741 592033097 23372440 772241890 501395956 596557872 349368915 507462906 618867460 866315375 513633317 589982580 94403494 102808685 890151185 905488780 682814209 846662889 13378476 797153468 660164822 978657303 895232902 933624619 462373863 641662086 915094147 930876203 954480224 976626540 738668703 893054880 642269580 842072236 572064341 834265131 937447965 964507513 289232941 751299387 468512826 780679459 519277598 644299915 607617937 907003042 706046764 978994581 136572076 405991206 180147827 986719737 341414577 351243556 537245725 610090361 483396684 865394690 819869612 824617188 565769554 899558837 44013062 392017561 714267609 867328951 151359670 196792834 505947675 779099336 423155074 739125202 262307283 351326909 582707444 676114958 100443551 682994926 419110418 835565252 164511021 585053990 471806278 604946178 400790055 773419718 745436927 946494503 501044017 711830954 116941207 712197542 410052246 496102302 36996002 161362783 151722326 503480880 853354561 952229640 73848232 989594708 979251129 983530782 287981119 581876550 471494307 726179342 945722032 957961109 299186542 431277949 353562330 954736599 548984520 648342252 665492801 880678401 350923581 716954466 46116124 947186633 582298539 955411943 323125417 950935932 600628967 838210855 781687766 963137475 15824519 188623823 32048064 57869569 344767408 809592496 54293592 424765340 552827634 826611161 643638411 844583400 555345522 793898939 950748018 961500993 184417854 909939372 569323760 829222291 560410693 722166227 908997831 930809894 139844026 742183950 536001585 946855095 922689324 939948783 271603256 859045249 531708422 645635625 135800194 154465891 723001724 851949113 11162154 671022286 764619538 766071439 323543806 371303014 796772922 850532165 820209979 878527945 522685462 894103271 382786480 905246220 8690431 267329419 877624486 972851361 920556923 964509202 922943686 999457658 146975033 260009333 354842274 507775519 377030419 502809686 381380344 740068248 141721946 291919650 565481635 978209026 780914530 863628581 504616883 672373103 105552157 419934891 196214470 265080414 936525251 988279363 327155470 357335228 842922905 870157018 788763793 976294190 779650335 887459081 187843636 189695617 608564023 683742750 158888778 456506807 516293468 840658759 687009162 789209027 537337485 581606865 462863357 507586270 779619523 798019744 238029326 511280700 680717019 769281809 199021504 740242983 212175539 862791368 792693192 851571417 46235281 199527667 206651415 803280272 661972520 684926623 226674369 264805473 610132914 948076451 427563457 795321404 981004272 990756470 362351977 970743735 440259064 462039029 105615015 567117378 697920604 995997439 228597430 626023563 294702605 777645968 727829515 973941700 50096699 806935847 825399272 984106066 500515854 538873560 710258405 920379541 966461383 973987234 383268989 792918531 769300604 781443429 513450730 871994136 368603445 594168296 515906724 619147906 884017523 948431493 496071797 789953323 760825341 997850169 867020302 891152485 339251532 378086249 268573754 306020497 797325277 882254881 928638902 984611777 372112781 821520970 393264099 963251325 749742113 845446530 798438666 840785142 861774763 911633246 895416218 942337724 548927005 818669839 489931302 911740334 637695572 962280146 789383040 946319586 468264371 783870945 286804659 598245083 923285650 954490120 655499871 665394442 435601192 478400938 32349616 832231887 548281699 903307262 718801906 741029348 34455481 142017710 840803190 920066078 742972711 821449779 606027985 702405357 496979917 516256814 268304058 923863102 899019078 953726017 671322774 763857420 616961563 880875697 512373127 731205255 942838590 995191247 666704427 883903854 242028417 255040454 573840825 892880396 802575921 939311393 99267802 885068367 176306789 843086580 964820065 999828722 147320741 821814788 677725899 737341906 873072268 937152954 939252849 951312703 15325702 128028547 225218799 451045267 187340311 462362634 643291494 791773210 93497009 569826415 839052720 860071568 328579504 732556621 792150464 997006463 127086734 394311750 678476700 894511166 58796978 269272350 533120914 884075436 90990865 244136379 770654153 937036448 818127153 897777118 324095988 997844398 756499371 847730959 982333048 999769136 71730253 939543719 845983499 947854178 965276682 977888002 596501710 668206066 261649386 477096510 404195993 858278585 921460341 971761766 233642194 624043051 83884963 522842121 869913811 974946325 107109650 404933146 934003868 965244220 985467256 998890120 538444293 809193059 777804317 868394636 25691308 871886740 805137717 960178621 698717142 775661212 217645450 464508977 4822238 945328044 616294335 836040998 181887292 216117480 459425972 494082063 98855535 369451789 769564542 996995101 900994241 922592047 209808987 402981061 835841918 856288288 350522851 923345218 176118213 499458324 2999595 571264728 419754522 625458448 27121125 443661337 589304889 735723422 766773929 786524060 588168887 713185993 192918720 612742037 174195199 693688359 710424460 897251424 417986791 946044268 404102465 602936159 616753352 992842900 989375332 992459325 754528897 997998178 288638161 587804894 951905935 998740977 965614207 970479578 135825719 383704334 300103485 421647225 878128515 906108440 102910636 588945403 719889876 824315240 464159585 933096649 573940505 943414779 194706340 437895230 863271619 914601258 253497471 972571418 157541928 422757508 349867020 513152946 306598504 888889306 219155226 284342882 878278611 887199544 664760276 749467820 39582068 293748074 228033518 891565149 307236816 339969066 811605620 939843028 825734075 905192618 856766159 936873540 889131763 999934622 33447793 201694617 172637866 211609509 286114186 788639232 148952965 877978991 268024651 864739993 53392225 221046456 406498913 769918719 793774905 816110851 105719897 636293372 854190167 958367338 933585026 949744586 828980642 981292625 700300863 950579522 413906054 613874856 955581515 981992757 452802677 860306816 369696032 768462729 347064292 907255495 241939101 315472565 255862090 656856346 248210465 898779627 32855670 338957521 109283276 915518905 294039757 544703220 100480082 581975674 894698722 930207603 822062978 874994254 48275877 895663591 757152055 760966077 399439336 767360479 894626769 919640111 12871472 112712777 45349800 356723958 350009676 911242832 651093573 681476233 438835342 515006775 364062215 840498218 833391766 961427248 266237823 268741258 178604858 841285884 669847648 996010146 202346614 382398963 366399503 405645285 633661903 757578127 634906729 716918282 18322110 954838471 848382243 934650348 843497610 914216648 53840066 134516650 548352761 654465667 88987839 613400910 17551259 41459432 388047828 563267755 379948755 790151692 114176196 736454776 422975758 745157043 312852726 849517835 628078277 904998275 299562137 645268232 620154226 799108261 291209050 894597998 480253469 673413908 451535328 777522672 444556909 598389561 595935167 822642463 876956289 948490633 22223474 543051658 913207672 927028813 780834594 839152021 500188610 731078508 685049598 838216418 109849819 480708788 707203678 837229992 31295172 856630252 707874966 753360175 952065149 958118949 574359859 960418381 197678106 693762519 214953370 474858468 965096590 977527548 698635303 919220740 677275088 719720825 296361813 977456899 469568406 526127817 436102156 722552796 547513467 731606771 288049972 979065813 525215842 889398246 718614317 988843585 469106438 760912574 178777360 707915513 396241525 831918287 727308759 839618026 733170401 945342686 417043914 683118846 912440920 975357986 605833291 674366150 974754573 995872202 511956998 916725399 793777187 967486600 689645314 831851494 903627030 960960285 536226229 831741006 396356886 408712090 377372987 720688973 364565207 867887481 64886008 770113002 131652601 479944843 51332628 852290995 430496136 808569746 42780616 554070893 913960810 955556395 133987405 386873740 412262024 896282700 396329896 639407159 164557987 334109171 356356391 823885505 841255898 938680346 222723180 308945293 455228600 613131034 21029748 593982319 750027623 921027773 136639586 179066740 996425384 996937732 878268078 917100575 250258989 855669504 715905614 819403004 550046311 553123204 404479034 695156834 529401811 833859087 398415643 831683163 287004671 716688485 672039794 684255891 608408478 760545817 12643649 401392502 205281454 536407952 490289400 581333897 136364107 465756963 723517483 856656245 510267876 757116605 502447815 978575708 746242709 882343396 909150305 909694411 101508255 984289416 44964537 982279556 664666069 776394694 350016573 898418981 820463049 857416686 660728013 977786565 983855300 984079024 573101999 608981550 436578879 609488604 913357090 970981979 181525402 399200610 177110109 941460810 27222521 435121927 830253972 869177144 803068405 817706184 265079599 344616440 356274588 692656479 126527654 540606334 387133267 719424922 850633240 882347446 547259468 788242389 354859547 769664539 929217047 954446606 767995294 953482214 76718235 175565777 570050569 580564670 208655070 763402366 448529784 993451435 503831773 810304394 874957220 975239661 741943472 825509546 267748264 811443428 956671945 987610364 907109298 935831785 705962267 708003248 312915696 929450525 174546266 811207719 615410517 725547366 297160298 541707300 83338692 677801648 958374217 965962010 277742614 876925798 283734130 438437283 455198595 830662174 642215001 765600497 709674969 773427893 956612285 998532194 571745866 604964637 485493603 912271264 690934787 695518416 289437318 369207016 65099129 833597874 937429305 944272077 722305429 960646495 349786393 902486292 453158057 689946881 494054166 984736559 877334795 884701546 674077342 995095218 788761668 975736069 152372272 254436541 945004210 980802074 277639481 556324941 688297584 779313185 445434136 863525539 947898688 960215858 933604311 937697839 345011385 427728576 805754981 907555518 649204712 865689022 84690996 495681253 940293672 985767551 247963529 533342214 593536644 758451820 539042166 708298098 95262242 704315962 522818793 638373043 104974822 302698415 22346706 627762724 707408713 747577843 995636802 998641510 251632333 992161539 864146675 904199734 368732612 684963840 431085833 862335423 133502570 747942432 366641795 873785245 145367187 343433750 542642704 959054533 176928733 248876811 873052462 994894412 86621469 998007978 39113799 746315854 256892142 855852037 226270187 241164666 101365820 553257536 970366656 997008972 361550202 979857803 150700461 739035564 334417154 807543050 967400834 991322533 872657975 969997370 446719931 774713070 753420044 968516496 252910019 757151834 975677914 982605374 242648209 495384184 945798093 970591512 183434639 961345121 68194455 412996385 500295549 954407584 184765336 704798719 817051710 953520856 286073468 376544158 848768878 916390654 167654175 899467565 299011812 357014162 221651697 912689140 378475628 600123918 669354877 830879272 781529677 980901415 615810341 908828585 805452453 961987826 619973663 663984130 127481554 265912132 982487673 993411590 637969419 656194193 110984140 860613945 234517554 659921614 999470549 999937815 420847455 591189694 949368092 994655849 879806611 996498180 38888213 997015288 282934082 951952244 470494026 541649427 981100268 992342586 575747174 645850841 900580336 900820162 191114838 681926912 875691836 996641319 416184821 954684280 799719536 968439352 904485749 989050016 756972986 813942431 872786025 997146850 995004655 998934932 103984793 369627197 525941757 647543121 770094896 988681098 136308144 687882587 881746609 989858855 538042722 933547377 62069395 983978082 643569925 686618596 929612186 964124430 943849149 983321316 722342349 826469299 59864365 494770531 328622301 503236445 663440076 729448546 55863674 806867792 758027586 938243289 459886893 804922330 193236619 913556758 433981155 992676325 421626902 857862909 838502184 875182133 904920879 939452298 798682757 949010533 568453983 750294714 993617327 997811270 627520857 842804942 225826312 648936010 839939387 916873320 289856581 646330262 742223153 981198792 393312027 542111356 585472943 848918153 561657844 986132200 168518631 399354849 467967502 736589101 73146130 424307683 487970552 895455381 627412241 877600857 780297111 874537794 881392859 893991084 992236583 993533803 789222430 866354844 495357549 726576749 814454524 961108110 635084511 873444584 304895717 466239398 452810283 796973984 473289970 873122943 747169377 882287241 963382495 974368174 31024689 974066405 262645970 985653351 68347292 939001324 716915348 785647985 361481351 383361197 298934482 450683622 551529521 571661977 520480555 826842875 656845093 812598818 407951947 416098313 573535443 984410233 954686111 995639131 180069203 945405946 450178540 637415878 563164972 684079535 532861895 939059057 343140490 579283234 274367747 320075459 259600786 751481841 917712984 984365638 607339282 925838417 926364141 975332490 291391780 866249740 458198565 606058592 793961566 912808877 862425233 910990186 463555041 533544318 64540415 627674058 301722351 813776744 863069860 956394780 122926740 123608007 152252533 169608382 400047694 436936413 310261890 563886696 942410053 969440226 996013941 997815535 873322668 956988713 784413352 886027625 905250698 991538934 107553181 294255744 59123231 274798361 61545047 186001176 554170357 581748385 529065772 621358443 429133485 617704902 387189485 691644446 128217555 810280611 369593950 558082748 481287338 620089802 505132568 985210731 565605290 862933874 302441633 544911986 807817233 919146745 763207047 994751805 29076366 62607633 442098148 746460467 208063321 525192980 95350735 399544688 520075675 863211582 289031248 799779537 23488362 432659888 915501252 992026730 580701544 793937985 728282558 732115109 168056533 225029709 643391218 713579489 344455325 359102569 494687993 497635040 984763971 993687146 165181790 727949273 429184811 514078277 685182224 740648000 291453583 807400994 822744986 921612854 558912483 955337210 840518086 914054015 631228329 718859780 796383098 974045093 948146828 990908387 439299103 847066573 426738673 960793777 9869691 865118397 564427205 923276442 712146116 891413331 36706169 390005156 488738114 573059900 342013432 622963238 645905508 680770622 617977411 893323039 670066470 712411672 468170610 512591218 570855629 989434282 904416155 917632208 857236934 940439074 748695734 950682798 978636668 984384781 22267244 349339242 285375431 359892965 254466555 527770654 21048593 827677377 283941722 507218319 486443632 760193983 263914408 650658584 910826795 970530469 588287233 783456449 808420190 880942626 957923204 983305126 820324847 833858510 661268894 906143322 798035250 977074049 637361086 902543225 762782248 947525682 34833834 865534447 860361275 939454451 792511833 897993449 359276333 794713873 537252174 717599439 50851045 497410547 945059854 971374479 582646363 827851947 975092229 994677658 868216687 954514914 636188975 846103455 215364246 721319154 51717631 282242429 924380036 963130985 404307833 479395259 127377825 308635266 658046290 943776381 767313790 770032968 457151681 927055406 145254537 708311941 319700621 884409012 422479175 485754583 8988191 200869857 992226303 993783685 442632883 864875714 235781016 425444908 818388731 963586742 163253799 882183197 52626394 965981699 880058669 929500439 140114886 234766824 330304505 401307329 225170917 736890505 628231068 811475548 126300056 495425301 270372847 377016543 114298366 254586846 280004320 893700882 119983739 788953591 522714578 856266763 272139077 386408817 647098206 668622630 34892006 696926539 224362520 959795160 822884902 981964526 988267368 988337452 939781631 975911069 656577150 831117736 328552414 734289591 133016728 151915611 421709729 892677374 893001885 984859277 70574756 871202415 797029175 833063683 490951930 678045651 793068721 815045281 637965772 896888176 831890240 878059602 567409513 687676641 859960893 879835692 526826719 735329203 950792177 977458508 820389281 996183752 293922116 878500763 748985376 910293942 191330106 679170437 259505167 612059035 777311748 933158449 390405906 791774334 941159908 987633618 754406621 812918784 161590528 667562201 560600996 727562429 957794070 979011751 763788289 961015826 926760793 936697433 776944708 879258702 386228899 923518687 194264200 909655905 60939197 225169826 641574849 831867302 906437217 975634755 333622882 710513937 942529502 951005244 943948854 992894191 640996108 821470511 2770011 921838125 516819748 947355649 779363932 895474759 186986742 721813320 685871653 839530524 737166692 929086100 429730173 926142270 725399672 740604075 707877000 991101761 312940855 414675034 428159709 898943411 114461661 905675102 352229166 654347317 557033867 894115368 489204898 936911721 575954707 851445439 496747191 499081368 625880234 808795134 522652984 775453207 522914530 713370612 875202481 938866378 139870375 920682197 17836201 819436781 506157152 606493322 294147272 541622505 847072341 943033973 709624325 710396941 787009309 962440616 624879925 706152181 22901747 393697983 137106461 203899986 630249344 834950667 40158250 421628585 776369117 993279652 46497252 950087499 442438066 820480752 214072302 873130408 869986872 986448386 286337915 908694455 818704167 968910547 127842332 463219845 630726793 657399164 700490032 927812369 192502362 946699921 748023183 932097411 435184149 993739516 611787427 949569259 672080855 848376534 597879806 784039773 17753712 871509909 593560885 721631449 547961951 864374965 151176263 843404811 776930818 924995168 545718715 896847478 937165377 994620990 508382648 818908370 818144947 916755811 45799370 873820349 526103827 838849317 447852343 910496854 171578813 583941362 786014522 931459600 521578856 656275703 47402527 813630116 399654964 500676097 105845541 296063295 879633892 886258604 991829293 993169158 423306169 673423121 921406251 946238818 504559978 967443241 308011418 594854078 237753945 466425592 335305282 656957477 942527886 965281277 283428908 724332441 81975913 801780221 147414942 636598310 351623192 533140777 941297644 955594320 449473035 902046306 242012022 807318717 618301918 900094555 637972122 976576085 177107403 362532617 254491101 354877726 739632303 788666702 840132630 964341247 680550818 810689316 916973157 959102464 726627059 903349718 243083997 799392690 661366720 821242729 265526537 397564854 300180675 704790006 755190309 785757080 691219506 931946554 23015284 199416343 622580825 667398088 460632400 534568238 472972459 776117274 751947263 857723424 115273030 349798341 306984285 461583848 424564658 452892044 803993886 931095627 408245522 935195847 283867350 815488788 893268143 911909040 301772630 725997074 411191084 853203173 761231239 944636663 811208978 939170899 606459226 787328373 337845054 823397852 807664206 980186237 477976461 853999766 302808034 553855364 700899446 971006274 590758190 777549359 204675880 403869377 567468845 608248393 392840445 832240035 675168221 686258249 423664023 853717105 69354436 495441129 131508388 967487823 466662531 728209868 440220925 652735030 479601687 985791772 116589700 496565433 393906469 945806721 841679937 985452154 567959717 973127856 181177708 880324924 158993154 585683473 954663191 989157678 644531496 965692112 841535258 871020080 789086772 800634958 420075763 632364909 724605266 789473201 556820422 838278016 533660849 567940025 848348388 965200007 773101103 811978498 588706492 806092890 128866072 881234908 460095827 593750493 553678070 676629688 540040350 585934013 660349741 718692101 175052154 606096651 924409248 969180379 367875406 573728080 920997532 999503673 315336531 489713821 330223175 637581684 386671011 760728325 835263298 973975229 643031412 919802240 959969638 966162343 969741489 970898323 406664476 688810230 77759277 156650248 79927649 854481920 861176725 913945889 551661187 934047707 827467711 965507585 345600950 372959336 772849233 919254943 474372023 725727111 458620880 469644446 241166078 994158862 862672415 892647068 644263459 774217257 708715604 974354135 25350574 107424969 231137059 971858386 229825755 741760781 169317658 794232504 586266087 845944629 76954067 681978844 654106371 752772541 317790483 439121207 92153764 96663763 541614950 659536283 65334382 627665601 269541715 923688518 841355782 946187844 471985050 757496754 490173462 929040465 417169314 775024226 247453676 995755016 225669153 928035960 209012671 287990078 997991168 998661854 751094227 951259333 530160769 745979806 430094457 491200227 856457464 913134535 930092252 982305979 950660016 998709389 860554693 910686398 874472892 908630841 246724973 551317803 670620061 866840334 418822986 516559294 995969033 998209735 74579481 635629585 740771041 889516382 519729380 872366912 340380570 820964696 824965261 874849933 611561310 942791624 479025609 998776975 968745990 996855585 198601588 889955504 466752895 795146192 191698181 506722769 360216381 553363816 648519341 912625700 953861840 985888426 15718771 47224113 216393436 880863282 318395501 437292610 184329989 857375478 273053171 328073453 783574026 856180628 327968607 378147142 80619261 460740559 762303770 778589004 659122216 675675609 199973583 350755570 896880112 948647479 663548061 880434386 98706597 550025658 203260971 554903010 420656894 929194733 914828605 984891388 189178400 873380377 713738793 715663964 944199545 974766523 420054645 945044071 657833402 921869350 663966773 820618987 982329727 995644584 868056750 955444657 566302998 738793364 264735983 559168072 707450251 781864295 865484976 973119615 590336844 696849840 335347464 466841669 520955809 557284220 574587268 763671885 384694593 854881785 289836333 457863418 811100236 852477354 965597962 981592981 924073048 963390719 214640120 696613362 222108588 908703104 694194392 878311497 595838620 722412917 937859021 992710098 945684587 994749282 686340597 972422512 424918230 826238617 916884588 983862879 148288977 226079792 649555348 882305406 812038413 861294107 244512692 825214307 525160356 762821220 225825787 257670538 957576092 967496008 661716498 709561602 63339669 821614330 420151005 511890532 540693463 945424252 173047171 193024441 938332081 973748684 587044103 787565558 303295482 660387879 262541799 794199410 283184228 842752839 381046813 659947619 994643171 996827290 117658784 213454377 992549936 995429395 65260345 198542876 434603716 605112894 308640874 340656915 925530713 996058896 885316222 989383012 900604818 970647863 758803996 890434655 159895993 832629794 178860899 724751669 582492574 603870553 713995146 924468140 806385386 902578532 766064156 853592864 59153111 170540842 382279270 818872282 480262914 759520709 263722394 997693885 605935426 825457505 963284511 976795533 710344419 898322030 582509476 966861028 47385641 935645779 562482747 921573191 812325311 999721978 701296591 859454238 36155598 776208266 27655965 340145648 66562282 423482758 692684059 812422962 568728539 601104307 668175219 956351233 856057767 916207370 340518733 380637987 890332318 990465953 455614166 644793467 145618357 291159791 415100977 968753314 50485180 372201592 122497498 344335632 213497304 549345760 142127008 374399439 171940703 947016141 427234376 765868805 642757367 722991130 704934666 919782962 539586556 636869311 637514642 667520280 92646769 886994295 452889659 819079038 816792747 881204014 453109810 825979270 301083590 311968425 244023101 961116227 719504134 789046832 442356143 996958104 851544190 961277834 777506557 879437991 507015548 905202420 3350942 705449169 112062634 138639787 842160700 908711391 290614167 951670858 290112336 550004956 968791640 992269963 385366480 935924007 475506455 598164112 213827505 449822622 822456622 992098517 733217673 936113763 486600436 589470988 171389640 929214214 149899832 824079089 950446760 973414534 87521373 966008263 899779327 911191981 285476366 951213532 275436544 469971796 990810112 997799910 815805365 938791738 741408854 794714226 299413718 699961366 568869959 611683818 82127679 243848170 514085230 734856424 272974615 773919401 192486183 811523861 879397447 930861020 66492515 491139272 173183072 541791320 58774413 931604537 984685247 993248679 87040274 866679474 367994772 670364026 828000170 913289424 351713191 690434177 762139771 954337615 469655090 938489064 221971191 938857192 941886889 973885958 790547311 927749200 187093774 562434677 803193844 997234702 803292216 892334859 641184024 665660961 228044 125929747 384468483 491011308 625297037 756502313 733503259 950685908 825615944 941519228 558645388 597193839 304517016 385809473 166380948 229385033 132601122 528060519 84116690 863667184 187849199 869836025 909499826 974332659 729136756 867056149 497448278 745766176 668497838 768854451 158452584 258430459 465408523 469365488 606152160 613776366 368515127 795879544 889259510 975733185 873883032 946450177 12623608 603018941 299751533 529724297 202145840 377560580 67730002 449485311 887087429 923479733 978498774 993966940 151276587 698128013 918982142 953525200 984191950 999045933 757762012 927748278 812713018 965793232 327291018 337233805 812679753 994381533 541134230 812209120 519331999 821362320 835117984 985942339 389200096 933997527 754526226 987156097 863124102 934708240 225653886 342496580 735697667 811644004 763244700 947302384 701856045 865188885 369127236 838098275 185159432 570270848 322651688 626814327 109413912 717743801 524071592 684001099 148905878 735792658 156693974 254919859 780746486 940236567 806751609 835973384 629045320 891978409 633180037 817797849 291649087 362576938 797755273 920671467 401438564 651835380 312630167 320352929 266247278 916626824 96852463 246301869 508440675 559109558 714854212 831646173 256678928 778058850 171968521 281208619 837807697 910049725 830883222 834323755 492374762 938919027 749173676 908318099 786034092 957021528 577191403 637328724 959579883 982263928 576708657 717713381 404833222 502004278 133976467 313962264 620963586 989680380 751872310 777155221 621784556 949824353 849975363 881218800 816976028 932462511 964702976 993126538 250198839 615849184 57759870 209002761 476886523 651159559 97871288 981285517 989201086 997455230 431694716 756378579 595738460 606542121 837317379 881438086 20039746 904560561 292365227 350989465 746588945 919185796 985374487 994774839 748905509 793229862 887522065 909380857 165634760 996075504 41813106 148933215 139273709 887874022 498890232 925445203 640885243 848984949 982810522 989363762 547309854 963228708 118688861 776535012 87517939 169623986 914740889 985271653 914094852 975841385 540657782 719255376 243421513 834005787 707443740 831191419 652026486 772417390 139112300 300374491 448505438 957535365 137865925 648448414 389142550 471466872 26104570 792310030 706749820 844455818 6886745 202247799 232932913 992368840 127870620 595841245 471778948 927089885 989930623 996153262 711702759 741776241 141167316 636314655 878161463 967962678 434359216 668731048 685626317 877746414 189310207 382511249 290499698 355517360 472143993 994318359 1187831 139288718 702843275 952568332 782931474 982567330 241696783 422403354 792421344 922671865 871224844 912459657 871976901 904771203 946627670 996917687 219724689 353188938 330764420 577124250 600162490 629748853 319952078 742191074 57232944 589870636 882316737 948205175 3179481 395429992 439831079 747563016 730400157 808138193 58008177 111611168 390074450 509788372 182224242 248535581 113229329 945504541 515679630 620370542 15710288 918432092 912405602 950873617 589227369 912645811 204794259 514409913 756288898 937913350 909412171 938431307 883663550 907879513 514686515 719165783 539032728 784463865 14390288 46979888 877026617 963940559 547850732 681372040 583116648 806162474 300767304 698161013 371811468 858581878 441687168 467638634 417985150 449901564 298710705 942152601 245762117 665504254 311370634 727635853 983276788 999887084 655186272 679199438 483673439 936501885 822178382 982464628 346324971 688183766 323359195 367296995 467053863 915388639 911560120 917536415 35151925 97406768 714358007 879362919 791551268 846761577 134062657 254213370 315230764 572859658 452786702 657608823 796025607 856785350 575771436 773349047 400795241 492009300 545110542 965051277 981549667 989740737 559709549 805109705 756696892 966409485 308677457 498143800 274667040 567122215 443759846 492993290 678490522 942911605 381525028 625703671 551104028 782574005 189600367 523249714 148951032 636387363 593717665 641802663 350697584 570795243 837142826 959179243 312826468 930358752 71859064 245161354 814843678 962599370 732269266 890857140 550549766 713265374 693569701 774387794 123759164 673947819 936039695 972657840 8967659 853933172 545734675 948477731 949344126 963205731 869732178 871218818 516681934 943420297 537084825 813154407 402642859 707122435 428202681 501812146 92161180 960938572 958594161 991623628 678468317 910802603 323433472 539832676 979080944 989779849 692688353 937403257 969041024 997452313 877260573 885219122 699777015 914770641 848880619 971260775 118335981 981624421 737279822 840386774 236785215 849387313 469700459 832363739 878295182 979184276 618401899 927028307 96015647 482091971 456656293 694084136 505983293 854263930 337150891 504441993 719913554 898266849 84577048 168770969 815060189 988569005 928543102 973096811 341626441 630049538 286127584 676721288 303160272 898421121 802103725 804121468 349173558 974941992 256460261 463743560 532508042 645078995 182371403 986773560 706398855 910581654 921489464 973487402 34858273 586929235 250463041 283133061 437791679 576658331 928087899 977306527 349085066 614040014 484027402 728002627 365988810 908174274 862220444 881365884 343647093 937623731 530007642 962574946 36179453 402654126 189671253 349187894 141743776 751069386 385865878 615168348 976973258 995638064 783891509 875715968 57845984 461273349 469354652 771376757 407240589 435005762 34507488 996325575 537746692 983004717 989659169 995708608 565005603 948084758 750885688 957676310 23084092 58831194 581406006 596552466 552129867 997827201 588617897 869575238 919159064 956693885 817016597 948950074 100520522 678430984 28001204 643709849 387928815 434637076 410519414 495619203 373949395 448532913 74494949 474415767 537542623 685807636 102542872 675268399 768874599 961665292 181483430 587225527 654719436 865788085 471481298 806666127 358795201 902106864 943218989 969099316 216713904 278733016 368512702 829473186 25941254 410045546 455944936 565528567 832074610 903057946 842662862 870062810 832469480 863919366 289619540 381375086 753398481 959368645 288873202 901019889 97008651 506255351 575484024 600050879 761301160 858309581 737649332 802265119 445033049 620860312 698072430 740241011 105672558 329634960 758886472 925266359 893059623 962366153 644900733 705512015 982031357 999038718 143774169 349545046 513755392 691039346 961245631 978724744 471884621 644098718 206465249 608515189 271999741 793285434 634191226 849166928 165303657 492653383 243348411 986124289 999061352 999110942 234375705 854195045 586324236 964494291 158964973 872678305 582461953 778216000 374356708 952989714 596194869 633021159 998255439 999206488 109114995 563853319 91115652 605395474 563941400 777047681 989041242 990855638 772574356 997888289 329845445 995174042 210609679 750503194 163560246 260815636 463477761 704295175 154372299 732998210 311240952 847012516 613614450 954558459 310548402 604289071 103386483 311577016 199231541 620609752 45082699 712600056 535182688 885466504 764268749 809133768 822195139 952660358 887071976 943875861 698193369 723765979 805839668 877718589 396884672 706256649 120610007 789076266 908254167 935288750 461917838 581039730 805359826 910460246 163662949 592834037 85142079 959339930 611010042 814019752 966620586 978569547 130799550 343705090 40378584 788826900 527905447 619066385 912016347 992409576 611377484 769970644 39783370 476213035 118508955 426624999 816106492 969888562 687784009 787257815 797626844 966431126 289187374 613618593 450902633 822631835 857815715 942861523 383700247 713282540 187523122 329628986 495743404 508166331 906956565 924854724 947420004 997343664 487824356 636792595 347473497 511100448 247655386 411069662 832208252 892898447 48050469 175202043 313160525 897513726 420041008 886895660 528181949 681909339 116767554 846403048 428840697 720426957 109537127 747833327 431503965 538594182 693124097 742353822 596570150 890582064 409021080 420749588 971162578 984815110 944809773 968626352 825371061 985006683 528199386 821473464 573606093 755379991 322769104 403342704 584184400 797206857 939701652 976210284 945079759 959872711 764338398 980774845 459243833 486759180 728104780 799431690 335906300 777072598 61546711 396508978 81223723 145770771 967712513 982182993 875440667 892717891 611057847 636284168 148777042 442109336 137261922 579806560 786469381 791834632 92850495 991798798 930053791 993287650 866284699 980565080 616280572 643377058 382095284 876772879 98564635 751370142 788825942 958290118 641720866 887761566 349185010 982548980 707274517 993164394 136444531 191660843 927705363 952405956 843033251 867726131 41577221 944718690 993862955 998087766 693127093 996122225 34941632 104187564 171463763 176214251 512146099 544293043 930457615 994857348 443420271 480801544 300513378 673085429 654460755 761363091 175431331 189992961 487171242 559798662 81031357 846968479 739721027 987495578 342093439 557318458 287906603 475404198 883118933 945321982 673807123 808674760 982020074 999418239 92072836 961617937 611052280 993346989 383228474 746693745 518175832 862206121 446563784 538023352 276562707 513423709 285617002 955119471 298680137 385317076 959602059 995908657 988758647 996268123 374198531 573559399 858986115 946017232 943108591 949275311 906958382 915237475 197471495 232914767 495691859 859612400 2296676 4423916 13133024 527921340 668367721 777511104 185066834 192930455 276226294 702642555 277336190 590266801 421839623 966437754 446503640 627315068 115705365 806330804 135102443 849554159 69411824 739061466 360455554 524571373 843214377 901980051 974191866 984590786 265916090 968565816 190959202 737336478 895967358 929091940 508627360 921334251 945343597 976521291 553713640 791139677 26948746 141348167 499707310 698836260 365115624 512599348 745694925 850722615 644143594 759511731 935101065 947730219 875440936 893755665 857336632 898140711 627055303 650694358 512747831 797495707 101394537 525685480 991925495 993601629 103102455 163387487 391995284 661015034 613596997 801515634 46683518 761447544 832968492 873694204 561024250 759961975 24080409 937706259 551981884 914928865 848353953 982908862 400205489 861596263 608616076 632343373 455255871 674638554 589852827 916390739 711151422 889072663 148166182 554847379 234225721 629066592 561134353 845515067 277254309 570888627 81714195 385215264 251578745 251761204 392705258 585230195 420329761 657050227 203443528 717002119 357866601 404387398 611084023 922024811 756356621 778038056 214315831 702017587 768559634 910681904 472978738 483090437 223516915 965810383 125337100 939359652 686129479 769801618 965612844 990885365 726782844 911577522 759657186 804888637 743338482 936941129 832203670 940006049 942676634 951311281 932632176 979386915 863885893 869210830 584242214 682083379 198455487 942298878 910323026 980434945 701399672 716790612 727700281 820100772 273947083 546487486 609142032 965121591 411885831 955401810 520386155 728673840 841449866 883170546 584479041 781489076 852283301 859594669 423436325 424997856 819905704 848929615 94563326 894732712 113041637 828956171 561224738 797833034 876109044 931722754 890781228 983616481 772345518 941455692 125636029 146342044 295245603 720888324 910895327 995363318 615220627 931644719 267355670 719255181 961679894 979702413 498483963 966636728 997064563 997125091 586142105 636994656 420639012 845201275 532127143 764349089 526659577 929478327 367455680 679492954 425524421 719419382 367794653 877887278 661902079 893704008 988052234 999022836 777712480 960098277 594458888 786261971 282578888 401915368 261173053 354545355 491938119 816021106 806467094 930786853 670704886 775289411 35113005 410791293 219092993 473020535 543457364 555618568 595864253 644669241 620584869 756565990 497450137 605450224 980098621 985802494 828349805 935596860 959431979 972652354 846481274 919605177 217979769 839679396 764355876 827191280 682702280 847840125 935173706 937089665 701846751 939687230 650553964 687360184 795349172 930264028 120276204 409118349 667927786 876236782 657311860 903908463 91199240 121896390 149834450 253589372 508765465 678337387 91120904 100982226 939250802 989457119 289874708 974612629 598627853 961899813 868664000 954506171 520180671 864842211 338290597 569961003 518784653 921048591 355293018 892806597 194816557 788365697 910587851 940149704 242791760 986402086 655793187 987404244 999671785 999795257 373123124 855173182 944648105 971733576 26767490 257462321 566672053 604316407 288172916 892359425 243749359 814354665 154243682 496107678 20728342 635106443 512984946 751273485 825841935 971327377 832020483 975908322 827326284 867196393 872964715 954457224 286480837 817751371 723739263 887999846 241086982 336743702 585962385 942901013 282623843 701687360 996405973 996987993 201178411 633874896 394015912 474525250 989173761 991006823 646448812 841351429 170154881 208498703 297302121 318483565 782870126 913520696 875998244 934714511 695572806 891309648 393694168 820419933 119087755 213934713 727491427 933445341 316321612 663663497 990541084 999923410 244929666 273016676 276687891 930364793 122132278 422242575 217012951 888494697 514166519 905741986 88749912 953907499 599982223 821586708 779262698 936664579 494730150 516781923 654595754 783039439 551578040 978005738 829369873 973766789 802882355 908913169 315154865 347564953 848603339 972190749 489100153 790684119 781081299 994586129 201380555 559423511 327338147 873184528 979058896 979108491 392447652 757200127 234676503 441617088 563528900 952683818 950494804 986263243 17440538 685209056 195776348 820187862 706726648 946279097 93744282 938091990 5445050 104606952 951511701 997330105 54555369 879580373 668028707 764618078 753145049 979289500 613926517 800336310 38490717 50499962 979643135 993584853 535890382 831692461 339696218 963328624 453979452 529435823 774157359 967773884 443881169 491260653 899887222 980638167 349951153 828738113 730684118 902258094 828424176 847828643 215699611 788296536 835849269 923116199 677547431 727414448 597141817 676925026 342261459 564898774 418952160 557117557 399656355 449971912 730859313 778626804 995831860 997860261 840345688 851810039 256024077 488638543 721471575 893980218 887457826 898861669 551416543 844598081 438199443 628631621 661531129 772198479 75571539 336672820 560999093 625269316 695283564 766723755 367921359 571868122 249817736 603419875 674275978 698084944 894750069 991618411 743883631 817781943 751446170 822023166 511918831 980776491 872406118 936483595 223202897 488092446 335532296 403048934 294889519 508705003 360668328 433624736 317341210 688255917 328351849 902107290 129879544 618789644 576012799 837035230 632386970 648097654 707687240 721790946 932873456 962461697 553240187 877901393 491439837 638818267 366206993 605669408 513084116 640234154 108417617 508224567 61700933 93481885 24909214 929315685 864530344 983193506 348800454 596376601 779548300 954357747 74050080 472967828 474703712 555935933 568081242 834258793 169416926 974740041 76075004 597330382 167918810 386468300 91514736 584047702 380423407 934574153 120613324 792102908 991647907 999568851 516361368 810475040 878866832 904762348 318949313 730585251 453688425 981886400 754199233 782131667 988504264 996911145 447296320 879157149 610525811 800783503 477783803 915380078 299551218 564732872 288528762 294477195 755197759 775292222 439217897 510018254 161855884 833869843 898186484 926892999 69824692 613552825 295750008 336521681 832713320 845289468 436948965 624250147 510299404 834148978 441708935 502201309 815242829 858152845 621358808 823256528 429796856 769120953 502176729 546423345 178653584 317932274 183180899 966076159 657266530 866817308 910438166 912764843 444108203 764864169 333498569 888783937 502935064 523278128 355637868 842302038 241867355 557966236 748549584 832533191 478838266 508130870 748886806 894818618 369862564 773389194 182820677 944427401 940971149 961463610 746348655 798344439 829350212 912987899 854873982 974382547 552550148 666343714 438101417 828786819 419864974 786392174 530079102 590641169 641009276 824268074 140690017 231447515 686483167 790868413 234658713 359540615 437791950 638432123 495867594 606311775 983609497 992717748 815430816 994954882 374202532 932821470 163681466 245814816 508224799 741461665 985721036 988777621 185007409 353727712 201176570 917510341 577456484 893723978 476355102 835690320 536577071 889199969 965715411 968745967 382138421 472061533 123581526 659814456 573044485 921115610 893570707 997628468 774973021 965520019 618966246 683708510 173053383 367615172 181686647 740700496 621726244 951229479 155763555 400627558 322541797 410837916 179008622 913082719 319236699 521853336 262028413 376412505 75562365 141707842 401920465 551628703 217045980 730567045 94996611 908117137 946892777 967780275 621695467 889288641 916871641 962172447 811971113 988546784 488505150 867174039 749165835 836016407 39220142 372290857 203651024 307569747 581776415 915566554 943430946 974061760 12254332 527993469 514491039 631461009 92641366 123162502 390201633 607023907 49709746 495051422 153727464 249096711 931492822 973544325 241119571 575629596 156229164 799797793 605155984 772168292 522563280 798431173 362653998 722549808 511913747 948462539 324229988 493649622 938484814 967192612 189220208 266338913 165499295 762263388 587602095 971682902 632257424 684371758 624467700 862369149 698070818 884094912 71179876 522689534 793314530 999175205 447993996 946904112 540767908 681249364 220690531 870653087 90978441 786200452 754566056 775687905 6338984 221808213 528879069 974378680 976867270 999408767 381335187 404459723 752221892 894322383 801901272 995164647 447404854 909183048 875541618 908154718 816197146 970876037 233563791 242003626 308512662 769854109 608645197 984516807 950286604 966555466 267755396 600639077 441767132 708218003 936321837 948394758 140099428 506956485 94000298 788732855 75769997 168711933 511892046 980354950 190161240 951357594 808952238 886008292 114975279 369653060 348815879 964099512 778825899 780277696 355719812 646420600 439969784 568563643 907915427 995349937 804237470 828057303 705189713 906948957 373330853 516050236 540045498 596548067 116830258 235502486 859630039 895229720 655521149 733841673 242624530 272920424 634086818 747502470 662233992 940023018 783073317 804325412 647385436 799819398 851563728 956440491 995471368 999174058 200107691 215818355 280291017 537936788 272869409 537184634 674450780 920523836 606595933 979144928 520875711 868793478 326994784 693048066 152709146 414305469 988682841 996253537 870989290 985690502 592646108 745781085 326583007 540691217 271999810 948992300 412737797 452394728 987640316 996169859 43105733 578107985 647675020 692636692 291310049 921616308 72863324 182052612 722505419 729072413 206302091 890740590 836196779 978299862 598824351 739902184 633650704 689894101 41771274 935110550 539151327 930468943 238553396 606890034 960784743 990798153 966226915 988657171 753432452 820574942 796217221 876127247 63747293 725837241 60310559 471985543 486272366 977478340 710686034 959136913 684364696 812493135 573255257 742263949 258344095 975841868 431021240 455414603 713730150 783056155 800527476 901715904 69265164 735400058 524123278 644711783 225037918 385594373 130070103 925991714 249850629 362795890 399747667 764328692 925575827 936743759 686647216 809257779 846794348 992367600 297823075 309071242 775574847 897374676 935499151 971285988 733458322 809808719 991290158 996285092 489928492 791080230 920163670 967153726 232083662 677713410 432059995 712302936 35075474 698760280 38685788 652168171 563690645 691584147 546359491 611151081 232965915 852435779 152788908 201219532 377170932 901148116 56472615 851547513 961638513 974383235 198243311 269180852 735251238 888470884 838996239 969204277 392395286 519194592 804841326 995844619 689855387 788995060 9884622 486743441 324173285 744539345 891358138 907480550 524029404 670739254 49607404 848684925 648170287 934687385 449110503 662338643 62719244 609470770 408437694 965726164 879645336 974003297 659494246 695543852 681060360 828219817 914698267 949391175 756848447 921853412 405496187 844393129 682632392 688058868 770943144 782464578 168959556 456058702 446498314 852320893 350432910 359810877 54984464 72196547 816534125 916234665 661095762 823763732 394872976 759024577 99928233 774742302 580564015 760537740 513843140 754163066 507554652 551983683 194078425 227312084 250946523 272256234 962123957 969031800 773909847 804857332 304144621 812344594 684522814 776394071 614094015 945618091 493236766 720380255 546209660 587764968 923018451 957204100 213859606 817967718 510149349 913857500 198408941 807925542 243362133 388684971 500233304 894764610 162539583 436530847 563777387 993582682 471732197 509662478 715497269 795474103 102045986 291257006 426177129 992786475 708686107 879976138 490306975 731694704 336281667 381023947 85142972 803951780 861504202 973400577 355087800 590761360 826938695 844896887 278364375 394533979 832424050 987065327 284683162 398113921 935219837 982447933 806712695 811180063 749051357 900267061 128293652 853614196 754522448 959596208 76943583 239106396 334818677 866925582 577392902 788776895 117390683 522603482 753962037 775662644 964076833 964265364 617495153 907143824 614706933 808560410 314711077 317789329 335710361 353382448 711256624 729190102 510233019 524906496 326205622 840215488 826473233 905861967 732261836 786456634 356415566 589339685 239007532 434788210 944354157 956590484 46326161 200835891 694173354 985075904 458809590 563236354 537938841 641343902 17191889 207122032 472509771 999931149 825598576 904068690 293693412 580343113 673571852 962909742 537331095 640725512 454866341 881928920 709908609 812266899 539677083 790471583 299833788 807863662 465195443 984328680 558543767 734558372 526148437 826769263 517924298 950782874 78874663 558682947 586885382 904425645 208008159 486090006 46355063 629525926 391325613 991574613 767682120 877341579 493873797 930476966 461298045 789526308 289501858 870030247 32972978 233186574 867833224 959463080 205926378 548079282 901258439 939057740 650803066 930366096 275716229 559038021 764749849 803583419 528082118 768094327 284098578 288999645 243678117 396942827 616905406 714192257 116198767 411047721 230128154 306144862 947086138 990501210 477141657 904940352 741047984 746531096 785130059 884194988 864099330 928857366 364925934 767022651 412114232 925938751 780487390 857510275 659296972 799330253 198784706 253703063 230930211 637969698 343775359 477870627 570260061 787965419 742178204 971371468 67607302 203297796 651017321 888475210 837021299 968404605 679868160 937537367 17901431 106858451 761241871 771740499 424801695 934628905 151032291 828970052 284370033 326972623 357026276 556785218 480389392 877879034 374538049 734013058 687088021 995966704 511506470 798051051 221465220 456626377 897625025 903783119 110733805 841457241 149231462 343110005 128011089 688323204 746491291 973711005 169078891 560447493 421334562 697365249 824826296 954120360 793434314 826418924 411107376 627134027 630233606 874072640 887180037 937701424 435750798 928598224 481274996 729653922 915907784 924903964 630063082 646402446 108600960 732037864 439731717 528653182 180074026 750135368 687051038 884713694 151190278 810110798 888063037 967757882 36573720 426953597 298007224 730993585 607588000 625206716 493111298 934411517 595162245 689974507 506314387 527617591 706234608 886403886 865376152 920546614 555922825 864429476 409117440 978462086 609695223 642763191 610532020 886284150 183084395 502751332 127921975 891716690 457430863 680756636 5522699 800936587 407868347 691198439 301619308 802219633 562147411 940619406 341094940 670161963 182753109 788206297 70821074 265481965 323147146 815522572 387148598 630793900 184072578 473224706 423564429 506760853 39739443 347600350 363598366 580636611 710288965 733867722 846969338 921206110 503601643 525294108 887952043 923505157 691805027 850005688 572024055 924646219 169546146 915660030 662274448 881529994 150937958 486562208 122024780 855056698 649160268 962415980 526682938 778079332 315781009 416433203 120664805 242958952 498319637 661891303 170920835 930939398 850276458 985061881 198708782 533976576 16432282 181802212 637918508 918675617 784689500 882270577 440447043 881503224 300016528 741898443 739463042 845428951 461527586 913702141 842967277 975150770 808731182 888492591 333096784 665891273 969444618 992512064 162067848 297190992 693199620 984758768 417569942 475754457 944692740 995928196 443118274 752664567 6162102 634341160 365262652 967902309 929900007 967369948 395223090 781590227 144352949 274640081 326189081 672542434 581691955 796484278 999564850 999869803 222252516 276094552 156226880 462137191 332467272 349677509 107589411 373493781 113957420 204918606 185095729 347419133 679351164 867905574 853121134 892994494 417201170 934844258 488956330 731754371 499427469 706009482 693948547 722818282 896840482 898644467 691588859 864331071 244438985 434677531 976211736 979553300 125171898 164296052 283078423 761385466 52493634 301065980 861895530 995350543 67098226 565802661 13333840 279698056 428663178 674936984 581425240 781359349 368969647 594464014 558420391 891675429 26356541 576968595 768443302 946505935 150959884 284507960 976475722 981477203 838710095 978106922 160479214 233660253 990095837 993958323 225795976 343271184 493578269 871722235 991570953 994832118 320945425 986174043 257069194 837813101 15134821 413671847 230800688 571659931 83898024 805349151 471873326 579051245 481638632 550058759 645529406 884058210 21456825 131173272 756260202 886442105 299007301 395014493 554510106 664092872 828699134 997709215 198969909 579169763 829349006 952286942 385145533 482043048 875038386 927966158 856787939 914537532 146081997 205587631 994632462 998082247 410378542 825223958 208050802 863765590 837848992 962509068 494935266 924036406 54854671 626110198 973974461 976660753 623458194 700146258 35348233 168657457 893374546 932981043 737373048 967507191 271854535 325201775 412126096 800603719 388068021 506097337 761657303 867477336 51742194 336716290 810660531 983158687 80825143 420649704 594948236 674798841 441680654 447746858 660401100 947770217 474149975 755971068 268958888 475363526 73837799 88722630 72614650 769434945 310805030 370891633 801450617 803758408 359067303 786041084 847425340 928974141 605125549 754522500 666828635 987600270 485298105 767385281 411280821 964673249 542348820 978936514 199236918 953138492 294401671 581487061 479273179 933263976 359571227 710751879 549006997 991912563 161246423 393036533 863845430 879168054 273513930 712528293 796655283 932959387 206866538 966512642 500771929 718781426 251562856 850223797 148076113 594845549 779766827 924873448 999861602 999939651 524059442 741215570 324841617 854599405 110710775 927907098 577792627 646150136 491701601 498494121 43375740 461960502 250616170 266196261 813411341 834760998 559476751 849075406 850092740 995589162 430735683 492370199 765329484 862364375 830115577 921300050 797978311 901188752 430078679 866049511 893176519 903766968 357930417 727960517 317279113 600617420 779141829 994247641 150646772 316247481 436951777 991059486 616994880 751379561 779784562 800532385 927520310 931154273 186663483 832231406 736818708 853405360 479001075 545232529 5162795 139525117 513537065 807113520 898191108 997414279 971773144 993503838 752065538 918426552 599780426 757566606 994156416 995742210 437207903 622648981 601557167 872221888 470182237 938565130 165302436 187390820 858511839 872401856 161034266 570355167 149712383 786451302 631254619 976917013 41493358 934050746 477655539 809303922 701565189 986542819 942290637 998131770 824370398 895645457 703769315 886121643 490809976 554546788 233269476 408907165 977774116 979905072 727955739 878540648 357285785 485979861 996200377 997883191 198700085 390190395 962861502 982489292 587124933 598945155 71771566 636482494 396351138 438351513 968706496 984267412 613852424 672567759 505402515 897717305 140560111 675535288 647640637 730430106 408575665 905439934 549444215 826256338 846589843 961441240 941411603 952772558 818318706 841894126 231676098 911595341 210527576 781657962 18054183 510727098 707596279 923194906 819025686 820673786 432285226 672529631 335574324 614234533 556725277 930958993 896772734 899469775 208215090 850847242 183923789 833813355 322822304 720460640 381595518 625132064 22671602 598811084 483899595 741420440 585985790 809275915 791021077 996221627 384305030 798510156 872525524 958955071 957581769 979322794 632148649 910594876 49501095 186732235 650332474 934470778 910603485 971457312 563276076 891645680 624066606 863798758 303949655 657039627 650643383 952000242 379912491 857232243 114031412 661887207 829305287 860471235 96648226 463475471 327860866 614188200 463887118 472501614 319395554 325558323 430507158 527558091 65093924 99077867 845511555 970820614 201236712 549126740 579113520 727874110 342652554 372218527 134170121 297826119 534566398 780614178 499186816 536377744 880400259 954416712 581841137 724025884 563971771 718585806 595756981 609295235 592591879 792140437 242185414 611792353 796790699 886182340 351579065 698451635 574397856 932051812 831144025 851960592 415192993 838071261 313209156 700670343 417529834 822533739 777860864 925462066 865168887 890638093 340323200 720665459 298281645 362568791 134558904 996812259 184969142 251990746 165626249 667970563 694902422 780118125 184976545 715439661 632364732 705022270 762923913 923811399 507102823 862378066 256509093 670454196 271782290 467193757 110924383 526179087 136383746 787876210 17506904 251989285 818075607 997051541 869974871 926996781 697822203 772861440 995520039 998390573 148201408 230865807 665563619 676454494 926325997 956843983 792386181 997624581 404411850 610559723 108528688 712080689 699000473 833232511 472109470 781187062 861928141 887343475 207346107 859696802 937805553 941635535 548175161 907436374 748011963 820030716 395087462 603070246 759113635 993407612 422996237 798862273 248950572 944177471 357943065 694190248 990865067 992264162 342676349 582807633 453196963 924406888 700139092 732487076 282118404 636343353 147662315 474177613 743123603 767254764 151290112 218239782 743215344 868787043 530477464 731564741 147749716 995752806 315260488 644505995 714551470 976891909 674361416 983852009 22826875 519761056 105628929 128913986 76528483 344652659 383909670 419896478 139986206 841948019 5884182 299727132 908527829 947168811 902356181 920839571 663925322 822119462 872681764 883529703 55080261 615172837 941252503 992020212 55221200 581845122 662763665 980693283 173583437 638662201 445872781 827050924 445372106 676932398 588427597 995850949 702808256 970707648 246079833 261000333 565451639 704749836 244831623 700822266 825561734 851536237 729391323 852657024 673188823 941839817 274840477 472262048 753032150 993741004 428959791 814892533 988306848 989025874 130886215 199068721 801493803 914783915 95205135 258814836 732364718 993325754 640695196 868890514 472524242 906415316 409470345 967579429 34490893 607835575 721582100 866019470 394011225 442983447 739052375 982613380 342375893 591502001 687551359 727838809 360236027 475231061 225928731 389056675 474905335 732657035 455240248 498620253 121338270 611602305 298104712 858309653 774941229 920365537 941223542 976121653 485029782 601398778 459766470 559483725 894786706 982745599 398626812 497110787 525067443 698230988 720748285 857880221 827038064 865868381 147307874 441206212 615076032 631489740 909156071 915969843 304036258 724372262 139845521 916062197 993249449 998458592 368482496 779210760 646241910 891986900 4272491 989556277 994396956 999209561 867465367 888103067 752919977 761468469 546898466 783066108 452920763 900063908 826462556 900374228 270832769 762674679 691862052 880675330 236700129 689617775 567467551 647996279 104491479 520504583 394063867 871132979 847639461 936009670 5858875 898932216 182030742 452502720 502469027 657490811 83755986 662285072 753610304 782817549 744466829 863975516 778897043 902329816 315146827 631088613 566784264 770123900 891247197 907569153 811102992 996114051 475197048 751586363 15788160 124708216 271974751 300086196 210890843 655508570 333432322 627884306 115222708 578140328 904393083 994028779 360125083 900954018 548888926 752823400 217621650 742158814 583738138 974064000 467253646 658801318 784606131 901906066 428705163 450487736 69085684 544859624 404889412 632083377 629556473 884292112 838406023 992075280 177187535 513572293 255827524 431970076 226805006 298375776 541610347 729389428 663093712 872257981 120809190 145654164 97378756 506260227 772274212 906443390 568793548 571682279 327977662 789551524 267116025 951612669 821880318 848331435 167072273 186516716 857239018 948795196 847825873 910248150 462101305 714112028 660850801 944322816 209146129 366193645 900469113 917583319 721332542 872806621 262379363 679515061 77464954 470150755 251224605 544828219 579386922 729705956 884174338 932834488 833970132 957874161 865892811 917679704 878768468 912921596 817098574 840455990 395669809 593779322 869419233 930574974 638956269 850714281 844239284 931019760 93909014 444811615 97517734 629118349 700924181 732637570 690775055 907430548 835930194 936074205 142460579 621210624 433212102 471315553 413901946 431789870 720514360 795283061 541874176 751247095 607295151 837744731 955658579 979734955 303220501 958559908 116632713 211844735 193496805 213161011 76567839 131681253 398795921 780879911 989664335 994067444 411842910 914431134 370256403 372106379 249458435 315960763 838140850 992900988 244488958 503088015 549515718 997167913 671984936 883809786 227619688 731507882 913898913 982643507 151752070 255664958 208500536 729673604 419218046 930696141 371506591 871045381 271176820 677207782 152122913 520940017 509995135 610857284 750329442 790673274 524227175 783544248 596278201 746738980 166010287 740776546 573249520 802543442 126480347 423123049 201553844 940359687 617437709 916969636 524505914 675747118 997571393 997828529 743870881 762914288 708072952 787665552 534462938 924176690 343751586 681545839 231651092 595674094 524573577 690766423 683039820 962709301 228404825 850814454 205978456 297911068 636811467 975564544 171625892 747476251 191836761 260101889 633632761 788951341 162102694 624327805 612309449 621225075 487882566 933382966 497384139 699748195 372029674 789062494 967853226 994787771 679942728 880444957 906328416 961378226 636315091 827931033 769625058 859416915 413328123 576382785 805995668 962309207 329654248 780646373 267657664 613132461 458918125 587543405 600288922 703048891 297966276 422569023 642389435 646902410 915579284 993107874 695476032 949807108 218768747 642202050 525187828 803304248 233309371 324665307 929940279 973448730 735744730 879733173 298538221 857883662 787776443 880890997 693774716 834402736 303343252 437396944 914402516 932604484 405859492 560564508 871923920 916431501 586948750 887347612 592125764 640124323 77884603 719550699 828314592 998699341 809248006 985077122 93438764 954301613 532979846 966571028 611085033 743607045 8655512 904307934 483839747 907652536 193410493 368905725 225363239 231754564 803024050 816847517 803880335 905644212 154466026 612406293 444591324 903157667 863637159 903523443 638031278 830704331 704645192 838935911 896339233 997585059 984079296 996713918 539599591 762514796 492140332 687585150 161330466 971788987 258293174 559422273 20853521 855726081 150889386 576378345 830264104 940649129 838132629 908198869 127915666 649994518 433299485 851508344 147220456 877890041 304871576 554382239 854690621 860804270 465501682 523201303 386443848 667302931 141383690 994301081 952105188 979044485 326500918 568164994 465102842 595837329 295274445 916724630 659621171 878660938 641154163 739324547 458303309 955753750 973914382 989544188 498922431 901584870 249010383 882775409 245685000 701676029 603230929 773470058 996340455 997176192 103838348 370355020 289347558 321689760 196843197 859448706 18291406 835970351 565625004 768786950 509877608 823996984 124134582 137914435 925163099 935864065 754556109 994932521 665167154 712732226 212218535 360365815 573996832 700199327 649276161 808709794 636022933 973120753 212772103 663085354 918234636 979134413 822628211 911929355 39695761 775679270 333561902 709581808 856575003 868074666 429806535 495422326 79028766 517882347 543545977 897600851 466817143 740995658 464688289 852273251 852249793 895461221 998455312 999807195 250149235 284182882 143049879 998286393 578460429 771954413 216971282 401293326 821019097 982895099 388062448 455017484 57735033 452748649 338730838 867849394 632686136 673277547 766895000 912396225 130568252 430753685 188174744 547176736 861817707 982982822 803943646 813222044 631520756 668552146 78501324 354342602 87612400 868061736 386926640 917486869 601658561 708133055 888214997 917632736 190886897 799650676 588981502 893977908 852272557 960123082 806312718 815835664 356640282 785479791 318515880 536603604 190464300 473641728 367420814 516106688 168179927 184079825 543215533 722497176 644998795 932578274 324950495 502707077 826208753 885379445 209621587 543074612 541361487 542699134 960844218 983871730 112321570 184560742 714159677 905177542 811541810 835637315 876315948 948728992 428756895 633065809 890584085 912741772 220498844 983837213 929430150 980484739 140264379 878728500 47039543 215132232 305711737 318193685 489712384 754488653 971324313 981477487 696831845 837030680 679797539 907678653 415642902 599766690 325588290 897429897 742698403 968059366 23808881 243069931 892777803 893808733 805642304 910772286 680123424 959198224 148550886 450765831 392942897 398376259 631325118 886220166 323946560 623337736 869373895 994045776 92902387 576731792 547171276 637822840 107342269 178995816 682918061 900702792 955585346 984923918 829972585 862283517 524949007 864358924 731843226 983621183 711167322 740349778 649710754 784522516 69040298 884722593 254664767 287419924 127874918 466470205 907653946 990757160 45525483 559774434 458986376 751043629 975649710 982742466 984060081 991555146 617094482 984967454 147499705 531104963 36004949 977830794 415948422 459594683 420279416 942853919 501238699 644505291 224610806 995482491 856358158 962125624 644319862 941229225 265536997 996153384 101393905 930057720 923391701 996196173 691233528 779538222 970734513 991463304 296559434 507944033 739357267 742454026 376539377 876132620 851177288 917518127 594111562 967120738 36153340 673386720 435468150 644001289 477422613 919153033 681406938 878302406 290149813 826149926 237887152 299769925 795739877 972406947 949687753 993678200 651464287 785293183 452767751 510333013 286433518 779257259 657637258 769655861 800070254 892418442 78474053 896414987 62371803 438998304 730683387 810317749 288673415 500981546 968786091 985832600 964690846 997193914 980709980 985464206 624771755 772189192 661879833 969913121 29692142 541538365 16138075 934315221 618684815 971782818 517938440 749804929 922638841 989658493 925889905 963785041 87648998 797775068 242970104 348657226 254594998 943706234 260181300 369320920 54769554 247471716 773227435 822017832 598443188 809568439 578553572 694495874 963585503 981079124 648445297 895787452 414129490 669328705 261979091 366535925 582080221 925991560 624238965 745378815 946802393 979117184 272427106 332442348 830786 650435450 520002445 571770358 590248123 600044394 717066054 850300311 728405232 801028138 86102591 560043895 952217318 953359552 415852224 525635755 870898467 874013297 236704084 569437716 620673642 930461293 191475751 507092580 597391415 618379794 673042521 866124769 202607192 264704116 522015485 544243792 475274497 791995608 300955004 442508106 618816521 738376418 571908706 619503069 435790952 778997120 14416183 899792242 388146259 820501259 497324760 720181380 773144605 923021129 851192537 873228487 120485256 307813275 265316366 843868650 445001825 984663392 889248337 954242708 838944231 989211607 858135061 980820259 761040940 945035685 191890867 323640271 213877321 674780074 714767344 771173781 33079485 624498182 138190078 752444598 796350853 980835189 25650755 144545759 104551489 271245781 174818580 513405056 544238772 851728155 363124028 575599057 444359800 681664797 416041401 701252663 980485690 993778291 888001532 987313674 982961836 993291714 114974735 999561643 356702262 662965414 692857620 794870467 766367123 943302109 673952659 677512159 8153750 26132330 7616893 369593937 22233339 456264767 638046045 885688232 503056000 596650542 643152980 888277360 668561635 798420641 443489524 530674671 649091413 691934233 336718503 405918648 245515640 245913044 633955928 962115504 416601031 931181190 717031211 954231331 866402907 950571980 590100392 910843346 301604708 835504124 358439064 829269788 364717650 511733297 671557004 951900576 386549538 539829225 772939764 998425115 644730307 871422453 725622600 755599403 36746763 426336241 105125668 480633643 949141097 987396711 185031452 628690860 254228728 422062472 820885119 869821214 718427654 919750675 385487056 927864971 902370623 965463617 78790626 532708226 589208412 639022546 163075121 244195739 198458824 836601204 541609394 729276919 109496541 600648446 987682603 999761249 838544156 868728149 647991 723405512 61617789 596983068 782812201 962217850 867246625 983654994 66046974 598317237 276746729 452827131 262136067 841008124 964508938 970055658 678685035 837237737 675184386 888465952 234332191 968218427 411014669 633147073 670931717 754250613 956273519 965240557 743437100 929139649 142064399 518012828 423614789 925135797 641282051 920521641 774870935 931391124 127886465 186250199 732221969 997757615 948638686 978631546 729741210 936516742 386869040 755583872 352570892 428948403 175461618 580554737 158324878 982100795 342106304 367039141 825820569 988580743 736166011 919858067 793690251 818769248 943028808 976928365 951430232 962645500 760397095 961194693 998537258 999061522 176670611 615264461 252905446 942886873 16741585 252790583 823505610 934764184 113225865 528218672 547997638 701082997 983937239 984631257 752782533 836927858 90659882 855719874 688464770 943216657 660796333 887504416 983951877 989537242 78670330 157377545 969861504 992966986 835880264 880033722 656408367 853213898 301281119 610747917 508715932 588178338 46820099 659587735 748721890 782617634 240734656 359169819 457803059 961281576 807142401 845782667 20769119 532752117 362789548 799692328 862079612 921091578 226652736 308775984 65255263 481399218 986201167 989842103 599047397 955447498 854394892 983543547 660261644 836307313 36201035 491952487 323248085 674552921 180827723 636179693 28173623 832944100 349295987 637992236 595556805 709725064 34312617 301046095 392081216 636104975 562713437 846112363 241753152 618194556 961837939 971139288 463711705 885954448 836663835 842551071 837929433 936185713 364652452 472227408 833790699 910302053 809412306 962543075 533536558 640429498 304250022 545398449 546039876 589318311 239684965 663418043 743637638 953289779 668835694 679498067 995823769 997905339 909364624 921495351 735197501 875179430 750098150 754848391 246885093 954118369 880942897 972705264 187253810 484394302 135421955 912494828 96817319 980836854 25535273 514078466 769021315 964448801 855463672 900011677 985110122 990698701 660270235 986671695 572346556 667741217 42459024 772896485 263395818 266836212 183873420 587878276 801193749 813101627 507608689 976430223 698765847 942788014 361009609 568029263 959965392 998994723 200148872 319963574 419143119 816903697 866159387 875182413 821526370 943305415 230411320 807729723 115341608 178962338 940717608 947061489 302119582 406540335 683079569 953393616 131208940 497307564 780663069 997951875 75837200 105989407 578687915 853177211 848932544 949329578 358844148 548004464 729643133 820578603 723904920 725575587 799990453 938608890 669970256 683215456 771600157 965055844 211812276 730637601 345104073 486321829 888514641 964125851 791517441 820602997 351948255 856697323 19038447 767251780 569206534 985406295 515776129 835030466 695239458 777939864 60763234 490217524 498584259 837859291 694135287 787949277 813440465 909844517 933247538 950402977 156884960 813747481 137983146 727489935 410879562 536709588 824405445 861123288 394519042 522906656 350961275 955323842 552470862 792613461 230375431 812166201 312385297 394658239 109652884 267786373 151893007 274111575 387882049 762331262 310974632 965957087 487651704 587621195 874646477 910939438 18637604 871542350 443231386 725484993 571139324 574926993 622367278 987998856 521092690 786484166 337960688 814314550 535630047 817394533 412499032 427608142 590683792 920157264 955438245 977702891 66325246 876568403 732898892 951137680 703764554 727972148 179066604 757851344 419465127 430212726 750864156 983933816 684008084 781094739 833929232 897608913 405452205 711433638 909281223 990709349 241787672 358214311 962066862 968701545 578488530 764035776 785635795 888542847 560175487 864009103 633865291 780925757 727284238 963271965 764875613 810082671 694470616 844260990 448916374 791289651 246735530 433069007 786377115 859336903 247943552 520762551 187173900 678978681 366996701 953973817 688886620 790886915 126951900 910727932 442502331 897453866 496514274 862373698 955720585 964458522 576045622 685410025 123888424 398704483 612906809 917382521 828894074 858147884 533425749 767155064 236891163 640294197 167341204 762117334 537006268 683862613 630220257 640842017 221276224 736096596 52171946 542084394 872415576 986020832 939693144 944767294 362197637 629948223 249709519 833757604 291958725 721113758 668263477 978377869 374931728 655000231 325407806 864297196 104219327 382042122 986094843 990800492 522531949 929191941 573352772 703312707 313893852 911089490 946666144 988154984 972481364 976407104 524373612 917193033 283513945 932468168 176831503 239560718 21069390 131444516 283484043 621072659 650308034 869067555 400214635 679330923 648344393 967410910 30697617 153496558 71864004 213991950 795560199 839492352 420058127 984361558 399719596 843700001 457226538 720611391 376956107 916471480 589268460 758694647 160834853 658725210 65513022 915277591 419304605 677531123 221680560 755420194 291186820 727824550 412577097 937680569 843528561 856346343 963312447 981406255 352289436 879884182 750265067 791373611 589616794 636466053 925455373 939748527 840511090 994069986 893615651 956281254 855055577 925277037 495781820 517607409 968305781 987276905 260393066 766628264 297405370 615142187 470971146 546131051 821906975 946529199 346774139 750538189 797116328 864848596 331903347 830042403 181946034 684141978 642247221 940310912 832084932 843517639 997534509 998395946 510480142 620234219 173671149 677471975 949986634 997369594 361217870 669670957 745700325 936988384 349113077 450179130 729750076 783704265 19839824 458948089 398305503 528096159 628635179 702015932 113079301 735967854 913925067 930583684 844960557 936477443 92908519 462333566 770715663 874224429 526086896 795755596 629820198 756895701 31004280 727875208 445492544 895218715 547306396 577347943 759544051 796501216 688663910 946176893 833633132 910602972 167600875 615379398 346289027 547487481 493142277 554580095 100932590 786479051 173412515 653184793 809758821 876851193 39789720 938189358 742773150 751604335 627242830 655789142 103794929 158434447 271634704 463226201 113658802 835182775 193061617 923087995 804619514 993161665 75599769 362105897 187350775 428291315 766152517 950512081 503873198 691118472 499235920 819145913 399485945 880720805 590364026 764497512 87304562 680973238 634821842 908012545 829320116 923882632 131544225 738998191 954287133 969213083 49979471 675232369 567706210 687722615 655190954 960851725 177761666 496082186 529401947 900827815 103580653 373109971 496834595 945474263 852377074 963074671 76527104 332414952 556500214 964473596 204249303 471954895 682436934 692912262 783809767 837774106 711430739 918825824 26532197 638255316 972966682 992048719 839731870 927669525 681462880 683772227 832056271 982306182 881656361 935138556 833100379 878294611 838823878 883681251 319669186 525262475 145958672 483036544 60065866 114920956 120909293 625871429 883423033 906532839 220333168 726932912 958647498 998417269 315433532 540303448 993870824 997925312 331052522 987799936 920513992 950055451 958327627 987462771 548403750 651502327 193313647 603743903 64273455 998116363 289275184 908528392 46504021 781848942 647740953 885860201 241198247 699511939 69317002 880934359 555312809 923503161 176451151 231787383 809173555 990305940 169329768 175924555 603702156 615774574 260082223 431147348 556017553 779086452 949453348 959757517 854356405 924001180 81097832 292067440 852603685 912677425 356506734 990972170 844842616 860503045 92201387 153936550 834383063 901133688 13660789 204747215 311953788 903352350 849954752 992750713 663659246 792498304 851433025 975548341 778621881 795672967 729381515 894114633 330019342 742680359 253425684 929650642 279738849 391353247 290639894 632664101 820208517 956927662 487441190 609870240 512492571 708652345 531963607 944898098 539438244 903893864 411151811 599534100 839751407 926218326 379094368 550194173 525292140 627101149 209215422 560118198 701118896 960520572 189073505 732984853 534856269 885612937 322761832 461497339 894602262 953281480 989107072 996786424 174186961 618391788 446558488 921212453 77260753 573099825 108151484 286565327 504221166 798442270 548471200 582619717 537800658 911417690 771244665 785235198 457780826 894251072 196566022 826697331 214349013 458022405 434882524 696118765 200555405 807674436 38478428 244843169 2679493 984663900 868080785 957201619 19016248 193437439 121157983 381023920 896407246 918386613 656581019 834713863 671833027 680368494 796448908 812408126 822252349 848409196 687017706 702909933 647358074 820792197 815924297 889561126 582593670 615204631 433399164 443524393 519538156 621597335 419266405 511327935 118213520 127253993 377193632 642482551 534109011 662872233 156143747 323227551 914090857 991712448 8030038 347386620 787787600 844798051 476588177 795982089 925142096 949319708 957780636 988237225 531532561 603035034 607765952 854254884 645251206 953988898 414065982 643043047 947800845 968089744 760678454 926527907 644297286 982233195 265478369 457343241 903202238 929327759 639448256 823344207 562340508 613359695 344833365 444758370 432626253 985604548 240984665 722488850 840315633 999631927 262706016 797420449 471787709 510569606 157556104 527349876 913989075 996021708 439376966 665519239 994286500 995704148 54182613 317659813 234109129 320291197 252785664 377531490 688242402 985706503 776821297 931148667 891769156 942714368 420347387 711355738 293177392 440756223 122125200 696656011 162249611 944808905 775733533 778618144 274996366 285605689 81182513 461543096 650813386 658005131 518247190 706898168 420830158 622426290 626900875 685063448 218462175 960069932 944904380 988117504 728789990 946268355 394201496 548347724 593781422 899526895 182066501 690009003 619068949 747840287 5459771 268586307 321683453 350720859 775096212 890723433 843489273 936494534 411833888 922326158 257262975 672289151 676523227 688104607 751536367 845871133 759473786 867254592 347237120 885120084 672701326 704780728 131928413 860693418 692315122 921739572 441977618 855460830 506481529 581642433 607000757 753138472 679909094 736145541 950507608 967381067 487634926 576912519 957727700 964482200 86717106 303733710 629046568 674713141 790333384 906736655 675455109 941403493 59040706 801253110 79958046 603584067 641112002 718913603 973988809 996186893 720518436 891017861 615342417 864154420 331971580 875740557 999124013 999226276 463525097 758822062 279704014 538542899 707037337 923928249 535598313 639035027 459690582 894230876 694226624 824889195 822553556 858687997 363831131 968848920 895430583 998271445 592635890 944957014 815288112 827780885 596136532 729695972 628768358 799073411 576612317 952971383 135621418 634078881 770444258 978888800 878576028 930022303 565947594 686547335 329840097 644911286 831827884 902703170 171535352 316703280 121622428 945240454 605045389 791558752 667863854 922072096 909012534 991512669 902439163 938427070 462408249 678719744 481592593 825526873 101041772 604201735 360836940 688303784 125671850 688001680 587714546 688847269 26953021 591330186 775897536 862484777 63487051 213538741 671491858 891067329 511337215 573157203 727855654 907582479 53274464 920529353 97204002 484127944 770287943 776191022 286848489 468631333 695560196 797877097 790190845 872274364 446521510 549769020 46990794 264389714 977025399 992120984 211662143 976463494 701464931 937771180 121102951 276821718 205803209 421327628 453403738 474295304 853096299 976544494 711498324 827045977 241430870 432094194 809509224 816842230 784329061 994423494 123460653 284182103 267978521 621200834 796723502 962157631 520899735 819374267 274699617 831051104 747141443 854572391 753148013 882879572 101275265 130273280 329638164 553646777 1921813 994157471 304076017 555325102 999320159 999925305 141920746 380231025 188102999 326547745 712389537 836154693 167313996 943106474 65185301 336855680 78705617 366506593 454721840 867864604 390783422 742265079 493947397 959143423 738399801 809139235 409526272 907732289 933055129 990749402 190840590 572695829 831282205 909923583 386292213 439524705 253940222 281925828 25131391 41281612 636426633 810788228 442256008 449046697 885176620 933670489 128431014 808543918 264710532 370394417 418993638 527162210 261732124 844753140 589696159 597577801 186258536 759220518 274088954 737582040 739573645 748964962 49443910 758995948 115022589 289736258 184008638 768895030 647358030 856407141 865984570 881434293 22802062 420712099 457592070 878079692 835746229 942846194 696875846 897537826 390885474 483912276 553014694 592643516 313756584 390705120 501742049 978970272 426490763 663725234 347919285 952821996 347219105 975695226 279415337 352352035 797265287 901980194 314049579 418567310 328854235 738606291 176246796 800464858 976403207 977612374 292035756 511753998 178634762 184892284 697579165 744539832 673181373 782250991 530607426 858986014 933679512 978126224 193473962 241426063 840404320 915352123 885320566 955887507 448199816 814722844 28338577 131003803 108403962 140209633 273231352 897857536 997462903 999729706 459606739 477320559 567198086 885267388 450086984 684478277 642021318 861164503 989127286 990566957 384519210 776025794 60961002 403090042 970409192 998514206 742529413 816126219 5264253 64006289 623077029 982445750 764606891 916531068 630746394 924465145 858354382 959522561 42358768 349763519 62447167 550135522 471924771 478673677 873427356 897099223 27773702 419059415 8537905 634019824 525255016 998456296 497941451 768853882 962570093 997243698 217792123 707126616 514684410 551200045 372165991 828803088 952413193 966633165 308099237 714063067 424930407 960707518 293743183 395799260 290520304 898566320 35099854 632720396 748975125 765647611 279678456 901548576 552962737 893826314 453136165 538207754 270366531 675712167 967331267 995262280 607737089 668016176 343162451 483697813 584787420 940148794 756683779 972093602 742529863 748548565 17770394 509013422 883110129 934416932 604353105 835795080 909495133 945655590 223255917 729483630 692862034 903069675 539490830 753627895 208593282 369255666 632797759 999198246 846444970 904062720 896098191 991606897 43209834 691465093 983586288 997130168 231563729 946744402 570136108 719660033 793159093 924120705 648988284 691861101 672575322 693096304 304579293 464167027 994310583 997819754 23481009 585249198 361053886 591041070 815187530 858294166 368853641 533032220 841575103 988879059 852484814 904504470 25100973 586753648 430761193 655641840 197443614 884240798 299287243 540057723 75906979 173349445 768404400 909675930 878262183 991166003 311953828 963295851 995169612 995464596 645592599 848105800 889908151 932543590 415121741 635856518 909409831 975754348 922695835 954902497 97476881 932572999 770730395 881094677 119429665 149747740 958575497 982195212 651552142 667766706 238068628 697846675 338190578 984387600 75662075 953125458 409283684 959882974 647383165 732940928 651350262 856068358 368633775 646774357 894967711 963432437 379200922 894678792 142044259 436440598 232416454 780431124 789001722 953106531 582936110 612146959 419292117 982389911 519881541 673488744 625116013 912926909 936199638 941874302 475381761 782853923 710826758 750581093 114786168 989994043 839824905 858473601 943865320 967675221 270127673 487971009 142831326 665668927 774096208 865810469 690891867 727478279 612605691 909045308 489128386 780743993 339085852 943764896 833857237 907442624 331637657 584286551 118759994 217589518 614732535 824937763 49837160 793386904 16530475 682292271 950798354 959702905 208064664 918777131 981401115 992529784 88247505 803249174 370453232 828514191 602166484 681309194 271764108 864541425 832686420 880936732 624171808 974980763 750418534 932005210 913097381 950863474 395886389 402041705 506257343 792575382 221825280 818109957 786605527 822342856 980243959 984157969 461976972 652388023 346553207 989314122 530091877 576570736 503962689 808481348 668349573 899379470 860458089 941807388 34762341 36369093 797318650 990335523 557893882 956592546 287856429 403326542 224333021 947798535 885953521 886076251 773790855 945937730 429398474 546263411 642260831 989803716 430370100 484054899 703362303 760297124 603284853 721153716 129399179 966397248 527444389 839069140 530680473 980847471 885431009 923033075 596110162 638707729 486049380 520102336 41454812 587131599 660936553 880853755 45402041 843840750 80021607 848180621 552801156 822307044 561716956 587887008 324490370 832540529 949455390 987878546 83529490 548987426 523860525 680443691 309374045 567539518 482872837 593393757 231774365 791505160 294476403 734954029 932051231 964776986 434631425 864295738 740900744 867386772 785632482 978627855 290696807 846473381 183028500 214379228 79829198 813168385 352757806 742282596 484089939 710759821 14482932 16111476 682626542 743955455 17338238 426923890 235626858 358229428 24395611 220815697 883546290 981198422 735643842 851696479 988240906 999433225 994442834 996548515 537708983 622116230 922470727 941203354 969035058 971410827 967354642 991478264 74838029 445454854 321210064 400415113 584829776 890320966 803212197 908078128 651079179 772326548 231520049 841559920 441606417 989412087 668506259 827424703 306303965 945084111 653795201 859189601 285245394 739288816 786225049 806720596 144222271 777257657 344330304 403305847 79363506 950894386 914654888 962954256 705086709 933403129 306920762 953544864 522568223 965883261 301350479 546552194 477621371 626867946 369890378 424469485 440601592 914452171 351737674 367226368 217224801 653269115 462394591 660254715 600994140 608352990 901595492 942347690 747592772 878091188 306055417 439100097 796130293 929480339 523314352 798360362 41602453 94053005 180011305 225944811 882546839 965232045 766058862 956376704 724415821 959045184 5019976 952400469 436978568 864731576 779207233 842867043 752511648 943164426 659562019 681038845 555410538 942386818 427248042 831342841 356413882 443350311 852229550 957404342 119194424 537256974 510705869 878112202 186527319 613543811 690759599 854901569 47860624 282482798 831278556 940569165 288574945 892027484 479100595 829061904 876228314 935442298 49728787 323907577 95373659 758510865 176467353 371498099 206220559 511347562 329424668 498343879 958598901 960653972 959713633 972704820 164885480 347702880 245483502 248890436 628473318 636148254 856875872 945795843 294143279 907083218 344918752 413947108 17597162 463446752 590094079 794165473 284637918 465938101 657282469 961065951 6481446 398345339 868946994 886747724 240020710 260119510 182753498 292414389 810051960 895456336 491952809 558419622 997057447 998750337 392730831 629111095 220585421 531292419 33128848 578878943 900492873 962403281 351382751 980203353 644795669 673590311 591641680 709080140 614995954 705201297 791871880 869830691 707760784 976084641 503226630 715939971 354122918 882332319 317558296 735284339 636916482 993704262 716008291 841338056 92590385 467540625 732571697 787110090 743338002 963625210 328298249 538549799 84871170 124044259 511807357 765388810 93601973 203967750 656275774 753094106 328487679 675126949 128429268 607979749 259790124 434228173 645742821 698758710 719716691 810497052 456643332 740035562 894388463 990002590 942128614 959366715 638862561 775814296 154415659 194613645 214099264 744779871 722889892 916991695 532581797 913946548 465403558 469545763 355144375 940847354 568042800 742040727 833670825 935441070 879839309 918699237 542443715 640062642 476600367 636773933 728204178 935267486 446466209 778395563 677325550 766096457 495012816 667509139 504996689 768510257 341895586 578133432 851586866 885568505 823169279 896476646 518690725 592088479 237596093 969240771 293689524 360578313 273270564 452347060 803890121 992854581 448404651 501648489 222256342 372998937 80120092 648021301 553634112 624509955 79694454 297421425 448908121 497858679 702074257 851788906 427114544 763904312 436481468 883407214 601383660 750074851 447566490 939935650 3915396 281548435 829982808 999936418 806445933 949008474 509065220 622000944 482412340 617405912 376691555 744460581 35013665 948930195 226715506 691356285 654596225 663643995 267195241 619893725 303840031 529119761 374555968 517015402 705278661 767064183 899625854 978946681 433126947 764752182 981633160 985141144 640091153 659683559 791469922 891398862 286212189 939638275 102276951 515746840 718496205 814896440 108080284 729480949 637949540 900942631 748523656 793740776 559817910 853079118 405387084 574042204 972990254 994805216 376645487 990888332 79478206 309799155 805691072 884623895 310901657 508505463 773357636 954506384 658197078 923439105 243748670 598682257 31066203 189029741 783971427 924182754 306063768 597816453 530164203 922014980 651805973 837509007 225698935 844533487 943287766 989003131 521401635 767851172 808060368 960662360 317073169 644376040 130280780 765102442 960047575 965309741 704074179 962640197 283839459 652713541 844165940 947861067 48413343 611528839 952440580 990979614 1051094 770304001 581964239 904294773 545304815 878825603 847862909 943606340 815797820 824410226 929523667 953809275 185600582 321899230 366736731 718173961 533367328 819277523 106526199 144866307 821420338 910626234 212291966 627837085 470303047 988496919 710571841 869374741 542686933 895939915 848054436 920299154 44328890 550778655 160775119 620685814 62957746 934074162 662553277 752362129 548046519 943403231 46815219 210363803 699020120 820834695 346256922 477019493 198294492 851987020 772826063 852001587 710506037 958114263 228190530 829808543 341899523 966811286 864395613 942057169 80863733 632087464 726674660 770737581 810706703 829232075 470351695 603431104 689723948 747641988 459595241 982510367 917638738 939279744 263320768 452843407 178465637 296182451 499465451 964990135 224209363 595775512 706689857 902458646 741453347 835294064 378966992 590525662 756862036 823676490 410380754 525812656 960542604 989241338 160700931 221664666 723416819 838476277 754856294 975396326 237379751 918164774 723716926 968985679 751493218 784681538 687688466 906640827 466538578 894111008 953780886 966569861 368373537 382476630 813789647 910214015 676640424 840021932 321886530 419461842 671223999 945881385 707953048 722669487 785649414 929043402 879625124 994491579 163479927 865902157 385053571 618683381 755645984 819495718 224963016 397831490 140380757 881234623 562179721 939830119 830771053 994557340 319425955 674161120 240090565 313015472 917279608 946527362 70196983 684359072 854418495 895299752 380315270 506829842 347708368 383180338 186934610 548918684 783492978 999440830 915818285 999563835 51850429 993005202 412718674 649935904 866597632 990132995 170570120 679465674 395349911 678335051 603522286 640498064 707913463 972314808 159768925 564497443 272083120 750653288 422996910 545931720 154207847 889491379 926565867 991170625 632636185 749644970 912323545 919347865 166991481 397541778 118032853 129663235 794641951 850772776 271934958 447117214 555127505 655099272 181014428 463868526 173926373 317153161 958773775 980279748 297254552 600093273 943940344 963943640 990245004 992125293 371105623 474223646 331565785 408257641 651780613 694968071 545681113 645041528 116778138 313897875 401405927 889973103 112685927 774159740 478399475 811987070 368162286 533123805 914781154 936989442 481419599 595659419 939313673 940308209 419967031 718847425 685327555 834191806 619971305 997138472 222890674 451718748 646717583 833928200 825793358 950798890 467951543 849436468 810590294 868289724 729498641 945252748 593398791 691766734 317214307 617879894 998602921 999473177 269039956 533736344 707084247 788602975 288100601 859307568 527455359 736491524 692974719 729683794 230812126 863692686 912809378 914483157 938645735 963317251 704233721 903851050 98964773 398782429 684618411 928140184 826139533 977734261 719749325 808486458 721734855 728966461 804732304 932665538 7618206 382599196 289122142 801155214 739850437 913710686 365325262 805281175 214685259 294344731 454598071 581068251 147739198 896209829 621747199 892844653 874953172 982908092 436233250 788897679 327306567 726581515 502401222 960597495 191483209 521549570 909875799 981450156 63923329 980819007 34585202 61789306 433935946 559907085 634275877 689057663 330129495 740838091 523081001 939332207 349343756 652996760 494604402 734347124 782064471 977724391 992971604 993247346 879808132 888499880 276838381 503851721 132906780 957055598 902278900 967144261 597804730 836176339 661649977 844862653 741141475 993984705 517323291 680468675 765752012 965623597 500562615 759008280 449687027 735299550 977645351 990365700 391040056 453667001 601230340 624912136 641288221 745768200 305795570 899998127 367746976 684689304 544460194 688356424 685197763 783960809 113343607 681343966 302180337 938623367 684889237 790052846 125810672 464138441 432329960 512437235 88257159 90055960 872901781 890899485 240733662 822482777 221944724 770458559 304954099 848036181 690750509 914750944 730184423 789965587 238461753 611641326 267731465 438617732 392106950 398261829 134458270 615811490 464435108 503863479 785297484 871087622 308951528 994194370 365368768 978113939 164973032 490418686 654596277 872222887 602700840 696131907 118198409 371666785 4648274 792642646 358987151 709223060 559349859 955144664 706735060 968579151 377535856 819868594 300995563 484010832 449975989 751789837 341157925 422794248 273206354 948003595 637522876 800101613 301598892 824311666 600627934 751292444 279899459 485121524 418572777 900010240 317966284 558514561 971862993 995177275 495208459 800600251 695100393 749813185 143270647 174759490 794678643 799542282 539640839 542757374 547390249 693045986 567011198 569269511 938596649 957084485 640001926 911953676 331162611 431425063 752892714 849366189 804637435 961893297 667741406 961167227 571727924 863054503 384426738 660967616 333490385 363639680 435584863 642190665 27287357 854305764 969995214 975736034 131664175 587690283 303294341 727988364 124470499 558769019 283607625 783875773 975999607 997097399 280576726 458456163 130187346 312468370 712852577 973608176 332771943 341922464 854569857 886125077 813470640 833603725 620633963 654120378 81610494 471425481 881705227 882492385 342559791 985890719 879333786 937931323 437109981 701669130 684643153 977562026 751248047 945857751 397501059 696471167 89713707 248635169 316945544 999046439 496753833 548954265 866629240 992151696 166556467 278168651 960922601 982162319 921138069 990287000 87138533 613140633 100747074 580686535 302257238 900646267 912958199 926130354 560335121 685065915 677079339 988722352 811604433 814214094 600448774 664543070 155237652 792904821 263704270 323747903 466172417 610281947 992592744 993187120 182618579 673575911 869171740 879962109 728168212 767090283 542825079 700060073 220603927 998043407 339846703 743872301 176371633 897378861 119835732 650096576 828632193 858506784 550333488 636378046 363891821 410246082 224206370 400896949 145882276 347114883 974852143 990406852 606866535 840240517 755621491 761618965 165574226 275388619 460812408 872259556 599954363 768722554 11509416 830908094 37827246 714812920 147904108 723640577 80113701 268103804 640749106 772911753 754964661 807791771 363290191 565881953 19397708 813067838 223061820 590828530 878616171 903923471 673822118 923472440 482342691 657303370 567728541 914133421 549192292 939579689 535670894 890793744 562734936 603360314 342161349 615863402 12688009 704646405 420059819 752590318 715941766 751707240 240972123 388068502 164443737 895871681 520607249 900833864 28939413 602357048 109920767 960486135 891018702 920241233 325560752 398875072 192411863 872179935 693968441 933068404 718401894 870202633 534224028 952854387 929366597 969615576 925823972 974911476 888157633 908545127 385436361 844914237 372175298 908461857 490558277 981312249 192974822 786895636 466351794 682114493 925478926 949785080 384116025 865317716 165823752 701442664 665399388 994689675 454880521 535972997 672325604 894140794 712853792 717240967 900220799 926313920 580169631 675426247 181730008 450778416 318853829 916941503 530650697 883836082 212723179 567996373 288757132 559802141 860250525 923984190 711710149 995997643 981942640 985530945 981195924 987460498 403380647 747509470 853373734 898032951 891672211 961031501 750287652 762907316 374515355 944598229 684109950 933423937 746653903 844780541 94882037 533616965 578242940 697750237 692679821 726939880 920928446 983837624 76040830 195170698 425527409 543049496 519951183 928451518 102943616 549747506 216127695 341480064 672470352 860146577 109802114 549203008 861406213 964104901 155978428 312399205 659833283 887640848 751735139 850332607 324497545 397313061 883608742 940271311 171491462 773770509 931782745 951575099 63098149 415101817 512117430 538189539 690068470 866869227 803415659 862025372 603727854 916809632 516304691 830900586 757021062 885333204 72899369 785405097 746304041 948210742 716911628 810054604 447477260 970029687 265948134 594188612 984437338 985513040 817420312 960041767 264518934 728269251 318367876 581078863 374236227 674563517 303786538 383012515 94561511 509413142 674403802 709786300 98774528 528499871 803184591 889414281 407202767 843574865 377228596 909535609 97468176 831851935 306192388 462378307 645076927 845069490 487883125 608060236 504338887 524537023 487296533 556280160 923188250 977108107 840500284 852243172 357789493 443248859 217133284 590236095 537270510 679023605 34251105 562372179 186187002 801590760 173609615 675042568 730210315 985719437 746684799 827238538 929666208 960379053 461148411 573415461 794103049 883041867 227136471 305636317 862158833 940745984 488768546 946549718 573176678 921134696 73237075 958476894 9235388 725373415 846897330 927892702 939184592 987175172 615740246 948814101 828978194 852671412 124691739 858422675 42502796 727681289 201732090 494521278 442221686 589752019 610464494 879427033 291342359 427683436 518542468 693731980 816439259 976000082 566144511 906071749 360821020 548489764 851790262 875019588 904135944 952573170 352699838 558261472 658455115 686680240 155691176 621387690 623091056 655053286 252600214 527155300 822433554 876817391 284608393 642004407 760308593 880465022 626492747 715141812 145762071 153477819 262130922 678960800 281112288 833400706 7648823 375001798 305521323 470520478 168995889 363060879 247717292 762340667 411849318 531583578 746142379 908585027 841225819 975892110 673835264 939332657 741687772 933456387 162083570 701967724 52180867 941044195 761389462 820036980 518167751 639060073 49142893 422307979 943356668 988731856 916274788 958032914 974181537 980980426 884597784 909824216 213621409 404211790 852370696 999332772 352597735 915340573 179272359 923991160 928172083 945404641 184408148 736323557 562520208 816540087 537410737 973169024 654176141 858631819 578953449 602430650 87983744 575321211 533800670 883842474 303527436 627313924 953959841 962674406 114442390 432103100 862972846 907517798 501849130 560397500 840404276 908615083 511506585 766609602 158412110 260168713 714441370 874861003 326581101 850347516 583462537 711355234 833805193 980923407 371162189 502892395 994177350 995463328 289156819 935285447 860070523 938429905 119274613 930425663 77293892 576164206 19918605 600305936 650011824 657597688 808611692 893456816 597574864 635986099 449910205 740314122 725270644 737018931 929617505 963148503 941745848 963364097 506243223 539044193 380436131 743404196 926502111 946744733 714201553 831047830 449634993 751914433 973528284 988999643 934091521 985149867 258284845 434200010 899964310 985894350 545560584 950975389 294469761 978925995 33049330 840758771 738169509 750457607 705583207 910968290 612963974 891936599 70758925 764368828 783226450 820004689 412946260 863956628 959087935 989113284 321379401 600473261 806874890 867664852 846091407 901091870 378503717 664308940 715576391 908895096 719789003 821685030 955454542 990870587 822552294 973650002 667762656 783001984 753484760 843372212 445390585 616225321 793005140 998103260 198905647 295548711 201749401 240406051 773527712 971526894 478888821 609403831 496204049 828646284 879916943 884843618 486078767 932373051 116618027 205714594 686305785 879288878 845362989 959313969 981689378 982492388 940808191 958028732 76967286 426329142 324685361 618757444 402338299 872533974 355450475 694670914 168136969 924110345 629283757 672572339 497315112 514139443 675665850 788936512 542499540 762777560 373370388 375753437 525482206 931433290 42711431 492145376 230582806 236548660 507021437 714395971 428435705 628197246 39140969 545964084 689004181 929411232 898539507 927394934 141110634 217528129 501735854 867266343 29034608 487042892 588764099 728930712 938056153 980895137 595506294 858385120 457524108 901839844 6862092 960547899 154851343 904569737 873290507 950636266 530484498 634706968 102200906 789802975 222010685 983578062 189123991 324153227 222288860 942819422 284404403 872442501 89442174 170660846 324826170 598201752 659729657 721472124 105042817 201937581 869213080 933239397 641798428 675784365 593418327 975809789 415489117 430385610 833092820 847430997 684246753 701692990 908147582 969287752 490773870 514377683 647998436 677777342 477916376 744406727 332056484 426583162 328911408 840866678 821577349 823997712 760932505 914398030 357746548 960629766 523317537 940531923 86981999 248346821 189758468 207887235 679520301 778110205 552593641 843261102 189358886 969009862 443159016 810173569 924627909 990967116 643705837 960696219 307259287 895076085 943129222 994597637 436701806 582657481 2048191 902895276 150619240 308473297 444197004 660883544 983015908 997502716 513832421 966382103 635306027 867223596 519580698 828903697 724670823 895511018 180155146 692982372 70788066 882978225 519648204 817706624 907551482 956554760 803486075 823936068 179561980 322929149 212763257 659403380 680126709 766536490 627210464 771221387 882961947 985781397 312066665 644669025 725605115 967135270 450745906 460649460 517819248 873556412 964180382 992486603 612666399 616350448 255805019 894005785 211138720 313180870 430579375 575387089 879220963 946243143 497362929 623921235 883027492 952519345 831461757 996144786 410686075 454028457 500646116 584433415 952245260 977516973 732191959 760665336 188032032 845798863 402249032 643850546 144094458 242924248 327106943 371679024 925721052 973741747 963392837 976582263 759656590 950129734 834552485 926149720 370729050 536530995 835854242 903848837 811802563 819058574 911966019 914127917 950067981 994851431 526822535 993102307 7941342 747898165 129243549 849738197 84352949 715418789 329905556 513463167 931737840 943106890 124345632 452015735 345424531 515702211 849476683 953135868 323996310 482411875 172917419 313219133 148347537 651233323 250870858 279736891 277354558 867051862 720967156 987887530 95803242 915759291 657124292 938638224 342747910 606524716 49247936 560911385 848491946 856488471 739974267 775446329 726088418 735228131 286116080 704718949 586597589 864408965 648737324 986449639 250985969 594447601 86690930 519603039 72496365 117725972 961853763 968180212 719495028 978912705 490353514 594819440 303540530 995581552 820177351 952603349 582398732 987538752 204493291 365297146 473160581 860728958 269742122 584818326 274311951 815745474 57202153 314001289 863329433 953793739 115736504 500700930 372534092 711198145 262111844 408369230 942041910 989658724 971404961 976178060 81583257 220932871 465534361 631880121 200427984 253903443 256545491 546055093 815764837 974182724 491713442 554574770 692556766 913265986 806782099 914076827 65938239 358316544 439630388 660891907 134107602 857823531 672959461 862836279 590522200 720717490 196646471 620667903 322912650 941810038 338775075 785581984 217785580 869202430 382315430 527361709 734823668 980715245 919977088 934141118 539456553 911578029 681954720 998732847 800786587 851966980 850044609 910334045 870085469 949779961 866563792 985809791 721346057 913463670 994836540 996398747 766953107 853604095 716703048 929136776 969719471 997744881 519676787 966684632 941130494 961631626 288241846 869100364 86242 362757200 421841928 990923947 725369815 889904542 32438790 599241108 873545370 961285471 866248365 897631218 909796760 944138470 137359464 400593153 610489078 718091165 771900637 911438242 694108591 848512655 557505587 579110429 238832666 801720080 397049710 729452350 923532049 966392268 295552088 961529322 333658570 581244406 851485141 882532131 739663409 992534047 595060289 663230134 369123247 387079251 847363764 943201342 232503836 859694601 403472652 719586382 890585244 969478243 592709298 858232510 601948553 660306409 759759701 988496123 744146363 765070706 866198597 903605209 342355171 705493269 322470317 899395294 264418180 435580071 672563870 863136962 570207065 754123260 208710191 566951000 538508871 735613932 674888929 891307853 69754113 712154934 572460083 696374489 3664078 180425064 617837751 718792861 692826788 730308711 809603623 966122311 884025830 930781324 225982587 382706933 46314508 384214484 400078114 967757161 231645103 349231798 872101577 955541444 542305646 851584162 697432033 808511151 297329989 576542366 874735353 895879713 193017652 291585745 507847187 804816672 963828208 994268787 234471432 478256008 918995168 969741113 160883462 431103211 921773964 999474276 270704777 434850417 120360808 123785830 610875620 809792636 624023002 932570842 122126106 571748365 92261996 481659831 932075520 948877785 230477091 811172111 377236714 710960583 404762268 533560616 421865984 700185471 790741036 800863239 130208903 546949178 200279274 501845747 699063890 989818038 268443113 907986512 253082229 793177404 919552475 957056212 334187313 611868919 505822526 943835232 127956229 540678487 704035190 971488916 355111125 510607057 908240602 927926343 410526225 826295568 456573708 822232401 497341558 828756801 683316 316407590 944366719 995010817 853227150 868842083 582748131 821891590 983594259 995155937 121326956 756874215 669368054 989408895 906235882 926318896 787650213 936951701 954170712 959330999 138540150 577650778 670589389 807377896 714423926 884587384 133538888 264802806 584620844 696785145 228310467 802329796 691955896 698182995 589108655 806322481 735753020 885017988 689652189 725593352 208008757 999414789 112564226 535276067 452353880 675092390 908365198 969130264 647492076 667539180 828447395 987875645 131898399 657198547 415333575 501634599 440846082 449034813 547778392 703688168 136870146 894807685 499580656 715704451 700020241 835414447 450933305 914475476 329896587 582929251 299310382 789878837 154269749 285502672 97558784 988571827 552179098 568035820 6370746 224444590 92496403 208307050 29216496 582800177 942896886 984705740 652063806 809797316 30788203 810123143 476127138 712828330 176554068 518871092 990105582 998921645 123327080 319829886 999877927 999991290 708062658 847560558 14947975 839381092 59224474 335952751 41226883 691496373 206175660 522627240 764942650 897389359 587894210 733743152 467498304 798944435 473202976 845398410 103757576 345232225 907402499 935511893 807282203 954204503 409382657 750419313 561984815 925391860 229849099 837007371 990187036 991028085 202296277 551090991 216828226 835016200 400547685 696166794 601558812 761993521 801010218 912775399 150097738 946556171 786670605 911382506 251988410 566534807 568026169 624887708 19302761 22635398 812222671 847215155 240719511 818147746 153568942 850667848 746558466 877235410 849257612 993607341 414514923 419161951 992309940 994736860 312578687 885595018 634756638 674347940 949869785 977244670 492631597 517995772 971593996 973546751 833636154 843587204 502624324 773641243 563771441 799408294 193499823 637876485 644670053 911893822 346068194 985144753 258446745 449182923 30514185 78789335 729743849 866366325 672895396 939940929 905743594 925756464 31235274 519100358 303447456 397939324 672133 460911199 152366774 877941897 685240461 904455875 384472449 829105043 852644298 929000723 80099364 314408974 342458804 672033025 915949452 954662676 726889413 845331221 140896230 982138017 378863363 909247354 844498016 852322532 273860571 951965078 554038090 600588541 934479773 965781755 541825061 992391297 782266582 885943199 854409815 880904513 642200675 851417326 303588427 800993075 89178904 857307109 80245257 892480858 837262682 929497450 707726586 764135532 640111687 823390496 477601195 816284187 310987095 836716339 448018166 628035739 285176117 785549364 779637961 831476591 272217984 698983455 584515719 658240836 417129161 974511649 434290814 730146071 208446239 534014992 24529987 658274201 453305276 802551405 472618852 596249876 905600458 988506045 269519249 473229023 987540407 992492046 988848321 994229166 269111948 616453109 953456407 968115418 741451774 938151507 804322952 975661351 469567570 837696633 823998194 853412531 378776392 405196709 992210063 993366629 138868496 305427574 271085140 413490457 194025694 877724675 91750640 406483724 187716871 755595504 38607560 667167412 26711470 593501426 432038517 461815953 674273200 762785078 527086996 829409072 9790022 309877761 246523858 925993519 606185171 909895665 521584156 953413753 26851510 894272495 445521984 533039088 822621917 875912409 133881832 290991864 80447570 833618866 371040146 373625321 152594171 742721684 574066646 803192439 109497211 213903417 432919540 886068508 713756838 791644337 660406432 672708020 988070590 989759240 420838271 902338293 734240166 878167049 505647175 739973933 309252226 587091621 869678828 931644213 97958141 283430990 446966874 595374561 82107309 392597469 154703370 477429638 604631885 675729308 644026059 939445964 630629556 757367222 82480358 524497573 506569518 514160161 6643112 857026658 449210244 554585726 912127747 919489501 13596947 402271130 885785283 917162827 958732858 996761435 531173223 915241218 617473284 815110055 862446813 984135767 868252275 985114532 713359203 947035390 181613780 475470687 222428370 498960404 7954547 272700938 309094574 335288039 924658361 953554188 63492122 489427985 31867560 921761378 275755283 789013834 728166959 884194332 776589801 981666346 698287091 757994462 153294559 583350825 559738194 572723535 29961457 195606427 648149759 761483397 680476948 881528680 546505121 662506868 610186564 658366072 183291166 551081571 354934537 620316776 897966136 903092852 934824587 943704465 277343066 858123424 845621570 958700849 577718385 768298721 10970855 787096601 719933661 966107497 136259064 461446695 962021268 973114053 800885495 877176708 40703826 584093102 758351708 963352060 259077453 798562869 389663318 463798089 6597854 387846540 723763670 782038223 80260758 279477296 488371995 637280036 669674801 700185108 850861196 975500328 702366465 984214277 820881500 865902073 352450093 869385512 392052231 853442081 918456935 958017303 82787721 350689117 346385177 423060742 268520628 695632208 388989664 466800960 673307249 952610383 867350741 883198447 316028235 735223356 104535530 398558180 909541981 912691961 791344446 896272360 262915305 941320705 774070826 951496448 926225213 943627239 571333396 968066155 560235085 574166594 331321961 973582264 480864243 986871865 812102395 918769918 317141135 902616388 268874484 927076763 420064634 510022893 441087790 614451025 341790444 659278308 700193814 977098690 108403551 750496667 43422517 928158869 926659757 952737731 263488835 560971116 584019659 949458076 997353431 998666861 859514013 992796979 136491666 994336885 782761269 807284455 679886162 772096298 206265908 772420783 319507605 327240417 373932880 644108829 854051501 947707037 545067966 780339440 461457981 573921611 136525437 587543069 453414417 971677292 401526150 800759085 213397807 845880464 572012407 734157815 522886834 937111499 523941295 538034164 930022059 960286775 832893312 840508005 868064209 920230104 751837185 777403167 450919946 485218941 338957758 656302728 891096908 979527728 537019541 835814173 99458471 725893410 599754359 746256644 451216538 658494116 805728924 821277527 452575503 899131892 527114679 607842951 420034483 710432654 71337385 385048842 737979683 823755818 82810023 469475224 224725557 553231476 635771157 796406786 863694307 893807235 114643277 461671004 915014822 937827484 700150557 852004987 597006466 662960479 814133817 889831057 932565048 945058207 307855268 659623910 329989701 606136190 302595046 990937892 984138858 993710402 269380249 955085112 240103095 426880530 191130416 769054789 862941797 989925001 658864518 810700795 960862763 970135073 663410221 708940164 816034668 832086275 98633488 523850594 212690548 883944392 92683985 874645896 566968957 916555482 281210248 534921487 255785566 812870318 623140465 928081470 340638905 601755838 124517245 735249494 3163831 601686719 960715380 978843035 977656376 999458637 505900134 727280456 799888214 831000916 609177245 647456817 206984653 976380883 271712357 672651288 115109606 529364144 447554316 634738985 944093690 956520912 907094373 951086075 395587521 835029673 155262104 779730502 385491494 792912912 906229478 984738511 342683741 699006453 991177950 993281565 775438372 876998142 639959446 796551470 495484744 847275207 955288629 979781254 501447840 999645086 124123665 133113384 90958919 392016048 374172911 600708810 214920345 486233917 529786614 838470468 71554804 963668553 760117956 871432491 835617841 866376712 42062842 424183439 263231788 761370071 245813195 594125575 427800607 610546406 118121911 279268195 555327737 945458763 628423593 803882690 885520218 923680874 571675727 995243620 477211864 702333450 201799067 990763190 756030975 779162609 324111039 466256635 841205880 881430428 180322042 754736579 495255283 496213798 222111554 502625105 952710291 992386419 167664560 168798211 843497624 958670734 995837734 996767167 748352661 795808611 657466290 712536534 95157892 696083270 37843746 329852114 229466588 292797195 286271841 743169757 120743170 300881200 492596948 601742066 385227684 863512267 620618098 862775218 196979340 831947414 433788893 941987611 859228374 895962475 191195738 691110231 651897752 680581993 3225739 347867985 395378532 427010921 849546590 982548449 860172523 986415933 366795933 930451168 991094256 998246302 136734779 196244207 968651485 998882459 332708259 785765546 796264530 851953450 764522810 789866922 636812804 659553030 261908580 765781329 39654466 892124571 765037288 900341479 43297116 447198731 202224798 419460768 940050292 941543455 583031715 757759768 509080640 510393426 215242469 364132891 802138351 940744056 719688119 793563702 400418150 726873567 593041026 762817143 833391040 944646934 693915472 812693904 341039415 755284128 561203831 831123385 662743320 947554281 588496962 928036186 94698376 663809233 853944243 959030580 571657729 571669927 772727309 926923878 336737787 460515915 993185556 999703301 459782840 845264151 777350630 879466643 137779972 865006104 207613679 278937774 864664983 934398192 63166577 340038789 73789422 719033081 914593734 918001477 674931555 786972437 601103902 984146008 187620659 853045503 362499791 898686750 554698727 960633028 127855778 547694364 815872120 968084932 454907259 624228789 634450725 771297344 950581534 999263999 503860733 825992310 179927020 472890492 827793602 946658960 558290507 579593699 841368316 944058273 208747774 735112255 368142552 433710216 261984217 271527294 452578452 905273732 773211141 812071380 40625980 426490935 657117095 931663714 351973478 987048489 550793181 789359869 497433623 968961029 555102930 591547419 997491953 998745847 185756346 976231588 103939239 783806375 699017080 758105777 366936302 567510170 949681485 950321674 699890244 724952253 828611836 954857102 498722264 675025090 431027660 842815671 96294706 978316143 950046149 972812758 20399666 125848591 368322347 544406804 255850488 784938906 205638490 367084416 418976878 720373891 749847823 781806091 151957430 539588762 833268842 940434087 400587889 548008655 562401721 725408401 665244827 816998130 649580517 728652088 493725132 665138649 191008876 861762311 196523836 256264716 361029657 998019661 190454769 776061351 479534702 652082995 278781681 838717191 434819762 551682293 641395064 967874854 825452854 909698759 641510900 682766683 213717969 537203773 615389059 940696437 235418303 395789919 586689610 850293581 944396549 990179532 565479134 743581508 259717854 264621465 12606497 815664457 201314501 204944478 935587404 987343613 312561178 323594277 345802604 557271574 173737456 721324039 705296568 834463528 902677776 994693363 517645482 570960287 602361930 787442354 210202148 797679100 144825901 522234638 145375107 754413744 5536198 918622674 675803980 913622607 151193153 183432629 856490016 864472025 453058902 525345097 968742303 985942252 946119825 949261868 674687096 739148713 953213957 979939229 7344152 899339484 197994793 788560809 611338184 716096497 510103849 760017154 149979748 962945511 471758843 703934625 526405697 699022523 685817486 871458411 482886985 701383928 560430773 902000942 691036559 912690743 200585460 380102886 358330132 422668684 12374778 266813368 879846612 981652434 253135502 795980500 225242506 331251979 621228410 704954765 886939580 999737419 311361526 636297936 196244496 555351462 797459947 914437396 115775946 336757928 236608460 793050050 164180056 895001800 196597636 389372413 230157494 471849658 649446678 722000451 116021766 534976530 910355998 989994489 319415899 954137419 492678749 761828711 463660823 611045508 622975694 756718106 515234257 852413372 55135820 707055182 325838442 370689720 174498794 841150397 252995287 514233559 418439109 634579021 92731507 678560149 790869914 969706979 951773777 957245287 337429645 339895946 415436222 595702540 575685628 588784675 341758333 714666412 303051260 989758895 848597750 950624546 704520658 959826358 795738837 996278574 176515087 224398107 434967741 661896205 89198208 644241971 525152945 644427615 359189807 495458630 889438776 924097123 790623407 969963076 120552368 202521777 999432023 999560410 290688667 610522046 72491220 908697872 762326882 862144321 351874453 798562096 551601451 804709914 578268102 668160354 370547096 590758436 387229230 924998871 115709096 392081626 713653206 864406847 194322318 564356957 602863425 840710157 932767594 976326334 151497397 990651761 410596707 512410502 419544252 622093294 979842945 985808584 194123959 436705435 525708714 605887209 785709091 865737164 775450480 944422662 800605181 892056772 383474035 915467852 440867363 805736113 496142558 761378463 881527500 885750437 419507452 830659094 101668377 222556257 149493439 756005297 42583597 57983785 500592620 709766720 781347328 915955080 93933219 666729935 795697890 941184019 936196703 976795205 32573000 250210415 643770008 996431827 856004401 903154851 944679137 971747201 93062609 841447022 336384462 890856851 831464646 881457491 794197657 914343540 565021475 830370446 512171619 848234789 410948580 918197616 533661604 690359428 559564185 755311997 630124991 635211063 328094427 819586031 401163074 626128208 45666485 413533550 439839445 650218130 817612209 895602204 997230557 999269912 685033206 820913392 341630166 977719611 47878193 166458424 851345533 924981794 242443169 619573796 533102978 793718268 672674385 906273196 514829235 709043328 486545537 569361302 916694919 957744082 556069566 805419138 557777869 838857005 50706592 525208619 734728980 971001819 660283731 797835050 798288681 936623598 1505861 756181265 171448787 299662563 36029132 989994711 909547677 999087070 385603441 773957521 308979510 478156876 325975427 351223585 91931038 484937730 729380128 954529474 882388199 892660780 558760083 750439253 957045108 989764678 354472886 545094169 232727142 429930393 640398144 959091347 429444498 776145884 829369985 925847778 928373327 930780226 76929514 884487421 258159720 364370323 912843132 984186975 132602994 457411562 288500248 995447125 366852783 789238342 512297656 854937663 98462868 729488971 830166226 848195234 165009732 576871737 600318118 978305920 212085508 677419684 702337927 843962519 990939587 999525849 610543558 717647252 57538689 817014900 310754691 917107197 675498863 932587685 633251054 924668035 687068513 744776721 3685442 132802608 228098983 890571546 879692102 990466239 36514231 879912607 877270942 984785017 805022022 942724154 242078062 917789431 672620761 937627378 561206113 979897751 647947234 711117601 651656496 805845378 325135642 694340335 380768953 542442379 63984668 452204533 516793656 602905270 488643811 544005321 272266820 876085114 640903312 699247476 352431444 381032447 602548395 651076656 697168814 927169232 131184625 534731241 754616212 795110976 751827535 834950249 51064701 728798221 37103901 552420598 23292690 681986982 913188391 960484253 744591170 943058750 376930471 647217608 804200518 959382053 502876895 784537736 451972608 828162001 961190216 980667263 576433846 905644089 785120882 924988136 105526904 201707103 261689948 370708732 72059299 876303581 982904302 986177350 374645239 636251318 662920925 936794546 44488239 47300032 980910373 994888346 38762634 381178836 625718585 852544378 933600140 962186332 392331458 658581069 749315551 998190215 487582757 770139338 687456094 690705809 238638133 909273384 70751837 633883858 671751280 920743490 353811837 366290337 267061605 967224061 90314877 367716958 621429902 881064784 981118971 989424609 748643394 839900073 795360343 948066732 935783641 973159369 841195824 941981893 60583428 516481907 729993288 989864027 37057694 512087085 671179013 864914326 402108528 784625512 328922206 800138226 181256242 885372546 42899166 111872805 554777679 672444512 179297466 803865987 122030331 652365509 132242586 207126899 402464172 934897391 5496947 744589156 228689366 978008921 971828601 974671259 487903172 618571405 464590516 672111376 834679820 928412071 222307966 402570269 448853594 590101040 251217229 644186610 232440880 956869879 775774724 943218484 802553185 973272060 280731767 767856262 458468889 852918441 684711244 983899178 396148116 983728333 159939599 507158794 180793851 502915402 444521332 761880284 53596908 275463723 666817976 918989012 535701407 880147361 200829256 685436003 465875574 728743978 606367287 666511199 558404082 980723797 207777650 577463888 218542360 264614344 35377749 796253180 424987394 550626434 707795798 829289567 41042085 269468444 425561726 759686286 685867877 952875729 813645095 997135974 56095123 830645318 528494161 769868859 602548885 963329900 912272843 937585620 212176238 365882026 250405606 831342347 648091963 816195374 505789748 813086167 446034035 527965728 383690631 431171330 998342098 999038579 314844869 486718191 39297469 958604179 458609273 619991484 613187777 647883269 544184875 909537533 128058516 197375502 258587076 786969272 49763319 370064933 222913713 404167157 961941193 970983811 13521479 725377554 712412297 938928099 536610218 989833145 422408823 423539173 733639045 910333698 721372462 894095436 28176555 495200914 939416600 964304295 719412405 808968571 168071489 441700938 890545759 894493594 246011861 632088328 521760502 729706087 612100822 751541640 81583237 211048490 232262974 887397583 984857247 997713532 877450668 995990296 489590408 828333230 995423970 999987509 7938194 910942660 794873606 878767513 48179050 866142960 981422306 991939051 495909998 567878058 557824046 824992256 493226200 827239948 683620314 700751354 827475172 852752985 161813319 478461748 700569011 884114229 976375132 995638871 618150749 891904762 811674950 859532072 592530745 714291263 255284158 690996317 797409114 888647230 778106172 790148829 677825018 790834884 925580777 933339972 344891869 473747064 397452307 415050898 822533812 976551368 916041890 954559245 612584445 850428452 812118128 953732561 707930130 883489450 318027766 865692445 444587615 939547558 413094068 859691819 405725016 411343263 496819304 958510223 997260765 998360386 504090571 707291591 94479644 981488213 210906788 444401576 186736088 770861830 326891709 454735377 575431963 830232334 784309015 885157925 756875919 788777514 472280437 971173815 755520930 822976550 518544879 661377322 452127906 921788009 352731499 609931320 607086396 923223217 53082099 335731601 493835783 935182586 162073683 919200707 779468685 939793620 136140643 592148217 599242276 787990928 381180196 984850599 623166658 932391626 810096011 863062293 761824435 874349132 556136662 883692069 642280871 650052652 461934068 792709871 425873297 928355311 852825531 957665553 688448376 796476310 635448495 689715202 984049631 984189595 396420704 608320228 261078536 705393459 145170266 700156071 385256647 426317680 932350130 997209580 490952816 863490979 414548264 939786544 88702961 599081602 834820469 922720679 100941790 635869750 595680691 727651043 433250411 572736459 817318650 857299510 241735756 883688981 855172128 857383971 927559934 949117597 296760836 398810181 767430516 924918066 218527780 697171825 138144235 158900925 194080572 328525922 825988811 990062092 790800109 907527211 359081943 922766799 174007939 735948575 474430814 764344357 403209919 415710746 730264483 894589699 334632632 706336948 107552044 418779455 462796111 888949253 251885348 879705767 867920296 975704518 49457674 706696947 952220307 978390161 437444938 725803348 407483805 510392164 831286388 865446306 242997998 889173473 69193405 213815377 889414591 959210905 58488774 611893933 888530255 989297888 455471190 632048429 900023296 910093679 807797662 845596294 526056737 713328111 408991148 487463586 984678210 995059259 91602019 472771089 66013068 663055189 285970870 657018843 88886246 300775483 417796839 614474392 234156636 964735638 100312841 176753832 351346412 876137217 910575737 970140565 533512585 697844663 771175011 795870675 756379061 843781786 383214421 494462711 501938162 891490143 411127271 635461025 177592567 369021507 621176800 863408092 298946923 729619841 730408247 853877510 674248318 850221137 684401512 940510897 220977612 939744268 364455079 862036825 290856220 732643860 477472909 556152404 156468251 158740598 746234207 991329192 739461970 833083812 952532272 969285221 114009980 603448513 581421119 994139461 546609672 645588204 348588802 887750928 372876248 888385456 930245169 995040677 405439550 603915092 675263559 741422884 570761313 689668117 880120914 930941778 638300735 666014695 951056793 980924548 64130350 850568339 793089847 976301912 182256745 402560480 743116590 855198251 622236730 627818259 749283135 802486618 226115718 971039104 654288016 937204317 542799171 704590963 893328517 927259759 168288794 849881804 619810895 637750274 349457359 534401102 771105125 954916382 678113669 909245723 576893860 760663300 104829427 821779278 241073071 436710767 17025570 666681674 426414638 631227829 429014162 699158537 366691595 762314851 755329085 820148318 568522770 935261277 247151313 926522792 830057753 925784624 815716039 881460228 80380031 918035994 938302947 947288163 412287828 579543977 243948233 686415235 288929381 703468673 750829296 900111219 350098915 578476855 395047847 429895392 676102243 868418215 640942739 655914317 542767304 666034453 996371455 996535809 863707254 973036039 348718890 378094968 134205752 614183828 182159837 604075823 957818807 992716244 182076330 698086696 809469759 925245240 270346952 449290312 557957934 651063559 389703618 448297914 206920965 531604338 93495658 730387352 944696396 999636765 208165976 852767738 549748314 874564515 194373252 710732463 241845600 877452932 569050913 951230226 353406377 613383240 642006388 861339002 602321964 772282999 958338637 981903641 667502487 719026906 178065311 519278548 418267883 925919825 770521782 938458720 992878054 996648904 825187554 902790279 300164419 606047932 912658793 957463157 642805583 916259447 883298229 953216557 563181760 732486575 16907074 361482897 790375282 864151666 297190424 962324714 699096727 801350335 991527154 997192956 615880151 935853780 13215868 858774466 376350797 947139968 879681474 941485729 857250042 941734413 528790863 581292292 985551873 987670688 122138910 720220486 439295770 527720342 369592705 811821190 828531437 912161782 350439072 522167191 554134741 730688822 826608666 959286258 171564089 613217841 853965038 959921191 234408037 242388501 588491895 657203671 357648656 888277572 728909702 950971101 731995340 980457814 727444463 926232357 767890845 903908293 790966491 972543928 640777041 888918121 836683450 938518236 797117338 804304054 656019188 960565705 790276967 921211756 443931778 850867673 112787369 213028209 801231743 976465642 238935192 965036904 272050953 901145344 402493577 987025117 644349431 767324833 270830511 284052575 222743393 548749850 500646972 872982040 929892702 995215466 788916055 915090215 579671188 829726354 552205804 790006127 520198913 915655649 490639156 653836694 992209408 993819668 665193251 720303230 559586170 870862565 24392183 480967151 917902811 969233645 467878285 684454827 187341790 781222280 259860368 871889938 850731061 910318838 980027099 980814427 225496059 796698664 103510416 749308694 706994409 951241215 757733970 979637933 278942265 379434185 886384156 915273223 754750798 856478066 230533707 848802985 595808766 833202358 857613251 878439472 258854167 923873212 916103673 997053438 866660197 910903826 187308890 799061754 702587047 882044099 325404498 944347310 485132435 729405937 785707470 907699416 702943944 709517138 675083830 990061772 562921593 943782618 596030419 951509856 990490617 993490809 96141656 747818471 143521256 968413743 186197463 704320630 621031965 991877027 576677051 785018645 550422487 863681374 480779834 729260400 804936314 922564456 998829896 999504604 418212537 499927145 389050802 571178397 303386596 819698355 644236814 963690189 578056162 707504193 602384981 890755590 880875418 883141735 54896157 236860509 245752330 380813072 329048676 460232286 686727962 702472796 740108822 886964492 41491623 614084453 517985033 730996776 594831918 926521021 510969739 942307589 697746635 809115270 674160193 926195086 856581541 938103773 337937369 534780937 585290180 939544920 758847963 972822393 767614152 937640305 864606936 956980836 556431283 884980336 2237989 136516371 951691680 996911612 205854215 828394387 598695634 890589440 364033167 828885926 14281030 213268406 390343663 712769396 318799126 833870618 442551907 723370203 888802855 903219272 661434203 829607159 159432045 378209012 36469532 246418445 852546127 888670172 680607570 822294199 56950912 837833176 131510184 496347611 807784692 818231965 51618839 389673048 361356215 408831045 513756041 887887784 398613922 570144287 684789577 786205164 958300862 987470981 224303278 694716612 696346950 725004226 704964347 817134969 207076485 489724987 796856470 926559497 494974386 884400876 721250708 836642442 258972157 664843083 403612889 484666876 964213407 967014073 633849785 818358390 742869072 971965679 862773098 947635989 560582533 665247603 704784308 744252734 557286414 940200783 368059192 858580825 434227083 553477785 417253507 512267111 45954754 657052837 980825050 983509210 93800772 393217547 286630184 302560451 440815314 632573159 465429222 761237643 918964395 994136170 665974919 674043717 308003921 928542483 609394249 802567698 671702171 925219601 587238600 845119831 944968218 991990105 505922941 982592358 88839939 798683427 983652301 995421894 829147670 915059024 851660338 912890904 550200461 686124154 76566492 533051125 821390449 833472302 986450240 987976414 66702274 955070882 663851934 756639990 19935959 528111095 362396543 802339830 190671351 444168579 811933186 977057996 772722468 955858709 516847659 587320779 556362632 624655127 638993735 960398031 939974469 994287879 620471327 720844023 910877778 981209408 361064117 642453894 124346347 676806196 834886452 952694110 25633240 639155000 385592062 791910234 670253962 835004908 510642094 951321444 865523907 966761157 888509506 933176736 653008792 734483240 82659226 583696481 466067467 607452592 653139349 965534380 103447162 366417071 859934679 918609212 407146945 974361392 962043345 987826548 407041566 551149142 222803854 405105325 548487848 923225866 489157984 741635431 823000053 888192221 129309392 198061157 212112557 673676888 113517099 967618661 471952994 962240842 840873010 854093455 307913909 521940598 61027648 216048093 500551139 820934455 165913014 657496688 147825163 403374040 602886685 797867466 837970058 866071339 519569000 579187604 195174683 772887990 88956849 426517009 420976144 784372596 821266613 987618975 527827714 980645110 277969436 951679969 801809636 837237352 212456482 635386200 404563753 450530370 97852619 202821562 863430974 878719834 87807596 961110139 787105983 885155292 468216275 556331782 247354681 449625568 392261411 542310428 470569766 910698711 94032371 705503546 639270370 714476680 941106334 982024338 803581926 845215012 75672214 733581957 90695358 443080564 292197207 955174516 808516961 927444287 767230796 997426118 198538246 771292517 7633157 978531333 741555103 963663055 480265162 878029440 209848451 603759834 142888001 487976294 273176777 541291332 377534565 963484939 55473502 112416337 742211777 783029156 77358792 161449842 367914030 732367056 856522108 929167236 394993750 493172490 382923298 437575858 776415396 902263008 78858715 379168499 365342850 636160983 270107977 333766809 899508684 968317328 642369542 654439581 459484601 871820308 523276617 732522982 979226944 987319510 391869594 942166854 514684580 779108085 189050875 593201630 323161644 469773757 443906815 841450148 173161151 555479790 238819497 964341068 282827062 403938102 959629717 993266365 290359719 571188396 191582892 658509886 429890433 614644276 151171635 802890603 888250210 952544778 541790142 647978687 407056685 997623916 700137652 852044638 403216547 472923559 824566462 960262717 12440025 354289215 829648276 924475834 29721318 701343462 283246142 734056739 136041725 296997266 737426329 769216860 259480145 279396509 209695369 802577934 324045126 695710274 193355271 682229176 443382634 668616128 737509876 985559123 56536663 653075826 237534770 342944523 266384557 301657291 578209470 745955602 821257552 923473095 850133921 879902857 283665164 703383313 142036781 569601779 36727743 333040179 586764911 667173844 265155645 543877447 1271025 939351552 270085433 811466440 360400944 910672158 481774360 525234803 449296578 597095315 521227132 760689985 482175546 984774750 895044090 943100775 771027839 860207231 841879691 879670623 720849749 938475010 305963233 390669626 81416011 433802459 632493348 854664538 906793790 927876602 179000376 864868171 636141966 690039760 238427722 497312943 828525377 878911515 460971107 586457028 566293717 897248169 486040172 633458865 772725879 972953205 672832222 705360479 753646496 978807914 105899651 704324081 684335741 923123290 771964219 963215856 432686861 931256018 765919968 774482567 600757887 833447856 257086468 577394751 745990983 953874166 423270824 891924883 35108571 922995482 607550996 625843816 93107299 156868502 669040842 720299303 55656863 219915836 103897054 824931199 577374136 578976562 299207221 622226479 767550618 805233447 169059562 734999161 739433392 980542545 620834667 902739341 976855240 984815955 273162537 305221132 979721863 979996507 77129242 823823620 885942871 966711639 532150352 619145579 877448357 961854064 686223900 788069686 9628518 296391164 672614627 836326564 72297928 786532103 715533334 822732851 560619154 874456641 567987049 649642066 636461318 646654597 540836035 562279832 259124859 638866360 929590184 976145436 608053756 832047535 569885890 977725410 876550813 927520240 927733019 959070361 790088791 865192092 475438302 490656569 824211386 829918757 998002275 999871141 808608050 896145298 254384467 851088799 2229003 367175183 447766873 773274721 497237972 746778697 480023354 489861030 942231067 959171107 469236829 720997274 206431494 485970834 39786367 847607101 533697214 875349449 4784160 410282883 104485049 623057915 216706281 346796527 187885250 855645218 338636332 746474588 178049031 699048408 96382170 177927740 277332946 943572379 574824146 619172162 177847390 853925179 691640580 805073989 612498212 765797233 703729934 763929644 127292028 333498056 103035134 868223560 329602686 622020791 824005122 883199534 759414763 935764488 655329312 778468766 825882024 834569575 909690023 918920224 605323890 648349749 789652168 840692683 950363783 964335072 584058485 834801184 281021852 938893211 424979781 699767703 931228759 944854615 320191013 988176210 242805964 597590505 344713751 376833947 944591341 979428741 242393844 420091908 516776086 841306093 972943960 982209321 900500381 945718339 439349743 919133640 889763237 906393993 292484750 818708330 382051813 703025532 759118693 894088545 757081380 960610365 791724740 903270846 79274673 420095346 361401242 582153393 988076626 988098042 97487027 783092730 795260976 796326677 709898896 821126055 213624340 448437574 884731289 977057681 416615191 998199187 298871852 811394378 858517746 940521001 421814314 660459795 537089460 787530567 313094395 961529823 114636799 397480028 564103938 906298713 445281059 543836391 259458340 275667551 789334694 888559268 184063162 875628227 105210401 427347722 313531487 829793687 929413165 960066792 964468738 991834392 82887630 389183824 189695747 840146193 174052826 987525334 255921403 706941563 311156716 312697225 837445905 896201181 542127496 936697705 473883973 903823237 807434447 906711234 244784994 427678809 256004414 401444979 292559325 837575822 399848549 920882947 959436805 993463311 140110548 443629411 328319434 486045733 808378984 907141694 549310068 610846741 658013323 912874774 688753584 837853791 870689768 956115821 173783108 510398133 813859219 868478553 297358414 941007682 208654821 222161955 808687079 910508280 12855377 80461075 972964455 973552642 174396908 466788564 878766248 973769604 476330011 835337210 843012022 964925690 877352849 904137122 705141520 834937987 351105970 731965754 691864684 759225172 718947100 927593690 609514973 774142662 754367606 996837659 973520158 993465427 323826232 360477923 204509086 831073381 255004052 825860649 731449298 771360407 376582249 586347087 200319909 487851623 568036062 934962442 291632481 778678081 53147093 191066283 482893609 895935608 965627156 971857040 72738009 644646798 792314379 923442031 121569372 270156300 77253254 233760906 943374678 955010962 851051806 901038739 268767506 354691550 217417703 921689528 523576422 983366384 788352696 943834668 663529581 993241488 495585548 870369008 502930877 715594881 26746631 878147741 929542026 962668370 582491798 985289634 992312047 993390018 308319490 573133063 347585558 890016652 952393583 985334105 48427471 153202082 498550993 994347381 81607288 477053893 678648684 729679183 570233471 839655543 6667372 596825765 287890171 808174005 472240555 814415792 608020292 706420430 854838310 878977450 401146644 597846603 395291632 609202165 507749867 755388320 751226186 893386216 707969019 777349869 155705505 918724357 860929808 921952212 300802491 791749396 27488363 70461319 964481934 985610451 879194455 995800489 979828178 989641317 117651563 188249707 289698174 328332930 15477579 474665627 983631007 988036469 590151979 795530475 598443023 917095288 939491836 982296556 822332090 853127537 25437881 936986022 936779896 942249097 29597639 449531303 300937263 629331104 716080745 832154856 169047168 847680054 707517348 812704529 203179559 305033306 897387870 935312343 52581812 531874239 127464420 150050055 680277326 694189589 996909000 998965518 13738214 558800793 912209645 930336730 283178804 309768620 604538165 889399112 705751329 713031605 786757760 811454903 730346386 868606437 706761602 840312522 588085026 612774128 705909219 772748600 382977578 969744178 174042531 952082870 35751657 330903166 741321657 898267811 331928195 462265232 748379151 788988722 241587924 799581474 225471148 582387231 761868957 956490765 960698836 978015768 436267502 530257254 861024543 867738184 634357103 689513603 279273542 581538817 260775826 672282293 459550466 897146883 708836934 857161549 347105983 608452162 668990422 788287150 305135158 714514101 234297575 422396365 504642321 674855726 938700590 956450522 458221567 888438487 52473961 888767022 410455186 941262821 47596668 439705639 201954748 773952557 88026426 936172929 737436645 787168805 488167575 910498597 387267006 593028550 449500380 594019143 944314743 983317910 168755301 908353999 217299366 506194481 204450978 985817951 97106191 996241579 177188441 835910187 418993421 962994691 514671984 874722712 835057123 953622307 747603067 833800089 118771409 146872801 609140122 727700225 175519102 814198327 170063742 747080601 404194242 834275602 874620929 878015895 307278281 432122905 173041569 400352927 318203770 786674937 83202246 374640890 582506243 720150979 258793795 602430269 805592859 956306997 28028352 187825670 281616953 572231701 561613962 723636410 861821100 990464236 193975158 233694889 477467874 984794081 186064943 574280392 961270678 971604070 674658474 720301132 362335069 518749074 339622673 608713128 708164378 980534327 630348266 803592649 393039072 710588808 409435727 639740883 275862480 877441368 29269227 94314347 333056341 635123574 756726178 879996510 327712383 418591315 513214433 579847809 971527519 999170769 392741596 688785824 53082628 495656775 554301986 976492057 955073234 955298109 245155084 769309936 163797046 764089012 726145717 972475261 285729193 923576353 361788554 615119919 227491040 729451605 405136303 785780074 567570954 736964962 201210053 616379311 114674725 210973011 720706498 880029526 579122756 623320889 604531551 747377561 878211996 934838303 79316622 309349799 824221187 899522352 934671624 971670252 433301261 497841202 86415465 203813103 473461677 670729967 317113368 983707435 626172395 656181376 106325191 688503597 430438726 667981775 414222175 422627960 804772956 912604384 49306668 316984893 895176622 968277615 333066994 611097641 296448 750587228 485814575 837825875 352023944 757631508 959799293 989121448 647867534 996338538 16332809 971839518 468566113 813514052 406193631 909178063 723261002 864359822 805720027 918104576 882345906 986232956 251026046 796514570 922063962 933955896 695317256 965817718 63715727 263243885 130475213 746549559 947223053 967384604 945568011 965115618 128289712 266960131 551443549 998560638 188324948 525218497 84427845 96291492 479743754 483451435 886377008 998895636 36127865 246713390 752856648 790582282 303807864 781049467 741802092 990891842 69263722 551781485 373728237 505969791 708960312 905938910 424622101 820332072 428179905 727582771 471231190 784162515 497135284 618034098 995599683 999347476 422839546 844738546 13330934 301328463 420170784 457997335 310367054 350329504 724977673 762222846 422548934 524298957 50113742 885525347 495905670 612746608 469905233 908681913 399148224 477302207 315609185 908935754 742364162 841378665 223114900 930080359 964688941 982542506 889391585 939959114 198354961 259268940 825734534 845896706 536101083 622622408 457944120 760449165 145457692 695789486 249950149 911665600 332841534 941603907 823291333 853425524 456738339 530741091 893722473 917590513 810398447 848739162 455780100 512371807 98553960 481340951 685080506 793048789 440199018 915040972 814239430 845994764 594533829 758837636 666404494 875353723 535599121 843321026 546006532 989919294 976867422 996602924 463097925 563683459 479588743 906678561 333560376 741945419 430529025 866518938 72735007 641156920 779324763 897227966 68334058 461914409 267566340 859928656 416749911 934036992 558134175 579970198 545574601 740996428 552976807 950192110 178130863 982268066 487142570 682532026 98941747 896046688 201968783 437134269 598018500 884664988 540602346 759100018 953826166 955495025 660154674 914630164 516806528 628770105 113577257 725397152 668326667 886266925 753308431 760929829 488434558 507282147 406516590 575011317 699632600 852192865 379376734 524196290 865636796 895959810 580960848 706244007 616777552 909081848 34092633 87466598 733523521 741575742 598519825 691382358 433984991 526677813 723074890 944406107 583957288 837500993 227645656 767181978 815760443 902571952 605147765 623563225 821529874 982794691 839409831 937096926 37872943 213333350 146178507 681497720 822216790 940705794 576907217 597390066 598276045 716535711 562369506 975820905 792269699 855046642 558514600 808199286 895447027 976282703 239883583 332903721 885886751 964614536 360462233 608917796 533957934 850002657 74787924 988456062 143856278 236997187 457684949 873088378 831173984 948112136 977623516 980802990 865737800 872212638 642368943 798038965 413826845 550384901 176721010 331657977 610872365 674886764 369293850 548575878 745542119 811143449 360291767 435123729 765929457 941438847 885083792 909297198 161405535 399366299 522440801 783783532 823392790 969716263 508561942 809824039 11084397 682124328 274579698 650039121 33094212 976782517 191731135 649212403 305169311 466062832 31630928 197139792 815884229 985154639 953938005 956902031 557264919 820914702 780628959 948821145 131461701 510178040 543372040 555429480 596851447 893388254 351348028 483754635 232493180 617214424 408153765 772327214 820452913 922739168 618182577 912218317 509012961 886990022 962961403 998171850 143327159 155153964 486544632 777378439 908116476 964561715 94868403 249613076 129441158 375966718 226953238 411108286 235054008 773260648 69359717 752777324 351013092 762410224 669690990 823940332 485892319 516351999 364374348 640186208 798068810 842984891 244401796 496341024 623798699 643178446 449368052 967809599 433293886 816222314 76411085 926079876 702393734 878880571 467383333 755068553 95707236 480298948 804438113 839854488 936590602 978599847 98000527 306146384 266069132 658279184 990786822 996474731 487807635 525134844 670518664 925515163 125623641 702824160 715247175 835547424 37048368 343165142 331005754 414640198 570372331 707910801 517048600 653442665 581639373 826754833 874339124 996013736 21249042 921602789 659652215 957483282 276551697 767776485 846642381 977326697 166143983 487851651 32757604 865382594 864516375 948197413 695667622 933091779 102675996 431321161 619910564 931101430 939723987 947705818 301358618 954641968 509686009 756502772 268042291 342149226 327102186 680057233 62737764 107885838 493106877 503781584 856958223 880298667 764627080 990959719 422221935 807381778 301100320 904720651 786732233 981301470 740766849 869458138 589316716 663380783 644906092 763770281 240373675 294341094 416619318 610063844 800283025 951996272 574211746 821963102 817716907 947415294 467402581 700347289 671036543 988661259 900001443 921725071 782912861 791025576 385216577 674862388 769055662 769709475 796157530 886802595 502196083 794421283 567608844 727161832 91790023 740331147 988429082 997747974 228686747 368726102 484731187 714354138 344494996 756359495 273878772 857430747 671611205 755985534 370527848 611419439 555037050 752264002 585031229 981221136 437821754 844258899 689951166 901678987 89098759 515643107 44278312 822280168 287359926 544622906 505308766 764567906 840990480 887183598 641334370 858490775 189795895 611557591 298003267 977219513 403538983 874778260 659944926 916087694 81058315 988619416 190681503 481753060 834963941 882934995 332409806 685074497 761468658 928980879 506612902 628678692 859219048 886695951 305282930 938130866 944482978 977424589 42817063 287972358 132410651 479961268 718569461 983701332 586709616 911043807 254307062 318540865 168234173 516180928 129899055 457312266 870413837 957317661 476930440 725742508 188628998 313730195 962474673 978320199 884940558 935098523 15764992 898170807 454802386 920170482 879282112 889410900 671163792 942248355 930369149 938842754 729908160 873682446 900727870 910775542 87139239 356151403 923513257 949338590 437309846 542100513 392718519 663115459 580438433 796015779 412000072 422417041 111933875 320568003 669923399 684445628 991982285 996341394 424539319 653258516 15983450 99440418 56889916 276220533 276126986 634412397 449627891 618920186 994117309 994685591 266959910 843034949 629668032 739364303 669457967 699239825 477310322 575993521 532614185 618116049 669373663 756449240 30393661 520443584 128408635 630008732 455592781 985660576 265090849 294031426 776102413 793330821 571649041 974964921 186974722 985576126 884855641 993050950 117560542 270407835 551118065 589403706 783891239 919953465 777582868 882781222 17570952 655564433 371589563 931936258 408999112 462634433 601010553 721820045 599239618 714596991 832008441 958444067 719467722 720276512 859763577 999342811 428162943 489038514 332884930 604734364 934755624 998640659 509068152 794254132 630683537 680471123 326527831 935191684 84341437 506767965 319790886 809428215 785968563 963876360 87260313 800314957 264381480 796619358 324567969 688803459 712007235 827174395 202051703 774199033 738749885 993955694 846787028 902095751 631794189 957140550 838267604 903555182 882929331 977254268 550069387 795921703 200267031 357385805 250351478 836113910 798800282 916314645 211593410 809627131 974198324 980074873 488831718 851417266 118085733 145069758 751831699 759213336 704795538 817025830 849864144 851840444 970953468 975584522 216709352 326194523 78594711 782080631 671731151 791670648 888522942 949582612 297062778 753561819 158894982 499700008 541205476 960076241 379446127 887372036 229232499 596595836 619900977 696014227 751927304 941796320 219571392 329665594 539677404 933500312 436127921 939975977 344636294 353342182 37354751 708493206 299904233 843481122 616661694 883098118 481940127 591502883 797413610 895369431 115465074 165649549 632033835 891657249 770796629 904075588 773395660 945741423 77653125 406112100 646992280 940824190 709421276 746271755 279453391 481950067 562273719 822666343 506903109 965738207 348179074 655498626 882234842 898925633 825675584 861826361 192672301 828124926 968971747 989610627 90366452 103181640 294052662 748266409 949521578 998203694 781775448 874211230 616937575 807639215 301423933 598731964 961418896 991357495 136701169 668444511 991793806 994026369 281208203 695642014 896984698 994854805 734342237 868842488 930142442 935726842 449188749 659271924 46444878 504809213 10159571 137612827 197034370 210546920 725973953 874457689 838191592 995706491 612129045 618287574 321312817 417687523 388520072 605134593 56017868 161595587 280153048 505383560 274317655 389870618 609444486 786338753 545753992 880010895 409925394 484568104 898208149 952152490 954965407 973643682 327388239 411378029 565551274 791060913 434487321 458715639 192789405 291469947 305677998 818751385 375540104 875137582 283762289 701103744 902889085 990540351 904173892 911198348 442037318 854370163 137646620 527747132 692800932 961443935 832017321 948328669 229182770 465165092 659673029 797134251 8809976 182087610 332246369 851420508 495058491 496397290 213466052 931846979 870146556 992684191 202658066 759166840 636015790 895661870 363039517 875582564 742381323 865296179 735973402 857739352 581645792 917608662 481507041 588186983 137301352 330353928 27835144 999915532 568242869 925777380 119615491 877984079 915979101 951578516 880378971 977336639 302586127 428869059 277980288 924775138 325050091 657626056 735344322 887398422 679051578 780198552 466437097 965714198 92926218 747488726 309300758 453196755 868547965 975736187 66633806 206152797 145701552 793764391 587499115 755147326 877110191 980787505 530951296 635913431 802103449 904743390 97445680 968044714 819427225 993213827 834119795 886140265 149732441 720659022 969296400 988114135 429020325 729630667 89057958 592625109 704343912 707609453 705858240 790703143 500623633 535286911 306714902 540444085 813662653 858867179 935015844 941315392 493951539 674252033 388630470 953627821 928856902 990723268 93318970 734498481 980412989 994781756 777602885 847121326 412513549 739775432 732091864 813847932 439948989 966720576 388829195 475464064 462239626 988001196 994770470 996748400 715920432 806351517 427959793 826461178 308065211 577651883 546688054 949185923 117180212 379197653 702449364 768910621 299742635 362310543 545490954 996500582 189769124 265869294 3036091 245448598 785653322 952220796 504768544 856636179 222040829 752182354 887746687 991446109 277980798 421697184 401049375 750018304 256985649 477103506 241407204 825778543 949921018 993655786 997510630 998070685 232077093 746115060 41260716 467202699 436482485 782769780 570315027 968067515 529769844 764376754 916830535 930418406 495576337 852398767 945474090 978381408 602325400 626753283 179156922 996212105 486345223 817715277 300951319 363946693 325080902 930320970 420767704 871915039 575841158 838496337 412409216 485470814 20409116 924148183 640312432 645033245 574512431 789900001 922916773 928163157 467099353 896680945 986620184 990590974 795606706 837276443 437661287 991073763 632770147 916048432 191669932 335512480 861510381 971309168 536227931 778599510 324485857 562455371 108900729 811113500 201870699 502898734 491914534 786558218 971630011 996421144 279716499 354068719 251913299 787563019 586260990 702117977 797709132 809670358 925326650 981810474 431244749 459501853 298061588 523646245 436672492 448512189 142200541 365782033 879764228 979611470 159680619 895992560 18996890 71916247 350762816 391396639 30352972 991861189 816787211 822269455 216850951 752246642 810286192 829746349 314619104 957894419 822817217 862940701 422913741 971203226 444982592 740058205 378467155 784997310 115973205 828472337 859670955 872774866 89934136 945872082 989934140 993981355 412015495 946868122 487836141 988394792 331392428 912992145 209883957 316768096 467644215 914680458 748854548 894714066 999639268 999898470 413425254 768775961 847071800 972318268 355162131 402971927 325776057 377390167 152162207 761913137 750025967 828520047 999837467 999858317 816492537 818905062 788354018 905510791 462463280 689594749 850929173 955808874 775294688 967697481 143377732 643953537 78652757 668503634 953188459 995156341 552118616 590147822 110422892 517440102 181334797 828817438 356833059 362344045 457867698 872526122 696063550 878602351 691273330 872998182 897719821 983027674 238682646 424627843 992198016 997582648 741313217 966372834 489105784 967867035 591351502 899503527 236421082 827292791 441399663 869725838 382599350 836519645 712796098 871002873 450828560 791259613 677932849 928990365 311861500 790255294 925484724 986544347 318122604 896811726 843497496 925353433 367617697 979047756 886785278 941786828 863057056 997343130 622157616 675028349 576288513 630038890 474087688 822477499 632534638 817931717 330506006 775745746 111605825 834218667 356014635 942063031 9543328 77951506 963297269 977760517 714581895 888872757 28015705 707635913 10430014 72768755 241113737 885627836 103469579 649506331 7352702 509733524 182006677 596066921 407113170 929603862 630631285 854675798 119519515 234286912 43933894 274405848 827878967 963436165 712816741 944265645 478994591 594667434 600453314 835311760 885005344 890135335 616472831 743967217 120378607 567099924 475130463 748884266 49397779 957932659 469857213 681835638 815128611 924411108 866975260 884595138 389378143 907482754 831609599 869405744 683994397 923548000 651512869 985811379 896344572 918924688 927855379 944733660 860137097 883518123 182877398 635935477 690486310 860401669 498265163 615593021 600246162 944910771 658365633 724382555 50381861 152186889 727668353 945670091 341328789 799247821 603917307 616193935 132723220 826610058 549804933 712447363 272651662 304160540 763376250 851975812 121580312 617389595 445764211 686376848 342574844 831029188 899679420 954214295 747104536 763667346 187956691 962618597 591404191 699274740 694319810 871598448 106539715 670289401 235329569 459602540 543480825 582138418 946271732 974064352 532605014 581770345 477912168 943185517 109559644 947930323 950268416 982709775 236459193 854573448 212531227 353607230 946206421 957305949 837408009 996913416 939191546 942461016 389871293 774781599 575755124 770699635 689799421 945752858 748501727 756586099 222480671 583399513 98333982 464291560 213910473 328379040 252223898 732223012 827870444 960590289 452313401 869456185 293956293 875788066 432921625 519470358 551726778 789982674 89258319 417532016 992940090 997063524 347039646 816413330 673628365 988609976 412729950 660880470 163791493 213823596 639133683 826817125 874431920 891802513 433347358 679979372 102272277 931323295 514246475 996110168 643691168 695727733 412828345 928014052 384978451 746883342 631437148 840560246 976491276 988325174 963790438 983242776 204626759 410866468 848155576 976826520 130141667 297966047 465341734 930614342 78504965 241232368 267533619 331504516 264703204 393331333 103490628 754210267 316669612 922883030 71044286 304683708 966902393 971705006 550601817 925476202 115624064 794517933 523155326 890342250 951788117 956621818 875449208 997069826 715310392 766138272 276201175 344466213 945873955 970226283 550654702 635053815 239936560 889308475 660446021 883385698 909104226 971290678 589763932 956972506 784059279 949462864 146278305 732499526 755636098 923544079 539369338 626171990 206426179 701462291 884166245 949363003 582353392 824837654 231720400 553363699 26419818 743812961 376552418 871182175 623221250 923687695 819671725 937480466 742859627 830281848 898682552 937285645 783579605 790457486 768426221 828193262 250053612 868805700 750189928 959472315 229585471 584825911 875943791 918951397 953997291 970584061 964877121 981707327 394980062 966430525 769049994 770429173 488635173 611915592 71978346 599632839 802342423 956699014 508567172 614137564 625694843 751290773 857082646 964878577 550008690 600312569 217763298 631593871 39656704 202789183 756062917 821520538 846869772 997627291 96112281 213009105 513850311 690019942 868733392 992885054 591829918 795973403 550426797 650749681 545790388 761384336 88578957 168684603 264608280 544799033 728071595 895412282 110989680 769915955 184593288 762728436 849477906 899934759 166173106 408164758 703638723 847131293 234974301 684943471 114752055 514923237 300941064 309559097 771745655 816042334 592408882 985759412 223329506 669699917 958853293 981395521 699409861 716990138 842986553 899050023 400831244 410680151 338363053 651622331 617234263 718946673 177053314 410307271 46391155 312276221 355719616 783250522 727362028 777761378 380103252 519712026 147119251 888470753 279922402 970843722 887927441 908343921 673627926 887197265 979985131 993469954 384009013 425845258 313506331 512975803 361152808 889361319 339334734 954366623 409789254 937760395 739405253 957392036 295045160 670951183 788628215 995634143 180690977 489485514 240233016 339769815 420045219 678750787 885468787 888152024 588672957 615988273 453023435 641464910 105458179 915227419 341072062 785245758 192372091 730931242 469828066 579005726 14380975 351534956 620668574 927222367 854480521 972236204 808876076 958850770 46211702 938431519 313641214 753699798 447291600 916163920 845331569 930951626 326326282 708245497 784484547 902729510 535485671 781148384 753460066 830363071 104727761 842669414 183212650 740127591 746964338 810593106 713483953 897622246 873483151 882065768 164582270 370188428 957833141 975635870 676930485 761975936 43874601 955436856 728084037 808994741 588154262 685765327 224127470 580382908 272561367 681231245 697389746 829700767 100684140 470065125 608757091 995204411 631268993 667619270 723920404 915771994 528691982 766079763 20684639 308773343 326040848 551697707 732903427 800364046 129630955 756087617 1000842 563285387 986196397 992353390 774394695 914042793 723014255 845735055 626744038 744953279 6377277 89187124 984485792 984832841 124308185 583459336 194124199 696902577 152849237 667705848 856879134 956872084 132497485 431080863 784863905 798012704 251267718 906825520 620567648 660558571 236983327 390208630 386823970 968221134 862152735 865842731 595202759 903871269 443698737 830736362 324592194 567302724 981227204 984979818 444596181 807221892 488056834 591519643 826662635 882758536 88440174 774693415 424489398 546666740 799511784 883057535 662921136 793487299 111295442 133839916 911425115 954582298 159633136 948160091 675750030 679139208 209714820 912599779 925521104 966044412 509156437 659783330 151379834 249796975 709882859 748356157 990542596 992284707 66731556 536643016 15466844 246423335 890367111 970457961 747543788 865953301 357617636 425319390 792300932 898275951 423616267 538775728 362542005 679923654 78268647 505580949 900157783 994953921 910651501 967856454 866660469 964447236 847108326 911323618 147718080 910614560 890521648 902583409 833900829 974460965 18434854 725647427 219892837 490049017 661668039 807318025 630187834 927880975 260716270 937196471 31511557 339134605 296866585 658284971 408618182 469237012 905653774 906643862 834611890 872876303 479367098 974725484 614880853 750391295 374516958 394468837 227201598 383620220 918886312 923283570 843282281 928160037 295957193 421541797 508447610 610504959 913070748 971638921 743932411 783904556 594203635 788829388 975723838 988172189 61846145 426884778 825268017 869569299 358765791 970301127 381539447 630987985 415620051 938008891 391611368 887232828 508134284 718787860 455324551 961802921 253017611 834040058 132904408 869319003 795900733 905545549 2249349 260382686 813303880 919222720 238830543 745935008 552196715 710904779 157816401 483895036 772210098 868273457 860315194 878126013 609406740 781716924 108810982 644816990 32972606 82416543 276571555 633082510 783447333 990696274 754196212 776507061 429894806 921094531 644025973 907446714 493558401 786779085 874494796 967558055 823586096 825035416 782381251 897256885 572284581 750239306 197180665 555029939 224923992 734686468 166038568 440455709 690180442 745244044 398254900 726749400 87887882 358964786 233330602 426039504 448962678 907678920 65675411 678328035 143161098 192141104 313967249 940659013 599424000 628537470 619735427 929266558 487939776 851104964 722788901 781319095 299345449 961596382 599989915 691371674 223023149 626952927 945895203 954545019 906528139 933317499 227583527 581616026 335266894 993712794 548831994 673282121 718459717 902136252 601448098 669371826 958021218 990587806 840295380 892084333 998212217 999362438 846500691 935625526 771916435 928769780 345428390 874264504 385882372 420228117 377530570 625259853 564743556 924086796 904648344 935456377 854249489 966851590 222669151 396979583 804836642 911294788 508584162 648870780 166558276 640505125 264727263 355134688 730094902 797207098 262736468 666345889 936463900 963759670 689494416 766290995 559413049 819030325 394137948 853043947 677076697 880724493 421688728 548320248 790768465 873379996 18136364 944306715 117265913 354790367 741941375 972679883 292148100 964324097 646319103 939680733 339077522 875683313 157549451 824940828 820796229 919197007 530356977 864330443 232247096 817406970 138377381 297685639 554352964 965829577 793552074 907635239 706530999 872467730 998378465 998497977 730546625 794633166 813781601 987539238 98806888 120682884 31004063 574321361 687479819 764637267 295617714 307114655 956653558 961800655 306982350 853154990 318977477 697067596 306009663 800901158 964298305 984901708 101194880 317004314 775859630 936627154 364632019 945767067 723145948 794336336 638809736 705672434 566490393 669127620 5599230 859813668 979514707 991973518 387566656 721481051 776434292 982739489 295745019 818819104 400804091 749052750 180711610 592294306 417867940 698329508 492213849 624625931 99940067 583070832 196473754 695704243 341998682 503819436 472013817 526079929 270960034 310900510 917792675 945049702 519844498 634418057 204725875 655777794 272556579 587724336 831412831 966925616 250167128 698117428 428026786 716961549 446578868 521395740 659124823 995151553 918012486 945471226 826077570 878718738 944003979 966216111 810965659 928224740 644499158 700574005 36689642 358090786 748361973 771256332 440784634 822351623 879106498 891399327 773258496 965460276 549555089 835991843 528468497 999171974 975200636 987401178 87958773 140120668 234489078 486237461 569720778 931282426 247118441 862989816 901473840 957721130 619649177 626575615 638171492 772283350 57954645 160207244 920136810 999639735 869926870 894165143 829230953 895849274 428340558 841891018 377934312 818767596 565625599 885920159 647180156 729003534 227567086 336889727 826212505 860972350 315305292 762077975 383667546 757104942 715187456 966752100 528995258 902708088 732922369 919126373 621992696 908600880 413626351 621470854 661347072 722839237 564663999 980590827 926190131 964651609 991687274 996780320 567793458 673694774 172806439 834707943 521038691 793590571 401186675 454264285 725618455 954628423 132515835 236078443 895753392 912368508 210858625 326434940 68544907 870392572 514539383 804350781 462956270 718361241 132305634 309468367 288657617 568552309 344641327 699357090 814004692 940511616 276058475 818793613 631351972 966212758 508649286 511396288 586811164 766295325 893034265 986685477 832453102 887895648 757911422 808892498 165658308 879807005 617610127 873283630 821178485 954513029 259535409 714245550 139272939 985193482 265538776 671009809 666356460 895203682 133741962 915745186 213131618 942576711 430650115 786528601 418380317 511029911 149541377 574334243 348664477 636227306 928873794 964007778 374455841 507477946 240706500 903934994 298684288 322447638 30615346 297600330 797486020 953787864 240177704 500758585 733079680 991614070 272456812 913309556 862445410 908225796 503616682 598315701 410896746 512600495 123386795 251670973 898828691 922303362 287359082 597357537 43813073 786476757 320696157 567975164 146346529 661064893 241243542 973370397 864051830 947357222 890162598 954428246 781256394 882276112 67148516 284340380 402351936 536054104 739478104 877154283 666693795 719125723 563329082 646334817 615744250 805953370 74264812 449506443 675789181 867824793 662027489 953718648 479271015 985154326 773487746 951982437 855092790 869344534 327612712 959907906 159702488 721152837 115348850 330029540 752159542 863062792 542772125 772749150 466006343 941648650 605239037 844427572 925894776 984291268 361874803 861922136 707483577 934538954 389998412 841434678 891728482 997108421 444977440 540327391 874478144 977023785 302721315 441716639 121486983 553715225 604056091 872429073 879538863 897162563 860173901 894289577 986733261 997028119 319515714 527851322 422179388 936046496 12622339 70052825 580587358 804666813 889411008 957451073 470686882 933936499 860361718 962601858 754147149 957231452 94476452 291304434 9652706 568946310 386623188 678709836 339805965 749207586 548154207 732809946 726991157 853916438 428689062 830391819 883844971 974631878 393921155 537862585 600762588 895801062 483258476 867053795 815051703 923905389 626223547 689141463 71797255 531250945 863510636 951939198 34904071 762231929 353819967 687348655 351187425 479033172 817364167 977268163 402129894 549562607 438352874 697512039 563791361 728720710 630827755 833826221 317072098 714716194 892013392 903927703 112912318 808450215 657191950 918145169 17290028 886642994 222543820 626928661 38746406 667307457 170447611 873117200 354460079 834998747 825817659 923484638 999422402 999676430 204207855 939555511 156895928 203787955 146292587 468636898 234788843 876500246 183992479 887735821 249846082 714416416 717958579 995724086 974173561 985127486 241418366 505810250 32348699 803715556 108832564 315817930 928213631 957991602 345424727 447496691 277589138 798928565 631226543 736011428 998284823 999322881 424672008 823227355 25343698 926320678 238683276 257690135 497605930 836341729 722313144 959062359 494330781 754462823 124062880 692691563 630188573 818967907 562174693 603503035 425800437 708783592 837465275 988165490 210036450 833167746 187182794 688002895 60555378 705641263 845811413 876400337 807488658 881763670 280258703 977679220 515504298 919027577 338221182 557453534 947598241 961191273 843292493 981464450 978572684 994521205 897453990 935830609 898166100 969619780 838055686 963938386 825296010 991905617 718075939 786093941 448589302 457869596 317793372 552175203 383684712 455629193 289061586 734839151 20874249 415749820 613941223 626819103 96571229 441506965 11304341 917640331 449258317 592013486 128706290 818186758 904289672 986286411 237469391 301136796 555462834 726490636 687468622 916248924 868357511 891699829 110787130 950537430 666780908 741867091 239039562 248962243 307559642 539779707 785105765 821625252 750790341 855131340 197831647 498607331 571199787 827557244 245311282 374199560 151301156 282976304 939531742 952937347 825288844 997284391 856579559 973435082 628955198 639195918 198952341 291120420 219907747 779877521 568032208 939490881 17295896 869251612 521163501 583049284 196676550 381176533 100144912 160684721 905833226 918540636 732693202 898078636 427973219 862862400 903009683 965797961 524407881 551486939 43685052 232399564 194540288 271800625 134472524 370922047 969001925 997305098 542199492 650752857 962413426 966653715 475182217 656698895 889894210 974803035 621977061 764249515 281846888 364651505 979828460 984609221 70854034 370151524 986004186 998919483 281631263 652595473 422123203 615113042 929867821 984058919 281617707 285747441 48702288 676889573 64278558 369433359 390113783 706601732 22396105 63579667 41263238 582246830 247188066 643698696 806587 634761482 459044260 818930855 405006710 692325380 253825377 558413789 989856659 990683625 356182733 986059548 799959549 941847466 164169304 954032125 329723118 971433537 390941859 858179188 584049395 699517427 967896082 991685686 823134899 839710403 293160112 884642907 563018792 822741523 510872078 908074645 613079085 882921193 694444740 846565675 62090408 420708048 608094048 747352679 454430751 603294240 629614397 785378069 388283341 708234489 328055758 567112474 288737025 625174099 406048429 716458683 340741512 812422131 763174304 887451387 747945804 807653690 484317792 836300359 596671655 631997904 975992251 993735927 996763958 997800347 721218336 752530163 596439104 991506090 885099009 918922631 169747984 787665776 723226810 817811469 328589091 865510416 746877681 883525264 159358968 301242269 422932116 987390477 146892194 186906762 539927212 540895982 556547622 683885410 388555369 881910154 296070391 450013003 773961240 870391317 496804388 671923973 44982243 416673764 930438014 972991744 452606318 977274524 894457045 923092687 261201924 276391113 454575618 476625669 906293340 960174457 995237953 997799809 395834196 656784732 999678413 999681318 449679125 897673479 720379439 761698270 201508770 712371762 308805303 793883814 337746457 916874080 135919343 711390878 149088686 840368464 184320450 526147955 996128638 998621381 915427297 991501338 347497863 501519420 957644498 995233370 781026823 860283390 192219380 226612279 242895690 740109293 260667315 692792328 779731954 886183458 868341395 895141877 550519658 894079257 66250620 317883541 630380390 960486438 675975797 915558027 274479787 531910575 738639868 890940550 443626947 472834265 874173833 932070687 251669821 773262045 915985319 987774082 681520885 748418399 199843935 324651353 602310810 784981243 846457966 981350152 896360263 968948674 542425906 602874037 221580651 698719018 844688857 962091825 792837610 964196412 391664681 714799936 681991922 946441550 922083069 931169182 74297486 675938196 486054797 984590938 888607673 993792663 348637814 708029419 704491405 953345572 83859409 447632267 649179157 803970510 48046425 596657676 574039686 720339619 412191164 549207211 870313714 971722732 410907037 494915914 777934937 976980943 517623072 617893956 4674216 773613261 423892221 949464840 586940914 836758413 508158718 924223534 149216048 287539235 27936808 459124301 268423081 612756896 863710714 940267290 446335191 513218650 193213484 312866461 160095163 891887241 473662383 566779540 222177476 868663808 688590468 750950483 678350836 913273439 813249896 969998377 929680926 941582074 378814127 914565532 757431105 818825807 848929333 907028627 971793241 974586013 811910389 889179125 673189765 783795199 739502283 833010656 335493137 949092287 591397196 635999246 496850385 504541590 527973705 547638656 623671919 839077106 832152553 994608315 371727588 964415872 649316857 816058772 725611465 862065120 209465035 368763136 239979764 977711281 287765258 890785496 709950279 739000456 34938389 597941441 773506529 874948794 983671419 998736028 294220563 782309883 721617157 918538589 888547197 888668357 282570525 931329944 998400549 999343452 292683819 899742497 489451354 583220388 526929023 907412718 822144881 965964123 895147307 966337139 553094876 800889266 5391462 431693319 256380190 436532116 217113594 507107278 942456888 978828296 806926405 999596684 535158292 759631067 458591042 592653730 242534175 427708295 135873655 695180978 65549154 617043766 906236658 913686963 420294484 660178038 119872635 897848219 574128031 693493262 786461971 805530151 192305984 946223072 187935063 504925670 238245925 862470341 195325866 717550500 678126510 817971236 874699674 922694951 350726638 444876691 203540980 987941821 968333865 998877113 255627975 758281795 260709344 539378620 302917128 844832825 473589172 717731118 323338913 813534187 40361315 375347031 925391711 986734757 969214189 970143814 944701659 970116116 962782825 986671446 781055950 997988325 729657833 733972466 925807899 945067177 157847903 614212475 944987755 966562859 515505986 708260754 861116645 986161226 473151876 992680805 326894267 414160430 356528864 441835169 426780433 466417601 77749293 999222168 696279916 858025428 419792214 760809476 712679833 989256357 399073288 671898923 517225576 617736867 921547377 991047823 335366404 365043959 474792484 850394682 352893558 454408426 482922682 573425695 936977606 960304092 846737462 856693495 934156217 982454913 99115292 737602572 572623423 655923880 483772489 759005486 621212239 827935834 367321505 831217835 90540312 892718083 575916533 917430863 832337055 982526908 265998983 699738275 926703062 943474728 615168904 943435805 708604384 783171177 306899953 388409640 458749419 728563584 892661874 978047339 308013615 440051888 748391003 871962359 339956381 432889308 47867912 833450203 19833484 291275110 844424588 905148065 757046554 958269054 239734776 360327532 119403909 527643876 834742022 958279022 15894944 240422679 739735495 949183041 827512253 959002791 231019898 661298449 227924280 473300495 783527213 801025929 980480113 994127202 542239319 712009307 54230927 818884251 889498395 918524280 816354586 969276060 842397049 911505232 603748463 886858412 615622803 950255420 684489492 931359293 12699992 506339003 960137961 970699450 313373259 846518489 432278540 441024437 463358419 628326685 882175984 886831997 891419148 967962232 124106560 842319655 149410240 323065176 331483163 895428391 88615964 615474862 666367855 776190769 532586401 572211923 255233759 349142631 861692736 975492749 913927368 953387840 460309886 602584249 494135914 617154859 253776865 848988466 18229263 268702386 226540900 271973648 868397598 974079668 36979681 203050919 142613189 915694269 826703378 893720971 836400253 849241163 33768910 449080966 663706753 717979276 773844047 959201428 377560998 840178536 696929103 767383140 650856041 854912906 444255983 697777806 190536930 489757568 792352526 887691931 466307209 649759305 625021215 629117057 81380753 900208790 702039395 949824373 922339325 941762134 703312501 873058113 7531463 558072148 981574511 990353346 453234488 472976822 752214187 828971070 401712265 678246035 207681518 421353455 201311192 821411250 486454828 807487106 338512017 900732696 418741660 768887585 155153330 251556257 137843124 931141358 665014037 731095504 89990458 955353320 193949299 915875680 678889235 949708466 241652011 329236852 148660259 304112562 595375182 787179825 341179237 534988475 506587884 530792336 172414405 279800700 805848449 915172292 371381667 837471672 686387046 928082426 304196263 653180092 661685368 999576655 395054138 450124026 574014645 756375627 804038870 815879768 157393848 308234703 493620417 908156594 815711687 904126791 546003611 556686006 276953852 628134516 856774166 943153758 76596534 221110236 427553956 841578662 864463806 865225798 61439604 689220872 372825203 408237593 794819330 926775020 790853365 964235991 17121266 633683147 339198969 472911678 320129691 457822585 524810221 978330341 527946906 880061771 785547415 957854004 431909630 976421602 708839313 985474322 197125260 362556095 297858718 735828303 301373348 598907802 748617400 990837536 471669033 922696976 672123790 754305620 544531323 930261603 190531281 700413263 897243406 983435437 988755419 989866667 322200977 563139255 54944248 257901939 541457917 951411730 832104446 982993336 762020865 928527225 756608424 804717886 484844114 967956774 329684277 342848266 168669687 329822905 484518205 550372708 547208118 675773787 268702395 452979212 196439443 912385562 984895390 992337985 939458070 986260646 250443914 435268181 362481067 447901143 370787746 707051784 446171851 598638503 647805045 840415535 705412003 812008224 711132295 809235363 586111067 996372900 237676530 476184395 906865198 942844272 656313314 737346605 862426309 900030117 371650396 614170071 439222856 892112149 561357306 990893719 794590683 803334880 176136175 348703892 256959990 847588850 879046808 934164906 182509770 697939305 975523426 982386199 528880923 859709468 18290396 62971919 48087044 760822081 129451805 560657370 858255875 878871099 902762098 991263835 569060300 760133047 249851136 312394181 46348758 103745490 67020207 961476244 211179198 611656403 880130786 897730515 763897343 807199702 810724742 828703014 728322055 945112209 864195410 996474452 133939167 440247336 272405718 350429115 518191074 999634396 196205890 989595037 979574845 988117460 516870876 522512630 84254672 757083989 577504284 700273641 778607368 936865503 512823481 890764404 806601922 866636870 794038923 901003697 505040003 916165783 495347517 711820638 670556660 875279034 574036613 660050999 190235528 815429771 153564730 494542293 14527278 587039417 1483115 831202419 534109091 908231806 132648402 606016745 208863273 260315967 394014663 823519137 575856518 582021081 954495880 976536697 600395891 756302678 210657108 783534241 659228805 734251627 947244677 963342933 430619229 669404417 780227620 994539296 49175653 131211510 509534087 521033133 900131472 986638447 699372774 937423303 575630083 856607093 267054716 381218594 501905959 535851221 565939305 977210901 206857113 732650214 427851597 441634823 556272883 723015210 817571261 998114672 780616126 855944780 321489791 617542131 729443585 769748451 728204196 904613176 690291167 907200374 261039218 896831974 453220506 545205305 390460854 497584685 787661177 933911159 738320864 751408723 130632528 999757196 436403403 855087987 203046820 590161487 282828463 819539403 324250917 990697347 787098269 940466875 387954936 511987168 407114758 535430951 587219503 878521292 499887685 815994985 724767214 749531354 715458907 860744017 624728263 919909368 27585578 83559228 779121424 826404406 743927076 777015695 506448472 696776081 641530087 991989519 481673500 504977860 306221001 375052732 563550781 816112552 93302301 518784484 66375172 590837223 400066255 482957840 121616206 434794244 585293639 615710494 954404024 954946231 301440249 387714079 407334359 804040139 867074871 958798919 774360732 816236018 424977245 624879269 307279971 842212545 782461120 849560228 727787669 906858819 137846664 405695054 907522801 953094038 241511279 980621497 132540871 822263802 846221601 910754950 560215921 911156496 275302872 377764242 663386407 963563609 695049326 826649532 339548411 834412739 306121447 628745850 754114376 952327160 777886773 898673079 989868983 992632781 248754765 681498521 612745330 821574541 849540416 882440019 242815477 926430573 368689787 824560770 193054709 297016716 549792108 707949796 170326173 364205204 960245789 996014378 988734058 996978062 6779896 498612874 990908118 995046488 896122393 949107770 51680782 846043506 153898730 903572686 922262514 946538097 407390258 824662574 547105463 944938899 345332459 563268892 105122443 411005409 769222970 784896690 796758718 815281084 167814364 228484707 449664645 578535584 934320783 965216418 937694134 953564544 308721670 394264792 847915421 874299581 596651846 886352689 696132965 927175751 438417549 853919978 284738592 800658811 754830782 912751412 221672536 525301496 926998664 997042639 589817701 748370692 46784539 165821076 934124362 941714016 690367195 704949596 249391849 512380254 272157222 689767106 48815250 836207023 197018863 768837603 634049201 912210657 930662772 996243026 272512875 315526948 503947562 685006083 147215518 670961706 442670266 935154542 868032511 988021617 316289251 593828045 991940052 997148193 14039058 973129061 387912364 891873803 55041637 300667665 317462250 527870630 891714368 977120246 139601038 744844192 782979442 977303727 322852239 636807846 710730278 902797411 858502329 990187791 201674647 365038030 593344690 921297765 514196125 814008597 896886738 917522156 891701558 969970353 976776180 986959980 746013955 933784559 846354866 999410455 59804958 771745368 466971190 885842280 660233365 798870143 638451095 722238173 988548912 996949538 475099677 864396028 715346609 777785186 140855178 706523719 221304217 680710901 238561358 806108160 815894356 863156072 488239828 811743202 707926381 938753018 270327981 949203665 291331881 924006685 220207355 675940183 500303139 673695402 768640677 844240221 729001825 763376881 921092525 948334561 285917594 780464283 200536164 435690833 366161548 614441507 259833996 299989214 473282581 839443220 291649988 897638945 314255898 430072930 902827432 980934284 806875033 850269876 916265197 959686615 997583069 997638938 124905124 911534674 440927799 594017626 507537818 590728252 865904157 935341964 776156352 923189891 252153876 598626924 630732268 752094060 368151878 437093770 462991228 695248436 878606190 950856151 722003045 800844136 762149230 795219128 371613267 548723086 39191919 289196686 308554809 727575224 548204764 549013148 118911518 409010753 204277838 260863120 205504000 492048488 842548679 852253209 942708811 988846726 793376747 976973953 164600347 952456051 729662599 731259238 149154538 643142902 750721027 833471834 813864646 908758317 386468990 975548741 540573532 684921683 130329932 808624719 873781318 907309200 18300324 142156854 933589531 942603359 204908839 346243923 86996875 689412177 206475711 956674590 993756911 993808251 130432194 801825234 580618776 688536928 101394098 579022563 327934914 970601484 101038677 244309025 791026835 827342482 143921488 300796298 644136286 693849310 307702571 962188846 656119525 689565773 219936017 511485758 973767913 997207139 815601344 908589025 152629426 492311323 198651600 613331104 790842720 873466462 706846778 833307642 266837672 317210549 840461530 965201439 283538494 351373868 871262240 938945011 818711154 955947379 908976004 989677936 324245940 538891903 259785857 349908719 767860898 882036495 156633598 749588020 125944146 154730067 861873097 931473293 126812683 955892682 677198223 732811980 419513444 798741140 224272350 707360407 246359608 861936296 323486112 883027064 814173894 926227464 13819221 17867518 228999672 782795836 679933890 685148128 301409484 311228570 729050227 942042232 480441236 779805146 947733584 987222179 681841855 945160972 175498409 274944090 250360471 550943318 970375264 993773488 15506036 333268682 78173580 867587496 214396144 796462091 565825697 780178186 970801435 972074182 339009537 988732922 722354456 792679204 83470028 836158432 425748747 922760751 394858815 542227649 714342483 993694933 145220591 868574210 152170859 916699249 118899572 219141110 857470000 990133228 311972119 660242608 639002747 864468918 139537431 802270427 421169341 989012449 212060134 935847346 511537053 673831177 573475153 972228643 449809611 642496654 834573692 908675836 248267488 508433410 370660916 406119888 548640572 800174800 335192627 438634266 669988635 841015085 563630060 784230760 575392421 648229589 585051479 721931351 925093818 979329299 117704225 566433634 282396729 522253835 621142715 946984091 197409709 750576647 934381972 997623780 89088587 433842569 668090062 937817538 960382251 996291708 842997268 883845463 644583043 646387827 474189934 564581912 182757105 693418722 38884062 534414140 728240791 828016600 217768548 573084784 534254418 784463427 495580973 703924488 384133113 495348745 76129275 919304147 292704392 535249656 414899786 951789599 155208514 354905674 845679538 929294245 496349070 513421976 609421446 632108635 546517784 795297451 946730910 951949071 770381905 873113980 964766022 985332974 871278407 946874910 626343726 735621605 715316367 806593438 239117255 992325004 76026012 259904287 323165788 844319403 293045759 429340567 194410838 894460850 648864283 820766295 350256867 541606174 652918643 745864720 91539712 679170124 768906462 851179743 935554929 956164100 541047830 800195790 446386221 902427948 276510579 625778959 595710707 650590691 539310813 767114798 769107549 871602839 196410045 294222625 297776866 784557279 845804706 908956890 567054780 873653318 981101529 996328314 348549964 924397051 177412130 758155318 239821842 497007384 662025798 664862643 182095413 413372657 524970353 784202958 253883687 315622346 257170575 715121956 441539337 596286297 720978871 735366189 241290925 986104978 761529190 861041433 755501504 927523140 922580203 930889517 278681504 597225196 451972212 971031347 66815762 756962736 197138816 270371226 448607114 471230182 570509886 860781969 29675220 740764854 398539342 418645461 510292289 956352883 54035697 258844625 191738742 583704443 179489703 909418575 227724381 254157841 864243464 961349281 898494205 974028830 57089991 77294508 146559559 477161266 143906290 246811098 740411640 758126274 978401314 987973973 809919554 844474197 986540937 999667731 414661685 691228143 278314080 728432740 772310815 966267838 922486240 987819048 735794415 745041862 433957161 469613455 328118153 619433120 168329783 764211969 313647092 322743272 296335399 433651909 134869334 224744185 654451524 775918755 746319743 749589473 149725028 544633341 428649736 901810043 867133993 948527852 167600734 651878582 21208228 842418574 285080561 417507557 764472579 888502283 455536447 501433273 89421420 471442706 715991568 732523294 381343654 680854653 26679633 658096609 200720186 842987456 762073690 887688869 535373446 761502502 107277371 141559021 262133209 805350857 509012808 573090851 461537470 479086494 98445719 546763657 380224218 527842560 693137220 906671602 326273756 948859118 673145927 784588561 544706713 631603604 701487717 942288806 803839344 917402611 263285285 566886200 746033867 938668695 416536348 521492559 492189687 706971415 61103794 251500077 485232035 516013890 329674666 547457095 337335586 523895584 7213952 152196840 621477979 920344041 25561917 54774905 643795659 767918280 641060008 731086119 220879454 890530337 228294948 623691032 960340429 960591881 631176118 932942189 630701753 915816849 4552966 484830722 228698301 493638545 106613524 882115705 409773842 844137011 841993236 860557752 846675551 982019233 321534505 767116093 313894386 663804588 644249096 717743012 201118278 972548925 370750049 549869648 421973173 604828284 532832798 846736737 784885103 957238115 64632084 735311464 453710538 588631128 403236970 679350249 25874229 928009205 954312544 968885255 5835600 319683802 330591289 825099002 849375026 926446156 457224178 679482120 82335544 500992186 13551271 540958045 229400289 841312441 160864663 664786025 572481835 587077280 857080258 983452153 951582904 957161864 211974988 918564375 384903247 638755197 56797836 468875348 381378048 695096559 469514046 536242045 863901053 868526660 458767954 731520397 690619472 731484467 274919522 868251125 243600788 740577801 713360469 855923502 818331545 979711339 88047281 114311998 396037037 795776176 403103569 433408480 936987056 943206135 890651145 944514767 321574068 972003552 771761149 861036153 765389600 914514775 165930666 256884811 406267439 650401481 598933917 978525015 310326872 498728969 602009517 602346378 461964534 542866001 440622894 787975583 427925284 882987430 501618032 959997048 943533844 980526930 142860588 200931519 650560113 812078347 449391919 788028426 202617821 480421024 236607775 983072081 577621991 650470227 646316032 713669287 22283424 853659466 553909961 695675308 684384303 813256993 996293532 997391063 222931148 804552714 242292143 504393371 651946289 704658732 656386495 956975861 438057922 849108142 860595535 997767261 699326162 839852308 524724927 726186660 5197282 133735313 860576678 932553514 200668565 617855558 613569698 656705929 437563508 789834965 581757858 689085977 235046826 991082948 287294410 463566233 904958823 936657328 869885112 929786628 704851314 946896994 140853995 222428963 803743358 888733986 227391774 402070323 495703181 947888428 162681803 814015231 688470462 892299033 552214422 850823303 88408163 640987425 110371721 934668026 372711248 827793326 753580743 772298756 134060409 535103671 35070367 497855423 902234928 961912388 23209341 786990933 710696550 889258551 619707893 832559312 375826342 970547888 16323041 899673497 496295984 955120264 82727980 428150509 206012119 549453221 469440222 643710891 170415614 373491058 459997416 568185093 383671673 841121128 97626437 254717841 214768059 286535481 348076184 777213370 820513072 885660953 22065785 453594821 409090360 780647489 189992216 724157087 578522200 718320254 99084510 173306942 981868196 985385322 505183157 993795471 516946717 948475385 878163786 888375678 811489122 864568445 131547559 455461744 474888144 597501515 571221390 665889076 300862892 449540085 527320645 692816232 812687261 814908676 572205199 715397245 521409498 661680024 835959631 950403646 27830340 704419195 169642456 843639959 179442264 568680556 256097269 660017410 251668663 352708681 28114639 171266130 784869718 840834719 310071663 874805508 900251833 928952110 248990610 699025296 476946753 922718842 297377609 825073951 891568332 977355925 667136127 768884288 925925680 937514466 633291484 875244179 886463460 919561152 480793006 720570050 272500280 540897594 939878440 993579282 645878979 944671338 698774566 996004180 917392255 938642631 355435098 463000243 252521097 485701986 658289565 901677513 868764014 905013904 183926686 733864407 690902092 797403289 27449148 549632878 653645881 950667987 571479049 896326186 188489609 848904194 326547212 765656752 903895408 931290943 390219133 441193545 234366723 648475707 753244554 768800510 700926286 827434502 19286729 259749666 192256496 507634864 176029309 960499534 452768310 694726237 899423485 935272581 729199864 779440670 767670 168741682 397291730 980987256 645718358 875011477 237603438 497028122 95531446 805314829 376618265 904538656 518112144 543703457 915964314 973718392 116436187 721552906 801346407 953360137 742405570 994346942 630900692 959140755 578516117 976695297 600066371 855238289 808822887 864704378 688978580 809829794 94745882 871394205 503871597 919383341 948469653 951098312 230007112 507472465 847283472 921126391 230033536 431067216 185896776 788329830 103458482 855469298 621515733 641073240 101684117 850360023 90249782 388174901 855964748 933649241 870167677 906628337 334311864 911407926 602619361 763350121 912703467 955084395 441357135 506066657 940476780 977193666 724727820 946279259 231467000 258091235 278873658 675632393 131628100 795488366 942373691 978822161 166031354 938257010 716233037 858415949 591404215 730515729 456246782 534913811 598553786 618223083 958295912 988106363 943315381 948623631 759703186 959825619 811146636 943353979 491667462 661393198 622681565 686448591 309380631 688301879 571443342 899991396 834645339 869047130 608037914 757063282 749636361 945688842 821935461 950189938 501226794 943563239 418219940 571389431 617254202 873484117 803153231 908315867 682941575 983224679 253715379 291629844 306112719 528218858 561285100 703864571 720560789 836015284 487198515 855679105 190972255 720585160 746884986 753016175 129531365 489864884 769788578 854685739 590958497 737863747 488494635 611204641 994418440 999377088 333919687 812174466 357853474 488167785 414075793 944482452 389099638 673181569 974091027 983446488 426152070 810717381 212877781 272244417 486898957 731557018 452078318 882523011 901180517 981420775 124194829 692421668 393560692 747946644 278194789 580240066 575785279 942891380 850937641 999933958 398695838 796279513 467588631 473516940 41716941 755768109 114011046 621601958 215098708 539492058 447841308 599522078 754756553 830369472 766006338 950520776 96700465 909822464 585207879 918706111 654240011 887411171 708534184 783267216 483504366 785754186 58933629 373540729 986981433 989577833 103306668 647521170 294388905 621726481 381038487 674566869 998867641 999595745 775692040 902071066 688411929 982222273 9711773 319190960 127184637 287048038 297778426 461113272 708969325 830069737 199472406 502177037 787922858 960698126 160919996 810329847 820294920 933491882 404035018 786972079 132472411 641068909 529837781 830791889 904763078 926456415 311907493 773406788 851659785 967360055 898395675 981621337 653943623 914238262 33527190 236240437 990959109 992641248 493601944 836879633 200497296 352741942 579739780 845279774 788693540 835366725 280336088 351664462 80396271 520704808 24756649 727023975 931373198 942667681 356132965 519019504 858431781 866653596 169037136 292173905 827690439 931900761 880633929 914085152 156019613 878702746 580622191 950386985 190245598 345615900 297689968 598793474 418362387 679177335 934189778 973076779 768158834 853924225 509295114 752953060 300572586 945283376 976480035 978478879 878981129 890873717 693204302 796164352 291271241 644731978 803665090 990057117 993595290 998391451 223089709 299140852 951459601 958384974 784110770 953026916 629605778 964697262 912915825 935162680 94801349 912094717 586816447 716578671 931828011 958046467 420716653 968899807 730597077 943607653 948861769 991831338 165270547 993368727 581875161 608093514 418771344 508297720 927441849 948684519 844007833 974468691 35130535 331383494 643034526 840817545 696533223 778372686 986314647 988825429 373971204 977891537 308736277 886993363 36840931 948651447 313994749 874660600 825458170 988733492 749440727 799194110 3049256 738209082 769096354 846400106 39994835 589820406 624758263 808713544 35994298 202542156 969213896 980656203 12608755 719784533 567149564 803913287 961839983 977667439 627765429 980352752 718068323 954106869 577960480 742361909 802966620 975662815 488089202 828899841 520947076 935138599 846947310 989381026 226824142 769188014 70671952 747743872 274498568 279386825 399452511 924000295 594148347 633585371 449161494 652772032 900747909 977226184 505524213 849504001 741943256 902382332 419946507 672413074 517255320 597851646 293692298 964979201 663226132 995315403 252169497 812506900 905152699 938203318 885998629 898035564 127155699 706068704 929499748 963046568 562787616 704008090 969617021 997420539 616912621 628437558 346756060 516030031 368660538 747054491 165451194 571091717 36168724 94231296 47650259 526679098 610744955 851015494 392379334 582858295 815746037 892439654 307673685 451871069 805515561 855184188 277760478 946275137 496389098 503309845 888181049 987903332 958686603 977905830 755099572 775527516 353026544 496510381 11823409 589474002 705829499 732994383 122615017 228448981 467303430 835416150 707843966 837989178 650348460 702894374 31167671 229563410 411398706 889840592 380651886 478244492 186791767 784840064 807066522 902118312 222032859 542818676 730487151 937001926 265434983 849493211 275422836 759411962 30718331 217420080 942096791 954390937 170137661 594157129 15174300 534304706 757537441 765759251 400512622 592633072 877462348 934204582 333844665 463441602 390805091 616510259 841292479 963937997 83338774 730942006 699496833 775230474 16889400 400523034 988612642 998746262 846470637 906488985 508841338 918397451 872700689 957900611 385366729 715938854 943403607 951603897 633580735 909412032 738486086 962305651 495668490 581277172 374063987 994180968 188787636 258298476 651770051 948030446 876020686 995074509 704542701 838513159 563708330 787012296 78861237 200746898 104943341 234859991 322777223 479908641 751560710 767690365 862950201 988386163 170628579 250110563 717561133 844627040 472650390 585224664 851670732 945689018 218576513 302146549 568051074 982438048 669670528 973837987 982290778 993023532 86776037 906945401 190947902 805862636 180455757 653450122 181065607 579422089 939705863 958180032 510538038 681716064 621209028 900282769 988859792 996540586 501125477 848285554 129923674 502104028 711134557 764871678 231546186 344293385 263224641 378464986 127427008 849279838 561046711 579463091 606663568 871041786 416098063 547530547 775015829 971683270 891256247 960277925 24194015 891071001 651182473 895339093 797371233 812639330 7365542 814442511 758904390 865518347 470377291 572672797 628262166 853241537 174534069 314407108 205713217 885769465 863489321 882326580 190460062 214005794 936316692 992875965 547700844 678448158 404902266 537041167 483389279 864180919 883135085 972187687 462668346 570413833 418357641 852620511 635763419 977270539 334857800 852276753 861892170 878289399 758561877 984857543 714999044 812212750 962008913 967139381 377345074 687899932 334800408 644307174 864082398 974420608 405256430 494299687 458560425 989871081 506454997 972118354 253833085 937254505 985141527 989857268 775952390 780522581 903063461 946822324 354506934 500226035 685578351 798419444 116658682 997705049 600823600 780227270 807439330 996697024 288681076 466384616 57126203 386708349 618750117 743606243 890642407 991387145 376075123 681060868 801588309 890878923 331016680 631108867 837627494 967218217 484798780 848303166 997232836 999967713 470727362 714690277 532869818 700335935 865494472 884006557 360368445 860353300 899926897 972074804 320821986 395301380 104522982 233411327 741113206 755687099 360303365 856848465 401320421 515512466 618590575 811920798 867985150 991140462 829556694 845300316 222311869 896640600 299500558 728867118 74961761 181675495 210581768 480174270 88235315 215849455 158243242 819004138 531238734 813317161 716368296 961401455 903434796 976483603 305751713 828035945 184296049 318082414 673809259 759260861 450180903 889880408 685166508 911235912 1740144 702604689 200538999 886362915 822581742 952285917 936848933 948173623 891428913 978491650 15260575 925659874 347484408 967368297 741312244 853253066 652855525 995049621 451191163 648798529 859991256 905052484 781331252 790599977 741246345 822473805 891683058 989584026 717702638 819568491 425847497 857623847 829463056 901550893 65627506 543961982 594562155 865549597 422801989 631222028 486293855 579786786 309836835 838066208 599439879 681905696 976996894 984222825 907190785 966186988 934405174 999899412 707538870 994420249 942811602 971526715 879519887 925361339 745388875 903836863 754513609 764447290 717704497 862111111 585672622 989163156 732548187 953526527 921371184 988915099 53954174 541295820 829633175 944396576 529870439 574136805 385086537 773868759 366800772 448454301 17829207 248911532 424037614 456464236 883405912 956391522 151438697 399709568 889500682 986508622 943673344 967890923 507935240 991874432 253893042 578637019 977507546 991257634 240903587 989585571 908009110 957639524 70547426 840388980 643993283 859362989 617112478 898805418 486901718 948965554 789630891 882586492 580643880 782031543 138847457 163304664 113120507 340395666 172051767 864195432 302826104 355986555 973265979 976815911 145282258 703752017 88065348 556089250 43867802 802946328 681386796 703462263 678900679 825106480 338210187 649117428 306242120 639174216 286789725 335192349 180993884 677702357 408541633 522897507 216696805 496464172 436919313 671023595 384471696 489562790 580501155 859753435 605017742 623567072 294649970 815484881 949662936 994113466 663197551 857754887 143279958 702178255 585807771 930154667 571555241 859296779 894942986 923665968 405453892 779823791 934125233 978785653 299765063 486653402 106043772 702772161 170294437 221826517 595350819 978415541 491823529 585743170 58490980 100985255 301589697 548259372 940920947 994634136 510579647 805131655 53540970 155457165 103417717 419031207 247695403 658816304 473418109 622677067 380316914 504192776 528011190 652996495 959361343 983784774 89764930 650224392 183821338 717810733 910396256 934858421 948645713 949785096 439123970 621823056 64403986 417269113 103975799 963144568 44115837 524877525 800738335 806536555 16667290 893514856 661769449 990155741 269160929 368196706 882912296 910752317 496982902 555373883 705472618 837857864 382384156 812688635 962288645 965994493 337844642 886640682 167548578 276835245 479751098 691683647 707104776 957705165 17175861 675841187 933479758 948651973 837071208 976229252 805271205 971059407 821829149 830828964 789923135 806496953 207979426 644030848 838367388 938858617 921526506 981882108 161271548 309635395 941098153 985767467 500600779 936119972 579358402 963045542 616450028 670469735 126583739 872334537 184665254 731621100 65449103 718337355 362577024 404518670 375347265 441580529 62389922 413725350 157664038 670823076 735399948 777174369 571100010 846013818 661571577 963908249 504572921 530274309 448802670 912078813 515049551 654692290 367609439 765116145 281165100 329677354 279657109 869171942 39199752 220570688 825820859 959127472 895414910 963811855 943739576 960406644 952720490 993221327 537614195 563894160 222756629 306424777 62842100 648801571 890456941 961601497 681033669 835342430 489265597 921101943 231791520 929919801 641942588 876332415 735830349 863318342 791263917 860883064 514588720 908201707 166193388 944661236 634694792 702842342 298282809 703269875 58667229 79156245 608724916 610439644 568540519 940528038 797679578 994913924 899546658 930092785 42760658 819455285 239455684 879674512 370121761 759527055 558353366 583218487 77082432 635438936 144976298 467289917 571819113 868234459 182832485 433138036 165009893 901824435 218908393 355732587 411406718 870657336 338231983 463403623 544279605 816630546 289665303 969219935 777508499 970552984 111430866 460900812 251610079 976658982 594451159 675022291 528614623 802523290 100283361 606702032 158627765 576568103 895663731 944128101 509107924 708103811 734935794 901899785 726964565 765756933 600649977 859539870 725424732 986522519 790029644 817429718 95766428 640469756 209993487 721063209 428249733 563516495 38190387 921335568 884422648 947872412 484066636 803782147 976002705 983518044 130046090 209281360 101981734 844424919 635366531 902596786 832140806 853428899 335170628 548937128 972778606 986931721 212974724 489403579 818300974 825065163 77538648 940424854 194725088 793028223 515872205 687337290 851425882 988735066 282542048 841155117 840832062 993805015 130793463 214767852 548183296 695480713 923106501 976875747 254103052 565637167 275901494 724600871 225982939 284616532 175273284 916418178 906045 547655384 900105771 953197856 815809727 947632603 710433115 932499429 562258660 746165415 999111310 999816467 775437925 838193604 926352563 966486917 517674545 735271033 731980650 961369599 432522901 545087626 189656943 536531778 194637700 654678480 328805179 648810345 548321716 944681732 484526573 672880356 366217931 417687823 29502611 197002538 439095570 660995822 634301840 806726006 767081791 829054880 916512369 955843329 763419299 779261827 610478908 950315469 533434831 797062844 634089042 905218441 683822739 790490977 100466094 129083343 746837723 970902453 843528832 997286878 933429235 978183797 360124070 444264282 366395278 556408364 784823555 931583635 343693499 582717831 722255351 889438787 446619148 558204773 114437860 969528389 682566156 952700049 152923881 404277456 374182580 591242638 420588012 574481539 855502133 936454732 334632623 507331364 832354933 865587965 395444146 895203776 627266712 771811067 400685874 912928477 690357588 794391534 13870310 952503546 917529471 999742986 874443170 922324753 3145572 737591781 918753730 971044880 521466595 840419364 570253492 914884902 771879959 992245322 123487576 843640963 546356909 699306604 308088425 321854004 120789644 829806164 715154394 864403799 424789186 743547352 873147600 911728224 443454694 898604274 837234966 931121718 828440831 854726848 794894549 837956405 175214589 443103348 768570437 810942957 278394439 952402130 119927270 984312984 62659044 940129020 652868416 701966230 133911863 406687027 689811937 895849905 77253487 215169809 975573486 989116640 200848388 539761667 907933855 979762268 186055093 471710232 101419930 343343680 496774552 722748684 872312097 912596003 861274903 870425770 617735429 618496102 218569381 367284283 745700017 877261226 498656935 920624079 64801543 256759733 348928955 669087884 316751002 437673403 956652940 988913947 708653270 936583243 722843975 870586363 242413928 815018792 556209413 727153159 418800395 853771046 428093833 640549926 694625038 997877303 732852998 879830627 70179061 958015509 907201323 954545296 849385768 997897871 22340085 596491683 944777205 959931161 160380214 382475178 849739024 909492471 139262973 217080814 594546846 770204708 301154906 678859061 941772389 995321064 279052528 846879352 948892960 994178316 774211736 909832990 428951149 432682905 700359071 885397550 153627682 876433715 915259103 929112068 173221136 830945452 193080301 451676221 700266514 772548564 385695502 396000977 804610719 989923455 402829986 597656281 827365150 894713774 438249806 591916519 514340343 988539414 354193714 964245467 488256275 903854874 993863874 997034946 885565296 941048914 339589489 917233465 211733069 275348753 834548227 885582470 728712722 870203241 70991579 114736193 231267128 932954298 233953763 362509374 79612170 169017359 755964337 984515476 606897781 832419506 30034878 693584807 669104516 966616185 995790154 996483788 575902705 662675050 679299754 684772328 500110858 852114037 680504493 777103591 488628379 659547646 427670529 665354359 128979432 606636818 522435468 526191259 617675221 837284069 566090335 688626695 279849971 581543905 718018664 935317013 281937657 815710275 660459791 932125183 592366423 835734663 652662469 864059543 627296336 658732567 164172509 745781741 528000665 544333683 891758279 970415933 198812668 396292973 310720126 838693052 322751953 680279347 699994016 743492675 389543695 443268071 604636980 846067141 678757927 802796887 602634135 713391508 412863815 876330997 535307741 824249604 453052929 847017885 791616316 814662443 325490927 873785151 795195029 867419988 506801999 721385752 264037737 735380271 309390450 618233359 365762619 923354450 149634013 900866995 760536111 814006130 281964930 621515354 80348122 325870271 102457502 355805564 314295296 934606900 702434741 851919070 911854036 962429866 434312518 457242856 485343732 891463591 273888383 352811326 566083239 752754282 816828776 872900639 312543276 427698557 171857413 354227517 214101699 382497773 925776917 972768339 553129116 898478834 256662424 425496663 927150808 928392750 791937411 914058384 730702200 845543941 166053680 329936893 272158541 924514051 760503853 923380673 88307451 554143941 577306783 909349711 906796093 955665911 861120638 966526114 555609703 647232747 799474983 823928182 312354620 822801980 204567901 813158257 148950541 943148190 910156317 990004318 162207010 493662714 576513784 654105712 518909948 849763605 650252021 958854611 328643132 472629090 474572930 777486543 193025664 474393548 211888388 632113407 557521470 812542302 314261488 766242394 583133973 705650826 729334368 738874411 748619782 973277446 223121712 533441902 289092514 587785144 524108139 918791298 979255220 999825775 968208127 990886385 841454822 847358057 648146697 944361377 154849317 463653572 745615128 942094357 889505940 922582362 520206028 577314622 502027417 595515678 205250412 478624774 343720958 519332635 224590123 570608637 153693303 530242486 160042072 428351725 87952771 906855226 427540827 533501448 813573010 984811136 408453341 986097141 761487055 796822752 560147186 792331178 349496063 679857993 862934055 973623915 403423437 599590739 205788045 611087892 965825364 970120352 721956458 884992036 115594177 410814066 644327252 957919431 436505077 884606431 598293068 862122512 989751459 999134883 368856469 611807532 822305939 847291158 38878621 97312752 829023233 913730393 533316317 558164166 833219419 925716976 209477461 777639951 497330469 726302930 651906462 759082140 831653669 967810607 145539070 950730488 289373660 537188103 432373360 956394110 459321043 905333911 857092206 931519181 829518176 937384073 585930601 860120546 865934175 957026275 157864788 538964444 93418333 973811457 800559500 975018024 168898314 557029904 445888584 822461407 540876775 918332784 512534737 995276212 152292122 357258955 467145042 938576220 128710563 862843952 902089697 956758952 868295984 880449740 948879215 960985533 273911299 682742111 345247683 627490604 169082879 847270422 237949506 556926877 293888042 945952368 522139130 599943410 484717260 964719777 796779792 947252811 22414476 173526435 894016533 933400417 774509595 952848181 742193921 780574543 398286927 729848498 46483598 578680515 22101193 789041935 500775102 771593918 601764803 952197571 613679484 687686922 821728133 890085772 285446209 578745344 150225607 831095678 214358801 278696851 377295515 430218539 934781231 959815625 346814542 921536421 805068400 808563231 80734953 250428747 217727367 649593733 131702413 475622637 205494140 784321556 252831687 686060721 454903203 943212518 958246606 999955399 899347312 949396474 66330410 605339643 865671669 964815251 503008917 623967193 893547954 925433790 895419674 910814751 63477761 160096068 347695890 682314052 563904768 942562391 471017312 941851807 780713614 953827623 926177847 927897985 955095814 985759833 982867732 988737840 912043456 937217277 620631600 946582562 661482108 985192956 728791821 812520278 379359805 956781530 368112915 488060023 946360919 963315383 379576569 547261122 245772976 815812475 311834391 599017988 73206014 993775358 720992304 952461972 324620157 639548501 467702032 583491658 664044223 733928565 912836722 990167794 114640478 832663857 741413056 944924704 988873868 997225619 786064805 955601921 116763192 606538513 674304651 940345947 289736239 864785712 559813768 769128409 10235941 898040363 478779807 931882882 261139611 553406891 792755310 901463947 50950662 322357906 725650870 842659115 265471868 638303642 519668166 862755612 754035770 824825492 274364691 429043868 103841536 533761549 740607048 845201944 70360718 113855812 637172750 744939671 596331812 741828485 663425608 829549860 784080160 840074320 382037332 411954206 990974811 994779321 407821514 808876225 551522463 962159303 969520434 970108313 720172243 730437793 109147311 619669823 418202519 891113694 317505332 329765833 590855801 751750309 864653895 937982296 57235835 600192176 994720339 997600846 94657826 615659473 18194682 105941984 47271335 714657401 289442148 797454683 535197684 811434442 909479191 964683440 204827061 941445332 855801058 977381863 544440411 716158342 187779794 514338801 986070189 997004770 255493233 339054382 610763980 700115770 468627248 973685896 867353587 901675840 398796938 907468726 514390723 563312559 877719290 908023507 200265369 306180757 931564396 976490219 532537369 719328652 163861901 274296554 115243552 133375280 848166038 913444483 646849793 880879463 604184552 782907462 613928899 890955024 62044872 342557569 581585199 582806638 692608516 777029085 138701808 551808425 122064211 405167907 219012393 630602874 273550793 839968055 305600986 578072887 171707901 899958843 111846953 608606950 135883828 732890600 715906485 726897558 509409594 769511392 64869081 360460789 302800994 495832501 462468 298785657 17203394 328241504 324401719 793353676 362085873 702243195 572012717 942635511 831251977 984941896 909192285 937645740 200929444 856209973 989586424 998934862 299410563 791350379 681158144 862280949 538839778 580684969 933126933 947436666 460678029 603230789 388731398 442194473 300957916 697344707 262507150 666045938 363831243 721597867 646458170 799101635 380910328 502969741 122800345 356078559 826107502 995701940 303721579 524793691 528482382 952353306 57818199 901762823 842746671 908350314 322841232 362037731 714680310 997804851 262582636 646451458 100253606 429448933 940375352 980101288 291130775 358237554 698714809 936378753 47817008 657342698 580737241 925563240 647390713 951965698 398272545 551157893 240069417 345372983 872320343 989518737 401742335 836934732 129307049 660033562 928091858 967841104 461544953 522466691 488771832 937403037 455940508 718511836 553593191 719449438 336647200 701987665 530347253 679394093 841621022 969716598 600043469 898339999 215648118 319429061 981524824 997864378 320320412 420675088 878696320 986492952 14973903 207509100 18810934 626644950 853977265 888950131 214955018 589947996 733207500 947534848 820868614 909711792 174227441 657588410 408526132 476627640 689178457 955802730 784224532 928110264 474935984 721971134 677385143 679248658 895704349 951493831 932500035 932705390 604255920 856237179 834524012 978593887 556838941 706428074 990078824 995789361 449637532 886916085 936563515 938534957 905304054 952475676 220224014 916544048 125021713 949008598 836855485 951769466 463729898 536998493 564282236 578996642 832666750 976258304 19113572 429961566 889344863 896009079 110982363 936121821 996840377 998935830 921915339 999376318 862036474 914400291 630328873 813670997 348275525 978521794 545023852 676286423 418929222 598610911 660421549 909667146 272471618 378615033 777766132 944255217 174925121 624367102 507017672 670275905 477737493 573621060 867597022 867864850 766816229 817138049 633997221 769710211 571607405 893527621 27906399 820879181 445265656 464449371 200900021 276975911 479550913 897950179 448955330 542393637 949237095 954230399 985226739 986468226 411991520 831084940 976851501 994413347 971822199 979182201 730122124 945747619 420890419 774971609 235649396 274741773 964042181 991169350 761348926 824988188 837809614 947034447 997050098 999393396 978576109 989333009 916963577 958966853 631134007 999220324 125108797 952166209 541665529 850848934 522536117 702650685 124135126 841260831 111940184 214907147 722610884 828262295 88615551 557329491 712525774 740900492 425813577 853293552 237090404 342078629 547714677 754842099 527608889 578518356 607138569 866890757 470077393 848636376 681035102 885795501 849157390 979003546 629186276 982363525 565362476 883154849 273716575 850205546 780497345 939533953 354668111 402330811 883010627 899519976 780127980 801123061 158810373 603101316 648563557 705942813 670591373 993543927 993506785 995621994 243479102 890444221 759824344 867038574 204186216 698333468 690456029 711599515 901715872 958788648 459760928 978956654 776836610 948427383 335442809 795802619 650503083 977502606 856342621 886410478 270777565 802901908 681291323 891848576 228330250 565623623 983225040 990449434 26699902 676365292 13553012 983221014 378902159 514726464 793014109 800234727 431954795 886166046 838401836 917055744 156575442 470028982 644719518 955150779 422329105 702395608 402047249 427525605 853123929 931707828 333061826 802123819 386661730 768752567 827321315 973897300 826208861 829108242 425521105 845734859 340406579 688839834 966335439 988437132 168424675 931260054 729331027 929760344 969379097 982366582 721567251 969499647 454948326 485103213 938424510 959749902 466454346 793418217 842730514 862349406 580710545 591937848 738240481 749398930 857737023 953533875 866402972 935283502 198243417 363449703 995919129 999198444 333735587 930299206 621412241 940560370 253389409 465405498 457105972 980658270 46897144 976625408 958578515 990711177 320125450 484754184 897036954 939696619 776491904 781698807 364455927 423634086 553675817 874350272 79874321 848923405 597519292 746213982 193834830 608953924 620638240 810082098 143695412 646276191 337589878 736131345 854555715 867609114 297772013 507560280 502063398 691796076 700626572 745457107 842321310 867399886 186831120 699152854 717454746 878299769 646086875 752029892 356097872 975005847 534747101 986112462 278733518 396944116 662642705 691739599 106982649 973882879 429136756 495772843 729467156 831324168 673441354 975532007 411336618 968536225 913464847 945765266 299886999 583894722 537674166 933353168 133250027 247626943 948705 956024507 950170606 988252280 229806564 869752651 458194693 475404139 69700038 127418902 895546596 928526851 805538844 901913105 31856292 892878563 639844466 822131592 179505376 907623494 613890735 658186079 197735933 751256256 159702797 253470559 130602489 904030067 126844380 556245065 26145108 474881999 880043881 906101897 384605155 489148765 728284996 958615177 370202651 919120075 558902397 865986263 879031819 946153151 836412296 875128985 271882066 463085600 146311453 344218803 391721389 848398100 391609605 726641588 430042954 694597798 891280333 892869482 773424177 910936234 986232049 989556702 411923258 815032586 88365488 940998411 794768879 845667404 327221612 769069172 669441378 724498471 132539811 629236966 155360418 295562570 565559453 772441730 873363622 874215326 193324697 422117781 750159531 888999952 225918291 630398439 212354527 807029840 877894279 880241004 916476234 916716185 936011688 942679106 679702263 923749975 835271980 962271368 402379416 564588257 145743120 424152713 970416892 981651809 489345455 492516480 566457671 849746572 41060994 133197673 251647139 752859265 196022494 523719575 702903457 812856005 948939264 984492249 846047664 969952470 772518190 923803425 5023323 251525715 860659785 986422073 778298635 904158734 713545027 981546394 10937031 497496248 954169230 998189111 290791642 568819498 109226013 197629319 324671984 779229497 592487 811133385 292684350 685477883 430064020 715728626 196920516 579619656 445483356 864821367 518066455 892494721 965735432 985500863 740512030 906527690 389769781 811502911 312703535 990428543 200653472 503878019 173097236 499036139 883336330 913305471 179165351 263591633 583961108 744514686 343047047 889937239 290960218 848510859 40719670 201107010 831306708 866277955 690150583 981080004 650278336 910705978 322082183 821986294 419819798 450438009 19205881 59984330 350893239 924010524 824739424 827274619 25672349 410186637 579465102 883446434 537598845 619283438 640527877 896972517 650367351 964965690 368749069 881098215 122658885 128065109 518328517 542820103 393089409 942151437 446636760 498602072 502720206 916597494 779419122 851733970 925872987 991385455 54088678 238722635 947189162 973458837 412343565 626154427 820199101 898761681 628028291 942399221 104170377 320278929 181858797 977880858 688234181 876145738 411556434 666804319 731204024 788393162 543028517 906822799 182599044 690237376 217133651 862504551 766722847 781569751 307663112 648943903 361947478 991222980 93057558 572491481 804038903 926129785 589367403 988178748 867381120 888089769 53521207 346019990 587517306 641248381 333397175 560155441 600797126 814759079 246681506 616943866 571757519 787702257 299035555 545623962 708413910 877056788 380121010 586762966 319707286 400317713 129831327 782780605 186517126 222563575 964935371 969228663 531064057 911372097 909300115 936421114 508622538 998457744 840333805 896975117 832643517 891522397 448517151 757024938 35850706 917229191 760306033 801840046 969480484 990262205 538769912 916726915 321965154 480889171 11138987 366349905 669289444 920311036 217999193 722316882 756300863 803082332 902994657 976376519 812754607 819502454 356084260 906469090 127918493 447025909 112209897 378608582 580050815 852627892 631011258 759845504 760897728 937993882 483228394 591492463 884399170 901239274 837142834 963818047 173395062 316729183 599529607 933894978 224652553 715026863 210167226 437346975 787749966 916634387 720336383 918374275 526437471 774703337 981032734 988508020 754247134 808822450 606370636 636747498 194492535 561360935 380666929 419016902 405599318 707397525 760243255 905434602 364219939 989055216 432834655 497324526 767639660 956803541 943017194 956207007 223422430 792908957 715281053 989514360 832522768 961623939 999125935 999321125 561075782 612281114 223603218 476263806 678878757 845773902 148809829 214684011 152584220 469495802 140197890 537852255 534630983 687628522 694748723 784702728 639889054 736088280 720403071 913483346 269011288 929033437 682151457 917027382 42196146 118489085 128580798 162686966 273511652 404155194 823758238 992123536 643535824 785169000 720634400 941301118 938244099 968143220 438546262 729369883 491838973 901265523 116865539 230294368 60845058 249576446 810165385 905455087 6865014 890335998 652169486 753759492 882565229 925412023 994214825 994633059 637970439 950107646 289488457 372171092 366144111 825791047 220341376 330525555 951482702 998769850 147764515 421177323 177117730 596325717 753548861 860850451 866449312 972930826 597625112 680979326 96361051 219147111 630160002 783440599 932250420 990974229 863998331 988646842 194042820 601399854 606227475 746672873 542182109 653073831 220335039 459610756 852890601 861588588 13000915 823641667 792871032 899657984 37424654 900717671 842404947 908602993 32753699 139862877 780011273 911589669 696653785 908216661 544896354 767027796 286312076 682329614 80352973 689295331 147904224 529466324 78300245 734340704 712771069 781690752 392189236 829437706 22119783 469921415 766306117 922742867 881034575 991134518 758091245 936538401 7540760 408858412 914082106 935195511 226227763 466064968 587404199 787625262 897605800 916148485 225101818 293309272 364596586 532996053 547441052 873212710 965972964 968034024 943403803 957120260 901909078 985179933 399503986 598642670 89272869 921034203 363481907 781169792 49954408 65771252 668834722 968489357 618090329 901779341 211557121 715238761 882071629 977551176 170565569 919380312 226407611 381475408 824587904 832460416 233522101 240591035 960367170 975708560 653032185 916646221 598697454 898739180 454817558 612971673 44846048 242748930 23500722 568068027 127709113 254085251 326502652 593223419 363947292 482838994 932426418 956091900 942382725 975825652 164868521 354415903 650114650 782027833 676061315 725965875 678952378 835578796 546937648 641588518 755663880 971110568 666732111 836121067 669123377 921408650 832782584 864948828 952805396 985284422 90142983 974069315 403476453 873101680 700060673 894102265 338715508 938887921 241096556 448789932 658065452 961023865 904294597 996612790 297879408 544425793 227076736 396784715 141386180 498232870 69114549 978852273 553813307 878298994 627355907 823320867 899417777 972414645 740416843 923907590 373258421 434574315 154178284 291039390 921503186 938543777 505228920 721867310 876269413 916807759 955119642 999156231 810663769 811926222 631075141 674703092 758028626 971154947 980096948 980665119 989074178 995093061 923029772 959857419 285859482 410403407 36327578 177286415 960406484 960451758 344285 125801569 19079143 840060182 977851357 993494974 840908496 937160202 988917656 996696363 181861607 910422003 777593711 935086593 36198520 328997674 24439592 545105510 374907086 571878294 935144762 990920549 70747266 417250604 974436222 982845130 18346222 243424507 784998337 916788142 124813712 991658918 847418450 922044986 371682078 849291084 690551657 775069092 596119796 917095578 545827590 730178612 228675991 728115072 721909404 866348685 9102169 699216755 207617887 477263337 105097040 207794724 958593565 967533317 943922557 949452077 675097263 814199943 425155478 512287469 473597588 770778916 699540095 945177104 125426106 444410950 644137653 655702604 706391839 939804637 3800086 605719698 511645390 819993673 482258552 756813967 606003057 662164429 60280224 61096321 581928885 783915462 585568006 703263200 454515679 931447487 559434749 786762917 74640702 626815387 69617168 304779257 932836348 969263024 600946917 625942356 933906559 988683718 462461326 683376789 690315355 952800897 796487209 839642922 63848184 763753140 267216610 750656579 664074146 799196826 392476413 677693189 127916854 445136236 748384025 759592152 960003933 966548775 723474273 884701818 736497351 974456733 143599860 977552130 323804137 399699111 760787167 915006369 153956858 831222772 234773535 647512086 792194573 838609183 464492824 757344924 771128800 842530393 345752496 858166648 204154231 320932269 190202196 457085045 222364099 965346657 812227459 944018077 183013937 672893359 471705877 682827924 854180552 854595216 751240166 796760854 184306948 735953044 758121026 831636908 101185924 904649466 258499603 372506563 45862888 233674015 797336735 833441516 191069449 318871836 522752250 822453486 563679848 664195921 520273144 795840205 276176866 673688715 58641020 366857859 844876424 890616572 688409730 967604669 823678524 840680297 720491709 729754946 467227252 697347420 508575371 993324960 810009433 952311904 905844150 942093221 606334249 744081794 991008633 998679731 900699533 992014703 668492738 818617452 436758448 754602666 403743534 613186424 119600095 933108031 431151348 909447845 151567836 718721109 786017100 854950728 384687545 513269379 343517842 647161607 680594405 724810198 135728391 702375214 429240583 894158819 921764247 977310148 126520569 885141774 197416017 567248908 144494355 515211208 931072376 988351912 275098579 309041790 982796047 983885057 319011283 754543940 968245714 995909232 311632657 772965745 324005527 525616580 899022750 941008184 797208343 951556542 23120919 245982245 398015132 637107825 950916915 955570229 188994383 522876162 857709165 922515871 372416576 428412088 743167147 953789202 520587430 795665015 840276320 930737189 998017653 999963464 592127262 683673788 371192956 485400634 42201533 916584362 776710267 828975706 613980264 946148944 873736913 976841717 158686018 558225099 52786428 70967782 734672551 894166023 207840258 386955409 78999983 631075091 965949573 981612380 513251158 929559873 433118872 668360643 929173047 986986263 130026571 743412494 583718290 635839173 106598508 229040586 633626792 971644040 128790208 243456897 646889705 819925016 826660838 881929586 895740000 989897520 503636787 807904528 641464352 659315339 450577954 892757003 453848679 707139716 358391736 731518964 458757478 502139888 230376748 766123946 652050068 971981910 336995079 455961150 325954647 665008640 845801343 926113248 382127689 657754051 242194581 419984402 946334849 985204403 802851473 918425348 801075548 801863582 19126995 229689568 371562524 783211625 906993795 978972846 72236687 772667081 578112069 788102884 181267168 856592666 593055297 628150732 786098046 806312066 481827390 997838794 567143998 819404230 566628700 970750240 122857404 714528243 146027465 389830632 764475035 959398766 144124244 585272867 903395585 989519393 903488113 932449855 423314325 818625758 876420401 885742141 212400443 618461584 791020833 873395576 236360205 973271738 230348110 518765136 624952684 944543914 423817950 994566821 40136122 194814389 262232923 429566553 445837710 817046375 646702000 857346754 217020157 337609257 727614115 941331812 150523979 436566308 57916055 531748051 739721156 794653842 395710421 693092516 773356409 904702197 89270268 359451837 401932015 919118092 930925688 966971291 690638089 904948647 305033620 859052704 823992563 959270634 335618296 949867712 703206016 763223761 31719094 927962778 569367102 600773438 864633199 954062594 324148108 879746490 744042792 945508480 404110354 417889142 225685346 597717530 46346826 760302547 540642823 648444698 333971776 720666244 306593785 739587590 425036168 466781618 214943917 898478350 663507177 717218457 914527409 977279278 316748491 436006737 327168061 928457285 868772969 989535675 840190077 975195130 530047487 885494944 631200656 846787634 376298448 801360092 741332818 822442386 403211110 552288762 282371545 357744331 927563770 952251834 764101297 952135704 76094287 78096410 953995440 977361572 659605438 973172075 826042272 940171950 978711480 979851948 356984177 821348396 35770494 901273506 266285808 847361808 820226817 939904013 984111683 992874626 901979080 958494945 395037690 454896636 676380282 810053156 174182985 963998628 837052621 881816426 588010173 956075538 969354217 980558123 37520697 858287518 965879988 978386437 708317747 980649560 30672796 169085084 309141544 376690984 816574820 995482045 37580557 917284889 506937199 577272179 135431658 164280370 620200390 738375835 584856879 799173367 577702458 725287260 128094088 469900182 206003841 753668706 646909632 727976555 182909161 889559951 131455088 526983018 644989951 794441162 490371055 995415374 616739160 774438910 116220174 373093644 532886269 923768228 742049091 918482017 211695320 723391438 416785402 715147499 918185933 976273854 369328891 516015128 639605438 746692476 17689264 907466790 283017341 541639349 977005593 991994866 273529208 435793442 919146588 974054561 851949768 931205679 891085046 988186866 945670825 985948447 145526517 560761802 711280610 827524292 894254454 915222090 887327350 975398777 697753424 834429130 83004045 538685159 330198536 707974177 621544991 857210809 198380569 466512633 259064775 887407615 346083359 818387708 943720235 969763157 934810757 977033687 862224639 937290417 250066335 852736124 746701335 936076103 888839252 904861137 711860244 728733876 750326251 997920560 384514318 674544543 275138119 633431367 605221291 769832520 439480139 854744479 972501712 985931622 702817220 985803983 637668832 936607383 177444174 917511802 953262190 961483457 932738898 948436636 365849654 676116599 83064835 977989798 75687525 579564112 868762215 933277012 181280458 721293306 144271848 731437512 436637708 958759889 66315776 561770868 892206160 940276652 526158497 862937286 590539513 877173776 137725742 163480770 385144813 426593581 681193629 991568192 837116826 996374333 548634705 594984793 238925648 355871015 170073242 255674191 431249919 783110613 439533193 742713130 798880419 970668967 493302760 847340862 55064110 572799721 521279827 550496883 578904957 916837178 841859256 997791854 935996968 991126450 652019520 765426235 912027731 935787247 653984799 686198601 40155036 463378412 365374460 422185528 864487585 884778849 258111798 738467551 138254856 320526118 609986910 811406168 694308288 963434346 992421438 996663547 612219242 743560321 123921779 733084681 748326483 924561204 183977238 755352045 252460394 439180383 446581799 448553920 730748358 978120270 381625131 931023529 503846773 706913972 974228979 991346071 282581085 774711154 521479451 648521275 941135946 977836305 644265188 750869706 848750792 961610432 737838256 868039396 224795928 504139300 804460424 865314614 556216966 923624630 288966709 456241916 414118493 799280855 599841594 654422671 808187715 919660936 437411859 751798415 838407695 904716172 527298748 614163299 535416647 969360872 549960008 789180458 394892503 409776947 876838084 912893709 934791620 947480528 809802195 854051158 688620297 739249290 863473065 922088038 904774704 939559466 614038286 877612120 274719398 500528796 726453940 857022020 31469199 45507939 347930535 639322503 14927586 71490347 772538976 872964457 194122182 566383458 903563519 999680541 940779343 988701932 793367350 948302662 11171120 425456181 503918898 941581378 573167937 702909995 7552764 978827804 80697661 739493833 547193282 751051637 938120286 977608322 235703201 615847609 13509003 826138629 826995382 955455575 769863767 847361160 811100292 828270346 974434134 979678778 682999333 949493686 180438994 644823078 770681840 946863149 370465819 554503255 598581785 740003924 943339020 983107936 209389026 235957851 39687305 159254930 872115006 948061352 297594351 464161382 840226730 970274531 576811834 639494245 699404583 784703646 68800699 305544821 402988820 449021785 12210581 267268350 523284454 578484730 712991879 925613720 621823771 849574500 69800891 660834496 708532687 776828368 556006840 729568495 245022650 245933093 820102761 847303350 284611210 834128996 412094900 459817589 738650586 902425080 430889910 488399146 724871595 847871748 503593969 665265950 737503437 742556632 434984641 907475450 968382810 968807567 70904367 393316429 137165885 479622711 362831309 457944154 770343090 838990956 941660167 952937588 713368131 837909095 826273002 957357206 628109989 711614460 592623644 893725292 179118331 362058250 247175759 505765702 272202657 835730825 477574257 767051710 956639381 967927394 284154622 799297545 820371792 932849503 334187821 463941944 505001283 969654870 75071531 916890686 413044521 989949757 367413571 473787360 582694647 657123540 520908867 575278663 6890054 110553144 288189634 425964181 938403225 993482961 306925142 595438218 126099877 623713193 658786857 903194424 782927689 829405540 891088163 898211562 144086423 512444574 60436461 811542539 368765351 477183117 815137350 917498045 517787826 633698804 615425151 961155452 709295625 913485316 752565217 888349821 668681277 972979571 960460549 968442184 148194891 566502263 588394366 956781735 174925063 608849925 810575017 865947844 843288250 920067001 965975054 972262258 237277750 940253689 110238905 339281883 328097913 487562736 292554404 756853407 811432232 830635077 630401872 980849246 715341332 991056134 420136187 602478363 827396766 890261708 620856837 942958265 900524264 959514414 38437619 212481236 393272668 521058170 256223902 745710658 183033186 560760272 160575946 318479430 204212780 336667726 268531255 711878992 727710081 795456888 120925088 747603632 607137115 914569720 221406806 223152871 127439714 956370162 60318014 559717091 989986138 993320133 856385510 930608492 69256086 781529959 664005834 833333938 527937128 568556236 260799290 815450450 766383615 860761785 380438725 843630812 231709722 998362215 296054529 922480411 940149583 963888262 754972539 827355661 907710886 966526473 666335439 861336721 73815666 701240852 103371427 517009180 691423790 774917068 89033535 651184383 568893183 791945961 872440884 874809451 170832732 301122311 503885268 508134459 863564248 887758690 219428394 972599473 345791653 924367936 931457060 978823747 557807039 787695250 967487918 997461505 808128746 883170656 711967913 882374534 16796568 19784448 321141278 730629023 825590398 885707925 142535977 901619164 324389851 400257108 909586021 956827271 340896642 433074094 410676594 964822279 187618684 779412405 810942349 967480040 54419978 318982541 567399708 896813808 646065552 747686213 28039086 883740599 573951406 757894088 751659346 828707755 703710183 996583883 882173986 994594811 76873471 583971116 151563254 257231167 784719566 793761473 965827681 979632967 593611955 606336104 137585935 621276450 398752880 670266106 520292394 604348852 938082058 981912637 509351981 723530943 303809739 878072617 385739719 739032634 567172230 757821224 564036230 874098459 417710800 494904811 405312975 899749393 277984578 480705120 591767616 758981473 224698006 591292306 542726916 906757948 956465043 974189394 257880847 833632129 442710553 982241417 237521065 700816320 827760542 918688015 711570484 967355712 201754320 780231374 463248814 745514349 217267629 828403521 144513413 894228613 978786020 993704544 468625559 726136244 909122063 979006267 944190871 967506827 105599207 712515719 21438534 687962986 347452219 678323629 994349124 997371402 471177128 776198889 535482341 847561711 654130415 718329510 362098901 516044551 133612362 821134760 857000262 992144282 778603954 947115890 20597358 452929853 636629640 756937258 233629388 293768410 116863250 155702127 983905649 996452622 555913543 631546040 701048277 850917837 36631828 358346558 409918249 417431239 793680512 926446323 134813096 570786967 223906299 953941868 247437105 432237981 800611970 989700941 138622789 382422714 977187283 997070527 969069577 983532132 360422233 845521706 669318162 944583584 592409267 954520185 340371995 760288462 439169889 447978943 767916782 869735881 222783353 423129529 48795573 145933738 113175644 733286091 702895269 811204566 495897460 793060338 521562542 845567618 595394373 954321585 183303809 791763554 727662732 811120602 613402161 621334756 761218413 788927911 437986258 932302078 827871400 963109303 256672668 916943600 368784057 937696064 808989471 843503699 639456840 759805522 783409190 831616770 172670527 238329968 76901479 177897843 28433188 767962184 343261812 744863628 700844245 713332988 993219276 993830742 799557741 958612374 557745392 752307267 891112338 966352155 656087358 922049865 821052929 849579119 602939197 688397960 604695238 681371401 610783594 753369972 409720160 747207953 510085686 583258866 76822312 742954408 511664517 962597152 129357572 930777081 909100383 939247521 392521895 685251056 757176919 783107335 259007805 929187741 341244268 830052522 815524004 828464408 924073241 980659946 542052046 948204131 455149847 588109947 174583310 876469817 629112808 807061010 200862170 999322347 668123815 754426042 811397082 942880450 889722724 990337153 647531908 859694690 730988791 959078887 486144740 521374399 874803759 998370158 707935084 939685668 164003586 687361403 794557330 886107019 331785305 385174735 413756667 678378410 128450074 775231827 618631706 755042877 26997053 169519278 630257210 708589167 950987043 982838675 629498086 787732522 726933525 789546929 581364655 895457282 889682931 913498506 494315361 891175949 56205558 947367266 182858320 847711775 882235413 922969049 173645396 911316717 167679591 767364627 949063545 959542786 425620169 694281328 489869839 531913866 499786815 857749167 17919128 815266209 681980912 914422382 578256323 796615963 946782179 952933193 440137759 968787000 242964660 319573064 369154918 842682223 395565672 617536319 786716111 946850987 756492250 889382447 717010933 872241564 955068806 961357246 330530041 863152847 946238993 996290443 577775435 604893354 486576406 500981173 577816032 848933198 102209417 848214119 200919179 567878974 149761936 638878437 84913153 557947311 131947528 140236907 287306629 807681533 874843459 975163140 554897953 560204344 59390172 980820550 492306497 913651347 171633252 890823092 428758211 690122977 180756114 499495549 357002812 972263057 429278427 477340748 743614086 828646044 17704488 562259768 158566951 960045804 412944959 966114978 411119255 893073247 50517535 696941828 249880616 870334139 384942950 901528121 236593042 311664494 577186235 864687648 220432764 813459205 745697894 979262067 469076207 853568477 140508772 476277637 458615948 641706670 954440296 955388348 709333356 713895632 755327181 998395172 997979971 998441979 712481010 923550230 259442833 260338454 307694079 805830025 165431065 898732858 217646261 636165755 658307661 736403103 528662227 804815191 81352206 890803075 223109460 610532841 222264772 232220357 521598891 803339997 484219714 692626856 378907470 505225522 282659526 862846573 196434108 934569685 463436196 962490783 307992441 320594102 44908576 584020813 34255089 813293110 651156792 952100918 924049488 991967786 319891868 530585168 66972965 632183377 488271002 684370726 611900557 727122768 582238400 598591901 36082624 713526119 240119524 457787671 732177942 850988522 414927425 477608295 392277859 863332422 119568558 359624157 148258759 644841827 361963125 719400659 16170961 43968178 720213893 729361833 175859099 441363994 855035508 888281763 613042567 969156647 249913767 750823903 945523806 969446007 244828156 961265541 536668482 605050973 279268963 821689669 47977400 612036189 899681504 921910297 304661279 573649713 271149919 963846477 160390025 358148676 62868791 651799779 339424692 885679058 785969489 991374796 892873854 916982193 982950389 999602519 658673697 992572024 99463025 274409766 30909982 491982068 639520879 939774985 102973737 356505664 599059929 601134288 886126499 912273779 993935514 994939643 8707080 323335244 93509753 821857823 306146784 936768516 420829063 874785399 61784060 900564998 277526014 606768982 750799591 888117560 201229376 618800240 306960618 417374163 167336352 236766007 993475700 995726231 603947466 847840654 841076726 982298976 230665148 582855348 738497079 952989238 364173155 407298347 475789180 832081869 822757617 960460796 234772628 892277576 261831300 563250262 77483171 458941898 246085271 770519373 73854125 922502684 761459156 930950898 341743956 822508741 498331728 917101053 650471604 699041938 709302726 867662175 32750270 322500372 199179703 794445198 304067720 565396101 549240556 890082233 957316213 966260721 575896230 875847842 349174449 394734454 110464002 575889833 238732024 858660130 765867990 810173641 180083303 748644695 765653641 778389093 427625991 575932266 38491234 579189957 876691602 972269408 390813359 832893523 982375132 984108839 175882034 956218233 905936834 992634739 15838128 973481626 449686585 796842169 912763583 920548481 179563062 460478542 161834782 919682750 920298633 995038207 521072948 913067435 74771862 707689937 416014200 690574377 454099602 617550080 256286699 717988858 889530392 940317057 808785990 838261462 664587941 842802693 509936907 633907347 40317828 736968040 17362764 562495509 249507333 815256885 256832209 885900180 376029906 813885871 958743386 972937546 28007821 52426002 583812132 778674537 437285399 794060083 161804831 604146124 311962885 763220083 264235083 836075329 407639755 867695975 126529405 793776003 922291661 961350637 75764443 926570882 783616854 838747099 121014712 917724478 214119652 586786058 594676054 859566428 363405836 827969328 476955198 898595484 525700113 704538932 248168817 790106447 956323491 988637570 421222894 448653053 402136931 870517026 717018175 957240368 848208187 965352385 56897260 739710307 750716195 944005326 239671717 969535814 66816656 204677791 668004308 980981814 3696861 231984059 800070814 936557703 110593214 725790279 395236727 758795466 764110160 773028321 431356459 723539376 460705758 921987113 253183143 516612748 749617621 976316961 92178335 214263428 791455921 818634884 509891462 634412428 778284432 865516974 653336299 804318468 442128785 962955577 708919325 822482420 888768958 951349371 258988792 858002032 399717726 892915085 435397142 517343300 821290004 970408392 940249028 941755373 554687459 595803566 576942455 794285119 601284528 650855937 2868793 800835799 384234127 639719746 907182157 929086556 867336513 995982402 535470433 723678196 534585450 549545486 858890869 994206596 676574486 964584013 316262872 338439438 632094341 923458339 227785544 704538730 884112208 975176340 19919312 472233066 538492418 621864269 915369656 922830481 658425300 983966641 566636589 810381179 186744322 509487974 554359602 876620287 706584860 840491833 503819477 608373679 697929688 797546202 603514422 863551599 2830863 895125530 586792703 739330042 802088377 926129354 86672918 251111148 628577175 968996881 844745073 919244320 609046927 983024266 67296273 311196124 241460213 789502511 193285841 780710456 547603203 904485499 251981833 939176431 388289899 804135288 974032637 989137337 642466263 695593548 991837174 995414742 710317881 890474573 179814508 776787952 304408839 452569487 274549425 833889814 916691005 930167557 43357801 625810745 436707148 880717821 318862608 386008328 136466471 200781785 953939618 987851129 852151024 916540409 302994233 755380570 273403798 573187151 291879488 574953348 486637643 775032910 271134741 504080437 810984124 902510485 452282510 839603986 203238604 254909077 125426589 848198038 397351123 828283156 521454042 957012109 559363876 908434005 774508891 796736096 306842474 864283375 627040633 962901483 396695353 669915518 163038119 219908007 95935447 553714800 833385804 930683463 914803042 940341504 617953387 926649838 297676842 463811218 92095298 906085922 802814271 948547678 311681706 618310055 734348111 795592882 996593600 998485001 88254327 732044531 369021530 884136520 985999518 996936040 189899015 660670562 950511999 960434623 869722874 988613181 97198111 909887327 330804824 532907593 795090052 914680652 152281921 546119543 116790362 904816872 727471829 767066818 340873689 655487598 491774252 624617248 67546967 386477828 65359605 845684190 954467802 959260898 726747647 887169478 608569907 614880370 912109788 954332521 432232382 465936698 246864849 348427722 341970802 740799697 307928784 462651918 205640784 395379015 239519123 323712519 924466550 933730911 166701994 762266189 445394869 778247349 147610924 154148882 945241358 966799996 110738427 487158605 547885429 688220406 57065895 674956660 333758103 483947789 357454658 710490110 221622911 226431773 891544805 991541437 204464940 236203798 681195912 719123512 993198027 995405609 938363038 951175032 880957429 886678086 657637950 793323544 10247059 927060500 513054914 832422432 625774653 706474198 39400584 462346032 525450421 603548238 805485228 921968184 298418391 685457875 359753813 661705236 656004333 896338350 508154117 866084866 846861308 873008910 483990920 644317448 630324637 655077097 757927882 799477828 224499725 730682230 847551504 926792126 720467771 838922370 762080853 963456206 161560680 555054554 756590706 962440759 917268721 963257998 702636100 790726388 804320679 987538637 199857131 546395609 947295872 967411002 539895401 837367409 842544654 948355966 772598822 779657994 241357370 862903798 249031281 345993783 227213197 228285581 192281946 294513432 978156355 989900293 492844905 897480652 14967419 539124505 26918997 356879813 91597088 726974193 429102404 707741175 989870522 999077376 738594927 759709825 602143214 716209605 299212775 824718890 240650102 612013129 68723374 249810301 162064812 853767441 836355364 847273852 725358208 856965164 610859502 736930678 601523173 919944659 770146978 933508225 499614388 525076985 769118122 833341110 265506378 278507208 769935050 975798141 57422922 136779644 9709045 872711156 653218520 740231677 641290880 864733241 813461695 921896649 46175310 577374092 130269734 849907598 232894859 359886537 975295503 992143559 809270048 992734294 632111663 912947314 179350520 337139375 190191788 985404068 138928020 391698146 310486388 704155977 992091684 994585168 865556441 968632478 237490555 971604040 421586046 660879457 784831941 859778163 167863932 432966038 492574344 657472145 372825400 830525467 778946677 866898759 809350060 952126059 910983975 955769886 86067771 230653317 53777323 632042177 505242406 565872197 763485455 872605715 2706708 420862527 378642622 463796633 553799762 956352765 31941398 617329013 633968130 966096808 87250137 732647811 627781766 748869341 416838152 714622779 951144495 964328454 675385518 719282353 803060117 842672655 967593329 976238198 306814950 625853569 171025881 351508479 181888264 872386050 943879191 981138932 84639551 785786604 42147526 629714423 931258355 950633261 515121102 539019751 536660282 920015987 136345857 321384887 830516049 974387794 407140154 795349310 291902477 327688050 407573509 481030169 422887885 907577010 311867383 575631705 529099359 699274095 58856824 213866320 912487661 965392115 986860817 991206609 678650031 714543916 17570709 56059677 595150137 856202870 96922680 811741970 174789245 250475029 161871261 762850155 89846293 466104256 710581274 749069181 754688159 822553035 940412670 982499159 333719772 416231178 121393136 490478879 253038510 848310375 157378877 243228079 834405181 925385702 504693519 580804875 261686097 758529508 326392187 328723146 57504297 715385465 659632165 768531553 181690305 564380716 557933095 706409270 15256360 23001460 33778028 66588806 468739612 986130103 227304160 711613038 567302648 832068253 753084293 946080681 882252732 950716028 429496939 509333020 305507762 322074172 629507059 859791760 417124901 647495182 432912197 628312263 433274640 445679599 621022079 657094240 238360745 901373488 945597609 986176890 651760789 683203576 393376785 695041660 668371186 703489096 978447611 987449222 42162356 609816065 313135627 938752389 774187955 968117393 410629001 822398332 989815649 998415219 730751669 798875659 531380095 712097747 513630304 844238434 283634923 331104355 782354446 981448435 542281622 985105177 588983141 809986992 470001826 740877741 843084736 914049712 424693408 561429810 124021631 375463153 636549938 699297754 480212776 780815962 719299637 922297645 696266921 825562015 780067466 952756332 672712498 673700691 685401131 880599328 397215687 843078078 508594383 986343126 350000276 865342086 389812149 682571537 778212611 838235876 969648309 996322765 824470829 894593495 526014530 992880437 344749084 430359593 958143654 982191214 128995227 908611770 426206469 567602285 795514475 989384721 78698593 425638002 109100842 427108988 567395359 981410138 668420161 833181424 700075983 951046059 343403906 738540525 821072648 938419437 547984391 625702721 979139380 985878012 759543466 910151788 202898743 449481454 315972054 871761872 842584865 948959650 929450964 966785645 487248023 766334553 563334939 991923721 382366906 596314355 437072682 493209396 732805343 822271790 848351416 898034008 418954767 815126726 866955946 892829949 145706341 302989897 600798242 880303424 882757695 905032087 661938963 859184780 625602239 630527211 165641781 999676004 189330547 611957290 668502062 892260229 605854284 924292154 838670947 930986582 654100544 715326616 324129501 816609158 286670614 717981278 692149523 752432170 24611066 910024741 129343310 486277235 209140206 835454842 31532661 671945795 237340106 982333905 802643723 867320298 203817774 602763457 801032057 817458051 207936499 471013080 53667786 975208877 233641668 442832598 597207925 813746414 207777511 702720288 500180373 907437091 410953992 852888069 433292637 616798518 952000960 984120511 600360903 800856087 583750215 946231118 731326548 882831550 72899280 981700945 377448795 720019808 684118501 737986095 839382163 916680018 565306392 839619972 624003134 649568120 885154145 985359409 506912091 638447126 735116208 828987535 191403538 808532337 8496157 229338282 508875497 882826049 282403568 573878091 699881485 886439683 841557901 856148158 798664762 900546121 970412755 981038893 962463882 997167223 818085516 921140348 577611849 631824736 910822539 966025754 128699088 898575694 264866209 664225563 387955786 632327456 515428191 754877215 7665110 279073286 999826897 999960958 820287604 941322193 165255625 624348570 5976838 357574260 724795379 934103384 243318837 390994551 809685862 902010743 468409888 845458790 925224871 932754459 169029779 527854104 266507581 370370736 736714729 817880913 264319353 662347399 684975889 868340461 696073910 708878302 951624143 954240722 854565271 878315412 30528898 96046818 685357682 982720320 833344437 973240347 993239107 994643102 419644035 913892242 85773443 124986750 310415453 457069142 597467702 996538662 769170873 868227281 630696523 673958556 606024684 607909003 844416875 948738503 65559135 617471430 43472787 686056725 82029573 122164539 887809277 940937843 618250423 685928373 22095906 727902789 46203266 449621135 676801247 888744708 185414189 696701862 691011439 967687089 257685001 504079608 184517939 466267361 152191530 166890266 404620240 726620402 782691891 943946579 870843058 978422921 807410172 931096236 592517633 967784194 193039064 878368266 35112052 686134640 443403375 559554208 39449229 770571842 657467257 786812133 416418566 732746656 372709736 667742837 651513409 820358412 824768697 940278952 904377512 911885835 820833590 974225195 239864082 356267403 155984104 529113295 111302839 975496769 920990613 926097924 643823198 788004755 62651283 269498405 979391387 991242612 188054039 982705380 150010423 717210257 378618330 427512566 380769978 549957645 196314378 937920288 665306870 933701693 32334634 831359825 950046874 989714343 336747210 709464217 653041144 990486018 120941809 982511112 555298028 610293331 599511530 738150351 404077820 511499225 402650738 448362215 680339209 757493161 16021229 37304594 883324188 974367008 409535014 610264549 490821078 768832076 191532375 387260578 106859454 194773809 285801543 816735799 518917922 794559661 935909220 986072208 95782692 265014154 592772064 782446001 421304724 435717678 54829878 343820169 51673059 472993332 826695536 949822632 871725423 997916941 522945264 667583973 300150378 828742975 832990105 987850812 458304513 567046223 228690479 991378741 99064061 135104474 736733517 972811040 489667525 802903018 947701257 989020939 940725417 969444473 133820540 907307920 422923890 912903833 784666449 786913613 212144770 837265767 820568769 973935512 564212817 989639106 902311319 989017816 85703738 102834743 209699750 320448615 913231632 995966524 335492295 470531130 154838874 252866236 434105507 839245064 762861577 871921618 839727201 865444959 107607011 504639798 444312913 471442141 46858321 57369315 727181702 749497660 310940528 962524971 644901946 940041133 365280592 669653798 858415003 915173484 643472359 684549902 858529650 879240629 515259668 944917430 50333648 698728848 383554660 388044550 195874358 549953009 719381769 950427485 209273868 742204463 953518482 983538113 621921909 825788039 565331090 895090481 720345230 775193802 504967663 928542019 375896281 758171935 743708036 918702387 138507118 913780662 539687087 845870802 296021238 582284644 887000870 968353220 224946572 569648429 40528441 280346259 532049448 750884364 731964354 765333205 154332228 880509851 266275525 725533485 138252974 554638886 592602595 942605208 933467627 954308488 987205430 991661726 535517457 655847170 586002537 954203128 31781559 749040507 192340569 791501730 198633298 234883535 458334315 903510221 578828585 934215083 355416583 587340205 419321837 713737964 61588886 103824989 136871703 742268474 260885562 814220342 229141653 999236212 4960401 560812129 316233174 832046116 676343468 923703455 594888088 861345238 200388892 496047118 720249102 853476167 178924935 904888165 320418947 659287341 442505765 831332495 742233239 879021588 952500494 999792901 17132923 545313258 703284050 760871319 854287371 967607949 142680210 884121725 733270307 897038609 904059775 993427432 846355995 856315665 300031319 468184039 715538257 781815156 875991847 993025271 77702979 808786509 116896348 838235476 429999243 479427349 233479920 888636673 873239682 884574452 63751602 86416115 571766888 753632543 391894009 997590761 779896634 891975163 453228715 456092033 620723905 950137652 880806693 934883142 540208486 759257974 112524528 767228113 265370845 382910829 755455474 918439046 249199100 682506311 460700949 800644084 483179781 549618778 594015731 861402170 431646996 805429136 220262256 344328379 153504958 627048120 810155398 920233420 147627706 381991800 554498463 721305399 993882742 995952855 122978444 248088568 17478780 473330020 800196680 985871681 491637394 963392742 859028613 924457012 532299039 795241154 106659563 412029237 21781272 690337804 703676431 811276106 476076890 837840992 121913752 756736520 535812987 968094932 644481285 832316363 967445045 983783788 412588261 919733999 88203931 151864301 224567859 247145730 812346555 836684423 586540975 893523879 840988726 923913147 392458527 705832715 845466278 887893096 713819827 888985904 645210016 810865741 857543440 889287155 121644359 143988913 685741710 844947602 2463362 414044482 951036826 969835169 301274640 499954033 347112635 611911520 409094477 567227193 165444780 740716582 380464266 665049991 969397095 973159101 366414557 824562632 415029333 603771502 343494944 808592102 741164180 993336265 722493815 943174302 300400065 570371926 909850431 964238941 73629949 764560100 123342616 315642131 515522352 582698873 112808448 616983721 181357 689683576 765214290 911846314 320611736 595605258 747421590 843829679 286039380 795020381 538940089 824683766 974362015 984503526 120783938 724520607 829446972 904170643 20056497 48688715 408003309 502573508 614188318 963468037 424317617 842646338 408308077 611280812 513473540 924996755 103938108 980273862 904683576 948162730 919638881 933860240 179226054 696443913 417408665 571068426 759812124 941459394 554667970 796807168 959292302 995830259 486945574 903854198 177909607 303007425 294956309 513885711 830557600 914877577 105789476 196992011 500710746 620309413 55935992 994682447 833189697 907885542 805963381 929164782 707494842 878531028 830954911 928700034 212660331 595319181 374722958 573052166 318246958 688182827 12572850 864794949 62454389 281261481 693542627 786631491 964399229 990840387 370974315 728304057 460382048 533583651 866467952 921198610 272074911 525367437 72152323 170232477 497674903 798947173 633542322 881035957 82156354 683675079 402607910 925490396 529241262 821505035 901263561 981575343 974396996 981686242 795587889 854342483 497332210 513827886 657198914 954824535 390051950 853102976 740657896 972312114 301704155 380604790 896550577 927417497 200471764 649690647 9402924 773123391 981327335 987108094 545617820 840761493 864448952 968983624 244165717 831192227 166903934 669874801 713005758 846995549 962588001 972711708 520784523 739410630 183807209 982986025 863087642 913650043 116360900 388879913 942933917 995995302 818594487 970331841 829685996 993302313 249636715 749870477 966502804 971855071 113811396 954794784 231499990 290484441 525611518 887384699 810963660 999436361 259682355 486123841 151931430 758066401 350696253 565625433 558588126 804462284 255351614 657213187 923720407 943372238 659692997 726915617 633053888 819265933 947194621 999148020 860850575 967311361 542859161 883727253 258784587 664763062 382773938 729598899 18093084 491274149 852996338 996488114 329696031 941777316 890027259 986760666 770653010 963967543 109672298 153770822 458621509 908477504 342315230 866240164 699917895 927384667 378049586 584291848 537001749 614054247 607163376 802264131 986409943 990290162 144924192 740828298 430016654 700387382 629750184 690449215 375164738 671945203 329473920 392933051 854897879 866808280 916668000 928028716 651406159 726248757 948344711 959395894 745146298 965838351 575469886 713350729 940300392 980256993 994864448 999912269 79200952 892647319 739414606 785726167 850891125 855967050 99216748 311769263 122382015 197047241 104750522 766673000 624023184 944005681 295177023 873057243 626880168 687745732 719545556 773879079 107980159 209651598 856154624 904339277 45837409 308006452 271358408 533533051 734581625 803053978 193253383 935800482 533273840 927087982 327314422 552215201 481058712 740971499 742470683 803334054 127913892 382954816 306049602 795042936 127509048 905087278 949271226 977197180 174867515 293327905 425498140 466299229 565853023 848937610 803856089 812804840 57835443 187147907 973604511 985546170 857081254 916937100 946197811 964355722 35805812 982820484 855802383 867821200 51643070 695048211 660710541 797679857 978545559 984277006 495647769 740274516 798907457 927758636 327674791 622233493 70731016 482721088 999935054 999973171 603431857 967141187 924985740 936477242 366383274 901999275 976872570 977368780 797886652 974062771 149473047 183514518 897787725 904701482 344467127 550638801 499488358 755741548 125464932 432363308 878297574 996138374 727498485 856985132 526303182 967496835 693617442 959696331 576620470 628690921 739436424 759379304 757285551 790712957 564506094 770843583 760384937 859332869 608599955 856476358 435174152 871627931 971537933 989886329 596781475 692284101 720119859 999525668 353237969 970065751 161077063 743878640 673684882 800554910 108281736 838121189 467043760 933971512 82346534 714721906 669599531 824069400 778968970 907728333 87352516 618867757 677520714 799489117 919101492 992905336 178155130 415515732 340509129 776568359 987744632 996271624 381524104 649341210 25155180 447594613 822085311 927426439 101605843 133204780 103687799 866605702 270728220 684337772 388181376 908421833 960112480 972216135 260176454 950108253 55967980 917057979 912452456 993504153 6021978 767354295 455142004 565860047 292804726 983203523 554719243 968061173 489039096 751371267 561239821 988758692 593336679 999295443 530988161 641894004 307083397 864975378 541336362 593750669 368000852 417296573 413123648 562296094 841921643 862834073 937577580 981056420 960107469 966398066 691951730 922793165 706410487 914249226 567875916 884143642 729511899 840647174 229182002 785040306 840483108 877481896 907804939 910569533 140152865 604791288 40447723 682581243 810609135 811487181 531960956 557846334 841792897 952485821 831332147 880374203 183720600 736526017 290215505 453229337 238992452 314935960 165313870 461892347 511775916 718794386 891000703 996625765 845965408 883649569 778454967 854060549 573940549 692635237 993168041 997995158 73607757 427061244 758530832 971094474 683173166 788795648 185464083 381853656 64035600 338568210 68142927 592593288 644779800 655011095 261542166 637530804 378840532 656260888 131162056 631580588 755867390 858262438 832733539 851793649 719168366 857188800 748644179 862820781 169486448 170736705 52820125 805472537 550271593 741765542 497762905 764137781 856237306 960138528 315713485 970731558 223561252 466175634 32952721 670672871 191945709 223897629 17655023 819857455 229259292 655933648 679624022 728408976 262978744 692487385 869703753 890559813 109212894 499577448 171599316 932476933 533331729 938181628 371480325 969752596 88120983 335802232 636894987 840673544 319486478 546711124 991896404 992093590 447370998 546489412 422470577 442255657 498661211 898474120 308314795 438188724 983525688 999424864 833204072 891250120 668360939 821521760 804379114 844455721 433003542 574860471 9557923 627162337 732117275 812965893 701244114 955464921 148130128 402497645 821795294 984169410 272808300 650430356 6326131 594526579 744775310 809519138 975453756 993443085 343864492 931536804 918175259 996348852 73539277 268101443 956491331 972101189 479846613 778160021 434623432 770394003 430729399 679735541 918531108 970484121 218669754 464346040 340412827 831920395 634439369 725739858 162901404 461210715 420729541 677036961 955571129 995235859 520502269 581125404 756756184 917856005 822693385 997263503 340853460 418642806 201338143 903031550 586204323 651719781 379590509 823951735 71803021 849013675 879753591 986225043 869778906 933843053 103394001 578217982 115720387 167160276 196277441 838664376 991599517 996147564 619735598 635683482 364541493 396141655 170926266 485797978 845782993 903261377 927586102 982953136 830606023 838765306 595556750 992997934 181500160 997492716 785282140 858687090 178243122 231883770 766646616 841131204 339102484 610002030 833606809 853262416 635113192 984680848 244755301 311949465 770706387 911801554 475326642 766948445 192173270 651409545 602421776 915230019 789401080 946045799 207299495 549598391 380124985 673563473 359818421 526860793 61909039 525064011 361387795 380049699 946075122 958588020 132730389 960755773 637382547 899360003 247441556 707892910 68374983 326005737 471132744 909347821 869244556 873296009 270220834 500069779 489009629 906893199 574454159 787720542 587043303 957510748 721983877 881679439 372523575 830426480 248153043 290628554 121281833 708724545 665432070 923592675 506141229 628723444 357510065 456016844 497327123 592085706 516934238 906753627 125945623 285462339 683036930 977335801 362368493 958862525 358931821 874570775 661869003 919668369 463478040 861354960 631954055 967173000 300866993 527967846 122211217 403560047 624637081 627287986 169217101 500915339 463146420 671009447 815909005 939648323 130609636 742018532 986390377 986841142 418465193 500647139 819603067 930487098 817940010 853599704 107912840 115552698 193142509 214775265 897165747 930830138 906220119 961236035 307928089 519396731 271769575 585184747 834653015 967627757 330887855 868504356 351578497 787870835 394758305 624210504 125936385 394372845 451191391 956981594 364180249 388793050 271240431 356104254 723558602 831457255 67223169 269572168 845789639 850986888 822705969 958532214 793972691 917378242 886041451 948112640 386626125 639616725 798066166 874647057 986313570 989520850 888674659 997208659 430941831 807257325 13062244 471327287 669576603 817723952 110194996 914053116 297583595 723155928 150997491 496883099 722305179 805170712 288704055 520107969 121125594 183860822 763891060 789216673 526547545 657977828 369860240 778762667 70834421 165910138 778575531 781405930 981433222 998192542 522911365 939482552 427339830 559178161 412434291 919846418 707824491 837975828 888368086 964914834 645936247 849580887 695168868 953372737 677454362 941866223 814685116 882363066 405978148 495979985 259539641 853933118 277958604 942252433 140966159 889451796 388310028 986381950 293711701 513629855 732429654 921944207 579896057 688333520 305174703 558537366 756449040 780319727 13801940 59295652 507983679 557624579 195146544 459895198 805496550 896705600 471121014 641405767 861209037 910289219 788900891 855686721 846156741 913244248 490765698 559986116 872697706 885181733 779538245 786695490 151604004 174097907 78265344 174215706 255187034 866836666 769122709 909424758 556744608 562263889 442219759 549879921 305256213 754579144 833614932 856247220 747001755 959444198 336371599 366802945 52622039 357587060 125387162 673559508 447353859 780539067 987986104 990860286 280764440 944753139 542594542 993488745 386164090 721770983 992161066 996275851 173192913 557504307 828867602 849800138 822453974 875945030 435738039 890565139 611428681 637495635 32744059 686302308 929525170 977649650 546786561 893467869 314418197 940435929 769742985 804291677 72282343 605657576 936098036 943506359 844179435 865217093 909347050 967706065 721278192 788593244 540507798 863380421 96556766 684421684 935324674 978863125 578424960 995842166 568765905 689536480 23251376 524560506 234594924 461305041 817361239 817772761 83884933 604976319 193381234 225239757 116301876 196107862 182057550 836265101 800445438 933231348 230220146 269835029 826259285 970332149 849604029 933967955 396165372 661458925 998403892 998761839 90491724 791652243 503230606 933349679 270860152 714366751 603013303 868012055 127325815 148388698 55594137 129231109 364004793 696920306 373258533 457314630 985924431 991163705 163791035 193561517 678557778 827876959 312157949 791240670 101784105 903673141 789973522 940488048 176867369 612346416 268733468 889768075 175680233 181363855 500788007 713337223 904957030 933245864 886311726 887129588 13158324 112700356 704407602 755433663 741640771 942171081 443001819 749963274 604881841 737047484 985158773 991945105 783732877 842219826 283100499 712248948 395502518 568991602 481151153 499414820 784962577 896411968 869711825 917184594 72676847 770154496 437038072 657491717 228723882 394389760 11138375 731189029 9861525 821554866 485868779 994342269 605743625 765143836 324691371 642224490 711937514 908768936 570441095 870845843 68588888 485588382 739612900 855758204 787377992 801105798 286930135 744839383 725474412 922256731 552789160 638277398 818863900 968551530 386326587 939995626 908157531 930045957 992184700 994536813 729932795 748237399 319087478 520536684 781716039 871751282 746155121 911875147 315417925 706372261 747840737 826794600 736550829 901342548 329359213 400905642 278184115 473040312 819827383 876856278 450840998 768411062 940435058 979692844 453028397 723011936 580020200 926803545 538058152 908208999 339536911 656360274 162352192 236707096 835738451 865235021 569876422 757819421 67266158 356030563 32117007 105570212 339390148 841803116 75109524 202891057 54624092 796340799 817749969 905286157 75594482 354716048 967560580 977889345 675546938 753989336 855465541 863462673 784030349 801056360 87101980 410102176 959817684 980607443 986048357 987099533 957243986 968732512 464323630 562172805 298636114 641300519 886892893 896679369 364304722 738926338 197091112 274088236 323185676 532295418 865782969 986977388 395859849 894419931 809796854 879951833 329986227 741097315 190159553 216249901 157799298 385152023 420225498 793197958 744561076 799625331 458561115 954196016 251044443 490357242 222643819 647538907 249444374 730792095 375740830 379649832 694691642 783301674 805924568 836645750 680186010 724308030 31423506 123136047 265795195 428193896 678355429 893186416 866791749 870079856 784398326 931843776 32087431 611058891 698857939 915252873 246817943 840210682 432013835 971883175 249692834 477790366 267848199 477576400 239108826 613543300 625092051 866553144 368861624 778548988 639008728 989539498 217101520 279151548 183888295 851722659 148597017 856039670 933497819 938064392 27490469 800502842 298567989 535873199 812561609 991284854 519799657 885304394 982018524 992017188 620486891 737700261 728528863 807251708 51200253 681894740 788279803 931652088 409093335 816317277 781881835 963623541 645379315 824412591 779738173 877676796 886002266 994008446 302197461 777994435 942607142 960110127 1693799 496845913 308655841 908746752 630033595 986401360 617344233 772084310 131876875 764348487 567850956 887552093 795933468 897839402 924814960 996695415 310135474 655479202 596426144 870684819 812903601 828340086 371774094 644768284 831503024 859349895 703454630 814707073 251834273 826481361 624143600 680652627 784747582 869943154 457495574 800397022 749526270 783498240 854964411 992826728 940400059 980459210 777759871 949687873 916997567 939166854 620099363 972338268 313218001 588824652 561233804 842871080 342496634 856465482 169631412 654054605 918448457 998544430 282128542 445475475 775398359 783275159 111731803 494614004 460920257 812879824 11028794 48501658 321783613 909561718 414377179 426688761 75876959 738945448 805692262 904996204 531730261 999803299 228181260 873320345 869544314 960890507 390933659 936764109 194071791 543916523 260760652 808350590 272595177 890675517 4486326 125011712 984582951 991053023 111702247 646318271 80301625 113634264 801493636 908259403 643736814 776977307 158069561 590423785 741641205 840823790 988856804 995429626 190142095 283037685 918710685 919420814 421927971 695688697 432875960 657333820 665427958 731843196 471605483 635206823 864048886 970822102 272658612 279363519 638570804 645862085 760585028 951361351 480583803 557715548 497690717 691727935 962753989 979251538 866167577 972560196 426968381 766500003 593301495 922913644 96407132 557920407 700111371 897563990 193058515 242625260 801703802 833648186 728315933 819735129 999586385 999748187 350402308 734901843 652397906 690469551 722181957 734619329 300199294 624207442 333748664 350301499 542176994 919868723 693319106 798090602 580672424 950847142 649704165 935045220 218482717 569662555 68722553 910770202 203995398 778289826 933702283 960654980 522197834 967284405 325094002 543409457 353076479 911468160 537657196 552820720 981551770 984674924 492264930 801183305 228453363 725603931 776315853 971018620 994099018 995246738 860525203 984523188 851433921 970926384 499099550 845221921 813615333 962428065 106737057 246982456 260261864 429382566 211668124 686095445 969106890 986841498 173842963 654209981 493100721 844220418 269996992 464614127 982134657 995482151 216358389 471983298 330430002 811379215 81383501 866963363 206812650 797455950 241965814 850550799 754114858 974911465 22435288 555313210 598073356 752108199 812748395 937453024 186620619 496658503 585473880 710311965 825707412 935528009 161312326 654065004 672743108 758797981 264382166 698686255 213908741 792531228 990673422 994704734 792020835 796259262 845015567 883231794 182183332 518839877 520510498 556366551 750223212 918962014 831118680 842621329 800488441 810364487 471883148 691868380 107011826 557957113 923419843 994539546 819712818 889718779 643852326 923185781 345066211 887727527 90700746 440695446 48837408 778547157 218242449 823758606 162953466 896041061 482502072 593258139 442936676 984054781 222454008 600354776 532674984 593816566 94675441 832917236 213439471 288131486 715938457 899450390 305176303 986311398 950960827 959503064 640690024 982239266 485080183 645793920 839699402 847705044 480052784 738319051 830106865 919559361 38084469 530847909 634284459 897490743 619283932 887025146 531642817 646422679 416367476 855661548 375877998 800511976 109651843 923704045 764552531 984300012 658910465 738858989 610454496 790413674 726182223 989875216 648466316 912680140 49866415 567340544 736123069 836908467 507168042 770068032 783949892 791260968 986863798 997192438 53744976 923379101 456654539 943739928 643513510 698194191 885880416 996855912 491805609 778137028 907504578 913119830 551707809 710896539 891811538 976600640 282546906 490019369 963465170 978350145 101966558 551577038 84501591 879335167 588923514 747316912 796196630 903727975 50010666 108399733 785675622 838471413 794856901 809410185 685006017 963959678 809637714 823574318 588141260 806965066 229258050 295507003 737655426 886576150 654490070 685705501 251443833 805959087 315951838 817536550 129598414 206631371 152342932 971915473 319802947 744449180 795872905 950554706 719143902 983022830 323482081 376937414 126386268 877284225 782469295 915854851 746128170 830047734 109833929 127710935 867391685 895453965 617562671 727447676 305235418 695029515 530807480 633113055 562397361 808563749 467158651 485828304 135004138 723496907 746940340 763631996 455898346 798702189 986952259 993487699 342773714 632675168 788911633 980119764 12154289 316679857 132835829 360670246 523445166 702266471 808841632 849257109 878540255 982418563 674371618 798365235 764330679 825416376 498736631 993730986 179831557 349810823 883018722 922151375 223607781 494348175 11122139 887794153 238416642 814332616 997368089 999654900 808727653 943580878 952820264 975768668 83327293 685598581 160907512 788316265 668357979 789169540 382204109 753781874 890935676 918694005 134613862 159274151 231294835 805739088 632630378 811347143 657475601 925488612 622130451 946445774 73766565 213992501 937927527 989483153 311553476 728384121 350638236 441117727 148678880 325651060 214632414 275993450 349664572 397003398 186754742 852245807 183080192 504467578 903286919 995555248 400920401 878450129 299123462 519599329 351130514 849976625 166151422 222368311 104718422 367717578 75581368 521886068 331418802 449176484 75391074 588355563 575009980 952663367 543501400 713038194 785451891 824563143 536541145 844456117 246683060 498348956 949263789 988966681 796911965 927645575 268572077 713181778 271772558 807933038 355149302 445598690 631095606 970816012 508118897 934420310 910430871 925472795 111980854 799607835 20548718 131849524 928891065 995183583 455073682 883655807 59672204 919863974 26415392 799845198 35965472 519019793 662988512 870726931 171018619 290088856 248471971 958913101 879454794 931900110 853680103 930011197 504064542 794646181 540115465 650886163 525225287 884158983 429569182 667211384 543745918 652226750 356984919 940274954 145414553 165865884 300024615 825652866 231130129 413992229 898124736 928314729 500830078 662190994 189339921 929322081 511295056 538107860 283437321 902555836 164080604 585882755 906415410 998982969 334447760 726336503 161144031 227122856 113294379 472037967 750346704 973702328 982757313 991038261 324336152 409467594 642106030 908437644 683986427 852255606 387181313 636390908 704195713 998600567 152035073 610107830 254964432 455340768 569198006 908771915 797931067 999649928 674827447 772364475 296499161 557740774 847434230 850039190 192227903 240547347 481869959 515455120 443101540 560760766 534134294 709517960 957654856 976061356 127562251 698414786 141074455 560506468 909565630 967516965 214893602 738418101 381058238 777828994 396632883 808092292 157100154 701141350 17037215 622544571 616434094 776472884 884552515 897540095 923829854 961560719 86152574 688864952 548800405 643892036 614876680 878905207 654383248 775827933 420185459 661265993 877364748 960935433 938145489 983780470 248682834 791300357 652823333 735245728 441881282 946953175 47275252 524485892 981917285 995262912 495132865 802682552 442140535 962170991 358638506 583143699 765059408 946320187 549664872 941773251 470218360 880419636 761799605 783833174 969606164 986215440 265548880 328846539 664448757 930094147 68058949 897763429 401065067 991528899 557199212 807588469 887609901 972851928 352352393 422988861 109941135 317514764 781311246 987584667 147687512 806385592 671944170 912771717 452747348 771246157 671723911 786506856 535451215 972513968 930219182 964009651 227507862 473665790 786088452 789282022 647549633 948629642 456852700 691472253 412977476 614258567 674435253 751301271 652244537 777173494 991458966 993059043 674103320 983825879 95877119 667424871 226366470 583573650 182206488 844713640 567276089 786964734 465555975 954582234 99185973 321743916 33951770 683068801 759339506 768802033 202625904 577235689 688236904 716635782 218909046 750037591 607137362 976356662 80686887 987824041 315270493 626395581 928336132 965561785 147806049 889680236 885533486 999101753 193383807 616546506 323957057 420059323 738282920 866426580 72274608 144916187 569278951 634115219 147199965 781168695 66043714 933949633 672964332 736886141 525140872 945709474 207049788 918711733 557204274 780719867 432841534 494158736 965419158 992340440 87276596 356973606 36460869 479935596 742426930 990820544 211701865 934425434 433397356 925173051 633999663 897105107 434434634 593198430 843720791 997851473 474359002 550376548 436972707 637730105 285594624 354300007 71685754 756366666 866820042 944127443 920693973 983650635 879322308 986586742 815650921 891941246 787905575 915924342 787050090 865439690 28470074 74510367 972682160 994600382 905613827 914399328 360575654 689139300 504942975 842392948 260799471 726501177 223524178 971161125 990882466 992674329 394505486 556242281 563464342 963105247 35948352 254089973 116594012 483053603 137240520 918537323 824792031 959302861 697451317 849487827 687210842 701287783 811393989 841647320 148406168 859275265 638105354 822301005 272178434 796908641 674624359 759414260 465753399 553990194 69712670 616120339 693542435 918533972 83962365 570205364 267988394 564682454 379764160 457997087 426529716 868177750 445340244 907965058 538403215 633332777 417734189 944484260 895399043 958678228 55315099 269195986 893016153 941218139 956547696 995931071 114169440 960969145 413828206 656481013 372795717 430195327 908308601 933250551 982964445 994234593 245343994 723261203 275200374 561992550 89120729 818227431 476153419 704560818 147382289 538015457 994341380 997617463 275437355 870368326 996748225 998479922 66317040 824906091 996624358 998170562 770339214 811301418 667909661 882672126 228293474 259957019 595086788 949204178 617564999 800150419 812895135 825747331 888423707 972936374 109214559 277157161 879436416 887668472 752197231 790039494 193452814 283999411 452596490 640912130 867566600 917027829 202831549 416363502 595937504 744239226 355067213 604955264 347235803 868346872 404014405 813357659 81759913 272797411 416304151 467760589 159532592 437942360 768947434 775123924 199153208 614448291 154734833 341856793 281790353 568150403 653837081 848938739 899635244 983480732 194970641 706037200 39569263 304045120 585117638 967340685 946877868 990036975 789157621 947243705 372363739 538111088 358679627 360431788 547841053 943631489 930632998 987587694 955756113 959219530 493774105 744590061 769082346 871571565 995920145 999746426 393254108 931500819 239718082 388910859 736419729 860455423 100271169 651089503 703205893 881010752 214526136 617611080 393469030 842624274 904486643 940398007 315222359 800213567 12904122 591447056 277578410 749257726 803775800 987762119 277659557 677212362 431491142 440020372 226699034 532494883 885461230 937940068 154551103 989839279 737250301 989917615 362281968 998187953 304473072 843208811 396489632 610678811 338336503 460708621 796621990 910904592 54683483 943004075 765070668 977857211 225663823 867474278 41285621 315181892 376812711 829385877 49661798 439738914 521304070 529735492 924171241 956912721 923661370 983035867 186016376 321673736 240993838 593362523 528829953 849538040 673394907 859762119 312937882 823756164 208396144 874715838 436017993 710600762 500635365 588364232 374889887 715329579 560813338 700722554 449782613 850513001 359812788 482318136 814631056 979357685 421733953 982534608 888442529 969026096 987910403 991952679 913776845 929675257 23144975 23689612 966082878 982186912 572043709 585350553 780713719 842239734 253740183 437055524 732763882 904928314 472728111 905501253 926305324 993880209 965523319 968057860 529788830 554315752 873567713 923458210 319529283 920609968 204923554 581691578 663518661 834682957 899838228 992563022 646589386 882303987 528048189 729121118 7366452 58329606 706711447 904259656 272378258 387336716 633220615 961400642 113007248 333975188 926541928 939895784 326793451 671878470 447275163 482301374 261676425 670064978 127146919 934875946 442448928 945754646 709775378 891938010 421558857 916551517 379790011 924882381 9610976 746943499 872683424 984691159 826919276 948213781 448453213 568395511 553372249 664111734 666072454 758729735 825519670 979829725 132968546 360127060 706735283 814797344 813129417 991760391 925188374 992932010 705647161 942999563 702106060 991664768 252442748 973929861 164982741 636621013 312009261 959919061 321164692 934495071 883769279 969005645 563134467 799904915 168659440 763267542 7040217 209574997 322908061 373404189 209863127 626112001 615135789 906255380 852159180 923297120 475428123 624807553 929489719 962751398 688611684 733880092 357787428 907304391 374893771 936265541 561697815 750074974 930443110 959290944 732741557 845827851 761715756 783567122 819650804 997527070 933575119 953606322 629877679 786327022 260128989 878674080 940771080 951297435 109814462 683595591 108227246 840839153 216921102 856508649 67321272 480384265 299021968 620776489 222959641 260018717 514842525 894289192 387961019 514669066 879706881 932926894 607975072 719812329 438900529 849077944 971760416 982700826 519985890 533960214 650538703 994233137 41804099 601772931 890355542 945001207 465959547 851925059 623539013 751886143 300276450 975210194 859027794 971258084 595909354 860951511 9469841 247295681 816132518 906691441 76621992 977190070 855644535 946179619 986994717 987482235 99685813 547007681 667135975 725136887 442802449 468566974 770584820 880540700 677490337 767512039 534527683 968294307 808266915 834887369 579248057 629666833 942226461 996795710 150132072 625408294 13235312 150201566 457886370 695614109 92120911 407189332 92943902 402145585 669269969 887423462 299503489 497788768 648407584 939940941 626715801 737308287 141272697 314555359 560810529 580286228 631154006 886112723 106986242 378782192 276364520 411910607 256756926 772609041 568101681 789819040 616340479 716885718 329183561 697151115 509098525 728197025 10719196 336927841 359502544 508687891 659629268 985049515 712095394 774274204 336419841 384611411 461514325 853467403 180975268 190551336 619784754 626077766 620706075 811859197 854704646 975258768 748582571 984854598 419656695 460643071 283544182 533290526 622916862 985408927 668068190 788972448 953408730 979529523 924890330 935819965 235345548 959405783 173597521 647887818 900739536 913510249 499011612 761295978 46429524 103305668 818831576 901246939 888788262 989678453 501133989 964631003 490121344 813173807 830721988 853863915 904499964 969040427 432577772 467566053 378342098 533212389 689304841 908340891 481354852 652253551 70603356 154202360 505749105 929310175 709780753 740097148 275027168 701353119 782424426 986055927 259917177 915878350 659499104 834686421 832604968 993778227 407651826 650652417 987410650 996124108 892628006 986332457 917741920 975240277 112135029 136489494 858088664 938869170 766353119 915738201 97862631 328279297 13319381 901664896 950715519 958321145 792982851 857880176 14244047 359230553 102485239 459533968 842712904 920084085 725274354 820360858 822500870 970527451 378184089 858462078 895133478 975088564 34444439 242532214 499316241 730950928 220438796 873364474 173173466 639218881 960495717 987939624 74454018 688487279 405161307 809245044 999215447 999516023 201234653 934003078 181049496 911106966 679784866 913362917 438197057 680889082 829281689 841019912 948991174 969713803 924477289 982297200 797534631 983228856 312229546 892655926 505660758 627377580 637058485 951076172 429421348 497958818 41851791 900990346 955057474 982536834 569202375 908886633 944879122 983880742 524734135 974790815 821280731 991386080 36680984 124752717 569521485 903222979 822324935 883440713 678769902 742019658 332031822 499684418 845778628 978754179 306885596 654204304 541973817 969357182 87622138 708081113 384874211 609307622 815714435 929880069 939009599 967258812 678399641 748776446 936763856 937557803 117444906 558346754 740819760 896349897 410711547 712496023 334746817 600008383 342510365 504583974 188022158 875532543 538568539 943498790 451272782 955465923 155293987 550947987 946817616 956638911 227140024 453113685 852254426 880965252 830100718 843921720 41347613 925670806 823090132 834998333 692748891 892294712 368995441 574562737 367317523 522548858 912051990 929308693 680274272 945837938 828127312 864008477 594483736 653135499 422527902 426230888 760961280 771142751 844933379 889354026 828706173 933650957 623506287 854095008 257126770 579252749 869931961 939592877 612573581 791574521 299282766 407506428 327068860 809813985 978773760 986342456 822565941 868749044 144628814 442888725 97704623 210201018 225545732 519746793 384220870 685640912 667763610 743984869 748948501 911902529 549334635 620866703 420615248 759092217 943670567 952204245 424697551 915434469 702262374 733663079 442368276 903032223 614320069 970733261 892443490 963468160 60953462 867538674 803927356 843727232 653550507 881836585 90070524 187759008 939220740 942956621 521635917 595054518 357880618 892044372 723690087 818541898 676412858 880214279 656467757 930010208 872636512 934701203 929846659 944083958 878595916 988964293 466577311 992015390 802921807 946532789 386276207 840788221 723348730 770801775 756689819 773938500 77522809 897054500 954097604 967894967 780773020 793987310 874938831 925020476 148549077 412112623 285777270 817824180 641174809 661772668 904044394 948981662 914884418 991377874 572682821 911995554 806850479 968903568 151926823 293190301 100152636 966872947 385432755 954954474 607294175 962493283 47298861 267519255 735713992 902841065 835686578 904822291 835325872 938533858 959028541 961827693 546202926 790592414 348521387 818992106 707475066 898254744 735246710 884282578 401061301 619706034 826026473 830688880 842642071 858466617 868894753 906282763 641879278 871662738 142054885 398822256 169233993 238562278 535504725 684752069 788694215 974635891 706483939 734633323 907078854 920745977 766140789 789036431 65221082 332822447 604706157 808224044 722074353 950168745 60504860 131834549 468686538 657150312 783297584 831393760 201089087 286870547 714308732 806361726 994493140 995159907 564352948 567061820 318523738 569350274 610022390 667683105 700376616 968458991 133046180 352334029 297833912 410504958 948368736 993018283 162423027 659135186 93946832 550889527 751092751 844465667 346290912 745434740 849706275 918909714 285683704 514232247 893235283 975907838 88086429 150208086 7201431 977188843 906104360 936847909 193813856 790921618 443459108 750341489 408671161 477163065 630897749 980731610 683593795 903428949 975327843 995849956 893709786 970878648 244726540 773037618 611109840 919995323 149387043 454096134 387306272 605282259 566842366 970312299 243302061 476434396 372200709 782613565 39913890 757609536 225346566 650645047 312656669 641038917 606764730 799560008 900167742 988533276 286217471 512820105 759631256 809848195 435019510 508457637 197179108 893194173 380960644 728294173 791417929 999451786 685461387 747227805 120655797 713247663 703024556 995126201 511679414 896750551 352981734 476632606 283965586 372764202 710585255 782905059 465147167 532571429 210025398 942642374 69446976 974350132 897024277 982233724 660880753 815333950 164969674 382184715 420271437 763198713 89490519 158125119 210230904 499073850 16372385 187820480 819583390 879790624 982750406 990760114 817944633 825384482 439697654 805214969 637440744 947403854 371822751 568986787 815477817 964625036 660667264 744620284 650314191 764493060 290963548 957706980 709167851 765129632 926374381 938704105 893188176 940745077 348518718 861989629 527855881 595149348 226706964 343624329 381918491 880260909 579892787 722049983 212013360 285539508 999357581 999468917 802488342 936144332 781442101 839482524 99875388 643627246 666879511 988782061 837311156 908444165 276230084 373220376 355721398 545545300 487432400 864850111 553192700 780721834 470899414 713886878 10469029 996490274 689971547 816759386 509363217 565207766 275760461 649695826 987108686 995561369 71347169 928237733 744248874 956758525 244814020 979277878 648928581 838652443 633489218 886085735 572728990 663191274 487280686 970464625 703641216 727162784 337453434 815947424 458235052 637093104 631182299 660435541 92993177 712410758 884399048 995264305 360735140 399776430 251652140 771902805 106285292 128886862 467328216 838554705 370308983 749951660 237180803 876083651 827426821 903708065 864792347 975800574 847727317 885015309 354465559 695345498 792277824 882437876 234271645 987442251 260409099 477696488 968710028 982907533 760801403 860280994 775707968 807328644 554639592 719445774 74824145 973867352 926284313 959162761 717199623 774504445 608358024 795521426 727491088 931859302 124127125 906786712 646400311 761315474 141333622 444767660 196692609 468932434 466687893 543172575 962570864 962688388 894062361 973820153 22819367 337372372 812016538 853224854 595985967 991747054 152120938 443555460 893866519 911234320 408919659 874497213 445229898 700864324 820749895 944469502 536418743 575550955 518157829 961555455 947220710 967126690 181578986 505928410 409959311 620823775 966253215 992662593 47220295 317603826 221756046 298902112 224777558 923541240 45327746 486615294 450745367 804867848 44864390 577077510 870808510 894967771 170737261 459948808 90516344 658604783 780753842 783768779 778943977 943795269 179904741 593681658 398277599 858251719 739047441 954022055 639283898 650941501 888810251 915747583 889521609 998366731 763378389 990132521 556075662 694502695 368760562 624584288 155948479 655995450 955264058 997648429 455787792 777373803 111528482 781398868 404016657 476084775 541697620 866781313 615532766 901100233 857325353 899744732 304931952 809378853 388448565 724366113 628334093 628768852 883952109 940911942 711124108 873407261 194785786 871674111 646819693 777134329 320780349 912913474 930611282 955016680 399541903 437347819 601416295 784596644 212799144 704411786 625436462 642068408 255502039 579381443 869814776 899966795 845131447 990978024 828694945 931481729 937195704 947817169 835820874 989561520 103020842 992155836 773251035 991716265 880871116 887600585 994117919 999772918 106394422 844853991 909323417 936641187 547112873 666349547 353048497 873088255 588478559 622457439 402950144 549475486 246350984 253897841 54367943 719681071 292504022 798117272 642543355 890535122 329747583 755550365 228701544 565491590 552125610 898769778 642160110 970089414 141013116 769872437 294711307 361587135 152871948 374640470 308561031 743782563 178314193 901571523 543125615 739974374 595222402 941443837 491430988 798203141 853961718 952005975 499387009 738041469 314798526 691129901 811087191 818480512 403960096 767505345 231184383 929209828 89315331 719191911 780935005 800610541 947043060 958399844 409586165 636090613 208551902 616910393 755594666 884917068 340182086 777989374 342267518 817516148 453305593 873912217 576181592 982179275 528245991 700556033 653768138 666100555 890945646 987710078 11153 598710226 592824243 790753138 55360517 641122133 771830572 846916269 414671576 634013135 538219750 971291926 940958434 958675843 935262641 952273576 427562139 497616635 766932481 886781789 86455698 858367078 867276605 960940822 44103132 422208773 50275645 232837122 928976549 984745656 564183997 656134229 853243241 977290208 341405300 519254286 794810700 896846975 226106548 589726171 755712399 969615278 235440825 723177829 863369531 989964533 306620042 308231501 562398234 609775704 52582991 412822695 399337020 557363410 510811995 640909163 102123382 917701649 852512117 956248160 611234953 979571973 499036506 853196274 750284088 967587552 531602382 637340743 571301627 671131492 437002608 669475951 683345433 893547256 17040980 691651910 269910211 949357626 799717716 800356165 188596990 914606637 573098808 719353224 817188063 956725441 134136195 974768323 471136235 609231359 221409089 949078536 558760112 651494132 143700018 796279005 991535752 995423470 106301027 157215141 292392191 733074481 247615992 941865472 826569593 964227346 240447316 458756246 505733706 939291032 827823393 835995545 122161400 824764022 518086213 519236204 677711427 827857878 379697930 390650973 851176638 915887113 376515849 610740676 873178546 933582174 428713145 833461489 308474117 395098267 214649997 401084081 220305314 378015182 33662498 182157245 300248158 328542306 469408590 889640064 543983144 769748939 783690894 799305933 787675666 861827965 538752861 761820252 580837060 799573740 609092614 750371564 44611204 871497365 584103731 804082215 219934051 226999361 99502094 987456311 325571222 359374039 49051452 616564710 361027295 976848008 525938704 960974014 276448478 834168525 929977961 935001399 752880117 784833087 760078290 949890272 957230726 964841291 143144906 826799237 857462222 873371157 459751483 896344194 543443819 772709170 226780309 627987087 20662678 33307769 342364967 626014112 483241374 776826272 48099828 430713144 252171317 816324864 240924057 727204720 458745609 505273064 537222631 689597184 611121847 880810876 996882 262072251 73608193 125420908 142226201 622810995 871281764 944739103 21286838 357917868 561776125 865549561 955173804 958178565 675288512 910272397 773669508 809677272 574851526 787938790 300648619 394134037 45200046 569549262 693971758 706959189 571374788 847068764 871029393 872981265 149742413 566547402 150563579 673423283 642403020 890323031 405681797 682121690 121222165 460081597 466172084 686696521 322120426 465632512 263786544 320759193 352830049 853444104 747606513 850906354 906703395 988803150 426757936 656318716 164939329 594896589 44280892 848692192 165865058 190103633 494166364 701939994 745577146 936298889 250120230 656352914 156385463 793710487 714616139 872050847 9440277 737300170 514291838 792364218 303147346 865912378 818772816 938608620 581089745 867595528 164758960 469571649 58811191 984037015 332301005 529504363 400098902 521986303 635498204 743641951 583479673 648373747 168383000 354996982 526520532 976730629 565214967 573943684 804899407 879902024 255198218 295889334 628219327 914041875 202504146 809879067 976326199 976604552 606872469 678834324 459222603 815532775 445352514 802929048 927160060 977869574 129720589 527290706 474653537 619475498 935413000 948492612 240651930 271537831 698066741 968649019 877642473 898181195 407025474 682611306 989841137 990874470 508278271 599245324 132612901 711333840 52185689 287988289 313985017 332649877 109725526 355588508 666000020 711782156 596677243 893352910 39966899 315901023 853497238 911589087 818652484 992194099 61895270 711449024 304690412 553263671 285318599 859935087 173481680 533853481 97483900 484271594 151501101 192868602 364156461 517624388 943805062 976871631 687309494 903780777 475843644 563977953 825898109 930941989 245610428 443785846 931220792 944575117 841176254 864873260 901621469 943619147 716729079 981735347 85499026 600353043 962515402 982151424 476908298 476967431 460585494 834754152 348715061 957426402 840975890 923563607 533776471 947659225 656458510 949188777 304776165 841155115 353095993 477776081 808187253 995544156 895191450 982002371 122636115 247135820 940098200 952021601 175064372 209272349 719199174 914214061 354079748 810859239 6629166 823929753 885378133 953166032 98619540 540214553 465276172 762028961 19486613 56334810 145729213 704211103 299212501 924101736 693496450 922493291 539208671 763119913 884966349 905763697 750991096 835327149 482883286 532729766 991382369 995567080 120666536 869132717 245854874 465671033 796272755 967751766 184779065 620235627 942952356 974392850 484002817 759520604 326701181 912488373 722578783 732778678 623725616 649664050 151475782 153960308 566647748 849925692 553120443 587755577 784801371 876313592 725913061 991253865 608769144 683457033 325102982 877470120 67291829 942787831 788851568 791842702 648069852 879159525 169566632 215251920 386371314 603219487 60073081 936861979 568758443 954080474 235322188 829050322 336534165 556958927 207695548 776784038 575000628 818867770 789372314 945613376 200887142 589355347 492671440 494701975 308195692 981698163 532640834 757115443 571993950 704451999 638086654 716359856 423769452 433721606 715981353 770573927 683564078 980751003 649084724 889092775 598231248 668929425 790054215 951604646 914842617 972414062 892645677 959883695 60152365 564569758 12805382 678963132 376661587 985868074 377819755 692652477 68757348 132789536 411475473 983044887 226126330 650553921 317389080 808248188 511985516 559765963 869084620 931301016 727701142 999577011 761326496 787565567 660109675 725627921 302648086 325114901 171561808 996879222 833567429 991764438 924507748 969496201 618935375 886615099 110561308 403658096 133777814 397097995 264624260 832281829 808255402 987284381 671307101 752905263 512995552 986125949 768068691 997162594 682035929 808364364 573098220 663639511 211599195 601285539 17684192 74091072 780570736 954514438 761603634 962390998 270851098 375801558 552934441 848852779 962310086 989488232 370632670 388231851 345672940 345961211 238788815 264023213 353740714 917612302 579555004 879051667 147890744 968827574 698916818 900531775 638267749 910130078 681122239 886048539 787009429 897072294 939281410 977788928 159379711 490748624 97035851 256354290 27079327 313273782 101144933 820055670 300122524 745113369 590891825 645397003 646440459 779355529 215845956 773237285 44803621 89894989 291405299 495041604 672393191 742281327 221984233 284302986 368560715 504558282 262567658 675019028 499409169 826028906 750016642 771287311 420049182 648243189 421623680 952126853 265604218 306930763 52183787 342125748 333555538 578149694 30382983 960765940 980806503 986972703 210470081 614860928 719617724 972309082 236354227 443155633 408538283 793589122 560310055 974425448 401820748 499513840 523670639 997908784 946656643 965532525 899176352 949412776 110856121 178800552 820777566 999962119 192991903 265617000 119609302 350488036 882204076 990248514 420778795 431276884 105575490 263996765 666044011 930017568 867239711 875660938 273574076 393214003 436665369 868085814 527226395 853211293 839619031 918623995 541441359 626545406 428751939 749465443 947687712 979597716 985197617 995285305 210674667 925073572 103886381 475445482 668596665 868266013 685794990 802248939 556233437 573473375 926320701 929672306 640266360 776055741 939725990 964738487 610547482 613457016 190471519 289598328 503264153 874914859 246605514 391951250 911568535 997533567 164856343 333739620 801870068 833193126 615369400 663356466 837612272 942185102 579664000 984901337 866120542 880107667 716326310 838298400 161677846 664800664 928941017 969455607 219064750 640908998 599632454 689573469 788576751 956147384 666832816 934327583 958445288 994669385 969050954 974208125 323039654 630995935 160589618 176648223 221581574 572710858 793660455 936695077 196961589 281223314 478172940 994655471 222742717 494864070 658297508 842870982 620408606 894991871 352670709 572327421 547501011 714358469 556813799 715527397 965091399 999156983 893970054 958151020 928882844 974026180 793460483 839155690 667428313 739721448 400921359 754423215 679176664 917979920 494883917 812646640 907315907 982881055 957921831 993406850 509468144 708458946 890628605 897025176 123917230 421750321 597152713 810631697 680010050 844080600 719938583 869565459 564450291 957952788 363846374 485314553 241645647 936515088 315638266 884689124 685304347 764499543 705286771 968177852 607087300 656143211 574940183 689457468 603746703 968245192 785278330 828003744 429969661 865303012 794044356 876311985 551664919 842665654 831656870 895423948 165019811 787807290 392407359 556810716 574588216 796907734 603469207 669638474 498774915 875848269 215325148 543930705 396044449 519653454 137365557 842557807 608974896 869825094 903436407 909221948 482138634 777987262 490829129 771979065 501503259 888959261 783398709 861787024 776098709 921738879 823746101 974822963 808424445 978951445 969239248 987549813 202826995 360938121 54822613 649285813 128646601 584207690 188187864 402783086 955711683 984514511 742605779 885373739 280979439 684433891 66786562 777798205 872147451 927888127 363511693 586010528 401360450 891887633 847784007 878076101 213413714 610918600 322853057 336679997 251779157 579657157 767430563 790716105 406507581 701676055 727507258 963574076 365092298 561718495 331803153 557043512 814384727 882281330 751157689 909918219 965438267 973521450 273614390 467703440 41533580 867566809 498879825 529120624 229321307 550378040 300843698 699711810 13596248 352534757 75742488 85677228 220215956 630667803 946508321 969761558 628897366 801000519 970554232 980508323 71436383 829510673 405059375 653593694 86001277 707298393 68362697 976926180 396887894 466910226 255058567 910940247 372822684 850179915 455493549 793257233 609748055 776581288 105412451 766532562 296046302 582797911 978238496 999641099 410921032 600587425 495360092 561591192 361336919 702115540 798844566 951301725 745694175 771710975 442723606 753599080 846203813 963016362 11217852 171042742 841313075 843482991 461341679 660143267 914995169 994500040 257315587 726615534 455364340 853028190 699131588 703579970 424969524 765561110 950582592 957481852 143046458 871216553 463973240 773054850 259310939 885988162 120917940 421868729 798727266 953695398 61176844 242612594 769288762 893865050 672164075 789678555 612686758 740796734 154408013 267546091 715142441 768357299 295037289 742966289 247877828 278724723 797458362 842520886 72264627 960968336 522946839 945391880 171246252 638205377 739040446 976462038 544446515 957207566 407482883 450928881 223298778 914465285 872811733 884808142 893239598 912443058 512437391 800128281 598236702 627854407 708545838 891449578 437600553 740517568 438999125 524652957 893838991 965091699 279436105 284685215 179517481 321667343 492055019 874628006 284389664 489803606 211806391 908306374 425565655 903449191 239286261 880776595 905069863 918413048 764719264 846176547 181218640 271354637 997893288 998473313 574635668 705236279 962991528 980287258 957290246 971117187 243047703 917288845 598992523 891790400 117384071 742402538 354553090 868872457 123479324 791781541 220136675 345481106 76536224 304042056 100625355 229476437 41066904 739611237 398435872 948601816 869114940 892320572 521958881 853474011 566548795 695491659 368509690 648979137 127724781 848283623 412773138 571581387 700307876 924370391 390749123 890646118 438337309 774314538 519755883 682019874 338497315 898075082 476076647 871405645 641400369 971000180 789610292 834040193 801880094 872406194 94749505 152788977 501414354 676794474 359145561 902763561 18447152 763244403 227449827 758396321 594608634 720762225 49401166 329265679 114925687 188313229 841177353 938328524 898424767 926028455 49267677 101122593 108040448 972774813 494774937 632545503 668555911 675128000 20750795 224982622 99872576 736757637 653054193 929946271 300205905 724700416 242054866 755698195 853920255 976290143 506636372 896684743 875474748 886097227 500992830 911519578 160699157 305688166 65985148 926981487 768215870 841495867 132738492 587882478 98065024 656889423 633343594 724969003 747521094 977363809 944823270 988623519 860165750 962691650 907765981 960486251 571022674 583663636 717158718 952222651 963594761 969154821 501048370 591283728 342647513 973037859 573949738 691256308 541582311 816075000 782322582 856739810 147640091 906846368 382858965 795406861 512294525 707891750 36262867 883531191 470691653 578804564 266562021 972671985 621664043 768653219 393669495 826496748 406380569 903634192 676555020 781785504 317044830 789251149 125083357 217864700 348963372 892973485 655943592 755216531 4600693 731160653 597118604 925737539 936686339 941108407 583045968 758857602 62284968 970418385 704625148 971031851 155274520 607999815 341836308 922390555 924051137 990969315 592545573 959658946 852434818 912550003 504317476 957250703 56960536 881957633 84119601 196545705 762313047 923439594 438310557 709357468 737001379 783693670 555660195 863984300 993184659 995639900 394034887 926036924 812212367 938144332 661856663 978671784 167360390 176549654 948941694 992839962 834281822 934463639 982760976 990763277 449080944 674084587 109791405 304694945 214111719 858664630 408676740 549041567 219030054 739503224 457150449 590209135 680533542 811546849 404092797 852206829 200276357 708927635 528768316 652021260 430699617 583579241 976506264 983579348 292244231 333971876 862125843 913237960 785861424 903316576 993195360 993626916 240395252 311952473 343523479 999455086 480735380 859616054 736803786 947779198 371539707 730061442 284209485 780364500 846234968 925034651 919154152 954410940 398460468 411080519 964279598 972497267 257532979 533911705 802754794 830210516 675346225 831007879 497719608 552809202 718753249 766045209 924538075 928521653 558230345 734753148 765373300 867998862 59055954 610308618 495661742 927974431 834414095 908397241 364120939 890386769 62678053 495536876 932426217 957459360 294185193 453469738 972355189 981238253 751974332 851200372 989437255 994716635 576643987 616568385 282591699 970059566 116397814 566618707 337538360 421828917 331098505 689827249 735757738 963277065 49119067 554811365 185879793 665678714 583453092 672885255 149151124 431973377 388267771 927479677 377964299 813018925 539218025 742763049 973819877 986375451 256445348 798230513 90165812 571040763 58160165 338490966 554373591 888564967 883612368 965215674 120228531 920680310 631294344 992227910 705013481 782479505 643972033 823801941 920537377 952157998 394758318 513751724 825530262 936154065 639290254 976557062 416550763 630615011 981516333 981643925 623780649 711093079 478713217 492305916 415066875 418868250 34376824 412895835 521326730 596400535 666300358 909781152 388230740 973717152 538966705 865478924 992849350 996398651 52935729 575143549 592504785 931421853 52155371 495940112 133035845 334091280 458819573 880511751 352804852 381975831 98201235 939208643 275350876 705294612 525668971 727015193 236139405 244571562 823312713 847991550 313639152 680084637 985156476 991514142 492843695 861196477 708064042 805999968 327565168 348529183 217612574 934945734 210904215 990458778 15922023 954255471 536970840 593100320 812903376 939549454 710582618 775729003 467518684 970719575 416293530 990585965 60388069 473327576 907083202 987424305 641690866 898025633 125958629 296412548 104297580 629654213 596300401 960658423 149279658 596322853 773889099 995608931 895452404 968072596 285544306 892376628 886673323 892288561 645904635 786215266 990607140 996859680 510712761 730319847 861457275 951935236 394804890 795605355 278628351 977193225 95505723 711180236 803134920 894420693 761695148 843352162 666643938 824995523 782206781 857813686 273652945 415365242 55164581 599400111 861800869 895601860 281031176 657653032 945645592 957131437 270391072 760464282 126970834 782796720 28714798 538334504 98791739 985218999 598292069 639083551 766731083 787891113 477159742 935794763 689556688 805928323 994438549 998615635 981444725 994991071 213691371 562652408 570207053 782230233 956768464 959833014 462850927 621873115 947307261 997392137 128434323 365628646 209222254 910879271 883660170 888445067 592211311 655017558 825034896 979957138 980384038 992099205 619407999 758654536 269844521 754581086 334890355 435867371 485154484 876336810 91765827 618296059 104398671 368125679 853573492 941335265 336277761 992341124 299289395 429834337 903934226 926467428 56536409 852608123 453061582 796446895 451617803 541674010 766017913 794349019 93436779 125611774 645020214 900500981 158086988 207926164 985568666 998885365 575755017 636780347 854989393 906558562 38334138 883358050 471958168 973869711 711261285 961640696 692396928 813296321 863153738 979511607 970538627 998018966 854958331 873573349 265653543 435802212 792982786 902400244 994840295 996178545 365787953 506892864 307656349 541202727 34169526 630732207 459411320 881627260 415486714 666107665 184652846 194288703 816344267 975821917 855078684 994058377 248428651 333620662 284966423 683494524 580179988 992717919 567397581 860238650 89057791 848895053 30542479 392157100 873951447 890463254 760394248 794590859 241561117 832928970 552840613 923042243 934837808 993607686 769028352 893077680 886383694 909279963 784460268 878896345 41044071 470399007 357557746 702298051 214326257 902895189 317813698 706647665 419044594 791118551 613333840 854874362 137618473 801579051 186145972 261128083 153894535 977453007 981228441 988986443 149580231 681529222 859150360 900524727 768215323 831090842 911818028 930264212 478536975 771058950 1182767 940536216 512304542 536953915 619327553 918025860 996743230 997832458 722135479 755633796 587077582 845068476 624568938 736818368 274288229 737106316 165839548 964171231 912840598 977541096 537561841 853732049 88792424 289029234 851302245 965880384 9216217 660681318 431874930 849017999 361094873 756999604 521379781 700282186 239589634 924269099 208178062 867678299 359509448 936924286 319198832 443909474 89434376 547067802 769526867 797095838 50198223 587436440 519199357 857729870 669090490 889957893 806631266 930091265 672515353 996649397 49251069 459735035 453438055 927736167 152562482 515429914 984705152 991657598 934001958 965062535 88797815 454852650 678196703 756195235 361495165 497304844 474542376 637182526 556872446 843906545 430668124 529616394 520110682 787661838 610717107 994789674 118298820 558780069 250528245 306337083 818949581 963503439 976822666 978756295 529255565 614975448 206025657 355534899 292619710 480491687 700658802 891223836 238602110 630325930 966510535 989240875 896909997 929228457 643945617 713062985 963157439 974069370 810668085 894618605 661536295 900183671 446828369 951939817 126970358 381549707 659837221 795237087 919775396 972679381 129204442 129535062 592155185 854754964 222396018 827561833 135550685 305613782 39176053 503977935 353360611 684613850 644799860 929261627 823501329 883426828 543761900 648239694 119805373 601184349 673645945 997520446 769263211 991896473 452451762 720307658 982928669 991476967 246532932 594047996 431643306 534273676 667705882 926185072 922301040 992010923 157038530 445515288 559568455 810906038 439525971 511679839 313865063 804574217 518197561 936597385 664575716 725823833 691721906 748208573 437841901 921268129 97940136 704795361 54904760 63700570 367614044 821476669 788040526 906833767 195693748 599215782 485386606 644156228 676293427 972763789 454458540 639793534 830871733 966441276 762002896 791196499 643260151 911453348 926079792 964423894 161391318 527995892 602999520 647107398 240895769 874689046 747405113 903091174 260573009 498400033 112690651 580272443 189914237 194226232 946304447 960273828 432572134 841858059 97533093 702234276 289977838 832504488 193286221 750596054 565275244 858937870 43334305 620512665 67798023 148850990 307447176 795071638 873631831 929960209 704813996 821655516 635697353 851461169 719239196 918361202 325169346 732603180 881259791 920706531 1317945 386566033 982324737 998196282 669228874 870782552 529300750 695087471 564812637 769190064 550707984 738845056 961228745 997318965 904654602 992848699 877137098 940439871 898312946 971193354 681861020 968216389 636016977 901989232 249425811 479069203 892848371 892999182 485328449 917602402 347324861 956104656 384167995 576800890 675099445 773973943 714067656 957139183 264035394 292074899 8377637 452011414 358401282 391338384 142997023 398815860 701723542 869089334 746311802 750256517 718302339 751714819 443901244 698199872 950650051 950855102 657091134 906608697 45572 33697005 45703045 338780356 376743523 404016621 610638790 885920847 867559527 996356840 588700136 631838856 465839844 794088072 219302751 507135843 120481584 675765216 628463801 648350902 272977428 324170418 854331831 862974444 97951711 352154306 651718959 744029917 62173811 263408576 62391001 710082850 62705494 716479663 308315659 704188637 856933274 984926779 983268922 991471426 920491775 993023489 427711215 853777197 851172379 870817956 486982198 704852016 309480922 559470247 165263735 533042426 510476848 701798137 741205094 830083245 248475902 534570810 760059809 950740378 209155113 462141244 900180858 933894022 556617128 805916149 669295682 824454944 805839361 990893039 993746063 998663915 716025043 809778622 223131662 920995669 234641335 437879124 434204920 507801499 846319991 854095703 294776016 419010271 772671272 943312214 247877081 777408877 944530115 958057091 184092525 546547926 943389359 983853221 382050177 928939166 418606471 667560497 695494846 931399103 482409297 534856474 247434324 890570699 263031029 605878253 109842847 137708068 227948525 816501548 626646920 721834334 276100926 860888009 758880816 767951243 771718298 826283382 503346144 753962075 665724310 694365279 246493780 247215172 637749379 933904784 993686482 999446903 748873838 979060646 976755970 988929890 857580296 896883784 469040484 686913760 16708566 719702079 836279543 974328671 917228526 952802487 464523491 785610613 461194472 875348727 965319832 974985701 99169357 474965563 931193109 976755483 607456198 927628745 614589829 996889925 811893620 934597802 680616376 728786979 190043219 509316669 123219187 967585985 245378949 515738691 349737495 650163349 698195791 729554646 234573939 587249934 31543763 208895410 849649139 887224524 782862780 859555821 267758154 444947585 471707754 945827269 475624646 556118275 82187466 780892599 194092726 772820444 808245934 980740494 263779287 566589547 294420283 530325121 723946352 772172613 74887188 104073531 141797914 490597405 253531476 637639158 603067289 869749787 800503847 862947065 36036024 172416316 728543130 869258715 878564287 955274123 473107746 540398227 314935517 426356810 658620544 732013915 994134107 999955133 640317008 725136216 89399868 202901572 255530962 427535267 659917016 730704997 334797200 863975655 109962179 201466423 733263270 942027733 391649288 925070489 629395002 662607600 681700643 739328524 359069726 402753641 812790188 836054837 984660658 984760289 198477602 755575624 998819665 999899378 153305922 825139676 236209412 723670273 426173027 604719943 339390078 858166430 942429305 973052849 706707145 765129579 750569247 835781912 291312712 954132369 90335114 463856613 642353806 825600242 275385552 441026582 993267668 999391051 737316184 866989114 663923457 964171970 639244290 964503908 542897361 863465816 616834365 786076123 316468555 526960687 13944742 169873542 968971050 970022478 643657018 899703442 825968714 909469944 21671553 761862149 457689455 671228251 12707675 235979108 906374728 906562002 327125580 914999085 906205031 913670926 671485291 951919719 825072200 869615376 371491599 380482768 620754086 758634473 402812838 789885930 570344537 691574967 125328561 738608941 123888431 879135363 666752894 867161625 623325563 647577752 809408058 812208358 414095051 673890823 520036869 725455258 737677625 985602440 111189902 805271374 107712217 147655399 425577841 844462699 608071406 933893703 629665144 935386392 554857700 679911082 288287684 983793813 451791390 943220143 341388311 902431794 179854402 595681915 426636983 665306688 860977516 975534677 37994691 870453568 728711146 888277987 149808182 506333871 667975832 824479907 147657056 217216891 566853475 794190694 63339494 529081706 130049784 335108821 289790026 537006277 840950682 895638566 74323446 764306048 165839090 882816617 425136199 945737213 550315570 929757606 430780115 545994311 759208604 782419470 923318341 982891494 383086550 907068471 406820700 506645474 542294390 885068301 679531812 985627931 968755753 997804035 153270901 870027771 644269566 977048421 358744226 406898925 8839640 764925975 703031705 949329217 226713262 853413594 881536098 958821344 247165603 992074358 227679305 875895865 26088119 81140245 844238069 953513466 668789633 965737704 555064470 792667556 234632084 408329848 96076460 603584503 949397731 988708036 819956503 904030516 488181695 549948091 134080476 280758501 104890147 324636212 839309639 860168350 829688124 846670624 95684837 958003417 516895539 852237644 544564307 909085953 253221326 849213939 355801157 855587412 324447172 807093783 824766867 898576116 890280544 961587894 411559675 687324823 630868266 679849068 446667455 576311194 402158072 876089659 645417744 918742204 40856255 975667614 439474425 694205350 71400930 750728068 481272697 853508878 650744206 724042367 221426405 779432141 605554317 995180516 712774802 999796514 273916356 976806648 208623213 510472783 850103199 880647634 248132787 965980013 185785916 195712226 911099447 986698468 864037922 930858910 404937274 723764135 454184572 875955430 347846738 509097301 660593524 910357239 610866248 969602840 761375107 982810208 80935536 425337513 832727480 893378240 416548476 565797574 653194401 761613030 56927875 269987735 790052653 860947088 291136603 502174354 738522671 884708532 252593097 636492247 613821186 812244600 847304191 929903433 803420591 825097556 410741652 846231150 377073045 561321523 955941722 992389892 146719020 403895966 791794984 850464480 214417086 459750231 201093941 962993377 76046373 251110686 158239497 870321776 544127707 577595999 178792998 245303195 774971167 795082087 866344931 990627270 817859585 888943995 732544392 892479205 894887106 957556136 611595471 999244491 556197100 927146185 953526615 973715558 676993467 839547499 668931167 856254309 872601388 924393471 405359865 828469832 893670814 931054951 172924942 930942857 863382179 917669582 821016105 969231205 634942520 753882061 499232895 855863131 11854167 373671924 878697742 914463497 809100204 809220079 88138337 107647731 912908287 997293953 114277640 440676330 192862385 774323782 625107202 891151639 901709850 987110585 778798232 798742171 636345956 952418959 632372342 988092269 601069167 678308653 614465600 721893311 524892133 785204856 303202119 747103048 942299320 990125085 892261571 914855060 940048199 944612424 374893465 506044384 843451881 961802314 181813327 979104138 102336444 413822278 943475913 953608631 75298297 491149323 329897804 703773354 559746629 845099644 414608733 958176853 421776687 956119409 982656508 994633664 197795058 620848500 463643165 743784064 738250671 884703628 609254949 612327406 445226832 729741522 397498939 828038736 976818016 995589842 858739923 972235927 880488859 945696296 284451415 431169567 944285812 961064102 166207600 229173662 705303418 932275522 78418361 369240886 678887601 739889515 144537818 497503598 167706547 195136798 378031350 937237953 578118487 986443243 538891243 651899241 982279405 985533186 425332920 571580290 422227146 542222804 349281434 412310275 250043214 803935760 56988377 361333816 279335161 425941876 605276188 912308519 903082752 990318548 750877831 887354313 152661464 732698756 629510690 713620986 597775534 906367135 23031873 230360283 403995167 908004418 940755005 951105627 294502532 761222440 186723496 393827913 877187305 897007540 350237142 473552426 747201041 866972920 27609346 398026577 198914842 956539614 395684520 827776586 342032081 506592435 252335435 710610887 378383304 510978235 687303353 704259167 163052190 479138018 201971050 599167635 698011903 981849674 13846106 326286806 821621861 936746287 135534764 407937901 536113160 924374704 468130726 956484350 644461277 804227199 931758066 970859256 667969032 930081540 889962388 940443859 194433038 789455959 195891732 236707989 831691690 878129925 791610817 797936317 617842761 884474143 180325679 681153309 847732047 890116383 204852383 989247578 992216536 998810081 303225595 483552005 927708271 941509181 971558277 997196162 628023279 741344650 397809052 824311743 116858765 345247267 722157825 853463331 95195407 779526889 879827634 944001674 90773354 497875743 278708266 740341314 594725122 614979057 333784448 812413877 897259737 996929132 787245080 999595399 66869866 693578911 908115662 985372318 188333904 249350775 874965450 967638627 381662980 471800836 36104162 617491313 225328227 690202309 472120150 613751168 58815390 326866376 489371859 732502022 446634389 950653912 901107346 919082710 33492494 142705014 589445640 856776202 886297972 911008280 893049597 999833005 292923606 645570706 203117310 446576291 651362521 764061875 499776008 639832141 682910264 847685098 274844879 343892138 924251723 970084805 259662959 947971578 300767890 758604433 343310014 819907289 876726955 907500155 294802939 476746925 109377938 877744895 528604782 628019436 840245829 993215608 270736279 739378822 873981514 906342840 298340516 350293935 835441693 855995968 482830412 779168671 763436480 966100141 589402632 764253948 647031595 938741858 74519995 729785199 911194211 927892038 948316015 986676392 200261228 775473988 579569735 874927113 315004892 676056695 444794965 541592010 874364262 928564563 299078546 846408613 69747988 929583022 205176140 783919268 161629900 380546646 805189179 974186298 122436818 446531946 217097182 893748280 882714176 898562400 933395169 999146281 968374371 974193672 676210522 973792523 112863638 314167350 179401781 488195356 172963626 920820186 517300996 723469792 997181339 997320631 619862054 943656340 39343826 991957520 308249857 778976427 976261175 978008867 78722591 833505636 235102001 355868848 299640245 643272461 505607695 721848224 751778594 947145431 733909545 975395427 841535843 979590482 829547514 915088904 96235882 865925044 673065256 888941045 769314339 817296643 40193566 833743097 905900976 925072940 587813064 713884803 423484344 604986911 265603234 987193941 479541144 595562919 105111585 567033465 659485672 785972119 791242883 877478541 309322009 403487302 373521197 389135132 383074671 876822537 79944695 623021676 819971747 848799094 365223836 867377881 787448884 929652670 440082001 904308858 529385515 610585714 386363448 804262189 561166574 678287820 287557331 424324104 969464560 984866651 951606757 966082474 19522597 834289972 890587826 987053151 874614173 886309958 473489596 937519791 967767227 974790716 186081563 346403614 481710489 926230091 898562421 912096945 18440005 228798524 384147858 571992428 201435956 758250768 663463703 894124055 216066217 593348088 252066932 346531490 951331100 964788082 518013906 933150665 222378462 381620484 953852854 977933454 786390459 972053754 745617479 862735310 705691325 939142775 153417966 904069151 816008526 826409560 112034795 673783714 737490003 913573036 650633555 847839160 963159290 986773322 932777478 958432827 921005862 971369313 24025471 236348667 766138091 843530621 497623038 975983581 743646868 819905947 58389861 878681568 4687682 976002710 331337770 424177881 918101298 921629762 69575059 559355443 923766935 978401689 589097116 934804572 484799388 991323309 39421050 892189921 645105083 731922152 177338301 831031917 802298317 879675812 662327456 674053499 678043369 865636084 61961241 892242434 767211843 894852187 981382700 995924695 647088341 761768405 976714717 990982717 140308115 329897045 287400330 960504545 103088202 792125877 797557043 801819777 105601190 432512351 41043564 233868265 743077874 771467931 935672938 942082776 748626305 988028024 504704410 578488430 67786967 499175466 326092108 451434847 363229071 413994671 582593432 843063234 907376766 938947868 393508534 857611578 880529349 911564428 800723124 875449748 598946220 650364779 233906717 903257971 667533499 975946928 462568200 485096546 389543905 984045158 240531166 851639974 723749395 895242645 827310798 981884987 740604774 942599688 656009081 833174040 142518666 622261578 568118980 739651582 474858083 660175145 428638610 498255980 951692192 979470388 422263044 469925871 238569181 828143754 240642369 372216903 866674092 919933534 751382 345849160 87166121 174661201 973083396 998656972 43440504 989536285 238970149 533871091 258927595 677825385 817042725 860813053 395749769 815578118 930440762 989610174 668360762 850340457 303176030 836640948 679244143 687752947 825658622 931521019 59358691 865680722 370837884 975488168 452998704 782193836 362549430 415239312 267795383 273804657 207548667 445373493 934517479 936850276 59005724 956966655 849801039 996521281 81317828 112170615 299979685 809077204 643750542 984824897 650990873 938911417 455498877 504117000 787382497 992061623 314311159 970893520 281726510 436529877 84120790 603377033 657460195 928630297 905174255 993622117 307188008 394310024 123297166 571668069 871151860 885965830 296138745 883513470 102126218 709160265 656619310 771696236 62221069 402841286 556875446 844576906 497977834 614072746 450106763 845838285 578435799 918130823 367415831 806855740 868861919 905027440 807885818 842079898 823646504 828052815 938229518 999214469 310075919 397392913 389767931 650792555 61232417 987940526 890818297 893812555 844515707 992163098 724556467 918858822 665660842 702631600 44078532 362920944 819194434 919111002 117019521 525509042 638514503 645215797 125232334 626339903 298824667 961569494 361629052 505297736 448202892 742257058 157900292 634746818 766738957 857502532 257022241 300543523 387825628 818509705 865432648 926703694 710432793 737695880 174129885 757230665 951372792 993770951 751269840 889972120 771377127 820379889 594545674 718120593 389018132 985994557 318969230 698932309 631323281 868790647 869578277 971926729 994583429 998299259 519335897 522064635 986825358 991321370 81706554 190664373 306663927 540724410 98711639 128228397 188083594 316276625 755340584 910825897 185232828 483234661 568473583 842773241 472603164 985218980 968958637 976628017 952336059 987080296 876793614 894672099 916102735 988510281 754239865 974507422 724310577 809952098 70474941 707077608 809263510 922103024 251165132 956670004 317688040 638056757 63138080 485488848 915686690 970833811 511579144 791447590 233250674 734023952 890336602 903662233 485741106 886915444 256832729 320232416 750684515 884408865 748179453 907367493 299013442 562931052 112110168 347591342 826742358 953280301 57052691 578078187 301361416 662947872 252457426 749092215 375272408 697668928 241517881 943747945 591151757 816356252 171644602 181377772 424025594 671028373 629889387 853877952 755721879 805147051 511835650 982348706 337741811 851853206 647722864 882385845 98854522 393835808 699293279 819290219 172198308 482177824 56404121 309587934 806811707 880893551 331400181 768014266 168646773 641845316 570028549 913966218 64096432 307629337 293406635 467245372 100901824 939386301 415260143 897893200 660607429 867566659 696864590 702795578 233694542 652883397 823475846 866744462 618132786 650549141 375375054 970863927 305146250 479658468 314419801 757854259 923543673 968332958 275903795 597251688 956560799 968993939 473042568 597258311 998988955 999494882 935356875 956704000 710921235 733107042 780459795 852098290 44672275 501052017 675495235 978794073 805214225 958547676 358242449 873032423 450260325 641287489 759211943 940233283 676893871 794688987 269309287 932215681 769344952 891205017 131832394 149951265 259740248 445580717 183201382 841983210 661090400 697024724 785479688 989314288 365616965 581893399 527507850 910744337 699802701 774943055 431613746 458463668 982610570 995096134 172969900 789927745 555031642 566219141 709516134 801132257 508403669 532335564 261355529 842810245 479432361 581665745 615292262 943856003 283451795 776447321 313299422 715466651 775165935 920581966 194406878 478139418 587261387 587658143 21602138 185799813 200473049 373533857 312591417 633353536 442148947 852523369 654390656 806715715 674397336 788623913 464233764 618965157 445827063 704785808 189039886 964125492 1768248 426254189 613830255 631196908 289495266 409766834 164033597 427229416 53484776 168139341 748390380 801311654 717698379 862737593 332439280 358238829 744441002 931818320 5314300 734436136 736822124 761032994 417953894 477841288 164742305 702788035 22140238 987611218 43966085 885907156 340074110 765370786 932671954 974977550 856539827 891642370 138948971 287310826 732403910 964304387 617106332 680265242 462908884 505676290 770129998 999494654 747287013 863616956 244063035 860439591 724512221 779769616 264057474 819226046 950953441 957577508 194223944 966430094 212333129 293165665 520785700 747980230 474056023 742068101 77813427 133918790 861955961 940211542 785111283 959320572 848959557 970614611 309726840 359583947 737333588 793154838 938743630 953581463 411115049 995020855 779623936 917428745 305610340 850293565 488437642 533932635 677649928 967258383 170411699 560693422 769482235 996546254 224411975 720592814 336194815 792775440 96241278 286326167 144851379 373986028 416875813 519279227 293439508 985087125 754412447 977122915 997983833 998153249 706143520 971473073 343843634 405603716 156300144 714701016 681298266 867907564 579467534 579900545 143944585 360070428 60849569 722309815 674327628 999018885 665883874 865373096 151734317 266585124 535096623 623312898 135749539 303382803 683709218 864144781 486715942 835770837 940698545 969284886 455237832 801654421 300993333 796092455 777527720 967646897 549644520 760032744 375597176 860309394 834778420 976021907 25206874 364756679 462456688 640190860 846583552 868495846 493210370 879811866 364136228 486338094 642445915 643718486 124613231 687757253 491941935 640924828 954466749 957904461 863704531 982224252 954449512 968477602 999468815 999641065 67664798 725722871 147749119 618531893 538146439 863380689 611014469 739682171 156286912 245506454 813887231 842703596 849278200 884410758 468477389 955787103 941905048 982512267 196346685 689455984 217522459 480080306 129402910 881026371 813277048 921185895 869651737 870427295 74312417 541210555 910994811 989606923 787392803 902131273 33073232 693483920 490892805 928086693 306735802 565742130 569448115 972704990 836602057 902943403 227545450 832780790 761837932 962645760 643556475 827913319 749177113 915772067 461923843 943738744 197149302 568765462 713947452 749296266 61558803 970681424 920184831 943010155 234978745 462313191 458390587 819517441 377482045 517636319 480399946 802292664 768573359 966396310 590882479 682491993 51069204 171842585 261653637 961372733 41033838 964412286 407980478 902315216 67821231 357958909 869290486 993272220 222743309 311352442 355008774 714145969 289724700 921401776 641769989 709785346 941212665 963930380 669491170 969735378 104949019 907211224 403224585 974495241 529408655 835132517 852787082 888240749 823173259 902652526 521706096 638141471 541002007 897701112 653932827 768976436 194263626 596678435 17668410 984389194 663534209 761262216 675720717 933768460 140189373 306102469 737788620 881770927 591355980 647428060 837369564 942624649 594079857 699682157 824708267 834630080 403667667 546046988 291769291 423909073 338249916 648600244 654850176 811844517 773038936 858253062 656827332 874885132 200528682 537394557 318328036 820948887 946107951 968720038 692815564 821141142 504437478 917548051 602188339 902962243 425487573 969310169 298007211 692360985 776254983 908672092 414800423 457414962 644571242 744455039 790649038 971280016 487802821 875724018 96195123 924763868 896986196 910625224 146236236 879927572 750717408 783535904 925518317 960567125 1566002 12884035 377836882 549097406 664059901 740288711 207147110 906121626 336154565 840411101 438534806 797484061 824139563 898764002 806728747 996289118 76548149 99448333 575912644 997621782 75151632 144972577 865958252 867821828 479715658 503775970 679366353 796488870 955003184 982653901 817964898 948976344 653430292 808517968 17406489 646389496 728762146 760929531 896955775 942671239 173626637 455514695 558209291 640119325 873853530 876587084 627112045 894806612 912146871 926898065 442820519 784543259 440754862 497881277 511866259 753536005 900592220 909887156 167813638 904216450 151592550 740408183 198647958 468257338 537925461 553750123 721787598 920479791 415466914 765317437 258150546 332264897 160630970 520682718 945959197 960114781 530616067 571984733 876991132 988888091 457602410 877908138 149405106 724442110 40429341 94604469 879498628 941293213 629912115 792680811 142319540 856515070 148962126 525748497 743550274 833302358 311159499 443916017 440144067 593463429 153413583 935968704 18521867 148368149 926092704 996121192 859998930 961839799 965867175 981693218 854443724 943754958 437036501 694401783 27906421 272245080 230162886 944055340 222850434 586269401 116772551 297388440 496650822 617143289 496979179 534342091 184398316 636101447 718887116 995929390 730137432 919412942 277373052 380130115 673349799 906224208 782825532 854010457 199684883 908613211 516199864 933302909 867422407 945272402 398502283 682685161 893514725 947185666 917465462 973766198 770801902 912245269 703146233 926835392 167319537 817477983 775745011 999529831 317966083 757033840 684085447 905388608 828877128 938674294 605288347 998167113 517235602 538247217 780114127 877319184 94959735 944768089 962351147 997395591 776832179 874308618 824174069 959179187 150793386 447878279 716347080 967020735 504226088 556557111 501596064 654676323 636564482 865362821 626756391 833461888 927162667 973690548 561620052 968111423 274912278 869894836 286771658 334773727 311280176 853152388 785715731 854908632 374805701 917805200 490876388 602813461 624710474 857089655 641185305 963141042 551867881 983037535 844803145 952658190 324753816 728784800 442151274 822498632 506505207 520104322 269286951 989785247 254328043 963841381 110154987 561631757 753425387 771832414 916880954 957461809 972127916 998720392 672521567 802941566 145583442 939905193 640384030 839587597 422196194 493447958 256997760 774808869 935746982 968227609 188353320 205517956 620654140 934923952 751054978 785797081 860105176 998756115 564557352 645313741 748065690 888822346 61725567 194071172 61532140 343748678 666484613 972237917 814984358 905062660 580519777 785707130 809411866 921925292 109367157 773427952 655850401 974438994 768450085 898883819 146333080 262076445 86088451 966920177 415247784 873916820 544093692 623781776 887769859 993464671 822116665 992063887 256771290 667444429 501159637 743993181 984485249 988466497 215891238 948965704 10151501 690303251 681269626 803664232 184110503 805484301 25614918 329322770 889010938 991893784 687653962 792360377 502182652 640404562 175895592 346592389 830070210 896955207 450572957 994195555 136285913 154087013 437290021 905626134 616984313 981044047 388353649 511000706 177490870 720902546 688831837 797237547 369799127 799128107 47877788 108515626 292090224 494377042 382627373 983168870 145617094 526378237 24440083 233009983 494195039 922799033 492709692 948147619 57896160 567146383 800851288 956348998 115310109 702347816 696521219 719405961 702340760 813285344 500072816 533204992 412928590 957363134 428409374 803107234 865042308 983527978 205639526 332234880 894308813 966746735 567832688 606665688 156725326 871493194 119458749 736099546 886719665 948959867 858052049 890839290 244792758 754234738 866322446 916883238 15697242 226359119 132215122 496258453 135571954 770189216 327334993 423729257 289087804 487689432 748110593 796362752 525781426 586783113 684389904 984611922 423746598 795111640 456757373 818594336 640913106 844140185 264950675 349110093 700062952 839985237 397149024 785781287 289434769 477098381 454105185 932647805 318495109 754247129 741367061 844520793 810376229 962303614 703621949 705372584 6507223 583967579 927900854 969205651 238462497 663188715 87442880 876395538 783873546 837447736 123329277 751874644 645589247 931447549 709247866 965079849 908762443 996757125 32017731 600732234 404846684 467061277 959755823 982263694 750045136 776385379 870972329 877459031 175028293 354923995 912448790 951122802 104829526 110181127 289152847 674466618 870594436 883769000 86873983 309507710 593743855 632952515 281923555 517024739 450516973 595326276 918451663 979004771 698066238 889907410 719132569 725231639 445373455 743484805 654715572 694637436 919230069 930680607 215959735 328130565 429001728 465849728 471255405 983622074 270624236 742921854 660392457 934249098 693251475 765542303 485468939 579663907 151365756 916299841 555540673 829271883 976760049 983311358 204226019 714038393 468554326 523265492 29103737 748796029 166178767 494222387 32307886 836750283 333381857 724814484 587362385 812278103 683351160 792345916 436396 354381561 374320053 712442760 177892008 779648021 369778088 579736540 710615771 975301556 755740731 910671324 855043686 910908849 201566965 916982737 373450233 874120453 947205642 967650960 424590325 963053951 457928965 818347270 494648559 856003168 220478894 502735295 47944819 695349358 447021371 644254316 425227033 585451482 768752873 900684711 505116164 930136094 302875685 440195872 487834037 931144371 290041088 448477432 844206272 881357372 963494220 994308363 937938972 955487706 987710635 989826123 868018420 940232551 1204913 856442805 676952661 970626896 779741758 924688634 816771948 893378873 627809648 733847830 823084016 908094946 708565545 861935748 796466082 970288220 797028798 966866969 214151518 610784644 265086437 278944111 399011427 445547281 677887926 701712240 586259159 908879977 878505643 954912590 16499147 566139124 127958039 717658364 389773002 530517713 803501265 990408318 555472538 761353936 654297759 871327538 143932349 778790191 565378097 614449594 963155123 996705744 495467339 870916446 604011230 645131301 703308198 937060495 658963592 941732461 19114903 534000686 222076601 365123373 136634637 212248295 415693449 772898689 973048661 999619920 876485422 964049525 877994702 972960031 536711175 724886317 968587511 999087809 348313549 724957833 279449057 824339970 540271801 956649053 168243465 400528148 348547650 576132230 254321136 421357544 741987666 893162097 560513643 893050606 987732035 989951185 964915248 982123183 610468199 763380471 901139333 943797727 374561993 978097944 404341274 915921566 15846949 293146487 140900071 270379960 435362398 614101488 666794169 958010308 122155964 743884375 522399129 778127899 760377509 826301060 736001994 967371946 521783132 950954609 247328901 954949618 309314091 720137881 95078665 119343724 65111168 245879480 312972751 675278977 137542858 817788098 243829383 435565930 877427435 906327242 660501184 870289634 374892945 958306231 823605788 828661256 904115656 927216469 755585136 889084941 216418956 334760270 909200030 956609353 166479224 652384011 504745334 667610690 276783595 420811083 957168463 992099618 435309632 548437001 538808024 556956052 858989471 869289673 441064473 747316255 531181830 776132386 683445425 936857199 425339946 852115962 77608910 811834498 178484118 514595708 428872150 612230956 581743546 956494932 835604235 852407534 469858137 768664479 287295204 419025891 875012469 880293508 591962588 906895264 878093923 919522566 67710684 604846648 309351405 983177421 636703635 796629386 430825559 800152204 136752911 983599578 670787582 874543125 153040770 430922189 401988365 594508620 393707539 406211647 741370504 783357484 118975714 913471733 585098560 988085492 113553829 441196297 809568375 864583331 268328203 424432190 132732522 585001635 51050908 893801779 510193295 564639522 720209229 873816171 285432224 571545032 209059035 574206585 984728100 990941500 362505818 434074812 889629372 916748062 331436292 947115194 735761039 875446260 552301949 767808707 318764855 998107355 57063597 685708147 468725967 675566280 556978447 572695490 104481256 148637310 503716537 928737566 363094226 730705527 90616513 148210475 452230813 661397373 765553609 899138804 16406822 963551402 405968316 760189048 33273251 553460342 425171132 921950130 579094355 922576815 1551062 470853055 370940240 972411233 539078294 904834110 267379485 910665117 310370730 534147577 273530075 494857137 824506336 868050979 245663186 936905106 953378764 977587420 977435001 987888459 406698977 659095465 478784769 962831219 149692737 569721249 869192056 947040395 967488014 981149710 724892526 933062294 65596940 331135025 114762922 768684801 75058946 853116390 75834131 128246028 962729580 975858628 992763732 998032191 411603040 835193858 999915519 999994737 300588986 677279058 499339931 554667197 16550325 124211754 939732283 972412543 33192303 150032732 545655625 698814707 515400852 780435569 324306290 644188035 703159767 815693692 5863782 970484012 264259654 331261825 124355006 287640477 872951797 897663126 796413045 834368896 129630483 332416661 136046406 914248962 847879178 859605619 382907240 814042442 615557355 689052232 415621969 587348038 725860450 833879847 135687641 583604105 739334733 772750493 390019508 755483471 900975056 944501838 467387580 706108195 284756532 816166769 630414547 718374212 116794251 980060970 719042836 804701974 379945370 853075213 620024814 781791188 172994248 891779087 504233168 805241696 883656064 962336759 461702385 875058517 855619714 910995697 303236006 590802678 38981736 66833495 650706806 753890999 456540410 899793399 620695824 854752323 421594554 649407322 708078442 986287965 385897086 391890247 319609781 463447104 300895202 668825639 417014733 931358084 102975333 784446172 130530336 283355959 92364888 767476558 669768466 932146982 67260730 636322324 123290963 156006918 125478361 820882866 410633393 652632328 561059260 867237605 100428191 529555024 15104112 876208739 961441031 982922541 261348439 311194734 679381971 772218130 502174054 799519354 835203442 876527825 744095750 983778581 630260701 643460343 216928753 608530591 804657647 815545029 451299028 478070374 243023455 268494483 45963817 64645538 136300495 390618033 847810122 975206290 326384147 572521854 822077546 875617479 445626118 830781696 990768284 995560770 829022948 892567182 203144357 293154016 173297481 284254020 169872467 956281680 801227260 878739450 436052400 664289370 578870029 674257187 601460238 638428422 335278066 642928380 115006281 489555987 321170753 721035612 319422796 428426767 817001631 911304776 87827164 758001763 357078748 752287492 133369964 202326034 684843476 886556890 336788230 945966308 272639170 842723327 686509593 789319158 485864121 773884996 772720070 798386717 177192435 539585035 253867579 591140222 512121741 883275497 526374563 719438492 364603273 721796383 61557228 424557551 61624002 528173527 730356176 942777008 857636660 970047112 272571984 280835786 976081203 992048391 306913046 369612098 926810957 937685099 179045784 486813860 649440532 826882593 769227650 873554923 762076486 980691100 192105172 290316526 332572112 977161969 382691392 572834984 558595445 960148918 818462824 844787094 459674068 506670211 357790193 393171205 947026954 969754636 138068214 679056680 928690409 972357936 198531668 486777564 529080150 736853149 503506205 870383254 760150698 764076558 175555295 638556490 770339549 927081020 142076225 436964902 17066165 86625005 254327015 732114622 776381910 869359881 968813947 976182070 854081512 890682579 69367507 138681604 186166551 671863965 32712659 521095461 767547923 827320209 132606553 507146206 120232939 392865045 283348480 421889037 518965948 563020565 132994847 329072768 456029367 747491149 183044997 836949515 626368034 987596908 649332343 800045553 29681406 301279459 463431383 661755491 720849693 892648109 186233094 356716200 541457713 621327880 117812817 308536533 334135114 584994971 833632187 986466411 375894698 471376360 132109218 594992675 331324576 763067855 988500533 999603871 629030882 954581910 160754676 210107817 932925042 960307997 367218736 436857489 304175015 938963936 99932038 832735554 927864346 977442636 747475272 829560479 830311903 864922267 750475419 933531046 76399578 381092961 365190059 468122091 960189000 965069051 209415396 624710751 866786245 996537696 70151651 883970807 217241827 485454357 706330287 735925715 537232461 568814063 383467203 785523919 732370356 874404354 35367896 398119586 615343172 800445361 902025671 939960366 218932278 352122280 435764943 467025294 989680078 992210588 199320482 605326611 804202153 860389524 486556355 682641527 18834384 174641713 385208180 605262237 343514167 476246247 43472078 680311505 701408252 915904720 667439086 752588041 756016695 946442616 937869867 945195456 83758447 303430824 309011849 929673508 509709756 976080388 260608468 470675458 514095414 779792415 724048123 878671856 449955664 498421750 180767504 279314514 791419568 859199370 344739959 440478283 182536321 844685357 537774754 847304613 316051407 518468988 262117992 298261209 815602951 869676289 178948682 538097032 484862164 764339048 642523405 881138719 474122415 648583198 89809627 833103247 786525108 926951241 505331346 921376088 391712655 623467786 291438848 880903632 357615154 896999838 220550729 608626630 573691483 950637126 837798270 855366983 172547131 685568237 29962080 141862938 283599033 401975501 260556006 525246080 734591960 791592818 738952001 934616529 476842385 509895969 167534837 638300464 100721582 958356626 695360429 991556631 707968067 869730538 492121613 937551750 839714965 984731715 500231341 636947001 400509965 757495072 540496005 722760688 965606173 970696745 887980909 915197143 215186039 474320669 482604804 571692479 753213845 997158822 699407297 934942865 431385524 647726730 514611795 603434036 572025390 581871029 432725620 557431915 63588671 743319483 554503302 823107523 570501941 831369146 944208043 965944724 7811433 742588608 371766300 929459841 815236414 984514717 57163631 287654809 2794869 807056236 496944579 554627814 757954537 980633994 299963644 392442027 545839957 861038208 545826684 907106016 591086343 959578575 566955870 584331934 966711471 998493145 428653885 939155316 597116681 735415649 576062642 635112714 834635057 868290221 682377495 800544849 40453579 834986313 242484476 848751905 453864028 793942178 550477530 914069480 766569708 823420309 22764160 568310592 711270179 912620707 508990153 693478283 189914754 750942839 226107399 839978497 940031903 964992961 593098700 628495677 684990445 997801285 130208874 362495443 819433445 980127775 16344038 372555219 527768727 681221282 156955177 273586358 238316175 423958610 57324379 424356441 151432473 922756076 44317133 958036656 92513242 563212663 518063430 823477027 605966495 967152772 158742609 755733173 168662539 977953654 791098902 862022909 669541836 799838961 95688070 460619334 175085008 577820392 66686605 448556756 643532887 824100513 339202555 359865074 44730698 984751640 276807450 837636409 408224266 428206985 500398863 575550988 244639776 802917075 320981259 647721654 658557451 883617763 796040947 953766011 271892862 476474262 80153563 883187678 94847367 852734384 62629308 511570455 554222599 872174273 541368027 605026734 356177696 968681347 497216739 911599754 598499183 677834712 982509474 990779590 242357282 276459885 662158303 665555765 552409707 598914461 521541457 839857413 860187295 969663971 748830126 818990581 41017601 149951776 344630638 924339958 42812503 353126760 757815837 927457087 680254196 835010762 580465117 993930450 929662084 936100193 356547273 835310489 137761559 615085848 143938844 648636156 554571878 749557345 338259111 613784786 893885035 912399456 868355056 894496840 135938425 694240532 512562277 745513082 767841186 778858277 346715738 492920995 12259395 142085096 207022675 218922182 201982815 236573343 317874371 433045076 312549760 530225629 844622032 915928376 401491790 869657325 819240191 956811378 10424981 399137293 115080861 933976319 864562650 928167356 612051346 957623931 317818690 728494592 141409830 160380626 603980456 735446333 326360874 681969995 997857237 998558302 622208486 681249701 929910193 965689798 580633374 712972991 970203021 993118481 241654805 920787149 526285995 569382659 861317673 893905433 768132512 881358049 158779484 679472965 527333371 832169994 641720081 783139532 431704619 442022322 329393996 968449867 983917945 988452223 243254478 942609500 479812276 715460296 248027484 866063073 478718922 550968892 521595824 814644649 913081317 955006496 177193866 284160420 577405726 948081232 128148967 690148475 542417769 556650019 974705787 993645204 306391886 488442874 296931699 395921332 974716135 986964173 657765063 667712160 895448272 920126723 995846872 995908706 232617129 565955932 146370762 668176497 57201351 426690177 41571004 78476663 610872736 689235901 677782233 875345115 597728071 700437288 505162568 673292348 127398578 969146056 554852056 565094341 619034788 743060179 970560452 978639966 181204372 549664576 993091725 996818746 57910727 778865356 307144327 527387649 191740687 841960920 360264540 640698026 506235785 953367818 763285232 870730622 214455434 547217655 769686282 794463210 986224071 995247849 262340733 729970753 461215008 610651298 995345473 996276582 628048057 845769895 326970571 906661762 447624329 582365400 573529680 948357393 362905693 786453083 967178763 995796828 418972123 861838229 26150682 70302962 882268976 978601406 407406134 415291522 937160407 948751181 81931034 695768513 960219450 997114459 519105209 950725691 155464884 749430687 987194437 987750396 230910813 370314192 168342861 443335031 75805720 154417006 856814161 916457439 700234451 711307595 98014800 171231342 85150140 334902995 740260349 817976352 161964301 907029840 95762519 601769274 72281589 196722922 933997660 938443072 369782117 946473637 511600739 526123350 542632914 614771284 660345113 974514305 601024223 768535968 43101950 667282749 680832601 937103919 208973297 248063611 200511914 991812065 102561078 176961871 347691848 743029467 456920287 979384231 680239557 686977769 308623426 550131417 205575491 442014954 273819855 373263173 173657144 802788264 783457791 841938186 281546897 468975171 362046242 510834684 431084886 464467259 127318263 537400672 744822953 775874573 375593801 551824684 491763448 517573944 976263268 995648983 448391850 802352670 636565614 663869637 829799918 944565373 531980378 627914556 89080259 939488506 634071781 915497638 557436371 789965256 820835913 895554376 79531735 287615444 49120793 727393998 807128035 819585876 700049183 748276198 146973590 420729406 456939460 836880678 911621263 921893956 452420401 999612073 744639633 821550705 830437939 947280652 510933833 975569145 179007418 659250397 76821524 107326638 967908268 972683959 705289272 997174088 473786812 482208392 862128138 991642979 82664716 218002520 983659332 993885314 731067757 752851764 943384148 976944967 624592994 713496371 870327858 966210693 114344890 917375694 316637289 654056633 836888116 927249651 591450762 850834525 791929168 866519548 509130759 551043277 863210448 889919013 128692655 372336511 550028896 782982745 165010601 482450804 518853849 992716379 686620290 943297811 319526818 642207415 796351280 915022087 827970243 865124188 588404033 785778834 724520623 903476656 63149621 436432136 961761074 992645326 659699463 930858749 604879230 851033718 710690571 998797657 782385637 968891086 613686939 713514195 857264975 866467190 657437829 994203132 993524622 999697788 663934747 797530857 930617776 935161117 781906672 980696651 88862360 931765204 829444168 986935673 517797287 921145989 896601016 932210045 335456869 788150996 353452526 424035399 220507109 427636722 629307079 854777842 650222566 667271326 318862600 320534974 374932844 963721984 767381645 953389922 499710563 917864236 577631110 845398104 235175882 745723506 373637218 415188214 114414062 573443874 646791451 922025335 872746426 976242931 328110049 578918564 322979761 366011439 671400614 959058118 487916907 991503280 675789307 730257790 63167854 213081804 844451005 994711240 863034577 900331529 686208676 828768201 304038970 918578210 11496442 739914756 661157223 702397589 484114033 911034863 986020789 998716182 814614611 877417766 535044426 542209402 872450267 891186929 279492171 671989633 810086512 972828367 586792856 975974675 611987833 682057004 383426453 385363281 397046216 451101627 807042715 844972154 526398066 915931947 11709659 26911368 566693572 757483507 877050365 913767304 526547600 552528612 636812688 977064524 170607952 599906950 909109312 920862812 407896348 531128464 692533413 888906247 711772571 986132921 346653695 627025248 783169079 875542108 960818613 972094580 521027912 804600605 365101366 947938401 864027033 971559140 663774558 970983408 287033556 771678062 927691220 986886101 276835535 354661538 223913804 864118455 949116650 986350447 451292611 890222709 447754313 472983627 430644290 523033307 277994713 653704571 950902913 992925666 721780977 960246506 595697312 814681741 180597665 655219010 354790060 752718378 386248749 841339297 771867397 993302302 253185156 515668786 784854234 887368925 387249531 983359267 818555603 823879611 105079654 535020450 36592575 44063174 647760705 790506504 481806309 783156058 660043554 901839015 560684750 640667206 466097786 812063659 815328680 854835464 104869424 250094538 702945139 971535820 166703590 589514704 828891629 954544006 952031503 963577004 32955657 176527778 515683144 865533293 176390703 922495779 988124312 988626499 550727643 758286874 46234276 284901600 510238995 774868529 373942944 613560065 361096520 675514853 450593211 848935387 392587703 677435586 330987424 699721472 245653007 741936768 472431500 711500369 340265446 606463724 752079840 911239216 915416724 924941932 152939098 321491048 396109294 487926679 974069772 990234931 795461894 989017238 354285051 648700284 676104582 904480115 398379543 555243584 629202714 973110342 505126405 585301035 487639012 616944026 990685885 998062248 233458860 646951611 361670644 937386761 134775175 677083751 211670726 219009124 924080238 988882542 387289512 523904137 96346395 979126094 437410445 510000316 244205316 746892027 368619353 474239002 258601741 517012623 528528087 556498780 364014524 673598339 368055841 562387286 805224643 865386705 256664795 534288275 385006594 913802056 709170178 881993372 736641497 937996524 920526652 955260240 37355763 978403466 375786022 568111987 87454600 752109126 483396778 587373582 159967049 695473653 587901766 960518826 804730079 808402563 426556181 847707095 432383492 945581182 467277615 955127458 387272029 597036507 787778091 827491872 79201447 94990849 535323066 544422268 275667759 657216342 849752377 943652355 283481056 783887334 619547452 995827932 702432693 939919761 312626313 655580002 476271472 567774144 694765514 824871776 218802275 590535259 899610 630534249 31507384 259548908 762557341 975195834 144123676 933025344 769927269 970199760 332541184 699025912 882161796 946673784 971182474 976371915 11698294 640308064 345151473 890320228 811329080 919681926 131335998 189558990 804125914 891220636 768842602 825368875 596412868 632244850 954293460 954504310 488848718 643689143 279082623 435065515 703529800 907072000 753484529 887615177 432053535 980985003 590463969 935919965 632638079 804591158 275624138 744181906 746302843 888550011 573124439 830276791 517135032 929685360 686150543 903987176 201379961 995838990 236504026 474166718 977290349 995839820 152791821 861964969 589597396 627945989 678505798 958184902 966796637 975963910 833732200 874167319 456172925 885009241 468476225 808420931 869966528 995412710 137900341 681952887 756906986 838198200 268493143 561655436 889204939 918347219 418145917 924541449 421282299 546302454 683077917 741234218 5584480 294779686 453354379 467809720 103636690 604144274 429541164 998800825 73137937 616729331 402182942 641832163 45059221 509683248 132934256 460735190 73202300 961403195 634561612 842513730 532157247 880445637 489256533 818098371 475584575 610201509 173268111 499524131 540030096 693822932 564862861 647353251 421356036 893728753 346672136 867318759 805693964 979710120 250885229 371223177 990961008 992623084 267758448 347349797 112960733 150639056 869478562 990047361 818867750 931991403 612572626 941572334 476331825 796787276 261477901 263568374 945126421 973885019 769549948 838803793 271258392 939553746 134668099 491979367 280943652 858385499 678655649 743200568 598062604 632730893 253029010 750875691 46170173 387482082 377710177 483733461 243272784 384802676 682947509 795778956 127230735 740974030 578874904 953909838 204172535 327061946 193782784 288863659 701828423 991273133 577800135 792134957 906589509 937822021 847295145 962497219 156351348 239915206 512663198 932526521 876894634 883102886 97932821 162558651 272794374 397429233 23031074 132842026 536269425 971114651 225256785 650486416 247581049 741173075 624115461 696125718 680815760 748137669 541610196 660678229 828820229 849077563 684810433 776539444 391587206 471074179 62336921 423667690 478165987 515388616 751340378 779568276 370902105 384487142 851398376 871470067 236417735 288405622 805225449 907021825 479605306 715698264 287479438 935962302 105056736 720222135 952167805 971182706 724040851 759343377 19081950 829640476 700391707 736239638 674328048 831284186 108475269 335237276 40084221 91755912 90007837 951419592 248326182 918221416 20723359 544230922 305161467 869265101 639244053 793099258 907680563 932734726 551297611 919618262 587123784 963194561 898679757 948390503 704905846 767728798 646700429 719653594 588609738 625330686 61586157 282830631 347530695 649482526 510012433 965994867 417358955 439035772 218663897 895640009 110067590 272714086 131349308 486040688 751615092 836577949 877504209 889055223 592478091 844975541 860387601 986502017 235812841 547486030 859671058 996117956 684161009 933735590 747044423 973648017 835695898 992370535 523022091 850046251 809430023 822121691 464094017 499573390 384405055 568635832 651632990 985408283 56188457 835102267 20133407 456784458 240921548 843716912 846140438 913873989 854195508 884061384 242871859 495986248 306209638 559974125 809752719 982057327 228349722 877412898 709885081 722051665 153010966 937395218 362600848 575414740 660507777 722286178 579784883 988280271 123800417 691525983 307321157 911851582 255473331 488708137 880335240 968448304 350049736 590541410 854281027 905380083 93660030 392650256 68940332 804143148 592573650 601627214 876655407 899589082 62257820 686868945 39783778 95982406 234369134 787350570 941084512 958558866 14288396 289982994 636189012 910531324 529527630 808044156 571178566 893576465 249793905 676438972 34607243 489655925 825434380 846020162 349390218 913808221 883749110 997150856 96568404 425019379 194433474 800135384 778181775 958147570 960973199 965133129 742014932 997382618 467061729 862482734 643894755 813122564 318033319 377397175 579797778 807351447 265368297 970983024 913183014 980091148 252991249 318557244 989244889 999058489 749988993 895329693 762287409 799236895 12072968 466995159 904329975 926920452 773629449 973989692 791450791 970604737 788140571 801201386 282563448 289182912 370287783 990579988 109178393 701002463 245983207 424674702 862638187 909005720 950455645 989437459 589818922 815581958 904625308 919138146 335865285 992356689 935500154 937855299 926942031 997473776 581812726 875089243 781995465 856038100 709971651 932201684 271672055 899063089 588577270 609365496 643703576 963225936 397962234 651037647 281671380 482430718 572606303 753351535 342032621 444402111 309019513 857449565 658422043 794655027 273499405 857303878 186179026 811113905 422006359 715820634 563420657 690680320 267536808 849045475 888860778 943575063 152488396 895604320 241377212 650069157 649484366 677963635 186340463 917469403 500782883 627035569 690311255 885634499 670459251 683511119 171595181 380306651 796275778 801466120 408781849 670893959 528292653 989341735 959349546 993382193 471005854 957064084 448092522 666913216 434695848 475552036 504852946 902079395 479938972 593606295 853824577 880851376 907884506 998115497 336078823 404428215 315365513 630956989 4416395 339251544 658595018 707904903 208359264 401161889 521592295 708504661 709676459 733572738 78997627 891694678 520572034 841068751 317894919 500884211 636744933 657028360 190114735 435547963 971495182 999561941 262625113 604880824 610866005 830906094 332854437 627724546 660505531 863485943 563954565 748821783 301744969 660224766 257461934 801894800 124222418 901109040 517622230 937891678 430422303 843432057 526155066 895387234 766092100 828456548 105076982 869356212 775779978 863058448 120848852 314747901 938279968 972756344 343863980 868735973 525224430 530097401 539788399 551219665 479727883 510534213 606549809 801793569 859295111 964587853 220300292 338530428 645678789 725193071 49585434 91947499 6301844 776201576 875105621 986668376 677392985 700094304 652176133 944061839 190230958 936455358 926556191 984099002 40547049 534768995 733322837 997740259 982203290 984486501 907245395 978389490 369529123 431758606 657030604 980823088 348626986 841455244 804773632 849226015 563103682 582028447 884161494 911641032 567150825 930178628 880941593 887675317 236540234 900291683 158240324 268232941 141760407 749677258 912666306 989883571 688670015 907517366 424173457 592553825 92810428 128725731 907408047 934783369 543863096 934106222 416758121 960902202 891826574 973436087 541541012 931765333 286858880 287097286 588805240 612125615 804707624 838421938 49969171 841485871 90860881 533146242 587898960 986491026 749559885 986298816 639618977 886694150 929543946 957905539 135297616 602071436 910419989 953909080 805605807 951415275 470622710 684673161 529002114 601176967 228392037 465116508 730293119 797309242 889911425 910487726 701958898 943998247 134558980 560135272 768609908 877806525 918345818 944573553 788783039 816636734 504937088 983544998 395474656 651165662 160902040 440954321 283430252 881818115 615293745 808684804 312504351 401683427 744350646 859431641 784769131 862851865 640971634 651078477 15988796 459838452 694348799 718356586 428893751 965794140 34819001 426353258 992167235 994185308 585468634 906400684 90204740 257657709 395152361 415050910 458604923 913866802 266196285 847521602 52054017 862480121 184292134 368319306 639516327 908380406 537435955 758963588 355104339 894793101 229776831 593138825 90792912 206851657 530146771 929567518 231815231 702950990 439888846 968204657 396928677 486024269 114031344 233477357 598076208 717299036 749230922 897746154 63836644 968294373 72581073 564673508 192612803 449225137 798465790 893383233 511899978 706597705 309411137 971769398 827341815 957419152 510129866 702356143 324225663 462300410 917066346 986796249 495825318 782161696 410883924 720827339 621943293 796177051 430968625 540544347 848828181 994040201 288213633 654773128 584318637 588748914 809461614 915099264 725947107 947124912 868243206 873297786 387312756 834611602 864219507 889816237 931204879 995592884 733911262 835569876 143273347 959061660 396736359 412443876 131259677 578682132 168804125 218560450 630183522 872270758 866904299 907880076 471684899 958733869 640060442 671902392 463216838 491480112 641367923 920756112 887802841 986559522 387633940 538131121 682349385 925218654 351610880 873179455 370867921 897441863 132913336 701217023 418211859 728365765 674374026 887696162 781890568 824001728 741094818 821864307 743414358 856582371 1555726 47642802 665214975 708699758 642152781 939026664 467642116 584723158 5575223 310044180 131752668 208730769 990950945 998805393 987367599 997466358 251577151 310139879 608699463 928861422 438341072 903562482 654049930 962892967 404299882 807020417 434520891 757449504 36709088 985601869 632804461 737687857 47564953 639133897 964977202 980899029 1272710 372078935 29734656 377551115 38978267 574288713 682044649 827129594 228847843 296172453 195130284 891910573 922010216 994723249 769707421 893948940 90041370 151914763 476979483 765703170 595666878 898304012 55229534 276579144 817770044 879348079 488663074 670250965 428395928 931171461 280795929 628275771 543206885 561240240 883600053 966632898 711406551 844081291 88200278 375569708 16758883 676714117 869518397 887947527 714307766 875354318 277732089 980757228 856822360 964983683 18445732 519845886 532736655 583231931 433650871 694044591 740731570 983049507 780985396 966392081 683110515 813444226 422227072 446101259 675355251 725698101 138527213 693063048 901544777 907354462 220083033 758648299 334756416 776260323 978656931 997880566 19779300 818922445 738960336 991748541 371549217 838253115 807558188 967025252 518858788 749725288 795855372 819950689 647069392 679618972 583374452 628041753 668369251 856630765 71947589 403474015 720117835 814829532 411769337 987963438 929558059 986348860 371960728 456235716 845987006 954664895 207660861 628080546 212639593 713840447 407843814 775866098 786868476 917411583 767493521 811511110 35625119 665431724 297901044 527448175 918021079 946762370 361223102 757239216 330675886 522757908 183546901 627561569 875636066 989634168 326959136 870788961 881754868 965129188 554723275 586541380 589438814 962563590 87325579 91429663 481394957 567330428 193826085 870114400 862781975 920423734 728906487 844837090 787861842 948299058 609539705 724440114 822856363 977853211 61864164 835597519 91114166 906788278 484297200 662156053 107011 556487435 196919380 378301611 850325302 999789090 510262305 715413133 319472317 349746307 817209789 824563333 365635217 613698436 824620385 886164557 339176691 966426917 754496348 780835659 14242196 152703302 175809001 542077829 873427519 915327157 683626527 778640409 630309092 730230575 332270529 979961401 154884528 230360260 81051960 290692906 69868109 998943088 133219089 958826866 932304879 996672213 378303790 661270749 673153999 906081482 716339601 810003140 959601063 995866524 815218409 868024388 264649710 545309838 732864870 799204376 441163729 916818544 421136 548776145 343867654 923236723 101028428 734313573 951684862 975253817 453811712 486715810 824649016 985589920 25511549 82576785 643362079 823466165 592428766 841613942 896819946 997204751 63443692 136297764 56694729 789458741 141385685 561883639 919399246 936283699 328167296 611177632 515080561 690808414 407123745 497453531 508322820 581183587 406148492 923931707 457428487 758740725 541167681 613547828 642141848 888245891 409604962 653363500 764165231 917021189 707869792 939569993 865009669 987711650 310053692 675638873 617481309 649834316 8903952 462587087 605383906 605712611 21802222 964302085 337347343 521349925 269663793 495150463 101616460 699143396 96795365 524236743 772690562 931909272 324331998 418025105 615033797 675306125 1229540 711237793 855174211 986014885 427961924 726636296 120852023 319266642 242632850 322284000 955944625 998501047 966186120 976389023 174728869 862660716 641232860 732022649 594754342 899122145 943858206 984442287 65825922 891949492 311992174 578133692 40812357 357670628 620530825 676665877 331712579 525829491 457302641 735429245 133256071 593527029 423014239 639597198 28035170 478545789 454529432 577622554 424923680 746163042 176118559 807288107 290143841 947223941 291394018 774058110 339653074 586638365 912166044 924941046 77417714 490741996 456989523 745409037 128370075 259976737 739215974 906436427 357573826 731206760 867553039 965299550 502534237 832088019 387336968 510395544 84107612 323460318 664581865 878645362 618709483 738367089 166833230 406120287 131611948 296876586 63313527 581471828 889039830 973143994 288409716 883633686 929283611 942694464 702418432 807061921 919097386 920558387 955154836 960585390 779266773 876049347 66901402 342674788 355177174 727849387 896724360 996084817 816920621 919032206 208892523 365247688 849529909 912484281 500169286 845533280 496140955 620839073 379223284 485610680 621785429 854277482 480020421 874311151 792948389 808035122 674314865 689211427 768281141 771217665 307368272 967253463 117047396 319452911 467300945 970484805 970693480 996954201 724434247 901078149 519406166 667147204 826279094 926528699 525608408 980323212 419499393 775512318 461674231 665657133 950179214 976192940 593243857 867280495 16692075 661730616 844308209 851517362 111463145 674475822 763778185 914632556 249685695 583862183 838801684 855520026 159281102 288703789 419853704 484195756 941070549 951342839 42590983 758695670 249205879 272184632 750591863 770063516 161159644 570211673 746379222 946805492 784364191 891213763 219520970 534793797 717329936 753158235 733563034 987485994 894111283 933727729 382896531 671760736 80382671 309323247 252049124 677982299 101715988 593784297 761113077 834397287 66421037 583414626 448207371 673653784 177913232 861230172 298145494 638634868 253274694 454723262 176264383 534101509 124319880 207249554 760416456 838416938 297114542 544005956 17528124 196295601 769777937 980785596 488921526 570888640 576664996 594396093 692681623 933649940 515705872 829306280 843155835 908642592 347851144 815533509 946185898 965223500 371468546 886259997 482014434 606757220 544775013 699892257 464708177 911703921 540600199 653611153 219506681 728774799 671338938 881268776 962942694 996914587 875170219 967620246 416622353 998473876 147694304 722829726 50429064 282667979 895988127 957967758 486433646 580948872 863289145 956919292 987778310 992661786 962982125 995460244 413721488 842048279 908206041 997300675 636161802 788460040 730629654 895203146 639147118 719169924 546185459 636250984 480494047 587573564 14830368 484391862 200824066 309324292 113307823 302828453 152551715 344649842 508024009 660701871 377449712 512103552 812589190 876703973 345838341 426196367 368245795 951296422 277508067 939029999 883540344 914969657 228028338 793704088 826665545 915877786 95870019 643843992 877636727 972985712 14450727 154612425 600211740 615307424 533724668 843053388 468542310 642846205 566912323 654099630 205940681 578568447 999078859 999295893 102930100 505471559 173759686 655571298 420291613 596305185 486533287 893600666 945544548 958586459 914026365 919220832 772189710 894033336 692908736 810584361 415605273 837789643 779694348 908027962 377814404 813679572 675317036 901998522 675953594 872464372 632283429 673234903 509475103 600430016 468455240 614273744 489442298 933007169 448159899 962411878 414201195 948638128 852204968 908228959 865766567 982331528 434603527 847275687 285157742 353876851 967268375 981078694 193571080 925151524 41032113 302962937 506695950 665947701 272916198 602967495 667956290 707142777 59050519 563726517 909539610 911055839 197517589 767853815 285563752 707098022 562221935 828791343 698492817 988992252 838803354 993422828 756227931 864755994 198642098 295690170 156889564 498506503 811152729 998608678 804731995 936119833 280996101 954256988 501920586 870244510 841414997 918284717 127653560 153841284 775841999 879499872 430568137 549070668 917130719 950902255 244105160 604538208 804432054 978095606 814705754 951208903 698527003 723377039 101177042 372703755 215978206 788109274 102367054 659738813 856027037 978029336 320497986 804247343 210780055 429439959 93102783 427131697 698581972 796751578 631208240 981417031 848987703 918584782 771030244 955985863 460284857 922819896 323182368 835743916 168709935 569738714 48627455 640616202 152747031 937418434 526509579 768546485 126203387 151901497 245934678 981931665 205417485 703113179 533855716 630760805 904208514 936030317 459285986 991085950 709210272 848949471 14814932 902698478 584097574 815824941 236686927 793935747 215979806 333034072 543775956 802664891 914590730 929517112 818835582 892869778 743486476 992601976 110161765 457902705 859720905 883832059 678250050 737357119 528626877 942989884 392969145 394613209 669936933 948708225 280358053 938133414 38619708 535903390 334774975 776615462 149476734 692510880 788298034 855013131 845573208 855201711 441998404 999479397 426382444 920934201 289319044 863258531 253436589 427087605 405923878 859234883 214681945 971760812 976527674 998054872 18659072 274857426 974514335 995935819 746336141 771105953 8101299 672955506 984329087 991468661 340875573 719200275 100509689 225359631 200796740 768014031 382779073 690567098 561856933 627557915 730940233 958106541 489998199 910433018 779662453 919679834 418489691 426153691 807679498 876426149 799370369 954916958 649934282 879688523 270241841 399140260 711534287 986566817 348991321 789887943 934835791 986203307 405392845 807361004 553083861 686468453 523660278 919344963 172812982 893442460 75383766 247537406 60956467 101085805 699800775 719054276 71101266 903539528 175625248 995618082 957034276 982771774 944584619 999311059 569301047 908471170 488820447 545760165 222887565 662810242 296376601 910160972 440728263 844595487 12724653 964298794 430792560 479568797 487649004 676320879 535720849 792866921 838379283 887629993 535166188 921225691 753426124 769264214 314452336 723346595 97404313 211022244 423026754 494092504 391940662 859609946 84892839 530208424 566979598 683597303 442140376 595579109 191531163 332991930 858284809 931437489 752029543 778911371 768133877 881127634 750714343 973310991 140461675 533030676 681268794 833577082 154170207 940305834 182646279 183583234 608086193 621628916 420215339 493767393 974211142 986261787 196379267 707743732 298134825 362676341 436733425 875987292 328532027 390865736 805387072 866698249 872510059 996467626 184640285 349137350 489082946 956555011 537378595 619072893 179359962 720909785 455903087 584450781 760986916 816708280 670137552 743332910 344858215 507278751 895010500 895290704 586811587 917925380 81933079 841106397 995690583 999421044 309978067 576313805 764756342 856364002 733969229 809054827 139645560 346397993 741416667 853084956 155594139 214145933 214302524 788144531 682152858 886881623 228145342 634866706 942030511 948620289 991040620 991394667 744197045 769132963 220199380 340413337 770248998 854122516 309144249 774604380 912802286 983031283 602271721 841052234 671430845 858188461 71970608 78475785 743294280 802264012 739111855 940346759 666214060 744793376 300963212 947888339 697524703 807587173 199959945 422311405 598399177 684869619 337775463 406469751 886689030 961410650 195990458 896890811 47700707 100884576 607083375 608628125 827196102 877811666 762747418 987178840 829765042 888027461 964339013 983063318 986050869 986844724 942510973 990847519 807709166 939653163 260068674 530906068 664068140 848687644 908790470 944447746 144358945 594160662 367941679 664171643 654457413 722755937 622278264 833808733 554203757 815754682 703947775 721898950 681677503 860670706 589560820 834981187 877668025 917814798 747688094 807486535 577846365 830719205 202984879 772783482 136704591 440671571 608686579 921627170 693879132 840542246 680258056 766306395 858353771 974576065 104568020 575172376 70791450 790939799 756806518 771120064 966034700 969080891 92006379 664198661 366045079 469011526 75062212 357820580 592763023 806576053 14809434 249124388 525628876 769884041 478211925 711709859 581600925 879469765 32763207 953367179 359783114 918186348 246540312 464322201 703758146 994342001 727201825 920125743 980917132 986800033 846119792 973900913 973944280 977635700 213046490 381881050 306746700 825948932 405334158 451864241 322139110 538744304 911704619 916602004 754876887 999402772 577201209 900154565 230729642 822228475 940948463 972146474 248545346 374055717 419505423 462770565 424329422 930511139 547731325 890225018 854657118 911912315 749502653 889604436 502129706 976004243 543454106 922606182 291455737 597311324 199886502 564524299 253755885 266701588 605903145 623937926 661754301 858994897 734357139 998807131 174273997 476173312 495113055 896012306 860661382 955997848 299560569 518221928 691596698 761517655 541965000 599121277 114650212 685175955 915563413 982411138 216014861 983498942 794799530 917893898 635615591 830721752 683506546 830175352 786765779 807281766 388232537 858697098 586080499 836879193 770863181 983191285 620084810 691203031 412314974 483777004 472825246 641683989 534175057 673627448 723543899 792254566 986868256 994655088 503231545 523615619 915307235 963232832 939053434 975741632 880909291 976586786 410229866 994400113 943406484 999558432 88469697 957012792 22351150 397771234 749111366 830517753 471905050 640386505 603221254 611855592 267592723 330561840 226949325 922844050 304387690 524839292 293484510 731781653 736715714 752243089 425419803 468573756 743256769 831553802 464594363 895230570 180105721 322412040 255288588 433231858 639258769 765925986 61325487 447732858 278417389 560114942 117224978 906950247 51995211 307816486 34810994 65285820 151387179 938037314 801033366 831182965 421057885 647781545 757347435 771559720 861550082 993880193 460962620 925708742 226559659 864667469 350643226 534685805 961470027 972406773 580921716 860681512 575324401 834446578 19711477 242840956 424449072 735545779 452040860 872289897 851291727 955743328 810660684 834813363 859843299 917731668 110499901 302888383 70448259 409569847 19976468 927761721 566954763 710531183 769669457 820102633 830090534 857173045 727320180 948680596 833708693 946368777 568528358 809969465 609937257 989079312 710244834 936060373 413558540 642926630 617673625 760985428 515313112 665960820 283581190 411743291 519482536 665209885 466695833 736392749 845095450 922599563 304229442 622505122 805868562 902364582 814591818 836096645 651810834 970171446 760831145 896022717 221315837 537386774 579071729 720201878 425390892 828538504 986627612 989972159 257830405 326994470 916958712 953170791 369396055 713665305 977957122 984014774 479257429 627852022 577663291 706172304 373210338 866427035 27190629 590381958 24766013 754843794 681420723 791292903 974744585 999043374 655129100 879453224 947653451 964355373 342463908 826996687 893533051 904352195 594966193 761859754 260324500 617485805 470657533 887340580 121615784 259750789 195773440 679254886 707754225 736450330 145438876 695567296 292394535 411681616 689102627 899317078 115928498 199764144 704350707 944544734 955424801 971133130 812676230 915439049 189771566 582191587 336000706 643479067 20074326 106020741 81820886 735230392 799179306 905639101 704732467 970670064 42964153 412279704 22961954 268210974 179083634 744842226 928090165 971724387 521235023 810988102 710460285 867524799 905374659 921002587 451426712 612851525 544866711 912544867 261636375 697741590 628446972 935455549 36905955 945743496 285974761 464194391 600284293 756176923 4425289 179502333 881380361 935735603 611830704 731885643 828213029 867948743 672809240 957092775 911444794 945454265 705192204 707066554 728047104 847786596 395448744 900382143 990159845 990436298 643437077 832699154 970231733 979608241 475264902 586059420 467672428 471685900 834027395 883345077 649079376 659583977 138079381 946702024 172610191 259572692 832902092 985710441 502444734 990790317 593676782 787173530 566293869 830581372 312054401 843617627 258742649 817366018 546603922 599910243 722213129 841113799 371588481 919678974 435457054 588278476 248889092 388398486 151658442 991983311 115820976 835537049 629772423 825079826 419595804 912816446 167268371 894443915 736671937 890563366 749590684 960395215 769623878 797910100 566433461 794231366 964278222 998496768 731992358 805037326 314828445 998510353 554998949 575412884 40587377 434845890 798706355 848505461 780609395 940941419 234189230 788026573 467845400 780731667 817613295 997935215 322795621 687357770 325087877 853627746 316719784 739738769 445237893 969799203 916705495 963078164 858654519 912266173 458193233 958303343 714991372 994161931 872068710 913086391 46574688 966136648 711976686 778391895 563276046 964610703 986628208 992827528 745225889 850186146 252127014 707277477 633220506 989702117 790018524 904695671 805675847 853133266 533333899 624320331 181877753 872029096 423527971 574439858 828536817 944779310 772203948 909141864 603665660 933337914 712806626 975072306 704744430 859087476 344693450 970990112 687645655 698982213 336517021 982237155 700713470 867807532 978574468 985350528 939893757 968097390 384130292 469753150 362417963 800061356 791136180 963719674 40355228 437005903 997214857 997784301 857087776 882016168 474907290 633568691 893005264 922951508 209078349 228558160 325794881 856396021 209376856 324489889 522270776 556911314 797651063 962735119 721094 735731229 78200284 962359378 485411108 532009626 790193643 839976624 917734747 981514451 166108818 911293163 387652432 854518688 641565907 733194865 194975231 342802734 696308504 714553999 665161732 696575671 768865639 890228676 235552359 684071957 605960342 613321634 381902499 389906043 169562388 949876651 925205169 996975372 823455808 920316540 63043966 440099478 480148971 897255370 302938670 448381212 975982669 984032181 991193675 995558623 40361458 403035290 46250079 312159212 351759401 654427456 470419272 819201003 527032550 969384439 940586505 942832471 771994191 982145499 898951266 986341041 998828173 999942164 59448446 172374499 444333384 601121172 209464589 409405972 434044058 601205441 713924744 904976086 114208818 754510296 393263212 868172074 538260506 678614840 750341219 760384218 837990700 920330697 331858189 819687013 647569072 772880282 703596213 715894206 689902714 702018239 599194523 857293966 826320537 880974117 547328147 643667826 715270245 888037724 799752936 945977747 314975478 640964084 698881858 871804405 408765904 978279256 395441702 480080946 547070664 864065736 42987126 247748014 973124420 979759510 464452198 832264203 159997405 846341007 976914334 986970958 901909980 973768010 832679331 847301021 947080368 988013354 441276800 588695680 263522659 295337145 255743681 996484903 193846988 638927703 376655320 643098379 791646196 999517386 824598950 919726873 898853193 989115808 349882395 983852573 159397741 940385283 619561521 679739296 637837327 954643029 684679962 701581590 982884122 985148658 861190718 917480850 538719154 708598677 525863106 694017754 39553973 679583960 409762176 728228143 755054373 839492283 56807402 68009366 880714856 960362210 570024006 619006924 696170474 767055134 823872519 981392420 664375143 919484339 898088871 978133714 334018171 966955213 297792324 411829248 99546117 128503145 462366099 827362174 261327729 664966812 993915348 998798311 255154022 537665899 927871276 932231615 844566428 860786516 97006916 526158511 848634124 908985487 953990115 975669892 420091772 749518210 442255578 460941067 558527861 898172100 10141381 927162270 641825131 954859688 3305729 879380912 586878270 633416108 878333981 995464377 507410285 880098231 883490618 981369257 792884393 943535281 631454570 853544172 848705332 939730604 684581753 870934678 447450395 514088112 547124333 666105023 453609856 815710470 729018490 749830042 980081734 989731961 141542911 862038138 751199549 968323025 133960059 344994004 11689753 764936455 501006905 503624382 926227871 960820975 915176856 997670591 65326004 932194977 125607033 219525034 945518641 959274921 558192085 974961788 901122553 906589113 733491552 796095489 133209046 816317689 545002898 645422278 515144049 547883708 611859186 643026315 413924246 508600562 308499169 309759201 283099368 501990051 52986351 510675599 87029793 741521541 714225321 915540373 716551395 997249550 652769809 924947767 37757033 976194437 665638161 953733926 214494145 379324026 503106980 776140040 390938417 550484918 292300672 932140982 165945292 290163664 18414070 264318838 848473174 930743212 339319808 402489874 560353051 711985566 791531683 827338631 70774874 359584520 749088782 869592025 223286288 293633378 109265933 538587951 375495101 737207862 263747074 764313304 500753458 566720970 847883521 882891750 597327992 980481674 892147871 962281853 692555825 786234372 327822073 574722627 651649421 800219296 341235174 924494191 491169069 821114746 628036754 986179239 204549824 843146499 250961070 554359745 219296090 691974836 307863527 905775052 128257613 500928023 409090317 958566978 513295846 725267629 890562872 903604010 214461705 542028022 926979439 979225215 882976042 960332070 468807150 714469781 57808997 396356528 548766827 675080279 86606573 323602843 510476833 940071321 167991981 867531279 487979735 940148864 905484006 994258824 577238885 864970222 627415538 632223634 305614337 341881144 224083727 716561671 465931445 726235810 767999136 811325563 789484081 856990905 728439191 852357318 371265436 520958377 445197378 893692975 514633796 665703241 749828562 752805121 760775373 870707623 786956073 834919762 260020616 713343532 103057943 459380951 203737932 516515389 408364332 692621687 41532212 303982008 128343223 465510329 661394396 771568255 403382993 436363481 961284310 990959941 481965628 710152476 131460125 512041540 694800349 888894096 851671929 925727517 623569929 886283329 337581274 363652611 704994553 968125722 200608957 654365566 433356926 506730492 994399571 999831960 349215127 740160308 366419774 432374948 530132475 806862273 307242995 718255723 259273562 733311390 71181816 721919025 433652410 967427630 865537143 996287092 732297267 834688557 665205059 919768410 525563150 749645696 904903713 913913291 51491166 483549524 36607878 979680579 246725422 908997436 638525051 974734395 97331137 419269306 185057123 397804358 428255853 891654247 724949100 910040765 304909727 589849894 84099932 680749189 275931433 524095914 366675191 642872278 305029897 728630837 274311136 802312108 224974759 988088275 539211403 934633947 385888124 642469535 719166108 849754354 174521694 219316979 412704504 911201862 959985807 962843095 707284519 771404517 994656782 996084183 348901557 850512074 544153042 993121995 188375602 247037541 656487311 731367793 161114081 164423539 771244560 885320315 866393282 902225630 70383031 377786998 990334703 992093140 237832067 846919726 458128866 551343571 744264624 851028546 269542170 844682872 749299702 876759231 764164926 837966600 410785156 533309305 515208899 607996685 89710532 477436459 198960689 932924510 834765598 941757954 626557616 782150361 996116609 998510150 306364575 756854761 459026840 948610338 194058140 503831905 964263426 996608727 966911308 972723674 104953491 166633764 423636003 662832773 831217334 934829757 244085377 744881922 750528541 760574910 928995946 940266920 576903397 973302786 809483732 920083570 81064849 756331237 875579477 907942281 555321815 894878365 251072051 571521981 216426832 931889253 257869981 720707909 792770335 975347451 640847514 931402625 102761319 836856641 348158828 558389226 177594176 331897592 565926696 698591687 159133735 381304057 63124636 372217172 226885213 714715559 662963219 697057268 988679456 994282336 661340546 985182847 549943279 763719445 767959526 969984629 553522554 864422408 189959046 874936189 447496017 837923549 59421369 421304583 218712057 589668714 242403759 417031364 141491273 713468873 663393128 811941338 393362876 401943893 808859093 822673961 91649521 641705489 184875077 755805550 945428142 997508400 307220635 958229545 630938157 817963813 915007536 979943273 970808120 977440227 439276176 457776469 356804443 766107248 758205897 828753321 389277734 604644781 402270118 713448056 268168035 963106560 87793755 955349889 622627921 901117545 199138807 256886502 994945517 998387575 206306709 930045192 217861426 476059806 801329378 847912644 768511820 821487432 80916648 564028620 496354570 548030537 596036565 981691711 943025156 951022335 278748010 519117880 293244750 804062603 416474626 478762074 627210477 834285696 450222992 590709623 460190754 923376672 963027172 990597625 793460881 968867734 944545276 988284304 955128290 970877384 297744665 412263803 711065381 978614243 625524537 895166800 595026794 665073391 748188339 904993631 95009250 498158896 855567968 909268727 369974600 594435446 805673093 829558380 527262221 685438064 436564653 503435298 726878481 857617041 674608160 778293898 830125017 886013702 43977111 431663458 704999680 998656013 4272376 434536453 559069379 917427964 334373355 558342884 552851974 671333505 828279790 930074961 182624496 781783356 251315204 984153413 398761435 884031525 841112497 996330915 441110978 780464792 16711637 621755876 73618671 784469598 105674302 546997280 208737917 361001046 749175835 763053134 974951823 992672444 607463038 769499042 318028670 608381928 120698991 766073242 378356737 931229003 695214122 697281933 213952978 514503482 856460803 906459600 876008415 962071063 727816515 938856633 382575496 545636652 515496514 668515386 375139597 575618933 147516798 526925875 186587504 719159831 596663700 621810681 400067145 884866679 838731154 852633174 671472361 736314763 669948248 695596561 499429954 611495632 705094618 727723921 151650171 480369606 915614232 997013665 125676747 932330714 700987192 851875603 538360329 720886380 728552177 789971166 916293032 975518787 447097212 936037991 530720174 639600904 287445360 294359281 593292449 932862149 118477157 893680235 602049752 879506663 71216710 722376093 839010849 953714675 784031916 831406303 172980429 787579124 502748722 588434661 565520248 905382400 695919396 838690199 51449694 601178854 52428995 634221347 177005075 308784170 220143946 841002288 163285779 695353797 966796153 994221844 408089004 542674202 630916539 653768525 907522140 974190773 796703802 918572135 592853636 981934830 307913032 693743681 253675863 271038475 967123450 987195900 504045766 642555890 611209520 807868473 693034436 923378637 820800012 866021476 903479400 922549341 771351394 915064690 993829883 995247808 615878055 979382646 85930924 980500409 889522453 902478849 944161777 977930170 402328588 470108828 757610749 895953960 581219819 625284912 575953837 857941826 814066292 987253869 99302959 583094444 339881767 700868788 523182718 632809166 232555113 859806036 872230145 921066222 855575899 940877137 698573369 964212444 290526423 945523144 860785925 943959245 991228869 999265158 469702751 921722451 442855491 706652175 114202273 988521258 664718458 819600273 952124939 982923042 75176499 665824421 373895824 497590491 577689386 735165000 997225595 998075468 353076194 773041849 427670474 984109554 266994135 473768669 539227047 559917133 895472599 932003469 97641275 119979673 902316511 918848889 566989916 985014497 841319408 855023116 665140704 859009261 456215358 872198607 458431969 530058015 468104294 762833029 518945765 899778199 157907799 711943084 170074528 257312527 685266907 874875215 362835422 380008659 95341442 519732511 418988087 480533442 891097973 979897400 972290978 998820385 137079433 253649654 433595152 985478656 365042012 440295667 143591643 581306592 896997346 969081699 202951596 803676063 685909159 799497730 328662505 512141937 205829637 253595764 411343968 553183755 557925357 879434576 885931437 904958828 364259187 925232688 346790487 615835268 565471869 771752394 586852559 897237182 786388829 987118542 79922936 354503402 689675301 770921384 356759357 711131952 235680286 870359660 74946706 206105180 570505682 649406686 238075581 508864030 293334946 367593672 929359422 938462809 776690897 913103946 273907787 477576900 159370168 300815136 757138803 925975138 394529445 815316296 642959162 736277181 607576510 725389820 511131383 820713609 6678575 820749967 344705047 618583040 932009971 932868946 169387939 876058842 889722171 968239527 459736592 712776704 90673757 443020066 162712245 934295003 101273877 624103400 531900842 815039603 332938110 618224211 600869961 840452150 493878448 822207766 448373065 682649157 799381437 975598841 31090273 214994626 238652283 613817854 946490665 972911387 20895656 881526712 573975916 778998770 519462311 746205009 746844901 862578524 722692702 966324077 823796187 832885273 693617352 798879034 896515514 933383480 40365448 157177761 531055953 821206081 477424761 525425102 581258246 864293614 952229968 996714049 361006310 947521637 920201971 948973061 739873699 892447641 163263520 188500552 971964509 972718786 710750369 996924157 410949999 697765407 209068739 733411430 396475638 403763052 705624635 919133300 390561842 782978037 335943082 754302181 221008004 385581491 136007236 594654324 872769605 980529086 683178088 735383019 905903425 909244861 992854619 995574061 192568245 676860621 359573244 752873952 878407724 962625463 147473978 202813628 997343136 998347909 952802866 986614974 119634577 532080128 647569099 837073730 707631405 961000694 860754350 959349750 806667110 855024455 554441978 771192445 718422205 910524054 161194325 189732452 192391116 888067756 698017397 781586702 724003202 790928079 498521274 662974143 914424056 955538667 171816267 710008885 436204694 501838921 309909765 529661112 223659348 456488432 103154036 156116834 543561371 694840735 152256198 535145566 381020677 669474585 632946934 986849883 876642875 949402527 991884472 993899550 125893946 128831182 850122226 883436076 381286309 426192839 8845431 998421972 392935251 996344953 555791941 667229829 216533435 454585584 401937445 630818585 771005035 899417454 351713589 403392135 33911395 224313224 711550784 985343763 708242853 787599498 720752059 760610057 23352381 213316419 361072178 374685559 585341743 799969704 401017817 541286232 952744920 975038874 495430578 852643917 72829609 617269927 878009722 967695965 13388839 771630126 294907052 541212799 363806992 588630826 821679842 846830185 446939299 746179272 615065261 807492925 705896048 824456841 192396902 964850104 680036859 849006779 589678204 973132225 557800545 761755760 631418955 686386466 676477739 688988520 662538465 897192010 527717919 752595076 674836489 839522961 572188533 773404752 163413636 639721014 480753445 505929045 69848455 709140059 905655811 949383626 918154201 959543182 638099462 903715869 349956926 381235679 778946338 851063396 838567706 845181216 969886893 997748214 624579687 959731911 613100778 740986107 434496897 872857614 105462996 404495229 169037634 606914149 764785663 856639879 567667744 910489718 352789388 477019330 203121808 301121946 592106372 722232312 345959053 523636123 414840178 815904080 480632579 727298566 60810975 718277138 143650223 237627114 42379483 507322300 408987059 728666564 316782286 430650296 492154846 648282899 345021969 923761853 985983695 993641799 853333242 923082182 745937660 790912627 365829305 427246695 80363399 830914271 875125642 911929742 183308191 541296202 795641512 980074339 762367959 775078804 347172936 899565166 378659665 596526799 217930330 302520273 573180160 922234566 344912947 927452023 578791807 611959072 479107010 709844210 807492475 965421717 710579458 777252604 865439552 913035374 764128425 805866804 665241180 837364611 573336914 755161913 788868877 981123190 703446652 704221585 454475393 669678247 381418901 856315978 528714052 762792172 798482106 995176520 771714898 922449241 999368408 999529042 690468740 970422472 4742875 600729449 105653200 810370404 654253745 665043440 514092958 805542044 754177696 843884666 226254405 998471014 185360853 912159195 431961380 699976677 522588013 577311274 315871064 512167982 105494776 416965758 738731299 876673625 897886096 998452648 284386624 442649005 432387626 471319619 593770696 613177310 653168658 723311510 142303474 225932228 783278371 803006751 221820482 488132802 141947092 858424707 624192737 872706755 401781965 716034850 709496828 711351879 645964168 704302948 751274097 936256692 352986297 517283654 252878160 284964816 139030710 538435490 516436030 747689476 83985224 394299508 569539179 656846869 21432131 47026726 325303996 637958169 930211806 973317551 262066412 327823915 609234020 718084530 433719808 726394069 857020612 871367452 167306097 395248657 729043180 944116483 996719374 996729107 251786688 537987775 348074349 448681487 477061390 845388275 908403918 923729091 185615523 657497159 290126406 711912012 246944046 551956601 142431565 808543267 682858582 709932396 860618583 911378919 367803265 997752171 314009487 899856144 298568463 372984675 676664616 837549399 497260949 507544456 812708176 870449056 981611468 998790643 445516084 464249036 207478101 975207113 393568035 676365713 572604391 630075634 260220298 603649121 962721656 968921597 543038262 562751248 519780175 739143536 709124015 886181832 531170854 844259561 812530360 989544980 44001542 779197475 991078087 999335903 883818945 935735959 45135766 708175160 439061055 745919574 127161339 410264762 446005538 695067635 218860795 311882935 214349292 761127000 938192583 996962957 905985620 990642151 115578089 138668238 265111564 975061556 549898855 974900958 744563557 813329845 946346724 987036370 264113878 858674556 946902525 972770089 8746082 947848643 408004082 677749468 285247116 497840857 378575226 514962411 765868432 807085139 782844045 906422632 332284178 959622609 496609881 550672756 394244086 614863777 47894211 722094054 440302959 489690512 957678026 981180461 186818005 228581068 343635248 980581340 574104207 960042616 890106216 923226324 95553178 441272167 886565404 926443855 29398480 405533938 2676461 127574879 101442936 165880885 967202739 972258339 139438627 818087296 212582649 302424104 229170050 363166543 310889797 534510876 828547306 939930156 730562175 957194285 443945949 928655995 298155111 691176980 715275671 962970087 316538928 414501957 531611082 783301159 789374618 956344775 730762767 912150751 846709810 975858921 878082755 982645231 191454263 373068652 354625024 604617290 923746458 949037855 387800261 531113118 905850542 997739945 50481879 671197250 680364537 742949105 516953480 736271140 772567046 875791650 383501954 895413475 676751360 981921532 577617654 624305510 353377171 559606277 116510992 693439163 423961571 589391087 447926329 874401815 415769164 501779981 358663433 590506131 150742732 455609702 919812056 995761064 862360536 873472564 870266143 999099999 681084052 769788143 457811023 640516606 168620473 494898592 714835817 941753903 161753000 718119964 160828883 384220290 801571146 843095723 500493644 548409732 695297234 799828180 463968071 517078073 805183970 942187422 89332430 720859420 787443059 929719150 383133633 851408973 504092566 946608245 746302617 873188726 303019250 330932388 456228264 940936242 818441475 912193609 871918767 983733226 815988928 941498318 547070745 739831036 514798549 882850760 619099298 818429971 796078737 897029928 375099675 427894402 436894948 635399250 806243271 870180435 395631798 603473300 801526737 897095854 353184735 589295680 106736928 126152224 731177263 942819512 932178695 994723084 13153074 66042871 428943088 631976268 27426843 306870827 73799608 476760975 860370580 881568775 495798553 959925606 462335768 642806214 188445346 260012137 280103014 292091641 827486603 838750616 952581260 975451529 949507850 960874004 815782034 827224565 197071834 762363442 978023170 978480551 283634423 865682248 544299385 645950043 640105900 689268930 586910937 962646330 147267271 715945676 198762560 317514283 736295121 939976535 181679990 246029170 623883110 930893370 461509316 904276496 20592131 637013266 564545975 642428372 308898181 869080487 596857585 941128172 824232974 844195217 635421300 897680612 986098182 990072197 168545641 652657088 528753734 937469836 956772700 992320719 47814560 899774153 622294554 638240162 357126810 728379697 846263579 944804582 381267185 870110754 685801848 821803840 54615490 673909633 200416220 257104718 736597494 829195297 862795995 995057993 852127630 929219488 160952614 273370740 723542403 912419420 62435586 957347983 293974135 518961937 103035927 603344833 691642374 805181943 504202300 937124473 935847577 975058173 784817539 968747705 727518500 842461681 413823495 816777434 781830326 925809600 331814317 822352040 166170464 449310056 379796546 463769853 699416759 957871697 639575493 827807015 604453446 843771418 42572564 64791934 68945785 526427481 901981692 999202822 317056274 579898383 892285524 948873195 980834012 989738017 792978483 947516845 102286704 178473852 96778022 135929423 114426155 134112211 460647098 572810263 702097432 932065162 246857347 647906261 681190455 888111074 961937167 969569064 760605384 803336037 935415837 968524585 726956124 959369412 39872568 381595051 558348949 899339018 427138895 800654786 370875297 540872563 311003085 319404668 841435556 874411063 279586420 535058258 937151430 958511474 971714711 996296483 791099988 904502225 559214819 661030842 289559536 694784518 58038898 152996692 586476241 889439988 378098356 812457057 528752511 771561941 604082017 830727112 335554258 708312181 61337265 873279040 571507937 802426292 925422477 988572042 21557415 748936532 941185472 990863518 469049665 684372524 29973898 104977046 885808281 910777493 876536258 995741047 816356144 836765068 80646220 257573337 295081817 627577964 760160437 929793130 662992292 835232247 680446073 753638085 408313387 556957988 920845252 934250750 646707133 741281711 899516107 973308146 170601303 405614072 192265973 841343235 898697400 992660474 254659996 761974016 695782125 791762692 536422536 909083163 493828644 888103649 727128133 789974212 438616094 559509518 791295286 904664434 823868662 911224417 374651725 421929901 35989178 472819874 579314759 728777535 373855504 547270133 90955354 146011759 31782201 803183831 752130964 851861883 174055878 789136496 752979579 931647640 550108509 698562780 918791457 977600240 399434657 499989419 477317670 874342313 811312158 982706487 771210182 917936735 948111216 949661154 977397053 996993092 346858033 947852183 505625867 843846713 621286951 871100958 338899813 462528040 337688562 383967736 287383408 442686919 422822970 449734879 822064543 826503264 730127902 799863975 566891513 604725096 534850675 996672350 608586709 681403719 596114649 933052696 378584123 552354088 924081168 962552979 617721525 868122876 149202125 763536310 429185675 810300413 470394502 856826802 181782204 674017721 252982138 474285521 160446958 414345162 20363161 247717923 406999627 547422962 649349270 792570053 49846990 600226646 958521071 984319799 615376840 657640870 819935963 821525246 587529928 811036245 631254873 987327814 247990872 670840496 766184625 993672668 597643052 684953301 359064225 515518096 998334149 999469966 518891815 521516155 374926843 841492301 993890349 996242665 752964664 862472997 878894231 999208053 412494775 773949753 949579299 982605199 665797534 800269361 982708263 989933494 962865056 983014848 424658654 797314436 296275481 817962473 79580884 789840495 700587762 812218176 246485796 387849909 802027416 969796512 933730090 967026197 360676175 620869237 962527804 983583213 815379402 857602571 971837719 978236002 28197657 626311322 332587123 422539217 469658948 796835210 864640461 983102903 49156345 678874452 739693606 826841087 883323870 894671192 107620872 893077132 101430893 322066749 924477443 983661755 787627930 943593884 21643097 52400708 551326081 690910272 876051175 938695477 664137174 821538744 695289738 983051016 42005581 514515580 216293323 287868985 51486115 287324346 998465122 998777336 489234419 985324074 766845049 876244388 815446440 917152510 25563119 943437235 314483560 357377056 775204694 958230185 47432064 544404695 629185619 960468682 998798621 999878840 143173061 959659518 507023807 756626908 244495099 483628221 51272733 103257333 144614080 232209825 213091894 948440522 106978956 830761958 524493606 837621314 1653338 514564849 883826667 907410783 911892120 961737670 962167438 965011869 330818992 339815203 652185203 858545303 141995181 403469216 54995359 704317305 62627791 291780548 714071712 994266174 750982691 847208908 236898952 751957194 696479916 834542886 707452534 957941790 312752832 548120932 594650832 955119131 675319671 728088358 555146083 820199142 705755107 864084020 980749251 998924604 430136072 743118441 581248357 700046518 277668700 768390311 504311398 855528213 626529667 997141930 796722204 962663398 914120530 967158002 806239607 842094923 299719847 827972226 290092789 468250028 323185678 848469044 972264901 982960520 314094391 464611547 758963264 936969126 492872398 513139262 6096283 735767033 430850122 469614042 507494302 569876917 349028059 430372710 722404451 896301200 928227133 952145147 200742511 887772647 731755002 748887741 225940143 967431599 708196503 951657696 989472388 991596953 183458436 884291597 596780681 915873881 529768911 661557708 760443925 859526940 755010938 860182389 394159654 533742360 436223291 488641055 730289533 931973608 885124829 940504036 988485316 991529225 538568109 884912660 384845605 941603735 669262639 683333648 722100548 872396814 140459895 699531537 346465505 727341264 765131403 939603529 796686384 912424095 4944879 972269720 794318981 860195698 819620259 961634987 842865463 946309037 510111395 635407178 550788109 615752251 143808166 503774651 278114356 505874929 49082046 329570364 957308847 988173868 778066949 896877095 553953453 742353808 601061746 978847031 100803469 364875805 530463770 976129651 892137086 931826097 204136595 328852519 602828178 722122741 328675477 402886767 840070291 949501769 285413828 527927106 983142213 993222155 766472582 769011472 770847343 986750272 782501078 856832199 540599031 734601204 715878337 982779824 905675250 950183937 525130032 890345589 716793312 861109286 86077809 385680533 740721883 941138948 781224690 973061089 438183540 991978427 20168395 203309800 63931150 884327864 992681909 999039415 748334419 904177710 648153195 971374505 457878381 811295051 48665897 204556450 461986102 589599567 771351739 917052392 790480505 872368595 102430752 785557358 873090429 981142772 559049208 783157797 604227396 776482849 127530123 342790369 855541378 886100046 858060749 935949831 797229196 886212892 959923352 963936858 875128910 994526211 555267116 558655157 768913079 847434922 777816016 995712083 107972166 367532259 400327824 958234103 534735082 971581418 547185823 565572943 90920255 651706609 927195382 970248324 420513526 976817104 201388734 248170953 562764778 896250356 743272525 825999720 907567279 969976505 632009281 756673850 943146269 958117898 666008387 700898947 141347113 447650461 179857312 370478150 571124200 942262857 228081677 530037244 904329781 992504426 761829005 857902197 933577804 963449132 543523985 806405754 189108286 627678556 997393953 998539978 885708588 887503512 275486396 828964490 252524015 262564602 766905424 920420307 227490039 393358742 63000694 846947812 985029378 993872136 738197680 884568452 944992342 986594780 734864314 782552209 83263420 891759213 801609368 863816253 960247450 986239520 505877896 769328217 114020885 458103326 12084542 993272851 573070275 582566042 907449648 927940309 677820040 793704054 948484653 998708237 169398406 240285032 757689026 767611880 546013394 859443429 513459664 899073470 212292115 702432690 23353255 55743530 176760090 352094253 588194197 820532195 182655580 618364979 912373568 989679889 148680454 533141234 916524341 924226918 82690957 346544009 576550219 653959561 170234720 256202580 979234100 994495674 616557567 820083517 515517667 749673532 876630019 902454174 435321987 917504060 456277158 707297282 74249973 587985063 460760256 961572500 606482670 895348195 448547895 642610456 86645702 322918128 670701123 954680914 657042483 941903849 247685 927728724 539068743 733229078 676306073 809705876 45389526 448089560 821671444 846418960 877133672 912736871 887401774 913799854 206659762 275238380 480396166 623421740 489349973 954642003 819745850 940916814 455017110 856927628 799040093 842535283 416961839 687220894 207258566 684235459 391733269 684827238 257811845 613230005 942998057 990439864 409255948 972994979 145820208 526261511 254356244 699697493 843450634 964493748 868542442 997104475 565400723 809388646 536462047 964003573 459815471 658437384 238087634 492432910 353061596 495247221 83891248 682934822 252825413 815100470 918591983 973192415 117900948 305466174 7540325 684252769 681561234 894734789 119526335 398310723 787916843 999510349 807801714 856071643 400826245 848394175 112990355 245078839 139509656 544153693 264585463 827944216 221457293 421056308 435066184 989237127 672343982 905794448 712017620 967250273 421326850 719880991 575751924 811748275 609291060 804923914 315654802 596556136 255165307 358889859 932658055 983552691 621033669 928856184 871806631 898547973 946553729 951921802 844356279 873138794 439181986 715599958 450810320 832160485 221935222 470481293 982506373 985345057 657983813 956946683 960804639 973770628 558810523 696012931 984789666 994972262 336666471 635684573 71988866 512793505 614941127 878780140 148797171 591909685 269967211 280979916 422212589 883553161 152697722 321327030 536622608 992138650 53193675 344539900 600633677 744175659 441204685 948772566 189216818 193698079 502842120 704815164 945032246 984462324 480266620 709537425 769729001 957665112 776115905 862144826 271872555 747517293 952946254 997303555 983293437 987751158 693836087 809082945 130302532 994859110 106040091 869722935 296375763 467535781 322721907 454676391 642665308 810793542 889984767 950696814 638259845 723594597 257530797 641125920 316209780 582849717 945166061 990369887 424062818 490686856 194203676 263090193 987859244 999445547 830557679 844324275 428564766 509320108 827117635 893417005 985474485 997974668 798326654 917957323 179775403 684264955 710541593 824353457 66457903 907334100 91700776 883057385 352721461 495283825 123374265 784029350 179873786 682847291 794396055 868067856 374923314 867295730 299252373 767478379 922735389 939383104 515429662 896789443 160422478 292102575 907694445 919562524 558886983 986109292 256619365 560628456 274176369 432297309 120375811 222070466 740076955 749342782 6259827 361071840 361574480 997990949 911893854 993665784 531313628 993186721 62858418 331556377 11973073 206115412 936105898 962608491 368014317 522791223 109913601 640561407 995954928 996161382 967443620 974381187 432720094 530649670 350970633 780597278 21878470 127999867 48065204 324385735 965778523 966924842 145608397 371696909 638396226 967729315 610469284 663107527 458395424 584934800 404424956 512385214 473840332 475293543 318541608 933992340 248517649 503731209 885720400 994133987 956720300 979171117 866604993 994529945 23668541 896191233 278664708 454024716 781845489 998131070 266979818 581440582 148970978 573572890 874577668 976655976 15488657 962767346 201712804 946834294 836637140 905032945 111619514 327501329 148377908 152861790 253893467 867864669 494213055 726393470 57688762 375018913 678985701 913616277 807079357 874678088 377952177 473930803 148074684 785545829 554530903 949786472 183303865 430548025 548565764 899555761 873027686 936032638 574360615 772751885 913627572 953389420 200706242 354437731 389320347 520041666 68849084 402488023 824849554 981681023 227188557 386793935 627671541 648712770 628997975 978055544 162345342 738581167 749105991 877805627 787771938 914113228 183790700 356901928 419928 168881611 944435631 952428079 166219694 173085234 515286105 659723517 744264451 789173908 320315775 826936873 752702092 984241894 464629603 759490806 960844837 976542810 771231946 930360553 635287927 923446452 512916771 899283062 767815699 977386388 380600194 724259701 974666931 995867515 586268172 783547689 859874625 895056832 636733163 966909827 554746007 877030196 315967712 494091693 159486903 668473061 969754680 973247311 895476160 939932795 746385841 959233056 130781097 843614444 53897404 411986434 275225613 407189965 48184286 935874382 667105585 909311112 900723448 902444468 414135511 758987952 936076957 962345755 110322876 789697098 359998192 614111878 186787363 441256856 890834029 961165121 867224535 908707957 527790711 974640015 137252635 574436390 281470809 803325145 118914951 141921153 46333955 991067247 648439471 983152149 824454618 928340127 715306411 857118132 372832597 636160121 235245063 886695801 456655029 746131017 766210845 787375369 693310132 753901609 173157233 539399822 252512607 974925114 938826408 959022994 782198178 994570365 674545362 887744066 715193489 745281246 28293818 420873136 671920317 990051331 73910152 786049918 313766211 322166763 410633660 935368247 779628493 953065199 30778770 923002368 53746975 54208125 772444517 794183681 814371851 819355879 113961033 581943402 251007625 958310644 394344460 517767353 747096183 882725256 87116674 719912995 671059308 947185854 54041191 985709347 829063194 952365564 865640128 866307362 251979812 620962660 200736329 602790816 351512848 820589884 312289770 793545847 482887689 722704100 762255846 937599178 346622108 677532176 772147386 915170988 566552870 935154222 653462392 858769821 112718548 484177563 441930669 576803763 805388297 875597243 699299168 791501580 807970123 938345387 363785735 696251697 612689455 662663860 336050612 442295290 981031773 989940415 747310519 928044502 232632286 680771709 409428716 682841431 560074196 826211308 360418632 702089450 67469423 341292636 346557021 747899964 304988505 988940595 913428057 943898236 712541843 812636523 194749469 463601228 450610132 692881221 724593523 891116432 927681115 933769165 223736076 495777112 507648459 955979492 383879325 666806886 60342027 865803232 749991197 887812093 500134937 749955721 884455341 971927720 30424627 990720536 769330480 981964853 32921622 284357883 645878705 803203288 972150129 988752975 758140638 829848896 884693674 953318166 370812773 599006776 207849212 803383968 469997727 836982093 203157453 552112261 903151157 906286886 877993812 918504435 663646835 682720960 184501427 502400689 181149203 768446048 114189208 701075450 761122962 798805714 560502505 930924564 983778156 997982393 923656440 969930655 755327429 766842292 269291328 745931669 23432998 98475060 61609055 343700679 829974769 846820321 312183830 869652221 499337146 953054843 625075326 877962142 493679693 903094851 230760527 547821696 21646035 70545588 748154882 890656685 317142784 804206884 139006617 578811734 609432124 815455651 570126648 843870546 921261188 952550895 461960387 813088577 461930701 634543683 862577307 954014064 398545981 422075232 263602358 673473013 179952607 549598470 25813693 159537397 640276006 866299563 831686218 855869990 480155506 672944180 331660089 954420657 12313367 766179830 965765222 995701517 21820760 87930166 291065344 345414824 159308287 276068776 812702634 846539012 102479950 791631768 608323466 725267854 245315048 501598492 419645962 564830614 72694685 444182495 55062239 981137858 738204682 913122047 60248014 739447107 468202537 957717330 833536577 984421165 218941746 501453585 313047563 816260592 24420937 646823522 545695767 721845561 803005281 884598911 789860099 914819419 625274050 897267449 279962934 394800912 911343798 971767198 648805797 942491156 863175977 975142845 956966938 994331647 866544499 971349208 365186477 871134306 915493679 922292976 361573444 464453811 979679035 997763431 713588920 827878233 954163343 968976247 508214461 764357337 346099303 881058607 985812427 991395438 563695843 680613720 914913875 990347164 888464805 916269759 64105268 493115191 608803583 969099424 831809651 934258023 672694672 783198727 583353611 745961828 772202463 971393361 198095808 402987653 617059983 706933812 34104396 273217803 342393102 387753068 892679390 982836913 353670635 646381370 578263669 625864772 55058504 559128174 500405502 861722096 109570796 474681372 506417133 543055607 105784031 206810726 914926528 924697120 344030709 912107479 353945886 849936649 345355661 949497967 404513247 462415021 585079555 942181174 389727510 619319202 573625559 946420323 675314789 772733508 839565194 889886993 779118427 957967945 178810520 548619542 721746878 793895769 430981813 829598728 923464213 942839258 428934858 441440113 363319646 666421855 139648919 726245080 686978370 902546054 412278068 794064911 613187391 991634803 670011241 964137691 716570602 960988241 726486312 743188258 51081955 979659081 442462125 636107777 250175084 883277209 412292741 520006890 601273564 619634595 750674963 755830517 882873878 999189345 694378115 822193849 177758831 403555340 942398458 950416739 953982155 963221391 359263962 697766528 319759550 437178555 437674815 959077465 776106606 844226428 410408521 996336904 933948641 996254817 198605774 695118221 555750281 580772190 493099523 740333916 524406184 671331807 818899313 918084904 862157531 928428910 765241953 958031234 251979128 572139131 915888677 958689969 973662167 996547745 591974059 727886263 670307185 972274730 84364249 175140195 650947429 837371963 250293272 331963119 327078411 392902178 634899988 769881301 506941133 647855578 651627083 896970481 82188329 249788606 410333162 750074957 699914685 835583045 441609375 514617175 600284172 966963932 24112039 480132535 508103815 585012944 552151985 957879059 681904096 698952604 486215477 996885465 438505672 817261643 425195171 688511277 147309191 629084267 918152461 941643851 859808729 893938071 782991436 838788566 925993000 962853766 575403024 700773126 206856168 934984920 453411749 800246754 100541929 724711862 467220567 851326493 348725900 974024706 164176897 784231423 872078884 944247575 512215939 992506245 559884373 950841528 858746869 977540535 213089146 295710038 617474290 871368821 166318091 286580807 796555872 846923194 746575928 815005919 205216592 485368460 402063967 560586365 720565690 911557882 414417362 723534026 612143090 828766350 790544383 791433335 809264409 926544512 431493775 651217528 891052388 999514085 879211992 909549971 905127316 978632052 775658394 949882288 79750061 718580866 62658909 679555188 486105062 509083972 628231072 672755148 681046850 729187876 981212465 987125294 502583659 611062312 956490092 969082038 610455473 981503925 826156033 965628485 770441073 974622767 18081489 727218259 796590570 920295716 715918685 878245212 752341094 816877580 88212288 704922089 246881295 974211370 804314941 914164644 138214384 890457779 916363890 917489373 473445939 672208506 435031238 860561972 707252621 771682947 546376755 552724686 393435964 398512260 289262859 965674637 818535547 852986802 760534624 779203570 911433204 989120689 55582893 405138143 135900699 212661252 907630705 980313574 627139274 741665829 776903391 869005422 114124084 354638313 20664748 261305230 954100165 973078713 207822198 673943483 12022822 978176353 827040913 997064128 165649568 647751530 842277459 884941789 664021556 726789254 983094824 993071375 737710201 881976389 122088861 893529029 929929375 989587671 99079717 256260155 360856139 384820257 466341476 472386969 629545635 680890987 740250284 961855249 726202657 747569503 281971131 767050333 53374550 702259017 754152364 827474263 531361482 590044916 66777509 815499726 256361987 656539304 984278220 995956617 522266164 571100016 889916925 969507675 232072795 391702786 162168968 514137525 635365416 903369102 866221875 894330715 915596327 941254732 690355816 765989851 500369672 951366327 536958365 711176457 842125260 920216685 730333182 911216912 675771150 979565611 645124853 806262437 817014592 876546689 610153454 660549405 747924656 845210246 199202276 886389719 683419832 769711200 352625315 484431477 861306037 873216971 740384148 997920446 523263015 949989458 282283815 320088251 148722989 534535091 235396250 747510953 69450363 173633448 438412821 639362459 625217964 681750667 69979100 364689835 866676205 880149868 698367575 887867899 883595345 934241470 814428159 827779142 277211181 312805135 713579073 905887198 312464885 378528253 615506868 980903004 111712945 428939136 949965618 999591489 245470416 401054522 511452806 565598317 22825007 124228534 730409102 934230495 335315702 349746755 822806641 950280806 345664112 943465079 966846817 991552522 743978668 833100258 430111316 692304624 202368503 760587746 45976516 454748824 371074396 536220818 872363074 921753715 741363397 771919236 281407370 504124080 591336104 765488466 723216957 820936589 962415164 980581618 404034685 912629464 726124079 920843977 645445912 760593794 564668868 670446083 112855910 571535568 859833082 995981149 988734265 994887374 746240913 795024672 138628406 205490501 433982970 653859751 373413735 695291976 664430873 940848092 356667297 714800299 139490814 803195059 750325720 960876330 107921297 935967246 744047884 916018146 963660675 973007579 320825048 548225814 824311002 891655753 183407353 335540644 141169493 268209793 359582966 409005047 49909393 635834142 646900544 838507949 585420833 684133952 688724026 895575147 596477054 748380295 268234087 772815540 760837022 812190023 111116365 321979978 982518970 984723054 53428173 222160517 154833661 330221810 764416975 879557773 706074518 988802163 479658334 754516553 213545318 380956356 116311418 345261456 966639110 969442042 408681138 640286377 877056760 997758152 749472169 920477362 349298170 850896709 504375850 821451741 227115916 571030289 6676727 343310310 212734441 596921917 654124131 797023241 569620493 605490047 104725282 807263105 356535266 391771418 835705949 922589665 547309752 958633753 784138371 890669041 512998427 718691745 20906183 288321363 892110118 920217727 648921187 803922454 601037397 652589511 125094858 528650163 224786389 335936579 992987191 996026485 187530628 385264958 516929072 749585872 647002833 892242854 86338504 508124520 189040940 566085473 766280079 807277205 974947138 987002101 574110798 712386389 612744438 696707730 788071184 988999339 852993253 895384133 430821339 832939926 431944896 848477657 403362413 439917446 999229399 999518593 841379506 958590873 875819110 884688716 137700986 433092499 748864634 998835284 429647280 980113630 501814472 601252029 665751209 827958571 417649531 994098110 903958483 943128696 193880941 606798850 880184958 901882288 593763536 834731793 612720811 751467801 656054033 867815359 909057275 965356530 318221185 533612825 198506875 669113623 831943685 986432956 945677916 977738953 472590895 924425713 301207013 587044296 108223943 469101586 50642979 565490379 820848968 847228128 989294192 991845296 1558967 486166394 268434347 318377583 56445782 556186010 911795348 955357474 467426421 852213637 514892213 687929927 367483107 745256393 975969876 984700372 824063377 938234360 29043609 355239256 880690093 930934167 769641647 921856687 817139620 991335247 778004632 808179812 628663367 763337218 103153268 673170858 23640809 285480196 900516217 945880351 997900453 999295769 214707862 611874572 650562450 871336224 913319033 997865695 308387682 977973334 463969466 969354011 717827323 812017583 213100690 970152846 974657740 979457468 716596309 792739375 700649680 909262503 120829472 408771642 818412973 820060775 849674835 953415216 992946733 995651263 345095993 999683249 771786490 862452838 208832267 917848872 373574784 645391680 766711115 795390065 764665362 796545975 702182244 851767591 963417054 968385826 7333604 912318563 991050607 999492507 454861065 613735625 41244786 325345093 673142717 872868045 963633671 973591349 142318940 955900843 933084458 943524641 42350687 316578693 40977733 755932090 776931448 989137432 401732 376282809 801762252 987727717 613985553 983209457 183641635 323894587 726301671 810203031 496042201 663751123 283884444 646508327 935104476 949094438 468716042 748616583 979394162 984053260 901105306 952927483 855045099 890825778 286497633 697991007 99708823 794023981 744989584 892911201 778505506 984120078 767309659 984160481 769859948 889693130 683398499 837035731 486459025 834888622 267674230 613014505 986534467 988549183 146730591 200684213 812371344 859697476 792858533 840270032 645851864 864452124 819924545 923442595 580664604 731010176 327553044 475138232 890507188 933909339 830826690 921685282 641577653 691870186 454401652 627296311 958718752 997981356 359694312 526968752 145625210 675799517 818295665 903659806 579914476 960966917 34055683 488326742 88046181 735231160 261088163 958235140 141587467 977885337 473195000 917117403 781205109 814204958 779559087 813534985 207682103 340928676 306847530 367615432 467745986 671976717 298603683 563395102 653730376 888958887 668510512 926098326 880691457 956934503 297239977 486688730 849512575 975464138 216886819 491165128 406626814 946059828 557233398 738209492 787187339 931269156 827366713 900165797 437022038 821102742 943093241 955439783 45721845 542988433 728281484 990677088 195581506 479618307 968071284 987519375 592224216 657689178 847953933 859258057 768758016 898031999 117469825 340843265 643199241 683213963 738095777 955262621 640596569 708824386 23030792 602149468 332676553 878257629 340620560 430764045 317769249 925324966 406502470 941729910 923287157 930144903 744212646 926674982 409892098 742058463 467606430 928286971 994205627 997677212 858277665 861602532 547183163 782212745 302354807 582203930 926012030 974932447 916191058 996769352 162161447 268812364 554526758 750168681 208696921 753972429 101696714 426811130 473987337 497451675 923342299 961971498 105423028 708872360 406218398 718967390 795411727 985613780 928930445 978832333 341869858 417951925 645405057 703448744 841047457 930478050 319105807 938163968 596599539 768863578 326280398 818331495 702999621 816934182 731503681 904780904 107634481 258623278 571550101 943994419 737003527 818003782 281179338 937341625 659273881 890380118 995193454 997018982 689704182 876935030 736573748 769954865 479479721 659942681 851590890 878852792 65078733 791111423 201758189 669509767 785927918 908077168 862914728 977523801 836360260 993490184 161678808 568202271 522940262 585797812 200563299 743369224 30781057 37665818 409036472 794105663 452985423 567682642 272713224 612156518 334155825 585745703 68007777 889580615 151288106 232555616 9722490 918475520 537127313 849820588 672176189 735201169 742974514 888796132 658522553 896838385 874508849 973411642 443164609 508906456 803659132 995102957 885611345 945492016 544973365 926671589 439308659 816879567 192992521 837902538 216863124 983295374 325422236 531204618 816308894 826210508 138456254 538078138 559550256 916260896 996234454 997244958 283321572 789258911 922708889 945204587 645759669 793227583 610302625 621849591 409109737 498330444 834711251 855435251 913507418 972082994 444878745 700009181 937721586 982901193 326146803 853080299 856264413 955393309 286999526 808865210 331846654 855399307 575537775 870451698 752072056 982917029 619889535 977869525 909220735 910356923 117076022 168249620 552050367 870367938 81935393 185381841 213000796 245023941 347496707 428786405 714688482 776553895 580637217 602618630 272129803 745116642 199521224 738042249 144568593 879648274 94732279 147545869 986494082 987098314 436754042 476353026 582371728 589643953 252788051 562966808 716300684 966584768 834901072 935252019 948872641 974645411 958170065 981931787 37843040 359987018 435664229 715186835 544055961 788968686 854537309 887145700 286479951 484884311 576836586 589170988 396792475 666948771 456180282 888887217 522989222 870586179 367277413 663897344 912381888 931900218 835105532 918681933 498231567 653847745 639637733 796194713 167812738 480340228 720372329 964605992 531592531 808555334 160518016 256051139 342751060 398909568 828900412 958105414 461829197 680858585 668448497 802571329 385600746 740850438 473167189 605938265 568968955 931422984 378647385 481349868 429465297 717905268 133585792 582872476 166729409 589245492 211610906 711722285 762854979 931190328 482137765 864943075 169316093 671431745 291575986 757742339 959561852 966516016 699433344 848627500 402903609 525534094 320624664 742639864 943782701 989906918 170351775 699298747 885145258 905162084 99306814 538300339 449808814 649518879 915171335 939281967 168638359 514884040 675240786 693506652 232426692 327786134 733149778 933308734 989359302 992188712 498649315 706245638 77488983 320019569 435570768 972356826 481505308 557657969 909994495 986551357 736482006 945788295 461011666 660117212 19404880 989991623 70470480 843073525 723461107 754402497 799754541 992288546 833543536 961000472 461541903 919688182 331792702 565249497 386935334 485514492 231826959 846040278 584439003 758666222 654129833 727799057 984680589 990760946 308359804 367430472 463943028 763284816 805544466 971729920 713107427 724286832 637240444 682708408 761938005 882444020 347069701 403943870 494489113 769028734 542389984 562986984 14915479 639553523 69783478 889480033 415800261 881899985 584311043 705319772 212733371 285009145 307343913 560659414 422169526 696863700 23821316 109652555 405424188 987588244 781953809 967531334 95175330 150333511 182497604 728691102 230710903 720764387 697373685 927903950 3706048 319894386 594604438 896552340 814075599 929463641 309970672 886522562 787075676 866664341 419722775 611819791 834244430 993145990 554006179 958565606 782515650 958035597 697451215 729579661 929410098 956330021 45088759 918056559 797088566 880218703 813018876 979941012 488741664 729762810 351146279 440830737 410644669 478750252 613367042 894362819 641424100 760872458 528092227 853272825 256529635 676215052 698186587 888964782 281597208 533747147 826718140 833751577 928608405 946430424 310306987 467123484 819388604 830744892 972187857 977491236 61202445 236258249 503148619 701098865 854468104 981056178 553705667 637424142 490232465 567430066 978697958 988140670 741666627 786614027 254480099 938677032 479555691 486208053 998311097 999354890 709029252 961269297 934949695 949527288 970814320 986646120 731588463 896447234 931090181 935167426 752962109 989386996 941315687 955346968 314743757 994336000 136683038 374258755 475837456 544243361 787559632 919296623 674098840 790647152 679942432 920004052 472516855 978599180 901554118 927573248 220067440 567859126 810829100 843467736 467739562 968303584 863850333 906078651 47156913 243132466 101713866 293564653 244932607 603020480 547594326 583636404 859741016 991418922 995021455 996658937 792781399 944847737 942864701 985476986 115414690 848329273 252803853 653038883 511440582 531134176 425538208 911580352 148422130 609833060 429027098 915324273 126016109 456551701 855737172 921284148 336414311 601716721 880138468 886054364 357349374 549291636 481039197 584726568 533981712 607923327 864540439 971927006 455564334 835147771 678647961 722239584 749929506 828879216 805268230 951435673 407906185 604864852 182425828 422300129 932397904 991686344 199760230 293452900 630962529 896394438 536677445 999085371 478910143 662449703 206176798 461034170 297116911 312490626 11244329 352736126 585815744 799876177 191174625 694263059 183638487 819151738 856898496 906622606 259634214 978368336 709799704 888729806 649318462 743581894 641401671 670025716 159462836 175054380 176084433 557010324 500544171 737103650 492263198 534683654 127743432 860705132 191187793 739492201 25476691 998701283 837631137 982475934 184130747 463957379 246247845 895603377 123697426 752441751 812962160 841531506 780523866 893924813 696766461 962087305 183858823 994177813 988036215 999549764 167227464 504832434 165184557 995861305 109895714 159939116 714759948 722074845 265632904 625494475 17524769 753318949 381258050 529992182 467532264 981313615 402472208 998176414 107982434 149766364 460400044 734807748 141914601 910312148 406972091 537417453 163681986 724654885 400219206 637394595 585809965 951249755 137707485 184038655 926535291 972220492 685651266 920687684 148724520 827021591 215872315 339889613 608839641 636217595 957806250 964829256 187040707 815894206 616932887 946643870 864857198 897540023 166759423 920570591 776007221 859976314 484651783 498362646 157454107 336186680 972678855 986798633 61122537 167137190 578058103 813347205 900360727 905571687 605284903 925956789 812019864 943052756 765243821 973772178 821158121 823394919 794256248 912135102 454907940 882938191 751178611 786808834 266214389 760055964 425636904 782651111 143788588 357827755 496320901 961380535 594932873 617737846 977246919 996474767 14442197 689495028 902262353 986986339 494212014 916809288 361976909 664332396 837517235 964747711 437304159 447379917 318370819 773052455 475965650 503932170 848899917 937651823 905384556 989244428 481280696 732088593 859687312 863174301 842270708 872497974 128482347 180971394 108647478 710297804 228237775 554803153 665715171 976059532 99790215 262793779 452772416 792167581 777396999 875864844 320043571 357755557 519523934 606300554 31394292 68995588 403218196 864591054 36091986 46710585 360162244 956661154 181704861 416270501 332340522 493272548 489156245 643685938 950609414 955880578 978069625 984878174 560239690 673025098 689119432 958169645 845491918 982132311 537710763 679986598 487420964 691822634 210783245 905834571 15694469 749968261 466377931 851857773 773986493 894563642 836392629 957116115 832121288 889876673 261639136 903499216 849494555 990124442 27538 746086434 349844200 967936178 416232656 537686877 116524464 405833657 194534811 218948885 559416809 613539486 178960381 611638995 424761899 921554101 754184464 838690738 27484173 112194967 447679010 642999497 809129591 939815177 503281087 670515928 536486127 593880659 305883500 728396498 920289746 935372747 986567824 992805399 940897649 968255311 907844555 942436372 472267114 616172475 760140255 851742530 443337939 519878719 722250933 927098162 821306317 924736621 501944865 756248185 42913169 873844269 554259433 790389228 807663874 960872540 367083699 685699980 593163522 931836881 63632317 253517820 392541628 661737987 724756702 790362173 37329294 126735440 688928219 778363069 196217722 352949353 185158005 834558709 492345829 519857864 190351118 321705750 320542220 505610085 750935055 916523980 226852667 571259832 277765014 692016465 483068470 880391296 104841519 303716360 738815694 993691038 88540113 535352876 995052441 999713454 658790685 702287427 282535609 737708778 77566085 556775492 45325526 370583705 828788617 922475494 320532416 661686118 259740352 617034703 905213079 974380924 599541272 891436369 222926055 894331167 283076736 577687970 648147487 774550328 246389874 859736333 367880445 891893453 620659032 689024430 451605758 554290129 543257902 731044199 734620575 913457910 695234186 809104706 75505263 724667448 244007643 527004105 129787317 347731010 335282617 928958720 646832701 902573957 187959763 396191567 48926594 352276670 194177042 508335860 926968100 980998865 289274113 879015107 239587664 565444447 686437406 805043597 931111128 956394427 246521889 928350347 78407852 294688235 898221575 974626706 382674700 838136545 236470458 328383563 801507690 905984822 145078122 321892980 25266223 670373013 11681216 699237847 120965208 147109488 834216950 884746245 916236472 926366960 490587820 557346365 148324154 969917490 70533633 116184749 128050531 362815407 916349162 997799428 131992931 591884808 553988915 642720483 476335730 762431027 704271393 889849506 32356649 665925221 231233428 934203041 910132194 939866138 409451965 688167773 992315851 993401716 781481501 931367998 780843830 793562348 831534156 899740824 940361310 948435006 836304382 924370084 716118355 996647352 35570290 430009457 2582368 27672221 880888696 920352745 667609880 870438559 30399599 668525221 444294162 979195724 13151750 523266064 856007840 888639404 425965693 933108609 869428462 925212208 498038293 820707958 311466544 773070347 52946092 313495241 710744541 833904419 306608321 631105975 259559482 274475566 576360013 641273380 938807559 999744900 311961336 425595648 146185324 525517186 196611141 250915116 9414866 537483671 699501357 718855593 931254306 963327816 20592194 497991985 234083632 469598818 640995293 793796750 151618980 521749856 629429183 765714935 493838358 979372587 373182554 486645716 971968309 986830107 100796397 607071159 766309590 991788954 67302821 180112925 416343791 807805498 438670090 824107733 844170825 904563079 243480057 377279602 448213075 533973907 99375612 756566138 539815985 830819898 174627710 335671990 438376549 676682844 473422957 482414202 442622444 973895617 308493482 568780547 564591615 784814716 273684770 599108681 488588574 771683532 61711923 619335256 196906867 830574105 594532858 636727595 710111141 995827376 583838327 695542159 252899738 410114549 825085927 850115015 850960311 917341447 989141006 990084875 658632048 930795079 937978337 968532460 50766175 603313580 121848634 820995893 781582336 813955762 837074304 927877166 451367476 458455288 616542947 619066313 377993425 922444878 23912173 621705525 698818469 876341102 421823972 990296599 277341134 607120100 314862661 511464441 366472585 616324265 157283179 777304515 905712577 949719886 304512426 718381167 293658703 660338477 29763679 230134381 938338892 984220756 681089653 796581696 45328805 197038376 864374702 943421713 162530567 283813337 506951394 587101132 475010145 633939639 997196172 997623997 860261208 889074185 881453334 909372363 913350666 919770617 302826914 583032179 490461877 924062150 107798986 118370877 942865814 980612679 878181142 882562578 940559686 945628410 128464674 621241223 122341631 905627507 572441199 772495905 189932055 522271361 155156647 212578250 828445173 910496897 300325758 365951520 648084769 846591015 740338386 750543762 726974379 981918224 58514354 741081374 195342581 843404191 463305135 524790135 732660262 921131633 202701267 903121111 932717698 971148257 695546931 889363775 417399952 698988393 514112926 608938828 201554569 232926898 374675329 737065798 186985703 319238882 551032059 575163616 499586745 575679163 393388634 631369810 443494578 986690624 868183683 877792001 758174445 931188951 674328226 917815828 100811945 966897877 835570327 993899766 476192184 584806772 839874429 916362094 886523685 905809061 668920675 803860673 796652218 838029259 794190515 825309358 918614912 958745559 155124788 631773777 605774063 831784804 344739828 604693901 118998024 721488047 779180108 933115698 262379194 459247152 736526211 842416464 184495412 738036017 454345884 489375308 804996986 888530668 529812578 608206552 681443418 746789047 417047420 993805154 623696112 829799872 40867147 250067091 119315773 658998282 410620429 505085358 936648931 952910243 864532866 902780835 532659427 923405641 124946628 322589763 632585227 992368214 540403704 817117953 48131135 558125182 56341150 874286562 777090550 953289985 486188085 600943837 834333768 910217717 762153195 848639859 929397309 937588057 794522110 975147849 540704426 865531680 509079849 747440041 318554162 748839593 652631464 879997744 95992702 804551466 249019351 774082737 926626433 958458902 490614288 772842483 156420283 450689400 858858165 885878026 403679887 586649149 485016113 889590061 383505068 467159329 428059949 453738717 483153033 942189466 920634377 951186399 197670354 726091955 136427957 948410844 92749038 819727084 802611516 998895159 771738421 889101075 292178861 408490389 464698862 607837377 248187249 825331939 854083811 962882067 968125002 986052713 589160819 686520737 952541002 983412193 301707406 551636530 276876687 707061326 732255742 834808805 936374698 983184927 686688434 739748651 64162041 607055297 392421695 593306644 143332516 738646366 414644504 717413843 697368715 860978187 23876493 130238335 596379408 918436255 771851137 893219480 937026519 939359814 532125835 589510360 20643598 578803791 141254577 731567682 889034852 938627494 986897014 992784913 24983022 988978012 981097061 992009803 785005090 991938650 143239839 477733631 369360173 485777758 35633871 984235963 740354559 846567722 703875142 998935281 524187391 753024832 138164895 788214200 483029606 811909566 84328637 208735835 421851904 435186396 356310724 798625893 400578990 716054626 234613247 337395538 405367916 647026006 634133021 943036927 385515811 432758019 661441281 764235460 722983665 894512653 445410421 980346445 493540568 830109735 915359683 949209342 866571338 942806273 769000952 860205130 932680492 961449613 710503516 737130040 631050175 842831141 969261860 988629532 252873842 632567421 406367447 592249812 14874914 287253878 804067986 952477829 276735708 916349170 226427563 521039253 863321237 948914901 202417054 542840914 516352984 541256342 691693035 787864119 168943675 725390126 120152308 197456467 670314373 967520936 560575755 997504722 42884522 89476111 192050792 420756355 76603493 470332889 955183267 969194881 462345402 555416285 351349846 637877893 630109446 748426609 239316972 837525814 497735074 543356273 244630649 848476920 564944191 635209098 717628793 826090933 137838848 613734103 378518999 441652030 810438824 880708938 337602200 423398673 171318620 465320524 372573656 859975582 579103209 985519648 525404002 936172384 178838800 946203563 737893680 924106456 535245587 756061163 420498356 695722585 437363840 568374886 172778218 244927317 751900370 817638630 848444197 882013366 721381946 838013739 102349330 818527270 389678170 599313031 563630002 791265452 902851201 947311739 803581576 898752423 200371589 867271886 732485700 805477677 43327703 752888130 680858108 829846373 744622182 935542341 242079911 678879827 621053392 959666873 356952081 695426721 422094271 893849043 736368602 773495884 369314401 639625324 719711729 774118243 697910949 734673613 466863562 828338777 945160426 958747909 486326918 600974071 809159130 838080793 565952422 679635350 906243759 956116103 717244793 987346960 772467273 902120746 748035171 972340860 503353688 893773803 427196903 997069402 837994332 889884595 374994331 697286724 679983527 875097379 487286023 615594500 708292292 871588220 689265203 982313384 207946235 726595438 651091462 762194691 259834660 976619235 106833430 376521367 600115013 788127760 624361843 990250867 508093035 579795907 235773920 507855177 601109146 653890785 38097300 754468114 342139869 910214263 488008350 750372673 413409770 734348641 708651854 832238079 305631090 478883004 965924246 978210293 369001804 832005741 618310751 903720062 674531232 738627256 30138491 734525546 136675157 986847075 361279922 701351024 792831280 815983315 799088396 837613927 780534623 907900960 810293731 932989649 788765668 798473344 572848791 753084234 421647679 616036706 638717360 756746846 202295006 962961439 902796071 975292523 883402092 971640392 506280012 556376810 421743849 670104423 763669137 901075551 574230969 691974259 152436107 776535387 831333415 848529115 50199117 260939586 2840381 204350896 213830473 864765805 133272459 862693630 615759956 831142591 538482321 887243903 484184208 922193441 261781054 476444447 225470216 445986711 977310057 981155474 428799360 929529682 289018776 889418222 218551600 676810774 948191570 974604977 831565272 945097437 524161469 753267446 924108232 924308041 683281666 956370473 330942109 534235146 864838438 918795539 753373429 935308187 366622411 873625476 472482273 945925482 650533729 750469947 928907942 994640572 368699157 997580596 858403202 970089698 829013037 938752495 858884652 899908642 976848232 997986486 669896949 994598328 241606014 359636466 753191993 756661402 403835989 431488989 759448419 922054270 173182386 750224836 928423343 996699811 87553100 574642722 164679375 224975741 28786735 249552763 675065844 876385828 404137263 465709791 322734722 884372208 646606643 797292206 609722013 720213623 950134549 977164411 369709194 627969237 48693861 327369703 64994639 653139883 347462726 886285369 389537122 412434642 492782418 928859012 385876679 661089524 834127978 841328293 281630811 931309875 718831591 742761796 155701731 901413347 215261365 908261548 279821343 728773852 482233146 605263224 844032673 862623502 628670590 856151613 846336087 948664577 200768757 931636198 685785532 919715758 792490621 799523353 362582760 925179168 306091520 871458654 705230168 846301789 276058510 305410559 710088423 763629752 965336967 999593728 636873331 974925435 570023551 782627781 550732390 967595169 76459030 419584804 67471053 881245450 143924026 824810057 427492621 956928910 661474587 976484007 741270121 787109980 932472899 966244720 234834698 499961583 560075871 759422922 162941991 970845287 957152674 985685892 781450655 936883169 82184246 635254545 693691519 747076286 150928359 439364750 911498691 958848013 864564923 944533827 245602877 431450218 612223759 640604514 504867189 990088163 362368239 485180951 625578611 961296222 982132296 987259605 615239101 998867161 154458347 439097912 692215647 988513464 340992586 872275513 352826665 690676094 944211807 949089441 240754304 435680227 376195888 469798210 225215971 453413682 963317941 981221764 928661883 974436716 620561132 910435270 54017289 708818536 766386802 908560198 586936772 801350691 222669092 542846834 933204679 954396383 359588351 723210375 361530301 880521128 776025639 883732960 608538142 963403567 779225860 989757778 225363160 652601086 129985772 476478586 121027021 256634252 249439175 780287609 950100763 977568284 790330319 810005584 658122052 680101607 854298297 915507605 245189670 272328020 242184159 267531732 708007839 759572297 811284957 913193490 292684950 494930721 968650346 973426811 667613133 820875616 628288190 841930937 494766641 749528768 698596082 871028737 880161892 889966368 424559672 641295089 559301165 655886147 731979380 992511018 959665578 993951512 248674439 480928065 262390385 684854269 401256764 405248470 372438380 708560376 368167538 974839732 451680123 680685801 511870906 544273374 726611283 885945344 769222161 894767546 301313414 462960798 34970328 794742454 660686714 803251947 1036560 278306901 510541184 610683162 461113044 934949242 726220050 811085954 881852280 950843319 999743 985144385 724608430 938060947 693176574 820266698 235595543 911511853 633041601 664660748 328530138 582231887 758242891 762104906 661871823 781644447 109729793 306825469 593593491 946920305 500248085 893526680 613315599 728225395 76537596 181462212 55567672 232636165 70444805 71136710 315040398 621466225 483584515 969440407 102771274 946675068 20145247 236242664 125512259 438755680 577507083 796487512 29306504 623524508 797275147 919776013 85354483 694236051 882254739 925781186 574937851 876625400 384405803 646652622 411533908 976295417 728932814 939667166 525752042 612327360 929272835 955961962 490228225 967151516 175417285 361113756 408421381 782412436 196046825 416539454 82891587 541116659 289769863 364991269 456614626 900014231 578109461 911975239 913345433 947048258 311155865 594826910 745951662 766168499 300196517 708194139 760271855 775901047 307434661 865012982 394878265 547792846 91762752 648906890 43922104 553616540 437827983 956690079 189815193 927741149 327761223 351079891 851719075 997905968 682883224 915671390 499226784 730458982 791215197 847395035 827983726 977285260 766286241 943606369 932248803 983588301 566737932 896095962 644354119 660278379 327882566 639645983 418259514 418655143 337022613 373641764 654433880 894253204 490885422 616397740 301711631 733790897 807494282 995994271 475254706 712529987 705929986 867516015 7827912 960512524 11884110 514339508 464904165 574707089 914754678 993336609 102865650 682583564 908806906 926013371 760122539 878511079 892528092 948240478 73627387 313419220 418650243 796028634 311102074 695120985 634652942 719937134 376676578 782263562 993489165 999943247 324099658 544602140 94575458 529804602 418413795 470480801 405047008 565677773 87941927 181270104 31902687 677407890 597274569 979400132 760394115 929866740 928479719 967028965 383481796 482510299 622070559 802162141 42828169 661615902 392189425 668673763 747622777 959718339 690266901 926127180 800229415 919581767 45086852 377293253 252169808 549233010 754786529 931497913 222627404 882964389 972464990 981490899 465390332 734362268 918103701 999764510 871349150 981440262 334308527 596769173 274183815 797792642 975539834 993742541 36970160 750015762 841916476 907228898 111706263 338727660 484095942 879139046 301350278 586257558 18117338 144960593 149531834 567246060 472471480 830537080 146859759 309280674 992945913 998125449 753591267 969861589 425897004 691063292 885688563 891164383 769604354 851382125 306001603 747869208 642152580 717371193 601658387 890021373 544570433 984708615 395474287 577045252 744070682 840603487 825158691 972667759 223892279 978565609 931504865 985186491 413614882 471317618 938969549 976771551 718936187 746997085 127627453 385500663 540911760 730974978 888217829 925858616 526731126 931412735 647936319 857178751 204247779 487461862 171373505 234405415 3712953 580203407 626365959 952041120 399942796 817940274 925900641 973822388 104863650 166010298 708454571 868446205 699013690 889916613 680201351 794676112 324752556 812440005 976046827 984970032 683527395 735305055 915820057 981539601 573889492 714429966 336013667 745201143 127798811 152899606 913988893 951472285 373425999 997269456 201375785 238752014 444628694 628227356 112682002 274227689 800344558 817930520 338609325 589149682 701146005 975140424 472410597 969443666 107633487 499365779 325338824 774150748 134617264 994804199 995235290 997889734 795663499 897285825 704340038 719020737 89876093 765508256 465086113 965070572 77735475 275659998 727435168 891972278 578216722 645048233 645058220 752092415 153309181 183520644 801780173 963632669 463229248 630017444 72135276 279523110 665398633 933173590 879731419 880754247 414127662 968233041 393531414 822348890 571061915 587470227 740140522 922495228 426396211 664286622 890963924 903868577 51371293 515760355 636992420 811355205 918185407 962809433 435019843 529529047 20738353 525350725 95522174 275391874 408795900 927183743 6263880 178946766 403502533 674743523 791961205 811950342 975253007 987519008 39121951 536417629 240167821 366613564 734331877 901407056 726100656 883658094 853973763 950482168 665364506 675675455 995586977 998598290 887067316 984089947 983047448 993489828 227055122 525539155 293228167 479434382 433631687 451946885 865157813 946010595 419432452 698725226 216087247 675168638 168781604 214160524 21623458 730434274 885782865 899333594 174181975 800761107 891750486 972027951 945407979 990084359 83199460 795354088 341640139 349742424 943041395 965531379 378969818 395580344 134368083 730259491 510469520 512836146 434655726 505323816 912933038 946654218 551863137 882082678 496240928 658942183 258054327 461752137 613961504 733259009 742552392 938951141 638609741 744355861 779950017 848507997 218490054 344300565 371645067 551418113 509422900 636049356 701763524 895739249 437692934 761077705 945618173 999105011 638797396 778986273 592119509 963555587 65681372 377391399 454437482 868047265 600564388 946776274 803283082 865200150 665415065 725038951 811120748 960274492 361677179 531889260 468324055 487056372 968185322 984900505 469376373 527091779 895752807 935013550 630800197 752090063 793930706 960650865 253962611 276983376 433697357 753271714 378862828 491210727 317846700 479728290 338698588 798972405 866444851 980905722 198038762 240497457 923615658 993289319 35013941 317346068 144722820 603938306 331252609 803288475 66007447 866204717 364076893 827725814 255873715 693752735 790049433 943760598 956038572 986982344 809828813 888462636 470664031 556015266 773424447 908177848 809093927 907472604 251784657 302860051 871919175 950302932 965391148 972010674 957217810 999159357 154100487 241185139 445891518 533778173 637929133 866580467 983165152 985903646 493810093 931894694 377153631 998924082 381377193 748379799 140795452 678873470 776578708 955437538 496146447 666359554 230363185 582547624 792951689 989281584 525723831 977137575 854512953 930777379 260320405 318569389 980911261 993770987 770025922 904209453 728712313 955321681 391150513 715891249 357551810 859302080 829285943 843454286 581651501 640638323 253616945 624248277 115581418 383300766 197022396 704588273 67420012 473279639 677534325 692828649 495863466 829078938 67457923 358583393 698824757 966670928 118539994 390479448 986350773 990080025 667358697 861252976 881784378 999149012 918515574 961205507 597601800 883391282 552378167 905400512 129330294 133519865 893066731 959635244 801395779 853686557 799199647 957769903 954943579 998644180 822074844 878307617 575334863 973670725 86104321 182768948 639305621 870803016 115973508 676596841 980537781 987096662 763007951 903244201 666464824 816694318 266367029 634676937 67983261 241173560 721624780 754124245 512557590 785426381 583278826 976213079 169110015 403865691 379645992 774255821 225671986 868173042 196182270 497176842 382738973 491516270 147916948 181836762 558656204 797272658 38383504 874602092 676095248 731645041 484081424 712267755 36785240 621615454 357961150 907288258 49591107 338858050 54246769 638375049 110317272 801026455 32991638 551467459 168647233 227580755 858847816 925170299 955356022 966640808 465669354 859746174 939896351 997396875 508940593 979675038 213635574 499288665 884743733 894721908 141932718 409080190 523250315 823269014 178866188 213466692 717300491 895661409 194440214 795492103 605252899 767174746 509710233 893614561 381116737 970878857 319220437 330514681 403340010 712524192 968168564 994662428 741108849 764443283 214955347 313344724 338763788 579950892 328238194 424621909 931336882 973490024 208623048 560657186 600469909 936151856 741224790 932896101 718663846 734847944 199298533 676299701 439740715 724619752 972429023 988718499 117404840 762327666 853314099 874489851 528027018 788553495 684031876 847556571 575350327 955065185 679045385 754988107 148459160 673356690 948264745 964876702 688639271 982358920 166809373 821666566 468968630 856417219 467747226 946699115 411385920 538962929 50026231 246219749 133700425 626970361 555964669 958757676 769698398 905185244 135074065 847432178 118840362 704348362 584709897 689702059 384574261 485657714 43293416 131363088 442615063 468296163 699711639 991465185 221647444 293463362 465518137 615717987 852693893 911111577 477024989 514766347 28052997 925103931 719347528 921951016 860059780 961329091 380768152 985629556 989544840 996292908 284763139 857480843 105179197 217239092 528468725 824934917 113977182 222460502 600767798 799540178 287204566 613950627 395619369 941930227 88546784 199194930 547213784 617076346 712010783 905162423 650318389 717095015 808325006 871228525 760779398 938141159 709946444 951671857 632306664 857702479 610670910 796410049 844179744 966062198 999155313 999344194 235716667 698675170 764667223 987699744 893903214 906222931 620773851 669013787 484913610 791708442 865603150 958019357 779480997 960949134 629804410 677136626 192650718 870923567 479363979 611915371 470464162 881608220 839505804 896754564 831767750 901644996 621371204 930060535 831289347 993040516 339733134 408793208 127841254 193784207 234954032 667525274 805385373 966957568 983575319 985862445 232898336 326416445 359152301 673204158 439205662 478996101 669432453 748174751 811927791 857818935 462898525 771804046 783147393 855904307 256133741 708976585 909004575 954096708 101645505 749957586 648539267 987719826 830300726 893700172 557949964 792001798 657864430 836577777 551458014 640949227 920003784 967696148 204316635 717249350 56991017 495617391 557354453 915513522 820115030 967914596 274518766 868179646 290993194 558875127 5180766 786148728 143470606 396901688 287151978 406672783 49375562 373400934 195081219 709787918 366419074 425796881 522433426 968285547 615301285 679545380 882202948 998729394 33511280 348039280 97799164 649219997 240363485 396759759 233413245 748917445 810571803 827957836 103443732 663990240 351619839 647336349 245144257 331336938 526948998 642151233 578081622 704861856 451759893 519044518 140534709 470933645 673853555 809377681 166230160 286618583 894149254 937788548 641717236 655607066 925502922 966497939 698312042 753586927 791185764 915772404 809849391 823696670 397555044 429630847 345402856 884842449 410594515 636136633 375250096 874863905 246061956 504794342 640141425 870409548 199534695 231202055 710584259 845652943 849128444 866490277 237737038 856044772 527918516 803650486 445785682 602066344 705630817 753879521 93173660 187189277 728899848 902890346 866003631 987650277 387115623 607162686 523846884 777618113 142165435 496721246 989467316 998001153 963000508 985253708 119485522 668618146 768421643 854152453 138349708 632219967 402743059 710440018 728971009 862847696 257258160 889861396 932405928 978706548 632285716 822644269 434456825 740293683 427500142 497234329 635930163 689596573 671853360 711245578 207796821 561738984 729304982 899809571 443815374 713715963 153360956 328711753 999320481 999782811 969423649 988374261 939382137 974231772 38450555 900476963 483557110 499591295 858097524 954566795 284661616 872794100 578653333 872621549 657036417 665491908 426480521 641666400 341980915 423492380 894914554 960636239 878921329 916543363 389597778 770531032 181153377 903317970 312105969 319074619 195440364 382823918 833668229 862841584 293495822 853744089 301752745 679489309 500329020 978337880 598693035 947275115 792400709 982302739 913336201 938368812 44763181 276150661 215879173 280673306 488224977 996819016 89544115 260462170 869515169 975610521 410045519 671665714 604526523 664721853 943742572 975222558 613252194 702169931 544013615 808266008 657358063 760167063 794895987 821485376 804992170 818824060 246223283 761921696 825799310 829834159 763905294 788924427 454722819 645787193 814731022 824519330 849831686 891534506 288890670 876125677 770764697 860568114 899538886 932475169 896280383 952388202 789455057 985330231 621649977 880218634 604991780 895422215 700778112 849550710 432300370 687343203 671167014 747272691 308865541 783233060 402290215 902582588 53084218 53390306 545926220 924065636 704392443 799023088 265759255 780014387 49613010 56585332 918940088 988748900 150827623 318855881 425375384 685634740 677874472 865277185 695411743 952488224 962069448 988115629 606136037 713623764 277254460 423284546 987526249 991447836 909770501 986131256 870908066 918766830 820446093 828470699 462616231 824386404 501360027 951427067 299095950 544161991 241987092 790128767 716569235 775001009 263655530 853961749 979432022 987115206 655652201 738143961 881758101 892592813 201225699 500261237 976865190 986535402 6713718 108874680 46807415 794219895 215254021 929967205 336565599 486529434 572327668 811382203 744276231 949939266 75780456 607208341 690166388 751114060 263827104 978659573 86167885 671208666 448847000 899261765 679699953 825912478 780631222 945011950 972978517 995411332 212747985 695848096 309562021 781325456 550402671 944850904 318927139 887277146 824134988 964690490 806258187 913836038 466074387 730476864 133142245 729743686 364670246 400967642 761783219 922825356 875392624 985032836 735647557 747810078 570121196 808089034 23837623 332943109 99473124 848575055 336606187 714233365 537830191 658549505 319632599 943389108 850601222 884741013 479083648 701512821 285077489 414178939 926515808 930937143 105843298 623087773 94245180 305349951 227252370 650886333 57289816 652270697 548469316 818319361 399799846 547501661 50676532 176344170 649827131 982337004 955727522 992760809 226626885 939653802 839551328 898456071 728865087 845635533 294512118 636724720 472310261 871184060 92828488 693613891 748640537 914348731 487833429 750053236 179105315 255930302 364435024 406739454 945369541 954144026 211030087 835614462 788678749 912131342 938680580 993693808 981427305 997531769 619246983 952031439 163974354 570735718 130598436 453745710 516827865 952757237 237360520 831095102 400777055 806673826 285007243 775448511 284865166 522414827 657401070 891641536 391948946 719306476 272000467 327883498 971832472 995700328 682678521 701209618 828257583 834638275 972157877 999342469 319747550 434742614 963371396 975802987 256712599 685817760 479454527 942208366 239356282 646325156 697666967 954939356 238141316 517752767 15692407 670997052 547076606 564139480 217117083 947468184 497303950 824253601 130295574 377218366 263115983 580803397 609729762 802245710 403636451 766946336 235094815 646935208 587081885 591011653 424499385 810031666 763408998 883478911 919951875 965024982 532690720 925253350 758722365 980756775 150935800 595906181 476816604 795816676 622963685 886369079 272974270 870056740 809780529 861244532 876051607 967158764 185589067 951561228 201307442 625810714 298806491 418120795 785517601 880766264 765717616 792713560 799926481 836774875 234582586 841339900 125795690 153118921 484815162 848365417 56792253 797092768 421858872 621695010 314227467 636903855 190928555 663352619 844566844 932174605 621655091 662699179 113664619 633955416 94645726 390876343 198674890 852994173 764112470 933911857 217436197 448222195 377876445 916943895 477490161 795847952 323714174 609534022 680770111 745009389 953886998 988510529 245154005 986855628 226449995 355723101 771347419 939268570 810833736 958566060 55177550 535091598 846331509 936095749 86390092 295100824 777213946 975978125 555803658 804488383 647277837 807610744 30156477 187458960 397652041 795204596 474906381 760259019 410787022 790714675 927111245 999577524 182578256 316531414 775199454 930573992 243476665 536175610 901409249 988067257 298219780 686605848 453154057 997946943 697466232 943761739 439249329 909908888 315028241 965516049 451266963 607915091 526072976 734844413 964190008 990870400 916140372 964386588 583878649 905903096 88391833 175806498 377336651 871827310 732959414 870884290 900571481 937827054 568242881 608529394 248030884 619540667 344172798 547644212 161735457 672260772 211496797 744483997 540679997 722305395 473907380 631744924 179812184 953377532 836973690 874317389 658786781 994967938 538379237 647782836 514062418 883517519 32971248 401562108 153895303 958920017 523001507 729901996 987549856 997730492 52531030 412428723 852129482 858053300 569122269 878860896 731052877 936985475 49222094 611538967 380351266 940935471 651506070 686929210 33424688 188345785 63672522 554388011 700899443 815102505 569061269 948853268 696802719 973793031 930290522 948273549 359720948 898275545 848926120 997069727 454358586 764735659 892731226 957480110 984805175 988010610 243129233 302168094 194351505 909133156 340311589 686131129 869317949 900434121 755165417 986023120 706738429 726821865 409440065 650830382 467952606 876060749 667590465 720465051 319173504 994458070 217481514 328348368 805944480 829552272 963029420 990232419 887256530 904067455 965581657 999381639 311147947 495978986 528517739 740606506 117441248 161367440 742604388 751682116 92802703 643196809 307291035 494749787 625751793 648502980 682569846 686028779 331909171 719373359 537473326 712283745 152238517 608705390 575743301 698405941 619864087 838659474 469140070 779642218 100599858 564255586 530731057 917730893 539241230 569489209 474198006 781429416 424978491 951586050 597691224 777547221 253009426 965012602 921932370 984703803 250578827 957908496 222944632 336285890 37830816 598821195 424696077 821470959 705804572 817425501 457338839 622663822 947884819 978028203 855455286 935858244 565905612 866842576 970877009 971410874 146982053 475941681 121577056 261413260 816935197 978100666 698665382 880164162 444542214 703060895 534824032 577693313 222812502 605398850 122745979 637948090 829346451 892247366 171253803 908590158 409814605 519287901 503566908 826449705 820180148 833598496 756025811 847181789 576532272 832962495 224412836 947670396 613313444 961427003 887554570 910572985 350587660 780570572 455847867 875388910 404253329 438781306 35002198 965958217 812369944 936542886 717225479 872753945 430700242 827622092 236876557 603580428 881124063 911329263 44831844 456354955 425234420 551780040 415823390 644230581 733710427 749298080 964357666 975245104 537068654 896194734 575041957 733414346 874605032 908980077 209779811 961984500 207632357 899352504 374866783 391940323 968579189 994690506 273534711 595210474 547404733 976978739 969333686 994470187 582635979 801216361 709434040 889152265 873185838 943443575 566793632 883330984 401849632 870905996 269494349 948863407 626034951 822033465 272457185 847735400 66685979 866951917 879401311 900879707 177188086 473797573 12963853 904346805 519666697 991458242 805255607 876074544 367802912 457051320 882194523 905390488 298711078 652536448 921830227 934542050 342630521 893661225 776470159 845679622 330521655 463767943 163164258 638296333 271004405 819056276 839598217 883549752 664256253 832894598 971667185 986508077 962996815 965344285 167919325 828906664 507332963 943410249 435355288 942594930 658826434 850844602 603442615 721189191 20585973 819862393 433034995 813869335 777069556 800652419 682260571 810944422 895759716 970251023 510141667 668077430 814105154 842594501 49485275 776390748 474354251 993926589 817478943 963143901 72558805 647892164 891300175 908679812 961030570 978027491 591927544 829343567 267013948 808896946 85716073 263851720 139757744 184827402 379512922 716373711 802373587 862640782 526876676 997906351 107761184 775255088 539031220 785306268 736491229 879500132 289913020 403681072 495592719 982348821 930737580 994138179 120202423 165241686 141447375 525302118 487047408 491237180 794329141 897039339 771692529 774959906 692862490 737268376 562115834 717579464 402509238 734453817 496464588 678823237 978777662 996482636 960131619 979957245 260465216 690477556 341903063 763330603 966294734 992717690 314209351 761091370 292924739 316905395 185628334 624973329 154754220 937808978 326734428 518058691 148591503 965402993 530872079 906837145 234909447 952481356 923370104 984778895 174128699 977710746 75305449 306569344 246223682 886182282 8007022 801479613 217237724 905553994 479212073 770886729 849357479 957299435 919354049 975535078 75004383 401465429 493257578 929904585 768720297 771415409 47454100 391266708 764397587 845231408 51349803 135138894 169653638 766115816 513613656 555226668 131192947 390343057 597682477 670179019 82877445 126840894 481033787 680186058 407414900 564258120 915953519 932330610 916715545 958292245 439073709 454991276 455892662 517295196 822696233 827705550 571297577 736275621 747174777 836127519 398055172 723383496 993124148 993777859 48334943 379241930 214572715 236885817 763011356 843598061 266573866 707553895 602597175 953563738 703256218 759004858 642494553 691940289 779044205 969729487 515593450 516421096 873705429 964241440 263869664 733546486 959691215 964516316 114926511 592635466 150685206 633112350 85266852 772751397 486350814 890287374 888035026 888496959 45433347 301654160 478265158 543575568 538000438 817593944 1974529 504036078 423883121 922668095 481309797 779642138 431605638 996540117 149691255 858157522 475772881 809860898 734253588 963377421 762851452 997625864 358512693 854818523 520557329 895535969 930767595 954752428 344425978 932042845 448485013 606810082 153247471 731437397 320866127 708205938 914647493 960480839 266127978 585278959 630809888 993797577 83247500 682246298 295483585 796553221 237774833 300205747 765859001 771887225 511142790 965071655 163500446 808470003 736001094 959799256 192797938 636258498 867420336 904266007 693866010 887651723 496727016 951428923 857281285 909413077 817635146 923685308 594553516 959547779 441763795 487838999 241415543 284882562 839092564 941360790 324321508 359623622 710079521 780932084 771692359 919795879 715315935 830247291 186993631 846483142 848520735 978186936 217642423 853435435 108989197 531232190 553249014 954513273 38020866 528383387 834235763 949016232 904617118 998471715 954848208 979368064 267288848 356970095 732458376 795775920 659744929 925578336 9494381 449714246 743061517 997267081 958493584 984823134 733292176 839040795 809990614 820581713 571311061 879102401 513975870 535722927 677622200 867267753 112461742 822382162 589548064 981726259 377258970 963834117 467099234 629411713 249636379 563067203 600670767 993091907 268796144 518268389 283417468 726666720 43619051 680935875 630703887 999900728 796667287 862203796 995577196 996451370 630562761 830493481 333003066 989639124 698558677 736659640 305332223 527412921 83436007 472472779 235160575 990269990 961398000 964766763 701664361 722139119 531734341 540658849 505951347 875843562 307766819 840180647 198508821 312370394 596364039 667135798 889476212 950760540 565400371 874339473 585565136 927297601 56869124 150911023 146230729 736308852 532866718 919088196 498733517 507756306 952631905 973489018 540777299 992583546 550814012 694737581 387854367 532552552 657162136 846281538 304097109 394717381 280821317 384500451 755336615 925811454 767172690 955488752 539854513 616822301 644404882 968527671 123119463 497818617 199011299 979160235 112095707 283167484 591986668 822941834 285702394 909585354 335454189 799986408 127923073 958718413 649680400 960006591 627348116 985805129 559835840 686552393 533900644 553409206 50460201 200043922 212646778 980484618 706466286 955978906 470511811 490425033 405764364 803035069 685779080 919976222 977517426 980634052 458037440 627594652 767822237 784864718 175974827 534780576 749717068 782077747 592650040 704245944 15872451 937815093 785118014 788260396 1297695 673275672 138848564 950682786 605057588 853253713 960643231 969948328 384189809 903175531 233572425 412826275 179547491 984306735 658260698 963335359 985022117 993305712 271601340 706835703 661236984 905894802 848536823 851695381 818225849 901862298 297693232 789666864 300319693 421578823 626306251 697898553 180399691 332440395 295246704 715190176 451764075 914300381 482012024 871854356 825374113 839839270 37664485 161109071 902386099 963631043 788857656 826183679 307663045 821434768 260005633 896307668 939357386 987886384 129633378 238018612 182821116 860019562 544269371 715541245 958154015 983598975 718273010 853432879 572803954 892099640 476633798 755115915 760817583 946893415 926357404 986279894 345499543 659429119 814002565 989654133 928440024 985162012 90369982 931469964 187057522 451180706 402273318 988154074 86917334 823301484 816476449 921897893 298803828 904970748 244591678 560717477 728839645 737964027 975844003 985483213 498293667 928164775 410616967 734320106 901257257 984734255 227943738 612166225 940164811 969721070 288516303 452545727 988494817 990053652 304948010 456635508 898840621 914693663 150470893 734211097 330637727 705081471 677647821 932817343 876912199 986908307 524081446 588609908 210798134 909349072 658448562 837942227 620197690 629912960 961839620 981933859 60894444 570739937 601937139 706269934 638106066 982459799 512165939 972503033 481207193 709630379 241546372 523542203 193206798 301441187 956335692 977295768 476422226 730215775 738290493 937206121 26188573 467547160 811889223 966195825 547544134 757517299 873142068 930007462 656813611 692601127 413923532 603776466 705992655 754506012 326731731 797504542 773406351 952197779 367559397 373278541 543263283 765976204 678022279 745581106 251549736 627597459 763090308 929883240 122982521 896449785 803260964 848631555 953667402 996620812 981123412 988002507 885262013 893298900 743605233 825765618 377806183 493041326 569595454 661509542 307188055 529533167 281554511 872968918 439679085 710175731 882003396 902969892 64930855 430790238 875061684 898753533 771425632 924908594 297838420 595109754 709440354 910260523 336977427 710666834 357478890 845641693 917345037 963614801 692828394 839014876 879637641 962906989 508658593 517441095 326938212 471964238 98256328 939246557 16889229 115822930 459804145 836792862 19922712 598557210 723490758 846602516 998792338 999518279 57871741 499092007 237140337 238225566 256558770 747784427 486600181 648272619 296196514 551462867 580777174 931954732 795677071 821153919 666343170 710385232 782646340 939744259 181469948 966162354 68962750 185012303 356407835 399595015 433928738 463265674 479285136 869618508 195092737 484147267 79237646 936372080 713159663 958543174 770845378 788963999 244710270 857043645 627845368 909756141 601752965 604802487 281420670 730607243 310911719 649128193 447825848 605797979 383842866 750223314 989137892 993285147 161984559 963361615 275200082 596959695 749453888 819325162 481261049 850978439 503546302 834509255 767245715 831275100 749177228 939703526 914709177 964492997 273550479 849480856 943807729 989259166 879556108 997964000 975055763 994891221 315609453 918102377 901045026 950717569 876422152 885287726 177633848 215586571 148068156 469272978 536157778 594689392 492694499 723145064 225706332 981452949 500564968 796115050 196341791 416146848 362547120 512873771 145182270 919276084 593053642 596057738 148850818 387355303 231545114 318667786 69985132 661770218 458967134 929830333 18135167 999590046 290521359 723130398 881669142 882962702 666688699 950859879 186100569 870490511 830236835 841535723 354089136 650278242 376802790 917868906 198425003 363379954 704748475 923031764 71390312 412451803 557018294 757589787 416140489 640279106 179109629 712624413 823186187 837061799 534041875 822186321 789848398 942046834 183821330 510979250 110890038 384237231 146779224 538682699 308440591 438708045 408929922 889024054 602036988 636905859 741843386 812332077 442524638 637705714 668441665 919083659 677687017 839035725 258706119 808081743 864224124 939111548 872305692 957065457 215588728 726303224 99704786 386655079 852643587 917114397 406603572 543868526 527068806 748797033 544335496 999142800 933370045 941245298 250457866 264383532 7284517 77572005 178833349 402779090 643809590 907329495 528422602 759041059 5912766 290405384 876646362 898974326 891308849 963938238 539117936 630118558 517245968 591797028 333528823 502593534 742071149 930942265 132863782 797910969 536331952 764651503 244225707 406036699 423267891 881868695 814589943 994165702 232794973 797001998 547505024 948283000 559881502 651490888 153675024 674949086 519032082 960253362 374601978 838236632 155899948 317680507 527114831 593408069 621258732 986795017 849103966 904082500 469481068 790094528 790675048 905675411 541898507 553583572 748741326 784812128 920163199 989398309 866099095 989018243 359877542 753145211 453738125 997421706 245063226 887871034 33609332 661973901 32777061 526151806 14325217 639647187 505467179 757289341 538468501 845617094 460873365 728043279 368011049 932233731 591484386 631999416 501104521 878760337 298059967 975531290 666498833 757629970 799591442 891523096 904735893 916319251 447194364 646005067 975735611 989640225 71552313 371322338 944648207 951864976 978097832 985762520 893082758 948849222 308494105 940314280 955469697 977179552 651840966 855251461 661236903 666713104 388270667 923232548 385376456 845021552 296057182 634566249 218104903 660768945 586370362 934882214 25382236 402797284 157021942 250253639 17199750 248237309 98961566 538489046 898089038 921323908 855933157 893122361 121309076 730717742 56512044 122618128 818279461 913349420 381574914 699468960 705915388 817660991 783694817 966500162 16447146 26564213 617938772 660996616 483131976 858929836 387939824 612266204 371682683 669488938 376969759 717857340 781941302 946205158 282811053 977729931 487878850 674680096 831414725 967401400 18384379 717055408 439368627 874033959 79917064 229876642 470834058 720138239 327748 371508362 471272050 867555550 43962494 138899550 535315422 878818390 31808187 395409950 999567927 999880250 574160580 969154238 871415849 929300692 444046028 720246331 414676248 945441471 266556674 977934065 505049349 591335821 976287912 985438528 569924736 571718783 947443753 965178027 160277223 384428515 241516384 564094950 39250197 306198227 497262817 785673729 609813785 743557856 780121299 958792469 477531630 526739073 448720903 815939075 60668813 859778546 31263958 90133827 758281559 797608901 754017266 812353773 96085041 639434990 772991728 976196879 648326453 793607799 532717577 602854548 70313257 491966985 336024501 723706511 315896224 330800310 633486618 810210679 821141293 984354573 187693508 739707094 940820788 991327258 686926026 978028295 891933890 908672584 573415857 922617997 396663342 548448035 902694018 982018471 107269146 328524884 813718237 866404070 934674411 973299811 487900311 660194304 977141288 992165119 399998476 662401267 651817854 746604008 325679539 884819674 323998478 615787319 266008009 916145394 53646436 931831465 84195543 424268338 78271390 889221394 510190068 770469010 754826352 899527860 918700482 937759589 94534218 233587785 992043644 998677722 296502074 661757907 950376504 998625760 127868868 724258135 889330802 902188709 5355685 630396715 326126110 842923186 908733789 917517827 634937028 796963943 226659281 473403828 742946182 870665308 864727747 909716393 479814505 976266141 472246007 698656473 550676842 945622967 974551589 982076306 938007007 952713882 952984252 984288990 533681003 800676615 766829654 952272953 737149700 966510741 251647395 670784364 907120844 959790068 992508232 994715128 479993614 777920061 555216594 801500866 596484770 833706334 167066731 441680984 966833506 980950442 304473371 455265735 188641427 708023373 367055920 970480188 556195195 726653383 465858012 908203097 674189074 929842325 943239937 964072434 221031877 364710510 505220146 522010608 701632965 805993857 98038728 481482883 534167213 593242026 690149095 942033972 7159241 512799659 735253966 750102542 647252231 650391759 27015050 763443621 932935294 959838933 442871715 595825269 505523656 689887737 114992366 484007157 665448819 920826714 567721935 627324219 869577892 930160371 421668410 678211706 218613072 654915660 638781873 988234404 469126121 501635942 927612749 984118148 531257427 866747625 252941491 990708212 220760960 487591082 658360730 778517309 617896166 864679853 56424917 248733474 251050768 614171802 853380785 941194577 644860242 943070051 579967234 712264400 624250235 721190580 561995912 631753484 883885266 925373250 9876386 771478519 480520917 779946159 348033773 854412384 291666551 879475066 587600727 633440386 292398781 588543620 215538286 854214050 144228954 182803920 954397554 959431353 683864081 780304526 48730802 526289019 94875840 620498609 71146598 767328187 310225975 656408725 561262952 751467067 744439 6826034 919918519 995297857 692822664 799210824 243304398 625583637 906794027 978073810 631360437 964846617 126130519 463409648 906318283 943452202 7058442 982743262 830927250 851401848 672626200 848712425 783310485 894149949 255543722 803778454 639899492 834977123 808785733 814264061 586880773 830946273 888457477 959778045 900335393 927022586 594296554 975846447 970185226 996007575 200523226 862858015 244975659 836210358 141364036 502017459 606921617 680332113 980614649 992415748 570198153 850737051 842074466 877895389 122096670 500747201 641859392 642703311 387171437 770041790 966995919 985958127 296344732 692939842 56180131 63355294 245676469 758784820 589235881 959687742 757864467 791092403 970872171 982475840 696958255 719343727 542306200 855717449 100943985 388404139 782905781 996779591 922285507 968856803 343155458 689892824 389394807 589227451 690462941 917617536 949821822 986094235 572131670 925295276 175534170 583210040 274753134 327865057 344991296 939100247 779163342 932704205 205851047 229754441 25392857 677596132 251022146 374697252 815110130 824162212 323049672 863922450 336518177 729851765 484331003 628340342 925351886 930768603 342779255 938344175 757186153 788464585 382555037 818064892 465826552 835156175 671289312 923925578 694337978 939087849 913963004 925709606 985071577 991244393 3724206 764434719 230988374 474422488 633584746 851869933 173882218 337604293 627604435 972085809 541123018 873389213 858768166 865283070 809601325 960802412 712499522 813389911 139832686 724690809 693274257 840096721 683335971 927889109 516984211 945467533 527482481 928599961 154520820 726055733 884129087 924317216 95281179 750957843 948943675 971744812 227121242 735224694 548619714 598276120 118495852 244325086 809951538 937395575 89269290 444044724 512622313 761799505 94392588 953179348 18086540 316363695 107927565 327142499 52268969 75540293 813861776 904158469 901247009 989661301 441755588 768062956 616600797 989080606 12468877 558255751 635727520 848716959 730289039 918462854 584851493 842760697 67658601 327028695 294974075 718718227 757566186 850924132 631911218 858918851 266258328 414302440 92790479 847281382 810669586 968161262 688606921 755790085 214456942 290203227 62450020 143588674 855752000 920389461 58115338 138484541 56089116 754979038 593008829 640949498 135369766 469753517 474530339 769121801 50950101 549961039 887578729 990559612 683170511 729588773 31540733 241128386 186639151 754191337 367322343 774946487 560861888 970666607 259997446 306910946 166186866 303596288 768372777 907796850 758301014 791496003 326746606 706593225 134571698 150957551 983199786 984582787 458345282 989016078 700411301 843932039 155829038 743369807 800472026 935093812 805825334 892283504 680523316 967663502 515392461 764662660 243642099 271181136 135835435 994406490 899625263 916485457 427841160 786421596 980528636 987926156 493519550 802763958 467143681 536663167 887655526 906200503 255145249 907412804 313374306 313527115 323589906 745390380 38578590 706037767 888308920 954642986 913020358 981834874 287604697 332626170 956137211 962746943 714816208 821667062 286137584 479125184 935028580 979169547 926716961 950601811 594640340 987222957 305510477 999562098 550903718 969709406 620841371 653114853 698664533 809403207 929635323 986234370 446022871 894739478 129826338 137734903 27921792 160925033 89018899 749992499 644877229 778156655 996312059 997265021 145998857 367026006 866920214 909046490 650617566 885847020 750552112 987995243 44791064 340082411 451210284 637877550 702330647 790100991 253625559 843306725 725655311 812131277 538182920 716815030 696209647 993896876 102383306 528715077 631997280 676888099 481873655 981149996 926566826 960416217 661539343 662073311 898101537 967575372 355719697 665362711 545086662 617565121 981549353 994257514 399255858 444782865 98710425 860879234 613400796 704527678 701934355 958172783 631358438 694553003 239342890 659683062 124975846 285840658 788703086 951112619 288937743 520324832 126199818 778856580 64691765 213697796 212091426 948089118 369565894 993357878 389636798 831283821 272288484 846302196 267905340 707889698 621449431 857960322 26167756 115582588 205402397 825233192 783044709 916234499 80104061 263738519 212543410 241755729 913052826 969688608 89402909 876444899 107064305 456124497 489190972 660178246 116995093 684858497 901404105 985563693 313991223 899685133 786841275 817972981 697614562 974904502 339411801 756176440 512720712 838592999 77176846 464369808 218314703 654985038 809461571 940216733 806003132 811632579 119533800 832745641 580948852 623244129 738182488 755554066 185177943 858533149 558928709 730034011 855240517 897390357 565222401 869733340 119329834 779809922 476250039 810460291 509492537 570365543 674670956 743851595 158171515 585490895 227622963 421839631 496697706 943162644 902583007 960011568 277696157 792453466 291801644 705947934 587264054 732548077 993903432 998379784 12087059 998587284 992538002 998330116 440817424 942001968 598692702 949301955 727116679 847639587 990891474 998937889 384161880 645962980 152461326 515581311 915005577 955249010 664618451 988415580 259409770 455625736 224186918 740273958 933590652 947565593 113890608 430753609 58691968 345104667 81044051 938644522 14823343 233730408 1189084 909619776 637437017 712574230 145654859 953091986 499558934 787138840 142794589 327990360 940191096 979603769 270328091 750624772 812698554 831929741 869643487 993950386 921111086 957940953 865214301 992370997 44146091 772585770 986472348 992110829 182053978 880006260 540354511 600675100 130462364 686664781 236079430 253754708 930901987 985124791 994476261 997929603 263929221 721993102 438969476 722608998 940305840 954645575 721841129 886300216 980431607 994827718 108701066 974382545 942127514 953693644 545999020 548819798 11743978 611552583 190609427 946553755 510297469 699357331 532336360 952190421 907195481 997149905 487379134 990670013 542984594 829790217 182366886 209506669 988213331 991922897 645785818 718357775 231487589 764635159 598975933 674030781 835658398 989154007 154216412 458370621 848729549 939801939 154282755 287101726 98328395 652614491 15235779 878128160 211779430 472480993 469849821 728552012 653688581 742749974 386569471 902852717 985951986 996928129 894182037 973185324 186203667 613795772 433784084 640401756 425544628 631567662 73491995 816892937 8978668 994445232 925675976 957148552 706353924 930296236 211146140 381685589 527888627 590582551 102972676 456334663 560110483 820318394 823951034 993310600 292158757 960545260 330818741 740929667 641635596 766621985 29961163 375392836 583028976 666217391 378539931 593573726 952120637 954871587 286748086 552714353 585502991 708176519 904553703 956087429 266262040 837745813 193205795 868383126 429785516 911058882 265408632 361893527 880283171 897173289 747333607 861105063 187208213 321144473 371961352 820548983 676525774 679507001 802635899 833707542 105685649 326224160 493165294 775985375 49806642 672357257 509694030 823747895 319215485 377226543 788798387 816597415 56885763 871462188 917085135 936190591 478864739 935502977 961716906 989602184 3937526 95493551 341596164 855473320 412258255 549845951 521096100 779007545 745798347 768091636 254523559 312238716 515395737 651758713 638801437 673919540 626298666 857390404 8552908 436602449 151870189 383931734 268545608 330707388 107570388 184346028 966833539 990155438 287089012 747849307 766744691 974961780 87473499 721369511 888848184 967722133 808070651 999683941 541509894 541981315 303876560 763128152 839509188 997643732 600619776 973807251 119216611 888597098 410488722 923895080 386261788 935390801 128176513 862592070 33579599 208887070 561142255 621711755 461031730 683362234 794426596 888185186 450775145 974916236 130078111 250214004 331845118 632517978 677173276 818267909 722689232 788918596 862570926 898951073 224937924 946281726 709024760 817160811 796125908 871530233 90394185 622592691 613475339 782556589 779732085 918532022 728198537 868295391 909890892 967891403 233286996 920647483 16539855 577959085 907048327 924352861 523152117 609297641 20546351 900869304 762493987 783209707 143530310 749039091 80544871 940859238 68859008 552856798 112713921 691636139 169189117 880578152 963815231 975657296 225526789 948372631 377523196 425154486 43237802 411462760 496876475 577564467 113781093 397093348 583279701 687500345 89534507 867639995 597583859 791117490 451232361 835315007 295983294 415896585 429672077 807339239 370186910 615111027 23988829 866707800 129321782 312821383 215531911 584228146 91033759 129798268 770124514 837927417 531768580 764750217 108884703 836779378 859066202 882674937 777726629 927707904 391759670 762057419 305537352 481759153 222429224 619503975 132725306 212887119 925850971 930787509 931874819 957461118 430645120 519844922 980783637 989334509 99779430 874452177 623584847 913466953 264923809 993207000 838772392 849387894 37269396 922575067 972079299 985523681 277371162 635342546 845510861 942268685 677944287 868485908 25422832 66194065 361742923 404893848 396361112 432447318 490552646 492340003 131824168 272588862 382046593 541879601 65352756 231886309 343506460 632130649 164128429 258332745 265112179 283842436 8217171 412357166 327627640 857207143 972174213 998719770 585884171 881066714 845592741 896496971 574417652 915929546 817670963 999044423 124920908 306086690 859299617 994635452 171275217 419852914 975661264 988866837 666586111 847926882 31042987 151939965 565311402 789178880 647302158 920370386 280812729 937424058 579453975 664465878 433711515 566651072 613016349 680107453 971403996 985775128 405812853 755285378 420507580 751744091 625349923 769397525 171284293 882592361 955549700 967618202 191206153 952392921 440088011 656171254 262681910 872370847 583355387 834649518 201005051 844928859 138923869 645089415 624415174 990300729 9884696 580622379 776024238 839671500 992234791 993789045 353876261 410569054 32734942 60627439 980487941 995634529 268972049 708308299 580166688 583835573 33229031 684168687 128392701 380141181 189471665 517921546 837688915 876108101 552120725 918601935 280750573 434474335 577123248 773602440 797208900 841845452 179071138 322477854 846098180 925279780 276534247 705922996 694384308 702089434 683320217 728616049 684195203 707542793 663564780 702309795 316064196 461657981 705553827 897450127 588120782 949285618 111253242 939455711 688962553 830167794 756279848 757106460 601993147 630141490 172161136 285964532 879466937 958776424 997847942 999625229 20775529 390877959 293964739 382698106 873992517 915482074 225973520 754928789 262132131 387472068 683250649 836216036 103088681 369773659 567445189 710184758 864629184 927034971 70325060 404233669 783917041 921884184 683974346 986897754 415355895 828440345 421338397 899194514 100907527 707417106 778576771 924821963 589010684 865745539 31742513 57676562 812371420 976801100 95749417 434121824 862602303 947267245 273629355 657201496 798414240 967247005 354920485 698473924 108562035 161819124 123812116 824302801 950524776 968531520 557653549 570075118 641598580 815068884 986566687 991733640 964420074 984087930 347814307 726374917 423507379 790146397 136389971 909468653 141025981 491599467 455294268 958773533 965820402 994231060 32756154 922207052 992887725 994679799 592005466 649359232 556742892 878911424 528751410 954216793 435700338 905062247 542962873 803094176 24736772 902670557 225217746 484871321 246048766 372795230 600995948 800991751 21787823 480907947 703482607 808557384 126616383 361855380 889002006 976101807 364166585 625054099 218589518 925224705 886968826 947233576 33758311 377575240 537024948 913192048 556485683 880191808 180865566 374131301 913030234 916013047 728488413 729515497 891426373 935341179 751277180 773073188 121947418 905630493 469923613 766443644 373979857 747598682 91813493 971523517 191006306 942800041 649662376 772149597 863222909 899829640 759054732 806033923 100029894 356964772 607873262 623074013 414890253 475171293 441543352 704645726 348700237 628154065 483943118 843328375 666055562 876393973 32492443 200842987 722474772 727127400 682174659 887380257 205453075 898715383 460956400 699790180 56294057 325204884 536609202 739341859 737852861 948772369 798949033 820617263 816688416 881195224 430208340 972242039 148732828 194873576 4366089 48667641 580279061 759283014 743741024 995934880 737633331 935562475 27016076 281686823 358241115 701095055 449309436 638129240 603171682 883166566 651411240 752836169 33011903 678011211 556571635 742887503 36089884 337751613 939391516 993923937 969829544 992614152 863263075 946866250 309254475 725968360 212459375 414720143 702087828 910890975 172745525 175024871 556640389 560249759 892115396 927343940 80963910 569137699 91120476 353271873 51021801 421148052 10600284 368763082 337250409 950173577 557370651 864553250 77932905 152695647 296982311 548175322 252477708 583220726 618414666 940843001 116008590 862939153 22094603 694712435 756029537 962914947 261488183 426001603 175230546 522363744 10497210 79506851 178729157 483925687 521806657 557224287 362209234 752977595 51666932 795674958 305544231 788873210 88748060 526736244 821695867 923044598 824518826 914508575 377029614 983395558 960242486 975785984 546377507 732911990 923595819 936761192 45691782 495509084 749417415 835933628 17200832 220700214 752362312 841116141 743735042 744179539 931271109 949616751 420008734 447113376 221659365 873001505 447660653 688455587 341937122 793254849 989695320 991624953 301737710 345964200 785866128 840710744 143867976 915147043 667534501 907072155 508202707 680339354 327188784 891249869 883796429 925536419 834922522 952292733 552177955 926613089 657009588 928772568 866662817 982765043 858851559 969332900 386177065 939527278 404461899 416298158 303677091 433880304 358758557 742556714 78909075 922413324 321323067 441892037 643809559 654761664 773117118 992935282 950453300 960803643 488911316 936019491 152852894 351295696 414479642 646177334 933731805 971230602 511011915 537566602 446007856 953145802 258059226 805309853 993670820 997739339 278369354 525563780 902392840 931987772 394481097 749955569 946777798 949894961 378797388 881855218 159762040 537054362 276580121 647545864 842603210 967205719 360864901 538768972 314179506 336991329 17537801 479076191 309719086 378354816 765864888 819612415 941983324 983499367 699455132 879794349 921859580 985563216 74951524 417756879 773087919 871952176 766822557 900105149 307720989 776752612 440315350 607819542 406473360 678543744 477241351 576783676 136993633 662534629 59788109 633077596 940113614 966631272 251639094 507421304 57727435 856930393 396353134 591067361 5171585 510470536 337505648 653761113 786999015 895235084 426582163 840207744 677870618 736343112 133586715 709491438 647342793 743001095 454661779 741050531 351568198 623580996 251219472 829739962 840064682 945400155 754454762 809072745 751608256 967461643 627112194 960618733 714943830 862786167 277352579 754790450 335646952 856526105 432565172 593476309 450148889 693350870 644044406 692796175 405792388 788946665 121761077 316526299 80909368 118632661 3232525 473126823 455952374 646575904 676236971 841089343 193086759 715106183 111548357 224893007 42205808 943402843 26895291 457931952 803351043 974367049 882235712 962295394 382615193 912468607 661181215 911236434 644553037 702414825 225908827 724551006 636055300 834400146 17299802 28627798 507092467 526745952 757174888 799866921 51479660 647140990 890926707 969672655 644036847 663241231 298765501 374791085 874792360 941429507 923670537 946836425 3922956 714916890 336212451 462741357 919442729 926926091 986636278 987449267 238365749 784198993 308081431 792295837 460829557 870234502 306600407 848930554 866371179 917057567 737237955 754154430 150704350 710394239 351486237 847559080 243733343 999308362 804181303 959254724 573208863 699472937 661925227 903705474 407562193 958803735 897359457 914559525 453693443 818289776 224339232 487516490 792747490 892735262 414798918 430495632 980202902 992354955 243709028 680972972 178735070 533545015 15543255 560847812 5379363 120063009 861751731 983707403 746045285 836627824 393518279 918354367 778024157 909708144 64328690 371543012 176927230 423941727 677244594 890532744 336306689 830772779 635662344 709226801 583472181 750988836 955625828 979507473 80529481 497542807 957549279 978440843 791360197 927425416 545073097 880777613 124661220 501329776 446540213 589966293 823521917 895742081 585641995 857878416 502851639 616476341 813664891 862102251 838818139 985960158 219300294 241182170 926898768 965684497 391480779 515904325 317951894 358877894 764540150 933527191 768276095 812445662 637688837 762004272 12586454 149640669 34990037 388086984 271174484 623340152 324529126 820987437 500235675 737164209 902202851 943072219 964274551 964506249 491192253 680664048 556447032 932184062 24844076 474794286 937708173 952624524 556292234 719118822 756527907 997379898 694474399 942400434 37270256 915281022 700690009 818680038 763560675 890098930 929229770 985785164 988697779 994231151 150772554 371266527 116370008 378229310 595188224 636453592 884813457 898048258 228825280 618038295 523016017 733505889 190188148 281160893 315529057 516845770 226666170 477019601 175283988 510446391 629664348 785773215 823010992 881232799 633683996 884170781 805533354 894324421 101268479 524882948 554174922 562313932 886747161 996646758 666785857 865581050 971357587 997764033 751437924 973708839 420067069 913309839 829991031 882977452 469614346 592551157 86384699 255927218 860755171 926177517 263395171 761448536 10788631 723700813 29787040 612358134 260428621 803120618 429609016 538737643 323178312 970721917 173881347 943932136 173773634 269897118 203410377 485381284 318051040 417813204 145784762 599363934 584325851 762423689 61026159 741225170 848018669 901853945 58942214 694014739 22603643 545993354 868335494 921712324 856170979 996372449 283147128 467602048 550955452 742222192 63435564 973050942 16481161 733620718 928278385 989691794 554726796 735686883 296334023 370118469 492397598 651332949 868922989 901103400 108292490 584245984 738880146 921939151 359582675 455537322 131246189 774953514 552430177 723962472 308053901 643726480 261734558 804692996 477158324 795750462 602079737 758635501 810538133 871544106 643890473 922798892 364001871 540549123 371210077 381987975 661176439 913952674 777931684 903892084 32323220 42746883 201672306 883689406 868740437 996758427 582184291 827313291 52479073 942852122 464168754 571586978 358762943 913126248 956171136 992360030 270776381 447127549 471014539 708986680 819317416 959419545 413146547 840934011 992617 906030978 340272942 389270082 357675086 970727616 963410027 983135441 37615308 214643112 41264611 461153859 872107183 988422542 911000837 914476302 447939997 580283643 621343957 689557854 871686206 979096406 214924820 951068339 147655551 442508234 915330540 931246455 814843860 950484056 771621813 816905058 362134467 913775907 161037834 244019036 770402969 798638356 510037131 641142319 437438657 684371590 948401573 956971538 346732144 604801807 499478262 973837506 453428044 599388490 925887276 936378042 159177017 477645428 605297693 717953432 715010337 899795182 493167377 784541283 23323231 379918050 649120611 880609085 910269255 939421240 19125002 579918785 523162046 804438716 863915831 910938262 796060384 910536364 377585905 447187793 716810363 933175346 176118888 947612266 809341891 893145506 639801617 657887165 267489272 868861670 111993429 296104983 591777278 742079083 144463043 787353793 308546597 792787364 585704117 851388241 474168145 479959691 466544020 982208585 325449800 831977312 112863639 398818805 351092418 933702086 862433240 960943991 154587794 796387820 509943641 983654145 114079715 922076739 749077841 964237191 295190339 527515648 593525153 925947145 83313860 262022433 213394156 801402959 290175867 773083449 408395876 796071997 234693708 734915425 38177354 672227870 210254145 534084630 361934685 383572071 77393020 542853970 245572746 960531085 292665290 302751085 911199792 972462157 801240073 995092054 565926180 570477975 877081987 932690413 870319983 968122351 166503858 240471557 166269383 925402033 739685600 821652105 641782090 879156670 14155676 248604748 124731293 413950363 611409933 863007879 817945095 879051421 297614930 489587586 247122926 598170513 902499967 927388291 672395692 947325271 204847235 906713629 685767406 819426494 460516520 751525298 933420590 989918131 900529626 907004336 820935100 946873639 753108356 872400372 398375479 717888505 19623927 744572396 291094364 483769042 24224160 60934340 721590715 824294111 49484354 779505816 274346871 447483529 133899198 767644251 993287870 998982537 34842228 746071269 567618359 642421661 308642651 547055460 735929918 947865801 628229829 781098077 995679082 999123520 817625308 934385718 151200855 541263750 833435668 883947823 663392052 738263858 491367963 781136079 844047794 974504648 391776660 882678935 486974882 554096561 710660849 883090868 472746251 822262571 420241213 456838013 704477925 877187028 151611154 690780368 623023859 663704421 286358221 952689469 472353588 926525211 30282954 962901376 597666494 708299894 42400068 501360454 216008423 242918630 434186614 452633735 876106074 882268190 544673589 758053433 308421012 610042865 118399086 495401045 575511959 585641885 682325907 911490256 13334592 649063410 535675849 649603417 928416119 954889704 480076853 713391761 245936767 757288381 411360775 651837480 209479229 813205080 817782058 877835975 330679060 717828322 28242606 331609143 244104539 959392457 920341858 945931935 180780126 213138002 978977899 987990114 371385683 534568822 471871651 933085418 522662354 535568567 177947551 232040047 786499483 816806982 229725875 425566903 235816336 588098421 187018629 586318728 300757384 499278282 996869084 999213618 246291678 946483879 320782043 882868382 955800223 964821182 259575397 851422715 488534871 907822333 689870476 908607087 573434950 891548442 209395101 438322738 805125461 874804834 947591543 953977954 707177275 749351692 421627242 641058139 312073663 856488290 575650377 649822960 402103466 725132865 879380957 962750594 931517281 977767138 221763451 370398593 844001943 921875523 211838059 681824330 583325136 940807046 385819818 750458792 705032980 870652862 519728375 597076590 196819652 755292892 99483520 488310751 193202721 987877770 179954795 252517530 558138480 892572023 315758656 606626884 304746192 761145332 414047892 676727279 454533794 484296903 329033831 839382702 201150698 466217800 575486478 860436939 365095887 398923320 356833381 749456964 918872347 922498630 921333065 961739340 160591213 619833597 653334518 779027670 201301973 370554767 118597533 538367761 7324248 586418615 76065509 177456019 554412160 678156217 17893850 206099104 431253659 595403476 7098687 514993017 223239710 650311578 301651363 538935163 244068793 778517048 294185535 818064780 683324871 706351260 132382568 342153304 400181197 414519450 189708361 397851612 37681847 807088736 785505245 901620241 205694795 251057228 514777874 554690257 660394140 683498164 550123973 711733679 659815426 820997698 20597380 666364678 145441449 846345803 724961258 971002055 427170927 556834204 271045251 721599835 273688755 382854839 127151760 907915481 734086250 952685663 897203822 990610473 453148623 927832617 276058359 986430284 226270990 905199999 416380782 502855076 793267768 974521072 609260173 620823839 537442196 960117331 599409298 714398834 66850222 564762687 891542379 906525835 507442080 549547527 5245423 325029477 393847704 532537036 821258317 910239576 911593924 917842444 367708195 525012659 644175809 772065053 483064403 530853856 882289552 953112807 939095420 999908311 605736793 819196351 196766281 299914611 596439326 873433577 5426869 662022274 990936795 991910571 476641412 763458169 597231573 631579792 412172534 854892313 265544276 713249575 16577932 89837941 624523397 872588115 351585131 526712843 673225293 877580648 623194941 862913474 38868521 117469325 583277458 980610503 91740084 592198564 725328256 987691412 531161459 872721909 129558913 449021892 703836724 792532566 117338388 767552491 756228850 959615298 370719044 695717932 305941840 529113792 139029762 919304041 803737997 814526712 918097786 933328459 366363069 664555726 627835302 985187894 84996349 692297220 373704760 841057860 786234664 793009085 183791816 956212997 371490892 570120739 880658926 891612149 217072596 611350191 876010445 970118331 42705422 624787724 319930835 505480165 713501316 785540818 392374661 483639782 764201270 848071821 548067709 894880080 461168825 625494705 798511183 850969396 507851560 691992352 853555718 899602167 715374122 982268131 837793978 933562213 539933639 952720790 94594150 504943665 110206710 197908813 273113120 401013329 663111431 909133786 984252333 985182052 941184003 994367625 218843578 600918054 713150540 763030035 614340413 625145513 824470379 928017757 283442093 646845684 286654745 478147919 50423553 438966253 370505601 879722693 261429534 525679364 143406236 733209369 592498774 735494120 312823313 719053442 430340764 558625863 128954635 699263993 639841827 845120389 255793176 678619877 196685840 933877227 453850111 747655340 768407380 957732183 653206757 657343579 6015533 428269197 616280011 701982695 553262824 632465023 940265042 957193536 343101401 917209718 806725622 848771320 86832551 737939157 114379430 608606650 581348155 804372670 239455933 620770997 260653768 428345634 386321343 438829606 442188033 567791128 727846798 770968689 890047917 970418323 503643969 578664134 276337033 518721237 495729574 545973940 340805034 753537966 482214177 915851755 135725447 703479709 52265278 714085836 953568633 973731598 709335986 976557758 854921470 971497485 162731621 555509519 232946904 604349586 14770739 93052671 420909220 440194877 762833348 815128784 85962880 645558688 841597411 899660250 569772436 824630760 602236696 606954473 674491464 685003237 173756680 536022326 336725229 985190731 510656872 789566183 294716390 796144500 661033475 959050140 838496754 904579234 949058073 971407216 80001969 594367213 131438427 177787239 477583508 748010737 366321001 724332500 315833434 772632114 787147869 810743667 821042003 943081691 566227089 642596897 692901385 708275491 966874168 976499946 104839133 191077703 702680407 729477380 400748782 994573275 735494091 877771191 48251955 449866073 810397460 936678164 790015707 816222110 76327396 322804556 397520385 796342932 258508452 634213921 426728118 638153995 929936218 963053572 382756309 999409918 600009625 636781959 330343451 874604380 77687896 854525534 515044666 823925101 741916927 882549540 944174067 975119899 823172431 939321084 203137960 768987798 502410732 528575073 167921301 559580149 938559408 970658202 313985105 923936373 726164705 934998052 998751246 999139798 972921012 997335829 236645966 680977408 196302191 977990202 292798206 921947061 272393667 362799320 289856410 548566845 903947672 910576056 321054504 403349249 236356251 479731528 310582965 768015306 497625589 758348122 203730814 388816369 762457101 889315311 591471502 846315108 976831530 991725332 757212332 869586117 612474101 877289975 71116053 928762704 159295741 737262455 844346864 992221497 794336381 943660107 277577874 752868578 702962845 916459862 943230737 992836242 782368081 784533243 124508713 996847439 293723262 400236688 724738453 746130369 682900778 916872105 23860411 683260581 530465555 540824897 693884542 819880596 658885716 935681585 493887012 730254365 200187138 586782531 208764986 906502648 887662086 948135700 916594214 927763506 282449520 609251790 743747461 808396947 732844566 879765801 477183824 979920731 585123370 882202512 934511079 972055429 445289182 488756919 505222258 678758985 793614944 827714158 544353630 776046596 612505299 613192478 109484351 487912537 42271609 705433194 805918824 815890170 379517730 636168419 397692490 900202785 173937400 450415303 965506699 972815529 796252693 890319338 999092984 999775957 181397824 845097794 279274227 667450036 970114759 986909146 467171748 698607522 3459021 962815220 303352944 581574854 35068427 826202081 906643058 909040712 656064627 968454443 394820442 570411648 688667124 972213215 89841132 583189911 470758417 651513372 902378576 926390634 782912242 888398151 226765077 374293839 159249887 710781673 790329768 824882723 31625507 532091273 743044369 834412077 991705502 993986868 199737397 425310294 324832210 586141710 508804456 946471778 881872820 922360054 755121006 812306429 537214260 597696075 610655141 944495632 375201172 908522831 92398425 368215366 572555908 963999550 108589588 659792104 325981508 927269720 207776813 986429154 259596796 760105605 969674272 973692270 196111063 295769468 71549753 432194901 476665343 588853980 657654949 961141493 116267616 934073783 132191215 299836403 595712943 602272284 908430543 954057103 735589235 915520751 742325283 749486655 126875644 434357864 617033945 681268878 40075122 812440158 313605425 813178825 665092858 739633924 651520012 681169171 773994622 927757699 276420960 690956445 314805035 602182164 227150353 596008810 659688298 703613163 2449856 362865141 689879430 804527361 949944164 981523476 80071967 642440745 812052012 909283561 366046575 898866711 468919734 915915781 151977329 165760056 212086698 688424739 277119833 293156390 4283349 775518753 726489223 797612511 150063505 925434678 833277830 928113840 238096456 598399797 954872116 960893552 173610949 442111971 177121024 179711486 796711743 835205303 452002600 764837722 227004267 866046737 887462226 919761135 91373240 173611264 482379194 513796301 55421220 92797139 628212670 633044518 926985574 995885607 573062651 583192917 606334946 620277917 661153195 791493704 117398792 851201381 987898707 997682673 121214974 470809359 533536017 859853211 211952950 388394433 816090359 990925147 771214370 866163158 339812809 528475630 423211473 429288824 465623391 812512585 199916725 882578466 287309788 780525516 469479239 897063688 360578275 789586273 61924777 301007586 447741460 936050301 370391981 871007037 821940024 913877908 645117113 877374260 561781967 770314965 532179490 865588641 950848330 952979746 619137538 642032271 972478146 993787489 406091146 854053016 261533359 430843233 287230225 769454354 940058472 975860330 292976357 832228118 460706354 933525567 300086776 748569582 785778637 825663619 309396270 435182701 70803877 387401017 339170213 431415479 34529133 967476487 557831330 825173902 686615248 831612180 105543856 159032877 49440069 690213903 35716262 480667107 605606606 934896705 767714575 922173563 223160205 644763230 240838059 537461220 190798884 338846816 977040043 991737425 888190330 966325432 705418588 769075325 71078189 910608977 592480074 602530676 956154021 984636153 39629658 512215652 270922756 764805460 632072522 676690156 857905864 861557234 489841095 741751903 724306609 810047660 842272175 977009073 580304692 919864960 186566993 718506678 114631180 223883793 987041613 998423741 789333004 790620794 919482356 923407290 917331393 938101795 571597151 806052484 470337280 899898450 291910695 555561602 464256605 910136564 136219828 962690411 914559804 996557086 237995848 699907603 786350699 807708029 591888657 860367408 477578940 623742739 355544398 910102736 162459401 190164888 749248956 752257735 309603979 553106916 794743974 923372493 365865408 974827704 973947452 975882000 862674047 946680166 218521206 768026289 964903449 972199972 909400494 963189012 863448438 928760241 935558221 968077557 830837264 846043105 25028184 287390924 92911249 769937476 847070341 956791851 970724748 974221073 28793991 951700338 670943243 920089893 255296125 897253208 227645821 637406423 461059962 834698932 83524381 610820764 314265106 753231944 175929185 270507046 812553975 913664576 827186214 848637281 145240936 755725331 703771562 961213345 112725213 426069413 724483632 919354205 58285580 700332361 196752802 497418813 384416353 401271405 980056270 996722789 591200179 811678404 55516077 945054391 115825029 237060424 430626441 580556275 799310829 809227951 80936625 457779542 22404542 563120790 333390461 700967015 716672006 868247720 804027038 912570703 597543326 656936661 64213575 324141782 221238267 439025956 118930625 602904434 876232200 901452892 940221393 956809541 408014471 470975105 536583305 664344903 165516653 451721089 808505973 822648640 261835295 382687120 250364704 362083538 670868574 707694651 420795677 527466572 615590806 831278008 868445571 900843785 622679934 810928349 196192548 203277839 410480894 649947796 559040028 957899513 106762410 691049069 531622970 841194238 674919913 917225914 319557586 520026900 119327084 431619053 397466561 426756273 532826438 830184223 691289485 872634052 735767547 875606813 710324942 782503480 146634319 777668770 592141170 840477428 638335648 790764090 890856618 978089292 602981477 684895798 639403889 682865211 707285553 995707225 639131983 829925172 103591429 431290011 410916415 596525494 597725890 678626446 292356196 989618233 618013893 962103091 228789641 386536946 663021937 935679756 127677419 991570976 270261786 606377714 305390773 727633022 942455832 952227130 973823557 990520379 425336014 910105598 133744777 544721128 314187820 916922073 214801197 295067775 744019903 746446201 801468799 956639334 107793343 915903040 935005684 993006767 606788024 701935057 796215273 800381042 949569089 980764975 234151021 542618053 263419400 711555520 728894293 883484022 22020899 566831509 697024030 961341079 958661104 989311050 486567076 508432946 362862435 551918609 59400637 869641195 466196575 641087958 224543188 474657270 951007567 984508494 816739742 968989845 561834239 595300496 104025241 197512890 787014172 909204345 787550176 936503476 977211741 990833384 516447264 827930524 885755135 999030685 166448412 685197622 907591332 986916925 479305105 929451602 683398942 781386767 911568743 964378500 624215387 626237219 77634370 317266092 8046872 841096820 485837668 546563451 462721353 522189074 357320126 942149903 249131958 585593881 655185100 954762200 593436560 885312416 735964919 760028474 277729099 625431295 686655579 889713644 407622053 470429203 978126232 986931549 867234046 973211127 184891890 566126759 233806959 950105112 313896155 371744862 754863016 821146551 390361325 781018876 829640203 985099085 198120735 923488332 373236122 848599971 130862654 334900782 826466910 941215650 885048850 924257443 787293830 850810736 608121138 804539303 12619054 105539561 804841819 810513094 639797128 975578772 664870978 779073503 648872036 853324352 328172083 996361177 97009071 523918333 234527989 687606623 699134276 978620165 20776022 832030122 813205423 872467401 53451019 767495789 986693999 999433165 781338635 799660457 310204498 315134581 71630382 535161452 202206522 664172662 795544788 937773823 444330514 824707398 365076416 828720213 780093391 860777057 227950103 995996688 917099974 924679323 939211506 947141694 506590950 819918588 20478125 301922484 81936571 960281764 763463295 934918241 673003993 882278472 798992270 946033752 407656843 710504152 898154785 957294124 601431207 861768039 564874941 701160457 993116077 999061648 527725752 539620088 876302656 916068850 519580869 966584740 166904847 804505180 2832453 374182728 686332380 785060041 517686454 849058538 312030052 952935246 222239178 840351195 807392902 912993882 810831279 863209025 828486132 873619759 514368909 566926237 358193334 903030316 568078524 586161311 102479822 180693010 819771921 977668547 802743994 827442398 512081225 962320328 794096010 936915995 493182628 736411593 248110210 925555979 514454203 832614633 118480944 717576809 590727313 954538790 870955595 917044393 589810293 873811495 264617544 608969764 637436685 713605112 369948648 845619787 655117906 929760600 876632216 952058235 88183316 417184269 964671388 975437525 475955484 918839790 550807912 730678437 33028195 868235404 117736598 195353413 739019604 997814175 267288293 547930940 678062723 826139243 514356737 725673382 458447577 862036779 430591900 970953383 833834848 864308031 203174128 590150535 574300304 981281386 311722976 792304743 406866376 483668398 464982202 555362322 827867090 846393698 852252869 927032381 374959511 671794203 524857467 767782279 710030333 906654460 289577911 354198476 791486942 986015979 748635947 993135996 548977250 902835161 964562242 992222523 162536289 321490081 459960080 971766119 239176196 391086599 368231297 570988488 106626509 563824225 836317954 893828475 868590996 871343330 71220718 237291962 864557693 934115271 711563920 935830735 206734729 927663909 344737059 702990927 361590554 604158790 528794289 905378484 399308437 630542187 881642568 939619734 882385258 889827988 426259230 439962681 517497069 544382596 389098915 855115848 68949333 583556948 519062602 809119340 368182740 604541527 824660810 880144176 183786416 670981628 845989458 981561214 762046985 766735439 805848218 980112258 689356351 781346825 513112166 924543645 706733703 836568666 160762527 372619353 789109759 816620322 171800504 389752146 932760745 937271762 381094216 892214331 965938487 989800592 686406005 799533984 397653327 755341082 425888513 967746047 834740888 863779880 394687310 818271044 151792298 355434109 363537153 498556685 81842440 350317689 748457862 954025318 102180954 413927606 262217703 627784501 958827356 970585573 885932336 894762565 799636732 899163518 218292389 403742272 976411494 984935387 808236544 973098809 466707824 708807353 700554090 937766493 620714431 905971245 925470395 965390352 266057035 993946719 132059072 478893408 907370959 913570534 228695426 835688789 16996571 871021317 452289511 811611842 964647484 994437972 879631401 910606178 418294228 907168184 293227140 303352845 889539218 928748176 407336998 805609268 566960487 854005558 150943718 970545252 981754643 992833481 177313238 705898789 522654732 647445223 74923408 97429047 941941996 958166695 712842213 798157889 588798989 859097198 53452955 656106179 420951375 905365529 59666445 831562013 708903629 945810637 848239900 850524267 75339879 120377123 858826487 861514614 630701530 991702159 422479353 585305950 861802705 980006566 579126394 729510837 26483212 111390340 840818782 930568057 79311917 464030327 15206563 517141460 611817409 742618837 670713300 885823190 857193009 977447515 903215716 912034062 985140849 998869470 246420825 603227235 589505735 779424482 405937130 603523480 780751641 953514360 407788862 872712796 411844361 893396850 589751803 772260787 962141374 970256315 728591967 866882331 522853879 687901666 680409982 899882303 339781436 513448936 78679633 341887397 962370408 971968460 840578515 925305368 337786471 786670431 368675749 393815555 437387798 655068589 473223207 788730704 455219207 686521375 462195636 947965596 548694235 977187383 406516876 460605757 968341694 971920458 118353813 878956337 211108777 504421909 647308589 730981630 838683599 889589951 285902139 561731920 65997963 415762534 10587116 224117605 26003943 371153332 780989358 847926382 535638706 562408543 781447221 954462756 547669092 796004531 413554283 759939492 667509054 947109760 714675084 723723250 553901255 641824035 501711260 649009489 338890645 524654984 58823867 427776022 409910700 990384851 952159921 994082108 633389676 933205002 788821681 790446836 951402325 990793701 267620205 625752266 823015933 871999831 882985858 980414709 568752371 742440324 820522688 831830052 363828722 961655088 679740461 986834486 93667428 297084265 390700875 423119988 535262998 901267809 950320910 995134604 714568359 864769160 74655777 704296353 337831327 801463777 695436364 934409063 889699902 984402316 861767273 910716235 410915742 421683167 555584510 827310225 389679889 533943905 628244622 736181433 931763496 948134920 473793192 959923993 503757570 630827945 232665013 275197171 951214594 998726588 724891053 754530011 880009792 992908796 856362251 934305298 196906222 351228544 586476885 882327849 748314976 953575687 502712637 514659044 638514505 772321329 383252504 567388264 203499739 572774086 402413101 414753441 960122110 975612084 586812643 902882798 851911517 856686551 699922493 755254649 421696139 494757331 740801853 866822444 714600640 887654025 362776720 787271719 880966219 890141674 500330670 974462289 356602897 421223789 214480792 538876015 622483568 662184453 429363333 465728103 872827042 967612731 438023669 618839379 825916672 965828239 883631777 901715408 568092751 574984327 788864175 884300954 221602123 450780057 322030988 522851583 459145987 622081527 637099665 897325003 843964952 890511969 543587560 994775221 606760847 776440837 478747559 799386793 337769654 998980526 16462826 264024244 976373194 983394227 494925827 634942170 185818740 669585206 463332091 520056397 303634975 869491926 97910466 641107922 705193507 918692805 630294104 649085350 264503893 426842462 527944246 681487988 804055948 945391744 737161136 890844065 503851804 863433270 693996602 871850430 475864681 757520710 197056198 805501063 142861077 515376956 625938650 785612587 356973377 556289439 509556696 899756879 653310025 711580029 98585427 422464624 269124748 805115141 414044311 893115056 927160680 962172637 381418702 842107070 869410283 895037464 410154097 928892010 22914328 89269679 11114203 335203448 917111386 938571560 938372862 972939117 321360543 994132909 336112293 902588017 437229045 526708570 440938935 544600940 294906600 907589431 965412149 994934089 944572422 953981522 193130280 652990302 642008316 874489670 341411745 987034062 192939834 208859858 212069194 763542072 168612053 213763831 684087813 712250606 91241285 130138277 110174561 164992131 401946898 899381958 728108805 805140098 573579839 654484451 643555029 663089751 965615043 974487911 548381531 848454128 98274571 345346628 111272843 960958019 872611219 930157322 914686749 944591990 18184700 812761906 147091473 899608683 960333373 993292582 598871764 599660467 508085667 772221358 789720419 916997419 824006602 889272753 641011014 726241206 909719499 944796160 281560755 643184213 177154080 372951011 782094158 862410786 858137912 932111122 933932949 989247026 665968974 853131108 900910851 916615669 71842821 753979424 362026935 418569915 319825782 869906971 272080697 892870349 495020126 661305786 714139978 945921087 675700809 965098370 665203911 679452777 746492736 811252980 897621806 947764767 122546944 313350906 58853472 111217982 140297063 437135149 9238844 975364780 298966080 345154600 824407227 892724453 81171520 387052383 310072213 838328874 122154131 947215514 71777776 599618506 805805884 887255148 125381267 555957997 767316214 812792868 499962593 765692171 395713682 770130985 842435738 907686509 770782984 799264419 301318128 957386322 139569294 904633982 441534355 509117383 736744278 761893730 121214350 946435718 173314711 898108659 387792628 959758042 321331594 466251915 645033102 965681356 830916596 981459537 70522676 608964908 555137874 812433178 53191009 645630801 111770928 907711710 604480219 854958448 438384022 474343686 996290264 997408345 186573338 828200946 941632204 965616841 554795632 878414474 248002938 586886416 215425354 543657481 951318350 963514160 866307390 946257462 535409107 902245653 602938058 846820702 850305814 871315012 552855397 705941993 290691783 404793940 830894836 837702515 196385602 714310973 745923655 882266839 834155303 878786623 748657325 896192942 622655545 718726157 40682036 381591705 998806549 999773984 414364396 470161949 638616158 963334749 890946242 939398522 563582736 639397784 892189419 995974825 420502660 861199167 449345719 818409356 197598642 862339465 856983670 873890362 162764291 617526295 514603112 706660721 378524199 622771703 993581509 994204732 207827056 826736673 240343075 401045456 647321983 986822451 855990797 906480326 345081571 805312037 434236084 950119178 746868042 847919345 421331090 649922940 808881552 852431898 956883461 990267788 103686856 729492010 318833313 436677245 200775365 903764279 831377148 908058429 563441256 677727821 371512482 664176866 640547497 912495946 236247923 303007168 863855408 919963801 422781379 759949415 719849981 801681193 700457397 839192861 222624853 801944597 228929145 998860040 78860377 427737377 220711642 226043635 64005408 657741789 193105972 285681696 834290568 866621948 834263487 948781583 496668162 864688738 992128856 995012416 273057007 771336699 478537441 965817523 814823744 946449973 22671777 379151309 998150661 999430993 21375041 514495503 567271406 652383263 770118467 974764302 490027329 634283049 172067661 702377987 982188309 991613753 156433562 393137017 210751773 630397807 546829177 880046281 357290524 775151443 71988936 403753219 72842489 951896965 945998521 990029186 547783990 788716405 305455252 651622800 571656851 703369173 347799934 488976797 242677448 825449646 388857532 809066151 636150307 759853086 905238113 912889744 511929468 551409795 888949178 915987098 442394337 958491515 218210164 769642527 566335426 853367098 223709687 494919724 865632711 950090049 676235792 817070875 48427455 640305264 176073495 449527114 870076616 878365915 710778328 733696537 221226420 982915872 457593241 763185656 569879251 821772606 153226019 686672181 333695889 670796597 186182022 850513658 86368000 792628010 315323493 498825856 878857203 914704163 202749801 990500242 597903218 861423431 988481688 995979304 504236175 729807883 478177833 857217244 101407104 754864387 716197341 984189686 57292484 750625184 556942646 651078026 573835322 811143653 367635746 545076918 846608805 886139854 379260825 608916988 81666501 667739866 883032094 942024274 960477245 964458822 170958875 595698487 550472675 787729078 996150933 997141605 180363214 581559964 819190284 861438082 510104437 851275425 982757673 994162201 61190288 506379609 959852269 979858319 28151322 903317942 227628176 431995240 766799684 836517111 975766074 988540831 275030527 446395513 48459207 582561578 350516332 636242927 133851331 395906038 839768525 877627318 728908884 805978489 652276595 945331363 419772256 804291180 311825242 768636568 874360823 877943169 561328322 777588894 753869334 797477846 123909161 582402528 28040956 555285953 912605308 990482546 249433142 585018757 771164952 951052873 618234564 823475988 546058021 935871055 827943446 846939848 608404421 970142907 787417413 972492656 161397222 290819900 604608649 649968731 294844017 977311929 626173964 665229157 663596290 909519541 528048116 562111245 355597472 895187934 14914853 15417327 500650058 988181310 625643789 836165075 695127977 936311724 976054009 992112095 273589125 419916696 292274370 674307214 514096908 740912341 189687068 539230065 918902650 948043453 747189720 818424348 280169597 632100919 939943486 947125505 160778069 477160868 900626788 985272094 914973105 915925392 720996869 804173517 864444965 941340312 693121480 867482535 444315746 467795532 551839467 688854978 527625585 951532347 227400799 951861496 634149645 997630213 734340883 938402176 78672802 547800656 97663496 606843084 94758645 694297182 504220895 853332475 127233216 959809413 357330298 803362854 17034050 379775831 30810471 943826889 801068457 939711928 836122781 914113471 765174535 854992898 485180721 510360894 77642963 414322332 325105880 524710371 180186214 856498675 188296604 933410385 893352594 938407807 732170477 785145358 911474967 917856883 655808945 718574388 705586203 815793431 675670169 930168850 150354056 859345157 199557419 640774134 957526247 990634729 371532951 408425512 177608942 509624310 948317427 998352441 521160813 735216125 616771234 872938933 234048264 895354778 841994266 870136110 750697275 904484793 561855435 660139638 993359433 995995510 823712761 874863775 358713659 590086132 579992162 623588030 418583844 679940978 898834317 971133657 311019690 910827311 762848720 815716027 339128548 896652449 337211147 760935490 742056689 799746141 813048688 968316637 102402816 738269972 327753568 939437507 364846224 655774293 964299888 992741197 791202378 951814689 315614893 884023772 765273413 787694998 266995633 410074870 882257271 975502285 565982285 831358563 6252663 33455295 323423003 753168339 411976729 973152386 740876728 767262793 426815382 585822938 789107376 945025708 787295495 828422868 387435959 866554824 589678661 834366479 386083079 671417673 368095758 997217512 119963596 746679539 734008578 875281168 178289915 556347626 486695592 632659805 612277775 730517108 98128956 953529232 973553625 992431655 168380911 175447396 463261480 717153697 353386101 375673139 325371625 709954905 256897792 317783748 622843687 811558026 691498371 769245841 276045633 815518133 313647566 992075333 631724509 679045813 69708491 976472785 932597416 957695129 639616536 671945890 850861842 938444064 298638905 578663973 709421687 804984574 323247889 586452355 67463871 383175423 728991263 931902382 295771117 543284657 39756542 328877656 136728938 848900605 361543302 983279188 746163016 939986509 422754113 929789930 857593969 946722713 44271908 443326667 218648793 800290922 671417620 940463551 621132358 712828854 254518012 453708908 14004064 465015605 306979251 846752131 896061963 897634576 547032400 660216653 497145685 644675493 550353227 927537332 455555340 914208904 67309465 525133800 194129958 359631599 801547131 922995681 667969940 680315484 198291850 888629850 126350486 414314349 222807977 267071550 174494188 921681034 952028642 996710963 351258228 587296630 182168376 329080484 531655600 748511740 358195378 461917031 715037878 883305913 501633959 813375221 239995979 612907029 714130544 902199585 401159479 699086987 206476347 837244052 691449092 982254152 277122868 313798056 377253164 950511052 936292582 978497261 344120410 872763664 477389264 766960137 598229417 950143822 930127308 974915600 399597282 615801982 654744242 691035381 510294642 918000616 909226583 926455760 46049173 158650831 80963888 452673752 93766162 416617325 643896987 861131069 604397718 884001565 40396172 686970486 4087605 763004905 24489025 78698219 903549399 978129418 102914023 370087335 988436169 993526195 570976011 744444726 454474571 545814232 547141870 557840791 364957902 731780974 715923652 951103265 780562488 922140294 745092734 847786126 414830419 962337238 419764942 936244399 750337420 881209252 226460231 420351935 825850133 844902809 768578155 779993512 551214957 593624534 521091274 708005710 431127940 522817683 440294918 902409708 422163535 883195921 165469333 448902436 313786358 631735161 19987106 487548344 301585984 719955403 105647307 701544325 2279428 573354020 213220352 508544816 52403972 591181595 787590391 957383837 52984055 826039451 650842252 687031308 607968527 785034224 332339484 905681197 760260789 894795756 73323061 262653348 386123678 904356638 458144179 534655218 827730347 975007253 677752157 809367568 671858053 779141418 898896476 997972742 394261180 692985923 356614105 993389841 218509920 691058212 692302937 862555787 377429784 957033125 940071568 959647900 990501278 996241777 717041417 735627121 725697414 773475872 467916411 583411994 937870633 952217699 525070379 530655464 547778731 717450876 742036617 828121116 61441433 507875529 620700911 783624368 906757518 921342390 693600827 821327954 782613820 821849606 660983700 776768641 223457649 422338924 421890932 636178774 667296350 962421134 756058063 929677879 486001002 955129389 732640117 941606600 289558213 445400863 583598000 736503159 621057209 811446465 252259080 568101677 121098290 340796831 392149000 630778827 254379100 843470324 153373528 252537740 211146433 441145404 88154841 350597574 149722758 536643331 755340660 896785142 364623956 604010805 781928677 895341111 808911427 930773236 846950771 883978101 882941998 985937966 395694440 771833044 385452815 593936123 767086081 803770421 582970801 832299428 834961459 947756224 257741186 396713482 586485248 795673599 591212406 683377204 438250342 588040985 45934452 377799003 585195543 759168090 898993027 944426634 939486697 971544688 53086855 830466381 725125407 823791825 710697703 819964963 919772630 954761638 704971330 762029501 888549385 974509739 140645826 440550754 357019767 990703564 665458327 933359768 122106107 263780123 737686573 992596037 910828743 960609955 586727958 906230288 116568107 372770861 943790407 997365309 374313180 931834606 276482362 552059747 270881126 774478833 711276139 917251400 977264613 996900019 620964711 693815677 665346024 899152772 186913627 789639519 659859868 790149606 651066344 792161127 17515029 50478313 588334793 722412416 806407916 911605056 541972261 663234977 993793602 997764598 48357839 546227761 986720164 994933083 293642088 812694719 276941833 473416532 271171912 531367768 410284334 801482935 15134841 441086003 388257348 790822791 160648895 788257674 995034907 998643269 633636703 795248400 908081005 956436401 341310135 911411915 784239461 832819449 552738243 646496339 491083872 510779165 475463998 703445229 209298708 318367132 424064084 956837380 571484640 965029925 489719584 517434923 141514137 623419719 600355619 772443656 665347807 683744826 890469178 929257123 777536901 960998351 645166818 655059438 696487243 980700132 341076477 565483624 181533024 376377799 27949277 854911581 883540923 944390398 727405652 968399437 148806401 567286272 469076452 681827182 742639965 951975289 935958027 970921251 388209784 610384635 31897462 42245526 463384082 533745450 973585671 992473459 202785002 498800352 496967139 559919629 892242067 993430257 197941170 834099583 433524423 608939161 927327710 953914126 169267285 585898957 756325672 816475900 355571242 943213448 843897877 990890564 962974251 966574445 24513197 604465894 167008013 410073896 646448884 845242390 13559128 64933002 621417154 859496605 268930844 480388415 436897522 763614462 836264312 985006624 475248313 664195274 542420558 994964615 394521330 451632881 231607663 912349278 517268548 849467994 36092518 715545401 779329430 786800678 359869065 866913899 324837753 729858304 677731932 766696954 97167105 359861583 557337412 625967910 174601805 896037703 472836287 898550821 688919668 950756697 127283326 703791277 21010591 388393829 224712156 732030205 548412048 580016304 589241649 691720665 401119615 411762039 902300610 927544381 48528932 414708467 210718013 708690889 957749849 997131021 18880953 216999877 994947538 996806023 945977821 963888157 206218137 943964374 429939376 924425672 88588634 667780653 72285972 499153015 863294527 864181910 9254597 641647409 993704008 997213029 706761806 939993295 933186773 950303988 318653009 828834881 488149865 703548414 286285414 568940168 193089269 716107588 611999057 943623574 348233568 574052861 832717965 993635772 850816886 864565816 317702145 551149650 66943636 915429927 307283535 616229111 824766838 877779629 748142514 888992662 549954004 979930585 435439774 689887392 817135974 839970133 520422305 559521870 304907363 993458613 196322333 566657387 193094975 588930621 648380243 993490960 996657217 999153405 704804678 784769092 847506674 885020544 753771319 920295545 416610914 689785864 618541287 741825033 931225771 994340261 415108779 506834500 520076154 547710795 839668594 981662868 755622241 952149813 235399521 512586151 365932686 711107934 571660698 935119648 821052267 868897749 352539344 439165841 716773668 993856721 892188601 893894358 496952998 900056179 136176055 491823760 314524047 688636147 89558247 145414913 277586759 523952439 794710184 807162137 649395450 884270731 562044452 985590215 376248188 723444204 68649856 818240913 527374899 992628742 626824412 958064456 612579981 623714762 568521180 849670882 284841975 761365396 643521563 722592885 821274780 996083912 101676289 902467602 519867906 672098626 448383510 774782997 807714468 870539550 171558911 890138853 228326122 285921208 625155435 969188578 769770942 928803444 577178473 609929187 826364616 869425047 530085995 609552295 209708765 236822309 278979091 546694357 984473869 984727456 936125723 989416913 430768144 687484885 132098446 507671863 143777119 199071467 483192562 770394681 394097125 488624594 489637641 764670778 488323340 880134632 537344121 996334139 687299435 826049562 419524992 554834299 277910589 634913069 490622683 661022280 236798389 766909178 514612696 685613463 217094120 851821197 637081076 820809468 273224871 407014614 601476055 672956023 587802988 867000756 873043066 898171002 59217654 802649496 452821886 614683203 109656797 430538288 185043063 251615641 468958576 925870351 616391023 720012922 668668557 701564318 317552348 722735251 49757764 304699635 172269825 645062323 495025460 897192726 53511294 321771325 172200812 440619859 780372810 795528268 925190200 966806077 820169599 944472793 777408043 785109032 36730824 679214462 176974951 328561118 360517757 772277834 705933835 884934834 219188935 695254170 533682272 905160031 213340957 916842129 630305587 869135856 438868057 687763409 753310885 863212410 803164673 809840288 6673278 999496836 439942619 496882293 158759001 729532438 586062132 738495819 531450503 891928163 134916954 516577529 803167608 865654297 608256855 631603642 654643312 781788553 230547393 557754768 694835239 715134157 18920672 122497531 826244833 975256694 764484381 785565466 68387202 605157814 904548343 928735105 29564417 454613432 714666379 763032723 342942763 940498046 147220576 718005753 955406969 980572900 791756046 992133081 442639874 900202954 317654058 988923491 577530222 960673819 931057995 976978236 399239615 844704009 160178074 593284688 952623689 988495975 45884200 514448051 788372509 925575576 821763745 931060702 845804038 853832978 950948079 992895811 388897877 614176555 502447736 745260923 742204717 856630703 725235071 957145194 960127205 978763672 345479947 579775143 554937471 843415664 440326935 645420267 962531902 971346560 237289115 600047694 194561961 758204325 325940322 888123717 840074922 902722856 898314720 927540588 357884729 990633358 607777775 891213889 675777453 718561157 435661648 633661369 59973780 290383914 155897061 802508421 431951164 811045292 426688418 528938822 17775780 273272782 909917660 967577550 70906110 948638569 24515821 516662104 186852382 350071828 682569186 829627926 817441698 840496791 977669499 997202818 958117777 988267057 76957455 161619553 705025597 742170493 677794340 763408758 693350289 738614617 403261930 680588559 633095638 940859478 875075788 999524856 935337107 959983884 790292696 916480080 137591209 526489524 4498127 896214955 103857353 624222069 959356036 988706981 655707477 982414168 858917313 908015224 687750553 811256711 56197213 552809857 725339071 989140854 574747137 919901433 425381565 695931760 723871150 965194501 607567366 843617106 766124669 879187890 497327706 877724835 678524715 970068405 353691419 642144191 455259416 889844815 487865081 690978794 914717081 976256772 534679566 846652344 332091085 551236405 44772621 606958220 766148370 770832818 661870147 663139904 96810826 853556135 135572979 598316422 24082442 515570591 353388219 552534352 98303415 634998428 339749782 592024394 452356554 795857652 217606128 338805733 29964786 168907457 525271219 957384547 770538886 810599799 607108003 800170734 792610595 934508790 567084130 942712571 778926193 914801202 423773354 693990331 89365956 932064908 752029142 896162466 259753704 286878890 884487484 941033813 635638465 667318530 816689624 925654010 525900844 589323058 809614905 976681624 277719049 625398763 304351499 629839687 579255978 981914743 469893909 596617167 58715942 906304358 166124715 889711942 47372438 298776586 473402427 694176123 646555523 940612795 123884076 632138349 149410775 447176029 339853282 979810561 215119969 588087692 566384085 699278474 384859643 787522251 413232393 510303964 334075050 577641156 721750395 957202726 7145987 120853837 978352321 995578035 202251406 865401562 856801452 876843259 850903581 945085936 46519532 189157733 364468821 632147683 961434901 982755822 855113509 904282137 920133744 954953090 544173291 791788637 712852753 852271518 289263668 826528381 160069316 284891768 29475329 858798532 165612904 441488166 704805074 732899578 602011501 629136673 284072884 722781303 568098108 684935333 713314945 829291468 756534137 795386483 270809509 816008524 383155888 807835008 749584924 793091575 545010874 710658218 186507272 517797114 666233564 708387270 61957501 204912612 691920099 895397154 990225266 999948170 421549965 621113559 823377818 862755201 953046282 995938406 87542254 223506097 26597283 202384598 706763685 995631816 637551227 936945195 561126331 681258484 644327168 683944813 478917590 989087452 661860463 818700166 180505159 476385459 950225398 969597159 57860254 260641488 857179129 977517759 379197973 713077278 3477527 647505092 447945366 461884617 303611532 937925864 49923342 249257779 706938497 753867899 539525780 547923217 590781512 683612034 754202802 862023734 621689868 952346670 779839652 888267003 596817384 806130149 471211789 867140616 803522794 956984556 519504057 873662289 55393930 411539838 211056149 275965417 560568366 577280944 310169062 895693810 277071956 832155319 330189490 868102378 130827826 911971567 881505951 968034529 100446719 590478622 144962345 776324256 509877096 721928120 894301031 895670742 181050920 726214489 595043510 678490041 187068533 400100604 20065121 363205857 121122349 724314795 105099437 851129730 749215097 906678897 670208690 943740564 476103187 868287195 101379119 259604181 863917827 988638277 104345856 975888063 262677679 609608311 255734221 600185487 927094908 960594275 865153277 910647594 531912749 943447742 306800338 437177415 328256349 660891302 475044132 872992956 150044990 882705730 613732166 859564743 225146316 285592622 607161617 908908798 323125140 633790854 686729973 766355977 316302249 578268605 541030248 811675126 347213386 510598295 706093848 815999591 192599017 755812949 630219298 862125466 996361988 999263490 80692151 453781043 664592861 718118879 423089788 762666504 759764431 773619405 914742579 954006890 850563307 882183239 930103401 963131959 189886772 852791172 617644636 747263534 269508018 431584964 274883673 674157659 150082287 446369777 524087645 927070050 426269014 625966982 445098446 486219097 625745967 836896877 821600752 970673862 914832203 957371315 482757685 706547196 42571794 77461520 154661807 336441630 839957457 858021245 257558665 699071990 612522680 669102333 316591588 406374505 641055687 974431090 829126149 920723543 857373481 906950017 376009899 726933170 386947407 781630561 691565756 736489539 368886834 967381752 635997368 881753487 480910488 728353551 995737098 997970233 677111063 765559085 569123781 894868041 209492026 213619158 425574781 631501124 214801745 667754462 591382171 627222515 40168852 310468875 949662402 985672695 998019957 998587641 950748539 995647170 832042340 928974061 640969528 923784717 285785633 836253225 231654900 431391421 103568901 762547276 525476262 732777443 156428822 226687311 970768226 990439018 140132334 624499925 672591818 706146095 177660754 803200295 557473909 645676425 464336578 707355543 279238398 589521750 710614891 912776541 217134042 829382901 734101557 831668732 375442839 602940657 155544158 264271140 699159057 794993387 609434843 776832115 866415725 919657822 639889174 947577615 36783447 406816815 42618659 896411006 194328856 510357145 371690347 426558571 61402093 455839930 108332706 168347066 76366921 79269250 855924706 907543726 851782212 882687762 50017709 788086363 140426554 774472594 478291845 810118098 4498454 127154938 196586362 879810878 376421327 598453145 300543433 401882627 867655046 892748870 168779845 192629876 332424835 464019453 14608218 891797165 886542270 975335783 597961622 836239671 758036595 795136297 497022007 619770003 414962479 597380028 505657530 916267948 549007372 556674703 316656229 941321826 486419792 633402510 121628233 454479783 753698790 886745012 404821862 570899538 50967645 636937504 81165376 134289279 110486523 640637472 919591485 991079880 397932865 517521223 119691981 464082358 18444276 280815857 448292244 886990851 103806462 940533540 21299249 383358746 574089585 920949490 359858016 425210372 384770268 862331331 130346708 616504318 3025073 635590003 878341376 986524739 291284806 636053322 91757069 412077742 523188873 639278231 217848156 810757291 860880915 955788847 872726533 942099602 162947189 679325416 971503204 999175776 213398552 999529913 51378974 102917019 564920687 620429512 173524139 623179725 333964334 905646988 564088304 787658701 600131602 703463062 628090887 894721382 763374808 928943845 563189112 724318947 524755411 942393964 61677755 871856817 155303311 958806994 307903147 412218836 451500079 742241950 555642515 778210175 210435965 408097781 540406011 952358402 488732688 875256056 727096338 793521974 298652555 863284816 708354713 743449453 35876991 179385010 670880004 774923333 74276349 130681533 387102486 596375696 114175008 344677847 255258357 799756472 480938832 882037511 986552243 989427145 273573007 513684290 761344602 962608021 254630331 982400628 446826838 745284695 815382948 861709634 653994106 925611654 572229762 681210250 393379253 923297914 864953750 891339510 691437856 895943315 95466045 238379584 836545655 932823347 410090515 830959229 650974532 709548877 81431702 248077458 968886633 986834011 871669947 879184309 886387577 889141766 971376327 984166626 408508103 464914071 532385888 671758109 454738722 622725690 370364381 833524330 468220906 857994539 534983788 780546596 774333707 920457730 873083702 958121377 311323511 956545546 390593491 563789030 540223670 781815322 785026185 941185469 677802273 927765246 628326750 893972976 872665368 906526514 619274676 903398706 373184157 526055151 862274745 952532808 132506648 730099229 835250026 958318387 350977162 570384352 530654424 731583672 942186765 986674679 495406494 495542207 722764266 802657204 261575061 748508541 485721665 739647637 21713898 900840714 325463498 713438885 832156359 924005610 19891217 999076031 983295700 995860275 472212446 917746497 731765394 883752606 990595736 994609712 513902122 683725662 638352157 672773456 670994579 672156598 988214061 992807452 151391317 726551777 811584753 993829659 824158163 902953500 605879763 978474680 47529820 52646642 656277757 810199568 825866321 954117387 448645013 569522210 671716664 680840018 85317790 413034264 547719241 768204473 474706200 499689457 450751496 825372538 135037019 550214596 359171147 989525741 774929145 907597610 577581772 932648904 2677931 413629371 652988701 977990540 18804479 184143767 741304155 911928747 307642313 885783350 626117147 773245632 271763667 958987112 86234268 450510153 7510473 146376889 159952851 895141680 728833748 875093433 247899448 657245337 740509189 903266180 695265254 979684887 791274471 902818965 107639300 878942646 763215169 977735736 487721013 820688700 159615665 734399927 877336475 904748086 913242844 935906625 734579502 893526404 861769235 970520072 656904343 968727858 190953506 194471148 855190836 917975426 460879968 497599659 33907298 221963313 214074922 867802945 645173807 929014168 777693193 976544882 580540485 739954650 437917093 740732815 272496031 968137583 593060005 713769949 772128497 907783538 74369772 130494519 54799037 541071115 636231888 801775589 332843153 962998084 685790237 750580016 10981911 60712396 515042188 844386876 705681551 718518655 938238092 939228303 604053447 909901469 362747071 454524398 989685782 998587180 151722355 484695088 766277262 982946186 39929080 48710915 305193067 827477425 724848037 963640069 900702326 923276411 398110724 539162568 594517789 910623268 376621711 635428135 496345425 798417884 290546780 985814443 53300805 593582658 960159718 991012685 251379394 784294606 131203075 166253115 223217652 781728036 561579399 855987087 999211846 999903861 443938080 505875100 87059751 597885119 280426462 341465303 200078168 448159330 17182034 202659122 292307869 563812493 921760687 971544033 600674271 814642150 914114246 950564870 564011857 959533156 642852974 820835303 973046364 992272396 170104140 402497686 786136788 889798456 548504411 941939906 552699949 939037253 753818161 938677724 333139098 641176416 467768685 740214284 977081254 988301785 416885171 442664096 207178310 479861264 805211459 937393647 549984630 887718824 314331319 342919404 313742077 996784873 25183112 438975396 689740215 872791186 168100528 172726289 282060530 644258596 895406803 917817928 518436965 705167044 904368079 914776391 291132237 949434596 550716701 799930642 634892950 861389039 108797305 776095425 922279009 923642898 215933851 636245228 184696673 339216337 305136478 645048834 334026781 422408206 880603966 958995712 782552792 900084908 183616771 284959035 439075431 899651338 130510313 507753965 151545735 202363581 828993974 838298602 307790322 547649392 199342501 200729530 429563377 812329599 475307802 523998362 972653102 994647073 611357509 833369862 554932177 763911104 413158259 607165248 22527102 973311103 591290820 676318199 543228515 639288204 448615617 888705858 863596810 938228245 590081587 934218039 612819992 878242399 692000609 903438351 833945013 876238344 930775546 941932767 736185661 884105525 510876025 878571996 387862379 539477492 283268643 408880235 459944160 615472987 317862464 667387289 990321313 996429358 503788413 558208079 672522997 980743912 455350191 775503021 860197264 978533949 975551786 977004698 861579580 972854259 885300242 950788225 878191176 945406489 246768704 949748045 75423499 272380199 753908253 968160447 345778434 817330988 264156239 616483791 548304269 568499858 743468064 924349885 827909984 863383263 37447931 903398025 879741842 938555370 763171552 860088698 488418996 544679556 842585152 953521629 388284667 811433423 363825720 748357511 716811933 770124830 825506698 961195693 660995713 809042807 485788558 513222209 731833660 987216041 681338258 825368199 23813803 836401982 744835255 854035922 101433948 391055339 45805553 184188577 397332096 412269683 608568037 672726004 543859967 621231582 422693042 579451622 5312965 530804071 543548511 770945671 650048795 656068173 482908283 672632384 334966121 676607127 213496350 540342670 891732485 907859931 480915140 966634191 129509505 273532672 659771789 799049107 267477002 823394266 130295800 298238234 243378181 537954206 904448482 924777861 666199467 724284278 291023478 361505107 593054480 883476716 35691350 185853352 109031693 472273705 809103148 828218959 590209456 928434477 227095580 770165333 116939016 773041703 93790789 704707837 41947007 385308067 620348182 878522266 485399267 666791387 792005710 892260629 944428514 974426779 42827204 273770173 65291410 927888869 474009081 655935548 260953300 971789641 486435954 891475152 226547787 334627710 859861785 888662170 636509461 728258573 510890818 666230213 375042696 644009535 898354331 958119426 725475323 964957715 141416810 746856984 820501561 999319000 681501552 759758028 833062433 852846611 241202035 850072207 683258664 832205970 244735370 824682728 68122041 583370499 626436616 970956035 231198620 551963429 636954723 833410206 345067344 574991486 540680481 644500501 48164439 933724987 765544346 875609654 116739199 392428614 108945142 536656371 388462383 871949898 218192835 476933724 313206297 497158656 512646923 550574112 689707379 778006346 297350274 858559792 202750227 732406359 433126651 866740642 763298557 812660370 227823656 352987522 318180054 417178689 921961571 958762551 473455148 641403207 762484056 837503274 847053210 938920336 746713209 812100744 391808290 691726569 335203730 497879867 899635143 990806390 626775452 687786653 374318136 816508316 660926154 696151462 78564498 552330696 732066448 805845275 965137329 968950869 616584474 810408002 181573302 495410496 347619561 780152995 111308271 647683664 169602418 955732717 734052947 914294257 571464837 784434103 443473642 545065763 488750140 505000529 315300229 498685327 685961989 841855958 48053395 454206535 657333426 893499176 179332272 182327407 717905670 838235729 285502807 797570231 845483191 978870339 96204138 143703638 558582402 663968218 674457798 763098849 932423137 994934656 796292440 973647684 580403130 615079377 427682056 511387754 912768311 913716424 986584801 987543317 15028565 290513975 268807832 716733073 368189449 526657927 273622390 569035104 774145859 981796685 128201693 403314367 147761780 558297067 272581178 580350394 623807732 799333425 892462102 948630062 648889426 735844217 277729257 337303262 737595442 920251899 702910275 810867518 825615179 938769911 855902186 879319240 44222833 881012626 535467763 865298221 343088519 796438445 483551174 745374528 961852581 997348385 213840528 619320965 950179667 973452206 542710775 551283852 361682345 705261829 275911531 957096034 742933063 804188294 349065167 493676156 167149505 694222527 878125122 932433516 959800091 986257704 207750737 964125992 925163782 937247898 241153327 769769527 160683705 730057948 840867700 877795511 346148096 737596777 528680983 972471472 366999310 526748279 791710960 989264433 557166876 838151606 516409928 885129900 43594747 96641949 9083181 214826890 575613820 795384674 782380940 911565114 178278657 300955907 567876904 976806717 531902994 616811157 25545216 745593002 75055541 317317291 745352066 815655864 911611298 922922773 696531612 936791756 970166414 990409988 22402545 540477172 308288380 353488577 286988721 332218117 237721248 637223243 120774951 850659662 571952525 786479623 649326791 971597171 175149261 615924707 849211957 954857753 493206882 635181146 166568022 217242847 734154185 979528674 130711679 518692969 357804252 446334501 106584566 926373330 814135688 844283603 717484364 948019305 762727903 764029880 516485769 790891888 462658960 558805223 448557714 804888612 160089253 493561691 436292622 922831334 320165365 713637286 948170859 995478574 138616592 295587427 80576476 822743974 796311449 976601673 146165993 630276590 190133911 421923912 333242013 926929508 574860882 960506958 644751145 980371749 491412316 500877279 933409491 991875682 76240385 183516021 601856926 753172618 606939972 628556413 51443350 779843013 99820266 454199307 368226563 529293877 417122132 682880885 887624000 980586122 646424823 816264966 784259385 928844192 622005363 809942271 58779987 905666674 608672216 635950518 15579809 385296771 69242702 419922140 36540515 908801888 345825714 436238625 951137069 986732462 880418974 970389278 448753560 752096846 66600859 84255543 125260284 827153157 562983726 948140283 594537587 770624524 137212843 270926146 250225013 537631142 52181049 889774097 836631332 878498990 672092527 743787219 54611356 134370715 470079509 542062354 607600146 812959820 194627567 528401919 899305038 960577517 672722178 812067326 322546116 921723890 445257897 678041754 153761701 472607839 223941234 380404601 920601685 939357604 328411682 384283666 309982547 436204045 205490587 278228550 717979061 932063484 261222372 695451350 991301264 997493940 681888682 984663665 475396720 622704184 615029786 618908925 63459938 876135213 477430814 991153238 963093619 997977918 757182433 883958086 94053505 402946328 291215512 996031715 811001981 887990661 218178804 374859899 917143415 959165234 716109865 838263901 464895151 842338881 414125859 873797601 210512280 461359059 536797368 989022222 230636655 745715045 947923576 980122258 243955690 898012250 704078778 756385392 950659085 958194782 627676819 669546982 912886617 913327945 85882978 287074453 878185151 983533642 282748057 552516947 246693771 795885893 277597228 798103098 368023620 383827867 893797152 934407003 168364235 786982995 205678947 433757384 506713083 680432215 44996471 185500368 610606232 704152578 937067993 972729787 421389968 603728124 213727033 673387919 518640916 579168581 506698021 910508524 574517316 978879524 503290749 989491073 159279153 836080942 246333075 305095740 306560444 547163499 463935956 616163998 442722978 571820018 704737953 892981526 675137342 915759207 612302163 853526422 790490287 896330913 455685022 841667692 942999828 946180184 144874744 938348430 917478151 953986333 669357314 784980386 641501519 869047598 843453723 996687581 481592831 956316583 88227928 466020989 248002686 479885501 761087418 805650262 142144015 701783796 742009028 778760615 746392465 847364222 386757083 936636024 161421776 679583767 211747949 415721937 572068781 644900407 761589223 990398182 960441332 991936380 280300029 499791895 217472906 708757930 249090805 832270427 352187272 393620163 485677061 760248001 40226191 193009491 284670719 609237005 340810373 401726804 369536653 496679314 362784401 905900868 931276800 942401918 984680713 992268766 132882218 584471853 409271630 427267803 413852386 925537837 712970293 943378957 942593075 989890489 931835492 940119652 504086884 765745663 153840413 289891022 431705643 825963383 763963821 883882829 645825924 881134227 275299184 325837806 524419191 942821631 361960078 777061116 867069857 873850141 70184724 835903085 231495401 496194289 741309039 884182917 146847568 454364532 627844589 840159729 770501290 910564181 896735561 983860039 551539848 578927797 88117863 118250570 927734038 982835435 621631918 648910988 41483657 902860533 610507833 972380598 757344179 812196961 228177119 603074180 863688288 891408506 289275894 684871571 668324531 684408836 368216361 900289175 871827547 971014516 415356678 734942241 828740124 898740318 853324550 919845411 392271716 757507679 540789918 926814085 367784004 463118496 467882067 649258984 510338453 573206143 460689077 590605556 866299478 932518687 543006374 799870789 416182562 997057059 725858419 943102537 303749105 566162478 426686803 742145669 25378575 755119565 906720007 967493150 473740011 746710059 727670853 936280594 728088414 763522378 271694455 536570359 104938427 334507558 628132735 893275115 265037400 828226913 741873363 748052221 941538406 965428543 76448543 628220716 75107452 315958674 66577517 95276922 997853816 998877745 851654875 958505676 628858168 812531029 514816917 749376119 125346487 281166376 808962190 831399025 489668568 969022706 821146200 938621667 694180179 888390921 811716684 856901107 853785803 880296007 12766012 373719392 490855416 955375705 170763877 386589971 104358766 457225292 222878331 881313932 174067765 371374099 984054794 992177660 700043608 985741115 541591131 629582399 542022448 859623856 340429153 609897937 237873596 252507253 683519169 823405521 283110382 465844660 812639698 820159627 845205896 941405918 577375340 954902867 521869309 770223751 849793073 951123387 969376397 970351384 815111490 993821422 43447311 433886636 973213250 983259019 34715522 509203469 517803637 748590434 242438604 489646495 306221627 867919260 120329052 185965199 623104457 821380188 71045605 416994162 124881104 944210889 726753719 878228337 892485740 983874316 281696527 892784828 660432772 751876358 229495800 896675291 460652810 902243621 733482231 752832014 587893947 648850990 25832670 147673322 371966235 883457983 989713574 990149143 294339535 882609864 381587445 952188411 259218061 504996729 578915143 974535589 425574460 910687228 888622543 981045170 837617209 929118474 545304908 663061864 872153279 948177584 32828319 994097293 448723608 934896746 364583944 659798300 900118569 946770946 40324284 959765159 435462506 675443643 555373811 574388436 410179210 835217428 90972413 250146831 910668829 982447221 158960291 166563975 293823234 515322170 229658448 491847905 201141414 412194567 311585024 491486771 254401657 367946596 873097454 904358506 933299413 954641914 548671288 928306656 708287967 936783789 201734979 248249181 578304933 854930322 824766124 844871701 996473106 996766367 368475501 369637679 925494938 999447924 469041552 471366095 466295022 523324808 706389706 919062819 642162842 828471242 164385015 884384265 103506555 338984213 901892744 928986116 763136443 885152146 75342062 754550216 754258003 858463404 557058814 882539450 201968778 408602962 437334085 996982564 867192558 914139827 388714520 519694207 614303674 965132560 769307036 808767020 682067797 874525520 981856837 982519079 731358803 810104780 908952390 973153968 615699178 851223111 867343884 918551784 613611481 985745156 650176162 697119820 950903300 951874091 762235478 944639344 390207103 819134373 396704055 672995616 270964321 640347624 387199155 487088423 819901648 970925716 134160605 986382612 607546575 664103232 573288891 603304835 750776513 938348843 910527393 937107749 963810613 992187074 112962145 414714187 279109553 712004942 603272213 817539276 10987351 60724145 750334513 777250412 469865459 786593409 865165501 915941888 575991467 632001183 158428965 460276404 242447648 327927995 91157261 521411399 185612541 759472805 551107191 656751156 833022375 927716889 117359833 349348307 351783938 868277681 973940252 998458707 720515811 784158474 352294304 615360819 950340088 972662459 552418498 567981366 506852799 542467560 984485760 994738844 627481537 813515435 68119657 834707965 323057079 692149482 602320489 990029292 249149087 367984449 906536020 998136330 683047578 857239033 331200491 534467407 138414686 943525140 302628835 947941936 939998326 944829478 597594986 890764251 22634584 275899786 256424660 767811016 839658451 871816342 273102753 706386715 765122645 833245784 933758618 970642084 648975868 874398548 144860141 522751324 69713709 507615319 255712262 325818810 665425989 782613544 478513674 538448449 702061315 739519668 647293241 923528545 973326125 979616783 892565602 902692510 549262068 795294438 62769193 478773657 755113973 995232526 117324996 198341788 654597903 894005314 848160085 972012095 71320512 265233613 248659195 317246587 494316208 803935440 472705750 701207966 327501985 879696962 182911115 261881562 279425283 694581540 110598618 720234096 271711436 861639060 434914673 779055711 213888665 396597175 808969941 943053255 869694821 916270897 611870937 822696823 369209327 420870260 152942747 354777933 469931808 870229448 134128272 798556915 312157197 703655226 964999379 970671665 786259960 812465868 600444695 747821833 216836827 495162882 730814377 908259635 240997598 864026036 762506075 865343920 370791688 491454286 177476214 363144665 577096202 764684671 30241289 890188739 781970601 982320961 165626846 716598781 4789114 142840642 588038941 970587313 25214798 157508598 123665486 126998041 780606672 968481765 133085779 629604131 951243583 956746680 493265961 626382049 876781703 893778872 840294036 887824855 356630283 708308244 535177105 624279484 540489103 934580008 941849968 976185344 490997592 907837609 844073768 992880151 101671215 859639358 87703462 462257112 57684523 559311892 551863596 573323512 993069374 998558180 367953801 388541677 192630201 378962377 730663912 925961907 286924923 424369882 501551632 585894801 653167612 697929602 772960721 946455908 260977116 458872542 43721316 814862749 552454106 625662211 848239633 898174234 724730012 875858632 168323142 610729576 753279165 793229798 862753131 897467215 523239434 626821492 926563570 965844559 909454427 922741298 565659248 929594006 780725102 938224732 527939225 641766119 206300743 390745351 206350871 304172687 781504320 822397072 764531746 944536385 263715582 918747641 759393384 766354109 632267838 916213942 862758416 888191679 714248027 921560882 852528521 935174168 910221975 947696862 262615146 424563754 331693511 732779294 377488572 886018490 610976116 844932973 888370097 923862445 189667325 260161487 759403396 913366808 963450576 972380265 24199754 578555968 136934218 540655397 665829645 912779088 30520090 485652292 238963391 860614586 777173763 982681745 695688336 925748326 291530104 328287837 866541818 896852248 163118361 862782941 984652328 990604160 428491026 586672104 457710390 755995084 493415039 529875899 946168886 993156106 560052285 848838074 910239100 966296068 810823256 812608539 814216537 920336946 89377215 916200584 39092368 54822560 249703146 807793828 654676718 835904732 422458699 540180882 210751399 351354080 980958836 987771849 796419218 923336178 769762848 807525958 164096067 926926356 447646176 770895047 295172546 832237912 440812629 796975285 458791487 597831052 421932645 768682462 430035270 746340016 664596336 958061928 127817681 166491916 428630025 783283067 31535544 827788983 509358627 550347271 665730602 955366881 885267517 942386743 401828674 878049811 169384340 204396301 606529924 752832937 353560013 669311635 36321083 750504347 392374069 677041136 297600150 876004803 289277118 742751728 121462583 187645724 498092531 910823087 602779365 835249214 394203036 960785518 914678539 934126627 678398433 707780436 760113630 783149304 98332157 665322661 969540761 976562863 122386202 409101642 38204673 762937489 193099717 415619922 763975206 919081146 859116320 906894697 899510150 912621784 724373316 898162502 877492362 927476238 497909515 612066491 954208319 965366122 672285693 990621572 296722467 440855579 210211559 872975210 969177606 991077513 58269116 581661890 371229572 863067773 525172715 623333857 646483713 705693967 255723451 385399041 427950283 768262501 451847133 509652792 161214692 421854221 827426057 841413599 562663763 728193868 895285996 913865337 653848819 665697934 162457851 971359307 589901032 626888402 968215935 973903610 227203349 434271419 778580269 882028817 345696037 689435555 408985252 532150824 353274179 973658586 488333875 835662248 948497592 994349723 730020611 917762797 698162189 944335263 49788803 63382810 118987816 295081118 931769253 980024729 807464081 841340037 963266103 990265233 826477950 878197498 617451441 743650491 768994994 811545017 187507557 677544362 773959276 854004654 17132896 32806536 122388985 261459852 60714730 221569455 111123968 904513567 503593954 825539435 775106627 858542134 205079808 648278293 782220034 978291128 174429520 510232243 452220345 634094108 236181721 657941253 259860717 341129297 172364400 374632201 930809360 962114252 996088288 997178643 783521584 957191484 871535627 966196729 644219987 921430344 905394191 939696469 652640537 696979119 391674032 552304623 557798638 747801956 861789893 932957622 968190865 988307925 724837879 817011545 994756608 995842128 349746863 927079204 324543694 962584145 962174172 974243716 780600290 904982045 822431664 934076196 108716003 368829441 148771096 867019304 137519604 574993591 12705558 73766134 913111731 963958954 727545450 774869300 283104338 421098264 702173868 987845578 347475663 354140799 938105304 976732221 815289582 958723884 497375333 842235463 852945936 882181573 444029459 614837182 606835368 994208652 490682790 647038320 194700417 332192647 495429288 519940035 439638302 637640837 992640345 995540320 685806042 749549243 77815979 311336587 215417759 817898195 316505037 909831159 413710242 595220588 17860489 197242317 316847859 503546130 805355948 811483569 370262035 944416957 673626448 798680620 977653297 989001839 884045217 997774255 514653532 773997351 770059206 973719809 488770183 545038407 634631417 959725640 593453136 899112498 915746296 994003763 844283377 964572002 365718536 658155305 351946968 431985800 872658428 973647276 918239825 921061526 199074341 366120652 66267278 400684090 629437382 790729500 549397134 798685070 847971938 923824652 697249202 932059122 358411836 972281627 277253102 390012336 880532403 918765126 644036085 932542920 545969741 915672844 637716563 991172880 663019512 896900991 982849845 986320504 42043496 93807641 439150568 902483834 9566958 746171759 100496928 907813318 701477447 823305736 595608937 795349552 705700231 864156598 731055130 902105545 191322793 689282482 817717061 985468252 711640945 923496105 470862192 482768269 43922602 924848572 992241616 995277952 373447279 629405265 308648283 772213601 640318258 642313202 29216646 889993453 681800165 699499605 351401445 828630947 48338699 269253328 409615772 435602353 734978130 958100158 211140598 456754613 110643185 519523058 644314565 959195716 376320218 930340008 618140773 955860393 909027209 995846143 714671247 792304369 571342876 748534120 412616623 885433547 862468588 877995507 107685600 303564934 380351513 957504343 493086603 886199184 577161614 870656235 766962603 858594783 219330227 944733457 182276618 240604640 483965365 676225616 860239442 975248031 845758048 989202109 672752474 850210244 953209131 954498939 329335100 653677044 747180868 911066639 180761352 496327864 896489056 930935694 26562488 41032440 128081117 554256076 973325290 992414814 61771859 277544803 637255579 795354636 419062959 571342171 267824332 616695728 768625347 959845347 423697054 802966468 202350257 680030677 987897266 996244410 733691265 736852249 217898255 594640991 845485432 863208412 898589120 909685430 737848486 804009869 616093640 791154120 669888770 980756158 898530707 938191826 440591299 952535664 614756077 744370161 626339935 819094028 640020596 678507221 813075429 826262430 765302824 851382330 910348446 997031776 613898757 956572197 365788472 688255148 520076161 724627830 851429890 966709965 485100144 550553304 452372833 935135548 918462432 958861160 832685270 927173380 546124414 756967736 166015585 288789799 502612681 965104868 978352252 980179673 375041100 796533344 737120532 739585330 804978461 919104672 384118339 895034697 36853381 689862707 573767332 681052078 61048453 762558161 854521925 948158301 404014026 476074306 875408416 921971938 733780700 947187104 461317564 627107820 73906919 892885511 669751521 922796286 322926947 341911665 17151084 638464174 493816193 895775929 513428793 552929757 449938294 726750341 885490283 967412151 905975385 915330974 706154610 718952716 569946460 778793735 284668186 337378801 894212130 924265957 427986977 600930422 959364748 975373920 171852050 522466953 350700584 628963625 379624638 405361654 189431662 298682202 92894929 545814463 800019234 968594905 982859736 985317454 687063082 825283631 587938032 816944591 237406150 359584208 427027848 595435800 776742740 853309168 775483111 818604028 28730455 175825834 861567917 872429336 652194059 924020278 400541696 954156722 338563084 812922730 108309270 124521282 817787218 866344179 188977255 493208612 704509485 837671701 371733461 633360308 940684071 948637245 391615244 793505548 654563766 665622515 862322162 916514110 178652372 756979965 225665043 431552485 737607430 891525012 103945439 845256392 904222468 975317710 72878590 554327353 581098346 716427040 474828620 835292046 650393869 668576092 698387746 865331319 900851826 922314349 482350620 580545029 991028626 998776951 472770841 551074944 742625926 880203824 1273468 234351344 515316134 582072364 55574357 256603919 621519431 652083384 904884660 963137918 384511140 440812396 473681949 816691990 142519854 974873194 384448794 741490372 949252070 982818317 732914840 939123502 87917609 254613453 655766467 981484179 82880024 492902286 134682362 418943060 69226452 220931165 543988472 550958880 649901933 655463500 705196855 971883789 845094134 981224562 597127839 764506001 696787594 789544218 17230950 439195095 732208464 920426006 987976577 997989937 244899188 662476754 898764364 985802531 1060823 856004236 649448680 825849852 649781023 795196786 697229520 881452910 580256579 589330245 666236564 690586905 443060112 809530148 196367217 821203883 6919343 912431803 538002052 966909956 311000991 465768150 287507192 490374179 12792319 169153700 936724878 953858176 96522998 635679018 945045303 948375464 977268229 989800490 362114721 962752237 724758039 997198627 622932086 655015569 506563564 610319002 143187741 966918569 904150879 973362689 416197172 850029937 752748901 905258406 799432170 803910052 723306670 991563219 442720621 766284623 525803351 875750019 880019476 948449015 452001290 659767418 775801487 978349740 243826553 609286173 749248895 871625413 441270098 729334451 336341206 543985144 578297133 712840887 882187333 912614132 546589061 772244059 452077759 555005119 281613182 291307276 683301157 980663439 431416830 496067744 64418865 654140951 244472121 889609435 563553856 789621668 108146457 887083229 383007372 778534612 636744040 830377619 856721674 877855521 328961726 443838132 282005989 306207061 20918615 187752528 186170917 934386333 300814166 697321832 516397270 612040632 263652528 561873102 873402661 890327764 64305233 631744711 426037483 726594719 186240536 630340896 473461789 645612539 826624751 969454657 300847243 632171963 153891494 216630700 724552891 808032079 338214918 361888723 644179662 673166493 733110042 840215851 194053347 239388812 682748873 716303531 732159063 940614341 954765729 983353063 739450955 987512293 630832796 831408638 880992569 897169669 358321684 824294113 829345685 839461385 720400116 871213904 833080497 855618832 996465994 997672810 897134161 973644499 499962416 619444466 943792359 955162499 58512464 603916304 739828395 996614531 13589586 642169454 286287478 537228441 335655490 877851395 840600101 999290471 868361692 885395957 226317307 517892397 540953649 806498183 214620705 413010585 209725002 911622686 644438623 716583117 335122450 548752752 514749821 700821285 765990674 797856702 672369530 675444493 351751669 468563777 138227119 784783868 214420140 379889866 709672393 937834704 457935745 462245468 125127472 508121440 130367621 625473105 884883778 998287830 486534576 828869489 627494908 875609517 841867051 956299909 242792831 880266300 723827963 765639739 956903103 985901859 592497475 680034194 716558435 891578262 653397157 835864190 25733453 498067304 769618472 809241477 821089454 836870365 315902634 875750748 918930686 986125320 216576224 372927963 880462536 911279288 669551882 673440931 418556288 765441638 433641515 445344869 738514952 746006189 931116190 965211224 253046306 499318546 505889309 541825389 21095605 984176981 42781143 902659344 97562450 630521537 32781973 633143123 682039213 779654378 810125310 898526990 30461328 467561637 91787941 743581811 276923956 895733010 583163706 785949797 159417871 884959372 598508042 916285731 932204414 938878656 118801757 457712050 677298651 729577778 123309498 813142951 580554107 807673338 590626319 713578920 655793395 702613630 744730521 975038670 918877173 968888489 468371828 542453885 131832745 719214256 1567322 144245374 910226500 991169997 802213495 905025889 642331797 952910520 55568631 766034476 194138527 904668831 785502689 878358605 685897702 988370738 498062679 631318586 406179626 620798096 775014589 896326489 912280546 931253705 913355385 927656932 302663205 951886817 162775637 824480070 999340755 999531836 856370594 972274950 157000071 547514768 30638035 600821027 733928973 940420431 202950358 753619466 879351959 884943346 550437575 880758123 14598746 691436716 799109900 918628159 557412327 985333933 924458888 996306154 828931316 944416023 137782434 404775666 688474532 746157698 693795183 734887662 605412656 659131185 93145882 710846607 977977317 999662765 548723442 699752202 421667764 813358854 486849943 809237627 269323532 290295139 185912935 186704770 602990728 847544999 187431205 924922980 274730194 361993436 989539945 999286508 910249542 945525089 231273710 406034936 496389825 692562038 906415938 908257273 408199221 721638133 872030730 998077425 138285792 806144543 74486592 108936655 147192755 661364861 683373509 779486245 848983381 926887077 628974221 895758064 930632014 961342017 355747658 421874006 16680487 133890378 153038315 991436157 845224936 891417094 119264916 478708274 328105376 664524321 28862523 945184755 677892479 933499443 930660040 956014984 717906562 974570036 572288124 866479025 585932145 771346852 6619937 924593856 803119342 816715923 443707727 860394647 258826458 328318540 765176821 952556112 944297665 949147888 689158533 789343999 676967051 961786269 936739834 982684581 604389081 945679693 605256435 885963756 289947113 637054257 466103071 660337170 583696362 988024819 731067382 849537815 109651942 686642415 351955397 618138613 579414497 768270155 723850891 951287327 927283725 957402120 843540245 966253840 978563949 998434164 734417822 790254528 319189352 572611182 786673208 879311587 788585318 807196031 877649160 939559403 584589753 781131875 373708508 814588523 288048557 292548616 85244294 474379251 75932134 713871632 160898575 679542885 162915199 363906429 624206028 944741948 820350153 966940247 104958257 485948548 251608775 305719443 848314957 993003669 947803403 959039194 931717004 975678893 631556169 972998388 510014290 799562887 620154681 773530940 669685722 806704548 754249199 911381977 212527581 231530171 381224523 430991987 286614366 336046139 122018371 314780587 25525536 744783861 280376722 472494418 365458908 371863071 957173595 980023028 340138810 616691350 578726610 731748067 256812030 382756652 475527969 749873480 667247283 856122736 29846365 732334602 992498668 993749705 673865093 994547417 882470818 935879118 914450655 917981710 954865899 989476740 738731547 778446135 666165445 972950674 274734399 551783874 998645431 999234677 102834428 622068081 473657543 518365785 673518227 712453206 962490762 998814486 542177447 880947765 645832706 701569325 50832377 722917721 469204876 804333691 869784119 920768107 85950272 946742024 665178880 911855214 923770326 955412421 173835777 907284839 863873585 990098104 784718263 847782020 831344344 924851480 825731646 970782609 221159944 389520927 700938530 985466647 130563197 662260070 73529789 859963149 894613738 971116291 181133439 371899052 571477931 690333832 48648902 375731125 780882050 803540977 719482929 982065073 635636295 713543201 572381733 746033274 161854140 813690368 285510382 940232969 763436962 815840491 680273165 843937072 99328819 950812974 185397614 727675448 818735404 903869453 379237330 677693437 431778081 545593826 27141336 408761202 498139898 680409327 775776187 928469481 125967809 848078401 472522376 680546400 323852180 702650804 667659540 879835178 267845485 857353541 89888541 404034960 271140381 362833235 763282053 985893847 879081035 920688300 384219879 778693666 113507614 869501464 18254222 755020670 771053986 868199630 164474485 424241240 983313494 994691114 421454335 996312398 268074318 380993904 538632426 790832774 532839884 960835233 37819012 790868781 410650478 640649926 872073912 971753856 45498469 281753479 659425192 919778493 744079052 890274978 219982555 813976550 432319769 448534592 669841882 875305977 543640473 823718274 715066294 715722954 534271224 566109853 231684808 488945559 531139650 764527676 187343827 763571705 833819287 851239913 654494000 939711331 854234902 883251950 920933702 989258587 378582325 808292144 233156988 846723478 257515792 659530221 175780251 189932096 566791221 615388299 997056268 997427257 969749441 982765148 154392809 578023533 300239482 384069234 816456186 835388193 35950267 448587699 159965140 865382790 885637654 900961871 584064968 985557837 412163510 773897183 873682622 973441830 537838031 921182739 274405026 381816149 300382614 773679679 998276114 998856143 452234746 775099852 674569957 781021891 280767704 618278455 454132053 926208905 812914567 839105560 53792416 856775706 344281193 346853345 831173678 844425635 649259587 729485401 514718380 904657725 442953007 776417606 439628078 899518265 627028756 903930247 868931833 888831430 631222706 816171141 532249513 938188307 372490759 839093385 621417079 989719977 974197589 976718825 863114578 986628439 161385741 902073332 981026673 996287671 356072968 921721206 326221024 739763579 522746946 649448741 490151696 713259632 428472136 763140253 92494689 432409922 907475977 928282446 53579372 381851089 273889852 357934549 879490761 923612316 178243483 596002713 482375686 675180552 764472451 955504389 558775667 754263960 416520997 754468570 636089328 794554207 556659206 881061666 590968540 722182349 356754914 399676926 101806963 258010584 518613235 526979422 459642981 538484494 380196269 813458169 394866540 431071326 869537794 912011954 986016649 994311305 853046370 889859513 48344428 832871118 104116486 134507427 655497368 664096912 580875180 923651495 163491241 318023308 845983110 891997503 759833163 961153826 763914351 962988295 575978760 779285283 244598147 502919350 971323690 987743212 268313826 823772017 998866627 999504980 791438074 859364828 951068989 972884309 768929182 831395942 295177593 443688621 839888615 971614801 443638753 528372786 603194734 654381333 996053464 997675106 143573186 641734820 570877850 958258660 756322061 954522605 375083760 850615709 425560719 574086035 271397811 547931724 268202526 496423688 672022973 959011414 73930111 251224077 414964237 638906470 611036931 626086022 847141402 944078184 727234988 735788516 386488157 459135530 388699194 965030978 893407309 953800728 372408823 965644970 231461680 264735170 945124354 956622051 97494539 905967469 705295783 790971705 76249285 974199465 179075330 329504329 779385151 949063248 94260493 97958992 128464113 337073289 593175876 956215015 508379949 601360578 711207281 766750622 253724411 807332716 883285723 930616999 176098534 272248128 954976298 985858623 690883569 938441363 247934542 452055918 151015952 252719877 373059280 732929089 666209163 811205353 549507587 841677462 623735237 653663276 152210807 253822394 943469617 944690246 573967566 916720045 156584987 693843229 810261534 913155433 715715104 988392802 492295380 993423830 710390320 837899594 837685716 864645150 447974261 701931578 692924977 707706960 461798129 720971951 588945842 953055338 200475335 648035023 329529947 441828999 787203576 936743844 723175938 763518350 421036836 715392044 879141477 985307706 286941319 833672488 83546761 427688582 61229767 501423787 867402210 868741375 767454204 961893402 802613039 909242936 709994636 806839942 805485372 853488786 88240186 686320966 898015333 937009045 822433188 987546588 757544117 994064356 633230505 798962130 854543547 892200935 362982427 422424605 138192773 402811032 789226436 925764007 467806887 801733655 762180424 765877180 790881560 919150528 756066127 879452041 258710148 744042683 192998260 694596563 182961656 494569755 813813031 938166726 534482300 596518660 739738618 836210759 214193107 243168829 4487776 231631042 992849569 997904493 174829409 269963833 469247329 555506560 590960140 636670746 122312352 267648940 996083221 998795980 122972893 496515324 382267761 511870413 94058372 545069117 876034426 923425067 171453627 906464607 882570350 998885754 404717582 404776794 911336305 942498744 764950853 838182207 942910126 962992288 27219461 446157806 638824225 989298937 794241935 830969296 69998933 205630927 669088239 921758071 851508415 887878379 315911594 989580258 207656478 397491726 586117980 879395573 654805866 882845374 787973598 812966770 74057794 358783879 781967356 947269768 299651403 807676772 53201597 834337275 382010873 971377536 705406603 734716639 839996764 888699324 135578903 739039609 461860751 650013293 172734318 236775516 882365287 923907329 456622278 591900002 360886935 532985537 166149408 984403016 380585523 862177698 898578853 959801577 684830435 874268223 920481602 962924038 521174950 619460842 474799995 704233586 556054107 879783955 578902902 979208771 659094885 857448575 991563626 997124353 205620250 887466854 73997340 943108498 329660194 767942711 226568908 771066887 937644950 946610808 21827902 737077184 113400032 301908200 256260348 814698852 925556980 936376650 247235279 595040790 53865111 74587204 138533735 303669527 497264348 755771770 254748958 849016653 213049211 646614271 55482161 985780264 939867346 976681511 924322799 985521368 517489924 801671179 939463283 971009100 148775985 296141762 878703720 944043589 251156265 862442061 128569648 346768308 258777744 743768143 96841176 743246886 580676378 882611822 303755325 531557038 120950154 126563118 73641359 354650050 441862020 663171283 799975164 893224904 620243781 865099112 228221680 540673135 663029895 856494184 244546894 885019365 599191091 631902218 219342829 277171420 251062848 334241272 169262371 688570436 357312584 994616007 719999346 874548221 133313369 332856361 340061652 611312874 183039028 357569829 296952593 596949710 883205132 935131324 691829343 865945171 189241290 847619765 43326912 812055463 603847924 870986050 586800591 779294898 667157249 838944036 244096096 837143817 893167816 967499075 935676670 983388470 812575410 893700036 249264615 651585846 8591376 80992082 738569133 931979238 458700825 753698817 256748903 884735948 99223496 553692207 128109228 909268885 924111778 998235873 702862486 893914330 690667604 820060621 853738502 888107466 499766406 649841028 681929041 802823997 161221741 513515429 742910046 812599070 791561824 958961418 129638140 592307037 416027013 439042458 885735729 989592975 875218689 976562829 914995572 951892510 533894303 690230992 303629435 318625679 586960635 794646967 117269132 325215971 193748343 358281336 272938813 758038904 7191827 749610657 799633915 817981230 369350912 461457760 758348764 765242895 451034963 509886298 494787491 905485295 135589950 181776751 579513606 985266518 323552929 786872830 692487165 780117712 277195713 431230617 437709527 442928126 220755614 591493783 921454533 971585522 203856264 284513524 98845532 169873430 535679346 583468321 573504707 955727802 552740349 731329436 488495143 490451075 880632183 935921468 188665680 370548699 464551949 717181354 427791405 817808151 904363977 920569886 705359412 884490825 869048777 925695827 191895436 651323397 124596055 451808319 537456079 633520105 559321221 579891080 69783347 394571256 20918215 425093578 93344349 124854877 711122549 952387524 434104453 928606469 704956829 810238204 781840217 959324242 983868829 991843090 998101296 999334511 319718584 979966731 830695526 833512154 290458699 954296973 515640970 984537860 744973380 865052594 247761074 815449038 39111140 679789216 118282412 761728827 536421346 880356431 717395347 790251980 603154144 835143662 887866415 938617769 961952081 978557291 577566332 724107204 286503339 675083120 999436239 999517779 424947852 986196475 286307293 552409292 17025376 877157892 722226664 987977545 177895898 403525406 999440990 999740710 918593506 969368187 586861626 844639065 168985467 919273606 644114084 653952363 518648754 699035860 273164529 508978939 826040118 953519475 6944188 791019434 448806001 963164087 784321340 879489057 910056589 915716060 845014682 944131206 314492303 561116481 423123786 982139010 369174547 414320885 604136703 846347693 4118957 407006959 511047438 841479451 330253536 512998566 168405928 302506371 247510606 751309277 236359416 672892475 194221925 628131212 181705446 193941733 682411806 754506646 535356433 687626232 198776852 494341752 943783067 955229052 841828065 904759834 392382187 621037884 245602960 306669995 478816500 972533238 814224159 958049440 127823889 241860777 549936702 953806805 667186748 809399031 950348316 961451388 589422265 589826255 654820104 943523472 728219092 795083280 535506480 848379003 16634350 848142599 750397604 824707957 308442885 492034903 579779016 863269080 942961212 987417338 984734918 996548410 383187011 749851017 785937067 922142891 193766037 659485385 169582624 934024925 91651493 714247067 64472398 510469490 747757343 806967017 980462997 991214084 884834199 985749709 298690445 656139307 314761871 884403082 863699074 905154627 45276600 278957561 256747762 909230578 218629006 481000471 678090754 966140876 960499324 993563000 154652685 362950925 437272681 687708833 813575294 996722993 935204859 974116169 677379393 717086698 973653785 989973128 787913758 818410836 896136480 950455721 7689957 257945737 426572177 443661160 326833900 572034189 373609778 499899385 289915239 532594282 315687083 688164838 655935448 679208170 759178717 929208580 286922070 866448055 406926309 894597990 314859090 946073365 819238897 913595404 301673740 777425624 971499615 995720453 872362169 985909244 632888833 941123884 711746538 879220822 481904959 667589413 563548816 875535397 666189696 817709997 544127336 636389800 28186165 365905740 131819313 170656992 228127155 752901964 326971086 821248143 554994226 794089836 156196801 747221446 281822291 335324369 92858176 669543624 583442327 823130200 835531068 950853540 351465298 462114990 451705063 996906514 84060156 518733680 657969364 746435691 412262174 849399392 970071372 994933680 615657805 678495201 878254853 896351901 436624711 692648695 587562718 747578468 956497520 965679189 725987483 995315608 25025607 686716015 153321286 443571599 620642446 864882367 187284686 431446955 611481646 761060726 776898132 970998346 252310475 834524237 170543279 929407622 33135387 859721029 472524676 661603742 937401306 952561614 903441716 981797854 635069026 769538606 370352665 497624801 832767206 923189762 154019498 176164091 237694118 667327142 752097038 857867962 56585724 700285740 278809978 476467393 80315212 503109472 733522347 993464218 230940101 825650507 522229000 771366084 476824552 520513173 466622506 639383382 141489646 332494447 853641389 984417704 298419813 910264113 492268890 958073770 824828407 862050491 625358961 843219056 116891260 469378011 902602292 929310319 260434506 563315667 147209941 443883760 20956236 921221844 608490395 944681831 688150321 867070179 606867485 830628771 590601021 799351507 665530445 793224901 217661172 983227694 699951768 710474938 912165942 991127434 984585157 996601612 311640318 697092132 992133371 993894387 744115410 823345641 561304859 942453687 800547376 890955937 899251209 925668339 371692345 565621748 544105376 639725277 861832845 898294396 337454072 878525215 449349503 978366933 424617036 989127204 945661372 995036787 185291634 502657363 116294657 246844957 272751877 430738519 170095100 602496548 661726892 825923976 304700261 790237840 970963258 976417158 158628094 754164904 83339040 331999910 879285133 969610820 400169882 927556775 692845926 864750808 305870477 451990315 948539174 965574692 525428800 765121066 42430868 521967236 302161227 432891294 141393805 445958156 422338823 539983363 979534534 986542952 81248925 490852566 328679623 706900321 339005045 349716366 50888108 195507258 515048207 846589335 836661197 989916623 568835407 996473476 440099691 496093989 983589510 988341343 849741883 946992970 632322060 994717155 487776991 743693457 890399916 984549808 983223948 984950310 245193532 513228637 143181385 701795987 458723837 969578833 195039148 643127982 132599839 862901712 268931979 278354148 885366904 888365967 644442156 645551290 512812761 637804833 372365745 931811831 653400632 811764577 98194478 493700886 509313400 822437643 553263509 760308575 329493969 978311837 828826717 835584320 61292282 69927648 54156861 787930099 148986481 603776301 328061755 769403808 520924539 752365248 685264678 998580367 913152145 915528678 411577671 508430364 808871627 974059336 890741111 956671719 180752934 563787156 88633941 248412521 39810007 129350994 128252239 666888005 462490678 808555413 910846611 968220359 935971169 948977957 578730250 643234650 785247570 860072725 238480036 839691814 277830748 972758898 961804027 967960114 541888777 800478042 56316446 993116363 502937323 766578269 273129197 551751943 882757054 955694766 431694966 928070084 594795680 958464723 535260021 896754880 786616199 816578887 201145363 352380620 360858451 449041545 467313868 475628241 688092266 777652102 524573850 618280722 231853137 385396794 131269276 131723505 881464586 951529821 575896338 883669267 649594891 997732245 56076376 77309684 527250473 841495763 524676699 950281483 838630779 915135141 101924291 942792019 501555834 530510116 106481742 565520757 562379901 768375882 306512540 796181782 333892790 395357965 413524145 571628271 46801855 922810549 318174936 767398882 923124426 944339536 920525973 943934790 403811676 465542309 48206757 779382549 116433886 260572917 23040285 101749932 570742014 715192914 815030964 821933098 498141144 654836315 240922072 270873221 226537674 319269187 249156312 854115051 809462599 957075103 776810365 968348559 304573915 515705934 879780788 995304400 582126118 965621011 222696816 566546095 37040949 867896504 40500927 837542378 822003481 937270781 755570852 824894329 201556201 738212489 293115681 341599550 875777675 926682155 620021393 837302545 711653912 971583119 796513519 893970673 145478139 179623928 456255009 812676523 861071060 936950597 589182965 965115764 222310231 626141355 125264421 605191709 377782811 498683021 356511096 905545565 993526231 997278687 138354388 178433565 740991301 744354934 553203342 915006254 597694021 980517106 686436830 815605590 590108990 663951955 671239254 914507189 113891146 951961901 93578683 598673331 661376989 679902039 498111517 910183652 941039114 957274655 306387711 877942155 639575257 795949343 858005245 983708079 133914870 216828471 597244278 826198146 246452720 548602773 735824453 957208624 276309908 794196819 715220581 743535005 250488178 971055368 820046490 951061029 85517522 297817403 591949619 894917083 21274678 61208550 693286064 972765603 608920752 710928648 608213090 837379650 663136504 743782462 377308118 483619867 432182740 754593167 314239166 755134658 157716648 387961588 897758172 905085290 755146435 874081874 454429321 896155308 746160843 819657686 725104757 969833297 390081632 633544724 447357189 891612082 136962120 534105755 480449381 589542754 894295056 914740372 214918264 431380360 475645580 540637987 113205346 157747708 683862083 914670588 374975829 759041089 736663381 785851727 895305696 994241534 595241198 827396537 160876205 354277516 397562087 399482829 238260213 709253606 570014519 664866623 479411862 513825858 794526791 846120618 470203669 963029510 613772212 717004207 506893126 932250446 205268388 670515145 215530968 513851276 585687639 680214577 822922222 920437513 577705424 623998859 39613063 492859437 434091612 452561414 455678792 632254646 657515940 730006641 549787572 554352623 560553559 609956618 577307498 724793380 338885562 534725303 530738104 846495486 288545616 782895601 294012250 973761817 228006694 740393957 786706950 856439471 367645942 712457693 969533113 987699236 337985090 817496314 110648237 458292792 264333366 566266400 300557390 644106631 705935798 732154361 971278419 977818943 750786071 885298788 805094070 955830248 218256630 935248307 318743970 338794343 215892972 350748820 999013622 999388041 299133450 778909970 595585137 613130359 685546570 996173117 579000100 931333897 835006441 865653781 49505509 443266617 130889827 279012506 8310672 339255037 418781188 653453417 452282582 830773600 401217460 789017305 34309176 991290713 842466562 875355366 148520056 676657510 814126058 899467621 553354352 733284220 596955343 681775083 543074458 710593963 834251807 930086719 44292704 861439153 357929694 765778616 875259109 920597683 652142810 687784333 864648561 984529721 69081999 274418612 358688426 728532393 837145462 848834178 613246503 825606317 248123141 911791156 754371345 841305333 119802047 736485444 912928229 972644590 645808316 856279210 749031659 919856543 33738954 693528426 689275390 969489117 812740364 883628423 810021024 926112668 72889194 151355213 381539720 661883861 632198504 892942272 527375521 991123412 65623415 820374369 750357066 908242714 532094652 930848826 176179270 659540901 60060792 305391076 880741171 949802621 469796459 877033658 474890601 560898379 717769781 746757706 385833479 475362870 286818446 691041723 413026655 730712016 720697542 845054398 7664038 150038502 686838754 942094892 525934832 896017956 465830193 961711565 822130904 912138621 947572763 989172961 136905423 804040200 704813947 797662789 74997661 721897315 755026293 817134561 267757516 935781860 570672677 582241013 924030182 943260719 390068645 968922845 203156550 376294557 544522001 846384806 285314303 541161516 917239793 978149356 993194691 997804023 802797159 813650706 582849553 743183272 343003986 735813765 374616749 932050902 813862229 827138097 336593436 667965868 143768723 296017488 291655757 623659349 660952321 962844633 313861488 572600756 273556548 861415794 926264121 938881355 140144273 146388029 511087084 708512986 302733480 531659156 403134301 892679551 489595945 589140084 188187020 762014427 91565665 324619597 226189126 944313881 709070852 894677151 287512082 512380190 969738575 978919707 500729499 557013158 928846696 996792607 886582669 963311796 647079931 962910079 677923554 756811075 456985497 591380587 364526416 953986792 364482129 411636499 133581503 872699207 529311460 919439732 531533605 758825012 546252914 920947228 57385452 680424608 436965864 661081074 814928580 841478563 3783439 328973401 62104502 642819948 995637516 996568373 154650693 502467119 143434469 734016576 860036523 920635753 9916311 110855181 841274415 934729879 431780901 600286753 601046908 609925980 418694867 452393737 953911456 994367438 698763633 989049480 13646609 394406183 332019758 510759214 937010228 962659143 142783394 535395699 977365959 981221931 281025128 555943273 405066111 652706299 83600039 484648017 107428664 772778083 393939643 442505920 274219175 471333078 523659238 920487242 219070093 750026026 498157637 781853030 334580172 811074416 167566078 580944475 889473072 943033302 204294069 997673068 108449809 333053484 13251045 261525276 735072104 743637122 615011468 800875314 282266812 793592939 473267404 571756955 413538643 587471926 525841217 669257316 720327795 784105758 85586520 576024089 713672870 819467209 195096234 639969886 612701262 645806768 293758488 826409766 542075579 625281270 68636110 654434362 901089085 921771507 367918442 824986794 121161019 841189214 426450805 665967550 899703669 932915190 292772034 519690180 972065521 999069907 995884882 999612785 1209944 637609227 757116990 985871769 883224097 902835541 970730346 991228145 596768670 902311460 305420999 976976139 677027736 829775916 469428780 526052223 305384616 356457902 474755058 571261316 626574095 696494691 16412069 627399672 853642107 963742175 284720746 330135112 620052133 869154771 783565832 802488947 89853997 600873607 523255209 965203167 128761031 742647885 807730433 995134891 831400633 992910518 899672601 995676489 110479514 475226285 761236943 893183426 918794197 984195601 781748563 926101818 431700025 751117433 196023273 340807238 509410754 816819666 416275091 510519153 937775173 939184572 744324536 828626066 723573083 853844212 449975412 553254217 792535252 985446224 345415190 633523806 876138663 898138160 45585763 491109161 685441588 950115514 106293525 479251522 685356795 992868554 110128299 371552512 101206645 357621914 229109641 379248057 870502681 965073155 940427002 942507110 221697636 896201050 618275802 628092286 540215077 883518089 235245160 676513543 178413031 862220737 409881115 665043936 196119273 823626577 969303604 981332215 17066687 415981092 379071499 612136996 767182740 952571450 375774387 889002768 305330124 590033665 342496720 897376098 188157466 817414887 625311518 988861925 196223844 926302947 11226293 242216683 949426524 991034414 526667886 711348167 433075454 610390698 702056849 988202364 795957184 995979864 613422140 997845041 701184957 953858933 410513169 817323925 294181356 991652760 162580898 174027416 485450198 940725377 737190824 856475075 604828132 618342798 3000366 596623016 932492763 955601779 965115897 988594202 373149136 871516052 142799632 810001786 874601496 916775642 958346064 969898060 589211458 619674801 48721020 761130374 278142827 350921965 126923866 470379622 472887684 972801259 698136652 766653387 617211248 774270188 889811312 972560291 714157899 741283553 154929843 467078358 156606640 843384338 641723820 885987342 99117377 970827732 384745068 603338897 816716037 994394041 825201841 934503811 531148260 972567014 99262385 579244148 410159857 422999136 807980495 974783279 909588404 954826569 961428585 982134314 647397560 677132156 632744292 919426784 582915264 730174533 201026564 202934714 742982482 841291346 156430549 984051110 565451278 769003888 385045278 581448716 189533847 958506599 7010870 119697594 677941535 963048004 867855475 912860517 325729911 378854773 569903537 662822172 420047792 835680249 692137124 938334964 287580631 455203733 433311980 461948648 248455868 294520860 17195462 459119467 697803 33380034 465775626 869511038 48921690 128601708 729129429 759200560 305760350 927253542 470377838 889172748 623885438 895809184 259445907 440442744 887479566 898164599 189089216 635600183 454018493 711060562 67008379 356240866 431828542 948423347 837282434 943000880 219032869 274361598 902259819 952348996 384125268 592755708 397637896 894911009 621910173 650796396 498372167 896454323 777815209 877414834 444230550 605423003 206456598 632091635 630364790 930392042 434431105 756406887 630386043 727022667 980410335 997008003 911623644 976751217 193764283 991372282 562010193 836314885 303655439 448380235 691912234 835683623 409938961 550120739 689683115 763511254 404980881 847108373 585657778 748086632 433578781 554088031 652379850 717105905 593365079 670358167 728634745 929716294 145405629 400194172 176700684 223343080 7333598 475443717 348984497 858736945 517406517 960745900 15030817 499536736 194501519 695616443 435526001 553045134 736280848 742738678 173822477 209657436 537147988 560427871 388043748 710804085 619858585 922333571 959675987 978684265 464670317 758202324 87626796 863620318 653169928 787803992 507078468 893268015 917695469 939170476 397195128 770534409 757566493 941897059 688127881 929954705 948715435 961639007 305191147 538539381 445174249 626929631 33242412 584921678 112918526 373255054 792529134 906191463 817121825 993701230 656137320 671155922 880169482 976179218 36936464 792934760 425626307 588352989 942560881 944052404 191286903 330799836 835138396 947126620 338919850 460043480 832779151 984421434 655527664 975971757 774032530 969401311 792147263 901686237 820384212 908392374 467471357 655656573 204157325 491758571 157670760 427538040 403934999 781684155 325411207 537053742 317736390 364572071 862162536 926033932 419259448 904522739 232225403 693193713 609896471 902282520 777747279 851011687 46427416 366648310 421843294 980136434 800638519 865683353 592333922 947989000 423505636 476942956 939184156 943189661 158866625 459015887 219866535 803193942 807581999 890127109 377987602 894102509 11751764 461308062 684794830 741732692 495455084 768135057 14538119 360125183 532773842 646787626 456434164 949572341 339597433 969610557 904650586 916205860 493461803 827662155 428258067 442614359 993065343 993220021 795269317 887290389 56394378 550274728 119462897 287828957 780440136 934735104 321212224 477650436 191807341 868011478 857561163 955918594 950080835 993195394 688385700 904794397 805055359 961041621 442794812 772047541 940463972 990234428 620492354 731527142 293725543 856019852 368193574 744428066 920962422 971597945 547864659 846252229 509371492 654421233 716988294 876311960 493723837 976456853 885754655 922454070 946704889 954681929 726537150 795626080 553366222 792336301 434220188 568994347 643154450 872218464 530205281 894678839 345616009 451704507 676683353 910714896 414741412 729842012 527745866 761025561 457125822 825505082 987651018 992098720 555308199 667427480 611095323 936137347 197665193 535955778 560425527 747153114 142248573 462966344 528543806 880040918 796332452 812787098 644471821 717675516 744536853 880815488 766976290 930730353 349991406 560904596 301007347 935967291 460031050 694550307 156789097 228881523 391900335 486489165 513710198 662272495 729071924 736524492 295923685 615479906 446252771 986426168 901184768 906793891 478221876 878545320 370632511 825212617 660347922 809209383 708263107 847567646 216899791 744368301 167561735 683180706 312318307 684217141 3060357 893548128 488465955 649667506 451181125 631839581 681652589 691728475 318025469 530316446 196690483 911431357 609310448 832131651 144781840 440228767 75975502 820120260 169861806 645284752 901582696 932398789 956305742 961921742 245147543 579769605 4652598 957143330 706464253 736232715 450510527 821965478 67835401 469298649 19995617 890979094 25469311 946811352 623745958 687553683 42737263 339511305 262428458 931153454 191566674 265242386 513960178 760424264 598188404 792310941 181234040 670132797 835814509 873752318 615148899 797213326 182876291 213360469 962222419 995166943 238130884 392265148 625174533 785021215 764699207 848397010 140968907 708567742 113590332 966616174 938126704 990578324 363696924 621167188 940212466 973681284 496791125 816848224 688597271 689569760 871167014 886939575 237894458 997142491 556093705 685242999 985158752 988165003 109617974 715434382 279426539 436739623 242619790 950965533 833447448 850613188 302545640 876227389 256099673 885910635 317079547 849034486 857886221 962726976 358540456 661714168 250696073 261215262 75284993 277611828 529470717 674420272 129638527 918450286 939937363 991471242 627950475 677100612 505747407 648602841 400383370 528562551 158292453 538705700 190285634 219749261 803191249 917422067 233943582 734453676 922011240 980012233 930232162 958202968 912261726 945360551 527216905 837907619 867049779 934850996 832248422 937761919 240557648 829812884 149260728 199262295 453240631 790126194 646081835 792060520 184310290 297272095 711036414 711653089 805139323 927535533 298021045 432126340 150561802 242410710 922228752 931416270 584634564 992910437 114382206 475709559 205368975 803246553 368142179 546675194 854971572 918461626 416946862 757768191 656595676 797674300 977486303 981456567 627888151 863241504 869928137 989647995 630888793 874085576 694892489 752335704 139676380 745231313 395891235 839045996 774139749 838548788 59245927 576407096 324840238 968017519 465770229 712826844 220894113 295901618 137638967 368503373 182190878 881127556 253278134 382476044 346595216 584703103 727515787 834427402 245984917 574065999 988480123 997378311 961449242 971858795 516935566 652442287 614394256 945885296 145733323 665661729 904210542 932297023 683763896 780268590 556996603 600493289 550129982 992265514 245990472 993486581 622973564 844376007 757536239 844365116 717687330 958504282 865124724 992289917 970296410 987974606 591154434 793590568 353566581 957527655 959238299 997792022 325439227 753355874 630357844 935592723 892302181 954088038 378835663 851632831 981357590 982930127 451349903 945954378 531522946 810656956 543715011 899710319 493308445 568166038 349330726 966434885 546705810 549327594 626701073 647070422 561304435 654236106 238612382 844008104 793838063 883914941 187364627 517823945 662468425 961320649 391348626 755013558 855938973 938046606 397864186 528788085 514059808 721880680 848825098 985084971 559226224 902508740 725868012 872661621 817286405 851241724 201977711 482582802 203514417 218108842 73455728 655577543 644771180 756455741 621722900 935443562 842147925 942943493 316890108 986151921 113070594 956024659 507739469 829681262 913706997 922431063 789127394 867814054 707283706 899565720 986440026 996335135 808801351 908983297 605139438 940637097 672951167 947976647 196835123 348089566 676788247 805642550 332069351 660660742 752689947 804985907 125396048 772507883 953693579 997980788 897702387 921002330 837161162 904155273 38183983 933116650 841158089 888048679 304220998 874996935 476396182 748082712 581219395 960924726 352728067 560736203 115530777 601341789 9364468 610189334 435294390 525988649 494348994 532708200 108152745 943315785 414650831 960439422 606363686 993172852 547860895 674368892 680809668 860531574 587404507 683110872 119753049 732476577 601114669 824127999 83615239 941602014 603960181 677598568 765493510 963236524 201879314 456272545 337257761 405758431 963033162 983576284 446548324 608158631 876119035 945171162 303526571 325330683 486065853 688938620 153233967 753151959 769892288 883918067 653312842 771687952 307350596 313835765 961188038 981083602 317829176 450108220 738179263 995612700 982788905 992231382 897692589 961903783 396390193 946890340 420624416 559508281 609094124 632069568 661630663 837949955 502647677 682772902 32119510 875697416 528845232 994192709 539012009 661007659 987559569 990081066 89291410 393141168 182788184 969032100 841165197 948781242 248239611 829905519 952357141 988653690 63360050 168399826 506399356 538651257 624772527 992001792 458107245 624751745 424229500 802379538 992826675 994507586 655069027 976839136 418776279 844544528 552388516 696925477 537897298 986015925 978036574 980380389 524798030 987221110 26227042 565857403 958005600 998770557 433085303 884679981 648743354 905805837 941252843 948458433 760859117 764478796 336915899 383430238 530091746 878750121 931844061 982126221 968161594 986880670 268691584 546173811 792492620 993101083 119626857 877763506 625346637 828344741 86097662 888657833 510501140 588462573 692463557 961499252 54856471 122637483 93127458 465643639 671960163 746063247 643646964 861803485 873244379 879067770 52935734 612036001 176538231 658011888 885560832 893191887 706939397 761636669 638346595 749448828 921811755 978764646 15412562 221284596 336678886 938995054 859453474 904848878 849350787 962190618 180271769 562317114 590540544 772080854 716296431 736533135 86536077 272203225 360538863 481338358 102833526 511732034 939416914 960209370 508836087 895786683 420538998 943537465 151564972 289439394 233920734 915091554 860630707 986792953 981095521 983496309 134817203 201160154 729368740 952971917 60475963 826619879 747917731 849485492 787284048 988368655 886018910 899957347 621012681 891069331 963237404 978259800 841228039 891687543 162774682 825493959 177811485 292248590 931707524 955483416 188682400 334513861 495516219 655564511 378258414 740700420 429776618 665048434 976769052 987761076 159858686 363453391 660800379 686933973 681547526 735171903 263008979 406397227 419109689 990351200 660468234 875483943 548876806 927652778 469993402 761908989 696901610 866721636 796473341 925745631 150462957 559113383 399555969 952382686 879488180 930355112 305112619 458102292 34558343 923338938 526382433 823246592 304490674 803852170 536815848 895153003 359921313 777676200 956090085 956831006 444743812 777948720 920516348 966077186 474032832 642755934 389661187 657279813 214690016 705484089 744319659 802893408 812365084 997053280 196029635 777041825 968442616 983721676 425027107 868128344 37716348 495760375 478374509 633661350 77067642 674977044 70467836 283923167 36133815 899913119 110322376 544346308 673720448 692662973 406861195 551014509 533787156 662861062 677042646 882414125 513513411 783764721 957857772 989164470 788375164 804083409 277723991 896466178 843423686 917657039 153347382 332038422 702093598 796859267 121589070 347549972 528394077 661568462 201357064 656730766 456787393 921472473 39390955 341864930 736672189 737047198 793466674 961431872 130526902 973022880 62781448 889138901 445398058 512829479 88722598 577568857 913125760 934307206 485674964 815438609 598112645 760033298 52186879 770167098 997743712 999001555 957941492 980641114 10755967 308943254 286319032 798264638 929569418 934278947 559867230 651897786 253738943 989107042 138237070 409010194 95726375 887880829 941820715 996361593 508744386 806173515 749706378 888580310 356224801 412110995 537541678 540042373 34229395 329967808 360713237 523736975 551187366 920520297 320139998 368363852 654691921 760565637 834219917 965629432 626201477 980809941 557336657 567535807 184587802 834010255 719274200 802337304 187701632 519306908 90445371 556479499 492338097 575035947 607672999 819778394 816822585 882329898 250032544 765660650 748476411 969174091 294036060 418157928 769695453 912931253 559064127 593543037 471746895 989774622 688356294 760048916 457156897 864719785 758162132 880176027 432544040 743362588 473852836 675102131 345336345 791485416 921784848 947834856 88882027 406220221 115415 650364855 450627138 553716117 968781923 998660788 908918035 997235621 865513620 928337477 257738154 717362475 465205220 987939780 117071280 511347687 868532364 936766619 393830457 431037162 843724781 884443809 323472834 949113526 53369693 222639532 296752389 320950026 689684979 957472540 293944816 386367017 716476283 971464906 375487922 379006640 168844698 235166304 440759550 610970646 614122445 635528635 265549607 335932007 883733990 983742601 147556827 954569000 341343689 719566863 710494690 990646188 822361836 823060089 957074974 977078172 632260132 655154675 113051623 671272758 438995395 688972371 147760274 205414163 192417552 712843445 922103225 985080365 453140872 975654172 99302909 851808507 636825216 700100843 508073919 706563067 769626535 975160715 515349920 630700911 254816969 582976396 415089485 782876603 36932697 463437874 59416493 385351824 221049588 345764977 949180914 995904519 731076212 750097785 305671963 507971167 147226865 773434526 18367896 843144269 169898712 314504116 232626788 604961575 236674393 894793019 14575735 244524899 189186725 363022968 621125161 806366535 433881831 840692078 434971972 710388554 145087452 674846857 41155416 921991371 980241068 989416024 368807532 461442247 693199256 821940680 466431942 775468357 114898134 574570054 722373033 944746028 822992364 948062405 226929838 787367983 143773675 319087126 511950355 896271467 238470755 386101994 309017551 772305028 743333402 934291682 664827141 685671149 362313946 573324895 531119720 554651053 401885506 823296368 125015971 427328245 76717677 328028355 376037647 431386457 769823633 819129890 107153656 866996770 128599158 133544852 910236962 957734884 777221797 815034778 469548227 571357236 361293 823109228 219884554 618752432 409777167 744639639 911252516 956541573 793656063 989432716 918644019 958525532 238198840 787695571 40062143 906558092 351422504 558040296 231110543 821843947 886068601 952196063 841691721 997050539 997613187 998426438 146456716 729021737 878992496 963903653 79228265 124527494 188590669 693798593 73788901 431851071 29012926 362037569 14447505 114946690 249932888 777446229 184616286 463386852 991827673 999163977 914087469 980461385 415989814 854837907 592809290 764141320 315379774 703620528 510248330 789275118 548953624 656546351 447903235 616546408 254562904 287061040 903463590 986237011 383942 428583357 770135048 960909362 240221461 727436663 537209209 992225310 124563578 563338334 541193723 633777206 716201678 850231279 792701006 811839131 783725898 862569207 203620599 820829390 13224905 844211731 166711414 988880487 635580152 853623786 326307433 549145597 422247913 432319795 249757979 260144947 456172029 702640581 382079098 776839867 75077442 859605494 232825244 835520871 42778891 555822957 877759296 965500681 282078970 768595023 990524636 996489418 177941350 219670975 70489669 858126224 990442541 990707943 606061499 735802241 847586139 976097273 367369256 770311051 674909207 898381407 801136289 867846573 659339820 677505952 845620806 912829835 868768643 954330088 349576246 436266371 307037963 814798871 20614883 795751759 48115178 195543631 825486506 981776441 422387455 888514174 697827737 854243037 843118584 955856274 841922021 986704178 536302607 658267895 603687508 830247262 977366602 985448583 704676406 964763691 79322442 332651623 411854785 575937095 599519835 691897966 230993564 744692322 496645329 688267802 935247284 966686075 541171235 832213605 572784047 899785059 864108383 986517728 543937575 601392547 311828743 594658149 570136360 953813017 268940141 395811964 764657794 837566558 927603080 970739923 716782481 924818856 278275808 699088579 12207955 931903590 262433996 465628410 365505782 977144689 28454383 340898073 781944809 787659124 487449004 515111055 390032509 451360930 275294421 552117586 958869040 974778616 105234277 600606377 712272928 840459697 194646584 986446870 618470539 995433921 922265025 945259954 659833301 701309035 722315139 734648751 408472126 684386164 995121374 999525276 108703587 464879894 619259698 933189573 643626632 877679004 839018626 867289207 64632164 957831753 436341177 646369937 225943942 283586826 502483314 646071066 685615452 820071092 786374235 961902474 154231823 817036207 154942059 953583621 735935775 888103273 485305350 648148827 220072696 224033242 686534360 882212299 425034982 608607492 57930320 465251978 539599186 950895907 765367418 769870299 574358446 577955975 392346509 607909867 223447660 667902727 113510963 354344552 360997450 370907494 346946663 374745814 102207540 126573366 176438768 574476430 910108215 940889555 453782651 650230263 277323661 576820915 106742180 486182829 859406574 942981507 220267538 565534236 202884577 384174004 71279169 86535730 403806359 526491018 633838187 743312326 688847280 963251615 723021611 991043757 874381811 877326244 799281194 919307189 457613698 471580127 367503882 648554885 513431264 611613696 269452572 609063333 305480999 317269555 752983551 889763271 221525680 256725662 952526577 954957182 504320908 981014044 95195541 985485309 379750784 841642090 7967606 397375758 578298139 631722211 262873005 511622815 420041831 831753837 682972077 895026846 553403403 773953743 555757670 643272886 514408797 720847173 886625932 930052847 247139226 651646450 700170256 707485268 651044736 864268000 34692703 58389863 586381534 662134443 751453844 879103840 645638308 697144172 470124373 622972209 339375673 707221133 364822044 501699470 22250367 674495101 156831292 825121248 866420051 925799673 279907413 454281997 637156758 955586683 321485380 647948066 19680383 306166473 816035983 979293196 651819667 949039322 31699272 512660350 17153067 704328679 944172507 960386363 643011342 883904981 11852870 39906983 103181684 195248307 265512083 417664715 923476094 949016759 163869386 256252207 481386365 590502514 115111955 654446130 142944400 926337330 571234983 619232143 602100948 909071198 281933294 538916898 187974153 949044937 857745771 952887982 747480299 886516261 809297653 888088631 649383308 839389099 922960813 958159614 390541617 459728617 426565052 841766773 686953487 793113708 587350566 598596941 98916319 482530526 525524804 809149368 604528367 630447621 291121411 541009979 836951711 927733815 987475518 996648445 497374790 556244051 700247331 766408356 290144439 536996201 422866350 587974295 462758681 773289453 976880595 992439203 870220709 993580598 716469463 818124496 156049633 610408057 877290939 938239936 843670746 932573029 263275089 457003458 381584492 717006657 662882832 945848726 979698000 990303654 987739059 997973724 428466078 906675355 917085210 993974923 739880802 896936638 860203467 910437522 305638273 398585618 724720587 983848731 145673200 521436693 173495064 967408557 251070054 278643922 262628778 716845717 208889849 796916282 572965824 777357279 342238157 751506444 416280775 420766784 836236774 985732566 916811508 936905339 199248368 782286878 3896579 686418639 304318763 837376298 788890735 855067876 210007753 622223225 368806958 446449720 428305956 878970294 200399316 976602512 669008218 841721788 255981187 676326386 838287301 899071420 135716600 766353200 239716536 252548666 629100227 734773007 290679385 943535008 395903826 927722028 78082333 515014349 306263190 847274087 464027765 953643121 232823223 390066223 383923301 873136528 833278422 987923926 222355841 501033375 994065100 999771332 269125724 510744860 939815994 955937413 370356041 417129399 239702883 513520632 112078240 996680760 784892025 855323912 409326066 783623179 605844231 944380671 364432822 967776605 489768988 560286483 906400349 911089253 138973013 890591204 718554823 923744352 392667851 450100010 776098602 821913409 653908043 930658265 69553522 514037958 159237957 897643003 516435129 980985268 412070174 751922774 292238309 944699796 126022704 997777315 401824934 511608093 623950161 951676838 243421691 863064280 291235356 530870091 901467587 924246855 396158358 792741669 730082691 784559108 205552786 740127774 872179486 962614431 114068128 622345184 366727972 816727215 793095145 840952951 867989675 981441807 68565998 378804469 455372678 774069092 470496986 828130531 936625482 941387992 827625158 938248983 135573632 361637613 304049014 428969844 534912545 874894724 483760749 524496545 94538902 864910110 149490037 952093235 605635197 743086866 74370354 417393909 56045624 227926754 621004225 771880905 512787812 771436405 919862257 990632157 644240790 864580753 570460583 901776159 381614824 521591629 335771523 413871676 101842168 516862882 119477948 977815031 17269159 982036728 76939808 379429069 845519152 873109766 836783572 975340478 207891690 842990638 43935407 484502167 396751985 795403012 944062492 965352950 712972015 828254359 189303609 619580737 290582307 392000843 641318874 685505999 834028998 971458151 616062232 776356033 503170020 843517453 129365092 204204537 730816250 865338263 850115098 919557419 29533688 517577320 971810430 992697349 539081907 850738143 717699658 777745943 285642073 670143273 999594559 999711659 828717008 863558234 348726137 490552044 301157300 931884677 662398903 896907976 579990020 831033587 659165954 832470472 471275681 485209612 75295941 715174257 560606540 953626318 300772021 487781086 465814809 467063076 795009115 923575665 823119554 903018200 187637263 393428513 700516610 906653773 958832341 984934362 566601669 805277898 652830410 773184787 626339547 766902311 355892966 416878645 126209544 802425346 51741870 457120236 736410293 846925534 267169467 513154600 328427648 414090374 278082421 479465125 826133273 851709957 699529817 973039282 924836753 947630862 579177455 951438133 323038206 724024914 173959723 725218490 135177004 241217156 457383491 566059715 622352386 821628755 11052430 896086412 643854427 890234347 98571616 490962465 396334976 623455029 248915900 947968748 228590083 733845035 891146277 897608756 37238388 454758139 515673123 714849795 687251751 791979057 640074795 671903980 427367454 431148038 420468813 519664899 873153841 909909801 38011839 422374702 833029635 860266497 933516804 959973282 329738243 573145924 105945926 152351342 922297916 948753454 917605540 966627811 572367358 742155017 511337551 592459835 654023189 832875552 896860996 897752727 598118538 703286343 815543850 986262134 578920475 889228000 153535563 340007190 454768125 873012234 936287949 948858725 793576426 900858399 203571559 731616274 692273352 933291392 862259721 880008576 877414353 932861579 731878077 961579907 146714705 281443155 150771596 692957095 567222029 609026186 317639646 538897350 770443155 931667307 807992823 832607311 328306472 713462864 378490336 658673038 398109277 402137302 917266353 983299623 264546440 963147081 298233511 941111883 395085180 535109414 807742744 871471603 17597944 532888222 615453854 848750630 330745718 801510239 159820100 742517222 966063313 978002134 723607063 791000484 330660477 908619124 99170025 906067368 593210998 873120465 177594196 305833687 770837217 831358434 64285235 853742535 976389520 999172547 920934042 975235606 209968844 952652066 866202664 948778998 943853965 959605373 768712151 955929047 559705696 986943227 646060981 701889603 511872512 900749371 194624042 543343556 198204189 772833881 289838169 357332156 168653768 701972318 662078165 741717280 202790041 777342731 843533111 966800879 415178078 957331146 483097882 650395835 972672509 973638749 976944551 991932711 370979584 371495959 826240928 928760152 754448027 848609716 725316878 809486970 946204234 959280751 967929905 983253463 281000187 371339368 197591333 345678504 177702003 411820898 754852432 972014050 521993937 585404338 470651092 496817599 316357629 510269666 691266791 934188514 515500369 699092302 619366691 786757447 550272009 994285092 670105241 870699831 955171594 978413949 253269136 289782108 930655814 982101223 582522908 672670412 652289698 675713814 171176667 983120144 156902004 873525694 728165363 759745269 240170143 498833869 730797600 825146117 217652752 332880408 28006444 255220425 226387262 473970479 229569207 683263600 23212544 654029871 556625194 686094693 909730763 968245512 999000782 999182842 838137758 979507330 872920068 976521568 731955446 803192026 301427508 466678655 540442667 663337030 109877120 241978609 648593875 895666249 4031128 809070064 656836044 745584246 58573573 800654621 210713469 863576543 770452600 993825818 518745629 785672069 529382539 634322257 870323452 948590061 529975138 622819656 71935727 248282152 954242608 954865896 937347303 948106293 630885485 891975706 32691395 792544447 871553858 891999511 648998591 687836596 612028399 720202116 954251799 971516503 499978319 930546607 327708660 598640863 315088033 696590865 875592759 954955274 843558672 916943330 241297655 936009827 606634704 612192147 720369058 879601756 748039382 795246083 492315737 746434563 436223379 911985102 325587358 581454229 751701584 950404943 37051701 793363449 696884015 737149968 22458223 875378432 570587581 631970854 675184239 709174439 961693597 988051931 104754914 499381720 151919830 317488615 448402231 516771543 253027929 649944855 226702083 665917254 465097212 494282915 685338157 690645586 745300155 886059843 132942783 224815732 550484488 990213547 967750067 977665089 933634690 951622928 70333925 983026446 6954797 837791297 41999868 670374473 128584373 935980591 707227294 764590481 945037772 962611714 768464624 916505936 727176777 763265429 173808039 924011882 317979643 982063126 788055767 949628789 628587896 691001503 534992381 880226248 84632762 745453605 738609830 782654429 23974902 445998203 873827060 993483121 199783130 395138575 921664674 927723979 187945186 477902635 212244321 991646824 449658497 918508454 915726395 933988846 743333599 877856950 493187783 518687560 882471106 969133371 336017275 638488892 723126513 786969295 394453629 551683895 457617574 560875585 289694930 362504415 499534621 566184266 530374510 932754486 180631377 471506860 295007111 691849396 764804279 952086544 717422204 973388290 837423875 877383194 931391408 937239481 239069021 746592851 137809009 266312878 655893941 734835833 162167978 630608230 806178954 852341230 280460626 354377144 860300808 864368038 119037184 403140002 793859434 841704736 137692695 848523665 531653348 936759120 974904232 984632750 974152807 991723734 982012635 996606718 371035118 437019645 376825431 848501045 991857564 996130640 166883113 512778873 528411274 854948634 719925533 966518874 99363169 387951286 344858983 833806744 135406233 381846246 705682274 939276807 585224390 680415394 76382603 134301111 145002744 352346529 891184542 911696584 400538502 998299508 426480648 813613205 409355043 497347598 691778036 702725646 570167134 823789443 71416450 118462178 19172014 604963236 792475039 967066066 8441227 659066877 906081348 983917477 949200779 960963732 934947735 944078868 923740435 942478690 900110476 978472965 930067496 943668997 534884023 648509182 225098858 639492262 10144815 386840600 392346174 716628747 655537873 972893522 964334286 977634973 416883122 698622003 660693957 795502858 564353281 577669813 147018246 793764099 100952913 899495693 414227711 940539132 586904151 601684279 857915801 873924968 144812505 151060639 191807393 605791834 462958385 807366928 533451600 770019878 634314501 852733438 67691379 832601189 971824949 980531394 464653257 761625757 890225143 998449208 908036837 923618873 604419052 786654240 644792410 708034412 581720397 908725560 76813408 872665364 632504253 914400451 758097230 820935575 576628612 671487588 841644798 878363233 857599139 958146616 910530866 938816155 763052963 994483407 460497469 906049214 940433967 953723329 625619792 922589579 933831160 937634454 949277863 963289028 870370115 993318140 216476818 225476978 450929697 709860391 812080326 973316859 867809130 916390686 946873254 961943483 694995188 905161354 885600644 914523497 330917104 791294112 542361937 593824000 892118858 943143317 280411345 302213162 330313000 823682564 126573017 499463630 846123184 977261886 916951044 926892294 793020238 850919827 208460716 813134359 560791958 956410325 542423640 640071044 297169295 440620908 129797999 600822487 861061308 970387508 175760577 700639339 274158755 738626463 321724682 474424791 639121880 997773087 285294757 530041193 210072989 755832030 15919084 586034864 89129986 994462942 55699580 829483806 22742031 929001620 532885871 676114338 168104345 524089070 551004527 841543787 156054608 390746812 762728020 881835409 251966778 710680360 515457312 827198121 136532603 199223361 750810510 933890452 470179221 969496902 265463722 425760062 462284119 719083111 566797860 574503793 950997841 951281892 891132316 904875841 44715320 798087617 178552314 562231106 545226308 680930371 753570156 813688518 524141655 636360683 934213140 948366674 553972785 705053563 954454549 955868233 719379521 771633172 971436280 981168345 452171101 467811818 881699395 890521936 710424832 924598228 544873571 924082843 430302710 632163350 151968589 266879432 293775629 414472210 27941745 72400837 17203701 232838155 989132240 990181176 306825678 922866206 263028743 337515440 122098619 807362937 90997567 540345870 290281760 632443513 542804272 662186095 411689261 710431069 691750675 757063276 871876854 951311663 556729026 766240904 845142746 905198921 769137327 995431920 413384941 762703343 874027276 905723490 393739635 989240827 316150566 444519678 874126411 995595296 214259902 409514912 244905916 555384235 264304117 361014844 698240206 731781264 228376917 343796731 959054399 985881598 232851681 418107477 532905760 630466328 870207541 992856056 635743116 862292797 782112903 863716192 901023932 981861757 323447534 814435507 994927236 998481231 172335326 391783144 703910781 885111882 99434448 501371436 220093727 678723732 972558730 999822194 561317307 807967625 22292070 301009501 763219810 924122008 150329116 734256421 241178569 418220169 701614915 949382207 895351954 897904525 218675934 838528249 241230514 280799329 561907183 983922954 941786027 999637448 566123906 790800005 305539724 515403635 894456915 960035681 951890218 969456489 913552833 954977003 360282959 597069012 99221452 230031201 263810191 343015418 582585007 971086662 950346028 963213954 463917114 906061607 510212515 898553769 484504221 894114643 913157641 927792429 769246557 772620228 245340153 747246538 648919332 906356199 950255488 989146753 995493149 998310200 974099070 996486601 294064436 860737900 229650355 561061973 813293962 954397025 844549829 974449289 446893679 489272679 878567134 957238816 398234904 433116419 359986136 862725341 778019839 883749055 713372830 977939317 462166741 541806264 874928046 926523001 290057697 496607222 641566291 862574595 906503373 986625551 573395585 842220774 724435209 873991621 336187483 885289425 204620711 711862641 676320185 851202487 228980301 273219751 723020628 923204563 187634159 958459094 896260722 973934736 503739755 916838553 477496103 839073926 124730240 164058453 352269517 515707125 758283275 896653136 64813745 185464829 949358448 993354611 453019216 527273031 325949418 568852684 152426881 225975036 73601367 96870670 706781047 869188035 303429007 937974030 142658861 716362322 130204785 974891163 218490810 367510893 762246172 832730494 106238439 181977214 388244596 984146544 457042398 964334259 790141970 943053568 681082287 886653191 102137495 883759193 709485757 853944043 90433213 664040263 160199539 797627185 76439908 832622317 678991316 839089282 70114884 378828164 770797597 989767172 926112944 967636090 570220651 637785024 306020879 660259360 14204714 267159400 711767286 857163997 285229501 476748552 710265086 713411343 466743636 815395115 191184673 853603981 546243041 919351754 680337391 941659172 904885769 915014022 245272599 505783397 982001690 986738744 745115927 809070904 430359260 610504494 965122516 983826265 486042167 541818369 331756466 620104225 213031653 479078949 313214107 483389197 626293151 797794363 898616975 915686919 940599651 981444237 119101997 629704409 866496018 887406022 730468019 910481284 563752050 792127529 382583210 635884497 905503940 978481444 939053870 961863338 459375775 482764884 207623759 990282584 718528144 845934463 412362327 569869998 234589542 327888869 411621991 727968381 973209682 979003942 999315587 999567361 238520462 491573468 293635210 519749879 520226298 704402488 249827632 618464448 274959403 858002354 872703410 997623329 492327034 813566376 80237798 338338198 803897915 916535322 659421333 891775847 989958775 996481354 586599758 877434168 372899810 733265068 731291675 748884518 497064489 680194727 643499056 715551538 693764796 873872289 875430724 968906851 926480544 976067050 335843288 744632032 596408190 651111720 741956208 797559217 352868778 650823484 687614409 986596512 679529234 857182352 506743817 913978966 7506434 309087703 503528016 742120834 854605262 892615748 334874208 796314969 484423219 582081505 798406290 856100709 255988168 587579763 888829616 930251889 918689521 920015337 478923645 872095450 97150995 350855815 543262197 586095476 808335736 910962979 609122335 778396727 242823286 805721209 702744842 856842245 993725019 996319166 883789071 918808356 491844769 632957683 853931081 970883752 736472707 985728733 367256881 581516672 316820743 955398683 658078317 965810273 226213238 835609442 651492476 932089221 413698116 735403194 870906559 997336308 415444751 590482398 610793080 825865951 894697291 981283263 648597038 701320785 956147463 966804113 884527164 927510988 33226572 298856798 95799856 234925565 419452458 520651060 33584955 691155121 965516334 988835213 532060736 684536623 950642250 988112446 204385700 872359648 160413391 802464998 144265308 478000396 886370699 907223017 232626781 577774189 461114513 685567957 23479167 749823239 709832709 888027603 991563321 998034927 336067756 789196282 62158239 516560455 843133470 913510592 989019951 989315099 478991876 651752291 750855424 798510972 573306187 795698571 137887391 659021216 721404151 881634190 846362608 985518647 971624075 981554117 366638597 805948364 688566668 743085841 480418085 661700962 408916991 786421923 741990278 935418669 372609966 648522603 352361060 441035100 453431113 572235678 813378682 984895235 297932025 386458888 954777278 998725315 738535487 758151462 430077686 794697165 82272556 156022157 470355813 887532332 105990857 612700065 536274348 785905695 959081273 959187403 219156225 873267628 163631817 187871805 896922239 901993942 4422405 567726884 469661362 875137643 899009983 955524054 143817893 821788884 288957624 520612785 17335269 642170355 221689121 921334882 71442455 512501110 937941129 974068119 976719353 997082242 772257858 872959330 650004875 790663656 722316866 777766974 162323175 658673196 550452211 947301051 972153953 990524654 146098331 215268767 438835201 464150296 400519540 957762897 194379590 401206418 234599356 425156817 323074120 354623559 782592598 900685630 673009924 870259086 50634865 551153194 902662503 995647601 931058060 963491193 248936855 939822363 966441114 996478179 455206833 565343343 67402100 856616336 341481783 798221474 330968098 460590267 124130191 694786983 773684014 775711473 56454329 80202603 936837474 979049198 303573934 949800956 429815832 854785319 333673721 647451164 651010791 734380004 936785540 947564619 98562394 656042786 752311944 918408855 714267961 914588368 176589815 811466466 106079221 109389206 620380179 818443111 894073968 907824295 31284522 530952822 251215436 717632940 721967523 788312980 638593164 745221882 492118705 863759622 833225774 857213959 257457770 496281156 934845510 942553473 492049244 623837999 735879513 946148687 673634173 727619516 306972535 399995333 152422312 255677715 741050110 941297650 642062871 955516978 438724143 542750050 504730173 955231032 163304288 850897316 876442945 893838879 129427246 216095247 659417802 751454388 609154901 879738981 999592918 999784890 834077826 968013012 996558020 998631861 116024209 294247286 707354963 944428733 916773065 954871279 199168776 840265128 101464540 791248672 663274483 704637444 93846539 970733289 280472332 978861059 790972466 883201566 89000512 811329483 726010166 781183753 423578653 648700255 316053042 453700497 409383210 632171876 395424993 922984499 740576240 818758225 647636427 971551105 737432998 910700588 253241045 709341335 701829481 754395297 477115961 606188160 785460385 842754608 906498365 955322213 272703626 417943178 520841096 980187786 960790799 972538636 642976840 852291719 212406381 837551765 902511818 996030831 235851308 813504338 940378446 947825250 155459083 741397742 691314061 810838826 446872149 607416496 273969446 918961213 836594700 933186542 290500047 751768579 324892772 428892430 96987973 141188601 5753669 134958919 305907282 943725832 437991103 809055075 220831760 552762544 61934708 431574431 24964615 737411017 44734374 321974958 40543388 136942105 318964627 402706731 314469855 439596656 953808675 980337494 797872926 853918815 834956496 963427463 673376096 912188078 361648006 563536546 185808100 614901298 65364694 791422879 756976340 970252335 740250419 799999743 585547860 829867763 622271180 897299552 93016620 674887730 792586521 957817298 781812861 939733522 553619287 844687633 638475057 828875855 335688679 775071323 772673957 973052401 390873700 763288251 847234100 890802616 418063409 689104860 160421443 467148817 131995714 671353423 58961234 715505753 282449201 850723449 694358035 975643858 337282493 934625220 176839729 469298659 611064486 706606279 256630780 848941574 738518990 948592578 92190456 987625593 245697566 260858570 223954592 394231720 640848947 999261452 712563944 862223871 585131723 781329179 282424079 696199835 501528949 862509035 524604785 558813522 897487097 946144638 776293410 817673333 881618685 924583772 744740080 791209925 986057712 998096088 969776898 991344860 965458897 989381516 271799561 803686328 621119325 635006949 429863266 884518334 403683025 866482141 964509651 993664864 762301229 994957527 51788152 93583870 746915635 764948350 521310771 934285993 20613496 863224192 692744910 825083856 88246395 346244523 419547733 848372643 199164007 493349324 145771822 176127500 811479741 891349618 852001050 961468048 751261524 834641620 858470381 974671391 22742625 943232690 715901573 805770037 582156249 910175925 477069197 912202492 687561477 728354963 159875108 496022940 434011494 712798358 747828782 947259354 212727371 617105416 229502791 809381056 49314369 315828294 830394907 993189635 15486602 953321686 409081671 926365720 963908794 965290419 804959754 863152775 982609557 988109407 665682202 858057272 870124669 971288152 670295382 949524889 859486095 914552202 873884220 983889735 750471372 824576284 203124910 620821384 979273836 986299729 928431553 997428982 678992498 987123148 436079882 937857631 800509157 850099093 189535995 464659964 747297522 927919654 874490660 972404149 435497442 959749487 227711017 897425070 7274183 568064264 937648337 961361238 931745287 970391441 892588840 906286287 49009926 419469125 744541943 912532553 825307743 880465720 790822639 829846870 356064221 677763264 164373095 916297570 997436893 998031104 213778237 605457239 541439689 546914663 125288043 473477909 943612191 983749728 69877025 186747077 277598156 478173785 422862292 814216974 115621278 871909818 682832870 755723081 760024635 922961402 976462509 994552221 358029428 677712782 871317540 984235609 189881148 949563035 518590167 570350402 884000455 932709060 140740271 316376075 36654108 222071932 370017633 464845666 154236531 521454752 915627790 917725162 249022123 421961825 571567839 678930113 324759744 920335558 990256081 999038302 24355126 614680618 947683868 974121556 687586071 886669680 426397886 591202124 390422780 661847312 328154548 361450543 603331124 639510110 797654873 943818524 300895738 622298818 396799277 881105798 819130225 924535732 732854023 947395931 776150205 790624236 916068696 978120024 947091075 992102633 952351587 988779630 135725988 300141424 337247884 776921298 811846804 974273643 600997360 682754647 884100571 954382795 833845033 852827688 726350923 882449367 631284235 994076151 790044046 862575646 193769129 369891153 144112419 551775183 293525398 795485908 710149704 758688117 3245636 550391983 737399031 958380489 584908996 889928753 678332807 820382590 113653999 147658381 286953727 751023423 506065757 684245174 298100776 532755918 129241598 568231760 288285234 934984159 249529677 575284597 188208410 420017325 596223205 854363687 629005138 689954547 941122918 986394681 729756417 770095508 164889274 172682105 871525653 942298817 314825276 784560363 598252385 758721667 343612304 545711708 839595457 987804613 675882623 980458643 795799778 973678004 614930469 832863478 814778288 944908380 351216275 715209782 884970472 919218961 847944212 951889761 972121897 975430264 233023713 437380077 390999996 419392033 429467428 613836792 678539760 835043384 889293317 902297867 560769443 810936493 15634637 144745960 767020422 879021880 748591611 969638001 347984787 911823667 981204412 981932430 181676758 408412479 189700543 821045527 897076544 920049192 88467059 363188132 332573174 354276644 559677335 628673142 924310211 977602196 972362015 992190503 675126585 888083234 720671519 720887896 314076864 452485907 190511964 429381522 987583276 992867427 705833153 899895160 937551001 944156491 558222463 776698173 976239048 987434785 450478651 730203635 455705741 898176862 20576710 453913495 935762624 983942787 777175124 822195241 469477508 583787794 967128296 998152130 256750914 662085204 216272919 985188401 788931777 994374449 269862012 871926295 995433544 998131823 328454181 694898370 178036477 678550753 262021618 619852506 262039285 780771436 146054482 710704441 229023242 390855830 33111692 610683156 363449752 399129254 574872509 714741352 924872042 950838036 100222784 344056790 142641274 339246171 390482574 454079124 526463672 786744653 426343690 551715930 980594328 988277699 769782177 967075297 684123244 954799147 461993950 899018917 843398391 920863482 337015056 390764098 823145625 933079357 780719560 898254125 980750489 989545381 907842747 999854613 995827087 996734161 603871700 839849238 745657817 889820085 855465941 920537270 309910854 874205609 441928568 847286721 973210529 973891553 935133440 982921671 828918619 930647772 202462924 422079265 228217158 477563940 888893726 945836924 646569306 803265982 129809251 162139964 935039726 962124113 159003016 205169753 666836766 820069388 626931905 936531091 535261584 640093078 886901294 958047905 117378414 347336355 354528207 808036611 436820430 795691761 919150477 937089572 208886538 464473849 528261398 923486753 715817820 807926060 172052655 436927551 126121353 801662295 544150088 733034189 729763491 757035637 78850441 841508797 196959622 964836811 505249258 686579372 896767760 991477056 927336762 998623854 443407744 804610044 467633678 722118310 98616527 265658933 234749754 722029319 520849892 535930748 750865689 985368410 357608538 795065938 202445841 204564693 742110321 886783378 585514324 678819313 503565757 888702721 373470039 778614847 223315677 363483743 940090197 969043987 638652318 813904413 993332255 993686595 896258814 962093783 49291992 693253221 302586733 766351136 523591178 601589121 908946865 931447364 620239228 748502603 65952161 413144249 756640797 807938025 877455842 970898222 631005611 722697160 105537478 590424696 801275214 938140414 290066946 304019346 527359264 933748727 152618350 860199005 327950361 729697998 578311056 584932201 575331472 962899138 862381150 911650073 604231889 717176353 375259224 649003632 291378850 986262876 527199757 829051529 915628883 966611581 541120639 858619717 928794732 977931102 760259536 946082081 47653038 850348121 648890639 864649205 366075201 647900749 123668718 648445580 218697556 335616189 288919581 915275722 791457522 951399540 129980950 239452709 525238183 918348518 77623520 135319227 143340841 301719835 563107428 767401274 666180533 919303889 112302377 242086420 801940233 946606276 827237073 843022539 190362555 629825865 950266298 978634032 168245748 418070829 3190582 996137281 64806436 723943544 242474754 824134401 601682608 884480321 113776674 374282073 567559973 993966241 744434902 847635662 933781913 975923246 924641998 934202363 498393446 606107703 323570673 840765333 454434017 999302268 820742603 963176290 829346182 860173055 6945315 890278235 185113933 357953831 382760115 776562989 489170554 888774190 544709662 630387685 936098649 948252597 205234080 804883968 717035792 787294632 627272674 675556828 122107722 604996786 240434739 574589922 335958997 540222594 377682043 476332747 457843776 914685359 248934102 861849538 482309493 878191776 111593316 836161710 537157084 954780289 34523483 670126455 13622016 493307226 865559231 947487241 921547482 964446530 704401231 929367579 460513979 909868332 232238251 297989283 789007205 986556524 694725482 787444855 597597770 771102756 866267606 876136297 359285058 896657138 482213986 659926435 728985012 825512664 997276501 999331245 545993358 895264569 273396899 886904481 845928629 981747762 576465830 889083899 680775870 884009419 21654135 940817477 32256965 920927473 141075554 624007422 265110948 415558007 263980649 802197695 565417766 683407209 118414963 225502511 707799356 781989743 730507523 974865787 797776767 944311466 154469600 804237713 174648610 731485101 207113631 724816096 985404789 989357966 403836331 863875036 863000178 901300732 543099927 881956863 148158246 918528129 375164317 918580003 556761209 841177322 855097130 950433753 187357019 290559003 973374157 999241136 239218786 858470983 860699902 931857251 380808246 511880111 897337401 960406430 987762017 991265955 865145126 892180892 481689403 982847395 49458141 792040809 68660383 371977943 131285158 186660161 764478318 852775434 582845840 623440184 363642323 827654408 618460608 778001565 438027086 489435481 482193594 709023303 456664693 793768019 775607097 919278756 75478486 824882453 215845471 600183727 904253433 993279044 745866637 911406965 171399316 871917317 702237200 767155006 235001786 830088727 332547343 373983047 39127401 975604571 659047696 946528404 69720522 436151235 12438311 837798588 176976514 428847855 667759940 947639192 308640811 748216635 228140943 550427993 586179499 621109923 40015062 968741224 51504099 484854109 445870446 828297339 515225937 733271643 216852760 767310697 42323643 332264034 81394780 260851155 772856163 850098719 459020241 639086145 393358906 525431281 466811461 664951423 740744079 794613946 711682283 993861514 656142266 687006618 185588765 715646169 228468970 710199400 838787720 898324858 200337253 207449423 323407873 658223466 801813672 913333322 361724906 720808334 269171405 941735674 253551358 336630128 983397166 995889245 144556565 335677035 378552763 517807535 666209247 906902311 588253989 735614103 545194643 859826923 248318223 384965676 99672811 985553563 438755624 620483509 553448486 643625606 224745737 805389802 842278409 884079387 432127526 763369313 254859906 976837733 977745950 978057466 451962869 471253636 31036782 734831635 807390430 959373318 845328910 873766896 838361137 927588478 686379410 801938579 783061382 859750105 554680500 906119733 589772229 697084326 557274375 801604541 856425852 942068599 253855257 478257471 872106308 993340369 859592544 971610106 769529920 875064377 185636950 604049487 152756929 903896765 147894696 832192476 696698878 830667345 890889794 924736664 545517681 648351483 829253258 999404630 71386692 862488011 147557912 861634425 44617441 935607925 933062103 952319840 729286326 880619555 268583627 674166056 396103341 510248137 268438802 624416951 839220497 901930172 797441484 959511997 991640310 998992405 296542005 894377869 407268347 920856632 658861585 682776832 885925546 913889947 375691120 724379381 73848937 678216547 764983659 918816004 88265541 222172732 313083762 664447551 68719048 283350936 417167960 897720732 134182541 549807436 845151453 941803235 656255687 970580787 800714696 877573880 832457620 980379071 8381708 88401730 585433606 615107990 324337391 493774899 953326929 977887430 300578728 882839130 729811237 741525054 495002611 717905331 226326630 934997534 533133152 552553007 878052133 891999145 554983282 913592660 622580613 694849167 261298556 705351334 811266510 855837660 252527274 531176062 152238695 791773002 526223575 866600965 297240826 311923755 781193794 924453480 208450400 436770654 521017562 650150101 602412897 975464231 406465558 660125121 133215474 219684818 105131594 922161672 363494051 678052875 443481462 497623496 746748487 839755373 766834343 805846239 306683278 625275512 588988704 995732590 55896937 633651162 676957852 919459343 175065165 466929494 936476659 947955706 952993111 987990118 702971212 710184388 885071926 909163607 864966313 959124494 325660729 616615494 429695435 979656317 80664057 102507950 157955409 502456552 674959464 852564948 290245154 898889494 954809750 963882066 246992702 997965089 844247433 883347650 581466261 940467360 755378962 975615964 837288582 847329361 728033053 849270584 997346934 998687419 995167069 996908333 97360512 662189456 484860798 980298770 594593860 837355071 934260383 935497875 616945523 663930261 635374766 984113314 27315243 602421142 770061182 812367251 77726550 521076675 464807690 977174834 768152616 836769724 526615907 977184978 516564842 990335887 941600400 952545398 960414485 988600595 405921825 435414323 676009041 686980047 761184687 986847083 618257146 833194542 932324866 936882762 172801660 979091268 186947082 830079511 240563015 995575882 559673363 834033094 605482974 682732473 969933176 989943060 75637741 394117360 73528817 401489454 943364343 966817143 765837779 877829751 700560303 996884585 810070813 916827448 717975561 836375770 510072887 590577274 209311586 221622001 525468855 857032171 394136170 653023264 654326015 669961402 345178573 489824960 314435252 443277883 702796096 763290503 46738110 252438225 261868461 355565879 585828395 843680805 148114789 165341786 607860615 876727628 235558668 706734734 519052800 719632895 597462433 796682056 217117764 667930226 929853165 980590955 248984214 693097692 465013560 991413102 305740513 992591733 580303642 816450153 148064344 712685664 689766596 985100554 936560837 989679433 817612717 819384274 118637391 265771348 903412550 993479460 329364263 792583951 761211529 964229375 384677134 698946560 277232261 798193086 254373431 940918573 461107417 938831632 889356553 992103943 641084797 750755261 918954030 924131266 370094171 886820728 951273789 977198477 87908924 401038771 376653836 710172789 733978788 767584285 70384653 929968213 288557567 302926898 163183771 287172689 829805329 875427446 946078922 978333910 904786124 931874962 124496617 781704191 723595740 917142793 875124532 958022117 60335460 789881405 458252545 933082668 510016568 844986856 173191370 205981925 996670894 999189873 132578036 683235960 668728093 778840626 27044148 798447774 766546882 944769769 890331753 903937270 95237562 506523616 477198235 781470927 343961069 478145621 491124666 877948762 310658549 514123134 245892496 968307716 299048501 552305981 784600781 973107751 617813483 998506290 426375013 567121255 5233798 28322556 809474354 827919445 830327139 972379686 479653784 814660551 274483211 639580659 666343998 838771837 510711014 515720041 863081999 982479555 9301395 551284919 142212602 945053181 797213514 912137167 239759486 860116581 560836364 717409021 895194886 976598500 548473243 744593378 311776126 374246367 394292019 599536921 652587396 813083507 270954808 730605707 15696753 224312134 768705239 909189405 898452268 996603088 62569913 339255185 746400794 897149792 547814317 827638981 561943160 636437219 566896955 953550812 116259546 418826419 68334121 78758935 677556146 974169248 920719178 949210622 744136258 931739515 296043880 348216646 968227978 977520667 654680661 947357163 850172535 868306821 869873248 870064333 917369458 938386349 999158695 999881215 174420383 178596485 418781460 954021362 589802364 969283686 769982108 777320351 659598924 910435284 920560359 971627622 138017052 893514042 302687969 818453145 663574497 694458586 558714599 757996356 546346416 623192283 507946507 783901493 802423711 949805861 633887173 778667270 527628741 748033035 860376453 890146975 283138445 766676762 9836275 489522262 621137694 625992943 532675536 880111257 173743553 744623956 933003388 963879848 205069629 941447301 694986721 905001946 825961202 980974475 895794207 944270348 22005364 262667241 483394570 826167413 819848959 895851193 812463713 907272225 969351257 991150507 253351454 978548265 800965810 874231939 295992181 490020882 836584280 969709797 600278650 650351085 848090120 983452443 768814877 888844169 442001006 989329110 429782583 844318477 892735926 917303841 495726208 535340501 169776175 442071895 1319175 676662840 602144305 967765545 333475588 744464910 761399550 929486032 616787021 801729238 486945301 684203090 823778736 967980267 1950741 843213999 731595674 781960696 662550253 975956009 610953825 893111672 177785464 997224712 935741064 942816141 461914354 472069437 931811572 993115298 225606636 442222328 511039388 709058706 453339500 898094551 146741249 282115688 704062433 732494673 735052486 792640824 172195468 993427144 167383063 791701106 871573034 922966680 424651644 522937761 132431488 493670706 569988126 975116898 757886498 786304294 106381385 485747947 6686585 818872756 588253786 708011405 925275026 995595721 742587624 813352955 20322793 526320293 895246022 904368336 587992273 841021543 714199602 732040757 658885293 837580543 846389312 945834401 480271902 744143775 957624026 974138711 583225434 738694205 261621317 603061898 599797765 877261752 105648076 604731223 154250352 279366921 28311594 658082913 57392711 992166719 907406681 994677351 606438551 858147681 683481906 850146915 725620533 995883678 67093305 660675934 849126038 979628736 95431964 312582486 739277840 783612044 706976695 924378334 137898824 916374425 14504367 78675141 211180391 985841872 655716727 748378567 7346196 619138127 841116536 857329968 519733334 570906043 304086208 972694193 172885529 274414381 220239259 792476800 585542672 762221390 915515267 918872519 897524018 950598282 323946370 726257070 958862495 992568986 931890172 979769967 678528335 774880281 730462203 803748398 579125175 705980500 134412045 578099899 109051113 181751781 201105347 224450152 776024909 812444066 68940736 773515536 998766161 999120050 520138059 670165232 899976034 959370754 579970796 747093845 337071765 554026340 888005260 965601231 534651653 784801876 534211698 701776105 639268275 652989102 174256705 442810513 226182943 451654353 674239179 704654245 326020105 616221101 360266114 640993299 397765320 482404692 663331573 718640331 139739335 435406363 939517107 950545205 860438242 964440211 841269468 977083465 740234217 829204764 941121308 956304883 802661598 955820936 125688313 604655765 5595177 851914558 592653736 708459252 13511554 964553907 39455555 294761697 219927304 287179160 588539440 859148815 672518027 787188829 792589115 896704669 24114784 212443953 405104411 683153615 85512890 593828808 490752596 820095217 506028170 823111919 157132501 942174351 20631439 196237978 377058328 500366604 843481737 886832504 116743511 625049425 441828237 885050430 536181815 903812647 222270668 594045788 393465733 838905919 671361229 723326161 345190233 470484281 644463525 751075896 547487487 691012323 200057034 512873708 165767331 716311190 530519627 663692905 163408093 499800917 80412743 873296848 320842250 584207275 950293631 954299250 367422907 683319684 57386639 406892683 476733468 868812927 274807283 533424048 738036453 923884471 976611257 977873513 404844662 775730124 596272045 864207392 278980284 345404511 821088739 876342725 237565734 512751386 400755183 848590583 845621143 968528932 440813557 717370234 878091181 880916102 263188230 843162977 329834521 495379503 517624643 518299260 691850967 755555307 514365407 592828363 935363607 999719887 519423164 886694258 809782120 954418884 11105402 133045049 462757373 978431428 635350996 825548197 643670812 965854201 603517420 644969362 943914008 948917174 949876596 973737918 687013085 974325778 928008037 981213345 284487271 830082195 328399621 441929779 502813296 819107910 525868705 806136184 417159484 794435217 272205577 789564345 351975062 844437669 521203365 689181724 865326229 957357608 507379074 631560947 583382100 592508558 997931817 999031105 820027903 999296158 833053946 878142617 745576878 774488679 240386928 387401270 975616363 990249753 901348398 907957845 132713240 415484014 200963332 727893000 306877312 343018859 671247898 795744814 266197988 610537471 88032689 339703208 359609316 938019713 12046214 700353739 186576878 342818806 132138177 225335042 248719990 949474782 227163193 960541327 272166402 324888941 605630500 823542419 119506757 232929797 64726629 386454490 672227714 723473369 18001161 878331339 227793559 617236095 321575915 392814494 466504309 722919205 284752339 805268677 229180652 322697954 863211899 930926400 446579153 589335437 971200188 984338235 926130467 999963968 436775656 749567047 273786337 712013742 42715743 898941274 27057907 88267647 693610241 804412630 993985688 997955301 163039016 842093641 470895960 503137390 392765154 567592751 336256041 396788125 703944050 911869520 88829074 314864910 969400070 984933099 255341272 426239663 124719908 992217902 68315125 175749464 103460283 450397667 286916493 787380751 541834562 571927370 227721968 244365639 358622727 652941089 675574317 994242806 227500002 381117413 777186437 983235509 548880412 779886392 188890575 745047623 801925398 873625476 274374354 818159487 77428669 105424804 747404090 769532264 495398181 988406847 951877974 955778069 118177780 367955134 751405067 795660107 220387443 736280139 482972257 590346594 617400285 755566890 626261586 654061287 75692598 652669598 965423976 965884071 391553661 443069947 811321943 816822747 847171683 863917583 188487651 288061198 507777490 877066724 664385392 933286480 82320034 973464776 1017825 979000546 789002897 916467993 921364628 989836871 408000254 854829114 236784293 823771956 463640175 504376594 602016954 959850801 360400236 678843134 506502862 714215888 241772555 856672459 683761329 953079046 73005510 427198565 320943502 936667142 976378529 979152888 676384013 939511665 240843630 473138938 563455478 691485971 32141077 143127579 436793745 763677088 584225556 684329839 521169334 608077955 47303727 471345398 224293981 318608370 693508874 878317851 299780986 303855913 235569913 420143163 222295522 730230699 49882841 726659069 875524213 949181899 330369688 540465894 328254697 475312232 519896403 728554799 533358494 713906049 689096461 876585314 942537207 964367081 757470752 946574282 51069723 312778711 575281079 912241175 757234042 906270741 816102360 984650087 868583567 985076493 140315936 699372200 827346400 972544539 472932216 554334421 229126881 415849548 350118366 435581251 300684935 323091213 503204709 807618102 233024573 432368945 532132153 677981638 101963064 463025952 725371206 917402901 893634219 903010551 323124928 451703041 262364206 586583546 783028851 862806951 246261681 619008814 626781242 875651091 662849573 925545200 242683744 368034885 745986059 857262560 219563864 678972419 12219986 653699500 128364054 259913434 52458547 153189430 272668197 433266788 714724427 857987417 244683337 365713593 398153506 619447488 861887262 963557506 101910035 975668982 480936382 754886186 56076456 942035535 977042601 981191256 701949297 794687296 90845727 220288365 976655751 987432662 621387371 992585215 466396154 565020851 726308401 841174417 905289630 981928891 483426121 870274328 985161755 995743612 898126159 962047690 128134385 890044530 131369538 177998766 879499415 958814493 827712370 836649220 83160811 774142623 592318437 886991464 104743933 634559088 246874647 898234710 389881534 497741689 22558765 576330284 26643024 573734478 26080297 557269877 736390540 744044676 506084946 726857000 341342545 419073427 786500065 803448037 179086376 622537308 50248759 681993631 571026994 593050600 580452665 819974709 792624010 935226727 518322330 575672656 489667441 919180693 387143447 934450386 920276283 963492642 267008639 298948420 117231890 890526876 288338119 816780982 369865887 890993903 973534868 980982930 354708764 700377909 133778236 410041183 505874710 707874582 232782760 659697300 136026033 309519915 974240924 975579569 603966028 901829294 263124089 325138049 119596831 591536718 431543344 527323581 220190787 405552436 823159247 953103212 473597446 833081480 117181903 620797361 571049446 596033186 772549162 831816431 681069012 722418064 135122 381295605 313476407 434792783 716231722 802894545 394672484 869090877 44884146 86397827 493907448 703748253 856466355 930155609 485859070 975036285 932647161 999523775 616890436 845498097 276429776 894551551 663007874 840854367 174660390 857271478 616382513 936699782 971753094 987474358 914843426 921212489 89171597 413045344 81300461 346640919 157214026 446501814 756780876 759141275 391518179 922333288 438770280 786172554 157662019 697581737 695032877 781505646 971534411 982662184 976233785 995227829 960711721 993455090 936194293 990974661 841140297 963955000 827983868 944880329 286558215 899427042 843154361 870338163 496016074 527235601 66054804 181243163 370038047 978856252 400617510 806544930 774225908 791325648 748114 367170668 748884565 955581028 31389117 732849577 303089880 960766063 382519402 966007368 156420588 179838260 771228688 988556042 422053251 456129901 720252289 879495639 352137571 444625992 886452328 984130571 824907330 850266557 59582392 729743107 433287072 898528720 259101972 509831070 408502397 775247668 814018060 953452815 566914083 645447052 955689411 992269753 538296860 687441632 913805523 927871612 868033977 948032584 59830809 401760514 65666464 624253693 90635884 707798968 341296035 447499002 815016234 938276130 344571220 593387953 364009205 708154520 382301652 623762789 841342250 932350420 137509238 352394284 45699492 80958124 890196610 943256028 935382856 936269874 754924635 984360510 103719990 744043864 535514595 735056797 869203046 954961285 894742116 992361808 444146009 615479404 102651771 224968832 816449211 889384894 856686150 990038827 9841478 581207392 104071623 419975733 170976517 436579316 973887808 995314119 950636064 996699379 573198052 615115666 577306860 696478636 655580748 676407180 895267942 980647404 184175497 946764072 20015328 97169433 444830670 534983326 606737723 790826576 234929605 778326528 88950345 249383589 31280206 693095268 908009471 968420325 379080911 400396799 995840510 998342210 83446714 329966640 228373890 810035513 709961295 992472702 959438244 993337422 711321369 884953869 205346072 336239991 191248448 223769696 992556347 993041539 977520349 981557473 978022006 996886423 232247295 493501502 806567094 832992465 40864532 686522562 983443232 998903909 290907759 957693111 420026460 805843328 294869386 758607406 631180680 706759379 480866657 802784466 461080568 879356722 847573638 910119463 849395634 894372071 663603608 806710166 180449741 299532843 153181611 513510727 802892566 849025687 272432380 894427592 725568500 902205810 10073288 667286070 187109306 319601649 713588910 975275045 241712802 830393785 10120231 566161731 912637596 998681242 106846672 800248638 250978758 253132168 442884263 849559306 23223029 693420591 392125269 480574139 338821187 813744197 512564100 922751461 16681276 920117276 119472771 738167989 554186725 910806635 484581389 942428390 774954569 878391923 159599446 945567356 335398383 367587642 884421788 929562530 648277473 741248090 994080912 997681623 576467496 975209575 785390396 941401395 535027941 820109953 191143995 344989526 297030739 874174964 807476862 918060113 316343980 467449407 771217151 924000370 596081131 631427652 624704813 698460710 512012682 541579757 568181574 772202955 717226049 939810988 797366041 904320474 432515491 845478241 140309596 995800372 679544995 850870026 248836825 812043367 518024662 677682433 720306424 955833178 549009657 688253385 152650204 666563604 628936133 839076985 797153512 845320309 591066618 889571304 324777816 931600399 214918178 395608534 760737222 932320366 821732242 854297006 498794731 998451555 983010626 996199557 617778066 830973723 160137526 386401663 547818610 986929046 277122804 866405748 792706072 858919427 381702816 623493049 175819926 565642927 416893733 463004928 999678060 999714690 79956319 242124370 9498223 778361074 320698104 993744266 378085346 950882575 262059287 749261580 631442519 779075489 259925795 952290236 235742088 867868811 864854448 933922448 665826185 812152531 900351089 956083341 248917333 891667049 383139359 660990325 142245393 704841697 631776649 758592540 635521401 725047323 566236283 578272918 914988188 930132800 262032730 301252901 308510813 781486074 572231976 599145607 899856827 971050863 240022588 735710867 549592552 708867536 833950930 926839698 323469116 772984829 294887460 351931310 6095980 133516116 906000136 952101835 331106881 623367186 194758409 892988897 880911134 991580137 59330946 816884451 836784858 874105155 661744018 768649544 861450929 981700190 738412324 828095524 507744539 746157773 694010709 959230994 544869083 919847864 466415447 518188385 199804032 941956622 330975822 762129527 632128936 632736723 976502642 976570537 642433403 934130175 98988362 850096115 248655526 542934663 823207856 961802764 766569714 898275917 489221000 954469040 963163788 976357805 949323844 974251827 719548102 735895027 615405299 993866051 794432941 940699144 836444966 928552881 303956848 393326685 568237295 782091018 738396448 871438115 980686562 981084391 503032779 850195974 560260056 614966612 838478087 957542993 716531171 900037188 528082332 592060258 461960527 738009790 744325747 903373194 252013710 491351895 570317399 734422003 764108784 934478239 228201263 799312580 830814499 909473122 533505769 600719953 234855257 248598937 762265686 793673024 499096942 934479082 881402516 976964879 502017637 829569406 631275349 701191719 531403470 557623878 934294757 958281060 75977616 141842375 187571819 747027357 530152067 808264333 502362456 817970157 299977892 800230821 348513620 567658270 720500596 771951021 569589894 817327744 465689934 688673076 735735686 781504044 311212794 585228022 529612211 854415375 474238694 883133988 95748546 567153588 155759223 914866840 243683004 541397201 875613136 986522185 863325928 966505478 194344829 505625141 136489280 464353377 947166484 988201027 555559375 704308430 574865190 869991008 749752124 901527208 364625123 552694599 5154520 350902755 384134925 543781796 880327198 945996553 976228320 988650214 202263214 301397427 163210478 454960084 675705476 780485737 124069429 856434521 389440345 889614363 849317311 858136551 88340559 824663110 14588403 531058249 195268630 359976762 677933742 899483893 561174186 767116405 929080193 936680215 703782977 807464856 190187256 209667953 842507583 857483593 842669463 853175558 326978248 667768443 26307151 593567761 301413192 685616079 489121429 788601336 143408153 556218696 244721896 521189998 245562233 481613727 642002282 813955253 208110094 352745103 706647821 773170662 37163609 439366046 306924348 990611500 937920991 939181043 684508523 774618997 773165047 922468589 245786448 806760107 648900679 869352240 478898728 484253545 95019849 402810666 425662778 576379053 743053747 853843678 713180997 762699439 99299181 638510098 797888731 902085649 484536596 847906651 947497587 986261140 518189313 824817606 612555780 927354600 830468970 860672442 717028251 854310663 697588804 820950978 857089001 933066056 712279861 748422874 421397435 886770893 669563609 960596023 472525436 739365146 718427402 750672134 960674774 978675354 788836458 866477346 48370518 201184929 523275970 801240075 591053626 982010969 177271655 448240005 735575928 970195554 386138106 860334345 801195102 897926972 930513475 951370845 966323040 989004135 651259905 767011668 900990262 927290787 750628857 942519703 70459776 624870658 817151411 973704653 112424405 244345143 28250343 460026075 212394049 437026022 396117980 540138594 335521840 392008592 479190503 913147522 418213900 570853405 257003705 870511383 219196324 323179158 969190590 972374478 358485742 679965060 665881310 875877609 547143347 913680756 312021724 906091403 686317545 818765381 557178709 739049742 660293680 711995943 661450995 759462060 361835659 539871270 975244560 998210990 561592274 771193272 853720526 988990951 810617390 968976627 989496878 992934957 475910279 795251713 649587848 988371229 695411547 904628742 961431948 992443575 193359862 451382846 326716043 383178363 717026440 974152717 943193373 962152527 636374310 690498228 648818388 971476183 741762327 811420173 501919243 743012822 853795692 996990500 56821943 298570681 519333083 979315715 383370427 884943963 837648498 862254815 457780867 619514564 332386718 679308050 86498641 581722239 795761376 840773596 350133651 371727262 468420488 632295579 425237776 724533739 322174906 652728401 740751503 964310003 792206906 893628946 285260699 947283645 281648936 567587270 707150412 938129310 354891118 934235421 31537171 128243063 718592910 762503903 590967268 725210224 82798903 694224653 504646152 508097450 223400743 337705511 11188332 511981232 873063433 992366790 225559766 465958550 638829269 863550263 839053703 977668131 394606371 546079316 673209250 910734398 321080977 415140356 523313507 588224143 195890849 899516942 424312937 914762800 683137406 896035903 181351831 650794518 295027509 537423235 882488077 958426995 624785494 678565398 163145414 593194151 288792411 682966359 778739810 819682232 363701892 671681421 44390227 508955644 613259962 739281002 951468646 999796602 844213334 933720292 77331530 494630122 820764344 848938189 417815808 722535143 595688158 895465629 942761542 976511236 563937705 907844531 373925986 780940101 180418551 909518885 510633173 542050125 722221333 878592995 112685631 439397490 164899674 315353790 881088888 936546404 734558003 783108687 348223166 829724268 126613240 855738185 30726525 876808520 602767972 886201605 198670438 537114660 355204451 439938851 33155999 577825042 49017573 934739089 40135081 895867592 25324366 461960511 373006018 703277511 370025277 883437562 532431997 789081819 735023154 941118584 623599790 753926743 857315854 858557957 108252056 656357048 128487189 235270327 125614256 784231693 517837726 754083370 331703096 439029512 549094822 720963923 857199544 880036347 44272120 464179912 445384594 901386711 544537365 955940253 975593087 979389316 594658578 660938310 444096263 587647675 339340227 934726253 777306623 934003008 358500736 793156983 34039433 508322108 643050104 755898350 291067676 321404676 849833947 996499245 229215020 887942041 768237489 906648021 738820679 791025087 877049559 988127536 839488550 887532644 780738639 832378035 348323253 486234119 166663227 835431905 829121378 997886297 242009881 383349559 194347608 439405384 241025504 286256534 485584801 893864711 674826524 693040909 367128842 619450851 847990656 962461970 405514451 945893079 988307245 995227099 779795603 956836898 887276625 922637226 366463070 919456321 686706821 751932042 545556717 619782560 906542050 914348048 619325550 661204203 834510832 889236265 864358530 964771023 653339704 907522796 749082125 925176979 921211469 944706390 813111106 846602073 486337082 917193592 287343077 830129836 181758587 470220164 991239515 991625468 154538586 786393507 96921927 677650775 306226685 854814186 614607623 913984545 314844350 851218515 886169862 952727578 267528106 529349614 251901293 970203033 136902502 148985877 318004147 353560968 283320545 436352572 240009776 972428228 317696718 745969172 465819677 766345190 822886972 944344336 305077302 712201850 169160143 950672403 727568024 953718401 483991990 945902035 340539353 373781055 814912033 927512929 132919979 892710107 289134711 864285640 728477700 788166064 860017279 972625192 500608113 550003649 162761867 270334724 54953358 158703940 836329426 986166161 857553054 873126402 896943838 958235208 981592497 983485449 537068934 945208308 258197880 694149006 393141984 924733856 15718442 989251996 834087501 891048359 253094649 682035406 159755189 791801507 10258432 276769384 599368800 746568684 6582409 329405554 343175103 821120415 71355544 462699013 143968823 347888295 876071583 913794484 626912884 750919510 299619877 813872996 458406014 474450855 503989665 941393015 920328169 965743602 933247559 994207394 132708018 681275720 809911111 954183955 173098368 313779591 591969679 695320856 570073384 733495018 171183750 320800501 176037957 282756356 936893717 955641957 177732221 869507838 307935702 798898041 450577940 948419317 656509276 811217812 115893844 487111769 584546776 891285187 405758794 548461107 577065551 985440696 322033667 955547626 144358697 357535667 572493764 938900207 725038088 977143883 904135602 924898566 388490904 866322269 820074339 959049033 183536050 250472411 692173211 748482948 301153278 589334047 953898719 974572484 360367568 896841332 500285250 705069684 307240555 656868916 4039821 910116617 96997761 528721229 341752618 699708493 769486593 847753826 893256285 970356542 923851932 993790507 974788602 994048135 112421484 956000136 337499796 803623052 790218228 915446414 31342207 538641415 590792686 688479300 995959121 996544391 498767083 784338115 993198977 994184094 945840434 982057204 390085995 430679755 514947572 560586603 729180279 901312369 207716831 800479362 811836020 871150628 2870003 961506445 442194558 828832822 914828586 954996871 168266194 652546711 856767209 961365119 275037286 974521143 440878991 804012366 564194611 995767153 853333137 959915477 83078948 425956671 876325403 997865552 849833054 982568992 449609709 669684038 369354891 660945518 203429016 673993157 935733196 947588575 662610892 687917133 991408402 996696021 387695352 763719983 35581062 190674809 60271219 886037749 440393645 874851337 444695261 724646894 21198026 910322723 551838622 759328072 874436742 945859926 955625992 987016117 501222694 759846021 836203970 983442455 979230498 987665644 136738720 584616650 799653236 806559028 993385925 999646427 21733962 506607281 315842528 726450783 788509590 871981407 490828932 812174617 455328116 629598595 935952460 942502564 479799539 640030637 457508019 977913300 946853602 956084903 447982734 956190387 747565879 954041476 200631358 637896184 250778102 892085588 213792242 464440459 820977371 855850544 11626883 774095287 633715375 978946321 811529658 881439862 187692058 465569182 937980981 952890092 215287159 934914667 650392232 943852519 74842326 242078101 757439986 862592511 469398050 883962886 548350645 961505765 734698761 964098465 318249590 403800721 408897018 537488423 498429222 841025227 948151022 950411160 223727806 852581598 316274656 843346717 637598031 862581792 109801761 615641256 47562952 516403782 54419881 377879390 456739641 494165179 601576576 721972256 512517487 885523160 157307697 879483754 75281610 765606376 375610489 611467944 156434321 665462490 402822234 855063483 190638176 925791139 87667599 519406169 673849435 984754288 464551307 704047617 971173945 992116511 671376134 776319068 447858485 997156086 103713380 807264168 616995847 964819202 150036071 871408727 632051306 708391466 484813630 540938626 844029379 852854208 304371780 853647997 27702177 732946192 519042967 527600312 418763538 894221053 101789922 171009052 303986962 897526357 178737675 445140784 600303213 747363005 401982397 914483939 615538012 986834101 437005759 858111999 929027805 954922176 847881165 956556757 211483577 547778913 293840358 658123528 126030764 588959643 903325655 975143272 939714904 987994560 488878107 889739503 947836077 984490105 51418991 408731580 860912126 957052505 472691040 564458515 272587483 889840832 619015946 853532346 952634427 983266014 477532616 545580283 18265832 992821513 501078506 534110818 1727735 48434307 893036340 951820932 674343822 861494263 769176018 798722570 296205938 592120371 284103513 689667729 139484750 617398984 899172814 947350222 395092072 480714755 422229406 676325806 13126567 624410656 735894102 778074336 19049209 485295021 740817241 806860010 36267241 769508414 351366545 475413905 869725121 991701213 840039358 916224788 613139077 834817422 191159788 576902432 755795227 865530015 470780235 623046649 960104676 962241726 763841061 951351256 373959906 417310605 632107603 923577554 709570908 829565854 370640505 769611120 967222588 983045204 667527621 806412988 703430575 736708828 526770210 796434783 90844807 950372596 431187789 998082727 140429844 458133082 665089926 788133900 992884098 995110388 967660708 993026192 469688411 765953956 23913235 377110938 578452302 649245829 110644517 485319527 227833976 381588800 245478051 448835171 284030323 775726584 638687108 763500429 20610421 582133840 664758447 852461686 715397399 904761058 962668401 964910583 70715535 238837622 945389959 948941337 376310088 927929909 342561021 616134400 323809434 941009181 356290527 877622992 630772026 698938089 632663844 769466642 610205205 787118585 121660530 192607138 602320069 919218100 36264728 154656293 505148428 761243226 488386852 584350693 523231266 651213325 485973490 686789807 137962067 544725771 195109609 404903064 701146269 866470929 926519463 990231684 909282906 984249715 940627917 965959191 527841361 545596828 721284419 839323950 953226894 992500501 94715512 737683530 286325491 867413547 518349744 908417312 419898164 862099790 283088681 508954872 106696051 970342643 196125362 235170135 968829230 997924089 35172935 82733643 200864428 658081073 685553484 898532463 335328024 732984837 839883812 958246771 482305869 800184210 155733132 997440632 500294011 758327569 857796849 921152246 931363685 954501876 498421978 844565043 591760761 973181469 830721273 917127587 840805585 881757074 65075649 928488230 502600729 741837341 416149136 698141079 371954783 784261462 339215137 635442386 538891190 653722325 959098023 988630731 636067885 943979573 247431802 510730044 668334859 719016915 311051166 785475029 405105303 531879034 854021384 977738936 91263762 479331430 207690605 841958221 507369457 544722507 331307629 428200896 350285384 958629167 111231917 847369986 718213971 778893746 994511671 999878759 582316732 826728122 642340822 820942223 660284130 794520886 176592832 789555950 835396340 916444663 265030552 629575756 365991907 866169261 532147460 942633611 90627432 652494117 419265770 793184007 743735293 941509748 680564264 897708446 817571185 963844106 604759635 927706657 951898486 982263528 902777653 912124263 227173212 776187199 452477415 683772832 449192673 603914901 453630866 502614481 154692699 209466303 384684863 792952525 228475670 577096288 507830158 788364241 743909400 754683926 150378559 271957670 45864656 539274803 389822621 965939913 429419888 614336051 186435787 621292619 176377063 877343450 158607314 986188348 605346365 850469800 726828444 939728040 31676224 780582869 98321907 700249206 401438083 744009283 787991371 968042774 989923571 995538329 886559109 911593086 394912636 538540253 59526114 914679845 710464077 948195187 30237747 221747856 342114761 352292804 716707873 732035896 550820989 774129113 264849298 982101103 17204957 914049994 202996789 657511356 541123764 870853308 868342137 986017939 45201554 667308152 56191580 376037346 180048226 800888175 518672884 901571946 675905769 726904866 89304411 843439783 143016148 293677654 147671685 604037202 332840884 607386298 936100389 973706636 794682445 819348660 521434148 682169128 857944173 966116210 894596649 910406816 763339278 992274385 591733705 596804773 980256385 981353412 422054103 688145304 817429480 879713553 189270462 679385144 515134139 544847848 793794167 989766828 895214733 960109521 17000932 579513739 761104020 953581572 46263579 828532153 952400801 976569510 56173911 78526872 718352610 998054657 51926532 499287366 393581542 749533789 686139263 797904703 304467279 422499290 736810178 899604157 237424216 678089574 780098244 788174669 152308745 429229522 244218296 883310386 288957030 364953628 496263999 931617133 912096315 984890963 631151686 668245875 739918735 960710875 790611244 869715210 598717897 602094704 977246909 995103108 535391676 633946754 509511520 799804431 671940744 845208167 533071703 711490060 190586984 921750488 938384097 995539143 359211286 585775400 937207981 948127661 123068116 915266688 294552158 970575021 511584318 865289466 148855874 261942944 208920991 263173330 221340235 991709426 196035827 491340662 37879741 295028558 830420292 972447461 178134505 981397410 645987634 963015839 92568652 876153250 530606503 691217014 397406701 805163545 209216754 998717642 761026115 794925871 404270513 890013970 777492365 784217478 919380690 932412087 424416212 465242562 523755546 816255816 358671034 849775935 342602714 880128155 124014945 808641666 743784533 823955748 122636419 218661751 318085462 497268129 940520557 998884827 44088601 499417332 866793791 884325516 897565788 958629505 252525759 516893144 448426693 859258273 194895969 452001672 294805096 868162659 962084980 986225002 676599686 974195001 966940445 995505739 690066878 776655256 108758960 355362970 703646925 905321403 256552077 792285788 343635814 344685592 648216701 852634961 797713182 979522652 29239776 909033352 62549207 259849701 365940610 644519030 484186948 609914808 261745524 378380224 552833510 573228688 548269089 927965848 527431634 888044882 271074636 872658330 620108620 860690138 394238963 983399601 476255211 875768515 189685250 597312088 13834454 894872569 228003008 395634372 217106936 276329059 789798422 850799704 718304268 887520059 949284054 961137816 402177514 864443435 169528422 281361964 567026772 920686277 203959139 348701949 668575688 846332183 234668203 858581211 630961054 659765268 387953430 485662531 377828385 462393744 608702619 727809670 859649869 964372718 926668262 977153243 323836754 956304254 382722462 521681330 533379033 780434426 529028409 920829927 34353339 614122939 837312841 860099959 786002541 918320023 542557302 595696682 195221796 979330424 948975325 950902431 879750976 962513221 734175422 992406148 738013864 981480635 258518923 428264821 17251599 506486177 307029625 908669670 631680648 949494757 491041854 575597872 446900447 603933780 311318646 797680663 541441361 630382486 596702767 861951085 864745415 983611707 728571911 870644243 58668502 766921928 801066693 970186902 784997732 848697418 831390935 867695173 404793538 848724349 201301001 649261464 696242681 870664754 15876534 976259954 148497522 154211207 572143945 638600547 495259135 990753408 67720389 244904993 535369716 797627701 751770486 914408727 790796310 798864745 457127980 719780335 382761026 863431926 973819455 975195774 648838634 754221232 657430786 778971238 122461886 258797207 673543667 934286197 533951126 991768882 71017459 411048400 167429921 939973909 449128261 867464620 613387440 700851969 621411044 664704389 779796906 983612271 873946167 940916533 480755939 715318556 249767632 520801943 825286268 918827468 350317230 602133472 486617595 696716937 258468804 275602805 565310151 911962765 218244190 611119612 936936992 938893567 374096888 518566601 948774301 986482813 913066313 953550935 599785527 767038042 531770009 546133532 542122545 563683655 258003028 625557860 75654349 580926147 317564039 327802348 312163413 493855583 840705234 851914995 173015486 385767868 874334082 885719613 818709258 892899133 387071301 723516245 468165189 768217823 69408011 203209188 808226149 967875430 941836869 995341498 188909359 712781786 599141619 630476408 175058016 779570617 243360987 689623968 683114162 719296034 810490799 940397224 213904595 409869151 547958383 677327990 152294180 182435398 328092579 615666975 149283025 294622576 640522636 770091343 121037040 122722344 619843080 933768841 34482420 574812377 390636252 857478552 788950621 920821418 933785202 942828872 841254836 980041674 126907106 247254735 895927399 937796566 965142766 966238995 351059866 926832049 554105836 987513021 465096339 482218682 925768587 941393358 910970398 954980796 422892001 967534420 433919695 724853311 512134399 803546320 762178372 778419156 12183094 862855553 596754285 895743921 743494519 882933716 390159783 807572463 126152771 391002004 42158303 237528674 89991864 559947985 318323225 697779248 332149223 644663780 969558830 997562859 363133377 585421068 832480508 986835908 512311971 941669372 405836402 876280891 554134494 610614976 294988863 954452712 120376794 471898443 46034707 551184853 840931657 985439800 159382367 389291696 884660722 981356957 475506477 737093123 669393275 892666484 842549712 955927504 911594361 979074344 514298173 530833281 299358171 778500628 425529015 697441531 354175576 756433882 31935720 640038381 15040477 567327299 376724850 836898944 343417566 532039304 894862520 973672638 204667496 344969363 48275300 826323142 928140744 967643059 374293505 881298287 45678390 510279701 686775399 897316393 134746776 445359181 532018904 638054331 96399145 621051565 110473567 187452328 498683659 931669303 215134110 734423240 107245428 806731097 58677397 276019063 789177744 945588678 267623159 909891013 636947560 695204319 209958188 599303271 127982031 683097720 421715280 611751531 66175647 70780979 377023486 441107784 698545814 962011081 714819780 759275169 708164960 992451830 36790286 923093533 919294263 945835559 745571494 932909099 424295559 743733886 434507426 487310871 210110689 426718422 831366289 999212350 696646364 816970361 409390234 473092615 604395989 942147661 982296851 999266139 975524213 999982360 108306134 315913293 462971672 886362822 986078489 989754788 840221674 969573132 83828982 182606955 467375440 789867293 523927857 812402104 412436824 984428895 171324338 685013691 706302822 912456996 447796159 540595319 440743860 895643974 784497867 947853273 834827208 927101481 936963185 947684979 232389653 846070457 237524049 409599962 258975447 739597215 795308398 903086407 471459158 762814334 180205836 399050554 795083731 803369623 453106299 915014737 15990551 736859317 193078651 580161757 634224854 693263340 673715674 807623648 861564657 972199512 472619271 490745253 762092832 949422199 771692685 919285354 608166174 909584635 502877549 570403075 470331710 610457146 486814546 586628517 19254111 841430297 570276238 897723491 601085111 939706008 900277724 963280028 669162832 708952682 780723004 804946723 231574234 450872196 628916285 907904035 121379744 476931087 881272724 967203291 227528215 548299671 350870179 911711410 887988249 900029560 560973843 793822080 226739024 974257603 638581463 968361149 38909776 266372905 652689641 675291572 40580169 407276274 772041698 813039345 704616849 731886490 501900463 968829683 681360018 900068962 73024993 419480409 151897316 938510868 106464576 677350537 532233926 533238536 747791949 996299329 404635845 883014624 556703603 679920724 326225101 509087681 492702092 586317411 152248561 811078064 1336808 156457811 590932197 973566326 770583182 998906973 551429855 885564183 919665381 975073188 273989630 677637366 972262212 984678136 406535499 805806711 666751471 897485147 286620147 440404977 730772216 902330798 233130883 402704585 450413411 906185325 910311283 935531207 584449593 931051266 262716828 685631534 796451128 798065566 447922883 462508841 592277694 961664610 627622519 706689263 284372432 850713331 848871142 891162804 124986765 930229651 59935070 159687691 61976592 605689016 53817573 758621997 72102100 479634910 904681603 952240023 773880374 911928223 46940209 780628705 764815842 933876951 362325337 632019496 538343348 720351738 373740302 646104568 857150299 932085731 24936604 606731503 477722265 529998110 530328647 883346158 958556840 983703635 710829317 843402075 434179258 799666425 825122040 830662870 593735731 769362533 648682096 809611952 744008019 750730925 617462826 813750226 505944534 572681664 319102608 381143946 451898240 819342377 956471804 977217036 112993611 758801310 510211226 827150753 458201807 750977212 72275820 504911318 273144002 795181664 410071247 948950115 707379013 976586777 507481775 973964270 981270527 997584632 290766374 693898978 25549194 289038713 613143002 749405776 697785538 905269429 374949591 574498156 38927784 493173227 632805596 736195016 729636886 905509886 847646711 935023395 831075278 954359677 461005740 955938971 846773031 983918644 943039568 981903467 235985144 838049094 206893855 668583713 89157899 453618184 434604102 683618443 638668584 789117746 168419021 594745102 400944824 918923927 442167808 862586853 384243967 972025677 427320050 638877748 963356494 974949473 860268623 883586411 986665385 999362992 626664093 868503913 916555209 947476930 39636796 224575718 598673937 662439999 207851859 818377514 273879910 351350202 841466523 951587328 308224467 990436080 3628679 840762465 561388263 982777559 452121334 880502840 638616705 809741915 757739046 876827002 864995613 973330725 402020217 619477738 385997380 540015363 155600815 798976486 569429464 570148545 186691078 236027879 109402125 234614959 672186488 932881584 833805072 870613102 927557109 930193862 298302323 676152137 443268159 503375035 884401476 946159459 712796502 834857379 728824410 824588579 759747378 902423258 430151296 872082865 307768798 563488045 358875167 609147998 195689760 845615630 732735304 902229402 862263474 887937662 292672382 805682966 218540006 456917580 911817531 997777212 134669233 877089303 648440228 800361811 785641705 874674472 427145277 756303470 669582856 755021269 252976078 876707302 482215929 484807275 756811669 957144743 403306389 949484539 295945565 461474799 870218130 905307964 505317372 874395888 976595502 981261786 199418534 614679339 558695877 827634991 295599436 970484447 99095470 909713067 964142271 978853728 453583634 537363686 206586878 643733415 339988947 713513767 233652964 488056655 776927607 943336991 446014405 705527193 182272952 223077728 558072977 712394453 555216306 999242422 261313670 596619267 97155693 967342881 372733882 645407132 412099290 859163407 299005093 593329709 643273281 892065141 901210505 994718200 180158568 203847355 191584678 402692685 371093827 777457911 162226052 618026817 36271928 324280277 766951701 827381962 344077379 658450721 524226045 649026745 182975515 594559944 686481721 720723965 393555443 580272837 298346388 391958895 277508834 804802254 550145611 556328835 8511022 877900062 745199834 893033888 991156566 993879281 213314732 233803684 502105642 966304532 11165332 791378002 574583805 898348911 635393507 943760204 128995194 209080435 431165206 885439917 178864270 869501426 748957834 972969407 401593493 744772477 926858534 969770003 368977653 974086939 959786839 999794757 366345211 378564752 956730713 966664139 969153814 994991255 181754434 479121007 357278565 614287480 94006558 936692698 83237034 985711194 252639447 906743913 322229357 566240057 250889787 783994431 214247419 474207374 917400631 968895096 639693511 933835616 850837062 982013151 710991671 938349758 175170183 410410240 325340313 526791914 199031023 984360860 462856859 470995481 556894612 857370166 525782740 964081043 672334033 674519189 534978992 677944518 916171433 935751874 80187825 238928412 457398381 702890724 901213931 992109031 920104729 983151010 942730957 988520510 592449607 928942010 64173418 731608273 497255630 883945192 349606064 909035361 17765076 680597133 971722089 996019038 731337291 986364407 288302241 967142676 566558268 570812308 190623139 387037285 436554954 782779374 972421071 997200811 133257725 154677258 348637943 720902749 212844454 984399749 727417605 737308156 59964186 590808167 702902308 882667149 103749167 258069828 671353345 808310862 977645021 979453021 924281827 999411232 441900481 962044978 608233711 992805244 976713913 996181576 982052813 992292293 188183517 745127891 318854079 583315770 296261574 830041341 495497803 887352398 464938028 640450536 266635514 585126064 964046895 978376205 224607641 315903258 791658039 986610036 258463297 949565454 555780746 798391380 416179329 589364918 141162742 234035942 869273870 973859238 481087173 941413035 441324922 772726564 420329655 429397040 614057095 886417225 613686023 932544354 854029201 950734851 662473007 893697673 49116420 366869857 787444434 836899661 445932786 477184814 264969738 387450789 16774568 631679576 322070844 711784112 306469031 639684088 353095194 493513387 551997249 967693873 741441657 742927443 50750451 516061371 981336688 998073624 77446121 844642038 369162426 528951803 75748328 527249319 662997042 711047684 58934473 259366465 957842118 963980617 181751067 564086851 921420300 975433199 742493804 928262439 369020925 494151421 295173068 625112414 74869882 782401054 672202968 700109887 673281470 678499317 878672612 945147801 455685683 838459560 6284737 448614989 568432907 944469365 434616180 819069568 531847579 803228544 444363966 721642173 965848818 980005520 879823493 950517205 298457232 972601187 983327935 995294490 436784154 702760636 662476037 746461943 837765532 872677487 829401762 890109553 38106775 689038302 727188054 902472743 108451361 343796349 410823150 816913515 112617359 592366809 392767794 862183309 954826715 993825876 798395979 950266370 290392121 584289137 749412307 754138049 6932296 534977165 887545649 993120474 223364147 340245943 619779998 902319998 394761493 681147971 960656617 962629000 118626839 569573946 929616551 934619857 763195993 775874371 979126938 988346774 459847684 712663883 724215694 893951243 509411196 685365108 116536066 833707982 209544514 672489374 563991431 949373180 211021525 218860977 226495243 264837669 882728738 993200833 669349357 688069262 856732175 951933521 287295743 720246095 465750727 487550098 598530829 639933095 235228526 242662751 289352026 600382199 321201893 729048408 981801831 988252366 281299194 292776891 529074397 702541146 27591493 983908790 37478467 313467612 639294909 824097285 230969504 669787028 549976600 878470343 396857320 619074473 524484398 588610589 631176951 939809787 745156455 834990535 1122896 385175553 485750985 552889283 859996075 965447772 432437033 815329422 261836830 351219521 505862045 581571862 77341538 602320706 583651854 912913295 790733672 962289867 962065048 994208510 397919216 647076685 321401779 966827219 716941808 886488772 610509650 878200315 231295974 814711543 440275453 622331058 586508861 861691118 600338934 716152341 315629399 336431940 696620529 831644409 891668999 982244174 177754738 705538689 748496745 929885784 740305043 988554463 27400219 528271717 767096198 844606995 850445083 876341816 74553538 401703933 90966007 181558219 809215761 812429963 631976821 790621988 429573802 877574168 296806500 369153175 81443008 698496032 490171737 551659624 364621415 465063034 490173874 723459532 909043404 946267708 704917157 868774502 447904985 482397904 183932673 604193471 550934532 810121450 325057075 767343626 933554812 933881034 165400245 822116213 140850342 792051112 541497161 619068256 357015958 890530190 633862518 735775382 230252990 380356428 841937708 895920804 100748610 696471068 156481069 392206364 608757186 790037037 527651784 814788058 57666941 841346924 177589538 817684701 164666586 372559559 386942829 574366651 315191098 502429913 989167761 991725695 620461822 927886155 68417268 797481611 811117045 884792466 434732265 656744378 26423726 785369720 617373173 965331693 192172489 581897796 306926015 977910138 492808737 789154450 369696311 684242681 12007097 63345378 479245385 602607825 473368964 534336148 157218844 381213272 494986924 512640902 590204492 603950270 359156920 756736624 102587914 604482940 35440245 559976582 980562610 993282962 58186930 520992455 700500082 858187658 158837548 518402689 397935144 571891065 86611018 93578693 639511336 902188137 508238113 959797748 916152206 960393926 760688607 773602387 631059153 642360501 443377359 929886588 644769866 764281186 694502609 961440110 502110171 970201173 222934460 787357114 386149088 591900099 434768159 620206819 493980979 623718367 107030864 675975146 686465334 714828887 305063087 683942146 793700741 994111288 7869743 95613987 340489957 868362005 133466467 928449779 745753881 785818855 730570073 809956986 201901875 417929786 653331214 745469641 293823175 429780502 644986514 968833673 895185419 951820103 33075724 936851007 254728707 385623162 579248059 670004672 739569577 874199496 223644416 940638350 961102205 971062448 213825480 599940186 402231119 485735485 873567253 982416566 909647997 911397020 46304864 699639393 747981545 936768678 265016893 402139964 348918916 660576657 649985813 858349803 38624942 531508538 683293674 807073445 474641921 532115678 581902125 658950942 529496751 594878713 801863043 911137521 33851024 634153400 5092998 528844656 767325033 957979531 474024863 659931593 550681558 903012489 392149784 636087421 621514337 999371842 323326067 868217409 615935159 751756710 719194751 859683040 688112506 931416335 499030077 955384859 156352183 809888123 923685716 973337686 416976480 961907891 848159926 979179754 279526574 998299218 921596458 996272269 551399737 772300492 362866505 847784202 601254880 708867591 448439179 687107312 217136310 377428859 533045219 654891736 601212855 878793373 475874495 901491208 856280937 980101547 557571089 718006615 933628854 958306397 31365187 987248788 672584533 841832929 957162838 967011442 122431200 743620204 734247883 959633713 710709869 761546928 542737722 850569611 965163717 976992274 808498473 959555312 895372941 982159786 78301192 188975344 354944429 497442491 618212745 659894724 486311946 955531060 175513168 954273577 145408409 792878468 913778342 991370023 846327718 987814992 173104382 676875095 996159681 997915924 516426413 916869959 680873097 852647899 454395234 633151339 418147815 907015230 694168937 857102860 991876590 995266810 409031156 545739777 856039454 958163872 358331506 448277725 746270370 817557995 384632108 991171200 601672641 710547135 758056434 873873087 76868896 471769785 844699012 862733201 661404404 703835617 200466508 984922978 41130809 795575632 890887945 960125492 572458275 732010372 30100786 679181051 918088611 930335157 1153359 540008911 949205868 956873049 586269831 969245999 885253511 926374561 223094104 816500079 706240340 762527269 785393529 901135190 828472135 922821078 477276445 928991352 494842576 585294501 775420098 892494553 555089603 733067332 506981317 881969128 134326025 932586722 520530744 933970289 332528224 700324308 834628117 959263449 630878644 872068067 895467505 934876334 749258502 902418446 109086798 853947046 270598428 974278273 174464063 668703315 174932150 981197811 538092122 831863507 755341921 985590013 245943971 344681882 984214904 987228679 65532964 261353603 741650435 819292817 155008428 404255744 754348357 944488792 906472586 991008659 255000978 782312930 899164719 954195529 512802082 842781897 345802303 470700537 698048390 805957467 894838270 989280663 725447649 789980033 290999893 615008409 115582377 555068558 214818925 338829418 431778923 960058610 19525422 24167108 138586371 436417612 64785666 375361625 739783383 790864631 298272880 669941711 799164637 904115862 971496558 993527326 466093232 472904509 37288986 438544392 896137219 920556095 354048033 905142601 144776732 610199594 590242757 875584889 55174442 423263546 660480912 731770906 999692821 999782122 252539581 380094136 126639391 874530264 989998833 991877852 435995270 606522013 916280648 994173989 203828994 549940962 641344611 976194877 582036197 934208750 273188522 644782952 507467556 567857645 612611165 933853993 753682531 809167208 949029548 994865905 368082036 883216015 574005102 840662279 266453098 350194662 494070676 801707293 451786344 673238261 552285145 599992062 981193603 988541839 414843390 897987300 890077308 931807278 610891672 771596062 223413284 804884257 420642788 989007795 951601738 976877337 646397929 668261697 439641367 853854842 213695173 237091056 147783288 974785548 870559548 871142129 58613296 741582185 737085749 978037313 944683802 967753134 144785052 246337403 162750110 475851404 867442484 934041118 875570170 982331526 920508671 973647081 935870171 963131210 444203295 951205860 215614154 488610445 658372319 863144879 774017744 986712796 598100479 721751275 465407729 701202733 657365737 710313684 215395252 896549395 574914761 712213490 573477907 994326115 690392840 938210425 712713127 989334798 387823623 450955413 222894311 747622954 979105897 986142771 71871521 633980365 53475627 707839030 327421012 952360863 645891717 960530061 660196066 720844161 281216068 768125122 203221226 612643297 419373874 495056196 240947050 726584466 749326480 950996023 406524121 874678304 922354200 980654029 683681108 884403840 581354723 882832285 593944074 745148551 464174885 971046045 518052458 737574649 346581935 348823852 924940822 984856178 972873698 998986324 298635675 491853021 109259704 434284958 519846909 588689286 211233209 610236062 125847983 701956342 320745010 937321023 4531319 717906361 62409071 303836500 569395679 790544121 440730478 455385068 884738824 983629544 728731536 909165048 264376934 924200440 979783254 993470721 639556586 971482452 707593300 793224781 220083283 672534878 716790610 913349870 926890045 949619840 238504855 881154460 141547341 840816037 439768608 768117980 626192391 907783023 485709060 966271587 340072022 699710105 219468652 281748664 379663994 670953933 60819000 909923514 94999119 503099919 279796660 527003929 927944616 956294275 189932673 812867211 179405277 848956039 804517738 987544349 641617088 792625451 271798215 776619354 368881845 689079395 830369465 945417365 595756024 802541521 104794686 786661239 231291155 890820549 247888183 914885306 343657501 916062626 444203898 591614245 525313171 882597001 491430839 572205193 279991280 471671250 162326115 391265074 925456977 925593148 412709131 747625764 271298931 332314189 468422022 966108276 953953972 960448734 746728268 911442283 190305357 430394341 740767193 991466843 991340418 996232297 207166829 611026286 863129358 941356033 164829138 885035645 53526714 630708573 282441466 625688903 572657622 613150104 499497458 999918201 222758974 389297742 926746403 981452099 848562511 993861178 993315791 999654298 347483941 877345932 459298724 563753247 417328153 932359186 852963870 994977982 609290438 919878869 471432278 483019600 949934446 999834665 520329143 747895493 549999525 805249332 539458119 639489138 667941901 733444935 397423931 837615860 17057610 358387063 6799934 835176575 825182527 947371852 127791276 612159679 279908751 645792219 387510180 930950157 202699675 720939851 18207210 754208104 886792987 887892511 387914412 432848320 495898502 673495341 632128312 992972173 248039544 511135539 165542907 486113920 955388227 995772127 140406627 395060438 568155730 714705734 592237406 802371169 564714054 955697388 24741187 416971400 522342548 857100157 622645637 780413428 220844631 402820345 32846862 573966156 969847296 979025486 376534872 716621893 630570183 928136485 947462521 954526788 862481569 865739213 343609765 692559565 154538338 425856403 418351957 569000547 502149110 513323958 737525647 761184189 137875190 659932672 963806759 997272652 187332236 550485637 22367119 361554047 919541082 949293906 652681785 865317947 192222943 252320147 756068481 967802023 545845866 740495722 113979710 442950719 643549015 646831530 625514057 693188703 562720146 789203859 949630431 977104103 10908319 185043406 189514690 691647306 539188609 578308644 936694234 981322252 991719597 997904940 290022296 786198791 265663889 654825536 766129752 967158373 111335047 655370368 637593976 985558733 391258166 395495015 544052839 827183654 744765470 981526607 249438856 552713695 401287563 726142513 416928357 988623708 476959353 967220310 290157285 952371975 24404353 590229088 813321932 891543575 809957190 906929107 344172652 463423602 58460477 562901263 813679344 990925198 547868851 585948528 641134566 979431662 991082343 992633168 563409763 939993654 104525193 873544301 445625188 615327421 826060200 920510978 446490607 892808347 828424313 944327434 957338676 987806273 672179597 846593342 393775842 551160949 88862492 206513945 435207177 848222451 827737237 854675935 305169761 553938258 689696930 813489648 62733739 367343354 831592684 973681991 539452816 804459571 467653064 734627997 121221698 516619843 991317208 998693507 40083606 309854232 785537480 822616429 677910418 995672690 401563535 964321455 973697739 997238408 220940424 660473986 523850021 709420809 794718907 898589996 645094359 817682725 383225343 977421592 375732966 841293481 741536012 833618971 983351150 987725840 738932743 816878280 800773358 827641781 107096610 803663785 41407557 933567143 620465998 768442010 772294472 909241448 223801355 928404437 648222543 784197138 194394091 848399814 882415601 892389642 859037133 928458694 263779706 466789388 570041289 707518134 889286885 985304983 575860346 810969104 460924825 545927580 623259433 869103508 531476942 561482193 182824655 699515260 577174770 965662524 550843379 697353975 324503309 395179643 907022493 993219543 622542968 652887235 274113164 799272309 411692873 809604110 83083248 317321569 301488040 622633602 134350779 439522786 646895887 703199061 95389647 719508613 172798694 272301074 938594811 942813774 300883380 794789371 807822335 843458669 552060926 811033389 655303089 949608703 303664706 533483991 292750593 476638385 34201731 240905386 478988386 754803964 565034537 808841522 515242586 820363735 456672439 987300345 855072366 983816998 32064030 713924449 285464890 965011769 308772007 404985457 526360921 971285512 690455507 785019246 634621595 742392907 203611993 465690587 323100176 544993723 669525885 745813276 221000741 598370843 394329326 427345465 729995858 993515620 550758381 914319001 653361311 669384224 448137665 514733613 207614292 227675551 567249410 898678845 253444987 864509231 442773929 754929870 669670034 889603869 307958159 650640304 905054452 905709733 10707391 286371871 799085592 984713324 816353517 817851898 990564945 992671561 409832907 883046603 692180707 962790266 505163988 931753576 33172955 402418073 383813188 518052582 361995332 623961085 534330755 827189167 231683017 323636918 823831132 861209791 523208914 615029411 90813675 611645758 302790108 810624100 811943389 844150819 254860128 493384389 832734461 948564589 455876350 774821713 109917959 559170127 6543347 283900725 837402655 860379174 196488105 570826514 316916968 633965816 542067500 782702842 436947212 833913754 936461651 996115444 171572005 511940024 931839801 963207124 57868661 441166329 388618682 724044104 96622203 371690985 48033449 144891653 32338128 734504277 19273920 679015768 278115319 536838729 806759541 914098403 780138350 854637108 229537227 872778571 706785832 950559198 456815262 616184785 772240208 988351790 933701046 942196786 128052813 891569497 389133257 847768653 731898269 812816592 996472555 997434173 842999988 971061556 530165892 594415480 609415072 865281269 169272858 594118173 4830402 723214916 480468895 952984969 148690231 790018506 343147551 461234853 35920039 838009800 164624481 872651367 925016646 960677023 77527554 266043980 221481532 222182095 810991517 887283800 700603390 798754814 956043859 995874798 370609746 863887586 388201464 963698513 497020968 581886846 78822979 898805905 70512556 764755822 411210061 844961849 263461796 535214993 994593792 996598791 318001186 930555710 767722772 790453764 394857829 851389905 635566126 820290279 970107770 999779650 635018546 739085968 872821789 915137524 932589589 958617208 386396577 711448437 119820406 297292886 247062405 764625994 944074834 971242638 11706969 708526390 569991282 818885872 425905354 665674246 986341765 999141442 806389065 816329589 761022036 874417146 757673239 868969436 905741738 990879180 102438634 425152377 834633272 863755889 175614660 681750749 202694548 828284768 774686108 901452694 715783415 745936144 341994034 658132744 427404335 549013971 443663071 813486545 155657836 989637722 598059567 952649534 941137274 952619700 637183970 772605504 937572863 953706581 35892920 815912490 637766507 986549302 679116864 849375508 637127150 901512345 562817020 587477155 947817443 954537780 281732497 723178855 579281512 942106562 798195547 913400186 332196903 380467810 437870019 561818048 87362488 765832522 439189084 922818654 171675365 839497395 701096026 791843200 388030229 545153909 211918713 259224503 224705859 963917824 673241413 922336292 552447077 787921777 710419524 870206190 289565576 420134446 239088041 870392136 915158355 968437068 750959939 758635708 361803304 585625868 193201026 910461221 956595323 991725907 921074236 989515763 483464067 917965090 998870658 999577869 951349264 956452045 353955216 396381067 892005822 921591845 803707563 837890556 445366955 685543832 516318568 766063345 722067241 984886802 833031649 893097454 29926825 798215554 907176095 932467590 712449716 982924924 208482340 749442402 863964666 980467009 831878029 891592211 589297447 931555585 177564946 847725837 215790291 775084850 642255214 701497927 23201673 303991674 423962922 846013588 826400316 998796553 642972120 947142856 395048915 879234415 730658071 903472066 778336441 891457140 432278356 942536060 18258490 74442803 563968357 639680651 756916848 955427140 767893311 987709953 848981800 859900079 657640181 822701333 881571163 889068431 482614801 573478559 843727864 883704960 709448389 803079502 99216107 455506012 649717243 679093510 341828314 820810326 720533581 843053013 773773439 893009859 385571624 901732219 409850424 764693331 648276340 700099935 515424829 980022576 578152994 591925436 663202149 714515200 947090593 967110550 399766033 867727026 950898554 963388133 792825609 985341482 877655768 968311118 168119291 427908920 377146714 567377371 256547335 859830916 860098070 975253893 476925330 842010335 840293591 936789216 605188775 798725621 907887329 927042684 840521173 852679740 176822112 434190411 756832920 787255101 893890417 996601503 414330967 450346615 599099513 964188673 696328410 983059033 13280712 647104469 458282179 677903525 722730323 920656413 148174626 539924344 356003425 526818943 126294000 684940026 52160902 507843482 322750351 488847108 424176925 793754930 54066714 770947392 399880521 963822492 936771890 982242672 88995969 654074668 531955300 660939743 104916974 817910693 232922660 605875151 234392509 672794511 570988725 673134262 282668315 465640241 733076380 856417718 135084679 308143061 921831353 945971402 84606283 964473284 301667065 343205824 455272356 892646690 708236248 717606080 668275546 791899440 93856514 196351764 898486595 898718627 615860444 853812554 337310220 651324207 577656299 584814567 919212194 924583964 305580388 717057378 519739741 923105688 899437630 902830870 422956698 920503722 490025827 981431035 538874219 857223813 541977590 839660821 951521803 962709066 822952091 834319375 151091888 881865193 781247600 791431422 44329151 431106259 41749513 624601463 273682202 426083871 299883141 637154356 821976531 931656967 442992247 699650681 777914114 927318441 2617577 272359701 696364608 858674230 525014614 556157146 329005730 528678110 719318264 901949067 231369519 488108912 233004339 599188306 227058901 443394134 876037403 911532474 132274500 885948318 24014598 903395829 103597692 573898864 791293511 866340793 44188791 670788826 152827063 168081249 143101899 303769810 273289130 510279270 967037434 977744620 685956702 846969763 596455176 804424004 754832015 991789336 305657460 616174090 783890866 790087971 791672424 914688809 556850208 714812306 287049717 709270334 65310081 961104501 78396535 677134014 270945684 480268234 116125210 302758343 382751357 995472794 820029863 863250318 24520550 387994254 611564120 730538596 761028908 892470600 331308618 821990301 190028694 746904215 736434737 848624019 180065211 223380129 928396951 997007387 621228825 738877394 801557532 889261358 69915178 243485843 360062209 703997511 236363281 284807815 407665346 669043283 201935332 988298710 245281750 810534871 82760812 730717654 317255685 616609488 841069432 880212714 572405924 593294806 656995728 939885102 389453541 508987335 385987057 413828211 454881250 812745111 782340891 820964794 546059628 650954072 151568099 783839811 470620363 940219556 99303183 183991911 291881757 330391532 883466861 957225254 791366372 910007900 192679232 352615465 955561525 956406851 398385330 969683709 60703350 442100653 89322160 887645221 348659763 417254734 936091938 978696474 627158792 980211317 617487511 725321274 289426731 605280800 842785432 861751009 679818470 999124441 561393483 994589033 483522850 571536215 868748245 875290347 914718553 935333129 790090259 859337364 669946263 818533587 832828801 986246213 199022550 875498038 93248061 535554226 659805588 772746280 855817032 960637312 863654318 911137407 622430968 785025001 27005142 705818516 695694448 827667977 719352245 896577017 596674877 986609928 261642907 337734252 534652701 535101557 644819682 683277432 183105381 917760610 10483297 698032442 577552251 832405150 170825627 397074667 13160318 434845792 921646572 971756203 340516499 867961943 222693534 994086236 774059713 811903954 170946040 244579368 830808548 863615701 514558835 732116928 626813072 779903058 3119293 473060383 371051301 690195839 438567255 471373500 500349025 633957254 273679083 386519468 214006442 424477873 705582716 721329699 657749637 894047861 505305946 839761038 91840420 588945719 301658469 856204205 52832576 941822326 503721230 754594421 718443622 845993492 455120845 957755038 58192879 72677190 100205997 353966140 50488150 729324229 890842291 989943537 290989765 898044265 491396327 993995117 18153001 340582443 822114964 930446635 15217174 315139499 508579698 581054970 947315836 963070760 755252473 823948173 453455614 495834775 232674382 785655248 979768795 996158213 911334243 942896037 530979856 542022130 885344490 942592806 249199841 280229313 33533338 790456712 191098725 976755119 521138290 689251872 718622208 910912567 350591873 843486299 202355517 447238319 170994874 688674144 182222256 990591129 219243441 517620345 799949096 941583251 367932825 447760380 922056502 991496795 920419771 951543816 476901467 785860377 216703430 768206940 614876896 951423559 628003820 976597023 167525849 300034719 149909596 467840002 117204128 429003016 901447153 990830144 86980003 475144819 205928443 621853407 144194290 803634305 849934218 967886079 291379311 799108823 798832177 831429105 497532339 558362676 225276734 635407620 683946032 965275601 17586096 429028772 714485798 898849184 933413044 961507340 587384563 922194737 445406183 638486900 654998136 695744709 522044779 970453732 104367848 868078057 58158539 938660913 999166994 999815233 487692685 649393708 83055450 703322526 975435471 982510490 250182715 429030876 93243408 672803229 259854839 559886962 415275883 857837127 556042371 601938124 433937168 596247839 901962284 947215044 154398022 903418179 794408586 832341545 485966428 948705169 485797792 814874249 225400375 729034829 57319068 624816479 38776663 309689638 273120865 542095636 664665191 757891265 419602657 649901865 645223237 996170527 525173735 742043049 152941526 744393849 529972830 812721038 402108552 871408362 520903262 762808759 244622655 991267691 290311159 809951029 629002416 890432810 152247342 191237657 916440458 943070780 267720130 661375497 78597829 467905178 391557430 950880463 529689950 853756221 994330380 997179586 484647051 986673507 195142157 724850494 990601258 991059283 521907360 769497508 767688128 839813783 435730258 534303223 567039362 993027386 78609407 394900081 756239695 864875292 979021178 987009841 72110837 331140345 837687467 862572066 793940816 871031104 832912843 882496939 821434330 966509475 386135820 534670734 602828659 735925390 546081579 878931211 684718115 846893522 202247898 716015264 88537310 115521131 148942955 398380657 494653981 859287041 998144978 999247969 36691089 623456871 184124584 534829754 616750194 727024395 403871744 861075431 773224546 914365399 618895265 971198194 331970085 510716770 953300401 996215348 617486747 818175426 934869368 939880474 127649080 508378707 15793098 313676980 207243936 602218908 788201170 870594591 349906106 376347687 168843772 916740557 846960676 854757152 497102291 763815647 718107184 836770324 687046281 787725994 625130342 783573517 508206573 751798897 9842814 279469703 84681105 138813186 677687917 693852689 785960849 906488668 393662120 888335373 418915795 654508465 913797836 982657090 791683425 969428059 871161398 894838653 355868288 887328106 830436801 945962989 42396750 474340697 592617444 902415844 343791474 760968845 809959967 827544331 243280633 956706169 968495500 969400616 747168638 914369166 27675941 782061824 507675212 649995498 654684553 897461415 445504499 461220936 555125601 650934173 869413819 934331766 689482216 830886433 506613167 661820646 561913836 821666630 981879343 988995272 424312773 490980485 316741888 559831760 278238980 574564516 616688860 741641857 641304914 782155979 229119692 353803849 165094949 362888677 33305711 715463006 357175158 597340757 111472687 678572667 806957009 987149256 829870499 946043452 218924323 478834682 781242310 965235781 157134131 542864305 193470000 262219356 863653945 904793846 767770296 997383137 157357802 339663745 526830162 796673986 127020756 425173267 851619031 871581291 716313062 751484810 504221167 607840107 173898055 656444561 19393146 448531570 289608318 739778830 777154809 902859467 39451169 724611464 541699519 808916835 49792582 179308413 234256479 541309523 293016559 729858134 900232027 937205244 919613559 975580744 251491979 628812151 699634495 856891558 195932777 956521831 587094086 883295341 203281030 330131914 580292616 622414990 318781697 490575411 411148643 846610856 532169592 606465426 947646944 971633569 203677829 929426393 67347331 263530806 983185359 999636084 538188504 591846999 620559549 670814687 285206591 417620331 860106578 943657317 179047034 365371709 997058937 997359480 735399399 883126356 906114783 915618914 785069126 915704371 673431999 691194845 730857330 916978606 81072919 267945211 555312688 592717599 571701819 580939102 875454866 964519976 16283211 705793997 182649429 440552884 377365436 458096752 46564013 547193243 900519603 904589146 248740727 604329741 871204506 923984131 990453057 992130819 707411057 818742858 770789448 812400845 228249360 545051229 550528308 638626511 23188853 404868760 667156790 975358937 780445798 890198827 976718070 981447125 802282416 810556370 461150038 561737779 142548398 473308613 601532014 978950286 30351833 131735788 698052383 734709684 613932326 999338447 135294168 704642788 728844181 999854287 405628883 432907944 223659142 570299392 257834219 661792528 134582553 913559271 776639327 984834320 297646155 884786567 589981372 612977958 486172510 487759015 154238948 895923392 777400387 989294091 993392694 993850023 789572051 826132581 205728894 229102688 456032343 752238425 472169789 778032314 715897835 792332012 453884979 672160259 221790455 953474565 917179992 980430726 366053514 420054447 864996060 904662444 654467646 784604106 775295644 833649119 536393693 693230581 172245045 268645229 546824528 772659094 877921263 941322148 424725600 746775892 354349842 705356007 392750388 866834972 908792373 947517702 130735944 379628206 63340245 217103337 680075882 946840333 907854308 985157172 356148392 922067166 45323408 472105583 827662133 926146894 909731632 953888602 30868917 975556982 450646489 855446457 481227920 894948602 490143815 557874065 114016139 636955765 146575771 160747763 239605569 977960754 941441281 993846015 540333669 831011450 389962477 640136092 274767213 552828398 246955771 332288827 512290738 727915370 986544909 999899473 671326724 823071460 466152345 800316610 51577836 164357941 296930010 788399886 302131143 733183359 181960646 706702598 223949305 601280465 597929749 934309275 456687789 845737742 605236084 896048053 191453015 743559175 184931796 512863591 686995961 919507558 180583162 498888346 877215763 878536932 514031336 827799026 45488657 134998480 24026117 374401466 968370250 979589683 602107944 712681113 464493839 739073325 372804683 910806628 173921700 563623903 487003150 883273033 730258688 960951806 610175779 649255065 216530369 223956564 50469017 761788504 175936664 238861015 2933798 802623381 358585545 458191076 853699860 990372577 341941936 416694219 215762071 294097637 185368733 791187280 175259730 528218031 635207052 781829926 896004616 983715142 724470015 937973692 12020747 324936429 541684737 649076526 93884785 781438693 734174492 904589894 767443866 985182837 448907790 590366116 608897177 675450213 820923707 830418411 43258095 148623344 184326738 218360517 272828521 811122611 10648332 959562818 401121561 616299818 305699097 703695317 73880111 116289815 187399501 465923447 640137929 965326119 607114352 871614274 461466865 555756037 259640972 933538334 762296105 851876439 282308684 424264644 549210109 777434800 361515089 438252909 153597816 208792107 190721580 559612849 398373078 733013798 533043132 970810317 976135969 988909515 640767895 851726796 16864839 519745390 808392547 934262561 97937969 737219993 980787723 994645137 212041057 327461612 531541182 930192417 922817333 974780735 658247516 974190992 822987167 927843037 781363778 832103325 22539821 427667851 594735264 822442365 65322592 982101050 289574645 585668912 461791684 912605817 661403570 699256153 144160895 739849522 403191984 909787662 991466193 991677650 651387339 747511715 671363022 840105104 257107989 889427703 769995475 969664988 684334381 966045896 931032094 963825339 513288555 904438853 721216568 788946094 679858382 792584445 883781612 979061121 759737605 996517760 297378936 433193902 636341083 840012325 268782809 336931033 240737025 442282463 461692746 573739451 737786425 829750159 222657489 925907161 36767613 224558709 340752386 370583013 499065499 584329941 958426880 959432383 331714497 364456321 105688553 662804442 359860950 541913321 266809386 491111429 442767733 621080677 851739411 870775152 218491416 808448417 582934822 964794506 31509378 758943592 779349478 838099297 933567359 969577902 276872150 780290389 277987727 649472405 917133204 949350562 601638291 651215695 703304335 869959694 661956257 990882309 217472645 985283713 321757708 766300375 223082468 630912625 261296609 845642256 952783406 997125677 941461048 952775708 310927827 760107460 964574586 991756014 691171845 998631099 532835774 651035195 192687329 337653231 425197377 607809768 294047331 344975257 139814169 475488467 282668163 519231581 218334506 900325959 218310413 971030200 771507744 813511170 835013579 926873000 107852949 731191545 737935339 940921296 855307621 858494681 685156303 691429700 533283128 876249057 682717193 913586593 884071616 890404678 672984327 907065407 176262730 177302164 987425415 995128016 83376799 412378098 391300829 643445196 94144973 578231999 469008251 600892509 67151652 273607702 145044090 467363435 27079275 767091234 341563680 751731537 947337823 983075319 710202982 960062745 201480312 534591523 775791293 820572272 816108013 976915759 625590234 888831089 931131747 961252204 919987352 999080776 426246420 881033730 356527188 484872232 284454468 899257510 560007109 580269571 374390189 456466423 318697840 743185292 875058993 972167176 558980679 797356460 882204150 981083132 677600504 706299507 512088902 575296786 660572765 783725530 401649605 655797663 627889510 949010777 990717129 996407963 168914151 955781307 87712684 119122306 320001643 641100394 737608847 894686157 758564338 850602370 67787552 72553759 283798909 918401757 717210514 994157865 880796356 956219683 223440111 732504529 851779525 890478293 856477106 958452289 820820269 977746926 215096110 888632773 981877823 982583032 263713556 677412929 699672449 992380826 671668258 689050473 131186035 667191106 953146572 965542574 330007983 352980372 554904127 708895820 258172969 336441019 804171360 816530965 459554235 879737285 500822892 627881409 591888157 716473801 367201016 368082575 234719200 515587781 768237551 868409765 175670207 998177020 996399383 999499835 279174962 686668726 53117174 512975933 785028535 954088641 842083889 996799437 854110703 912125682 636439518 942851624 851586282 981791425 44369670 920637146 640990063 938762068 151425968 660459270 964497155 975150860 604087677 671104782 742048291 969002143 311519412 612965548 512608961 639699967 149768755 891721252 279269619 914171729 824037743 963505537 400498938 511962069 4959291 701386851 165421839 746946874 680108693 797590205 659001941 871782597 507043584 685741733 27999703 933127275 5693340 678369538 626103869 827123733 567739624 919558498 830445561 910868948 511586672 839036665 257790304 316343675 96426647 513029680 803222165 824474609 473108154 654499134 787208631 817128321 109374520 171819671 515733083 892566423 741535511 973722571 929414346 987137145 424957711 757001404 479103796 606818225 238221075 662708985 127458679 946960810 63719322 118500757 652333532 962658466 823211350 928721860 66005654 542347978 466925787 734784409 431299961 651022552 410090617 877909958 93457270 360008959 790473256 863653985 619074063 658673160 918248989 977480729 208007951 246073508 375815 365280561 510003184 636569818 732044783 750702996 607097443 923540796 566467 823701911 474471125 753793451 87316545 926962938 526947268 957034164 877102043 909658037 22800822 501217750 259220742 927799967 520518162 753868383 203821467 524725258 234005759 415289972 31155991 514656655 603692595 651663818 727868849 780894854 392915541 718517052 318031797 727778944 171190515 487948534 969971629 984814585 780840567 805109927 511089814 616434642 428902160 980029049 203645994 649010017 985178293 992744298 969283040 996798876 742034333 870324719 806142864 978845119 873361805 910036253 332926964 638604614 101421731 232703407 81559538 145108700 27712647 222426384 479179055 883342029 102544880 521365017 28769421 859032590 751435067 901206797 950547208 998484622 711365873 848685640 142765385 561461550 552702900 923131253 425462364 435873025 417482290 543671271 585162755 860324504 402844703 589622651 346571261 527945943 355362206 642451808 796078976 933010104 482313425 866062768 359882001 519477040 903327240 970812880 613207119 996548346 215247836 426963282 4861066 104480654 37616323 209295351 530929745 894868868 6690771 145211760 891898277 894906608 850419747 927833342 24175145 790179266 500082431 975976860 915541930 945416621 619319036 790669808 274580632 535564685 632788878 693847564 866349649 901042969 526701747 910354626 553253295 800996697 920470599 993102883 438159700 694684745 868835547 946330051 281788627 425491771 591899292 740219873 84446640 357016306 43012364 951957243 149573505 806615815 736330289 996234955 203056602 899085431 576769832 759941016 541694538 751549660 40523127 715640551 745848909 980124998 223995488 453906520 926606306 979471132 782724004 842643800 919591042 935495237 543573982 554349551 177857122 863906219 94128513 388174823 994913125 997553326 489240011 788250205 179551254 738868905 748057105 841262412 216467530 396358968 512888759 583646696 90522274 556249497 830861508 880449473 485051410 630239659 393684842 554815213 435474763 781629425 391196272 886085885 116871857 949224982 396278532 676560107 17150762 982327723 29246949 852845363 357864143 875247960 9625138 42473824 171728059 826247759 653762809 885010569 208457145 893571058 368172869 866280886 980034986 987675102 514896915 920874075 714564019 754474853 938047211 941900730 945486219 960688240 706044073 767404610 542956097 569566242 776330392 888738293 959029032 963497633 778359237 896521330 385017512 933332212 964590399 980652557 164019228 434532854 975534355 981348942 746474556 956497768 383599850 867218026 612052853 773525042 770547012 786525575 660260020 745399967 549849661 561528573 689996636 694032319 211585337 728762740 983924964 992686544 793824053 855481928 883151509 971170686 74172196 660555251 612882565 944122294 997747541 999927678 599491503 872580919 854128351 975291535 653960791 768562242 574988470 800567992 992287507 993302576 44444263 400482339 432271682 880846322 329471670 644663320 667183353 782317988 895889603 927811929 117222369 189531672 116313282 696420616 101260402 939128957 106713966 853894607 982232468 999263132 340247294 854737867 67526034 529074101 46012783 901103139 628263243 906538803 52777785 634470355 97338013 260141055 348574067 377709653 309262262 598764936 735128784 896804896 441948693 495001914 239119971 282692185 796211886 832561457 226913241 462255024 977609065 981458216 16823734 831391537 344248136 484846354 795762571 886431929 436579060 607430307 566213519 809259449 336021120 896046724 400039085 843476129 177140180 274967033 677476849 933488974 392113580 396613222 467896485 685450244 729678190 973950183 812454075 969788964 667522485 913079014 300018400 805406057 322679144 928502253 755799068 986063100 474046393 772980943 971752739 998712402 755152516 935602368 730681619 977263332 605347026 648558640 366594386 391651806 709028885 711182877 258830245 935209300 316906931 454335857 605204496 640538978 915263553 967149757 755018399 830547822 990651164 995086949 272749282 415691817 670311439 836330609 637728223 764448783 475129122 538882713 880772839 981186426 780005907 901151852 663426198 862881619 214648224 415035298 256733539 675938761 354062002 529395449 719143955 991076694 774807536 856890775 783862407 937299963 887385712 945675925 818120390 942408838 803848138 922022171 627117142 712373356 702421978 974980269 47458626 454302810 51169408 792992447 273672887 472487972 551652633 854385990 844133741 872985365 437146502 783341716 751855147 965605518 130501594 247263442 4409855 549069806 819307588 985156850 681184700 795541552 724285637 811794041 944745984 993748583 282018255 380428463 84051452 365601229 62182268 417539356 301925530 450250947 563025850 585224989 500090119 847414139 269439449 795650594 828028673 947126418 151040749 287043274 619650122 930343444 663239637 978255291 640780058 967057954 763865009 942346258 973475754 981884554 847115775 996424472 774272107 849175594 483844159 902613900 940343530 973128831 70815416 954386716 227240118 950106959 412399956 850521904 458184359 490433089 211313844 221086358 890766195 971186371 491473854 903163503 431713593 764492634 345043133 725486588 335774027 834899879 845192913 969563490 167840388 458370623 290776411 737788656 436792857 734368242 433374152 736940939 475945783 869836739 677373469 901627974 888280742 932130451 601343340 684316112 907001412 998811253 798654095 943529803 384679086 761389229 703726176 782712395 525470614 952333128 489414827 690999436 505699011 891298493 591052330 839412879 805539231 951438239 245768742 970207164 243854000 505395987 699965078 729992069 617373104 840238204 93069080 736604174 905381945 909936225 238811360 582241675 889654003 971853005 475996723 613918028 745811626 967211033 718774846 744456944 278715376 658539935 595397423 714516972 201203026 339911206 234979746 935215694 789438072 895345640 63076508 850054268 739883553 951283051 800713530 940670750 514365023 739841164 789401956 836611817 902330904 928881548 191711051 195725940 600921987 979018667 191965468 987697975 552813584 708895068 666168822 808616904 658783361 735875858 65928997 550561029 411709539 571853806 671985085 985506881 544502489 729933386 794941876 832578496 600110447 762667412 563740090 830603738 137122615 194405273 296307220 345936015 190957433 502546946 331622605 592747638 885148422 910743212 978932746 992703674 137014511 250370324 411430098 576305304 802532971 930553508 892268026 956960858 940643241 987503100 230152667 232865094 76953758 485988148 917121506 938766615 623972087 926372850 535879923 730330968 289271315 638015939 584641451 730191355 389192379 694928970 627542087 683321020 806938715 956487135 789113375 791345415 366044140 700310443 815929034 839708670 457746062 535336100 254442399 462202815 967307814 975496284 148065977 296647025 408299551 484148947 797203851 889553446 206478140 551365459 156014676 399915303 746389603 834214707 971512787 973023979 531988387 977482207 725074757 919501126 989099503 990001155 612496927 863134677 796717862 988223032 227547324 330028876 339510126 642920788 287026020 607239448 366016573 934547457 211099097 523803197 702700027 767806297 981715569 989730105 278441378 707937493 202984662 877442703 288813391 523915261 68209042 932369709 699424644 712882177 135626601 366604094 510895592 935536874 518849626 950116887 127790695 934909236 632157915 921752093 681167898 825006210 552284785 823703373 218802250 315918589 185552790 616408139 73892407 435662480 834684450 878897544 126681806 784894078 248186402 959341342 82220319 115140657 731627407 826527463 433406434 672741026 440805137 570022915 580358769 609256255 990162682 995585770 523099894 562465006 908650136 917831262 559644965 983648401 732260774 797454353 930529499 946433389 298623868 323869326 955735030 985819556 821933551 937051729 131329445 864033125 984648588 995743451 390446706 706825624 395256586 786265624 950627992 995096539 750158387 851751189 111903486 114416955 60008532 784096363 704656547 804358927 67602211 134522773 725700255 845553728 960965823 986588098 985130354 999322208 417741932 482225556 247635312 939790080 693065151 853704101 755954846 980244166 656404012 717961839 407424592 858545343 140193743 736206162 452502137 666545946 260682148 510614622 200193688 931726026 767647073 820488261 323701528 622125575 15282951 935260693 726605806 897766430 669840665 989441296 359895619 911993458 238527105 648053965 51636394 653105917 619610739 901791320 726720545 877942052 936444079 948120796 878220141 997155709 427894079 458501623 117196880 379554447 817866026 884834395 521009817 703788024 29379941 400958910 909241378 986121848 417486886 657160330 623824258 942572206 890444772 982233769 617969522 789681381 635938797 794920379 954325717 971603880 844797206 861344120 97051008 608615485 626524717 688774962 316427039 821956351 729164919 788311520 162985617 673470574 227714826 465616978 347180 806158442 295217566 300576115 439240271 916289827 302779526 749680609 18616526 283468830 557523942 876592012 899941702 953055051 847312380 947914916 467282158 675410780 854082528 891865527 390277376 693583264 684499435 977082102 400830022 777595135 357124946 780238751 647400519 758533486 883171148 938041279 171939044 179306566 645786199 909307220 687996995 998232059 355816114 531541653 7435281 205947817 397216337 705351799 826504991 923612757 656787079 693576469 29755066 341671959 425552294 647688409 226209508 634572774 847034934 951398952 824831601 988536672 470617171 546161048 729339083 876265028 260907101 843007862 782881440 824116484 528884367 603731360 113250766 565030841 259762172 662737280 336377459 736080474 598773212 832243376 43044640 782824931 980669216 985154722 693815012 985771865 298200847 571128654 742542467 814307693 730623298 904275493 334261942 804571345 70898107 255583419 901748271 932391346 657092524 965204825 245911766 361069194 368242233 695898306 199374514 358296701 111586414 202122402 439542865 504710611 366502146 924542666 177601075 985130824 932854373 969928221 919644522 924346791 250649283 957602951 905089667 961362396 638178882 896499872 829641552 989877571 769059390 888907183 154574271 907315985 928002272 986888959 245073 69635735 455814873 756165404 177900447 862663394 328369771 780291259 215563169 765678757 726774422 932637034 717453439 753861343 33961347 836026896 184527504 486825257 415941815 641232757 271816771 611743468 316245266 791926508 877817336 950664748 232291636 912555476 188307772 668421705 553546166 606735935 626102588 684754310 18890920 283202959 20843926 263744681 852480981 931481886 396348129 519004965 614809275 719391550 761378771 762476996 356823636 925303346 282029246 357388774 468290639 833085833 331222653 919162581 313582134 642320721 59984879 778974401 853438052 924857139 642372899 959846859 447626629 775121773 942721959 949569453 669413487 717267319 829699388 932779526 220255237 677246922 107482213 633113220 568426978 622788190 760589893 915766433 890739004 979543841 513698319 919394995 140697925 987985005 875550652 876854410 935029810 982653486 701158934 824807777 883155162 932958818 936423641 968694584 716853111 781533320 225675851 328994607 63704552 717115547 969040104 978026063 267260330 930711338 64292425 533955932 248555960 631506690 937389649 968362223 437291396 772181080 55149029 534418856 843950323 987158081 60340667 869516258 203675010 572676893 693668354 870898949 800483075 926144579 92068237 803682007 336452014 636324507 912460882 931921138 618129264 979991649 615778188 906768337 229800811 530978717 287653557 643959264 525830015 656710874 565028296 910814433 869866568 979943529 534155501 637791553 600621005 857887919 221535507 583491751 882501816 882637349 421618767 735727864 373326181 522324396 377807684 653338003 980840410 997286548 450613201 976251480 456043541 856064807 193009580 313294241 546940912 814536094 412309108 452360766 266529526 849821522 95788341 684523066 383956904 786983317 549532924 972785999 607485965 758237658 312104853 428104273 679627510 712905766 862204150 895076315 743539630 919353195 199241013 387238963 656621068 690247713 266472362 618606708 852436756 975630713 864144878 914531055 824891775 894748513 501880356 665733107 2237612 136952878 81794861 329377280 855856828 919427952 650547020 762187214 794605149 973750475 691977753 981873433 557412782 883735455 131240403 675559030 327151015 982947898 710444549 712499110 840714349 981633159 827767591 870132627 186683282 540642969 835898877 939546133 692907962 947214047 449806166 748078125 384352711 794544319 734045979 833307417 363496871 976706643 708498116 916097056 403204650 817351210 677137623 942084965 884598362 920409065 937973594 944676619 285148366 986575809 198154852 354991504 175471306 549340360 570147589 633376184 26481082 892612324 484581559 563091365 954546830 979959522 871308613 990071942 252451604 403144470 572008834 680404218 253453144 513407780 523760270 577136888 757215606 934952898 824923716 877729513 818617628 973037893 366358717 456979633 384322347 857095070 748118667 897859215 650554868 701142056 900369461 931325476 141997992 182955764 241831953 995045767 545753970 803362726 764811724 925316764 391079233 900283915 800726164 992508036 412507690 931212906 187977370 327987598 662025904 732611076 37786864 847521528 545583572 690751916 297807090 739893743 711635870 905224304 706308786 816072642 887963713 989726186 497184619 645793569 950523280 988228147 54847473 320911219 619678873 684866990 686510181 976076457 772503337 807857429 795109215 832398181 814878042 972295291 305966876 579984504 975184283 979517205 392422389 858155171 560137010 839747511 928373561 949206195 221577829 735999463 599155923 777626921 339639552 642591242 788200520 866339531 725268385 937201237 346155998 390582559 932659118 969624563 781289528 972896442 223336629 620526629 139401636 198899240 850933448 951180499 322611915 327453836 338563265 819050784 665891828 689638816 373054282 927178524 250685963 270614491 539632399 685185504 253482644 985917952 199737020 757082621 582422661 838020396 924469184 945511277 188455025 970458771 64239102 782620666 396087936 679709781 817026858 836607572 917751163 956634453 413834057 634061316 667238514 689826520 366439262 514614730 368556833 384700079 616361354 756893529 924439943 959204340 572756974 584834686 108215207 546523075 121354905 692702404 798483639 920028493 450840611 577827947 94900635 898605773 688209976 718758771 817841969 945142225 462975406 486866686 399842956 772557769 825072793 947089437 530578423 833655781 817670875 924078089 408290550 834170473 559338650 791640803 737639381 822053316 19369585 962358034 810289948 965765852 727883430 963798837 985392624 996019783 737597029 905381735 234018509 956364428 91201321 720617557 928489876 930247628 155669578 353594449 894731851 964575135 999516991 999586369 792903351 984987840 91583350 927130056 360764505 975754647 743454473 935018017 4799842 212776822 850298052 997861434 891123555 964785699 833205848 890470486 641407134 953497666 99495085 998432015 567287212 785833142 162694702 716682971 889550786 998105843 809736793 835278673 345399592 730650240 981519793 993679030 481833862 895903636 315305352 947319535 967226145 974408215 443040203 976431503 430883582 890011023 488248083 987597761 151899531 437375852 49348559 378574174 554644365 840435695 921932362 981782426 444042261 649462785 341119746 887215286 839726055 858850634 553642824 964182136 283173772 694535681 283411936 962773910 674812834 750108235 485328573 872946353 779041113 938087500 894248759 898562371 569088186 892038375 996443744 999731056 840163437 947212056 866386042 924348121 610413227 824304310 773156512 865846164 505784189 536828582 122300002 428221102 454179367 944782286 328242174 929429132 293793458 390248261 607232735 963209995 238045018 868152817 870731754 947037757 330726729 593967821 253219024 724157269 723958106 755558126 651398440 960197953 872462079 902736394 591640794 846402109 395730373 973132817 573090880 602427397 326749931 921653235 968234275 968374856 220927038 852437159 250562207 327626578 558277127 682793413 596494665 909900370 51754654 624107080 207078711 771507874 56069628 928017243 411877532 727258939 939884317 998158981 439998977 841927912 479008942 830538805 963550350 998992008 896614275 952861167 719529172 976792432 712416868 857822658 201171157 885283102 350348490 624149620 626616577 743573921 917622468 939794079 181813148 669238939 799078470 863731574 915146492 975603813 289785410 334102125 704025738 909360390 703617199 883259638 602823362 609769187 414779333 546218364 484916165 614787680 15366340 899028829 398284494 950586463 243374815 687466081 634534445 978900848 406987489 494885132 523807995 892293363 925086686 930769097 671415604 801922116 456611493 530581898 477166501 486321563 461160928 825226976 860934070 946857090 863045345 940641252 471982118 822691216 319039217 613682302 423528103 601411399 234781750 719411565 807180629 818730875 522662699 635709777 649998547 979861382 927683538 965898698 145816461 715721483 799772993 883647813 890556316 976075480 727239668 790741575 240026849 416994539 632605146 880043508 671735588 882800384 214111492 445557397 438150346 987833492 80045850 211829641 463249318 912214983 481746573 811605371 643046502 690710096 729877044 923121306 9233300 388232058 51382319 527415189 310511321 533082719 226297794 397516891 334014200 585643104 896182775 904769346 67120399 599600094 275841467 356587918 163367723 346768280 314288 569208268 852226491 926666443 259797545 747863677 85593798 944888558 776213548 891145676 995405496 998913558 503681738 974913171 606317137 948882911 754297153 950151304 112404337 143913899 425214010 789538021 963260098 981120336 115958973 810915075 701633786 951775234 367363304 447134315 883303544 954487854 840741065 865561254 472141290 824251125 793039312 797155231 625944873 962324823 630996046 864289261 157473539 655224675 357371854 458817907 133606030 310444553 53615883 816403645 287196292 620766460 842124421 990497218 754024804 982936822 666230958 672242813 241570612 414375193 506072466 925179731 776503760 804385671 459758154 807672291 538360598 622910193 186985659 414939734 125225756 834279629 917124579 961160991 558516851 944999014 739094240 749453023 364003233 452567111 891397797 915701614 829566333 927263181 65486686 966745370 834315412 854781269 709285954 898078278 447020165 503574009 510306843 957154214 763960625 899657360 983724537 992025655 129347065 250076014 81245378 234989356 268753767 978639155 897653313 962433318 18681400 884845922 265506536 591345318 172792269 554888034 570597776 924644144 516785231 537484095 614683953 758850173 570890782 717249485 503974357 672342450 214369881 803504453 683846933 857166864 987904306 989178906 492231530 880532585 304433433 343293440 962223636 987231689 285516544 736898171 45457346 242737731 358420558 765228215 338650001 842996853 463301751 747458504 283772017 383150291 130868680 161027769 839710969 985093181 168199645 561032708 353145528 613285148 290656223 685416376 189364165 684768418 443717277 975807898 886594807 896910211 678150803 821578182 262048241 935757357 307510422 362884534 408873757 794526534 642458555 708584814 912080934 973585671 393217137 864064236 510280355 751373127 395744089 790818855 173149385 936290920 956827926 986382778 560284964 829025649 555225728 771343168 695434868 855764351 872087356 985151892 228847293 238430832 45289341 534732550 448511269 479934857 198412463 956026084 228565315 474112002 935303395 957807448 257643680 395853765 215130823 923094049 335958272 785914535 471901824 564759021 256905152 281561299 225000225 528331977 592335478 617904832 753246227 894626930 987185894 998088303 463506563 491147759 155635265 612309731 396682106 783771725 366407025 578078330 146776005 862020859 224581861 264584909 720349154 725218644 666988715 725073111 765534825 840011956 515437202 694992616 77580955 756200814 967885418 984903929 724131830 992693042 639203609 856943649 974831304 976190713 595999323 899028643 165127808 171868187 176312320 239209307 198645792 333889392 689405351 887133432 566989701 609194986 887059833 919963632 20327417 704437132 136387072 474980512 301307026 701159335 652310722 853612728 216816818 796103863 108477816 340551942 503680636 883985800 92011232 504928375 635637456 676102652 861476350 944396274 143979477 935213281 699430781 997487823 233911184 664693996 167002926 635070377 979406725 998054567 48652247 353892405 323124110 519895108 663627575 943349676 709461673 993435697 345137609 882134512 591691766 974691777 859211090 945813407 204805850 340283191 30639877 549213822 934762898 997910264 249216608 488716663 935287673 986234329 56176270 114655790 65380242 436367139 799750139 996287997 522531913 709754645 700324375 872403523 542189221 561885265 202334472 390521392 866907717 928852874 205065826 916144616 471989156 536710552 332661500 779038114 805061106 852351924 243995350 707902107 725051689 957786606 189095709 678837538 666147747 863021930 80785724 325543711 524362600 745759493 50334221 409638501 969123496 989219077 383432768 563353975 669713070 956608984 961660490 975050930 517171348 843472845 670670329 999322319 189334306 222737711 371417884 740647587 139491774 322884443 521881237 533776567 873343600 901528936 587584827 854157970 718502909 802421382 739700040 739722362 62173985 956592708 896595532 922404810 635916300 924387470 627599750 918726213 623712110 788855835 231050160 572241194 720061137 924782984 458398946 643230329 709409214 946028105 515162201 631266970 156970791 498564710 8583605 947010078 140502057 275296557 48777253 859725715 29362917 368847329 267710763 626510217 347470522 892148880 493216011 631585488 822925461 887599339 290708524 300236737 627938552 737146250 639510746 816006105 891764581 971595019 299786894 433186610 478301463 917547105 133335113 900286784 790254596 973007856 827103854 975869124 882056674 980159365 895697672 902739633 596116083 958519443 517487694 927638556 217506143 632710984 785906199 941103344 427254012 825164389 515054025 611936337 616988758 712426021 606396867 813342165 655746871 918738551 859177995 975586962 364945331 408821828 468509311 973030941 566978167 658064231 534296697 693916575 85769206 547974762 800277131 899500241 410685422 893407889 451042401 650791163 517304298 984245041 187143408 905620540 548821874 909936087 607887856 934619211 184390325 866684156 571053588 633873152 471904461 833013899 429986064 542729172 281906393 990360211 934365942 991012005 676385241 693888688 225713298 652939951 401886124 804119884 337259077 691348822 77001100 987688310 466867858 838160463 561645301 976168860 402137053 483170817 944633736 999520657 821268194 996016207 814416773 917684355 791789825 844758960 776570492 920257046 160719714 656010903 997260553 998741993 454551655 983720733 440605865 986183391 128628286 405199650 794239823 899501072 280583401 972207769 953809855 957495823 950216646 971088631 919489892 952616214 671389452 829851741 39110276 425452488 579539344 841547574 188651775 989046925 448420922 950820963 777300188 783789857 140850563 677606454 871254941 952202079 29988299 411313536 532355205 855804955 362893989 551762137 588121473 863357858 589107817 655889210 10314242 730226658 598624300 850598756 146920679 550630660 786518274 934893331 858824059 961708248 431536884 462315458 377822498 964271871 248557620 386549487 646964185 712926984 495321469 755323256 747153956 892761952 851529679 921160894 142938477 517053634 114872016 600085767 754925472 938886347 946377867 956430010 557557304 678796992 70856238 150487194 807414365 857173407 655840165 683274923 310043354 848299086 899949932 982362463 664938074 698938475 786038037 842664626 750389642 904388973 665461477 730656123 207443580 838096428 694121869 898399133 125704295 653807932 923125432 935008320 127117710 812151132 151981206 980438582 345580493 463115090 126810185 568726276 79230240 323055661 580074723 867830820 320575831 510902875 83558807 631110990 647240748 795024482 594375483 655413862 85817840 246731239 272523324 619944217 543037789 727775775 347760104 473594876 912455648 954391838 127341431 591718134 738920935 805942691 30671061 214676125 455988499 824123562 958408552 996654805 451087683 797266268 908908570 943699165 844656683 854738695 657887967 897531595 975380736 983179569 408216000 829216450 968149322 982013400 108517538 946839128 241117772 721780712 334107731 805914281 568621853 777870235 152225210 238068660 770525120 989760928 390668336 917261964 148129959 721835850 148639292 313997633 627401118 962307053 601460324 803827250 686167106 805813462 517569590 918546374 759246772 918107856 916261215 981637643 723243124 979276620 660775398 957684810 168294647 717828745 285772684 626227684 363628746 529214050 960967866 977120516 89363546 467354930 872261359 967206608 771283480 810859604 608535180 828749983 748410762 798826155 604058179 642098767 385352259 696792599 266335295 586012094 588243068 699581788 631344758 989376399 201531363 467949658 785592028 910819118 827761159 839219533 79369922 276578477 54715536 665811116 872454472 931854753 816238347 944321780 882192134 915368123 741050845 809888853 82929332 947463267 688500984 756711415 981835994 994571624 983143033 995929978 815239240 909438010 977552975 984710458 605052139 930059214 895089933 897486021 191727703 796592527 561026234 770457108 308320136 690539702 985529046 996576789 162928439 199159960 792428507 913755911 640828383 816658504 173314602 863867285 838234248 953969527 612482339 786082725 266235033 856284472 766381312 914835600 238731654 509913446 890750867 985141100 986802229 998554290 77694150 965615461 738429035 752058683 302101799 982584333 453521840 898962444 916617401 982739287 952345466 996198500 913487077 913877611 350268822 985084244 51890382 418170121 410157297 995190455 589623982 755251311 945248526 990157040 607573807 973666994 360145377 485501787 451704593 924782633 723082608 737599907 107981867 667259990 269788997 757402689 161169192 633126148 781659885 923781344 735466398 764609041 407113152 976401009 794309 875576515 321705316 433951472 19235138 77664713 94618304 393480074 381997899 909798202 65454359 861175735 698796981 870701346 456510716 458769387 732957573 811191072 632318504 688103749 493239460 644142285 805196350 951558306 75351771 643310806 106810786 675059594 312255787 502391597 900427810 989005195 64377932 306508318 929801360 967220472 335786339 947869227 574295106 748339392 28053206 274769189 116226776 916301339 50855544 961130779 244373164 940732858 845714270 856775803 355978165 718467464 967002433 973146504 630394781 757504639 188357330 642083254 810374918 957692650 360497789 992578895 800505178 825830952 490254274 565760091 685372506 751220668 699252366 750479623 935663113 938390672 784047115 822063501 332416855 548611130 860571627 930042923 853542744 928543485 153571544 265105104 577558802 862020294 169708572 878688190 171135376 696521305 969202748 997937730 664746711 677609064 494504565 502287460 608060029 874170648 447059430 533154226 342099423 482840943 816564796 883849092 129604605 132339428 136103968 611931961 818395109 988650734 146922317 494326599 539375113 699867465 70513271 966087782 151273830 969006502 565102314 594596735 28533995 52030014 619634242 936475624 422459434 869657361 218181941 821073379 501297733 890988278 974700912 995572657 958901213 959225548 93005685 786794413 703648936 842928294 596845 451114337 87154017 516212451 292070067 964856420 948530559 963594813 249714842 415921588 877988005 905882419 483706634 559187197 784104530 842002367 642220065 952558993 819879060 993492763 441864786 506546532 567330212 679979384 814305297 896322073 385919624 674571343 134802269 853728268 355701578 420277544 88779017 805802042 622554149 782151729 357255601 854698247 768609300 791000736 533858720 796993455 355781037 669350773 220959318 530243984 66675996 897751357 826160138 998230024 890517887 909730596 51216166 321357969 412377309 907111552 690452044 748907456 786003957 973575055 660231993 762781575 155708153 749982710 942513357 947220388 391602900 452522633 232201957 487504139 660986772 687759745 893717261 959462476 971617398 986806447 813279347 964274618 375213243 708396674 989135917 991463362 779218169 887799527 376251379 421725397 620354622 898757941 81029051 955073487 915964438 933291542 163189874 198892812 618832788 627427665 942132004 994162461 338487966 809490448 943523175 945201721 842938821 952241237 841787917 842655294 682042133 986103042 541146389 557723556 757719526 977617812 833966700 834396760 915140313 945932951 848994980 855882361 333511181 840265468 88654848 852520176 262099195 523803900 95129282 767713061 465368850 973749456 830105585 908001174 896209426 988181892 16784507 585034772 591904180 696552224 425777452 749644556 963744620 976197833 231462861 288968919 666735235 806680267 943111134 948922648 849898189 881663918 825658707 901437271 518359037 899203992 259859156 618214704 122011954 219320447 559564256 603047219 839503720 930792817 959261326 990799016 381233687 780514795 742088828 792865857 651101388 976420941 651782066 840929579 264206436 713544023 995877019 999214657 338286929 346980302 220448050 413932914 274069084 555019786 10862651 90620928 840279468 870901957 364509846 647341848 94116250 755895307 163915769 199803101 384210605 990666018 424924341 981879564 634973631 643651893 29884845 145497264 489230939 500772403 288605014 782496765 242688177 626252742 517084859 991766636 354763257 739962668 982956027 983870770 203126406 548917644 985909566 991568194 855562319 945222032 4472772 252316004 503036995 657811462 345372474 387489161 743555017 871416013 354624923 893739549 218877472 847385029 38557930 915324898 682690904 802612421 495248626 950588702 107010552 208033727 575463899 678882767 114844816 169621111 498965749 770077266 620959692 849154018 941538880 972138069 580578557 748437901 454955300 687978331 556409091 630249537 87066701 249177046 844115383 879797958 952655839 979944414 256014881 877603830 169044691 323166193 922776959 935179062 400923857 771315086 394837863 722720804 538863746 677499874 234339700 279939951 548878894 623424505 587301155 801958304 744800104 998955692 536846772 910364236 707982852 836102602 389709837 619113940 934550291 942326897 268940775 526449585 200945084 923653333 906640605 980403547 563663079 638645838 161987592 752423376 93903502 615248470 455293075 978120051 798792901 809202592 478447502 616791559 531682955 974863888 707851916 716958855 176625976 190358870 503151416 655594936 51645987 202950848 7184163 551938801 252280459 767374117 984489865 996934978 183898879 677877399 328507487 420578059 558151762 760162769 318559543 652816365 515102538 988342381 119090287 834340085 492659264 806440538 144851461 280379074 578416496 654309419 833959835 850318537 998881735 999368327 483970283 509667858 757496195 843876848 671799089 800195069 20002709 72769209 277033489 867898674 84794730 286409300 509547015 606170339 290742515 978123695 971102392 992109044 667106801 690763145 11724804 149542611 750746179 928383857 623093904 798833377 247731787 268121203 777382364 798252688 862658099 977794634 545392880 742547364 585852816 657389681 705269075 899166135 497469291 837189318 185063740 350392780 524243946 852822252 647668444 741762696 194638685 581630760 814481671 834512062 313458663 942841986 461537347 923243701 24358657 58439155 129571087 219383855 434281212 826589142 98854864 135126944 856996149 894697661 713583256 779336602 907973264 926991550 330508237 524656164 540291661 682498631 89993775 620648030 915255975 995013223 464429038 520199934 181279036 886548132 411478074 895173052 15510403 358325089 125073607 515841309 12726120 353625218 611938558 719898634 850569794 899721407 717066092 794295612 555549312 901160106 305663982 611480566 544356171 974814200 468834056 505649211 958990656 988320171 595821791 685256415 785579992 852447462 218710848 679694014 616734454 854770324 843971327 910702314 450339958 702775092 948825051 953189994 61666402 69167735 279359105 990293145 230393202 827770821 67828081 306689280 705593666 769588226 173193168 619779452 36235610 761133814 154811162 753930042 479790263 842516398 414938567 746047291 822769002 848858910 255341928 733335965 422672307 425460660 530777151 716383455 543202840 823871281 742117474 755707448 471455387 688085023 535354068 889449018 122267132 915295704 523760269 775784374 11247056 694286465 566107133 769425708 692213018 943004064 908888197 930336711 18983684 984094504 13514444 373669932 626304779 974456156 36822445 236057141 998902891 999288640 417436586 677277795 92104973 646906993 919760772 951056000 701621737 849561852 217276090 780271572 799301752 846366042 120772392 699063823 136467318 204095611 468878979 812496672 957878352 998690173 270056735 516910835 270550473 522500427 735833712 843433787 23738957 344569163 535116475 734111868 515983828 597179795 433938241 762714296 289783065 443213726 182266490 607642956 461011059 657481699 279138852 438628623 835487856 907989545 664822108 980796554 628679525 964185086 507433109 670207170 240612076 687757403 705947877 994584323 994106902 996659574 959306421 966689456 871165890 890987354 602924624 915992263 883744729 990053869 737094755 864694038 597688552 927360457 95028415 493707805 833981046 912314530 38627835 248084460 588631268 752791471 676377830 754345297 903420106 905481563 902632752 973433269 453049020 886908910 198365219 807800535 730131274 856054686 684548840 896041676 211914850 615419087 792223290 873084676 944734285 957662817 654325862 925430570 967794820 970923847 477832761 970649681 895010836 992106046 329331379 372428343 405319161 460798160 422519002 647059628 869857756 897357830 132655155 774123968 426174702 464648002 52827433 572090294 457251049 779375469 200426398 821910957 316855758 477937171 325450849 404352652 923797456 953207243 833930781 943400675 420148634 549490356 233524255 288309563 86374703 752808735 9951276 230629431 147425590 860518477 784487778 951105513 790343297 937425945 394216759 764630924 201686425 536413224 716197150 806081801 766880693 859901346 587575307 925956106 792192423 897457122 207803605 856460665 154838065 205371551 779374636 868651946 841913008 851729403 540562917 707265048 683687261 775155806 627115071 842287681 565534043 795814995 369838969 489872958 657901071 780953019 350240743 753856001 538167555 994712528 860267234 910171077 157631244 561646338 736693684 835701028 503912149 722847758 339833271 667071554 208708115 299631478 246906470 331461571 842936714 921302032 111211016 298348666 256041417 271334556 610317207 626904745 353398779 388214763 562623855 611324776 382437944 516151565 470436848 517380453 143821269 716697287 867663071 917287162 287374822 438812904 728036859 758525144 506605857 910713397 18748129 309635003 795446764 928642003 693010700 744265434 596481311 943011914 247226119 756054862 662638992 886136301 694328386 756705056 595818128 832601190 449145528 491671170 719851021 782332629 239437360 382750743 715586966 723492230 342851362 352320508 56750944 615045894 554965616 693697394 780875281 902873291 973394582 999593880 669977728 784452084 888879676 889556019 100255461 659235524 146416371 985114491 810154133 947790386 104976799 979370277 146824193 222860222 564844541 866091299 365155648 727565312 780182341 795544719 726125323 747115385 612377548 954389733 151071564 711260340 939843092 985942497 503349671 730478328 696189088 758545666 133987975 295534761 602013867 870321663 845458430 876306435 458318903 923745032 793081912 921483022 894917727 986141516 36421172 277990072 356578021 622292855 978707503 999354876 290056869 290215950 462556178 549610522 598046688 783565701 839593286 843380654 189484598 953253943 904324298 928710901 803493783 899811363 373971848 762383214 881373811 989876371 504789615 924277727 416984776 800349541 750417516 937948224 317069608 487313819 583983386 986888027 493112630 613223572 834118618 984456133 258664159 936943710 90542697 520368956 6644060 891197252 437513864 598532547 496523119 681831392 664478636 985143320 952712870 979283098 446548403 933280765 466370277 611742970 664391354 677349397 865411805 958700624 68310931 991980933 702287422 764627002 817237446 919198612 479494935 790862317 471541155 482408686 180417744 486971778 16147458 72516091 438688117 903359689 438710204 741465950 258543924 514564036 97815726 537439056 51092255 495196390 171894855 542160865 407415168 998554385 620337370 725952240 778694299 894207630 9231816 646713211 7483878 7486341 716819107 732020474 494055696 972491745 881193060 959704561 154067834 183956407 644030295 800197360 59618828 999602558 95943023 384212672 920738829 937066909 53386190 652174488 716393496 815918050 609551335 793972518 72738281 717997196 429560565 780693624 705934155 763402843 251565563 781792864 968458193 972618984 964453060 998775548 716520994 993486875 120558960 775034256 39244487 181179455 827156430 938286938 482945449 689781542 473302504 903847911 603805087 606394890 377358653 520063751 788954507 846529478 555745389 966936691 937221379 974169942 545791505 959451702 571541331 663417006 240466531 770767205 614046125 885370197 239731105 281953231 888007008 946107651 637388561 992336294 181975437 892866665 699569750 767305149 120076279 761308513 83469924 655594039 95120191 402202557 63495488 771786922 781846570 824664113 943106988 977078103 419593486 614030991 585382221 993357580 559528187 970030166 640851077 664135836 819728100 824781711 782862141 888602749 533685402 766397902 614985315 855875886 532101830 874534482 413297391 939161321 374332381 754273333 20110987 448711266 715117658 823061581 101605 254491851 653178055 751392769 955052031 961006007 647122262 931758325 366674209 574868592 312595707 562560018 705368397 878666846 884576200 985129631 345172125 395463967 791349637 872018837 802186398 939479029 685258662 733590319 209491968 851304903 89780255 736298303 536737686 776373983 768423543 785693697 68093609 370969214 295119350 393378693 507644658 974693101 990909443 993867545 136900877 727774613 551857423 997523496 103516006 337495160 819363310 843301216 507267467 547574034 360235870 522208963 539240488 874825816 212684550 713219404 977619650 990698261 147757698 690149734 172339280 919844487 973555919 986469274 675087459 887866300 756085020 791826117 415424773 753758529 276489477 844462066 366496983 546686217 679135983 880394602 711710209 828050906 763834075 879684033 863860681 883376712 36095266 134784156 555253808 894270963 777204681 878303896 992104816 992761875 350944425 482684248 734139577 850348289 796544829 832570845 469878492 608523147 220480779 610808245 79993336 118018766 943434226 983816447 544777307 770526167 992709097 995275138 278458588 501869166 611133398 881856870 612823177 835174626 732461444 970283712 105976092 430711199 631024221 679659746 76375859 964398166 257310012 288864032 772935833 985929430 376874460 533648407 301646492 446970681 352380624 808419279 915699831 962795160 178205827 203381768 243303755 558122230 655681745 833587580 263001995 791761875 844467575 880812954 409154078 409155564 833153364 923608349 407694601 820792317 335294428 377945132 944172686 965043510 791717802 795941715 823337915 961716552 263554425 407131580 598094481 646863365 47191620 120660317 463753048 610439725 279372157 923919123 527960264 837383293 184885564 485961141 573135455 684802611 807848604 927384702 821843472 993008171 931931092 987196124 70788118 143458230 808000119 963406891 199068798 930783279 895354882 930460732 259874064 594123377 782562300 879801227 218348910 614251271 661977131 944655713 6019723 383885480 559345092 808973422 558319448 946493422 7790206 159233291 647692413 701957291 588200558 695328564 136242745 918134058 337499297 696811294 789833008 798136245 205628499 718308644 66101748 660722150 628927064 999591714 780921552 955625814 322629819 421351890 955401057 975925748 52069941 169467449 582229350 969001284 32971946 429393618 435049266 683207580 72109972 130582809 572812057 768910344 164618203 961471303 336254833 347436261 660479829 662384534 151806234 230244019 277959263 651639788 70055895 688615793 834577581 920081227 457327152 677378178 858167050 879778155 275121925 482194073 149950428 320730391 288847833 693929100 399603726 604009580 681504945 720098332 393944248 454093502 225066325 545158608 346719419 439853360 591084345 653501036 616234668 957764046 912702082 941263771 800391863 861735224 877468377 941564894 765129581 866408607 400994052 898678266 743296849 982562898 355751856 631712699 527293970 965159195 817787211 820282745 176297997 835042488 70245136 426838514 33424470 97783642 650702103 763723344 486853991 635095450 933820146 986444115 603417160 998130545 878036091 957735511 467658896 759147997 506999816 748382079 922472447 930029248 297496424 577641189 745175471 838933412 891325395 925814404 378195913 397117577 683374547 923991121 366249126 912918550 171938954 498308389 613409887 921113490 317629375 855651812 816843091 914530686 936467604 942099251 824999704 913399836 69575525 527485240 208588961 846043876 994028420 994086252 295652041 486968110 193399284 464131152 437143985 533450531 978806571 997844766 207939543 867762588 73437948 413804063 285564924 963443121 758095386 766340755 488581981 881514989 126176909 626914253 343744465 921507851 144461534 644735639 789882550 804696028 8502789 406536305 987080347 992116009 34476931 97756740 941466689 977687261 813233181 887342012 966090930 985803022 692010105 997155810 590013338 851856346 145905739 337504875 757486859 997045394 44395136 787955849 568547669 671898621 409842835 662192896 20297069 961416301 348830885 522354079 743867997 914484651 427603934 842548263 712587163 739505253 252222740 463609278 612437132 854009914 261197075 478525297 394098397 838787141 432194687 544638505 820638526 914506547 864837726 948104179 197910185 366721804 336639508 968110041 454212902 601723575 738852621 749179134 229255643 724421622 879313074 963735167 132579187 934681644 787643412 894666773 500464261 570264445 761272217 807386586 380239696 470738683 949181257 993226660 841301052 868060671 969402723 985046006 626018846 628310462 975479622 994863784 405218765 925140379 194818348 600267757 364415215 864835684 788895416 957171676 462712018 661007983 534650718 761998731 641322750 966378293 592697640 726003528 945796878 967928984 148502131 613570155 751172478 799228535 569652428 683504515 736870952 989248297 486999729 533831809 257027492 996867238 200742085 339918894 341175581 389312963 852034858 877601809 742288571 953284169 529509440 756260269 413518209 558672576 456312764 983943386 609253955 674049553 818434843 994464598 153498927 302231650 337750740 684482467 269119928 846826952 770375351 863350196 685940155 790066151 202843427 209207839 841337775 896772313 378237946 851902717 235194478 613055393 977141169 991737446 555442796 595406108 676008875 714273080 254074887 303193995 474318706 665545437 829316687 842994175 192486897 897064963 919514497 936431873 418916849 419249157 7719091 991927783 94077954 204129530 319643681 526983661 934543421 969943662 379058953 442379061 332029298 848845221 328455250 665011396 27955324 296165072 557558310 718653865 453950446 981805986 66610096 252050996 192704823 324059449 60767630 221713170 160718278 269280132 534293297 685347021 280329680 598790403 415078946 958824228 377572381 802522642 709113233 760844988 606629576 900261459 662722474 893172766 605348997 942811465 528777242 563105565 466381442 821119984 193292221 855860968 1071246 864756853 638259505 740246143 171439536 580357710 151846136 826857858 261560205 491751644 338542328 610645881 100267616 745735355 765102335 872551276 486275550 990979491 40680427 858134734 488648971 576869355 936567438 993313959 686584582 890585415 815563904 919227997 940211167 950937728 332283434 802456139 584241478 868694041 628732637 981839281 133473580 383998715 474615861 718475502 627953017 967082921 10134701 737939499 56953654 465665886 28618381 938736317 364718327 841239987 89921988 529285916 31531443 178218410 854025273 960514045 433758336 626740689 743629399 986995544 787714163 987900102 971148554 988214570 556109111 603541804 137055026 314806815 143705732 953983613 688537449 892701024 283389297 960582429 770683198 933618595 652204105 913788165 672911092 885141222 178987333 507821904 18568160 708977564 231684408 348879497 437523097 564752988 490759266 510277580 880461740 977056103 225744232 837668675 661933363 924022370 445408172 941672524 350733434 953738155 599698738 681827636 528254021 827861342 34461050 766935206 857115566 984147602 945143447 955634962 976498301 986198046 802883321 925145655 216440491 694531161 751211540 864198505 886427686 910054601 325368167 836831210 931965641 993418163 272720255 364392607 417481436 473130516 343452426 376011230 730274726 931218505 48466591 273948009 354902325 952868100 983931191 996536349 901920125 923622921 230388477 353234583 386964736 975388824 274691184 677833611 317296744 437455402 576940444 867764027 167505667 781911598 901407677 973923427 683398679 839296115 636372124 979826038 380551838 747630050 686854673 960416717 406390259 626486209 188417234 604370765 267142580 364011140 286031720 657146142 215828300 939647528 808459464 931716106 811862074 913996154 952146751 955258288 527439902 938351624 424826867 749470906 627811233 630932494 712583930 907045146 794881475 829323866 764870406 823925859 279617787 476969712 70077770 770929851 169014752 243663022 99503691 365430304 784117019 809443092 651625987 692974200 324165492 336342288 496864780 780635328 742793369 991936559 523746055 902626548 829665484 905283644 710764038 827010547 623724249 909368475 336547145 639917063 839548236 863453388 55887146 684847361 7464716 299093414 129588163 427764371 435624119 987053371 308249499 858361003 181386220 424933203 730925840 826890994 615004328 888617945 759186431 872259015 453024233 691109262 25723366 312111028 266416673 656844091 944351851 948326997 965572192 989217021 479269345 745988846 918614757 924005750 934081797 953194787 768629787 867474528 289057660 323169951 166235739 986285354 732914127 921977231 532287912 975250148 479454081 570990298 211917156 485549651 347657732 543340635 501299984 854641062 881814981 960144110 428865923 548726354 940696837 964953668 214531785 888625342 150475284 899757147 733323493 957818454 833504855 845422508 709440708 930723489 603374956 695771163 28574072 998311985 83182858 779095026 702100740 755524290 663312433 718781226 7042900 402235045 442606557 998894082 362872997 401797569 260103970 922737089 26119432 744729464 447970681 642006458 774597287 963535387 289790828 898327891 336362165 784673916 73921951 854780766 16377329 255615010 306462926 759793925 14564707 526069997 280223618 694665535 628888047 634915748 680723211 824165522 987230862 991925913 982372466 983133467 861085699 949799645 766749921 965813457 450850176 512614812 25073440 755089833 760840859 901393626 526074312 553603045 56318211 455200902 343493369 822065429 818924453 933080448 45164429 820604566 895588422 907146413 706395714 948772711 741386594 753205833 722793317 747716872 582228971 652469315 973393010 983748807 409085482 669008601 890491871 942401394 767350891 987843071 526423519 622718689 928361857 944803608 6619604 700019096 327843010 649318289 569635505 828173947 404939680 731003905 952100447 993429138 455343357 917366513 340211806 729863403 437631001 928736374 744772507 792649709 44783346 127219023 282499603 876029287 868026263 993325715 468839400 630585518 756408914 940199826 204227182 746263875 589654865 903424325 269564802 923151940 586972545 729305067 179301012 240579242 679404133 968128857 193210378 424547129 986457927 990114846 999266636 999312835 289753240 448592319 983267814 992538937 341903889 568774709 723348093 751760477 943871334 974474482 387286435 879626803 837559113 984661239 227347670 815361189 396306992 423675544 414031291 760294550 972220462 992183530 761908072 940132243 100898527 744374497 279915765 957477606 781710915 946442934 912769274 989770238 213832390 880630866 998441085 999462047 793909326 960788275 457469134 513119934 442721700 955227371 134171097 731554411 188614372 755162453 752393956 844474717 142090139 448463143 175158611 254337150 663007728 808144620 317016319 468834481 748629308 862066407 753552975 795295329 185119810 365183015 699828648 788394892 95259492 695593823 385666131 746335259 251061602 637707279 108487559 459819513 409827189 690076934 302667016 763954105 973240300 994434924 721542432 724405866 633756393 986579135 418947232 727140083 890533876 920701880 323687562 916797875 257668577 701621082 962280496 990517194 613305182 762488837 647800850 648268492 240271022 402188002 764287585 802089660 703265653 849071562 968099752 995802583 509282891 626419641 206201618 417962447 570271750 734734269 834871057 932058891 245138577 908813811 864365655 914941596 117855658 694341122 349534104 373505258 531850138 958155192 422821463 754370719 890217219 911554556 490939861 691888579 242359576 940759913 745050201 818126772 443877699 649025265 5350770 377750069 671208438 977917077 716964709 724736502 316381515 404595420 721409625 790444110 648749196 981324236 732886833 891033427 522348053 810993316 988973795 993149485 527447334 739327625 770795913 931755342 366598370 969607888 318383723 839213660 760332059 770748621 45706706 868324274 973866987 993387513 322745129 889279094 284088455 576937777 1004470 215019611 172998006 543092969 291090426 843109139 929215574 964641373 517174323 660585766 741737730 891110052 156238463 271644403 408246791 854455966 553096373 927799949 311763735 572220740 876426827 989265910 517066576 692934202 195977747 283700035 407696641 566891767 162525540 395204276 435533407 841284685 897568925 961870405 838619720 991158842 39797019 207650205 160775561 614201678 409718611 669748906 244822354 497123454 794047050 862823973 656437162 721374557 624341054 904721840 903486269 997553733 589168420 792848419 722675215 851081006 69613782 565630446 362858790 993488592 362765033 617521657 103718475 733976609 185958896 904224464 365032251 458480206 522023283 615549470 138713049 201027674 200112698 938876385 252866686 998170345 118231665 888056149 801827139 965947777 859104799 920095493 632566802 932287662 961488339 992553857 719038736 914696030 263212675 746505090 246471870 869148699 354187803 375593471 500729399 646813032 36968867 671496955 564722686 934228161 644839020 648870580 183785650 704299353 666868057 735532012 170037886 576271284 614195881 729539004 519123599 969478613 758133424 807199829 705365011 976191950 812555168 920227316 532593045 680756104 198840818 826665384 462112711 711250357 228496319 444053961 830368679 933728423 210928027 870990687 809878982 851634198 796100060 857171248 471153930 610763824 553464709 858525396 247693256 522662875 235484608 786137175 847677423 879422791 349531302 410639093 934907846 968603116 353052913 628609728 995517775 998082526 205811877 534864828 63865499 179522058 457838604 720861927 458501635 829454409 264341796 622960757 928725794 967487230 347972521 693711658 505332621 891068555 616241637 868225509 531633921 803714540 297554608 709808008 371200055 513955174 251722109 589675258 287887634 507334736 704336443 920102687 759836852 890361287 130465043 265477109 697140097 770111088 309788431 504851136 400662281 891319200 40082884 721520453 979329589 994893993 590335863 911741413 629385087 744988741 174857493 858157945 714151091 749614297 291689694 506226449 958568900 964061391 509722881 994338234 194248545 397752851 132543783 505066625 479964930 512531595 552630552 972716546 534584936 875691527 369247042 887939741 638108873 835627104 888352500 898972938 666395053 994893677 477343874 913216302 437620379 859094872 643539627 880492919 8449817 748414700 69068761 294170636 829399230 967041361 616201188 908196723 425406971 426298567 386106104 771879510 128310060 217392941 906003700 958109171 134810473 269002798 265893621 418210792 581950782 593550722 121950513 438759147 118691773 185870474 368807828 394237292 921024870 956885459 66009579 587606881 138882855 247298022 651172552 814150293 635624598 666088338 438005897 911950006 489185049 499669974 187979266 268305378 159379728 376395577 517759092 549221389 961051329 977481240 213071168 299492306 432440222 876157405 536043402 654618247 532083590 901483687 315096239 710546903 531636422 830501221 507396445 841659732 579517651 820847128 124131606 521070297 987612240 987676568 480730577 794106296 294334179 716878432 287345574 743521506 739397106 943328350 870491417 940814187 24742684 727872314 73230592 778048929 954515521 977905535 612562448 892490240 895904631 952844809 472984586 594903073 157808079 889368260 47378016 624997892 143599466 963350155 131644399 572865381 964722075 999173966 803601413 858646148 936938715 998542511 211777847 708601194 253758690 800145056 728684991 932579585 840229444 867458243 978088144 997405542 741640833 771995262 867310064 905564091 940861710 983774578 507098302 949818931 671371193 842442323 775102917 859138062 953721753 980762069 420956385 631935990 720642686 797606664 183963093 321270492 132942017 183141037 837233095 883566964 664012865 990272682 910897147 978681343 68682936 387097366 900403071 951088668 831771866 905876578 50430826 742835856 552718776 671845529 90685810 430632861 621151950 981137898 420457487 603175098 276945828 764254084 580372309 715976933 851182453 915414673 559614519 994547193 271728438 387323996 287174129 566115941 113703109 367310064 57174981 252091022 566531188 924320984 90125241 703655667 537777930 937488137 651610235 986810913 104768787 697200154 252275324 444647041 713873056 737121988 938388156 954681654 769994334 924911235 71892794 286117629 242348000 554638916 975675652 990868053 126142477 668537932 833517182 878416138 189845203 605821743 516473542 996169657 393166377 492204588 339116904 777665192 638380605 843780121 9864918 113778451 451884196 841483978 793903025 914521706 587880474 652468298 226795139 571962427 248156121 299058128 60653373 141678905 253816204 673955516 766010665 782696499 166104014 477567664 943361550 985187839 770431646 887982576 480915149 528569312 685686687 752737380 232497725 846654668 622933003 907196063 951468592 953893782 906012406 927097234 29893296 664602423 211473450 884882513 575516498 959666666 835524590 863037221 761288438 793127258 425692750 520470833 992655988 994533734 911528837 942102950 871865439 907507713 768788206 783518133 996997059 998145535 323589865 665152965 775509848 947027487 684368718 812183535 634059798 811591502 386081907 866732422 545795445 891629859 169495196 977137390 183325536 663855468 473752597 880445197 140260801 306669493 575964658 605175362 494035889 648828099 226726939 875157624 129111623 745146973 156970759 337770186 369412123 775961000 808702826 920289266 82098767 539849290 793445290 796904688 371186373 892729820 788565644 943389728 26041386 246103435 486901631 553819443 68709470 684239349 832460478 991124734 719972150 727499055 4092607 180327428 247370581 437150692 622584551 789202326 145535169 900365213 129837963 751696614 588434537 855708279 637818129 693370529 431437926 453291249 511731648 641610690 585254271 727865792 985589246 987977829 634166526 952991036 867665324 993729797 382169483 697682665 176108985 802670087 350966446 564134940 129913890 734275420 700975034 704360887 177543672 737805698 588637381 780168923 737523217 851746936 964233289 997487368 948241056 999951941 522155699 911439664 320152873 749731974 666730381 898445327 499781163 591853770 110899842 689596024 440043157 489772273 68205465 632792458 352828050 471450269 863787319 905539329 821793468 979854092 915978532 928297320 480715504 637603766 772453999 978429081 730376721 853387386 771692393 932163199 522954281 627607769 160365936 225749868 441268259 684543720 38000124 722427108 762001815 781609645 797624312 937064750 536654433 660984320 935041017 942806085 311170729 549076199 202690130 706611704 576132995 685943214 539449875 842208226 287989260 495796885 26851962 345986285 527306977 650086959 665117703 678551972 740053285 776427205 86604193 341076517 195561644 454339034 736615030 977421679 518284268 562708566 456705511 795828130 283330947 287814084 757858331 883099539 411207299 489492648 377070863 892293699 552947541 900519693 119360290 633230621 384258854 794074934 373017968 383143753 937773431 944046741 753299239 904400838 577015555 652561449 30523125 947175904 901815961 943301533 648664514 843705665 860581983 970419839 429687372 437778692 179844405 275920536 245073346 472308287 767554398 997874199 284118906 515721280 96611113 456737552 809738056 855518845 799093807 913190488 349987622 355697148 469188779 970345013 901911272 976415529 803569810 807705092 749910302 860314245 194804890 706016551 997998802 999682327 911204239 952727197 719956842 727787384 755149352 856394055 652783953 686442585 765104192 816702602 593913563 626929521 419058327 568218910 63876541 709637529 834885688 969353644 901485919 950113719 762870643 788673544 533021430 835455515 388869376 516000462 768656597 891600044 981912927 985583569 476861894 685390113 142923854 341536194 599951069 625289028 927540788 996319770 666749839 999800317 119057736 242750095 500609933 927470258 269340105 353019060 875932730 925215915 186640420 580060638 444234037 542689566 325554709 567510357 150688895 889057193 3917036 769153890 249311367 642146547 563819516 692009685 523808658 669079506 286720418 969499910 171924569 299652797 940039192 965297385 391645930 973560119 473080082 818134545 798463732 961879759 389555895 592157373 589687256 855735061 792772932 948473900 383485456 459763855 990015099 991086371 320207183 840535465 987313234 991832538 831713848 955865624 307234209 614818904 22413937 784355138 154175929 879719384 660771739 744225136 541825172 596632163 496452441 734498563 166241585 550638062 760986742 947051596 149787715 399749240 508653489 890267701 165127006 505115608 793166308 873291306 228437730 880123707 106683596 688979151 881955560 931732346 746669307 755903773 559665825 660637667 646974567 997447319 845539924 964601441 601275119 697342332 999039288 999948450 460181136 507194121 483576879 913332947 552176025 897717832 207045217 928551524 572431830 687760827 37089678 52242235 13288333 34958758 374787497 969756697 917424537 996264707 836984834 921317003 822812448 963288572 404149821 697965098 849917450 905556918 693072794 795084182 903571732 918841999 536768594 831751508 425348401 875707748 577062364 756936628 521897926 842923872 796537005 838166875 657061172 853488016 748438614 791279211 608114771 775582937 551196678 616916119 453174590 880816882 134793858 638288610 42642448 140146569 96835639 569965218 387932592 909921328 618062874 939386869 720384866 764823676 182600742 637500711 665440582 872307031 847619645 888838525 627830104 901335993 871221784 886395347 626119348 871411899 192622531 717377741 543096283 820893376 592143187 957013606 302549527 421908771 336307220 590426131 321369455 979715767 608750487 779412294 599677242 775145187 126782696 776313145 976951836 992373219 817293404 890748583 890997763 946373579 529317610 886786523 835208343 914097167 406896156 482947692 203113325 547637544 66986364 135971185 77682744 699987927 478128405 968591981 958217889 976146129 324078346 613648604 39745521 185975496 28871704 767772677 408013638 587872913 491028385 912558489 617938220 728127612 765958028 852271622 449904940 537762269 458578181 747825448 486359424 676766037 612430547 707342692 969015005 972132755 250884395 589243243 268421354 866627648 942624966 948497631 575656602 588221347 842197668 902958403 722147823 958055057 594298628 803545914 980278036 997099559 911530326 997174587 548088918 941080277 230099779 922972129 972739882 997735069 188399498 787969437 118344883 307925602 726388462 873788376 264569153 313201932 842846149 970380325 908284807 935249555 284156361 357336572 116475945 959859441 699956194 706085595 843760979 939031221 776922865 993154150 343299603 674501367 512461010 730694773 526649055 700356436 940254000 990022360 20616539 254408750 157094059 358711408 495252244 573678036 488106683 678271095 489762932 781470858 21181644 799529223 645554519 733391494 241358955 508254195 207732628 763787734 697846780 766374723 390008745 749281250 466221296 477660402 437003948 941754770 874948749 950637978 803031947 999380102 56661913 638359556 630930796 803780274 712029139 784387869 123760132 722576134 917365766 956593105 782384645 840284241 905247051 912956826 977843752 996939238 985472176 998237966 949747825 953830206 636737068 992081731 166290123 874591368 542944958 987627456 960843104 965524506 687444331 814100037 290900421 524161599 996676393 998554919 553430040 633823744 789429658 816382227 31680079 357545427 395046352 414092270 472996699 893313768 861420102 964210199 32277734 749716375 140719613 159733956 134062953 600079128 663980011 724547039 523975857 927207772 919053879 975429128 221507951 760200627 490153876 731041728 515721915 639477054 268865592 288875902 737745093 870681307 586739655 684482301 426313541 513718399 76517377 878195145 267494644 550816039 118656470 744766588 588134726 996213308 19847366 271368111 749654304 987722772 391111380 870091013 769271351 955575419 507614760 828564900 966811657 981218502 877089004 969180811 287391235 932018367 926664330 987276407 152791715 342960257 448668726 836709627 360053234 412183272 758023366 819625539 82118293 172861394 727418488 939338604 682005293 961343865 385452152 509618219 168413169 757445577 826311354 963579787 536144455 975019523 705891762 969883106 619885756 663887690 363915586 657877290 617307414 633714672 525684832 873985230 12559672 722700633 845790604 898150566 58572171 295106992 303552923 327173836 829648040 863252127 186401104 801775525 809319370 822455792 16428692 784183625 348075050 907183525 801988979 866696554 137195256 294452000 729632771 945543184 807708755 862848488 441420410 815897083 236638446 687444763 805775916 907558559 261281595 574565968 48593136 841156301 482115490 702588200 313056832 656683641 576386478 764727584 377151086 608057341 625274071 998415748 876189427 902533374 898402832 971061836 559629947 624471299 709342142 934104596 981812609 996927759 878795311 954317874 962921113 964504540 519668945 898153644 579127934 842960500 121027864 687600336 500918061 520598336 156357044 938816159 48696417 763214146 562737160 870105555 218809006 640035485 358679939 390571033 536133861 549660655 96887261 681344569 78520432 216526001 933907620 998364223 337918660 826002807 675576009 679628323 697529582 726654808 345201657 461894113 490325030 962166931 17629581 191616507 348180528 349330349 873745708 923493075 254124486 691378817 721672488 741134363 861417728 903022287 223832431 987771725 518777317 927038007 956469651 998801875 139695034 208545111 123421995 526995944 756501521 959069808 291302416 295695491 291063550 324163030 883793456 997222882 378216369 927462121 333739189 367878702 278225113 480391991 262128227 487413915 881185289 913691454 250552281 278216017 789266584 960297413 348718319 912387995 383248152 419322085 253716903 511726306 289954955 918015316 184824396 185068762 495775519 910967319 5098842 259736143 596383475 718680065 134365161 245527774 211441068 494140621 766464470 818171062 417285488 605454671 893249630 967511155 232744625 417140348 625845692 850791419 685554661 996115466 692465014 886756344 343185262 442387293 849596042 938550764 537991134 726492286 21003324 553562619 956591647 982509023 703285882 904219072 455793573 832098874 174078312 356533092 419095724 716175689 286784366 780186382 744906721 898457773 754290781 807888663 58804883 236626585 928512787 996723947 563693881 617999000 907783806 970389826 293929579 978202505 870751923 958991662 116620375 312419020 473545232 789493466 158503611 609823459 561809513 962565480 616429900 823025096 585869931 967769032 843573140 886796415 75154956 89273627 516607480 708342056 125673664 839176156 255504222 693551143 760236298 765257912 612654112 718830258 559479309 692585774 67957813 783520935 630305691 855467562 5814087 45301199 370981835 609154037 406537376 970633849 536396332 924485327 699579326 728758008 957721212 959501123 770264559 890107985 765270524 849125159 220731091 580589284 212800961 240759248 167207130 641272997 325229016 876827666 684471153 794683847 911624212 940443055 190609608 291931687 569281702 623989427 133755401 808430275 353818194 754547518 447504048 976409104 182188818 504648547 311225798 481306620 766364316 948800649 402866569 934658014 213059335 413383499 190039209 675096346 186332899 724141656 883547334 932366622 673035364 740901315 1002594 619880247 854497491 940414401 609937270 830807825 172406404 386452623 990763010 992179127 258033584 289453211 804615965 872233256 452832719 545294369 552428140 846324280 392373179 801781775 761790353 873938497 558475347 673609171 422237405 872648502 65493866 502232020 37298904 38885276 141317183 851376329 480164615 628183012 648819788 934927900 985983786 995739210 461770119 840784844 990143158 993738006 429456044 645934027 911009663 966662926 343759065 351118622 87740667 317499453 365785007 709798092 832367870 859213289 812843806 835945924 288710934 962126474 698334770 718728098 794508803 905874100 330935329 521505226 427368665 559454534 237202589 593821200 954438207 964763477 191772864 777690747 16670711 66445017 775801188 979909401 125413657 699340362 699137162 910602543 350364114 881853502 95584170 213272359 640296753 889936624 1385718 634899234 485364845 702853982 232762611 801713147 607519863 924577144 403413822 421362840 394898510 729918400 447483049 857325427 489639845 939733144 174392683 728427889 678986512 680178000 307268656 556067339 199518342 381152501 212698840 469792202 799277644 826540464 769411273 818295603 656475317 775567193 655889170 750305857 813518752 872494947 857827384 967092324 250375663 752290594 221885127 427776743 857441116 926398978 860331451 902793350 752107194 856413758 988224902 993971969 713952634 819571929 32104089 655771146 993666108 996987214 401406722 634564402 324123870 760318788 659643723 684248844 792584289 810980629 189784706 856266624 611048536 900567944 729426468 862504392 722015085 929678625 371476255 536039049 608797708 947908343 929725157 966505927 490041956 955195404 821558520 985899513 192239049 320169866 903535896 911858233 686403649 738360897 597455009 942845947 44053669 404751537 4863523 368948381 932377107 942088142 147728582 661429431 491481689 782361790 94438239 301334411 539428639 849488228 704542274 754149926 512857168 976095379 777423962 952499139 984393905 997965468 514943352 703986029 936318736 945083159 601847936 616690063 760401646 855023506 304679504 353974034 269929085 450643349 801344724 837967622 309246568 838170843 496004721 656459855 983266959 985493268 57710865 914787936 302428235 399946606 143076431 382940809 175882822 980744845 219693732 260425388 156144536 987571516 632622515 660701699 694081870 912330330 162527177 546187968 132437114 689442456 309987646 538405145 247384917 266696931 172048499 725659131 349693857 527367754 811880844 833036541 847371580 926713708 53255793 124077274 254658834 637253959 179092845 776052002 500084207 779051379 977054984 980939261 324892100 665636802 849328229 938851157 490311813 505434133 73894753 990136995 172916933 211575797 253977159 574796814 336587234 384995521 142922915 912729833 773965636 966960698 184610155 514224095 291991903 709175194 697529591 786902821 144144157 739749888 130839184 210656018 788396005 819748016 884496184 976548272 491492083 850231387 847501012 904714989 419742680 936368576 39231472 407088205 203969864 429522093 809748599 897834430 314402854 538314276 785307438 933088670 738354152 979518987 835032458 875512709 572007677 949135802 226757276 858957545 889228222 897553911 555266655 645370257 500589038 504122805 229585542 862730530 130002659 970704619 596589244 647314971 934834655 989273763 665162883 978758039 950972732 981094081 87867159 681024299 527023905 548231412 41587358 801845177 570987255 614492677 231730513 417556725 24570256 248493937 576071720 993885140 434957576 678230012 991220428 991229654 194229851 459980295 230827506 311449366 900464383 957702078 362293977 691379351 392190248 465872170 429820765 527304329 954412016 979962099 308580192 671618006 635352897 867223708 576693349 579290817 876366837 950224653 668489824 695835456 303143788 965178784 863945419 987340254 391938130 573049714 693978717 735736560 608322706 950825406 482190843 560354368 392781600 917328706 862496569 923375208 899529719 993111406 880643731 972984463 193470032 484059687 7156536 930272971 174916362 280955838 955214116 993053729 1577208 858099211 276088030 613136053 825621487 863131636 199485622 738463351 409567844 583570872 223057928 495691938 189291521 603893537 406639599 469236908 976425285 983153400 985756145 991881635 638530576 667880906 845338399 946753866 63514178 712895459 576512162 708581140 773390375 987781800 424825329 890527057 42349973 426580087 100619168 879009316 228640149 808337691 194876671 530922708 589443332 764123119 207077925 993047466 969227661 988804234 782490410 830431968 663420442 679941490 192039756 882377001 276937834 571520036 949277620 979295259 210670310 822583214 335570993 756517484 888114931 948474643 135302586 975166248 676357932 708122063 520918893 541589661 513669827 814186810 746801805 806656815 559916 58665516 391680780 421695520 109615938 593242964 175870010 893643217 940171727 963724028 818899276 965499986 761667312 775783211 585573562 601899824 309383217 916541510 904657149 964448240 410049883 593165823 225770302 993446282 632968391 836697513 450111277 764100284 821126742 913973296 483437421 680426259 461100366 922654155 725047129 794482735 712875952 835597811 453860930 556350861 85544046 212181189 663780193 707906006 89671398 648204944 117286849 964015873 820129257 888558544 682107708 997691790 965337995 967942044 801151584 894534507 863613648 877879681 376737797 749169908 235772369 479088128 954066923 963444214 789077003 965384574 327944543 654362008 906915428 943247092 95506084 284052855 508449265 698518234 706055713 734006662 145710299 853629788 794296147 896862840 803914715 860116946 545984074 698419702 557574318 571318867 832915101 948798959 855324403 913751702 688357770 733642149 117900030 462133293 323873306 873848300 562009840 793565220 28788458 640219088 47243336 913475457 141334734 372633957 448690457 574922167 750031267 919214401 118859738 646584378 828355001 917250472 682239143 896220801 976986570 987610297 783975185 807893772 94622984 163548823 740341226 967988652 628931435 878490258 692490753 907703690 354275594 864078924 477778468 582218338 12634871 23999525 411128959 661055600 792834768 794337808 38575218 907340071 313095215 703386814 863311122 900671885 486058560 821407036 718122046 953290987 903946386 923812225 41635005 747631434 235271145 328818922 510099901 781171127 686135339 728900181 711214380 927656468 283114744 832939836 573246581 823467682 825995214 867054506 398306593 687766107 91510313 397017206 911126857 915715552 461794026 607872887 24924480 617939150 252827 950652332 154364069 310761664 815634904 894867673 585311308 669421974 465205699 761158104 30147645 549120118 549859526 745004311 761856229 842289832 972704470 996975691 77881733 104258851 600635819 925383423 395779731 599059252 973752051 979627127 750625721 769690343 257226719 391677795 253965035 723132852 253681612 488932882 469938481 639323867 251431555 627530785 979228096 995547076 541979242 828529853 74539165 85784167 55007238 263231731 688776866 820773978 500188667 514700716 951417162 990150586 905256897 916835843 57315301 58668121 960662540 976120129 898919390 975983347 144625511 248800593 190886703 778506571 473486170 929407695 897560528 931628168 802641497 834637509 592488065 889831273 268056748 629735476 339142809 764716423 397860034 633403931 642734001 884116299 181906380 647211873 972507022 981887127 131325184 571381358 480070845 721140893 721735523 880616828 570730479 901323639 487205289 702896016 235535119 866219106 367050431 942966088 705939948 768034847 393046663 490565870 537810371 946361944 461535598 693623654 736644223 746936746 214044024 578751753 64255954 898773613 579295752 992109659 349510627 729796834 26034695 754365994 46336950 414752391 609342847 947413457 539771277 818341136 784855845 906742946 33363831 594236186 492976647 996808030 419706521 464934191 462047455 756161979 470228599 759218610 387346584 869075934 897408552 920837284 71191045 449073660 10460606 976073654 747765829 940022235 102102610 579103982 624991256 704212113 876470990 899566492 205830700 534516200 711076946 741002592 433058842 512666449 656894121 991428368 435285488 660459913 818701964 836754700 562309631 717998981 5332681 109232560 391457660 566743230 121642950 626244698 468817011 517074021 388392942 563313464 908180747 913503747 119790574 885784431 254759485 290236326 337063566 796665736 811785785 838110659 282377655 803015999 185181550 758761366 264979191 708200273 829796248 938204062 189530700 381248058 822715107 955360981 510040828 591758034 772248041 919636503 216638366 373894593 41555136 839007240 872511318 937306214 970422430 990978277 868889398 966285258 318707723 445018833 759193552 947682964 398387601 785892378 335207153 386312720 494517195 912342276 252463815 780451603 85422970 407947092 648386156 656251993 392175298 534176375 243402760 995219302 730902507 923195552 70907730 732903851 737328593 950057909 713001197 973017137 340359452 847927215 736454770 838115525 430893747 734398639 647654290 987756317 889825016 989997290 44965927 358440942 359943693 413105828 763225159 843985150 376089133 450741321 103722542 717337638 486440847 573596817 56595324 437838291 618756882 792546852 866348840 981235374 987708628 989173074 872394493 969832885 515906244 679473619 49531304 784987389 607206186 759548219 880487842 960485544 635588797 775450870 260200715 581233488 670616505 701499007 780031479 817980543 391045902 631870233 704789388 908791011 985519134 991581067 516330944 766536922 79197703 973326335 236974189 470242684 414315315 959904624 138130587 155594113 131410101 855942888 650191094 652730412 462984158 492229644 812248460 978493960 401452131 898270579 394671675 466972926 679284196 680187731 32589602 807848945 998098636 999119262 527699307 576136821 192110889 606191203 311783642 756603322 732099379 926705391 290793191 428753964 378608664 693704348 255271196 327690949 232294387 945676419 208364497 322700904 568651968 864353383 308410238 705728968 507444888 916155323 778929975 837194338 615732927 866709350 905256192 920009537 693143915 749185869 371823740 468568449 729591140 947670688 456572955 853629995 163184754 206901609 682191862 947930850 255400367 283482420 946892952 993951158 678551484 898266289 623559500 898659974 606820403 615303200 832150369 888005547 29332252 551714176 914101246 975290004 986102577 997746050 692801095 839488973 65205413 456502062 80905592 902463124 559475168 965522135 159018417 457435104 420874053 596443305 751192934 864331483 959217897 967860245 846977661 896083478 919445316 976382625 186112700 393046468 980801095 983548368 876809433 983162434 29097027 668238289 161888816 331887219 922381821 977887548 199862529 935883290 668560470 708591240 958154486 981288808 34367397 42645840 932962207 934848338 537529523 587136125 99422292 823283686 65795044 308057984 852033890 960816560 162564248 917763680 594350715 669543291 235562066 718965501 726397586 772259956 154245194 417449792 817199739 875187647 140065751 779110688 820133576 989868164 747572769 883877102 328116062 394847570 991531204 994343328 332071056 441237482 284720005 649738814 858729689 918393773 888193364 986318009 689637107 705836906 184898140 356394640 95080024 200929884 376866301 417950534 832709638 890578164 300316611 379130602 349254404 880664613 263180652 944312500 855012206 893588940 434246251 668866137 481406791 717532630 20337688 610443868 846122327 997338891 602380540 811121445 995728346 995992908 575196721 611238067 227494865 557306536 626769399 953792053 429887192 523374894 246213493 419119343 227118005 590658003 780053525 816184264 651815053 901072843 559186367 883932274 138137414 640907650 933353279 945952060 752010350 955132477 392434916 525737829 163566118 526481728 527053173 653639207 964025462 968532383 101965054 170521871 100874160 243938973 594445164 714666310 143965003 803709127 121916086 599073858 105817592 649891582 661997359 789174361 911515787 940173000 900375136 980497192 590310825 810444806 483226691 901163111 874377222 981973374 277036901 913401719 754837437 772399081 50434056 451743069 966203308 992677645 982307102 988650805 560154889 851706410 872090236 930098122 873784929 931990996 474118933 560628174 927453111 954156014 547000720 665953532 137298380 343621499 209918724 647359841 723904829 859393645 706229904 824499849 316453401 323054873 271306683 455133887 119559355 470303444 414197251 686879825 156337876 831802159 113037137 208389694 545463808 557258470 565608113 641573400 459082992 848825085 466005624 497891981 607645647 920656299 892025367 910290041 730510324 739746654 609528441 904604829 246763725 267497129 487230431 835556524 796513929 988111716 221238569 305448673 128956414 748723725 879274205 949223561 986297344 988640887 130542490 435324679 761591127 832188455 705471489 903083307 960977219 989611859 699668686 935896818 642552726 908113072 926705402 994397366 872882416 977288884 152827930 825493954 138074128 528852046 513346706 960325162 139594181 997192252 520761985 954610180 794326280 799466835 803663066 815526206 322233442 547258293 193252850 304597594 96962015 676983979 753892581 902125884 385220023 689385316 600703266 859041892 793721681 829520962 536431181 610591396 154834040 681836958 500281100 936668703 763649419 796271961 932519325 964525643 944810107 950006346 707200940 750171567 869765666 918994450 272948553 324874705 591832909 811630768 552244143 791145500 575582896 996137537 345972742 912039937 624829451 785032219 250301841 680510980 145371788 891035855 817385966 854438739 203199757 229861244 920637060 965879725 605304374 764209285 877521312 911009784 512238845 526584292 719690963 762294529 731719238 990460016 461656129 945259959 355947244 390427111 213483851 258430035 672040714 962360464 549937738 917775188 457913189 586908287 860730006 959283402 113904057 265932280 853047235 966784756 145505943 852945147 498072581 892785636 600773300 757054507 644664737 987683689 480771402 718685996 84721659 510220638 372504124 857431192 134973847 369398452 810801111 980631731 587997207 673657359 945157640 955390357 990540815 992392742 241456498 554011432 751717643 892492098 815809134 933309463 49570684 468668940 514279175 754784942 12877079 468187987 202974625 212140249 797583857 945157308 930815227 956788453 181122796 434931572 869774099 883785299 462593356 667352848 954494829 982970602 302250895 699004696 524172892 826835233 657527537 951070926 261166131 455396479 414661931 502452322 847100864 973623597 21596975 778127110 835242144 961373645 179751145 826448891 329101790 657213599 204602997 897665226 137112186 898024805 263497605 382810860 843255148 915044919 613392980 748083013 278004071 278876184 83983782 486588409 485068758 787704997 326150843 590542377 219764964 635850782 104034759 185554066 196759595 725734391 996394248 999085528 275701607 380417324 234575350 600777845 298366941 609529739 82089413 357999712 178104119 803358511 904999299 995976839 441444638 588542696 78388973 489996095 547251174 976859669 166904016 285840126 102853784 152288072 732896269 845969824 997178616 999858759 245852323 774277261 909027152 910552802 472315992 899019648 347074410 973690264 36554464 531755644 224152330 441696109 503815161 772012585 41155592 112341681 799140341 866150526 735143309 950986604 48760450 521303631 42768805 776265882 65656945 229977553 113312835 561514043 313761184 612953034 795742675 940092110 928193101 936049626 307828092 852683824 611133044 760502414 730475976 848471457 206327307 999479434 722674760 798106469 324908843 762607337 889065498 897886616 853598227 922397520 878179661 939047815 241665154 867073027 972066444 979905372 810052280 879919843 300671233 822339813 324608690 770354436 609332064 609894986 373381159 841799221 853138745 890419612 580384646 699894011 307856371 608429787 273878770 375264554 187664702 464492096 13866595 755517291 21461989 48312563 691744559 728535864 918689581 944887403 604782480 824003524 983641081 998454298 813567745 915258475 189173987 440645891 443444408 646240778 988477506 997465557 182768312 293940203 820411379 944417570 261873067 324996486 904268051 991150979 313197847 935952637 589596751 844861600 170294926 485486801 650166308 964650815 360609013 977630985 773640452 856290897 168120120 932951701 20225329 21477202 564028981 951869718 141797179 443233407 513983618 876443376 415739994 857296047 867155653 983420559 512922624 711670001 631983663 868670383 781657690 838354705 455073388 758863683 942171509 976569251 602214175 968057380 698205039 750352007 857791724 949794797 924843172 990498040 148658889 500834595 36382166 89315339 71239993 110550734 422360709 729837377 837554203 964265043 81810693 668484677 404835204 442113828 405336067 657475511 76559052 726413809 971191012 987401802 110818283 557749009 926953703 980949853 8378092 589339207 607072613 841679116 44250461 216252484 262648990 559940918 581549034 872315602 539672399 908540910 183637187 546582368 413563416 758006075 672053518 940098332 446670362 564061333 513758736 579491961 163512016 973124774 65278574 611724070 623677853 752809272 482613763 615946298 614624734 760078882 498474883 948205481 648762888 719272679 537418480 860412102 803838428 826794928 829273464 894795870 266592628 293811871 575320352 822729716 422168706 641691780 457726327 766152163 205821830 528826512 630760097 914536350 943071983 983483921 551843990 927752725 246797575 490643720 833364914 889361742 820867169 906734303 525107154 640120483 564142922 578793093 97095383 946995267 714774410 772180484 578165475 947086061 54161379 430178219 424801376 690351386 989803609 998693951 511269713 594583041 444481500 739713326 125893738 918129764 582171801 668410584 286804030 397575074 460978484 646841380 532628805 701333577 797277439 916120148 558990378 901625395 23666585 466137903 51595921 148021579 682574016 805094478 689743722 862851795 730518102 953089823 436464357 842019751 506132925 736590226 417941070 702983858 344547471 701137554 560044402 996114808 157103817 796241547 476994522 794189415 907669582 908259230 731201063 760709159 663432961 818083852 154515306 534491482 850803974 892381968 576284611 829607970 89391046 908981194 73313888 221914329 929834769 992240437 844630912 941306859 21135699 447054442 197440611 549385155 927191980 944173977 970392776 979309770 579659163 871670194 635355823 658351331 980906275 988175525 477586107 614494337 562180381 934111013 125174584 690313123 492941559 678232853 871289785 946563790 649063061 771361630 58755872 503330714 443860900 599149938 97241620 396622501 979735377 982773920 333449503 891194081 944883812 987181297 222603320 646037309 792849414 823828425 184556628 504588692 924933761 943846739 819777335 956457615 225748143 684600812 875842267 950910682 442791496 783418661 993312058 993605326 495877677 981982237 900862241 930799772 549411362 658545628 649468940 896313228 372845057 898057257 265475957 689713189 814438662 994044686 747418053 999105751 452267760 775536849 504413117 777119098 927068034 939421492 381470497 556971943 67906537 126708987 212957711 619615316 743801324 809223673 294825819 341546173 688435016 883231679 52893060 174368852 818157875 985112544 624647718 679654383 130864115 927574245 396658609 875244843 221193932 324006316 85603532 412618162 580084637 899373038 84808533 871034330 72592157 432920729 826915131 956876849 130963321 303478090 359683718 651128026 454361108 755087925 878020078 879271864 594174556 630939895 746853833 947691116 374338013 766557679 942308534 947402480 742366241 999757169 133562730 719070779 571065152 771377993 435890807 687228721 28567183 530796623 848973065 942138372 772223689 797023872 420487768 760503609 755961784 798144559 49415833 697213551 658185966 842561155 145435715 639464298 255820827 868793737 784860891 816558375 890953335 944686793 620168534 773539831 628303667 792167564 725336545 977562281 854724099 948683190 610798293 815275259 113128351 490122838 863221163 925096033 640523325 939621509 805609041 891200603 448766147 857527862 406583681 565704547 928173757 993276934 390412194 463405246 407793814 982911778 463128158 915553845 791313192 953760674 663268016 957895372 796861257 836122192 398669289 446777560 532175814 842309165 958524848 968334786 813951047 973282935 98031533 147374680 558432433 924412863 988412729 992919472 305630900 925474045 900039295 934282511 240619011 255714044 327125420 774070285 113025415 448259570 869622245 878457381 549420818 681420733 224337062 512108516 764150887 773638797 747491480 765928756 17687038 804688641 334289679 584336540 773905290 986904330 258916871 707295364 786557533 796848813 202134147 447243197 964763298 996906361 466690054 941155628 485264396 550517563 120999504 200036658 408327832 618323773 55801950 131425417 437052082 773702788 420632183 926049916 233177379 759533904 919701046 924989261 739113531 821348708 518171572 972236615 858618575 871748721 410717830 702424614 549940548 832717789 77775265 212925949 799133700 867978112 291548990 566578021 142046366 865328167 446123134 935943831 489968964 619625132 689006176 972852061 405368968 479306481 431858490 804695331 442366041 497249285 349546775 437157894 642852363 678163861 279486882 662187359 367321990 924149059 547516947 642676128 858004452 915735534 700703729 724390168 473634090 605275584 986134243 989714645 709378937 763303564 404026437 735325785 837312908 991453652 338726253 560500297 8059035 619765834 321815515 472734047 526558499 620529393 109255541 498343107 887872655 970447564 633187565 773669770 195046430 967387467 983564661 996456923 169321990 257380732 926231246 944961754 263680318 309300910 382256618 922866649 146605624 247772177 596081941 634114527 954321848 980484612 778571508 865978797 676298758 869436855 707373407 766831490 224905576 275051229 403188739 831446218 785472605 916847547 836362670 859834866 638034366 868197896 570109343 782996408 144113955 683868785 807481486 925876631 280953037 926684971 980259604 992688078 228780722 931253568 181989758 232661006 937997991 947796237 732005265 949585633 294187370 524412402 215423529 752869818 24680200 895057909 982924114 988755081 678939019 961778758 562910767 662774905 535651697 578920342 850274466 976616863 64119373 817411434 119976627 530661263 806452738 927096067 3120663 583109687 323639066 356714838 692972813 912045940 129312377 450341847 802985508 939959430 42119091 186981516 502468761 913371208 713076123 990400908 171318909 820960674 44813926 435260406 564894388 576925983 254963233 643901975 150050839 232741202 918221536 953768357 434205013 572027400 28639397 321553769 967915307 979357902 730070766 946051572 210349633 251268584 189742216 210497709 233784447 349689194 84991894 286985375 50307033 463076686 390018405 785968608 393040139 716530931 872345986 936775935 266194214 328019714 458174736 919014346 642893803 821148387 964083276 988034457 736936181 760355973 389286791 431309647 211425719 979128321 986026742 991203013 27965973 732141057 479532203 516226245 883328091 962144066 691113158 769559452 537451306 594977495 146018591 819812005 860006156 972470710 578146562 621668362 649278544 985828397 892411490 893306151 462772034 956160815 126907956 980046832 460225900 602752516 170501147 247346820 135393559 828929773 892988263 994001082 596059571 889430215 555746932 982128932 265876289 979385458 877698850 977374876 24020936 412631785 137742299 522716095 587698300 652286496 590155596 784565183 967720013 977730797 583170798 630881143 95744940 633026707 206531821 740957831 719107325 797756100 236542935 955349888 43761330 226031485 385225208 834934245 993005223 997734684 818029107 880241309 951097195 988658132 897402245 944197459 757962256 987369444 358851714 875931167 911200620 947987028 159486573 450759917 308869742 640952870 994419842 995860602 575066470 880367389 973090036 992691752 843461239 875420384 89037586 285369573 629597616 800000073 514475621 926820429 931066520 986047949 118101470 125590411 622003305 711109218 779444835 821772004 574681019 653701310 313938394 860037561 470300046 652590434 492448 534738939 442119549 694385832 54433441 566109563 865604695 875370000 241120093 838521897 5579805 632325600 25311151 308811784 930389512 952753797 911415709 957576538 556261470 933208528 838836855 923070820 184249400 410018403 389548602 610778447 636011513 726096115 877708527 893631149 929539552 958862547 844467971 950960308 792093691 882366237 668803919 686491147 43274833 244483505 745702136 860902762 149550078 332437136 333487841 644640211 381312542 858975499 126153503 542474364 69513857 96935558 729918069 865995189 7314104 27919864 870056453 937359905 538103015 539137404 876164818 975548685 797735736 985503249 928558643 945177406 452410247 935162248 826285526 904551999 52950916 967460914 613441270 635199973 727441044 919818842 889619603 956819407 585989233 888155351 52282262 966185069 131002867 594846507 610934483 826103396 32427256 636385067 409705391 448854654 609014441 853159136 991072392 999329403 355924166 537832150 120563057 555379430 553754787 751785371 52452196 587927928 825054826 902702695 899893917 969173134 608750147 910271516 545523543 984738598 535977052 549499822 794327677 809587665 175591679 753024060 858254065 906228563 938326525 979393825 672531456 886317071 649729830 991556865 626143603 659661603 503514608 921690425 128017920 764084245 556333374 742463526 897309668 947638471 102803828 914002026 869671751 894762835 795700800 836057750 783706678 888608846 773588027 921743854 782072680 966929842 986145239 992732854 276752665 830148692 152191997 780334695 341397505 769953170 794037042 844017933 156641119 513283457 879384937 917235745 372662287 806845864 556775817 800734367 95097260 972109760 702170467 765407658 918733328 970139710 385581093 556790455 712446488 923002953 887886992 931310660 902713457 936930610 713815318 807294299 483868556 542846367 17835666 62563703 311022365 901505340 342052581 452706657 208933369 414004836 834304197 883906037 690049937 789540138 277275917 356206650 439588098 458525418 718121518 892546481 376151002 962900786 19715332 715576284 809560142 819003206 472055720 998229431 243314671 688509357 345337288 602583790 247423139 902700033 859224735 905927678 602186308 705023581 214642543 866362222 338224484 584438234 532212614 957084260 775696020 894503647 83047499 130125409 177767072 306678149 956295987 981495352 643619751 786097690 968152602 985399059 500589146 722594689 32856255 362692495 574221102 620040414 616153411 923434919 163635218 376741659 753459631 849671257 912920333 998995556 873628261 994501247 168786540 953185361 506923602 669339708 451825799 660459758 804807014 859975635 363824831 899240431 512990000 976180863 272437556 440264950 358343134 611456272 391928400 573830254 120333057 594895857 734577236 801942386 913479012 988825286 69307186 579049585 82270117 324328887 831624228 905650987 433126283 925522748 973256874 976495276 926819608 945467928 304240427 304911951 800099369 864323209 306110230 986998315 548173815 682778115 126212598 340850057 711108883 828767984 110582127 842627665 155594123 415234548 275684825 688249644 791583828 799150763 86169646 659429570 682641898 714333113 213647359 543004011 261801936 632765153 89373062 524081571 943768628 998268815 906042201 986099147 928091102 963034285 266156439 563757490 452294082 772957332 878676989 916728368 875505031 986003529 644912537 693585228 790106582 913717387 274099592 646887453 594933553 763741334 708138909 901416586 500926393 892814563 92617169 688644389 718730584 923068085 712292068 973934240 924487537 976801188 67270997 431521064 180713921 188758366 837538938 928219346 578213317 606497429 727585054 992249088 205245010 483409553 298403824 471302294 327914372 454763161 736365786 993309856 87442426 853787216 644062081 994482731 260631611 406261824 816004209 947286408 649698896 965738064 490941151 611326482 162254767 560391345 881788085 926597505 225045680 434395672 393395753 863965781 18204444 666687011 819399870 964541093 82372817 434349488 355182477 780888242 22048565 42043198 520551436 738623778 17242930 650995515 19501375 800279416 734767565 984037905 107696859 439710599 827789700 833677057 134616853 877052345 339335257 720018106 645689523 859034350 501702461 744709631 132568230 435928455 670803643 983086333 524011427 982659609 246285146 302251944 348326086 678415190 805544200 855601427 85901783 441264880 442308797 566453130 64084713 427004282 343469756 450530873 845567351 941243410 497164205 821603311 695651244 962754773 676394384 783377003 958688758 980308949 671605937 815660390 616697371 650635041 103633843 923084467 729264931 938649317 837682498 865688932 554246833 625801463 577614283 683282582 851924889 988770005 204852711 956615261 87537549 98098764 498824395 659618227 732508453 877673389 917257283 917314565 466687697 701141985 580269481 988533531 757685285 877660720 242896236 368430917 579019226 847942634 352170104 777433292 278869253 415460649 36751253 80995976 625228577 704506064 977322523 994238978 519251136 800929495 225985555 795729813 324224096 680474679 296717894 819884580 384456899 850685957 561725798 704873283 286301294 385180998 872908317 938261876 632839599 847966649 31309837 541629936 211626473 852115064 999614729 999808117 130233165 860996482 456794970 581336401 888952707 909743382 227609476 637036343 891768781 892318297 255662299 325292322 954613070 956856181 542205347 667361902 323501063 611423305 481842772 730424143 443018860 938760647 549756946 622247787 77438185 906091194 876751918 924208897 216455092 570967399 896711594 916538274 372849537 560329942 67273530 507742370 83531237 524858887 894187808 896238434 932037631 985171100 969948166 986788160 537069149 814791404 261829230 919527013 947330874 984111922 885586478 912705225 528942350 554404548 22559837 605431472 949905000 982289100 768049849 815220570 226370202 842909883 782329958 974950556 824644638 985200739 539696850 686454917 263215289 602480350 699988664 763459543 583653563 608383088 243032009 983243282 93408088 381244322 565057308 639167188 184762609 746999783 578246427 880560112 531482080 836273265 413657364 466867741 995072922 996273473 418237420 681574888 445282814 778861278 269650370 708162741 99315683 982136610 446954404 868301821 326872063 972994144 481205806 844975941 108958951 234941705 458443927 720843166 474674640 997392156 821389096 976913667 592498340 934586431 558375567 859328346 600909300 636629663 820910063 973885343 320693447 537107484 861263641 863146872 909603254 988265301 85398471 375869083 213096032 493054141 147774442 484553895 867133217 933561176 287014338 527333614 561885362 620209594 702238156 807111109 548669368 712134980 607239720 827961563 835237510 867322762 50237760 322748230 966113101 976927499 335196433 814006041 913426699 970252128 434604668 776743515 601248391 815321828 179010513 999182544 583379314 760046982 757207326 760273317 470476233 716644126 262010441 420862112 266104113 300879226 297405390 679891894 586367735 826863418 356193698 765735217 974593176 994083449 661126281 815215757 352908188 999353766 271799848 708869095 21618691 775303753 308018658 402632318 721713491 728953158 374213740 801677570 920060785 935728722 642804217 924206786 756508345 950562326 90460821 864271534 299453087 632011713 748387778 776681891 109232576 518217493 656185876 704076480 417481308 756145636 593702111 620321668 70497376 590130451 275468317 771978844 351856281 566305073 317469831 773728487 337861192 650938636 454289346 783085982 482428859 781386039 884830382 983625841 221401264 993546307 255139183 724675061 743960137 870403737 289376706 707921123 941233565 962984736 861886162 972252698 891429996 928435817 223303151 461046205 408939717 416548272 766802155 854449819 586998407 936672960 232830061 325669088 46603698 743167555 596888144 710587415 89364536 865848314 225731135 361750852 546164535 854663233 642746450 944489301 28693409 209565190 43543334 729580614 201668237 378878392 420207093 777477472 820003484 995202987 928876427 987540124 774503771 932312898 533364400 871610461 118902201 949203312 834834617 989355255 311267229 634157912 120616914 375408181 435924785 818935392 650065358 835845321 80583655 979929103 190093929 640377809 649771263 957600814 645766132 766540197 234125052 510358483 513320510 885977801 881999969 919991228 266039153 934660635 120917129 626078553 979382712 981529491 580406076 848745009 254732798 867175172 706944204 763335536 129596173 414067242 743062009 910640184 183420561 893018927 399397166 727523153 20482570 902860732 861246399 898886107 583680572 689814060 291015130 429101502 45775296 535444672 583955073 696477260 753734387 900217172 713702684 997771612 583994254 749827833 406918120 998817568 223679745 775935928 768974603 799139777 758438173 896413282 184606299 376585330 305284861 832775317 986911033 990107126 219909942 659198192 353753762 409532753 33804783 989171160 305083980 333495505 832419859 900419864 564640032 991195107 393732195 691755271 984893011 994089179 597578603 659714981 121640084 839500641 80372125 236272028 293982363 811612804 931573835 952224758 252120101 297595850 538826252 780655103 564545019 903524985 853205224 929279798 998615201 998749028 799229118 901287590 946101949 967317128 910249661 992628565 828313402 874275982 448504262 590196998 515948959 618100894 868072179 872400386 395619757 684671700 183148284 386943559 968633653 984318525 189241591 704433992 511010477 595169514 665275427 847787408 601244994 894776425 361549990 604313574 680542244 951919295 995269957 998573436 542142789 840147774 821225975 937636251 752257630 861068921 452918351 832203801 172288819 910514474 379165200 654810392 657441949 702080944 253232677 542132461 379418821 982804910 908676646 920071899 294801116 466997418 737426037 892357948 205595402 383755588 119097867 513538574 450923963 745231752 375349324 599445427 664253495 731392043 763356419 912532249 20398211 930571073 937696698 993246026 151850281 443756143 691991669 856263085 797447662 960956289 983479804 999032493 751373867 922795066 734289011 939907322 632393358 880338124 809956340 904705861 475627446 524255427 844463777 870842687 905629365 984453583 305673478 953969845 815622926 993006658 65212727 480490579 549758519 572718709 818245241 965699587 316688061 481059614 181062175 834656119 675929721 729984074 33868527 937369160 47188804 212290207 340093204 730571432 568168579 847791944 353346898 432132164 932092993 956672718 885408803 904855945 403459306 678679016 500326328 743200618 509369313 566509427 316010993 849447624 107138271 329565680 641132891 671067836 12059719 796298080 483682201 838202477 95598910 644551760 996115319 998271654 121683342 569337800 576887138 898954783 629594321 631340962 577465705 822242427 74801999 900726835 160793156 165559207 300300534 906134854 868179481 976825621 245991630 641326559 274722934 365244208 143390700 298170439 401872586 808257340 138003695 982053214 676532495 864631335 183097045 707328166 864148816 868720455 611518726 778857414 428964085 620184380 652825994 786255841 402978268 805680296 135968703 987223444 833789811 851138312 150030481 221468759 897733046 957724854 492217974 677217748 614614710 644757302 881942027 904845779 914729248 918950349 60551594 308288001 714796004 823251229 483686645 586059202 571317371 917400073 43127517 465518561 144509951 920842093 536881677 889306012 26054068 686207912 194711989 221994586 999404149 999410684 271411948 956953754 225235014 620673145 608791853 682761615 707717783 856680004 125325806 964239203 292907043 362008875 862927478 945075670 116568106 498753671 925502114 969499986 762027662 811775388 818880918 829896909 713666437 942066199 409787240 624195669 79778546 365354703 991022624 992102909 127016982 189470377 338012689 400682673 321356485 372140341 591915502 734361052 348564769 656625789 129461230 953368759 907355093 993812667 147809627 820704625 534222949 909691313 177679099 559948100 554990715 566585836 198964327 463288695 295989671 542688379 593795374 676086287 88461593 550965193 312549717 963362716 96675599 766195747 999062660 999307851 524223056 580925412 5443866 97478687 220861605 614769204 437427877 689298639 449001827 555255550 212951323 612222924 36899510 115123214 913148890 913687526 574191790 593228604 343502090 962535684 618884554 765680981 469199390 511358539 174013817 945053733 309359402 934148806 950749585 973537138 648093888 773650697 511376494 958016387 770628382 797324138 83374032 712158930 863374521 944182135 816632120 941677646 806283357 902353005 88944814 973439593 761849322 864657923 602515768 876806648 71255371 363303591 99726798 285593615 930395214 962483374 784388152 898706614 767810709 843837002 397741080 516895092 169378072 876654183 317419471 450303099 760109135 960457391 635949683 974702768 68031752 273308891 283939829 317559471 16564732 21834572 766769962 767754323 475169255 506741236 896240109 942438248 62536034 325895421 404874836 426894434 675164642 975730769 194131290 461569775 495716266 626470894 157370311 403239856 561364265 901497822 393163843 961127326 695641704 772433044 724901446 877231534 137748520 896579094 498292293 877015611 184456396 262799847 104802421 464997763 452366173 505512652 995317373 996892154 561019407 986351220 992185111 993012796 213923160 302887415 508789622 783584731 221945196 303883724 91739296 505277434 233198392 755420266 237320161 795594222 354511631 792784097 856415512 994084408 226143764 925843827 656177799 916368113 171068269 586901189 978272293 988200291 159123121 192568345 372213613 441744205 759922245 969550303 420213766 631547426 698647539 876047514 336723896 395512467 924255441 942061959 175551664 341506128 302274949 769648015 682887443 792157892 706777332 727381500 942912746 972243354 530105272 633840406 832671308 964208699 663733098 898700390 624096382 826042746 915533373 986449096 628530549 855290243 860809393 961168190 197887451 891862097 558773651 687179859 205401388 947243396 666609140 888678268 836811442 988303854 639301121 687337652 262110227 855790122 270141810 852331682 337976479 922964482 137126792 531784427 749444576 751525489 346003457 743944671 129715439 159781506 153586544 304033925 446371383 749285961 603929901 649820137 580599372 644171417 125056939 432224506 310190623 755525300 235044661 537522521 389508849 976626122 33527595 626583689 50382091 687479742 709572537 968402640 525121252 663932450 979186425 989135897 685877547 856760694 187993322 910483681 620040842 975506118 846596641 947606316 794212695 796435186 683163682 789084383 79683306 516403021 272745292 802956821 330370316 513240291 273410230 312265751 690902033 921986029 946909786 973639613 569398613 775127999 336769422 929893571 960397074 987108363 585034175 679132009 521229841 588839045 675292676 706030272 725953988 744417094 861517396 977839701 285895889 618393542 20896630 52813486 439525860 731484726 932903191 941540615 736750554 955114034 346703576 691124193 730681475 971067018 580761315 638516598 818723629 858755451 582116944 973077706 889020468 933152680 38658876 618711633 709726991 848355727 424624120 491430015 818103669 878420676 917320115 925647186 695238151 859454329 546336276 625787145 301124400 365373024 178265558 870630755 223998694 446553153 834077072 872562345 877346362 998681254 506575332 856914264 135847997 153256654 552829747 597246365 991445537 993443903 794308440 938315344 130778056 338893511 826899839 921720542 793974971 972743096 781603743 993821390 914083862 918428444 132550739 883165265 517944501 708014364 150797506 841181842 383155846 411575106 55746808 995070049 787712252 970537324 740080552 900635989 866591600 922501352 137266830 968858913 284809839 565891670 288707307 595600523 17369765 673616475 147421001 334421275 83835124 535605819 544242402 665356924 909208723 986364899 991500720 994596600 187913933 823812599 164173628 312634868 20140202 526671212 92549853 634440766 929965131 998744369 890170928 994432098 522194216 577186442 660975792 733968198 669516717 996816182 55929652 964485278 89606312 874345279 485580223 798038123 665196139 986898448 275776527 839747437 39268295 858496310 29347198 93390432 599952725 763637627 931130543 954680612 355901374 742481662 609470323 860702424 280830975 391990689 500638031 660690094 206515650 472190156 686805419 947924476 476365327 528338788 534882301 744687086 976145489 995295355 950631306 996835442 527284836 740080884 822376825 990870020 412410045 817436571 898276876 964076271 678697762 935151083 408118134 694634918 249443849 985633550 288729348 391935307 868232408 894039007 626208187 706307312 491668418 634566138 645410544 732349440 870817849 961450444 432644520 739327726 803924832 917948307 719307632 817429556 577553374 907615108 97664504 468167809 415657484 453481471 526793027 904644693 352607326 644827543 639801218 941957926 924173781 994876846 77504950 855182057 368093544 718590879 240233037 993818070 617437095 861802975 203282453 982688379 656710881 850037175 28092089 33516308 509615418 698601274 773636511 911549660 967857219 991723223 989942520 991151708 26793356 377407407 91814048 263493047 803825796 854967972 135486929 248413862 379241409 872509415 137089861 449442570 995117560 997146105 725829003 853434675 45698926 744704302 850554348 882689262 935771185 941363407 997203121 998237584 402982042 871516205 876127703 907257480 57444795 554049728 955403739 995190344 797365680 894008567 820547010 989578028 660281969 757071517 235464434 370029442 379868833 729282232 794465944 882207706 549132354 790731400 315008529 927197865 358577188 362464317 187823993 858022122 515944539 800989161 289517453 775149717 244682353 610853364 724073150 826104733 425405110 775153424 67421689 311907864 281818421 969261897 165727594 712162407 83968570 946906844 323452043 840960591 468207952 689358320 857180679 941034793 525203843 668910714 852027630 918374338 139054317 806669049 159807039 250028832 588591655 754894824 431059800 918547165 114553692 733950537 282147594 689161767 536634300 707198501 874763272 906765878 996520417 999124553 365899461 491696394 659500142 935846284 968615637 983822531 16256113 434536983 309657557 618506655 44902689 574226744 582225272 667615111 580117950 794356666 416860390 589825910 57895211 273284390 836677100 924107067 215472876 786811387 315657534 943820341 497808417 594259979 802233968 812774323 151397078 441610171 112422101 708275505 398427145 530768218 923721671 981998771 895748047 899894241 518020021 544222756 477095036 752318203 21639623 352307756 91767605 393705907 425358897 952239990 896860557 940599375 931226007 990697047 826328592 865970771 770901047 784589099 774163483 993439691 537216818 960907220 173039641 807681347 948212582 948477835 633556504 945522931 490354832 997681426 254123378 313302847 801400392 906216290 767585024 858342083 361736125 621994272 828633494 879980986 475672558 874209554 724110987 821979901 56834128 179023057 495051331 697809176 434368090 959110020 562046108 781988754 338401008 576226082 790174113 814521439 830271598 975284050 695711743 836869531 140025164 945962132 978193637 991752355 375095165 857557400 406363544 870877135 507064916 540830608 389515941 736237999 423440092 909964828 618088597 881339371 305087037 918472376 475853094 792245362 119832147 517504601 125315635 885380078 883576251 930486551 379346509 505746726 410235018 605867704 675459702 915218686 886869700 979102082 177572062 933749983 569886975 815038994 99873182 959788954 497318130 603082493 407842828 905705829 219464165 428187376 53441649 98980915 509979984 954928097 548279818 798577403 781243565 875188672 794118355 917120796 413105772 846344880 386176030 818459644 687460108 758328130 784825344 786753931 110206416 252993820 873973179 911232918 211452000 641017792 275374901 492816323 149801226 819831944 989639772 999634975 70409999 380036830 647452798 708157224 906592779 945748835 485379620 603248421 450441198 602777559 744400339 897942181 918593297 976232780 266784945 274563869 550100643 757253179 493273784 701219456 183972709 767835058 891061265 945917127 769867468 916898921 512815982 598573693 788686273 848364348 143135237 513419025 274705493 300040657 358412825 386059781 330974005 659042815 274197728 821540998 351733847 878417970 416211892 528945238 794355885 808865009 868391521 967233837 822147749 955415081 541260425 684946852 651971057 723422662 291991039 443467425 116986844 989645321 93685697 594821201 107404163 491774709 143241163 285078835 962232221 974547952 221094884 727264256 19925583 285718570 951734038 998025414 686123404 690785899 679556379 857570371 380347223 766322215 166687735 868088927 187982257 255679866 956155674 963903575 842781545 895718169 632495908 908420776 28156691 855999908 832823869 927505271 947634383 980991340 565113056 993637417 604909382 882664619 391890106 686691402 599240658 886374324 716029730 820797806 531134345 896884886 550948400 790326138 270339762 998693813 995999446 998650796 421689302 963097634 76416396 899124160 30588621 118574057 148149819 803146087 773934946 789232319 373320118 526122851 141720080 328334381 153615905 826874004 644958147 948623037 934914740 988446452 82708798 480901861 100027602 749810761 808762683 816003806 25993500 747804972 86446104 543051331 425878214 862800667 198987206 547566636 273986045 819525574 434756002 706461542 207715566 257307009 709061305 823151057 284116787 794186798 495411348 744867576 171968133 273467936 340502988 773675683 385957417 697484036 124205102 563378100 10030131 74434723 475838352 574859366 499264589 826755640 296426768 338362106 936461704 980761632 842637275 881129171 62252131 478443899 469328602 492002800 536097538 748436021 938394673 981694189 654229096 819397199 914741492 960030683 471665221 547297950 250049384 601854320 846030412 928766645 1849714 840431883 539813513 923785779 449484619 747514504 518192653 765043102 545002732 875043827 954439808 972006537 808171614 955008573 296599637 753392661 231399835 816904617 877997148 941610003 594939645 913605180 341843772 557155797 948297583 965723465 10152349 784417247 686510344 858966899 357354180 701351122 249430428 704352146 676101908 822148442 887926201 962799685 427896138 783047380 350652236 583198793 721874901 726407535 289327485 885992776 92346897 840982650 519651343 815363450 580677902 826073717 579463295 596122456 773690900 836988896 876657094 917733396 164217080 669912319 202428339 299071940 900933591 974621350 214363709 458758464 364058293 854450037 192218543 986359709 901590391 925793251 883711954 946393351 42929174 644816169 605775744 757137219 957368258 968010475 846633065 930868180 379932692 512034597 890196465 899479950 262414377 613602254 970013459 979370130 943623912 980578123 181631766 287217505 330224932 866344174 688525337 718256336 690551707 719303458 973343540 978268844 954186529 961500084 632529862 923163529 856775516 969594120 314161578 434372191 129499021 459336847 386903092 613985636 353903927 963416422 643735868 776001636 175831896 383149821 565648395 701379586 970842333 995827671 337730975 577181798 484299998 562076574 348949655 379529002 574613704 978818161 355857207 499981875 168963284 910707102 905557928 985486638 724622892 737435207 126022114 185463900 944037839 972550200 643950732 766895999 184756585 464976023 814607481 947794292 557638355 749791640 948832487 959005003 909031943 982732021 299216020 631265696 226786949 746948252 205362193 726297455 932399274 951476983 844737822 962885790 43852495 926403714 776928224 930235715 220509956 257967009 4115668 237172473 881299684 916826119 743999653 866646432 745705951 908966474 274343849 752205777 891274581 963339687 313551550 518959333 415675768 865397286 880685987 956910244 166562826 181064085 80189799 132971737 329030166 654710185 870774012 897464505 781389791 952380167 734178867 751034663 958801542 967878861 1106378 748408138 178886216 496965654 70592688 389971980 186998155 557900731 495004303 881820211 907528983 919243513 890573236 933187792 613600900 873299339 236053025 333391887 893517362 987103826 765527275 989901412 593219956 836136250 336230405 338767656 537643471 603633148 240486905 454107921 878214908 996414092 874957283 901424175 609136100 934013168 352607101 622859303 780160152 917727880 458176011 798767387 701358641 786765792 354813214 885102363 377148865 930773944 608969631 836865798 583576103 611929754 934167744 952714408 144394035 806599297 950024024 969159720 916149892 928217326 920448029 965526276 348542253 441314905 587121363 739732869 748256978 936082366 462623310 866429891 499836604 523706076 822237080 951041798 647927861 797942093 970931991 975544198 586261332 721465765 783346215 877591858 559462317 794490873 740232174 784698050 741506043 744055431 111534452 190787079 261364492 392086726 201589678 794503766 868731223 965072795 68182501 742931407 517930486 991738473 378113557 758903631 826057034 915982594 262144415 708199520 654086495 732254117 759879696 863554565 193398900 614593986 127406877 687813992 301525416 968973604 561024968 765098743 191813976 455033751 158067258 878592870 222768834 960798073 100892084 115340186 719381050 903882810 36493063 362770048 316492225 739037330 354151319 909900133 830820212 908791029 113868325 711966835 655239892 917835996 187701929 789340024 641416605 983366582 438611844 688405093 368656249 489595272 964914514 978186204 445481272 690674198 88800949 617471737 752668013 891251619 916548645 960015199 616244844 665287855 367175270 477969866 639186240 678983593 979506933 988701165 403657109 761289888 154473125 879785873 339262894 892099145 557192555 607918380 192689161 836880302 67632650 635037392 485371015 959559841 969045690 989873404 683010609 930372491 297205391 681835609 722395160 979041697 399216985 662185420 909675833 982371855 399807531 941780752 752756745 949631727 191851696 900803952 916305266 942181850 979404374 998608800 224912141 964070609 129259638 452593830 422649435 563444388 956613923 999835952 287750329 513199851 825208461 856302175 129284079 688655656 977555357 986637142 590429 708657836 333403523 660442336 164942216 424024422 925759741 978001639 471159331 995907753 941423540 956921667 883917034 972100831 858167556 946732556 945627666 980775096 808128501 846205560 101429022 435434827 272035837 545210609 623756968 985499525 804552251 893137170 806286988 845335626 262376744 420941566 290988073 739977694 577980037 960362395 431753769 610870815 14616223 329356168 738470460 778239287 197011175 942967319 208128128 416703315 954924428 999466339 613388327 696432793 885909769 989378814 959885425 977203982 688088506 874191267 416152485 612719204 757971230 968760558 269725488 445820233 242681321 716321179 805360886 949987955 171416959 795060224 108286448 297672285 194274240 733633993 498884715 771047567 546573040 751793596 604599930 672006518 862366947 986121736 551095194 938335473 454194823 622559146 526989195 634099747 340711773 988852072 285199796 511269873 125629070 633539032 439115023 925965307 285477641 331999521 515280128 721856089 486176996 727422510 471990420 854703796 549735591 827248151 831969138 894190002 441614519 676125884 722563991 912715839 587026861 864079976 267843363 633107722 909588429 912363058 95551651 233149415 949019227 951930290 510267000 660575375 354508546 630542701 625865204 758998688 487928192 680203166 815144653 831743241 245378459 738351217 139975224 257808960 380225365 445463505 770759702 897956753 651745144 999682970 805451413 815478853 368299285 446390203 878509856 935445787 803528368 941375514 646112043 665394345 65563825 744592162 516615548 903144366 915882180 923925417 806057610 894773376 729449063 824067325 421571122 742984895 135970275 326548423 234174764 619406150 721352620 872518847 856864129 888551991 591025179 955049489 548321713 760554862 278627267 576241123 710851986 949804748 165455945 991982078 344712125 442954823 883393069 933746151 628626529 777268256 292971650 588407089 838394855 968753779 77084084 897393350 52451806 580631340 319196128 331830089 728292704 790212426 165477115 546939098 888562334 903317855 974776277 998750812 348603271 446909954 506795992 866785917 969456077 972121009 282863641 878592171 271515739 597947634 43944113 134870782 746361423 882483417 251777761 822790691 79677092 358867404 140458851 343849498 38362771 333702663 451879874 686694937 103508413 535418677 338880982 858136190 628175809 747001152 787737451 987733609 82246334 88063494 688019345 908406676 523981765 865468262 1084830 151894561 834739553 858736968 156872074 823132691 980481379 990670728 818594444 867131286 111771724 348419998 279476860 524561600 753320646 836999546 414626798 460245367 13111281 303730397 35854651 472727552 517001501 894438761 599217916 844011870 347568543 888657925 777437305 863710567 955481037 962950750 84480203 811386349 475685794 797203619 515919997 981638214 138718565 589380362 586232819 927092607 59917532 314380962 761862220 974028918 732008355 889197967 617563431 971678237 428560458 590988698 669415117 859819499 778810008 885293946 190738198 641900754 310870332 519374221 761542289 983410409 637085084 933219209 843907492 930379085 366027964 927209032 59669745 733151955 17126087 235368318 543551203 544984694 314033922 456398240 713504855 763975649 575536091 846400203 127910687 260882058 777629985 885582056 569357296 623450455 646625254 901966600 378073711 986245702 125376176 680798595 181712982 628792927 443666974 501953665 438426799 753379324 539420378 878968911 242577909 355469240 333998750 540563123 515730326 821590554 156474678 578330095 599673687 999285415 106053321 736930331 323027127 377276489 562591444 657759646 452022772 835410663 14992585 752768516 527346912 695483312 87311885 125688353 832490170 889046600 738218169 883929735 465751371 870949868 255620223 464013546 261446260 437518319 544943272 856590399 119506480 963191681 213712171 252331775 332399522 675763384 986854532 994299632 240075411 352221364 752353259 901381551 67187259 438092248 331290747 664864159 934415222 993141552 273060106 873926273 808362722 964273080 137601043 904441414 121193295 144716141 427760382 724608624 403308703 478046391 31491886 239380112 779516976 986257024 957643222 981118650 622851796 690488280 395565099 768658403 96134462 753455586 333947861 486517032 79865182 609602695 997738313 998213896 741602178 999334912 362907194 465251197 522744293 641733097 674489511 848481033 850619664 963199538 672921072 972177074 794745340 985376822 63035967 959111114 207596414 991837232 773585607 952845801 421438152 893614633 219143733 367424115 124772104 568810666 693276325 891636733 604171180 729142349 190570196 752814471 706171998 991640896 168224512 726685414 981926873 993712917 462997736 594311681 123504975 197920563 496725096 647779353 830549608 920239797 249696027 575335670 152656823 274785598 88007468 772985690 759467576 769488893 616526290 803904826 541471098 942819140 652550336 935506784 832295123 934308777 943366606 979166958 408562725 711202954 172055768 419451519 101850341 720224893 433069754 574388211 279382643 727847814 255490321 952913876 313128009 634213083 449984491 499371929 257295159 406141093 513254638 859888969 900289270 994744758 363588487 832342797 970425143 980645861 596996043 855711440 102397835 152297502 791771094 877633148 267232017 382514687 280135487 508261858 841059712 934372237 772309174 960779535 703020978 929647813 90469261 301871474 850158259 970495992 787055284 812247352 582832130 680412063 493419411 509493406 180722744 461764733 458569984 755505448 260331737 669778253 821006967 832829436 916554808 947522756 462851279 945606030 810598056 820334306 410744623 479623352 475462694 757048667 963894951 983887574 657748137 730836375 149303558 902818271 456825871 842108995 232780637 387250281 495350942 948489772 67642864 186778119 685759348 956669178 347565806 407938653 90995768 615920229 953199647 997678454 224711998 647504737 561701438 614372026 18183497 998426340 704467382 929006726 912639757 971753167 156498257 487674801 971327992 978891671 2019099 269045740 408458612 451765606 902472989 940142968 997002033 998552169 56127839 115282244 747447747 935495333 917590331 936515079 706037930 877043507 422087677 615499843 124628512 865547722 89382678 671306656 70020276 394069399 872980954 963755050 755488895 868420538 65809836 684859220 56374864 173302001 464677916 931212173 576687444 843911986 256212083 937054609 698665383 729910635 204499164 749232786 87180202 608094463 255099665 575634760 845016943 936399016 560689976 805718707 139807870 421144406 66144374 383356269 669949689 820968536 444493357 692278261 678755245 783801992 721685706 921153582 715660506 751462304 65812410 135284088 460704474 680942541 985531717 999793140 276970932 571072023 431420777 641293589 465638051 878750187 510503697 892354507 17244571 917208746 569163922 667646348 733832627 794473655 538804270 577193575 952294943 996784406 65160384 214886931 550805177 645588152 686192116 687312780 268539313 410094580 635518601 941787191 117275046 280692240 192121772 467859026 725913685 900364886 310464103 837303773 692574974 776982654 867679292 898326223 731621482 949584433 913681999 978793035 139249240 374752626 605147595 919053640 310993748 997995428 592671380 981866581 810729042 868618835 615544027 871987458 155330344 852427771 903447602 913666484 165943545 182941120 163347994 754563617 825203272 976946388 400257904 824017935 876163608 939682706 673481679 760939219 569318355 891373810 617188792 916408056 446134040 677633471 80083033 360053654 933744914 991633198 598502104 625901574 520691558 904151252 60903839 557310711 656749815 731731796 655452141 764373767 31726538 826683798 838160027 885336698 711125440 941409765 887023893 981396984 273926676 452687455 819295322 891890934 965129203 993665881 29090681 702166367 141540641 258014196 802643078 851731425 639761952 868748530 29711372 950639675 988738598 989283190 811179596 860290373 147055251 950409452 452105617 498842731 440604712 901982307 955530344 960974109 566442634 767344643 228622475 746144847 15521062 115768399 273158917 433575277 165954565 251908028 816729259 823054328 107004409 243371676 693961452 859775917 873828006 907110684 291842417 590839115 320010050 364469580 90665048 874171053 718999322 888681879 838141192 949869419 577206016 917747481 52880905 304089706 532764059 793194663 29103321 133011942 373593155 948281197 60401772 444061324 43887439 963388351 985386404 985809092 163273343 909225555 602145750 765814375 99870824 842575001 602126836 618374507 585572102 747261508 229236297 465367241 89882130 532660856 778574454 870116328 985353402 991274988 779356600 979967876 320888786 478126833 208137832 705869386 753069147 765267512 682383335 816817904 56716952 675791030 250231663 596503053 720626574 997869535 252668053 619911392 492733392 905046915 808618053 896124796 427754191 457635627 437041304 518968424 534070671 688092875 188992233 824545393 310846600 757932765 1578090 700520880 116807255 479751668 87721572 222354343 800407949 836329440 119847587 144015667 925131853 995124021 654741295 723115865 561116415 897219773 59349739 978784474 251129947 889337187 299733597 503944207 302499351 580767216 847387953 901779925 375340681 959722337 368268229 824059525 830743933 897973001 198986877 449509563 200815321 992450061 374284180 953920558 351020294 669535289 351948811 938032852 944412581 974781428 805100640 875766087 871749549 888458296 500374883 537595141 757437956 888490764 590421010 664414176 447075051 692446374 387812255 846768571 7045566 428842564 161457323 980574725 188263305 594871111 145553743 668669135 57092427 794537023 822936817 890271061 540811159 677753973 786548900 886893537 842603989 923251175 159658856 172034996 594480060 740896130 786094599 811231663 908783902 970668408 432505567 918270051 851443035 895461449 816242041 835946291 742952622 746866682 959711419 989833978 923647065 980466026 508831591 631718133 71730784 918610000 326121038 610681141 20571680 399887150 293582746 529999303 654755880 978469188 527223627 757728666 211333008 718446283 488382802 586267889 56299769 853104222 819674590 854542342 455106005 722994560 145973069 444632826 73932902 610186211 271482008 849473421 446650958 974210203 428262119 568935089 287254627 859519600 402604055 579032085 133858765 243011253 193921927 731680842 713029293 924417450 38728082 84454973 366378530 677897997 453337473 605463166 794073425 971724085 601881491 947823564 75387729 311720110 416674808 591924286 460394562 750552959 723102853 855631871 518923948 664345388 517944476 624812329 62580445 988753386 562500568 633688921 594528237 750926240 508255068 671135891 116856747 417239329 459033386 753673302 120785566 523263151 27112747 194875323 538111829 604841328 653964370 795889379 935740381 972716915 966823401 991710208 797497001 804484254 804601003 999567297 399217818 468249360 988758960 999852737 569915492 966150506 23374881 67526680 568042956 936356668 407548098 633920984 495837024 522630785 252868478 712241869 122294582 999438403 291705002 800718952 523161796 911421335 16276281 879003178 147851811 619143365 521603842 799976847 50226343 917496269 428812889 962828928 204099359 381498793 539808321 857605073 587081635 752421363 382756161 697087119 115735139 969883215 900816544 978438867 216856144 486936462 470757546 718801186 50502993 444561252 752832022 788522597 957374261 981333024 318932368 577064055 844047862 945063786 682981000 725425413 997781900 997820743 518191965 713639234 725157078 873335766 977234016 997691071 946370713 959571548 332263615 428646836 582484416 872149831 651097027 760613379 283843829 654998959 926065659 973656663 746602433 845290994 442189518 957045282 10251557 267534847 907169392 932461122 296816966 547926316 887116087 914724458 620957468 800651851 433963168 712202154 104421100 949370840 468812913 656881373 946121956 979401817 949444518 994713236 332182645 503099859 53765793 755423621 886060309 965445689 327727620 723078904 112729721 500199244 505078858 667984777 368476777 713214344 226918407 472618823 984187248 986630948 61048788 165325551 395460684 407500119 248981700 772249169 833308044 999956323 693426709 949809061 301322373 798139409 272610617 682862168 359266196 726619147 424528656 717222206 385266274 854412105 896786979 985180137 790694535 963464458 489620268 992094076 184831571 820467961 351374780 796230829 382668280 614026839 90243738 500946408 787406618 937235682 359945617 555217532 570275545 759478261 13754006 662363019 787047009 857271745 917217229 934672648 383746070 652508676 900435062 995412205 833071292 935299359 297805880 789689880 324023149 940184388 980110628 989390252 170665220 688014573 646464983 734712209 979999475 995543219 253507005 405806770 945318486 976321858 419771165 476888888 173849354 972819163 596463287 839667539 205347189 587376502 190609274 907508145 136558801 357843750 414569838 918263132 141608594 519214442 563358983 901372576 900380406 952447902 902215065 975714444 600036483 671807574 594041177 715319436 856469549 992480201 255151697 970349313 75236326 387108080 713239919 889317676 52029263 842425092 639170277 962775057 443213370 808917882 471130819 766103133 745080478 801065939 996726535 996846543 664045356 900838496 841255122 917975389 213186576 937363140 180301207 758327008 614576226 765412717 554944015 968476948 386279901 712311831 243916841 532827557 441401830 508824021 912810792 947410058 493717796 540032115 64755538 220793507 686181900 779957774 103854301 950375587 659512657 864167327 878436929 987229650 929933137 950368582 897295025 969609604 586906661 665208903 548419396 921395379 874292293 966146876 147429839 453574057 435852118 609419756 349244774 793539387 119444841 464730828 478162698 888377857 708889303 884092155 638510393 657305964 697335391 884083824 712711974 841342640 834300446 998337406 59194960 619382686 983037561 985499071 729658797 901360749 790782701 991350099 550394180 838400324 161009640 384747797 595779026 754461593 217830729 563865254 829668827 998596089 816301340 833784834 119711161 180800453 598921154 754016101 611514161 900364561 377069639 655336771 210002983 930276245 733063714 794545424 612452103 685421506 863345023 948491408 316216697 610901197 357304583 691051528 711696565 810776503 787558957 914672217 955374509 987544925 583295992 624922323 814526702 914569545 419894260 895287655 290189286 771396801 935384239 958428319 417824432 755416019 495480787 986301080 460128067 854979944 113717565 877400400 253682027 470625263 611099624 666667947 44170904 509032903 466438227 651674630 997539815 998643469 169566712 406446230 853075425 871206184 901458964 983925384 625961980 992184597 335412243 978164551 658604905 923844006 36025092 522054256 379433886 772298717 546890477 717749325 570470263 660676530 156012504 988686585 81231414 736276248 229640902 880830886 640159052 815476592 723672629 955188372 553216201 762567579 51010577 519519923 717826800 856583474 690454996 923828768 61645196 985090618 164428904 398905234 511612288 993782461 421214637 550971993 280050553 656415607 209137413 777966567 975100422 988191942 328594638 699511630 453529662 555290300 669209402 766994346 356331732 496842299 812100995 881727318 830852797 837815814 903503705 926175320 12688356 799404978 886227717 944228768 157317686 347049037 547028025 958583942 220771284 669009113 841075308 858594619 345722295 453637489 395258649 411109362 712312073 827244360 609613373 782738165 228402156 805744094 37856358 135960420 290056438 563125644 985226809 996608208 771572873 939954469 722835064 835737086 912205006 930618257 813628099 867336911 390731054 620860760 486291445 866566685 894341104 941951183 178973657 884352440 29043459 649614250 701972499 833189555 497858 78136182 815606121 836349520 614289459 738008893 486036597 646771048 45515776 910330751 572882136 865163325 447641984 724656334 594487486 733699636 523058202 811095345 714998953 954040527 13343740 234530967 783109832 895424154 103179133 944154889 596639167 883621825 322171104 626768478 370246299 511733601 350251443 805673814 233910009 604866631 434534858 906565022 574426606 767890389 912974663 990746691 823445681 836981596 530137123 634212239 806626715 866544054 112330312 603525662 733674589 873432207 769625187 903972229 427654270 828851580 626548983 641112265 559188672 767190555 272502934 720164000 699484750 840734668 826186932 833462519 6512223 128476550 216416318 265836407 480831590 907191547 1055344 148810240 532817785 764641917 25096672 668953956 326862545 801286462 903872141 998594719 179274831 913747176 850378069 933205622 307661558 988507775 497275416 731020765 3786047 661779705 467657911 970695425 268494282 851225924 893438296 945939594 812747368 844051655 513085771 759763739 120439510 283419138 154967354 411130939 761338651 948798393 593987244 776223368 974635591 985509046 518328585 575928437 823058471 860550303 543359862 844595779 614774928 848082525 926006155 951705444 709925554 737242997 532788421 942251304 726601724 924957330 822960681 921625461 732129069 761473894 685504483 934059760 733263827 873322197 11205524 697269604 677832037 834608093 94880409 766611771 13107172 288350259 496014683 541264629 778953384 898540262 419841324 803923605 261895581 485519044 127205013 403291011 931164555 946722287 145881918 867519605 476542775 526016469 53395794 215275513 930939585 951775251 868877731 873373729 472340361 728823062 487364726 601804069 163858588 607003495 392059647 451224964 145074933 874987956 781901683 928049206 232386914 591772976 528820254 901654893 849985107 970185432 913103155 923490709 54498897 724973271 578635798 660354387 793132546 867796056 955018380 972833682 914827119 951168004 106779572 228872293 267116183 483518820 474559566 946660196 718076539 923004125 380098091 899352923 990780053 999511951 891010204 909611206 531384352 833936880 725736309 748017735 116132325 594012103 23187044 820455232 3587556 461264173 154718640 185528788 303136482 877779430 614717308 643328414 689154990 864481529 346845962 974565398 761798388 942287527 664136751 891191876 222360929 621864636 894722441 915026173 60394453 73361338 178032947 526369755 716487024 836552481 87790485 837781601 774433806 935396546 938756262 987796294 721531566 862315751 475247419 885319608 508193309 525730875 725357383 751842398 566194601 683116571 249875333 303475596 26890507 594732512 980291817 986582353 643536899 953608716 243179589 588946605 494965813 869658135 980969105 982912262 613077796 838872296 375414033 455368801 21448667 941039610 108065024 416270601 174861530 602510615 727408906 812440919 953482101 984477983 186260478 659675373 632398740 933714390 414299974 882835990 31018948 823513520 217642925 931134806 61123751 693265979 492858155 861599302 532349845 655592172 519589790 934975822 119315347 641921155 818571013 942529149 952227954 979450869 513927755 947717963 554941321 745810001 44173494 63999019 226392978 537805468 997927038 998586550 343007106 650361847 912018886 967647360 680464615 945456897 949581145 972255217 449590155 506305119 128740318 365893555 659043039 899978539 742344253 918124380 551421319 928436466 1196864 926718507 926758977 960133753 368349596 439899821 882357861 920868639 614938246 840803222 410858980 537824650 54904711 210141073 542469019 671840243 649887665 914688756 700385122 765126743 71433925 810167862 91835099 424366340 158937332 889376928 917256478 943586733 131733037 730862523 286244211 656272577 813286433 819838011 367275840 575709937 814029850 892620155 636231185 766469780 17405507 728321157 852250264 950185717 531828193 767943182 546005266 975488943 649222304 910132059 584050376 908767476 935487272 981854914 753765155 868202920 147995677 432292535 612125202 691075549 50941192 167691709 660720913 978573488 194304763 989942643 245996982 932470907 421056575 820026193 233645857 945256974 59256570 424498614 169739727 670518959 822433364 902027087 748784165 970729084 953730083 983370395 713333914 918017541 117928811 244786591 327170914 344181165 934115017 954380560 157226714 461362120 97449078 433930104 212482078 411706453 476041563 581731904 274545532 393616902 991589447 997034908 117114383 741673091 624632891 939856349 265350082 996087064 618507415 722819002 544254661 628083503 565143831 716121887 158685337 232125495 463290948 594230418 750737268 823632763 956075624 978676035 719469102 916753439 771825425 850929958 432157432 589978153 411227639 913008997 204500937 534118508 77122942 543384134 391953058 505727806 134308002 595007358 510478404 583756422 745393022 985584961 68352696 430420882 18227533 503905147 351178967 732941586 413701421 805620149 903570154 973452203 792962064 919494173 277989221 831751523 134313735 526219411 590254863 822826954 822187143 993520655 122113725 839294746 395660118 675676183 136353376 365511275 853313137 925537351 679592094 926966034 622658300 970262364 801199547 807993330 275790129 780618738 413322398 914585179 598679756 621390101 463394282 753513602 714484353 819477214 285401478 699824095 607168950 971712931 711756195 771606509 282111049 595528106 396144014 446331732 959677188 999004323 471589041 480020021 488917835 533898876 816469699 825815135 435626321 987869095 669725845 936826095 949012868 982154130 226290360 801517096 830779222 845773895 854649614 887566983 198201266 731504533 462141689 923644533 8634597 229332552 540784408 792424771 819280916 911747257 957596177 959100296 489422842 747252809 971494325 981227514 279622892 328639961 612510407 913911735 901672841 977604218 977562076 994260449 801023509 868811693 25646247 536699512 10636242 982169694 812327917 945371016 195879091 271568255 699593382 772829021 464801764 890505896 740248506 830157189 794814142 930573235 590431472 704518407 692431657 827697407 577422079 806025114 795925759 940932646 38643982 140475444 476576350 822921373 442745516 728772432 794166672 856469423 270370965 926133755 84031941 204133512 705442863 958748191 533436480 648259845 71611803 523895552 631248481 962276581 789342896 982683050 401396449 485809896 529008368 951303105 514520724 742845702 978724437 978747332 314658737 705846391 949602324 994231205 247882165 933057712 767607970 954053987 668587326 979170057 871976396 979875817 229489152 904836433 823424652 841720469 360073639 823185613 770388179 780779218 307766984 822432886 101405052 291152565 411880836 588712224 941598388 978323937 163956686 272483787 287834518 582911452 529491409 648053291 787386846 823882202 307953093 516024115 980085636 996713732 801839094 814433608 618504932 813096574 96700250 382333970 552086780 877787635 838387664 845982936 475167959 552279239 507458159 856808425 479084674 943680509 21699478 653898086 812582487 848101374 185696504 276272331 389865073 821673759 271516685 623184333 564471369 779816904 48093849 647068786 599915062 633798428 276606546 655777008 746925481 885802905 563826964 776359391 213797749 672280617 883939227 931865734 830678744 833536373 205015720 369090156 666889742 876626892 434126802 713243562 367093632 392934349 322332783 609420887 31932047 165530292 791051382 851720267 57333856 232352995 685692655 896442184 73818915 164243405 332895543 360788807 335575110 776704793 72795943 509995102 770949850 985330009 147894403 485028011 40972861 924607300 893065119 935273364 834154892 940559146 752333892 936540144 939607954 977271088 367459843 455254153 572510145 949917264 628526496 805080707 796048704 865834072 949918730 962941768 314168061 816211550 686681599 936322026 573756665 906540162 895187935 975420230 764291440 977982268 856375576 986809380 684782334 931370939 875026078 914808845 821673593 892920204 394128015 898679551 687571712 746305075 401484682 573647656 716811946 878030116 775308844 997256731 491692827 701570686 807009506 939639717 65446493 731242494 432101334 610508522 519749522 524266361 65525938 239619099 174482796 459265608 912132594 983588284 787873566 839741713 605827041 860969335 921542899 934009606 40138809 619037569 97343291 233483638 169323198 977756438 417816231 448879334 380460095 455392701 605811993 954030408 562499887 734936619 28388225 889598452 174521444 955013162 19139783 390052811 952255667 963961320 371911206 928641269 546835322 887771897 818711700 960914228 947508925 987120151 82424544 863072784 974022625 987320271 177693729 552252820 522339178 533271059 662385892 877606375 636983757 842261502 211523237 256582952 970577965 980407963 605684110 677394426 702011107 859946508 778843550 928070589 839396078 955884583 488059474 773225133 577074359 639289609 386092411 509551793 504776128 574768472 808810495 968765911 597109333 605319708 874037403 976923842 313116722 720954618 399848591 498870247 895026124 941573944 294361385 360590921 767204542 817393440 72755693 413311188 110094914 951131788 316177992 899564305 826756325 960611036 22925285 234005350 587756240 881423162 193761529 778790426 569540973 906230942 464853374 594454894 221836107 541846886 604040599 970227267 851233813 962453244 639492424 932336029 792203944 850799649 353338460 463103064 88039896 961362389 430259304 544211869 820523702 924355170 622441377 695390764 867679928 952477364 50414807 442074149 665367349 915497999 761470375 873588129 953614345 964403256 437616512 509511822 196093027 415824585 82396937 99092879 146022111 652499025 976741367 989318039 507818684 594627032 735934050 961266204 38612078 272321936 144315236 444728095 742348114 894922798 65803375 752543167 501447851 907812591 418343079 505817193 326525728 538873874 593895519 884451420 724562129 759140275 426554262 808931584 12406314 745598608 224516395 814857845 956015431 997807309 188949092 681596673 325006678 506150858 521361489 857957498 309635226 480037076 39328768 938820666 511191068 981940919 273794002 639660180 866361942 959030494 631077607 721567159 214315733 435692008 210642288 702851215 18618598 457130730 244027242 312060239 953028334 957853622 128630479 196560690 637955409 830720788 133662772 335404525 110563832 664285308 844267165 885467119 303931686 426563658 673094220 757160381 324824098 606226810 795203810 822748265 885137035 940818808 990124897 999805087 627294520 903581509 164908236 901943341 635232514 982522669 874410998 906885678 261171274 521907851 352345657 705006238 342884730 879477613 899375861 975372337 794527630 851934520 239851734 549986125 573990773 582637412 963195418 965131177 407498966 651403343 853950626 983809276 684709746 765657254 474798110 796138657 921182833 930267687 183873643 403979414 257873931 337417242 12642152 927577972 744368171 953496717 773827367 905659739 197318083 429070648 665321143 948452886 722178897 913661437 528391750 760459568 863075386 924091898 843263204 956210298 420972035 998431677 263365603 888965330 289949232 735308512 121493770 335310122 11266270 184949819 960420129 969332119 669297380 740640131 988505155 993433830 278940545 798866804 878811189 999353064 111569528 345594749 186113624 385917611 393844543 977021286 273341503 573341518 273404676 995724553 698325054 935153974 530353525 889625980 576742541 775227783 424571093 679755993 97507454 746722527 962250642 964804181 80937116 744679805 684788446 787105624 739957262 755681362 89317091 830249591 881713739 935527943 362906447 898477820 580484947 623099687 149164860 589457628 955936344 969806633 823596893 914721601 617958874 645908429 153152858 742099195 462904686 660634831 987329984 998420239 381970046 576239397 658646571 893954954 956092496 982486864 486175448 570604780 436380879 766844974 206334975 325303308 692239488 889903019 630243613 940298663 310748038 430244448 617384735 799250766 327046372 543076799 109379226 738484406 634827488 639038927 349068764 831678915 886606154 931348328 78286777 593969678 366786342 954802177 326110140 891366132 196322387 261172677 26959502 988910117 104259124 258731976 128634791 947667142 657883919 984350562 928680132 958714483 293989108 520498407 915247980 997862059 167230226 714648742 620131534 685118027 531363688 789217949 929736556 976056890 987184886 998807866 721201319 764049165 157849686 977931264 128330313 859275540 785877899 893264856 274938919 822382621 151244512 444383621 239696393 303352993 375809948 558269685 690994210 751399470 205594689 552958315 934607345 947218414 356855024 895036053 465047220 911076698 464257203 884489836 878342828 929939480 840362669 951905147 907220833 995584675 672442517 948095888 620927137 654871813 370956511 476593081 869881898 911957068 688823950 927401097 471979097 534278659 162487912 685027611 975188879 978550266 299906617 557627483 925851905 985069705 419903101 505445001 616832154 863286179 546886966 932727275 537391215 958297815 826462339 935172462 336040301 810376018 192251569 290197666 526093363 954693333 924707625 947628225 634271423 831952198 980798937 985820627 608174252 978613143 329790534 509106447 668983637 996885993 716999057 983850182 762043150 859122233 853550719 890944255 640221913 981133481 686988241 982758671 340663922 417325332 698481551 986997667 75995137 210006277 694765053 803153195 34469724 273608947 945702855 952657306 989980895 990364296 987356793 994205955 723849550 751859403 448820907 800015628 282466282 429237819 971201532 991952446 556688399 887080067 560086780 770962225 967185586 992300695 40464574 393110841 919876272 997392178 479115477 604284707 566104099 768200845 963134700 969282739 332682335 831072009 677196393 803305923 962354576 983459147 66812074 293528285 941850569 950934459 352725669 863062928 301982833 528373701 860875930 926360270 141185512 994893132 432760483 829900354 819361555 931287958 273484799 411279896 779073799 988506564 499828091 918577965 545344276 612249149 345055431 527369298 732779359 920640096 149622869 889808146 319206059 854393136 778162863 987406244 105829082 274982899 670552155 915409582 828874414 910246764 844020641 985060649 224499750 460007633 372438129 889148828 249481881 977899076 46289031 818147112 552057807 922727741 950315897 991864658 129587571 880219641 75432500 628556616 118125388 232325463 839253881 982151772 462274034 531114421 279611897 553162992 469392464 990146491 254281619 913473969 721145003 953530915 112601174 552740273 592869708 953512433 614647342 740063367 187431584 414192625 498245324 534564316 85205224 511022043 14796342 557057009 918180007 971190032 726064910 889104980 587579636 931587293 628657468 788414696 953739854 994720767 184443032 926065204 762859547 839371641 713498115 935394427 662422503 971548718 552201058 851613900 619387669 653323651 887135133 957941367 753533791 763842632 71049388 663225886 928457125 964358382 904860884 997229729 89829465 634369313 89806150 921812967 648132724 738412856 313526491 769114624 325962083 544585170 855120360 922368003 401113518 741569929 796732973 874103086 531381914 903755201 447429193 597737438 627638870 937954441 182210070 715032211 457786417 694301059 427657277 953026855 49951787 585403843 690486189 857683201 45317099 199409157 464612016 645553402 709732389 881724595 895620566 950645157 573658771 679468929 750399287 984655510 730250843 926113435 14237927 513513218 766134029 941273423 771584386 978689403 193937924 397445205 159347951 903766008 344359340 767919777 830314199 899352666 244979106 936936706 197521909 780547255 938563821 975165899 364682047 753543791 786519465 983159463 17284678 221128863 416928344 783257428 330181368 393008280 284094129 996633228 475919852 589298782 424841360 441267793 487629065 860844975 447439200 851499303 646115486 950705571 139612882 705244375 601540348 978540967 548774874 676329461 302147182 577803686 118726864 169828385 1345489 55489351 957429855 966926573 433338340 842914899 381084736 458249496 631807340 780310643 274443750 704581335 263119108 761116468 520068882 654875199 741930194 881893637 963871535 981754811 842742540 857269645 625860161 815969592 389104407 976028655 416398091 818530486 140570404 792486628 349988514 522326905 570496285 841088121 868813486 920185725 566622005 598145199 943877234 973081389 216879223 549183501 150126128 385316527 995086987 998736484 39620876 70610069 52871863 655620717 27117222 433480945 655690878 859834288 806858725 909818171 574398910 950606736 92269552 522067313 831135423 960455287 338541285 693040455 141051558 210551474 447076283 694312430 135872775 273839951 89009574 423723974 497823768 867721985 416739055 759018249 397437402 418652623 529135940 818972541 848455638 883391088 866181057 926116028 628089748 724159604 76274130 572058114 984624811 992795798 738227023 870140492 582458636 984159136 342659239 383810346 957069381 984335763 164083513 164581369 653800340 812663933 589024778 736203058 150046784 647141709 836690657 929553248 186629216 330853442 926325025 999484685 736728786 754018388 571109722 906076236 266123585 673082602 404992909 619756643 93868071 740247365 389026373 689486901 396298223 621121701 309744483 350600026 554444697 897370885 292179606 910206067 998026598 998357752 513825107 970107046 167084840 996135102 40092542 621361674 783121262 843720306 350470585 711540812 179243414 970536900 956543990 997158265 629552188 825177043 306185855 946299203 844761667 984453785 372368878 950265811 319532978 995771100 798585786 836838560 986659288 991019435 158802431 683915177 617305850 760959089 938444348 991440492 875656871 879563336 251469487 297163751 31593150 100542206 521880685 685486655 88548817 886317030 820247438 862910719 319192661 753206879 293896919 867467131 237313023 303169957 911393959 978909820 348030579 761125747 99277114 318569435 319517053 521574323 615522682 873174578 421985757 519141122 363136084 668475087 733340829 839592366 22541743 141256020 755008441 858223318 912918073 948326896 980883462 984092647 366961409 867470859 683895268 849380862 529904070 732039472 244109518 940564322 78362358 935265224 326424008 970607562 211162971 256353109 78881873 899230397 371937792 574577050 350871787 957052550 961366801 989338251 291934626 406554752 902668357 960833123 618942354 620563418 545339542 994819156 395826822 577620164 359968555 478629287 480808462 789325777 645587976 892840351 434890439 594899141 435080115 549746835 733319921 775268212 635772879 834966316 191046521 951476715 711775656 802728128 466195761 695479441 505839368 641707554 129129908 978967787 627660185 767375534 936332514 956200511 244795512 854377408 770732505 895109767 213629879 689171600 300053985 997732514 115899916 178441271 732858304 850444443 93420385 670595851 788063958 809798025 157905252 742599459 570484127 901231706 616972559 958512154 147349982 264533675 359174229 599330129 217748418 241717675 822171365 900327046 265526149 510013502 306011536 766587311 970252328 999292613 608305352 659111440 201997139 995945663 682405454 724764059 555212140 672482949 503572257 608471372 715730456 974396222 582989624 756464170 801961912 857535877 374448694 980124612 961208710 975962955 940463767 969866706 335856310 350267741 574574171 897818022 883584653 950938877 366199125 672532002 317621781 683507422 649128221 858386033 419856831 917367213 572702294 713017007 342857736 497205774 915600009 916115946 875055476 930522217 254854138 309532729 763454326 881152756 473184699 495699837 634741197 979212531 663024942 790618606 119946521 700927939 502039801 519219699 676740477 746875205 200422968 504327816 635443678 834673439 594198337 641295203 752353445 789848981 722111043 828771079 703785972 792159112 910401553 949197894 753777374 765049213 603214765 625648218 722055322 942603792 894070252 916293717 627693227 945162710 291860871 552319794 25030007 531236481 43916517 982773895 213692809 447406726 397408028 922983103 17146704 962486700 556938864 594912033 590592138 831790502 628112027 862373119 447433217 998267897 883125930 902070442 728586099 966415352 944038968 944565077 191178568 401213659 519857165 836889741 71670952 73052473 915410076 921148937 308038299 655449155 697688921 851744308 812530548 873325455 169681685 514125736 17961592 718116946 651456915 845900789 319365000 553990092 203761993 927032279 835892505 952343584 598392183 755558015 118047586 738990923 69998524 215621456 601545997 977142866 546021480 839700994 6387106 268090487 596373677 837001464 490230440 918377285 682044039 691861730 420414618 442624419 68461632 232998505 606294826 973853068 514831132 615315077 597915484 667895770 987793573 990317074 250782221 785657069 906483067 912086417 883257024 973573467 463039284 978441577 490775769 820993980 157273920 539283601 313666369 563569089 730206528 967577518 960918278 973516537 912959869 949921928 975603177 980333320 534407756 669038277 544960477 551347081 430046637 838683921 961849017 990116606 566362312 769111425 180166665 881781743 757188185 875866183 735771614 893852945 368588727 772707387 270859184 358644883 492541493 619385323 277262302 570556534 912654320 982729793 118141594 741521988 423087180 774719459 61486206 369214612 864321424 991279357 755877478 759650754 96138512 820104980 2588749 276319849 762346298 909592834 876410472 957096428 367461011 512366292 962901998 990030565 812949670 927281478 119409778 291352632 414795101 550826488 43160922 885885071 758484501 930645391 204423319 496534697 854157686 866314775 976436844 994505776 415751050 938509148 14703276 274073059 544616324 854461490 243709240 305745453 996016461 997789624 107524340 535283270 418389458 726300327 718481692 726265659 915215232 982262719 817295912 887622734 476372741 735893134 233005551 727312944 979116303 998799534 682437840 956378848 231695700 710648582 297692870 935903613 87576214 409572899 220904567 336151310 533522147 981061824 296335927 589342204 459556334 617965949 486165393 716694422 805439875 820451216 751392932 859665941 920491892 962762538 423084670 689773898 362277670 630965981 167214991 554018309 755781937 808137593 566480182 924957728 729009453 853610234 12767999 635376504 620352565 672588416 262318842 676538202 735537646 902846516 569728419 818708288 734408923 966309904 711550108 984062801 693696267 713474781 998023741 999418721 141185185 718473872 921850734 987866326 721132639 924495254 500567856 568825090 231682138 674045440 693415272 917007643 812509774 895596269 392984000 790403477 902195412 987277044 872979817 905235449 472476302 966314113 816062135 824009538 885826790 928315483 389729391 638229294 647599396 920892112 869624220 994243175 335799144 851670655 682366532 727275907 579268614 616037170 710152332 929983069 424645359 783787431 366383149 434838034 817151834 832347310 927685836 973874469 542616229 858615054 722887414 979638246 811279901 977659462 202666235 622289538 887815952 947707751 960886685 997193796 305108767 689991103 479089862 751835469 986335318 992295363 199426497 852256693 22380752 109306588 549475329 862150286 983660334 988412123 948655191 990375926 634696707 745088094 204038653 475846709 237311962 605164965 715871248 820567811 307649134 820666820 486523656 982424103 706989329 980894146 632813826 761356030 799721811 834315903 868952107 948697002 754335113 877167551 473648387 595811717 762596217 813011339 130347968 369218542 643261313 855423462 59608030 548238071 993360058 994591097 504310172 591191562 677987302 761284012 201343470 219948989 261507574 782979752 815507507 824206491 968258130 994396845 757171244 800395571 788703782 940845049 137377442 380577568 531774674 793687161 879478651 901869944 721440977 965254936 508465048 831353644 207691189 944234157 767174175 778038025 266337153 938752328 986230651 986963540 271052544 540904380 704785392 736538971 755748634 982916315 605722470 606016354 158859267 393284202 912948427 968154379 319062486 409262739 325734142 689490558 517259004 784452692 840358543 916941570 13748089 19915931 751490452 889398087 59005927 477971839 873592734 967207136 24947157 243572721 774512315 949030928 329138487 974664388 82455854 624205707 446573637 582134297 352956795 699838710 795311057 805944849 771256773 891397260 952761331 971964104 100630024 831737698 805249599 932377798 901628679 926342501 23631630 326644818 151889749 242337924 666244407 942559049 278663781 983008839 250089471 372019135 165616060 506407714 220039050 976472347 926590102 974696129 247070862 857265320 24182586 118432856 354600123 594211815 378419206 568587336 120576620 235314176 552189122 766166245 485689145 555883580 986029199 996114475 173171146 528629707 577856384 625536202 381741674 853000421 638726071 832048411 872921126 997537571 225749134 291245443 639762696 950338764 761240925 999267400 658304784 875306271 847983428 936076969 741882685 988821867 44974547 917649550 887967230 970692350 674472034 985870144 951317892 986206254 763010979 894658212 236136462 453297569 108188070 383180341 170068088 633821997 676612079 825650084 740254370 842102674 819029499 863664190 870283931 971548358 593567902 902145859 913245578 957581237 906324002 957902969 606199103 800438462 463735472 818658149 876463418 898954416 155465311 780029429 934035363 997530496 735954862 884883199 37183892 637271046 581701921 998231609 612093382 975665038 141349894 371114344 857969821 875870030 632539466 958952972 282244450 443336402 152589459 651669617 475570910 644807982 519348497 758624373 510164538 920068324 474594432 906788481 447021885 651261004 328515075 559043271 35822138 268238664 93962187 191627705 256121124 884887896 102124291 212357557 966928000 972622111 186847859 840490438 51508518 660163510 426573047 717226855 768998203 853235365 635613568 865388471 536054252 940285629 4486653 625170828 442331744 478335070 450829342 810643490 645801537 677060133 68449104 613167220 461916702 733873051 20665603 601245442 330838099 601370240 438634538 749696928 129662734 774060374 857144174 962085423 475406310 767411570 70017986 195978246 441466333 856100547 263616689 942761244 252004652 539151568 191954163 228538716 991155302 995329531 699236690 813515548 680959200 823205742 648491457 697856508 121481016 309768604 624446975 836166309 536827213 780008745 570325732 893633053 349798185 963788150 912306212 949968259 7260169 688357726 643929353 778414685 785398418 980299937 667129322 852497173 964764640 991096299 211094759 635814154 364909789 761739772 957031618 969364222 978243545 990940900 550711393 772906250 95127128 877746972 344304193 548008782 667413929 878216208 40258195 164575429 926820604 931179496 46854150 533079589 881899574 980030632 751444962 817695911 35067671 680322623 891196741 981059754 896559928 933643635 508429684 709221918 249911557 445238396 806834985 953848583 550600896 715800130 138301064 792829611 730377403 765339296 817756291 998682984 185832199 703655666 584355156 618804994 199909837 872034276 531867990 694458636 733284110 787082963 22178836 760844438 562602839 671551013 693033078 778675076 63420250 543560213 409566252 508407795 760011140 964250157 741668773 853044345 208639856 575186094 965727587 990308649 44457187 240930273 416459539 808156281 667493520 988513244 731896938 856946533 887254011 914478587 433444938 609723308 138155924 294211671 546926550 654775859 306663834 332719138 787675756 985787157 433717066 708098046 94319050 525200999 18443795 361240259 635531343 984868199 535738497 808287225 671168583 712527821 761102952 837631109 628705817 759261661 967122935 984659208 135696974 539806261 110736200 918402909 363721598 796406874 357570027 434211393 103285444 945327313 575749793 946865749 249368656 714753413 705198812 976553664 450811255 676398163 945575153 977616990 156044341 246123883 59930459 633844402 552286629 819564912 533389036 766440764 589764220 914612294 675858533 986960930 94431933 990374269 615876256 655961139 479863681 903262748 230671064 269049792 129026451 433442041 518521105 938926200 98474058 358489036 63055274 69315689 129441056 559966291 524158337 814755384 802103850 995396096 495620709 638584214 644167457 935293764 623542586 863695757 830971850 910882662 785049450 963189723 735317694 792638881 214532428 804864237 385437697 939810145 852186149 881711711 426474767 431572917 751263712 797557882 945096983 948005546 461413794 578878944 452112169 903518650 239661038 527092601 360036573 987744155 947769363 951725959 844927383 925094012 648075192 969124614 934179089 964963354 235860555 414020167 113959771 187955856 293995562 346403577 552562263 746823191 789409207 952970894 960536713 992505802 69866321 274652984 673868133 760829681 563643131 602093999 457995827 777932542 826385460 899801229 592314729 751099085 850793384 853635311 50207749 75544759 741868684 849491475 484311478 633691776 606107917 677543110 656523534 740946683 265867557 385895656 530671084 830730249 740844961 806028585 290731427 449434880 635122069 719038752 787012319 972589544 80637160 861742561 609703629 681035487 528403143 885701757 789666497 896746856 445273724 994286507 363512868 535004661 936587942 956364361 45472695 924154726 218103142 638166286 124383591 285672841 525109517 795711582 627850549 797728040 718624082 849514558 248549979 900160000 802691084 821427142 755923663 808132107 308032848 673001866 537977930 803076848 382247415 813596102 143666476 535790910 140317259 462172761 510088277 611837335 485247272 858373527 513297247 924286462 737182509 896113469 395036889 624528502 361162285 711387911 194064767 744212936 44983907 518488971 598040155 607508395 60099336 121865092 991728528 997519141 362079440 471492412 881084723 914612269 733546453 775420173 127956431 186795549 669772897 750969040 660664442 864162527 258070307 993990872 318112830 558405757 361405556 412095640 333533524 975824371 256869796 327054225 310787396 727178405 761909753 992384086 339576703 907695776 293478141 972356777 600936359 918411847 48062826 819883612 146468154 671267193 24737174 379068585 85513064 421726772 518405659 857249956 989931009 997108682 126746513 960740030 670197139 970759782 521912868 536879624 701255046 956317370 974382005 984000033 638537358 804733866 343123334 868591631 817559935 875559793 127598008 450344608 341285799 888661193 754540083 997853496 897939238 988842817 503097435 511925307 851142811 985643912 885842524 974616851 804828076 808041894 258537496 891563972 43995815 509195761 984478657 997616883 839895275 966409792 776161342 983278440 692755052 977110758 71844950 81631328 631995959 925158849 241523392 747615243 958693279 988062311 474304417 923719199 228795591 824560653 611757710 990184450 907618497 943871401 45381318 134731363 42599810 888441350 635913869 717064911 132477707 313383345 82044407 717660435 511169374 907535429 518773890 610669348 861728210 970423218 24074641 508656123 138983661 409740734 5577897 486063877 202967451 623003846 63134284 913238030 288132840 315567440 948436237 992026734 865585036 919127096 257197661 417119230 947414152 955431020 444647566 695621174 193429232 994830070 724282343 849984563 291921763 492937341 27516111 828701576 460724546 621155752 2589286 57037656 164013439 916517581 753532691 790057423 314309032 391358861 578016262 998246076 853390078 885197537 312215592 793289685 806468232 853129593 903510883 971186058 512073361 855527231 549874445 880048458 142809755 424383091 67302893 534279646 201727329 300050934 322806696 808819389 61331840 485890985 780080098 916358189 704820756 972961867 976939043 995613427 724533309 906385342 397377344 935462809 38199826 652583857 930041301 978589508 482073222 986263427 713336189 848305211 723743696 755189452 213938853 821195730 573903265 952560841 482710092 578742208 308837596 597199246 968440718 968647392 914633072 967434911 400871739 738209283 716955034 846148158 656545428 853400644 394132946 748043325 629449906 841688050 18446129 276900616 430808358 632682352 2136687 669324208 663566047 709441239 385534171 540578690 300387774 929745902 219982196 320248443 177437197 284468897 25999247 786810917 51881615 506282319 713280944 936413016 955246178 965115541 202622239 433343547 822696526 831954585 228257514 613916966 138312571 393493430 712662065 987750371 318674297 864204018 630740013 916961900 679124141 891917587 69200029 846772269 790472027 983914397 572573383 803951496 114609599 342503160 333798264 740261776 802867534 917509253 942627546 967629289 312534147 802908855 728936780 795088111 126050332 768846454 81423202 297228344 463562945 923957640 62660132 927513909 833820314 960956868 681374184 853687114 554275020 775892353 843154768 901046391 449120685 929110676 737389949 750582255 446039311 967487793 330627144 752631817 918075668 998919809 638517569 788499509 35530020 201913295 344315493 956145366 714358048 939754365 558097104 851456974 121138686 149016001 787458234 838175970 50326991 672116364 659691821 925820203 57321805 938985118 626134809 748195639 174422165 714121141 838459964 962912592 383205924 596848556 898478525 978783017 668903731 927009601 587955595 613169899 748464505 842607244 894300464 964236371 179964428 282872366 887394380 911887187 94230813 714990621 88154976 721076677 650797950 822328446 896432275 993303718 408958695 688690777 573046540 915556762 458281451 542451008 818582900 991987350 620014124 703343453 941619583 964076591 218743453 844830622 761792029 928400805 73520287 977792980 19721852 739082761 38691316 876069253 974526561 989150498 436957284 520607914 203496108 316039504 178423501 449055258 398061480 591565314 834859373 907814260 597924965 956266279 882588996 908972240 740646985 853279681 289659279 615699662 450913355 690013906 144847222 943553428 216541399 656918889 680614666 907986130 293411525 337638747 382625948 735842876 580894190 632274830 728697620 760589334 895685699 948278642 312921782 367902840 407554493 715881142 606602751 772017229 493791218 501001869 345674187 494090741 71556533 710143181 305716478 373911439 76214539 105096492 176012232 178310043 169808644 724135526 527279515 678689817 962798297 987064233 469143896 694713288 51976769 193648938 839168146 896399821 861238073 885874640 263163394 931068546 631202023 686601064 561599108 661870696 280429788 690957483 682045472 969100391 957402649 964856200 154040852 671185221 523580552 577781903 502215540 906107592 73270942 283354216 755041823 910314334 54017164 753863823 791797488 891075094 784557795 870103492 905870258 949509916 267207635 963458142 663710124 741344487 524826513 880958686 904766906 940857692 719227162 922560097 394994378 911377077 271731342 807558877 721528071 959615191 819331203 852120667 492490014 508377633 370954513 471558472 969707525 999852222 801055521 983697739 968632475 987032937 180652871 384238067 178664912 460277427 854084781 923397943 129993388 649491182 950041757 958902594 748351936 882557746 946558980 960270983 679563280 969164625 129775247 673212093 630345313 884099389 902112948 921414327 421228422 567263912 747302668 750140245 912605024 984399911 998381545 999797121 112935618 197173667 345360612 655046130 986630975 997732692 63372381 798546060 236866070 820731497 35045792 916098777 547814176 803920317 392103558 748268705 827947256 957109882 399035638 400120914 663931528 762007193 472195738 904093078 971157636 971737893 316071937 655866497 128511654 751772549 547123362 611174513 130321151 351898551 351337792 920446217 98976875 199633342 895878519 907864440 1496968 237154998 623869559 977746834 88945054 236592884 503734238 890754267 993780408 998699034 453389411 995474529 809069417 887762975 408191665 502195344 604042917 977960315 572936819 938511501 238987030 763284910 768389922 952073103 626018184 892360391 612105598 755940318 872171454 935774984 404288770 540097312 839956517 857001994 785785111 970759971 701857038 982990550 339754485 714056979 626775260 648469631 323789693 875769216 754417306 777152820 710108274 797933555 34972407 185086941 651872304 769645707 212642522 879239264 755339183 947221567 233949442 656827379 226233171 265399128 157026466 633071043 189309707 500082156 334221631 488884620 112059518 746853995 255942237 296875203 133901871 627861458 119601378 312681068 405834733 493778303 372750585 608653314 327550706 950770214 663461944 856751659 258868473 858030588 718988344 987353578 792433190 883968244 819481558 918372582 466268592 905318848 779437426 924513598 485092496 705435980 700106885 925152270 355725179 551859349 804877036 980779000 989428132 993325540 257447410 383210319 57376946 308253549 465316525 559621831 206810926 338949901 493642477 497775285 347768327 387063396 185048281 922220747 850651032 882852717 420022039 615912435 187921650 693567193 262141616 910321441 951157668 973251240 609942636 878984181 570082523 596013223 663721877 986653685 112375271 733711185 98120084 557960397 743119870 940768645 229332067 670553482 644324412 726046260 234108414 945924643 534453331 786348770 281731466 534731189 785605467 890337220 344695736 454275609 630164986 943311109 33490559 214015619 665387022 702543414 538883066 740239637 749460237 963938483 844712055 955702650 991469793 997061818 139787321 426884827 737254937 875587703 579986301 984084576 330086415 375431698 49586406 835784622 947421355 979482608 852198308 910875762 83536115 241577553 840277750 953419557 900311332 989691787 319329121 432746683 91223312 296169527 666837995 741054159 737227636 758397436 419472702 608722758 159618519 696402067 13658910 594220722 403829752 929467961 81256138 715888791 845001114 845204796 411187266 729034312 995880359 999506581 420760297 750103439 484668384 983274996 791289984 906290701 861953684 953685102 119132230 811614296 853759723 870841096 812087511 980804522 405712615 894323738 922334303 952043487 948294231 990758113 919719425 923047995 707755298 971110306 743740923 911959154 7146144 894657489 646874341 739461947 997053898 999181354 928386239 973462263 694771144 767293898 523846737 885895201 75693320 343587818 127997668 602496673 241369841 778948242 810731588 988404502 87708176 393459149 205840311 341872959 387488560 676026335 220074079 808101117 708432869 832889452 664007949 966387375 630386473 830845578 873554432 880422413 673961535 775429759 441225752 533950274 351755401 910914157 677245074 910572205 147650444 201600959 179482481 303307514 62720945 364701555 68471143 231275016 966528202 986162870 170886669 804819063 775968878 995754332 939476579 955331560 58691103 606110337 12732138 714319597 431373888 493104058 383702946 454272310 563499964 699725982 672252187 825085785 258368365 496404050 569535415 825881779 695102516 826104519 108343686 372374527 933620209 998753028 159447193 589498154 285911461 474734446 868218364 953784975 143057201 537738956 223266619 539255550 295574209 611908825 239713554 610573389 400965819 577570127 559869990 568953917 542892067 806888738 426954295 568906022 218897071 902630379 320717753 963475404 577010042 826850149 655076504 898547739 634028398 711101080 614399194 716120443 278214762 483111824 65084396 444088613 990441397 994235561 253372332 936770061 255932751 736155521 325844321 506586825 548744126 800627143 840804626 883663642 160869456 752851611 411295936 548909043 483320125 536703866 758121697 789786335 778266830 815628742 748922076 773649860 606707527 641800896 898152854 987586910 332156231 371481194 42284174 232657919 261165797 853650402 231546005 499724977 227545767 677260841 23239755 843059627 307245891 706378354 829522122 912481760 409092712 659027252 302741798 667898684 701249641 867219382 544413844 691803658 280178127 311296862 999731700 999778616 931202609 970801984 43433568 70783679 293157535 699353298 801221696 866540099 43468071 698663250 996664676 996821635 548364042 882804441 96416266 770908132 143628861 493664105 614750250 904934079 254656400 647990878 175328738 588978151 252538306 425028672 783067327 847170399 659685922 700673954 85605445 685278685 998045133 998562203 65849207 305522440 351864245 730781722 80634742 555009111 222952918 687076197 396809209 808614427 240327462 686990571 509009605 659662177 72138779 447782357 141399071 619149444 288513546 575753957 4515414 633713839 784367619 969411756 573609780 814664147 560863720 701191561 925214507 994737535 316259831 348320556 610375778 940684293 639534431 910324255 843800677 985409799 213380484 577148998 323621531 817157387 839350627 985331555 501348254 564599536 320647157 967422091 484383797 902922279 412209067 636576064 819812734 832793543 510923527 577301801 679125204 812349657 813542298 919809313 956213289 992835583 662734548 954353655 267055770 389510967 348347663 612624283 136946474 655940701 676673142 691426412 701114379 980444919 820394199 909134539 988814004 998208827 441702613 680807119 212718711 459425239 424862941 447131464 596946650 861050530 993907329 995823936 811661674 846474336 51581546 156980468 55278983 769391418 733943912 916636326 575450148 731501184 491241450 672164384 816317513 897905333 933560536 962389527 351767568 752446948 814146977 997661599 455455235 570313703 454789089 774077007 425683944 483810737 81366703 833128889 716471996 729249614 700737983 712385131 583165455 973213131 764698646 922377556 856711572 995593719 644907324 706211951 32728844 749100419 384110401 421061202 686243658 728711955 574320581 985291574 484683277 651576705 338785926 757891392 575315764 986563598 785510543 985345534 212034617 673776478 6642915 629690049 783269356 879317031 82600510 362043995 597470099 908973600 357901187 698242339 666931915 924428040 661973661 885014552 324060938 857506367 994859760 995158900 837578290 952320688 749638928 934512056 473097032 697174445 357087889 563624122 474561844 559255652 907107391 934144782 850172980 866300643 914004271 984663218 20893389 424885970 467932005 933832962 624375962 859639952 276643347 994602408 145560483 257220698 10883740 927475468 767187089 909853741 687605054 965910675 420519228 726532424 75937641 518525664 316978239 702423569 341058105 455923555 671001941 913480830 73996496 425862838 795621230 991924673 252196200 709666986 616123336 873487986 95921325 878559405 613862643 690387154 81589664 853235532 108987942 880129946 498093008 702633176 622911448 939425266 538194865 803627096 726628037 737052084 489010648 555737663 498150574 984212716 805066944 970373066 860141165 959773026 526117173 821775400 801051548 853001858 275240395 618040731 826105106 916669373 326480704 957888590 580601084 601245258 576976651 958766740 445995864 653816852 419032305 877901985 594009105 787202176 543299663 895047572 224446642 933055324 744878579 857768684 621937576 846661359 700152612 724528265 432115886 488014928 687190963 792063420 179540876 398433707 734725180 996081111 349408181 413851346 944568996 987272218 672022234 854332982 683740586 734435396 918849552 948646610 777197624 957860107 852809951 976590373 641477667 817354386 635435184 900878621 2642255 263755036 327310113 375774442 521248268 637940019 349948474 905794356 139883826 582637356 749966263 964379799 762397121 981416258 563219877 865597239 40348557 591718918 423476841 821592064 117388419 371113849 312940425 407563361 925556337 958616364 307890601 473881529 918889653 967573431 605700249 987049985 661141662 993990849 210750723 247568559 820077648 854090117 183146403 825545532 12523774 560709010 423937529 960062945 739575320 941867525 473655247 945892170 671723119 705745383 641979502 710464705 909294817 918457333 514498789 882562644 14213674 109639022 371595656 930773119 426357880 736967874 992812537 995726700 120370693 607069258 970039577 994098599 247135263 690829467 96712442 910639981 663754683 887337857 890617847 991410917 278425455 491575034 173850573 356956491 614977132 661986631 859910032 881039458 750900273 907399494 959629612 983449736 445696846 787303391 893541914 945548797 622292538 705172360 940076993 992900978 295226539 324937815 719887121 760841515 958201633 990935336 73827200 77802548 397288038 893457659 754354975 943821001 687831422 812300460 510294760 671461145 314142198 786422320 287244394 584344806 632018457 927557768 367648645 572910705 172514906 583367334 141761560 171523225 967834322 983260083 377460449 543112606 911654416 972190582 953512531 990567574 568149835 899889770 100756231 343919516 845506584 863998473 551645872 778484619 977953183 999213169 908397001 913222383 314492807 945164710 847007883 948606964 189625928 288028217 444980955 745448120 241726119 557336726 767469337 906146579 685271331 867037197 123457324 579137874 628784786 823992448 131658317 574095947 212295919 713900262 742458358 953567049 389601198 904383701 794200455 988263121 907839428 962340368 843420186 963070456 20871303 920081232 973854421 990887040 294587982 771502402 905777176 919883019 457337159 812266948 604569213 788393410 288693557 497227106 981561669 998583947 234591587 809078773 421974249 764574605 851602789 963063186 76360435 237645755 398223897 966984135 75236740 727306877 330452442 615524245 5560016 650096289 397074759 753954187 672455451 921480377 884468516 926518415 836611012 969951536 725519619 934136875 729161811 943762397 407136000 710151759 698083784 996156798 848459194 854539117 572346538 645942889 183339262 245054236 747904446 954365499 834017900 885198507 293683735 535414783 16475460 990817474 291712980 723314207 453133021 970607193 208904714 292210891 753562254 899154765 671677074 855852483 384239157 519645088 119267396 731384006 911283750 982209636 459207683 835660228 411948386 987990488 411319754 838541525 321475733 632866555 32951711 203784198 96565478 280075498 67384738 278422304 551208449 561888804 95903966 569409333 135526480 631697690 212992584 852330962 250545996 673627478 347149301 547173919 720285713 978085291 64760251 624980042 948675082 953979378 489911390 658544993 137853341 404892393 217209276 240107627 355013457 821239548 162642157 655196066 763125545 763643093 17850195 495174284 888779724 934895629 933573903 942563729 687680389 807587885 791762169 943282911 459612881 876267326 825981521 878932348 683728164 818094197 304380210 895163251 979401502 987322157 646991768 876104434 865684937 923519796 933953228 993866949 231391888 317902995 650488132 680563394 345897335 471069068 267790090 968376844 33772461 102840858 863563317 927988772 712402740 856119693 779943030 988769353 928086015 987740950 171547000 707181027 625224528 882591502 67498002 228913012 323266415 997914717 705472179 943465810 232393734 980459488 178174137 279132194 686044299 740521984 767539571 984637998 977268098 998554456 54409776 260036554 126445185 253427762 541904472 914888681 690948891 711144815 254918645 449438648 481896234 932511397 233150237 701342069 262051706 413910077 395383296 964311228 196561276 367680321 473211141 654801114 442695482 944977888 627193869 709198193 785416272 984386566 290739922 917952073 856142624 902971594 736148501 820235332 932481875 978002372 899092784 995691805 473951698 606005194 274693486 350148197 288344046 574356125 519964455 824628010 50954565 984825589 807237127 940580625 948216141 984234136 497352798 594994075 531325334 948113754 309462186 985542112 589225439 638444877 450912405 981974614 613506038 699562492 765896351 780338954 183781762 517019307 669495915 941635299 565891404 899819115 571669679 577267004 553309589 587872959 172290739 225747816 413404272 524416497 679999283 855110926 69795140 668427913 113202085 339848373 994319508 998690955 822867829 999096302 408395907 519195149 769518940 891907144 450987842 520322229 243609996 612707009 294145892 338579855 608953805 756907967 591900257 746480281 121403354 942191861 461327972 517480873 418292454 573357448 332107891 666740205 372672897 671456566 144969939 648928952 486443387 865196004 362255254 705566038 121255931 293586676 594055813 658137045 105467626 347948263 305960098 816939842 953855512 991561572 787957890 996095845 986403046 990408338 709642964 714600856 907702574 964598989 974245100 991281919 184589667 971309721 846839556 978522066 546426458 675417516 339655512 649774069 804105728 966695972 608338182 790992620 961449346 989743469 666190997 999766038 859884559 914989731 804505963 952642968 666120155 905602665 140192782 176074798 286163113 731568030 778513021 901658003 27564198 334427804 899229059 926626445 439491095 878965345 428715046 637138152 602108938 750807005 852069520 908001630 331920085 730338965 411455394 755235825 786180956 976280943 292919271 345142407 261510263 305211941 571116280 902385166 431290081 618009703 545020035 706090179 909381036 924739973 919214089 956596254 824918113 949274179 14927818 335806438 776246313 837822938 597210230 902786522 508885412 528874442 74868840 220781582 747553429 751547657 125049750 555183764 30744733 222588109 319836633 589974338 357436511 761287158 452209236 835014267 713215316 785074293 657967647 710796587 783639298 823134900 273020872 328783780 394387271 969543495 426329806 590002965 287111670 548413320 780578955 989802747 277021542 492600880 514662690 657618199 782681172 865428457 151227944 945261330 61587464 769884950 874193233 875241583 526853904 635569409 909509704 920444805 597207841 880231764 47990541 674433501 567724737 843496956 116717671 407141621 6424047 478792688 714439610 875891622 464034088 816815542 788207440 874001313 163096674 809343471 372732079 515982466 152198387 737643598 438841510 869979076 775580193 814728219 766712474 901307307 550050048 757856730 330305782 397333444 45546340 820932221 344988240 382407102 713720219 907738314 655421052 960890679 951673370 962620550 374949896 661108476 322095929 762999412 827010665 915411973 632136911 844978604 254103511 868100192 924513166 926030917 983682869 991574600 610451796 637991572 192319940 263683978 727376049 967767294 203168637 286853514 464355763 895471999 864135670 871927239 274468529 339888328 68214363 344247207 921784719 997837903 254855190 495344198 599430656 883231954 647140658 940174340 753260015 946781822 264616395 356177699 946476674 968121889 713689024 722534443 347634287 822126869 150023127 799141698 408587976 553868866 404955073 754979203 713234309 839690470 813983929 936199218 748647079 991127353 326329435 971350977 181608141 970163282 55682673 612148632 269498765 714155796 308923945 726067432 114306806 536658259 700561593 848772143 872851998 966079907 312628734 781826813 958506890 965057649 168323916 510341198 187444079 548669288 622397328 730287296 751649931 979004314 596928011 638973792 245452839 321413189 602689850 990896758 655277093 722536863 865444684 892147372 515557179 879715011 456086718 649633511 856276599 876983208 852831764 957394049 4594915 187793291 807125603 827301151 757230166 848412952 25839563 88932493 197039994 684978161 62689843 432213225 891442690 928463218 394834415 767498444 215650209 878604678 871752396 933782420 543796822 823764406 821263823 984342415 718308152 825946574 238209994 693684878 640097113 646920952 395111611 811100134 312692471 977213320 827394894 947331515 753649506 920827707 385612704 755325987 916671879 962442380 803253670 964493305 821591532 888537574 185534287 999708747 723197908 794153769 859397199 926318034 690497948 971713823 734647502 901511665 276276733 682536372 800986652 932896017 630074548 763750345 64277063 753181956 83101850 854754853 491129127 497297134 243785328 773953361 978415822 991462385 990556877 998447454 459173550 722469282 105872935 112387267 636844904 644452731 761818874 963808509 6381461 162034594 681886315 738250682 76027658 212336355 323048629 502838954 848239997 975973842 934487425 996901137 719881858 772714010 67114727 544045526 342756378 366414449 656761877 770955850 804189159 948854362 816681307 877202021 132944722 289732818 370387630 607560507 445657748 908068085 524613893 975151799 95815262 675165629 692317496 721742044 792901837 873398323 143913980 339906974 744950037 796796248 387612531 967537325 32165984 976890977 863532235 926818675 296451056 385862845 82707460 327230324 791470440 943664268 52961594 98768541 340016799 965146773 30485693 984904875 978049726 983518761 977977123 999409105 871838521 936653141 572208815 618461577 154862402 278397366 532716007 619889615 246482427 332309100 543493816 911337526 441482077 770912225 840357329 868815797 672708659 794046825 860513192 864706619 226085268 364997010 711382965 985237033 628179557 771198694 446810273 726811256 873239258 936705759 532042992 704558220 205847627 588736954 981458105 981708495 547944617 796897432 328386028 828885558 29978030 761293130 555207751 718051591 125900216 736588972 802539705 822185331 169791698 381882356 452661079 467409974 709996694 926565337 433896668 494755487 296046811 690303630 529633788 804502772 450458190 454199230 54960487 854662149 449949793 815326668 453674476 557056911 966528605 985099674 258314770 469392737 695335621 877559156 310325497 534193789 818972695 951475290 87922613 876548476 195761065 370246080 497102384 518579298 606976356 817213409 478952291 724007118 749942250 833329508 211829038 871309861 261569048 963761576 380259731 790521399 291476994 510261466 462694218 865464442 554065147 807898624 923955107 927798006 776519274 949477390 322056150 557181000 177138086 489606748 748869744 981758158 731613005 848631946 71009118 427190906 427915752 727408131 8768471 690532933 679969927 685761994 758224022 780807338 909715206 941684381 910280111 962245918 786777935 911466650 381359308 895191988 209568928 628833937 472749230 584700849 191681714 611689666 805060726 830090745 207956032 896541943 308848752 383340511 718387562 821465307 569357441 777057076 720431187 735550034 263791492 786620738 493471634 518948337 608618825 952443757 161838042 972214555 216103120 893207496 414142683 757105553 972689749 982693258 892444172 925874541 579105996 721506944 51600051 640237675 744183195 989107656 300026882 602014957 489819589 576416834 58096975 206515141 966701935 984622145 571720413 627116134 857525021 960910277 459334849 869257356 62663898 110184964 914315490 927768545 189959093 236067547 405537180 816282607 466314663 694997748 597068622 909527915 865799933 990624999 571824470 619686065 521824058 740361955 167004391 987570823 574217940 895492838 328789224 803841892 494539510 582901736 527485859 584507648 660254498 828783666 335781682 383082977 203295904 954423819 483340380 745259768 230982055 396236614 515160047 615166268 885425386 953026050 44512526 963790613 458396038 973797415 553681446 670911598 226545094 903816057 937938418 969584418 948407004 990140124 268520862 954544067 230702554 577018012 777248230 847352501 307727517 467712478 955781700 970436026 35096469 243898589 391697493 963861729 831553273 897829453 429207213 622019013 142708279 517978050 774182943 863710636 886026465 991140065 287936078 723481035 531249894 883692177 279883128 904573657 762672041 916704000 654835356 817888391 41043261 73709161 126984503 942453608 981428216 982576832 262765306 710351028 4940585 770417664 200241238 966953041 907560743 907800027 519572616 813417162 825814945 932383360 474317265 622582339 241542338 756776275 155381011 299230538 629377482 740655732 650028183 742175306 549539416 981425476 766612462 896517039 817277213 990184425 451551396 691846014 697081557 933138554 233182609 729035425 147073547 766167097 727221876 743561371 504755428 896912853 425146942 972346739 992633471 997184348 230819988 579987966 729680462 934430250 473415854 599082364 849012801 923124447 432647048 702453226 831773386 889390001 122593217 163748204 71783035 109940845 349961103 877365639 978459071 983303567 133079971 844808757 88289851 456917252 874690014 936864825 257716587 869686383 694040057 832274001 869905149 969611946 907430329 975710789 837910470 857652034 59982476 132907527 894367993 996420120 188784889 501216375 763766444 763801338 90189794 562683912 838134826 948331301 227772067 634241070 314551954 709379579 545895348 744874843 506240239 882973346 33844967 636515178 186204484 277705172 190363757 957707231 693727837 876836049 848437710 869036853 5528857 668242269 268196869 567353226 842825067 872293732 704244438 899134943 203572687 391439354 285236928 638679671 734248382 946217307 387875544 435377558 610127422 791728796 542947966 563144043 520032401 732577938 314680650 688848495 546782532 859835888 315017337 568256885 128847308 425234210 792091377 923709331 3513407 213422363 163450580 201457843 7935577 251683227 765263300 767845695 915501209 940285826 330805992 599233897 961289792 997563187 259768890 591203601 293328814 446602608 621360583 946937840 399864875 576105609 103703567 356846035 43930741 751940962 998961434 999787761 587499159 630256299 601475609 625429522 924815991 983801977 468357669 969338949 274798624 613974957 35038077 154292031 784420154 896117968 871402533 889289339 141190654 754258772 628074138 937831669 91891373 460773778 57134377 359915126 837497492 912365131 433410411 696615556 499557071 929023258 676194857 734169821 750109172 892881730 494741193 796057107 831783972 916719773 337687112 834728443 917365070 999465186 13054705 705509131 497220662 830832653 254100284 391325444 245025074 807184414 790659539 928907634 713224903 731740205 652584927 995980302 657742593 663361790 429461812 692718088 862393439 871020283 200907222 317209211 322254671 822822356 162734051 702437575 394691249 759935689 850531789 919072447 549205451 872900146 778195017 957434897 255646469 266949794 28273608 941525955 511376160 794757640 341460088 702669062 536924740 826537509 980220935 990087217 792482453 798753696 418858553 906496363 634760238 828734654 658121046 901449686 471931619 682731628 604211429 987257435 398817238 981604031 420806974 730272381 766954866 963836386 535496512 919328164 58451867 866591791 926968179 969775003 187127595 842436977 421904648 632216560 516411542 778669033 880500905 958234666 231541499 272955795 777587992 876045326 560184125 796416630 440178555 716789136 528157158 683848674 651861688 929583018 932408218 990618556 662949307 733310266 47367967 259941675 933856344 968740203 914904220 915971911 176487053 236194644 510497463 598692831 157006988 966116299 473541737 866646212 485332843 526021913 696749130 880917722 471062238 793338999 794440193 801371444 29785268 839974993 337263459 378263437 80870862 175748132 782102360 860676138 57286932 847119731 741101728 856191063 40583744 973365328 289239888 698667921 174229267 637584770 17985110 700186846 194347548 997160023 39424450 686561966 515566188 882227082 8903880 644055552 740614481 940501919 733813381 937492470 591938296 668968514 841283189 961176423 131072582 466816795 313641802 435689313 270592210 282392235 576048664 771817829 259980399 788488863 565505554 749751712 995476995 998318305 571307697 738751471 154621915 387131169 891805365 894965294 169868548 853703300 406646884 675743868 564911211 647122549 852832561 932212807 472937060 581586819 394926969 841566268 888698625 921904686 612455819 659626484 874968416 928761104 571641757 849596936 887871670 893239831 696105963 745176775 614259011 775617534 629080712 860443470 201874711 665552570 640736377 801664937 343809194 373827657 996481234 998181924 376228344 925068493 648733467 938590710 896171158 987848417 551799025 623141114 483099407 601030602 434799799 582461520 438394091 605145477 741557664 905531585 989988341 997826418 387141667 847534292 108318033 734900440 822489683 896361604 465811057 528963407 226973979 665515782 224494334 227198500 295097836 938651692 874735086 896757384 266084542 422896752 337093112 926871144 509502254 791047484 390833756 649323478 644227774 817438307 250611910 460817290 188197831 223245488 666685555 929803541 598938860 988670894 798900111 991918411 359326538 674964582 190437838 432200249 753045966 761890296 701077142 917822512 199792861 888784274 823256544 904962981 768643935 822702359 142782168 507260776 919440283 939446464 934343924 954961365 982575726 992397185 574152400 639912403 368061305 639579003 275679079 404032773 840663019 993251889 293715642 310285077 645724293 943375377 236188561 882864980 488559471 980771508 977765187 994036826 802617367 986017538 852020212 864941741 613008808 863869180 273358570 385706085 979391116 980380372 454649772 966570214 306898282 470220247 622948361 962860688 885460554 954081297 718169344 989170556 900026507 958874177 216151122 327162943 662745733 687150432 910942786 931970537 834749142 967963281 301177099 644857027 281838690 472012997 164787813 586020908 839732386 877431323 249925249 848135499 431521471 782756702 354868325 881280410 50798164 757549681 524412089 792089834 49758088 851697402 184409786 522347597 325409030 841256701 406379072 811105176 689922551 700408359 787665654 815280586 891998545 983365296 713191767 997665004 944683402 981280273 859832496 999749057 196811674 712333031 485725152 677679280 897416457 934994848 309303986 693880937 545433887 801556999 670587110 710352874 60646120 61282920 673594356 831985933 32916197 569493319 394756130 748247251 842417491 938912023 355761484 435575856 145659347 149764057 90857777 156485371 653014405 993952266 511665285 931425607 768799866 892809241 235594325 349525822 787345926 914985916 952850970 974699086 808348122 826830124 269672475 380192748 553530592 565794117 453134191 627536670 866857168 872562544 140417512 390540299 931955279 959380928 228569100 721910522 277823954 389677904 593240643 731670604 835858127 912112163 230807515 940494778 91284305 668977659 845399242 979233501 440787514 894221791 435153779 702062223 568510155 726410427 597935057 599984503 967675187 992623722 205297788 556804943 380073343 528645847 204728116 778858682 947180873 969860798 934267379 945027657 342580556 962513243 184820598 519982361 814413567 917109295 162731055 365207266 591430975 961731374 749229108 845633366 425886161 949339930 498862 204981160 569025486 991817478 501987439 527687378 123770724 677714476 490392588 595805214 148217090 778594867 383906328 500956482 951126029 997769783 637116254 761106284 980476278 991884617 29989471 218341202 839477146 858314306 868698695 934736637 413571827 844075517 266744775 350065776 186290238 858361356 833396877 967100369 956715502 966736454 949186687 985913218 984960385 985922847 84700090 386245451 969735429 992434132 325500511 361738290 432694514 740154297 445694734 980457778 335172179 664201038 6872595 368363022 259121204 297248456 747567935 772213451 946424040 969274426 128082769 389441936 476306374 830586237 961366689 962628086 180772193 689514538 114389704 192031914 926112268 930580350 292130241 607872768 889022556 980247488 392084716 611829945 190691579 375124897 623198803 902264076 300724647 720340643 55108765 842638747 467888928 814771847 13582842 717894773 547347727 979663235 682876809 935654429 767778502 931533291 978660997 984798078 293333696 696723275 72607779 468389678 609141792 835324065 633799511 755718003 498112292 558310618 898331115 903714320 187685931 458227525 720059932 987978718 898943436 998194464 212736028 302909929 805141946 978973900 799935778 876365490 399884108 828241034 45418569 68615312 700322199 735360397 531983898 908545284 793502299 936658114 248225044 427871199 166268154 761387407 566610759 987290226 703139575 750064643 513156207 629348390 884398213 943937420 361379228 902199145 342848115 865926376 17522436 997715441 599441194 636081045 152175715 482768638 684913713 937724884 444934150 525653399 212824704 587016094 849261313 899889814 995826693 999276877 996343359 999703280 863948543 988616191 917213148 996782431 821504454 964049884 714768233 955346178 894947498 994606948 495082766 624093650 754803424 808860622 397095528 502992725 494166132 777388584 980612167 997914624 741859189 776267555 135036266 824414555 686828278 766406054 245355528 304293090 522974200 795630251 975093059 978637554 34183604 103110326 949014246 994526785 921314194 974389711 520407372 551482037 194313949 914266066 371891288 678353968 742706211 844545723 267124090 877931504 38543392 175514580 907015549 966564052 709495881 813199173 814155318 947143595 632603425 794069081 861979163 919132822 557420565 904477193 183602066 402859600 772292765 781825479 108722163 975293493 901085457 963344040 223333407 403985058 476283888 733034815 686386036 748533670 892285241 986402041 269135176 898807820 723833994 896414954 173261831 749395477 218082320 691948957 377379129 638857595 246470616 811704046 308197645 671987255 832446034 964761429 978016774 994051678 608218618 675953373 852169621 885997014 683176744 963721295 928023865 966920540 784233456 876666316 790739511 954050029 866031568 949715325 509838946 643943588 592136995 740395359 958443338 977368640 908895222 967539018 151545046 572396175 552284908 901015448 529102427 554137957 88074939 426546543 775136074 935508991 1260324 53771398 680088189 740307029 717664594 763839804 126650571 524161096 81783178 575865770 200666267 928914135 248378374 342660713 519598477 833262982 311509743 340051471 179823278 543582789 506191622 532847445 430622574 974760363 678761002 699928807 88219040 612173533 607681443 889746586 352310336 736425238 942662541 957191030 946696187 981418323 260923850 737548641 206890395 815933367 843208159 877412639 279710702 643380474 974183281 997627813 730202551 862083359 186283182 190728978 849351040 868180200 231693852 358089415 650474429 718932854 581907552 923159725 820031648 998190644 498726140 516922811 394397824 642912245 657307440 723635859 103154265 119626275 253573606 957143001 652008274 880120495 957672337 993443418 555134425 956565494 612499508 789668989 681341534 983469179 946959919 972007258 918086906 961008583 428133320 718428629 374700836 473801833 962342025 982371015 432610156 437102696 984529570 985349708 277614040 338464505 441304931 536091498 230504639 762822907 930290676 993828758 358298441 862147464 465301084 497393166 825522581 990183440 110199347 918210513 150095544 961879433 534933037 636652953 716523323 764358055 736337042 906783650 378144219 913946200 992392381 999887255 553668613 841780775 212630250 428082705 766005740 902873189 31526841 251827377 789337754 978578757 428370635 602961871 72075883 909384975 466093244 776005877 494431094 904759854 368324501 425106495 912344235 921839245 109155471 708092104 815505742 868923452 899384653 928173571 349057798 519003520 859709863 952873866 8992210 275876482 893354541 972542831 973082825 996089382 739154637 878572892 138454808 192801363 407213640 554843674 431025915 631938750 536636069 734775905 967218205 990661424 230977004 969373917 281968376 346730208 756064450 890647224 951881680 974794317 745672546 763229777 486507032 663496431 108600253 577978165 439636702 545902679 413380531 428654123 715943502 988485122 604838330 814706930 430042893 947422237 615956585 947610780 204641885 773962781 808890483 908157030 531560397 625692791 559600410 725956257 607389386 617265130 860738728 935969144 818187848 873319847 20550150 245239592 308841102 885507584 809309939 968772498 706952270 871243754 618500748 632605924 816908662 878631934 750233464 809348640 599856541 625306003 223233204 986707539 786300744 992666390 124567261 437095847 817158129 935580523 228379745 845639113 471353518 977959320 456655002 994989285 434980670 756851148 323584411 659818374 450072239 782541541 61717035 226670888 224682555 676943199 825904455 977987034 632387770 704429376 571712883 725097876 230736408 296822101 891821000 974970352 196503071 646431074 594958192 994585883 665391743 719445696 46468758 927540945 709087498 809649297 178260183 706179925 96823881 206270933 153797299 982199308 178141792 980167110 550182615 922960594 439467159 831735630 533086668 775066398 908251978 917188730 218246113 797239826 489312581 935621067 273220950 568084122 110157076 256971161 306251163 984127910 283933157 797921904 139161189 546882794 413683564 549366189 333993085 776375240 66116753 865119268 476366039 521122026 895269123 969481027 108189150 283885812 36141945 386923051 59320329 647783366 975312595 976362399 460975026 640244357 237011540 502968021 81628746 660263487 125374260 402588150 109527932 672601472 271763313 829889890 837980920 927980082 99831846 242615986 12359414 349291321 429845030 613908827 375419940 823078751 548348647 905342094 89412694 567308748 138047650 141800512 449569225 795711729 174973005 762287484 924711244 944647947 384000296 621910330 880399913 916761975 710395757 728755578 641115685 991863439 975569100 994871080 755805961 965294384 610889858 811377934 948439380 968616951 178523834 558654848 634585707 765463688 146376749 386624980 114240986 115269330 162948441 759435693 952851924 968855712 834917675 994339757 581714636 995669228 84248771 285655009 891448751 951575406 609366989 671134941 937094886 982120954 918712765 997660897 981025309 987370495 159777646 478173774 549705204 884377079 604888407 801143388 987158946 987376858 564532992 821633569 550053606 765432241 858967346 859741857 287927197 697416352 14714322 58998507 153755773 864819571 247365362 422772659 483321530 935790230 890535017 987296658 906203203 939727058 323532646 689159562 861146830 931593679 57375630 864720035 527677913 859629822 75417440 684663419 65335971 121464268 922069739 954695007 78516253 895387567 252506931 460226762 507636008 965486589 645923593 746257881 417054604 787503569 326822197 499578288 269181099 294714572 778492802 944556088 899198384 912859315 840799436 900625937 610137582 845385747 618007610 912954134 807989534 982843554 198593107 986102916 174532596 436743401 648486078 821586017 375212049 954400918 70150991 218991806 830169230 992874300 983754415 988653813 253798460 608610474 626314951 667725914 511821424 704714347 171377322 864209788 933290284 989503254 770276431 845870122 597613162 734164922 623525693 932679539 69365799 146014089 961384874 973536418 327198861 988346638 779991331 910991504 116641613 116897294 260999911 979717541 240610730 568924046 329833900 902782546 979361428 981602401 607027819 699928998 832017611 972946819 229504967 903206186 157302900 889042554 907600837 920213365 823117863 825094455 433040822 613919402 524350629 539345338 678534888 952558632 153034623 315299033 34423648 120705600 971783826 994131832 819175174 990999869 187998425 406873917 133105449 629560924 222582171 426073787 875335697 895290176 856240670 913908401 848956170 956303728 859266584 952064496 992246310 999145869 933728474 971102463 935932226 975968086 427444133 430848898 370468428 513270613 710373271 726813201 162391754 875019216 403738403 679812108 721171036 757461882 916635184 940204917 859885394 952406762 443161947 982407109 958252900 968028679 960165129 996202924 398045629 532806447 998685596 999044822 903980240 980134142 977032902 979238080 978829554 993178130 35747479 781003931 908774186 943756219 241434730 554300625 267296285 870135735 721526272 939167716 34853142 196539639 803075592 953150839 19956512 281320266 474487668 804587591 454394539 791286231 551349853 819438567 128920840 885585884 1493628 530807702 613213687 915502612 652542520 964157094 558705144 912595296 588012404 875661761 707615870 743671255 347699474 813176955 255461849 832098450 311130262 792902365 689800135 906691970 165667434 904677661 71180200 605257663 876058092 905490579 398531421 505564753 391453839 604617801 798109612 843019478 580863016 781023002 390202774 948082262 394415526 770845749 476082613 968911079 59437501 260719764 595403850 683907965 930813081 974802870 633128280 906796638 785437611 855701615 588936792 826278880 916298518 997951765 763968178 896265010 794305845 866529500 464243650 714290635 474945615 877905759 13564943 900036863 768468536 865750866 574391315 611342869 668208079 982780782 346009014 365619514 595156795 939324163 105961077 985784365 846935577 885090143 354298183 953186728 109521271 616939019 917344408 931849188 812350013 931525775 699398333 871181456 229751229 628329918 117850325 509684341 595498011 608060071 995137219 997462227 431293383 896879430 994283817 996336075 707483190 854461807 64801699 477585945 302981517 931895460 373678326 593188127 784516657 905330636 357028840 485335244 507558109 616139120 68112349 96704861 851393218 853011472 190683148 689223920 565391605 918201090 392298502 926976304 190859338 601770539 534686884 994544027 677621029 735541978 87160048 780041632 734099530 876045725 668313734 943560624 982469080 993746917 751979288 775951552 171260565 551489467 387469855 517407916 317309508 376895286 853574634 929019782 286796739 851646382 397551890 919516800 457913956 549156738 689267405 843927418 794133984 946459440 349303966 616689560 619535888 681544237 591638749 700431398 426695812 913267088 601150352 701829176 795100894 865736486 353490931 888835874 261606320 653854604 986845970 994200290 149111974 645077422 568720335 694151016 714285439 836801326 45431001 845139033 411873116 700411264 113072754 459911023 525588536 937656304 788250661 898596442 883601842 967410822 29818048 495911833 706035334 941232754 526863747 779984728 34794798 217068168 805745584 874346498 33012597 239473901 328933805 597484994 882810050 915754591 905130838 912519659 330973817 732240838 502057210 811708971 362367951 440344513 22497507 729614590 373461799 625864847 977288938 994990239 664637307 853240191 473953508 752892070 591614023 932765062 492127397 896297475 803699446 823511409 639172236 932556646 452185091 938020530 38271832 589920728 187592019 626092712 252088306 815122901 47562692 289952022 661970542 701296976 635831693 795602568 7869016 138512636 37730332 708538537 123133978 286703437 531714347 868525186 252840482 805755828 812083103 950050385 451216859 963992911 946180062 954734993 133958936 171513948 178284528 641878675 261563127 989133543 385245734 460426329 604535629 910856510 952144183 978427300 895925790 897742984 231663924 489084338 761158143 827739067 303035545 353396423 631889788 711864921 212201306 220383476 858708730 896136066 804465452 875066213 10071843 338986943 572966574 727444070 803160833 869762445 180451543 609104072 389911128 838255756 32124198 131264348 769984366 930539293 92482044 178731290 253392026 901411130 916459028 954428367 200525792 415528778 3314817 28389939 997402133 997978806 628158301 830097878 36600490 723392019 648894411 729021999 240349420 678368477 246498540 533204615 536616090 982238299 657467719 985361904 552907205 609985132 503853262 683984018 867111128 944839238 584198507 925863962 720475230 842947701 995919854 996059647 421047607 661018376 40828390 866648163 881163683 949708332 170404421 971908220 737298271 886664427 580810472 688617933 133195135 233645725 683841903 946828260 282170253 813165681 394664280 408576132 340410175 857962767 92026402 456140403 864927316 889541849 49586757 140290835 596543061 844604427 2371978 674025675 351315108 766653361 725229154 843310959 357026214 868711332 431129802 591971053 270088330 778044407 85461485 921445475 567055653 855282261 384905527 860040961 332133090 430244234 566781928 951158427 38548176 635458790 636513202 716497255 683860639 698218159 964593505 991837243 204117324 948912179 825391509 893893014 991060262 998251857 715036887 862353489 921247799 962564740 388639050 450483772 14758514 885349331 481219673 921281105 456549660 605404472 190468113 536309417 325285300 521390875 794946178 863524827 171475339 911035163 30793948 144369104 979513999 998899155 997523234 997998603 128083489 880590179 99925939 673271323 682142767 865210577 489161672 811026535 927773822 986819822 128575087 470498504 373985494 886763980 434150000 982405529 326881025 344688361 785406397 914945274 525271162 974284022 278093468 602701209 482663537 752095338 654416451 785532508 268472013 755139656 973291285 977925673 56486035 61455001 678388790 803411156 958246460 978943583 506214066 916853476 924952009 959238679 552606862 933807124 870312520 886631989 254045474 391753204 249075701 508749672 278261592 371861575 790934686 814139193 837907764 893875384 240892886 788078011 260217175 704231756 290407989 859639510 416366047 920306901 276500760 564870176 770276542 922518530 29537328 967969762 598430457 716438075 101167967 698782688 550108462 902564764 994487395 997376818 883508706 956764657 370395366 824716266 499692274 995011048 93460623 854385148 507689967 949292511 774404364 968430293 873831665 999532615 602495750 622400041 912198970 931358018 521734246 796603666 192374597 403494330 664259217 781739444 938604482 962747204 803870161 819416383 599253665 975426359 959267208 985957028 207849680 445957966 938345291 973157536 561031215 809423917 635960678 809430259 697198508 924095521 9113417 657597477 953902306 978206420 727369523 885470536 626535803 892348957 60020967 582661544 585560110 686528344 730958033 846171839 68956256 159983367 151866226 443279677 55890201 350442789 706541058 977029021 805825805 884736586 297859260 936203469 493534104 843743363 432923994 897518743 517001779 696235331 87976129 486095120 443882060 909709312 459635793 820651436 617555730 862304663 152188248 620339821 572747790 968953886 661406819 771549447 60291333 736387991 664638619 757464458 245769208 945892365 545554056 827859604 384611588 394671040 855714165 952907146 537098473 925736199 424866470 749066687 380527495 635752133 859011162 963674926 99994026 620269361 130830454 470614739 430186203 855279436 181957866 806879733 201361046 475745773 578226579 580759418 254132935 903764566 115603332 656214671 814734300 869622492 414759624 741687620 531118696 782791738 905693543 924770191 253272625 989240469 353040049 374398798 652649083 896813111 679597337 902826538 404566418 529439685 634286317 936588770 672425243 877475766 486476843 634184566 23946353 532161677 872685904 990288665 949482896 956813677 324954251 367872464 788515601 812981524 956847990 991488594 639176003 848965965 589842659 998926845 320983895 424709696 50643976 714203642 197182454 759269959 50736845 537007768 752558835 858074644 671439268 799651812 846070528 926434378 919501665 966674745 323475838 691264489 791058606 828629479 375439412 528425775 748656563 919404752 290315538 692785265 248287457 992598311 320021831 698825527 64395141 773913500 107876142 107911078 862618558 913056536 776004611 972384102 872983955 922622378 110542341 563581558 348411497 462506178 114012906 865386307 161483679 687255056 409946818 948235818 399941363 413002073 278636924 422999552 414488098 932621909 216645663 848461805 888690556 996783365 808644995 975215998 376906627 976741658 184709345 272973040 120266925 684882479 220017606 584203993 466097354 946197287 353020939 935565076 997228011 997315807 787823409 815541191 798763730 840396888 529123458 918410065 689884860 806829175 392525537 566066903 730548549 930946474 295716313 831148175 212283863 394705462 460909146 715522210 796757557 926181443 987287166 994401481 836507043 973879742 784403450 974831206 367545913 824660818 108706529 549657255 325846980 918658548 640651914 649262086 491957815 636484563 523410802 789453946 160705889 740356940 84941550 721818823 479264198 604564411 503096323 755331266 302460767 392792512 336365076 514651878 673100446 693271284 707429745 981621038 501114369 757597632 621439480 725666116 895046369 897124139 827023150 941216420 261569855 988420294 614294990 673167411 850092244 907480236 187482465 352319505 109323808 184477979 118367531 912708219 16998390 592218028 297378935 859080686 583358097 742295335 201094389 672332382 810048403 908169672 930036380 990862983 174604631 351245494 798214419 915922302 401526336 765893672 58694545 908976836 567689472 968926387 296280561 618157525 252346533 410613502 231369822 626466573 675991589 820813181 501042444 702031253 663337874 892305056 832688481 975972743 914728392 919150303 939426385 989384755 635313141 746055123 82486701 845737595 522115169 526168242 903625569 940125451 968293991 989182736 739257262 816157678 48883271 833702056 763740061 935757352 405327610 419298938 253472478 579334892 282796653 661673701 348724718 767692603 399101585 908117703 510317473 830577687 108185789 344948626 660923354 954080109 215626181 993307019 576847093 688986843 606690664 786731018 377911685 908973680 645211565 653619621 42426261 634931954 164649355 710653773 969625839 999227626 466571822 760651047 909110970 960524754 948512040 979603376 289445059 297805568 808113653 854056563 625622077 705745785 772463089 985352506 550258239 880234285 521985150 585008483 559750183 762573539 342104235 806885432 152024483 795474897 447023079 790942108 857726754 929670073 412016982 430947939 270224339 533704306 389651642 925485196 895786751 930306662 209605326 326961798 511656810 527113356 709314990 866991511 130908534 202749901 773969861 777218563 855610614 970249955 618641268 711980789 958374095 980903273 343207840 979957919 289969063 466023987 380267378 944008275 291713827 663269052 648622607 935597475 514296364 940956941 260236521 260857218 109460190 875345201 814966150 871439696 983251858 988935698 945393096 981683427 865091494 898846304 478816554 892551391 347307881 409977776 769730891 938498910 895700531 943149198 809442946 966988487 623996909 906380829 440479118 797423520 522709646 632518225 237558750 674282336 389895911 421256661 57319878 790139209 453656790 632502977 810079630 890884548 427712832 584418360 491307930 561069387 734774798 958074642 784797158 987652555 730090243 838616648 509059799 882490380 816068804 986106071 886272455 917180439 128322998 725026337 377562308 442994804 271066774 863623804 490890616 593921829 972487365 998770158 755258343 876535474 82936149 177383335 201025667 619715374 91518661 868725592 456248069 739943475 357396149 434182879 440772550 661867682 831398911 977608867 723292894 848305217 413223640 563933597 315235979 912241875 783309824 821519700 491602204 504001554 849650016 925717785 500590653 783439583 306032430 923405983 272756398 297964801 184621069 497902607 646359841 935997606 52204193 553918522 424828676 494443739 241562402 712381594 307870369 937787188 537389561 934935469 691784187 819872737 238193853 770874619 891671840 907885307 763347903 892228115 769156642 871205337 106978324 849059571 878849825 983373699 645464407 818485673 617323881 752603835 355056493 633903799 351685316 800600874 901027648 984978160 43469679 834703799 298529214 430201950 987920542 988900295 192297949 586902900 945354286 969347989 377462451 909521882 527549914 933459583 161087544 429954987 372942674 723919248 949330413 964722790 821913499 947427508 90467093 817308698 478176047 913043344 627326130 765488737 997979484 998818529 206750608 997531406 576509747 950756332 566107191 646781961 183786202 280157665 582623569 658872109 832547095 995650105 348538716 366798717 406116547 840269270 467708167 762134481 624733976 694482773 258465461 451709772 842576081 966484066 633166451 958497672 694060946 910228768 163733927 953751990 220841101 223812697 13275871 424478436 985602936 988174623 132243642 353175594 36423751 949044580 153624646 630554424 475392772 958443952 60325913 390691890 830293674 875657870 881498471 993801143 307092245 921788259 522474482 777095335 74503363 329061458 684730066 695184044 374582187 397321054 23166095 822507374 181536159 715944120 398410973 683891739 410901263 776099228 274440372 382289163 257974865 477542877 538032603 957802089 922675088 986922128 789537891 837215732 883827059 926176746 325288124 673257754 660780843 883900796 641211206 918613319 818131564 997443681 245114998 980518702 635150028 889390955 404112916 572994663 31654874 882865211 729662203 744008583 839637278 917030119 866845894 930671342 79280561 581599044 147616203 434840006 178006762 190978269 587973436 840824468 489919383 773896382 654369365 869451228 17481503 648966361 279677232 492054101 450509127 868870085 30996955 282477318 233381901 246971820 846042939 857237515 580314292 630414265 691966449 906249319 332107669 603566373 339636531 937891743 568595474 911067490 685789035 855362648 477267071 881881717 688355716 872769684 73276413 217963528 921874723 963833582 434062981 860230567 558454067 708379855 754854313 968235406 271001342 942884134 480516588 636550668 492962942 718466367 267517722 472994011 769513689 787452361 146974672 364114380 817368395 882273548 898405769 987898166 484637786 864239697 217886294 606099339 24321682 972647170 375742222 499784089 375146770 421108966 963249975 964583982 253811631 668825710 138608195 372514438 485416163 657227327 77355946 713462714 102649591 894029374 483738801 531872272 812895950 997470759 566717764 782194317 434516662 513183721 312635124 809345445 234647172 602917521 475555759 831099491 200756092 558076319 310444497 430560174 277233214 966767639 540314301 742134025 451691153 457620239 415711052 567107445 172410819 724569689 390697083 844131250 201801500 903140364 742301130 949069525 850723202 851102387 93036191 687547034 886596084 974868087 158735614 487821586 59062641 672244856 964183340 995601911 369044663 905861421 793198174 870556021 400806582 857757100 749122366 903742023 516883069 781322098 606718188 979301719 475471877 540458668 293985940 731439190 287645812 379402443 496410265 496700836 2507625 380053854 34840481 348697903 299693947 401342455 552019489 963168806 274355607 316739501 740538916 918361420 958993370 982843365 175378916 554256953 40199408 461477605 853465399 999408722 413622192 736254742 142853660 218873258 729203444 919515258 127135602 503228344 944490351 974967449 71395315 247045768 494762260 967460178 868588775 929232556 892282367 976673948 422115180 995744348 903832453 941890037 518087956 705580595 271574104 590296959 85374052 522247113 270601236 980232955 210794850 221793424 201424696 385696347 506381116 759076968 830801057 850658934 470270987 929670294 653833130 697700902 625347249 974744234 427067699 733304200 317187803 351510463 88103656 851108442 289320917 988208407 762907986 842296889 657114477 713340813 696996373 801182142 648960056 830595480 960309709 991432237 721682294 960626616 672770371 869468234 804204093 897872469 24322727 829412985 288186165 782774622 211908409 615935374 641603885 995093708 607072580 772720566 618883771 877929801 909257903 995772633 769693007 777676692 178307259 550000745 927941257 947425966 377638763 915011256 119084021 617494490 409875013 603485718 120470045 577925483 521365464 977903851 403932638 493147674 991829164 995196940 745570091 828938739 282605271 977219102 950278788 976934344 946319654 985825187 914945681 958754804 787725513 977238086 385911027 898732999 178373327 646707542 878528485 902952139 226480344 835625392 686692331 818238673 316948026 690483584 96184033 870685125 346145875 598075790 354261377 792295929 387362117 398550296 631354175 947776584 887331124 938841010 402620175 513494940 680000889 938942521 469593341 853222299 366299124 606365115 703911425 804389843 325746448 637595992 736679992 777691013 356002498 378333849 664432802 769872970 970500016 976571080 872397601 994750580 809944694 915250491 12345730 341327625 842724846 849234987 269467272 678770427 464740513 621394826 593000887 844127251 111641007 219819712 415514681 869895725 498244722 582674836 97960606 809082842 743985846 900299330 139421910 971849777 40717890 383804670 704352324 943421957 759926919 864909819 577807315 884604424 395434272 516179302 546386418 804303621 370249670 624654070 978495556 989513130 725304121 968777632 397536192 957964995 117580278 797623020 196859877 248556535 364488295 894542242 287595094 897267967 21586303 610206479 86180520 829669112 201367684 963030958 616867547 949703424 45828354 208687863 307214582 652832987 801960371 897095562 544605581 778682670 725688293 818939744 663457906 919847028 657564967 661748182 435504588 520192453 767114659 868710772 646317618 666213317 596044788 642688019 231888028 547275030 41183504 891867884 72543619 646430657 377979352 686970692 163018611 689179950 640402063 801803986 932534372 953579075 442262513 590682738 150173911 906931858 998418229 999510864 71426605 366582105 20111794 759313819 139919041 775732784 555920532 701085362 148613734 555954519 894574642 997519977 382382029 516446822 215161758 584992656 179871410 853163444 553477254 760231899 338551398 419050394 184688038 887535655 296104698 702997329 230522449 296796188 523341755 847469589 111969498 642158294 8051943 147966026 766628764 835963425 265687137 730688623 910273492 910314571 547828431 982047592 940989599 954460521 498517521 726047025 76142728 882835890 134143192 429965673 61420767 205926071 49266622 722754801 500577527 505608165 565814227 826847675 144268583 284406494 589559084 757025925 187474770 491903913 263297435 501407361 122230464 312922882 362244140 915877074 675325069 935947751 735125670 918975430 98143989 996066234 889873947 968045392 656573928 752246353 941137763 974382381 630198049 812712629 419849489 557932717 875144552 903730697 786637532 954486158 491760960 924670613 815316346 988237209 266961371 949339435 714434959 786600668 614708095 841287463 565611362 643143101 234827985 825465209 110406610 430217910 514447886 657804305 550543919 879377477 130923977 390625717 398549721 816318191 362885285 980195918 928753256 967190722 104933103 384594566 633297041 745422606 695109993 733371591 694052954 884967959 953695614 984957491 542315992 900867547 819956041 872052935 255220941 769049930 934717255 948516426 255049595 629065930 989537520 995677467 136572154 485122232 164157792 792494608 678028337 988034668 913014943 918457022 733228149 868507843 146307575 679770665 661312796 727889888 434830839 658110389 396735631 570107683 11912024 476582540 119355270 811038852 234129646 876387300 190077621 394052875 794724456 887465984 393139002 544854589 225546667 593812506 742327596 923776786 769822262 894632315 933033363 988500579 252351679 339846943 366678463 911053158 764754136 779003146 47157063 208041898 168862949 326445747 569453018 765683905 779600191 849229088 538829581 883026730 575453543 823150510 682848080 859939087 343008436 626025917 686814308 734443175 5826203 395214372 355196150 606631283 761200175 979416293 512719821 703487594 265505533 733289328 996736061 997569389 579504226 891770710 439814471 737309740 327249855 823630119 835318297 842577749 369131878 549704799 580014104 897524719 730381697 859988888 854084632 957494284 394774793 507985985 650022392 989104419 95651260 716854247 369149216 677775629 107543826 319027963 328675582 690197730 746878694 950625858 977110762 991243729 24515956 862715205 722973773 921420489 362386599 966484882 231458517 451128972 431919416 500192997 841405427 977643599 406071655 903086321 900568223 991721524 113714702 822262888 290242524 758574414 35398023 683709851 154652527 756028117 595939116 908590191 808768802 844797348 554661891 719675178 460864794 504487224 472844236 881407740 525137537 780520679 22508645 568795585 821143468 851537537 348185008 412908760 79656665 188133723 330398993 735941032 6248314 931017762 760715306 851372847 888955064 937002057 11494061 845165431 489019321 887919700 947702719 949947106 983182127 998654545 14843351 666165054 723581376 730985399 681194941 894115149 112080579 227281374 843354523 855987685 643694748 889347172 994428623 998018854 123839870 387706039 235433116 830944819 302779168 523891592 891579805 910324016 268763183 436474891 469045643 825497591 363936288 426255146 845627696 989038487 793342164 996998432 423543092 736702570 785606589 875742575 361711950 624047220 896792314 930863958 359257648 905400280 120181374 798857258 438339202 824043640 61356220 679940659 337195967 605128363 808321788 932325144 885261767 929918689 342643334 864349855 558352946 958139342 789054434 813602849 945183408 972998423 314551427 925320179 543932431 801372373 761856890 839992082 892296227 921801026 56773993 271225228 229066217 588722096 410047668 538149779 41871070 641676779 719579787 724637530 522878680 933976655 321532176 811534484 89497465 802892202 919529700 973304407 915980741 934807227 957867479 986313347 383502203 499276654 911988788 926413766 492857484 590074681 382842817 419035100 343203663 567210746 241046548 787435330 521364307 603531369 47827020 361647581 975783491 997927757 672733749 859110880 714582475 803822058 254171016 635078342 43004576 43919075 155936311 819789064 510714058 868779396 552478689 970757479 754527737 792024375 136890284 561043843 731311726 765179522 349983332 832561741 910962712 947093178 49930479 91323676 507960204 508021020 407906020 982944101 648319931 663571571 483901174 668780519 366314081 716358574 328142847 493679908 146745637 638578695 797641327 798148728 147282287 781210122 546463474 960694644 519917821 868542190 790826516 847945062 127666531 493037674 860207409 925450577 6415643 781287766 164510915 388547715 609025856 628303249 474080522 857814604 995055045 995822286 360322091 796565852 300738640 948690648 47889938 822439002 548798253 594755928 392495316 693838568 323438870 326095291 685237081 798505276 432566545 637801371 649073973 785934255 848436810 879190095 495482058 782444560 353760774 522767187 467833464 855732927 33327214 184600428 59892003 327680963 484197165 860165806 640885111 832577353 717633990 795928034 968312556 998044582 956514481 988626319 15198205 491452431 887381938 994169496 784396329 952464848 504423766 900533438 72618510 323834107 168829994 611001138 322946822 421467536 343115269 673575458 121612813 151038110 864298865 903199073 740997472 747940369 872128786 963400678 210705878 823044767 337745187 777165770 48264925 644793683 202475253 223123126 420735800 939795978 639618605 661746899 16272811 699081060 917653761 934558650 94507915 901735183 735646602 772170113 296306077 671364472 772809618 823603609 955560322 962624021 998013439 998886029 593164988 628928255 338624708 358853091 12702476 121616257 261470496 750905854 162800726 744132493 306760478 490349078 376400653 386782203 67142904 966338815 610216880 968964178 515665069 774047816 918832855 967580533 640797102 989674324 935902890 962051093 151195197 475218338 734165064 820249410 693690475 831208041 443504941 884602624 709806374 713832001 226052970 771065421 546750166 582424312 428107524 911852938 100417057 837078751 208291925 521072591 956336746 973332116 475476112 533255201 899167255 953635977 305730206 540766873 522850126 703907412 901126327 947264322 446637960 791028239 863433282 996844595 432461160 811331187 961931652 987391908 824335187 892697343 341234877 519385646 855133289 971266285 849623010 967891868 681240141 909568691 324907702 471151494 11647715 412441037 930615329 948938748 247072295 697225794 936519475 994828529 521596180 770697751 538757205 580113823 942521711 948722337 932696325 974559222 434049224 625392869 323796989 722230684 149348960 203564143 19721798 86351800 418598787 919263572 140086028 443757874 971265649 983883221 801540681 949100055 628058104 695963509 609207947 655334753 636612732 714189923 796390213 814723929 337761549 701170890 289848094 941129337 472111237 962798487 537713495 694427535 559086428 598595900 243961273 429873172 789571048 932058046 260746707 382642657 962963500 975429170 42990506 497626135 390668542 718096706 417979522 599983777 955353094 985320800 865130951 894752340 580018384 987463934 744746538 992525381 358775628 822053940 953804629 998413495 498115825 627315700 585452857 924764183 307221178 417628412 528494828 935157219 955808180 991273928 192859158 557383048 276065654 643198732 805383563 855373310 697166038 830885313 438672049 829683927 734473023 870931199 947496694 978609881 715891769 777099439 763071159 970247641 895020406 971048065 883024457 897036656 201797727 816768679 362621334 588666717 447402564 496915650 299757841 607646266 193987719 945864847 991685736 995134705 379163895 515846933 238462578 311979141 663621291 664123872 755787512 825696681 642943239 811351478 436062201 521189421 318740012 328401015 904516279 978072499 404814160 495810872 741001736 971459990 640447241 802751460 160900110 609820657 540445394 669540622 110882014 759529458 270522397 279706894 205542709 308814489 421130138 902874063 357684378 584562952 594683958 813266935 836289752 877951359 499681802 960987071 159747987 741674635 838530007 973972008 70995171 858088326 885082014 971051270 912877453 975825592 360144136 907179144 929950553 988247615 574995830 927762648 231910008 503030074 413895750 545788900 408292506 713471447 704215711 809528151 280718775 438487863 63157917 399819216 967554755 968905076 997292447 998371192 14545716 259277229 51658979 634000602 707387115 957088301 244714848 729234206 473315269 549140721 569817013 927156794 700133528 715667190 67963030 704779588 819222015 867676718 200100049 213214091 246077245 341982962 607305473 961249712 885691709 991140224 879249456 980569745 221486837 437092413 331632541 640191203 396193467 939062548 304204593 533183404 150840639 713662732 86113748 139530975 984609858 987097188 218736455 642350105 839974689 980710632 796915393 973852471 103644685 117744265 936272886 949071009 131868462 449881021 420272187 664068687 785237401 938076987 321238110 409959844 160959316 770490831 402960428 761313121 366949785 459142578 495661634 643247170 7021577 430043371 463668454 830427506 452139133 848571966 430105013 655161229 920630407 957230673 534767976 883009102 792970779 884515097 365382963 790226452 138362349 814561277 888660888 971405474 96673327 362296597 335505170 665211262 744656918 928246859 312375717 367738772 855315022 926980997 191444091 724823831 811866248 849171048 548990921 787527323 72712123 962898471 103032338 597672169 683463692 866885515 270027005 587854793 784203509 880912156 835149530 932744561 959944009 985160554 358498798 868215983 994927247 997582327 602563093 766047661 269348870 565112738 369019243 936354501 158376452 177642432 718971136 983158650 759665586 986559544 527902603 980109744 301048763 605210111 485441872 617161423 797433621 969492204 182303303 779577964 212552872 441054802 6099526 273946049 127086603 759641040 355721686 801001372 532127553 666890338 579948400 913828103 260981078 677511198 655730457 852634095 512734045 995484125 463546737 608651012 313853092 825879159 178606330 926856036 664160545 905196126 597233306 964672280 786313821 948674670 117092030 656733501 440212631 773848242 945322911 982104601 92731435 139363821 254920928 935041520 131075903 650410168 958180750 987076011 704240602 920146060 738921535 790920934 658365775 989433170 844619695 987187630 668722042 985827398 473225229 510526364 508728980 745221207 781198633 793420724 294130950 654619127 344076366 926261532 964229784 989289304 344147974 887447055 990649513 990856743 911680920 978093166 833886944 942613519 999962342 999971818 718875749 800432770 562671126 844891189 301928964 656727013 785061959 887158325 616124426 876828645 403035507 530469630 225959274 329447366 150755335 702441272 893323665 904181354 588901744 818889921 537869103 545203064 620925639 860706873 519534270 660421413 15420753 246006433 434137502 758716799 56077812 573387444 531238520 782646842 706075430 927293805 554019005 667733070 94946160 236718839 719125864 779434629 250253734 831249563 164703788 660234554 172308687 884124930 984760209 985011955 892487175 963081759 633642308 741620796 555037387 651786970 151837953 414001334 710790425 950042286 983224586 986720717 340604878 805721471 256172921 319664437 612575650 690464183 979604381 984587006 966132698 968859455 449368212 590605631 153255506 594495595 334630650 456602478 888177424 976801632 150149488 379296490 522599738 685733897 170338782 531193041 994634843 998384355 190139966 874270047 580242277 679583583 8678976 777970986 571053997 673388999 429725152 461260230 726238866 876959537 670137363 754928489 804176840 934621911 613964524 848220825 910307519 954401982 233080167 962849127 863866511 996845079 434580385 583914599 394600244 550580162 428939091 638960643 530259866 970065829 801076172 843763699 754320774 999753055 528089049 961199993 748371166 977911262 899498670 989375865 55732947 243887223 702425192 903193927 525024957 827893788 387771730 693902452 933476895 947050517 635428357 833419328 355979823 716398474 19763802 58950235 149503310 209717055 962823842 966290015 892514699 907237890 965698310 989657766 698562050 939697535 101025136 969772350 187815317 322914698 866363563 953881063 12762683 408989850 272773633 609240111 729196003 853877848 857808809 914229298 391633559 702317826 991689212 996064579 436675387 554576639 222207413 921087748 104502682 433900916 273561605 735330072 570038217 593692580 939185662 992905174 418863589 453930490 985643852 992124679 229889567 795506888 261254018 489033527 648341049 674007573 936602867 945837550 223542451 475316964 184225291 415608285 509550242 530595812 549557327 771763520 442051525 947557738 842927994 913372764 147014615 941766848 702277549 705495038 569975700 750353517 226608922 593835905 311008572 783115628 395843186 966411861 373093095 640029961 105074232 702403667 235702626 390326381 526965899 692010726 205772092 591694236 391572113 825654244 442304592 528042076 341012204 382659245 273380237 539462343 768612283 860240427 409414932 683214159 200219093 883499738 256332939 944614217 705760014 933971855 731003794 929361126 42290834 383270082 926447489 957461283 832214936 920460801 666442083 924501827 513673973 992625505 784888807 988900496 149319498 223998788 952898928 991891717 604775092 793872764 143871162 652029808 933833583 991531411 808681733 987631329 333363257 575838194 241449683 791810465 202094467 446467509 766485088 839018154 193969433 661679816 326213220 376150266 748023132 830822074 502745066 582995447 765782771 954376856 758588542 941607479 448740708 666882691 228738988 512125974 682126882 851648887 354243770 625815280 271559255 566182094 796722090 864538872 118726021 602700982 53810589 594818458 450983150 657063394 272799353 406946168 755370221 938075378 791343279 808761261 51204054 223184624 843749563 989817916 939767614 952731682 56403930 905950170 674458122 865648899 319119516 500572286 878315536 998716842 563455995 682307614 914800079 920823641 121492808 741030864 950151363 950820472 736800821 974541823 280694520 983751281 741496123 772947573 129145049 758167045 356723935 787650576 727934833 976324077 827950978 828877986 118176621 838368166 806103863 870410353 307013347 684872822 731515268 931222372 774197809 816393865 507246646 601932586 204050672 858687184 482767044 626029445 781136652 903815961 118363347 394584184 894997643 908550441 396344264 945800429 577727084 634263323 466688532 523925832 984729855 984818203 181136487 473588899 76557171 236181609 289973757 744067932 591570471 996106911 607438250 880491089 735753489 777529789 630010145 900000822 506466847 725964472 117686991 642573816 329003482 775314267 764138265 904942282 356177955 363259694 521263709 541225129 265094232 521036755 556042253 622892955 75842323 372507760 970519593 979583288 667375698 862061576 699248674 870876719 301567280 890389714 295346783 846812667 332154594 708090285 581971406 866970012 440393162 805433439 933018668 994796458 291308274 645112056 260025361 925823509 939924288 949487553 461122491 866707884 629526661 656824170 587910144 869821559 355467828 802839510 309003274 320586006 205245673 960335714 404100005 762730516 575327826 887899283 17601221 715945741 538190789 586841656 35510512 745529058 786948061 812198859 259425074 724590299 449096902 648639881 644510267 909392888 509423244 899529210 724892071 813049276 301186786 636738438 147232368 381868640 630811411 994708039 473538345 857410411 12623578 420044547 494011930 729331870 385330039 517974966 713680672 849779327 398002517 458027279 651018741 712685297 819758002 954038626 92011739 688708152 479183843 701595078 584574205 782191206 651054888 654343424 693183294 735138003 720916555 740356922 394015810 881905785 823335923 833886443 10900750 288417825 912214409 976636548 29086670 381722807 491397003 964102164 55306466 505422321 107170038 472868663 729040342 842373685 698166624 742294026 313604696 433270532 640211730 777247627 313413209 614695560 211436480 825619194 189141200 883233298 857227522 860152017 876516286 907479112 254917429 596050098 802263066 901269696 683444306 777045394 837386048 976706184 954452868 999878696 783205320 996588507 331811419 556246352 59291555 408419581 21493919 198940298 742984911 988376587 19019724 629338678 703638118 877408216 538911517 850335476 716571415 841418245 214793616 988702664 542520755 567201913 536923755 709503255 847038121 880030056 485414897 798225160 458430353 634031015 322825382 634175588 492017482 546728425 896560194 954783253 288786985 502150062 264707817 779261378 752042522 884391198 427040236 914049315 50894520 584213810 529199833 656290978 379865671 381618181 869824900 926879144 347083686 781407116 766516581 859135217 38887130 182349989 517838901 908746316 647656982 951183146 231470669 662209583 203105108 280911585 201832225 265415553 854261354 955019614 430449223 512748294 20444574 484733272 184981847 991764732 456663114 848696084 900337323 913566533 520613247 824258816 544445617 576270882 213882205 508703635 304701256 878321471 434559336 989223968 997002067 999474922 872461770 986659091 321823076 676750179 386705132 640131073 994505133 998311326 564952164 680992352 334311834 998219285 245380661 738037440 943258876 994183173 931455028 945223461 993969354 999633138 195050457 777342227 57467999 209875819 521666498 565221648 851468226 877367819 864702524 967775060 950310514 959457366 570874575 652361411 778827334 993668544 805875741 969909490 433417839 916216054 782590810 949521409 396841249 804649766 970696488 973971043 188114176 971006836 111996312 206028997 403979393 721649175 292715058 432092745 414433038 777456442 644064267 673181286 248320507 736165967 910152694 952274592 479650772 787435917 384284124 469154749 850641248 972511392 590937282 726071836 641022115 864633147 462172659 784155906 471829402 695469845 326454905 410267304 271420341 994130651 522651376 909951774 305826740 632732464 703408339 991939740 780942920 985339991 502545068 559355321 401395911 522575326 559018759 627233952 606112688 901719980 4433471 715188348 873033345 989602455 161403891 245483546 577997803 863146351 911141592 951828933 851839891 891595308 28743751 594306369 715149638 957331235 550212503 721084543 725419566 849278099 391772457 566192609 852110457 897601105 582580848 864729845 433134442 450759207 221154871 829796822 603319813 893681737 628762248 891030218 954295292 967845612 270622369 425927097 705012791 941879162 903815118 913323025 900546907 973947475 575239599 912980038 820314006 862100031 206788046 757190751 226936717 312097316 753460253 801423743 988611131 990692857 502011151 651564063 236900327 452920422 598656080 905320660 853656635 972543616 417444648 723064911 519337171 566801314 689488801 968467667 326551566 558291683 596656009 674840227 676244681 928758458 775479398 867787221 568822696 980100250 89258617 649101968 647627451 746253478 751728674 831655903 519121444 834301037 70292535 113480714 374199986 412016971 124163919 291143757 761459753 942273684 374566701 535324698 141213486 573800224 924373767 955476248 320067639 767686732 579681214 922551007 201396190 936208744 651583745 800213416 264463228 402638268 836097450 990708102 557092114 960700052 834679528 996726502 716893212 745418406 583284469 848054856 888865086 988785733 508229464 941406124 595844872 622598577 125108786 842431058 879533214 979188998 640151827 842492261 20818768 419388833 287989383 498134823 358815468 938057978 894036326 940413240 522326801 847133823 835248732 963650709 273792992 899511135 540380653 679244388 228883665 391113605 299198739 778680681 520328555 580922351 274103189 733547336 54546790 917166381 860605746 994758258 118512704 754340658 455449731 628319774 297180275 953173516 764682100 854486876 57019968 613776109 80393150 708368192 166173721 746013556 152166515 783600452 534171145 939000691 885026931 886053621 643169855 863014740 348215010 877172135 442803133 765313591 429781176 650530381 106280174 806514394 487850498 561674732 615248409 841661984 582135555 741883444 499104631 596006737 485345348 759072689 978363484 991797930 93435320 112921843 718549580 918617351 59481735 731711835 617831506 942962915 535522598 923438974 183331861 957289816 434059179 821724341 596045270 808634166 246988759 507626078 872097891 899282649 39277274 676481326 552975435 561116049 515265573 637861669 379488100 498202096 963536914 996977489 55338449 571480515 678765892 857420193 203946724 476876204 21054821 453991565 549480211 912099624 460133022 507901080 401635637 898478511 420765439 651408936 661247204 838109714 901339499 936242085 260851927 942313649 178675614 394413204 737278788 809736569 98198411 267681389 217558973 500482479 375175535 588279557 426014785 766584215 486251776 905089736 198789401 484364219 376369493 519901706 950505101 986361655 986501843 995587676 804139664 838135952 517893128 568149754 374437255 828676126 638038444 955725224 741940472 759288555 449686658 923272453 407228934 427187820 951888580 952586058 416711295 996006649 510506689 823277563 42337691 109057021 647700486 884240977 450909463 812660872 51971921 916226876 871983336 919414414 698985238 901989417 35985807 448300553 797326604 958560119 887160412 975641263 386910190 762893699 797241931 931625621 574796174 848392073 100512656 804201382 709695651 749119378 482584351 506396671 142432729 626837612 266589274 399350082 224991467 697939864 809607836 956788877 61752677 111261736 426254484 989694353 320461645 889240980 437388786 665574682 229830204 659194960 906005607 966101255 639937959 990388153 401742074 536914369 873674944 925209897 770987072 908869498 427272972 453311436 336293100 787654490 575926387 766645835 85434949 246127284 257051137 286518274 264777771 914830985 269552809 628263963 707978465 836002016 149315960 591348049 355235722 607993232 792081609 833864024 935002108 967691053 776999504 890729448 250954556 974663957 414420091 531205887 415404057 840685323 263681689 552862459 163834321 866041283 233477407 714740881 911728107 931696314 324747152 381469396 964583276 997635676 724603687 889350840 802180988 977419130 481663663 659756274 114438753 643034697 782189179 995539811 439417141 623399774 972236729 983904363 242344354 649481058 901020304 919165354 9429694 642765870 140591277 360805638 108413943 974205393 236931754 382721213 435247757 600676592 601447730 680262937 474801293 800012216 279430993 328133943 610411428 750090959 862375779 927284731 207592957 944094265 199585222 282590189 370601240 418757679 625682991 969133129 801883697 872594171 868579437 982525508 578489026 842648249 463961939 996919370 903477398 984299674 88575446 384447215 886918030 934536148 400417034 946701655 960472153 975546835 611776674 686415184 217253082 627357827 665853020 873551321 661733147 758583287 284251139 319142890 988913978 994242947 967525887 971726805 647560720 926284325 901382231 972497911 905695144 998036164 812722697 870655233 750884169 949276430 688533985 963327361 860664626 996812701 709174866 941258716 659946807 944516096 502686454 938417289 912644700 929305895 426113057 657950438 780378424 958960974 713169479 991433377 837958565 998501503 215425392 630591017 990483310 996653227 451926117 499696410 95477866 111118709 256017204 280511699 451625562 895120842 854487699 875161239 101464873 159382012 297401373 518798013 30363510 568082456 978769848 988111662 227971864 363928366 805491349 998733534 567671868 944467207 839979008 904451483 158477195 484088796 306940870 773890525 155032321 742687670 973583474 993282871 688893670 819933386 727235131 841354389 772057817 781916693 444614822 994405183 39837951 734988926 909101222 969121067 492128003 510141840 501771283 534607939 191382827 668911816 718270137 971724157 391722180 967427243 419407435 774970234 534595262 731097131 489788392 865664412 765727800 953649885 329094667 882787849 418366537 798879315 151123280 743959697 539697697 575067396 322245421 500744999 299674695 679903008 431078079 799062121 608463325 648181509 868695845 915726140 475764842 581445120 866259774 874478132 706994250 716913139 92944709 262975907 885653448 961572940 871580971 936152828 724367071 729356384 503258210 638339160 210795277 567616911 580841830 972461327 257565380 614818624 294972887 709054885 188969900 462663078 115357451 970741186 826254230 883707361 300268457 417900688 458853140 730159572 861023344 983146467 294278189 818342411 421916777 890526373 343615871 677499585 714683914 834258768 495797673 890338325 667349005 952704060 892287275 952988663 626420641 748539682 176013578 435585892 21875671 858518532 629207140 634747346 360747386 401453245 260553588 406213313 676983593 941885649 818146940 861906226 255341583 619886124 350204240 996756638 420456877 615264407 472506189 927885767 313284956 576630571 59145262 627066608 734791340 965359624 31833073 319159400 739634753 900429417 326205819 387449293 329344168 834157907 905414887 976950926 258810810 460137126 917318575 987070772 257484840 402835608 965041481 966378245 626204937 784642046 250843071 675235485 353519717 680450456 901774448 910935118 411565896 978510858 187822901 862788760 220196313 788568200 101621563 374270788 632905487 643024545 850747248 898065466 963423993 975343217 766653582 917639681 442977829 534504270 537862702 922368410 947905221 999650266 442465742 446911195 777589923 912839910 2843475 196287676 531420699 580622383 650541095 863003732 339879934 679519327 279967777 348030093 907746691 934848362 801611837 999011878 895935999 959266965 245167063 368674758 819625130 941010054 513002713 695587670 951751868 954408388 916649371 924341090 69645831 901788101 502868240 981653960 233310946 734833581 921197788 974091635 353392750 370860547 508527966 572829895 157990108 792760849 279322726 859898496 25495462 188218942 742380976 765050402 214975237 607017313 973738062 993356071 818710537 864258589 620557521 647588062 931229093 987360060 139849586 375255141 878136985 879519810 109797861 752950608 435317569 845540192 316228106 798535087 594957870 921915894 201680438 642946555 219115227 332931805 479977123 635778426 952790259 993870480 643200648 875603443 647684925 725550450 381199269 875822344 234936171 770668112 593839096 629085831 27813776 770280498 895481247 991317337 78363793 955785765 163008506 572359813 235817302 385211518 552060657 580138567 960755394 990177054 675292878 785298065 697673090 893184732 562062783 773945442 437185676 707257487 973998909 979875725 190487989 232380891 814596419 905177405 410263619 889279942 361672822 633916796 508230311 542804998 708685886 862918246 820131996 913339350 986380702 988216257 590105939 630115259 608852036 713914936 74178293 956132119 503750671 568890595 42122724 974393695 855771303 901946911 586721920 940616073 819890212 988576280 193276968 363699258 708073226 951143775 937763301 961593238 838465548 944493954 490830376 893542223 453463336 732450158 487661939 897493689 452095141 997645122 591581962 766616440 550026804 646493327 275021967 901689687 246470072 495194792 441615896 734957004 427792260 545512956 858698958 947495680 823803891 983694593 298296808 515305564 884639794 968458584 814290196 965497580 562491797 942341452 259813303 297732820 915984901 967523501 913017817 993544276 347905371 465671395 950409295 961828693 12857340 511867905 362057687 406730003 39132059 296614821 93482923 459324151 13320300 59548201 90236009 570034375 767783010 867478138 846625617 856043458 996536366 997664853 20080952 999305316 726716466 768479092 325659293 392138308 646600220 977970950 719726689 926902119 501726263 764674074 665758287 952254428 803779438 909848117 202550372 237845464 660403527 913262497 401284288 818957148 5524504 589418394 551229628 981834228 280296583 466301734 350444854 893176944 707897531 723574147 826395407 993994379 934501101 992708936 421150604 769728874 842668153 997761577 49764664 751675271 670892462 699380091 996527312 999541125 300832817 483860012 17510001 556479994 521844716 621683677 811067517 948821604 390021906 480162508 127334092 911594443 686248612 788055794 345195727 643584929 579423480 765319649 137686940 328042976 39117059 135366233 417041710 504326949 754346923 780108826 695796102 758092106 93143530 566139686 328035928 803214444 841022107 848794111 763924189 873480490 789829057 902376479 870791021 947505414 565173204 771614582 193255119 481352057 806300860 886809037 982365899 983238707 327775602 448707963 701472168 956548061 943702829 980838437 714455696 993496307 735501410 797278452 388176636 644474067 316383998 731995463 505344683 583482247 647671037 897377550 182296578 745354889 80941610 384775913 338942897 584934364 175237228 999033217 306973157 419763093 84856579 573695229 38921827 930826926 843946316 960711120 41718575 565228934 724979838 768877893 497962696 776472856 514797460 960030857 225081707 840743182 478769924 521181336 732635757 811225811 69046605 322205962 666664469 736935072 342211309 866557876 668994154 772827695 175161139 260623384 646430077 681428810 515211345 634783920 723055575 772625637 725505088 893924569 869017124 937612746 490377972 732382712 510406542 901385544 970788567 979012780 858516097 866271974 61239606 476553751 310209394 580657066 851618585 934550079 548894008 775660529 689231052 775052750 355471923 977802012 687474376 892263778 262040579 989327968 595953926 994648363 520235727 899576969 1213758 979048011 314096063 413448001 393687431 873372233 527283106 969340834 981055312 994283069 648908916 702794442 122327748 479327429 601520664 782065871 918209023 955391397 80649302 138991370 119349890 420868757 529803151 583754713 814416938 928644375 762950800 885674600 547102328 565747178 543893989 757673411 139852123 306334361 568818681 746796390 195149513 247646228 91926325 517391481 875286395 977631168 593979643 973524912 236001878 245214583 852470632 988663526 999906509 999917393 350013983 545654581 123152910 779129714 716994562 803918907 333854795 730940662 773538822 784257318 280858989 772810223 133734980 196926170 387472031 440120887 834722752 872519326 542260450 620574274 621349672 703271777 442326706 722420205 165025455 713369002 58353662 146686591 760418753 843666881 204732840 393167773 116021130 386402550 247247008 357151913 683104518 839937456 530658197 836101135 393660595 955047525 934351054 992899517 972365849 976281061 677397794 717663550 837012651 914563050 641209336 677102938 542656709 893492670 451925208 464151517 549594210 932249401 809403745 962826812 291414870 780862765 66482901 755174219 332374320 752828132 984293095 995570057 66179335 252486920 319663044 416440446 308444337 681859253 644948171 978447864 975443641 978106408 166225089 511339833 519771795 571840744 126660353 543601073 676147172 892348086 75152460 915618443 165818329 402810337 820842752 834872847 533272579 899034070 694880733 884614969 399662385 879751274 644496575 969255661 271666970 897382053 471622165 514880530 621904883 706834910 497599458 534829855 398961789 422016094 827876937 997527874 537807646 988777893 1962246 724095197 135783541 740057008 751111515 895911325 113430096 606196348 220850328 541507149 584928451 751640491 216102301 942433304 90452604 192006516 920536554 978872239 913381302 977053524 332613065 861262493 368724517 384732880 514165933 639699981 498356070 754552861 176360766 282477010 944735278 979123313 835307915 886661245 840548927 890980725 226290514 851725088 690364111 870536624 402716016 756205626 126915702 430911472 251615832 403902035 151785781 333942461 948048865 980584700 884079547 966733618 942946420 954618277 847702816 916511709 875944394 882898446 618657984 637470517 827293262 839621676 15917761 206452217 530727448 582260475 620184251 642918561 966719415 979559781 41367030 533477732 479274670 632926652 579407403 621102773 31593728 590159155 901820413 975268197 506527983 907238959 658513508 737521434 914411628 969994451 292826993 504552435 501732837 779362943 634485718 752062683 345939735 957699741 676668192 990463844 326008705 694333714 459707920 630993615 55954929 807668194 714263542 894188461 700992832 986616007 572140746 743600241 895980664 955886977 703885255 912132725 559616134 683902135 708880734 971201820 723641203 748568976 933567016 957030517 7967588 456881174 623506296 816827791 171209199 680425847 654371101 826142065 787966246 985435140 378475216 868436464 714335558 897134104 134359944 903807671 668965580 786834106 801261713 876565950 908043645 991947098 727555497 950541070 230003852 319483250 706000526 999260279 57951996 166342863 124523535 337858486 597844655 935255585 513303804 998215136 41443270 554121289 550140795 664474942 893676133 932756751 862640793 878428544 191744922 932748029 2377093 269126818 68241299 248765489 554093667 945525440 454333198 744760454 430417054 701722147 433081445 672793321 990045293 998385344 305752378 784990113 716375925 816911313 823032108 978551203 96372320 348439350 523945391 782419264 127230848 286628466 961689593 979193224 873642553 948860716 750267027 862038489 817850607 901422131 42194926 443013600 824827069 826620320 151476165 658217352 221968010 732149000 68050412 139514627 101056071 689547896 528009598 807438313 917458153 917756230 557505671 782284455 354174439 449166591 527132991 983097383 9432729 937034420 302950902 873468189 409031104 912578262 616512067 974774739 517959318 871535262 590185791 832393112 133865627 849140758 782190585 921702738 963520035 987788085 800066281 919649249 782281346 807402223 984742297 990337785 425560483 743591827 339002912 826935576 450171349 768043924 712654710 823156890 442480589 510273450 97697980 905709476 509220558 651381945 430036608 812881302 587193951 885229602 12154536 679772046 127398504 863064780 609018767 703341873 494447829 594427504 716884314 870478023 966737679 973099834 927258697 936390002 751406224 907847682 325414213 957545526 417088620 588340910 781663154 894316769 35437724 410229818 466305546 600149093 644221091 684414839 348406494 457590073 31124349 765368526 683707772 787584681 23109080 950636375 774573550 904805870 928927102 955937416 50805865 374782221 753004661 956041806 557997606 882285917 511022629 908840155 656124168 892891151 907819255 969986817 236844195 290391547 343557076 616959130 296259746 372584509 882372937 925407318 653603837 713092147 746566218 854289602 956890975 976251341 670093117 789750753 661289054 784148229 928050820 984249371 120424570 401765168 831639161 934231458 306283122 367046555 165975570 595278963 879501040 880406111 158505299 350749583 995771461 998444303 684617841 862376226 229496419 769559937 391187831 971060183 185906286 709753790 372063852 835208427 6790805 887098052 644432908 977860869 351535823 852632141 371156186 508721743 43459094 328490458 49045254 871429059 117767453 424841533 734981632 799479016 750519838 928642650 933756184 951302390 631133768 895216840 144327132 328861542 542632304 838469153 534637882 679732211 26446798 148400192 575356047 619303017 829446174 989577948 383418285 577397634 298379795 747921637 840949621 849024385 692769211 782105520 162086310 315844514 678432452 688987028 645248389 961894722 943025402 993721264 12875215 373726869 161523888 772259331 869057185 980101936 980604613 995145849 512434811 898643638 445530433 542400058 173577995 896569443 454355730 660794664 894243966 999330114 260756537 611849706 5171250 133677103 736261636 788747897 22923166 321362959 429149510 897864710 537889312 575735991 991166915 999337230 535470396 665868851 823498099 897261338 561713651 830207650 365340586 542602034 33413160 559990434 313931082 549942499 67314833 86286833 824008685 959650893 367989517 977064761 130966591 177177963 600663951 704703322 757531118 922694451 235282092 671273366 329947741 804129113 220745273 801723932 570371832 705300829 69309282 286206499 704466198 903260557 179469339 554581626 558397910 735378701 416687685 813538937 237630577 340052117 250137169 299900417 727809362 930443415 725137239 767821561 901838094 938705532 744495634 812470173 714113464 839164655 76654847 829632660 903060572 929636293 990560822 997794712 95538792 825730462 832669939 874960099 110249305 827218723 902099760 966245348 532499702 882384497 966674240 993318813 870751531 939617198 350357064 823274563 213867494 711701747 108363403 621589346 391588890 761022584 615200446 852303513 451264601 601856906 373871773 819057090 508708395 586989795 772403572 904442997 430206261 818087023 608739369 813432043 526533910 747749323 776762594 955328249 64843923 418738879 474787256 798816737 344038341 851063507 645547046 805376477 284530830 364102859 540107376 860829245 772706273 824497624 720155016 891792212 179291432 638276099 208016228 725308065 387128333 482416758 769187192 863086157 601218805 896295438 271845409 767073897 21973816 114335621 325139440 959332694 157612246 225225088 560026112 653664539 987161847 995414614 93709688 437864190 113584135 847692370 93766554 190541000 809669515 908315485 704074898 871094007 826486997 959063583 276202015 985404535 682970374 692302613 851959311 896602899 833505751 974205610 34837955 266621648 282735461 998317864 282635978 508350559 892707488 997633982 944073720 974815540 213168377 632500351 117100500 635212826 673722730 997741667 794522750 992055683 37437942 615658718 612568725 645286192 275120785 890124268 165320802 201757702 549697024 586859231 407523415 555236850 338779281 584719880 119275234 658651549 773991317 982287813 212052166 861354334 863019588 940365439 941362887 987966822 787823576 804340343 260746403 780892686 425628506 670450320 196675174 501049868 857527663 959476413 942082342 972363269 408360863 992362241 187909905 810267339 389957922 416688330 264330082 452986784 517918549 932537384 12448335 777870158 104669105 518422643 561803416 775575712 659508599 797659054 603095667 828776866 642854660 913788678 587043530 785645498 868484658 985002756 72848123 824731852 371629406 778024650 352785105 550215953 305633344 476739915 548300327 780899312 189219805 241903815 242565327 729469419 827330395 879468374 621154509 808122721 233755442 510794446 954178961 969262341 542916967 601185623 900914524 930287506 747360075 774353993 643375938 871507493 885452524 983415786 296470162 964177009 258292797 574801720 559120573 870264805 830229243 863280559 474189330 896393603 389190949 597269306 343152946 644540695 799083329 854439285 102510696 309502269 212793498 829493182 975525083 982469796 634799123 634987759 764607596 915030225 673875000 903338227 767394922 776792732 148835933 599036557 103403320 195727362 179283372 600474652 654402481 772854479 731114627 893726766 925383762 987982879 56601788 506069691 192935147 209693813 453398436 590342408 235097641 306519073 673810848 933460774 40717461 991340044 715698708 973921033 448356886 640624305 603242233 868852137 861331639 894409038 329442853 629376974 34785324 47578024 148192991 592650621 538977544 856991402 615109728 988538463 565365735 933888447 655637086 831385709 404714486 836714221 133196951 777747987 883640726 935540700 40731437 154317655 436864823 880142193 365554714 472736807 279372339 712335626 237031541 973351889 771978682 795050935 774969394 958194243 81697583 269896421 134016913 497342084 166582593 942301612 610949691 988542888 492045230 766117422 142468490 645721158 27703353 50129456 145637662 460896346 494078273 642465716 270084474 951805876 891652649 892263911 611575048 673954427 588409175 825787297 295296120 755317568 949305337 970160116 775513813 851556469 303492986 910530915 594034268 871500090 146000299 233167928 333944648 826647268 303967183 833711658 138323827 829352029 984963125 988445013 589433118 803553687 527397181 959047413 454320164 476415516 890243358 918082298 434523527 865055676 713201479 796654485 221209129 588297082 492763857 693619136 43482700 785275308 552167467 926850020 919078161 921802819 254649232 272458577 44315682 887261132 325228832 619450104 191803520 687128672 386771111 705784858 307642261 340647879 458846684 902450367 522043146 735121402 985547028 999235666 211078166 325323615 929067170 946433658 428994595 927858103 212826263 814379057 519730492 945688046 232138717 683635161 223987518 567160882 469985041 837937217 375958072 401518987 929016744 985677952 538244941 545477088 18168466 294142075 234370419 384548233 564078371 567281122 910230949 986687542 285659133 409140134 322285650 796030549 24177350 87415187 222607865 633661968 20920201 156077284 239047483 719658246 893090668 896186955 565600111 986883690 373813662 899638163 218958283 927967398 502019302 760638437 851098772 970027344 698472935 958575401 672383654 808369177 51559913 402359685 62128148 959172267 369051002 743236700 757764695 816746227 962481559 998850561 291753723 932720160 544425425 730136720 541039543 917471202 912107601 947033040 627073325 896208879 655425795 879322054 545779035 876775062 235424418 710831427 987483631 993955611 923153528 972377260 705383127 758016996 238387050 869481099 822763182 895169948 873792512 985841935 765886054 843265598 305796742 736157880 383370057 701365925 420620407 619016180 639621746 649799021 898765492 913781974 591747399 628930202 55084037 452327708 61629924 548383288 76324610 156538518 414327513 880904847 715240205 896957893 133950773 835890310 468973434 666849824 469524836 577190655 524021041 915250502 994623796 998077439 936445135 997466677 233659923 605408212 218515685 563100876 48359032 298654133 565124197 793923333 147980027 549844119 100353082 573543076 646127346 833101388 955619321 978812272 512725251 631027079 312890655 630959816 680013294 897401972 134075474 393528043 163528592 319498373 548921032 866657363 356550087 870543148 581082784 994291789 873924121 899351429 825203708 844429247 321040785 768000831 419933629 451133964 747986060 809419773 658266060 770407468 4369730 991005751 841704792 903929238 366081602 587012998 468006191 927884764 21596660 597732682 826896993 921345977 959062786 969141876 154050354 980064852 736854605 986648460 990305235 998395240 914142023 996907974 144447786 773637912 813867086 948564727 95976227 514762015 327289234 558432278 65947542 892923015 634178269 914226392 136581459 697541245 153882031 282244300 212385435 584094509 8552914 489218418 708648556 837620640 672282355 855838476 822475414 928238151 175162098 807854962 406697411 614278241 783489504 996168004 448171510 962578160 820255994 998728329 607851550 669351184 876563763 945132832 984682529 997493919 128305443 539311298 37284768 383407350 571458642 762532791 509807998 718605753 686216539 894459744 231692662 682415368 421194193 907037283 719055280 827451203 90767366 448940783 832292407 997390288 486413779 610912957 104820829 470510754 253062766 951607363 365234187 850765784 793501950 839259133 535868076 964476309 993992282 999116957 215095050 746344774 33058918 618590831 273730634 313781919 647046141 809277632 16579429 603521626 921547323 967250405 622628013 808481276 321502372 399087522 665872567 958094458 978316489 999178535 776098170 776894496 899325537 926518032 55269021 585554251 323110500 591731599 85186178 978655609 176245554 657134375 710246263 874642960 132010243 675161872 676140754 848228070 248941718 438579914 694206886 752828653 362274347 631347302 191500598 714834577 693872625 906850826 408944365 806563956 590021911 825247559 251348256 251662079 753042780 986189530 166372208 751605394 869984214 915171549 476356091 579797472 567194981 879531067 134300167 491234700 492464237 580867800 218100056 431400508 833561792 858154710 755181789 823396038 84786687 851218541 342609733 449596849 369389451 425470454 158392570 183589082 703266290 901670466 927861305 996399994 922673311 980278631 346042652 628733589 313022958 806417349 378205491 980821337 911338505 973678706 124392204 850582884 357551795 947021016 136140397 241443622 277199470 651127420 839466939 990313480 178181520 944154753 438581789 905213664 322863556 330178278 557320443 649839533 558793007 705023925 102572329 200608098 679711500 689430991 301713086 743678279 913756360 914750844 714311355 957802696 137111857 637492988 271897910 745309055 747978767 978789466 602347946 801384165 245073545 450249462 573254208 751234275 277329694 994628847 962990844 967837158 281674326 947660910 592208067 946105908 223102716 963582432 777242394 974331595 581942993 955574532 376228619 564267818 455196185 888793760 577537831 622652504 670541349 884128452 445389180 864736495 812877630 886668322 329760320 682264349 228030213 384857273 92749984 445557420 493353259 982915386 459467116 965060869 460004634 801372724 873027197 900508291 813986550 861577701 906304044 913959728 799252659 920166435 355210513 571995512 969071586 972020937 342463558 795622464 380399775 903321356 381711532 734527984 404708613 529655669 696167866 894189537 672791226 850603618 17756570 510870959 134736838 406577909 268791276 337662071 389029677 781361462 333022231 592958630 62337627 104301581 144503329 788422005 334918047 907434395 910156036 947913189 918926615 921208574 975632694 977630976 554238069 957088626 983881605 997035357 151502876 818825514 506815498 884113467 174681495 565569937 304715272 514814928 260416698 591241702 499404984 918773976 998836564 999230804 929047912 978321113 547269183 730965549 849183802 943782548 122399475 190620226 675017415 981162820 635022400 794822363 821332449 827844378 963516698 972356873 229415953 256342578 674550757 912511090 14685739 410762587 89288511 488891474 266872256 587690700 622277466 973557745 319900879 566972253 566190750 797914376 582649445 724233660 414356158 864721764 311144035 436802264 158741965 227488351 384642990 656021804 410905706 998957182 743273182 885944646 643846277 790961713 449036181 738941617 889018393 979741614 285717781 695603911 289897588 387501326 804982947 870293570 12481926 333696738 662516179 950315245 920775038 928949693 842323878 997422491 20690202 388848183 53686813 664174047 154219594 452307493 995037317 996789698 853913354 927229692 287182191 864355014 698254086 960218484 155652461 336804394 364473915 939269741 769742769 784878440 155558807 832549980 954017374 970825413 746361666 845962711 501003709 882144631 29630248 341989532 801397619 956056073 322105735 555643867 511636099 757003028 744312384 827808130 505012439 749701857 496795636 927643497 213278880 949754730 794281740 872968717 156815870 391550797 18489473 592561974 9088975 924684065 533624214 941976876 470691280 665005191 702846945 737789474 716662204 723279893 807199823 920070701 549293051 818645324 841549614 930756651 165831569 406897594 142439703 243659195 685144726 880361836 380412892 890217549 332023717 879952971 66134810 288663316 943531275 990735512 896028369 927633698 376011890 779205231 849474948 854034439 644805178 698502294 677790395 919585806 925958930 999441202 385535959 805096433 74544483 837073118 818795077 880835368 994379015 995145243 929254943 969717869 804873769 913200176 807002766 901562319 658932661 662788628 399441753 547352503 388704536 833952485 106481718 501098508 720973325 793886953 288548908 700915242 103217837 148914179 356463344 419642782 782706325 988334869 915574761 932882791 898238616 929311971 273041967 440324932 429846654 511148357 136810598 580378459 567339944 890225526 210601802 491256482 873348308 983550980 224289178 268737570 402630516 621078661 291972425 556057463 521550682 641586467 405793209 478119078 872588938 938062855 573748380 837071062 819358491 991241811 928924126 961914128 232035936 482041673 8650322 383994114 179449335 984224385 780635629 899008399 446015484 729089942 125053146 821658291 883858398 998619373 359212272 872467463 58042093 684071587 418044850 791500872 230975154 890941518 59311378 818198664 319198012 401623754 932034950 979848925 587156650 791243535 263629645 548731096 718784858 843661538 599247743 803138847 495120590 505497437 100127281 410988068 72918613 378837663 559766567 739839783 599811739 826435708 355929003 794082438 643050642 955019342 778450227 936277119 497513497 672496283 644129928 693612731 69405706 709615714 195716901 920526827 257908811 749659164 143878717 685061242 795957099 892374499 415155671 594348816 898045405 912601058 585396265 791570687 697678896 764030904 131694181 519108781 949443921 954760635 762566650 926456034 516616088 960248707 200852083 818823757 453388266 637571135 622866736 812418193 524124569 886839138 812526262 959179850 766598440 883015912 890483794 984834176 518528423 985479426 290914996 771708456 157369977 310621049 662524683 969853468 769550758 790958023 384492039 591678500 152954903 155798313 425102200 861363419 144733821 721951249 618122069 630149881 206008817 919273229 608927069 837846150 905956291 926599334 442768736 948403215 76345706 619956238 460921982 498762845 570194859 958673645 316015842 563871051 186622813 815530038 494731948 518964672 656228524 674492037 5288116 701517496 260476373 404926227 601304105 617567269 516340592 782349837 797528232 835729529 773517617 920202190 977031048 989842086 721215698 906691964 697901650 922377522 762176128 766775061 374477269 562257169 964729934 998917665 312545366 647228661 784132953 858483593 946886020 955197124 374437552 896856393 118603311 434817344 644997245 907384165 673649513 926416272 310089625 745746859 341020198 814682116 493986732 841847438 25682221 626884461 938328392 966780675 252204999 584524190 690732554 904142199 743485672 762262464 385291660 864270339 583168993 603172431 999092717 999741669 356750842 535888824 106768395 537121995 122023464 351186919 617411598 716628701 158398692 769251776 618351089 870199256 289572489 861653528 906075711 974962503 510850714 707696680 4897625 337225305 746627355 988737671 855502298 888387899 619600230 921216268 599273252 654660860 227852553 473207355 782906563 860706580 896222670 950120031 880395890 933168937 46016397 890820255 746872204 824473955 292370328 799616499 695202165 710144159 237316258 378139215 38918503 934821661 309850806 865387631 590762263 748106468 325654014 621369733 449024709 990370646 951186052 964703260 49329803 499054968 747890271 957910724 329610222 666659805 409282759 566785998 299709257 968706536 104847363 897815274 591843593 758140587 229314771 825855026 344935125 456592038 334924816 912797629 612967519 889899907 750298337 857483594 367817695 900866003 494655124 845006876 254339827 290493948 388373192 930915300 44758861 534043109 978388425 984615260 23012643 44090293 635262411 718250750 800669691 887468227 742990173 881652150 201543215 369084949 943375621 996684532 50321408 383441214 156675046 652907267 509850232 663424588 347755565 460869057 284528168 766261659 394948636 901491829 397238760 675609376 578330940 778997628 322571159 814400639 123551224 779792548 499389833 874505632 322661957 361353198 39286660 941269848 805178276 856186104 785347352 863819746 575592331 822536153 143283508 905943469 316256866 846162622 315672665 399515417 265000040 646688156 185832363 341903309 211072511 555076473 18487047 928847498 420704383 875851084 152810112 734964830 589636713 624055818 203301992 242620655 353762648 444018021 649847403 751854218 807722021 810655452 180991247 582462441 162875051 766824375 202805116 835433592 482296122 689458807 838770306 919315635 856063424 974582080 449063516 707791933 868589360 951158766 73105698 854544170 213978822 435473701 478153675 706092620 295590685 969955056 908259718 941351516 555186916 614140007 964996203 998151185 765984752 788396284 920504406 930982661 270902704 988229529 32939243 127073937 39373038 918976997 39687812 667636580 973371520 999080350 510664235 933565007 476205652 779577547 316037107 348222355 478210680 734628271 237640542 279588908 463015701 940859895 521794071 527072501 381187815 569964093 239928574 399184598 198467692 726593075 161091310 755274516 383861464 702686591 730647473 759634828 864507906 893611564 209970747 943299578 343263481 623441649 98610369 930023727 753210508 956736187 554957944 652867200 146835951 941238438 872059567 878477148 784883005 996410001 914717678 982883727 125352824 837090887 768391261 902917081 186075583 671158781 838214164 917182518 867942880 873413278 411230983 873146908 98361484 826175268 530021486 831515831 147608418 505062902 366561347 693191480 17734037 399102383 231427122 621930771 549571499 847788843 214347041 663750187 691952404 987713448 176801439 986421250 843588116 893709161 909486186 942502651 548938493 884785138 638120850 676221886 953712539 961189001 365485904 747688058 757811571 841701475 869881163 934692640 519561759 556408730 919827285 956237871 312768062 593823597 198717793 565099997 975304418 981806006 221678198 362824278 698176655 780514944 823051391 900267876 997510932 999886288 825379869 942070270 239984416 773175306 662867918 777760657 818851156 910889574 201583821 783263899 571035542 607209785 833070268 978604501 351394075 866333098 952078630 954308706 695199192 720277990 426685873 987136954 879967275 925122739 280683941 975723786 850292992 877077743 422210509 584858154 777364282 786406529 504484816 978849011 748286018 953903970 805783 625507648 943034594 975562089 647156694 656170444 252845113 558307374 615319255 759284702 262732766 498804638 370950670 926216486 267422703 347345478 66168196 163243495 511997838 921303641 119269053 198444316 589528902 766733497 594855898 707126353 311942959 850206119 315366715 484401055 69863025 285969468 407245118 834439433 969189525 974798158 6087572 675202180 309616079 440339387 382534220 624275078 668011673 718049038 214350002 444942408 659584774 935351446 558403406 580872743 393407198 725427401 444816269 694076426 986806963 989427211 463316614 588560389 189037213 520063774 469621972 627711031 614663074 890557836 119049107 496869149 569885191 709793374 121586476 862498236 240654975 782941669 883240861 987522585 962091325 963994593 726132693 862784078 226982355 296935944 506540956 625409304 326312435 408467657 110741679 613954531 882349043 932400301 33519766 443817690 210995291 887968402 271239801 751880963 324606808 814935468 879643653 971932675 346843745 997982061 329333023 377554151 729716830 748685767 302186575 412153267 175265316 869000739 889723035 936991286 816770538 843975882 885942603 938076054 141643363 973927934 479230050 896699110 317140880 374418563 4555097 930692704 8015497 288744473 518422825 698536957 358173719 629141413 133925563 935936313 475979517 776733601 649392145 792049035 88329749 234597544 370944778 616429418 580913126 623752576 933528488 945074676 826643096 921576801 685279794 916168999 8014845 826276911 309022318 909948964 115020556 508444628 326378869 598262612 906184846 935936407 922718007 947257484 15770009 423764078 139254312 573838232 216553170 903184801 998581448 999689264 149409248 251904662 156620494 475337320 565085706 974398666 640740112 978226633 985439616 999888833 119102667 342989368 961984200 992186037 720716386 816199338 304067324 828856895 932053077 997413333 16607002 519289322 824209250 875734053 125411170 951423455 40571489 600187679 112560144 215976530 816095368 914076581 959895537 990489467 315416292 636809192 464908806 917798446 97689159 326425536 331519500 877277642 881235425 887840420 914342911 929419249 41828225 312971086 612005125 878313361 393680137 739643992 931326732 962388813 503343545 841292299 196473580 585841687 699418276 837868949 452869495 548443228 33902115 549282087 176441169 548885087 125715475 933321692 979459637 984806444 311825874 833155458 955229572 972474657 252231249 862903910 223237853 496117632 47877798 140662125 73126436 523853269 220349306 291882643 785790599 811237339 441232049 477865589 665284587 676548964 630730039 993432158 387420051 960390490 973530881 991409016 590138094 692529198 813468485 877358027 395855973 605793211 773057028 862751305 226503367 723560483 810858259 983230045 723998839 725578896 576768838 987256507 962786367 977623552 715078750 910493004 820425283 939790523 957963547 985679821 858315956 998835196 759678836 831762918 194212604 439737314 266216686 630483160 473905897 811833003 377728776 509290153 864268815 932315221 717890784 922349292 10020828 903753993 181791323 872973013 174246020 304389711 263838721 609046254 265079324 667198338 659510027 795728930 392303090 713283734 906734754 965462474 633377808 874090092 277486827 760505492 501274406 839160993 167902899 449181261 574044194 622951456 33602503 316808562 227693525 477441380 573077915 627117780 298847018 683762025 866151514 872151979 309014261 568283443 19809165 774565950 182577086 256956748 311780837 377915286 89523237 351385155 744565483 977526187 512730678 521658058 519627814 541932001 984881115 989175545 49756115 716311335 142337162 146596544 508130502 935800577 944287645 955590989 781744300 798901941 468143511 653245275 336055815 381006664 810885668 990616429 145272941 603571844 287515696 575691341 754564974 804369135 216377117 758269997 734980622 880039819 249176672 554127572 970503813 979992779 802321338 975377313 496722701 639787111 140444717 382919448 533329654 666909318 690659601 713910532 729076623 732139321 113347703 300999601 447044216 656286027 838484960 968072151 982497995 987656945 800613705 969895518 451481130 512970605 41803897 601669328 837895852 987576004 499154510 515850958 177849886 893587942 926318733 982888232 759806410 930333064 713826660 994623113 649318821 946266991 679869879 756990711 58721370 972501556 154419667 271823488 597334470 650161462 787254050 870065734 992766478 997522880 32855558 762276703 773566887 822134567 413850839 916699183 249268698 567464875 870696466 921035606 167434636 185778437 340259373 900285499 562607841 671848252 156462153 451675720 643390007 918679278 805025574 873167936 979989748 996298266 289973857 405930928 955385041 988330921 451963489 752070921 262479333 826442184 573119149 946757972 197706822 365627771 309472415 502204575 660163407 702448484 289609858 447235820 512470859 868577443 274126678 857726126 302775133 448136935 959797033 966032004 963893345 986616032 631393471 970720920 962235954 976494512 661110131 708230232 330410424 735225439 199504760 792169057 870762051 990176322 60462862 241743541 290373186 732024800 955608603 962727619 967564689 995182371 673718486 732272078 535699089 671793757 326498430 944474728 772740887 901385276 454659756 615534664 165840571 927682044 523273085 850049764 517293935 716064900 293281329 714936387 615767292 672662835 11230227 482534791 25140714 212000788 870032239 919100785 989365401 997919771 734114816 954234818 868001666 879136450 486175961 751505032 967702955 984908306 110769936 598496960 151738319 816133575 864857902 882164310 991071933 991449631 102093759 717479564 674178183 899795215 822402724 844577041 7008103 742092858 325412053 938356932 668583257 699362144 496935233 859921922 843666182 894050935 949951494 970850421 438176289 674429757 520959400 807021027 522171350 705206554 133816599 722494972 608343511 662284877 430431225 473707076 683028998 777613117 164349792 439314431 623473819 945692391 411658033 640984185 66697174 941332333 589423846 596286039 835335148 992876775 757922080 879170636 655188865 831687668 666645830 952688625 203572555 552193797 596657771 954879021 276699179 545384938 72632616 105022394 652641056 951465853 310071855 496225978 687054736 910098446 279390278 753906072 746467180 989351809 460871 306935677 483508813 906089500 518121716 860443982 92233737 939076033 74599742 502977672 387541901 992921707 177247626 567574466 202217130 915848788 245744966 688484029 455048301 949365670 692121586 958432682 456991242 615028432 369056834 553922575 201343149 576401146 517785028 850867763 706487125 960659812 830977744 836184970 623726599 762741758 468281664 688896882 985473478 998440117 910937456 917761732 475754107 661672018 894047419 917600668 772681017 780187586 425106973 944643932 519727796 703589804 82594437 290395670 226006365 326891204 78736169 516277419 605595299 972575810 323723417 422917679 914608162 997221206 484785576 984162830 358453804 558151078 568284937 673190951 529436702 637793741 268711277 994471586 230014348 949416795 450888059 898424064 612687651 737948824 382912735 582818738 413169451 484297883 100101336 932870498 886597155 890825415 673290412 713753809 72448580 643791688 280331753 933958105 396598709 989510350 182212854 493148117 799345084 901499624 755851501 926653593 91879346 93694554 475167596 996960523 212537137 306748036 584529447 931124083 49956372 218197036 700773921 966560566 587077148 907134279 974904510 990100912 992937986 997360031 254479044 283360568 688511606 907871796 963479716 990196316 74099833 681400705 362962929 369569773 229885970 778584557 724970186 955722032 55619822 830667597 433097716 750753464 947502437 952509456 514114528 839509952 114999968 330229751 242908723 870401983 317430784 919447220 760963175 891778065 332293583 693525478 837388949 962255343 904666357 939927278 660078598 703732068 662608454 846022355 336154483 988292700 92774729 139981206 938924469 951116772 140492664 960250072 337278392 824755110 880724575 990297598 648242094 922113709 307252243 810898620 730524421 759958171 512046836 786746879 917096377 976394376 504029054 702005698 31793421 607849849 60695279 265326348 692290367 796880568 54953497 575174935 34809453 640977299 447934112 574968509 300329098 962272243 111484887 565829758 812944150 842998967 174410337 891389062 124504849 226431413 212032192 945416040 556081693 712078899 506025146 886163854 4347285 311853795 907349779 954539488 854976549 880529956 686774998 884651114 910996969 974502150 750110502 809092644 451549003 497324810 872862724 941224071 490579550 892299384 749541348 869039796 318797217 634951798 328395504 453233130 598301862 988988694 965420805 982535307 139304539 189927048 206967856 327662578 289945921 941354645 965280969 983975252 241551213 747799355 982138983 993034813 941240208 979869868 363007133 607654854 137317003 501484829 599967693 724447841 465876164 515613113 27402980 289563292 162422917 736518152 868759540 909841644 501722058 683101051 202067957 780038572 52191641 671075669 522794544 762244381 963906822 968594373 496723137 758306179 447610730 874721673 53757331 895172765 230715116 456102547 272103683 858697743 50894197 120031542 644273540 734982081 437249548 893443316 49910605 240418062 605514993 851535518 931573224 938409507 800125317 912266110 175461621 936273659 8489733 917701629 72307406 450847200 677033646 822494995 201725138 289294077 207491833 923962171 788446628 917049263 264008705 822476516 519959793 759635784 19902441 145343708 430302113 788543017 614796289 892676475 461327059 861439055 350619431 392139685 359266420 739683170 887121297 920003559 449935212 613264610 688079055 730957164 891074411 910817004 152260642 199176498 99395350 939973800 479679523 776224631 499128966 818155200 75515015 634593006 930176062 941901418 362563778 879692390 625999437 679266416 400038615 973252034 942831299 956162922 877919358 941703553 275123333 468863152 480772575 732463300 727180414 963612929 878022972 930326086 116675483 863073066 653820782 977085051 724678695 924060176 618397802 771875245 721005192 825456894 3692368 474945779 619563302 628144612 130338050 315873219 277753805 524439716 385813302 862882541 969630241 999675656 213630943 296851654 159927091 701834680 278570236 922061002 405413748 680362261 440689708 996982544 269348010 686669122 985481839 991301647 516461477 531162716 760489771 823021276 888347532 946959026 61101496 349473497 510249733 781131446 723063595 803197640 676017598 978076143 315673880 506380652 386686189 734453436 457245600 464551923 121461987 560975495 467378394 853551014 294739705 953860359 704794234 709815336 510388996 778045939 768771110 970154973 229048711 396947254 460828994 983215963 871708082 966405224 291414338 788771756 577521134 697563035 295024372 385545845 724318183 922113274 752372137 987729840 820136898 990861115 747809766 886149135 422277464 713192694 329243610 586873401 675308413 857288412 422206515 796896015 422432434 659671366 641732934 805751317 574580491 840800875 607475350 813473950 14895373 814042672 779763740 793318665 419487962 597814497 240068995 395252085 949050190 974560509 55133670 308038768 3643136 468581236 965141026 967491007 565399792 588064909 15224956 89963424 131337726 527936882 864629200 914316025 213827258 737109071 114296158 903636585 453620023 937065715 581431630 683516675 88873164 852224233 493570482 876138750 797796924 896199979 412808041 930298510 811943676 905797723 294998534 670740224 433588690 510211378 596086499 726965970 378120971 765142255 375692527 632586171 355551199 761214372 185264082 249404187 157571119 611507483 497755198 907318538 442609673 886754999 345231981 585916525 6560320 670130767 206879724 321869655 630058411 738706474 853166053 996823721 728988123 740624180 224689748 367567264 703364394 987156792 699749072 855751086 571546784 918211608 763480368 944356584 21484291 169359885 93733316 444888846 978064854 991005561 550339389 933146548 220964974 807226308 322769521 679470389 249005828 975332150 956028534 999336477 432989421 508623443 707875020 825770050 435133840 460347751 437667073 953609424 529797102 788963675 694014900 867758681 691245482 974261163 325240825 489824987 290129213 496476208 440305351 961191114 442743271 578728274 633661332 942408867 82942476 849114016 930936097 973351926 838446971 997437942 759448105 844834745 802639567 900676439 764664744 800247404 72583210 216464043 865379313 866907033 323389174 688866062 695762727 719576359 553941608 803779893 928775886 941727532 145572722 330203466 983554779 985414567 96180430 949152854 255896151 576660691 490759359 636471709 116264266 852293632 608436763 639365777 856839279 865222807 773734188 995576537 534850983 835445475 705965124 969296339 460076429 568077485 477581072 616994747 239128156 670805329 210247259 721535253 605170408 690107427 809764303 911622076 869011894 985454617 741778865 896465378 492628306 810045564 13397852 520570297 611559551 780052225 569356557 883797992 836509166 916572019 917214482 939050821 594188313 799640064 708346276 739366829 686046024 784094468 463943912 780131387 858526674 971021035 250373467 376254100 393071994 466881861 647371089 862753136 432853474 650993860 837231345 981743351 594656402 990082586 29206213 168295656 262437231 288721542 683648108 762405793 426669547 755767217 603235280 918308645 934121838 987562984 859438342 930801604 356962215 484100178 940848384 967447110 985313425 990326376 724767716 763954839 330781473 824946997 444356089 691402710 846146708 989619345 512115501 911538601 237499905 816697289 604648800 658144711 463152611 747934578 917565577 991310277 775448839 845512582 508673991 605375176 234264987 925524591 294520740 345558561 245697930 611195866 296922125 737511126 84522901 177249351 738303447 901669972 10078270 12356576 180866454 342193057 687097081 841302425 358494789 759651637 845544054 848151527 27372101 89327470 800086787 974620889 113063415 862523965 804751487 805760354 733022721 865623872 623090246 697606725 256724280 624980904 989256594 995514617 577572289 713848820 471391678 924814467 190631187 976473535 290452428 568297329 873624882 988449319 858628288 894150210 447354072 679207583 824169712 961077061 695191632 862547538 994459678 995661420 811063107 979440141 851753954 953561224 602975638 814289419 390051023 479418959 737084112 965324653 219224115 448225902 497866715 577863940 544649010 960343317 516117577 601755623 204376594 520276779 83111814 223952493 526400691 624023738 633422355 862102396 880822136 937323602 223320771 575858286 409509859 933937066 122227604 756725686 24388560 499534119 472867022 971323018 723166479 819071149 224995626 718666289 997403030 998268195 425370396 624577707 506061546 898741971 745758927 849517895 254485312 432116198 551213963 740173627 894401069 948366153 861238067 887687858 61407964 286224351 497387697 631547377 792288656 834999342 416853209 599762833 723745139 863124520 880757581 886331668 981769401 982701368 494919047 578364921 103176753 787795272 850977302 860074953 122515930 497092187 519968817 802331421 457685908 735493997 347242199 811916624 219384097 297802039 495301736 988670239 151203367 403853918 731404969 917562070 645059379 848039477 474647758 760093692 153096668 271614303 74317276 429757914 296099449 785061063 977148517 983361506 672514722 838488826 911396188 927957956 834567315 933551861 962869319 985672089 671799443 822465811 488094553 658672267 890752811 965365091 98199217 262898789 753203331 879441897 741450778 946152224 451811140 669256870 708646215 953748114 471598419 521554771 709802588 726804337 168735632 759683443 866586931 938486903 696194264 773669943 905843970 977012255 899915355 936336926 300036548 338285357 431291831 837082788 691609254 778143979 755635124 981199061 212976432 659053760 130547421 522524667 363612918 885755957 390119349 901593502 548813646 555950196 917239635 992185156 122721802 574455880 769137004 921672167 884899503 917844470 763403627 973429391 763223282 856502024 217341052 753949674 679290417 901192486 159790924 898520547 150564169 162125740 727855850 990623070 915258784 971477652 574121248 929014694 843295482 859173081 192540571 688517913 525051018 817582888 16278013 609446609 160933179 320389093 144752673 464161239 609420757 833944197 304407668 719815583 271800525 991608416 532018400 951980447 537468019 635579302 344302403 955486988 430415588 546650971 723084934 929586904 863973326 995142407 624937921 786747297 273440013 415212089 255668485 457065368 360796700 982990838 302341335 698347149 85575793 888953371 431700642 902372623 906756708 991574781 671877482 966563741 568124327 895748426 313034579 362208350 31698551 576728315 899995819 964871293 569637813 963106417 303470695 797955220 176318880 330234227 609097788 856903271 901915794 926826342 880446425 921990501 304510285 364937941 835924876 958198519 348726525 965273227 743481615 837708903 372512480 491551836 520802623 753791400 6868048 785876984 563356865 953403665 528875219 620458698 717643155 743321360 420470658 960154817 81714428 857963375 985355233 989150141 172329664 229748165 641318819 930206338 258717458 404822009 115018590 757552917 934042486 988144661 164289966 322726780 826397679 904151181 321224390 661432388 846854637 897657462 544543618 966947424 863117783 907338316 609139502 877501018 957616923 967015254 387896088 833709793 316772587 679476551 290174024 961066958 875420732 969930537 523852254 675492876 845956714 953054808 115885005 863735023 298339166 927783257 199722161 858934214 45317404 390901885 361559027 869527507 126840492 298107007 875045197 923735708 839194445 994381110 660420788 900271469 537220623 882628861 127194190 726834015 636962298 802070524 724435882 852586687 918112836 955789286 495924161 865147969 918260416 965789334 106325560 858178312 204476572 989959815 474433787 613314302 349193969 836145231 599475305 832997670 409214151 864762576 641915892 952702881 728487103 856860259 597567616 640459449 411710557 657028482 239303285 995857794 613553679 618825362 239740289 526895873 39670852 429824292 117012664 430091608 806134825 878004137 42108400 297637753 243546268 870336964 103038444 530443103 643340025 679590972 269574099 448514272 55049233 862817558 140094636 596115440 110964087 712187386 643611836 688582929 777933834 897362235 366186293 488909861 459459077 518459534 434558017 605657299 584926484 888200022 485150485 700362874 139173183 773453102 851127461 951377382 297313521 770631528 139037053 620657346 922212547 946269780 500973808 661248845 891448293 975256999 818278874 920633697 940025159 985398184 920741386 989390156 71354221 737978616 357008700 667541614 133945605 407893891 7406868 268126743 795262287 993887578 417040762 427465550 553814876 623416907 890002858 899100242 737184199 926291450 138413231 707932982 157056970 267112770 388959189 561032791 554030679 585409742 260569703 819814543 909336099 980451558 31311820 465953299 806283402 991212008 482898630 890082073 281902309 757255411 97454850 835734717 849319077 857646004 619961276 689097292 255259574 606960270 919509612 982670976 826748236 928929655 489533690 797401913 201578111 929192897 321917843 627933728 74293434 792238655 703703322 758908011 752780459 944825012 280687925 498538991 972670591 994280503 171508586 983800185 34792638 119867194 208497567 796739628 200942182 570905284 565418804 651656670 488271874 600536719 880015907 884013763 232055293 904783466 426927572 981397890 921311035 963723976 632746548 969355032 794621785 963574314 773674048 875839953 554910475 628345500 730797837 948711511 731890934 926704937 456966326 945322449 836121509 847618215 712569921 910074479 187284706 424720146 484723938 575275299 148325123 384343143 512954520 758777462 950179654 974725687 499255679 910407930 840251039 999890974 467579084 930301751 535075425 577814194 567909316 857907387 598889330 745634604 767830057 899625533 192472392 224574800 695179842 737028037 778805625 902456519 37656825 739077522 61662063 895471070 377608954 804200829 69474435 979962802 290294585 723754912 118266949 824656740 791430070 970358620 663290434 887626015 455827974 689841828 477249893 704916739 403244645 734666765 342169749 762008118 725177624 830629968 54516727 874457200 946568748 965410644 475670000 991556648 140916239 776368875 567068072 786062639 777779697 987360515 219443437 838418036 334780561 531685515 572725645 938221815 272722948 844087321 267638618 425752349 976087722 981298888 720121313 832367223 11356690 831256942 841190712 963658115 988397936 992480577 264388128 728978330 198069996 876667241 279680104 851517569 283088524 446843819 921658459 943284997 743159315 797642084 629743154 661739967 644165211 907101073 821293490 854828267 49639110 270176440 913650054 931911673 422194409 691323743 84203491 562677927 975082479 980814927 204303710 876688381 752831635 901416726 165521074 652460815 229423581 922843851 416878147 984785796 717111467 930563387 278480896 944071609 551712305 600899148 700394963 968164586 743814289 927063292 41933354 559196026 788859070 997725257 37557421 710746735 801557106 812849966 420581855 863340549 101722058 612925136 924462566 928620871 17993640 256020539 878051889 921860099 119643777 232110558 755340119 912719283 462962904 920536574 89098647 780714415 577133563 609554048 582685667 937384127 75870389 960126274 695358247 872771823 535664611 599600907 615044563 737586711 348022114 684131100 394851951 467288357 883768018 982221033 675266526 973223319 539144780 779579899 445638578 956030447 400639679 537683200 610167533 996478463 821007604 863958503 491687629 854978601 556380612 557797943 514592386 573567285 550030942 953677619 115697369 867224609 32795728 902990796 281224284 421662169 587667085 770453956 908699749 954229822 394237056 854320123 377954335 838669976 232948174 595005113 778513213 932437195 984717935 998959393 388410958 491994855 596919011 940921039 432195581 606275570 241615183 921679637 64869539 892652255 798352920 837712618 737536560 760062271 94232608 864905749 360760838 721367391 244171397 746517731 741369132 801404481 135402187 652994333 550834821 948188864 196869421 502660634 623047340 883856760 80178066 153277874 939375487 942064181 195470256 321873493 584197656 863096587 545356386 605961103 115881124 731758349 981976655 989357322 914189933 996534983 594519032 842467432 850677257 928263532 556060934 750197537 416547709 667950328 357748117 414179758 862594967 875858239 388187238 425318423 930948348 969513476 876394515 960405263 809560755 978235269 931606436 955871075 459542742 692648292 316112827 949168744 171436902 684987480 844307180 866455402 749982894 773163570 813732062 867922296 355503777 672920176 40671947 623139080 675627783 984874922 448954244 750090482 829032160 999507148 143239923 377721690 783066936 909944203 959474316 996170460 701217236 727212376 279667824 641252822 823926018 942330974 42145546 575231938 240908348 256255952 749094907 937383831 252121233 779795266 302326249 474783314 726557765 903888554 582737675 868892008 925751244 930876081 968881941 980787514 67771887 518620709 293414753 890087666 895362243 950910720 989851254 994031332 678652983 711868353 931937910 936201803 934048680 954387369 690295196 773202494 38455273 613009491 871917650 911996272 762152047 766557908 825143911 954785346 40776575 556637092 433509526 942664581 856222744 924892766 904250059 969825514 325867987 520909031 135367052 826923354 36515338 959817315 658640236 688836809 545840813 701167592 315459710 772488085 953190724 991607368 550898198 845232842 929118547 986047270 678770113 911138860 447564664 916285383 865175092 977442502 441519938 804697822 971148262 984045415 908546864 911984622 472450241 509237405 879142346 937146812 239249726 935939933 846388513 933082876 531822308 888585718 853837663 943959190 167223458 780152010 479894449 718086376 641102813 958477883 381974394 924516600 205639728 444056750 754271290 994276547 443751548 923003374 149069658 713715852 149841649 754270765 816600099 862760773 955734254 956708214 939608718 976083458 671290710 813283130 663448588 820954328 98131063 904186092 413296735 700864977 373088758 400756426 219034010 952691795 517097871 944286194 908175095 972791265 109973447 643876976 523923127 696110621 978216416 979918310 531981984 671865713 600860662 694797638 954599846 984267038 706571492 955403487 302794565 771518624 949364326 976552532 512695036 556213288 602252 447221501 67915923 110433916 883481306 905720680 135933012 343411553 915645132 918964017 289879552 904652392 899531625 931716292 298953105 985404021 197242662 767887597 285884879 809956895 507492780 848664761 93449031 747054740 113238346 809407123 719201070 806303927 341691387 641465378 343245546 659160284 493063096 877691180 851858427 883264063 657717188 727374112 444286713 643741725 568108105 585716060 631286131 903509821 68050431 605894551 754674475 939747847 724349370 995541391 495770022 776342268 313827320 842674453 56859224 160896056 1913157 883062200 401791224 493350437 323698206 685631236 473692508 981420159 615983205 920048449 473199157 884222919 553077296 810930029 177133201 194683732 325938460 823217717 882058545 932032967 616080986 845485583 286579583 660322563 503842897 999752801 98224643 243955960 740727968 848379018 733002046 766457126 648112645 749479906 809290931 929321892 893742353 968710747 679587494 993779376 452191913 970230734 731853459 905968156 546520894 892303779 167828226 460448921 503053683 604388805 337385233 854694472 885762180 960507298 996645027 996706042 578292611 818056881 710966367 868202711 668491435 897273796 873132839 913341751 109823114 722003051 699391875 800065557 436313619 650119158 984705217 990489795 363544919 396311160 411209225 473792415 62514825 382747933 355175493 511853647 579846944 884075323 58806930 810670491 193177544 964143928 998620066 999970310 387019265 581344811 486099079 768946342 954648546 960266563 312539530 882281134 580812985 720785958 845250864 892015969 759231473 803052232 453840415 747566817 390311986 640963212 453450273 976513427 840522255 971281985 128721838 473436059 894815693 986172243 970399890 980371970 694873068 705817675 696696994 989685396 853502418 868689646 595267628 689441445 890387783 909505960 994639218 998287593 756829908 767381747 233648006 526550659 455951352 548485311 974772890 994752915 798564786 835562264 564297188 914742136 887440328 958078678 357689854 682359065 966827796 993679025 399677280 427167346 659293784 839018385 764043469 874941644 848765202 926992901 420638204 679610704 673262649 848017504 944961897 956600587 534274211 631001342 626012035 794425372 760091298 890881871 614165757 811056210 693645509 921515917 707782020 915819346 224829088 574571133 590104466 698555326 285444656 358163997 587607000 800831042 404860454 467642565 231693586 976967674 910981099 998773914 319049465 585476733 330572202 448497351 498655473 854704534 298495653 544466093 570966114 623158511 4557286 694837322 815006280 884251245 354880276 718987293 446127399 646614691 5310739 748972596 791003664 873539645 397940441 961052869 994090662 996617561 537478863 881161630 159265090 500328215 14251276 128520725 445383534 569157745 440380717 591134162 937709048 958034567 829571173 869990611 371491172 710846877 549696192 582936339 439482404 622348834 33495231 981149316 23681476 89638514 646222405 736102331 147254609 472436089 95465295 184728622 69551695 783356495 436658646 526173030 935029615 992259692 868600140 950880046 267247884 850697942 323926001 798530331 327459890 626930705 472080984 513972343 75903447 356547157 50969646 565718089 308322765 548029408 610826993 955675936 47398466 642703822 970194717 971153263 786480986 792913778 51461118 151742510 261159581 781072803 274202884 502067550 674051847 724472666 994057354 996786017 904595461 992032899 10318447 499876876 19168708 656348688 967967009 979501061 441865392 765597273 113013383 134695871 821883100 964654964 918082102 989602937 902393237 907709092 422183927 855802519 704395420 787966152 375397034 915229815 332445810 697601687 273224715 553056670 387812974 709250889 684764953 871777559 592201579 882050736 422770201 433231388 991924187 996774814 438749763 878077563 65953674 335204127 775780508 940452674 153743986 176041816 751678240 839023424 569610409 912117806 689952871 973588848 190356775 554717431 855576509 998150254 63914281 507807148 620654629 663598674 89663006 323634243 942132653 981794638 221834489 598663514 982497142 989809650 736421095 996271822 832412343 857919320 394125972 739579676 628399561 979478090 919995058 920045563 184618217 808958076 778088671 922920566 294260460 515281607 934018157 957245266 64168834 725408486 899767415 922051695 417273110 776407764 629328923 956989396 299873676 341106721 49902546 965819636 202578547 618070971 802327062 824262160 719190849 777639462 337118028 673586975 552229052 993497743 282920106 586955320 803959629 989047498 362184884 762260504 23183880 515505908 778547503 830565560 509900002 683886263 936005827 968450714 998840660 999974623 351237537 449091066 73632665 109366497 479213667 619211341 386920732 826680626 281430830 447500493 348789468 413265709 315982203 471652572 906859432 915604785 122829411 144228231 172837242 671954075 166868189 501382776 497163073 620131409 664217978 697014761 251791695 592738795 536646336 574180022 358924383 419540229 70445929 745367851 27398106 499088225 870475076 905289920 690374073 945076580 558241058 675006883 304273265 627186447 930880303 945757946 759303364 797710275 83090894 652688938 120783656 500243383 95515386 136678317 92828833 756076340 430413788 779131950 661704524 936330514 994910761 996205463 567304621 768589486 456067657 505405177 560406988 810360140 484343760 514484271 108678817 854954396 361034282 679700968 524193296 938091121 702468968 998348319 999814933 999957760 150386127 560366775 395310787 707169591 170332386 672468632 518013380 998463512 203635129 466772183 197019867 389053045 224730072 640154554 812668114 936757201 420436019 426567894 5627833 846724713 166426390 829749313 903490965 957260565 149275907 724602948 19285042 196891159 571840203 757163824 19873923 773959748 172532377 761915676 214139072 549856244 489270505 669016998 321182513 936885973 990357804 994959566 567098434 773085145 64192454 79173549 663885029 705989391 30501394 271421875 121182547 944954856 986344847 988211161 301095728 548813121 720461211 836337226 793690644 985248696 300192561 905941196 34317472 587269584 222116444 747268684 581791687 843220341 152863981 546503711 367029955 572265234 691511959 902203141 143530457 667515701 184510889 360974443 247483817 369028445 410658920 563703397 477472295 944376607 743428558 971437516 510572746 772432955 848269198 878032017 458924394 483325787 380590776 497432257 147863340 973607305 859037644 894462109 725096744 896817087 207103880 619017571 890390732 976697403 702651331 898181101 291871466 437216359 542319020 862299753 451229275 515913057 440723945 604191098 235619058 413251830 134655872 274874732 855939536 957175979 350638464 613904570 421842313 435789417 441879129 681975539 977035908 984533404 746321826 991060483 318640715 407556775 956373402 999177199 673784203 733865431 370063586 540997319 514108809 947462816 966351949 985935159 992018361 996419270 373760900 454539543 929213420 964602994 564798833 668296726 883472468 899431211 993968190 994944255 968834325 977176167 618525972 998714873 791596315 956351072 684455568 766714093 336474141 486390666 372992574 826635654 628608604 916121540 580699251 920348755 966706244 997084349 35564306 63615108 340380004 908280479 741593456 899307034 308671154 495052663 427042057 815471624 502786021 823940779 22840817 925856153 512718865 925596627 375975032 942148296 352081252 920352272 556396631 700632531 511382440 856646877 976228096 996001599 953016703 967038218 960554544 976975928 410161597 574849582 892519829 975872927 263793179 311248437 477174914 992328333 496773591 619124628 892307328 929893371 559399616 997758379 377663043 961659681 931595423 982431661 97827763 145534356 810511363 928816533 379717829 407215228 372002788 599764353 608303652 936634697 785531412 979505268 189782165 918565995 592372822 715081085 762729430 810709130 463282815 598797534 927692503 935520457 884266507 885327545 893075032 998430434 725166600 836626327 841430853 935363045 443239708 692735410 984739885 997528851 468554679 994196070 665184330 919293520 522835855 806617064 156914676 830066718 732374951 923939078 863245971 963583509 779491014 897935505 845586682 865113633 874174671 878695539 166211336 377449343 213943691 681043351 261745426 744937295 247195847 789440238 9938157 320690083 289560892 779055296 573017956 846087790 14422448 620244128 921171001 996987739 685560679 805390636 904865616 993400194 465801089 661784450 861219702 977583226 141303242 672887072 208587330 948100028 963153629 973345937 167050546 312651216 264475411 504048060 826898593 885598975 475914999 513717650 130404194 676929984 307829737 850804588 313986131 979221873 360384855 789474094 711579821 866394280 540864105 837862184 844240623 971251479 940100439 956625967 784587622 995926062 971466915 985679505 489007630 534872002 254495763 651310635 763208839 764665793 939035818 941826026 512562335 716437183 46880836 432382737 990131605 996918610 194932995 803056781 430765736 930816732 693476199 754472550 130775552 387758972 260219487 491878402 254863270 951018663 623701103 663884019 799698615 801807940 490826692 772992348 152149171 343945719 186984167 763750045 305012660 388825679 835059001 851006693 847484902 853108948 496082431 630143813 559304075 882560692 948797001 971126037 726970557 768159110 724032195 897147446 663674785 908566618 280905984 774916217 19175032 959652167 394709393 647830990 605321072 618937701 365175097 736539289 898389364 924227686 669779705 754846560 444207142 808841740 596744769 725052781 714649346 963729945 418571122 749707278 371770676 403766334 499095979 955978283 989799378 996657555 268293165 587749767 550612638 984472263 700668133 956125654 927067142 930001260 192175576 732563241 499135107 602613113 990632360 991072244 271977330 643542660 329100437 806508306 329977786 804668052 422229518 706951806 289191606 879282676 362823017 403581875 932314200 933436996 111441468 169039717 293590005 397778471 584815911 980148666 924650099 990262999 252192266 957863838 905968084 995650037 866600997 994577392 963469492 968427203 102975518 389759828 317817438 936881514 721754134 786168114 472910462 895472679 535200179 575120127 585300952 805844867 603918645 990289933 666482778 816265276 443972207 486841846 572567030 918295868 117719300 733487765 507456272 807975572 999689811 999874133 599527936 850674540 884727206 952896463 23264352 69542736 453935894 484943213 736209385 833352870 458678975 758732267 138838129 716047661 726038294 989902747 380875969 789763562 943633520 989552874 655587374 909607885 997158760 998912082 404058561 966267772 510548722 870348303 238245074 895655902 266837784 753047174 97413935 237955657 533760739 764246552 19790264 449950952 880709543 890652974 431886124 685139784 75498499 946752527 560128156 929813134 551523710 930028783 405836337 900211985 28824916 531033305 963737034 985352289 462126060 465439452 522040528 570087787 546125520 555138927 941136671 971234046 66653806 959469205 329943325 496337770 280596787 524859954 229040919 933400205 156486996 831602765 821029529 838146298 117659039 785000511 236273047 717934360 376242482 859635005 280966847 881837997 607699207 772792934 956029270 961399403 717603545 802032904 924757638 956598520 750063326 761734371 46034919 624632701 632527977 649469526 653170768 876529936 176184641 851929368 203784779 966992412 617686740 793788481 487260434 933929348 69006311 894451334 313326226 988432891 64188721 465177980 141493104 645699132 439765348 545323440 909549555 923451036 866280694 974746505 441237327 919158402 193927738 631666774 566599180 982899701 994455829 999924108 658715023 875261659 341253288 510438904 888359784 905562972 824018824 839845322 914149255 987393728 14984197 260221509 96282018 405235237 607580790 699271455 36365080 841462020 719350338 912118223 756447422 984253756 382782517 465782030 305052187 883272560 149713390 847742026 696035644 781302320 482930772 973374366 56050855 569975320 498073605 871035971 224290746 718908872 225404965 901537949 798305936 808954547 205652707 318394014 674209405 776167820 541918726 871927823 900288271 986127161 482463322 514532018 617639985 661482113 780217164 923710233 703486233 799591363 415102320 716189014 323788195 745933144 675546684 700298013 361114531 421893125 213484524 231112455 568847886 592013241 598748965 913908676 374497772 675893798 576991977 924090096 438334738 584003348 985694675 986440095 259197861 730394926 673898708 850376585 617031069 707730958 619493546 855426946 620527746 951636806 463889475 543552178 582283347 965036660 140166631 831816221 741677488 779501159 36490652 977993664 379934370 848827854 882157952 989372801 679792013 734837501 324737404 544209843 105203616 315789713 978771099 999415980 476125811 514209284 177464545 851938651 32216625 843142468 29161389 635417598 197114226 998638326 31567119 882351539 659430186 676373911 840745742 917620090 893701126 994368637 355147333 712946387 676423256 900815220 531304814 751006062 511962771 544507979 820330973 964880670 345303589 799412943 463281132 793416137 674484052 948756652 928947801 958418892 455469132 838274489 683189210 713910962 508397694 606562738 553396898 880361928 968152982 985224338 449695063 679598266 951619939 958234755 691201571 782145845 929146923 971965272 158161556 696448239 630893205 700169143 947375730 969818941 734795361 745094356 735871764 997130425 173019609 645168749 139558795 466622734 251739237 715011308 529062923 851988608 192595447 937441949 906842732 961610313 142464092 931533735 619516950 654796651 960193785 975895243 180540183 657030805 394512282 461983027 584368034 600623236 574922057 901162104 596733171 729244147 323540850 715632791 325394329 909226999 233496797 352924112 308479648 694691037 268639655 988449973 355033981 799170088 682720044 727057510 384870191 401715113 695535806 833299171 991283253 992364662 174080104 273832134 990743154 996941679 204252942 616756069 199897258 653741801 364486646 545058140 278257599 338518750 971907284 996557034 732897416 969080110 317166803 877176214 527669462 547289459 60573521 827821366 849736 891387670 433128427 982837527 275974731 464014059 491029267 509812379 853958709 905697391 917876674 979489620 894447906 923562032 577381028 922235824 843704613 887553759 505552771 790713614 948970674 995996993 786584214 810486354 825708306 951919202 420291807 948502486 876644291 987075121 182908780 862691339 907520814 971065831 745925635 753582612 589577042 787425715 936728243 959207962 522800421 647021540 112712006 589295653 465949391 468183759 609511197 631337642 798499407 921740734 164688704 282093589 719584637 891949632 975981386 999066276 806518576 858288450 498505101 808386569 78523110 270962976 684155329 729078807 453685942 570594777 516324799 536522362 153021710 846096865 65885782 979852972 848118302 951008372 538007888 608771510 584490549 722498803 468587798 633918416 223900188 750126218 459982425 489249585 786973977 865783526 330576025 884041735 523128807 647966449 611626912 655756622 451545146 646038936 520086516 826295645 394667704 647279796 464200465 575432766 487491431 982573691 971839600 997741904 212063812 538626336 70149366 970970264 568987993 943123351 197554062 455100842 62847791 939389702 409400832 474830186 127095245 720610410 543179499 967061765 903789937 959980876 726452270 880483554 517604349 608393844 261233742 829819230 184816175 665810696 314488046 394767666 404010313 999700578 681510103 950153357 392722762 516414116 749949964 998207528 136001388 468363815 423832604 469490596 59698702 919929821 874372077 991418446 673727560 960234348 579425413 904179342 373306426 415348551 278811793 512358624 234674054 805177115 957644284 989363853 941019832 995665588 707758073 937285257 563323233 648163132 113965801 507803201 548216292 780568943 413722937 840148172 33298904 995390637 214583435 380619312 307158165 960582706 155450937 240025014 253191809 764441341 812484444 912379501 481596908 986047688 759848746 963150076 708491347 816444742 619630031 834710870 98565743 175046829 642979529 733594096 363688977 708954779 565019268 913363317 276931672 463520051 455947398 497865177 144843048 718078702 523288555 739988233 466239205 713943923 865296828 975075751 90174194 347942614 479412247 942598732 991812151 994068006 824381544 885416651 885830514 954270110 549281013 860756682 633119856 886657712 483920095 832781037 639423073 780704547 25189640 524173644 525599103 863793884 766815985 969503853 866747439 956313807 985948457 990464672 750979523 806381032 378681604 918995048 447564277 462836496 406473829 580105860 845851721 910956544 813470101 816391232 781471421 801132354 786485116 799087668 831273230 949899551 758421924 800918304 239467808 771661500 616993243 888164110 268409990 917539621 326153181 488274649 143929930 500328380 30353102 692771383 624715429 940741957 578537768 721311944 635675873 643034649 803729074 983663775 904985305 982722648 849867424 987736360 543641670 937751043 136510025 726026656 959404231 999585806 767523377 985854378 809526827 831900239 448914480 583464691 421788073 866842116 895684078 906518512 870151886 971784382 5589687 982095731 288756833 879747482 159280528 330181093 98110371 182225525 826595907 843812369 404954715 481028992 889984098 913102413 373653852 806901070 865074035 868521574 767560590 769069239 362182269 483332492 786986234 971079215 805551675 918581464 723569982 979125144 991214365 994423589 803443035 980835579 815184058 859715573 23571570 627384774 714739468 816757645 275831976 300364531 318713005 474567773 801976079 944167637 623175247 793025421 605036103 708526606 716648253 884130397 151005056 522624537 221269682 984509457 481106705 555745937 390508304 849600783 598486483 975811134 934166030 967992368 319858783 674610970 947770465 950005722 928118567 940009837 256245723 263552013 240894181 876353203 532087951 765193860 95808890 649240469 889682360 931089068 388189153 536193543 210217243 887253193 877994184 989294852 437489251 574496391 846086382 985961235 2132227 33868745 279140276 773757308 183781632 453904171 267684576 818658288 619701961 749566824 512481533 730670998 2112657 270244251 386373803 963657605 282294789 895713127 22333080 72667801 786868376 871655398 609833612 875443784 438718267 634545291 179285449 885485892 25593639 267599026 715243344 993489927 59568250 450973776 236661565 836736404 862237074 930543598 38238090 211925765 78942724 661835545 582236891 844926398 245499412 883264234 766166811 812106317 819406999 976412481 119546398 293049691 230670251 768818017 993014654 995788731 774495879 774519960 712804693 969145914 520268869 871215970 542940800 633998172 398222051 929099321 836945551 933460613 604483942 864126539 932748495 976311355 214279600 409920546 539245888 664365526 34039383 141848751 554435641 665143758 978952271 989824515 800954076 818402369 665862769 810144834 192575387 244809823 999746629 999803306 50998621 477812400 452407150 657325487 447919108 750761341 222171934 313828065 822046660 850391267 79488778 864805522 996909703 999600700 230035577 675008689 743049155 746240772 361021504 552628447 350492636 782894918 632833905 967794188 541938452 869652671 375077131 596324534 444977828 864355829 138457215 882356477 517444608 953110282 188201906 284281954 761280850 918062892 120604783 983030917 505287743 535080482 358487419 919918836 911356834 934576233 720946690 805946686 100618717 583755210 523863178 707547486 512128522 974618718 432215255 506456622 557464622 855513693 994352623 997434429 246265076 696391751 483064774 800276803 169797815 366837756 311637701 860323709 59605295 687314433 452244106 670408416 746625220 823578010 355732961 499080684 526611315 890612924 132722319 276339671 395483581 664017089 256357534 327867624 402940992 430028837 637669325 795590140 690008354 908570640 353357425 704280212 398737100 512435064 41120464 91603393 844784859 986610453 924740768 948725920 43434868 741985000 267331570 432969813 35234320 979165792 554258190 997740844 304227076 576926697 533700868 860912107 521897389 913524829 928291879 977417530 938660381 967485953 20085779 947698370 217709820 279869903 722152403 951131085 686790120 747436052 919012828 941872259 692970442 944258038 669251454 987134478 606664037 749884213 57085170 697761920 117485089 597807406 706380332 805042883 970481512 983404798 927544116 961704391 912727849 987143863 410927902 928233824 97208365 927460498 92925009 694178793 530155769 794745266 120582927 774386128 291324191 980048365 777520419 923281434 886170837 980945217 867594203 886740727 398069108 824937109 824832696 836177372 256422735 408769956 320614140 472414617 137865900 492949345 346975258 804924006 500869671 881804464 842156628 953076851 832199149 866509702 399001804 846141992 194703177 713719569 293912349 298751106 412901692 991063394 832954668 931886172 52035953 620912786 574849950 651777976 606447818 803793721 522978506 632548240 11361907 386613173 74879757 580591488 880310001 955295894 676784014 781739163 691280232 834539213 693590125 804994102 923747883 944325662 970122513 975400348 66360250 362389231 428539232 759468615 375721113 393431036 164579795 167863767 107141426 138201763 957370967 993986951 225232797 958473237 329217143 938397682 969057050 970327214 927647571 967739807 132849458 927252876 644180775 662158236 949403767 958560872 797098162 829070011 223014138 310805915 556506915 670997043 133690004 560731237 15040278 161168659 279024717 321330622 942186095 948227387 868797638 920033035 182443651 359209006 732736626 794261666 419395 495952956 404552288 769256067 439664146 945952781 535525950 714176875 674027211 737383584 671624722 983939145 467994101 898572678 924220685 997549723 481073104 995488913 97659897 445495717 383559530 647224133 39300815 840076353 794181720 865017201 19766658 307542525 291874626 600562153 618289375 744761009 946667 283410915 575864927 794735328 901824540 952666765 357725636 489214629 536422137 861862200 137859873 577218365 210656343 410703376 306968133 711167290 788940858 925987884 347929295 403853469 735108394 796438629 351163397 889522912 836981150 849427681 234837584 288844635 430363054 512215075 233581176 580266223 458254241 708052326 643256429 780853281 70936067 481122205 571790962 784594836 452051306 565650861 655197714 786411727 648078541 806611839 51138618 869362071 296558120 956208983 42184029 822339129 155743123 619830385 49387287 372248411 593902133 605833016 152995239 374699361 927561878 975475077 964054291 976724757 80153967 898688885 832892822 948666281 350966772 873522609 46960801 930457748 202557900 687869625 843912776 894909160 360072984 777954026 850001161 992681512 493679171 661207510 878549144 902223613 358843893 839588878 379625668 439459386 130034946 230314171 558894707 561868952 355854791 385293230 619136728 808030721 23156718 188424705 687316292 841519138 73348899 255205217 954738535 972120094 933229785 978377674 740911525 742045029 669746010 719803390 891728644 902695607 328082337 482858348 307143779 665456720 189830231 495786420 677840840 882614707 428424685 824923360 194054511 755284468 50685949 88136929 659836271 743028107 794476701 970786838 736957492 943080429 720565699 822375098 565895118 863618971 888953408 923249154 609942142 611139378 681191255 935785564 167059930 340503974 994194872 996652925 550482513 844633513 281487971 595388771 29260265 347346683 470565006 657588205 762296569 770705284 487667609 886997211 906548044 966993012 392883607 807907020 792563909 901977160 591536227 605186177 800713453 991160105 124786863 227395716 203565528 284994533 317880953 322537382 870413032 973141888 362494147 736101490 323589431 821651508 157137094 309729050 100303850 375902920 432637045 683152946 14129482 381852755 770631594 787124968 643399102 678941919 577867663 613007154 479679194 906784761 656029549 868890565 192751517 370781624 954343193 971215188 680975050 932663968 643475488 798977921 625098809 788449008 234889866 659639979 711949459 787105165 312357182 672473698 543449977 674038878 924094078 928374463 557471049 680802470 115497457 531836703 386702281 656796723 339821073 368356090 956278325 991260978 25783557 429832614 887570455 980630060 605206458 902820514 44102170 328157679 787809852 788259508 231970778 338456124 932849982 991402557 24035447 49896556 404547560 984685775 928719778 971924816 211702659 957044601 603451047 659544475 592289077 857906427 56412513 362858764 553671013 603731164 649523086 817929273 535755147 881989844 187109291 459473885 565552540 856792427 413800681 543974067 253971333 549127328 574925687 929500720 496681425 866276382 842522203 899663211 776261483 962618711 678042178 764945832 816385599 914609276 203523989 871999114 736557340 931333163 783411094 948344333 757151230 992977326 441066639 697165163 824820163 857131444 864568148 922335242 117552176 334644901 671982208 678546473 97472525 591663684 718134871 721493095 249306945 396200148 351909697 588833590 397162200 582657106 558506240 791532121 36362684 600696891 657220328 729083287 631618044 983633673 979738583 994889180 48707540 694786597 848647534 879303634 707724680 976885688 366798978 954681235 520454141 865738919 698923881 895738758 152849837 486380402 219574141 558409938 639836483 691882862 56971982 228977288 943619215 950596761 214057883 240062705 203547833 781164292 325986761 432662150 280763281 988129263 923677592 968867655 133833076 627879274 854001750 976734976 701567142 754333297 908911216 936066271 754137511 787835176 421764084 470665541 744694962 913574390 386562120 668899645 831650930 838035235 266412583 339059171 589263216 782317701 419163526 585675376 372932029 630727448 484294348 798297191 840913877 884330301 532557160 856940969 176158043 882050566 167364003 929236186 841384023 995546625 906017773 938368115 951970297 962338104 485870684 817408476 400250930 859465168 705820908 925512482 325158990 414410438 953676217 993275079 422450621 515708173 175771948 663757539 286340240 942887794 299285797 677665726 822259472 939078253 119385048 633713654 740731632 948990624 993875365 995469371 11537453 167640021 891196173 949073709 582356678 658110860 877184138 996448883 66056112 171557323 824999554 935156314 64388319 835526184 863945893 980414757 268076739 835165701 118194387 441091418 546957664 844736387 374864905 919784231 844227617 858299470 85634927 820222589 582413523 995601827 389131666 562333118 994051627 999428404 56108354 770467112 679734146 782758614 295467672 673966431 291454060 883435845 133265726 466109723 135662433 204472341 182477662 553845255 958598098 983984030 573939143 924591810 430060047 989324284 276835250 731802250 55820038 835441020 963766005 994021082 216480035 466652025 828850370 877463904 16264424 644216333 214816444 489639487 942133206 963252686 858830455 989625828 356448297 868089016 580395733 660007716 417133852 943543870 889040067 971540841 316680524 972068710 469211899 771101540 475414111 706902764 997477419 997482389 735858915 875334207 143188361 811922992 248991427 294425275 427533749 454641475 199183180 974668271 427713750 884574489 301397362 316392300 459731055 915678362 640816258 747972755 724009076 731737899 727758981 984091692 540955066 991018175 911583742 958376473 900438772 990384235 613805514 818018077 615000897 622611811 385575531 574777889 963889266 986738831 293305371 978543617 116156492 936994271 947964051 969584367 466646815 901496357 642426671 985585475 90201794 199045709 787945864 951497243 923546465 940304038 766377541 963114364 792385934 983120740 954555396 955972698 647859626 763049930 923335980 969945806 830762830 833645105 892586103 987687763 935323874 953265931 634267853 765785311 510323510 999555826 361530396 468423962 413842815 461431340 541182537 621456165 256776682 408348870 540806178 884310653 738000478 981718593 251492456 419893310 645670631 793705742 463695031 465443726 135600558 480554158 17141390 882024668 417168555 996825000 905765647 999313593 291723893 678425778 149398903 950703374 823032636 928828983 532952237 637082848 711551867 741882154 463306690 464485974 844641501 858456363 732595046 824248719 779484077 798838973 764445277 781572431 7514227 57921215 698707589 823020386 276417770 654677035 358248301 643713769 866856028 893329505 579461131 734608987 904548156 953716770 523841538 730704854 338165292 804987693 368195065 881549428 860419319 900499949 545909456 745377042 821826001 959094323 220922836 940443199 158759107 999452735 39233961 194050939 922433858 971548338 25822259 312401903 670559761 790641366 905447731 950319830 481058057 562515808 162505135 364912010 734248890 958064668 478845112 715442303 231190148 757540478 699413232 764585184 862948923 904580647 676484442 937679431 58121710 343883650 726578332 899521147 52191307 397699906 197430938 571026619 828884454 963648931 229786007 625672387 76627985 198742350 481679792 535406872 510277403 740246055 447507378 540547730 396476491 871772735 677595225 826855137 518288426 857972442 929618737 983902897 147391669 273226895 367002867 518096411 935792513 980048095 393119134 669717599 353707585 543584140 229515689 870067548 282040767 770233290 259370986 814421221 942829116 951188514 436440015 451069631 299912091 693553997 485403645 761977641 826014071 894881860 866883181 887113307 826421184 933263196 601402700 629636226 232988726 947985359 768252888 787960244 366024910 947637968 164296129 254710053 811873014 842942843 707527746 893569085 938585149 995635642 864457345 884139068 388124444 472439858 661356231 731294670 256486852 655011649 356715826 577454611 640801080 888916359 565342791 754644851 852519526 973166342 756552722 852373760 611664303 801316397 431190356 515011223 878734098 965378185 787145402 948416724 393967052 996935318 781355127 786727905 763434564 920687821 412045364 965646389 246447024 469573257 946801284 948022338 19418571 296523269 319541744 430051966 545535897 661086134 353966552 456709664 770941649 826542052 66025825 886494392 698320516 703131381 897738547 958333696 526854249 782867247 386492407 626535888 708246837 911683075 577679672 836542285 174810383 184740485 61678062 752599683 889599991 933173530 782498901 855737288 316148418 463359046 840840041 972367720 46566610 348329190 987649924 995222570 278189684 967910302 862703069 959450116 246237362 571412129 188307725 873614800 194409546 360568347 399558123 718315464 299321269 382922759 985560970 994563187 223409101 504178162 277071962 829596040 988212468 996851077 380856612 465757151 805061568 850479205 849439919 930938225 242195078 380376550 746343303 808913026 377602623 518646111 12932896 63450040 154057364 235587109 554781699 868173811 148326717 189956233 283443146 602922863 982602196 991366161 843296181 914310611 603970115 939574702 851087593 945607279 423592564 575805224 389658412 671744755 401113131 457483263 837050664 944244386 445644415 594540880 711223310 882055292 130426353 203267107 177677819 489735932 317861874 639182723 941261097 985586363 93540139 514944294 815545169 966688947 91558166 423563246 323655801 784633010 333385906 374459286 793359789 883507045 841245192 918741578 499034094 545149352 241482237 892750778 627051642 938888718 668695433 992768627 282247267 388942578 867747428 937144904 200248793 673386320 678234415 960881146 299133471 956294864 976837226 985046267 290244076 570854345 910376651 946338348 803596837 848908953 566289 676868323 898656246 959684957 679974182 907368952 952474382 998407172 739154338 900010954 353646439 644248732 848812762 905949040 97152153 206256780 296600164 393857418 103158935 109067899 646798511 771073644 81871702 703922187 79087830 745928655 258826447 818636731 789329726 819201117 458799719 614415988 467211229 669384608 484506305 673002730 770599229 864977674 242020153 484338935 468647988 822031479 765707253 848906122 226297232 521892367 891731872 935134964 94295706 186756589 323545938 723951440 119799834 317786349 772048042 890650608 775497813 982697207 316296682 577829213 583064573 867467328 633272360 916196343 881774552 984241144 746838595 906435245 302496957 412240089 961221589 997503002 214316586 466603606 929227776 944160086 981063477 996370575 913245230 969747420 171158583 372093080 649946353 919059744 691432484 736537366 796558811 829822614 913652441 932132364 629156893 965325673 690477519 752747218 331690766 755054557 929585398 944537905 473445245 514664276 246935573 292786095 565101174 709670509 252507176 266287554 548944265 671796753 30014505 840350873 805827154 924916489 599868618 797959453 123750166 126045634 424829857 991608853 955562858 956056011 909630733 977748993 179809682 610359547 818649204 953499560 510544635 956976695 727782424 959761829 908415025 926082479 211944719 364186888 912307514 967995119 488742920 859673244 886877112 925687626 528434440 657542220 227113147 361754611 642605022 923719796 760005047 895476987 957680325 965882196 596921882 955623911 365204939 751733699 151251155 713916208 118287146 436307726 256028930 485323169 242718745 611625694 443128666 843268354 209382254 275823929 304040389 807795572 899880816 907430042 32027389 532434156 785582223 887030378 77449629 875630964 703231414 995403283 709946936 925027523 573774825 769614033 432819388 680775138 709582371 761261253 606506872 650264402 40302448 317566713 848918070 960866025 402735042 678437183 119287450 181121841 188202911 949134404 529054596 593714300 57514827 893347514 570215840 989092224 891546665 920302561 265810896 340042408 628480974 650745498 446334181 737975185 840316247 959828061 834780404 973995938 305237191 948476042 77641673 144877152 718747926 921338745 594594188 811958775 905625960 969247729 88541769 157195393 535400432 945519951 950920632 974060477 486421271 850398565 740560477 856581109 43804923 304672361 586152648 836689995 442025645 981863129 348443186 413634630 97111308 239494485 673124872 963581529 362271739 519007494 921768763 949045454 696476897 717402808 338843345 729040005 228703880 558750081 406609235 550915792 59806908 951666468 12757254 618361521 876086293 891053215 632431874 862288896 957788428 987425396 772445994 877151785 562934364 801051685 159603691 993392541 612762785 990168244 637674362 699981364 287142827 917912066 678285863 689867752 446988777 827773290 583428103 808271247 282049796 912177149 108057146 320115934 759068090 775327714 733058126 816558043 769763081 780386284 383390131 876308745 815557879 861089362 462301989 863080175 572647236 956472065 71736764 129161393 36536506 248340942 561886415 624766118 211210447 741109309 95680481 926371583 400703354 919216448 864654694 973792626 116043558 553817585 157527776 859366164 473050775 750634252 205254871 413163483 323774620 329786818 679975275 957236364 828512950 921029449 47421563 577439749 784075198 904831789 485461471 632006099 340801434 779689297 628049196 993745152 578568062 969227002 970734747 977730390 32290168 128637839 6991892 525413850 61584217 919302845 509256328 916261035 862807429 915696090 585863031 841287158 809192538 918934891 957308803 972149874 973807257 997428232 93279412 891229600 506519396 641780750 614485368 714880279 998770381 999438226 734744800 868231014 689680544 757047290 252785933 675431326 963084490 996646974 287903946 662175005 956996591 989724662 963883150 986087156 603141495 742017172 727354002 747598382 549440582 790641436 862078766 880289466 674194332 937132584 420979428 651308773 719044064 735989331 719179557 949089729 687416192 819082095 521371080 723086930 469770278 594429173 875037935 926273964 226680875 541874701 873046309 895421316 190770471 281379063 971082800 993977270 114203426 539415139 462517252 601118757 935439796 969959739 49620158 737813430 359078260 658427080 281349496 544570504 910664648 972921738 242767403 815530010 933085543 997790085 469787197 481615058 207357754 532543061 832045881 913093612 467531263 713208909 52684230 825444609 590168516 937920939 867384353 900428101 663681633 828539125 693477538 891940886 399333843 416902992 924981509 958523767 847483399 985336380 42948291 550649789 669939760 991674034 124103036 558517853 91921578 399508843 880068568 941512304 739784345 798981374 521780221 595604425 904647702 976158985 122648673 645878973 910285575 991965797 377474375 890071068 743612319 818997010 135591386 999460230 75023280 605432543 226316619 509614565 877028505 886564174 279465883 741339394 744323947 912397760 297735060 878442229 711858211 916465507 678061549 891093674 610649330 632582952 68433249 997486672 647458448 855724370 362369588 576422274 482047241 904697371 538467793 579200347 907549977 967828281 214831167 277702144 499960212 623083313 451449339 762243534 258579790 401038662 183079720 350143852 566246599 691479267 895644127 915329424 232115640 433064546 548779927 780490515 382017631 750411084 451646423 974185254 74722053 658447625 630160114 667164730 737088475 993591031 287198052 989537292 337714957 390670487 404827508 877298948 525479234 692818959 205625504 956673083 333999950 452460016 141961491 976478425 197151709 974261639 636192861 744273829 19412489 424349478 24797293 797239237 170432694 193885440 320619581 740291189 576250226 948131595 269645954 467522376 943804821 965235089 486116791 487882530 428223729 576808359 203608135 905799757 442510997 827358318 306440975 320632292 339754623 666818561 630210287 632192849 558509917 929603477 835167452 894392092 249156196 653334022 605195099 964823615 518127730 712552844 435194379 441456913 478225819 714770039 636814196 881796488 792423221 808481092 545540117 800862972 386384024 526384487 261834621 787997204 987139928 997172880 916500779 927162132 536460783 540819625 418523828 543385229 432804078 473831689 346057083 548824878 906029790 930300243 95290144 213403622 544808610 719260670 420965003 830312361 369994004 756518533 196038212 494302102 936907657 942158813 863995768 947455223 275267014 438500997 173873994 560117022 592699653 835286181 185722839 664494144 264264918 556815505 276996035 960137887 566451489 612525530 38556735 834327350 805590079 922114694 420902026 873114711 588628120 971653370 60523266 782070476 187124342 464529708 653254596 912500397 897597522 973520919 556414636 922384630 89461868 448739906 855868878 856532184 601911984 996661797 570034215 599016116 459291661 529642877 69380944 232131634 460020257 757374200 908415547 954182175 913255698 918425751 644855072 989485856 85735479 295406491 657450525 820579143 188690364 679732958 766459085 825622026 26637550 265627751 455504393 858691572 761050378 969487306 107550595 121913436 529306391 648463472 462275001 531274015 737832659 789782238 805276676 857839428 479412032 527736446 627057771 998122484 411188744 529334568 937597351 940902156 983718253 990024425 253994912 932528424 113293955 239646533 60789454 959659269 922366900 948563934 806428912 962172533 567671777 578066143 261305670 915003088 545913693 623890851 558644210 918415088 798983610 824094977 731180624 963793971 12541207 81636591 578844996 934051267 967864976 998052604 40735218 383998712 420067885 570716262 687240828 906448742 330934636 882372070 965403543 994868041 844400296 946414954 160860168 185451752 826555904 952654082 984167602 993889718 365637600 459634798 244850180 550096137 798487163 990342582 401495741 490337588 741596247 844821585 886816711 983064047 585627052 780444847 485175163 568376377 835284733 857468621 438470528 507140609 204560062 268965231 640350410 814826114 977239125 978746102 299569829 837299031 617398716 936633172 673168562 822704530 23033703 105043017 185821883 779898475 824820605 825141192 893205963 922701681 755567483 916775870 943052311 958385118 836553863 978740849 447210532 648708285 848941331 985178639 767169164 890838025 9639536 666784856 315942660 704814357 728378661 827551287 902149385 919809600 354306565 790826575 156446022 266302947 172917919 386453355 426734027 557565344 236281543 435770688 351247692 633394024 477151082 846795617 580860739 884482627 35594483 935860095 861155747 887464135 283562237 320354102 351255586 905938875 365946647 767101799 428421205 529132397 63300201 396713233 195807868 413476147 596472264 968624047 140451403 226552231 574071345 892337404 960865572 967195759 821690115 899311821 220014690 377004073 859726946 999307893 107812251 690935952 376318715 828124816 317319300 478767233 256324811 311072074 569804710 663985323 105975249 409976606 172355944 766162614 682142475 956616972 369063740 757446963 547790131 949984000 162450786 584440998 46820055 334852881 447039170 476681845 720814355 960235004 676475953 857849754 754677509 866567634 235021833 816754026 614904724 905831383 569135208 748614954 780933621 883309496 583548393 651278884 396693564 824143590 380297407 625228412 757459017 999175969 200461792 899488669 971326171 987944254 111473515 253808797 859275598 919804950 511228256 941889469 82341642 751332455 263953166 932888319 338857397 939182676 713968419 964476497 435942209 599681358 671578166 681313175 502406785 684601270 645656605 945900825 455648398 743036652 977247641 983369007 185458766 217072813 878431435 892151690 278387548 722881019 499490089 874200084 88194177 747404839 332463317 966821457 85487811 315011926 513120705 573486248 529869166 989244416 313839817 492038428 77468932 252556102 42183813 124415714 763108049 951339183 750414393 842323875 376291389 826959680 941967640 982438822 790884678 907119626 814508587 983084352 660529350 687914235 27457928 253794626 300207991 551758083 470491625 488595354 655559507 833295025 692999823 951280979 189727763 267894060 878777237 955147308 104673328 200014474 355739664 470586502 114088795 664537597 232966718 300843245 510753125 804900916 864355499 936240605 142370777 772852431 173403883 838573398 178811749 191472578 780636217 915138349 265474006 667782791 638448063 716988559 883650280 989992581 394226300 710335951 703736032 733417648 442606351 994092233 429258687 788741438 1490184 309865308 250866060 862184482 815713031 951273095 154409101 558333006 416114711 499901212 251241829 326420074 328738347 491682767 506327700 868761484 465361529 662639425 794030684 858617690 459872959 859655551 966809664 969564514 580629778 762006755 198969866 857030469 288980823 897931497 786014794 943013816 71882964 800194307 523979211 744292096 708998438 883712767 799464161 807774885 991532153 993669971 247962505 779387356 150844561 765678339 786860027 897942590 861101213 979353702 37300904 833374680 115736043 366629879 641386073 745221895 669503432 752555095 156193503 841099210 956365224 993165289 465140364 920294988 375021170 525136283 726196383 958162412 34833066 807472776 16909251 863515765 998362106 999802265 953687876 963323875 638712965 706705346 302861964 505812706 298094865 444259236 938672591 992986824 221924921 262910658 914763175 944768788 977375331 982458324 71792868 209533742 449852437 953549755 843624766 869466678 925418928 944818111 893622306 913385611 895910816 952030725 323249920 819913835 92365480 425030517 144393015 319743578 226584383 275250045 691968146 794255518 453013211 990419594 270786758 954020775 38503037 79876356 202851003 892037986 612937517 808082708 444592639 726826683 14716707 663818568 272889707 605349769 556216929 909174404 171041 165370799 564171212 672289313 295358118 584902822 993969765 999490192 296368068 666617826 436406029 713583184 278438738 347570944 382896980 704403770 721129565 917045458 704276629 931844263 200947941 545444331 892200928 969013341 567067306 596418058 280717227 877751144 473547540 988501258 992681833 998181390 635262044 954443060 141761410 529549861 14899899 672041726 190712644 882543688 179398916 451351706 11050641 283591287 329088567 483529277 774917531 839887670 113713000 600918368 55130034 891821631 960012780 980211749 580569427 718861605 259969809 773998324 898948828 919141520 685959007 928682032 54905289 246015843 697757149 791182449 823056108 959012408 203742055 444175817 866927235 964489436 19231371 388929771 36009748 689776292 358995953 372968861 161490711 316763037 267719792 397322622 640001595 785242009 483754088 946870479 746487634 809908373 357846563 562243411 504700760 948151472 491961261 789715130 962418327 965512127 910125371 930862702 138756435 513558340 849960320 963881492 907321376 974173205 3228282 31413184 98349255 730860323 446759600 713330989 35770718 105281501 146312222 731463373 390379633 901450841 14207774 33111943 343505470 671163518 124987180 650705553 784928704 789360651 200021870 245214801 623740317 625274787 1833383 703549084 672199649 997283252 656979739 703376400 233067396 662983025 765205437 905022369 238358902 718210115 22482568 615933792 988565949 996814125 334903244 874979439 721334812 944333879 961424660 983337383 685020339 718038999 357341119 949567122 523960212 880849704 777426696 843545509 135142702 666414441 357072229 822924623 897114286 941375573 649868958 911560311 439652720 997512674 521588129 928584535 266749000 716406269 300068883 776686956 281381596 867318100 239195273 985442038 721166876 844820384 78361829 312809584 534052998 837015314 763156694 935444121 751974120 863525854 95994925 759071671 68506438 766549715 158193267 809738268 122579252 272587178 61615129 305446293 213817133 428078150 886975279 928512954 278739714 595182332 368937782 872582227 631706803 887251976 356442836 513499511 511209045 617243769 665913005 716023939 407795879 665401831 563407775 924688812 975056523 982454845 826417691 950675772 785230901 930143919 538814515 822054581 518086085 636389321 505260721 842122779 601418400 710898190 781096552 995277179 432339237 806738082 412321794 984796738 141432994 222495301 681934983 761043532 233712406 296102147 406628103 676912864 7918150 730690795 907677783 951827624 641842662 818311714 694466783 910034227 953882015 980279705 367774189 772455103 848346471 986818619 661826494 909937154 518760376 556685402 3223743 732856089 95030771 724633224 814000079 860270017 877987907 966260012 729404451 919022881 18528809 216583380 995023304 997590626 524776259 546442596 513052763 565429177 37671064 699036841 852846599 929461007 805225499 959516517 122155273 613763020 877072821 914199399 747497049 806242442 448014915 524722694 913152316 959821105 920342439 924723006 418792231 692678231 402875681 637217710 226478319 294177092 146904275 442374146 371264657 460927283 689056546 931364233 139105687 538392399 593512263 875289654 367324613 537926542 157667655 579336048 572196081 681424148 245454987 832305849 845600024 919815224 116180652 701878099 379567257 592517288 677093282 934853861 967757939 996517553 932432455 967509511 634132845 693575771 680577707 856353410 340877763 670947572 664222779 892737678 11885756 740622025 150605715 953473129 485510826 573703166 982213224 995628502 610545281 827350031 748541849 785987508 6993652 39622049 175700082 982122341 519159181 645000688 988785819 994500856 133621487 273044269 76897672 437086581 193484216 606342939 682739969 713258698 990786804 992039544 173878145 488691273 569227616 682314503 898423711 998671310 810704942 998951849 60408017 922840178 984881890 996591365 766149139 783646338 726473751 933283193 844405729 917066184 350484590 736469969 665360024 802209434 331041503 944034600 827286815 961808074 88148956 192306715 204929446 509177572 171709818 653996281 99566424 747806533 61605182 306400802 437185890 793274657 977143834 982871710 487132009 503581222 84268618 751385917 453520424 813602614 866268444 892509358 720145621 971305895 414107173 477138661 248791444 959787349 912513189 920589768 515929448 571579396 41770214 217414197 155530555 225459289 538736404 553556903 783817062 932096725 303219406 755326415 920461056 974351925 954152326 989338614 928602811 984010540 305484861 601901182 247520925 355091871 890050709 903515526 595235180 928612097 810227099 885167888 460585458 625389849 725824375 910274007 90023664 122974810 350564319 815193515 663594723 819569109 177811038 410741921 36249353 759782729 821685719 836093545 206685987 917448102 455640671 985447883 66756768 177802984 146591952 489244229 116819431 704471462 415696825 797781734 180690245 359228440 87223770 585835457 63242660 125912337 46252614 415104687 134355763 457303645 631821518 736482043 126247224 877353365 68090568 466876747 123698771 346084871 790177350 888275519 248272073 520227077 378393407 636292737 571104794 913011986 264746790 287260263 74508530 79935855 108970030 463758814 815626588 932378110 551496220 880598130 913122629 984472248 623530492 710872424 732583717 883081720 689293404 788055304 743684068 955854494 139332838 711895433 304699018 549041024 767946036 771106678 510813109 546430729 536136946 653990216 906436158 999250187 230695500 463477194 863457411 968174563 539960015 661238518 205488704 261725368 944233313 953116892 579069841 930811429 526008792 891238347 261141377 280823918 438202205 955617724 275929785 630179998 4265967 438368535 962591022 967371150 472777687 656596230 24181735 624092164 771074605 910901006 813079989 945582054 132819902 923551393 630516263 947069713 544982468 661219065 908988639 933008286 655434823 851025049 440612716 954774634 862213559 904344237 81415652 734695797 977391072 988427564 81644676 875671051 559698170 923197623 936654243 977693546 968446723 976900177 154577072 291614949 639300225 902053694 911294314 988363975 461900952 864307281 805479905 974716304 8024231 151312387 856442416 884126551 306092253 869148490 426949089 522607062 271861709 635880395 722552083 815316362 466201748 756405338 384987866 885280819 652946705 913800156 978103763 980985742 629718829 770276841 303543813 394427834 716429718 836092612 469060349 840895118 778992959 999013988 85970270 441362619 634385735 851142076 599352729 890523511 221983382 748603130 187728695 915182984 661883358 698377130 223532625 552806750 204364067 871724765 793438294 962710077 759486253 922668884 24152485 610537782 839249820 848879206 393964019 682376977 586904714 934636114 782774234 945454857 258747370 570599152 391285851 868647047 777865069 905062857 40151731 480338256 904486311 952960532 204200159 806147659 615581220 885777160 936360110 993790266 426060121 726724078 458909133 866530243 176707052 807093351 672443113 769764309 277410754 849415982 24207603 851002792 190105055 869936483 639797316 954402327 706963748 718684815 908122890 981831073 242572948 755794735 960651440 994599656 645760749 772614111 349197216 357022757 266461994 316542306 500771847 595016664 525376945 599020332 658446846 986403767 89597868 903404624 324368174 819501744 731093350 734413285 184054524 805351546 456547954 585588228 89621597 524209169 160693984 163593526 68716157 375295025 89583138 345196390 320961226 963723360 162999624 619090992 453294671 689747600 221766544 780263228 192205312 702580251 77801239 918322697 745128473 922741172 973003804 998469695 806765345 815046579 240139551 276764932 799644989 978400135 649189913 835675126 553803801 986487431 105407820 806848868 98969058 631835890 823891142 945499015 917178846 967020137 293126431 303891726 80677812 769022859 246083236 344224124 422725908 616822576 262049061 649308296 805136022 969619701 588620070 855638268 663004479 995472199 44463626 54754326 607986300 667194681 604425385 863512797 152276759 709780547 246032707 917929013 152673856 349939076 704182884 762547688 911882199 922137450 191728521 835142342 466841165 859208878 764370649 793279394 765689701 806304089 507666545 753877247 477088181 917321346 881162494 962394069 618946910 947315533 972174934 996211861 139301829 259259943 398747699 792808388 76183768 325021560 444931518 475268510 780149509 838784535 114956243 768711285 457314251 980407742 759729535 990505159 860281584 907866924 528331524 771181281 161412053 824677629 725168866 811552524 456317047 763119929 809149679 866562088 208998826 956658572 271715818 276999699 962890882 990547941 110416608 220574262 733135207 910515396 57523978 258572773 681120738 736355870 578491814 776281600 118160847 539214240 887167705 910793360 927801454 981396697 989788464 996935835 129716493 334614930 271919255 978728287 13853933 196248763 570913375 913108202 525054738 973879177 9386172 626244247 211191711 491113561 505544173 892480124 301136377 940592745 481446902 933909690 179126513 516586330 677119981 956621772 440211766 851644248 274410535 735081172 398913692 839781630 411465608 959762845 56087674 963964915 747266576 879798624 879444533 944579739 153519050 721669008 639897813 883312261 863789382 992628741 721724566 735287495 585350721 776170025 704503785 859610798 241111377 615454710 696018791 712729384 16326173 22460065 193011635 947476583 182578817 637567175 624710332 677583968 816053336 927949827 45952948 109549885 536112776 695088548 45200035 898293507 462786446 996485023 821579863 942999938 599352630 887931445 115372620 142236797 149785131 789191414 174414700 185240232 488449815 713435289 715299275 898117641 336624823 904200999 988003262 997074196 267354066 704133680 166106228 360352622 846719775 999184185 331981332 711721461 933084184 991746599 782838867 930478400 3014721 429626821 559614368 810195139 193428911 446768840 42967582 271992901 965811209 990504161 922926217 935109533 429999858 992320093 399014197 745548748 566488021 625286117 397800552 820896511 402451971 630867512 832897342 866903253 535741131 720978507 381799893 608189905 811759939 867022988 542787317 687152346 467542413 765430022 734672430 992465656 878710806 906021726 892234546 958001821 266476225 623936231 810762046 924331968 810820641 855348242 550939669 730604614 874136916 921754984 141487051 848058892 64929948 668277146 678930904 751507242 828993105 915924521 20655194 158889884 60872180 233210533 771692241 845913156 482656954 817356469 88104713 920912297 724080158 963179409 909317928 956966461 883785098 955875008 670863154 962058662 915268760 976899743 665161725 983278999 706547058 990727882 475229657 716118658 107838141 647752469 550384774 712731830 466437782 716048144 222978541 487120806 17595786 110976464 357702850 792363691 648420019 704071742 840468715 991870474 738503133 862979620 820799635 960561566 865869939 984638714 320623391 877371905 957944789 999802777 449428335 891782248 553998113 918125903 766042522 971663307 255307977 408035184 231553705 957775127 122159414 762117809 264174166 363186098 462771054 921565449 85311591 842405018 933630231 997788909 233763336 646239805 353239591 464529905 30713885 438687281 65160918 351239512 293457686 611911545 307178904 391166041 238718720 459778981 883868242 920716222 796082585 994120879 577787382 888195332 344974483 415553944 27503539 997908361 715958647 829704270 827579746 936229958 871710200 921904710 286527049 431632583 773688066 860280207 315276570 594612881 351561022 435345630 866829979 890509200 202359147 791893185 658446206 986653028 931428342 980968220 257687039 614915193 976365812 984453634 253195684 533269755 385484096 880208637 923583857 960675267 217157656 875215261 242788024 575781372 534923647 973550252 314542978 357608227 507074123 732270175 156867818 774693130 354595878 684472480 65341894 269677161 452736747 489987573 151088466 787924617 131502110 455089164 747981941 821227819 413565510 911914219 871552250 989737724 221678908 772832422 802624638 950343869 822019025 833463464 176286613 185978662 888281330 961591847 776384380 845338218 715843113 984429098 843385824 889522139 368590033 736951930 163042711 938215004 936044616 989271572 919439455 999116457 61670307 997798530 422367478 845085437 757246637 907572967 399890479 468665395 927934951 949558018 413553495 817490465 692270893 908612193 206165393 463063312 763455658 960944935 486681160 607854429 673306140 785613042 391248545 786848523 128106113 790341217 92309973 835704828 662207489 947592011 482422066 690815594 127682708 488086298 979864550 998199022 320912715 606384934 107419638 289538774 496007575 800364463 253754695 753812467 880380588 898628038 879781249 895218741 410815868 924792033 470298467 499290483 273382641 896365376 278781006 348024029 69874867 946242328 905073130 960838304 904470928 970674379 768534908 993103446 675464225 836639937 538741385 688240055 336798194 634087375 839292329 934106513 873142019 989617476 562129192 891003368 581840149 974361600 96052386 394571523 645417388 832417676 901542931 992201594 558790931 988100609 42384546 963621829 150947015 186771086 970994754 975458328 949067115 975893952 447853850 699069424 262890379 676266542 494864807 770327274 244988973 827595018 417796096 474097959 729229543 873771154 902122491 978038075 437795904 621240143 504050367 662518255 408111890 835528355 4617598 319897279 320765068 810680962 385464474 634093112 880280793 888857837 585871960 663601594 84399261 501210649 466860168 550726256 348010121 666347298 527215386 776655896 422588248 952506984 931510211 985291742 342621633 442399532 219308087 358482757 402840554 789350430 225956651 533466737 324235049 631215501 684934083 881663467 346216524 458661815 301166890 586032666 979012533 997848041 81312052 949182392 509273816 925116415 246846684 827815390 159026326 991915137 299596102 775603957 809011664 882919789 924850661 946473608 174123592 630660184 64825320 68805674 183846662 740537413 83010716 335055183 754858303 777244027 805135394 845929478 883789428 978010325 740972066 986522773 605188986 768248636 320313624 382735950 782853546 930846284 602295872 667429225 797358182 964944796 460565642 976081058 685638962 967877910 884669471 999352042 146706264 548660921 613008692 674890190 842371073 925560809 932014764 995448652 979106614 988176728 190236924 924073738 548780661 967213867 486071815 957227058 598920684 875313126 145504733 786719893 231682292 961015336 554076710 881028392 159681918 983602887 18795322 113471583 603665693 964632523 67588816 711441876 636351207 699231069 725058656 817850540 942045991 979544071 390402061 721916602 527009598 849937529 446503119 959859729 857488773 946962211 883291 568688589 402252954 932162308 938147807 954294157 201925735 351816681 306046011 941397884 408303787 491585016 95872116 731035437 952234241 989180241 986571812 995460728 507909928 578612459 532209966 631997619 474067428 874676351 824859730 895690934 721467106 887961545 335564386 613388133 129374312 439782601 284226400 446635769 370999880 623542430 90223156 183675928 146204714 572444579 508238942 618263533 372528957 660271957 329647077 335386853 924321971 928286735 28089625 94731738 117650120 443907991 479894957 685490994 111523437 802288222 135047506 478953766 171047980 701377978 744496036 904866394 84046084 209275909 494521744 782957113 369151724 706209505 323826636 938042054 233561183 759695959 433598148 497136258 958981458 972812738 438206863 849954363 710674138 776206000 88839262 464455904 783698685 910856393 861723929 871198243 226918153 835624594 422259520 569634328 62053586 382782555 576437736 818789810 220181204 856469569 954372660 958091665 575614070 770357453 131160463 172520348 151660617 340235692 102357031 469233267 180159182 583018458 816864211 967232645 473959562 981647218 700113787 984509512 684636562 935709370 571916185 827130913 349742878 966876007 263545910 903511952 891780210 984036469 271951214 733720696 633150873 970747048 939480662 944316480 207882395 268647374 207603253 941746881 891877909 893455576 807742920 902455606 231191028 469958451 863927081 997014653 133384267 743836317 35742560 561530461 762856089 986196195 983782539 994035304 713403330 858853408 572111585 582383509 82970779 733698554 793775740 867955415 376267994 973098083 968157195 988731046 557389260 794363491 136243737 558659793 676178048 983739485 968957824 984897956 989628188 995295149 910982802 947197497 823895502 872255356 714297120 753532493 773628732 932605405 310835920 788666468 190039675 205279136 856130996 872643642 942222964 982966797 408277314 789977024 741445763 813549835 503376663 933978635 281751887 354264557 392518321 887839208 742073932 825742673 413327983 721027947 37521520 815019318 590866031 790583483 208628743 655461874 725555666 751756112 42266166 45118431 748727504 813836530 392836613 578210664 411388252 702761061 88586047 175826946 421925488 565587361 561031247 984150604 572950857 656211337 904747347 939043437 961288645 978808783 267636905 492921898 544124157 823447132 230194157 473791345 291609610 795858862 598386650 767990999 413276874 776609722 437906951 950819062 154308292 250434726 637261649 853673171 851297513 948073944 64106002 627652008 416004326 442157032 624632715 868324319 487712514 849386900 523016629 899527731 336837548 673676538 869555461 921254957 481930906 514050955 680639257 821404947 773712300 954586273 147345916 399342959 433619362 980887909 65717529 868441769 833527976 924362543 241987677 634854716 283094940 631173919 248208532 426329906 298438862 830226783 543265775 749514076 212962262 459823147 59707579 851977511 517896930 895920226 909507171 996215322 703833779 930722461 35453661 564889625 332277380 799309282 62442649 783096383 526697348 648359965 40114421 673390832 737359301 807440188 669589225 783547505 486082683 545091087 602380253 778126193 203895539 661501583 335000354 763105262 712907763 756092034 851963660 922375486 312738592 583219878 880835494 973501082 290641749 920892411 201423259 353645655 298659868 377346799 75032801 998919488 291930885 426775690 35369623 40494719 281361262 365166567 292687009 406534035 234097969 342937518 1909364 324620370 296416677 880534647 868827220 906938355 351904949 706221311 111247904 570817164 660178808 931073600 728673787 780075201 719005206 817356883 727134022 880840528 9302380 868083863 611035932 740926485 904272726 985272582 965986776 970442787 263328617 477240112 67401467 952801428 758526724 916490858 448595617 765720030 439744213 573516746 34189640 640583088 369027526 828142404 633588815 827222762 298905427 740619715 899798193 999070056 133684325 345895295 655876094 974178254 543042208 656437188 73940311 338141011 583938697 766194607 668389562 750546259 586582450 976104823 585678128 755955612 919500780 978846058 526070984 677074210 244311238 556376086 891929538 892874035 730610855 804810507 451723113 734963556 270013493 324241487 684109022 919238938 468368471 799180632 159641724 849312490 286636100 776500473 443176150 957909929 561950134 773664571 790671972 996578508 937689822 948028575 874581276 903413377 556027443 885818039 951205376 969567912 67408199 813110065 137136122 912055386 736425314 847619360 262859480 318527837 731111855 833822306 330873491 483634407 107694463 866700787 123481789 561419923 638460107 860980350 889067251 983555496 441043419 729371068 209345397 678173758 535359216 857736553 848289910 882294964 207806810 952922183 769833574 940820094 425792110 919312154 111680070 260859802 747028129 799383404 273833228 348688431 295741624 489943428 941620614 990830645 573708866 778939156 613273178 650428095 514102674 754244444 25548794 807966496 838930128 981299915 327345095 723682000 486387842 576894448 823134421 995195461 983546772 984039839 426599088 667363704 3829861 754609356 494082611 820676379 947288558 993539381 898242467 923970905 189086805 584735190 596836405 729819638 292977150 381617095 545878831 560981288 41673077 945214572 741675348 890674013 639441712 980304147 835392631 863427563 550970080 914356097 140950358 766308989 135451119 469565705 587779460 981069884 899616615 966114127 856667823 918324204 212782092 882792605 362115175 582103192 114663129 243728781 510506470 766236414 325067984 418318972 663665008 711296795 268119855 424541601 7890274 198642182 593417103 811581199 952198387 957653807 741328588 744216034 865437349 878360248 550871576 571187801 477936760 961583059 140233563 558593905 184626746 515136045 99961523 109523884 470397559 971610058 812500946 862191326 980165536 998877718 754633353 820122351 653603226 802065724 464066079 763560209 528381895 868492100 751154754 872142969 230031056 602334646 28463210 35120955 103543553 983301680 355982230 629304453 475654416 656718442 332261002 640413084 915904355 970981215 37481155 506708541 118338389 524963502 792087024 860204676 139303153 658612000 97127536 939508585 342871733 595708544 942769263 951852640 915164644 932858894 324724195 891817819 540780036 903373028 960445460 963112325 202214368 573458105 370784394 771250269 683477278 909271578 174050422 212647876 454885525 542569194 749503915 756310431 652097927 695370835 74746325 934710115 158339401 209727358 838594252 872717374 129232710 558518922 725897644 993212958 299667944 504658421 673361464 950867977 129289557 285811178 300844933 584801610 540969911 982714235 657482343 702803446 703003343 974675706 438353944 840174683 929588863 974701401 636653077 711154977 1760990 7273478 615068685 858200712 794969034 933213670 140236865 955092156 216902615 560560598 201157686 820863620 560650908 859155117 250637888 789160354 960600660 980384599 524786486 946827416 1503414 624131876 797791386 920701135 913085571 989335161 370619833 767912843 959916233 997372578 90630481 988999031 440519672 478422992 516788984 839130226 704020968 726878238 341283032 700531338 742399817 974525253 718205083 722663939 564939155 637568589 758432330 890837135 510559898 868081363 33432339 882429905 390516874 621617064 258134921 538864456 891480942 943519334 722628610 834630622 237112413 834559363 621299455 739738986 84209292 686389804 159720473 350191673 298845642 544683620 956722363 964556756 37726799 170753162 519862775 818773004 226422905 685259691 727719110 951344591 76634929 398551503 65920209 507401735 7065800 463727436 653673854 705428884 525283672 830254199 740446390 951810864 481199073 678260286 174613111 536418248 532205915 646655765 156412244 659817169 789719371 803038480 714671431 944279821 923329882 928719659 196975291 636417987 459108732 808896001 543635785 965488669 96187535 463524724 733350853 916264417 989048607 992076655 654062295 950924905 459138987 935072778 92501639 444605654 13388151 640533350 200832026 568880855 110917776 239744880 933326954 960514798 469096628 883789630 93375290 176415467 470260691 920101486 389793906 905981347 728443617 774470463 448302633 739097335 410569630 774443944 342229757 771015881 996316729 999786067 272616561 602685079 730592430 868133139 690119292 862643898 227653404 336166974 918811845 966686787 150501525 938644602 190998877 280922357 174909545 477855951 890307162 984532995 410585563 561271475 283955312 796267581 347394475 783842313 902855552 992235406 581560560 901979319 116435713 304798703 879283742 967864531 778836131 962963607 806825896 961003191 987217370 990857008 383857540 428278939 672775010 880299167 878798910 907451109 240913130 743993896 542916051 773385723 222252012 306144860 163642654 348513178 627203059 691594805 842862322 894517375 369736371 653275145 299008830 880949494 164716953 589826848 360494673 446690041 715742259 964279985 723860417 945586926 94485912 762395882 498345072 703508081 814055120 869889691 243142788 729170569 157765918 913516276 25796891 920367908 402166254 794058596 144197555 817269075 820688376 940038486 584693666 649764443 439020823 631452571 980652938 982620885 824746812 965229191 755082169 917300354 852591961 869010600 648345463 818462080 576438318 677481204 131183677 600023048 563777419 672400748 364843160 660222075 578531326 632763652 413192410 630358299 726007928 862942259 299135819 451244903 652169987 784325334 43195557 362697385 875302790 933990409 382466825 747437512 106143286 767919397 281278776 390348732 903816965 952564816 220934468 672880484 784203002 912058929 731344651 988138241 276992487 773983256 118677712 240894104 732633662 865620095 226178440 956226248 954708675 963164071 760019275 999658153 530398098 605458021 49541516 160284687 963313980 996542662 165605092 598873849 737687638 778432465 846933895 905488968 623389011 654434392 858994137 895123519 868520788 975842111 262304191 539790611 589322020 906312859 149307159 350010740 965061464 992585028 267723647 947420268 961562303 983081610 467609660 624016082 227166112 860364685 87953905 840934980 776418176 778423101 22867854 706232726 826978133 918937808 752760759 754719898 868562998 926800143 21087221 324416541 470472358 999195550 253058693 379316799 417605550 995462832 862300028 992352393 834178815 876459618 994700177 995851838 913893182 938541870 552890476 981328134 519388476 901759809 939053153 980705063 480278065 554633227 256071116 485244299 563254773 871324401 382178270 617695247 986575122 990314122 416688012 994579166 87753839 972806371 190191468 509666091 488521496 624439962 988786646 999386234 970422022 974534470 619414655 733882776 32522685 484752732 722767362 805344692 516734596 639358648 406573079 717519242 237266297 432603937 275736853 487384966 938738355 986265563 884831300 973823184 266411600 913175583 826406337 933752943 23599047 789942389 421564119 908133330 395830686 664530514 55023251 832790735 171679018 935070010 800957962 942892672 285240414 979301336 356157159 640633430 541402639 937405869 862026373 953048709 399634961 820321335 822632366 871353706 251804300 994944307 859565238 951984920 308896491 334396235 317176012 502070500 90550907 95585398 510688128 550836538 978965114 982997327 371315758 898626020 603818138 886411974 49169834 532492615 918069666 976816878 466986255 480730284 683967658 969116407 372095299 387255957 173765100 214403310 649576543 694934372 864699159 882010820 329490314 482579987 415894009 732882725 503137705 551213296 109293179 854349362 370964339 773282940 242166361 386879928 126927940 602580710 298946780 946229507 629113262 989540703 357585148 591830411 503036913 955226874 250412121 489726611 442014594 934178333 130960250 417882213 477672222 478477614 647062637 836645048 957712561 974749024 444673686 572464659 827047086 894047658 26438048 782157632 134944856 835674798 512623630 900520807 908594438 948361383 666949134 932422462 810690429 936634299 61945836 938501014 398581923 779777601 870465825 879915589 3256310 706914099 848079755 946718905 303796894 693533060 398578998 719326237 441449337 907209882 632532136 827639420 509719454 800718993 116521306 703436780 440118321 582267754 813816010 999174260 587422068 603981764 800685536 925011870 776971339 861610602 348162841 402086918 306766203 374840858 529051990 657165668 37252106 821508830 251321900 411602968 122145813 257690439 942692384 973650384 30448482 244561789 961470978 979121848 865396520 963610370 260392074 351884017 119777575 990643898 357426669 681391635 718211751 807482179 890072868 923007533 600892675 738172366 375122629 990423730 543469620 913657429 173520842 712635472 77989818 917581428 891002209 974618400 929171376 947135517 395859999 506544636 65152560 936626658 73009003 689492012 439414840 840350461 647575855 994887460 907139447 911009634 988289136 995669742 752053467 956018584 744577210 896441041 797607931 967309439 867535321 932134866 629004601 954375461 298248549 708856631 865482342 937075500 687577859 904304840 940877819 984499401 730096156 952330959 172899550 722929270 297977108 564164190 78709650 354840102 273415137 740884975 804827954 862755903 202396544 987409690 753998637 944752996 791644058 838515552 791240226 836465753 186442806 402438590 648593969 835147433 289789349 585438035 285255602 820666667 630236860 686104902 526335361 794029547 64883115 635464221 266274163 755603950 474677948 886306268 906402383 985024493 309497290 340367991 773613476 955838080 949119701 979649036 505306740 964372483 104085667 130588315 121831560 658827409 988421645 996610812 943627177 994627582 65460937 795065208 729489272 752928135 968895808 989334074 96208749 131225152 966392404 973793713 382973873 578996651 483276526 676854255 21485417 249986735 240345134 953065735 145508797 345845684 452738547 710558183 243557908 415851317 609753846 946494551 66382125 136825552 37516149 192119573 480158934 708892913 12321290 712452001 89914084 861164583 51124899 740743675 230799112 884471048 239543019 514356405 874105744 886950180 303169439 350343393 257639457 573174559 251519876 765231890 63468866 922331376 857053039 864730247 853901907 952297985 906747864 998215633 623122094 691313691 328238222 762853048 224874218 756013398 494696691 567051414 567658267 645486059 140442024 993610536 340985262 703280330 893665995 928569929 705324970 941830873 826350853 942717681 270973338 499105709 756821676 966615172 454134309 855076159 152651305 191157673 816340447 850454987 801795495 967492685 605775746 912014835 998210193 998396275 987274012 999773180 315385392 852799741 976279195 993233697 851579915 979258633 488121988 546898474 767344463 998198265 664696534 993819705 153179948 177746144 794690998 936095345 19894475 63665635 596965430 935363027 100654929 357015224 582922681 916310063 582186236 600602578 189809366 363331983 742871333 777562899 468004482 655671011 334810913 360291702 711410903 793913129 886436353 974747001 184025560 233087451 393847046 629866799 260351771 537965303 921166319 924151986 45233517 257834739 942171920 953105808 128778066 729561745 462721611 582035696 949572533 963321665 493809246 815445835 178590837 193997046 481268942 814290667 316167789 410846039 611858157 919638644 107484128 330327543 367360533 635212129 205657163 502062132 423886216 911826893 775877830 796930260 57108629 493663437 591144667 629242641 735322915 755647326 92906123 94030003 121008728 196469283 990519092 994652559 292948730 386287658 979414559 983422934 909122193 969351468 566989297 997024474 866766362 954647665 302861321 540904383 871609274 918418088 354210889 835734267 891170636 894504834 575001850 739985826 480217511 562343025 975084376 980817470 333463201 606010876 627748577 936699368 87841783 140722668 676600469 827189042 158078381 429461820 983334448 993765681 208079656 802058179 680942425 862431679 146715434 792846132 7155873 125714156 613078787 644171357 276970444 501990603 939742464 976033127 211769156 381749237 936860246 966335052 566474821 930386068 305330485 845402179 802102549 862115038 297181516 621040367 806209139 899376393 383554199 585924685 845931226 923569559 886821072 974875370 67767089 80664129 578355906 691562901 969618379 999991699 998607674 999541227 524745343 549437314 417439536 587914309 723553624 992620377 140290427 795596867 960873591 988562976 92358689 419957163 955333633 997116537 450697315 516664641 577289314 681418410 515054648 859057091 354275200 393499172 821673652 960660232 525543822 541650224 527753489 827335761 186868849 916978711 954374484 974597528 88964694 853975272 774736665 855525554 267477166 679628920 65788059 782761048 494745562 739434022 779206512 940747580 661368652 745634549 251604758 527956640 536092990 980557819 741302325 835380946 724904014 830538347 329024186 687256250 421264389 606904496 349821656 681440162 650758104 883086392 631758603 667453420 891705024 907084953 35174317 551606804 616406425 636154531 790373614 841349622 333494850 555687266 876439202 974525396 682741234 879966581 281772136 355558910 118283715 560051693 605081112 880912224 220935766 749796659 179335008 348885255 118578575 343337040 829529262 873049557 915545395 953499994 515307816 870272029 855977765 926496653 153118206 200422959 607740286 691954582 455654546 571991090 17319841 289667635 780347124 843731587 398656436 658424353 638055681 820437867 603414612 681818737 978125830 984134194 758581178 891438658 306151321 869363653 733721643 993027455 562398935 894501563 264834813 840391497 89882905 381412940 610485431 976531290 201722025 991762284 718128580 944821906 857190106 881990592 8756663 708794473 272980781 739403112 882519641 907380838 638943276 799910180 697884287 809830659 275283367 480432867 718110759 759810806 540931429 843502838 235078070 643009657 805025444 920374242 546569073 582438664 51036990 498796638 953962096 982071248 868548580 907741290 518724298 683669931 405685016 911882264 581152157 762592850 445408908 601759531 12820976 468837811 609072145 929270194 334200557 407090663 955175870 971346409 845774167 874259454 287403502 840205426 510229075 593810755 887434458 991073461 402275461 447679763 698271232 826630249 200017494 678935573 935814452 957063953 190798260 866874035 59897613 170845070 509247992 595400443 235000894 513482430 178044413 911688297 808644187 861200617 359542565 570637789 714818347 836229280 632910710 899732725 742277268 764558764 676510739 900895504 798888102 947043529 345957854 878178161 485648934 746505703 473133649 940793698 763344102 866429084 168280166 199065547 815803236 863705110 911061367 946647402 875149234 969671400 874286803 882638235 351273494 515387304 327187533 373662303 297687479 523603821 675845535 773869833 3621858 393532014 168277920 754195240 20133584 797694415 51192644 891238339 686939641 935838572 56448546 208324159 651025220 735558575 288178779 300947160 685223052 928794022 307652928 736606717 839544254 840929311 754872675 828643116 930072704 953524639 820600470 848590409 568757038 638688622 236861238 308092336 232676451 713016287 840487170 968169461 976426552 979748813 652926980 729254906 676892652 745068179 904176425 964989404 302333288 308665337 78698687 302764426 850099351 976692226 432389509 590096830 256480107 880732686 63213015 546155057 910410319 925738219 954040379 980461741 316895561 956834021 292737734 473214360 871410183 889636699 55342529 493319880 113285206 639030119 999569648 999818597 314862437 666098856 563908131 834656991 870615232 882271297 53971807 449576361 110566591 978091626 685167922 808843495 380818950 812328045 379927622 822546348 257282435 866808554 347701007 570590431 396183127 454803876 567281477 819606372 843993251 865598210 959965897 990676175 321953253 592062999 808966413 925034181 689712063 965009512 103216220 213652521 850908420 901970857 968934454 990178250 17530398 369153064 583662385 694997464 4344641 619025858 762910162 868418790 402715121 594446099 531443560 764214083 462571696 593829467 916037367 985445047 265281832 842798072 472001622 541191004 947048875 987990515 761576202 840136555 106412550 959134528 295133812 680381913 758756699 777828002 628910049 734807751 275778487 494267769 513588479 713190152 216997177 446462846 186300282 463553334 385775639 768120788 860347683 930970304 591181327 853608700 888216652 919078855 832440342 912793034 6154426 151785599 650870800 998522666 753027779 886451574 564200832 668186847 261595007 563972384 880558252 959510910 612957922 614824466 26661062 489447247 284317152 929119380 756207652 768348551 54795026 151380725 928128372 992378860 984237081 994874827 508679767 561815191 995960791 998762604 249908343 368885556 395133013 974697973 219608402 768313844 869686445 916005128 337419837 825916831 159123972 382569073 902628948 950031176 136670326 494403820 95175870 235561200 76961987 221131731 34358232 276898860 535348533 998813221 477493782 979320017 765522719 832194905 38478621 762088293 959226498 980728982 950024902 971419857 7737929 644423288 112177813 804084255 36567159 311950120 910488047 971836633 5796767 204708453 715225419 885948531 599625074 667536964 960660208 970757094 984253947 994140262 663441533 685356199 989584553 996230156 473907789 672627518 711512091 713686493 657723651 729792395 488028037 888046548 377357585 443128495 589973360 914599764 298282060 497263394 571602415 609106350 826860878 999101567 255428810 562302959 528196252 863014417 358193492 632296009 825653737 840191432 183335754 981533642 807897041 945253998 531589100 668166159 264262743 416717975 476946114 908450289 123188538 770010381 755020621 887756168 778861333 916051508 194609196 859130375 997625384 998299961 940021397 946130923 781099390 877315028 996740169 997742285 102563316 953530935 585083576 770880181 971433218 975113237 87848269 443382836 495126923 573227138 998377666 998999051 864715095 878621505 182107852 382189674 315243687 377931731 687454180 975550619 247491038 804881727 205296815 569690875 992760098 998702456 869805458 948729293 473370822 829070060 162072202 667877346 49235516 308760727 627390549 988027905 631069414 749033612 900979129 943953495 525619159 837288544 810868323 967305464 517457160 861405410 913663573 997786334 945590079 987498513 595119394 727148607 339456957 605794499 327120721 965068610 635696350 662005254 129639776 903949937 942583252 981049864 85364289 466650132 715126014 903234585 493126581 846506078 658312043 871026496 929051814 929818756 455203955 531630213 593665047 923641111 687949706 993423888 767491721 909745217 360743582 600251169 395203566 754880540 278287659 730728895 893989051 912915808 262636725 963842228 230737474 322779233 862051761 917808311 390272308 476998360 245651658 992293245 960046560 963229759 751354355 840891390 884581296 960401795 877422929 963773509 759225601 950295064 237527319 928449342 556826023 640633510 726713650 884503849 151413102 477619126 112480709 993267770 793673135 798937307 720451888 761792697 876026195 897830204 295514546 571909706 214824502 546518259 651803958 794767610 932152353 991319185 979619823 996071645 169783989 991714250 697592990 858189084 953703449 993519559 935746255 974495000 530265892 821904049 672306963 807327718 47087965 777906743 434281803 438544807 32495491 783000968 144594189 759922333 407917824 946450004 505873932 903745193 993702885 999429059 24263628 407911203 376665611 842508372 705289008 737885609 463990594 501871875 170231180 294110689 472136877 914479539 659282274 738795051 590750344 690585503 811718859 921525746 716871474 820377738 83792377 107723444 133567561 542297645 446750849 664445487 274363625 983131149 937726927 965267464 76413865 952272367 552697305 612982247 563365328 736710462 230117619 691891386 857958914 939928220 724913436 820344561 175060581 406254271 233666129 908010351 99973301 625947405 947476744 971210788 598740156 649757499 4114679 336480528 869190070 973498079 29332576 441254271 499588712 869418451 470087539 644067355 743358481 936918092 697709344 886160698 857831977 911609239 763933261 871938343 834747078 944118761 64104260 226686995 256533426 508323355 501209169 565441946 838222270 883685269 595298596 619582000 436254382 751815809 209456780 524624380 923687101 982904256 410424207 513581812 200452505 388310247 572570840 942140488 363402515 665014950 92072011 965618789 738538370 895218767 899208546 985167480 929461966 960246654 78125052 607095116 431184324 769144140 966762346 985819494 891618062 891755555 189978196 266791967 301472406 710643486 463503354 939288474 476849238 822262340 59735347 342727116 191591160 514300190 476409658 872484054 216451014 919488367 90537809 308289718 635685594 671437306 820294942 952032904 659323453 742291039 832292922 967324774 420464569 821341245 62100132 75187342 190933891 725134886 160899683 525806983 864212858 929698472 885833437 983501708 319719583 993106352 989740261 999704751 597224499 736006201 143408069 945388277 14743029 967674819 869538279 906459624 421468771 625742528 577538622 956239704 257370942 371605213 186239875 829760557 343628473 940008729 560049634 746935182 489623421 868153522 584230020 691178797 807168230 879353958 385297517 772948438 144557082 285639440 837888584 905698438 396951066 821265662 262020595 814697965 593144476 999361680 742284283 936171843 752480029 956364805 295592497 931823401 71497118 762861340 414352573 513269110 608437863 720605325 494805954 723950349 758388978 784105861 139145124 345330205 241992949 877885362 917805945 922126721 331602025 593068122 448709400 757381225 800535417 890575702 137912244 707196102 668647885 683014328 676764078 785827729 698810723 764233157 356969666 913428336 741273820 915751923 935703684 989068947 536135515 893098842 414933576 825467044 391173740 443718450 580301332 954451093 191375048 426076765 715112463 789593120 664610119 993524973 451004653 539619194 211106407 843451976 145661840 629490877 401491829 798875571 844289763 876032356 764104064 785036529 294490349 634305168 208759628 599205264 977332937 993741486 112180959 302892031 385642579 641671661 840833973 948824896 642618316 856764872 773262376 787977176 886104210 908034070 978206157 991693006 778783650 919856099 606448864 985003702 726076998 991503238 741151051 754095197 593890906 640057324 242952508 476563691 304216075 339081346 804457934 979502789 802426223 909704237 866871040 977982832 184395915 667725479 392924085 870851173 823479519 862599481 671663577 913908923 770427336 790094095 374059574 820581141 533110832 556749689 20070621 690604790 829017613 904610917 609320745 678059942 773342274 900461313 614315604 909162338 261881182 512042478 65059754 561519279 798077529 885084342 454211666 927375264 697471415 930240628 687042912 727163183 449313755 742863918 510239045 761815619 951807611 952154020 491109818 565695264 8882665 323940052 784669536 809343789 193716558 742656724 58423482 895608443 488640060 491868122 598439827 726487764 370781181 681902826 23403619 166850542 699546234 889731157 256849416 920272968 207042711 312353061 375142707 861262776 516432276 797108634 166794157 988830953 687303880 961998317 838969839 930391729 668525918 882265531 496647715 752145288 416379585 982571583 44929859 986771971 625973193 951707242 887374074 976519091 508505824 696866782 88804103 760708305 657677926 691909796 855058755 972630935 372241469 486320911 153779302 159384845 214006433 717321784 381083821 791052136 2627935 98947391 329500700 409569263 789673949 952786173 349041737 969668060 531542252 606491979 355265584 626526195 841411728 881383359 181914883 644856391 227245604 659156604 933927687 940188176 896089806 949518497 306550921 325787751 937152280 959852695 635333256 692633345 51790567 254048295 717911163 838962115 11500404 255950994 586012206 926463904 676493276 734120477 861939768 914108404 958777220 969317534 680809393 692417187 375974751 757609685 73765161 152104689 499067284 503378204 700704628 986038502 229786174 976576158 331546133 759467201 982619153 993933400 827372451 964219047 364338373 751095985 874951334 963035012 585401640 628978040 809293149 994544527 783563393 932398090 467560122 551407167 890447146 973319946 807596970 958192073 327517821 395715203 800399466 817366084 866410478 927561501 980828381 990521753 403843987 945460634 627925286 894423670 86653363 519094142 788264838 952811366 932700154 957831479 191281895 974498563 148391260 663324589 176331942 648787930 324698270 450226742 19185473 754996517 479505831 761874696 733071714 994160492 332561730 826013282 434237759 896954939 932817974 963086380 669026601 794627593 791298133 983085054 451108846 734020282 10031824 223288150 488941059 745468961 512236772 522637937 129367776 696890647 578465363 602630793 951619895 971187577 24532153 69739105 354337683 974938309 257067199 416445160 658361639 834436685 536526994 879304194 887371580 889908044 461979030 482160166 991430085 998317980 550404719 872111448 630572944 933268300 122502578 361131539 57878611 196599281 14553227 247301089 267898237 540616190 795733234 979549496 240493546 287408642 297666370 681389065 294174321 940752162 73309058 847035028 556862299 717003887 443872297 510738946 967881607 980999556 776639153 886001692 287041092 452030857 50192702 340211735 601291509 926780490 374153059 652163995 756997737 895782548 669917188 894239870 50877519 543289869 533222401 790607020 444084686 570526405 512055518 642272150 753288833 793086378 736160082 759744976 956246781 985716957 236939581 789446662 4248458 632114564 353499838 655561745 316882878 628242292 78657191 195880970 860542217 930388097 280370930 455354867 297011870 437613922 486597697 559781062 488898588 529016865 616127268 616188146 257247275 629927738 953850518 994339673 615591207 843711598 35549562 54741321 410163662 453133566 640532772 740514489 818387375 917107153 218097276 985040796 761116714 936777471 581883971 704941730 75881443 215178564 822312457 953274086 429776734 826566662 599612657 753341328 426903115 957846271 156246544 312419249 606511038 860514446 742657539 871579588 627441803 898980006 175526 602700591 452820721 558837462 570251186 704388835 370444598 541505811 527799820 842393131 861414779 891753475 592183346 742880919 821037216 881283729 289357014 877466220 832366780 893055940 494599884 669144511 344986382 989591992 923854770 963299517 206549074 466420992 220286388 832176438 594266076 864523633 723575016 761587316 791650112 900028176 284172271 342365149 862791402 903402583 780991826 968786895 198863104 219564069 77455157 256478970 337322698 452316741 848286415 884655343 524314580 991766322 370848534 800610127 292140744 398137212 182024021 936280192 104586539 865265057 278974265 922876493 108216791 959337770 379435774 993268588 621032971 903384824 196467206 360006719 481076354 715078266 628052594 801909361 119462661 851842785 921109950 934136484 629644992 775667665 226925768 932245003 625236400 680574710 11741500 174079708 130314162 944024019 780892902 789192356 56911835 440519663 204277736 289870289 59484388 186449792 228918683 470278433 435878795 835451334 729732224 979980786 134177028 188819589 824688032 896136135 855901681 871206146 164765547 596171110 393254745 780578879 754442029 788800693 289559062 899192535 570205766 969800668 650089552 934624113 440008646 551351771 312622063 926316262 945291536 988148032 417641785 690201427 767221671 851041757 94784876 953870075 233145262 924048653 885387257 929349913 669907797 765043932 28879185 249984178 103815935 188988385 215515415 222881842 567334661 928834061 365315478 899257135 459449098 524355666 668024481 960954872 581698537 944598329 528357573 917585295 763492512 829729968 410369183 723227227 126835547 427244902 462297749 612407912 958956556 971160090 327673248 337602697 752582073 897598684 365803694 917541042 935510406 936068554 178710872 890860119 166434218 370929469 297786534 830896675 523816855 617720725 108549350 228707515 394410787 895754097 825269459 895918264 988780807 998010519 979896794 996194195 251265203 442994063 642942556 944073904 678567632 794542371 563586393 923694023 342578433 837096970 419955712 441829366 328582605 903173445 477138638 603457396 471944001 948613789 266073187 862761284 167940272 610102737 645882419 748656520 542069197 898804785 134045609 442983394 413380470 625325384 313085005 881998682 133989261 440798336 124117835 235855057 561973033 874460614 4237226 905997496 132092167 705116433 611858946 658816015 36083136 481204772 423218411 935742001 79643089 774839175 488033359 588694544 364893002 520504640 878335698 916853509 585848886 881600087 67593664 505750592 598431128 854643447 572052756 936444412 953437412 960722415 941050099 995554127 591824237 840335380 205905110 438533453 731785259 973411699 855854407 993405331 146487974 351484888 648435491 967026967 765706186 800086750 474543783 920014859 94195503 878503392 480769636 648233984 520478397 850954520 759401885 981107030 60288539 235984138 693731442 920287384 535652523 605045377 287104521 313651539 240983251 504444721 622649711 935542470 562981604 809892753 782019206 823309810 500779217 995922251 965845040 981724437 945845839 973441532 240568929 782685719 185463066 626093702 194063613 869677087 767164562 842613802 303732424 568045029 335882816 839017409 418617213 801530109 191961488 564136308 375941656 399497221 354053394 487797083 594660119 647485382 899276594 987859826 338536703 512320831 284590178 826955295 423454703 623940882 963185211 973784425 373609972 586220855 98155166 218952034 826472873 974805242 733857607 954046048 43059629 621448189 155574286 838729558 767928795 903381449 380967984 658410732 308748043 507791338 564773866 862877794 378678128 515216731 636845090 934639597 294104302 442300878 211888315 342509299 314590725 396063255 453510721 915307052 216555829 665756199 204312587 664941511 672762526 996208117 40367761 232928955 547308497 865617537 680902152 777847601 613350228 960818156 585656177 716480739 800325820 969831526 857969707 879689481 226901618 368318564 988317095 989550938 222814444 561003288 163796976 741292926 875664940 915932197 551060359 744389621 111663120 188202964 893485036 903051145 303585656 997453480 771096703 940015401 648801627 923729754 864624169 944786521 220611115 612507488 727819772 974534773 290031437 292610806 930982301 966757504 434192217 872162228 727680181 820971263 241020228 950693046 51370076 757057426 743842619 966586266 266713745 290279739 824064163 867521603 508139137 562537815 367871780 785383947 43421786 796091993 418288160 993948361 291738076 665097151 261801732 512050774 392801700 672134234 297338030 789041988 50944479 521013659 525798830 781042913 420554310 673369154 382173217 649313166 24949855 734178782 499150267 841449833 127057706 241873829 759276734 778228840 912370645 957053876 585941003 975411300 290257109 641172084 355062488 605042917 789719492 794655553 397517322 412616674 975381544 982566084 384914270 800201268 16633943 464695181 974767933 982250966 140708548 698947275 639115436 915233082 591305576 672275875 464698583 926735841 152068767 834885492 358586266 921170877 633820000 713475549 609114410 740007500 308375331 616614445 360709645 947889586 540450516 914234951 623925537 754228556 335524892 820254102 747557850 959751472 231462569 976850106 954675181 955275961 306206148 376146941 530178502 532039985 654290113 759005084 217085962 854588418 574896753 809914810 521106766 632046430 478418180 644677664 82106467 127020688 394741539 559463091 997176823 997261415 157704672 914094711 754023991 901645881 101626226 843051729 295156658 699665857 42023323 176796707 352557443 590816253 905741607 968960793 588034470 862276355 57581974 685518332 415000607 797240798 954643158 974732778 733384022 918419380 754494367 816122005 370794257 570672538 942666873 960876964 963957702 970606710 795124908 805872113 657676536 955294355 92760641 659419869 267016280 328731210 561355384 756740648 125443599 940228730 132332081 718377761 23539052 113541550 166089414 787950011 967118253 975169548 974910815 987252313 615692416 825809281 210720291 742028545 301837639 818951286 106201753 729480464 764289922 779800717 867416373 920017940 296553154 524837026 169799499 664547416 855638104 948964262 936696637 970465114 277427303 579347263 509738859 769167531 210660065 962031418 467261485 823062391 574102765 917917276 714626259 954196858 744810190 938621473 135014319 859232847 85049095 283708584 784031478 973938923 863872853 930523748 719107081 848022980 37549805 189711416 196575768 216229441 727813413 970824483 158058335 584369250 313761069 630310543 248258180 703516958 38392920 915114444 121397410 183042051 446047646 518049666 811213591 997142186 435624931 811214091 282046827 632889442 655631260 792532460 412074578 421311025 940365484 972413561 754087301 848731720 976241945 982074165 697093643 864819289 37409670 494832667 596228251 829307344 833893517 990928921 938226305 976382220 209624034 315416135 883412398 987284651 802526975 960699468 66414581 724754661 656273374 927557183 719095854 961048682 634052796 928160812 947473477 951583179 396778249 867568956 473062428 681150779 680952273 767228657 560174896 970257541 243959417 287099217 1103917 31040980 956332740 966244557 604576974 816258669 864044884 975187238 724372810 932297338 370038593 604345497 836276653 924133090 498582409 662321010 276480462 444467120 253302749 763865177 700397881 714729929 810203503 955534001 711626242 951539560 206608072 708141998 808987863 819234557 928267598 968758728 522677213 661968853 139623832 872408164 273089393 594324730 692740184 942604463 658342900 660333815 625338600 914509568 111365459 820242821 982058886 984604507 305549256 540206258 947103414 988890702 785156589 830715255 143600779 177980564 125889267 581766075 223461407 785656570 444222748 599063737 889274995 928744924 228030026 360963595 650930952 658524468 734431065 752640189 75710207 161351314 991080656 999788934 618514093 740449198 4421262 878101276 389597534 549062163 435049705 630161665 333229285 805082036 93983840 521835239 868125873 917240697 455341564 461886209 362306935 727087278 47639135 941528068 457228005 482276775 120110402 866090422 30764649 860117912 606833773 691850890 73735423 348499504 118770015 674664710 528123479 679693158 152044077 827060826 717252457 894812080 109922797 679193489 947307850 947448797 239024977 682584730 323234456 723202153 122305607 504667311 632657384 920388347 174494853 463692504 612392489 794256799 811066406 923085218 977513287 980394784 557421715 972514845 825710860 929626680 168366875 538527051 564611009 934211898 862824558 905699564 562993487 738396295 495075105 820054095 991380049 997708272 106197796 940060801 530585393 762911929 965888332 978053155 139448049 562937435 486143201 674936441 958125869 986926047 672100525 804291090 473019962 727833181 668751191 922805358 879920362 950211264 751389126 773175553 878598943 895127829 841063281 911373535 867262422 924388622 61890852 203223876 353329063 682083354 293099833 985249261 375935532 786364262 454515793 617801125 139736738 303320583 909495036 973997639 720772798 931682476 425617647 781192300 69080744 79174255 778858315 799313041 665593274 752983566 942984069 960589036 177087913 513353008 840840445 946712929 635610217 781005523 665182866 762937864 626350253 635856446 82925092 245080072 369560957 892315842 778020445 986156189 756093221 953844254 96225562 959099140 27964506 292988611 780498038 968241352 717898966 732287455 683397186 754870743 529622129 992888115 824641622 940446851 67687599 267869258 40872014 361619779 88158436 562723859 937461754 998564283 296505496 300354406 816868524 989191338 269807471 827880680 390748961 615750595 219449860 786553056 907552131 930016207 260730030 629677904 940784403 997028689 145560698 675233954 288181955 457600878 144593313 847509521 382859879 999058020 536213520 737197785 823870877 950328474 581655122 771510117 485270733 834013774 380876312 989725474 635431496 903553837 201307171 227913893 221145328 564952126 533163134 975041262 893476294 935177272 211633335 843248848 817222050 965560283 133956923 682602546 529917430 530684996 169212242 581633809 497744358 503412635 584977306 754945749 666513495 695216834 318578218 423266518 444301648 730513854 238209892 370032871 760949062 830470790 532367118 561815497 437923889 621099672 638741936 820011517 991808404 997990390 825773475 949533593 388202571 728127309 745399411 807719508 470163816 473972617 384042724 790800167 355496086 391906209 40653397 993747297 103947168 533293181 618363693 938456189 542097930 561857557 870026052 919609039 488048829 626674520 252767574 319061700 80289057 925956392 351121885 547491131 81293360 237614409 127404454 437790107 162131633 599792354 942531062 987123773 283046208 930078859 776582070 881789484 134623681 705501809 252381321 747567295 158185500 212567356 26971957 348356936 930953729 932683268 529831346 561746113 425176592 654562446 326552373 443791030 266300430 971969245 791090547 802341442 96022248 502949174 376548215 872372762 353592591 935075435 896502415 904933739 797337 542035093 329248592 365212903 133972768 836042859 800836222 903054820 787241123 996606208 165461058 529364488 736209709 796237513 671439520 767400208 743062202 833805740 129565573 835872632 402804501 952551029 504404109 806481355 368142117 972872841 552005876 848446528 276463860 678723117 110718661 416980787 956409240 980204395 166253994 280124538 157497100 867311785 835626886 848682984 495027400 499699879 362074878 678776518 389360783 947923560 666450989 978211198 114585503 858085883 289475331 678891834 137141891 669701974 513308871 640999584 767968769 801536019 727260836 814313011 511119840 594635070 913797136 974653068 925155249 942880666 869492334 900776034 245280541 579201263 770797021 852594834 911470002 957210026 427415701 489173330 954721310 980543026 308788339 683426377 248924498 845963902 896577911 987077170 775713807 855950071 371181173 956975161 544714294 592816443 268011194 363571001 83515978 372155356 822359842 840328402 127914741 928073288 934006207 999548520 943699297 992412377 377183607 552490830 731482267 944171134 763802233 977515128 466926745 691625111 772796822 800929840 839340613 964607067 830521923 852673748 532418026 917226305 560175382 830099809 252207608 587998901 212422560 324027398 368957395 684094516 931619877 968600522 686372748 728849842 338185297 387336394 39414830 995558370 37153215 842876559 328893577 921813574 610313560 918312912 305896274 893114581 52866056 192910274 675920138 816980025 33294140 626332292 942259911 984863647 876429474 909121853 77614745 913449034 641422642 887104634 395453691 523825042 226524050 418879453 673108664 867022722 733676676 854826861 780873316 905830605 826784190 947199234 429450459 936576537 225366531 875008520 732986132 741829418 498122739 716812308 53155993 312998737 527962159 895246972 887900189 964821691 235557515 662857836 237371970 904486211 33250295 101656386 623127121 779432585 277117031 651497375 934411140 956710571 763099528 959813977 625007454 987665221 517676031 568918318 719996657 853699720 212953025 288874139 319856598 918623522 442413846 561804937 417258113 839791816 230817950 619499961 592535255 659088661 650576648 811629017 464669709 588658686 573665549 887757452 215572707 879475412 722406529 760903859 621548844 718368463 866581180 980763745 822998173 887784572 333482279 415133806 422548652 545792256 409248863 643049331 899663137 984736331 354191355 373794398 216605994 269132354 617228210 629997473 641670964 785470327 940050364 967592318 792823578 815832389 502458631 510338217 757229064 910672819 591370909 593985135 609026349 989313672 940387018 962382367 180355662 244631364 633934915 935928671 456348961 696716418 606254341 759495355 753764407 859441012 349231513 452346873 845787449 878881276 673324851 863376846 649527104 912638658 859076143 966946174 14703092 291760195 727614019 915359674 991339227 997679788 230297948 306140731 19635494 146343391 442120944 504448326 688454290 758456885 380546824 539267531 996748619 999562612 188551801 577607864 152355734 179116690 814541793 844705268 227552205 379397136 500698607 834492266 252482777 338931992 912517637 959783368 503929270 616752822 182821266 810337481 202536831 919850971 323338833 845720360 445159107 742399697 536854 257961075 311536115 462781111 348063482 677005735 573424304 687695695 934921030 944631207 907391682 929521250 456817627 965508839 646972595 929697532 919487862 926251172 675336105 997991250 358341275 838023997 719819599 814483916 114779416 464054730 623981785 772271083 345436856 767627563 733148419 970187103 817714672 841565933 951013501 983359593 918081539 958725571 572364988 769553887 629033607 716325370 887128477 890853855 363932094 623179198 157761437 528190742 111785904 944841270 535620368 931121372 789108087 792424701 774248807 968233920 119244742 144547676 648001366 682007411 256866712 481531598 399927816 669762469 772660630 869599434 117832613 861786962 837584488 882843531 230437751 833838936 929861241 990549238 917958801 999109981 184433439 759937172 784712713 788119098 28276346 519036153 431506485 587013701 60287217 558813836 217492196 698439290 962525721 995965458 950395258 985185306 384088587 631657329 8232930 771539019 464368680 975539109 534707699 582707584 358826162 464356712 968929371 970189519 872705115 878266882 212897316 347767482 137250457 400203051 820509437 931504193 548275549 551056538 903286815 938710882 373382758 679155226 783766608 948495146 705335144 800830514 391385331 852501609 532495448 560608293 923273371 941572013 698486986 805529760 190843837 521074361 598930348 708891593 286137041 896974018 182748695 429153516 540423899 793743003 537284256 538324655 804578628 980261871 824405263 920462065 125653364 341108819 200114857 983030934 631772638 711445743 410719629 971563895 847063189 934760497 529196226 599737432 453777338 607383257 197795282 245064510 350599093 478977043 951834322 994093182 881194109 900238842 259416992 298611866 685874734 693693202 831355007 966756844 87069375 277518405 890494652 973030344 474548523 539013067 718518075 752554075 97447946 593832959 110028302 838942834 975796505 978902309 192956952 989220815 568639659 676748134 537565988 745455183 159280494 311723280 40272131 565144183 141849717 571434915 384908953 874324889 231249409 745943812 453848987 531594275 708347918 943610460 913115504 949676532 417054562 923858802 935476613 974720299 903341243 975684926 262576129 943159907 641205429 772108838 651681043 659154235 257871306 519548374 461197419 503996108 699493416 974048524 673896808 755374187 965040716 989530478 436792372 576043328 566509302 572926498 451484689 952529046 620156956 662229102 336013434 622658058 717983039 744691831 456556344 932873390 225235955 447864916 68893278 84423508 977017357 999995987 691436005 838201962 825583509 880592818 765809925 958930603 510174908 619235517 965558922 978183766 775670572 971411907 27526621 502258780 853152980 901214180 8243790 900369475 286689526 953480238 440752557 551075726 640397871 908066882 465006801 492381532 985932008 998255371 97379623 855479398 877845689 994552642 249326462 369773906 346637735 965299684 723279081 741120089 627201468 938308999 889058122 933372496 180524200 207027622 140454730 449523151 551692137 785309761 109340404 465002186 649996427 786571366 197537035 257211881 893727865 900178399 726615735 775851286 491296842 844010712 18142392 655295537 180570064 563952984 783126729 912967721 12741466 924359319 406075515 681123612 517166540 809330890 426335424 950691680 569782356 940466495 643924560 888784537 836606145 958398735 789376313 856280886 924171983 951467531 20060109 209398198 842342985 848294365 426089703 880111797 791513826 842960831 886278938 952679353 468757040 614016143 509704884 839849657 602254512 877153068 87377880 853819578 459200866 573572916 786466232 901589927 888804992 989115530 276926931 437401954 347252003 502426614 818367833 842955434 184818433 611473950 509451657 965619298 400755386 591859849 330845582 880543614 657817153 861009440 753529815 855805503 845517709 904712155 192689264 572183954 273996032 611746562 491818683 641562066 301286564 818632183 411918757 929976544 207146777 823839586 247110675 468082141 709106916 923439351 369419036 498227625 438234281 796449664 524360638 901905579 303628855 389608386 498595729 879975780 205215728 834264490 413935034 696083813 231214884 857055011 340100171 371561587 239971622 921303496 705639773 780212843 924491356 933357266 521945912 667736843 483349341 605638620 627554896 812606495 546819287 968570262 436226170 439042499 556068765 931043904 54128045 811151814 835008240 869875443 782999922 916120148 829238199 928231548 695117151 747927682 878137050 896138426 374406445 378470563 691585893 955565716 504952472 840710053 62721421 279515920 252081579 420843948 35216270 224608540 856287506 988600604 595466155 739888543 523570841 888361243 644530074 667462375 17186084 39491564 229108592 294442615 929917425 954282651 121390809 460138982 231397965 454016062 276491519 454453916 627602550 977912400 747087003 958249005 259344915 621408319 778879572 940611090 125400266 379511976 142251010 232570469 739394371 742845957 312667622 450711805 487934416 892657832 11226201 620349213 193307638 309357955 410034920 752455268 583019083 871843258 95660121 368974031 173123546 471958864 394031861 606018140 787083804 851089466 952687258 991658861 495298644 995405327 446426971 537836768 289315699 782511642 657391611 718991973 686021680 730548678 762616725 864858693 81014375 368808669 23497689 167961296 408313432 934962394 442844434 476297610 153091277 954384432 734799141 779820260 558942367 560045685 182031921 205035462 58013295 448758224 929470968 992862431 624566359 931876900 43137617 435042811 358047914 991811746 158304267 334736416 232505157 252850253 187478915 526253696 321040140 726187728 147800526 600398539 532453997 944855312 621759497 626430765 63705071 142184648 783253008 937445347 911168826 982576125 511978566 885325315 644980284 709989740 687323471 798836593 528037273 888381711 500271889 872495879 510769079 645638737 237201153 369997571 121189606 271260331 436578664 806043034 724244464 890502889 483682741 960514333 868769596 957746942 851463239 874546689 931690314 935454886 490829824 817689678 447097778 916435903 246424189 908893318 713930012 783304183 808157439 958453408 322102015 343359962 865793263 998496418 536597641 638533317 261171906 624707820 40505226 88970862 707545813 932801871 485068061 489347042 971481087 998319800 287533 152040470 932718668 981505184 65053791 784808699 322762976 785518558 164049949 769477713 498556901 717327657 634970497 857681894 649684654 845507808 827927563 998556874 504427914 850995933 578281647 939630231 412644805 583745970 405543701 929825365 444516694 678174832 864073596 983610410 904964580 998176826 591860674 946573687 115416303 882172833 200868412 925142859 846205021 959602496 657893712 817936834 958378314 980119819 409943433 523634793 752292071 850470610 676494607 716736743 804214507 916634118 610133532 997805613 881602051 884514582 377677592 972172434 339954961 530528962 94002692 638041177 86533839 498765749 774394090 900476179 923241866 992070970 904478587 926253422 97830953 773436233 409769320 674564459 932280844 987496895 311774504 706559155 748567022 970693402 364602711 704519529 254258768 496815609 476578762 700149621 823827224 981850564 141583320 611219103 807995175 966093613 433604491 573188849 66741657 346167216 783146894 783497546 493428834 526555973 632487026 741144644 458703161 774089707 140261324 714555890 484626027 978447516 227186017 747161628 474989029 650165570 878011142 921918934 852585357 899925679 996507811 997137151 37583511 671208397 600864215 660374755 115579008 865942440 617666239 823506687 474755796 850707525 609757837 858328825 400962821 898388816 563689392 677661937 753328361 867880936 884498072 914142331 339919641 542306487 953671455 984074004 13903149 244724297 304073266 319552282 278852823 539372794 642745623 881942695 633771586 643133668 392498803 394960264 54866633 79377810 906439735 991111635 593621814 738442211 527636095 868246267 440411738 884952269 731668592 876787677 234717399 665317906 534714264 760994102 826061032 863683977 796602837 940127228 294923349 457766547 673096765 744884463 718647523 936833011 406027988 935223262 377339922 457725966 902162671 953121515 790636822 795566186 699611067 758911007 463675512 517293319 960018670 988147022 937389525 946455130 611382635 699584919 281212019 345044446 173454272 393034910 858676951 989743343 399666298 543341375 21933864 731215878 892903452 915111434 702498145 841009513 770847670 838585416 784869433 916779924 311366447 341367829 842190447 847094081 335043650 497825780 425530044 463095924 370816447 950944059 458462839 970702205 948880622 951235208 838669869 910393140 789087245 982245095 568053744 726182234 919466667 926353092 578061184 852615546 650085716 701041140 648409362 996919732 345915919 859140554 118550556 785086455 893989438 993971977 227185872 233182279 110593420 350024274 899564000 916901176 704171694 923652915 460703925 698771034 982213727 995049532 554266536 826762050 383549497 956742261 786258741 866674134 406686895 739963665 284352509 355388263 851775796 986303542 9409712 952965500 434716470 472011639 76838204 942045135 869355118 879501804 871919331 941673528 451223521 780051200 84520910 212669077 933565499 990801499 12300789 900702599 82092373 388609026 986944024 993890607 392334890 662132174 104788672 727236880 157576570 272232858 660950464 753613282 202505669 987004325 96602006 247916905 327559893 544689651 542709496 653664448 494664836 975227115 881845508 992286939 151192507 908972663 135449983 294946409 230679433 471458267 992427102 995035792 855530409 885492970 146307034 873981136 429596887 720890439 365216982 962038895 301316323 332334417 813439980 935240682 85984899 915283136 888905571 892697808 788179930 856562465 350775537 975638498 941252341 942265786 534420917 691272769 379725113 632944368 178492109 899865130 14252328 291411760 987973226 988831727 303202829 823603688 590952161 728759677 126418424 408287083 143122705 350603578 758274966 845649264 890198263 904928859 933746581 991024630 434006653 517048973 151183241 529079040 961135698 993513496 192090885 597324707 93885280 939200413 904826494 960174135 729420652 985168588 551543799 768513907 329755436 867370774 961861466 981110578 91741479 431218750 904229827 973797636 578688056 878591686 281546887 369464672 547781963 590005307 292354999 865332597 332041211 544676186 968929179 978351285 153514433 941534011 334490188 598409797 689509385 699709567 963428498 996268100 538709034 852122225 291038143 983750502 964131781 984396966 540867246 780590504 156992887 669591737 456076368 923043572 553701503 999057634 654014008 956824147 996581271 999723248 135943326 987092784 410014724 774647478 406022757 580737689 394341287 647510471 166715220 193267363 997465784 998452589 653380045 994982683 751566926 794883139 471273880 818286708 774904623 777266572 763814494 824272385 618516084 785396403 436328033 836547640 549972868 693304720 9632576 87877016 103183335 563599210 917988376 948098315 140700571 834429235 820887329 933692888 638376983 697311530 813898003 911157585 943603367 979364472 78899139 240337839 484880673 690247956 326088630 830790035 912760983 935598956 876285700 884767911 835535711 922851324 223727275 297584211 985163115 996626051 42916535 623086666 545117046 782212624 966424727 993169186 232216380 397820681 73888822 828676674 483340444 748488208 545163774 750185686 718936335 741899774 189041254 417233787 587280104 716315434 639825976 986655694 163761065 729330092 975175099 989532176 838703377 947323219 182236433 971632805 716277773 878341323 794670715 859845767 828482623 917217679 742683910 895186997 321860282 583315596 321356591 706664409 659244578 837720661 834209809 839327049 26690130 631040156 730625244 812699000 341283335 801750320 554889642 914637472 814110293 927512182 718684991 746761463 701877837 904879578 727307677 876661208 741007701 992242005 66978021 592624488 625438345 867869785 729117058 993070821 817393586 950662826 475209893 841524870 24112861 738357974 88233429 953869388 4500649 694416874 754632956 967263678 592574174 670612026 860071924 935891036 842430026 976914220 980044063 987542433 663315760 680851602 264494651 922851465 463271189 637698683 617321232 627777834 979043252 986171906 857489411 984392593 410225069 986842756 550372463 957523971 540545430 872488213 120197621 919942892 867565977 954971241 448342244 613048530 634537377 719741349 229615435 987523912 260836178 299232492 388475127 981323848 907492303 922339996 964933308 985947003 487965477 665887928 64330771 658869312 743709716 899857146 545562333 823707213 327950104 661554922 350339407 452589410 746299445 766962420 44735123 773243877 76714837 279840765 513889115 964293771 416790292 902804227 146700 342850611 664293497 918151222 479788528 871024490 788478816 967864646 601495161 702494023 715784142 997665245 145555591 530413963 122789991 340989983 829443245 942678967 598894595 890269666 398903054 524550044 544769159 886700909 758417296 763561962 704451244 758693577 739615048 963046864 649133225 664810057 330958200 707901544 248349493 587068999 545028392 564191226 206370995 210576003 186341274 569594866 341395148 477737186 288990829 784895865 293127460 451699621 803148579 947952060 113016041 795337616 904327187 967639220 985929420 994166767 931422298 934064289 59888381 686240104 760482832 904135573 901145536 957262114 934025914 964079363 828401045 999990371 418548764 796236690 766524346 886052751 333991315 916509799 139939498 820071924 554386634 777585372 298217020 364344516 58326089 730485986 590388396 786140173 732193834 807372020 151731316 831734884 720262551 730364298 746547310 952850719 541927164 919365833 952967267 983653535 439443472 966215991 931409021 942613548 953256024 987491943 201908630 989322064 595258612 908790193 604738894 923236551 518140059 964068965 995050788 999952806 356144807 432481244 879065992 896947858 379576777 781147548 271980987 473913248 831770548 866097246 541220104 572197313 503179434 643883778 33881271 965934406 563431007 972731616 609133020 626353295 899764871 979496070 467863549 890847966 315803762 393842119 964120844 997860871 628101179 796806653 386120097 552960058 96573924 581329156 283530856 754535778 917913117 960140721 284444487 639805666 484018970 563996829 967769925 998697132 751899775 851823837 395663514 448501702 998038253 998220483 314643863 470082685 987065545 992613436 963930156 976754949 41262283 328886048 51366953 737499305 108247750 317327431 509196692 636250284 724780647 837424443 406452350 499820276 2270438 45290480 680039259 883202209 916173926 925601140 862243572 902999128 279759261 743437395 226080624 290297801 333509452 528103217 486566053 789277683 21250700 84390215 403416730 489888211 942276962 981024903 201355760 556120134 169590601 506859115 838959980 887473603 149317263 697798185 945668600 948991889 22903151 268077344 610525331 857603697 589391101 641829017 394049258 477335727 326227366 358406001 456766019 549902181 856460793 917189033 61701722 736274475 121914707 299342728 316874592 482757067 234323888 421393637 257247782 661390160 982681665 988623910 394749158 903904197 285552978 526090351 312836660 970478169 454527069 787519068 304066497 536300891 99598804 800998758 172438276 847044262 796463055 802972623 956739777 957736858 931216678 980804786 563413319 693483935 481637437 770378903 711237545 932022490 397871973 546071173 776126394 811915299 365210465 394090864 425856031 965547928 309456630 768324013 658133483 882925208 969147187 992979897 208056699 844465309 65670786 689480259 686405710 738900146 537680529 721833054 748477576 773652850 32214557 555933684 382561932 460640990 571412056 662197196 372082546 568801417 27079176 545978927 595868233 980086007 268168466 358240225 884766360 921143498 779401478 833294527 65846678 108161627 797088980 842034327 197028235 977755882 254405610 269446744 814559296 855723738 497144245 528208757 422052788 427951410 393366554 863854780 567173515 760471420 997123414 999377191 345292766 689297396 861681361 955089272 240934760 314139504 375930031 832047431 387049978 997018948 286946278 602040691 541100145 556052069 565671682 903590383 357071786 968431423 148508062 934996182 601975281 962322239 494441705 858385362 184438894 209876224 20150276 732009755 547379366 933601535 819828575 919243399 188769076 422289457 766343375 999862214 59418836 103016822 711028464 718505314 268899471 786565655 342802446 467259679 392439715 942819607 834141622 968531225 746376454 896608605 523305350 777306863 633142622 896297069 368392469 688116000 446628755 921826462 30854404 619830167 341078084 423043331 230765367 551470218 243437909 683288974 925458833 991569446 806245474 937978835 520208997 889347397 230785114 285424255 941094894 943540421 709339791 988063819 122323055 771848839 223102291 509470300 732968137 903818360 769092470 883469835 989355882 997525907 493278291 552340911 724079902 821385222 534654204 774553868 344749893 880580163 334687321 703810256 172486479 226261408 394319335 918512829 404661755 563745920 112262585 615278788 76908124 796235505 382810975 625369470 393477006 421068828 260611887 913967885 197679428 289321706 192242253 429319862 472972524 620341740 207207391 221359926 18817803 858949241 475175900 736183261 500177100 633695560 220228701 990598122 956312428 981952739 148351266 949657128 918652009 955552542 414008783 518257943 236396420 310963280 329015149 464125770 8003690 879796826 39438805 843001353 832098860 959734812 68584449 697488766 12319327 267126117 722884790 812630960 519542041 541323942 425550974 912690331 174214729 877799722 366202588 634024447 916048011 999435479 781084900 784569891 152850275 698748235 68680102 919161286 387136884 502192828 140757318 255262396 21546030 327114007 342684085 599938454 859953184 981270816 504490886 688882700 131143005 882933601 653255810 774833040 255171913 915108907 917167238 949216695 104768430 987662760 991455288 994853509 540512931 774070850 197649462 517535586 501974775 666064887 745413723 960504310 308681420 738415869 50358304 352827595 367306934 884330548 340033494 861181332 991851753 994744624 668787118 947909026 634328855 656066021 943184872 991738252 933965953 959606142 970038801 984262115 346769993 799252347 970691555 997497941 135282132 915150595 531060850 831326994 655504188 825226441 864378571 885257497 434886775 992148800 261392822 742708120 464727216 662325713 908787853 989745346 733450759 854925082 513157304 857088110 54820296 714772086 501519942 941641100 824104251 978483261 194953818 216889192 991521160 999012204 499855033 591072552 261010226 470504982 544861479 858522812 521056149 815187757 826552804 904724275 249050500 519298450 703355933 782370966 128749560 421118469 529006968 899950919 538642076 707215870 387076430 467434931 754262837 862894596 803332410 952260757 454655307 555058534 324384 950152669 15226802 925593021 385051746 667649923 18034871 859953114 194660285 617804922 264468616 631278871 935854231 958796680 197080423 754749684 454788764 508408116 32657334 839981329 776888173 955535643 466965757 826288001 883571968 984181684 986330311 993998827 624598671 884091677 653037126 992371357 798256745 828269937 611479531 907107400 620721582 676094226 737779383 857892935 176592033 462974696 800627288 965345505 878123610 981727163 818962970 819646777 812941644 898904682 23889219 580322054 972961280 999764994 36623559 867543529 135990131 677917748 509215303 782983741 925645234 938220339 907225481 916893451 588667663 621178182 228819794 415936289 139795828 213438602 554541972 757622895 528388441 565226649 479823548 813602290 581188309 873342130 992404903 996505397 667694368 705274675 483688738 893538646 997720165 999689140 489498168 848975550 206143059 344093085 928124511 963355721 742541811 758667442 220186412 232783423 773619246 950566045 614376717 694458700 449430952 788183163 647192427 994121111 561834076 766567799 815951819 959756014 283082129 449527617 437789264 786723451 187080767 460294497 309712756 962105341 34637732 751630960 974926442 990720354 366545275 529005552 273426916 396916751 168358567 375282469 458470503 614147515 268472755 747765953 528996013 758789974 446669890 952007271 571028189 786246032 291618164 482896204 69777245 517991854 302058392 923300804 828402343 883893116 549445897 612852678 709319531 955577095 375381226 742577237 374055909 913388650 98551317 901683798 578069572 661288151 733807294 983437180 538637685 608105832 170243049 319202265 199345962 777317766 452895039 984511295 978115992 988433418 167583434 406412096 653680841 763018385 689851878 806154749 358261819 528822802 921648266 949620030 232666440 837985256 242350816 819990679 908760068 973503364 31302679 417665840 724065044 734004461 883575097 974987971 349736088 566559699 396215418 530591624 494872620 696574001 352259177 650851426 143486424 625497946 440884782 678274670 427430208 812820944 460816800 767405610 664140255 699127579 158639938 513215713 73183373 968489582 901028032 943477644 80397954 713546561 446003052 690056378 576923109 594595944 475807726 923425750 589944504 684286635 36450970 907701981 757785993 877381014 989636790 996317460 607477715 687622469 17000656 191030900 498452103 723601335 276609399 396816875 536613028 833518535 788371120 910502330 276901826 363945332 454035613 538810461 907201236 976709821 661932566 962112107 962234045 978077364 125125301 419733595 199122385 212512500 594035406 893235392 16444601 473350869 933712663 940960192 745892224 758496739 990025121 994700299 544913811 729294420 716637985 995020437 144352509 706120076 612593654 662572678 747538434 970601087 224281980 828739874 683608204 831426681 10977461 790055210 390511162 444465224 55421949 165525144 500279813 784591330 162040317 305773875 606566648 791638226 449368680 942401650 659765940 843079448 862475245 985327901 76254566 133110221 96021925 801682128 353034436 696558196 650662680 746759876 89089351 965390325 863136029 930381749 259360592 965562005 178836053 510431219 997088896 998321535 629861172 754298708 412783176 702522771 151578004 844952870 277873490 309080398 824578819 887262246 849386011 921389885 908588113 993334767 764799126 970129996 197035494 475252473 269072641 571474097 850397963 854258924 512686497 538801154 449928941 608862452 980811426 992478225 466127744 727373953 970130117 985632974 817225039 970176926 820084241 918857337 646898683 982303460 338369663 935941634 338884848 448380838 977479013 989960966 918423562 987092194 558171327 985184829 37827145 608280908 67018363 979739211 571613606 608318081 956357109 969828815 279035317 748264673 907767098 986588929 478870173 734438147 958854566 977297306 823174473 858496943 504002195 863984241 977062607 994669807 7686046 179720353 413672392 644900385 998911949 999924512 704541293 808737385 213578606 796217434 775569729 971469433 184138298 728532697 592713223 619785683 878487442 887606133 288464175 551208124 970275930 972567416 853380093 971201995 116395303 388005663 248619997 558428301 400140992 443149314 154627215 497077373 774256100 918242326 139673640 298587887 822771466 968261860 149369434 376477894 406443368 514106135 374366722 576222093 536265433 777661824 891091888 994738952 856707501 910021256 688650227 933460437 460301240 626258528 916278540 993998216 95608799 811010441 673660510 913306713 618836793 977204156 358024769 851528086 706006910 805204148 873575208 879372824 959235940 986625314 233674306 375193553 923415051 968216195 354776224 631361157 873994056 957098547 46106978 625360209 799031005 855532891 385250271 422436540 983076166 988080611 559876817 671363123 772828465 825633152 407962161 656393280 199263618 296832956 699388077 884254937 207828972 451297538 668097061 939936826 410375333 859760294 485403984 816434171 11576134 789720086 464325037 746883761 766891959 826536365 918912417 980049942 852623096 990489697 195879329 925728879 753946709 897913870 432029783 637407293 954623657 972829465 604783634 877119219 179515962 966813987 794359156 871195497 606364853 722641802 566426596 752842469 888888242 993265681 808032874 988096959 564156466 812801990 787701145 898908885 768784299 959268365 721138301 766302383 21287575 238950395 838720839 857782847 208862047 826646750 780222377 920375445 325678013 483334750 219281016 442157830 773035436 914216995 706406404 893813560 20462949 495040937 728607589 977466277 987437445 998906495 220295659 221459307 633230464 834990085 962192359 984843464 708513559 782534392 236461803 649094577 819380336 850672679 3890999 256502145 156316384 634543914 82852762 628335590 404463872 463725877 611784427 813157583 447799896 603841609 463020447 487301667 170989867 365937966 485399763 525231593 250490961 607430558 35097744 175279731 952870373 966178600 224521151 591394194 277403483 591091909 424065180 512832430 411421612 701885119 592685232 654088597 581879930 745153414 546712208 897235623 831557845 944870948 678563931 810266600 977418027 978234264 999937769 999946177 563438025 940514781 981808627 999985023 6305724 429772979 477999177 487502849 403440859 511217238 530547971 947101891 279124173 922203301 820697483 821432415 352878512 422068353 477980112 818366414 620568025 640335696 922244443 974083548 546783491 688936097 49067661 881283622 764281459 975112309 673037932 883990328 29285276 988825334 820571631 958468628 321665648 661709843 554238252 849490714 973718752 989749929 702455255 925829015 18321267 401584995 546158548 594145351 81041307 473220183 787832829 892406572 120210796 265350969 481441647 569711259 792681265 904336344 960323761 997241115 328099692 615215394 429826979 678319227 557007637 967946913 177338913 767188920 424081453 591641793 312805623 687794897 196456132 307913680 562129389 613669896 325668535 903442434 768842827 956232491 499716007 517352806 476741215 579816478 934856469 989576841 995970826 998681404 955308360 974177662 831428355 913213453 588576990 698598761 881843109 973638448 342786761 730043877 985937869 998093149 75953274 622124935 17336384 534225475 530580315 891816543 683967449 976859577 653928291 739855837 843112011 888621771 191033947 695161017 579704751 990076275 823670277 852555934 224063414 728160044 288506934 421497868 58958320 316294601 93752810 347001375 866160100 950844584 276853908 679389912 226229746 613188399 954673764 983524443 344441022 555852552 580373354 924232112 701609277 842376316 858875730 937358045 511153327 753876630 49149678 820973601 945174396 986035084 373646537 721593307 840373445 883874643 756913484 765562725 203770878 343254058 654714969 837868768 313122596 784714726 779884597 858922595 683239328 685147375 61636100 554393234 200130285 695496310 314510589 945052914 892266482 919096614 226495241 991787124 357551872 848277154 909269290 967156460 109587159 198685200 816874747 843281910 94323026 209087951 35228138 301106865 538728877 827910241 243362507 853521165 498650877 720560995 86523277 972955781 744796565 869673197 888981781 897964221 300504944 354621651 417364887 510495095 374520619 596105195 301878438 349510502 955851007 983880806 854797127 943143851 449985117 455948175 809291764 926881378 391518605 872131779 583800965 937266423 219864134 297193669 143450276 465900303 672529141 749118969 248520506 729035023 32250659 913294680 64030326 357884528 656554684 893062574 522835174 711492997 901651105 978411953 901106225 980942899 841041255 981364494 187543694 328782646 399271462 663798087 523042618 917251934 929639513 965627197 206431052 856344641 427898689 572047737 142131613 578434026 693693192 792667538 412690023 697716190 797519570 953060316 798830286 900746702 257066244 646783337 932286736 936365890 480320282 947575374 47093978 829824646 140780920 657368153 865661114 896520569 374643703 452802214 71381010 186915662 927496050 979864326 848172335 964175002 29520685 694050770 204801788 450718628 826047765 878302122 322164641 957599851 676197784 773067650 238822144 973564054 274746152 397500854 393208065 567200867 950123878 952939711 164165920 212224966 162457110 441779913 424814687 465091517 875587013 987892843 977796746 978369020 98360259 708024852 358214430 956084251 376711452 997865139 365919329 524891365 235858116 283173516 855822358 928019367 546726597 586863991 892235356 972154543 23283790 643580998 74365394 911604259 111567833 796589258 728550817 894715002 906800568 995504993 139736024 877420951 484119966 636149006 970166145 999019277 374785029 647647881 532956549 989948595 159767681 976406421 72976379 815433869 652799548 890004163 966530055 993519091 317576793 934952543 936523347 993758171 876814602 971999431 604491637 693613701 649612097 853386776 128481115 301376142 757437507 790636582 496158188 964244683 757766061 859420073 117512488 257654555 591827081 870831057 727434521 908306505 991723287 992769239 508574984 737083057 813745816 870490496 481707221 655435347 559428151 830071413 70121554 252646670 798306121 836894426 75931125 271737119 745123659 821031357 401920153 986881939 981514750 991846389 978803101 994890374 609217078 928290433 915953326 998159956 103411995 539324942 747436192 959205287 897810115 913416864 869153509 881893116 53314189 518978964 251921721 743127010 838722314 983996025 549299114 798444258 800398673 969453254 851983959 966162319 630323045 824844689 316858703 413072669 972056901 976344096 663109167 814646373 902797297 991206914 87888832 451944827 72637591 968040822 72826898 232207051 125504022 382143075 987587350 988556710 659148496 748763617 235758188 290906373 176396848 792147488 492251054 511990587 639871983 993838604 597421743 789836033 298980492 611273956 417481680 740427258 867337120 923721085 683144816 841112725 174593718 849994392 272524410 587131524 356610191 377318697 642394587 669999222 978797407 999747878 159249552 383064194 814483062 886445714 659527883 889127652 700452754 909997703 841981005 934308616 553498187 616951051 601981638 914861965 762400118 866455274 12486175 635855383 859028772 972383207 827544802 893430987 97829068 628023351 800200458 901720957 794000985 869045348 289827134 549720642 502424350 715431859 310275799 779346682 750982402 774303509 40113819 711257074 760409271 946681972 624045082 826814027 928767791 964503985 47914098 312751213 921883680 992275011 382519578 569599396 938970859 977076839 814752825 843349061 330527421 728239670 76655965 215501523 282539202 580447625 991193913 994211754 235692101 888089475 123126217 839263285 730891283 984596828 916350796 990967457 406671371 947664945 858436193 903198287 259365946 357658887 429483144 627496788 160244659 219924441 976312314 976745107 137000268 878962577 202786901 542769346 471816493 909530464 910504108 945414171 313819775 857723889 344376877 809324224 814179707 838671632 442735292 864496460 606327960 888815089 376795035 844789087 824413544 944480536 956267202 990890013 943906886 948099059 282781036 626013684 45488998 380568244 301332155 599504859 523590593 864201976 263702828 341357717 721852874 875600605 741724538 785152778 179048271 964408455 422388356 978340504 468871813 707084209 990900277 995288055 381592446 616066619 480623122 952614861 703057369 769895031 498327593 510903122 803138884 811418298 68779036 478265387 321441622 405132160 37369173 836256417 157725140 801879414 410993271 886249978 109257912 972618189 917284551 921048399 972197883 994714321 931359541 985081815 281993028 799944541 731060478 773173127 336754345 982985380 527890359 770205689 578395691 682923791 245851130 748890459 853491529 985986257 605393168 617808195 476912567 961359746 234239953 374692682 65551622 221651504 704985917 728221907 731199096 883111110 887714377 902701557 598232365 855570204 386014122 989537479 967512164 980164670 332908585 650313902 162203268 250632851 471764513 879154037 835199383 914104495 139856048 540997579 255084176 534728329 209627279 478657678 423745828 502736048 942533591 998286039 589290158 981055758 770559645 899964116 261454100 971758576 153144960 264419892 44881701 519658667 84143430 188175298 502797226 645639912 892221512 968835992 217879935 772589582 31698703 234226457 4634478 468891856 596385953 899618266 64652422 382860299 184279287 919110450 521509585 832176111 107481130 194175962 252572467 414573964 425375663 528848091 511355475 726307279 170468696 581886797 977578422 997902932 797734551 974666818 846347196 888300497 782568494 930921926 883217622 953730567 225606696 373311499 774204818 790780257 140027781 830229664 774706845 939338497 924773807 997344181 249390494 608692715 332684847 486746750 928653319 970746806 487454892 604916178 552233164 790557903 364683340 841583853 189825244 495949524 19011349 115684941 136126849 755619921 623584699 910414381 310859777 509797134 357832118 584973189 231040010 735930736 909355543 947843896 52231844 254474204 185544530 984514401 284111774 934961465 887652485 892204672 460229652 526012279 958551360 969751511 681748259 904964371 114277186 942919977 432872162 936880059 373493547 926122036 830804078 891101501 301412573 303387614 277511325 374808919 826240332 980966324 967119881 969772909 1136787 23400494 951448472 954285314 94246869 856524514 384638918 581421085 568362733 967835468 542884630 555764762 148850545 577946059 837696019 881667040 875498107 977071670 756970420 808264515 565096003 961567450 408099444 708336741 56711406 338170640 113489335 626940437 303711397 665272855 585076404 600247772 395091885 446072816 194168888 841186233 831022523 909215608 918303453 968826585 809305437 882147279 113367477 487303128 499007905 510747014 416750075 473282376 153047314 436268165 278016779 578174620 417685901 820055187 173175632 927553994 231404424 586997416 445811679 612245263 851557105 985389605 226307166 267312577 380282358 564843701 92427174 909862138 236863426 440112646 366971211 547056122 387686667 972496722 983221412 984766973 568369467 836868610 255527622 279281257 352552897 500586673 149452541 210432725 748390111 811714337 241969465 897396556 496660483 895336431 678156435 700378043 883172756 936448265 967659883 979777968 667140682 959001681 759010937 831335702 724495813 753500147 962978928 965906004 458695177 990303462 282718377 287458677 507852776 620526729 807057600 892519627 451595033 883582115 172743890 544683111 229303375 821215930 40914728 467153547 310469854 537569780 495710574 816485822 89350498 947030990 279973663 286098768 49126949 444709289 782535661 933300689 920421591 993635493 348496056 803568675 678401557 719870448 817065582 834228210 948475070 972849343 216592247 816151498 407513164 806473435 733330254 862672085 889181659 960441708 893903361 951536506 901092623 919765251 885867546 934299776 242239054 986977042 8200781 52320788 691741440 746011778 524240943 999565912 149288326 575131419 188364181 708593163 620643303 871817290 494237474 894603966 172774911 785566028 627759075 811530451 150782995 153965324 526578435 551529179 870673038 912559894 490820002 809211041 51892141 804018273 893117930 938491002 260765876 879894416 370523105 790427386 824091035 873558247 324332367 751262542 770071516 942318654 80936479 598527856 447334062 693090476 795073149 822038402 31775978 157756560 760452886 776279652 912847228 960228246 905753197 932295004 24245508 819706851 306895735 381249788 24126682 272841539 628262782 971586788 149386931 970198698 772174690 980232536 709352804 755903198 601813863 903962795 379488628 780860264 198546476 466100894 839093588 904331290 690101290 803308574 82844301 437290298 189001947 600330790 935329864 984216399 789387922 913251382 353966312 517368881 493529090 540395888 801295594 892475914 360592533 936848017 240644554 993224013 112860789 431044565 432904114 872783123 469206920 857650152 197027990 422578247 184907441 858318225 468815856 741995773 211894355 975793987 348673009 494303535 814838404 840302530 73400471 444844707 761470256 822467258 215217895 489559956 784032690 815051487 796456754 896024029 885290419 970577478 328271813 644222726 440626181 970749710 868495565 935534793 902136790 938107369 570301924 811872979 240980180 899018667 158546692 406204411 270538013 529838469 628699389 697151613 469876734 960557436 861606865 913100503 477673912 478157438 45122436 270015174 807856543 847114315 263867141 724521140 337911135 621529153 755783563 792739782 262932348 733906153 449415648 953722411 779278316 839856384 768550207 789345745 616072490 922694821 74517294 575254671 539449331 723091337 505790793 875214707 382377005 652288445 773666657 846555360 531390213 539320917 566099769 689958424 321314679 549199517 152513771 919143516 952648474 976446555 417045071 866246936 985414315 988429312 718372458 879675238 167267636 437799201 820800390 861921814 328410545 384333375 303902968 654121102 770307856 804104558 785526515 964071959 259477721 724578847 372885550 908305108 600142909 642537939 699998112 911329986 243315494 588045798 137793469 728954781 267320783 843352526 195422833 581241049 362990734 867373561 878634996 975330763 288417468 822641881 1507537 832420915 378061513 839250781 155330241 511908985 217288579 287749505 376682050 574132009 53423790 762421464 856706874 971085024 656546897 993862317 579760280 785186009 417653953 892533670 582157392 707686259 511260501 906293240 530371736 930162741 980109419 994190680 824454861 919475499 821540071 952606796 380109739 739056979 574675553 936477479 414727075 759352060 381275953 387966026 718467502 941466159 693741429 851448077 453561804 715468206 801058938 804530431 414441979 558962836 909992059 924770325 207977298 833365315 363527282 777975467 325087155 504964374 923350032 941983305 105221473 873454412 234109745 398315818 218559045 466020226 281999524 354401186 141962343 564667907 623673487 996727872 145184958 800204528 533155331 553515978 130663445 237586860 638020712 775584044 206988345 305661600 456291730 900827656 700450539 943138691 786871499 792017333 111607933 255327287 297003898 911852701 747657211 853141939 563028431 892912090 364463890 469622143 730451986 784591569 408774864 433718265 286195310 947618144 617446374 782762234 510192944 711579275 211085584 284519234 716915238 809759795 742802206 830908169 279512337 394116304 772803204 906827416 62783936 559082200 458281030 516256773 918550972 986700949 915386892 933068266 137077095 331042196 590605008 981665565 563367286 747491188 470119813 508614860 950193106 965503135 539125195 883031342 328275920 604098249 798871241 979182995 52462482 641579449 49075072 85078609 537665780 638808415 829564263 873548786 913926565 988339278 197183337 368622337 516516462 669229576 725527155 795951888 125311960 510918286 709483695 739820822 39804693 826617508 339546800 870254199 315205723 439100224 15750344 923401027 576864681 895104254 368052713 948079838 191414076 507131342 484367049 993577943 703869555 833500965 183521503 545645068 302585177 930815589 757180623 954984414 579890961 933780650 391408803 553594985 906964359 973496490 225601539 362483082 707645211 938927210 354484998 943427175 659848064 749199154 971313871 984968054 938719005 955360462 918306592 938883175 812512529 926077916 117494432 935857385 566699802 640774700 822886331 991549412 686791217 954647525 999485371 999543424 135288498 355608676 943274164 964047470 928322397 961962940 152927180 659846624 42336172 498791342 86770146 671170586 108367628 282477779 170650484 204018507 144521201 191994784 883644635 994154983 619456691 707417302 947134675 975645006 917805630 922186834 170998959 378607897 544501015 913585480 34975830 654276955 319349983 615412028 607320017 710258346 896750128 939324044 385780591 413159204 257278098 283853598 736884467 845219637 469097569 788840993 61409933 147316929 412062076 714877548 168281932 244801264 167226698 854172319 625844001 728931378 976308164 987928841 402370972 459660108 599031489 737057333 710020140 743052186 693583677 926775356 265734868 558406345 129163331 279363669 678411208 886235577 853501993 964374191 284455248 425901454 392054578 745366732 722905119 741211557 496857926 898693722 919040851 986067931 108880859 935477264 461826412 558811706 400342752 727261793 897441022 973296161 24392096 959937194 295749246 943006157 805897553 935761852 184203603 597997899 521278745 682343598 330777818 940564007 511291506 973647772 152211187 806867934 226091130 722181517 615682337 627795096 688459146 988740304 977373415 977422330 567668848 727468645 997669740 998816010 600827376 883820669 816475081 999390624 400325513 426813899 332891880 774433527 233295270 488540890 148944460 253688512 624639806 923038758 881226289 886415549 450052262 577800960 122366528 512524727 43807590 692055473 468039654 476761779 298973813 950647628 944994861 985732044 132113217 901244440 905310263 910544490 997509889 998772434 834150280 923231551 750256937 862312133 840124238 913679268 779188908 915645397 965487947 977718889 23906505 236686465 422170387 666577858 185135068 765402687 378471547 509742720 527428418 911294537 531448238 740371633 797713624 916470465 171148913 493381723 569721286 654805997 878216795 967647589 262304062 937702969 237605251 650063159 567837802 646031436 355407610 719072424 164202696 556208932 935087990 979459059 62088705 681472786 175192240 343540114 186074430 789100084 527495466 695462391 402324718 414797781 580017452 982212963 599821325 638158214 808263981 895025850 3736031 27628980 817218535 859920634 904441493 987043518 852581191 917287875 249755926 413699653 197628891 607568883 592374139 704119573 54963757 529825492 851822802 898098055 778928238 823988651 733081432 765065456 273297551 397923268 364924943 858038429 339472727 428571607 507127280 953011645 139748526 719566784 985019147 991456804 951317929 970899642 552721872 720694703 276941852 770779640 306628558 341339480 752341914 759453905 945471379 974579516 26381024 801414183 137410298 784009518 473522817 988593019 345178722 499073764 427159602 904916193 333873834 693911415 138288022 872753360 267017269 831913242 304417797 713976420 157674693 215286184 550290907 629401170 406687669 789999218 912325394 924727690 234070383 540715397 41111428 696577177 557873427 750679059 309174307 332307314 460781359 998671444 555255605 894152716 299560127 353430489 658692858 982608679 784490583 943249202 249132320 980426707 780027823 819049767 639590315 952212531 352645485 683355318 972177953 980651170 966524727 982339859 371146738 858749546 723400888 995985988 272299089 676788499 953860027 956612712 690614893 830740283 758413249 980448706 270421265 457615532 412685860 486751534 528480060 708116947 756108166 958877641 439458011 505602790 737827926 784988023 763145455 975988671 557872000 944141335 361815491 508874264 522519944 864353539 18569669 382430447 675333420 691805146 621963036 971145023 797591763 798697939 458532610 531956318 163598360 535073443 246062650 816472166 65417193 652105966 630918718 991533419 387004811 682833452 536861160 597554813 435335095 485577537 417804429 728005941 438093781 799933214 898210353 933785529 30131989 424857820 729858762 919806831 851617710 861817360 897968894 984678059 19993091 649704334 11738674 94127949 414547041 947923631 394630099 939577213 727585643 940275916 666479208 743880364 946730111 971700520 558764673 862074832 541586172 755977920 259223510 497678878 503508556 818314793 944467193 951065105 699112721 775578676 675178620 831518796 317312133 937233557 95316126 442531517 701084627 973363260 31342413 570543140 503801794 525382051 17073025 891591793 245149848 644367410 285280369 780307224 210426118 993900553 536360717 921409565 325639783 461800456 84134221 239563549 475927256 648112488 590383538 648086434 455897815 655886383 256233997 856356002 858438170 893616915 718006610 935559609 184285191 896758528 320981522 528006191 169755624 327844191 46321939 170082200 46935463 535842504 969484507 985802974 406738967 931770499 862621907 887223069 890644910 989031573 844379446 883626742 84594080 746255116 359449404 664182774 137835223 357523323 562660408 791016724 505622950 702948844 819923258 961636125 678595945 768587849 201103741 683522334 482328633 949984286 258115525 758490826 325969598 926409052 322743659 522776028 402732960 565392579 767220331 875739637 653520551 951421054 746539670 822977838 218702443 708081251 42216861 315195567 769746984 852160285 289442870 508246477 955160677 982845280 478565077 675077293 859960874 895136968 288462325 803709709 141530783 272944811 189330942 546888291 570206116 647934119 902782154 987861206 491798611 674293498 757987689 947854536 843836139 926206077 536697903 651650077 838921471 921752244 710592376 791348938 295209371 314605222 769357231 950348022 581047756 701246551 40558093 132547816 949563228 989989803 98161207 381987282 693208883 733548799 874551132 983516789 852670303 885835530 904173412 972368838 846797494 939998653 820046812 919473036 778822814 791609113 724082518 767857120 805456031 806232058 595228650 622958124 620389055 889666607 798663745 892849594 645613806 798099181 368342906 847223719 3714172 600775837 441387071 666145845 66641535 250760124 926284390 972171262 554526906 834557048 927225449 992523813 590421692 624505816 918625882 984686715 392321364 835776751 828026925 902483961 629241281 778519058 238726982 490624881 106339336 385418877 774228299 863048387 50225137 391718421 195677941 796498061 718682172 899625429 622659932 736249989 441013250 464800994 358116733 770500477 64441571 511157281 395160303 632918093 418669576 897185772 452662990 662387256 915943154 917028638 941652353 971351736 510639162 689863896 928117922 952477301 375565301 994671872 808818496 910205217 670026084 926501491 997734905 998136276 124989599 371873974 193847878 380267514 261830873 286161987 773999080 845890188 492294157 786697007 621618423 795760829 730978857 746460637 938892847 949671653 798896624 801526543 51767656 621515647 943270665 951651202 385870206 594791988 735862616 874450225 428318805 485770349 402809537 463587369 723505522 897085173 135885084 992027213 101574430 452950045 422478044 975129038 186565188 236020310 381524200 516920508 424294189 846242658 364763059 490753948 958632945 985635525 570021154 916529597 881161089 932640394 195092784 394093733 405849121 703232338 794989900 988311104 728441182 797251572 869506785 911884109 838804261 897027407 361829103 390353732 354358682 582947810 291302114 304751124 274113001 920152378 964686503 998880920 634535726 815134752 156727379 963787349 857786340 889876651 672210912 890108698 143285833 733282812 966611019 991934359 466345123 633682027 46203015 291049259 597237578 910196735 949614008 973984391 498219240 795712135 542950473 554159642 213178808 609912192 681612114 687209468 394292388 900497859 925564001 927003383 357975370 944474438 424342568 683255136 283984109 696551215 803616789 855867237 686107472 779951920 190128461 666643371 250777164 341097165 671934189 871273081 480263744 505459741 426294924 562250787 318550513 455653030 569106096 679234830 489207211 804900797 109681263 427751839 790600521 798832088 617238627 974875961 680646989 875147029 462559676 937212611 840361219 948597619 948538679 959973249 680010193 757930215 199124510 721884608 573262156 952403503 48126955 266236384 936110064 977100085 400500443 432172523 740516404 911630807 930692144 954919859 183609655 507992317 435259349 641213067 345570670 928691944 497439711 898062293 589982008 747686359 643979241 645835874 195404151 758134622 402151818 706477105 680399191 944090603 68328786 920652141 741892729 838451625 423746423 947212901 974160989 999881667 670983182 977493378 833919614 909796108 139830652 924710962 698677235 849001265 630045144 863172403 174820520 264371785 613471746 882444973 49793600 67227769 515355288 899385708 231678432 761192032 784732531 894848385 875126630 881661995 558166666 637100060 574989995 891133034 758286281 760920530 377380518 847220654 218256202 499114648 436263337 589175503 435226360 999523897 872700047 991024634 849950941 922646665 508815102 754675496 342551421 630170540 273671063 456661379 508097781 937831871 944467288 997890358 788422432 844440553 568680969 961714706 996097955 996142847 344656477 453192674 651388746 975208570 445460812 986404584 484107837 671397792 869834314 962973169 907544816 930310364 472943857 813122827 261578569 428396616 215339672 821902734 985441524 994585035 100213302 298671099 635329460 677128967 338345411 954314557 805981909 905278009 477089132 595498832 665606850 926758157 571851794 879740018 575607033 945223314 269816833 966998657 811176261 889049359 638061924 942104970 108808353 848292601 311824916 710683558 404517569 447616377 920929370 938259526 906530522 947090657 64036527 208511605 552647934 791746745 175703867 358466149 566870903 690990867 762929642 887111470 960685538 973835432 907146107 932436832 809457742 931147142 891473740 972045940 685174877 863950396 138344923 836330937 285852280 861338499 863083025 998709686 255201216 326256405 250336967 925102323 749957584 934680840 172079574 802781284 551016350 767641898 290471195 938562254 72613406 435064481 894787142 895806206 726483691 839711919 632171596 836132334 783616301 986473191 780611442 934775434 614857698 917058815 672114752 782561987 586077673 833730185 129913147 997775956 859393238 966769140 680901915 910801831 857113999 959024146 551276932 886296763 81495702 555157240 316755069 984947280 92240611 753312262 152672540 746879380 394933843 913761098 47402492 630470973 906031731 978869894 756376460 837902992 275625838 704935715 357753062 564671308 781288593 826293478 597607872 886769739 134194950 165583522 225552044 791920177 578146321 722309041 656397271 997499076 52208217 912971682 243424561 948050117 133531461 617636940 54219927 396523736 709768249 955524500 200066314 347256904 680784746 786061776 511630002 893499226 731757497 960618126 608411826 764543943 141954786 176893413 521709219 882552040 620923287 939739939 152653358 878603808 559490252 849339318 500744136 850493475 665460508 977345212 850029610 869582551 508640449 916719226 964293234 984860668 46629694 54089258 953967854 962020324 551105416 842164070 864965384 972345757 742469336 843573438 21321020 77322880 9715406 622204214 945821518 982686645 929615489 949155102 513233873 600850580 143553665 884584581 432981832 998402210 281441734 637876212 988393936 990549434 844194972 942776533 392282377 571623263 83538122 503616209 36101594 418681974 345133619 353468569 325471845 571993960 335046961 404784691 978231070 981289397 365620202 712671882 649752350 840811271 101990873 371491162 975266832 993752453 957570774 993953659 353054660 524300146 419180645 750045944 513743145 602426889 446124992 874445697 789542974 858601606 438868896 782728101 744883348 844561867 448141127 975908962 427954259 971170032 240851707 601064966 983316998 996352426 748577817 919048091 460407921 671853490 256341303 689796757 184104431 207115555 265101137 687052025 672959000 741234480 908073781 914493062 843756363 980321152 832326219 911389892 8496020 945402864 476444592 916614613 752440035 952097039 191147584 334070007 126059020 885931568 287712695 985209735 348960009 881611667 893123476 967924196 81282964 137897863 439113798 903327444 195985911 594296113 987044441 994749201 572797867 709358337 967133774 972328972 610746487 920975193 402725840 457471043 808847127 872375720 713169978 963869432 717270577 831876504 903996019 926202749 858341503 871976409 439768305 442837463 636029518 922886416 837217254 994328319 295787254 480203794 650832885 844681760 786481648 902515508 306481966 796703979 858002978 936943505 443404442 522734641 34646026 834558466 401662377 722746809 421295607 571564439 442964451 622364868 906043741 914028504 59068199 505744637 397146363 485644923 341590630 414922244 978171827 995481453 386931299 836405490 111524933 777699360 247135855 608320721 483039564 875944711 745242017 922641901 111915925 730963166 515026343 935661669 641472338 707937916 933319896 984404866 928408027 981397089 652608618 713270562 592810259 959370582 608644120 947500655 273408979 294723481 58680537 685594322 574849043 894183166 37179996 841122109 788049015 793938643 183850767 984871579 627097666 768652736 492181431 733812835 56787083 894769880 374605775 642440862 855858545 855876302 857156987 973480912 478251137 581242914 748322285 877639204 276945148 866646920 982046638 996474099 654571888 751992636 905495276 969222191 915951573 925428034 357475628 847836653 448279941 930015676 506464598 570623705 920588845 967061835 636006197 722081154 329860183 658160673 157235576 303579938 879097294 946129394 28111371 909516454 980957247 993296499 903573278 921374380 597407956 760069692 734297535 837731966 765576874 904970443 52125883 793025550 996572882 998158415 639568724 917486358 375849395 825912343 565200650 915575236 329260115 768245168 892034200 923204743 437419055 611368177 198300312 956588037 787581004 950884511 955130312 996049220 831665375 848328895 374454785 674446694 7413615 267526842 323217509 902850616 441641758 789413090 297216763 426026428 280789761 941606863 965335453 990154918 3394484 323638195 616512476 861842602 173511277 718816908 426227128 458229682 779435650 902453642 701288170 962212984 881045360 987501286 464123908 816095676 430285011 603357431 71048920 341603952 64203377 174318234 324411679 725877801 442935610 730970430 379934196 465456753 195509569 482424812 976521213 979528990 385250027 651416183 882691206 892013085 111163066 241455500 49467311 374626439 464153133 967461617 882642419 972881012 146203019 769110559 53512167 439631602 352224611 989183269 32245307 69799635 850723641 868957921 797643438 862740221 322778767 971819097 891536629 945337466 120342307 935226327 315439174 714142714 69783774 143677519 917765056 976591679 334316814 691497697 44224344 807491735 974549716 999555974 601101812 855847735 944271858 996190719 364002010 900368089 373534704 572811194 244768972 911374042 516719399 910496781 288103939 847816500 904817321 968200065 175166362 465752953 18484311 683719542 733798082 975417438 717298306 782207925 423603381 573051091 800552365 818788948 489727612 985739274 199016191 755407011 99035634 780769438 62362406 322491142 191124497 563708676 888980893 913703926 572171502 953667825 208215950 212273309 3821339 823077935 387147188 855148757 913180017 986270682 903037796 953051147 790573836 944901220 259157722 571599329 635411054 752454841 900862731 931890955 798456857 802407915 369507556 791252217 347589209 859186023 316917998 483951413 124707497 947378959 247769851 468533173 871057958 881618970 38047943 597150322 163505747 173802509 567549701 644493825 449148667 594979129 150551388 233352025 637686550 644256779 734388385 919691052 522446110 716498912 442345214 971176404 883588072 973672946 913526191 953487267 755714627 877296943 283853681 383624818 444287131 949827976 429837625 912543314 302978959 529179765 434792895 874538804 225918112 267926401 29204877 786426439 886438580 938722285 649189921 977354038 648047780 694333056 797713820 809568396 303322773 743715240 690683057 852943891 356533563 701372767 526033126 839736196 278997577 444062211 435125511 862964642 793119377 798043089 744371473 893507763 473416224 958122860 146254011 826103669 467495414 504460096 203306498 476752187 948770242 986692377 410755821 931421001 161526264 493284235 122862293 733817785 570716957 745220430 172038817 993211806 748464963 827816618 85682193 143922321 951975420 996525604 228910498 233735293 554612309 853252969 734512404 847295538 268606709 427114168 277648690 882474391 843692020 948895455 43420351 48818979 692346581 907655880 106403822 624158907 371396526 397718856 202845412 674001588 51020072 122476627 438387434 747680976 601311648 722970380 139588647 188881014 498780943 698185224 630248464 689624845 518791421 675009899 956968447 998208767 24213000 418024504 383050647 800917344 685135539 723716176 365413433 445769283 128869939 667962449 195171163 922800176 14755913 981416118 573101042 876279411 625944077 741286878 995533930 995721841 344497057 523058567 567614439 793095026 745429273 841691381 589574798 911199405 610001249 644013850 23320228 285473395 568384552 988460702 459102590 550244356 839066857 995471872 795184741 892261078 42285976 986249166 315830662 991688676 675076524 803998470 619454525 738372699 152628083 564597778 317441498 869966559 436962973 798768973 128540229 486960215 911764350 960778547 168756751 240801429 913108597 973052619 539180699 855082868 301924480 612305060 217352755 712386329 454887718 877612594 103123678 797619271 54577057 291220388 814886272 916050365 993587642 997848779 704105603 873250660 261900101 366969044 778294452 968221510 722010043 997448670 345362884 733906087 361797714 551945451 750449068 882621245 433360824 566248043 382422755 805677657 518751321 741542707 37833459 838807031 59237821 816508002 272848134 707629999 125322041 671331246 435726417 446447405 590216826 701976814 112971940 323745990 997258395 997685989 703553235 990955331 654604132 983163426 587303260 886337592 643008079 989438511 1269813 234405125 948534872 989191253 332340821 788697801 282240229 662972354 485437512 783550989 925949921 997431560 566867992 785481496 773257231 921430985 193802318 813555130 330328525 762330776 544638000 787309428 738525888 939159152 401276826 476906879 272512710 747030218 951599024 953421457 926106174 993568244 995721326 998032414 58710456 737020320 512241100 754126996 693098864 802620133 471474856 598222524 454623277 589691800 812800597 970999416 900922368 900958857 828886553 842230836 955503764 960963943 15254086 231033458 384199739 506028954 489167270 744149581 660031934 719807301 958194671 963210633 982200517 993187128 463329026 580905496 222630462 646495767 365270464 908376696 132145994 217910622 260680133 355109932 278165622 807519092 137488288 154639228 724202467 751578931 339253079 574961213 848398613 996839139 165185677 854507788 328144322 923321172 55441525 191800442 840454000 941014372 139766710 575666492 618336197 916094176 643153893 954534406 59945738 359179511 393827739 875145336 166553165 225896744 749216635 904933659 595863645 874543451 782669181 871196986 607245911 967196400 245546824 491127600 846335245 854584624 729103434 842661602 533259004 594776550 501265961 815550332 434281900 606873879 408851565 688766584 817108788 851643277 669810155 784364794 461628174 562944158 651100571 871450877 827349623 897053867 308526832 379416691 828635831 878581376 470492285 474541303 556701975 864721952 620012594 698748663 109318322 851943752 884547892 898774086 323744736 643718690 910686556 940209321 189843466 458200592 299633107 726514024 795006802 888180590 976437978 996946056 359750356 993687144 913207386 951738489 550842481 837708428 323446576 372269148 672264578 910237138 577000324 785541108 394754731 793404545 337773117 568962681 58196439 149468605 470244440 505957537 305015787 686883898 260393866 658678796 326192897 456461576 553837041 911778432 738331444 769419592 272516167 779235390 611383769 729452221 163817039 623541212 301364357 441043811 927946156 964422310 273339099 784598854 893530712 994176168 904150995 974818151 563563510 951229739 943680061 987987086 198402739 816604337 598229995 727130380 591522904 856650222 657816290 836333158 885389337 995077793 612410133 616432028 655248380 655354933 864760624 939636116 315032115 574554883 775658105 913757043 721067612 735777512 12340638 723661500 584247026 590371065 464678702 845752638 70518942 660818302 619114768 979619925 925612145 962871223 727754724 818417386 754540809 850264800 744380613 984123780 888344685 899550711 434254708 442232232 435505546 574522235 60086731 864308604 593574837 666470515 668466243 973782436 600618946 753392561 221944168 534361697 368191443 959598565 695481627 763775779 196562198 742878288 923864049 976363919 80840567 887620863 394377269 728998668 42184523 566383637 292807444 706932864 827214968 832568631 768123320 884108938 205837832 854204130 92223020 215042561 433183070 669037432 657342143 934639195 592604143 797332798 402901611 670283021 631665952 842814411 225337201 311176619 283960241 649762801 605112473 972612908 464910946 621979794 91767879 314035608 28072423 120616973 495511851 953831563 371286799 722055705 356284362 468266279 905711143 961065091 239640331 744249083 735770555 876055070 970724911 997916623 439090313 516202849 226511262 934324809 391209676 588869205 985059411 994847309 329765432 740231780 477621931 591794237 192314559 285997044 433727841 936024725 410451369 973015458 984896650 987617198 676281439 948041144 363388453 510379138 658978594 747201649 660082591 845653404 530573934 816811568 952778554 952794500 730814968 966038398 795260495 894582916 218879089 773053811 321024103 530831592 514537911 858829145 367363803 813003116 560974099 893415264 919678601 959498286 616369056 678547268 742667002 931560408 264832921 561104596 453177566 791322717 948922582 968302544 152151250 773410103 163912136 707467659 502046931 913555857 906433338 980493090 468768449 806437948 517558145 549414536 986440399 999202803 769781465 953879911 55816101 925471668 281111680 973937313 52706640 523347616 277623462 397992005 156522258 525575625 336625021 579293557 319040044 482173990 872067034 886876907 386609312 405766643 417146924 534026977 758473318 988082081 351952612 941681060 438413608 573964795 727101175 761896625 416935310 839813972 98697972 670507041 917653936 954591203 562790342 682912239 588352246 860270822 478794742 759910278 501069193 885552222 927294781 927735773 500859613 890761801 894928581 974181550 600905546 946731918 77863365 267930676 269616438 300374799 187882560 470229543 955824596 986320742 22779766 83995512 426066938 879336225 844827730 999828220 59006632 666444395 594465989 668515671 424710531 695920526 795419642 902886571 719941170 923130066 868902339 988785099 615364454 849321680 923631628 938631678 762762305 966115527 186710514 673422295 560665305 935104970 913338260 990488759 270067444 442921481 543337802 874415583 503141427 696873788 258039070 347802519 268030247 300263517 88218910 825680665 974033028 977685792 57618576 579074554 269839386 783531698 643035745 902931723 983567390 986819734 819648906 829549934 127452653 758835440 843163760 874927668 660982210 763152960 332310376 592960192 199201524 682286679 191519174 303531100 219411718 684299830 169386366 964490365 721210106 887984359 726758790 780759008 74947995 472225721 45724575 620200299 165696099 583618598 65745967 84224654 144531480 935077438 38888620 870969818 749726610 813594341 673560531 837063298 456044489 933650293 429941875 946776305 400810309 843190593 291890266 789093059 912328983 987454130 685617369 755258554 891591723 915270581 413145344 777848646 647105339 726147690 419310998 567731127 833704589 965091330 599239320 970629032 613117706 760655855 174867853 529836281 970110134 979374971 5561711 566449209 228500655 984301884 964421502 973632640 282543766 420038025 358280255 534635480 157924447 648824801 11943910 149960409 874037720 970637043 290538481 713842650 24821302 658371460 322095673 501756489 232072432 583658216 623145528 757347433 750379411 948263643 527874228 542214238 85009786 322027985 477856659 575342833 854713907 903913271 95800582 974453384 429173022 619485892 854436670 886423048 193722480 316842887 9062398 872191526 674298593 722739370 434341277 865227569 311429844 576745568 129235445 566574562 453215082 587538835 610880998 879660978 516128797 755186207 690029207 981260324 817781023 976137275 453777507 787697222 210081896 475414390 223611766 434911844 341839687 800208726 370317877 763074351 796440681 888861457 310002589 614377412 137162547 503616187 622416627 758644006 509631499 806137022 246014162 982024321 340954319 879067556 420225764 714793403 841945663 967254526 529323152 638925910 120083103 429758903 949774416 962295377 987569011 999679845 4505177 767011064 686340108 698973374 889330470 981638470 162620731 173498748 9800033 301914442 512619823 870983357 207541946 812651603 904968788 976914696 855798644 908120494 838091217 974587401 392183245 737797360 185932713 888323284 673141528 808708783 632091091 695089180 558891069 762157320 356998959 643008175 491843398 972957965 116646025 656630147 68710716 851101458 521070418 811744451 545084388 620692958 326484357 835666895 473682374 510243563 242995708 669234440 117120546 801544509 373130375 531777462 425982197 694598877 234746794 672647996 547080300 637326896 803461166 859069173 986928909 991028830 965738542 995670391 868750311 915770488 221845366 319440976 343023932 750373220 800526930 967019780 72888966 724068402 985075013 998510910 902381032 921872050 520787082 825642492 655396453 819128999 201711098 274331444 711876039 737820136 696436838 910001332 504070761 672164528 742969087 998637389 197232214 496077239 741300154 992509170 542699990 663499510 572081525 773051327 598451714 678907417 746264975 763350846 22038469 396819328 808150668 965761117 241841181 282526957 50502322 747050035 572400176 955949268 207952826 585202375 148640103 734512899 516984447 558309372 260566272 505286659 951296660 993011605 666360601 901232862 983793707 997457051 272360750 971977280 564842054 865592707 955156778 955169974 941783862 983072458 411255200 623335037 680017957 747896412 569395616 785411739 904612228 930226845 662052972 893146133 114879239 378206543 615452119 807152813 459334555 503260465 905087298 922270340 22132532 694926552 528324784 778679213 996006046 996783717 463643103 920880602 236359220 961384737 626627948 885431604 592649446 809819217 499293501 925619357 102721341 788924417 133189873 262926463 67033652 148922706 234636588 235296461 761969488 829160776 908202580 963774138 425779254 951091859 52287925 673693945 490743757 674050069 43833719 808523193 981812142 982846063 242241435 476847910 41937728 364980981 136521529 204582921 256641155 258120755 243514758 924721128 268240672 468572329 336257220 533393120 167003457 577457562 167530900 264011640 669423857 805768794 211460373 466845552 610531979 702432440 171790011 375242305 339324981 643111875 458301294 693711711 537705698 620430233 727040325 855367349 756490984 877928410 827895815 952231851 891859377 983660309 18920143 344087982 834317852 899861142 434811382 707706407 23399331 582873897 716480667 967649114 692960389 812708212 185436246 584997850 11806119 223256002 661636095 802560667 555053233 893563263 95074389 237992281 773533322 897141474 787066629 896700340 978283265 980156541 260748747 344932789 182007016 485984081 485447371 875099100 650870464 895595480 458411152 818594685 284090379 975538946 3536464 73235653 794718682 890274554 677982429 844512158 545120088 768629583 135759880 467165441 138790156 198686230 267379849 898519930 215399433 484326878 403990998 640143554 886781541 941689616 214143194 907067375 798251289 938066514 609038014 975999869 619432797 992691338 838414854 977867810 161341370 401124418 771314482 904505933 454023108 857032937 991040617 994770690 371553351 752718465 854086657 903687985 254924372 495717129 767297653 910661916 891118239 945244988 770612812 842598255 613485255 970685619 748494087 903054958 594332566 672413601 885893023 994732072 424828091 521767557 612872923 735163781 639354774 958238642 850557986 866677726 725012973 930107035 321987401 477976591 990021452 994985300 57683035 775615891 99913499 804410932 571369485 654323555 104252373 420658645 755698660 965725059 724400592 969511875 49983039 317530179 134660626 530915894 520980943 847131658 780967731 947881882 276692947 695967295 14502824 218244513 561137432 653675670 444594701 748440827 114297689 963849971 946416557 983430825 598714835 797791958 812382853 817411939 878448638 987532436 306341950 483841424 783721744 856035607 336871247 631425581 719689848 952791339 613103912 788690069 365890862 976271097 231220322 274227762 76102908 832706645 822505323 892163714 593794025 742825343 961481730 978193783 317351816 549549534 348908460 575723897 246371552 899527406 490056899 751546549 770252086 835786915 726013612 970065130 664736753 973515408 469533833 535398668 348327294 812005882 701666364 729751512 234855892 467821216 480372210 976782057 940900612 950131491 891565829 914763049 510055654 782685341 606635783 836439779 457699747 473899565 607422108 677701638 473538185 950413234 16469038 759936405 989095395 997235194 208797013 815201821 685200167 780290544 988059876 991027759 978222149 997726623 373696324 807472319 259429111 915493844 821350217 982632782 882823785 924822340 407368439 885124874 623616188 725153087 979765750 988213443 24897453 454933370 849918462 968634541 571974340 876022601 717921079 737194496 565169085 821900608 792619007 954813735 513630029 633559908 668826692 705829493 4292416 474398876 858623790 860955995 950593182 959967284 258070531 711681288 453447614 770651463 260238915 546307410 577322022 777158747 961562712 966074091 42570907 225364232 62116132 772320848 778960239 932529533 29650015 198822006 571523239 595745392 823732902 895692868 324260767 449701843 377248066 861857477 789250466 918502729 108886989 631059060 982302491 987511891 677604103 701561533 167003985 199293034 854453658 929166190 180924188 411181413 595152640 679484928 925000115 976849240 483190707 636882953 6157863 293056830 796869059 807814997 271543511 402673842 426658148 931519939 688675819 751600026 28077751 34142361 414362407 786127346 358760681 453916621 653611570 851917353 439663247 928133600 710631270 938505468 876377521 972050106 920818949 950040987 446221373 939353429 198480451 484440957 135888532 575946404 96460140 764994135 379116049 983168996 105169658 341217660 880910277 916690209 250281945 306075644 129613959 592898982 913456899 934890904 896711950 977442474 270463473 927894700 367926687 449606166 188992476 271054988 643284466 663012966 555555702 828406909 66209814 733013937 630464983 946714373 768854917 894524917 112529305 405997478 557194993 999835489 295397776 399650818 864041835 880173562 243730446 964029889 160025389 242751845 158405716 782968777 369684816 963713742 443872994 631373153 109631289 775936116 380531794 994697495 784415631 976266210 167351549 304918876 686973860 937803589 302802861 580112932 61730581 378382534 942529688 986402209 859878193 998826166 313927649 331802718 460404867 475170914 884266573 966500622 716708162 852802924 228556032 953874056 386665768 946491967 793816526 876107860 531622206 660912548 47894379 898114860 734345106 868068006 137365910 276245721 483345699 505132467 690311595 782279739 65100585 847341851 450854310 896392674 142073620 176691433 466891060 983054203 22819456 353888661 290159701 925974595 578453574 686931825 872305637 971458023 182670532 556251592 495543836 695504132 991654170 998257736 571072797 911275179 128863626 931805512 562362141 791890300 174610334 179769189 959866167 975246806 890951208 914615342 118727742 211077205 940686507 964311554 896054911 915976092 519011010 531741337 410063764 958513425 14615289 171473589 156677417 889709500 612719056 675706180 746003461 765598284 766399220 861532108 212109313 685957593 212582497 657655741 98580919 717526111 305806231 780402132 758942262 890077315 635609657 682454790 509798231 740172646 388564820 931007016 346356700 443511295 535060487 670935436 411786390 489787749 795063917 906715483 425300953 722888539 83161923 635848075 841804242 850254970 927019019 946043274 597004443 899682987 145929144 402216580 727532930 793672014 454220691 971751902 724554586 792320006 581009987 808866119 4369596 467881846 290161990 997829640 381513502 816739737 561457627 781255456 437607560 733919895 303275888 967923652 681854530 698101804 989990710 990479172 637854713 690412394 867281657 893282787 641884258 750775244 879881486 949334111 675263774 915180834 374902185 996545783 991008930 992523677 914221926 920761893 428692674 890725084 138378496 244751844 223965625 868856503 277366419 396950888 853797260 963933778 534450 483432703 34736833 471823010 199056636 534304949 879917617 921397447 44364250 360445019 1670192 605817506 395405108 495708440 330324688 838870468 563477970 988689146 64997773 437161083 174772216 629920331 778665703 954501983 527120542 814877237 247749901 613058339 574534911 833141697 597303397 722081395 50565694 989169910 545294453 835218580 350081079 447562895 348073978 910531089 417315609 533659172 549527323 870975863 915124429 971183980 130040648 295385000 39185747 895969431 189095859 551658779 90485260 254844430 993561766 996401843 936385889 963000674 413234887 543368021 898940596 983819735 707322505 958856948 968549395 975600147 318238917 540363823 227775271 875142157 283459384 629356951 986218182 997875921 909966751 924396779 135294092 533121651 773729268 861261002 824692016 947170866 65250359 76465381 178138280 965899166 522047760 826979313 139556877 229789313 969113012 976826233 955438631 975344463 565013575 678118034 105081301 494450222 613041322 812382371 572069325 872139499 650304892 757334869 402578245 908940000 666298282 784944342 765910933 840533084 448149172 836760437 681363915 946260766 597799708 602908514 762251405 987600503 228061595 872117278 243889249 968027327 786269067 989406696 979716778 996686246 904367995 989590199 167491759 820008955 164070132 940237079 143376063 228258464 917297157 959200025 865928923 916073166 348995837 662623140 922499061 982985841 259808376 448593246 52420679 729375539 183104280 806429878 191302802 415637942 958934430 984189186 339509324 751735393 760025081 783488090 188788675 359456555 732839609 779792231 772039633 868083141 66734833 963118499 693060964 730554108 376711630 717118379 740243494 777303430 107006027 474735212 581765823 634623710 97195381 594658400 647439038 778792640 426615103 474711100 710096766 949692177 369181376 744436893 675730742 921654178 963937766 998490875 891530383 953989697 755622935 834393737 13159769 903919472 114339134 324641618 164036108 990192476 356756241 659808792 124460618 561773998 586103297 691212456 880000108 984514684 758366812 818091319 609091179 658997378 496802195 777851967 878304314 929576657 695769147 705447027 270717457 871003880 172166687 800689377 482603182 878710148 919585700 943137501 604726535 995709689 63312847 786191326 974793564 997993796 601503322 825870834 340506339 415068258 157234272 609205621 114280535 965668817 806206153 924006747 662024064 933313092 868955580 995176251 4316831 790386449 734482784 761824762 620295649 874074602 17468287 272978456 837429618 848296426 615422246 966699709 887217898 893404762 361617150 585368313 930830992 998724154 290944039 900951018 733896275 975167714 757444070 776023252 249020173 565364904 660977821 894808310 35260265 918818295 617547115 827003681 490009676 765988328 646380622 990613849 787160517 853993652 359618795 976992612 185034330 608955529 35643575 963281008 951749992 985249368 228457186 329200453 670759971 934261636 923295388 984191582 267755017 526879625 174985817 433678999 994431666 996851937 164088090 502198863 106115063 128202241 21382020 262650529 261791231 490258215 879346223 914303404 674277310 735084690 692266657 788278011 107589282 438037326 518666086 807528378 628528467 916394506 219701671 252512846 464994807 788999565 738275034 826797488 561497119 627972555 452270998 556445391 566876975 743728502 788510051 994229889 847250132 986700889 627340921 917198799 806268139 901452025 744865090 914446835 116906393 933613766 667745938 969041344 318057300 619183213 854702758 909909336 27586376 501641940 524953002 794763117 703234781 734419128 237500326 402706744 872037072 947505205 114216157 765527368 188210945 508821628 931098313 936428813 962426211 979655594 937641820 940661671 839383736 964866289 528696595 582841508 876226221 894619935 217250082 510948951 685410601 913362158 253055387 987661925 272906493 432050004 809722749 848545527 499202219 579244632 379418765 994590618 684869076 782558692 157015669 920856613 906891817 925029047 840650492 841743932 495408749 680297719 998665637 999009982 454978204 735804715 390355449 492357492 662831946 913487051 83696969 763557851 910513184 969488431 339186445 968650445 184335656 603103049 104351021 383541542 326723785 529598730 246826776 274771408 994787266 995210244 122894086 592160493 286132665 893465277 105481721 859000440 740520404 929123752 984618474 990733975 7852880 350840056 809527999 884339347 607160836 819845524 547729466 662685538 481271844 721795738 543575784 738775265 72182976 661037395 163187489 922743235 870990549 942557287 692437673 767875006 844061047 942750962 624353321 688773173 742545411 916690358 217297929 583953019 452466867 943011444 278896531 618927972 572353339 848996659 285688047 647022351 893112815 997810237 659606045 924837009 121491245 945984158 441599 310535613 342758681 510345192 3223847 711407093 904231251 921914253 378578102 958676647 510626781 921854155 595878003 790770412 939009950 969288188 510265299 526782815 338092855 681312221 127669376 441150706 336667757 808776878 992342020 997281172 52819128 670111962 247312396 989462547 784065335 910538672 297430673 347742729 889061359 968718600 663508375 762712253 471905088 475882482 210939084 921530740 607270573 883155490 218228241 895679866 336784448 767378698 935738980 974895368 590728728 818386751 118880927 957305367 176410929 896864285 149925010 286849281 724077347 924568657 687233684 699661784 199829153 866985599 957493015 970240433 965436363 981669403 110628400 511273499 3565874 132726315 707857527 789126252 184684616 498828016 844806109 910833309 250270384 786559054 468700822 969123450 790545694 958655168 302967629 950346334 530036071 560645249 773985586 851539216 210971974 556863522 135064714 251760383 32772418 524960243 310571141 815269679 266218762 832609343 579283117 777238500 185679543 494416637 682962303 685963994 225788416 694891369 427117591 756956583 899685467 919827454 325451971 501416267 514367992 680493943 645671351 691768799 737356990 960938122 457978592 923802720 283621026 814966900 175079659 875560146 274955195 697393880 817808702 933408289 955114350 997393335 840620492 938475451 369328017 835818989 305427628 478721861 206067464 240636853 336458902 691356400 129451775 821710555 240271994 414981534 342789360 560339859 58680550 123974961 978150186 986727211 398945288 399508013 565098596 892257936 95225506 762776298 367102233 808312688 152921613 633329456 147387771 386956870 991894292 998971205 37025506 973800766 648325961 748607760 497271162 803700512 651193615 989686261 541061035 767362733 135673777 216208359 848766728 866685293 619905990 843288282 137973534 161203634 539713023 969281237 177609135 450902454 771313806 851730059 634318927 720540605 244436635 743168573 754503357 838972336 656516468 704437098 920101995 947107432 208782944 568839434 366136294 975251096 930400379 999397438 185789127 462776400 503241707 527849927 765711827 924913443 230622955 703548665 355373678 463072236 382394523 520188735 168820460 801238640 492344832 710212238 86873523 255394332 663940547 867018578 174335300 798625466 489868392 665347856 35096775 307710333 116217836 884151721 93967098 348202747 342234450 990967225 487081246 998370232 11022437 231809721 312216314 854413079 999969828 999992409 42096345 390331945 592367646 831499385 931483020 980306634 765989611 789883111 123518268 535372931 717493583 869822392 766517767 875139647 553100152 906428786 246966011 847124315 447269981 614054974 51060916 61872430 275802699 341516116 319070010 933223576 39211875 237171558 931147020 998932618 443437347 904662651 290138318 408283868 578495074 871752122 945692507 998716201 308804468 424671391 605109815 619802775 392618881 793194467 509939838 549510944 712243635 916546000 50942769 947651662 25256825 942707979 63215574 337239715 374088978 614359008 936910876 983306802 749723121 782298342 447486079 874344816 476950522 714289057 74375790 803054685 354201189 426335958 418153890 887154287 589151798 641905897 544990361 872566819 492464331 779788328 771529782 904606180 904112778 928535681 921138724 926564432 24910732 122241070 12890119 91576382 287446810 570791995 701426580 889055799 218911726 866733737 349606657 455805810 905230991 992720805 783003106 904763438 592339613 648098469 928917245 941546009 691629720 747364871 325943896 661458051 780664701 895961207 703770413 815033319 737664654 973694116 772210253 907049039 853951174 983920755 138970593 875210955 492281047 699036325 981251541 995230456 924958538 939056609 100512352 330571294 41034214 660038358 664388391 704796365 273915553 922322764 175989117 508996899 405421278 456723539 679899882 957671935 861771150 874767033 880112657 954418682 359435901 595224405 917793420 930682379 759679083 910545535 142567712 978135685 93581978 498158767 607877425 855497047 418192742 827366237 951952581 975967268 320098220 537577970 501513786 755081272 533184444 889928044 657744018 871065347 517053083 645105708 410777003 622403530 444419345 803812538 674820752 991663655 236106126 687125826 196235938 257041858 780231685 988136574 855937814 992781332 116698943 500297013 501706560 888048063 469849422 504714199 800698459 919502023 67599194 814820090 510818602 687099934 381468674 972773004 889251182 939653815 523543660 841581617 29726294 389645628 915550028 975287401 770178133 883487417 128588185 642745617 628416364 695293873 518370589 739275724 211604483 386227915 973251561 993767567 577204249 913549096 700410686 833378589 615451893 736287860 461984874 983912670 992631805 997593984 132816392 675004631 571422114 738441866 23192164 371814755 865940507 886875075 297149760 518691616 512670890 749311322 962429173 985823752 316056800 589404746 384981174 839968370 553382966 646167703 684306976 788836960 692690780 865574677 940108567 996935371 286075137 417294033 810009162 842296137 464632787 469187938 80416497 965783712 292687878 880995562 840039543 900631839 269317621 323017034 616976736 970107529 487722252 892891627 977784509 992653241 395591778 591191314 213852557 351194153 489910731 946410550 298524332 350285911 155377270 915734110 361776794 740658818 404363560 501579511 626527795 772725306 172054687 972660727 163974032 324401135 724708598 842478754 55145190 930591621 102379681 520046463 283264928 487042007 618527762 892771116 184452088 850382707 845418133 878643279 346111688 766073836 268940935 535085628 274995801 709672852 640375834 897286564 12975061 495110648 17847821 881099462 413693206 912929133 978148881 999928088 941024244 978348013 372908145 990307670 793657607 815839218 704226727 785881712 822112153 907601824 430274478 635531978 271177608 932521820 944560746 992083828 710983238 883167324 739028418 927442743 102277715 635763896 487004417 964787799 98835297 209839824 911021956 994748119 395527746 491678030 64657833 922708757 560052447 801670668 487842409 633524440 812391488 911149446 210765351 944022306 592266687 816947377 964591946 995951553 209899776 664055443 924156471 987847558 85812801 856312186 781204981 991121533 546991323 837988773 806977851 868001609 330259100 511658606 467015554 855047481 624536513 732612586 579271214 700939140 350065891 396756573 806337269 975081513 348660658 555385526 281333652 660100584 30006189 892922329 522837376 771418645 92536896 552391431 107913141 489568259 674990345 915500850 293742906 312650985 345655860 882997087 847309596 895748606 143827324 470469355 223481925 692406048 265251517 470958025 22443635 770683123 828004938 963991409 533996519 620749126 514771317 851189633 318342728 667393100 200273161 885237753 939104560 952077409 353565453 626024687 210223868 384472996 748659356 894859024 537971067 906654615 367894502 388536844 625870153 768139936 395833242 653552567 813942513 837241415 794546233 958591351 275375485 505521081 325231595 344051552 7528533 709472646 447046188 814688377 545946090 856849468 740067661 852497070 124387303 695119025 986294373 998457428 716842888 724552678 604291311 638023317 797166949 797246029 57296894 731513966 244216810 301262460 155226166 359012088 969023094 985945396 983872528 998547376 831825196 929301411 818418877 830575545 579033602 863552839 775838847 878875868 237290406 309348029 935657291 956224049 390801734 435077893 542356831 550330794 527164263 910000932 413975662 707152954 765228212 932388666 427039722 861911943 736215131 778576793 534452210 698550969 51720207 922257811 204044355 600529447 421183851 574812578 907422965 988328155 69719584 474804404 412861435 847154454 64832642 834927153 971333819 988348658 589707045 770292896 272012813 624478566 479152053 640270645 919398547 931067568 519479021 905739864 814476479 962839644 880093276 880369492 882495556 943021171 475070606 600482894 609181388 704137542 564832708 672166769 413941972 979566651 262876239 642135061 413020723 840091488 546349157 913319431 813726962 834649344 928634400 973796530 677803204 973085748 194296746 634664729 354213570 953147994 771557980 814757974 748652730 983366551 439258134 912221643 684685333 775800735 990580212 999312290 619566159 962111389 772687619 913303644 499523812 553932132 778820767 981068446 112943640 430333635 600531016 687458246 226946974 688035673 820042573 935633424 660599515 798679493 485311529 501492205 179433689 641610535 291823263 359695955 577476075 581468418 536713931 817571398 646443473 834460039 432779914 869098742 138639610 909127469 128284559 566165869 25035275 376193102 506372509 711796847 72132677 174009301 672727906 752433721 717156609 831001353 735046534 824116760 776737828 853118905 126899048 958213321 18779760 644651293 506305211 950911415 265958275 697085907 717370058 852502413 739369608 807380980 695085873 904943745 927093875 958630151 99482794 364232568 96434946 862351482 938192458 945733801 55889195 445993890 720259440 984733045 522281491 638383296 5322059 166899139 889258261 944443749 247462706 458682232 338103878 407758940 466402853 911583226 201975972 756637696 752415489 788818752 927242227 951102106 977872503 980650690 808705537 841063339 139922827 971693097 425360695 747851855 606749342 656498490 187747025 207537112 929299397 989785007 497832860 703146975 716370755 724233542 696390637 856004187 390422285 871137509 862591167 918012453 193009920 731230598 240566769 875826795 138711456 278540367 977925061 979804519 44307503 57946505 638880945 985235208 382539299 774325762 235910246 486153167 864789033 983016055 955587193 984392910 639519965 675825475 614469605 975199542 4053291 129727215 704724508 744111527 730253923 834460341 432444179 779753731 553116513 721403590 539565485 997608961 582515819 594274980 144482022 698495538 900065991 957421701 457353702 693405725 749216339 854403864 267234285 417078873 212306017 261238831 797678923 999885519 96404364 615598998 73719707 547811332 18734428 130341880 134156024 146943881 861838347 960844801 101025140 875456220 471273522 884169907 455352974 584119736 908587001 930933283 200349479 998252507 239046545 744441191 234767640 963512302 593486821 699670866 356135539 540712469 223262637 595560258 97193420 665439316 913395051 958207708 523297208 829109398 433827367 581619373 338376240 490336566 552439566 834047201 578840801 763278317 992093955 998653534 814425075 840238411 531204227 708158753 359361755 373351925 335292151 561806566 247041734 603323779 781597202 880071752 21540901 89908373 371862732 553233578 98230732 484817981 9947086 311356320 564469109 579009934 138616482 871003218 621090725 985589414 691894666 881419950 753497151 987169296 563014335 620266381 204883962 994119305 954647720 984072946 764893241 874746293 168552163 610944235 293407545 878909708 363442968 692187026 157822690 474222790 268691501 659975880 588594390 883069665 542262486 632589710 69883147 422338672 773565459 861376260 215020362 678484436 222230053 599085548 694765550 913270897 984798872 995442353 26834296 254301058 677888174 908609775 73286073 746018072 404215847 526277876 715646833 827194019 837486953 915259000 615002060 757690512 854004878 938112700 106568481 426565407 468043140 826137949 359248347 709648920 726025656 837178090 889677676 931689149 887977194 925892962 429609225 467765797 176361231 765253167 675279800 842198969 368582969 657535636 444640403 744754743 608851382 847963501 228645881 874922820 191360857 351017064 914334868 953969335 242508260 779190710 243465642 318960570 41849503 825908238 895165755 914317801 615366444 809344468 559454219 840469017 909859887 947549044 874112607 891383127 986459724 988885153 857039791 986918338 339100525 982925394 492886259 728248364 150100121 904835665 219149133 231923211 337552681 602222550 369211403 689076749 582530400 849125459 909001764 962579320 27959317 695843005 730422036 810631344 477061428 873401457 679474501 998290106 277413331 954603980 545650620 642048938 241132198 816035272 252859567 681835832 310917331 804160602 251756633 932425645 736065851 978218825 226513253 797106785 690147124 844667960 898457032 967822169 856677726 908393504 238454344 425835754 501939031 937537204 299549005 597167932 860512016 917471984 665125326 694942318 971450380 977914166 45547259 884222449 927542536 983077175 641265510 721183692 728102214 861735791 780442493 866109846 799574585 943615985 936487250 982182720 848924698 957359287 928904970 940209384 936123226 999645109 334399695 784081079 158092577 723450501 757551699 856570887 760433635 797307224 786623107 994391601 155461681 344678254 278455668 744237519 754164281 854810037 209001136 619952379 938729533 972905241 269169332 459826236 187988955 772500611 500433743 853580457 550621174 967752577 886873625 908604658 371597659 947948686 756080040 944881623 786306362 862048088 694280831 929946364 777541535 919005687 811077983 951206740 64802953 403346180 821857944 893564235 981461729 995048626 15144545 101814825 122875560 351452419 529871175 798882880 863980814 887254788 924705217 999364543 854802565 923055138 974010076 981174451 116685021 855462894 767299477 846831569 396833949 705208733 727570156 882844339 864754207 901903481 860228688 990466139 321979368 873889940 910115548 955610556 996280686 998872380 652596057 927562683 5629229 839706840 696093024 904525059 951599824 965654307 488092290 616717639 385043690 420633105 602370841 633091155 391388854 756691036 643288409 657091264 517370230 699066286 89000553 973724412 913760018 970430164 564060477 749098459 11883658 447195577 564099124 661925060 299976562 574467876 8772791 857025481 456745575 685662210 616942630 857464461 459631739 995322249 377495894 960108923 461193051 850862460 554968673 934423942 727504010 814194175 410707742 573428880 100147999 552034946 775379674 919911116 300519089 647694101 498677597 733469386 226449874 505027511 376764490 513233263 785898345 858447182 776411181 991800920 546466452 608427170 478894038 626375051 57055174 399594643 858471037 990567991 976269765 979954839 35531889 282434230 136951796 881594679 515369212 566754232 107700727 272539889 372342714 373593745 346433976 396266339 71665464 893545501 646072429 702827774 427761621 590252866 781138513 950924016 20556276 50534162 583860609 627787421 150480889 217357523 571212000 715648023 262749620 348112557 396302841 701076564 442731600 490140226 698978075 764408401 696392332 926377214 973194161 987055032 656129765 899540318 230156658 406077666 809495324 905842910 578643315 890613890 689182805 954075587 331288642 559836014 509844790 942218578 970139758 991660090 292011977 672358444 198933680 322517858 560487703 895862492 420578061 938748293 766517250 940982085 559246197 773835676 893703559 948899548 498431711 785869205 757411917 849861539 669218004 767871715 579697510 814739824 65698171 451414259 319620902 829696981 656146939 857845993 636831742 689047758 385259915 624602492 689146757 760972651 816064747 896210182 398686023 501381936 663544158 672209716 658011610 859948947 98116408 268055156 924746105 929772396 249576375 507271102 984790140 992918497 520864874 648640520 791552514 873973474 693618779 834962969 233144925 910122280 54150733 902252005 244543310 492611429 122985741 254354719 602592411 942578671 588054986 737447505 596951391 637668928 644834169 783796570 649522129 675868022 260491516 476858888 988468658 996957706 989717591 992407626 860219557 938417166 410155168 832750629 243953464 750211532 687448313 883691959 603969657 909942327 410010688 939756952 485668812 846123245 461156587 655349768 195257723 739687420 703771339 730229310 71621735 975730122 120367492 226365867 174126942 524196664 904258313 953651820 397629556 947881094 138646510 619429093 397314577 633618365 415420007 745988545 119073526 752009025 878522247 939688984 849107373 960830581 88881003 742156989 85985145 258568248 584832126 978394942 514620872 961708091 948228091 962445801 349048302 696357680 622560617 623775521 71096130 629137709 877069698 994963920 296932120 458383807 412578014 797470940 356670973 438324073 984582802 985212934 16260049 424698483 553586908 950529694 457042678 761258072 235055550 263492384 712894604 737586045 866190331 989148825 96843077 298305827 128387898 635919576 681261252 701039744 52805166 214958035 27260732 663323237 7279220 758449496 680788814 952090302 879380217 932034305 46588401 785735518 175226993 690098285 275205264 570351751 875066085 990344142 360702439 429464909 309375807 791019349 236162833 715974816 883381927 930724175 188337670 373686797 383679122 622306277 798599123 963109842 774291904 871649176 120106863 485382058 302216755 446473452 99325862 248161602 913763117 968392128 679462679 899845926 39529619 42434385 81739618 227630735 383750660 767687339 672477370 956599229 278685348 315082390 64142044 294356220 396512318 973390572 867147682 960466686 554079168 861483654 259192176 620855551 967561541 982409996 394456411 889157737 661447683 834612124 673262332 838322822 995873949 997681202 897455994 901719679 925773779 994051467 899361233 906150438 274935363 695589069 101698947 598784632 699812196 838694922 203703113 681483719 27225389 280772158 398401611 859452825 914558617 983616091 158998327 480997021 198635753 252104278 17256131 965546439 677257220 841875026 206279630 331392481 987687813 997586558 924418069 930260621 530696480 901432968 54442090 751227144 927702078 996970170 777074957 908540388 90403357 818492198 584514190 973104009 833828840 904361901 60579154 560975995 926560221 972780265 213280770 756735356 938226005 947931425 540555189 624481161 849964118 961909469 58492697 197899416 863236215 895877028 272392657 429991017 705951751 730260348 526039844 996280296 685417062 752029097 966959018 996841155 316550228 728177304 636134843 866872850 484207655 706195919 501984908 518804743 179652608 825440006 459960254 779090038 58081290 66209593 674770775 844023179 405443027 546392025 388543757 684825897 934441904 978674157 285170618 751216438 365737073 587584132 836873388 858986480 999352527 999698209 150180375 787999457 890803960 904047238 948632952 993918101 301651533 905906075 884691037 886822952 243621643 623089256 52333052 84849316 756276744 830760766 688670035 912523295 987653535 992719229 452288342 718200073 842844970 959701277 807133058 960475079 689270861 776376631 391182816 772064668 94010145 403126344 94976974 388044219 816372552 990872039 392339127 630183424 265076743 464201820 164650144 804811224 808267460 859044807 767400462 989831636 129437620 167253100 942697773 952453708 774396069 946483427 90858891 128613121 30983955 286697531 356111012 431236109 578449022 872359170 620810220 746076490 92014298 135397693 704908875 775862328 40105320 886558691 57377089 149933858 520769234 717308447 895033674 896782597 769123578 957815061 357516033 567963687 377948287 420605633 661752562 896267303 734262549 863000657 661174978 776287905 865881621 935868940 130292888 969582030 980908744 981413337 276222064 569135291 713045869 812066696 745775554 890350248 635379590 882711356 385980546 849943947 514444575 622778072 576518049 673732295 993503272 996155079 848537983 959483166 968138595 985406471 686875346 823488890 234187821 375899044 327629934 472352117 848403625 899767923 49305638 693419879 788425087 931963958 535302778 577160770 109010157 637813467 720612741 722561418 500612144 933683061 511406206 595082370 45313663 179274201 626387902 805198376 145703607 160017773 807984875 861175480 410139446 711979912 35552489 880891844 708165832 742109659 891350105 914448588 136168920 658881877 828365059 848977980 622271999 987673148 18666290 169226212 949410895 959589644 532295328 930038502 611815127 765222757 936851435 994393153 296714082 313594622 190219812 684705584 595919129 788430502 178633406 560421030 20854915 964002194 940964795 999721131 275975976 605780674 704620353 824731159 387458432 856123040 796005444 877435319 843658062 973185823 371488049 990636419 25305519 546894365 794459939 964540663 163664963 344898076 156262214 159611755 952848393 976686103 833605446 982462988 380238651 732770103 84751717 772943206 102411927 831833479 443070790 560829648 573811940 648003307 565106659 574532415 703372096 963287554 31051908 597095012 947962645 999725490 832131993 980217490 42843046 196575759 759435952 774977558 246352982 888754571 352230184 399507270 348221899 695493159 842199728 976452407 244929205 431451770 442773110 602858066 928601699 933636395 908924656 931154538 442232008 988847414 608625211 788597286 670081247 804281615 6766320 381124809 773084016 916137391 386588713 457009332 181788723 520505302 364986624 379458929 120711781 228322743 560074655 593893666 266988256 598677131 53029612 274428880 731833967 860439746 771563763 860044420 251120952 785156264 461191359 506708107 685113344 790738719 33753185 180929598 799094566 881557520 971359505 978235613 368539174 933044420 569389279 746071176 829660960 972114780 431506218 879369648 943328673 989437087 284975934 340527174 694283242 813525443 876916735 891374015 720806920 937500020 469308497 551001538 163146562 380155647 212856221 214826791 409538591 844612660 810036486 913787330 193331545 789172104 415086103 976367155 839128781 847334322 159994982 524355602 629115517 741438926 775432160 990514833 776943270 812479656 872883980 882867261 557111839 747571761 507952235 889480561 210714670 795930646 368412544 398973296 565480189 899781039 869784840 943381870 483970123 652526661 155873982 766680752 59271346 748460002 921162244 921527763 854644867 894050375 148907552 925814281 84787457 626769340 387191338 680890017 15159526 568289010 65588125 816665058 875099477 879943087 851301149 935471799 28004525 752487194 798761542 912098987 139809295 453207450 390419416 656695370 915548731 970365569 222154433 933168176 780103042 938501144 354824150 965281769 765501987 914284699 955512230 996235015 675960526 978030413 126521377 436296039 670670991 730023738 921025058 928340968 512967395 521506965 711567748 939609012 744681866 818947357 660145239 698395164 71445372 387091655 833089703 988263114 727980063 800548670 74513119 598369279 531353313 764495483 383393408 827122393 489782991 941588120 161747687 409946233 472047022 895157170 689769940 757573586 996856572 999903542 837937877 871308086 397335205 626477486 540229329 643308135 225015474 723170670 1720721 652471260 221133011 816700724 727129485 920266262 996534448 997924052 907607506 970817317 971962440 983850288 784119739 814076793 424195746 990782771 837154798 997213935 256295891 554189293 341952471 358951415 871042278 974538112 861353274 929248828 447433789 913080314 289100082 875744569 466529807 862669414 646223305 995395527 394779373 428512012 769915785 861468781 974322947 986258516 190084833 986056788 838096049 933245558 366762258 545654463 991083223 998008834 306148368 417008483 974258539 980783364 495033165 715205773 693576299 913652920 402502624 574498265 382536207 870571740 777822873 936440664 566405808 811837015 430228145 700308523 221308130 792593044 773794468 868631456 543470294 863911453 355825263 699568089 850248373 888431935 716358479 727291814 473462754 499875750 618851490 958934121 253708971 667693136 841084521 925552927 295328822 764873809 199195370 962758619 40723668 158190227 491031306 808169924 366155630 432812909 329561184 735672620 222822876 329382636 10827104 98049529 785177712 889183473 665854509 827284531 422004327 593174438 404967430 848039272 222078613 658254772 167742722 292620099 4016510 619777102 667984316 765126053 330865524 880555483 348710459 963965274 229042165 785035843 927414916 989997920 262572870 371757270 713341641 873762440 73047613 929576619 65918973 441552239 482756816 779175461 172197063 244566500 560373987 870220754 736540449 754384203 768157016 779432883 768386178 793499765 628725190 682213844 673977700 911445967 476993037 806230320 850808453 963274581 966728312 972423842 203653731 680847876 618167022 669692568 285347972 703913479 528876619 586745239 1946585 681865645 179394844 990753211 196381232 503481655 4278147 343083201 864525171 908882451 915433820 950416230 135372918 756119344 194503792 367864024 130886940 782434110 81253070 220609525 893160140 973477419 298232497 557362408 386229189 881329885 937022183 974163489 541980022 843556996 757703840 796927897 191163230 308818054 453117424 763299967 86675292 589599047 905255211 950243194 707305822 822467672 262108037 953304364 576967908 879215960 575473604 859152212 545820751 889468568 604864643 703120432 217729979 653211172 301979102 441058210 245552327 267392616 463436505 592356714 879714351 992575746 205927273 543737569 469761293 550694860 492533938 573940686 712057931 769886222 714475684 963215209 782624627 896570545 529673435 810298596 323778044 573383918 876867904 914465402 950459457 990689705 80409060 107008163 77424501 497643656 662992441 847187345 56008484 451966187 938028289 973390861 701632291 793095455 397640244 566854690 116359466 168691201 170039052 789260411 133557814 889154366 200523475 359673009 59258616 506518553 385085766 484090679 692488399 825330374 689723745 990577121 469063735 941872734 740540532 828921626 997814245 998009389 544481144 920123767 542929077 732020163 824658854 959553947 462839800 566756530 260624577 555196113 626663347 966213043 510841891 959596514 907598598 988993226 757988656 959392001 1794793 738026361 766989594 804504198 264806332 613954729 336799225 369973032 618215902 867502006 688134137 978428522 471629805 682353279 140837477 366420894 600788664 738827306 798928009 844503112 566889738 683452586 984305710 989719994 189910958 390218052 392363610 480521255 281564675 592262214 405887174 781349815 376214865 713195696 773559171 828110243 915060412 969560888 482752598 734754952 542890778 977098669 961840517 984929363 166428537 191127438 498153693 884423054 417060674 599997374 814856977 882301211 372636947 923437251 605742275 843973624 680537431 862821638 441864713 780971508 392234107 428039380 489385655 705256770 975548213 994981100 932924827 946737519 363829376 854030291 553072173 669716318 627847244 789283450 642469941 846006988 784033535 865561132 668480297 851913452 636059067 942815069 884532108 915716555 985028638 986194190 70118538 183041956 3665762 153979403 542037544 790158808 431051941 725707301 398830593 661045007 674515662 868308941 928334666 964341774 300595061 385705132 151244025 845970779 884715901 976055955 275294615 615415196 119831401 717011761 574132735 777716646 349911299 785519553 654131235 698615392 709961110 756224904 761954369 801627787 275958834 997851067 320335805 607375111 84104177 917883527 419795199 830158649 511452814 520577406 801008588 896170040 414374790 697580210 366305916 717739741 165258435 376206424 546117452 680248477 989518245 992681063 575232636 609191620 519234164 756362679 194942993 629315993 311358589 478195927 76709764 182411474 711785957 843351090 523001727 550839516 156314072 894082990 341889465 801495377 615922620 645012406 915348336 916696809 216522899 919387860 279690484 609736647 337975983 509896322 860301062 999648647 149161461 545858098 931983651 980982883 638944455 758414590 375811052 715918491 886176943 941564273 224307218 559908231 504630757 509139332 472182414 484699906 41950424 852306314 608498680 886069611 583671567 995641101 358274972 799525734 640143266 950395803 956047292 987265336 56845373 663079504 64300185 278031624 473089607 501496964 714630096 727873426 922271762 990902123 904631931 906162327 529754210 804626470 458538411 598414526 838949133 842706311 875548940 946978501 631491507 871958784 939665421 971604878 526735601 732688665 286467017 865963750 312720116 428967425 226116332 472018322 100402627 247282869 221623057 631400065 395421236 760165643 537131425 816702275 195873351 291228909 237876020 983268150 859215072 985390734 204368120 957958739 808380440 860379287 523543943 618147560 174628392 322724995 807943875 838890366 21063563 775115384 753402783 970510375 354859677 385792091 372861453 502106685 982653893 999756346 611928568 649465945 474163672 863761756 521984636 633468042 422812624 563376638 505151731 568030513 517449380 901253882 628021702 764989289 854884091 909735112 589921007 887588900 737145619 974409488 652775992 794163135 719910375 981435880 982901907 997428083 719816133 789149216 454068000 637037373 508389119 709819188 490815960 615501312 68284644 233099873 553296601 592501942 570126407 829962148 897455899 937653259 37743162 103747027 830309079 951606197 557091420 596009067 74159003 722153222 900166214 911299372 126414706 638014943 959570490 999147301 734851229 879821192 436643926 760806238 705942079 772003359 37715890 656858564 707413095 858581659 598463189 753631523 138684974 805376964 58319132 418665607 704031841 784485436 964468269 974104304 849549953 885019277 745770616 941138348 107123760 172001016 545698704 686578337 153263800 185995815 808572190 917255056 30722561 141640714 826308505 930091619 185138939 667176793 418982572 539069887 365721102 643738843 751216869 810255561 917621771 968535116 676875888 839723914 699103170 816455458 727729958 930773796 331653536 492576008 301084828 591113816 980209831 990327282 25959830 321763415 609622089 614839595 409952300 660821059 961456857 962966283 757801640 895334998 752257930 777824918 592765885 721862413 262848817 542763161 402896629 515771881 287617071 908004860 793646497 984198916 850738299 879113018 54869876 461316491 705857170 796815937 475329732 705056574 700755549 918434310 304227068 922787254 759291307 887910204 112698445 253654376 439092174 966519449 365336808 794280058 601092016 714246413 483875335 657979161 195209829 727211962 938449295 959070326 771317500 966945398 663760073 790950025 263617880 909670190 479806799 668824321 204257626 875997324 219490150 749624725 535484410 846473463 401881395 414427032 6212322 258565161 355715215 849358865 334705006 369485543 901649161 971118142 597655681 849987963 687175568 864993790 435435805 715045247 737481963 980459624 863992221 935390723 945217434 965984164 156465611 578286236 355503443 397987689 377809154 442502987 861511407 936624330 410317624 563169393 54966863 131897793 914118545 944089095 594030250 819402092 215062272 445463824 737475203 875525611 478580381 863254325 88950147 175724497 789378395 849486051 456001455 748243309 44866739 683181387 317003465 648232348 624740938 741158803 27729086 643589940 256943973 770560936 205722860 777650991 431522815 564613746 170463310 540088473 160573856 325822248 486001766 906105976 646613583 999843097 4455799 390062879 592709900 903361080 452098666 839085079 535499417 751840056 442907573 913258332 853909390 941154032 683978302 693874717 233665080 858990492 938958594 946086836 123446728 582568158 340485244 832662610 524653197 889437437 120149315 534383041 36142393 652958328 646119848 828986623 743371570 894752602 22373775 456162746 211295667 620271670 426978866 663758530 555707254 979928773 697146152 960002230 210137674 998708171 539238022 964495912 145994535 248996343 309037380 630209849 907853363 938500448 131126021 719867697 184831107 413369245 173115261 877387470 465892739 936750406 786003921 996595539 353833386 569575354 815955338 870364703 408736230 833711404 216685268 987592383 408538449 553915022 327571837 442642020 32472933 763713512 760064204 971404168 708712845 906030234 515405969 583451009 479600771 591964745 39172171 886572112 862378843 921325998 606715725 706946888 456232977 769886966 601241787 750572252 453605840 875395968 768041636 880721484 9487273 342319382 646401075 934975619 13659467 679499981 895002367 951972079 651090315 822621484 613889268 923290809 806579402 806597048 139137722 344458351 882909572 898405674 619401758 954602913 349801760 923032838 36280754 812378776 856740282 918843800 665664466 724714195 637717873 846444825 902106431 935041492 783725529 898561238 522189888 998759935 49217852 321739463 226606918 954096837 157201885 803187326 607837968 802329415 201390102 214869364 696929409 699135432 646074239 649681709 694910586 874686766 435385973 931558528 294523508 319921713 747540379 840044937 882483506 905761304 237643067 819276526 741211455 824816116 647285678 937628900 721521657 804176854 552296933 833682858 629877648 732654817 768829382 775907104 518708359 817179776 675235726 830537852 569767592 819055000 325607256 469033919 20354183 925167334 397705086 868532151 289900334 384879634 830124131 882185591 224565199 650262600 432007120 788794130 271532045 858535774 920689035 995503409 245950384 356709555 528759580 667337468 765871682 926879210 513944186 581105286 897975535 998408154 572577720 810360135 167890879 248241925 548935397 680086266 245670529 256993083 993299253 994100409 962843600 988305258 720046290 728042494 946751608 999143478 267596304 295399495 464226491 806810060 994309430 995521762 864334206 970858572 830326684 984389381 250746114 879721741 956258513 982198210 184818530 805595099 857325163 914137802 228351019 794708478 982849597 990568936 51248489 909349903 739301369 783476520 133736778 766476414 278869338 787806729 26184677 195179229 365117924 624007659 358680932 624942975 74406711 193874471 46776890 712468512 306656958 499974396 72733271 543803118 821224101 995088932 291291669 767490319 116491164 968833570 845664962 923784684 305425821 979022593 162868162 719212920 480843700 775840239 942997598 996949688 595547901 780803715 946269255 986060306 920692294 975799107 899708919 919092247 962731176 991135064 413385070 914412911 52189814 761910501 576666473 604417354 268689454 672078716 306156249 511875700 544924974 831182677 361185863 511164130 960664083 964823768 763813458 868186851 710856841 893253818 186759540 320054724 841769042 891069153 943312692 955727033 725182030 890800946 3696966 573525366 479967785 490763715 607760493 754209508 547026362 915912805 618793970 899810655 967537230 989201635 319092604 582902407 451252275 671825125 386050013 848035105 403295875 775198279 596060668 946104814 135768284 856362618 86297498 910373750 467498099 589476292 856706205 857717699 133998918 198006988 938144563 967967719 313358602 699122624 706107534 752956958 719448597 841007144 406505197 864719008 472995345 855693693 585900264 664470218 934260012 961819038 605739466 866978427 357216059 542972568 533193998 933879539 20757708 337446304 384319872 594913209 989503376 993965711 771524843 853962855 125812022 599527267 282184927 550081758 424434521 517387509 29697854 801437014 453132581 689018885 661769747 737889615 471107209 824613137 510733175 605790822 299654192 573687781 404202236 778655030 617801208 716334513 598116606 631281562 404277465 453831030 400157054 443665317 931395529 944279484 374275586 882771744 18921207 149541762 628641754 744733942 695158230 772969799 295528856 746880263 969831669 995124600 776048941 788214377 744950637 749581023 876924375 972424756 622180108 678867421 252752682 273701487 530075161 991704831 489993729 751311693 784068524 844229967 40596315 427158389 420665710 758676438 739418552 999583089 595317052 612853459 860153895 925722428 344445990 375882549 578210323 757846256 365564797 541193136 948394719 956332350 316784885 948440275 101696375 904934745 118181008 375889673 765458201 994396148 869089095 976052745 138654240 193308281 130880127 849439396 484763667 790790479 337059337 656943783 361030351 897959534 166678901 760782883 52996387 623199839 602714582 825640301 973053655 994436767 334603286 868738819 471462790 839409428 665743294 809186383 64324574 310252469 326893308 770923819 342605315 363070911 831909908 835554407 322699800 914608027 990076452 997207457 943762396 971595732 911495575 943119243 912728114 927026167 636429713 919791198 351554078 941896624 38365082 251742177 482790757 585446180 923428407 953419833 391457748 545283145 787024319 830847284 692119598 898744194 396793436 981221641 701954321 909041659 951928826 953193095 158500473 212765519 266140247 789355108 438978774 663960833 163889518 522045536 222569878 923271951 842242099 944716675 829102047 910853510 821432112 847693560 624590285 928575484 617842742 725931697 548350996 575993145 725010886 997560074 738017200 993650475 855929471 880859114 354895643 837922113 951010928 992573600 920123213 964504338 663460441 786232669 188705666 464645087 246258156 903680648 351231830 945284767 149683716 382582279 703599866 783727195 141215232 886483491 562811856 862290557 419538392 663756772 308507944 369183141 462314945 954522281 231799635 446087492 62226716 417703504 233234538 569027857 247365599 580169019 254678537 818513666 55808242 176746533 995870638 996862241 937492536 976665591 288788489 613564686 415443027 642054521 642494512 717433071 670923883 806824935 774515081 856097468 538976724 716508962 78427032 190238931 305304174 596516065 523670243 910373383 99322920 971444727 368693238 718859708 569745567 844426059 48391268 487389663 239894213 799002987 76286081 124899504 16122800 930862713 33320923 831917142 217958902 556257099 509435487 594026106 458534968 723269604 486643116 797032686 661341140 936968052 218287428 438867230 219878528 598653094 777376617 890654178 449808402 999517918 494523383 839497896 513665716 684354983 881351417 914936628 394440166 439056183 322460037 662195890 864771985 960565234 707844915 956284854 77595128 845605395 430414734 445212775 938182252 961344713 231433889 869530135 225637703 700809689 792817414 898607759 630755371 749035573 125495460 640037454 930163102 980053947 27172484 69633034 294832252 796156985 322243260 508302166 812245761 968270186 590162782 639741637 355357990 383419383 159044509 719015081 740718598 854531246 380632115 669974921 47282139 221093492 408848502 687434238 201445813 780919975 58843039 613976932 989232865 991852495 659350573 965300265 154468491 398996510 283764425 879536031 858030986 917845303 825707338 955279398 682215104 843284883 245856983 346638813 581259001 741444636 917426828 945408818 910010561 928334984 617008035 977448103 942295900 962782241 308755237 509731797 132980302 420159941 701755909 748302469 620866893 737918731 512217243 561365170 943393530 985235231 694692132 892073991 911421682 934009676 655504443 824423425 428670920 431953510 681367772 732753660 428278381 958066061 334951773 387359793 931531926 942090898 372401501 868780806 246250435 399258598 778443253 924087007 778880987 896442468 926390608 930279815 125733693 651962345 334957357 784093338 217658572 698282076 285731946 893526455 587417522 690487562 729206382 837264798 90842569 108672420 228495707 274825836 93766364 662499628 346792304 586491836 546463773 942784748 533986994 908798167 187950285 626492624 237896861 537195598 25103604 653062580 871511398 880619530 731174882 982208872 441114486 622015744 787677159 921340997 143130896 556595228 377360848 446026668 172373740 934379643 141934553 939804244 597762289 927855931 580881713 639503866 981895039 990430386 376053716 468562838 808616255 853528433 395344113 461415722 127801319 779893483 762824640 816643952 683696850 840992921 776659374 987091258 824123198 910921628 507420500 837259395 287370702 861219459 125876317 605938472 174744029 704117565 872633989 877195643 32043812 166787134 782494412 974624222 215744911 540485394 80225912 200745901 42867285 808100976 548092717 722741271 113322884 220862194 286276040 789622796 107627569 967706047 377686666 794639676 23110431 131294667 362786760 797344146 67990247 516575614 919693193 951402092 508182836 862350546 662375432 850125200 575080162 919371364 918888311 990976000 203457429 648896260 688625061 899205396 583674870 739345663 101770121 599463353 627293219 686260807 53288482 590619273 664036479 886243810 414625886 650405625 885167094 979798661 706816733 973698550 388241594 408780008 266569919 907103019 316648826 862398110 719334868 790583295 247044354 980653926 385248218 895240362 789875034 855056980 156362590 417171363 179381667 339026111 463657403 843416390 340123884 903672350 956527178 972218854 913523831 941584352 819276643 980449014 269304158 881160612 804124973 911544819 899940221 955085744 923040955 930589478 262072735 781493475 784524737 882378770 257994904 997091289 290687966 443716347 748828380 973989763 891922995 898579811 625960439 875741130 779267209 855948695 745717097 878856160 310599491 900871292 42861495 778757666 759759415 983517625 612120450 938743004 612908684 898498000 577462129 628057278 713970355 910094991 663185957 832599047 979338303 990851798 786139802 999869591 376075426 768910857 602012652 819932008 998381255 998941728 98533506 479237253 491791631 808916684 940258935 959871956 622249006 818478653 8835414 540382016 528523686 760700182 878677512 888521177 965702514 989878335 500428245 695142999 356643865 358846971 800071723 825757125 582469869 896250647 377052582 745997936 537401043 668692842 584422711 610737723 524285090 537327852 19605951 218661947 925957168 928326175 960160404 964277371 230027531 819177987 670685934 859110674 761512622 889339456 473956670 968900464 864017338 881340601 285359211 414834429 29505810 799025101 632099818 736377949 643842017 944774227 192688345 472229121 905009384 977854273 359238849 707442896 77569164 615331402 60710355 721815740 341779802 912294385 575135853 668072613 724349772 782861314 320934131 909422602 523448424 780875558 395761915 687320893 835081171 901019872 481087712 549661519 682698277 715988836 233022482 481774031 894507801 990514015 29022633 382997484 960203972 980817877 322251023 683996334 821465116 971323742 646269362 918444428 665307101 667133719 951235603 999935085 215401926 985678552 731973375 997510705 36637917 573935117 861129281 972600123 847720254 890305266 525353631 946087668 325198800 824824159 306658509 939737162 473924443 971042544 333480822 712397195 271943633 686787831 294350301 320918374 114666442 504054640 140618369 323042473 655065497 785939380 113021727 117156973 954256814 969398519 935990067 947085171 729337873 774991592 444161479 551540340 423587791 479537580 823930473 968739606 438852118 812939041 464201688 593294084 714304418 839284585 700911986 944751551 60721692 629161934 468331741 600861205 105140843 275535703 351931801 813915151 892847389 949870968 960753926 982195376 817048493 963488974 230867083 489364169 190473356 531896161 9063698 992125163 970789284 983585208 171399748 659698166 218410161 401251073 665434099 869425546 289399366 532248516 686052147 791090518 887322002 900903176 426973806 624448173 120318190 961834870 40347399 462812827 516075140 533737803 760591853 943639491 467582882 468769648 668457665 994177399 655837824 872803910 657326182 670202102 430073196 971584226 238385516 748031576 897459116 907897000 146884227 699433245 163182093 372340368 483055727 855788384 216805921 418656918 900866116 940244197 37364045 175545615 501688361 711765610 510218227 686409693 722058278 991468662 953951153 991219280 458750904 692260424 389873774 600676667 923691281 934285589 572037522 829035605 647766542 989696286 25928792 152960222 848454136 917219921 243494630 822915242 816296719 902717170 181020875 551878681 174839652 470627892 20538259 684563810 714342290 775360665 539356996 780004316 833467080 984574783 542569371 729366808 659270529 662926619 922313468 932943564 890087176 972016694 882678259 955979098 275210853 946980210 129149374 892020378 347363709 722868312 368476887 467967694 586900707 830674249 886769487 952903954 983880556 987001867 343557108 650757593 648037765 662064245 769320606 905001225 479815971 828764476 699909430 998640162 651014810 869930719 300473470 395589938 496201099 743145383 97339640 174159795 153559674 881037855 44702863 510422185 144855640 852947675 617761830 835708379 924205369 963469067 932096225 991809918 937043406 999420781 738649624 895730551 457927990 814012762 622508010 745861148 807672325 823991267 632426859 714391782 55355907 994311443 370194694 982442284 509459226 997137884 639445745 939673978 261736797 919776923 439982723 714543049 382845049 431239154 658483312 943024211 100691010 346128162 573677520 872637925 520008787 871323593 852202739 944591855 912557619 916897424 127576832 280595246 606923806 776589288 642538481 895625261 753151548 804855137 173456548 203079441 211712514 970763586 743219713 956863670 805041427 994644667 593169821 832372668 908794567 943977995 527078331 698631042 423563644 767800064 991311229 997510991 179197 923471795 236899412 602452088 632170205 776248971 713570572 941607912 965155809 981010095 513718523 923008780 949436465 955400749 110377626 124490392 551118680 890352454 494167345 859027040 546149415 952223216 28397606 635296796 361923326 570727617 582586951 868121802 497537895 660990416 186785903 654305762 535643525 954513351 379207128 675242422 702296748 834213266 885041914 924026401 345357684 396947412 450869163 986555630 855605972 966636298 850624378 972524183 247410024 250921511 447393483 532344256 907289418 962044199 237217318 662065858 66020818 950018914 300821638 482932410 888671266 914028990 389721505 982933157 762024683 868135918 668502510 668727751 230053928 880452402 804892587 926352080 947297169 953100272 260322508 546315093 884684506 963908209 961063537 971376693 83951153 297783890 239271457 492881932 369490940 945423496 520066477 522047443 604453944 858029882 369011560 598011430 267780535 752542993 157339885 318840758 153776496 256597540 311726746 672832310 778232667 924912494 227670940 821519084 24762392 968357970 998800823 999590938 851411343 916437251 859010088 952080088 66690031 957460622 711826716 800848897 464931756 688091133 120989283 195342000 568233644 740300756 379147620 745178463 430436586 788533959 630704341 695925306 495155163 973459634 902310865 939201114 72911465 733098385 715409358 878531898 514111331 537603380 347727863 721752842 473643158 569957703 13027816 654573952 948551567 982486195 805425725 967533426 539969389 921224745 236252681 599392357 37678905 414309512 744982151 914437895 385632687 960425486 40893813 384693593 620585771 678159284 174341855 943243665 741074977 902534200 147544218 981439814 901413063 995158970 949622298 977403876 275941562 304788455 15248800 884933683 21613051 642462072 696152478 827832523 434520129 835043047 934029021 979073405 14372887 430907143 493481080 684901146 544209476 677323992 993101366 998952804 554294723 673343080 495226745 837473663 912550040 930820207 529839458 785669051 960574346 982916406 403209087 699538075 308582429 748414325 432285427 915104958 829384638 849340834 395465236 563990908 792120785 836556669 538574584 565909195 581449758 919594157 546338464 958640180 697859260 940522617 800929410 971156001 567070022 867060058 725203672 833260434 442640163 610686380 638573542 713541561 659086552 924830810 783303792 915583832 23128353 600998228 460923030 688884445 383265741 450338394 619991799 850335383 756371386 864162227 52272387 745474064 870626493 918440126 925247163 933761141 762032671 911028513 192504402 658643545 718020879 867120125 814858700 939688337 491216231 803303678 704863524 705321044 309880109 623802529 423862810 928829982 618569044 933295186 593830960 803277864 645497015 872088504 364209888 689362516 431900130 591510104 116439518 558776358 619306848 850819367 397483766 443633605 827028292 932077709 569736990 751784020 973285119 985251904 970084902 995657908 48019154 745804230 362364918 644182809 610876955 674578322 388295669 949960811 161878439 608991163 362052722 808942824 795156730 911040216 732635376 907486778 470111411 849146008 677842308 875502256 833882855 850642843 389927711 434382568 759584045 910086327 851801784 935513893 231364778 650306001 843149626 980718186 554676950 990841372 810126300 844399267 248508888 743596168 999374892 999829479 71956216 185632156 695721659 870644343 958431777 958830616 581499082 761884139 384346798 607694636 879019554 993096456 871573715 981864194 155398627 225735389 333694455 471563311 860477490 993890587 464646241 865428713 852269394 997704061 706131239 861122438 748083986 891088689 911743588 952092610 660750410 700351272 942406742 967347743 577830987 880328065 514340376 934578285 914502847 980994188 481987900 705546222 617699426 902284322 453783247 507712170 720265196 721260348 603599818 891098228 847111915 984559917 405992858 749301137 566436105 718430191 386732496 905076880 822786570 975850567 218943230 252609826 375630286 754929412 398643920 640508634 734303787 929751884 562133733 949933107 956202578 984316133 618897253 730906964 928931429 970839973 475626994 719339576 535284515 635114731 756651128 940645077 758681451 928366239 851809319 869103704 764921588 932543813 203581394 636906306 797092902 864401029 649224599 922071616 367487699 878285011 561552982 842062094 24264486 244977351 871233333 912584116 845960536 955049403 677640428 731789411 391162390 582950530 145146440 847056948 930852546 990599472 67032485 544980369 270015540 413138592 951481861 962133328 923648537 994081701 932506622 970310227 206184960 931711064 431018494 837858490 93104062 235478642 354549337 449683181 390143499 783782552 445846786 812672228 703019279 899662864 241006583 951138969 228442214 517513948 300445552 446429552 833403697 856724814 505247791 532208228 781147289 896652628 819237382 979387748 77929538 365705600 856567027 965235182 889472301 893229536 660343377 731278462 408073661 573893637 861513739 993250165 995229623 999491980 106877642 130423227 367384077 763031045 797059757 798923406 682541999 951102217 313454240 335101546 145759100 951578321 689517233 966441683 660914486 690897685 133840987 576217357 756355389 938809666 943680675 958359183 39004822 995586571 851056385 896216701 978420969 986295785 46717966 406458291 965878491 993462394 118284961 903305233 970550808 976868392 169782361 512464208 13283534 312104959 785113291 862174234 5510583 82941018 547778427 799132488 422412134 529920002 608822826 767153472 236040055 820947963 570987735 641194242 912011073 941534163 550669348 944154478 90211392 436759827 973107236 998617944 107368941 388043243 942321739 961106461 182968541 786910009 27217358 117296125 397806159 980168816 914736196 925172235 938175255 946232673 715477912 717182518 266239986 930443992 676499770 888820525 706861747 950517886 208307051 634722478 399150798 754891144 816001268 874986673 536954247 956991302 886507784 954529298 947952738 991697245 504457434 652180653 719245221 745936216 404693036 994482221 352654849 881972612 275280700 695738410 487968655 718971502 606414161 948194742 977902200 990469319 279274216 505823970 426294452 683463838 467142031 961512996 461643193 578503833 623488048 960581918 707834864 964090333 928655659 962774303 626036219 772060307 861133600 911779347 116903559 339208977 400822080 652809166 426804642 819986184 904446397 986835912 937831814 956854557 87744995 837013666 244993460 301520790 108144945 909606934 810308366 912688220 743845493 965769533 325005145 998781738 55873262 665455279 447072221 884725947 578027282 647936505 479359209 917689873 3939868 956350520 727392916 759617670 259761197 437004973 1981003 692854201 25634763 676488527 127631945 194399487 303347846 848168104 714251337 886685789 534051338 551606020 199906868 321573864 221978932 543917118 362939741 516956847 339192270 821694231 933223225 936882846 509361743 906734250 627762665 980993474 593622480 656816156 166593637 299647823 462558253 551338774 365487543 524363661 930867737 964169621 959056374 979948020 699543741 991344004 51045286 569174790 882218086 993617218 957994088 959676092 100262267 685589540 521123546 628837317 955337149 988098245 771617465 799040172 368337322 563310340 70345699 83695633 343086525 912226640 622379602 919821896 238628541 337225417 592419673 863753812 737563162 948955654 212612370 834363866 836779648 977159060 134455924 279404730 912584700 922691614 510997479 929791711 343542022 599872895 549406905 993908862 543419779 860331553 788138699 872145922 204724559 949282422 868721143 876504238 686890274 988584852 238701389 791640093 949229866 998116403 277262036 396067508 247468635 755206401 26080608 277106484 701844341 852482332 911456972 970106831 544403835 758278755 83001510 477364590 546395173 767441155 712394351 731687327 125436817 690025229 307850645 921226591 947424337 973961658 405190177 835348564 46626859 801527720 968538933 978508101 769392042 896360190 551883311 921611754 702634779 761464679 201929982 478347757 176922436 197527700 613244171 704562063 937932888 952153953 171900908 178860088 794208137 823445890 166620596 542501620 127024864 637162406 274786375 625936592 828035563 946374265 487438291 687167334 141882481 982416241 817786853 861717470 816184344 969161778 381000703 746471841 646103849 670530693 579847432 679803180 322709513 942576371 855199976 934588179 821487225 829821012 774517498 924230361 112082976 335015558 270457004 542062601 996035740 996794046 708537748 724511243 814049377 858848846 49944468 208602494 864205116 921392960 666316237 891389029 792498019 953262353 360805672 709188697 519478368 743480145 16146852 287860970 582675752 851522038 246759516 951472590 520656493 908050122 853637096 961121306 71020559 772826572 303800308 848810522 176468150 361027121 546546022 720322698 381187293 939465377 861298316 937878588 520825004 906929196 102071891 623615616 870202507 902044334 504315211 879000052 687657789 933765794 160218974 530871729 855777876 954962556 605719626 894305696 849793007 981213291 704257441 913328075 329638110 711597680 594122632 842975251 50782212 508449695 146939042 290362124 844987287 938457782 109493430 753614536 168635013 399941939 864470678 924371012 681506286 706647833 299510181 924114947 951768295 999009838 408822425 509707530 825966050 895298318 944804907 964474015 126757670 495637790 244281319 981302699 10130668 83910220 950180186 978914897 129987500 821564673 595313672 815878441 155599647 224079107 208509333 437282002 661407414 713019355 55458106 551575178 889200299 967814439 580028642 723939086 185051949 526316990 460724502 526386229 426837367 644606929 712665196 906668125 366346975 549515509 955900105 969084949 205062940 846167269 860566726 917749925 461804221 942649250 815543727 916299130 651576059 790427178 829209528 928039466 759020015 825616485 503136293 503199563 835004686 960990983 819124549 973603468 638657353 821380987 352315512 864779061 60932827 211976014 650601585 724237438 577867303 743499334 687760209 701105549 770247701 998186412 318015198 837664457 616079853 629485758 108571298 372636196 19026223 892998084 293651957 688627649 707664574 999548505 603400362 986822080 448041573 544202607 175114108 304967342 74465185 721111165 892099805 903446544 814851488 856527811 961082413 995504875 251497763 546904551 199902466 534886914 912664773 939616045 382823336 434216920 337189737 883928004 423631639 847787250 409834068 482402810 422201765 481929182 64394014 142047104 801716369 911881063 598703327 618303114 748268549 941045468 899820315 929312135 639282510 678245363 211051777 929655535 515176373 734018974 833347641 913247073 180086750 924557828 326831868 479124364 173469653 922492104 101930092 394177188 314485728 649793076 28164185 600585815 713238313 931886909 893587432 894663060 554856714 836838809 215753845 714540385 250420057 360444173 308072676 458537705 234171318 744134295 481734171 631514673 822590920 936045935 969435163 980035475 289696087 919516573 199345734 867261252 478773828 543211516 879742692 903278377 376498519 405081973 585024721 904911198 590921773 771018847 493278855 723805194 123009627 661064196 782095272 981697142 76372842 215618016 931773767 949753755 427886984 471578433 11532043 270764835 766673689 794029978 317452394 634441509 805591131 958800798 194292003 628217659 743091402 971904545 409919929 971351007 858588140 888731185 905272597 942710704 496574148 620848071 739624133 944500147 829125406 985258597 236177686 922617671 898795662 989235136 536141902 599777715 521573101 851092340 204524634 433386530 566604655 902221335 32704723 32954911 752444005 756273253 11906815 410418562 221923272 616161821 135408220 382706889 433498321 809441783 271009289 484956749 874786541 882358609 97634341 630977959 674263246 739260467 241509471 442475461 87537224 419621206 453259169 585739031 860383168 981229482 731197773 987039826 386121517 754284612 424815616 650333787 589088883 865085418 236293952 279513954 545675128 906055861 908648559 967827693 161715987 888876981 582957271 657074019 561399469 808070580 376122270 499906679 651578506 706528309 359372180 597085733 362494767 530640753 593221783 921629229 402935913 963570985 401255771 651830113 744470959 863738499 72401639 182441365 105525154 768669744 709890232 752059469 820392294 990351295 502151478 986891873 90735292 375033042 281587415 792450116 780350065 784731913 190985681 701965061 953153220 960114137 335829091 549476352 449835651 783764715 819227922 824262720 785617827 873860406 458113887 681870384 984836022 985683323 756955597 819189632 115227950 282202384 542204007 989181283 731727419 913749610 766370457 976655579 904574609 984619861 59598498 173547568 667448698 921888678 345137417 793565358 887977072 966448936 679325976 931512647 821279594 988143358 661623062 856353176 370058256 845000463 808117225 841441367 87444547 142870196 707237778 823634080 973930015 995151472 441437636 720850713 915504184 974682902 966628891 982880160 882851931 991102174 825661739 927433672 72212226 383579552 790542481 893523867 713135586 719510863 40918824 256881917 477009816 871027118 847648596 882621381 672155107 955945735 24713721 797895372 693290705 924251667 488348257 779636579 315906874 662702885 974303772 987498806 270403210 462717271 752436115 799630349 170159537 173286161 54179484 236432272 422956877 930349419 87074118 574049488 345417538 986437694 982268268 998148337 176306468 838289056 230099268 395352957 523761195 964373044 226067071 300240379 369809127 703821579 876317342 881455901 129584908 729972013 329082220 874708439 291627939 758328720 127217711 902468135 519248506 803109178 9364080 801795156 92264971 301467609 467509801 643008206 492824001 673363431 387652644 451093235 666104354 897169986 114050247 290739983 173997515 774062286 233854030 752501096 539604308 966187242 359288693 917302246 605050311 978648967 307559861 917864604 178791014 453747733 293047433 707949221 882565074 886737207 180796764 465394942 593561464 760894306 977695766 997881316 416225130 643781843 78401582 841015103 691521859 742151556 82814301 975813063 741410275 850126281 780223254 912161883 855309585 955756898 884464560 911133689 608350611 696501617 398563195 562422172 147187725 364661026 566575887 777588646 493175670 535035137 598284517 941040473 924062709 924967400 432811220 584246136 337222307 571357515 799380830 938741653 86938377 458749576 148864196 786976068 208083301 941647708 445855014 791222982 886214496 942627031 859421952 926460284 364478143 815401904 283022488 656440781 713210620 887718495 958657243 984273911 119036072 671343686 116806970 913656309 522533657 664166529 825855109 903078306 42676410 933932671 166743765 889391928 678528427 905882503 806938160 917084711 182474353 946872252 838907888 991074221 974253585 980702643 670508851 839322108 590850849 755022518 843629744 968893641 30046425 274965207 198923007 543185897 491389653 517296885 257748094 829399936 925581753 988939368 496493367 659896421 101154332 536247478 596492543 660365905 191387737 463801740 656815169 923267805 900763829 928954096 663406259 919861991 942979182 943153358 539362550 580113907 394774495 487495129 375918165 715855509 763447454 941521518 213251192 735762048 970151930 974937584 322651652 913017684 688798282 766059660 129039929 820360172 694913292 880320183 159786452 525349737 398191299 405112284 267599221 346911219 832380841 864117579 21752851 60810664 117681554 175827123 243248280 862315816 695055059 970293508 772216591 827219540 750969348 986783786 710984100 753649753 710425057 850086385 571009869 987384482 927391569 943922560 527203814 967957711 937813955 953578175 931294765 976518218 290248836 908614231 743858967 977456035 996967968 997175129 861576825 894238307 7865758 696701973 885523441 901537856 688267636 837152955 615633620 993969375 253297569 465170723 676304347 852806534 164746160 729596429 60229257 848672797 340113333 393152786 670435449 994631136 471796040 576369648 195715641 412768437 683520860 900701156 324646707 641060481 259325679 693098976 254203583 765655909 822479648 968475039 603334642 677633452 538995102 604684019 554697775 915944771 390953153 435317184 233435757 290895082 883749344 996155960 769563116 958864304 80597572 572548520 41645035 564418912 56354909 887644545 647948348 843954307 400257047 510339192 647732193 869751934 788076604 948169939 643618735 984584254 882192625 960788295 813943851 831833576 497040457 612367464 828435517 835644938 53691137 834890530 728038585 757512178 400643799 545869923 922442670 947988541 883495375 981015648 493149994 612010742 860055078 997382824 722811564 848155236 633113911 889759101 422677037 714066136 506526994 910212957 551803660 945448215 25339413 848329446 359789190 659840184 550662098 766826641 383318482 631021391 947215226 948557870 825116066 852625565 651171572 655833107 581768852 611719965 344561024 576321163 302264054 738970353 334281201 778322955 929317740 954580661 263049133 879712483 182358552 886016802 65721884 435523193 894529108 980101069 775981698 806132844 372638254 400868975 605170215 861255861 971375676 982122717 978124262 998268427 818479824 846618022 210404513 725459876 267961298 720633898 364605695 592029417 480342404 679622953 12778083 642517833 823023576 927737199 292235771 892708697 251439005 634672081 979716517 981694662 800993725 841959014 391956568 428407984 274579443 702974500 883289436 941930329 157338680 782828690 897270587 953970903 62929981 450003339 612082096 754338961 992394913 999183507 101246657 130408234 918430215 941321823 189282361 596893820 519620137 698346869 638663806 802598386 685464766 786437171 588671166 668492331 885646926 953821260 149284134 197063204 346964861 547000998 651094543 752281471 645291321 777491943 564440971 795865129 247356851 610373794 650342765 863921014 551676943 565459501 315234480 705402253 212994379 460650464 633697779 702561811 76599680 887974338 420729426 584571269 899314787 963577611 711071186 950374888 929518411 965064778 117243602 762853068 335168260 963100137 638726373 917977615 736161123 948413467 322701255 614258928 815598060 964139700 941404538 986723532 638581183 798795815 994529002 996038131 855195688 956294263 981841829 982999995 42786665 727744870 246688820 873818328 174595726 523176151 372850765 848960569 486454089 690262329 65341728 425876163 713412245 986869583 273834027 980534563 610785856 796268220 461977471 582180780 840184772 857073766 356152075 477559572 752163355 794091496 909703183 976157627 465241526 757080259 951872172 964261452 330843963 531246405 988442551 997991208 854757427 983386217 446668918 499437903 649747482 799459864 728524908 891143329 380525343 647186476 945974151 952012142 181811161 776126501 344077251 637294492 185587919 561279146 514426984 717094942 970375980 990384643 60922227 416517571 990927542 997538343 269679082 414147222 799277037 806235732 506487665 765259039 592825978 982859643 970335689 989946359 519396500 916328698 961888301 989538370 596641611 848185016 134103014 738250533 810690694 830832382 696633252 862858406 23976072 632536368 988598239 992389622 169797006 595251423 46233701 87106961 151722746 264628818 747713573 774765560 133390651 812254296 413956131 574472824 102811926 641156862 425040231 839791679 59190385 408207755 476056599 493122697 342240306 433433058 730145080 774238391 753889367 944802686 208975832 330182690 396970134 632175701 312821006 551296214 967820702 973091643 859767977 895334385 35623462 992932800 69970012 271109320 670752409 913965281 209738111 608815716 324826940 412480600 133775558 518455521 923835299 946113485 649132255 783100156 720101228 941867929 734140591 920747874 761801857 890809216 879842662 891188641 979082244 995485869 962656628 973776650 741264409 759650159 297980778 719008042 330217200 952967068 615969554 977898456 783765799 972996312 99849926 752470483 226759825 253137797 632144813 785433015 492305432 616473344 830942011 846730479 582314418 608240521 563412781 619423150 656434926 813857615 197206477 294941461 756851255 851140541 973126417 996830225 871667780 970127607 449157738 970359245 514176923 677816564 208800597 704663223 475729273 898290857 711464401 916612645 75183477 195825305 918752377 972231901 389380928 416701491 930785136 949328466 63096723 451066644 397532066 623879071 78460529 304982905 119090871 612796217 29294094 714854821 812748342 886730754 247370978 854704169 578063416 644954762 622924745 697949344 426897494 619480393 74626535 432280511 117983528 159382329 105408755 789588271 49630350 568999628 906696951 937044944 907137299 948501363 32460932 752365443 409755230 895679412 369302592 500776309 751732396 756389075 840504698 990197711 915662063 994717301 954610259 982586964 481729791 699309626 577625422 850866785 212910649 311854854 484401847 888681451 141148671 704728528 455423994 699946518 19225773 856291909 389039367 716271938 100686422 627597291 680542284 879917965 162378864 984665006 892902702 923707239 249017744 351222528 413249056 532764689 623658278 707212037 103906331 657779033 944288557 977189088 68000621 321088815 385666275 953243891 548605971 743436154 898632798 929604364 713698425 904738484 920072098 962134524 23569730 364895409 902396985 986191601 406693773 728552087 81987084 767569676 961337913 981169385 866353806 898324321 228763875 572003763 930221051 940799348 353683033 655742236 579950616 958932917 67744803 480311680 572371663 718127317 624440647 892277070 599860940 773199693 568505402 860434021 809608423 828830335 412803516 920208938 841195016 997975894 949433100 949436516 337904624 929895292 117095299 650022508 635566702 737789066 249462917 645581513 139925266 357618839 841739092 899965709 827063930 892114427 259208057 797630171 883523928 938539468 900112616 967442887 847751663 856474623 836781240 930973983 746670134 892685976 330354204 831520683 521699442 828283156 774430090 942206368 789199125 966304734 760486649 941458642 709916094 921173614 86206920 119629008 392292883 989453609 720011103 930812778 165342263 420234674 840904568 972072552 479777922 612671349 177453456 491924773 930245893 992346870 238166225 300999812 210347331 445316790 253096187 611598097 320938323 373155575 927128802 974102399 775517112 906026329 577951065 818465371 120619741 439172592 788349776 885001403 681466988 912372596 628890344 869659790 121999013 882482824 295977640 630007190 847509526 923403404 774270094 841523344 865950997 911375159 819751243 956280145 783757296 880087693 972890976 998061730 124203470 655336461 990730640 993794567 400057107 695879919 15545531 217478602 921687041 965315556 583107714 914427654 238541818 369959291 562041674 994343389 553737286 797814183 140735327 576205632 852475232 908261344 816371144 924757404 905640486 908939649 227694410 871747872 220062982 482161005 358743686 692227740 290328280 359023939 68195704 525777641 697351497 917881818 982239205 991734852 286107362 436125542 281638932 969197607 908840073 968699926 824686608 824873941 627757802 934485748 845355129 908984262 288819621 848301389 63050521 914921097 71778860 591914539 182756654 837145980 372880485 477834806 277221978 381357544 834481459 918290219 638223858 889779277 871104849 985927928 998411756 999709941 604944528 752691501 748392096 955236889 867309350 934050422 247167929 349989363 309458398 588220180 25202251 893702728 826195437 903265124 346540462 971086306 800383262 840800710 690868895 926755493 867425726 907200622 588529809 700103262 261206313 670070321 73102924 183850647 719587485 724276684 755906558 895741221 845310281 961663404 322498397 406566024 560774989 868206377 779714858 783077878 870251785 998929196 769594363 826399845 749899653 798286173 811011010 834692966 594691073 977213891 768732656 820312053 894630369 981206272 492634257 946127990 265244535 704811338 264476638 989757669 552220700 989898830 395810017 572541718 636905897 948139423 255311367 296846256 437689176 799036312 652024429 716910740 498441581 762117599 465222023 664793414 283860387 880143007 500964752 790877208 875007195 985888319 136754589 831657758 649292585 865559426 957003006 971362503 353830706 496205954 980638098 985306688 595455435 636711784 263061463 704029135 394870426 487086153 113975175 471472334 590027592 874603504 577497724 749999700 45444549 301301909 822935425 930666673 797827181 812980261 181219032 488056111 782249476 997852952 212953300 861333996 889217599 901390540 374466820 403727364 592918894 635655141 931836157 962889514 223952159 304271455 824975849 922057484 115563717 373637155 239127768 247605858 98844187 926732707 574543767 708533744 864790578 962514856 738877238 923406196 975287889 998790708 928865774 972567510 982896334 989905270 190131399 791974459 307019071 467807883 856149531 876864656 25203710 268942264 328323101 648272304 878774043 907152898 358611034 913545170 154461029 694142070 909570370 935158973 33310311 282297405 858207856 928120938 604416920 983546513 806491605 876901527 918363974 947764301 471016043 987538052 748974095 852405538 129258907 458657778 632887398 985125037 710298260 956893000 564133477 754164383 410569910 488070001 749885095 852283136 536653239 860362405 202069506 977817683 645051600 694878195 26166669 354138445 884787498 900783564 669429769 679781102 47119158 928863659 732934956 941311443 382030615 619737998 940124880 988905588 916844034 926325358 695567514 982845349 535581751 579222987 62258519 884775192 786274186 894923451 294832113 564549202 885381484 959928324 262130251 722189355 15404788 572948035 751851918 786487398 89409723 111143569 120767133 149132149 104257202 475862480 811877719 973846403 578678092 746458821 277474873 538266637 855295823 931585068 471095678 929473500 741888047 771859070 643649803 651856948 610484721 931432836 874605035 918720868 878579057 997107468 164886209 733981409 242646922 652925930 531359717 895533666 889868647 933560750 370965327 392742796 90267417 911081960 501061764 920563249 825319573 953027853 874007201 952863111 449318487 896945689 697737584 986964836 926665644 988805309 571628430 796133286 265218621 342093183 12155653 440318218 718110140 920113854 659846537 697080628 381454191 643494459 939517810 994173996 920537357 972434383 185213344 647104990 792949528 829226661 155444601 715035073 163958310 208212554 536752364 692038846 680746188 774555088 527313121 541793952 219777687 363394879 677769085 978927135 624216775 828151374 530596224 733914938 593648510 875098001 440018094 912108873 522974992 598736009 531848084 784857013 153615982 722474274 921376815 941720999 715770333 857160121 724520315 943297038 450172470 840913244 21497164 302812007 627923553 705412452 517948973 553656571 280203844 497864974 923939290 940785600 770399258 941868997 790631998 899972861 674011770 903577163 578669040 666253976 525783419 872189454 943331455 996483887 874331520 917417104 380291987 886927027 702864870 866039497 558798301 595670219 179628132 314314639 527969122 558572338 601123985 676963414 186937494 635240274 79147314 573924734 419589854 958732868 233632584 790123903 39599808 922573464 568108668 659780562 346513198 888747734 891730083 978547310 412742109 931649317 366952631 810971774 399142432 922090771 364597735 377094266 683467621 834771343 995473838 998698628 469685447 858376517 700107845 728389782 89830386 691387777 915018972 965962186 447322345 736493309 259773420 401079030 692518490 892395427 292861151 321187761 676142776 767202780 195670617 862444055 987573058 992443547 460824746 594811633 553425449 614520882 835419299 851824616 293540898 756712203 402037304 722979653 757530128 884267589 803314237 855127666 936577365 943580591 274215501 455769525 927467234 947996608 357031445 688101113 337638342 442330808 872991609 939365083 252762407 884393039 26936301 645891334 986136494 995026949 718825008 843725102 227250050 997072973 181539202 499673093 60356157 980966694 175308392 902779308 519861738 964925310 572980225 954720465 87049006 318129057 609923103 658138362 422711902 512064322 466394761 620350698 9802934 894500650 170608722 664621178 18225520 399322012 669479155 718025502 394099808 422646352 650957662 756354491 220473496 866200879 258430116 333981663 126575351 453868807 626755754 945738692 167152845 816808660 905567353 910593079 947472622 968768018 678691384 758017133 942798255 999750156 999027317 999104036 37062063 275296617 910576314 940308388 359638635 476386855 792142707 881876199 397856233 983561054 772478333 999863696 629513595 848953254 960360259 976419536 33748694 228270532 762079202 978844971 672873340 808254339 673350088 760504221 563793387 710602524 257008294 840802974 54191302 691581771 148339986 456672509 708432461 982208436 546579065 737469894 459073437 725725002 559882272 928593565 107532415 695527192 440341810 615359618 613439183 662005724 257865411 752124427 811925544 883726690 568985753 861302991 334727244 950147509 747319008 782354980 654933037 908935025 900400337 997571786 571367058 991797975 935642689 965897616 75356320 946761582 543298869 810145623 126080813 430135305 603704311 788663003 228300093 534731922 475106115 871935735 146858660 243064638 798338759 856813196 114174067 286806974 818912114 887186686 525099780 921438396 90251599 544573604 423901881 989014473 845683983 878363724 751169239 851611979 507503898 607144652 45877894 97898920 671251582 894942659 590990719 727920334 306104616 989552889 634753407 979136052 843357939 885276560 14356913 455538658 135253318 324877167 708369448 732356552 501993356 820450274 385131179 989619328 911115580 954213621 956397277 970840060 676146361 744914499 573085402 833337753 834533280 867813489 279963254 480535478 550875647 718878085 22954908 532300168 890967741 999612349 598221068 972194869 860964136 920164827 821637746 910870878 90793334 313061539 25565505 159339461 117432106 506066027 102944291 453670154 966501983 969927125 142173344 862345183 311640965 462075843 859308514 955943906 957695894 963163516 90278200 974130425 298485260 461393907 373648709 665058607 258805253 264771216 126912254 597301905 78881817 212943360 430628297 441161609 818382301 824873363 586021252 912149985 873293177 998811441 604064739 965330657 479479514 787528382 711337856 783754964 840713469 875135081 243000647 854906899 652230392 789480395 214851055 278613846 799177146 903923866 354762639 605960723 307085299 952830669 102377771 803426229 396124564 795257954 97755143 205399163 832647837 923388559 229447254 913472256 629378957 730052359 174636040 641882098 427754106 964707744 836195693 855418718 424194846 676173365 206100363 571330418 174759875 225582113 77564426 505764420 727065535 983146917 761847136 905721076 521659975 794716562 863259278 871111424 441016204 692386374 680435270 802876622 637962703 834747497 469381635 813025230 177225335 863342278 984489851 984690983 289432539 584983896 352539899 810983329 734886428 755897791 127634378 360612525 681237895 688299403 568191754 870898004 637433270 845108974 229670950 259475547 589294642 589702484 842747921 932231179 516893578 938338574 993696638 995204352 840993390 910130747 231474351 443861223 322528414 731198067 501883454 923205166 831952118 902144909 901604799 960950805 568198934 721848807 357226514 892717306 10779665 72181365 180085115 703473992 420637059 764653612 117093188 209119060 664730885 863363106 302676095 484416344 873999933 875064094 126076211 484444183 186590237 529454328 145537550 567232041 129332444 937004590 566922310 596440714 876069055 992973009 726477514 821199797 217220779 250763985 790765388 971251241 359535414 525316275 522953093 740198504 178174548 526657446 590766809 955768786 686814512 816927930 4175202 884167073 549604112 999067744 717710246 922479205 50647814 239122577 388015104 967167980 186154309 502825907 312680354 839361100 306787578 389490878 81728264 474878430 735854719 932050660 228099584 301478174 188994950 292727142 803006264 871169687 390975265 854694471 665591484 947097076 574335110 853334936 726139864 998633425 422294115 492100636 689811210 835510163 822311437 842069259 698478695 755406796 660904112 880146013 353124084 624611258 265845635 576259228 966573696 991616057 766538512 971342270 638395415 835440594 116526546 780039637 261492799 324404683 496007704 911986406 785109479 960525762 413095225 437422696 999228934 999743066 446091536 982821642 668876881 993287452 313494899 422422324 266954857 794740232 963197259 987670101 714210726 731493004 464273872 620737415 128092544 852021548 9034751 98839660 979935361 997585397 473423898 920576177 27094382 31998231 830888078 940926029 440545499 829753699 912752011 937088319 246175047 549165379 214822199 232109541 573135847 980342167 90584023 493044147 566783640 582104018 994146929 995075925 210093755 962836550 176424487 558551002 173670457 724897598 580175030 808379482 69169453 925135651 559315853 716655555 151877739 178509820 466733384 563635269 323644178 590153731 873975510 957743813 227712363 918838450 5032988 529862658 488964859 591831364 577806980 781322541 349426190 808645692 121009838 525759834 186561377 453017513 893349904 946748971 59004157 384202746 771048092 786774481 500314999 619201376 941948719 998047472 543906907 904879914 670376378 939151509 334470226 862176881 211078925 855453180 250207764 761029023 870731904 985089085 166951959 271230002 515362798 892905478 554018899 648317160 485698050 674576104 284334305 540831650 91530366 920681780 514442963 659028476 919545679 965556746 125385152 545736114 942222993 943876797 730542895 927825203 155557140 685631249 872537909 904100089 559036652 625071957 710079834 746591036 173092968 271006341 164701549 813856715 260556764 588276444 461272915 965806090 780339999 796585201 262220270 675806044 487521619 626704835 993127505 996095592 291126797 520672474 310835560 990907499 228230957 498545104 653228679 769135962 982859897 997685343 342552342 797977273 457436958 824654810 751158364 877275370 338027352 965759685 524945899 879968406 789725142 833289137 766652078 875296000 974878938 986106639 604085275 833434458 567681963 954860060 800021115 992367756 341092980 743147018 963757570 990340309 147283428 452580227 952709194 999930412 247947251 429507762 31076861 720213044 637502815 922755892 163603957 824029083 715862271 745516252 114440405 287651886 281984424 596591484 375224809 682410023 482030435 811750462 976115436 980923017 524232132 753923137 662072207 916861638 40005996 185410256 906657750 976023066 608292483 840531713 910789204 987034878 492798958 970260387 321305149 868868617 303097866 489846090 724391366 983355530 236574404 553458839 518771924 837373294 62269928 431301393 369012071 985869873 762193268 875814266 365884302 890253061 943600853 961356183 623479481 781791784 228067948 852547443 438465905 710827138 671933655 900936276 541732047 840568915 283525352 328102198 862343084 883500611 296051954 899731680 501789317 510773688 690174548 803297211 780817549 968679665 3949334 624340090 114252331 190903398 4327099 98794496 862298936 900345878 797271714 928424090 471515350 714005799 938182087 945482473 588947560 946209355 339475472 441729341 161888325 728459771 576114261 761616807 909143356 917888912 241642226 308024783 649730698 887413742 804607760 874742273 190751444 470856835 445396134 487309495 475491483 718531995 469325366 836693074 850418710 854575325 164441738 214442246 344490529 365962752 629864489 730460709 511316353 738432384 719620620 843330726 108642920 855273623 984204357 998317560 348662956 901211183 518237918 885991080 795767518 979288778 895124600 949074634 641538177 719007235 67350765 298102014 487871199 763200216 79497508 120124580 99752569 484678448 956007454 980783413 781421867 989972922 249062040 820679133 349866019 660595623 284110227 817365731 389226127 894522461 299623317 607530458 311161831 368935841 825779308 869542180 964974156 993910381 265287629 814140263 140452339 857939985 822319025 856178494 173720038 698509717 890178937 915181334 848427718 874407584 166459456 424813359 867704273 974996874 650901790 865383315 960976106 993963351 99135015 824644377 293155628 862967962 473268445 684184803 246795377 939139788 725504571 814801435 346491764 966090342 801984470 837833495 928034551 997212372 489615419 654396309 6891750 842657524 981154791 996910284 343320063 409035068 78734645 630588497 226326476 653551727 195993561 274005306 236820866 240197655 368440908 989558990 432027564 450342408 944466269 948165754 703330672 923837750 309279972 365192698 28339320 903928609 330573886 605105956 522432110 721304256 827393232 943861246 659661377 931702108 749870630 991662188 756122391 956554245 742764121 946380641 848633553 849829296 490782501 619462340 781871655 873472500 668468536 909710584 817292684 899778965 373776514 977450617 675255206 713311355 936033441 972784639 656600456 697542182 580088616 653293511 328447577 795174559 658365329 834588957 594499877 981122501 125223590 362245252 373156373 818631954 909923261 959128774 750810111 999987360 496274888 897330706 662524991 704642623 81803679 301427129 214280659 812661277 574251072 864478827 951649248 992657610 983756554 991923888 931828691 950096913 908540834 996749155 89915000 356669479 374446636 903923295 349596402 384769526 262429072 687455321 954128588 999527578 8609772 391705020 90590392 862120419 817931267 989377587 563352678 958137484 808144442 874994458 729770859 827046603 549292988 804452283 110801163 133748623 710069403 780747537 264523388 373836668 520388568 705032427 185392019 805696455 555636787 646944977 651716925 988911539 90916102 155533793 132197374 813949468 971369870 973665722 408209566 463481919 542233946 781444744 288937884 747084739 38776606 191353154 751134411 764939873 715970204 801206189 216727137 303593815 727527920 947035742 284697454 786602901 991584396 997500983 316615276 491614786 342208451 473526896 72271286 451848254 192705837 246051907 233898515 862775784 320182915 864571013 42919606 315552207 175383863 716310763 171364760 485182941 249736223 792311402 354358548 607059067 785160633 948445007 340643184 836693798 815204938 848645827 264115396 926535057 277899917 924086707 424176536 706416764 829197932 969100065 871269057 942188304 902801164 957151210 256687437 541067350 333055877 471309013 949154116 970397053 893033729 971287840 715709196 868099045 874986599 898992426 405850492 857745566 845373490 864348671 891809601 910270790 784813722 817133136 220823719 662044259 547935095 995600358 688331657 990845028 978359014 999904601 682075992 918726067 92854761 176949732 562512196 794548025 152630660 834389244 342251141 400743493 729225360 973731286 364380081 534481580 772918411 983443050 445512316 570932389 263912784 702409976 269681326 355843513 15576919 94445370 929750228 931514588 583097844 844173737 938823109 957889431 601958582 930635631 571194441 865312235 774753821 993071651 729127185 736040322 642331386 658206669 115160199 548480967 427024389 996922737 389963738 587805261 355765759 669140779 895068257 996705628 65320051 210169167 393223457 465643201 327605299 435702178 440614639 936490165 492696554 750715074 302867302 489200659 387953121 552386592 985530294 993060708 34493627 168886522 249588300 362572386 829599803 859243450 840118230 895282067 208021472 592718170 183790217 199527964 835975698 941669001 849943623 984292310 912170834 926954740 763474780 922603654 991079426 996059511 897473902 911266273 869077847 881010203 360673161 502446664 394012660 836725538 305331972 371571679 780352450 841028303 450724461 957365539 519870872 964957953 29636426 158406325 837682279 837851780 13538699 214410199 622933798 888307990 958581479 995910150 74291471 990251954 720940352 949324776 749571073 799603559 268398397 444307676 364903667 762646071 896545651 988393124 603853242 994855231 693185663 710650616 772494352 779469826 200654016 725358007 698256206 930027816 648618587 925597898 228602565 313533943 239742492 741324014 660157215 789291443 332512194 662370837 370622256 379180085 368814047 501623260 850221207 988960072 224266333 953249723 431189759 610086717 341401643 733688257 188125195 324247030 286629866 548930155 218206237 629553955 923418739 933105512 598504414 703337174 743733811 912292120 316624120 816002105 119668889 250373249 473797510 919670299 713359326 852537327 224408939 462814491 960177437 962264258 35302600 152749440 956032498 990164352 40516068 392165876 639938615 961960958 939460342 963399026 54408552 601871500 350272636 906371846 41835138 899244065 379028029 640709512 412010559 733286635 324185851 581699830 441868997 938459800 115248573 135792243 984587871 984625028 628522522 974531483 693433970 935731564 698358433 811166146 746049644 969132981 300679582 759936671 58453312 441685941 462779357 757746360 176729854 181646804 66748645 315507377 245120718 575237212 701126518 829352864 731839794 855746075 163683640 611354404 252836546 450286897 771162347 795552416 945774576 967436610 448653563 478619084 602480428 909236931 176757350 811263651 526883293 720510840 228529825 974953761 339999818 490378772 315432393 712629536 17157917 317318201 422281316 487204530 592330460 650096965 30897888 809503440 36953205 920545780 86827523 296410303 32634113 926997047 496923564 754265189 847806362 931108548 402551480 735585247 882154853 895129440 777327020 913442609 793841412 843535174 272190417 549511634 221217932 294479420 421653648 832386103 804560787 812936101 699670020 706675197 805445818 838810940 790738014 903516218 819144934 963080177 573525327 766460716 775314511 917341072 501374778 860827773 579488137 721042714 8570685 734223972 244271340 278704546 861758827 999900758 233911484 770955875 569025362 708469230 609787105 668646161 642396269 676584546 140315372 465454234 496362681 712360412 216318006 752652781 366725403 833957315 313546485 624430964 166945817 827073790 240469233 474140550 111489170 998123363 947080844 995858252 126409923 196631905 103579518 223925400 721249207 815485205 995862268 996999363 924742587 967666511 584306335 650442105 284529340 661859796 191199919 445339403 858900090 867790310 458291324 894457210 936839481 942498596 728580450 910748242 466086041 552538767 414177458 711072574 611941175 829191026 180210669 805937516 841905948 905565587 451821052 760539382 768186819 968010166 871574241 972100327 273732465 991652927 395133822 840247250 57260674 335962673 751702435 910468408 892785861 994070397 386236319 406646699 127753924 590821933 765391930 823503308 14581908 556456403 497494499 903035914 574768411 614247464 173355208 181648209 392140897 900582859 455332343 521084007 447546551 488447002 842680444 900177284 778003403 922349420 993371661 999150998 804322727 854464069 207180394 680122773 658679586 981086832 939377072 984084862 3087130 519973172 504224092 706003116 286448773 437286333 655225098 687882604 603780824 900304975 444279585 790637471 336284615 921163380 895234054 955129791 464532377 730299231 188492316 459308945 879429446 892735215 51496431 141912228 519721913 994964890 629061055 894891672 840902320 841789614 201981095 878759873 534520212 609181337 958370378 961203987 412349425 686284323 466017395 799797396 306803652 877389310 599565216 749002396 844407434 917204626 773249075 833265273 26440808 726010530 620177179 776313875 340719283 691018515 859182890 882486699 1971388 986970847 449161697 691109201 540915568 657151633 133532119 170445187 138966771 535720392 294687723 463502429 267217169 985582992 728064950 897861838 938631548 971544777 570769724 905792570 838989748 902463618 543324194 963229789 879045918 879848227 816852751 878574351 487054738 520958968 434670125 493397010 82973561 944053730 885201659 972616897 139914432 159419960 16037889 969368250 904991954 954181633 571040948 967889712 434161348 998503723 57864220 970015544 79335221 566414672 616436588 977916532 912762176 977960338 840147507 884136058 632327450 758483647 910760075 930870817 744115068 861006840 988378529 992314086 546131423 927817464 475249071 661728819 167724279 555281626 400546843 913022670 471040791 497961092 935092861 951162837 807904579 990123128 741256529 991414277 431187087 774942403 151084522 655633563 24816734 839442803 184292325 866071305 669209251 818800114 752935212 777655530 21553210 496589753 196119106 708698948 571422694 988024019 477973151 872411486 43761863 203843408 887309000 941092794 326929510 529506432 504242094 702547073 518572347 555230257 539669060 966579120 790298793 843710233 668379137 912097428 275352524 482745999 293580141 591275971 988612098 991222788 783953992 809933462 456214538 922953709 263567768 537724232 980424284 992455086 239600928 890486095 961938859 984274380 553976632 875555815 671863837 939977758 604621317 846622455 278474456 675371483 778901598 947833855 229498976 280875253 303870487 940369536 488510437 598987413 489028902 807232137 132549222 343803220 379738756 995765083 828920784 861099557 643472225 970157256 619711727 830255537 24312198 298817037 867556261 869671348 939324864 982275550 739033672 904518332 271374670 543767582 351209176 959404620 731079479 738013496 750613355 871903248 41701653 739507682 149135284 457473328 483293323 702888205 820919736 841003815 16062695 693959028 80656659 948177189 795791658 890613179 344008402 368536930 146370845 282032014 231001085 395430361 416930825 509424960 765995840 856250323 812178457 978893664 876887263 882604930 72641128 601143125 823611194 838687949 871402320 967075852 98707592 355746490 79145871 694512924 384864313 791044179 322679578 427186328 874518945 891716241 944141563 957135489 756935403 968374471 152749273 382889919 107096531 110336577 480964176 716241418 520729987 822526374 72501959 949652004 786491519 874172757 825145176 878037967 915007255 975178324 757501593 809704282 913906661 985073277 275311855 629945913 601696721 871468153 705759422 717975957 46274212 531749627 519474462 577568259 620092913 793095583 312226825 944819938 940200040 981865132 587629774 750663428 506505718 536035918 257028354 746809005 924372254 959887530 704135287 979854539 622460220 681212334 909123272 970645141 543531779 621302323 247257825 970230791 159151378 191621487 273987451 785583025 375981551 697061516 642660204 726601071 570826565 771211373 834200980 837807350 112191952 728445318 607181693 662313018 451995371 753965384 855249796 864339174 797612059 876823200 250725487 925921491 74175551 237060752 349287807 398601671 165546672 524467628 989114461 999120888 815275101 983092220 459404746 993894186 494724143 618560345 40534150 226001755 783476889 823174227 267943205 425855398 346728738 886870288 268207304 395428080 788608589 801673937 582901035 841452091 313120563 896190933 250450956 653190994 574286586 955915753 232412503 440796190 315262742 415589809 956126560 965498007 912560632 979467447 226676589 766546818 502121618 592878019 119455245 425832147 118364794 812619410 852445442 890574792 822256247 984440415 370766516 913321014 325124219 388280379 341967489 359477259 300888915 444720900 900692485 965937132 425053624 530732519 371843065 587969292 788850680 895367868 30795933 419809061 841418288 925940008 113357134 335689511 732171125 908435041 480484461 638912404 517475443 544909506 977836900 988666928 600305299 908297756 777998372 986738390 165771670 837957229 87776301 590784719 589509812 665397312 161157234 751138602 724342268 987475510 64161043 797628889 481992610 663710811 529010831 948484316 972230329 980505102 681893803 966435363 517259342 777560436 827743881 835429649 955167174 982453284 749406740 915454078 319270720 838442167 603476387 773499507 362425502 768456281 869190803 906599011 224125531 287930107 462124611 801786576 102011187 950233804 909790470 941624308 367395126 768665449 390773657 580672331 746164061 782756844 624580706 773254645 606852795 664508507 487351014 909626610 481307718 554442209 660001264 929251463 624891766 852708625 323024219 532428918 26214294 552669888 286712965 854903525 145602778 581307620 635841569 655145651 596052095 848642810 660337808 852198212 940317056 955885532 101504540 165874503 181167685 705900702 586873399 822130975 301287048 703306619 821796359 977687411 250194308 941033194 133617433 602172190 378893203 449665226 356423115 689640548 377862334 847907898 248501512 677142395 891012362 990245660 268295983 275336455 107545560 211550880 848197412 886959668 780825776 802374370 757331825 963672724 314526531 610303274 54881240 952241575 463501304 791539131 984141274 985982059 533500988 535218630 472695316 722114912 418989961 610580205 972934753 980911555 646797454 719457552 3675724 249091756 680178916 770415410 297335618 860744873 156422506 950407290 129645142 753562114 124779626 593322663 744043990 795304808 857270915 973615715 694307203 721528931 650035539 712338424 560560703 967320380 131066286 789579083 244663217 426950647 713714214 752950832 619521853 642719559 176905120 998658134 790761121 913879045 212169737 787405158 491239327 636961081 90037414 195205370 698173439 911801466 741180205 870051902 358181613 764842516 5447303 555417998 639498068 680686377 581439053 986749324 942581072 988177581 715582297 748100493 181707880 508019240 434801004 893754102 374672476 379025695 373969916 395072738 195191878 503156962 107700107 271680346 901144678 907557459 440770067 529881107 697873455 698864969 676014479 881948579 540420059 614571797 102398232 111241361 369211907 716034634 380370026 925331628 438848839 751141971 233519703 610275512 553623828 850856612 974647297 987223760 165348048 390877934 726783859 996494062 5238811 136655627 557417742 718698791 523149621 978141144 101059910 758566947 294121977 488394899 988719890 989102128 327102727 639409863 600908006 956139380 528611490 604298141 31525649 462300036 346066578 395607510 18828973 396946297 517236036 951657670 800848421 962342066 91796774 979297757 577609788 805798092 287134354 495575594 350375893 459627188 786165789 954734632 786463950 930142307 425439626 809226172 751731426 803748300 456209171 838791338 804654748 844615941 364865996 533323139 722836599 803599067 274073767 348728456 762865659 977826577 165069329 799735370 236803998 333987518 821092045 824527802 578849105 579879364 974837382 998427116 449509862 452907910 29308527 587653839 520048717 776753216 907381041 956722541 86929342 832015556 465611395 508798200 784034335 832709789 348836694 668981230 833487794 834027455 984084168 994755962 220556904 581136756 712820872 966374045 629538117 846131074 515339220 935701263 211768680 414370464 328210020 794937109 443824840 804799368 921995663 981740795 454186704 746155416 721697081 731204621 835466464 986015296 157498295 863148220 353468126 929513538 727772013 908723274 634447662 935725106 436833069 483227843 890753105 965727120 293005891 959896976 943010502 988720584 63662154 915511968 30261754 624336694 604209175 699823351 251951279 554046588 386111751 741874287 531922544 612171200 411534695 749706040 814313372 860258220 594803616 957470663 182862688 839172018 869752436 976529260 412708406 782090342 212406554 585590368 769752381 903967575 469946285 486725543 144478833 966926679 307353520 921399563 183266441 499028299 898031266 990637100 662952466 941000255 538255247 997358678 560878872 969381461 620575788 705257125 473256503 922431142 684506906 921566442 363507944 527786103 972225780 991019986 271756506 791067384 702154332 747290006 47515256 788488459 873351503 953682098 614316982 985323327 245437816 459007496 980222553 991214929 365180104 996598316 488066161 578263632 323009722 561644904 489493825 804384337 65741487 469177611 467806263 513844517 998040835 999176674 219294116 755029234 204480521 933830160 289394180 638449223 450140577 477505717 299670824 964685876 269491188 415328982 527404232 610122515 648257179 802537728 83089482 534218995 939607836 985948421 749187019 903404673 932489736 944415722 649318594 938545350 26147275 169265242 898275808 954851217 727431389 750010024 405569781 944765295 170050999 503389626 907694471 931064727 321875270 884783989 529816568 981373750 369533945 946884949 178793417 475494820 214514935 839407752 829228648 950002659 946099929 962870862 219053949 488934102 981018415 981496297 671237321 924684685 606519595 886195796 610375892 842262405 674448291 797385330 655719096 803149467 420525579 644480390 775192952 890677878 597280643 730985042 549204749 861384421 232255570 412547697 226548837 650247296 973292726 989684957 739772882 998808924 73227318 943593836 527892437 701653956 763196563 791861536 116823661 595368792 552563878 988138389 800546428 892183697 351988088 442239978 915451694 994893833 839589036 932111553 484746173 642851889 248806068 603944537 906331216 919559188 298791079 445463454 20486300 561961732 379044696 386099723 948278624 952435083 253197845 334111442 527846395 764530842 21194508 37169752 364901237 868894832 160043126 298475632 308810277 967507814 487350510 811590571 736723684 778632534 820516777 935122699 771279580 968563392 670013925 848136470 626778163 854063232 415478892 497006118 973534535 979351082 311587637 355779207 717976015 852906719 470341370 943757991 218917892 245327423 878232950 899254342 350880636 973313981 854248288 922932488 569677206 786633426 208566498 949894346 166789444 445402927 663895495 748974711 733292984 884705207 435084184 580845372 247553938 513168766 379025688 577658191 827756919 938901288 332955170 964403068 13836476 652537381 90042343 998348944 792953179 973481843 876298510 880055739 158039423 386189447 934832839 944299208 560556755 788697852 757634662 913261980 239286008 700462317 817270876 866586015 152836606 904893300 236695547 863751880 46508439 108918194 497932100 989353706 322489651 813385163 470816675 871456184 828433640 974023832 351171181 758273159 216638888 951730265 148697127 686043926 603636107 926959801 679373523 680405249 265337084 535218399 819273282 833620290 129589930 430422583 682857750 987657024 684776001 998940866 602762601 753980519 475678172 910083772 286165810 929758368 667568218 838248487 560772699 923683133 938170107 951399860 642569390 739453250 300555930 734316799 354576556 878461277 6684199 183307823 30491965 599235617 396390882 512310637 799221690 945440280 713395367 909692232 571353590 916489582 850785196 983260244 472735723 643897493 869947138 948275272 105112294 748689835 334320341 610282246 967109376 997512599 371840047 814454770 112178499 819459992 602158631 937390539 233124780 664071846 253911868 389139856 890559178 911491376 330861977 432554730 383548982 693551993 78145990 270728156 646080044 877705960 322939101 340808298 539357955 552576949 805454696 987633841 375953082 640739932 579088281 580600635 485553687 906143360 236179521 962138087 776660639 858945525 659982113 928882369 313020630 403020032 623917559 915342642 522716615 865321839 757292485 950900008 353288614 408796256 166698599 777449356 598970006 903009195 588616021 869582147 334032777 397046952 943195596 955954850 589038506 908911333 940051370 961785335 161205205 713930402 908378856 950688949 225365318 978044139 967556682 979975018 634656297 927129826 325974638 937629312 96565190 780800021 546826137 681191576 235428309 619972003 803441988 901955100 957715639 990284229 503889866 777995821 417813452 720838789 831648362 985291386 298875241 584580235 566797591 902762422 754911290 781820284 56241167 539767624 944044962 959818286 727142813 856948726 250911507 412498496 109271476 591566877 232018230 343686353 891258897 902518447 520637244 711640117 22410325 390274032 653066748 939040993 649324324 983746551 465015336 518423061 967325405 978207586 332425144 965155571 384143807 772307478 797345009 943479334 149617909 544136061 515639379 757717332 815475056 875074963 771924314 877933744 480778442 959744230 668399575 924115902 597217371 975762309 157968975 215216287 407516733 662539771 926390119 971577123 794393588 974646836 477085749 737905100 914846533 941758419 534353367 943469163 500892793 825531172 664855520 953694666 730917638 984713536 767424000 918525853 28594666 309817746 593886800 894929475 104762875 902857067 485332393 933250338 276263453 860072352 494136924 725476625 833407256 888124562 252741772 511986667 410837920 635544239 895301143 972059207 49266904 866667893 584722431 949919369 770782813 916693149 827887617 923802925 671963561 998813040 207021777 789676077 640035993 865331018 246887316 383887799 55630491 615600369 310513562 779012658 331082501 973977800 705147707 893066619 315111867 673324421 686998496 689496940 43972923 906908595 998766528 999830629 448759120 495856858 801424021 865724700 336373895 438774409 123154834 654485957 478538331 929111125 317162439 735690744 294435398 705170946 683607466 869328289 474899353 753233079 501475449 839267605 763235641 951610424 601579775 640272665 457412836 739278189 678339571 710874368 760464263 992894609 171573713 533438268 5935837 574801742 90171508 989352605 115067491 778818682 765267128 766111907 933015726 995623630 520720392 679259907 444638052 805383240 62963009 603824800 504044761 751827998 569454977 645031185 602518947 705766074 146019746 579245707 345526981 354597680 616936003 942637475 343419465 489467470 169994791 408222344 456422894 776608975 276180094 737591292 454641475 565782970 62440843 144438683 808510331 818604833 388937605 446919422 154973790 779871891 521430881 939259118 299922419 390406009 421993898 638427231 391590424 585942670 849101917 868046347 110033161 237649822 884567929 999016131 582610072 901702290 514840283 745360133 661928015 780840064 634586652 679838592 125704359 251686816 831713769 868743069 986256059 994144888 22572040 253424842 222071967 541384864 597114973 982478293 68123903 407482545 175749704 779518706 151103450 869518141 341427537 765819014 849584101 898426931 951997038 979959790 549215591 859201267 702852253 933216920 356656951 623121917 427461499 525529667 339015954 472184973 940514673 990176879 515678031 605588513 953563601 958538587 775176223 940214920 318043444 393909776 741196684 783020774 944078242 956570505 707017327 928462615 172575085 263028849 831649743 961148196 429266457 995388984 712095673 942114065 795414211 860051219 323924631 958068132 48296883 623031171 783848242 839543583 310752604 805431219 398473502 692549936 122832364 683353988 15466816 342735935 138218170 194834085 353148669 751438885 182548231 328779188 716673946 984152106 596783410 907889012 799591010 942529603 464984112 671539635 497292927 741531786 339895332 868921743 237430017 937070692 989634725 997156122 115279221 157176014 575498926 822477001 218902850 247562382 321931534 467677121 936984405 992323029 818889898 944602378 849913842 887145053 935344802 973430747 639253361 930215239 977489001 983641586 959155038 969091986 845605223 961304531 252896675 436298905 239072733 450776859 818429742 843216328 226687286 705884520 862442238 887192973 178713126 891820297 458254586 977574298 194199756 223648933 189886707 976108594 984827360 994593868 567963223 713565962 572350343 641661416 889260867 910937780 780816505 998150483 696310479 920011243 644750873 849925516 480132785 785289480 345469045 693396591 850503851 857897691 241631783 285910682 340366813 930852766 49233431 648290558 236568277 495723786 364784690 618640345 902249590 946931190 482689431 720087048 162560050 420936529 491595335 569267626 876395870 888044920 896460357 985165042 517663311 537925575 476196626 950773713 452212841 546431187 476245497 593128467 329650021 540058103 510764467 692079291 982264330 987726140 357635558 525317223 452771571 634016692 984623413 996989737 848562990 983203998 366142919 746055347 692623178 928266253 766478707 884255796 3262044 230566306 578989175 951464130 295351434 435076490 805902219 978323442 885471025 989524273 828097062 836891173 767344890 904932998 157318592 648231709 470697014 500864261 238947011 672119526 277106693 701902213 312143922 429741510 867694329 934227699 948800060 987415381 970189939 984263897 851851344 877754601 95378577 523317072 331910570 877342483 86615210 269637040 307053411 781174660 390816565 946087762 645182320 645501838 98281443 663424493 586690175 871667499 755404072 983108147 157162473 229004047 989431230 998237848 292464583 771688199 168168952 873710343 4095077 85149648 636514846 750308581 173669324 342125540 641808406 952289524 697694010 964189985 485192568 660646443 679424647 929464612 429295261 904239173 79998177 249411214 373973984 714847258 643069039 809067188 39711018 117578055 332680386 911667014 114826534 604799717 982717976 983243955 315826585 647910140 932485455 994982195 398016525 739509924 461497954 707920947 185644308 214770452 277224756 969047487 289406410 463311446 577072798 702261997 394556846 824596860 326644253 341868526 547795023 983292427 57892132 69880223 79889161 289653185 719469582 853920725 318888122 881345959 463022024 820036015 814287405 820314800 778077071 885891663 271781171 618412211 576097820 736252025 24648907 988941070 818529005 885378840 238106163 400503619 314355192 917133793 954431214 986047290 731720416 773037513 906085036 973972433 28831409 407226377 717864610 725089393 608589904 788903322 319241307 608524515 423818934 524754871 551018112 933421135 137875575 675444641 101522158 222691782 241306948 971230344 400077923 411166112 273574186 969685531 35161867 779628322 728130835 779953820 480005404 591692532 80244229 580205682 104379908 226144378 387961808 915121215 181651754 229095503 963632250 988903913 874559015 989915870 758153871 987674088 764024288 891401536 239612201 310006454 980536917 996679658 644179242 857357114 553755628 645253941 687418112 839015733 323117090 699126918 607679336 936096607 353264545 597645369 76132217 934365370 88475564 492296932 316774796 555527116 911183188 968225146 663647125 883088473 378951978 511836579 36967105 595402417 491438915 968806372 738479838 762678510 814097034 883640675 557704248 759104913 254289170 758485408 384630654 456892834 707779272 716504990 605248271 966107200 706924015 840880224 313625387 795282914 744217906 845498431 987311028 997399424 621204292 751152583 301391503 481518302 506623481 852506217 405442308 738401879 22549209 824761969 848605682 897049552 860192576 902921596 659258339 696974700 140262392 626587887 97336160 607590304 717019690 762729097 886739631 919581946 663438997 740030914 55588855 453647643 640119051 858901397 901896935 975769012 916795077 984437388 7311069 945024115 458438284 683969745 293789430 733373611 106367149 952434750 60864748 936569665 162108549 877659582 481143903 819445475 680814369 917296473 259922879 387577669 935920734 989303287 204226668 544397580 958769976 998948553 53100503 495494897 449844620 818189969 43517250 972808714 343875360 995497063 265725963 525441300 625849110 761128666 915435481 983619015 139998696 672499246 103972950 602786186 728182444 965017042 761148986 943501189 330871146 682066954 755762563 994022340 687520252 770137933 600220410 880738138 444048754 587075333 10632220 897116832 228590921 511376080 238589845 677172887 740965513 804217244 908586930 973789888 145220000 720106702 615502853 823568120 508365833 574558237 807592940 857550265 880766466 990447689 323462704 563531666 655107938 963596514 418817709 475538645 710353962 979691791 979049493 993676668 52808192 65209362 774794310 829845783 270098169 535297906 535510548 962256042 130576222 598392163 723997150 783650687 784264088 881417418 652327061 727806601 129492653 185132294 472796741 907199904 385859230 568740759 638960123 898707568 577362022 581512261 952968566 994884682 510330493 599474895 778208878 980259083 338639660 514610243 424132397 852622786 668652509 971065021 618444618 622898386 309372322 814911854 454856669 740253556 164708084 917846766 548905018 900903101 606277867 755001708 439218134 940214787 581932770 730380134 801531310 928493100 786212936 855418242 611720248 673479166 123161048 627520835 561740282 864414846 411422606 669099473 485277248 930413436 845266732 845580852 241134833 843875093 752055834 893537862 735058018 763915925 401981204 705664394 489749423 680416218 526777729 921868862 180691049 247922987 415980318 698578004 86729584 921160599 536372001 965482532 881337614 911165879 797172466 981556572 892480173 914178853 1668273 830653283 964517142 992603087 346749606 387737680 126614996 722496216 266165441 487263238 932670524 983511459 605370417 895919976 155643819 641359888 521196205 823791680 77364510 957792288 215737004 322660940 357252532 817217368 33319508 119140408 374071925 496389753 920517893 988659779 339872902 385108647 341291991 446135212 717852831 947167335 617917998 709701143 882612181 955046524 527815738 593906437 423911529 956884352 406984337 519406974 229220834 792547773 31822596 561426985 814614549 981084227 909072104 951958256 644993452 834124660 228191534 837814094 540884529 836788604 896915357 999267542 428153301 939405255 105631931 166078022 274516908 544741473 696358712 852917834 323853920 871181042 321814172 769537411 804712397 853660165 907957199 956479066 235477437 363379135 125538883 823154227 715302407 905123733 803203324 867565635 676276122 708627361 503954045 782594589 734873408 874303825 752473067 836752676 972924469 977832101 473031449 979801669 932294609 969274970 892015326 942475689 595168461 641109680 302542846 975571602 441759505 521972272 995462306 999962462 882723044 961168886 1807923 341160146 942384702 959391337 259266891 354708421 897734281 970193589 935394969 943419335 944519396 956981064 684139024 844563494 213557744 964377347 371194174 574049792 823995778 971951586 844100068 926829403 376499002 781657476 20702862 379628057 988113533 988208544 353213466 447017570 217075891 733008363 658936389 874905764 395359075 555476433 389890366 701454643 638089496 815240484 790041367 901767932 382781809 989956018 845951864 982850713 40593943 218709429 744325223 956664761 10921643 325492637 887384856 956313662 186063484 731186919 429443249 892611412 75433050 598554401 448622861 894863217 606496168 928937269 256464749 645354149 628123226 666678528 277487610 579392879 426837133 822028608 817929693 874860908 594099688 690635183 750068474 856497061 965818227 985048773 358423707 983855596 387173501 446377513 151844730 766914843 934746726 942894965 775440340 958663756 8510937 243289491 878836430 973124825 644719040 826136488 997507786 998866873 916796783 953453817 516434835 969419244 387184250 695781230 676952793 715039016 937033472 990255960 168713882 600281649 367470174 384042289 438816206 979547794 422744931 942293807 886829100 907977490 864243882 933860121 439531760 905343805 717472708 963277906 813520220 847276337 40627579 883143911 433119240 472553810 132092040 852265094 860147579 998684955 921540561 996480531 602876798 882293382 275312012 403088926 976758736 990504260 479410856 878996344 252177644 899323865 962007956 997882550 274623301 644379027 186376641 547275253 399854946 441275242 761563695 806747398 889824947 927547563 561813086 860424506 82682315 867559769 893837299 975403989 675360169 768934676 347520530 574852751 854140897 929590548 665789762 682933256 531679775 639408512 282242507 413782400 734325708 901739264 706779419 846000171 693699744 726855111 126884602 480934221 419135265 525858316 718776973 929215139 921132785 927884826 951882666 964227211 290479765 911431448 518972966 667230042 360245902 468214428 823042957 956273663 131564137 224031311 892307412 916582291 649828447 852201636 760519966 867090947 638529551 831612389 718739017 908559270 786765613 961474646 17453387 960460237 37103574 160609796 439055692 493627386 870306368 950710091 467725417 833592415 388946568 988194742 350946549 951703999 404439131 743771638 416389503 459665429 938406434 998741207 191719303 686115851 140492269 352748247 548442349 613907274 334263501 579582190 890914679 925081049 359954826 540636033 832448224 990417029 623549540 690811490 589093580 803526367 453519577 813638392 560092366 620874692 802120335 813485416 908382118 984748677 328277778 888565579 85721329 743009743 279154322 427726756 330759570 840091327 241555181 760540281 826012901 898332528 104413566 900033954 787686983 852645681 477209484 596187565 765226246 840008729 990506171 990873116 551132826 860012043 829664526 913912217 937416408 940054670 781208194 942103405 549255581 950285961 976473669 997346832 104335527 367444569 106830835 749689509 796280364 877455714 201552294 234913543 475732149 958687308 119718775 518041277 583171773 923153456 907808621 927691247 425622752 779265784 858133779 869609138 906593531 933331600 360160919 606877179 833662286 938100980 107014416 766244438 214406830 907037488 366036741 958617742 288702641 963405286 814554265 916911244 245071014 639569832 59796533 178025411 172695 961193528 48142808 979935165 633394900 638053392 75506778 447721122 136948941 809694349 403034205 484034304 860194686 908639715 665111634 871615111 537739778 890318464 600885024 837514430 46156154 978456885 502845489 637744309 512378023 921895579 741772053 937448419 920142568 944743085 745709953 818625716 781201590 784515347 561017465 907806999 333174639 754976806 777471348 944411985 696674354 900477490 149984539 817942000 455493988 797972032 955017139 959889921 385133177 632374917 102309878 558754229 360353860 504522771 101121644 842744047 305188380 943039430 259943876 407099975 391887316 983269326 109732115 938868195 497204902 617572215 346898016 580599762 377253865 564429690 418227269 627188437 62052290 505253936 629625358 848094615 93792606 388204565 341986189 755281458 403614525 564067950 671087815 873206916 661413053 747108661 979997921 983381490 721590272 956098862 390294096 863689062 358338538 894913706 970775083 998428248 538974938 752390755 922787278 968335190 599320200 928425582 515797731 981876252 643550544 894247220 397237774 999914110 886962024 924442247 792121488 939074259 134624973 546223431 264506862 290592332 289848870 373828784 857678382 885336302 607379048 918070498 380499922 598413829 419108590 660940170 575229238 706986526 596677566 960923094 872437840 990267769 934898194 993839918 454410769 543320809 908522262 930536150 460800568 472239022 345298315 740233041 115615912 616277471 400285625 414509741 210619436 869604696 58307192 522550846 693445253 933724936 128219150 950445680 851285545 992778132 423152562 437207159 930435504 959046682 689247452 912935462 947470488 995111866 212542661 313932073 205275885 337576285 76583653 641341264 874108773 978555855 790298163 879312464 462996712 995165928 189484916 342592160 375094120 754686513 382355248 840725578 650016587 861287882 776311558 919065934 627285155 744627177 973627359 985034895 556631937 643580748 233080634 331271699 370378509 593005948 89456803 724954840 841924557 911408205 554250774 971325525 392841749 672085882 25902047 805389902 338737686 588849831 325788355 876705667 966712652 983666606 385651372 928829467 617896118 992826348 486884839 909891893 28444329 276155044 88680189 718352795 205666551 538448142 628638154 914971561 637596388 890073487 317344135 849185387 273836397 523764525 563871935 659124386 188655793 754485364 757224598 805385707 127657809 294092197 74621381 985185000 439671290 869638772 197810191 767707261 907541071 976252814 238081809 274794922 88931651 850549973 674937420 825067687 955902500 968719415 782978564 945391610 543861664 878913573 444620607 732299124 885574722 934580194 624485438 828875526 220290168 952575804 360904360 561683366 582834245 933487960 816922969 971586935 821322999 936655363 270239674 805995162 678470572 867792196 793132544 990927831 49437505 672864105 417345631 561574908 721343845 859169339 459579434 821530682 257973682 406480320 236762447 954732543 846449364 979241548 880921047 916960491 821444030 964213838 203321367 433876843 850140670 863091518 401508102 534144576 420393067 474634617 860759950 890412325 669031510 801523742 432277384 919882572 139172990 595617688 338009101 610734754 210482016 402774475 79504857 507521348 345893007 413623061 40133819 378277013 775676946 933869767 951667262 994036957 948531745 954700147 159445943 630950719 766812051 888401181 673309059 859653405 5896211 895402248 358376199 469218151 547586540 981016252 90113102 603307225 301246106 664840593 500064116 809834737 959676765 995712672 932962814 954313275 307689133 485189228 480501093 596138212 472520710 812169073 214356761 752490382 248976000 860731253 243315103 391734954 85789282 898870266 37784395 94050202 10699065 945857934 402388978 784575586 915677191 983397605 717843585 992013105 291575916 583696816 500631176 526070297 245778169 745110331 137268420 770883792 323699636 902978267 136310047 250718458 895974036 914292686 606343903 864723411 341003834 439876454 751611526 856332302 253552742 837551364 747695290 914052895 800185524 962132968 662602599 745945530 340292608 559395447 388700763 795286666 745129219 983448303 133734379 945810345 663305297 992362958 344374887 790711207 564150521 848794046 433703241 452702494 295266779 751105988 781792881 831656977 61775757 531469338 656897064 695990246 957361900 959477595 218835821 221577971 967591842 998082540 790101265 819603935 338733370 748095678 539014387 741207204 206240834 419856267 688153040 992612988 510222218 673014388 304695177 527770918 496029108 659985456 369220001 595838488 6531349 439429776 764649934 768996881 755774008 852313144 560176998 964420383 508742056 943368835 532197497 590882073 130023570 485666490 726713234 827869226 281478481 714130480 512307499 569239810 675105701 944640641 590562394 616143044 355376316 441004250 83208782 820452583 350044298 746169860 566020784 787728874 220720309 380023436 769520218 913555089 406532971 828394160 668389333 998761556 955795462 992855811 676544343 817027648 783549164 935008512 391433119 842948698 255888157 338582021 236025862 519779492 258562590 428149207 643453406 868311883 268585322 740398905 839667710 861039230 630839732 719691040 829280733 955780999 635410687 679739473 26921948 596179156 613647014 684668475 290336781 634853046 362514569 730113082 516657130 649371658 847129433 992791509 223324814 709568885 96023424 644116136 462658721 814195641 511640577 534118445 809627835 958920326 490082960 549837216 580135521 947821755 444844608 842302162 593791910 742811708 662926745 855215246 436112469 983210583 271510043 526961803 363505131 708800027 157726603 957826541 426626596 898602259 53016654 841470819 461323791 849609043 300783159 583596083 509079973 510931579 607636083 872084588 313282659 516436709 841866269 976624025 185639074 291960449 109907794 348424653 690424807 749598478 597300785 997927617 680614009 782028650 898987256 993571527 496326587 704494922 553309688 719452074 531464521 545049763 299021772 450955516 772531752 778313308 65153966 557072380 964769885 999485609 768949469 836175597 246696627 470228438 126698401 337072281 125524870 715920121 628440970 736311181 582388445 954488682 387262869 455243998 948700574 979353768 559939356 638737201 456489209 590326559 960245675 980111511 39146756 918876719 949312792 973047746 782342878 909777066 654194606 767236562 713259895 970063131 226978351 424603308 439794548 938319157 697276037 900420741 69085416 957836817 371575325 519012039 512492221 600064282 548386799 874093889 658971947 818692241 940070846 963748018 630680480 934579634 206064589 591899892 959031426 970937303 554952701 600696551 942417539 981197864 471132973 660354312 208476565 865909216 548900843 700441984 837912024 928609004 867251716 948683851 972397772 991699004 233549565 455893745 798483364 892440975 291204433 382739996 949222324 980804129 775939392 870100219 819525027 914414978 297999545 490310151 606270431 635984020 663294679 672691717 492703453 942646627 123677414 907504280 949604956 951761916 620263495 764263029 265609597 659291581 274777839 665803442 831065466 972563299 138559557 576512148 953899456 967165526 340464475 733057628 595745755 843308516 895736847 936374097 896416726 994853181 774685691 885292592 852445998 901599520 745071038 878525300 724506172 751387651 501720417 551738535 891681642 921031612 786862180 884997657 339450971 564307203 55339122 389040326 329905191 417294280 483981928 981839046 503134554 603732748 327184926 831641997 838566400 934625472 541621750 672665613 645410916 851447996 582577941 824387028 216424936 302613301 926932246 948959670 153802336 269371475 814659301 880492547 432569511 912772764 263853972 660082332 418048683 461411222 704419303 839195905 756309864 787877842 269840283 294745139 779492616 933370977 440930769 547759014 526293563 661453836 393287324 674323673 230520 47565306 746651772 957814412 853546838 965782185 831340085 892276734 995744933 999499252 520698582 889198612 195461005 576741177 157301662 754774249 304324972 761599553 408172547 523393814 193523511 825232806 284832642 303461747 208020277 639900491 244751789 379410324 585438689 927831748 505411358 682343224 274437883 890370531 68339694 927100825 292367934 357640044 229605433 448385756 658484337 664577827 16552243 801293697 356165894 648087747 681439936 988562114 476026719 902276680 314518353 978989809 61606571 358935333 711841476 797844464 95737655 567971766 537179455 714738348 718525536 994744079 883193254 923203637 955228264 999344923 38231401 831901178 875650787 938206803 413493381 536711666 319638313 918291608 449383889 991983173 276254794 665921755 540209844 612092220 128027681 258216943 293987203 749472243 866286112 940537038 4239589 251220353 158980848 622524938 928902313 989625426 761873714 943955947 843763808 917211015 928269418 956414616 559834006 978578949 6768522 288443767 834055555 975182850 487378669 662948074 463607393 716757206 945687613 989868204 664351072 773912562 344897170 604143550 422205 614911032 928860003 967069415 762183835 993094856 610308631 799628276 909736976 916321753 118470771 977344290 582542888 766508551 920912379 952204704 53950286 169849613 335438830 892189500 517781889 804846285 618316463 975915032 753352747 881175126 664242815 974441364 286558829 350059523 741526169 838545783 425321487 902958703 558957660 592784468 555614068 944758969 306549797 418221390 6832045 563141334 446854056 811320679 899240827 921574142 454899589 608618725 462409580 503847973 773192063 843580082 159767077 644692902 19351864 856339339 223226532 957692738 827313793 850371827 443542628 735470688 827703766 999078154 28673350 209917567 324349588 442809746 414752412 862419709 191370122 363551281 364579238 829023999 204821847 527196815 911080607 934708366 431182535 807847939 959151804 971672137 981383163 999403673 813258285 894523133 769367254 919827404 84371549 651863568 202770605 944206163 778274173 942750085 58352192 854364339 585622740 706289465 917027345 942450372 27376786 406239196 51474094 459230522 207345302 560265836 708220216 736703671 998731995 999715914 113378579 716680517 854486232 966644281 93537064 128178179 158596536 485359069 136196404 757213310 468036712 515741113 257189261 644651368 676080114 679394738 559438386 860774945 320082039 387495644 377461090 700405237 833060623 953891252 77554335 504309821 235938322 841300761 820387956 936840242 115076177 299601706 479031832 525109802 132552787 738484790 763926674 889766563 616202300 624019494 999137978 999632275 796813367 836782919 73215372 980876221 129479836 639517218 967050763 990258992 360141494 573812303 762176830 881553820 741151163 851756890 672690614 831775066 765553869 868213000 685130593 759676390 476144373 911788963 456942591 782090056 143802808 243020148 445997820 957741990 954682458 994247305 548248708 830351307 595708299 755189652 360295575 520870411 109853378 352158344 235001430 285315806 238927114 726723434 342568495 364602623 801742999 866609289 116251229 758441059 93680619 301234717 811527406 828399078 544747582 790203252 600046827 962589942 387507541 613168677 919851619 931735982 531740782 735809724 86997427 602960469 652094938 748205129 29547526 983214272 539068060 632087396 296474151 304879903 695298858 720079333 555526517 960880315 150320076 809921316 971303134 976030721 923859018 924338806 833461546 966159639 311398842 667984370 482920427 534128832 384088798 803358382 621724439 678968850 295760622 526857623 174094887 247538632 76476045 811117589 401572988 588391015 461494640 694455074 930132910 950864924 401290146 824777415 583333061 597245115 294776275 409038586 4794556 899696697 475869596 784244251 913602567 973700783 306252533 389649450 890110939 894449935 788284539 977256421 837926192 867342289 363128788 886272940 747739150 808845776 871070695 907790175 92318220 120608330 798292583 855788274 741009234 968478586 591055998 653584221 715322264 732653416 274535760 772842864 759472213 867304013 139937441 706670085 798679976 809332174 122537234 329735945 545405648 739263415 748620611 918568788 758111616 855941323 728251485 965125041 540070846 850892514 844508723 874712473 82329396 210681727 491785623 933189301 685175148 870716212 3674881 837634756 109859618 600878672 450929517 461878052 903892234 936106082 803094288 834696642 525812626 576172180 808737900 836198055 513322999 690463011 969762577 983481605 232726783 446690206 329044042 437290465 263013519 887364074 640560478 755540477 608947266 960166964 319559874 999242403 291805918 757935834 655365920 873567595 887136627 893916844 770226136 914915303 196952273 522176804 951518461 978011930 495383175 911251588 118082395 924183348 781981117 936416082 560577758 622210836 460481857 843365898 888757873 991962654 939274178 969266902 338499118 619015044 58956487 745714419 126906967 821421837 363166997 864470590 871653033 919163705 993990287 999532079 909971818 989003883 715563543 882988257 192934499 715911274 625145518 781321512 584668024 589536378 692559296 989433751 454303029 607649219 777653449 995893529 913984357 958606743 110389853 465374095 731380205 966905631 123884338 150220883 223140213 547546844 141302643 821754217 772698050 870406400 102549879 333851765 588753873 701358248 322334549 418110508 79017965 859614641 206768631 533172548 117436976 502234889 770488869 998388437 518798198 992195538 750534209 900463548 459605146 476808596 890621156 937580064 902346527 988274625 723342168 987763018 108099548 776419826 806384069 844825399 729052033 787365583 635625505 713323556 924048319 978884113 780198704 927723262 500632226 740689850 850468408 868538581 502409477 952398666 759592857 815722296 600216907 914092422 217969890 252451282 77115356 159666528 535347218 954359719 158342168 826749775 197511596 956360496 780792626 874793769 56839015 120970541 198611454 930983426 501647483 944916912 443779004 664381121 997021422 997651797 47891348 826012291 348858786 576372084 760920229 913875691 488953100 994823275 679793161 685057541 520041930 800612523 316236827 428916094 241911427 976789603 624879598 963883939 924011301 961063992 787017479 811846659 749951897 919300376 594883678 965606264 243258215 992288138 694174383 847585194 494125633 723716367 743006222 786082281 523299611 815883798 190897371 909821609 166170081 372248045 669458687 706330220 582377859 978058262 942564829 952659344 531966568 870411479 208536947 461739563 278976584 817046128 97919098 736437297 226737786 934619515 83862750 962815934 267941166 913690788 666374813 963865083 697002603 898295122 308643039 986922318 335294851 799229417 51361441 308798475 855210051 935238540 788025297 834299752 944874339 957193582 888402740 937325715 119431656 216464686 547175788 586731884 151428960 840993191 2840985 751320556 199431069 323524407 185841398 563577943 2345972 530923903 621504531 682038944 345758307 510203221 99109588 627356557 639075838 867355385 388543959 990276012 740528773 815834370 823415541 941356993 235442099 962805015 812580996 905752797 682718550 779007467 903918742 930331472 190466053 337650303 770143871 973663163 416523427 970231224 919460518 998984332 281617622 557083384 160893386 974624824 498218598 516576050 975310077 988834363 63814425 371488726 541881438 874342307 820789095 903456836 36280866 705058866 525839943 631726985 725658025 736888866 899933588 939934749 110648215 511258603 595952393 611695261 181267058 583148197 229851094 346938247 921059913 940609456 724392391 866484061 649641313 896179986 947625680 997716601 6948692 456146845 729428623 768165821 327682317 507537680 354119559 646399682 505425146 510894305 661722769 956432175 399498042 805277443 519607612 838664786 719346459 978506003 262222820 801084878 837084926 987451813 385693864 798082364 444279887 547724714 202424717 436422054 713787430 774999630 540227716 580664076 325080866 990922961 513281773 938524724 64604461 206556935 443277087 472458592 958671845 985826016 380544972 436336442 458802316 518366362 997160941 999504282 688258300 742170510 491063781 829500850 431963650 554378087 999321062 999327782 851121471 980024110 919239793 924652209 730156158 742456729 813582650 955606861 396709876 882049612 881593041 982008779 179157965 486900920 673671058 924851334 941343128 976233951 228558731 890322051 802618787 916980021 487754876 875265955 517971378 778395394 113592185 651308786 792232657 793126012 247623931 304974920 39607040 990024411 613181312 717340675 176806886 178942467 492359112 784326953 200498587 847915400 387377557 697874330 640783441 705884819 433734773 834717417 471891763 545220524 723058370 841042358 184153542 531353346 961416833 972431435 577297794 687099124 404384066 535236386 175751892 288043581 190741253 663044230 89695681 711536556 860969878 901369149 154986088 888683955 408354042 603512565 654321759 992933315 454866825 941365577 814382436 863435243 902800644 945252769 523517847 703600720 999390162 999954038 425587002 623867620 501906872 733790839 111741794 367308672 155761690 288923496 676597773 912142123 334899142 441362695 402183345 419125282 468249664 833182026 805560408 956934564 663483843 995862686 18337070 588552057 58573296 831056429 948373910 960706632 382572417 733825208 131988965 143561277 49898908 824002621 464760799 887747390 572128924 974594529 952849852 986002516 670615842 709575861 193699022 971785853 862738186 886700428 590858420 700563612 690786264 780477574 861196586 904123914 37992598 496770759 896226907 974459802 879283485 978559230 494300767 742159329 284704532 410643403 903640649 915167472 684988997 688923284 487811667 781485791 188685566 924787315 559830139 568420244 897683717 900823833 918442935 958105710 783077835 971039297 984230269 986612872 175466562 698516672 98621634 196409404 843723174 924529969 300478305 434902201 56346733 445467446 29443658 221759734 137144421 727665211 38465547 343700034 681099262 739191093 434514681 515281056 20396206 46770652 554763572 664828794 886446438 921493927 167094612 261498628 326457080 610534408 764533600 884412015 337114794 426104960 8595088 64401085 676666252 747763871 961135052 998745262 328461744 628552159 918967776 963391433 842719885 855609658 331405964 404972047 224258777 295108197 339867641 718729715 282261601 389429950 393254007 925300169 583461855 600411658 476771957 791638173 541198834 825555322 858319360 887600334 798815308 992215693 326714698 734190624 874061502 914886976 504376175 690390309 802219821 834295672 28772455 292034083 668116003 700541231 446698228 711422768 241466141 561963096 118324850 653187984 34348055 572818186 536810127 649535285 458410429 931620028 624481049 952217693 386627156 391152330 38891629 207576099 847197310 958491984 661934949 754753476 667724061 901338494 90369726 966085820 196088514 665442897 245246353 676416492 706829145 733185971 239875518 516752576 675536187 872229188 833430967 934637410 508348904 939861394 9482263 616670809 468085134 903413644 555975686 864259824 825931395 978895100 64166252 222137565 731895642 875196830 816354428 878451614 363921624 616748638 203703576 920691183 32862630 470571275 826072670 973720770 132936136 909997020 904497206 995619015 891493412 972576750 517186430 626913982 270003774 599025574 922581719 988222883 901099656 960177347 703359973 727469686 497067080 757304756 28652864 551525618 276915695 832766969 121998866 902941138 884021547 890490568 622404166 650461671 845953017 887363284 4654745 501520078 591833629 798475991 475630384 987879739 328181252 925772542 213324056 222585278 142092905 478858544 410445378 474013802 574843630 855697382 924971134 971821911 112738258 470761550 299601769 540243815 706372041 780650249 736230493 857774323 390488396 777574934 26590179 398830119 754645889 967119252 98418434 457546439 113462463 897745826 671987314 718117250 769461664 954238337 598977930 732704319 810565290 825202691 198263165 411812353 255701877 407227265 134942414 904071337 454810454 568625958 711935875 827368770 265677788 321332268 509997563 556693375 383710561 812312076 422244494 754430485 348506270 644822559 831718013 967382508 451377946 924134084 52760381 108121462 728254151 967582538 37921872 447962918 135283590 248407575 913840349 953673902 261809406 638895418 593127213 844908602 117467562 221311372 563024628 742273890 91358588 371530473 342090721 776793125 188500418 208348841 512130922 830411897 728010990 789299767 843555499 993837600 841002071 913813272 111158730 365099803 75687356 307595402 948831103 970211891 727869170 772247633 958969132 968866707 208019118 611406853 288611907 614684006 351507674 778593926 275727199 309317891 779394669 979726196 36753043 760294477 459969960 808932447 867613144 975585522 479558995 924895840 65016578 343461033 14845949 554083902 183308206 405875709 272328347 619802612 781799832 947915743 761520592 800335298 804709860 826181416 432833773 731457153 184659787 867591327 863334099 906925180 745051005 918007363 15182618 468619172 141044232 611946253 937778239 940271840 162736569 164696076 208732667 514065419 863551719 998116088 666671538 851571849 357160240 747685477 845256672 986520800 406014360 757816700 995984178 997055403 918907759 949997173 545118773 666812962 163893631 398924404 995103460 996323733 632046757 943492811 590499775 945425556 895596446 902069736 652537150 839177053 781913610 875730895 382975132 548432243 102964255 458255128 864249200 947805063 490258490 539101231 609464045 935588743 301184024 535761769 235474467 982536264 136197410 512493555 857082815 916506436 639410401 654451534 124275408 467182405 283417888 452099742 256867669 754019185 398813956 999517084 529852296 812350056 360850519 882956727 530898355 540257183 711368881 914269379 700954437 763140605 971059404 993130339 804990861 833986588 704460617 741666695 774428232 896216936 747425419 987081946 703552528 961218163 238130324 519158880 203932991 852467765 688769777 817816561 862539291 958977536 342961902 744114701 629035508 727063879 425057292 622456266 413134759 747630232 808812795 876469567 840621694 978265749 277156617 334741714 603758964 935207230 702451519 932766020 948443319 996125566 405476684 440599683 507427994 854806855 81699340 197046232 185382789 443937628 735782673 785294200 594748769 769134762 473726490 810082441 277052953 407016491 495031486 994661419 749242811 990775767 80152162 896834676 901551950 953873208 105771262 535973025 442135278 513321221 124583451 624244031 817984462 899687060 494377926 902136690 528017344 569786309 201586636 944519998 340233479 822864215 301986157 449465120 332013236 867107183 38647764 886196386 247942983 954494831 424417342 475566888 439647921 684277552 957137028 983523013 413895594 525805145 624601803 934266438 428098649 711331432 365639875 941024042 482695123 961608497 715703043 951143548 362517670 644564587 217171866 512715259 80780824 469579555 699764673 957401464 558730043 836731320 89151860 965045963 197624811 290309921 698965878 765481116 628949730 790155968 349904477 407914744 291465706 680516013 671317181 950482348 544129449 641018483 360244460 701132491 875883774 935363912 274989776 406941405 388867989 507016722 839892297 979509519 320263902 425002591 45000156 764945644 869308696 927711503 252554972 344533273 150541507 614613240 799629239 888160817 363435333 396339973 237947525 589132501 526302288 933230232 289427678 766102351 309372756 563035103 583858454 602475671 942221471 953757773 643709513 938765611 107117282 257252372 314794020 663013623 76659768 539709417 166677886 842893663 833062732 872455174 211729174 650746892 861639308 901368575 827266841 936428012 853732264 863860523 205469389 545329492 135072128 971000631 157623771 999881521 700551135 768105170 453855727 565122044 875418601 881787622 863939951 988569362 505971180 808149288 470780733 653971106 231882392 309502675 348057510 996407532 345410176 969089659 714260873 957945892 612587510 949945517 949456758 966238433 860682080 869352479 266404860 726651406 956973954 984798616 902078317 904660185 781444072 815704699 748654472 755124253 155157466 244198691 801367837 952621541 784550633 892993512 656916135 757771593 152589128 278718828 9940589 201069395 813850505 998658134 275575844 517789270 252371272 269823189 395161142 736167874 564194384 697074588 450794393 491703139 38442474 964590725 329579833 683446404 16246736 753331969 27531467 132797855 796917920 943670173 683282778 698790515 714569162 880926607 98441219 581847066 133330887 948478315 599556873 896660322 335974805 916959810 547626557 909654560 185131940 669344047 347461036 897812354 180458360 474525274 639976735 975614379 610002832 991616645 482304259 950618811 130163803 823517255 533096563 646020225 994845548 998966202 935153100 976569008 118318773 602955958 941219012 945199497 96490683 436508206 328780270 838816921 525965443 593980482 2915703 434188282 981764973 992200882 599398665 928910707 938813774 999637256 552597620 710669752 961588870 987132064 736852212 975484735 867832211 871120343 145127488 742332925 651283671 860910157 347113743 931261379 776550206 792650933 536489313 891310881 24907697 810330892 607965935 920931301 408383029 735954058 15390062 986609695 421369099 636041610 814900081 942055472 250732039 658384442 976480799 978815782 951779705 971055262 857850191 974557304 156403735 791864925 794432703 837597975 642004200 839935097 596831843 927914333 274483116 897964991 48876351 428208243 188761712 217394446 408935991 767198507 116206208 358557414 464401482 705811013 533804376 690916286 855505279 869510090 793691239 801924079 510845369 905864078 443394349 803648097 956152624 978945735 850821618 900315646 586721597 661506195 404411098 413565657 540610208 685740845 640732554 757391437 210234030 718027512 662894636 755657949 89313410 819230287 41279908 934962017 403876644 960165952 2054878 59033803 376452188 382574794 774561962 793230670 894626782 917232827 457354417 824539643 353833700 597815713 250259925 837802072 157230313 785345028 322321336 663545484 909655701 942960751 584170200 750633735 173832467 724371668 916495474 936822623 50747471 225611262 466892044 855197671 758888838 782055899 461345266 958603166 351373357 791331932 580426143 691710631 279480516 642420427 645461446 987485172 355957711 608762449 592619136 864590850 865378183 932092816 891527434 930226034 131780652 798741308 232157932 830211193 194554930 579031668 118817657 436430445 384754387 672563412 33821528 112657676 76827037 94785194 646748490 759300443 483458257 659410437 245929673 777748196 476658310 544318077 535284556 698392670 477662807 984616097 245312560 471249599 238703232 302236557 167133517 637619070 712206127 759723401 666717001 910101812 341730988 895942636 136796958 745294871 584790566 645134789 499616144 977375822 474344844 624100553 378298049 719913074 920462245 964940976 315665881 532609534 265479604 802008253 788101128 799631307 269000598 469265928 285266718 530446355 649943961 843537462 193132792 268750740 668893423 811877286 316655718 576663611 252220378 707169804 270006978 911179110 490180060 923351169 541493281 890714442 693080079 800664345 219447461 739166091 570565149 680826569 426500884 810176100 645177830 972191967 121625930 419823984 713817680 898335962 846890517 869209217 667806586 876466636 546478896 556263613 784392154 975042777 573352660 697480865 853086409 884090902 830094125 941172926 807153085 896349644 345351228 931766154 802594419 932936529 570470140 889113792 473030193 488115990 753128599 932033463 716396068 858504706 795821778 881291606 984880649 997946003 50105298 991478533 722696509 782878951 420915211 986463016 465911334 705210969 89367729 898264112 707602003 913483485 274190720 320090833 262807781 293035556 271294645 668053761 453615023 682089617 627554478 685791089 297501115 498498833 213912730 290185508 255576148 526763927 559961986 765901093 353667459 447247049 996936773 999578847 901919190 919950408 226453708 835850366 707637360 923256306 840074307 972096921 719156634 913529940 673465582 681903566 67492174 873032524 759294968 955814737 476061409 545349106 93234562 588245928 917037147 980886142 95323969 877024113 740028613 854702490 501044657 594700502 118078247 705501567 99445442 673021653 967082100 994515684 840114260 899550793 577133687 925903719 427587469 598198516 107859830 423401875 143267594 985099559 948111553 951190789 675080661 695649711 549163034 733983861 838896806 944863401 543507722 792257358 496263702 639422767 644835729 886947442 350169656 821420978 619262410 736757620 163511720 948879322 503509878 849413124 542480969 911603606 365681250 574554334 449396865 479410158 623806042 820255368 970829721 974449277 647833832 989935738 225856500 395219090 85728841 282486889 452068409 832043601 891280636 955449411 630789565 740109850 913462645 921589368 620129572 956745120 576098128 585332509 201193869 356813274 74481180 394056561 203877011 616707529 884019310 899015103 276404400 688430642 532071045 727137205 691170666 833687848 89419043 465705609 231970419 292621904 198552091 245835230 923952583 951841077 438395871 465450573 504731332 686443276 547706823 900159299 518025371 580577662 624582788 721545125 481419617 726440628 800109906 824595593 391150526 633089349 430519326 904164509 404060086 850701557 834629905 965281050 129281197 738321386 258728243 847081300 913878640 948759979 688790694 764499349 496231357 586761532 727126533 853095888 533366673 958722273 223735491 486975087 709131457 838811010 19717008 803899257 442644811 800524813 637840537 855700002 109429977 115923486 571488899 747225250 19427406 410771710 312056547 775544886 278200717 343082918 734893605 823478196 855804251 902689467 130191374 274251513 576164858 887816946 220929238 560939629 310514526 430360120 437803382 830631238 550065539 736140646 826153006 910632584 158871543 185304234 488591181 578376685 906068736 944788428 314668843 959013055 881968394 940663520 775658558 963551496 989935560 994058293 542499268 818346752 497115507 683346198 918640546 954399265 232078086 918588063 537346667 886563909 541136768 744021299 325021204 437756648 351358073 521229504 180561583 897749540 767989373 809330027 667714193 976593319 784622305 963609127 518767747 924600754 691146018 882122695 910070160 933037635 520099868 937904780 652111476 697292987 967695789 972982911 685446820 820963270 966610481 991517333 446294546 931692320 604796980 878105635 898685056 987138038 369728885 815700948 287242594 512890010 194255193 300331666 627257324 700298970 915808031 939314455 847423660 908828454 858808758 934466036 986111153 997835258 284128993 505099613 148509316 540709466 761981333 816561057 920966296 926160037 697056381 842291407 585076867 711935261 923479532 957906908 935586147 988497352 722456957 949523293 632435791 839239178 509275901 800158768 885088520 931563188 593014723 955517463 985538509 992019192 160011089 568030954 618402878 833868297 469277229 706887334 192196470 515154158 775931755 842013378 142397314 413555040 566295074 850616100 256790407 315540769 982318042 990172901 665819994 726925201 911959432 924099342 620276589 955983838 365726092 598731792 231138520 800462402 259049363 933245493 597016346 609334317 654918261 988672862 464381406 938951099 835784909 997969094 862046835 881781249 311322221 826456588 874746579 910580462 656010559 829922928 157986986 210700212 960496782 984262658 892268514 928965129 604905286 888878460 460765462 478561193 259104621 618188391 150639941 459072892 554325338 656362286 768788943 870943390 674172624 725418694 273287223 339400635 45696263 281903615 425555178 881300416 868684267 988202150 361409922 600145854 181791335 668316711 881060051 940458788 314975726 595549510 728507929 968137047 642258829 725869852 923659346 998504613 911095843 920745820 819772600 841373256 50173237 775191587 273944679 884956301 617389702 708348599 10485448 608989652 640591019 880321539 242475253 831406518 986383926 992597024 436210117 596426807 374597640 544445680 459253488 951243492 538015951 559669699 406499434 508845376 228142075 315196054 809911897 814113662 967247260 974420725 670089931 930541673 278498615 754921936 720533771 834798180 939957651 941056479 116281553 294109054 964062661 978466634 258233597 278516671 750832009 772692817 572375916 727708884 396594965 703187093 93692983 372069328 962485205 982147073 956562140 964363748 977007230 987445718 132449577 268653095 143779431 342023264 567966133 988798649 408562178 787949351 548141237 600129642 748131134 802814533 979506743 990887816 857908857 936070611 664387461 895253086 882947807 908462685 546736952 871056557 194646729 733458239 828213092 925505673 896029018 916075522 555997444 725031091 531859222 947906084 287369966 803518938 816922281 950133927 971686525 998364404 191756874 992842703 413075078 927035264 613362852 939007369 982088695 989964294 407445038 905303222 128565263 632358885 932398092 966063557 473826176 982743271 248222912 670163882 876408458 978458029 234331078 380443352 269755282 390879865 30531424 100143916 555784773 757859030 7352142 400508591 914502999 977233362 126028271 410426492 238961272 520783226 131372217 899083148 891597838 949872018 150052108 668650385 875143809 957288723 757852581 806480968 89557622 639390966 814291637 915865232 209346596 579051266 344732410 926991063 870275351 977974837 675465940 782559976 869334002 925908680 145997362 680907769 94345581 938929293 945617981 970700198 454046228 515487827 554032411 806331954 337785745 402883727 490297884 814634679 356703166 870976115 87313065 189737780 991175230 994643137 935720059 955532232 283671788 645479897 774729236 856567546 277910368 561622734 506751928 599743187 981066249 995929241 536197377 665712950 925639040 953093836 454124838 547404798 508978764 844818381 213315380 459325775 882083199 985316523 669627787 724258332 941337733 953062594 644318260 860892912 664541915 678488686 814756088 983908701 679811615 768114523 805742398 812548758 674469361 777232896 209164320 627915328 42083641 244826737 763931483 958333816 554373789 577042924 256312727 840454331 453411616 486624122 117861872 730007616 672532099 993415344 397182318 459016308 104060084 194196545 651105712 902760926 129853681 816753017 570772266 884842834 631966476 829318500 365680989 694435071 600980846 935858150 638720822 676592678 421807735 858195099 649937207 728952321 27866961 695978544 663014147 690504136 35073210 848137979 927885558 949490121 240683728 262476640 433206954 802956268 558434386 640743004 97171719 309170017 724489067 887493989 801254629 980785664 970634803 996059084 44580438 785570812 724257991 754079326 699987506 937492636 576614292 831767497 576391641 988925080 161325280 244580695 22434745 512766951 560688557 676911279 735573094 791206222 503198237 632912396 42571356 483404604 410919069 470386029 730116440 869478018 774922218 892665451 688210645 953190136 172736604 941310816 659913098 665124142 333994953 563746948 994490272 999433636 189331232 498421978 331972182 542000198 919926394 962702499 95031363 860309839 107429453 367386608 458540145 850657065 54000892 467993547 186455132 583485415 332236664 348470252 91040449 451628660 399213228 551519650 721428503 896913022 422254362 933936592 723435506 750217569 123463112 756606132 783600132 800716469 133897121 636975862 217040685 438144718 677838929 777722400 750419622 967433868 269575292 960581005 999488695 999910561 437415109 716564487 663366578 897263227 436863330 779270315 363479073 511530041 292907968 855009454 955651495 996940342 423039993 879211813 422876528 701693480 529747349 880147198 140849547 639214460 773068478 926175101 757466852 990731399 925377635 954182971 815692504 894314123 532085234 796720534 705455108 712557724 933306348 946562878 17743197 736325831 863591271 928572129 513905329 985064927 514388544 995659148 425871414 635270261 116015626 958635210 883370732 966608872 63924640 804158280 201715564 576713332 206689256 693613466 57093823 200140157 802256575 821077367 325820580 417819468 778123696 934842932 966297411 980872362 505312898 941357683 288316691 552434497 314129922 696155359 103336000 441872355 502124818 719159612 569422868 715229386 668673103 779270237 265754371 320116860 128439754 313501875 837388342 968569271 49015244 391934144 806340441 983532319 790067579 883883549 840488024 941181763 472069856 602029652 605849383 734193983 175965106 475599519 417281912 992474719 307818233 498657842 69696116 489505931 433797992 809606406 608114038 931732349 539612759 633312530 879265253 955045198 836584389 959593428 326767742 518193536 786461518 894020104 279204960 709096851 659993311 823659464 616024642 711570907 919540659 937215219 220591254 285065148 257132246 792110234 738111543 835285238 438522220 485291996 551409791 635590479 601870162 973996394 587549229 907581776 502740832 562540653 306790611 500086984 5529082 719382613 334880066 531369813 193937554 280699607 245976154 559619820 357753219 801003844 166150434 496470735 973224548 994354753 142129976 949038949 16458338 882983662 527055001 982830616 834714368 924409455 88844786 971167312 774093205 921293900 595186058 724397968 339840258 827395169 275707594 318882495 947637741 996614043 165268912 474089009 231958241 754063320 484644782 709777162 140822539 361651721 994211652 995154499 523643702 819111051 621961848 828011145 564878919 819182860 550651493 864250051 316339146 673336518 790675843 905712917 579291007 779259350 428156128 606066960 986855090 990576834 827040789 995718456 832121253 948456410 894604640 972222759 178008 8730113 173834928 998977491 494499000 836984790 207901135 353275355 829281810 846338247 662351326 793816830 897550297 938928736 682641808 904039567 194622215 941355802 466577068 498161827 779641876 984127724 11779045 955283690 962591202 998708757 730219725 867877874 256067028 582725891 780270597 931414901 952679360 999212484 833453062 918392116 729887319 882181723 477765854 631673824 823263052 960894137 636715369 770709639 843370499 849432634 347592861 878571062 783506472 843211441 64627687 241414631 667659133 669134264 598892301 685177862 983630465 985425733 7539820 110717515 503147329 592793000 231127079 964739710 752693907 846978320 921282864 999788450 169194460 310630891 131699819 788597816 835160988 930917824 528594921 588512649 852067752 984983994 817911668 863739443 831370106 999683921 489591647 992068814 730988051 861644598 540009086 828635863 153157752 211385292 293596918 688821470 183924600 704729987 912761583 951994381 171456766 868310905 786018567 893980375 752038579 865363958 375197189 588576918 741296050 949579294 556146769 773290146 159639018 315302459 822154999 870110196 27400212 59265654 449673909 835307895 109987504 330158177 94773357 557144563 124435547 816359458 811713893 986718179 591025780 620959308 436828606 802036196 410460666 889196747 940968132 961366553 573699650 668339698 593221965 988500530 931801627 991184808 624100904 838998600 707159966 832213018 238854300 894647138 763134176 798534422 444559022 599900837 79596605 282570551 288573288 380779406 500512417 902260638 540209816 873342129 91330502 489537173 456030352 456858182 701332579 841575655 269628755 327731756 960949951 982668479 307020869 853776347 88319788 730432536 136692650 789124321 734631446 820496191 523756877 930628066 454278049 679966437 991998458 994267578 649630814 963011027 444215686 575732616 488314634 684112523 965413103 981931819 703758982 712894519 787522226 941564517 457571548 943678360 181875311 944390440 674541355 912950632 552192577 930180536 162749505 764220698 995180015 995362249 159983510 724821473 670184166 735327597 445856127 553219097 157252068 614637561 202078190 305018376 862711795 938194406 908371988 986173119 783005698 822134115 991212868 995882139 671433390 978140264 121086005 473076705 16867886 546760921 664379460 809154605 765679110 960902341 501770452 598233685 803769485 906561628 219246481 584023522 649010852 923770281 808955932 854461087 182060421 276248991 70325928 779387151 30250310 819902926 891026275 939774117 358578586 644081215 985799829 988848641 684392631 829663343 192248698 633005639 521160030 786677337 271429759 365850672 360981293 864341236 363078861 868946002 79822998 170479366 132290484 503368135 354803617 822578611 312985231 881314944 189081378 569693177 196173628 695414167 833982523 845349179 419951478 432683418 325380796 968753462 127283245 970964128 240010503 729351356 424835741 490837331 328149857 521192581 473243231 792779250 222698015 464444872 158670740 483981974 707030977 807147726 562131852 647281326 902101412 955640808 390399047 465965935 349962155 859823021 532762993 696808093 635694385 982621707 207103246 348761551 563366134 828651097 608227720 689969587 392896380 707735750 866153071 957580235 800037474 858254325 474764258 550305341 892437013 991194984 977334871 980758549 728084132 772685121 209286089 918549799 476790945 822752879 718775410 825584510 710736749 998059990 276028109 493553635 173365138 983180747 472541762 493028216 936417418 954093656 794046696 988703095 279654975 502122074 90071318 991272719 959684337 963774307 824821809 990819200 727402474 796998041 172743363 878061343 577850188 987158684 25740003 185826636 236188892 659921473 870219773 918083560 945283444 967810702 780095334 794966879 255753546 530205832 371078217 840538303 857490434 886425836 711620544 980006220 211185945 966717730 356309127 856027135 477961983 576127668 70031215 883506146 321080345 963262137 449946447 488096298 757939914 930022922 164054041 844371977 727601238 973987154 24307099 472182563 516645546 874619523 896304541 960310228 176754957 950132212 29287105 208384698 347036448 728719959 910462013 952724406 957299583 995037332 709088479 820770235 50955411 766567173 356274499 718149275 468303767 783208323 617815404 681543146 9025048 518692705 741058370 964523733 776986263 977320671 702093870 716759007 561483383 955716007 704042613 733719012 688120205 762620748 79027744 807079727 836711475 973276146 769527832 870815662 919114026 958781210 507387081 790124209 698589070 743513185 722953884 877083369 429189037 883404024 457455895 923964045 335186266 603589493 205387038 484608221 907841317 941271440 639269176 988425351 350586921 398725139 818318326 892055701 94523948 966795690 61139270 454730894 424598617 623648778 269552682 354596643 927647058 980933976 146697762 744623340 116805399 804630045 144203066 578381368 396551301 985830531 736634430 946312299 133842338 630997770 303061776 820693661 264367286 584143707 587940768 874552703 369713820 480475293 31738732 321481611 749939356 961297890 888685683 976412005 43690677 893952258 488618462 543086370 364109471 886654672 731242491 804300771 574080745 952300677 921090091 958803350 316298684 765804937 411768739 533361664 802842641 955629388 650787547 848492262 159740972 298790495 372396479 592485406 707630908 895068040 94470749 370473561 471135710 635038661 385309564 672063240 645718845 685661927 494694 453854277 753403295 971303768 856261367 865867714 471776848 974882736 733260095 779334981 779758946 897855209 677055376 801695627 880619599 960579927 771971573 905926317 174761004 300424461 420858558 976707681 50492617 984426320 456110950 713987844 386798095 551659503 858682689 917138954 960136745 974044010 256019609 392562223 979204997 994849052 169941925 271608439 720453826 731314611 555098887 712824248 909778700 935067324 199525399 529926904 503343734 779782278 478346420 510075062 585659669 805947781 338845149 584870724 473869796 897672054 353529574 868379023 423572868 959113944 971817772 989541093 657348130 896559996 33951792 406459625 8314466 231392427 11554074 707608055 638111534 802213213 103522986 629049598 573291819 723868476 961349122 964859110 418609001 895087823 347029359 528443502 642824716 749772393 412626023 812966641 439148547 594580344 560415904 910696053 341780579 517353223 62773243 349863720 457961457 829066489 424459441 920517143 112726555 786684793 846035821 946431903 151299515 184265705 62652964 773364825 445989728 575420954 420750067 808075322 73602337 95745176 37003216 942868092 421857673 494190387 758776245 963705895 406716441 772730653 190895412 892937190 117678881 281770526 277616077 337411491 710952778 779698821 401842264 887525573 339432783 471405106 788584823 990783174 498538346 964639147 984576252 984902426 197467291 478708553 962385526 979921614 257865241 844990023 34308819 607802418 914506653 966826759 425758764 773866138 236800263 981758838 699850975 833504770 302270085 993872978 298128104 719951805 48972164 170888400 730843538 773195302 818301005 869481487 653328804 730505217 768354550 895646331 546230517 593772588 606274852 904431117 8082506 533709080 694224984 932591775 9503785 360435646 617053477 813421243 750982919 814507486 885047422 904499279 242392079 424391391 481083157 729296623 537674392 861333359 87924380 345953359 369854805 863537550 908629892 923257681 85384920 696403905 38725231 450634418 74956599 784258946 595728886 871777136 371322387 677668512 221530707 846532594 553464678 714571001 884039683 961889614 530610590 815478093 967586017 976460082 622926574 785058457 163649227 634603308 189241835 343403625 321262399 984347303 53224530 421599623 67880298 950835877 731043075 829791556 100740891 975172326 6026963 163468378 10682702 857570307 44598048 277117080 300243632 652665729 214489908 477941105 983993954 985191144 993104630 995475208 3131656 247033527 405802310 948976259 370111889 447369526 451873442 520747312 457649857 998030342 120788552 805321506 667733658 897243744 46315290 395792707 360734271 779370304 806094789 842358195 846222535 899556247 199646948 286172960 154695651 548708976 386194202 680214713 976306359 984691490 50148451 182583966 429777051 540383108 413986593 669891312 551707179 759708172 253187259 766182332 606074250 929928870 757056824 816515582 372339837 757889119 359355722 601530237 852917630 929694493 749282343 894240765 370351738 865677243 536909118 735146099 850566045 948657219 269151988 378668477 285005235 760769463 126105127 847973009 482474532 669189121 747065654 974958804 517889091 898001009 527954146 677367170 454902894 897459412 344221655 571876792 772564012 958066309 237784466 699492882 791590427 953002868 276867093 661518466 706190258 945599893 252666586 446166396 745604610 981431426 935262264 991418742 639336013 873968422 283705608 635824639 328111536 415305104 836962985 886301698 729914854 836666815 739620530 925534123 720061712 730226261 371699724 469869524 310265535 422593763 387061519 453516566 113393416 859854494 973330725 980343248 106940423 184195350 857479803 873774902 382655726 920695481 884097557 992759992 880687214 958404934 535680051 763724353 48195967 212034769 20977544 375379755 663766091 688767392 741766675 779579466 974825861 979285185 643870529 775885732 776452929 788765219 747569869 950421859 646705269 861762510 988330425 994231200 477321958 736102310 13773777 139916023 402760129 982961089 344291646 399576107 40992452 370679880 263413258 508741988 343536471 667961360 933942552 973662492 662714837 777307844 465297176 745046474 981768995 993688629 377366984 434434717 579237444 703952818 659765191 704502412 56310038 766700768 597619234 750054194 960138775 967903764 212642555 458132298 984451422 988724855 9253283 920166527 755886231 878577421 553999910 933989388 330001138 642584014 867989847 980438183 515965446 640352416 100700044 445336277 345265621 667199803 917187941 962354087 510181110 674240576 508489387 997244497 46954316 306459672 786298697 948119105 877176460 913766245 501152517 878960024 416314981 767735029 324857713 533792948 168844569 944323227 934604602 939482780 894031958 925634835 514450385 798800265 49805290 347883783 141766449 680659706 846492985 852856601 831547039 973265110 589731421 719697897 482662091 917707262 556828448 644042423 883142463 907729235 142558071 582800838 571908430 630733395 890583124 965585908 315580002 911885872 135764084 813157785 325046175 955322959 466803235 788750164 216756660 335639302 141233218 288120592 237068811 343089045 790760671 939029598 432024378 926117655 791648760 904700273 374163565 778592539 688841775 860763655 760362847 912305150 749744218 840367066 226472753 293955803 251961133 584352886 609712525 900361011 868772704 872780391 670086487 951546352 662940105 815067678 10446534 806319919 687910767 780742585 770771495 795933854 296739965 600189647 996914564 998250161 349578360 715681332 477078629 593988335 979583083 979977264 979879865 988789885 605339482 671454603 997470571 999468933 508401577 991962052 744463565 872822797 698401497 745227269 450481206 705415899 682885113 973048983 403899483 821103208 951173080 992138410 462549947 602098257 714036139 796212621 738345002 793411952 745779157 949657610 341932180 693352740 900834155 994899290 145154596 584222418 987274567 992964841 331474653 755911187 905487778 916826553 125831712 979548551 601621830 811069378 107261063 528760901 763731551 949104093 653017074 939317912 346518663 854685110 321572005 772605640 712529658 736046935 689332811 805449622 797718332 816739000 786234166 925553635 627399729 706249157 533878854 986680763 727744555 803605772 484255323 910585219 763766850 843579906 504170625 841956926 242934365 382656599 654172325 972558875 127960731 518303754 532068356 593994994 129453006 761458411 58317065 506914265 382134348 434287968 233488046 534934629 458608682 596835312 824151452 984353177 716133448 973253345 232065420 859691452 100086963 103061395 115028573 669225295 206415461 758194870 158381571 722433520 159396630 897470805 661589975 691846598 352127777 409056513 680208973 697991418 752894137 857795042 177282798 972216647 342105671 932167847 233655816 764272703 762901096 974620329 251104822 922824279 397141049 760416946 113383059 998961926 124698694 669154315 310667808 744105693 850851467 883387941 764128787 906075802 298059752 379696406 447438587 989894814 533667304 831986605 62345845 410248389 796421569 799594500 420778402 992003483 814032132 858851794 860083321 942565125 305574151 765655374 845719736 976755294 6846717 122235326 217132685 766614011 993122793 994534317 756270629 766282918 317226855 605583830 574908322 865061687 950383774 997509618 28531855 412170282 917687092 928786042 749056497 903457158 187811468 570377651 422251786 791867989 239665119 433592291 360282103 386957435 996006713 998308841 97208367 990407641 135125318 672411970 912734399 984357287 794396809 888108338 154086458 439996693 557057207 561404352 875812853 965677536 614575092 710342531 911098347 964251983 398796258 944629582 436502233 584201037 924910303 987853988 374641527 958036066 504440513 986246912 897006317 941124218 941592069 990492936 163020958 837392822 747298541 950771959 274329923 832828803 960164883 982829833 582793586 805547008 386867365 911948725 78678008 992511476 456765586 529437026 454771806 555993893 639868380 666340045 606210383 933613343 64151412 715413205 224749307 535820846 136030330 860768774 934162179 942053908 496591207 836751407 716476780 803559717 927313011 956068286 633840811 832600960 109133859 221766829 148388643 730543568 242122806 978469742 112477179 297682967 370675708 839323577 640623670 756076717 579422211 812772976 930766635 990015417 265438539 745862667 490227184 983206130 374062619 669653186 430557545 694977594 619551860 756895460 389677938 911380441 849214112 867761277 436022507 437024328 661962623 935283418 312554903 663781221 121492940 619634659 34204067 685378262 888850923 893171646 203204912 437694619 847835998 854131262 799791544 926294651 255583085 888639213 393473280 400993902 676058178 779491981 322349122 887674931 765370999 769148928 658535498 750403737 962125044 989046936 557527288 723801166 949993964 983667260 922141740 962647202 450578389 735399521 299204130 835049643 975736733 989196739 733819831 970014875 450200732 705735010 894920840 972511905 571134865 694351651 232752877 819622028 567715053 868389795 162299984 400081969 394169527 880134873 100904296 518552461 913344948 947800803 394836328 549900678 992338195 998147568 289429923 634350897 117665755 557492689 420084425 561857830 611498365 942368867 319763021 540832634 702035555 793907249 222939585 507408668 135471480 957589616 748687288 992556049 571984344 586334043 482669508 937009155 101374876 988963545 173779714 680383849 326509199 725526048 204884462 646871750 855698433 955316590 507280109 752858083 752975323 992711892 890166902 978984257 924191727 984933571 225435639 538293193 984728456 992605306 192408213 754213605 972904137 978055056 506979527 671840650 125721225 713951892 42531065 959941720 892472054 986462593 395395384 453746867 964871917 992657169 184776954 698113276 392842444 703050097 72589180 609331350 943118649 983087707 907859052 944741188 359192188 530639036 451952338 650551337 246233518 455284550 467199088 907271153 200714969 971373443 361279388 486864084 580532852 948255288 905355350 939134010 493052433 498120883 187428578 675436412 664063812 830101568 587320949 689761659 662950126 910679889 908049549 952281062 379508580 402290799 463646244 465631370 647823772 887561574 240552097 242935041 288481106 981658555 986375785 991261117 330796292 983394822 835499946 907801226 77844574 780571257 554299301 902906084 522018753 748562279 825846892 852552353 601511183 811042749 482237449 634566602 618241867 944165092 629985827 652207488 849646872 919860747 643521888 987593795 654998117 858594213 661647181 766747059 22711701 323479014 738757683 965121849 925861008 999773364 544451127 680544215 682056644 927053116 309027374 635717196 670901552 758098456 646877297 877022797 891913777 987077912 509583754 645602932 519703490 871961183 946185798 981826250 113367561 905303153 914338813 977463355 999841890 999893195 688424582 883824862 383677498 768579227 327855540 796954528 837180659 935846758 357808958 741209329 95323780 512167843 343539781 733298191 237047641 752582478 286045719 653566289 374663567 823935210 40380564 182100277 664437440 982143046 752325112 772012235 517734017 625214364 931281360 979777089 870901984 922489798 305412133 700634562 5057422 178360911 638907880 849375252 135317296 588669918 872718066 882014557 352957003 625039220 473876510 478359593 689975461 860694848 840611191 962525445 89450991 660398779 467098612 990908272 58494365 862335525 640247493 760714487 159620127 932946324 847178116 847612528 835582796 996097753 767169240 800635913 382946743 824960988 326763786 477596924 905271130 922696345 824855435 859762699 14355392 839633299 790333820 911389774 651580064 896920521 783272478 784644106 94120835 96462872 562044199 890539949 493048970 689289933 8801067 122126994 224873650 361393201 382299090 925768227 401517988 745772702 726581846 752104712 387750439 807610947 868091112 891495282 846167365 871915374 541324553 831862132 576934653 594339276 729853209 876423059 628780381 871618983 244959970 790960355 303276983 715451804 700624629 769453193 294226117 953636417 940572978 957780531 796396582 918050700 809410195 861894024 705823744 714985121 582550010 663583327 798496565 883146997 654232382 779479235 9221345 859069801 38189606 556071885 318765026 438974017 914620433 926610288 419378677 420654052 731368247 877685541 930334426 949873450 687374717 834314996 671392595 708240764 154237882 999251380 528912969 755377594 920149718 968777273 356549676 443236243 772889150 971819071 9953401 217641011 123544723 457294335 794580655 833296836 704509838 933153238 973560147 980532141 891774782 984999141 735380056 937788897 38878830 62519736 499453151 814578964 740252401 833455795 841222652 933498481 92977242 521304137 735110472 973017906 523246548 718982795 54569522 715751199 288437698 567002046 409115845 635264328 596437738 667851158 504118080 505388418 251584847 801953977 201608403 398552823 89898319 394753420 465219229 564483287 956671891 993443558 223911492 417286996 833749708 971143672 991843348 993921380 544988946 783244669 948031536 994585356 910412533 970674001 84172640 289235335 725186293 846923547 443844807 686248247 180195813 309938689 402155661 908662222 753120510 933385433 472130183 989207145 527509263 982217084 707871388 993322963 206922518 986791646 467503713 536903593 121478313 740708486 715207072 970277099 55808760 729605807 555647011 557099170 588988608 916988460 765035316 849665255 693967858 896156542 339942626 948490009 989007198 996521992 691047511 838412863 996693500 996807978 525602056 993513131 666505207 991099152 499311951 789791123 285443348 465162153 431193057 529026707 389405762 650396729 638914940 973794700 669360464 838626926 609524355 819590442 935951204 965105037 102399772 186385632 658254933 685152058 570939098 967310452 81019148 329182371 41568573 695392430 363122601 658246462 333384592 988242988 840533378 886912194 872171598 936734324 84725775 135686178 961417589 966073749 842203516 931598209 506741902 837918479 958347250 991596597 808276497 965980267 223564220 854669337 285947914 957597103 639525115 647897104 406762643 495163596 116981845 806073179 180567291 712056593 80090270 284334461 715794824 786403081 691406355 930133813 275771613 295976205 259963502 787290720 547915909 648786569 219842515 671538348 754199800 903138941 909884334 957444002 488945343 714517658 34781268 286636884 36656806 735038539 286614949 357803083 364177987 536009415 152211191 191037411 719473740 875704911 240766671 593967481 710700593 960081490 787754261 991611448 367168906 926550145 637948994 877914815 109628500 867252394 644244514 911331585 576717701 881791794 19615995 350375472 209770295 603367919 274717787 608385412 171719416 824083304 978558465 985251758 289631010 547669424 124377520 693802497 514999993 918507151 397630927 668231191 232599397 238500186 217815785 582206507 568807436 697430283 778062676 980269505 922521589 933704896 711170378 935880282 97464833 722352120 744560170 817553778 505363240 906183882 539364658 628149427 343203997 771059444 179233870 929653567 333218893 916198807 923282273 952294834 435316419 665769507 276936237 647784141 500667877 536815689 919371202 944184758 979543675 994631159 287548182 542275387 89567291 225779961 80050148 586405006 676705476 706965496 77703061 994618169 658606281 729087995 163814731 394313203 460846702 988838116 888278874 924880023 340128450 624890505 434845312 685429778 53286947 972875056 316281999 495453764 806010942 860875034 666692953 666827574 987727015 999105544 156399582 998088473 388672013 619305280 71605295 893677026 813524405 852310306 799852922 975226263 531630040 785045421 258494689 753847133 353499074 898303539 659787352 762789730 960942918 980632958 508792205 659321021 160851230 216582747 67231552 987148177 596028809 610444201 724601948 895150707 425537143 946559428 258316943 685196293 919301791 968461709 814235417 887264685 470448767 525083690 822185882 867582131 898596876 917227714 420531128 960729516 438981698 988656142 706126545 712151543 20326705 62070618 99221876 806715993 551458259 576953373 785169398 944064160 654898858 925062830 645066139 975101612 668569613 970980003 808059577 929394313 332400980 863361656 843382562 869660394 57135660 525488350 870760368 940413438 251665951 442679201 941816795 998009542 388255918 774594587 470513377 648001130 48962593 284040896 124672721 430917966 652513769 668125423 618338689 624898647 260053202 460483968 528333368 642690602 820128638 853588726 43835816 193155359 709294926 814243955 982752239 988704247 163945659 681368301 435990567 703852912 735874175 845481846 674593098 926721121 261857156 281178240 556159508 706263783 834251286 933586760 582153622 878942953 34341693 803116236 804557290 943995243 244559990 340984969 997638754 998586384 794764207 897476359 934704830 948822636 741280705 853169525 752711671 796085544 781308288 862989792 544703389 934597511 353954585 714642288 591767313 611070165 249064392 366356386 507046637 966590825 795515056 930712647 382138756 591079448 179753883 553950302 424258307 501696066 407964184 869027954 855656822 871006784 306774424 718960616 647542611 958938385 329754906 867240725 481357607 646394830 207215072 501302112 301500651 710109510 684688623 716861557 761804901 838554065 254212831 753487006 742232179 744883279 231951330 634727864 290286839 891747898 967618795 980444008 924583111 932722789 213392145 598034512 803515312 937517475 486968800 586900234 137029551 525645233 502283631 826617867 211517091 618322422 832181417 977949973 278187556 759159590 289118992 593900415 928577370 954459826 704539333 933608751 231859098 604079626 488413854 510264335 386628796 899901243 99447125 390931556 829934633 854170535 675618553 757449949 914224101 975523189 820000192 869591515 221231348 381625627 790303068 829615516 661873341 981945932 925081280 978793300 740067147 910986745 222552501 932797560 676399053 771144911 724465365 735260931 527764369 593719298 250171197 501283224 446855073 623876270 167913363 442878943 864174063 981549347 440081024 497436966 222599750 608488768 756882008 950666953 562161535 875493430 138723986 882073347 832165834 964533067 544432592 791562335 954865901 969343896 628588768 691945219 299083880 834757891 648704572 936818280 416382807 429093043 424990352 711697297 260591571 633422224 791492861 826602074 673881939 830390900 366086804 562385832 54039737 570572576 16681828 939696189 726943899 816922875 757711793 805763333 482420248 553388938 494871107 649723946 741039835 979922680 504560216 580676165 994254057 997672222 810649619 899520789 877219936 894656684 384124239 402035815 356913683 766204192 578602019 768375905 214415475 787822947 4860162 59190189 229875047 905420581 505587028 960955813 167922797 327999264 442917167 505764621 763769176 877380978 855602583 871323755 1384288 894409298 508554732 570048873 523628371 866951825 800046755 946740594 823481415 941111200 742828829 966352164 436028023 836861943 42951047 404877632 428449587 648421495 533118110 559564975 546313318 727178497 272762866 597824846 489063859 691403304 227355137 438045606 538502175 715846597 448035469 578905100 831447732 898336430 845748455 894282150 712746188 895830271 699145947 839696237 946673395 950047980 530394964 544413457 498792325 500269950 558913459 576526445 281929913 428724382 469352376 512891163 822057642 830017100 246030209 497380755 304526075 662387970 937662262 994980772 43587155 702557469 303093072 832805503 906081878 953550734 440181243 528156841 353014723 986550101 711361787 955269905 901225244 950753235 666765067 943789949 747680827 814463606 193562360 650102810 46739154 683508422 905810000 981101893 292479223 569504886 856201571 871268653 133543555 919886177 70784751 124623040 373809630 404410681 935435558 998432471 876068102 921392266 952017339 982056523 82026125 373430914 978307369 998759525 942836038 967048795 687987931 896880296 374455815 378995914 328435070 699143143 642753812 680708329 89469426 908489192 612213597 986517855 794155943 838125537 426796893 501149001 567958483 712814134 702691947 770304700 31994054 194781415 544308401 689368657 51519929 178825676 537476994 696643645 460978312 796394225 932221069 982185260 55255246 408684181 194590228 373935032 721900261 874792774 186872467 852429736 429795160 570980324 560350373 895897006 954694569 972819494 78403237 482014164 768645562 889930774 865752175 915374518 239547804 535033101 18372875 452661393 104634720 275499406 565015608 954127493 820922565 828050657 322214511 336691061 754656983 791757270 129542067 519101537 669573307 724398687 572326952 976559994 942925602 972911047 848943500 971144834 324437055 737410585 775298863 787329584 354676591 540385838 621168315 720616927 557815254 969679554 233278843 238406163 366071856 864472225 115468551 633784589 766283303 817933537 881025751 917577094 123383144 311371217 764163262 973225183 372764780 737839812 292539928 974102581 56469255 802095370 818990754 844881561 748911805 896526247 776312398 856283128 703036850 906021886 837991068 978871811 635416435 736459803 200022736 378926982 595475684 813163320 118290393 296327285 52866986 874090025 563421644 714944228 776052400 845019924 29873286 987881633 857375153 973381385 834122184 908841065 878606045 893441685 697103581 998850564 679862312 801366070 545944777 561924015 128333904 426111989 553290009 559640467 105316156 728223937 720055618 781911094 296506287 461762390 10345885 763426481 435706951 889343180 365398426 603752110 158004127 671653713 747571427 867677970 125406629 368683595 36332272 57246013 388755906 622613017 704729411 999243835 945984709 983635241 727720848 814409140 60461050 132673724 185329428 289248202 813042173 870473089 538023273 538578303 352193870 636061294 839580902 889455337 89175677 483023282 389378356 760867129 368186754 584627341 174639426 363486793 366551885 398856128 475715436 874315505 463210496 533083423 238285912 749371846 581938225 750921519 244024540 267732016 730188963 903732178 158711537 310931330 240870595 736694461 415750013 487604625 871239356 982584842 88312772 300470380 416327190 616868405 461509674 980717643 556853561 990193859 366067830 442131792 136329620 223832001 852866381 864231478 745627746 765383887 750288920 911307233 157529077 544153555 733432234 871080167 455111983 741406683 96878443 153294755 94455037 328195729 888137786 984547419 935139532 987542983 488121986 999991462 958739274 963107286 847216574 937122958 146030729 608385781 466574240 842519121 412217084 958475015 39384983 974461157 198166226 979462559 782787232 807515491 705875251 797039229 987947315 989580875 943909599 968765534 171391704 725649170 756912151 951411254 971282998 992850179 904213168 943270251 880484829 999489630 430926325 554038204 732360617 915836476 268479263 372084946 524392958 904691849 624390895 742166319 939351526 967439727 264903208 463640569 637310326 672282844 566356193 733598110 637866970 799228532 405247286 604674751 291374007 778963332 47533627 440713507 871806751 910013723 860049441 915978148 385797357 402671218 221716726 553114714 685467216 961551320 818023977 974895224 889277461 983285869 203395905 241266222 502110875 994442526 827671996 881307255 406494086 603679996 841239297 913321686 175212161 802112900 406533624 579966518 237634190 271749991 81349808 344642420 339487805 416518258 354631399 767315358 970094420 989021152 869938059 906519967 12273310 563017125 477964648 830218825 847622716 998120982 129968688 183470329 375396717 779869005 117090837 527827119 783722927 832124876 431279819 550749862 215341004 887343624 218462766 290544502 672153020 804180234 269119480 952442642 128519721 408473988 644853654 749791584 638598370 842169481 312802271 601505665 287772413 887885938 273633126 967414104 197410917 706859644 729055208 731015230 805094683 947221344 494801677 922680718 533255697 926268182 704083754 760427412 479651885 845173414 44842154 471420555 735143720 843522750 830507596 922479845 917197500 971651302 788571816 790980715 890165797 988159397 983626936 993184538 535197523 613532771 294381867 783977176 291457538 430363963 41174285 462249087 9475807 148202158 516950730 827887046 894415949 961530584 717343889 984061217 670282214 953174150 656642221 886209689 261502999 604786637 40001738 735151414 45764749 118386300 606171035 942682671 206941618 651128034 588239477 917032636 571969313 574019530 204012383 945746969 819507235 957481651 222287322 358615539 717338860 890562496 793468803 945950240 545730832 886829390 56238497 857163221 194049200 301921433 309288682 439505107 976250002 998624315 420223399 843815158 388729554 845807694 882397136 917824808 41237524 746834464 599900583 911910212 866990129 881963744 670946672 750895044 772000418 811570996 456395706 695071086 267861364 494414060 204131735 920373359 894254320 958154408 819291982 879468947 130592253 453427050 126349444 591804074 858108216 944556511 385463810 639264739 426223845 564043046 995377768 996219043 461922080 739407291 969749808 969984723 183678501 434335078 755976391 984183518 553579602 913508243 727910244 916423258 536929961 626610682 331912099 992228415 300646696 562204911 89103131 661001946 277806965 698484708 181867878 368023409 959071122 994260419 762948276 851306600 736197610 959112053 972850433 984669392 874628914 963061500 569372875 992209958 740745552 857615674 73532519 951504906 331242285 903601941 974590420 999059466 911286640 924791674 652432853 767313614 688100946 742953265 366504926 604218775 579369793 953424469 463011192 664178832 602773163 991753726 930319685 965317619 403060428 636746412 177869057 294182636 657130066 747261612 506399001 923017703 162291931 469706398 538033024 574642725 78266770 929116693 682853550 929668373 270328698 637181520 815489733 881685933 156417551 873927811 679430074 915151308 524245841 721671713 510508331 545925248 209003906 421289664 164551343 224601853 926285462 990879567 697093444 858698469 789342675 891389842 351245700 943003243 168178203 966868418 578436206 740995189 194971854 328213487 963921692 989506162 509446131 593409111 653880214 937976568 135466899 211255700 756593207 773631596 590701230 890264659 452965813 460166526 736960752 988499604 246511887 624491595 205182327 596968985 202520480 989875309 234170227 831339630 595445194 726216257 876741536 882247782 21506039 781405536 111418379 132593633 489578290 952418989 974648800 987000396 182543040 192954018 292369419 610791191 755224582 838921196 131955662 553395348 151709803 378239237 644982185 714733969 419469894 493975190 898381674 918736154 840391381 954174337 756152577 921031298 45259840 531580011 282067840 799041870 691314989 717603315 386079330 710198459 887227508 984226028 636420730 920048535 476114327 598282098 837005686 865530530 825802806 910104332 868272600 944271479 817104970 965448856 59955526 299034778 335544241 664257937 623712660 916391072 539711782 598605980 153285170 460878856 471834028 636178609 192699382 429044086 270848625 722124205 115556614 744506697 868479944 883578838 845228985 929700191 214164699 727107098 843105190 921003645 551865003 989496924 365903953 879768209 116153452 901537233 999749245 999898229 687791364 734107587 231521573 867280078 427854450 608569379 655249467 696821969 844631971 899765227 906238147 956324119 308403247 607120775 585549111 933637329 307853733 462731380 427121277 756214619 285505525 505785771 761264203 774727898 782834712 881460204 756391882 924595450 897883717 935093301 592616932 873508186 104124443 937568402 945218609 971832633 169255939 273305479 659205970 984539567 535153930 924870163 479141709 582731210 996258326 999942461 654354944 952380682 699939471 775831304 915440587 945953235 408775740 731198462 903916706 992519499 544776473 782981802 58382391 783029640 25899693 220149903 400922813 425320718 554125071 802674903 216727606 582597104 628823942 837383943 99017957 115142065 417618504 811976370 527753734 939110527 942335071 972119002 892681078 981722479 799089983 810074965 98430643 562063164 434673885 578781228 678794931 714134951 893674628 968363873 11148432 315675433 761991961 905357990 157942714 680534157 537928607 767180866 835657926 994364047 220040005 401571367 875025229 965193541 980701090 992071299 224510059 406659466 949047816 985745278 984762831 995854091 665202876 689404306 27906614 695207380 728701289 834920374 704813601 903803052 929937530 930684920 74943554 575288726 464293311 550401798 167358206 373984438 348333222 682058681 872168036 999169043 935746105 970279103 811426392 833407419 68373007 775041893 574949686 635637048 654472819 905954019 349719638 672636527 196214976 208776166 605633513 763728480 54212198 847731701 988596785 998532722 485820410 895191674 358399139 569967882 490333284 964381316 706626295 727038460 129117668 407498760 808084120 814931288 542930542 569194323 49402964 435578237 490866128 714751402 747256321 841805597 347395894 619862932 447314104 496067987 560980997 673499677 743218132 989039830 99557641 774241484 525795959 771092162 230791980 939521087 535922261 929798327 885550103 913836912 699412829 988668624 120632403 617346630 909033904 959237755 159588557 711135286 372917565 502910309 185327684 681858921 934426514 991880193 599740751 961544045 689611758 765945965 721469635 786483561 435833270 767716657 265560125 462120563 482525112 793973606 357200777 516079404 484490031 547998794 38826985 884978200 319102880 846430114 905447539 931601250 488948209 880906602 275276992 852054982 342206024 686694174 443860330 746670771 420209802 692154875 389575563 499173202 298705408 919611669 405352450 716857239 566722738 901160780 464938548 664658666 698771638 876111939 355134825 918005920 569701598 698168465 645369255 718500680 196203424 289745232 506171498 627817646 796344482 851846470 470499163 898786821 656883631 993893149 856618729 901666638 494581741 801560767 643026200 849734199 228697145 795990491 308405660 548382382 278826643 432883030 842818948 922606375 486022060 629044061 334482914 704513691 455774085 493359995 760237618 922302911 972649024 985045511 874709834 905077529 496349631 956132674 50628508 550939197 158563898 500336326 248222051 325284875 538821689 851022818 115878260 750204165 615978546 675618017 235409157 372181865 176976189 382265230 196263834 305626416 593153830 718991464 614501406 821549720 135413658 279153018 929135651 929536585 971078515 991688664 293389492 418043819 562579465 807563017 537230695 950904038 412046099 630969484 349611926 406232861 149386327 716595677 136141900 908855909 266631988 713930612 290707805 540331230 412411800 590626219 50364741 141737027 415944235 499005579 994897475 997958365 47865515 800337158 667898825 851026871 628883112 985703794 889181799 953371821 192583011 568885321 250313110 368397810 47107666 684919272 162152022 544761282 75250612 313779859 35894440 464667717 626388766 751643827 548109120 802039837 884029869 894699075 818310436 925699397 220643127 514803701 896489512 956805700 473426250 685724724 123759730 664508972 548799023 574555576 435065383 674461227 92732897 337338394 332215475 815045925 791176182 794346036 931117585 983671737 624712860 899943000 111388315 494231743 962033564 998546379 28233095 756255618 97792198 988489377 743605056 960574560 606787543 891551412 256341969 748191786 435792652 452325657 372557328 455077833 660528900 936949395 591592623 672760124 367474331 588476665 1052556 900703016 286929569 782814156 412265829 688577381 782113284 935326878 932917792 996939234 676880866 780108825 569484028 721983917 103581449 942627245 610240686 636094081 138677488 508155131 103335824 126456996 309529882 972966786 642010373 717312532 676176065 864966381 231572208 500686281 363730356 968584107 598404567 816798812 339489053 599249088 68489835 768564153 643991723 852877867 68371303 419564512 569404738 649647379 337778153 465866329 382322843 532067700 2608330 154728570 829317788 844143203 222113804 656627483 429386169 628576118 730257509 919616413 997238595 998409893 20949464 694003176 651442432 799100419 775870448 965556314 27558239 348863559 155414783 333853242 925810226 960098016 7516960 557325293 436626187 749261327 93234514 554962574 62658985 527867322 486638410 690383389 524446013 828766395 825153501 992746185 609468835 708143230 347909789 665892059 249576991 294996847 426012353 550170929 409200071 990882766 41962087 776736282 93163851 103691693 987112507 994860049 2644851 430274165 987170101 995012221 869845204 971407891 867043484 902066507 847653691 897377474 872936216 937997093 914543221 951320615 784761401 897001316 459307967 990919547 135954416 438424698 848106636 972639167 302902104 699449795 669542556 786270052 854577195 922728501 707832629 911684154 470762281 749146840 150050896 917607722 533353541 618846895 468492113 564335795 993707596 995504279 834994337 842702739 353767723 658097678 438121483 697552129 191477735 917836448 130789079 142480885 271146494 313702725 463277444 531179481 346942433 640928433 60208704 537535912 510448307 632531286 419435429 861045357 916144671 993691094 587275490 931038695 994845435 999590077 654211065 944424703 470730877 648948517 656760832 676998460 685095533 883869815 887625253 921855833 869663638 890572887 299522595 312890920 352477172 479881358 630901228 829148810 346476735 734208205 553450700 999324471 735635632 839162737 960035102 979858248 680197349 890226670 707061002 743755415 90709156 372535240 429826993 927423200 289203676 410921836 235555488 392525448 57898792 613159720 64720182 570373974 542572071 734070108 736986819 971432130 563898253 657902487 107036849 894496706 234496664 999116642 552329219 596304014 521629225 523826424 455473225 784118740 353937447 918362305 856702517 986200751 890185124 995458507 257399618 567862654 823358253 875483981 479314885 896695894 560288038 661424616 536223168 768348215 111667262 866616940 908106471 995197161 220300195 754436463 700253334 873252461 603462909 770510009 158136911 613854617 703915238 947117302 893063008 946878944 950643795 983748599 550581418 902027185 888738264 958513119 880180623 959357637 104460935 189099336 429986330 649265161 787776488 951485015 397807592 659426371 422228031 841272108 837992743 880993899 996650874 996667829 991832183 993073318 287797487 536204161 766905609 996945266 404060178 944171606 334733151 851008735 14131284 243050278 623386461 681396416 546701111 901967034 939790217 969599012 848798589 973727331 482408219 868286459 883969593 976423887 899476413 957144495 232045647 382036752 191195256 357488236 57426611 282377062 893894253 992858065 793495186 850800129 870174598 965918229 88984593 932844153 885290970 955100503 248588920 482008165 982764812 996210001 667725384 723707234 475404472 659798119 389716126 765799468 22209361 186220586 122441220 589648335 465086072 689154998 48218385 186377467 826169710 832294295 696543486 912227263 274090949 371688912 49437778 887907822 928760324 962191625 466162789 578840098 681814386 805310634 673796086 857687631 927233137 997317534 353195653 379860760 178103335 579053403 259684611 474420223 263299626 531944650 791346396 921170519 793814637 916292181 663610965 895211612 141265051 700278903 520445317 682605027 475431376 821276221 196944109 343889801 306721487 861097376 240162776 833348989 919961765 922753297 572116183 595961590 691203831 815118329 711729585 900380952 664132634 689930955 556862036 980683210 431597961 871126497 972421813 986647396 105825363 749886904 449668104 891030911 269065057 322594860 408674278 912266694 4988530 606997183 837579619 851913140 550002565 583969145 503406715 809351459 130561642 535097036 511897421 885999730 257376362 318410269 887735610 913985519 625929948 923869421 905175214 925911697 885521809 923124546 34347066 532969684 636057329 882875576 298252446 909837475 136172940 724253602 976597231 998298728 842656608 975285536 253144262 781009035 678667330 950904431 876389632 883259312 375805439 574340022 744596783 937947316 128182152 433511868 24023952 948392090 27410947 528661701 748607192 940043870 376107350 853252040 780071419 886846425 284746002 439978206 49746293 804945575 751897491 949539359 483033280 873705793 309892131 481044203 806332637 855029040 66929385 541014774 681848184 734150157 793458714 813987990 291382792 443805842 582048969 938228965 771860958 872333266 794477479 842195929 171447491 684426545 846763254 977616422 83655861 760508634 190005907 640107344 606763376 751040932 892233882 934046060 848278086 858389324 802160908 982993002 84094039 804730232 425244865 615970856 831649996 990341651 486791502 772088624 932430102 980519824 664692620 897880097 791764338 804140056 969127908 989681256 677469595 983465619 748844985 917247670 435398895 721233138 420339261 839947091 245704508 569461481 944152821 994841284 366994039 715833572 66286536 589377467 344446408 444368336 824811610 970248812 994480193 995788090 59178186 351340086 416731681 907986553 118198795 264057421 114880671 634659554 466662445 828235999 124190759 975674663 180567674 912568161 835363571 926017096 303152990 474152504 505462412 757965262 731246288 994189736 132277835 373975371 846516561 934444734 815100198 891781942 504869660 729817466 235322619 330162353 786834679 932341543 113008867 768857834 422239238 705659876 755209872 829424003 405996819 734456985 712401220 953806564 522136968 569636399 354585676 546547471 110582566 167810843 137199740 580513447 328471303 906270567 445449070 486263568 559719777 838865222 388276976 637606480 894491975 979053870 957072966 976276730 119715930 992761990 532974240 612489233 192115211 782736903 649834659 822922896 384371847 908680840 232583656 470894031 134723477 219503826 578379562 963012338 538149539 728669549 160685276 926992601 939562834 955983873 993644434 994587619 439858376 808159563 830636407 964429781 556715977 940214083 174223174 916977901 156984790 878990067 816623390 821528386 354269599 415802234 315481122 694729283 366683463 449368352 248696818 422181390 279530459 363176132 271629446 647217957 242377764 896538480 117700048 927891934 412781646 773649570 738972531 925588214 389194521 538407671 655509414 719713847 786919229 847063132 629572582 663598487 558331162 778427894 622455917 691277955 631505013 766810039 951505897 978924025 650792005 815549844 865026949 982413670 728877146 776087187 553728377 937913206 521427282 964932377 292455348 731001688 671579971 721555686 684531327 769893838 302292637 514293524 949575742 962765048 848014753 899830913 341858865 761405989 365050949 910856489 564777403 803530939 914743048 979172432 903459972 959188471 125495814 299264829 924280669 955677656 806286935 918288142 316972026 780897607 265154714 355084956 645205858 897637105 880037137 909326433 331152415 555695180 804231595 882184571 837797679 964665167 444002637 701891846 718454004 931024999 852670764 859078636 740137183 783946317 432738503 920234244 655529122 830685670 111123183 212267475 146353657 827892752 579835530 831435214 791664863 869316689 461306768 635726010 647801431 964323794 377222322 547018517 688386160 967484676 304197735 610585928 315177669 994136513 204132640 560841481 575124351 969830307 119629013 432504091 925940235 934244091 489358146 668686927 828883247 911768331 437329420 860377600 430382412 833061778 981487927 993947337 900609213 916977712 96151485 299425621 750169148 977902873 227357930 551094493 12767145 85292494 379894441 982514613 382526946 757007753 866268234 880556709 957426879 960732657 837449793 861007125 8848210 705073610 672084474 938274401 649836834 798688539 362597618 971926736 626078235 961030452 557422283 824067830 746406487 861813252 929231273 984719596 756511744 823715915 937444894 944497086 431860749 817372108 933912593 950458490 335420481 892312058 555427889 598929977 864307486 908363705 327373438 565438677 423247102 602791412 538050921 878181668 232022249 928090672 201061137 866603192 112181215 441729582 920021618 964992335 741340279 838643807 860011123 932423633 563676286 901639460 681850099 980245101 682542110 767861710 470731494 817311174 981479763 994823347 928945200 990655507 393459806 482423384 559361849 632974350 273538339 837342446 708712142 820865985 633054960 928192079 555675109 762122875 667111726 860730678 253333566 985644309 52568452 166245569 759534030 927306751 428242538 996460684 623083220 986799508 786578775 882918184 66066743 822518994 702638749 970691528 403443900 502204563 562082338 750218337 851772268 876959367 726848137 863892419 509363973 637639582 29378825 257686891 936341246 968154771 800509223 904297940 364886028 551981784 728561939 952578764 79674499 633157104 609735179 853667299 484591998 574022214 240589854 458480895 977003948 992878086 425464127 735979211 852809056 959079540 273921592 369945091 567510224 667471514 19461690 761194384 960049476 974154671 664479382 883833297 49346881 815819325 960543917 981446294 704626936 824376139 452762935 557967949 156573427 317252349 142523666 601647806 875257651 877200271 338695513 592634381 725048718 992082790 922213102 936361873 863127846 919843632 312357838 550965068 149620381 872672883 701411116 887583914 909795027 972745990 900918397 919225300 197709144 416115892 541231702 625336110 899126272 969519376 938261117 979305422 715496171 970293686 250027679 412144955 839615699 842071291 155217055 293389657 528974992 904398221 767915417 885455301 531702082 538662499 543668721 556250745 266814367 743158438 270410286 594688023 22052751 404927799 60436474 661599527 896281065 977678599 848393622 974350188 973352128 976094574 183824440 523857434 640134859 973977635 342905409 946032339 210529446 788165782 950081935 988946088 396532899 723962761 282821699 773288572 77198468 550194732 12905026 954189316 805786564 823095192 677583850 858671789 971008681 982473686 228811023 669249345 19759784 932909949 649364374 984596430 47505407 990488147 392375449 985541683 106429977 364053039 554831364 593137946 995123444 996912380 967242338 994747558 323754202 389710633 873349967 919883857 678588064 711272012 777185782 857458522 987475035 997679842 171715717 462350910 98770990 320274166 436697133 981022781 308633612 451790156 857804590 949143539 264789119 307923888 37146386 330058626 356575897 362297438 792515876 897078247 715349557 844258325 420804641 751732237 25265164 794437454 916012145 916996429 232176051 793330872 752597587 985207402 489730142 579370666 249951768 757745900 846732947 881231596 41097430 163984506 961613663 969702757 752181322 766172067 797605856 976503231 19356351 448409803 961245570 999592868 89717160 521254383 374327673 474015614 977860858 991107657 270850985 678189801 562481731 993424689 542069929 784033842 336675010 543303321 637044014 675798090 794887140 803895506 412503094 970714056 528732125 562928070 211888636 421774049 563763117 752094487 912584889 948621972 311126554 792076026 330087352 503021916 799905917 926494890 253523720 552707046 526894390 540026990 173584510 177416942 362509012 490681322 396115292 458658277 436997095 900349599 680753845 788923624 251350668 839642167 180251393 858735095 374947242 504834122 183798279 318213473 752102624 983457468 434417783 983358464 256142365 590093163 692360068 861076882 697515818 925861484 527134612 863718027 315258403 984448153 219776293 476655873 524375196 859576734 735260748 857178219 355603190 472272325 790973569 933289888 357190729 563915913 518623110 627265899 81552262 543746622 462912189 971566083 748907773 866107829 352598756 643202145 381225232 873401609 87512905 711903199 56052184 138737154 346764892 414477577 485073168 721718466 381494611 656726465 370737440 371066319 227623702 744363394 406734948 415109555 279249250 397918256 685928891 897499071 749190341 831328762 981383255 983944783 325108477 704476157 330447621 857426853 325787705 369860624 651448083 695732820 81306845 821712561 162455071 855394340 680546391 923263286 459387785 839767585 764292665 983312349 919731680 934315867 959190628 976647047 672727027 847532793 588624067 701126159 163157298 210579578 2062394 580762207 18916668 988649443 56142615 708216575 71225555 369491842 852760980 926908758 795097503 900180537 582106883 880577776 287415734 592234596 437940283 714107154 281988040 882664091 341685334 588184502 84705785 599114152 806778493 912970041 671836696 821537034 526319125 783237533 220807998 832365553 256705250 320309242 4584385 346544635 525889251 595516648 257724698 667757090 678805023 733340588 1805532 690132895 458272483 973162583 204205486 798229744 576245947 696311779 112686184 699762646 676611641 999541658 66425824 145475306 241556171 620016444 251811035 595979904 711594819 899007359 11401960 486509642 216630984 477921042 127817549 347033093 281663306 437917216 470571591 559172981 922125209 982852819 957940664 969614803 889636817 902433523 838164601 907508767 527551571 596427492 889870039 986644342 323304277 633646136 953297351 985991620 743477150 840219764 677995794 931746799 44083778 322108808 362744383 754730086 616155723 784175762 149171206 474755563 200891215 753228630 779326371 934808707 577275180 911630255 944686753 969690374 996727997 997773266 793339192 957370937 75835834 470140874 88985010 107703947 642274283 942023252 807063722 828940898 683866178 935386315 471371446 521662832 756486955 809043721 766566330 852967711 67152286 426559363 65281369 464125732 74353231 165033654 476529954 539528141 237101508 270870304 415863845 983343777 461373306 843667236 334402625 547065193 459225920 820449279 859430010 988971012 932839556 984482518 23357791 725923877 16482611 804168233 849170540 867448272 272349679 829390173 586451447 672339969 133079280 876089676 241858266 854215615 828956853 912104849 347922660 797253825 827880390 907478866 938643058 949704930 227575782 320629560 484176701 973826254 510246109 861203482 259154230 770820336 193918837 372789001 13474050 406815606 826219306 858300710 674413871 977875629 495966289 992467112 111389524 176795596 144915630 806440400 596287663 618400629 409325621 889045092 628240199 725198363 573864254 856614825 724788421 856538808 624969087 867839788 322813726 548635597 569683462 734632038 67941143 513256376 825960099 842281667 721445514 803363779 787238923 898052519 567206810 999574492 386122131 711678297 31720313 788531217 536719526 815977507 109908135 190516227 321373776 332570282 970886598 978960535 245061386 952326084 717360732 918851245 259235579 487434853 96041789 635890077 288018383 709033813 81403877 744895184 560273042 707937054 965333985 987658539 676744422 831795816 548032671 954824496 785885624 921001539 373848792 887744544 55127342 231937217 649619180 736587363 999303502 999543116 191511384 662612406 490832732 756373842 198760803 496144303 878328620 907488708 669248876 772753018 426622941 726364340 24606009 278368704 245177419 481056929 719558121 906399936 712188819 828687582 647408076 698711813 182026895 431813413 575941611 776800430 309358820 968965281 323082514 487030522 672831462 880579071 473048315 475361756 910910795 986685439 643445805 725860254 512080333 803321906 547896977 980684782 731119630 752089696 936001396 961211232 918644206 926939068 500071045 893531339 151554413 334526411 495098609 887059879 228673883 337847230 425236240 849432565 690150460 829907154 705201052 978646049 636186570 848116948 742077435 937677478 666640720 773073924 757076681 970878788 121605668 608391566 149546493 592557003 926586898 967700554 968406067 996640593 796562048 909187511 641356773 721351340 880231720 997166764 291029459 738184318 574878145 882611576 906748434 923170050 397119759 609494634 100523008 861175127 466077104 488038251 493738787 546029653 505942073 536638121 360912167 711169097 242249693 284365040 655135156 849213757 397750831 969165531 460152091 989596587 488738576 684139917 266456296 315040058 398108960 520340284 113676875 566561903 32946474 520423478 840714929 889339146 356432396 495298206 607451161 667386294 155288651 906460975 422017881 599916325 313774039 662903898 912467918 924914972 596906316 732863562 185147496 308272831 478410819 578529287 321378205 592304090 429988265 752054485 868768123 915125385 34710941 893585803 39257015 849248126 850116348 887192798 489269342 600974264 237035954 961400558 491170222 848426705 746188226 810587403 429126355 828168918 545356046 730750731 668438744 786077465 886595808 965408002 535173655 738865574 643470578 908482255 171464902 389950341 754957635 910963772 760567410 772461629 447414142 610878050 88703543 796565139 259579718 867498361 732981084 968423847 545232721 652537779 113343745 856015993 88127544 454027392 45929507 741137635 818836213 866282953 184406507 817404422 274733979 809947447 740297537 965950670 369914818 525746645 487778055 895887747 608837427 966586935 970886941 976569655 749615120 783432676 997656484 999951740 96099581 126801518 9048723 681447303 154787839 531499027 863018429 935505744 38927594 737877574 539704554 916239768 573431428 706722269 662631531 675342236 210931447 951278657 334189867 878628144 134134989 875643007 815219691 899316813 975075151 977121931 106618580 109068740 229930179 796123210 982423057 984354126 896756140 926751796 174868113 544962964 692260057 967418527 714609378 931592163 470823663 541157856 911450213 978451248 185521813 970064939 285699207 904112791 161374248 788083620 792138926 863571750 476650849 632255607 677891342 836006716 858599589 988473108 465365651 700479216 770863439 922346523 617666788 878188028 979626540 986319586 97530910 248729838 10868167 194673632 787540837 838477780 296630252 752332873 680736742 946339362 417508248 554899063 548820573 977156686 832716821 879701229 942840205 998575127 135381293 446967191 174414602 512279514 382814286 884050521 713908581 952309701 465764823 889880938 793824169 919773431 74772983 614848710 397330365 549775093 277243830 956042989 408903281 523491476 550596659 768597362 387000872 825338576 823494212 950489921 334495223 497228241 1813033 479135041 292743572 460170433 854196863 923250856 615432700 651799545 297784613 909161252 399794340 915707012 384430090 589485513 262065928 266155125 431151529 471231346 906501437 978149539 107740105 768111628 589108465 884508998 269820926 428965662 465453639 619810620 293948395 488891201 896842500 940536707 789124740 819691961 420299967 704090643 730155627 751950427 485827475 769039969 662839745 678619251 738459807 908163131 739220467 746813688 695174499 751801460 353698639 780802573 167448702 939051898 906880327 950751982 649059721 889953653 185049086 542078011 194208220 873704259 428869057 816334479 462152861 567439576 71162262 234519418 229595181 678781295 288344441 779030368 983094633 998519883 408713455 755218845 605517301 648029636 325110280 473770087 527294735 956568639 797620211 809332033 998343396 998987480 473523522 542320073 195856472 566905937 835641567 989908290 427619729 830511083 920488289 983716186 530376625 655168479 585931416 646241043 163177183 698342490 586682775 627956332 181663379 632662658 74010434 276751965 176665974 514279710 968926674 986485419 216225789 897914382 999784030 999797889 114369505 202752151 763190794 775321127 253920278 642595230 285312281 410794410 538526916 768360762 67943092 846309334 678682070 970444110 214205931 639859145 465366240 524377214 567590230 873858337 852666169 988779324 583994786 765023556 320267110 332695338 645433783 968529896 836794430 887761662 914169848 955485538 792244949 835410640 998929215 999162815 226900811 905819359 329278281 986393108 567587348 677137634 982984913 994414985 749570520 928225446 842559527 947997349 314264179 518369129 52009004 497676064 83942493 582551516 968669961 991518406 236668875 786397855 639306256 704583626 91281930 482134670 706501543 852340711 634218858 708442727 567026003 748100137 6379450 68911272 47923884 172968291 586734506 874350589 336408322 949146510 204057702 884606940 704720077 776122852 966965318 990770455 679187399 939579571 249372824 439107963 546023446 700075942 880123852 887917900 46932869 915680739 348789887 617231495 349234647 677072498 541332707 903850459 455192063 464883804 861128622 928455713 415885537 651048668 363175838 775089554 81443894 513058196 115534605 299313755 880837513 946108521 427963210 749887666 936808008 990238520 488126042 936838191 539108036 586922996 997125939 998633483 975338786 982834096 884347595 916187938 225013487 547130446 449829669 794015526 383652106 914656126 276909201 487554695 806675721 874073814 395377598 604481529 330191717 412534138 257845854 911318075 752423847 936549949 832040831 971551145 16472601 546981012 774973126 837635993 273472384 694120312 614422227 837543629 889957838 937347328 808494275 894600612 87287685 834119285 153988013 899537294 14797612 844441531 129648150 915713647 742430784 910419773 240332938 325786081 687352945 700704290 826565796 835115147 933330705 952458035 114105082 133779572 172298442 616228430 672011284 751895268 609248133 952597017 945334690 979331236 236556969 795035751 230452890 667155537 371427801 781174730 647680743 784103932 343184427 889705078 330676620 535147770 815191796 830881012 998324106 999838993 532112915 777535536 952638194 985424311 237989431 756894920 279955918 728017907 841252287 952122232 219146625 379291698 618116711 995490548 527995255 562705052 71793237 85252886 652565184 960330357 75120992 190995012 872853089 901545489 795394250 954318381 18559498 312706942 16122707 134546326 505772174 692393953 149018113 490779066 913785208 954518826 260311292 589014042 166654889 630502460 943733173 975075484 144154513 331754228 609464111 685636104 218637451 369238288 314444225 944934418 449544422 598213144 81745542 615532839 629850896 833749192 294287718 890343946 178511692 932698662 611875884 760869180 191083321 461201881 579753009 704108864 272543948 568861346 87013183 960058860 67877720 532194000 779405544 787153778 697124123 762488361 480649765 950274215 458793441 757352459 321722653 992409292 220705632 300118198 823342734 974371407 318214741 834492009 334620663 467099751 219608956 805624487 67121459 971461276 639598501 982476967 711330296 954530031 518860633 984036414 142965774 239587725 32218268 418842986 16562430 970026751 717115163 911034397 133082969 281147088 457539547 865601974 783291535 875549908 999296214 999960961 945153120 997227768 908972496 965826359 950183235 976947876 779351969 920143734 334478683 952032283 128807913 169819370 651055857 795251683 173120717 378333652 878888069 990986849 335066000 711195024 856957093 918469109 558833262 573572906 444037053 903647702 242510585 962718067 666548226 979352225 584459263 964104140 518710528 971963427 434424397 485450672 569528132 806483487 930757412 955753314 215839688 808386054 684478015 704710174 64644244 644741324 191279055 652501895 805613780 948743844 518291803 526940069 336133973 554485077 130764536 552721960 331857932 468294884 589362775 606045557 13238365 633457171 935742194 939602534 157136054 579847355 55914174 218075978 635985313 829030137 317117230 634912178 735597964 793432476 712824449 721049668 671167416 691962197 448015569 878319659 214602942 848580113 199007495 223049277 785851592 957783020 893932056 985399534 729151933 797374974 827744241 957811546 180234879 676635024 472568332 920923260 843859839 953680495 740970924 959757948 614857470 827722493 436208256 855735934 443387224 484220499 153162130 809043699 496079890 690504476 119502699 413698236 452359547 804629557 591683233 978853563 107698451 200814966 838542155 842278369 412325896 925889496 974877928 993089857 515210958 897909994 926108736 979795965 793210597 972915526 550270482 768758475 806834109 978812401 709456907 903681401 803323279 965941623 172028227 178482509 325772136 678055085 366646564 487326837 152642629 607868164 617526076 968861739 401014994 669770055 239255993 857689452 802012241 991227146 439403057 926538335 872794993 903952911 696452620 710215883 84402735 338382634 587784084 655794769 945116824 955179927 52664509 335492685 807649324 854670787 448885724 777452847 983135964 983880218 524523710 531813346 673712189 975211024 324653762 347506043 798614316 908290220 593997679 892193614 249034459 440495600 244835184 350953541 317965391 564709334 88691165 469177289 646335157 683541565 964751022 976527265 368057122 818125359 478701334 582571009 593603136 851137577 990183131 996543432 704964113 737498945 387009376 597343549 657600657 711428889 118425807 376743885 971041952 990464425 330258933 376422193 676406717 685219047 477553171 534327622 74558862 971738602 356519002 576389131 486877871 941623587 679352190 888080687 511519151 625431131 457975908 481518161 524035064 664828060 869126366 938489698 288329680 359896607 844670322 936776047 370549549 883651790 193598783 288718957 823740172 829785050 680772191 967606580 716103871 879350411 433092057 988810709 500760062 624879860 518811869 913226959 468489686 721492726 473592361 655504479 37570697 592395660 165891236 786791703 711969569 757482874 90046917 926617959 316485717 824492066 661534551 681794673 968377830 972762489 907587628 931559078 155394974 292021422 84495361 913786296 164549110 376727749 657195113 889210241 591039515 912343739 330001613 446078366 311634849 727212158 180142273 645328969 612998211 776147958 766967854 851687755 45579376 720066699 68782446 447691085 460159235 918043568 813784037 881000552 19311693 154380409 884910471 906133484 590937418 982750769 285336297 487063143 46958227 149459801 118803726 492696285 763780045 935470444 2455794 269349169 209520668 933934778 450554463 862516988 703576581 824317283 195206713 240939400 692072942 873792843 205531786 279299042 983900709 986273863 61824846 200503141 202807780 518772764 366661923 461204270 729302084 940760162 908120370 966277511 658670302 793612816 64030438 690893044 328942287 883149595 439683887 918590826 827357915 943105029 981781561 985652134 628914991 691864260 180881180 683796387 973782152 995731989 252409805 329216140 310282816 732416672 597280619 701098359 569195607 725478316 429712393 616538871 810665506 845743999 106039417 353632545 79090842 686154103 660659586 846521862 193951121 755369727 407858378 982619123 56209787 380231275 961540242 985365344 299147295 971760470 438158316 665365672 332419771 398763135 642228689 655159941 875878457 975628515 769224809 857814145 725783361 859504659 726323288 887503147 93384013 666811986 558722177 939942450 57982047 485966253 958199972 987932444 622393384 859348786 844979197 874050396 423927699 905784625 122869974 581104100 418550292 823707094 789164822 950208166 944492945 954557227 527419543 729078044 983430421 992943721 707715903 905349434 116737419 211849416 28273444 743889999 788703155 793505735 280057582 630140523 348658440 492651010 85750629 143845326 179322120 614329487 140226742 391227546 642128391 885211643 454366621 832158862 420871727 529273554 897774326 905144927 790251471 957392302 435431807 728763637 866284559 943074330 772165990 895569539 630826411 976055834 977356930 982226779 597974042 834583579 115736202 194506360 849138204 926162026 789039587 930299651 460432560 954397891 356718505 453624729 17205613 641207766 399326026 903063520 122455320 345891570 20496377 873844293 269506352 703063713 707504576 739085885 911459511 986142443 833465411 991247062 258218884 404619895 676407627 847631993 571717666 679907887 143380339 426545344 281871175 553354963 59252123 817075366 957612396 968313321 155024178 182526985 977522430 978878689 375182472 573127442 605163975 850723743 119292773 919224076 114258897 424175697 204255169 544068539 804801054 816726112 801536149 802858954 372254602 879776857 442840012 974947202 701196177 780576024 139850301 492269493 978209142 993124114 850506042 929878194 769124407 857358494 811494921 941653870 385703277 801166811 740559873 868075799 406810338 447296327 967395485 980664235 269307656 665187167 238647028 536894291 389477036 902095175 318553790 634129203 69004266 896928708 217215181 977365761 948214060 994584267 898090490 909528699 986244264 998243053 220879831 269341182 949751396 978844057 941241456 969967440 529210663 705972219 306387419 957395102 669359766 696095616 568677222 623237257 312188225 386936840 799525830 999072392 537762673 932843361 708232375 748189794 740574435 798742077 724212387 863169014 429767593 862058112 954700891 986954774 44403274 334206075 985570267 995072664 605950009 945641243 983789880 990856470 430892013 508272637 788689215 893044281 650123122 784152582 876009002 878600084 84592506 147819466 879727975 972460271 436584491 469000106 888178900 970275389 898355184 913232259 649065211 869818152 854872982 923473795 399223675 886801357 437036076 938586330 189131052 549449861 882552319 936722764 411289528 589350391 477304605 853746710 577113343 906209867 955171194 997291002 131915045 287921412 359245740 469697711 125601193 220667095 861768494 996256800 32030143 421536527 261881261 784450897 736311870 799067330 343305397 993325831 592288906 775003152 2057192 356320540 731008450 779335126 937409987 980569013 298544818 550023102 283663017 635983519 781878833 994665671 120264832 189334547 885219048 928513676 387531744 562789357 883127893 963480068 126590747 360311268 423123101 428441137 6152079 343508821 636378515 662795523 151333819 286720395 309838005 454651861 856625929 897172186 876800089 991013488 328127671 363663636 582288344 958720845 374764949 785456980 402915665 747366069 115382148 236297019 222065939 232234388 713031281 949150875 759322986 931911737 132663179 868707037 394474039 806750194 700823907 823236699 367280759 847292995 14381671 825601998 272774000 472856461 27965331 339364300 632720802 837158899 500852239 779069121 802930190 806207980 947557031 956559158 283406164 550966150 838945794 931830315 284487908 826069500 123627614 292843949 365613114 968737710 843221141 896754838 516230589 635371002 514938914 534892991 377870490 839646014 692568427 995463654 689328688 912830506 222203151 531545821 879049798 882420310 264512334 552985903 194826939 421315729 130298192 377236320 47205609 114114752 337438930 533761533 57936352 433696002 856918283 948047274 144068427 483544425 511119894 688160406 899919598 906218258 565462094 966570282 969608204 995279160 944304493 961015376 467189878 533652350 356136091 699571185 906390420 942406134 578742708 732517762 788457925 959539662 280076243 491594850 473856374 533808569 216640821 968664308 845989152 975182141 420158087 684219828 951299900 953531962 267866139 766905293 120823371 707891021 951555379 956734892 896245850 983127430 262143980 749037336 333471140 559719443 992600711 999227315 466957236 834422386 375775024 786196213 518247737 623708536 668939822 866094559 663885549 795459750 941672808 992459272 615811937 822036855 301506442 968038381 768786331 801540721 924060237 993559545 916662991 984064742 264643385 891903805 967384821 997399519 386590069 544546035 340993098 452559914 973766923 990123739 174837354 405465584 370099211 875984078 3477979 644112008 637566051 689457200 592667468 969262907 836329147 897007616 224918714 676721423 444095819 962559569 308485188 514917214 962961472 990601727 273648611 589832469 603737570 961693729 277322203 462811865 589110365 701595209 81641395 154372242 531298891 654816208 580354988 754474190 867190906 930359738 968047263 989243622 153395688 246978125 949258936 970284635 610028671 665626527 439537700 504823015 952289671 958735932 536836135 995586531 152262192 675640424 25273562 181689630 871674010 922045223 766540286 880031228 568787482 881709929 116826107 154641883 327608333 844426601 838338023 844412967 355713550 825308438 34620697 356923137 89054883 566549363 89727646 893970567 24933991 814842409 565514688 786478257 551937984 672141517 119483032 884132765 689041662 791855631 641188773 803366321 703835798 927048437 660560831 833787223 663706826 865553279 490855514 902127190 509603233 511720617 826286129 946638870 534416795 575560766 244929482 294181193 794982393 989574174 312112214 546860185 559241661 668153560 157581865 771345004 572325430 879978470 462901371 538622808 898672797 939878117 633271110 718217241 239678912 506887573 901262152 963851115 928702687 954119750 997349073 997632772 902530035 930978680 119253767 785243109 711434512 824197783 580777546 730473616 198036683 444023413 822361511 982572064 138414901 148145205 781427730 839723232 613552407 760273553 309739066 626700473 691761214 917500393 601856158 763682592 465090472 558968299 874782147 965640648 684720657 891527369 504136650 914101051 96074431 991849415 287337317 765748056 536942125 678109695 605258684 989575222 940872558 958167090 585877389 888861085 156399696 826921000 637441653 773950529 68160157 502079935 457178632 482299010 487499650 770621129 379432776 600610584 491472793 495024707 531493282 679704660 17361971 115404655 342440856 549087991 452710900 879725403 260311407 726791613 654226155 985844363 595336286 891690836 396542638 526047703 55692423 576404910 910125465 961267674 669122303 995918184 331215918 462806291 610288085 951992363 525592422 992029471 562641504 721780848 996599976 998149790 15517583 582969036 752766981 999474291 999116357 999593502 108665962 740635867 514973615 837683093 737341927 901774635 780067539 842929983 316256770 884727300 29433717 428499029 157098737 475367381 228078270 283304771 135464303 775914911 12482444 728355773 439997602 637472963 6320760 659560750 944383853 970614419 913142519 962947549 339628584 896019483 396537228 730677307 451429866 893485958 955461654 984788804 656029303 748889001 285921803 872556055 57916173 608031320 889271993 895734814 980111837 988178852 86628489 991985057 198376837 876498118 602253906 814588281 83608334 724581552 895516644 941790172 422544766 994282435 366547226 849890745 453034498 755258671 137084151 316976245 557477696 723747403 939337579 952551568 74655947 442947723 626246491 710118481 345317626 821435874 870538955 907840087 368385192 871709264 544197482 948969631 14771211 746511455 635843542 825810205 42656203 301340464 870464118 896698696 123125242 950184382 619984010 861026805 203148114 909350088 645679787 695800289 844050678 892466543 238250604 802702559 472495001 644153655 500614160 599177697 462017375 588360658 542143218 831722985 728897426 825303080 417982069 876976645 504935359 697155602 901997368 906155823 657151559 757671795 990330349 997215402 115545542 669480563 136176435 868358962 186604277 801436305 986736874 994064586 461943616 538534939 758539342 901778806 557084988 772160060 883196617 888801408 623307892 965205171 395854601 785776045 963177887 968013654 763609046 925773906 308146429 811780581 48527005 712112271 758867727 896744201 910213780 927724359 781725419 964602186 61728678 780079933 893357327 966901918 325009575 524665294 893062335 922491958 949617415 980205106 205665739 380108240 486694924 717634159 12266309 916653176 191396727 347541954 151939353 428157895 914559677 991812083 430561639 764176752 212106923 251461757 342653088 658227322 283080988 979877927 185406374 711379208 639592351 764767270 656969051 954237365 60815016 370551071 443986960 608368276 650065315 732059418 714758437 722833464 40919143 556889609 524187497 965931151 781953766 944390902 194091439 540154038 10531264 774955916 271460211 575786053 819705103 982613339 342977876 438453197 822107520 930810139 13211489 405094218 129645560 257041545 117121325 183535891 647442171 851754865 255609849 901089320 561109303 953625987 434758768 555736247 664445929 793363347 217057900 519323283 176298420 614971369 607777108 665234659 260742480 980225777 742563539 848815664 857388198 858493354 563332023 863929364 610641406 829806043 151254798 794390286 467772792 960589660 819614370 936964876 850876960 872526564 511065462 984447286 663530003 757467183 772813734 870185346 495205325 635547285 560945978 779748844 563454304 913124398 573303659 875946807 5718282 295151864 115463234 973518183 309959074 716688858 653454725 783918031 480592186 667919284 722273730 764085628 375859201 984869695 447523487 652478354 674584963 747375571 154787678 725176560 567716678 581280723 875063150 929493412 952508313 968507862 35877233 426067212 131503168 898964259 20945624 402115417 375989192 741225047 199861524 436926285 871385174 954899503 924782610 982810253 865030439 953640947 309869192 385038577 973350737 989942015 731110856 758313658 936953054 996304081 595225734 666479346 669159638 731236594 208193956 954742461 773781827 931790154 168446617 353944865 415031004 754441138 291960980 869228790 984973071 997800009 230947984 496522914 670202365 789053410 59975781 100047655 105079454 176080540 241683145 925568560 91342556 997250153 583908832 735816090 915179102 951042146 954280617 963757969 304069175 510389461 925266882 950386743 985073397 997808582 644098239 708800603 871422334 889979423 755669585 922886322 669481998 885610234 492750314 782201916 158363968 441664480 154512250 927600560 138514806 369149480 154703338 278547812 46254791 425718480 890249703 939332218 487735876 679659619 311150288 510329965 755789220 778849244 601434698 650574529 12558627 492318043 136731170 171371511 470592068 932212652 555201689 962350502 851628317 978650634 767861228 885257425 568310454 585160027 331677583 749507208 925424685 997937741 412187178 520368068 982505635 993613626 505287725 787362399 989823804 994936835 130824062 192125123 686758869 937712698 453294862 706824279 259538121 651140522 655605673 656381358 296022271 655741712 478355287 777257301 639409366 844613216 67281051 74711344 957214881 979065175 254940915 959282895 486873030 914176696 683313034 762754115 724159255 828351145 738070257 836427995 750205182 910247668 743917661 937936852 360928895 839776939 654272791 803475560 395254752 697234042 871061105 898335566 519395477 994835718 409411121 493848881 700680883 909713657 97995934 960411807 315916225 550472461 995171480 999054358 478479160 964258478 166261173 341704904 550727475 682683781 810093803 968094770 165945197 962165972 292185569 413621177 860936766 876953581 136290031 439434471 955231043 958650859 676560508 748307619 829767241 934133375 141455349 252263484 821081299 909343955 307357837 889566070 825704723 834380668 859709348 986643895 267022032 922149978 16577962 694742655 744325298 897572600 732491652 748037252 586564329 920672067 790839460 887980757 891090991 982241910 181124219 466767915 92458936 99770454 842938229 859598339 787880155 978649956 464567050 708322952 442062589 655311913 541314625 946453728 904768579 910810766 694468691 699029015 969618116 998421560 797394542 963143671 904675412 970130220 315933452 456765111 743822959 999726285 788640087 948961254 40118710 661508173 993305543 996127107 534449749 980681720 300527932 596895112 874467702 995445304 533740199 683232281 33069264 572660002 808504411 886234571 997727846 997986283 436170895 881494092 983929576 987902494 609387771 954608825 631543635 709095636 792519670 934859373 605935868 634851584 708164801 888458029 434683736 795378298 90085104 164976562 734427411 913167052 268152803 365276193 529541206 965659148 976677151 981161170 690884396 872866215 697213573 892232378 744539773 984625548 891633040 957246118 608404115 927390571 823492224 829974868 408061230 661536158 148886050 410074654 88112972 294226858 784694848 806250828 3585057 736767781 729806252 822472485 52554322 846119522 60941769 554919590 231090296 616144470 646743899 711726119 577646470 787647690 181412967 823640048 126118328 255977322 489824575 695522656 139977067 569833219 826131663 935761962 31739941 941176648 739129806 777647448 224472694 819911795 109972122 964440427 882058329 925388595 618418248 791467740 427208161 760725417 955858264 957705701 398751730 894263401 452295028 844438016 218665097 932639513 255982837 557156738 41308615 593066401 294061906 587520043 957416279 987545200 648618742 954584371 864079864 989978096 4060273 891844381 291853757 797580192 718672709 853043199 962788371 967436554 849901910 890794166 422567142 768391951 968371130 971539279 417645414 837210280 858703613 903913962 495674785 665482784 808854512 971625970 745035025 781645331 88442986 290145341 790449497 881457654 470309410 897575858 129595606 811320439 785277856 818007048 417966113 617482158 538878321 712868102 697241686 954176329 168421078 240141403 136253667 934131027 516099676 963522178 711631338 944612855 983281240 999770610 428590875 653224957 50270653 638714015 247701460 416471212 298436514 511722253 523712762 746916324 823647590 865876410 670436847 921885273 541847324 694716471 658505219 944862947 271136876 792844439 620447771 938677858 160674889 343457948 23180692 557628485 404707382 707319875 15898438 346461107 191796103 578614254 594328250 649513473 488532183 738966645 930742992 961555534 579003461 743112429 322056891 833731128 759545669 983476032 911814425 989160543 455418982 965793905 284497752 786444813 709699842 780855929 508570612 628808410 422461712 942406964 126592555 145676177 822161357 891775400 737053415 897655827 738636838 923285781 563036907 877479749 822623822 906250748 759605754 768789216 111715558 288497625 593640518 873274337 609481484 725006669 988157894 999249297 909166891 962622479 633659826 973820654 825439976 975486535 433048366 909722557 361201342 871115324 505774180 568799050 16615541 521111223 15622369 516296214 227352697 627471572 162517027 991265751 488032061 841728154 583458132 756168700 313928569 984609232 265422171 603672444 790508579 845610187 277381287 553934439 61243149 498338350 615312218 656361857 229094072 641998489 249242536 277727312 316052048 668014574 549409212 663484328 164170944 733493541 676537626 750869397 26370045 272751871 993380648 998812839 798399312 863148030 855810486 937134408 478512832 864365163 610447392 907300196 966974441 997366391 64286010 359245550 568673254 718819009 878896669 879576262 59525787 678869548 958369880 969417771 343914600 847180589 539261445 737493469 736790951 759959049 602860238 687455970 874845767 973330401 108341093 678090854 520774418 841832622 782775181 895582037 332626522 482334596 217331694 413613597 566632864 794231927 513239116 871782592 667705193 813628759 358508463 597952152 876582707 962499604 687490070 710568208 824220600 939348062 510062589 519653343 272829193 980043484 579439665 865276553 10427098 290038433 194440805 915272663 343644659 654166369 293614709 612158004 970227126 976140243 933075064 980490095 4919375 163448684 195932827 775273668 18329842 246543466 557135187 831724438 888546619 928326621 815357163 831088184 216765277 908398242 965951510 986305237 50011873 441810162 818411729 947015128 280966360 457727181 71911181 281200273 69168831 186311887 255740486 962268761 779993698 854289294 280525063 824223008 258546215 711422054 860014098 861405516 119931872 357720822 434738418 739703935 696958440 997699254 597654964 828089846 106874231 107289932 229430756 875263754 160989771 827521626 251278819 827939234 488704090 490550227 87747646 900855667 698141594 825652426 767608400 957516311 628949241 750563638 238986393 241941241 453761684 757329156 464507923 604498372 948380294 993348693 554513366 947522274 693424050 910647879 400723622 656656906 852695324 964293334 699423761 833638851 291827306 375340851 866953020 974585955 621990200 885280453 93834904 335733068 548716439 974718702 941129182 946051504 999113880 999701777 932880879 967029891 997493601 997627545 14889058 455993282 115793623 481751913 524991272 888547775 5852940 497059886 467072612 632633066 261865391 266812127 945675762 953718656 165615968 850496162 190493744 867015864 742486521 932650467 208470824 319127085 516971148 848000973 304543641 627488316 724715013 739972975 200189407 665920644 219044676 512482647 829828230 845531651 70120169 769549449 816847412 967240929 913501039 934619021 585699947 607451079 841678659 904573270 436448445 539099366 166046915 306233191 689958735 933854216 840302229 954328837 936547920 994676319 673950553 818202054 226995661 562732784 80130300 707439930 474055834 531411268 958568552 980722487 540098131 646666563 764606493 804372965 958329552 959932132 714804950 841484547 798823112 922922048 351049489 757656014 861970882 904223529 158669975 661440309 562475841 738224195 261246900 364072264 524254233 959042316 6155369 972373952 350172026 895420129 833548371 911327243 356536256 616747859 995314640 995836689 581684462 958728592 121022804 556147327 755979945 819452158 935863826 988915524 823401028 967302200 553749775 695364374 103182383 947163502 466604795 756612389 720638010 733668077 666940479 825520897 748883192 942291010 329654283 727727506 452069687 527988989 396067129 725745687 816685789 832076412 799509921 992058250 510522780 742380367 796471956 989425285 379410196 523832146 263334066 904073232 662967125 751757438 88445081 555793719 354525678 566240183 75045774 171502517 844755358 898663079 514216257 530527454 15483566 726224787 844211454 850937056 817201458 963745757 868623849 978093808 500779800 532919003 878817958 902913763 16158098 204808510 629228259 821263517 335713164 472271308 50949924 563004543 101351770 459511776 618542871 858951154 957919783 961197897 310975494 412083127 928003468 941864792 314322932 526992362 121334805 534077900 735264126 834871842 713930179 742630463 888736942 913140574 878701016 940556879 858414436 914493239 303908138 759025984 771733636 888535179 280808073 410100265 271884323 975364512 755394919 984179242 436315398 577561339 231955707 342042800 700122749 987244977 745949521 760509250 301017501 323444201 611080579 751766303 411702434 719909774 23176076 825662813 659551914 661257562 261847658 414546564 212262737 902937601 579178857 871849192 107354608 862592838 722198835 925958239 67025912 670049754 520399203 671403653 652735937 821943797 628692751 868502044 595477021 995241208 394810429 550760210 980711170 992293124 62759238 855700274 725215489 954035808 323025704 433202307 583542584 605572030 811355091 904435231 110160145 558532620 384089470 431272829 471653667 857246580 704959930 860919410 723338667 801528903 332595213 563406166 580911026 887775573 269778417 928136397 561917060 785976550 884634239 932662310 782356680 918465666 367115435 940463742 517236834 657702190 655375582 865574223 335664179 636507586 301177359 531598442 454747669 589689539 752279717 836464407 569055584 801904720 114646749 320452019 195809721 853199390 507796218 756944894 431632323 783291294 384022567 986248589 513030948 847411920 149813687 376780927 938233925 970326383 4509926 343064869 698157611 699389484 82653185 973546715 180543401 858117369 462223440 660414596 769439704 973103169 952092926 966919810 913627481 916946840 157563679 490680894 697588266 758101220 305485405 455444775 529672413 622689971 923456574 986852708 366973729 407023777 863428802 919495807 965063852 994792907 893825442 947051159 975891796 984111933 332283638 672358845 222858237 918566214 725332031 783881552 377988122 624461117 892180008 994551937 272732693 701789584 185296728 965108150 326854495 604189594 702485309 993247496 853433662 875007030 186588320 493572043 889814413 946073644 417924691 467372537 674749810 848274483 683176646 788358211 969098411 983886163 673223936 809331303 155755702 177873671 855552568 894342050 792111385 853624051 329580010 406724801 453091634 865907082 431411043 679538450 445905821 856296136 971748414 987065235 29507710 384109575 377024625 900669529 774001298 775906099 632789447 658056100 489785071 999036876 454563640 914538590 453298704 522823947 776970123 929573808 759604073 997221876 833114501 932427278 495314316 583822616 705861422 847889647 142508534 192472790 529671378 630200267 656969810 812226017 502800884 840785977 102896628 334968296 954653790 986239613 503863487 900044421 675060530 881988219 414814816 892866903 515348502 556502449 792955595 956355217 601821815 642143863 388169961 772606855 331634737 534092906 448620818 983344236 259606856 595229805 625261438 987618321 438142372 602901403 922753595 993638139 841502135 992707048 887042904 906205397 461055877 792114289 921673409 998591342 846090375 863669647 46031744 399732276 565566594 866352404 270698681 619838467 732773536 768159724 752345327 935159089 106736513 978970285 130221770 350074866 777609857 950438595 374581941 449339835 934856262 947739185 170550366 609146599 690718012 835172048 855834975 865811057 328842084 869416392 968837903 972935986 570778177 767434296 851886055 916478644 591195390 866996539 864654754 973448992 95625729 377576515 893086612 930634434 338940162 810072226 619792146 734206210 464122092 856844160 569182782 646732699 13466876 120654293 81436562 515138095 661050491 713477167 359264949 794700847 454941506 515079643 460876836 637347248 714013228 808620117 920268892 944391971 403657816 601694173 111606051 869302934 742897955 844895654 37306433 253617258 33913035 738844421 824798223 936984617 432729465 600551187 973971922 987245861 104502969 870553377 454879499 701373375 636026252 647178953 140819477 931551857 11609379 249619758 961367577 985618342 33295792 462306490 881989665 900764819 26418285 73285478 410244885 608757286 561356885 689019549 942582533 991299582 976200902 977058999 292581073 639348929 569865012 660902839 991469859 993852416 748921351 956136404 979111358 990476011 245588868 271921393 245355023 539101504 848212332 994236818 201858827 236827965 991170953 991190421 323394432 903792504 504029060 596675751 632866329 748995475 512103880 835651725 943431367 945902207 549379828 998674933 686594998 689931096 572121196 986493776 141144550 841874321 497753608 739710912 872413920 908084638 335251740 866094373 739792472 947200530 114686685 477722987 214230356 618041602 534430922 974646553 947664989 973173056 869929499 890453614 846969141 931835199 662718692 873505612 624839602 877626651 964649277 991299138 978149297 988855760 143744828 765084653 929104013 930594154 745955601 930994650 304135067 372696836 735613161 846241697 422630621 589316939 663491905 801579165 7988353 950687832 544614365 629244807 392630336 635471946 313872728 475464063 554284599 929481672 414716860 792738078 471097153 783435956 121468132 285831431 625476241 903342356 760247698 875608508 347130697 735035690 288482119 690746306 792239095 822062841 523863069 707690521 336176529 783776446 581273047 839480683 267540916 859714089 720476331 752724700 473447175 760544069 848527818 867422816 745709190 880961020 153178900 755416150 716036553 762532429 104790615 376430316 636974619 721249687 339092051 673000537 256694634 657861114 865536125 999181700 735467754 736993514 98266642 816279984 726032418 815327258 760475764 829039538 505935485 855455522 865665326 919423600 583296358 932642389 319510728 833664580 189216246 853141678 41040195 340596605 429024385 982277637 351806885 366943312 871805927 878138651 316763824 993614002 378921416 445300399 487567109 524042439 635776988 990270373 428929929 949694638 720138605 812920004 668431208 863109328 288643721 948930461 143549592 200892893 645949910 658510387 904255652 908349828 487076390 950889569 81684885 833796498 917518242 919859364 733140911 992400555 201148451 767062660 658621814 852593110 822939700 924082247 391048810 759903456 610532986 620148239 34943745 222802489 422221509 728897148 121698645 403957416 90385813 891482897 8686589 127738089 373239112 418937231 35564578 398716917 220460862 726377430 965139371 976600796 184936762 654581904 248406508 317262485 663855231 971289166 955358572 962154717 660659894 690759309 674868213 805495841 330455139 490207873 548972741 590408381 249848197 537744942 395188416 882839289 705024466 879422340 24269626 929642997 726382294 891938780 507314314 677289162 582021887 991622025 697557152 941752771 611870870 772817728 230308462 910760228 907890261 934737540 798592773 988839476 299505847 547765424 735925975 830303550 75180747 289811856 742585373 854384809 908474266 997441019 524036883 850782160 509883693 865744852 656299435 707519840 137220056 965323887 950933584 953635807 988123676 997227831 609331251 953158033 60020459 321899813 703826994 816039862 152947752 837419084 53624090 354984313 772808351 817770124 908347640 944606374 340833342 747619344 668136999 938111438 183100770 371869018 50128153 812727565 429650847 699275072 180813343 488005396 484920276 675978917 850206862 952943545 787368313 920140543 978851676 986088121 223712205 262596939 192808936 527552799 968996334 982942549 113414204 521706860 915842227 939628396 507414261 607564119 100067175 465419332 529647558 619534801 986992778 990236329 825564266 898920251 251812941 321702126 850097396 860981317 317690590 644325304 262821374 908083032 596790260 643686155 274789076 773770435 628957974 652769270 992358292 998389530 765899647 945734605 801000753 903603420 156909207 295986300 513552462 637802793 426184186 832130532 544758579 814209505 209329983 272601701 944723005 955286442 363670321 945650421 984909771 985805745 936127152 936896348 628233715 913480923 744395672 970634818 402842275 589231201 399256604 899294692 570536025 780219597 164559135 383428439 578240347 795881531 937092625 994754944 737506176 768219337 304403620 397630274 103461190 284945415 109863892 635083424 691462512 707697050 578659010 775886048 309144616 882247635 898276089 959934066 115971929 208904952 277610135 873489189 232882079 509002435 566252661 845189350 876498771 991395755 667417777 834619757 907583689 938193218 420536661 449852459 915759842 971206562 533440806 849240348 300981514 344808576 116472793 360286157 444242956 778352315 983767375 995359404 713280837 846785933 820617063 884702947 815412195 909371050 331003448 631162597 876191510 976085637 814171980 865777201 678282813 913902210 514043267 697490871 234904135 275937963 869541594 883456810 842207518 939969958 410207915 887652490 558024117 884263516 559325281 906621167 861458585 933954966 167248300 302747386 958068075 979283439 208246054 502244238 634554579 792892477 563076939 830532583 673642909 940498524 692529575 740243409 159063557 417481733 82428527 365494347 510778718 651944701 456337859 954062443 66411725 750293746 630914348 933360177 552119726 894150608 121794303 870478610 566762304 772543133 232799861 389814820 176007197 312917528 634154752 781199433 906158315 982687754 921760562 953797788 513301778 742625621 150409301 360506214 586208010 970588430 254235832 360704208 27150 2980665 552492248 804192340 489307645 512336592 675445255 987101076 275884984 515404379 576707898 727876483 520837573 790710428 9414094 354937630 802638524 847009467 781732518 915042306 70951266 73645626 189278875 881935036 861603016 961743156 902579883 919148706 380650388 500396164 641503976 729643195 794102790 986226704 348586927 365383789 303634927 843612416 424130662 504730301 59516703 205404663 831658665 967872087 218481881 756187352 169131473 209097809 830290839 917406931 939709951 968381584 710429731 931504310 877679582 921569399 207951811 942887516 142873998 638972028 704461333 754949390 326291859 847974974 614535429 823000362 924237076 998776111 676513073 787058544 14335789 563626625 830206930 869316981 80329208 136295198 585434210 999093721 90261278 306811201 524163585 718524907 134990157 857024160 299561486 460599726 132397270 566715100 649830564 978619153 405782293 546666728 809254191 842649939 322033205 845421382 927649305 977666738 635620352 827008443 638803750 890665905 708774517 885070353 6387418 519256314 679265342 692012945 184300991 797200092 700535818 914647702 546096558 726494325 76807045 417658138 747904339 961283156 264085073 695284663 333229288 696854789 879440211 880698164 541994036 829310468 937842586 949178637 14225670 542054223 106954205 379686406 408679185 422098886 642839019 758653855 585090543 897201949 860783812 884392973 939329004 975680374 838540857 975965281 950791926 957270458 817656994 869721569 413933415 645747895 600033953 700643873 181554225 568868553 455329552 818298256 192818600 511059622 555196451 925417097 283616424 886512317 561426477 694292560 677194155 706588322 901936661 976995316 327404991 679766588 848959148 914651587 708644249 876842155 73404461 674014573 601736972 629578659 835242263 879977896 804432406 873910364 912664313 950740752 820189222 892346334 718497012 936909013 775118096 995539383 922007650 932682192 718208269 787335315 349476154 997868610 637733365 738180795 988544183 998460310 801314165 976674430 199221277 991862886 271580582 662073311 906745049 911946209 968299213 993125751 148749742 969500987 828558425 873714883 57862940 293726221 624880894 869079570 292449964 884027977 387543520 756449755 526108172 606033687 580135812 925998839 807289356 953374044 534667722 605947365 902886643 925495162 19302606 772829932 864311475 946060229 334769769 981733353 2250236 409562392 542274562 905610090 770020000 892026603 978902808 985505155 948075963 995780495 899690257 969961911 910688318 914759747 409714077 593875222 679474332 714926778 814843009 873387187 478700593 577172844 631187489 865860510 136177421 321857174 10906232 307395112 692468755 984374743 869634669 963695508 917853803 955454976 271198372 731589074 301218979 674265748 954510330 981529123 929983823 957037438 275401440 649973229 284496990 697661376 957303502 984454404 805877583 928807401 728852689 771180625 599422808 880298709 581836277 734745376 659041135 757173610 168982792 244654282 890115151 960080215 663898739 760888839 690918404 966703410 972793880 984448479 91084991 943479636 27482778 340393415 752317225 886286313 93803755 332128105 203599476 435707263 898426542 925464210 546343296 820256552 931614129 934988469 970693555 995753032 82431977 886191926 199363393 535432229 308766271 321371898 522948716 557490643 916113531 930211680 997219016 999052249 348668477 545789294 430465539 985057193 548457346 572235568 585131307 702723341 944516895 968650362 468640161 628330842 446705057 944769552 197387175 813550236 9759663 759780222 499897002 888272340 589019483 647291995 123951637 808228833 1002188 690361072 415787314 724479804 658992915 668229658 80766013 791494718 10888035 675366811 453545444 566595022 166587479 800052782 498647895 823169362 294320976 630874535 554294757 734686314 27055381 196536106 338906190 362963995 296245502 399268897 500605972 548187103 330980555 431849533 436248799 684110411 279772338 634821760 436012820 889124391 989266341 997964091 718878905 986861642 266497495 744217674 302455794 821928162 29634681 511037261 808073794 855504395 353437953 522187209 686579437 888745921 572830582 757998676 895477168 915567097 231676112 270633857 92623159 734031228 75197352 291817247 849973018 974096063 598218546 696394384 331168955 946005901 519682371 669045200 343620278 375855617 594746154 796598806 558194037 777902655 474068676 919502704 458127545 997117376 334772745 653544110 219417716 676473452 994796170 996478580 869560434 891957942 136779010 294531043 138451539 904612843 510842180 797793200 41261009 855277954 116897395 713120490 63056743 785925805 53849103 577593423 682241880 890341036 563444594 747215782 181689243 842806369 516012036 948190390 253961968 427277166 753874665 988514243 95946901 405786277 354217882 466246929 329904044 870281087 348272648 905495796 592515958 653846205 804546206 838273003 124181066 302127911 133508743 910793875 999733640 999861905 957032681 983266272 131386653 558000071 910274043 998205260 405047979 867917131 181470318 612742374 415984766 832053602 44822335 237983109 300764731 399914962 909717063 968166379 524432361 546245807 31010579 37762482 237696647 330393477 403953446 769090155 156442833 248080637 601834229 958677515 50501541 221875702 166127215 617793768 968847802 982585821 739570280 999215395 63715661 405566327 962533408 966348082 660749442 805760031 643948702 924993318 778058290 820690011 288019044 613924442 12684969 876899336 768512098 937681951 279804273 424599463 7938023 112180913 706526902 921044998 38130445 244616245 31845153 337383020 764499432 819177632 544093870 560251987 916779740 962158005 705733516 798932473 235108180 466819086 268837717 622522111 329102275 442970950 266207656 920416449 303197180 679626389 559762450 936476130 73059685 122728293 886659256 894427024 681584503 835414617 168817894 954468717 90236450 868094145 411755047 630411503 800975727 988366108 856586203 992443073 637613707 865164359 179772653 467747244 333536714 418439379 507351041 707495755 101975954 697195726 69410370 269544974 518993175 654312215 376976583 833765632 418223671 602260774 460672822 476847917 450344711 750271123 474475426 894254792 114958139 902070005 977120921 989976226 612377464 802124546 847384859 947311694 808892013 913824805 357306099 537035619 880443905 992857948 638778112 961895234 778260105 964646785 542500864 576219992 333132552 957336114 67284642 767056601 605268008 893019166 280262835 875942181 274123372 806445871 595983326 757392371 498926695 660554874 48141641 101353815 98791639 577801510 128880341 935983891 69417969 539328862 496499654 657677332 872740987 992161656 274560060 360439056 358836867 859674475 21767077 236878570 992917122 993064369 902339507 981863329 867153839 970739616 755298893 946916844 14233869 193681560 566741406 923157823 898851254 939803208 246911356 740999320 812071291 874046916 487703481 806749602 921194795 954848590 716483779 756377707 457505834 941435564 112435730 381141140 598024991 873483582 403906673 504644345 58772115 726806831 855448162 886501843 772993740 930891288 888520769 999071253 856147337 878857276 790280934 933964728 872402634 885704439 891492709 904269440 545835417 579007079 615981937 836072638 113386096 188455891 286676390 674297132 357172202 381646315 488600147 849401779 233612579 980551948 277463402 831726401 111630331 813586822 831621148 920772654 16957194 954734059 981805147 990668956 167247226 851069919 71081513 324135860 977109820 997626220 741887095 925731973 526683022 782819679 436312510 920962070 113824816 850734910 243422701 354796614 910683642 933461948 426810546 612940054 398622026 712704940 715852077 864197592 182612833 381198372 724310299 869708444 375153863 979564067 153864809 515038845 529438557 667194810 964946463 991218294 453019113 690749802 689800249 938297453 894440849 966062265 167154810 238963529 72042479 291915040 492377534 662970427 188351435 571915204 127638837 489684543 8884082 580641851 601412772 888059361 526359206 843142706 314751847 835330488 878597931 996640805 246031984 786640197 787457865 891292881 174293044 259525688 69700850 599076795 463152731 914199706 918225972 955120371 100418793 594319635 353026690 788388542 661950244 833425835 535445780 768469922 763475813 786151122 989250443 994958101 494187527 832200726 368455004 571723581 165958163 385762263 790628319 845104339 739087387 845539015 521014971 567151264 995974473 999379333 677616428 907200855 780729245 803013742 139017091 813308099 70533011 613857761 634224902 941359174 907269679 969211088 750107938 894879264 990153661 991999885 61852699 385147205 562935980 601963567 384677523 662895389 364548338 601026411 870143667 937317730 258917456 937860390 421167111 710050630 224359983 767109209 841428950 901180610 884943919 948869918 475410954 514554726 358417449 945728907 660447255 904972972 882907761 977788130 732705913 901358629 507757684 954626812 7915142 954003198 139803440 696819734 747437442 767527108 504879323 785559804 524152408 585730934 937537727 973097143 907433042 954609420 830416533 848024833 695999712 886948114 650330125 886060977 67617670 151168924 960504662 971595271 658699558 724569181 53708369 508789539 401983059 771488809 621257396 915419267 855923124 965183217 484286116 839927509 766909933 983648792 886905099 993980503 266568860 527372125 891653774 973154138 659243349 952241267 910249610 913778331 132694707 593206638 950746568 952695988 724738516 847006244 741578891 994018028 710862455 717976601 951736203 992738676 735854635 985411038 887716744 954662052 146672148 937023872 888489065 925477288 72650548 150763951 672433497 774540585 567228414 786657302 213483089 272663077 221988985 658556273 644907479 953274909 730654429 880132376 77931891 888839184 766765251 946559625 315634332 953913295 535033523 568285638 669095422 742676560 374606294 883202288 692147327 828703908 26375999 958100115 888530757 993125985 448875003 611515992 96801353 686802974 380885703 828484583 540090520 972208955 44973128 597113077 469710729 722171310 899278601 935706470 190153534 614593177 451419940 532056895 901541498 969912192 24474503 361874047 775511664 930744113 173298276 719287366 521201423 788491952 592888196 926177440 35782469 88396260 2482736 686232968 424727444 660850611 840881228 957157248 490301420 593372642 968964225 998886165 316996738 784187031 194501227 431415003 880919989 969020379 127361545 272514194 707175557 833628095 759977169 976758361 701168370 742606786 772893042 982335019 329174885 699110809 132362749 427438334 108105318 600470523 285711154 384823755 835036084 848680218 725147536 922785641 91594104 748875007 314609162 606815569 944035184 979458250 767489721 854856068 999883597 999925058 837991895 855061330 796400760 929757073 334859976 385423863 668953888 962161832 944289629 992689241 927674512 990643657 172931342 204512061 53357413 211032502 801648586 859477981 449029285 852433774 2555978 555331963 274546373 922944618 966427695 967399850 533529040 717417658 969094199 969518224 220278389 942538435 556144068 981252127 265957191 891917699 904228924 962562281 907647785 959585546 241675099 352727541 871776960 888266519 378325472 573424554 740312563 993893131 370819122 394254068 609736337 633563875 820981771 843565989 148206452 610457027 152607826 405627107 791832539 805785695 663125658 807191393 464841085 952433770 649886361 887804511 151637069 192916359 989265569 997616773 989931251 999061357 168216935 847922962 621729484 715722220 247456652 533683773 104258311 240434241 523617353 677360659 221691433 910212563 402339361 950173489 464490727 943380590 984207055 989342572 791352787 987341849 713774489 836698744 388774796 394044274 583403186 745400558 880162685 999013707 471294786 877560913 303154539 894634241 467968871 824516971 898530580 935325624 840706456 999187427 352868576 618298188 603001462 634234880 724475059 802434193 403936823 689597925 185314745 735189097 826463614 924949091 432630631 955629996 487081179 928112546 885756341 958358467 998947579 999624390 798788391 974181741 956745924 987569657 499405201 875350904 322485464 575128440 70395724 455086098 771390959 995012324 346944947 881405891 866237961 918897983 77861578 585970721 681376788 896579041 800750131 950452895 446819181 586275750 479435224 531167953 36424236 166534472 667336137 915893737 268401014 318906205 565594032 567292069 802222665 970286351 675748623 875338427 938712860 993865116 123187737 337903571 598084442 988664998 61708663 704247547 231293816 489881538 82614695 366436738 908506522 940160919 956658085 965440400 1093204 255360415 591931154 716103419 92365454 927669979 984149170 992207831 689509616 909170669 878402132 970064464 386999706 849899983 733792362 829138388 632235313 684966528 930699034 979666174 265543939 677871279 834760453 970516082 977840459 981122183 136273713 378390722 450639127 654952638 695875020 738703246 257746246 814866143 330389676 452279241 90446128 203688044 184106262 257947018 847797969 975656617 673221356 702126241 969594297 991679172 260803832 490917955 372673433 503540561 262890714 381255306 628518986 680889704 427885459 600331192 708177151 870879069 304134570 450009150 501481941 920207299 530361482 701550325 371381622 601283847 883222631 960906400 87091432 708244664 814099760 917185959 970315115 989007715 709670668 737452791 417074212 542692177 858830994 867565355 165507372 807723308 176773871 883189513 991802270 999623229 75781301 296038038 290721191 785906567 995220299 998528801 36185684 338927725 979649842 997911979 249386890 634363508 460958171 762466693 274280992 583331083 400416074 932046883 28444547 220558052 422343860 960920392 136214611 622083698 168651884 818103900 944059632 957219230 710779906 744636372 677285496 711282020 499859451 893486914 453700953 835443827 378132350 788259126 246033302 341394345 209545103 302358932 725766180 908761397 946238626 956910775 99068758 458096160 978967251 992369851 877887928 994462024 834690542 942279819 181615782 930620007 934073714 981964639 41302177 554764563 372416856 803605829 129840236 664778221 932512112 956851147 981701879 990267153 598588223 705229874 718211175 869131008 603501825 907950173 327162321 519043227 189389195 421225179 325819200 388690648 823549900 830305821 451542103 548792522 951004597 951997221 187791577 797113963 455294988 752672005 356609109 495477874 373434233 780613014 943093750 948800119 455490405 850996285 747454534 823924306 855127790 990367396 714253412 869056928 954477741 958755029 112166449 720559281 128113822 474492171 284576347 691871951 566404349 757230187 73577007 98455903 6362922 537617251 709277186 719138610 522353121 720825682 510824623 660008431 82038250 920096487 434010676 875990101 704899214 872813835 691545404 916983879 257830252 370780366 552278769 675160830 237076927 934100001 955984573 964443883 425219297 772917188 567313510 625020108 958914956 994450331 317467056 835876360 784922135 934659129 459575315 492635547 30406847 81524002 211194542 627210566 909265018 965834947 454131311 849531463 331279568 915632321 826151272 826997156 517245490 662515838 476444145 679875860 650117083 964971193 264579348 441334349 441171473 835775381 943943162 983599235 171752189 417628168 997648074 997771317 892855362 966989092 470134564 878353825 291720952 468793773 486319906 837086453 329028095 983338279 866743421 882893700 184814463 329977265 516188723 902340902 1485088 671700203 303842393 343572374 4470699 935377238 567569187 833244178 687860031 806167395 843910757 962629322 896950904 951393306 599195270 625945482 632644248 845853197 783285034 942929396 447828189 627623550 546421692 698033112 352602558 795515080 936097268 968089591 933191807 981403581 334892637 525149403 557977398 585028726 270672647 822305789 566357886 694174342 565774055 936772539 606233924 693502014 394829648 780655672 799712370 833005634 113772152 691350453 917499491 926066363 278883675 330899742 197151397 965503805 267481261 493150592 828621649 885881240 777927853 952356147 811706322 946399432 309415012 832754530 647474508 840164472 523207926 911165947 12714871 896965987 831986286 891326598 348649220 532439640 737886339 963479618 527193363 592572635 731279280 910155505 66288851 220414803 324678803 518767686 264800611 946394316 736773173 932619897 912723414 967629384 252025016 674957493 365117447 708079365 284518422 524635933 839792180 890154606 597065641 697045946 144692019 404993828 274281852 763926953 80569158 672586422 660292060 662233764 554661280 853387488 651070046 656437732 912451009 918982402 547673346 580000734 230777996 532295750 878655858 980468976 264182323 840845329 515488806 791016349 563013576 840102568 406141027 927760870 894601195 915022437 694425688 874170799 737794308 830534295 869914303 953859318 716621215 763768945 13705808 335415063 294376458 656601039 431058262 714306093 721485791 926902151 824285993 834461612 416755694 767246593 131296877 142250004 502017252 972784077 748242065 791263531 394026809 902097433 314287881 429802761 21444957 212278391 623939831 791283475 522459562 885404213 114032811 664964097 408619611 697392626 522560664 729764372 496975571 823466034 890111703 979330029 734344297 769843682 507722785 923270192 777582460 965890423 917127891 922998381 531253248 784386813 538996380 593878203 447144148 819025519 452104620 587903353 471219015 800595415 172559897 610568507 879468510 895589980 399619516 693088805 335640434 812123617 47405967 90748945 568088411 921368347 978896076 993300838 467178673 931655663 28891837 436576889 347162653 904362539 91304673 345388606 414945937 547034589 913027355 955753662 833217996 846225275 211623731 322288533 708228518 988423129 801642657 975963478 476679487 994326189 191736508 595316891 84978303 300972514 275121526 353787555 10580476 884019494 350082075 887796373 83950411 540096035 477836056 636671366 410102142 675017635 435215305 592843459 334209659 808568766 228363894 842171991 720025330 834457758 49419505 201985257 774848487 845757591 944917201 960166450 849848846 952291072 240494719 968518186 914275070 968100114 915712791 977963165 611749044 822460454 950400367 985767528 92286746 229963335 129367889 330646989 762491223 773513765 353380737 825023646 307362861 773804829 435153442 459919337 150931603 924800979 106629914 174783464 547054771 605072666 678782422 799722622 480173447 645845353 51829012 984864244 895017114 974735076 796895882 894910515 218619023 595730958 385641831 964926644 387692664 447841065 432762187 925726172 223261112 529296110 849366925 910072084 388880275 416842823 808493508 953799035 672633633 832637229 560653624 917386017 609154786 773541362 267868737 777022144 934811131 988873453 137073369 337432372 503850119 921443880 481099478 653849163 597099246 693087255 251740552 545473408 126567876 587846947 874029811 924808118 751154567 988611037 258937256 365309520 432633980 457170620 585617769 828005353 509266867 656928812 644180976 992259438 317046759 848635460 964110899 996444051 175241628 301850800 56861010 383130853 878065641 925653263 362939823 940252488 964841316 983408502 976618428 978116215 686028656 940254841 96186177 691887401 762575561 885820006 26103440 182947143 526215486 574650756 696067570 996935286 184098886 865413450 63844149 835651734 859195692 955999534 636151976 998693570 577771473 759011194 428221002 507997982 189187568 800412560 193645842 602395443 315847492 701597190 742248997 867317268 959640904 997442463 534914864 827374796 774890252 778129823 768784725 800357942 326743671 398671286 476692403 789709124 978706244 998251652 917038637 917159368 92491365 149420580 280700940 853211972 62203224 809798089 431604056 513266341 948468173 962879141 789185271 947093622 253867136 504410592 525263411 566349174 636819728 764382056 760438192 882845525 409262440 957679899 915914222 927105224 271728117 301878489 480522556 695528786 948792665 963896772 201515700 536870655 322716972 466716282 111994161 984942764 702943263 823186730 951850570 964522408 439537804 590318741 18806374 389631573 110696233 307173714 850528918 904587556 969911632 974980095 680651890 942397793 241059797 830245435 895027936 953478484 325758169 696059955 372174082 782331008 180494811 345473059 895565433 989425046 288034897 966471504 515844513 969662013 55233911 257497669 81826994 237340391 31098793 317504236 484230803 805024002 54035298 748489052 161842051 739012855 486863209 530322826 900234278 931496155 52617193 474156037 676573148 951569066 290830922 672543118 451006401 771210873 655679018 893031654 786382409 937854558 340764219 518112417 484179088 752565084 525127536 691419758 247753547 249102048 544079888 645807986 492903834 589762827 408634680 493026598 846701280 914158592 486080700 894148388 529455245 933569480 976323667 999292570 532226802 744824596 91896852 812735182 112415217 275151964 630427653 652566164 805939688 963906188 508372706 716975571 546509217 675336310 827351176 828052693 889653934 909177181 859531317 870031303 131931393 770854482 887889346 902527578 244611979 754072856 815476358 995316603 477183601 963036790 5612295 97857755 590634477 964551123 897058347 992533239 53472449 561945446 931761445 966209714 96925156 252293014 164069496 711284595 322817262 632667558 329739141 701064535 464320964 590364726 62655296 705558055 728822472 799116523 695193806 985689598 642045001 938387894 270796441 323375063 851127926 853164140 805321777 838881900 520559627 574954385 398952074 403527711 304417485 377900926 413388293 590774308 430941396 748196926 61076430 743403480 758859457 760154814 765720442 997057450 796892268 837554003 784904972 934415576 918989848 989182227 290398579 680473981 288100863 550252561 71067129 412341120 320923217 926660670 61373308 706515094 181600918 395298554 491345483 679572011 662790951 997063564 37825734 258709308 509440524 712638095 122322238 980942750 246985603 667539956 299699774 505821838 591902347 680221673 210192295 661040278 124749845 468682299 901151371 908207987 720790485 804711041 992115181 998982242 244791814 716315654 652252346 989761624 959684734 971795636 225621477 463902242 671420706 682640306 573127920 738779576 383666521 827378231 493111521 724750874 93832414 908338660 6115907 530438398 255714313 557286528 170907292 457560522 750781724 993834156 976077776 987967002 679033162 916400206 928570804 956178356 732418229 930978472 575410081 870705622 336161374 572605251 226870647 558810063 777330852 911687495 673682440 941924296 72371932 187631934 465273236 626262535 475471153 811584096 531857038 595633044 658684873 752958158 960224791 973784230 912377880 946945661 78934012 83271531 940548692 947594004 147252146 403726093 393180847 498822848 508259982 846551390 269285477 800328302 114900481 741963713 272253107 817429684 275074430 445354640 459209946 971059028 769322155 790923700 159198416 900966555 518152269 902450398 252217434 299282534 581700541 908655023 161877951 493378206 784926790 935101070 976562070 979663016 513143951 985378774 786598995 858825140 813945247 936716361 34299474 680442572 948469725 993253158 218697746 361795312 76219761 184663603 616626375 894039586 106641973 989055977 22980424 196647240 983983417 995140127 509628870 978748348 428924983 990266575 673731653 914653621 716700677 929154002 887191145 945471369 266049889 649709322 31772017 418309127 288543652 906589668 471247864 921885731 571853147 621889105 564113867 974817966 24982595 979215764 914508162 981087306 561930151 633174392 486852360 664977425 588768133 929707894 264244474 822366146 709139328 907923490 834848698 919421781 558174387 598623836 299774120 554687703 166912195 590650734 954348617 998710356 467455689 541990314 230363117 609489048 811070891 983635583 277512974 407018198 141745243 449258520 23684148 896514408 774242757 920903075 353809590 478553264 586922971 648123792 20746991 897411423 613127445 944085036 211760061 871557387 281744293 737666447 807315709 817792205 896642671 906882692 439679867 702858580 430503694 857947391 674695948 936273493 549364390 598817308 183668303 378345365 770708358 986738643 749643921 885090753 139830157 198649753 612058546 944114352 601888166 790837023 837974019 986242814 211140064 666615162 158181927 256641984 201891917 478657064 884673028 929458475 510974547 578461141 374149024 602147730 128002096 211890604 231631004 846661679 831635698 905372926 336694918 608055787 698358730 792363236 791396387 864906502 667349313 786452045 469260218 570336556 81025722 666064431 873355876 874581423 189170087 585979498 308940364 464944724 713643536 894563555 88878507 913567045 428172826 885545253 157902970 212979671 937484092 991496137 804857039 865427231 10893952 229538284 286093283 605955224 336122973 583959163 895018768 951902926 593460030 840563095 892202387 958616575 504348167 790805509 24840980 206255001 359763850 947502376 522188797 971973903 20501201 823712759 529730504 602705161 145019238 868860476 534409642 897233339 900960052 961991189 550303510 805645552 676361436 878251422 5943799 939690006 597365840 988439807 311003429 739077161 580236258 678299545 296793847 802432740 25616789 36107443 965096063 994714310 54017715 437509095 442808215 938137493 825781104 890993696 918284337 926457804 362113045 833608332 626311603 958045619 928662212 949011392 375715718 392496023 23946863 165039898 729967151 961142291 210040278 742229197 707856808 732449656 449858618 952853135 785371602 795227532 361096698 409780330 108388772 994827021 890408146 991687888 741262216 894536263 519088912 820498818 315955408 996162696 222399460 789263798 60421801 484832882 418895486 596672470 370457421 933735864 983777987 998263733 846402957 977077578 191444597 333005484 716973580 864396108 910464070 989666259 783359347 878953847 478428916 532939001 889215362 893739151 852325532 914436935 903979956 998674944 763681815 772464699 772334288 801685402 945622148 973962058 706352485 986904845 515178505 986813778 133447637 274084731 757059230 864031702 412132493 928264673 943072409 977035178 70136487 963385082 302398941 836367817 545441412 910220248 580835313 940159769 514804332 617602116 251200185 917946000 290594501 344108953 131620316 975589913 570867983 982281572 901988780 927503197 554857947 568377970 289882508 953413499 344234171 710048399 983545527 988182939 392868499 446345641 552784334 666863012 407079996 932213489 720583156 866708763 755013092 840322034 945678080 979893526 329404568 860205789 17802982 801583470 606152812 861509616 544554928 809344011 228956532 481045610 534621593 591124103 376982767 633160527 963639853 995975146 230230532 943597255 524024494 753303900 264171070 370888306 762651545 918348233 547091228 700709694 208732331 887157257 912128119 921497252 349160923 966576225 702603599 737611099 72090162 433128345 57850783 388426390 568939527 868923094 150452311 162298046 580136262 786065392 490081889 670985195 313648877 913243034 413004385 700403196 625856659 923075915 299521719 662325481 414083001 832572325 794757926 953314635 942563821 950845158 573136595 884214523 825901546 962911947 512220972 642953758 726552096 857788159 22281394 297283133 396688504 950877289 4648519 930886286 347398475 633446484 32818364 406132398 281578932 802142950 794502681 826657961 693608731 910721661 51544362 403725921 8227612 521136185 855531355 921782796 953538134 956779781 458904412 609534896 556172187 790189122 663960760 909814327 684668017 759447388 513129926 589113761 14931086 882987112 340939944 600852384 746676801 807276508 893171909 946037412 280870379 672561868 115119655 818891943 244254983 554688172 327054359 725165526 597750670 726693481 954748068 965926039 902487755 913277059 19506952 701337852 146615202 533614544 84136774 447205934 359939047 707344594 472603102 702399733 12281003 623177667 238196903 835158701 738862368 895877894 983899388 984946855 348893290 938954081 252839445 897049486 711252829 777670776 264523277 355989148 4651594 551631020 405369629 476385538 517595900 667703028 673810778 935413516 704781002 813199663 526330592 871572131 978530329 991662956 571318296 840469965 488183220 888599287 565883491 865849651 240386761 469862477 85558187 163021137 582233679 952733524 673676743 759755431 329788992 364631172 46042701 997476426 707137679 820250268 591553575 860122500 288073595 405703956 169251754 889577538 384173261 897382957 621297451 871483214 894284870 894797526 753928837 879446421 698363210 740425288 869333681 915479456 590089623 904823349 494570059 601381892 287603996 567134478 739207949 824308522 821425248 962751737 999897174 999919964 674279493 694850191 307966589 491530201 655268240 715728878 286894781 694697094 602740040 777305395 434484625 630751088 14934339 339338762 737213719 904160041 989856815 998225098 677209199 775720400 257336838 381586442 316426851 552695102 552136096 730534566 93797590 473776125 939833286 977126097 641666252 997075558 734102496 944699327 78674288 778570728 972866683 996277525 330355709 862406211 334002479 389839198 721937866 843770134 567433835 862824418 952938473 956899432 245740597 608559517 271385458 590398472 212143894 858282807 654522560 662362168 734567164 850175631 405904933 705714104 889995356 999645628 264372563 921895939 522644283 599343858 364818666 459375670 170461430 493672261 287190526 835480793 270531904 343263276 284681594 963254887 725893098 733050740 287244398 336572006 401419590 779694506 567688959 643651990 297757070 560207911 425111357 679456283 724086762 805881476 821964580 976116717 837610632 851673324 259530375 340946446 598288914 910993720 931247959 968145259 773473957 980270797 444172960 529860473 330106013 877598137 765488567 928568450 672241562 951070151 695756651 965796774 338403330 869828831 919036410 924949813 742410980 968138243 415497166 922264714 502907718 904815650 979335435 989380383 632118126 644327714 151728872 437704196 100310791 401205834 242794971 729395514 953913369 982777999 679270645 805777453 274536087 983028998 161421397 720612186 99290047 475869392 535930355 796402581 778692635 964770984 961078521 983219679 288714393 724591273 100491288 689391095 238168039 400469158 817551372 985784814 27115742 791638404 730231148 827428510 776145148 985827972 673988135 807424533 481620481 518117522 902101773 930546475 190248693 590249378 520709499 624625753 869347327 988093661 990079366 994750987 637916270 735227868 280358894 325782590 131685503 907258829 225644262 632622530 304021019 628626827 590653369 939130840 462100605 718744557 618770498 685037045 944412578 998547402 319914856 687676589 107735743 356080492 961610058 994904093 588053777 997652494 235217350 289421608 384955436 824295837 517564541 717968720 977085168 977591388 830652581 839637555 355889849 570371370 900806305 983915051 193422820 285215926 846936196 983921815 972042667 989034058 905234315 915988655 557542708 834910595 688419049 721684099 984647001 999976181 743952909 950599214 906498734 992274609 163329241 698584783 228297275 428886344 689557622 841480854 128543489 831453356 326965086 772415604 273638075 719896549 305430545 624655209 895509841 938500391 362544666 376374225 974420379 983426127 930946539 955738910 580127192 710877706 129929023 659044928 387388941 691092396 328207858 629047159 4111108 544724393 134888342 717671291 74444601 630475232 307818643 899198142 42211016 912802825 497815796 773987726 443712556 721323240 806044547 969299919 316903831 336401612 447024226 990832105 384837638 773609585 852966671 955903804 405591760 997979074 286276385 755275316 273113693 569431435 645629712 847428723 176083182 190728144 418645544 741478549 278146144 378050140 864978658 960202163 958854208 995469420 152300095 622490487 972888189 979201878 779973711 946553576 169121118 481868451 452394870 786678846 910143467 997463394 183731709 726439148 783875226 786910834 160164190 241551848 681731487 860285982 201626041 970289088 826854968 873431879 692066754 709980712 906572778 958242565 334269366 502607815 429923873 461603586 745958260 971920719 629756675 825972836 964598490 969068644 707179509 748085320 549015270 579512820 781170607 836559237 987041538 992717059 769833524 770861921 709910444 710421443 230970260 289042276 691246737 887504884 227291933 845097695 474253473 635977682 114359952 727801419 415393416 778561587 974504395 997526260 79776252 812954152 834674726 966255860 267999531 809957538 180245877 817335855 724644576 860201256 393734174 670470026 490334331 608592819 351875840 830701946 781382821 920397491 279234887 759356623 119060159 495854565 56641932 935948168 464343926 740947289 732358467 898775250 180646371 993932418 326506973 620103361 258003654 630084665 267900338 270248837 963849252 973249104 114659804 762509175 422482278 835057155 878974358 942259712 597715495 611880387 543978651 902773033 401418704 956385196 636641449 850559449 748457659 860045591 710860026 924793916 260746877 648020174 790182081 881846286 149203856 622753129 827675943 920214086 522033230 762358967 309602595 441326246 725531477 833729899 771600840 905503067 955449336 986539479 670643295 876605682 360172424 600746223 698839048 905593109 23528830 791906766 532898540 575060085 543928332 658902439 781958957 962889327 915760566 953766661 713836041 793149430 276418417 918122324 336543913 372641989 441574291 864573073 484824410 682915013 310865634 878712209 880539651 935781857 151558527 817575340 301709776 910747964 988900302 993228577 836205842 881588502 12459287 562542762 546246212 906309840 14903181 214385094 424932041 681649911 911759476 995901613 573266001 697399195 571543245 813826078 813290051 936649250 957129903 974202607 852045285 916270421 906264273 955540275 626413766 953888257 512022872 592052366 647041142 909841337 493009570 844732021 651427340 740514765 553547942 708875726 609220740 969619204 285962276 574131727 779904635 962301625 616258992 923276366 567896681 904275235 441324444 898554073 137259037 259354324 354389136 735304797 242268180 536233640 58882097 166138742 221918532 272930795 923882309 983429168 105765902 979769235 84930011 234353459 706962799 929985142 316444812 403508463 746154323 772100174 888448709 902548564 452613079 669760811 594022248 936848683 595084086 902467436 593484530 870465926 121181336 786079471 181930757 971473900 436593790 719220278 589392861 942818623 423667944 453578088 832217824 987073349 869317250 996695624 45550137 610656164 564655121 702396240 295416223 780102572 292374509 347443172 132710990 189695638 148393002 846784831 748943314 956319781 640976384 892762887 89637575 735357797 779622047 865518651 428966483 797533585 35724717 629318815 527961336 718784200 287155691 945560160 304662216 676584194 892956434 952188375 261752449 813715435 247227782 288231392 50654325 592658233 853949107 944169544 476600017 732020078 917184913 969149404 289800388 605783387 497582843 911499721 913991067 916373886 142450303 699660120 579621677 754030211 525780758 573734840 51550093 868228443 338970900 490623694 339899336 644730610 625897015 800781010 694240824 974867433 847692560 858525669 836678424 931158957 168867786 625057643 613260527 847296331 961685937 979340722 570125112 649599929 577050571 733567070 915489996 964216727 676304015 979787694 886656917 939153437 701204000 947291349 536645738 576181000 234137912 242253438 950914573 988692221 417171841 907355884 488530644 701282233 832003307 838776493 913948916 918851785 878021394 891890101 737294613 944588609 482471139 948782228 64162885 402351068 684292366 691670350 252582246 885435581 859701006 898263243 933085970 934837896 716864294 990029174 470685714 857869497 769506175 816218001 612399812 702010719 411294472 988819467 129595144 928424346 792640153 858312875 981303775 987358029 441108973 672405340 6730092 963983113 492102670 527371433 978114397 998136325 999657227 999848027 937931377 945765413 877432997 986242369 181963262 536682995 831050888 881124536 570756543 581539273 137494185 372429716 839246580 940639592 568573836 888470203 778448347 800343418 774089512 940926420 509436740 612801264 772411663 913560922 177315812 254266019 744148389 891488175 637654620 739617912 3009620 306143653 862645286 910058032 902303464 940550215 93383591 481462451 120437756 235488815 709023057 736221469 72443868 355519225 857595362 941303042 653326298 890579030 657178386 865975752 364762346 867210241 849010342 891419249 107624663 383901303 449205034 915528410 976247509 992059834 604498207 676080381 959635141 973551054 699726054 709237897 267692576 873041181 769393324 788346115 229315450 409019609 264878630 631301123 134695031 500173098 499726751 812983285 621454854 905812212 3062524 586499107 959688233 985871148 635958118 926684384 81852264 82329354 569596811 740158393 347294601 599201833 420327867 782161517 583658826 738828099 927082174 994881540 611088589 785708337 228246104 361588727 198723 454454470 376388934 576629504 228037833 416443530 215957345 536333019 624573282 867720685 515366913 718419328 957916478 983252077 770322332 863624963 951362719 996173137 311294692 528555105 230214023 648767484 527926283 852799952 64174159 266016981 62622351 992304995 421605975 904034499 442718449 666076274 150823316 975373068 426196883 657929134 860301918 968319653 966602142 969362737 59786522 857196461 850926403 913586316 705794249 847845491 999286099 999492596 445934653 454473522 671919683 746938563 599938252 842420432 811230239 819229622 846554900 874933363 343604510 629521639 811024891 992812343 115988371 737220882 1412112 998894351 563908820 894432006 96066959 789442647 679575356 898796632 810046706 950049114 417257047 880414804 550321054 858490652 36824872 869168629 264673635 958640481 664059925 765820110 895911375 952207370 971825180 994438858 564348014 896792885 827527317 910454877 818929952 906777712 96412586 96986967 620673809 844334152 860012267 901787149 181277460 959372712 293918522 546406074 98227010 861444340 549397664 851948333 258594077 538444201 990937013 994770467 604235809 920964742 801269725 858387164 634716004 725337171 53762315 846259861 303672756 445674457 512575856 942152494 429197821 520545735 3307719 157446633 739392405 963989438 74717767 668794968 424586703 905722788 602248163 881355112 238487778 596698756 509438705 545346204 753490553 950138326 839706198 856960513 668242015 763751835 23280025 458781749 468945664 632977999 965067321 978314607 138961043 869199383 847468941 973712302 17034104 885190474 924854220 933836831 879081952 903220696 896518713 915392069 108114492 361341461 578417707 820505411 12523994 790086290 577203751 877257120 117312706 472950705 352341619 618169796 12575324 303437769 239411828 266274323 356319331 955864999 296427170 478915408 22341220 303612195 753584811 851856216 581144953 993221271 501844591 926620140 476833179 560925089 580397039 652127259 955097880 966113675 387798595 467031077 832320140 987690959 641747494 768941714 831951461 898261517 153871495 910184844 472721315 736784083 23853023 407693138 693127532 725668233 311906316 896349954 837745466 887413832 155738889 590625215 621227019 897418271 603725590 960167709 753525974 979270210 590870180 726620254 306171726 326536211 444123838 643634228 849444498 932415919 172382324 647949024 980408647 996712507 417390595 466601677 419078757 580169262 52740274 971024501 601600613 716875513 803017707 953932568 866901224 939834300 183123711 229442583 268862347 422039357 409835440 837280448 888448703 935404388 209402458 588254061 376412237 414223628 513799620 960655654 997978632 999555660 328585659 910636988 647059263 852587758 802528069 814511126 776611133 929786279 234087472 646293662 949107154 977137750 498082171 794238489 43333710 697500518 972081605 986448774 322566120 548423719 953594557 976010758 600434477 877717169 663809626 889219463 404134046 541160652 199484778 688365943 522797023 545264038 13757018 26162557 929463203 974599495 299610234 899018118 210841818 590727076 348166089 447597914 29604078 605990423 73127274 944709282 808388147 837147348 188317907 504177576 623040471 948258997 373453833 452779833 488876134 593485185 757041122 803166404 874876501 916775171 492751724 888817286 120094551 233388136 391390389 881386893 576345077 798379437 329682099 588539602 244421142 425274856 899919727 957208954 635917818 762000889 987761972 996585111 780916270 789580199 100585360 545879377 559481918 762841266 702275803 759981868 112617239 330152285 896808232 905415724 786599460 984681721 201704319 230759125 746157501 981760089 505821355 790785861 985795521 991060927 878921153 903956570 977544062 978232615 58802704 192445119 852001436 968412720 997314633 999378094 549831675 788763256 907117047 939492974 610376854 627974967 165262969 843294462 725439553 849986066 244703129 585576547 257103974 547060014 915020134 940060778 182021982 411603541 757245878 861157577 849805834 901936715 322827431 956391302 213802235 454182840 961960665 979476773 599977272 948123817 745053302 801828265 774760743 971255712 349012021 761191396 952094820 980382955 687266050 710599352 149231765 929928843 30830747 949929719 268610172 644417372 594137159 685013601 212248157 316052752 375029604 636980902 563279946 754410773 695197898 923556692 69565170 912884652 455166402 461494300 582926453 757572902 719386174 995139406 537851180 612293355 919807844 952764851 278171056 611537898 842330649 868008501 426604986 464647946 140737589 991489039 128313938 217717143 736042193 953299244 620525282 881643534 706130426 918732656 770546036 809953743 713604954 906681201 299735824 994221175 769816844 901751353 301076720 775695580 97630567 250548083 447109794 742445344 283456148 539952354 478465910 699052013 41636796 666227189 437253568 666969582 330668439 750166550 237740474 766468902 865612143 865654596 444355947 480368844 374789126 667593872 824499965 992276758 603969453 953960170 26879618 810709811 149113191 500040922 299650729 557036830 22889324 814451829 439837879 554593508 53854662 749559127 518823459 994418318 648998226 952848139 440554388 482977273 195786131 934676473 779504214 818774637 499134375 776610564 935644569 961569711 451374990 759248180 637620948 927662023 494428874 535275265 717169183 978653930 340283770 665570551 465698236 650167541 524817022 748778114 513635039 574406377 391916052 982668505 479488356 686179072 271178156 582054337 738180919 932191570 69454790 152230143 8829394 474940704 229821129 728689423 166007055 176146268 402271658 655484529 971887647 985459252 640221816 868292784 252488760 667109540 682315458 806538893 882492626 965844816 681387692 773140652 91761630 696955946 181647559 371098813 207196898 874294096 482230386 610180193 369685899 760770240 248827107 284057883 372172388 542040876 502210675 507683117 535191036 577997413 866663688 885532491 265656504 778036279 441495545 773174267 443308878 525265747 481635309 694257477 883594903 983504162 176529202 855613900 320450876 995033686 302165872 760663802 385933036 441644154 19220405 976261469 688326101 709098252 35846991 453687583 674522594 828804418 708405073 726007812 565459014 797893788 297197337 506031442 580923741 836700377 784680995 920108833 544561517 874933957 850319560 888013607 162763105 484927312 197391470 599186477 842061281 867860347 810581441 908089710 806716983 945470973 506605356 650478810 822237395 908975649 264449149 640662066 562758070 998241405 897792740 950232732 701210597 972624948 983880679 986450720 186062165 197248288 62384505 828688756 576502843 634718272 40914011 175716932 683201861 949948776 433473603 754048312 950812914 979240756 555077082 899131249 253954388 443637990 772304963 966952294 439240286 715223395 743025065 879351122 561079246 948135591 383141264 706475361 369245525 978105450 826637690 858846240 365701932 826073638 192788201 782560147 187029802 962327376 915796607 947447440 391499333 486343242 153688441 656005547 793654307 933540149 330542668 942299068 628702391 855459513 658669656 684516111 487821162 789387511 239387814 450500505 150966929 944259381 455149962 533748552 278303770 881315659 998511212 999679505 939030283 989340519 127478036 481672466 812358680 993091285 859881495 919093800 617276252 929169679 870820813 907111808 940412344 988669329 154032736 418387890 578203555 674953150 449082321 682724664 6513531 192633956 973992554 989219955 610164818 981057077 680276003 923126619 677195903 977404509 615958314 733878727 798297521 878576264 540879679 719459802 450929330 551974011 25621149 176262320 129388210 186946726 215572752 562663408 495181893 847268368 840973647 945088507 928564220 947133187 623248274 808471378 609194653 751083078 630759188 813102941 306899047 768461766 383585202 404291768 295593487 505384657 554651159 912801413 449922959 485773818 232511950 528507855 432974499 641560437 90284257 995893728 455037362 713512161 294246535 735827875 645388997 832052122 508142074 633143902 720204031 786278554 121970134 270541230 582112841 904620058 591569276 669228646 509681229 902920963 967199713 994153228 692434149 793517503 161891604 500761640 187558417 801201668 181811981 587352318 699532334 910825452 112123547 115341729 269921219 270765305 527395687 878032703 896594072 948289781 937514434 992847438 280294218 438171049 446078737 858452271 938471116 948382427 303399601 314128143 57999671 679576273 468016999 822738339 965310126 966365817 869198370 977994572 627338850 887595743 525146725 846578459 734683072 866576151 376122353 737945217 882924295 961542245 676848606 869797617 636663891 988297821 573420315 843341486 850048651 886764303 922974169 986074117 488020812 975584764 388978685 804189099 69248459 200804909 719037226 959763673 458164382 906514759 814699313 997494302 551246851 643731600 251322153 487346460 813000447 981525741 427884165 673685043 544309425 647510137 736342952 764327307 298219261 711521306 353222405 822121960 648077003 948737001 368391663 513403421 299642015 309644424 491571941 741313165 763570835 799860516 61918198 166013234 189849650 431591009 949608340 987842016 812048159 916046026 295285545 433981216 105788995 657430982 926292377 996069246 702560998 776340671 289857109 899793161 782721071 813329360 829239448 969708478 663173285 935687543 884640534 885121670 53239988 344589788 73641929 80485045 562743901 886404633 132945705 477171873 347199385 365793989 820598224 855352161 280506135 583115571 619620517 672432257 678671943 930994101 308332299 388490955 639707799 946000820 689143030 925182034 943830096 964824462 788323969 934551841 234096131 589687700 321342026 753279297 923873925 979396628 105898037 471785487 745184095 909586377 425577970 788756897 725618382 853902169 372599986 673311118 281460341 623253179 389879212 821310196 746709116 927296743 815522259 822685608 650535783 687186700 715232672 989706192 712364586 954201767 884623026 926329752 631022839 822417319 868413100 959093665 189323839 950713163 437166613 692213225 410610960 803780517 932590980 941073418 756488643 768585657 267186643 633819490 805996243 890482324 109855021 774560013 937316806 957856646 648580706 820621119 692862395 949484871 183798354 922224905 983624105 987300870 42889670 50533785 145080973 844704072 234007766 852117368 694603988 968415850 737577401 760628602 815624790 830447819 481702975 674529567 632991206 846456028 469538094 913237657 408227133 634426908 83460647 467494984 757156561 819318209 157366432 427032589 417860310 846416823 97620448 530076911 888415162 946270996 40003052 84564776 738076018 802126843 20096992 190561715 646664349 861609808 945862665 960591666 999369318 999386787 560315582 979534917 964955497 965567915 650304717 975014469 451929059 868675408 429389569 858889245 386397845 509910700 21533686 451945525 885681237 989252922 145286947 331979342 633422015 914354253 657636658 810045363 720810822 819516699 403848535 875865357 327078531 731417883 337979739 561449090 348098597 992387937 279911029 381071057 928028851 943170471 535274262 908019545 326238857 366863623 820231984 900077079 12025718 936294222 209217974 477489184 72887775 729259658 606690146 660218430 17655856 942914864 596221589 880165941 908386766 986312398 713144796 738553457 914724986 935417942 541798810 918352692 456012409 883436569 653850681 978085358 246102875 325257608 820736988 871581928 400096229 716285236 501081118 586235360 303348433 737794268 974177914 985172768 687571997 915445145 167954018 466529718 824564180 838641491 979778511 987566947 283559713 849427369 745728697 951626250 401656635 569232206 526870998 791148775 142269422 771449704 291646933 814922063 65424662 144914492 747030105 823666733 53054181 646585003 46985545 856178814 352063428 599171415 872632722 904972332 464692319 525811531 513677242 701628256 28693577 596680028 363550312 896291765 758089020 914121537 230707192 983524093 297107241 724669041 529508337 835060692 733632183 784379049 237481330 749836368 798847509 952765209 100018983 758505384 822508891 932607044 212469488 902068989 473408747 844550456 378770164 680899459 997868928 998190217 523930295 906468621 234378834 273383978 957815093 963626689 651077463 709966093 51060358 663400670 769185234 946805498 837175938 838205095 775514159 862274477 612626790 964154190 492241099 858026423 868869074 900319706 873865388 939293903 654255763 934636374 22591870 439500821 880578505 936927250 511872131 592916299 317595036 543153063 830622145 881518476 421140515 616811460 788323010 816201524 495636431 895937396 48817439 949506990 938385740 995070475 702609429 758256637 689033495 711827964 789661057 970767955 280450377 633044082 232573059 711252361 313452895 874282108 963058659 968510836 499664195 928203228 894325734 939362258 768506878 952315853 346948221 701335817 817569817 831121595 157255973 178662821 398223459 498565814 907287001 944235759 970068599 982725046 285503152 471266273 460741324 959590877 24816878 871316450 616360746 746581970 386780044 406728778 881470489 889762971 430930905 730892001 305238063 333271679 802407684 839722308 477486452 837342769 279380651 638265769 493434066 525055244 339224076 786563255 841201101 849675335 892698951 899495806 731431574 997941237 560843081 773910456 144466901 630656424 97955483 120174900 807283764 822426251 7401776 349956275 650580050 722963997 332100334 352260004 74546171 239313394 882998678 892752456 607735409 934019152 991730968 994669181 531553657 912312711 357084542 581859103 432891611 790664667 181787308 939963534 831347154 950663260 51939915 828205662 5079284 61709852 244599089 476399518 714128773 935646230 702932162 756149566 514496858 676318420 539701071 755521030 229934408 483370527 552993316 696640425 728422256 802023086 316257388 836538634 911892366 976534768 36476067 560402649 799702305 956621538 341962526 457543156 841433767 938042666 475775924 668442804 508851772 509585222 894299246 973695907 459731413 830053800 357761140 724357509 514273478 711154109 387189772 984122567 856188334 880290695 350726918 757024817 121140936 339282734 102055059 839766627 877447584 888007506 665747984 998831957 786574718 830825234 64170260 167428770 245128920 485806749 63079782 740077420 202505474 801927339 730411155 822690901 182836883 760023022 773158436 957218696 930791490 961493531 474048200 876283932 773233264 914513381 521024669 992213358 314739407 520701091 326796516 534922057 238621850 909629759 219915296 530160370 789965603 876308151 670634329 836970975 854609854 858419477 622104548 812106599 94361838 656522030 682125793 905180477 492976908 800136699 83351119 462359163 357493673 420467092 950684512 959157239 927274388 976864027 280497073 710570604 145514832 748589104 479709840 657365639 212234956 427137916 895308851 937337977 70659149 828306876 848576272 879871090 344658031 506383260 292280790 445120856 155059648 350547377 74980649 501276405 664684103 889974977 833952060 947502313 572071683 874246766 29878453 185323847 508721726 823146700 279090515 524297122 219398358 413401719 742121106 948226632 405792869 715011727 908392720 947253735 940864021 946829984 395855668 556467960 92714980 419553942 500725031 635876237 835820805 977919125 364121465 665493606 172080266 500354974 333081730 726441958 648038718 984725736 824812886 920772653 984308788 988230971 731301425 812412085 792245418 988612041 717705322 777204694 743196253 962652033 85021539 871058433 624788366 856481194 636635644 877884422 983658011 997132714 981466559 994377946 891473178 997815735 40447197 70131888 454866158 926942058 909518110 927617272 535699769 935312233 184149327 564094357 857668044 985660405 210266678 645561046 747095186 995117499 760149731 822119660 860342135 978088205 502928654 874707173 281283786 875559540 89729432 849126800 199630731 592426436 679064183 833078471 504246510 864533083 314773866 709394806 48402488 945093050 958220540 970191101 978901957 997802878 245423287 913883396 545923817 678240161 255337549 627978000 942736612 969157708 857973364 927787973 660418999 982377801 156060701 866738403 940715352 971888808 613415992 939190044 44247299 231660674 121358971 838624975 269638621 314429794 639212104 841730376 741448282 899888218 24939997 192129346 697491357 739347363 724510162 784682546 655281687 655768328 35022802 172179776 736538610 774497338 199380309 647232574 333281722 795596552 503837503 563546668 846550555 948742120 404700092 835327103 31823585 273951593 613090437 967589751 160430871 963524646 802119722 986668433 743321509 970472937 259064214 519061716 254515215 626389006 952888165 958190712 121687490 951787670 858105447 976292978 92012073 942642704 791668383 886210267 578427111 747112737 82399454 108040782 910575344 973717993 491858510 658299023 677703038 830456615 439621514 950726257 870730274 919942479 412919077 548188102 663446247 753216123 882566686 968811082 895377812 969564800 603331572 687332702 504997688 912944165 992628059 997843842 860627574 884264331 337657964 816159775 636437765 830242591 34098261 947742140 997651120 999624055 248476851 717105070 135842571 267054098 422219634 745930375 715059117 809903898 703204615 941001059 828991416 970717002 266027809 693176806 733571781 990561559 507965384 846154477 770377159 771958839 753296567 975670064 434324167 946446332 235990325 569182090 870065664 923260832 157368320 876537822 923889260 936772225 66103850 824482928 307612697 603184742 742793326 842366449 142719260 999864813 275425335 400169047 760854491 777732676 898193947 909035674 625814058 717113320 997035241 997402548 521091073 927972735 585659936 685135287 116405571 285561640 867689498 975292620 161300739 689761459 774891140 778651823 691383957 972655150 179404900 318203870 495296409 659446547 989135090 998374839 712695818 884391252 192685971 913094795 552809509 990979104 989239679 995320817 318752021 955782276 858082554 867301937 501394113 624790046 972583033 974276164 560927567 948084263 644611467 992731175 891519969 970840464 727297990 867563749 787956743 869254132 278015373 866593565 476566290 703999179 147749255 660545751 127676834 219633097 493549655 612659132 710052675 798758892 332912484 948274570 587623877 892148357 440953992 572708613 627001569 936555652 5476055 296559606 709353247 875885523 435638241 758234244 946648226 972502649 950183015 951225926 946111536 952150462 159852214 239351590 578735302 973958098 231253719 466006307 213423105 519955222 859154698 884976470 907939802 981002315 8124975 472785982 631953021 996228160 158651957 646118390 702961520 907235939 250284738 313721697 864464927 917316480 533223750 759712850 989033486 993584259 243254687 515913935 443015295 565952734 930421743 985980212 123786736 336194857 537320961 566623754 454655749 851307305 38808340 690255833 101992282 327938877 166185554 323742670 644625785 893717157 689793029 773487957 349732697 484637331 229402411 520588896 15380533 68348039 193682147 506820463 869403625 933361614 708467826 837900033 856422207 960723808 534998459 660046630 205999528 611156423 530679255 751300300 133346594 502866473 999879627 999892579 166006599 840888104 769829375 877007884 168378403 268715121 528947741 797326311 666749426 702682764 334487600 432101981 288211046 675339114 335207984 486435543 816908478 865622858 399622785 916015255 940448208 942100675 854798082 874288634 629186419 903580959 605233682 809686432 605429700 872537688 447817225 552499710 260322202 489679312 171824269 259316087 624346726 707067394 458219556 679855540 426076417 902925563 604817649 650132597 15225915 305152084 254712584 770019115 939138944 979884521 656714350 819974584 21443643 131700032 981086297 991216966 824878658 911963566 69881141 922356284 121639162 645112783 161873276 687483121 776756406 987916041 585090206 945334269 793856858 878116664 321622531 524421645 851489720 983172630 166803058 640408473 132700550 190384485 398694780 747228540 794697742 995674136 371244793 701108570 723257535 874587277 248875501 758395864 767098272 918278964 506158934 701053618 731749229 981192281 162042163 177264643 768331669 835875054 639528660 816317258 432148385 728714160 793474492 815896526 347788535 693596732 726965115 814667398 226942430 517757613 344530679 348181165 834471650 836108165 572104474 595015031 672919726 937971308 936263452 996424915 556902163 658464076 22559222 743951702 385593499 988319735 623178589 910196600 497623967 870889575 640135002 834455693 914480119 951048362 250288707 368044635 436583428 484722997 880374815 943857709 426349437 792801622 841068222 862522666 908451633 912067775 787769382 965079327 392571141 813517521 552069225 739476981 613301762 781780255 377157283 693961438 961018789 981848749 939218242 975627334 939376639 959914980 952521266 988727492 187230148 570233803 797442807 921500488 92476706 567876664 946813315 986747665 697570935 912819683 157841941 605916631 861091762 957994823 421252826 532752932 424018166 707896336 669580899 712682749 750414078 911159175 436610594 476753156 383008726 638516292 617209524 722637835 305270379 772636855 938582831 941314415 281376376 640563449 436833028 718035722 962418941 971356287 971275935 998793165 538397021 579165802 412611761 510111158 246324583 992951531 347732759 823764998 998428268 998545128 758396133 977396577 111913307 602522196 646406641 761248980 901561523 929888146 589571603 856857564 562648985 563400306 710770097 941016143 683445234 813031092 908249366 988127166 977214628 999383820 914378793 985410916 193423167 205580169 14212111 547820183 664074269 738436818 356436849 701324168 624095987 870251244 973268428 996304689 841796453 880993320 695194573 852759173 541071177 686273865 545954225 563742500 848988400 899321735 406557743 733866373 789961376 960636099 501086891 717478183 218340433 683051796 891484660 984508758 837037720 961690270 443704417 954523654 664370457 961515016 88997497 665939564 98285194 582237768 369431793 626843595 572175168 801141398 359670147 754399658 907209098 966189903 759824565 908867378 554339620 851070114 999803130 999873942 239439244 537671842 446006844 906574043 855907788 919549466 708537366 738807374 186118849 498871872 775574516 801378463 996816681 999814289 684287200 806669944 481785608 504296474 873745022 986096312 140360566 670093678 126077231 684013117 907164556 974647722 95308937 412490784 446394325 585607141 14238218 96795844 879092091 903133803 537158237 959674643 459415654 950434954 889176311 902319105 292928527 875869686 631347405 689624731 575084429 895384027 551632586 639036818 440769666 814849971 568519191 982621856 59605683 955271037 829438051 947086841 977485419 977590759 637497227 987999517 62135078 620793614 342497372 857861512 827631119 888623686 515117583 979808691 956143194 995259603 840259077 841523908 931309727 951835572 774132028 856334914 704848083 831586273 390354617 830877117 908032918 933599396 647526933 927350642 112874795 770877310 132829189 452426201 992977738 998266305 263110934 329681012 844406247 860630263 227306620 614027684 949434461 996954229 379115895 569580249 770527896 871233012 3625311 71856501 219465387 653340322 187246077 903274930 290492382 755694558 625863904 870015261 36964220 692332754 988957259 991790926 897048943 928315150 152833567 450227211 462248399 881516074 996720286 996762245 176050524 317044991 204899475 797192188 15362771 104951452 214025664 324066700 225404978 995752055 654205799 958463087 853985094 893448212 576315240 937033138 665697047 938068881 717586501 946086196 845782115 945708702 462982671 533174841 911339709 967294053 92922541 908994827 372707143 731723867 874118862 976902074 789176575 967127605 962891539 978014147 615213932 746131228 309736971 356519774 90776539 402142862 572863393 843168423 712051845 954464197 893084433 896051569 863979929 961106378 379936867 395988790 313973611 573801366 86070521 614843152 970237577 981135193 805876461 894505735 914297040 934352231 157259908 744017207 910269550 927825006 989699876 989777023 917261400 929268665 654642468 718681419 677909855 711713870 225282978 490851928 634808164 761537155 383186226 837342712 379980763 561229679 390563344 717190237 91990408 304735408 921796942 958099657 857158862 981377996 675889023 700380291 663591621 899454833 10039529 508332253 16185974 837287406 234414094 662676527 892225054 911451308 927771838 949552879 994656960 996835078 897098634 970710483 386533563 438241441 71326764 154576797 161562908 574651182 8450661 349826517 164126377 604931475 383362518 412112846 422659051 833004232 276024647 622876952 565656289 790034881 739187797 951014886 727058007 942142209 153192494 369474130 755145411 999301595 222516903 951859533 747067505 748610763 610843994 624387858 726828067 835228274 736129234 763143073 863814187 890229970 77284205 310898206 235144126 321004762 76296430 649959727 796561161 923048724 520446070 934450215 565649880 990504569 625705436 943999502 276886432 982677218 543244820 732654066 147708432 456426579 682434642 812550772 179475808 288695298 597989557 791477308 29739582 622881376 901899286 905161311 152484362 389192124 654015453 887477960 606538029 805171213 730125747 976808194 708228842 911171580 438560840 935350425 803064479 846614362 760130171 919055546 177437041 448109343 833068415 936045388 703719466 814289597 680982066 736766315 539973748 560540211 941675970 958069632 724744986 787829501 753932634 946944351 374728526 840967856 833026833 864059752 908997175 981381914 832949091 897958816 813180503 936636067 589954478 726919153 979691848 981507811 364768890 612040539 245894604 634257353 455894907 878813674 785507371 969480003 270759314 617882789 214522374 395455795 538385974 712777206 548771983 744863401 87769811 902330994 24306937 97092095 802225909 908479460 852844457 952970725 869897787 953609551 46904435 217315927 477620262 661055307 794253224 829134214 575166822 919927858 877820115 899884418 31305849 855617752 521230490 942469013 829258543 947078361 181541866 746476689 637297409 872126036 519250256 817432196 604042127 808277954 336652373 379466916 156298868 392907183 132778249 350778626 871109481 987493008 958215007 972012758 689862901 876388247 554190663 793018569 568834027 755803016 745494224 813260644 951512507 998752613 659892846 927746911 630298655 737165124 512798641 920332352 844396400 951772904 457067210 775086632 922854520 979929469 665177395 994706616 534511235 737485377 986999126 991407340 745974471 839062711 605497662 901359701 692289928 749456683 728752451 911174400 495559636 695659035 323968979 976816666 5096891 971644323 1347352 153931282 119143025 840351201 595496714 782187853 596194410 734789628 157157765 476084016 294588643 475250755 732158779 838451145 948650528 971903889 952277382 966240051 300631659 772239054 151811193 236292240 918690840 984793269 935474556 976294352 321657793 531900798 634857195 767057107 37761206 365062847 456616219 792009227 57899827 876663463 527430846 584189882 890692711 894675558 732637674 978972826 953681730 977458760 86726122 111158708 205216970 665379021 320217049 413538245 9685828 413186902 685962957 783871430 72084593 149250564 984900823 999113358 844084764 978489568 744782941 968053511 49688239 933392850 214897135 740134725 356891752 693166442 187340525 347545186 747496336 846973681 54575344 116891203 909322352 978194656 889189665 988784902 427486025 952482408 892620483 923395304 172417235 941265757 923665534 997446632 697198696 756779197 320375100 687155606 68528710 819390914 607185963 809913562 389280614 397010838 600727739 779989700 169447561 565809055 209093184 955875063 441368185 820508680 967081199 971561721 92170954 779144957 616210268 831617840 781632370 851430441 653962102 892716020 495433320 683704688 954032348 992502245 177204409 846996895 331860584 395006207 816830163 958662529 571026390 965840647 318962319 346439183 988026336 991388073 40085098 377209406 446324657 792735273 977880118 999237393 186528232 623834958 492906581 627708042 525850568 783451872 517156119 562735703 961181108 966447785 903970861 998844891 924099848 967873229 261303848 500048555 251041700 953374800 129038169 621875940 272305329 529113753 22817605 262164945 275115297 876412248 156242232 344683223 749125636 813245125 152764754 437545967 33328362 73028738 649200399 669747616 720076635 799281663 714428788 785785855 650911694 744095063 444412487 709818840 218657431 530974617 771005298 818772560 904996648 958168335 766014691 923392613 636408017 781816634 227939477 939918120 330651237 862650882 203544253 862619055 818009766 894668871 541578529 824314297 871633970 931294574 306064800 859409472 541486263 889638154 266957437 769740342 951623552 994641792 905877354 982892309 623535727 747331647 679049052 941263132 243278267 980572237 811353301 990415309 533329292 539305236 842498684 966143196 841999869 985946570 446553594 502179460 82456127 972219659 825577200 941633842 272562140 711778445 332425048 584521545 614024386 724581662 773243140 933159440 77080352 895577046 658092708 822537816 207231955 659455185 275091845 946969447 217987828 577737430 972874563 991817032 976413444 983267309 501131620 578363256 606946748 909787153 316838632 627931602 795010175 970549930 543556102 752643194 103008622 838677850 216470321 219055803 930675351 996189041 697045274 796189891 494722092 851490074 407656037 470221720 140100995 383063866 986085096 993466252 486482354 620833313 539864774 768899047 75732907 716618278 245776396 360382216 649966852 805448177 485238240 778847809 635590335 829881263 129880398 858739124 353338342 639806435 720741265 987718862 499323129 585729170 803032141 986219298 747656418 857317570 196591497 733679569 405637595 851505209 358742320 507482312 549695136 844083606 138197714 721601550 127995864 223169445 701119602 707649882 875768724 924332235 818274131 924628778 59425708 975965697 560601312 992596119 545095596 704713479 638776315 649166952 758403191 961496716 301644396 577961494 613567664 728174288 79058934 593291534 188958762 682573904 402115106 705260476 304777551 382232590 303703149 510514982 749614537 762921298 759024650 828214952 654509211 838172876 444887767 757331287 827453237 840191617 920400205 951912061 721893392 726669312 813284863 973011025 752600510 870043121 721918541 907613348 573748960 967316176 376697125 562107609 234034023 988932352 276637604 511198293 374744668 795066735 199049238 414721402 735341774 945495763 961081923 999763873 984963487 989487718 244660693 535598758 824842004 936032239 201714305 227381844 806723952 984655240 874569857 933331314 886664230 973912578 491491037 997008858 807716316 908674405 354066264 729682625 334659390 833589471 332035028 962792695 857353965 896146396 864346490 997596014 828078892 982106258 954810292 964458926 602444371 994137297 16536493 878026972 993785413 996604552 507943355 537703528 524910640 608215834 104059991 940578608 403863490 891769757 869263111 956357548 997517114 999932639 721824819 833188227 106066753 964202133 188157831 878681733 335098181 527626928 922698514 982823590 824999396 925676894 24621881 84540447 76625816 112506475 251364452 713307676 699716295 703572536 664262494 911734084 691320985 899093776 26745086 141374696 823310484 993607602 716200537 986618835 886941494 962982395 128732340 974720844 198983830 541050673 25338128 357064286 159157720 522352993 692319843 814959392 153822020 480103955 661728970 729483652 257956376 681646431 408473029 715839613 45397056 123418612 746464917 933024211 569706167 844419905 814139341 910506909 778591482 935224202 301392208 480766732 306146308 986656624 991623976 997713371 739559996 884372519 940472071 986620820 378138718 749508516 369353654 452594078 836741561 886737115 37466970 259537254 823263047 830968822 652896261 834805049 163382440 379509317 199795249 651736991 888382567 964932176 762275296 832864332 970364157 979080282 866800356 941152494 59172991 293379864 39231652 372583538 178876664 541182225 303202380 718376114 258438485 467750249 916466047 966771151 75408712 616187388 622926718 853221489 256300258 294864043 434604032 530693332 718341034 809901594 465696034 616794223 337699201 517913678 337218761 544811029 650508004 718880746 581042595 728608882 92372120 298076850 886567996 974023062 461427482 816078184 774011906 801587950 91269328 676678709 63371773 66528697 712976694 999548931 797033047 849817582 499561574 753394305 716336082 781321535 45642576 685283686 791846573 880835750 457634511 885116283 905327817 910922107 782052143 892724472 169908025 639319397 741984017 909666308 999049176 999757027 780341015 896832166 899494950 931302032 724328247 995301709 894240264 967112548 453558869 698295946 736076902 876091051 565043907 684300640 671057660 839287793 749458343 894693827 121256872 459004749 243766949 390330612 468160941 949665865 44032276 995261594 623947369 808520654 488749788 830268892 999006626 999422759 378104904 863982474 69639830 132893983 235136858 401678897 306577971 665553363 451986217 620764889 728172816 852556167 145478758 924297372 581816618 754278195 587349689 737217060 772780459 982802603 198707507 867915394 152292142 571965521 511516420 566418543 108745799 230808098 375608698 770515935 807461881 948972527 801230281 833155123 128471164 172710788 722256526 839024322 114510609 216465085 299415049 844828319 495952618 687950550 496365913 528482785 388513229 513155012 76571168 629299594 669495206 737109274 498994040 746927135 745645074 748648589 44353890 643017995 64243877 983184208 849033816 853520296 6017836 532466939 847028404 969939152 956060732 985137598 12935039 112935539 997919011 998190487 401197432 710473486 531941 705994084 534954123 753668773 453407158 708349806 783889334 963479401 989403423 994560714 986573048 991928875 670891140 890591791 87816771 769286214 96828552 245122270 917912678 935521884 964693718 967736841 495462848 586270505 896617313 931245399 8532163 116296762 484411648 895253803 79095878 222771021 525100360 561545698 696201406 860266375 696212955 832376197 30414119 712824597 690703637 920615171 521155196 757692730 655352321 813175337 295930661 533689555 712524524 737315372 75385946 724044232 512697750 787065340 103745027 181829382 191261301 274776303 347822808 714113125 671008107 728669779 393382839 488880527 864239125 997744159 648135743 726968532 247710389 970350717 977845742 998118511 847758059 894539256 337403005 950410847 87845250 877616263 688444318 866714791 475098616 803718147 845698443 944856223 147617273 939017073 809339812 863012249 114792654 234675515 950482280 966278790 573641445 734452240 313689330 813309987 648633574 784209150 550941534 860068402 708303061 764276228 777221309 891711514 775803397 963859230 730866631 888523588 551558421 795118502 602604310 712261146 772037906 877496355 864796313 969369704 348332067 412681062 303120251 356177394 513091216 562089490 799164609 845070406 638318045 804670411 492851043 819516007 161392150 301524702 847890528 980922873 803881691 844616821 380263037 819068879 619353817 635416897 89904395 935020294 183391539 787355036 808370035 964702354 107746178 845079442 539678286 955859036 475339557 825534596 704184233 718814142 26454623 202622007 632871445 773646955 382990799 983936232 394167299 901759544 912484991 968530796 597354808 750611706 970531600 971198749 941974432 949190305 698588818 702469220 503830187 952298326 700271217 998345011 464258765 935009395 653092035 836674123 276578951 528528441 152937429 536261620 814183155 849086620 970808955 988714269 679375662 747774029 154585601 545058189 819244711 960033467 498591565 915350723 178278560 854059367 604060509 709368741 634998915 796012489 127454995 468007553 810896594 862397696 185455738 586500433 112076376 776017589 584818104 710776059 584025721 888508760 542206430 700102383 400514482 739522245 975583247 993134366 342356151 430110043 525918760 950224081 55489115 190017488 25400746 289189282 681078901 975735317 426826992 871313914 622384443 860366855 765712193 919393605 398495376 746250307 995282575 998697725 679717615 826236620 617732894 870952617 19342712 86947100 742537810 932575420 807298210 970322593 929122414 950335443 451864166 878189105 572967271 666042940 180775862 977442079 735331871 913072919 280218854 616642069 16572872 399215405 637293392 705476836 217073498 387428485 479038784 886969747 604824431 798938697 928456451 958189862 361578130 550798255 614012778 945810114 111753658 386923172 296918573 621462974 283054861 702083773 300667583 651911355 270207070 719853409 701483696 861680241 356946303 362438191 441746549 622764302 424349201 688234786 598853296 847354605 833041704 865545976 811940900 995192432 146904812 569711400 157561547 375015549 305291949 829964970 143242404 986651802 831111071 837310358 909601709 963506539 812898911 904437792 546414959 724339507 284577360 764152712 734581491 954152262 787509158 972525340 338901035 457480932 892468861 926270243 410573188 502129501 784565087 954031594 120918060 648562392 388295455 539815371 222437846 414549309 379839487 811268527 974226477 999750266 761135476 781678642 546208014 860177278 370452815 842105272 127168898 178043910 407863412 945883128 252870033 410126577 768917742 828084184 36761676 70694984 487289956 548038801 507756949 984686491 504240175 574215446 145631534 816323476 607190885 872149148 142395827 788112582 45701538 810559497 926279678 996901582 837670343 875294343 223957848 651926173 86985707 825632844 696554347 925065700 614678133 925596604 150205653 772668945 173556406 385252476 199167771 641823250 909162186 996713809 242339181 399014217 618377033 685214473 682525051 719191985 129475670 907022504 489211436 799710177 445723993 964209371 553635617 944383302 999846393 999952060 325661739 808861078 440157454 703761933 672310054 810675897 301910199 361936969 226048223 849188943 913024609 991232562 16889833 244554684 460317503 856515804 287138608 912979303 866766002 909336974 434706556 806727410 749257702 973749960 3663967 461057472 757097845 810805796 674525668 882224312 139750904 402946475 746715099 988459245 891086700 983245413 92803890 521117025 138075924 566443351 339301334 607636670 125509743 779433978 48676652 686870180 997016227 997982783 693987630 708123843 27476968 472914395 472721381 797736874 223184440 872006560 106503015 218547542 637923817 822069347 227400106 683626816 707389383 841161950 800247998 896809598 751170249 917418941 765536820 830049956 901358921 923323778 999768033 999902010 761804674 920255770 934654687 976124583 925114388 985625112 638929803 648041004 273916497 767843733 962369983 966156371 498786844 773094753 788369799 823813188 192650758 448674730 396626117 500233289 527528543 735140588 708974001 919013023 947777990 999901499 605239006 964919060 660483289 783458186 600526901 614543134 389213771 707065863 40033308 146698094 416055079 500968096 378521635 855946314 647418488 691553681 48726622 603132149 959401695 969408769 562909466 677317523 4284957 908534433 336463123 656921133 672041203 791650033 827375915 974833349 766862893 793409382 189376389 643286283 219722521 336525307 77468887 248694848 938718647 968259573 44523747 309548738 825890847 857973906 178521074 920375711 275047831 403835341 981640436 994038251 213391826 266122420 476849936 700769908 305386905 412214843 621928196 859571602 323830467 763337281 759641316 918406908 129501639 289418274 546140438 794881638 101800325 989914893 121758264 349706378 502261734 629296815 385397117 721898593 603666564 791498967 51509499 108151850 197939450 294252130 461425942 869377506 175378860 923703765 854294907 878135746 729771293 736973792 751536402 871212566 876337451 956321304 668255849 888531485 370530223 574124265 65908643 258931117 302777425 819950917 89850621 274680929 481612469 776909007 537069044 581520621 68836406 972550480 878899797 905299377 565821343 928054858 918183718 981560380 508656062 997462911 692100946 971127455 754552298 794424969 680300114 771373160 751665779 939908231 348409678 399059801 855818459 876977979 852399584 910196862 247533662 278177560 617464896 950919232 618271847 841631025 856318569 924968703 952692998 996726262 822358916 855187132 955238039 993072409 166588630 803713757 886780477 935310280 361719239 443764424 552778418 851260455 647341439 748102320 475668228 755791726 926053885 927671129 580154751 953794607 582504023 883019434 565629387 971678906 56182881 650587548 639557105 739957032 786083642 995854196 412169105 716726150 740889993 893837925 799979116 911224551 324221293 873243388 180031699 506990513 45399266 233424584 548971513 944217534 696327072 780809505 519073006 807291975 798349714 996337302 194247200 795468059 139893283 453894326 495265052 822560981 340908755 366690295 589964225 812691379 200660285 721908099 886739105 912726121 723294143 956032503 1434172 599102356 439967970 983372433 23219836 437687047 957222427 987767898 74282911 376345861 416209597 549314076 901893945 996551497 225014103 992017161 254804396 824939674 774571539 974908701 730281301 946960746 213322611 439790970 437485918 439670700 730143762 847495580 442197220 613389767 626230364 792540234 435603139 932200500 587309125 598715191 289622421 469099800 258864932 634970141 824149572 951524594 502967801 986909121 559073897 910971365 277501904 960344238 826113167 906606681 864597293 976477099 928644674 930172079 456880901 538829066 754230778 932688114 637672327 647111564 672586843 954792279 937394731 981665148 941533258 981444576 844959094 858447374 341827644 471473961 377574043 665994725 453642000 708528330 156785343 241038069 679431012 784529333 298849046 304688789 641623138 972492646 109720900 430661888 217167411 384017963 56045711 171701807 869486986 907212529 885184914 962284251 155548427 166389036 572223062 638573955 482097678 912405150 645364054 674120559 510867497 741052225 854287927 884383117 265107915 697788857 687020579 872085208 237611942 903171841 407287364 527538119 230955906 476548362 934747418 936981843 478320035 603064603 536295273 882047255 850983832 911211887 99824626 678737980 533481408 665159929 742481260 821989037 826966955 835036019 10087352 376729254 819565525 845054304 161747325 263678753 415049944 635781681 414739962 513091788 788202597 854439465 895760460 903777343 317113749 946642146 793199576 968236622 838468453 863285288 209870767 970592622 475777002 818750562 129713229 457792549 877980961 954693698 628939349 968617037 23294112 687757581 930152387 956490021 700477435 983681750 841209028 858303089 962670552 996211159 153783512 869044444 746485699 835182768 452825695 980604586 433692754 502368634 24429725 565472130 456709018 700178890 417996783 897597312 990763235 991078135 923715533 989180085 56870944 675779065 14497479 755201918 723870144 979884714 407610013 767957736 680641418 850223297 262652575 421029504 538738745 702825778 576755121 826313955 668288490 994129523 872494330 957440251 775400568 967980900 171237332 332722654 534349781 597471140 385199286 615799329 594553905 997684442 560039723 974455770 63228208 650983700 106957901 409001164 544051358 926980736 506538937 599727677 205277572 417087317 372438114 440415433 685547631 905103714 81772868 544499050 122434865 372093384 182343427 806659242 31532330 319962858 197967596 861837890 854546468 920190037 488813862 621455489 340465415 545591669 497466494 764372464 360580540 727598992 222136422 834455737 904518480 990714075 157444482 949912769 393027889 436375827 365949160 722315078 264922942 621978041 224376420 228050304 72095203 534821068 594018815 887925995 392691632 771713373 739042885 783372436 346437612 864723245 852779638 939381610 128820184 400450433 268611094 383332029 440964739 694810681 270746008 939452607 86620807 750845256 134823971 831044531 477974612 779758099 911183003 988245867 909576154 981180074 492842549 811261225 71576123 130321247 395316792 413915233 159374458 852217609 362369235 671006091 177143195 494138767 186134689 543889686 798855907 840978155 587401322 966385925 580548728 894760691 264735132 549111606 696939576 866177668 24822768 113058875 438902746 920504355 381405811 992929918 995492631 996103761 573325592 936671140 209355345 435237670 961755014 981222705 332995843 364263326 549064581 568815109 263876440 749813797 51267511 941411436 375469207 656745507 94656302 470572198 374177514 469786226 730894129 781562031 338145195 416465707 469280801 865967718 534439389 682698059 170453329 583755369 432842261 738648733 533727348 951865103 884560630 948004258 945445450 981509287 727716466 964134729 959238871 960887721 148580269 664770635 896620367 955252409 989592197 990055486 80935453 357275395 382744872 548801378 344059962 497140163 149454524 624068503 471588011 879970052 391059521 511296348 955250061 970216143 178415953 757874630 409283131 960735519 278200073 830766032 704445856 927851749 413281914 724463769 813791073 865583078 979998182 989226098 889684384 968645183 564482673 605377347 198533713 387929192 212300060 267451296 66858213 160941525 610545055 737478667 194494237 733699945 397760316 744966914 566013244 854491117 105678801 262102257 262644428 777271164 631071240 683171468 671835162 983733353 102750885 525506500 55780622 529372390 744072356 835209864 161941715 216988794 952046235 968015428 469125818 793037857 414182345 991247908 765832228 892585873 490540914 644403006 35648218 936989752 272260717 399747319 394303375 957721064 468186735 688304189 714877018 994961705 660238449 905739213 635873169 848367520 202733732 780453639 950388467 967231936 883610444 929713218 834155505 990626748 295128367 987767567 586179145 791870511 672919756 683770628 322783217 988333723 926684743 940860312 530502616 746349752 241744815 568974667 718149439 790739615 165390633 432899826 244185103 495865894 32011885 48871269 921151602 927217867 398818894 716515648 506870848 967994754 361637325 776472721 759974808 935433070 43528799 649429647 135044035 266916529 17049994 905060126 482408823 984769099 357776144 420959411 676639332 799559794 60468309 980302700 814050564 885270696 313804008 797387680 56140910 882103133 314673667 571754290 490729700 732710531 539657217 808077476 597541778 722364727 437587073 893661851 972041514 997746325 738128537 891342264 723086249 736856694 102299065 844141714 572050171 975581041 744973445 813746405 698279051 752852704 486040319 588012391 155084668 388267910 186898664 829408349 931805954 960534640 518947937 723637558 613675883 655797520 403635805 750407295 857933492 952330315 876764151 931717837 34926238 665104821 658949832 666749611 609600908 887107624 312070971 459923644 133207520 961135523 759132727 782911195 269845911 610328303 92284856 586640866 787020454 852173575 749102691 824099903 450365802 614848840 122760380 644575396 353982509 596826903 945282398 977047463 710154856 847606298 985689690 992638619 573255195 669796032 198473658 654867519 504360149 564838862 73904262 854065611 777130782 883022871 228253718 957722061 80667505 746065275 587763258 771585645 109699333 939109766 667753737 869123229 151489365 846674223 15930208 775540242 689348231 763718545 858389768 990399792 995428446 996922779 997530238 999119718 550223239 797920086 8036605 658839571 610425642 903241155 700537256 770468426 708947648 946909036 663241849 692189032 848377276 875875613 20329292 626754794 210895221 409227072 959131459 999833222 770732213 867129703 17041523 245075979 260510298 662991582 472566301 901111509 724145308 998143556 407236154 700936652 274682679 346197895 411982224 554660209 679823668 958231358 830189047 894610322 775548849 834614249 527534463 656451633 59640621 111918610 859934164 952275768 229623967 884335268 506043067 585034247 496197917 580720209 894339568 999936372 129861974 877969671 329849078 750275063 825615508 834171207 368056916 458738793 389958786 857852568 925162686 978830955 211568892 334044610 583607294 768098524 81439624 753222316 769122816 920427555 29446485 305155028 66784785 169198314 97318225 549873806 922556332 936348315 338483302 410951811 244634765 948210380 555070411 698250588 666663045 964088674 820893463 838348383 68550574 506929228 860097544 993692495 501766838 693827788 512891888 602364991 786426359 866196697 99983721 205557702 795348658 940004567 281145553 381636010 149939754 919818123 395100725 522303173 927029378 965306476 757543442 855556914 525548719 668986766 161182119 749655968 908276880 989084701 169595419 377803065 168585671 901440044 253764201 565823348 866130915 915411987 676927857 828294894 621309124 927724761 245283846 874117995 964309087 984709429 488063542 737252524 117822891 704274934 953140076 972574880 750795314 902280134 321331224 952321933 774099711 999949024 104105860 604185622 798994059 866682325 64403725 971653974 560019998 975786880 709986145 731980009 667582066 723798518 802221584 922387869 920116079 983064816 827797147 884429885 846833757 887737870 243194013 258855455 57792888 777804168 66697673 888130577 405241328 737689502 18232311 623177407 619769575 938570924 590196051 970671476 759553713 769111082 117228393 176335424 27258565 600099261 533731257 756405494 306479978 416424919 22903022 806501468 838989891 917460742 644683700 791049941 140957211 334501909 138386404 591582390 245823208 556549190 635747170 786566379 163114628 774832027 272782975 496455017 546435188 944742903 22315142 560389066 308111691 345098750 913236079 971221198 150530197 767635674 26637582 478745578 343247714 825225515 84622560 422444280 604193376 676064429 979936163 990317876 674919628 679093153 168263283 736163230 83634460 162090735 219651718 498759941 670457751 984037453 370219483 420250292 980425101 999098794 77976628 184109631 66606820 481090266 172885539 456219415 761323776 834038822 454932595 558266035 72557418 843449332 597683051 731222415 50725638 337097260 842678211 994437691 418118122 682762845 159855961 661541186 180743569 748053750 318953291 364277351 803517113 816026347 468794788 759634571 259958771 426955888 619382598 648813508 920478005 960980559 249256772 702655966 98272947 509366834 809110005 937842759 891102011 935257510 629086752 701846070 952401979 975038369 856053319 901046837 218677421 423639603 73927825 812368731 681836918 725980543 713683846 894379341 425723969 989560948 821396627 966826235 215622480 696751583 74516556 672783726 640840239 897438739 120043422 864687059 286204013 351346330 684428808 687620021 382363513 420663099 448158497 497299474 844042672 886395693 809799854 834444666 200858885 635549602 994121279 995952433 564476509 863755005 905998072 918034013 494267366 549736458 421529316 651401502 156418394 777321848 861640076 900801497 68417355 79656605 375923909 927387573 927300644 941938889 949781251 955673219 333202136 793611643 267480407 809328519 57282901 883875622 900491204 972646714 551783057 587495464 356019031 662596236 628415863 847706446 899807590 944044991 968529099 994381435 32975478 256000499 123561338 627637433 856429535 981971750 350289731 939707107 897165273 911427253 753825923 839323145 831792329 890504270 865675253 871593861 463433905 832850559 295133797 911058532 493478776 888245760 250171009 402330560 970981431 976596149 658851334 688660138 668795850 884027694 975895832 976513842 50748033 721019576 485043673 866849516 757457834 991374646 823292561 894102515 394678540 480288258 245508126 513412982 956232331 957123649 54955135 167298980 757791681 844604999 721381317 796143705 13048797 47933374 352705142 905460133 576500319 750857201 477685808 691460425 85804165 336791922 345611465 852771819 163401503 221134003 332089173 474981900 690176437 964563565 559082872 783999363 686919097 733404576 316827677 649915047 445668745 872242617 403514925 413927591 666493498 998644023 509565367 821486722 656616866 808241679 690438125 946321900 315029942 984062833 251093629 625328864 349208351 979240419 405095486 817133507 821638678 871333468 544483564 758392733 905702510 925478394 296175308 944328890 260718031 558893093 669158072 697323233 588618438 956631132 359835693 525690176 799325348 937433889 841213630 901016941 255352891 685954291 30974799 624562342 665214132 847577414 436306897 889888343 684659665 870932620 305677712 419357429 640187168 787159263 585580642 624885434 805614518 823459594 931761342 962697752 445661522 711527837 260556520 341929872 372996640 373559031 789608980 981208397 845580587 999915368 235348782 625892956 943949011 953039843 894284390 989476348 294757670 506913797 58350724 575353529 806029312 966634673 820071398 897440896 23854681 25910598 687127477 916619918 104711290 197934947 467496166 493167481 996881573 999817788 356232333 484600707 817189877 901667228 650536378 962422566 60293832 702811296 477765427 532068666 197355087 723429883 159772857 334410466 34191141 408050979 651525468 712386880 186280272 695361165 633974031 695227108 811643350 838220351 796561326 811717403 576841825 693765292 343357937 384845491 231414547 309443806 70152397 114172183 598452973 886311166 607921529 662027231 835009060 865838731 615026744 676311214 780381853 904492808 987432433 999863328 551098828 970613586 119380278 960781075 101599813 883207828 965189194 986092720 280160518 904486259 67980015 183081154 771654563 955778223 560567098 752657419 351627472 633429689 10730922 93115196 42190139 659470671 434982860 816617989 482071095 657785858 975626908 987945230 840752331 900096892 921599551 966328242 283830875 485340476 727117646 894960253 969419492 999295858 940598356 992322489 363766876 452518210 828649221 933958383 928374065 997596509 941461743 969330844 714104864 981387483 518720746 567462852 108236256 199408993 399532568 543866851 763679718 787552236 460167786 807417151 91715027 489419651 268366354 744123898 485611667 861213672 879489703 921831621 689775174 699090903 217942550 342199302 869691123 978830044 973414681 994962368 940724738 942305350 70128380 318525106 720646502 944910206 599032066 800757564 807290456 922349562 229794647 429208949 323672484 401202623 500503026 905437671 490549457 825126454 987258773 993043979 537345857 790182181 850716576 946374024 893296575 948652755 257213777 653675238 522706801 665957146 178491693 828706297 75359098 651348230 931158029 983854726 956040782 969653118 150811639 785203222 995914141 997732702 994881872 995450275 946172625 977693585 194782409 736703598 247856256 277432709 302157226 303074284 561482415 871913046 359529935 931608800 540683458 898736605 137300387 242895441 933956819 999766403 315309079 754115149 485417311 714939086 377035619 770533167 668584697 994589273 98769638 799770968 699574422 930266140 896384494 933573321 147436021 515217154 851915281 934667794 715587472 867219942 483793833 651844518 135663891 372630301 170182548 662496936 520705617 829509227 69308102 402398133 855976208 856120795 38900979 403329612 876212654 899465340 859714010 946667141 750926993 956026704 791806052 808820315 35311841 260006060 256144964 985790669 962619331 988253828 942333536 951842142 113666530 905436800 480949863 944639706 634170328 713034239 686166886 732905582 705489008 906607925 136055553 980772091 571761446 847265218 797485863 981057087 992080337 998809780 506637762 584014047 900396523 917844165 722845703 760373864 251853074 644761372 861641378 941819171 451589829 937322020 838606162 868421229 594733409 610464623 685530899 730287343 705297221 717167623 750562893 811419106 387504045 450463652 367731362 510576893 471033681 887359807 370642021 992634309 629386634 863364789 396292540 396364466 846758253 923760801 864294532 936290975 519937237 703134950 200427477 279001003 10630913 233609918 141007034 847756327 240217150 366098426 329608297 873044687 233198804 636896569 890271736 960305075 322222749 681407310 35920205 530697929 509127343 901073813 280179629 600006889 54664490 246455381 9645175 332299585 636173139 639937489 108146681 729581517 904999948 913148239 227110872 888814305 324734682 724315947 18529386 317675380 508223572 565365068 442434446 912143618 579750240 584190218 50362355 251512053 843911778 917765807 848997197 957919861 896312739 902895685 819162536 984491313 43459699 635640839 699984149 841552059 170322162 746992931 333110313 832651937 950304984 980742171 177090489 366051515 3454802 407780255 104650132 962685883 474595697 521287357 63348620 110884367 833055190 936760487 70096664 360235307 487955497 993805268 539609533 599259046 71485013 577051801 88403560 357812447 836101105 898371181 511054906 690485533 221172392 475475206 684941144 953029502 743512003 784209562 209237504 216402002 124122219 579455234 820453394 874998385 446640592 659234855 684677275 739869085 713994286 975083687 301632860 467840375 239838456 549932793 995129027 997495744 116358160 912055582 156596941 847017255 78963349 797086335 591501619 624488073 184993548 447664574 275915417 423306269 290973789 848941192 630149220 974501016 947175595 958321238 486377848 832397607 384530520 596205935 459718904 740329092 790023962 854505980 180762680 999566736 439457323 687782351 828685332 927667473 754786511 755458843 824161631 865274036 380505327 912759802 149050311 886936796 280510871 617735006 497491196 794262465 899167676 960263163 723504904 914151013 896380224 973429016 260152319 508225058 730704669 902543812 862584821 945814405 735709986 877063431 833868731 884878309 21484399 756000755 497964018 552777929 301694882 307943620 959897224 977602457 505703949 812651793 7084184 150944047 856207490 987428270 110451367 945337797 211466085 871908705 749745198 920332301 88890942 918366002 68112995 859298089 938752308 939343728 836373512 906621422 45509822 80515757 730333119 895067904 111953892 439751132 75864664 195706156 375557785 764554090 634823153 680931874 403227967 648025229 287787479 557533864 741394430 940832246 121817232 797172976 421380624 955436935 220186066 269167749 276433317 697239371 383742118 481030501 947042411 957739959 606026001 941646407 492886293 992673991 672310225 765736287 568047081 948952556 225488486 752597637 102413287 122415228 122037266 410075263 480710660 760024923 820701896 984068032 933785925 950389280 141866123 313463399 387767506 889411479 804675100 989570421 630706067 631571206 484306607 599008525 708340084 947086987 581604818 788180442 896276952 920798080 898074082 998520324 583574696 804756894 945704188 952076404 710658356 867014947 650082679 937194029 502223678 854570159 523794458 944794917 940597821 944485854 53951238 556949603 862326735 867777496 226131528 759023797 762769422 861617496 714040942 860447979 418941908 423806490 44746264 383510520 938168011 987157691 179663275 394138687 969597707 980261629 450453009 842583265 540221824 790620540 535355341 917263836 547508328 695283634 976666705 980234340 68703014 402329271 569316427 932478724 757403168 978214472 709645777 947528448 397235201 462813736 73422500 822235390 671605481 841587517 238650570 828468085 895594913 922633994 561762149 787349303 966186599 971807321 243396087 387106556 79350623 729804377 256752181 593310469 977191547 980365310 54046373 846527257 618985786 936000026 517442331 804987350 790693786 966355555 715592739 823312992 140568281 809102348 300107596 602499614 26279139 352277726 698608689 931591431 923684622 934598185 542615232 944923226 785328581 846870120 613096726 912595064 30331707 241133686 328807339 983875773 444883610 567074551 852846031 922494457 35779915 746671663 355890861 382506306 784798250 819182297 11534006 166775250 137929039 345276950 660364507 712170283 965852552 990529946 416943234 903360824 86821836 161265996 317604829 797125093 635183485 640643003 789467675 955925095 38652472 247571001 602927884 883465137 216554252 825271552 280826138 586453123 877070632 885537697 658606191 733731168 511524644 683729006 527852622 604843639 27451576 923229154 877947995 914069429 263542164 432324676 626937387 910024125 978807818 982202774 356241359 420518524 159825256 654398112 461467203 964681460 312403771 410341964 388982162 518183276 942998499 970594715 529676819 539010146 357311882 437775277 285298187 851704517 359795375 868479014 344056744 491595517 152167500 347892221 842664630 921777804 441598053 468984544 783374285 807594273 649229894 763940432 307251557 475136419 732784041 810008927 530129781 761243370 247677243 511905556 828122916 946117502 750149344 976401541 525769527 980759752 766943951 834832022 706489423 877253989 344012007 345210645 630501840 669012918 633759940 737002773 272112643 308604611 186601819 249116017 284611399 651014519 641493590 835104448 200928542 281171277 883551958 948384203 10264329 477172629 330146257 363488723 554854888 881567371 689312202 984115639 544099464 982018952 929298894 962336568 739818954 932676363 893359952 915768558 549701143 757193914 624887001 665370798 961426645 984955184 202704780 999417761 258398221 803679305 655354539 708756028 915127565 949951855 955186869 974975760 678073615 804931683 628720834 953181110 520608637 548627541 228282354 735970974 77968331 386682194 671908236 946497559 973000475 976060373 854073453 927911838 863822012 941155273 44312191 300119484 885988268 917669865 950757503 997346596 49802788 673612117 42360334 122512058 505439027 792879997 803745860 906911001 652441922 758744404 5558070 644257650 842764239 907745116 124562653 346847622 683762264 818948498 708593745 980903297 677104786 929373697 770882068 877674860 417927664 918658804 423354373 482245384 595968772 632883392 58810345 745243443 77295073 444487131 233065145 953981542 933819961 936908812 572458056 991037743 5964786 112740940 453048919 465611873 427238078 902939666 965835270 977262254 843840959 972464721 442287654 885023951 864100778 966354313 167885216 224204881 259783173 902529126 786882210 930023787 345979472 453364025 596360326 732684453 574255012 738934106 393131979 684044538 323949297 802048798 20313963 132582016 485125715 513052507 731961877 778585768 783465854 944787159 290899647 758890475 921609445 934323639 207125164 936970327 317736052 619543025 197556674 603660254 659593114 700642386 894795937 950305505 779146152 972857534 675265115 861683674 608567897 801672124 425627529 862909559 556604892 823643218 373345944 797098441 3806976 998559768 248595248 366924265 19826037 962817357 620879043 810007949 812163254 838499231 991496586 997328469 47293445 736178342 66277387 373089480 378694794 789385006 460820773 710624478 511765454 599173449 189366299 409516862 760728537 821607663 385340671 690545078 850097376 902014491 395892114 467219167 382920424 499158565 625192478 786292016 817568512 946623851 51358476 567213454 26828859 288438255 376202034 749531528 220376709 924995072 68100260 816109151 693038629 754195369 807902496 851294779 342289492 763690166 184225392 524397804 307858319 628897443 159188307 678718887 672254179 971253114 662609880 789654194 775644037 887646709 779202034 928740017 761272420 869604954 272702101 387649430 589571684 664499860 745981379 921168883 771023371 980995383 497920427 858802905 38618498 809791279 996116263 996595369 23355060 848213672 604899327 999990792 44040777 288114973 192967569 748708403 261045924 559273433 151130302 737975573 375327403 700342199 771775696 839570321 231293659 820126923 367228288 840826752 151573703 520203017 959669562 978174570 779965116 972782056 165760092 180241341 337388683 341854882 821608173 889584518 94880533 933233605 897601155 924944826 248745093 525431449 200980442 552369303 95674572 252023089 51288119 414344160 126003372 799737408 559270682 685801096 641365379 794259883 659311955 837917801 882043363 899213398 552767091 605995147 335367020 709996379 787545744 832827395 786852102 829709379 500881132 705643652 805539274 960732390 408759325 845807249 550596227 908501289 401771823 696709108 754565514 848215931 504419594 793891879 423330936 594118739 36494027 573041221 316182352 764757494 716890133 981119512 834826101 957676601 394986713 678021343 836712476 876618646 723605839 927153053 633702483 927546381 526204312 635356928 622258093 967605556 20467628 597394814 623357773 804386197 819881153 927920044 351927339 505103243 562257879 622886537 991610234 991752664 357323493 445783944 428500412 451077076 854934230 888542101 804530249 815134326 10349682 834468575 526496860 723176229 595815594 892312321 636605022 988571324 928040156 999856500 202743974 254759294 239263441 903702482 110738929 969662531 698325200 780818976 430252834 505726823 97478997 381659694 831294111 921002822 585455723 890662763 97127027 573860432 563199425 998518082 817409111 930618692 491537094 598860975 317419964 643849038 212731857 217672827 182554277 779723344 258066709 435453005 123412676 339338049 750603482 941797674 350368500 878632262 63145854 70780935 497709131 508458414 268320041 774764802 497048701 755973255 686719791 829877238 749784429 769359153 625496339 846228298 79675690 206154869 49752416 261570485 709548110 841711226 881234254 883408708 232966098 658512794 64008653 318062214 819781858 832545555 696279070 946502358 943790525 954458390 470147536 721234041 144812219 717991285 940490231 994873494 368803438 518353327 392598321 818352774 571698121 698492310 345802254 459541557 206041309 758464289 368397455 422705007 757150883 763060905 473450782 938204011 375273997 977960656 145713250 362137945 387806771 819988224 279698269 958605398 68456927 984865257 917972396 969808992 727180378 736550575 365919441 598559521 646191911 695220312 990371076 990791398 715350170 945182692 257323619 920013666 463980373 859924662 531512633 586359909 243438161 369660148 84878113 868520568 834340950 915264481 729275292 920344614 515603120 644363774 909448171 962672935 385981015 914000504 574681581 897546737 733320571 984498981 524883579 716989750 208989160 329915748 26591663 508825468 931167568 957847444 522990236 587552140 133338692 794187762 309209715 633419875 820784637 915347631 603012609 761085573 31791042 260532644 730585131 772951648 157907323 837206808 744210693 864224866 799529720 970559186 986560356 997260041 137727296 392199570 672507819 736811155 572240583 965155516 710922760 873725516 159294963 326977241 433150181 438906266 536509180 827092133 497315530 705297603 757022826 886902207 573896907 928015176 796923340 953627415 758645562 977049708 794805463 921221419 809337925 872024284 763102017 913702535 484478948 717793991 381884259 568850618 78471816 346361789 325773287 388471945 218514604 363778977 744387372 823735114 244547734 281853949 124410537 684000732 149528940 562946678 762225724 990632235 700237679 838645770 508334387 649329372 270921872 487173639 742118157 787218823 404711426 931307778 16926885 803267025 72224121 135153181 410215758 833179324 905173126 952714626 864235569 967320561 314353753 604072673 953697487 978741984 487262824 798323250 246908132 924051577 705286498 741985862 236562287 670381204 800197985 826967717 23851388 550559809 204072560 818414928 6873386 178733953 706382111 924804456 33377049 290810032 593997989 969147151 639584790 708973156 499298494 845495735 666120532 913640198 368201438 449739559 350512329 769005282 19492894 546423156 261222641 700489306 754513595 856805637 811912758 866713961 510791237 904806667 567174089 989859781 729554770 846079113 704034761 780925230 333431979 927100794 696133146 864068260 190788211 334874979 192698011 532441242 917487807 956903991 420006035 439080346 692879757 861682780 72470307 592411480 731478000 984067811 895807347 968449339 904874344 940451830 280810945 683279671 140319525 292043465 201043579 880710310 318681427 406897465 438220806 799033644 869953911 971357351 45716781 110289597 891172223 996320000 100763455 279269244 40522758 585557525 382885549 558959693 942755057 948475035 684421325 813770035 812191095 820336634 289925463 383662163 440210537 718172030 346320085 351876490 372918684 562993185 905728210 929144633 847042368 967204694 184252220 345925992 812445698 947974980 856769080 995913876 308719582 349280074 557627232 784135771 80839467 633650754 561769448 682182885 707122038 810911638 980719791 987409030 85932825 417195333 899768244 953679216 373083617 686300815 314247932 440437208 299448126 719117518 18972066 79069489 853868709 926142098 71210532 237082257 357503811 683964552 888805404 987661989 552433860 975162953 788739018 887081956 738686330 870102730 137051849 472930825 783481793 921215201 49581102 875384517 172847278 757814325 920029717 935475329 483455315 993005379 9707392 923819356 65103062 162091589 717247189 811549106 398681097 958888353 363055425 815556991 471511036 837486176 770422564 909038461 76498157 168358426 287810236 729105810 811280793 956356388 564249483 737346124 396987143 581483148 670664426 971242600 743191110 896282166 358041680 615096310 60392774 193245283 340808133 796815693 884041186 893562369 499410908 905955460 34620753 535561996 971082461 982093932 519927545 800649689 399604374 896754199 315005119 501180837 748786745 795820190 876015015 953798522 482417429 743575401 521245843 954505227 775558397 812557610 486792782 630088653 839156357 952892032 775870614 946194084 925463374 942989780 864785196 954212544 960525582 966328384 205586035 820686972 376173624 888921461 27182931 639498408 953838984 964524312 13185525 607713888 736844199 753780820 716597691 861297589 362772297 501291983 804447031 820154672 604092000 749117901 612301055 706904489 785621021 999793947 527384302 974600603 828682979 938516567 433833836 585586023 894461874 994723294 747716821 877927173 130970705 270857845 194514525 867416881 771047530 853339023 842351450 982180147 584546105 812581606 184754838 801660959 907511668 935087500 395410666 769811525 852724331 857446842 325280904 592361472 582150848 888990044 500583329 885286567 574322933 748598969 729268448 847998629 671297788 680367399 416185540 809100368 395355009 514055160 50983047 221188209 964271973 979800458 180153646 288468108 370238169 550057925 931285986 967389580 684214870 983228906 47748751 205764066 540737622 567955581 542801054 815333684 713853515 920752727 942420558 962382729 482052747 633759977 36851091 683609207 868595291 896811129 740144420 821733225 808028666 902417716 788662757 867577851 109702365 137153202 306102114 957703377 23642095 455461523 910540920 930662256 165415108 658372582 825676860 986773897 69492313 384680253 45282760 172859845 728574768 910405566 779582855 965297156 553943972 782785362 522714110 850191762 908712174 936631282 133947879 161771847 833971119 949146680 153767936 615235734 30423538 713726493 720181553 909150266 764573346 993564005 633905245 941924446 526148779 807720888 960513520 976578427 325201941 523084807 290677111 797872929 363655855 679191486 468409704 859927281 921300668 956445204 852323231 864090573 951497568 991156158 125429338 403227368 667632744 746607506 374207488 459642322 171310164 243266348 43997583 449708492 975078234 991299334 727906052 846150104 516285807 944246935 290567002 741912228 348858503 736066833 882870289 892347220 935512368 968901317 461120593 848613013 440647020 977780189 405146606 427709671 908133619 933607538 789549022 986511727 949201119 954887582 949901249 982627525 305526516 563244885 492681549 905748736 834128338 902915497 403329519 839995160 741867262 860544537 170016139 186529161 520845428 742806130 265487280 751131634 528795566 655107946 252572451 279837578 348983965 922807791 484924296 843400834 500800865 983611111 552301462 984628399 436122702 757768736 9432302 713152752 294384496 753958079 532520579 828691884 39351564 104329693 785635271 792970135 40443908 376702883 105123185 138867855 172873766 189706037 359088076 474908456 797109010 858725747 293807173 741572182 628336268 664579766 415858438 858409617 255992 348338886 790430696 861121069 908053083 958171497 681889894 953753408 59997989 216310818 986003777 997341005 572522913 639909705 176964062 375001687 61598072 710375786 622165574 756494437 563560335 909633376 764507503 979481668 676115860 987661093 367180172 811748408 489318943 937481262 949183931 989070404 477262456 919674460 556682009 650450911 747677954 909848981 849578580 859487331 111568798 329707061 316464602 566537707 110078826 965168406 255605270 898639217 334204365 748925937 866325892 882876323 553867319 965080004 249824159 431046383 745563493 830696930 91197445 711397370 274799515 901858119 96600262 656131292 891477947 893902451 26048013 746987430 832164502 848644672 81682616 332958945 838661858 849284512 25181736 310013871 3875296 903228502 136537748 639875269 851799985 943839641 55964250 653109040 210140868 763005898 753018518 776345970 510861802 719908474 761383950 992949058 712676891 781899879 195140476 661895655 411027389 653321626 552876282 976953658 949379512 962507144 907421447 978642277 859036940 880940809 271873528 720225074 931441965 949918971 22624284 735087671 865483276 903369067 351280033 572877174 768725224 973942702 780043760 818097563 24440029 624796904 43006354 209883810 172828793 421891647 327819922 635560628 317577936 944358990 308149566 424180804 687234295 910161382 339279635 475887637 382865821 491912516 626789497 886938094 724211477 831181177 885664884 900497797 942206972 981541143 349359777 566417246 96921188 495875468 107478302 985916235 134570168 585012662 935568615 986845799 535447160 762974878 988999986 989868941 442955212 504754739 327370238 468901854 731318459 981020225 967028381 982657191 932324743 963288454 386091584 778885345 742925826 759548575 631332231 909867140 925475903 982457244 21200141 479987881 532297725 899271783 602976794 899709446 833123226 875825386 906918964 968525156 46221331 374579164 536292271 987736977 977141733 982894379 155843947 992833933 43429530 910887501 93000126 266907174 701855440 968916325 596658022 646986432 916589256 995883968 716286352 802773522 979867296 999732249 394849529 902925685 660845006 749721656 921984249 955657890 71212121 861494754 314633797 365426950 96186488 261261138 496321351 902222173 418123119 548056443 562644758 948749375 994364873 995972732 749029954 857556448 509346119 569315902 380244155 438115852 944831091 961333504 217379810 289849692 569262976 883957132 83860682 641437928 913405174 921094147 829333664 854118287 417731881 990449971 75123703 459256260 886620000 984346164 666492597 812607614 41872244 207740716 192124647 770494958 640274988 730598892 253528510 674268770 426248098 702617640 309104965 673620754 963189781 979810068 878113362 901670362 773811343 984528827 637986170 939698690 656395769 966531379 418406217 742249230 502724537 608268518 319702562 692627755 849292935 861247762 945371769 966133967 30631705 215100034 85837359 880432157 982382372 998069033 611592924 709853431 602054373 848993107 284605184 882716162 381132695 665762183 308935276 844083138 97865209 798595726 651468150 868775500 17721011 667736970 498028302 828639394 805136375 854206540 446971140 783673832 650975037 797736653 872846940 990770911 877461122 942149416 352240591 391629374 131839619 619074635 104064016 237836498 722363301 961671809 231454850 983240104 740620349 773024972 922977144 987134187 982164718 991672028 935573273 935924186 417353729 573296568 540595224 989125388 211823833 761741184 726659542 791401179 945164594 949889918 19484385 265008854 915410887 943178805 305479293 813321687 691252476 855790389 487486509 710141471 118970030 530532267 427239438 647847041 792830793 924270858 193372372 285351522 349250598 559012008 783483802 912003123 636899761 920902119 822811406 993599670 522587888 772022815 447652327 589448479 21848956 653306081 203810932 943169563 469944533 682496397 310038416 468512993 668115788 741902457 60864680 414715071 756044692 832729240 742695455 778292378 234033352 450448319 739752680 999659493 245631241 779290054 990434296 999741335 830752946 884135188 689524337 797554116 101378824 621790316 352227831 524033584 591499310 937199364 152155440 351738602 420332235 462745097 858329296 900473400 122029452 946884131 323311267 566957825 766610441 796393268 10083972 210112944 778517681 802824858 674941647 968353932 965331405 987571551 290111864 496692743 544945224 679629170 315370811 701978737 997559891 999125170 248554671 573279152 771826167 974295552 83365991 486464876 679681695 904138375 626289227 990108087 955426396 976306383 79913259 905101204 666623280 705455337 187292985 331335327 34494299 178112938 227061011 621627583 771272650 884974463 913237726 999161747 517820428 730786448 542182076 957259375 863661256 961085655 389716477 700731331 322270001 606903367 15406942 312604745 398089836 756575254 516401143 585981686 323226130 483705991 431735369 581624799 860569637 863996932 869189026 942944698 201211175 543083053 271114753 547019650 145581075 713267124 28975938 987217518 493936330 613178457 79728321 382740322 580464907 807402178 841758854 905626688 507849877 898172723 282888184 508347018 671659664 817708905 716964935 916941295 76107378 351886107 803346882 983919513 304295722 491547901 123242290 941755091 79122990 478714154 189703707 616186886 487340444 577131351 330536697 355611796 938914414 986813278 485888822 616497971 985544520 996210703 461060745 885444644 294122916 594125594 129790320 991405360 992108220 995995127 606007317 997303219 866232736 958952505 126633614 584271067 365893754 605984025 899252272 984742448 435086676 707510282 756004422 823836351 985251106 996443098 325511373 910851939 971903895 995593511 14332736 88380808 317716736 880084297 330907370 994256218 942431896 989176779 136212840 532541017 129220419 887898203 966335068 982697790 898227335 940531530 369864732 759307187 982832980 986592707 562405004 874222246 908015344 947315405 781668871 823553158 60479199 333746549 510647653 685512233 566669379 650896124 443908180 588601418 996110848 998086924 866266719 894198649 437264947 592439579 352433909 548400982 550145240 626121270 37285700 541888629 352136624 474886872 211537220 768369309 951907655 967688114 723649187 910192502 808064821 875047549 771205369 932960950 935975857 960967938 194257463 439608836 450133034 564433245 910051014 985777665 256021431 709775755 957032047 957467827 905509236 980509448 762896329 977884297 790776102 883081757 417300238 499957796 72441177 94749139 987298555 992334622 596022809 721399967 592657253 737810123 400982091 825386167 12043497 714656719 55438002 244423162 469648114 937469112 729105154 826023343 463805368 752713868 446728769 582621109 633212511 663296075 228186761 793803409 27804713 348664000 952568380 969587074 444167331 648104658 889784067 899373560 520434180 803677385 771280629 897357731 695484750 702798003 115570672 395218446 865664230 908563252 579217180 838822869 607451105 742151958 659680575 814865262 35763286 403972856 748456416 835637428 883005825 905395377 211564036 516173032 66113083 941907525 667513909 759864981 31257067 57094114 752164461 988678473 335970953 547596989 124567257 350102920 635228787 853701300 70356854 594799002 905476364 980915851 845621273 888741011 649996997 666774943 327421520 493396625 592258839 631135852 533194530 711916665 679695387 711708163 661791396 877846123 928882826 981490511 652233642 939287168 427639973 769171224 14639838 913119087 680808157 712325755 416119283 908890465 880143490 884452581 905518996 953680793 755347974 785541801 640362317 928532233 273513089 399116419 109049776 525785297 609342493 636138090 183219491 336308196 34379001 591008250 491991522 992619805 245016566 493102533 982054877 988986406 965988451 977597573 501378128 590139578 810840491 992280973 348826405 812952440 884714634 910534347 329596193 377482881 645603842 895374964 164120710 241776505 835589680 952711932 102059488 109787439 28790391 558339675 299809412 907488957 756071792 969646576 990364969 994128549 86672662 932534857 450344670 495534683 797310706 872698164 704566938 872404923 673939362 888645573 171622876 487844729 319488091 488921523 831227769 921656635 817331557 941771054 601166181 943982253 31696599 750666415 80869527 948215528 299657008 341745937 163614030 605481631 209494648 671184907 639588530 925387441 717603743 939950101 264951112 719898506 882001709 884468185 845018194 909166641 923542839 940784773 421430678 652363556 152794251 518358519 832079512 989647257 580418627 993652270 94232859 539441441 359728022 385198582 34356572 171530272 72556179 728306363 394756125 940355437 366974614 440048114 495989221 997988704 315222007 987015514 887942873 891030098 902648128 995073096 763629456 861942383 367005626 707586967 332537538 430822172 319482798 859960553 149538038 326250340 695862098 923758625 32689726 497680387 310126534 925929731 968029394 968903185 793980711 977145885 977203225 981310592 306176277 652265098 867205871 957872524 424900962 726946821 835831357 904752822 643009432 973007394 172057405 867616610 11716044 672572855 813793887 967432358 5791264 44271183 233333675 828369869 780867403 912691467 6395 865329631 66065319 596667901 919833419 999963350 934987220 946115850 403036005 675383346 996516762 996612545 72743277 992653876 770004027 856270543 459460200 889393419 467441894 933813119 723531757 917544017 881006362 926408259 480159900 850684465 824522208 999025930 625763518 999971256 966062362 984907678 551025048 945798945 295923730 376481247 6311555 340680441 534583733 889509472 888203122 951549470 899632574 969116664 438867541 481697418 192568061 926248763 990453134 998863918 96319741 207854977 261548161 832961984 989798980 998894395 752525375 949933420 667875336 765445674 673229836 861486014 855784799 862809974 210288983 856031395 411580296 569459985 833080047 839936315 332795518 524075050 382235537 592003933 180511493 211803806 475774680 928953154 868414439 932143180 923417533 985409067 742618663 955241213 197191526 780934713 807760125 943253943 296462504 544809902 369891978 424264037 129284883 496930150 716158230 840441145 586856770 695876548 778286796 952681271 391198456 891745851 623373492 997686466 476178781 712596593 815367561 821594037 833299577 970990192 574863497 599645687 75745046 830739811 734547199 781551445 160479924 708871756 722700863 865253015 919751140 929480202 140966435 936009775 627141761 920215087 853700889 950618014 208867338 885567238 621040262 747418254 786571455 891367963 492536522 492740055 669178138 825372020 87399957 370881501 307185414 590551771 104322731 403041321 625661704 638027172 786664327 822177678 547816830 663418660 590709055 947891060 494541808 590450007 70619949 906222078 34774565 962293298 144759638 835046853 308238100 809331985 529996497 586885296 97145612 99228004 601661258 947513855 434442981 803428261 279374145 841255343 171187426 942248549 689489046 958294294 495191248 506476785 631993814 661804449 17701010 664000639 2156879 694352175 354737297 976059728 53074907 691265238 163206729 265779770 103108108 489191556 482509325 975904239 541749306 612999832 496101883 783951558 841784208 983931850 540009028 933104657 366417833 415342238 246690795 609577839 490027132 591776356 546229265 655912048 938836745 939393123 866140318 942656302 898415691 935681790 12267084 171742991 720072937 783424627 457095457 638141169 934084775 986376182 808632766 830061472 674215178 974114262 32685767 874039288 70012813 448727257 650086076 962434891 906687384 974562030 276278579 769572046 79469268 673301798 340654585 852107942 803782944 925380903 813534784 850777347 12258729 30047479 266482215 505800098 443671171 935590672 491320383 951404576 745279696 812245257 25832412 739467568 25056194 630087581 657919825 865490828 943705913 969379429 608996628 993830210 3527151 417988524 763285188 991285157 872100405 959337262 990348587 994157796 217452055 624937789 540408560 811051492 378253404 646605703 560595205 759053866 109577338 802715079 112739625 929636429 744486709 819578749 472431534 559448334 798825896 818576500 491218538 913766799 507416356 873307305 391835549 494396379 456384590 511774854 514022169 955864845 523905657 837740061 253331967 401769672 955393401 977283250 730714572 993766024 948122383 948374173 535106991 740949815 855112290 997559898 476514787 668688221 162314668 743095294 185136632 229616249 888486537 959378524 616622833 933515174 578471637 847931504 855239522 992717484 614020560 866321117 816026328 873651006 966110602 998516990 952376942 983786352 954255205 966050548 536391152 961023277 309881403 607489578 29765743 344977354 821168636 972042440 815953505 909669569 483047782 784795578 195357854 643991045 722496178 864196954 194313584 462662378 650524171 715675126 279913596 620075028 761823945 932454436 737037567 934456649 454300152 864253980 175083658 584452314 961164770 972053363 650660350 779579605 563886318 595590877 86652002 641966061 668864437 805700393 621611786 710208116 864861474 913023503 258661951 749005440 827161274 926003528 171171596 630498104 53388854 537377097 870364372 953051995 66192523 671126404 374170232 572887220 203888846 254524257 473000741 531561092 205305441 696013969 825048278 906167777 590575833 606669162 990416803 993830010 982454819 993053780 45115623 146998933 16803575 436535719 1503857 310292184 893532239 954634185 888250181 918390537 757906684 950936921 175789449 356169591 160633671 412179705 629397611 903400254 14789780 865169439 334806720 415051239 232691892 400065756 40436554 154981568 298976174 501077595 971898704 992032903 542350803 953221373 638426484 690015197 671625204 815528484 285250159 663541829 528007721 601315459 388761020 905290596 416789245 709109392 335568915 657925843 249696930 839618269 185957236 885618182 765763228 804559845 337446424 793139154 368939629 466272421 623138829 762482349 185308379 414279312 467276096 508337228 71593434 896563264 703920854 713218354 363614470 654880340 597821248 813946459 246161520 696469072 818279272 844758248 969773330 980685266 975428662 978370891 86363199 986220823 504806033 595771877 110845738 478551957 69435608 336501689 215346759 719357468 981100435 991640975 427026472 567959685 748967332 815257368 819416762 830263382 545330728 634694954 248654011 493517316 479420511 563936762 416963721 829685353 176519953 724275364 994214503 997485335 200598054 511790133 23545813 519638844 855000330 861691700 750533871 942313421 866938704 920365573 982163012 996579930 189499092 754928141 194572781 686204604 655432119 902847733 192104273 287394013 713044411 831376961 948335936 965476442 639113839 955365930 68951750 802107553 61377560 66618862 385035757 618441768 753347325 855466057 532175015 788007298 29613249 486027310 770251423 977421641 872711617 957597867 694066073 974486966 29716164 75526628 133417395 261559287 851052947 896054794 486518533 968590506 651880828 978891960 352354543 758763349 981936331 996759223 332466040 443580550 37256174 514092684 386316998 514223716 385983051 906415294 871809322 876542774 216631705 407315083 967582906 973958576 332035776 927272231 309947047 904860086 21208542 742273840 388110707 396362258 429371254 604021585 648860970 990314563 743066669 894426639 332168076 526771081 480869699 862560793 423129816 513588343 676906883 783814360 161330287 720789918 752599015 904654362 943419805 993196815 479772012 843618115 842308986 989994061 733850704 829779373 29717246 738860514 735175037 736510972 540174651 729514471 208180696 916007097 464112384 889729090 400989479 801721235 471481246 827065817 305189282 424652749 783235185 997093367 225400854 871766044 146434226 698626843 350323746 555063131 934072044 990273632 249597369 673443057 378372448 776586219 842701809 846869351 624376908 804402263 202253677 230118070 932185689 934975027 362663531 763311639 141936765 262819775 568102055 829690927 418486034 585367692 166515866 223059767 12064607 876750179 546904971 631007989 115207740 236336387 201035185 555028874 884558023 989147722 135449377 430834042 5628768 880681152 631085124 669996298 990966974 993087323 895640891 943263711 145489409 513893796 600940544 606805752 336178106 398311579 262001005 267623251 953369577 997592057 824072105 878640089 667847715 823431794 193298516 679791272 894784953 999026112 836243056 839382521 491812660 879797222 342919728 717917823 848485094 913961799 11291628 39101480 832787052 987147168 336764159 932863708 677406000 715213595 365918556 609549827 933711466 951298127 521643764 992296606 295847881 699627479 357254472 461830295 287356694 802300924 366435372 570131375 941638096 971991372 901274711 958486033 692763074 783284277 681348663 793367298 80921748 859152290 672402054 838764969 832868031 975983641 600101408 778905327 6736812 210266192 900722122 991316704 838449379 870981819 411985092 945666470 191303276 196918848 500962319 911090303 672271497 951750471 89734797 242685049 510910115 922353322 543834279 790028115 472017489 593419357 198198409 948724198 152251035 449894696 236496199 819952834 12020012 69537149 870720244 910546625 79534287 895854238 322676399 352550778 994583122 996617522 889592045 918149575 240468766 297897364 967500344 983096016 624268447 834693237 112542161 842173488 956550095 982019867 935625129 943789802 36183702 521829914 368409068 751062283 974610868 987797167 140660377 820604465 21295236 131677271 254352279 822972545 315093426 409662980 480382588 588325642 458056729 628906259 921547711 995138982 653754594 722606091 102482201 277851983 780437477 782422775 476297187 496382846 649817702 765766245 568929145 693350344 66936356 165759945 93675748 412148446 314814734 386087004 537025927 989807238 298008846 938275134 823176575 829653296 862550707 885027526 983310720 996189912 173865354 435270554 250143289 809181601 370014858 423408551 841123547 974070643 870432841 991770686 795035509 854018697 123663098 206225791 12395392 584969227 522953623 654215173 252235094 280355345 656571858 904723094 272160014 324684661 69561237 893856631 335795380 586908783 531763356 728594821 61131204 821782260 926843596 960038448 130644960 427679976 512695818 617862342 123962115 214282102 805100044 878324382 73013032 546447299 265415022 341972423 889163905 917659271 426885519 653288461 654603839 937768705 304714339 405305330 528497330 696007253 780191664 993629007 729787530 832015543 281972010 778425032 841956341 933127284 126623119 615690141 499911979 718946647 431236762 560391509 829948360 899070047 465172394 827361773 564882325 668278944 717393126 790554197 206364849 724967958 45276372 844375459 904692083 934551060 434898342 682093074 805294561 831882841 336349463 450689869 222159070 713158450 918036671 979801071 641502177 812302107 459263042 699933073 710133239 837068482 287185473 404377344 877266851 967890575 137519882 549655468 704267041 937883124 879623727 948256482 921614413 992061348 909824921 939710867 500917963 804493814 519838733 586394956 783290759 939972025 100596746 776622462 86330057 103656992 377201399 881998796 654629010 920296694 178739087 896931177 190036906 585071551 769060602 975662345 514574861 924033003 962326724 992648967 337182038 736712864 675656804 841504846 5689287 524848997 566245416 581112533 661842939 897690668 536122759 564792697 365454589 860724059 122027043 729888598 583013844 740528807 536170589 657622461 155101821 751904602 564234787 950654154 663938609 889617801 40406035 864384123 636059559 988884700 498651781 693871972 924071238 997611142 215518639 446230234 971674089 986331127 337609524 766496552 268576149 777540009 15461794 878502663 344396118 492189055 78406221 347675089 746335276 808688682 793707182 809569289 383186115 695955540 113259129 890186208 958240023 965664037 626891374 683458170 647957414 666974384 815941779 866620165 387897025 527440069 233386386 408581264 812819016 849089972 670204471 794593812 491155093 717040802 558719479 662296037 605108214 629029799 662931349 885688220 143488759 497864890 548000707 898655913 971652368 991887602 793047070 964733255 382229319 895571101 560738731 956240146 513655992 703051144 475443070 518577206 6069982 886601252 131359287 164787620 685712624 727047340 181169668 255715607 898569691 946866098 270696829 539257775 52431089 256032667 19327858 651485482 71563821 290474453 675383042 824203360 69718552 796521865 840856205 848771940 293384343 692579523 339124494 372032418 196095766 810534124 836528725 905037243 282340278 888071936 188888957 355223920 600195863 754668001 359847375 566793681 319408254 751386538 930616995 955412533 125374503 248694633 689314579 985885056 165294050 499813147 300309164 627739118 155362515 218674380 908522290 913084367 733095897 835647869 44749633 480013683 299148319 827994141 418035207 732579773 437942620 566041941 853492588 888849659 811248577 860191683 319461114 423052716 588577133 823593706 825678811 922773671 580315019 671299919 59495737 836559848 247288131 485940579 822682663 977535243 522162920 786359885 283785133 380403108 1759728 344535881 453070441 752870375 861496593 979080053 174152527 978183552 507982418 838590705 68259283 285673533 490545991 738777244 998302507 998318846 764163941 874676282 51678911 52904433 530391475 821099646 159804201 525784429 345248518 781069613 16419204 660366082 315319396 840615154 499923942 994772168 8832316 624257768 328551291 518818906 80291642 873903405 488436619 506917516 400684287 715519504 178600818 383680649 162486042 172286631 329417000 680527450 729174720 774555739 317563003 381282597 827405510 933084077 105454369 763901861 558243287 694507489 637663061 789984444 254791606 746442099 661433164 726642886 422074754 766542587 472314784 611933687 706755816 919865227 958984523 984355808 698848890 897883032 601660248 866795483 365767001 478671042 493721000 819333816 345527274 876617141 848890772 923051193 396126338 412676865 840209696 877210583 563599969 638161369 85909772 666245210 171025248 227278801 737130182 867652178 307135939 935122073 602384513 660987503 833569624 957368291 732655084 812508016 860488246 951257121 553253712 810456852 767999519 897659936 382328059 506711202 443482960 662684597 736360273 758515454 181476896 585394758 196727364 315599391 289862408 295928294 331296591 799656312 792903255 818045402 840868521 890545749 63499773 854006814 511680610 776891574 441476050 959831690 439521466 847476203 819038190 859867916 461607227 509168621 59254725 398700488 8510208 332151714 17921903 630920262 438433252 586031770 999611373 999791933 285431153 957249549 521674178 800930632 973422342 995401140 963068833 989287092 90825982 856497143 599505049 760605770 715096104 965182688 528747775 735887080 834217217 855882525 91002249 918675867 4302847 802442477 883837780 883839483 619166503 644204889 769878244 948842560 73811640 904515602 199918871 393458856 609240951 647984810 32666433 868564237 453921440 752790487 154501980 937006009 851606329 911274681 364919544 792961265 617321285 794514875 878097767 965383603 359675082 499734142 685887002 983409175 134946032 906260810 240963903 968585198 415565089 705509634 696344189 745854393 375166172 966864491 755400553 904369084 993297747 998523495 408021269 701316756 891346240 969076698 25146475 547944213 788445462 877864049 244875497 818750716 101191168 437926467 636114493 816861102 389238086 449308795 5756136 982425187 921646391 927740057 629646713 843659404 93931857 962389005 991781486 999472094 352835671 731559270 776981563 799246655 591750469 981417636 638002687 732282084 673992246 955470655 154096926 320832101 407154572 878157163 569313341 835997943 188532987 566876637 766066759 979811609 25831892 520582700 814101025 941185624 832372948 971585041 359088409 385051991 782579557 913883709 453423739 754468772 968667182 982641916 637811420 892990967 192163132 462906174 68639688 601707417 247072001 809236305 698509146 956510673 208880388 529755547 304944488 916931010 266409206 477909204 351070192 569925901 869100174 974878895 452677846 831272669 711044750 832477296 628152737 821859977 119122206 660011762 794757662 908958811 892660608 947404594 928188835 941329403 340439028 964501557 309714506 711250258 718576120 856396217 678547770 804750339 937442590 994580747 66243456 287344515 218561251 589592868 382071684 456557634 245271948 354235504 90073124 715362229 664039762 770147511 205261370 985915908 587000947 765272047 253468303 668117366 100872763 545942829 617248118 960250956 676606929 880667509 215448260 762739901 789777072 873470366 836935547 949496301 535394767 853381634 655302217 748973169 780624872 907838456 948574805 962236917 448292276 928365083 677464040 779223150 257566596 311281670 244866316 434089115 275623029 888667297 336919906 878472836 828966818 924204351 336552232 487545630 821077157 974288401 912168609 965787635 735947806 766792882 318332978 436284112 153375709 651703161 889702747 913729707 820541812 847055385 301762760 920137828 547688627 860284954 944309500 979809944 575461705 596266439 414861036 494104751 114296639 317873083 119553684 478916850 755576132 882158783 784298298 930029502 389700878 390439658 865694919 925410656 472295910 970542084 466081946 593366408 308403168 547201366 330656641 616822419 121765399 723010120 104168405 639179264 924628353 997418783 906445333 934768651 279467709 668953762 812787448 934600018 924203763 987726323 185760892 405131747 558072480 563221329 863853858 866837670 152333456 701787680 176395770 417261785 114706263 740166973 213772110 287875255 519825882 551695909 176936623 996333863 323318369 911677886 560068551 885237366 826726971 892638465 816286103 915018159 690803983 793457591 953349643 976455179 523653210 902114825 225344256 817000659 829354552 911899545 537661446 592624628 277502133 456337067 741623977 802864046 595801811 970129370 321473580 684627738 220758663 966094147 221206797 303689427 517997444 858632077 477158984 571522901 238377913 776495181 254303896 893094525 184724869 568748569 350395225 387990038 528397796 656265055 884494095 956184329 147060650 489385219 667982 686369952 332956009 532069897 118493588 565849159 537468282 784439357 336636879 754924656 821457295 987554735 381992306 847893167 938400862 943621120 681529661 961890034 911574667 986565393 390822695 629015976 335030218 918572816 569759382 953158405 323163991 456167770 470394786 796176376 301491408 493127859 599303214 632688189 210181579 447952303 919553418 953182972 362469566 712314549 178877320 523130575 702487779 761650024 675919671 968754679 733518374 987725256 612945614 961534157 725237777 890790200 891034089 922909987 538784366 598152657 403299116 823052927 605023796 797956549 903698048 978408752 325499505 620172055 125293677 933031774 607997846 856372249 778328971 878184694 849228116 913759238 774780727 816099795 357241975 728498579 142822769 401328058 457846407 841067605 190278922 817121256 971218094 992512540 232179514 983673019 396847693 611354052 603492682 986153657 9926735 951971531 83677772 662051894 978654091 989428502 974653412 976346224 994415537 996516958 80699582 391524369 680608591 746616581 77524328 675716119 521243391 777424994 343520799 919755869 31956161 431050183 201786829 705282604 818572138 880836865 366976415 434613513 90231031 538950962 593432085 614507661 939177622 984082412 94438445 837998075 602047913 893752016 787894029 822858377 583348074 804260033 643882279 991770670 13363290 500040951 803246066 944941200 963755051 988302842 512640349 799389315 835893407 861425038 762515731 779501626 163177621 391217516 824457812 851673295 68782332 544934996 696803132 979491635 255721446 431530004 775766947 795968300 695202819 904313792 864308653 973231368 318973749 399538958 91669945 434616321 538684318 846187271 822439136 977412529 208316566 445515055 516633362 788497914 335589586 440966370 162602009 415889447 541509606 545352746 813007903 955921929 487813844 867771834 609546322 955023221 435513548 887367269 184980368 327202143 395674058 871254262 110038746 325933320 657513824 832727751 535061092 815582835 218227721 481269430 710584671 868035724 167939587 335564558 188041099 927722443 481075011 820886837 87640307 88598238 172262682 287723427 232025448 955144779 895911398 982552685 646707097 687911903 526277530 962864234 471994183 896574248 830428380 907110629 489728771 868744961 582066554 775238266 599591959 905718052 30283802 138700569 943923072 982598767 188848443 674392054 735652925 965290275 285585400 767214960 625347193 847639244 217398386 263418048 992310222 999524136 829090845 974021040 990386677 992484329 137640046 860939826 635844873 717174858 996310345 997158178 264943147 515775525 787786913 879515941 895817287 989012207 905288789 912014054 659639839 904296428 257084977 905181926 180444694 475377269 601001425 708977829 5702976 169842175 311958094 337348257 122432897 950721486 128586600 343807440 790925081 960726547 809503630 909832413 723490598 861319049 216990891 723236994 424568078 800038044 531510345 692304999 573176484 762501591 448630808 729613131 431662455 919696462 965949864 984982836 452879464 468920389 702776871 828825351 403731293 820056825 317958649 503341926 752647922 967080694 913973226 997285669 111544041 808735595 416332140 935709168 903818054 979566387 189103646 244685976 655002947 687136834 73325440 424525559 649407887 786436492 440731644 620732853 671058952 687616857 916899564 984986268 142762545 177555359 399391408 430824901 526632567 688299423 980284945 992558427 627636870 954276714 337387327 393674108 57335424 610492437 205146975 665092358 724853132 880774467 439420144 853738170 336832241 778357860 399030344 603348875 480435977 822664718 921009821 940951825 431267080 802534210 758234061 938664521 310346137 380431345 402470431 887233589 447338188 768634004 295178370 948004164 168275275 262185007 902442117 954633017 750511429 834651334 599324511 827792409 581051946 630769267 650979917 824523696 617524052 924670498 965136405 969828645 546185127 641517045 994383982 999226426 400500207 789445446 3138320 412529095 125327947 471376410 154256074 511384939 470417651 559984213 835118423 850645080 719893743 946361684 433621549 691122717 213073334 973171167 835313598 960193827 656152696 658300179 176606717 430965639 137834945 242191873 715489552 906175528 541994541 719086531 847470875 919816694 88831871 557765727 447346143 602266594 738488727 747653998 651037669 682723647 333773895 605322103 798948340 911811070 876767858 921647288 352758477 661377078 504156718 986570769 769011098 910818153 62410609 723441649 494573945 510139719 216501746 724757018 465025017 810699667 697409408 748522174 238567882 534829479 715832050 897610987 49838852 785357846 889381131 910870280 854803161 966838114 876079429 971384172 675635465 849261128 461848673 511125492 725612189 742998169 43064938 455821873 306694495 636769543 868475288 957756520 144353966 680521826 518345226 617751324 926039956 947466464 705388055 864581190 138595900 728877482 153179741 547822953 400895054 458129030 741530882 849695296 111397771 251257913 779383480 802444299 602547970 632495039 901464707 995407002 793403066 971392161 998628890 999886328 277840675 842880300 37576787 215678078 243327308 427288457 439337316 661719636 777034480 969935863 234850949 783404774 94553034 416661311 175136285 404334467 679924164 995761037 674359844 899937116 558036104 598771714 550810202 777824333 221502999 313767584 5002665 8876978 991030125 991610758 771217063 842887174 805009131 904786590 664656691 831655926 213620946 714623408 375677353 866564667 572301505 681722272 414407409 639943344 14184227 274868862 465180711 996034204 642550840 786316079 608179813 661304645 711840810 927892113 118505732 783266881 964299131 967293631 273554461 405572558 756357681 823540362 40809906 591110403 358973619 800505392 898782416 912745187 765702277 993485940 398158583 472159672 53234831 336593894 345544400 936601157 45064535 986051034 470411485 487460947 237642028 453612009 826846767 936397394 722978719 771813286 883976379 997327372 592803586 914494151 176225418 528252591 925234159 998966829 561250761 644777150 872061297 876098457 954939428 986237887 205583940 232307336 733010583 751147916 600006876 911530587 910283397 993702889 278378111 573418946 96086312 217607824 430645472 572510209 2616354 17361695 924097 925134805 866759198 948845564 769314042 955643652 32315758 927291783 239837444 947285548 405503214 677374260 229068011 685513037 458253302 462320716 944144046 981284871 329889846 837108808 303845189 921548629 222060923 437473577 706741090 870272466 910446568 911402708 545157650 909815670 823166980 855911925 966997102 992608163 815815821 916756562 923272200 971845420 177630712 912257613 766471264 999235768 855036647 922972753 453263545 464672131 446089941 834180630 553581824 612203056 166197372 711770047 363236822 537292749 280342502 470725888 92374942 701749434 56559714 65173501 570862210 679185262 7837149 353620658 174461067 277336769 206391400 371067896 290994215 502336450 397286938 865979319 450092793 543836345 279436035 490298786 452590633 965993373 565990512 600808083 13754536 622469217 747343688 987449710 438815214 988083156 161690341 263483769 568053364 742048935 991143632 999867367 399128459 749708018 483368516 782501626 308541526 541789899 963391762 975911248 444631812 868214864 789036008 916978118 869743417 970798283 152398293 296861901 382007563 842097055 775877245 952910388 784056180 849937871 922613627 962383699 280125885 422926835 273179748 810419501 321385494 862095382 709068187 710232432 553908951 679031217 658667858 687980810 816768909 913068654 773289577 938356905 210278469 315507149 317396245 595848805 158036896 204298713 765401997 889455976 716374284 993743518 24044125 608251922 51308820 747675542 482160487 655343549 11744600 924892376 923638188 954245163 390828759 471398200 449573955 607075197 964337262 986838534 462217460 695075517 386561107 807448292 482546401 565372436 722324149 937178488 659422639 957932365 759308984 797926026 299264770 652891853 730507478 987906253 89303862 436112212 359516151 470985366 716031336 862024259 440508563 847649687 768233448 846514773 381761815 623253997 463259706 811788844 152677248 494853315 745590785 870886189 15160192 499815536 5515502 878858015 17490607 938380268 641750224 890231224 545768069 571889801 297509562 338097659 445311687 849707489 916427229 989525842 120337501 172001563 604596104 952975887 397269914 504905829 682967454 781239547 210724411 570775869 34445822 899725882 209580790 725013714 105820803 123610594 671143844 761749185 833272144 986332348 752720155 886420896 733506094 982289344 573566621 999660626 324003925 728370800 193559847 388954520 572832319 827470981 1790013 946686464 279918043 859716632 977128256 984918746 182060623 611748253 431029979 869750463 568483218 877224521 104244055 185524713 532667277 678867371 632859356 713721865 983637168 983809036 607137092 908299250 92618250 110710912 261547602 746489542 681695035 934376787 397327676 687717747 511344705 537571994 177491197 820602063 430261353 706738251 490702311 684063005 922419638 986373827 816749951 903799240 848027633 884279753 46217067 678205600 844395955 847846538 544232779 627715331 701594241 815045781 17275060 305940959 803035949 985859291 193711098 250907112 231354363 482664316 659247228 728407564 455459800 684012601 790013714 792723245 203423060 234191700 256450955 798886583 750486856 896614854 490125965 806537442 275883172 514291339 891433869 980954259 150159877 815283922 302212639 716483419 622429301 805699384 942310958 944358916 346189425 400905667 940807568 941878841 403448529 805548155 110040205 833155354 556307936 634491955 313760896 767443795 209358432 668646862 393846097 989090618 574890190 758898364 799324757 842963303 472135833 992274526 435200693 778963241 192417672 925388706 7296620 745210133 623524812 769350304 866383259 932725363 221689198 578824350 297608082 920163297 330604583 434530574 645880298 856763729 148541549 463294503 996020959 996785434 289994365 398877964 297204897 463592307 485976739 526523288 695172442 994781560 743247499 762761737 6905647 406745602 10130090 840627738 317144699 713233770 841572609 954567613 13837989 445088912 539707892 600664569 757455695 782677541 430288601 677103075 288792091 462784869 970279657 975748082 558271583 659401643 207575513 308786712 150842650 212986370 999132943 999810084 450631136 716947859 815642591 906594436 90023938 415198450 209793282 762201238 378726404 457092861 450817142 816854243 244261716 914386307 887506139 987145041 822534631 975285967 78845945 252176231 857243657 986903487 261104486 904311905 690079479 929341984 303479829 406797595 814300035 847522788 483976728 589978176 379512601 935750970 185654919 480093477 89621842 482460288 747563842 759239867 268890502 975846106 897451123 905265310 288335207 633763319 511428643 957178457 196020051 595399290 285799048 767226258 36293534 152756097 718096347 990060985 994007694 994066707 563192277 700627323 310812948 311089289 262969172 422587949 67787140 629188053 139020547 668412872 36663853 188843542 250225280 737756072 142937412 259193589 286965936 439577818 514941 471201502 347545005 430063581 791402288 931481297 280874064 560710843 853460798 982900885 382208973 460636232 945645282 949054869 526954262 990345986 793746570 968079950 786708723 816148419 514502231 565108656 209288885 349588958 691350697 802106802 373437412 421585777 264738537 619693942 156551483 603066658 237938789 579093293 774397297 781188636 244995201 345428001 530392982 877030113 728262530 810737913 5643506 966456694 371395077 988290506 910467460 973056167 832206480 891223889 195658134 359051458 590262853 965796804 53778790 845849421 46937901 89009402 858365193 995763964 329109598 541223470 504176634 616882997 783832036 899416759 318001789 487861482 249436840 824808448 381080889 506584981 242252790 873047506 216620565 642359846 746527208 909517889 288718507 565360159 267535101 736440634 204210400 419759629 32329623 92476177 930887071 963647346 249676657 602917095 843340461 878658870 338911632 805562265 894329380 906056677 984713065 990340972 677695500 859650538 219034607 298546114 429328813 744519179 793047111 806281014 381560424 532942215 562033244 883301923 156644114 969491122 464239543 985995345 728213156 737740555 201600645 248898398 342056894 574961361 506598514 590516269 410895467 870862041 106692743 780694074 600448375 794837306 652244180 861586830 323738192 514471394 183653249 339659228 66849184 201690892 431314616 933677799 32732925 327941505 190074340 977802939 812898207 873220846 991382356 993661284 396368149 716934948 971970430 997275587 379085917 930053162 337244782 955172070 550673407 568968813 554140775 918629536 422833194 439523778 871303439 915525120 368445051 614127044 540794886 731144753 604196638 809211625 965119601 981681093 466036240 823952060 949612718 958923503 19931251 227138382 287243065 688067104 598168442 824078100 116026375 764519564 963596790 965589216 546497120 983508499 870917737 887536873 662524280 765680604 6778634 47573704 742809397 962634019 776113282 903314150 333687429 587850505 543532491 653089416 721055728 817871449 971394029 996650054 238233493 404182373 457641659 847017038 817017540 933943110 567749346 715353402 290416430 920687914 908891766 945051050 394015337 413906959 215192960 981294191 980068142 994162086 233748082 881739780 424476518 796059796 792062489 813283004 343791014 916863133 437760772 461527840 574964626 875538913 779868696 898397187 585045521 819672084 586510307 614168020 270740241 544613603 887464717 980337610 881732102 961896429 489066261 934975026 639038402 694539057 600675025 839345437 132791875 327705938 517202784 745703343 921571444 953133740 975860382 987104937 580836005 597073773 671133160 940418666 354740746 611882227 930817577 979073430 917909106 937541564 971254653 991249541 885439188 986378942 849079715 906230566 830819405 895438411 960408379 991696785 406677568 972501666 179172251 283243089 231864838 441680144 634433861 652714934 902165013 903348710 701681593 943651462 266416563 637951815 459823492 731897889 528553454 834990263 853486392 961961703 926727153 928050217 827064291 834044891 335231305 397565304 747209796 946590611 864483972 924544303 316567658 753674164 290416924 880704920 550306322 812876941 597360830 946375368 75464717 453627917 697494877 729826170 582597902 986026302 214871102 441176921 559423832 777931550 468009688 609180300 674943673 897249285 835577933 876575195 581200962 992180401 908586700 964744818 468984937 495553712 169931938 942314116 554809261 649914793 162867921 944669938 466526585 901738621 569685048 946373712 393421172 792041299 460992061 994279580 325274968 396179035 404347925 549033385 387906877 792312415 946417397 957905119 118043664 834903062 547245808 882760030 666149694 787856924 563322145 746042752 401168046 411699465 387506242 792919787 524020121 712395334 164868816 857376778 998285639 999784909 31363017 176036701 330959635 445540431 515789797 699759052 544449174 928011633 893046712 928621037 414349378 919027800 185383984 716219080 947866872 960297491 274132548 519058165 153378496 233853193 641319437 970799092 676373058 731285399 50975312 862649073 162651111 600338364 511309776 943810377 850948970 905533878 334424360 949515165 669125401 890133496 226650150 889784510 40509143 626232124 127897182 478820398 774044741 841823322 172912044 400664795 963298033 992539659 108860200 368844552 205842094 770634256 146411895 760675725 569095738 993374443 31855593 306813472 319780363 506696744 188083023 742477315 981818859 991221808 560796958 643862049 174524342 646274541 27853831 446521700 944014597 984737275 598577476 725804908 413650371 647110537 943250931 944503493 976612975 992190070 834829379 943330241 973893648 977032417 807008457 923187395 75398534 733677280 750468997 896299718 628209260 911564697 749866210 950201497 313678874 426656427 983971286 991665712 787009215 937392627 6608487 941271655 411103303 820338416 303605264 723488196 172686727 674810300 731390755 784242842 822621776 885967584 274016396 558275796 970462834 989633989 925587471 999728198 496595524 823085210 226193364 763144062 831216085 979504967 494856596 761085508 956204701 976728810 222442524 724100212 48374625 890884333 752856208 856101303 574996620 855858190 253346165 929374604 101082267 193298993 915026490 972659712 881320276 898310576 413847786 763211941 778327820 919258658 661229689 860086334 973653499 987634027 567094725 792089123 450557425 658136427 271945353 323211657 285029902 713238475 171709030 533067419 632243448 929862888 875864578 961715347 448164839 815062380 704781716 810816363 908952230 917243677 37294142 167994272 925966381 979926812 132007985 967327035 786012713 848893845 708531846 967152303 678727890 792130063 214514315 790369779 794429356 840702622 545743336 819158222 598881713 827590526 282348631 873114233 688823040 834318524 537724210 984973507 756429707 973106140 334644360 754835604 154673695 440475362 543771188 605419946 928485738 944187065 808374036 910115715 290359076 701999693 654327322 675404448 350640845 651828758 73403147 593454952 66730864 375224358 897049599 990892138 865626781 975600085 326925024 393605829 731369152 863382328 923442653 974026352 867187907 898872002 597124471 769060027 486524685 735880957 546281545 575179925 811122282 926535940 56272437 583797844 252005121 511373054 71107353 142004741 839888382 993830983 528824792 568466494 799172383 815681745 572761920 896156105 132897737 653063627 217821727 463596320 409790382 505868136 226564543 565045543 791798675 859477517 770560160 905151305 546485250 562915511 390799874 532922039 122663526 500073906 584705806 760003165 459471341 488963122 729736670 845871741 814189524 967725105 691652126 764054425 857648139 900454124 611681224 984425904 384767165 867106989 468704782 616021236 846183642 976449587 356574004 414671569 978980567 985218831 764820824 768997657 584328951 912434707 802621728 825459830 623460979 812454682 404322030 994419798 916658438 920476265 768805329 901532306 835112631 957148217 755367343 970853378 76474483 437487710 415206853 445510936 374396732 729076960 998426920 998497013 482214208 489525517 969869462 977494153 885070909 958064959 598419494 865732826 12509574 320202627 126768997 802929544 479116574 742460609 276008230 885702969 988087617 998406760 258221717 705401032 658103041 785006959 61329010 297672514 939722077 999299636 373527939 816550288 565664976 765801409 577803443 823694663 259349820 986565410 537324834 863775080 977607941 997956689 892127823 994052702 612410982 957967321 851286817 960838901 39983960 250746943 710134972 972205047 498400087 702818759 332492781 584837041 711489791 986099013 762109088 973920500 378151682 774499831 729555107 848871173 412199583 463942369 758794822 892233615 450884172 673998168 447263157 725556588 916433779 968661371 551695537 737208678 132729634 483504819 533735629 602803142 26365829 503025510 408458697 796862446 54660305 971896650 438123181 865042508 842534774 935183204 958373512 979756314 740498463 824731485 951462555 992110711 578135696 590373190 975774189 987725438 438381153 767358527 291128719 747486825 454493522 610189857 31447945 548950337 988966003 992791941 1281774 677537069 734238606 815722823 72255837 819648386 100585528 876943968 520611520 570039349 715948146 883478760 199118892 789560376 171622233 233280538 595729570 691573336 291278670 414440144 718050032 825636054 729736395 792657834 627537057 741784880 811856738 821290235 696114010 996833037 709419833 852047735 832765227 890709724 382748233 608958044 591685502 859395588 904090628 940813620 160309641 774581233 53616187 279349816 671415270 889138443 462791132 546703715 387867534 401053539 361534501 934056925 995024547 999912211 89620668 851805589 547680141 736570889 764507998 881199473 282574797 404990216 909109899 962158808 419415012 710161635 236414315 581833501 153196263 255015083 71167254 467839526 263480951 666314561 702764060 992467456 438103932 891663288 352717215 644758283 503622789 677643710 569115200 608534522 948106037 958775585 48579361 487178424 399964822 948181481 170119215 642272130 780758925 920716639 256673417 780869558 318869384 755273143 377101554 414926618 128007950 829205385 214157481 509474526 647544635 989108998 110334418 560998335 219881239 396287307 720716059 829633819 799822653 861608940 412996192 565327875 140330851 982207026 750912235 904524039 165687843 524858349 994156436 999845025 287876596 643556995 101972384 428949398 709683372 934892150 544319224 769759223 217132030 833468094 752881996 910278879 894792836 928471515 293961675 764756426 560646510 932294699 573582104 743055967 259775220 811411403 418953460 442267452 427693549 861826666 446566201 991083443 709438396 886049829 233797332 607433180 408738286 996131880 394762143 773309101 523028465 999117504 164741237 263721395 668104575 819036349 811114364 921275510 521203283 832870433 616810283 752460045 283115984 617937042 594212997 922216957 687903887 697137160 769398321 872886904 528186108 614249290 943118455 978167083 99701395 449158213 303006136 727347059 460695770 849677292 989027035 995038311 464290899 966570145 976336883 992166794 568489116 635484996 789004890 875012052 180912332 581203249 350306962 831055303 497342086 542449626 464376596 768085126 699985541 869981232 953412646 973357307 311654520 907354947 162937794 281554535 392141319 409902337 790555608 946877006 38528702 449953953 252091490 656855039 183453061 242433227 482985971 829301455 447001972 956024388 845242764 974414209 984975300 991237775 326786265 805719646 63707614 359260531 720602215 968699940 573166439 606897525 199838866 936186694 136328794 628610724 971621776 977652680 313085780 377051929 671258751 805727193 921599216 984277149 181074376 591076782 672733546 681980712 848999635 891440190 820930246 922180890 170722096 473645213 119167178 453261237 485291588 996940455 462055916 725086407 792311927 961667662 468737246 812797041 598955999 756795324 940541595 988100213 10631883 990658162 554559825 582075234 271424028 948541746 902935006 988778616 383235175 679247287 265823969 979837012 573891064 898579078 128634990 137859268 346286080 606722533 593810042 745047940 143263496 792133005 932336710 980299706 954539200 967991742 299476520 469162178 380670598 386288812 509127278 861367510 516220154 945679559 101112208 242062089 192652935 993201876 789018437 926033402 825875847 872704577 491891531 983713785 32722538 309968899 465228254 758059317 912029494 973219376 396854993 854755891 832875193 868184555 693378496 887426270 690365906 836966750 813503051 966861852 608463418 890823656 859592935 918670674 753831829 804569380 943481360 966081666 863604174 879264748 192724502 944791847 973298487 981372630 342354269 984214054 122059742 571826585 741109430 849928559 32071552 583076555 191073382 388826610 905611546 940716953 408047741 981829461 705422922 848389981 930695677 977662788 540726269 717447412 493972231 866717951 635206800 700985439 693169187 907930866 509317163 605332476 931114358 971062447 38641383 933001100 523325686 669743188 946613550 970211291 882763349 993135295 781828182 814307690 455850849 890856347 862355014 899932233 783932083 856350283 803399171 910480129 380705909 582504596 577507350 982955909 340587999 833055184 428864894 861748758 660741444 936855888 233079971 607135736 122973608 222146742 976652829 998687282 351236234 783074350 768807228 791540492 994853979 996782985 942226672 976168410 747633294 813999856 601348618 648226945 577045792 788704798 622953037 884882016 457889902 513233982 174669715 823174824 196333918 609235118 218699988 800593918 890240045 948939774 205978720 495048705 408862978 836282724 962685168 999433895 227307807 938953988 357347877 446347040 364436906 976255331 859878751 871178652 60457950 323584751 619756619 724288229 118295542 663072089 804838088 947999328 414344365 812430540 154709890 506824915 244468806 488082469 964007117 975579895 245468266 576026922 778349144 858246596 268140834 702593859 697679895 871556508 616632223 938209047 442707643 995693948 475052798 643052406 963653363 970052565 59839757 363587582 650716171 658268805 736947340 960668072 349800223 457127057 745595096 959416293 405055996 633639882 962305545 968085413 311371064 879783512 264005171 916576609 679866428 777280640 798237766 820072357 798832263 872431162 528553937 931546484 217528987 606435587 607679407 663726437 68062093 556015552 279016564 411668414 960281690 988513499 295327692 459925981 407567861 520399367 617053925 656255162 514778797 644398363 928177953 996840630 976678993 979387863 550670377 573180937 623414745 773463748 171310288 407860613 343358562 748660044 782216903 915045085 636190421 914498171 690945565 941517616 710922666 888116666 184288928 478350710 618308176 713147295 204567392 278214532 299291035 912660322 770355504 821690822 660277967 986332377 188936877 757739603 452360599 697269764 643582878 662684416 928831299 974997734 943766920 998565301 277979024 477725057 522322405 967551115 553855348 828791044 714560586 979917492 324664377 444397349 546978063 897966844 676648241 704644834 579686071 985326503 99667030 673898164 606475679 982953708 67799200 395641211 589479509 954253274 454204375 536229613 861870974 910469395 812461946 919825972 325478716 417558200 89088452 848594167 121771229 148157344 452200085 743575915 836462410 940627622 278877231 653518767 328432780 671891407 142903396 167019862 431437001 827108896 646096100 896634536 269334093 647520854 170600880 807465207 890778286 963435337 148551993 667837913 440877314 753907079 925517223 969470832 498672495 938995063 765796228 844127339 756137122 769380880 519691420 825128223 347321779 936920135 857520836 932306170 387824353 462393087 627145599 644245092 975100494 977938347 345429158 885676681 537440455 547189616 739787977 972737581 208907652 399184708 349084038 926428536 505787233 942671447 402733129 479302774 568769280 570732742 325727453 767339257 423003002 463368904 929646711 992392435 857195319 873729587 936767236 969812024 398116182 475725274 412211157 626806497 612694928 831713942 15762057 301269268 650881178 934856715 485992245 631596753 673198649 765408700 435989617 799089869 844896895 877461497 215458320 665965805 310274500 528560554 188112079 221760682 654234609 784030062 669880857 928589558 720885011 882626965 463721229 887305800 417895379 903711637 742951953 944820088 621094305 679116670 905369236 933535510 250772331 498773731 374629977 407399071 93064854 942384047 942054375 981740926 79384030 936067553 711141055 756422907 497031370 830286944 466499743 726249951 756313125 776816704 197093652 657474322 920481190 989583776 365651111 721089977 591286766 947931575 386437071 396705258 4272384 6256848 391495290 969198894 85976526 637843380 39079526 394004204 97842611 179828256 283668486 776696241 252898270 604397253 703285425 722933002 454181268 523915318 71849084 870141122 417444018 477887740 981350110 999451808 511254510 707273370 188113378 223735988 315163144 844017963 319459960 484249754 682575428 861119258 484824575 504629249 841377667 901762571 772534549 892147520 681611051 805620751 563323460 844066632 364471170 563823207 345631326 821742697 360340125 464801575 513457190 897072160 570960397 839433218 736518256 905907781 326298030 932525404 24975728 410518370 362392686 644876208 596848353 669968061 414947334 547654048 160865533 341611107 360126539 698750571 468362788 709847831 455535713 750705756 573608897 614711529 187123207 687038763 802294008 853085522 634346457 900563906 41839865 267431228 410715467 757201060 408566208 442492779 321471452 799728393 247516441 830705008 833565880 935074622 315870102 575188802 378444745 415814920 693235750 864852812 250310633 366801943 442692968 803974097 752097270 790233481 388822131 769223688 444332860 724128576 602850326 944551997 855975481 968455244 644093497 841936845 781543504 930524967 770242600 861827996 655778454 675519341 192625655 398019535 217109041 454335937 190721907 829941500 232472295 400075634 281572256 343482014 458765728 644560800 358465859 717655879 754182284 828601392 398715912 628639300 29757139 98686921 201366281 221730672 634396614 931999628 368405059 931205054 57516884 611446012 786322780 937495472 292896554 877072996 403874735 609143930 151594273 850223658 824552109 953220616 913868642 955489373 782361323 889094027 357060365 662001862 101012928 270632645 148236115 807951509 347118869 827074037 524087939 793240753 689061160 897952726 670482479 780319902 462792949 686289120 92000339 153958067 501653837 799680973 80240142 764904444 70143545 735068168 10984379 816634998 274768524 341341273 231097225 465870405 626842240 747558795 949829411 970977762 353023313 380540209 866725919 967743395 672813317 781874067 121685260 725052807 123563509 468278020 961637591 983852788 661493423 859225486 625565598 743199847 757775386 948136693 143385704 707930035 1294833 62562267 946355691 986289630 255076402 540898448 892388792 929449713 749838557 811848317 410256659 832976602 28098182 278723104 61577347 993361865 327054514 914895679 555806089 949357776 16557193 258976165 645620373 876002434 762319740 837717433 550865405 715374590 345276487 661181898 906533835 942256779 128885093 334669323 104930052 227240414 299827986 407529713 770945773 817626422 863972949 951244122 739955284 749945490 87337492 510966275 95943276 715092670 972855163 981301825 818272148 900014990 418562427 804808598 342649005 765279050 302217992 369345550 952683951 976874071 230989300 504711362 847071624 904536315 568507068 571768745 623182108 923987688 734321407 797082457 452060223 966244536 517298344 725408827 667341800 829207967 507557335 870644247 803683485 961315346 3586420 68163027 296431553 757828863 325257652 874895137 556639399 695426978 157908441 965077617 79683865 638526659 50999537 146118626 589921879 927846252 882089846 931671430 990017780 993616731 427526250 489460111 971063212 995032981 685711476 895431532 7079469 291241579 761674356 787360275 56312530 943524988 205298443 565691422 880337423 882841128 159162437 554537147 513201107 777614632 936447451 985968226 257638076 788115896 249192204 747753712 373642132 392791828 79207195 876248555 524988220 947652426 689024215 958434074 810619541 819054109 845477645 905476277 68179511 441448750 977965959 982459983 734593861 806428185 890829996 959001794 846052132 858937949 377215199 707529438 411566456 918515755 175844512 757808925 80349797 619043754 655871075 983831720 161146468 618975961 390600158 701346784 677173165 868430072 495880373 671538935 943451985 984646128 980540091 999228255 682290731 747830039 656444529 938127192 204400895 585927549 523872854 772561684 59049227 72567863 998917027 999007645 599593351 966355273 163937301 393321657 520299981 645623073 553456287 705268528 239436936 358937156 666153996 805590497 528624228 888859421 507644206 528889248 495010946 564972208 4119630 185703985 363209286 985069094 714767825 747373436 760337075 915829317 257798465 337470348 193956601 206565579 659076016 721416524 975417957 978632381 820655299 996334620 655465353 779069468 303776920 327704884 22342384 184894822 7237429 708059863 246918483 309995478 441265385 803457552 442356153 664451508 946445914 992820393 356018403 482436797 315314570 969003727 726043373 806755262 21910212 227452925 676642095 738397834 786801599 887400949 743887224 945469189 80027251 538258297 614554668 727445603 368876137 524969358 911069893 915222379 480006225 875800239 271643435 487989008 817330386 966488312 114412155 774185094 828074887 836744727 302985737 972127626 554320365 564750390 917973611 919707542 770222196 908314671 277788248 296305931 433099525 968943290 903351690 903521263 995762241 996309592 156905988 929293990 235119024 365106169 330528090 349274295 186325021 610215360 774026113 881312384 669559171 868585716 192359455 492182438 958451091 979383904 375374444 788627795 200031459 519089027 441920427 730742657 610986043 756727134 462148323 468018387 260285661 715999444 918908182 943088694 104650062 605207284 693523673 807785730 663004352 864385052 167113488 612706068 347626541 447178837 321395291 657659783 755840301 764422121 450155033 550606030 847322561 991164140 995251044 997928795 997654129 999651908 592657393 670245194 202453513 276687688 404121554 522875082 965411014 992502813 982952161 993177600 854816068 866113854 941650227 962064277 38901297 597384632 544372692 552626020 907526588 941871130 483614229 487792588 900765499 956494279 873427505 990380009 156268302 351912473 642860363 811274160 807583272 897780895 801036974 986798330 190062854 647468291 655461043 926570914 830874722 888803062 349291908 884854752 902627322 923116589 753764000 845574986 425943913 853953679 453200282 855804291 245837700 612888511 729198814 928488602 886103716 916417409 908915259 978759937 382917056 796179276 831125960 863948933 968142019 985770077 223317010 961505196 620952732 978933952 153103506 963153934 402197592 414019770 102401367 956180911 586306344 968268586 487572647 988791579 9885651 809067205 308714568 650574979 293047953 918482232 623936417 642006202 397074962 676218512 206975612 773791319 600581568 706982903 160013065 632099976 317392117 397792998 195379863 557278786 395955476 955002908 547075305 928576875 973940469 981490782 655158820 729810667 119217479 784940187 877024833 961232828 59752739 380634580 700778170 750711245 111628889 189528963 48013030 802312925 644937582 667421799 790073805 856505075 648342917 699241488 823252044 978712996 872576338 885618212 17367139 941141007 80992939 887415251 640382411 811021477 8382043 23263982 862100521 937608102 964101237 982685156 416441631 529231291 797328441 986875569 446973619 861787964 395510957 486420978 268368853 541209905 500321703 520692179 471455960 804699687 497704143 969054967 53123713 245877192 809665935 978838138 29428942 767843154 145239926 290273825 879699569 944481005 406966259 709535465 128349884 147308520 292890260 869840525 613664501 985698874 865200484 869579314 205771547 890018911 880356703 959525459 587359527 865279739 922136790 984641561 204563334 686709507 794613914 798040990 145827689 715758842 625607280 658436920 993713941 995516040 308385755 818868871 877747599 901526169 309603989 662386174 196184457 320891722 666439797 885935813 413884702 544008588 863979697 920232038 549582407 745890254 916756031 922400758 786056683 857927969 968868271 992308970 53938441 860055166 775228166 849284125 526508125 909681369 952026007 955375489 750437991 927585242 663486565 810826383 147390055 222140662 517702560 875469973 231518445 497007517 305319830 911327283 164052275 456840139 177858615 389622473 456187684 642128406 805356996 849067629 439655986 508195776 165850869 770106469 246250159 486755143 170316556 847255539 341270909 876000823 752785089 796075741 680012138 899254455 460280722 521548713 606447794 966493157 9161223 450369483 224085075 681055980 893051851 995764286 426977044 777770532 887955064 907876447 247860388 521641557 434962960 449180716 279996582 654792639 678477700 895495216 379116247 488951835 861148741 898785809 423793458 939218859 642321664 951615101 822169510 922122595 202330766 350796777 699021343 902964239 867087129 994956602 212097903 447563793 564116759 628751413 120503230 419641257 718613763 884661464 215528760 812197206 207158348 620422887 12914121 27001258 875563162 915952659 939156364 962400767 628034826 731508164 503261517 665545299 53293980 360750060 399827956 803928754 916562818 919387647 430185671 731556305 451483777 629265169 190271828 321157624 981795195 995724170 970876342 985500185 988507793 989224595 896918361 944493545 436170365 500312307 101634399 450740480 40753566 816297367 984413721 990301339 892997691 989941579 681261853 725484630 285188330 592569161 543190241 642969447 774129048 912498849 240054489 808339506 664485966 743834512 926163492 941143380 459648148 525718692 772415233 905740559 125989069 359328522 39421067 922687484 571550718 688738899 658694540 900044972 965868391 977124217 570594560 749551028 620821087 729937664 591504467 938889086 236313355 255099838 98582818 919446517 732084322 797830565 553087724 685409032 819010421 828315325 673850526 700055001 128990187 442309911 825838368 862754943 77350542 688473816 122673108 986290810 421961728 550455547 447766605 509271649 145838650 208163751 264816480 506831592 116361555 980417829 292758468 711238064 491597088 997550409 41845651 454592813 583680738 846508958 902675385 940013849 660482142 990751842 890692839 936541826 849972092 934397357 633223426 802933040 400712596 716218136 16652579 596191103 926683457 977096524 208402528 653603515 658955906 975993315 554063560 591183030 636138887 722436092 65642707 348250080 818526866 879680786 289702147 619849690 800356357 998793474 597548497 711120356 727537004 892063381 773412008 785268938 224674170 897974021 529202275 890185620 41583971 867639899 236148021 771822562 339689912 499433736 665246662 798879153 761748462 892040708 205816062 718827889 305239341 445894874 130283252 542776287 719242616 803409618 857264755 982954418 435751174 700481830 579319652 781638944 632286732 922304145 405361678 901755144 997510078 999769403 361176617 753759678 980741075 984305300 659060790 985105136 86055742 722429332 455416005 777099666 126909601 146995134 517944522 734954286 248115053 655168258 600552615 853507219 733857926 867949120 969290084 987618487 65896558 888475047 933058412 991255700 365999556 906687476 251016557 521864543 166996808 549336865 754659468 805524599 788627978 948185797 119311305 751416353 399111948 660644318 912665073 961670830 607100936 795358950 982465023 996373783 946952775 956040339 699314977 717517694 543547033 705943961 822646971 953667358 51658910 488665676 853760507 858485049 990161461 998227347 380268219 415459713 265125727 643419424 408266993 840039726 938229792 986362562 21362052 314889905 134389275 625351591 334703252 401445049 675395821 923701957 527180474 881525001 903788518 942403846 325325420 962027368 142127882 856682058 955736657 963620304 610967784 692086731 637902831 638849896 588877338 873479466 700598324 740084132 476633830 984570417 773538852 971927899 79614729 762239363 196377499 405214080 790678709 908264671 982968189 987184739 474294579 501164808 587498609 989903756 591569739 602615443 276075514 865754436 389020438 501209558 415530628 520234373 107868971 816114711 576243002 938999885 676090674 885967168 479778118 774620308 487609848 530657911 914812751 961054573 732575415 770958717 893941510 898494971 990834097 992508580 668512348 700809423 398630937 413505836 130617814 504673800 271005805 425046785 181703930 871650661 345034259 585622330 520160909 613163331 687796565 891948001 614987224 925631429 517870922 802865924 396248521 729309276 891668866 995756430 821342934 892052403 556623755 619322074 654708288 739460424 231049984 935782341 225017730 736466706 466500172 861184746 793971334 845180562 535410308 684968211 181799375 429045253 694155609 854911890 761899064 881087823 224033819 959140254 433978031 593419683 988093831 995530306 743166836 944304452 777794117 841720914 865321976 906643221 903875445 927142375 770797755 927013251 634286873 766299930 408663582 735024796 546786539 603396004 48690524 738652908 772186806 959333421 257951635 651233129 759258253 920401719 436396601 738229924 81950087 889368595 996537415 999007620 403243915 784137201 758669808 768227853 500080918 874024120 368521627 991932653 104920333 631410321 972098879 986604208 127770758 414584772 529756679 816661799 488304160 558709300 559592500 736121465 664887211 796752308 267608503 305589995 599216499 729550776 967986809 971633359 852015658 929086288 415010572 496053127 839137775 998956774 136256597 733387226 90696618 872619382 839241230 856775486 586942172 958527293 100845140 252657899 735204806 873712018 985579611 991094513 224195077 689994432 93847041 876063226 921797985 984673526 79456921 167946658 989289668 990268317 606394228 622798602 861799589 913467675 811621587 834414433 441513366 642596920 520503856 834046405 556629365 633470508 559923814 593382327 482987881 641758907 188259105 524754269 654160593 701152363 332301529 747709688 545698654 747137032 507057323 821717062 681775927 823957719 904484379 938688159 200584598 456672448 632833830 803784447 499755616 661001849 21870103 916300465 492424077 972773845 101719026 406271366 810958426 880153713 613158607 692121803 97310776 413795398 306189344 982408271 490602172 810202741 722320342 750943045 694259343 928359323 988995542 989845094 794681711 925228757 19132654 317370481 811242273 885993861 74424108 844701144 359228916 773476715 804925951 921208358 452521195 608015403 807193635 932851107 980226311 990036631 314616463 794939115 721712661 831061897 451160460 606281117 431307562 661280149 760788584 895879415 91930309 703645836 501919340 772816885 591460887 874998749 465642224 995600285 586299655 964029221 115342122 415971961 125022142 452793117 194151606 834212860 397723605 744026690 393053246 721708266 259101485 265509038 926626911 946971036 512206844 530506159 279390351 953364630 751221198 765222171 267827892 688051565 676373181 759639449 837794670 979743441 124323819 698856167 215041065 798210980 541400233 685407323 816632969 957310746 907092077 986107508 637258313 917605165 770545194 841939462 53131200 620843076 331926927 711773968 531206075 731694256 531723103 614170169 229006939 527308773 610594222 701110837 990917804 994636489 678425150 940335166 378089808 632198140 346064849 750174844 667883913 948155770 747086007 916007248 764148552 845825598 791740453 839023537 718819654 922441544 156333284 529520181 358463555 861108888 980756401 998129754 985057190 989873769 361418125 387817970 473709115 992395982 775081182 783223303 47337563 987786372 20566861 424139929 45404516 932897148 985637159 992365395 57758909 582895684 274267791 661823017 365180083 948101725 635483467 951507458 879352503 879470605 66658875 796554183 300415598 579647416 479624063 819381611 141394809 947604095 156605468 791053261 788739556 920670637 776710829 892009688 723413729 975244425 449437100 528243821 499982039 840448785 150110860 263004989 37349136 862179339 683138632 832520554 583103173 922487806 888671849 945187577 375387793 986502419 56157809 404060143 788229610 851784193 248810344 329523714 378066669 882814434 882591389 987309249 648142406 952623963 210011714 900207477 703818439 941175063 870079519 955250097 840674316 883950735 402541848 938612180 217620302 493616293 799052180 903218988 588078978 850537951 311684735 608947964 806333920 958628028 649496152 849814427 920713068 980500698 776513756 915367652 212229109 747472986 55361767 455714403 521818887 628698210 990969870 992282540 639090259 731795973 442434241 811831779 322736104 922630406 182814106 375927501 214910126 796099683 589258788 686271740 482377856 864912733 932565808 938604142 589842942 723938023 819021460 920950658 558118080 563430208 730296698 803359889 312877252 932524119 199540665 751400070 96790706 537591090 977192777 992599519 756462488 936617517 521151602 987911807 221138472 494068530 446032341 481141296 597693225 839575153 800620998 970382159 750587288 877447505 187062545 663338876 271882297 428969322 4586529 923100466 508836559 586498496 931156689 985956186 330399700 603238783 835079439 974571354 234094794 750878195 601867753 905459312 238183457 702086191 990174593 993356737 208412226 357843878 160054217 965102937 486481610 853730704 331808642 335787344 558512967 978324702 603938233 802797113 65439239 86359173 542672358 874732089 111189357 617978541 632299635 921497273 224086901 904331590 636983911 945118412 274769136 710543889 648034226 831002725 230584259 685443251 633954363 675296228 825647801 946606950 935301762 974212747 400574004 631423872 963178238 977648383 919858159 949062903 509186586 907361995 112370134 946651973 19488932 968499260 716122253 758469292 381499808 693907582 772326060 964992672 207159800 424270498 667074807 990669522 92038058 599981474 991490720 992870629 619926537 958696043 64939771 266020897 403238586 786989914 69177202 293703529 869385560 907343857 521639019 605088130 872031300 920174870 25110322 734904084 315227008 887950486 865841070 986512236 521848996 739450550 524516115 708112413 740060139 779977873 307084423 452543741 383179783 839370818 345741625 599782859 560682593 585970104 824209108 894956170 610124734 620943739 851877142 876190089 367980235 474993953 433560794 578540412 524574904 805563396 380846597 530048592 660214043 710610747 722460031 818072862 324825280 500371837 469326604 732104161 815503112 964560143 303668442 651286329 515714918 582982569 820205752 949477871 822464178 976249637 989009968 992153833 114020728 229513474 301436244 312791979 892654923 945185866 158087991 963592555 52774603 323708183 116107802 838154619 801472503 977679901 616543494 791118178 754013371 805940520 892879032 922399053 910155887 993533321 190691309 290604877 349836102 905978041 133369630 627526039 754813057 758916740 916201246 966967747 532512622 772292107 25244651 971585375 511131669 774527993 406482468 500261987 325060127 638635328 74171718 762536259 488553733 723065953 72589276 715899332 826644308 956753634 895566735 907972841 27955738 983689904 176497112 449596687 369180319 791594036 698776111 929544742 143152711 698396312 91311924 956330112 583105910 756437795 836772438 934365554 313006892 688105675 812454901 922423926 748794279 781845146 236751881 939942156 469350389 562879440 316072595 520446735 864239360 986386037 910303514 940380295 394916582 474027642 800490965 802540076 928556174 996260690 737000385 990334096 873112945 955830253 516386518 699388621 784118261 830730864 735377288 799232187 636285539 733741980 820100176 889066491 914487143 931231479 23218626 256311406 127807396 578706890 600415528 809078537 127383793 966047494 982769012 997652744 508164950 666871627 119236930 583746864 955500087 966906733 656921310 711480808 475671849 682882351 126847788 825100001 476142749 967024780 388096012 786709623 315025890 849432151 758539699 844309367 549940312 669119528 936194632 974623163 203912483 522112455 436879176 837290903 683418807 942720607 276242221 654189384 48261584 599458223 301382957 689678175 565817246 594956472 539790439 610180378 652062646 939590816 880846680 987489022 332224565 898324658 103413259 836505021 98094784 899145573 512964038 820279770 600994888 616083148 128939927 200979149 200467498 601181074 329748560 665036051 57747132 237443375 694181571 738261014 66151590 434731460 44203946 697772016 234124424 528758679 155163857 156675693 539038614 730578568 890085895 963675901 51914658 988492439 34824838 940683470 855478745 889887887 559065315 772914670 225946126 404764591 303801356 890277879 589314672 830266672 773257264 888438082 767103297 925900927 851267505 941847861 983013575 999942498 146849860 878914408 29367238 211737992 610300889 674513429 762897677 893497378 6861728 858508474 60514605 61318177 949095556 999380158 558629884 807067389 1416638 73709659 784171734 980519323 999185686 999521383 58779004 346191050 468738795 942362171 273943799 309303507 76544795 103167933 488993688 988267620 761441950 864286863 729479518 917486179 340486090 747253074 682123894 968187351 913667352 968743861 472269564 855901106 135463283 203405775 569891635 748233571 545184327 659570008 801579747 980267432 944276567 950348714 693164897 791820371 967150134 983029424 705500633 814507276 788130548 893447240 827756725 981383901 979523449 993664302 682292436 734925203 149647962 593202567 932382680 953383363 867730194 997837833 580435615 726414571 868722543 902095365 863210939 986178911 757592770 803534106 786100285 807482635 588964781 600155868 762978383 781448900 984469550 988566157 190851178 963990605 31059816 63961403 560129466 670777060 66146716 946055267 426823498 601316448 723313375 750478826 901604150 963812584 119739662 192350804 987720898 997040132 678031850 967450817 129914151 401222390 31311992 469207437 167320423 777629689 905967089 977179524 979586957 991075485 587302267 863077097 434703611 609268154 854743114 888591198 599224265 737684796 916908483 949449029 503433081 768241004 593213070 670277611 667323675 677180229 768500161 792444093 918917658 932206274 171302453 640007898 34397079 693314590 3551551 799350456 153733303 421264641 371856226 984538134 443314546 603062249 795885960 815962604 69737790 529637220 151481725 518927315 31275262 573273445 603493256 788455072 683840066 995044002 194167130 607275796 65762191 359050233 44293854 184013094 447265069 546681955 730602379 925783312 929404168 981350953 685950191 953502280 245330201 522978967 346578452 432019968 774279518 900716708 661268986 741857772 742987300 887568655 291026781 356218566 19477058 26052567 592015404 856136961 327435333 622213227 158925576 836298661 42818853 101246000 573109468 578107012 847835837 939570747 896588912 962712347 950102451 964124871 711135378 787909109 216587093 731698404 183248310 432994294 677761472 919575341 362276107 852477557 1184838 448689540 266796361 873098002 302632649 608488504 377345350 778577891 275547156 777086164 288276536 513090041 331683503 691081179 311582672 652793667 482007705 815423403 542744008 764690839 293028233 294444251 275972568 778724182 963792463 998058278 187755975 455451192 704135447 903742146 557570474 911538165 282544983 654323760 945128638 993348678 543694289 616561633 774912475 877969595 854288968 951408271 505773554 576265390 630439461 989716003 261679451 297808643 594846131 655004674 624343137 765954141 817249525 958467004 899752330 992873038 956898836 979529676 825215541 955704360 583601245 688928270 510261150 748944344 503828775 839357226 565822265 978522313 558994076 686682961 452482573 906343656 397840188 600038117 162597549 646334300 316777412 813186534 955702785 986434354 646978267 853184629 610860816 759106656 926494055 971143513 734187700 996273618 99560461 637246019 266185211 517609238 821973560 850144942 822628985 932468873 167840589 256830479 238014820 316730579 622836271 754749207 131832872 516935317 912468490 983007606 495147829 516733231 484641012 927518706 106984595 206668874 105312269 326939335 818293139 891083850 307333015 841849618 317980346 968587297 191264071 747876745 762016431 861989162 88061658 741016253 87108108 459095659 210164694 966342984 625175462 699090105 230826293 239495858 279305204 455120135 711998216 952417329 370095442 892598436 906024753 966487999 700249902 963349129 31122382 62964595 898647448 949024548 996825 590549030 146383343 176238659 795393623 843837683 333654728 914090421 929867158 979385627 250595403 871433183 942170231 972679531 144924350 458297928 726589694 791953187 243049761 371200015 281997347 928401141 183664816 949843753 503807185 914257666 99165403 582528115 850162254 862976783 840726849 933572475 368111674 607084163 988619033 996180694 417478058 989475437 688897286 965542701 480371119 630768747 390095279 456828993 458886595 984842631 183962580 512929586 942638183 944930815 584025293 843906133 992641639 997332189 985459224 992075997 617781596 928123121 511154828 859497060 631039393 854880989 211150361 234034860 866735722 915063065 410107843 925945304 855638401 981927005 324044237 714623557 588212661 652498135 400828727 685465263 83461979 703290683 30174266 366198266 824281418 996321784 775805712 880029327 158520033 508510606 241671089 487543505 716637455 962073843 211630174 536701535 469829954 684420900 657249848 955841024 832740807 944790127 328496441 694923715 276375530 652502351 863718188 904931327 368950458 529188483 235738600 998651425 887470862 926637563 678013157 821287341 606102673 961614160 431209416 717269419 727434239 932278883 376335094 931536043 312610179 633362836 438218613 541878254 847967308 910877925 591890130 811313551 109165506 220861115 796118584 803919838 549466701 827422023 369183411 829840093 782015649 917071400 208075113 331807158 600098823 736409487 342162019 740433702 586091602 810479184 77820460 692973192 272741521 907679275 935646005 958232520 871746154 946716122 339377104 498710770 244052442 736082635 496503007 989491948 153543244 979575251 598187968 622059614 227023001 494605065 660499888 933885495 34955806 503004047 621068625 632017815 958624887 967331412 406091426 772876440 380649533 865235608 34982023 870067454 329311864 941499475 356413974 837699812 740630877 835024599 764844522 897764011 975287814 994381592 237446124 621894806 556319731 994840037 322448750 925486137 938135231 968500096 754871981 764286483 741324276 812954593 875038609 952924923 281509674 619909483 532661730 888338382 196487061 425331462 664418354 941903117 898561769 967620832 78107310 95468791 567614637 867178193 139642385 203534443 988044661 996523184 914111169 971240526 645061868 910261397 555217797 659855461 891123855 907388707 842504487 848843423 72377235 132171381 875464464 911577429 380573615 990056057 631315996 661563197 818028842 828955086 461619202 874647711 97389316 105816447 666274385 956413092 147876859 150120417 583019190 813740699 207953762 603002426 856057175 902937662 753643863 928069987 202181678 725524313 346292151 873531176 734805495 782857909 870538788 996974338 110805392 501338396 556005385 585132391 576681592 757254918 956265230 978492633 312131921 910435952 499647636 812672989 229026236 516448373 365060091 804336379 486014551 717254627 311967149 361049884 798314025 828168196 790615398 904235531 681514576 999519980 560768652 762288066 681070953 878220421 349344378 880290619 692342951 860566256 704666165 849470203 721886932 977604488 241532604 603363473 479465826 748285415 24498341 801442220 166656987 388619467 649703228 826272379 146501627 221635410 945390610 989796996 745521099 955743876 440701302 933599710 670332905 856467284 630313047 957709764 300429836 383693380 831765369 945936048 591201193 597649742 392013061 923354149 607310458 760109872 632761455 646956312 369886037 879153607 949421424 986037255 558877298 854267447 46060290 306096808 919818114 986411252 797705496 943680871 809663050 883767095 906876863 941771257 182176253 631526496 428836327 979597569 727512648 827928726 951603870 955872519 910112947 962294435 538601085 684756792 463482235 576246125 259035343 580202109 72201962 123703598 331860675 334548891 769550683 928180522 720813915 731828546 776101020 994947906 765450116 777078854 441198489 894469785 693853946 918219443 225623102 831704379 905855256 947156160 243754142 683485697 19643121 427421431 90139317 525206778 57247483 984250727 951062729 984570407 475206902 630760664 1538027 542332726 659548159 666640908 706019202 725848915 768732251 864282443 589148954 593213678 295114036 683181189 22343068 33727362 795611716 871332917 206382178 913176609 495493095 607404867 63417858 749233587 359860123 583141815 613699624 950649816 592477556 832030700 990333687 994425511 158416484 330797018 93187749 304573362 905133769 954960602 770599258 900963447 131925845 667526697 798072116 990575982 37192257 338984298 154062421 724524420 339847767 747199216 510225292 925347106 276408400 862477956 669940168 885705534 97922187 603986525 476500890 963176595 399855420 965064614 875785710 894860297 842808644 929450768 776941693 802713606 968374248 977178363 158080719 271480602 557421450 916377321 319691936 467228381 617155613 729019980 269516665 628395541 782682788 936067023 223455288 450862991 855977211 936357222 285408944 536035335 528958124 888171096 764133613 886413736 378373786 875321284 779196889 803162705 30049731 210746533 648484077 939506504 72430972 212959795 426017661 741338149 639622475 714128061 713376439 915365091 716622780 812703532 551294360 910154355 211390246 213483424 626389230 683257872 671628717 815880615 865870946 930711415 884352258 971342885 766825576 829796549 635184894 742794493 446160740 752860974 549669414 658131655 76036069 543786788 18190706 632418548 143960716 463322885 301586865 435120834 946585559 948494492 722795858 829549672 933635905 975891334 873428728 911974862 164239193 574893470 638136999 872220145 56491552 70042503 149783794 493569408 532823832 850390411 854984552 908566160 962728361 974062990 946336164 947645497 460993099 599003119 906876876 952981381 564955609 645796554 306855636 367403179 803719965 859491618 646175403 882350582 466288814 872853250 497292923 733609531 235110356 950702342 862227618 902644332 252960011 401485566 902358481 984778713 852845040 857013582 463312407 513107658 585859947 673036477 11551953 179475422 399312295 802550363 686503143 782689629 440583472 896317665 205642013 261200392 758513899 890809212 253854245 786394341 275207993 340786063 830266838 870648043 739565240 989563115 696320398 821708392 246363883 889126902 190321553 758263304 210618821 443508927 671182757 893329809 76151659 481301946 416877770 483559716 673065351 947688227 767943839 952912547 938830817 988411484 872899901 992757165 214992693 530366788 104899275 694608449 721515278 921052076 128719728 289742879 117404139 716158094 847565135 849445981 778426576 978190863 779293639 839744035 883357697 938146881 420717283 799142931 28118483 309410442 565114107 673981494 531621021 693088439 826851103 830075593 934470988 970474146 728655069 799038433 377049554 879117371 136102339 267525331 326956018 577686169 71996988 92162368 783662374 856729631 810261541 900055834 649638931 924817435 683748051 730625534 628079060 959715220 900725347 918920625 771367247 861112394 167958308 399693738 263861075 984562726 349422677 728725468 691472140 855930386 47431826 113549618 294617779 576182126 758489609 981031218 340268896 997386165 8700009 603489387 45151078 767925583 34302949 413302275 584800147 856428276 589842485 735914988 88721640 713673240 56769210 220842870 48807821 733266726 48368860 442185701 554030660 922188054 260553600 885439126 318211080 913362700 55853992 954956385 842669494 982702907 283227461 482019190 539419597 743092558 376437397 544892136 874230332 954423538 638915523 887643927 504047852 844948214 854743929 993215197 202925377 767315303 139453752 590261111 132425771 699585462 135523538 292864972 688446616 983937159 561856257 563241254 280360892 581020458 652067436 834228896 54524173 358964230 130988124 960764643 717972117 784299564 841973882 954369571 726683502 781527650 81687241 228593256 881929633 920027166 509927055 806366937 577284984 908548142 925573263 956377452 487644600 979736040 968923774 994508139 759862681 854414292 287217319 927962331 913353502 974999698 19473832 252872947 106546745 681366941 815807578 985426023 680719861 684685156 807859899 811399579 610170826 651225446 837990325 913628713 88089757 205846896 647048112 666276257 355790657 968202992 530271985 589295241 524799510 983915813 48284919 906548067 521782072 697256475 11305507 198921428 727455273 889496767 881522626 954302155 237400169 905168365 21530883 701194666 755812897 881556402 892267527 974062280 611060943 938278216 221106614 320270475 174389920 899001334 606517246 619742737 858261381 926721779 188558581 815947668 536041560 866734838 397788573 434116131 819372754 995942769 891734482 990453350 727671503 834881076 918588152 986761849 788893248 895708586 427456849 788236273 695366577 979562703 99737286 766146642 589455989 849240050 180231372 982539339 506612875 594934839 606091475 857280872 869551328 956045411 939896114 981372411 184781958 628132390 385669268 530614772 830592204 919387035 259718913 371518555 268848066 461062888 64816145 318561418 378260678 390391813 794559474 840066451 132857627 669203036 400389258 715543389 612343821 631589709 716984851 835904884 987300220 988538042 633351240 672051691 426750155 920966677 987916666 997924436 135551484 865076795 816616584 947971675 88498322 163024797 440868770 728217867 139005455 630365117 109984530 628722939 71114706 423059164 450154744 761566362 210502015 673911767 796388446 839771685 634975533 707372272 345462296 833859141 813783355 961762014 226225921 668521684 142737934 187551044 707181397 882880002 108796438 596061530 350067259 764023300 44845938 75079456 822816856 907023397 869920552 903348650 748893048 846141315 373414583 706459599 253263556 953131851 235460095 243127865 941743169 992292358 865466522 952964761 762006750 959147311 91648351 927955731 601819386 892139906 425480126 804632122 640558962 898127349 143745903 180726571 452337383 927539924 617117987 694436549 784026061 870480819 123196199 588707154 210892703 952837678 667993740 765042444 46811451 880178042 774891122 888833097 218520483 352448342 56141999 800813188 29959327 727622938 28301234 503510759 61762864 965720777 668300856 849080402 722571950 723052108 29162553 253159100 909099940 918759538 353573229 842188647 195160125 580472905 825156608 903843431 310020304 328915966 731324864 943120562 617711407 676737669 127768734 902197916 835399818 970681640 418494375 828134950 42561289 267047444 352808330 914209940 881505444 910265991 749759963 785910685 400697150 442799111 532512466 572005160 220670573 867389420 65042803 706662059 464427662 697050985 952966058 954354546 575927913 729385686 678950496 748434141 539617329 710103066 523256013 954996342 244840802 363523893 462079001 566316479 209762188 346400090 896032651 982314803 154296279 678280505 910753653 921194614 44764727 791423893 648718479 656260095 697836548 981263489 374884598 574108750 792803208 851449579 634942215 873572701 25856496 501402895 12628563 604322347 323841845 594725454 390116147 694053365 503303880 785989295 447561155 581784933 250377840 464493493 214098914 669596944 344354429 677828373 978924565 991206542 416988975 855203707 695289371 908243798 250821791 534035181 555540672 650686078 141951303 727878858 663463767 815766965 173754 469786252 404629931 840253310 223423718 333095692 693615346 864147292 809442219 857172923 436905670 962540076 612648867 707197487 855692759 873287356 365586712 634502289 845327819 958629802 757569573 775912228 347355567 941018768 108164794 139148351 727159884 810761851 985072730 989523368 519980775 642998759 704202797 850418011 196511697 948335533 367080266 964624586 25696406 620244484 115721672 742086647 119630311 399726464 293032897 491906948 422967816 790712413 389531824 551574762 336707928 908893806 499545469 979341232 211161664 438911083 615006948 970246236 95124229 720114129 362531752 780619500 466599413 812910490 200494923 305971491 107296537 299596557 257197124 978255578 257836270 853050490 838584908 892898619 366888914 913699616 385943638 456537437 564739423 859545909 743819929 904370324 391666039 668452916 973168802 990099300 300284401 777874957 251118733 544588539 621481964 744676449 861501053 922880529 728455208 876910596 332980530 878937960 720492671 936668814 21154567 644734768 495953870 611032321 867087845 868509647 35381524 518859282 209127859 431675366 983716956 986144398 894919498 994559628 205495729 392949114 915230289 998213292 248627320 498625490 317443664 587688409 969810403 973096458 445482804 762610237 380102740 986730252 686145553 865579553 573597213 896314878 330999749 725831995 698118319 997355710 362783808 387704428 50023343 72136706 344458310 566639199 758579205 786262317 29891424 956968881 322685851 782263351 907227594 995520659 358908817 700430768 345431183 596977231 446874862 670425899 587558518 657185892 95147288 334146106 53746227 962049044 692400221 993421679 746895306 953827599 619433669 694765242 686028998 884069064 832486496 965879722 27581340 295865863 578933720 866021569 108660587 852232651 396251605 540559842 972914377 985662559 466456095 861799498 121068939 977348757 411361069 778490902 120171709 671917202 234965535 317372907 992615621 999247564 930207064 999153452 709714304 727364622 589706929 866917400 293106854 564843935 784402539 847186830 605762085 983089241 438398315 833853932 114348572 804168367 234039344 772648816 491433384 902040212 773380841 885225332 833506402 929068626 626611641 689582496 672621574 926519226 61439302 171515717 668138886 974297730 338558092 587183850 257947651 540722906 166742345 669973416 261058584 889370623 622590915 769734012 246571388 461676808 288787020 948581812 521111960 880711753 755314004 804947226 977275649 998477136 411455269 926364023 681230948 845652488 113539427 632922601 620935845 756944633 143737701 370517723 721889738 798154515 954866065 982778025 342596603 629641359 774793970 937302954 893373888 961508181 646931443 666773615 175722478 916262109 329847784 885806494 875836123 950305569 992649482 997728575 125365740 699541217 769466 658615757 742927505 854742262 114219513 436326576 483475963 490375638 344025956 724326199 725994649 760177352 693827336 835876057 189323140 837896021 632202299 733254507 799769957 828427299 297337593 951765669 393669553 522690162 532922605 821790004 281326158 592452775 752089862 839024943 617045903 905251633 606526410 959957209 323076897 344009601 425879073 749712668 886420701 925951516 112322413 275393011 41281695 435006931 767406837 849085996 510289657 658500989 783326121 954581749 387628822 768291770 495737166 732060690 261093437 364582280 914403988 992759201 666057135 789943291 320832490 743993147 951420728 955796017 331697786 386014013 249713228 271885375 952578688 972904683 261067302 649758576 164406725 744102982 241091138 429648553 319933227 536222268 384795897 541683904 986448707 993126660 319927428 506713057 428991708 737145831 141472766 491451010 882698196 912902079 818930387 980871577 539968569 582744982 755842764 793528326 33967666 60162491 611463752 652459236 511522127 916704084 56293034 700436202 479710496 929439373 997408466 999164314 690854974 895757041 115288588 947005262 818712644 915429375 515769914 696249267 998739632 999320657 605808933 689929772 501431719 935564383 269740243 868491424 405703670 894595547 819854601 969934863 944490339 987539559 569801918 856103077 335393107 788815315 687436260 896085859 835129080 909168000 802947211 895127119 989232045 999674590 535432691 847105192 366701183 473025301 984237676 995512444 837419285 977933362 776562240 906642307 677313854 796020996 574295524 871957753 699283348 911402940 748203794 983863508 133540046 363311659 825056446 873231332 854393374 948914551 769046960 984399626 471964126 581817701 130717761 894040427 369610662 917811610 807231000 902618408 85831321 256014527 485116600 975084354 454040622 644704773 878261243 989516022 859237335 914518127 177209416 314904074 116395102 216910481 488795053 545022561 205074085 807372849 865787109 957409795 926623450 929346044 684305493 850908225 860804711 979339650 930982116 951085404 178419942 186748029 572261051 757708733 408765211 748794476 276333999 420728816 952933470 998662768 24286 23474611 637013079 918289564 766307424 981763892 340792383 642956611 79158657 358151999 664775413 880734983 849829477 998280832 986054920 998263970 885792829 970938919 449534823 547248503 281553875 882196984 277701988 786289409 398073119 890921285 871834341 930822599 77062184 590339275 508472425 809403578 458847778 677976622 379635227 570524870 853091415 937802923 684896413 975352989 207653393 265380314 355441308 443427581 130373408 316246672 231282923 642532437 448197949 666809259 324830881 993301005 589920572 643485336 344744939 938470518 245472372 348782722 893975079 992314320 700177494 800900054 218089850 243607447 458157112 700905243 263246827 685815715 919992827 938222980 597478693 810242366 173366177 917899610 373455114 920799727 952897901 962107268 699711241 970300069 405097218 857981472 322068144 687515132 304871874 965942282 178184527 987455852 755142126 984865431 609913889 968244427 997093193 998910746 239483009 383516861 984368937 990413554 288904741 818575249 599854594 636285284 596988487 987428551 344182959 787740666 57528309 589211707 325594596 612405180 270592587 854654813 805466533 857912434 370265972 896418934 558951505 965739957 491655237 916605338 775080992 791261251 335834633 537497430 264975269 970883486 884446376 975167874 306957740 583438123 562537597 712923224 437165020 945656533 486354780 907998437 720301548 945818157 614604336 768890826 551579666 861222102 185534236 805569905 195792222 393176924 826925227 840973243 462113224 465610310 981729148 994242638 668502221 846159745 646417321 672369993 753561493 894858843 167222326 736553719 61708987 453525345 821987300 947099423 997665752 999930964 607029036 669884560 842895975 852462016 53241521 57276829 744346288 825285828 849233990 988156592 821959339 988866201 301708501 910230566 631722252 920366046 930199526 975856826 894920087 966840862 528746017 601373420 845232481 857048488 822668179 869486800 267026669 810215717 424712261 857337142 705820179 874815624 636848260 946248758 39351874 982544265 424422791 993040416 633349214 907570515 494583118 531465946 873457120 988454275 943688825 985415676 804550735 955596873 321071204 959736020 125760915 865040400 455753922 933583920 534925940 967843548 339701062 644552199 238803018 279394916 975483685 980246756 131745020 542142160 441372263 526366167 656160812 728491206 797982400 834672193 820735540 885914658 911414623 969943096 299764248 902977702 623693584 901324690 145042433 437048228 885684599 889272196 795790257 977789317 789846625 895874320 335565107 387064578 209969381 751111363 861260948 887010878 530607883 586322756 470848814 889248163 960832780 967694873 431775516 879612360 381506579 761409375 325148756 596254731 139288655 189249639 908146239 946769807 72644475 986637292 979920004 982976050 253041397 868661649 256067005 923823012 334766612 464072172 703605953 819391741 764165225 965217784 926356987 994153370 755149258 934364128 372845117 389129542 890190034 972930927 819958021 934425071 707839053 747136551 462090265 809537113 49420451 523194683 610378461 922874971 714363533 836177444 588508737 860756369 185975566 911261941 396048763 663429562 663504100 713345926 614034548 844319844 272060571 999767969 627456567 817836041 156787679 478185612 263980577 421885262 588009218 597036339 934721728 967075443 548944565 791509382 587635037 590601823 735928852 949159047 523270321 828879207 38640156 975179024 475142325 612781542 956902155 969805130 402312343 905456307 834036971 914782395 922570478 977576378 727723254 769539498 409216599 565516295 646139319 950640349 232488307 631285607 692593647 991309770 533323648 761139701 923193482 987228210 645394723 819260426 989996243 995905131 50207972 381756106 856957256 974196702 853173618 940310206 990074793 993904686 651602573 833669854 463518436 524986929 353778793 910149440 345332774 658347054 358979963 586276828 231878967 407125704 222705898 460891131 422419699 839513823 741454739 881539706 254656137 845395218 385735131 862723570 481477241 518547375 165936615 874162902 963040750 969486365 243634330 530286155 50938991 80628320 537757638 783001590 520970159 840326279 581512357 942474359 803331886 875999389 521096457 601173053 9858746 859474679 688735982 888388264 602922838 794962251 706811109 979386529 869293449 914456565 843637635 921874656 210743525 591489778 507384060 952207553 80945281 599804132 740705790 825359934 35286443 268444505 836210926 969672813 442578671 746238076 999730500 999983485 612890102 864003829 735858310 847802833 56045129 251926346 651256838 802638692 583535750 827339388 334364874 335474608 841468746 884745400 475706439 769973413 923161738 962076423 555016854 648886657 336483142 429883953 563097689 709008124 662013586 834593604 647446332 837752926 924491200 983948804 805284195 868995311 894406885 970397062 545562252 664060642 592757567 963993361 777365423 863330473 986084855 997223694 832656936 905184303 38828891 280764198 933348830 990466612 238432989 431251604 533427709 561880058 661361700 919942867 500614028 698139435 151078159 174516168 598370085 839075023 594174334 834561857 850133163 898599342 703943102 972404875 533268575 902274157 558256751 654389375 272400 264149582 76560371 282540146 973856926 992145470 322286805 508514161 826186013 875837465 527647644 833742820 794323322 844257088 203930357 331305838 20949178 645520993 812824134 967620495 560849306 779855339 281987051 680298775 733328366 879364419 764652726 981404666 683059084 870562450 742572901 963403671 933065447 961969757 270432916 429025220 330970219 825019907 66569687 550903196 859275618 926080985 880264905 967433320 161838039 361954429 208861646 867225678 413392030 841096453 58658825 887594211 590082379 819577644 78696205 457577410 945754152 990323305 428584220 805899059 258098979 663737013 133881131 331052954 307182636 515826591 210267780 839097454 940606388 944369610 586214022 789287130 335838253 544043322 438446694 542358197 136851710 834943569 512603199 883749862 202249137 915189015 579090874 714276989 748350541 886337272 971733746 987574105 388207894 658426539 30680217 736160559 150360438 177796696 254410718 271121203 505478461 817993223 242180498 793452806 863516344 883776985 265357769 563700267 261198647 786764451 53997227 964282763 820645289 881856097 25983247 519026546 594544565 896749683 320804298 396741561 749394577 767407174 836471561 864467141 886625141 982840448 804805488 907147427 209792669 231023231 569191305 781543504 952769767 959180444 504491749 792725832 982191719 999141200 110317982 694333454 344033917 942967938 60076434 645441665 541159499 785127740 229846820 560384992 748100791 825204229 872800904 995595529 758895205 819832262 611644528 835776290 214529902 614280853 947235974 985605976 266253802 537306686 740952671 751317281 466312829 565586870 257006459 389183934 452277711 973781475 792891624 834203070 649661122 957448627 252155588 295851875 727426438 997817021 877365278 881032198 421022201 533936291 417371139 960873293 190313265 339531604 642839401 784015566 920850841 962412593 940408991 971301433 383609219 603482744 657325698 692847122 718032418 960171080 967781211 987161778 119919496 672518611 2934393 706594123 404067532 424717089 772806655 905338200 123699898 893352598 238288059 639011333 62467140 935893894 252635159 754607425 644263831 683673107 792828331 880981079 342278630 621951453 551733081 927875068 519101223 789536542 192682881 863748249 128362176 382745197 537047502 879395891 691603413 910561866 93465665 268150279 553098170 747753043 333757844 563829652 809008887 894231623 633440885 839710880 80575678 118505489 398575059 520962306 786698813 993331943 188635910 222141554 597174346 778403498 543346031 773939353 737773634 822818986 294728980 878397226 655948078 816574206 758050034 844532425 205390599 432642397 794587811 934161719 479174523 974278282 996370356 997988559 474833187 755973083 935690578 949391575 744046635 822181177 284863310 599915720 728061384 925656548 64803325 786697088 4708304 616238802 432196446 866395058 224349215 990095455 602399782 956846039 570571832 654611502 54029131 665170693 89112219 257777653 938851525 940098732 175269571 485934836 395427662 835038538 325455893 851483934 137228638 690372867 597107603 795642402 821498806 928899817 273854527 882587859 903663763 966193652 114170677 986314360 624658920 793129383 595105436 968620770 205028334 743621480 227031864 458218653 820919716 851222064 346008192 487196798 583935486 991748905 150842393 674477634 651399916 781836350 848978254 974916877 912799846 937689751 863740560 919419057 833198705 992281041 541733550 897156060 257028425 278818743 915544509 948106845 910586112 936918489 374327541 646719427 91968271 564613537 147631694 521608905 156320852 415849650 127240027 160558808 995272567 995275006 543136762 740129127 748349104 876486782 356907065 868227820 239565574 872564754 509034567 766991030 502967995 898732850 315021274 625010727 547304317 925677042 325672146 838139048 158286443 754566918 661109385 738143181 205402560 939328488 151346793 905665307 291283945 882329010 64462445 511747969 682640839 691483525 241450952 350744315 943278890 969751455 297314792 419393198 511605141 599284520 743811923 912363548 466562001 822348546 57911011 852998804 310142231 387121868 710627799 972835506 557730969 963702204 200974743 302688372 143545289 377403825 627556034 683363555 651567260 744081364 741078613 760510686 810953257 981822848 25232657 648399122 407006957 410083211 59715288 113473107 567670053 650218164 713992292 853019725 697384950 992152723 77080667 807484236 414986287 863673398 939202460 946578827 252369721 645219949 442758951 879813183 723354452 808174602 178217173 979062928 283682129 629671296 849779395 873903842 893881408 895685143 872402274 977662938 671234903 862039165 236655357 947455859 577888446 934150806 502694682 649157010 398027277 491542357 444943204 964450489 766412058 982622086 160705082 546930484 665569772 890817806 739712287 921111052 101441242 285801187 437285117 956456210 597232963 927129727 861030561 979543793 775747597 830866924 234524693 910293357 844876930 920778928 473755334 543015456 692714169 867788070 395098914 958472958 782917725 921112876 740844471 806123087 505320985 873798295 201221797 780726544 193838100 824121099 688599623 918692598 439565506 994597427 76092133 117541723 197331748 671555710 94596894 892590622 264322170 265579722 913780247 993578854 153147345 743856950 449631946 964849589 547175179 995687748 845043908 964701189 464747306 471724477 783667345 863766105 49709757 634915341 788779954 837630221 184116661 579416510 625806481 715433316 727499115 737020600 859491332 890095393 715578963 982140359 582172871 878440013 720497981 834393190 426831014 998267168 704667385 765707175 181095865 739274540 754385484 889977030 594612039 849886067 692670300 714123095 943596340 948331882 757208874 844015901 843659965 959034593 131451814 617567138 924851571 945940946 601364938 970854663 43465859 523069238 651411585 736603976 955329843 987257677 41611301 191871497 949127094 973023056 342331002 713464198 300024677 738263748 74523613 137117337 956895475 991930436 766329132 824716491 19997294 71314350 874516657 920686516 154680672 804774054 986854377 989408477 48432478 495091937 609275773 900469599 851308384 965434220 9788833 981267399 756316770 848554438 286080611 590699587 543281077 576843917 29919905 425765681 415602243 580303870 21044094 647138581 169598519 331202624 52132326 661557344 417697502 856257089 935240514 960452236 287151656 993272044 54430666 291971847 248081016 253817528 539483679 690407719 489194798 535308083 715722357 963562916 237706098 821671760 103664015 906161084 991080080 992595063 427797256 581863017 858192789 979317193 462268585 891396196 32040902 294501366 475727005 910201684 380842275 864111204 449009103 826009592 190520625 203596922 222915516 964897803 6603025 812035176 745707871 875446162 748264522 923127519 708355977 977691948 528354950 673819876 243404128 695772019 541261740 856636541 952347595 957078091 815914130 998073010 291143495 648102720 941829679 942168405 128505008 727599857 225034834 616589281 513624027 667590465 115405908 251747927 509819651 945765915 888769899 923559763 563680602 686124064 230935617 441654504 380292168 901118834 458880472 469935723 411436396 701726867 37240049 606855785 95542188 741848012 357921693 799691417 199742059 335835622 27306261 89453996 128888693 545686617 4930013 56695048 725877120 896071528 450898847 499947674 626413949 924551945 437009933 669645263 565318686 782582289 412219541 427291376 829075277 891244596 180230332 552581546 379695264 674030727 407836782 814376735 481316171 719909391 716481637 774677620 203679671 510879923 611369561 612533705 552550188 610487530 884322121 979196090 73863769 291970019 766804685 818765612 399594550 794136969 624971382 797129981 530937513 551403658 779369982 878253479 3298258 356653174 217582629 484167048 894904452 963861108 504693893 708994130 827105751 836233587 38304886 454762905 470743156 881341901 398107569 612615321 94908233 938440752 230435922 558989754 664559610 678084107 736498167 889254579 287419891 363776934 785031706 932246254 229350991 532719873 94210274 613821151 893933648 985046274 766748748 942764835 603190269 815099912 957749594 999462824 523548046 643803197 854053982 972720299 396388934 935259121 765025259 958488635 90050305 945033788 381364366 595406116 999895233 999896004 482631039 513806479 972382431 995756186 877525350 889876628 755784275 868837997 432152585 596780778 550597319 987283320 846810045 942574487 359013900 727577345 890254663 895086875 948344628 981811865 851801010 865198387 858937852 874520425 234703092 558400891 311405702 553799495 542520099 571815078 508070679 564891751 854944855 936175779 750997556 999240536 617201627 974760656 188416870 672651343 878939931 916406760 40858706 153956872 695774102 736453396 420695647 928725730 871232944 918023979 918640229 950345922 996036665 997297518 500007831 662392232 927856405 961649001 304965485 327190541 884400968 918019915 209018297 639482247 451086670 583775928 828994453 976632729 988676731 993423170 970300004 972360888 343581766 875406966 208487060 636320925 417231683 418706830 622178410 754734456 504045327 672679274 974641349 979289870 202091632 409247181 796103549 972718848 97741894 580976966 378780710 466546618 364762439 697813341 204582287 966140531 989631609 998835093 978916323 983039657 325339810 789031011 134905963 848093493 603812751 975746558 42819299 819740421 670964813 964168412 562760667 709832938 915306003 997472269 514039980 997873731 846130161 865604056 782847826 927428812 266975830 860374315 298300847 750877568 293272036 333158796 139714602 286578703 4797113 607311526 591419187 787959856 162850307 677214415 553292924 897655452 580238619 933854632 756110911 975158135 551632403 716042297 212237211 667319850 849765880 907299072 927693084 968114175 313971470 975549073 7433601 538021463 709189613 995225066 652685452 808398477 847137516 971810221 855805431 870035691 34968427 913255390 877067883 885534453 778377521 907007189 243524622 957555642 56496665 68500140 678160767 690658904 921030663 967462669 798987332 855487611 642717330 812145037 769402237 863195856 962999109 978105393 145040534 503316727 514854811 769107057 526480471 795994022 397831846 419995496 906940649 927365680 249751434 410561635 882233711 938921111 151134264 913900233 132267075 692356553 883138074 904427640 23811377 315345211 225167249 620993520 553977456 992530499 811344257 848631922 59321917 876134822 473076433 686209596 105150956 105311373 622304259 654661645 857288308 956551348 255386353 452505247 780144884 927478317 981276264 994535401 381481225 937377291 573443226 835547687 834937027 936018625 161703057 381692232 680453909 815572295 574881841 628610873 995774143 996966441 302481278 809072408 718918576 899240689 461137920 720833196 853150865 879975960 846724112 872144287 48671272 496633908 453750988 832625569 587070217 926228368 90149878 372493527 349583442 879468070 645072096 990067199 364112096 708745859 779979258 787394454 457416036 609562107 121775508 543656630 108528031 385282457 114702354 726004042 512811719 953557087 963862669 978832401 510351631 606229887 775020863 935265895 247164441 407293390 684456105 965609959 682118662 714644938 68217593 515506525 582796911 956162950 164031903 820291399 67707774 565669272 279633701 507493544 9791061 10624456 133561965 800155851 735212634 898660320 96947278 348196650 524889881 563172408 889701876 929796830 677863227 787774919 69498696 684389870 31820193 922733475 569251395 867192168 418697790 975856686 811982360 854167298 144764339 335922165 837276222 854492165 177169593 631040549 155472174 307225159 64801871 251720327 741477466 801613084 611787046 646120436 588865447 692025603 217633279 884229580 569539781 960350826 715039430 775277295 805576434 963724628 430689760 629044833 269391160 398187348 997502992 998496568 784665540 886562389 279102795 497440282 112566795 546051823 953577926 984800506 343208806 570601351 262238772 379329326 141903436 872973369 831184008 920416358 27995670 148867509 80968613 255787125 801004759 924049923 265526058 556352693 932812384 977878391 702896195 998363180 102611677 131394244 952532286 998101012 738919889 798724451 898537112 929013060 208634420 770911018 783643707 804846844 121099707 271540395 760763668 784875809 347131448 594064238 310737165 978545306 504479566 803325560 93607318 352222200 286109100 528291791 153106229 172486416 101014368 357500336 347745732 720452205 282429263 560604403 264808483 426552200 746541327 757093214 203146019 466158526 740963364 871332730 694733469 854996027 70861292 170037732 365307466 729106389 904934613 995700278 727849470 954410916 483033196 493410663 367462101 630926686 119083951 847695743 892729850 977772428 448885233 495374590 338297351 410098083 754853102 972588573 785630239 910413051 353282614 381189508 162740676 538915683 428379612 618430934 353288639 766463563 73122841 738771976 590956282 761766044 343220630 523469004 591623209 964979226 758227355 971792533 826179140 945115751 995049870 999529909 455550588 677247859 259978470 786890659 646413210 890766244 924016614 946229425 973796741 992100477 985570940 994050808 326594128 891546804 919287033 979150304 634956844 941718891 628886009 719105327 606926346 842951290 940737335 959594806 174119445 257124002 870786617 946190895 725066523 781295497 430999666 526233551 874438459 929517843 423903465 756803683 449031637 993950258 725251256 938080142 828775236 884348980 862269222 892643512 897424283 973684252 777836561 975601899 278763224 563801328 983846373 993813170 763784072 977359489 346339376 510029372 656851195 731635791 547597177 651859441 935163587 971089229 98359797 326183898 971119046 996929978 673056159 792204615 836127713 860173300 289187142 783776912 652964852 706683929 591211835 977528691 734353934 994861781 219396004 543749175 96686617 278289028 309017592 641018932 786678032 938299347 420353267 772580223 715989380 754300479 818849424 891701088 124739534 514334503 21514972 497784497 470418381 522348621 26364575 695192966 975943845 986660655 332857675 736785556 501676419 929382141 204018323 700559702 189024694 830497950 632163945 926669500 387365160 592258105 183009920 716784439 708368991 900259733 321651011 444112024 144421611 556514447 948226964 990325294 827088851 922685405 268182231 659409968 326269999 928556200 753828137 986531294 520904908 727710378 178843236 394144940 874112485 935731893 326815562 731305592 834320238 888784494 783282817 914840155 464131984 785852482 375448234 493214460 583226413 730902751 179587209 179843464 406821596 945149638 51212714 843575517 155754342 976550017 442135534 640469914 560539883 744597145 113939741 997684851 7115308 73499113 29381112 413940801 441056396 974501340 829112074 860324920 109935972 608057369 944452192 992943914 360309221 865412117 660799007 826610880 219596140 785163901 531296081 778518350 924430029 933746875 842663025 851467422 67700730 302387573 962339626 977984527 106283801 783503192 561423876 942817710 105433728 306381746 515368784 867609321 543516971 799888120 888392259 973708740 527818977 913651132 909195598 928743460 276767820 345103894 833498650 962242068 816212567 870429932 517429233 673654908 733266319 896612387 739463725 793617445 166148769 664505485 716927188 856617265 402021379 758902144 909849938 971958146 748571468 989094460 156944257 551102079 721771728 841260528 641906610 804667309 516024528 583991923 330217301 792253488 667587110 864263656 683972747 987739732 141706390 419114301 445108763 522971944 473844756 534969677 644651176 818697937 199670490 470496352 372390580 499822106 337156560 899372730 305514027 447557692 746326848 992598035 812805430 977770011 4911379 217310623 128198010 866132383 704233569 988472124 48486579 638672574 579205189 827722964 87357437 660492191 583130914 706336590 352132525 548640078 698933756 995761795 573611114 656645846 478598617 966743145 612864864 707652987 13906128 832488326 204956232 918337562 213989245 841181300 171952295 969583945 882630521 962801461 225095931 312386078 35204593 325211320 80865442 654902065 254727578 525643707 935624636 988062525 833016883 896798663 377292745 878367391 109790606 479216560 502673164 529383935 873889217 986618629 480186261 894303776 131525190 447201876 965309856 973926677 34115314 140639207 448428798 474864230 237655083 688033421 741661315 998249252 872505920 917880636 276346772 810744734 141204403 747203446 363801711 708719528 623325401 859671519 852830594 902075549 393637262 872296512 324589482 974614750 617682157 871631835 768678139 906200939 393859411 472863402 797348446 876610385 893014839 939196671 389070384 686205772 974480942 986414311 728594394 774613197 163363987 856449011 741007476 789177730 420767372 580598147 771293435 857575385 961193077 984066786 430980359 528546041 91771192 622118346 432776673 971374869 237181875 803126402 903315090 986257506 498550357 550209422 969722028 998430124 843329089 944439001 395169973 965007913 586291500 758093262 544035965 646167809 354402657 753279159 137454022 203682647 368688719 779427336 166440851 166867476 122295391 808412057 459001653 811975387 845569623 907815381 468493295 516225985 502843115 951107570 382034613 605401217 964144516 990415558 446715783 602765816 870661294 881028760 681463921 898642509 669080877 778820585 387797590 823972425 879460889 969243640 1637499 604362227 86711673 333886599 40705671 161767401 670940844 739971375 958575433 965539045 306411044 319031606 570982671 761072812 727442876 850507655 377085248 785565831 946835249 948558297 918797040 993492547 118245898 596240926 926409368 982305346 744850615 978094946 826706952 962985374 724061895 816972891 432091030 838711385 940383333 992234224 882959403 965204052 109677182 610657761 158487423 529562121 206554043 820598362 67817392 302541502 951188828 955787966 243453688 492369016 186553509 203794957 671517426 708124809 873956829 942748022 958733959 974633277 69807918 122170165 66106541 626548739 878064846 952034628 924343209 953553072 952162940 968363383 254469204 641690257 998450761 998815673 642191126 709112386 821662723 863144032 297445152 545988495 822819741 839280943 670119926 678092960 898249250 940052613 274918434 950406636 768231059 962678560 577147132 751865970 910200242 912357090 423081983 929535872 136866336 579522205 65614486 287387198 516427388 654934136 365259474 980379508 381476274 654344341 651236109 763630892 581033124 632556664 932177495 971968910 837897710 931931105 609256458 914209964 630220550 901301468 266881941 933047503 779397909 983613749 400370292 596649327 776978487 972352814 928713250 980694861 633131058 970445767 66091659 130219377 205049617 694809585 229876764 824632644 653768147 683440024 863231133 973596587 72416311 273591658 798069779 904248744 868517625 873698992 792611131 961120076 120371809 670389704 992255687 995033689 764925691 863509304 79445480 881703929 383273394 468517555 435748105 895851320 116668295 539804063 134694432 828105629 682769303 757247759 504454798 790051296 539868829 740776312 281872121 363314836 172664233 180284484 99724149 772636426 340447080 845069623 743503478 917658040 333021208 476116716 921198843 968104010 711201536 898588704 152600582 805445348 173705147 503392036 841445888 904473459 159590773 423943794 425814408 562361813 402237560 615174788 281641950 953297374 159975765 206607229 650693676 983887421 880258070 933417577 862545910 937459218 140609107 851253614 17826519 548590678 917250066 920237523 255429454 805069561 195404396 794892455 449313580 829450975 464529039 696298766 748810269 881800437 906441013 990088973 310068187 343221811 416678815 455023937 956633297 999691460 390159442 439255415 649031475 892843827 327845727 458698335 172912286 270102075 361549149 637450614 35323443 59477296 765066406 851489223 132514139 893024788 998489840 998744317 940214532 964033877 225859571 620674079 221462002 556343994 548331939 992391140 812089704 834663024 728512423 743152665 448559531 487752505 990367613 995556562 553977895 686798229 914142914 921361985 617233722 792746673 155878583 458504479 180955633 819608565 25547878 476023949 218865776 680616020 168995398 961384193 504559079 518604441 58410096 516756315 489144746 974417389 275807130 330383811 243630891 786263396 407259361 553835311 213458280 602498596 550138016 909951297 357615132 664983762 843645311 957487686 107742418 842207151 971772349 977441351 546408265 976876232 811879380 871733991 682192037 751280552 555969984 854224535 642573463 947399991 23064942 77456829 691520499 896720273 522804835 689565254 27393322 258746863 701739059 810467896 844063955 856269317 413652626 872126145 738453421 793446834 326731368 808010813 430051931 920607469 963363892 971823984 10706685 264648025 771564853 979903664 677542155 831151977 184875630 477683357 758204559 973377434 390670812 649095664 884586543 897874059 93146193 330454257 860672273 959532725 194754328 980100704 598599720 974581908 991805518 994787688 647488372 860504174 711425847 852651539 496751543 951553486 749763245 905303161 177006390 799488380 13674714 638273276 656241226 924109966 412369028 487373685 424395646 897621772 348916707 389476466 343684294 397356263 766961978 950593258 508224482 668051159 509383587 602756428 601962373 858112253 683245816 806939601 433701828 934448254 43679003 776585684 667851436 956375755 162166437 605874844 86694557 188042826 227512293 402841914 761899164 831773184 780443335 806976528 392638079 953599120 418107203 690952663 749495086 845337016 967274694 974937039 256457528 734079338 165239609 799548367 576510669 969653273 422820255 898912153 966142766 976715842 586532001 684429556 497382833 691199999 12629563 816501166 288927049 572975070 122824785 875461768 136751954 801627413 597641208 622060766 484810345 609630916 417336890 719700136 419735926 714270044 613156605 915270116 381986147 885661224 401022298 648866734 245938807 284038537 85327778 430175596 471760126 800095129 273105983 820004426 219295531 914380586 461012309 600336561 837426430 928918708 173133743 418865209 885879629 964683812 132412829 676619321 924822567 958931989 949340089 966465961 970288251 993882691 473549192 971875226 832288595 942236747 446481529 633094308 415412344 572405420 261952952 851873363 516309291 878950311 331735853 522386062 52406525 578464309 549757039 989932869 193489197 946983419 525102473 827812115 391876598 957067465 123988815 338057395 744723811 753397089 294640726 408218554 719457034 836252957 186867687 553346720 569953969 714481990 407101666 926062235 208876364 418494257 204672065 722191442 715471077 970936991 741698029 814590102 737658479 817204762 183290938 886706319 613182788 954506500 887496579 948115157 865685608 941505538 913394977 976940352 637731721 907283624 767435242 828847325 811115592 995774890 663731108 838334146 591491312 715440009 784935880 842203184 314148316 592527124 626281802 928531641 513121453 673058337 188810436 485581645 300737020 445808753 309344409 824406524 638062125 742285702 249107860 547835879 576404661 865362818 777559360 780972127 526650955 914989291 15200470 679937145 493296742 617795697 233502082 946380791 737646373 788639602 584132267 906565736 50722726 721091080 721530562 827063035 823930378 930359450 237105592 970234580 234248975 413677417 110005840 377390520 369950259 394082771 203906438 495768852 649979236 707946627 106865134 967139297 383996407 976768961 81936263 550518403 945740678 987795560 764748952 865980919 933168626 972494614 223704474 423283680 241376730 619306995 731101171 884730675 463282253 866437201 67389944 587540684 136244995 715549016 64534978 474397154 177493 326311111 58332975 430232339 223873444 747954662 121785770 294436741 333752723 717025074 15730682 22525343 607590117 861288812 417781838 709145867 481739720 786699002 255986088 648030018 421267855 900249092 857802564 940965637 495881134 587836613 711987404 981392719 23100876 871587315 147591445 685173159 264713614 920395129 531108350 557166391 757319620 975732127 753304908 979306084 642902353 712944520 361672337 632295924 258141575 919776625 787008737 799329356 765478677 828987184 984104424 985258061 774328170 942857397 559562950 930162340 547905501 810805315 49187835 406377033 361505274 802833685 720148871 980985446 847402063 947669134 409746719 863529127 576239359 963615822 180295071 369329268 671361421 945157683 141844887 748121492 356281133 545734173 623633707 807183784 241835949 379352281 273489423 278504051 603957960 922481772 145042298 854163561 199740103 860470080 675396295 993203508 251735353 306059374 823306882 884102385 543002698 675333567 117609924 520262351 418969600 643741743 27439709 864225643 890560621 952405641 645147271 818165689 488045590 836088955 315822275 358250655 157598479 328827042 416856636 857555892 762682321 935438642 319996651 750541316 397766057 619397430 704113158 779415135 833613387 994276999 646244361 655953605 461587645 949613002 124802701 809050693 448108255 609195325 360975355 617210495 264880604 865835946 843411638 976664347 74593576 216150859 402965457 996964788 423858942 507661080 600077907 764170625 541544924 794410332 490311044 951475866 218895535 465018070 684656780 865306872 360952529 564163467 562748563 638634205 159388081 562109279 394841295 576421272 210841066 821254572 300519382 973748594 42752556 759177704 618064758 857745742 976219332 993859636 911099746 949737805 284538520 888934367 107513648 659265921 639899427 782351541 199905377 308300444 171124202 851171179 568081056 999340374 897912769 989069185 880701938 933688045 447177649 650963047 555903787 893579273 802475077 826106508 524348060 957223728 199463866 833072881 448412546 452395965 502577363 881987957 177679658 615664983 233086490 599187270 797774091 978423961 295582709 890870491 376141577 882755282 253263080 453056237 689512396 810340276 826723226 834298850 687308697 944793485 905154217 931906626 713322795 880689780 685965004 738192859 555079303 603773225 591059058 815030474 202702906 789194933 346252041 658910324 80254125 846307159 660878950 809063636 388980517 487582784 622567110 833074651 421198391 843732301 141693009 649927401 533434444 638825140 732921886 990634041 978181146 985129867 604006023 623221795 722730963 986148078 143314908 898600333 241201808 578961660 324153663 335050871 509015016 685781798 413190998 859333463 411160715 996445923 426179639 928160796 968387233 968930497 115499922 727471004 789063733 993975046 712264045 871948660 26011836 643883319 451604330 808149203 789776852 811355003 846226709 970067433 857159619 921454932 679315459 817942740 531546068 950746348 532015059 847969591 893861602 996937948 280736299 855119336 170883997 712678320 795132631 999688480 187527876 945387708 794107558 861810954 126927056 653797635 179348189 786895059 935291595 962080959 102041124 806443952 122893157 391051974 879630312 898646180 231563137 666291056 639191639 786941606 146242667 178456088 513386167 560545721 316821427 808982873 289822260 416168539 441803249 855691165 614527519 961237122 36594676 106619194 589009820 600682537 868877929 958625084 936629036 986991204 344248484 758146123 511670903 673863517 498083952 536285905 725609027 736097080 811956452 844666978 519992166 633365194 287440049 895017938 966423306 969174450 552232256 573317473 533164347 933360060 849285603 947975488 265402267 427640035 465071788 951602123 917306248 954409220 779311188 924716636 986470203 990957154 701785543 863266891 97185294 156972891 55148239 581448138 278216088 468004341 995956893 999499435 459501086 899548811 90606663 335648881 957786615 988169748 922055507 947764764 210069584 302871535 29041225 235613586 852445004 928941657 664788435 858172551 185154076 629549841 217347865 952254805 475805622 794800377 180672958 221204227 315858173 516555244 150311017 427414632 814340016 958860820 880210668 885144864 129000172 489890337 247146469 616492297 319976794 609279816 535793882 882519389 687535434 901728200 307409497 992452417 600446420 821825918 130893750 627222432 84851527 277286847 432384169 588290877 767613175 986675678 353345513 433775433 923626592 979434418 173463011 927493076 940060078 967831915 532202708 983688062 83433001 837939344 57550365 120458685 709792835 736605784 451784466 459932636 606748161 943468064 326122110 954774179 219006012 380435352 611954425 871558853 579231445 802136610 944502215 972828468 380363665 741222308 358649869 530457615 653624561 751878810 77282029 499712780 513353031 855123157 176344637 857531334 812870223 934289889 718822938 862812044 751603563 875870636 40368508 508394434 674856190 969184071 432160650 497632272 273529621 508693625 252655712 528275755 724506376 886341941 725405742 825215765 387565257 464793410 550841170 748389045 239131874 631735337 318967043 509715817 489362707 903438400 207541816 857651564 870959923 941005469 715357805 873452194 680116054 703274656 483604059 538495660 692808861 875687500 177035036 412687496 186739670 561387507 275546739 494458085 809733514 942360287 245659177 290707191 511070329 716036885 477913227 622014927 47232138 163929827 558898856 611302336 23182827 946607988 650182363 963645663 318765597 643777212 310965000 586573818 514634648 897031805 277872490 643139768 825642076 989769345 770619685 811407570 29191406 560021335 743546845 972257485 375164949 729332992 9153265 19776012 399457833 591779269 954204721 985379588 705422771 808945250 897646460 987403551 435618350 998018901 359866969 904009911 861077588 884348695 455423840 748152313 470610322 833738255 894290087 903256048 697127140 757087669 778241387 919899708 15226406 708958666 235144026 804893648 955122142 961900552 715565154 876261583 639750897 891502353 849489757 871415670 465748679 655759860 671253286 859115274 96937522 414038171 725019131 825133452 471697085 953896869 225006954 527434965 89037742 493996257 123829162 707455061 202842180 905019017 420333958 429529522 996430244 996444910 291718670 295916942 342048447 773195442 129661362 222207629 193656753 835897074 962655328 990679519 782407528 941160553 41754555 805357888 103242105 210872942 574771361 643232523 67351369 243515722 382503223 621104141 843338087 903124475 44086818 52820981 714513579 823841180 121061943 547006646 960207896 977189806 392555800 943361273 312465626 587813229 628076597 818176416 161720359 541071829 326000226 733043977 638526297 783005936 42303161 250210456 462875799 479371592 208847725 321429782 657711313 814869860 585979069 865978197 525184682 710154661 512304996 987292015 639044127 661706209 949053503 997802295 700660098 810091188 577597652 654771415 185694386 393742228 612069351 701497219 184805643 389408572 389491141 893265142 693068082 789068922 673962427 690878623 565022488 918844556 687042868 990161784 292099279 341303890 942278321 962614394 452352308 659553612 869567305 914236006 814846847 907193132 806670358 820708642 822458682 942616437 425346786 464279158 772965604 939930059 165596630 442429196 535472134 817782034 145369642 199134997 766502696 970653158 820635051 875254758 387476286 913918848 796526588 801498260 331850023 798795930 785405412 840578159 4293626 961232324 788473049 852093186 964673188 988744989 950227517 956028182 27480920 587369891 796354334 967765870 709743403 938991805 249575214 770379292 153913782 177475823 239362129 598822912 1454924 268688404 411168376 864209383 536356261 820941724 939793254 976968561 723456530 935772539 442529484 696765303 804119101 990555737 558641335 952902740 254302950 689892881 136711148 574558659 500164936 510761439 870521810 979690792 663686903 789204112 564618338 616479126 700613329 752286014 257501533 758568043 449521537 476079943 950198642 986926865 415680275 993994916 30799060 882687809 84115677 539151384 430631465 863433503 528694474 657134426 287688021 798536330 314392690 430251534 971850942 992845321 875873892 988032212 419830270 835584771 256484544 503058661 451265668 464750290 371720613 970522729 546235549 756033511 988811159 992382632 627352870 964584882 973366892 999943677 147446684 166780471 847226777 891787662 37924628 160689942 889446731 979080447 413328048 819922734 73290694 350061934 31127438 291266332 225441114 791309472 335283010 795098405 40771100 440477110 413609727 988169282 452522791 679437759 472061218 490618903 294407346 862194877 378335926 442834336 922554819 965557076 221670948 593881657 541439169 819507514 50589497 475467936 40521843 640505395 966156519 999732330 201041326 763864640 18788691 875548218 381497708 686700417 766382928 992291389 802975754 804630232 762727773 830230016 467254380 937030379 320080408 405158974 970304061 985723672 606617268 892109413 292265408 957338210 501251155 611947847 493570985 494360947 160585225 446541747 97610871 877485211 339012276 783056625 520243963 774574864 394117746 956053954 58172500 897749655 599202565 601343602 233037367 595072237 615976570 747993740 275645391 723030286 815662233 942062239 265600405 275968644 596189645 723790082 440443315 936575772 189153595 957919214 519757700 864758350 863306857 946660443 239925524 459678577 418828664 554059341 812890337 831184627 698291090 785196184 820151818 827946136 729107385 826358001 984182402 993377713 362705 800668072 838422072 884472881 535728562 749997722 809625248 951275605 378769922 705491530 423836561 853325658 49410749 421879527 977754879 982883651 911807839 950545335 740748993 907046905 814797201 940746850 266205925 484610616 942490254 959090547 196831445 977670586 477072205 901575858 925985046 974709133 75752732 820237757 521787304 584257228 710009121 950356329 977963248 984998002 465513004 978685453 345666801 464620030 569695914 821217754 340131677 431737159 585885375 980876655 28186355 965025719 3251875 871045599 798682859 866250477 843064001 969639089 451318088 743582299 618165451 847606905 849214378 887085373 775581723 979975298 466461552 581735024 92637813 352447948 658502661 857761641 213447260 435580861 673379462 751996420 502382674 654457456 333554772 741945591 828353224 913372876 556046273 794593133 277346176 282036638 396124434 719041833 605442237 627073951 91542122 396602726 782770039 802159316 581768198 608381565 455548187 857867703 53698596 143447987 261696478 601198854 811792575 973043073 157679622 537653104 503531747 668416346 503986014 659702942 598527809 629984266 789696805 823570533 577591398 786310489 158493706 470001470 184035412 555067412 243176479 387464163 290248360 998609985 205820675 854169459 694397929 972547828 266991685 321063016 614862960 944699164 397950980 547381460 840950517 897939776 945222005 991162808 84119344 964012838 137208997 233504172 690778035 770096456 810837431 868041427 459905973 653101528 894639492 961343683 415108566 603865743 183567683 731162834 346548441 938394755 850784190 996570200 391240132 426093699 374631885 554696240 381230879 483756385 950230874 993185178 117501217 580747591 49682080 800431914 571187758 808905549 854390802 884265865 713593895 815482653 782469882 875408293 304705522 687111140 718788480 881878655 185161486 342810460 386642986 575679222 130745206 431698306 135970832 886970428 85094910 963445668 206144767 295372323 548781977 748805997 850069710 867121836 681187255 739431697 466281831 479709127 840477724 929669876 773598676 988905200 948364636 969378051 500921502 723708680 287336124 942053070 639908776 746673095 825761110 938954190 439645624 678354343 296288601 895787963 192344062 279320395 52121047 82768866 329233866 532956516 744905594 769862900 684976052 712076600 201640515 309827341 505751327 566324154 868582901 911848375 751365144 761502131 825113364 908264458 434581466 796493838 352720681 547770985 301025176 327395140 117695953 662576689 76289982 936956399 980712248 991691760 77083031 608259829 634066200 994541961 735272912 848726501 703108059 854174374 683966986 877328004 942265734 995965616 999009392 999396194 879018246 938889007 763890393 990988880 699959469 999094278 122899540 833192571 531211098 729399569 273831415 950667349 41966806 694566075 330345790 381786820 708068336 945323245 221518719 912556181 867479753 956861927 599310681 823475367 153931555 216300778 64457669 465974294 587106568 644085832 854592172 876879097 429137884 640084071 99514009 341629975 151024655 889263870 555274534 899260212 628090388 952754663 648945252 661369432 921019641 923367776 252120337 670149080 572672809 790663573 657619695 739240010 472266671 670166040 40929163 531820449 530191588 654321753 871022733 977152074 147788742 281917055 852071030 890578729 906537515 954310846 662741544 998323983 205361213 706664424 829720861 894874981 542693380 637054008 261581405 391326829 389884645 676941834 186079325 914348486 371900274 672303892 89412947 917886745 174367314 286393302 190095270 260426271 109981257 875082055 447609091 450618951 19242066 417710481 352664779 893649773 378806189 624848222 597445439 973006702 48695267 555366251 483364842 737911318 362927069 422421182 275959657 842184953 176053165 290444086 582862397 700897384 4353373 557150113 888968288 983578058 32374582 746311542 359026647 836200981 845100902 975801704 384172679 838775626 398142006 484935818 627832126 859359122 624072158 672305406 371902241 662156328 531843083 648207962 445605433 623633522 260448445 502366767 234994929 763063636 909068820 996162187 83435564 611372657 361918737 813438594 449281561 618868454 233671744 397957214 784055864 857095577 727312868 760745818 314914537 701527241 627878796 994765842 96136443 478497077 530960956 775682845 243104638 780690289 852718429 865713648 412393422 567200006 125109876 815636545 802660101 955750873 403366118 644730025 941069811 998048992 561860495 787059635 822193791 963830227 184636815 666577732 198924000 707846998 21068045 650431157 235654444 566462734 17995533 756290175 483084563 741965701 854894423 903807203 607883827 633431285 495304286 772158685 600216679 697849652 924361678 997358856 723514563 867443848 294787399 866569651 7266266 68967017 337748457 899272007 279685776 948672171 361453658 880626863 836210612 944922884 609903656 731521966 153815855 812940535 285699087 379449033 941001602 969693320 864540559 873296816 850389744 864267527 488162219 642633595 612391409 842118020 173626194 489650947 711283896 930497838 524987968 672444728 684453224 769316222 173085544 328256453 226905569 794597113 940651799 960422023 317890656 393029998 448393905 980535416 688909907 727287662 214320107 344027391 716184618 892592716 237760113 649147241 49843015 574453286 868092803 974705353 645273307 692945423 868905246 928219393 745459238 973482858 557609202 853628876 788675198 839195812 111354044 538928314 244541662 754485506 750433237 815758707 279761804 437212866 337690625 808053180 945272959 982665896 479935109 805388612 363164177 459827044 582619105 851446069 333951033 418179195 766566464 895548880 964968418 980569783 754894388 762723925 175414286 355083831 887354649 911253294 385314110 801903209 194207128 934313021 286546303 983711166 174014813 794205125 911571871 981717049 44967646 159971700 727051050 832662187 398425553 700149865 11684238 235870021 797694139 914578581 479234196 573835724 38578435 910310685 395198981 408237336 896326848 902216006 968017157 973857049 689419766 920651904 55306301 495618444 26223167 594998424 871214839 876686697 818347558 860795495 624623657 801677169 795674223 980314694 187502390 265739304 761097179 859517501 348895243 889076215 832877850 898354550 455867927 944884549 60553279 838722021 968918099 969290691 514849372 857991033 172358785 411685822 761710359 919318087 468585002 801345163 613941911 731014585 462805690 833758361 877878029 963466521 124852322 612445849 231901867 668544524 790445536 806530287 208336773 683428952 290214550 404997143 905357038 923423318 736049844 785812919 377252750 514822120 614305740 935318616 413036482 956814226 519657170 522570626 177464184 476751672 80535017 159247267 355834957 864045320 706028012 941866467 454800423 545813974 679303258 964501313 961914351 974989683 428035620 926337707 365560373 372605642 501632269 690606988 807792218 936028287 843407686 866573882 285689076 812276815 549033647 813474892 295185511 579393671 749366081 833131082 461830360 624426673 502432882 696691141 504828651 750757688 252964923 983126812 287620569 548031801 590696561 779965435 946315120 972135795 592134550 753963136 244628840 327152286 21875028 367495719 790699203 971221898 171267604 674730986 152247382 703447989 691015316 799661292 962980316 976638853 169341547 289236732 931416001 964881434 920948572 981906309 746474022 989040633 948786317 978123949 530788020 668827691 316149070 694893731 753578044 758101033 595925815 990254938 555575880 623856818 758660928 892839440 527885021 682290032 257935868 554664949 140466837 646131609 202434169 737329265 545064889 937151812 768724698 956757628 848346629 897425349 823682730 848385693 527059151 937644867 503795128 553223671 197528302 717591500 29472576 42643720 774496922 943014858 179195088 383945713 826753937 947103465 798975730 870083073 215090990 558371285 5738671 845462068 152064804 435427079 749331160 838860051 842747689 951528908 231301983 817344123 957818907 971319844 209917520 707940756 984026502 987021890 59631322 537647396 887705300 893714085 771400871 971607621 873339878 880563727 283578747 598629526 341411566 571676442 624322737 684268736 759844123 787615287 172294731 674719505 949261769 952555447 419219828 479254061 791675292 952239190 636669448 819792098 987333647 988265561 91855427 262974391 48801746 91314880 682555421 898535396 225388432 698909766 630798124 782717928 58971827 575581549 844748139 989705959 474263986 991714030 905769744 982933569 345551408 936279588 905010151 941772237 525242154 813082676 329964606 812936664 473950114 758723480 152152975 642930040 579039660 603052052 710186326 991415331 654012623 940753118 480186827 557280043 915053156 929993743 553106791 868504444 773788914 938296146 986419869 989146054 333867872 461708143 19966782 690676974 87246896 573598626 591217249 777681300 179828699 575538066 111359830 863105734 88819359 750169479 783061425 841855327 472472511 781920235 260967765 924300098 479050546 796678112 608617402 964963133 794510798 814165641 959786139 967449606 524385037 811407753 702818667 746767967 350615125 532393796 24613079 447081279 540076226 759796080 404029567 726646924 80620998 306682211 247414782 631305976 664452661 718084114 822374887 966225218 588390524 805407474 987643470 995562749 225879467 958926065 599974562 932942413 223579880 812636442 237212069 894947189 514251417 759626534 354235579 625430609 287682995 918788242 823610084 965584309 507562527 641681286 144458926 923004129 77921802 495435950 248917206 873353232 663008743 883615545 422933831 505068588 351157292 800478012 292545809 932237805 793411577 817964123 169756953 906185611 572695686 841218135 632342286 715465891 361771358 831038642 129749655 274838840 888762565 943641303 463152893 605205306 678603307 782629101 127087854 894303559 522759895 726496485 375712614 880100954 804807541 939089254 53768124 366817154 636927122 949503058 187161545 760207689 667309024 921048772 592252435 663397546 969343967 974690311 418717083 425720565 766397136 772778467 359822112 948337479 415967886 797215004 257189318 461755394 686518663 827224911 297647298 501376520 517073530 690268622 858490616 903451878 650317351 843486948 262157411 268207957 961051616 995626685 452317448 987134924 862174957 898808492 757525520 861819864 478574268 992033587 638926626 893963209 155632750 403466672 773409303 974211234 24423079 609289385 474416094 958123677 158302786 225822019 646855793 657134507 152717235 287513045 878113967 954681542 667484461 979528401 837021085 904188279 997573000 999643767 271438791 740619553 101277483 211361013 685815606 894533315 704155674 987761489 621417337 682335828 875005931 905511292 777614710 954708590 710140715 982892283 778555027 865886563 330038325 661887457 207182207 805392990 109030366 144041740 831414618 999786701 448133925 553241989 483944285 513115469 158132155 448884251 650979628 917310105 134781547 765723368 139205552 154509016 99779379 642616874 28964426 686406066 123271457 681328396 926722344 978539265 76496775 939418308 956933207 979875014 314055032 421995580 403170123 698900667 918364038 971095379 708022332 978077396 332781387 728194764 971822374 990093200 758321567 842450068 643422244 977287394 541029732 769633963 619865901 744744362 116632426 181340274 91321167 561860057 378725750 575086445 797920679 878953904 314663321 852588172 175520358 790426593 202950650 577413974 550062548 844132223 700274328 707048595 502146419 883043298 665600110 964962879 853635116 919671135 762465966 841887849 333859606 914724338 881535792 947551791 235040849 654166499 166463431 173921377 490206662 557183521 44029106 749264581 99609926 631301452 950790770 961493872 611937738 689748160 302584369 601876320 571696213 780748728 816181045 909962902 864309115 974961567 326577725 405095980 279031173 719306189 795374633 880207159 736015961 839508566 930603985 977357139 129142043 278440566 557735604 916978783 580408345 594807248 825828348 831242764 770399568 794233716 478326495 637159869 831246492 966938975 102574403 630001302 733052027 783956035 65951010 775735949 22689276 842492655 284580286 500676318 472827726 507483366 642153809 720188076 183818351 420742761 789889221 949317320 477888858 863501070 385055891 396733234 809340471 997907917 633783135 872925249 807209238 853788111 674125620 933345037 596744637 910827810 361423857 780416165 336586742 337627525 113305394 899358429 659590373 815902706 684552034 804648070 355458952 598106324 479725357 647380827 461735414 594585604 954578022 978285487 184409723 717970061 177741982 329629833 76424169 383602836 607935082 962796095 502174923 645119189 28481657 270994360 397898201 851434316 34017868 976273029 57278569 126468049 78094012 784357488 968574892 992521694 481857969 791214665 887761784 932734015 415214564 697860577 625071335 705736403 354832711 968205604 286017895 562884753 113707135 860068211 864989118 939438165 208810872 327720038 690220247 699034853 955737748 991011317 3489418 760621100 721237682 840514157 482623727 710451972 861173759 963896331 859673525 987455503 358771877 444517455 971868518 988270674 471241723 991265245 534242092 808301660 946207895 972970162 780085378 943294559 727503885 886775393 544666209 660442516 300005820 526272120 515278298 578707949 429686619 874757162 745944338 835114416 847819659 962854080 637050666 880839174 438861164 849135376 726699741 865961906 391029884 945187603 501126490 957957393 969966745 999582180 843205878 916703232 602900464 933939269 707163125 847110326 792540635 821202905 723776853 990863688 596694515 772250629 24703028 603024505 137825798 177975416 873720508 881286044 923154542 996653694 380239415 629673330 673601102 704959992 969472182 985501362 756786360 937598075 579013699 916374374 800029543 965542180 318013469 573887469 403732435 509344495 188923776 397343209 509868518 572229803 760889692 849955327 415536643 932095659 193426269 404914055 298993885 931561815 100391578 874668912 711510284 950796004 247330283 501152001 561035116 679906519 612862017 833947280 913460359 973036108 446780351 465865166 646858467 831056047 390336812 991656926 117419351 832827018 709197750 882116766 778764911 975346484 370127854 640772573 230564474 357648276 491240133 662818976 450324824 499588464 425618602 524830331 828446839 891407626 166107861 734222688 167553329 435600424 214414679 422986369 638472849 695132678 515246014 731693586 599357514 679032678 229794351 592115973 340084581 622493571 646031595 914157861 656657367 794951478 380543011 974162268 249656618 321230573 254009387 823834623 78913281 536480847 463797315 972744756 56413095 241868500 717162310 907876580 536313670 933221751 722164494 925687674 707988022 769092065 28226846 669688049 904488816 920196093 678944607 690872913 931088784 947142083 910471201 940503831 689454357 840584199 253696251 578950273 437880705 941856961 7519091 286046794 543176942 614577228 689347855 692776702 754323082 830536875 609813088 896796339 801835144 810351750 597792065 636852364 815779907 936301093 696170700 909721091 681416280 773431042 621434655 927937047 419361970 756048739 373794576 716047610 891666390 933090165 784592696 874827898 689412472 793794510 837388512 982528774 69308919 888439296 947612503 948604056 234539135 715495988 845438800 972111634 844636972 972225527 577923459 849553035 794799613 840208274 168996878 501782209 528741201 843572770 675274763 899366553 767736085 898466085 846644306 950351233 277432627 557878873 738498518 831621723 565922339 864946794 441665063 499779322 119572428 550425324 601850733 963703712 177731888 987943222 271695831 276359965 365837469 414682890 869179057 949938360 847105410 927469233 953466589 999775239 520521949 523478185 405028754 970247765 147972908 603193121 317732879 848055313 238942230 357280193 850589209 868049021 789220778 970597617 797858814 895573411 72946451 425962327 634335353 689702981 571913579 834500739 116788690 316816730 616252800 754671248 253761663 891372535 310922613 576514448 865257774 964353388 137146444 324228017 674947641 736306124 856625075 878601061 306080341 658920747 446026750 574458490 570961979 583467202 122883997 651588919 336062111 639803793 264865784 346582861 473089265 960671430 824005707 872805490 52701351 432530783 111145747 250738388 526432435 983445214 791501754 971879360 522143764 790358620 531392860 587346054 216695873 707200796 489759950 692907157 875977246 993896484 594844862 708293093 381373634 559163792 781149352 828169183 973930992 993897525 644624107 785140278 544747364 668843578 348680678 686962989 679482395 982466622 604232565 708077749 278585255 861621990 325837995 996298646 875483817 980153980 794324760 798915306 626577798 941648879 249991654 518574980 551330778 735332609 471870167 723012467 198697580 505529716 78209835 191510238 724852462 966438924 710600251 761642211 281155832 518160959 197865598 504379355 878575885 995359335 36605118 599229251 78765959 213172709 950736284 987672375 269581147 992440612 336857672 548903499 796230765 900579108 16219257 696020385 478013717 891981401 880587637 976612689 153192125 355814252 885732330 918975059 86738834 623529745 792375785 879531192 60277161 669118646 349371853 552966268 169494145 427851725 991740252 998143384 222760646 862601959 941600686 988549834 261099873 593700904 962164908 963754785 580639878 942768707 320499021 325901338 364879686 433656245 110715857 914936354 105729336 404877287 857087185 910301291 938133388 943432975 66799558 961928026 576634507 867366069 958785087 986746184 375275058 860230826 433585318 626173509 376691769 878149140 302595942 508752638 369015086 647811160 791651838 833277947 844920225 976345131 300761341 508736556 100949592 857753472 193218186 305290906 946796966 988254923 611099428 765746306 447104625 700812842 58490125 465933620 508924224 916255539 983259020 997950606 359949700 980809215 840705630 881672488 918688217 949454957 495110060 501501810 347821551 662098300 878846961 979966047 529280805 600442089 116340689 861557841 32431738 881049663 642537776 966620847 486121159 654168175 243283260 503562444 745989679 943617558 117293650 464187489 785694722 792904932 215591954 434580052 556517280 939221337 508475929 635598916 629567029 769004192 638278912 950376173 571058179 908274213 880971875 975199837 586028586 831006196 609427047 972061799 494102100 515815455 104999843 167131458 884185635 992817073 98419116 194131535 466741792 613208655 601479418 739343895 109386241 652055157 87168276 471789162 505710525 692668637 785803060 835650053 555308020 774471205 189804037 912240879 941047167 976679312 255835094 677502185 258905249 535424510 153981139 571889511 524388388 976975173 313627169 623235886 253183097 745288432 319167798 755417662 522391492 773406864 25830916 777569402 284196438 743217851 924196780 950622944 170398918 727793008 745348981 971784826 527107202 725952277 780783614 853945580 620622772 835443419 788745130 855015960 667131351 769674488 64708861 520220410 957193208 971335127 437671208 525610693 111399956 975763918 515341749 826831435 112827940 495088628 155321121 961354228 639758232 688321449 761075434 776567615 455660784 872802646 103245491 523588589 347822177 999896929 228186780 618697780 701701809 851115635 302145549 496351311 64417234 369917226 70958927 575627349 424503306 774709208 239240932 816648714 541147975 855748585 880211613 960502441 487685711 904447024 276683503 905107253 190786228 926574061 249352600 897563329 594396513 838955418 79388495 879159442 704865279 989934404 336741778 918620619 724901948 889473285 810238450 952197045 518904983 953812298 686531388 914201227 165914434 742238327 590879289 918223924 864814296 878475499 458042401 708434407 438776641 920801004 183854639 624857013 756226406 904969285 391790236 534779430 536489166 832090380 806013537 861174286 981403487 995574142 503157383 605621726 412202200 432765284 680951365 832014334 600692951 649018747 927680686 958529311 224844582 680394710 538010606 667541580 382476617 915303225 886337459 964696371 527842989 865138432 390942419 957830361 689035916 936538060 296935975 883983714 310177750 532793623 973303 964126563 318483997 661983046 47637773 509676530 681251795 948314572 576527039 655847078 291013877 464295492 385673773 777897101 38222101 467611784 293652847 706833558 172750138 242392592 34921904 290034890 48420284 813893506 686122180 736118592 865149231 880138728 786755124 939699211 530656257 990435009 400813011 761183493 236651031 576256286 425219824 686917200 724038860 816507802 643193274 794124366 257674166 777352349 987503434 989898137 249395112 515687285 301952316 974789774 562184608 934246519 723390341 888580447 565998980 912163909 101385190 821352990 584035077 829543280 8545518 873264212 493247731 765368908 708742309 793145050 232528846 501713353 180783802 487807245 245224222 335413495 685475930 700269372 450093454 947454914 221242697 831575347 246070471 708374584 533954107 600312424 689878245 906157488 852858189 884828615 162463801 691939206 512049393 612231045 471266040 798464539 464351855 972076316 522092299 588063630 217038517 473083820 975345721 994643559 435766508 879958633 311140097 599680940 487568106 623242987 973738753 980664091 791281594 872937023 408719650 992479489 493582206 607947815 994896287 995423808 787066959 872711655 676289172 895847235 194239980 846727219 127078385 560097741 135431868 678108812 587344433 743342334 494760685 686702775 395051642 803188364 603935947 969700365 435682662 520088188 707671620 972057056 105965381 333125175 309061980 753979525 885041272 956068413 416521053 781849355 19624777 518163873 102639864 664031503 557464268 593827394 677935215 919486334 409714148 462093788 656698539 736529852 752045650 981015967 202161660 330804644 863889069 996516946 588864092 857642704 24787628 888649204 762286387 936595244 44068198 496454778 202909527 768341786 544311466 657427826 609614530 943127847 672245421 956914986 21331927 504160161 422762591 735352166 887863344 993987564 645367233 892875443 852135118 875551250 406151595 466831181 56015825 57351520 176514934 792201023 131385759 682383363 495892284 950918752 687673633 700861288 214567780 310110226 626336661 900367606 476669948 904122018 868152758 966785854 241138284 646325653 901191539 975147905 624275677 824275576 645275262 968708264 61707780 688861528 650080067 822948723 154384323 578141595 595350612 654534485 873465343 997513979 11699822 188123874 394666536 762105476 919349968 952330387 990736709 997735086 523911738 887197574 829824634 840836801 714487165 849220259 982449229 990335030 527708667 941140221 802706739 991609353 97603871 611725621 693468424 747039534 910567171 940217465 817686925 907520236 615403291 637167349 612617452 904966722 246879075 706698226 299892002 418512661 377376655 940510251 853304550 884513822 405169273 675989248 879338160 950939357 573636230 681348078 668826781 822025917 368904071 796142795 820654788 917067933 565660220 608305815 771844229 809436826 391332722 827223800 327547689 451500266 539464439 572640652 786981435 912579807 358422264 825115225 246934856 771316810 245244870 742221973 589325711 664704263 718542285 915696265 542946850 876647258 100962107 616398663 640552076 939083309 753710368 795803526 514103203 632883371 500439718 538382173 822727138 934624026 76332152 482853410 210778004 794842836 450546381 784848225 279260346 391389318 491842526 824698666 379137318 581681288 289036722 839521150 379225031 918015033 851808940 957786434 469354405 522115908 130224096 879884990 734964592 860347741 374191571 804445107 609212443 751292188 320365751 686075848 386752626 656521236 282521000 370020942 237367358 808303058 273867285 996569035 758586096 793544782 512144540 752293330 508234392 512446099 964585799 993475860 55708551 948598725 852419314 978392255 216418717 236522133 456848335 633163122 639552230 775973213 961332160 983179895 576711635 597499415 186405563 941814328 790876655 831090110 359215385 646743448 117150267 545855734 882201586 927558387 124134425 870621917 373630785 753856708 260539336 389812550 123694637 419401622 212447354 741737147 712216393 727254624 521183840 531409605 948823421 949760735 223833713 906819553 311879760 688521606 21420854 420476216 404212638 830018078 525600961 768573389 316290525 721902634 41868709 98345998 567202931 908409010 39888239 948238536 269236569 487935208 603309713 937488032 154239070 562169013 118860221 376216677 555057460 834664045 631029468 777940140 862313342 911293019 733877196 941906281 330491446 492393274 905141329 996723609 231264225 454621168 532638912 842644436 852148684 889975104 265608343 893177504 92026752 495291397 587345310 663098423 5403594 668033433 769042567 868988402 658250282 933734100 430146796 598435557 612099756 962185494 765827007 865402925 197492266 970537180 314165413 885541752 744264700 839927579 607346031 696391007 741622329 896781583 118925864 695272152 746290257 817003500 11142829 233627970 261584124 540583044 65523713 421178865 378764120 534450617 897192939 965436348 659303567 892898388 757180474 806201129 150169607 245756879 488789771 570299759 358523222 943661340 797597404 942386908 63114763 537717524 620218843 795188725 662539156 781532105 523979197 899058657 165945451 922951975 876040934 916959597 607115342 648403977 999895620 999906892 107226609 997438581 383940772 675051007 897641790 924136026 610584112 864913452 22261938 771694656 163967850 256299999 638998291 694061688 53105746 123138009 826550238 861040993 542631791 999628868 460731530 463481781 672063726 955454523 660724697 834717630 834886410 919024556 123047838 445322847 663199784 978831283 997652119 999266103 181795234 464084823 414367850 845918381 474914369 985798215 952392267 999695557 621580757 714501405 79411487 745439854 380558868 618352690 723284665 979066252 451594832 921963145 899391772 963853327 107671680 841669158 982362394 989225566 804042398 965214324 549419076 766768219 313846448 427382957 267917183 890361836 894107416 925928661 758037730 801089635 23097503 781044335 241069233 683153263 434528991 500065796 610232952 769774142 664933438 703679637 815883863 888143010 124954661 865715010 301518800 904708310 552661725 675793669 276685084 517186492 43883385 144637784 811284376 952653613 172664659 192530038 551217827 738367676 663892152 907493859 477087278 766705483 79800326 704718901 887225018 963145385 491144597 904396539 431805831 585207129 837916919 844550509 886693226 927754009 776211934 985378654 791934871 975529186 348077606 670367116 729115861 952887678 228771968 408359314 336194543 760562487 114550244 334924108 204671973 521789231 430864725 713581362 700463728 929943110 6001444 135340446 935228600 935595977 125162366 765699515 784061165 996785176 810367421 879256702 523654344 877000246 89601357 652981496 401195450 823677500 137546939 579452738 367320896 479662643 200292557 729521020 155321142 366964557 371186868 657920009 609371873 908949433 652592105 973173645 837722912 941192811 758647016 888907811 36285118 905769510 985398681 997240176 916945299 933261947 657470031 745725354 737720134 797571481 716526458 875683485 128922239 193854896 584463693 740221626 852655666 891677618 653903034 930081589 695201794 713820755 357030383 448321527 206330033 357550999 942040837 948436698 22403939 908857199 459323600 697817795 685808133 739637736 574920729 851741944 876143095 916624299 270611256 687185733 956033450 997744258 613470570 771879748 467082947 472931094 206635419 975607493 92216831 716999278 492919786 779095569 222230302 711316688 103484087 750745861 979276475 989777618 47852665 272610008 62467415 466901623 998376612 998800671 287436475 293019014 13682719 668840560 63420739 416804821 883336260 888995236 501183421 605751363 276072049 816917312 765267431 918121783 899967100 989368246 622179441 840095217 330955899 394987853 756753351 826334032 534642092 662558045 785107737 864462897 843813227 985854842 664006039 922294733 967732045 989975010 946040902 969125264 133509063 883068455 213431546 949636152 465047014 669860672 694853310 764662113 138965091 676661363 993341477 999874371 501161911 933818424 547739908 852393590 486290600 709886014 904943898 963723064 655301764 749101256 528321874 621470395 996179917 999578849 574789071 586654686 190621391 452874974 439310251 627636217 856084119 991307117 589194421 817310099 179650596 860542133 336171625 737309774 486008852 848028822 913963949 958024503 830464781 983441694 939671702 983564378 616003822 875228469 796750214 899061466 265355801 831494235 691511937 825528522 211536766 570378769 676687454 916640231 17524528 909272133 217693814 346839808 770649998 927931315 329269146 618238326 112511468 462477156 902835630 935766875 900034687 929587133 569074958 905684399 830083859 966291864 501422711 861640264 451656 183931690 609619475 733567946 381196274 928303816 157144607 403159535 646348904 920978478 38212117 696955045 881762242 902679823 487319699 985601510 362826795 682496213 467833594 641825528 721989665 993741535 310263663 669973686 103873578 756733954 279426853 309958756 527777754 926316355 375725035 835394763 249456304 717485610 651031989 987538563 349228940 897146775 427981578 873721033 584675628 622964780 887231963 959153203 254256877 949111202 424129515 989503470 481354649 489612008 188279268 335457918 984276691 996184545 561146024 744857981 420477118 776359555 66445540 659137761 723135019 845501664 510658081 853167717 500203299 783117882 87923439 926888104 899536623 989849187 95771695 774365638 502890517 854730499 107830224 567995124 343094750 855001705 474212316 642470193 242170195 792174043 859178620 993518998 667265570 676194783 524174970 984545206 379366797 647809890 375787699 966091422 814119999 838390099 891721226 936924185 927905270 934712357 645870688 900733526 430808809 861656580 103439777 616843503 381946314 950256157 891188487 914751413 592821831 948119620 767626871 872243771 410926274 651497838 302831482 845061078 979573682 988515168 419511479 431067799 814353397 900007301 937575422 980670090 806125740 911508077 785639648 957090550 914540931 954117117 37381197 43049878 545133756 833454915 267540709 967828110 6747424 422479439 779541572 875031513 250961842 473384266 685559447 840468775 634211198 683693716 768539450 840866235 357519939 741170522 34104198 734019879 279274686 595201267 955650168 973516024 262392532 328463497 851685784 933735776 951047329 963858355 323681813 776415898 231010928 610492673 616618596 957855132 655321568 667042828 512635386 673222332 684766710 695581518 832580887 986550701 479155009 957518369 485969515 769918377 514414373 591278988 516985797 879896531 364613259 380512807 260411260 315308714 64564532 78593241 200748602 568521142 597058927 604405740 707795903 728643960 110670944 494645942 669701760 770328267 979504062 992857276 232277467 706086920 130579336 709586473 998585387 999798531 494163814 625497919 344913638 657212501 969190623 982824043 821166654 863369489 977637699 978701515 885418921 962049595 763046253 819601709 886553936 887685082 665838940 752129758 706673940 956299554 637806626 645461947 193296264 655358750 245272628 387313763 478961414 807467350 900193121 919695921 30199153 497035560 391958715 734172214 400112879 810914212 892512098 927520368 72403734 871762438 800215886 894740742 161004342 999933053 952570047 998683220 927685675 993348347 104283569 466633243 260252372 331150445 542998184 681551838 381514075 423424806 292271986 739188753 493409153 669640618 655351739 795504737 656509050 720533883 984649992 995608353 3250578 346280464 895785937 949635512 488420153 576004841 584320161 904754648 90819906 538982266 776413265 789982131 238784872 411524366 397948122 992350726 610357144 818705573 797117742 989103715 263161654 597273073 472728534 538167960 315815387 995017247 87170040 849021062 493824397 996135937 87550107 257952547 799894411 820120533 204360343 638030717 242847178 451213721 366134325 907431967 841121435 981308415 174209939 924021188 239344350 991124801 615855358 987809019 209884969 468523832 573122592 948537771 163678386 620386909 610962511 636684494 83140783 724195448 528608034 685862003 364989069 922579931 779324721 905564085 697808132 814987874 65844887 248543088 694809374 772292227 561825034 641663021 22768 481955165 938777531 959448033 615488010 808311452 969721927 992223602 612022971 981317531 726205696 750780513 19226796 633461673 38562987 234118282 109718109 911709039 966561041 974145452 810964550 888677997 388339963 804616117 908450716 910709373 661846994 832301383 643754650 955584442 384642498 479857330 294171061 778926927 329617710 381402932 557702933 961531475 721905858 784894193 286587833 838195572 541933002 758258375 355697220 605047775 294271426 392985144 569930978 720363004 200121196 219064468 723145448 859116261 482379010 617104215 716252178 809026251 222195377 912209631 248617809 962584124 119061740 578518953 582114720 904422972 584481271 621581484 772241406 982336999 29158189 924801978 543337945 916976588 88779026 734893122 745838275 824838106 83454887 204766044 880581332 959244194 995140668 999304413 365955979 536320448 214530686 666911405 236978308 405267233 284531521 634643148 421332908 519987352 253166055 448458595 554281024 559697438 677162178 929971182 909831153 921319928 416563286 758390455 356988614 568346889 230724826 705016050 979332243 987814614 703466218 935041077 554163155 942517108 129310027 596056891 283596648 543028272 656975563 794134957 800184101 973242125 693348734 949987851 39391940 429158327 437516734 967891205 169131619 945552729 682981368 866830497 226326335 584147698 48914860 407614332 555572517 675069264 889404759 964322100 210639986 442871224 106155703 789897876 413820541 438112708 986227484 994156638 365793139 822784653 216145478 351362218 263402438 608779703 205689452 911914962 43581541 955738353 922147838 947338769 441877751 691644704 230900997 707349760 172507116 785467368 893491519 896662001 474255920 924647393 822582263 933045917 704905308 755783480 519324290 964367961 762381412 976025268 701067115 890736338 95163493 554552242 339245599 447387545 94931658 846124065 759611543 858919648 966371694 982497600 322039445 915067008 670999302 987454179 641615082 680694704 855479380 941662815 265369705 329745357 559446609 755312367 457568752 930578625 320770047 860270790 135543385 503694837 701584445 807267660 710443348 999661958 25055876 231287628 440443999 785302544 935659690 995174327 525580492 585047151 440349815 922961649 887315814 888055482 176598081 495515832 339641559 382549009 850838983 857137873 549774593 710934323 637573577 928969177 965586442 974380298 5857234 181292105 572725822 609481269 799186114 994170716 228377064 542651811 151396157 422300442 861011441 956287812 630543023 946814853 80213926 571115288 141376116 713996028 720083747 866819004 639641955 806365279 519820215 662044248 561979333 869090210 955127819 995900842 466883692 974983091 927409167 966415091 712094427 828369196 412399403 576721351 334125560 424570499 608184660 712428137 845634482 846933614 653560148 677665071 318883604 641014021 572369907 966657326 885230430 925135843 723250146 767061113 483231115 791296467 163450040 768433371 101979751 188420446 129928373 370973689 311956036 329670914 513435169 750676466 456762578 738104121 990188244 994456425 355455384 361470484 803230797 844430667 383488133 911593502 32214399 871416105 422513503 952932890 199100894 278859523 594444850 889171633 331500482 910363467 339522322 968936589 617081805 706232137 312039087 327503546 285974663 369187690 825460560 872265677 590659738 885969037 693708679 972453066 390498338 485033088 991054617 997353094 371471668 467720934 296099662 350287046 243944029 292396310 526023151 844610173 687807973 844040291 670591353 789106858 874790204 978775358 371187651 540628386 294787187 875341528 350273023 672065838 614914036 645625768 947105459 968635925 847260680 898926277 873074183 943024452 547884152 992522810 737552273 825880720 485662374 790838329 718243850 839282930 661174400 702419761 605638332 881495316 361700163 779847477 269584144 579431827 511996919 932536621 543328799 676298826 346707971 867924743 254436598 815184076 622720614 707277514 276022864 515110848 159340160 951543273 589523099 836642574 354912350 704019927 429553221 882583614 926295150 928828435 725841921 831440106 293879893 940129526 662500085 944936868 302663041 747567911 592955007 871866494 392797224 972226420 76012783 855227246 189345555 779368709 637433987 883948864 37591476 560187721 754409890 970626928 326116569 591312964 781798801 908860494 658248940 972778420 943058305 974061099 989236077 991018211 59212379 580841949 85322948 114521481 933588874 961098320 707204253 995372202 612231937 661917822 905656591 905775552 215759867 996643708 855491975 881827563 40496342 765532068 978997070 999032508 643825620 931567609 606313387 961975232 116507291 368998105 308524550 504132060 748722221 963104363 613553154 686210718 499591360 973468116 789926318 848892143 292954228 527138811 957178245 964357160 977536453 993932149 230548469 976106951 524335000 715917419 796843064 900279408 148222060 936510573 745808692 845192358 258817944 316665596 768478894 994712304 516499372 589574140 784665908 918118206 843193595 893416131 85421110 209203680 39335713 628636861 233561897 366259885 527274328 637251960 61931479 812122399 851318669 975866966 555089515 616997918 372273679 585632178 353315901 926123971 217804639 766491251 211920618 602447463 276989584 491857591 376196623 821446269 324226959 603937182 945698610 992775902 880171732 974923625 332639545 344125583 283974109 465702330 604363423 973829156 270279596 692193462 231616294 729932481 390825042 766959970 366575164 835123038 764325810 874831379 250743795 695014618 852585181 982648906 398253439 627967177 599727962 843774832 830005039 994474771 995590811 997711981 438974639 903045027 362300843 401035816 753965752 894299546 747422499 770115532 439220568 801348778 134643084 712486000 288081080 990717870 314788294 866738277 668957580 887784651 260836342 953877452 400345193 494646875 400506604 804936244 455045013 876629836 98327710 612679467 393008438 438936588 58021095 534271194 106485051 256379288 172837589 954472757 859069580 964230766 679702424 958226834 696900992 737879141 806172606 834054247 436975559 651886087 684919133 720769562 206467589 365112197 758984121 904687389 471649731 617827818 146526502 397183692 658767564 941077276 84628578 760052287 65909833 786490589 145578584 562453709 378363512 979189883 518367615 590559838 948847466 983443572 818087614 983933564 824258003 971411149 882882263 941023694 6481597 263153283 804313744 944380183 665052578 720342607 231069804 517259519 507935998 931386968 380768016 864401423 540039517 824580746 68645481 271009619 682856667 757786019 202952410 894261416 32895969 701494620 994061883 994501158 211449293 932768204 261328097 637419255 172781065 721036300 721920084 841083101 341122729 684201884 218355163 795325340 436166146 935639232 921734483 927167591 662846268 795947873 376315369 853131160 405339125 623443777 888630002 906376268 8647804 303411673 166139034 974243553 189527535 661786860 132602769 768814452 992179298 992837891 896014714 968455543 513905839 910276012 782525652 787379854 559051102 809267491 368259905 539549866 172427267 719513132 212278842 955674232 552306599 572702170 865884507 936283889 392679954 766650243 770445969 967172807 50617373 870364277 200668992 428925540 993540571 995910863 413701924 490765300 762796544 868649111 534870762 955910940 260989707 812062079 598741822 815049249 715130026 999318243 691787205 928819239 338675179 484504838 607347931 696919695 522287880 726443030 543333706 886705848 732174620 907826431 651395740 937246232 73716170 988128278 637018624 814771197 896501562 907865721 291372582 614024965 577483213 979652790 607345805 811939615 481057482 693130403 154718399 778411239 974621404 978855452 901860069 956646542 803153384 945020362 998409671 999251170 539168379 612437588 857352625 956250816 503404655 558893309 641599750 949677910 949248074 956410694 990075399 994335028 706886141 942943448 413924853 733068141 327967294 543338838 598189649 974673291 804103955 840258545 339285097 389548419 747653267 787795054 937548729 948587503 421317768 752071755 309564369 431560776 145276923 925620748 717916452 874534593 249203118 559863740 828229455 865107888 748064345 924579806 706418088 973363708 126521872 309961210 801595119 963191886 860773954 960909626 355773378 561761164 200169005 920523853 594393078 952051454 565468961 686562224 789545345 963792464 373467244 964844948 538568663 594537038 182577200 625785088 204745595 638515924 407384185 688136423 258472615 471645351 467353111 821447388 610237094 913221274 447897517 808424589 352972321 592549673 338317746 370494746 314466500 780673148 55461584 707005901 185815382 971649248 263878504 530611074 1786723 648745342 352244776 784763049 172713909 927984399 550392267 550638421 678032538 896723177 73150377 528357395 203458314 907469200 553408824 786552294 645378129 802099310 400265736 487412039 561236239 801996332 355817161 453793266 203076491 298497665 360797509 989063720 497851467 902597219 402388358 599654344 351921442 636081404 811318171 850373291 758519531 850020898 239690278 711338411 661195202 821482534 124076731 341970138 659603195 783881191 81425980 135284814 638029133 667998179 193124069 786579404 975645971 979022588 106463204 707200005 823887443 825242588 553684995 840030741 388591649 823415997 543128821 834802193 280797944 480968892 774989200 817323221 675277830 705647986 219040044 947589538 715085417 916351858 42420680 585349966 865212714 955868268 591932647 825391090 380282745 997328098 492912442 516845450 877364572 891854431 425668865 652668999 130502566 520474353 455306402 813005176 334969070 898902482 134391186 913042765 215072651 420598834 118748475 268863061 497777580 598696873 435476230 469337784 720123055 755908964 99329005 991794679 396767701 499678147 409052134 948135231 977329113 991053887 395715168 412031015 920314502 992360117 420162444 896974231 548585142 954088014 441862875 940384437 186056691 988749546 912951694 998502021 220226927 797071631 559360198 568131560 561272618 733650425 280671349 522252381 465661643 478539368 871296765 943962908 77685806 379565307 170993782 559698415 43271570 748912676 551201962 785154443 373058098 894794785 741678141 953415734 254863761 288494479 693961907 695740607 140907930 513480689 367380961 932803960 630827049 798900685 614669272 910378944 15685660 421385286 205393234 845485000 461003359 777585907 195038925 950268071 171895325 579400831 407993052 742297255 588756058 607056565 576131802 607961728 597698157 786061664 532788201 593650671 28977437 367122515 556946540 684981473 940771406 998647914 580899735 646382747 932379616 986781689 585572704 982230119 233659223 398611409 687464548 829179708 908458332 965559214 550105988 896312353 144944528 185423155 4520360 476484567 631055191 931029164 792467066 847341034 243063652 655670052 604281398 607648393 857883074 877507430 21157667 348957497 232884917 330808611 891714806 901688479 524016058 741009053 759908146 933978702 986205561 998802510 969154067 974543122 514550873 730465272 391664942 488916639 975889462 984641933 418454440 773230282 814130106 936681147 211920645 309667575 690156267 889395217 360164782 535320430 15328617 620368652 865991349 957523786 140046248 959016644 234800856 256863064 392981672 523889417 904502208 961009880 907930116 915077216 580020283 774014201 601464277 729765913 217653456 520276188 183704592 217618790 92337216 558130179 55364802 943893051 140659228 904838771 478898440 554634951 795983181 846121292 437840702 735114619 166430402 546330314 328409229 475213834 339935480 787380391 236640291 474440265 947590263 961189272 775745113 966758744 49221897 938724480 712312629 831604866 877780278 913233059 890404949 916376334 685353573 769406391 71908156 494485750 830778497 857797699 893039086 938890046 593419209 992296366 620170808 679923784 334432384 624529583 18518906 460313307 505929506 956068251 129308233 432952398 674941768 696254640 807620995 987636877 470086928 945808747 109198297 582476821 598001642 793131798 187804188 244697180 104748897 840644352 746934907 928387934 977505950 997314893 855189039 885759423 159098020 731471679 116650906 789298807 311002606 558053752 539796980 604139325 863781850 948686616 499158023 854513210 643327409 766594415 163877817 525220231 440820510 500611197 591841302 713402630 257274961 921250370 413797355 967532364 791731658 905032870 143963844 874164224 333583647 412257082 986718537 996648799 975011169 979194572 679826734 762925834 730158538 992706940 168116528 237517556 926728408 942162132 679166786 689353406 465147102 638112121 901393486 953946504 974440048 984014864 441735545 974774265 233834268 850106650 185447505 503404309 942411835 955986330 621727553 703273031 260490827 507897152 241596578 849944604 556159033 950251928 951045374 984903010 950555314 984246814 231102366 718274791 912792297 971678532 170314542 758594910 385658135 492001286 793726004 958404440 355773189 406527873 807778486 981858474 370888381 698837931 610285881 728380426 756931913 846181405 871118412 934155052 919204973 922592067 701110643 999466196 935236714 944741956 697155005 776742805 612495109 959987362 683924077 695995429 227221173 809385566 625004354 630117595 745967780 794318417 364625981 984944254 597395723 714455594 443727576 694464055 202389092 695637859 145828765 688736157 858632075 863952907 650221163 664626622 846981125 879968031 499400124 627841711 652603654 801188447 902850291 958104320 451747580 622099274 233690642 368551807 985226410 995933287 262438538 451579382 325850720 561817045 134649839 601963255 16459994 152125044 20338616 709085500 708233005 883280389 598329209 945946768 288347917 671972278 455189877 943050290 690982079 770557948 594540693 972354429 797905877 896511233 826342303 841110442 744831344 877860022 720084119 828624153 517310373 555840060 107056276 570556786 366111060 653673515 13281354 402306264 65784943 785495005 928696140 955953474 997844318 998975132 760703965 922074812 774819808 985068239 546192443 649830557 267549172 313630582 811608192 977725481 791593794 889652377 330627942 731087892 293491386 459805268 384664377 486537018 746404657 829038460 824581752 833055547 545130679 675813653 440847831 953190904 480116961 583902501 244511269 481740506 562672550 788999056 668243430 822480857 995347589 998209869 436080450 988691636 413219405 475916529 105672765 401855244 868612550 958772717 517289492 575514525 377662483 541089793 52311386 914442445 843616537 956472467 92209915 494788567 348442155 552671610 41028391 282823800 577578715 602586530 411602916 475400873 442374571 689643136 397478158 426140825 175978844 684436784 842510470 936184268 918493014 978264154 696009803 773260783 585198304 830033563 127332030 185136443 803617174 871228884 947379435 963815180 327353045 472779200 550423483 862978713 34048276 717487384 914781386 961672711 911780888 927803562 227326920 625678415 842756093 888833969 10903474 833059231 800216609 887647963 149029718 936225361 646741636 886695326 921438562 927431213 898510750 978166428 327445760 533849669 620069113 724871344 705966223 916543777 131248678 316340257 287606442 291098372 346058205 394390027 538269200 835836969 561932244 883012598 864781057 887643009 962257698 966881203 999732016 999743280 614291829 653101607 717210627 882231899 857914765 921722700 951306031 961505482 938176866 938874323 656216660 850416198 548712224 839407103 806423360 893463983 333784190 641729805 291225035 734649071 473298287 743453287 860553842 922314328 164340176 255452884 605666407 844150377 724541715 819607127 824923081 978441400 799164092 930816387 474781442 905203561 622518829 707958734 693883473 936749786 531364428 928420086 943387764 960700033 804350354 961208767 106617260 920624755 359726874 913638527 248986481 963779253 51953846 338630359 522158301 730584338 806173673 998023100 453733607 570529109 580456515 881940606 42184452 842332314 673000128 929110429 880508275 984612180 188974688 394580776 374953698 415619709 358639953 748467655 839142630 900494301 519196474 784707937 310908752 919089611 498006973 978751778 306954928 554522981 106596774 128653757 792418767 876990545 198865277 441553201 196698250 858424887 66049939 598439905 80261414 343572785 411812060 417486508 545536424 949218988 837483511 861190833 591614588 976131215 590606076 991219298 583947064 661398445 606167077 952041489 508416342 822196547 113436690 382103322 390107258 983844067 52437464 571753350 773568491 841661913 379194869 918825332 853665752 870752837 606193647 945070425 915062539 971753976 167421441 422448088 526052108 665416680 431061974 440902815 724753786 755874669 939879567 959450568 500169391 736864307 922623022 965109285 602320139 862952115 923816410 999135751 454964955 577082130 911900331 941331790 199746487 771375834 707124368 901342177 891427518 900559471 766138387 932314906 509585191 959122238 307897915 351163642 986812587 987576975 980279331 985103550 657558 509621928 564325388 671484285 317407865 820545383 455420156 673972690 503244690 703961230 51494302 682716476 954816994 994209714 522483460 702045285 247421038 724006449 524113294 987790639 889819087 989788196 215296596 555412540 649901259 956239736 45604192 983501899 121542110 563324611 297603457 961966220 940608582 973928065 982810671 986273472 279904955 990735831 668812913 966692153 790005852 928868730 4487640 545443010 917322362 995513259 384209522 526616642 117821264 933016823 369348503 868031405 261303570 718302853 270232444 454036561 726037264 816012463 594918840 747290272 21038249 413893841 17803574 150402428 767196637 948222107 750472714 787417761 44992825 726179135 91791326 896771807 61724115 328942587 326592127 432085754 219336432 251347891 858656457 894515959 913212028 967881639 683282446 977704748 629696104 764904700 503617520 864865561 551526581 962065196 483035288 484492396 615343676 815938875 119403617 471361064 456335045 618600311 871761143 960862125 663416790 744930757 655907399 773042723 194371252 356395400 329853301 486354095 83604763 776887409 907189533 934855925 588906598 859682158 587497194 641204957 609104300 630712897 61046714 708874788 170648443 589671403 870977809 958577469 388031631 850642942 501856836 921182044 419236603 930100352 978218872 979539333 743881205 747857883 602584213 631354211 669519483 912509395 10497811 799894986 917931459 940052884 634822067 686503302 820142905 935436886 265703785 769629731 48064419 180633666 464390325 650311764 505033183 691300778 584548966 626030702 494996211 614524223 933502693 936571433 756688919 941082069 487989987 499810979 165811310 990034262 591292219 823994854 621945070 730909543 376315187 445182088 131058048 193590381 302887841 342743403 833746127 958527189 889657367 947360817 649973272 766490730 485562709 514033062 290076866 794266456 719735981 876896224 393047974 637307396 724417987 875546784 470606807 880792070 157448579 306094897 36745584 542461589 846091614 867852443 849448859 969964929 960142559 994465478 944815910 956223891 510846583 651091342 999515905 999795330 215980500 456301826 109619916 760634426 182772318 346347572 572938602 891124715 246806669 593933625 403130760 858506865 632139560 995694183 712471509 861790494 482733095 569121984 4121913 802792342 661198133 807628977 205114534 553984342 565468058 718566847 680790269 829242560 936110231 958525939 814854940 919545876 683102262 709659170 94386521 837824725 626978301 963336570 769411943 793725522 941232548 992360512 811466604 871558125 155555468 517232011 818635609 871766897 328377576 649851456 763007074 847287595 356109007 492393036 876210072 981018491 780731921 860786426 806720646 856576867 405936365 768753765 270438830 571666451 679401645 799269460 333383171 951388769 572259292 704523608 411898938 849347961 586136549 851839722 810992051 955363940 891817930 954049706 535268878 797185683 198537180 511583197 408314209 885484417 345598125 632235186 242328861 586705681 663898380 751040087 439061866 598302198 998516347 998546286 519974847 536821430 826462835 904109277 956275468 964008553 325283166 993259217 360699606 448749158 500557853 633113940 202538197 515358595 932049638 953726075 820946564 968379483 22287668 598711474 736350876 909760760 562838328 973664532 153047183 632381439 82277166 356679738 745148582 980881595 339517052 863389027 517600427 564355931 869105685 931683252 896755306 959235640 695597097 743776737 442098400 657307206 370621230 375263851 591479184 620002478 303072906 700847351 298537010 746159110 778953966 906860529 83729015 695351910 967871861 977815003 979447520 983908338 567021160 961111376 182203738 837068650 828787279 992761267 418193779 868041969 81006303 825681545 163822306 740891723 112724771 169524795 367402545 914623244 127535325 938653872 238952993 679663746 831743892 907817731 359422689 784125234 142342955 965289198 52793517 855623288 43092369 488366937 676758038 732971116 422876051 834278249 936608916 993380291 96494593 277996494 179101353 503824392 645144344 673217931 184329414 686825027 191976032 709626427 398096739 621677411 26680980 836366328 943357367 943978000 673436518 963824013 223475154 276846666 590487444 718051128 386339940 731303013 399024539 925998633 112413424 794053106 432498042 763253556 849904841 916644560 613013948 740357281 395672433 994948923 323375984 362057295 253446029 737039900 198227607 737979644 429608165 523248341 818565227 869053132 690757641 744218073 760202570 849596593 408054245 913676259 334318847 727081977 833218936 833307853 761532362 923709140 650016323 780839923 646560944 924118334 617243866 942398942 643989621 817066292 76811984 832484630 559732526 589743724 974539795 976213157 232573277 570836550 190063269 241698948 718078819 949192491 558862665 804716994 639125302 917449915 281403922 694986127 524574236 981361797 545903808 662280359 725789507 737138334 489723947 844314124 904893048 988121233 949735712 967805124 551499999 797455524 412306447 784150061 139061541 485217958 902634736 909646629 411657523 909030838 405648993 642070386 234078351 807997556 837869149 960081601 841595451 961765365 847590099 931038742 397286985 976776840 31471375 360047889 261851191 379788819 898646532 942355577 727462079 807060430 680200580 886415175 991494641 996150979 559392179 670694316 764196811 869509612 637742499 842453198 255099250 565375501 997522468 998922176 805991415 845035140 145403176 351658614 417085448 882243954 692103300 752935705 353666323 585367446 758666776 898452540 67984586 438118783 273101434 711781148 431827036 601412019 255076585 429126405 257341167 428326036 644783915 716870979 366256685 483769981 809976192 830091510 773022601 908984534 236867232 702114809 790736241 939737262 17020548 664431146 206947223 823332568 284405616 822871765 826473277 924350729 434958129 649210127 424555828 852942289 130685338 822063109 162387603 825294926 869337226 973823348 241931736 890540569 474246152 895706509 850663540 862273498 635073626 661281900 365495013 808682705 556151777 633114879 373138987 855938139 86650104 181050838 868635334 944272101 25561100 515697957 335687793 716604975 729843129 857632609 289836827 802471158 110883647 152763605 420058440 582332697 716287320 738246017 26712005 819489839 355383249 803078831 832335369 884917219 427259140 438410741 784536048 891387623 924578312 994510993 972702588 977719533 521312085 847651425 666443748 843455375 578475070 725865593 61694572 336673859 50541971 809174892 690877245 726781610 369882685 864145779 195622826 945457055 650018583 831512047 416206361 632532042 195620861 412781668 778792174 904266419 301398364 792991198 201312586 794752208 818154633 963229131 372867773 451688765 156679058 657478129 872661501 923698598 155721746 285430817 721897516 722786886 768356552 829889850 412298797 849539674 454385296 878912562 57731724 521291887 684863516 694699525 305212257 576791288 329317908 920724266 441102 121916452 148550570 468511597 255479153 564456707 707244537 807565436 776674580 985214705 761205839 818984868 188589399 267844727 240280162 252139025 8709630 645963813 282143402 686288661 667064734 702728464 405142838 712233313 538925663 662033739 500092607 831002415 216416570 801111193 111329767 292136828 762757589 828777765 608479627 717148379 370061752 462893010 645096050 838756935 196221640 701257018 555360406 941722222 666130394 672978178 111592210 493325101 524072573 930809668 530912448 947272489 839300854 898151499 358986430 481697747 785088245 911027507 530628125 698613939 649289346 844322032 802446303 822276488 759786487 853813068 690625827 942865562 973560937 992335667 232652517 322516630 854992035 953612762 53833024 316106002 495493741 724561613 358114607 541701783 536325646 945731295 952757687 989180700 286445321 691861299 404090471 961544419 666414245 829406488 715831182 908008313 695278465 887643491 379446753 589673893 892043632 964752958 788411190 949002299 851688835 982557754 141823474 382635772 757378988 771128426 909380919 949412116 86814841 604907476 106328735 649646093 106471290 628249780 890477861 941338921 324367686 848862498 277286870 414799052 548368319 641322500 664095267 890359251 331512822 707720018 347682691 696846217 932609881 933716972 840754971 930877249 340027631 508612031 223468069 655080426 224046085 917747305 545738178 746102627 364183531 799987549 90046695 889107665 632010598 987137733 556313764 641277402 629440268 916211861 71382299 448743202 512249618 556513199 697504022 843717004 828428069 867238980 73682834 925081282 406238675 605562921 427611033 812968556 589096382 782022102 104467189 572405635 888285208 944302384 936590607 983916140 700459476 700689323 190523126 203574290 978140492 996879755 153567273 529919594 116254196 620501398 501930041 519175709 929850853 936355801 643510691 907729508 17874310 825031934 866061984 952046125 784349617 846855063 155483355 373470892 103602583 712517411 321479272 675877252 458287969 541793130 598844655 858514926 648804797 959661459 675506272 711433024 132812133 144900936 571510991 593747174 756637662 956627368 839948148 942622613 629938628 722405095 824035508 932783626 128793468 760826051 479913137 986751951 684227964 805040182 260863146 471869800 466947768 883215307 197646385 742784812 376350883 510735222 917818030 926337690 571887374 682768983 332345553 497592714 627450289 908999585 353807791 807096757 945807840 952259989 528062043 987856969 159237737 391835845 695194300 784817278 291383148 456548315 248865044 904973311 922558916 999277842 339429238 412148995 134547256 581255912 866330646 900244513 530142733 680559509 711801275 871576066 63302169 324086504 186679513 606825128 292082332 571718071 356589368 748925317 171050274 826622313 10808136 269709508 851289932 958996514 707198768 846780395 530621387 704340352 487881475 869359893 792802596 971512321 890336771 957309873 340155786 791056915 927426334 957652977 60199882 481433373 549050611 696549362 736250480 785333835 314981863 568662243 916128386 965473391 467326747 750313372 171671973 922559514 50787356 963444963 752204321 756292610 889350029 900848976 703204044 987008679 661732873 964620912 249079153 482475981 850804115 932625742 756440221 862530112 748934352 943509465 90465390 497434233 428948425 673805795 209125289 371462628 513959429 853145080 421726458 678453209 850617403 863209017 335583901 613163261 651741873 718713128 136283356 463151808 592137855 884446302 212639746 924261099 783266752 830459692 390378936 673202086 235011807 851729076 917519571 954781528 476167061 955813277 530374136 645353155 796949334 854197489 995097471 995627232 603916035 996075975 339554279 576119638 115063873 910691027 847842198 884945116 202018805 851500587 542434589 780486440 887878162 970509645 80995947 896546094 625339226 726307981 827612871 970051658 836992886 979879720 842250478 999499352 381626870 971330885 966848335 993477889 782662653 806368454 320623326 382697433 933072217 993087858 812412711 947105926 389344772 840680168 603245415 938581967 829418094 891045076 804937666 927421582 935957806 942427020 966408432 976146953 293901444 659691376 198743521 471196577 795838633 797644575 486002728 658025755 764521582 864177064 285640298 791830382 933424359 954480334 804965090 811690117 294321950 841620003 59221673 693787346 785378266 868987414 175379693 751236550 632801191 935586883 674724011 945182715 354685300 487167215 574076096 996418313 946099312 975612972 286754829 803907200 440188594 612658952 429518191 856385757 279365251 396876854 367852591 552457813 409820800 667682753 631902125 772425327 704388384 745496380 671572944 872701093 846608911 903039079 529196142 612082993 935523359 963695603 483777551 923528677 214227541 753006152 298999219 771415731 217179986 353372156 978669189 996135912 655504429 877478437 853211874 976526628 948004256 973728735 537328470 823404488 223014780 866168214 626537674 880069289 146931574 597744283 783716028 968993463 173505346 629691413 205264130 817096779 57891962 342864201 818343584 980230011 766380086 951670554 92119436 651817538 840306946 996685807 979496645 985076037 856013221 980451842 590069014 996247570 815786565 816673560 343335061 735818528 334374526 776914327 645057459 704781994 626671171 857442943 689708984 869920247 221775735 585283756 542047053 856550774 612273083 722913159 922017412 944942224 7252704 919682396 349104578 732998995 941755821 984925758 703877691 894292133 745744373 884379111 967033887 987518045 16846675 260332864 558748874 975099604 954175932 981772172 481734420 758120994 716424281 889186802 141425233 829697524 226828698 626302840 877014949 918029390 119144182 449663268 987264656 988231291 267171981 708196442 121844972 547067860 396880633 401632718 207128577 711781984 332543331 728284389 142232391 228383253 153917957 225849369 248707689 455325222 731239021 852303279 801870582 971690975 330013696 651245018 646016713 859488868 220353412 977219186 692873047 748085369 380373396 502073260 772585503 956176583 300480878 497814484 679676503 920561443 803609521 866880879 54513131 264057468 232142261 265693661 121987529 658322304 696103898 792890560 608209544 784009912 89025920 413494437 622489580 801614049 362218286 999956757 837749182 921381746 85292045 703800721 951337024 983807630 288793424 596591077 876085765 977717970 165642523 843768378 543849252 692551030 619132779 642361056 408072894 544477574 347734864 601774147 38885917 565876867 681447810 784492083 358295745 863426426 256140070 852457598 804817883 892940229 787655718 875130475 520208228 814175835 35895129 395186815 197366027 628944426 997897362 998146325 965572688 974308529 668340485 848237199 616052436 705572653 707613665 747539962 593080290 942360970 79449030 248093527 158367940 318706577 466130341 589603782 471899029 731439314 753994558 978227592 265226269 684673905 319490886 701564227 854128007 947000314 478989777 879695439 259457081 452367794 118018523 978995338 482051025 988920316 855177822 877360014 2132563 878688343 878841651 985444728 218969412 520027702 233411298 900578351 72433823 518168050 110536393 460685373 849752193 952218645 717302993 820786375 551309506 591154444 723119626 851280136 233177412 688282813 491244196 768697047 856481590 986900396 611303330 909035306 931491797 993149080 731004940 957606989 768156371 892968541 348899927 924595982 773736912 820564054 177519770 363694995 392551797 626136069 470234218 994413243 501740311 594779193 522086484 605476616 340332192 836349780 16744723 674780404 566300645 994994186 487578160 952916807 954250442 958129564 463048954 863979930 365864828 704763571 806541427 973417011 663890502 877291381 433579196 760475057 988601212 991649991 921957459 981040737 738025195 949572054 941131550 962180807 415510472 417666588 219794716 942465080 679276944 840599616 843800670 950065139 86355479 626865207 393405417 986152458 807563438 942663907 451397679 680834365 602363873 845793111 250474544 724558706 259263754 956792233 999237444 999441449 518451010 914789852 774745178 806279353 651819742 848502628 819693838 927716034 12475585 210590034 458236958 855416874 872228083 950217182 324899431 659368950 394869757 743448419 865691203 913863592 633695459 798631657 764816303 924638729 757358801 949979602 153438668 331428406 846402758 903172623 548060954 556096176 259774760 755185927 494811610 549746214 383333295 666168956 933309045 934054810 812402237 840252525 177498631 356277598 996300816 998165762 593745754 736958364 459393460 654496056 801973088 848814585 800862556 926711931 973648618 985749608 534299999 889971931 248922819 842555262 299515567 547734084 985258467 990612730 76136969 184123395 549092940 854511681 133923014 179859372 702863213 930422526 482573283 617873032 587036334 662558740 325442450 504446556 626009708 658028605 773761394 872850158 687620006 965195931 743238832 949574468 865854096 881381900 737587612 811181494 193680212 219477487 266489169 719725880 846954371 953171019 549127586 902604976 885494017 907674760 855383210 906151978 671135696 710766877 320193279 673441321 915379697 963700877 420655536 901257107 240958758 695477412 790088779 885295317 439885605 880030133 257351087 828999559 454960937 589271532 553937177 699566694 959911572 977795540 733122984 919752069 242579653 837574033 464585664 979174286 294965308 820000676 864893050 915433443 564509989 823536171 179442192 479200449 144377484 312937775 313261783 898910558 85059153 887097727 876477675 924556662 68527745 533209197 334582508 712041587 571038670 984096011 310904888 882696409 333522047 864802317 745322133 789050207 946322533 978572676 970947419 982360911 391115359 841284312 610344007 730962523 467082572 980285210 773618608 972046499 524308938 688257131 524113245 913912050 308969943 991006596 26503556 969267306 121680582 845954434 888843497 986721224 436420732 567328405 125738176 536348994 428800598 779203907 781380452 836020350 78869040 363289769 328957537 855394000 556704523 600175169 128434195 447896163 313322711 732529809 313152973 748972771 475538254 557643524 993010563 998252736 698230861 754865862 417805806 506659740 710466765 997551865 783212078 949425131 977838589 982560722 166984581 280953427 258169218 712760880 943273447 995143388 299724404 478999809 167561550 997360507 548368619 589339465 200351777 866925058 638426278 648793258 435501513 978520180 695787476 978740464 692889521 860490727 714620666 745993795 731841518 982451747 955233381 988932266 135383004 725265791 274334294 982237546 697947881 825683806 731417626 857871187 499235138 578807338 909820337 915635491 616096287 993023942 4342185 457959965 631191133 839954594 237500951 789370697 19978079 797632846 709181985 775803056 589642360 827359435 593053277 974499288 9998578 519842100 122426055 933611901 344799719 964701212 25513137 243096414 534441041 883446235 735485204 758755765 613936724 637740883 770236476 899327624 158650610 488369871 62482653 520978810 851677235 916338732 284987137 822129938 443971557 753978002 98146924 584555998 148918068 545631241 103292573 781761993 468046216 482694689 877783839 939431320 266433273 986576979 819302050 933602878 954272385 954297909 214534630 372952663 994821622 998793071 964988174 996329637 838108716 946916971 807489387 995925332 621810317 671293723 505832590 613335625 165078179 209812162 640353322 987603062 588853281 974392020 421000685 671468492 459869963 611420692 522774501 703723531 157379370 918569764 43437165 849546037 420282257 438629183 572616811 677596443 252898264 537747883 448230986 524349207 731924378 966260798 605259074 927092387 204094898 464853034 510597097 829702468 303879240 868278334 594494988 876818770 462839251 822906485 642513286 702530047 363813867 865862635 829988000 992034160 721149608 914188430 831950994 989584923 219004324 563859453 21451588 186959738 965035897 982934007 753658180 971022506 243415253 799997849 414957786 855157737 988018359 990854038 146234618 570489528 585107570 941079486 443884637 540941325 288784168 337243282 954497828 983685837 75820072 298875095 84351352 326918996 422709618 855606240 523556704 536175222 904741017 993055742 547399997 849830720 203375724 741350988 749605778 948630174 900514805 978545996 758070843 942568411 48656308 210366699 900619824 926349641 580756116 711365837 730577847 903908334 755264909 992046075 306203850 969691183 906047827 992930991 511374743 695793720 696872949 769755056 839115625 939751834 376006971 396778681 690967303 952142461 101820748 303160272 839043856 946201670 379891629 714252623 164735584 584009494 480915338 777773220 494187465 917871749 378196908 701056302 17169049 464745697 653812459 811922076 892889101 929415012 25531088 938718294 722511691 920995928 907250207 963387317 260649947 538973631 749359891 808853888 651445513 895946019 236149736 601840759 462497068 916509125 310821480 793937819 176408979 910966143 843393829 856699856 678941119 928447994 421909157 702728207 73658180 815235042 649756067 909992817 387362796 608601672 416462743 555337431 807174130 811222689 915737073 968718765 884579256 956433550 84849527 331939547 446291408 819828208 820286683 961950009 14104549 971738886 872778749 954478266 549169707 938612279 613860658 631827120 112358880 419014886 587438302 806702652 483441929 843506776 264828089 275413345 440302278 827878362 572526641 658344792 791030053 806778647 114914110 609470315 905494824 964523299 345928879 851923402 894534753 966325386 126137217 363180363 424033817 926883363 536168495 694346638 188745422 542321307 799020867 908126215 375153326 980262423 458830700 485212162 207127280 531078875 986331129 993595679 767504822 775783079 747658176 826086196 808456569 935862369 874042215 915803956 631338055 835228885 229359942 389001673 447401904 587766028 226166520 502185326 959562370 964725313 600240676 630479453 163190608 550677232 976581866 988405749 50360035 130391934 493384644 940897838 724768743 907760514 453217798 728010189 455634785 480571600 907424565 991165231 941064337 967373916 85546533 309742173 802074731 839175668 971837573 982712965 115112821 254209069 890146909 911653362 138585283 590750682 360084990 381478571 895905586 918987070 168926321 677186259 515570833 736233971 257744172 258588444 109585943 616295270 361714088 478138756 258263342 822624974 980818690 989959280 905495736 939477534 778361613 840835193 616448946 710821231 532102941 870171446 22591132 834036811 112602063 362617146 975164594 991928446 775562492 801009927 667632180 686021963 867261365 896210191 434899726 550684921 31157528 986370154 851661471 979802453 672289394 951224793 515911935 770165244 599910669 862307190 893741069 903374851 211772621 546317103 904559559 908502501 182386515 292301138 118596420 807160141 571064523 918759464 857657310 969907489 181194652 404517668 717407504 790541727 729116723 867941897 225943650 934756474 71898254 778273326 589973459 844809663 48500804 270422064 115420114 999897979 525171444 587764552 496124098 815063403 719918775 815924516 311720719 876198575 396803636 771854522 443597497 648936713 352452057 599469372 377817653 577251380 409576853 782831425 235759335 809929701 977236777 999595418 169259211 172112479 378626293 558733633 564357670 905546401 254045765 507792234 122080676 235288280 147125643 300822381 421379717 962948997 465628811 511125394 20170090 316728734 639024089 858747755 250417149 795096908 497682699 543340749 984321311 987222633 828258489 989148732 736454386 782208264 998709282 999720888 905425313 965363674 715855892 882965634 511430408 677466310 507913234 680193749 413314371 522976177 251468807 281420459 126684214 455640352 150599724 640884693 546910998 729972257 770109453 788540074 246001949 860047302 716456911 885977708 851225309 892718120 474490630 859784286 546518722 955938705 23793540 940144071 519160203 835927898 407309796 937085130 565512020 898625644 120217133 394146708 147610905 665959168 578279503 904883234 358628137 682087703 400461520 676666053 7410195 995518109 327926234 402377151 657175949 944862413 862703931 928782331 578428182 967926008 210947415 920119585 813972665 865949563 444930362 658777543 257392214 996199113 751636286 792307235 362253370 407571163 223345764 350478176 453543865 562350214 590910724 907409097 556193759 560092941 275552146 679747839 646887784 915447365 273538796 612943464 796719533 846911889 254887346 522888609 565644883 673531691 330524550 595310871 658573635 965423792 407313924 719197233 847657550 946018277 865538353 992968999 670967415 901569645 523809769 739339042 414352890 756192709 234008922 663575107 191223049 349471399 614878860 751815001 206608669 973705835 462984663 883677575 252753158 680091437 109325091 231621442 828807807 880709713 954443405 976577028 247371626 669045366 93674464 137642874 188622457 915389496 607726873 812626644 477427336 871339441 552653386 815968494 436928436 926208754 69645071 584743990 767252098 828821552 22024 660246740 379963568 529695915 534557478 760599600 138198003 236137278 577800176 926644929 715422417 843693182 359924651 645072129 264930194 767029674 912074355 967097761 570953509 987663193 489232463 525307868 158707176 442809766 732410369 909713343 637306928 996758985 691478917 968296165 650129116 676554158 768746487 820844602 223331493 843472075 602626068 783306786 313861919 560836413 655435069 890226677 214272607 419130587 692297491 722462865 33650838 141844800 55227817 187861442 494070585 974491381 337135946 991596164 686143110 821957934 819026440 901694703 38152820 224328417 917764775 982113397 296366203 650627893 298298090 326709065 653001792 851784677 840158836 841269327 464347001 952465582 734536680 878143597 447825044 746307644 566091722 674140491 724699792 855988703 924363593 927474105 351161581 417977929 915488920 981396245 832267434 862315225 604379931 756678751 663134790 858527162 316640342 342217218 297689034 447048105 434751588 687972673 752642540 959689311 844755209 910053079 167147086 316125693 378193512 405990219 450428010 765607195 66875572 840959603 697184946 820947296 529267733 535041319 438335670 460032005 617976901 889439432 495053224 777017416 722397382 725390610 413890117 649761314 515412717 572141741 562484927 855147359 317731136 472715063 670699534 986700782 461021484 923238633 485578936 831775667 497415025 917303561 9082246 237554576 4553055 227003092 920257255 981440677 739805706 784699490 711970706 966317301 397582488 858679884 281386258 716815423 195095949 432370115 319911066 752611531 936457240 978790920 677867070 820456312 12566479 448293772 642482817 932853358 898161279 932334851 412190972 937088638 918791265 979990913 985991570 986935996 643026293 644989024 303557791 983697459 626515384 687918959 774797251 958102607 868172756 974732460 894178874 911648935 742373417 906071031 188803216 412316801 732436440 949936472 648701906 694435686 791084687 793117124 876774051 933792156 604542352 916829320 698915288 864468011 284890289 426043872 191696703 718409412 73308505 988893447 974579150 983408297 753417668 773812136 119022637 516739730 685582774 910026260 718692943 811414238 153850201 864105570 372136874 384885163 855488142 898701683 704399487 992239763 486095419 914150993 207026490 479394418 307837232 952083673 47526677 314144470 822291646 907862047 866663422 903849170 658145211 698177953 885938936 973877884 199293416 217445241 321883334 470019685 814157784 852771771 519353193 640352442 452824647 787138352 5111158 777576882 454445019 459632682 537322987 978857912 426797135 543227179 366064770 380381962 331023290 967954100 209339506 799401996 951748012 976042390 118524059 214901141 961215820 981004542 129038080 707422851 934568121 980083888 739233591 762795993 447586285 535611076 602282346 945371364 992895593 995321017 535291451 744309316 877072318 980846018 62592796 291836171 33333946 183640404 138523300 266993589 119692442 195427171 885737384 978982831 397503868 788145446 54881463 910876403 190614002 639783755 989518554 992147878 734879002 960853708 976417350 994731157 626707334 674968342 807285239 993739624 422839675 959214126 817115044 961999547 764987374 905278809 405579485 778398963 970138296 981692879 920825261 920957000 989623569 992926758 874245445 997062283 63187468 672582293 265116592 739634830 833829225 994033783 19973943 914506700 523669650 994577882 414185190 531227722 743485603 902830510 390815416 478588507 197464431 871480873 389933913 569626656 926896094 930790006 764994517 768266474 323121985 526893393 726998660 842282432 795529898 801997570 135919639 475742985 771402038 998968170 588704212 950608774 200699120 774082683 218109855 367404354 469372957 511801513 799793084 808644525 931857875 998305636 269049319 308566475 713122778 715206072 254265682 678755795 243623197 345893435 78302762 306751204 268960051 895032535 298601757 652785966 600857485 860298300 421213155 594052994 452624190 851466055 973067349 998739271 565777836 763487222 611534257 991902647 888108793 951756613 496175498 935322896 5712564 690377455 101545300 729221206 421569618 778469661 780518557 869350679 468665781 489000874 226269505 659112707 482970874 874693339 603734503 723450517 803013038 890723473 585860810 674152711 324135563 796112042 663928253 728044364 779116794 848875462 205503979 498341063 589675729 598988948 361094004 655188802 540292418 832336427 73010429 805007055 751338738 943112202 369912702 864192261 82902153 592408626 840257919 915603224 415351457 467322206 266187562 713957534 889058045 967800525 866459555 971659951 308104134 964129331 188608711 440477048 923065065 986843199 312492386 977666950 472288664 602605039 790195745 978696246 809915328 997454772 674916482 694780146 247298321 988283753 58070702 359410518 723065430 835535836 946798861 981475924 417044974 890518059 487585088 581720508 311057418 814152066 314323871 355674574 84677885 708785359 220038169 633604616 878782056 915270828 143106282 623289655 308747572 990220409 773471982 963859874 981138526 995895705 468519929 479676425 702929 450128350 656216229 829185318 92663793 579087950 901976968 908150845 857170691 924748177 756500569 995337040 673331885 696464904 821158366 826185782 552477775 854387243 464529375 869191642 52555385 615957912 93086338 332812355 476681389 755118770 104411322 186844742 726698029 799174271 417161292 878029342 446603782 539875408 42841334 339811809 179962621 756646581 690672185 866878717 336576961 982172386 28667271 200852057 583752282 683436761 928886810 984754246 908020163 944501414 453995112 996895454 935564187 983512197 855292473 941459290 579726711 681755950 226258800 231329117 594163504 959417656 475051759 805464552 697868216 702807865 457475085 798362427 232157638 415227769 545008013 572477057 745195774 982580078 896233885 967025436 372523310 387306820 611790734 831767302 52140406 663674629 459422789 587691756 494273144 753191827 713358607 819027127 969574561 978875306 134261602 713907975 806152650 850553544 602907685 851259024 25208717 634744533 552735694 824791311 66527886 522105419 819342995 890755988 608339329 937816507 142497850 792009329 163001259 350147174 418358510 432578607 662941967 713287829 772082966 831466946 380366246 478011546 543611445 779666090 416268797 746325431 419445771 915680921 44506685 688279361 70917744 719256275 898290389 937211774 813269548 972108576 479271664 519485734 116788054 350930021 418626028 908829328 319769073 689636793 579738480 620877648 554238327 868964765 406936828 501450014 222546495 683854347 975410815 992547229 44487464 233246637 976735963 978857560 985083238 997264221 261799885 503298277 790620454 997889852 350837321 467199307 216525856 839814300 552019306 934331821 95947529 526009138 844466371 904790902 687508468 831847578 683966226 797787982 423375715 712141694 664413996 711547457 62091531 99440513 421027914 909823007 103767528 628670212 16211546 426041867 46086587 394363561 8684619 341996136 393698252 621303465 850099633 964688730 517883445 666910470 997121653 999681368 530711990 939204357 575848285 690447401 723925667 808923102 923356494 970263401 177398899 695579163 203994401 703691420 785486373 851397014 380305781 455771540 622675216 685305120 813172623 992202647 357517386 522650644 933554572 975607660 432883372 654489183 497638163 633508794 358406894 770531599 668203639 932930049 661948165 973048079 223658191 747306985 826438871 884976400 335138349 814348931 608737414 983427132 19992348 550871969 568551843 967015562 999921020 999937352 316181480 611517584 157608880 165989653 999371467 999424351 65854090 465236763 834794952 960736448 862945217 867821716 33356628 616708952 419490184 467918990 814367482 851923553 571833493 816762292 915789570 921116985 452494458 999716380 494181754 757552013 992263452 997368411 664158374 742353112 587330436 663142583 471948510 819020247 453320373 887601100 84374755 705838951 827209198 983564324 313980996 396508333 655668443 940624634 991373453 992783262 56921516 106397432 460890485 628310759 5292434 610805607 712935532 957577649 47220919 211939096 546135088 801019686 434441928 816746805 379074148 648234362 490724352 978479024 128561484 203124928 726513634 753866907 643530216 672475538 285216655 737465168 306940775 800473993 906260265 907222024 101124681 967667964 204833589 694861554 172519215 779961815 271404663 781610128 882172578 980345260 581404352 625847409 453281673 488930523 820279789 999635898 695511588 961386569 352781955 735480660 682249280 873780842 737483872 772613615 407115184 959303974 894976818 919193827 86014638 943166969 747015519 901232479 928019071 971468284 999933463 999966501 155881404 238501873 478898193 593734740 116304090 474852646 731412048 807518674 98714382 720817976 225814349 882613792 754122528 984005432 26342064 251739110 458938571 710570374 972465955 991673641 93557509 948467853 260825952 709970123 584943286 735450997 826416378 968142027 271991714 694973136 777260613 826766136 915561326 944316274 617283108 893028450 565287260 816433496 674562899 776712779 522724162 527930587 974132003 974338342 620802103 921729374 271418169 676097906 821381077 995638578 739461655 747878329 381067971 469201590 272880833 564357767 750656860 752901760 569794053 668680388 675896073 936371459 267951511 887965119 662745069 947509083 897270085 930439532 33700227 565259406 24249780 731837815 786972943 978119646 73225096 860884483 973203885 975922059 611227230 792827945 642015538 800307753 323259902 759437359 896033314 980691705 59627449 914795304 511766756 530653983 899724201 917726022 881470605 990233366 29510377 764019568 760407244 882985696 115268297 588413099 667460656 926053921 565663886 712928936 919313101 973902496 469917310 931660344 635782242 933503117 575777503 889303508 55569132 422676354 681999842 979432034 843466720 970825528 372117578 702689180 533766234 620547917 541856095 916761134 53981113 996356894 849533244 917024077 668994804 852436601 949280273 950059876 410019309 615821804 69167941 372585535 500999691 943065724 895736551 998400896 629852751 674524179 18604305 845962783 148036921 578005140 383904165 549974880 389933695 906083739 560939763 634415624 575953732 711139048 53395395 441146276 224923356 242268108 862343539 932111711 511668674 855015800 396070195 554319046 917949859 990423937 271478735 904941481 899877920 954253645 880505110 996523470 586371537 720961980 437811998 539643659 463692185 909673634 126502962 921291482 886625295 982452623 705501447 819435568 971045918 972439057 714820000 931504866 301324550 963969652 441697189 872433932 868070911 889552201 879758009 945982471 261984296 351956331 916169858 985489771 100519448 772723316 348063061 761891714 338300813 532315215 235358917 271489701 186245927 310746256 770814327 904741753 335015542 868129656 682677710 963276548 551173351 602502917 619175155 751389434 689472725 906892606 955470977 972580444 776902116 938587683 251426683 283716839 122656185 183545042 98816638 349312535 256944397 417623031 336584876 365177833 97561043 465012455 994137008 999777396 17733205 663056222 31949111 594219253 319289192 340031457 683673944 860890034 240452366 418167426 12719698 487469245 214863224 960362982 174608157 302125013 394391542 588003349 799690997 816651946 438714646 749744459 586250510 703224205 486135484 589869419 907086139 969198153 478611903 565779582 875266487 883308344 24525071 636590408 833386272 995206151 14245952 157903815 989041766 992071110 664308007 715595435 622398071 643148128 506170779 758785168 878552783 887028182 647533417 952303989 734002019 969771457 731558227 740147316 348597790 980803478 611768552 867756854 537461653 960473929 536577144 753686210 678461526 873540630 659469778 833628565 730781184 981682313 386169476 593996540 455894444 722359788 716749466 995507638 283201112 975100423 398582137 505725836 455598023 871956309 112879057 233543787 747538989 906428611 518316284 879504930 24578170 233941070 502738251 618564842 706479340 721366042 96448841 218274807 211878626 458795158 931529945 945027266 463934430 554664393 294264286 926556280 592483303 953138203 457062389 663483363 756194295 774804449 517700599 849764594 534514803 923776320 191770030 808655048 433032622 465978944 850365211 998976745 466133481 881446292 644580904 728390255 354287078 388471964 948407059 950406683 9784236 393345914 147719966 794057511 483358642 769280622 617891087 970562944 485560478 961650886 93999254 863218104 91944991 266074979 572323246 910768094 866622188 968736809 3677225 814647034 326173056 580708908 113670986 681062718 148950204 758964886 463231824 720560315 811223682 963821081 199384157 318695062 643889024 888654318 910301342 972950712 91526119 513772156 189012324 392206002 815367453 957546092 302307761 645361005 303012903 981676081 71344941 602451662 509752947 906380060 717609321 876322910 344172498 450671399 160223541 411056967 978222215 979247400 596533202 890144126 154350612 472853179 640724100 648380484 59876856 390954220 435079994 895369668 883772467 984199708 875897157 881996796 563222969 902388230 12122273 365771825 304504599 313023904 945485584 951245025 101561075 176533901 661585114 665158549 184800597 574540171 319900112 757433834 183696654 439284412 592750487 795859023 496085981 503606380 755059598 959387837 645618889 828353505 950347198 976161164 558849989 847940834 261766379 404118880 291028291 430178780 390168652 469141233 552221662 940571816 362631973 861596316 838134029 903561291 188661775 244768553 300071504 678751992 130199715 361434455 203655321 911234694 590492382 713647724 524646166 799781384 346176205 565129727 834532833 948497619 719795558 751625568 100922238 734774520 868331654 923886241 356649284 520540914 480793946 986640670 983548196 994888722 741341759 910798334 428656372 983921687 220824247 988728630 44191034 157641750 114042444 517408965 304070804 907516494 573760250 922832905 18509705 516235926 381196376 381915379 821224716 981109773 348409990 816859625 167941845 500266963 931268664 968591959 497165190 646761244 907238336 997979724 65584955 838988044 675746396 758589636 886481793 961744387 31791882 425192105 460285194 736150743 38699724 195350597 822726605 887444736 372983322 706524193 645864703 874423943 105570544 660520574 511271886 989029172 950424404 958566250 994604464 995112264 607358230 650600435 20779779 376556855 930885229 958742693 653178044 671221433 741969118 834697746 396496805 538185898 153414108 376521799 321573145 933543156 547195695 576594198 418830477 916666122 670873967 995527548 766019003 867665980 406879184 451244110 38589350 189515484 726444040 872251721 515904161 763968095 880797271 930593942 893538996 980063288 779133700 800683539 726074794 985156763 875719002 998231932 948272959 960819673 422766067 461388412 303425698 917959391 638997396 791854226 144340520 380314988 568940757 629607233 626048053 822337693 83205451 575492262 113221744 759421165 198510676 866902542 976309096 988888915 42581498 373690281 601748940 625238067 699524012 906623882 417594939 797752797 2447513 329940423 676755165 748292865 264655505 496141557 49892652 230847578 358454226 376801897 342183645 872323991 355727578 686728368 237960132 921202942 236296052 580350812 324202778 538247158 707788256 869055110 331756729 676643275 782173948 815753417 172387233 854616093 403471683 595917425 860275984 878285005 454694210 494388893 158580036 665387788 59264023 637835515 207458841 285611150 662190830 901009868 621600322 816314634 409475576 687636183 145443376 268380056 622917057 691203704 347661426 385675677 771411414 952571780 420460364 447856496 336712145 545136420 355912621 432569492 6447025 380176700 993828409 996519847 778308494 986738562 822928720 947186273 570740062 627889212 938869856 944530307 807669550 818047540 252395914 737536587 475459624 927127226 797149140 990279916 978165065 996066979 664462037 842952388 567029783 906672699 558047659 704670593 725045016 782511037 467538752 855260441 606254733 962309711 717567707 794252796 899316632 936279672 340563098 393550988 625003172 655771058 78733084 861865300 325407726 340451190 22422517 745803777 985990706 992961290 844752032 865892133 215709548 807364373 659274779 688419464 518965199 585343938 471507863 690564659 291849963 990685271 199875068 985922423 197623892 232466684 951422297 984481337 492632603 546473746 992896899 999306382 729419895 922838315 889273714 935855418 337905110 806859825 902419922 990786517 369846545 551066192 368448997 404360153 604827540 994748122 351706584 467188400 899040322 926894254 316812914 931754831 713160294 995445866 926680160 932016359 259223138 272626749 258459806 447120551 285255085 299745787 223190483 440393579 5506623 63736717 972521853 982232762 221441679 457332616 626219085 727865325 541395586 626928059 854229123 879976176 920438227 958653807 106581278 540946844 400128748 652370717 562730808 844779588 757039033 842459404 573703344 652142428 565594813 825014619 910650563 963874681 534893324 781646778 584504422 817844001 227615657 978155532 466034379 508859634 15071610 496316607 522300306 970414233 105870229 285798821 46046578 572224946 970925784 974180641 570198281 819686060 901876487 982306634 552047580 641412147 173016205 302120064 623380438 822388733 86775474 769443529 598609979 897100833 887439518 916165072 742445895 758122211 755216170 852955912 626875609 748209156 980182427 989823394 700049082 804515622 753440478 911495351 72947034 584737125 521504829 910884640 957019244 993520882 672836055 836849156 329131614 809626799 744655576 897397220 943575337 946887285 464809932 825214976 354794364 622448169 786442514 909397173 924078324 999256745 157563717 944152679 690119767 958486522 264034705 858180151 49583621 929072610 87237640 336397498 796002326 837700770 321575817 723806071 574004454 642045506 578001687 789992234 972419948 991919550 330463335 600190936 472708514 747357169 458286986 812902855 415782949 879421925 992008899 998527088 268442191 444784131 876141314 935090578 711084488 903046943 929807535 978508972 523393178 600024816 32234528 924770883 257460922 533131286 80406499 438358909 513693244 816361878 964913031 971286544 143853050 734817511 241137933 381437460 110196498 775435242 206931161 373381778 408061534 987434452 344042909 849926233 800629654 992854743 453626763 744436365 417919805 747724830 69036991 396020774 130328207 312307405 292259194 975501475 383564452 454690857 525388446 666228712 816693232 903119352 780414756 963647856 204788807 667455825 190689208 483437955 774427418 823948928 374370451 643401495 133108855 902117708 942685049 983607693 559698753 962563712 714445911 877332490 876236117 982203901 269610994 623035147 257516152 932693403 646220132 952814057 129640622 158110270 697295634 787632240 743585152 759810107 278382252 543817522 411387718 635666511 741962623 997083602 436517526 809504348 860076070 960503548 274969914 588143939 876515331 970845534 13651471 336170406 9391418 122036823 744940810 774195032 656597473 887140815 425211859 758397674 457143875 715713719 765474331 854778965 126269205 549708839 594993986 792675584 670752097 813609155 275885487 734172582 784188118 889725739 581247161 896648026 466152794 866700106 74294573 105327695 386105005 713750605 689869158 965103542 684693195 727292179 204478837 988484842 384229706 635793561 926770573 986985972 911937447 993321411 797081453 823992712 650930850 909833426 636229785 917605001 297746536 928929702 967969861 969955657 298643277 892151919 539920404 813750055 343156223 889647149 273832040 477897644 831074518 971778085 318288558 507239712 41103061 412245214 902109391 953360617 228583604 948081904 701046894 707227211 914997742 989261682 37643540 225579868 798314088 877237935 659098247 836694182 336872141 469540354 35422754 724713379 210066420 852776087 757907777 847266653 843680805 899565849 404301534 504228934 605234504 832381680 283872672 840249322 795465499 892235228 949779023 996043371 311890053 347174169 583345694 625302852 341097991 979617442 853033444 890509722 187425889 209681784 331079378 571187737 671352492 836611062 84854056 945609032 429782007 715010694 569105124 598953924 363969067 734887598 62966838 384481596 722730082 736781256 384446870 915028806 289234568 458578845 196003548 875980582 643038098 823205854 158049790 505943605 920245344 922549155 958531433 982031799 158840942 609191857 646872510 978471678 106000849 940713284 967580748 996459271 924104875 976840257 604478583 816518220 474266555 730673112 630632542 868838292 906130401 926820089 639539245 925272804 983961504 991560257 327230697 899752699 38396477 515316322 437683184 767989600 640947459 684286631 954991117 955414338 635385689 996766636 247385910 276535215 294884569 686435837 155314084 984492478 708347604 851896194 5833533 567100879 266073118 963923162 84598217 433687285 287738334 988073988 58052711 239980670 83763613 133884422 574971052 882568598 152213901 943438456 683750151 798369955 404440532 822758592 405681046 434182819 340467497 702149400 641301272 760410324 189699236 765927271 590206579 807007994 928467441 961746403 716962117 867168744 649490474 742771146 128620169 775279120 725818768 779700139 695552268 702892868 466610376 600388447 162243609 285886063 483804908 593123122 943982103 958063734 486472036 683168047 245997506 992304330 406755285 772829853 10535230 116491010 673270499 702255773 943330869 943905364 551419866 873426893 262332440 404147025 125671359 319717490 776366644 975827853 972742745 986211387 353625883 543952337 131705192 161684769 171396306 518144307 296894706 680114469 503812696 877135521 536629489 952567413 651148643 932135032 892566628 909220105 200294244 325369623 613149068 702612862 935985408 964443404 114496723 840103731 571876008 710413766 188155311 580182058 152582665 652738188 661589188 673941187 279026332 458397951 661817457 881020246 262388763 758035400 294714869 456395914 711374464 740346576 520374995 649122580 3003914 445395278 899181568 915600774 275172487 805266402 615229198 691980593 151717148 440626764 85299302 363005941 106727452 122396189 158418891 163012552 659515491 908541741 307884690 694215629 582941839 660995537 352468795 762688927 305826930 865995579 11458861 883563594 912260288 953091141 481013112 940027736 784479937 986735773 421344519 730996021 643807240 775127905 661047850 780208642 143041378 854573352 822217457 828842536 557856802 621161019 545236069 717202309 683309985 899865151 370177048 499112039 30329339 959277415 188266959 812880076 547518118 755303426 114752748 980355459 472650508 688753342 432363581 627146649 538481555 737656438 261653026 391893126 122537526 519811553 375818800 422982383 50677426 773454632 805023310 887573059 227919866 902507976 945659753 992055056 828592778 830879468 961587012 981346384 1903640 605213573 591162083 700624175 357508003 677274919 248796220 720700763 236408849 274852211 215297359 862039981 407576839 576907179 260791485 975821791 330816813 414457320 733881532 814308670 54959838 668332324 37417274 692701092 722764497 991317619 718050958 761778955 270864743 847660988 606040773 874373983 180547099 711715758 323419276 483112001 199605949 207829945 877107975 954357977 49617871 368656049 48967391 172286469 345063205 523358554 437923541 600742442 731662341 808715345 784216002 988007184 663556339 796061496 536342437 661592957 826672916 890771137 652909168 846950447 68115957 323279456 728143094 858538626 796939572 945459479 456619168 559894205 841367772 996619394 182226197 734862137 331243234 436796701 775994279 940339982 874338289 934785669 253706928 954021797 758493848 874643850 865261560 952990939 892336057 956498601 535344962 767342674 218145631 399943241 433379665 957726132 441040134 617879919 819182769 971896021 915775287 935731161 616681173 746948851 693537092 851818529 377378177 537769836 518731092 946934098 921659098 941165430 518641357 570663556 851969865 953357471 998313243 999612570 340641838 446834181 44872763 958513269 470322722 846477284 696202927 832254770 563229976 831515039 489511795 911701868 518504772 759495371 11780473 911854495 313484198 701375687 257191821 912114666 196057107 290628027 810124282 954590278 656340082 961543786 230079288 474976949 563568074 572553825 650746047 717172790 309012153 794216240 362865152 890198189 38204677 193434992 392105014 898565220 358374819 425638755 961818014 988151415 969246348 981840239 982476794 984414845 990311122 994637784 322839451 937262515 750392422 907472953 428431541 717160905 131800628 174600463 958245116 996203554 847130248 854830115 743113257 844551247 782039071 949504111 534020612 764617480 483837448 538966796 904551451 995244324 274749243 564079789 409289305 486193938 48947620 92351722 521488938 724702913 909621805 921037076 342629940 787867066 236835796 756033273 133037477 281629844 137212734 520980871 222455283 637588503 276041871 768779398 70756097 444179469 376805081 509653462 102773173 427802783 946521701 977355734 707441691 971936042 690694293 745594996 925257895 933523865 264759077 825235258 831436822 857485427 326086454 872588637 408240757 570099082 741147534 854904730 701871582 869483756 737742957 870407637 361939659 585663152 225228022 512511471 232840892 280869919 700598624 955855060 800810592 892174921 127066374 975321752 515268146 940402249 67441777 371642190 61763365 414873352 770477784 859600416 181033463 939128522 823337923 931289817 522083935 983679085 727704950 730845477 87255898 252082234 861120400 936771101 487302938 855886042 229011091 801653618 114894797 521856732 380398309 772639195 667969396 691949259 224116152 666290105 413206043 908743808 170426536 680838301 143918725 971897297 10382259 964163505 514022348 707723171 364796370 583555606 351635430 968636078 240238781 958590892 72136425 956209114 817102651 990095517 535599981 952094675 385994853 858134173 809074542 861561491 586591462 647433872 927290278 983274736 920524935 992654959 114934634 118027795 589203433 989011424 818269392 958581881 830266047 841473858 984942019 998934578 607302207 858059155 453198207 479961347 382010060 508755327 484523762 824214158 583972346 909028966 672490382 992490505 55374621 184272609 849382641 948081857 113386952 625369425 763596798 785756472 517243623 740854536 617836351 678323021 779099257 905160553 309378849 645589486 75085446 501939937 506658497 559741532 90967105 626219209 383929473 814267816 601346927 705532686 270879657 626150247 748381750 878334293 828443581 907162765 765510940 873913667 768063457 920680250 136093309 465326970 630050408 824780503 290011684 675405099 867324806 904585426 677477445 682034326 306133178 369530322 227620432 619210204 306858264 948250444 134224818 253647624 47727366 839587901 266495952 994729713 511807224 855635400 565633522 808525334 355292995 584220266 943275406 982143203 684406569 967562707 820095573 904063298 103944502 344801960 960821610 978434827 391067618 898781292 20025171 883801027 273009874 313125210 566427128 572066949 537213569 668458144 909278522 923384418 626232924 689290887 437213152 727318837 243910182 812935958 565887898 935580147 708094759 901068175 726523632 892986789 687700867 868075135 351942183 926069496 522527507 678285668 950940590 967402391 135672963 259722728 504844767 671626483 295623351 638854985 361923253 815250766 307124266 409739942 717603521 933066588 937086511 988329726 537081730 968044548 643977626 744096637 328738722 769713882 195538164 952461074 829585601 914176457 3450525 175773570 460862695 501309166 558870623 620070398 263621072 743683831 540656244 785687249 410687368 800332471 939942680 980120537 962596753 998627819 51435184 396685267 575596576 884958656 199127025 834933040 919807964 938972247 62427209 748810965 588522683 937374885 938338915 966876746 939032955 994094421 235801041 823365170 217379098 789240775 5728158 629642394 451376040 848734770 976941232 994789430 677071812 735078486 113664214 905737951 869674726 977589243 632033390 916171031 875498754 893711888 13810328 446288056 941818469 952883037 981579079 992840485 73146788 614496426 389044423 497627855 738050230 868898123 884975391 952836374 351609205 759363507 312190708 773663771 922846197 959494178 962231636 983411871 652539614 813359731 588345900 783953346 993351298 999689167 689464547 750296996 374670443 427176347 944672812 963077813 124309149 991859512 85364736 665512537 285142897 379526398 56509952 717431621 244838911 936422275 409625833 428520726 209184067 718104397 597365826 822166869 544177080 925522090 139533811 756668688 460759974 517016532 716975807 899392284 387486474 422121943 260135894 673295247 240035073 296287016 599656031 879005169 74342049 272967576 799556485 803164973 886566115 936054273 570547161 930379732 900127035 997973303 485510158 891112836 105791101 741768568 413882403 742269603 11444523 29933971 314925255 985537393 153357655 986915761 347118226 412386666 969793852 986209858 926483319 996821503 802671423 817525504 904666968 968401560 946340288 994822394 610040124 955544241 199398881 500991682 831348727 977069094 462270235 673489764 308852134 324524739 33679964 812725007 792227402 949999106 489354901 878270340 727828204 989098931 816933753 919203309 364581731 993446950 116981522 213911454 894484055 958454946 42476828 455858747 142802890 650084912 267876555 435047082 108773341 944822954 671962775 888024518 663887986 889675915 392163828 555531523 841774871 919879509 882452073 997907588 928983643 977350424 455432362 930889110 88851977 568329679 331614254 847300202 83196731 419885567 464215984 711641635 238171161 993066557 508745181 649542076 463098531 949678030 529727679 830723921 488397110 721671556 699152802 756507931 499167937 917146200 769618738 914245414 881654139 928947760 757216385 948418239 611278275 999732747 548140451 982832058 855673928 899769795 986335756 992875206 807791017 994865032 518003240 559517951 143298133 824065649 995377475 995619777 141201913 742074421 897747493 943097064 339932916 894938560 287843329 404268445 23413103 717518385 107202682 604857799 849683899 972109045 133910375 590353709 774423178 985468914 914432738 990248859 899172357 957570305 737302692 924117464 12244309 42296820 835048414 877565450 246399213 766425177 24461268 920098045 515179789 531805903 813721140 995920787 697178657 705579409 929708316 945631880 535304909 822075588 343678204 995966893 122465795 744784265 529670650 602484874 619817879 878737193 313943531 672768412 226741393 766482066 135876191 599248046 144273780 850596073 264502800 489703593 765260788 914057786 536096570 726844928 937079397 977740361 444259304 984644544 40874396 590228606 769250939 772697148 436966156 712243136 122289510 753898843 853965663 922216418 654478220 928564625 916342763 981164229 440009436 717101240 268644705 469752912 673656005 967828759 622044675 666027512 547576987 960887128 525614477 914058878 424950474 780713640 763963055 855271855 127506465 134105109 484717587 631577460 897360802 923266599 968368047 996590285 960417813 997080551 526401518 973400691 613599804 680960772 764384888 964725103 333770795 339263192 561140601 572863537 842751881 945789325 478064528 891759051 14438180 951822415 455590560 954582116 132667842 443344248 69288524 647846840 867314589 989487113 186334641 248819916 875773508 889234530 225454246 865653685 936162845 999152174 26978074 344763653 512988176 989930302 611145272 729922662 1815671 189590472 532913880 672258361 431011967 590202298 557943092 666605820 842763617 918235563 745484360 822484987 258290966 441283650 591064134 742529213 639361743 696895104 918913705 986478453 92751715 208151425 122520844 610369060 994116505 997728659 316544757 887647471 584471383 659816582 449359597 473577516 56958466 405617416 358433459 998998028 848116141 988401839 131359220 964987104 185845915 881898698 149038818 968137110 899026091 997646786 800138176 996137465 452986992 854860859 767673017 829759524 155183201 540455367 770291068 878131431 399464874 420631688 741120663 943153237 302474783 402494313 66703095 797022021 848905311 977276425 446545416 793451523 779872626 949181727 709752758 873648107 573184827 956149770 660756220 832581601 325461311 995471640 247239995 653852520 449270064 591726599 650627579 734693320 156039835 780507639 819870089 995580113 684247100 698622333 873369854 879783905 393908867 441986011 960370983 969467513 714406200 881820340 334979562 574087354 975525802 994569074 193040194 933427917 887772085 984205703 222936815 674717869 781270555 901357267 815295802 938327097 64955368 596426601 144741119 468074706 853010887 956145729 211582244 971147436 895421112 922124034 682401706 764454375 905704743 967071495 529113855 896658729 167727481 725228040 488400108 618290384 768328162 956666039 94308383 211636121 837960758 964024330 284003976 566264903 772036985 803942919 500730355 768871784 854200682 968109500 230718568 559865503 51055952 608545469 427968674 849319309 62374897 294253713 863041777 929180403 343765519 974148565 581189085 771084977 425536817 983401488 405100430 514533679 649035018 665469850 795739864 858110545 884969541 942865392 150114550 373753699 450721334 559993877 118380104 929911180 632904986 752490744 499692015 812553403 89399357 89457422 358114076 966022289 824408159 840405006 55270073 236157294 469927403 647650024 566377367 972753799 896933259 943236543 592474707 821778675 634282463 732760942 243442850 582931266 370241192 484082672 878608660 892254289 68454963 886539346 845565105 884082995 999923868 999957379 896868722 959670580 614207740 814737768 577839373 704841333 866948053 987984948 917030236 923677714 248750020 632814655 359643505 654158503 745741364 897267616 944801837 971869735 723124419 871042850 776586117 901044373 949550725 970037123 484036833 597687356 530543385 607875331 592729553 667365659 993123050 998213598 24752810 83644795 698999322 712218323 981346346 998829807 977817850 992321159 321924692 916329247 321731203 508530778 836117281 852000344 759750578 852502326 391496524 784482994 14674819 276831086 263246633 710376596 265887773 666417424 592078332 715885497 103608151 755571410 140932186 742268742 857401502 924033352 179755132 472972094 515103297 851975786 306139256 358467839 181492343 579100232 907774466 967798468 776071442 846454196 139815221 919403836 630303876 877928043 568874874 628156795 41112386 405572014 459886559 883622631 195637153 698578530 402420189 580022915 248725948 626644246 73624070 830325615 933314442 995219977 102000533 678040343 988126707 993081721 78214557 732028442 153820775 722546615 890175223 894582273 969572967 991153241 195467995 475109365 84241309 262668280 421434332 886293240 483113296 636534958 233849712 710989829 774712794 893609706 321683422 754553193 88554605 733177932 439142614 993422214 623142349 891959087 847294918 906973756 664462543 858496683 272686529 950363589 567584835 574706660 166462745 224422506 649134699 862178164 901817173 991562892 736663578 933546249 928321561 945903314 955211120 979379909 572032575 989219717 158826757 551900183 917052068 919768694 951287220 974818557 984393762 992347807 948993079 999305906 57231982 391049733 289592005 331859195 969445996 970193794 727365411 754176319 708760233 921132003 810965822 816125146 721406864 747716955 917101713 992121443 162339091 233157751 223894751 912014797 928804552 961185292 726440638 827275776 876971776 880925689 79759767 191181170 56607907 151660317 180902012 973449837 335643933 987061634 569980776 727417527 491088264 745129635 323245161 427061205 38919754 206674373 141299339 389945872 489344789 986699135 256716175 500297074 158740429 630972293 762341051 872308620 612821480 941693587 514654603 524660216 72583528 115383945 587921434 913946282 248403936 594582288 673771752 707708083 323676068 644726230 139482276 316597225 557026788 615294986 272928979 735548347 66672960 768784526 423049493 475482155 114376700 280474198 544385930 821909198 873369988 892730018 944915558 981329078 288529272 820886284 163140279 345744490 137179201 291243717 88596605 906552443 439507158 678132174 147961447 433311993 773242695 819967227 277218281 620430675 28072727 596876164 371831408 672698510 385618588 893533125 444201798 948849328 258919220 284969035 786672963 999798744 602739696 939242767 784667985 785802399 425589758 651909449 837902397 904567207 344017764 618441250 826604014 994738108 85907535 506465883 783471318 812016738 992204594 999782902 518738764 600289777 248605546 850309273 658713990 753417170 747764608 776811986 655115335 879427399 709894765 815527467 926958206 939407443 563304311 665251162 788986734 846720455 538949461 788668492 108462848 591560103 300108073 521380150 791123769 888275348 812699201 913224070 374129159 396961134 111684039 624072539 847972892 924127513 92501891 240060973 42232739 441726490 512467706 923167817 938204339 953166104 6125838 410810171 745339806 995599285 521773690 604665210 974086700 994728189 7803764 694447127 612441257 805146672 571627115 899019724 776971356 819600924 985345503 997268806 146851223 509824861 575222377 735447840 677671482 859515849 854358383 919390395 563907395 584452693 872035744 882371143 488221812 827092909 774952821 898466782 706791271 895895422 201164545 739251388 356790460 688912162 645153657 760240855 772817154 945790836 483705304 951097738 68194878 400470230 443813807 751599739 248064289 507294893 445193514 466553887 658713055 872575324 79472987 950675183 814618824 824560375 834954255 836204603 19957142 157012787 449969006 729202080 766013911 937263583 415916384 868211824 757578525 810659297 736156439 850531812 230185694 825034674 753512145 898299517 56690632 466346580 160810094 276063085 464711955 592367323 764543727 881800333 450986673 455220348 453579397 457147831 412463171 994340258 460783913 740993540 451631852 647233317 765962150 816632921 802753159 861244444 916543918 944939052 54907695 529949726 462182900 876296078 158280990 350742773 741696322 747003630 392183923 617087025 302172220 661224376 453348632 469155147 225562261 461154210 196112426 357006106 54433985 114976982 105967081 628261840 251900690 965019251 67352922 334394235 415558857 919318372 14194410 922331063 963604706 982017412 675859007 955824393 391915975 761881398 901317416 964781368 444341704 586698475 901023398 923707080 73807336 94682156 281388133 763827244 802303130 991435411 354524723 757591135 715320916 793598083 110011823 713586715 533902512 934788969 590751981 872119204 719946638 778328140 192388045 307260121 819206425 995949645 196384091 518392744 470858277 617315720 169707183 305089200 279352232 285356570 220906246 655921199 574939980 845211197 747372938 885073163 822589900 926804135 245043439 629312390 566515551 886051739 290041469 817211605 759054752 983462271 825728492 970846626 496469883 653691139 831841098 874215813 872452689 966447901 62653505 813993471 711278940 733229788 210937587 809264961 697085683 935146427 773462507 837437898 612034123 842628537 666457918 848449859 625149090 837298096 352141205 832875261 218702012 474066481 647480139 890081963 262112815 442657765 391992395 992330932 712106228 965264744 800166623 921454686 515977389 571081220 480356834 928919341 469084941 774515482 349183413 447059003 123513354 330303291 82074018 238216234 191880053 886276106 999617610 999667790 255473483 977452571 440143630 602727164 29528813 425930277 987730261 998497581 635299633 794048618 47351777 651914183 581330795 637853102 363372562 634408174 708620702 754468375 428360049 544067440 97428627 236516729 557239120 790866731 836312399 880928241 754502338 882180134 184530741 931856768 422750084 506361232 761297024 776756346 779031973 888438032 231901295 397524742 188498902 981041675 604494889 689033186 693815734 898328803 449979693 734104376 489722776 582654703 989227816 997783982 866266578 938083969 185643345 871511810 953858866 955199443 455990458 746328711 885438201 899973444 207138132 759802470 66665402 183192885 27926944 158359218 825137015 982700443 877822227 891584334 699882561 753366647 664586676 813678071 266213424 612167705 206267028 428725815 839969067 995543333 800331317 942131225 458640543 808791357 619083551 943900703 305744256 352985540 256396484 274222409 100947494 853566822 708961371 714320829 788211844 872974745 618087022 950605647 689879104 946924567 883192085 891429563 342968955 458841501 235342779 634127029 968304040 998335683 801691826 915240544 285027955 599918101 63021450 650762123 720790757 847980755 249392878 807291878 558307534 739811545 804872096 922673499 951761946 965985123 856360704 946039041 361761887 956923374 122412071 805500973 220944357 683038316 181243785 337245207 757891704 847142183 174315839 675261420 523020636 828461124 769505688 861865502 82701513 518056178 526877307 829659817 34480102 493271223 63493618 767891076 177040889 794654074 723653231 863403509 237530292 647850754 470094566 934107901 845585281 971617283 151704855 698262481 715168792 771591930 305387590 777104379 105948967 254218712 839116016 940696538 215689065 414399085 972257966 989375635 420716888 502372255 647635214 854331017 976904811 980852125 975010607 993793312 587328242 799889399 567694036 835977238 733707211 893487256 857541590 947312920 487654466 827015317 698305786 780812545 131998887 598756890 633849018 688897693 740445389 864387304 790897850 807889609 319700217 637119764 400336193 960288368 201023369 976302098 781103886 963639920 564418819 685540121 413906567 719945654 865521986 874702970 598081117 906071089 41982829 993680807 585102395 756840448 496112530 511973634 471312636 691303648 242460120 436140182 397510597 979406495 123207 651754862 871355890 949727396 895112849 909971439 825341993 826174044 579937192 942377724 742474057 925119386 738549588 921779177 129808555 279942708 380565800 921224476 39795994 663299844 580496292 969173486 493739786 627714698 219551091 700108179 877658194 921740642 379950329 462610444 354927245 488688112 519453620 641891424 30797781 565727651 955626805 974156233 846849914 881442293 524330910 787305998 499213062 612627428 457828101 677008248 303483664 990894925 773394782 947561184 294076973 307469695 399362720 830381472 999122748 999210543 938381860 999095392 589910690 650277752 488565853 626952922 320133965 506755883 101035654 317493337 674883062 825506629 876423382 910390302 504139985 668582828 230054388 702166750 590824773 624188952 126418981 223744793 569132251 822335502 997030355 997486060 233729278 725540162 663548007 871327777 538510834 822127095 313017528 554705217 153072332 365587983 238580475 600591981 841035693 874411330 885401371 967906014 276908889 710628042 13516652 314253732 865984428 969175850 824452209 945050543 811313375 888761359 531168948 720888003 332168086 730937506 814320886 901311349 663215482 909732139 170548785 637512849 331394645 757001507 860467575 930637618 246737367 432840619 746546057 949986384 927391026 989114132 562155476 667356715 156417590 601480019 222364095 771614200 841784324 869184490 604780326 626917107 239015294 914212552 219224628 555504637 127068358 882146233 688790194 783253178 230931637 886064046 790373314 905197204 789217844 990583206 187364 969142679 168951129 295746611 944183214 951447053 713016516 918485498 56238365 452639085 194680834 814586700 112450659 245233057 949275288 983953363 481174451 661134728 200470784 550014386 430148241 474568196 738888083 994678684 701900226 883452297 578971116 612494632 998773072 999736532 474741342 958258954 612712994 991665759 163693056 566475114 748874445 764969307 434177553 850215041 59345628 563713037 114346471 450577106 272929381 982175436 20726650 39553625 729997271 790272914 196194561 925738406 560556625 854754482 648537483 649305541 391748673 690985517 113935527 423633154 478395180 546980551 564914961 698251373 734385186 821735356 144854826 811905701 240715499 900848599 810484595 924970829 993080418 993417319 696872977 959016888 756959923 991949008 219624349 814111989 404963512 683834262 395327004 713272578 2403785 876567036 287755769 437862743 123232135 137200338 80944650 774930445 924675672 941343159 152903383 819157709 712923024 907313019 467942339 595886932 158032707 415609367 256122002 536874370 434988161 695310446 697486012 881955335 669019484 786905051 546755812 629156763 993882303 994049765 45928147 622378834 562268870 931713857 722395791 789183112 108522553 303103165 94197450 735504448 295982506 625360838 28811350 127845405 708478828 724054601 323666611 821635025 64637990 781351367 935541038 966728570 613985722 864282736 728712783 947946051 979689536 992121395 755916857 772651440 97906672 375876924 740614159 848099835 269451668 878311359 706616474 760149112 164821454 416837753 394251453 627467636 590202450 725810687 852928526 910405012 966126267 976037535 749071473 798021197 359016422 938972147 840968070 990132004 243594307 847181744 902921577 911721292 500617769 519638513 79897360 566414125 933008204 974481662 859974792 895784456 296514103 542077127 571723744 901470852 250775785 818478129 75660163 588382785 38379822 466828813 71189711 982645591 88113186 807920601 522049267 902234356 150166233 306692697 873670888 933483522 544584452 961739789 207238427 315778427 967749575 974476661 890492571 892619767 740168370 973359316 246356025 454808451 773859838 954167880 119933811 966250547 328197674 830957062 805651477 925878935 565644695 577123364 34141478 601416425 863739918 892095072 695099226 771181909 63429521 639379859 497408051 539622914 466649839 798582928 150197407 762102198 515549579 695135161 490350163 927599216 687533012 969283616 825399564 953876665 131214565 430240868 178927846 569962627 480616849 689438615 283442422 672155761 896214388 901673190 775537681 898447530 922351290 963641301 892222220 961703430 146379873 463916770 946347012 993874344 596445892 807049386 579360475 581998994 952295314 992813909 776433880 984964631 987610719 991017237 572855134 676374567 593346986 837323458 437019783 897236478 176140524 441200672 362959778 478759196 785510933 803594511 463838407 592611223 191269254 906085235 420711764 449028108 753518123 880903840 788203935 850872174 246388847 274079856 310662670 334025627 615977871 940396223 909869561 924413268 31028889 455846518 75996245 112524502 496074265 686440737 249453562 254004432 31085080 951965110 491456967 612983715 360959034 460579026 467049598 663031179 205189316 845189618 726406441 769815783 908949654 969712125 17895290 686709651 855886785 883161032 46795134 784632368 86611892 626037180 551902185 960345626 305854925 655122453 745431544 751876078 840276471 857010009 140067817 162970799 541213438 835658690 707287563 979928843 167062433 333907399 518899090 749910959 316473017 831619102 244148494 374370262 488304220 714735320 843318841 882824476 432347124 487317306 343487600 537060546 902977850 978720955 302975299 664573076 731010914 780131272 150176908 473888512 848343708 961844031 982240514 991160349 479235539 896049514 16351791 634860614 547042238 959784661 704929155 759774847 180073371 417173975 443645140 816464547 891687604 933713986 834228240 904893421 720769592 888912038 81363392 822499497 941876383 988268317 626092711 945353549 285351574 890538031 328240198 633177991 291107666 625639562 190653663 866087485 50058524 744476364 451446012 455269487 358404170 855767347 91113433 187390046 240309758 278029609 526093307 535809427 261510111 808459145 747705081 910922813 882855404 959942502 57846161 165446910 24054677 862196540 698878784 709993678 211556976 527657360 988758305 995944529 372275872 976967864 801021381 935727405 76140940 655879611 966259443 973069954 966632665 967221608 670688618 945284106 701871346 931004387 366004180 899097237 943374164 953797839 897431621 963641978 412385992 650774156 655634845 765752048 98782841 539122691 536071066 672849222 19114976 67364818 339392844 390653779 326514913 741489206 582246138 907990527 19593513 993363934 721032211 927962017 862532161 873382828 987488444 997295713 626843566 853229367 294473368 328798099 793315215 818498319 648568104 699124569 295137286 734974362 531292763 534587515 706269807 764603791 95630762 228916560 534912865 919375013 655725593 763442743 653386545 780945475 503723960 740543134 20490586 205225856 228575384 361643264 529079963 614654830 217233746 646391071 878227331 883460155 467690341 922587025 479496163 642894576 333801141 561326646 775685603 833734750 606994794 635084951 561012915 827987247 886793445 970477310 195388856 651546665 917573518 960022284 558980515 946118294 452111814 934047100 192129670 946561054 511548008 571798588 877674195 899868697 727520682 860876698 855201384 927127376 110670008 800349181 297130288 514698541 450246367 742601907 739472326 785309082 360922589 574977859 894445693 908100179 372390640 749601856 33583497 710469880 227582986 601009689 756748414 806783811 214618543 713818594 712212749 821026250 165857843 169407974 592574985 734223299 750244697 916110794 618676586 841264245 535351761 695541509 26181290 75120404 762322190 860321383 8393736 719403874 360065930 484664263 288741572 717547346 116198650 369508828 566701486 830522346 98816678 154111542 683517028 804737965 633864484 753396907 904964617 942432769 137134678 537482372 867137125 927235074 309532494 678603129 351529321 934826941 791075495 864121769 635793419 883927484 312935306 742490873 330011436 879242767 195896261 664186698 802508345 809239649 75153331 250533584 563055168 566094348 275722980 752141835 322245042 784174192 403382859 657234139 112491445 930679357 32280344 620232095 200725788 847517211 486675713 617580869 847866421 946905137 807663348 935005255 812058300 937986742 1027596 703180105 795259292 875794711 159092193 952804422 122599594 786747145 764704346 934557905 960247991 991777053 893891599 926249568 57003697 777528065 204327222 231791393 274210059 759409323 217661858 742483483 426384630 969769257 698727696 829774338 359112864 980753188 998131373 998990216 567590588 790990699 893219681 944354426 750478566 990852248 961410587 995175144 178275266 202117669 653290073 817733788 670751560 702040848 818768997 886420386 182555745 985978020 495830404 582064313 356328414 719634494 334346584 630425201 373953420 593716839 34439953 418459709 527621473 770626888 290652913 667220848 315754211 591907886 800445605 864108250 634081173 882746446 150514370 180315002 102843036 649142678 192567613 239120539 192409209 369906219 886850936 925325099 969425270 986071458 782461318 901131531 935595771 989708431 547852726 845635163 354117271 486314412 627723093 806284083 442592037 585143051 157230010 456229027 358548419 614577598 384748053 860055967 769121578 996129657 402583392 516093002 47207454 982563279 838899860 976852136 381966434 729059542 222670684 756483774 837099131 854310119 290929740 572915025 670193231 715143086 700601342 910289201 172643958 323658485 745275925 961702967 22508319 122644715 524261430 810192667 864214073 930737764 175741337 662868171 614253824 808877289 63626014 231963116 254416289 399978611 178910969 762405005 53068367 237934272 682684236 972982541 91878843 873103490 193095359 424917253 554562745 919033220 663939704 887214074 689246814 709438423 787074654 806661165 587819487 692922845 793398086 967548099 264495567 687705308 819902952 963063025 344732617 684454805 205474527 323041196 219923558 703542158 619255636 935445203 908089866 986273093 458646451 465931883 670191499 999020989 852515809 980756819 35962113 60087316 452580364 801134643 430993361 948704101 463904374 539255039 649281683 873773291 122797555 163766715 256570814 484371535 684693532 860286390 870139000 887284768 27248550 98993781 1524091 412951101 118660596 777100000 675040572 824505269 528976791 898950754 4334011 144475547 235381409 276419476 385973272 601100630 458951843 645939050 27800485 927751440 859007129 964985929 268510397 481861388 140246584 478048145 158827022 648350943 135859828 324326707 744693605 803371801 206841777 878901264 96861870 140328915 146539773 846451576 854373705 931013288 409901916 522500664 638822802 649171262 26927482 48925290 813657044 963898279 779640561 967207690 472437430 759549179 189574225 761632645 284383410 458708432 426941677 699898232 599298736 660039445 297879931 758244770 496940224 809240844 355075912 468934313 243034054 930474492 860947200 952393167 334986094 882749740 407251140 818854093 346268925 832080123 952886791 975565583 897878310 955807177 60426276 209218159 993313036 995085623 432443288 694290726 361724457 501571805 971739312 984003889 287949981 991501060 318494355 771715831 859694012 951397431 665496205 952858329 823080377 855583180 891854476 901758280 259648559 311886254 459460281 723889230 386272991 949485070 492042019 834083483 254247280 819702659 200830905 648636736 754114918 912695249 365766083 806423677 614951901 805498823 177516555 970238757 649592488 812203662 688722252 809873023 413449117 721529852 301584044 410385025 654760191 894215942 774704598 990678765 396368730 968116571 172899835 252091358 818636954 973989849 353908789 437168349 123658727 611159820 914163699 966476257 252784712 840899448 38388805 231317038 492381117 959767220 678773694 765705957 255710850 718593918 574089261 691552978 593176160 883195931 998951946 998957840 913453371 941648714 756303209 990407468 290609829 347208463 87849529 551993904 564083494 642962689 850234407 934081557 786112947 833848883 448804581 462636496 637432263 960061028 189254559 523321445 237349533 524926945 569430059 874973113 336824508 341460299 518025914 718309603 366787600 743929989 444407428 625112741 3892187 773251228 371726148 884649160 327757529 824169743 207183037 686890863 498111710 665043577 494800538 794612536 961712723 967622977 990457538 993902824 743974652 780130332 312119132 880420731 245907152 741733134 534345911 729409819 450145127 881065076 392856317 415404931 630190042 673178343 745451155 880227044 126646415 608582016 511321215 762915699 704725060 805910032 535401024 885911037 161573365 820563083 636351721 707273516 563472394 620917726 874108259 963718345 680056483 903680653 199387484 290102024 265240582 325603546 475293182 990355338 740828475 995456812 923390048 984295922 332405614 457607560 519678007 761063458 433922929 620254844 631423843 883073936 649222069 741467178 470618021 563968367 526729468 879493198 911903206 912536371 425527687 588818173 263769886 658075936 95414956 459910215 995911098 996911531 370850880 509951900 407149340 618271432 942750166 987265546 985371592 997356900 337838350 524116685 498195211 895236717 2602652 741012188 458368925 741517545 677568349 705897202 931428146 985777647 669483242 694014452 389837566 815647567 97389598 257242873 716628147 833136571 933507404 969644992 340313069 962650163 615737215 641645708 850628808 971976584 835467642 965373905 697656242 931853727 854370683 961988699 909649463 993607701 794117284 898909478 975031840 986175237 960149813 994895899 895955854 935050823 520513653 565753002 543471785 794614493 447211757 908183524 735702816 832399246 800292360 963899676 210241209 258456992 538416198 581020878 328713598 589496574 966061643 998808014 109381687 765917242 435220725 754384509 372565459 434744170 553316315 772690013 808443012 874615760 56890179 898579712 367071325 737463281 343503594 706218088 601868695 691660966 663548399 671151839 306832310 731608424 194844744 623456972 864141799 903713034 655280617 969905675 91778296 672736880 818565551 942504211 486780278 573051872 451211675 830463297 158301937 581810849 720015792 852351278 658053673 871824481 382079011 774353903 111974656 838457267 645660275 872835635 269805424 483749276 759973497 971755114 279501516 586835024 334009237 973064839 155944593 936516534 287351374 365709956 406618707 535988518 448176699 727812864 835905084 953813221 221396893 546262927 93634140 331263786 551846415 623633206 402990717 996812147 947932559 951662238 634341080 816246997 40335430 268056865 237307732 264678682 956286872 993710640 795464455 893492077 304329877 587049174 11351874 713087881 758480583 825678830 309664165 796618918 759179143 847936059 777764376 791040606 801311918 910168957 170365476 434729718 877407035 922695492 591913196 648616968 663369830 972767151 51213424 451630828 765298212 923563469 525597691 931812883 444004793 751855726 398963885 627570758 36282130 859573930 677327195 996050495 150450595 706465059 667428447 731150066 297499073 464165038 671818424 755446100 54224663 575711236 593126886 832212933 247293418 919782274 45760765 440148466 446945782 879832416 923491637 981576717 290029445 920073009 605808323 906251155 128181297 498148147 148212468 735895358 897450017 955404715 282414923 981980912 223969044 912572775 796446400 928584250 119619254 424650704 783014202 793868701 374778525 506032027 916864303 964528196 414628280 999943770 327617836 951896796 537250575 971137169 914002615 990598062 361109664 904928091 241662520 885140079 700515185 814362795 17408145 114352271 269857538 992063264 836553776 892323169 558387292 642916435 505771975 653128250 948726658 998099056 147098336 530110054 490524946 665428790 998044346 999238793 282661964 640225427 570025201 692473367 552401965 959464997 493815169 996346821 275585186 385741320 336101700 462156413 591864358 752238563 153468319 509438287 230848377 510263892 148050700 750813182 22723895 686549890 575843927 928162434 200458092 553776959 113199991 883282559 607956516 988757379 495539733 513256842 47522119 512974486 619870446 674393133 372895007 910452012 383207486 725885465 738290587 821016561 751370797 891674352 851686084 978010615 627691609 657524792 921701906 999800964 921072756 988829567 277669414 778378179 115666564 708988091 803161605 872250207 129715951 171134010 790405677 829233282 484138885 594086592 663329331 813067198 961947267 966278647 689435766 766026964 973068217 974511865 825925622 841637401 281055124 847811172 260067962 820448428 356780174 542908437 315217229 787036052 67972486 700840680 422543773 994467842 190058739 283241086 651916557 735639833 640185611 775831390 723641996 984204584 151262200 303727678 209990696 964320149 167236853 385003301 881388457 991494662 627025439 715212654 927208351 940666382 842162478 932291157 419356054 715266000 472515461 577439641 354204373 654836617 142214625 672836050 234290869 623688015 869272564 963848080 239184889 755006510 552046997 557350690 196706131 877596208 50193420 637984548 520450654 702936081 281595770 674558722 336665905 985830706 342903517 907374874 685215145 709979790 769420281 927854381 995505399 998428398 181623446 938298532 250742804 686400365 110246884 951849255 552055985 607421220 515759719 876485177 314660765 450764807 893900916 985531032 77968673 303720285 587731876 839400666 130104577 391742351 277205430 291240369 454640846 980041206 557187632 974819637 843562595 975891496 928747015 964693354 225819716 335238468 893494256 972453094 557260798 828235728 216475112 644275837 275272448 427673620 466954061 726985098 462063269 687089425 470554641 565970730 979969984 994688043 639605314 655102615 596814853 861448803 808216599 813621810 521113054 582776937 820523870 978847820 387834901 944245279 776552565 916345048 738484650 878553758 884374119 905780347 285099249 814392031 957866521 998557112 95505275 495385896 740245637 914355799 438845030 950032073 858835921 994416468 692767432 698330454 40134205 648765464 106476281 639986088 731527792 748962731 643894079 989526647 300891996 965821932 106167069 790195670 723352170 905248326 500797943 772269102 658150633 797840131 889383393 892730531 982399399 995740304 324091714 858000029 712457756 771447846 990288904 990881315 103035956 672447332 861739056 943525963 173196563 215009323 568108278 711779169 629188436 891372313 4347518 699834218 934576268 982440327 956539517 972645407 526526504 675476173 586688791 587259599 85574678 342349105 19754094 901533381 712225364 793242872 184638106 396417433 697303123 735764716 306251519 920029580 885557601 947618335 597721730 638929694 442610590 739289145 522736071 985190821 248542875 906648546 56031308 314507527 211001827 747177533 117023920 192258597 366869551 668326818 603505430 974060604 2419789 937883195 377524444 404315990 432735224 697539625 641670502 835692935 204542230 646334648 525253811 797605387 652857533 733870684 341233599 490614991 501272721 533019004 931181377 941561777 54908033 670118015 464801240 934126289 330888769 677419568 811289090 897857052 881839080 973996206 803405012 886081366 470985972 768247355 168941054 225269744 466634642 680668415 709856675 958997653 688290281 857140661 132770948 594548984 744500016 902068019 468241511 972447702 568917771 759309257 628364509 710511165 508225861 995440959 844773635 985052553 892657525 992551551 190446765 751897328 82063042 384607395 102614354 533294528 501465151 661916357 173048758 176034935 812099142 975943359 244703940 631856502 749443793 888487423 814238996 865157180 660514589 932010094 144650798 407293890 540238222 875162384 466685953 843300939 458172922 498306410 306619971 312867275 738829298 884427844 44464145 243265992 652785237 993381494 920629249 933575411 442288160 603810832 329911614 854918385 35812238 598127750 253358552 574771924 338632746 463299915 284074148 363324932 791717600 820580666 694691564 736797176 61620453 87567352 387781096 774565937 921244345 922399908 574197499 950678085 49913505 510158522 742622490 786934673 92469749 760447082 82832922 995471998 794296512 891938700 878100192 976367433 2205809 330837667 468129034 557572738 961821703 977676800 945434978 946934508 762793440 981842199 765552066 976026870 983137918 999613954 896557268 976843776 695886297 864235061 919651890 951480108 558739769 732603126 313768690 464233068 315113103 703701903 855388304 887419668 996522206 997796391 344002538 574142883 980250451 985721928 981271525 993025740 913094502 935285613 568105095 947566804 344890320 793486415 871189664 968251758 825043541 941455236 560012730 761770748 679353504 953362634 729964395 889721934 152668475 542730350 432949312 524024667 91364337 615257842 223847099 863631389 318515912 876676373 890693799 957255855 119628771 960601482 792096869 819063093 960480618 960837677 970293949 999704346 895323486 994437770 582295113 655506261 96953605 175493691 484383123 865446639 647283195 918812524 22253177 770174754 472967728 837264795 8162229 522318823 985015839 999840235 444821661 677689141 622319539 690843745 605894320 910948178 435727038 698023704 21914172 649242475 185669468 877503227 918068754 952397108 621166127 891436607 874056448 893758462 998176738 998198494 118867659 416132183 946002970 998311392 766000808 778169335 894975700 927484677 344838236 792698779 188158641 796416989 643739560 900608353 41844072 699448287 41569378 397762745 24475559 494249389 493031665 507456847 567214399 881097345 615225718 839230473 670066548 935707187 462514096 675656004 690541863 723880288 511077430 885256538 272537794 325439159 886565744 931972956 562465115 713050015 263401527 984322956 423472890 636061318 214931441 740675628 824643685 939710831 892617852 921320638 191266498 881654373 504744880 660743606 593228120 868480152 631725908 689933034 571289229 984151934 394959385 595417226 66086871 857156181 5349846 909173302 542361319 916393130 855726797 923624039 280917620 653822787 113009775 593145271 421008153 644790877 506086773 752015244 600368549 678866192 352462231 998690445 435740184 542196894 826949595 859061962 135702891 383725323 468666827 827834022 878675008 984071474 508923886 896859119 86133898 237113151 367249214 663014078 917724983 933483025 676244017 974677019 83360382 470142039 432099911 782663392 263840149 512170325 552873939 557059754 979083235 991889811 93319334 993164752 767846079 933688469 134988714 778681057 237117245 341272272 65712241 768279322 307999241 613907979 926579132 982604399 532017537 797830010 995928603 998018306 616566417 922804437 772198679 923362276 544409824 748837614 945270350 990409149 456474820 898645685 15778075 683696044 55661997 94047889 822952769 898267538 149955471 618747574 841923868 950680197 47268714 320920435 991729937 999763447 362018199 800099404 268265758 809435685 507802097 939109767 338174604 940027191 499578933 864308970 244875543 522341239 496940063 554516723 331275440 767613483 126558912 647314324 233294705 502850259 603208883 659799301 483262287 879931580 99748982 539496546 96224033 241998299 543466771 733769494 182023168 582749386 280953779 340769041 31961027 629323164 387490477 688710443 346012021 934546360 918158963 951023915 817138233 831531627 339900691 911137752 162706457 885642056 316082556 857794394 101903965 995600739 345929549 500506932 916904741 964631545 288909318 650823763 670231111 950144298 265379285 591498998 8238236 23088191 142381742 497793761 258612312 287148960 613691998 696192604 134801882 868795971 701461376 794047500 195988707 318721833 84391009 273553899 773635227 812224468 344213593 839484467 750833616 797064949 603223223 838755297 464166808 970150920 742351880 809330503 802252102 964742979 356822926 493791121 655606159 823042695 791677868 858761419 318554698 327509650 582370658 622155868 508227568 685071110 533222759 991661406 959923127 978691711 302133192 463087182 921811987 967097917 288103228 409455161 694593384 941682760 770534715 916498079 347055751 375523042 390972663 445976518 278257337 990185048 989600068 997235069 356257397 686142718 189136939 573229620 72295098 582110070 767737475 777294057 787086632 993003605 695646293 724228876 2038824 870206512 514069263 611201682 413509853 699276826 873415326 897736425 934466324 956362136 497780875 981668642 523282699 588421217 767772571 902256293 130572647 624584243 139512945 646345241 538170580 916663036 443659354 703314631 646572930 784528937 46030204 685448337 767551909 972317275 347296676 753502146 910334935 974835387 266696163 873660143 60332476 705286635 982639913 982838581 846988933 989624814 310582450 311498036 496650201 701999145 493928320 573525565 362549158 461948619 815649594 824598641 751838366 901427547 573533476 623334189 972417582 979667133 451396022 871174886 317490163 947022567 109983162 934353484 799786824 874373755 292552142 911041710 431195780 721250218 81781618 896672149 759504416 794460457 351533514 454694796 516690133 630764270 343519912 609136367 660059348 748391445 289550850 502238326 332446938 433308383 870252930 903113490 407590117 735698617 796484142 852163511 275348607 759050730 193494110 312035015 106041275 888379106 257584332 516989080 447911511 451517867 169807743 609698236 895376969 985725301 463793552 567887217 162310190 217466425 971746451 997411551 22821832 770909744 346384890 428119961 344527505 856864063 786308222 802799439 147976261 539683626 636743924 881849575 268759108 903321374 722967094 832684917 808617617 942041651 711907255 850643702 747324748 832061093 685312997 980739854 854321110 990768521 521318663 962322125 430937598 849483818 23401571 664689795 286830382 848767819 78397673 961008053 589363220 847808059 420105052 981480588 993581801 995964592 731602221 872771858 425683715 853020923 650968674 908881206 597573245 622291955 437623148 528859723 534799619 808763069 47395022 129724344 209203275 866255867 337505882 579049674 366027689 377195458 84639617 707029689 650092388 651158390 292545023 546593237 840757000 886042439 758044239 863716925 369926802 673851556 71357058 625686750 913484517 938088791 395473505 649850471 659282662 688832471 818236176 993541392 86044235 486264024 139799542 275087345 368189230 628254255 62513048 182874707 715945716 853578716 207045709 709628116 451509894 913526162 862454563 882105473 385041433 730838994 479780753 632895034 127318867 813650169 718823879 911614899 761326332 920742303 426488088 986472800 151874944 760302252 208425532 859319141 166853984 568690302 790601504 953621999 900511045 904582707 486152966 882662381 495689959 570215812 428447621 599642443 704699025 732725692 600978143 808236041 963128531 975006772 450749091 877512535 141613892 650904401 476853332 478238666 554977213 966433310 884577726 960498500 381558554 652304410 542363433 943880515 220054982 801025544 820016119 854811417 873618151 897591538 322368814 472535270 349297283 553425065 119743231 157384727 440135061 956703742 522250985 966823180 410315716 831819377 954910050 956973397 332073097 403220032 581854600 656584594 281134683 283147711 13475696 926472377 549443661 629821372 122926161 362573388 252872070 951373389 138466849 278148213 965365500 975810952 814242122 816315991 506212025 849911381 364556794 688189187 709474561 746093824 877121913 955647691 688643988 999092296 630063301 780854540 631688704 750857803 707720285 837956223 912621378 978204496 16955572 117377083 297469698 633553432 903107314 971101551 701056119 776299522 261003528 674746113 218237642 595620212 495049442 552700349 625315101 749769497 609901014 980262751 768699094 912944834 523095518 889786847 495373626 923731231 994345267 999635939 13632672 873767072 160658612 789149829 969665756 973430778 489234409 945482453 1608808 749639873 841914443 985486744 429305435 658444239 20046042 373723447 843795119 919980101 513385210 651442774 586060877 611860572 861985471 959805701 610011888 791693691 182376929 734065002 632342845 726984610 520606566 783140774 44582541 293432705 752603049 784024067 666539527 808245715 128329794 920540023 833452857 941751051 416355366 564192126 517653842 823807579 977111470 999948313 420604832 719470793 166828837 640917462 976951840 986177608 54352358 797866278 569180099 740773886 259449564 705652369 371443715 476175247 930616787 931964574 883072591 988657246 723246744 920505422 685251483 755202461 686315042 788853989 858883455 956476657 195743938 525131571 717264507 797325461 991399337 993830225 595448544 786189272 481108868 854801592 817502092 829180187 702585865 821645819 686017711 914475196 81369917 540715718 698198934 883925152 367216636 613287562 637690422 639277696 683464710 738588649 732859956 774695722 773177425 778006001 973175454 975371116 889596147 914349405 217280438 670765133 796738099 816548714 977379805 988344779 411316873 875334470 248078313 767037145 579151240 668071398 932722784 973894254 238869045 413350548 553445125 607679291 604791771 919498105 27387141 442948973 540875605 914769609 316086617 825031069 910796318 940577685 906614197 983312827 876738535 911116161 829371631 925436945 744146514 794815302 420376066 641448885 973932730 997064313 67315603 260674237 993820985 998160560 536053739 789390799 238079105 741586445 975107409 996985022 405080862 746908902 511114988 747093273 118109884 901338898 193004888 478445591 635651005 777736293 519945959 523878713 161635776 639946229 40540781 622188993 634226170 945998959 373293235 469108001 330060745 974778991 540236474 918056764 656350556 883248448 677223304 861763474 478034420 956659947 224333943 546279474 740472361 768223984 445163007 955298325 95921236 914765470 587712619 610758600 19655127 749949678 446703512 874422816 79201023 446020514 939172431 958504245 874377048 901881044 329713179 562532144 834522182 984887265 883376902 947158291 401778416 683593989 612842316 867276438 323531805 507256340 35576309 679620344 871193308 970585144 508246762 707786899 691661315 989641552 258760252 987563413 65219803 456264219 900511602 940002280 341545705 801885689 664722717 934149393 691441496 772381202 826216861 892248612 626182944 659355092 256241457 465370665 431525428 679596586 631964750 970568305 154570180 449146628 397687471 470631672 223513116 560368162 775003791 914694519 281561547 527125234 372573303 897576106 525566578 863683999 526223030 563225164 337339744 921967907 796637568 855711589 493351171 966808777 679253428 915538317 485514642 746498089 136400496 307797269 125525604 143475562 322728141 436304958 818164767 911023969 387913277 625670537 726090973 783652957 926853320 957373241 963270074 998472049 931869450 965547693 155667473 833202665 530851583 650808647 563000717 901197571 143259689 251499519 478744343 548157262 148120460 634745185 211770885 824825391 408282958 907670774 374561943 447481273 998684941 998751416 134249569 488077907 98470211 424390628 919937398 974575112 244073016 673533232 933257912 978962909 513167972 628742143 29061182 656062450 350922535 624106673 26262434 358166598 366813346 655956126 299312121 748264637 123774605 132493942 38457346 347234144 162392585 962969558 730573708 775394507 776795084 891538740 615432946 721760162 722602668 931673171 928568408 938389638 824613526 877800777 176148917 974947482 581981874 767469889 987154947 992520718 494644621 596016454 652461405 858720412 889422758 932242739 536078599 817602140 595583589 695043244 856042068 934835061 411651422 902644818 31545628 454284350 989473738 995130491 681331425 897114353 381375955 662279795 604432915 985651161 576935729 609408787 48730181 841145666 4810597 835264662 136693380 366540140 294016085 344892256 157362777 918292002 155973098 410794575 477756244 634017121 627379448 640541625 796809034 996115560 288470261 825992304 703575209 883578425 748455400 822320203 533012846 969067464 400718305 675606677 958812290 995505194 628067665 990469972 674012236 936613694 929157300 997891865 311218794 536917184 947638028 995645815 423799280 714121270 801420905 883466455 838224106 980321754 103530599 274353878 919861103 964850692 3304687 328956925 422721090 931257730 759223330 999283064 942323392 962279816 158585361 221933953 170600044 434864051 852867957 930822433 57255233 298507448 304552848 441374189 769973131 794232993 53156059 803884851 562410171 948799411 797019530 905686818 864974124 985652616 944185207 959822208 810245367 928272110 954807032 977596834 763665003 997860662 931437995 980560045 761348992 896072370 691676196 913375711 481373799 601979969 886313451 989816463 269294996 924944880 421595312 495874840 328951124 912950615 457097659 695817652 908456031 913714245 538260713 727309784 713353370 947955950 412013418 874527084 8280190 508385534 38675951 113343050 915850986 986335936 781356777 805193991 175381725 905711919 139493536 863862474 13607025 73794441 894869817 904057357 777204968 794809562 484507466 504988392 835585435 870387600 638028542 786136678 133280737 541205054 185360200 189015323 960126132 997521959 534539146 712135878 324577702 953101699 269687459 959614627 158984405 378555818 372403629 582146823 127495114 545519306 170128640 184460507 12724778 118499620 322180595 540843194 106077636 349852411 444974606 607718464 68361302 424433450 203484471 346788061 548089066 804477411 855239348 995838706 475448429 545566168 889402121 930181870 289801584 497261557 854434146 982133656 43798498 405053367 318940868 708549584 57984248 767071297 724663625 726720120 997572276 998523314 231961496 243802568 613616262 992263403 664079995 953708625 640153619 657041903 764547113 774742480 713567526 774786967 921826000 974521726 257118351 780825928 939341863 944220370 979564232 997841718 798794269 870566867 910983533 949105043 931379824 991127140 531002104 994949135 16434197 856637935 947402830 948818265 576990490 889965279 391996599 584815572 985764835 989857647 71206762 364363377 136045180 484846111 614194108 980284326 848998948 959048653 530395582 796611000 368368816 771141353 609484819 662951394 636694753 731776903 229039855 936701333 697642551 773408376 282440970 959890965 635795126 664167555 825927535 878499722 452753217 970985844 226609956 592199775 461678381 905190773 325882365 635646095 411790524 665252079 161773544 700430969 306252487 919422440 723593457 931015535 108815661 928611455 193198651 320870721 515617872 933132575 532641087 931785289 498975410 748514476 616275332 990375952 191761079 801791377 976457940 990523843 377337652 436263745 684373844 949098987 640934102 994135594 556720478 583642816 667540770 979395858 165682342 306617612 143066794 464111729 861770363 890882455 538459354 660630948 895953666 999138817 793570588 803662053 633965267 843902720 199585333 772877447 847131132 973003155 68620207 771401020 183972207 387772473 550938945 632975619 911375441 986794973 677389783 905242677 237958829 764758477 416959771 579714755 782635076 825043270 325737062 675573743 756592796 772257809 450429050 960078207 221557302 931716900 709875588 975073434 910416962 940842292 952851895 962295037 162361550 581293812 604486583 900823978 728815583 947830522 904774496 953733478 578571326 716367608 860880017 953797912 637187317 691664901 367759752 373123521 560341825 716440698 620882720 884105279 383972964 407044119 514826099 521438475 160914074 440903021 944081796 952758805 694865024 878853927 821235207 894500195 788075134 838016358 208282329 342091717 549930290 944116736 270418996 974347565 889684538 964068577 905861973 927425447 741883432 812331172 696847946 980697054 420958561 523167376 71422711 663927634 622667933 832432792 885580557 962751031 41919679 50356796 405467741 578332166 628874083 708355722 458165736 841012039 463209877 472070857 990329943 998632326 652789766 704926769 295664583 896304485 106365559 559054284 972709296 987458436 895844592 977891902 833072361 987422287 311459033 427261107 795705959 980058556 131192848 140310667 831054022 924198649 97473256 105991120 895746000 919510003 210260381 871752729 78422688 276390454 864950295 870205658 454423887 908495468 214788947 704764034 150871317 442583555 911348169 920065604 924049691 927498844 68009582 128940725 36997278 177115867 869851 526356663 634645140 789433472 441681009 993057861 994205259 995844100 620609694 811653382 842844609 952748886 598252798 647307066 125198199 474089055 250786955 349182405 610910650 884153155 276925185 854332598 961142605 975675738 174477919 819718347 423553367 871994563 248139998 352721931 280755997 903110395 976802704 990806248 755817801 815581673 732687553 925700337 470575853 695688630 236080610 376770963 642193060 664881511 915231332 986359452 98311795 368761737 30260562 274589227 195300975 833093823 976072672 983799877 919601486 938115167 663378465 839013172 390245037 697495451 611160087 614256426 214683769 641958978 782421300 851061675 61054373 349628700 936243527 938822967 517824995 925943597 337243769 757745684 952028026 987176427 471519842 730979932 331276529 343409580 266126401 869171365 247415390 837410493 443154357 594767233 170751706 785899209 954012299 970143003 162541546 751342413 392461194 404198125 588865018 763141399 83494771 359233219 700912241 882601051 997422969 999371273 324407826 550713603 762417640 853792843 224381556 607009151 826900496 942817309 685075346 898717194 308174654 869461977 923618361 934158684 846148335 908476306 523150060 933214267 718099557 884502823 829534417 940307114 352164796 555773885 260730499 464177244 318502651 915690652 532623485 964848609 200043038 232854877 754309489 853222628 45871011 583894336 139331668 572771338 884733772 958151620 655258960 667317027 930522287 993327127 492603768 609069054 624200276 646686494 364102713 711588484 288573492 944195999 976767589 989512946 780254567 890147096 933270549 947769411 103682889 692120530 897720737 961106791 757963277 826793435 324238089 421344110 107933583 411367865 140406316 733560005 10998398 758907919 873385264 971874621 339890297 526606780 300266673 936531388 133625849 724138487 732592908 982333170 408392623 770922590 122887605 730134950 96230403 815373026 224617592 794758375 180080716 317226159 491750518 850212655 388626541 579148150 901442312 978296102 77026529 600955223 162832979 415012752 55322643 871512592 825609369 867687759 924695183 962709899 273905962 305708364 962527891 988979585 387982269 517081196 581142268 582674098 878696545 889163574 799830763 803498909 933439607 949300528 370898104 581138003 441237020 713202806 65173618 309812917 827382309 874100519 426039226 673381425 540977614 642294320 601926251 795171465 580435998 779078743 105687998 364810212 240900308 866763902 49468915 251796560 268318774 816474826 847673544 996525113 729814952 907670354 970256443 999734920 659896499 938746344 448114608 592214431 593745252 942309156 911643661 929217155 600135545 810352504 820410255 903063652 458309163 621762979 903644909 984494647 905707211 953423347 327823603 669767971 601730196 617488218 228100257 368059027 749015581 872184783 154255093 659157022 996599406 999715311 365169226 774906815 504874436 894690905 301092648 996966400 416992818 541276800 713896223 988972675 160061320 170357078 752893695 940452137 659754109 811816486 51485700 91552669 810617643 984930558 856315061 938323831 496746085 699850372 502024333 638656007 674902433 982126674 914593469 996352573 703409010 853174379 549220269 700939607 170839304 818750748 508835657 713892246 362384581 606288828 835044282 887516921 107302995 897185039 271634887 754063756 156458679 613313957 159786141 627785023 948897611 972181216 867603026 986228758 662821310 678361406 796729998 928976741 2473968 183743114 53594108 444746969 966867805 970586230 345347484 707044269 850135628 992865519 26251720 315060014 595086081 849748866 887935790 899856209 214451345 625939830 377107210 814560821 36882007 270883320 413736389 585774286 699057910 793514760 717181552 721475158 817687444 994667804 220981888 587362789 465137275 592644610 269738617 799622392 298474856 857563525 362057929 701368743 64428812 886623621 71248360 236808716 667667834 775029706 984990314 998418261 852964007 864973926 566759427 835421639 577134477 731812465 592217932 810328364 544741005 987686771 295523501 750140483 461158061 645098766 637778797 781989281 260847738 829043304 875609721 999846123 158107918 572028005 197871188 471421830 453652830 615660456 953802860 982963595 234910008 756051744 736155982 796600167 127129208 353809155 873846252 889679948 367262208 799593207 850541747 885400853 90764291 222126448 324697523 533708186 766049436 997333622 284807064 593262541 212207229 610614199 682122951 911814787 110163488 409828674 110511787 113616413 9814041 275177847 348368448 395506276 316215581 889817280 95936591 883079583 513818538 687255924 421632706 443445209 382182440 916301751 156488497 958691414 672951921 898636812 271055667 302833919 943850797 976248442 347213944 549281691 919807025 930318007 257346527 636842277 886002901 917663867 677126375 705099810 369438217 723305311 650095095 712728547 275516156 773781810 93543385 568185904 713589077 851971980 996118647 997339512 316730310 583294005 996769269 999910696 286272501 614387465 27325165 355861150 772263585 804847333 946524669 965508097 956667966 978144769 775595879 832682854 362036356 455853918 726925723 998388347 532364508 872042542 767528525 945837467 140856301 390250850 356779299 875895991 690109503 723950343 401897490 595649325 306250376 850343277 279969945 379045812 920260867 940618679 332923152 627481326 25940975 759698059 478417609 918774276 105836480 150010855 346509207 483608202 804574987 901910247 780604269 885822421 929978277 951989040 400053386 916277571 742637579 854683938 983724445 983980824 812267794 891552836 5503646 309363110 483064799 668627240 576672780 850392369 439263413 779743619 525229809 835885734 638494222 889278857 843774998 998674514 918548190 975885357 507259350 693373745 837850093 949593483 118956877 292597353 453650451 897790413 131267466 808660037 572817962 721816954 498648868 893979749 759812111 789339578 932078734 987212825 568846013 996618286 514183848 988470197 845889270 883111404 410702920 455563080 364997977 387189463 714924607 956219399 580303379 980732971 590358227 934109635 117337732 912877774 524409559 997451884 167520706 957360944 193067273 767642293 943752400 966402689 16055856 833363295 76616537 483631057 240715316 674352980 368364563 484314061 226555142 360670671 32929691 136528134 476237784 805078486 445576219 465444737 230350050 738847409 590258007 720930127 345679569 700287038 671569985 789923733 664915085 831681044 281465774 644879128 255225841 323556030 62684800 650410425 141888121 429586266 279176664 828670857 411668024 477633790 292772473 469232850 437205863 815339882 115195403 731658958 751083396 973637327 388349486 592756583 661220312 957797756 309973322 731827749 384678247 870746465 372544227 907426035 692340967 905213785 164459338 889971464 769975688 804895090 453715377 799274538 107567247 668497304 884222350 991096917 714955257 835488066 675844536 910795509 6552857 618412464 876015292 958325925 620701866 911544926 59277380 435583880 662435535 808871844 913965071 985057299 769049647 933037637 63173359 623639531 294484067 620676673 33722407 923164135 808758743 848639995 268753309 952575242 275982935 686874871 923675317 948669022 900476337 945025313 262954780 533444981 113692749 926073259 267861731 532245264 552807885 912396799 360153354 670408112 359215995 439325193 685146186 954272082 318165867 660435539 74987670 119187795 229252140 965761619 466560261 738846121 249703177 959704902 932923070 995109044 857437405 913181190 731775124 752583261 205117461 772643161 175801768 620974902 22179513 987386510 746263514 759213636 543893389 726776359 53200468 898542659 126855852 392213081 986052589 998583567 146890163 632295337 699102583 765737951 208577975 720115312 565966346 734235266 438603734 490591676 235275063 631462928 852823114 862820726 996575305 999242968 589028878 832723106 588884017 829690322 903314638 985683216 135644408 852803686 443091014 939091666 245666706 427049918 444480463 489820609 308950546 703827830 515418187 821990707 809261659 847195230 646233124 959674835 356610574 490246971 233081961 448419972 99014453 616143845 369453647 466726819 209259349 850512445 439040053 736521787 128229003 851091823 747718175 927906087 868911519 880153429 570246740 691038682 679650751 857825860 511252668 586668854 580218425 679013774 163875645 615794804 846058666 877918850 948807989 988182501 758683561 992289160 600717627 814140229 247788933 971068570 733012329 958164516 925102104 933047789 138457620 572077239 716061192 869245236 524640198 990723826 34449529 680029792 952857659 991798898 416404115 877589983 173335542 505552074 77932879 171189790 714561891 863257650 718374930 964774518 688003321 966673777 127499369 280948981 289507170 434275709 384481858 564344696 752436192 761035692 607419329 679369202 591049686 700656588 308554356 752645049 687109693 954254631 623020622 668849046 988105781 995044533 971737807 982107096 211477403 217647882 412659203 627816245 182425321 252601835 185292839 920245502 12936819 46526880 556229478 889554628 176627820 911225218 278815534 501950929 673996040 735029680 284814004 994385961 411787192 945344229 794345355 973516852 143605041 203935369 314422797 501586416 924147225 935527389 698512921 757380920 600888063 833394946 155832047 250293319 409215977 437853390 22278832 435923232 444241437 584495350 889616561 964353709 726410139 757048348 841096485 873291531 855455291 945368737 679509533 716004471 858180141 997838709 234762547 315692670 924112170 986108213 342414334 914751159 426610130 500799179 255656111 641830048 81309385 397327682 837289577 878031376 916903046 983509187 260413309 850007172 751810964 870270478 508026554 902857745 300017254 581236839 314407862 540616674 246368282 681492610 464788237 604802440 413862041 619935427 133356738 734051854 427707249 507154381 874842920 922526019 588448976 698732569 399794163 441442083 129790488 522402498 951641057 958670019 214675803 380654977 826497417 867091654 452253534 975820494 522245276 550662674 553712209 680501346 957316920 981617333 329857286 350084742 624211728 763275747 584609894 915986643 831944834 994083047 587326455 648666642 882918415 976227782 276616409 456882631 762111256 983381558 1794332 480124870 283999579 862495358 317016103 560929125 587392697 746045463 336164756 732886553 600815988 698765410 817141155 881108053 461087892 539155855 796265619 942025662 522850533 808663735 661201754 977732938 561790814 618036234 553378830 627228261 528833355 704602844 520265053 888830717 99873419 286905539 976406703 986501547 383406014 802386434 163320609 216057152 674733690 716546336 372261266 609891039 97688459 364608427 639590115 701131806 16800564 334943350 987497516 989181815 222251702 638886383 720907373 975777310 788733208 910808264 696887770 933838180 244030446 974683006 408650288 656250621 526638755 950888582 616139279 757123095 160575710 418563418 920323244 923469352 528392942 723711685 264833203 836252343 312782299 576083007 458064501 613660724 348035796 620152128 181747919 641765547 385264871 489112228 486761100 497319197 997064488 998713038 690577486 773930166 378741802 658517427 608160809 674696040 285078653 552124648 904046381 930198645 949070348 993148081 549871101 572733331 144682207 238496695 600280686 829008335 570685828 885996445 669719840 897592600 594918148 667224165 980632854 984861596 172792363 729594887 452016982 632273317 52005643 664954000 393671622 630435886 241402799 795234567 240371801 548679302 666588026 926658802 807753903 847088787 997599632 999828909 44538783 979516648 33260602 532714215 992176291 995229111 832760669 959030304 455769320 565074354 621347023 907690651 208255013 346414401 903057942 931766129 54213310 981436333 868323400 994730101 149417304 399704281 671697872 775741512 766190287 803457885 909463251 931203196 467611366 565183008 824864948 958997979 388528659 516412087 486459812 705600447 560434971 831767828 242632958 246608929 95230597 461374365 28049966 194571123 725049668 826702721 502286331 765739649 441242413 949787184 170346115 257785022 457829011 522646292 510583547 684315375 248442117 456776490 989475418 991020836 803722257 969871706 935804884 969574824 95279323 815343674 525615060 585310077 781921669 802384497 604046256 989639779 993667128 999353742 522706399 968345003 137243680 328666291 529998746 610371204 924818446 938341286 579083221 895197988 329150827 661515398 553519296 910800274 480018873 561790691 619119854 621731268 18633570 846199424 973766376 986934325 978276684 994819103 323264698 820825102 987227135 996215588 238394422 985501634 894541919 970928131 983580288 996468157 538367191 648733295 269341280 962909149 446354638 481157166 518627887 898772571 777012658 921594045 19548434 137847510 455036487 973003269 680359448 848730195 99753427 749122234 717514021 880663451 664707348 951724976 984090609 987043121 941512831 995649331 633258142 776403534 453841728 934438903 783841213 969946113 911483726 981411437 74936480 833653437 735772096 817903558 121963216 636125066 989027411 990743183 207899445 529787603 263560925 803873093 73998652 174946621 591613183 843807634 813911151 850958958 445774441 715661199 625660629 952201722 803113090 901898546 944421604 958713598 640834527 796530264 177301816 582881011 563565031 785948753 240554464 485497775 414758284 725890337 686298539 821792477 924658413 964519846 164030890 719233680 340274328 755260802 639782200 656813156 576435594 595118152 818736695 945063186 774935218 967352439 305325503 448840222 131346062 318477549 233231540 869997804 323357637 488383335 796615305 840552318 325152358 974414812 732812768 873440565 655051953 755650793 402142986 934997983 97606192 390129580 187980091 243162088 273921843 841412251 714013497 885237410 943321694 996250644 441664461 796990970 107088933 679690978 751665049 772941896 357363069 654494563 180234985 749169460 987861641 993099586 785516260 812693249 791168359 794083850 395744354 994518512 909590276 913669073 414612783 782341700 924819161 948136188 321272212 941419472 802480955 822164034 401031019 924816249 514839111 838815038 229783328 736669770 356430640 463742607 430876692 638490348 41467770 868320587 102833228 424844860 107461275 237348477 348272322 977773769 783199853 905644847 339339265 749377453 714456861 905722809 285588620 640263707 180825652 577753441 616487868 980301100 347135015 745194024 854136969 953144479 892890671 901602372 837393577 969653808 671433211 839486020 7576108 982651271 14883191 170593842 13804810 690353425 517100451 889183405 985852155 988314186 665013270 921562592 594312499 914332427 869399129 897552135 790716163 843432648 104691099 291227340 745665386 746707898 989822417 994658567 118161163 833380987 299810767 594701998 987528507 995488619 159473928 624765019 918473957 967209049 541207670 692390196 249481436 289177344 341427518 663154600 125586188 208306810 33861427 780395442 528376458 615788331 814052280 942900769 211649554 851075533 622218304 798352681 137001691 291726280 542610214 899890978 355702945 755030003 183428738 725248782 43621754 683415751 26691505 154753786 897789448 934261802 733095493 735053449 177998311 325107271 402841262 735460551 105750218 978704780 169112810 353624790 43660255 795107727 817673954 996721661 199335978 372431282 712603017 903320052 251845325 538194412 411241846 700667902 949212801 957897219 941319866 946190128 317854195 720296200 316494633 936843820 63497583 890400283 114672569 983349869 498009223 631569224 335381003 787644704 876317406 897631583 65558578 716088914 526469432 803598049 880732966 901481914 874747703 883588221 979313684 993171597 740162106 992830926 800964151 977871183 262864047 924646538 958181503 982105542 35382787 775707683 345244850 453471354 455299579 948400107 656669844 856407588 909880671 943453309 592882749 923087671 255159039 318393487 956342128 965976013 690435679 716680695 771504706 958188185 750098489 794470884 192159995 192772999 473699428 586588705 714670490 918276494 447013407 826886604 700666461 895844984 67375468 534522770 190569770 970994192 37688860 165035238 379846288 774050445 229230304 964963236 377329149 557354497 943139885 982905921 454989066 652425761 900357123 949596070 487067274 681177066 483862624 779419785 648202420 753092487 300229959 550271485 298386088 715137499 956399156 956526582 266928330 335214875 944929273 969137196 692570632 940838160 204994281 795974881 982865102 986895295 987923273 991258105 457750285 699517726 85292591 594781555 747011768 918373318 210708502 234526253 758422911 807272381 424579957 432030489 247074397 655534597 755324890 934587468 628870077 783208120 909530078 983984233 849672640 950570624 387632785 621167997 943990527 963165996 370397580 982676905 482016882 981324700 753464337 963996131 799474362 919313457 11733746 300149846 614995892 656247481 547896788 792669822 274212991 330989700 736773465 881081714 172312709 390626074 855123508 875187504 872209309 997447307 238273560 330303957 423878733 563902999 920395642 960327557 428215211 576500722 707585190 831791145 841557277 862007971 974445507 987151945 250093564 453121047 431422855 678874270 6756840 441625575 257808254 634578749 879090761 973139299 533715537 823874899 300264477 592428329 7812638 650161066 816288171 951856736 148166296 694095982 627281936 960144265 727076725 860758931 472101897 771607396 402344739 770063553 940489142 994454850 15330240 217934328 977696348 982820171 867549260 880802562 86475492 421076147 857537288 919009413 161346181 563432551 16926528 855996858 579332255 872681892 587012884 801819319 301582172 349603512 661633170 713953276 76295623 321381599 505329171 650671206 898311489 959210628 40298633 643785874 601760826 682266588 396466601 816960101 383749999 732209816 235276450 458363317 102729342 930479648 78884080 707529244 715086874 903979600 682393449 762324294 332801279 508905642 346404004 832159303 816536900 852681093 356639279 376049336 84228154 418012219 446680361 990277886 868467300 934395510 166109534 789379171 974444451 984506625 2232885 709212772 475372242 526984293 916756087 985586810 899431694 945266986 442573059 773823013 439457106 968320284 370168697 552380857 127285446 778088790 459283962 534606256 616609803 935030244 908519392 967322768 66131435 382866756 93710148 592020883 948289810 996004518 587691668 804244010 760866988 999041680 706612534 851374509 828272049 896394062 873775069 942766590 491875455 835903543 280427080 480765119 383809635 577609524 273893353 957555209 26454932 762419967 915230553 996147405 657906722 952406447 306018656 692125029 6317560 101372701 160885519 673047641 260359799 549199291 459506965 678814575 670078067 860805625 441385402 777378619 861165062 973626442 32476830 524972998 498316595 970112554 612700337 924832690 128760063 260631643 777787867 920510540 346386486 655641201 195560420 733301915 793580433 960776361 348519154 622403520 659986688 994222452 793255936 922346519 877936737 920791434 705609071 762315009 969853131 972132201 796069088 949788293 649827348 795091352 760090608 842760029 466927593 801743051 840128239 952484048 48345968 80272954 471230451 554393420 408434891 762347411 10457013 473597870 683365329 766075283 363618541 365191912 961382364 994415274 618049764 933230142 528562659 930331961 565479141 798691709 427710315 750649880 163344911 185793024 461155183 860996174 156846929 811546237 406216274 427821308 442325448 792047894 476174345 648744096 676802328 883549561 207004407 378795508 215046968 426349073 689681690 763920266 971991700 997016430 125730540 908159258 587201155 737145522 837839994 946651529 717372141 765717287 135681224 417216266 715738826 767152274 781906065 846910883 875789605 986775497 448234452 536514289 598842757 935083636 958647192 981626666 314245567 672044552 601079873 945091831 30232919 604987441 771051434 816590786 639798860 953209495 839538744 985662678 97170703 686600627 793119382 947594330 738543199 941590451 170879486 957558825 669061600 682383570 286840699 668909303 492463354 966979998 655716144 718984175 970101776 997403197 395223361 453577905 612740656 886166348 826429511 827105631 551382971 760649543 903298604 991107436 612503839 717473589 202411470 591512626 299745506 516170760 70742302 357322063 689901381 933468641 992202497 995248164 72433728 296856272 795109903 913582573 386270231 531778413 431580654 537549222 745052201 790868496 293492474 496428466 927630456 950258667 610024413 758338375 855087259 917921540 229047325 334671941 116992568 208859248 992410054 998248912 131755403 851038119 395723736 620685273 246087031 762560488 229688248 858320897 672017839 739862532 494336641 962930264 593564466 676540475 855390764 908428607 564586338 702116878 123311227 415337933 930040305 954983099 210231070 755711299 123446177 968857034 161324957 227089768 167563681 243971109 824438745 929474981 586962869 613309839 64794528 995662539 295384860 778881199 565557761 845557188 685374048 971211507 818881858 884555016 662136488 930630517 377551134 748424276 625950063 726968401 531607326 999511079 793227884 894177198 703024019 869479187 982548532 982807696 574576426 700665366 361776372 713196972 281170433 537779550 446323804 537965155 572127768 821272868 488709208 832772316 800163872 864435926 22695719 93255756 957505407 989525930 355970416 748408003 254893161 839314833 31954613 605405138 664042841 705278369 719315217 924792201 474283212 772405600 573872323 799009080 758608280 808618895 256815664 611228393 586043388 934268668 581614255 818926218 345394468 947119565 559300657 913403898 657526365 731645850 157907987 995099814 745366885 835581694 789325655 943838729 137808946 739543598 628812257 723699575 268295932 411528571 663048900 706775284 428862185 549263536 700099172 875189345 71998350 488140425 501202993 652060208 37756253 175367754 295741955 449365620 527409991 688328242 63586137 337903695 299745124 546808861 895380915 997908551 715548701 837013899 819501967 915750594 739755223 913047188 500783891 713145037 197751048 305133673 693776719 782802773 783348697 946373770 853831830 893631683 691752805 963528270 448761891 720214877 924120704 960094003 689438078 954204489 650825118 657430074 535074293 690696117 914628887 998486608 391428476 652379794 210178838 925557530 803543770 868620356 783971671 802395244 714845830 932061073 422016327 642994303 338029040 675807444 674315778 810448277 469772137 826760692 102202928 109869517 557943442 749818530 99562307 149097315 120655591 501628285 734874010 831396802 129642753 385743950 582958855 705362369 43254041 51140877 309523992 589763966 658149276 692174440 142066750 655097823 963093021 990254689 702215587 764556252 213891341 539440049 627355004 985240717 810901366 835635048 407893985 648211318 382623260 557993307 705066026 778493086 225423543 300716128 182907516 557110518 335511627 967222164 156133951 914451164 312395353 356209428 817409751 996339826 807957822 880812216 798238424 905699179 879314544 988561773 852124873 945084882 78448586 872743082 325374984 562503944 82079611 437064801 944639474 948336179 183755180 998563124 108823448 749761888 117581242 879852678 829403160 941669402 124684879 525408954 804385858 876790572 623559853 777869896 543267534 977225268 536101047 883742286 886875825 960294273 597218689 845050109 82588468 672689357 55204054 100795616 501270740 956011877 529017238 950387389 214633541 931871141 761986699 913966899 295664049 601188203 960502745 961513957 94697178 850881479 772989024 871552187 792806414 938777969 972363675 973367800 858731716 866547625 231344786 682674888 401012957 522534222 328189721 481635588 217779433 544292871 286262457 970102254 681418078 989068170 414195946 995174554 233081768 728442198 184511007 349964880 973362366 976291214 204136950 778601149 99632186 710571604 129682775 133532635 707724703 844331431 350133634 414123791 52197696 979032661 937849490 963147631 194191211 854574610 215306218 419921753 111951491 997882279 646198896 901597078 864163429 998750319 760897813 810398808 845633754 863387984 459242725 993631216 161718546 188096783 465340721 868620852 998928682 999369802 714765351 768255509 28627755 980506121 702325507 894955435 132492957 484972659 977343458 979482401 477341778 806778736 347657101 671831601 59577196 457831721 258896238 304737957 468427827 565771018 973596926 984563175 242556966 954294782 390824674 677175465 967538581 983736682 630684949 696342013 108480985 335075485 82575511 359480999 346510060 453067110 514503188 741210313 890341541 957328272 55253039 245882627 532753352 838167978 88392481 622199472 709855359 771227457 559063609 958428234 777984194 848663485 971202563 976076912 517499428 771118925 332909282 907261103 800195778 930378271 273836541 709511292 32412687 283305820 88779993 535185855 861103394 953013630 729734803 955881942 82961738 648097194 464945903 782612152 164517005 260978776 685319115 819948732 326849981 932438100 692000927 903351287 71406939 334143663 853015534 905949132 406706208 906257191 193783155 519558424 948793718 983352795 716400145 723569221 956194468 960245752 278555744 725651623 877070369 934847616 838660987 857876106 541597202 798801274 854061473 870812411 748559158 758607714 218493408 590514230 353249391 923314116 528934064 771927016 796816075 983233628 417572187 787550885 517573680 916832472 723673652 769950402 15490324 363969475 339597411 425364033 946395835 961193643 887453345 957721160 205485538 913133509 139773379 784528732 676669929 989527504 118375936 165510569 727473153 813877994 594466917 971993473 292178562 322228141 68810400 708011284 406662822 687193335 228447352 704810704 710164880 804487452 332960813 605246292 261177802 569311480 814676120 822687790 474255849 573110383 941369860 987354719 738378074 900202903 545315696 670833350 450457499 895858488 961004795 970323613 918973394 996431179 518150994 647859133 307404530 899045428 414302705 608999478 631038501 748840007 458016648 814434054 293397439 477616327 67354335 562552841 144705638 414851766 433766097 653111322 818157175 865362174 542625760 916346205 467682681 751260114 348840879 823988635 170486990 478060346 810014234 956168611 765191287 812834989 645442859 898443187 996683071 997004468 338866687 480299421 417813553 610213529 941072031 958452704 262167994 673747798 725966486 764156584 882379451 932833824 806985657 870031377 684997693 810334287 339170137 449455132 514559676 598123476 432367421 631925882 198749446 385104107 296644491 889156823 150527365 407164683 929688631 961034212 75613331 247080931 224955026 902278146 142020649 943786823 277768304 477460268 711966086 976547020 444157813 527371201 837296178 926951264 313836318 864256342 716589107 908937905 752486232 871251591 998630845 999250241 989799311 993720405 561954794 840458427 317145321 726494537 111834379 580612957 970411445 997450219 603977460 924668924 173515458 340655615 461515355 620683676 93798842 220802785 551149416 603197232 621430456 839653960 838373070 946167398 238668735 566384919 881405367 912546722 489629008 556370496 152235323 512705818 490333327 762252102 858833817 908332123 985706641 989735476 899513098 979244809 314536463 601751965 39539361 337294227 777203729 989944982 198006077 429624877 52928491 452386656 738717164 846404369 71648320 481633205 90194337 551385259 175072243 740504823 484670643 971586708 749238013 796906566 788301727 857217925 247369389 529728009 255270318 557901164 686037785 904566923 34474006 73185226 69441452 644368691 54840214 303115686 216525568 858023469 353463060 395887329 554425443 923004175 732656795 774990030 973197560 985559271 83061511 688457181 23267894 768735336 41972700 938763074 765997517 783634095 284869313 459360588 437680826 891216954 673884870 903359274 373413172 562749039 716124212 811085644 184383959 231638885 771332445 799277251 337810432 821227208 556288904 762147668 11514603 764716932 20244422 50183907 594993282 619131040 342856818 814252581 998227078 999106581 317276061 623990571 253119074 449809710 461720694 660937383 673640447 944740676 574571375 652575404 201681530 596070001 632127267 633697844 560784089 611941541 511719483 788198889 424486640 901553818 66871900 78648687 1642417 995637091 868355650 949421508 24208657 896934804 792010362 904988786 341236680 582700473 421031318 950504556 702684174 764609489 433818306 561063448 215175040 710830787 926442057 936082566 597392132 846882558 547260928 770873805 467427797 643042337 85732413 692034415 804184770 963239954 733310926 852288740 929118968 970972316 808217286 845989067 179868821 321100103 972056592 975604825 726586516 919742352 91066904 795698993 671169399 734435495 257660782 350085643 611332366 687470845 578633239 638292404 568102756 574913605 616735589 712710667 907898836 965788375 914770877 949523808 338351792 864702480 463297276 761498972 535758034 652642139 71200279 651060437 842415887 996564147 573129816 721420594 885250807 993633989 165126473 590667135 365205123 701846187 18259851 418603471 94508073 562859364 104820249 826228038 57791614 230998314 513801369 689946074 317999369 461611206 595112290 841814563 966399996 982789087 723569639 909567730 587138440 968960131 713752495 883662597 958697947 977780054 343439480 774212995 128633912 588374451 91138266 503086907 98839867 558948610 66695261 379772792 398687979 784623744 191263387 981502460 733377928 752748048 794790226 866957781 407405471 768604952 552396772 804352821 551330290 972755489 732820330 859860660 887772366 968095919 754700582 855837152 622210314 770586331 519398697 564242629 666104670 976786377 476039642 545238011 643713142 655997625 784274856 933338756 8369043 963373371 947733736 948097644 92829138 823796953 264643067 566582313 18700150 469408475 309736783 446866743 59802937 300778509 788946439 928390258 15459539 482748743 523742713 593671594 220878762 226381180 404988572 920918882 841523219 901564723 820314862 927173214 348589626 820725248 707138712 942333741 878691492 983792923 259227598 645210988 766001065 956148517 139263231 978822569 14004872 741776380 840170680 910467947 555140006 663544863 817759741 944235907 640956017 822234396 772475239 874849018 807600195 847955004 399531888 882178802 951656822 961384888 998048842 998188618 472736104 483068993 383670969 968001242 245978662 604150469 738169193 805918479 119703667 322367353 705683468 857528560 789517487 857934134 397253361 448386426 232612716 861335418 490660291 690846410 159077537 433118891 452111390 536335632 344639642 927929360 848197132 974394602 333715371 734361562 686496281 956399350 78073401 522652854 770463620 923613952 960971181 977113165 250207368 932501273 752496585 765899228 792889756 941625912 287895165 425735313 46350531 154983601 983609511 994377447 52604004 165114048 945676860 962039856 779055403 788031958 654508452 860682527 853804579 873191795 64075232 551347161 640226702 957190345 396005433 999772250 448223280 557134783 815667458 852589071 10994001 821507992 897675249 963599865 562862191 690516294 399196773 974944540 271034438 284095113 295204421 893164287 884311597 990397537 495417013 876818791 737718306 829486025 740809239 786215349 95212247 957247371 104972515 105518167 260443545 831507005 519174709 705225489 807391942 919329239 846832362 920851435 125723990 611356522 204115647 759865281 670928773 843530914 291198004 814519984 200574135 956497218 557701509 778745265 872435181 950550064 72285256 671124463 381264854 873555709 277178628 294826516 530090702 716249824 321286090 609102800 718576734 852487141 411883781 636013798 866648500 877595895 852134934 994512500 118148201 171255371 423687342 771809756 29623620 596566729 44774423 527880146 449578719 926868802 649392634 691047105 92487776 633941535 633636908 633724008 838631112 881321487 631356384 743040021 830562468 875078433 882364693 891884976 355530063 977478946 470156972 552205521 344413874 620265875 109077049 604219637 927723586 990275769 58408426 959421711 147799147 571596205 272510752 569932001 203286587 838210170 618852238 641740896 335789997 667587432 400439157 504048150 50954807 165214143 38590882 875769709 53370298 423807527 419090191 810766350 955598429 955711907 689922857 704475215 313185859 593641391 193876116 659448667 66944226 704489048 540911442 721486227 211063792 553506175 397206409 595309880 953175136 964297840 791679793 931091667 30380163 56965351 518339358 900023804 862153706 977834657 973282555 990391305 841231947 935051515 633922039 668412347 394907437 903561291 206328048 326063170 601898707 743749593 540195954 995882902 10580357 666689458 139662097 947864849 348869750 621713325 851508371 905083381 259952663 391520520 849318628 911349591 574171686 662237873 441254807 724803003 370691211 548985710 457633197 671740079 553992214 620770327 113479686 196517715 344186963 346606067 652529005 934280029 957962395 994024100 940329488 962049159 594456413 731518677 724589851 985364422 797807071 828568200 139487060 975085846 183470967 308525687 321835437 960216074 38832672 950491744 366067239 994270597 630440722 724875315 474297060 919924551 386708061 770119366 904009335 958148928 725071937 807128517 548461663 844428024 693025828 856520080 319977565 893102467 435377077 926677841 761043146 787031527 181788301 191487199 474863573 586889777 766489911 791637052 551193473 875230233 141375816 278141976 454753481 951283279 722480952 880475711 570268963 607199454 857152579 954754735 680803481 935829124 254915325 990406801 480196851 971152808 224473288 673495171 536843620 955575598 917015298 938708340 337395561 615763218 656354715 660625326 117114210 145010235 316831802 824430104 885245638 911517318 722278253 795790157 679594122 696949569 80754908 957176377 287490197 710599960 197263873 367860634 228146286 295478634 535755456 778283989 198279772 853394008 451867387 756229822 665311331 872646421 245779999 935943800 629288212 671447505 190875766 974040693 227914027 764957960 854067429 986708898 949966635 983391516 594964865 680590789 138543021 767642956 518453536 749572442 173326117 770938110 91390482 683663286 279729611 815691962 203386603 649760001 973489409 979626786 92367614 806818150 821622156 823364945 532030360 901139412 230765964 475096741 618286429 859906540 351588605 592640974 240829739 544178642 786550971 821575587 663157262 670644758 672510466 979889029 994866872 998821348 821485514 887701142 443129888 539368871 426484067 693011734 322048326 700674947 900091828 930167075 365250825 997058809 284296573 815303755 4592878 369613229 478059722 748111600 625334820 979189075 40992209 494315478 97077607 446466475 830786306 848777818 76162090 565734230 877120837 925192986 971298921 999061182 836148036 919164334 900477068 929971744 74963827 213602007 290459080 401423489 428271590 667423439 91001391 412950425 26522124 513036080 963778287 965945240 953516565 965973775 640430496 871346682 853079552 917653636 34208893 372473085 204542009 698402571 568688614 868430129 231067594 405656485 511046653 782420520 9307343 990452714 536901179 900279135 72003749 638866639 41591369 446425848 956815362 965099165 395533722 951349613 8009559 825680692 907994049 992839175 683509731 758313537 476562570 747054966 810677256 817816069 302463451 865561501 591694481 667430029 890293810 961957063 215663821 415261715 251182435 574695860 426304677 491281605 68574906 593055177 15752902 968847874 133482320 985924550 717104503 734774678 862753779 909140260 713445173 745678363 859363065 896323798 392888009 592412466 707416543 836237563 694787114 833354256 346591387 669551406 845425411 932014735 435099692 655036825 922595280 990416994 771959170 988512868 933572193 993482659 589091011 932039128 148963978 296950458 992840726 994435666 611110645 859735948 415921394 835040524 917434173 995517815 308948444 674982934 213204476 742214680 491401661 532151914 583023878 769039478 290814176 730849717 600622014 747347519 291650051 397629680 574261317 712799899 995747942 999797037 722045731 802494749 307259676 453945689 357022861 949822403 3281062 474063636 17034594 856598337 824431279 925739288 831430961 882439642 172383419 735602947 949989112 962062322 247649456 327423739 753827570 853383578 964960589 966697085 828345749 956994222 196668641 293470963 893792450 981371058 886734769 973686628 13669322 479855499 98878395 704857064 292607617 684878220 943311739 988355469 395627951 482831830 575315603 800706911 232492570 323946637 347206509 374388439 107345153 698780543 641280696 775507948 678678171 882162968 906905069 978545526 572187891 973271501 596458698 624476928 881916049 945708146 393066848 898318439 324372694 376431986 580381534 695380325 219660522 415758433 671832805 983994551 226182413 695200811 613691508 721529134 145400406 538289233 933512580 957732739 341099456 734521105 270574495 979193695 85599039 821800641 910902622 983891297 666174956 815144318 302352700 875308277 895927355 988047512 978377492 980472015 406053388 946683473 769581698 782433829 872343243 900122654 745720636 777168045 119750176 877087666 306525206 785203051 365650510 707116197 852609751 953781900 132917536 833759864 896249304 931406147 173311218 358536607 61966650 524832243 190693954 236235078 767545064 986592588 603498623 795393214 463670176 840706918 229106377 737240637 746195319 926181434 808706683 856784560 145192437 818034563 780947606 910076323 916438157 998657944 221612089 235664502 819168169 852864990 946896418 993109401 485275541 831200693 430328952 906962674 926475820 968872330 354903241 531508554 566192168 653735825 441828648 915513074 309295009 971061692 978550532 993621125 772219229 978433029 366847629 492495799 356576092 456721876 127552600 213328055 813495893 939146750 482215593 780034418 556771028 829816376 939734792 949065818 923546352 962765025 778874466 879620635 107433945 957869201 559233056 828724080 468078489 961731872 956825773 982768691 888455738 889247227 152632443 223279886 684473985 796729392 998744859 998997204 220551833 886030197 660552828 849763989 327783944 668844177 300397242 997625080 926278751 967490948 768889853 860242276 353626241 474921555 635185334 854784449 223851251 228048070 14757722 806716655 60658711 375426428 708061015 938377781 332918065 898724475 254808069 670768086 543350562 729723366 527130165 792773289 617861705 820870607 142165754 824746688 166120898 810659553 72506831 479017546 313474058 329038488 478738073 759386592 104902492 363002390 839750449 896870830 782534219 922726043 421209128 952126701 463249789 498650851 938229870 964769319 320297693 522785378 639858145 839663067 650518086 736598603 372792339 546522627 572960647 838560376 899735620 967839120 322741930 343489396 545280289 731065078 575254473 708162675 351527575 683794815 737122099 868762033 819107781 905427496 262351372 543401072 497989941 989449503 316971232 787738039 522309623 933738346 88289387 785478794 471457116 869514438 241256966 495927315 65604709 669833523 714093476 722184709 909397762 930456114 923094735 990054774 912529611 995637639 613576078 962846188 145218384 678541009 227946083 995367878 945526944 963959054 959976333 978493226 901391041 980657316 707718121 955504917 111826403 958699851 756125360 837439414 574660550 641488971 605352633 806579263 548240775 722893769 451286464 592759916 243867791 584260116 249761118 541797753 671266132 697180965 749524767 832102466 72276483 741020702 400869269 676345928 190766095 406984789 218353918 610002532 493897371 855801144 790713387 829154844 770437018 877802380 164160964 311764431 439420681 774538782 986095062 999184013 471927253 536531753 797437760 850353952 721402734 805311689 18001436 742113943 786700564 884492804 687540895 757948571 976679400 987990386 684566543 834141352 409533982 879370691 76201464 398979675 520731159 897149507 523230143 837709338 842928649 917396347 65848353 212320298 394163401 774767105 584216266 959568667 737800589 912963598 731272128 764982365 913533556 943182704 314244096 534806213 494977708 719550527 635841107 822812122 241156182 608928481 378462315 877830711 457541834 494478452 472126968 649826130 592169637 882670752 204405586 929472066 498543696 790239288 952287730 969875205 727584301 840560953 830335122 882225087 238510805 624127446 319984674 695824093 891141146 941503313 319157602 354433250 234634577 896030699 104447387 299590689 527743221 983602293 464750205 873745962 978896694 981994164 986414306 995277182 832286637 837413972 330110388 379419499 58524447 838336753 141551266 693522576 289597021 493029204 333950297 590459107 993169982 996406022 342360790 850506157 187498180 967669281 685917423 813559477 920077200 999483631 573805592 873743095 57798598 667697257 858997238 887244918 70573253 379707993 43858416 647344828 697656957 711545966 73544481 253507180 51156368 408828352 944939535 946442491 608088169 811978202 806489407 984519798 438813994 681359084 725555683 899979469 216195345 646979385 699352168 906587714 566506182 766760400 441629864 659353415 663828136 871895550 976944810 983996409 847329661 890144640 559844741 768013170 843820743 905903460 921108332 936922807 627722185 816577329 41489914 133861263 695296376 756232776 291665303 694650143 51228921 707942563 398784033 861763580 208308390 224644192 191156187 822329907 170818287 821522705 792585238 853762127 832229324 907727303 919675299 936855098 684648966 977485788 156761550 171781004 239753525 774689550 349043342 528024675 847967180 945844463 567845449 779217491 295530072 710645100 692519271 720027430 610503678 861530436 71047056 853304459 140233845 405828599 202197624 683799897 30199045 463827298 382111403 623896790 912950392 916195857 989547385 994770884 232084953 497083005 952946791 970588281 118422210 974326158 475878089 706195808 754190106 933569616 335109919 458352490 988798899 999597830 790711680 894275047 648411669 738048451 561750604 966369899 882286672 939391175 953181208 987716604 132163128 599797842 180764407 534298729 322388825 343427431 625749793 722356861 953065724 966668789 17099974 220269623 343607739 374964947 911073445 944406984 287121728 607388254 958595282 977864951 82965525 314951485 862772433 974811622 337918595 693686133 100419600 868118712 719263741 928592142 328038021 936547199 477439159 608333050 802701194 855097941 987131533 992324228 354775469 538678167 860925065 881882366 988857104 996017197 147382596 584654687 848041180 925424561 109870996 893761709 194080789 672756280 462486453 888363456 590764007 989464019 900766979 922978392 743781136 793087169 250758181 447629753 654405186 878800698 259773010 672163657 227822922 727118412 736861905 869170323 766499651 812680840 800511122 931545335 393445235 893124396 912770565 913391005 489659890 730054526 918635926 924936988 978273759 995477200 764357044 869346253 674815661 769654649 67626169 303382758 481289996 990241714 488955859 694020956 91865344 996646424 892262306 990020871 657107015 729579595 688096136 972918169 970056141 972100197 73439153 653478037 312290400 412491070 532404385 868436897 895697311 982982073 152588910 593901952 543906356 844580559 184693573 224451143 251359527 654850244 404930556 622656469 716315439 777038832 239146629 877162842 909505312 920979881 648642522 953401805 561589761 678211216 550792509 608058282 13421965 132135103 650468449 823236399 32754699 121474163 99060009 392398747 248489205 275806579 272530461 335759094 520468136 972947937 234286824 300920014 44666774 231372255 298704363 507394555 621604508 767907837 804193276 939362529 630604968 773027878 243501480 328224941 476905583 716258486 891729407 924099953 281880880 649439063 465444499 930463827 953772180 986417818 726274217 978781736 901355342 993683219 862887875 986108882 723243815 986139462 314141650 959589779 901183428 999372290 175421822 545265998 245781657 401543308 888669678 945118083 694920674 875199398 273826275 979743485 989093715 992540092 676318374 854399285 351882295 772637767 586991595 972826778 223415143 932788163 134127495 687890837 904755402 967772668 571224033 716314765 476444586 854789454 344273565 608785661 819618056 914058853 734184984 833945170 107390535 953012542 450695784 929870435 331583175 588364389 160217260 202841558 165019658 527284231 343027017 880837092 519838272 887639522 717744121 746442897 566105029 944280593 418276785 794592086 275748585 510936682 525455889 634767208 567794938 617511295 597352584 964929457 611367940 981273435 366304366 592715697 232618476 350444266 116500805 364602662 621227357 685822688 159700798 553768988 737698130 757418399 768302383 920636160 949354621 953783750 805859089 856373796 568568569 798563430 518252384 844402904 782398884 955610726 153512690 447371131 41135710 393351644 890562902 992600391 312727942 820947830 529265393 960648048 755035958 811070090 478619179 626444853 579210847 877587913 33581152 640877821 375641921 712668191 461148370 496987480 343925549 940300763 756827954 985608907 283848425 597119363 677312711 862386911 511819285 617311096 514635848 917372232 59497806 965242973 132868246 358472215 232131857 520637930 220002251 529636669 269250368 975514670 235938985 388511753 866735954 900762873 940138677 999209643 830966232 887256376 304449297 347157532 58665802 332065707 47152331 534258415 548541815 582101054 772315503 916233360 70870810 303257582 277846237 613397161 11856378 413621416 833426327 989935940 609826050 983659043 208213250 982007419 223035668 792799298 96873145 162038701 88082220 658801210 661397102 892601201 534169038 903846498 532524438 854919890 512562900 794349537 907927000 920351558 381550394 451679095 782092358 866073696 499126319 589881516 437907489 521103819 922356247 993434876 621482854 706076611 493005105 814264408 526825178 600185149 777612506 842830439 28502621 336080198 38436935 156487685 509917229 556970162 247139117 644208500 767846163 996235216 970426898 988655800 858061789 928410655 447879063 946734404 969273385 984748079 216823022 806801298 761900927 773988058 520314504 602042932 899584736 913005529 531786670 994993851 418208472 843771285 562506981 574271954 751241902 943317746 532765480 939469255 388397252 843861617 130387055 618403113 390941780 618454640 865873743 913898092 215718014 664078550 90805286 484067076 137142988 761482110 44801839 768403091 844442848 978815092 60877290 392015081 743166092 968270362 603879582 915627750 114741984 142770655 340821158 769229454 756523993 776936968 175679952 670621709 972563061 978504335 536446971 793040384 833278315 973127345 625695930 707525538 884693637 967558678 159903678 786537022 181733197 652583059 960655172 987515388 972565990 989350720 89576606 466556697 421323910 693781744 60562570 719591390 815257601 950723159 187645643 672938195 972642018 985885321 495045143 976741541 985760051 990915487 273612185 526250536 258762390 731166757 37399073 966998988 523833786 715275369 89417690 689066295 269803021 299716347 350894360 898010494 743563947 832212719 410229347 706922102 389532845 815853497 652440733 848112951 698859269 786266264 622641358 633344505 520955792 586095951 582882848 842751305 214833464 337194507 7353825 331839486 840157297 955503481 679073091 729852727 909910551 984807437 628183718 918409312 901706347 910464616 285483774 904032406 187318550 928321048 243279241 839379894 296505387 373344882 15475556 29008649 455077778 542366812 683130906 781075590 968943857 974840152 719496138 961354729 91643422 309547874 314153977 694712631 624604785 933876924 644667079 989690668 394137664 481965727 104086592 135152282 991165438 992216251 673930033 845719368 689984747 916363849 765930171 935638455 525106893 930229017 800988502 844129182 224578783 675550721 625683670 972280992 27551011 321960754 908540193 936719917 296979093 376759909 448074775 846514865 987917170 990595882 245360902 955606632 134201618 493211181 695112839 768847892 994376328 997408539 671976672 934843774 750765340 880028127 317191413 870739938 784557146 973562516 890259311 902115041 869892696 973155192 461863172 859325767 437760460 829088654 429895816 802630033 350141526 850450833 345215975 793484805 719883882 891102154 116401541 879450789 360121791 977179306 566571402 627490694 290867731 851940548 378675326 877231569 562537130 978413243 151604338 842286333 71154275 72597892 927126484 952080537 962977914 984643564 640705432 664340873 46813459 123242525 54175019 451250217 175845518 742740285 427768330 814325633 906091903 918950028 896873733 988043152 545329534 773153297 232000709 338501845 104426563 979003002 810941998 831937483 587191414 925943146 794359414 934559419 849687049 850132393 322716560 340833389 201898542 647898617 156077613 578883107 69595594 363696053 769186044 862446157 148707319 733681165 50521831 291089706 814740332 978984540 258574887 711530284 892056728 989362550 980032926 996203665 185824163 773008929 350832230 725737194 644406452 816371351 127654315 920322312 76420370 887934547 851524644 897689868 643589869 804789831 430985631 785044014 508554536 778171049 541413081 589489368 999232824 999249356 253942386 288552813 421710448 566000946 353983070 755432364 48084917 131245971 479953934 966565750 807373214 929648399 119084162 772583886 112509235 605964794 810885482 835635190 99687124 433519596 125745244 477200673 580728562 840677723 657529229 787181281 805159816 842250252 323474787 591247270 624044483 663013101 276831146 641703335 127020935 475259021 292271820 369043012 538772099 903381291 559285059 912292918 688443705 826316853 245951422 582623242 607734889 884727664 413415462 763287965 130111635 522977257 147342099 729380834 963738939 973795582 179062423 757473165 403723063 654446463 88604755 256576936 522026321 724946246 684333341 865098443 312545817 740282343 820079135 927052716 732067417 892348392 479589202 760085741 878781882 982964315 495961391 813949652 50674241 352704709 723914266 829120975 406759392 536598131 759433128 998724990 443789105 748469083 997080051 998892495 203042441 843214975 154551451 675702573 433933754 994823462 577330151 679957092 512567187 631002354 549812659 974829507 516437708 979911388 948318001 979981703 275813498 829562813 325252975 613777098 775539870 967846425 750909266 861805217 946094015 956923876 872610072 928031803 207624299 649938542 69648641 470203470 272993607 489475062 328240472 435611033 442763066 527997543 346404185 828025058 875749876 880305891 437002442 687076624 237525060 608785081 315707119 524182999 219710221 702060470 240111161 447339138 209789064 624194201 493933406 666140749 547094849 985602726 499671227 742111347 352042139 932679385 455893651 925369620 264403773 759453665 647722020 870004206 845432178 868000755 255316676 871488912 245151865 389524771 433747000 700305047 657718977 801852760 45574420 82088551 310227606 703574525 212980342 908488239 859920211 958850993 796463478 860570646 777849396 987504947 376763144 943765476 87907753 971634148 587614101 867902990 22277296 130963418 614088643 863149238 91893421 937728341 730181211 823509702 953349887 983198118 657102869 780069954 601921359 815216789 987745968 989866624 978146439 981430922 984325724 995634485 772875462 786813724 889875871 890212230 636627007 774220627 632479659 838379791 449314734 811033024 186105142 214593183 704582300 964052468 501867826 525024811 149166928 594746519 764728433 976249979 944264772 957875075 642610091 702529488 439476884 819247095 901038155 956482969 670298742 923280008 216306509 595723229 179462213 927465845 364504433 550957471 987052094 990629879 8330691 649759103 153481085 893662133 97614898 956163550 964148924 979446510 156356898 538274842 116312924 534955922 260291310 273454030 527556335 952175761 564606079 768317539 582835138 994986224 822865847 955698170 4357413 99371549 135001863 298057309 354182272 661761083 407463309 908669528 931039597 984281376 55989438 771083288 466958542 510876250 684937104 691361472 556452602 591537404 868354859 924731538 341347993 534070053 456346893 910288106 95282448 509994522 908444999 990011065 175398524 382583459 381984971 718266296 710465995 790015171 471505490 487069056 425134208 445619630 300241 209800873 532117204 928609016 157444451 470488342 599153390 753276695 747297599 974803597 161689299 442278226 297141833 718710119 682748434 957222415 350201443 567558231 484962628 608691490 221170851 357108408 965782700 978179495 181819409 766091408 4045565 146610103 100201282 275171837 588771688 686715747 468385121 639956324 739862795 907700949 223517639 590309250 704646456 766374133 704528015 718542472 314598892 323181653 777784025 952124684 182433462 983170204 809526987 978571864 203231409 949032852 883476484 978462760 944333489 947217340 50462935 90518560 368119977 624180001 554821060 666233370 525815856 986637477 261664772 309991308 428292806 452646119 488461094 787621780 721667341 980424852 308072753 539719555 825368985 969418835 315311302 517980959 636746893 698415741 320532406 826616957 45067588 128143466 531590232 809256976 72501350 800660342 375301583 420171990 37152695 780377124 150949060 364909907 416010870 775974002 243421161 517884305 24486797 579142615 979747586 980374340 952843623 960494129 975367875 990212037 862221360 969921063 352151651 700999633 17427874 326761847 539760199 619096046 110160457 608759942 396894777 455030453 663770147 855930566 875204998 988849581 653735769 669605492 745700337 942822665 47827198 170331005 428108557 492725932 654783147 695871100 583225636 653979733 533388754 583850178 96927085 415829325 185072685 274744904 688097416 780096646 721806793 860947862 92952091 243332100 672993321 739327123 246763006 356541660 53099674 608430785 428628828 595662462 579388586 688224272 255982608 993612939 897097955 947151615 474661860 994640433 997826591 998250200 930661585 997070315 486423722 560706180 837614707 910451533 919747718 949626897 863280391 929947285 59980100 812681086 54634139 844515450 901214058 990822253 975904955 977757249 176628835 631541868 737316599 752810524 702264170 710481893 821609131 864049946 149297046 968128194 419080104 801652897 246698413 450987132 880463008 898842606 757353652 912943816 199051573 590971931 958115335 996670551 869852680 971259691 114791792 274085887 897508335 962104612 420608490 909990027 869355755 951950195 551902841 800563652 176668058 243044089 915809225 981763233 682237320 923226184 173572231 185937842 434423392 871884819 519118248 878930782 968828481 981662397 965849251 985568286 959579241 998122261 351651658 437549448 169743021 877124884 90039177 901297939 793642268 877499880 799643039 835876327 586684303 618493699 211944973 758457954 212178686 490895482 500619879 659570721 469738231 780975606 390879155 448004276 141449637 461103307 847120314 885030542 81659992 299811765 491799341 788995459 860631067 926384112 406461627 949545355 153802150 492028228 904120538 948553596 75566723 346414659 677002287 909854721 455827500 807499677 435381109 862992116 512788377 807580375 401376064 482798422 262509047 692188299 701398001 869709468 205407121 311997047 724913589 743217927 893079666 911152391 665724553 953579907 710762840 940880335 617043988 791734688 387387488 739802864 633365046 813631872 496897305 777301547 409894806 881062490 57755282 707197194 966342492 984689168 768069103 823040293 357679593 933563946 850828524 973400819 23003028 751939118 736917349 839745903 888133506 889389145 785311027 821658421 870965848 986009351 512466271 809691906 517349602 555853296 885545335 946034345 335808973 791192834 428051907 843895930 256272392 285478239 769181627 930648864 900785115 911135017 879483224 961301955 911636224 937401748 540680564 795282027 49792323 814881047 731794090 756955671 683860888 738475558 122975229 305596801 611825745 692717358 795366064 913768126 45125360 211468285 677479743 935483632 323992382 561889210 704966653 934806437 576603496 817431549 221904139 576850476 687708466 908072071 582930669 699314695 592134242 704359899 981902321 998921225 597964451 813089403 919575682 955979889 475308293 577692146 80580547 544812731 693569107 810251038 895322706 998478870 536208079 555161853 716255078 803609869 83879963 977626528 192059985 379823567 374690380 537461015 315015174 885141866 582503514 721458687 164587572 179313278 858405260 903727061 508678503 732384978 215602816 434139859 194192809 905333476 572727667 870973661 265698311 441722815 316479844 640851441 222243308 592860478 682735688 745531812 191460812 889833622 221431650 786496709 358929970 707375553 445071386 596878322 876649627 947970305 507012157 610240990 986722609 999465461 116743021 436721495 131238434 370818028 505142828 706601036 783178455 995225144 547828777 913224257 582284123 628994694 567791723 860571361 29601530 719099033 567660328 898144272 493059667 873549074 946902763 965062254 716749964 760322178 272643426 738122725 948460523 992719222 749045529 859985297 279037190 598559118 510448824 837991940 855044681 949846825 515900941 854305554 716891038 926626879 943707403 973885966 836725380 990679055 105676202 611009154 949101706 993935719 413484297 974289807 3729586 156246504 858187900 929975287 329790549 337989651 243082395 644915501 549644898 971842968 785584680 974327752 104259344 164721800 809990645 840989418 888488808 984979121 211189522 727600813 812967778 895805577 363972510 769970906 519948191 720820235 778674840 845592514 367931652 701537501 276215828 368854656 237560132 734130207 869784197 985915900 104129446 526616345 496725219 734232929 937424475 990564800 186353143 401321023 45744423 990199485 504943452 737303707 440583473 627508583 39651532 272828616 813207117 932126688 134539477 978569464 429263351 829186554 733833920 810545553 912293635 997813022 240991747 285684353 894513993 898661910 513757698 638781118 660936041 703341350 416603387 659482617 130144846 138855979 233930363 808266558 184971647 278902367 329563135 694716817 300387287 754245874 710080069 775721175 511189222 755199527 220441785 645943863 322525081 728238000 812009111 923028240 640153343 867022006 154986357 939476465 101461128 387550005 137781517 210466244 384254972 500616889 943861216 945505147 43347878 201370971 928898676 984166931 223308044 316628393 565563777 749107027 531956912 581157004 826149492 911739748 456006276 495956093 987513372 990221099 76756165 678223887 932641820 961195471 877578125 952977581 627783915 974019053 733616013 851776518 615330364 759029386 687317308 807096525 930068223 942585294 506360769 939411826 231601784 781500150 865617410 994630714 358932417 999040653 997835936 997947254 575459826 953898168 611840441 640528114 674003480 860094130 433843366 609681618 465147846 878642244 948723299 994120312 481830623 708082101 264463398 517227962 635407509 727240302 738926657 759545482 401830006 729542507 697480272 868399506 44371348 495483613 946878149 983909330 218157581 279084987 2258081 863696716 224048127 749781330 297535810 526380555 363333729 503147294 314340608 905415273 132396238 250913843 764354635 910374350 655805488 686317761 973326106 992542565 103358455 321764188 586864434 700533173 621667789 652681206 165158414 650297965 521051932 688451222 124101525 481848336 885444431 975526408 282418071 721441591 676441896 976648457 506686943 518785828 999220627 999703114 993728180 994305080 263356519 505482014 498067617 930017067 304761462 790097592 879937071 972263068 505608467 743674361 722406052 759493396 31023551 511695329 729137493 934374783 243759273 368157840 906580604 996783763 10703223 437398665 609052638 887967580 222344912 321274990 238007367 238390010 942615116 965032932 518882412 540863597 486428404 613650122 839048235 921225222 845578072 980833809 328183032 482407863 825949584 882446705 520545221 926281138 834454187 937138938 169504107 487850406 298555567 650300735 622400464 742212854 640418557 641219230 505696477 764462166 919952070 923245763 792816717 944450291 788545457 981974048 773322410 802707626 52209302 968734675 746424998 960299255 893788756 968628285 706288023 921393072 422071411 883385633 863472861 905186689 464375205 788258346 966355766 991417783 985180941 994145998 400080523 906132884 206478686 465971568 200772034 886528113 542749831 750879451 27610035 403578660 768960577 932577593 226167201 987156561 34188186 724733444 564982408 771594271 55214601 347013545 498777286 639867295 199133637 516579707 70961863 776343636 47631994 893549630 948477353 975157558 172319093 881236008 57475789 59720530 277470971 906149068 237279528 638473675 351676195 877813897 863023696 879517217 377876588 553957626 131891928 564652826 258343063 724764049 901440517 921764240 786339754 898026880 375622814 547477158 873762253 998256488 576835448 838788351 907422933 914568627 642984453 993960590 173286554 523825696 896439062 957896454 943249126 969177355 232091085 983810851 400577881 610290111 241817660 599588032 701677452 900733321 412102684 474760627 350907203 524987751 712690430 770895380 904410392 994059031 955438488 984086791 768084725 959439328 749917420 795768785 92734470 496300155 461205428 740237456 628157148 788956175 688380235 750082394 345547953 576878516 211522340 547735907 457574703 997982480 952137804 982200274 719855168 754612630 677083923 966634792 106179200 238587728 910453958 926236439 131235850 438705491 899077230 967461108 377298561 779404765 462377495 619839601 193588595 791270099 203560238 205453951 403861359 552854764 945670913 955667923 112216235 569134514 426180679 459582894 257230078 287187403 928649208 964812879 708250597 891320585 130062502 661698591 440800297 628047271 450133014 765064684 861451468 971632221 991105945 991550991 808720985 975035689 325192593 984863330 150666241 911469266 726387639 989272524 127852256 931904661 508959406 967947845 52093896 952302236 882934880 965394089 597913022 721684222 988101130 995702365 849488843 977434454 824529374 888479459 451220425 940133559 646474679 900395393 946643288 970552649 83842529 870791596 27404923 617812243 320406569 494201401 744437792 953817410 745723108 785274838 155106052 217467424 420344101 881251792 329997850 743680234 734229834 747337444 614884166 957750398 483536297 678766669 371629558 798470793 570342131 763746355 901329870 940600799 309973282 887269183 445257475 856004557 461667958 759445563 377193244 746318717 576861816 821139058 163712543 641546681 594283130 795400583 309203340 974437411 355415194 388770707 423695351 942143936 253833228 573128686 464837800 697357548 117027837 489916117 470793034 932702702 450931081 962426537 178996165 658835698 197808272 794330525 473065679 903916670 648557717 862240509 474047670 522720822 72343486 76547839 42409520 877123199 572912719 895312169 267089346 761901915 603329469 804323737 282686238 895877995 709461007 877852775 414193714 999866090 684669680 952728345 287297586 495717058 937699677 977030176 523332708 881279714 59099853 988760398 358671093 817358370 140360514 567238613 784974123 858950812 524057924 732921158 544273787 629367770 658055102 718257818 743027272 972344401 323724898 930706414 520262358 994396515 375657760 995554622 954569888 994176961 783395466 812239274 816771069 825389133 952543110 958001081 811284506 906209695 848682719 925511279 492268332 658243440 795006158 957594715 399204347 571368120 285762063 799404523 40807971 197149863 396884457 827199256 299013014 873892884 538112541 618026269 907759105 971201968 662586587 672067981 544719359 722070490 677248592 925840109 106797328 177227225 559025753 701096556 517361284 742848788 939210001 969969299 767520016 918267843 109190643 293620870 307671229 761251603 391918143 842546795 827711329 827739071 969989709 989492375 959670883 976447146 198954050 585661678 910535953 916203140 761259385 973675881 563121390 952635426 234555157 335408354 695877674 770980778 994949188 995368675 994590619 997614841 39847526 843500367 920995779 955600654 764942473 917298568 75671591 319398327 137882332 559986631 35665101 235523354 534353693 589788615 776901330 796279573 30987561 369248912 119520588 645200066 256496503 980043754 230875104 234545765 97638036 587705635 850689528 992971325 550583736 652413559 136147752 180536367 697114661 712379621 204241533 289816820 896427149 994246099 810394240 892425151 496523792 706461273 759951003 871417667 324573025 692569709 526933083 777356680 895753122 927621171 738547906 800137204 156418455 165637883 664655300 935855366 342318421 402564804 942225478 946751339 190161994 490755683 175866425 737037428 357664922 661631426 567163638 955939152 365097852 545436852 68346261 197589568 196440582 571874146 45984089 716075807 913012606 971860114 809907496 988872277 30742283 850072294 534844126 558807374 601173526 905098710 857236959 954126603 421433044 837653955 542634626 903989324 835115865 999870266 450314849 743073964 275977559 758028181 515556646 596550329 408071936 514138960 939510922 969127995 801535686 850792768 459581961 466767040 295695598 498601232 139453002 185603168 789944124 958707749 290824896 782202812 256359529 888445960 743371527 895897485 688889693 862437301 872661251 988992899 569376324 937756400 171636409 706043351 266523026 549838818 460659671 662911411 816325097 819832003 456196826 503371126 262447704 932182806 671075019 770012764 348576933 984714865 238627405 776328397 315679272 955604901 297104218 686758077 541857785 600712699 511595243 765664652 217821982 677546846 788549164 898240285 808658844 819503128 258692653 988569203 812424428 918243278 785928747 904384590 437015287 648682561 747621561 824504093 152507150 587688101 928338161 958364050 959093006 978711839 776221626 949601339 865455799 895760035 34935546 580380195 55196231 218894437 825310345 981899470 505895271 882773973 798945598 859957692 769435645 807706271 816993581 854099403 514504918 911325325 739613797 867641575 976592803 997155024 318048035 831790983 461213769 600480342 566846511 761500007 773986473 879426574 622020993 890854387 31190421 471786885 708126456 751874266 208175581 485147766 985192257 991544284 84455813 222619891 771554079 943818312 962835356 983835590 807460093 852926188 842361801 977971719 331932037 944171729 810469476 951251114 296040971 597735939 938600215 968288283 896477515 902250265 388145519 853090448 999808299 999870902 334920663 380893423 516198534 536645618 387356774 723785007 466140259 653557794 44115055 611965016 251304301 534340443 196762766 485278374 375498907 716927090 535833076 539023844 592188436 861586253 537553933 840710730 123763720 644217129 206088660 493314109 610194111 652535264 445306698 872024270 568725804 801698588 13498876 241550252 40229374 992775169 480949576 680289692 425028107 850871013 340344613 384596561 226798557 642686038 566654690 991367377 628112086 786117161 276368788 581950723 91451230 418847918 825594584 861833264 835828796 949222114 903513461 969569372 953255619 984144859 562994268 970812937 433602040 957602119 676259926 772032941 194566845 930397104 957523712 980929874 306663776 588036232 766226993 915822302 179089008 711412410 904427555 938331404 598305540 747968219 695233734 963797850 174233784 718445753 765297948 845549362 786938862 883988512 809039531 811598431 613600064 726493122 250846156 429957120 310662070 912350463 224085567 259353067 316677139 571252568 846913736 983205380 795451919 842314987 10275227 998764798 309724199 366225972 28916420 984231434 58135103 654947112 673691035 903414994 963172334 989708437 478943579 754784471 764102231 786296089 200471899 963796618 267008460 811535749 562793787 962626793 889668434 908599491 422067934 939672455 606356316 877640777 305802467 734404467 238727479 686870681 773607300 829549703 490769043 542897052 25108977 184372529 275019707 913938618 891850142 910435771 279341880 714167086 449609669 967395594 476434164 492227896 734227234 988730979 464667463 745190212 96436365 804838228 975696130 979771063 67040197 866186013 791629187 824897903 331317816 743681909 272631884 773534166 698737819 880295360 593490865 943784078 724445114 787931251 973633446 991037095 443980570 730733198 880668616 944248143 366819175 685642865 463527427 700320075 367357545 895605529 74713225 764710957 166968810 276345464 678067064 778816207 343634181 384326962 784954671 872108972 22094736 321230014 427904144 707707237 450966138 871634131 147570020 454498632 689021725 970127990 240340823 923482480 304672794 615271174 420123820 733762509 986629933 987029231 350810177 699400215 716716126 835374998 142665322 568450073 688533552 859952608 541410284 869758120 673015323 845003173 709677589 824878642 990672686 999320559 30623098 136324735 712280728 717750370 963982884 973997496 817752674 855703194 851771978 971035042 629230342 896465502 137469663 532914438 63301346 72069749 386451195 705633762 325278240 931355642 756723190 884818770 624940437 967600927 848208801 907440218 475456096 574446380 304777994 854108920 313963174 889518740 89001564 386765631 143562061 352025987 430355917 531117840 681796369 926395111 435605007 630981668 789423845 864695593 836258479 988178505 197508312 651626136 564616209 668246253 687476359 802265048 346880642 782359532 704937403 944896605 663587326 688604712 376404762 513448728 43196113 127306273 74325151 715101843 945663381 991169102 90113996 695971390 918110653 957062945 646081449 765062102 847373678 909891161 110940510 899951518 562766197 788989496 857923558 913660765 661690096 961269349 91632618 236140812 689754438 902437331 531230012 960455737 608781854 891867212 310819111 773221095 359859200 468521058 308698595 810326035 303366644 755893375 362948332 754211335 806398960 879077786 873214875 881369548 121957708 389337747 575730065 661183528 63200342 818426812 477387116 603102813 187193498 353151783 117322340 128103228 655598234 830750409 904320704 928729481 641821778 795522022 931753101 953457403 902762246 920879235 267928684 733933609 943339677 960570057 839191956 987502932 638311402 689120562 761503520 763521759 734299164 954171389 965844221 970177307 783621359 826671389 849615614 969352839 170291598 735920512 45108604 925637333 259892148 319507911 129418533 859457106 636300673 652598289 26643915 647491869 636998990 845540147 543090563 950092373 712377755 723178370 465728725 984056586 488715140 489652319 39286135 221679113 556233056 958364543 439941685 611753059 749416926 808373332 164454685 884794603 575890794 647314648 419023141 930936960 228385183 276429973 458838823 716645825 322503496 407152459 104496714 812326360 92034017 718472106 960919365 963630987 402588305 566985035 393396282 748392972 807972039 921194283 701342692 761608170 772019803 975236419 768341459 962850443 235971251 442059253 91292816 432599818 223329698 668403109 359656199 903064650 762783285 936387285 541406059 667320873 718517685 871666706 524810661 999235129 361987744 654887814 931524340 988131323 830700888 940640159 404733975 704269869 440060438 706669375 480354946 964486988 818555364 908298670 304448664 746886148 524044582 737833464 795792683 845944226 943962584 984522843 188703451 753804837 549722145 839732159 454668990 856634276 781651695 916418940 585970590 715762794 583072294 995374633 698026052 822715431 571268007 825311649 462088965 658515642 394378631 610269352 161874611 609501977 643058609 953010502 656627711 997155841 210294332 419622502 237009593 604820358 250951380 613323477 9057168 845712296 515211879 978163112 268917333 790463243 70160640 551489669 815408803 973890568 698395108 702934056 706541585 834828606 232366742 495945776 315121430 881951394 275565023 502063974 961042489 962266144 875521642 987529145 940768786 975048238 920495125 941715523 521469193 782182988 365501 939929015 254900138 338080569 105498201 967775731 390760321 888402626 847922977 884039636 552949928 597300918 639924988 925948648 536985158 871135620 138352899 498076996 956195542 958844031 84684329 207763968 258087041 467845389 966653774 984553703 427802752 612557061 999608305 999723024 374224411 648010899 8605528 706677728 902766994 974143250 761036545 879645298 251218427 397069575 56507324 199302470 195654786 257804305 518024694 949589831 443324408 493418155 416817382 935710493 556322561 616700333 500440777 770263185 954895723 969589961 913530991 970420913 271278927 955867382 340565808 590307067 33549781 510768301 394437620 777398150 177706224 743135441 107288574 141521672 456544224 620910691 136770185 932896370 889237928 945996237 220517232 721038938 15710452 351018840 823436920 890787773 3399121 877787892 125867836 203533312 208659130 752082369 718946594 914188469 887136268 993764816 359977708 846528601 665897923 886452991 196344004 315636756 593384014 718084898 321531803 651577696 428374468 456899641 983807099 983926384 293086239 678329251 635145760 686074495 59962030 695489351 258615214 983086447 165949316 166251312 482073874 623754784 953956143 965818857 431673203 444974490 63145674 544334495 570735107 828292290 320866083 353916919 688043365 729899003 109435457 185934374 803307765 989947804 246849727 732744114 136059229 398706877 169817212 796340886 197101789 697916574 705770555 883421698 514115868 908596449 65685675 101893559 164134253 690814081 952507242 981166160 760415334 915238036 743538173 872360878 600981112 716076412 290668091 732763024 987886686 997749049 855763720 937288979 617488545 899948377 2740977 578257475 934791795 964082754 298236030 795321706 2308540 737234567 466372385 778045321 24298150 328263994 295705134 378078792 13767251 423025601 597591865 599386415 670520939 763536103 881584520 940816523 939944755 947395533 377294353 540382038 747128679 937813125 406367374 487874954 782914085 838617389 813269190 869485361 583752664 629390143 790229620 879499423 139698657 260347210 354769666 864623932 267196668 340473818 751144716 794025614 524666601 997630304 470803383 665963861 777927974 994819123 650933190 803948489 438387479 657834896 682527582 823083171 616627293 691610083 359223767 628154360 143669709 450462045 801142166 998824388 171294211 366858228 585270116 962094133 628104829 846314175 410403064 710788393 77985552 580099040 240318693 477010346 639890148 686837539 526551391 856241970 582074676 804219832 896028937 902664542 761929120 817202957 401550522 780336167 455140264 832330010 477753787 565208904 679909228 887247403 632336492 942796988 228710695 803535310 205529479 408891170 393449399 919481554 727356721 744835358 703326655 714659462 189271509 303325367 176408848 517115985 426676478 801437857 35059343 598476335 6671482 456040669 102649441 123332340 267726183 984716792 203840722 372866484 162686222 761357175 32554773 343724660 715607368 786327463 555508328 826932522 358725173 780964353 810663198 915485079 816475707 889131945 571886181 684694189 534862352 975520977 591181243 820217028 556985227 815009484 548073384 827815736 15515620 284743033 299606114 321406491 444928249 620261554 66617497 397699850 438456486 483779132 56513934 609672099 170856913 779782052 61260984 345511800 644379341 728453798 829895907 831627737 613919222 987658522 144804077 677814487 505202697 664591124 130529828 992442477 653533331 926983213 291813277 780196921 620231413 732689949 36291654 546464152 152188754 382235570 901630432 906724792 550471522 937136358 174973271 373074299 725172488 816744956 748980720 810825949 491575678 616862712 733086929 909096981 639830214 702050791 237293340 449304255 152099906 522492744 375912772 986397599 56996400 493395566 860001571 927648852 946517742 953839241 794898 98748323 738645379 860919502 380066253 480461466 98479411 885459781 731518549 782747363 656853153 897320108 42931796 666977929 83993132 882074183 714286716 836537603 465763808 670241184 93326365 628798477 405362643 533106883 671371506 848985200 413151344 696618369 628632610 805382365 391823287 695097155 856722963 918822899 731816079 822690313 200800041 550633403 543963042 561251485 930127725 943652190 858938151 995637096 837346878 930591350 19000655 350570559 197784409 906907504 908689560 998272183 879480242 947371157 582543253 757531890 633791313 860594473 380973740 394191852 394354644 647176869 47335376 516274710 12757089 180306183 269095337 597161669 161027622 585758313 693655956 934374026 877187657 997499971 424226274 819999934 200043405 475465262 965425913 997510999 512889427 860017885 256006482 597130620 102495728 834031307 338555360 930542693 87707836 674241573 591675481 632628042 439070907 678702020 97232629 342677582 721275131 804151089 486889399 818491438 707107843 952593257 284777033 620201327 253892799 705915396 120641479 530292018 392522509 670060763 680880148 892944596 77847444 879136150 394003143 979246682 989363793 996537277 9253611 129987432 156834789 963323786 487963176 868191810 516630782 861847111 199329713 632618764 825688678 997700013 392328460 775815973 176186218 439716025 547325017 906457953 166919086 845726972 969419263 974863033 549959867 665566485 348215235 720178583 928888592 993865605 404705061 732248327 667234862 884990126 509630729 993679010 254650028 845095402 432854948 495483569 555267870 766981016 855961469 936973519 521978640 540741483 954411488 975136768 705799219 990092606 387577769 992993072 187950587 634988516 322949497 422635060 899145606 906953508 413871679 835197023 981443402 992413122 672688450 828398965 467777024 634982178 135680635 543474762 160078635 618287306 7873775 563746986 931540663 932158828 240923881 363295873 241069296 917412056 783608179 827066571 621042780 832496651 162855080 644482021 518687691 749436738 417015697 867881421 3770030 50213047 702088116 956845601 548693896 650024887 551181746 749359589 332422023 970312934 789190152 953109686 913445067 917912711 337942983 796559103 212321460 852721030 10949316 333869581 179274232 889247343 804363264 911150471 480847941 495085391 552429950 554058997 606564947 880972247 262760104 802639557 119498618 182834798 991467380 996569147 547540964 685617728 706977747 902009402 33769362 628902306 124704793 426410812 838588115 929619904 724690399 867085471 765302425 925381431 736125288 910690776 241813243 381178126 941535069 988876253 96690615 724985138 387048344 813377548 526439723 616549358 979611337 995553682 881188794 957336147 441239683 448252339 80558426 781736890 666227714 943245052 53426228 866668187 156003894 336097211 603793083 907923818 109637780 295509248 601442839 800081770 583123624 812945161 129503721 144035456 667264784 995002130 717732033 971461051 599284693 653842453 857785601 899847204 131426255 191855881 722586472 856720769 994691874 995414163 849237182 957707402 408870924 557860087 276712253 886460202 841999549 961621094 3755982 773905578 240364301 370143157 564430658 866803321 162557278 458906221 432558847 768256155 207118342 889336472 756735429 944926810 494260466 816938847 104246953 111420980 382694370 550477539 509155224 852148210 519911807 955783319 600615937 912172876 409450643 762711259 452028975 782899540 849273254 941634950 430804921 436139768 839253331 856534586 633242511 946021843 73097400 623162834 919269819 921215416 999284072 999769880 240483807 523800982 945774990 952637088 694594627 878672604 631942154 824178167 852656065 977223818 890758258 922814255 815081502 857682080 176916644 188518888 14809426 403415911 425265095 777353933 943874464 986602861 696252749 900280869 851140080 969983680 655546888 895022216 292789565 464701493 362926969 752781184 42822589 340072342 149890327 681771244 474513941 967763361 47899552 862314418 936841173 948090970 325112736 872086053 771870266 788239783 970785041 988425005 385563712 677999150 934533375 984849746 660136627 802245762 872108754 940677729 782193113 978027829 16366661 357135249 691029317 982450701 962956727 999188642 962704964 991510371 911798823 996337482 878673296 976393977 927823450 990947990 689014526 848642341 386655721 876280996 152264677 496499717 959040417 988408001 2527160 324327001 677426243 982415203 253634393 536275338 56638792 465900433 206139826 494274015 24597195 474389334 887591457 926803276 356569601 422757032 769344978 797289971 885190889 923870453 873400099 909642176 288599870 332173012 954536182 987619081 494167370 971623097 748620159 783757098 939849559 994521692 845534510 885068197 814617517 846137827 463138761 626377591 741465099 843879230 617869526 961597268 876084135 934711927 964087977 969820182 451065821 851414347 850184796 959734140 182177335 970123249 644284560 649469761 632703869 876841641 97305893 361671468 496960580 646898745 812959108 828612347 996800636 998493649 678218972 696890140 435980617 898379989 893704436 956563943 400869130 425374339 379380338 619053168 70583753 569087707 878019839 989057820 976048937 977952676 47648420 622454102 57980729 639079537 542642302 547270918 157364058 358213264 649229791 753565780 609750216 877423274 101443116 827469165 297680364 583225321 367908772 515636535 609420099 863152973 473800480 662151233 878205758 990798690 315000385 470711451 945396373 970829749 927709213 939053026 928612997 947265131 613264428 955468606 342965371 789272365 351993132 582792553 354349348 758891656 496573844 745693742 770672788 906236745 223079766 641230703 826634480 963093432 75739374 712082029 691210560 974061478 564314289 933195322 803269931 953346305 506091950 582763608 37510822 838803904 288765949 534591740 819625781 882603491 687513093 905574802 784991637 918039861 512885459 906775248 884799505 886525744 817203754 974749296 619424635 814692793 331970339 475192097 410868614 880833699 82180116 134599294 255587874 357740879 809978602 864039077 544454075 838165078 984984707 987739809 173470606 583739516 240581723 984128585 674048488 839078608 730238830 835884787 486263709 501591369 504510915 883692374 202973267 694837493 373407340 836352684 259534733 685713845 518697742 704185106 163214235 403520481 215559626 725771424 740032159 958538173 552428797 768886100 269560677 916139806 776760272 878831244 473472723 814299355 868587433 919420372 933804788 952318927 983025600 993823292 955396522 994985509 379437830 579676277 882883252 930590785 912040697 941309703 91987961 544838719 694298263 984077612 710894523 743026218 398231232 608376103 877618443 974841375 810316558 926535408 481024275 632648814 962744227 993461054 450719116 791523053 522779023 531010181 173283799 649160799 256921705 568983854 517790220 813873950 77223724 193220626 674918963 833064064 853887422 915654035 956620566 962439147 930423767 964531430 236889537 293174555 197294029 197380266 544877989 603888695 943828645 957681131 487295804 941106024 288024640 293530886 679972017 797505535 817274417 991735780 964224163 974709192 177579424 633523297 753384070 800544249 832948852 939881509 853829181 885675123 243329435 335808687 2209493 872508186 307168546 806982272 641149125 985960470 83577953 88593531 641137174 814618757 55248380 536415711 709419843 961743900 242829639 889345057 502290363 749801658 643974341 978193257 476892822 975885595 122197634 712204200 902206433 979880888 398398761 427407942 901834345 957481279 533426669 583571206 130104355 369504775 55220118 983768005 976079651 990585783 63656350 344998745 373559794 881803407 297225840 813817845 406362440 911157510 759307668 993460363 358284245 738109748 880826780 944552818 563217397 742815066 627952647 777510607 599067198 701866074 291276729 354828864 698371509 825551189 110087721 291022045 851636106 875142928 32646050 859244719 181260070 387025715 650463580 709936595 759770704 828354601 591703732 635356062 677376121 894643631 998267716 999703319 443635480 641264421 894969155 941330862 566453171 894117276 70841043 606021735 639318446 746574635 691697953 743880928 850023643 856883243 578018063 964125103 48532958 595871515 834748158 964059457 412677054 899026702 489842706 698082366 7282175 449544692 139325068 329897350 321165390 500335254 468563861 919165601 827448938 921134290 960956536 965438539 696630328 965951624 363780381 416459234 398589906 458861360 511558330 902616758 84154730 371939324 603608636 809040167 538200813 993681167 76373452 427066258 846863909 935928332 622635696 660769097 215217152 415607215 676660865 679509324 591815161 812542931 542017746 634202443 434631315 553602126 198997661 741092050 880106592 898010981 181667444 374921787 290308037 354845446 209335392 382173326 575494240 639806351 254231772 939118808 975868718 985461943 458938691 795709075 274738048 456364210 123419837 973297211 572142975 599736703 579262286 964716166 795530947 883233949 906690637 921179792 817378290 923540678 61903135 498653812 268758400 789428784 977285699 981551152 430849909 922432539 939853953 939904655 847691221 907569479 882836298 893116701 548666743 589302007 432506555 458047225 716326742 740060379 606563936 995209577 487903931 630217892 734707571 907153154 730995406 811008495 187433462 947981688 918026615 979810033 269264922 909689758 409426805 706919697 948607178 979405222 68092831 218542849 67068338 445804190 833506951 897967555 350449384 942198455 837678279 957488062 590305338 796142615 263162178 516017363 216336270 811508616 30285335 646816005 551648536 695485871 189415365 830750396 33831612 676944385 61969576 309985620 279817710 337414084 680660459 747288635 114353137 545501791 552648329 798331063 60683366 923552120 248084285 267735928 24145857 857637823 784996779 863492884 762110475 764352712 443320803 619782137 913133500 971403385 193150939 579906722 183623502 838364067 119530183 629412336 725309896 756820876 363927957 484292507 497113709 869700711 117843928 415876873 59424686 69003395 975464106 991814225 759232071 892487005 998745180 999185014 989324144 997778629 819758840 969003117 416225007 785125171 222023999 470688548 182874586 543795259 377382553 829915743 887437157 945629883 238762144 723390808 488638231 585618204 805257850 813132807 153700527 852988760 83788652 350901730 929064274 951409921 318320386 624050461 200476785 507276844 329429795 609053959 929992010 946432384 358181904 791186739 819247675 848031229 401321976 784812501 278850943 657961681 124573826 183818828 62891337 874941269 273791441 994660401 327111618 994330770 691841280 712212269 727402131 839030581 721525063 746286033 521060215 523574356 810504992 957518133 42180386 846504140 856426209 975056410 584038239 770050078 346283604 478931186 654117901 828460661 650053505 682444800 417519142 698983519 219667089 969783040 212916684 337071725 564508640 903860625 846765482 964590398 812406162 935564880 927320691 936658340 464633023 748155118 168255387 515425849 38702885 919578887 766071602 829031949 44338503 468452381 488820698 970658488 597852190 964072294 514404096 634649003 137774500 322119513 532435711 889187786 802041540 899304248 589667323 916119917 960344520 985473462 59245733 96928242 612705503 949736377 989508948 999397785 443917058 947180551 474153576 947298273 94085280 297573661 134085978 978494729 503696991 827088034 488959889 724355800 166697732 374444275 684536755 776649380 185602290 450946603 181853055 335306071 122719198 269509058 810908429 847462920 392112624 729451987 324333181 692756321 830901458 929292434 699862311 937791264 918111726 978954615 545163901 623327153 717704741 748671939 63665600 963017515 755409110 762671769 860946439 999566076 454085967 675465114 205732633 560072837 477765648 539286497 130824006 917251738 769371355 840670409 942079067 949683936 730857868 798312675 18572034 614453137 563870139 589766713 6000073 150981510 410159605 739285855 162066741 742886190 883706892 997447073 635207921 669689127 754306105 834445131 329791223 463555056 648243181 760972950 101105973 928881721 195358113 345609641 745099314 785681498 694445328 909678879 477868011 987043675 709595313 878801196 524868627 798042598 706079014 939642535 660592003 950532884 35226696 480642812 869600324 884549419 363755943 857244552 203388026 878423891 317782565 938158206 252237036 577975013 892567194 947087081 321132082 354331789 524988501 721852121 787585404 944573286 62809466 760496739 95799587 523956141 119877429 631411165 761684041 792269661 293955467 477735783 441520410 820496049 155019147 631154574 612869955 992878815 740160463 959790091 192209508 674830003 967312034 994625880 834480711 923079217 903835194 951164814 500445660 886722355 960924303 963906947 562664705 830241854 73758442 842267084 918437997 923981742 32564532 610471747 157704145 519700637 572282140 852399882 835630468 930545108 655902800 747661174 87304876 288174983 192855547 651331714 940840663 967063074 915173865 944587744 597133636 965187162 227342751 399134033 220930892 421130458 905018825 950555290 853669599 980229688 458303262 786393354 16159893 998823835 464956318 570982569 349192529 940814393 277903477 557330637 175752747 275901960 611605064 985657709 908104928 953129393 87427909 139452866 132684597 263996673 393566309 921204650 254229615 622451738 939810132 957726004 110003325 399340402 748282533 866494650 101882586 471287488 484439161 858574570 887050375 940563739 559793568 684516992 548450138 574435795 314878821 734721926 241092736 749842385 780599705 959420082 903149231 916073813 536918031 543946681 679987128 790676872 543777055 822817822 625710678 723967182 803709748 862375151 177200283 371029098 578458960 900803523 789811780 812751199 656155400 769695538 908407587 984470785 201568451 325195922 180540370 329324052 271685443 364774984 246514926 440819067 344375935 659682921 345331050 345638534 901206469 958027132 125354628 779501016 260211114 333992186 564574507 786339347 369365283 403312813 771960335 865610023 712297246 999628183 502406431 525275137 259611025 990968303 492088506 753420505 303206514 377875837 279480903 533821306 893700887 971898049 538360582 728108870 192621869 995490215 392960071 716688200 778609717 879758897 667417950 961015750 326280537 994895074 374208716 433564406 30768396 989164985 337112528 999015255 1753414 896634919 599256852 746795682 581235115 731930252 224762840 252637887 230747236 615394787 10381706 637933817 988250201 990084218 536510441 876991018 317729981 644173421 74418010 280240015 135056575 431180392 759295723 910789050 778822847 850054488 7168735 326364944 157268134 575201407 435579926 523176729 265018655 412249071 366227145 723535051 254903669 864432123 127158515 676619550 216190548 579587844 887538540 896936967 97381668 863443178 725424288 769816646 707872945 748968837 200579761 727876962 498232503 828550163 281241397 326516618 49112298 719629568 387241496 489101568 797099524 959687040 397103796 779357075 125489567 737895381 590993197 798507163 194220106 997294604 127681417 134849736 80230502 847060911 984219502 999268533 957180613 990461955 201777350 690442572 312232680 822707216 612658937 684796612 582678648 664177887 685263217 890493253 745830013 844659829 198544077 899134222 398254196 488956945 817719437 925868856 87629021 436334981 597491571 639109043 662143617 786333411 396517292 535181876 38633957 921338725 701874077 944755905 460845820 623883522 978559987 989182967 527038044 894726424 332554636 885480787 122225516 644169033 669415061 814842095 175485624 232994097 141222847 630376729 995180578 997812614 101175644 235750295 217666504 374418997 957397144 971866319 428857491 723280203 215313518 897260865 496615923 692524729 715609408 883212666 840456008 954881465 442111556 500183531 968845162 997752160 492353698 665243031 818990772 896724332 579530752 851189166 400178068 780476755 534048568 645075253 210386309 561870129 388855744 815404077 581654474 994061011 429882945 674296019 944163816 970804807 282782456 424993771 439196069 468925913 238986029 865203052 58646733 453106617 292598520 879033528 255797692 685022369 788434506 791651544 812871323 856333845 918240791 987105135 354563171 462629197 966492383 997290653 418413056 799778980 520901921 841972500 255761935 701750631 395247111 504240797 272910484 448683046 934352012 940852711 286811812 799998210 669769264 934041442 315049982 790726158 793794369 956802637 564166702 977193513 890147241 923897055 334316817 351234593 441211494 946828152 117685535 838916582 101757860 131214721 999168041 999404571 71418689 891208339 388034292 388956926 8341364 474567235 517305699 812496729 886343090 959521876 536982454 831343118 209690943 423716945 528308689 570457041 148711013 988076174 112556959 178934737 523342119 795892176 784841405 903113255 197419251 445637252 147287390 630363020 991302463 993520293 75266431 202345192 607856050 987047276 47481688 346423292 137362769 302401237 63434852 252522504 344566850 975991157 2262607 294548555 613003786 672494838 494001714 594371795 760846082 960460585 431726086 995003468 800573716 956852345 94014291 706521008 920320058 983020662 623926831 725710802 119255226 717395553 134785142 733262323 250774679 692546926 949248734 990366980 318071786 655580742 17604277 67028575 764771545 872126146 313638656 427162274 982517395 997404874 633552011 642634039 62846277 932591347 887330987 959858685 140095875 501814295 69722023 205807305 759750130 788889315 97226851 228735999 325899435 796996701 528644785 957927602 714927666 794645614 521350538 858992029 318804998 700012794 663374781 849220586 207334741 983617738 814523506 830582397 637081439 958446489 970253185 997001227 943714549 963053423 305670660 318031871 827835520 906562099 786952386 950822933 389623109 472059871 820676002 978683873 740501795 843456243 43490175 573585180 569437953 633062865 679307679 820740106 78920207 437351242 283467794 875426390 681589986 949734505 369972011 530563512 640257369 776614592 57086438 419059886 938697451 954111106 255697852 966062475 124745762 345895953 54471183 468631845 203926761 795987788 576688754 643066900 880405901 911127006 335784369 789225570 507815194 605946028 807939908 884841032 846143519 953877852 859741331 975193839 599222631 661942307 732313089 772418773 883064112 889972625 229683630 904741978 819656867 869628629 350179822 870635978 657118100 952158975 740674389 854390595 749015409 851453026 658858071 683984497 760064817 766377481 408840272 483778419 648119998 778398962 206761034 713908549 427397404 565450025 379646547 542599941 60786067 90415851 84155591 148606716 10327279 539766176 46477821 235056760 141524539 530318927 813767281 924207788 899856321 900950081 955596090 991513370 906754812 952900146 875314427 963107690 712850980 959810591 590403268 760776952 96870058 145135226 131405350 931711987 328543614 976973583 590417697 801778336 26279606 721127784 18468442 375982659 561591803 844576227 179742522 748847248 710803538 873494684 534231149 936981763 798367613 836130712 775279601 890489193 335458678 949391663 646837939 809584453 55742771 882233613 142041574 717130083 160174643 628195077 753454182 989412555 504489570 723535318 147885265 773301289 704203357 908742841 250640431 255727778 962343043 976962738 866650250 920927946 33630296 157080752 546089253 672799614 589622564 699340155 711529789 868860515 161883986 524534114 281361253 486287081 878009254 912416525 293863534 632570784 842552749 922589359 999658343 999935133 800361146 817362090 261177029 556595877 547487943 789721084 54951931 573068444 965824105 995246776 609688370 771293222 308331711 992084238 753848812 919659720 895022247 957796725 981251606 987076564 452572272 578387822 952620211 997837650 850498884 869755640 767544737 825325369 31522118 235285700 182617475 885918711 357896897 476710940 706934955 841455937 682855331 777030357 974713933 997725031 891394630 931976331 751738960 780250477 859225490 888740154 922328607 979958156 758494780 861577785 11795517 197089696 298405501 378447398 949811997 975368373 563709643 902654452 301610800 362796187 258465587 659807504 994472989 999962041 790256998 965785268 580996445 892167869 650119695 829163765 539670878 963056088 203591430 277782300 493975243 566716482 692707355 764347579 820938104 864969963 982753035 993543107 581235663 704353875 364019818 506108841 393428244 426013952 10882589 346311509 372309087 962986660 497906342 834939865 888618956 935080088 494656103 548564305 543338859 698350473 762484599 872836943 347084009 849841721 687462525 937786368 381496088 534747835 530306997 883345327 78477370 918916800 619423747 898601859 659917030 716664103 509552503 602246539 623796764 964673394 840099456 893060126 709604308 839406048 483262387 486562195 64901291 706173500 643259439 672050531 658094998 816370377 247215644 425203617 250813766 647923076 314344106 969473158 608463695 620170433 142229186 827950447 278859564 607144300 368168661 975090121 763385657 988487343 470135600 527094352 776992267 910503949 814707128 827071289 452063804 731369288 669027744 867640966 284844034 391278516 203200335 555817114 703494395 906299349 34881834 462841260 80620464 750061098 924894394 936083908 813342605 985230407 207379324 272305741 758089763 826455493 315692895 854846019 626475563 644295749 519155725 738626141 935582051 976274242 55920263 703321095 142365659 627667323 329996348 684697839 39146374 523608507 958093861 982000665 105240787 414746706 452041162 548861024 954866404 998824979 810572757 938181710 315085049 612656646 309772009 578278152 606321335 665168323 795521379 887912073 778706738 844151522 94289922 334519516 147839313 701286873 626058902 899736354 563874361 736587600 206914971 840730722 445733275 749465921 741757242 939336823 233263092 289932245 674504922 696558272 72598521 352086902 399189476 483955913 484726500 866803973 508155832 890774935 221622521 286109723 235446765 892843172 92676013 766535425 326870056 575379913 166569068 792596410 86849687 660837916 340115265 657861347 814803974 962464503 998046637 999285801 760713074 796713691 290372665 568943242 387446605 777961226 14055126 359709978 803694534 991793920 307848150 363641108 202434741 606990942 869381030 980211397 565861687 710379406 252294113 507879958 109334420 910410727 47318593 762110435 774103758 907351491 128770364 764423782 534627346 717086423 937980811 987538449 289842235 958352967 234562329 341031597 914214328 951054586 232722400 513747017 957155123 962297346 281746222 813720582 720596785 790741774 273091714 357813864 309698088 756627424 790992080 813973408 228824703 874075254 551146686 953403938 258852171 934111090 112189542 431934339 236996425 884912961 80916900 430388914 149600946 817694663 257703913 688391745 700478340 911161549 946258236 979197382 121542854 295567511 308398312 666050773 307444208 775543324 947875673 970682023 38774969 725436158 510815124 622906719 574631186 999331730 4293817 365931698 417314664 669692557 300777014 791357338 488625351 938167817 531827292 774592406 734615082 827313671 887714731 956470921 807076597 963774416 605665621 746039933 435421590 659477381 647513127 742452488 661750089 904397569 92984284 362084750 139052674 264504915 57279658 804953509 572749153 731587189 843590796 999538738 174756309 383313539 560411539 919304771 610761544 719517510 326824447 549114383 283438658 472217147 279388383 626559128 308935593 746259876 988817388 998641079 91843375 862928857 454821580 857697842 32113599 805706789 244911971 688893067 985925065 998821183 708874799 921630105 424474128 689058803 106273778 559162789 889482231 935597730 244943169 751507018 447954511 460957975 973181831 998852227 51851685 152526932 708394136 776083107 527824178 667816617 532109297 790224374 767345222 861607617 712653725 807205855 784197228 848048265 151540420 804818533 822973445 826995755 414549707 594309472 643527659 989511076 594674993 869940052 483941379 628570944 528685311 983789708 868986389 875478869 452039321 936507491 8850555 592569701 453457682 953321847 54978425 882748523 881628232 925247052 546966811 815281511 413473101 543918893 163183593 178217744 212575486 334483812 826643743 876073313 696599768 916507096 703016440 799162693 529376831 754827207 451073760 848714535 316071057 514137458 242010364 826631309 423059458 520506831 615869391 939549247 864844637 957205814 930144004 959049376 657141715 929790958 387682853 470202008 463634868 749056916 661039345 791668795 273586005 698677759 308535451 705065071 51914846 266199462 323874417 594398753 769763336 795029297 3846695 963040176 590164933 978943571 463243137 790823379 114798211 164105155 134536084 456681454 926946629 963107418 921057751 939251086 304841608 836038912 600498610 763121828 900338818 970124666 855616113 935867884 258670871 892642884 243445957 943369597 955231267 991515881 229900509 264226142 152022590 960862669 629204796 635328862 35008688 423423427 572093940 773622253 831591158 849496210 143869699 363260382 181417838 626053669 812083696 940949108 325603482 900107908 855373278 911383428 960165710 977811182 640575927 701775268 386851862 723837219 120183289 381870746 466158782 780083343 999409414 999736445 116098266 352582899 116251575 833629425 162331103 298050415 965135449 977769442 920507532 993544178 630898982 900080110 247272368 493199757 344239206 665818052 460420192 641552489 484372540 830854825 16042287 221144977 296700851 756066233 687022991 886622159 519612248 624907487 1261901 761199348 706469357 774516541 904734720 934236808 801334939 812204754 938734932 955325584 71622776 101378748 584276712 974824452 444571738 745092124 452107079 785561591 377189382 379094747 1054232 19377703 49451366 536720538 819960815 835019622 614098881 809500332 365530991 806299857 462834483 927801502 686293673 912980924 700206538 742846949 946754385 994926009 768890366 833344854 438599536 500054996 897559870 994851664 210664740 214615863 658109027 895061295 861591115 880777289 895340997 968043961 751020253 895965711 67935102 142089143 370955815 711426835 44490945 419218535 10975874 741218756 580681230 754841945 269720956 976391243 955795971 991245397 715364869 802747447 38232508 566437607 610271192 879520304 739258002 741820869 452318077 952327458 452694733 742735241 377457109 974906452 717371115 980898650 414838355 543907937 722933428 784517360 687286400 769834916 906333812 924044819 854627475 935930251 880267737 959991309 127044249 205335556 871449151 987966716 288807386 590802772 253815346 745056372 923228420 937468513 347453583 952543598 17336659 340769399 362812841 426857148 278910371 846705848 546071220 748506478 819635518 980287922 222183976 785011324 734628048 783422835 916436516 995915188 840760551 884938160 724608239 997587801 898944738 913305626 25838140 585945042 340182883 715047626 847695707 976503759 448775128 766025358 317998762 501964759 861136168 981253519 983483939 987494227 649387239 739940138 629986176 824113988 647475925 756777892 48820789 723396342 954854309 961855389 693577127 968031965 952661792 969774018 427120140 662081061 978355469 998938267 575869355 721104890 273784617 774334087 773825791 815414395 646955173 752954186 706063811 917351894 348482603 503984451 142606937 947442687 187389667 826812520 342953758 658848096 101286027 208700884 49559208 661218754 52627272 289501368 130975081 321737365 394940395 595840815 400195245 779092678 532164884 788283892 740100232 796637935 144250885 859159466 577379222 949150671 998849130 998933000 857313667 930587404 97926580 844353162 585400531 820300596 288131698 647888779 119784943 400713958 58491745 512990677 722712846 729977217 641077163 962815494 61084877 278803621 495434142 606295413 17743321 222640489 804165958 840156018 601114509 802426022 181915066 784983033 41288724 887286000 905111693 931221905 59655657 147012933 757874171 960113098 72084405 370674100 892820499 965510975 724039481 927375816 779031701 949471426 700012140 751116306 721346346 832033277 165056541 579848558 166004834 415052633 193599123 690179864 236924724 922444986 201434203 219121876 516718518 676531772 894633300 928918716 173985564 340679902 614953048 642415711 677985769 940159978 542192028 819542770 750755081 883520874 1617932 865803858 110183302 264003583 300299609 436994503 864610744 969763295 870262109 918856828 69923092 641273156 439912457 641192213 899317264 979023918 588622391 602851382 924301537 997336719 347463113 853414768 429001417 771392170 356207027 942574894 510744164 815543909 587514277 962860865 520601623 731543551 231752614 690335136 622269921 653509027 438924233 566795200 416436650 679019052 706987559 986273460 501725761 961380782 766235137 986090291 501212435 643279865 428154179 449972228 221132160 873718524 993486556 995441331 282446981 980445652 40799494 910123611 5096318 346869206 958679996 970720820 65681973 492987411 257636937 906516959 601924091 686401584 90099842 479317741 32218187 984902238 765753205 866645939 497033244 602903021 62103182 192237580 632663047 952006762 967436034 977006059 646046106 878051399 398473171 669326034 829118621 889037517 287785249 913784649 553805597 899926455 580047694 588435316 976973370 990779784 553723297 724146509 789327398 856777914 144792575 485200810 137929870 225754068 977192363 994416384 554160950 898771173 479648054 960100151 208051660 249616699 689166233 917323703 988902949 990441695 582682509 845012727 325853869 951543341 434489895 857684269 173774170 409318766 175652622 609426369 558252079 820246964 609804163 617095600 932704235 980526425 327051103 530290634 740897479 760083707 785475794 950406662 148444290 308192920 622989673 669772589 394065874 641095014 871518167 908775700 582983169 728928152 86057132 165800885 37056796 39114624 951528660 954047535 713651648 735602942 874551630 938525635 287694629 727222856 711421993 911616222 517049327 645837943 700419060 755074120 897739675 926639048 934861136 976821626 46976134 306219096 683648552 733374265 65100411 485954510 805231064 937836815 120434216 193771792 490738679 993324855 963569399 985375208 731118220 949887502 689820084 789019766 204200406 986550529 175694289 250880092 733993537 921771701 793130825 850823214 323744962 625321809 951964523 995720810 493033278 656140942 807622039 967343015 95056510 826566124 923481250 999595966 558411149 840247837 420352339 691932514 178553765 876039639 188116758 592551526 695897095 718660501 691338212 694930920 305966476 836279940 131247680 854253746 198890463 793691301 203865130 684434660 349857794 922566563 244443056 610222275 516645708 947974884 818522379 937736965 878161311 904240254 52148754 175668842 494571938 956716164 329014540 340638603 985165215 988049321 609205964 935676610 146089362 539488536 52784895 104274879 651544628 699635572 51375163 400666003 721911443 791914667 653611594 814492159 236024282 907745840 405793426 971397442 961567809 995346472 898401478 929869013 706866391 925110217 800774834 911890376 829146010 990867049 501445631 544612641 266484017 917280124 863407271 952171690 716935552 970777830 442089494 810610529 678946669 926850079 775950394 981001285 193357699 550651285 588200289 648180350 82573206 696814456 847546663 878731635 858121425 906356442 929007598 932702255 398878747 623071375 792505026 853150218 258384465 306400800 854899691 898845176 335538423 861487107 173999285 604290049 938168406 987547107 838188910 878212756 370087854 606046143 367638666 692444734 397508229 740262087 803291054 849865034 940607643 982925267 991232636 997696583 545299271 814391237 855462214 869798028 833832565 931496353 734259167 801453138 761586849 976767220 655998685 778164495 510188025 847966589 372133891 897393481 654548023 807572700 828374988 971154318 12240968 617673970 982012350 985660916 869077247 936210377 374544262 501827829 305478349 776666355 540400212 832029286 136082936 856295570 625412809 984518451 117687018 607947966 473284102 634115285 695624548 973067103 989662028 992705424 624889742 783416803 494414430 591925743 302441388 870410324 689045843 700333596 552037341 716463620 577720522 614005012 759469980 954323037 504539896 621861787 814904985 923614547 50029267 975266735 452674698 461949927 37451186 260267512 543328827 989151933 792777071 850748006 578985495 771127554 682000339 796816391 353989851 680514015 885233888 977242629 40528685 52274211 617614357 793098053 204807091 301779561 588400440 863866167 253224436 475989099 786094564 791426448 311163388 323584032 495599854 810345255 902290191 984898545 58222038 299017500 636556880 703264306 733435433 883493259 4800466 825297148 240672935 356546970 719851704 876215868 807236054 857630282 350098008 574822072 120438137 470129757 999584037 999675002 412089375 767983045 971637557 998913992 160428662 677306656 649453760 707219880 772708601 858668463 865564491 900760634 293931129 603822247 548711120 758424632 970240942 987272093 466582207 667365140 371193745 792427932 638611879 993244240 562688632 959499827 1723598 140424480 721207789 916259472 399934073 750889178 610330913 623047395 788400027 805084851 88858449 245269706 273368397 401932676 321000837 558183865 408882023 414311237 976719417 990128188 280645440 383332748 522864109 649066766 421005448 800760990 664972873 688047552 959388655 971140713 246334234 605231977 151488066 185403169 567235285 583263589 142658419 834988435 476582633 651757335 631374140 760491437 585996461 965270041 80978810 404246390 283970800 777173534 967480974 970782006 38274015 871782240 791455943 805012110 570774894 873315941 260915266 352404270 948980098 989051514 609719907 614067353 925808111 990775046 365555671 596488570 2693553 24030263 238450635 238568447 211333919 986540585 77449559 298557436 312565042 623488032 675590416 797301624 217913340 652456412 938631643 989110271 323561435 881470446 627736327 854492117 191660294 929720550 111001275 805635974 56264963 560495159 587806585 911644809 58984468 438868785 947050138 989231825 431648509 729261957 464436730 479135436 166744553 813882738 269981276 598506708 228785689 547927190 927924842 980989786 819497838 913677521 622792968 774525734 191743277 465439496 342702961 706800678 698918952 972238913 685237663 699600878 889531795 923725701 303005111 672460551 693830170 989451069 53075449 817325807 56884373 212553789 633763724 938154450 118965360 728829394 922076318 991146754 474965184 891818247 102958188 578600241 755795844 929863477 538437327 863958512 391561496 948820284 218744077 351920952 209117753 674474481 178548949 910165896 71154121 72876637 708096599 902037872 205454423 737448027 431644674 850405803 448170942 640823752 846544354 915380781 57577087 549790708 136108962 605638476 223610485 986959279 398108214 485963648 527551975 936806889 496127936 864604770 775031837 945538733 488802302 712569080 2560459 408997392 575596621 864866358 828739134 977296941 684334780 781996984 413845467 646390717 931711448 959894044 441057559 696450910 58779471 841045321 880656532 907242704 876206881 903032458 876810804 910720844 288803424 376065406 175430364 762971204 914069573 939931525 441988807 796064351 70005646 661959551 58616312 464954595 846010382 958318756 391755682 637938141 950258385 983385202 580535076 862325806 317632380 765346946 884629365 904734793 34451417 114022833 220882755 307504113 224880887 265134012 236685081 772669346 97234869 539461194 876419920 885681835 469042281 566115328 470402861 910366331 650432848 769171098 873926597 917635654 84428758 356275464 894240111 939077582 388789902 825776874 413753769 589961592 987307582 991620077 248891854 473932271 776390449 776806790 973596660 997056497 286422684 981366669 170806888 590915833 918970899 970205169 822457051 940824397 941876894 985705755 375928098 589310433 150887726 534238830 567773768 658625049 664404582 923113813 873366009 928065579 89343565 218902295 32708925 873584900 332159379 721397660 486630486 773973708 845320755 992379970 609826938 629075876 903385670 998263750 633001685 635124452 42562754 802574638 345957838 766568339 956616218 982168001 660332864 907127135 314504150 807238030 926865631 975968402 383955990 657000087 150471688 186355977 295520076 820994418 708681040 748829927 214139351 848654123 647882687 793808248 905809468 960290068 314712494 433372808 85909139 452775633 627153181 837659522 356436258 707645785 310991899 470704786 500201436 907012055 779914897 903533457 659404449 791594570 4468039 143394958 415166393 778485261 6460967 328127034 495269200 738705384 851128929 861337218 974222440 985687563 22541044 28875354 548362205 604369999 185589142 367138144 30264368 451267951 321492015 652084189 128274849 152318563 72695234 636174466 687110795 955239783 797510082 890539065 708587743 737220159 406929312 985042374 807569386 837701233 582340020 704603334 95115284 192412909 297674582 487170654 755674271 781036154 74891251 960904666 897820623 920981664 237693615 805471749 49901549 384487456 433177459 477940455 566274162 766080719 727013987 905576151 101537995 467250199 918515069 960990855 14316322 824173843 400834384 541060186 99237236 722325668 538233908 988283339 719942480 881853419 462928012 588952102 817977267 912800505 600341763 833500192 978462924 997783424 345666803 763370877 527436102 570901864 400181050 511439856 385182139 762286086 52718627 111521493 186830663 201692735 109003344 939753632 933857377 975794383 773407992 909563281 656838277 765283598 466763937 938430609 627885150 921928369 970708924 989647716 465737400 594320424 251084733 775845927 299858503 713778358 656738259 760459392 602258719 969781384 552712574 942919644 211861618 766269085 690681077 763787243 257027526 325263510 257569375 632736344 558704009 861745403 526583753 797641143 813852174 910906517 363453172 637258964 744544600 895279235 932967681 992998505 537282461 804903027 140768049 858576256 490043124 807054769 861768227 874883718 66063323 584437721 391107758 893144880 291710903 519611352 615150567 884677062 187796878 189539653 755649697 963707286 889807320 967478452 363972720 966372628 486718159 608514219 550266141 680014371 807956382 936340650 719220181 750020691 231581209 800048697 628211228 849396638 754066746 785298071 326022960 443534784 484507163 621153542 392547433 522787401 721828726 853723885 789117737 805331940 649047334 896992526 31246696 236162608 585800022 622189576 83443256 437528102 877670246 910624195 411746972 869701243 637343120 711957222 138391325 717192259 551553820 798210621 277436077 350065330 552197016 833054964 782480006 919141846 138508821 720069455 474503619 686529938 803905031 875057633 744219788 939304544 495080953 744860058 40202612 729909277 801203271 851234805 554150280 705579582 293752268 889775061 163120470 544363016 582557843 631415324 921673436 954107247 631415770 699671808 474661059 811146045 664435143 786362404 361523855 799666282 301133023 563071445 223899812 285157915 228057305 331574838 166846145 539356061 224063088 684212493 263051668 643801069 42884789 494556450 188681987 866309187 918143018 978975963 921891386 937155873 267518297 518504540 358737403 906101216 665193634 803025867 284606865 512108790 688729694 714235460 90697991 206893338 967669349 970491570 391431852 566350673 915169286 978840389 627607246 978008639 535141603 749039510 610452510 672185943 760228592 793870343 718647576 948621784 7049566 58379559 437840488 728916937 48977737 966219970 838352768 970959002 61956517 856120985 407864522 469803412 876788125 880028021 438057085 776163001 284203942 564767944 356125181 453466720 212447293 290062782 365468507 529404180 860614947 890326700 57033022 835353486 491608299 939637914 765513864 970779821 372494440 942295583 74799734 735395986 530910903 726821446 18056575 258754130 631579596 641737719 628227897 904452151 365561771 529249086 916663569 960208043 779179667 993157284 880034241 953822941 180898448 322418120 99145688 198029872 652737357 745541076 923287229 931548751 795002626 846781402 603627242 833017691 967998258 981369342 913421763 930513830 154587726 397425687 452908165 872262764 364184564 443422374 628562001 973997338 604705819 652747475 251289437 504414383 860673837 866065295 633607752 666438728 814387754 921546068 128463865 564600241 554366235 851491422 796956743 978406452 687261918 993995652 100223357 757391600 927031224 993452116 693479936 827057345 115693872 691770405 601361802 653284333 907503445 932905570 718710146 884087957 797405167 827617231 707928687 862590449 873482082 991493433 392664567 530689464 381108924 513592566 712272699 874179261 291998668 685901833 34503902 287322598 623639849 781771458 975613392 988968988 690692445 839313809 449209711 594082723 925667887 969382482 356756532 650592060 366238696 909220840 343524398 780669992 695472347 708536120 641894214 773826795 204933112 315170731 86518833 745585612 631207095 845033673 281772752 562979396 165905808 550542113 640470577 788727430 614002800 650046445 662561375 838953194 998281971 998483620 829534112 909462215 768406172 786930293 281950221 408516267 952284144 995745284 490268229 875952329 689918047 890819962 861224114 986853352 417843364 847527616 168920118 397737220 31650273 749062072 551588601 855435622 18769155 145977229 437883146 964668555 271244856 640912252 340927909 384979172 315476597 744843990 863323242 947031021 981133058 996553490 618481117 773214549 427372306 536507143 913096004 947027141 990035966 999252114 715119020 848378677 204290957 744054869 928828217 996491346 800182271 871684750 234053041 499913623 610652224 912974486 417628996 898941808 336342038 791101024 929757485 999267922 191412364 937873823 944299617 971900268 725260193 856615122 168666092 278683795 906446796 998735499 618671117 952565963 383662775 807300984 667288843 847571977 582537929 816403759 891062067 940906533 133210789 295275897 930382005 994552724 692839070 790543095 930521537 975856520 887664617 901812949 118806861 185001162 864734804 895207830 905991424 937311669 998271797 998511744 700743470 961738899 742966606 850399848 321492191 804464256 866863093 991280632 777762456 867645262 596314363 924491366 273858441 419828545 119899308 239941753 506786086 744782929 29767475 652605324 451984585 639757048 454174937 638421971 261794633 541630739 452135034 721361671 102142639 740356509 973019022 980797251 696919509 786933197 275451524 575029822 66577150 633922076 405991102 658774908 819056626 969997253 567991975 780905962 164587828 890943552 11573303 695802363 121158432 391645259 428889160 670185967 539394653 859211674 362125016 988849730 25788166 787117795 88290858 544259615 264562255 279404800 628045435 846494388 230575094 457318990 971207939 979581461 948544618 989543363 83909553 189454656 418798259 462603778 962206771 991902645 457084997 592977543 160935258 992576061 150469801 559909458 979029597 984001374 968716358 970173812 674142532 917751920 393785860 717495381 877150994 894157155 489027952 504214975 111137561 264467249 660874465 911812274 981377958 985309525 978870771 996686684 260164256 743879558 45033218 68903847 519778876 877025496 650048092 713442932 480555505 546319747 280132548 666108255 476873765 493135593 153996155 259764115 671437178 832049373 696658369 767977856 175302068 663279195 788297001 952089609 137734906 323225727 661826183 780685357 737857849 878933658 239412023 983785594 742128829 934530372 978055695 985197052 979736937 995930116 878736563 982822394 537398494 989528158 170115806 487692591 758172945 978153383 617570291 791688088 425159322 586765687 329641591 432882769 354094635 590300377 852001221 981793425 993576074 999304870 529464563 611015619 110661352 368617241 643201176 866362930 397549803 982802559 181472854 885213120 26025084 217517415 104659356 905270249 783779267 822488640 833786873 894835938 546636633 817925187 611171867 810762365 161865358 756545927 117940911 869299624 894021660 942991787 120338720 223738385 467283894 890134794 818703527 834478974 680768589 920312430 904258111 958734050 658395827 735540046 610488359 935945678 153282794 295315942 919885234 953741996 84944550 223104638 270302440 988669195 331849989 645197349 753614005 833399116 213089161 928080984 963476111 979757464 673496208 886177020 651428956 914561629 406215623 626330858 837809782 971531969 72416772 484190637 79200566 638638103 756043077 914972041 79248972 157958729 125843195 756901877 68010456 969787665 79909721 631798171 725937782 848682763 139139879 474838124 54722134 724915334 363095643 516336158 933449508 935691647 425357917 767029735 416623485 972284271 515836828 961794536 263241974 560567818 289265419 467099046 533222973 865054879 322731813 738178544 405808280 923823713 359367837 706936272 130297243 594827700 302465369 394283295 412783375 858045315 753717717 799514708 557279770 580886192 30302302 665570813 253689761 372181398 76665082 635563848 265379587 305189793 839907613 870652634 276601908 568214925 912084831 960220037 788625347 852697063 520129225 821473274 591021466 594845929 468523622 929318771 895393156 921923853 733821129 766692816 574542011 886624816 632441146 729305796 695404884 720390549 871042306 883172805 313384313 868950080 993359317 997516467 369133487 889405801 187857768 818480837 805901836 949769503 597382360 617367494 534356790 887132130 389118372 589188409 701226950 779232062 626115811 837346268 253702257 409521977 976789172 999041192 615275752 673509462 23541794 344673956 753356406 839346059 434510967 697847810 966270174 991596884 361968695 945802067 613247053 671163901 198878282 303440493 191274755 818322904 257039748 696030063 369048478 507167122 810128250 929287492 913456019 919305438 838775065 998805401 595449347 823803085 621524053 854902784 633155320 880455068 787600030 826003887 782678018 929628687 527473746 886974344 96864217 277340943 465002590 583693257 808019142 954687855 943714574 996192867 429260112 759727773 714610858 732985237 8918204 685230101 718627990 955060986 15277309 89497231 17918570 707985217 510430295 962169257 399894777 653677608 312242067 411934349 66701437 888408087 596623513 756164687 922483214 940623875 110262685 920846225 980450769 999988265 646924920 990023489 9293397 503821883 216894566 571419620 553329561 817285146 961954200 973874894 569914551 934935213 688915458 745998871 738802541 965483336 91913933 100121965 549917663 960654943 119761564 307507948 463812745 599551960 593355849 950170358 886911534 956223206 799502622 885050681 40328040 852739309 302469269 573210960 572120689 898752083 126766816 955071608 493246972 569469543 342296974 419082467 98850909 487565077 985132071 986944512 60120977 791217142 320031317 500259787 750893252 943617655 124593276 485688767 901884143 947246938 409954627 489778780 30359063 351977572 602376934 857995294 951386381 970493052 142166648 526428775 867266885 995319343 778082647 807394299 90758673 614732872 141560174 577761834 413355028 819828842 616311257 865080696 509132172 837453011 267189996 443514029 207732435 635593058 459504257 866257209 885003504 977841473 455111865 502574363 407171528 828545698 857853754 933308775 232746008 592590727 550002098 660436939 934842703 947412746 993986374 995730237 648505643 844980280 451759489 945694162 839245851 843188538 36594176 995073708 173176832 446456852 410557716 885820351 918891675 953819738 766793238 943529795 366204649 377631939 467738825 920303210 746525596 894210335 717708722 780447789 565353085 725260952 876243478 947226359 299361631 483260603 988377318 992518372 435614710 528693259 179467199 998941666 190607015 831110420 871775196 935766723 967538540 999946630 332471712 898503297 766175339 941017222 368462246 710729836 607948862 832360461 834391055 973062620 768498021 956748673 853801326 891707264 232060361 700412001 845168407 986580763 613364853 856518736 628744600 958886686 559398185 998046338 360691940 914190911 98033777 109225187 662398565 886461015 839846417 873190193 859300648 953139658 12378388 778556121 643541867 760248589 382333961 753216399 435553894 756983290 26310746 164910695 878774222 958931110 699467866 918164068 852551941 898533787 869843241 939743124 583505300 985786060 871250197 911869987 884817810 964179069 309108758 639115489 689205137 896943108 550351382 847208443 390124386 627714381 436909393 798427550 816235065 847319089 424070958 572006243 648608697 943370838 974846792 975425454 502273636 717082528 416857544 538963865 1182787 906128295 941489667 997798120 648390019 808584613 963014631 998541954 447318950 543221170 203532162 553653248 672246160 936395462 471929029 496867650 90204963 306038717 516381194 577023568 368973184 511925174 56827739 96435817 50978108 963648499 681592364 739704736 843393863 960447921 869370875 973189101 56531296 889838402 42582058 128490768 965493839 981215773 953599061 999688746 722557398 827627503 604062710 699736172 824442737 935585534 710247892 776889082 525002237 613590320 56136326 715430364 399886611 941004508 111232433 593439970 940070479 983515975 318083228 595776741 605460524 856197392 315265653 381115876 280202822 996855371 948371577 956816229 845154918 946732182 162730221 661625617 948819675 978397179 802459564 872112211 887058732 889683678 316879516 604368336 929975700 936955220 608745181 923974628 912179672 972387491 560123951 927575501 674773321 820384334 496061380 905547612 466665183 691219518 83974681 634231875 28926442 755398760 203995562 392541476 19170646 896139517 115214850 579879475 594307941 870112248 49950256 358036794 6404256 547047584 277454362 389454820 773466131 840984835 200667885 931842582 11963052 421772949 155407433 565600480 437993922 609491670 155011715 547503474 727440798 796418985 813688468 873030914 316652236 474395000 770217013 880929123 202909695 884934814 771083983 804727013 170250519 341474035 623554357 906819674 784420953 957213068 889255538 943428914 898539896 991346157 913990656 998627285 3734175 886679565 333870245 573869117 790465067 807396497 990270507 992336161 735086276 813220399 905511412 954006270 574987506 879612566 558875224 816788525 255880043 601537686 423152745 650847993 121503296 660566526 730406088 837950877 493053529 652894728 615217689 938334568 156682600 611867755 294980394 984554137 721841884 827438279 13996097 563237107 685976304 898350537 954487594 975622069 211826153 362678076 775564541 797620202 155630679 207125928 951694600 969201025 629890393 898304996 415689357 439114587 658003630 766914137 393812903 685394412 392548603 617514105 461749710 944282348 238492598 615671611 169354727 935234964 623321875 969374529 931018302 983071559 44833872 83355949 264985382 744886357 957715320 970502454 905795329 963502658 473656294 563560050 422439751 820148775 200439389 586789838 957237172 968824467 307543220 671447697 524082329 662902414 157225294 952768714 854208029 978472143 625808592 872980676 550337820 956793460 670725271 849187147 118973688 702633675 279268948 899527133 182259490 274064034 521171800 611662825 964154404 986982765 546518863 609453751 889856668 915887290 546162862 899668888 428352933 572648170 262957459 448120326 328969390 409565082 557961460 876808578 475257470 641403005 469746985 769803050 865388649 894127623 656706864 736856879 100972134 256351450 493257071 812997339 345823161 710281883 990221400 991163194 549349227 962894682 840402730 846462883 999080356 999757735 481089633 866356925 674480503 934578713 120089768 296136870 998278589 999317589 6236215 460954325 312646548 344951909 78001063 109143665 154537707 567226956 289011063 604721775 382930449 931946737 198757034 348046908 938281429 991307202 930679471 945108548 447555205 469797224 948953469 986871563 956081418 981107661 236343718 454588990 70745408 399565307 409743417 441435835 284124197 830537595 926764248 986990219 753233118 934028838 511427592 859058700 928262242 965697449 953819402 968430967 108264919 443979532 965421405 976455230 962370653 992440229 742942074 823632065 881897173 944149774 645143698 655467986 923900799 943033738 642516203 841556056 734716505 774603077 464969777 685539722 401984470 761004594 488012135 619152253 9972115 131231018 278670650 811808365 769526376 917245670 563956097 734680793 746307398 934583701 316860022 682294342 909985742 957273990 862321586 983850350 245183438 677891146 648832765 858895819 509489206 587333145 558903773 623731405 998544623 999974804 797996659 906430769 71529363 188568447 404321348 496157688 420067865 767583213 613850898 751927315 213008992 770169865 557271426 687380099 628320352 976694787 848595921 855939733 369158445 506751629 447059782 568147178 978915442 980313581 500099981 512974963 939501768 978103557 439429376 770817322 401569871 955136490 197097789 715830963 664427516 784810925 402744516 946533102 112982963 934158216 343637227 966285788 805740389 904998113 284721922 383348095 313246407 458162844 672417733 910506259 294544697 401093869 765545117 921839850 903223798 953364374 728525680 985008734 247642809 324179007 106174330 779584931 149800800 577691537 410894212 655169090 710496046 802145895 89447969 296667321 374680852 767076849 3023254 876662290 581923953 706841672 684347029 915928569 227693832 237588296 194596881 606053687 212371338 227903180 927664602 964296409 915847822 917965353 592226697 971884634 912056837 940007846 795638935 958842515 617146464 880971479 695938158 746875291 653216405 777313857 976868198 997628171 230797732 557866310 18225294 134055967 750005771 829040999 226957799 637316527 411303282 887092170 400956732 685908552 681943934 794874935 6701312 546194963 602968521 828164753 673170013 778302657 368098687 407610856 390356878 486523163 823736600 936187471 680815853 762832932 984291984 993812485 450893055 837625601 245812901 997958060 133071935 232955416 163814915 853844433 202456775 896593618 472406351 661485508 114538986 897011252 593107852 987022562 313823816 326220830 716868903 865331845 636997134 837028659 43068680 596367467 101411948 961401117 818195424 846667126 387390444 424099537 842560149 939528026 19007131 965704090 776998824 915019034 721285562 779266049 300430171 591957669 319857006 337867292 928363626 976189225 81927238 218405356 833596884 835245381 497710980 759799628 712224327 833113974 445227833 983211929 352560354 467043885 580324495 655575998 392003651 445401925 934158756 986441348 103962590 658947093 731429616 838931534 150869246 672664400 249374640 844615865 155440496 727098388 388588017 811132839 754244480 781671831 550824051 559452848 849691157 970970487 798386372 981721382 500297138 707118464 96641877 595004610 714023074 784823411 642378806 846143074 395357033 777394694 846160569 913260553 619500278 931432877 378451470 479810342 12315744 446264415 822853829 836789060 149476581 407604100 202694029 866552451 206934722 468318377 146580155 909862538 261029781 581582745 999904797 999964036 411873412 959698509 431068504 774134292 768165707 975624201 819982113 928780360 78992907 818216841 391041342 489402959 177003408 497168427 103141166 449977929 759600328 833159314 553875559 688394978 737025169 783284025 808587450 839529532 549478203 556375964 264827322 330554522 351890814 851685958 512784326 743940884 213620473 565392160 450774274 686936397 736028932 837429826 916721569 941876014 239534413 883643687 846736398 872148140 348624472 463732052 676469138 996880580 865860046 873565660 12202920 358299908 3664848 609835650 208556834 497700255 363217052 600388334 884932522 922106123 896459929 922465291 984027174 993053653 844126029 914790193 35372030 275215885 887169719 971423612 502178728 717087067 146044319 372969621 477029232 582022014 611295565 972832075 903090173 971890586 661000371 832204055 534123028 824951386 385473150 985730118 664461719 698208459 169684691 740975335 721934131 996745226 957971342 962517005 185106243 831246195 879716139 917735050 259414184 831468053 590226191 649823522 801187817 933142086 301863396 740901782 919772610 924973774 242463225 333745121 436808526 537234052 525251741 902651009 280113964 490695764 34070093 549660157 400627698 445168929 597754378 928190500 68309651 71109361 33483410 814762367 838382617 892292210 492955138 763844016 12249109 720642839 211868818 539762110 407794454 771280965 16861655 889338824 501784426 990562488 416438256 542586491 51865730 297552751 682817525 800691740 154483446 782918899 781264148 909128743 303816493 848679285 902458427 947523944 15296543 469389685 520997368 969981672 306322703 493129189 707688401 813650831 798129518 930230510 185894600 250533692 718687443 824694295 627308648 991088418 522002932 700485181 429928903 602010205 166046687 505150863 340768204 552932412 465521166 624477924 286198347 457300096 244011643 390107171 867748102 943004464 825685716 912147690 491603983 837286179 135833973 731616988 437399872 588031373 226108586 241967447 600194484 693800252 566758808 825724343 247093128 904826366 530321043 542731309 852460870 860539998 911862320 932333317 96382450 674533613 908509182 928822371 166524696 977161696 192989261 592510894 885166700 930043540 895558882 911226618 883843835 954674072 736579661 938547521 696286340 788019526 338733589 687576482 158326922 819518859 213069593 748798220 359134869 385266208 369451051 949912019 319538301 339652851 329671077 782357386 791802116 891602445 524543170 665321761 626653468 708144236 968155422 995542137 970284828 998410491 402279790 853188743 54419196 271037982 518522695 728346699 505316311 590516592 544441831 909342376 597321724 943114413 961623533 985700431 774254480 937771560 75131710 431461721 213664983 819149796 236326561 776934223 895451098 972388889 312139307 995225566 746990698 805754094 333515830 840871426 695621026 823335711 87872150 640435356 872057006 963528490 748994915 810288689 212764650 797278937 704820135 997528257 142295011 660783795 184341340 292965111 549062306 845158327 389551001 640640998 254922478 619279375 536363071 839334708 190576895 623216507 798316116 809290159 355385918 457470979 776102304 829220824 977296450 992421400 839597930 967573035 344738166 688741350 58693175 922753938 534455248 709964897 663804557 950886138 629450157 694777441 812627445 824508592 102903031 137359824 841432048 868076456 240433113 504134794 472902382 626480344 864408484 951817711 471441026 531006943 80939827 342180897 233053067 929534396 181719162 187913701 533331454 806823073 512041275 977632108 620446097 705565981 580239994 773721060 866106033 980105286 270641904 789900649 891409751 901217405 532791403 764907259 434378220 941184779 578768861 799103415 477572305 699524425 577200159 619379619 221120901 520546050 463269585 940906924 498013172 598920073 875821996 905314189 519070317 735162022 164323702 276810787 915374281 938521138 817475734 827818226 712947227 919074645 204207733 294323210 764045810 937339300 275526541 736634192 38576555 974796680 600032784 981131323 562556982 566961372 274678509 470730057 251985932 753312934 141813832 692855422 965435308 985574164 609143823 698767128 349159181 646797947 398765118 706693944 220917236 304204465 887650626 939749953 790100110 866021755 940168426 950273192 406540292 592754985 392689599 692109018 938635212 943770090 85164603 938539000 669021022 704192440 618474970 701733991 401970844 968325375 717950108 902306645 25820377 865318016 655658159 680370850 965903516 971858424 663378352 723100127 183947347 780806682 902195074 917293154 450036605 842758945 252496332 618193036 318892834 545772818 445654763 942075944 37207755 198378115 533588555 753175605 834411964 980978731 842661728 966981400 387600264 668870340 729459477 901720645 352531108 663899005 533140073 998744569 933850760 991486866 126491041 903145368 824306221 865439017 128472589 289403173 425037436 879944793 702553620 912589689 790684054 892143307 871279224 934141297 764083274 837698321 849797000 900742315 605971958 890096455 124459700 668611825 226800953 366506157 362435385 369220229 966223023 999914141 528965501 665286554 351876108 879613351 525202158 701065432 61283274 120520655 795460997 851476166 293092541 490316310 560935427 563004053 249565273 793471923 899486641 979077179 878950745 924169986 114058379 322979531 797896902 867665702 342021730 880243013 740074376 919774280 719895642 840652477 411522979 483522120 538825298 975154760 931429063 986776029 95643260 624874216 362466836 527544016 622984674 730230401 645352915 837642193 115536099 632266171 558640338 652106015 859836268 954433956 281785120 375666100 359955717 402546357 900835445 951986380 362735527 959812998 703797823 788222057 446567341 743410874 853507393 921140175 857706125 932324892 959582633 971756550 544094145 645195578 450375116 705265904 503265967 582519424 21540846 254750495 708167502 849158186 786883062 857386922 721750910 784737207 81316612 706495290 845987460 933069236 214269789 406180798 611116758 637201752 436759901 660085687 683634235 789328264 210061961 674003312 891029907 910686565 69065275 355786054 562891838 614219792 639004484 791334956 133911166 356345559 342050804 831792247 816908438 849525490 881133760 889053682 648330343 748324380 891924006 912837359 98135054 158803627 223468554 453366111 871424656 963260409 687934775 721451718 381767364 599422505 12672129 517456518 338030725 624632146 712073638 910137781 643160701 782105971 595880164 777511136 367472697 802910949 336569564 338334031 266019342 702144418 586281049 788292299 386456981 742075433 341765165 443779465 258244786 688197809 570467318 782674461 218446521 637165006 359141767 548102634 401360376 962753353 509573821 693414178 43175688 709309941 444140168 475116172 951727080 983116464 735944047 968699238 551742158 576574958 849663056 998678527 149048026 352371902 531660378 709868703 719124048 784927944 600778617 821972706 639127330 692629713 919189693 998306262 805903131 822446983 841538866 873487583 67784997 143443160 893115767 913785036 699000078 745338984 767453765 909496865 453215482 810033306 987528056 993031491 66291675 853312933 726537789 821274517 350329020 734027860 376315466 820348683 654070755 674316518 962644112 969037123 545238265 685072298 997111744 997446570 514897084 860584383 6925517 743906923 28059379 441316462 67877721 927491952 654413833 729065669 38214787 508902129 492830306 876990221 633593100 916538583 551494854 579861330 603766531 699405470 977577086 983981130 928717303 962552165 976690822 981297670 358762298 814216994 465959474 836719501 673111867 757219845 710980075 803994411 489778381 804779602 75128550 533187525 466373430 945329114 801084543 857248329 951495963 964577369 297450824 480700312 140125013 478195211 934093836 967238554 447107574 629399626 874183949 981838884 67695015 738308180 360574446 575391711 506236384 651086833 668076948 781456881 934407921 986626144 413176073 635966719 781007578 931420284 860382847 910851386 388441163 821748526 822995909 935693986 278515749 837300212 224023118 235764099 676865431 932989730 650065253 980043347 70855126 440345479 314699412 971958041 809285504 956229419 267576943 608784505 826480097 985686077 41003119 95799524 543316467 968928657 316789889 689491265 196183231 646504707 230625983 416889723 561267184 976549731 765249722 787029473 76914824 462121366 535673283 973452533 568565235 760419894 665759373 752186843 340803317 658757622 992853872 997757786 76473059 944815990 83689163 294473289 310024451 824368040 528398790 984188331 384361570 586547607 918878054 978514143 239215886 421792390 429744299 938650169 668176519 675833268 533087122 929763835 346785662 564665009 335531828 929256937 781279949 919976448 133601111 884806743 832616804 918130987 626832734 664143052 44201161 636446529 565327769 589945007 628645248 705389801 672301301 739677845 362002404 498558769 290735188 671958075 810451616 989479169 253523569 525121176 930058853 962267147 410390381 634696842 43884125 493507140 356844451 595477462 171110435 441637227 500624073 795956116 289215874 307771107 40046807 635385966 690538546 901594212 781344645 963352897 223649379 795544152 131860476 615722143 198552536 602936213 476801948 802748676 946118488 975576449 599661699 847038941 161046269 238647602 900476340 938722629 927302048 945479187 609983286 703361289 858898206 859335578 160839701 195770847 129792123 745436572 434268904 629635368 101487477 237782629 486232366 887061899 253752816 670232270 355367142 740522523 280657613 442213869 39249328 54321640 51746023 595678527 379085586 431969631 363604918 950355871 260274231 465310278 284471116 691720677 12875621 694999968 190816224 334183167 422958948 887693236 613075843 723560941 593663705 868000453 205108151 660029856 55079546 525764225 194621991 305121366 217864502 350829050 27850334 877443376 699823512 959223985 526963000 828129481 855642405 977976234 882697039 907704694 924618569 983593455 612645620 675747931 691961746 792228608 671915979 845353241 733065983 914155034 257986468 458261155 461292951 837580205 709247384 965884791 835409302 923570962 706709284 849022331 980795019 998012878 759657776 788057383 139974987 512052907 566036468 965271726 676870418 745577671 692769598 815758845 847535219 867942909 690270301 864506848 76022406 655515042 660646922 793627048 191531051 856874627 62667265 328893740 835716623 933419756 441920445 836763612 729241812 814658889 233934089 730288113 305886632 754984983 58673303 760106446 860413409 881745844 350480058 859351362 974304559 996203013 394545422 730384863 542295808 832816152 829057000 970770737 207599501 369417813 725016574 848782424 682684294 752032817 158501234 227938640 438762063 710140492 680702205 698698294 913404221 914901887 234053770 733855578 336726545 816083932 478684198 742435887 897450393 934111199 950261310 964915353 652197619 698780048 608002194 855868355 414535587 799306396 513684892 590976298 514680958 730203005 445133421 720890617 237227495 870427034 736824619 899336790 146797031 909639627 548233764 826154414 309781071 442513834 474107717 759268245 663045418 730515601 949039487 956898432 496705174 693092215 688378701 693876945 704499683 878420801 69605513 622529776 690845969 990184529 454281510 753301477 661665671 786683197 218769412 562692681 733177328 994547915 910136369 928104523 726347927 800448134 198806670 829761843 682893253 795664824 125249535 682877726 813872843 936148676 494332747 558961500 504912232 794802547 415036324 439665684 583336060 703870153 996050880 998570538 928076234 935833291 208942347 929397068 202157781 349727696 316425487 532142272 740020136 840232061 115667459 976193538 469853895 544988198 877781795 931154232 642500625 922254276 705534175 924538625 974610916 993503795 709396403 897423251 465832499 466768296 970581631 983110826 949008010 953566561 783153832 803629863 711521148 922694029 510427238 929470223 575461404 683476794 156808388 871615201 127934151 567805158 882620469 913896462 236051697 611901435 591401635 640941317 269330547 765740704 171596825 428574471 435040556 789356322 763331694 914454287 93539638 368485696 49035331 745845359 42037749 265875562 909026228 963256914 838688493 913813589 975222741 989994161 87922177 624815542 80104629 161050198 347306843 841944393 455588024 870447420 952186647 987762142 878657878 909339039 90598331 546875777 710814779 807365237 768648921 842445607 991898914 993299802 958770358 991495967 399940896 953122800 708867332 769778945 897178003 933537558 390847134 766929266 284890672 875766297 600041208 858325794 547182156 786949802 115340689 489217063 716865700 807866183 470769287 649794210 568532756 662521862 930221024 958253003 507521587 669525886 984960341 995870326 737855843 850077956 627803055 748408610 447693220 640486192 966523868 981831239 462810477 631680546 99180899 865866313 668956404 839505045 4761601 32095341 618219148 656265972 28987100 829104663 212485979 911701416 30733626 570377340 878019712 926063414 495754314 750461677 93882436 324868784 126614219 919737630 520517623 893127158 837072169 859449102 610209179 930411167 500905233 934068726 74840595 288798736 501768227 551246922 632883221 971374629 524627102 739865163 33185560 893269017 367297662 751422278 583465578 820292140 719809002 722709852 861593279 886983016 895320864 924398982 442846555 873988473 58608838 89849251 591843115 634799559 17801811 244138947 60110454 982298407 657634486 954128182 10461790 196816748 746275569 878920077 347766784 442661522 409771592 891177703 895651612 973070028 498532028 947805591 706217987 818513897 971423692 999124662 642114349 789292038 265185989 778738360 208667264 732365293 89192629 793096746 945203317 998069204 797584320 802157457 555062104 964376437 829704753 863481380 170510838 792552868 918675215 945013442 326955726 546952078 892161289 976505827 901342173 921291578 14572203 501096041 595994349 749313034 89555034 442229954 483551217 828761400 661686166 998283281 490582958 565243343 926692554 957989269 969786278 997758857 947444672 977507521 971471002 972930719 315386850 841308298 946034585 990746790 220018473 858108316 545361060 730346601 46337853 775890714 968152764 983000768 517302485 670038671 907296590 919479084 303066992 921278566 454328630 865835758 537988688 882837417 752630695 797652457 843807493 869158907 238090992 954896856 502606031 662613580 959999638 989585878 413573148 854800956 937370906 962325376 566136972 625543037 511334587 787129986 271576060 418469808 592580246 684926430 22832488 321515771 863596298 885175084 387516835 641174102 96035613 826273122 386388938 923545826 838319068 853716601 623448472 980773656 520783271 895825101 246279817 660011853 35247595 491818857 510392957 532373139 717379002 988427471 536776201 683178828 853938671 900449590 390364377 639639125 628216030 651253194 466216299 689787063 415827043 601908642 693031090 699082983 872057858 947360630 504141225 884246502 711258111 781076390 451766985 936094720 390974820 412828666 690282245 719846030 929079097 977852609 762358823 873143532 711602825 945938970 739383786 877944644 419077531 945225810 987781655 988921861 496077099 622645718 205993687 678738276 483805402 775791001 742388252 858521914 85334617 570479565 719153223 889129241 393621404 606530006 6011851 87282957 333391887 602870214 175898854 508191822 338471489 950738787 44115973 927434249 842458410 928348200 763867325 807239478 51382730 184555105 333153014 406674484 627353066 825300880 609437393 989037186 679252656 756237373 966003209 992138241 903959879 981947243 397588891 458487521 67748657 681857724 53033280 152188341 944087537 962313200 925200997 940290500 863721605 976486010 314901597 644242437 434362118 931919235 180789826 744127736 725671476 885923664 45495117 65116323 11086770 991198366 367745787 435740537 115692041 395278779 233136985 271105999 919710852 948619035 302219393 450837262 194582433 685787466 301307725 748567941 392146087 726883375 965566763 967602115 45483422 450722736 626684335 774038112 19468964 286699076 369415488 982511709 862972821 952170775 616598030 786416040 280329828 574468531 536861981 669838376 633401613 666335757 156889861 583531361 52520493 153082757 419550757 760668033 517489751 867252727 642277432 924510165 377761938 747427742 333158378 703596711 264174615 412580157 446344053 905853982 562914475 591808097 886435429 979663677 867076987 894845088 873715279 904794079 637448848 828766168 565223199 782061751 921823710 982328350 48943996 649027452 690149659 778552459 64825001 534434626 326014981 600544920 757360139 845439343 154245001 508996261 12058972 675758675 316710 57637574 979612943 986661168 58208861 352434373 437188906 889630270 295875024 992003819 893531464 926052000 101897893 675587499 671536780 809631832 195189996 627823833 734936287 801369749 372812899 599783405 687246714 712893084 133053634 489189324 827899643 945816806 892017737 935412027 348461172 593851634 969272319 994092072 399286392 692344157 682073016 997339176 877824665 935198319 670189980 800727299 361880484 448303442 605707601 861837997 111591187 820468861 812700177 965993668 69997513 273883417 930613637 956022509 449836372 895511700 74191317 331024550 60439956 822671461 318648167 951517148 407882715 843740400 424725358 994125207 203437854 614798290 345443039 356449684 163993852 873663300 167976496 487351396 489984528 715898123 620038547 695047105 309862650 803021096 726908935 860179927 399176546 874910174 125978484 365848388 42293508 474510712 539634153 702940042 42890563 610742990 540663199 915348582 233360037 575068575 978882868 978946162 827099871 917777454 971933853 978890453 872967602 881058298 337747918 849209577 755989380 917610558 636035373 994747895 339979576 647678231 2541129 935543381 202536026 633531695 722971097 942011374 65140730 285988664 488307943 618220589 99966290 614205836 316187025 489807279 881968611 913513583 153915076 612549351 495350483 616073411 728474991 804131342 584135181 585487652 907600662 996749206 245540283 428442479 622576356 741226692 8528811 944755679 330376392 666606679 967411754 970642934 573378711 996994368 977308643 982995204 406428989 801296465 234398033 766325026 425730661 644675785 58628296 587410608 179965903 949011303 797913594 834806933 737028847 909959352 868831131 979574101 785599991 925331032 254600811 623688779 554833546 688150652 319168185 476482294 336797505 962426882 817827644 886408718 815634004 902925217 645589489 984028961 896593177 962434206 860206981 910039748 542031306 882141475 171138563 602824280 676912555 973688998 252046038 411275767 527770685 753476071 396160975 911155571 798082739 884106219 813880225 865423868 430707276 575844805 584029339 614132184 915390620 928372631 936390913 993940261 41063276 973093657 573878195 579188079 873001327 947647813 193163812 771636895 635397981 717310949 326007955 727788080 689506080 793288804 85674919 341018212 466377293 919172568 92254145 613467418 852523006 956577749 919843727 957980274 514301310 626996867 752540683 958291407 246477324 729973690 313733382 880049570 248876082 944584182 497980779 910214963 411329566 725337197 230850441 299346258 115825012 134201703 447066045 849097195 598208834 886188994 628290399 776290301 496616507 605088996 350968686 481443174 52782173 359753555 878837497 963787005 225733022 568372581 337464532 510201425 639019445 781846904 288307102 859067633 284509517 404452164 380881214 879310846 29119587 341427151 647276598 810536966 923682908 952736308 822098245 994124281 287577732 629125896 7961315 304191209 604433481 877188982 206645028 580946416 981511547 983628777 634198084 913321147 905748933 922683748 916814362 981781894 58407581 482071888 503754798 591077260 720116974 804068651 685093100 945526678 999592179 999933577 902440932 962496644 791918727 792927738 7871105 836746685 170224231 689975413 920931193 978562623 707234638 848115637 306951669 401008881 590330605 702645486 910761570 919430019 940943252 977770664 205829839 860818881 842134822 961001941 66639277 153399870 135904267 952242849 555372692 972562033 593640734 926185966 232011859 677363284 147796484 772896932 889798750 968230636 593482316 658348408 733963994 765603056 758388273 993479596 953050147 977847353 213362948 810793482 495797070 611925766 599539936 748495298 762420776 937233863 433832400 507412921 941196521 971159215 488780169 590028390 776888494 781444705 937700950 999480950 514424742 866750731 580451065 822706167 669546834 957525979 92176085 326797335 357553463 616271505 889718361 926251603 497724480 906732497 110917246 658646224 613524840 686415100 816732632 971221407 220797626 284313284 399140729 612857457 912500943 946999543 653586381 776851226 485111340 651814624 837362446 963962333 61478937 765539259 654602473 968843238 73244558 464094548 931705301 962177289 68280641 296789294 73465085 415794767 127089474 211987682 455270894 961664668 657429461 861518193 822623673 854123224 249792334 395299648 97493846 172177927 472043907 997118114 856014927 978816135 800177975 811147465 115436587 578395316 792171210 983500634 122505449 717290023 714558787 918620732 223319621 372529666 125729793 370326655 9592418 400382935 481162949 606094938 66319622 546977924 156223842 944083151 514367116 879269819 799661200 998385134 550668667 617880547 514678545 854558767 769810302 830164503 492557246 934449920 490626909 655216561 765734300 995964614 640503892 811526835 362550606 592169999 408890986 823345354 309545195 353359076 468577026 795280548 509680352 659219429 178385514 403783923 391862935 626882558 625399798 641410171 377975897 626902886 664277872 873559117 245898029 628011537 587567953 739230384 199655102 796166308 772893263 868207459 218579355 940965428 463674032 690546821 936848900 957634895 109774053 396883144 964986321 965942911 854383363 933883872 54230612 405302049 832888092 893887954 484597148 851345917 486832292 501399370 866954814 979991197 153352510 919000879 715058163 799989344 178950954 674334747 944947492 978637599 37800563 558685636 527862531 773981817 425223464 892883575 583849929 978566395 110511529 954480635 968895656 978771088 59352735 977205160 29037051 233541468 354730580 698197083 787114949 904408707 662827606 699348401 311070179 661775608 826327796 836536410 118517249 362428252 663886961 768537730 384178859 482577322 626666435 653026653 907491680 997000217 818623670 998295977 270393300 467891668 726025851 977637373 975432979 997503840 538311840 856632710 433474477 776756533 511887819 705991728 142062487 471228415 699683189 743423376 632427478 892740197 178901675 393466967 930002362 934514135 650617136 840062014 342392489 963360883 898223005 986824356 915872105 979840083 852095149 988607452 488386358 957953255 555559806 828037864 255289189 811887865 546013119 937406510 175410086 938580330 616791191 967269511 988046280 992787350 396578736 715524010 617622577 927982127 982789051 989168438 497951938 529618583 586042527 832933328 814626162 840826020 424875917 769237005 922684824 972006803 586148225 647986436 829255694 972024584 720771505 722100097 378170481 408400897 122205051 769671881 597704597 945866454 825074559 892843207 305122091 722281531 627800313 949182823 617920487 643349739 906621711 951624954 392097112 409145497 478669128 896789725 734922594 768689704 633892600 898228378 365711937 966673540 924853394 925733349 266416141 688954990 976463151 984602581 28459978 670636117 151489458 463556372 302726597 457550118 499369337 952093177 816794709 947725232 306396302 954664232 304914770 421512422 575548103 801180016 430532768 543855656 492066930 821045793 539592337 928209911 846105220 961670729 712861765 777949088 101625003 564439046 742924106 784152546 21884918 564811939 871124772 908759042 320388769 954189961 201396398 847210822 671141379 904159953 588417288 969861113 450484636 727757829 925681877 986469098 597519170 675281042 721147732 850385249 220240271 956463087 808036351 906063582 837795746 869276463 637558110 900338705 705628824 778719846 534939544 913468826 86861920 876962931 112912599 955904569 664521977 999959119 76150422 971309366 309639941 900345892 166788327 308752394 791655653 981169437 853632739 986099928 971130792 982322173 335543026 796433104 979714941 994758375 965724404 997387113 39826176 402807391 173859292 434602955 897596425 980348926 667756065 933174336 54842424 630586547 812705274 895356467 181850554 387552880 627490831 863516083 694604123 987685000 346834778 397904934 500282167 879689419 844463021 997397188 449377597 883855288 394773971 430268306 972180820 972908111 316523709 488175679 210334007 539366679 302730113 312724224 332396289 739956265 64806067 523891300 296488763 674283497 48237805 259839216 171202895 415188077 465108698 735495974 913153894 994700671 904791626 983838714 948705680 970026974 747523489 930668731 849918761 877358195 427471475 964093387 682979527 698904764 269086083 417281367 323059106 707421743 947329834 976207896 807738269 981395418 13062872 485179249 41493376 893373219 697826964 725562044 251575195 984129624 911664742 969522913 651340025 958295438 60540959 476240431 449210731 982059533 980440141 996875301 32289891 930391976 797887218 950149393 85649669 587877276 639212258 963319005 916591364 931843129 126970676 297780750 619735253 826922613 110652278 651719117 755246497 809768724 53980849 961450619 751609431 939525993 803187443 839162928 376399368 961812391 904333072 909267031 675685 872715984 201150018 438082001 554814437 607859950 693378062 848723109 885058491 973627308 130535488 146295280 93953203 643464288 960844621 995375773 965898545 988287799 698564231 718422110 365451771 577576025 550089935 682063220 532218814 787740045 703345646 909729186 696465805 911142440 960434236 973778906 28665376 45612314 652741866 806938012 381856705 897645042 56491627 257540587 561178136 806485752 686242041 926778691 112700322 148961031 397362191 781830648 783960003 816873217 729298979 885547439 401270600 407812796 314295120 487129415 58130745 856785567 774885092 981515811 703053949 726976132 431595949 874628887 913402169 969587692 661426826 853903929 196028458 866354381 187366193 780254137 918219796 939471688 562347048 608594850 713412313 931825763 879340620 973506982 830958717 884413164 686108603 884411906 291646156 317889110 13703385 681983636 251741551 656500176 970544921 974858975 818198786 852429457 686665274 889278725 78410945 845312361 954443135 984655432 837213638 955737086 533602699 687690818 673408835 856610231 302463668 869786360 502210947 965662904 503464423 880468840 337760139 370805281 143797577 470029331 48673945 599936052 669049946 732144153 801077447 903024008 224188695 584003746 445308304 773423327 810741419 857309670 202266012 293379739 982886385 987737532 486968246 785120494 323279129 853491090 9554491 785577691 502825 116440019 646618622 860005447 660189824 856454677 154288966 282528381 931258283 962215894 729718676 965968749 790313587 928844202 143059732 473508801 47767023 888622259 235812358 298039446 495620844 994699143 801666921 831884541 326318099 801246498 740007975 831130376 194816497 294170898 656738374 843987988 902790806 907183611 687414495 906233487 681004323 744171304 307793376 376422306 34338932 346814793 847486298 874354020 799226649 851397464 214700723 730319421 509950774 596503793 638358586 949391904 238760975 360947514 371484930 858022504 16218463 638049873 514982137 580268348 542870729 961672094 565462268 737322422 602290255 965618439 594904628 717227260 578872615 863355672 398705450 444344584 665996602 719433811 229315290 347238920 697188435 773092506 434613576 884806996 569491488 846619914 48955140 543721559 222628807 423887836 788050314 834202804 610142522 680125839 648411076 807559184 642000373 753702064 586194994 906253069 216562955 918069734 396169415 813129921 208776482 388480502 771053307 806617588 646630360 992816059 611289108 812200964 639059630 833875537 143386500 587221222 328769935 468414882 464858780 591792214 46929926 711409003 679601258 997554841 500743778 998651416 813018085 919703633 56645518 212049582 701307818 842452745 443230105 825802403 720069500 854615204 58636054 564084835 839972320 888432926 474607263 551750481 173022472 959645717 930613492 982383738 894294748 940955490 500624673 675150433 588702688 642844301 449425864 575242003 722940752 892318798 615686888 832890217 8693032 709831675 732682508 939214665 426168999 545394947 668079399 952231819 784165189 859519965 203675134 849564899 755685344 946966379 391461606 572185847 833116091 963596483 805451658 853882628 562425473 730596910 880204931 912847309 910772215 972405363 174228220 390595628 935637128 958078095 333530713 432020229 466071221 758775641 207920081 327831786 255027844 872256382 719079427 837363054 42688853 788699760 98440890 244715937 885560900 984373706 285965238 994076033 862645275 975526255 910536492 925753826 213648388 393442859 725764928 875532194 410973611 844960666 173285151 609452715 158991923 257135404 389284329 605706640 384689396 866663709 621040728 773083308 650658282 975747250 567592033 686112324 554176864 576254654 90997346 548354028 715950470 835922034 251355134 595983810 208423257 816908519 641915844 704565254 686969386 852176408 812074209 847262875 527209426 542299385 56437224 917111987 949859729 996880940 735698552 834964491 304199695 317898157 820610493 972859519 820160347 909862000 722284034 913550101 173938905 994516981 961890677 977841905 902061676 959518847 511913636 844471666 20931173 319746424 597636277 886937536 764763555 952469780 410677041 645960511 78350668 340979582 546655880 698007009 333761255 437635700 207788763 215937858 264665003 619463107 723073659 783038324 567192118 845109908 889155059 895847435 395470789 763284469 665341153 716151982 369755922 928926958 568483487 892232382 441673067 800087889 888048033 905161154 448150408 675545912 97131779 416298079 111850978 520983287 202181883 723345963 170285832 769809751 28491433 114542229 878692544 985900419 569622313 606945474 567641372 798339073 844797201 972935089 12839839 915259216 656006836 904927383 466256844 525791756 362076197 797892650 76027902 701227900 816757014 904441748 317364399 950827427 860086232 943597568 302005056 721565273 661260405 966547594 208691765 802995551 152545028 225211055 545673616 900088035 213392582 644785514 81304069 798081724 943145682 944054203 848490669 869429368 281893534 445238307 930555145 966679646 82789327 778795412 139233216 315476546 568660674 693339488 590008030 629596488 656721286 960432021 911045001 946350076 192720228 574567134 631288018 734739343 861945113 901658061 545598838 937804709 792956998 887918811 829930222 993373464 243373698 354304633 469338320 983261330 999036296 999987454 241076527 584094564 331927067 428886998 117714331 932044061 438487776 544103210 984914681 993267181 46927923 600620165 696441160 777445989 523262661 914180398 290776990 853443496 583940427 675146447 987433310 995698656 578970443 692989844 271584587 857205941 907208889 908585938 937391993 960258089 388166621 951706726 512286546 916581805 446474472 648431520 408156485 681917359 825133787 970919984 539200496 807426198 172617794 907538856 474322702 893137192 388937735 966792547 951047815 964964078 596116215 837728957 2685399 636008634 206094781 863789847 409090139 509124162 955452026 966033633 215787611 260704280 958999711 974299544 797678890 815980315 400171612 476079096 749049664 870027777 842442914 990651479 402718927 495788187 611003282 624670716 593651990 961117904 67699704 924425810 123532167 713138836 651178052 777345147 317330849 552141382 584241263 893262645 234061922 634070925 978038943 984781849 734783963 799401253 862477469 969017406 818420330 993928507 324269636 446875943 392061583 972181980 75432973 469808188 41106285 840355719 911470993 993107595 610524504 672716407 566120789 981703909 725048528 920937078 830849051 833844862 934074592 961498556 750076663 889490861 271759082 321430259 141029490 772733154 887470055 950846701 580349199 860163568 561159175 788907983 930392503 977086985 888943414 951458744 950501243 984167257 720384135 757360462 456973198 553750514 64134271 960772921 293340708 906838768 649803280 743036244 727618490 926055482 802512940 971375788 779651277 861467879 700005425 962468131 491065828 881727023 647503404 886581989 350621418 881111334 288665387 480280486 371134713 989948592 560053229 882051910 734032068 848453008 766182553 796800646 180102374 247613788 629044112 716901612 757974911 902095581 668986961 998009130 357669772 850473462 489985310 712388353 448090839 717714774 803827293 997868149 344122351 731583874 894768368 906658234 77513710 191565833 228868766 273876990 673128446 873907072 804562522 852368178 142249710 691424431 183791489 792530406 40988128 103470634 895364457 901750326 940733389 995713412 688966739 899819166 354446461 699448855 543460176 738394181 622231475 701997941 68434159 328350483 275965581 493302330 969662045 988330787 563158490 842946875 125590090 286986882 778444426 899418753 325822375 917715691 419272145 796919801 549602884 743802605 470026328 998213202 310411279 489155888 80202393 596143269 737569337 838290498 266183915 777434176 513485077 784213837 76299025 798475683 585743719 636527189 736436872 861250472 834267156 956987044 126796420 445513331 314045223 594675300 907122162 943414290 919249520 968246134 631130530 981552852 963830254 978825874 841706107 877287428 778677881 925006109 154156803 905163186 327353818 390719931 383336046 545383100 31305037 872250367 785052836 843440248 287880425 980043138 429728633 684141100 206693795 521651914 86385667 890645436 160387295 570549889 218648462 433140597 776167952 965218654 547824130 976020463 620867728 628179375 578385733 796020142 51136585 830025145 86051090 186969898 232566497 928652079 353077461 882265539 360154027 390037986 851032271 861553448 70127233 225814021 920801211 959106778 749104279 850803208 441947868 446241070 993741305 996840193 37361423 89051202 722831987 917549349 717591836 778920027 549597500 840079493 859181275 910833263 81900645 466622743 643310993 753067866 85977804 527161888 124058587 342056112 140027892 367538465 770347164 926961513 859337382 971376641 855288718 965031422 718575398 856159079 195522326 795838758 151046302 476041057 645963922 765049273 19343874 407670652 821707091 834701677 403519346 624946897 407244648 427572209 25006158 776136516 542469739 677740671 95615862 702682045 820540843 852034452 663195041 882879438 934600558 935477191 466606501 586110201 38670467 952165506 281017357 333884055 826782038 977548892 674045158 942542088 170838527 569103489 688181258 813386269 801014906 839623797 457544209 810115271 954996659 986903729 516085297 898925520 196076 593635570 341078381 873979471 21669054 791427211 474733513 805814700 171446599 843664275 25376349 817050684 351642414 592685413 625946954 904766334 528185949 981580719 358065196 428953195 577885474 831827430 515665965 616871020 997916257 999005867 239195312 353786416 499503973 854009482 420392951 653838322 415726456 625796475 942253418 997435740 867789019 943813181 424110091 923506096 632926444 922767995 220816816 595809046 107403398 442081645 964216184 990152876 207367781 795298348 538898460 810551012 880613581 909211148 916221693 962849250 695935766 752119640 83020220 664145578 785283032 851087632 103530242 355587111 789362740 890876552 400676758 483437483 610503924 696906549 712980661 722586771 767625704 857186736 218119326 828883765 466027641 505877479 240069392 788025619 198890295 652566655 480721150 722190742 235842215 860036189 275878219 825886331 558056592 659042784 387292941 850263767 657688381 697024661 82422411 151457339 321504189 887098662 940594417 949852219 232358233 507131532 306402386 703226069 208028956 914055973 359431292 654499714 166523572 987223858 217423991 260817425 906746814 991919962 970934346 999725244 252189662 307640590 839938438 960929433 221419422 577360989 479490668 772135231 779428934 795369403 733162305 967222603 241453468 454337627 11655613 965636124 6757157 683639618 245468729 574601282 610523787 857103461 54266873 318502133 44065156 861590709 925621749 944850099 944590571 977840478 696835604 922798275 307545219 750971600 615434835 866976268 558533983 860885951 339156860 908992738 538997145 794113721 742113732 805493169 856737467 934369701 743404187 820645519 515621843 970743474 709785098 903596452 651838177 754861656 160319240 809471744 551704271 759564465 2797057 934056160 996017445 996313719 428803519 993088788 411236879 858928914 268056972 808481787 91382983 221954636 525232543 876742828 200476197 607608718 777070222 908287513 696249659 869925598 100793787 324462361 411715237 740366254 4093113 71211612 884432322 923864823 389338830 523368119 925761029 973396183 627141507 832740863 840365759 957480480 41691980 429708467 3636991 876338371 283381820 307615440 358736745 906736764 221070065 567945885 676803730 940284677 767418772 848965699 591990733 979330713 444835697 719950286 867230560 935474805 874214171 928734302 589974775 958035408 368502142 691649737 662537240 897516289 371116415 752791077 836681074 886643721 494012829 688203967 874277985 911313929 261969160 899085525 318228657 550609534 748552999 865814649 939309033 994993422 815672334 994481468 623871877 707763470 810565188 970101785 504164207 829281343 842860478 895090531 513638476 845001681 37440234 918231361 337682275 786309544 370876342 507662570 458184514 760073828 565623114 790782945 969169132 973192816 96855923 312717522 590982792 892945700 645383695 989600864 888944774 917495866 166757240 350909849 618163661 734982683 224783039 860189023 268197422 644995315 904356803 998577230 196498044 267532073 863876927 943930578 530008374 626521281 298385606 821402454 909339300 975757110 242335971 604868218 224173004 870041042 75529765 679443840 625178575 908727785 320541800 702496256 228715914 412653659 383822099 599869184 288172243 719575361 505469356 517722453 565878068 676289329 979796241 989240137 496253755 793137936 987019067 988920188 791220964 797348081 609876025 769154005 712250274 855335224 932560431 963374650 378491422 843380975 164688268 681131966 499698521 558380941 932044204 934709977 626667601 875353220 854224031 933495275 431563287 643311731 233359533 944287080 679753024 865433223 197405316 658360241 441715281 705800830 280904313 325493231 888262925 992408397 318754721 513181966 858626220 940682231 555770645 602311434 884465336 931433393 839399159 889054402 259044240 602881933 38448578 734928167 33471704 46523564 784487866 948175312 415560901 980904726 987899495 992401100 712426143 740416586 305022961 902231044 890071330 979620486 929688187 936309598 863049969 870150218 239236846 660321998 848112070 968860041 351667883 673996276 437178683 663020631 145244367 389339173 384433217 480112613 382023027 429520448 673515153 729079173 529997250 656442654 735675623 858026942 608241114 773230243 151556581 686179367 859729845 969693064 186227268 639842674 911472734 981327049 775716325 837702303 937213573 981585532 723343180 863986118 70850002 306627027 685175709 813077287 931193181 995960303 404292296 865065686 632583642 796190325 682704600 817945480 910825852 988077196 7730441 972161186 874901613 904953361 593437065 877100875 719616706 782917660 583808741 709199690 294327729 845460064 677555015 974182053 756555903 787469523 308580250 590910009 196808792 290862521 286453065 687065161 77525215 393968431 375122162 801949211 899303685 977099020 562067561 609592825 404780084 769204949 98607978 537524693 747941796 840477409 559733073 714600921 779416253 859376670 252551304 775289288 180114098 431268240 446599570 663030752 840276354 933020970 204838127 382917698 528841141 964976822 19839222 958709817 158298066 561910145 715186718 913969545 328577642 343276822 55533731 605825262 408209558 857380366 55102555 607805202 193820257 471339863 423010947 570738822 787887519 882455005 757641219 893910640 297520336 833685377 370589184 576893965 274159730 610015251 347950250 446615686 944205929 945111895 259229877 823710311 24242858 903676048 368880287 440351090 346364874 424520042 258807277 830229311 394378659 411653766 535080297 974177271 576726460 744611373 98462866 370225211 837701363 921022237 261447003 302188157 201598591 760247107 180193593 429429054 742327422 757380387 312837197 452976099 991490641 994289249 386860416 740740265 647168163 886560725 785563688 822921828 967425444 981388095 450472952 861620512 243224372 865443312 188984331 702716186 492111157 872612555 945339579 991009897 96385339 659186633 413416799 640064086 135847794 770143609 202990163 854597347 260500358 643092044 569711474 586003575 484348805 755819531 583283942 863757840 635336335 718841832 80862733 130577201 682560735 702453070 650725412 914447562 408395136 491526856 461489033 467610421 100521768 393448801 696794047 857054442 593557427 979409428 798654406 927337754 865521123 986043395 344326504 991983519 454645383 463589309 561596157 791327499 666115540 990096612 776684404 878787216 58564235 211207484 650221664 744516224 900979650 972370513 397002103 558374320 998536500 998693908 719564214 893522489 346403243 780958616 769308902 907941981 210488605 701679326 587304520 761892427 104838296 310681367 55043368 283869386 271059797 643095805 603578002 848920445 206653796 297000975 673651301 983896361 206841463 397137418 450822377 628482644 142847821 825185793 727831870 843413214 806260536 985354371 260115607 312166425 651597036 889325047 423694895 523946301 70901125 522853010 817807696 866606863 879700535 964849495 259538589 751453102 348001084 956620251 958786284 980721940 86954416 715957150 934395133 952502587 845690094 845900665 531282768 993031788 306119604 526496987 261141408 621093042 277196189 659733916 744467451 869631063 486185932 812124066 632154735 848272691 254954088 559679627 808762096 905894645 247829613 781593051 779284810 910510681 52061934 801430248 871753710 907432289 296566838 589505225 342843626 423576541 14728625 65695508 251118375 736945516 238425512 851687033 985048516 990170074 412074394 492306607 743684635 873568299 522510731 632169055 851331081 886181332 676235449 810343858 796035636 866696070 53832873 893472538 465210709 655813638 951538340 965569715 876895237 996895352 593484499 620666736 39023517 57175742 596622721 855480887 342285867 740603096 80960193 211428756 185092103 915761185 864298717 944597969 59279647 180641990 654178220 929659256 273866178 529367091 944663444 962566701 782629997 787609003 16018547 717885697 294887390 431439220 142654922 887847576 272505310 528195899 802921380 860472949 9260892 237878679 575081348 604183505 882322224 909205550 749370735 992776318 191235273 202529933 918312860 971730933 596370142 934534576 742245106 766704469 81320727 953356425 436586469 667600177 703789556 989712799 642620376 851882140 351814269 803765718 691857324 906205782 581869292 588829040 182509220 570767673 712483569 979661586 430835785 739137512 342757328 963133254 466230172 643614379 907452653 920474848 991596267 991738376 516934524 689641699 950913964 972133031 407026218 508151970 120683017 429060565 114937263 206820099 82903557 153878667 797040198 841954138 353794823 855796283 400039514 816241231 454705057 592390399 223545839 387538220 191726454 671953445 985670810 998352063 307342205 624134661 146889262 201551078 989633175 999312810 884765541 958550961 263503528 753750853 809247065 949882712 924589396 968866065 697880604 808628767 978601242 994152385 499579373 636934418 798210971 994803016 284934818 383342922 398447301 938344764 999847319 999872365 261199847 436714436 535417867 798729725 20244571 204575502 53524401 694573188 706755753 722506579 139359024 862412047 9594867 742527926 332274607 658554537 560951016 800825096 519303471 925868136 433227519 435250947 939828354 979040109 261362873 539994101 861229050 921806351 819182330 978467049 386996930 626910050 479865185 686667433 38766779 420780797 221059190 730507114 159320762 921937685 370561026 525790883 284776123 597104403 679634106 821638762 723821222 989228149 221088913 246899985 384703740 599392963 191017831 722415541 560770143 900930024 622012579 733098817 973011779 986523794 34334327 259590624 838995366 967541541 469736424 789769802 990200890 991570644 973470261 977594015 680226393 844845363 559637084 852083233 985182442 996022431 749907966 984669135 377958535 706824589 628157523 756535969 523703947 788911773 904027527 904636031 799503600 875574094 701105094 863563462 763503484 819934494 485840003 488999631 357588779 854334326 502918914 889616350 770748205 820883608 929025687 986914300 208950110 982122617 932704285 964054466 174736879 487439855 610523713 998440546 757619235 794479842 64569152 995771430 316198070 685690553 986513786 997140855 180923996 260687745 518065334 590843249 997156793 998503095 692657482 885039903 293174315 841914297 529522354 786504165 974933119 996274104 627434937 738516893 967570666 985211783 568967255 575287319 466560786 602435044 792153006 853861767 983735657 989799741 683677343 722790155 138346326 855726818 13248871 805724655 608659088 963991090 488061342 566898454 703924538 949622905 662951985 834769226 945079028 953426739 939988275 991395885 243733279 940666570 95371727 946520897 162628903 486640835 831725068 844750551 56752519 374828954 508745709 659271842 51402826 408223920 138859960 445560961 544284629 579783738 388249122 755645634 387424069 833688802 720465159 890476222 815348106 849189913 617916109 688616207 550658606 714098176 918860034 958849798 666723057 882847371 604868473 855047007 438693217 985280411 716094414 913926066 350669014 806562660 408601436 847942599 604038498 904366356 598035810 925997886 414235701 611048699 72020743 342118196 26493746 581280188 518626944 631055984 777986815 833894320 524686003 642662868 298830809 479416649 847983131 916330566 786782604 975430813 834119356 939760339 583365681 882928269 317158059 602486721 329585877 387524995 768308805 948545588 547467497 974542567 115942790 962186946 663846871 835420878 106600645 576500890 898687258 946368612 214163988 893615272 273139671 273495278 120100539 405513832 455185400 780138251 247260390 499122952 244109149 894157446 331714621 364518404 783663626 951598605 14097757 395426747 862827106 879846992 777289579 989167603 723872495 840011932 319059211 445803116 578840761 697279825 192486624 849335676 455540842 979484264 880563735 891188249 292206092 512456019 79852521 931549705 356982244 725194076 534597518 621597772 283791571 784550142 584685985 909913725 885314594 895873284 465755106 642776454 609076178 795157229 909765864 949608546 598310809 960461554 66235471 897009090 627626777 983737520 202849641 557367965 143338869 539664592 194547983 897415715 604310052 927331552 230730375 286000887 388525451 924859381 212178556 330213313 476126148 802559926 230200246 812349802 87499550 783935942 114689576 405956476 928412459 997110310 875916764 899591777 217421606 989946613 773462403 839558964 402088164 982455729 691313311 972892509 144980458 835130137 959554274 970989235 725388323 734013537 748668823 860127217 114005473 704851736 444437397 851361967 320806769 507667113 865153502 955695485 456912024 892030111 572910947 668815683 375177613 916595197 537640153 805333951 417649220 804406962 87474812 807974412 436621984 917311707 312929946 788988528 372919738 789480531 121983922 669265017 607697300 844197769 203826384 400624222 958436103 992328543 624473921 745370817 690209586 734326735 627386393 976292149 927125474 930386339 69863692 980340845 228477423 266726766 552289742 560597797 186040328 699015263 505489115 636015677 43036806 993692160 344028571 927875410 815647776 868554502 17331700 244418389 73684439 170779468 974095531 982232395 895940747 903344711 917038962 955610246 192401442 641734369 3491141 220769567 919030823 986478881 890799327 948337855 393190128 499461323 132717170 155851356 789254453 858638112 362266169 975961561 907045851 929939993 128144969 734403750 353653717 543229923 300020909 632898004 862143560 874504211 877028519 910240439 215374561 370351371 91417275 664736196 282337194 356198465 715187318 983575325 67865643 149918723 909448405 950204637 145013231 574963194 622100393 719266473 209130614 322570570 159202520 561789595 484928829 810354171 413989142 538926221 498139561 684521208 33080872 202552946 739207720 789448155 200492898 875187091 924130963 965485206 309614210 716974903 708697243 963432390 22341158 847794928 796553457 947461904 675671905 681482272 921835840 959556631 610872744 862952069 943135644 952651601 546542992 754056300 262787616 472332772 105649582 288382300 371122629 794778013 242075851 844395645 589191369 688444811 40697632 740047507 125605009 545781577 559527771 638056982 949068655 964309553 344711970 534550438 872488761 960140574 834196091 928626353 467613362 530460662 558202989 596532744 72809846 770606484 34351261 289484810 359864743 428601480 593286399 906478547 128630184 848708334 773982046 957418891 132269760 750872972 524967257 985582036 662215590 685811373 92531768 106556698 943215683 997177881 701676209 937362558 237983427 423958244 815271145 823325577 664471252 824566090 306414895 767891098 146805942 994935433 593122042 691607456 866967927 935144540 177498159 627502377 419670286 805820423 45557054 140838088 607575124 650084302 482192503 820769957 569886450 861967699 633770084 764774703 478277990 516863676 594623774 837946267 271078467 666743140 765310350 911569896 452229270 939449577 950996083 977419373 627493582 730961133 306350338 617952550 153638212 350892619 617796882 692054064 479179717 560858677 994594843 994690659 513579801 525826579 849092639 934427924 369039809 898406486 821273451 999340249 379244417 979005268 225442588 432305729 909142636 918264414 924538247 945515362 183208798 566146095 432140237 633736717 824271576 917829538 774244411 854700910 70625902 234513856 744227160 969764009 407056673 737910382 747718309 855026025 155414722 690377581 942842903 957485508 452873339 621563128 618290772 958335670 112289719 804799595 185148407 525934444 452589977 819507873 631266813 984582829 891409132 910358252 756006743 933656570 95481552 994358515 185309341 781709965 812318120 885409218 460839601 582798020 218458457 418501402 918784155 994092656 529145758 840196899 420496927 926660281 648964795 803476395 559190645 811861235 464316312 936115362 421858323 678982500 114322014 657150370 827442578 828890902 375979250 395281417 122661557 533646305 510338683 635136889 280839623 972808549 793917814 799319799 636613958 935173930 384089177 922450763 757593502 905909632 416315221 844512136 835167266 942170686 967377355 969107153 999668027 999865035 582296270 721874238 401161806 881021673 338845333 608620343 871203035 991337980 956976129 994867314 57210978 423126030 626998342 865436518 783683845 878429625 174414347 207751716 548278727 856530108 294857185 425048982 693499938 720417512 173268554 461535672 142811217 461201561 186846763 584998941 931775165 993535233 987418260 997106951 970341603 989801729 607804159 681315072 700895391 780956029 315829029 960691643 227162595 369477315 64838660 483409633 70344057 592234815 325299804 529087353 897416760 925517666 2130845 197095692 95628907 903957655 623973873 777596694 758905141 847123016 485083951 842276105 666184332 744543203 145327184 543638368 912007143 950213776 727282114 915905280 537060644 705887621 631294132 967716092 887074462 901496227 322331119 685071224 14273573 262350888 305105375 967981339 493087539 839040502 802483860 809730785 634755051 909775286 769469375 849872961 507501452 830037932 730541765 984494576 750242304 834382476 417774031 792355257 916762757 969789560 629320685 958149256 230727640 367887966 599363839 905339281 945290719 967922655 248095006 984692593 315616786 363457228 263462410 652480046 429521623 738125557 613165433 989923702 965670620 986587406 310987079 541865235 446950459 566451749 520735871 989930535 560193140 899706390 665750904 760325611 526352140 857327450 874121230 876764547 136570573 238958094 40976824 143872547 44872884 621608197 334649042 541915579 348121502 487421387 846437161 977473113 184522893 804513980 712588914 759759289 564047462 719892067 457621058 707177644 528938443 558191464 280152084 618944940 306469695 487236568 186794934 732763337 334905980 831206177 28378865 271499660 247505960 419106546 669976268 886590263 504414537 700768241 458536437 687601103 34512330 715865192 242817830 558714133 139520547 386113955 44415039 576782844 475503759 548301385 264576806 790754355 224658442 498982226 301891893 443921858 320994516 725637015 766724795 787160800 152366410 893683123 646467541 926789367 201478281 507413663 611946425 791092735 124046370 944688696 387904348 473916468 705047824 889786517 411949967 744567278 691775494 817793742 436915866 825982733 8765598 35875829 343155938 351412288 685904336 844840303 583272366 872187412 501151744 950114891 394144956 535496153 900807423 914708181 226984835 958176467 552909425 800122675 258475138 901489475 256531574 481343459 522677699 533338665 7690133 992070440 853911935 862096307 730360226 826860112 579344307 863531605 74243583 212791128 329135035 570879494 830492922 832036689 414302311 886860117 794169234 893432766 501624403 616321253 697146710 989033948 319820200 994939235 777949296 985115086 304536998 943688183 390409079 671120384 220043498 561907967 669645885 672804464 897326755 985540719 993938203 994843042 298712354 959369543 964126479 968752235 967202603 996421399 478896159 899845898 404920588 661397313 513846225 690878391 311572498 717499827 432993034 910025248 753039703 962180346 749404690 825740641 585487087 634583234 857496925 983815789 74791133 678765575 681947633 856026312 405277971 613788508 394402134 902295744 139629228 642536595 132925930 493380645 623666360 753000100 358328372 798906945 628071932 704212561 727802471 734639593 700997886 817689819 659687027 800100871 119340038 679525350 273023195 956030783 348762468 918980566 804425767 916793991 546810585 950253465 965834115 983875577 97538504 835794579 193007061 477088959 133108083 483385059 268094108 610676468 722339526 813638073 631066760 645689179 834629612 836923862 848726942 879546064 933361133 992123447 655919909 843301317 888538519 897408226 138321884 389010976 554749748 811613587 779212236 878193199 867822540 893805495 276786059 787959810 39510797 997426708 993094841 994535773 873176925 903011429 301467525 631079067 500798517 603206407 727444666 772780751 84244860 768420876 670692326 702570979 277480999 455290749 790242018 842745916 997338198 999346028 86766047 97447119 789755915 875829750 566330649 944346196 782104143 927118207 991848716 995708436 404409586 929429099 158915152 693485296 61618465 750436651 102717498 682879635 553384218 615529231 294255862 638081522 736187438 769700905 955988885 976407613 177400019 535017664 685768294 873626582 859380893 893039969 435158614 472231908 909802451 988374156 343877719 399832237 260775352 413206503 586137744 625116988 367368484 414318753 767229906 951236121 458413938 950017876 375187102 991296160 290101411 655016778 527717110 848150938 629368039 868583475 964319066 982114740 892332030 925861213 705846130 789264177 176645175 992894450 952011754 958999899 1088445 995300906 876264423 881542044 133441057 627235032 939064497 969199724 504888461 919715693 431078825 792669102 767337013 954009975 595432631 755686235 454529146 591607601 892046906 994941484 940706057 977483273 755513048 759749299 229028943 825759615 863023480 921027184 233304305 430603641 652586963 860470264 752009236 982141239 431210635 799128564 823796595 927127045 988485920 994591186 306349239 420315976 424910215 861357436 366625674 605070455 476091060 637009835 568592380 888893895 476220230 722269565 503387318 676780302 580044359 598159423 996984598 999181680 298112649 908303334 672346203 768406919 128595467 540583961 123902753 272743119 233593552 474404084 288215902 734270102 861194252 898471259 21661360 484490132 948121162 968126886 92923033 757935754 228900640 246718918 722272438 792362533 694349155 891224758 532871820 942738731 209784464 607160646 952309495 989563876 518533893 787752225 149164287 760273931 521919887 849775912 602862345 608944341 87817629 946131097 879938186 999020878 555537064 989041620 782637768 934578652 633885682 979871599 881505937 961811443 756726723 947322087 759286376 898398888 264017443 434786984 350503003 609499100 717880825 865796970 334382677 342887787 421007621 647132070 687233870 926396365 517359596 873180645 785028197 934277668 819461484 917778309 199927638 241228677 979233407 986439516 688238427 798781031 268245896 437143504 523111229 919869344 994632748 998194602 63212391 960932527 901070791 996837945 793018858 812637638 675998557 973589632 642946607 797933526 253609139 283721838 878056099 922515689 507676282 703335282 608366257 887431348 220388991 657722736 425434074 928725513 634150615 957988876 894921450 988204616 798140012 842556167 878228280 948762653 564888669 921176675 470971061 845787120 22198952 586720319 374406496 810361074 23432508 82599005 186948853 877127380 774583661 901242251 993783293 999816968 219943173 498753805 116627921 871788642 856497989 967123829 327120201 482841675 640610715 857465463 17781556 687563647 65254377 784907545 603237373 984144461 380717356 660354387 519084679 686469247 415463106 516471740 547578131 788306533 993919881 995816424 157441028 524743305 175219503 435337395 872994123 889018228 579398697 729268407 941161262 944136461 628741263 801193625 507863663 559331051 640599395 785974091 885902456 937152794 494560844 958170088 382834382 659342593 645448906 893032862 892015524 977271907 854957433 855154641 911626240 948840748 286171608 982667962 82819205 730940643 394652523 542988757 290601895 755103097 307966532 981234992 551852306 998112726 845266342 947043723 403593556 624217819 616102456 657727206 704188061 887029105 527280928 632502684 514664629 587155880 765878036 995122470 345102207 482614689 435837868 678758354 244879348 977510862 418334379 603350595 536895539 672742866 883673132 982700040 420418781 454382037 626276626 645903517 924524917 994437223 268624511 641773017 831069263 861338906 577890747 886155355 823227950 944945392 854737278 998611144 132858014 360916073 679995246 888542093 621611144 739647832 547005070 906852047 881472720 965110299 215695995 939697475 743467807 771628461 526957398 698367292 10960048 371233575 944724090 957350244 974300195 982726496 586816789 609574559 504031587 660637551 41291765 132968910 420999555 842246658 80057931 503474911 875864686 993387558 639353659 885823339 971042949 989822851 39813412 633436642 902753939 913359219 962441461 990423564 777064997 895719148 425544190 609845579 809146339 934974973 144157543 656890205 337431814 487818827 663442480 982469932 400545417 868920722 575513780 931637861 787903804 942724606 711923547 981122470 467942508 718224317 725493251 893535232 565090242 635066661 946658225 968044864 788113691 960711776 322606547 331138401 510755479 964147822 672821153 792517470 280039665 408443822 906625917 929684598 929064173 934752867 50204228 384516112 292548127 807817550 722929854 901119023 731329554 852347465 263085696 582067744 512414547 676419212 271153518 651311275 657619046 833652828 745542327 770707284 68053000 689300360 734689728 795879293 204885329 743732430 419375932 845679464 467264786 739699187 991623257 999622110 699357435 964946285 474914850 610089902 900803129 974018446 347021849 792068668 896086214 961712285 334826023 693987697 685059845 744186852 54465453 91626341 501409257 839862323 935632205 979599858 753329256 780404766 422502762 506484583 775367600 779708943 595493825 660947121 112902217 510872702 756912761 913980374 849328180 979671629 931848039 967724259 492312883 841377185 571063464 663160510 147714241 154037577 165344877 537260610 387919229 989421817 580128139 637233552 757274138 942198570 70501870 706042854 242734332 797588956 970163263 971947827 938970818 973158794 65127546 985482744 928570718 995115889 374984191 858812865 112521879 817164496 198057806 867196968 756154284 798904696 667887089 691884533 72999981 644036288 676717518 993641967 399374381 678497097 791240607 857265387 664911630 891782211 174468016 796081898 202378607 206061602 624030953 920861162 570717511 800435888 443553759 595653011 379538140 562244961 997300746 998971614 419490319 903269006 208633887 805881134 482211715 628023651 183315170 267213187 854838742 934880232 819690490 874782311 259387366 800864041 311371836 665601407 269262953 346412980 683333244 990832646 109624484 838263957 501349969 512235768 678460039 937734792 575102878 981642511 417418511 928924046 115840934 146606701 691828317 834000944 164642016 176139425 507563917 712181485 491704671 947289771 713410965 901781123 374665587 891819917 996455511 997139706 819770603 838668010 244852432 931666784 819658103 931780149 815399054 850839842 951649849 987873321 362435321 832227037 999308080 999913352 422394678 987719249 3133606 94399150 933789685 948680947 778497887 785452914 658293092 890230393 663820425 811505766 911606856 920279861 992028958 996676567 794285588 829824131 543024385 885284705 86651316 353091653 157270119 486067219 644513700 945051968 292008672 694327587 536585640 543547840 60289987 206424164 684670755 696243206 667785968 967106751 635965502 971537979 243982127 795330576 374652099 594845524 556455728 826912007 530159798 760416139 541475577 673664552 310760258 989564127 305471042 897036265 851549086 851832779 562518991 681364590 157916591 574711932 120155751 131586067 513660984 791356891 603642078 803738985 541706837 757235852 842743683 977052170 95046524 867650955 858831269 942356640 287787506 881868142 382841257 995116961 696424146 949988400 313583895 661740320 843949396 971528820 567914856 829892643 255001351 456675619 275150303 867962547 9985845 399608163 833763267 923930180 614223010 663233357 437858517 670555905 951331747 960271857 417819318 468908432 853125587 870081558 859003197 897793540 268395748 619948940 480763829 981740975 493275652 659180351 290547828 827514661 862089487 961924606 853279895 878737193 511329505 628916548 927150512 956789500 494298486 922746212 968285468 992372934 437139099 501475217 142719204 226535861 483868715 886319841 787967062 850330900 225213453 999977007 973658916 981756828 41774565 291480877 815372786 957912172 799191385 932201763 365700378 378126682 220440617 397010080 547400959 773910305 698407655 884377856 665110999 976020031 787721088 799736356 409134707 634804455 556318329 575697698 354222519 990820533 308206819 525281604 557770851 954380985 381251875 700378019 602694445 794879765 178156413 377366448 778178290 851112897 284892222 849819396 853166622 937198306 294311484 877190235 376742882 924781720 991810494 997287609 438833674 689042841 922753413 923837866 879985446 894488134 425198418 502099792 9991465 728173847 617712989 630145449 817708779 913943488 625145747 801747104 154997701 562308973 463347235 898374440 915568294 922886320 917947153 981092466 610504783 700351335 955697044 960388916 901882058 939498162 265479675 987678259 855343950 972168325 633082057 894483741 225913799 609110511 269477399 578906597 551872418 662962305 258906384 388481427 843718550 857094697 363700566 675021311 578686758 611085593 257501649 258217547 681347891 987003697 372049899 627255021 929618072 930040779 496500371 721226871 19918014 889594031 554324051 943168216 339623981 689572443 250944267 593540888 980581748 986793518 479897261 712405124 300883675 898362908 712510592 890810042 546284154 930741486 387618985 965157235 945757053 995779714 442429819 843982767 974025900 974449241 12515494 472676534 532281244 764553644 459508282 969807527 179672230 544372321 16384450 553641871 199014760 801070728 192789292 747048820 291242113 700420182 717135377 894442742 933248124 997716813 341911564 684424379 940040248 981812688 421025421 903022746 32789114 442219032 637864662 903776959 903480023 920639010 753704582 916929326 110553068 695961434 838216973 881113348 292897320 622647675 771411343 814716441 628985096 946070562 833546834 995805092 22119370 362879034 584966844 923795595 315644720 931679593 533609530 914146571 453596697 975981704 303369762 722650706 414521259 697739759 853854797 964129132 600764025 701569249 455666791 730814538 413118013 905136329 599935615 998298318 602235577 964426264 236496692 954939007 432578285 864946132 867666804 897610626 147165642 629072955 907998472 921491157 625366802 833687646 380361461 859947209 516296195 672073940 804153177 894975683 912960138 968745574 333208756 800971535 563455561 865885408 755035040 911679129 890258808 965036524 546185794 843249723 275611250 346037621 285121034 960968880 771288084 937097538 55403736 436153320 763921057 765177963 662191970 686751759 942427972 993309692 769545685 942813198 936997441 957017139 679135196 728184403 155586713 225290812 976679500 979881178 956722641 984574486 533412596 679411212 769136189 942540771 454796342 843830179 855824152 916418655 37881452 252492289 614226687 866660568 366642562 968815165 33026818 960130435 263687406 344112416 572224997 645539406 192609805 861712195 595934645 834486760 472201419 902326332 70136449 715745108 479891565 613245960 28522417 670838589 241141564 749605879 702014559 841236660 147932516 985173336 782682671 820707214 711427115 821001153 568847737 696601264 864981410 947005338 818943304 946742881 403842664 457817134 505015644 960703722 403568295 865413631 360066220 466052701 354802779 795727944 259764658 922603589 993936858 996022750 704096210 902287353 767518831 942735122 898801776 999991157 475856790 715443082 234266672 794552209 591799237 599740922 755156267 773096824 363285063 876658211 16611999 975332213 527358642 929941581 675027780 896017701 23254391 854391633 414369041 865993508 124343459 210750182 612117152 696855877 560617344 703776282 422020529 958138439 623597086 699095656 827488251 841504172 683627614 889061029 39533487 880185947 977140644 989834774 970666920 984773195 631531799 940436024 239236915 306433491 375914845 928448448 735490206 755792007 158664942 491675105 601626763 807851147 395785208 741664268 898721126 984860786 621831237 954673691 285779904 540744664 118748359 969778124 965452640 969242269 939215004 963779243 547715443 785672427 315094436 704398719 563606051 793294910 388508373 836251865 977270442 979266359 846504859 878066067 547270893 837743937 134124256 922657311 772586216 949221876 445617637 743888444 39405438 220509876 266846332 392658538 524400677 933900228 326301415 499128465 40285714 55502213 23442991 854021012 731260189 982298394 291275697 593948936 463120086 477887155 800190786 852124174 448214907 947634234 640539334 892376939 144636268 719889277 635523888 837589910 874094371 948146465 937623595 971689633 338390452 860350371 104974959 396213029 520366129 869387213 661962569 954462155 303531569 797788338 743305826 821186220 777492712 828567226 597242320 993794840 659390129 671747711 919800201 960323684 504506914 632136338 197164145 394759671 81089889 880960341 543364643 743626864 258233852 548422297 583807747 954120702 651308963 664531952 997989628 999942440 553639930 813832398 114991596 489399670 698404008 888704535 605518890 827902384 847883669 920469851 884104199 903920744 468847218 656037557 928995136 950197927 182477678 863155311 47692566 617108570 917270904 930220255 478138501 822716495 268412026 598404612 187710680 631775053 166044454 608659232 549936640 946389326 570474992 922842290 10294256 77795372 318387270 627043219 428477103 842852786 652856621 677119230 310579526 765878680 549388757 824667107 14991635 856295902 683850330 689570993 260012697 452583502 694008691 790033530 247120497 872377145 234497490 501573515 320422062 637988013 434731181 439340644 232724208 925669512 374317215 452255128 437933751 910781187 427662866 636462999 169570851 961848602 968666867 989354316 196574965 870467494 593578988 667757981 357051733 660308520 655796325 874995434 190733668 640201345 346995977 431764778 611574539 742104353 90077970 586741705 538371931 961859929 253611911 601262169 855692442 937816714 889971241 961035850 354257139 830956818 228829953 845721022 829414899 918397958 112986127 547449426 984281693 992181358 298207350 670599176 776507238 823206672 162406217 679391130 85924281 99322242 741664117 898617337 854924066 883581066 752683062 975294501 824814620 919812611 896036692 978148203 725441177 863923500 962748803 997213573 487780380 510804688 9349420 928567381 156304740 836172493 30342643 776893570 870893241 912302186 176977007 526356903 806200208 845187104 803622186 878088030 411109256 466258047 535329817 663144905 581114684 778297474 660570861 815979206 637319478 705509577 593064391 959387596 760213413 993743316 487824337 589987859 60598688 357736511 191343548 527150860 18023488 511890357 816565869 975238585 797599483 998872508 302073566 886222157 417784676 953819178 624730866 768788170 930339529 962213486 15493261 705270523 723115259 809747799 466419360 919089158 50476969 358375763 164833280 251166829 962731130 974328137 736525136 813853686 798613146 806765623 637280280 989084695 280792910 723516494 642256668 773179100 102694370 891138972 253010125 819683883 143437241 796398309 763991843 850682099 5218943 396233919 306611642 380579697 296958265 485868882 331877231 624204451 174980389 896369801 593878507 978209964 620339268 890142186 766554801 917791831 165127864 573622732 504095538 583402459 256886860 468732398 87075824 802961232 327808854 501490064 398943297 421877122 96959770 347607986 77021493 764238296 436520819 978285877 690756704 733468874 289609851 888197136 789973928 829777048 281804372 458200442 450241992 749060722 274649479 693094989 263099136 517895257 52285106 182556475 78642927 415725315 451947041 557225264 71000900 440555467 401883313 405459658 884251793 964930288 933593687 995821881 634525592 939723612 493362386 818532805 937064232 990981443 403973832 612129591 446650426 598791510 633182141 794455050 95333378 156722436 774930822 781798919 27318526 601953314 120948732 385743580 926883086 960251128 551596470 568490688 911401430 915165027 513119735 780568708 667979531 854626416 510304274 771453641 310809282 389779577 732359988 947640927 330023207 909284765 391795905 464291985 529830884 917825123 37682181 836739550 91506535 942262502 723421004 730889125 463709018 531141144 92430027 800453919 978202894 979399003 891994412 971952654 194585613 772410489 773498070 816623950 978772524 998388038 134729819 925756503 130762910 674446704 159684517 459053469 911169717 933672338 631672051 687726794 438982171 692799869 933343248 980090796 503431105 620270238 140484774 421213580 376273399 647092721 640959468 919841415 819210347 997708478 961042226 985775896 54787464 155425019 636941632 811119556 874918149 933668410 306821006 496174704 835262312 994915200 859634349 936882610 62230166 980597341 469561145 740326327 437909550 809665065 683948154 742231182 90209027 995733603 32978891 347216448 468012085 845348938 261295062 875496675 543406658 820965823 597159390 630216476 235363316 600986259 151510699 792086447 995692247 999018232 863899139 974755432 280820638 863252805 726715934 743340380 238173888 879092067 740594780 855808146 324126046 562367587 841125114 942208880 634416743 798388335 762085006 908158371 453317409 535743328 957501748 961001512 941170909 996827288 228983801 600371435 502550260 656539915 897740206 985630565 224191158 910153851 330745481 539277814 233547409 902651372 451316170 610774344 116999681 286147978 456810730 978258017 989504108 990874732 145195649 325931869 78173370 791551908 528422909 757176350 211430669 939294158 132249172 898621953 611204294 997482305 229885422 844078340 57177538 588340783 521907064 829929163 482663024 888549711 476844382 717855209 735666937 982935017 765771559 790612276 793468686 944790713 792981641 941664100 309604397 470421438 494189653 874596445 26454096 933443870 415616628 883775419 667977641 950584843 717245828 770156611 109804907 887928497 653330945 656743265 944409954 990474244 908808713 941815745 256518580 574139063 915120771 924877165 73177628 413747086 774355289 886470546 276804106 802145654 590873666 953955497 793987905 834293146 804209456 878196854 698433678 729330963 849650875 854200431 870325922 900526682 773013153 949041199 698587619 854298619 100051719 263748372 45142334 939387532 295339541 359758056 61316631 873822018 381476607 703998261 368513164 496347168 581410740 600716674 749394767 954552807 434360867 627247585 873532588 928134529 759206913 863988606 371866054 806334263 208775954 243514542 773176597 800927121 455911570 885965601 434540375 865266185 83878357 702991931 755276855 761217383 566254374 793397436 270045510 382085513 105633307 853510613 657974722 705772101 805745199 834175535 202967917 882475428 857920242 998004471 289448623 913027954 222741388 231821365 784240445 950679406 631898534 839040899 762929898 799901336 682092588 690948705 928569733 974548198 329569717 607429907 864239385 907239465 334843602 878350981 355501991 700114288 433412190 482813924 425936639 677266336 445790187 871525354 229906480 842211505 336097290 622766243 953987876 955602600 465513642 698792042 494558850 956751240 805784099 957242685 230711884 628780056 107147901 306418134 739117777 768197947 526276339 761579700 993457720 994831050 950594315 960506898 102056667 372198805 362057571 554049648 145837556 595004767 308733169 484519232 141521049 438008110 428226589 889602191 670743588 923594349 374108772 602462003 115760958 348236317 119247487 936684958 864089044 968367097 196664751 590862608 550497357 718127756 746211910 798661598 74723756 385233076 711865919 775017670 798551996 970658504 559367619 879491570 466285125 611872872 41748488 506213686 570827369 833382548 38833790 968606967 946370684 987759108 665654436 691777433 247158557 371769683 539649341 859781481 113925023 117678275 559146819 875005711 186054447 573559420 874510147 887097273 193604102 338226515 867566376 894224582 144498386 558244586 597131890 954566579 667928084 980577935 217298582 301900960 309907214 425901593 533721524 863638445 976467346 977211939 512685531 632010270 537277432 859875153 327427797 671158827 165895031 860973265 432924155 860395455 778906516 953248460 382612349 437054718 456850247 628343921 8838448 337319609 604242502 938979766 223568368 347330580 708535179 976657354 29384999 641429801 138715562 304872061 544831201 694892665 10626630 160869484 475662664 737882453 393189041 413306177 3060608 896244933 432549303 575878106 676789213 689259521 937620517 981265420 829396451 929718858 995443015 997750741 95983608 810546183 144945758 232654960 341243731 785528393 626638121 636560398 560016397 742651859 331418618 582786062 298622646 847570829 647854993 984181757 495907078 868742519 742147438 966295285 687636584 906817643 514144316 733172981 18704596 389653461 817376096 840790896 474788199 839901483 557646545 813797704 17736605 214982957 954459187 963966372 264779201 658765106 596450302 962214752 906709745 964033454 26738558 492199635 700629270 883327893 801093102 908793887 26835977 330463966 305620888 946690131 610600127 919243386 437946471 513722333 468313926 578169574 433832819 904515283 459113950 673929435 721149521 818436892 503609419 885221396 748582132 913922307 378423036 553214589 105044384 946503740 791276151 975314904 465255003 679936280 427876176 826884810 747191689 995659962 699312179 818506628 150154651 451754016 102847837 198729343 94329494 864145501 980158007 988275174 67847480 684590539 446227320 959702184 650598267 935891106 915301063 943469782 212306472 850868202 909517972 968512700 333991874 832899166 591700602 855012330 318738253 819053130 428143931 953628896 749238938 790777078 163820931 262715856 933014412 961700121 417449557 612227636 421395776 490627710 302761389 847468913 806090436 892280140 733678775 801477458 692263648 741431738 915675171 969853851 403971496 532409390 567758825 728945213 544210978 587800303 127868356 801894511 802833447 851881659 967540585 997218878 921070721 976235498 247099819 555929488 681071133 983011624 798565937 890100079 178566367 957863687 522194156 663998162 331354110 456669356 668083103 845664241 523874768 833688547 6139599 744083768 800820782 892273528 915236325 948343811 179052410 950646068 463564917 609102238 975454770 983606936 304210581 448868408 436051884 445615732 534408015 697461870 189688105 756032263 218363384 793359552 297060385 922379402 164350002 966013544 268527596 410679549 46479503 600096460 882226747 903545027 568281779 769935864 722652492 743461460 962084667 978444109 909784229 998513048 135762353 827116961 191197077 950047963 211425611 230925458 959922755 977171433 819445137 912008065 507070707 620222105 960877279 981599762 864631859 988906911 742737594 793125497 697657866 727177724 686583346 919720537 376367954 945227167 916477695 972500099 382455342 547551259 50197999 376828799 624534800 724019451 926813169 997614133 795410872 930691931 201865001 514620402 851634863 943770716 565703524 892706952 351970997 904864438 258114136 925074950 606643411 873768528 948105731 997517761 717202397 919717603 128529061 373345594 901137537 974174374 882357360 966032846 653310594 656438999 999025884 999929825 336988026 830447369 83397783 817124068 210234931 249241675 469452122 849860355 991143260 999124174 749279629 986597276 270087830 723671417 704973248 894946621 732131847 882574313 769030991 793515938 448064386 798040720 159109892 782588789 369480718 795898005 363166157 538076902 324955735 367464352 573406422 887293110 696752921 794662988 773755167 795143120 555768238 673285025 344853137 690553720 92959832 339268380 251081246 845984374 59182058 488617023 17962727 914693273 907464390 932076419 508266988 654527419 238559494 632907350 278688200 987562986 670297026 806794956 969665036 977451875 363401013 846668754 910896382 951744340 506973159 966624822 796128172 890512168 844218261 872088399 189905111 363597457 136968721 355442892 524798737 700601697 867531755 870015788 861399301 943019094 834302722 922658229 389708555 537356661 138276777 710570672 462244156 762110753 840184818 895713988 712188026 875930820 258266196 551009459 772673075 824673958 248136633 411233492 662948536 733015435 168363595 290701995 613266330 689302585 41454849 484238399 127534079 937421150 68522459 530590939 609868478 909220737 491751946 585162393 411208879 931377519 989121682 990729166 853087975 932250883 382973499 500254018 846639087 903921349 955602604 957471197 671198864 819947901 846884294 872777172 650438407 661142304 298459104 584184560 595612570 949911499 69231307 924180998 919094741 942608829 33811467 594593617 708701307 734926412 837326408 859443701 578820626 648175948 197297361 998278847 577212367 834669902 5881804 231791217 146618156 159700396 534434190 903146037 826240133 968329191 321853173 615201477 639967107 665289638 341237710 720570333 848551992 933698421 417200911 473449835 678697945 906420175 654938611 903174899 955980213 983842591 524815638 673653356 483252137 739307294 715511071 718262991 354219857 937500835 719398990 908002111 654700266 906169691 231450613 286288983 697621924 905517130 857045080 977369396 33111574 305494052 251096991 981356587 299264593 672507964 656386594 718653700 295959349 429592394 362623353 811532384 95827317 494042430 835382631 987452333 665843121 838351320 568285478 840685714 159782032 620599493 963443933 971518772 329812061 402922967 631383468 927874277 962881411 990450784 940194895 966133529 922535011 963952538 942571641 960459763 812602771 992713149 74780753 555029268 889327575 949098548 667421240 714811110 542952901 922187150 687864272 941926634 14008840 781867101 845097304 990606859 45647406 416928824 39744673 726993227 480463858 687971554 704383228 907278185 186196812 762476893 293439512 463149605 973456510 991856919 99626545 732731848 757675515 822768345 761205539 936005192 778933116 822897946 768966310 778823489 884109583 921255397 758411344 915652235 795099784 862993780 125788555 151237293 177700414 595831237 682718996 938874086 938761693 983177881 75650780 192109320 73077963 462553233 757825842 879387716 289056642 453392043 445165782 486712123 456321369 519318577 671545773 910806752 644554074 985695183 847374330 851143907 803457191 993893846 131103341 603809951 312236813 900991115 851783879 934050804 113609869 217373607 84067925 246136109 596967339 836196758 866669149 911779494 698374507 896042859 502121177 957762321 387891288 805826980 705325141 722823882 267251920 306892762 453087658 615369488 565237735 755350521 456814905 488356796 735816901 774346029 359492296 658798719 918968119 978004722 399282425 678095686 246518547 778330428 955428632 986275286 620181140 714678880 204090551 302872619 793363795 830441778 519989388 728288029 789330029 874520276 92770668 356671390 933382025 989395300 891144261 992300326 474685838 514516659 780450237 802556041 405993561 914392436 363767180 884380821 601540939 644822019 241798676 372007540 705451996 964746076 537860193 713564150 99918583 985071206 71263883 575572635 934221540 935627513 767781091 953110776 864154829 955843180 331645888 760014533 709958745 997995076 450028179 660605632 770874889 876317562 133524311 914279707 397109795 987757465 31996456 886333110 546497233 869440018 371136772 454633013 748487000 958196811 138571838 543353831 933208850 933903418 299181611 665724668 23374523 300276140 76057029 882346635 733751979 905804697 688411533 973130917 461463111 873742981 368784439 921241480 412960866 538464855 284281843 613352689 12830301 119353588 980107689 981020199 24901844 431024737 365456069 870430683 402936991 746152164 874082666 980524868 140430831 638597252 590603589 985500505 256740419 259550782 75759212 902166014 708323743 792616438 171441922 492935349 295802213 800694557 890741888 984173540 702047615 757716956 859902750 920928718 231694971 620671754 918961386 996718919 535967650 989365951 305322587 894514354 907888822 966738719 123588743 805148688 592948528 876166880 583507135 715432275 720075746 805455788 185549900 229616628 522205389 848247881 550060014 691592084 294955484 736190145 524309131 627112145 427669066 439041415 717102732 926402256 298744033 791850851 504895119 611416861 702990605 875685015 801666389 833807650 315713756 856846709 406591274 783188292 747763926 822223817 687335355 908938125 624047336 900667253 101654496 843869521 431576133 612794577 275224710 978886525 407863787 736708882 15270236 163125879 904871811 978574589 256254946 412864648 146329630 542927448 443724338 734201808 142934865 678335491 12082252 445404992 572895522 882592119 898076661 914002883 289146160 320785512 711871187 746227280 713132704 873029096 75723547 771204430 764561830 877625476 64259607 994704354 497139901 734007806 789988481 821647863 680054213 839619056 240757642 322053352 427960044 509392157 227418648 249279069 742779858 889907434 223928646 911551061 156997684 935222200 469775715 506731572 828459333 896924028 298310489 595365574 899828827 961075076 654775780 933400374 574514304 859414942 422403146 589307049 724962409 914085171 184723030 667694827 573685964 929078964 859396465 937978035 13875042 892658317 255967140 551881540 423930017 735301698 971700986 993703364 258713957 861823408 436108304 796895114 66035615 67838377 325263522 393893265 243916234 943404475 307083881 386237029 64455737 452327349 395343488 803427515 625299893 669476014 659068464 859120717 786220588 974389839 338970824 739291187 13312756 718473269 591989526 596708994 561382161 787438409 998118733 999153891 267171648 756368758 54420873 434491905 257619612 780677745 117402333 428329898 94394195 563240636 913510184 935165109 744035523 779297421 460055084 622769497 745340841 828143551 278530407 298806146 172018120 473581658 638209383 810188092 108254199 817911563 689034837 804586520 683765850 740474451 21024219 454192384 126936591 804006650 251254082 436205698 223105941 967724929 105680940 563605867 903093978 995388091 872249223 940630985 71894028 517296440 35091873 737998673 716352696 952662936 571294912 661121190 224981903 774478857 134372232 354421798 896296832 986483946 543548730 685199376 872938532 900074246 359467000 792939037 810079556 917832579 735852918 787585488 725690861 833893536 284078827 427896598 808880529 984031696 577200841 770952775 130790652 457162318 343938684 403466047 530931706 901127424 58183474 543187228 169498487 695668549 7552105 205352687 364596673 545552274 566727427 819866807 906078480 938085724 9920966 448900523 664621032 881390897 505463853 992615521 639926153 772619740 277113716 933578347 72071059 226630035 456374265 906839352 174996963 667691149 426411766 634586830 305515072 979729692 62347480 738355204 517633329 984283412 621318531 864219748 608967346 689255611 248481971 921801588 120908648 372160657 545512230 986206357 685138546 832855794 896476237 977659986 805691145 907209912 284253365 434206534 987633120 998779604 179123241 986905693 468157648 565052746 179224421 992214204 780424972 980343485 964400980 981514136 539219464 650840735 855191744 932883582 459843054 548958028 227443633 771438406 207548173 723774985 509788781 759928565 277127843 463196671 947699296 997941928 728108121 915169833 949794042 965633982 524511468 724412194 725271779 815915731 524493600 726260835 500530706 870979036 523695035 581628032 403160777 453981009 588714886 633281342 508700306 736852108 21167069 656835236 257028811 311579914 520947504 531584476 310944549 965610261 723435675 840650962 210552905 614730366 257748007 640529078 548799094 756900088 938463370 974017151 631737814 846189776 297832079 838122497 207454420 386846229 856588895 910496240 450572565 642113248 796538374 974151633 974972888 979848963 732823771 994102160 799915606 877575492 65198400 668170115 852974832 962498994 479112309 666478815 755487678 819443061 434175810 838259273 653011897 792063818 623299639 799271437 644967324 648088410 572998349 921847121 888814559 971362460 953652025 985895542 66945024 810699943 840577192 880942065 117493754 240366398 677824223 942167843 536313702 653388668 807851621 865496496 881185576 929753697 893003918 909200086 68595156 704606443 196594607 762369917 651958400 678108411 520237458 922670078 988032627 991955082 680379933 966613737 909691378 938316854 227643033 872589260 262784898 808353936 499457242 644350275 799646889 817121951 515239414 555164576 282403618 953159668 517585420 811742084 269583603 375373264 527087072 617602687 539957852 625068884 65921990 255805688 131825032 578839727 696350925 818394254 659737783 800982232 962937073 965602042 20595415 56604142 875018573 976592817 861787470 881344061 115694699 643358494 985084059 988105116 170230669 191652357 561665342 867001112 295575489 781776519 292997109 312072069 128757424 674490017 724715304 993821725 942441898 966570683 389822759 839144409 986037551 991302178 468901509 911043109 969847579 994494888 58758411 550260194 975147178 988943157 80037247 714581466 883417788 890151100 553812500 643869076 70727286 162411543 904254390 949432473 969152912 990531645 116394630 703084897 865056102 888290021 379364836 867655085 655961372 760067371 701388708 941757937 770807610 837520788 207465823 354473093 634236453 710009947 895781772 951536311 829093360 847472907 572925124 888245476 562651100 984117751 573420009 891695297 507412068 605792402 425156476 588123024 793177783 979904719 2556194 252891280 746836036 944788984 263522561 513011049 878185387 902871573 692053894 775819847 769813834 779099671 661901686 903113227 582121898 941388051 256922691 499184716 621190406 783508149 604570644 966479753 924832382 978970026 748911179 786685635 481310537 847509150 606912972 953316451 977419746 982563479 198104175 235066550 629292263 688729535 483529228 486332940 371549299 426882043 898454996 918790795 741362606 763660759 465852477 505507278 658882824 791355338 936122033 963574524 556736949 627116666 224126333 900989500 477871744 625308720 1913756 192821137 976538651 988320118 290995016 639607326 382552690 921224907 520785706 869313778 759156049 827639284 631757714 979614035 246419161 920576645 120721916 623997905 147738520 900072252 748569978 832817594 788099120 897784987 23118879 469035802 324605575 876427479 431780138 445384405 248764679 822471610 372010593 679642227 728216173 831406880 691883717 721052855 665010480 690680505 285779156 938614897 884231868 948380673 817095694 868607485 381112579 548708001 625339568 963640648 656483153 672036878 235897267 736895654 966293881 985336447 865550149 908090586 438537295 977844301 191753065 276274925 114454561 915545546 957237193 983930322 614419038 917924358 612241597 898281009 925280745 941692373 453737097 594546146 430791142 859042359 561843480 757928588 959274938 965628505 779019916 921813138 794893798 930297219 879945266 913272467 563286628 988468024 29860091 293031074 544135500 905185913 342212399 889491148 802098964 995988712 654571535 938814443 980637051 992995246 803113439 952343325 521495464 588041094 146062273 589282486 30829146 189746185 413618909 519457452 801940284 819551156 258491640 777463932 616233213 631373283 601558142 976281503 892683578 904438555 210506150 958323611 306471602 889164411 152651738 818847578 868674163 929215218 968043539 976900350 457577873 874606470 479675125 842726625 879421953 932577049 213051731 613169529 882780411 945258507 633268385 637100010 828148645 928112662 490403171 985193403 339280257 718232335 456196571 810928838 439758989 669896564 463149864 815799836 1006913 248508339 944145692 953512490 418189010 782200918 25440954 408405800 340510273 356134604 319404812 944121665 208656520 779032038 790372674 902314861 332423982 609217846 619334130 711960941 25260621 845328443 287930823 815399376 507651490 537455726 733977567 869353263 134064435 644484564 497733795 853605934 431430647 562980268 607946013 986864720 140662151 554594969 963935863 989545665 387731078 690753945 320595106 779591546 607858588 750154503 368264569 744592335 935395217 944255497 530036920 912206039 360257661 549249462 121469685 738439696 882657359 919155775 548078625 564142009 530929278 993626096 225274313 631650770 868392495 924316919 617556315 905788429 190256387 622961780 269510013 627526848 134451192 917319765 33367501 482432365 528094074 788669898 108342278 862903878 305169106 840944541 592300867 736795144 291341453 502029265 550699300 845038906 959496922 983818953 516474335 787206794 427087464 553709820 574030854 754534190 368525468 549202173 679912257 924097632 142807194 628875544 197416565 875423655 249001026 524635119 242944335 979889457 262139397 344029711 671304102 948002313 510676398 966723453 932953611 943575491 433291205 652458385 655695980 805357691 7591520 878895853 409533652 544290794 564929668 879312764 158985870 953693704 117705110 616939754 567973802 817916685 169626733 639892408 900641940 998336638 770485089 801590010 139099312 776839638 509692713 684894440 124804772 547505844 6844770 718755982 835590724 863172091 376776842 456136600 533746600 998544783 445053384 629001729 168538468 443019468 845742667 962092895 18669613 37224643 19006063 513420305 405739072 593317745 367176543 533598052 800787044 992337893 298315532 574965940 303603350 309810960 831576536 867191782 702178858 923567198 409762224 577700124 267800000 789610384 120132051 220059921 157435456 597068236 445732723 772154357 557687951 871070239 846095741 974871046 868696911 987258709 281580901 474861685 330169321 514565434 984279464 999296304 366611225 920375916 944739541 990035907 997265251 997844593 181541430 863333831 41681848 53596575 455319820 970758392 578412815 738849487 191136113 212172202 947693197 996024502 825098892 870919214 952777920 977389866 676094577 849300794 953601235 964122693 253531571 496500724 323531214 765697532 143351474 308124976 415592310 914012544 733699628 939286726 226269064 613845374 10470131 884603225 171104755 400591608 290143677 640968702 744377937 766225196 24331832 229218250 456470161 507201202 479749880 868334208 639328359 707700500 724312300 846440884 364477409 964260901 772586447 789625793 987008871 998609322 733461578 903083226 514546296 819189857 437357293 858549944 696242294 735350770 907994501 910767142 152063325 638735013 433997901 768800716 188307521 719717532 229434664 492519153 766344417 822664901 622253870 733187666 766429455 799384411 213538316 419995459 159719941 942723487 368029720 728066855 726601791 758376041 280230955 515569968 900118911 964088881 44489459 870833585 81131876 692699492 836467393 975651224 762159691 842368364 563804925 955557712 514953432 933480080 63439095 396542506 335800521 760716017 725610852 871321857 852474570 895872575 341425038 823700182 768582092 871464402 580603341 730932760 544331986 563281248 523677784 800652895 926776634 990108806 318460113 845672592 852578483 967949574 73349591 372374563 655205764 846314789 54855996 193114788 909099821 933224716 330029706 375636367 622877712 995608582 263373109 718066090 441634488 681537813 156731513 612445475 318803027 860282647 59462464 713762525 140914187 614161369 488327337 936046158 679857512 955668778 653132155 692534358 447321913 994571066 937182830 939690854 420334506 972643586 29098721 629008800 947383023 969048328 512980015 839261516 785239110 985686762 157682879 563429586 921482096 961355702 313018517 939261031 213193658 452664221 808805912 891789762 60375975 102937602 771057415 798675462 177501082 813133979 546003753 698651436 9392744 279904149 703639528 981897692 501981979 761148623 314057558 759063357 355919976 534007008 717354610 997936093 950436671 953543959 274200592 923580411 999530416 999530599 108377991 961947357 838994856 911701293 142389761 862871969 798758556 825109145 848295078 883992935 888441253 893810266 362036804 872894329 252406189 403080346 743372012 797129302 295468723 824046978 232779881 541966005 725596180 875304969 407984910 835768485 48019326 750653722 914762956 921551349 128867761 811726727 270556737 403203509 849510619 893333047 791405566 924748612 103020591 575234736 545478161 682379178 478479743 767368699 623789337 996325754 984551347 994609940 360752958 448737313 618875916 893631981 441607096 458795204 580993658 651604055 794312187 946986563 482594433 506344345 345249101 693964070 767192864 819332433 273272640 324513234 633560302 661623599 809365171 969324069 974081024 978705802 534796730 575437918 876297551 914220626 953697631 990822355 793795386 937236934 428513105 446209042 736961295 874503655 937090015 996967627 241188311 338339745 435707105 686859396 226118526 969614596 335596773 544856881 376092086 410398751 388320788 916877227 584285412 716725357 749086483 943252278 698621243 926857770 349107156 511219864 234090927 780485824 41755603 222566331 280317624 787584234 439331724 686204154 646512364 898730631 194919502 253870566 631390262 849962549 423952753 533783923 272053708 497858118 587452227 721444709 785702392 954659293 577172655 732535910 710812599 828157304 288142625 642472976 996097036 997849446 700954615 800923966 148917120 483321879 362587355 535371126 853233728 965620293 260371960 524640084 972145264 993546744 374519238 969956428 456899053 610565770 42115772 105341148 805051232 975422181 428032319 837649958 886021069 930243578 379246912 981162711 210081092 233993554 972985632 983486799 197280102 885689661 112878163 783097233 829735624 833395367 860468552 901842799 85567752 904275048 266834279 898778287 890693025 906919083 736774137 867674557 634618756 791117885 176596307 757230417 731987310 929528660 446214539 618362191 403144094 654870970 588111202 961034054 833278541 863789410 610271996 805536796 230679791 541628425 675687880 685504508 698630899 818359808 524887360 988700534 974809502 981727745 259459982 330635264 697272012 905028099 951005247 954204549 196526970 698273165 879002668 942265388 254466302 524364000 980404195 988499666 645897809 653497165 786582141 789864513 696031151 846216327 434929156 963162865 479882346 833878419 345438842 381125218 936875368 947476516 261801674 312257019 74370365 971196428 693189788 928546050 200977680 256461787 633089231 917577037 227508151 762621876 15060126 149253009 221013289 266222796 29386049 886340179 801929322 806643014 176072005 403719783 217517882 784615487 154833344 450606446 625366148 803952063 173331310 910111754 91319694 322736236 815065173 951057571 455744040 539805523 71745820 681365618 585898559 909521601 649818578 895062542 206337170 802338594 800863236 867969489 638792146 733048142 213834818 893657711 456463704 729764279 140894073 545756498 758280754 872022421 297754116 970477575 446402654 874013689 797827090 908722144 806688024 833635818 230206929 372960781 329084006 737960683 474688691 819309189 337150162 635850468 572410236 711078039 47441458 64826588 520088004 874724318 374448588 875721049 281830478 652516730 320741247 539839730 227327950 832103916 847354810 915225326 977553992 995451258 345419081 649186137 758704797 894700094 828141079 850196089 849345411 903341702 235197401 593229584 422245506 480534284 234161502 802079648 318362421 792067265 903087232 917835463 857012966 896110538 43061155 864493819 520998591 724961977 123946719 459237260 607339040 965674780 252814134 892653513 576269109 710138326 33051474 155633429 68884184 86330115 954740392 960386908 220430351 831188137 760002890 834781391 908318583 948929465 177400981 348041186 932989980 967347562 778344819 996883915 241736060 783790775 960965841 994253819 739802892 740244722 41003931 147043635 620286255 899459447 948327071 993533592 41118741 662778395 480391972 568770594 250975288 761099319 565336748 618363824 175568058 710292201 454303811 686925700 696541721 887089364 585296980 890963145 463747032 472543735 867450199 944827977 982566535 985434392 205059030 221799272 4783061 797939444 934170578 999096619 603111663 877623262 260380819 744782431 8525045 809068286 363563922 784798675 156966002 177597945 687898945 898519242 531634408 704291613 797831081 915777826 765798404 967401615 288084780 606964570 240754595 802221154 558513765 724889366 769533773 955754957 771925499 960767599 352664659 450707553 729796431 969469709 53967375 171905410 202513097 484844943 776961306 950732005 206587436 902960412 563434392 620025366 177220886 185374416 61450559 393293191 668689771 905643521 458382001 707689193 595993635 836257169 53299816 519299771 245950611 545981051 210667748 854320961 373785467 783466639 340003887 803949707 886753073 940939416 378599256 667039284 99968220 304446605 546949395 725241497 168704795 398426971 90340085 639224160 807618090 850539777 70803683 846772001 451495834 763340007 979619022 994060275 773740108 896214682 319204305 570702302 277617115 661631631 713879296 840109285 186825342 836768167 714042119 877532988 530215994 600436383 958720389 998343169 468309198 515345386 637933716 645625641 661933428 788012381 48854260 959468135 574923519 668508977 339045911 924800854 589634573 628730226 939402737 997830045 771087652 978468958 41859056 478578004 357755423 958338303 241653704 502731148 796140027 965934640 396432501 827234260 561925714 668752813 638546369 661307134 516512390 984251442 385865810 776571543 324432296 655143155 249302497 672614922 810399489 811499759 334819967 927050143 491171733 961481506 63821132 804250548 610463370 694111986 767907667 972045412 233725105 696820513 224753183 936543847 927810789 951215586 856167081 944725245 678157578 876474379 925195131 927623697 158862552 299964823 376441055 901599260 357004734 574007390 25320733 192113774 436220751 938586164 202817220 488630273 379540285 973448270 339745360 539795933 514330894 687550014 191952645 946668918 43674588 77194671 596833910 944290506 34705913 113662518 964591978 996373830 634380794 765666774 196680653 382577721 785447632 902888122 323642283 339526611 590678157 989656124 857289116 954633772 556897778 739820198 354230869 765566609 99798768 388131502 410558301 750766322 467302998 549987420 248467066 616626559 777330060 841017610 387612263 390940110 310936920 455151573 396064192 964705224 321882297 775740063 351774897 573745004 910195563 997010982 59730603 969951953 604018506 690015336 92863872 745500715 333976404 587586908 186084537 506417399 791165865 995974737 802622516 881164704 349913813 830099870 570491805 594452954 110349381 985919252 58685056 306851711 80783348 780320315 985063451 999651185 561155279 760486978 524679695 760665501 108228092 435071764 23934929 571563890 483982124 929694950 256015107 588371938 86299565 783321824 89845178 775502463 165524276 865668871 732389145 832140629 200323188 909264659 273816381 810162681 819936988 968157179 875406154 918112555 666368567 829236179 735382131 765152794 226183825 324876557 573751594 743506674 403052627 490304671 535923474 810757240 11199917 196210004 586933783 812739187 435093317 437283415 142129068 991819676 78597265 741530115 400558189 763950376 523715904 930494025 912487965 966280062 883011147 899555724 22997834 433413327 784462571 831683483 609365997 948060190 825769073 945286918 98576274 170397341 353395048 882485864 604890211 900855079 103703961 947939117 211579499 466913038 201782866 766144334 126166769 967351647 945081592 984895338 790795589 858131478 83631922 521069233 971841196 980276504 181107810 808103810 367011374 831228638 160474404 968831506 826829495 857921112 877968114 985517732 578721277 966517195 418652417 848109095 981079809 997220513 206264581 289728742 462458314 857296697 500158040 645292259 743665967 870402309 234964138 316469750 394028253 519060676 430311723 473241091 656927062 930293528 885292640 966123967 392240082 956807684 930577376 955523060 774850173 861746569 300223438 858824162 797685343 978203447 119572714 565280584 44469868 531557004 254003771 466083083 38506407 710014121 830042846 967630001 278088188 714394757 213836342 455077515 913211170 976465210 436852846 725640713 403185623 503530459 463775134 748864129 599033204 704588227 800223842 995563703 59176309 177280735 197919277 984421473 542681035 956122012 418194633 960600137 505308284 965587274 694894441 765835535 773558489 804384050 133639452 386328185 679533663 773825176 195048962 997811544 295557879 769181484 634779136 881619173 370519741 476851097 127747458 993311204 861859967 910311088 411178479 573302300 544151933 766962403 172614662 299134931 871953627 942422194 236291780 641763255 423886654 638030833 177707930 883790711 569331926 943930031 470449573 600014616 844160468 871257574 217738660 541080689 166172995 304763658 271849344 961837834 562665635 804191649 652095577 826469763 773632891 912034814 925695255 943788626 184032616 357630174 179555474 615613576 789452737 894531358 820697306 880916855 739027804 851469380 160379226 971643599 693711653 861795702 189760219 452887676 558357898 973532986 718107671 739762291 158499440 818688071 348972329 803536113 443138386 912101023 430380929 879111769 735621841 845910581 162932747 232267848 901507948 948356439 535356733 624021674 245391605 775653499 98890066 330248208 783723693 996391665 484482803 524153294 922113467 972563496 772467170 966596596 766486193 938993440 246050244 641090227 269754262 803886204 793895848 946486786 616642232 659002815 500090700 991542302 855461600 901105212 304729689 488563878 533492229 668376289 836666663 849589931 97896563 861387782 690068372 703719236 801440520 945873109 300336307 716922063 487395089 958483139 464861690 628155295 187152017 506496726 481679961 698676079 335019030 484526218 673654669 921849088 765511296 871428307 459531172 890636978 521574680 749813494 342753471 750202413 494287471 506268180 735665910 799328589 485155555 776394607 885013717 903386653 199160848 293480211 159863325 408889458 299995307 745573751 348527626 490783228 891113442 924129054 881438365 947292289 831350383 911944809 422165122 464059438 823934524 861151813 531277852 643791198 381486277 481494799 838004755 896292438 422187836 941853146 177856536 904754327 664643395 722967581 166090995 555390695 83557847 388949144 190689340 743898475 290749433 893550077 289030894 788906228 253555569 504258959 450412207 580922646 475190786 823546395 979142692 982956302 159104030 185438097 296659095 837291645 677900336 921095739 908945529 988203209 974434408 975304641 260762568 279718595 197416094 336018726 310419909 922360183 790332152 903547800 119050564 544253235 736455757 883322060 876631286 891067308 320837902 894887260 95165892 172725235 457874918 493531707 660225753 698315221 5554210 361668311 227824563 643364935 117242000 366417237 134051055 735069038 64523809 968859804 40288209 308128275 781491752 824306999 817535478 821664849 384616665 401091656 984193955 990256756 390592634 433514775 738088801 817953813 223070506 579337564 754204945 803133193 828337762 880836047 286386186 843311678 884986073 925142038 272340342 900547306 309364495 770450098 16793919 44111163 506864701 661165794 694967083 848797361 796499897 998273706 612033413 848580901 618952615 684069808 441739822 553077486 294162084 962305320 49151017 380700048 683605866 739594169 692030163 759719659 462238904 845911704 494457990 883361987 748829333 809526345 518570940 637160421 518083941 670132408 659940043 810213880 619393927 768181906 276206133 850940908 305084440 657882039 842527801 901284212 492733847 728114364 325858792 957587811 528176042 580218436 516333482 722588981 305855819 532193101 469669570 709007994 428701605 651503947 596065483 620070810 780987914 970655847 259298601 270673001 620726123 844506886 491974474 861005814 985847542 994528999 531964906 597536188 126198287 137384198 833706127 879723671 744793957 757117734 232132469 472667156 445760196 774436618 103125734 422837781 105280158 423977166 224739327 628059029 699577010 715268443 887811977 995027579 428985809 458941770 823848980 847500043 160466310 854439503 252047966 587660063 151332526 200991741 869559293 971532662 257240288 576142358 795789331 834851202 855729249 907288126 598488641 781121790 672832974 988708584 280637772 866479410 574717949 881679064 760591802 837861128 703281661 772046906 672858053 992816953 815915153 912506433 17738029 940587232 514875286 819766065 21331358 804203520 507668779 920193847 847553033 881263941 723023077 914069172 384464340 673266995 677698772 982025321 958504860 968580517 285270857 617007564 329097218 607662566 989203182 990601058 845788522 999628025 630837255 639855723 177050334 398684684 985330302 992203797 681512681 968381071 617622176 804349412 137776357 313310499 359132944 397875830 659101599 817188329 343351511 677505871 72243891 549240690 95147522 743568146 439925231 698873594 59926032 769420629 198184132 463838425 797947454 833156678 239534952 610071851 29283361 166907753 917665800 968501241 243968557 855150499 971741538 975574593 605170715 740975062 131356949 828050378 907892203 965921757 412325421 531023260 466834529 502218024 670478057 907548321 678735991 971973560 207268663 945882215 819810507 873102777 882923581 947994151 877936639 969929481 624938690 844127450 15290898 986187331 140585455 524739236 798185108 856926277 369092419 487360258 154453103 427825025 515318168 680922738 675943225 748175247 835895656 868796614 687657384 731313232 973671233 990648925 289088971 478891463 809406082 817575129 277877804 659774135 242504741 884471605 405101924 698353464 255390967 712466151 685825758 906539957 263610631 971679196 858245206 892080966 631232318 837773924 886726806 998505003 866940320 983117492 242365545 325731602 41951709 75731472 483923562 790529661 961430682 970110822 265187658 276439756 523219616 696123549 107637365 354797470 965770385 999003191 354189782 908564722 873737770 882169536 37614274 139741549 93701488 824483319 180845007 567025812 204171564 863667244 766159603 767497188 491436563 779790992 139441469 688322638 195729397 289563882 736730424 912503498 77613900 790740749 440910793 790279408 626764205 699469011 839521780 885603961 749247715 788635571 357909286 667510796 746230727 751508437 357171802 566423993 366604796 374102718 486148386 801422911 799879787 904852095 700158318 708972368 30795972 779676221 404247175 910700633 391627311 758425307 272268636 394909263 185773001 367930095 538128233 900695582 283833406 850743435 732706599 756902878 354101071 522613503 989180959 990316896 458824466 669147508 885109436 980583941 151330054 516621522 736951581 757022646 441504633 900479487 176249739 258953720 173989075 361902317 477326290 598246552 104972997 170903027 941711309 995671802 758126886 783735071 99436614 278072401 420117276 536150987 867983376 898041995 828261548 850352360 568694627 569311207 329242167 822320246 714159467 836168816 30240657 393461775 574162570 735348589 11204668 939857812 489715987 656158754 783639644 945269056 244451466 428843967 197878354 622860308 874082664 900924508 325664689 676120513 330519207 437731662 295420400 606627373 766219819 972395882 959609081 963992706 816187239 929719878 256260222 937741280 386783093 441401503 532809792 853236926 114259689 805287855 884048842 908954017 390719550 975929850 246717434 772959533 856103913 948212195 43933297 405803870 952479732 975221227 635891329 639851858 45622789 850341900 886448166 893612092 192516124 328674834 283190420 760216518 84961027 331489653 764811722 838993769 916877553 927379321 813685822 959302205 950930432 985011733 660442924 927996463 306025903 445681356 260440178 809780778 686698317 986928460 865345172 936650929 582528568 818652664 935652924 959001342 49631082 982264468 672936118 798500848 737356265 782540123 356787567 366009529 209544536 641865743 853484747 869961985 481035172 908878288 364261635 665338178 848331217 993776962 262052420 868132069 861166810 953744043 412463888 625342162 394189032 708343823 582573015 941343432 924658910 999739052 518123839 866378766 298893126 353809134 320552787 534184359 760854152 942031797 397184748 970634377 359262682 436639242 857339725 896964662 995306038 999189185 306622361 419769744 108840024 634001612 781846328 920040584 216625294 233958386 895937760 895940016 109717896 907998254 713335261 859314722 58812131 515980096 659682057 891670446 281655095 733150647 64482805 870449203 725850016 878782199 416953756 690884632 532106346 924662813 681446905 848886078 736818846 763030557 949484032 986713344 159260715 751360456 732676241 974999934 809662733 919236953 974891185 991239456 961292539 965259176 21499553 504786736 169297252 811436098 194295560 680921780 99925654 393135582 691012681 749664814 650782489 938690890 562369673 670639904 469022538 755357304 139254410 453175372 273433186 556711959 572039606 829466969 651139763 824219026 766697030 793759441 358404803 633525623 165596352 951629865 661220208 956667862 444441092 551108049 253935986 711166744 726754191 925107137 41693480 145741687 17094907 754417803 404773641 905849370 962893011 970445203 49880091 525999791 344599270 713203267 433280024 988173893 735343530 770305598 126099929 892470780 119506897 722163378 306414250 677431790 598130260 878219725 596746847 933539829 359450097 698229589 988248220 995845861 792431117 900934845 427460591 910202144 628441054 819331604 368804710 541851658 487784602 532975108 798117840 904067960 851197793 868404304 613509671 873962379 255848611 906182165 106205090 342962661 707232183 718965068 82695051 969169462 794119474 913264263 556311035 739573824 114169792 659588117 414090632 789283312 229449951 870963893 717426883 892155622 707250908 879533783 485555917 986087199 655113975 741150720 43785289 323605697 598946455 763113255 255490093 896749814 543739535 760447376 973536698 986206947 626424155 839112113 372278544 632190506 114011194 508146968 946351585 996364925 239339652 244632467 512221946 692023840 219201845 897448178 642934044 927969714 257676066 774289598 604205642 737302853 68186211 770689244 145980025 532405668 969007867 997447112 257358368 766191725 968817010 995339959 119254957 571590485 253326556 680644364 744561277 771368667 318434029 410765496 636250440 765255481 761126126 796699814 901379087 943586468 982851568 998883344 190923513 763966510 477286314 818159369 372118226 657414791 798869631 982706500 998995812 999120177 473734901 826761239 395300682 445029694 251986379 904990294 560715782 624180698 480635221 748610507 993227828 999382546 634346223 851388842 390552328 403197193 75091410 544409487 748197225 947586915 822606913 895263589 149248716 299809528 18207200 509323982 326544265 520019443 803246245 809065586 359395346 362450554 816670586 905505165 537993158 920754515 75823737 635508171 816231678 823508877 514192603 562698763 609170304 970703757 17516258 479204832 870235442 929145690 338277999 675657738 118654717 722058273 424055106 856061927 532627690 923314090 793456599 798706557 906068158 967967138 28339814 346682134 294059794 683784046 639210423 883452218 559179358 658271415 130594820 474772596 199118547 384396976 150813164 534711892 15034119 118841453 510920845 714021787 988763470 990114911 201392963 503926191 144934713 546410769 976962461 987243505 47371086 723501496 624596485 898409961 899776087 924838190 320893830 781461202 689037612 917279916 170931068 555387707 703593794 772204025 198692444 859658917 183092588 483710794 163929846 195826400 622396262 893613544 479869939 702511210 823931981 907685540 705604239 972342392 127228962 486082384 345666802 866413410 382058122 463804315 463788061 515455587 559345533 782083459 832084194 946723432 78533852 889389142 658906487 870885832 933436608 976982190 41816551 944933075 311905759 865012248 344176216 472776019 575605280 767238947 964176524 978857956 528170892 919890993 572850014 941745966 362516407 760028750 796904709 804008272 927194319 990258690 207546058 389550971 577592465 988321456 437413977 970108021 713708213 921725779 385746659 907166310 846545615 903493860 154162324 474473445 809161005 938909068 478883187 629673438 730635276 992423308 669670761 923384871 517046427 706361328 355461627 424395733 566332834 728088422 65573447 137589326 495882270 941365588 517336738 938812474 249047381 607768132 964311127 969827193 92921319 672417572 358838954 688319527 63446725 489735341 828535945 988711731 897245310 955403882 719661247 733387340 706132519 852585198 708285567 809278928 289116088 328971981 606300033 692423325 258849334 833095827 172228631 744744661 103489346 800689040 880983881 897877545 800593447 891520732 138053106 532854685 67330831 430518075 503767546 777243761 990833114 997449504 333410652 614143229 540587895 896489963 986375103 997785112 157594955 270914205 559496953 958866006 414391081 543664466 434726619 581760244 711476315 963279402 83737898 469466959 612694495 636857726 447246880 632805700 493054739 968491709 29782068 837638125 378288660 745391928 694964146 713091683 367320612 924747238 721069995 916360916 658245398 693627918 140974869 314646002 83174288 421168521 293969151 367470686 273784250 385130523 359903832 644688621 592211871 922550998 478955786 510666687 453522724 713355394 994576353 997588158 655406213 961749487 830756258 923100956 812156753 841339412 951815158 955568957 321483267 350675706 961120660 973176073 551881540 844938795 285723088 664935609 94666612 226195929 91405629 726918573 570218749 960317136 974327213 984020829 31483249 636247891 883856188 988894875 913645834 932352617 934620066 997049033 327740315 881916466 247794394 840858811 588155450 650730156 517773111 700308891 697810557 951334719 500596999 897986599 301933188 778639936 822831277 881842307 254645193 437767097 594926605 941747860 515729659 751067509 994862895 997713109 509330685 911593808 514026000 916864332 929935828 931612959 987032490 997226687 106317983 681349581 62974658 722816432 567834640 863812392 11656866 451745226 362164784 789388965 506946903 744384745 20441729 640223695 682683195 998977537 162616045 597376937 184325923 396390800 321991113 405872079 466382209 645494592 898165421 926462141 835803051 859359457 168306926 389643817 110690065 321452511 164561739 387460381 738488398 750462010 950535762 977222781 603737509 658020769 369443485 684854343 88591605 889260074 483518711 534235655 107666166 121171027 897107938 991297104 335901949 420931135 564193077 815573143 396570132 448853767 280979682 327319718 539091828 608771598 714482579 716596207 233348591 363308854 392225013 918068455 20162358 579646246 775024518 874791543 587783794 735461017 300748132 829045801 31881017 219096128 995585508 996839638 886595673 952717907 463351150 575680776 219994953 272335516 754021775 894156952 966208184 969352225 664239001 676760355 591985310 742092055 24019702 380459484 879452810 928474050 647097817 744698318 65554804 405932652 987567791 996105250 501982367 857840263 873530765 889153803 857129088 922948587 591071752 774426368 210056262 480927240 763172127 823075240 752562203 910656322 552308138 696753153 220560967 241647461 473619219 723079742 435615848 892484788 993702988 995416487 304103824 827812505 498513156 621114951 530605742 660783903 638683618 951463689 348897140 723685313 616113944 662979547 13163095 458729227 641617409 947214149 694550041 726370195 909726047 951518617 498619869 630640741 598523698 941219288 823371755 921910129 177251483 928515728 269173463 485505076 887426831 994975592 924620955 969375914 417247402 995153566 467748995 574827657 832909769 974499538 121637920 627743083 111086448 605904738 645601086 815311904 666905519 877994260 921958495 972374112 547668835 611866780 799506756 943545781 629447986 951024090 398279196 655775071 669401542 886542770 389702313 862378154 675856498 963809990 384527718 631115950 134781620 567235326 825354455 902901822 468004729 986063208 190667342 224664426 341258774 551410599 619187723 997354352 379854020 630349750 643998844 886336483 808039773 935271824 47730520 437595469 91913328 978452878 256862171 600524995 391788246 770027205 221202066 341549263 304028482 719147422 377762864 427506354 217476473 480256007 674084716 926305688 956567349 972086050 530054054 940803660 847910224 880136631 971840782 977091469 659387141 806373837 616169361 820112774 740465118 779195694 486569398 646131515 427602073 448464242 802232300 837389697 691176265 972102290 349544516 364878574 749142023 865162124 329178719 750076049 828455290 884340994 793709510 842899777 451950858 996917247 885381147 965276860 700599264 974443719 142308168 588196725 798214093 962140606 365367180 755609653 298998216 344646126 919407094 957658462 892636020 898911339 493785302 787486135 405536695 818448462 846204712 980037885 507941498 960759392 993918764 997377761 77267387 826224604 156623468 495302177 88209432 99261469 231788576 498398395 115041091 451365778 77225540 703030220 151110332 978963057 776743775 903939373 648232370 893476536 756824446 831694327 660110842 827826452 565246043 581658481 858865245 884264783 860674741 891117830 362961304 421145735 322980802 507915132 741641981 829643375 789762024 803431022 911006461 971212370 631241405 974095481 818379958 901568589 498830433 962973904 921851501 961411467 479985423 515465142 340359677 549653708 730607978 947779713 577181664 994634776 65048039 277586427 177638667 296531245 682939663 686545336 181118132 659462899 288367752 586550482 716147980 809528437 932101060 951096657 89871112 929633537 379075318 748033933 483851187 618988346 20255075 215966789 657781605 659036625 251363183 349860559 382768545 459070089 811968123 972818052 408640128 670816274 461855485 878328726 643772643 878887662 309426629 426593490 524980313 840220512 249032668 637598696 377782142 944660111 153858987 947650174 626036084 716395522 67411637 864666130 328408819 543650161 439238239 494489007 498022561 762801146 60665984 321580689 836071543 964487771 50661662 727267745 106543307 516609024 647374183 693736297 622654738 850967096 368177931 762414369 938273968 981736155 140545497 825218627 236504378 942092857 504909306 664567841 693779010 984584028 387064825 685878162 343884149 609451812 207886498 870382620 930760676 971734782 229530004 533691885 50153751 572832000 154958418 168620547 267264334 405536571 68002243 217281907 947920304 954351415 46146823 587261872 898720177 906026998 801656157 931277087 210575352 457679406 768612929 985918283 114788066 161037545 142688166 749986916 533201581 866255328 598536576 605190122 1465708 556893503 741609586 852987907 188429929 309657062 149161336 514717378 903388454 987278819 740135698 871147099 936823332 972525798 620845506 790532373 976268716 987893334 375226501 600301932 611271128 766953958 294919177 623569654 200049485 610541962 951928853 959345802 83978865 360790610 818994660 856453161 326569032 331156907 355057251 832136230 574416968 978648886 676139586 992757981 838823185 849350883 602362621 985599771 741483072 887018361 634888476 974137024 594683935 917657182 726667111 830470195 496227545 718591213 629814457 987223078 608027717 784388154 419936306 498759793 389557665 674084652 528213857 579722700 68419462 214353248 405677393 625621588 426710068 478156394 854202113 928529731 458810283 484624101 231251304 702315379 116608737 240488101 70902799 436288889 846094619 997063425 907359557 951641963 597924302 792844114 710069776 815106054 849081544 903696804 281473552 500098306 195404043 500220264 446899499 712232123 188120497 864342214 375861977 546700687 521766441 615922219 500071990 636185757 788180788 847598843 27763589 830784561 202636201 818508217 25245032 754170742 101494872 599504423 523477828 718789611 646154069 938541093 835917572 888381988 231238852 725876743 645347194 690744968 103073741 385193412 246452465 383905633 767916311 868962297 44585574 354360247 26470418 941089081 442029803 460532683 688641868 983797938 940520477 982269594 308864842 682041367 664518634 696627896 226563387 544028911 156540693 352072263 944926020 970345947 167322735 348461150 242102550 394412627 125364644 350731710 875302654 896104148 860219190 925008625 830729855 884487707 168273494 521870757 206255442 717758585 796106996 851500376 541035266 723055727 47178139 840722107 95124632 250122148 69415496 270438310 616204640 789976047 333802012 384568844 236275890 651156668 966456507 975550173 180387975 642173383 713333277 739952181 60408242 253850108 223981034 397401355 159616438 713720207 449682108 801953893 356842323 443663416 282600653 950913764 12096110 450061129 596730844 803160187 808087769 978013120 313134465 990419696 278998156 598666143 878618926 993554817 26384247 143928345 503950092 608940627 596399122 678142958 989941905 996610358 55518624 818235300 12210860 299468931 359946818 798274426 292998516 714221425 476499000 523069605 203948721 530162591 224338618 512979571 923872583 926347043 233648466 818896735 951679694 988978505 558918329 983822616 186014745 856373233 20919644 490491745 587888218 598844654 38122067 99117741 124990439 365616923 445123855 849826351 983345834 996475149 805194312 956746712 551865581 638258795 59786494 916369335 667987974 869907414 443277726 609007970 870474428 872587997 499071667 665367969 348546211 419365446 86472560 593664305 470002968 555773175 857624454 863436018 110557224 989095716 602726104 975933373 84962582 167629564 565063839 811667437 473428522 922572633 356261096 589062725 841365624 918916697 778783591 947384057 482913270 570884023 383883730 978389548 731988231 951166308 854757320 911629029 745914669 750441671 583274451 776924732 866255161 986493965 917996622 978972077 747176140 896080710 84535085 680017287 120653015 877091786 594585690 732495914 520444384 881651402 209899844 248407409 369951660 561548338 728765184 837349963 981763633 988769714 530229756 855203609 537738399 907119314 290736607 403997392 98719922 735476556 531188187 705288582 99552196 663749386 399885992 728527801 461628628 742407392 443378168 645946644 406425658 451149826 427051114 955560820 905326067 915022115 953877769 980407002 181398895 577264248 264339615 745044831 948496521 956632022 76457044 745119997 592416088 816478498 4369987 916655621 432802386 866767721 678007303 932722252 4761254 257320727 213142843 570923505 616007231 778440096 631810541 877700684 371260588 741266805 397481255 658480784 408710044 826714818 76029752 231947967 264622489 851471474 142371105 479290593 897723859 920073687 98557603 252624829 325741182 498861372 133701049 453509748 744889648 948701196 480163614 484177493 871658604 949995164 338244359 472137565 374372878 905953600 923325208 999300118 249724736 319531294 485903131 745509935 473267139 810630380 103248960 367935919 112673134 767883954 648406496 999131619 252190728 623784869 616783792 652050406 369315827 777591172 901639277 904919808 912252541 993013534 301495657 715927036 773619316 996592105 23547311 664752925 837970022 930996868 996185464 998029827 516001513 633678395 981826749 998987822 473193276 997142129 831807802 965028659 163442572 334033918 792168091 992346877 846755518 897256040 488271711 812162769 696478221 904465705 104905081 399329000 790058905 802959527 553146999 732019237 98520246 337543689 82303540 186717487 68630360 651433438 431961249 997249567 417389318 526730807 503074146 715241558 771405201 939417541 994214532 997034791 176884710 528225968 681396809 759433030 239469260 623187990 144504158 642872575 145654233 160109752 498669707 736643617 530756845 966783453 67565069 530814082 481581679 871489078 242545736 811481965 184414730 983196510 493931194 736036879 796554955 877448888 851481055 988209771 771489698 838481868 657183157 752892722 74956806 781692956 610995078 655448448 793617083 927271856 314489133 996081131 759165668 908371688 383842041 944147073 954441500 991258261 890264623 974582820 513926309 853559182 245851565 479381302 110890394 998350572 401039311 865456526 299967250 453518321 84824576 652617954 179792226 622777336 523123988 810729366 699458902 961960045 883569987 946075458 780420738 891505193 470170150 792140564 824849814 868477870 204178558 367697580 48217509 432925095 518183032 650769377 56500965 526467413 103596339 930980769 30440820 512748866 785273191 844282130 64891432 528513020 567200604 972915062 702724381 907780818 564814574 645786388 297937110 829581839 530586380 671777275 158727369 829405429 625773143 737568537 87526922 918398267 26492527 188002927 555284956 666734246 419664702 934051754 247344301 918000437 611063391 616283037 482906764 580867053 804241397 892702062 563977239 630269991 252698356 608746060 160623762 603053603 598475594 605322310 43253372 401720124 182361034 387343726 346023425 786745761 515678365 935900270 308912405 699171271 921517477 986166830 187523146 472063436 8466855 24920481 17893647 499510416 668948034 972551546 52702483 794683746 909356622 910553196 547220537 691115741 780777626 903995397 350422922 865590959 974041827 981378811 257097084 481913628 89771934 344489716 161865163 222265652 898857928 941476087 160889387 930294720 774753763 913487994 203512684 600700555 61489895 71931468 865513191 919094475 572074111 891044786 176238816 693867446 171361653 411605449 934241181 939644395 870582900 924942695 232151779 495633843 287572973 303527991 607436328 853657699 407645439 555585270 755083507 947170427 48801276 500293011 319231346 825063516 926755163 999099295 146475333 765824387 954254748 961466250 7092308 924378188 934343993 984112917 256277137 609005547 948721173 960172909 472753882 756129496 398116944 417220597 238575257 639562114 48942680 465952030 752297005 958882713 236740926 683217132 598300809 830444811 297425232 756788435 13599250 552968396 849031787 974797421 743998472 881377520 103268205 415437324 148580962 336899414 977515380 985448862 883932542 909416862 377900774 538284430 144381136 164573098 435485095 532685141 907435416 924428138 382345417 796641968 824776752 863725794 774057941 883102626 997338533 997993993 220342513 945457165 194665670 686348032 188090288 308624607 905717790 966468817 867449883 991173506 694031275 763724818 448995243 942745175 777261089 909578591 90255605 349439449 210957225 589879640 479589164 753532153 18705971 840749863 909902499 931892518 426539774 619196198 393008185 575905847 28137029 425006210 909296838 964343154 875167757 928757437 19087442 763760563 134305519 171712746 229918047 827593075 65825657 830859290 199697726 646611265 239311910 532945382 396702890 963390060 577548846 961633132 791804264 876051623 75246856 227650536 999332027 999511417 420536414 524516003 409904081 860086799 968729380 968858618 11041501 48899170 665215409 956801818 153304737 498986210 399018250 531258524 496019807 579732989 155448804 896270464 449714368 471305584 53890180 539230381 460266669 460300215 528159785 781559105 56947321 104374308 822454088 896200317 944621174 959770634 608901293 824496367 8189945 926773683 538180229 799815253 136267299 143435408 648794543 983793560 814338212 878764185 527718381 961534909 502898600 849097660 44340661 199781133 748003358 782280611 795932501 999555518 877857794 988362127 707419039 823570091 789525718 866583355 411794379 536361265 275573576 804784223 558064695 686114270 864559631 941574297 994652839 995348353 6206915 245938739 446826706 894313520 273080753 825415437 335796566 493265429 448756981 818847225 791471827 821398713 491261116 760737932 326269556 415054353 252008616 334418561 628608607 888369767 325707687 845278542 145369601 629633215 441580043 758755786 86586479 261555098 457506932 974026695 571113137 771675785 546990877 980007305 837127171 923526858 597642896 881044275 324673349 521054380 827838340 989873374 342607532 635773677 956948297 993344323 496629085 598623749 506984924 553808248 39702205 937773994 433706004 708742694 972186269 975243532 342212134 395341669 951086399 966363378 839879639 947015813 718827494 821088945 229581935 642312734 259597205 579704089 935786475 942839604 39973120 85602263 675378883 887065031 913555343 950394573 601949573 730051942 495093745 879605750 58664916 898109836 17628858 699924670 305812028 569096788 978536051 981395955 959543564 975616390 530317490 630118856 116508186 205629239 703991530 881391525 442416853 610862578 788568823 903358853 442464488 786279896 59172281 987105219 848100010 893006939 941318724 954773319 164076520 678698845 33926986 991875794 1014914 467524925 738213673 746427268 868824674 898840585 900707970 957592776 286115668 333999015 766509094 781323428 740339826 924833021 582710601 892529002 990190055 990993538 109134034 905788421 989783390 995394978 986804665 996062974 596412091 853539004 610942236 760746752 133552891 466777265 172039678 980294411 995415734 999923596 979116431 982469901 641979744 707544140 355750641 821587901 363328044 971569231 282180605 444209686 713724495 865741213 708642716 948620475 515066881 528364441 183460326 992714659 459362024 535240261 762887201 980925690 662564982 722379711 673252817 713897403 149891754 783923927 534948983 691620674 183680065 659728785 262816906 269590783 886968099 906846597 152826982 628883091 617942290 808972237 531787105 647183947 279256400 610269026 393042528 896527137 171109429 362999610 629494520 760370408 826842767 990436897 809387156 898939829 262138328 912682702 286353780 348102827 747659131 817701432 495089380 871829859 598930943 685261586 791567858 835232292 143621377 678940684 151045823 711160509 656652063 658610173 653581749 945199868 888394533 899471361 594337299 878727477 120180398 158747841 632281040 669854760 502946076 817488037 542721918 858228958 259279831 666453889 551109400 800178237 293999817 528266008 336717527 835478123 414755412 635086882 662721229 932542987 620262253 872020203 898883709 983628442 16682063 469999193 83139932 226211560 290847925 415300021 2120549 549279963 595416701 948569144 676000775 986759209 997609698 999392992 871152470 970610523 286362081 966786597 160037539 486175279 247877135 918764820 344166693 969460875 995585470 997359656 856993991 929594682 364793450 843508122 324290955 927630522 415710701 949004761 987842084 990452337 425751098 946833101 861733502 978657177 424179116 645787584 190742482 601618374 465240767 665197447 142054981 403626659 691558548 826163839 414759085 608988589 901837376 986371570 24547593 196175940 319496842 853420769 662004764 667513669 393887518 764577952 771001053 881955060 860980818 922170305 185415149 601072132 108417188 958510834 469709026 955039740 65339429 614027761 299687699 777466359 363047364 813242446 691498003 806610492 393298885 642780284 671101910 763792551 412115725 579598233 893057119 985131684 70155743 797842265 950030928 967947064 384981459 411862607 613104993 635408606 967564897 984379937 464614089 990739910 973695301 987639079 248670462 550207592 310998827 607848658 465525399 803944781 457939858 803479900 782605871 811832452 499978375 939742290 99803398 802937839 84103053 846672725 776608103 819617665 8478659 514230827 364926377 497498380 377790169 525238084 480335754 750755328 539474176 597599268 180343736 384010791 490331284 525404108 733092644 838620499 586034975 669682005 860310980 947187127 989269509 997401439 538897953 565678100 963059149 963284179 861900808 905072494 662949997 780784888 170036043 689475203 879339500 963325930 366049001 416187172 262544000 318441677 167002403 684308501 506767208 743867488 998313284 998758383 384208567 630417573 850663001 947734094 875762524 895109106 776080589 968457856 954297611 981312103 739137386 904953060 259847522 977537084 555457589 740416134 261312382 271910589 205841738 667539045 453377793 703554535 666696917 933914283 163750282 847823140 969906547 991739303 362114302 754180966 377254687 793761238 964189251 991997960 347894978 974053256 561674120 950904006 263809231 539878877 127334540 774944139 33763719 479189244 830968563 934728295 775046942 798809874 658653557 925000204 997434983 999324588 336528641 905203750 166980164 845560908 317750605 596848963 669491162 877059086 238351667 442547174 491081100 621472488 297051257 451049825 561782292 798775718 285016157 906040418 645679761 998344463 198725751 398232206 55414374 609308893 900918433 942008004 500731253 714633288 938444425 945229849 425913106 791555099 76659916 254989536 796942566 862791228 502615031 711603027 856771649 968235482 637051195 801126578 794643174 922892711 291822174 610631807 858355331 897480501 540868959 889473748 266830566 474918943 482672739 870679084 127173328 847121254 964977232 979934185 286593105 584217363 787337952 971188624 298285040 741706518 643396769 648473737 964694118 994757404 757380653 781626824 600148238 736048701 878299524 889852557 47207365 623574339 420527480 522763879 156591555 938442256 27505493 663460735 715420788 873552139 766087548 834451416 924726406 927641430 452383420 571232915 154202604 835610809 567921825 643419299 895424444 984029902 577213286 801946723 327948921 542804375 585149415 974876788 620271572 733376861 746762307 872356217 98678690 682233904 319680375 419206218 795730317 984174637 399746770 699722690 963674716 979074408 335465395 989683454 392225037 673957698 76959372 383289390 228061519 999312858 703757291 967823065 267081942 317611946 407122189 425392878 811680090 868527943 533387151 652476057 313607079 495280968 384262739 846156881 997521782 999686569 934081620 989239809 854906546 997737896 69252162 969035032 782533198 871246954 267969055 376920422 452534589 972334038 137565115 675674828 282809044 789455234 913053809 950964498 217961897 752639080 870529784 983839689 683981197 908048230 828440827 903102614 273393125 570653940 707584145 730891435 669538587 982959677 890291818 923493618 838634536 909208439 342646519 943437792 213022471 218629007 366222420 717256997 456035756 976086780 828040858 975561864 920871359 984156760 337481296 957781703 902634166 970384775 368324220 961522989 174066591 485121151 471272759 963186179 434929324 873556049 971316477 982891341 72769289 112032034 933118314 949176170 340708712 641754601 624988469 989346260 821461533 967247638 504881687 610000901 690914551 737943898 107592353 838902453 469305982 958284458 870070858 978893211 404954884 554530208 436938484 730003602 515404000 648275520 21893515 320171051 925102651 961547678 342127876 520283971 155450460 573619903 720679783 932283289 845475208 895922744 282662925 628126628 864033763 889500234 908943495 936926911 573710369 858008156 244211061 575077989 691091488 814011056 62681502 295187078 627517751 710635841 117243671 806650690 663188141 846520781 965259884 966155361 75548618 615738111 188609718 465584644 596242110 883826576 461823147 802760992 445641267 691258070 240785019 641436217 333714197 791419455 301995262 631098218 658229756 825358575 269931047 721648246 167344704 901606043 385513673 630048486 621731106 935878354 595287085 869987058 27839504 289651404 830399160 838339860 5549467 35443314 963578646 991308198 498325995 871230077 241866386 314238568 368178344 830650447 60390967 629102374 812629068 985640800 723693262 749567346 349951815 752699239 380121491 885800236 494570465 506511689 547813451 915777818 730678527 983168034 139653025 985045743 496485989 817273687 901953179 923808262 730976395 959786269 134041342 865014138 252406073 968808799 547302663 625493744 387984071 539259981 95805184 376802555 929677839 957035511 931522774 988240891 830780442 893254777 523507024 941434792 914137386 930090204 121386274 324116481 63951967 467199528 636490720 995471886 952048282 992978101 523775101 818434458 64967919 713548018 88060191 324067327 795010405 920206054 467908429 607091260 206899014 335908498 855820913 908149343 345814636 699499916 972361158 988039174 681448769 745582650 3120422 441708482 843657397 960006921 40993015 620344038 716288154 810738594 442519621 848926768 116048681 495840849 764502503 899390120 554971942 643648546 734984279 965658761 609794455 692044734 272121433 308358994 146036553 178333378 782393670 885796975 318384662 875873359 784182261 953849690 891088289 995862990 445285329 787064468 702011214 872337902 512547264 961606368 169168884 524248870 224890468 830692475 190459935 651303078 736455500 793966072 937474139 979039839 674055432 895226343 480484251 573014839 578377736 741738813 608154398 969833092 706931319 743527537 497332659 825574549 552561556 995030564 166377412 578870518 764330807 820171503 858764033 912993693 546919236 778054454 450751578 589058640 961645133 989634814 400883062 436142176 216208713 577887536 601992770 864619610 129779436 590455025 451809284 956565805 771464583 806067080 105235274 422249517 949438287 985640823 913002014 994483532 97617853 229156841 397696781 583223914 996457042 997383795 311078082 645868110 348166334 792690739 885971745 920717989 662808782 923801798 145422973 478618243 766251753 879247096 964864779 982470000 319319971 691764839 929192939 946784728 1234392 13241572 152853946 928196017 591793925 763570348 290488128 307585326 50562772 574088019 640585542 705671233 315403160 888170909 471566583 930068564 195267274 458456489 289351360 489371469 172691953 790571151 55677748 567156435 348342583 374966443 948669115 977979142 572077611 605037055 457913622 866878625 163247510 181028991 358139881 676609622 227952678 658010653 752520073 795544161 99250809 105097318 289015615 820831192 216363458 810237169 395176188 842925605 885918379 926263748 813300768 902785086 16582404 911549497 926089955 963084059 283847788 677056184 832835887 980741483 858421369 889542106 449744880 614191876 885485359 932536113 931405003 999205372 982272447 996461481 620356891 748207047 423091469 775656705 409861477 560563973 656215190 965458593 59045190 80266167 687810884 703419899 606433372 679933406 548197034 982691078 691643218 827672326 411059172 866600955 338923117 816920626 884735600 889458881 661084949 899292468 511856616 919713648 253812871 659082935 199723637 677443327 222953777 569798738 631819461 913047903 372433129 664212996 877143342 956891425 684923017 712090395 376305643 579470943 699455278 917980997 974455554 985323118 365446085 458036240 91597879 955882824 130422503 297512580 357867132 434898886 454257855 687966225 426481611 862314252 411914878 908169966 301935143 893537330 544825046 890009533 679509760 932667373 968725268 979202152 716063004 738420312 675608270 772117292 329199405 598764053 739123969 836997836 415115308 587902232 761485212 864444448 784556500 939257024 918251625 933237264 138080381 425939627 922530485 984212495 664744238 937688092 754569923 988635848 596759230 925645060 42241885 265393936 683537262 934982843 744977223 947590996 697677336 853687047 516086608 833835283 882142938 959955018 553927801 645877015 876158653 937084600 327548867 711757047 307869798 892655972 500280626 831094146 886457647 902080000 812703263 846513490 954233159 980254992 397030915 408215585 490261687 806063664 935980231 971180508 234114039 626707033 484893736 780827315 521173619 970134579 228549960 600497025 894199534 989041367 526018467 636529213 219030425 378581509 289901790 566959765 908550038 958648204 75206319 424728127 213948657 226896492 745513096 821989064 9834490 356588642 322892209 562537902 757525019 931190740 441613093 823171896 543768818 725026382 563125616 801178133 981564275 998703890 464457148 468729592 964254947 991991447 27473730 806466348 870941967 959245141 524311640 552782790 742909837 889576612 557473625 978808119 651896027 910253027 138013875 624525782 477353313 772350548 198512041 275090892 82966491 733337172 309694920 364323631 614374903 737367125 570001144 697760941 65550144 109800670 27000171 202270984 247978093 318495674 607940005 966256431 92607547 514713804 740039533 992271567 803573712 995919224 202229104 752417442 58049533 617432055 998015730 999358990 91528351 890821018 683115491 853351098 33687244 419977589 621356497 723782647 926423495 951212562 223896487 407960375 629087805 859011166 531755575 893323442 781566926 936336857 904989611 931784815 211013972 409309022 646007643 880487667 555028141 656377986 574712702 959521452 321718035 663226613 326312619 552736499 828295083 913103085 844070723 885713525 334914870 455714920 640787931 916750056 318253189 600034368 67560812 928471284 602273888 904349776 849517211 922072458 346201607 352433340 793332525 821925349 629756907 717528331 460907047 585937884 216882481 535206917 436403862 698082010 724766335 889599794 314345619 614054517 893534302 922596886 646541753 782574301 614180259 698742765 111354010 643255649 132499529 285924324 584688113 641684415 212646235 670777324 651248091 858869058 872856057 986048196 39583330 316862183 963271564 977512776 946668671 951138692 104829393 513599094 7222440 781170200 863094682 978405605 485377644 951465692 561599890 674445789 273041815 643633549 881177590 990762118 438666926 731041464 105928904 812159084 781823433 811249612 616277310 954246760 773304404 804607061 973443427 980691298 209221194 304142324 713237031 988560717 33796239 368660584 155599474 695123003 215968776 227847636 402025836 653696414 544430798 889999315 255459300 593365060 509408776 947341948 197829733 721050284 850570397 941909212 970289657 989315486 298785174 858980577 405977127 419751202 269350793 340254183 703485289 838836226 747795001 853387074 540009399 974251883 716985726 962476239 998459792 998921951 128769945 559881996 723853103 954314494 179323128 622310267 567781181 843013466 385128857 797544127 529750444 722175051 804592458 878200213 351405897 445846636 361693172 609940202 344828056 451351302 253271877 311345190 347259682 367432004 411072363 548205161 107782191 765069227 222139420 238973638 209320738 700857082 888888012 951196826 619802630 880441281 785157121 904883397 70331235 985739804 911884858 961804079 877136456 976873709 20291276 698721986 678747714 887851752 307502128 937840326 483688374 868467974 122519830 340591995 90299896 711428568 492564360 542677573 732266306 982731249 193303301 873237075 827276869 941638044 161444723 709027265 642437342 930157671 386721627 584005410 685275325 937051904 342113680 705127581 335735913 583242771 441460854 470609946 654412219 856587469 306582878 844699113 372729977 392765683 260187171 579383967 271846960 847990049 622512652 959042104 420958634 887702656 60559100 779523771 45007580 197588246 825273211 887025274 586587864 882303976 310321167 468636322 349567099 969902534 930209976 985057166 915039468 986715900 48964579 206999359 951608588 982621852 874838248 940340633 345402364 625457138 698968393 886988093 182404481 225191396 572665582 944287710 212603225 316754878 471268085 759040871 277529075 544138836 380713803 791647673 107214279 285198494 392682822 963571623 167366416 704808989 900172838 990566969 247605866 847688682 904893219 938743437 271468140 322633024 529921942 970819538 593206116 681671945 7712057 182010171 709769777 922772670 648193440 909586856 961865890 968239789 450530706 859112673 938969024 975926800 289704234 971672723 496518554 844542801 660520395 854140578 155119140 291069849 994770222 998008788 221779697 996237894 513154493 587083173 659691528 871327738 602820002 995351484 728645480 744555213 946176595 952091658 41144064 941393989 19942876 535644661 27506403 259674112 53506825 429165401 608017443 658763498 406919601 870826137 748431663 775987463 562162233 726536196 169399363 442324404 536096006 747970513 476628460 513398491 927890630 973210498 499841456 816855010 499300256 803791178 497816638 920292673 843230385 932555180 336866618 671036570 558889575 846289302 556796294 791919928 147810018 891248770 534212919 955261177 499929524 584467042 121288918 913142932 365272570 674180103 176759588 990381246 743957580 818587919 881923255 887473760 547873717 885009557 161406344 697938086 143846859 882565253 926746389 965473640 177866209 839573155 394038595 901125677 827320143 911616428 124988241 618912504 408746174 484185673 767903796 801091068 571383878 759807109 381459763 526718294 826873854 918749987 909000085 936307886 476179304 819215833 432645288 692692053 843732457 965499315 510417095 797980869 830916620 849828087 716266857 968634629 939927344 995916099 672990301 843458763 778758815 975468403 861026977 955044284 657442430 925776586 810888936 975924094 697632138 977125511 438809375 693935380 724620686 919008256 488713806 847383969 898168292 904030336 258861086 451138198 158792165 789564651 638444031 959787318 928467404 928602901 266604821 377375284 113262549 228570648 62122604 299571372 546711321 806209561 891749784 968460603 179508152 964188399 299908149 659463656 706408877 768294698 365762998 911950464 374910091 960279621 428591374 754488327 327125013 739066700 821746172 953092002 597892899 808283086 89549069 575028107 826823270 997487371 259360106 574151186 495050937 561867078 584232780 680678275 156046667 426281773 67579726 801249418 526320840 767390558 996899088 999831014 726042713 871278581 607619577 721361092 52640091 364541542 441897526 960523742 291513578 861466971 945266242 980323774 448260737 495755080 506127607 914705250 670968514 949725833 978693511 990076428 786491545 984795663 179481445 635881094 22074342 209056928 608301227 708693414 798747233 874174813 486474571 966917780 64500175 526289190 393493088 820467608 185183085 750511518 94600951 858832421 977788929 994152732 164007637 652522785 635548757 999265401 859930270 953677481 790506684 857252136 418058488 512421200 4461833 429989799 133530671 951906625 660754859 664061109 466671350 529210860 475469538 864348650 246513121 987090094 59517486 757661970 827550855 975532506 54894172 649367808 491649686 988376149 988300881 993259400 619192811 638671221 99568398 241169247 422086171 538907394 734671055 747293018 573216074 979106973 450297142 857196301 412541147 508966390 722791571 986392115 931713967 986183521 466146179 473422056 845727260 882969737 11601241 363706588 566799839 739334089 804201561 964853710 350134908 580104224 983054294 984443033 935247200 959326587 686709545 696670740 959608424 974946216 812563891 999205189 926125155 955367753 310546379 532724398 812130254 962379731 268857395 931888750 36076947 610336321 628687394 636796165 501001778 597160253 728590967 945766964 15043919 935277164 722553678 918963635 832564610 864362930 906802962 990698486 246882138 603002372 587609810 918191741 999646820 999993972 123331998 568240231 668851243 998314365 685152831 799423909 870712548 919124891 914808301 942735625 534810195 652409590 300158065 902564457 727636090 946312655 94254271 630116510 54203907 937021634 566367947 663880461 727837268 857573950 905171175 919988614 710099220 776826857 788602455 871818167 852445743 995585684 810661467 981404640 232537115 668567710 559816394 974477904 375861264 638457338 382033276 417430673 334384846 339920304 889604333 973579006 660325854 820626720 107951196 548681390 145074760 991438526 536999805 682502924 300139125 783490904 195538728 786582905 41811005 152480936 747155737 947764530 102172199 602843954 827813789 860094979 561508732 960785856 680249530 735160175 219884319 638062373 502684929 818087624 74187856 785593319 456984205 563034696 551366973 978747632 942229209 977773762 459740138 992913347 576926796 856860086 206610933 286929376 342741638 704925883 944523867 971962523 403818509 856317308 439657311 744688794 318727059 411719706 845922829 962569208 619967488 776742373 333724572 981785255 469868257 844860714 42594465 772870120 41527955 713371325 804925389 845167821 424721332 861112497 193024251 599869713 342742303 507864037 177424942 881155693 905875338 918457784 506951365 889694862 336084367 487039078 390534200 594922248 395573624 638023687 110618813 960351807 761613806 838359019 672402415 735460921 205242629 741507594 956103701 980638783 520169589 946431835 520041120 829035966 469279235 624396488 192035645 800395796 576417087 721941676 803105621 974166920 392239297 709985573 204691473 544679010 454864521 842418757 86614251 830173870 331851556 358795180 726321675 991625014 188070800 621856362 966544104 999498756 364489945 530594523 203294359 230920663 153653646 926649677 934440512 997984297 643367525 994532446 98733132 386748969 72884831 281050938 32411689 875112574 863776686 998429604 977755303 992991816 634778713 853479624 654657255 993811663 215902760 604800477 760568570 901333607 44239542 177275203 641263567 739809744 765495630 914159744 533924005 707462322 104589192 203531844 61017965 300282697 420971244 949352837 848171701 944677018 330043388 778006960 891845414 962782434 583144438 956201492 275937315 513038028 341856817 579003651 329314939 639670881 257909066 340298563 937588561 978949276 878935707 996368148 938649386 953138652 15206903 836279064 106439687 400524941 199293540 572729906 12747970 195700839 860309444 928072325 700800446 743058018 627931350 948381115 537709176 945020518 321437680 625737692 147976791 606810825 675735293 679222232 180896403 777259033 536012357 955057133 668528298 969899219 488398866 952724663 610858658 658037632 452123075 860391504 409324833 996124204 977968078 989839605 735137610 797093848 884708971 932497936 963829729 998337461 904100330 977288532 650157819 882691542 367046162 673075131 297008989 988326207 835657442 978277959 345491825 445922922 753974612 778050556 296594222 339105867 353416616 834460042 820729641 973307344 111896152 580647725 425937992 794367266 584431227 717384312 251952928 488856500 842867855 911102612 920360640 998727465 235239033 517822059 968186039 983635142 267833497 958398284 634369370 687090783 153844583 882385068 403426182 649048027 119239718 173440925 405134558 996218403 323298346 451172761 725164756 927730243 78217025 126270112 98959524 527941289 644264151 974300916 553747304 869614928 60375494 295617857 112942869 462999640 405452656 958302028 18270218 348868509 570504001 732352167 966687109 989591144 148012202 463996868 643612615 706933354 840175377 855711549 582158889 597538414 475956166 758091998 660149690 888252206 564770287 840920834 887682021 917883063 762818223 964625701 369790919 644155882 157261119 575279687 14900747 539681272 951004395 952589399 490341468 754188199 315439059 341251391 138563630 890631431 860883381 875900977 522565769 885030327 427009491 589605386 506000057 785230250 656665605 682612519 967305931 990973148 157381217 330604032 708943914 770291148 782804246 879395045 200064994 933682687 466855044 884053267 628023219 933205858 424439971 897648343 854574248 959421432 449454577 601252202 171326602 629547001 559024879 610005355 175837509 453234329 462089004 672995363 560400581 999795655 701119789 704866835 540642216 677004966 624222242 797272540 659895127 933059046 755216716 987064310 240977165 993568568 391277293 695862170 655943371 937386426 103027431 225177059 49197174 665914230 140069334 464084568 588568730 984715533 998166331 999218094 48735629 375884858 720872871 874262807 980531985 997843308 80827898 994895882 368738145 677076781 792537882 993988018 833740200 916951608 506316804 694989019 892867300 921931179 219067513 888030246 182372319 798471129 608350475 926064733 580893263 678655478 583387253 754589056 280717936 516975762 7131505 192874811 80194325 626509010 383246306 497765831 60652563 737398440 720216809 764908080 585884449 655015364 581169210 749137353 197429842 252743329 941807522 968402933 925591298 960302651 536904329 817585246 455895601 620253062 303088266 471025976 794288359 828119369 297100015 800104946 119162159 243375272 704464908 888574126 844428564 999741634 631951820 853714897 272638659 331934024 14338382 184653583 283490331 426787072 699058378 871677837 360423536 528043945 188675506 728848386 523793611 810422760 287427274 354155545 220475033 861650626 648838090 861354758 650795926 759829602 952424469 999569759 302550995 942639963 258851013 418169945 585826320 597435174 847765275 991079673 426018170 634751488 904140246 961375562 110936281 224056811 823571489 876276170 335168757 790932450 198655432 576781274 963717752 979245908 857223984 967350431 814154490 927699430 457187579 800504031 557785831 836679853 804615634 875584112 796929440 898747948 569800941 593752983 666003123 972810506 4893695 419596824 473069716 662221591 179122768 510562279 214522399 365739542 341480245 724478593 120893899 185984602 292647720 332797674 497741470 809722789 722569246 920483599 648705364 759456174 210112062 921085765 345700975 531177192 557475927 894477757 597393154 658114267 687143395 909541680 644785022 921500320 922601662 936003604 180351139 794330164 231776348 347160732 969682517 993566644 601669563 605657969 787835266 957591404 459959877 853972271 995604211 999964696 302586682 498671587 74518144 75537742 156570787 598179444 940732343 996732978 157359940 274040697 689433262 887197683 412153255 891772212 606983001 983719281 450570399 892858104 439132785 719205234 385196724 902686093 72806382 949614686 561925827 750873998 295127616 596017861 294180520 540489571 711495613 888339936 689634413 703238107 531073580 975339600 629711619 991936997 995988126 998122203 151753353 420711302 564395618 926155875 173761143 472797886 659026574 929674149 503340633 667645240 186230016 770114158 903352107 906917226 218294961 789083542 662639178 716279162 864290181 996207161 291894741 509046728 562268777 843023846 784027315 942683082 657918475 794380935 251553982 339587616 162376118 724394431 864748521 899352844 854559326 975239802 244143883 673858519 433518487 450651988 563146141 617156884 676170418 922474790 51692768 784535341 637637590 732212307 876559582 903861714 52878712 199135415 4130596 357605492 202701728 641566043 651413724 790753755 549202922 680594803 81731576 212247079 453404671 882111188 700700850 986505861 78611429 423015602 713901214 976091643 705219192 782352999 596498234 932336445 338547984 779162405 447081545 541380824 207288920 580295494 710265250 839559785 735064031 863989341 604399787 913363875 331116260 455800696 507487005 866756356 733657821 881492498 516266615 897657405 779620979 912606872 144671492 998714682 763279237 854667558 557282776 879469484 650638344 830627609 211492854 312301857 237269286 998153906 341994474 655906969 814949507 849625485 146923535 843762143 535851643 703780800 23169550 881079594 77602315 535603749 172763699 509892233 375183607 842576344 4843495 188768444 477150227 648400184 275478925 530037828 245538118 961044566 758188100 838871457 713990851 782824342 795793916 814033860 399571712 578251601 425213842 819276716 136308450 468417713 360552122 863473611 496092693 557032528 965054495 980972669 796188799 889899050 993895580 998872329 313244497 491032441 216391396 927255328 600629973 631331535 254739972 847562282 324818880 790204799 920261429 929820350 581168379 947260996 254332415 999956440 290146355 337317825 364667895 971625427 616116399 763490207 827048172 894256279 374375543 472804049 634914303 679139305 675333402 687179072 95841258 988352449 132307628 931213845 441378589 842403260 73202687 606793233 645292672 875520313 119694523 963609597 907035074 920907078 865549562 935258025 227314721 504231789 816332757 970875698 584616682 599542031 410491609 579538024 323560147 969092748 682456772 933016948 433135385 953741212 591924670 737081135 865464958 934820024 5529231 131972671 841197853 864435028 179361149 688970035 209296031 902453858 462123832 484746724 999969319 999978887 596779873 933715815 544218929 756620101 164675454 465115977 373194664 772599584 761774228 892390587 771006591 952979710 458127536 797824077 30344455 642788651 361373757 376601460 576716567 652637301 797342291 839059888 52714349 369749962 261989436 977420099 36037807 930092405 44297184 902980178 907183516 918600187 58218123 713316829 668290709 735129469 264367996 792570916 765654484 870390615 559138099 976511767 100804079 415912707 852214818 882755852 166042781 217117587 424977490 935544230 320254792 465737225 330893964 620033903 994829750 995534675 79669025 119198691 90883587 452371240 44145168 489730021 140062803 568421488 805550155 912752510 864725332 999878193 894820714 909983258 943829321 966804112 571833769 985442872 598502073 897503326 386172153 563824420 653807904 807302945 216324875 995601644 234895441 922330984 975473244 976982397 202384318 301004907 487042273 509946488 535190384 698678246 31373923 829361532 908468393 936656544 658186353 723469791 373165168 634172673 992379974 996796070 371981962 466816039 92744852 531907929 689698325 883305009 876642697 953160799 464814816 518608554 355034869 981482056 101110489 694128302 529631311 770280923 219214661 421037322 193281811 418348386 736427875 751706860 567440089 787596212 364820555 773498117 245483432 910133577 317519531 911308339 283562934 492254279 75525754 365615832 576185202 994515031 685400357 958787563 569648992 580527951 103996382 553897167 353039469 535028443 27268999 949682396 983762213 995691795 827201632 886727933 997772970 998080494 193170660 321285567 544476488 663453982 155161690 592675419 452493739 642870873 534401635 683154846 854003450 878157202 895360465 957284827 916112617 963514435 663980707 798253765 170069160 686707275 734352541 758386367 603970338 873315413 251940587 951652731 716373981 734037748 862117396 984748832 222412279 761389493 418477421 692819907 236215242 422268602 689888353 761793824 259718261 969706348 58291735 412627636 452796403 503932545 900361305 951098870 974485996 983341080 734728439 784771171 208275060 387444747 463374000 621365582 729610230 864906281 490309795 683391421 337306900 902851969 391967326 587381420 635980180 669652180 783110457 880724519 715457967 976971592 807491942 865703825 986273202 995174487 678588655 879874958 445482748 661608621 822510142 951105614 771251992 986864813 548491645 951954634 486723270 579922407 99789914 690945503 809728764 810823076 67530376 827770216 128901706 892063898 741095160 869185086 697218437 841111963 203139860 593502427 550418282 860536154 120912224 181926746 625283871 876920179 57996037 566272704 171081011 181565586 293681072 421152274 231938281 507219058 321664123 578908993 737371892 936068386 373454275 528458909 115484060 799413829 653779495 957405437 330692124 497039630 602728520 987738212 669451466 700009272 822851307 839783597 765337212 939546454 361133640 801060942 395821035 561506239 565382236 645032069 725335563 838544413 787808457 984426779 617348974 939708795 700548035 871596294 197006291 454132091 780533074 812009149 301352069 351485390 503261879 942178605 122981523 773898500 958691267 966868414 468749058 852029509 77577722 499792820 362452975 617757172 225974846 499630390 744974696 891994100 344416207 352434870 603671934 803872592 876326166 932616036 502521901 578589174 43223153 101850250 18480741 885249431 385754990 415478839 353861669 591853031 49842503 549768572 448217083 513296503 141509988 620266326 433147576 933764666 162210089 208678513 134525800 580846189 89066747 630733026 375054742 837350919 266995337 647294237 176531856 448120169 312529097 755389370 219343631 541440967 344647788 891489619 161028055 489936001 565709918 599600195 95889289 456767789 50916137 321603304 576261395 695579172 189218017 217652903 10201042 857351080 591988005 883975876 996545035 998024833 375482319 504732378 87308351 595242945 692764109 819991339 7866430 367975569 303291112 601525844 253613680 500478097 641872708 892999450 511000185 629459906 549024195 979019518 170631002 428996867 105175330 712355591 523607613 527695789 471285273 631372677 549732013 926511248 308832040 406161940 818930239 869626476 17083583 993583041 482062576 555884396 627888517 737664169 734041072 783231552 441217745 515613296 203755127 773326713 583825787 720473326 95842056 282145503 451215928 644114391 944912954 976017749 170144527 471511298 886171660 963321504 831965118 845216425 936615240 985292560 589248135 988662515 137716049 534680193 4493066 802548925 125825815 844418082 179945571 371749436 529336435 604979124 536152565 548293613 233529930 996749634 954396260 972396634 658361545 662822383 611100996 639684584 99731219 127937043 685748177 792969218 957040508 999348227 837079245 853256552 843605929 846537493 215432328 264123760 723500054 879925785 231830779 886437726 965202811 985047755 101999888 252550394 562527487 775468117 478022426 741308928 725602740 764752268 208322500 335648470 551704880 792152575 894413107 895191156 351387811 653881100 200845033 808532121 317867190 337790522 615345086 630348996 914796971 931065375 742113011 998704226 753910841 862772572 393606552 512698077 441572586 826099215 248828307 616661388 261819951 757224466 239310031 280109937 396187582 502396492 85563732 155236903 703140279 737822784 832977632 960240640 640919409 997159779 541728314 690604889 12879695 348779293 119953819 785219266 209416194 989988845 560214633 892007686 861039231 875321560 859748606 970050677 374281531 720080840 293628944 472437223 856808909 986273451 795109230 807076691 213194650 400821753 820680991 820804317 637368526 810519470 227772368 650858756 771113406 925246764 574914418 803752750 442702006 477043071 827344902 921982243 74701439 417140690 629651001 881207792 467372953 743925878 218843744 297051093 327521352 516456021 590690732 722393040 318902354 545173098 354982769 510666179 437593165 608360710 70904915 438038464 356689783 622597800 922801481 923813039 676245117 698514579 190134276 664037220 500306461 745210502 362384327 987732893 408254847 812612570 850276451 921474727 983543528 991772304 254423951 535796075 494771689 923168362 196435860 843020277 956645799 957603279 304883410 320479349 285075775 689184440 51256437 851783394 30898733 403998229 670253301 896632610 634576656 792326365 210575526 582552310 852097511 951319954 986505979 987154195 151748420 509276351 797658451 868545552 335153428 365455639 479357107 941018099 504307379 697373112 161025611 336940029 649383125 894997144 216293920 670622615 657255071 969539653 750454653 882139015 360451504 741584811 934554675 953559101 475967776 667170662 592029133 695299753 307432754 783435736 284957268 827318977 296579674 991287615 167888941 814568627 139785855 240433039 900737239 962390339 403964283 917763231 640527663 975240899 993577931 997782359 326155871 775071400 94620725 353387038 782985094 832732998 544852824 934460282 815355510 864483379 803749452 986922227 577265533 964384601 551085461 900689784 914762398 953989117 253014384 889809557 405026303 625007448 940201970 976271142 870883355 949664508 364998881 597969183 155749588 872338319 747792836 854047200 461609405 462693498 734191315 998426742 209060284 730830947 788682794 872372200 975319483 979619387 617061346 930834484 26134689 190178148 834843491 977414711 639535794 674763487 589816839 769331294 411813716 873972405 13659004 31143716 342257547 644156215 154248126 926416581 629034308 661092517 121734284 893846738 31569691 587353425 205595252 487523582 286108980 961787733 689793771 796213827 248819156 269696716 961154632 987270669 10601232 260691650 68520487 510790123 963657791 964710171 738595902 820353885 672376359 710453758 714445443 755441994 318467031 838333236 221591419 349357781 958966661 975961767 36207837 573196593 939556414 986407765 626864230 695570211 339496818 556822334 253755786 963386456 839284743 993057262 670056406 953167795 785467126 993508660 57401604 749005293 646234161 756371223 802123713 821400225 804200210 899907498 574791393 890819179 444672799 674137924 677088333 997315063 701377703 877650654 593014020 719457641 47322104 330338871 184160809 923201396 97533727 986299844 690993462 881016688 253584823 886401707 294640017 865392092 227779814 748571931 964123790 979435424 830425246 924675424 78519853 676570190 328644501 574146412 743391801 949380701 301392906 551058908 281289892 419006453 282620152 887650142 538490169 874239884 231173564 302121796 794137812 932026589 987966237 989491102 811880974 851544024 199020461 376710034 897904282 984580037 768645764 773499232 986499102 996859634 50963841 883189316 460762859 753130668 460611493 768079103 583635310 663250670 592935197 645078240 571358161 909900808 306033822 952498299 627752872 707468128 318753913 737773917 366673417 426452988 133746830 280864180 815171970 825513384 77221275 761341599 235994122 270509308 145025726 736797412 460817000 731587179 845391132 847054989 731722570 861284919 80362222 947972715 611479227 937409245 549997703 925728690 534765802 917824031 433661419 965979685 75593628 240197119 752375787 982670288 171261767 466453605 766270947 882754598 322826220 707202046 499004689 697929632 599271937 860343281 810612543 907487588 955962690 969350904 572663782 885180393 593845184 605845728 143749454 449140202 534027345 590491699 132934532 944313070 774572944 955494000 455050800 574915920 545064789 814966467 362080623 873325854 35460324 348445271 530893908 633335335 636883303 679528063 788018943 918198848 700270330 949689289 584826440 734451639 895143076 958445844 768101743 868950792 646223501 696056596 289767026 861175379 732393877 808706323 864304190 935662435 339251768 740323470 389622632 443030450 581814558 936578342 903570362 931059682 464943006 480133008 361652557 810784182 430525271 731381519 284872697 890310794 823834512 924754875 601965138 751600208 57927231 778055067 389388698 581596324 81136317 586996305 379269885 863038592 566252315 778601985 118763438 662996339 892329825 952998106 76850496 531937745 869361297 929132447 15192743 821928319 419147117 844375834 752568516 851317069 291182917 502627530 851405782 996620890 60793709 461970063 325308276 917902015 686846215 858497421 852178878 914686309 212306615 373488513 660207343 694422266 42668419 468234047 680486710 901096436 196670337 758981551 281117970 954852614 166816129 589484547 866568710 883765675 121580748 806321001 686896764 712663609 298394019 771879696 355311187 433785057 930457786 961216997 196156425 486001418 637873086 679973392 355162 758101903 209071005 919794725 74954642 624611880 21003978 383250065 913339865 969641591 861339255 952460551 473012558 599839400 862789287 906254566 303705987 490494740 434716388 672453284 979301305 979319277 21470452 993876092 706849520 807266151 169177440 407189493 753161972 825803929 432412373 775427442 46789138 525070214 207828911 217545607 36692183 547155796 402062318 546182806 931472008 943397266 326177182 780265004 568091779 678615422 587650887 613099596 365217871 607683230 999620923 999962787 717458839 864579922 302875598 406098908 461366585 902955648 331796603 652050466 32553884 323277617 830287924 917492377 451360594 582421386 866357851 920377539 46157646 555699082 691487128 774573546 716448238 936774500 430793974 792155428 811648358 927479877 858406714 875383427 704595621 892428759 847610171 998275077 391147568 547004754 974121471 990321003 334015771 771383151 452468354 974923648 654589579 836441205 520419403 890420136 516741850 799020547 800078928 878652925 468154138 959989326 472239898 505357301 631150626 718906265 893106483 970887874 52092509 956928401 367853440 931954318 384538207 905906260 273778138 287100965 886286423 930330489 914178738 932738288 620569861 770996657 791992641 987604164 559288742 715227472 936349983 983318507 365182835 509310058 736405894 963016514 497793918 980356255 487779106 948196035 825926906 944740228 334716525 997242418 454896198 887290665 306326584 488422796 298936602 487198936 248458637 862434390 953387026 964910390 67146222 376125420 263549544 682606509 323775214 932519449 760924388 953997680 562217627 873454740 387774191 560869903 919850013 936094149 889290245 947836393 16669350 449567299 508344024 788919206 352877174 532639227 957251076 971277330 828686135 859527309 171398198 282953060 938389289 947118586 680596126 828687277 554786813 572992079 549843833 553734596 208660450 633400630 344362562 870624863 420031126 775136688 307614794 452252289 110857485 673162306 390487377 413700696 461668649 862220874 488693698 810807455 401610694 532948039 614010352 710978286 373126279 926637586 706208024 944478936 853476340 861657065 615282543 626558326 547705180 894018597 749604648 983084302 773667283 992677683 74250634 364555948 870071956 871015915 748167042 921712551 685270290 752628111 66721473 512262058 630960170 948550499 900761691 953917527 993811432 993886516 122295661 826848809 833368453 921466007 146785353 791143206 151566261 373667262 396675566 633182896 670773834 875255950 818467870 975908023 944291783 980946512 785149684 903121675 543447119 829085870 309721029 367845601 474071732 904529552 760537160 889183265 688997576 808259284 172576871 503806505 537899154 959162883 841207543 979961064 839122576 885583057 815043473 957520300 749766606 807316677 606211935 950213806 400044139 979735454 956502882 962983643 204246592 287547889 804795060 915302885 676485390 805225945 980345728 992649917 920725404 967119086 353170429 693690022 943468667 976013047 433831313 937097814 847896928 929891626 597062754 718775306 827554393 931114679 977735227 996877540 578258940 797144747 888306717 973179758 213575618 290955270 694494934 832215694 640757592 890673665 938113868 962200943 264537749 327486856 452739663 609591110 776395725 848634951 245283855 764578797 66272271 580097005 318578382 969112842 602406186 753054311 764181152 876226269 829206177 950010813 163903074 164954626 650966246 739552049 477780592 597049042 412402391 448350496 497938479 919470657 706126067 861810533 938319158 946923450 420375114 953443905 820246203 907944664 930645478 945519274 700352514 919265965 941202321 982952277 410820383 889406778 900328591 976588294 417264903 438776368 258000958 944160544 93412876 674185628 418358324 787180721 251169976 518457232 82662044 733956561 163557137 384809153 872326706 913606618 96296190 238026299 964240913 983920109 926777525 939558636 436230860 518564293 502337398 989444606 518992348 642534160 69853605 905713836 114267715 511984822 592357891 664148177 508888512 831047972 219787185 599194656 10626193 613063132 821393840 859374432 222858582 256360440 688963863 845683919 839766808 910101595 642538761 778513757 745293415 895499989 97173305 208182874 857720926 966332213 577120798 837954386 313419249 442767361 618414091 783498959 272509881 955670235 539426744 844616833 492543004 832105504 923952513 937167648 854516917 883941355 756159117 756216968 322797524 931590249 563623246 921208405 403506135 853484437 848971144 856108926 532282760 855943383 62126525 385233337 846523688 932457431 351479926 736746444 941386961 967982205 211682539 847633525 907917390 909103181 408232923 443693770 336646974 499813467 81226144 959200474 198329742 701244410 905752229 935872076 653549219 797738984 425829247 802014649 255139450 939568454 711669474 901527815 970281419 980648875 189143338 319623117 972032910 999282465 149911480 983405545 52669201 710186559 93329638 901859474 609579934 989707590 827967998 858639137 693392931 983422651 749928521 937803952 71288245 600043239 380938290 826215581 657194810 740077085 256820703 956319989 907005577 910431803 86372006 998688195 468369787 862965514 957539936 969551477 823309205 959228738 869001892 965026555 615727832 744169123 597574039 969597911 202686563 280698213 333713274 818840789 750859634 759272319 950180198 969533074 229652128 804822255 364451853 716499935 926962623 974373566 559417526 764538070 623479030 855255026 383991573 902587969 907929318 966326763 828206708 840423140 271178352 813517609 923784316 967149867 578196415 895830311 205004001 482043795 13636791 163628600 52140589 470762091 95800949 838500293 474268573 996915408 435813991 461222372 154020577 721048527 287259595 885620524 649844410 742523507 403862493 855414848 736568269 748820317 911339113 991819275 31122839 366166253 179765257 433071538 686034875 913621558 616841925 951397923 386074254 651520151 16122340 731844366 578744108 794900384 927347164 962862968 705370566 979084134 25444115 906544110 200017551 961484531 380160281 861185315 693735866 701513915 361024883 470799491 598832751 615392536 975028355 998272509 205081784 438762451 87010027 678427466 416728790 437975012 57948112 484507368 840794830 946545349 527700319 529385982 429276230 610704099 334802446 446052981 200521362 903618595 247478341 489643203 362288830 420760611 747953709 927459131 552704834 786435273 362908348 476562064 166875171 764387885 424374300 786268550 528211632 865353788 981167809 990392526 769223502 785285298 608214901 636144112 671812819 677923497 480935590 527027033 20495451 716330848 903993361 966157668 365556406 433807655 784075820 819899488 615633544 757989090 433463730 577383468 805524768 935080091 986103601 989810679 261051815 439077296 144530736 248095904 877943154 943885144 878900896 952798654 773815548 840411665 339448225 860519295 114998032 436051632 185174137 657365333 111628681 352836704 960581778 998790505 648102160 980292750 86443487 396847814 531033865 761701030 803998101 885864386 923230420 942519736 492745282 779190469 870062365 936721425 818876668 979268934 761278094 870215552 937770760 988497879 812610814 956156715 769673968 883834974 102549324 176522260 726445304 983167519 544224088 964217521 986591379 999087262 185152004 883363039 546464709 664109914 827202036 989685082 802580399 907965827 708857536 805826330 619430632 866881661 486581121 555682102 891083998 990354432 749526608 883152738 961349998 997026775 577613477 788461900 920771239 941820112 646108060 736741486 945719098 975285659 620433544 750524401 850187194 955256819 600852364 842520174 649010534 869598358 196380843 486917635 403420901 878919067 639785328 849863906 884436807 985493165 95427982 827167758 59946277 517817109 120995257 385432425 559802877 688374867 577368865 704237806 531789175 623533072 486212135 926574473 247097474 287451006 361437793 913384902 90506644 758513806 647741010 714392938 292800358 720140554 640291098 903330355 870298468 882728483 938407574 945991604 554524286 685626391 160038014 238416975 245979167 478589413 406491793 831365713 72077920 707151279 734037517 851978936 173416702 649688541 593259114 779832072 74133535 942429075 899978876 969138268 920927500 998357599 469254158 928179372 444436771 767610834 929129879 973293784 434181137 968225168 269830734 956151295 342686802 559654871 788512651 994631987 283306995 670013980 613804593 820185518 875785978 921727392 382226438 627438998 977855965 992358696 426994937 813410809 587984090 839897459 973565914 983823862 343512201 850409659 567522555 732933187 75270973 272772947 186350366 330882800 155502968 211769562 671340167 852859252 136347502 811630686 489800217 586742373 997994876 998027999 528082988 558810010 782634308 912095542 927054967 943846231 613601531 712332619 747613708 800006325 170719611 903646119 176090859 635375729 939083912 949251110 655510406 966570740 747388643 951636390 915454949 924015232 876233772 964105767 353712893 684632755 31265471 758555005 694857422 720385784 757679570 770601848 167837929 374304305 635205519 643308421 386891592 981422157 281796015 544458028 886338275 992281921 222887298 241668038 780409527 967986133 18067493 975748301 107350877 938982344 791809297 873489656 622345456 976708280 209380012 811954523 668401923 890396413 307774342 347492188 305426573 395963441 537938458 923882250 129692518 682033623 885358427 994473911 549811446 758212611 174170496 718573061 7085390 130733494 137020193 342258208 278024553 580659793 38541109 891554605 807990895 953919501 843111562 912156837 659255481 949407832 722165979 981036979 602785258 822408028 320985118 424276193 647629834 993558824 271648519 448772604 498589274 691433387 13900585 239859112 969449205 970377715 546740381 618068134 908442038 953032662 307187375 851066808 454400821 587905289 724658269 995873958 175491369 817777110 895198233 900781500 696284155 927819756 439912821 504944810 183089035 810011375 248765617 753785624 689745922 919713272 559707813 678017041 415332123 880354486 621869130 909484622 284843079 609454092 870139045 879733277 934800186 987923814 728058661 857775849 764396429 971639258 984608986 985946987 782110467 939172193 472137879 924966780 760760208 911227112 94893862 370008804 439991767 467658950 750853932 881728906 860758281 988732661 770756431 954177858 451764791 537331607 388176556 715940182 786896040 957694225 199983087 609595477 650208874 702029026 36227508 321187539 579367742 628012274 115593590 742393719 24130230 430130849 548952737 838578663 685581216 903000344 210118960 892394098 931243762 977708209 624735743 948788765 403899462 689067888 91259150 940298107 488684344 672685351 612738707 695620922 984333418 987914032 932901569 994421388 47124946 319879413 110001294 344887633 161858057 321444075 207905831 492295720 649693669 969377838 350500319 447774088 784711861 828688452 945743289 953980175 545494247 908078777 730637530 995491703 424874356 577904392 194529339 958394200 30424181 79154075 543299954 825109647 247609539 301559356 448525829 807944513 354491521 553444290 188372204 713115289 934553196 993522209 788406695 934982902 110992612 701787545 915725263 992611726 790878527 795476879 839702154 918256613 155966007 762515594 217973521 297208544 566773494 990618439 443880454 744973775 372922885 562699842 208508828 872419557 315804528 818558605 658748004 687276482 740451741 952350921 432933802 908365563 913950507 931694460 849463891 866854117 403299267 517496119 958121128 978675427 606174068 867587249 806939389 809617878 475644837 591169645 604657886 759460223 215286619 678787363 15727260 613538266 368032347 573651689 351961864 422236389 913740745 927358597 144053065 561703871 822178352 933245606 993803823 993890720 186425058 593861258 473583246 551925763 389050371 571279465 807381448 911099477 707826477 909648988 176279617 347676866 278288560 657600518 719660054 856131202 645118067 883595230 311852762 622807803 36083241 551645739 947063263 973703326 415750530 694539092 732021204 906733838 847429199 852780704 838339288 840328385 463088521 948516249 34095220 385624929 280008016 645172858 448361761 965881822 974786714 984258471 768753693 813889613 989596207 996761084 323253370 706982683 713770993 745650317 881390293 919821351 691275767 806045050 157033976 219709737 749983354 916045380 711866432 805909778 149096659 911150408 804552750 998483015 727920900 847363163 969629803 979042070 280610931 549544813 617064850 632601861 569516642 788369778 318735399 875564826 583974911 707553699 114305281 825678554 515344733 887310337 520390464 767913805 233434127 571751622 239521002 959639765 513414823 750440153 92369086 423174432 348826831 444695840 30866965 705071030 549491042 604911209 81908156 281152878 986273461 988762809 461694235 731480120 451928468 621705269 786557528 848973565 360003044 508930320 78780938 251869030 936825559 987925118 166070618 985152400 76388404 326444447 858804567 870178783 675737732 783759012 128488052 437674883 93799915 446019750 780617820 929347833 108811833 372387076 452949026 801902499 534835118 816923973 531770447 940347248 620268414 725164977 748571324 983249432 730301297 822301233 428548095 747624482 344030548 386634441 625357851 794259811 639363929 822501944 951629682 966053669 40260118 143120251 288453759 619014674 583448760 686251647 194989012 531933955 736577145 924410327 766167745 857370907 386799273 709553833 705535442 788744725 43586480 155342691 274600171 304760332 490922061 519281420 596226455 815098099 664565313 925200825 61749251 844104413 218598252 295525959 852170789 893835442 774600105 926616615 51921202 166616329 66004423 472828308 180095444 522962720 726083371 921055665 109522468 232345787 592258169 846469025 249637312 331250094 425886422 693074780 993990215 998770224 789959885 860251159 398172333 557911298 937260007 965481985 458055880 672689778 15862338 107313566 422380287 937486157 205013496 971074712 658413024 844848056 44372122 955159982 755490873 765970914 805006718 907918726 270431573 601324999 135452306 727891301 609885427 611435568 893789774 939453820 596656765 665788801 120684561 780926997 778241548 976746516 431284785 846128180 340780785 667921210 89236897 311002807 813367666 822005621 491531169 587130016 477614761 848126854 175776022 838614468 135287842 685139177 783198616 999318902 528527116 675834665 682050557 790663028 165516333 179117197 386039138 814602493 170454493 805762299 292162406 717990857 498154106 698195782 554098643 883449122 447376438 683453205 641435731 947838276 47262961 225115912 1572042 279256146 715240810 800776117 526338535 671560466 774176523 992555285 432687476 478617163 558397569 610378975 88240776 540534458 426135846 441627815 568147595 671377051 660299394 682226740 443025596 684358720 767725414 944479500 779704122 990440944 434289566 994618072 731922812 821387849 187622555 797329723 825761066 880172968 552324241 896063648 582137918 924299593 922842753 982160711 111523342 349954920 515643922 650011925 630389529 953533255 628067116 943910136 452592432 665361702 237650732 384230597 973901859 980288782 935235979 985363476 148509196 781526581 872144664 982842038 894718259 974157968 310342650 552783232 819384894 823741011 803435748 956511554 597600594 715350839 956627989 988985821 934379606 993750178 525418467 656024066 873521789 981133655 900709052 907247461 718326883 944252396 832617392 957691227 60166493 303685024 933839 126014868 883319045 899109783 582127806 819582203 473997266 567186921 770842243 907929251 235445146 379300033 284346899 575514150 527054823 590199818 736372183 913394215 293136136 944810273 264858458 851561066 172074694 426268485 859876246 874700505 223291193 699286312 901918553 954863396 488092672 881223172 833797337 977924377 683207812 770180303 271785832 662318174 260400040 567590482 197938512 742800333 38850859 265460030 232889514 947601327 734636876 778260048 12471049 746876572 614379324 966325143 725046497 783332888 990392517 991646616 556175423 877880606 374600097 898376966 767599321 917122404 80907892 511615290 339065446 710763243 134743167 309944532 521902024 636416080 306639313 627333076 423331137 841095999 613785101 993415841 119236528 285844419 783293930 829206040 514828875 552239999 240709682 750089515 843652690 948604589 816042780 940761314 88885096 625801793 540883887 982526957 82558547 537930284 871507361 904218994 596807034 892252570 485202144 770230602 717381999 937147166 884272835 886851272 904424628 924916223 836037155 929313685 163389585 221053790 671518095 846584585 654144738 712010269 640952238 682731857 685572432 743334826 119661439 162192676 246044715 289002431 158376946 740539416 139154262 525291674 875501443 894463333 96466724 574113589 127309616 549604020 944922432 956637933 730287578 766640457 498222727 978420689 572319666 926077579 357581344 788765024 454274197 991473703 74277142 291131824 329103871 685514167 304895750 671975797 551153008 560885471 971052352 993345386 262348790 843319866 463827830 632726722 695151765 828806094 417293923 802216600 513969629 977549219 853751750 898341546 586338370 667823758 232772042 661116441 762793347 763184249 390818283 626398381 395323771 482445689 7789130 47395406 162951674 922563206 868255458 994489615 58731696 879811944 21615249 409609924 487641223 781587243 866935656 962152918 104507839 913237221 602508097 840369340 255841149 904795198 887744873 909216309 760249501 841886269 996180845 998923534 20832654 490363770 520082673 981848119 989047770 993740230 247534925 440735646 397380521 895203282 472460473 683432454 640562621 790516671 741409677 899005334 267108323 928984554 470434317 675652444 166818534 944050553 803426017 863488661 840043480 934772974 996644252 998906672 62684756 959450910 407151925 812204229 842271156 925064131 434842248 651140354 822506330 943201251 720278419 821442832 941943214 943141933 504065986 909921553 504313595 894225313 875169470 916452391 53355833 620787551 477332674 597447253 297897383 378057725 30817759 108838160 391032721 647211610 973669730 983290876 512979385 844677013 220689990 393295977 237798707 701583625 638889187 665776776 32868054 318814302 52116034 663677439 967179197 986395544 730011164 787116269 447045449 899694308 105390155 142318684 956530334 960417885 215959284 237415822 310316412 582436389 927562979 991518589 469902201 638040573 778546996 968518773 873609634 908388105 810619029 933958016 963954505 982402910 906907478 913902274 355121483 883139741 233583014 820419053 471975548 728829284 860936635 902874928 706634522 873780763 750739085 762785461 324744250 708037297 525817269 996755200 754793004 844119672 427621458 796326613 850653177 948515366 628072839 915842721 357591737 885758536 262292957 939319372 945757941 994443503 920447254 993373674 574622020 770699487 60658293 744751990 980977815 996554108 592216380 724668034 228662507 632169038 726025669 736429316 663200516 779806475 30356002 404224133 107374095 978704728 714454809 814495297 414493347 656170866 732059414 954246197 27454233 330623191 616951547 796213793 100438653 547881389 136350652 163481890 765590100 900255938 671199552 923914578 302528892 911319960 595918268 927195698 468114159 761289844 147852876 390896119 206398781 901848053 745679790 823938476 635184817 928705063 721870484 861826097 65486690 71549300 146924840 847479220 23845692 207006307 749080386 825505871 796506868 798602647 597430365 825296577 820592807 932823471 67082355 149648829 942575469 957645314 917607919 989369025 336569009 670124636 699583470 784942109 622510474 878973752 508609196 666582425 931301895 999402968 673366431 969534229 188497450 441255180 728498033 950597455 936519529 943678461 122516202 144539201 281913577 874285904 442617368 592640350 756181859 989512932 326792990 938253664 304527471 830938511 394474336 927848864 48212142 840532330 739535037 849215661 429629702 605137233 628830832 879580477 560729213 562287307 96285007 954863003 211375446 531092546 654011205 934991973 991991108 996228267 978493700 981768825 262544562 932765491 254774924 956043044 318942244 912553173 201476774 686012610 423343079 523287208 553492546 800718595 722511815 863580835 305622245 724836422 749194168 854173780 669690608 907834911 524491747 898281583 589294784 697377985 92026955 965259148 550638041 718542026 163231916 642295612 969287426 975438946 645763738 763566624 97768435 616781579 146412294 543125078 270204243 773450531 440087766 586703335 441200895 943230006 967593757 993099155 390336726 817882188 184892072 979592405 903457951 990865186 165120205 589411308 371085657 730778262 949477839 994237715 210038389 683317572 782156848 960609810 76389311 186337675 224395137 258671411 497550246 684551826 250601970 443627235 669892851 867592122 497840182 751329605 497322731 709165784 231150165 560044623 329017272 455938246 563134960 595909611 232681380 421313015 314978501 915349916 413959542 754926266 940019803 944299038 727507272 807599108 418255655 827424417 398842565 444827943 239834858 808351074 710143539 852379011 896516012 977506921 499155093 785009426 279813609 419859068 156114058 581233113 667700193 706507335 600976310 894889506 506388921 987823447 78722859 536949289 722365162 960774205 814667043 899010626 612088758 706270228 909152936 968954759 7990808 866809150 248886361 599636815 25421237 374890008 850719651 976062309 727991035 820495567 65815839 124024364 680127169 739225191 533727150 672808928 594852971 888748382 108428043 119709396 263708556 862090457 922313049 965046201 458100495 557487788 560216334 759035793 973285553 988178911 146203769 818598055 39240120 480287461 110737296 928380348 29607863 748498609 479837960 959932957 403580972 696388855 122854453 457865934 193992941 422511540 589292156 858856234 791705033 950122295 946358677 967587372 308968652 536874268 549742427 650029143 416817092 849615560 676250110 753345641 295906218 715444324 718000466 794988711 791154286 935441724 103097968 922159951 966064291 967419465 125966038 577607879 400030082 789995202 618380843 818354825 878570438 931328600 717974263 721704017 822910268 898206183 352428232 803826982 502720462 560311226 611495162 669670094 840213693 974901994 722778088 955797425 802345941 873642998 329433157 331524399 765411289 952363515 760999270 795503317 429772770 517028322 507720460 636198551 155301298 300976606 102047142 191219016 404667536 440929301 331512197 388324175 772053571 884554535 289705241 352284741 226774510 946331958 205760597 981746926 773855889 819859896 118055189 353043777 576795219 620336325 695058036 697181734 446491439 712787025 241346535 994069716 562937101 787554506 510750543 712269466 712694919 806504522 201096682 518409446 62959491 945223799 699954337 947213043 562888557 765098791 606638155 786933703 7617546 37670098 847456210 933761138 518251406 702291647 667684332 694259465 276399085 672750769 342200734 718908627 618684987 628218411 202584070 680483151 911340026 959038932 817907904 819900696 533223822 875580121 488153397 588411369 711700754 966777361 325084768 549514574 907807812 912417388 951921579 954571725 915368890 920146231 612882016 809739877 915168446 981002489 210864905 329705169 262042527 394235844 523977297 906164681 423302011 940808058 799779210 923457765 219269723 494450109 457379315 719441466 533483998 947609015 76876381 801746780 274947892 880598791 739565465 837293000 352631257 985533649 818174888 933136049 771582526 819827861 993685780 997245637 343216523 420934780 404329502 702348623 246586140 346058749 473098328 691014297 743608678 839199947 886618798 952814697 611674721 988454592 823422683 950546202 210219849 406544080 678849530 927847667 342446230 438168521 826946392 982532104 577413434 687948787 112233180 490972531 333909433 402956365 520168301 794426204 601366603 606170741 275860371 536676934 654468138 848725406 270782116 637960442 299741973 664794383 185992195 248603262 689605861 835723178 423667520 883945598 33965287 159616730 255478715 390128028 95024687 806377587 363197994 461366615 797034203 903073334 44298750 466579133 244282797 346132305 38101240 839433955 52903435 308002981 591729151 996504250 584423928 964611234 317139695 435601161 553810408 633749204 94900257 303247771 856628892 936232156 129902475 732850979 391984043 854360529 854889925 988430831 189839058 996531822 806430634 852460151 252111354 580018483 361434194 418758917 397539284 721623562 381858622 442905761 22878214 627137385 180250034 988655245 698687089 736265654 231117871 341608997 707546758 749524312 749276157 982794508 541254432 683685035 665488750 798267730 415865742 655270992 548724323 630428459 138979413 966138399 694410443 935133325 395105689 767695235 181483477 333071102 674627345 851153599 331333873 459821975 148978618 712475664 952251716 997384921 765992528 810264705 8700134 52048487 363108443 742268140 961204638 987532468 195666679 732673938 572274477 862961324 999064010 999721415 619396563 638739599 399106495 466792208 819656170 877487322 141230923 534294045 370898126 596940117 209751692 451817814 881708584 895250898 431066498 506435099 259842861 924197935 56610558 517237785 48275389 172869904 246624898 449978927 159863323 375383476 763212344 857467710 937739975 953053056 924745773 980573839 279443894 975487948 440083544 853141547 543624578 951881936 18001395 889778463 373110066 883877169 879560984 972919926 593608434 800254928 181750920 614354984 265030113 283599195 121316507 234777574 239736896 343503711 746953909 777354492 824094945 990552716 815856158 985488410 642133839 729736594 971281892 994977601 817706385 953427451 373768413 411740212 976975865 986536229 323022188 531647991 28543401 328608800 264323755 496174953 330789935 722199531 362887334 805307236 328821919 701155589 24865662 666866832 516822497 647833900 912341941 938106150 570915647 997987653 580320014 594160316 806031537 833523609 904157708 986383218 267829539 442851357 519037849 538183354 28581717 670236970 622437532 919361303 621441836 836692085 292636279 931958779 539844633 765558297 475660447 995489594 681211944 751875872 734735024 739017878 398426801 913206815 853095123 897815059 442725501 634837993 585137430 825426183 845425032 910358209 888635786 896696566 148151894 559052540 387834982 957806741 179320499 315574192 496804349 673654598 688470774 701874561 122874821 759908279 872780179 893227597 805335392 883367569 906331845 918200953 427277353 444137986 365079075 807261727 919052416 949791321 636381748 941786832 239384429 328815240 67849666 913388028 603121860 730985992 201427426 225352175 740266069 917829439 671999330 685488861 255279951 440367293 22367837 728408673 21515834 987201000 406539789 551083375 195045205 699033877 755476292 885808614 444650646 649592116 284694007 883673022 759579499 902784303 847985234 874724329 98583500 456777384 298669312 544945818 977902370 994897969 114296135 740442634 182754403 634620770 769366691 877418948 482058194 618544284 229426910 487869889 155005334 155551646 760330555 975004697 332606145 922313749 854499087 884260588 170409887 429025677 398102626 591693029 576822530 886530719 574288999 733268148 518383305 841645243 710189999 779957495 968989378 986801608 225959564 712640716 270061339 304136419 294028374 783673987 796764270 877571482 786218289 844520630 251606128 891971620 927725302 951149633 243354763 715240631 79079595 584638725 919002088 984294821 283869841 577563656 441040760 994557326 589057374 903165418 47382416 830017902 46137954 851866761 217832543 837741214 937969520 961694137 750136019 967370179 992919335 993529686 855521101 866667592 261303021 507143178 443391796 924476115 822994407 854101063 302158836 600227769 995216590 999042225 128750007 658651777 647113560 977587729 430218478 999054161 379200035 470283640 59857625 804069556 673303009 847528859 697617454 731653763 620104136 838551123 17383525 254606943 850400629 891971217 300012740 558429144 285759267 585819307 843368841 872163882 683788574 711703836 615813823 623755589 338715694 671985605 348320315 545465861 638675054 729771400 453256450 461466816 611637628 655720356 240672919 386416420 727422955 870871745 677075925 951721427 313523268 546921183 225922750 706070409 533447650 994147553 531300763 918233883 654767339 696666887 777965622 989933090 580703360 913699305 317097971 863454384 992668564 996251386 814106459 896606596 607819170 617676709 783031096 842142806 312716345 445702069 450272428 602687686 348680670 603872196 880036301 981530657 377062776 542321579 267907323 373932148 954455979 972666730 775931294 830942840 346669153 919099326 919282275 994044189 33785096 555924378 180928896 772890612 951223732 977520849 60239068 972950449 593536095 665945385 255083467 942394614 976577123 977710145 598231007 795971774 517896635 745564068 273841991 776115084 709225440 834449545 545870344 737911891 205377375 688211989 687991279 720699808 439326860 699424736 897595858 907593941 907606552 911084601 505783891 527916868 162840916 484253515 278775562 941679173 663053849 828504687 686481881 920775577 654240026 780706490 773592470 827718589 275263190 734818991 106622233 460452206 268723226 377063048 549023243 631339803 552556548 811406309 119675001 852225014 428968723 864682577 499125797 585212909 1456517 835831495 131933523 831070336 321581373 906142942 714987207 840684722 938409054 999686410 556704017 801931496 242897213 708573471 77062046 125828933 254840215 407462739 327481612 508965165 313845826 453414373 640742213 938983004 533802563 711552894 989936309 998404482 811807660 970245434 582049086 739567316 614841861 918383590 270932456 427491269 992288857 998543713 560136670 583124942 930619972 959720180 618773111 960422225 867430073 906624707 10203446 214019763 959185930 972021837 672017478 816950115 450498345 932637468 699290856 898460036 940123121 954741879 893603910 965781565 791543576 882859863 191886867 871229288 967615401 987825232 284869044 753010809 774100650 853451488 893682965 977951993 97410232 317471218 996434125 997179418 191651829 718461053 424271591 966067056 860368632 909848303 675095812 791992813 416799946 571785090 725756406 757971478 423610975 548429281 685401897 783034228 152122757 970263905 980595380 996963004 708096650 801221504 201786728 732921522 424785911 944109097 560637250 570093687 324134422 416434154 143553257 681350496 736462086 951711434 687892869 953672915 69109101 553907356 510502620 882374935 914302046 955378354 995417274 998229775 190757551 588812965 972956373 996082740 513928639 966672636 778827529 914790484 381912271 741988962 49708251 521316385 683082021 735442077 828897200 945767760 262050980 411397728 561999050 596160327 779191697 973585315 662356757 663246420 921482365 933349139 243782161 883203583 399874935 527656128 121921497 524174809 400505120 594110571 578806407 796483332 173994971 740555347 714994345 781677965 110432808 688081265 481425277 858939074 697238360 706344933 661201683 873094431 207798127 657263420 504300110 937951208 411959901 965839525 571245906 622017002 935162150 983001724 226636893 493156572 149483247 349013298 185777460 810843370 865526512 881906136 910222750 928248068 28297062 555137214 836729742 917771732 419105782 873651825 661888171 890365077 637396116 856560955 978055945 982310643 651443719 719886490 72980412 684996517 594970356 667565183 154814853 251276900 995676480 998713078 744076329 877569074 636012125 935265694 400889866 672022722 465713543 670784900 525015802 911757621 27354142 886943251 661649052 855971435 580897322 945735521 705977026 874341284 167571303 732733740 540689420 964490916 471952472 514648323 103636124 961496196 326004237 477299562 942661651 956943179 680508249 698859903 681811717 970039513 766508407 867618833 186393793 438831244 328850548 940243013 324503718 358499296 52737379 586432481 673607673 883223561 837645048 879755703 499381024 894910168 49238673 573523540 801932979 842835625 658723741 868294091 270636233 617618164 465163113 734768851 711731433 870331799 341869755 343207893 745527183 828054530 865545156 904696026 422133173 724955050 364039111 678753809 701783368 868652596 776455485 784354784 469206678 653598696 227042258 708336676 384098837 589861038 499573929 860483186 601236204 988246970 771757613 822080217 173535216 441883018 707910419 931265166 424003346 706880462 229212662 242755568 817178839 883272083 348073528 593775996 919135064 947308116 731650729 784090460 292543857 791789673 40927783 616195577 423036522 846302659 914682045 949392695 473234796 543732465 119340868 250825244 792443190 895458994 369875193 867654150 411560306 836826482 248123202 518441463 620446710 828575600 887895037 969632872 888969159 953894770 370152160 396121142 249859423 257033024 611373190 975723816 631476040 761719719 802818568 850475647 422883610 631565420 66697092 426227604 450523438 506258429 622398627 953455962 202651324 246663219 911154645 929738153 804355166 921834099 958447200 989872582 996352773 997727001 928890090 939875977 940084831 951986182 814311848 943477872 602517186 849672169 705046504 806304160 9210301 893876967 204832295 991788385 251156674 434235576 127409914 574103180 50579986 295438921 869299325 934484022 742017900 807045023 565487662 613463456 667440560 870746048 294281748 891228205 587155812 983731893 583191228 940539720 272155410 972929565 481855710 515556677 919266761 948260861 602892111 689239338 653517217 714321091 878948055 928264051 910505917 933538756 76732232 497141847 298190938 516473530 42571795 178781593 514082146 614834730 196463168 688978102 979332080 989989436 176185592 780611658 758089024 915375054 968795573 976759842 727953017 954025558 894531236 930099573 913049332 923944724 658629643 866629013 365030723 799547766 879164024 909278119 710572221 956742836 119992263 143719088 266268080 272400864 286230830 557217723 716859643 970631992 16678516 214321586 592978760 875741167 329659552 513282918 7722693 364256621 682392477 810203721 867340088 887031969 376042376 673871961 82333225 388469383 275320146 289202714 256177693 625681497 214883188 298825969 988721311 995910352 305008474 397731192 380376037 504274143 191186699 280086815 723569923 781304252 257645696 800242015 493367770 814428676 185134467 556823099 795063558 911073598 412041567 494109178 720648865 878583778 317474650 800226554 314478380 772822092 917533572 969483303 550588391 989613138 381837405 809455931 83525341 404625543 702631073 733653886 970661092 983253066 964714668 966531131 709711816 936704642 438406139 497547287 277975947 643716925 771445341 949209825 145064086 853709406 454999548 896579295 145788460 668171173 884123054 946307018 712126992 929780839 70023894 555689856 723598755 934216570 462342929 502590762 405341924 717814997 94491462 486020671 998809239 999507481 6149614 789436508 202254054 371399972 377452025 448878702 538389205 772519270 440467806 624567260 176865620 767505993 402889340 460674312 967238006 971305893 537545796 997621985 203993876 908903736 770962975 804902696 591275659 882914592 416058928 979648369 311396448 871706687 187536530 427588709 166741952 615007497 931417125 991688121 48088078 453291507 204439365 651988247 154618058 867187205 545053389 565859019 431291977 922571642 899319701 908872999 460687041 929291169 530452501 669951599 302013588 370876331 452565059 836132264 369748312 683051295 350535245 446094533 771561514 848751426 846644426 960263442 523038022 814797651 921305348 976596611 891412515 918592821 281609514 808649809 529381156 695606060 51733993 522829350 587165528 775006843 152206877 730121139 423897419 888148562 293775112 505583415 226258503 891264857 507383847 542036111 207409517 314831380 915428375 978631373 383026110 498530875 766655182 844725864 903360999 941352213 379770442 586842696 544938138 669884283 295133685 564952021 841353602 939324515 912957825 977581177 548923443 918892608 945363468 989049719 485158298 779491233 619559315 725071419 236231865 847782299 727845472 908855035 710269168 864733528 147496738 979940941 165989618 329714679 389828545 749041882 92654445 878622748 968447381 977664566 654836944 853144884 23935899 378548540 401503521 954215722 306195673 472590696 488709490 658083481 978350136 981732784 644700263 787518379 476617753 829484131 405445960 483212243 972784477 995111868 38660870 256619890 440928566 496409305 750985928 774903041 228730681 312862411 237025895 961165237 319655811 443179630 714292430 843195060 341908466 654924687 192808058 254185796 618637193 706338574 89538391 218966228 588951498 782617856 32463160 965948169 770288223 770857431 23452160 355146669 459994729 984143581 615153473 954018821 651294912 831706679 165952173 220857707 1148892 969263539 53022348 285558907 641116617 820584801 392324950 493065366 856106317 906358019 891893025 899073244 839783140 951738833 329106320 719860681 469539686 650220234 491440692 575669075 791942610 802105172 647731519 695071208 363367035 600110050 91443711 671610372 201270833 852204400 926666788 986894121 358121204 882173413 190317891 642092124 905504484 919292188 824748852 971095984 578364409 722605493 372359590 479603143 423715310 588708027 879787183 903733693 114948454 799968263 716133240 836262696 720791938 815323097 227705550 904101560 613551288 745364752 56478609 363861594 140517358 489838877 562202096 947540191 26323948 742480504 330279006 902352620 382292152 423305636 406886210 985623725 805884139 916598052 418210906 796048726 253875645 531069967 446054209 878463298 439496564 941645919 880843874 923261863 685626268 742874212 70152325 972985235 521348306 645754981 73640159 619551290 2349912 549910382 386303107 697985004 87062941 505341912 97907517 206346592 151413396 236367464 275787525 311876617 502215330 789382545 386299482 535257372 384371136 622057397 666539949 681657739 654090518 669612030 637373538 829733367 945071595 945603519 310963411 746305911 676184051 780106495 78125274 670684110 915582894 987900428 801514228 829861893 176912165 753498102 24563998 703048832 347636765 602626485 408364369 435738372 728735728 774654520 258665264 607771891 273359620 945213868 365373434 715069366 241867453 275917456 672299284 871417405 636634003 970906584 685844852 765370661 57485178 572557930 753004016 759023646 411922564 915123841 18685919 634489990 893254897 955335622 991766655 991857721 945001241 992774267 433985205 521917373 974743881 998031332 519909932 851155547 959545037 994512548 734371345 916924483 992780307 994412616 154301614 867424356 682814587 799415649 88470404 700184544 158234922 710271748 871559286 979976688 949988251 972525650 789285076 805702869 648000415 660525337 218198490 852759557 729134120 756387922 579361514 955912749 916313255 949317928 698365424 795268896 490683330 939065024 826974705 992968511 432940461 706537498 722565885 820242820 987650821 991390723 589712066 896933258 786265986 880165816 766021074 847726949 667922733 729648272 472188354 518237587 890638423 982463287 538140233 670057118 660216615 779460710 114803996 158643708 987979997 998299356 283071698 541208448 1746749 511493643 707871577 934075289 151521967 933601747 441928122 578790410 16398552 111001302 841875785 995018238 584433357 691379950 607570901 707849912 616049135 858567640 507238499 815102202 863325493 935614840 857439197 983793198 508086262 643584548 453770436 520066509 227427235 712987947 925850879 961288664 365074090 511746130 596507316 696132178 295132007 455238224 819417585 834326930 97996966 441498444 651940080 998759677 110719839 427893638 414597336 599804461 135931097 513614056 267421129 571857374 621206825 966222697 894877862 918982037 661630604 957361439 772405285 962635447 312953970 931528673 632012505 797423356 596303897 818353997 239744622 488666951 179624054 817512106 129087191 756903296 340182597 640082130 392517634 641899781 589104967 923434255 177509636 758953566 943866090 958790551 106373789 429746388 393722946 616376695 889848714 948882845 204091759 291045135 464037329 513039754 961238186 978143765 149985864 191173457 794446922 860978449 617511584 842375069 405035143 486949048 269954038 696016741 600757478 693593087 995452920 995556958 724170851 887999517 365165443 381214085 111113824 790262122 177201555 277013285 930232140 999305287 791204691 907798116 719781998 840234882 591102873 736869975 790042447 889714433 130873174 451691302 426843507 814650119 302181736 417411951 759682022 978817012 29531431 921133973 908390995 942854134 373875995 619509164 530014615 880758443 955081725 971255107 175752157 708853681 670588936 955782725 843729463 887536445 581122139 894360010 232230158 263213963 344968089 869534651 135797015 207400103 982318607 984941583 705390963 995811258 250930382 744495558 85787971 663738979 889539430 921907334 530706754 557694758 941045594 960057154 837550490 865377316 568849054 910474249 554092838 755348045 99233784 772981130 919027991 933353063 34312070 46606309 129892695 181731990 932958 564757561 200957549 368709021 442691429 802030463 397568996 488304003 713027285 904270541 754404563 900995348 226620533 893384003 914858416 944974569 802424897 907526937 858884392 879519312 195684276 704192174 715207850 937152095 517224227 533189564 80370441 922890570 600466596 827516183 365626545 649423635 932068372 954022373 736708856 934402411 49810306 269167345 964861632 982857485 391958473 439803602 109557902 458924457 956727128 959286512 403997580 624159169 650797037 912536850 278971045 560602141 321557663 549872851 323910794 750136990 213472972 588631567 871041691 963067973 390610469 743144193 41468960 204395279 316522924 682433300 995359648 997442323 306786540 363921055 317958042 446710659 72858302 153058217 549288051 922924520 348439324 605275880 199102447 510875241 653297423 683980083 889030496 982455914 794282777 894606565 608802882 879875676 911566163 962026888 913743465 919221073 833857023 982440588 780503141 978467964 542238117 613615275 573481994 631358835 291901046 828038390 501267686 791004994 378361813 762103346 363314710 904153666 38739849 392870924 492469274 916670191 460172511 834535658 978490790 985607139 586891808 768102915 473742225 780260551 328605989 717785220 82446626 964312568 177146266 615893153 732246113 853840958 821079821 865576644 848909002 858727001 189548630 882930420 324552655 343097002 783156060 805561406 780128951 942987080 738953360 863319737 448935333 679101577 266169154 432560729 85882105 149117539 783369681 923654690 815797000 864718732 27123893 711818035 710132481 814179689 890586318 892724418 52874639 229983283 620209132 722945025 676362943 919591074 495223744 866602888 89457644 707573664 776263226 787906127 637739776 763763738 2490981 104545956 860617197 968966988 266157848 963322368 226607259 291478555 67909106 646796876 652239996 964541149 793023333 799615018 510218081 595764430 173445626 479630429 195533488 328635725 155007351 565641354 400488128 795236696 152756561 857205292 906868268 923959881 83781462 681142403 314804875 330360885 782811637 996688776 448999218 565796626 966389189 990334493 661840188 971818181 837207957 976743155 889652042 903344698 217289528 999117945 241048963 872861180 720961175 823917424 505208211 764956462 99432404 639505357 727259968 925969780 340308240 835819434 990660968 992425228 124714317 490462285 624686858 999136551 768359976 851377035 954939499 971255146 22345590 501661187 209119356 645168136 708818232 721567935 313029882 671488832 850276175 959033848 660408837 677741693 260696231 868980047 862644432 883800290 654096928 824373428 878392856 931670872 413004244 694567824 328899179 414423433 622400688 917614043 593143769 710609777 987762691 994047629 872527605 932993401 317044429 849309703 696668821 901767788 226141619 561629303 566455531 861524719 864070596 883463228 304449828 509021424 464340308 794432765 553502846 611179800 79706256 558507280 87887827 980045223 465746121 538491422 822232232 885736675 731109828 861763251 659652541 860294692 576934792 917670425 847339857 847829445 646977497 660415597 98962259 771625001 787020720 836410344 956925620 999846692 330291194 671198585 553484619 578594311 774342428 826414608 901834008 918029406 19704366 800088293 494702998 993885209 989298214 993965519 484354051 750597964 815024332 877956651 935732647 938702777 877825278 955567711 150756691 185750586 200382747 627991315 228020146 940997953 228718805 356134880 194948770 955861798 219196468 311429917 440686003 965198344 70830939 583660114 780893251 788593817 957869936 975976241 907641023 926340728 89869416 117995372 865959258 985949108 273809435 440154224 308654888 436296500 652759428 954221576 989442183 992390959 151299653 880605603 915989514 975971675 439872004 539549392 848796112 878079760 995860603 998994333 670094461 997428707 507212244 603462247 413534487 500024973 156818308 307540395 55011639 132582272 666470100 789790087 54056114 401804797 740019622 788836007 483290410 752829219 239810085 428544731 450535708 606954960 711546179 837348640 348948151 978628509 5133255 372774011 289239885 970424906 168700373 282483858 471777299 577364895 974542308 976855965 448638582 667910430 776711840 793078557 209349878 660610934 903792018 963389372 24243834 165125716 946270134 982099473 900297910 933400649 321644213 648123048 119589448 619376961 160204116 327562010 493925366 754836948 864868101 889749295 226248786 341970822 631958193 795947993 603679025 851593182 152030078 394265371 380956141 948606690 612211053 710108142 94442537 850223145 323537117 544104403 402451823 905285471 212471782 506198024 498494265 555206333 20637935 581435295 860179804 934144201 493199792 805011643 438802149 438951920 7664792 960336696 776686606 926455649 529969708 998387958 706837380 875538840 659283499 749040824 630818404 891195067 398738912 672579261 410217351 413894003 477530668 499700767 883023819 994575371 399626183 961355147 321221697 979817976 318294968 551196947 954294518 997276643 816650734 934485723 303720933 704913982 401263784 462081809 40969525 823250787 211930396 465566724 243342300 432447896 346592646 382741813 698938561 725969199 428711585 817650029 380939138 694917392 896423201 978746015 286985993 503018342 461217658 898186636 107679875 901797645 106606826 255472177 601560812 721802839 718966611 812393070 635299819 959694362 561336168 668880052 75707467 700116345 699957421 921691139 829691079 953720849 425173756 740489090 473320592 654206083 185224808 474628835 776248873 871043714 95057561 574237823 967433315 999247300 211809260 530597921 967399544 988114351 20528106 705536162 459315011 618047808 573647383 913989900 51287475 920668851 240899512 591406566 239885709 494072491 299204212 426391239 112083080 319324462 543406199 625996045 798133929 887489811 472272400 651353899 296876948 452272155 204360575 993044052 251816507 519369042 698128454 794459345 356542137 799793694 402153772 753553069 321850071 711452235 512332394 649471964 879291415 964624388 696052341 748101301 97439395 315315064 588506257 643952155 162494039 346579639 394592852 706411362 742651113 909669821 144494040 982110129 189773599 574212740 538754684 893944033 814058136 976171750 834991417 929427236 354453889 501620275 242780015 513058148 618631383 847420524 988129793 998889967 196243992 331873828 471311210 477256286 191296832 347194289 13020549 101712441 894440085 920408888 711187365 879871887 712108302 810531814 314143816 490449038 17831599 406903408 275362688 787074408 844830269 967861741 575959109 789698197 255482634 626006741 677253103 984383235 922187476 981247520 87802482 731646698 24678971 633968714 473620451 905566206 573385963 788567731 956598283 988988071 516692792 931855803 5809051 311001250 184548988 367849893 276681344 995558349 709715929 723721199 612853452 940620898 645864503 982657728 451753466 667940198 460084376 729974457 168291566 898492338 471398427 980653357 106917435 133233024 310762586 818395602 43977243 269463883 6144197 980758881 651005279 965307722 599176246 634612075 71646900 257567258 486711530 653002848 475941319 864683768 133218851 211978725 612140731 864587362 98320221 276763013 208593417 604664850 988817764 998057658 309258389 357455506 701072104 892506992 725304127 943861682 566241873 806658196 478574666 702551506 57361395 281113372 260216001 495801716 431518060 639428853 749150168 794184030 826328125 927846970 215561814 987194692 449965341 646917283 159872745 712822160 693099506 827089230 967022737 976738057 156539202 479321897 766058971 816030970 878065661 968211828 191662829 702218542 643244878 851574521 540036003 903400600 377272860 545341810 760587219 936476350 709555798 799305481 29890803 925436828 399235468 900822171 453127721 878995765 738037888 861269132 832901573 939022372 675462265 877711922 96166423 536474699 264723599 949700360 871315360 892367689 971421512 993383285 346018584 636053466 452079052 940830263 173604640 618318235 60487618 182784051 877365151 954425328 27480363 507852198 324236021 612178066 967578410 975210571 764616867 958780891 554711281 941801115 699446043 878079746 88298617 844326089 358368482 538340249 867050713 930759640 745752618 803843192 105172643 525145159 33664887 487948988 229138657 498843246 850451112 941472421 341978759 841111676 550271741 967764092 398400441 443118579 473509877 927372181 142520914 281889285 550402495 831235470 852869484 972033468 749997631 766953900 728679696 989092235 52448048 511281775 777282864 993668144 360259042 936090119 428248426 798257655 296213467 822889168 140107140 714787079 45354030 249918068 535216544 666659387 84596295 821218076 892265331 907950107 389211788 798896980 648349849 818781420 951051081 967863998 491101831 805255088 217310244 863641917 766319899 796898218 244737678 691888824 425120265 621005903 336446366 660607306 439602874 645648477 41612129 504654628 705872546 763783107 161728970 582254084 900782957 980008090 444552411 910582216 267548293 685507032 770557688 919911047 843919019 869964590 111478382 501534666 6775942 68764881 899957104 974833484 49486239 636436657 796222480 813403268 189206636 919571513 105669054 517764356 668775817 943371614 983246829 991129616 875069113 998613375 749283013 861929250 738587622 874885255 736381862 999955957 581963630 699013480 967836403 995958197 640335534 669534356 577396502 980579460 853766194 861531870 53959678 861100834 608713853 918813701 65622472 851242099 61116719 983466850 807851081 955181187 347147224 357479348 138211003 562497841 552964153 977998447 188393708 470531532 708801392 845609814 973050314 987631161 955910894 976632300 390818572 978001159 923082972 978959569 751045316 883709861 563070395 615105801 59452398 369532068 210359537 420458344 15443023 403319780 57379509 572709312 642894609 666778158 503517718 808561691 323412048 952119038 273838643 275244479 587948634 961143076 54268240 225484825 565890069 838808798 606450286 933119420 959444497 970473630 230911914 584494865 921536929 954615836 930601327 984517541 190625304 837072817 122467788 873422232 930548697 960120646 279561151 532065334 138547320 899917647 767924545 986481496 411838058 709058888 946946187 971247470 99879201 123361522 404615493 447415186 11950831 983391933 967452611 977870305 684047821 739619308 544889867 752192076 107008832 160123768 102587510 322776306 260180365 400356294 602753301 758343757 827695717 828277974 642648261 713071483 981309878 991993809 843654223 945596683 458411759 752370573 259695551 675815724 382110170 718719771 253278027 846567802 775508231 929543865 325189900 835999403 416176322 961588153 750117335 956035628 305723012 986258856 55599691 492124658 92814197 624032956 106259762 649285865 923637602 935153946 334975743 429451081 503166750 884051794 364047527 865909197 904930936 926080891 830070212 832631423 339415603 730514172 365685421 405606362 736335673 983339576 255357636 897166198 560207501 817368473 331779269 999248396 774606980 822031854 678697225 690647436 867608169 936628475 327318941 796298798 273789757 354760365 484492389 604049584 104049881 498088384 565437114 942974281 706192165 717704252 357896176 765708080 21904762 239577401 351256158 521062065 329420464 878628640 54350988 774814199 217254435 586075653 692985451 975021825 858226527 913706328 635315987 720150818 644585744 645542900 710156005 753317672 471640973 733184029 216308337 738278522 714811670 920171521 499744787 759170631 6477951 968083918 64296200 956072749 960045867 990211553 338872393 944456486 587549302 643525346 603508313 720517157 712510897 879959669 587243375 886047395 94588798 187192956 971512021 972366755 562483577 769027668 220957158 425157577 511832297 744294663 559813234 562133154 999629868 999810084 785711609 988465107 444891846 604352077 940906996 993607758 837872297 937708827 482703197 920470170 870898623 883231911 249748815 338725934 12879488 167951762 722235577 883003897 549726286 862234393 727491086 747241286 25729625 763893561 378136868 504069825 826487481 972140702 161696214 549238881 974296134 996030489 269235023 631653641 316533107 575205540 117571556 240073091 777307727 990128826 760751182 818833236 819869560 865955041 825911082 986495937 521016209 828705011 974719360 988678348 803801732 954993075 16600687 76697959 886867393 914130288 409640890 510737567 945819172 991950286 490496635 878279228 610991656 833570479 558212411 890937717 341010417 965537402 148272983 256715785 685248167 703610331 76361249 943060655 578737602 869634450 931126338 982868342 419078457 481541297 935576224 954553005 323978511 767463383 343671472 647760356 590991936 735178858 936789093 950458468 487950047 891536521 252791960 407767997 579186209 947142060 48265615 396749518 664307301 926147456 132960659 942088099 500668345 769680715 279840026 791608130 58344255 905693005 9830116 335252203 338439353 845888664 670086049 901883548 642718320 654212234 349578833 490616787 645610998 998394926 927544399 967431640 505012322 843707056 250922250 255209489 240162833 885527671 927177335 959451716 11015673 737910613 868131937 875534635 618217253 622236646 944657199 978193044 673829985 761836090 492892084 915695541 355496109 368090390 769694335 898489859 141510600 606029606 9777054 951845927 502733662 647282045 649223726 993614828 715513769 895808217 70863946 898285050 524754010 706049465 930011477 949555276 378781690 986984171 360138994 371165467 449915761 713579323 118460666 922692028 5398833 792429522 176912467 983301059 942313076 958493146 271492705 961165681 560594758 644119898 639797175 920325055 717069608 807328923 417408352 862069630 979555812 997873898 622902660 752838172 689625071 728925161 501891234 723321263 109589859 759773558 553243441 754695606 363855790 369942448 965537695 993107302 27046834 253655725 853034609 979732093 141446796 593437358 996181333 998581782 277202928 423084077 763002912 887770346 323294062 400531840 317818010 392220613 950793255 996690934 919670247 969748589 488321974 525114511 729274784 889908002 945132327 968730186 571086164 781165578 922811420 975556445 226514576 621350234 914321744 931823355 987626051 992946026 698079468 778627058 814131245 933620780 604368765 894890130 809646540 954140207 429263762 443179764 440089819 891476789 498289123 525658685 849013783 987968409 270392826 814747615 768419886 844890417 356024985 540138558 773230508 953072413 965716464 997905696 987215914 987351941 169039428 871321368 581362303 746447383 180036709 899311891 257422745 297527778 334701464 414495900 389260300 835915828 173074470 474494053 233630752 634471173 724497962 789576199 404805216 711604747 979516977 995907400 219368602 424533683 388225109 942739259 902781893 921123282 339498966 462410036 208569119 980252263 644797774 969579583 351079449 415307028 569774062 970973266 25523022 80004746 749647329 939298300 38951719 495666924 979006130 981596079 15086508 907717621 719406484 807693793 709444463 842542785 102932301 772936861 442410094 535935380 220876186 879527093 570575434 637462419 651834327 668486087 188943281 767880915 787894802 873609344 714646717 732308980 866780972 899156856 239372798 435629675 736209454 900433320 641318093 988524676 650059341 697268677 678886102 758606059 320353529 943285464 711882675 726042666 411868219 894407402 367479260 926150091 398327204 481598331 98328486 476575311 559006915 756561904 135320201 363724293 209377253 222041405 310607385 653060602 396116414 689758179 702569618 978898930 141587063 481221790 609692232 692028147 434010510 933126345 748045848 965493521 98701625 455029970 989556314 990253860 409085057 620119643 16177412 572735186 577036286 650419454 539609513 899895323 464155254 466591490 920273058 950942761 878980790 885848042 410155395 495029889 449273377 702182239 139436628 609109997 113160598 173182256 314016328 758139942 415616410 988643826 758052050 893635084 501740739 606741102 4200593 712267751 35794326 769618592 468508733 839968011 916051916 926558757 475018450 524211406 402848975 866020277 143455549 415361314 61479005 693759563 941471406 946022962 372855797 689004348 860086826 896182752 834784814 848266311 758484180 901862189 296503426 729403775 990208992 991301759 26601478 91585833 544128011 616599893 592273441 668324127 19398684 971007182 25332982 753463099 606426024 703011529 551431277 838164119 402192011 417520808 538350910 573130533 495323716 561202032 426882487 850144774 643459732 792171528 424435093 975880289 277177427 982946961 117797476 654877563 438879998 596764196 824099641 953433848 873887905 878491304 621195258 838326648 520232309 968137475 880615003 889502420 327441535 831068951 208190674 572200492 24273394 626007699 178809539 901302838 86991498 126663239 460248158 885014784 941923639 996413929 460775791 541524658 763512289 811151919 389588109 689223376 583140 21017671 236185903 871969163 187569147 349294988 928081569 978553009 989856755 993905269 308277360 830365939 27327838 434209451 324870240 652235497 816296575 861679759 882115394 972271914 746565234 963175374 421879376 705264313 60348458 485330948 784111075 921755143 658874626 842132202 289039750 655461281 341508574 679642434 244066088 544762894 104827149 141395137 88985895 811591477 844225634 885742046 513302545 977623258 44281110 235024518 891760411 906657271 352519423 609862150 80442398 233103345 62826857 726598672 276628592 693275116 340369109 704550479 364415795 862405650 795042262 982987613 286030669 337794829 535828133 628939901 64607527 197392904 897126578 931889317 707825475 745083595 954106603 997577640 758171367 885447797 173531527 512631547 684812644 969140073 845536757 898370799 196251041 258573174 42719729 524881822 779529094 998325544 172156585 490751276 57044815 992199786 500642315 783513244 91308407 988577135 597092676 966799725 720654972 837054960 62836694 433603119 724339854 744596613 366861522 681668225 618234885 679313008 718789719 735045521 548286495 849755676 820933994 877356548 463451310 908763492 126777783 694347582 944105842 980773221 478574092 662278648 992253782 998407534 108518303 715714197 974344547 988824335 353921843 408699063 908200506 927157302 411221795 481406093 679347323 885902521 403744793 802207472 579117183 665368054 343893166 960562395 56146629 247121509 263524718 555975911 97785400 231629008 990431891 997388653 566619413 915372864 152289038 479785769 406890446 510872223 631548983 657925519 17506268 805723700 799649969 912481895 669600837 897533624 50975695 538568909 185758708 240560223 758831742 876731441 142589634 310391519 392282395 581679162 138292297 555467063 132144844 554703596 117178183 958242154 524242522 578517190 756810325 888384857 619848362 711592440 196161900 519124424 769365457 821365117 124830687 478182666 990495816 991335861 362002068 874665079 438206365 668187928 997444981 998169379 832745957 929740195 326622524 741352890 504424913 825726951 791427014 928639927 198177647 350164263 897946501 994189798 576392859 900192549 29754399 545101105 359969486 371056098 2767434 134866600 131574548 155361523 872339586 992012022 253565955 553909268 241609526 392624823 909568558 909947438 401891599 456527563 454594666 462285302 589004053 661306645 913976052 946985624 400868420 687219857 998078452 998825082 149223619 949445248 406508089 882748950 847323302 926994665 735863887 821067361 150971888 864588039 545938857 677836606 267360725 970567190 907034585 955827881 292505258 558869496 55491255 297396429 983394283 990592888 355978604 438161763 183648680 326373980 347594310 544151283 745410397 817571529 457233927 767642365 105683006 983958979 763140164 885032161 686513673 779010454 352664819 889394469 216830046 353189000 253335325 953651153 378263481 447841277 993362744 997043106 362901345 821992668 986726314 997042351 403889727 431792728 65733945 811790130 707793561 977408235 581340389 971801726 927586840 955483390 912789932 952497085 836021119 985121788 895817593 991615634 952793721 967763647 443927992 743657850 686990034 794786886 607545741 888268265 231287067 936943420 679585655 938138979 718619187 783772339 381565473 673917880 393105700 639320090 659507405 850318564 876839557 997415005 349957145 922733812 396470136 592395288 315316114 513443920 103494631 719819769 414741918 483649603 297503454 698670163 508063168 884857976 52212891 774777753 414533944 648135356 980226612 988331291 76405431 824983871 759369838 836233943 639405152 852999820 874078714 932920321 592089696 651496147 276087627 561241001 276543141 576214566 826633618 850384877 901875406 917900058 38903229 586259471 220071194 928338680 298202497 674484915 40464115 173631059 754584178 791755896 201607748 797941967 730132869 908111147 122776094 878169012 613740227 759228357 614530025 823574679 106277765 414406920 623035780 855250474 203284573 902355118 189809231 879070607 507227856 613705787 679313520 863099153 55896762 378166702 69882765 425610076 680021985 777785476 885760418 986404316 582832877 966501664 528759248 907631072 533512041 847084311 93819930 216754858 443708594 589180539 402739303 918734806 852362008 977689041 101644043 215916715 366765307 504910079 579558347 619707696 868940266 929900341 194091460 318446125 133477826 596468393 439292633 633330991 351360425 671168248 233658575 436291288 930825430 962782712 684928713 866044134 931049079 967084645 980715887 992549927 598109815 617946963 958817870 965100399 179379549 491855190 399159684 590524648 972842542 992203397 595429991 695092700 711522967 964302566 114190342 774231639 16967239 308618125 30774735 542834678 81914397 272426546 150680403 153399848 957525812 990145539 503639686 743696556 536579770 711361920 389651401 986398608 197916315 500750198 609788391 706374612 956299562 991444583 238448003 711650943 752362318 915886342 825488482 918668748 209895163 516120615 81797628 700032639 57890473 773076976 664691422 877814651 535836392 794922045 906194189 956244467 319618490 603050023 296075223 934122687 418446822 720326850 958968553 993054423 512087187 921238129 478391909 740846540 2814241 752566332 937770388 945388391 28044233 134858852 457165925 628186198 766989139 846471773 134856869 915335395 426691148 930068699 832950564 973365346 742712093 761854483 720702401 756670158 460753825 814050663 941405666 997723472 729178066 876299131 993064734 998236299 295192316 432969920 585249881 857520575 326814421 910340256 269090682 535261178 43003038 93443299 257589062 696108343 576580300 830435644 899297486 992578400 453579925 922198530 598868245 849553555 546917974 802368081 980089885 998302064 764832274 945804904 976053240 986725760 396408717 738703334 241569978 978984491 43970882 841339691 403445371 744748335 813495381 974454599 185368958 985381227 574820009 684935531 877251487 883542763 606747994 722526068 632992187 948303350 691088297 987151914 833335957 939040293 770303838 827922534 669529868 740814006 913757384 953746396 302064925 709993264 130312138 345315570 656338448 952876873 416991690 675210774 635761800 755559822 682926151 991052763 683910944 838589191 531941463 933932544 424791527 638817184 639743383 749706745 604743623 703324106 105935318 682005656 121678693 905720608 576511229 901706523 793830292 919911547 354056229 489291069 356549114 844153427 45971980 671064050 409477262 949795486 713719897 770998372 404342317 925823469 475984266 933462457 528867518 952057235 156532014 507974181 93470757 126350014 967799669 989688080 191527361 847467476 799238564 936792216 796332452 886619340 791738415 819386028 191433022 564448117 905659623 994391463 742336570 746942540 333788840 873821079 497569732 688218454 787800866 842564302 710455416 944075471 214514914 420524085 888948648 944998706 512750206 947281412 206658151 361803008 644739726 960077106 521210337 540148645 273949632 786846361 212626489 706927131 772186143 773930762 735082671 949427236 575963480 804898045 959983057 960093433 965379190 979274659 37178368 382385738 44757563 993504295 533159035 550918301 533748096 912390161 185649832 554085554 776450842 786141931 531837586 578384196 943791522 999375893 435241257 516608981 135783108 207501905 340298036 994884633 560794905 664636748 935747035 974053340 646650476 891645051 660067991 699570505 460965313 593041078 427104547 646915555 259730366 741870218 294753873 361431571 962708266 990718712 939621326 942471491 571752863 869447577 229359305 648823792 157699453 457238791 681288987 807260488 336525071 607118517 231294626 418330131 280948731 953992774 90949118 689961456 365221877 891805752 560810157 582262323 832319875 913160867 6918542 686349425 636769867 905558735 842144883 955762666 414540871 895302345 866845502 890050879 267161823 908361517 427196578 729065588 769642778 785838617 620262478 936340432 232737872 622409341 564898583 976285592 403543766 856136506 20618337 304552301 75060303 318907714 65938878 633278815 445062152 803039478 744746810 866997538 404248994 704523008 434468015 639347568 631366784 990572388 227006158 508279270 620086668 745102794 597051002 759982445 2204472 115831662 533954385 765830304 675823342 705074224 913515230 958519127 12549049 543907457 54505623 440501564 350943923 469549520 148964687 300305110 968243925 995998383 756773399 924487645 504189579 970938972 733007356 941214371 573624375 610564695 222224609 243213925 883767364 991716280 108386257 311904557 675626875 733474951 91020508 659418884 895832946 959627495 452881692 864736049 826868055 908418261 95471039 258432213 888858898 937966662 104210847 709246593 369847581 395964540 100595485 105371675 843814871 848031115 952520722 994052089 157988014 267111041 266524512 892403013 428458180 842925311 674278207 950655512 57404082 835932256 118598216 712117591 395578315 511632812 860741399 954442642 687220087 964305965 498067868 544275859 154086512 573493288 377665951 590461619 88781532 513796414 688006091 785757126 644105619 839984815 709175717 924774289 29744576 255340178 234119489 390959208 800417121 917859219 365639974 800800912 2164880 718644744 719336254 750148104 139737435 375250247 70198945 529780044 41468596 787242639 849283105 981886123 609072622 939409942 167766235 389962585 354434373 863591333 728070751 761126157 67512027 286739006 620217307 899023006 558854822 887257744 964361203 986903549 653870818 785669541 492842662 715912286 5490146 867398284 331990552 345063486 548956895 637094985 56034466 134318399 946293294 985321460 648159681 885192585 784699998 970486206 963763018 997763280 402243543 524362806 136875228 357802676 241187245 270482496 511162758 692933594 125074669 401115650 619119814 865534184 898570919 981953283 488139918 948280882 632883602 940317003 395840680 408876786 575107354 830736429 274094899 809325132 541442975 578389858 251145690 616483367 202885085 689784188 605846070 953102889 465880457 625305659 591395070 770321545 763752735 926891184 425438011 872588565 899910567 932237602 480859466 760090397 336196454 747005176 798448214 969342151 980016842 992928269 269585463 427000917 909875991 969656706 645063555 892336581 460849762 866158678 388094161 670324222 709557245 739392207 268179511 345536085 548607733 792985380 524306934 936237706 279665122 459409749 47627759 481522186 414235036 915168241 986804613 990818392 854691966 923279033 428049815 617029501 486472801 561028961 146329235 494039199 978176660 992103426 921834603 995438319 466024134 788460749 65317394 199827760 881277204 971941155 384354654 998317091 532904462 915423509 735340515 736865300 186598280 322056087 232654481 968526608 609297896 896173149 961033459 997889242 901451383 909253949 468565138 909421592 80900922 510010882 713133428 948834262 138457178 320939127 699729572 989483006 935267898 951248390 435108038 692395923 588980157 840904564 819871761 947070954 185263428 349192479 413099245 832159160 139220599 656680207 708247903 866519933 758957906 919848684 532062963 801733938 514161839 590952100 833567263 963552072 664570003 929105569 235964892 653104837 356401911 690523925 418694755 442213650 260013120 563285522 520964946 734772696 420714331 902499732 42277960 407097543 630345470 649299160 487410261 576518988 772089956 956940977 221613971 973990596 594262033 828291457 192282409 212048451 173618373 336601093 45552874 282763017 426518076 960790670 489894024 730920679 969299590 976473689 530565241 846174132 75047331 635635696 182425896 678005405 227513870 840402378 34307889 934876145 257694331 703648710 456862422 654258894 270186662 572222106 454271826 543775211 199710601 765688280 633625935 726544976 838754064 863166603 893262258 970190707 529326365 733248722 695367314 974131448 448338286 527097957 437942510 999753669 207883491 717010561 13348446 718043706 618226360 903267260 165308795 290238784 385477968 955714637 629965304 850616116 837610733 945308881 433065622 731912764 86658313 298856485 958261932 986559536 32965803 77431259 639076286 913758531 265605148 798460384 658297321 670224035 724642746 934920352 571232195 931364719 237548858 281968043 951101509 994015853 847973888 937219618 617147104 960783917 522245019 853088748 973402842 995232872 719712643 938386905 846210378 879097919 903871337 970615481 353606521 549572202 297027794 313241685 637952594 847116092 973227799 997030212 696238803 951867061 349021727 561183799 82445111 260154429 676181588 713272386 306745763 507912682 596859313 738271607 220232761 949782489 850549036 918447076 861782618 885143143 233017723 453686978 416091035 574216277 863105317 879696511 896260218 960874132 309922102 879911857 31518945 315757731 264212840 521693210 930887705 963724671 800842328 992805598 607398482 860653703 956574440 960072165 936559071 958416930 996300935 998300599 576161799 721349371 32539364 537777143 708764192 891952055 5431008 137779746 545083856 910092689 870817843 965480914 685771178 696487637 520317100 954449680 422150897 943428672 206949944 470098409 691380294 851928490 718398322 964498272 82033601 646393252 643666883 883445539 112451989 411322095 635523879 828692792 117006117 831315883 854892197 977829968 449354991 980103145 541493881 854700139 339895553 374115539 287842634 629593146 485429337 580303089 836434080 943807494 54877680 561694644 597794026 929918028 560995582 589884003 138700532 717615230 66975181 869977316 619161694 756896821 724575967 888516267 116001887 964105195 650373974 755250403 404217791 683208278 328127615 984088014 14214629 908282378 23505813 250457428 889290061 916315410 539969977 557192578 225798663 557853211 172979278 345509008 876776259 883612304 978476441 992013843 768050545 960452348 241822813 971541635 657211064 803474157 215586556 980849513 399255194 926092126 958888928 996944971 55833614 385684011 112754320 365801323 82774085 628912002 868887515 909600994 893669071 899701398 378435774 956850346 345454246 435974743 479776203 738432804 850030008 950847601 483252121 764743409 64629312 944905780 228911763 473733741 531664126 817756445 432957825 919730150 273838907 979848891 360163857 518942664 734272049 742799479 446302731 935142316 606588556 831088996 456558780 490469266 189985726 344099690 809653201 918767467 407563983 482309312 581980962 885698776 661227512 795085740 918399691 953565157 398500718 843056882 781645798 885999831 34825740 915317925 484786555 780719302 232382036 319700150 766612334 800423493 252321901 605105311 939917808 944617051 836370248 997360865 216165218 684301958 971635465 997521575 578207178 845183730 955035465 995045907 436777673 523651753 975802121 984686253 944362866 999986806 11975507 246772388 884132277 989972030 647187245 952718949 889912657 996896609 683823380 880514410 338219821 866411232 939400375 980312008 28718385 981871385 147731743 390962443 30193278 606781946 403897151 508987573 716792166 836261163 703482499 869448689 290472764 753046740 926875178 949841095 679570447 694296245 780228647 841586483 805264177 887561185 333241899 567479233 130406306 584888539 625608107 724495727 542809106 905847013 646983916 930714516 828064031 883364776 539028457 783198720 324816610 707434945 503984016 712699059 193890677 403769346 949664155 962862151 593901226 741375699 13126596 757206442 642784062 895130516 646876194 822241237 178070781 387990501 972219259 976078563 691618666 945207303 420259451 432043979 299622644 394416284 783070680 827645607 501968156 642719095 959889386 970728068 627158863 789875883 14469637 214349424 797861472 891151362 340029531 354309953 382645886 684041737 512029950 524094843 280328544 923592702 972173736 974446080 217971782 381239100 512351634 640679154 194096114 758912202 561752303 713738365 92870482 202954678 818494927 932574576 593162062 864943632 498162712 603665549 384291197 438109041 288914945 710062527 646282807 862642802 717881324 898093718 805591637 850745577 905151574 921119156 494495811 577108532 934361768 946346146 541796659 866689051 129664745 767039493 963163716 988106525 460019318 691807530 336044776 474596436 515694943 757472073 439167663 811283465 645555878 853649969 13622084 482205936 775699080 869834330 616199112 878569523 285990010 712433734 426094122 909117092 123480029 358293597 18063969 662214333 929728433 994560203 813089870 961045940 327672516 385552024 712060425 927370998 945856584 973044252 466836224 770834114 949741407 961506624 110889380 646586607 536480327 731870012 27440752 210234893 883485039 950145709 926464271 973261902 617186417 906871575 896025518 973599012 18613165 443567200 66069248 745562222 417172198 478589012 684479712 803737324 332261125 785700699 472330815 837760698 711885668 941693111 603417203 975857539 130245894 839030053 602059401 831780296 462840984 990194520 780631066 797885837 208618713 581126788 785602405 922778441 530156203 533330708 339070926 531091224 683868066 929288688 242537144 891159233 893287584 939583358 69655758 900834768 124887919 775283896 657423111 805005510 964938757 992603172 530041578 772395198 56135538 742951858 350728427 968184586 265760732 382196330 480007027 696337834 167137508 536653510 740010026 792865603 37190648 681082224 887673288 894580863 105064799 364711668 473878504 590801811 469710718 690420780 658490365 810532008 465852455 850632663 242528912 488517714 553475528 884512551 204680711 399515823 272162215 605142043 137337039 248976301 358504154 483800514 971412612 987176725 560828289 690776540 262237621 598022685 443183774 651227843 770130072 824607486 980517814 999635282 539204749 678972220 887101606 949421846 182217324 848603036 770647292 959482780 570901588 954695837 566079143 717114279 556245681 634105298 857190186 936349067 300859264 521512876 122646872 570954962 489993256 818854334 815713112 981035185 378521716 955185837 892543043 988591553 402456772 705442593 842977798 912335922 357125520 720691447 586761392 956410752 303551781 682633228 793154352 799903663 921125173 949064191 247306909 490216302 289432184 673724370 280221632 597641103 345659020 734375826 468048519 864396766 915219660 951936289 684012706 942819738 416881518 912412565 570036168 756812463 892309989 912068488 209286294 898590012 868919832 987862440 140500257 346850869 876391666 999692294 471332097 705609156 580498907 840300026 603440794 675721791 241386050 466900603 447859980 735356864 227199035 407832253 693870785 923966021 264153111 589882886 210371038 945939105 334945253 503118158 659432996 952049603 692869847 947737720 829098531 858536350 413382724 482510993 641662493 986255378 126026962 994262979 723361667 988105428 300338654 766715771 383823988 462755028 429914026 595744028 600709555 750275039 594590583 619870495 201954855 251557911 54745912 123336233 960715138 983137029 203603425 632676176 156171895 736884158 880331520 917393070 293170707 598353061 946883373 956962888 94458183 784357682 921392151 969748925 459535929 731687059 130032351 611905996 645730014 719315696 561625484 733749461 469765550 946381839 729637941 826711313 502891257 683445981 762765501 957107722 585367525 740319039 79617566 238932804 780735152 886122207 333938845 391193844 882256008 914638674 282944052 562279743 631980084 963034093 436604660 916597612 432301101 530786815 85538826 718646553 51597236 55354044 942126223 963704009 313475865 347314895 884608425 936363914 374504197 710737029 322005448 505095682 810966003 910848480 161271628 505663747 839975567 933319707 299887774 351664662 337708349 437053896 930782009 989741714 761005306 925500704 331035812 611812804 142495928 207734707 973708184 985134006 864099719 922002436 747190010 896318449 881986290 980349078 775998343 994399034 347942007 394614958 297807178 763501360 277075251 754950426 471088876 541467099 526366258 819939216 335705813 962991540 176434331 963653580 625723290 639940588 830418459 923406133 273696281 735696094 879757583 920248297 126157560 185466715 476299442 941302199 963421137 991395600 189396793 713651260 149476140 784371286 17725862 728302842 388091326 501175737 881272443 988024832 965220894 973066418 119264898 142952894 541294810 561653307 106432767 122374929 486086186 906028584 949315457 995065827 611568048 723048442 782983514 864125856 987049699 991840586 822300709 930277525 159666476 937187885 587823304 953405897 477406623 881452444 358783416 869537316 824099479 849286532 932823337 968196588 935768426 957236036 991798896 999416243 925175844 969262988 657348086 726614612 876844032 957004623 592881278 891686271 737737386 909083214 801512222 972553370 580233029 821159300 131433574 196512510 595697077 678513109 133850361 493901263 993244035 999110504 446730999 948543612 235592021 859347589 58257553 665828698 879145176 928806008 543490209 742379354 729725743 973400312 206277786 309035877 637512321 681297928 41226037 534183619 739144823 887122566 191791412 292502081 832770280 941826346 497295000 996999560 940213794 946659280 622906683 793970178 485289147 814730575 302375932 895475122 103843465 130894303 839463645 971953964 620765338 629523168 277580990 543467921 882093969 969416149 377304595 660916603 636467122 828147469 897237011 919931752 469083634 963291260 943047065 964262013 910994289 984638340 112761860 726122976 880399069 984731834 418210557 545970334 93909331 377624626 682790852 993298659 409464113 534639102 152279280 495424706 212599548 630129528 464378027 823427703 395061604 716767153 289410237 986243767 971036977 983798289 611325357 616895725 316847501 622137633 825548791 873451483 45429535 637101842 702747877 893976107 823320503 928896804 458195844 799133019 219417921 853066434 399625747 921489336 822878841 849462472 261472193 521314347 486142640 968674455 810227695 821328239 720865208 917435265 346845228 706171108 591811247 846634939 356059203 955389502 57703086 223930924 439551239 567212966 378639862 522880758 153772799 659312266 900950116 920150054 119714571 356726608 221083921 495202918 884826862 993957752 322480863 412927362 558302769 715584934 829803700 869142312 559819095 851871279 959514310 972443185 123481990 923359415 157309937 414763105 622547171 980089740 263347276 369190100 331139507 632337628 970391377 989317506 364112070 911146905 898414471 953891883 857910818 934869914 86351288 104378763 605955723 633005386 632134464 826243776 834411768 928592092 865671808 945860852 986822570 990182799 106736629 727492252 869732074 911836505 514142786 521682411 366658599 631515598 685992187 689625182 521843111 834836825 702261950 977092791 835044140 954598492 407140783 413309975 912300523 921361622 845855328 863216802 864939116 905149158 624349352 995562138 991279045 993724028 788602725 951092965 343668247 723801872 628376968 884874250 835938534 891642061 342567269 458276022 669119199 690063876 103493272 501267404 80987389 390234853 90494515 125571971 902289830 983223520 143010872 349396084 433756605 801110306 724464042 819705185 585289172 629724885 984866720 998967299 537011210 925228984 930611044 951048812 581775106 694293085 713489926 983000567 349889290 958365397 382218736 628949404 416164721 626983849 898189657 903983217 286961912 403826225 39663378 42638907 691753324 802147050 163199373 383247713 36095910 711298442 848806343 972799337 394537192 846367439 106091746 822572801 995273207 997089684 708022030 775316904 535464786 539298907 203490252 691144023 165373514 403876078 373320736 989430809 373472990 513208062 537360541 711377758 476583868 858045994 31968678 389682722 372072717 432007834 490895855 616763181 928762227 938335848 348680201 926946295 461599918 665186511 527209941 590545071 793080098 983050399 824594273 995314680 86529103 785372247 66954980 596754407 70575709 354161109 610473847 849581284 560916332 694470278 763177108 932577774 893425588 913226258 177450648 697655506 469920426 550333413 488240232 751823776 689363535 785914091 987551426 992100998 621179472 727502031 503149663 782076103 700690867 961042483 362475849 612421507 626092185 716532649 882695084 996574356 460147093 839675907 750753609 891235015 492194169 885422822 281922994 566666987 447328086 833008496 472419183 766720532 385677660 634498956 285754094 406571744 643082961 719563997 536891948 880202335 267270540 889850274 681384478 826620130 451163402 544406629 345984038 793303336 76158515 551663398 679950128 900273650 378212168 634712375 730658878 909383225 638751708 651214431 120389599 706493581 345947877 765164572 355488287 641343569 927507545 973705055 990018682 991006534 252738804 926294856 510688490 605469440 196578838 551779303 827477382 855156723 606475408 978462991 659047839 942783479 800649062 863417386 65387815 768157242 724583663 994361483 243494329 931126777 110341641 190825707 862398579 883691343 876391067 919230994 559961412 834412262 136129718 353177018 549687285 897661286 646173903 811900963 797431927 906543319 422295393 643114485 334080038 689753366 775533952 861830373 758861262 767144538 634898832 820317000 975408019 980521887 998899337 999623429 943640260 969893599 870066233 912387359 710032380 944036876 123696235 766312800 964471223 973321431 336690899 757651693 439461054 802273664 127654729 215923252 581344038 762810737 126267844 631323894 113096637 870098135 530024689 717240718 489443290 793973041 958791287 961954566 976803064 988327327 392856051 647822343 795545531 848389966 450467586 525007939 278212405 657485072 552599096 675049596 1142975 424986900 67999337 509984409 444786534 987579420 433929198 980940067 481012051 849654329 726681877 728032061 792423990 819336615 426396875 549056452 787809828 827557306 171997263 324795656 740856108 923834715 862679604 956005569 205991002 773671802 544145920 855081900 999357850 999431016 982706087 994668879 408954673 930666355 994527459 996003059 760429371 943305032 456883149 945174444 625059327 904548264 698897739 705990072 806779123 952157014 882337386 884345735 659897685 976639477 709192202 759829663 93182686 594403959 254893417 820871042 980550642 991875494 912090174 993314327 920774166 964464184 946167041 993230858 926722489 940623005 243929004 383693666 62349081 474819209 168507950 506009830 74361859 176363021 878950406 934193997 435722670 437185859 561170894 711588553 114445072 931606498 494215005 512547496 12985740 52953880 103568789 693755376 833922187 902585254 316629979 811866902 389772021 945538852 334423247 712368557 651418428 668209742 278064326 496942512 628125664 891610790 210064060 341285836 192765194 589311363 704320052 842033092 63519075 988818373 606934865 871097090 330278009 526459246 32731680 43935376 951522773 971230265 18037795 266701165 711173199 798527330 663089784 937489806 400978161 602887533 496963938 608128197 928142233 953456786 975424182 982541542 439922868 764067934 796188782 942651927 3024525 93197138 614013817 718586304 174314813 921473736 473334864 573195861 298769671 412050580 908761833 973814651 434366828 932615403 469273127 892478497 584693202 653492235 415897015 753799688 838641854 958047330 174636606 818956447 133601525 992103012 585175876 930768010 302831829 363790897 747212622 860217066 481344367 527283248 706490780 734807745 661457747 744656729 797949901 832122291 860223652 957326364 414735667 500911865 95638792 588758188 558014264 620072553 535168578 867438038 423806794 670451683 851663030 881798803 479921348 769065910 457101733 875544854 445813568 796115272 944498041 979416197 853426147 873590920 570925715 851732017 716617642 793648889 797633345 969823787 347226564 875168890 193418512 648516006 874118513 931444613 710366789 726733570 291644368 913050826 789995901 822079773 200918079 979237270 814073623 992957309 118036669 483316830 99513412 456693584 731737352 855307040 353583439 523786451 555761865 873570656 215300422 407330065 968746938 982196039 891704128 992272775 219231435 375033116 208857269 693795952 277755505 645647310 612466316 902968861 30712946 566733178 564790474 603943717 996510261 999377750 78430923 118764376 982645641 982992201 580029932 848347431 313062641 408967021 273323313 993399459 862967542 991590116 353413347 890682414 720695630 859209894 224828128 336777213 671055492 727480565 652561230 938948210 2662036 923596314 576010902 896031191 50881940 117729309 44184110 286317060 620333878 780097452 971887757 994795097 93487071 979019489 638255745 783309785 697159917 917683823 772727686 811141003 540154548 830677786 78295067 318216041 712242887 870195906 318821870 480375908 648257058 685474591 196318359 288397664 908994589 993734300 255252283 502172189 233805933 561362011 538165208 774729170 393828401 772243994 883649205 907065167 194574433 927372545 936879975 940948827 591109355 712107828 33178091 734689517 737862983 809063424 768661191 859681605 195243353 230846758 246368671 741253873 33639902 709429855 372875853 922500372 844154295 956141616 505169277 970568593 420748675 698244723 163487782 725312082 408592362 635546107 697135925 971725013 526040529 942772438 788574532 995659477 896477491 982062265 793629704 846878380 555775924 705061165 688175920 914772048 52028294 604213272 351322061 750684843 572011464 699666344 211273136 868848849 210475369 873485366 843963807 866382027 513702955 568178180 863872904 935312883 377010830 988087031 76760066 385723296 742870757 870436122 450092539 633797790 20863950 793422296 142799878 844784631 456203434 948196819 285050170 361771413 196962303 906649822 984989841 987518847 713860113 867785106 690459218 917788100 63144533 274007568 752828239 870573982 269891754 836262969 904731431 980513544 58026414 332550153 905306856 995614950 54086792 568305330 500743296 569115781 678471535 993375706 565204246 876604811 485223145 790460417 468925239 485971853 687177332 786668620 646421995 745417143 527037962 915876480 690426985 908555428 631657109 935048863 211967777 241617619 478411502 551947316 91452802 258916664 458139340 537757617 867008192 928242831 735270602 855887899 892508634 976235125 21142804 251071638 618544145 890881143 635654960 860285843 544230141 969872595 672833797 716691728 869547121 991715248 853173474 865955986 292455676 373921615 549629832 562000408 501986342 673417023 918180257 989327449 678684280 980440696 447473273 497488839 18187103 37074581 780092177 861057460 354663714 768505012 635982770 952616052 238268795 891804761 217373506 331893188 482314796 728318539 96791824 173909048 389050020 839853333 72236360 488457936 665231093 915364671 470074213 602102785 349964114 866925657 940854264 992940021 244882885 674682775 856443580 971518106 257408508 289064868 71398346 983746587 214804823 696016047 804141072 965079290 56856654 388033082 480263040 523339878 309697624 329864064 518475440 882223048 506393087 548631735 710697419 850360010 998486822 999214339 66114573 131283354 234203130 239267994 926942635 975860136 234317562 768004218 147179077 407463627 154327564 829714256 27211279 382390535 543705055 751434980 143979365 413370380 360732885 747579496 545976202 579175567 218920519 441219768 70932889 335165601 154642721 253214106 375359098 735511640 598212479 735286841 576935996 657765456 305239383 479006616 368659104 712070800 405341711 935943868 121509178 162371951 744546599 883590178 234690695 403463208 352019516 885449730 985566301 995992027 491085667 964699075 318962711 759256748 590224361 979582803 561123549 767270888 737436312 780296408 480554069 676464452 844343715 914646780 352278607 823194219 685177013 794486891 572660494 766619062 758748499 817510690 735377270 971501933 556541043 805588112 743165293 910059219 165751726 322751186 725134490 957899147 444119485 665981442 447815073 823128319 236685845 616704333 593548986 834310306 104621162 341913161 944857629 997831807 113830912 405008984 82562223 571402952 691990918 968498399 797640971 984738527 467960593 509817298 215297047 378308927 549450106 889571766 437200656 706963441 437574053 493554219 868597030 989654741 733706227 962027753 122272886 229746678 393692377 744683315 812380218 878720299 847923986 920927910 175421396 568570425 905526407 995786015 330279828 854723431 965146420 988348717 110362713 226219205 711899670 776302536 831313519 918418754 129107303 227457975 906793842 908764752 488627562 938733635 690859130 998916004 348382157 617334545 748344670 851214861 222461778 785407504 602169024 693564077 843068622 965504371 372925778 536829475 144347469 987072378 448288877 810731689 742373151 960964551 569546617 710737995 435226673 495521161 265911934 893390965 588092132 626817911 365002851 443344515 651722783 950068226 305142392 672283281 625621716 700093923 566987265 582303875 884303027 977441146 349587069 566530955 563535337 976234588 541224609 818033823 306514120 499267958 120245996 879807765 118862438 949893948 761024986 853337985 111367711 716918408 866404850 955664239 569328239 875095045 443880692 734907436 370702731 555609972 476950723 533750388 522200801 883762367 874136745 915331535 894321225 938037307 90790542 336335440 216913355 482508161 94438081 409083247 201224218 452200270 524510459 604501739 602862343 802303246 678930344 770816064 964518039 979792940 219674911 657991763 449851987 625854082 883208126 909531468 269072584 556765094 151802134 251697961 117872887 681786258 61618013 361304665 780314158 839992889 897215357 913002006 140119526 220799639 54809051 962179363 835899253 923258224 85335867 489346537 704440868 745987228 249035033 338525865 337418789 961775611 64586227 917284161 173839237 661136036 721090104 884378578 314920500 346889346 559075548 967885927 829205757 911169713 117543253 120105676 804773356 825807893 345353879 685466804 969931531 972984418 560492706 835003256 678062889 911249387 891079347 966952880 728130838 803621903 379083075 742342176 668116296 778337188 700258102 825701709 301291018 505041994 950733446 956608624 349969892 897474285 668060572 678846591 597143316 799640523 582810922 848515418 987554657 988526466 861825351 923129513 764128874 778403443 747140826 823137601 644496813 937534088 392127576 493061524 632299708 805464749 242299861 850048171 870576858 919109924 292140298 324291820 872140486 904967444 879761480 941156256 449083984 739561928 492163938 981419063 837683448 911982455 898048401 962867201 587740716 843692690 93904296 156374258 536610392 590810835 762331792 774570676 712751828 785972936 717926229 914821044 183433535 321496982 600751766 918443202 790540426 953085362 248365950 745502618 791544520 888791395 17071799 201988379 394022946 981118674 591761782 801643363 877059590 923826434 424606648 441203820 718552844 868194340 649599410 786092846 818801271 921788624 637220221 861729061 158954745 191219938 374259 834250078 808754936 961356656 432736874 525688730 533016510 988200019 839576209 841423102 879756841 948198612 333452070 683838160 47843889 105444613 520829929 849529787 649806605 839265206 792061221 974621662 33562001 448984863 30213238 449939055 441420380 539391002 84696998 762854909 768790049 786270754 161305734 620751699 892935134 979771073 539107442 981960168 692931150 737774112 108898904 309767016 376423244 433105559 919169901 962405235 255177485 371177741 767571052 791780261 947203401 979229890 985913985 989128175 22630163 556874752 100645956 233267343 403233724 541066338 272868029 718448055 880709044 941771696 97884041 505630451 861843341 959730867 421854984 563880890 406146186 553836618 738147013 850879106 191849435 279493730 509856686 524963161 449686274 864482019 338629617 583777304 135794825 360264265 502339650 942991385 405130244 557256364 502367009 868713098 344808840 992348353 867484913 904817155 666295936 967664261 957653732 965309189 595811641 764139406 985299591 985708822 784967692 800100247 567517109 925923047 343769308 950166003 988604985 989490815 636484569 737423552 88836372 343064692 994884822 997992415 984701294 985435658 282105887 783700413 360332047 471092954 521405687 863210777 765184919 874582897 942379519 989601009 611118864 770629322 474403232 797434853 972814493 978587975 256774813 585020732 450520660 451167333 603474075 684103944 789258711 804089645 316671984 914997854 271242194 634769040 556445103 670595817 529262151 971412199 346019330 728391312 767851121 776608024 373855070 768078755 303176491 651015320 645421973 799491173 89256336 154080559 219981964 836384258 21276210 197655027 734344495 915456968 693013854 986663480 24834451 820790009 860500475 988297675 723093870 896548099 162052847 557958383 458589867 525160116 87339729 444946107 969973418 988107239 517220077 914445669 587637814 712595533 223499563 416065416 820675020 860421150 95715057 190492220 85474585 347464932 508588898 896453857 299933311 866922654 47460826 969262662 415333045 604897658 825750394 907834689 213510536 465927896 407585852 670862202 726472789 849054017 629104198 861522703 378386214 617653799 710089183 743328060 254305246 773652505 511456953 723074289 14924568 845962183 524619148 952450734 908317152 927335938 852458935 896453515 788103687 987750887 874244964 887521750 297774385 904586017 592267712 774032008 878089693 930727594 643962404 734967155 907222348 980989589 316845810 450360276 466779629 936969683 264689103 313143391 881057493 951290484 262072240 997391138 506969523 515740006 695804265 873284797 496418376 979053764 542230907 698410193 787291385 931664898 863983744 938887841 505546901 947610678 190698858 620372349 448481829 738655834 642566004 944813643 18019075 801830410 445754414 826399777 164076607 190924410 298204560 411630063 714333486 962652378 843893345 844712143 162363929 945402400 50296847 110170821 80761589 300331938 781119698 903288958 823788884 990813528 318256270 575532463 28687556 396313997 252784061 313630109 878121893 905960449 679236740 830108774 146569907 244765109 752040127 976697046 610801768 761297905 175918630 394125586 422511052 587832411 181734425 604457550 907153009 961322484 158936430 305060908 15150076 458921271 974747091 990670562 295210499 882751940 521362465 597584812 162185260 405742100 319999251 506017482 536966558 916939220 422357002 795355579 740264248 867114261 70850640 549789313 492814628 587543248 100970450 568884865 791580396 863126788 666128417 667088387 688002896 711084169 260866800 884600635 775527589 781579370 741388430 875272824 773701074 865841941 734818475 879103836 376399860 377485547 631487899 716645437 67848977 522644876 85827177 665189702 216761862 399514478 313906504 945376573 24499101 271450433 681616455 844597102 444072011 557104232 968922922 970911296 732196852 774671033 123611577 954725494 412216487 444602150 82110297 208539648 76586407 526017316 202723116 399317779 706125983 750229195 784214078 862738563 512283926 692039697 885985013 911798922 481769304 613431632 794986509 814932630 248246268 719043773 163005607 429469835 650505412 987951899 156835710 164113163 724969174 813928908 608308056 657345458 710579551 973953212 425424192 559022899 759797826 852369152 927799581 967555674 9615399 69421908 837020554 942414300 896569161 911016213 879551629 923782566 283163262 934714614 598931366 753343740 547828028 723384181 940588512 941538538 228893340 586852654 859593223 895177038 301538729 778011374 90054221 537539842 947351171 963497316 467066012 889013196 561314493 729054417 837990916 946548961 745588776 932956613 196279791 388672006 349131034 549798729 387262018 527091610 573176841 726723794 982275995 997946053 651826455 986432579 540994263 754151226 889871740 896560154 493906748 667750859 861786931 967218821 983891499 999321433 648749183 677900921 776096888 951779331 632385931 948456257 827138792 848228840 877989608 908451429 156452847 738699128 368681989 763918127 558347476 690322345 502023742 591797587 630105766 679886331 196020403 496745158 268753068 962552871 292087939 301223975 556585860 570989487 255113039 659253649 499643867 833973937 555183118 876387650 895831459 966550579 559453273 646240895 89219890 654627555 158733382 486407846 648040477 715520904 118283657 477809436 660082121 894634596 270216223 889185372 244825102 305764651 633416647 964142111 683532373 720970155 662238054 737760692 494010303 620027545 656971198 778620767 14737742 993422852 7939879 655019844 214978581 290100190 423418366 940708740 836376995 957347234 390677160 980268430 465999853 952138347 940826612 942877943 624610350 645377081 5560636 559110315 633500396 801545265 516261605 658008806 219305649 487905416 540234996 915905198 122258519 211072654 934943395 990872783 219804601 931016583 507363193 617764280 174811944 751430092 169526792 995642491 152362840 909967076 976885473 985720194 212747141 596623053 404567268 931613925 963446125 966120860 819770596 894051604 235986863 704061123 347076528 648345814 899824694 909964244 684343382 934572088 739478874 766673263 697080391 791414461 441937543 638542666 437002561 757460974 521893837 615594592 568681332 577951733 147290724 157972203 166028983 640605341 844320950 856191123 235479124 568908839 478731112 825101594 177825089 901813000 63201213 630891291 668513057 822462266 526468757 841929422 519225522 611813916 575106663 678608245 640519012 996551254 395739028 644620217 76417910 458504377 196532602 254996205 65113314 894685750 948179621 985162406 724017060 744282618 493530039 696421705 768038537 953003132 124328855 308558540 109547790 113136762 47705521 820515897 780174514 917593941 449642831 651972939 901870334 905467330 550315192 854453072 460501117 863666857 977690781 981867384 684787981 781745150 765743788 772085329 945284803 976326281 776099144 913799667 51623362 637112400 157781310 940655242 767633899 894740569 136448017 591850506 364489397 552859005 501886295 758516947 502861337 906804678 905887048 980806557 676851558 788689669 446320775 825650208 148277086 995465695 52506962 786138765 755255370 891364415 766735387 978415742 118388447 752428758 16808894 555090373 120515366 560794512 820959052 834819689 848358859 936921886 471345810 966696435 394591667 466260509 376145049 454405723 712119170 857437954 678635689 704666312 185492132 672967139 765642316 971005509 884390593 893091391 246637878 588903858 750450613 995400191 750453660 994114275 539552908 955940985 235561633 627964234 323117909 950886848 213444229 396790126 393763885 929556930 354595216 665465637 835024280 872250593 816871364 988933978 679666530 874271135 66255994 830476718 305455414 767473602 150804032 841732385 736279038 981030812 578634541 602582116 953850577 957542407 81725961 501854146 652601476 870211427 117598059 132438040 636430690 941481271 524326626 792222005 254383364 906271320 946746666 958408835 490760886 656223744 445895169 869433813 475784511 644940871 636555286 663532635 621076563 658838199 132173816 418802496 405845469 958933329 935637649 983744669 143580895 588393803 833757567 955989398 871132209 982956983 203199932 486788890 55869470 754714964 13067162 680157005 72150254 430771674 768208088 866494859 944767045 984563462 352356167 363888305 777141433 968798290 255945102 309213443 9726259 416097370 554236504 994655002 513937070 632378881 121411117 888383178 274954114 763909520 491407221 614561945 755359885 762062798 264931972 616863317 728366194 991556084 39930221 347094825 342882230 544408468 140162793 965671764 283991122 288489653 556149986 974512329 227142071 313895674 94204925 706622219 416960592 971917746 382499051 789802496 504405194 683450593 534686963 875661258 883938772 960773849 805184449 994128666 824561037 964181350 299976166 794050209 493771061 959566538 281664298 325588497 552139003 863331911 696174105 956337872 813656335 984161320 767962006 892767411 133943624 798629652 316299575 584873136 693266744 808454732 568463287 788683124 208139181 681370165 693027373 797277214 435205254 833237427 746712862 863134996 757969575 820598259 305877111 535212759 970088087 988580439 849598044 872436987 796976859 806265859 565785596 725160787 525196248 714659375 941816231 986540538 265246809 373717294 849095226 896125354 513572779 950540462 67315388 224566130 64625782 165627924 866855112 908217127 337116171 794700593 582119530 862150779 294909556 594875297 890125055 946502697 240799512 941429941 98317801 415017106 304989011 444262814 579064062 657068100 774613474 903060032 227980885 880623666 314230483 430925874 681106711 864335248 333328363 387180231 744084839 977172593 702868237 728021704 873474942 910678921 449723415 725623855 25194644 174521128 157659227 189166515 132125434 752283738 627965101 815294665 80377333 269113327 666648996 813378958 975387722 990757939 984689278 993165663 680996271 763483092 622065438 705631388 941139774 971322811 851396541 943202786 601675179 809054610 159951240 392915730 694365520 829569331 5896053 522050507 234340514 757218852 461650187 734986241 818249127 841546370 805282831 994258404 710976170 750306845 469989050 565880055 901514177 947709111 136191073 326759020 508847871 740461619 726237763 808033821 607885093 619292222 925166435 990830937 523231958 711114417 940530512 966292231 722089080 836748292 895487536 984188812 969246 138136640 512940478 981493991 436861683 832276384 829470292 972393441 628416401 811892992 412095190 494778195 499627427 752046696 457417385 788497395 941060475 984470071 168839060 725789999 570094398 975915896 450121542 727063439 867445424 975500929 403603837 987216659 866016560 940153081 481500349 994956851 2392960 593624820 527879415 743830591 998924375 999352390 9003825 549341911 313719997 701923730 647598314 972333367 654184501 766308877 651787770 877322452 453827367 810404765 969475634 977513045 219608901 628251494 525920403 599518967 563598046 953401031 607805714 812933708 773455125 774570730 919837410 943303760 549651144 959482363 501897079 973992092 262699292 481282482 946891838 959704647 623968653 746760671 560986631 831355968 363106369 788360123 485664254 534865348 340758614 987866779 730584426 910266600 260404477 805605943 987067062 989368619 349225945 511266746 469316964 555416623 184670699 946960373 380103903 692748541 238753805 952896636 547996008 899391787 562294005 598490938 232469840 742790587 184577055 727743129 388702026 556746895 288015176 969511244 245757105 851093038 278945819 919687327 144753741 489822989 940435794 976854893 75464419 699281815 976892118 996702598 540228877 841070827 989649683 998789184 988902459 991651596 482179328 492483576 841191075 889401230 591138780 644924835 644986503 873635196 313403855 371792772 630791088 777686823 545740745 875991465 310019018 770098885 537090244 579818885 16415351 273281397 661027557 693715440 110071675 445390785 992336196 998188427 924887172 986177503 827453810 908342073 479623717 823923443 266230329 347942985 258060263 502268141 827600606 969848685 347625948 435628351 978951421 998827374 28864827 142886289 937873926 999935973 407467916 952742075 443859054 834370832 271853590 851471420 191575745 762635951 440399291 540852841 777605696 860698345 140718247 639981721 714835707 839546817 458300131 909307133 408640716 510143605 694290435 717000513 286101537 892193161 756983570 804676282 105321312 136565835 651508700 939312519 252783115 554874349 441474615 577510807 148541407 958569288 918285412 997069015 137058730 170700461 769340008 953572091 936360075 996200882 501310901 931500027 116103742 861279208 809425480 824736811 674678380 720280060 684160348 932126391 451427721 604367050 980157564 985087786 156130010 347096427 994980539 997319024 856263009 972112232 226309129 625411469 1310129 185569282 674287146 993156998 664955522 886483449 261435414 446989647 71051760 300318587 223337545 715906264 706211642 706354203 101218219 142015357 757976139 782647802 567588652 898815136 147303619 933466148 398647035 875752985 875343859 979653670 780239130 853429570 415707273 585809520 849210180 968572437 523162104 583204827 120444918 660405201 320669367 810193421 62010581 646320733 721035584 877127066 267278472 930535880 554056959 726210628 978639538 983101634 179735066 360143485 135843123 494213785 76563906 421750611 801768726 919140188 989230165 999911632 802823509 869203199 690177055 880048698 211534081 290704130 459281887 860544103 99776012 354501041 327816339 519569070 487327385 821553038 863376737 868842823 53135479 808880991 369378448 589918364 976274269 977045123 51209341 565381525 357800301 818022535 591205001 666477991 518201243 634299466 392889462 876106539 837396238 975967302 90678490 973011004 439332186 943183220 698598907 936023501 451058404 560032239 360989432 939643555 468258716 837078717 809193995 852793891 295227820 675084191 280826565 323111822 183875301 201995456 894127372 894283926 122495040 174551546 356720432 541697071 296222256 338546307 763698687 804491771 782936205 959320087 355025127 705665400 81428853 420305340 375662201 598720927 656768773 828136512 505070386 915107423 564950652 890164413 129040834 359084707 128649328 824784860 184935333 277494361 676565507 915812589 729639178 836258258 466070455 924869833 335156140 723021096 207424249 272243916 973853417 986123949 570813519 615514825 801334074 824888586 696716846 859672250 988139240 994276600 447290318 987911917 321436785 945143410 569095897 884030459 930652542 943293800 833070539 987338334 623944794 864230092 127389318 480365100 376498352 702185888 783122121 814942983 178858984 521175076 338055770 549041515 153677070 180672753 885458389 952306866 775119656 950341525 894348760 898619780 483432233 651898871 886555527 940319519 203585839 341787354 112192848 183581917 89665000 326602490 394120155 493096861 561065140 833932083 473348254 931071559 635417558 980494104 10809390 268253347 986931830 991730461 967725311 982627385 942106534 983628700 972260220 992625239 973106809 989462852 9784945 850566014 396316989 472559486 976660426 992958817 342889029 825333714 753638179 795112403 249925356 662461105 998860879 999316325 548779945 817212346 285964570 832152749 274672523 585833603 354934569 660884091 995120799 996613159 830199017 888281188 654227708 738894872 252239552 568038714 400395251 966341868 951350583 980017308 703489879 834884303 252726310 408404660 837079207 849263097 32174670 539914783 551637016 844741072 934447654 994970118 475928422 735833118 85469761 834065893 618537675 906776090 851437992 853073816 795657906 926716005 588582282 998524573 159037571 484657211 800996315 945646334 232649382 895536601 572884087 984005500 407574547 585456915 683135645 723206937 930901800 979867065 343459014 416614280 41467392 566442016 348375733 748435926 818094147 877776808 388401952 650706076 301836322 585518603 952403788 996541923 981116833 987996858 608787349 864849439 59644061 78982498 843711310 861901759 734748143 799649746 113466381 498399537 709809051 877757307 888205220 922462417 411832661 973037153 387994983 570342060 932792682 982788092 879076349 896541347 357438932 961791072 263168647 946393468 932832011 975418362 290041917 780662271 966955572 988310548 863851953 904705707 250475610 919074085 813942761 936528162 152987152 432826170 889133405 996095753 505363565 789803087 791542196 892060072 626347904 869156525 426913086 710546860 314685835 357558762 531560575 881224044 961545915 981271940 862904392 947370360 624037493 744228023 38896767 718518660 336017910 499286776 238219391 840496760 865370890 959527273 378957682 845040659 824142269 836432891 221669494 693219963 939252207 953783636 962957203 967901396 278068946 370764908 793979853 848746704 765253412 780726057 930081255 992014013 5038826 872289313 182029724 632142476 500048400 775112384 831176549 965770250 303454832 975200372 684884588 998823336 808932290 919544000 721214582 961983876 967958492 994931179 241194826 812827972 853861562 955723384 618009025 911189502 695630904 824675188 210652188 419655918 414797224 665908784 429760959 790246768 171148497 388524331 692828477 990900215 918946100 945404439 843274221 978861908 749027078 911442768 608904280 953337632 354640771 659633175 35129310 616848540 593507395 669754511 701221622 865730275 296906953 667804586 281594978 438002678 126580256 988365109 265856354 515795895 732331201 928632841 730120461 949810716 470774475 669005151 528632926 580419501 647127644 832615232 10951149 969617871 738252955 762644211 209281906 418423663 788863004 903603238 439819248 746488192 690062487 850407935 461449880 514981039 367957395 547256663 778089714 895045650 701929877 792959653 997352296 998938286 317531561 880677362 836997826 894153954 621868708 831121264 108498121 589686458 483644649 848591370 828272817 847234695 372816900 806546086 744467831 769513201 459486819 868309673 464402964 731274157 928774098 980189350 118693796 546350872 714447551 844236268 306737590 470055001 232098739 248194626 350015150 441302072 369565433 787023249 139865183 409920908 32906621 881938896 222643162 575341440 871276547 898033834 505326905 521011791 677600662 723565308 46000689 934509139 145907667 671080956 258158861 555050781 573854072 718472671 643774843 953157773 220896957 885518208 795823656 902947584 570778369 678083980 368310027 639566950 672242170 799602699 761812772 981946601 125808765 461343889 996525029 999120566 805672360 937687132 382643443 690960376 809278336 982077323 364767020 532857408 800523240 982613876 361471862 774075520 794251785 900979380 234418298 580731441 335353737 661655881 408575963 985009209 942462729 971260538 472792638 492055930 677718784 807235025 716096574 942364312 147713164 315092931 520209209 738648774 30016184 609402211 859401741 900095494 897293263 927415975 474654214 860026585 791274127 849978942 575467859 887340625 468290399 700472770 189794269 249077343 796095257 947114936 128232860 830751402 780127829 909958526 4522123 744345417 816309622 953141355 718907600 760414973 812178992 853150086 837326312 992907658 524603081 645713143 676293916 776470693 180549750 964863318 831375424 853370537 709570822 830503033 400818477 950270576 936914288 985817614 256180980 310553775 659031595 919017822 827678 549239870 479414769 889859172 985978119 992794128 664354570 666604163 834661396 996838299 239367498 551068506 751292368 812834281 634684969 912444319 635151590 750860316 278756261 326798003 636027310 924861647 706737725 817427030 153910546 969654631 522738019 983645086 905955296 931523632 307201682 612083015 417713271 563330859 218894744 781318734 839042436 987324582 132825583 597814834 673639622 697932217 385740949 851575315 976009812 986988614 48690832 579726819 931986326 954887511 405009543 816566705 868358518 986460844 859649395 967560939 512936558 772190347 606635483 935968231 43234625 284786883 905344556 997821623 424921042 989298393 968543535 986647446 106013044 834597332 555996789 600073284 904705352 937888772 792936762 838860152 357759019 553996175 761863840 980263971 264039964 278076013 354772563 929623712 15425511 212693629 378830372 892391006 383809097 616720412 38025215 58603132 244010265 867893257 887858496 914779192 323617553 903007646 798317396 979403938 956528798 978393483 841325358 983204807 352191680 951530513 648753506 954054826 709599874 851112252 578154420 935652846 81169277 306141898 538642114 923167585 713277460 995821594 547100435 838245439 395224856 666091600 904247100 905383890 661442539 817718089 184040686 638698489 926885776 961154636 278784371 316228375 364601214 844652724 697178141 728979239 544344527 861540088 78301965 630259504 970336239 988414997 770546292 893160333 999412925 999563274 602670065 943461264 528612893 871521286 31487213 223786035 969990508 987906028 864034697 954810095 156968675 445860668 765405590 893370613 21623064 543012462 880809389 927685220 592541476 721485329 539697598 609541230 401662187 447705869 539719736 771626678 6105889 988553527 449748628 715616006 991069906 991632353 657959033 661077688 26226602 399763969 219056452 753490375 957460828 991218785 210980197 449200141 378690984 874788625 639495434 939799027 752836521 862255013 678874194 857682413 906661980 980590717 839848317 911500367 555485648 631835397 150504623 434546795 79143626 316317352 322875538 632721110 719992396 822917855 521738645 768033028 529490514 935410506 800625542 839548012 247430074 325937298 981198118 997471042 53153226 759721416 639687148 850646179 359800997 941591223 577045101 613839657 567429375 866670297 470281745 617604575 732687858 784049121 718913310 810702553 126270393 845822441 579584798 818428810 795285823 809502443 554081243 902407320 306826234 926304580 725398632 902802931 92148289 525921890 446096298 494364008 333088456 996387524 188010337 370923846 658912935 914185822 608325430 747994680 321765889 628093717 347611424 775346976 503565049 504307027 844129875 877285198 403543195 863942567 952504431 958329041 175628751 657772640 620997211 806932738 334139504 682342359 720479141 724584684 295173658 506026651 148819934 573736258 693250532 861861172 789128223 789692307 129809100 566432475 710597507 786120483 669927651 951241688 846663120 984011425 93775519 619311922 539669172 646745587 945544626 960990555 809284501 952740915 421984781 929264454 728340306 896984127 160515904 496867012 204585921 587384174 611951522 750455380 130242267 611639138 131793101 611552099 558007658 684870462 351027500 825474874 406147850 412314392 695421582 707985624 243553435 682541533 871913406 977111426 171754480 358632164 229050540 852009244 17545003 820794704 740369267 842940844 764216163 901051146 538928091 566100783 543442685 695160595 283307118 392937394 472562082 681519526 500267452 832285246 838930865 869180516 798161061 875229286 288662786 867302347 546397538 705808703 481142942 607475885 377152339 987610598 262363890 348809431 806509531 990388879 224882340 907129309 429641919 757360378 259449800 614208264 413897967 542306962 482410622 500426113 665295560 871552353 434389242 792027003 515634422 518843473 165384328 321145936 164025593 504185095 38867257 392712343 891994199 920724788 9596541 827029537 806923686 973484612 965416679 985069906 856687604 914349139 726270714 905265295 239568526 307860121 654798863 945762325 868139777 898209358 211558996 244064998 5908538 616533643 938181352 994772560 34293340 246469944 599538760 718799466 378239745 453293430 305728554 327695712 642065507 726358663 380193743 726835515 768882917 866700357 534242839 697325652 264489450 450511079 808810962 893470171 208359584 232946913 273634242 636943047 23979624 450550806 272283335 595388532 112669339 300140135 792363611 876905626 776434579 824965883 552536399 636697255 601841926 799164898 496422061 614330831 546797101 560148623 398058452 424184130 884039610 902338990 444347574 457437284 290212152 961941342 618008684 684931796 404673869 986179935 59066251 539152262 841333338 845712485 242485068 985599148 819307881 984033220 479270711 493146310 571343659 802504496 236480036 396430043 118588870 646367908 23150546 407136270 117091255 879113364 329977693 745853226 56003159 993157197 578501443 638311527 240931277 429637438 173670184 850741753 918910197 998809387 698699051 747841991 350357257 439394701 480647296 598969938 985207206 996007216 79056493 692513103 319994118 981516175 588462215 608415304 738089644 831985973 948825982 980712824 330538853 645608254 552510036 936804967 285214027 332707506 351363495 835761940 964424928 974572525 158699574 924508638 649101331 710521612 25037783 892667100 298018384 607904363 406738642 668383494 468680526 666352697 604306795 812876209 865582463 907952823 77857268 620962445 621312758 899193211 223853366 898612423 179569728 861456785 703699517 959929698 596415295 892951489 688581997 705572302 317249417 630220731 280910002 863952920 384061878 677995445 846167525 906217913 494515454 544533432 830353660 954395740 227056130 345959527 274512742 291987370 307874935 322464970 128260417 978806914 763405861 839918889 40897071 857498760 365417173 444421468 842588472 961401603 406213583 926057410 190042835 497745593 388323177 866997103 740735831 836961636 248614204 424386270 847650345 936799161 320761885 804459574 493215926 577205482 172077815 220979490 322397018 452130887 299016385 874404522 973702430 990225076 666705947 669323466 234956232 611929745 894787972 983739005 216128260 622014115 672779620 844580598 85430926 460374511 6700783 283974324 813813201 828779439 527064540 611744029 288356939 424440333 719805849 982014594 700693080 923832441 527300612 686043262 741421367 972564925 886423362 908086937 940321988 985890529 610177039 733798758 569301722 700840047 565430224 644934935 292485529 959737268 189830480 592111998 781856595 994000205 617729846 829035860 784304543 998883315 900518378 922589547 795313854 974364221 389109802 686548731 709124087 817860789 590427455 934505870 233567888 741987705 922919004 975529858 798630636 968602774 841536604 876328875 170089483 900905867 728313824 851587346 489636009 966643519 832324493 874819556 396889286 398650695 94783204 141739949 918292310 979931484 897921093 974319184 626907054 983143385 856412000 990956344 224496016 382856476 519725553 605444565 232678835 317361423 811258328 883882707 230916634 300698023 565896109 584394643 149764092 966712736 160541211 495018633 690911173 777611913 298700695 507933774 771998935 970639303 241885511 473737320 663831536 772070021 934930811 965663343 574243709 667679332 11062677 868141123 755576082 813221113 407029623 686919274 207252883 716463259 214214857 362481391 643338168 980111056 757804716 799588695 365318583 903380874 153444616 461658165 224084304 562956925 773853672 875351823 748039152 995070174 106685963 725183852 379068733 951560942 243768132 906789072 88625916 583774791 957071552 972871313 424923715 631852367 16617375 593134049 258185730 823477370 220529095 902672677 486318285 799957744 732473547 753870411 602271722 860326309 639558068 707304307 874438913 952702959 383148029 474973483 199624249 212659357 521398557 870595941 121930905 333324494 641586843 882911213 820219247 946547382 369972486 744883827 823868732 834331730 447976353 513294388 476742731 997405366 369139642 579379423 467777859 945315756 552412703 627620540 301298923 466619281 290871676 596324423 591774004 774734821 359451741 633250210 704638731 731209990 183392878 235107947 433954042 961677321 64250534 692516316 307131143 571326814 236822897 359666359 443622481 827270374 786284101 790525117 277393964 465203432 645420974 737205398 169993579 586763253 280323924 401080930 307573669 316030025 480199135 965571817 523344450 842415885 231716817 548640574 146350384 247737320 452467458 647933262 535043778 971538388 800448492 811195396 13682210 946564909 342780243 582187996 840435664 879199061 407869077 668926447 299053865 477593854 349616484 907891647 211169768 780861699 841058429 988484694 927279755 991774300 924234722 975521983 730332951 796501700 428956146 936413148 490853760 993056895 838732912 897323049 751252054 937771327 936253332 943339365 253382502 362470131 180564234 726279934 850753362 920213984 764050664 770404935 917360144 940577704 84626485 534510909 243390478 529790661 866375650 986340561 863257091 892760188 9875691 617480882 32623647 855867108 217473914 263577891 634760482 719327351 42765252 660085679 576191199 736256226 296007011 570106392 904136958 969678088 564684218 640764756 643987857 713644259 449500195 536754098 502604271 954252377 843631161 994638227 555576759 616671370 937776243 970882523 715211718 811547704 244570417 293119479 413661837 980369437 289907195 480508156 711156738 727539576 938986459 994948487 225045845 461131537 223011107 443342680 376788457 917000254 209543760 352041601 944887576 956030728 157518237 476223626 166057237 601845257 621119654 899845544 170280931 891167648 989607855 992639442 617262764 949636082 68548955 782124588 596149173 610139380 349204033 591676462 586873758 836988536 511392510 637649471 841129994 999487537 824772305 948010401 608438247 926699833 922115272 950656386 642998174 689491436 44348717 80510048 733656763 921767263 648473235 809740382 632475024 679968596 400002547 428918462 92401476 214989319 315039967 813216472 772121929 785861742 928866351 994416605 987051468 998609218 315507558 775465806 64303353 583114194 737669640 971002669 827763654 974585634 773143807 784196209 274463858 311724275 923932476 927345401 824649202 867524040 706903392 963555727 64438947 384746858 217171850 804487933 730176781 801241293 158968941 521411845 345719253 939111361 128816398 343025661 24148777 501716355 992444270 996501233 863904335 973026471 585905477 945023705 101333198 580639167 344958217 820790000 974179714 978749113 294893640 340889037 746552217 918921210 817669830 904043313 545020987 966768908 423453501 929333929 672468780 963063088 70929133 832245270 837975058 857740169 948326381 957485507 986433556 996150332 801706666 863333477 175154815 613457075 219605322 249620830 541440964 997363666 822161992 842837425 609912056 721127504 314415420 398579647 798614788 934859336 882008169 988193442 629671846 796310984 5385349 478904304 296893757 456616812 341622768 821335074 31611078 85861693 96365232 954012275 607367058 956761051 146601721 382784066 871766520 954740509 379150746 899887880 605344868 671653611 770017420 872988112 575128928 778433365 493685013 586393582 250787831 401655585 83463559 783187921 45361209 153330813 491527181 832891076 672927535 878407672 654997242 783533256 704098966 831777044 101800762 940527522 9198604 241570454 569861841 573678325 532239753 755804942 971618468 991897061 897925614 908319143 811653119 935676355 379290420 673107190 70670454 710631228 822063832 890689476 782346438 960403032 831701556 999884875 649064155 734917202 367678900 871259949 992246281 999145615 281852144 990361206 164533798 835117167 208938816 567269877 736502809 864565150 243795878 775645041 597989164 839025840 682193812 767837855 785074141 844983244 266640990 750674600 742129290 909152557 936803887 976663759 241496260 617377991 816741470 981438591 758583452 907841469 26977 796218949 191467364 824288331 791438698 888556075 465859322 879107292 533685453 908280217 86626542 912053450 511566358 842095052 793080183 884436819 905831044 974231455 991109851 993546584 643921902 726431068 691623813 847881585 432186981 738191310 383558336 437011509 499227128 978963089 271927972 679099172 170260442 413040650 189037313 547413178 916308050 918404527 704058212 919918242 70125362 473631532 173807234 521903955 765692805 913683855 836572224 950121994 150738031 332475154 455375784 987987353 520725791 900333446 601983242 959426194 393267394 429330343 930367022 981351285 670747574 810358788 380444664 766039226 31525823 81917421 403206510 696969286 525800122 966326407 901940401 984373020 898002652 954760898 339361720 668454432 22603172 923354030 871536536 995438612 182170955 493632538 44071437 717772998 90442816 680293635 137136104 491702112 541462992 651361031 982590719 990871862 823347890 840540370 681681061 935215822 790587310 835528634 202854962 639781179 175470248 961386668 457833692 614190715 316103920 572145334 554218216 877664439 479627063 661227902 556982686 926890362 437894749 624093170 328312123 648228529 94268603 367145812 226341916 958231384 306137638 616795200 638995796 897342070 75292239 556378994 135337000 425309988 266489086 344149553 10770866 361039821 449167927 846668845 953928956 992366861 731813700 954266434 4585534 629106744 899561708 913772358 504248635 791682537 328869720 907543613 359771148 661391179 205783042 792976036 132571366 398814570 440809937 616152930 88622441 134195917 781915631 892048922 37862517 133409370 130264129 314332046 858088232 887919420 627820558 924554696 102222920 323703664 445310217 630164538 874920104 962215357 376041281 483920843 13467724 139436882 395895909 527817936 366093613 374393053 756416176 884509782 980386390 993253279 520335612 841458595 600940530 985334688 553501002 750564236 409592579 703284273 592639362 931873935 809169531 979177905 814932820 964164306 259181538 977286204 984514132 992160585 469250660 799040781 203521249 849673878 845107189 999271621 238232805 337482454 908013081 927529594 194108443 420471971 518369857 609711119 255243816 441712580 378051845 985390736 465370754 964354427 252157160 828365785 511476024 999421327 602294199 968840222 232505452 659310079 473180088 848317608 512214853 547770145 950934308 965117852 728930853 898722542 808403270 871006788 542926700 759267538 648998896 849200060 820129957 914125651 604414465 948637168 734694124 772142171 126102678 301024003 845201252 866238792 28241291 59080016 715103043 828460239 331674091 773093417 973105007 999032466 801968737 931423564 221109597 763955529 621857423 716204629 385458163 907684459 981669460 994877403 217961256 436616554 439937741 483108151 783709872 935345733 976613063 988547643 851912759 945318374 125833489 633656514 50304858 860030018 607656007 712900720 809099652 895854679 65578351 950313283 79123602 563947529 875713123 959081507 24809023 864567356 305796857 344939587 479241963 509443275 177097696 344550187 456753272 601869123 832160969 875770709 531261027 672867325 985581638 999070443 302917419 704494631 132849400 333417949 390574667 471246234 803177743 893323358 246155322 644799943 591158791 935950390 973234017 989939250 40149255 350830021 907432819 986110336 564367994 781048445 365916341 654772531 156053039 751491044 912385924 961649108 391934291 462009590 211141622 363440343 418968123 693174829 361244136 820415612 578562283 586656304 799794149 805931308 980146462 999654919 486931235 800771142 953397629 988291537 224579593 412553432 519317659 885234452 548128652 688735920 401440368 958959548 758935811 938978070 199679676 866351638 666603335 888611895 767116262 814603969 27232402 804465951 65307778 124567468 949128161 981654963 514153025 761612234 435299680 817898468 588565681 920641554 227017958 919796030 360436885 449812100 522024679 948700512 342020963 738395547 979627183 982667025 679693476 747573321 363123297 926062601 872088068 935251627 97476025 156219765 239944576 362240996 138720709 956050005 101026518 783149592 532801208 725437118 503841710 506851413 310686906 542851808 675882200 745479049 813797154 821688167 615325453 891605104 878266255 947291146 99298142 169055233 839653090 885848159 727029797 779934823 329943297 773463556 218898285 327637334 292731188 883002401 110709310 276458497 449140007 934933751 441970603 452642805 6515898 707370075 522915472 970843495 360911513 697767679 756346951 843472862 266566248 410990723 605574807 685488549 70280925 499518161 789073136 915004940 659913244 870845994 591115304 958285479 765012456 893745619 380850991 600948259 374289992 502406685 41359530 207519396 442233355 673670571 429249945 974044834 690466894 777599157 430832581 979446690 149295851 515018818 484952626 610121601 613067640 868801407 414318961 650506159 218745563 661267355 355721736 627619164 105338090 808054873 365639843 980882951 906557172 957497939 699472475 825187090 950778388 979080800 808901574 833632275 166297427 808855526 668555420 696379690 542232271 796255699 966007159 995576524 812397518 997359093 677278743 756248912 633106435 838898057 70661549 801855977 767044412 987596767 595939167 672571483 580832978 795598452 282377880 828950236 237307851 909162258 3516019 523774401 277573172 723901679 113860179 152656541 451739411 704404287 684862456 750698229 401284024 754447360 648434529 915460948 505269340 876872571 284461354 523665272 728543449 789120913 980230740 999399743 392874321 696308713 463226220 540581691 39290747 744362351 316912941 787318556 546849656 598494950 545056996 902281844 774388701 855371654 633001003 821669285 14958744 326142322 724718843 944787591 11257423 332816739 927808544 998350566 252431316 993738406 996803658 999861825 205354948 674182668 496871563 630584775 703331871 746431330 894915210 937780504 267043201 709519523 145704578 752468200 967362740 968034341 390289450 949585106 991983423 995701541 80874803 580285953 525078460 728103939 538284577 565944516 178111616 464570631 461155657 497646211 564269533 908539781 668703439 741335411 48572228 821268292 375530654 731701049 548308021 879712128 667781516 799727697 669450613 722177691 989415160 998835315 609790118 803738744 72533727 671891742 621306473 790315031 903338812 995993786 19532900 551699388 900194330 937512400 730243678 782121678 892977006 919151626 986183673 997660964 415048605 660211305 520209041 638369484 422659033 608871410 270469382 287435275 630559353 660748506 85647497 276087115 301633170 508724003 368460523 550912206 129319637 424291757 528626150 918241424 922795405 951904183 139595578 976517210 230858601 243367463 335585462 692129971 644597143 653741221 611684736 896803917 463445123 493476048 4315208 198920074 266858375 562894112 169588145 310401375 145266075 302708322 18774202 126872894 703439047 949495864 365921231 408022514 449252181 771649135 139289751 609907492 137969615 959315926 939173792 964535962 983088305 989629342 761141419 815299567 900084721 908978642 503513903 650458187 975420809 990696322 917461661 923394715 55522491 705704171 415891011 542788948 758294625 771494627 510319409 556939643 247529945 468940581 210062306 775991086 413860541 532441582 403230287 944367346 825651532 929793551 111035616 665733502 298015438 704898068 301133590 977829154 82809888 893731605 281427976 610040434 63286834 986576324 702342815 712940359 192994619 265290426 984600000 997359676 884860619 995102256 674265862 918185441 530173091 627694981 928745646 936752780 270638818 841942000 488891121 939874127 636375622 816846003 382441106 598941300 543126373 743920222 488614703 987106890 761861712 994508860 502762336 656944416 565519848 905115842 412232294 586778188 712897163 726751474 13327507 744446983 620775706 633678971 378111167 510889005 535006085 687044993 268725736 666734410 844395906 936446534 854142212 988736628 129660317 157107377 820505456 882815040 598801211 925130354 336546977 822738287 781143096 795886745 908406678 939737251 684393288 884503884 588114568 949584947 337689507 586834921 303232298 666147312 539315452 987712685 531388081 549308009 617743721 645558444 704689360 796591603 413465990 924675738 263080859 803444661 303905212 349255097 453543548 987884998 523363549 566032997 636689942 755197032 777356866 832160567 960167602 963078336 243720944 662015799 326376991 843943195 634173763 756601587 48997859 947805149 571266414 828984811 842702352 980637325 796830131 880584527 494768645 586156672 606600281 776554004 535665001 868991621 146037429 352263405 230320419 942884148 630352832 973842876 523725530 712853349 372286053 977454139 722040816 772921089 973330868 979171793 585715364 780332093 656032935 877791652 447027114 853539137 402511075 892974219 4537368 927701492 726908010 769436783 458803475 520363311 356521841 652263647 421079470 434108342 42266236 371303683 845413761 897222048 507506740 893208734 326529152 776913667 902939133 939541058 340346263 959587467 411014505 749412502 548253100 880187536 427436823 439721600 472880040 741669905 961939190 964734535 52065630 590810762 839630359 933143620 314257092 699889866 234133533 830603112 149793535 373758889 844821469 919394189 90425137 928770287 762217323 941418154 957521569 966522917 424655942 866707678 865784369 981689025 766096516 979494641 162418212 256182348 216858005 271926514 940926477 956696142 345945096 750974668 83163414 965332204 428378895 721125692 458396224 916493114 330654313 978590438 887178923 894803317 207754101 310934794 686089978 839596106 92128928 258526476 284433577 440590033 245630021 915171574 26826117 337270611 928786339 978070085 979937233 999207559 252120296 956745560 27873196 303402709 678134469 833094971 466705063 835536451 364356106 844888185 107459026 602623851 967013152 974459991 932271211 998106185 1154440 620263724 825103379 969211882 310041905 331395300 126315232 961518782 582665258 826044051 2333053 936416118 947397081 964795925 743961533 891855027 655405931 796617328 571416443 974626863 380582727 714250764 563256935 737089811 757846795 946709358 496466944 880368056 279395055 753008676 229070332 786270737 409895606 693077539 956076457 975985404 185406932 866964196 757826420 882462157 354853194 480221867 98596377 359307322 73411341 796456475 346356313 759610619 652716649 812675494 147837453 746827090 261656775 523025659 332086750 422842536 746917507 821660259 782823091 938844285 877268471 933289356 452964239 677728892 13940395 616971084 265159521 338318733 166596973 959991255 990060628 999948725 687869838 843093744 461569152 967768294 219198925 555891975 787545048 915232331 921877835 925736482 804354779 989947459 817909364 973727215 826801303 896619437 296789029 794015637 559254124 894659143 992191364 994296812 922405355 987853444 578800089 886832716 341029443 754967531 152742170 177105683 28125454 881802685 656581933 879007299 234271898 910705994 997246044 999725312 159494461 222693577 486236832 668758808 854472000 866712185 521523482 723132769 29241632 447525438 97198402 479920461 338016188 518800297 435506282 652665265 205186207 704766822 52459618 345932095 361919338 828780932 307038023 860212749 411421402 666097933 279660876 673877233 267998937 795002457 421950995 843847780 488182081 526053983 212413349 271811347 425327526 611516045 748924029 894278199 738396817 825477425 970207239 975360942 197812840 339286177 175658957 691655352 162144630 387634851 955500457 996049964 803607053 917232346 301532350 430168288 45186507 540610221 276191420 288540136 661242770 832057097 430361198 949819765 704614651 892072864 714514617 929827656 945511419 964536207 374928850 756245672 128360991 722642846 872502949 971183609 658628264 971151624 691902967 723387645 636781813 950171306 55553490 978049058 484031331 512278043 348254967 451544709 556805630 985175154 476793379 875400437 95095452 543242901 624517531 949661898 383407044 709143875 378012861 988336670 504778972 597177663 293776245 610986285 842341664 913200696 407895699 799411303 245769093 511221967 311252690 357478086 585384925 738668364 631371041 695239882 481278552 870303271 163302577 209951473 199349257 673372879 638787108 827293619 98031661 864878080 121457675 180608529 348307328 983244402 473740443 679310486 107915373 428040302 542953415 718653998 167060885 211403666 769469168 962953980 969802661 996551829 679258746 781231191 917869228 968571610 235601434 899608048 583674233 924828038 289405689 934774126 953681915 974296832 990133712 998945879 868802141 869735878 565119292 968891319 69432153 995979475 67767907 679894250 506691493 981395412 678470819 823731625 748655512 923367742 364877282 448433112 716900922 834245874 367159463 526302562 168292959 679788177 481684044 896414292 197744602 481515021 176084711 712074027 153467464 598703278 869029818 964578024 943188547 956767187 458055333 975188284 92637396 931210746 120241512 907037969 23130107 129643285 764246965 992547969 340370297 697315328 470378686 781337371 413217248 710932483 33502034 295944598 689210836 691833857 525765201 545505589 208274771 928601976 43820030 782529829 394848174 891785374 13467492 257092435 383336320 754651966 157327030 413073277 23450137 607758281 493552337 914601138 480290154 708269017 113674854 512258394 415599996 746239724 360444282 711145762 196011429 752623800 569296307 801663064 138418962 945637709 667494706 898475061 857226434 893889848 83975289 695478768 206956695 658511407 882222032 976568272 629792319 775689368 127688009 797917469 284218785 673159809 377324145 721664029 961340229 988175346 333633716 624382004 896324747 908351166 477459555 798591272 292750689 829073309 218539691 633132489 69259857 285721584 460278361 933449568 99305510 258092534 899400473 914412294 566936910 888294433 663521196 699918059 706843483 762248018 750514470 898174227 582183583 853924466 167387585 886699301 654911218 871556905 240470306 807925246 334061488 862472046 234958950 872288969 991804811 998011385 453825774 749392430 657420958 871014376 349994137 887669623 745232620 782653338 730861036 934350474 518146769 887014430 774370316 848631383 641927336 689298439 97410881 820010010 969280503 974198849 910093815 964783668 144005469 935723635 518482163 830295136 178022294 591945395 976750103 984434744 221469834 982441520 330297988 736136915 424068234 740070009 48965476 807803670 255663569 790390672 77099075 339106072 441133142 961443288 621209036 624191471 566768047 992055355 409776759 858425804 642272470 858207809 682622446 788459323 995993682 997754275 391414939 631330039 706825312 801860481 486517360 520783196 283513471 944012637 782701546 939677185 95251375 918921085 982520586 983558529 392102283 939575498 863838040 951390198 493147672 928553929 976087589 983709716 130101139 215248938 331109685 607813450 85574151 330359698 290081461 954334411 8767526 913405235 468981478 639767814 295803779 594873111 998346062 998819777 518799079 553194972 427037077 736486603 557361399 929178514 195653518 283050015 897763811 928618483 977855993 984074293 957060574 971568833 955165558 977496162 758637418 936835501 665525261 900236521 236078691 741759032 416591285 545765562 730377103 901546434 776803538 859862963 247264072 734645193 836500615 882146886 848718608 861566316 936722006 960561555 374080291 703934076 791084774 958067375 570319671 751493569 936606596 989955901 722820842 750835028 320810749 837562733 902318576 939178836 248736371 567860472 136270261 379222719 137848117 206596510 905816771 909891336 960968455 962689767 877102935 928628539 874081097 882323429 314384360 553895627 873836041 894420212 630747851 815702363 826701166 918689103 848153387 848822901 120928325 348507430 853839264 922012627 213534406 367567645 939578233 944946295 160225824 946741904 717748306 835424382 654860379 960726292 529775615 633684850 554843761 663412157 275464459 578065310 542231509 945762910 914745408 951415197 650967796 886914399 456822071 708386912 889936519 961152791 263983670 733451953 477257199 720496654 479603131 999613558 153998453 755754977 856467517 953227347 14491534 965827902 637272438 851085755 746927891 963525577 99181198 858827822 183897707 352280302 357654053 735973798 869996705 900081899 972886180 989513002 73734028 589312641 469030907 945489382 180511770 947533584 882853547 921501972 636973080 932365605 41411273 190599692 186933401 483476314 514913243 689656003 21503014 407130687 722358231 727634803 717429934 742310815 233010185 545041055 829505815 892079618 762098746 873133274 953037374 982782475 369958687 497389099 463507387 488812397 935842358 979816756 371406286 941121452 781859484 801900690 385564279 678904525 479939713 892570278 91955541 200834441 358153498 542008413 47264749 217211319 592401250 912562327 633233038 685680463 861121945 936805657 124058073 401187748 519231340 882605258 439444756 451643737 58204637 746779739 773910799 867989004 640539641 972359848 655363048 998496959 996999230 997180687 442080219 600249299 785915387 974224875 900063134 922974380 263768202 687597402 100950434 941485509 847143475 969209906 317832146 457478567 200228979 639547263 606469551 710775106 487871603 640492935 616380238 947003419 359471455 730210032 791145439 988479871 319183488 377258224 615803033 880971977 126848282 385743013 96431287 501951272 142703558 272389807 294908316 621318773 966720820 996597580 616064648 964775477 905072521 953839402 841967849 881959256 526494413 733822496 499689632 522633932 665550789 719719355 134063320 929436496 160735707 863406438 160717658 871815252 951072974 959724968 236142228 412511640 272336623 330659171 788188826 802996798 14858319 365710919 875343655 991345357 732613414 921754781 581235583 778779790 23783372 100272830 105409311 583098583 50792008 243030928 992096796 997019101 347100452 535517210 597338544 917867657 933947454 980923823 333275338 726743019 433822065 962994735 895442721 970823331 311383531 376399978 693734508 892674639 975975014 982320419 733859579 747532097 816166762 891746053 190528814 544028681 243467848 270072668 540357666 730678496 174300366 919819842 443703271 907585122 615728947 876358490 92607949 228006610 149564685 323292431 155528229 769300724 521894693 955830723 709190656 818411248 388714237 842830537 773767519 972220857 812375284 832272187 913215816 953399963 545288238 636857777 224808134 601274767 758560003 840521585 150414239 224519913 410212570 540770879 368554492 392715863 881225308 972187704 567218900 954486196 332140794 839310396 577526339 664674916 803791052 908098112 987474593 999471218 882870235 911294240 376150409 710898500 602616227 679884136 856616107 893555441 12636690 325488583 681466606 769327370 592842674 853917358 208000622 821051888 932937567 933938613 971156534 985537305 420119588 971655721 884189057 938806224 685143103 801437765 688105165 962635230 120951530 436481612 504887069 515778703 943825786 979226996 236705979 623907574 696003352 792403000 538899073 974148480 465939757 622387283 115075407 223688299 66941855 676985375 28126448 167579977 682562476 952454898 773458598 887205582 100188541 827862889 585603786 668897028 405311931 618914968 414713824 623053992 735280879 882885050 859588147 993663237 356663144 437891100 925526904 985795910 730823651 949927954 620064024 939828523 980445152 980845968 780817954 813995250 141483333 862207678 416690813 529033621 414758226 976979863 379102535 451827690 520033060 792944084 430338398 737211132 573419486 816833993 439394362 957549064 781863395 961931324 647044738 693356972 264576617 764280652 255369468 620553452 608274928 917309983 501739339 937317775 47893567 656913851 583365151 631530238 252115381 579858436 152036578 528543673 959800101 978158140 633662460 727428000 765224925 790490990 692252686 979167006 772098046 954441629 866203298 981342933 267142115 622918311 771316390 921017033 665700867 799190413 617409627 791812206 389151706 625941100 782189492 992427680 110456431 987789146 438531093 677761345 514621703 565460767 598037670 643995337 942056309 953341166 345294554 519207491 237077298 415184828 565389883 577741181 230756188 405179678 643018892 930345676 752161097 996256614 245999988 539990394 153069376 491799463 629616852 641830735 306450137 731852275 82446511 889430599 984742304 991004360 18348884 457044260 870826802 987214468 104775294 742568857 490892680 802689686 23114842 456646777 158519102 294529390 592762811 957256940 810272848 911074591 327813983 417893092 999424572 999848225 657755643 742933119 504972572 884114852 905255646 980659529 55312625 425375987 753655052 947912146 22134376 165471245 846839286 968563396 737609514 805526292 189738071 514160051 249668389 342946746 127537603 657913377 580803546 911118872 325347340 631720561 679916911 920119376 110370764 776051942 454757428 854241551 695316238 986975476 669816896 963943231 741310013 830896622 123970996 348814136 156382622 741284633 605462226 774386127 710556369 932857587 260586893 573953639 391455723 464280184 896629476 926508867 646307142 811121398 819427358 870957309 217375993 251754673 439337886 932809008 555750014 646299941 170778563 220682549 653192408 881341533 550921962 958158586 383800288 951282336 116062322 602366248 384853858 893891103 42445027 520511518 126503957 473235577 741322072 811881848 331858800 592739774 796558411 964694794 602406543 814424916 384481764 541753148 160385359 874637335 83886287 982993719 800985705 943896877 44578116 710735463 888953910 892718759 658401890 933801025 714289793 952380592 826952651 877204395 79627491 136795280 426414027 991211560 999838699 999965307 658442591 924132368 489305732 868606940 204056663 804529484 545774952 923947831 40169720 715106435 771076879 971388102 628906927 909322461 646032242 935001874 870147036 968628844 44927534 548823149 657258865 902948692 757465248 836822401 380920276 758513992 331452302 909313788 649377597 692251127 563287731 741176075 716272887 988085895 925195323 942771125 774982245 959075737 289746343 940718287 151249859 265337467 689822312 960655525 936250596 988323581 280467220 480898330 183449695 331610750 980889884 993180351 407732332 691631053 783849710 971049999 647784701 714679675 33255150 535197284 695046743 844556225 35302692 718067185 285681936 366061272 301404913 754280536 139419472 558760157 789316063 962945180 888817193 942284025 593772429 818194754 123713914 833827204 366839395 666708562 245217015 944749040 422674999 832526835 558656754 644204033 991482216 992205829 100206624 824594519 923781982 971835982 591487508 629626571 182305664 677860022 354004991 357282567 630783548 840894688 713136606 817500305 515690434 531211760 568089995 695344767 680351466 911343710 256277574 597747901 17627580 431474387 291498286 875946649 669076246 725989869 135838509 465039081 988878171 993961690 551203325 695804721 48804705 349256296 163247879 979579011 111641210 530029737 111200940 311801403 453030405 727229164 115934769 717242516 417054133 983244722 303835852 936870722 65418708 802749575 8069099 994641751 640840809 817093644 278703905 301142316 289934603 503392633 802993062 905435978 155385624 236288565 470548861 554370451 88712260 420153015 188440295 787378786 301358703 507330706 522480411 869758055 83330601 905569959 19210648 970803311 878029213 956507996 831524364 907116806 723438601 890112750 2350563 148915843 211541712 547395612 500461913 601183266 884142233 952212684 809186372 941839006 494599434 508492729 244191837 853141932 648600257 739389000 848244964 914250221 815362625 877583497 816269903 899992707 123921401 517136460 275094249 771930742 687409081 723024368 844902579 985402928 330782171 533820384 358560248 826923456 616591423 874531274 851926438 889303232 832516883 997225608 781800199 836638477 269930750 385528532 247179563 458852083 549522183 603400423 568082872 944727226 279199547 378532434 998666533 998740087 944652853 984017328 452082947 651826356 291391222 758099144 849107678 950590796 33164952 420202039 516016686 651572262 695735235 965654786 329702908 460676757 469073754 565840638 944184588 981580693 62936944 965113517 734711135 783718404 638424201 804567005 436776265 647666119 655667886 980131768 741055448 845103637 115712511 594407712 310086935 782689771 472749651 960733489 469165202 623860065 665475112 817010363 119031406 798460275 484043353 619808856 635057161 763858050 61652195 824523988 692040424 981502954 514863749 517788093 49198245 436887284 385163169 780614339 376400953 430581821 947322758 976212998 441872806 479020377 620635793 812869789 857368264 998289861 272354115 292785078 916700894 988401916 612484456 650527475 425480263 676422402 595207846 859644076 228423610 488672530 396367929 748387270 180540488 760561874 866405103 949450731 84290422 829001604 791398779 894469525 923100690 963978082 147635881 353537614 741510811 806041134 376626958 640198952 494830979 657013651 912840419 951572128 279307582 745379549 228466327 733454120 585716221 610626723 714836186 865025554 661534449 687515958 924504623 940684667 366161585 736823513 292549042 732781582 545183109 741316052 750042712 763122940 724678068 801280390 157797010 253325471 155932912 690350231 591380922 669501099 895678521 944354908 195210633 227150748 370173180 472087114 48297710 256963152 224564291 972419063 775719574 842030717 972234801 977135983 290034513 737413483 483860585 495242758 46880633 902003300 247045208 577022143 933614388 935858154 795674474 936977456 278873075 590484409 972188129 985928803 384385243 752869613 634805771 836964239 291598308 508421036 964448158 991385977 218061904 246290417 158360532 204614223 580029926 608434307 914330362 988812799 701773870 969317388 766887761 839471708 999748567 999893408 535726141 829607410 3973957 598333278 45115908 214993153 391615246 829092444 610556079 612823722 291508703 301647047 992017138 994875496 299638758 907461601 615445378 851685326 203829194 858683532 674185766 974862000 239871026 612173420 927632021 976178107 443206916 936139510 826601006 886362759 767226059 796971715 66514272 464895397 588025673 691632501 408453190 569834689 920051915 970847670 762564303 937286081 836157281 912624859 418834874 631356645 352371077 748807979 456236371 498361058 601280076 725418031 610396291 617839999 34412922 318903705 907762286 943689237 336097537 598421715 405633769 834266945 383226738 974006154 172668263 321368856 937504479 965241387 541399193 652226883 585620975 889479981 289036465 945272450 145711813 769997217 48727652 146975448 866750784 884205598 31932039 165015837 268902507 481376734 524474709 544215015 432924108 953662384 112967911 803297111 306564403 922850802 452993005 936243722 146088993 217924306 267668393 801403888 637247011 909628407 557339232 765241173 883429800 998115581 811799512 906638300 916169698 981332718 831992689 939864180 61458242 678400806 85523164 513642750 899578701 903817003 920277462 942113376 159899590 436424299 569308734 752061180 318636661 362431602 588745025 593044708 323737499 570245096 691626831 960716723 496749027 835543411 148346285 212145857 44329451 779366565 866786016 993784834 468712001 842477281 762235080 825883912 393252663 643168124 955171595 990314373 376837136 382762640 66987672 246916040 632550631 759932139 925608243 962676501 991026687 998815623 546285459 615144183 848672387 865199439 754898095 978715893 351257179 826040946 226573443 502021094 342478348 482313370 428562598 459960437 975317711 978170649 994819972 996326379 375025693 720665146 101345719 303354694 609865176 834294055 105897805 437757327 894869856 950836819 448954565 528150669 50546325 894968656 73022125 968633754 161414190 407134274 513982467 776736550 199725784 348879905 674402900 819575694 498076304 742110832 418442663 482052629 112073725 889192063 795483208 800724694 263025972 814539899 735979868 951282840 360617575 780296831 525815125 834253811 897892871 965862400 778001624 951891393 26767158 339561669 227123902 444309228 738073518 948262654 996696598 997015629 246518027 442996892 767443282 933211838 890285365 939773152 743799173 755798968 540425939 827402797 516829105 973897807 335544068 916692027 382875117 511278918 441020056 599286918 61991352 618154210 556425809 617356932 451232496 962501764 148697982 549461997 587581072 995491218 444962081 636762900 273770738 758409874 725468304 831485450 398022138 603249680 269219100 485432712 729952224 893251656 151437489 469894560 957354132 999337065 215174924 879263007 557178482 742461782 905858675 999179730 220409209 563628326 41530291 268347505 663734857 794971868 574149077 930228970 214440109 380213802 370682804 409130952 612011727 938270945 102696427 930207351 369171563 837330067 786136286 972263956 616751919 649744153 201325072 517219863 498803665 667502234 491946673 620621701 789801990 930141793 41282008 107477006 42528259 205821765 522849417 625799572 956375270 977197017 390940015 816628413 895199716 912105763 42704476 761864616 378464157 876442178 254497811 896474988 609249629 862790403 133139445 816890694 866677008 898747449 177731732 183928551 523012801 597248566 343729090 773395437 500232171 797933607 444565253 758374330 987725200 991672172 551519177 919959399 876401803 961643084 936240823 950075833 37152946 747049113 774661780 936603104 759157723 782646803 818868084 890938197 392069408 985958685 997288237 999297422 956904120 999921848 878088987 993399547 764822732 871667966 854860427 931809306 889617510 917134121 386094327 614456335 24095909 426823334 294469152 636558282 412321836 922611259 791475442 990811018 440577174 443550301 950331129 972945431 417354992 641549967 509465624 765974098 937162971 977485373 396523341 935036322 318917256 730290253 692096421 918671350 675927457 979185159 509167612 665348683 693461212 777250911 97561767 745230823 570125482 999993775 148819577 242362974 232777964 309107848 324727 875196263 849210785 876556992 304974908 742623886 165447451 489917511 190359391 549642354 514633648 859870194 579050800 824371218 809236316 894461680 90564859 458993832 518390267 796907784 457210722 679307961 618190034 982091457 982487686 982822631 465501639 869588254 469359908 671515954 324356764 885824669 179395751 919993935 414072460 843035499 704148046 924859276 580021974 686175832 192530549 218700510 947259146 974405530 760638049 925032360 390153861 561783021 261657499 726754435 554412802 680508898 54364731 351688148 630346305 785387127 763501651 933208901 991000840 994673606 89077656 802829324 61570093 245656727 271003350 985842587 373396629 489529850 758614947 945716474 43298287 981186282 618316139 693228628 14455719 18891287 773736683 826891866 879122629 997896458 404777129 908685273 834073180 869262666 417524939 532532282 437409278 546488221 74569217 617615554 416127226 512499256 739159459 861221794 215412971 708285281 337036894 593256210 31974338 985582537 323717623 893277211 875318978 879208454 666208222 730568429 700919574 930046667 333057453 932428128 177939201 825076201 224288242 823077767 961453180 972986222 669675385 904792928 622508442 629811366 325287812 945883963 103134508 172173929 363026445 447162753 313105999 630850526 403129961 947186923 280253218 875023517 744162058 933522106 51056547 710457012 712268328 751519814 769967411 975777565 221497717 560638282 633248228 838123139 780918770 976507604 455873628 547082451 253335113 414793464 918798691 943822585 1956628 45444292 814793556 859995107 72889389 730063106 212590007 313905278 218524538 828716038 224926948 414846471 927082886 975183499 452497141 578362334 43332739 978408464 934469479 986418717 179486806 949210092 441860523 510392575 810369642 943886833 389708265 991900788 243289003 488652894 745132742 882010080 761048252 897141563 183210617 332680371 156833821 332357451 236924659 965269280 417388014 899871586 693654885 819547383 523761620 599722608 304547909 579160502 135222459 883119933 797035997 861511451 356616240 877825937 305123031 620908491 243012841 807334656 127727872 487748250 651497113 683910422 293299341 885465319 550921071 827152363 499617906 977738089 776002100 823680866 276497697 876584133 302643879 894364822 641932970 664899497 536526937 762332176 38406492 971767559 158780798 647192379 998493507 999556983 281767505 641395955 752355879 773577793 53661727 632804052 367001619 996541568 717986682 921929590 353035645 863893469 673020476 833079838 865737614 868110487 923033189 987770085 357197368 882304718 796834248 995759766 895473043 919916872 68135535 374097884 502258636 516981492 216673619 757999719 196133387 345643990 230571132 479040486 36941660 416999990 496909427 723963048 420768683 978661446 54582598 805673167 914919510 993388302 893963509 932590587 216781104 746982132 28881593 298655588 644401265 801450954 736957615 927475840 222396912 673639553 672827399 745707211 840794486 933166018 278311673 815069946 530996405 902275459 107022680 294826481 398159629 423019122 501289984 661334832 746073950 890710106 547924308 614890777 521026419 777785803 59260876 499611001 474248615 967824756 496867715 963182054 22789593 954360836 730959449 762551863 137373898 856469460 566733034 778591543 77950470 516769096 597540000 665543015 830988984 920020498 589546214 589826849 980729947 981197154 708119295 841437464 892696814 901540183 383063372 387960021 792786221 976512553 356942588 384817864 153473136 594239758 498206187 859597883 715147592 910855381 848032809 854633290 330218714 518216602 101224937 374580645 760342831 971860515 896124979 946280520 483391871 568180289 458016980 893127939 418160346 481714435 122790066 534523765 175174492 815166881 200310206 279072168 822151559 932221906 408725878 691630208 622211807 842487362 539584145 789712211 880206544 916901477 337007059 457978654 763967761 859913667 440849866 486478272 402540621 761932060 668955682 716083974 525614431 930410492 602422889 756755210 794270072 940229371 303453683 777757212 467271131 540510429 986681655 998675579 846298855 912981396 777988086 819907580 30353635 64736959 695193904 925709304 176167682 560015057 516510113 604593944 796306726 901703854 120758024 310444551 573356463 998386302 584318890 785654992 278171239 466282794 507289729 961229993 934215149 986372108 814024423 933266933 810937852 981677670 867058003 983276359 805949517 935839055 821487715 939336081 66023766 142139278 271223874 277820130 804451074 993388904 980352740 994183544 279564875 599213392 491815703 899978453 183330728 914013833 300089958 870349150 161580250 256403849 685201738 741682841 174240375 704211693 622749990 760386131 669946216 801017508 966989872 986446834 732102622 819336157 15859745 316994017 219996318 415216080 197329940 613318722 124889230 491678222 752195765 994432439 570785519 888404318 833865437 973174684 163199711 932554606 418716473 965504178 671320125 901579275 812094480 898145572 111728667 273016322 253931979 409343255 710742713 720896843 920489828 937192566 326032966 947603521 584877064 909078134 570583939 666118112 679550419 726575645 915420743 984041209 100006017 816565337 494167684 596000025 229691398 664815651 760170900 871468480 429502782 769790396 451266075 899856661 996983026 998617339 284166792 891412773 160980511 230341786 243749460 728556866 202753386 921673533 138708546 296534116 648020051 660608071 475127050 727068241 158482091 231636754 663403591 985904125 669764896 956128307 342624743 995015813 160154896 493124955 966944820 967457137 415312910 594370219 954447837 998337215 797890648 863853987 569832688 903103635 294338520 306047855 656865096 902891847 624743628 650266441 733043807 829551494 133323960 230291967 729264382 800122787 428018494 963432571 326704048 766925650 770351501 837530342 992039894 998667044 291582717 578881721 898297741 965375630 280014559 783434568 1381098 804803149 155999200 605198117 783353657 831809831 11604396 463738015 492307449 923853691 72263633 584992337 958785109 970909634 237479287 797385411 713977375 925401391 63985776 982065235 923063522 997169440 774795768 889038709 782766632 829533520 865368534 918984212 272532013 603712493 824370235 845500572 678002691 721479479 9752466 971621437 448817575 969306792 939671143 955858554 332005519 899070419 768388539 981981233 734137533 778389065 739245338 826795969 449556407 909022908 378292391 839290861 775261583 781489305 792177951 839022042 913185671 970791665 440930766 981872486 782190817 981906737 335733082 562208224 150821808 312375628 189818834 786060128 963417537 977391624 965069461 966588141 854101423 975952853 640729017 760550507 923659380 980136701 136710046 650587725 992227572 993583051 927729286 996242931 926618975 945025806 413825162 671499240 296834179 413782066 553894443 748829587 79843142 284032038 537473497 648796532 467094994 977077690 150675731 783564072 802781943 887976177 625098351 856630028 930052172 937192865 612780567 736959714 975194646 983067768 598083610 789167617 467555216 516917396 618943940 784391619 37194088 736037851 257543839 647833007 822249509 929207689 378150561 555478280 764609246 848454704 298749493 570701994 359709245 392430151 810513947 885082749 48520891 489178642 247235916 613419359 152737370 966539403 434291657 504079974 997811586 999728234 738307911 866979833 298129691 640346243 800999901 898060160 44679329 806505497 754057177 783697094 786379410 982822428 697520624 797930930 616784874 975022298 133532293 156982718 350236767 847722549 814634863 982303228 705686007 725425824 839230026 972203327 551044818 730177371 615158947 764507344 227445466 516477425 620862525 674272505 475427170 563964765 814913459 856896840 845030973 943632294 442848409 715167244 869905675 991070591 964743691 973807843 413253846 998966367 153672303 423190806 885366586 967681678 212448772 537910591 810868260 836849069 63535306 758452952 384695972 873162731 345130777 369947488 335087371 369258837 896762204 939149099 72199567 723713262 393324002 487561939 555737617 852062579 905678341 989882796 111401003 379621515 309060773 877271406 639900751 690575558 159657756 583995931 718085112 945773120 860929808 874846137 732552074 893957062 417586888 862613816 272971171 426593660 115499759 234719707 491618868 595064457 543023690 896249386 994469205 995983676 23561841 871650026 474537896 797687939 53914939 304842957 264885180 451262855 947677908 979834671 781640594 892207458 314910305 593060912 383036853 562292573 359808740 399809347 589663849 697427076 361538880 963614840 150491232 737982638 204695883 965120158 72355120 907289515 291976833 446218581 246228335 443511855 541767796 766722053 649746854 716976819 829215840 865023572 484411578 488293328 172145362 908563025 583840096 630840312 240765683 913833171 386884709 858486710 567967822 781158824 451453802 973415291 808565951 830180952 676798659 684568000 487728105 819502272 333133327 537593287 762823739 804222537 333652723 918189084 208781719 944043947 429059488 700295353 519928678 727791748 265119389 986596899 186139133 277801183 357977611 528827565 530160457 800416467 544016381 894797661 962173180 969459184 46094534 273649341 983761035 989144439 347892082 569222388 593394605 665729139 474190362 760806793 298535164 741468026 549025006 725750654 604702281 928959123 250127984 790958188 876290424 890475522 957022341 989909551 707662324 899131537 808417794 938550489 334355138 346954639 438153634 709842570 299847665 989259294 698052718 887524726 387740364 731482159 330058373 494876087 694333787 968596488 941719383 962304359 328325563 394232895 61814564 473854267 308271999 708056449 558255190 989983431 907886982 989848903 280484391 516131432 738993594 848193595 14066470 998197484 997865547 999547882 433285077 736096878 897760969 974619014 706008920 866989825 856211894 959229209 543171824 968781040 676359545 756520787 312966089 486748178 629190607 705601281 174996120 590584848 964256534 969597468 133165105 957997221 320128526 715642838 571821389 883122507 725369177 728960023 705802394 908625782 356412732 640367871 629483643 842965567 621171405 641011099 616449784 772534453 596003636 955685387 242670816 963032300 931023995 950033086 893219813 979204467 250896088 974535435 98886251 213918342 433351140 749740486 545343524 554763186 810366248 831113009 39758845 770098437 328356440 464797933 136837254 976653696 334850163 660542591 243093493 702680123 171296530 176341840 737684407 973137122 896832629 914200463 127085341 152264944 730280369 908375408 304857610 713298475 41566297 857793114 258045732 405065520 309711912 950779160 471288387 512935427 362798271 599482731 750423187 788133912 634376719 944897396 363237280 829336246 956311396 972723533 155027198 988405254 391845107 655478763 370477722 704508422 666412506 903624664 1273812 159991253 269454196 479400491 585806412 863735207 360358542 968159842 731509624 932506584 398338997 574064244 684268304 863581256 610039110 771855445 508816045 525257696 514533144 615863220 99970311 303105110 434979086 809993582 721603155 894787898 868340774 999000714 204266804 890484043 608353526 865038933 323262736 898239242 314613000 477413038 692341102 951190372 239655223 884589366 614694669 713961210 817763221 975421094 79079069 233448027 110265203 437339797 16264160 696190688 709118015 920771102 836982808 921972974 575326937 654608886 946064033 968095540 885584085 928330917 478087622 847262410 881007243 900844946 866651975 964218843 798984504 966029244 425114326 484016706 849947717 964201949 559917637 758106155 292437317 884590748 333791505 517231594 438964780 577241414 442071593 675379042 173585179 405394325 956691727 971043057 357097266 990816799 307852834 446607316 949462908 988165357 664143485 759747825 668722886 885761167 89588742 967251066 511031582 858995837 875704671 962849796 887247531 937027793 694630826 984834399 155522959 892124241 827734348 844079449 771703537 776830698 229105225 665343250 521013363 985531877 844973972 955474120 169572241 651288162 571961214 579725214 923279658 974005034 62127723 927731740 615918113 960218971 324259267 628436381 607438105 897734463 141763183 983443502 840034857 977515265 891121520 915881725 713327152 806113624 397994860 881115237 764962496 985782720 689657303 971967928 500315229 637319841 772445361 803288406 477579186 757309189 403917237 704587832 372579539 951306368 715874033 798611924 19436518 475812968 363642298 449301000 426893685 647143687 264772129 338797457 549064295 845311845 886622530 976564392 930244691 989507287 718864706 873875155 37139430 912643533 190724484 912667136 269681333 976513758 822364081 994624410 457331190 566791644 6040537 173753799 791234072 832472550 377184908 566711368 740339779 832193277 172305610 979827939 649791344 947855264 285512781 672556341 723238546 951193859 806643598 921417810 344691539 813987968 801206432 826526134 487425658 976699861 616824194 850694522 492150632 957910044 196503243 718311250 284269787 325776818 948581345 977327021 919991816 988861856 13040015 133860755 462131232 558602731 244905410 912304754 664482190 842143882 95881440 788429556 717146826 743986231 480872305 986698428 40518403 314352446 869577337 949572294 554749457 970436545 918371696 922606076 937776598 968107231 739223627 956899806 256340586 948790629 494530629 694259621 817462382 890751559 877943874 925617626 377965554 768539800 60574791 878048580 57098331 951295835 189957598 329688901 466459377 814430511 756143647 788011036 632596723 919665648 997476818 998059569 173596361 480960859 371692588 795442302 893362152 945979919 828848006 874373166 229735812 454127684 571617435 598216861 806146825 869677172 547734193 977776017 47252343 565588642 217841133 684738745 996651539 998815902 931552242 934096683 386642978 811024830 851492572 986646046 566251008 933062152 184892362 308076643 970858479 993993204 866480427 983829803 531729027 805965761 636809510 736986076 578570521 652107695 848660844 855757329 480968882 561755865 912253369 964027390 446073735 633068221 411330406 924242758 561900852 987340753 856330470 929851767 14054863 48410297 700722723 772138088 50278111 73159479 890378923 969081566 332365440 342140218 726417373 752801006 925233892 983195867 731478596 891602719 119275498 649259215 355892233 921346913 966833516 999839545 196438206 632907674 498419370 790631419 780280082 978829093 90904836 857340473 497335920 504707820 80111470 963712493 496076024 971996735 437651708 700026082 159039989 285955449 295281640 868998005 718918125 895138783 16965523 66206519 563548742 849127222 399943631 919676090 928169607 994437320 410911350 737284224 528235965 858389267 873632712 932302021 735266948 758613754 153773791 980259911 736315081 805761360 776686081 920469601 49112622 636481928 317441936 345516617 772789039 997618431 646413338 690069960 424293116 760988730 536883299 640330964 798885979 886691913 819456170 927698519 843406039 844811265 503066276 963342275 667055373 709193791 162903761 500833236 606970507 871813566 559551712 615915339 296274367 529110142 507995689 629683758 830319585 928907956 66850755 335097505 825548756 975181503 457990532 527342695 355689257 856586036 906895725 993667674 450706635 881535398 719544964 900678829 406232599 575317407 184954543 273104960 340957882 936204245 494143431 643609177 405689220 459423164 122649630 419600657 129355323 641352807 902031934 932756469 353136355 860642844 674756548 745599733 460940330 947786957 632983409 807776786 836037168 855308633 15055482 595697575 396240400 397290728 533527641 730513997 650300649 724506105 984531153 997764724 795817966 942163469 890120113 953143693 117199690 381642582 455761060 652153339 216016273 609870261 1891882 271543588 675826655 924971945 519911644 986473008 850150750 950096850 971790820 990549859 781017737 891536664 532443975 836629907 398003761 666618467 14229271 19433872 290921390 657169691 662128326 667687920 529746217 949964342 458562281 983482587 131943782 752872895 369258007 616089224 445057675 982681148 699640008 955296431 28841143 325457850 737444248 953665489 448879318 752641820 313197994 690685544 244991726 393408582 520394039 801659173 546980805 639177385 697669590 906881778 422941555 677395090 914297689 952040548 906779914 940287496 203669926 231359227 654821582 671074127 785642971 999461411 166571429 841522864 72323734 883446872 545547404 772831322 506132605 918141187 910540085 954622300 148775677 756336743 81100416 316523491 627719979 688094721 938766481 960022466 764584227 783860764 185403780 980045489 899448077 996415600 806273787 859053113 465247282 978016114 275774194 867134027 946113684 978779139 461890232 575777608 26607196 49819703 887843653 978879098 783260297 978521655 339362891 492907442 29964130 887431457 186548612 777451924 459993694 717606472 197257657 367206634 698251570 962797874 801430885 971549154 833155463 935817353 949163167 987361665 24097968 313372235 691273990 715939190 28853683 982829208 99312856 265279695 359844669 754092380 849727881 890988879 403544476 852072309 886767632 992748213 916517392 973714886 435379752 451510471 607828745 955059597 714165550 859248213 321486651 979794052 576446545 640092792 231953553 771286402 166250904 224638161 742296502 901242804 184897543 260076182 149227642 528385868 508719886 742469977 100611858 908184459 281523395 982168300 812309612 924631796 412624974 747095715 280268517 833803948 240703254 330136522 969842861 985776816 197841851 927892453 68985348 146326556 248485260 809369043 532196478 798677290 706393975 996332303 714374201 762771368 450242388 809073075 724787703 958249732 652350014 707238761 139351364 711078589 209740215 621770748 288504144 552305431 491757726 881577861 515875769 794988109 645983933 818156757 277394195 351753472 398159681 403048279 929230538 997777516 855848947 904331060 752976693 924961920 944437916 963885455 545519081 611833530 835256348 921720836 16967703 599710710 237510102 602790559 488078794 540239990 845943789 915303525 511710144 643824849 424846115 857229863 588259592 667115472 125489897 809533298 270900696 984926615 467235747 681172129 221997717 815444637 227292102 988285836 277354292 524664438 670271693 890182122 510818914 600048133 421734883 815234936 982945213 994946167 653274379 844120536 209428756 299185223 16649063 909743745 757353435 783370408 136648636 593784536 339699206 708821208 677295341 853499304 226668096 961901158 227175925 420319309 945498648 964278240 892082969 924319484 416786974 776647115 341164029 688650013 187687426 790637255 507768787 761539242 611767465 965684982 220540820 810416228 700879176 975985215 558450773 791938210 854698119 866541405 942848552 980231664 457154568 786372682 371873529 781824459 828121226 835860390 679891392 976270661 100111383 107021900 712572768 858446492 919769018 948990792 908030643 997802935 535023155 998878301 987595342 987773121 57761230 981549769 399700734 424306483 65383555 440333746 356447510 813069579 659464548 923025456 980306444 999340672 967085938 985396870 185633374 867339743 824402026 988285951 562409265 778596054 70999650 173878511 7466213 486456160 443229791 869493808 564702428 990819582 419328308 443803091 291689438 598057000 688486774 810756530 764172945 851964517 337374990 755113953 646033441 802111232 653563074 978142864 514208021 628250889 78145979 701464806 595618527 941089162 308614974 447356995 310076459 392635273 174355889 377082028 635662919 814023605 68798450 637860235 400200152 909134077 922020124 937214679 77220416 84524957 963512543 983338588 274051501 494470365 586502937 851156936 325229318 911706704 738640565 739055724 601298 182124819 125405976 565674594 550134565 794143358 902656639 958646972 918625205 975628282 462193781 572877344 606538666 962279672 864675701 904759371 52768606 116181265 269772031 983085365 423443021 604519499 313813503 989123335 739732829 907230237 387537735 971192068 261130968 582705456 791655644 837035016 575365717 660186655 336779156 785706590 728086410 904327829 816088583 946141871 143458132 995955086 696964944 786733867 564208459 795679829 613035692 816445123 688540251 910485340 857471023 999413640 706924369 873108309 132719162 230575872 723702246 951469097 417753600 999683856 380519284 701894059 611735882 794208192 969669368 985566284 684118453 921592782 979778028 980424076 895122444 916684391 13253954 665285334 463456957 915170737 527000075 534062884 589483405 633120722 454327819 982746322 426410638 521466655 787732562 827608357 987973338 999582458 376786840 676000744 582732331 647160025 447328578 671750343 222995768 561387990 356273376 473045533 382994659 679132167 963360259 984555460 165160174 360186264 889511502 987775400 79436179 593764105 906787703 996584955 858226059 898476530 691933776 747583128 951429327 967690092 600184330 619476416 527518465 912793503 691949960 991750896 738437618 775418402 517355746 768873927 335096855 963379166 602409668 618238787 34237975 960605076 471555396 969245196 993003667 997273362 485006238 525362606 16848150 479648808 897817103 972865724 979617231 996635593 351641104 766450378 608990361 747274738 709257234 948457261 874646382 909005276 162204729 859861930 863612170 937857483 75597457 956638055 868025269 999630798 599365677 651241391 186155291 681377290 471448738 974424742 26007939 509621500 406771938 530433354 459063470 713897112 561484903 754483116 171793765 791995150 940599702 987278182 998292899 998795954 878306709 892905684 893415149 945317671 49700356 261091522 667195712 879598115 25326736 323743797 982846079 991035343 403468606 636499257 540216786 550887580 886098173 952124884 39795467 558308069 816319473 928531679 418879656 425966879 147378649 186688242 762525462 783643000 581389500 827276342 814348613 934451340 222726627 550025931 604946166 714973741 734513651 977952466 688570715 710842589 409241896 686173797 97303161 732162500 911376739 986337280 317863717 450988674 589782143 800428602 469432781 921288504 502840721 627118040 343991148 732256402 561128008 909184573 956482783 980903149 582821606 888962517 832678638 909942241 310268365 898135078 228806801 785757995 594529067 597074116 192537491 649495858 209858564 578523009 497417695 867167709 865393638 908143742 387586397 817804778 57286342 673801305 604211507 683698203 563067063 726120309 782481890 932506955 767954914 801164439 91689534 587729812 760032519 796967619 992551797 995765075 4296049 777078151 363256954 617674049 673142306 928219421 123887476 283515119 816627157 935168103 569367742 820054682 403380921 675531870 169094464 283851058 441451059 891657328 846052493 904917990 210365155 364147014 866271633 960589550 11674424 521940466 442217170 695165486 211513744 610748936 228891313 244912690 839277828 993010863 334466000 473335425 599001439 736913409 205111816 721265975 994546067 996949924 634153332 770471711 652621563 737256867 553617563 928889318 334150730 907380928 579290347 788448287 690855281 913506801 108388211 558040941 972516993 985554744 866114933 908077591 242709429 911140540 776056852 976760034 860588766 987165134 840176527 907028578 247494182 488781175 341289747 681344440 785098579 992636657 276613548 728542180 529306340 547131275 320048221 506383532 958989865 969795476 395492475 732854199 737870899 898343522 477663703 771357402 201230105 304638205 825004561 892411337 817980577 979218188 800550784 877847763 334591616 728758836 705793795 992319440 779363446 926941537 56253450 325895324 184859663 308792996 874991363 888112121 590191270 858331196 998266791 999236043 60924845 772870563 835078586 900495017 817515485 994139557 411889256 575325308 570014900 606839977 462723554 471234448 723435154 900850136 573270517 865831220 23909454 634930915 443034682 542554768 172872486 505196645 373070230 616271207 62701876 490531350 310844233 835614419 427737414 627977842 145019856 374143505 489086225 981511416 798768287 957332650 714505216 785346837 587717411 871466691 326193949 558239568 687705374 958503788 939123873 995064669 389544726 778127064 365402484 602678152 6569373 762393302 77607710 289555077 994513533 996261368 159446693 491198850 269134689 526657810 120694197 468540781 414754597 809068132 830036467 962079663 805759014 861766327 391578358 511737008 507963470 567559145 871349472 887428866 582615817 678407818 874874145 964193594 50336867 345031967 199861161 953502301 380108244 540985641 184664616 326533475 19624331 818008941 928181855 949806406 337116459 597762423 777104882 888495925 928159952 991457715 382227487 434640115 668756685 787007106 242463762 605347711 796923170 925753448 696722837 721406685 583939254 845676926 513231839 563429178 148403327 357070951 476459913 678469035 731635520 909484825 663167841 874350952 554060602 884379602 793838929 949057147 570389836 948491527 142773469 550538553 928269191 937925994 721546079 988442937 428070196 598286478 844174357 965913602 26754094 632368720 280894469 583660322 482551938 771669859 168450630 168750202 82062241 326034512 64922117 132322880 956068307 994829170 57222178 706380145 475577979 551606006 705295886 732109098 659939554 939043619 837422325 875605374 961842227 991469897 279955486 781636006 618467267 874874929 898344037 918727468 203444217 402506896 317205252 678313242 33086395 224453847 403886922 614416955 960642595 963155290 556345100 964547542 113155863 496256232 496464318 507262775 177965443 895081338 618560682 646822838 58047839 890110365 117084799 709755591 520278797 588457311 622220192 811604949 174515684 863655589 543627430 989967928 400751599 718755987 896848353 963974842 968174355 994222279 264314033 679950453 407030398 415554229 57924925 175865373 412169069 434446968 963488955 983889288 103466698 435948923 880640783 890329585 116391813 666344781 290893057 455183014 812447722 933234301 579935589 954889270 217604697 722708863 604046413 607015187 205990292 979836232 409017414 660982187 345191669 708923574 885733897 990404706 537450348 703573270 362767423 612907182 302247536 967442716 505354033 968166188 664163983 759342335 967972372 986906473 284701786 285019116 976907835 993168906 666629721 791564254 827503476 828004146 577388381 942980213 659064806 755130231 381763878 393892392 843312603 947109446 635696472 700597692 356721735 778908650 431928716 655704215 465457194 745473387 926640444 951899592 504546781 759314732 320579332 574885393 391160209 781837849 544751034 599218383 589663213 878039603 720223881 998742565 876324033 958552585 178783889 391237716 322181297 394619748 563838699 963839962 725581219 904794340 446026033 772055231 270519356 890192480 279438474 454704525 795447986 930061184 571552144 838670327 806130978 909980727 941571716 958121541 170764289 614980546 900855143 992954995 961428714 982575332 449372329 613657967 739747155 932352541 599079191 746637743 301002231 907849846 460839898 469219151 951779991 957994416 260510464 987105765 359933082 822281180 39150717 540140986 12113099 463075321 993473771 994397424 989022673 990931091 283056876 676955118 361372333 899769267 312925629 978569340 901533273 909251642 836802826 995423631 44269389 550348103 172339127 488213793 609628782 777969890 751219957 966529399 788757147 804257032 897233347 946441505 169957851 356884162 839581755 930698326 552076287 649439391 514973017 703957407 316918319 977084393 376777080 502311604 103210527 819898889 191444756 222188747 512478128 826584448 765410971 796165041 103205269 139847385 681787076 864315620 193932938 975216419 737698913 981984493 437446907 925761962 878149156 927551523 291118147 996107018 766723427 927504947 126688273 201014886 553225636 768645186 161497897 613617368 302325602 890825504 606450036 971654725 839411915 952599990 442566814 667110347 656702491 998399420 299160547 831789686 697183854 778551008 146481863 940986988 965667388 972702003 455160859 980154702 340635296 342842280 646675292 886268582 285679061 647864967 184728138 245539210 817735341 882596623 796016035 982207231 565064140 865229125 201004281 953460646 464284348 961601641 886777099 968593014 632517961 736375952 733695373 766589436 970531846 992051675 830398473 847300348 525776269 815204297 907424998 909061798 660008537 804790319 286736871 339093057 704102007 826303385 294376828 679458206 78089639 954956298 249849998 730737202 851843550 871337562 948733258 949999496 23361812 196233767 312553101 823558803 610204243 898773525 84134707 600069175 639159623 691954404 158460972 479360634 202254506 839250016 12473703 124221692 535590999 601388827 406709529 482442697 183299656 319959724 15640915 339563173 659290605 850192826 596186532 701244744 180783197 349221201 415759747 473922398 817968571 882131808 902066150 984995593 317652227 388631215 512210727 913078131 194664728 351431503 521172722 699413504 484331009 850364742 634992420 976380094 108335151 296014205 320759515 658768095 340639510 431201794 398154387 700619452 342205452 838075849 53456460 147989522 9814275 929130295 297211054 610095118 478280843 527845931 450553525 927012337 513251731 891949336 896239832 985470401 775503569 936526109 918343265 950781251 832039498 848082841 824052175 834426718 436803666 483716094 870052665 990799752 749574748 762906773 232274449 357749463 545079771 843238245 557287389 596250474 335243965 761778117 491224506 930882882 83965551 889876052 957550316 968069754 30096060 38383460 424841946 621922553 435727023 692893773 461127295 923911412 782026458 883677481 714968769 807577341 939866890 986311997 369681229 668005571 913661130 973895237 130218423 403932024 10375870 866976608 526446375 681650541 852606502 855764740 513927950 839215548 719587695 957168625 508278231 822140013 435100550 733283658 983880116 988076282 959874811 965886990 962206252 987473765 655954838 772279421 946611744 971791095 523153503 571911023 221953356 936791055 923092903 938842798 513461232 963740242 265696949 813078788 199227906 868307145 778678883 793834960 929624544 998239242 692192240 766198671 217751364 294364784 125742203 157525096 26680913 75412468 831987123 938029373 702906687 990483284 720980686 813510203 111912181 429919563 707171424 824102803 165991973 687259860 787897574 937879632 530825779 581196768 395819967 510725758 314441905 470531747 14490040 91091248 571603041 791754797 495647892 769119395 486786240 640307986 160920909 373816981 532259988 921533490 642489444 809356347 630216775 736672562 770846019 944393538 673995147 700501320 303140073 464295200 58751751 500422484 170208087 547626280 954648427 961296285 701795473 935462832 244170178 895406160 733364318 972581359 558198070 639908572 569929235 606412524 415658883 708205686 605522954 699717082 108489479 827566201 949561205 972358334 453336886 792500158 914918214 943209810 944374487 958806089 329045900 862035871 429316475 777939854 138095719 245620030 102918781 208261196 335702852 945306126 44470039 603188977 554475531 940081595 675740921 781289677 920137539 939931461 72653651 123332063 951925854 956178833 971204325 984756577 184012656 527234618 424641133 676263293 392677970 717673679 738572735 986833793 488979765 525234549 48700875 711120807 588549475 702120322 587069796 985036824 185649661 403343818 413324683 964879434 340815034 702587113 47883667 101305051 242878496 609124781 561747649 692353099 912428138 963106082 232568731 980833374 634688118 677198390 286484485 418666634 63092447 185252470 693638634 720909485 149546052 620277725 491739447 738366722 605219400 954602682 528791460 966163461 880454735 944318688 444733664 693145444 883631946 961861707 625909559 812935295 969836298 983553811 514087370 637402755 450720500 776547510 100627475 536545583 323479566 883080551 980521673 989375648 127557832 358247179 609456188 835175754 435971790 514829719 303548751 972019338 964157154 999829104 301528536 662204355 158407103 836971012 48133372 142154868 646254870 844069402 300087496 610848345 664393036 993343972 583444035 981359025 387491327 646189287 693887250 694629675 187076886 466367968 899972941 979841466 393715432 992695414 590709012 662055452 902702130 934233418 970349141 988196021 663039309 998791963 395850016 728837941 171056156 642345285 48813909 92284514 278822156 767927375 403347319 595483012 554636305 934438742 967427108 982728697 74053282 305517409 133627198 709816411 205880456 951311412 565290992 976664154 67906668 862698134 827852 942962500 783416078 977527987 458463010 792109766 957323279 967261066 994763063 996427050 655597940 772968202 579738363 696455538 91163743 526832120 493790625 655387696 742377968 921134649 487086868 786294538 898028815 914686184 857579444 977995651 112530140 226776009 428334738 543462432 508788035 583660161 719197516 974172126 244023290 533530385 21787092 539390876 707703479 979132744 731985540 982606312 939078143 987935772 319226892 888896541 924882809 992777664 408760581 835303690 954549893 970227015 285236819 670071836 56654679 309968965 933576226 963208288 541769712 805359300 651222485 855849256 600409096 937346146 385916506 491564263 803402267 814719144 699460762 847356947 187804083 527460563 85277268 741182039 917668252 947950751 797984682 985502817 180350932 896665730 341445269 544747048 233165336 577688208 612691661 775771192 525943362 993873120 357593693 721315726 979554403 984729501 251922596 827525830 483446257 493929422 696722381 742575762 712274993 847937879 289075890 555044684 473003169 746927028 495086228 595975320 740102751 901629240 608325228 749150731 294309817 855924349 560744301 813506727 886609028 946686170 566411666 601793686 622100127 951035729 343929284 495409114 506566574 782896552 972540412 977695168 622054632 760637316 271470420 731716952 431574566 641821554 996841920 997489197 477456295 797846596 775508189 867928888 711269499 951612850 61733604 585606349 696807055 791925322 525307258 823769889 324526040 631847709 979406225 981668183 523510909 776175876 260719652 362605996 622784273 787962596 929071679 948842309 149327909 538994955 693992866 698577236 348766541 802368345 269987571 499261865 176498332 464241427 261453810 310881552 617733062 700504898 558591058 839050817 628242071 870820266 601195721 777169511 699199977 961436986 709747059 790947484 361176637 815375049 876185107 965916759 181762927 795984564 799623814 852865041 363826033 845333763 124232651 136935555 617828057 948365764 638769027 799943860 276447492 284829676 245051999 276873783 216138410 648675360 215703386 598179036 948831252 996267686 321356324 344280977 176310095 294614502 326588641 997043973 891774615 951144563 933057330 968255609 719260732 843433165 338325535 578726703 778590972 827978394 505076984 876975951 138175528 225734180 549187118 956325731 859881126 877980429 24198878 329159052 338387324 449409504 304727324 329487786 201441875 622437131 266756249 321940356 302748344 447641907 877980633 982079668 309771725 394085867 775871049 878222670 533602325 547279254 279899113 381265478 470331913 862739625 406122956 761083885 619347265 702705569 315182816 499982330 901345001 966282405 489071843 573733119 597629975 870363692 731293273 956075346 571920189 702985473 982270945 988107337 900922872 979555676 9143574 881330406 245495557 579423787 113676803 947679430 86957537 446700795 284401774 494586139 852074901 858932490 834075423 971903298 71771133 958953460 51414322 240939283 758876522 835820054 509538297 943638048 749737892 849637030 389708481 421508040 596685018 614796415 297143986 876754344 549104869 947924594 177548364 186134560 937262697 962181826 45446277 777129926 162481637 916104477 523879124 626706487 236593284 449025926 211575122 778804370 999140828 999440167 351867951 878730735 502664468 958130383 761655143 985541766 82004312 800919469 927582115 944023787 357316810 721721949 686551243 722147534 940394441 983869666 816302482 964114260 849978219 908606751 611165831 827906458 516623789 944044922 565298623 795478548 369570603 472147529 795451691 825047033 740539122 983240957 573448689 965526436 472230565 794543003 957480050 957604283 364439935 833163787 465796674 757545791 425132421 705049854 143710135 927329045 316319236 874120626 986151228 993783441 815397533 918767833 593871087 732230850 321194176 539347063 656924028 737404992 392924728 589849963 558135549 894997887 586063870 924538062 829651645 973876987 635543345 828497616 124187519 663138374 697057892 957947667 165743589 563313189 697853953 948563445 142941577 894095160 351782189 934092575 744482572 751677899 238783287 746548281 817110717 859886205 967805795 996817178 410319752 910789019 249410998 856793946 452317922 685356460 60143125 207347396 144036180 950854434 701033201 932059085 401834559 995716414 531413524 737954338 571732542 614391590 34602743 318510584 416129990 644277478 165823058 372409199 29223674 176128227 688142373 883654518 310948457 585529918 620297252 977383088 705041465 709945122 935573338 957389631 106508586 449845508 799491923 950630507 603845692 940039182 795181468 921206317 265195249 333005505 905758990 982071795 163763204 311370052 596515715 743435206 55340322 729364670 820830689 854445636 946288602 977142984 773052493 833522188 759829562 841230464 321650432 549948191 957035374 985690243 702171053 842002711 245243928 953316757 448499688 523423336 618362906 833568510 874080897 907033970 265890716 540591051 322804951 657666835 798648141 923313883 624617993 771757511 213082083 969955686 885258228 972321246 106867056 173889787 902943094 904835951 409962866 783874822 625919028 752527272 398197894 613132519 721474649 740129958 339644519 694879297 913846810 935103802 120593464 546723781 608797124 651252388 474398726 859430392 111497526 127488164 513807051 770231884 59427512 386550244 602326513 801299243 838191341 965926656 813162429 823641085 130569547 861639045 534093409 687099074 85725238 251653861 870238762 894522593 622173880 829584791 112940480 494605483 121082163 792123699 856757263 965840554 766361722 985157426 599136413 879745240 385832438 859207976 754235491 935253929 615720131 860268101 220072932 328166474 560377215 663384178 459679517 563883139 985462606 995225323 739732863 883174139 319483882 729249269 437339552 791780355 920166013 935866241 714344519 878247350 687692264 789222089 102160160 372456879 229020659 323820991 840199363 908311772 59130625 869902171 279411289 990001014 486407097 680664146 975773567 975830995 898700437 903583348 804523570 923887128 612910633 850969356 164372579 304214229 138702323 647165350 952428702 959399963 834197445 986667722 355683327 984365657 966270632 992327832 481491552 962741034 168782568 967981974 525224344 952392280 495765298 619219392 110830639 430190916 110895797 913707456 128758496 135692179 311205356 531116053 427175253 455960051 324479149 549675739 415747003 595001193 103834459 156113965 175402942 835186891 659505453 816307985 580188882 701609669 997934388 999238179 855832466 986459668 761319926 901374548 557503619 767143162 419796903 520779821 145663208 727354749 388522502 742698587 740754057 995967616 314821624 709157936 530067977 714776393 761193154 985924890 507935684 650625457 998255385 999985955 312648675 461546439 570756352 928816185 8937024 556929531 473383114 651801259 436148675 986279330 328689157 528291540 360468792 730668069 921869319 941971030 962147912 980058297 640829698 780456572 73045069 967849449 852030626 951367628 608648336 835802865 366288167 552986231 214650567 619594193 298683862 644016867 677038641 719859796 608869379 883228586 483649723 787930664 751081976 757746668 887975681 973125886 565333529 850744300 256077868 509418731 838676608 993891897 103043835 778327580 887817604 941238272 497823190 657311042 956467224 967046067 102388295 450111971 259027152 894937194 256346228 311259538 748180472 776685430 973118018 997604698 275911859 732508178 936252511 976407560 915786991 965155817 858098604 877858286 882921159 998920075 771737174 862294259 751368653 877373661 633612271 771014546 457969204 626100437 804972645 989296801 318528149 468339020 996128440 997254235 72339114 638674034 955020899 982881043 775262571 800112779 208364454 851005815 270747521 893962218 445700458 492358631 236469390 947149678 674177676 953326260 2860813 480550059 791611258 882470915 914251286 934976381 154983369 992071981 421550220 547848031 935124504 992355909 502824418 643199785 764519414 963940624 91594308 620054150 7033779 897870454 663970590 680941687 858118719 983407977 825118102 878936124 456138750 649203215 223979208 870771896 471075544 628692054 414389364 496269305 153369584 686835598 110662460 826638626 248613081 487326424 96079661 269233736 542317759 608763335 942428280 989197042 289643762 700233554 858146034 923792032 153047521 507716070 727323656 837218708 866834886 868603562 311356794 854092546 833031411 946933568 223221508 817765842 969596119 981947510 232065025 645911925 732770494 844930420 338251892 399933791 98274381 285691674 205578374 514933163 677320879 775963201 710793630 767797653 931076204 935680591 513110007 939809406 96994600 326454631 373756229 484973896 265156498 406049574 587973870 873040091 476912023 962688595 292960370 647524165 143828875 301005214 22592731 275431636 368079310 554992707 597686320 660199331 818856306 976464795 985697005 988918689 416663795 665709297 979965723 999067965 382361396 445223708 956866147 993779889 281159042 354491473 385165850 840649595 536686217 637890360 571662752 832562707 962690348 995655081 38104108 559442747 987952228 988922792 105881589 114533919 2288459 403013568 501120996 718162362 871413596 900157134 181546930 615688077 785385450 932144398 339595898 689268538 921288578 955602810 989108823 997824980 228994749 669717960 875452789 895633455 377499607 436901128 13265602 808093972 87478898 450741521 344164240 929559861 76432777 512797369 806469811 891405397 938272526 967397136 602729019 832940847 499062891 729998749 575333389 664860197 335619827 361934641 875854433 931992187 216680063 912401542 599226848 654377054 412270524 566897539 539113210 720480874 145244815 597804266 621604640 892564006 415521017 689675253 31112889 393480221 483093837 903775984 535558091 834951601 577781950 847436415 875562569 987282273 304524192 894806865 133848766 878013589 403555009 721995961 862097077 942935568 419117078 509517700 597343034 614531280 793847573 953744590 505138140 747832804 295424270 670967929 103641777 231140526 893324149 929064543 261838559 888610225 423602313 912919881 461316108 754764287 561950113 711508422 98856492 228196513 223693072 832454241 688503043 906628602 369185514 773677386 540396859 717363241 89281379 333457363 722550162 780469483 940950590 971728907 676480363 692406848 69524270 450609296 695013452 863267688 655152126 954004096 235565501 443069314 348073507 568718990 148269421 271831570 799961097 852529788 559123302 983999312 519833731 732774045 470768820 804163995 529397744 893443552 681249008 978931476 163063732 606831995 619861174 663135825 84519049 162707958 954899245 993299319 29226602 935982476 136475642 350573951 909433473 993904516 912606143 934004196 252713953 713476021 374490705 927066045 492545133 643579293 13810488 993680944 524856609 644252481 422111238 502360258 107597435 417889262 464750863 596344898 926319458 947809675 480038518 882288340 852897932 881158596 937816136 965030471 765707725 834022285 240025607 858513272 704634946 944750956 626619018 651120596 911319716 933000406 994080926 999435064 206592029 914080723 851854414 886577625 887421999 964504739 669993545 744622762 921410900 926232715 745573306 915526376 608736452 917992238 848137434 981332654 254010374 541179397 637790712 692307481 268667796 599814496 775161480 801213293 176607689 920362459 869569312 906874312 537729304 688088009 789427973 878833192 900409554 908570504 45390323 143093012 99557932 927700696 324584277 419760817 554835776 618530792 316584774 484908799 236365227 873255700 616160320 843558606 101584169 927084304 990541321 998582729 114822114 896800377 303594639 484365360 591601293 981619624 831325511 976670364 814528006 917090058 778845824 791898801 781925781 901542459 990143489 993096811 953692614 983264093 968638525 998007309 684361016 808367896 634069046 643300899 419137536 757747780 29026799 236475643 200605930 774869127 63378720 784971274 789765271 953084778 662783746 843192619 818366013 838979331 956562494 978216108 293145969 925036208 960411464 982990080 117905971 418828366 828951485 975434875 661212101 915882376 208745331 872288508 616093500 856616110 774379440 964145528 596659511 840027962 803429289 946958952 27239030 772848329 169336279 411514018 373697849 971955919 265511850 310827340 101856056 331024100 631548549 739105371 437857397 628937207 581153474 933421630 394546746 959864492 829828311 888788990 869811302 928810917 563190307 685290682 161701982 751920245 757132780 891276622 724685686 849101216 190176032 580843774 878129585 965506959 134105949 511068364 425924469 584626802 787592671 940029830 240617597 249941031 751214018 840148469 924596614 972095952 580436799 620408270 253868826 826108281 308405729 652181789 250631119 931980548 206440427 473555913 80875672 678121057 643707580 990817996 920129453 974077922 714419500 819689645 844561300 979602531 192480161 502580863 555848700 707717679 953607354 964920259 951414140 986404700 296947075 315162558 417618956 934983712 264928495 783284398 408483931 683127485 539522959 666529187 301733323 677498681 62137406 464253850 668698979 671286855 674541333 989129785 135358937 625023272 684004768 927546906 748759570 851107947 291566838 723739141 955909140 975367385 481162921 866040362 366743466 786204333 930694123 943140948 929248822 998019790 988672069 998951634 178225388 489304351 753209685 882620254 182689790 934228772 751587337 988758043 486746680 627302426 566571941 647706751 721087201 892363117 821266987 939781188 637029151 981096653 476412729 877516091 931975878 980799583 567432292 755503207 114123386 183020445 457509041 969303069 660088093 858536265 972527284 973852047 509778473 596067378 263011184 491765169 865476203 950976030 76575316 868371943 139593516 815196914 823322480 823756161 906988490 919225211 867876857 981333717 928684534 947392803 168460611 593423253 726319159 775088351 618586961 694055070 118026535 382306298 892868972 921693651 94825714 568683918 364575880 589003250 389996133 832272243 540248840 811511886 516384791 676620259 983100451 993171826 133550658 731403919 779015169 860752291 174277543 738505656 263913507 301838140 200582703 608449403 409915024 634517091 27075379 843732206 540821703 830250158 206393027 355011579 880956430 960410435 679159313 909059107 865130754 868370424 46003198 838603701 795014578 833015157 707331940 835929875 286944684 901059154 811218377 830874846 925446003 966627578 736750317 993757349 124618485 623502854 983563326 994381794 772881643 823024886 956980384 968510331 187683767 884291600 54721385 466010244 672799278 714649993 653622115 825456167 67529151 924680670 357115722 553264879 938727 921104751 543908124 753610485 520576206 944818881 174683471 187760615 677255964 781245176 810706150 828783749 67570838 568809798 990893653 997524908 15881902 655613201 611240111 911016774 706078340 815753239 424161641 664541826 969185539 983050881 578650652 715806746 26629711 388196775 704390930 858125585 297694971 937917523 575430235 805317501 104099392 584283591 775257758 928969368 87473736 809708445 629352333 858217195 693071555 967910330 805880924 947196179 387388241 907247369 385882446 710769039 433805742 536379999 537753571 759713789 689712234 846113385 5572405 105832851 5360310 425227402 398789424 998789019 872388188 994165467 216551555 780768918 59270073 675886744 172066788 362853566 750924556 804821948 91971433 307537745 820676524 825614749 658263253 782421758 559596756 803342743 208825156 704897365 166897609 825823058 272340422 272972587 762253009 791348102 726869350 748682879 751200182 907234344 88248865 867505804 943515705 987848645 158640197 364650106 688570113 978790598 26472261 511156192 421935311 701109817 174693738 850609485 514099229 617382713 543199665 893226262 336580827 344547599 466730761 791380637 559582391 689783376 985360142 987263031 261362515 993341146 42086670 584748119 614025001 982552914 865208701 986394546 899906059 942133850 421635501 703115384 812952339 950051363 519799930 676578727 618906843 941175203 565250637 581376206 863386702 938336202 627509270 927600996 38697253 972203903 461564112 463338711 458739054 472383849 813769255 901730258 955019360 970163775 484524091 800421648 510793378 716955661 613789766 856611399 3811551 586769700 403667298 886181465 926242204 995086420 439114412 840738257 314218143 953945302 430816204 619402753 104846635 146393576 409256769 660866473 813138289 972615832 861490022 883950917 656940095 962719639 773315097 797468503 961242182 997187486 762392872 821435607 627980863 756052402 549318791 623309415 332075752 980048228 913823280 952998394 648936057 756195762 131204662 207019003 65476573 816731352 742631165 862109496 101856158 644861707 59010297 706135649 422988092 723449975 121345802 160485123 348032199 812907028 579716031 863234589 452372287 710789475 750528728 997683141 822596003 888825172 258392553 464703525 946674628 958824423 995436243 996773742 413102574 744414513 205057872 459197426 309176369 998320656 104590058 859448103 281234250 596849225 918671276 920156453 984369382 986897095 949683417 997368790 254420357 723998695 56773008 869135368 581459386 752280235 134824979 558220289 497371157 702945190 204941148 690745443 237996788 922891303 143830717 875187213 552336718 866957382 417428710 897351106 784784912 912914026 898305813 916859349 698208331 913186011 707655341 837662483 555053661 762537487 156399440 823888129 340608206 778985370 246730825 911922980 916503536 961981397 369216668 750910481 149847459 429101314 855191138 998186222 718660410 861836083 609373984 718989104 654281648 880033441 421429270 960868399 354415573 830551959 468333878 601001416 405664489 858174836 622989962 817297653 814305971 833623223 153770428 223382528 575076933 888053754 220590483 625279866 994341939 999003029 97729228 929543333 824721008 887971577 449523347 910256907 531919655 811825922 550239700 714310077 902776827 992398637 954467754 954970198 728547617 960652256 801964010 873122568 587536969 724645697 723414881 806429535 64093749 94334254 209356594 658954759 701436893 876604721 366607577 629828913 52545824 306709243 514769432 549406306 19735534 228239812 420269184 661664046 306940463 503093438 408141433 708052944 27244087 894661676 506764981 961713923 440238417 444938194 546828177 578050839 903898841 978129823 556494457 606217088 407402128 934888126 652491829 711613441 99122486 799101739 299585296 754780094 354442938 757933151 810765938 989005583 230400736 801337131 575098611 803098289 380635297 881771344 400792648 887558311 985825884 999472362 958078033 986438762 85826819 912491208 495615062 802701847 803061561 812293376 18837891 78683621 638970552 796734625 280892606 928679687 44992320 535192816 139623946 617893734 193144285 365265609 882629377 930804149 518897279 811892630 878367586 923758298 552680595 946882347 995846409 998637587 846083379 956623317 638149070 670700574 246931364 535542955 397994508 862754478 734760806 926237184 86737542 371376703 426347747 997834201 193390504 770671900 71643001 752698922 56608176 646792354 179429017 482149609 377120453 613345530 291061548 713697462 341600700 374260324 345588589 989795251 156448725 208675614 794739223 831657195 278117467 436068118 610292990 866920666 766257842 782896555 63561512 354621511 834533603 893251415 51392818 742021102 948779289 975274663 121825157 653790783 21105699 552028333 950138394 993551567 632531354 921602271 767112254 889616777 398295404 693694371 655168206 966509366 167759151 599118860 493760060 851098347 863595950 976549488 749805303 930342044 5192552 967204860 3422248 413412864 556039233 796330059 560361121 714961883 607330416 649111861 857863351 983426723 550131984 913442814 541681613 550476864 589791329 650763771 176942342 246726667 470867821 959288967 636924480 995594187 303501730 464483605 497976245 705547862 506690343 564993897 624858374 853472279 251791887 844561040 999577816 999701331 527974839 926645168 75671773 900751358 67214708 747406677 335142225 493521341 138708808 965464776 197054279 926818870 395808394 412803507 669010512 987409982 842524377 999350942 364390975 649122731 135220111 601322234 894782666 936141948 395134250 481243345 911770684 981866750 76768329 869217248 295419219 475503828 791644161 936057471 328407427 472127633 538658663 648738776 937320576 945890389 178274744 518376783 977977281 993301910 918026271 981273351 225725856 698746904 803859241 911143404 804964864 895719090 328885500 337979623 846373717 954964605 933432450 951359761 914821561 975045402 373171899 411791012 293619792 902929812 642492518 677349054 630713933 873451281 689414531 721501512 862842129 977306216 721960890 917204728 513619321 582692503 754084354 874155452 490139574 681449133 36246938 599376236 691012296 985183189 291349490 971048036 7759515 576712550 781505205 918754668 93948433 193619690 472593553 680364179 351273569 470403484 279920711 917392997 470440237 583667520 374413035 390168821 972389325 987837203 885248104 892183334 964412252 965357062 451742778 984660523 199378768 949919421 726099161 949610224 944072823 969266519 512103636 600212363 820929383 968926695 24777096 115090625 328039943 879606069 874344910 990677489 271918526 835339661 240595018 915620301 86990337 382742351 500240188 941717972 712262425 739071750 767377510 967819788 985919093 991356711 378970996 872821003 744414538 848037737 38563376 505951363 509415780 959758697 920177850 974436883 447534108 593037886 724511360 771923237 642409910 974816065 235112370 811136121 993685140 997765414 574231165 827821707 739355778 814050578 588179222 949772296 757945924 984636546 158568558 936391626 876115856 958723293 698347718 979091104 71151807 943108301 740296927 763468811 514389205 664633087 963227515 987179968 549069661 766982480 686142596 992364220 338422187 947939439 860200403 953753578 182645526 569760464 751994670 898815232 859191744 978316577 624569161 766999616 796342383 936007110 557585600 619544538 218899777 709880826 823554516 857316498 872442671 905145010 955067677 977773870 907205670 989049659 689779223 800901827 299515242 805434923 797705305 915723756 115066043 341566591 671448915 714216144 351486698 735489330 278552783 387786418 348793848 781967490 284378279 685680969 403599535 484358826 526145988 675128202 909176115 951543085 315206669 798039974 694462545 832422897 300144873 983256128 686181485 929793562 118771553 468577025 892311831 893211255 114452760 572029505 276747873 337521891 251846035 868244125 440278105 632746776 761486740 857340796 366707654 513575481 157604534 737643080 779239909 896338428 956736743 969777986 130061393 484430591 613220766 884714877 853771456 925531262 285511078 877511031 672879736 780748007 765430936 868004064 961123938 979298535 944050141 963374790 840434970 977024321 21978863 270259822 765778768 996251315 708619939 910140999 709493239 993779806 622768873 991912048 240965632 378452863 851916828 991810729 936018002 964180642 869888655 996470755 749326277 852899708 163541342 825276740 818652718 898156373 13538952 15031023 949588761 978888326 30794664 277399371 882961250 896260884 171346554 895519396 105300199 502163462 804062295 957724521 750894479 949934094 648261119 967175622 109747824 604060162 732798660 947822685 779323872 841736905 295470340 508759676 63679561 191518278 461701828 715331202 590188475 806555709 432467591 513215029 481995359 491350782 567812898 934514364 922589856 926233171 433238722 462628132 204946944 684489871 182655455 643264658 594600213 908008887 646859580 716795843 112146648 868840945 540034101 813835224 195228554 712520546 977010007 988699352 613810894 953416476 127723324 812227270 665047721 762294229 207090654 848644642 613557237 752601573 710320666 982921163 159900903 712334556 181009449 770794180 825491839 834410845 41174789 708767144 540798413 577211436 263901565 338187644 137531392 574925391 15075904 547538364 263681784 478277891 380731123 762098790 57841396 301694743 219892472 801297176 419338763 443073246 447318614 980220358 13934586 847756470 816647891 854395455 899685092 949407617 751892878 999169117 383957605 482834142 674462235 746626014 383625039 584834007 534467789 797066580 358260793 657829247 248864686 491946338 238728089 347819507 831295743 966291410 402546492 478765347 510780327 794329101 874965997 962432022 614548531 928862916 733389389 868697449 983998934 996904780 156175691 445681119 775954429 969737672 123509053 211490020 298591775 438536920 288202466 568417253 308541792 788672928 362142447 415421414 825335596 857101094 865929089 950992416 968540690 989290009 44836861 391399192 9135239 403255197 466506061 655926400 218476155 898315627 552523229 921984403 914243958 934132255 933785361 957707298 854097974 979339997 435305808 457411356 475901699 487666970 529924711 552956863 918650424 966798287 206395813 765767864 432075003 942974276 953805672 975399180 69441837 934385438 854760379 872160944 50127062 703814380 30587204 281708211 46049391 98414194 206749834 250087495 721020062 982047899 264704251 630465907 186366985 435301614 844895384 853889441 822695411 893163221 29014883 177815185 854110184 991445143 394276517 983905045 795131849 915866399 921741654 966202526 919512417 979778076 492094907 586030796 940690291 974462965 706648768 889466320 915720191 984936651 858395689 876745690 246695298 273144932 115768265 314100796 336962699 967041230 334975313 565492156 240593359 903923903 764807502 945551207 381922833 492358679 277192894 378104712 53881973 146931217 610986236 690979752 796417065 901186243 708079011 811431646 328639956 779948510 822296400 846863472 683925694 685741002 831189245 933122854 132272691 138338195 381447197 652499849 719846285 962555246 236704804 255795311 346383833 364905175 327434125 358143642 342470843 779387925 122523904 771786134 531186315 626563088 798402930 870579518 703813677 989783340 587966724 808360679 245241078 797157439 106521246 189834575 71898660 956773986 204993425 437127508 703650566 752227951 908893171 960882802 144412872 621246824 443199013 716370003 362169427 670768355 644774870 889798969 81423817 905916682 281516515 497971614 290003152 468123548 819023063 872118061 979023586 994407850 869389483 902262089 474925752 877771538 855260265 864304011 621674664 746732470 46847660 336805751 947827540 987871985 337516756 386271987 889537373 997131824 900554640 911929597 924963094 927674231 782457312 817939347 52372192 542257067 409488437 522656330 764027557 912099322 198644141 959530661 857898099 911155101 869629695 924363466 826533072 828098683 311274357 471712387 460891093 916753639 441075848 851322757 842373365 970434717 641138311 715727416 773836086 926035045 291143397 598994402 749540983 938468845 894774691 937590592 433841244 642437161 385715713 914888357 975890071 983461739 688093154 876560838 789704896 886781517 521961682 812387631 625118779 837449164 21034676 640969829 388306205 915317361 364081784 672493995 837078542 855535486 845064178 872870852 639759776 933048941 734618893 922739527 693602902 794830953 469076476 677823985 484135128 772107902 731521783 851162870 903872749 946245147 761197883 834337186 298569944 851380862 123425323 918389629 975094009 985080008 782132657 971025634 22170835 419709668 368885572 828091944 533446920 607171684 568804699 588382705 892730149 895019072 67668790 140965703 121028295 712007582 368932705 944898318 42548757 508319516 576000232 933083828 826492599 859469517 308705761 385096497 114893214 317516253 663190132 856677482 30387945 787077577 551180284 957202125 140212132 276283003 329682355 886887453 774781667 860405711 226494558 345928063 716049042 749662616 832147752 971464664 107172541 362873361 80557122 85087246 897769125 996145032 721969404 758136082 861666300 871927886 417570436 525890331 152060101 669111260 684081609 993444261 770695202 947648245 779332830 833633896 294792369 339972198 838603696 938063948 212399907 478478123 604905119 703969759 296140655 394086156 34170536 477212766 376242735 783978027 910955694 981681921 530775153 646066897 535352073 950317470 377626697 389833447 158055324 735712484 341827569 794281797 685038213 890025504 647180090 997168440 206872031 724630277 344205421 802499420 186250959 611537763 554955405 824495299 71694979 894314554 560986222 713240465 926360012 955237543 507588841 785634604 863288342 935598087 793629746 852474062 212071117 224517500 771505522 957441939 303634314 685743245 262955876 711330634 137458091 655752544 613970059 723343435 668413577 739076471 147946599 563577721 195793281 947090065 60041151 253798821 384421697 986501602 594725400 938424391 382438831 912619883 360104267 909550537 325892976 831687795 508097465 632103238 177830603 750144214 405899136 763416654 717730427 968500652 621540502 730844734 454109701 909119486 523989358 534042948 579402310 893362220 750429093 789452651 128282004 988972323 132491570 234136758 397429412 759772621 260374966 472933233 364576024 604249139 591581916 810634911 144147089 666427552 859530906 891219863 917317004 954802793 923734667 931896228 773000411 795618244 193839286 493339213 135752208 700520270 764628484 913336999 368910037 565570422 14584953 182622404 196894951 576516182 819377699 918267638 200638953 311694142 746874700 940875514 168131041 384055902 48708181 670273630 165177673 599597238 742112666 850972526 527463380 801815141 787631862 858770287 259156888 728901881 241859725 866712572 679669077 730021271 927480540 962333941 770352913 943049256 94434791 183352840 927748550 994629326 163086602 562183414 372274830 520414422 626568423 796801886 157822798 995664687 787707591 798202961 97228431 330205133 765898253 779526463 75111709 844189925 135774367 840687559 181487120 734100540 908920035 969672491 177582324 288686670 146316451 606912894 851407917 874418938 965969285 998684049 740578262 754200737 326854417 990880961 602360585 678808413 588441144 812792654 863568627 930584414 103726532 607899554 456806860 730091683 48588568 851859563 727777291 760792629 168135811 611715890 130431749 587380778 880388947 953299965 21734031 752467031 974868279 999807166 411731274 677121711 733430875 890417266 700179021 974571631 517109836 991804043 682146447 720629980 707408908 874042734 665536780 964904533 25923623 775076345 695438031 781761561 840348504 928313321 126021922 641605737 685956019 754744579 277999234 445844324 566018984 652379743 270123351 582823675 845301129 947589871 220042939 644944163 630692952 852429983 406721246 914716718 55521769 816217879 548313920 930551739 445789088 582596163 661832015 888852006 858119827 871114379 97153933 267100194 454159776 592249489 328317921 635134603 329894755 826054266 662814034 812999953 511310915 530754415 255142332 607535546 227437874 375768454 53591980 427803884 674656017 903821410 926261335 972035343 280517824 786473820 7092265 872531458 205544983 954970379 247981708 902224975 918538966 986761850 793271744 934998376 855423347 869924143 301410905 386129105 177760704 898883635 296549511 821030331 864453416 999886409 357034145 433293494 986120204 986629197 848750331 959639779 208710400 827738974 104248474 335098677 696206442 848877645 571979414 583776175 834106718 918401571 286561850 766800135 710388405 914055687 396792241 465983262 132175446 385273469 520590195 711818973 949732258 991439644 609535806 864000219 292226805 314824917 409371077 848525657 308947685 379196393 468498924 797859937 169571354 415509469 947523095 975030128 300019539 364098305 36351552 943397821 987522040 994234403 527997348 916097499 533824922 838595526 165187810 756104832 103431428 302966709 98717169 525075760 67175448 464206292 797381425 992503329 26173212 187985788 524460195 978300363 576100417 682754064 584062833 586436410 328300402 580940446 901093988 950325364 632349051 962771325 78637699 357531574 317701003 749022619 211939999 418696243 163786087 679248557 90645416 648884821 10737966 539529733 153953021 238981691 49395480 991863402 13794022 737254719 866411731 968803440 332621390 688283651 220552186 966612661 786997479 929876468 192952321 633348875 925760368 953299801 344313073 462654602 270170421 463356549 169355019 890155713 574040023 709612303 556418770 676422951 311421001 412142876 914896434 974248018 358454981 774184333 94444434 905113524 184587375 900936149 962687555 964541600 228718859 600754113 681396125 808137388 96957499 318310220 81094777 224881590 256479534 990431073 106792843 772267673 149010877 379766442 569712624 935537334 839109889 880965416 766193785 810996401 588734548 665781111 897995013 980644148 979804265 994899215 661626794 782440124 372796944 771126833 447436155 534135700 358791596 388673579 123873911 373146740 900839361 910697092 179753236 251155935 669989296 983975211 817894883 918468546 684001501 783219385 885165460 934199280 315582670 898724812 286203464 887112831 552562012 564390940 84637330 553733097 716920152 974891283 133952408 151123435 591468100 615325973 252215965 439570051 6856712 886858383 213097492 532925760 924431075 945740194 497574359 662579897 420222492 747626071 440829189 445341163 257182593 315400942 950548425 993144322 313315013 803553868 257799583 782353097 357799455 978117711 64163406 146338653 638903958 985642588 555449543 601855367 384227494 453221588 421842638 526845249 894100818 964073148 820951739 948644764 857381030 888785989 318106951 684313792 781536956 860074642 298406823 969182867 734745325 810967057 541169754 555869994 916304421 991646621 501646442 835533285 571419765 581674022 959850083 981364706 872890884 894117438 756243464 821282428 900418322 994766144 886223980 952396798 645970020 737037898 443840066 890983955 854489568 976902218 34488701 550983593 146751635 355216712 712442733 899573920 910224154 941685291 23150460 733031817 538638311 669500154 813896539 908490858 428020854 814724497 482836297 833456688 590037140 638603482 246085332 830308527 887155555 964210615 703049645 989950141 681271615 972826848 216680626 468843660 34536974 343478706 685296815 843460523 234855088 251065560 188588482 248732491 478021160 862370209 378543939 897097582 944291753 999119322 836514382 874275884 220097185 805468079 297994331 347060533 984636042 984892761 461663992 519670148 231230236 953495285 343258035 955295665 2691959 93774955 206694754 960539100 374874752 758475031 813589491 910627581 920184980 937369853 644135623 681720385 910484046 996416019 768370667 962741572 592386695 835476571 365543566 657366062 337534427 984379188 62620441 245726432 866863659 949947397 272052463 944984536 18087609 267915777 585369549 911170991 400501157 839689080 212751202 753679251 799320607 847558769 266860300 583103136 120855554 484766347 3859715 105591900 39850952 790150753 222687956 252825479 600980513 996064825 710315581 722973243 24345859 208885374 444058601 454910077 400603807 582629350 757275918 844721309 429987111 857797460 742902055 801563052 929481885 995783543 874196530 898251536 602373652 989828302 330519074 812370738 259171165 482893688 829151800 999067811 565732945 760390125 108889428 483932780 475349288 840509926 654406107 720588995 636453953 880438090 201987842 570705655 656996500 967499903 734591720 869112842 129626574 348875886 564164161 775216057 942866773 999301154 545384814 734450464 941139351 980909038 15206964 928106383 467160758 485269005 315055646 505276929 237147634 266970683 492430041 538094298 865988747 924373373 410141792 849909536 742401980 998859330 901819076 959436455 301457390 744390157 672563255 831632281 437346189 886979926 800277314 924965785 82705594 425186560 593837239 627678975 948631972 982350930 880033333 957007731 614050094 746315228 911950255 993111800 936229878 976136921 369461854 600061063 968573943 971681519 851455818 870334522 197611885 868531972 574282771 598381034 544345270 910675743 15971288 277010807 69100756 816107862 489636225 557703579 254361320 956893210 731650436 767757410 271593280 396315230 640216501 827730980 789356896 868510751 309110638 776017847 263887409 762276483 281712952 743551519 659572954 671198401 355683620 485590840 158609571 794496927 874376082 965156969 993846341 994099035 117666445 834498469 408322208 638908931 395422233 602039903 713939431 729828611 272193847 915207380 315503880 404400051 226810678 803821010 703279339 710199597 933294139 972125555 707331701 966062590 956238233 978664625 950341636 994552773 268694578 269156101 636179089 654156669 337763363 863748770 826112723 889049015 893888641 981800857 861603421 879244662 726013509 860547461 884937405 937381721 239314157 240345456 48157323 122712311 193505894 914475679 53977778 738166768 668187672 803980496 880936368 904305338 869851194 990847092 280274115 639608101 809117613 993575670 551201512 972820436 549432673 595606905 174427899 640960233 840617802 876097300 684849887 733056615 984312825 990057896 938252785 965726084 508255897 870918347 536798040 705420082 441640095 618426485 32775450 872193274 326525118 348709630 742563388 903138272 604949688 605371456 75422790 339674520 700319299 809523739 784905102 973446599 844454536 858478983 159637496 176318339 820634965 944264509 592592048 981180592 492591597 557517782 891490617 908081783 487618407 688749539 262184615 476313732 62612122 886803663 557691753 867971263 253643525 736169509 505151182 905193900 246859347 338938635 523272062 643080070 590533374 897619874 603957558 850235030 743671072 773257650 955244855 994191740 755658070 940561025 706750427 953905346 36500996 195703164 2574312 731904925 741115028 852464820 711295303 858103551 307165945 355156871 850595004 957485698 677390092 715401327 177597827 990374760 950283343 990931825 572660220 632554285 906457605 977774493 815225661 889027778 518775302 736580931 831424846 888177399 716260126 861076235 785270441 901851789 913655205 922168155 773306935 957751323 453197270 756773367 551347444 975309928 869881515 999220420 894903710 910171772 265715532 357262672 95071097 701333127 676025457 718363046 437335873 797351338 557524188 698617951 805955464 989447043 556504862 573092297 882829971 908596775 12325146 649708486 78544400 612229310 127233238 986501651 160767875 681794018 806619376 822063771 176746750 904914671 27219589 579075234 994058327 996196775 927675982 995260976 594891984 662246589 431073148 701143980 887821642 994831819 812841142 827581395 289850985 982289072 252319092 626830780 553329377 922168691 547749934 900010086 894317112 949594383 222056363 245412221 210426723 270815622 825549991 929707514 823019172 993863317 773949799 819527662 677136085 688500200 271422210 568077046 909662663 978352336 874731646 966380008 703715034 842979667 190195878 457259705 33482848 934318170 396312278 789591242 24045955 931033843 752562309 801070537 315037118 561582244 511385727 520767829 93864819 188543737 805462963 946289959 898331393 961311782 712764215 894876054 318307316 908681175 85161060 575079570 274693405 569815197 669443316 859837513 534873699 733933464 275398776 392949634 702974764 818404594 353650574 438044702 821022943 838224013 742777723 863330288 268071817 571843308 624214372 761786220 248853692 333644184 278823335 322136165 788994306 890003238 572510866 745810185 810631901 922938529 222162929 806388787 514416691 700630373 947415191 995637973 263292228 729359635 742773147 985467579 312604821 934416232 812904140 936771089 729393385 734253332 460608956 480866122 658446445 925551305 44354298 69213005 868118825 932571580 344124299 407671157 61871070 80437026 552989933 618042701 328579250 885885324 103854177 291133328 835637811 871092351 689159507 695140815 135162864 679510246 82749833 495557517 120921155 562354143 188830985 857282057 614371853 712083689 990662720 992015261 787182435 963243309 85038105 771153359 680164326 747087135 78632008 847794684 622061080 707534091 806221183 927539847 745011019 797286919 577790185 919087265 34790497 408859275 453582709 850516665 77662972 492939073 237219992 953481117 573826795 829630414 720971929 884265874 72375659 612559778 738304104 822043020 751938679 764616768 743095452 970604314 559659867 713793651 509365291 751337728 40164791 746024950 420209628 754872492 837679244 989941560 602029592 966374339 769946351 893824045 98134632 677453878 451865654 596149627 608037747 941499629 872292493 960138017 285083654 620345894 834526285 847806474 270680123 487709081 639993584 875441969 303720061 802795367 95918705 567582745 683306166 996706286 371982067 847656043 300793055 666348524 374984354 978001910 449914284 835726000 686520225 865451546 382449400 715217343 729327933 831392479 606587009 706528059 699374905 819802337 687548495 772661418 687555642 933855642 741900372 844885230 239073580 286103758 49718905 893404701 976099570 986262996 484224870 696815115 239448389 793431055 890986471 973767328 566980580 618889707 774956294 827654952 153075518 238757233 365438033 594923812 792521323 813388361 408850719 882580683 319339162 909276992 151308480 522560471 391715118 401543189 637458295 701738774 979230579 993220109 950269172 956507096 367314127 856605540 721234505 946118238 664764014 877556549 506606425 753536023 189331118 814863062 56177218 252036013 404798727 664986307 883232234 973583819 424923747 991978697 40981138 642062970 916109849 989393968 928303393 985288937 678473417 912386181 633178760 784847102 557141937 670474529 242674816 423468114 546514539 648327664 522475260 966043620 260441610 729289561 473087778 711203394 784494727 981269502 741527701 976131373 689652808 794834322 251724638 610505002 838849568 971661119 258204671 778580208 233278254 724801705 703054759 876762986 85432935 259417066 858999414 915900846 850926957 947575368 765619825 870937179 711217336 881995025 95445806 512881876 287965588 701972634 403378573 677710840 910988347 982311941 298774846 970357671 603035663 716436270 347480025 978200232 257869389 977226842 27470418 105361896 103620740 435341383 756732498 780046728 939118542 987442355 692419075 718964275 336621649 557381594 558748658 866935287 154024668 691885794 537509462 817692219 495573641 910483494 468762024 812338618 670411471 854677970 421009752 422295913 825786444 948038320 753527174 785856583 650687517 691846056 855302782 871657206 769050391 837284703 313947959 389273953 590937520 963038268 168441313 168770834 512633304 929457950 799106510 892943373 423618227 799381019 770278909 864053103 631509106 892313073 181934516 822569806 510352554 649234402 581811260 645076879 223900487 550902288 844267482 894077371 810428917 826321890 99228764 227536158 304149491 688921119 161792068 279379798 525807885 709026959 888544246 994279182 535702708 613432923 846968075 970405073 564795530 595252109 380431299 936686032 315110811 700918387 537075951 586995717 949353711 968940931 773868976 877680518 936280154 948879897 223147818 477908512 409989138 775519367 452289898 655482972 924710764 936096139 859513000 904704776 213913232 908566437 191965541 727908616 409893962 414222380 566689161 928443424 665445252 811023260 168336643 878043202 682757809 932848591 169740220 322227858 27724285 575185691 536323242 596133651 485567615 767306206 138552993 510765695 26359566 605337874 802133595 995388907 795262184 950178301 44309007 101803711 266905566 669712542 650289020 939806320 833904543 883205356 617015542 919495049 293619813 519443160 368461246 771907898 52767445 419924638 108817358 881424623 857765117 981256831 777753414 999983315 946887788 994126260 809009743 990021090 660396918 899740730 904274540 954350652 79439479 566913361 886060201 943733484 748709673 873348454 968829594 987184049 957276750 999985304 138833636 237890144 648614252 813267133 122959278 194341587 393127298 902577147 926713477 928462072 389950776 664761106 571011777 785631983 965598423 972268182 531872856 870813818 100718377 711283248 783996909 874346080 65348462 388568009 984336492 994941590 747555171 892029082 803679694 979401068 392836697 700045468 331440994 568606965 214459271 474963024 738837967 826065304 554337980 737080605 689758976 723375884 572792458 837740618 613536864 897632975 723372337 883875039 283896394 516331796 993896952 996493055 403724678 590112150 415330135 988298501 816190749 891939195 4460744 102644154 663966390 952451709 181683162 722536229 27300365 542282742 305124366 705033756 778178530 839847362 78810614 517083014 411757311 802594471 930858756 956798260 770083827 966927422 643812678 745269586 389501680 553404524 200536656 770910165 64210850 273547729 512992163 810912937 964266009 996354929 940639236 955651229 292839883 333471448 908594909 981308469 108811180 277629337 764328448 775838553 732919591 850916174 260512487 531058578 429627518 610381279 117609688 930089010 283775890 404248042 274685519 333130981 972291345 984398254 556925670 576940401 56830356 441049460 970823689 970867157 38878846 509332049 315416130 762349736 53537665 526684030 516508547 542300135 70308619 303428540 276832949 500205582 628400738 766493733 15888667 381415039 624217864 739130757 35245392 68266675 878767100 955740566 119147610 731116239 493949810 578781099 690608335 813242545 261421056 886972678 864937674 905528814 190756626 267146281 16120664 188046285 529402432 709492952 914602595 925025382 852890042 926782963 308321802 832498630 292571997 480288162 211321836 450764059 424774981 574861834 621084340 849409645 658579695 957839469 251552729 918086135 346185548 352584838 775000007 784990987 744557699 876508849 568646868 999300374 670892666 806437708 33473040 233446346 517684186 723862879 487985234 976571995 210006456 501275070 380970163 629137145 408981173 847309325 399858252 722908365 976893297 991745539 165923997 678767349 916076371 946985636 597621456 957145296 843642912 859634448 886067497 944712998 701249604 979112158 359496928 844775041 1527914 626271257 218320464 968898582 293379132 486091002 637208827 977622233 482546608 901724135 827979808 833697320 12015637 624290652 233729684 539507729 811601190 920707366 958245342 974270088 376906912 774305127 720521662 779872174 108107058 532986119 863062884 997468516 338960778 568083076 340551880 368546563 498774159 831529137 379195932 602028782 394323539 625022470 503922125 800808527 941621845 959817782 723075967 964019120 153943626 639596035 478204116 740729059 926091969 973616990 211521201 709940103 473685264 527463581 575834435 630390638 513273267 768406535 620445050 665773290 33622041 248285064 854529645 996056057 533656617 730212316 571119854 663134637 862137457 893993401 935367700 994998775 63400454 450821515 577067141 862345281 941465406 949000010 918410788 967285165 423468942 846739591 836843423 897132244 383554158 445505938 918747873 993768867 529926553 580571303 138442604 696025322 92560337 549532080 925664250 939429116 889287519 908271084 81429719 468141991 975587768 978158178 846828614 922620847 226499161 857705067 129358834 466076492 753705058 804230408 980333554 989734074 61695513 741686475 466803848 516887480 497286086 673199470 382071908 537209811 202324924 246249485 225140257 275606765 373002862 568079171 927406345 962259421 205739553 638302016 907436753 917649971 251003151 685808669 337352152 493875280 372462527 391920066 995005564 998295228 562790664 726204754 168714705 566498421 508075543 947767144 272988837 474244437 161014338 941197503 737479913 891717827 361186147 696144261 351031483 916019680 957171364 964082981 848597531 853085589 716134863 755381275 902430556 992163092 833320932 854087432 278955593 845400551 964253192 977652271 368540905 921716588 177473849 785606283 156469494 443316483 588587045 959414549 451691286 916530977 615825826 803826036 619094133 787680334 750710359 811981028 599365091 761502838 380436945 736802590 951212974 957994060 644143077 762046592 906193650 919415683 236434547 574055667 882049799 897973015 363064270 835369388 813468530 984220718 462979588 871654590 467860409 634608662 598042309 699638262 804975453 958190049 809077456 895934717 196059043 295617111 425542538 543083919 529997242 900861045 903725347 986029742 781216906 827050540 616410441 796151691 794402665 906859580 293878367 525066040 607981691 731553993 290280886 747859731 722323356 930880072 94007147 530129974 229006096 716086165 711966469 949350862 277712449 381470789 176307051 860652422 83734560 537441582 855429712 899924318 150016692 771653456 794789814 844569077 352119451 812788678 186113642 451403548 862265043 928277221 714683474 738740402 831929925 911229382 663019909 911814155 802361688 934398838 706913909 823353849 282074995 431806398 733291593 991138991 327059454 605150638 467719103 556625262 303825420 469874414 255365274 988447154 708668006 759063762 804633441 856255478 922448575 933140257 743326369 755069876 634086695 928089910 136055639 561101309 355294931 936297089 845914578 923811018 450817429 574109007 781294623 890445856 403843752 836504991 21269645 797599898 567615340 841097447 391459354 823633736 69354836 611522728 390202874 440409622 615697607 813969898 949305277 975852374 320628293 958848249 261542304 946196440 545314369 579256073 893452943 958922504 764330594 814001126 284389767 895839647 130651632 827911921 971670376 992200089 614946955 769378281 800151245 958980837 511355318 914453772 504139537 823055780 384990355 389792128 880598567 891768623 947998773 960359551 373135610 833252261 743304676 794240779 246157378 464249247 702527529 780988380 413987484 686668401 396440881 534378234 501653605 961313576 676236793 978356464 577081569 712923878 450282686 724343209 583869672 975879691 655588573 950769810 490064355 573662867 255340547 777756856 584914966 728051014 847901618 998359522 256122638 261643977 225841946 522516762 862374288 995848598 974600402 992787326 582326721 702705201 440596478 981557210 88306976 844057602 194581225 732868936 160755268 292234703 326823519 521329792 199484988 617542602 587649389 982390530 245186102 285644026 509624455 591639438 199845831 957242520 128523291 439763565 96542579 780568698 795503 393662812 925896921 970468086 21074263 678891762 479841249 972905512 74744592 862050874 456680308 886345195 138547389 628722092 92437615 271095723 12852848 905408395 9792220 135494813 549349704 747696653 597982786 739431576 799990192 953011969 376531161 582098625 100023735 172846151 734646932 768643338 316175586 663927988 443746442 598141524 430363743 890052249 386991713 773940614 569749829 925045729 807113131 816172660 455368255 481545739 310037722 765024404 102220455 850582186 727373810 799154119 316765063 964543497 627467274 699098581 979898167 994290839 356973007 514926084 997264384 998095192 741544521 857665494 496746905 906212901 127766940 384909320 441962031 886664863 777088185 946931118 322849845 862895966 817500967 841182485 276259550 364442421 969387154 986702406 29453443 118446827 965196033 992237482 974687431 995355405 78022349 514437885 503221055 666792674 982070821 990522269 786759860 849277994 593369508 956614575 979426655 984626081 926549975 949505175 770204938 871086866 639202512 646323028 951026789 956703101 730823529 831184013 27072991 762401356 887402972 899247899 838723403 974251131 965826658 982667742 311888773 747766687 844877284 888726703 265020723 426616460 803681091 930470403 190586585 853112423 213075137 602567580 133597044 867370588 796980562 901126663 498564469 992970911 884492710 894698972 765288292 873560376 392503101 642300212 790610961 860527905 418250103 923352443 736904991 981889660 305808387 808464016 281322620 865310769 876009207 999666562 615134077 867053295 269048698 438876263 783339993 840944307 320597758 533439910 165865036 938214533 141523456 586725369 374232228 766015614 603706370 913127561 152930760 846437620 774470475 870676478 909172372 921276584 545587912 938107092 175106151 294438350 715367912 775880234 662840488 812956820 660057046 748723025 136766254 179240298 271062459 518143923 380284993 789908271 30611209 580528548 472082298 819990035 199018496 938505079 282232401 971026193 564719724 985682993 226144034 421503239 75898832 401234413 139569885 810876267 317546807 657396342 194680095 234045917 596586448 600779527 798968055 978317185 572151515 996125985 419509064 546559705 368759909 575280817 77881961 531667325 502446567 580841995 305401719 621131417 45765619 979543908 477288605 579930397 235818547 944416485 636872754 828911233 57024378 977207065 617276498 834793739 69837482 644416389 310007491 841144480 488608304 782893639 446484838 689167265 184414555 853643385 202937783 428629529 654918601 782831070 86832523 560392098 904172579 953497320 891910563 939529655 875132150 908652587 609247891 714069176 995809655 995904129 812554959 832305085 941575143 963591296 604797910 935175010 507784288 788854508 328173604 709810406 548934375 853829264 743117493 776566265 531378260 807094609 100526725 312609298 747971702 939218898 3783069 279085189 615967948 954309010 197357721 444929090 165034686 845940815 738526988 999477869 193113234 917121334 608589284 633291009 290883187 591398758 47612152 415089967 655073605 851261804 176643718 560572667 205834751 476981801 78691905 657785090 791999132 963855339 96917521 739784000 92834137 665751618 517361289 984927013 903908373 950772208 842488482 983222973 198214617 303789081 182666599 843724704 447487221 777068295 9593555 262344073 829741042 888270563 561486076 574053955 457866921 656047349 846538787 893292870 929452981 985654897 439895423 533637405 895969181 953171998 844312898 893266252 147622527 587140408 775614240 945793067 989589488 996760151 343839255 961672534 471252831 712622243 458387114 961554130 967906168 974101785 606806047 832935378 83605873 817133305 358242717 564422465 284849799 802350955 859527671 869612473 243532194 635829662 876064858 951807387 153900429 201046518 621173160 984301611 683117109 723123175 717035791 839104042 744858820 762613373 659350089 775114491 993621297 998040298 27095601 739100819 528800437 571830546 940024244 970731327 670106286 884176034 614740246 976876310 80836030 526379332 93873424 193293943 255118666 499924447 854834384 981635356 486053482 651417183 741406952 777479864 552424862 583634935 962456082 986026653 238723111 270524189 658543569 915266424 230740425 509239710 20944733 673971361 290495361 544666066 63840553 236057728 100758850 946356621 767349800 778214382 882488556 977544851 667392307 722115131 697291027 794464157 388036293 856425236 561956890 787922369 889023031 918392354 928421193 950936441 833919404 929159822 530041882 820964820 525877943 730529927 145361132 758285064 611459764 808688515 936164320 996073823 907347273 927193981 267838960 841565622 539545334 910177915 552924046 820910270 985890438 994052328 550099160 923863194 46979373 665438057 750086791 950914170 203664527 621350456 559949451 783696381 52524252 769352821 401740979 610443034 815624711 901254873 271014426 295806056 378811013 876702107 369840962 659111320 709261089 890421894 792913243 820888922 74991699 155426143 261374153 266781008 278309322 792742145 254796576 532809439 413418203 652660162 106269507 483818041 886304108 947354451 429819968 525917714 463562717 671849332 147191450 735086006 756945636 800925730 304420267 744117579 380129952 490402843 549322015 841238342 290713441 409425891 215569758 554995462 241378257 924738029 943931473 963841961 115492311 619924529 350498778 743164802 715633635 731854541 895805526 950976229 979821919 992475279 424730625 731113822 322818262 921808303 387859296 782000292 659198675 661391952 126029080 675338898 791612562 860927923 102082913 688548868 230790025 538778385 29752119 387063582 378693258 487534666 907214548 957249318 692261539 986275478 564680219 648605310 46276962 384135205 408489883 908884064 713810191 777224724 337640180 995079341 775674100 940001311 825072148 958471342 492143543 523410363 269537596 818982173 829873981 915707588 426414232 688749524 551446592 568198834 357022607 899581607 874405690 900594899 651473698 722282868 296601849 510025828 624098985 718969446 36522804 578381171 481771964 523858389 579872955 604141865 893137601 933729282 95245336 120006384 494511179 518277106 104013813 882623413 598586006 764736363 334479894 516067854 272451780 555329859 95589194 124276134 846074777 896395259 500297867 756505231 151269107 466290969 456541201 468508176 429246521 438791693 578496516 882159613 306710907 898869891 109795778 809374634 381529732 949805155 112243835 228632313 70370108 675898913 200488583 433610106 35938608 764801773 368783610 715465665 14540131 685103091 791234668 796148928 802128820 890269605 25062813 392511617 404548641 913937854 430175370 524876094 113465557 791694707 151392491 209813533 996364944 997097221 703328655 715041266 387449768 788436986 367649879 489588234 754428466 987528634 918580627 968364313 844821413 935674714 784670839 937550816 859337886 892990693 918849390 986069648 974269759 983093943 443862659 483470995 590963887 729474709 900820198 960062084 53525751 113726715 216535351 707667309 656435765 771297885 470276116 543378767 722369601 841645538 53204178 378712227 930868077 970699656 926883112 940783163 988742074 994523678 962691491 975212288 767813711 974081966 595572976 797764815 950853463 967397707 550095110 954501155 337435241 814882470 761995272 890000349 84062882 603170126 888985125 951636108 867963893 937667176 418706629 760527402 961044376 969197620 864754655 889433847 988519785 993060752 506583953 814271243 219788864 359148406 329656835 671623505 352046378 389856599 159164843 318203752 401912535 726601513 513915714 819991332 976665849 979407332 188156344 973943591 402356111 663530078 285120921 871013579 106786258 851851001 825797985 826973181 717231848 795053785 854639725 927493103 692698971 866274279 526842891 779344447 474776000 529642759 136231828 797095621 598649487 901726861 652728422 751118241 958267505 964236516 663868926 859694427 946038346 994160938 155546695 752432503 538447639 839902792 329301307 854687836 969151750 985350875 163967809 963459045 763426877 824444871 819976709 963447798 169571857 363312166 782777336 843836886 383049110 723805559 862289477 976459716 64048696 758448354 298128416 807145608 866125534 916426678 355654517 571734284 488343901 852093281 899669227 928863250 711696528 961580472 796381930 986848414 553793069 642601564 17256173 594189667 681689776 930130839 639454696 785819736 857163909 961260589 13134946 890189951 922099381 995177588 179776958 495182296 460533623 936256670 231476886 669751118 819916297 951696899 334805614 576350776 987863305 990418755 142013382 887078298 993678340 998040392 20098040 551265778 129455904 963243404 826228068 826639081 397521283 698488380 719790995 758310977 698484897 964160690 801087451 991581822 525277390 598209065 772255452 865127988 756355457 980726455 619816315 638099729 776019714 912448572 988910588 997619403 210954231 946264562 337496043 806341191 598568559 698431645 81374417 671378374 723613026 765031153 336937693 905048265 25348693 604190994 144769505 796584965 65371194 739456303 448007660 722740805 686116397 688964807 101708420 213126895 193773011 798400020 59675097 984618591 425959775 529313430 862644868 882422675 503164666 514496973 805117963 833052584 660945898 928592591 834473541 880639392 744993286 753681098 523465299 937869059 297158123 682008660 802046473 924876115 351238131 837255564 699578991 901488386 877170321 907098956 459223741 583366681 316614267 408349791 247102618 654664747 266146542 344076457 963748543 972410322 694372901 737119938 159551140 361349271 528924570 648143191 671493100 867392388 281618987 729264459 804138935 819717988 214270712 421693992 980868627 981934648 721813786 766553854 651856021 956355485 272415920 906156123 451806467 753209699 617974748 844046020 462888681 650196901 335099492 338797247 669972391 983873504 587427915 642007766 230764668 300379153 93038964 794351818 158386935 811549060 226569820 676200531 233210633 492888801 698512823 919109359 407020641 819221404 264401328 365396466 785327424 833468354 689893871 997070298 895196733 940843818 874056453 927371247 195228388 438383834 956030970 976072413 537472119 897303835 493377796 640282348 532297341 899644643 138230256 357582718 209128390 964631657 673015723 720797616 175762506 262504738 715946223 984989344 470708851 541107439 564021691 628420000 516076120 622847084 96578628 954335733 435818280 730317611 840159436 848815779 702731745 909991543 858588808 982803955 659036813 828571430 916817522 982004807 825594609 861522383 177623330 390561312 945499873 946558149 729461485 946163440 648948088 691281770 760258949 855362313 615957117 714786366 808601314 875879220 788500900 961112961 694172487 980135876 239528677 242862446 545994011 933927873 313148143 354804627 797423758 984497090 273296995 530338256 322528327 834918853 121266457 149171548 247092710 855967512 34939552 157447641 855052841 974986715 81379655 952988684 293333516 980574413 984549144 986221633 43727622 55079917 176471621 394032939 423169131 595694320 148684166 760777931 331346202 666082053 687846119 986715091 132176270 693070570 47617964 629510587 700083270 961068482 169178412 291158296 654499264 727226882 718385792 736185455 28312562 298981769 16512196 225150006 308663417 804939367 51615231 131245236 241268029 656709324 503343703 724961966 573234935 797978309 203882894 954796721 262561417 612821600 658406511 761420226 716369444 872084273 49745740 626995159 653123381 788027487 367688308 481305748 310806270 495957245 537721401 547212727 422045210 605908925 649327990 780794150 593280112 610439154 4422115 401853675 49033649 805225435 145964492 168385926 739077814 806693422 455280268 840195354 1763462 205958514 739611977 853387910 341446132 943596284 599830995 786580416 866120735 889852306 687500061 947053625 590061911 963370400 93274872 278233363 335040752 522759591 223833026 268728308 186007859 528994576 700801467 851400556 136977471 845168265 294955238 501920377 239063994 529649603 206246972 858123122 57627225 943610164 750437168 930338801 19964673 702863090 335031258 390342918 318161881 570888313 177171971 631187580 621041906 697253770 494400553 880728895 283450255 585556232 290021707 698091764 382817294 701047629 448364490 797539375 441277315 978810260 991375752 998715411 601941260 986900354 229711902 286016029 705260115 875338850 407870169 640060887 329953024 360546016 624291253 918149626 669526087 960071732 419317772 419525321 387352128 410459627 939300943 953884250 306381862 426248475 814333388 926819130 684577649 693656535 155973499 741893283 543874214 851476317 63160946 396099838 267654996 389563614 529307666 554454255 256735636 851220368 431651953 754355445 36239393 568612178 71911451 426481132 819556230 890084690 348109094 535431889 950516312 997009559 82389807 893796672 552391606 951985640 745377439 966230901 684347643 904910569 918402636 927764541 719520379 934560862 701689089 992667647 638398637 705112768 297244944 770934294 119172629 726938579 849124082 925183080 897130642 932435810 293399421 466076572 914168939 920579075 435775412 815674677 583816590 920233385 148036552 845152675 275884830 495748650 836686354 868780268 222331814 758338058 628190684 860002577 401343033 752304039 88340547 325546338 893762035 981112595 875246660 900872516 761776957 997167792 182668824 244714836 261005415 500858877 407910058 645154762 158375727 446411428 645454247 689449642 462142734 768385412 507018832 945350900 632460218 943073071 922081405 965444705 39793104 423508986 479786512 955745321 840177626 948780617 799184988 815438905 264371601 807097099 807919433 863636182 172821889 674624475 377124833 477189170 297470895 751175857 957128904 996449548 718032644 833123669 404427219 458401407 108211314 271396818 230437258 350673811 357260951 429641355 349978300 779876094 592160083 891965284 598849985 604860359 114304403 204220446 425120907 781374169 906103521 910783425 824302018 988429858 690347640 922517873 449107056 777416458 30809810 444016311 156452630 502065050 60932347 252574714 356867943 897996575 421529219 815342779 674890967 811928839 725418448 746417068 684422664 850056360 908223992 925341992 244137369 289713136 176959981 203833238 606870066 680906669 392307995 900965863 909818593 990994477 442335073 715509523 38752023 426891379 665603677 759167091 239015271 827799903 121540312 829233457 793948653 882615261 474006836 740641775 253891010 782842534 948636884 978182831 824147519 918275110 841942088 995457797 683338047 829085734 308728331 924796160 586115260 885436360 819393865 905099074 503082096 654830896 575381332 948928754 251848563 765812316 107483688 239413670 611920044 737679679 879610602 901038917 319733384 543856877 999302348 999961358 816160713 919987780 330801754 528905502 557588493 844678891 188684888 444544743 192356780 534780880 164985105 676288496 189011233 409631687 465826979 743795874 676010130 916082525 934363358 980068770 343373692 734307698 485716680 925545867 742833428 865464639 650897171 782082938 399118703 981228624 344832682 886134469 480154912 585741097 402960996 464883289 391911337 674874132 331231239 479201261 620293421 847795905 773225609 821015051 184625368 292654051 727074857 995823165 417444308 863271908 81162635 233528320 427200332 907566606 985790642 996840017 870136809 879967864 962908413 967188434 855545212 965802503 435408700 837702644 861376448 944366576 208412896 421871958 440516359 908372156 646090302 977749995 649830957 707900758 623326776 624264938 737408968 854358319 7351154 136213688 818692184 936947766 701159018 792180598 633311855 844723846 804212343 854552865 713469962 877900264 107243372 401546018 611707851 641846028 521690250 914775528 342652096 788936293 763146769 993935029 164381778 418290372 214027433 880793382 35477173 393139484 699955097 920043815 559882353 811213466 925497180 986493194 895665286 911863287 188249437 496949942 210231706 967513639 749103160 892500824 377469812 759760600 881775884 913476798 421029279 857954536 695787556 986338529 173649344 942553590 219294176 484648450 319199760 375128143 460432343 929367071 7858268 603117345 577629354 806641958 682672270 793118436 971338732 987949534 207633380 305282484 789717978 816694754 981893089 991697465 545383292 899229690 788313435 960301272 720205516 906228932 962864004 989639067 866048212 936141246 689437322 788088368 750645089 831242162 682291120 971412255 171527965 555614051 156082502 585388341 283110204 929879592 815739253 844169123 762792904 869499672 93155211 399124740 50115443 488652625 376762918 863260597 344551696 420006466 470271940 863754201 270310510 315372212 844833977 932109384 944076581 979606585 722616547 973002203 293046409 318133204 39969430 582225109 370704257 771718765 862304098 995132691 123136874 551186029 105103071 268127666 175719264 808693392 52815826 649639707 656024930 663332646 92774523 486110524 289723432 759346626 554245709 900931675 814949056 911899396 494064993 646858164 20939467 619343918 906026947 918823230 600769317 876394427 543694522 893487370 472291814 737577719 904683453 972227461 90278051 899099252 646041664 704067419 886398545 942388040 488023414 977358960 25760605 929622769 529928117 673541356 590993299 620080646 387457644 589195487 221510480 297222663 289789267 612597834 674666529 716232206 960639514 975956649 557149633 806728842 468667094 659759422 205918281 392953403 247954344 923659911 503546610 958006807 62388287 786872828 538176735 641001879 677240867 868501861 470804454 570389106 736257348 997742360 843340459 896782603 687080631 882442390 600602426 916376848 637282655 687334624 475629657 982198626 964234606 998567684 322326085 824929714 319894201 757065058 179390754 878902832 1937411 398524583 463788459 599915248 330414835 773669314 455573022 476400275 201950812 950575227 756741519 951120635 479564223 840529010 443364656 651239225 941824259 960289034 740917034 865471236 800803880 905528909 832717515 880356338 178198155 529844232 582236172 784770403 892825730 911853978 332045082 951942995 2858478 784057705 885852937 959502728 289850598 784593246 892260254 941089917 439232915 910642449 361528121 597488346 48657027 738467433 433155066 806459942 233428681 920142621 835888039 914812566 366473 552211798 605260466 807852016 326214839 605461562 275205458 284165377 498334628 581197916 618112027 940432242 148605556 569230995 911228873 984026156 456789498 667729676 3883944 254188675 368605284 978329544 891205837 920610453 944626261 974509402 987734775 998476815 176721755 257571120 574951622 604091224 256578521 794664516 5302230 685950386 553347518 906266012 806578169 972573577 633927946 915676337 331930864 474335946 378231622 611961851 501501468 787955400 699487560 971406727 648004442 766585763 654247596 740963516 520629156 728078079 113732110 876097329 556229339 660049896 933475074 942367265 32582914 924156169 608872258 930163375 771520877 928549289 809030116 866149180 77582086 608114686 694626424 984301422 582866659 652042146 791088710 917205024 18790987 939925874 565510153 678697802 432328958 985718910 223191449 361677988 7863627 700924321 77309141 919957318 722004686 960864672 764938703 895345839 801100836 865365351 127881259 974551092 693400007 775420859 406825630 577270472 117007720 381504224 250360051 367707104 763175065 799619073 885358467 888112982 700661775 775804381 723032534 897301604 516564507 554804781 944046412 955827439 208785043 663596526 97356685 370668326 211003039 591186139 551248673 777875075 900651354 922174358 951380370 975426188 601969495 884893980 780081995 977636787 958477881 998462578 979934022 988051088 737017893 788622554 540583594 590476487 279807024 508728767 293081898 776104648 977438830 983207959 473712717 775152065 669922135 860543541 534944568 538897898 159055571 362823116 719002034 753724068 443461659 808073898 749782594 924816790 528959437 897541929 620583377 738995067 391684769 649492692 97840689 934832577 975265706 993008931 766715325 876527636 989141104 999048642 882105707 895037666 419070081 427667492 168799431 317580948 845070782 863151864 692788740 778439249 538635972 613415402 470016285 857597635 914068017 915424788 368504190 375390939 642228649 874600073 273070779 765262984 302170056 928957998 918612505 927188019 813741340 965159186 879554948 958979340 377604158 617635622 596341531 777031883 192294464 309015128 87883762 447196954 351166513 735392898 350453940 509943927 547869908 778514213 155444884 895006143 497022751 832946568 103552765 365294043 789915938 804010632 351829100 647168279 510761783 935644943 483406727 650435781 619038737 716229695 133924792 261442911 334333497 958726163 128506397 332754809 29499056 833679884 308610511 943271846 128405979 248295592 231151425 710630982 110225855 453829001 243556188 733458932 419528589 663565623 717693357 983185716 474178314 735655117 540345561 891080602 735906660 857004613 281969307 468111056 677568248 998350484 327640422 993947565 294177354 879656123 207608656 929332286 945508487 988820634 789721784 928284711 801644245 819643569 27074889 551235285 511538172 931312766 249145538 486359294 265193939 427185376 120733024 221327385 533288573 580515398 628038352 795556918 69620535 449251785 696095333 918135723 292080931 898007592 393792164 431420833 441910354 503192904 881178602 904783026 384057879 933898854 257232307 312346225 112384833 127488665 336632797 356714231 140854201 634668078 102428192 369616537 257550174 964353294 598644698 730962815 629214211 978525259 143828287 354752297 128921482 215127240 583935239 789670621 995502601 999380782 80322005 475419029 133458867 529207463 69526083 138053172 147228046 611737130 481931898 801832285 450281029 636770354 657842939 863960373 222849512 488812567 539274931 680143370 856236284 973730816 769488554 909780007 569737172 751518629 965299914 986940895 896418772 916627550 333091335 858442114 501180597 668279148 575965581 659928411 809326023 910734260 339081308 367778477 290710739 493386549 100578448 623168164 217062758 907130119 243269789 714712374 817297264 817608512 570995785 840091966 254365197 397815721 404464503 554974347 930651522 946087190 531400458 682317470 888677119 892028443 408116716 725361605 606910567 890384923 694227150 813772179 627852110 671628660 113941683 301785324 210158952 720623164 892390408 944884473 895136855 961956809 985683776 994083480 916916202 943021582 280634337 692912642 112061694 675413940 697301632 834366438 654333971 774609360 839869461 919194776 202837663 660855140 343839421 548454977 505302909 618726092 723576502 981261722 920143491 998565517 631595145 956942701 177588546 547106652 616139256 668739950 184182242 887027256 409892981 722702763 300491148 959914507 540416385 888505245 883314436 898642358 330195523 420517701 569069924 979885773 207075657 457495611 867971657 997675748 432731376 500388417 280588320 603271847 558812785 766926573 448314735 691099506 427653915 480735674 877225962 916614396 738791834 966495741 555092019 877333933 558783931 809860586 166035597 296554513 991252930 996209373 929309767 935281027 330923724 954501616 295972357 395569490 607204684 709293294 336417684 994892866 475136655 967479240 983566550 993023243 555913373 659297214 669717402 787260467 240534724 991753109 345643044 808274539 662550533 772538655 669011573 737254353 72272224 639861572 176344978 824281777 742925685 938083459 971473404 992011501 389863098 399555456 850354556 914336250 356751466 684244755 599926002 976551877 448867226 690741621 639900803 705307682 441703617 876423114 581239532 661547065 486810795 584604040 944518661 981646620 417332809 474362100 520262524 908536169 672766494 909007238 744668798 959951042 374752925 976340993 651757556 709014357 850638757 963284918 674755170 873969276 294405565 565137328 955009240 989958650 940462788 967095608 733615068 802763549 483466277 539284521 1356442 602812826 839232984 901329115 748759995 968396805 802928710 887071432 537628056 651501185 196903974 634026806 461605409 630732978 192621638 553191031 831843593 835391589 726952504 948982065 232824719 646990016 529868134 819439754 704438540 761204586 349985233 600698146 224261896 290927025 629194113 651411514 504671994 774888519 225568046 809388328 983845420 986807105 111214624 147537874 421251107 510267966 802215076 999475384 736024883 800221157 57138057 295763492 635028789 952185836 125693172 781959480 941542290 941944506 42240981 132072703 647255013 880124259 523882674 683554915 941365787 944776706 673846056 843665745 48954187 770405615 739024821 761644694 48890749 834527709 326347391 968569511 67642824 958431061 543133426 957274072 317108997 381334427 491694992 505013037 123861703 418488143 714685913 724206970 380236755 674345052 318804370 634079428 110747735 150219959 462336098 894690792 219403241 953012317 471283367 651004772 43319763 193979148 445659019 467573027 580449622 612436735 351579561 806860054 765229255 830341514 946230292 993232956 974221043 980341621 654863119 749243384 208893118 252452988 711437336 938035140 374610522 846376229 270105158 289317670 160329475 802537588 585804885 744434740 381269017 823830356 297329342 682031535 246754897 642976077 404490570 561797047 338992855 750659207 459374530 872062402 366262310 651596878 991960667 993343904 599229244 649495117 477542693 899670048 963254556 989808066 186192766 957522570 385800049 573025876 256287905 973631661 477997032 766418479 564570477 929707297 401311525 851734171 561443996 745574701 919346855 968283746 366403908 503077189 596668267 871425402 471263244 768705567 925657036 930906685 429331965 579819621 83931553 328598150 531434671 600731209 524241545 757358774 246682643 969366474 839457564 879019037 75736755 363234484 986353282 990657961 396009283 582292388 197054893 697938315 474876252 541609465 653314664 863621212 597448233 833130644 957433627 996753637 838474300 916489377 138796266 872732106 531330214 957091620 365198689 874332633 708687712 731392095 928722146 977692204 550413086 735904623 319533836 638340007 122738371 479049272 44768658 723977299 276848003 768169893 882500763 940228690 29945524 760742866 445565835 471690608 860613553 989848949 437943966 448147796 889943739 997025972 608909463 720348892 472828133 743052184 123165506 646361789 59778288 535533819 844093889 857065617 759598559 972066261 815597935 987639278 873028896 931461661 333353222 484303538 27807566 825911208 698722059 873132085 770961505 926635259 852136562 940808813 742690440 863501186 703522818 993295589 125815000 347362853 651678105 784557590 135640556 681437885 465617662 788871579 303345645 442051533 413737642 654389572 253930623 846637401 542151939 629615537 443581957 695451792 9678262 667482382 762488084 946977956 207593359 829897644 156744110 232759885 114665899 510121126 278112282 564365967 90411767 172161980 674668550 935577656 844423975 986888151 738014317 998746878 26435919 678709347 830799996 965703626 261399292 853541545 826437350 866861467 993222272 996250473 489397661 655208593 434024682 596169538 731728478 863958598 761224428 923218830 274494823 287615935 734063303 893824467 632154735 698469362 914944163 977090273 232604687 853459936 221835031 455890967 262740051 562789330 494526495 643951357 909003425 937771858 749192255 768043711 395622362 730548474 271126900 973672911 345960183 758383111 879902236 897536332 235403115 357481869 754159993 957671905 9722084 253768781 512348990 809288657 739013500 846830375 52644264 85928826 989431167 995731230 853359565 895041589 701212340 708949047 471982267 990141987 24811120 172090432 194081530 944987626 553315103 994541372 643690175 964241865 115198817 842901032 387208550 790065674 81787264 938527282 25042820 337871901 426455164 483512725 841331179 947197279 234145000 934837172 130843203 707513332 369963829 597054493 974329050 975974770 433142707 794298307 640188302 990368680 630909208 915474683 396585377 845570378 256892250 406779409 874917318 998474859 101096475 112597395 517915799 805567283 482655177 742551525 826151900 866604601 151493297 617262611 159273970 939463713 580070441 650062897 672601756 855954599 638638473 691895299 775200789 946244554 130946813 777471059 712202225 820399089 703893820 735931131 114237803 418306114 233897916 759124465 169569628 841803233 673429584 982261426 812669161 938559314 445241464 893605153 831681863 918765690 777023933 997762155 223039344 364066859 890708270 963721076 691923189 778825992 667806765 805010225 678012430 752710672 86163402 191123927 161440486 732810425 731317931 786361006 981102969 998313669 977713737 989167390 993208056 998195560 563643005 586777808 178609092 679512022 333347392 429161196 941999980 965732931 981454308 998673851 275829357 892515679 523642387 808736333 959697728 990141086 164750876 599264332 5821335 388193929 748034169 989944637 269702395 371774715 902798449 910337454 467749188 586325318 596814055 679650309 509468686 656045728 127709897 943604094 688767815 836485651 620344907 855959460 452884743 481576166 129865575 527180349 773814393 787358012 682733094 921013444 59214972 265821549 747777184 854514230 23814122 290210017 581794320 873351676 794011921 985743033 229988308 302695690 499075332 766423225 501404744 783041172 366773177 452830442 78809526 109038350 7636086 549461870 9588281 562493833 542967560 729239648 818562214 955776366 965201894 965660196 66061654 125228869 565368413 692535661 298388496 884001616 738461261 974562124 471911894 487320496 390944034 719706167 588587904 989516553 798646975 904815935 532419345 935005149 976561670 978955719 943194818 996432561 731344126 864908735 475375930 762902048 651761682 802167211 399659626 671945992 967773704 980610375 55467474 389669661 363452518 923866449 903623117 992332309 692459005 710092800 73479421 293076363 923739456 980504633 553703448 576918670 98420549 294606540 658948266 742480620 269651039 725892026 556323203 993735736 332563630 787826159 775189818 951220390 761440289 889502028 672839152 986832971 435832452 646447998 302762765 422208193 554751176 743452252 429861692 534603187 980751079 992854777 423262473 994975072 294336939 639863294 698434736 766929219 906546687 945155366 780898069 985515563 550267440 752623598 67373259 662999425 405196040 795055088 188317361 532167562 335961228 522466936 664379291 777957464 933354411 939073302 661072214 836829940 451525417 520860459 420977662 945306992 160742635 274930887 923238256 927131665 875936118 980341020 569283226 977307877 536324462 623284055 9521046 873734873 181363290 599896031 607973511 934420430 195470048 699839627 447823787 688519190 137536111 634729939 608480393 971561293 55846069 640735594 431371505 489392508 632264889 907012511 515071348 829998956 584638254 795310956 82137083 497954919 134798750 929567806 894469645 964720420 228176558 551597986 856570920 887091334 509130269 596708801 616506581 745536223 603387803 794388742 370522633 407672908 699048656 726265827 453264306 893984365 86962991 904968507 271401418 752865884 870653556 915591588 380093886 652166867 733861877 978793233 204692969 961812796 519215967 572226351 310750925 626141920 753232207 767584365 790668588 807416474 949048559 958455153 474823057 999892509 931157285 980533471 293134707 385237131 431200714 859083718 679373547 832708623 749348925 857395657 161278995 720737568 3502283 357882848 177098595 446767699 79860934 666330253 282079368 727031245 228255841 876510094 292983008 861096043 290600313 708994562 249928795 855302889 965451213 984133995 202732291 907429550 770560048 836389932 684319684 974439144 24347788 656114217 479415517 868398576 881901535 939933095 280947380 513170194 944304722 961061869 304402056 368647154 74056283 936070555 683292261 986536608 333252008 662704433 709414169 957393359 358951960 493341106 394389288 896067303 406098863 447928072 804431557 909880543 681589397 693930309 982857127 988782496 521411449 764689063 689794720 821307765 974994881 992690397 839645208 900115987 733789541 984236451 64291925 954287116 126118667 908156731 962790498 987561107 46501121 403606250 272788932 929099098 698494274 834197011 900475297 929747676 296556653 508920403 717644409 947912093 976359845 985202482 212697734 971874353 46643489 726324087 213618066 907664954 488383638 594687024 72129297 411008901 457218287 672196902 635091105 690102819 935312051 989952764 493112985 818052522 695253599 972379209 76313505 574330759 642715076 817303837 283662011 628619555 456662504 758234574 961307688 982132199 607905689 824867450 63742301 387182383 346876944 671900787 550280996 601871723 973002326 973630825 118078595 674536886 516892951 661255500 355021580 920348962 551118253 920165600 828007883 917443707 491084596 991936450 507972184 822294474 694554350 852818069 792238637 795220252 618712455 714704973 977903594 984413183 417765435 622188274 389492181 610370470 461960167 580582531 931861671 950825845 912139534 989586836 966206767 980371871 970030256 998391415 538473881 683936432 414482045 971510192 791917305 798890478 301367313 689271047 378204282 473924845 375514848 713504038 219008638 685449503 644700491 880965043 507624192 815713214 645071951 855387569 747102480 958421539 519459763 660013716 932596299 985945113 350401572 387322723 494415755 749801637 861440309 981806012 191086719 191953805 434680848 726307907 374829197 885171004 514656622 548202741 687392950 733369963 519436714 657955005 811193911 871541562 763020025 771851189 562465433 735813506 212261278 529107746 234024435 853841850 263609 544291308 827922573 968558642 482863601 947575810 552116750 591017583 181326382 472935368 291199457 712343688 883182861 982998803 424034815 740340695 710002686 780192198 257649156 998838220 607436770 964174345 863452948 974594585 704242609 864636464 401281513 995863025 691503071 903244262 4300269 576681850 704410413 879480803 773566151 902993244 152586873 937901122 597103406 772820823 771641447 824748090 70083649 351794751 423251105 953307220 775599356 832134565 574984085 641762178 63372799 603711112 820252805 827745388 284657941 681437975 228576969 408427934 695669115 872617431 13581327 767074041 492937510 707886614 36222145 863987160 975185989 986781781 629478630 870556527 555129169 955322881 400439803 710960128 834466870 947981414 983917522 984613509 329679236 334737213 531303070 710196729 525399694 842250948 144065638 346969489 812527174 962664039 618390281 722952465 841569180 976609638 422658828 598184946 651983493 992715965 462360098 871488416 683848593 903226413 724805935 844630497 983844463 987457376 540997674 740471839 982992741 994931129 321960225 491466618 624569237 924802315 914144059 998104529 427546470 948114522 919112595 930825120 549822889 681588007 16179929 910818816 476571986 708352831 844889090 888464388 640749648 830326594 911043613 938130493 395640769 582386189 957801298 994292137 182753898 265548158 687231789 747206733 23206432 974665792 938306234 993713239 506836982 534572677 504335644 507153905 432679993 863007873 13566328 408494621 644673370 987596227 910291764 995257998 849441507 887484263 777011371 830778236 331452442 647231385 62379766 166465806 30170108 646858411 806257170 835923860 650127487 916643930 343954282 552262643 960510118 983190212 471672117 593175300 279221847 384555891 882312175 936122561 535698906 918929460 459204248 976292980 79598086 208279679 605872770 796872750 818841793 889964494 562673749 878750634 657872966 667757007 362740741 566821079 612947132 699493034 194138520 978557350 539873788 998554841 615356322 968625076 611275857 918555632 307729696 452304528 466030888 582253125 779674892 934038482 498601995 535126984 716011432 813736559 505962298 847213540 249179255 753596459 195135598 624187181 741086828 984100770 731283686 874997888 436695366 890253563 650074257 738337590 743934128 837900769 848357974 854181963 260782298 621456363 605057914 720623147 860450228 898399466 283326591 552707398 446683184 584149071 669283244 987333146 954358870 971274148 264935081 661553895 231020618 357928815 342568991 880918733 833795663 861885965 358093713 913293825 980962090 990507911 942406803 972689202 549666257 747834681 329809330 437915368 452907016 554698986 955100135 963058910 310692033 363122929 413038518 860409549 409195781 714659468 956239911 966377273 160880266 437291158 725877324 775210579 981019001 992519224 84624122 459165141 147606185 344313328 767667143 880832218 15288390 62895121 892097862 941717577 907521009 922329257 466967018 907731513 515424189 986975479 416392541 893263985 653385169 748244114 907795414 936255715 349448706 503790977 417878864 828525162 393262537 448538403 263275022 983942342 626878888 963459668 206142442 779645878 349973361 797238268 255089983 441081482 580750096 617473873 457584516 458811597 480761665 656589268 409390979 817089153 118595990 918352445 541421098 692863121 714261234 914867022 604190780 612886606 182848052 543747962 58818055 777685486 993290299 995123249 100069773 572744636 653866847 870037452 567249709 818027001 91047915 556945691 521828425 749651494 542725571 674555903 395059828 636870371 223976133 993454685 294650196 454885876 847603455 965889527 949451934 970895676 942446815 962348383 199516885 571249666 962927370 972760773 63042546 433458366 563068999 954078870 870144266 885366258 595649572 787386712 791853811 890634946 917984327 944747277 139733704 502515706 624532672 646565763 466474968 538908549 799584818 960556999 871402667 907220043 322186098 913980811 774356863 798766969 561412512 666471671 204017279 374625976 495277775 624932883 709248945 883516277 696277745 937195851 900642016 972696428 449189138 735910875 493171409 946953530 581133897 743569262 1245540 261039350 754746706 816355769 913267207 978428244 742919907 904998977 606548726 783262051 941699185 994706209 886281926 941676551 823064615 934104880 446726174 655371055 284843990 433041357 379528375 705172301 685065623 893065609 483528861 558858899 543755755 684841876 489543146 702023717 935695873 941649600 384906725 755308800 108841899 789728756 124468079 809948018 539100289 879297249 923042413 984506967 795831653 887037258 286682795 990555558 898291314 940673694 712173027 985230647 929301511 994475883 889982620 901049063 929112002 990585971 409539830 594292267 62013883 899811384 756924485 804952726 30848534 805209142 112454015 444302708 607831596 999843253 943257240 967707475 102547547 850171065 316952742 393909863 186503108 712976824 250742100 861713662 114991206 639287238 483158716 615126475 886907080 942410476 453943509 569981422 986686953 991997912 397450497 925446459 778129462 869068234 765472289 897769845 442450278 663228874 376595954 449312216 686116431 701311840 557086007 754390673 453773216 658719057 514749002 946977118 95040621 570011866 641287072 970052936 314828681 546488737 803686273 804533968 648335603 911581779 213205624 936907213 119542954 227469846 250883448 890978238 197788932 235332160 862707942 989729599 754417060 977231599 545802357 616342140 749745462 977152549 585500304 962126390 467190463 902037113 917338184 959256042 266398444 309312932 55100071 243314642 230670383 402252809 526324325 881193257 837677207 883538740 32301638 70286857 815909140 987500877 373217545 971784042 23241955 426517007 625771557 905685937 593864887 899041327 173498833 846859701 850877433 873286523 359505176 390517104 770548934 869099327 849474660 932943902 835797304 947048246 290531742 378472016 290019563 951293611 927741549 987376191 661309858 937355328 16375302 849552931 354791423 584725230 706770716 887588462 307912089 877105065 524487103 909071295 396317304 865138781 935764143 990520675 904316615 932065179 432638218 655203030 631930790 905633312 378777103 904377898 439690272 500090838 544302195 836887548 339913285 737119274 171208799 764567367 40706306 733345933 211414566 905277927 210449783 271072629 520758880 828665481 898710911 946688295 932635162 958837686 405108718 825129629 461512911 814559348 836279461 887824084 95576159 192482708 905461471 942742473 813657793 999378388 716994580 972255207 841611426 893736849 956352498 994195847 483284788 760915865 758841850 848714846 227965094 489243143 170748867 908097524 678212169 990539586 791560652 874736593 952395816 986680276 128127527 659824526 169464924 927759840 641772348 923723786 217316219 985978466 674526231 834540467 635892997 724206636 764198377 956450377 892030845 976834320 136270967 568923456 245238618 399404088 212120119 922128572 612295378 884963026 123615751 560798361 805850445 862195873 120581684 806260454 906756068 951297264 308464754 992607388 951999507 973854910 479905419 690013123 915887374 932577129 825159746 894843002 649941399 875563605 642990988 968893075 588520652 954014189 259246821 484575409 679150489 985116185 625857015 648943536 262652039 674550363 835437870 930513662 683007103 858124456 422384445 667945289 266436610 370707606 307225504 854186504 693162803 743685536 95144573 928098366 79003187 834348945 83855065 218848485 587325870 754164888 669962936 802938771 93662960 325088961 427708483 951293140 295818281 922178103 990759038 992584727 567668350 857515234 839368925 941530475 804900429 853517876 862230787 965742524 886983322 903481359 170666152 580028717 120902075 455610037 113912859 634389097 824744771 947148946 1077275 55330885 734050097 756054148 547599876 770533576 2589242 691876603 883528394 898787359 503098719 912264795 38736291 93541756 876085382 926187197 964154233 986559779 93522632 803142003 739083671 759024494 708038868 874606305 666918427 917807916 107955987 946648983 210005575 477122684 22023304 386903180 342774340 537770665 509509552 601134883 932145608 943266118 679167053 911005615 926417110 966756420 600542546 742900838 614280177 823870482 786191297 816633245 4234449 884427771 678681381 984149806 366055398 594251752 260790925 771875653 76531317 389694572 77719675 389352316 905808328 919666609 458120278 859439919 377514268 619185485 69170658 315002040 934994200 942947804 714302432 890412755 225699874 369581744 339418090 661710355 79531178 882755349 977825731 981665812 583917803 908079808 143645039 641779036 110276295 617226994 786024020 900233811 354976505 792878774 987118129 997749190 206676492 259776412 269975058 928657019 307184396 407288940 874588258 958745845 568521993 709682967 542561103 958846714 856608204 918902333 42343166 163665498 776856419 963284928 922910433 988940831 129040394 649710982 305242562 344135512 668850461 860351066 230026980 461787559 648905075 963108152 301670999 413528460 311179716 589707445 51599556 871747492 580729288 990721384 794853876 896608699 977762868 980894539 463392939 982618911 809895161 886251421 259784270 338929026 635435712 697939617 906647184 942124710 797570070 867711512 343646130 989074798 190821459 875932734 518921874 583622262 456817912 884324472 6119201 276634412 694104954 876492980 405571496 919425273 793323527 862156636 818183149 862213607 533042973 703637775 638374757 940645903 189858234 895532347 838729452 854383681 728100074 817809363 34506156 308090311 502618242 634937224 889606039 941081592 780755826 911240343 148792546 673501583 376624294 802971010 113665807 799579223 46114196 356610158 875024339 924929443 232110233 690586324 367140813 668692837 77155948 385265822 294424541 890066925 115096226 714093404 386097471 395151047 270918304 733011860 563070115 925500445 933885366 950580693 786766652 810573956 652139373 707797933 132420814 569353150 958831112 970252576 156239356 471814321 134177534 201503765 158065847 356532946 495455159 954723664 804855656 895328089 529067030 581281700 622010478 896538281 711396963 760567055 561637311 839339839 29968283 490656784 975732940 983556383 574053390 647714442 229942595 955877386 495911452 812758389 993937449 995029215 239855779 357577055 463615926 729668148 619074288 786471486 399104956 828463216 489592530 748645484 651496744 974552486 14832193 994925472 13829954 846092339 785912829 854006818 358791949 448410960 656172796 670440349 117509575 876618924 433349771 711863398 944855200 988007212 416752997 590230933 492991929 642205210 515530123 825544440 934020449 982607386 709926564 747748187 740060502 897488913 286265653 872180088 844955752 997404187 459859032 957987761 836157130 968028519 58453708 438570061 386811342 704967552 589152048 633323859 987154186 992786425 36256626 320299396 381020913 817192363 151817406 782005336 542094785 741255923 729420242 900726286 601626345 896137011 135786547 481003917 65079570 260940768 228355864 263321469 217318917 465053229 863267560 889708488 946042542 974425386 934569464 945331902 87048836 909106538 986865696 990868250 19110820 962035081 440189701 775153747 989172764 993708167 781246268 819151514 802768277 995528763 565754864 738907435 739424794 827064474 973901108 995194305 165547158 990363874 22904840 350710676 959794202 989912429 242821208 827851403 844542196 953344053 647882200 993547845 365832769 708154979 887002880 889047423 297113807 881599692 281281380 723839660 150186965 253687706 677424471 708249650 635154453 872311030 866333549 952453642 10797541 914839145 739756369 929758694 937210880 999914828 905585976 985736055 889668422 948186806 645172799 650831574 955953811 983959262 343271357 804402821 314574059 398693361 158488524 533933579 600064718 883035143 513279796 953187398 153761906 515027886 449922762 478751622 802521996 836517819 523803721 755719690 833715312 932691588 164916745 177186177 291322480 862043668 786589886 926808152 987867555 992590243 188852345 618793547 558530935 768644857 997707903 998440612 512655954 849609864 790447687 809400982 823029057 935212573 289727743 949388414 614032577 803211618 440351927 726019226 776619729 860101441 87998784 828170176 61811626 237382168 17129800 844826751 341352542 523154960 413659227 912129074 626363536 637608535 376902350 618511698 279762945 727177807 63404137 563653827 824175681 853035319 976755386 979298060 538445376 866845787 491670151 856353571 677393875 989314838 801208118 999444377 675767176 783848854 455642843 823007502 33001586 592903739 237691728 419987240 827471250 885779076 107046017 568242553 416661417 776681720 720509129 967781353 191350980 803072647 637166741 935412362 880610894 984450335 123816356 194360871 684310118 966227937 591521721 658918854 954751758 994316388 582599191 799915799 989016647 995831247 589480799 633858646 742807345 966603502 609835234 766420164 740126098 919341896 625493801 936320619 554584421 820896560 82182904 262964917 339717614 924504491 88813502 857043215 730762394 965341168 220856460 934277405 788582093 831456108 98516953 216756725 621420341 700227279 810562349 995519121 312028367 408052464 408437593 945207706 442532848 504984493 811224855 855444891 904265168 938565855 578259074 695040430 863955728 964831593 619274763 810242165 847142732 960158943 137976080 726971549 148632607 703830330 333860734 467479264 60447998 425148497 502062332 618262603 110799578 181172903 523193337 662474134 320631993 370351103 304138391 748428647 584466027 920657450 725858767 902868187 485337468 639617693 996747188 998780075 792132382 819102150 466135505 960814557 270152011 301331486 862066749 909740101 853933441 989815807 76010679 119301912 439430651 972103882 548592358 588515436 650107618 676077764 423052224 443959892 724825450 914946363 266326770 784154424 391695368 531447278 527457646 764670588 763827155 917214232 95476340 156527814 100529379 574000104 190198507 758830427 596890306 977886883 914692363 925403855 934811627 947210738 255729009 971936008 171501439 766140623 811766826 841279481 534638235 591183641 893702052 904456709 892769474 985686075 270759483 740776265 849821132 922748290 785300580 793025164 608773629 910755661 966675224 991293501 665110781 830324190 552885676 797224292 90889320 615044125 908637467 954024731 749123165 957149632 220044160 889834163 863933381 926810647 774889228 940787535 984992325 997830447 499882119 849595470 784428728 936622265 471525410 518769352 334883107 423037125 476463312 952731524 389392228 918094595 271292741 764879226 480619680 954424549 931989552 956053781 743430914 839223757 132016886 255983422 456385138 861103192 849242542 906063496 585976934 619163860 373713606 777275923 427260427 695159451 128076550 930388643 440980676 882292204 20807626 368088519 71089271 796010301 931361999 945760329 895618483 931247381 157019245 426734699 947421041 953168256 109260220 412146149 520529408 963664573 291327463 937920455 99306290 161425201 766463773 887801463 960225427 970233135 82605427 273030337 277044156 661215809 377928924 520611098 386385056 516895689 472125564 941776177 459311138 870085889 914232165 987726592 860058153 917218819 83175518 973986812 568026164 771657238 601113294 920527519 542602014 568482363 402509640 428143353 768704727 806530601 174910599 293362704 637452244 934849345 26767605 93968688 410959192 851331765 460661603 605979509 87588269 985958887 442474847 583163822 87786955 404382242 160003667 197762507 239959845 953315030 400934460 756747780 132874002 657526637 593691445 600054026 433753677 658634485 90099979 405327892 55523930 960196138 292295478 345383991 189992700 520532314 811862706 826373010 616127310 903188607 698726275 808843790 620642476 818497254 562438518 808490580 595914075 953692819 883891668 941918239 938129772 976196335 178639226 529039997 140169054 537277398 674333497 801526418 682471801 863335430 870660761 912707698 961628093 978291080 748375215 969933009 910487604 942097182 930872928 951347844 54188766 304523423 721430266 855102679 832937986 904483758 107002824 386199038 583761377 590538933 732833818 951931466 520084065 613462680 135336539 987378978 989783206 993661201 916486194 938265117 752599021 811184965 375605 298218270 397897150 830710593 987441082 992265375 434342406 750869881 345055069 707838400 594692622 903833069 263672004 703152517 153584325 487201577 438174196 993123474 947017916 999096907 542101211 998458095 890468974 957927096 377149164 740833078 557093409 903882455 734681868 997437976 930548165 995124433 902855688 950357206 611781940 934200352 728617075 961696251 836031356 977856915 880588853 930054475 768452782 993616208 23021208 439707530 962250402 966467713 943102621 973082250 60241885 533800429 380957398 469409624 158240912 420425528 204806648 461644975 290634747 328955087 529156549 678979254 648320497 856288892 403336433 805239736 457852345 526639793 639841960 912886245 381893887 759263009 848113861 864864747 531231280 617163420 305825498 684247237 251376379 945517498 896665295 978237285 117020172 814219653 252441704 364724183 63634776 657095891 360875614 584987910 101970838 655979613 13495726 627234539 604874986 908388215 637354427 873707847 251223015 790383412 172693268 262663141 144673437 211701222 995149322 998354737 733663243 936150096 816338220 859629362 527031664 775534512 658551535 694021525 237256093 462349410 707810950 837815869 982775672 992329898 500344433 678716914 489917870 529059895 107224194 601093442 187283171 400302303 511581131 639871765 608495024 950179072 561321113 762946059 934393517 952662451 690253987 724378237 520277548 756558733 987937819 988655720 942687253 949425077 162689025 787661788 216812713 859654156 218633815 977484905 725072076 852767335 293319370 435898067 787601629 841115445 533574925 905266501 778486062 844019173 201616065 837704906 442604126 764809022 637181634 654330280 155256468 889208968 238272289 317146661 533599711 639500580 629526302 661728997 647060738 696864468 26474646 506215775 199424059 248175403 404268923 750188300 253816079 903504076 407007434 861674017 854813259 866652741 325887776 579880591 897055459 989930315 1421857 648121034 539086451 776851011 546803400 953884501 392733771 502520906 746881392 868832294 918664620 936410211 538004600 975349883 176584568 792907456 252768470 292803804 271928377 333537022 683719992 887283394 787096550 921265618 286905313 676385994 640675221 862707034 563990306 869290742 126651858 885729104 71676927 304857774 462088475 802517325 616337713 734939062 877801219 933198482 526362675 804010897 720406529 937831698 654678044 866362930 238391569 556141410 155571098 449079867 786665782 975472001 704072470 994515489 512936616 995316414 224578423 410803623 229777341 628948715 49598258 380276195 461854434 796418633 628485785 813667828 53711379 249386549 385738239 789093195 26268049 421138925 120681059 484784539 459357790 617490247 22514414 735671440 229261304 543858305 940056538 948166750 729915873 989335251 108171583 726513126 497730346 920934694 158731598 782725930 88336758 483457966 400985567 764088153 886297182 970914321 917747581 996496025 704243046 815873662 14605855 29734230 289612882 589679601 655911543 932181235 718976861 724780077 617790848 715525795 250112399 457565053 661129809 911622807 644507832 955783449 992207498 994754702 624890263 975244299 532481159 806994512 572638125 622804408 351234321 520127319 207503993 382770904 802887173 830372451 353116789 386975194 170799862 595918029 684333826 707395961 874101514 874719699 513925429 733258299 359310899 978901838 352415859 561608630 672484888 844910945 170577533 222727481 711296069 936202203 306088727 376936351 751524434 887000658 445904620 949723887 731606149 797160771 508401769 921034867 177349669 378869199 510255364 861587439 220411205 684677571 883836179 951746724 270923076 736972039 669886964 848876470 691276282 841713891 995644806 997677283 400700947 579196420 111721039 816392575 947437897 955938272 790779197 926964098 486462817 722089084 578543481 580452732 573094424 681923555 369218599 911880928 220041255 998773748 875142013 899560553 816651498 970501858 295478999 380170255 940181283 962337525 605848672 990037839 799443002 822398795 181333275 399294864 553491432 738471705 438827099 522256424 490951641 804974893 41851193 722185926 464001770 622279727 733255844 936383971 459080943 580459368 969733373 984008936 227896814 602275304 285708561 645605091 712817400 949287607 601557551 889871098 470051049 984504870 559158155 872822361 916618671 972357318 98584296 522759698 608246617 904469413 375643877 719126101 487863661 985854767 795932822 917770671 829950711 944049130 923365399 966388570 107115292 799288215 249533905 280416474 455988632 675857106 723136962 888043136 815174951 974682093 252726207 815423358 158644659 592113751 658843009 842798910 330777264 391332427 625567121 875681777 549286393 741137487 301810366 337233244 289916853 456116549 667116639 855140822 947392109 986317319 338103513 876423688 386823756 840129505 403800479 930533562 344529330 366068409 990144035 994432716 965219220 967238325 61320245 759039539 680887180 864989328 623727843 929501766 206679051 728072911 502975520 981658565 97039915 496188677 77976128 845932197 781038383 928621942 104906809 757543133 425967009 992540106 371868813 856647786 583428538 910563990 752615509 820560836 338757171 642847844 365779655 934214001 51639927 175811437 656093448 658791460 280610498 581327999 786781389 967426182 688918654 841897749 823541729 911265360 359421292 465746218 587289484 784487686 765441023 848996610 251201148 422435341 107348788 710931808 716649692 811486865 556281065 650898416 963341447 984157034 360275589 431918337 208596780 872218717 515066121 907436150 545319306 797189017 378327479 859936465 408706885 712759437 352389426 588325598 163008983 601497575 562510647 666262823 411117338 863432262 155123501 605470326 486244053 618819063 475034819 738305341 17419300 417479098 545162013 728118138 852532818 983339181 484469647 759227144 204488628 657845126 274650889 720681488 690701226 981670421 183471175 567219735 629894714 826055998 91689736 453243043 81576065 232338932 691844314 731008034 66185440 704364996 427582915 744891808 370458513 825319650 874267126 916740532 413100625 426877151 245445309 608689977 834139671 998253982 720627601 849971305 426595127 878379155 664363482 690756580 751688116 990302864 871046019 994694542 994423813 995078011 156534483 774793702 143834747 376067274 470873145 747990181 527762778 782771342 636150425 955248391 523918322 823886680 100481564 832102765 851787624 938223692 210763505 275902782 858022992 869783579 332128652 462562075 750726256 824563470 248584890 732419286 667066660 867345626 551208120 890552782 401779417 503405646 70173227 337411236 915648036 953853886 739045229 973789490 834668222 971110004 764053179 990185119 435513408 904428860 220966842 387870370 865233778 931250459 639647086 898415284 863658905 995473644 291967031 469016793 364282945 979924828 136319122 399656647 977361662 984340420 619793909 671978816 344004903 344559798 924785803 941273977 292056473 931923350 214107777 234968623 967799726 980473214 219603027 374259394 228037489 776959133 446179597 785976463 210689793 238790887 759977954 953174606 707163412 773700906 102662869 111068807 380928137 621973558 684869847 994120509 251691399 435793898 173792504 436379675 879037454 887833505 137483164 419277928 408949205 670490657 75066279 636392429 918142380 950206046 163953552 836908333 924052063 991026015 910739220 931437786 804929146 824453597 262237787 474473601 614039070 768090221 424467566 947215152 781131359 860647608 606791567 879636580 606659735 844236837 984055897 989956897 807717408 966998782 393487031 520545094 51549191 985945904 367167140 642668567 530371609 944206481 837210280 847880179 307899162 463209544 252462550 548729996 36544957 867542833 457729071 795634104 976314623 990044001 739370994 917542861 297716624 350617823 698164460 734077732 249722061 511304906 968367615 973576069 107951210 125216709 155528353 920568855 887166681 899124026 47582907 806683890 767536988 821205748 349799363 579507466 360172219 867076985 723600283 927671862 591519744 805153867 64449130 930077597 551590741 601516613 435459166 886245170 615050805 909976616 342392885 434065765 497093040 975336887 508135443 610436341 359368821 576536918 836590983 859053557 886141732 979302551 625232699 901023100 103366920 981839205 624658797 725728856 908795568 966054214 528099729 795121040 289072268 643222405 892123107 993780448 267260179 941471307 66361325 433305797 557764538 976309337 312226404 948039674 775620411 793240641 175674900 742335202 728762970 730732034 464638813 727693489 369414976 736513935 692078819 854368408 830395958 839424795 495650677 780438689 939794842 951659687 849087288 958046476 706221098 791417152 791983399 890581956 681016637 883098760 102331588 696624636 146469429 554408359 638163076 998756968 593730835 665329960 891713194 905188677 377926816 918612181 242762154 656805928 238472057 642364240 856018723 946024107 264274798 366731336 641339496 675241293 222081251 675231036 500333059 916320615 857176078 993315453 426098130 945072872 959593383 977426433 980459597 995989892 516883673 674172412 373945992 723347944 677770100 714713875 434178367 763232762 664490222 780683310 903367402 976503339 790415212 796673849 133362615 922599069 651908000 767439983 111902707 833356885 152768018 250776917 264450158 333978972 488648802 968007543 982036868 994876994 570887201 635140024 973719760 999460478 419445821 694695123 512073374 545652405 269541436 597086607 581276087 734323405 153192690 494267689 61014686 814540858 553058042 876200434 594174351 924791171 247436084 700423787 724302673 761080075 868068483 878657008 444110649 504285685 821773581 825394800 527443089 946465635 277458597 621285073 384658975 602772342 186110618 846099096 284965569 896503514 648780609 684609460 552328088 867243891 438189791 595652579 486060123 753880352 76559781 241133934 737828672 926530813 112624532 838879579 782484435 930361627 34634648 166463486 437240154 889557329 10312478 453784382 160551933 569659017 772972431 951167985 158759744 530453988 691333162 865222902 172848528 254093776 146009303 507128847 598763929 623558190 265803757 355477277 964728316 984660049 465627117 547405028 192123091 220175364 198442389 406631090 365681501 653741675 189645686 852544999 684510505 914947466 925228835 998249242 508517287 648022624 524344693 740981188 858806856 938615880 935073244 992617389 666237963 832249824 874157326 897720428 849229574 921948671 484524859 501991275 640292548 948057992 696928955 713215051 904487093 982205594 495662362 716053435 404364415 865844600 539443344 846652408 617109356 682194758 242632330 992628685 86064614 151391100 746652809 830680431 741575685 913545059 736429545 997673133 201195106 281086859 813605904 828431342 952091364 994578256 947660482 986929508 699274921 785229313 109513170 494949091 414435902 992747808 945151039 960809149 705263327 981806913 612424115 752084168 63054165 884046864 532208701 552669133 721007536 931241033 784729947 899289303 751524977 780279280 608130451 933345204 297015173 836463545 72399413 793196329 655676040 960589409 666354628 752047173 525444070 553826702 467849443 777543928 850244882 867980403 661930762 974753211 885393036 888744303 847329084 901041677 760528092 964187327 348165976 921698672 947489985 994022801 871897645 890055247 252385065 969538857 960497401 981009896 942358286 958519043 465522519 811977737 275876937 560232360 648804585 929948771 347313751 596865728 681504163 903728243 331960392 848822900 15507930 253908911 20427477 504621779 296768568 794961331 687442511 699413984 98568132 356153582 670141895 925326210 352390917 943987761 77163767 930680842 736004145 780436057 164705879 401717078 196169206 755589955 52892912 907759359 290177398 537940511 184846617 816436994 789232420 988020935 312623275 827830821 97955592 949120702 113840918 918354252 123958132 293435196 746880997 938245538 361650170 965896070 333573242 719363968 7628981 418290604 135330692 721406601 857412159 984036163 688815632 917362615 966078149 971717158 905710012 941726385 903221197 915379827 684176976 703164513 878266852 980949532 620226364 827529794 891334562 979932185 683334046 829343527 403290929 686801192 757665223 832674753 813700415 879657219 168627680 201735422 405283635 946408824 802833186 898114964 48399998 467088557 833540994 923426862 847003891 886862356 383393985 984868829 894667596 995912801 383169771 938652468 46175737 447836657 750931221 813632702 287027046 496220396 431191665 794571302 378002940 758536301 837529352 995183833 134891215 331617548 290454919 996569968 32005347 204285823 597814621 700099257 124448222 371627564 896271463 961053383 62308764 567422058 916321168 924484112 196490222 703626813 381961221 448620573 263678312 903179073 389636765 756516521 42300647 876461830 383023214 676478633 513548093 679791689 897184680 919340849 119090477 985049738 269703730 440375749 987085514 999819387 631626552 657447009 703551403 843561254 12878249 373553805 799759492 875578911 821611771 884863559 599293996 807716410 266589666 577227839 342155720 615758298 769044420 878475006 285015490 319885336 469923165 794431601 215739947 223589503 112855995 900652713 551901262 914204062 779786386 865892847 380634613 913321555 977282286 979724470 810296021 914199024 900772304 918386775 277934043 607941080 812048862 839560036 570707277 776333916 929768494 938785562 372113684 906063840 600793774 632081623 58771056 259105454 659229483 786250934 432739488 460973561 37954582 819088649 322311752 871825330 697391911 866146937 476403238 633430275 322286602 522592024 734427451 793669478 941762223 966140081 788320903 824725206 582623797 913999365 392270642 493857302 604616518 985012672 261360084 501366487 50932058 621611139 707026976 952032936 508144007 595931562 8436844 731420149 57799695 888587984 90295885 713047094 657038865 819614799 575145972 754300151 239668597 512130611 911840141 955495333 135071224 988237465 266618447 298876144 251742395 795814421 988216914 992126782 535331584 869960229 189328296 957463021 481279278 920749211 74962110 967374498 18049191 646616809 800133561 914973030 442091585 937350929 70193279 911063736 243923820 512557199 895065625 922889989 311033297 920444086 735852265 838030250 57741522 912532924 840080485 925476556 971856226 994612212 834448400 962929028 873964220 930873116 467696353 857232475 338318033 965890768 309352863 603735042 198503020 741172905 420237798 972727764 59371039 552688596 254537879 350012624 209787499 934281779 321635288 791695443 989187268 998824110 200334754 892496626 699055517 765686919 586127859 669396144 798801807 972562611 414990587 528680967 12467526 918385628 921597237 979858402 964920553 996462691 891242617 901315103 390554348 573633552 404939081 713398936 679694536 803022986 299656811 996971638 850693796 970312788 150997852 759344064 545416913 964243456 219491954 633661799 481863789 539268211 485622797 764188155 509780755 889043621 796284341 956609034 746494296 883253432 440146682 707182984 882703601 971086729 823511180 984279233 342346867 504427961 450496433 834485592 234354276 958259878 785979573 929162464 384157201 710057828 434672185 907253751 187312345 618729336 182325820 478732627 375784725 454644983 976432510 991991144 109250488 866837833 183996303 275280197 751334292 779945699 578151652 642584836 706162497 760912161 540522885 814136310 403441186 435299552 167970191 567879763 719822321 952190937 389459338 880162652 800146480 983524912 620744569 953160325 578091149 732014309 890169631 934156781 287749332 356640714 968901269 995853843 307587725 569539369 906931515 943823806 501122209 789378222 71457077 255578540 787647042 930778573 728099854 771793181 980878896 986802800 67226459 353704238 999464004 999933971 623920693 990091335 453718584 737706777 225201611 618267371 626331854 915998415 419004167 849150393 92701929 942829612 232657885 467329044 465395441 551792990 842541327 867385815 760266573 891290877 501494196 701156829 50155622 79495264 11238994 392237889 634276226 924721715 955541140 955771766 951776124 986933351 437571976 797180728 897031615 991309724 442306989 591820905 210677762 810931280 541463465 889194014 530557238 983982412 719573613 899229318 511931674 668856395 700287927 898803749 605858806 614474530 554656385 916313870 478617472 848572761 855524123 967215083 674327813 708515638 807639570 949890230 830124363 982941719 286725106 833166100 38382404 342392817 572179330 689899299 133615862 835406930 739641315 846232719 218815599 808705628 565824721 789407967 814985532 911953012 65749109 385358309 891196475 956705289 826079860 882718475 75799310 830223145 242666769 712022257 127331349 386808760 792846049 933321073 922963807 960392777 333511151 994587974 711071963 926767632 256846445 279222490 969220943 987249969 856813348 991615788 26491172 641693379 116145878 793521163 950655327 995001613 207813655 556179496 189455902 787747663 158170949 186354374 494346766 920000109 833508217 928843704 762923510 780154476 178281606 653009127 249218787 466236322 10696817 34581699 521355578 695648933 327576145 852733779 884061869 969643410 967868873 984194089 519561780 801753253 738670671 871369238 879684176 949915984 617205045 657820683 647399446 922549517 603340502 840806594 376670702 584140360 770259524 821302448 176772036 826241685 323341503 968955759 131354602 961145659 177848411 595862112 511761593 662848569 209974505 940852436 281023463 475863716 9147085 441483941 769637503 943614302 993448745 998184362 467093426 817627955 606514284 908427282 272472996 536581769 45006685 217359989 264133609 655657228 969935041 988515676 653583639 722551112 190286359 917138705 433103394 808432953 99777700 905159827 452474945 589986128 28130119 809508338 112865396 240523398 99531920 418294905 744916726 789893507 256115540 550819486 796503664 869404944 596532698 869214235 299583918 448289551 245623145 290418090 250822595 677931038 70632368 706054875 711196518 852511592 396878929 437880808 338584252 576644041 636973652 836132680 295370974 949262603 60866285 901957198 251718532 446589505 892105385 896274262 351991798 663377537 4294013 376855043 477380195 572004102 514560244 781061533 857220574 929838749 252103427 625217614 950490127 960712594 968457265 999036288 394017993 923324177 296268934 331354689 228682819 831901184 525361932 579695181 983752945 999093395 414330249 496038643 313108255 945224964 187522882 481791868 688584945 844040355 216219646 219158114 709499404 851247018 238889736 272228253 435316429 841935835 869075088 940838049 262724048 549338761 747953548 838363574 831459980 934073546 504996941 564049067 302133138 758051332 585483804 895882764 613102763 646734572 247223627 806823879 10790293 522824585 636527542 723419439 951241258 975341442 984266200 992149936 441156284 540130279 307925699 999069013 109905061 444161492 505915400 625830622 888591953 925753458 616375648 955867519 114943361 638972453 460842069 882289760 534518040 955923347 33615353 276804237 625227400 788652073 765329049 989639563 463039127 538105639 467816312 913626210 993640914 994405934 483674335 859919506 608423819 769032294 589785526 976346433 573154414 978450162 385157879 865536686 214847569 634129268 337215190 561477913 745451184 992888086 111354787 726697573 836489808 937475881 453728964 876285885 407492849 618870856 137110946 443107839 908494898 909396389 753544421 829814241 404282903 988227033 234062871 798962899 245071860 990923655 747308594 892502025 786005189 927879673 119720608 784771244 838805031 967343618 130618410 680677592 654779962 666749344 8327964 988735818 868068078 868736326 304535654 342856773 553058409 622569654 933580753 941918196 8215295 269475876 907626148 916322136 175023861 737418766 433157528 510164865 485793718 492453129 615978183 965923544 607150699 952325490 418874755 781765879 550820889 845014099 938506569 976146850 462173103 752841352 283835679 526047126 409593263 716671043 446497638 733445463 101144054 865643288 959550041 995698138 145808198 195040668 215996928 942454970 216265845 569599319 695938849 884536857 337971071 460719917 819445701 904424603 498644222 958380455 686287552 951831137 171020563 900038080 370892271 792806027 963865532 980233459 733059843 905112188 267871081 449872034 163128311 876501476 611146807 692429031 238033495 975864952 572831060 948607989 302848814 476566856 313664626 638529794 938019138 940984363 412287742 612258031 274653018 708160184 555941355 869454807 40879346 425581456 85326864 806130531 372956669 541535791 45839998 535168670 676484359 964377410 109224287 755002158 459601707 920203382 653315161 867832596 160277724 431215032 506063435 622060643 291901923 920129252 269156625 794353766 202317465 727420726 227800884 362298292 41522922 960562502 983420346 988660571 521452950 984996998 122501154 719842805 855840981 945466216 526286925 599912864 614371876 792718749 192303685 595798593 86033209 126693623 817738434 898697892 293381130 977196110 789260148 878848425 209071279 846077724 847702842 923265010 352922154 428216974 994645684 999569062 165030101 356806818 585909146 885594037 829511590 989866337 40048645 826444124 357611958 893895283 666841603 927708179 495366485 893785504 333360527 388044685 667013668 746426985 775298606 799049322 781268159 935409645 461363606 817156176 188944566 622283537 333201878 706306393 858614917 864367040 291062042 442121467 967758710 980650878 477192450 628921448 255826835 334599128 573210532 948196055 803256695 963695094 730642901 919693397 834401510 949029613 751053041 857039956 145453998 418467403 104429842 827304043 199449433 369592878 179777309 725880042 396811721 619985555 702636388 717413813 214433776 694562344 235031422 839196254 997124737 999244179 677091869 724987546 826286100 940341349 2453783 771019318 341670834 762165435 684668253 959262949 568063375 940168336 79076174 336909290 256924687 606071653 673709351 707224910 50530449 626984600 437544172 456291957 212051997 926798618 898991279 981493427 814446581 935342199 682445324 816733090 18755034 642838033 580138158 701040062 545978281 908538864 523933759 924083685 56310081 544440667 362425462 436441257 259876147 373441560 341685009 785142157 205946616 274231579 410266008 868869892 669451528 915037045 206785915 397300642 524688989 823885788 571361112 920915923 791089067 932255544 44935939 652144798 498699324 917397574 104019359 995197225 470607175 673921488 996389217 999664443 329254477 914840658 523324823 743020068 61797787 510886265 310649016 684265278 372502412 479294667 377425433 855052634 576491617 758638028 24581531 793680551 812966252 940889203 285228719 521366644 564728339 817733032 906640047 971985308 994777179 996952329 694524877 949603562 601230326 775894050 511917099 767334523 68021461 70513433 596803132 952024007 181898319 654971376 294974481 818377186 627706451 899624046 26053496 298098740 918993676 966262702 216992220 871284312 766591467 806070146 348021740 465986459 283066955 507415788 131320400 810777795 283282031 481189042 679617667 893988346 693800968 734867040 964961514 979844659 786709992 791219051 292385408 782594935 533011007 623301842 278288855 646441072 490722680 872059001 156326760 228252362 349198205 898557660 884701736 937899772 836297959 920080338 203585165 558120327 385693323 959648705 23539788 649779244 352565981 490309611 534472828 622594056 678718678 807298801 348378991 819336396 100952013 119713255 599393053 713279101 814734750 995691874 573024129 883829397 350900471 381669395 136623723 206650799 737730247 872481446 601038008 956815080 760873476 960506948 780499150 925757216 138971289 928283308 953972651 988663820 773951157 844821053 965604721 978968912 919445446 927825316 53171928 999911109 795397431 875012193 85730703 820171602 312514906 874527023 682702584 743616225 857428689 968517632 593826010 934885180 9789568 620172790 370149048 715518885 799947365 881406587 85162979 816658087 30804956 114419269 154129286 980379113 283366762 493822482 165829810 436808960 388740290 492060308 731482876 827831547 372992601 712641080 457369524 502142086 516295408 611886616 793606500 877231519 534554736 972690151 623470496 629865030 821942320 856687031 965630198 991025406 743693485 990475266 674337340 849326021 218106930 600437494 941548018 972294569 297716010 525064908 356598387 616271599 84605913 196747059 807504480 924518211 110562039 807188543 594654964 837400744 941003706 960028899 704773037 956358832 190361826 975374467 929411465 996589315 631708009 813159742 110202279 473822999 58963639 498596315 969251216 989503479 749969770 963206753 13544499 590976813 814050041 822932804 343615407 513394904 208095033 878799765 924430789 993891508 143745739 599476224 40542576 912548568 462281013 896548627 220051455 501792980 709733824 767223684 705739595 736070822 60591826 108736924 101615091 162529921 551192286 704653632 405716492 480583336 49328633 671865011 509324308 913611979 532904251 870579185 427005617 830444796 810257513 942910920 850575414 970185869 281913543 701274316 768461660 921614295 224851164 909784789 406175103 777948666 313477883 940676507 149367269 783540919 506413322 600173357 27010936 558040932 751669266 787378990 154104550 622666387 899390868 900778884 379724437 505290682 83348691 569863027 700752163 758695503 741755749 897057660 933208664 964024920 802685941 808850116 401277916 519597259 424337946 477265213 671727655 756249848 305330727 865480284 558350903 841888212 82588825 907601300 885601200 983336755 773886119 997909888 302093949 927857950 134541496 226455006 253920197 808552438 918643159 993675029 450880966 637851658 574179480 941098257 323783099 844419167 125671423 996292131 434962785 564030840 596904029 737616449 323129926 698076648 199323293 598599821 698186792 995240871 60397004 239679103 564831013 599804266 214935554 706914385 250835477 882791853 720820689 788725493 869826449 929843399 664747160 945576087 108893601 135695715 177449678 611274455 125975875 787289990 49593735 439433772 607831892 931913708 971791068 994054414 240894230 480435476 713526862 720273036 215022666 531878535 670857621 985546063 754519464 835978247 3856891 28819995 679153551 962066635 823166792 947188001 858167541 951013532 899975306 985414085 195873305 406439838 163156092 971715465 958137457 977059811 326225235 728840948 744016621 878622127 860742198 886500950 556361925 667905448 309837677 396094316 805997350 996585113 245905659 294186710 721311290 766153407 926331427 954354467 995269243 995811834 261296497 983330848 64386166 836509789 72420053 922842601 734777184 974985301 328483928 789538980 867145304 967139461 719215590 988697832 153240664 684452146 952071061 952856292 75536274 127948626 453230497 917650429 766556659 954735331 250732497 929222456 305657224 997699813 894920185 951799063 617237309 793677195 344879762 680779818 101240746 499480831 768247250 932271525 814988139 992038009 946057281 957503908 90613018 802321665 184876415 207170534 207884363 728803702 713893565 946217082 439528368 794149283 849931963 942301919 872405687 907670045 795244655 920750853 483473001 658862906 922263421 927798442 413207304 523397491 128993004 760076163 31626233 549491725 301474906 717858103 587991704 763111377 246638137 333310722 498380086 622163108 661677563 960553744 488122271 854073234 874622336 898875620 648953056 832176069 259681959 685675714 898251242 979331806 347753130 479754427 512239102 596039128 672089477 917669190 275600632 677988439 435892569 828790413 542681720 767639538 795598103 828615968 134258796 238554650 366093438 795070723 333316495 461276725 488703018 870861383 917804146 997818320 918057478 974711857 322616150 627826948 785159702 932783514 469889241 917977130 393089400 555656397 587909560 712579417 681494801 761449726 453811208 769472245 87765557 889475803 153944146 616976725 30541710 520900921 230182996 571550886 388047859 586711362 505725327 860182858 74656811 551192725 801136720 817101486 952230334 991526680 851761968 935031474 766111853 941772128 897854352 992007200 794175313 874098014 193723672 754132255 35167587 428342192 276720323 723009184 72812801 813024732 875854234 966715306 360703622 377765257 935132997 968876351 503401367 892317231 428744558 524491024 652426063 856552588 959848371 992321548 249562859 478598277 216902664 657314978 867035843 976788374 410859109 479212517 683536365 717919660 511264599 840305091 275816779 952150765 679265730 766606847 344522420 778219972 575962191 677855996 117056176 134791856 761932978 839279610 365462357 654342834 40679301 78143621 921427966 938957651 665751777 829976234 904807722 948590056 467057072 890385009 653466097 986519437 658263741 786739399 690979113 878294948 339054670 907522993 638830089 674558432 881161409 991691861 407919242 457864891 277505172 873504457 335852782 338339939 689760210 875215361 500923127 561709080 207219268 777045304 933881328 993732385 21502829 199845357 874360910 953373692 133649500 586107463 23132772 997655377 786078454 909354588 250428908 527955864 720134247 808509225 666983924 830494270 328949949 942715887 121381490 354867834 968320940 975254175 236607375 515959166 978484539 978739053 180366437 654482398 521464081 738562417 789839906 923836541 461467652 738038815 39042505 175070638 113239377 476030270 799253259 924382867 971229839 984421331 190678882 564179574 950964524 983900546 215968226 421959261 217559610 701075817 789534404 824032008 281861664 956378382 570030377 906605435 214075630 515086280 629355826 850801436 566380079 650529545 710996115 996812248 128478063 838504787 339769251 725898294 135991081 301488225 690772820 945955048 143831690 638238893 654031522 749305906 884534682 986335839 611974671 927236067 247308584 860423129 42548649 232829265 803110946 999727686 618558929 868236470 681785155 696232479 172696384 858042680 866827905 871933185 225786942 717531171 798565725 871966390 331703126 349764546 401244352 533438391 57320218 77440651 320385899 379442225 820961959 977137634 279211086 707405170 802185561 819162115 168970860 552837049 456601983 538798425 882759630 922368341 600069289 818190906 275645228 547615995 747473541 981149011 799303918 964624840 375384473 575754015 975356118 994718516 84945048 248316573 164822867 656290554 815709023 880731209 131260232 445530957 614258913 672170921 44350846 755237813 625654336 655181558 264199178 954509314 39694045 456088229 586922379 805956344 74015833 783557681 211976946 523872055 442219824 783965816 938854065 977976652 223051284 763296865 853404437 942444497 462288159 623889112 145294635 228088605 486573308 828037054 878346030 987202383 927770978 975799572 773386344 869646348 165852011 904448618 566521943 863011222 561105187 734932884 956538391 968384043 992498383 994041928 392942616 985202424 602176959 629585480 35386613 212319074 920520322 953651422 376755459 683605616 852668192 917087656 517679141 937016165 367239376 529210705 840755268 992685268 954006284 960340017 552325527 997723684 111562829 274317157 758145905 760987757 924633522 952791431 401487931 513635014 738561716 757890309 239016970 452332895 96726702 726419640 809724288 813105771 658482499 767847137 263123965 538816096 277010031 300315149 876689828 976032873 656464638 805497573 573926118 628095525 618244774 855979421 600600817 657886151 234281669 801215002 292838706 825570464 533782135 753602233 730685710 762519169 928255026 974477563 220706116 889761606 768162821 868522374 655873405 969227401 482408071 670496671 23458309 127920552 990289878 992491116 598392509 658284424 151976463 765340084 893296591 969209404 255289731 406343310 336291199 611620570 60257626 199404264 858979418 968810082 982573672 983373448 313991733 641248206 316322551 447935780 227124304 861897068 741342753 875788075 321195877 649923649 667692123 996552545 66709050 176252228 847990581 949253142 289894579 355792283 474838057 855799187 165422774 915818630 568776420 815867120 911258008 934496914 930941998 997272506 837604609 885594885 586808404 752977088 629623214 977799303 56594588 772424964 933005990 990248575 289723548 823996263 229838746 998615109 49708750 106559103 679028034 886367585 593695025 811503163 969128494 973220343 2006696 960491100 199708836 438616072 219410166 560277578 439484000 738467179 412528198 691813416 593188529 810284244 151762209 743344345 653381341 670513715 467792357 829162999 618458773 865251643 366683432 993343458 664021462 829450518 679672601 957604463 693828210 697697811 719610447 919582672 122036390 760547320 592863535 886783434 189329209 723220280 109340811 793851765 222709391 702923928 286601730 740326886 750569038 840290297 980974574 998659368 817142433 977491439 298613200 654000881 916676070 948040900 952300378 971981011 920795903 922081584 711492673 868578943 280831064 846275843 126798144 164160643 373286773 701591603 93749436 790707106 104763470 956019670 133523913 297186885 177154640 398945289 26351338 320810750 202884430 530989358 107629308 696683432 325187301 476674762 717108473 920925087 756552212 764977622 274842052 287828658 449410870 905997043 481410380 541137936 280764934 366969388 237805921 922201305 443017583 885953079 200752570 682040099 543696013 787686777 497559931 832298633 788020934 800677832 649811307 927429130 260556089 703458763 40544157 403167840 74374151 640317252 963919067 975318877 338202032 424807770 476365573 778723488 59642044 520197611 485914808 505424135 920577709 967036424 374192516 665724144 395604893 638735168 7044311 848193124 212507383 681906287 116380985 358498173 493165672 752688655 192526018 313510181 234961320 465230671 617371470 991149600 475160847 634404224 319246601 699796734 202249444 828000186 668857549 917373565 784166352 829355553 883784720 968022750 672641674 718926917 84811098 565373140 845405339 910828038 413332677 805240758 106204004 224585925 322704288 878910050 255356171 659554968 46893129 232733365 553445089 632575245 911139031 912507425 820132335 910562987 473497957 526093953 268616555 627804543 764006362 990449825 903007054 969717920 159225255 763527731 697261919 932815374 96898004 695949029 533785494 701340791 691094107 873387921 974092808 984229046 48147467 281941987 605723587 809993069 124883974 667213537 836179587 881126222 901942099 921618534 710464218 853545948 919404643 992996520 897937202 919457240 563183132 668569856 21217994 447012687 905883582 949367445 77150193 955703266 206790212 960915385 62149972 677333875 282965953 461315491 768691251 866359465 413456754 801240786 179119375 656987172 901625445 914688487 978310332 989277900 768780005 781001529 517167266 555215026 588320377 676769178 650583353 858642998 275660528 522836582 948338733 990277736 869354040 942616937 982232158 995766543 381454118 798990110 606760342 815473857 594375803 703611447 107299347 527518280 774191750 797495291 871711095 905262143 971852329 996409505 112986273 261192199 230463643 410822183 360050720 878823614 462893166 578991913 487690174 839284068 694667116 996353645 514560124 905330793 370425018 900785783 894351458 915225153 819140210 879916539 15139798 141000941 878368160 994473542 103715392 933461989 689745360 757952431 971106367 978925908 102674814 851888219 86805339 334939543 629547805 790403996 985055665 996660394 223676782 269401868 360076114 755398486 900383268 912640096 292915197 714632309 534342426 845376360 281737157 752767613 222287671 925003064 98010452 667894006 856108563 870239466 907516033 950004681 161645685 739034970 333293635 736794950 963657809 985974682 280571534 904389610 712103549 803112370 531031345 799854392 215573013 578505948 685546497 687863876 295565476 653530240 332587921 802347294 918756061 975677323 156259487 943423735 711239218 779565897 291992542 567628954 125624843 599159439 448354998 548111094 258193609 950543680 587210106 795819915 331859357 863044552 920758051 926496156 629802726 971006387 948363236 982028019 322436736 484145355 135758633 626069717 226077354 669521426 618735738 703475242 648377128 951653882 604834358 876815145 39508209 891138844 443874128 785809741 649271841 890259025 718420897 989239137 958238860 980953876 280986818 982494318 676251880 901755259 342464676 581682069 627505617 720552141 736861086 934649009 157709326 663246689 681432540 922791151 401037584 493159251 822169482 920568740 746258603 799565896 954355601 956744337 854340457 939102477 182151957 626963343 376425834 812729121 189049843 522944020 577782422 702895252 228533170 632600044 844152261 928306093 918656733 989514726 229854945 813817627 466458916 483805803 468034595 911317311 357178811 858773470 431152483 611457438 876594461 990976575 783439611 799620143 535208653 682085206 706572265 987272184 104912217 723708282 944867458 994369232 209816273 658886417 110893624 133003509 535662784 929233259 852287620 980168657 285494462 841374849 471412369 755942547 122937125 727311103 498684252 999550544 327437729 491632579 960199542 990680496 593298622 613256629 875019284 928501967 866319249 944039645 419520639 427169710 387556424 663167783 85591019 963136072 512151590 756401995 163922352 973162555 499814780 875916558 374310605 890593821 480692873 788958073 967683155 976544926 535933050 839542714 595634409 846542658 324429340 753543976 161413058 864975957 787308664 994295882 665670035 831963289 387996273 776329847 876831502 883200471 286649696 864771916 578864175 658433006 387159170 528907108 832954527 852482254 332509752 873851159 404616347 512864672 657070675 920505924 574723558 710216834 124596607 602734885 758827559 806385877 333900718 434664085 487520801 519606836 955016269 966573661 428669918 844685250 219580783 980493468 75460838 321322025 623298718 859414592 683344770 950819933 697230586 959338963 798136010 987359344 386346051 533143331 422181034 873492026 886902639 907174016 24202954 182193408 755837449 895964520 991452166 994114433 892636269 901291198 624085065 800820791 742543706 944532239 163480985 794849844 221222165 565627666 560934286 702378374 519479905 936304126 111915445 937562764 943809621 957342565 281968002 632923957 110691335 264624880 117991842 564471006 773538410 961109411 128850014 218114496 486935341 750738440 49585720 235122008 303816046 944207262 863986604 923736744 480858812 668226901 151769100 825103100 444471277 779789515 271075792 861630451 653325790 678885580 337308256 543277769 215811550 681271449 887541087 926677401 653722102 657623707 426117375 434306352 188604950 685742754 38613354 122927855 823446325 828196641 220802452 882424587 866076171 915917889 927593583 966020733 247375196 515276450 828643505 998455479 896175336 982053859 35665057 294077577 726500825 775947986 546141987 644321612 482314870 726675860 899260154 999174401 104837689 306929202 270857025 944515889 712900776 987573693 406994953 407821715 181171359 556017531 103009266 186533180 750739725 764945848 407769664 440318640 692070513 735655664 678535684 853093948 68587695 896768608 575766385 946083682 747506731 971196567 880486818 991407140 675248262 936248057 701237903 896561406 100295825 986771256 463635571 654522323 158159363 518598565 786939568 997678088 215113487 415653160 767864557 973028560 50173138 352295483 704220757 839696524 537900783 730002630 243302142 624271370 945062731 997599798 738146564 959018185 25914971 776726254 244066792 589629102 889282189 981845360 490191920 815852496 213449742 999394613 267598219 679738408 773389226 944627689 949575767 961679306 613295077 870526350 374105489 725207398 697176909 942783100 406248987 781622286 466632806 718326245 266583535 736784043 625218528 857562562 128573144 201593516 526452682 894583566 149272918 892854444 733484543 967915197 363510527 591148087 759294805 760357469 549192305 734174918 127194931 890771782 328778325 420881488 620677885 827966977 889517732 892910307 661795272 970828462 29304589 444905878 317021071 526267630 223547050 543839034 844291951 876279400 803304951 827520568 99246850 896294604 601640319 809014627 903238076 993227876 612112097 690022731 776594641 873201632 340348125 643660441 325844308 571198584 433643409 746892065 619644096 665905393 844621869 878313326 200323860 879450888 934171551 957591616 867907282 911336054 893618979 925207520 403913023 480804889 73307003 754852749 500503333 910853583 841384788 848893267 637754886 827583429 794025696 825344456 914630751 924059069 5782003 547759064 656419709 890371454 465403317 502698148 58157193 457409245 531009395 756422485 38033243 269523444 159073315 431116116 584990259 613175325 541764873 598401554 438976918 486646508 4289618 757704177 713623463 957794843 834846429 929377965 923677571 990264258 911822019 994805517 686722259 979770602 108678690 266685987 885360232 971711859 685767913 695499160 713414412 742840126 692245522 710181238 991685424 999988348 187364417 449118419 554798378 717287982 84911962 951205373 190858799 799263767 302182981 710978468 278125768 414927762 877549373 939906447 420642926 488864813 429695318 958510742 18416047 401859106 857977153 899793554 47682927 82633204 526714046 529306066 729394455 782298037 983552812 987150076 226048113 845798662 765339210 785206123 189533687 656503922 536164784 962265200 608156258 847371808 84949700 381551329 232781836 326107402 556970767 650591396 964772772 996612047 166355623 346978920 79933036 512190962 404882339 994749797 569901995 809535469 76493342 288782921 368826587 821410121 602549444 912093579 91142564 366809130 635140157 808738272 59840179 328805598 873611098 897724867 448434415 578212613 480964575 699423950 625669121 943666717 511556483 792245390 392357327 878375950 838389844 879550934 860994545 937632633 838631183 985909539 249875882 637030579 625414767 984149032 286852393 655880859 215854175 861320079 153950232 847936065 686924931 983519693 341987305 943799956 990922717 992108851 174198599 237857529 93953711 785588334 670448525 854834815 717295632 837060313 760307032 973397440 582250368 683708963 122513008 228088013 906724775 941334112 609921030 985740730 619750019 883120292 401193991 770910350 500255087 860464748 421411197 941859811 34328577 767959848 572230567 953884579 245423770 787874607 893944464 894016469 144592439 456347152 923557246 980120641 665167591 746410650 822315865 842024943 218742999 422947664 880351848 891607812 799114397 967267189 871839067 908206207 959597437 972569055 407647508 478385625 998575421 998959746 207120174 782764710 538798213 822913843 486961935 510467630 380051186 554235509 185591679 515839537 942175071 988206798 128056577 412029234 766096538 974744430 986682112 998314740 152241528 974287916 367317663 563553158 184541948 342415547 813050615 866625324 682310193 861279631 297270552 628903725 147151607 300442743 395131774 771248633 513621890 795353788 383782325 879739287 282148010 735130293 436539370 524356900 815352741 902488544 785778612 825064189 987527073 998571894 287487549 774849346 464358334 594820959 297158694 376972106 120606141 814481372 794660824 814216403 13648098 943842640 467503687 844268216 518397644 840397159 571027008 721055194 931172070 988668416 766825413 876240555 258324598 740331786 700026342 892191311 224190152 847888743 767899530 996172059 985889112 991138684 509985655 821601738 736752006 950210198 613951766 653789779 153547059 778134528 905540573 957281305 585293069 769290156 852318026 940183498 576585227 640249312 206587726 905308066 269359489 561931101 757645392 759233003 496975104 944720372 682149221 880226232 134833382 380866084 433382698 802607410 922268597 956675740 897448467 947929579 385968116 943176234 251618663 796108540 589852642 944492960 733141537 781257981 894564559 951416026 553632202 671818636 109442780 798419307 75839427 249514594 491906684 672997253 655510650 746381778 249800074 337541892 157693058 679480735 419003270 888547853 467285085 647981814 388786149 590260496 848097089 924973222 299614533 395065203 389057522 894613963 750711414 860776786 296645774 583578507 509677776 614960272 310646992 360384313 324292641 886071339 169116263 251533628 344972655 676718585 801076965 840347899 918191690 948070299 187395209 972003858 544126079 668556351 113731535 343993343 252887360 631031531 352356608 812189251 380939780 584960306 635143404 865166092 827506137 881120289 599961878 809894973 399581907 790858890 777933677 841440900 448174392 561734245 532384676 701689152 862047262 954704895 598477035 753766700 719887438 879298963 378510104 621502677 758535587 828859772 735940449 982912134 153484909 283844912 425823757 821319786 645649624 870604617 385795456 404965379 740771650 827266172 884443835 964311200 341732846 848779361 358325157 722596052 794672854 887863788 491751092 792552230 655982660 946092550 741544020 985522460 650204994 910769667 938301535 992870648 780012301 926667277 286127662 491076159 421891856 733464649 597695030 953105728 246335255 308667669 71245141 779590659 208703793 667880879 590453096 685869221 427996519 926653317 481355314 988032836 553363401 775185974 701221684 980250425 909079213 962441327 240597887 627653280 61751918 471192936 431698595 557923462 992560499 996803635 776551169 826833702 733036169 940504523 952933150 987841433 822480443 830917282 538126870 982371620 937584839 991523623 431074477 872369836 565220619 623340310 684968065 788151435 240726869 875893937 405814986 887438693 614362056 956615007 819464125 951613999 338081471 600558028 683206049 786618201 636164003 891593889 354673843 521620340 353267792 548272057 786632174 860380859 67467795 855582970 526543027 641675558 123524939 746814669 261780 136186859 78026168 232159746 332705568 340260074 724052596 749770524 654174508 690275247 1755760 135007044 86925581 174812806 208655773 975551249 220777565 566465267 845865907 852036284 793360245 959962082 24502867 519375696 479907916 941417698 51262915 224723401 519827169 549150372 425346595 893132413 965053133 992437386 910362293 989040894 580017785 742498799 143096603 182409150 15793523 493866269 818729609 911603446 306974060 744681364 263852667 926882340 46921156 273459704 156194229 672073022 93649734 431400379 894801176 934723603 105647986 352983125 29133123 969229237 576706181 600430277 863056723 999474173 648945166 751063012 392738986 458700466 518006677 899829142 937775266 954950871 171278336 519120473 801863841 932055787 654088784 960714583 625824701 821013721 497531707 796326403 698436282 743114625 812356437 935066881 710496011 881685468 621718519 800692137 213187542 957473048 679136332 717060157 10267693 715940396 987936152 990961218 729832057 803378329 170908892 630232559 418506672 831249819 236917386 938719716 103282897 880423372 472088360 506927812 236744427 929147232 296989103 773652447 496304062 620648462 472690760 569785648 807372426 862325255 407570017 423286530 146387054 552538485 569231521 741363701 596952284 620582343 511282359 740687241 332542927 391200242 928345026 937858532 132803962 770380795 800681267 949256186 353946237 857335841 571788570 797227478 402961273 437779555 172666297 306847634 590102747 909046663 895226546 999452965 33922817 686034498 456613164 511164205 930410399 954042058 960125787 996837062 114909177 697198784 106001836 583417383 249131291 694825262 816908050 848304355 401287304 914019065 469961647 925839882 610582043 637516636 164971638 516139520 298557977 351200933 411615737 904831026 153648713 263155879 773508045 991397505 983928840 992123606 301465126 845145654 298051185 646271666 763748096 884408240 363152510 905610189 314871243 673701153 473389220 812853874 509384437 997464779 447335647 924436044 921661787 989334815 259016285 509168245 880612727 888994432 153622963 680501675 33708229 78260377 348418022 358680756 964135455 998078193 234377223 984184747 252682534 456674224 870878604 896444553 746207211 833616843 770209701 930586491 898906729 979139588 58899574 429223626 704082278 767923034 571134145 958564160 608156443 909453474 661382785 773338965 96781683 722805617 867136936 905586477 557558431 579164327 979183336 982220281 983160657 987852227 915012126 999242232 212658780 488127999 674212961 809139647 941863069 984532902 939836421 997143133 386165345 486376608 969970820 986869973 721773058 878528578 990017582 996050573 687565421 706512057 150431035 466545021 510750076 636101742 417669876 602260855 487223484 561019469 226956190 868500496 764591543 815564291 968871694 989669568 830534177 974308045 914025891 996670529 757433709 844117566 491231473 864847084 42094681 727301611 52033476 598357785 996823211 999361380 39182310 708460591 375203319 763369550 915202568 965754143 144388939 507091003 346211063 577624918 300645161 647962204 351309674 817067051 175597605 186988477 121098432 651261157 204814998 759830442 970663232 990678366 59965105 890496426 722117457 898267468 654132727 857505012 380462934 436259551 760406844 949335123 898340353 988925145 856509291 860868655 289905862 777364554 198960048 826497711 992086126 993054106 958912680 984121708 365434064 496333247 553157336 774596644 987957759 992887547 916960860 926705953 373887559 811844105 359739304 926593892 96521959 110101564 854108344 983132859 897883132 978230596 494881 446201555 202265618 632808751 815111820 985479281 472883472 578959821 928256609 943827353 497757888 781842942 338185868 631859908 80313773 441201079 989619704 998881260 850058431 963061158 234347817 677694645 333696181 377386436 962211567 968063995 827407086 860040308 347414781 825923221 290253342 846792973 140507249 238036878 410607535 887115859 254847110 678274091 292743850 767861063 639800125 944869709 456190772 920228092 270336441 602104699 652683434 741598972 502395481 914937887 34342347 497674508 362917264 726092155 96246583 620058462 964672982 966454105 477825701 694892394 844815699 968195282 744658749 998085274 390804804 928031652 836928442 863807779 383856870 480036811 61394042 810060869 278449448 312327067 970440752 996941766 888282743 910302338 651413889 756339827 212061569 408723491 994463435 997648917 974768649 998505185 554842467 576229974 626652913 703192871 232675019 749335244 802617137 970864101 772177006 885682119 602839888 896251814 539120293 689128085 585598358 909291711 707375241 751858230 360919985 928932839 594038170 826669550 93700861 704792823 290879889 999164706 857516129 904685502 216388490 894492172 697636635 884315263 500322403 596050788 958755429 984230154 469276116 967022244 683079446 917630063 844866932 939586716 563225410 871198966 711697144 882344356 109901110 451231490 922323641 928215691 410272340 564738481 124752488 728851027 885668254 908518331 217831781 700851595 465534356 828697869 374882731 794659075 712824456 930234665 722188807 936168819 345217239 858030970 224252229 620203182 424293154 715817716 583776517 743981685 14197321 150616390 202874478 915496062 405000728 480252895 58409595 525280030 182010484 663804760 614911217 892988674 893492290 906678342 759307867 816609927 662288361 669051910 100240276 407881938 517909747 832027649 963269954 964282574 968723818 996367608 923580911 995275008 692197851 997066815 214413504 384688362 732036472 879620800 436177835 860317397 299036310 882513201 370881115 474666822 6772174 669152283 866135148 937442097 861579154 937809908 686079858 771433867 873012887 986268270 659061635 989392370 867127842 910387484 94752292 520362831 415478531 724690488 888642722 986177085 488166552 744473421 891137504 986246916 218431675 271031206 586102408 649881149 993725743 997429261 252931306 660345500 141812376 265944182 197437289 292014857 253595226 742624899 762989114 856725862 666522232 764971803 294954689 596184183 339570115 448164347 701246731 794670822 206634323 354722054 901296613 971794212 345414192 693410029 639409318 873124188 325477379 348054713 839109764 954277010 209031652 380292661 448751889 628824556 901576949 912242207 855939295 905280747 481742085 583467880 917235297 923399346 487593323 975548977 109552081 802564929 464896709 480100805 73006116 623618805 454578023 767962664 263544141 336970123 773667022 834440841 186836552 942757778 840338655 859073236 284177578 982894629 997242806 997904384 570172153 792689875 873310347 875207806 179211136 561522806 993737906 996689128 407713584 781578861 516841955 887002651 499927982 711602148 80214886 669564677 961240726 966426225 21775361 84763154 329881742 741343140 15706163 251528767 208271324 947928631 643469189 693153368 627520534 731970646 486696511 995118886 337753900 803581489 405859993 889113679 143192446 916104283 962599429 976921791 221814383 863459932 112717845 422456394 436546158 585435028 727542045 903077070 299289189 533024849 924133414 961036312 631152180 882320509 268342310 658113678 724681403 963492386 304349301 756204012 672333497 672622161 257202354 472424132 497563859 928177322 507235965 582263580 118662510 452238991 415853390 821543104 459589690 687862597 371165605 535458347 448173 568029874 95180244 163378175 488185682 820580729 489437579 538867163 131915168 803291113 761054624 980089872 575732747 726623117 209440876 880040295 328505486 495586108 790672236 995465235 631846541 729205306 627227836 764883534 165256482 398217531 913683793 957609338 563994386 935490806 866308065 987908807 792505118 977375034 292389728 987617098 487520675 938848695 786190082 925995041 978122762 993333836 27597120 128489814 575445796 736771413 152614030 964145076 824879737 967300433 187764357 856998849 949306672 972181385 223823195 260548700 319430927 993639217 463884662 869965552 393264304 477142752 593840425 773808907 504409668 752180883 880511804 935283910 685033404 714723340 774231946 959105699 20693659 919819087 480952904 572754678 533211070 681128754 846365053 995940565 10916199 580898867 858419858 956897318 262492251 848728798 116625865 235733546 124307526 327472188 147367803 812389656 964532881 988246139 904609994 918017393 217834575 433298747 758199130 913131352 428709296 781512550 154734554 518529809 933361117 936585687 427720149 499034410 38613235 995866727 133215006 469749608 573833559 609638213 470597529 969632946 555358419 902746900 513403918 851619760 259811154 544313689 290269270 728711346 795025789 810264272 649011311 738724069 189688824 223526937 941193963 971899803 840273220 954267421 947216141 991784129 901073860 904532933 686316266 731929987 852090385 867500645 275693295 596100533 337102019 347048722 450363778 646620780 426031312 758973670 931677717 976311716 477622127 535553303 890849438 950054361 585238545 771535609 835643391 890759582 762839478 992137640 106235870 204692955 987229434 999354224 774847530 971980463 417653667 660101964 824483520 958036624 932241103 973837400 816613017 899846070 88823078 898882561 656647628 807155603 795177131 835930962 289054494 439790097 94370645 482366381 624878702 943557689 329616549 477647921 248569066 959648852 534730045 977765404 149661609 150243798 387916434 524672648 290497822 944733018 203937789 807438100 554154516 848024055 980382381 989798785 328367110 473164031 770482981 786232330 548480618 803501951 467678784 559313823 26867172 212737066 293264452 657558497 592549110 780447692 723890470 814236869 489313689 790410194 500143503 876068025 519498761 800267730 451275812 933948709 933233504 956057728 656778407 977463198 223538653 410033020 640922591 886929522 428688148 910360229 315747122 438881174 652146199 948359348 632656799 952033778 935855223 936334092 378327086 893626833 981237835 994255987 666746057 858524578 607695621 962240602 13130571 533367424 256778572 415622142 223743643 446587310 256661169 503981056 516063739 519232471 340150264 795067110 290920015 622487777 981826915 982573544 234497372 992743082 35722533 62798565 430196425 969925394 741867064 787210519 835660689 896949506 849730626 948069457 890064336 977025459 96806112 230118428 333650042 728577767 873509207 883997069 41795327 381598052 177465539 418033535 355080249 924675966 590616093 817726246 702770309 858504348 195799138 371388751 841753373 918232650 518597791 926608669 57078162 367794276 709325535 819899107 657561751 929827464 669520640 983430716 712880436 802475565 767995660 999738935 458778879 480972961 103003657 902359500 480991849 630261029 345779904 994373123 545431377 875566567 661825396 955404403 272657948 788901052 726759853 954313785 293206550 679787967 17680767 367161349 171144699 882222129 52109583 748988365 312941651 447154658 378897072 813294014 893809623 944153848 759219589 828766360 176549278 900582109 349378957 755017140 988426420 992986603 233062075 373031467 728356618 968392514 864456973 954714453 665731783 855189973 202896707 263222438 83256217 603726256 217845251 635920807 274067262 362272746 536835677 869276252 86073507 304607443 76471097 429654490 823320858 940832655 555875231 879674203 541670672 721493289 368488106 864967038 992324549 997843975 290973404 629053603 883386846 897842636 371435695 790139851 793028465 914799159 397498203 854322880 971488998 998549735 158402570 647913855 829520684 900806359 598740297 732187510 442849097 669563486 863467088 905161464 707411460 976120307 535239765 664258110 758154981 921593075 530433053 644142360 307180987 825349073 953777443 981665556 583060653 815220163 659507163 669868257 961089937 992095170 693786287 728043393 395145607 683426216 359853263 511290942 640709709 937874976 485979337 743556632 437562130 771022525 556669743 812552460 9049301 201950440 418420085 900926902 991016011 999874398 931176042 995628923 858578133 971679081 872385321 926558322 120969033 227050950 376816289 532621013 509830316 646048548 402082503 951127308 766270567 962684316 19330578 624182128 88913151 306904761 307244426 423618219 641284089 989185440 104031365 467122515 561574512 807530191 161614497 762145315 733229307 915376132 236754193 672785118 605060843 926072803 766215684 944971021 54915513 506737160 309246887 847326518 174785703 924576383 805015008 971877161 457589820 462038766 929203502 941134659 589700182 768819714 909544563 940433428 426660666 831858729 581405341 919947352 675944243 941815738 58989136 320456447 993019465 996390808 18648777 732585016 296024186 426758423 681589924 923326099 769082237 852389664 839880466 970684150 996181616 998543133 648278850 752388930 225761299 902964325 168632717 674300117 635716243 808220262 709362256 973104350 105861958 419163107 934627961 959525588 779979823 881325952 182933501 478704603 579180818 636029921 790881817 815548865 593825791 811835258 449166765 586932691 146983706 364077663 354053378 445402678 859583120 998605802 810193150 958783022 150473349 223676518 130670047 405629753 856006673 897361150 536414074 626670315 245957924 307617753 441434553 602928071 959146573 976601584 959935357 978971655 395415373 902565825 884048620 911742624 476928109 716279132 862554978 869737689 765158685 866978522 700890629 887723125 593918922 635976437 439917377 446228284 86335753 713979067 343648526 828497215 886306244 935259982 837820228 917026610 928292246 946242306 486402895 842765344 765512533 809744638 179542512 307671856 577767335 665325525 51560754 311496721 527822225 944809053 47799542 257610168 483445639 766348906 450051986 982507789 354308620 471164437 220030354 991735528 609627318 727303223 540761964 725662288 698538584 742182842 651407066 832197071 782561298 845369216 386216241 672577954 488860917 669111287 282826593 653980411 62155683 334898035 470780081 483752260 302910309 881138656 824026916 927148501 213697514 982791788 889859733 900276013 123559558 808536126 778351385 931820024 916928944 964656040 198270631 909127535 253574639 577680004 862620878 996594145 816448609 824299084 717584992 883395317 81980457 354628208 486695861 911803542 903513349 959811635 455887127 872750072 317538288 820734207 514718711 981636420 843854211 989650288 671950648 979673249 662169560 725404854 193908338 207436371 117397637 431381528 183227140 728187994 348791005 623518154 253724130 447330593 797628850 837971545 292257097 999453657 505068249 545116150 902374259 934528705 947978473 952684377 776502108 789900870 685968104 833836632 669028557 858874675 805766865 887828613 865523395 913072766 80910201 81139580 547802745 613668966 660131160 689426781 601500781 897734882 274391206 475276957 37966076 514724158 852730173 856028032 217185529 280100985 493097403 619620523 833837310 837473021 789693136 903748460 133602360 646521526 794363162 818651725 653463005 847014543 6675458 682802554 537103146 574697348 19563463 412532139 825109061 888520042 692317784 787036363 813383013 906316486 562162189 938745304 145305768 671884665 403488528 832676613 72712988 786348544 388743313 884370913 841771267 940897056 996898636 998801140 121941387 606837927 321485072 828864557 180437730 441966712 171501542 487283165 541946376 653351457 777000099 985085023 705694680 978305233 373365027 552271066 938854667 969217152 927878954 993498894 1038608 165590170 481960456 997027985 637611353 874412543 763767245 888172691 467406471 675642576 809193855 836628854 623946155 967192607 624615258 960644733 519451516 643819383 154392769 985563935 151191484 464898567 602829339 840556299 853967132 870477689 504617367 701825963 743053778 840277357 946450346 953148795 27614711 324010173 678155330 692672414 625070953 662658216 609338574 962225000 10839983 429094790 123420829 413460649 780040193 902433696 969731393 977790607 243495373 296868537 212677687 306996163 46280478 425290142 779506620 891271738 993742885 994712835 864205923 951506667 335439781 517232977 816399137 972212347 832811427 875217555 696367888 715135196 681351641 942794966 11573493 797418857 236192752 409967053 496483339 510699083 239838994 400775501 133179302 715067771 800502059 831787389 913567744 955653255 294322830 995735816 139874429 435564527 213840063 766830791 479261296 879431133 580542708 990474318 591987931 931717593 700591787 938751221 776064592 818974396 250190799 540672448 375217570 438451663 774018198 902151836 601371557 649590477 948706733 996887367 107575666 459509019 632839098 676039709 777697596 806062212 389923118 912053762 765998176 843653343 533813511 544442427 784894933 947626418 922829790 940249496 466629808 956205218 400379309 875475334 464802876 963559071 514893458 569143125 1255004 54046855 886375745 919365071 220833251 589180001 155577534 195485672 362811101 897290685 811263779 828909086 954705568 958522531 904017358 974999442 915109745 963979708 541205673 951932728 554514337 630069359 347593003 635030371 375532501 550599069 761491932 767559806 933847006 991049642 243492698 581750142 826011834 923064007 728640655 877536624 759361180 853393011 469842141 993249320 184202211 433226952 977235320 983134534 216914024 264284563 427866349 679692697 448847397 890945259 240721638 442440623 762860209 819446781 976389287 976778932 615853520 879110637 391944977 883655532 334246165 959662616 724125273 895894957 459800012 555305498 957912027 998841684 622850119 742986483 545350416 605008796 272273368 990194449 707951018 822476901 20760907 774285893 638179135 853381136 121201334 574273835 332998871 430752985 666190444 820287301 211155623 578769476 700267339 925923884 829116043 829363561 714042262 863471923 38938783 985040392 229672865 415462737 967961474 995132334 258263232 798367816 825565697 967799578 422033032 464317642 16287024 315166793 52581198 199652990 994431980 998976771 891665129 998966455 180290161 732822663 927409558 959462647 317322951 945241891 773015000 944923022 315275578 889298441 721471657 952995132 895142056 899802161 892197124 935290593 318543 777342976 651262692 793959525 811406910 852023863 847240057 892271512 33745305 582504916 893309880 996065052 149606531 448137095 138059356 699357257 407483906 614321533 199569190 240618362 131881941 513326740 162357904 819472354 354289680 763167825 212362922 727256707 692870498 993412208 755458549 917293885 685277847 894276915 491761071 920492815 796076535 832175549 254096478 773438296 990708542 999847386 576333043 709995900 420366504 779842659 225869693 384682312 474330766 549862906 359994351 935411557 390447333 748541577 582931214 645854381 583255142 824161017 328151300 757266193 546826786 977902670 614872449 779082447 937582833 960752369 652720958 699792141 833662289 874135816 636157085 930020028 492259830 720317142 589790979 648686291 362826297 951425954 162095610 282308549 530230059 767186489 177492558 587737934 774495186 947103026 268544892 476993528 763023540 853061884 241686260 514829959 315629753 589700782 32624178 46562210 504414035 665453044 409747253 680809874 648185725 780767520 84859462 580875132 672178712 760873548 561457205 759607138 567365282 594105462 702099652 966675803 50040295 961583548 769431221 812513075 457002210 684011926 391624811 515247765 8644490 236889036 839766929 986058956 788944476 846042200 233765530 805008105 396067868 614493007 58776086 126368653 948633593 988547795 594267346 712947695 487981973 867393969 629307710 767434064 439244624 777209177 269502661 562918877 829778950 911828449 201035573 566424455 677235909 917182693 975986813 997094465 687354891 894748517 225530895 870237074 301652382 790820091 829094127 877983239 710397850 782845979 794299847 987636851 575734379 805826612 715455645 771142816 26615069 809472253 683576192 888519502 924064877 977746208 180653897 779828933 78167997 839190838 740591179 902801430 535382340 699473453 92353136 846847522 587013502 656452341 650585267 936714400 819879620 858866131 480945915 990210625 160691609 385200690 962873833 970904436 757708393 863587815 291707988 492450702 548643889 689697020 34965903 417820494 945643749 956588255 923665371 943345626 151946541 194917268 315230173 976448835 80958552 827601784 603109283 611870224 863955721 917305934 145791362 568029146 545260074 631645911 450945259 608746701 240030609 998834738 496830883 527266543 620652830 835731308 382349890 611877014 235962103 883815948 839323399 864129920 487875287 680302532 214659799 867905124 926428802 981875881 361503330 666469040 765585936 919367415 983392446 988845064 160590279 975336924 652453519 736433785 788921354 844288278 573180612 991270842 802492696 885372599 353882404 885469376 488550281 930936392 188116931 264441418 662424586 675904798 624268582 864115460 670493614 675195819 283231139 877869478 509001949 912137767 837122005 929676757 65649452 276960967 345389416 795498579 103866862 573380618 664036034 998795887 341661169 380588047 838022630 872919086 797013602 931208628 992638961 997515459 532882275 737668343 35705294 943412291 119382056 512981331 651933237 725955976 513144936 514383525 20367234 93940568 630142110 912317452 894668882 967681013 682368130 866306101 177276470 389866704 145845750 507177595 820959928 833542555 545526480 953709434 951790596 953968038 244546198 785459672 810447481 974375952 296507153 342925988 892388570 894304167 216364383 734621429 753475394 983419399 410341432 426396115 440370686 483982723 944001846 967746330 761078937 937665718 965429160 979421997 93454014 800777104 509607120 765783051 808723649 832412636 193507500 665512972 39094016 727613457 21088536 396558741 801227640 822326824 719081530 759177454 561043955 995557661 226082460 393679123 86819885 147228260 358684096 574421653 702443403 782531820 563478552 888554230 885915899 903346696 126677526 134648742 527088444 808352790 32018807 839201880 521198100 824834010 926504427 985073867 829297076 989504764 631765702 820763441 147053097 276532964 623912231 698130671 577954264 984105742 613839372 811453700 547302584 718682295 607791043 786327174 983129283 985277113 243166026 976376933 795942233 909834721 98417890 821643154 508095777 950483532 315858337 641783705 976988459 990968430 735911446 996020949 540538646 830591066 272664294 378506249 660019820 973835403 381889555 864690409 359557560 419599199 904984567 939308447 344235385 852151442 181576766 676619009 45033657 134359676 780983727 814920734 704564628 908059869 212792226 619490816 111287675 831764691 85087439 982413249 58357808 190246623 825497298 917645112 772428476 901122883 982726896 997413897 126472541 990539605 146752299 483664003 948231349 982407536 276360199 480339197 110327450 115971442 93981389 155452021 269545815 866354176 521996930 795415192 163565768 338114599 769700552 952966737 821627341 935770098 109513083 110720163 379497351 957746905 676285697 970393834 522999945 781454505 25744748 195618177 685985158 854707186 265669986 895457941 747919367 915219374 50502644 267299355 201981295 940591853 250937086 786664942 478094908 867910440 608768607 955056477 38865452 224087486 219208447 653363584 929085582 977809854 888760936 990853972 500539480 595155154 746009040 772105183 77947052 938199891 98761864 363492168 420336928 619634612 495387316 970670990 540037250 598726497 119240191 168232426 671016662 910531893 722396770 761462425 367602681 440211900 473867699 488826266 486951990 777555378 244684858 798357803 554271148 652094383 691079994 827799943 806873141 818371133 786605773 806929066 303410134 414549628 432789411 902655079 21638524 332824165 377865798 585063167 816352185 999289398 521632143 855209690 323866878 527824774 996945658 999456992 262674624 272107165 442068500 632266665 722943974 829026089 85750458 609661382 764605391 773361386 19898733 47565535 122201171 878090220 725990683 928872945 514147434 759879312 31322607 790211241 741161161 887570426 210845351 777595775 711055665 937250609 853362245 874854684 655127064 683867796 404564804 646574937 159012687 499148879 945913152 977317636 270040094 933093134 378669715 966945538 698438757 726763480 673304667 759039130 540341565 944159826 849632164 874039305 797246929 829500237 907177292 927791996 17094447 387136425 101269694 156340603 434906144 620384978 591921368 680498970 219336580 391935862 239905008 405800760 160996022 213063454 410205592 951104466 702046161 892348731 217656784 414407440 670914008 884769592 38240968 480406913 273230793 281663888 885324024 991778732 41560487 954036868 437221864 805946764 343196881 721569590 493414560 715663455 997125954 997816742 346828646 625553196 638713131 712298898 294035259 989436172 99262728 977676882 186504207 853519678 577509950 935992218 93356363 399180801 364613940 481910414 830285297 879645689 948974908 983183767 390058909 501356641 38912521 920339272 172325197 671327880 931762227 963776761 229658466 620199071 125599924 168266322 973418585 997009501 54792568 840861443 786798047 852901988 904558424 987305307 984825342 987558733 948352614 961276109 857979089 974768526 374477347 550050969 857392939 920212391 181368827 189250586 818694596 978992326 591411537 672676235 417675299 432984652 350498546 738069760 667486024 717396823 153714396 872810775 458101244 769458356 682061111 917720546 882778116 995017216 73724476 356731454 296022599 423402125 812728114 990892428 271172978 301546131 375243059 753195948 527916808 757045489 198200583 396555396 966130697 972892900 801382768 821360118 557084165 742269930 175802183 454908115 634951056 844403035 135391446 535286891 130647014 785020678 618651855 824204639 988345614 994122833 873773487 896061382 738876335 883494273 99922797 891921119 661698798 695423460 167562311 700241332 138974371 932889278 643619735 761207809 196341288 422243014 637809712 903902849 658202821 925953021 955803073 957731068 666571736 744606764 318573632 584532317 960487985 991184804 257534955 829643832 288790494 406111085 414267743 709649954 754010507 776868774 158895185 921962602 333219145 351520154 727791504 909348950 204248045 855202505 305708330 768843666 377997014 611976444 545402287 892592598 175405214 340828823 408540277 879695495 727775429 755054000 224912093 429368822 906910449 953368592 946224989 993634887 98180297 464788749 764306550 914278141 475701446 857625045 543714366 735731090 398179116 921253068 204895346 886284517 508888375 673091244 470373225 941113589 122635017 247194330 370584005 614775671 564601389 589083420 323339977 487559347 601893561 632112956 459242391 971789094 649321111 759985655 980634081 990810918 449060068 680709793 164574431 973465000 799060099 933838244 74615748 150838996 980488536 995896729 280747411 510464386 828991157 948035103 389117598 424610127 135591457 228069310 106235017 355152976 663325575 736239394 776376513 894941323 672090810 681567193 99869452 874753907 136323227 540073654 161148594 949380163 539498051 963032120 587375175 788034266 533646841 792973292 274345218 705084579 298003583 675596460 497974243 743784789 252247418 820800147 731686950 756810600 480273691 511569500 316665010 371542691 343061112 958646609 337230767 514070076 765651627 922680826 7788147 801627165 443585304 660627049 381117607 684276034 631335068 633840530 253232468 561537992 899241791 928617709 370694328 826962079 741991751 757825128 120109970 277082988 204601774 391381187 893038872 934929358 823398350 866127393 340601159 721352188 361603956 787926420 195029005 477484813 54195004 319873862 571006641 869208324 228441625 756172018 374814458 636796052 782014144 867484714 837263823 921271822 60329160 897241120 673880130 875112904 188940735 568750524 558107735 894459723 948703184 977443373 3097536 938680592 850665314 869209403 836623866 982409391 827601306 933605416 585493028 667996804 617837994 667054769 265694864 861528325 23352500 845665225 858833529 960547237 187623586 934595056 355767734 514090480 815897179 952446348 859205105 963172386 549048980 560153734 122236746 971165729 58098279 901923853 279381033 480786684 406416013 472046801 100786490 256360214 359037554 914061478 898128335 939230167 727087775 728358996 606487213 619831925 828501850 955406001 744575600 929142671 464710477 805751462 914524716 956460848 812478361 994786232 920410640 944530281 846516504 998740251 725388147 872850462 20470280 443574578 989647523 999606616 38642806 232042651 992855358 999814778 582023033 993992983 869622375 937452918 455108028 511047452 628051155 664244681 948489593 958687518 977198674 978475133 424710779 613985976 24217364 495918735 689889219 991056981 846407114 915687713 217413320 518694992 840550964 915962539 398812930 800680310 348910679 826009286 27049348 232138857 593962652 750307594 131227123 611749411 164428341 949148318 6274563 39310989 690653266 802894326 29089331 77608228 390454534 698508608 591151318 929137586 154150929 483919049 762745511 902621977 28763618 876643839 9829826 535687236 564022181 857795458 762119452 828529407 640389935 989988599 775115365 777153065 780569202 995323974 550032016 606888202 932299415 935128067 168073959 668790663 649112215 686348387 226291452 622760210 559705241 768521966 668651987 849173419 61066327 868311605 192403499 854539451 945910434 972633796 365994060 848111461 672452072 830089463 411107675 491802036 985651237 996802033 828615316 877079723 371737952 826016657 105254005 802177911 915977613 934077982 380124997 869558435 885952717 955610988 64997946 345221066 673653702 977747908 269522209 750279310 498812 763949221 335850535 730324471 832492205 970678243 154891902 893051794 956153198 983963595 338660037 962599056 777929479 867354584 842854688 936153646 838349565 961263938 393467221 958704356 973580904 985680596 235448670 759197304 210182263 619965011 83761254 693298680 729777777 899038977 786021275 902342199 714786070 874133868 271600940 499314483 523455219 617058817 626921329 902572549 747525238 823425179 563050120 578859750 582381180 967849280 300641207 314129942 668990504 799594244 606147899 800163134 419648557 469943681 183735677 500971887 260653881 832910981 37110370 691330779 829032699 979052388 378436044 975435170 921104122 929148027 595506044 616647039 261923945 304459868 242557307 948132677 858554032 935867178 331788353 900760921 657233788 807764670 851932381 954597069 640219305 991640204 487198523 900551546 874406412 922412361 757777715 978470976 144946385 542650704 535464932 836510915 94671986 581128867 830464302 888741990 14901958 818479665 962797723 997814697 42112341 694588652 624643022 677212009 784040254 898949817 122913605 700903673 643828217 665021607 350197192 929851856 734779484 870503462 596068834 886908683 570459019 699693005 975058658 997622408 933742094 950158800 246613963 689525834 741534196 926007920 160763215 848652390 54163000 869020097 986219624 993407505 612205777 672339668 424054242 435340924 756214269 825494625 616851812 705585367 593732979 846172339 623086872 850324471 229626178 784307422 481313003 852158920 354615782 718351540 134792779 536599217 518401161 592551188 395243541 566583676 940732402 981320232 870523696 878057939 879024343 965204084 226127460 685163123 157100034 215082772 128898294 551119452 697082153 919077893 895799328 997598120 633779054 906182724 140019574 844479386 344613790 693203213 65920774 919404347 896478642 940746399 602572100 782690331 432600557 448970594 697384884 965872506 844911493 979569282 94342483 756708242 665974700 769477987 805999644 869445786 81280150 983329309 586699534 625085555 714926748 873108938 722137572 815321848 742187016 876708285 981285447 994738908 792598479 891509208 425777744 785899454 811545299 984777886 301857504 670779648 480283478 795285250 203493907 519233038 708174071 786482965 207683900 213870915 113062340 432592785 844861571 879552314 950231020 968977882 926635315 967298021 309175693 405796834 37238454 173848270 306494144 442412874 141018152 868109669 108531225 379702777 688291396 793945270 65362860 757109264 346695982 354228583 813871283 911285863 70757759 233983002 156321885 320002715 151064457 981674786 86556380 170719060 258120220 321198829 712762608 955170077 590468826 619005768 954448805 955685216 108332507 937667185 554922230 866460303 140968684 900022376 774534615 801506293 655457329 772856829 510659826 696997303 980612494 989247279 186677573 936489786 704518983 810656478 412899294 792467956 302945891 761838822 405646648 854920096 983147763 995343003 965851098 980798731 931958401 989803571 352200164 712428058 435710047 565617482 516916225 896782325 194502577 263384080 51369278 872682200 572683090 710102884 870660576 913503018 712678611 829967974 750342177 784423094 172136047 480215256 241055331 970514098 104280906 951813848 488547242 932875517 928999585 977374165 387638864 413709829 582643978 596017910 77787983 467601739 990669807 992454981 92014217 944726076 174529963 255534259 718431341 970161414 417538997 550085870 629356416 755164387 680453856 787658428 382920871 750424743 522663070 717680961 462704744 646127248 764004837 975397773 672208533 816314784 266523207 318309429 650109140 956845582 620532441 721496251 68955463 529637433 322438211 861947102 182864630 976295495 760824408 816577072 543028620 834481812 891661995 906159973 841293513 965763195 760969369 872621856 634907416 767463923 426558183 934665258 2003964 475211917 979835764 994175289 154749975 839233286 79377791 723722803 275701037 544143655 199059258 736885842 717312518 821496555 348456526 544438102 503101155 820180125 854390430 859339501 648400190 756029291 958084920 979314980 630917741 632058386 881329194 989599867 762631335 779712436 839939320 934156503 637005421 746634656 589535440 879914694 719032144 970946444 929455235 973116464 126119698 169169154 994952067 995935449 493177627 827516350 621447336 838706542 302568059 310988351 371914794 609035103 530210142 748823475 193950903 792267923 926147252 999215489 441518866 923349058 965157143 984727772 917841362 932061165 97811321 109940185 393436413 893088086 995774471 996873003 317919964 467428198 179511876 794075971 2045869 129333911 86714181 168108451 225809315 909931300 535647301 580015623 672799121 938179359 414651321 794687656 25443090 705719902 328898697 591824078 530171035 898613025 56036233 230388950 516827469 629516734 357120420 855429068 694107877 844518780 45477633 76966473 653589816 688770011 296974716 519607510 411220314 420279220 254591254 932966967 17767829 694379636 912939976 992057867 291383559 301340333 81419741 993389814 522693394 687905366 245400035 563627764 295559661 560399273 598311999 598547975 253705711 831609476 563416231 577394060 481881411 613375703 373523771 469338926 364009214 695116538 200732373 217550188 642375523 960449296 276554544 623974617 863769771 881107126 914602551 943355757 167521384 687742298 651179110 664687672 654929176 838448882 614878702 759510063 50658537 500762839 178869372 899408545 466047986 497601108 998788267 999445459 969873105 996359881 322756758 600906413 371585735 611843632 580145219 606548285 152232701 794101303 811620072 892274416 161168351 631266406 693761677 981682381 925160225 927603884 882771074 964403510 436343425 984960750 157175912 584046141 563415900 939696632 675647405 814190445 983753546 987727893 791404759 964770418 5813833 719274926 204876191 919316308 899251153 939995985 330356615 654207249 204697885 712744458 655763842 782707193 310697426 625199007 969553365 984717407 961794544 995705145 271450495 535680287 998396859 998947237 860985760 904205616 629534039 855482438 947287793 984777957 239572299 944730286 547361234 587258461 814075225 920520270 472114038 976032439 968218099 995903582 705035555 904395384 968869766 982409941 243061308 271388553 974106657 993522830 690470529 922656772 803840489 979385773 616865050 852190783 329296833 704981663 574319856 610526060 95047686 659235485 230847220 749204138 749470561 844090983 151487671 647739913 611778381 787320446 67745249 775178392 799637869 830643219 957201285 960225057 52995737 663746138 641370901 824553278 305118503 652541922 106093454 963441987 107798606 258440110 231075335 246696523 545605490 992779791 941236910 982705137 610090163 814149961 485676175 673139806 276154637 592848267 17319080 458430660 952296609 988438505 862145556 869494779 518049957 862857104 9352932 726427388 994973557 995785157 436567309 483732406 62431272 281501435 596396530 608448637 981664547 990728677 778172121 959673575 781261448 894176660 771091090 771843077 771511112 838297300 211194993 212333643 935840117 936659603 902407737 902932778 530814194 951971546 52002777 615586022 422075038 748246392 901809948 942610392 117866143 203711301 266243159 546884425 662711875 712796118 95094312 396047410 593077390 835990129 675336066 737602420 571688542 913761805 727717748 836851427 723334461 926229629 678540769 887966012 594586557 731992663 415496183 760214508 471508467 475317638 903441257 986383705 667564440 832559631 374871939 754012078 315937598 458866182 46114929 978483262 572962875 730686207 366377581 794198568 162290884 756843362 17581555 473940913 550329285 621334998 679425174 926525389 649984507 768819751 379152235 960584895 726529332 741894325 50045588 869028658 713803856 948996167 131130542 653394762 735777399 773327909 791894949 961762399 742580539 956058539 589985971 636903211 217988387 405067876 554715474 932654228 929681424 933733130 990469639 998469999 1779219 231952768 456090653 626167957 523356776 598360343 587554396 943402258 321074267 517881689 89967120 314187260 719897257 856871179 681854076 742704159 736177253 765791595 665743531 680623548 804672057 914340139 485895225 660159481 115940346 551022736 855256164 870287670 57978882 933998155 923504578 951288430 756886803 991596014 605121937 812596687 980853906 998034735 955871257 960930223 55627786 816261591 634159916 643713541 280310617 677984745 717914427 963885505 112126395 822111292 688158298 848441040 443432835 460278109 476708339 526568262 628104106 790863298 210191168 958057941 711130935 799690320 901942302 920965001 578409877 717346115 259587602 761279501 995097353 997855049 53743962 553317081 717853450 947852487 106762652 425346076 359533566 956314618 347320413 808631204 129647916 448990928 883070961 953037045 638507792 810477736 863492850 983184655 559278793 711996301 525219445 719253880 714417337 818549425 221254649 807984571 148212595 882752895 161319762 624897552 764542718 832044402 934750860 951269751 920701698 970444408 826727497 904361062 27007117 469291813 1140961 553944530 103495705 832964151 738424061 854046658 639340768 736396241 4256808 556843686 14704650 23556071 406955705 610095758 550804985 670756226 79824904 160866427 40789929 764147142 702097207 907286182 410064838 746779583 968580000 971954485 345665675 524803500 260650692 921037551 765740489 827165665 379808194 880453077 242377324 960631265 930424060 941402781 578326152 860996383 252892117 662080675 610696267 621589627 64929953 907000824 586109424 873618493 791393345 851313226 229882089 468272279 591863339 895852226 28979395 161277802 752806297 834075098 981018399 991035804 986311046 986472970 579606136 898778658 992856051 993073369 577019358 884870291 688938264 919847095 318885643 483796041 669509440 878895603 201644051 877412997 130393104 668904891 911423283 959983619 115050229 986842045 658711458 984114188 819966947 960868313 505797257 754998006 776716653 784739027 152520781 403001971 426073591 529436700 834824847 922148513 366969310 964102738 4514001 135802966 969773127 995108494 960231243 973398409 23308514 801457367 521736388 713356290 958117685 972507774 715135873 896000860 51794166 710967638 362800937 443561381 272991975 302943318 898727791 935359750 778607646 863922682 20472796 280622286 945034021 975477410 702712105 914723901 660288029 817479611 57394745 348480635 430488422 487631010 920446095 945609237 854489249 925712343 309345854 468365416 791472437 876395047 137878805 977797259 347375826 653967989 518820335 754352116 205057435 773302401 617835440 705544810 220882537 367558037 741792064 951512550 835546051 924417479 987730763 996318649 83531470 913818157 288679185 556446068 297381620 614895370 690964141 826183623 422158465 943504667 173514466 941280329 25863418 197919268 461059853 630198345 829314464 931039819 205224290 806278859 240900731 371579844 263977371 781961474 682014180 927300003 994982358 996555840 549038419 997409436 298310681 782172016 450402775 577781308 640642772 955987528 444853037 707211490 513984443 889111463 792325867 977831113 895680169 987288255 259529341 666005865 729192906 912618769 557066754 918681735 314694157 625124775 235580268 819882471 265906005 858133018 435174046 747579799 333038399 406326215 860132146 958749976 313379824 882437814 29164062 705597418 621643101 959227705 707684855 874695757 481525891 952913012 701653978 841834209 693787321 879020837 471481113 577984857 100479684 611629550 764707621 962854271 124749439 565115510 715486088 947779427 234691340 447193255 147682834 250642018 605659241 857316678 92230145 571383284 151172047 475013592 807615915 947125711 992484879 993707007 400361252 801586142 333219576 760005667 665978279 835180059 207972946 742330255 706843003 837837157 936470100 936682603 974414098 992627451 826525802 841743796 127749445 813360440 453679935 740903961 601267519 880548980 975078191 985299320 608639923 830774540 215653535 653034967 977470071 977516284 588512743 679774026 259367460 702766664 723053247 739262411 747142349 982712303 804706240 896713867 390723460 932059921 693138242 712428097 956207920 999799719 401966268 780456009 821789052 992073506 435678072 983402392 562560734 727880579 144872924 189375508 418200687 518994810 457887839 602201637 518830649 925549033 669423502 890758144 582795011 989589687 247870528 960809097 668187840 971717383 800532670 906186753 200336286 876188892 169854403 869179721 383910906 571909533 734208580 982083655 785321299 969630721 9969841 460368212 976586314 992464236 742298870 918381579 190843567 847077725 931126120 992235803 195154307 537399716 958022604 986402440 148156925 318381037 562369805 812402158 998987054 999118031 341671293 543461402 35434075 918325152 813345921 858627618 686345011 796359733 329562750 592624813 150347409 273028779 923174499 946048316 918339024 930731911 411600549 925633762 591914424 979344898 645183520 648014514 135890652 802182061 712330268 780785210 764975533 828162636 396940044 580261521 533574252 995561135 172258821 583192994 825329128 933846412 837430219 874330413 103427929 338327838 69303924 640483448 545068881 932116937 403856850 739489441 939267033 946197845 641111135 927172191 853153589 944393912 657582419 767784541 967849086 975869714 862073417 913842967 441635782 447656295 961853049 962944607 585928707 632286745 419237197 963031716 59587164 996252171 602451313 858571178 410902327 505500102 38201052 785799497 999376740 999470857 459110812 871860002 961711897 972925895 686034814 976398908 660202648 887062471 836223566 923895756 693289519 702474389 332602439 451184881 467390859 652724634 842434211 956791853 365227455 481525253 560362243 926832939 554469258 969983624 23594612 407889103 499428428 893437911 936121635 975243038 567912485 923261527 717697161 761101328 481980860 990598816 479482820 987179807 588774249 822028152 123721787 847379395 829086842 894476579 482114701 831434750 16363485 640767941 153585762 726178441 721694297 997911431 540443980 756194269 699230224 993043009 528933394 817689431 488020508 494445187 656091090 722957891 725813379 760221340 241978527 541787397 886063535 971682101 756764597 765745062 83106824 166416665 518666474 592652307 244467592 860208689 143935829 951950848 686675543 744502816 239153589 329902520 604306603 772072617 958050055 975142891 561703537 947149568 641545785 847640142 614283870 912360046 781395543 931922259 562412690 789236612 735574363 774984331 190595271 626034559 35475920 806378854 190297396 901622404 276982609 843857848 324263127 397854139 380952214 717084519 160395929 792875055 330926382 638596325 203959920 273291161 372884532 701348898 226489161 395563132 201513484 705973447 808462284 864573878 196378752 420621511 110370582 338990538 473940391 991363723 171302849 920015891 6267976 865592637 505937984 540239156 611836342 945339918 875459918 982650489 970894456 984372236 535717000 904144856 685068504 907153788 6884196 277493915 660030756 886223126 865188176 958122786 392624861 894885795 886199630 976690488 304115599 668848115 609184147 911422046 356592807 594527906 668090041 779178071 278439216 866915418 845605413 933210845 320576974 444687657 428767923 428991373 632771726 977831473 106320545 617568815 547397134 663678921 224278273 256300472 213350565 769775033 388989184 794753395 542395490 614415532 513366542 822538510 746703523 946357032 10611544 784829558 242770919 951305018 272780245 341376254 259338953 442455242 264470415 395571136 367257707 830772406 469338044 559964548 200791443 863207758 354593743 787865340 478767175 702382252 645917064 703151996 769542110 865619271 454653947 519430193 445857469 764111833 530308579 705601639 562178399 762216151 37946835 159347065 751655845 839217484 488948897 927654401 913385362 955389038 288663568 726554707 60982972 189365065 717617815 722508960 236029617 371359360 662158577 774497001 651279036 776184873 118440537 900925620 126686707 523133471 100553200 961284594 497935793 853471114 875009747 935367828 483510257 840743050 528282545 616288713 667692253 748352993 998104461 999129326 515386749 873065695 79822140 213830422 588356035 754234907 51326887 725695553 111778030 751986887 121588264 278085539 448139907 668066232 315486791 614042241 553541979 610894538 645840 359768806 320926769 958205467 202312393 635962289 33865397 729006516 707703669 903058822 342577985 455210673 413859376 988827292 103682692 611179420 468753030 681012347 809982922 920971258 187717298 894699125 691712541 880163907 87531633 143087694 632110245 947325431 84562847 917524489 549738866 677368932 838415557 971146636 429612817 876914432 870421777 921574285 228108862 272706034 673136416 833338910 932372577 996112418 693085311 918864998 914685159 937167517 870822770 958772557 313460766 767011694 921837151 958507182 443067999 845219539 169847560 628846300 942482897 996172560 635425621 666208005 432826645 567334705 607216809 854965211 71762783 434432776 192980055 970213416 853221950 901945299 553952808 583008707 426423207 895031392 24811519 937706725 103638857 290018101 504195062 690282825 555052880 588423085 374571553 428019562 383975848 831924906 893623650 946759880 82440214 766873724 825674286 830402105 236204285 945052926 268368187 736512247 491931764 934486086 365317618 489512657 536595245 961163422 474217935 873034861 666275919 872021430 571723856 900534670 188310403 368823450 752282848 929559641 224105144 363624870 597859100 609995677 971672025 972799302 31417144 435199928 811799418 887600515 289729586 547720581 269191511 676645316 970937867 985364007 735751033 790040304 793719224 911489300 368329653 814422866 16763480 704714805 825394034 906431635 36644333 757605608 236387721 718111101 91612065 683801051 436180669 656144127 420014140 903049464 682069251 740060616 616278231 838215220 707641483 759371197 878472757 925437483 566738476 809988370 497315999 756685905 908655987 977553520 74970649 867652666 63779912 912701581 363209489 635409446 683626733 991543625 601014378 978160386 127911646 442791297 268332740 585538462 350159362 651760035 657871540 936380238 390550954 658292821 986745239 996158023 993789001 994023237 774742557 881487863 760557462 942776413 752791124 877919218 608053101 656204832 874684640 891195762 892433900 899352130 900494058 971727595 623625482 653043044 818056475 928900257 117471101 856091764 885993544 927883051 629902281 981313537 278221182 453115619 533419031 879897215 934871393 979426158 725369204 880368589 380633263 618120039 606892850 904981779 662066750 726101570 919607921 953750305 491801645 539745996 70899703 909425934 422418856 830111851 120589197 284602874 234316404 504784146 485869623 800652462 385257226 514350076 580769693 679685320 492991843 800688641 156457327 306143332 137581737 429934500 927942316 951283166 584152863 741211465 463130708 788394540 4547567 44353444 526029334 999610643 231332807 679219360 283407374 554251990 353072630 825775337 482398779 872453295 811874907 909697554 444188980 826116000 323100860 855637226 312000220 807696910 653544291 774502363 613656221 618820126 502993964 923187027 178835145 303752050 787351536 809014911 632736807 947221517 914116552 951001938 395722558 445996411 587498030 656374527 387567765 865802355 48411235 284637887 645425921 888269449 138822936 533885671 75107973 654939330 795958131 858252098 263754327 411661470 451911069 828746716 27443551 43855106 384912990 798909873 601484092 768186600 531315452 666373166 475656855 964442930 312416214 343451010 745966090 746848353 425572014 713690735 845162267 856636141 529420767 632278524 765161885 804129232 474211830 850919347 604016179 604170658 806648059 861751261 621649794 847714904 453535787 754780261 706434197 775290817 596192657 928781776 853662357 916725927 268151541 412028670 140277873 561348838 349146446 978714893 722100800 747608813 44177133 341189249 188511355 982524025 871185852 987887496 583329934 963394046 43536620 581240070 965455289 969583885 374967114 681167621 61357877 182154961 297388618 869441702 186585159 441825296 475193529 684864393 511226289 829259803 147127664 735711114 131787844 867505347 558798116 760430469 717693946 753000272 752549777 920409422 585803346 697231667 300817949 858881693 280087363 880219676 440585519 665845935 803466572 949709978 338259647 518547397 353792828 464580252 380688693 506861179 740437021 919026557 323628861 928444652 3358368 942281820 67988919 483362289 388453270 820051937 905990043 911034995 490435054 808519395 146601677 648014579 367910980 780208608 933369385 983081114 577219975 740851505 561672489 779796536 781792614 843480601 788035159 893465778 424173857 998805207 161465587 742164215 643386312 852000364 576630037 723958497 895624523 938797679 157623442 538669169 84817868 119669243 327933244 773321488 743261134 828827281 366071571 523377297 638390376 666684949 179848971 242088157 714816909 966124011 575959310 957016124 456343591 997522130 72624903 123224633 780216091 805503928 80495609 937644050 360663422 508793504 133550794 556968013 219358391 288434643 234162552 248674197 198516178 502507429 694936185 969227694 281825800 610465496 802024652 863925543 508845083 587770465 518967132 640865332 756454487 806412375 16341611 380530483 98003754 959239754 201774722 330023844 556398256 636844487 568028924 965047783 937614801 975549618 552076050 616119865 322834192 698915853 85571419 306831708 190463664 540914355 515048204 821092139 967616219 982170594 476490271 515215418 124611247 124872556 300948203 335324788 943674630 966653382 576886976 767455657 182253011 568825966 645435509 806739613 247747174 782044388 50390432 625068978 981243646 992725315 87239672 536519650 183710907 330644045 872038125 964461296 32918079 210045800 654262074 862360023 708360668 717278658 482725234 993117240 505587373 644613837 300124981 705502318 640176439 898550736 68510366 728431049 332490956 348081790 880555631 953786282 633902132 945428376 719626290 999833817 863126294 955322602 364582310 726698077 300886435 868023879 394757731 680144493 54839690 737441771 273664042 739748172 281012466 978928747 696126994 716463617 546539305 844046619 349453939 519718498 92810330 863883309 768724317 887324145 924320256 970957426 589872050 994460878 335575092 909740060 626725733 808166792 363183255 490248778 565407698 943469990 982815725 998501034 512195555 720343013 421644620 463900703 625775783 726550310 991957831 999271793 229428211 493139397 182991233 404265321 139825049 564231176 702915089 829688622 361098505 569965233 739893346 984541582 747611030 830122274 678465919 815656570 760217132 791998197 693882959 832933224 842866651 957425837 986836519 999591343 132259470 708300750 198069730 921635780 864138842 873702727 414260425 457052089 48474896 312519349 856532834 987691872 319459347 939469417 11092239 581591620 646941318 917064442 996595355 997017168 528457579 560885670 673356647 956333896 475886313 933112876 864171686 991582627 271272271 765968982 800314549 993201311 258291050 806016948 765224714 904809342 556729755 746080533 48015325 65542232 721502724 904765688 936705563 946129008 806741589 884749314 928506713 966625175 483625026 624852442 958873362 964894234 802442933 989919625 239160561 406705679 300416852 378064813 252628562 708513384 804695346 944707702 837308920 992130735 831764031 967859105 748076352 763593676 3085601 419595582 360153730 625754188 462220693 587690232 59244664 837818026 426731178 745542415 249531222 300581662 124391475 982347504 147847885 439256583 848046190 948590204 367208868 947718670 48155215 475026628 524532166 775316190 447853897 858061066 812616439 830425096 880137406 981621341 405872013 744042731 195460699 667753484 881978428 945235278 620142205 976959206 110629721 898999262 426714346 586317546 888028213 962754613 77529561 702109536 543205495 984196880 189231672 982072879 109346289 611238274 847370721 931100257 197814609 548473911 313802992 739714777 92023689 963500756 691219089 975724257 524737034 661648339 364596843 856130898 664600845 978096408 747191131 751829930 656758788 898723895 922932298 981558871 461879131 610656338 104865364 310125030 913349878 938703087 663676704 963682894 410263046 418227371 736692483 939496782 274593494 317889056 907336276 962678852 502180788 887308604 212139786 221043165 853001786 931234244 13671869 460265855 566804906 970539893 967787646 992269129 75251820 580312526 412614799 625738528 446731539 839304501 451536551 573929893 142000375 778197407 96020322 124095475 858188531 873373048 192615209 897130689 492553887 509491104 321114702 876218229 862177912 926926745 527307656 558928662 846511833 939162876 526020376 735140653 203585132 845682131 36010179 409496834 942761098 969640841 462118281 917870001 123838629 240276249 704698817 801242691 965818687 976120241 377459555 713293373 327273418 778069237 895801815 905627931 6222522 886976119 93572854 340191882 360309285 962063210 88720972 852813481 376211427 670320982 732869811 908898115 918172930 921810245 813023456 831586580 81281648 328606041 410796118 963878115 401721333 567645347 51088458 859098227 222411136 745297998 742811233 930907946 520106873 571421896 582046961 696908649 297877902 724733021 427979724 649017070 186674762 226050223 32280621 65194318 8084568 49956402 628636039 894173813 125356111 434542477 886045832 912495796 401885484 475346680 992036975 999665948 665113766 685978517 383588134 800726694 984964483 990309385 582647920 860634999 234208917 978149167 719167038 956982454 212393536 212837120 223566233 941831134 879213469 983417613 206947818 241087241 963661255 965038061 832346805 853925678 591001568 907269553 239781379 881251460 75892033 630832495 482283164 840067988 304263702 668564870 418678072 712611207 207291376 267137721 671616408 761642780 968186214 997225873 461169732 894759586 950012117 989677540 159851283 648718308 891180212 924289573 15904844 607810564 232360662 972791925 138737907 280261834 739404922 875674462 666776452 688326642 435796228 654793057 150452761 743614961 578979164 872618737 918868171 985499850 910629918 958425027 564733517 962139656 839643350 990947773 511005622 980528494 215423962 574223421 183327799 514727279 703496306 718690760 702659526 837265156 800954386 849031670 152677381 950582704 857478163 985577804 493924643 838910057 521854824 551465536 124358216 236946727 227152073 799732739 760145902 857239522 270580027 584256045 575921368 812260096 111726821 451533664 436800715 984476703 856389390 965901832 362870978 973089057 712720443 866623840 57572280 938350595 68175589 558448139 662733604 905870419 381302790 973137920 223556984 320077367 764059474 901703235 242510273 856241390 333075065 565168732 545131394 839147300 407592806 835946475 695475517 714643134 809640284 889744635 508516032 613420936 366385551 481367137 643811628 754166309 31824047 103958965 910869185 992293289 47606083 95187280 128751642 666808370 931392364 940952335 39975062 608163616 211329767 422226592 570152053 637468523 212178697 711329893 66473802 984680781 214722698 412624555 85294425 113547134 154040174 815894255 261285988 761765301 253524983 736416620 532613736 953876995 359722286 622947741 250206289 644660891 649893996 717332452 652892615 876747994 739312757 778690706 38030363 281581681 176217360 969498515 449789770 875160422 532972789 915791565 621199969 763735461 562361942 863528171 93054254 138587257 210084485 288850573 627594161 938638938 715835265 865816736 545882692 746646653 496993166 808611784 625480847 645601514 100768412 882650786 431897143 720110624 949731817 994542483 180158847 422954030 540736286 972265960 28241415 694615215 498582201 843280612 854605355 986293539 905239707 981497748 111280505 984543083 471579383 985935417 588913087 596792607 11188557 458219480 735650739 971892460 339003159 695436986 138131414 798471560 466867258 599897504 479694128 786101603 42474543 985168780 51054600 451143184 179666761 429161304 781364160 789134904 511185101 640329594 501792977 622410765 484714264 918895168 478085330 865955577 704915266 786555655 480427124 952963716 946019286 963025947 626149212 674485254 564251901 635325387 111756853 823687359 104094341 689020344 457480791 978107701 68176826 567378808 862575340 930526207 673734979 996710365 373348202 804788550 926032511 935595806 522895950 980359083 901073835 984631699 987869078 988732642 418762304 956785307 716409104 993401816 469099726 650362572 523237641 626864205 990791464 991033977 928354716 964391944 289070919 518965675 207786721 899699427 944463557 965222921 778516391 779872711 417295537 457016617 401874666 980860875 94711723 671989251 237000295 943660637 536149182 804943901 975259680 988753031 946461375 985256086 136305863 255347351 401136274 752144197 640866350 704492238 777507844 938007965 724052401 984374531 865275407 936157071 272958091 785478103 730613102 742259745 894048499 918999094 461340332 850380975 688310783 838388695 422392129 706393555 443449838 504232989 474366199 784484210 582898406 917851692 506347844 864886776 880414445 915672699 201264163 245907235 808269666 818598064 364157367 769080512 487614663 963024931 885719876 956934049 984455259 997897351 756676953 894439394 781823198 952286460 60117912 965668649 752138121 951540177 605616847 757863219 353897431 628223336 216318754 500825388 882062998 934907692 503248434 535122771 776666639 950382163 522381832 912085100 83003248 808226815 707668404 865871137 168302914 728768891 483573654 606495125 472968186 676349536 642126290 671997247 57442158 957756491 716943158 946718455 248513520 927162908 232249640 991597471 515799936 678124332 339812139 505157387 544935003 727030024 49307968 572277419 580566205 903974995 667737065 680296394 618152800 922833480 297350444 414107229 960102934 987575633 919762354 963424893 926260198 961307345 117705257 446961185 167488758 301528056 389902980 461320232 193364230 304563560 848636989 913555981 355698146 467463159 550137435 585301947 654387236 905051013 698531301 732182908 236595007 958190606 106426671 482353466 72019642 837775820 340471288 379834813 316219793 678162186 683211963 777286622 993421938 995330217 886115973 918322596 967652285 990504909 591793276 970486886 528814883 617869065 879801635 973528443 887524127 973072520 188715455 623001407 672297237 817507295 844589410 901379588 628155451 966684506 535308215 729297239 906698298 993259430 260561778 388920904 387009902 712239422 849086033 901954729 706868154 766196371 383189176 984514891 343407771 969148802 994387698 996343521 799212447 833005422 933908128 945600860 893478941 964997622 171266543 822222511 266951176 636999548 667115040 918767897 271430744 770407096 701334506 904404057 386304658 900216970 601180853 617937504 37537207 951035618 344268632 553806132 631591567 946369773 433980149 914115947 891239673 982597107 854468980 870362914 290633419 739395119 349531177 683600370 869847326 884209455 298889894 831960568 97158374 653772879 363978657 370130020 412062967 808259681 922544443 952699026 705955185 786260326 492193580 694253070 494026590 758272441 357705092 894449514 98991954 513602810 704016611 985492629 3355068 281768492 429092562 441770969 945625096 974856464 248585250 496282959 576281432 777892823 56841521 981960734 118585784 335234742 370850195 906143828 398797715 948680155 397940601 765187308 36381777 958795600 772037840 896519496 747937751 922383738 100651379 442767965 478115232 933367976 450883241 519218527 974157843 988874735 306874281 600334434 877606525 905992763 393768665 824513283 841961269 879059487 607914408 887135862 665213181 995177529 475737780 538011293 514037158 591534860 250289847 912671829 473870231 719003494 944895416 950972703 331928600 611255615 831961709 904379973 216629125 566634480 704640663 758895523 773940633 779823398 342417726 758232150 463465761 918121021 591620833 720728199 684025190 791404722 789852166 900502297 227805147 229767074 875164468 895391678 375607092 590012605 644565629 779365974 26444455 488466846 603959578 686855597 233102201 439495160 324795332 363877703 850587542 957186270 622043634 795855332 992744436 997855422 887346762 983275937 824313540 841692731 454557796 867886967 365299167 501713749 335924703 472359088 201092605 777496941 22070537 669736326 784516444 974343163 793703128 953119548 641294476 783326500 616090676 870693243 980232275 996854141 729817306 854474731 559300614 871430707 975124875 978221434 827020842 920225498 290241597 438760974 524022561 946103420 756461281 960633584 676275380 973391503 265490059 328969474 32825655 170983752 539128855 968382729 960856485 996579490 17684855 326799450 379807431 978236248 271859972 644695471 305789373 749877856 185980745 835315771 180586498 722613158 398963556 670519587 57325492 440053513 120205919 472493759 972272496 996521302 826084518 911037235 906725637 921324921 730450351 789171655 54551495 475157317 998515105 999801823 650314545 799397467 958933905 969991321 188549117 500302150 26121457 822214849 786245698 926528711 283559538 899081409 221626633 505198205 444545382 556638974 51327421 274739921 526588120 545552464 473048823 589217029 328341857 593376445 386234257 449295775 34995209 208012175 688399087 737346735 926701341 941218648 842491276 916339605 812951730 824194363 759099903 873312426 586867101 711783993 579075042 740219821 469185927 917669991 797505880 831063328 94491690 967268577 690513146 990251792 78122334 813863430 91970637 201232194 970959340 986849072 326679631 359114134 485472842 779895685 44535282 209108705 353824199 671615377 381542050 512479613 407680846 898461331 955497657 992825907 433293758 905944664 124075293 737032845 811996022 826887974 878025024 921636899 759373377 860887675 91239514 674301340 255173429 363064559 282848894 982004835 39218709 770534211 28706925 959660917 168973172 416132044 969902917 984209627 665409334 944445060 283398613 571852659 676060176 895259876 529103900 956687705 24274828 789451386 600091543 823089197 248571130 342167473 768892834 849886779 649806639 910977120 755297562 953326624 898624365 911030355 99235574 297391717 997902562 999230372 66770099 522538408 69262797 900629493 279739066 347241490 548136310 807298144 55637118 973470758 482502268 940975172 464693874 842805315 43906991 248625196 595650570 710304429 736948559 844209339 113790362 282938356 963225671 997218725 453628255 933460523 419336707 937485061 574250257 742692483 144403035 905955092 669140052 728417538 666214231 842951736 586612182 734854159 399609551 480839452 260970640 855829627 23619221 969565433 348315150 821366112 738970159 903932996 813058107 872646802 459498731 474308004 839887091 910646122 270169324 781295093 834823442 965044293 808963767 980496490 475176632 814714295 30078551 803470393 701290681 805942155 948837220 965946466 203894642 540484692 894118640 931527337 274967622 822449540 11802818 854364320 539297069 546539872 669285028 892631059 932041677 944993664 117425227 341042649 967897275 984541826 106200825 605067086 239331473 588285827 680167362 740817758 397514248 692661558 9875558 526027428 505690688 825536227 979168457 994757317 51963067 685612817 348187689 429248562 24176407 729489868 876421199 945194663 302237359 963742906 336651876 891670344 591667537 979933456 723100462 902806910 449262585 876732408 290357812 959021978 499608563 757267033 425497069 511582930 68077825 772860742 543103760 846210035 591171652 739049619 702122420 967508334 786286875 951036670 583638252 623280248 213187158 260600651 729926138 974986787 252900854 583813264 512727029 679150619 573498669 575384759 471333534 520808304 936589341 982889312 136180766 331300257 369744599 604909789 610782316 844754224 983348658 985612758 54116526 742179368 307854986 877177434 34710106 660366682 41285596 783090047 654792149 711445805 705546776 939746598 448927593 948562773 397524821 996376001 748150743 905659836 345637752 702269992 589505516 913666222 335079288 881296697 304783867 897508720 438439947 687547087 513398578 784392161 53783011 411612078 744722497 930575237 88998707 699064729 98957037 529853854 128577840 718331278 54944871 184853144 552970749 638792561 588581926 905767684 961866845 991407225 573269433 950216257 926612457 960059491 764321249 840764238 232482869 314539752 111823454 650793118 757776744 813390503 576341099 978332820 508148866 837633853 837549425 877543572 461961955 955942266 55314983 302760927 636488319 926446051 290404878 937101070 274364318 718049048 756369553 951087529 242029284 269168155 60248414 533201182 432513681 652197646 805634081 902239180 803344242 825988594 586176995 613317606 190857595 202653065 726907332 942085185 581965224 617189675 265094174 995373543 842141634 935097165 348200309 835459851 655882261 908271703 563157192 818099993 899685040 989854277 737106718 984781619 201898057 410651986 549434319 971801568 875195302 875555376 541473259 900708906 769608991 987214288 941231318 976196448 294747685 925937112 178138722 767524507 444418927 580118751 350852443 481716921 567460177 843597161 289021710 416008848 925711104 944604057 182428580 790004969 584597403 600826963 565683582 721444285 520377128 825257208 123128564 346023656 164876819 959392977 357572116 599087802 683078023 868304594 924883442 975021279 509549664 824648673 138494922 583264238 106791445 939579546 654349437 824080177 879505393 905586659 574721516 763803605 530739783 865770975 113002325 470357601 41326799 295769931 874885264 878497810 202729094 891562030 581806497 777348911 687409812 966978637 828547181 837882270 933318025 959738014 477243292 851893578 84136963 370341359 473308077 647932316 690242529 711445484 555218428 978257648 268421101 810142931 680340433 946502620 328333200 956902404 922831476 979057533 7519960 940371564 446468793 659088430 971694980 992385733 21140903 359081440 229724572 856212297 438583826 506646469 976933957 991738971 653405767 957603980 769438731 969524337 150537483 621166297 481179234 757927423 656978904 904648574 774431966 912682324 496420361 762724990 674884322 742321772 64782078 945408679 884792544 917815602 62336056 952764718 403709485 660894746 919557192 935848399 22353212 957792315 937184579 951124686 500968365 740863224 236127568 250845963 708663437 715366141 747558932 764110265 566094675 946741720 822379390 844583176 900955311 959301943 529523003 962054440 369123829 948213477 611771850 994168958 131881540 369940985 684976832 872588437 232573607 989688293 383781720 441092313 145275973 530887513 65950142 294978047 742027659 906518542 191298888 433154814 162062953 295813912 466000447 473991808 361897988 648966823 368948064 877373175 139953317 391919012 824179826 920365820 144747814 574886447 133649031 999517341 620554384 723708624 117029025 973606276 997689695 997765298 153301967 948763047 179906942 630809564 429649982 831056941 181007606 708976028 381612164 723433874 867903232 949700859 792060568 828793633 998829871 999783781 786082811 852395598 897589901 975312638 788508066 881969783 204905301 513672669 788448653 811902090 250890565 447744104 99604412 120341492 309713426 410301189 289054721 686369176 349558664 380202153 398112427 673719029 978917398 990794338 762106565 948227957 825307880 863738744 441273926 672822409 727922877 761119169 149858686 802314055 420971388 673655724 559332516 878902245 119251504 674040754 235817666 747045695 219148017 602189122 544841901 918047326 125570986 427818822 911733134 911901201 730444973 890211033 758355513 863685515 372720880 375571227 381886464 901648854 62712043 210583244 135322546 653590419 844829268 928393728 948087915 956445329 183160799 452174013 97563469 731540040 30706447 235159465 445179090 919607883 312956725 842262165 656061328 770575176 730971805 740432897 941672352 982928954 818514985 930123478 281271182 478167158 16529996 852336284 505794809 558847663 528203734 759763455 864792435 928017276 798154561 928220652 907414684 915655249 138155140 774422489 996913619 998041797 134422704 271697445 663009806 893821388 224976568 668025949 444756447 456179892 961223774 991532896 798104434 945683984 769542212 924724817 265263210 401074917 461671073 516463062 685384369 838219533 533271989 698945547 405140461 848287142 245369940 709793175 749641637 963897319 51002601 263387791 29937099 220908735 908795809 932688611 506143901 568057362 791080042 961001056 972358943 998867737 366618858 725331971 430159901 449529202 756143841 996484106 98270487 166256260 75594928 78487169 693933674 881485433 973839874 994418062 100924538 950950168 716185201 986909651 122634762 140044145 500428252 739887446 728855362 759369028 115095616 938330002 553942589 743611754 683718500 818562029 9068669 566659778 673206140 878158605 904767806 941970512 172612877 833062698 932544545 933669021 947407358 992565277 680036569 690819093 154159721 913953458 70723249 444492041 441042475 893099283 471884525 705582029 730528245 861674998 458136045 591432885 574636448 915419975 370677762 778562347 953302503 967091330 163175161 202927732 905248843 960511526 210596387 392638772 368591969 455356450 177437938 226158201 102902596 886669277 624775112 783282783 393952583 768584988 763275977 920371311 840565859 898889228 853427954 954426262 720008347 953012864 969591835 987549379 486167568 682711522 826392434 842082792 102349056 336234769 227073123 686336210 997949204 998262863 804056430 826781705 445413250 856691589 731418965 774167297 695546368 869666778 827504847 886067189 348254931 914817105 255281513 540295957 33133722 216253609 206506518 605434918 313896592 456182449 14190297 21781097 190040222 632492876 343050814 803501586 867697119 885349464 795319461 862739131 882447726 976119976 740888108 949235529 445510998 664803123 803540497 804879455 611026716 639892019 301045324 853857845 439819662 789250363 33079191 327910382 766105400 950754357 396892717 459783935 723487833 877520640 300469633 321746742 442023483 528949414 70941116 415572864 242587592 458632396 5331044 896758050 857368627 941654169 593796616 668314475 198983606 533560004 469276775 878500482 493650360 652119262 606333629 856627366 120532620 967124274 952234340 957044506 907008230 928201066 74824965 592481360 265090192 521977899 922910942 948390862 253883700 838729211 65277671 428613023 720495591 911947461 578852921 705634659 740502592 930406186 23271539 173078453 312225592 364547502 818033782 938765531 243473071 965861681 80717453 318301870 45968023 615376823 734900825 865207805 369389149 773470578 428913909 679086735 195004023 354768105 302022374 664393372 459181537 786796902 158420251 461901116 52156367 549940156 927910024 952903088 962356049 999364978 143774396 653942633 577092133 994660350 580136688 816678596 884318492 948049744 944363631 998015259 368267327 902884433 541592688 675981372 152180152 853602159 944129869 982066285 639308701 651390832 266591434 323533563 860126800 861974804 208482423 543062351 239063211 314281623 330532798 621188319 915890034 946398947 804324724 910007466 461513072 925211255 287535106 453792969 291326701 845479731 597670434 948288803 200047186 540341231 734284455 926638736 281525631 602662991 975271647 996974815 375310730 454480131 812877018 905755802 466271572 926809794 662719245 895842307 291880526 735612941 156102082 183705463 316806880 487960855 211603957 558626915 542929122 740214289 346006283 641277034 698402792 843144912 638407972 877322783 136928249 184861369 603905619 736698763 685280259 843659448 757728619 838008570 76547361 874128309 28826614 695463106 302705085 985207950 917110008 957425157 287137632 431887682 309867469 784390504 277189114 672761656 115681467 734606222 219154436 970663776 729687625 982325927 845380565 912121942 108698515 220334842 224648504 542369864 77045482 918428857 979314956 998342215 333536552 936830458 648737256 725535527 739181856 943723067 630336397 800544510 104757281 542763042 566865135 883044156 880718134 943957954 256542233 440001136 56719165 718395626 785899518 920399531 608925611 863537538 599531237 640424747 158699409 911904965 218424372 704384641 349076814 856267651 543196387 661403520 37399565 546556033 592778557 808308171 707727886 927054326 916807414 956803936 103746092 971823661 278348185 606453452 23450338 232940641 82629547 326602046 290703269 817393574 666179527 847845604 114734886 607466754 726948686 966266761 935305684 988529106 57174569 270023497 564483376 998858607 858950190 863672871 644157946 870322828 987974556 998947706 320608950 400927568 496561570 539488585 582109165 783457488 295547836 768385964 977038378 984614195 179989129 582086722 69761593 258550861 266474946 441926452 564451135 669727717 869055958 911780729 844255188 882258509 284774654 569494680 666041524 754021765 882285517 992279891 156060411 237003462 846217424 981208206 585254346 830766653 694276105 979021286 906063000 923340593 433560454 475947668 50715940 537984081 303781043 804509671 710054878 837988345 312305325 612885106 955692622 979401183 229163210 241980265 239884338 927142308 453985743 890446272 647291144 745722618 413413510 664466077 913340976 920407857 35128776 413018524 685202340 739550475 854565075 962068288 917386064 929404408 661973813 781861761 443139969 595143930 525205340 788941849 954980075 960229040 246886459 345857742 22319183 582203588 48280227 824168194 345493070 750193954 549667323 798187741 582428871 652156583 667750634 816751273 927013423 959978578 621884765 975946770 798824220 835428028 354959688 833880455 855288185 893912928 456814365 489600208 372954250 568120462 59596583 433511470 989207914 996765354 682818171 752863081 40818113 290837153 75048171 851884428 241952857 342469498 150798158 490688468 621191866 715114843 657665547 777266930 611673576 903355598 501675098 739874575 79379734 463689543 720728488 741842347 744491539 877844426 854341435 897313649 9878391 829326182 654378316 724274071 688507709 977151523 453675714 604432021 133476174 327565022 188992662 912302019 756229043 828745715 23062418 680194446 729889828 837527677 912091338 913475505 121201590 871450028 769159026 929429269 71513929 861596778 789114019 913629590 603419012 809890351 25319041 82430888 254641041 473727037 594144259 764117497 69778187 651905648 479952823 880591703 950979134 955018905 958317537 998781546 516683491 601600206 534429912 767311188 522926200 867856832 310538695 590867019 519466684 862438936 144310563 636828139 836100465 992287719 150001940 572918088 699774898 913639589 396634139 567061447 989051266 997516698 908629905 933448126 694907120 895275892 286993775 792524744 770745059 936186066 521662020 541350839 868875441 931959414 283521051 676033012 744920100 877374801 437979242 779381818 695353153 941843883 428987866 944857117 803097430 872376591 261893841 333799937 671116757 741934837 410626493 999330355 529831814 628561838 147903294 600481882 94514356 516843913 557217538 598787469 587106076 957198320 905440105 927107692 942577492 985266294 112522648 545063116 523045318 607320789 461864539 784626932 524440421 920671699 619406983 905065164 512303922 627986837 436492255 819599210 754547672 994811718 144261758 790043910 275565633 368889785 969210310 993018825 721168697 752674053 819387524 895413448 876346712 884557100 545300448 704704220 385994204 805229456 288475439 410702576 83439210 137119387 749456033 766367616 534617543 919510241 987587301 994783388 226990656 258493045 116005338 647730935 664312793 703420565 968605586 970675840 666917422 901305855 707167642 907676318 242805195 639253469 715628677 960332397 78449667 795736527 267037364 738219707 353620086 636099957 775441 641173559 972312233 997761982 592657748 685102936 97725960 899244731 61674613 436839959 877045564 989992812 988868049 998735583 521299871 826370295 85079278 517755648 141527603 645441927 583489166 680152533 524162624 807485453 619447099 927423162 610671534 758641047 336050834 515929437 599710564 727950736 334719397 426055910 671313255 961498075 635112 693732215 288371299 891506873 606072388 927113444 486899122 754150370 101670739 461593826 24605356 784870079 813755 847458483 183553620 361976508 387508144 436423393 391540890 676114539 951549079 985409448 714924543 791605565 789171910 848134767 309533467 790393387 925415007 996778332 796223109 840341873 356754975 614960979 464664976 988016487 431665749 477025576 294802791 669580722 507207803 940815009 903453773 962446108 945152597 980906489 562643481 849483464 231540655 593527241 540148648 756680638 69654555 890358975 464407259 971142716 524748016 828167718 900209857 910148376 652101242 764917244 400108118 662481595 325332077 450156285 605775095 619390054 122808065 344390974 603810006 619845010 555567932 866519718 913918625 993798228 407537199 786690708 80358468 216455669 309704557 832217108 210808324 973617559 649603812 915692066 899827170 965768127 765995412 933855079 984464174 996452920 704171581 821744616 452208675 895184768 843446783 918434005 410942439 706691309 237089731 930641153 116114718 160404437 717972762 832641348 579046173 688298867 995287795 999168566 352282075 379823233 846039379 963837845 757889651 807995973 913036593 966179750 684835010 996174776 205403398 841389631 920695811 925849132 750704168 996377025 676589343 750165102 79436625 658351844 200483588 709957080 530160591 700556085 761273531 968899254 285682699 393650010 209001282 212935750 851870431 879006238 350457669 383781847 20827085 221004633 503328022 968140462 806047632 979734094 778635857 799360230 877701060 927403988 795853953 984006246 707911227 953321942 124927722 438670287 907842259 982900037 118366808 986501837 169031116 758319272 364480284 893284408 1231782 973333087 704810343 722661580 313804532 770069091 817732831 888089667 209016868 441315465 363474349 912254677 594938064 651615508 49145568 940369942 195502316 549820165 971006852 976777879 109827110 382971240 215406647 604998463 122255171 876416601 106143590 771193798 87338505 386292680 624336131 800202541 242586702 264238251 417297850 830532174 674234886 953346968 678843662 876883267 822419707 834473370 825917536 996598456 112284397 185945312 708231930 735105951 35712333 856363852 98154877 760160341 754671641 955876483 333677943 459602945 257019541 405141455 802289712 855623189 194351887 500591551 547168067 851252698 74165470 487727464 212504076 612997366 775624144 870076102 806013684 980607648 438006602 834475140 525297695 862228210 426369665 786810992 69678061 257537938 135160365 718386029 511362557 759798613 538294958 767473799 605676556 630183112 846609941 913487525 139810751 924741704 248277225 356963262 163263216 613642749 543162249 883329932 852063157 903007468 359236659 693574513 160969599 448540839 42510411 219317396 76610086 94819694 95637966 408300459 846484112 973576052 954769654 958805566 982517666 987444635 953286478 975083553 133588132 804606587 685819377 826938230 258588138 677922449 47009492 366599435 657960973 684459450 912810568 930825922 689106946 996538090 797539271 940975344 73988317 739744204 294440947 872729748 972713591 985482385 831085785 865241511 756800550 778527404 551833038 675181634 650288082 820033073 276139742 361177758 374864039 385908672 516536305 534071294 17339661 389252327 865555824 965856067 135940997 692684823 867309282 914976986 767093946 919616594 88484134 154716261 338682770 861676541 517313715 948457316 650298536 863372731 584460268 881089652 830225628 996331820 133645000 229221306 803863568 992780384 476377034 490212976 508195343 955135253 621843940 788957262 121898103 456158911 600436569 718905221 446302535 916710010 903813036 946467599 886265825 931870929 857885135 980681941 801583444 917192109 647631175 721799043 357331262 423603901 640131402 953345273 472855842 896318579 241994879 734078214 280803764 940546201 166360105 303470906 863998601 957143828 749001113 855382568 546553686 779456732 519007176 898345672 388699743 784781170 346706923 730583956 577499575 730526763 780394223 980703777 486365231 984374333 726711341 764102513 7543735 970730409 793410118 892177548 390812451 906006937 78361803 974761792 672077490 748110788 503016565 512097220 187128019 988608527 686464846 885237638 781691616 926362090 639548548 954808241 916020637 924069888 159126009 857260334 13475455 573134180 293571007 673860868 446479215 706283411 393073468 476569283 613270821 950675622 390058909 636376373 235492287 646996924 823824211 908480466 777912739 843407701 583190294 586848960 773022885 803291952 938032900 995052664 518591821 659645601 466121269 589116369 473698203 734888445 572124563 668935347 422817607 531382314 672842724 705969727 230245930 769785614 168325017 322233720 372647208 913195429 756369435 903465600 458557212 884225609 825369436 937499437 621734143 900001597 111042605 260780183 422801792 480918444 162125771 299492951 597850393 670807786 748007263 860435602 11669814 500522688 715110537 912973797 915079698 920167778 888918582 990070479 945790178 987276425 770782889 861640470 705012497 839084360 520647558 780370783 834903005 858865587 151391445 880395542 548195985 727454564 166876956 744305616 375707110 928126135 360940966 558117223 656949614 848314624 892982767 987150529 892106596 948351486 712627460 927360057 348737818 926479929 231406778 482644818 323103077 960808470 905125958 940781871 379693804 958602141 474946048 615742826 24503405 566354176 33013269 621466358 130739945 469754567 450122151 996500235 399433408 583484358 771061312 810465981 401626861 504348995 838702052 893049676 35435472 674071248 950207943 954364190 431301013 990987336 896361775 940430850 563249827 837372537 212064912 706925694 390047818 792895910 453315191 904370054 727330863 771511721 149056096 420853211 27284143 628830406 787563593 823660092 87172194 304867005 946291628 962844084 586799837 757920059 788217620 796894655 760266250 969647251 726163154 900845947 361895077 968671000 547533945 969960848 483724002 831301115 49694941 223694851 578972836 864011401 806180651 864845895 73412786 520939674 64814409 494078521 605438101 745269266 215169651 697859860 899178147 942530836 98813476 595584788 160649401 328031117 327177806 534939478 711071349 980323905 496256621 907482335 261974182 706690795 348699538 808648306 405389095 507393294 309683151 762402835 667817573 926194416 139642281 780807695 754977036 900704615 711724866 893911712 677509323 979762108 865529460 947257150 699791689 758945406 241314250 822818869 372103420 630368390 921194957 963324788 158627629 411448220 550387989 601947880 899531310 922784194 435839668 752298402 302105710 871056874 346579863 909816646 469347635 920819222 491111006 597050596 205543820 823515418 69511395 754113345 957615735 966087653 604626601 868162081 758900533 875566649 906879925 977843300 527330795 955999982 82003533 172413804 632822650 869519325 561552241 791386687 217699414 327197048 103393554 269321231 495544807 708505671 419218441 766776248 573330122 622543897 325801446 995200139 204368894 706785374 271942661 944273120 690784222 730919775 432922588 537768286 772791716 896562415 997582984 997828283 46154472 447803457 692372970 829151993 389645346 707725924 132277636 812686877 370134454 453252889 193420575 297215100 683928079 990168279 496451988 709155326 399008901 865653776 547682544 834067889 117985485 583449440 559328950 693011594 882065703 889811600 918440832 980944152 860553433 909170839 238748554 650536421 948673624 955563040 682224663 862714768 500575090 562800055 440550239 786765227 349933870 537623460 239692236 985515137 770651905 976946606 972046430 981596759 274942635 326505091 705510116 788745325 88703274 187186631 304905657 943238958 159718782 636375420 975552835 987220325 596678059 856328393 477319926 833533406 236742805 555414199 543396556 770906186 185481896 345329767 832190013 939007050 588616266 592564655 846718630 949657732 988872137 990223390 293173069 693494771 543909114 989707618 984115514 990442022 319310075 616865341 227359092 630532815 768257737 911085593 943493011 984679003 114081592 261922182 976151757 978752802 562367080 578540314 185104843 551762929 209184268 858190393 881801978 964747056 319942346 961593988 436996560 912709934 919733218 993393108 325413779 925142019 602167018 982482111 130279003 724854960 10481870 197449974 571499286 854757188 348487170 982576707 547057023 912533472 14543417 949490686 58492966 369690316 901758593 978359626 68462362 931102027 485390245 590261701 420633341 773027905 65283174 667785550 223342806 434818086 374689546 844438510 204365622 505318391 400882432 854138552 467076876 918292681 750481239 775891746 17914525 645492740 652256456 699934639 694904284 847202293 633923271 648151817 421027532 754912291 584480084 726525794 659584030 936968850 255834437 414535289 86049982 228178406 725291887 885180847 956854597 961080104 140351609 882391514 148807491 577314187 741098279 765537912 294677464 591310041 387588002 601945454 72113810 969368384 110544018 704706626 773684962 798523321 766668938 983868138 363325667 726058901 255732503 338493370 900016595 970757266 36287695 705034379 911450685 971197928 741898517 910085198 495588308 655168348 394075738 815475548 715517059 965774731 38907493 530280085 601991157 681919016 128651235 823531008 227728301 616418740 339406670 786818294 560239958 621545295 767368481 876438075 972537104 977848800 785815449 931230371 92411969 922017722 237586832 541936806 405452632 549750099 812172312 916199268 670123140 895585276 406786357 882221277 320367725 651902420 863451113 920195295 771608874 865275119 954612181 996165111 936010135 991995100 379760255 471006779 989124155 999845488 132124332 877091662 989748234 992652095 362748000 908209725 916651679 960195808 905227608 998906457 648454358 966260909 461479386 640305936 641938706 734722718 990979486 993604072 815541370 919052372 22846498 846278661 680275077 840485070 71287606 881193577 87687576 122892242 474484248 983718874 718285910 980076814 6609702 974185256 421692173 966452162 134264451 640548019 829218000 983383565 254561114 845675454 310256428 706399204 885899027 887984611 625085256 669546103 67096764 372406540 300576346 839742688 666389441 764024678 773813044 905348715 867433443 913901930 871008598 899674774 242734859 249053773 399993986 460731642 936643520 994922204 45497472 232129643 573890264 946841905 351205258 565408174 269986797 875519678 475913575 715893428 961282570 967031270 251029938 317362769 162407721 965489611 322920042 913527826 715478760 908748714 331039163 923516934 297055985 309996650 336745839 554758810 613474929 902446733 544989403 548611788 124350320 163207480 391767870 409016362 144424646 701195015 727540602 761784520 457519 228758163 455373511 467140910 873998042 979482611 123805586 980184802 698625881 813585038 166163837 290454199 132067733 473292574 62066256 838659661 30946437 737501413 885321662 999546820 570244329 704928761 693386338 779765901 365352368 705355308 189639289 429758083 552301205 795104754 849023140 954760925 772158413 819140852 946812642 953404608 43634668 755266375 39107703 824507372 545672193 629943289 122702396 845524742 743423141 821764131 284547191 722466700 933366244 944212037 176004015 307532014 82548346 771165593 644211185 770443113 49883459 884580024 688393636 763366274 935501560 948674552 640208207 715146925 373204336 690442635 113669451 660231720 739602462 853986211 69388148 415343648 306111539 627228898 720834301 742963882 3028025 779804722 146171341 830087579 355215338 460517836 483151757 774716953 573308718 769239953 495155512 778973443 150579919 811685703 89247911 99356041 640304071 767400478 673525286 825715832 606284456 639018134 639324015 801070722 402898850 949987552 908294160 992851420 465390496 885558024 134803809 866337979 347943201 428160282 408818745 519444069 932900389 958286128 745325649 928661971 12319502 537906575 374354327 546248913 567185410 868045502 569416473 771324303 899370639 956985416 380511092 425864559 847976536 866999945 152540031 287969611 42277326 79204445 120330098 175282612 295564322 616951103 549868636 684607833 426964993 492660861 510410505 667009454 953843318 982395194 990108630 994268367 381204866 952323590 678977059 829313094 685748398 696997687 829515745 862424497 678501906 794832425 296155147 413858145 621102615 917900023 851892128 894760832 946793820 957219476 270928027 875006236 880401943 915885711 923315712 985170002 920525064 994965221 996306939 997164566 74967957 650414948 15154854 297337654 464602364 966168027 903377963 932103089 504509085 639284703 119886219 430312135 104868239 217724460 886683435 896658128 312764585 723695187 470514380 855209563 482158949 573688823 173471017 995060447 354852551 623110957 523320599 738614785 242368619 924576855 898690294 941311498 289949580 399830893 423841558 631432789 595188036 747992216 602957112 943698217 676514046 849694753 811618580 969775399 673295296 894847959 898295624 970064827 5401489 355985843 901115387 933890462 239321648 969146029 126445490 328759266 696517450 969465854 644998848 843339388 638063936 933245863 544337580 990157383 134113731 988419943 80876440 452515181 877950327 897515559 309823416 492422023 611493279 645725879 922114997 993579907 492610739 701992218 948817922 998206920 389146470 640905729 329917874 506484105 986514357 994926401 359025591 460095724 899127037 911982130 345017720 784529826 272111109 782283699 900664555 981345108 60600611 190784378 511062673 557641819 940274759 983009576 92446353 456888775 721279867 972482893 748490544 893614698 656729020 915169277 317397377 873210893 921278432 938560424 524307094 571198093 485029813 627888661 175798289 434645365 147078593 150009678 212181316 827975724 554361158 748983172 340741898 397353701 795988547 807493630 720925984 817237859 931023138 938783232 304299191 704885383 38742014 755750017 210735865 211904993 942352538 950024271 102670682 706904701 623996370 645347308 959068956 973659654 783626724 958144197 167887386 337269636 316632209 642467310 608582294 690219140 438474482 851999975 758248122 770205697 171976784 488250401 921060811 984769652 893947095 988665157 835479740 900378501 877270440 963169596 923912186 985788277 288222141 334767187 177273543 655470607 751858454 857374367 209789904 587666732 528632408 828855636 611473397 979771571 275703239 571547914 997479077 997854524 734465581 927226641 247944916 605163805 176944501 885057051 821952892 878646220 145007040 486151859 937446114 955267792 893902660 922226411 813051243 961398558 161925151 532230092 880798173 941418266 416991444 586932926 88389738 116628558 784187714 913109176 391936017 879834865 802287370 911663858 73740819 801108442 38051455 964349001 951906231 955268788 781526519 802787525 551714206 759687611 765720 561753689 497511475 900444435 727393368 818478769 281148516 901568223 198985704 590090656 388082564 546123128 536686219 821281940 92274805 808731212 710261468 804331407 571649556 959009109 225609404 399881394 623686912 767371085 884076515 952166894 295669344 573629675 560086285 563963623 769592884 795052973 949186681 979895157 447512262 670518472 718744069 883667438 609227472 637142495 123380876 471626849 51937171 826446935 910964446 928613419 370347120 883087602 430890202 846782657 129912858 177911456 109066293 946315716 582219706 588679472 366197115 637255561 426782552 922997718 605397637 738564697 594938777 637981477 270247005 952106096 815839359 938713748 226135194 245644880 975618665 996846984 390187891 921868470 110221596 512904208 694708208 855204624 745083198 863892288 19047173 221159846 969985884 986786039 962135395 974990352 592834717 652251331 964142917 968393040 666977498 764353118 201521975 960742523 21453975 523166340 57006332 939958580 240010699 883999588 808726737 869738231 294882517 572955607 157554949 929706367 382069984 618828440 30206437 499754234 766796233 835855370 641339869 686031669 654225351 888639619 223495100 906630087 534275783 858513262 868149742 979080660 877120146 973068591 221085034 938641580 736086170 896734354 128892744 627205721 802804383 803793325 457777370 831791223 614713836 943392379 921966517 955160779 130738661 972889981 179944716 560760224 836738876 909562132 203601471 579775340 304077043 936778979 596414169 850200758 669756630 940816954 190961682 713061478 734865738 905025747 870189479 933600932 827670521 943569001 372546947 888786405 318506406 903347540 257485396 492166005 825340717 872686035 660445539 964781266 955098348 992240421 808888788 873322850 751356515 895460918 64503354 665732439 168142703 330191970 199971354 503168538 529440754 698348670 409284711 996019369 795336501 864738929 899776831 993570738 603370530 748256351 217472431 286309676 537781546 617709726 38240303 419336954 29201348 409987794 587743099 742611543 461650141 631593698 650577326 793152075 880965443 951554379 661992569 776507532 851526671 901999357 623059865 814937961 416864521 646728997 628504514 715689035 445797010 685495287 374990986 449339022 854701476 936086952 383629188 901837443 305685513 694864103 69307492 247438818 957761826 976614059 550928780 948419340 806390539 854645653 765178693 776286521 344458713 755983349 374382721 805444896 771108442 792914993 706831185 788972181 542166496 792937714 108139199 729604101 210280669 591160432 383771763 437387462 411313483 972112865 648817765 777264136 1863236 934224876 800168275 919996770 100430053 114282911 775783096 869609417 298635555 658388237 32531279 904519432 578108665 925518905 570061601 806285158 197121819 512776837 423747164 893488573 854847526 967766921 370173794 400720450 302503380 846519475 826787017 959619539 357643222 873999008 104208142 610084972 251172142 669473683 470849594 893505890 270012525 305710871 551316273 594399436 827309223 852039322 923815283 930856907 748313220 910076892 387990855 819248763 29630426 233444309 302640777 671568377 35529193 678552279 884916615 976223379 472641575 879051830 783099930 980326088 858915475 951924470 214077420 650782717 812347729 944647952 2242768 742535190 358170625 840379965 302063609 512586414 960368712 983868679 926375701 954558262 72583348 309498293 843868544 943977569 187605644 489242270 135857168 584193419 717446468 825585449 61862914 476446429 178356064 669109728 743612758 905994355 743202651 881566796 709759428 730599727 457912501 890080662 898104158 992575862 378565330 973994543 30211532 114730533 717542751 912720183 873341684 942132563 887454734 963219538 942831543 995055398 110392304 170960822 473937224 919841511 475873546 524990512 297655597 961205543 250177161 858083824 312879609 553805843 780573718 965565099 156723326 515536388 244548663 383247389 526731020 999428224 153351175 371434724 811499634 813768881 807020359 858167203 878603356 901275073 101082640 378577274 15584677 965641770 649954992 888415802 575464077 896615563 68597902 681622395 411039849 690311967 290596441 967812011 752819706 834406826 715934097 924858668 312649939 319773988 268189504 501837940 218519681 699639718 779082136 824035268 924410470 936906958 476866497 499605519 334593520 603900760 621620206 778059931 403976361 674024079 431297923 479407156 61874217 254460435 875235650 932726014 603304556 715240204 251191782 879120932 844101458 852603692 550934609 884662712 30685807 759053345 317007690 577153016 491367826 517685593 387025381 734693669 802006886 964401054 466628226 929999768 547377883 641834100 332084701 336604141 231665371 936967048 816918085 911605577 760384996 821081459 877762632 890013705 843875931 985778127 37397931 278286914 35185333 443126168 985613167 987664646 820587473 958367223 301482081 695784695 167559377 336210178 74135173 804708617 815613949 885132516 153893138 458498532 143392485 298825227 672206056 702344750 827691143 988051519 575497809 916617040 671368760 753029637 700356543 729418758 481888857 571720826 61643011 965051032 316417818 763620289 390008621 890093297 249475624 698579601 620480883 786738442 494609121 514544607 374592530 853876973 368142775 522180218 197667654 308881627 969974735 992071401 767802513 870112890 501335372 787694439 7187448 428716552 583905338 820344757 643087397 948092002 719754446 736737999 693405674 979776004 158596950 718976221 833176702 902890895 912293063 930059152 967557561 979860981 978327014 992427953 403661653 949928974 537043702 562299205 475415945 657128896 644738502 762776826 772142581 782833029 161556671 695423720 680429605 950817596 271220402 369293721 286558838 412889470 689560585 924059763 474051407 777912469 737781687 937587640 543431621 691913105 793165748 921452048 688996195 745960541 601260530 865757387 55712634 569424321 88106935 603549342 339558951 825250005 7614397 442926807 296980110 839138340 98023294 946572175 279124707 459986926 827103055 945791109 909317810 964071904 754264063 760330219 773252934 919449091 699424705 962575298 295292759 623908455 235876613 691639355 926445551 978601817 658199780 660321855 103563700 581772066 86453754 903094231 156751509 632683090 765463627 921971509 735735465 874598026 83915396 896726891 538429580 789378830 546141688 814954629 610363144 728992069 272985368 341097077 965616361 973088756 661374761 781016413 366116750 824501641 495683734 543229037 916486761 969420677 39688647 902352995 212464858 765171702 382078017 624274637 319193930 368761081 986821936 997865381 553981516 674452090 51009257 744746242 545086828 920334042 439871652 664619087 257642343 963009084 680482658 694246183 476405982 702776377 345464113 964382841 374981212 431030675 536743944 983284088 532063868 980019993 66321438 918549179 829491953 933667114 523675391 771549738 952470303 955208616 268258905 691131985 645086649 854257570 521554570 648770444 435233706 595185627 913905518 991555188 955184801 992842668 262850547 829883127 952783890 964902080 492043478 936193784 684762170 812355028 616831315 979788442 171578994 695653946 42254772 279706348 157258984 729463121 268836236 425686119 934310048 961210032 108542280 334034698 776731444 972630967 517905499 976205251 94390220 848706673 372577237 940862603 660984614 946053362 756703151 933143605 280115302 970371288 447262367 810510382 431964310 515010077 458832760 669132567 696707376 876002674 593293121 937068472 996105936 999805797 481453522 880953136 465474226 993736350 522660890 645727697 675620603 966784554 232937915 705916506 417543902 764415656 614599596 642716515 584441838 639531255 4980490 827191886 540479660 921924117 556634883 621490396 160786383 234797542 727105546 893859307 215888713 414291679 77834463 924139643 217739576 668220553 188501141 757634510 192173231 518423107 241521242 503488511 71652301 901374833 225886095 809273964 353069758 992171629 311678091 656967033 69430959 901475335 590360249 593725659 400063009 686089685 965864514 968970230 504705792 839549640 97158002 187107386 690314500 876957885 506816279 647645985 744139210 931324399 561114579 862909782 567459926 792655488 965178868 970406861 143199529 603505046 346232399 893509521 379234884 672862246 209852755 618495467 674725193 732546538 185567437 435044951 22101948 201935423 993596838 995828263 698382941 766106192 620102615 633275358 125372491 326992901 409560191 901351159 712853023 946597027 740852414 852928733 964215109 966109980 296962612 323798288 578763040 889989362 409583087 418950668 519495421 858774896 345524605 983919836 35129714 510963259 309914377 439053748 867717797 981670452 355204737 624451425 384905745 829467898 966847656 981758842 491715102 871047164 702070318 710885380 488531733 493383331 842876386 913185467 893507174 996389099 17659131 401310544 978240115 979671061 74263643 183368950 127677188 595618632 905036753 921708601 380671260 405485539 979619725 988866824 988017411 989476325 147288144 811588166 247921985 907541322 6162656 535359167 911457702 994793153 476441061 554430864 569383334 899557886 923069199 961866679 41063361 554627710 512065242 973270938 578566398 604212639 696229335 867947950 882639154 914654251 790682336 964999040 155673205 256235226 579870849 969777448 121400581 719297919 548304836 849432575 587696065 850918697 307728452 694917626 337049613 972861422 544393608 590349042 676041190 754890052 200776579 216320956 527154296 741123474 253157372 314492118 288781401 519300632 74959955 687287941 30313279 910385278 47433624 620804028 431035436 523350387 160476179 290753194 620825248 999521717 780729329 970674279 203626361 230081650 417012547 533412917 793324184 802573721 45604217 513950161 142996692 523900913 933318958 972299582 751083952 807510275 389164094 747753488 756351519 817582424 712768807 789852182 366081055 792516187 196431686 364530870 331290592 577793947 869678418 968575620 809566610 903522675 577484825 619943221 733813194 789062906 299357346 879830106 627895682 783382425 456156009 843311902 805515846 848631025 967738558 994331214 963031581 988841643 912657824 994173329 232061862 868693533 31659830 981208176 720906641 993524871 240817373 311901506 318266474 388857433 879255796 885829140 51609062 393849695 72374971 619700213 454451207 930249398 9532108 211227225 660403676 898464752 938612633 972839623 101136727 372790895 374573585 484044295 277180958 559704170 952147586 989575545 854220645 875538181 955974362 961382087 341596714 859932275 889421491 916692098 479714899 733418897 197962143 301742124 863521720 952452003 843006108 901073128 454488520 977663045 626439388 897299174 191345702 920296218 642125107 915823619 340532891 554190157 56917652 837813517 667838693 720079836 112671984 899061559 603599598 761624208 6485503 626453317 138719261 347510980 637085561 954395653 23154552 411997107 628157824 924560548 462674930 695399649 21888865 548222430 105640284 951291855 393321023 933173989 170864932 697659019 94437833 560365614 307110466 627523080 160209480 180539422 72407162 332437317 559463920 577277289 385046553 653223235 673541935 981763632 438478560 920638572 955659136 958810025 224226674 900291304 10349529 506287968 155572948 987571902 640127992 887028136 182204327 457054305 384428153 533113311 394400570 993448907 812012483 949630527 882326566 906992196 691583034 807675946 414930270 485926461 469957124 955512915 859597171 925254037 670694380 754318447 982089802 985186292 325458632 589641023 279471157 600089463 407887779 675005322 940517256 994882637 559577373 912839557 728721371 978771347 10891403 468596568 463510079 609131163 708635958 756647837 833998060 986925029 854027359 861691194 187357795 837570574 701804922 792165517 15006135 151143873 97541018 363912859 951163731 962948984 100732805 921338173 304531440 817848848 10171680 417225041 393289081 576897584 168131127 821190711 103285757 464279049 465134171 679314205 4613170 86653461 478121093 810211868 228049470 720557661 944381870 982077276 978475003 996403026 494600999 641124840 731018849 900606069 240512274 701682531 664332757 807588746 275338447 311922456 411452152 991743296 487148602 921227759 561088384 840791838 867302490 945977897 964650618 974121751 865282631 967594909 151348811 275573476 245665797 572745417 314180729 485499874 198620383 975674659 307848725 570121013 400182313 704806899 136268364 698882430 132908709 555699539 162064762 561901639 692655209 729839641 499319974 663519469 375621411 718139733 443215836 812322049 939465696 984225307 889731321 937722484 980644597 987630311 598783035 823052423 903287183 921413649 611062915 689316772 761270245 948595267 601241068 732144769 51020067 698014643 605774131 805033813 259867492 454913725 688073747 912420630 347487596 812043561 133461055 747018828 486357348 795675302 670594511 800290642 30808321 596617107 556998630 736867732 64803852 317602166 963810223 996941239 32994623 898984369 191579811 221505837 188763214 408554903 693200170 994240952 255642537 425604246 402432214 771000655 425154936 556039583 100107299 206401498 874453525 983837283 806022754 832061466 265793271 464162773 979382771 989794406 729892410 802199220 903913670 979961257 904679008 931930471 585465753 918917053 778264007 801989534 6620453 629929243 227127923 372112099 654496021 924786297 152743072 327230289 386824759 552971859 748972695 772902480 214147405 925788228 81868644 168320575 334404881 467849592 402600232 980540510 937466638 956683288 791252581 796533734 569719003 625135140 373493106 658860864 858608960 933046983 568376250 894379474 81208861 627655869 911846527 920320532 497949954 556128229 997381300 998889547 317102598 354267970 726457101 980379941 191599377 828620280 293569184 660918704 622780358 913231331 597994532 667553469 956155041 963808610 681410997 980574725 295889167 834041114 897617858 917580825 389567554 749989750 877707567 898042226 314663566 890299589 443329444 837993648 644353770 957566310 315920583 336794354 888494084 949622017 960856404 999938059 436869899 735924288 685053377 756570995 946900851 972438871 263154042 539819843 840296774 928886555 232264050 620812194 653531527 765342524 234454697 573399125 199680271 232575179 53132061 867875392 610808349 775747232 542521305 922518159 472334603 806740836 926432101 977523854 484118271 503608665 120628245 928095398 470726329 617700312 999458825 999893199 928982581 936462640 111279693 370152427 729530272 784067210 740996716 999360943 602013633 610853361 908634875 925658607 442664747 773203474 568096720 668493903 25735998 649971333 282113360 416633861 866261707 890271539 436629022 900354362 226394313 741157360 226389530 889358407 752287542 795615382 371834346 507498775 775292887 934323013 344709809 641175721 830559494 848884000 717651782 812739208 341331071 697501641 269570197 790947020 91985919 170870673 199218168 377873692 5844601 814416870 420653855 510677159 203263181 948566164 97811362 870530768 340137247 681082082 518064027 555095649 251391725 703449725 562849389 721647406 886589357 996591023 96139309 456373304 543358351 750426411 259453206 440993090 254681822 887839426 695686643 961034619 509977031 577739713 667668767 783798206 188745331 467550052 880360477 917380981 758498134 838909037 503158335 867848477 580688649 894625813 820151813 933814654 973798619 976220992 169177846 448453358 399579123 744090379 309536655 619697041 863464123 896256024 851398763 873167428 772500499 844727211 184097235 222865306 383344502 559563429 420415107 812889332 601246979 925629723 487104047 919797747 761792233 874525727 623244774 816736761 74356505 256578392 437447893 542176659 142657720 846103795 566264399 970667288 102837649 430181147 208257444 949566111 496437942 842660306 678869823 964849471 940237278 979967488 132776220 584936341 114432979 882811652 616225442 790698125 647124098 863844095 75716972 338165373 62504094 415487903 721935565 937435186 172641010 833405974 119656438 379170969 362143289 931400868 729379865 889539671 97540527 211129700 123808293 418064886 30996973 866748891 902328872 990876956 394695217 743383440 600238218 962138642 24482072 898932480 804589822 990247990 172145097 986313634 468674923 858509262 408953751 816396418 711909537 962594356 572394289 649511805 153489180 823768986 871231674 921874992 170196163 882488197 417351389 917636618 550791439 566456093 232154806 942844685 678027407 757876827 31555739 870422863 507711469 850418927 479514948 581099425 100287689 546105548 520973500 790321573 98962080 720551793 599585134 984267604 155123005 975777524 387375372 393736366 704064870 709503907 472046309 821242341 989282857 996041209 503326154 535773550 85541914 546539163 608414324 691356998 64269317 369201806 591500297 910870777 394959326 485672882 232408837 478731265 860441149 918222891 106901346 542136303 765750664 954732298 663271275 666237671 811313864 953631471 39390596 986572697 511846067 550302296 317720779 335547884 152727076 166364686 290965883 305864912 528862932 858054433 222897894 650748904 828151015 847419389 859783433 985191857 244799272 972685311 629377198 826682166 957801573 997438406 455497688 557106026 982825285 993395767 827142423 885966790 114838738 827394813 397923771 606279157 182262856 903506062 288195894 519255707 429835790 850732646 834509213 908776660 142129369 992367956 177236732 328746203 526718496 609049966 826435509 908476664 932282488 958018179 92655400 864808977 807114026 974494654 413685797 831466874 937298643 987938023 457825022 531330821 398417308 966625783 460405462 534757973 785158434 967120067 88477239 924000562 481542981 916607298 585258684 613669482 36321178 427259566 469079721 601268758 843846455 867991046 969247787 998721291 386271153 609015700 761019272 972149584 530363577 688858140 308676391 528405692 99660201 868370489 831713846 941101116 238777281 928631026 779253992 845405986 768215076 771989595 19936653 104569357 483971315 542042285 842686076 964337958 323774246 829141399 490597612 983787904 598730762 870046304 254629093 563036125 94473663 697546203 885319733 938535392 829150567 921907269 100027934 397430662 937683929 951484596 159212146 453990206 21156579 826777480 95628903 654745445 573013040 582941518 223068658 888555061 993437940 993527943 350607598 394303782 618195053 707803573 39522677 483134454 302285089 642418906 732870367 873080968 735419446 822344755 372320246 802138786 737681576 744882530 912944542 990276979 130348809 209636182 76614406 710708572 759381753 996940038 233088297 369221252 385539038 475225678 412037764 943639512 480741801 811881115 222272796 719508917 387206244 450632299 75084582 350501558 326376090 492472752 585175457 984767161 154522181 719639409 850181640 913068569 236324149 762685097 959229348 962640647 244576902 788040941 195020067 722901648 446770329 949983528 395277028 489060508 551318716 607994678 496225142 967479667 526201744 875394753 371604832 987280555 455762454 589898237 375311233 377703409 70534344 651172686 565301790 738501554 528907969 935801496 599013811 756203606 170464206 210621608 437081464 548649835 336851261 489726258 630816831 865813407 297885003 929101389 958086769 984315251 541252324 591847382 185362792 578709082 479252757 634671737 876318552 904039187 149021616 951867469 576729384 724517262 730091801 940088703 360132262 468798801 308791524 674349210 754383412 755880925 549106578 779806328 446821183 693142983 698148938 862192660 898027595 900184021 824284808 917839940 788568902 807075209 687788438 740193747 611793417 991186490 727810800 866994299 727544141 928817201 420403409 990885754 496084735 619340983 8982020 480144931 937401743 947215643 332312077 562117470 935431813 988811572 670400820 781382918 790135648 809780424 389140024 786715352 35832455 626583822 329005012 870134914 974743590 975855076 831290451 999273465 352480330 621147388 208251305 647487165 372119428 780117802 4204504 334269676 516276633 881826278 254316894 607558008 711799305 845954826 33628357 512986235 398982288 831773409 390539693 870603462 782636229 888921267 516981407 760920491 871800438 882283141 602404802 965898010 31807344 244260696 938812769 978751956 380316535 596138515 951659572 961004721 461949882 732497178 416847235 822055049 281143442 707936180 389979996 437902962 19734961 415301251 314380527 372796655 165570575 913326053 490099229 803706436 278946508 744824211 372066743 456639726 743113148 883321387 788818779 837186735 821575406 925165180 234690651 853513870 295828826 559077527 805113929 908680713 202539775 928689513 476075077 886861137 689298767 831522176 795822444 981441167 509817798 864812209 574463914 772038006 211787281 884035233 267930050 304977302 955945031 973658536 342026716 634327496 829565152 948743586 20002093 46317931 208927071 735649172 415544174 722662305 245563233 834121997 43499261 919972854 304893221 826322150 118290773 640048012 447061950 447176649 351717665 867458787 230550516 386043908 805018642 938427021 228140438 975668821 178263135 410024053 502944334 977192922 942923977 966396098 239429211 815500786 412156594 979601925 621592082 871476966 644260667 879381180 750861507 778197735 53491140 592312725 976094752 997953683 855907929 973686247 399188282 997808629 398011038 691224709 542101519 550970936 93449741 183228500 185335613 460398596 449128536 890380751 353111136 808875018 72607158 243839214 860363991 907739132 75067494 386124712 696432316 839663655 653543251 952734803 542140162 706658420 111864307 625591469 689863322 815702189 503610592 785899336 176201342 626828227 706533550 880749196 90941892 581499909 456081956 876441888 493712387 684954577 333983971 832243575 200349797 942602318 709803675 858855752 923914561 982281602 478118378 598704210 170502791 728475652 540379316 621856191 346282180 625518465 840829935 941010490 798342432 818547625 134217459 918532538 821234750 876841376 920796769 977889234 930007056 975503407 571015811 777097708 256172440 571896684 150120334 161846094 839399990 893229018 181879312 620555231 342798312 705216159 718242442 767466541 534646890 980567271 104517547 702190385 64261521 684990926 664416755 735187478 177679126 199760904 250065181 642761224 87337250 736441819 668878597 790132324 83031716 513745648 883928480 964191568 826938685 941419969 701361806 804189018 137036792 877569036 490342064 907897704 357457157 713777078 766947666 775873663 638207605 811851535 744913246 932410955 47130560 312397449 684680764 762534333 190666331 405720246 340783312 432923389 572599965 848209167 553013392 901804883 591821521 823660110 992914919 993153053 287418009 317457859 298791326 360095895 811352145 821288651 380736001 903382405 701905402 943963410 105094040 200046050 887290331 979230818 520696885 641968094 759099259 783469475 613052679 915579464 666807434 944333687 99365874 811437137 180507831 787042802 987753207 988990908 767347182 777006119 361924751 968628173 713069897 931062934 125616513 921987414 136553133 614914980 327233644 728826848 856958197 950946321 223099562 712289197 71001686 217252896 809653317 926140613 867730748 915524488 334513984 654924292 432969654 985001324 532144259 737325819 387334258 700682954 140226741 586361611 370608307 704003246 468440419 872435293 147261185 268016613 443561960 893224319 970486063 982573984 500067574 925306118 514695244 660559543 466272824 709415257 622351831 639768237 88167685 106774565 577235556 590267624 589323131 913326817 208678115 841283621 432082362 720996082 749721322 763921714 842552498 904404107 847189998 907223795 936462636 984119097 16125998 28050765 726790098 759643498 609950828 728398616 327283535 520843998 804322165 826696913 498375327 581064065 253632674 876553953 61495503 238668599 858276128 860240514 732485672 960990822 272293425 994968878 70744404 281907693 398300422 594034013 795212325 879452203 786162533 930593635 89307609 660290276 782451991 953305530 680864210 987177069 249303433 502132469 727319486 931765173 592562641 943846254 610202852 724495535 593353317 844007560 360567698 983589497 874483823 916908322 323420145 399748323 722627573 739160610 683267880 868054336 266606806 464756671 694040269 929448064 437529353 956617415 157716970 505122370 216238690 326009355 227338147 835109842 117710207 336356254 742834492 854047318 206467552 747791110 224820517 740339447 256732518 497287687 668924401 802393748 775325761 994342421 476138501 716154384 818990518 999711401 932158253 996298948 890646094 924446332 395852800 699413516 460513565 890818568 271577770 961532174 471577498 555659107 426187335 630278062 541178791 786989794 477651508 783731042 789315627 949671131 290659565 399220057 942606049 992834143 271205866 441102452 285995742 835429308 812987481 902918616 459039789 883870380 272386677 411701300 62457453 82384815 228267110 307838764 883915422 950140120 916842110 986844270 818882858 999008315 853877753 999021073 626120437 695496151 480075626 872528276 664196696 750505019 21948178 539548589 225327438 458612911 593542409 828117003 468883546 510772542 817892884 859112691 275185289 713685764 766569159 854191260 856496756 963603314 581280220 753855357 796836355 939701101 423022147 733916123 104566185 134810589 871566127 973594175 482457816 968568934 624056969 963334373 356939262 493688149 840787134 988572635 75828377 501260326 547609234 886290793 541626835 870727515 890736752 901696487 590057078 776481745 772792692 989839341 303909917 651820722 318635988 319545008 622077566 761066137 7384442 30429407 559238282 893952853 120070727 213741830 392002957 547416127 306507621 368314953 639485686 701662489 613850549 945433805 743718029 932128061 705973038 973247067 933313586 942187666 482555170 674308152 648071627 831305478 671758791 676618682 824123059 936010091 424696080 437636279 814418172 870108509 816265101 980715815 638780547 774480981 866356757 960323682 345744079 883393812 577554727 652556762 272188575 341444234 431593424 456603804 458137280 669494342 469578594 944397378 418138884 455872015 283187051 561467567 322120429 827951639 368424620 992141402 7678985 23530686 976293335 978277066 172755846 655050306 368908923 407446303 797387845 810710414 817057595 957435960 886474896 986018892 870901025 895150023 471356833 598110636 728791407 955595532 249334323 635095626 399538954 520703480 393436210 591804982 110999053 794256389 970610320 973924472 445997617 857532159 926476600 985149446 582857890 602640735 3980068 754157936 76397456 856274397 515058279 872970847 242574084 879971985 837689303 949889673 338026687 396558190 699944823 731418605 956840945 996411810 610337547 764492897 828552118 942356919 588927504 590237813 242289688 334547916 369176139 768039266 172917263 224420365 738498186 751320992 857658160 907631705 982154838 998939096 317519292 576983695 119451980 385982337 585506565 594799556 237097941 888104908 579265714 752718195 859451954 867593182 55927809 842325806 613948956 696587992 615048442 926229016 268109231 695427416 264553790 534187033 166909413 878067471 506819731 952057908 966488196 977379291 325867955 958678875 854814967 883773545 653454555 801364523 896099941 949806226 568869881 822474997 910875958 984706641 900579592 956523319 314432111 439582153 77091355 912999687 784156199 823306384 11067043 535975054 379370767 525618095 697950088 727539845 523033453 778163221 464749172 640598057 41688321 175281860 122943623 458932140 500018678 588344788 828315328 888493007 702508630 799465155 687231288 819821557 234781709 247073578 31743557 155191753 479470227 582051999 900326883 991860326 670327485 862894606 809133295 879729033 62278965 708215210 871196743 944972381 382690920 916072975 934607518 994521978 393246662 480110155 343002439 787490317 505275241 671516005 379004891 610099149 414164095 922274693 84529499 815883821 419639365 444665806 352612921 596019492 93277002 458178067 91805362 976523539 251208977 945000959 704586746 780041239 170368325 413484897 999198459 999867919 470374118 473815097 190659965 253727685 162351740 508157281 175633536 329189534 783333584 804317282 925581680 929192747 476451906 526523585 510095495 832858105 593044138 770249880 39362922 954593931 872720298 943908081 353646124 882251583 480197437 882097979 556592273 805195326 215874482 476535292 769210405 811776315 893060996 923168276 704519716 867164071 561929541 618907868 910138009 921969415 27098573 183075629 227579183 776752771 888405551 980346059 334199587 919669473 427381953 518700551 426997281 699398121 744427213 819224605 75643415 554375849 571423367 893981891 327628378 685161987 973253348 975647216 413997437 674419031 453921955 850499399 281660083 348758223 731116089 807331746 689930373 966041058 397740442 605875484 930478253 962641659 741954463 854208330 452959263 502918165 772196488 928405387 523142255 562356520 141942084 431141644 982649018 988264243 17108174 634377311 301002635 717330166 653025037 866986983 880453530 931422711 796356086 924490580 650968756 950669508 796630966 916469312 126166377 531559266 744705477 877453352 302318917 429271977 917035681 987115697 144212743 684954914 768196548 930728954 675189633 785395566 721425832 823005762 735113468 925195466 947985861 989806980 271359576 686244840 767186218 919940145 341500790 345185924 829315184 944444034 714897719 797576614 839468798 947143202 751598410 825999491 170802400 308928495 989914897 992302436 733952473 880456655 516348911 663324588 979337220 998939047 955057991 972305423 675205406 721133835 171208621 800523823 997717453 998065373 824516019 903113840 578321717 655566608 249512879 787887250 472826840 761068176 811292746 867066617 73304101 504090574 983418331 985101416 22666410 524861755 683569479 810283052 467218002 995531978 451624157 997102546 672163791 679228117 68782108 476556949 823463417 852736048 278455466 371412710 664964011 781504733 905579709 936183891 862182378 885234682 533632611 722958629 276723209 617397977 464976815 732330821 913339620 994530488 428956216 816545042 101928442 988735953 564366531 908930236 441728579 529309060 89594957 519866878 346246641 755780962 553203623 795611726 227104051 278572062 794703662 942205224 443393425 502441641 98184107 680897370 414807929 496071710 624556552 697394296 23225806 229103403 237178298 250249603 104547941 255830385 196210934 643737940 301773739 508600045 103226684 582124314 162573858 819971822 761581169 995221645 274212770 420654557 312406862 491330406 114045732 825754074 130253542 575557695 13470131 282343816 186439866 786885762 194296885 487056681 176106656 914687195 254627002 372185215 20668767 292982149 773070410 859786221 867351243 880350397 362691465 632823001 679076659 748063984 849638329 862800943 730953464 772345195 648742250 824371975 194528990 363608509 492926098 837691574 184604838 816799181 597006714 965043585 429654709 551544893 892521693 930103686 267163961 410368756 153972348 690123583 252399179 819030472 446212218 882121733 268857449 802842778 683796549 946866806 926920574 927721152 979336283 999806235 561225286 915753133 335764430 582030318 805687949 821124548 419243387 765293372 825831476 853265383 308796505 592637792 266551610 819331916 789029874 851486824 418584480 729242554 480727781 661565470 839972747 953894849 76588458 744284142 440900170 480247489 289835065 991441678 763953504 949919079 34029155 867730498 29418915 906992004 332772765 849951113 449008296 747128322 164202678 336517645 260240092 526229553 903042258 939833532 308401290 663973681 12722151 176451883 801850916 999263391 345301051 750016479 303798189 628289532 653764548 954979708 914416102 916689594 590607030 785507558 987135512 994793866 60605460 504554166 720721749 997115773 162996307 727699142 102675573 358821827 472649786 761815029 51206937 457306879 242125762 579252310 756988491 761963725 796166005 872051385 8556029 553449825 588483438 733567858 707293173 913580078 853615914 860521178 613211258 695387768 673460567 974535623 976639289 994890929 854427203 957628126 620777348 773907013 307227583 414175611 573351923 784293176 514928291 672856608 674137344 880781645 618633966 950684725 970680592 995571211 610729165 780248955 653077393 882507556 878559752 962690425 689225966 774423028 717246183 811783810 717984705 742752314 788761712 881500600 733920509 932028450 999105379 999190174 708358353 823892780 907427130 960464048 992821430 995542338 318973655 642637685 394119616 480443074 323123700 695420821 455081897 967153204 674026609 941730655 79148854 225335826 15460819 318607969 320496970 403870612 619798949 703996822 202783043 839394905 296318143 316383772 279815368 627485434 166703351 228105525 759240183 777975127 708014310 968609083 47231895 297256660 882167356 957849782 753257838 922313029 552786485 561056452 378467887 676289529 469037877 766306774 494945008 733359591 543689036 708524591 379466640 573577339 391442558 735268407 113988915 293058164 577448988 641572369 510580518 568269100 158374078 652540783 284044223 613524973 930800679 986625627 37729993 391831875 547628584 566357742 958004477 971153787 678114512 970893447 805570811 895930327 943247451 966979415 690333160 753765601 617955432 660342073 451314104 560568380 720505985 938860093 879685471 992345758 200743440 388956543 942965713 974953562 575139874 736864979 401998172 809122078 96984151 661473989 258921017 807641173 277206180 597056901 911257269 955042628 469417918 799929269 469032465 734413032 593610658 749421986 93278066 187425678 374057987 826677428 331790142 942154753 662512350 908053017 252838420 582087628 38396019 507506978 376864204 923121363 692734362 787193132 871220138 982829374 547614718 621253204 212531140 383629298 233053930 933447507 255872147 549069200 162273878 998619611 758266848 904508215 237678836 581804576 814272347 935844536 157227185 713107297 613850220 635327462 922861812 939082775 292876852 491062262 438074657 964553899 935059617 975604468 963260437 985647658 186451050 654442681 526347919 734568799 349712574 431649904 774033250 948445108 487811029 879903902 546702203 915000483 860785239 948529942 165385828 901791018 946022512 996734300 615908503 741762891 243722023 599754870 310932777 519439249 834771598 944322046 747677194 919963400 695724638 702831954 35692605 139934530 346196279 918456698 372259980 621159241 515741053 695583995 783189745 982912163 850775600 969137351 739794691 979284165 555123525 576919457 647962107 894494383 515660074 633924684 503633882 655794938 268274704 276651233 992831154 999275177 412384825 868184768 149089377 785832862 160057835 270611402 586729853 658256251 924583686 969691834 320004734 804447854 614933399 848496015 380844354 809418164 693207645 741535801 978801496 990101863 618344298 669688139 389042997 739466573 808162761 869859265 560081855 571944247 354834548 692716726 210160019 379855012 687102921 973796865 797004182 928897332 748580131 774478491 958617342 981048095 400453719 459475660 606210033 703223499 645174390 715690705 868779861 959457190 698327865 916626098 505147323 965408162 27477220 752683867 438491897 730809816 807463354 996297789 819951184 887117901 642047300 687731282 173615241 425061428 167398027 227113127 188891461 360036221 729468471 854403551 657465919 971163502 340552848 462677470 732532062 894988714 786013455 851936468 633468443 769838460 342021078 548939818 51217257 216341834 251178375 294484601 375335046 420068811 710444017 852966638 608789575 793725647 837561026 937249492 140915911 289823128 34528530 596425951 304248795 693245208 880540588 944320381 536010305 623870998 502018799 509443019 127282359 169327816 670221161 691388074 150930010 566948922 960930555 997650419 22394378 754821547 864058975 927095040 823440693 972232074 558868656 918894469 220865090 625025700 975788735 982767484 525994535 799779825 801212419 922070156 257281052 806423298 504084372 846444632 271722382 612748956 152236601 170083546 690190822 792002093 654879975 789087641 780664798 907394079 321098392 343573470 286208777 552295555 74131441 223245191 256303818 444670231 857633141 915287187 456997868 917835273 934578924 969155282 860492602 953579147 449512209 690218511 279830238 584816879 845242538 877365651 600638181 949261380 264643432 832589430 606699867 679082897 550026089 953678984 726408374 728228903 501628506 516721409 374089067 588506401 417839606 630610243 455834248 507554779 508919828 777314170 943970197 969667367 432807524 946739560 297930548 455987980 374774976 481923544 740913164 935554266 464194893 957032993 234586910 627960667 274450874 663153852 654814490 891399085 117133710 590961176 641434346 878186393 166660899 310949948 97036164 926831611 376375993 846767310 617666293 864965302 602234548 657391993 837667839 845009163 597589316 744469135 310968828 663095178 690678199 737801619 504531143 978940285 651961400 965025940 496177014 836918888 676438015 874408704 238611154 925118726 530868367 925246068 87927530 416619974 352163009 480702799 633305225 936154210 32610275 511985971 462169279 687633007 292071222 590624507 687951251 846126619 158667495 453317954 765420496 942267902 510859518 681120513 595618776 605565289 667944418 758337125 513020143 620810197 525931789 828120473 284797889 913104801 920499835 963874488 966779512 982809734 938364987 965479749 721507904 940361295 191319689 883398341 293650767 899628272 562714061 865264858 512272749 661821935 128003806 618682424 314844218 864797856 387857675 829579072 415720699 472781639 729055072 824635442 453387250 735058906 794399602 828192007 759920140 982104983 591413336 621704404 349859927 672380217 908466410 983305176 997232966 998244596 792514069 937793351 32881339 144802277 370906582 402712921 405838634 900911535 15610517 800929298 785258936 935329077 936513496 956089441 213265674 302556406 828732877 880099962 941887687 942100333 208395141 577939742 60978284 366198986 438288501 693670891 536102371 838814646 599472171 980426829 890233126 977269511 920577618 971127074 596973872 611717778 730967115 751059956 350999995 587099365 511544217 559783744 366481295 768014949 62949715 178244830 444306948 883002724 502509170 677479561 575651958 682447576 190201194 395780491 12132506 555646296 660488666 865232253 580037923 973737273 79496566 349087240 415079967 778523174 159585314 722406429 650726780 946661601 541001217 650307657 966329087 986287463 889192020 992951071 269245427 279873479 74976891 222071631 120619942 177583453 71924897 782245681 327322513 779542777 264838011 379981675 998695198 999537555 431551 279081100 596680346 952209874 791915707 985713109 969717834 999838658 162228968 514883935 856124463 881687882 72502238 808537035 386849617 568557036 664815513 837376037 589187232 932878103 717038533 749855888 867325799 972272629 331215939 864394938 590142767 809183234 792878295 960437231 905152828 920091260 917872733 995951273 311029060 524463405 192047820 970090794 685765737 796773635 216223924 776183047 911272490 946709875 889203211 956919938 368199452 957384296 611043903 948119644 399146668 791270607 224994066 967103928 506535512 793812888 319146071 559501067 700666376 968946213 752943468 903016059 261727488 331118461 58911070 912431430 600668893 957001650 789876684 982790473 358149639 997395358 425895043 774188619 282560231 628253571 197014191 277046063 432411130 990310661 335668650 455042735 308146259 584760040 214568347 629038544 871360028 971893761 116638072 791861674 144412404 529629352 235349335 348726182 288746799 334093216 274028925 359592875 214395158 788904519 545309918 579677672 112270556 954065078 738491671 936164956 231297421 856221960 162055220 670127230 844516317 849976705 236002639 745557208 835551149 965106761 105834524 521949304 104858784 808193553 461401440 885946638 399130788 431165021 178217444 759667675 468676183 699416295 339804668 952441813 127492326 491637084 662699182 705837312 925752657 965400833 396318304 471305003 24751188 658156071 486665144 602045804 103525642 188615869 626267252 958767021 288605930 556532945 955590714 961511272 127484571 850551146 56429752 211597926 422968021 783549246 826265435 895969702 760846988 824873516 135648202 454713863 515878005 649707973 927145151 933453324 269653162 945402217 611203541 981444588 30114476 99807878 620901013 928572443 556712871 632803509 516558685 516809322 46681827 445293157 110401810 996763067 205604613 407517736 848661320 950812711 97567481 509844293 37002906 889459207 934425389 974305947 261357699 597817983 525264214 616510401 512112522 872102472 345328834 457501949 688204034 846154108 149163899 986232739 736634989 800679750 98991819 245041464 507058072 860406105 975092232 985822014 564378674 630693031 721487765 977420566 344046285 366097380 669100521 848678935 985624135 989852689 267343351 288285602 909263949 971313150 211899777 603824647 484101964 637497206 810705396 846767959 601283960 908609588 991692980 991894903 1965420 24141536 122136282 398182841 462863689 529748263 185158138 747943894 747449604 795027153 196997580 701242926 404400061 756204690 479884620 496455927 130606032 829654098 225046039 756866426 683545045 690628760 767622781 997551043 847045578 967789950 808858660 968891682 233180831 856550730 969116848 989180115 172865521 515162284 721773835 853467492 418991494 509166825 133956867 388383562 636378608 933626113 79952514 358095362 365244635 955941348 926204990 979703302 783143032 901412022 225383437 441447756 855343403 913949686 785106876 802510321 641676156 746585703 381502815 493318339 392573130 447314683 999434757 999842227 84537847 151865304 668486349 848961860 411845037 773865618 710977468 863215625 412417165 937865546 609150407 644532791 758340326 955944694 865347785 869759671 346541789 482763488 293581891 743641981 599047758 867301458 885617054 895271419 371006107 907721690 391997634 617732392 530132397 632472057 139113102 419496648 335053034 867398138 909025353 923977727 194775911 883296838 453267090 891398646 404702184 788381782 998128578 998269736 935342246 943584533 635921452 770657779 276047597 645508045 554994126 934932767 512326051 844576003 167693794 884045622 702400031 802445516 377981783 578281952 893793469 932065957 828079337 946800142 92488583 248888583 616276971 658948208 43683906 54184495 658929695 664302657 386724927 619534554 415502987 850817132 591440140 857664519 573654998 726305310 898934261 920132675 174651557 430523387 98217004 798246461 438868199 591739584 580957186 625774699 731914559 864360513 385355021 921515029 650096773 931405271 595637783 874733101 159663351 794605463 260602577 516256877 120905451 727054970 646708263 796764984 371119228 822776105 931682478 963774147 338203172 619170085 736829116 748686435 411585939 597068404 981743093 987195017 679369456 954703717 58582831 290955509 817599155 974671134 380934129 726264423 653175001 807090301 970217995 996206135 776254033 789672317 414121690 857278612 343855231 985838615 223127006 606173292 747912231 895679430 879840144 896363993 436159431 935208938 391006521 814271707 501080104 853165690 888745487 917011558 456354259 756748393 429302839 456902133 833707124 955408651 103962133 417101964 390075745 658164536 822010294 829300708 29550532 775813435 455028789 466727606 812307102 901332555 416882881 558165519 922595584 945316349 628322363 836602158 923036288 979264689 382898339 817262258 284729151 895297965 821943818 832418185 929316733 933809068 61733356 366357068 716642156 760359201 988850921 988925441 337102107 450426640 492486784 857634750 198230069 958194235 261915595 641007645 726815353 749613552 125173869 431737214 113259299 157668184 905713038 938529114 836527221 951239940 874910046 900038642 392435854 552052337 501114760 758567788 458503924 526563208 249331256 989220327 420339065 890883646 975148282 982233924 518436166 945619834 902000446 956483684 893048826 982565877 736307598 881730326 978627481 995353587 230364161 357592518 590412977 840081139 624599012 883024866 569528769 809554098 27357712 202532009 826930297 841827423 826345897 839227992 373819097 635891862 233842324 443114256 676197159 828022254 698471411 910567290 52240839 996130779 439473883 498035741 891473141 900144654 988307712 991593493 253745045 374285688 66083360 834914898 943955943 976441470 931986877 944196718 283446006 496601829 427478791 672264450 747111441 926266163 662706864 993431951 730227900 960148382 558961754 565012591 359939500 938657949 302144351 315159111 744849818 840051385 741653782 811091099 362302155 916233142 472372135 968859906 502031530 827923938 884889314 998412372 237738956 702459158 429381075 679572151 945943016 947128563 389852514 810172231 560397581 601615200 521463662 561978431 860383978 902578464 515263505 540983682 25924088 162650605 14056427 115778058 79969182 556885644 386036298 538667301 739838862 931849691 455675453 585357648 356108136 406697645 224721480 914370799 3615528 390313003 177392458 827760160 388301774 565458265 228523300 341808724 390777304 553526837 630091547 992517066 861053108 915827958 497931414 897013358 163706882 697196844 828200018 841751644 903690173 962547189 585324755 753889341 233194635 269706841 329594751 527014085 61593180 939240053 409928571 802253569 185420962 704807228 242868333 644673989 258680068 267626968 544633634 794846393 321386431 945528746 895096090 897360899 868472283 941885765 100747574 252708775 854843194 885669414 121542776 755953578 312305521 508087218 553873396 874662130 604400167 939628299 275756683 665468707 722458804 807517379 437169861 489085448 359597754 560832145 888876947 944151785 209050674 282511146 385071741 654195067 358724373 604758495 844582937 873870800 846279063 882135511 570705182 576874009 82134408 917848039 572026516 933723183 971852900 990211172 283982773 505067070 312954534 982416961 170438668 776827124 924222837 958022480 332138162 807733581 757492234 767913353 33123036 471073882 911680764 966803947 327897506 549860705 720216913 780557768 704263041 838389008 945299996 950459332 673010168 734517537 850210657 946029282 541953390 852359301 328679242 908206474 979316577 999804450 308792804 661897233 194688311 827214587 368614582 558121996 88850756 881321094 819946457 909457471 491387236 928290493 462020683 586251961 581122066 585188533 927389556 965872634 146498215 446961515 519540999 529223241 436401211 742082829 844593904 962890647 907522352 983252554 339045452 401147460 906664814 998793446 167574476 171377818 571984020 878753550 154881212 953088470 14626363 729143642 344076071 828673986 738429330 887947049 995934511 996294626 868831221 928266093 192917479 515655253 458101844 899261564 55279812 420734721 659495107 683650994 125236079 386149483 861214982 971002016 845201607 896037328 720075325 740053352 614808318 767531005 423557403 820178521 189695632 745605084 557964032 668860548 59374954 616972396 137590913 549810922 335019735 830598657 585594375 877029743 939132531 945203990 624131199 747695851 147053798 409088523 198098047 675898117 304688494 684002010 966421362 980154363 564255545 771418145 183392352 958132833 20607548 935592878 252246946 868167042 63723631 70841731 780624156 820518075 117505256 498379733 265825452 630765945 215229900 374766701 760587132 783371706 904735309 981690571 669892887 722428383 194885795 350603038 789754489 978011338 829691769 976896804 421858062 778672751 952199695 969954095 293751648 936191342 157193093 858322858 144606533 325513733 393706036 444639129 91088823 897787883 712527091 851164174 1032490 178982869 357651516 515912893 434420563 526464877 383346284 827030156 614865446 959584364 2005922 218784207 940665035 989239115 401042837 931126250 225363120 772862616 417042604 500868588 589066068 624854650 298550290 762323380 803546873 958255719 617334825 897197747 709571012 716963035 651117649 826798187 933604687 977353225 414462683 922381740 265338895 531901508 926770715 953257652 928999153 939848094 637905887 942117327 209368092 965755120 660403170 836775553 198372127 978800289 565538668 664516438 36697623 891547292 593757868 858565704 141002128 664726960 124756681 552876507 358141234 800106956 892061011 961886710 336578508 760736187 911580747 920799543 230469988 921200399 563538792 674600270 542648160 918696009 463843392 937595956 104693473 269160502 628105355 804881325 972469735 992610965 196942682 344992434 383064076 419347861 984157223 988288214 215781691 677822166 562718380 855615755 682631306 849631165 747977957 756085769 980652261 980776638 489965278 544687156 780224739 912110619 438973950 685279306 931549599 934555988 763241579 938241673 519006144 762115420 539886568 581730229 557951307 924656632 596133738 939940245 699178610 941098300 109121680 411667869 776453255 876837409 561088244 932957405 240404537 492384969 44166214 198166938 195195363 232756610 10973679 847612056 836048581 937344048 231202650 442094051 191976833 296095659 72633631 912625433 446111697 698143371 264385062 787625674 372267159 901776085 396088762 919698659 655952326 935267068 21810149 917919664 701420860 751995331 434408929 504854262 607986529 918009011 49103798 379887553 805360555 859745028 436494602 581279138 455486466 590637845 914709276 968160014 353714844 439921092 730649515 905475143 212483875 679366631 325220654 460053917 982928130 993861885 124473322 578780852 126556756 594714351 736553297 844238498 557824813 645397400 57008220 289899449 725295994 745658315 503794776 789931842 983393635 991416664 82263669 956341642 825970505 853576348 405106854 474925724 792355430 997898640 909348305 998666066 992393244 998606117 389807225 868071855 897141532 913982170 221073123 839657222 526604785 974363156 183679865 963294298 966627454 999682973 22402149 957618482 779811272 924363781 198077542 534207929 626942318 954490356 99414717 479812976 448914557 930768389 741179645 783564685 251066816 401128607 679548149 895107384 731444785 868615828 339637819 441038770 649992037 727975566 668683551 871701940 974894394 977546144 324139393 435027142 841501396 945902298 859629825 929483829 855121665 955893667 65096821 103099664 486498503 505778982 330908970 748615282 402306710 799492937 985823133 994212633 144090284 234365502 207075640 609868780 93646922 669746238 978983094 988842743 300801607 634956967 252704677 509280832 278766333 553173499 861908735 959978000 929389696 994961330 317237021 452767306 899428145 999628793 100149338 439768104 733429922 921609086 272929643 770676775 101513713 812724804 675413269 942856035 398690255 663065159 969895741 989714928 443450185 761566267 96780449 457668378 366824005 986485486 874832256 952445589 543192449 948970812 788910761 958840701 388332234 657642884 347987043 611629466 178539561 781637821 369709567 731753005 173706241 932926274 133032254 304790488 501058173 912220835 231400473 470485223 909606090 979275464 990610958 992908942 626209618 888916616 142864631 934416193 846297004 882766948 239689423 507446919 988321449 996743308 338731748 737302867 532578692 704224166 314161054 386217034 626908383 799791043 728384105 794197228 457717282 737302691 174915795 526542143 454372258 533797971 750903442 848071531 16810659 719327825 529607622 962633622 854680430 882159003 361555018 436375723 354026740 904839320 111112089 897144085 310592085 602685963 580871132 958625124 127031804 226349982 377411219 674277348 642021505 661746185 509193253 628711849 985148798 996556992 401036017 417104981 32870198 404499364 534116401 852188690 90383003 743126348 710880443 901945658 657733983 689257462 148586991 642359002 801799886 897790257 424659573 791697589 35357641 138978278 733845631 756998303 102824547 247870636 481474936 500245269 931495763 981583213 698205995 875436086 118558815 724653608 979998350 994301349 361161946 697815218 598939119 661477702 51912142 221997390 704437191 707008377 749606129 933202870 385987191 768734028 249953157 290995944 644192740 788162604 750792884 885220341 824712748 951755584 798714185 917599929 556639442 575155717 294347243 902266323 21613820 190717583 12078501 903358694 740038966 753973769 370518932 558190116 132484703 659000470 248920614 513119976 296252016 323819047 85482072 290972749 819956801 951196705 847242846 918318722 112889767 778519532 833122998 982298129 369189361 676287304 291214294 817489953 389161346 580226525 718891003 748741648 956361055 974420808 427227330 656943985 501306522 749014424 7594483 428696239 236388047 590417060 406241259 889716922 340819110 891594450 862157035 879414682 569629041 592181445 748435857 888917669 705733480 955094272 629525458 864835931 795462884 914684557 357712547 688115680 914411311 965372045 246092252 704208440 770441532 792233178 958466534 958733512 294150081 732554453 678743968 850894150 638983636 686469981 327277494 613909777 957233046 991617709 543420864 982584276 476126304 955230810 897740872 938575370 377807268 717852469 189680583 590916116 820346945 831564695 477848672 805084213 801341976 924611397 313424881 362084960 310568816 714899045 327807539 445313916 630767570 668232698 11614813 151314784 585419555 923993647 838768024 979564013 702578691 889208739 403999049 727667026 154640405 494480268 590242989 712740331 307491063 943608415 18791835 438540945 947448971 985418738 597339582 820840141 959256836 984947738 272959839 825849481 963932669 973208602 685843656 755677840 886922242 917077630 704452417 970271793 418409108 836382188 804807676 954378592 471248474 583290458 719170376 886957530 836646501 903434068 131890754 556062275 799835398 852290939 196411100 443410230 290486344 330019177 187141227 522322019 439883225 938141241 451839274 614547014 695048829 943872006 630854468 935807339 548184053 550858236 424343768 880456986 219021326 964302874 144698325 903341672 489351777 642699208 936668695 964456587 106921869 337664191 419919745 988105126 923556661 948294742 724639350 887309609 479865532 510225193 730564639 958048056 612974483 774913941 851206147 879676556 730989788 754513436 152288100 554386235 221241331 221828089 109691464 695468681 904821418 932578439 65624662 957490560 337470404 857902589 615542687 727037918 361863957 456128048 597917392 874704866 500454736 549423527 790605712 858148445 764550372 783492360 765444734 986695598 525844743 810867719 769441507 822955055 133278504 316569512 201945778 221172472 856396305 914450866 471790179 532354587 219441082 228434961 709353281 741212808 235327660 704247597 822568276 889608977 561940090 821748402 794461154 958014533 104698964 422794443 139316131 310743667 229537933 523601471 550256587 801838032 924925315 937370380 601061154 966314868 642884760 790167266 19338995 109808044 373771595 875323186 725493708 922197487 362341556 610064158 710044952 984725819 176064611 359468251 782884489 962193608 995189756 996122888 787927371 931262384 603581694 952239024 554941686 653962629 253765336 693567827 883828385 996589386 101429614 754487981 320521850 459500775 199530365 247380175 878748962 979069192 369178803 794907683 472165188 564482804 515613011 589800582 799279705 965189654 390348089 773343965 465053520 568362810 49686479 346863458 66506937 285793400 226067843 922687233 714555998 910747417 888490242 976212346 826716087 995714688 922618488 952303582 924214762 991778217 893311381 987400020 106337067 470273114 998144022 999043155 671786348 826061109 336817566 672092113 980062450 990124007 898026322 983188729 73949077 388484160 446660457 975294667 327494067 359223686 863448875 978082679 17531140 98053526 977957984 982252025 323777800 520087986 999953736 999976172 905911382 994662647 614461157 651721333 551962378 571371522 259972059 415203146 451709408 685057855 846847614 885937741 835977027 972052622 481351361 673459233 775710246 823570786 437001326 518111452 517152630 871453715 579066269 926457406 799526028 891393711 184843588 658004621 323346909 947828171 939549331 997978300 180089398 853367759 303912466 843867315 309025025 489470606 346608251 636873714 534220099 899666287 275420618 804131801 725770156 858750945 915722317 952070221 75954977 989449631 20876794 40348540 423961667 505551379 569446306 852131216 326507093 494467476 555266434 610150881 682147012 953613530 766805313 840871913 864243756 909343046 242818729 445260344 190268185 514669045 851009590 894990500 832683259 892403513 892690884 894073443 751589841 920508542 210706439 370987262 937942283 972175695 46273502 661892082 377258616 793763833 873913349 952700466 324708354 428334931 826102488 891620777 276297232 552880716 261790425 842263590 144617928 785070699 635478014 869961896 591584023 982849045 21030379 768653800 215034111 986926741 901789434 997563001 847961515 871267775 30665721 36041467 105988678 596729324 680767609 788046098 689994757 956045417 668459281 940727530 518043747 980970797 531578666 627786985 566231482 631528151 457033386 982230971 186017221 634790242 744902798 837009844 509773711 981736386 527978634 685450406 259014879 687579490 885535386 900388912 904795952 930992742 31783201 269128673 322191754 933151116 34234301 798650772 6856089 682832942 196211151 479157344 536286468 633818973 879786900 905776427 384916733 422743339 76168446 844540965 440975708 648156686 972363947 995333758 647439573 971096230 686617030 950632340 263113605 558500301 762470299 911398169 6755071 699150049 877717628 998277608 432844880 991776989 503950232 780784499 301237520 842086900 114807447 943644749 465084033 687162622 283464024 954411377 107980956 847058308 246111109 467200078 803076571 971827651 607556893 726556178 979467768 994852753 936472845 937952556 465446303 477214261 701464925 972589545 830492131 867290973 571469524 596098948 998444103 999420061 107536829 594864836 255594061 735045199 440183813 569138952 523008975 785244143 163595588 668439642 503135437 825880461 179725159 814642143 889982419 974097441 768640346 897972577 723652341 815828254 204139818 852741324 503451676 991187683 430329959 626199432 624968730 687164015 943331299 987013504 237665420 286200104 820566628 979117983 104042757 906349537 436401925 961548644 206294692 944637959 551557416 763273231 253131772 589951283 958351325 979777518 593487977 920232042 103277728 575887210 889655148 958263653 978267095 986059146 204606658 904373969 9739515 33137280 242452900 493208613 924545091 958408658 422151339 840380799 487157563 622371667 541003237 946001265 41016231 421042239 70455711 165438905 61653277 558473500 922232528 943654370 235385090 372722416 28023246 405903286 14147629 866140855 562460500 950531238 889444008 892872865 323838290 398858024 78754443 945157034 56614886 301919122 591246594 667985351 976966184 992123563 288980700 670423180 861132610 875886410 22759087 890081565 997086105 997579803 648827827 715841857 754675910 881222452 871784866 886564755 889541367 932418437 811863791 909218705 28916931 755714871 40216283 943658686 987108075 988390296 435842126 649112394 39054479 403985657 555646022 737225569 454952107 569833674 502674908 630866123 730830871 963418349 319089007 827351453 138577753 905689286 134534409 292692233 484163872 701388623 553614691 785189801 449488389 995101341 368841325 975109619 628117355 964607307 926211321 954612847 443568510 817691363 935906579 952018745 43066180 466608164 669571304 886909530 701891901 954931982 960976809 983028766 609230101 936466374 164877195 242060739 646752239 948409202 711294678 712167061 741987677 826483850 251674104 996564119 391520945 994025623 2772546 473293708 229471554 889311274 454763198 511449966 130056227 654800102 434120470 636402699 555055079 990524980 424941035 640412239 438772309 935755648 813446194 907760580 640668695 969449724 891064899 986201139 994901334 997432823 668727882 756023588 233819961 544346331 264401621 549791617 157834142 463705180 415518314 503508352 324077789 356315362 202166056 550967503 101361879 644462740 720365906 746936278 566431358 799967973 637318266 884958200 865939810 980013738 327168250 806370190 923841607 989353555 477900296 567625830 253108215 668297198 193943427 812854774 864169616 963643215 647942681 710285430 704391541 900437308 295788447 659855177 472011498 482227701 751280361 830127713 249885388 695331614 811180768 833416633 816124602 971019374 828118720 883454462 819382848 952350266 435239247 965122387 858587321 978527128 140985986 941147128 501195851 973149299 932966953 990891203 756778695 782845353 536612914 946745343 138634395 391942414 110085325 540586778 420567172 936814015 237710613 799844157 939997940 958581429 210888150 854413358 76939249 932851712 907628107 966599531 463802030 812676764 10952 324350134 175475885 285113405 614808303 688264802 975146199 979462283 423241319 657294165 98907102 711584506 544971717 921060358 413857793 713789877 74666928 200773197 626438473 937491572 475316117 602685590 917231013 941777647 621218672 843375492 406293377 457274289 444483289 879240531 871231028 959991904 521756916 695995423 728954828 747013777 326300044 886608205 148741482 444710928 888693333 893627734 44849661 642195036 48411250 921242254 279370777 992378416 214502189 864035550 338264363 531287290 990534622 994103900 302749896 701313587 443018476 727045229 150431541 723331331 634424572 875371872 570632289 654247626 562653316 760383130 39648962 534547561 548701224 978762580 724197519 992274804 870553879 886367106 933657570 950976313 188122383 392436625 773441292 950969797 130032882 424985662 617549497 663202500 264866260 415226814 351239068 997556632 213215231 255463001 264301133 280685348 753779928 789276100 622111050 661577824 754546000 756558720 122820883 569809783 724492032 910884820 151749140 571270002 228263780 516642068 960479241 979056058 734600320 964005038 906199472 986167585 137256163 718067873 293433993 692281198 769458733 826268201 729904423 889596314 317337508 469648765 44681291 508400484 390156947 793781235 548452747 906129555 64467206 654240810 758103038 911716366 891841476 988321969 680227207 756751511 201774653 989199317 683346679 835858809 212220366 879289594 116947830 140665062 383861833 641023928 587263782 720253681 337951833 463802615 56106796 242171705 25902735 555857550 567192433 608972161 195151514 570896656 362280109 404778355 959115080 971007980 47959238 768061781 48187775 878771054 177503472 368965268 804224074 967672941 623350943 860748003 565457264 953435402 838570677 896473434 102594914 361736889 254189420 293335292 31604004 733048056 517535276 875018211 328916607 480691996 453929609 740234095 329579833 588930089 825126317 974005800 674364040 745390752 505555885 933647382 506630790 739062150 52460720 309792663 837273692 994233557 333149094 541158367 897552629 911066060 826404323 936890448 721874833 833458762 539778047 832512887 677946526 885279911 592235334 735503581 750957606 818511963 532539112 991628305 539977699 920033783 46373864 494785548 523943972 683639365 998106564 999745494 861318073 867072974 19771474 30982165 664715264 905863275 455991547 913722423 343747418 463160494 684239654 756582527 510544413 515235282 499034867 576759887 482667935 922829979 108725549 341634220 194728897 801811409 735286022 821156762 369206391 932137280 489194123 846008103 455768708 573777631 932328925 989776812 540407440 842754927 103449221 496756809 575156571 989070073 817643923 879884096 67058670 301364287 395396002 783774812 638189919 727109700 16349962 883033997 521862913 783926780 652665626 679112850 313744399 559016270 853810782 965553615 963781125 981754632 763427420 953818731 505102835 661746099 827045156 980007229 911951702 949823531 72774534 229930473 681550501 936834388 49797951 615206691 518189161 973270747 480865543 520515670 30664189 846015533 927281721 986960754 718435366 960143673 401125033 815365996 987237942 990080854 53073845 979404061 109839389 315258500 359142803 892266061 225627661 512529330 519037645 599107774 436963278 894419954 94039581 417485178 961730328 981538005 35162322 187478118 163359967 710774115 350681934 695569850 918003753 982428620 806320291 940707049 54908723 552667958 867843086 920069526 739637332 904268831 628345282 828049645 868864221 987166149 432461854 481747231 722956466 959516649 433007459 536708461 618750200 798263774 569432511 980711047 748940768 948146212 513910573 778300185 232533173 523834022 585249905 936628314 918411665 982727082 622232999 863178308 515964896 801537044 430546492 688292529 321651018 811960603 979512757 987781934 292114696 805160765 784570557 846278897 424902894 909216063 397423704 532642609 45089783 869802981 982862711 992012715 498653481 835232924 977321827 996022345 177692142 998116590 775529091 843444090 220101794 408692522 140637113 553367844 323528655 446421231 35303473 851242163 819691556 849208423 712812452 931438523 312534127 814206895 588164669 618754606 472075693 830173343 740248296 841842867 740094291 799363367 59786857 918657403 354586256 458582673 226468330 537416698 796955219 982568228 604531176 667742221 506583053 809566172 333632817 726732200 980974563 997513801 555060005 624854955 857371640 939110672 835109918 956134307 999947692 999957091 375411779 614587633 352986538 995588228 800967341 912451221 91863890 246006071 418837749 440863745 711253654 839901912 889297410 942562800 910597496 998579083 84564965 489580469 219407573 251905191 768379625 797668779 68681696 892125366 811325141 861607021 711782300 750018253 480839596 973021261 918696613 931831201 358371109 924476321 652375049 863472754 955375568 981063496 765738374 937085257 624046468 701981620 52437847 281950079 624798248 926867991 92621975 428115006 710613860 763454152 560867950 884326100 270142642 962584088 722094473 859489918 593470427 665385471 827086206 900137111 621093643 751230208 968328536 990996707 720327305 781948072 323338801 887829771 230248286 560307510 784820771 965241950 977241886 989255917 15582387 403199080 604629030 896252164 996754236 997702036 895844023 929492956 472634161 545008850 673025046 717760978 802436667 824271393 690722588 809847348 392708956 921163903 395753869 768929410 312336253 431896199 673002204 901899440 284270136 661735891 492888637 886928047 826266202 867463527 438519241 697571832 289726097 920335993 894793487 929518614 50132461 638966736 807092988 816448130 217139148 782694113 902119935 909838316 19195280 977686928 398425943 407762774 32447105 892614234 521690572 758882932 963357207 991003815 855605506 950635226 731560209 863674939 193769930 694536424 931501149 984735264 392410036 962465449 761753270 913053552 176247779 509287489 268523733 787286629 113816808 847559241 577301723 631266689 914321929 971936187 131884393 787900337 201472408 896667440 924876794 986101213 829800961 982503174 497505397 887766437 57480976 88708093 139487973 563088568 217769724 626871696 243044045 757872958 412394960 988399148 490927107 961298018 950898213 968647245 614222711 704281331 652878195 863711709 538300096 979372215 977433952 995127141 817297299 928512256 612737608 908815979 350986385 718874902 708749754 799497456 282374174 858066279 410326027 534067501 121284037 410699912 508201972 969232071 183572046 313145025 537542666 887336474 101552843 500206003 707686986 987268446 960887847 987420426 295195013 452257856 742043517 958700879 947938173 974917030 853119762 941135347 569661510 847924421 184998047 559614136 112705157 723893320 924555524 950705149 494561458 743276877 391802790 605800518 181944345 604936357 255577114 314530892 990123971 999640537 348112502 754367314 354417024 536737561 789051991 981083524 101022193 934599812 719029829 988250924 158908335 472009086 10844182 363214490 288135239 743926516 164095465 344028633 613316203 733812246 375773941 471167402 968521483 997803036 1156648 5524665 474886833 967180652 45442709 253371880 566838387 783464381 728213858 851888105 487423094 510110510 591790929 964578648 75269907 433354343 207839775 834903039 289263291 919736786 349467694 604373951 520051414 678183698 252733142 365489015 550561390 915798767 79514455 807288805 785110816 830856418 777432569 883588489 905205859 915990934 123617202 981699067 988905770 998578452 422942179 993117634 53836346 54370348 342188673 509023984 589481898 934535252 331272997 526856946 377534086 821848647 220283272 701145612 607030237 978491453 820641095 992464269 505685221 507101610 105215953 296705639 506240447 809216066 920356689 995725475 995433565 999145898 253614347 613936110 7514671 233772727 481673816 749181364 495737454 908558022 617857991 787262811 157913783 725649374 213670834 500652195 245084442 690246553 930737763 959121833 375480172 544781823 714974542 875370149 745009021 818796516 776124725 845697696 492920793 666414386 795860278 832509405 380830265 427841303 867971154 982313437 363081002 624560699 682665634 762830786 323062335 883189687 470679282 891326731 289123478 673868934 947240774 977326609 678949068 981198612 486362605 915461290 141924798 981253848 159334956 640630457 219229529 838488180 654718460 934605859 29754100 824801136 938558606 997906053 644441887 826674937 833712306 950295361 793679996 887203743 30206826 290513209 300474198 969059233 34813147 679639935 383051509 917248102 551224071 637675568 64201350 453077084 492699485 638871682 891415128 904079618 479468662 933771072 320302726 656888001 58211753 376382992 194022222 659830015 101071417 892194430 387565838 582914292 949501372 982069407 930147876 969188558 686638704 970402105 128315311 674124151 361174346 760824153 452869826 471289880 561439595 591189771 418657110 970189138 416523505 859210756 796966498 886976325 675303618 866208231 739468063 991695632 709097765 747602725 940633505 955159188 961458844 976252414 435184638 647374174 450560843 666457415 433104696 509830244 319004487 619103544 176124796 876381691 540110681 642238432 814461170 922478965 147893776 752197962 681834146 984684610 914364061 970086049 374211986 503833623 17569979 673115779 685957573 885775761 834262729 962390976 722760573 968172782 88051625 785665814 532463494 784593122 868847814 875796849 175144756 613186068 636026925 684384380 655031780 689022761 127890008 431092307 336194791 557447113 517348604 751431482 815576374 945408792 170580873 446097759 727070094 857173586 301553929 705615052 439044048 858843900 887460492 897142412 814811040 998047185 776719562 868121579 696576467 887283003 175977824 820324411 594343930 651689131 712504275 731199731 54609660 75096656 750079626 829931284 917525577 941754586 515319900 544623519 791420524 999341886 394782099 484102787 449662580 992345840 32365821 222255533 759418475 950332886 829254090 891225678 74261811 307532938 297535335 858475022 971214493 991374048 514706839 801929349 872768954 881697048 266455921 408149270 906440305 921588658 704285858 968318208 221873897 959501130 366552130 402865500 200622186 294140118 970295671 979440276 23692178 400370539 672277457 720370779 854634950 986158323 796733314 903454719 23471412 208870215 352931023 845356165 836195057 956036451 227761240 900434373 187131401 192849145 583577968 949896349 623721259 745787978 567137703 875693436 309993675 392986842 813096696 921760308 799635372 967856043 925426601 963459982 817498080 976500440 565980375 627005986 144151992 432146371 598993150 679434968 32432315 667714947 594518613 800864815 189951671 661900414 52246562 558536826 658485001 825731631 872144197 937895146 196467183 799268249 873093456 960747735 694682876 959313894 912999583 920263570 951240265 990462879 968161616 995170975 379410220 855536288 999299490 999578498 237025743 770794263 982425449 989455065 560356210 912851433 373869777 819493955 947710910 954747715 870048341 990955410 648190370 908756036 860313820 891572205 876612584 901902110 528710496 554540634 958562925 970082887 240925213 933875574 173722017 487753740 564258770 607357878 324120888 892776444 157491633 343141257 698303371 969697984 934044279 946604661 942800193 974797285 673819292 797992135 437601099 887068974 626823378 977300798 849748771 960793079 624243680 807763311 371835532 929126984 88675552 362033652 346946989 934363444 217167231 439314786 310581491 380072717 935096430 944025331 368214570 469965125 668038134 938308960 852178613 950235465 631092195 806584498 526164496 671310735 197978420 515216531 583230133 772995850 236648322 447741642 822225126 929982617 357069587 616268132 828967222 967122058 400574464 655965797 728816546 974449373 977757771 988013037 139648330 189164907 780460005 897723091 875662937 989806231 423949125 559524209 731976334 762775837 835598634 891829590 783930851 794176270 42520263 50098268 464593338 929591964 142156494 274390859 774246568 974424843 305317913 570917135 882525655 953006670 688979917 932667101 376779147 394509823 949766803 950833472 357426374 750107957 23210646 957162916 16801330 815063520 151890179 842102652 504183816 634891466 648243684 938185627 969574689 972337629 30721745 38726524 85189582 981446763 488316134 542041155 464675426 815822728 738255272 746221720 936354676 967381189 675400920 868549976 52790408 730523331 617512160 887812352 802504767 994563759 378145152 573512417 385344624 756638204 553206809 748208050 823349173 975227088 565036132 712783302 106368469 582028056 665555772 883660513 359475273 565666306 230973547 493486658 552332272 829353865 464233387 716169959 427499531 515026734 770829277 878658533 792974086 808807196 224406532 575051764 705902687 736106490 543738091 784329109 254296684 691084387 60811115 86681732 737687700 959027084 965254231 995208708 654126424 748013631 172581292 731813745 653783969 822340113 119026510 729197306 735931757 771830341 304289365 904121251 409556743 496153311 623673877 987594830 595487436 882254885 589214612 714292803 967813646 973913034 624907143 631230611 9750284 945761123 37664885 330766333 147171575 289945892 622147526 634736403 261336649 568989130 934664380 982237339 141567107 930353317 979611606 999111880 800578118 827694165 683460369 986759376 683561029 746887526 704679571 785880499 192880583 929970791 960755452 974530980 36014883 56603145 385429032 993523628 39642368 404788679 137568015 750941460 236424184 735019702 817201029 880946608 589758946 726843009 780758027 821443356 464787287 936950426 342577663 897503511 169499899 469900434 599061215 762784450 573405281 815597008 319943956 725047030 552789455 743418163 723589298 881928863 812167145 946065528 718941647 724182419 290160016 951270149 69704028 116625177 906899233 917212143 29151883 880226007 241867199 599273345 515349551 629692509 181097027 412703754 211130838 357031180 672449795 788876386 864530739 982459785 162577632 678838443 115108815 898440782 564134450 844626336 671003575 925196096 381638559 670589937 688292650 793026948 593046064 946166211 520733570 837133836 971444927 980714514 451149344 694145254 947608277 974925181 896591885 967956299 565822410 660927703 582186851 955750466 962813462 973543855 352542186 694166824 131329778 532278726 681350953 806522437 212589542 411423074 875641740 888384453 697320300 956737343 810100702 898925193 232356671 269634918 635039266 725326881 741421612 868609467 418472505 471136257 919309934 965723201 400107316 803548853 767797257 768618177 40788122 894380395 257758055 957309937 883063345 956891080 124680054 563544455 408279004 917514462 29937541 352566106 299000617 708544729 929737782 959648189 535703815 868782307 477378491 903756977 589799837 590568712 866845552 990095397 256266665 575230184 985238653 999846587 614702348 725087216 328322095 479812660 571320248 726487890 732661448 887917997 10491780 865213720 249113547 640642068 937550384 958362018 541806927 805802640 176617236 235241474 870919384 904383440 17147975 443003047 671054773 839204698 280147086 306334473 837399335 937412609 851610288 942526763 816208330 876096650 458447461 716757305 164345951 939837901 393924212 650548604 140347560 817029340 846644361 950327143 378874183 963228077 159229016 317231856 895632796 928332916 833527312 842100804 412790551 631082107 457534716 621779555 699230182 759325370 413014891 436460361 316563895 889076053 796802392 824110521 233760908 671487469 942363390 965677555 734621235 810981908 802662313 863731458 136998356 221879564 3882645 550331609 213928342 710176928 438892572 452931039 754632572 831245921 430293726 430551719 508974681 851756733 17031868 357933169 341021220 984984114 923713922 965139651 558656027 902574140 296097691 531973117 262683860 557463950 687434516 952701908 516982289 731183202 346884613 531720195 868829425 881899404 289461520 841406363 451267946 629373788 586340465 667360867 604945374 651086736 686853321 888110926 190854329 685231452 444067609 604336848 430137100 940237119 645249142 656754799 224132776 343516624 608288238 663974802 863131268 966665227 805106551 922085686 865972008 904312761 608511177 868449767 952535583 983911613 157144409 733063419 432757442 766118478 313474599 812054556 544890573 610629204 176439207 672548171 269686497 368864543 598796985 774441870 167117647 667362050 244187711 860726088 278389051 828731691 856847114 862027143 146077975 483624068 968283117 983421055 175060686 552348898 738153953 759981220 115671933 177366347 327980039 689822368 729631208 981615800 696217441 944690745 638722348 973787747 8077961 647341985 155341078 748638144 670590484 878283777 109658000 875838158 499407568 650204612 815255461 841752360 116542818 460473810 901794934 942544134 266629710 908368129 440560362 737792970 569418055 776959731 859018041 999835259 634076977 649933350 453118391 542006127 842054807 933049717 768187349 935809832 817955785 963504803 954120998 961488592 786621737 903123650 434835595 981078212 395689189 562387377 663190189 849717721 507134110 876486787 820439989 950843882 851066692 991884591 571509908 960402559 101199140 903670676 301143206 445893010 437367363 437889522 747861918 982799465 851270585 928841207 940116779 970490861 172664908 589501964 794659237 952334437 131617013 250304626 789290094 986591232 799098816 886779556 983012693 990308417 935239785 937246471 718841727 788534649 330070595 830289896 425474972 493429375 247125806 826912851 737466602 805933966 327407401 469458835 68367813 811190817 162542109 258785927 352593831 798895704 251693458 804218563 476913674 788922832 873949472 980517540 515072395 584373833 884904366 989765874 347662739 864874364 497802765 793056313 116346638 373291182 947191358 989921996 297497358 612615510 923002431 974692493 868379621 929439232 833763721 937028345 771175888 854516279 28597731 537613284 100329854 256355413 466227905 653027167 791858648 896675666 431374241 542525071 421760703 888984620 664089157 869950788 677585286 929012529 674651988 764950722 408333024 854298871 452339064 794561460 60083356 821321262 645573257 699829426 582309597 912231132 523093741 689427544 902307203 999133438 307152264 946490150 909285430 983570829 371725813 790237213 90389584 609048380 19155334 954611517 559538389 916860294 89260472 354523534 12342728 246163662 306841137 750644570 222615090 991845235 439072756 470742892 920867880 953386765 655323304 954654428 530771464 818489541 914631459 997688692 726011307 728638177 778604637 995536088 713492739 859758134 18893361 607816717 422003498 733108189 220823448 515582099 441977549 621841454 964265942 999112983 862177832 863258393 345336048 353561623 128214221 663687595 75986205 167680170 402526866 929419507 455609294 715747087 660216876 916704030 210085269 654548977 786513767 979863384 961001336 995575694 691200523 945030623 743923112 828614428 639922372 983755696 87084669 866197882 463890337 482467022 102557535 877889557 356676164 721049933 705468042 810280448 575633309 624224479 68828294 580276304 836999596 866404531 70851393 775029937 741692784 851028401 714678199 915369265 854135066 992212979 548531428 772351433 458516839 948736782 297302238 381080066 228581171 977004866 112123963 609406934 473502816 948394737 822510534 959397837 120057498 680906695 768808110 933070292 199231804 803922301 294189616 647227896 522931312 843942585 851161597 937861771 721962193 946206617 686930849 837948784 849366092 851962351 643814961 955779881 130805847 532464290 618501601 839359330 286532837 592195933 458156040 942908641 830337418 972843761 143305589 258206859 91765695 367901436 203221247 553107306 681166150 687262146 25978319 309647976 800031172 897676351 65255776 396413342 779909786 832575216 194704118 220516073 174433062 725703786 935842478 953367347 775168407 935059779 38702196 294556532 38629408 706656819 828643536 876633737 620941275 840299108 937862681 977422025 75218326 242906168 763413384 959793554 217968978 824315857 250796967 949650140 684430519 798040951 853642307 855903376 69394794 419175571 11237041 463923455 634496819 951960060 29708902 852702775 798402083 956591976 756671858 803128419 737290906 840069313 798325944 903714647 34243217 607933828 543393586 717019195 255197560 582288472 220636186 741347458 334942671 798167151 731564 615219126 130228963 802394149 724148871 756333232 154265295 852111403 665390610 896451732 357006173 910857984 844194221 931122750 454495952 965430181 387592625 934452211 921655878 961502355 9053835 140487339 330874969 486980004 506921829 960092422 422271135 472737428 792712981 847577986 598613275 721206784 224571071 995379106 349088985 726393005 860733860 925125759 829365345 833092453 380879713 967190202 993059837 997344360 133631366 645196124 851237715 998911881 787581321 909569930 428532349 666287624 183194660 237921637 136878334 219456882 278135050 861803367 784165692 843387323 906111213 933488722 64026549 887743610 965766256 973492825 213072866 230001439 755432385 775650949 837119656 928571733 577276670 753103134 808990621 972625853 411793208 810517446 599343588 714421071 751885 515422828 558364451 964613252 512004885 771809467 198844824 271108761 59382641 403193671 473322125 689987706 14554892 630805047 517707290 661698168 439072010 538593913 461363199 987463650 895187160 967174954 393019756 918923865 332455837 720058543 390294600 697074675 213590625 616780308 299007184 888424800 982202027 988684894 78679955 625189633 255113940 695148039 814855397 869203387 993829570 994525918 809877546 874716628 744637784 832950268 801499988 877621274 463400551 960071260 116093299 931130793 155065375 196123355 663063205 703726038 844780749 933706231 922428637 970867786 185828401 939135894 163172575 674993682 497641954 726513364 432082141 946779245 116597550 800799367 177699713 992768363 259337648 873427154 855111533 872097402 650895159 696885816 432965750 984482864 203031904 505908262 927244556 985247948 662923051 837593022 570525981 819233799 67566553 275223946 831659423 862033289 156486467 512983498 451583882 571109607 642302832 701207285 111037050 113149808 683878159 947683019 186891824 989354328 369858155 686421506 514074401 557808373 79584259 426172028 882375508 972694496 210671843 257840774 408239511 508968826 133715480 965190839 272018100 953926855 643992760 791260990 130632571 881002269 544760688 956921715 626373650 777033968 820501992 866251527 80662334 529162071 271223291 951584165 133584252 358980162 896210127 937476465 48056672 225109454 495018783 576601507 476286286 662540533 679693080 798879492 749902382 816853062 227767172 313919604 559879070 925141434 970131094 971345183 246201363 736117952 618573363 975265570 46855404 584718488 352403661 443166446 963426563 977007739 776671471 935872842 438054835 666782423 943978349 944068323 585943354 606500373 297345879 551527055 169123273 994534539 541796073 795527718 69515315 323058711 99229853 368377205 462960777 982092655 930434134 933930258 987678010 992821749 47764110 230189337 503694151 533201682 659082397 710332447 863197886 918316521 901573257 951406125 60687513 713083868 137871147 602632916 930396810 968377526 722946243 935845946 40272556 500585836 975586846 994149824 80394649 855263479 810981699 988038295 664250309 935579419 204382928 563343609 832056564 926987655 964885975 978037264 447193268 746734205 929753478 963446962 834406165 973796920 840041487 855325485 822654686 849204439 840412595 890939806 749635438 764602218 498426547 569776188 561247043 932511269 870966255 997324603 492250171 536505457 528965451 950940915 798374424 910024962 59658111 509885132 658002729 893188660 501830882 565832973 271536674 880134102 39057989 378650004 55393277 426980747 153072756 247747381 190895747 805730917 481399046 612475313 125907676 901410607 944704231 958064681 79611663 979273154 770780623 902646370 35129615 304050110 694358329 862078256 612288485 821289518 754862390 994838709 917120835 959791433 876595519 956468532 419491911 665150536 864516421 999315515 671640809 856546839 739009889 837715953 940308102 996186967 490480200 650302962 886207038 897336763 723712341 865272703 10135774 175831062 928424582 949897331 338634169 798869531 253174578 318908348 151399276 413950092 261018856 422707543 962073280 994615675 343574897 430181571 728505472 847077827 832060003 838862692 9410678 137202798 248524399 857645063 171774391 915060493 551605496 860621551 749884404 790555648 635839490 908558791 450159333 929192561 468076091 909750675 90203390 668659888 553997606 713098261 695576011 854336197 990805889 999356895 334651941 754317105 452954904 719297965 713853705 846977883 80714579 919451730 350150292 731683186 932850616 951505013 746517089 896693770 82755617 953449094 594306304 711882020 958509186 985771701 383986241 922509143 16863233 46932618 357057729 802774874 182519632 588656323 634059338 908241537 517133925 958921239 698418997 808122197 519334253 715941078 884429717 949885279 250248675 681956606 616369849 801921518 967907742 987171436 285282283 902577167 478959471 555955210 355658962 537215950 754660142 755672542 328956314 889060651 858682915 898517744 304649848 798669600 148163798 355202177 603534602 773900960 581899205 793095472 534100113 777123433 224306894 373049016 476729780 928022199 228260868 488659183 138951390 554600099 660386911 926765706 922631441 935080610 739264296 840712575 232207224 452629653 256190995 407818635 74449757 623817990 910785883 987255743 639122414 959484085 411312468 753561885 284693677 409771820 942355727 970135231 710557195 893110179 27006718 812848936 510388015 865309183 44057985 544729723 775192738 826893377 648344441 957098581 421893851 845366410 851560702 903316608 942845521 948573618 700390813 956956542 283727170 829205124 564141946 800393652 928535286 938448975 622844862 856660284 581334396 852272871 703218702 834852152 903300665 987652047 171228519 731694640 979402279 982409482 322271327 515741456 979136179 984451063 62088212 160695322 593106182 668133400 573092722 713177357 60960880 749722573 350325939 705708375 354636239 924210678 613428373 699402277 48576382 715098157 869562789 876496550 448770970 565508017 741107205 918841045 325550872 545871354 816930462 876481058 690601338 781386024 164253949 624238541 447254353 542237293 587215403 995439903 664111861 666439038 334337299 899686245 807946912 992864478 575070000 598743592 710026990 768859276 888761527 901171297 997640017 998978859 62194765 106875472 436059286 689477439 791450809 888295197 475912251 524225058 814977308 879758604 700543376 859618386 762685148 842008540 697776543 902551372 560560708 674515930 375034511 856044115 224980201 367722795 203949054 617329956 132690994 287344596 501645982 757171932 35371879 285447291 943669218 975005756 117342826 220084476 220505958 435463508 909630228 938125290 114652464 901113473 442339853 827362308 502623869 606792685 642181899 916563188 353298455 385659715 949772591 965636522 35201643 850000543 113318017 571126065 265046832 558762077 534039446 926950221 663271545 946652160 760518068 907342575 294896177 492113083 348652591 458895418 933101902 934639614 535468231 881306794 427121911 772065129 325328298 807154324 30285556 613265827 750187114 817717238 189522570 849004612 400713726 649163018 599113174 814212692 855838679 947669340 325081486 885370677 501885230 611820056 872048421 998424661 822471438 921415297 27472595 485687808 785099061 972035707 336520929 836270488 589693178 741067697 589878444 976178673 2625800 399388884 88362418 326655302 713599104 733416919 628592968 798441310 772042175 863107987 752132149 805818470 306902201 582444939 839359017 928480207 832944779 843030110 675398228 763892929 31694362 741074388 658394763 871527983 336595233 952179024 19384042 80196644 162406068 880911455 64785434 950815536 232380995 465206566 484422133 903592286 892970214 938240770 747601094 943892687 959543722 986010732 218378241 857126205 800012537 835172590 176194154 503219739 621947474 960050940 681371927 948026468 849507972 927390768 933419550 960974827 517272547 565269133 876210521 882485263 466473778 733835789 192814714 646585121 181803579 743559674 917372205 941723640 498998457 890042255 257730137 863901930 609641483 962968504 268994334 323973999 543092213 826945345 258944720 810735548 773902581 860513207 497590105 925911365 300334124 408829863 713828678 982068989 768128107 791751562 561529420 832301374 351283458 996927496 55545833 914410041 837005228 871376405 163921763 707282961 778852333 791434826 907444623 999565946 710449993 839190254 627290253 949345898 331436902 440254481 519972781 710566498 785690157 820328448 888243708 945163481 130370234 956638700 596416872 809974309 418722504 470890199 389295419 776976448 474517361 742235540 816217769 983594097 712518823 802111772 953294803 962799786 818908514 895444751 312111967 326883391 22260133 846128470 957983432 981503165 480392282 518244948 545753179 755276607 383762988 975745060 429735602 948277250 649789477 955528832 559101633 922733100 726779582 735363809 20337214 762092986 989608222 998241066 503667294 675397219 940096601 944473374 86880588 517940520 122303183 847194077 974983706 986538180 286655657 630863319 606977462 957270612 260720706 688790808 742242123 876698232 92106800 615437561 351020598 455343394 219035977 605664721 396534376 736481544 130457734 893542839 33166943 284774025 657966614 779031523 741674361 969177749 786315025 830064689 895068071 966017636 919047296 969901080 964839196 975270929 867812124 921464738 630064035 695251128 893577057 928152844 682880198 768417832 423352667 776271042 159618421 658351296 771448820 857175306 865423523 888433616 471425078 515460389 321534612 758053328 986351377 987018790 818431436 856204174 544700546 574927652 149488555 205826913 960543271 998252627 157475633 257665230 174996046 779241452 107062775 820374337 369477290 741668469 508003154 652454021 657908834 892119542 26122983 191964010 240785222 399480343 403017110 907547239 637493332 856118357 476676694 924650098 284899388 810373738 620862182 782690215 136997284 900670120 207920878 926019651 746616998 785664765 617960601 797600435 153055695 229045854 352941650 800032255 126250245 386154159 786413593 870901013 153117276 829747977 829137527 900250499 637561767 999968009 737499116 874076860 144865068 757118940 849931222 862895948 467835860 732058297 457683448 569763921 285300396 533241045 813385541 884036673 286736102 709954546 845333720 897726023 762944427 847987097 128276774 795771484 275513553 821532259 500157731 639484048 797667357 843789215 537949146 610359944 519677186 520499240 408156751 810708571 501420624 621907834 650673608 659857845 451269082 512528350 618604479 989208812 142574492 507716387 407209964 481405880 158429974 570580594 844640104 849388214 78649107 572987783 837748062 900324898 376317881 777342265 513660671 662533010 510799988 775526592 189974908 289834220 155641722 304053476 414793937 609818385 439096095 653776970 862371749 950547707 494470777 775353253 523200910 930158440 779537552 985454055 438506173 682130253 825519834 920027389 414561427 525019242 734636119 999664874 101458087 710415187 800603529 830520333 114267354 814458238 704985196 773935855 620940894 929579013 984703483 992656238 763795399 980681237 192848858 989569199 938165570 996432813 844751291 856825067 928136801 997269789 419024892 723082395 856042463 988991398 506164722 566717389 707767888 920268723 466585623 625233039 357304326 493510080 758011800 918854579 637013969 985047525 200542266 233217086 188232094 954428065 689712459 739320826 414523435 783191153 640777947 818725387 250611007 281893274 581223168 794181387 227261999 676551884 786159221 925745069 607821983 720014331 127878008 346005838 589500997 715780459 952516412 994600944 851517622 857699907 326798092 943208864 744227695 941208595 551773257 658522864 871940451 980741385 393341900 706336666 474675972 608289471 877703616 987423313 86352856 794461498 475526837 999932115 360075820 934872699 82500101 839243638 726709533 984003095 629395022 764980806 30546727 61741168 950478468 995684898 151769081 461846981 113076585 657041543 975154993 990354412 861969714 966282852 762737474 998348417 107803010 342622425 181843119 752327295 365789103 411612907 264538902 313670466 368931723 605330184 210426735 881444579 866430419 950759367 100484668 290336210 122756272 248590364 506395137 967507219 665636347 782467491 123335047 847257921 181356586 702304014 374834388 625376985 859897959 927929037 287198708 483175778 990757687 993130230 769620790 929315678 428377783 864167081 20103272 176030085 940784188 979382728 793776596 801582468 523502086 649017735 214045534 267207533 258026385 470306729 727178176 810577587 698873739 939390972 220684488 798243250 616220185 790821939 906042919 915625275 861982076 880633876 900166910 924025891 988889820 995509899 402353186 471624510 761772642 773539914 61504495 309892231 326597976 326945133 539849846 595308313 26600634 775966648 726056053 777283876 720435228 804832731 399544239 675851319 930648470 935736383 996902587 997490190 845188582 951689940 13726102 36146799 532942894 837915625 992101185 992831179 125790893 585275652 268329282 948787957 51567419 319963124 978909427 996527192 214984212 506684545 622621094 827717351 540788029 864256561 135434255 169572057 585128553 651681728 857997333 981647854 142428784 451476056 250172994 791980839 647841280 947410577 21614472 938076453 82929704 326396799 138975113 636670383 328430985 531552185 411324724 887826230 769364493 835966995 128370082 678061709 998546198 998656806 234305838 741596166 395890062 586386325 715019970 916580772 757569014 793625218 248426552 591413048 240076602 727730728 255284669 351452197 836316648 896601235 412195282 982079953 183104906 755184263 732874977 760868230 810495504 838793159 924164279 947589270 698151444 825252434 209008521 761313551 496291143 652304038 181866701 410477761 387363465 793315441 716726868 831669886 388219022 409559722 573191489 597333525 743905576 842746733 897020786 965769246 311617775 550199344 870469756 909785231 217379323 276889524 820212186 918824421 900466240 964023756 423226060 611554448 110555689 463688050 917198741 966215432 448899665 449637045 518229814 649814666 262730001 521967877 765355955 975708975 361053887 378795413 331262038 906111710 845901592 901050865 504902083 788042953 410509254 664032123 761325582 991120409 574821853 723037776 392566620 929246542 755351074 909631096 442979984 648962390 657745563 927558145 169672718 978522073 921306328 996443433 275880869 317474877 395549098 996997273 288004326 781180473 398449624 676491475 770215755 855695257 809962448 883421935 338295354 705077553 131030079 956983346 976977140 990414171 782257476 886448135 262813762 421742415 952040140 984993741 212045326 996753007 487287746 712610319 781709317 819447859 253550916 272121969 43975964 715499695 335710381 347142265 69943602 963217976 587910128 624858366 223860791 525287297 451265275 684358043 136349583 740866552 858109338 976728040 419327478 568445847 42786173 618470482 740755584 960047255 100695700 506670268 809174475 864389882 965075667 997455819 439351711 845694488 164630550 217160555 637176237 884001440 896420443 938040112 209116099 268846286 963641075 979499445 477264051 872220013 609012970 696499535 674271818 961854442 393619754 754298300 965433225 974482674 633949606 640771974 991361145 995927637 852064936 875732328 677505529 775319109 133282956 815037030 545355283 976749206 27221286 186287296 183427395 434994825 894319621 964888103 647370820 734233259 458751660 615126760 712817119 867864902 537926608 937746854 53556829 988968725 471658342 721834395 906274795 948544289 723990587 904266866 214224977 676655936 862396371 983617418 191200851 419919205 152277596 661533194 952578313 972563323 632962680 687992683 505419652 867854291 751807221 908222014 603401753 617539850 497553937 512279814 311069893 670601935 55870652 914244176 893529675 942135703 513700400 604020977 453274938 707237119 189594862 615911750 7450072 537636237 328280917 748998990 214598990 917902882 697709039 960242579 572054327 990957752 403155362 877758313 732701389 785780007 237220425 859195750 430475002 588815526 482079414 988816979 634360646 688626970 851742506 863069169 96640374 156207656 988843570 996194441 826227551 871439706 554581946 721308973 596927618 976912826 950005652 953355861 499481880 815727798 730721447 900146134 141980271 714915720 103386656 558502497 583644451 621039665 626557458 877470973 4934479 510122350 153406693 639520293 529968907 800236727 609641652 907092416 16503351 423791677 442607030 607714240 389379071 720914134 668155543 715141014 870349057 888883262 920911168 924961062 504282155 620085945 615930227 783574044 985804746 996460816 223397526 451502169 221268487 887641353 314020918 784821675 809354859 954066696 862981097 973358836 962605135 964901983 235872360 528377206 505667584 859788918 329382398 756417937 137429347 521777025 270462004 997471743 610231268 767482916 899475768 949668096 451446949 787074450 570460315 670195952 444354163 489463566 338611017 469503932 954812286 993334576 626925771 704486918 856531717 916248004 207207925 913004565 257180195 890333670 450576976 727648572 67017118 403891424 382078930 590120629 863325061 984828837 385051323 582989095 163761503 694161891 759682477 834078969 542470759 549696833 376476335 802682007 427473069 881572234 552734890 663510748 592442789 794782420 191249298 949520907 495278652 609842399 385461473 813288843 440425506 559199960 955290643 988685163 163462353 577589246 735159237 791025463 484353229 947383408 78174139 488664888 872509972 906184895 730433622 882336318 286875468 901126341 863657646 984457064 632210044 658628358 554404425 559280009 49851388 78871410 113020010 921938406 421019999 888617758 13295931 151205620 303722986 837690375 578096986 976030083 323027689 365535074 230944468 360670921 821258983 962274988 307591515 482806955 447388840 521758448 685267307 752918658 741470810 762677053 298572789 399746314 693944316 768042974 470170069 965080785 728533635 767979182 356087148 575267482 67154359 868786074 659435080 725073462 575801144 823164824 617707616 965406386 221389773 287146120 496208304 838161862 58219940 528488646 621103988 689115363 9136922 891481783 443066065 908491653 425973251 712586928 499840599 731298030 234399445 338007108 72134877 408084021 796629645 917729332 941686526 956128652 539154906 722983013 597953354 982771335 199833075 972530337 386043915 607053011 849549463 957077117 438905395 759105603 131066910 559101780 994041576 994847183 496759350 812969766 103508465 518279599 78300592 995163292 858237493 911108660 377887752 669251866 760381190 994984490 308307687 818573168 86628249 772155019 442858814 928256791 345421595 551431849 71868481 755144773 330874123 860722260 218212407 496684576 625202527 921947111 608611081 907206439 905748983 983186641 316813129 495096999 119856633 889295122 257901173 373274010 406659967 899062382 891417932 959924321 877301393 882957623 5770464 251807906 240689405 427574307 127608061 152532226 682129062 811630792 372455207 539821679 918470833 932247684 355039996 491495402 922884332 973045724 808750061 835476431 996649231 999036878 878090835 908613476 692312179 693857511 867331584 972053184 156028362 625011621 879509179 923419954 901569323 950957945 93881675 264643788 195336837 470018343 443156754 518391440 307339854 573368420 745392372 799858856 521640583 704403823 332573388 720575930 951437194 969924769 523484734 694716477 731961566 759239087 109500834 305478411 915979935 946931960 756549804 909245687 169757945 767440071 826424547 928989102 289056848 831769202 345091328 709388389 914115827 993582017 445189688 707550649 164048115 387637296 614120243 752136179 996851740 998190838 417067895 552764259 360842360 938928164 331991742 955962786 961056647 982428127 799734620 893927400 753141463 969066260 599487684 960760226 6679329 384351960 703386194 717084362 478393299 919470372 204402772 716007641 39876166 554522292 38066888 532672976 273403863 302874253 261112200 713233897 577574755 970851299 581490559 956628789 810286571 953588841 123307620 561274542 411679785 763622232 944836637 981172064 735127149 809351865 409153603 678034828 338244246 704639510 47288481 610651088 622671905 949991459 854752613 916545157 878585627 895528122 48437310 76647049 29664891 321982027 86140855 240838885 949018873 987995687 212118729 929273308 776459898 905187530 46559715 444738727 833518581 909828851 569856919 609277055 748600781 941892095 200759980 605461902 998564391 999794514 474805977 815281384 265305557 832360797 976984516 998448646 439050845 999338641 268658430 930810093 589472323 767085024 700416047 808016180 959025063 970926433 343259849 618691119 968435561 974574217 381787969 653426188 503333108 680979803 402819309 596651904 725201516 756029345 489066091 899357245 547281557 701762728 446280322 513649296 103461394 341075720 493488017 614809573 353872787 701384344 59014615 242122713 54220189 759736826 90172643 566521429 414103022 608267115 575804806 843878121 761826609 843123458 256976046 772616758 151569963 801001387 669928747 988651691 21115963 122898070 944865030 957905016 877129653 908763628 712610219 891212957 904713854 958021142 935003386 996510448 671615856 701144860 955705256 977746771 210722839 962272367 492152844 541497056 648762024 718672155 560301317 694606204 512726577 991941413 63990299 878744753 303155298 804698603 534462530 723716377 989664956 994125194 439510743 681854849 93325364 226649103 529693783 879638851 529762283 772363121 754148086 859850534 808489123 884128396 845200283 869024337 626926577 978767980 600302160 874630765 892392352 963426085 415852522 931612783 780877433 945209654 708493388 824481112 201330479 634451347 400144924 996356774 209027983 535569033 647070050 830235137 973844275 973893991 378602309 736784278 714118451 753008238 564473607 833963283 592963243 862793827 421800208 772676032 143965533 202648885 642350387 731644610 511442710 838598052 76050105 351719839 431529087 877680788 937143613 980344787 209828295 575727230 789429007 840040529 374447178 987800292 466713467 589887468 916929362 953272429 647941631 863839267 930068775 934582502 599930056 861470334 679576453 880226609 630082968 964175772 815631582 860300014 807529985 999443642 511663445 650496771 209503652 279503171 253717857 950557605 558500261 783865734 528270988 844409092 372124770 843033619 40421483 464063190 929198225 972648922 898780133 976899036 588693990 591835032 416752693 908412311 765254629 909477272 118789482 514605836 959447709 981220970 986472328 993587099 416872101 438194362 305910 667744323 411198246 576421889 88388037 941847755 150545334 867518383 31196071 334145567 966341718 988184653 338979637 518848709 850342630 984641100 951007447 972504398 594864747 852866923 922743944 970281770 970122874 971120574 184621257 593900494 880272290 984314144 652451967 709255300 988321271 999011745 673777625 707918906 225351714 582061082 160442906 779975761 137948112 190095481 888830604 982819149 86361006 320869800 93870810 143054360 684429243 914538828 961531984 999433468 869181920 874612402 576766722 656990790 412245196 868813820 737263955 757764040 131631063 369705898 720251869 813884168 660562085 896325286 838814936 967492260 999886625 999912080 135259923 283866580 790532298 867189446 975889934 999132351 302784308 724949711 523646749 920986707 795814017 922087629 193234448 371067736 539014106 676634623 111741995 277322412 773663334 877671627 874862382 888882879 242718969 791115086 609131155 692649693 858093481 960969578 897698905 915428501 178911648 376782350 810892049 937761662 363095110 404537296 732573229 824417103 541383354 704578665 714111531 731424199 568929345 680355126 251323550 440804498 257107038 671938303 308843911 311124421 64090594 762885407 772207912 847859861 623471450 808326698 530818140 917303094 984040534 994953830 735535276 825157810 89297108 706883308 308242649 938673103 501249544 780710893 808181232 921326573 692133222 778468678 197167069 963912018 246566221 733692532 260505151 840672461 966528067 967692105 72143095 261058051 687578010 979364398 775761740 836541224 778633909 881901214 627938867 957994919 466803096 749077426 191787463 362640963 32604483 990004762 601105385 947351832 250198641 810595211 967160670 981946452 491185225 907671166 889704098 931771051 475808581 756030922 866041375 881704207 778654642 803360258 509927735 513034942 791064533 809628731 381400154 758445292 960708941 975947725 334325142 624030685 862943092 998556889 800995077 964045993 539266888 595394742 541753891 604320199 500861285 827012690 44615521 483792250 590635752 675066542 428794620 693780793 546511944 926632875 867602859 895450789 119961814 238382794 462387205 542822659 460300697 968829157 296704127 538056605 285229666 390461022 401899065 796672059 681758792 745711677 713803732 996087542 790974416 944514879 955734708 978634805 446230124 754962413 532186509 672450491 737966774 751486706 140968825 373486024 476252749 758587694 602950294 958315127 508022763 662755868 841534614 939329860 578381674 813016372 248978240 931453494 48779963 859015337 675960376 921605353 432303011 899171011 840234253 953732916 693860539 716153108 190238431 406681252 749927296 994887835 990691671 993442536 247263078 899562466 385475283 723464380 228534822 882363337 149194336 971578320 408364773 712912584 96522304 404475640 912938479 995995953 80087705 343227755 789718112 819455718 110049393 783911765 713698420 843509682 446123987 861137301 972707788 977269926 573122726 908822642 614443366 727367960 235385256 675644251 473282651 602065489 904515145 914095844 818944111 920365653 589475791 985688897 390570340 423480880 839973794 840904811 637929696 791627045 884743484 903464090 401776983 918528845 514798194 876527916 484736785 978641992 128168099 975225257 383806453 401357763 436327235 477770605 380144292 795733770 279625556 936627574 886349525 939205569 879703002 959396068 887876244 969091736 548541158 919892203 688852533 796323472 67697758 309287314 738301 63299422 454251590 700722679 905221363 967344113 76783486 733462532 164281073 699314806 472049767 959788836 964690281 971302086 265205851 969058078 616045661 751104707 226227557 459986481 563560894 942095952 792896537 884091280 783811565 862576155 461341342 951645252 691348054 844969182 472732108 905509672 717307547 966651931 947569629 975470617 435850054 668439787 383996730 997722224 871169228 969859901 192182449 297722588 322615413 751994062 587872684 746990818 400758119 684089788 601736867 831708311 829425862 906244735 675248013 752888571 487491755 828696422 385614489 424481449 295104650 650576678 811268196 814660928 177168855 237202878 257634886 682728993 584626504 810564876 373899441 377733631 234277095 502587927 418344550 745774467 344782812 777186654 708210204 815616281 281792854 823111145 997275413 999423229 693711638 989718950 654613615 874070200 5523851 883027468 59021283 458517875 726744359 905604297 83286893 838553434 997869285 998620262 416171664 883000907 594323173 666479985 452177833 869599197 207807325 332198468 918204844 936019181 85029611 405881241 455330568 504378770 245353048 679451895 295127615 648709483 41652803 962118456 179917639 533932051 766331769 899883856 994514808 997427589 634312932 848119118 446292170 629929036 466201209 533171118 970841158 983765040 120006541 692228831 353703496 546478458 707698117 896396140 821471073 950427235 308097477 748067979 459610559 796873969 799105188 912576571 793154156 916736534 403526176 973832618 409854000 894061810 711901711 913583427 40841398 610086591 484746152 622544954 847748236 874929749 327892729 478759432 729956052 780508112 256216968 833250334 199930480 560461424 707032362 951839125 813568860 935328201 914972986 938480804 646852616 936762784 401084477 977897704 187861241 212158199 591480030 841255267 320544239 592971904 190340072 812550001 976151703 997342840 113178448 462555207 802935861 827373206 631493059 711998902 737378028 899671282 123741570 666668514 686760085 725588750 686915241 803304301 327101744 945666854 154615048 667667260 387853430 431733814 608128773 818883453 939092280 981656754 986265335 987653286 177445148 669432160 196365975 375958905 83959102 260546193 413420199 516489971 572938330 624109750 294999147 669105339 771402689 869514196 317786821 923906727 686977329 952807616 548611373 735558519 457971689 809495960 22175395 622039907 305014686 837969180 176047874 520372165 797463858 878384652 581977819 710489456 911548088 971453893 260871811 437313279 526995183 637890207 642304985 733746452 634155785 867786093 509883484 921076103 720939960 740782277 717980333 912733930 238972267 647409456 57356653 289299875 331821679 751436892 827514956 852635213 667903045 985948415 523731616 912923258 645639104 774247676 706175812 949792578 909377716 948328425 969978763 972943106 524808932 568172112 711095117 814586647 946258882 980921960 915712047 990873222 252866095 765686143 156443520 490474015 915664557 977532568 14784272 661470614 13006262 574848828 866206712 935617944 567438736 850357320 881015012 903360230 82487381 148794358 558302030 971808073 19951240 405056017 82302639 499730620 775543572 950290927 730882182 807844961 712042241 860172179 177614163 942802531 143216165 930285867 816840235 904979931 202783759 853851586 706799273 937406198 522254348 977692154 577161960 593148500 223127248 648269292 972315940 995827727 864635831 980003362 896868606 997772716 296720645 530682812 924624100 934134492 539336896 797057615 922389750 977516738 111292031 979656923 95911213 826237335 651023326 819273975 900205361 908192516 190275348 867686314 575955442 817342349 714397160 844579393 666797759 848591415 235060948 383906946 321480445 467223468 923461591 978471573 562793545 594034145 753581460 892295615 104094363 174143752 317905596 484753160 260806702 518022171 433769106 814292914 219657935 879557474 203265721 612369496 661182663 802483823 765980993 916587334 6606930 153556948 293745464 973508601 595192473 636277601 52502268 729009348 561208256 940737001 72676296 774295169 151593332 326007192 961753334 963899732 597391678 874044960 848887566 897305634 852939988 949373135 105318630 199843575 849032989 963904178 263686325 828974563 512902904 954997737 885768731 924341930 333484211 934253173 116938223 141895955 112541359 971765306 77854448 588792994 334000845 604018968 263005797 657899934 772228221 922560675 830122307 986430174 766563945 933198943 53749293 533509081 397621496 646258158 844851459 979207625 792065566 880903337 379746832 678417048 324459045 720657087 310252331 480960839 904482005 936713776 27351122 590724579 265116445 504468430 733149321 868393756 377511699 568927890 202906065 356237532 477570559 523671855 573552729 937014277 696038920 795603176 960796991 988592647 335938175 561464217 947995081 982731529 538341629 589857261 951655064 967045418 716069811 917515154 939793852 990168248 418861999 901275062 923661348 933818207 120821560 834497088 633322754 905779663 189075797 725053339 465067913 833488534 754812798 833867905 738979810 887253964 893473605 999282808 279038148 877369486 835633489 875300574 468112260 960484569 469907440 521794141 78773849 638096032 978132642 994041870 677085840 801272489 512690427 978003567 15520294 235996703 519512223 983956147 311022609 972187601 393944533 678121350 746805270 831797713 369485877 604610956 142967455 844744405 271661366 535253864 545842112 859742267 537395714 600703686 364700214 617471981 54774833 838208219 969111656 974527148 396544353 572297287 516142652 796441050 534591855 940468473 224702882 366218773 766922467 802783781 473724911 745076099 156546409 812061474 157729016 387111198 951736410 995697235 153315358 231897976 581232130 590869149 440149051 559470053 555057949 909256807 76251474 799593338 726644451 911170461 67747194 160313964 110300195 297394547 216355376 383191479 269502756 904026434 582102499 703177196 747539282 997299946 542475167 647664835 288280637 863100438 570869569 814481032 584889963 957992331 943887300 985774317 576228441 967558743 300629991 674144889 144403581 995731499 434718494 938633273 685660176 910184739 76929959 323132629 315661879 450339670 346220854 366878705 136143983 203400916 672705611 959067999 721015050 756469961 696847124 793300456 863994946 976865159 984348011 987980617 859906910 917486583 946357141 946506198 873753081 985728283 682643302 705829075 485102279 932275393 18077855 347638808 18878572 315203059 40331312 314069255 167654089 516164785 763310519 902397659 470705812 571209921 457360732 969697748 303416297 342172683 50745868 575363833 200265879 747956577 217985447 703431318 252203685 589849770 736706025 947096318 799693148 954911260 806024080 989853144 826611751 832106308 405505147 515280169 58498706 227025068 546214908 960503254 250236105 391499562 772410350 878222464 198404056 608267210 62642687 283137227 677078890 889480940 578690862 708833500 543667839 683031383 181133570 606851656 376350854 576921232 301779924 678494324 984334431 995797460 377671990 530626875 818394674 937106989 55740148 836575126 799442166 952148181 815965317 949115757 295511490 720548557 211826433 437176460 182954737 215353845 159440950 520312337 890157076 899673709 885384262 993212681 395330985 971161705 620021876 636701613 209739266 472537320 696458970 792302787 14758540 866967663 32452693 238478280 316269661 807645939 903702419 970799193 806812850 948509576 645578807 753230164 565816506 964458257 952559162 963413424 914043167 917439875 555288777 695236904 590611865 773281686 252645247 978317060 515140093 799852771 93611373 314266756 485191622 552508090 781413013 955458217 500683606 898986050 141780822 439000277 905278756 954021052 300256273 615392840 233895090 522451900 342198517 915001759 895844241 995081305 89677099 335189451 381301862 748149455 973309555 978860888 24446607 43085595 622160057 809768632 53345012 540367228 810455335 829671858 200095943 489689567 84674152 811899111 952662524 970615306 151283283 993924809 576660451 637665185 970663369 981606728 403471266 483257190 516538264 793712200 112520712 347511819 820591127 879740852 417718513 924845519 715867895 960009508 146374452 919428335 669745864 679148814 986048469 986643246 677790484 685878731 687338660 859172645 942693156 945475140 232681117 714391641 577379661 880199685 114871082 579080611 875272469 918505751 595561132 946927997 403308522 756506335 829623194 881617695 124680716 211182485 817894030 925399758 997218103 999142818 693377035 758076799 479820151 835075831 234010922 293426279 203236443 541778781 452329460 505087792 613081092 782619895 969541241 973064852 976728631 994985017 3923337 461218864 295091177 722910939 26697534 612418254 292079506 626184366 371850331 411045282 142232397 675856646 866553839 907378661 552873499 972367597 377005200 472613022 303746277 665062963 451656274 553391991 348314642 470200823 676178975 844709094 824975336 944187462 236317734 701105964 681288432 807998935 875397686 985261132 22310959 302142143 931194971 988565374 146326579 264513376 852306942 891920378 95646724 445173703 349801474 963193384 466113587 616690683 571139541 601827785 511194771 642957580 820420592 822877647 411950203 422458358 924481894 984296883 637819842 984607488 377008200 898824436 215261478 908498175 769218216 811336811 163740460 525982160 19633263 600468580 912332413 999457829 970113089 987688004 521249100 997977945 603996353 623884228 789913036 859632066 323470221 719636718 767917702 860416913 943648571 961894628 560776276 751507484 79223618 802399708 424394506 568506088 42591910 496783096 303329141 766969131 882316594 920042692 738223124 817912835 425814841 535577652 144501503 504349359 383428384 715412137 514747889 570806855 744990675 850375209 918915324 968862545 335745790 941230124 867262425 930340918 703166134 707734809 891900173 931438563 353901632 981279943 264933677 857866941 1000601 557581480 326769717 647265499 343853718 371531851 258995544 492016906 630906295 821184019 539756496 816435413 235233493 295102788 615751247 788122575 829354722 983103865 535294090 857300794 632417423 642392229 458620141 461949163 703627557 853576404 256736686 637928637 262353950 968297920 765330046 981219012 768875309 993700972 643785832 763317088 82499705 479750639 216883396 637890183 59471818 276482664 202826603 874755727 777519086 922773617 674148183 900299668 712423928 786503696 887215651 982119229 715904534 751770946 474840845 785726038 350511060 976780039 299936696 310088790 961864210 997062903 915966147 917865206 955572687 955804539 195898775 519727299 237262758 551663274 166104888 331019669 42854127 456834887 370151589 758623375 516166767 818323420 776546739 791382853 96167287 724046496 212629392 729320833 333747587 540231963 242775706 880185654 265053991 854754954 894402954 991166696 90131953 471689874 814687452 870247686 826675715 894090407 47968112 100851575 852881373 939787760 404624496 724719349 343445488 597296270 500238048 581826838 957679261 981912089 411356069 995709503 673255334 883020851 519486157 648858611 309892969 464565308 313844805 729890251 64710198 589736807 645486527 803306642 671940797 932744807 987732852 993490520 682481502 995619275 382606979 758678539 559587155 714285476 747167579 938228672 94151550 594970087 160317312 795721156 782845960 851814210 682680001 895463998 336219361 701944524 901938786 911317110 302691143 893083789 621637782 717748732 303135752 733187127 60228819 819210959 769014831 981913527 120550344 968634080 629635532 869096099 261006944 848953648 326435936 330396814 558911438 948332630 399900633 831051538 456612076 620176698 414900512 632649610 881868032 921438256 367037667 522590229 590501143 601566874 603949475 986743398 359521145 750674998 676287083 979148028 669624666 884245173 554851442 632466466 771040381 967651290 131652307 652933891 221578179 995369260 18173408 429154438 554856632 719076051 550813936 574179069 948642077 982202649 30156855 211867048 521038765 739043512 293198989 843666357 915456377 926447529 558132811 792298517 805987818 932391404 224882889 582241149 421825190 506872476 578106253 704343934 422828041 935620942 168489976 598436731 810251379 931503389 149258484 259882847 530608591 703266370 562801304 715407685 61557890 610005668 865653303 979930226 191522331 290779558 905802699 989425625 823463394 995768870 817977835 899306482 592460599 722104098 782269533 934395020 918975804 941480049 451882233 997078067 879538953 947532757 308918807 569533010 373903921 617469348 92991588 770692276 150994617 165873878 163980155 896494014 745126577 987258945 67133043 460091084 605106137 848787663 206634469 963431166 341038706 762510086 583472120 602204681 701022487 728194967 443326172 938629735 970821998 973942959 758497890 949768056 616806009 693867455 204663281 489759914 219305380 349308323 879953825 899253677 575667297 893929597 104189287 432187442 438670976 835699324 419753243 492715829 264372492 411123980 178475973 374730503 611728702 940770800 993752252 995276583 479205498 837742697 42146909 341709841 559390411 893610163 263042547 896106449 421349195 637968650 48525270 138866890 716948277 832389257 47682017 399620535 597336660 782244580 611915437 746415242 988705084 998511238 308726874 552981010 486122412 801094034 794328165 871975721 354464861 767560068 481539882 890455010 959173546 977460667 1536722 544465692 839628193 846157898 74402064 226125998 563458912 683388379 749228152 859604542 213260224 760310315 752394341 959873110 352120369 428061528 989221393 998740920 315708872 481068707 375089404 755657822 994916260 999691828 734847731 834932108 793412689 863722977 851740272 865187359 39865228 411739697 947019878 974107747 279736062 691591014 619619754 803015469 356401347 616921345 903778681 949777861 838597585 996329247 834256763 997924981 224157151 358275804 387338046 930476316 594100632 988198069 121661654 653998908 85903484 643071683 999170053 999561064 157134719 837444778 302170198 777537633 754582330 870914548 881564092 899173872 188772421 760727098 398623618 762028101 939570181 989753949 558596933 611055919 10152024 390629054 407891008 863022018 892037342 901871969 432611716 976597069 745284866 987172824 822623488 961589143 541977148 578859176 763949753 995270870 933703824 954275287 163776565 668739336 540043718 805075451 355966033 753711178 685162006 800869797 375394880 415356150 5747930 562213060 459065684 842896873 332207214 773448556 982558579 992072330 753844320 980720526 475733059 498147242 978605302 993064094 45999952 198607797 852574495 899476273 284376471 932684915 883784093 936464104 75434823 189317510 843031208 848060827 518744304 915390209 969366764 993406927 380189472 693279454 673044724 776895929 952105928 961335018 487319175 686627135 768678267 936114845 985842340 990568874 717918824 954544577 985487862 993280780 422604059 702031342 599375596 687990437 43190691 759487420 569397037 938775938 180092078 786574263 937031394 969990158 959179132 997176503 86069797 162736482 446300820 864542309 720131350 931818265 306730764 766281885 576882156 801380029 480040166 735246529 771133950 844535910 644791363 716547890 209756631 630542695 861711194 871524282 796668644 806720178 50384967 463007881 117589673 473306066 745752683 774128672 895211749 982240344 877337995 911517119 429542326 600777488 172204121 283082587 268588854 903933271 491866223 824880954 653979211 880733177 192172327 716815191 52380970 551220168 813351395 984691197 829418033 911168933 158962010 668914197 546290020 730971862 358652858 877379291 466851877 967852490 956847293 957805276 713653038 776075095 320653146 967287627 401098459 992894362 513558038 546063755 429780230 673704070 577526367 908454483 616500704 646044129 64301717 641327428 680246602 782916738 64578155 193741775 855981583 965701883 157646820 530510964 968083166 982274416 432179634 572162655 462338850 791428281 628006435 997715350 935490720 984835779 800160891 993173453 980035905 984931323 389560183 467503283 179786684 563856218 632665642 998954756 969528684 977212762 5894743 799840820 931951040 933290729 652551224 685890591 236280997 770778377 437081073 815825419 499137934 676592016 848778392 995756510 540280009 957219348 414182372 772144134 813966042 817873936 705353932 754903048 153517173 350089271 568768274 731826494 161824436 254830957 103211375 243980665 113301958 881932111 51899606 834627900 937568001 967265546 617300845 874421166 195689605 536050962 9663684 781206978 46540830 791288726 524757040 617786256 271920474 940524876 609294045 886645347 739408690 789084430 525074240 811420978 648145501 963158233 338838430 841643443 369410260 795247257 630983201 818959828 116779117 456592008 463107257 886294876 116861242 539562488 323491861 772129401 694161983 873346873 173774405 367155942 210821707 425344117 942136725 960941938 161482094 290461196 666437166 962689596 221496635 499835233 845474404 853745102 977479566 991435190 979335523 993092611 865392993 884286726 847689473 896755057 923957369 934397767 927710598 939527981 446839590 585930096 218794101 357181608 848893646 987042041 841883300 996880934 209470347 849804392 216756326 291483731 919196895 936097281 249314354 251572954 713747359 747594488 490768691 777543520 243616427 968168598 425615 621207883 229427346 694471548 62411240 186042888 168325624 710820977 691528602 747182540 766291494 779203034 339095979 926627430 205429083 437435885 8828228 221514878 848933502 943813968 324993319 688075537 532133137 585144419 675502625 867226024 822076289 977569315 858003826 914345444 879345288 940679136 750650926 869632329 399940849 410817863 240079796 331102830 727680872 757979053 988900256 993839949 514202905 854474688 90980539 344801494 599342061 810789932 928022234 971430117 578534281 976864436 85011759 425027781 406323377 463198877 784037975 944418512 108639821 279199824 702086933 978075644 133131269 195263172 450941521 762280650 696866300 816017471 325937971 770758844 586432703 618689499 189757958 510749463 920451004 939322603 263407224 384255495 134875629 955716672 589296335 817565492 679597606 838694102 391604847 604336165 9314704 69126731 942270634 952207985 342216663 541015928 830825336 996988032 468350080 683928866 971745843 977250052 537827159 669832446 496853409 628277519 905485881 935966664 852965305 971627486 804140982 920968890 385397751 699517620 43210509 95878888 680475163 822807760 411545539 511604230 493430374 573578705 456169233 543499192 395791638 682485951 340106143 724896706 82525823 974555935 64182268 695941071 970304112 998976877 719121958 836767495 361998026 789421018 557200323 896211386 563379450 770161839 200833308 826569572 379265719 732718293 46541253 689999571 550372331 658243446 655619116 680829359 595648590 660686112 344164183 403303570 206048543 486509177 44600694 597028602 486743458 723730992 685769609 968475785 673808079 681980657 695078926 722416726 194833865 880726900 201332677 459560125 518541224 861425047 698843697 792894986 20044066 949705939 253094387 635019832 194681392 374197479 109735524 434959260 62295073 482175815 59761954 457650938 303715537 654540396 130573133 131331327 59856374 247760217 428666324 810179715 122436806 566080605 691007151 910922517 765069730 875402385 960801433 974589317 438103979 469824315 181814102 289375677 264051546 293573214 569352568 871980993 412225424 951104418 700013970 743453407 842697661 932334583 709686710 871140899 52210954 278248539 117246983 683113559 657789327 813550538 375775433 584283403 907841724 958234594 851674614 924370900 639487302 730678932 462928480 523386637 760809035 785087706 63287669 617652830 101879464 916982855 428380665 735466785 919467508 940923357 94013804 481575874 857381716 893373660 443118381 685301761 695742900 815335537 537473736 805939130 504085913 894767243 158485496 212484194 708906160 791126079 204006035 968783898 941991261 946229230 362216292 920090796 882614132 919827177 695197743 709977130 428462401 550975519 619689368 910672263 989227301 992890454 89040950 697105637 407289750 715565656 668778125 817844925 545333412 664893819 6059517 436238111 709106232 741742487 834558967 981243310 851158924 962266118 659779999 925090638 461363997 809166265 553560700 774033605 822524750 876571051 626192858 893653755 234291639 664259212 477809149 718435195 484493727 665842411 561133655 721527819 545740498 647385185 158558857 597711302 535819638 761010306 316750700 451900974 189760576 439778380 908395909 916888620 624346528 676177676 437251785 826605924 270069610 493397388 554730338 827682322 728381569 864266900 341533058 817239785 536483549 789840411 773666365 987845497 738687669 918482775 714715811 754879817 980588562 984381750 336456232 798025168 180036369 739592379 228021807 686091927 266725067 345899988 293700953 554935895 689412306 784426526 976932848 989085548 209063705 213980077 521802316 756221720 50088142 542182782 577940951 632713004 697318149 867173998 747688528 994219222 298679695 462720488 505650215 767337290 848917370 980173122 564553962 823667842 594714486 942606616 184358281 943636104 549129397 988393025 721196086 882877980 41063483 574033426 194156582 359431168 420960209 704636369 872743530 893133564 530354626 795829451 560917049 626182674 271887260 776522011 42852664 389778885 330629847 518848783 682690111 947756201 885057049 903788429 837830080 920923559 338654851 780841674 616104592 726466094 362245601 612833465 108626436 358014757 569419167 972208801 267516401 547609414 939431292 994604936 457389076 828949628 579940388 752017187 49206390 845721845 350954508 886834649 444364123 636873213 331158775 405531487 930824232 981387226 589151782 674527893 321912870 766610309 830520400 981471383 869790418 965950896 903311570 966943675 995326455 996694188 840910430 841104500 578814783 873609939 215125096 451835614 259238796 439390766 138971113 971232889 485270695 865197663 641865965 921957616 502883228 777878701 176724022 693414043 941033856 991274810 868181404 942784876 226962445 930119283 419733814 862175860 40379005 630066872 263904552 735279453 194728463 766896778 592326279 835309483 341752833 661527567 459739729 930722959 80021114 840848201 971412392 978702535 527705180 947047058 427234713 445494468 322435631 699060859 451726801 578372075 407807538 964726979 321970386 592368883 655381743 821961312 889015836 929205972 977578401 993131609 402946589 459355645 513677167 945797827 788790361 976266052 766044495 922820051 193845826 541808915 268835841 621198216 478760605 548248094 780882945 845931201 567071503 960968990 912369339 994463792 535355441 898821167 146095807 264696359 804612686 992822989 573909621 723987640 123213524 541006911 331939847 493532812 20535871 243232666 228027575 356347465 527339661 953137716 210403543 780258318 840258140 854223582 613831683 670017746 356278471 556981238 270522624 555161439 58206484 904712566 947890987 963919940 432332757 721357551 546004361 834521339 921822638 976865512 912238023 963736131 652320375 753886100 305610405 837641254 862111918 862179262 164448072 858361720 83590427 244968152 578979867 980991868 771469520 874660579 163427536 692569641 657466829 759497339 762148005 891716589 395456837 880546882 688844192 921077337 956205095 956615214 509742417 673619728 573334084 647635125 216122586 830934105 870575608 972976867 760326572 792259616 390586635 720260872 19338396 868166599 709468403 989519699 127026932 679137426 270277447 453676711 629476304 646786574 383838356 764475057 104883336 169435353 141763391 900919445 842889262 965818037 634121851 980640742 24745720 524373438 594234602 741749251 222357803 914431466 751955678 917761793 132444955 536205108 808572685 918558079 546818090 850219619 275383458 792694964 172543679 468413611 442203507 942358818 671769190 728779455 765485743 778357006 11596253 789355017 104465876 557382701 223617524 412739812 2599837 432717909 504269201 798302122 609869942 847962674 406114048 578026768 654709839 789236289 435229380 508406499 590084866 943319931 901452864 940690810 24210971 141408910 404472154 488131093 804727485 853835047 58711665 109039792 259121575 509783726 381587066 533528902 614344242 837351174 6224868 518211978 301103664 575630867 443038012 573612462 813752351 935304946 832274270 977867946 455594771 517606099 21291783 623313981 756403089 970490306 109115456 710778313 854908439 966036406 718801476 747360532 376833820 599285888 832285732 953286502 734466099 803384149 586001566 748725156 321257861 394410307 163655375 999319134 50433762 956070341 765037859 950966387 269569693 357648633 959188219 976290785 749922108 779203102 420340644 786018909 78527400 94791924 556039004 791161142 947190689 983991419 177769625 895528398 751025620 911982627 233312820 661386839 777217741 904856309 587171885 902052147 882378630 958221859 892523127 896330145 527299650 726381605 338360834 696236234 602942438 742048578 197581240 527008942 626316667 704150038 841892165 911031597 736347766 802475610 408462743 489797926 885790897 921616270 956529387 994000495 301409073 880049998 62499654 446831735 486267466 586989709 528722910 530997554 375653882 698251869 504464335 693473484 232272360 940586204 233145509 621237236 53562569 589900318 797679692 830234358 685896574 955321282 631416270 657625214 562947273 769789923 885912636 888929182 78200959 432218095 512589588 599312682 773311974 957610809 903410499 933035698 561928085 741790653 789350742 892016348 371904791 902204651 933209135 987039321 896240745 996100369 822044090 848461756 578122395 785816298 289117933 946046987 197764921 497894150 314950410 422474063 617135694 825299523 499331038 671018216 676320611 757144279 185396049 686596445 865157216 873581741 795471171 867908419 427306666 660601432 104038239 903587030 399970717 619744363 309937641 673029267 737303734 817282415 961793166 964681531 950406989 979318913 963296035 970384926 300775176 518165417 980049236 997565409 88275992 770682619 529188772 740310811 502116404 897347570 914074017 925420514 817953019 940059863 730849148 972324268 117745986 708277668 49279600 442939135 23815102 120570056 416900235 643090583 818782918 870066270 1334115 51824708 895028548 967823577 396147772 769115072 204100373 872687689 337976000 772392635 844231284 922571992 616431225 917105546 260683183 336831312 895746878 927056283 835343754 874120759 677607967 998445495 170144470 179388149 42423357 567095986 397410958 630823575 293513269 974352008 528999152 895652661 338972050 722961701 545787869 978121131 986723862 999783251 454164814 882908441 378117642 824481735 861378380 907328456 12501730 871811583 726782439 841072151 555012593 887008231 868247981 951144889 555859390 614244752 62481621 227674488 809976474 964141519 676635898 947464856 850744427 945203125 770837626 859954182 560036500 902703808 245264650 913729295 490292135 852539447 420914361 723302866 209709189 912251232 609586742 958713159 33628716 763155137 911682511 922838448 736474372 941369367 873315008 903409344 7846556 370366718 993300739 993853471 920368133 961504599 716913310 841427767 381584693 707549561 229945454 926480054 731691924 977069898 208837194 384636407 558760350 721264382 203323664 737029255 332591496 723815639 856948300 945958714 839520675 889644641 695445054 838420605 111049950 329574693 783112030 798491920 244645825 396018040 779007967 933803936 881919552 903885947 389659475 501557704 679883400 793430490 463436864 728695493 657929223 671426394 508866334 836487798 301536117 625529546 528456973 928000782 965282080 970792762 381254167 938635459 56935957 726284504 883765027 934843794 260322661 418078181 164438943 222243384 767542127 942058657 888012281 950480475 867553401 976865916 324164406 657307529 676330478 935056577 603553961 934596962 934153070 941601276 331390993 754429418 287704166 705523920 42363222 382045983 849681025 869065929 913056281 918945097 781237473 830457546 516179986 641291384 376163103 957677812 467005752 926882125 562374275 878198370 32538699 59645060 519994467 839866830 237227275 613154838 851128795 994009774 1691449 122862523 988609578 999607372 266480309 334321066 890793568 913864861 85688647 275701160 784465459 837634405 794699169 922461228 130936803 655508426 743234250 912532942 632558306 764862266 258350021 519867725 155629408 755966397 435956750 783838394 209949087 583517095 990704345 998256381 820019606 830643796 16739598 107930498 883158704 950824012 204550571 538552627 486404962 809170273 153841697 289859327 971739751 991411331 920779146 973434222 65076091 251916612 467878303 891246796 798574259 895070166 484097457 933490099 680731742 820070080 275243744 322605897 127946119 834717225 975005768 989041752 801153618 842336236 760542647 838138121 915622142 955118233 766406473 856738192 44013915 803919105 204793167 832697030 660029468 773952706 215828034 633575420 158668231 518465439 914793278 995228889 550593761 874657961 60276880 198216276 616032758 939928743 392124157 659570841 41747369 619512738 477396772 607815541 773285968 930462266 247811991 486417024 799059542 919097438 713224984 770685233 580875753 636238671 101059931 622066441 2450296 752302792 268545096 465483578 299677544 338530932 360158024 994862375 734227891 756077277 290461991 939665295 469228347 830405585 247697944 289276168 939204354 999910918 79068556 516725207 400037878 909568149 378912403 907491585 119181021 451948304 643139020 667819770 254488821 902575442 997953160 999778361 475941380 600478459 565019963 863397454 292855777 490781795 172633227 978348468 351116838 363696773 738778904 951019327 777186156 838185676 735113546 955872073 658593738 747066126 667281026 847675673 494395845 844237826 781593215 949874323 133658833 850315323 592586211 994272109 602745766 923114292 879965053 968986074 56652880 820845001 541564569 956063322 332672426 507435077 84441753 395134779 79838976 946583557 184702043 602962022 281252029 438163512 875248952 901791964 644497218 922001085 433614141 988238090 741988206 795728594 348407894 681217483 751133273 917767262 997720612 998245010 116048525 460093983 338285836 846215161 268486743 794020775 710614527 944441332 352352892 376996625 171948150 524133715 485413194 667232517 786179678 883587676 756998364 872770642 486148105 718572542 713129918 885532511 650293952 719073403 766811260 818422140 822610841 909011207 480830976 507728928 886527426 970911265 714684698 767916679 842697790 888934486 460934066 706176152 760318547 800016876 640897731 925648213 674658282 729170748 932299257 986123478 486987922 837417190 906872750 983931827 432584731 559800643 884423068 904018891 608988845 912653179 64338085 467691547 816696084 862161594 324745635 678880143 148090884 560704047 908140415 952605669 310162269 430275180 993436085 998060494 390890365 392353384 367061296 549850352 176672217 766226513 357102832 370728909 928507409 974848943 269517859 383391727 649062582 883502716 820800760 950485342 717308774 844954921 399428495 925942726 819271401 990494615 271059565 465650591 378535077 439145820 196140469 416205966 587966434 643276347 140635725 393708907 374862002 971003052 595434325 750608760 85236280 142868142 445191239 455494060 287617809 964379693 537229474 999122356 764089526 969786782 542884909 729531378 550477883 743297151 501015998 610195341 84282026 428270790 78707362 535380417 913812747 973155350 858153712 930051332 857412403 994151454 907038506 964954525 354449594 936960012 983237023 998579018 160257001 691557620 62630471 203680410 899212128 970193439 992683556 998229463 529971334 546681409 925053162 993705057 432494294 885639100 294863612 479272567 150972833 488975000 284642184 806809301 66999803 281023428 630993939 809859469 451062808 460186468 524346883 581419588 458570344 697161705 346565257 346964292 153277271 533804899 243287981 671681646 541542053 835507013 600225289 760467331 412376623 440974157 496536822 694936570 835808923 998966543 260602114 517654441 455044000 472390894 753040080 912524336 165311205 287142575 932037099 941739448 688821634 980248159 245675075 621627590 454542014 616712482 968849296 992647627 915247154 952783010 760436963 820524664 226659658 394635382 827427916 984484719 431543712 772962382 116063460 341798880 73751430 311059649 433025286 841104292 184403671 610385952 428739363 893220328 734740788 779643850 256870675 641369191 983051277 992965918 852612717 926036634 857840285 936665478 572655694 908436552 118581380 830150292 597756382 692291267 133143359 268846662 786339717 789452508 232550325 248639393 469408207 509687477 805446819 904885583 151178903 542082497 398399558 569379356 718783786 919250444 692519723 715992229 554952436 726515575 677982525 716015363 31640310 128978584 800642198 894750750 512216048 780813335 53944692 73285736 991249968 998699469 743953629 903558017 602659226 728742157 903153145 975689462 9052220 147202054 416298510 438313811 356650616 971335000 672456588 715428659 238209368 854203617 614757581 853753475 415856150 418279414 533298048 785215552 100039286 202377956 157628477 432106115 853879500 993104962 588396814 627770661 876641075 957323188 507987923 516469265 637995548 712756458 948165081 958198023 35311417 580806224 553866821 864197175 72952031 261300205 775163132 998687037 878246463 904013988 760378877 855834589 325828044 614462003 170740732 702742189 725624283 899757176 749069331 839688375 918560658 978527421 777826636 854840048 547567201 950452331 63544071 589596969 551098330 657983831 32667830 904350833 417238640 867261435 813291852 974739659 160007728 347045209 795553937 837482301 934049837 955269994 60180289 318920126 216550997 771464740 336519420 629736361 786319287 853780271 888378486 913125626 589544053 688425379 386528426 715260046 966836943 993770085 157702100 404989606 729760630 851307564 579203233 656340127 334209814 979552466 996984737 998625385 402707298 872614933 35243647 741412806 982395640 987489536 583141103 949305330 324434902 460175378 854140055 863665461 643246709 882749253 548652977 757988247 321861551 516057098 530304045 858703766 409717224 490324169 863414771 936405315 63623989 249865413 992226638 999236170 500959670 889659789 708244307 752683913 10750897 379444053 848703672 980785361 379451980 975172479 26537490 46310858 284541171 492969982 422362962 862273152 385340612 536792654 634955697 720451217 705759619 941333835 680397139 867084068 237211574 607100141 317572468 938425614 285503751 304020119 320405587 831693950 1955548 704960705 463746109 764290475 772021934 926412677 384294297 487189394 294012091 897740769 793089775 819085295 292005711 683993281 723594207 935473170 922410873 927395304 117886167 758113327 868769852 874455632 903571179 966076949 674906317 747709845 743434108 930675419 921338216 934710062 346384881 917410167 128045004 342594642 825258780 948635390 426013207 682128312 367722959 558588540 419628043 790688039 43690737 478114145 797748489 837283941 721728290 951361971 515837953 628164637 73671037 593679499 8683704 660920616 308238461 949553646 340181461 593813961 257783814 727364052 623674358 649215931 850789911 921679036 625849548 757657383 593485517 728263025 816897121 989139573 839296376 856775802 993390554 997335473 839133450 945446833 150332199 784050956 970001031 977746041 316504053 664167338 939741510 979195711 69281281 945391743 200613087 870425342 476724714 622843343 895747710 944127675 225554531 287885195 941766586 988882021 858315197 940155789 591315196 986900477 442640057 708288076 236645703 931008959 121176811 395660204 927781796 949206254 311304654 659118433 807929756 863482974 981794666 996008603 321376091 491573810 891221368 908884356 19193849 181934440 457689696 557584489 285978645 530458911 730920773 992865973 43489733 713819324 381042620 439040155 335627577 436629592 476956557 741879563 946338846 980310504 130787659 381993709 128768161 550012925 651680035 818978657 829246696 887141650 672199474 884279198 73353438 447681702 496595923 753198248 954955578 970859020 71787369 733270289 279601231 434512287 389798678 891185003 292843845 471378040 940157108 943702471 644907074 703092324 833965071 993087961 673655519 988500690 899510349 970834345 336289901 446141788 292764373 884947074 263540617 816128362 202308517 987131985 51224521 578143537 182728275 398067108 341519378 407984008 491925568 515090943 502747024 552324078 446233863 908408521 468116098 578096089 910826236 926271653 184947742 327357046 760982301 771280251 167446902 911804348 954898572 962021142 893744279 912611079 985152687 996096321 452087748 545141549 152937761 438124033 995157097 995193812 394828846 527511710 182417746 820280927 31751090 131978553 42707851 951181828 219451673 415904068 353079168 458242532 194660728 946315623 930336931 968771412 580703679 798364947 151279052 938682330 379467716 657622472 562344186 742536676 343258680 757415884 446179993 837485392 951813400 972308639 687447088 734966281 308765090 680629536 721004980 771741041 64288695 287180986 121791195 878640632 615270601 718321784 599636862 825310989 709940266 836381313 75748203 77657435 651357667 896002640 421528120 668619875 748839117 827098532 199891304 207215948 847630514 974543385 350443726 664335872 132425636 838185952 32564623 250746831 84347442 773551736 428863489 476911234 756495501 934899559 117706966 154608283 747664202 850831782 679686800 872280612 543586447 944178101 725522145 732582421 741935916 952985634 570099290 822390713 68092362 206789759 887711864 916837985 978909490 987179420 655887990 939041738 521985988 793914554 292524012 972268743 716416857 826291521 533275334 840138998 333222082 572479567 34939477 543775539 44447070 221286705 474102745 513090842 621604932 792198434 139595642 222169512 89867665 164074461 975481171 976627074 707380797 959763051 535564354 796951698 590545190 963412350 646495327 664429811 28369232 277574425 568268594 678312082 402960662 817263759 891528573 965084435 234076038 319228065 641278046 860440187 910865954 950672830 421496239 432305042 978345870 988634178 478635356 867334834 237879410 632485129 990126600 998837491 268913213 891519912 887850051 953134035 946507065 972775877 74421743 332651454 153645218 860942555 741903495 762016619 267487945 879024742 303470872 592645409 548288282 701974690 758369057 924405509 103340691 849044165 188631695 246527635 163684813 349582889 748846247 866384456 635698652 720569462 45071540 645476394 705328215 816906951 390146874 871012568 659734156 898588536 53340448 752005120 771131768 786152969 763705481 861306840 137073255 619939575 28299974 402070791 630435433 694306873 250873740 595619691 554601212 723680649 340673102 355808518 452973380 895659726 725657900 860038987 813838897 837162266 23856720 832849449 12622403 74450493 794650649 929186134 725395025 924091877 637853920 966973846 145233577 363037634 340962891 344341555 703986723 864024968 224202779 626575094 34590412 130312489 117687341 282820190 657705838 933811205 929639345 945871448 474829912 736796193 493573665 709065425 250198446 883218650 124821867 585313959 237865727 987357088 420080952 791264389 943246571 985533562 849931229 989436171 91574439 964164132 552786658 833196315 137186648 903529224 917450 377081445 871748197 936264464 234865700 744915237 275796079 677497790 245185224 924988845 578414509 762892464 610112190 935465585 580909367 838483474 195483343 793739526 419107966 721144593 191130458 914390326 262845824 675336237 803159623 813487985 85263838 734055617 75304389 301343580 745920953 930151148 948695981 992718902 940721098 945861846 968211357 979074702 36042903 337416297 605406553 889937955 677983278 954705244 721528282 851158806 645252047 781246776 86516559 807725088 7235903 844349506 42928889 533472640 808893339 990906034 956298754 978279849 157458758 312511788 624087618 702386155 478161265 678030777 457129806 710051579 703920560 817749974 811479953 877477636 892877380 984359350 79331541 722836489 87199244 677641244 828109374 912222054 190581965 797589495 377265714 533581170 395227835 740297540 789112396 817161632 538872121 811405785 282021529 720053632 232737789 667542435 719026315 956056582 570638875 847459658 236233562 542380788 960904712 996985362 205239307 731389122 53285145 838281910 533105613 809122418 482252680 832953727 126764682 605099548 575947572 684049992 326551786 906696391 847523152 903527736 428197666 590632484 950229302 997389224 545981706 583607329 432962551 643502535 712841784 802344728 493574580 697176344 319294424 802081912 630647693 930114408 833822360 996067522 45017200 154712189 926186664 971646157 536127297 667606767 77817380 466271424 691415338 724974230 705470919 896194529 313340989 610057777 527417331 971160617 951357688 956483383 517814865 630056983 697715482 886580196 663808605 950303970 223003355 594786454 539166606 904065927 110124151 262766892 910522082 911847198 353735866 547968035 1704245 21712978 883469214 966074572 692635035 866193703 277123107 595943279 466365368 490330254 328570529 884443804 263003724 841150219 677872552 792694507 783154111 944610670 479534685 724557320 466020403 748632100 95953239 339215656 767691970 909686780 91428302 184627541 71352102 962095830 851060095 957515159 164947009 825375245 791829522 900577089 288199224 491301002 986051623 989173970 547302797 889085154 959283499 961473397 536042783 724090845 251591543 573652392 137150905 794435425 369362894 456419334 375713604 817500411 141737978 636141587 484325578 884457015 997522948 999477343 602123765 840993540 118371405 727157288 549904617 630284126 528534881 725417775 552321626 922937166 851826912 906497122 718096165 869753623 590104591 921946502 587241519 758239899 439411095 803531021 671643271 745921816 130536506 222269292 121969839 534049697 963995733 984699173 137547199 236314389 314555715 647648785 444053379 571008393 819903916 887396304 533901685 976616130 832762135 896534012 722465108 737968031 298593852 733285694 542970618 565895672 127710861 265398826 662194623 933225586 882515044 942186153 307301135 317232016 817389511 987377491 881901270 895733546 280675232 617966596 588423789 855720054 425646483 647449625 88044638 224708874 991004841 997903795 385698695 592726956 247193038 918318670 552158475 569387951 520546516 910523620 415340264 443313775 226179329 822679556 402924387 871211990 798007452 861423081 648715778 683057355 782091715 942202222 66160783 670566194 413364551 545038387 637792816 891919031 872518825 992166756 200298423 548314326 85944580 164330091 616116310 897401880 362457780 725431765 68471481 896485290 751865821 925752396 965065611 996753915 255500372 700833200 501327504 596231099 669295175 964001895 841272011 967433199 259685226 484756141 396974229 830847934 188432951 633927087 328150711 328747668 654669087 836518781 197098073 664415883 489752948 790302919 569090146 658079975 869661018 870632673 702234994 862930774 929175736 995064463 49151460 228651612 904167095 994653931 234181546 430498662 85808832 173455756 924083338 991280677 504024776 951992933 307426042 396683846 340468853 749396780 786749814 949304438 445141370 650859659 55462680 721726056 772034069 949019517 947574895 964252980 265980786 359587384 980422452 988518858 227282700 680252273 474318220 623489625 679033807 989230325 451366361 757791062 637024464 895525049 869980955 918630181 903391877 963367412 253442747 401813351 402116898 624552274 740124325 935363630 669003542 719263581 81810301 505671912 557913952 636958634 52027532 734289397 295340238 811376192 577929161 900618988 295215836 354176434 308232074 781689579 90122183 806461941 259243960 617000149 122345947 720045297 300728782 374624795 600693138 772571319 823585790 837666550 945928285 976748649 887395712 967914727 56689249 346591076 46403325 751356790 384555391 800975674 402259887 703693494 987866709 998033082 261565566 432966383 553897376 885048776 159743685 169158547 375769045 730810857 774844354 963502222 609669200 794402846 752555090 900599768 658659126 786935167 622650157 867592064 275677242 939452323 983083159 992570504 750450837 898598935 951473034 987330609 441188850 757685233 697463266 920474195 862777841 932308312 428474316 457209897 622560415 742295576 833035163 969491500 561399813 818797121 982125585 993713214 413615284 636984336 80402313 728224413 188457268 751938799 609787593 613178460 490115696 971583648 106847197 273781306 194706014 221693053 745763796 765704675 495747065 953352637 118617246 889043679 844173708 896747651 176426691 257451640 709246866 994119968 494663625 886339556 772127285 975427704 260547466 512536014 416303263 590837738 724265652 789812461 47290186 111646016 975614397 995407996 656007767 839725916 917926215 997339530 323605869 639035695 897245710 934441679 619166505 926951909 195112185 259481081 523651483 957141699 680658751 811538899 704548002 901349612 684752854 936792220 219152370 503382546 445281539 722363558 487617938 921789486 522514670 817178081 912455734 960064125 384828734 684698392 896349677 959261056 465923162 491208995 228353974 735014039 767763373 822497554 472026792 894619387 935392635 958354808 215191495 658708025 269269335 463755513 926990509 985213152 282252073 654126318 331039286 630640735 81197094 699454028 465339100 854009781 372120542 557171595 526475961 578293809 342005046 864675610 96569004 152054702 171175273 653220170 392643327 600690329 239620339 791295978 925621011 932775512 527021056 722800757 156282920 636327599 134188616 171082896 290678617 641593213 72681878 943677595 689402341 697316367 86970663 127834156 756858391 777880904 242188546 270036333 859207584 979357862 327079712 976824291 85656402 428540200 904326756 954987052 673241780 717693987 166665121 699097379 322685755 474503260 127555500 757726640 888753900 973530415 768567853 941106468 978797003 987878612 894516461 919163500 438302694 943079926 3684996 77505203 414263092 878784995 328655558 535674112 622272912 767794245 902245576 992403653 325666324 527673947 689856355 700695560 429503198 605827648 591831717 697728882 711622695 723746540 909744762 954004413 107513865 494837611 120445655 274651918 852770122 917649742 905045325 975846114 880707196 888358011 227284266 803599080 152304746 450495497 624200379 972684026 138183795 890559787 406180963 825434912 525809506 836943879 142366224 602332906 41724605 716890244 281457129 366554043 62194195 834550456 884770501 968479051 498608921 594594265 895456764 973436887 897269038 920963283 6071555 912191151 12439543 148534460 773638194 899583806 882228638 930922859 50049147 442252361 892888911 965358362 947331237 986459758 878749786 905088004 8199896 636018491 337957943 855682472 575959818 883739551 250382278 595163291 725372754 987389693 861014093 874489901 314183251 566996109 531429493 899673742 726365863 753981285 270541416 781446871 292238602 795380482 895294370 951108827 283644773 487527316 866717969 937162379 16214982 16963372 274954160 705561027 104995951 902770462 430603768 447071594 538870521 910947463 778558618 923628760 137364914 909329297 822517322 862046611 139249465 782511582 359508214 870037805 25670201 241603250 136880067 548720131 780699217 915782784 361904738 820707165 204063943 449435587 332351417 857533845 384426329 593098718 902846986 981421412 866678202 979381166 658435999 721856463 230898362 254633505 447473742 764636098 229767185 517968731 465259588 905376333 614678489 649588047 17570191 867778682 343345711 957137842 825265731 997436902 258403070 933297871 775233455 951060765 585225028 944889596 862162786 978916909 967761651 974395718 970204465 998999030 363070928 947909812 568985993 597420314 777035630 893775495 578526740 726996267 195010633 811659342 510287672 531343893 7434953 247470292 485542535 599187708 424783258 448270163 648542786 874083605 752672877 953456949 634010470 839535666 954136536 989879160 312175854 870188285 779244401 817504314 430840212 767939505 20346309 478987158 269013122 681814734 70819718 274819826 451962148 645438598 815335673 995694103 713729202 835665404 146827261 857542127 481150884 626262169 832081982 852463521 57098021 667029983 435518074 690284505 995282950 998430632 817912712 821612253 509639698 550550333 15614256 565488491 804988918 808329253 973408174 974838544 708842556 851842065 687843676 725950021 262322658 461425872 879889276 884995904 462353781 944107525 496579370 825761026 630912592 846137285 996534380 996774787 268694551 829783680 860203121 867006435 496821116 659886864 339356771 975630064 21479672 930357609 412173191 976631055 629271178 873547970 388385440 454905820 843933615 905720534 367585123 653662605 900657307 988424282 807961256 972350374 304453703 456050788 138945727 538893536 939780175 939895860 904755850 966860294 554650308 720160815 298473119 777762290 180447776 440908970 88737272 425515532 661139062 811325608 246055403 495410538 363477769 440704968 888776235 997594884 300766188 742101456 764552570 964366887 746196140 966583827 212967728 411577137 496001704 746656385 242412156 936601677 411808400 583423823 210399806 410155167 895063238 910599124 63143427 117157162 195848141 596386115 751255571 864011680 238714302 835771567 361561369 796605475 446844193 447689361 659443710 764309012 182303891 648881869 949738497 979818284 699890793 775087483 887701087 944762550 454792014 854951774 721841640 886021158 314954469 559981256 875398163 949821095 581772261 861683820 700495113 880324280 847151858 849874370 596697018 999953454 858316250 887615665 305020480 896932090 358133040 852564538 578845962 702074540 948814814 995202037 467074349 899159546 222444544 887517775 284877980 344770957 354928564 841587278 862413690 965306094 884656158 906886339 85544660 796509080 715193450 963124934 27169482 294106947 118725738 524753442 219603454 551091994 117646614 276840906 976433518 988514459 760792545 893451695 897131045 929753387 556887744 843834479 608482904 834731225 639418800 797227048 221014156 400405519 419035187 704346625 906786525 915678572 581699948 601622610 541233925 935038530 703618572 997295625 596506822 820041083 203206172 515087294 424017922 824506153 822304413 910032017 934775428 970103230 302908734 959616403 680950805 780658507 805863962 842844092 43791074 766927858 709445084 805655485 946321438 960030604 573408596 814953536 730021820 782196000 130837697 761144256 135157762 219320477 148979427 703822683 338459403 427072858 497956336 646894455 997693125 999498035 889477202 949272967 699825611 947158159 317791278 855505495 791801540 859222424 44858230 126227177 746827268 881457015 313123135 410388050 528169368 918893000 491238893 751226252 779224274 907900139 508511359 638898492 917143338 955259183 144314106 529420320 207052041 861534622 533833052 891185715 599508081 990606236 228006036 677572729 285719215 354885160 993743641 995165115 326685030 667111527 159227843 413608673 144391004 997670527 83089835 653167817 414434783 870290449 179084832 697674155 826899340 921944933 610730148 794233755 333991877 808436661 861153304 874492440 28460091 713647740 900988795 969041989 371927857 868366664 653887624 807674297 161492364 377373063 238272351 377481530 52077474 69575936 200773936 553061545 989807321 991523317 740957403 843711437 132666515 408401639 922287899 934777203 596384857 756864986 559436915 979052826 724265288 726970729 361084842 654857726 511759872 679619271 906451189 968118167 909709798 951211781 756048020 796214888 887376445 960628868 247226196 915204452 639615941 722296660 222899813 777819881 541039967 874560958 812648065 844546141 761546881 789147328 592586596 709821978 886792519 927274583 737712169 824867549 371934867 643902240 414741585 492985729 997883743 999955132 587647057 815198589 977043573 986121862 665562728 703623378 799570794 927837668 177345414 429074204 799858567 828825177 382106435 690569450 316472899 706168645 786227841 997238505 484584341 502132078 958132283 996145021 271148162 669502910 420039296 954346308 598986934 917206060 728555958 842746576 851234471 981360345 412493496 865957383 493090079 758116555 507894252 800436524 802490849 852569990 884800945 968085189 721256436 868020017 697374001 990126203 268786019 657467067 967796679 969151817 351641481 720291278 358893283 442762632 151607275 387934720 770707525 985885050 562419113 739496883 962909420 995179901 263993483 720243713 248559529 380853632 647281142 723053146 732870896 809075033 581038703 618289426 258259834 677853941 615529651 861643973 402266778 728786024 948730092 981239888 442727144 644076859 448025232 468188870 796292466 950361184 837930933 992242057 912421506 931480097 224387554 657009416 430723706 906203285 909868855 935630101 784535592 877486584 479125044 823535179 24321938 695656804 719726820 961847518 349656225 434859142 658626193 840802233 384370087 516667038 867137742 906884866 489605444 979752702 413976481 974521054 875123282 887339367 829244696 877605054 607213437 817224451 108008658 744964941 61567811 995357488 591755631 709848553 743618078 904869796 354544480 465753200 5694867 273432509 597420871 775740216 879590705 891299408 516670321 592951735 358567122 959561231 343782498 456599311 220884892 845066532 65833598 799940673 439124222 796184015 56040251 174500381 89651906 703415503 70010142 70374468 42598897 824543563 759804340 932593848 265940922 280526411 692640737 852997365 322843970 690251253 818837561 935959433 768874080 988075081 829027091 963405483 685753466 706933489 540714764 601863331 327678096 804406888 671902619 911842909 665987644 786374367 144997602 530332808 740857756 886996157 913470214 983213644 888610961 954831648 903435309 966831389 770295555 956594214 510133120 795005705 449570667 671514789 484246489 695375194 65261258 844046691 623813825 790726932 998557249 999767919 322820454 630623110 5315305 249080138 863863849 894456623 958008842 995944241 545633126 687481832 319948179 571801750 232927085 894113742 146383074 389334747 691146439 733909503 989167980 993421979 600021143 704815888 915011755 919631999 65695813 283700437 860759123 912611634 872748337 926523854 540841034 996288284 675461238 931511933 130114784 642549292 326671844 533766135 840302194 941016044 585968431 802127363 791984893 948475076 689520105 987161368 785220908 923924945 854337499 959564169 254746836 966412856 111167770 857748629 293068572 922382032 231763083 710436038 464628572 727025195 135423495 293512627 996154178 997898565 770134572 886533260 867500248 916682362 353024427 955917017 725073176 979500603 374262710 784611938 789850806 939565981 652367086 979772814 963614531 986439098 548827177 626712698 135688562 280587089 990967051 992176906 507594862 581500451 916862058 970017914 526848512 678988565 835884827 946836039 168167613 777331998 633473319 937939912 919944004 933892841 487664764 725466295 727870087 904699117 579575058 645583722 701439190 710207260 67231644 541586197 480781954 820489100 918639399 938795753 997041371 998310131 223449210 834350410 583587445 960099659 859933040 969583048 499292794 900523765 190347515 385150690 631632957 732690240 664594058 828563774 549627478 689344546 486804371 490592539 633794013 944017535 126691985 846355339 537932173 947724202 122628314 733950335 39657601 68399121 22785664 289896349 449565321 891348061 6281196 663760455 142847029 831399012 832607775 882726589 543871026 791284436 110069257 895523868 112589507 814740771 215040509 281805297 22979174 865038523 387158344 867029766 308497291 757184253 84737153 527597204 232697926 836074949 600672354 719371558 304387285 513182365 476541420 499672319 506323784 828864714 728853164 943483031 687286281 973589849 886370796 941844718 593445357 855139593 285663981 881271947 632467877 821415066 932985696 980428295 412320300 738915433 459003930 654890585 170272654 658034597 761910862 937189056 667246138 790166337 642332527 829257656 950424081 978624341 647705965 750227229 813342096 846927339 706856037 856142688 888682327 929537569 631374897 879114473 277440137 554826650 500817915 822611697 395079993 706363346 805738487 854752209 710706099 722181330 548131014 739530899 791527115 799290133 240032452 867225693 255272266 503033435 339145950 429818095 997893256 998160524 262766089 988705586 131912367 221229413 460379422 754158375 745942087 950935869 803057422 843309563 191164748 363599272 549901142 804805247 835543151 862106128 783192400 997392725 752675589 941109067 622861680 820224593 872411771 971417443 170594197 394509392 46191111 681747584 749189694 950633827 816021418 848650999 897373476 900321198 219567016 412864920 536430311 992385027 397368602 819096112 473003930 974051510 545923648 831881648 649905763 954057434 469429832 875374353 520985796 765897798 501954322 865862627 639873136 989730611 553814535 820840068 805009045 846511200 7196977 814457605 235423619 986953504 671912482 921764685 838688107 876571717 780988449 797804757 231481242 684092713 535208190 726470611 381387157 801586951 949628847 975575297 208872869 738243471 956206681 987026809 929633990 942840582 621999875 768922078 880655022 979209224 879760043 917834401 405416238 731827596 877584973 957509276 738166842 895505399 352963903 659949226 286790656 432668045 213286280 845029946 18867656 309232646 441491019 609329230 794446045 851461895 188675801 544198326 696678902 840110922 409098480 414557077 691376663 908705078 192783636 257523102 440605732 872914485 828093224 889718729 356533812 636049796 369817271 673961127 727568974 906287312 82292912 488732084 173846091 966806201 419962689 658314527 172778709 270360525 717327874 844329779 390067768 915396238 504500186 579059469 375710440 650531117 102322979 375885324 662190584 748048467 504374721 806179843 887836675 995521582 363937207 729654398 154349401 538004193 637458602 824377674 29363012 709471969 753962506 781713981 184884376 400525067 942037691 996046637 181796928 353476005 550052255 574530833 875466486 948829620 36574360 239201487 287329372 466852224 172840188 753192992 960102198 974102601 365767392 543990296 81547601 944148817 342395118 843549955 82204731 961006884 334320325 467491321 818687826 846465333 126254118 670191955 707020868 903769457 165119970 990913753 87658842 588231410 75209079 887359505 439395497 962729269 689022583 763929931 822326118 973950490 598286205 890477851 350193719 821125524 640452307 769592203 550047672 760633458 535970837 640637158 424252481 506235251 832147345 848174350 975265785 982074801 768442122 819053749 68323238 474149242 73601119 480228241 307146244 472022781 830555456 938878650 839583784 883754118 318133998 694759088 22790457 288365660 244780403 402248816 181847817 306597834 586664021 659437091 893645979 920216943 881230624 917958945 571517322 928798877 656236224 883680630 381050200 392802942 967247368 995380373 641850511 712249605 516774717 785534562 292828449 935879843 363884120 475145230 184577902 911234004 595218948 848691119 996204717 998980306 953663354 974128354 163289000 365435812 139950329 750257986 255933055 693870499 844724218 961832735 990312507 993600518 243548647 347789684 803571361 960439161 913685166 979395478 502202447 641134382 814992072 976401594 901788020 927079599 372496499 487494382 807402694 953761584 954166021 966555434 234610121 631628099 130471465 266295252 947250752 974190818 285408653 723073512 965647066 966390415 398590563 732076116 446234100 456091483 431645361 595209287 757547068 950724064 973369751 988476053 320824252 894732992 87727313 737558555 933413206 964549474 243696884 447744840 172662794 961502426 49100522 716067598 654695724 722756154 873759581 906714895 658168305 796088536 276045530 985973035 198669967 749777134 579665819 982363483 957060806 957973606 955634773 980954358 840711979 884254752 866998860 970365572 439673987 974504392 694571055 749055957 593640646 740422163 96506075 387026055 8042203 197663116 311755525 776593080 776381125 885887520 109436687 111031123 31827801 308699645 33581143 493744452 961857469 991278963 647153585 736597469 650984994 725254450 236508462 798428484 341960031 636970154 330027234 637710171 144715424 579036636 724204468 956815784 85433989 344276632 41655310 416146457 892691788 893137335 858167198 994675003 712033592 881116912 275603038 963318335 494044116 793826350 278408194 839192987 715987275 803632593 950842053 976893852 444952457 807660051 401783297 641153017 962717706 997759563 379938620 942096002 412772955 865035566 442523525 922673930 19685932 69284202 885603374 952492607 254931707 335553324 753243670 920108223 134029344 210176616 940009460 967253578 466593502 653802462 593857224 845318158 544938739 550564488 152039676 835782749 764769221 895141812 358208567 843609525 349207587 602289668 147769898 440278237 31547456 438346363 894455891 974533736 62682498 818276829 101473370 500883899 383427514 828893921 956226275 956512430 343756452 518694713 787788877 795391849 815216843 953291671 85187981 93181123 227741031 457509387 174409826 993069113 173455321 668565556 1796990 128938875 892586598 981186133 283809033 777479011 908783692 911075154 133222574 415453657 630995096 980804279 468413075 865788515 442646150 659040354 957371884 961725677 559086547 899836130 925687687 966082682 626579704 952691808 982345212 995310227 348315321 966057943 363717756 667033131 469328071 873937183 744734185 956119342 271439773 824343002 593992526 810827420 308537092 692753703 47103507 900687644 262298324 608438424 67401080 768238927 391346031 649558251 700323200 848016144 706377722 876650761 230927171 812189696 533609010 587974422 300565168 923073025 317673111 555964615 261621748 641154840 687896167 812475946 392760977 775022375 850521882 959093865 774462220 800395529 366440871 929765483 156730692 343689539 312090264 834432312 319280456 373527638 241166982 796405392 365523163 875177086 505246324 740394583 569450499 967368420 318804925 900048177 925150288 963446700 274353087 526918743 960195335 986778224 337763507 540816551 229547999 988727905 42685348 46485759 689061292 842799672 138167243 982106879 501311103 505550259 10193301 590545414 782783760 794897608 127402589 924110693 115151884 241497403 945134829 968980749 893260167 941066229 265387380 724359922 65625763 623775132 480275133 647476433 116733976 162701199 305913886 513233354 63000752 467760427 243054424 397461223 410891916 937715148 644904289 756915904 200936963 709640881 52497060 992826210 713771155 810712852 877615429 939164341 748530733 868989403 56997752 190637493 700527602 803404552 932634826 948450580 491544501 544407242 787141338 857451841 435721915 592495833 939852577 944308448 476344678 585320993 642439790 831076118 370575411 485922414 523450737 599665174 147069564 912972410 309208320 797163669 37097568 665184441 149331103 358046665 297253759 593251646 889696735 919869524 745283450 818656670 435782208 501153999 794987628 905864399 832367060 851757669 754430680 898812379 48097360 274661509 360423287 892530462 48435140 850191736 604957387 613839953 916249367 946129614 747487251 812430953 480880526 565810856 785636337 831164852 544535865 546873525 686760081 735352635 75530609 557278588 134057459 998381787 438873735 866367978 179897987 872003087 85610320 332646718 915100313 960607139 993924908 995054265 104060931 880275012 511327336 892020087 942734450 979212605 666615742 692651392 909132824 953256897 480226238 907602364 919153775 996585804 993315753 996929949 416955004 506847344 23568389 194805570 570506870 950084822 574639369 956452286 123432085 847989333 785849012 923394010 492303543 847808232 714162367 868125194 464480008 485426957 55272804 590777535 603747259 692457549 183212632 409338347 986251906 988519407 846996507 914420372 227918582 689910617 61196604 734464094 426902115 776845563 792149950 856056505 727052909 843033426 31920770 73936763 316546250 332700530 878307125 956650450 650260256 891724941 880104630 951561657 363274259 669750400 777377551 923318281 281177185 724393505 68549257 845372329 726654150 966705105 985589450 991199017 345878411 843390716 530304717 724771889 554877902 982677986 688555 667051355 458689988 641895761 940538516 998208775 872299611 910612755 158285282 407931944 157262969 980551225 541512503 790690221 369326598 387763828 327423050 831592394 406015567 763260657 956248195 960049722 556947334 673143216 879767332 968956270 976487916 991366855 572553600 746460003 558166349 977050722 696618313 803826435 669387565 714962584 207009066 443487215 535199126 538940989 619087428 688223648 982494166 986509259 385625067 498933894 713320107 876328405 744299967 863352935 386810909 460824691 576791099 588774957 422907950 594102108 276613887 356226118 528515359 681963420 288551191 924531198 19546765 983575435 328756138 530796224 240687591 345215061 843051533 957659485 730439590 781988060 85091307 514609877 469461113 982137848 162055659 487891101 265162760 989173530 337842570 731592180 125721442 390190872 635340927 869995340 269134233 601989188 979175803 993180223 312194385 827611753 353000159 663500609 379148176 529822994 538494103 748271217 879741546 941197891 357720945 921399233 768931309 816589427 41426692 432091019 560545221 937845502 399441607 432538266 819985585 970124159 373550064 905514436 665536661 774614337 362572788 685694574 311978699 360867011 657812633 730003820 969348617 992734997 757307508 972430117 583001978 944561400 846834305 850340166 820507840 888521433 779566297 928254826 23547932 898944035 265846040 413145676 704043408 739163012 373387773 792042866 37189432 850797687 762569815 880290462 444666935 836306023 353384038 638949872 238617823 427507901 609413688 854060721 895489691 981929614 175727048 979887949 872898007 937354543 62989222 594993680 151798017 993032485 472023074 974963862 456824753 487676778 627298010 676872672 340513120 602512611 635483935 936284012 809082719 942690007 459125530 616275778 999076012 999992590 113327877 750440887 484647223 979135580 60475135 382539072 421311901 480129504 292712020 846983768 544789037 821714427 524788871 609704034 39474636 705285137 694942727 993871091 332721174 609004746 940238324 986777088 775186059 839235938 263449161 322297895 935393800 935487607 983308437 984869014 443991960 937248655 759353467 894883217 234760890 349175689 2417535 320067454 687687179 719030580 282648711 329122229 843866354 876258990 855876622 863445127 362588261 678524422 967880658 994844934 186523054 926786887 155556945 280313900 330815957 405540839 988763609 999790815 628636752 980830256 315313111 635606656 250226321 472111883 821455074 952130501 279573462 893263772 84312575 485942771 414101967 817809348 498214412 653275499 83331670 299477578 802732686 925919507 210527373 248152770 48386696 365412316 288162203 705241189 319934186 975729184 488030136 799469113 441975542 470671647 282437035 645852047 15516023 750539845 806567349 947795460 556602980 926091563 189611511 513666416 323736673 997455960 970089140 998539807 881011990 991384037 84317982 412226279 802495586 947812552 751091529 775161959 726986897 761719562 100877224 616277116 884278767 949495203 148781130 278734141 718475804 948721799 195988383 857306668 105231063 909553896 624660983 691851078 235582052 473807720 249482377 483767874 6865367 873812377 826990242 953454500 395724300 467937743 438783394 536772596 788588665 947272414 974929386 977599493 173881454 657744077 635125863 728299037 530472329 814992351 707344695 814613367 592485366 699998247 828978713 858181663 653641182 872642051 78423441 891665457 219083008 987326072 757504040 806749680 950208098 989648096 432689607 793130110 401219239 622898120 305773472 344044250 870173118 911350282 322827212 755004962 399834882 458757763 607821288 626559008 387286048 441694117 366946908 435484569 606564034 790799967 120562612 380568954 228565364 274835602 624434435 647157564 127675588 399159028 165850694 647622652 253940791 773349374 85306995 924166641 976916435 987173545 517788778 762480333 644505163 760414288 815641198 870447427 686298667 885658150 426812877 469565924 396126330 442531892 415530545 480146534 562153492 833758737 286179404 857035203 6796616 118767418 202213265 902466680 674070417 716464837 509426713 521315910 107271461 756292143 352875236 798452873 362788463 768427394 932922559 973275959 738987536 996342587 628997865 838626868 441469311 710624875 809905000 977857531 778486207 802611877 110592423 552723930 730629013 867327410 194916846 869140442 670217319 849165590 34279393 264210271 90397801 392325653 454862495 705807639 476551765 700123260 487947985 905222585 251262189 774929272 933162344 964061144 223407717 501114242 114177401 121287692 1564744 18658015 157111305 183373012 87985015 778681985 591084278 894234055 433652824 782179469 383195723 869495725 406544706 923056048 708907595 887380562 804470605 976317326 507853697 668571590 16837093 586396860 536611275 557543403 958385264 973913557 123087939 956143980 577361955 923392557 570721577 582108913 67725954 384345822 795446753 840487743 349447689 742676577 822887248 884343477 795962836 903256580 7081019 325759266 553793624 721246163 41491298 887842700 450222026 827058634 77573373 881356526 925791722 940872400 23699455 458087720 406408732 865962297 972040718 998367231 307370990 313001295 822902234 862196489 443514565 568329880 753299978 806712334 534083171 828157750 515611703 642124138 547777288 565892125 202619829 490718072 531647983 959959270 269752062 653646707 541286860 895462544 751463031 945514680 138713206 430496766 647785712 906362116 765574914 870519926 545398716 748189874 615166853 706696802 748217083 789692975 512399351 685164606 346252774 923698844 763420958 800020250 918581365 941947137 226985330 293414227 402194247 530982081 729687320 942258152 542776524 811304992 882678385 972856584 905252188 979471050 568989718 974273029 417284571 978172164 517501924 614124901 845553669 939910214 499501492 722862887 534506519 577818306 207759862 367665464 297161706 875055662 19239126 385978174 412342435 786313102 209704044 636598545 488848465 696978946 415578030 553682805 353696957 479652457 107184181 888113431 454296178 914778071 341816867 633936974 315276824 689732444 182601654 657623520 67027614 420752445 525678442 691614129 566378218 806953996 454724088 961448338 523773895 660880971 524708165 879591409 4342658 760364986 760770539 975101871 383693257 556302624 335940774 479864525 754699056 908403036 40361341 236182298 358989976 375968309 531461634 679984015 885778296 986108965 738213912 815169460 100495063 498985957 492822762 649553759 28497842 373681198 588388312 705901612 179840459 613382057 711917771 749871100 691967099 798170723 462942534 939573695 885134089 911763153 100347280 545356768 431436795 479846314 287822433 480291080 29023427 738382748 583048722 996082823 550930396 699940755 222703480 537262011 619180562 897827635 201331654 394424592 733312901 985850132 519573873 640360486 258900694 793486690 144603590 715027478 192343848 528116291 495187040 576276068 765175244 975096719 229698599 340853754 268756282 552757475 117032751 896882546 917195687 958325700 627597422 654199271 875013337 910747750 918953788 955999365 172976522 637710675 573768724 670179848 587436491 599103737 507221839 738491436 233271669 570423573 467712089 862223953 415553876 905255204 117984773 310185632 495685892 726301454 896156053 902239104 69785831 521235103 69274768 87959839 130739411 662081079 669372906 890002458 361024643 384985924 503023590 846239503 156912270 486849913 822669939 914701883 562791165 596863543 926220528 941316734 508970453 912246956 135349248 974761454 756286284 933146742 26756462 243257636 475983818 994502894 461055976 467569162 940921922 943950747 546307285 547114451 508073871 563606585 193683640 913614547 702582212 829977694 203085475 685633947 509043466 785109509 550263785 884218385 351309883 559527214 95238703 964874110 225906906 642762929 112030972 590399026 322322629 544552515 174130395 940913537 316102024 740945105 692396657 944156934 112625672 216451988 785840244 810031826 291419986 908921526 407139779 885924622 489487333 641862082 476025461 562214872 708781304 857838467 368862874 809048537 248886498 665502038 832996216 837540139 120883080 735633220 520191904 857733658 872896809 964102126 981185414 989940117 556527942 936190469 411436541 568088967 485287354 693775693 885071278 942306715 4241293 146240271 424777546 564645567 783131863 980608205 909922287 960134581 977827807 987681381 285353143 570735812 667235938 972024300 758424566 839540389 282972680 547805488 289761051 531565302 435596218 460626685 979748003 997286736 549139619 769101909 137059745 398702758 908610369 921221617 169321050 363851976 257760783 324869201 777909629 803278847 77457402 542801987 114585520 610261682 862048262 891013851 238756212 609790672 175000701 787092783 267775276 398408576 681485258 733457880 436761394 762397004 121204668 675003153 702398201 786992806 459464147 670904694 243620688 563349918 372422366 393752294 849807553 942027276 622873442 985181331 598137798 817485538 472465206 606369961 343116012 381472790 75061678 731848737 629492338 915887626 521098590 588066536 824142526 911211370 800147355 912191045 623250019 752025277 688645061 723536905 990221551 992423485 182965445 770764350 822333677 967950151 631596427 814702932 465523370 602826814 800777239 874416679 547361456 829465903 231030227 544147784 573671514 765582431 457124688 851793636 497040356 509136891 727157083 877030992 122170341 434309455 340104517 991623494 839549233 904093609 488255466 709154646 637951440 991235043 458251637 732134118 812997401 856299263 58071139 873146828 851357990 925169272 933896744 971543100 164290547 877632923 282460092 842278140 697445 240660294 115323385 992963897 340364033 384854957 901462542 949546548 967115112 977397897 204537993 273477764 769658498 970267647 910318592 950289023 139248894 440041277 432436320 737595946 969238650 974964086 829203580 916658081 915241351 945620212 189044479 478526465 73932978 292558135 206474495 291835848 665665153 950602797 55720890 984367679 264775255 561316889 143953891 564469710 500978001 759540965 510434088 795530123 905067889 920428910 97821716 555014368 11356545 29385201 243929464 291604990 504783245 672684306 628628265 684713996 791495081 910584556 845892947 946368914 398656238 430187704 842930153 936007791 296034508 319516356 875547806 970287173 505900898 790269463 682734646 755962972 971414225 985112196 815115764 937102844 928432930 985210603 849867237 980421412 300905818 981076602 944087963 998649286 980257773 987303450 898357378 921971365 517923375 538617759 913087857 955760855 584913131 873594121 361859412 440675441 736765556 848838237 231671407 530696531 569525957 684268683 322925272 328229430 549767490 996837189 778442965 923989607 843848186 895614751 708120606 979392651 391034833 472394461 612200071 997110733 71901002 840451488 4333572 284451437 96442502 295382262 642280787 749284839 521706055 888409755 608010621 901135879 176622729 475902792 468531811 637876913 346862206 656009659 760197657 926711875 643377319 852942468 235929257 438148074 55256205 707647075 759655368 890693630 368639596 777782461 920424885 965877892 750668392 841338080 832212218 906546130 540484809 871483533 822973925 837180184 263884352 755227356 990029708 992825738 975414893 985140056 986520229 995646088 839587402 867875118 949229607 982900274 533862208 581137830 366165560 734374721 323477722 964654580 958541615 980921412 3165764 541057440 654461985 790189703 259033800 313973190 104000475 893831315 299545436 946446770 375217344 981037839 48792824 516238190 931911721 956653193 365080840 703807745 806397206 815819200 103100128 141713146 155855674 918590732 753581448 823587847 217512646 982464729 882782918 963920901 768691685 881840403 487761081 790878355 392955170 466461885 867069943 868417715 56728293 640516134 756488073 875094949 964766889 994293848 841014799 994236291 339077091 604108032 695908106 924982196 92326496 904072953 825119721 996837987 914463595 954819874 265619461 962125284 385588133 665229873 763250789 929874410 156377945 923627623 57629440 524623491 819515206 981457495 119690747 212436941 591023103 628840510 440381753 786903500 348573545 640047243 679335944 689318908 41967481 829850647 899530698 999948907 948152084 984115617 441929594 680858403 308777414 932109986 631319112 973691493 654284225 707389516 109751119 382339043 79317769 115082637 131403144 331723349 390040545 936097659 378563042 897648421 876186747 984701733 299909258 328955780 471423337 717012525 165866023 727374512 214829141 601527045 779310055 967266702 90959678 317372376 644746477 798652149 828387017 968741058 187246025 656022354 459096415 542573688 978240793 994586803 93580307 587616593 715380349 791031848 2952959 238551412 548893523 928846562 522463597 816384455 560483677 694858125 769882588 985185322 339773507 436264346 776311839 887981923 333353407 360825540 3242219 683511479 542110521 625553326 944251778 999233227 508913453 761201728 303280061 841847652 266918608 745709536 321584228 393767766 767939433 827747297 73850581 419075871 844577732 932541693 280023297 874952267 385170374 905748188 686269782 782438434 435986431 600461687 79815529 679553863 248694295 944252342 93474144 129656148 4995549 386329703 100066822 345666218 223945162 453659619 130112065 551788127 543844066 707992004 924872841 951268073 344640676 405512978 707320924 903489912 231757997 497409340 834041628 848878978 827968346 841657217 456449484 500747677 946961507 972347172 583916147 679444960 547894413 710805635 208140468 554815442 223748872 387109452 802857715 830824184 252916685 892091155 141136392 587273662 428563201 637744661 973051124 997502160 395165797 695929249 59148501 219287845 422505463 792587538 569396264 800312687 284555377 622728957 430181039 842156723 306052368 924462844 974572687 984063180 403965827 544661992 663135105 926648502 764536030 958917304 147446056 988273589 281998725 822490085 376101766 620917058 632870887 799850702 278675996 548292561 456834291 830429916 912062245 985536296 833865382 998595503 426879142 453911014 553197231 767904757 261416639 580062177 255223335 317702009 190703169 461651341 498852395 539034578 358086435 599586941 666497165 799543051 320682249 898893360 62609894 469412163 50302059 582700953 955679117 974519786 315648481 377885915 574141299 656819277 895264688 996758289 595172980 696587889 8400017 195204944 537651842 993895758 689908545 746717871 474664890 945529960 885089861 901804989 712041228 776035136 287503517 607371122 706521032 916231474 126559051 894709301 786676533 847080717 472837079 507343475 887549601 981533950 75802212 365200702 209255887 640217504 843391271 886725484 760846559 917441606 688716917 733468737 283361098 472921418 669481225 693912102 853199082 872412366 241526751 342128821 563834755 661227125 634914789 997183428 114081842 239282823 385835313 617240331 188452517 790486455 931281450 948997923 53935339 412169751 359226390 502468513 153093078 416084951 907772107 982630149 660603102 757483236 160253707 784404306 918257605 923936926 260758622 486709365 662893009 686732525 641136012 728356424 424870534 676917034 564258737 607866918 839430430 983392650 458646147 922957209 300854466 698933918 188600636 854391459 569663269 590238062 338798501 398969781 853956142 903724894 535652908 921778742 663553643 886448290 12548189 115254855 527629436 800385952 304531824 927676664 542452297 571309830 73664858 959178222 308564574 874507082 191018674 590773380 607931903 620120020 429756491 536752473 344410196 556283467 82561489 919517838 920721629 934319695 51062457 260293044 363152709 578360985 748189046 878582752 380130 779277222 410748257 426690141 502137339 976598662 820439773 856678025 64007312 290844725 318135268 904473876 872309546 922744836 734128593 777762731 717043274 907576911 388964627 554671928 455570417 869810701 120998634 973026732 279211536 468542847 395875423 708599352 806561391 963235159 692748629 764354315 277982001 463258299 425929843 891421658 670808766 830437685 863102848 961131329 603610037 949178631 375663535 692700723 709992512 844693241 625179879 846625052 811860343 888561646 819741660 865963477 402926671 948062686 627472151 961212367 605941004 776019464 192053692 687636800 569499971 680639756 863061928 896050167 376521033 569424365 768531715 825997280 946033538 951461146 182891626 613081198 12536965 599528481 735967985 975413888 199083448 513948411 54837877 272257992 252159415 883773321 864936861 949754577 653149453 921058733 963598124 970920331 473224478 823822088 143065658 288174994 129168374 901837085 404378292 937473874 655356516 945766752 941600578 980276074 48826606 501791626 380351659 829061903 483302600 548835697 942705985 991655246 113298049 395756272 23058399 453558282 9691431 164686628 587707192 903247885 337862097 830799661 220614207 360504123 63913531 136181699 556523155 990606209 744115838 982783247 485450991 569209978 341944983 930126815 311307528 855486395 679114607 942141420 174553894 994646396 801880940 854108969 274746763 399178153 215047776 731911145 970910288 983963708 347367719 449026616 749996310 759927531 794928099 963413486 1077354 833433461 882761003 918192505 156682404 412614827 454377815 641780149 176529241 858308223 992154366 993429640 247512220 928563054 625704898 920464160 223144634 410971273 385323754 641266992 401293257 670492967 136157394 878310405 921425817 932788717 657367639 823379913 899856851 912286829 408901568 960500153 998100893 999277543 404729330 474926870 210020879 629942016 925002716 973350651 603090766 708923979 640577472 664037308 153339296 581229963 413016908 782089538 18873262 856463302 889235280 984430181 749763183 964864753 529980646 975587426 577786529 581238089 479444193 969831388 874281225 880037507 45881845 157723879 660473735 861952488 674638224 906864581 391330527 888770604 319687920 578265454 472411752 949473127 641849253 791310379 136295402 592334744 813854350 821193475 542174064 736069197 406108045 666659685 824525635 923612906 273229675 326237377 242085429 865818349 920204177 931781087 519908170 653137888 377592541 942743286 178729459 274515024 543711466 803486674 900478926 924455862 516376683 666017675 335770259 484611492 408104116 444313354 325185618 388843171 38991850 962490922 75075596 254354754 70071602 789919435 250013723 585483862 558700567 687770170 909907638 994887866 104889186 797549209 823031582 892113116 689255026 877444870 142826556 999680360 871975440 956457677 14406682 542349225 788197356 855231284 772846509 805757534 470910110 695502703 415181096 947775426 188817096 331238929 751796238 852500950 871222539 917431843 333839862 410090689 123521435 231534879 22730682 298217064 269002309 878119422 656922587 944518514 437921046 997806716 390647358 440509681 239752141 478377247 680060593 903412290 187468669 674687706 483388790 744924276 701781391 998265396 138971980 313500993 786247422 800651597 42944828 701040746 709902731 953434494 748365589 770877229 445273883 563146734 660012211 936535669 719779050 832214828 761789149 913296813 354214887 632602767 215481156 873081901 111969369 993359006 120003371 839194363 66579653 568481047 66689134 834602334 938870999 989562355 449063381 509880005 745880654 787644162 750240495 829593877 470025102 797602428 188081825 958844464 264576094 433117087 508318509 891664137 726152383 785052597 444598370 851115713 116676022 989991655 698109416 840684730 780748821 990293413 24514451 120657218 796053666 957106145 603467320 912201960 195380592 514374796 891356358 906772253 44370783 529764145 264508261 934495363 387295441 482399722 344446027 752652143 84283675 444674310 567978813 822001301 783456075 960056253 498144392 818505826 166758256 652911275 211851646 732285121 16049787 48981488 636501259 743892370 515944306 737847788 274112739 327063361 559094752 785952071 808055000 863830003 389731077 610455025 680807101 922305786 757274375 979157421 389955547 715403556 481604963 606956670 994907046 997773265 708930127 839469912 689907056 961672711 634445181 746758109 882360780 965479588 626370412 736228665 81018793 309339508 459731015 981554800 225098286 547154369 984480205 997423263 104359386 457902696 75622497 640434093 921639324 930245113 666322381 895978606 603119732 895439777 218379825 602305057 534982167 981384217 257248284 710725642 280036993 741340594 52901810 795611960 210233511 520573730 629252658 849678677 388536640 608027579 693860358 874692521 282686440 978712239 814421508 893664575 704161565 943039720 73587636 815949141 912275827 982651922 544277344 887921862 203113311 566698316 177328637 488628326 382792753 938260821 130807389 644300631 658943190 673901210 769772551 992383634 959554043 988503532 503191849 882575124 656155529 966408396 531664568 815039818 786339351 805059334 329058931 677015419 805780238 928711140 493576164 846936478 138954490 581533057 90196707 421989016 144411504 909003938 843917423 968228145 434215041 578809916 588111634 590952377 979584519 999866569 992363585 996099483 949319330 965410834 68557958 462677668 699759944 863552190 56924445 777288917 945442259 969242645 947967525 949227046 823299485 878834037 292782700 671871006 755380337 940010381 630585977 853230430 267630655 516738770 827026809 996765420 646438497 737970283 513351622 963266060 809199601 881008631 539295882 953413634 880878481 943582314 790204752 878746568 253537029 689884674 522230232 819435559 689125209 767107054 855747474 865354556 775527137 987014129 953053720 986390613 309346433 432881738 916144322 974920724 655370427 697512824 640011284 974539140 331247346 893081715 112050733 974411535 231413759 964244996 924899852 937983880 845369008 919938435 777111742 854625927 40312767 804995181 213739950 249382495 107106703 294338969 400343718 755365271 749362657 939692677 388836796 554059953 194064441 640474875 767976737 976926290 117114009 374950101 7389644 48361340 321699031 649894229 979471156 991584006 833931835 856915556 256144397 512723753 809283063 831411607 853904160 913187811 247369167 390100984 511954617 801994957 921123380 978930907 60032747 828395589 470426270 925627724 529311944 847800117 479911858 709888684 395134417 464997431 961560668 986950577 919448993 987721976 173319234 418530833 639607330 786635967 873587976 964699127 283376991 875972275 711624246 815189848 262200236 623274269 402227994 427430925 397842205 526464104 328024740 579543332 24511650 313340046 394639220 436424754 544125428 688480297 553293570 917957912 765479167 876734984 813675752 841633606 755722214 767495357 899226111 976696426 786581854 894924591 657423928 664995360 841961918 936791238 31469953 882166855 554739008 691024747 713472663 831407148 636844573 813266818 503908211 521876255 446584574 858641426 528627834 924748165 116773630 371827736 197255221 831248137 140006076 848709020 420733191 576044106 215364726 255010025 13443871 951436772 714619577 899751204 509415941 576401436 539785593 769797169 531314852 569506547 957294534 994195077 370718676 641934879 560976139 645894138 360863071 848837232 874472715 936542160 62933039 394973602 38334546 644246834 25741518 48271691 421607489 794566664 698904269 741354431 129014592 790483074 944249531 964825565 961894284 969662855 399424496 611090060 294988312 331326999 441833268 886674113 711621846 924174936 90943234 361646605 419398062 515961402 811666002 937137882 668391324 860744325 103975703 677175757 558721422 831966633 401965549 589944644 680694442 861224495 825905379 848190815 489263871 928355577 861546810 941305010 236634754 484485376 584162488 735541805 1803002 147964882 402218815 587504125 73346237 622460289 906843448 943940512 990771280 992470923 271295129 922141157 821892327 955585383 720572212 820846992 887994627 988623874 809139190 928072739 20173870 168282593 899898054 959114153 808152955 895391990 949853197 992921932 896827167 911563527 786308154 834953879 470700480 647617359 944721792 998041600 228893922 968996046 800117277 954225660 918767847 991905890 350156450 809093211 933085008 972312720 537623736 830984200 298558048 462461943 767203583 955746656 770097086 860232712 209126816 707080600 38674722 46417185 848971734 931490827 727781814 785258806 268940596 877269900 825991178 939050967 977069784 986646175 769921785 826220331 609042886 626610349 141293972 946092255 276660148 408614651 988001373 994201602 507216680 742204935 205448731 490929744 481064481 804612364 974475900 976161465 976652995 983983316 250293304 979425990 859103317 959427890 838067684 967422761 187189935 201108319 96815977 360291157 166157724 661877381 80159547 973310436 11286336 655796186 731232746 749686643 459849668 663088879 433259101 818987305 58073722 135821714 650776562 989356490 273524120 392224425 370596621 685642306 858701780 860804485 404721959 925313725 389063974 648883536 862002817 925951568 463153517 512081957 827019598 950558118 269864462 676750546 93765013 426790175 506845185 817004011 84110081 214723607 983741276 986982266 548641679 790532607 935315379 978594737 893959886 977658251 661501231 822007379 538611271 579760962 848218891 864379315 946584903 989375984 778236435 958955836 169487260 245103066 382401872 895248641 824813651 958383524 904789051 931180819 870919380 971216931 723839761 983600293 45734331 436026332 730013738 847004229 836692727 879959813 720047088 779636598 468555408 665110726 438738440 976934400 718220137 818173692 658937185 890199438 242909239 845308598 463710656 877890241 74283515 740243414 411143256 479660747 588770624 677621935 549218280 636540411 698149921 890804758 580362038 680851697 469484720 668951987 602817671 984381461 444476520 719554630 720396517 842762228 928780352 968436636 357538512 866370203 92485887 581509642 193313261 821774866 1099634 650250829 833641935 851259929 328784139 537245342 815156225 998422480 844483335 907243279 177019404 729189062 364054102 627789502 369353283 994284772 471220369 817335358 757510776 833478549 834569543 896878806 202570976 230763640 385666962 461906731 559132108 719733682 446528191 494946017 730525838 912207348 273323851 749594307 226831256 586306914 187579916 579418473 622086835 933863572 727645795 943633970 795382504 935628417 321199326 865072177 810442683 934629222 564405595 749295197 241950932 843393192 673194213 719180037 863815176 989099696 474014558 720277297 936661761 951716845 167566208 648114309 151220511 244025726 237837462 808814962 677361711 965887728 879263576 959718946 604466706 753235001 494405508 652637682 999115140 999932769 373237767 554075846 24032397 828486361 251107697 738651014 42316778 588951222 799868416 850237317 969492020 975841463 539169812 936897517 109272718 918211896 535440133 965172551 155731575 774047811 115702540 702825449 496220853 953057931 902071037 928485794 604057582 637860853 14377730 444795351 898667853 985210238 836676705 998759198 462811398 866801854 462653607 602163618 118378751 406586346 203519190 399783206 162210758 474781587 837022055 928013782 756730210 939184620 658319603 805512652 133365837 866523106 44118025 306578499 551136683 837582013 157429311 837640779 455926434 489582399 411103051 802368436 372286717 694633333 97313301 362444306 122708130 150449191 977606753 991485027 282947999 298961341 465320262 930814390 868973070 980595436 774361197 941647816 812093400 874635708 823784613 955356424 786697253 865511086 678113845 696144167 70742537 998961116 971710457 990278448 928858146 946646881 366963558 481872322 296083483 516144056 418898221 904111323 596647916 851371911 922293615 963152924 375158985 811548909 933417171 953642689 116255754 428559997 96210419 842796839 837354327 938504469 926712387 973866798 660217855 870290492 198081816 375785216 678817511 715624605 662827956 976519274 346587079 432751033 542822691 888670305 993760158 994491140 20536631 360851095 309796502 943668135 834256883 935046101 683605094 844698590 149135485 413355333 531593373 846730938 548535103 724765324 259779452 728767661 426578987 594383826 95849199 634203172 513031031 717449692 51395001 313953685 741232712 891069946 656841683 729231654 166669208 620347743 263919245 393506277 92527491 436783327 808329842 969193690 918900539 966706874 236096847 961117981 75215422 723535157 631794379 743072096 734923825 812471029 567538892 716136550 480440013 977444967 487933144 802826777 990036447 996216006 14503787 295035382 442947567 725813544 478429597 893508223 656539645 691173878 753739053 833887718 926105963 937944885 668878082 808922660 195847296 918335113 998884399 998944304 226754647 572265895 563933977 584202173 810621407 811721214 85966457 703401856 417767040 588782052 559517300 883681635 319213850 360002328 336049709 715492257 115062456 529051005 426600842 887301142 797446528 948918242 989083026 990272901 13757333 84670103 637966751 827071519 881201650 918078231 153941653 772421573 632572762 897012227 210861603 338587479 110295459 207085975 24365383 801370601 37026564 948143180 515806201 882478451 785264111 958070673 223433603 907193665 305689630 414564905 8037207 177009398 490529770 628477559 330557397 845476559 370487238 528453491 754519677 793324781 450259359 824780404 379178805 685260506 742256828 835782779 888780787 904496124 485657868 717061859 436927883 463052873 919534891 942826199 706500564 814229324 602007020 902167218 993033732 997395148 96648301 268376960 124659317 549302695 167835397 956515586 543001285 600090785 651756586 937981117 740613399 786334009 901569022 955525643 91777193 194789875 901953364 937043808 906972384 911050356 492807563 774231804 835656178 886574230 537049930 759442320 631357587 849258519 798514668 969361111 693130070 879656355 477037888 562963393 125466745 349702890 432310225 732397810 826876555 855185567 223169989 838815586 829535659 991666957 170928624 818166188 48354241 681865624 491656655 604461285 321079285 754788785 307954210 931544000 553682475 666355392 792068190 960048605 453330795 856668394 912065602 999683697 554078298 991471620 197622022 524600346 447293954 648657212 169745019 457178101 980002522 989108980 298742007 320731853 1574926 856265480 702367269 962572576 376196425 598429065 612622155 875031633 208791673 471388170 235643461 454978100 930370001 956420677 923621228 958984851 395458076 421297404 26277082 395036279 983065900 984205598 97814074 929096141 537012819 559263484 790765252 983222058 421874825 970930613 556739054 888939554 723617319 785666726 799848658 925241586 553297370 966802051 679139697 774875465 194150949 617504647 414896917 459263898 794953135 937003707 755294149 827015227 817266720 901571265 977439389 999911874 145404201 941668650 581889119 826944420 566908951 670363372 64280527 874641094 638823662 743181407 900400429 996167027 924868451 998362184 597624346 948728317 707532368 710414345 162557526 805596119 126402395 369137374 570045530 968348297 213606256 722533228 634203190 853345060 825232632 866637927 252192753 310588469 124052259 154417316 755349816 823981983 707270815 853377414 858837510 981538977 586693178 674409454 74299107 537604458 118074503 884739929 891467812 985801344 562567971 900842677 531092710 842718833 503295140 971615960 393587644 667200859 557362948 800632258 148559136 225251499 191292584 545955601 824883890 944826675 123790513 802233288 751133405 870579151 642900223 673019247 421260579 519426258 26845970 604302537 8994496 122640164 50028182 868892352 86207466 698996649 907188675 913732567 403938197 559304160 420922201 529001883 879764791 967702535 305531610 658691113 848009660 958688979 306289822 436433632 609331007 773867914 572324624 642669840 587005274 610229638 425023236 675463894 960720734 976311040 135246852 882952191 470836275 492228387 141664740 711568003 317307512 402455562 795856784 944449240 450246833 808612542 642635155 858444859 625909826 812638030 740033952 776662702 665623858 675419883 278766848 647193491 482175384 860726230 854038571 900662284 965411444 990305495 7447027 243521032 987557411 990466899 19501830 956577314 317138093 519375582 73267526 126485744 204086393 971802620 304841472 761501825 948541489 990306993 690168715 849612969 432496164 486092253 387129361 957192604 425849408 569306058 169007707 592781460 418566206 521307235 130941981 404480481 152993049 683807421 370531587 469131277 974070100 982110288 537684488 825985416 358003430 839582026 396977282 692041882 69818837 358757948 780993942 961121477 99713738 562186030 674156911 701974715 96464003 556919502 242124649 991541986 388608407 433783289 446474009 737458046 673365362 864221804 90270205 208874909 822839010 912376036 748895591 899916071 460112903 498375801 655286450 946060714 382593701 450855121 819495635 905293207 912898934 947969915 636149128 900356462 920967733 956635394 150885629 820417213 29274028 434674238 126365913 377427982 117233217 452135874 601455153 712850098 51267009 63775329 580625650 869389669 620612030 745895522 291342002 761226616 648978538 834029641 604189051 891242585 961892742 999378171 399216986 439418420 799840066 841422633 363643500 705995933 751731514 908780601 33514434 261698952 821664878 885677443 507646170 805017463 515833259 935200067 432512052 761464230 641975837 939052494 326436065 845538823 962204793 982412923 583300611 908768651 669494684 853689607 810051470 820226576 914170186 924646684 776695847 987587687 13395060 882268128 956206592 989520299 417561809 422135847 334039089 351807400 430723506 514627554 714333569 727678840 344120181 873133911 85606511 158569086 717988737 752851073 611574425 774952911 553299860 598814640 346082232 410832549 681758995 959070343 487908115 661946706 22258758 42424672 412028749 419712469 90554872 315339168 455367035 543695012 982363828 991133624 952313169 977424713 258754944 395869554 726913980 900347083 471157057 734461220 831727699 944318769 66826095 944667508 913777886 982534707 406782093 590424927 34079201 543666117 312034146 648668000 414376123 667826854 873123208 927756398 210463546 321419759 916369449 975719985 118214642 628177865 617000043 782760409 994332530 994412249 790056525 933035718 279190871 872922030 490484188 707644236 877460413 973603168 580747970 757562732 200211097 508154781 826457402 951691695 119998811 755124349 571684516 787668159 87976605 323869908 570097924 654554731 701661035 915167709 57104569 113842933 240157196 437879640 462546486 860952997 549719264 983230256 412393815 413416492 600343191 949397888 616940853 914009038 821859668 895257678 69539031 979259431 522592712 975820589 882050679 950490333 606206469 809343288 761348278 971505064 40218950 355143858 887946199 920499122 415011765 838157289 862729737 893344456 380441650 970534587 877293074 959994775 248935838 475762035 879662430 909976597 846306986 979914518 350880763 362444348 381753914 520192208 798241852 863059291 625935639 955366204 627417094 698177758 467688568 477554835 784454859 933756867 480711176 986805302 778800582 863867046 931040410 934750488 255182220 630200586 212880810 377894246 301490629 374465354 394909076 847510717 827064147 876175122 772086140 932588497 27777203 614886497 124984984 630974456 73340410 151870478 439230539 994894078 32106552 763181026 487208526 880462494 876297929 935705535 142077762 204196190 98379336 947715031 472490371 697108884 843305409 936705719 67347516 986990383 908367425 935495324 940600584 964543630 695720847 784414003 547918685 814347675 539520322 869620466 93030223 714485945 996480262 999807713 773608463 798523879 188042161 389336647 845528704 953189470 123076559 740600613 850991677 914601653 675606201 743277031 490538456 540481134 166068294 509067677 998296134 999640811 456216384 485797479 50882149 912853234 496472650 697559408 746398827 851505049 757966114 762709540 746114902 824920694 480279353 933457906 444665913 753875530 724085955 885619530 211008132 286819070 843113864 946683558 871627332 913654833 856093893 890324960 799872325 936184650 457778040 631342701 154758122 913368103 779566938 871561732 133630439 474447269 647408317 910907789 982567346 988387812 498678607 605921350 222116226 884768771 277964714 665065807 213637398 341667769 662803148 770010393 519122672 792593263 596770822 619752961 914836246 978938274 404518791 675326094 980836353 990757545 530702874 650464629 802740928 812520543 309115924 749831647 707092433 904978489 813992692 884674828 703742298 849023208 375733702 981682871 705504408 973530642 199115924 498443174 296819198 873707720 164259892 479577194 245511058 986389197 475017319 935060147 60702831 789496361 274560900 332951764 514980857 682563769 408718824 989132860 323843636 871524961 196910918 803144830 389525755 404960383 221878318 840492788 218207560 804482992 538206267 592052198 396106795 798664659 774802062 999977095 930118244 935093915 966146285 996249537 315889412 416328283 438367826 724955375 267102990 520613386 36017584 870045578 494712974 940133192 336328213 760345266 478846684 746594435 131502346 656716408 185511159 759783950 461356460 702275360 277916332 708296787 176780193 807671796 111098573 728750202 502153758 802769481 324169968 852808540 788765534 910654629 494689786 920017132 956709165 986792496 254926288 941842910 221546152 870651814 258217067 273866177 856526593 930797639 651091976 755166593 196508413 789451992 256289868 860937559 76950830 324161546 316767287 551950956 554114695 864617947 103868824 119473001 213885246 713519339 934307409 951888574 969914474 991606282 479360680 673910592 592495278 947371640 77609626 428504991 104272269 654042295 256514467 363745560 41362936 263136721 284201651 912025985 985227559 991202436 942575777 982048507 611076357 918390427 282911793 971491411 335126212 503974030 632836526 825904039 125777270 553330481 886131828 945141792 953873937 977365594 579549294 789727140 383947857 717758861 113850281 599916989 694053764 976932367 905079461 947131570 503853279 846286731 127686519 184889036 852867277 976415523 746735342 783831582 725144379 881195253 662554267 866162692 700953940 872108522 613135153 866043199 800223040 912621939 597001246 859611572 172374001 618844209 891139562 907465004 38465266 262247092 314644374 651032080 199780249 694180698 743911370 998916016 865908404 872940301 582261081 930366877 567330113 621501149 406205375 695006203 140566125 479632992 483219007 733440776 521280820 691237606 27703947 417262859 480335581 569967648 938659362 987168683 38988093 360545298 303791197 381826299 561820259 613776748 83768101 372418319 875223895 932246796 271973009 532169218 363767576 890261950 271254037 687182558 999042647 999907324 541683365 584484901 60604832 521425267 774673687 929968443 367577088 707472893 337830065 644576676 310033609 885826364 144919833 541366786 672764600 764342173 566687246 843060879 343319138 766049298 841685406 923177507 694526299 776465690 764071413 885153203 185653652 947198469 706104469 940643227 790503872 882500338 812757190 926369914 47983115 447120637 124624942 610794937 324037450 739329054 987510124 995307071 23692727 807119301 48307420 980187669 956543770 979407744 847881893 937296358 369211314 511571277 908161114 976315140 700277623 939986429 665415236 877457875 602674126 937502453 640004869 793378760 823086961 968139003 227804026 706562098 309405185 935588275 405107124 643327695 20955805 965476252 371625818 605386473 265664649 404462376 205458854 760294997 83932368 467967006 144049373 227098416 811858762 975316406 450111488 673992234 757554411 999907274 487378266 511733829 369223138 542439571 993929258 996506171 244755303 556027939 946728996 952786484 906232152 949381127 592372541 933841651 463123372 947637026 432365662 565072418 438145434 538937558 521654758 814768553 411290182 433591307 163758861 710532578 915695145 951804843 393740854 449548149 239523858 415599538 443439230 587283439 94336117 309233226 948316845 969986154 619890810 894630665 53189636 566982519 585846480 934578179 191888200 367084582 320376797 508069591 498415811 668657462 421563374 460360323 273401236 892579679 212518284 218870984 781518816 931683331 43231066 213408776 914650209 981390576 552557360 608367864 791939122 952595538 931816532 999662063 365926416 411540102 25984823 525004326 385155950 643372649 428095139 970611775 854517403 910018644 310886246 717451593 816750376 822632726 484472770 987803030 792182741 810629262 637599224 679053105 260345788 405185649 477978534 847520314 280372315 885892298 647206397 723852040 216735589 626958863 956056373 970035423 283594295 690284741 45540354 937755019 336873478 495059728 49949408 534035592 575282663 794167701 370327079 689626260 172069574 757434278 956397817 996789204 729887073 828129192 623704005 658009293 342259502 586012384 334306699 552175899 9217872 265467906 876106051 918367257 587973230 904843601 103231807 447127787 19247223 422148438 867720097 984562366 958632021 962182515 499649551 839423312 313632922 774842724 840638004 979277616 741445157 838379896 883980176 931741913 661485547 750631335 667234459 800681903 106887806 943903541 60404853 585707199 742506780 813957865 783296882 904634297 825985476 928749143 915479201 995133706 289226641 924759070 920615278 958632451 584453421 656779686 948288009 956632493 481038165 548365531 160787935 441115068 97279476 181408791 191774658 552539197 617379567 904649743 514152065 684525764 5353218 978275169 482571660 992749291 424515067 536451177 532566291 617305621 698772018 742950670 771643 13611564 931337966 992712451 485155602 533160203 432805457 719450392 599515917 901716202 807930828 911658476 725518108 811393874 778610920 878711730 248205253 920526323 497795613 853622001 354442470 698671881 715257206 841502340 931864762 982194904 323142824 864252310 342582748 728580594 920464619 999972595 214206172 613375933 822630248 964780134 342998562 815550151 520999005 669361655 574536728 780142120 968719551 972870367 364131184 462047987 239781040 649169993 936339565 975146093 502182815 999330255 153060657 876168330 955400051 961954870 728615944 854503053 867538192 890283128 89270201 910753910 734470638 842226703 390093489 532371879 752397725 965579092 664772748 902343955 936260999 960484720 292200319 638817632 650617953 776961458 6798157 602190499 732572854 957920926 549605477 612400731 106062976 529529459 120142563 746518022 259869040 548347225 225746881 520479824 698292161 882984258 107088155 687743079 360364275 867875977 447259290 675255457 456042319 504579081 335791435 507967825 158233574 281705895 30636833 984718273 838389478 908728245 277925222 588782650 2465633 285333570 227854502 648665864 993467446 998156958 450942967 575964285 398348025 880071801 453938358 891198595 761575980 955692359 356200408 578985510 350170848 783510148 718787762 773933607 274491758 297794594 626308665 958187915 336510669 534456330 40217912 150499310 946491952 993212873 765685897 775083746 956453874 985171111 735057641 868175121 93664609 558794850 881185665 955343992 521665368 617698520 836753377 992979123 376171433 608287855 837615112 953842693 150466164 815949036 678859863 727921038 567365900 608396099 144795978 447810885 976302959 977741055 849219341 915627759 556714796 796590125 696745098 817382911 846963952 884201427 352378829 578396015 357278433 748291173 67208073 768285859 91923970 312523258 64109499 761210953 392841975 511932018 769563375 828518592 191116401 946604053 934994458 941215250 567646703 857645218 358856097 435811719 793176451 962341495 604124923 794667648 165222813 388720664 578470046 596650671 598255768 618958318 623197292 742582004 784324626 854112626 12380755 527187402 604520067 618620077 908592320 994733088 98921043 623346697 379742293 655296901 552184140 605819384 251162039 719953602 85968815 563861488 859281850 959529608 223125587 361178913 584832923 642251567 326722171 652697150 603684414 942594326 908679124 919431562 294143188 296297879 407336646 536728146 677111374 761463188 821098124 879082830 175516892 475413049 768856246 843738203 19609245 41681383 479298562 585164954 167319049 211930035 178456390 909320260 526073879 531903857 918840461 941792630 873891394 885534518 610924219 659967266 299554090 752665687 411622163 719259721 987110268 997048000 465560129 843490459 844139577 863329624 656908922 866738659 215317293 859797568 90511639 478896249 16757545 489244108 278582716 977921795 296143312 597183165 140005980 207336480 997605931 997865986 302051405 582705410 944159137 997621718 648753607 940653087 496554571 977515677 609809710 708915221 707460191 912449681 408890089 836617395 703739617 716365791 869480577 942518885 803866444 929541854 494615607 558477612 110314451 878302828 28148528 582602982 743386407 777187302 766028854 971395189 590314302 920336733 762234795 792193027 37415326 320385950 325473564 991260483 965833512 991818175 708860800 759458812 72963148 174760995 809767112 897336085 188781640 515446438 804480041 921797455 127393826 347950565 7094753 316591245 901812503 918785815 925159335 928124298 292298083 595648306 958134432 966678074 587553507 877084073 989699494 996076541 199622513 475081389 840032909 859176337 717951842 736410739 786029361 926880576 22691373 581486338 748060224 925639305 173658345 976354417 67951846 171291325 422585011 958737873 132403283 788836554 393526905 750019643 333666738 345303212 105947837 225187815 516573188 951136752 971688114 985689403 655583567 965622920 976309978 994982756 523780615 882464663 6548713 786267228 587776719 929625407 792400151 983537769 571219774 605789523 443745593 795085783 428926321 797484353 962415265 975353223 97340431 395628625 481939976 746692702 457142414 968673589 176579315 832975052 402111521 920116651 931209866 992365728 265174546 265340981 451068295 471893297 889920478 894807123 477989719 987105511 984064307 995344334 384199373 745887617 856897291 881901924 158409742 792724423 7456583 982410185 589778443 952924373 410459180 813601601 19907114 98517294 773849746 865640988 899570626 950717963 14001611 159301608 266119809 302200000 680472660 759147836 112569218 353340298 454280365 708405611 102599558 236692275 294053163 380896097 331180647 878343172 252133467 398552600 330025706 798564050 158017238 669487788 802543160 981198294 898980006 917292152 967293221 971676032 367402519 432699130 631375074 703747694 998859217 999126441 422676850 672768106 93839439 993818195 319569656 559392205 55735423 325829691 897119619 914587780 526781473 929072345 895665438 902995977 203523911 898059938 799804563 979386743 169889263 462117838 783720066 842989130 250205446 536387131 628009959 753149530 488616498 969459186 10974896 290047779 552883415 846626463 958158062 971749347 146888774 260963724 446630484 488395525 898090154 910552984 989247042 990188889 488308484 707202928 305726908 745326400 33916259 245040022 108576760 698717497 135919612 576337117 660375177 841463690 11210043 581551719 577405774 944904362 10190525 147365014 359128449 898052998 99914948 819211394 557790492 638613187 4563080 425831825 459419056 916132619 344351119 413232545 218950165 976063372 710767238 813029691 794703592 924949401 490254665 502725239 369472863 388992045 128009798 903809856 159591523 805404714 578844316 904568435 108716973 945419685 886471857 923311010 218387035 877884574 235062123 494576898 223899779 263244041 203287835 681522783 154804493 709129505 33760442 929749860 986891536 989948414 17349793 529707480 95801375 609418156 874670710 931061131 198295503 620835328 109539598 834190212 318392891 596781049 235844157 583629798 8563312 434928077 395390535 980086452 415548928 727434142 504123085 672332851 79952223 538890679 72631279 315737068 747734636 892731909 346421595 646863276 712845382 843220274 587187195 991320866 659083405 853733661 156831726 830987700 945736227 946180831 895317513 908541216 134600401 376770315 233546443 453977610 134254466 952583054 355378751 932841079 192833211 876946342 454063248 567808790 537670759 973343032 858924404 906479734 786139445 920162073 364543717 749336159 52891821 999080144 789497782 903208472 732994241 906925290 801599605 957330557 856474100 928367446 712707007 799942927 100730094 545886023 988291965 996841382 549747766 923641476 48425371 550626458 266594209 852157050 858274335 998682670 464073023 509927871 383552339 560055471 485422894 744755924 249300108 355671121 661699761 893931939 472912996 528960204 461241880 542364499 230441102 265193783 630289310 690462009 307243657 986503101 809285040 863376689 88971981 238933173 145774191 628882921 690095631 941078797 908076218 929009970 405947097 682871544 71225367 707194909 229026105 255461920 861226588 946975323 677919517 917606056 546047584 716886683 621567935 794001629 761311862 986573212 204178804 593691074 117727162 259507787 651940625 661651061 502280110 843434510 252217672 252227769 486120248 961540718 709820717 834356064 509337698 571948560 717333929 947998626 145092302 644019627 230888365 714120648 927136133 942290193 576750791 616648220 536648351 701316535 316064793 911507164 111555110 402017377 875947811 996956781 484888906 755425021 868552371 972296800 123253330 517123699 283152397 836853521 375239022 820825206 396530639 837168294 426175847 478835785 745141557 966624647 94015184 638520699 228332765 395834476 198357437 219147352 608936747 974766885 823707361 934307344 468304030 517385339 504059169 617716759 133094454 649766180 799379967 966264991 277679970 733162237 41561234 817127948 760738059 937378495 668660213 701066761 223164110 566875845 256965409 524069364 326248967 639713996 309744433 958269124 665045830 777066807 814178326 846230475 856132827 956139058 361147550 369623647 473311196 544043463 152420438 888374631 565648304 700313436 805287348 969677571 965271204 977912534 305881592 630656852 916024305 985316762 614046034 833126270 462380568 479380738 693660234 888821725 861698438 933694905 984156647 986697143 330167075 804176704 85232954 733812407 467254609 690262649 969828517 987994543 989059786 993862590 72902669 367054721 182701664 329429002 105838955 750171892 788366810 956150258 472814637 624982869 225326078 375009941 661233529 923459777 209595563 586583771 650720333 692258699 745461599 799421225 294936265 728910312 112673783 815793342 33851478 694242973 118182473 627029020 358468398 429815842 759843894 852578745 710098866 720375379 263142914 858324045 268950269 970897203 15147777 299427594 508392154 603005265 593447731 944735012 160314031 976787105 127350252 714430004 150750983 643321217 603535203 890989036 282516105 724681709 295646958 319983553 809437383 867050858 661278233 661279148 138263859 241997088 696508563 728231741 463098888 700124425 838451239 914882876 269667731 338528873 985292005 985955631 83193726 350403355 471533574 726180643 743244307 770302176 840481488 927619207 992616708 999606046 988539086 995934310 270215514 325922071 369278308 944711245 70722117 596806884 725429283 791794322 132249183 213229579 39694055 958169308 192556985 326518065 522174 672350909 104616136 745439705 234173155 772540064 980583052 990011776 817411451 874961892 708517538 814388348 867186941 932202689 409008588 655216780 852248697 986573075 596080087 864123690 353272828 975874752 254821021 379109337 371951325 930457347 706321499 778841936 35765405 136257142 831985709 855561811 907899224 917743252 546532388 815208690 401683336 772002882 559613466 595305909 533089133 951027434 205774541 802977662 711433090 983238878 41781766 230038418 145323844 581013169 809253978 840571927 408279372 548788145 929577311 983123518 718258555 984246349 1895697 425707299 584380552 922604947 900870246 907072552 350919818 814195210 984941072 985787478 407986223 507232310 424700014 998703351 348244763 685597094 975797004 980066522 263185207 832231734 591200925 841694932 198309619 404161091 934487257 974158991 175067532 754859828 816623900 903722154 450728582 802246542 602035827 893539096 657125906 720282911 654039562 756544522 782328849 897081181 599487821 635399992 364431603 839207797 563477890 569830128 503613979 767922996 905485298 937450272 393664392 621302956 301234769 604274006 244917651 647935726 860208673 884376140 624843883 962416372 804626010 923400576 927176874 988459315 164828883 234315408 592800435 648664419 858048694 895770988 81632327 773092462 532103360 948733971 506331338 871575585 799192059 847850015 693370453 767451930 19268939 167134784 912725759 922029370 69443433 93659938 475334486 567763706 140359207 929563590 96794439 271027700 850504448 926451611 885089540 928739250 282481999 500271186 470603098 738714967 773187901 991007145 165837914 892913730 924135048 967326981 94357721 287005379 622741618 853116400 97863679 549676526 319789830 539405039 329737918 644386563 368324825 425746410 940922639 949891474 233701345 281977190 253111497 616891384 377674275 965786741 771518051 914688900 709306547 782483515 784563939 821206216 488532927 668794203 513299695 650653268 205592280 842198522 14345913 981716041 52673312 754400545 959646829 995821267 589024273 697554665 654002959 828570418 542305813 728293425 113792289 806273217 655965523 800987307 56934426 945065391 539337443 728308348 565706600 584891525 686772918 719192984 226760658 933151468 573896432 688284458 613794165 963007892 452831584 696319034 686370414 688131550 998343782 999137276 98988578 196710908 533545504 790204411 139112159 185486862 689698909 792118017 698804542 911284922 68848661 702943551 863339940 906167054 151606341 579336838 306449670 893898918 489834918 898690832 738417070 803524643 519476154 729041377 915389098 924900296 465428608 890049212 936588724 947187790 694555668 723742118 534874096 607850600 674765653 908577012 751473465 770994977 904362338 933443257 247260958 918075819 461914748 820783152 738303265 993045723 197004219 278580524 502898219 921416235 251576226 525330096 643940452 947202187 8596716 282783959 201540389 232779719 342025607 979344120 536249876 582559254 438674376 651296468 525298865 978253892 65539204 131066066 612323444 808606242 197373171 631838201 273117364 404155104 46791351 267381567 69336580 755544693 140210795 725207624 189178599 343721914 29081810 195429496 349677194 643764983 479971141 532682837 476519191 695205968 900427903 913350575 534903348 757386450 118486959 562011469 401352558 937016239 294901587 948150661 664353459 780333583 795091964 826579360 723971986 862937047 958273194 972813791 990871309 991646650 924426619 960161040 74339318 750742367 893503263 956266557 776405066 921770030 131324554 203586859 447817889 546073981 306747138 344012650 175978226 229185338 969413340 970805418 524601152 633238728 295155878 928720509 602469330 803566174 829833980 934451054 584209077 846671517 787800968 926420512 790233288 950276854 246719767 396500863 979985047 994491045 835278725 938253635 517882686 612917408 691231112 856903316 160216948 464186451 475031426 896438204 743230981 837888289 364515942 856548820 836782946 936004515 172790846 675676828 2854139 751593083 217641123 742112933 473688877 561156356 650006496 953543421 579445205 764534005 32370335 601074400 959613546 988908508 887063049 978246306 982171981 984753078 13202707 758046059 540654258 633929978 318749415 572255379 927847726 942470070 84562053 998012950 695439397 901144944 158645346 286551460 446223430 629447303 834026978 858035078 255053413 737935326 382364258 686594736 141177725 367113725 93872811 244774460 570926256 645421671 376503113 525263498 652983829 973178141 283473915 792356157 900124679 903523816 473209430 790279117 118977784 131679896 396849959 642423521 662692335 781887627 286730585 529797687 753515326 820389924 163851023 452549356 923933190 927445706 986655523 998137360 369965171 412812264 473271582 518083342 786189217 847750972 560491445 920246244 14007395 841280582 454739125 849978419 346719164 838107477 168088652 308030670 431388263 646552867 499482561 600330657 441868181 882949710 433872194 523557708 987125270 998656242 908629364 942267798 46652580 305870615 824850338 906288695 168806614 420202744 814557979 889643651 906125465 915265542 924861688 960346038 109255088 995925800 45572975 395100591 24317703 362518487 567151442 990800645 572364774 680227415 680435067 750382831 542318273 730900434 797696303 960189831 447338584 948005733 979988972 992965884 326567333 543630925 93514006 528143571 194125956 472913276 450894374 521964676 822843173 905763853 452449578 847755023 863663188 895317785 778140375 804779897 93724547 779145534 69378831 417128062 609552255 967724452 722897613 894465480 417345837 683811849 405972443 854872830 150356912 424804959 21344387 932488862 661494999 749397210 186241995 421951591 975537914 988431938 535581076 877921302 515859756 671664085 10121917 744547184 131691370 564726880 976795656 988906003 997350091 998296946 732015068 907845153 143199261 701034651 903046726 924534221 551254117 772099150 969285440 995955663 256387173 867863224 579563116 796827443 817214759 820510992 662305813 683633920 972199757 998690598 347654997 885056203 408904564 904754765 803915311 933413543 597681279 671965777 700699409 842299525 231571696 978529787 727965894 897575189 377015774 405214371 700991526 715279152 188637633 810632080 187941048 712914809 700296044 897155747 815744043 975030956 265402514 541244070 210543307 671649568 394778254 656206768 541423173 591575582 942846112 982644916 211317782 631897030 254446953 269505973 554025026 764385046 21013511 438764599 147483811 482101297 773261033 820109209 272554771 432712834 663121888 839182815 314291763 750548654 297786402 714951072 479194855 858654840 782558129 904287391 122085654 622876990 343702083 864805504 587329571 629879827 460245927 735293048 522489504 739204957 716942057 924553585 693503037 833747465 877738342 911519459 2777102 928747540 313255349 859718474 42266845 139618572 539727965 924587454 772653309 842857169 956756861 964855602 972620766 980043375 388488512 917326430 333051728 579180644 847129457 948903769 983714697 986513895 886363682 904651225 277122831 521922737 506586100 976450239 837404462 993206558 120363942 987538715 342871236 769936690 251142064 769106208 225829398 308639683 514515179 996415165 185417442 244797996 737943141 798829750 600985964 764645643 887142418 973404838 143186437 559203089 799404818 912234786 714531359 786522057 152642541 656611284 834037731 979208947 89600604 985019225 412837717 903055378 145842285 993092878 863482097 924474923 604042541 863693008 562688183 584835522 131097814 672494667 5820784 13576322 33826336 831499467 370177313 904430201 704755353 906017063 831635107 917049975 269225793 479324696 747217464 961220637 685922590 784971269 500996849 796979118 235768586 768508679 387314722 949188508 675015519 908541089 217505593 893238378 570027162 954128282 968678978 978632741 196173298 839396130 240366850 428388070 260044290 569400207 229350166 360561712 47493749 447395548 395207482 497768624 842046850 997544607 879888848 935079678 249009052 776178825 874546841 929278340 43448281 242710101 214686253 722913203 537795775 572508276 271405902 914732867 460898599 663357187 246554502 799747521 263314268 582749543 774539216 956661342 128818633 490947912 7441083 856334901 794340368 982763575 657403226 943913462 117963237 663788447 573039702 850679463 151395653 708830258 789904319 832115797 631791747 923597212 134724535 365230565 83942783 323041547 428206193 477315016 865528358 871823963 801957632 983387835 758332584 812231155 983967185 989378581 450698002 673752907 237398919 708097192 883304512 987261271 379752633 553017387 905848394 912807061 429793026 903638076 714783574 721914535 571009809 697082461 159863818 407958572 677784804 974030236 851173034 911594947 371385071 640724930 339740817 821421182 46983195 698665756 685215711 734635196 324412262 954057029 920037193 959113177 23846774 537051706 517455678 672587379 420343662 577615208 377762362 379260647 764709226 819355255 362855242 493128804 379599665 641693840 576538816 896403694 40448726 462847071 78451509 738230294 527043982 904780928 337527584 559458466 673091270 716819071 865733799 958219015 598272069 903565887 227038132 906869500 340795326 992137989 151333755 989056784 898623580 959876879 659824489 942137760 146247178 830469478 695076800 935859369 884307746 958641423 284615430 913469446 943566845 976805404 82365861 784066723 837039303 859042242 773897961 886954846 175209556 247760533 91382471 432943506 448153421 882223709 362362184 857996045 153883546 825014032 242982494 731284924 935796794 974763666 215005477 420458616 347971976 591283493 434534411 764996467 548592963 575509070 416586561 680366938 503820381 552042053 177455722 911478857 941674402 968131775 335747920 679981651 77733114 115663530 338840990 964325286 356715379 850434695 5477328 377203769 996367742 996798545 686140744 828040944 304199139 665464926 916328714 957781592 386423344 869115987 366024648 735591571 370466345 388778087 958489987 961280500 872674553 882160012 311464529 672511543 283067295 804720093 985519770 989501619 407865232 660496174 837234056 897484448 503620515 653574140 502452812 885396792 747752637 858410534 679150728 934016990 312608491 793437296 938833904 971971703 279144849 749468809 757635662 771423638 993505544 996245636 149127226 851576463 492320073 795805744 419051491 522179285 715963112 911901737 486516548 899071700 915987414 980075286 634023057 654190695 669029425 828258137 549587178 640394006 282411113 625423342 606205830 759530476 278686555 367454245 689065775 995494030 604096912 605253706 634038018 634966932 920940194 988457883 62589113 577392875 228902044 720111656 991020592 996820666 740745663 918626947 478845238 783694311 492200019 502419543 388474452 816254913 24687136 814275841 691014594 715020000 25687481 339254386 687217010 777399383 323496498 621480952 935534389 987051022 251810352 951105272 527570720 768779707 925184677 981452104 785486336 954572711 367920308 519007004 545623197 792632260 67022406 340510678 974088067 979007247 432078396 855067272 734394890 760086286 219979758 750957973 820030700 959965571 279184205 946992296 251791559 464743859 107104106 268655012 913154128 993120334 699286721 823862870 257302101 558421756 729974478 878153475 824723960 969488040 259739110 913596246 866070232 885390159 534849162 562559817 253046244 444469397 855424830 882341050 857424909 925282913 758412694 962481236 376738048 665674311 63962409 375422238 230110833 612339002 148530773 978521949 972635591 979037195 823321946 842633992 118812935 310434019 396751946 758411099 944055687 975017121 769774409 773321264 525841764 602386443 509939634 794961794 940850192 974083052 801283903 962583705 323501092 998717602 67275294 412308744 41743529 359852255 603007832 670511760 114087576 616747826 763635357 961366858 873830629 883945388 678322137 834687452 817490288 887708570 471229125 647700527 443232806 834806188 936588970 938037513 226483776 630650511 158766702 818612843 182839400 190586893 877786026 932201949 465436572 690441839 12437450 463320759 362400990 738849940 123442836 211471036 108485098 537294325 529666600 972847256 351195168 643903778 670940366 745524955 224640132 773663219 993706254 994284351 875557560 932182761 58061099 619555879 552182701 697067213 699980543 999917312 596084256 955392897 727937203 976153660 292517423 458526244 256551370 347693625 623950286 902456359 441473013 903330062 149238801 489971087 706398868 728807113 727836427 751643092 255968461 901635537 105002924 343053310 244344238 684184839 925416295 951048027 677509148 940335413 974753458 991291331 830447335 895198604 860313906 967225969 707326638 961620590 819996830 838186991 934192255 956028725 525338151 764511135 154979906 922666094 368559917 595698303 291720939 928133943 434384694 645399992 319876049 497620274 470128938 707732266 943585557 977446912 352269409 379712151 580870588 732932735 506481706 690251566 26880366 219214692 330403443 623577773 900814901 971829442 624204548 910030641 989847541 990058316 205008223 802480860 207435025 921623077 956855410 966763590 904600960 997060247 300762389 367100748 157885387 475549390 599823891 658169932 765190130 928824648 155412311 757826233 733484671 766333876 361550106 507380345 311831026 564293336 301609876 887052482 416654285 974403561 117376367 298366289 640938685 883630250 413204309 474072536 52544000 619996878 564273572 736609283 702727687 778345919 361071350 523986033 528364629 878704325 453679136 627129325 384405303 696541268 139514827 218997434 684711891 722038914 549118378 620238513 385603960 817716630 483695895 832903778 335384547 506115958 309177849 923591610 682366664 917097881 978641509 989253425 588922942 730279003 4722213 698051285 537873010 585964191 853677293 880245936 229265813 332107543 550462364 907024151 850202736 922458824 169005512 578063916 39243596 901729567 193080683 866495252 827240147 932276239 679152485 918581303 44407419 294419988 335187142 673491743 151389848 222020578 856711611 963802476 43540230 637908239 952730361 998393825 145785010 346649633 408599266 978615067 123228472 277927066 821415483 854042456 33401415 802097687 90406537 755624507 632808144 770821423 729721801 940153928 160258699 346313522 667706385 790062246 614492367 762183873 264149445 999925509 101574421 539993820 12228295 737232525 299710612 927560743 258635250 775425518 472082952 745904372 407886513 517358353 506671670 586772239 685422022 814596086 540016454 551655352 277732498 423610842 129911360 309014283 497736818 707443834 26236885 939289312 220903047 854043932 7183152 223005875 304510661 581125434 587095363 662819650 553825978 885689965 46455033 669346026 734418622 751247307 33533659 629309423 473803244 812436454 69042124 924374927 657943656 747574545 95022917 128705049 370788550 955733973 605996601 860048272 333934976 699570025 577487709 970727685 953298877 954257063 886160774 895803087 571926323 820629926 413412925 494396580 664569318 748659355 528211276 874327871 702423752 937613241 233328988 998500054 109764245 497774540 500101565 641616448 701669670 799393946 795991753 894499547 287614255 399525165 366524167 803024045 807866104 989570031 843177038 913080166 456917767 598169072 31634063 608190800 658654949 998096079 881443841 899882495 719969849 991327274 663055829 758430553 496907381 652310591 89736461 389264405 789401653 854278174 889608215 920990861 905056855 968280543 174508206 960675465 773257340 935972396 953081921 960041448 348604418 425320166 214863158 339163575 603054833 671747927 728135713 837828197 849081680 988944981 22592647 496577574 581013049 786484690 371632002 745273128 36034690 913170835 897162324 943939239 234696460 918941545 196975020 788841606 532372453 546196966 568678248 953841230 226571457 991010100 498508105 789056353 528077131 656326464 330261738 455872886 305228316 477940976 19962269 996231695 51360259 321387034 909234126 946881555 689974184 733183363 410414760 633577627 941168880 996495567 732718892 757995775 971670844 976293979 208418509 219978860 514427593 801206944 572385045 837740191 879667955 932490987 466438278 759315755 494238556 678635596 702512063 975218159 626529995 665190932 408339757 620776324 177134341 965726439 317729100 574955757 13163120 542822677 430799598 894117621 134596586 428086313 6253918 89103684 130251645 442742688 102606078 692975515 24360047 587214263 684339713 768945643 817881270 864425718 55313837 973355116 689188482 778751155 378118536 910035097 348669741 529546624 214984822 274912455 193224 318865084 830340945 930510345 976366076 981923511 367794338 907582295 160780377 817059833 316337440 807576040 163035183 218634143 877164631 940338133 353869574 535943717 391693942 777008188 892963406 967428564 279544170 287873239 210754007 940958365 35349380 595094889 427202224 502416718 816787751 871228058 543701166 574720924 726104740 727950469 960025216 977881607 93535821 913050077 868801303 955711819 196760844 585646335 330807726 875004470 3842381 505662616 392778747 875242788 742332366 793143523 525398660 744225491 314171504 979596297 203275889 711122089 170095050 588591874 333450134 803338126 499826874 641995598 978046516 998637479 261919988 898776754 291853644 706722833 293037579 378565930 758391462 879645291 3816146 188225873 386535725 508189821 180632386 520691873 583844961 899645118 261368216 806422070 380755561 616459950 103951072 813992297 925335041 961634569 1080419 998117926 268121996 578149429 323540255 902841553 868741248 904585078 276572125 645120381 439103953 638200702 729006271 951379081 597744671 870483645 357329374 653047413 861022844 863595197 228000955 255960744 857179332 871900887 398573592 967814530 220322212 583051371 132161981 913059311 687537301 834348178 89574215 940468449 555514897 886395304 111028748 626536855 648586518 666150742 802824701 817398770 702359019 871505621 461733921 684385563 955018906 967012909 210457187 838935786 473263686 921630783 641364575 847210764 439819542 905168985 224312682 244745906 604861841 824673660 677665267 995547560 537986871 866273203 900313110 963292935 466947611 838051412 586850638 748904198 689107644 878224843 8081734 590225665 675451567 712399641 401871487 751764728 307614819 411693810 247455664 964094180 945441282 983114691 853166904 981508384 821331281 840146703 801212468 905034144 586828200 692633922 77369383 249528434 811934360 996438376 766135545 957084453 848874554 983557906 480849915 549945479 832298155 943267739 211978747 239398419 934402529 940485871 634383740 907972562 931689569 958039017 856983377 881288811 177448723 970379131 658930123 859560893 537820919 807041604 191915654 284859901 128130236 258424770 91130789 141260130 12924987 897075523 18829193 636545839 950761084 996420711 899119230 985978401 448318272 991965595 902870994 998033259 891425773 891954166 1347744 46730006 117955393 902035609 945707653 963895370 779045280 838411322 242107990 287170783 847169916 878976448 394836360 622713132 180221143 880728128 151855212 519339933 109096058 833987950 255671192 707694059 370573501 560472468 724550260 797978839 491448735 541429687 633724085 671964912 948771075 979990527 711583587 776551001 732692088 891996256 144796970 362645120 752237727 919678686 582066759 880579052 636413407 889043448 809396393 860780108 929254042 961399936 517683428 636200568 665498662 977881754 274252894 818160455 319805930 764083217 866345712 935388328 697151785 708607718 3680962 850262513 848489709 990840820 484539042 489241681 393789881 578895411 883288886 944533520 686372476 986123009 360788279 743448000 797291649 956758900 568484304 868431991 892679995 961355434 105754167 775889578 26296762 223127127 674828759 861068729 222218426 782975839 858764105 889189348 946458192 975372156 125979588 777497865 505004314 939408473 906292174 943327408 520991007 613955725 506920672 566783035 860357364 874309744 803760109 810240869 436091248 845259385 581219525 907913918 453800345 670303139 115193690 850013379 415061260 750925543 314262621 544103160 769325380 780947444 341594673 908518251 306636248 914287688 501838832 523558165 221415565 268161403 463712481 606788491 652431197 928120751 406891360 901524602 741053605 928378524 233133213 783643416 962950762 982227828 312183076 938343484 866343290 893259418 159430716 596191668 382814193 590723149 915594689 966435886 349816683 364093930 172336215 943539498 938459153 938726168 886531572 974899263 483242779 819371299 800381078 881976042 444418238 969934864 833538220 960945099 242375521 460361198 28893545 499751251 574414126 622271372 804149741 807310857 658993537 863450931 689778564 836105829 873327410 876586001 322368293 412589383 367346934 440752508 567828255 895917532 484996964 642199255 724132526 937667349 84314416 658830583 100538593 837652263 921197757 951604090 891521018 954420949 534416671 928667703 992492959 994963798 897751368 909571900 878571926 886604287 703180754 712817307 313272587 976091581 917631891 920816616 589534054 915198849 682270886 713583013 466931501 984375007 478203359 588355378 922315208 956455445 289711308 612981663 81926495 886191431 440155836 617408266 905639590 963407575 168793577 616836258 349915606 785331800 624586857 795355053 988769629 997345604 583869082 674985774 971490510 999036334 303484770 633153768 713291637 959056897 533421176 836073214 936957484 960141865 48503993 98220101 493690261 777398631 613414538 891366304 847901685 892436996 333565677 761741694 509129389 979311220 141574216 151720492 331828210 595436011 448291797 776447711 761466125 966773429 16391583 581733310 673154814 927895546 269035791 395067604 651458571 657783759 234938098 239840288 261815016 596190381 508166581 818094342 510877361 935985015 821971230 876124733 814149424 845137126 638159246 907778719 310254436 720581227 914955082 977391697 536702558 717650752 119431079 952848480 300797932 786865099 929813793 985869506 825159410 984845242 861167528 972719926 636525226 802274989 694139932 727385505 246308656 417551286 858455450 915653737 736602721 916903201 494607576 850701690 128123698 815370808 304427198 458112432 250472814 736545759 450564589 981450912 424291670 971091233 14247166 499867003 182444255 592819877 350383003 777390633 314837575 783059610 42688754 866990961 967103329 972390751 550964112 967386552 7063491 827606006 367464562 477536270 983284248 984560358 932565459 955340763 277206531 710910186 709307146 942930072 100664924 145291834 909047911 953871197 728259757 792212224 737616197 847802010 247443721 341191927 33428084 739676316 136089799 260277129 415557824 556210525 533702827 782583518 299911614 665532001 172667901 240276383 248655932 984759894 829615893 907546720 534995137 774958167 282897635 652043863 417481570 985085736 323355789 512193700 819829919 955276362 801194118 840479892 436196824 943527813 612939509 914016820 437370330 892056037 507127548 965384253 887575569 930184415 577384413 675367156 328568354 410217575 157453039 532611714 663118888 881384765 920348135 938010270 232888293 709924312 346889793 608818740 815159152 974031289 722864565 905395056 111208362 508347573 506578618 908215138 609313599 933729941 78394298 592289290 246419923 547841127 749938226 915618426 245243631 743499156 275352827 382277494 347569773 997109289 103107681 157505415 319252773 917601782 227571987 837611773 209055193 247444781 395391817 518701628 649609141 965038609 896172135 991044788 528674746 779900578 779301973 952931032 36085121 714918362 769201026 838032707 879469888 890837182 421399359 946769318 454501707 869875340 630878422 964550736 436073977 517863759 677698192 723541551 319912232 501095371 850467852 928673179 892245517 924325688 911302894 932061489 203021778 837006142 441687071 816710152 226637124 840952930 80799591 894921923 837126984 927502751 31160836 884480582 244526349 992474224 521658901 982196530 30865452 793103143 548062929 855926603 456673103 678187705 338898703 585668752 793110293 959444380 250028537 268387164 43678531 170984739 386296718 971897315 229284381 396384154 60761188 628634156 636487176 874958384 691589301 719797507 151499129 172164370 508080882 664018662 843290973 859077030 48682903 64540601 372379564 604439129 539743199 894273782 279885831 380251094 263464663 294959998 11584178 619246074 502856284 613492206 319421545 466182156 948405320 977407840 725971513 934037515 717824363 876478128 273545664 659986224 818311930 997165165 815793854 880268719 806018130 995452448 708714784 819251433 713533550 852721973 605063391 739766169 917073276 984650610 819273830 937017031 650411413 740771199 277336861 396383375 260669450 893929739 296556516 450885683 465440275 525134363 758096708 865158864 382112693 762593509 798134214 950590307 806211879 811259002 196787494 647558535 754727636 915636050 54346744 106938857 309926278 613131619 834519332 910667805 207399664 892957680 858030630 964189838 484270057 625358118 944783600 957119341 531267410 785259488 472259340 815982154 914905675 998080187 711618964 868887653 852661563 989322031 144921456 834323734 813578601 884232338 808147424 936129241 23096649 93683194 512970398 651924626 562850230 983192357 823890177 861978216 360723591 697627310 944028874 980852608 186795809 420853735 201519163 859138645 799357315 967590672 643684928 964203328 377387117 720123961 671551970 982177966 750626209 926273960 606859461 693769861 953434726 986802206 60814295 74507032 833740830 967869121 500092902 990685512 67175542 610210450 999961501 999984570 722432998 823657018 957657538 958923208 935194382 947093268 544553828 869971988 293788324 657986899 358447944 582448672 351848925 516085755 728028971 794751301 524344935 698701483 34591282 721729063 958078380 999084094 247185918 786269638 830521119 978593421 796482803 816022433 639405683 640349888 811035348 925240292 776757545 901922812 539651384 923727034 398504218 483790504 333677176 469839756 458199471 854127184 682967057 698926855 328029869 471525769 753566155 871210862 822095120 947991051 350019712 700145872 762625403 833690634 755519979 910936787 407498967 770487431 413841197 602914285 156711090 460389859 74640026 859239898 140831892 686548409 4555899 532571533 405097419 843081055 981652230 995669158 410150999 845932115 47133876 388758908 404602649 882419385 417280747 526866775 31618658 324384329 571226937 988414803 499028697 868706422 227159044 795318644 493673488 784843345 212250984 313170460 246168629 936940071 270471299 357868545 695965930 910110634 345246949 448106577 408085595 658892433 298201189 874510768 297420847 951674098 460896676 706176420 211010528 988789207 344420749 945947603 737341612 900259573 225437264 713832780 323492968 641992621 102734974 446250265 689363591 970796452 807365890 938499470 910787474 978094996 38658711 644980239 185667726 333693718 775641016 799560633 68832164 453349282 58678126 569588167 319135400 336920884 231254683 497162686 174560202 495528218 58230707 253213901 955407167 969181007 171405355 753126076 751544623 880860171 785840224 822813733 190086603 913529961 557086256 910044496 278086798 808479412 146653611 249406324 772186978 889492853 332960498 469748858 70560764 492437344 419153293 723863111 388071359 657086482 163921833 173635531 40369532 748892574 978406497 983175333 513564889 899899422 952484926 994701450 185022945 450172740 819965887 986836232 471601011 566492502 566637517 816830856 825591270 948779152 668961022 814704089 505676260 803796454 19564306 391428099 65223686 928302913 288597232 724992147 551524951 778161629 110451662 774802002 802629120 861164030 10065030 386330450 447782351 854249876 302428115 616927709 135194430 705864878 878892904 989731847 465490290 938099214 807450584 866791184 355951889 605043929 868355597 906760188 128247549 683874778 318865289 465583159 110342615 502616540 757439124 929242882 359465143 590626228 735813887 854353541 459140267 783391389 14946456 878669227 427048985 895019999 116479230 404481168 382648300 464146549 513622353 964757088 85769200 906506661 523281196 529136825 586450642 704543694 968209394 973491257 602309575 655773520 407605858 802189389 865464746 934276621 656683693 901740667 312936006 578598083 297688506 387299113 115569210 521143522 668628308 821194527 612825058 800612716 548723185 917181457 470868287 852795955 629787738 815526083 3919010 779649114 894286139 932915356 43315863 246018608 513625432 831182940 873028982 988069298 446831282 605085304 687399836 834019021 131858112 706175870 518405926 604107110 67167153 652055983 970127839 973429924 515890275 738626640 465821106 644092513 503228025 859883360 324738090 412120324 229193248 955789150 565430310 752915338 190379301 658142118 700992186 842492799 188219113 798149251 449533621 878159413 325624317 834507991 209300047 569967551 99615263 355312882 16827527 145041494 775142940 831490757 254992751 394016206 493759245 925029509 884748306 956879004 585473848 897675112 48229603 971170978 817279 841475241 486152816 553863598 481949308 654332592 696018276 986063723 533875057 888633444 852374507 997456422 311541299 369962451 326061340 584632782 748251702 826071230 516784363 544894932 627083224 694401292 110258863 617573141 216203363 379349137 369922949 593432944 513525337 705516938 210386825 416657504 274656012 488853719 669639314 820504354 637076548 970933303 750742316 919390608 410763958 480431656 681615548 986717386 901471418 960122917 761256560 977039677 203192919 577277952 669252530 727657213 546799663 577236705 767048815 965582830 538022193 942689759 551787397 975900771 174165630 323676486 216601137 594048702 846502116 982658114 98670145 857062444 186302941 611381095 312299978 411471037 894894789 983138557 436755677 641628185 821971278 964008326 673908516 942695501 925542739 939086315 807579670 901931379 916309850 966220866 468188567 676080684 229033261 346720627 727207651 915507050 285115833 555451325 223833432 230131317 11368252 744976852 957490228 966619662 298084017 947614334 682222381 997915037 141402093 626497644 364724699 754644856 681691391 747138469 401599374 555197419 311013890 319176417 378843245 468732999 165862180 225251330 544485216 894058665 645123046 978083596 316692041 913600465 553872022 940597542 221216409 546372209 381535675 855042083 799447312 838253953 252859519 912959311 404787770 625900410 405609264 579151022 242318014 252509258 852542995 884097320 568868656 815469736 458313820 817552547 510374404 687386370 764485952 815061819 306207445 460400911 557194136 990181099 403582946 506813596 748984196 974384831 418059482 493167029 797337375 859071238 565612453 624119080 831237986 903060521 374306831 671868300 647334742 746488383 860487650 875114050 956708535 963212873 399055390 492961554 935815503 989519936 267561909 434418868 190533618 377374697 764149260 834014198 979685199 984233153 543640779 622939288 749068322 807235529 82753938 784130467 709009873 785288652 890503122 914310415 625803918 677528727 214632164 756442384 668965413 833084694 754157333 942711254 298129008 837093045 896964551 956091207 744285985 917865620 407217127 662722844 966775013 991077581 939794717 986724324 558133627 740581062 245878439 940567737 125909881 492910240 218874823 858090360 856341118 918726164 960319512 989504650 853068556 979343000 494182843 535870123 349268729 679987800 385451119 468098192 380115220 966774735 111107894 791344705 121369699 345379996 682887928 981716601 79557448 374386755 585335547 996767062 437455295 645619383 512825071 543449715 230040735 246759904 727155191 845493272 546291021 564772918 717453109 717826520 712307746 763558584 440797336 763369777 666472817 880672454 835022232 873945933 165854923 603085568 284388250 725332724 904604082 905424380 787007548 812072839 49664666 311458385 686394079 812266235 598505012 758354290 711996430 900348196 121392943 960273461 334798266 829406679 937054244 939714401 716353959 994283975 423740970 813863942 221740798 950448054 594486062 684409000 627595235 710932592 682275286 766937853 480450479 861095123 840235735 885266954 836456295 997649280 621420316 668753040 628643899 667118062 468847362 477829241 629147854 747852427 752494937 981312275 191853125 712766283 2181863 428383243 444575458 982986211 375293103 498337621 657740166 776171219 976189045 990340206 440420150 797053632 966527784 980635599 835449712 914377074 862152047 969502682 931523887 993857656 964285572 971689716 911947017 961032780 670990869 799764949 141706718 909370172 326698569 377763988 581560244 915957105 334617140 355514521 175857260 303550666 983566179 985587049 189202055 276671233 458938028 701615268 732487401 794505284 53547632 801686833 395923627 712444302 198901907 699443208 158368289 437615967 2026089 978206683 581479610 611647993 869046548 982102030 300002435 844802937 539159329 781651453 966039542 991265784 329395093 637637798 32599577 68581542 625117960 737167333 678658642 817852505 244776045 348636384 818193433 923440065 933753421 981523245 650449760 908462707 682300329 920661089 372623034 439463303 417723403 751768118 402643655 495913968 445576085 702182239 258886405 685330575 556996258 923226140 279093024 725287946 827811562 908932077 40305102 378571706 253856358 301421403 811568424 999172847 873425506 900232401 379336083 740581274 31300019 309610529 795043491 981698517 894279667 991536538 399891399 778748643 496700452 936310707 813618513 863752436 52462568 436197603 316896338 851162156 520352536 798719590 755550472 805362725 734758841 757104572 808783624 828923296 378495774 432187017 798686257 915311710 780855939 837771313 735639357 827379862 355680780 905031571 373509548 483912880 28665218 795300365 414264846 869322263 463679157 815224665 283956740 414030849 609933993 996825807 15064718 285433854 586943644 789541424 799917551 908866400 122693448 952378932 660381450 735565707 371512204 411094956 15689723 625764197 68410453 487821121 459908888 967804912 103920496 488357453 42144797 61314336 675938939 933075966 821883505 988830990 991476875 995780026 586968611 786003210 174235157 813691553 369784231 388411136 953412961 965564490 567734251 949502012 97295134 506650077 126978167 929164713 283661900 875260925 252182946 428886554 159520586 675201380 875254282 893809475 684909380 859850262 598665791 699664155 709733803 866138522 752040212 856591265 568168860 588463282 609879069 959193668 656522976 748733421 82411490 363109335 680801247 865367416 331999128 494310109 164783650 369890815 863996556 933614364 834330921 950747780 974401897 979070190 987298587 990397989 714455263 988121776 948754779 986596985 394305313 840426820 166594771 559979805 840937004 975228071 861512364 909615339 339558649 840573575 873608927 897961073 889447754 955886227 754911124 977452413 731687656 820548414 679655161 745953974 296120940 840223963 843782901 906884077 187341056 673058193 95628787 997999204 872286532 993605535 453630034 666313741 866340726 904067865 621569537 723120866 980766979 991175356 76837493 321770117 297297244 474579775 958035618 969712216 522485088 786621002 495111638 849659026 597471181 647469123 490072490 833195070 848414834 850249806 260462704 456360877 867739957 914497392 706292378 984464953 884879488 977720321 724287213 953850774 534176299 602872125 739429821 914029551 334133453 667369058 441058976 456785568 224352076 582322517 670468445 891688210 794713491 984009203 253669050 957196861 39814119 206017009 651342601 919880720 988081970 988379491 235699970 347201109 67706299 927590645 159761237 162459455 83826188 925632624 979430979 990075774 606801337 694900744 819373073 960556695 86253920 266816748 983117134 997934363 677330757 770784518 261158232 456657697 28154901 228980351 42993408 212588514 742855264 747658878 594620638 693779000 295175007 365813182 47254466 148978555 897337393 957241968 553310323 860183066 268501787 279705917 370326796 542760119 347283881 485339261 383581858 791970350 980965687 991288820 465632619 838445295 636619110 658447968 385068377 771906802 720807997 974897044 946542786 988334950 220657198 287836656 139358216 699862188 996377611 997674514 100400046 277448221 226770253 714167361 775826536 785972671 196035487 774721853 615017280 977979785 753472438 835841590 148582931 380007483 700630333 849850656 948289862 969266002 108251946 328301032 718939008 832324708 178396894 294774986 487227184 548336380 213109416 371097316 327741176 386364598 539576238 863704563 807163416 866125161 869774982 933647990 45203437 377313710 728142039 890082130 184143502 565075156 912478134 982275386 87946660 653201747 486379150 836717361 383199066 571352295 987200050 994562311 209056902 265928731 688740290 788067141 835357535 975990189 255062981 570183277 59909078 565955424 934000829 967728537 468657699 799602753 319361302 471812813 562384281 812552444 227735107 333589132 493790150 662192345 764010792 846666132 184690734 971978619 319515599 685630706 461229642 902301321 565286020 938332367 830038718 986593634 873122626 974998471 291406876 477884159 681690597 925801711 307550618 945827551 435279781 733042359 41723791 176364175 985226369 997927996 192057505 743905947 979152353 984333369 955991371 964673540 584394709 612628061 415577046 560693258 480861634 603586135 751625179 889009754 290418274 439054536 779449951 997001511 557871157 768833441 824494009 941129256 536691021 592604372 133246372 664335545 936094124 944545030 274995172 915424336 28241327 282411760 751788060 977486291 870412389 949238414 226601552 596866475 359820476 781790311 42699729 772326362 13315150 154872008 779184888 935486317 759919806 850836574 108127904 854703715 425488271 930582777 660237636 866544226 770869400 887223609 37488518 784398156 666351529 783125508 42089538 310838184 244937075 736300004 126703560 213235671 648518688 711596294 178064584 509063479 479605921 886761564 662700340 921354078 48822883 870357427 207139528 472197472 820073410 958130741 53406684 854324973 141002615 816824121 465143437 649959359 924980040 963231080 298123339 747547603 713337834 885458854 280444640 734414349 791217159 891080888 615166391 841269914 364344320 996595795 44082607 929987043 948409497 995334126 735340620 814900626 42192928 721253130 860733726 926534877 54195463 370759610 488343159 890281744 458280430 716554463 249564348 571953195 117126249 920972635 720776965 996687343 508990150 831398900 957074708 963148094 787273874 901365534 362378557 609806685 997055588 997982598 986938997 995949381 728311244 990415822 289502062 748553255 577987819 916929919 387490403 621208068 705858967 840884904 583084385 724510008 296231514 952813093 393095146 636812059 757010863 905295433 805947747 974079992 102944525 446349952 805996398 959555700 763560532 788422325 391060393 454476700 143711018 698567877 749255535 767234900 579412253 669231139 241637761 585417120 536527721 910870649 613730467 994094194 308004530 549660029 699264019 734357470 738964384 779851623 237743920 920097929 517530971 539897145 272622748 812102665 149972280 207125132 677028540 935832688 430348248 991567662 437361520 965257931 35766983 141928957 475130105 657371043 754035625 793748451 627534946 927732424 659395275 952389838 85669046 525390560 184148905 696771948 928737853 964421937 379887681 683828544 760845459 848770218 107167207 800843426 250123261 988440150 890842849 984176972 3277635 815572300 244873826 755498402 618934641 632399493 803387282 979953701 686018362 984236422 984337181 997210166 133568488 151984868 407870701 606585246 213069647 578965315 970572031 983881309 86716039 370249485 590125805 715293109 98123645 847879576 136815032 366258289 397820750 643058028 458631182 654680910 393246102 467573840 576514215 965551572 984176704 990645994 861712636 892837668 868228127 972059269 551890560 992438503 144824297 710711636 673332097 988377392 555464034 698901471 13780115 244359760 834037669 986256693 952087317 991089652 46861187 797359170 680825609 840287742 91637401 367178794 405632343 687279617 175125049 357528106 117090081 698295795 300189529 486774774 959660336 983996708 319713619 464861053 913638139 952583332 943333097 947295257 448415855 548350922 235134753 242606437 529049932 995257961 511339818 568996671 717694364 886647895 597583866 878447334 959976742 978308374 658614169 954050912 468719910 694564496 664644056 785703190 191092317 318624453 702632574 949218682 419758702 487299267 332799481 466036292 334842247 748768343 300858661 827726210 323420812 357410098 942518215 967382795 200082120 227864228 804090137 906547831 450482820 993369830 195990391 711890577 674499236 737382807 213187550 433919635 733047732 827583085 322500832 855174885 462380245 473674855 189642980 770400313 889493250 958399963 148893147 814721581 800726928 832859752 777508192 809564611 787983841 949723341 316939210 622038543 544617311 671232515 170513045 364221972 811284525 970097544 683170636 821290420 280940531 293703754 612477590 908487392 297537985 848510490 943046091 973665879 93332148 569825439 864884660 900061637 498413917 618681444 280014213 373466679 686583754 818610567 788582437 997327820 356672549 425883729 273245856 424646123 959988704 961817707 374902997 463559302 514909832 840923409 41495239 368904991 343704158 375434572 158409677 837899801 414471922 760285668 399177949 687845161 71165064 632218212 578982681 744194368 151721474 578543053 173923157 407657361 27376487 964251493 301985804 313952144 337645652 720689078 216190671 577891850 435505923 906150424 767001863 815085586 41652890 196129344 922495383 949027376 370218998 588389663 441984327 610244178 349226593 704851745 212031706 867793528 675139344 742079179 122779887 489677442 699598066 925594528 633359487 817765274 138119292 151602531 371788016 397382906 118458896 532570984 514973560 720961763 148980100 323769807 251582949 538438738 284513186 302543138 341759418 424927080 267304505 458997438 906032138 986278041 51599416 121651944 431870478 528326106 751606467 754813932 945923282 968417250 443353350 820600425 72256206 751651840 930420631 976516287 44454740 433679102 113965589 986780826 753055245 984703312 26833363 531157554 571466275 590498554 808946161 838542069 990406959 995431391 43077374 961623429 645835462 885236718 713072241 958245467 637978516 918789585 576462770 974573585 899699465 970325610 176781073 321493425 485912953 607191377 231056684 398130778 591979616 918939790 665640158 672136640 342467472 973113149 354874252 717265444 491735202 996295140 645620527 781527532 406663761 706600597 400349046 719224592 834514918 945419961 435671027 531970389 64617116 94958510 911227189 917908217 730506010 746814727 736522317 985457758 291915781 690038891 384347145 567051266 817870883 902307932 122392251 155392709 677026905 844883392 10119894 528194956 379715378 806431617 101843617 935403606 494217848 961799764 967420912 987867023 28591819 44340972 58759095 677566020 119849852 799790657 318580539 386743320 541189011 671057428 372479929 971837314 407251046 505986483 351422685 761019882 384873846 425873151 955902380 972421653 917862207 927000881 514859427 739646852 955291811 986802000 796794252 888134623 648189162 909187285 936003841 958727718 792837381 820907611 855939132 997822615 95205149 379214298 895862672 969057348 496002280 753666864 689376938 710773045 768089698 976907455 558536014 591701620 447762580 944877286 377044493 482487020 875342649 947485564 965230351 982179839 303084420 379515198 650339450 776217850 43443741 250273157 826987603 946959316 133030456 702569136 182284078 922900673 459702222 920659277 484426602 884137541 699872845 719606037 935333459 994197367 603402257 970311802 265135744 734509362 651043954 745129531 33559048 898756266 475113982 503776629 170792151 395464443 993982831 997009805 671448534 987135043 875673266 886340545 574619701 758430781 502804988 669482921 578768699 996248156 20631839 371912879 941501787 978279197 892826812 971364908 332176079 418862134 988729714 991596966 100479283 436052714 759511991 883816719 659462933 725323165 655801862 662925256 520553886 622836774 129671288 257182803 872274280 993089342 142553735 936012589 760079790 798704345 546363503 721561159 231936817 541463003 909191204 964652009 570475404 589544128 905400490 975904238 461355054 470403045 260589183 405225382 17362343 828090654 23606458 59670463 711904943 837929552 134376867 619519465 105687660 150168643 724703709 831644705 761460342 846447592 202202935 636305197 651277315 963526528 128002775 345206909 924014832 943412824 356315273 919550611 909317722 976831575 609673513 661947346 481552540 715584057 232968300 238386863 475999317 573898299 578300220 635047914 233946266 521765611 664385226 943262199 673244356 713248762 848228686 866481407 716876311 866398013 589333217 850881354 996836442 997878954 287932296 831934780 262156710 287397827 747652265 946507500 311042592 617743175 578223820 920120262 307891490 617268042 758306193 973400557 656777353 904455332 707855281 969825999 315117341 405883910 998823215 999661301 678632882 706039631 426805795 659737753 895111011 927402043 131246738 271257935 493972603 664222921 616114219 724195711 946756988 949951787 649462457 708872720 319018422 507707735 587522416 592169558 898568082 924452235 57906762 394073453 111426625 982676785 835671495 859567987 149350078 670958368 187542991 886199899 860248406 872600468 324877745 668493098 925588581 986428341 283007560 476176311 582805840 996933636 875654887 975740183 660056419 997298988 299505544 400623407 953309565 979237160 44613577 807863273 823205113 838929202 750376208 759310984 503428550 537439970 491178556 840004006 127774432 297643981 351406174 411799482 333129514 948715597 324515063 971143844 184262574 394957409 396151454 842417996 413029089 897265891 257668513 752592161 231425722 271386800 644020497 851263791 140889585 652360695 765399224 918527549 452434787 524746929 70159502 225742604 879028388 940948675 629585651 960692642 592325287 897104065 455574861 816401100 898303906 999267883 531186863 597358868 41995848 327204454 502530513 727337419 335570510 482316030 861970046 889714837 877451139 925570348 68270611 597767807 336976133 578067566 583705847 757367118 465986449 972177792 247004207 313038996 775229370 980568889 125139597 324327408 540702418 862672991 924476163 969042339 581375061 814910803 392116038 716963638 736850541 792556955 413350463 507396809 718476815 810780927 404208773 845197956 503714032 837688881 362119621 476563258 632794667 656255223 79945777 464125443 528111729 618336610 743438893 760513118 386528351 860129004 309774626 352062439 348548083 574333362 580666302 739928658 727428298 763615636 565343749 997326389 220782885 850343341 41062759 48495231 978335240 994214676 215717734 813781883 933233540 984458524 47873216 406012585 57414462 467673439 413763803 648169486 302223834 445900187 835362157 849384627 773456064 965370518 448128840 661378745 647419019 663116886 719773221 985515933 91638941 250895038 593086972 675306535 189702306 393993099 321470150 992945790 248457516 881187856 552996342 813388058 148628768 888623447 23103773 98079544 939283664 993253004 423679007 555243329 154092585 996634148 363696716 746481258 621892497 637823177 869241963 920935947 71857918 591539648 931958773 940573290 780326248 924945744 666620795 881135352 243952378 350513323 722055572 900653002 514779806 936154887 708588078 771780186 404691943 840084020 910217509 935843213 690381494 969890635 961204258 973541026 339466539 359397040 494137192 566285081 489478779 530656578 867316725 983204732 491259300 982041171 20085634 446397492 363343167 838694763 32889931 551955288 150336201 838686698 947756903 988514847 750409086 956041208 562286235 567593933 892269798 968260577 293911264 450886683 935146887 973505072 410683072 593529494 280244308 997653196 414766333 954143007 774796071 832808385 324670523 578691970 891952613 906785340 293497594 632457448 755272430 828830972 493966693 500360453 47095592 227006023 270421346 810445994 978745368 980913819 443982516 895516111 110489500 188743905 61619315 849994921 304226505 791974907 840213806 934807419 674528911 891504964 214151526 693019510 401869425 951306828 189477810 543978416 80008654 634360108 858352735 936965674 839469758 979834056 178992849 621565804 760234790 919153732 396264839 441030634 368030511 512290808 94825223 173390616 85629440 688017687 294292811 700649583 811263027 948253298 456760363 828375495 716885973 839298339 937570248 954102319 535544322 995697801 697241299 705155308 518877007 698197056 818704015 829631361 762097230 938186236 184254837 820326230 311164469 969162977 634529235 678789615 349984856 552198255 430105743 622722840 551983616 643695455 960604721 992735863 174667459 445720873 176727779 504623719 607619128 801945639 558044967 837355841 764500204 898876125 83085040 257977645 850014100 932386462 861056830 974219861 285676681 371912249 787462853 789805549 815857624 941241611 675206611 726276249 108517097 746618733 715482856 910150102 590081277 722769670 13005768 801740947 525620222 616179909 153067673 415440234 68805559 971036399 638877855 644547332 833101128 879243616 180953125 976961252 754539321 878725590 986500920 987322781 103027019 481917031 788965945 860490640 902463462 969590120 795394050 877669230 752810923 903093155 618745284 975101537 541431890 546237148 965844622 968913858 471511779 842244459 732260401 852946013 714468332 968822220 175887624 842453983 217182137 986971041 302003803 592948887 333421136 539777391 877321096 944885173 271303230 516287843 659596014 751860108 274649947 509800602 720442348 975486865 480093575 970314851 65839732 586148576 82487376 355723883 132260204 930051177 66837364 410956965 918219639 968747863 550036303 678752193 277355559 905001844 386154742 899561966 905124638 990647148 242050898 733532767 404609125 776620860 834191184 929744888 160218673 583361358 680947797 927617293 409012877 568630822 116909488 163827742 275258614 643465852 20171587 411701770 122739931 471595167 74363035 806049382 524151511 574535495 611813521 872371056 61018861 669005134 85217265 302309567 243815866 272316194 756604322 971497516 25030353 479937401 299146462 841839927 101558323 150596493 823040711 860587466 178710225 603802376 486346986 864155292 451667301 779382865 453765295 495929675 669179083 702712633 954750702 992189219 539238513 598511071 506587366 657442371 39385291 835651038 796753485 860861474 161333870 394488370 48315408 272647108 909601225 959471675 491946337 627564023 424911438 491777281 729699556 982071806 393686865 560571253 518489233 912065089 749994708 849394392 209705664 299698035 403549626 558839485 797069053 915653813 24650776 270390777 543139323 627831265 732976423 973497984 60557736 966367565 268097956 592927435 541469178 556234071 382621356 392374668 209856309 368019532 552006594 995996597 627600622 936749144 295962143 907231382 141912264 793986476 235573893 361566493 659750194 751833383 263892255 856766418 789701288 951398854 424572756 739660339 718886548 875353298 994001614 998805084 421471293 819577854 240348306 506424222 142438705 635115284 206092783 420385749 654589731 814909700 132348901 234606938 844861368 905481237 802121916 844406276 199174581 241845506 538260468 704453410 949056093 994918435 942942223 975663536 750521469 780996478 652957185 729383709 896222405 959535895 598013349 738892257 70942290 871511348 297269692 635621418 472191538 755714691 931072218 989099900 44764 589502851 306597131 410024647 661124699 740053436 293042343 505340134 983415817 994032670 502593081 921366773 690762361 822080524 373631642 448049132 768046608 848828086 979827563 986852960 604655578 952322203 738514584 873148665 861354328 918389588 445993722 568988527 778529675 818713377 171886799 440122665 494078016 875896898 957016177 983960268 459693467 629070180 314693562 655052323 100615680 745477375 646395220 750008399 557404430 849861694 415228880 970768797 638238954 946628216 824501263 825242186 131974190 264514972 890672719 951433750 574878315 752885823 615963221 798313241 103729993 212040974 795751204 942755969 798004157 810006488 135180857 764556974 998902582 999470016 213048325 506781245 475094074 752715583 573865577 887851273 299993456 826649503 827555113 866560489 890040242 967530277 228832496 531376454 525021118 552413884 898348291 974828335 499354586 923666750 119041663 310669870 405033976 680291246 907378776 994617049 109002398 930596078 729881226 840397585 924473615 968141083 819441761 883464399 881100058 950749751 849010448 850950223 531512861 714697186 259616014 675824048 153018145 639610525 637773535 953802268 315683364 404331185 675072997 900697331 132950142 291190388 785951959 886656728 600911878 629976420 568582671 735068082 42906316 984995426 484152238 532143898 156990619 592325289 61275459 625616743 395941764 508730473 590883077 951301883 225370269 438585921 323997438 585378913 584148551 900428095 794090570 827808076 135814573 962776077 548567128 692819384 458713438 821051092 319558422 447175718 602224953 926486740 982486981 985999759 511493253 894123064 990110329 999851046 960542283 968694177 152374511 808753060 747511527 749315045 303634724 709769346 40157986 435463834 547486937 807020482 955860222 990368012 584999953 735669952 869222591 920750804 79695680 384555500 308885319 684113872 329434276 415718447 5373367 251738242 158870681 748544686 57269501 423858589 767100583 813384991 439956878 643525256 168075525 545379360 452294675 685804775 4354803 677586135 506594963 738932561 486561680 515997780 93470292 643793665 981514413 983580080 322246237 781013082 51278791 253736434 116520938 668195597 802483779 979428159 798226841 981603758 974294009 992020665 282199349 777819503 286915276 590585954 908441540 934763549 337187945 853969772 239872495 981405479 366886122 657691996 281296729 283914120 652789455 957359155 455990004 459230771 618333596 707909512 513445843 670056951 927017326 927696476 952809724 987889957 12717254 681230994 42298915 304651363 811935797 905134232 937330074 977006334 735016623 985924001 385963352 484815166 942755794 986683628 64795877 405427832 315583326 442046576 177154309 768117381 242522423 363620131 46024462 250327159 741945018 913878266 690497891 938734227 99435830 533511900 846510048 861753428 912344428 990777096 910633158 968922845 765715827 810223512 199968662 605298654 580775593 719197641 600325177 940957918 487764847 622391199 997328430 997962088 745882514 872947843 122571575 313087943 148216297 818515385 93345258 502281429 896922414 925004665 723279492 894383480 74201722 341096818 316970204 855718621 362625909 634120197 958581397 998256848 684642315 929007726 130678924 854237795 814914146 898847942 398387251 688971781 562679303 584851649 914180527 922321743 379134838 998185256 863323228 916044033 334323703 524650152 21953058 314025585 536338670 934857365 352529825 532955077 179832380 717781507 464224960 710737357 356117329 597743906 45176616 819018158 783660220 941307920 305085840 594301539 280207945 809584775 969316923 987857896 770806440 888941285 335721388 368358119 223892349 406746262 714542800 729615538 922189629 938587339 929385518 987414253 6650978 778513932 307861406 914967579 843312368 854548773 6059027 793092781 396421109 699148100 716423984 758654562 921532545 923241185 21810893 226460195 11866221 612264416 277530813 989582918 762777396 995009334 365208663 647338839 144680023 555393267 281333332 327286399 668606444 985151474 788285237 870687736 173065323 433777756 10669026 325477002 455916579 662455800 138120925 578735108 238660967 592998408 205420692 681322016 778689903 849104044 783050052 952732923 412668845 537994340 593940637 863687556 219590490 417684638 939007205 984932763 726263126 805047490 427690550 991904788 218493234 358418042 253550496 570009646 434881494 690276000 922703134 936727103 554193614 660223460 522439223 563737763 74107331 564075211 693729551 999045189 505827381 903350933 623343017 718338776 703227639 937561766 589855547 915115741 280014602 287320118 170915269 782764174 341176791 601502960 975904473 987589604 779832315 995885993 690737472 774406924 249905243 469794515 427366975 810020345 481634958 837960667 158206210 690758352 357621508 530920016 107887871 455951982 696506929 725045016 318138472 589847585 39159638 205767554 738086695 833729922 15671559 642514838 38618300 772696662 972644163 992949878 940020783 951526944 511318098 636047692 355240785 559625047 230290813 694673091 366586388 765145672 911068852 995970642 903249281 916654217 554884819 785318735 350802612 408478556 456277063 741665800 907176097 925599251 22306551 612716750 166734754 203198548 725114454 947665554 963267261 999348164 382147083 878807283 394035894 916318763 416276415 559899500 370732330 681564802 731707118 786149423 322727 880458491 878765098 926791590 230815843 704361164 842535005 870436833 702705054 843999964 905280594 967471105 544153241 573751348 33354375 134660044 385899672 987373631 453249534 658910977 165693526 653214073 825211901 988378242 491149300 942114762 584854491 826555675 901471989 962976115 46438251 936486622 341837630 651052724 473809211 583598282 364569622 563965881 869007387 960910074 914195285 968969266 606081903 846478182 750172813 957840503 63262739 273202944 999498901 999759376 272850707 544661747 204665351 335952054 222128091 779298021 521039836 867511550 292226420 842797239 91311379 440561774 386472727 981930820 817316367 926279650 817171777 931633443 723614082 917332872 989083191 996912552 293313876 558079620 760734974 896964699 245241582 757575263 620028472 942755414 622025700 854297607 28968117 945842134 706127183 799571983 140565078 372325678 131313189 884035593 412004627 876265678 95579321 745321039 566461624 896024700 521247812 676699415 371611451 990394382 602405170 854570688 828742197 994682151 42161036 269711560 163442816 829570642 661775864 728123027 708968858 932203423 101200966 360735716 661167001 664950006 774329174 864285682 807210840 964056910 505716175 708334102 851103314 976814000 468200242 902160023 146408663 242394431 403605889 907502750 389164032 578393025 90419437 816744648 28341353 560494446 389504112 618296435 85170994 669759304 279671792 305997938 268432058 607421510 554961582 569357513 164719645 682189386 997366062 998413294 384807714 542639995 180166884 721433176 794280591 958702431 325030936 806220233 414991872 787949681 865734768 897964083 49716839 867173279 632368243 994296363 484122177 690389988 295092331 672035890 952070285 991097661 404948400 428258548 881988140 900331598 853979710 901804010 559421065 685440825 678428332 804617507 381708392 701902246 303825419 684994091 794111289 881523738 108829290 897824705 608614189 969912203 71075002 834377198 975755393 978661713 394472258 951823493 22541542 987715692 285681869 869429334 671164822 966552421 700848050 912461518 256615 584321343 557670486 690126861 71996608 991593522 342576569 860056895 638130771 798111623 591983012 998217566 279569941 749725895 617627950 943988280 995157275 998910814 335121394 707980653 778095003 977866046 946677077 960314945 763481334 944985542 434162262 630507235 517511737 813581326 576361053 672859145 95930435 512512225 478094095 626944454 737700497 750219103 462421319 810889585 638746565 898789868 786039000 934368223 570579295 874840212 543570929 688086189 707823499 971998697 790587846 989292420 609033796 642307746 40387365 266576683 17050187 847909801 721646037 949102594 766046860 883224681 96780912 800351561 5851418 908594441 322290511 633677979 809753253 915946044 884178482 995185780 75840941 831258603 549360290 925777095 392111140 677689959 499731503 925797755 413617848 655240164 359257767 865932613 964126518 997988044 222813352 457505148 926699772 933812547 770301057 929133655 862576916 957500078 847079860 995817331 420967790 511014709 509994907 650878116 591683421 861394564 856576438 916429955 47929793 433440829 82484769 306902961 467205047 607852448 720731341 942091502 984594979 989737437 157199036 279007633 924189185 984616802 976784588 995993424 400452954 813355666 728267419 817497197 208808142 767967195 862122953 979096646 353401983 399568192 216496125 619587849 394612715 639090639 991343583 999147924 738269529 923000924 729745190 810371682 303892180 917180578 328143450 908143572 109175008 752002955 109553682 288680746 400441710 976274492 649644012 727765215 533231240 637721420 921649412 960699990 396832423 608443947 549096497 886694716 999201653 999688876 513099644 934542641 966791490 974283129 860014810 971641639 92892603 606932550 234324784 820454038 574582150 809061650 392571889 536101881 609866299 795538069 12566373 16028435 397558418 848512293 873765489 927802313 250796440 854298073 655594043 723046397 551484388 632780212 160477663 637143217 780017026 861232265 40641465 983095354 11627625 187530227 803451374 888194870 504607099 919884564 576266069 808178642 532877317 784341938 375449249 681815074 211401905 269171639 254386149 810736805 514286558 655897766 697076216 784171691 480794953 541923426 848961717 985782769 993239902 995584839 484185581 613066108 18325470 301960115 549446445 788764016 574302369 624558684 879557970 974331274 691335084 752513543 120889810 631573862 43891962 325679658 595666835 871191566 63462787 584603720 684008998 779708859 467236939 614567913 348427691 766308013 909363422 911985236 401774338 999095874 851357232 997784367 551848345 884591453 338569322 822357997 439795852 461994850 894487037 994755289 542391673 863591250 683056583 924837583 844684328 964465008 574197956 603932545 107916039 903031385 74901529 94712125 465383000 958145105 309422766 569346901 998819893 999354557 722050563 954737497 572942527 631799895 229403694 413587398 367117159 439886861 514752189 826051152 201490217 726076265 272979237 555324093 997738218 999152871 778976108 967755034 871354985 905992690 711359227 918704602 759262100 907909237 765994115 954020259 115592422 399351461 74671363 357982377 426591380 721944595 806685315 916188194 76403667 860174970 162880150 345261941 919535198 939047980 909103139 951484101 789432804 933216706 412405836 872284088 372360255 496650705 213907625 248001505 165212063 232234468 500214796 887332612 317922832 343790317 386974278 829247712 700230208 994058944 526321075 636089289 864931062 958910873 888269689 995647131 202207491 601225023 227470281 725656463 998157731 999765385 367075101 900298277 481590682 486401604 949584614 998670893 647324267 808493696 989755216 993037151 605654567 722289517 985380685 992544423 95826508 947052893 89725008 331361254 768375564 774624108 844404089 897253639 381048705 740345868 778180542 892596864 775559607 987774069 185043443 289956079 322788752 947681902 122647382 911586143 212244384 635900303 356207267 907961856 756930520 992547052 994646034 996499338 615993528 848992633 707284229 824230762 200422855 618767979 442019897 784318022 993915633 994550951 60090551 276170315 924978039 950997823 949631233 959952028 461895866 861710036 785158131 980074735 269565074 328002320 740150222 980789108 415842648 670560455 490128421 555285683 532263826 532929333 16596644 655099069 253290401 998421722 130277261 778379299 429370930 558770145 258064495 773020142 880935932 891508843 367109900 901458778 319623676 434618964 258754649 398385693 885272470 886577754 314027969 731206933 414420481 435237511 257326587 421333410 601503584 966773818 74596841 597240179 678618228 965621154 820335970 915804521 541488783 599602876 845898810 849777337 859766589 933649036 536190146 880080623 755102732 853019286 303883061 524949618 577828724 920370586 858926533 885218360 379055689 426019752 74844657 342102110 372019214 964028145 401287299 506350572 815808570 896720327 202043344 388101641 463854330 957357079 619092475 653930370 885062274 952689904 309379350 314331761 533419909 759586171 513469213 699953455 806330888 971325899 491742801 646275393 606194488 792445673 122496109 282270557 372839909 787135130 294396711 930137172 432687965 583702655 195642386 915669097 603641564 855187814 624404507 756656144 612380220 747242076 686672570 891358989 712341092 783023355 802394042 899881284 508114625 641934654 372102229 690103641 518320427 655726725 232431225 312951381 953140774 986539173 291476985 782853317 766691180 933487860 132031692 879240757 951904586 962592078 536076457 948606949 421382694 837012277 252501432 977360462 153406100 626971402 661054211 903465794 353017755 476082320 932491259 946315446 356941262 540281999 788843684 892169760 370925814 790938280 36795079 395579855 974320288 999456771 711606548 847553681 563176149 899038792 596803645 955858452 684184429 901713051 683522769 809115536 288469844 668889700 33775355 254545878 824432957 836073488 444056104 652098350 860729066 955271874 160002359 717980085 908913872 911803356 397614991 945250972 259855589 704590483 380236282 891037031 478293841 944396146 754145907 830008380 237360917 407050457 827284583 909347574 364994781 871529384 316735752 651354272 385018106 956699201 233000760 964686168 350190810 980712576 496708634 948375273 552733037 867574860 235780890 932249401 382758273 870707837 475040912 843486449 966985279 989793175 589945251 934051860 329854331 755739002 494627672 992054028 131550422 837606463 410865050 714861282 516245911 517969076 601893195 620909479 724717650 730040405 536372847 911618470 288373930 877760823 361794027 928786395 394785354 814162022 160868595 900319140 892237812 966090447 747261287 972718491 206514856 308888209 254092727 550113817 639019283 821580924 13445006 60668804 559659668 809815239 194203386 278289163 739778 765493209 611446763 951984300 765374382 802441010 491284693 645736573 186525064 422702737 567787141 625456114 453198135 521249305 336726114 548884663 113486161 536915963 70904643 394652168 773675975 794588406 857850758 940329610 304689179 929566481 400137353 849675304 290888787 701108814 299120701 396989550 231947983 600617176 61959840 942889339 176349758 922278957 860653277 921241658 784629740 888436843 617420540 997879751 650611287 653570634 823833863 943690125 522735518 692143016 586982194 715887318 957922897 992718172 531019363 736463029 143659742 240910339 844143151 980737772 80987507 503824765 876629593 994471256 633450179 659660473 252260069 764772280 479486966 773571734 184221148 595093346 905327047 993151955 741930452 864471088 285332120 423418647 305444470 630525717 847594750 879449377 39328399 431882187 332532027 821337884 113631731 281908857 961866879 978066145 285543856 358335802 499539438 517564751 467729310 920405767 547133520 823162614 921092820 973003260 208409667 328688405 469799694 698896931 806550173 921767947 104198380 487345687 930408390 940725613 630996660 786625432 639941249 705209304 258496916 325283989 746351079 806473598 882520165 963150306 818571280 871385566 415599826 605383544 311148063 713327133 283025469 604125311 928158406 941813344 589529451 648338867 159374551 324259834 823780115 971350956 77944750 320687996 793609073 870725839 184824210 447042882 535245580 616167614 741630027 823274230 383043262 425346598 854030545 946919936 276324639 467148632 673349553 768976565 10920469 391311263 824306817 872486600 377233959 810757368 997102085 999179463 311749672 317787164 385853595 512980124 244637724 757248831 721965584 805549608 909240398 944254876 185964376 481418055 967287976 977631079 400745175 946516881 304172235 622901118 647124073 733307854 384734877 729481174 192408254 332315853 949769477 979305232 524736518 735867979 629763212 829485368 566656754 929601944 434463979 533561056 847328798 907478788 516130887 671054324 432301017 939796323 835773203 855585652 122703418 845366462 30309609 358362279 34335994 731352027 780131405 790365748 164767810 653313028 873543488 996255703 220057045 707407823 908258502 973178485 9602834 990356180 8192103 919925266 549384766 617507030 786603116 995854254 89479118 631032318 160469777 337516859 468540399 624922860 9464556 457774163 246348172 595013150 605765971 975947981 355652192 675769090 994093715 997220486 528433529 793936841 653633126 714830458 219597226 753434746 265085082 480495698 930346560 946657552 300616784 503642242 192520963 507019191 44846660 482435399 318255675 368019934 67848793 946531304 141150684 871831440 384358587 872996929 372469400 899668011 406429967 697408539 386616265 659933906 626000573 996431324 725581596 742567850 843739118 946211307 657894327 661364992 121540272 714085423 578982016 927881687 215628081 622011971 155059850 336736252 626638649 649335476 515212152 883649816 702337318 779604085 674028733 935739135 75886476 156835090 68525897 454478970 39957785 863451938 912104334 953083154 820854596 930190535 939545016 998930251 682530666 845286109 127841418 375980767 827095850 897398979 408997305 530823274 509928093 691300456 97652960 361219078 455377307 660516631 317108913 547952644 619143750 967105408 916576157 981047053 762165040 865312975 327369190 911217324 532176507 728157868 714180314 748096014 916919734 971631155 582016816 614850144 245924444 463572908 835111627 970737756 638413595 718980539 787991176 872402551 166416170 290772526 565919092 646748261 968852737 976350767 11814065 718608097 477943010 555486039 810741629 904749364 20929077 930465100 728299073 742632559 688595099 728954440 656437611 694321237 646164417 906973807 84407614 158768097 648552275 869786373 153374317 472005994 462398748 914655878 228392859 833737132 879460913 947433604 718464941 835422335 824346581 826566894 588358166 615171110 461756675 655939561 48475194 533353776 306116264 369101430 704509236 863227495 825254595 881117502 237524033 809440242 533397929 890894954 522304944 814940149 747080912 929167084 675546682 696921186 595710728 682187956 828355509 847419402 684298864 706270671 113790008 653983896 294578748 754412432 915704619 978731996 102653350 472192385 755835227 935179233 773285395 773304640 938870998 991368580 647088968 923154224 976743936 986896307 962837553 965081226 918534670 996989380 969274349 969797709 647204828 743904534 556337403 651875852 278517737 817246791 129422586 790885419 684088792 757562630 409187106 731106133 94265401 949555678 820839221 905941575 953228374 963551546 762452556 967740059 186007402 728003133 537263638 615929021 587322664 758902001 255386585 982134510 235850781 911847861 480568683 605534688 798132108 877071681 643785791 718533794 400334424 908244708 305634550 489839872 254751227 478794256 568367074 864736259 472737958 613546317 429786026 738215275 905348521 987838198 188466714 352642890 959472953 991217631 22747879 491959579 296745167 539003459 249560803 592571439 877715481 908975991 67665569 114965831 193518154 863328597 383847742 684839489 54307638 511172637 591038855 941262755 281697154 429387959 400786189 848908421 651836638 654621938 849691351 910836847 908999922 979292625 737832134 968586036 614828782 883023645 888736474 964253332 753914669 819904084 159258389 788439555 28491384 167282926 716769722 787041731 506143043 776759107 104300988 902133917 893395608 902237495 843998385 872032196 270349633 373183165 476703736 589150445 729086979 973034101 251396384 563539708 461095307 885580199 845897659 902700697 484116948 558384644 468284664 584281450 544449792 823253946 616766521 878270215 108612539 275735117 691458995 858372763 299314821 557707860 389868470 783566653 144448187 784550719 217670944 875572767 946653143 968680201 423533982 707633755 620002 69886247 716878174 923789335 460376946 775379219 517353387 937448382 569064997 753033073 180326990 603005634 494125782 522556859 310966753 996078587 141552639 356932604 248586225 962380634 4448480 300250479 900631701 914271646 275152462 915548807 522244706 595958113 812488228 843041991 894291553 966209697 991616746 999725541 428132498 435955788 714956950 892409289 177557516 477886856 252361470 316071006 700243153 783696427 27425205 243212620 826711328 986769375 947495845 958100829 921137517 979233926 436363633 692938107 805294419 834819067 615870745 865188593 735115528 846718812 414984012 949509963 14617273 157563986 831517533 972286013 426056068 643159352 440580572 611778611 891393497 998938205 332841803 599116790 442921527 889846698 912450761 986153955 584371015 930414473 165709771 572071793 235165078 271024870 291322270 541973088 741274113 905560517 857166014 882670286 627092420 829976416 240613114 435607447 937229194 960046609 264891702 430043078 909683071 951240072 597138240 897425213 643247780 984558798 296582644 939973052 44778446 519478284 350569 880787016 118243539 759760127 472655337 826592554 194985945 680841426 206459595 914440228 188881039 428450149 106929494 659523831 25067150 441096739 33380231 96891371 284633425 414154650 90172384 884079909 645288690 665662963 116894179 119470110 495878429 775943058 649328037 730789185 594482058 958140652 67981601 801641685 858336754 860508498 247386059 540633649 745396292 888640812 766707045 950960897 238420829 589734934 145085922 708526617 588293777 894649106 577887516 748703627 777176257 889143410 541413435 833118433 5688663 683838183 331756770 709412480 904228863 963327973 652424307 816408949 930622210 960050452 712891160 921533315 145119082 646126714 8627821 301975653 225981584 627411422 617646918 668486376 97809934 138795739 983725506 998660031 344647547 618778184 661686581 777514211 611174222 821542931 716344429 868449108 834091215 906103428 759612375 813667717 494571530 550300684 388020086 734004417 16291283 588923590 623913529 897230903 287561125 971651307 132338036 729700822 275087912 563858649 759221010 999235957 627337772 673008923 434606019 946977157 116738296 721369508 500128082 768153868 368623142 802042885 95502988 174440044 550376703 997877238 384342493 591233842 470520346 737456504 427106914 526337869 771867466 893497077 27786383 904152665 892528604 898849834 347380199 984336027 73728703 725798462 394775043 660211712 708998223 799246205 280302170 621627678 980356922 996224690 387948066 929010139 572692557 824802930 913794043 924086020 414497375 493895895 817246009 957575628 581340708 812115594 357144875 679516165 143542616 453247551 150611486 214883796 995995103 998441337 12243438 437145085 677667174 921884980 818474520 847098426 419063954 977182888 816474038 926493778 441445533 517183456 519897145 897902234 217719918 343265267 982148632 992797682 298261381 472932072 82340869 863158403 874571498 931400130 429593040 959236185 233129966 602784344 751900899 832130466 550814685 862923555 719020418 774928738 805951377 836779832 369346192 376739144 363785921 554791411 277534240 520717521 318832482 630716095 915953675 924704693 949295889 963916353 456510325 773470009 244817557 292901574 67004637 950896938 208108026 440573797 329662956 984819815 56972802 956169538 699340529 886584751 819090779 965732716 106625266 550553204 748275715 940851458 327532228 756945786 192521677 710097384 474601308 612508831 775296854 994857956 377639220 936466926 959613379 980403556 718638212 808581970 755381532 872248507 344252266 733447370 110366029 983210984 539398919 880135804 496445571 938485072 878877177 917628052 394619510 462657109 637482467 863395622 231193372 803194186 488283604 835566052 140534455 273315164 218376171 898972799 671202028 931428487 147628996 469797817 856919690 978065810 684327597 777856171 565952825 984860016 753090390 985090637 891405834 933426398 789489882 818286218 595786025 632938035 619057775 915472237 235205167 703026922 338504273 937150461 280104601 874941135 973500514 977272030 10071127 607860378 975715017 977328752 90599990 735703602 139473620 742298538 470050483 559976265 395271197 527832165 831325209 849208017 655669259 888406246 738826774 801207772 525087725 969429793 800397835 902049245 659694330 791092019 790006169 863160162 201673934 417110386 625272634 712462388 95940450 141811588 188641825 337996894 765722386 839055854 512604880 531959992 915969276 940859628 427307549 436578314 889513786 970247813 660913430 773164137 133142923 870964081 796655246 949573607 314605314 858426880 94835284 407345223 472341368 645621389 517212636 746260048 773687428 933034606 383406360 878778054 473545810 665238517 34647302 982791374 360574633 420813556 982690588 983454550 880815900 888707956 213335203 870864668 173142653 215914500 656074923 784226894 961788827 992337933 758622346 876136242 36545282 856420186 554670422 993529765 428199428 752548477 227576050 972716071 859928213 986761391 604746520 990710078 601808037 981324656 665450886 940281711 214833422 314104578 138563408 491827694 517199299 616070259 185110633 244768762 489104986 653336939 489529590 771971146 205631584 318727584 670301499 859556393 348904583 820046545 854884506 994362981 529559812 701031116 192673945 370749766 679813151 819645357 245249167 336745619 667175063 871679991 655680455 963634790 627824990 685594251 423527305 490999938 808198943 833187341 236749725 573540835 375137484 421851108 586310532 826237880 212492546 658290045 6260196 908105143 434465376 747358720 698878593 964152622 906551025 992532920 578578743 691791645 194885160 314908187 483354557 939806010 653990955 880449492 660157150 874787870 872857460 999931429 179484365 815167023 842777541 981636816 469633767 713723002 201591 492453116 413657158 819612397 680796688 754812954 550315114 907989194 706634492 908866869 551595959 819900566 615282386 922483891 614911504 885301639 411707031 792568275 122190844 207338994 943970390 951687939 994838663 998887502 391834690 594533350 877939792 884957383 224765510 710483335 62217811 411151666 520566117 854614207 192316269 772239353 886367762 911690049 983878821 992819022 680493575 916544318 146414829 285851649 117046951 721263938 552425288 817544592 374483335 976271646 107376837 847545663 273780963 660114784 540910997 960793403 992392828 999191764 121072753 774048629 510112830 613636981 688816973 813755953 826771512 883639089 671922948 913943201 683903289 727149320 616349558 977739353 564756692 803083248 37937966 850345085 589305157 979922620 600441634 684810049 898935297 943325741 759265167 944706019 780283758 935709899 579175537 601288613 304426443 811646938 61157239 358792613 881770979 897180506 751850105 898631242 447488240 666921537 782351260 941266325 819344487 980493537 623074198 719097165 936592278 941688530 954733629 971092191 497877175 545774014 919848743 954545221 558673893 756572187 849269017 879364429 236243821 322276731 488405732 680588356 411335918 652455830 381565772 851588923 796184180 979301543 228670496 471651751 344724298 615141784 701523645 934737802 337255207 958885643 316451090 600000791 571025375 913690849 734589454 832851207 571164950 620534561 790871514 947748951 889414495 896840408 129187012 497193325 334224823 507072220 147159984 252295044 280161507 385411940 30219092 375704766 810257563 996067715 689770053 944167897 366278286 584116589 337997107 534165026 859222912 980961490 82764200 983160383 474403116 775079568 494269084 746903357 610439167 984399620 100549233 412028375 3731351 591601994 134842796 868234572 182237575 333016378 968820844 980363641 624526006 726990980 304394071 397854182 458659744 865396648 590115611 622263332 735295805 902571739 783089836 962799181 953780870 991113422 355912715 401426545 809546098 923110408 810552417 837624492 804055717 973143463 689873065 911236004 469356233 636303821 347949168 580788578 584164323 621078981 388945260 617155440 714840837 994245807 623401513 936276762 236808897 353952599 496159088 904499025 576991912 981116340 218002610 965505788 131939128 849115858 118900742 478282530 999897042 999915967 503552829 538824798 648523571 730261690 27937889 73268889 735769599 737549943 441944162 824964697 110254420 419513080 788138033 905701155 97446187 771756299 126094749 466929355 689231020 958412672 285824359 668218682 999157142 999224687 696646401 733471385 427823544 551615830 99342385 944308225 319092089 976281677 644425084 823547239 274869891 597326844 693203736 900902786 522590538 995465085 157956739 865638753 251745757 656541554 62272283 970683194 520529823 675817689 365994015 388998753 472116873 519964354 18554585 887293448 774197474 935462743 911590079 977889544 736133283 982838058 541198278 767674332 237011211 548586060 137590980 244465057 731607493 792547838 625880607 938406433 441661086 511245582 185878502 240232715 284705545 831795152 395135671 902568774 682221694 729957266 285738737 509854670 134848966 927092540 760268394 864408210 167470435 783135135 591282988 733885654 24236248 856271667 512326460 578935517 556954753 733960858 890900839 914400355 681794904 879426516 145247781 527561810 981787627 992484399 898025144 963468491 756863996 799204491 68385366 547615284 971046924 971368387 414769253 797586268 771627418 787028187 468872568 797190649 260337501 515628491 839575095 846166906 470586482 701722140 466506601 811515190 949346542 956427580 240048599 323477347 707525849 947889652 596236209 905032566 340567327 422986593 371610311 497323498 389622673 622449368 984977171 992547520 631723510 730500466 573529508 771356226 185152613 419359132 763511620 818044956 307395056 689464392 476602220 551229273 438828360 741373666 379148398 796596535 821853124 934920699 513038026 969602058 914962866 994403563 168951634 736425990 422389741 669956938 347074812 877331861 306347882 743835615 52490718 343279923 663594526 824440686 614466117 790433717 272109178 887667538 28791533 122317837 445611911 813333955 352496501 602531247 900511027 928917514 285992640 614485785 98342689 173361036 638661918 694668036 595947896 643548872 520156337 597355129 868340211 942265140 149938081 378895042 432126047 613144648 517142846 608789943 355673306 453810402 927590283 978708877 393789530 611740370 59035935 742372080 109513344 421053849 334077155 463195918 765794265 975224814 626919601 801527978 552981885 895732962 354939819 617833127 154897991 276028055 629602608 741242806 291504782 948711961 114562788 538158648 244462227 483198422 181960251 331450743 646129507 882138026 619264586 655592506 621797520 777651918 833582731 937208605 639995800 657196601 941736285 975687770 738928125 986824767 662695954 672671409 912813079 931343023 683297089 791969098 115077243 157735256 736262237 760575678 465952873 598543500 215311280 535660608 389071504 481428684 365079615 651548462 426845152 550577658 821639984 996528317 934367669 981097970 130484840 703700304 137710531 156877197 525211529 970901310 107574530 841397387 895945613 950109193 447787310 524374526 582825667 608795992 246530850 384817316 238107297 265551109 701551621 990208816 687392794 787334681 554164954 756135977 170689661 855956436 775139349 941746352 724262892 924407481 198125811 707606755 271816397 781346550 41099035 727330567 504450379 672231832 975604484 992035793 377820257 414973450 381604643 678079559 88473904 577005217 969944253 975473041 607779812 644186569 294439921 929468461 922659851 995257087 731446649 788580316 886278445 993231883 715816078 979216821 903022877 950829263 76437479 958865078 15273881 456306268 904105443 909174673 587268884 751392554 393254346 632913141 575515007 623244948 974706244 979485786 719479917 894720419 293483515 746704385 799447809 858657476 609039075 695184621 900122906 913979437 145018252 276789326 176878043 278069766 297438318 956412850 773929713 802189049 146800945 552091166 165023645 598161451 405090147 438032533 555005233 772631948 866953365 920915993 585297143 977148506 443709246 999555422 582575193 782162809 699280003 978091067 805159922 826242567 158467416 727908092 738972876 767368216 492431283 839093049 620489582 804834990 370388303 861115942 343700377 718266853 953810130 986586867 940966771 941612666 16478690 137182599 141576123 439234767 670074024 951033795 959875210 977413833 832846293 895426304 698884204 817364711 721509344 839934127 487125805 815724532 709148747 806114147 797730480 938228557 863133977 969088378 639789160 687192424 410388596 936857217 897758349 967340986 850064770 982557482 730092810 781388417 999194997 999619602 756618693 757007359 548472839 850878541 13105696 757201624 364416322 736737027 895855225 928392334 438076659 831086411 105069945 250105015 290146340 672033431 719703191 719918099 837681196 929290871 235178671 365875593 256937108 805960175 31680522 63399792 197984054 552192871 984009816 987675388 785820405 909221203 357336855 569485135 433504696 904621238 905611421 959155134 349531856 430168733 960793467 972762254 947239848 959169587 407059183 845550403 76375752 233259081 463420753 780023506 592562715 888292203 348438889 886013454 296710523 777505489 674246711 683572306 637247637 661233721 537472744 555975628 469359551 959996164 72550994 604063960 443065765 999176230 709946439 998113770 319126675 587492889 913639938 989589204 261121259 956053249 857241123 984742293 291396426 920445258 243829214 949787504 38383274 808316801 48932050 490309496 587391824 704876321 841920060 996026980 438397432 885340698 827419785 891504152 684339597 827240265 304189355 813347079 777738832 956264437 268607611 768368107 136119117 594158965 465192092 797514109 828255014 933745623 744666978 872522298 891773488 926296579 62652880 533436625 516980976 755840673 245932551 715271587 372326986 658782784 195809260 253934779 948386775 993774492 267275643 810782741 901989700 922027002 942539534 979516528 234313648 496205860 168097223 259245858 600940197 855032927 201186014 376049716 709026698 813303012 204503183 835712403 309682080 904856794 666380782 964004462 820333575 926918181 907464263 993324501 158427726 195644074 251284852 715212704 983977619 986122606 759043008 796840186 718226880 957638929 63745788 929523527 517692441 597548640 352203387 573262123 349854481 466180127 222570173 702365174 31285275 800998363 159443914 552899034 39410454 152250411 461124228 783652088 958840047 968748505 81236709 920730909 607842985 807993869 68586380 474464414 691418052 915715935 558577485 563000025 25297364 757815952 224013599 678306932 10984997 434583174 146144329 380276257 568445492 824779170 457565027 671535379 802532792 915999558 827734807 981561085 453555881 634110013 395030640 572452998 602282273 856635185 147086718 882664977 865557504 986880779 53700691 373749214 452256651 584860253 898285326 912084894 204315890 814761204 331839316 794360044 351240739 814323713 381035986 872283877 530943769 854628014 489528985 747430102 222047696 442091298 676140457 763578755 310988541 399762502 451047607 593470672 321089152 626704776 301953938 678744702 713850065 837212561 561051168 585138528 148623726 259053366 365788283 481273257 67997985 323381153 250334350 780172588 127945150 907143793 821599769 878168341 991075393 992519534 190491003 583782093 214579985 237446176 985837937 994515902 774949909 964698682 183423095 547006594 682319421 984950894 758818381 928864086 524640580 694214808 663087263 714691124 291633837 471698987 255550163 491128098 203588061 379987008 952346931 971765995 583223954 633061989 787344566 894344598 95577000 215637938 658689847 896345932 44602732 243572256 122115432 398452745 479709202 797655379 450739792 818603693 69956317 708271271 507180849 997136182 238080253 341242251 951003570 958338632 434752799 741278376 489404870 577437163 285599252 972200984 491311877 712188472 288373765 354473427 222305070 321464893 262920457 658225643 94669848 837796195 792532198 972145485 348242756 647576099 233626092 788917289 791186831 866886824 821149721 960883952 757035098 939130010 956751913 974770132 584686548 630217165 712286740 852845131 496976747 756035140 878628732 934630637 679303346 683935136 605270869 829559802 556751624 835396889 842812405 981319185 928789286 971808808 132843425 931119942 924748323 936154525 290918990 353374265 341033448 858946925 772631471 789253847 116127655 619751325 430663841 743683252 491090978 671941980 554827828 809163948 388867119 420290917 896198684 906705689 475232493 790498594 5822493 321826549 413679791 893062599 927014507 993014162 45707997 532052157 138855238 655491495 909202763 909566885 69355416 502209245 839629090 958734822 558445433 974350706 753194782 930372555 104574366 218112707 835848625 898272873 735036653 958039205 369237956 903100143 677252899 870478697 510138519 782397924 261498635 756740786 47961253 832212405 978065962 988330999 401489799 561458484 213197256 587913042 194862163 956442479 407745812 854555005 40438903 463622755 387692088 533683310 452222989 632480728 128018056 746648863 610004136 759762044 457509138 735843528 986288799 999416445 848531130 893697947 983439481 987102523 326483656 428781489 573128257 633483107 147312155 596575439 909975465 971879888 561252518 942194944 223240519 592087288 234791711 589502641 978028591 983322271 276158213 800308822 133272018 670579681 653204770 894326209 364574618 998556695 36635370 67136892 251276302 903931967 653267755 972628211 221213041 821046180 915750845 959969019 500370314 962008909 882422925 905663364 490735367 991506415 473579934 537510102 364731527 870669021 344405898 812524388 667048454 735228543 72224300 413259648 42014869 217456526 204386050 728877838 492238345 701558510 337328907 622801553 322124143 606195414 446719612 992433150 370286041 399218159 929908203 996336407 498277835 763029258 351725883 968434533 932516988 956994300 257946544 985576822 259799845 591490764 60543615 660312166 232751884 758225490 959736121 960021896 263538570 951512251 960183287 970171561 115046253 610359944 597109039 998088487 87585768 896890161 718281904 731845283 929625765 963739124 309608730 605590542 157313306 488321540 377422979 434792740 629098218 909664409 289461611 617602735 150447047 950719407 245042871 625708393 338675870 497041383 459518746 913290446 269533852 479305653 996701866 996871507 434223413 527898862 839689816 975299214 376210560 885271370 337285509 672707485 532725734 836176379 396594475 919608682 947104384 976913702 882547594 947740754 502079765 862103955 405212890 406668559 820633635 916717243 522145219 557584612 405086249 973511967 772989068 823563130 270735333 692506425 90318299 581407254 781445833 992564435 805892994 994429264 414105739 570806092 398118891 513369976 362212469 535604329 946425203 965421263 191506511 826994377 826273807 976346922 40395358 507054202 644888886 967264429 356886564 788022107 364561182 594452238 945237009 986814421 983772545 991739816 639948915 648704205 681009635 834445442 779663005 819664787 414770325 638355007 148166858 903979773 316820723 841026340 596707713 657274642 370096051 930520343 844797847 852595274 936290196 940644177 862574721 993844562 323924828 661578972 144939454 542539404 526016878 939689642 880972559 950311365 844050774 896200462 188436387 335823057 537037310 663207549 361224876 520513252 490047060 873662503 168498504 270091718 539433379 941494776 980384123 994381089 793561334 835769773 540553719 673932797 239547050 514374237 659942395 946022557 79554910 290124507 747923413 892732785 348006533 400926609 194267255 535548390 480471959 684453148 443240769 899208277 785043606 844990254 194256750 543117709 306039262 426387725 638558176 679856456 800753809 835310447 130429948 967343452 701536450 926649886 406548992 784724342 693875959 908539448 636775633 769297218 271862755 506261973 528615304 728817282 95295191 843787733 978395734 993452052 743424818 906986333 69988939 895685227 364096504 921416711 453445295 969241845 540647143 942751118 524021330 734862569 146304937 507068829 469249501 797365646 183456899 855934918 934901381 940919452 219788954 466213435 365527381 531171102 458323194 980498803 684400947 870986150 402414014 518940721 594659096 752267980 242042845 967781275 584915377 958260428 401605251 647384585 291030208 404225042 831502209 884618675 712697476 936722562 45134506 589538817 74734662 588251649 253745029 843378959 854246634 938600340 427273084 872813556 959036748 997008036 158620377 798541595 596915577 826581135 431963918 582870253 988968129 994974229 745602900 850217864 290347452 375032330 418468809 643816172 18727681 370852218 742756201 813274160 266343288 943016256 674404581 809608355 391659253 987767489 184564365 913611466 938882946 949941804 712237609 814000087 229212548 799663281 898427775 984768593 244176929 796779599 371079429 554077650 10383056 99710825 422358517 629284492 95510768 954050139 978570642 984943290 657233948 904775558 706254889 821219142 683860016 830219236 365779961 876969536 274577667 519678089 486126017 935729925 557561540 620011069 425546774 519907938 481518932 970932720 402562631 605520115 800198305 926436720 783773609 960085748 425577897 774185188 387562193 825520641 724573670 756857309 724181721 757209667 308259006 669802738 989810833 990424955 28198716 419240511 160890148 388741429 156564784 742297103 701098340 936489067 939540438 959999923 334569640 400018778 647138059 712251671 989645827 997963040 805051632 854885088 87870470 948059391 36705703 825870228 772920632 858101944 862261829 995859506 793797829 860686030 568485871 771931104 650603560 748602449 162815166 407987224 50950842 204185323 556192593 791501075 228857379 320445928 793750617 957225713 174667998 531172146 264720520 961362748 24515682 921319718 341351737 499841778 469395165 473719127 798548289 816255492 728220740 776724149 517375314 816384494 104978366 997448206 797364800 995363848 328725643 637819092 540208692 822033065 127955520 546194323 678466124 813974372 695525431 876834825 823786733 975608601 813137534 985379664 517612816 555983878 471912690 606421549 132522173 452828746 822604542 894857281 236983174 341215048 518827523 953903072 97471954 527441137 876884623 994164989 184028215 775502532 428316749 573233516 30553083 911527301 552574554 567410656 592346805 753743790 742148435 802562565 592583985 663335467 270854877 912457872 426241826 985716732 341969663 819707290 969564089 978406740 248037453 973965687 797216341 986218577 79754893 461842716 233925632 912427654 603428441 965372834 774697434 924662797 809256636 939025266 213275865 908197954 778472187 871137058 531336502 774349075 287096452 370863255 294204776 371262783 432131722 916365200 775761391 792932800 887620478 907942604 560286028 642590979 378238501 645684307 180888956 799117594 683369215 810599866 349477465 947548375 457681262 932587567 602680658 851851547 328793018 589676183 236440328 682253824 808303066 963375217 230497008 415644177 869823551 915547115 544622564 850620267 540697637 883090718 596432839 685614998 168329392 403029961 878054108 880671408 662437356 818937911 783142031 833518774 790980120 916001996 658880668 818905639 35393301 257929247 982190363 998759949 400562839 766343213 753005050 786470636 122425437 406983173 627134423 657023758 516271297 602553035 995812599 999617284 407262742 944790670 248419660 294373751 175389940 469634119 438300883 854840175 330935273 912471804 616636146 673005056 134357035 468543259 369639442 967360531 499208653 884378164 388944436 620174581 626151756 684729232 47552673 189734400 779762805 924961761 744719621 746270770 774893862 837374216 327169920 547872069 887508118 969645514 70302460 659069260 629521562 992562797 148843221 194373596 843669092 980615062 67880548 180037789 474570283 728812024 813059164 995143522 632261983 741654028 649238473 945981162 570125918 770711416 792346753 916076367 508986880 524966972 511478927 878640568 521720003 859603401 153731150 227664031 770028306 932845496 436456120 529632667 156879885 964291030 258967778 345404572 881311662 924017828 421864286 779339732 766947644 859738472 835779144 882305342 605345591 847352417 131192501 919396194 191866976 999630081 517884462 640156924 271294274 300242092 24882326 660691441 990775282 994076641 817780972 971191772 871306918 919909806 59097515 959294946 129124120 442491945 778429416 946534467 927905201 992193410 737673176 769462115 459615441 749231245 173425584 677253701 150092119 159690499 186198741 694902286 906117115 987921658 826430485 967587212 105493971 748712132 239878477 818641092 150437571 743125343 262793811 614374035 990339304 997576086 763435357 808716069 591892605 714024874 35020944 926415977 834415080 854321979 32043461 615833235 326813245 465010478 824718893 913820363 552657458 978684370 184635546 342044035 517300548 737506773 170357301 188835086 752624427 892983046 491585706 753220480 521716769 872654488 582494586 656105676 563854353 868574258 642769602 763150994 528121207 608139336 733862222 739723363 482321732 926051584 508462359 635398880 549750872 730963515 351653042 653545800 977329867 998916069 135777372 180864515 741789428 998814888 569577459 837554520 795381276 940185139 670512485 903146018 541466515 699977347 496124106 898475805 506168338 556072381 32316052 385505616 780261298 849548257 107505105 247124965 889396479 931808191 407369319 422528912 396025330 413427038 396148486 557056283 684462263 856114884 97851591 482008411 803365734 856688300 706353426 960878669 456452492 727560496 173437360 412010625 517947529 863741399 768957185 808760585 192361897 348787443 246233619 508078887 609092958 722920002 902543721 904611585 132537783 931717717 542242456 689379088 514840722 823963847 138956819 162640265 419556571 982031783 379063850 987891916 510255721 531625341 61905670 118061569 469339733 625239915 671237437 896399887 981358082 998590529 747969492 896237811 347339871 918187974 998554150 998805609 219182120 460900290 570380195 964533353 767571999 972253176 298160754 561321516 260867803 585046800 231476992 737660998 195774081 591552054 135895121 729816444 274042603 469979501 778756950 880367236 436308597 987420629 57009151 926611962 214266788 679075705 341846901 488385982 26021098 631062436 47783702 445873734 471800117 610755233 968139995 996621885 735241962 796589379 340511887 907337516 437162275 876705660 612858003 653596279 554134590 909363289 328238752 434553559 322569477 568697925 17921606 149337880 366143967 926033550 666582156 988639736 372362891 633548931 50223510 470083411 593712113 894251806 660863209 807548862 595344200 713873201 200767898 693857101 202068497 423857996 660869227 892604520 830397012 838811094 304639445 957532358 11495557 953995505 459154984 966997928 206710673 704737185 387383999 416804609 958176699 986480422 667143128 948058856 29773656 83405499 563706682 991489357 400321842 435304046 719153437 761145917 976967062 983647232 374669517 894671187 608888381 960464477 604606965 857884405 126084477 618695526 98507414 967876160 713019929 931547732 391462545 656487035 480007127 875236052 568487732 966712783 553466989 644999749 440231613 831954067 115495401 535167375 188168248 362362066 327287108 993949332 239241812 860128258 252557818 847849128 892265081 956107427 547301952 737181627 169649960 858576972 954726827 968916849 536648515 653073715 993269712 998712633 938254549 981701741 617677906 984652532 561206639 975194994 379649643 674745108 875528894 877107449 374874585 522729095 191283778 571327786 724492029 954283998 890231969 932729176 739692364 998269412 614489060 832207403 451264795 453521492 981716124 983894492 453639248 976745169 510190748 999710867 640251538 781163674 590808474 704262344 149328257 382655976 288276545 331764264 837566333 975494833 767875245 818909922 311412487 748985751 912335015 917140762 855596400 974247119 415760977 422482115 423120918 705458911 473183874 995185340 841575682 909172373 422210797 925321232 858923913 874036843 575158083 732622291 891889280 932086142 110148438 828099944 732035121 973903545 267324209 333071200 342782161 510016284 61902971 378016285 347762311 709571570 816832060 858860155 788461701 815921151 876420597 879598169 47333690 741071311 814152001 833668650 222579105 849653448 215349706 476192575 261114602 446391708 408960408 737971966 412736253 660147230 831920721 871048081 191875739 402148884 433801325 676782415 917329569 981587437 721803874 784217929 582498293 746002339 219508480 682678723 442628 420555443 31693589 157813374 296031421 733847691 404157463 681530195 713903084 908898791 327969141 777412602 304683716 438092903 170766197 907265915 127027413 612685307 333226035 489885667 245433054 553199436 917202997 956379630 513361365 935195699 604505652 795763855 109082748 997978632 47605877 878549243 887732284 913758597 242039522 944781704 887237009 967455153 335801688 384502226 525875406 860651301 514286937 838371013 136360663 732207792 405013143 454154418 677827694 937618942 372831567 716722337 199893688 446837942 448185828 851443044 970159130 973343012 393495852 726556600 168766750 203412953 335969823 669198623 843208702 861328893 535736243 648929872 832471324 945656369 156763258 756575458 587804344 738999684 872948575 920054982 556504585 990483506 210225243 729622058 559410273 880796808 392069278 977459590 831191881 839266790 680809653 815445250 800492535 947467832 209531298 715076678 372840865 952927708 28577869 789074915 595225483 861256103 862821112 959977458 196496509 531518784 95581650 170167396 749993031 783515982 974476324 993646445 156010110 188956267 14533605 74042652 270198270 301816533 576491202 603887037 747992698 983606359 225395073 424124774 370271038 861194419 216239993 373401164 91383714 330717611 494680217 668214051 949258273 958685954 602380638 612296012 472610089 664088085 138296202 957061869 84129687 362685303 425781472 510771419 80663907 884845362 130324100 923193408 35705464 471166940 14856582 488448893 24905679 88560306 858422036 888079904 926592948 952195041 34661387 402497967 122571275 714138004 934519968 943987052 561464332 895153367 510258414 954951151 662710155 828360738 590114400 672625642 629535553 829892119 83336974 993003853 973557908 983129779 111563440 437956273 603259306 720475702 211945422 964373668 742279639 855779815 188528961 620534148 690921146 799951117 399228311 731541412 795066538 947049299 249528296 492691123 623543380 742189356 15329866 109864920 622454086 826451559 312765843 368911084 490216731 639023240 755715514 841646274 398068107 458940371 853008360 896158129 603995901 778872613 48256566 112342637 541087613 897728121 33939607 983877707 176793413 724313767 551027181 648849222 434012036 621485650 548441852 796812351 804927345 976770890 79062415 903860262 287821760 750254282 818673013 856974885 821824406 864423970 330808410 443022991 855681847 905173279 226746013 275186620 540135881 578588649 780699610 807433025 506853116 727484755 490504509 772603225 735277399 846146028 255053585 524747649 946987808 967807593 25238553 285643421 549837765 549978343 757607562 873879075 815034856 966617236 827038631 841425152 564154290 884461816 800399601 892261493 443883716 834732632 393452052 442037940 458336762 788063673 192225660 597605464 990962417 993142187 120059059 231478735 960094368 998580866 725785215 978907658 462809801 978930197 660435547 940565313 161237727 736930478 86097366 901591156 151507331 739008072 124731803 314395984 230082646 766728904 874703938 956514043 517582531 989379282 43908928 862067880 369216117 737599548 517391627 772025240 17900133 662387155 568405242 814923110 74051165 622441601 961240155 977661986 64945242 886548402 110967951 278526676 81907609 363649645 857227481 865046003 715135359 788970858 876684241 905755720 5800641 888840849 809539910 841530881 758240872 906376739 921193322 959788946 656049820 703182087 172090950 771241148 944436891 988607036 896450850 970876932 472458249 699757504 979078773 985376962 419647148 579568136 707627379 764529981 769346563 817081060 542284823 669902433 500107203 612733717 589856066 651579132 620634360 720506399 363495267 970618778 884344819 988340277 691536624 782200881 454006716 538277640 10920613 231036380 109744256 208833152 126484173 512821261 293285815 751932730 570451770 728879368 55480545 153563119 922072570 969359502 308862795 420009149 778837590 840745764 825599113 832291376 269785567 714881021 611094308 639776894 540148581 842281276 128216369 228507035 760183228 826522788 800399295 993938298 949022128 972269819 938930376 960963231 43230261 901509457 492790303 818692879 51268218 740621037 59604683 153435724 126402071 348839572 753469965 894911354 109762563 353390661 200209169 267170427 326148820 975136485 729564969 923831089 688815227 958797345 966888607 970504805 846706391 931069960 557612055 855679626 380339987 689882187 346876412 956058844 397761384 628951567 67694397 938782190 433184179 569148880 614985358 968712709 578449396 702804438 937335465 940882817 114522395 791197194 886277301 901057416 164421655 191591373 922520282 945722077 893587263 903562255 800459704 846153593 495692792 883653023 694297435 983000895 784317020 808163435 700771737 828544772 792129518 942221804 402185482 561621500 197721445 966788046 272026028 893632000 136510574 531906590 342948949 824759742 322805599 935834040 973604324 976570832 992432945 999885180 935036282 944052373 514948359 867869028 885129646 943010724 423219829 572526792 95847069 954405685 138607368 562468181 395466681 677351858 304358690 572260139 954303501 966978038 726119123 876448773 113326563 389707818 752369508 769032196 435017085 895909136 26691531 505285886 212521425 406995261 334841218 758817138 338113374 485547149 115637122 586057367 499388902 910940551 462947718 683346157 385974083 758446350 943290988 998290580 176312191 527112392 105156966 176483374 745517983 750236299 10208485 744224948 289980749 583180390 749681735 923776221 735485744 800905916 997209561 999185045 444332975 938561181 678399611 732051198 19348623 362841956 814555280 820990389 735614707 925015053 342005291 701633614 587127652 846905988 313156392 667436868 95064781 306668701 284916583 502505713 295146748 363967378 221384123 490925244 767193674 975934738 495363360 741961639 97314897 643244108 77252639 552542651 598839298 951181858 47423648 523237596 15318614 757840664 963292259 976634827 413332769 704790953 778357020 880073309 680237769 816141105 588447155 661576513 987962540 998791199 752179780 863513448 649211206 866608424 698140702 736392566 63273933 916660279 189114945 365386810 778964640 916134278 629970608 683651488 161225360 871749756 256996804 777945603 448549644 632951867 827911834 878030989 960700512 992929759 620261435 858855960 398057732 536642471 294057636 459307015 955869005 976590141 444782407 835685207 432376228 541259576 691603278 839624639 634320701 737263710 658576829 688759980 748381045 772276256 673054308 737011028 197292562 716575645 897074849 918784255 404513304 809359250 329703358 865964736 403991266 951798976 157015254 594896632 681375435 857256195 547307832 757570937 659284204 984587205 905012423 984298110 793822346 827290471 889916735 947468748 979480288 986343060 432032165 880293887 694427898 727378188 28660201 616396190 65268279 663391780 286392065 442060411 703132554 803889668 209131203 392051617 700065670 868952446 119247147 505238269 225915671 299491464 450585169 873568404 963099944 969993624 736901554 972183251 144206623 798898901 310972923 395327522 989175034 997521773 187009826 949943603 728455434 984137778 275805782 654525946 934966450 965366973 111668595 178547518 314446193 928440482 387851210 990726541 509814919 695786766 54195368 668179435 736323824 952878264 726191318 837031493 377425743 480814891 839621550 869713036 478764881 580282351 162793013 283817733 111817029 966442103 118263778 545555205 94682053 696068278 115215687 962272168 551367705 837287540 56735008 492659614 768159997 818913803 598224314 600118169 395904850 620877070 685420603 830802129 733650072 846180088 834443456 994297857 736582623 844284630 594912798 851568359 504144714 528367177 773882847 830193736 510952761 774849098 249909628 405576956 685279247 806335950 829833331 997555733 432502299 777545018 63248522 297470007 722410926 916334268 273128117 999261201 533967180 542566600 402078590 847828362 716264531 948682793 460739738 819903176 102373630 748458026 320626858 694926639 63830853 621216211 517109405 832368406 621393310 987752732 783634276 995722016 443485548 720744651 215907552 903784383 529506157 556657490 667766826 980486096 608893445 741813059 437299921 552812758 361776771 971479436 533419030 755698125 840989964 972962161 468548385 791040773 576364374 817180280 572181845 875292178 473917383 679316245 947533149 995973555 779942066 868757124 329704095 696289466 97520572 289685570 508273779 526019571 465319818 712343365 657842621 978790687 623073347 920478808 609196904 618388562 401462690 866674457 643358404 937863080 569034998 831113986 296265209 832674263 738481541 757453174 152159526 184593832 808488023 846645512 189686912 212907141 479320793 983404631 220181478 919284053 984793310 994070301 547914530 638120203 755747882 788270294 625060098 885294579 993562817 995279158 967943349 970458400 670603946 846202093 568355951 974672359 614611091 780086475 229249240 767353465 295384554 415866755 14788480 485206611 414899440 530821320 31111261 638566854 948085827 969143737 533711505 815165818 547793069 799789381 825991136 879282813 509767915 863126040 686067311 904234088 319353190 357522462 705173858 861591502 722629676 755545674 30962313 253148028 756265594 968383036 380372850 513374195 956335210 983034980 653645219 991435908 568930700 736697669 707068506 798160075 94041228 673588848 412194886 698871789 720849473 920164940 377127756 501572843 527204683 613736596 563326397 687695629 984480247 985470560 457909368 978163048 549318644 981074144 985424144 998419463 366301635 414316897 669534209 737788567 653568789 890011803 215833587 739881470 212040964 307775694 329489147 936943809 20911115 525380605 788161107 820222070 688226427 834344365 993755641 998741878 487689960 863509739 146443518 565563866 427332379 970606312 376989870 980473275 325881669 350814230 751241485 919411290 931330225 944217663 340899504 389112763 925719207 981569100 323107480 627434625 902851227 975609148 77636930 277634590 728874754 815615147 161885229 174819210 510303920 907223587 984486745 990226872 504810954 831747777 469476537 993808965 910340363 930613943 683748963 704941254 388190338 931791472 717415250 996943415 486023952 819106261 791323143 936247157 319958487 457133628 26204519 181119281 596013373 998224381 674405790 967478023 166332117 248066814 952018243 957231518 529141797 593717323 983029671 991056309 374624515 759453644 330643208 551536023 846158861 923667988 592356801 839976136 160646083 211036005 909934564 913446271 460928437 713104356 166761584 431606954 35072274 781502441 365739539 463743819 522815673 979662457 766901186 794646688 955247932 991484719 700531580 788843587 504936156 719312305 533207534 763552075 812217746 864425367 377717130 747024727 713861375 938276086 464785401 931435275 129636689 361680088 754709614 855392484 332241238 894386837 391223168 744169440 663055224 890312704 563429498 914173260 202666062 545665664 201101716 656818878 987517389 995549961 668692020 902207000 267852106 610963608 904539023 977411905 271041600 550179461 451176684 560555271 787690418 891458464 934287241 943287808 802976189 979826889 11638533 76082032 924553857 989555702 650229753 963771315 399437216 556075158 581039198 969615277 20783471 479894697 439319756 660455916 150852321 956945414 242091056 861262486 32198961 474287918 624324353 887250683 759157858 792653431 988639591 996788960 935981540 975742027 451317681 734774302 575419459 902070104 523231732 901414995 399317588 505201935 179275633 720315450 66365894 143490203 596241151 636880468 731865312 987552426 257052418 677115866 715839275 909427196 237533821 815655455 518031133 873189480 488375598 674371892 437573348 877885128 104187393 255412637 559848771 965597773 723269768 784928076 19709550 195474452 654390986 660453608 27433122 230699066 30135754 358649896 798653934 956122342 842863693 952830856 475333983 760266837 450600616 557732148 749427360 802196194 196030453 478809754 610230479 846589361 377943508 578852625 260428048 262045961 566466656 889261969 229229208 978692100 868218359 928214965 549339849 572192503 925290207 993807031 777767541 882378883 628961400 804364990 811868094 816761610 987168740 994757945 801310804 880273907 527498816 916611448 927926689 980519134 237696282 323898718 274568244 734647540 163391190 900417471 371023084 647195868 915900687 970920428 461524506 840436853 353835912 454923212 945947702 952941844 534879890 789820241 193567303 500561683 888121116 946024410 402308598 940102405 597450042 975134803 117533924 645693526 725476227 890327918 751675415 896917278 592708152 984964326 365993470 600708873 932547439 974549546 957025574 983508207 549407190 550161692 636721987 904851228 411880153 715839320 801407226 887664180 863765973 904376312 745005826 750304899 307833761 679070196 863054014 996738741 468466412 669302877 260034696 896839684 359650589 658095960 469949688 514314399 664106711 670200289 381537191 656535733 630689292 866207398 438713411 845430985 460566301 820438034 383645047 919974561 886465115 894717984 631357073 993136215 536932316 812672761 265329962 640277973 458864648 698690077 851824685 988379369 212317006 538607301 400340960 720927988 500220284 724662261 751818242 990260005 578154246 935675188 105225161 857225322 245441809 919457416 269984163 341286207 242610470 394415965 143858241 450732518 735997631 890327959 514613242 928259844 799250979 908166925 322108966 367521308 538259637 763178355 674723969 704775576 51153462 329539388 119713404 716119045 946021592 973062826 449943758 683501206 841438191 956685695 815786132 992246634 481321541 891493835 186077153 576111743 22381566 608995767 719228801 964095531 839792261 947055840 584300045 724798855 720624257 850389525 301666204 844726700 133692262 323998515 170002667 805966277 685613684 973139989 357169312 981762261 6142986 357102303 890315960 987610728 814761754 859292732 185478831 984042478 136662741 772167298 171801343 791529597 16996905 109892083 216655713 241988638 614298765 976172791 809428581 998572762 271346004 276099071 984878017 995642476 452885120 490143195 45976816 282723448 786953664 978893090 630782340 887717376 237821107 478436057 1916682 919299018 148946071 962359854 38795238 59219567 111149238 569699474 515943329 601676392 49059014 404446594 497189533 830527705 27272424 781903958 345378986 517501602 879846805 896079228 990307837 995018878 209468628 388192370 860303215 988597443 128486175 446254677 510115312 532414695 63185783 726047175 133367534 686376994 691580909 729974112 860658737 996790706 575208300 654435553 904022143 983032022 650656103 932148820 395859049 658916544 717900859 779673723 676930088 813271955 721812890 936487533 630268139 786774143 320321023 662100420 474857175 860789719 500678322 539572462 448292284 603768176 397740894 535357536 450933078 698663401 163008800 954238827 864347782 868584883 480348280 859536444 885584552 914946339 539064016 542301978 171928930 490836611 958959138 980841476 684254822 806762181 87957730 558452762 736738780 987383418 726136711 973365262 614261126 990385135 476814014 514802370 883920415 897657248 171555039 553367302 434316740 898435650 51352519 65971311 245345765 840164829 230787265 530084588 172548075 730843323 628063175 751186817 439227660 706538538 130862897 648780563 744386321 981519683 574459955 660857457 212618544 954644432 311084707 541776012 84742415 524987067 39622988 792268772 445288377 536027071 335898095 720155409 40358693 974851518 167518451 359208467 488019425 912648936 450222416 934122527 149195710 876043090 644133999 844556416 345730209 400307005 409095414 985640818 667297874 999987498 720740096 836047950 269895075 891075328 853021139 956334294 136023518 684765535 339235530 913842255 389653339 486139083 428202549 950035874 321214857 968196360 102152358 671481411 799515722 999331607 419917550 520966293 491451101 724843219 444863871 514877451 599543626 644953573 571155059 907328561 427862198 882315783 880703525 978335001 994707505 996575224 332462588 643693871 683997314 703320356 807456622 933533039 476553535 849599402 830639566 859873618 942402410 960939784 70412943 990739640 838964478 951873072 607873155 779665768 913229244 992156330 90600777 179174150 195594323 211924826 20908876 267246092 390188335 652452818 57717479 85276693 345706898 959064441 981416274 991397808 48898764 809461346 699933678 979698549 260739962 399616410 891147776 974440860 902293038 999071086 556682102 666814692 422506082 554349794 796682981 853687787 614717338 921021686 750138881 953433561 395661964 460055324 659859210 817373619 385456480 699045746 576588325 829125237 82169605 353948534 710566671 840612270 226195177 509835242 263799154 864581718 701179579 946183729 253072918 281824588 948108697 999499107 525771627 947392946 534609642 704586325 408477024 946423191 66636161 229556775 55856374 879959379 289654088 343537672 623151813 783017963 898137284 998772808 756376669 922717165 346774666 793905477 812661130 890174734 904376673 957980363 795850898 902736183 568457148 932037433 647735115 841559444 237687910 912847831 888463928 951500109 292897189 362212857 263955101 637463619 707631310 779684243 208751515 717919596 663617591 825901129 184721079 703826267 332194238 801171683 483608159 547671040 723026678 855524372 64982144 588348690 979797478 990130934 519426244 806206533 678136498 897331258 308865333 905314757 637157582 815018600 256205952 378793715 357377589 599698097 929108747 931973268 143605919 315873328 512504243 966175194 414239273 418180651 729580840 743866824 457889263 580988725 181749119 294960315 773410707 970847501 453488253 888467633 562500842 977563856 52809432 309096152 348906945 726850615 808902471 942489710 716131393 772942181 574288850 947472223 409940234 710157576 935419853 993603112 366060823 631363364 343003725 579191203 954818086 972292764 160555788 592853224 970238811 976655266 179528618 351755361 364078204 656117841 454277240 860803966 749003334 944352239 1531483 701771764 894514201 956622236 282506555 317988044 593764595 662798352 653829565 967367106 865788402 966507693 759199957 930603990 147788004 956616924 296594411 806998252 573276766 962646582 745517594 993526991 921552132 951047950 585955405 636075827 380754495 397603377 898225086 905815646 140766725 992854356 528040767 610425142 585103021 920485891 893456404 907228818 308458649 419073875 488455023 902463164 535373476 647067362 496373991 510714518 112800213 926754358 134779922 257747989 503130479 782713752 583392622 902599546 996215027 999082507 998301558 999729524 778104068 821179407 274246637 339031590 173029390 846394036 63570286 302315290 953700226 993626941 895770482 967539973 680787863 739469755 616934560 779407304 449222188 742877679 641822880 896788978 290411713 550381126 304147371 823130333 367964822 667739478 627948214 858212343 804233549 898946617 899979479 903707911 260986360 578022648 219719551 447573837 178553669 883920209 304990889 357109133 655289254 995943847 714829877 958903572 143459167 997749862 600993721 730685209 698161079 758281330 812801027 823815767 456463129 761971092 63464365 337556536 528495506 739709341 376711557 788426743 535494347 553664969 586783 961943040 653524786 780230975 668220039 913313851 291278064 488605924 324517118 898490631 109406367 760020277 699703944 932797569 539063251 550746012 520949254 986457163 823659559 987165741 614321774 962085853 200716231 882990666 543412133 853397885 699199986 852709062 544404224 601999888 899876116 956219910 104277912 558619173 649632077 680554865 463380887 877940891 560272532 703278351 443755245 795644092 145310853 716817413 427654349 656285670 819173982 821601672 109525404 479492171 401743669 617929676 487607207 753719092 449113166 681838824 732122186 981268834 575464893 746734725 548365377 928445699 902528588 944685247 895734134 924293000 787141745 925408571 815354731 936125900 232882200 432319355 483963553 701527762 822980948 868032925 743257271 812769145 432807017 974590157 601295421 794370309 938233029 965523266 432979151 814950553 591782617 740678799 737464322 852265173 705146964 717269347 694064521 924122442 210793446 878653529 595621739 735331631 924709691 987584900 136099008 182664212 942785251 989649035 879378804 894064530 17752670 767568567 211863821 620366298 864251826 899757966 340174927 630438075 501645618 797144191 105323908 941876197 605190035 840573882 539822649 658517706 186487727 733616466 102604233 852764091 354241106 401731948 55758633 867281695 969643263 974109343 23283482 417174289 429875705 999400470 450475878 681020447 737357827 979337977 210052811 297566144 992931728 995513762 286192948 708753762 496106685 692832982 382458776 947085852 31009049 922446250 259437828 760793214 290739579 762132254 340223409 635923470 376711448 786929904 860843761 928536781 429154145 624556121 288883106 973357916 153242646 675012933 570021436 683601875 12111913 838463116 415254952 823171297 755928183 906617504 67804292 801386833 5009121 217969593 584025699 723063828 790322104 976605856 109456636 448252911 726844108 858025606 531805998 686029619 402654251 710803421 347978755 392466946 571152467 854453664 358927867 740786969 933545326 973389147 639652807 842402002 252263706 462903493 904411234 908208268 768394113 928955020 997162754 999119453 68896058 440656174 606592207 864447513 878496498 904603077 655257278 811103397 975604603 988330338 107619099 259902205 560085047 978917806 774384191 856494294 757871268 806224954 280957481 731915358 194978523 672565131 554935012 871926411 883466647 933124517 217172345 269253536 77821946 233437500 669397708 950364365 563860365 638150716 90536686 380208568 649420456 846119831 838951242 908132177 197994689 840607359 660771375 761765694 892875371 942793775 15093868 160305607 465466768 609934023 556320080 851109542 899603877 995295694 804139785 957265548 82504126 672023790 335625237 978086248 490690113 660094000 745666046 901660081 255720482 348851996 857924815 872585234 989986714 996316812 30761405 431003815 575074047 945114247 634002054 732186559 600998026 740194285 185606135 364953596 14269117 664388692 982769424 987202647 210156085 591640473 809448435 884578794 710443043 712028416 368034946 782080725 962793535 994181717 512453921 978439835 29722444 895658724 178037759 633913024 573491655 855486394 594437840 688592495 939694 387660460 136751338 604656568 455100712 483730237 847371985 868138885 292935417 933680843 747968778 786853466 28499132 417116367 934670097 959174955 11376109 71397034 266025548 721628998 324050923 543621607 495801155 516982324 796416790 811783072 820764482 968604843 45116849 636113652 391157814 915496129 166971252 686832209 375090506 609745994 341834836 448114949 192784200 613570712 289481271 492593983 994627901 996369919 763845019 999929686 831495354 940878835 518682665 686229423 557184618 754636296 397899699 642925522 290014480 751957953 280312938 443625031 827268157 889073125 594747714 689098349 638937451 933804037 588035962 881728604 117083778 759275555 83492981 416670620 645397300 992419179 58872696 839828616 902646652 921798620 584188327 949999352 232616167 936180868 144930457 767094949 442945704 606470457 592043033 667130184 258912580 304137116 59201700 640968574 77882467 740536252 365071297 373587985 246763145 626871408 205391689 826127890 543126522 677075062 69973338 169234717 340006153 712513127 437203468 697021818 76367480 155278525 234826536 779129516 798236078 932822150 51353931 751860167 114848697 817320823 873756394 898913662 799679010 936131575 708020083 744979319 624175905 700291475 231053732 404475695 208780659 596525018 76372483 908434276 775352299 807162436 744141171 940359905 933196771 949431735 516178070 847974393 116894829 727804578 666883783 816119754 994139 234344059 325186551 845735946 38139354 487372407 998380838 999060507 686710199 807443848 499097901 585884080 995333390 998063916 840541576 944427892 999266200 999649392 559456665 877399360 941089668 959637724 731928201 789198879 514830057 634564664 658692650 868315567 191659001 994984338 167963073 662031138 294153556 798196423 146021043 451477210 841847203 908583078 419241952 856977925 598289269 680713757 648706103 887905904 341315284 609837441 974339880 996163189 905613528 910080828 944727534 972399786 696045621 821601021 973055174 989757341 718251170 997121213 168103456 771048646 881024099 909366656 858808277 968380308 420691149 465482300 687576206 902870278 581337287 636056532 623952745 676230992 444352990 479468827 628659482 719663421 155707938 302412684 676791832 997999913 620585440 946035707 127036285 298745307 517397947 710313439 300585354 962344522 797766048 815365599 745723806 765707071 577058879 817794143 773321907 784335224 685899798 899156895 460332468 508491840 127625104 199796855 126200686 176152989 496502933 713368840 155984262 657451133 865529579 868225194 286512471 471159375 793974167 943979106 259486874 339118680 405512539 934146104 3042084 251131579 589825511 600305412 488090494 853165986 25469417 294846178 2904176 714247699 152485168 253740338 924587820 976504427 334845721 891208581 667072055 690191775 8059786 109113127 59596245 976023110 595786835 752068615 700519674 924386732 508407134 813966896 104701017 145327588 439793699 776743511 20595458 787274189 415874483 729734228 838636289 897343140 118345901 619862766 207541078 809385113 770217974 903101160 190045508 776710706 850411377 927858223 518901443 747760819 192584015 383798574 623361164 929445938 243878788 606763452 544704824 593666643 551962417 663896962 284411955 820759225 297410840 844251849 30233644 101968223 239517845 247709844 230730238 970726537 777918 187240014 150789612 307426239 398599059 864671334 949597508 961092243 506415039 991087858 634339967 898381399 102232693 781446255 810199877 826522533 957346047 980240110 600480669 643037643 833865788 952691436 760433198 825145332 294791544 757881076 211369597 780297461 13018042 846051114 186618366 307397977 420292226 873236541 708965300 899212799 764820185 956876135 124706721 964150879 383082365 569689939 169829768 228719797 130577846 412718919 173325375 914551787 443187459 607165004 358882356 503784452 985687088 985731882 132560669 606249847 861130201 930052647 409689376 846691619 833052751 940411764 40950105 177583218 644738753 979910138 629906080 865424298 777355693 912679553 993239933 998928971 180727976 476085540 965397791 985625530 693548675 901192556 576154614 967536741 649687458 698929040 448136057 991117956 54009800 216414611 876707270 910733966 419489096 513097102 255645613 538094979 601010318 756320584 893537777 918416950 288081873 833970062 271827927 863025146 301480252 708240433 860933669 873391442 637438933 692327727 447257192 845908843 920972698 952504558 663400197 994742007 423487897 596829283 874666794 902624631 902351648 964580743 848616029 941888687 156823995 837388142 737772121 907449857 474921146 497677275 279666715 713199593 606374047 822628304 190561637 453320884 646685358 700633569 897174571 996053106 53282841 137201626 155385454 298748575 304172208 918517388 166525240 885980819 41008137 385926119 413963547 506754265 644744908 965519785 934341212 943597772 491969919 981620922 697092103 959301755 588859244 643752673 6850463 325104675 129818092 147621911 255269680 604853198 248059152 681998923 634919559 657783837 60095024 773795130 791500884 902219037 158155697 601866368 771093386 825977109 766199034 957982560 222085816 652149702 215309104 477194716 16542317 619557028 126974698 138704300 488819916 920474742 213360788 454979549 117772798 122361742 932818696 966537198 498917269 775410594 922476180 963411036 127946457 271397686 32849014 628032341 899330387 919694116 149488442 315577010 163192911 893723036 825300790 886752581 684586431 796667536 890666452 991812820 828686006 970372238 229502085 407454923 569660264 936140962 985720591 988188015 866428095 962591612 328649949 535205885 54981083 934604899 469535252 798298449 546783915 757671582 480291978 985441893 683679132 834840593 29982467 919670359 679569066 871995620 425187682 717472377 489303001 974259678 647044346 734893497 160403364 585289806 352791575 534144784 50660895 810409390 830304025 902892553 121234041 386867673 134931074 378470158 189335029 660842097 176512567 720887485 512842733 872489237 391343793 752944487 100944533 780066725 445702064 669028146 963086139 978564632 796623449 825730001 744920990 936152614 556383130 951119466 671963082 893159554 782466924 830110092 194169585 407983829 611355652 811904968 139160708 186591009 70305067 399011107 122037122 549343622 600409473 833507186 47012084 492534155 115286922 177335194 471430868 905711744 166805314 869224383 832551776 878613205 535777901 756943103 831314406 865024605 256838840 964512461 704182203 997392276 950295210 955166702 468244162 497278433 604605493 789513997 875095259 950834970 424627996 627706480 835631932 874289052 499645613 719642721 103187462 695965566 532380742 664635588 993043696 995987523 67780919 544749110 932358929 998810186 739518972 759069645 728277538 916853086 766986626 794511747 957059895 959606909 160896268 307310029 810973077 907795504 446790970 888539398 567410883 651288578 438921705 962869772 482289420 889181485 713987423 959788176 456792257 629724127 619028366 828364201 224946943 883804835 139467803 491164049 301285017 318215929 559371465 812605472 622922594 826953306 721162975 812677640 363175901 660399548 680855086 795579514 107473846 515480045 518224297 641746268 834633964 872840680 120194521 992128904 182819678 925702048 655451571 744240578 269426247 891524807 76275437 479195459 861006404 914916007 817906194 880197795 723833137 744935635 756507481 971916968 325877309 803101979 271137363 794624776 828852779 994104982 321188668 983442414 371230152 862262306 885367010 943274524 605088565 977469083 132674193 426963005 45173804 289327008 96074489 462122348 123238832 891606806 10647347 326933995 896067302 937678740 65666171 186157287 92187354 717277566 486309859 889801555 15847013 184419024 670123232 787056809 689099150 937590374 161164577 604934477 811883573 876327691 944331167 970304621 681454495 869074226 627725543 701827574 670194640 883124510 670309555 709526113 117765313 274857209 238251587 306605547 890801208 944347595 190013544 197092642 702931099 834356784 52677685 723669806 274697959 613720665 14218908 254424799 638820152 878888464 481458936 683341708 505473186 591631606 467856288 837029218 800447722 947096534 680940617 894998484 293206348 991430450 225952709 365256106 240054470 648760321 797467094 946861991 189817664 246690325 304703503 885292565 566826418 572384171 188758259 887631124 523997033 946644510 527496635 633426263 288040356 315355584 276248907 425233432 709010973 857112915 441699794 874033175 525654229 839525205 908037183 982034880 746958622 879386265 960485172 964832965 620314234 981955665 760895433 970320525 851635512 953019609 471221772 835401990 771196988 972683078 854894016 894555905 897856883 952281242 475737988 959375681 185769850 421215046 14875886 137073449 726759713 742486999 25682144 543255193 269883815 412409432 176168799 561323335 674107205 805283139 738662977 909570812 257098982 975607543 582081487 743693139 872642770 945234141 476997745 960365435 160731832 572698037 278739447 984241253 74681725 871272957 153324875 718300304 972113875 998312364 316343630 574927443 847763188 872632523 295289920 718250523 486250932 723045230 692151391 833814253 85562023 952764235 671158262 976589596 478613628 613494309 640972926 926886337 765358957 841038205 861562380 995371363 591218768 704354393 752311650 997563827 509007563 527616160 95779279 278027014 260188905 820018631 701390374 890748801 913367770 985257960 677358631 700669612 989911413 995137109 580851983 860970064 623745525 756726990 48753987 607469948 719187621 926692966 152132062 473752861 557201991 797604571 832597997 942879564 945611267 994178129 41046006 373088595 63138856 691850547 206958575 371744711 491497367 549086063 577616245 994938770 839647820 904069649 110295155 289816446 249243132 851347012 139899559 923678568 720145982 996247555 845030125 848618888 191416762 436533865 628575729 914387444 324188415 746289513 760586345 982424777 875211220 996074659 61902242 357661127 448122668 844070932 328413405 394133642 553188424 993995674 574785015 818904565 62774450 623313332 990519561 991031741 220457684 554895736 992534710 999965460 461715246 804700474 870784873 989657188 624033289 724059782 584776049 835543480 742585594 750005598 737366175 854706874 112902825 881432342 626885778 984745494 468055502 740803251 835738178 844877668 622726224 918133492 633981714 998222086 228404542 629287500 876900185 911240325 746801699 830450403 221911001 996647485 857958803 884629298 315705329 542184058 699031370 883152283 778146186 890163021 640603528 813293161 466487174 530774190 154308659 338883429 278833207 442891608 15885982 355957867 31421668 709856327 276615596 540813870 330082262 676759532 233436895 504259455 212999062 972187103 655519955 970289432 540930882 627347951 777877421 948517585 240800981 739788360 4974767 36565998 162832752 489614990 568082989 830233367 465519046 995823852 142647388 326158795 810116116 849919415 628982254 712085955 238704354 676522045 123077242 437574017 632972920 987566991 911115111 929037356 737983535 789838266 248868349 683399131 464426472 497111154 443185317 572930895 72276550 575538523 597303006 914297068 964959910 972735636 959876253 983170999 975704417 984685697 384557471 634532632 716438282 767915962 249253259 966045113 328669917 940220963 451885603 874620812 480989208 957874593 417193476 756822671 770647611 826368958 732695576 765333621 540538667 774121425 742330399 747305668 368027016 566144284 369049983 545529046 464998917 651823730 920068329 931832296 139613596 430473795 411007071 862554233 329981071 839913764 989205623 998955589 963542879 967393074 34066092 975083770 965498043 988770577 452251873 494779769 393094594 933716054 915525972 956561666 321042868 406596045 603816998 893302307 897824515 955556394 692999998 999634300 511166630 952631571 329010481 957091997 140494346 324954703 136375189 300247592 717952499 725454039 477295475 543222502 164890966 867535597 631797689 881425335 433820721 461400963 580274497 699692962 906373831 956141653 561736201 996732723 917836855 962618560 764311596 851685883 285876473 422504554 456497098 742332920 732034761 783404850 798491802 942543762 557211542 783193237 967175036 983347920 322643705 605689351 601507771 890152147 881180409 983562525 633159424 952807259 161572653 485429470 328823062 553190274 647000870 886799239 102877675 876317512 734894694 789831628 794148474 796603916 654754304 655802699 404154736 578079849 127395617 790845233 284665868 758398653 23690452 842461022 656187800 671651618 705750066 997925135 722099734 921084602 848321745 944493974 533387901 798576810 310947491 451367728 347645594 486565131 639791216 752772295 893713641 971934422 889179362 960600847 822031403 836397986 408855634 892192054 249495323 321711035 876390083 976789591 248666957 896508066 920196004 950089696 683103495 828578023 776801434 878990909 662991639 666671106 431054604 463700494 236741087 380034386 293751442 768742234 200538858 277967777 480771339 767758617 720574169 746044463 954277820 988611425 663787751 864550647 146303169 489710585 578191425 925636723 909232948 970771697 583517552 788417401 6600004 24304070 665448524 861727400 772844430 791238897 59398048 419357822 950206816 977506376 284166870 749426172 688749900 843228136 447343838 562603651 513946569 779845889 877787302 897749674 494855280 857348824 951798584 980453404 652051903 656981876 891400125 944690241 463005079 561380554 231304171 623939194 645014225 899210950 538404500 696640885 53799683 213611090 886661523 941603870 425195770 828223555 349124982 468728726 151709972 332264479 600893180 687709471 693606477 960705558 857159123 977166792 471040229 732730399 355340730 458128449 175173466 953356743 737020177 988597006 175277738 852967534 918359942 999858349 614175921 980102625 580880334 924594799 920611561 993935338 101323367 141968043 588288178 961201964 702574454 745845548 89227038 566050809 238254130 851180780 919102089 963771476 552539629 631815180 329994479 657024764 659769960 839378337 840115940 999335010 981620769 993917584 27000473 919716398 128836216 796001700 595311181 942450497 425282874 517336921 978716046 981642726 605669493 627512932 587246444 917912073 354354053 962011237 895778030 928276183 526783179 991386249 21799939 897853032 722476798 863415884 871926238 941669800 396188020 506835899 697845135 933556932 153097934 443007926 440877056 961433304 910487038 961309531 751427515 913193836 643081290 948583868 607301899 829721605 541923632 627254212 880654241 964842420 481134825 754023360 729469807 918396734 43779259 714451499 429826628 451163786 109427566 567761517 939781313 959217738 84936587 143667395 498333912 847309617 774907428 775694654 264432927 813066281 160633221 746545012 681633615 705426772 305519453 574936253 867754667 981290499 631754792 768374771 632322625 833004186 605637204 789123982 687785794 933389697 496764593 894253469 293868766 875562520 21166367 345983720 665858740 736903227 100381380 817877921 990658756 991803426 540992089 839878496 896658060 915702808 408526619 487392485 915893280 997688485 429416203 679974383 462358197 979168630 198296386 206089456 498018031 769887344 459425387 977487532 396266953 476395181 829988761 967790489 192008263 639588180 77773791 977548562 410796877 827317484 89113235 567169896 493159778 548320086 312628657 909161475 156956552 375571187 865820278 893191463 650969854 789048078 838700093 842069420 542594485 853842881 536565682 785266165 676161598 766793313 75195819 255390739 83027034 265716112 5836150 750239015 59169684 703427842 332056745 994537564 4714349 495245046 758651649 779322739 347267890 398647995 910508591 992068115 281012782 476217605 781442706 962096513 385210061 431049068 315693278 764388523 540560902 713328156 915666783 986423786 4745295 167376315 527947737 556015646 168682910 304155853 145957993 247211429 563241587 573916346 275646249 927062804 87894739 368981176 346820115 647625812 418691168 500160546 100746201 917633298 821004118 850981381 364171202 475900612 131002648 993816161 134170022 805877717 613973667 795670221 844903892 932643777 364580487 431166936 573029877 584933168 381700117 400613068 629078860 706716405 326645105 617483130 736434142 788223829 463133648 748645386 515720078 689928547 917117019 958618093 141441136 296085557 217609699 245276549 310954376 820622686 928796754 973951440 658175052 709037361 549898377 736690264 153418456 319810972 390397819 477817900 975489315 978114976 224627164 421399357 564530501 815145642 891888884 987604954 339061318 936271267 736078522 908853587 550296980 613423984 38470157 875828537 171466146 554793817 218906315 775995120 338612542 692497616 556853405 854662176 561952703 718457161 385398037 834449249 100202139 700542900 995933569 998386009 693064042 810246629 362107703 723740771 312219606 998770830 100938589 529081476 628912846 808088869 111693248 184857289 463967463 649015947 40342509 397174431 525548937 810349949 154452189 673096931 741022636 867011053 876092744 957134028 560037767 689690611 573837014 875166084 344972786 617113458 813238486 832788996 276308965 300933920 454431887 923909750 561363824 710148571 374545011 811452056 901084747 963588842 525296636 707353384 431346604 540694911 120267531 643734771 615626445 849691217 373819329 834089434 284308805 353355322 150724588 942810123 637680602 978207059 354899775 557389075 502382425 983996425 401498354 623091646 198278616 593249335 710303771 787997693 571351510 734977160 42754583 684029955 145860769 373559841 146797494 501225176 816806617 974577290 804348583 819427786 195033301 764009447 785344926 790801532 397949387 542982034 180090097 766650575 499073681 983856669 820289283 969051346 803110666 951970140 316467779 459830326 301542254 348469747 72748835 502826169 655175933 994056005 925580163 980119692 981206411 997384187 67145811 888912133 242927684 424075260 351492305 981013209 425884499 702963975 429409111 671875227 930694122 954509656 188983680 409349648 891783728 951767469 711280653 892602548 949421381 972590516 165018644 341703032 193446431 477573865 677406538 921420520 102136608 615170932 2224016 771246978 979566244 994732896 929120452 939290690 567914145 606867667 567864499 866648655 670067895 930359581 444118837 853199220 828754356 923681239 786519905 817320733 546933012 570407316 44623900 617524458 61093241 803543898 939944372 974999489 679734915 963564061 826252705 909470410 961289511 983112558 523230356 593995912 597983877 742193954 705842147 795876672 330125768 429833873 653839078 703517500 463466717 875375855 225727443 407108560 110606929 408385969 59888612 664529820 540812925 624438767 881417228 885375775 477199210 891029993 157432137 424205470 207278985 473709466 529326195 638805468 744637975 829704041 893448402 974634478 607089448 995323502 708326800 951805149 329013497 786997097 175688166 748287524 348591239 791458757 261577463 913343550 656808762 689666124 229089712 409355234 625301927 702084319 415973708 819601783 114872579 125271839 686567261 736367043 777664235 865377554 489342388 502132681 332879713 907464927 824866868 943527444 361878222 538233697 70890286 721303672 266707517 425576663 319630365 469563186 713818578 900242983 315161565 794344731 509974034 554937140 732947089 781984568 642108314 772819639 704966988 989942161 959685642 967246616 655091878 920437124 611575987 846899188 352754522 890651841 289154781 991524362 692274068 977993987 63972921 990238389 703342688 915588879 802371803 877674335 682681587 714329897 1557869 329763875 394466138 593028091 17344949 404083705 358884226 942775845 160909592 976726373 810326793 885070035 152133777 489256733 987898576 996581519 941982318 965779194 545823874 786274671 979393685 990754780 754343035 871856921 402709697 766882577 335508546 874731348 265449244 674343569 616486835 777573429 350106783 488821380 304689272 615164122 934056003 995476262 346713731 722447466 626772700 858297778 473872661 818486238 603857377 753889382 671519036 998334646 38234054 305796038 281703256 526750628 840629635 855690410 330222158 396337567 898728598 900364507 155644813 747643056 739266284 925576875 853340854 970268267 733150952 937260204 604841433 943870537 640928036 726161550 427639155 997800518 879033067 905213060 295033086 311669656 678171013 968024616 473477132 700820378 319914256 654164302 35398357 402525044 592919652 828198198 742361189 796755569 351853608 906103117 659131449 928125599 461115034 876697640 393017609 460245900 543579834 646383718 380498572 414806273 210149026 708160911 387382562 512756253 282702126 702839398 333164822 866559618 198421660 369510731 532646558 909147972 830163057 838628997 539170144 577976062 685650222 889772668 23771021 986334800 227339432 423191941 725496572 986370063 862557365 918321129 652986407 955225655 101743411 340110761 264129852 657861337 990246268 992959014 263932550 576110705 90903373 654757806 694570920 941407844 486859976 762601563 902914012 914927919 719374070 807145240 653774406 968560006 355226766 922230107 92297339 357685942 983388112 985142615 950014430 970286028 455798195 519728732 610291440 610707042 127276115 175308207 958347959 998447922 869145704 967450980 244814742 716626413 405195693 451294298 570162642 751250138 703618841 815247072 327956665 507139688 567580654 571377710 706139449 960455102 418743160 625658187 464498275 863148003 386132599 759399181 19544872 51512381 13522300 814419302 73286826 76778353 634418237 992673349 311992448 770960054 738780991 995210111 767829180 827019882 462966035 545364664 835451388 941422599 217595395 924532936 157761718 873376352 883392480 940797998 201330370 496726941 53244012 57745275 512752011 572738204 580234855 750919271 338610760 780622403 545888400 934489747 228147399 916488837 989214244 998098378 680712891 734190461 139584402 318874314 169412341 980653568 598600031 712829027 923939341 941129898 853230507 992703038 614833049 916692903 102078496 961040556 549570166 581498681 478641167 934093754 102172484 634467106 749732590 951175917 549711352 607647975 380101265 756196880 507920023 822242289 524476029 809231519 733405111 781430721 114365687 850816351 846260018 898817366 927389247 941653141 659483183 864086711 907297421 997824113 687325058 848006727 999067424 999262406 273939500 434908520 28336238 833155333 729727371 798840533 120885710 647089989 884479454 975858318 544729333 770956544 537804901 717788110 378076265 846469325 801093866 937377713 530961977 840814348 473475595 688907043 940706185 999483821 917319984 950270352 945409889 952220025 600432095 973777655 341116817 727246876 455782734 523758097 653729994 951582426 314216419 345328178 916832987 998701324 616159750 655559507 937222885 948177593 75656915 205081315 487286522 543912608 968586537 975826945 230820744 888925394 292686266 760657191 577863817 723511348 996601846 997200839 868563414 908085912 186745309 468727159 796634427 975694942 866102853 999346453 3714432 927738471 597988357 780545650 805729878 964704779 970338043 992660485 330514144 715781390 844826263 849013329 805681985 993292878 903748106 996955337 17508292 377931450 95266447 834263186 877362820 976352108 744015040 926226734 811027332 903219095 534954147 857011645 284552239 619439117 46271753 909078735 155021454 642209533 92419195 166861269 233387346 882036456 486446854 883235196 676224126 921324249 8201420 765318444 146169281 957195570 916600012 973347180 318182768 542940669 608400389 942159903 312966454 569813140 772005329 953347186 670354156 826591045 316273583 665732658 413099148 912316151 126988040 462322533 441539439 775446921 467915008 989908709 378078145 563536878 250694723 277476442 811815819 947983106 991866140 994278297 458804918 758879254 609015540 658830296 765360300 885652460 849471240 871501298 875449726 973412949 829069215 936185157 258067550 628512047 52329859 620809789 183942706 912559924 620248615 881330727 971316215 989171128 376372735 606791970 36351723 256084651 15372254 984576598 281922556 845653104 217480624 344525704 993389172 998756488 592348096 661224757 611139154 960482964 469876616 781138059 881677322 997285244 477496233 893869615 406780392 695088295 965477015 971522534 757239572 957553995 36872664 742263335 990503738 997595128 819760065 865113255 994564726 997741509 325274511 620370362 423630450 817257451 985753943 991783894 691029305 903037505 482596785 795307866 247595925 668187413 213107528 795590420 922636963 965236207 880217940 920322836 686974362 873479491 452296028 755283240 568546302 719368378 629937194 987503156 708170691 932944455 602629003 877784011 8105178 723995284 398681219 727109618 427203630 999381522 688974992 758509628 11297292 397569185 338306359 815228167 139833157 145049117 315989152 354376640 317534742 622867647 610504336 826929785 800811411 837575820 708840710 916414447 391164106 905847973 745419625 766273316 508175166 873642154 385881501 961614551 283450549 362196282 804630590 958423185 696795182 732453904 389975825 422775943 983524319 994561189 29793010 565160683 867836152 867994251 164414432 376571298 17943727 801866792 90289484 620951830 911932013 931858593 151464323 511289140 373846815 416372086 843395338 911012974 373737184 739871807 487965372 656245972 181954145 981653732 702630926 782866299 350351596 984877783 540596464 896680684 275354707 737552851 356465586 390543632 704855286 727818605 608652384 678042791 799906250 935920437 21716029 616050144 882434339 920383175 96906608 770111274 68968540 372240669 309069659 577727467 478713404 647715454 495547313 826023936 255556135 637489661 918507458 922939381 640870103 821948695 221608577 415155745 787449019 881007222 190649098 914890216 394766158 559400596 417907760 615456609 250382921 253885998 633271396 766478152 198886865 209152756 444309964 798739830 784100937 932820836 368359423 808019024 512459305 844230054 915714238 975151837 429886542 855202254 450572303 989658273 253400220 766242642 898479667 912557271 766548765 864261728 261749503 955717929 552823576 947681011 485286183 640231499 411473846 890040555 57045554 732576978 436804815 599731651 396538213 408474478 694243563 933406481 583444822 893869301 122948257 900891407 511470409 923713949 104219863 109084216 399753524 527625011 184641529 348324183 184133094 388739824 801296346 949633129 765458877 843209959 504659005 737106040 647086921 990861140 608779142 911422396 775725643 823972616 588886031 643695648 416671502 788327013 872304820 886254319 856336736 895226901 626079239 951281491 253310869 745525714 279365294 790879959 363634428 732955260 320783443 883446795 864068063 886933375 726494601 828332583 532248880 704170776 310333683 880498991 173893603 387298700 947941819 973161084 679779433 870520675 455953513 587129898 747175207 973696823 486904190 876004396 239762922 390120238 127058029 882053112 156560946 993828765 638825612 642095123 73232662 262217969 321469893 342788211 315808897 457157977 857033124 908601935 557744362 691525904 477677951 570988951 80400334 522151489 639866090 658341580 43394418 518605012 526652589 892520100 209990901 261584046 978516890 989535266 965950952 991598602 519923340 661026095 242412732 558147322 360489772 518155380 643338899 916946008 47361652 963155333 948764782 978376280 839485248 932052368 909563204 963471182 820368124 942292679 289002303 505904624 487488027 503231724 306661727 667813952 452865082 974199514 598974277 717464733 456283404 654381820 458493479 890219462 926993987 928909769 330623009 672953396 709916471 860525887 94815300 512438210 65743332 361437844 935627828 944501227 934352287 961677026 96492176 111597505 214085029 692676732 345487714 496741772 740643690 962772213 37083030 613563190 197320764 626644226 947774302 972703306 945679481 958933990 62435662 516230345 589838549 856432677 349043459 724448844 654086567 677296440 536394060 828550109 604086130 691082668 896059203 919030911 767656523 845030222 545371078 849949421 990215985 991315586 399598362 924527602 345273278 690379048 238439451 656295222 711001843 790037936 975141184 994647320 282975467 432033838 827709714 910405776 598726738 735149364 400184326 777128282 309034061 893634904 268596591 289084873 183404010 824629076 611008380 854819309 108268262 652248339 479976149 541668205 969993473 979188850 992884490 995998494 340772514 472117007 308259363 599133259 895075670 980801103 747083817 983046012 533047038 595016569 411401315 732354085 810159747 843058986 618092878 928422394 333419871 440727008 359977803 576498067 680919525 901516920 385544627 824142661 481272226 959066336 525214986 874862162 22438111 42256383 72367106 540354145 356883543 960832222 952383267 983488632 454457053 626931065 873269400 910907649 109412896 409455313 296325276 632879359 393096202 779520005 175223500 681385609 681184944 789575024 575358731 781806710 99937583 985779453 58258941 658041158 245715464 968430735 129611792 409897387 404056336 986282411 409697392 720168943 221289902 688327512 162998389 204462101 400172912 444424895 300902255 562899494 295748799 656088613 367096518 404805382 40696528 777421032 536477538 929436313 733633895 843761226 624293006 868562928 889082287 977569787 736281120 906004477 499862350 881988706 720174278 810659588 166890608 952692146 591796645 889767066 255406808 404908595 698243617 745410597 13656773 72658939 150739901 250866694 988791739 999120400 356629661 679933452 337822432 565376504 118233175 723494991 39507788 784560908 328661269 644931240 651073592 903140801 456768288 960548830 663312508 960376850 796596466 821728104 524001117 974736060 112401775 680552534 193000776 732356542 225330891 397167000 28552236 680804706 907739088 954648335 420894879 495750127 451754086 851767177 908089629 912477870 904764068 913848208 224589417 350867401 65161649 934296085 617398889 891334294 120920069 754188300 201458131 555287168 346072661 606219491 533674729 643659365 212153478 399687050 937042101 971573427 805223406 842275446 10670413 696876524 184522178 409906961 432293032 526665972 134377237 543602820 212361371 431078295 396893880 908963614 906804459 942751017 732140500 909157119 719195230 791659502 702580148 935319443 843978051 959875619 18757207 859399776 507087324 794080956 233009494 554125241 705762032 711065983 625668040 759447885 105821085 551599717 414661671 726484823 96350480 352361291 287756403 857527409 257012730 340603928 21409905 797926542 6239929 376369895 374974909 550656124 236370308 749090405 67387636 129102517 879475630 905559769 562537829 782008004 941699523 975501861 368015665 751964144 455358734 813321953 806000461 813781529 128191675 397706753 179774768 250785001 919477826 974352552 908964631 952000866 668920549 815539845 681494281 930489622 532206627 547703579 984662745 990478528 302657291 675045461 429050246 457430120 167287472 278940592 997121154 999849461 738864577 952850218 591616659 591841896 792662195 844213389 486035629 973132221 198002971 406078642 581496497 627960787 429851625 951751940 827399250 927800236 793078462 954468650 545453410 798825190 716235274 723897810 781583843 947759328 720013116 825568637 176409083 393482841 277749574 932077234 591222153 755793960 483240901 601408150 820016665 827259883 736768143 845087561 228562610 384273444 401960804 409970061 814774900 883634800 632259653 958453434 618995677 695491653 801199038 865626133 928790409 952839844 770658253 960516136 440084128 883132239 598659588 684961381 286979422 301998318 396911106 674992956 471405008 717843146 695329006 794809460 76318705 573962376 797808886 827223065 535292032 920627982 491509152 764638402 50106529 217070254 15381106 112681256 837180523 876490343 998495144 999372105 987847012 988111841 87940329 805662776 481115354 951466363 785327436 889542325 81067039 84563636 693206571 926521458 936496512 977348837 13022395 767268887 269802972 945758616 599812913 769075384 16371995 261153574 402320550 957309796 83755948 598273521 62899245 269451909 572269778 912568822 411192075 861171578 988732715 997807205 794187134 829082717 363924855 410890420 73537465 875863527 815386945 880611731 888838416 939784271 927850322 985425503 22411963 419517599 14038562 96384166 851329784 948976842 893352760 941634580 104993588 680990746 92603962 439246936 842342682 924539600 763645521 798012010 954601279 972971862 685525575 714131447 261910807 303409930 603145609 769950365 751559573 951717881 975101880 980795198 689941506 747574024 236658456 975065002 116499060 427960535 262574951 492233637 391482301 870148672 875572079 891143414 309604190 965869762 110989575 661487263 885142674 956194325 178538749 238358061 805366948 876483960 932645180 942464138 802369227 835825780 723896531 979776718 856619734 908184275 492269788 943261585 874943162 981661144 578979760 977437335 200704034 365835882 243209236 921436868 835052116 938813978 99745347 279469482 356370304 545823318 740445291 853417902 129715047 762361452 442486062 476441517 101810157 353471222 588005327 667432078 152236840 357954774 15862916 63887275 648199826 895780644 907271801 978389542 76744492 759293253 249206432 419221822 794406672 896355203 96456170 397744504 973778540 977601533 327203371 826422244 560018024 607396342 695025677 979383062 719164577 722672446 485317085 999356640 10213056 998356104 309884337 878327598 389406980 667528803 937589244 971742005 442639305 497022292 273819952 599722964 741957980 774190452 135733558 675005014 521341485 587916542 846305944 992138191 460724354 724361653 86442746 848917463 751073630 867691647 197914638 295876186 586679996 694294858 399895006 762667091 923878104 948566965 595762906 948945424 863914692 997451310 590824667 853715612 484285775 939555172 891233625 968583521 659379119 970810512 318816891 759922506 365358420 919681877 15474694 508595953 643586392 950976927 957851081 982507626 443600267 784255736 883474733 990948771 272340419 378890911 607730159 681330894 473557567 680796277 375127917 819439924 737382180 859997183 997646040 999241586 456032451 891073743 576148106 799747318 544263662 849842208 916177304 939169565 155358909 885068640 303160727 531297631 96855952 318921865 164740248 897462032 666819433 981231622 985557617 992212965 174603038 680107098 332676809 487786952 745842625 868315612 204601175 393200419 135316033 893190174 331743596 711380664 81150725 337880060 682627093 721291307 395844523 860855035 465542637 604858776 805306329 887249072 627416906 692353592 7127303 504562746 188122228 843702532 73330132 397976400 156218528 717707958 647351684 930840068 920833584 984360969 923175990 963885381 799756752 920722351 290325770 820370315 974381037 999324554 842573653 895760261 534762512 711908565 105749803 873632489 7842828 424608546 801290390 927521541 161387566 966451339 385013867 854482945 869938532 899302635 445486303 676809980 838302819 977178196 393636884 484094926 866493765 997454601 464466919 824909963 969735317 990638696 935364539 980541465 57991880 223488521 697214516 776169723 665967539 895633806 467407492 503637672 996684236 997399798 79000413 404054794 604568255 707278550 492769986 550276512 600913754 971845858 110199403 787136999 602119449 631209820 355121493 367944318 408188057 963460059 127374582 979891491 877154958 925799529 233204761 937942627 147764402 676142227 494465575 727089754 446680663 469565699 6197504 497158203 925361649 980059921 203126855 255159243 757403619 946903636 948463436 969987268 436695324 608265397 272472961 347401258 939886296 996693142 986399112 997800591 90680300 991593715 668057867 856440525 650265825 677247534 830111214 909117157 805726088 950066690 895860823 918678511 801831718 923786143 378873135 657789712 340076675 729018866 804411718 944312981 978865008 994112637 73263395 692734040 465566428 535052087 215068144 258970524 941055406 995804881 961679418 999607315 259582954 432752419 938301540 946661682 27974699 242194792 17436535 434621625 438234381 898211852 963283418 978161887 424935801 438651042 829438708 861640788 80044747 94115931 784134929 862510966 927785622 969865175 761994564 762100233 383602468 436612881 893663725 996239127 286176451 382289195 851552445 924845854 20412978 226885056 750373534 871295539 57051568 858872088 833280795 888768834 633532711 803135232 584700548 926291516 98820306 870009306 574600255 928552312 608440073 927904886 590981929 689408888 771109342 775793757 453723936 553983077 861057377 874504947 313455844 553337826 664457115 884977738 59754214 514290304 282966893 829960588 352951386 932547038 590095008 746496955 364089078 568194126 570297151 753852097 210883874 928052745 63908982 973497038 621795803 830559234 490758662 801657456 44844064 793647108 236888743 426071118 222643082 588711224 123305728 152668200 357320056 583713955 846948824 865662803 858508644 910185791 481767998 927997753 665715587 834066313 166176995 561286393 602112286 674940344 622700281 965497745 852562322 956772223 496620759 827607289 312677387 949889609 944811800 952532531 187713344 503472220 963374759 999111803 782717771 851816512 515499746 787717426 360633460 562114260 327040609 787268052 448719440 544052748 296273916 669053694 33821894 94761421 393500701 572184097 643452623 881528102 837153825 998704233 966464293 996167004 731109946 977969395 358814634 869323573 565077830 975827034 601649359 803742946 188985157 819301386 625343549 759618116 117167440 226797720 554499891 915160931 294028533 447509391 778815759 844297091 657711115 799959346 904925990 945150740 821762628 915236784 410609390 702895168 799462436 959594097 998280820 998577815 345100372 428417670 74232818 978583769 937128773 938830109 68859386 861983044 304541207 313975130 209914594 991466665 992276935 993487179 956886713 986016237 288760698 586510139 237560286 648741839 930507110 961735691 379811432 994804873 946597812 950744143 797910098 979232939 466207806 598441665 109329174 509320677 722673315 737645076 759276702 801817630 770152553 824343136 431306170 991243042 754623716 759401651 118868510 439781567 841361754 851475304 641433126 946455018 549934904 698487203 264836413 464418109 798479466 835447549 935195669 974743179 153173421 304303481 954758908 996423781 588971582 589404743 68503071 258794289 222236329 789291048 757671386 969295510 475752935 708349756 802752449 818456418 766419069 912903049 423217504 836782595 312531683 916910519 474541448 766207567 713505443 862365889 14536520 161552855 6512278 920942857 165750107 567904021 322924159 697439975 292564865 979769286 777984366 882307492 90313408 721315018 732432643 962022160 565202723 912903703 482955431 935581745 664936505 715226232 672090104 826646204 379227239 438511880 748059327 883892253 207457675 557408294 195869599 200234584 250972557 395560582 60437929 233209851 116439429 625936046 761727198 937917690 347291110 856596680 378541607 865891826 678950994 826534842 492055761 528176594 564120900 619263592 762287736 767123031 973037270 983233290 979978773 988926970 827371072 922666308 506246500 581662516 948733015 996604617 218958438 919567668 588453050 717728360 631114380 967661076 133787727 538815368 957914137 960697730 413409693 956550016 451836845 901857468 433493806 841945455 463269312 820195749 721964641 905702329 271342239 601084454 601451286 755683369 840167891 903816047 442678435 498043599 662475161 813578068 453919844 653150567 679679117 819613718 812847390 886062392 941375165 995743905 774471931 825383015 645819209 875053676 636303001 740639220 960197478 988114060 391445549 959794482 918251183 958253821 6429613 91484710 769063491 935841527 324307155 542684304 266883798 443315698 604063438 701132105 357124343 580179887 516318795 541669948 512321988 523729214 265128338 861717154 546202863 996195910 776495683 975484735 614777210 776478613 442864150 469273525 936625291 951756757 983447672 988137491 879082836 925836744 564052494 734153013 860253058 950509430 377413931 436351121 238656720 753761769 12028542 771936620 460207111 954638059 737182716 867965569 670998734 940186255 144205734 678618285 162127027 580935840 666062424 761584663 813994522 905316807 51962361 244139418 279214849 875794840 446512318 662648153 266967586 788755380 355985760 867771929 147696078 777720457 315283770 636038268 164493089 656842438 19703127 641502466 283530759 977714554 499030044 961115042 277124959 677741671 971008091 984026004 401985862 473260883 409093656 844293663 91449226 903519773 3785590 726272442 309637476 505017132 968662784 987371176 418160536 914950014 319282906 465979808 479387856 821319052 124457137 531263189 11036724 211364346 162072034 804911356 839832440 920549712 438165006 833606699 856544285 873413600 887559387 918071695 2466311 279935608 847426913 905568250 840381962 857788135 781747984 812426628 63494368 174740341 92833738 813893027 575156301 714471062 604519869 789455792 955814103 996268641 994424938 999170649 721739454 770659289 765058419 944962256 840799566 932305095 391023942 870798669 349469020 581103389 893636244 913022057 613430639 759098106 429642808 898409412 14488495 624537905 383351318 920416566 407345880 435012695 502620060 777591975 656382081 970695936 369238716 771122594 115374017 929318136 55410384 460072576 742697653 854605451 808051597 889544936 789163995 814791262 946680652 963509508 594120470 959549270 98464109 521602525 767881775 933041447 776777007 976295127 184432553 598962773 702692458 957710090 170926620 234477950 71233116 932289758 518221031 960067916 781547168 930616331 743122659 969318987 955698292 987518486 591142123 886579253 75317202 838212231 297465258 503960329 37741356 172641274 357450861 415496128 898261581 932887399 663533486 843518169 535170158 641761052 338988830 589863860 365231047 953120501 233158464 847819346 725078788 869941569 816921681 840018293 819690331 856142903 338862422 803283339 15584277 201785612 878434066 946533001 362923751 700604131 837873374 936503732 724611354 887811941 738081591 989325500 154967152 906625496 840863115 945381995 964306713 965361228 776077836 815344295 569862467 860467457 6174631 390342376 65551134 826904149 435562896 695972694 634211516 715837392 343145596 956693730 360256699 894474867 440845819 468701704 429065592 637720436 409643906 482793322 461238419 896680876 635302878 682599478 693422315 972690583 96579805 455312199 759317740 813163752 305765159 952495800 90973264 987789290 891430550 946759117 332922576 405590506 804444332 963723760 114419949 132317633 66577835 184689739 219013193 823028550 968899935 972806499 295222571 554848245 815393612 845760387 408415344 665914023 247464115 469528075 875955429 930912688 245558099 768249884 689481547 971097295 491260440 549091236 911098376 991650338 866493662 984184414 990190179 995001704 842370546 912435607 788349605 993324937 850974434 912080277 524073325 735379782 872373475 883278994 213986680 746309454 164755072 322030337 433963604 767405632 995376262 999623394 524119540 575641253 106342380 939324380 708561280 916481780 700131433 797316918 82718847 309574007 599914539 818471438 38508710 581915885 627608641 900085754 587057500 655662798 861183266 957072153 748255439 842739537 624936750 651076374 590809793 717524810 692731404 945273053 335543411 882217908 346573125 971466532 496847634 508430688 269222393 284083628 449506554 841504982 255361892 903908176 564889902 804597094 339827193 542958884 143848357 741465836 329793178 598119705 86242692 946908293 446806704 739426238 52588170 81186185 610786287 660311097 826531638 859081789 911685889 999746148 218850700 605419118 137489259 298902331 281832086 766530928 617061272 988812097 343195779 639865685 35280064 969032975 115731852 631103751 582051889 732765900 767594765 809871789 215829902 306142317 197007757 523074981 852056708 984156848 148758880 948957629 361376745 869229617 387394814 868631288 927738010 981835274 330829196 709401132 949237048 999348196 606706482 954193118 125820263 453318287 940309171 999673376 586316755 905149185 840397390 970189587 295812771 815979936 69690884 716539045 479669984 972960088 393412547 624487778 723973016 724973596 872026406 948841706 212112365 404247627 362634919 719017863 765906360 774042052 819277424 821275768 615747966 928611941 719781959 938365526 716083320 962048442 627863349 970230577 94959535 750139801 946531633 993695254 208180982 475628247 987959030 998598875 115228791 819998001 697839083 846793791 859893237 999723258 290507528 723511192 235277753 653945586 916299734 959908526 227792418 732959307 491948646 722223215 639076058 821224365 61612904 345963248 203600960 298536943 953154221 999796033 76743613 883831891 541586779 742225690 904266914 938661352 499912644 754187597 683031007 732234136 636243534 692023948 152348068 501117024 178731086 322817669 804245371 933230689 708950066 843947340 691248804 771414067 337457615 688280164 910985586 990408909 410023036 580809532 854879481 981264950 878920850 988639299 740579852 765061396 576332076 653659204 495037354 992885171 517054939 580551098 363551030 412464402 485820077 791957143 560249001 952140446 130842987 622449835 78648015 664603952 870798137 901510200 520187122 630761678 195771580 716784276 307656408 432376722 502555712 620724416 63625302 843782902 759807624 916905000 393400020 703525196 294546311 851031317 103311475 605308893 632105943 961064191 696684858 845835607 562700392 960213476 519869634 915826284 793352576 945697235 418651235 929144522 254156289 460364723 602896552 878221216 25955732 477028527 352017289 760022350 359855880 765607918 744791502 922497150 695065616 947016882 366288587 742768209 991391804 994096691 337855875 399213146 788925579 809512500 130103704 672189779 653430343 861632629 600959403 625415684 783849237 897714888 302590496 717219467 579530402 658135610 589327488 650635294 404435332 408084666 495845081 771232000 502569365 907695541 739863479 992043844 687994914 754660184 962255684 987771981 125707509 892875033 130904819 210602954 385292570 917991487 622557649 944271936 564517045 873415841 355622127 723415746 760824489 848255188 384163239 552723057 461985655 724080205 694539434 814411478 584628232 673511511 640849288 758331367 383941777 507999770 591379109 703190378 841135990 925971716 681742848 848167216 10945066 366416312 102008124 510060691 407848444 612674039 845897967 980523921 768108264 870309097 463908471 638884211 49573590 53402152 838474673 929575712 411875214 634051714 520693420 883535807 720216406 841654077 505255594 615127316 941316664 972448765 499950676 805293375 931268468 950997890 581301163 874551369 879816524 900061085 348583562 660345824 340951477 928736811 26453255 400533994 559426304 661839984 368400284 737446165 638598309 961317287 871151823 981674221 286409798 594839819 713728199 868900199 886770753 970298605 389592557 936985525 13390028 670121271 898027303 906012214 607033096 962464703 138987273 213716662 586912464 732093393 912953468 974835646 541485872 791054263 477538161 946621484 603010707 938839042 378220152 627489032 31207825 243274035 182295589 779823277 937212672 974381109 233736479 754339157 54944032 394664770 978119972 994402199 844981245 925141883 126588689 812483867 648609719 742606876 252407033 333548723 928311594 940448153 608812217 776944385 265014771 840751244 917251988 978181154 415913799 421240910 648594628 724070578 656960846 658561522 813926525 946054912 335002697 489608318 231969368 556043193 728941998 824744678 659849858 867562230 878841508 974006510 813766709 824715728 301790755 570407089 766950939 845649570 303158717 946660694 909845045 950841821 888227817 936634287 213702972 923078948 25321146 87565623 59024014 286296055 550661674 790220906 60622570 918386010 576221182 626488837 367807535 589857346 383466212 473359598 214131555 828108878 478827034 737245377 895267226 958472389 128883203 250291363 589135037 820969055 942170921 948843897 75308585 970608582 875233300 879356697 178711109 894342205 63717980 84923426 932117440 969705527 414457624 458999879 231310479 308665351 550984134 673107851 441576498 680786026 990730407 993607993 238673532 404561034 27323123 97157040 346125729 627361291 359236054 708526314 516493411 854631617 134981202 806221562 360595947 410149854 704372543 868185874 537892700 623571068 920780567 993289893 500522363 617665699 19461035 817490240 6956489 633919625 699388751 764166470 40286555 199080182 209050030 478463002 851696797 967336601 616734879 675543833 479404809 699765084 502507809 829958885 23104396 799317057 817985800 838251695 691554656 746719808 299588348 541017764 204155450 807291746 158618768 993361000 857928499 957316577 173772451 246259991 870155332 942556857 821284261 855094313 377297619 618248997 761277808 950798910 915432131 952371871 989852132 993885256 132634045 578222750 488944595 588897649 979554373 991348106 870442026 988348578 646879311 774511887 738822658 962450108 459290015 560274893 891707344 946269994 438414466 462939936 436359098 747173308 989341027 993296586 686096438 910751897 455232827 965139537 518870652 756814489 815530038 824921683 870871919 886898656 473958306 872226149 422970655 692637585 967045487 997674780 543665396 735916281 276130273 374070630 488065174 732005154 243750192 882147008 480315381 559763915 869136476 935423279 780587114 950198538 582955666 805375448 387852655 556222891 870116903 921975197 401822604 547009923 265518949 431652628 374433115 916314968 820730455 906388971 991218597 994936820 855800698 989187802 961153527 998417084 741683192 983193593 836871227 878694847 431985606 582274248 295904398 474815167 444035915 668523898 756335197 999300447 440584763 771528301 985873626 995417032 857163079 995922641 289516965 823046935 555491398 735597976 665859986 865322495 768527747 772708361 853905047 953597495 467083997 548926847 792451958 901487024 188877304 463852496 258939078 673017609 344743218 502452181 312509848 316852191 552792602 568951230 597930759 938796737 847199266 849378101 137162343 442739011 814971445 825503671 523215835 881720755 201999388 492987185 540065966 837911901 562169830 617309995 850922831 960988507 894495230 964762956 311729986 811725896 233121838 996055826 470279664 809621012 857150599 937999987 594706722 611008390 227533668 485961162 705197788 839624607 212389274 703441722 105188989 515432296 345069281 393784951 562457947 848876788 634314347 792661144 292850589 355509579 243280988 841363950 45209168 788964541 475550095 528554106 10912711 878406116 166991515 893711263 441071218 589329650 820807506 924183817 778451358 894208496 855129435 912889041 733422989 881749227 801261050 824009630 872653230 956145026 260663844 741294646 47866325 688051127 640629484 998015132 186818060 223962548 270498464 867283662 198545802 529986554 255348297 426246747 385287551 553520283 921048651 999157265 223563657 690547543 183370312 560014439 402608935 896450067 107917875 525177896 914135436 945691235 562874147 714618904 71498825 532221449 482090349 823952279 356123762 573711079 412058481 770288500 766659920 811640577 307014208 991960886 464219126 822847104 528718198 906031243 524477320 548260482 157775908 266164060 64030897 473666844 320093958 696191631 429365814 798841665 767042486 792129685 416997752 457781178 975745900 993957222 623914986 676609932 834049491 849235368 451886840 620674567 773932760 924255333 796432063 909419873 483859152 607278954 929714365 991708203 725899342 904698510 241323766 653102033 170824346 223690165 867174766 980042255 859723460 992185354 490986642 834283576 479502869 741265202 432525376 538978356 589367580 885118563 350261502 357765636 948885170 955244316 619872887 656325473 994788472 996184777 948066763 986545444 407857353 706259448 46725342 388138874 931240136 936573028 424011455 965583670 659194436 982239817 698424315 740449069 261245539 546196858 822292689 883329791 157889368 994090826 305110552 481567059 709260910 836863203 346271215 406946091 666313930 952473907 808989059 863400585 815656858 950646539 552660845 884666861 830222637 872440439 736660088 852629818 769758245 996828866 296145035 780471500 798640744 997710074 849052389 887851409 343491686 483857115 78950459 567208484 232894725 252471414 906933752 958190305 694296326 833425370 532476049 882323110 852024980 918522910 739857657 897514922 856356654 975805396 442631658 533751244 212116685 571945491 448515533 641473291 25198322 710366697 121454238 414312998 515671572 920885866 26583830 942650740 548848418 549295695 518670903 930595833 188786276 242661479 553561219 943204562 131423849 935046414 374107759 623825392 931650813 939179392 78519245 928594812 187364093 949394257 397761343 864558815 308955819 442342827 639762841 721743222 459329514 870509647 995901199 996799010 767891820 886470252 663745503 938029362 194874025 771656618 322689095 794108226 477234608 604181060 902644554 946528821 462962862 865520472 487200979 917701918 386421403 788183609 917808775 980986175 281492793 357366728 12524494 817763731 494835040 545591216 400868011 922760136 983433147 989461605 346006292 445370939 806816626 854655856 695759352 896523897 10360641 456891491 44488055 808217419 866541553 891924270 595991021 885486061 67694771 333953911 898784500 970779033 114289407 627717888 596727685 821362384 956612763 976147560 100171519 563269278 822381402 934678749 583172709 959976420 788137963 800660342 73692396 246879064 230196617 436820739 989283391 998275508 594564831 784889752 818083862 959968859 997472944 998539627 37852892 392867647 214984230 424518470 101634587 645740847 689247526 901674555 777589881 922518738 192026407 581285142 247897526 524520828 307608213 815991847 67502742 361575023 106083222 334345188 697173835 946617173 514508756 646100206 375118813 712357008 505144054 607006846 584798219 712772861 323452985 411216610 939074841 967184085 328660603 864302441 143656129 932618327 20056795 138004559 973833929 989128804 25575220 124667052 223156844 381444747 500415632 529596434 991453753 992467758 257687514 604885068 612216958 842820549 346785861 813447931 556970352 591631378 490595983 901209846 280562149 316555623 602491808 713111050 862199113 882069103 106084578 687958670 622367989 623100248 468857289 793449018 291875764 906022688 422697129 853281144 547314566 778134404 763801201 884340186 972650851 972816574 501609799 666025438 348987684 673926525 408367989 606608786 365424234 711086179 779871241 912283251 796033497 878885720 804598491 814002848 299112680 562031337 406588305 665110472 77880913 406861313 379369214 502275758 356728311 518476736 907556860 978526254 793748415 794632118 118951820 555683098 30621068 440087772 233434833 788579211 512050468 569920138 869445927 947744744 509397824 603551061 272025055 990892848 634628037 953710170 273320557 586444145 138348245 699609050 447629075 971354370 745121250 856779984 361894852 906356275 406652521 588965202 206689914 932179853 932502382 946529113 914913860 972939334 627583932 789429597 85545438 852101007 717849773 911357465 871051616 986148867 565002539 843676828 378108117 627728553 790872758 889527509 854219225 933781775 930699596 958222167 664334366 860898232 35728201 729097100 61982712 432760187 822081751 860184490 402973943 848858769 432907278 675296134 251673537 785927528 798378307 908894798 159868052 661992011 817825770 916485402 311338584 450150190 186082661 403242002 799656845 977089245 64889595 601917559 650576581 957147409 17805971 54321026 34050068 655201884 582177940 963609603 494555634 649687793 341380134 784620841 130900782 229791877 612489970 925826427 628507104 949642848 637640036 746722260 491988265 988015957 164429415 349360846 207283853 588148542 467939735 806878833 428192462 492836479 463715440 817134111 296995178 535755740 345305930 841547021 978564527 992277521 863205406 937534115 611551880 636436374 117917418 570753186 577989170 638528440 782552339 991409566 423861683 496921217 620942659 630582418 193244060 642939506 199923024 591179588 777953566 820969551 909073346 990283499 843217655 898126636 829954757 906888571 521682292 762597821 659092593 955148308 726406637 743482587 547662422 645971482 424503833 744047218 822633981 835719218 195750575 756620357 615551428 799216657 811884344 982882008 34756542 674990417 549872970 798369409 315732782 573766414 867518120 947069045 666892182 713882140 825260386 857898436 86728437 564273219 381788821 579484565 910560209 979321580 649342273 748230849 107902061 386293722 535024194 942883372 22155638 840138631 16431701 331870825 13952673 156361841 31404574 775378788 523598882 822048505 135419538 616095642 574430033 950427310 559071936 959011166 989916830 992622484 440795970 766492737 717075094 753009314 960087318 976996334 224630652 233893129 811720351 943531364 347918018 712995633 942864690 997242374 176387497 425684771 343873675 709725827 176399210 550050135 822916702 894698122 675255692 935833304 259359931 978008323 436729789 964448302 334484574 733623570 758591968 787633617 271880203 636444466 421821411 484861854 993095800 994986359 973404073 999510827 701078117 872443929 527343880 881196456 259256130 924478366 182341833 388545954 964651477 992343545 112627486 715211501 375572201 387262266 784063754 846259189 116889526 426586180 476740878 553999877 994743118 998164300 174722876 983772830 727597535 885591660 224025525 855853401 319933459 622814585 981852518 987714791 835026939 873616406 157509041 178729046 52260507 276167506 909776646 945996795 390472026 398893196 453346699 484521146 285358397 757555603 675132540 976122722 539779247 835208456 519217199 826671956 509139545 685149566 29169809 186195147 957389492 960287265 39214950 759235994 642138049 963945236 241015071 288113585 764410338 810161278 980725575 983317351 938883724 938955933 612466155 885070881 997101549 999463728 810095025 989925072 956985354 972366879 458002889 932315509 961413304 979644220 55020807 84768201 974142585 998143924 286592929 575385520 679733992 872870897 163129822 512196659 885211693 919991388 401637325 441170842 412022446 716988804 748477374 874698276 255526123 367054458 95174568 464012810 157798586 190604401 501494645 537386939 83736185 446933288 121858774 247977825 914104190 971108957 515859646 863705587 662559766 884898054 377462624 891644475 475517196 943900647 16463028 980689538 79188757 702122700 196722300 648899114 856453427 863670308 967507298 971687412 150268342 486657139 404140417 738462903 632941486 878988224 295928342 618937077 655360053 943615834 172532589 508321684 352023794 819352850 730275616 804596691 298040789 986754136 615845586 642235779 34539726 369895633 323058419 616151945 315626034 689815284 360036633 852307539 210025438 439727558 271780784 831161419 331101327 363802449 477295213 935466181 522828140 794531785 239338232 782848009 321297297 772045215 442279289 931736660 734825737 788491562 686367702 886622346 852551188 928434987 838028504 884079865 448820333 810974006 907962376 999089505 557852504 909726775 990122279 998267185 98488926 342044534 107210550 362975093 508094963 965015336 852438778 883155379 90458297 257691448 644231308 861800818 392541660 899114957 767648356 780355824 958972760 991481584 557862432 928577901 705539254 940700960 627259370 799811489 267064053 951431764 191038229 230656935 435182281 457539945 915802661 954107031 195162845 396048920 109793245 223672240 862802179 984120141 932970528 943319310 333802262 896663834 32179593 673519399 937534844 995225520 276196485 379054664 896530094 935630475 143351545 656284083 796206524 931966390 410826549 851703605 647621610 701556079 726120884 846208115 587067380 679435177 750341273 756497929 77078826 636345598 763396539 840663023 958389321 982306378 24808177 947547816 874663804 967001751 509095856 810890016 245574670 990199827 625107094 769738101 55381667 417098267 705190579 887617176 888172694 903409980 858156107 888011022 142666333 485917423 801420242 964546840 974883591 975936484 690645815 916767641 158712151 568309267 986913788 998117010 205546071 948404560 661812193 814349663 77536685 496165588 414345280 497876352 357790959 869822223 761907761 886522233 526769017 952898469 436234882 597220577 242083484 756490668 823658543 916727339 854254959 937508471 584428637 755372042 570335542 994425176 720961669 796711237 71768451 230717880 471888134 749825374 705271535 907326263 266189376 295755283 30710645 750267153 39968734 891772571 789324916 906092931 961885081 975456582 554694606 953955909 857422155 917076027 424517402 595890661 148149927 600978276 211654300 424989332 313892863 365063976 533785201 634428517 393229023 965866669 206807737 425973881 659823260 851197349 492790558 851202829 223833779 698394306 435799583 767591709 379779329 910598084 911292935 990561093 499747904 837678254 336688198 497664684 970167185 980180549 325879970 430446264 345808359 818716770 64135274 158469626 344014607 805148997 171690978 735219142 407548546 948328322 7936367 886885352 214704897 778501003 310077023 630087751 504806234 659228233 526557767 867226006 630799594 694458624 319043431 860783626 374236653 541032409 807339305 834514957 598443321 779351899 716494639 784150036 482996903 548453179 959858485 963089832 361206242 782330829 190040880 696965237 269373682 972821811 804377718 888629471 984499444 992420434 420606438 581151540 630593152 773292203 628413332 702544275 35044479 515890845 715333661 846929441 322438620 810077808 664601461 939668490 721731872 928926634 569216989 570265129 228166215 761569965 637733719 938139270 387595828 496442588 265338820 709838272 185401099 265671044 22408194 696421081 334323740 635292033 362299195 567668963 870669758 996443363 677629086 897895203 362744319 588242459 232715783 826025171 857281063 910919636 9964654 168233957 761956686 869120908 283744960 544087118 448414406 796351063 430049150 959692580 855703210 913189276 818084178 855152851 233610143 279402992 264068036 352186853 619410317 841661246 372162836 726323633 666755122 994264807 336522128 495683428 259178102 366241583 40008891 323251980 131112773 277575167 957497300 978124635 897090518 977188132 133923478 538861713 439597423 533491252 581277860 810085610 483880635 730831818 455452843 522715989 692413921 963248650 462639385 651567819 37470846 382421184 649101755 676297233 64930392 614349290 274730261 938951622 824078520 863752522 416529175 778870644 950302045 951805788 669920988 738446885 419344875 701253650 17909723 66178356 477694169 848224170 471436037 547490360 159329176 387802157 508802902 589371797 160858768 461737939 550055762 883399397 108051693 527399516 778752804 781059974 718607915 865796006 916494313 999867567 224519568 395147187 950193108 963930430 301080301 483496053 39326761 290050301 798548494 995637613 790570652 988700325 185651041 199554443 84035974 871139636 990850139 998706860 797408633 897114544 684135162 812120372 470874386 995922428 949427936 954987624 66165176 84031661 524112601 802377996 574866634 665056520 236227589 256204289 347195465 439796655 681251369 934746284 885630771 891757037 528112380 534468699 185998506 348633553 891600409 914675055 683865717 978836903 168545925 255339192 847085755 993635918 682085549 784820279 489885614 732826543 681946839 844224165 908717784 908978225 237396766 808262599 975014560 995621156 445546777 861596337 905625673 982137454 173838032 795875083 242145089 710912067 230515507 765929396 536528898 905090249 465106321 685611163 56668515 345639215 467626894 540828308 718840319 977128180 287585833 613339098 213614336 350884476 113627191 332650959 213571544 890941141 925404732 935001384 154976529 935240324 472342444 975300845 573981101 695703486 562269192 743050467 780953140 908521021 447465741 825312458 59546516 485242996 498581319 748202196 427406310 970336198 893544790 996480796 512937600 894315634 53603496 964221934 592935555 929845714 557188237 943368910 375851949 716111527 323016765 871644397 557940986 738415149 633998036 728188805 944266995 998113543 885489797 907206026 60595453 730181862 201168004 237030545 466303797 553996900 520626602 636414899 845022605 906624117 456405806 555248744 381424528 538413310 293882199 558446613 469461362 991294712 589635080 776884566 824102352 845261231 403950046 411509600 926807072 975832221 765640663 892265306 710212439 801141526 833558306 989238910 515801492 623271146 948093716 956253053 459425816 544714454 356166133 612610307 54630258 465136746 549665441 691235764 680100834 917351222 878662157 979338332 942356782 997502067 609572429 714096144 728392316 998241703 178908183 987395275 66836668 982730862 769798551 854651092 988751770 995477035 234385647 467843817 341406645 474114796 322362442 851664475 612099237 738778600 972679021 975990946 908307943 916946403 74964426 631006948 429034550 666683814 330400380 811019828 977213932 981460925 760491533 858443355 247210065 357068451 779123851 968775876 661464846 941655848 237418045 585597826 993860967 995343197 146962817 995365475 935413472 959143782 478776471 739235234 175974768 320764113 240778499 958928539 835265140 968511465 137917789 374942238 668833983 710559058 174935071 692414089 813932422 928304807 995876672 997296407 567487271 747379455 487122291 529984784 417385083 743895256 107129153 437682658 624988794 812897398 852149062 879139308 150968119 546003835 656260123 687373458 250103983 926618573 193879160 305464116 564099440 820551678 913152130 924437408 642181489 856510091 913593782 949402865 453569311 754919180 730155685 826460976 4315545 866804923 420804559 621804425 976746121 984881183 535640135 590290661 64982565 492451764 99787311 254405606 532442813 659896192 393795559 906033243 605729674 613473362 211882299 387264887 557452127 964636906 569568957 686145065 290731618 632255522 511475080 732027451 167512536 614204139 683377133 789402755 448201485 867405915 247005195 339132151 593735718 859127647 244239417 762054927 262380475 895360858 36786444 340846704 371536522 674483804 387170733 413608313 547543831 863498538 347276847 593469062 664613936 932959059 854296895 898970522 853717828 994712415 18020972 628282010 287778705 627980991 392340235 937477792 48811974 843332954 701182727 845209982 797675622 950360046 962487312 995134639 617328097 850645579 536034309 583211933 653768441 971077693 272999929 592337284 200059690 704587043 848624332 872780640 178484259 825153445 46141564 716568745 236486226 832663985 332553148 363665826 961589460 977162764 382076366 614519658 109342579 562329719 329471563 785898849 190849166 584351883 840624199 901270556 915685541 963451099 188965181 203752174 153126935 910253401 674762807 940133158 553879591 780115794 261230331 404336997 981729360 984370536 530000252 774616195 684326413 734193711 736739534 763549300 455143058 857363106 45240456 234657138 835936690 910300103 973785269 991775863 613240921 794645447 587042083 899136726 151400281 654900761 251329259 790366962 765990817 804977357 470687995 605863168 662581798 968354057 732509912 896014291 352981416 804797534 619837935 749071816 659812063 940698429 49044462 795600750 191231924 652807090 169497663 293579341 917196530 972644514 821265900 994145517 797592530 972205913 34211397 918594711 264511768 301321311 782464432 789209256 243122563 838016011 29326232 124242582 44718041 228178275 493114203 690150991 574264141 906545126 996209088 998557162 327707106 585148284 57148262 943728030 309846579 739163732 373259942 893501514 41348357 532711921 603392742 881316240 696593750 864429913 737160483 798559165 881642354 977617070 193891264 875057097 351267077 669544738 44119640 994839187 816677377 913132829 352427080 644824173 951100487 989562209 628604572 811564178 118790223 364574424 271416815 992726331 187825424 532903135 289799726 726377351 52713298 513765963 658078088 795215457 485534326 695672699 189721926 951342551 137083159 546322997 907770726 995778618 637919265 647581031 557160113 865806539 6873751 343846324 801128754 806450124 30160894 806612187 218515386 512621205 857943338 867856323 630301410 698471545 296497157 441487605 786055475 895833034 538527567 989024182 256637073 763491467 497879834 768136435 132622089 772102894 132393024 639199624 851668966 935280069 199806690 793389664 752572322 864000174 838268295 945213974 421461963 914749151 254640567 859202853 685016927 693661866 25782330 895939172 358802492 538603302 5190685 976054781 682592064 793799628 62713679 376466986 975876710 980477942 947032712 977535843 949819908 971495443 813950547 886193184 715124763 804829227 917589090 969317109 430199051 623042971 138428485 975664344 767863458 983700201 703582368 798507976 691189952 793908650 251273515 824172292 856655033 880907491 121111262 211126511 356456852 560964352 742648391 764584968 259326323 808680293 867845467 952852422 551877510 805947561 958020589 993928393 336878102 874853106 657084754 961144324 154207344 719786754 413252536 873431596 538555502 691043481 316205300 617841528 404947533 673008997 841860251 842848956 139096492 713824456 558064296 944951451 163898334 361990665 517008863 618527039 485389601 675532772 851725309 913046890 537436820 802158078 838707540 887334210 293282022 990127062 192170727 321177497 985729767 992207831 889315445 984387922 676952370 852246955 38794275 640512226 962207421 967729565 629132134 956120005 690699750 947987139 590254787 699043834 354624514 440352457 70060955 356971432 285884324 326546405 62781343 368723490 907249249 923185180 802184756 838975558 512428628 678310943 551738950 838144877 172369554 824094826 110086146 193126119 616524812 830280489 919173938 951016765 651466962 697432089 787553713 999382397 979807278 987852826 12696758 106378190 109295440 814472700 73314259 660615875 878613381 962210569 542473980 978991044 460294769 500089725 995483647 998848192 416885847 522731985 211965236 462961401 143472900 587153653 452715058 810743172 144012781 223813025 463614123 720019103 268112056 875014490 669920080 927192075 637315805 639117576 110772147 856032465 117114304 186833464 561031445 760931496 914968121 955824202 171354658 329269956 258213536 578695399 897940922 952224398 641857188 742175756 540814177 988775574 6937484 36714405 635715869 774903718 171242932 971457127 507938238 901013915 523849983 617976193 931962967 970231779 559525171 625840062 274376096 696396163 707162008 845168145 340776813 404462362 773977620 892736378 686929905 922957038 845194723 862816167 916695753 962676547 488128703 772484443 738919988 841489836 817646737 903906569 674050650 855623948 907767733 910537394 546846166 949149741 626183850 924010492 603802653 739038845 679479351 881707821 464174703 518580100 304374292 607696546 313251567 864255777 901570077 983992072 947090991 981504102 801231286 946589436 445450642 682837367 738017095 913260257 640833772 870745170 152027968 812778918 167488930 951036447 681625205 856118255 710171427 718993682 81391359 291747155 333976955 482113637 456656627 873087226 896515399 900624161 293844641 726607136 337358563 337568472 323148657 599476712 110341372 640394335 515885671 955621421 560502530 595748250 395003500 975645082 572754631 587338767 66233768 769591379 273060701 321808210 940191526 940299791 444502518 515487418 537131622 714280214 840472614 935292145 598173549 629231951 914305685 943892444 224426746 540476756 935551713 993719179 263912148 762651580 794023922 962153559 658083647 825903720 854915353 859236376 16458842 844366592 892512204 894945519 544395778 889520346 973347714 981579579 945031516 951274166 559597260 736537749 580181754 747779196 23473768 390309746 157054242 780555235 782805618 800845601 859413194 992081753 312136855 754316772 844295877 861383705 535014078 942002912 261817198 444216983 722857621 796720950 235622723 865289136 683594636 989160467 315037178 351252642 513793436 664928009 559353360 938520582 471346611 864524451 973241610 991005126 224609128 759442934 617799636 991442368 4187390 959485881 208111273 324435561 657143790 807829006 41483129 749601940 711348112 866393523 762672830 852653220 575832905 742672728 120981591 825946227 105662152 285104307 956303607 977924945 94774237 326337266 80609856 645466717 242658502 749441517 193763721 982513475 731338382 741477984 588732937 662151542 871075891 892259364 742000292 915438894 121276538 401392839 58228156 352041361 67488499 462972619 66344892 971397537 152707349 588586202 113894617 443694405 535901063 945679262 939942988 977482353 868886147 962791119 345714078 678401413 901756192 926006810 611358257 725833467 415141287 472705442 166400293 792624859 534043647 905904363 645252850 756059318 972163451 979957982 724144271 925148418 385031812 626277376 130488070 184517216 555407877 947844450 178553146 354263594 112107606 447445849 4880401 902176885 911842566 920872452 92023929 839749943 99593939 750801670 11676429 165180451 965522237 969896511 789625184 982515010 750449299 956503802 743144874 975024435 28985734 387416753 896381262 991571443 596663905 927050295 626080066 684517587 846730534 952989294 113390000 450119712 184518311 446433474 428465843 752513884 566009447 913143662 615573459 829018787 699211625 895302594 297084534 318806163 700223448 843011917 705299745 893734745 524651410 858203437 760916132 800400120 236655402 922997623 142598324 697888392 335070589 505503037 699692301 816625226 494196160 685525233 17962382 23513271 668332315 915542270 974448701 977533671 712211164 716077784 175085619 696624669 391465483 790619320 249423075 407139783 445109829 696834781 187852232 820220457 237873410 810657006 614141941 706233941 774333366 941537391 53686797 992958625 186627395 815363448 418074553 740223013 954402268 967756639 852233228 875967203 861740645 981586725 897968883 945011600 719797744 805263319 530931794 742328393 367510437 808305506 923976891 978172670 375863864 633069525 227763442 551460103 685974514 964297258 391080775 739403557 801556423 843514490 753552336 870250843 767060566 946988513 59639983 858651238 728085216 845380452 191968398 972624182 177096664 973718804 118416678 731474448 892971134 934005491 806681630 829653893 14213572 581594460 245271493 794297289 552296681 793165305 389082153 607969755 555919835 681121271 661445552 782142673 614149963 984897465 311145575 367654690 51223139 711708246 515597794 999160847 775541790 945144884 684376820 922792113 291645896 886828834 406706365 788306507 262176680 520218194 247085278 754564566 950446482 950938835 776094756 956873882 971654428 980042834 547746716 592272248 695352437 878888246 154544291 397121798 987410623 990243832 855224958 927494175 94700196 267668321 969501233 983155175 468615777 963340523 359900955 522059233 840051195 901771091 63582205 586470914 608808481 773217431 354252875 607820681 676975860 700284408 156665227 901495335 29599167 881364462 91214022 768836322 64279439 286925256 971804690 975842698 332046768 833769297 959462351 984228829 627105051 855930274 290020561 878113633 12483592 985433793 959787101 976079014 317269921 595176666 222680097 550711127 31941930 250015340 27586860 259575230 148070768 257938356 247200703 742098521 86540529 882374314 470696229 625051580 447426183 676775219 294785711 937875822 549347091 902705363 655958248 937106940 294228006 477602708 72479297 174058113 461999734 978929587 777783717 828109643 469132847 661520503 712069472 941382925 793815897 991875537 767789699 982687903 406880765 758085197 182290200 998687439 312918414 468130726 366881939 835379353 400891436 567402727 617783036 833406901 681049694 926257323 379465258 992058448 88277914 192961097 881266939 911657780 106869168 631040049 685640126 952302486 55805310 424871757 384652228 509030025 536525847 930414693 275305206 584275103 208245495 499125604 346139136 499854811 511824389 957629292 50020020 521732931 43384128 495117141 639413714 914922611 978894672 991685543 873235299 917005269 511666958 725313269 680951944 832590941 122602321 413642556 957605553 963185076 370340120 928697463 526596804 858922548 661547175 953850893 294969005 322147189 257572038 481672393 555018943 991578243 678091356 724558288 37579029 463830483 957522009 968111185 835799818 935667358 738770529 812543840 51075299 952644858 198416428 522650034 240824086 566815431 25352129 238003581 723629956 849366848 887539291 957162854 648286688 786026863 205417921 944997919 501960793 956357166 506278567 737918909 69847556 608974219 858385065 945777672 970398798 971858984 145856544 409807628 929491142 974509403 688262319 877514478 906144449 992747949 812010858 959915726 465626999 641360388 315880211 320770296 726272034 826365445 400090309 721946563 295077054 652379157 552998945 805315568 461223615 916523588 637301300 853354277 141672745 601178977 117582742 811388359 738307450 746610707 592099376 940462894 528884253 821794354 362062678 662556667 363893349 573798870 672546 252515343 726442312 861793595 26169311 146128385 159522803 515502710 552706258 684130811 391841223 815705446 573578748 736054370 717019353 895528739 34555173 234439977 601062372 747673631 870468212 976808297 552030993 557456432 833951572 898000045 135422204 720735537 322184947 400480556 485633008 726882953 683577346 862866377 727627712 946044488 440132952 834296829 211886004 361491236 322905242 335756697 834255628 977605823 665645952 757628010 239292183 359570027 49373189 684563257 425570202 914542464 682478313 929683012 510169239 859478200 311675554 705207392 621594150 888079381 937049663 976671373 37538296 654803688 215199069 382445772 731596581 870092249 506933268 548833535 440198553 546141122 331507774 876012604 247909715 406939879 402564479 942080301 317422730 881891892 443738583 769401076 760184817 816946111 246674149 661828316 333355446 998267816 509435957 711810356 578780034 920629786 860890058 933903280 693762987 840831353 486655177 997496795 951717026 976659383 470459668 492799449 43017821 309483811 358286596 537637309 952594294 990362437 71425852 697990029 810045201 984595806 782323243 848605102 996996942 997380520 393804957 980185110 74941640 352221705 740947402 800725277 429269247 780906059 466888601 542809168 393668883 774455528 909091793 910479705 861494936 876898420 884281832 986241340 777130172 793691411 374996890 792979386 617237106 631037480 190991895 484578023 38918312 368418133 589958463 691635046 358945230 849410134 345205577 487614978 436650665 913616765 541278188 567193693 987603018 996624845 793421251 839236091 314948891 666386497 264367130 673480570 904929132 960921452 483181458 852454902 634052747 857368563 379904209 746507359 352166920 986315119 996418509 998033387 364389109 619977042 24036721 468319034 540683870 728485869 994371875 994910533 946946674 948374201 818944623 859348246 11073849 801856172 48309691 474220495 570419032 689102544 646757207 902084293 800108113 821813933 439851208 920647081 439800308 932489105 976728512 994795612 258547267 785676071 893727277 906090628 565518821 666130310 464575413 749830648 84003616 475943019 965198506 999053562 605266226 881591503 654706274 864117997 774044161 908356043 9953399 272299146 831866627 940376005 769938608 834058599 610724788 864654544 398310961 754836407 544454328 732736012 102650648 883994837 192340622 865673308 903106262 948105511 71591118 548424353 138750718 644815568 933823759 994412228 793074133 881167594 259765666 800352824 585083562 725350834 627350191 697595456 257064221 787183638 226698249 407768586 666090995 727715441 519918059 748451849 141486464 954771723 511950539 992939639 589661926 694924042 66946151 129343866 712062986 974870188 55678389 626725537 253274678 816201670 546378180 824004007 18573545 755752089 383258128 437780056 682949107 912319384 942655968 986983760 985809228 996065357 601396310 930894457 535422010 854620435 265929619 385587539 517590883 919183203 940407191 963635909 206095486 265306579 454234262 780341073 239020671 845834336 50544266 633008647 213143539 473213503 664976086 877432836 913832378 942546090 408704908 457116792 287739415 613719229 205326406 996469100 402275365 684694212 911573 349098437 30366 771919998 961222188 988672544 928222811 971775853 470351407 892621803 88811309 233079395 306023902 461349296 80426057 520354237 990041063 992405074 703302087 889484956 777943075 823525786 377277115 969687147 767489841 802037800 299676321 404894476 352844488 482835653 409608440 985881582 640533065 930469116 216362751 405252685 775154672 843201788 634458071 742392250 671186164 882490392 589365412 606796073 328417551 548213323 186001211 245921152 345789931 896198079 349794619 880322410 183088430 388131576 905983221 987880256 717147786 737895000 716875147 876632191 874799234 952058257 194462506 926467238 90156097 442539357 646024494 904137340 127456130 257771017 63209682 93424740 927478568 996056873 132679394 377706026 726201200 995533620 326462419 700762013 581013256 591468146 200705340 432475619 367849675 397988168 753578665 942048137 571109384 841875232 535662151 899978239 229250492 742843733 202212605 979955314 121402805 750952818 731177990 817600009 825101287 852094482 966820067 993613280 472126993 699879439 422759095 845659513 499892366 572042751 6229680 23511706 169938634 392047847 210488027 449473105 885423168 947738399 651610442 724035311 46808551 617747539 876643502 894339862 167579021 579054800 213729233 861769293 283225392 622595748 99496244 356391267 762038493 817647532 869677506 925120185 104525948 850839206 181691778 445853796 378631646 814282356 618449406 702668678 72963870 419835054 88705792 604282544 64857366 853621738 574652468 735076132 141147588 201768733 249040971 269932068 208635692 378949481 954933099 965213944 695217173 925642530 751704046 960798786 44058231 962885230 181059142 319951957 51291463 598236069 230308553 237549014 868775353 994917407 330741020 738399706 462133443 861056958 601448279 804072126 131536559 611231048 489137398 543648798 485073726 568876862 154401338 583451756 858317979 982079012 315230747 576777197 540215340 794844852 962107219 969599052 983596078 999510279 307936124 740391306 321629735 671971633 717931320 957308367 534938641 919852738 462371784 773343320 118622607 573775126 476178882 574831569 704807353 740001460 133705038 566778549 387986085 505484025 322679645 966389809 330003862 655004301 885446069 928843956 897658863 942760069 620286201 780196856 724937104 883326767 622873429 675336829 21336912 743549195 187819214 228098194 281927654 745930525 686812916 940771352 857054842 907459236 294022415 714746305 307737454 482594932 885114052 921634800 143417139 247544974 872348595 898439143 178754161 448074278 723637048 735812927 658136307 985945956 141490187 876459584 898221224 958137212 433144208 921896026 915003024 997279829 208344019 828667775 330898618 647142748 897196053 931830150 687571319 981385907 864784334 914845754 620313829 846203603 832068620 948666517 406549749 749079797 887852096 947280059 274575360 796602341 390490596 555162614 441198908 746110552 549154086 762443365 514420542 651952557 492709615 675847504 506136080 754399932 895065224 913617915 583004413 945352836 374403578 832902374 615558279 615603226 405471906 716781393 736652959 791056257 665463488 736899230 202053433 591995413 369210224 434736509 995622808 999690104 583918129 609689024 180183961 858866427 133556991 174356115 583862454 708349444 510094624 818312675 998816164 999251775 163609968 684316966 454178096 607559732 257847423 696056631 743064942 975698059 6750100 101338348 118125827 518693633 804738835 921080131 904705444 938677768 850471816 911324115 308833332 319225066 839526428 940461816 649861481 720116793 818069376 914475023 973041661 999343272 684869342 724055844 889055826 901209764 41417887 766420408 625344211 658548299 10813100 322617133 597005647 792158727 725312915 842323414 326095006 796037415 561703959 631536718 612867958 757020721 974115007 986811160 167248062 419850176 238157607 701438219 554172645 763521382 877185173 947223336 271150765 410091592 969386284 989875655 974509781 998238484 438737391 476397683 896655688 958307284 617901426 831716491 621222363 805147248 318576065 884250404 163379233 593572020 810417150 994987252 549324088 641877945 557907285 925779406 727834487 820719267 239377939 335218744 683931436 892038517 601159768 790503234 148258293 541801580 585695919 990100650 679823022 865134157 997744935 998430779 527905175 732906287 531280077 899066372 729635927 832105992 834887548 871766132 274823197 994521457 376688149 514721258 472716952 543101038 730969341 817732754 421412856 494271962 763024033 959896147 696968370 894124499 222830759 296500273 11068884 257427909 627693275 944727643 537099754 666406117 662515284 793242385 342070941 716683885 615779371 719726761 82148221 752939889 946278064 964719831 597149293 872526721 109236478 229419093 561461344 957146843 880198371 960655030 188793698 917758973 248104976 682949613 530012181 631454227 170687796 210131200 219802542 507934902 761640351 882219340 245050798 929682568 254559595 274883933 15765854 151600591 825314437 924625895 441355589 658695577 818116596 866530834 877710143 997212755 376602425 596972807 835901339 925363962 267038427 864089694 755185880 903055339 692996507 820152025 960261416 960497079 302460083 793629086 502473273 562926368 523476680 804740727 403558848 951635228 709679670 808949762 642934838 908503890 639140190 742635888 119701887 696355772 635674277 966396333 163481231 929232603 400791461 750975524 43228564 797013449 263721930 747716703 884980733 912818144 665888685 887349783 60230044 771973498 697525021 877123265 142800129 482987761 890678376 950892713 513797671 543689097 932546244 953523020 683060765 959862182 215467841 718229947 7223433 797634060 447923045 622075239 716379745 946060165 580758610 772550719 882042946 886137858 353294108 363351355 640675816 996620025 432702188 497299860 655819493 713830174 35093765 329924214 244607460 631185423 963665277 979846120 361845487 880451271 40867396 775416921 665465156 898229647 83143740 340160078 570913858 816171281 752918670 980672690 249186642 374096348 239842367 409130155 721083134 808894763 584948228 678257365 334877008 713156811 107189273 207764566 588067908 771446230 205866664 478454176 765192174 837808951 763164253 821927764 354394033 642487336 520740055 740836651 694095932 930345576 221915390 728900945 494136380 573179073 429596399 741165249 507209302 577829737 652290658 721027879 716758291 940284406 843147656 914569242 427566687 602585105 550313252 681376611 835051387 887030912 112590360 159799310 446821150 775909171 87084898 906047419 194624164 819169320 283880691 620907245 387549863 805154982 822555750 909981123 326899440 776617009 807841060 829616004 168083639 881843317 8174498 704558823 276145342 332531566 513548607 793805278 748246058 966366592 228059572 702153286 746742656 750540600 596865498 629636638 223608847 634840258 953963164 968101984 476210341 503845998 254816948 938270193 167262448 615883761 197265143 535745057 431946121 810810756 138972283 898794683 521325085 885994941 218627494 629748576 550146387 747502096 46339038 55863584 779975182 791182740 778282072 804087480 679588833 699407423 324259997 827957278 220611697 935176850 643723325 711718860 196209064 898985028 632263814 635096414 12160421 651212346 316595196 905427622 724427178 952912917 951343410 968428606 542783407 880227795 173755984 746865364 980969684 994791779 521525983 995724498 279319944 452559410 307362267 371055703 744317049 951394621 802631019 826524141 631199084 991081922 192500190 595998328 701268752 811169982 170675570 211110724 975703318 986735048 37791735 205919556 570617512 571330993 438027708 689572310 572346630 751706959 956931428 972003270 255673808 501274073 91969834 243159982 816425601 943733915 650018375 739064035 939810606 950177401 555815184 913960703 844982278 970710832 574142827 710285309 164883540 461094626 94525967 920817476 370659738 469403369 95607476 508835235 974569661 986458846 613280616 793245017 980858039 993887464 476985438 527111294 214978343 535498991 245387327 619337126 704260050 827904575 323801740 380043865 392253472 500376221 497315384 519973959 449375748 472961373 534109047 985506322 583631221 618170065 761205176 875921292 211058053 483737024 978105182 980740968 743349244 864173903 318135376 474867260 727906777 837669461 278930677 634331480 871107908 887368595 823789044 941547477 81150360 466550564 571710311 680459204 596139568 672384576 946708489 985084977 923152248 958145227 740309533 750637905 434884303 744426670 222444706 907958491 813063948 946607756 96119368 213126366 602758587 846884292 920248563 943744668 178664440 547421199 990840839 995066730 947197232 994554373 368601742 891530528 580362192 896395072 488377488 646143844 574594108 622175306 920997580 946317325 468103465 698020311 771481592 934055842 645640575 722053246 886450826 953474345 375173107 736207506 650219348 826266539 451962682 717722980 482850687 658995157 985398682 998741083 234273437 802450671 517316861 916477736 459968801 927822210 191811894 397017888 369022714 594942154 12674106 97188845 232231350 916269015 720419612 877715401 820163235 872464811 406618108 642914979 713797710 714288531 760659511 769650578 726598261 798163791 654206398 944633800 907187135 986752497 951953905 982668553 46913881 906056630 300493949 517253155 252631778 283574599 460160504 726925080 166352725 717607699 444744992 818657417 624962996 773961972 424971792 660510316 927270811 943794872 241513918 981619442 517814803 706653017 387623573 471038021 344280545 365607499 680621129 834672492 668349806 695670718 117481746 712409078 49931521 305958528 752706101 969267545 604742401 844609382 810411046 873295830 830673595 877272382 847420887 937794659 4891371 135555744 74212197 657010736 678478851 973670840 872750555 911764153 244009061 507431353 47069228 870190049 307748603 317827198 572791992 983471963 499276043 922058995 399922731 642221863 933686539 969744099 697083850 873536431 27352427 436378746 889192339 937439049 519581034 594543887 268860493 752146073 646319122 831345616 721621319 851445658 402529935 463063777 724295141 750281220 831932485 862371567 663248178 936017191 249999874 305087234 366858372 546114068 228914750 490517147 690714230 962409088 60780769 138610480 502515465 980317660 883844745 947299627 697354384 801391295 931213076 975055532 783711691 794440121 128378692 543636953 722593116 904916859 68478693 920971021 716321132 971664635 161371624 688064314 935587236 993691074 664301669 828297033 904966336 981939786 597257950 822376707 460405435 872998779 853882990 914418453 121443136 570029233 585188219 938796648 775993602 907590933 869774534 895414144 885293596 998395501 69290306 532142352 914233981 951309588 1100517 225035505 265060281 430377955 458585383 993979471 62666120 466864316 653511009 669609022 790882512 874230539 746603017 987374220 760496800 797786479 548851944 984029337 517120681 889673206 897544271 974188772 682619871 802175121 659895995 692649601 270421466 396609394 802885612 827142424 331694152 633762463 78493483 826571731 907334389 952250383 633403983 759872247 111931775 357773022 641949461 691915361 725652346 909606321 855545958 869580200 188519039 209398293 34370604 612121228 799042600 993628748 603034700 926680143 338361861 412842120 145928673 643700286 558890793 841322072 922497119 986820769 104974455 365788613 309525987 345872209 714895564 792476080 374799628 378492653 172732344 213584708 270953031 783639450 325202875 488407103 927129252 946784771 284321105 322220662 56609629 326126999 1492210 111129644 336712882 911776337 850792519 968246091 147153954 364770518 51248093 866088366 697308558 775402183 793279988 813906781 194939153 713813151 217950076 739515777 499110355 662093755 538086753 541258204 721753894 725842744 866665731 926725772 332659267 799625580 437001453 817781664 507406331 603104754 132545737 581067803 344268874 823041528 117958783 514775130 572007715 584450507 442757561 620613726 100975830 134249292 25907223 788353988 138145433 495471998 972082884 995341040 615334481 885754126 114265413 192142536 893664741 961460813 688667203 910473905 216764401 247728303 568114296 807247625 863680438 904059927 256206684 693600802 974726755 985374667 38014713 475264338 143984891 728837023 939943978 948460592 694508624 876367127 904387013 930206601 484193792 780004576 882473651 979664902 956410797 981603879 836939352 885305847 682582749 687052821 770987406 868045006 801691854 955688800 850258549 879647194 798053363 873007401 506774059 685476849 719341044 988631927 855684275 901914977 888326173 977270457 7025159 70724581 774372206 812253587 499234937 592287692 208770642 341470524 22985404 609250027 738144326 976127715 23638256 184583904 497265242 629095462 687542665 995751384 950738304 961782679 739702169 910493644 461796521 850141148 621186249 936340875 173594057 461818315 259644586 545365271 959005585 970055597 803280234 980103950 832090767 948733415 447774255 834012372 828098239 877437747 101598978 941007269 616116519 681395187 727402473 743297963 20684785 389552554 320024081 675599156 822065298 962606182 735041898 758365540 963906588 975255931 367833928 517017178 687407828 736839975 284954450 962590715 638044089 686168607 383627859 590356495 138677228 671221058 321132375 572997778 432966770 628052059 490055248 830841318 705591068 927433858 260723991 270521368 674585610 709883631 584736588 782306255 942072519 972546201 992798682 995726864 619753106 883645283 118094730 350622888 56978739 672088602 492677630 779189831 871978597 977886948 13097876 468920725 885038917 916734669 707907482 841188561 909495905 926339986 217045320 461769784 269094721 447975063 663762656 771514773 926762985 959536785 40886782 693940714 572903572 878067025 36502461 611466706 376451746 791009273 516487785 919848217 869926250 895250481 516778687 966236536 670913521 940212976 997438434 997886766 746904589 841558082 954716392 984411739 904634581 957637032 94921521 373908013 551556870 866577895 665135269 855952089 905932392 948998766 227937860 797787489 718799957 937081785 459298902 829834558 864378380 928256759 231992125 920395979 840247907 928418011 754622255 810054688 245026221 814936339 990535389 992348194 232336078 666643594 94755174 925993498 613074741 827620111 388584924 568918728 916209175 930866212 461568149 477560887 717517212 741875508 96046824 691274138 238664951 760255372 842310695 919619627 443281695 473407303 248192496 435088235 357879768 359375923 464752960 489176036 597243552 960254441 32236268 298912190 20384796 206862661 869893147 971134340 317188571 524546160 216930994 596585504 145115771 347016522 96890417 835915817 419603280 470890957 668375849 693902507 541769775 816716411 58595557 752396626 363169615 381493349 316065646 750588493 713717861 801672770 154005978 372212346 343840845 992586081 232271419 462983254 656779075 949396815 610929710 821076400 153654939 839687574 727997093 759059622 653918652 696981089 827393585 965463684 397075039 611965109 858628852 984971280 252788365 402327528 611719612 771041230 922410462 942832134 103075126 251756562 428095793 500386320 480668709 954609484 950576337 980615049 789653427 957880857 961844235 977216940 432977610 583627744 945247954 980967303 94605070 192773712 428314908 453866137 671934583 738854155 58401083 558015442 931411360 949927922 85173981 603605997 579779099 797077391 368241483 789830516 741625508 842163871 581929844 849776725 685447958 916753761 408204362 939438244 205677524 563813211 269422326 918478611 232878483 732747948 123671079 871217094 39024159 99077257 669209480 936256909 637577883 960672074 619635888 976265665 516430174 900579943 867949752 902384213 876165765 994081480 182106050 643091380 811585630 870086254 279167590 334800850 198084371 791397848 479901839 606819627 709094701 909304175 761687585 774479800 942839245 952455240 920134965 980820792 531674449 968948618 419523526 969701861 341919974 778546219 996649565 999644656 342966668 484569675 170345492 560340408 992789103 996698743 628175795 991136520 88460328 129532550 396458710 841479883 555544758 748408231 53280402 324330378 541217160 905639789 407501691 563864377 114497811 163021967 141503752 595690628 500203900 987024899 172527665 309929201 56525689 971176062 318962800 686191536 125529850 899133430 172482151 464294341 181328597 308261561 716847245 903676390 931238987 933903062 364829128 815725829 101214822 589784630 94124728 328596693 434813084 922832027 53616466 315864768 576479067 846851346 413989747 490785637 509209235 758737716 243691419 808401449 426335217 488588872 857840488 913828504 36144225 893147537 680165194 744695556 264833710 372585023 982412450 991657259 162352667 182914129 735237677 827270386 926815458 982541417 32632267 776466984 870779196 926819532 841689784 900093236 586733618 693326041 257142993 715876623 854145519 917196744 469149153 794975629 350474110 667012058 166190191 334921334 396790535 763103221 650616310 947758473 701502065 905199283 696948454 828712243 294548328 866594681 600089170 865616223 535303303 630106812 126645407 601659208 77724728 804553889 85920412 370293868 518944918 525230395 108289494 229540746 852380736 978239361 791091106 791750442 594862479 802549308 194469152 260503225 528176756 966236617 43840007 502508098 21462652 323540968 871456018 890424442 465698491 526394517 271419873 862641191 677047782 743479577 685229131 946394007 354531938 795539806 194934341 438581709 525397597 893934292 732836135 854714360 72017504 225385227 651465133 990832936 481546061 793870167 5414703 738335926 43884781 844371265 349615099 639915516 354983296 655564336 118149919 265068814 912318680 993901798 55213552 730229903 19392345 335370256 558481118 744318743 582121419 748559407 832599690 995013546 149295126 889819794 337004213 577526154 925785428 938831016 391168247 975277691 130732073 177770527 660964161 715268223 449469577 957823309 964013609 971739138 819123936 995171538 212322081 711848004 421250144 748939116 963918998 985168867 498489308 668170859 933388921 940104957 712752068 809657543 684857008 691369972 965746388 975422423 960309973 971038924 615022293 933019375 366582161 587103165 228113433 415664426 171058531 780928602 700582885 984322844 761430950 909813712 950993004 999389964 617727793 735331016 780347534 995596419 170927432 887659653 205169922 580324907 721129200 748360708 460095480 845206450 786687154 960145744 895163113 946229599 600983428 791083969 808068519 852656556 380761887 524209966 128689469 739490174 933199116 938177195 874912174 878214311 42833610 981895787 223716131 778661465 728212257 791201430 402103551 887519327 871657748 981949380 78541484 646279487 716183919 826935658 616957437 899221216 744597821 849965384 471959171 853692339 43387106 130679068 368645982 895190726 886800682 905629488 779645735 897705719 746423016 797968036 651986015 732096687 388209572 972304602 65911405 337995689 992890536 997747518 639820739 664504845 730046727 867598402 921481875 956001794 861838685 955010760 86523384 307433297 222027681 853161729 740854218 807593013 265216773 311071045 751810369 818101424 36175802 751773400 851120492 899315174 850469870 984119949 87121769 797634801 242135925 923655222 802368379 804685403 883934013 885341475 358843211 651999640 684400250 872101972 899699321 906780245 230689371 928471827 879773750 988720690 64326947 476991412 957619316 960239616 94816234 115454936 882205321 933725676 822391589 877316674 394109582 593330100 52902802 869284512 530579259 962867226 289671345 678512143 616338169 726457511 728104577 981987014 699067822 972830854 571919680 996085016 71533476 172597061 847473664 882267571 482320797 947177715 627451586 803297037 598424747 742385739 809403593 959973815 982845362 983217438 597431987 707898665 276772070 604139020 395270710 679176332 350897352 359586008 482597197 732349123 917008730 964992455 838252317 940631318 204651144 205541751 554952119 950172035 993657323 997441760 343047482 400075739 939898986 978842205 655060953 810736028 739688795 889780580 635531329 998383179 937276520 961717268 915195572 932888196 473223060 910003780 715356759 741523266 597270617 892744097 458755534 535722454 417305117 611650483 20491232 648536715 747531995 818153664 568445237 999638010 464207278 613424391 706238982 992608125 237999648 678210408 638153209 900896221 533092054 913640245 398339084 789827040 690757436 900242867 636989661 765398259 145955792 806743249 586218573 778361895 766984420 783111327 928455990 956644777 870592882 871775885 285250783 786646930 420495891 554157805 391343012 770868701 341193359 997136430 464261259 494238932 865599570 948121016 440881777 605180982 671607736 950266067 253245513 535150556 105364369 617219707 974436174 986606954 425253582 552606759 371597410 471747403 191689488 352097751 514486537 606583542 783123999 916195300 169292841 609890286 993765839 994036245 729686333 876577227 39503668 416551334 823492242 983496177 807005687 913262886 664051127 949453654 468561557 800785927 161840510 470446458 215762466 536224780 826464270 953821529 205268934 479330968 760599509 942847148 419682233 663195652 589093379 930855150 931369854 944102857 108161421 680443209 863698510 896818339 565999571 602951787 163778877 832321083 555825259 737758609 445256443 467066670 48731068 114732657 726903733 977151475 263893347 322525312 973481499 980672837 996488185 996959557 524461256 876446418 252993091 396481319 573064750 630925643 864496547 875842379 778470325 847418220 187793452 507611378 252298997 452054929 585992760 918878223 922773592 964642918 734411967 813741456 173443910 330432720 904979372 989632369 713402076 967816181 904574656 983777000 360271444 907920965 723215733 866023261 731034075 838658249 576426399 765188948 662579821 980062915 383500027 741459148 603007478 627751127 453436415 858146220 994503752 995307711 423750573 792098535 513459519 828612753 650393845 677804784 432626224 924155813 809195778 811963364 543897156 618364906 780914589 925636101 886346556 895778269 441792618 489374750 257866336 410519982 852672589 970180732 44947669 803366240 217581399 785810107 475090296 721704591 47706214 650364304 398433083 862931594 452918769 663960332 615025632 834510976 276727934 516223805 710854984 884720230 29603388 369795413 546999385 554180224 323321466 359451683 328097260 500606662 55787306 497214829 193882542 521730696 834912432 957268264 311690424 657701262 464943877 525608544 19423666 365720341 823875721 849804000 417300619 664204760 73480956 870568787 609405734 611720060 591410458 592500420 513480059 590105534 701558116 898949798 453510914 838707000 547276718 746115959 975538752 994559339 516605655 768788767 515449389 672448314 266245622 867023835 513083033 794942427 57442039 89231477 969927796 977988664 515909050 705026123 659818006 945089411 947900178 982816173 505450038 987421966 296714082 587880788 486654132 596440126 82417101 652424147 481910940 786666542 474726476 625501201 384447832 577080385 732624834 971767731 827986503 893665294 242887417 429109092 959740881 962689154 235710440 324592286 576114120 697749603 857187245 955346831 767645362 859524906 781431959 782533735 788317982 815141050 984799869 997006437 425849618 723403727 724532652 734653514 360054194 468926073 621885693 824710955 907246455 957347670 106399515 752261862 3263073 300257928 503416506 749831130 8553762 429450939 295419560 754089205 172621762 526584829 894707075 988988237 860910384 973041608 942566490 971469715 397703372 680859495 782199674 938508781 49421522 613936983 911718926 962008898 25165570 896706318 348677190 650514360 647265473 855410655 52315975 342864639 54434832 120897513 440111875 703696633 223716488 922320171 902074633 941455459 870868634 889261847 944401602 969363842 243950604 469183395 688853527 972633304 207365789 283783065 502572124 672543834 993178417 999616288 173979351 609490444 43628778 250227734 81623236 945200498 755249531 777242569 414610480 644543575 246118157 929948057 794588844 849713695 874723958 897855865 97029393 905648421 100195830 911495191 942819468 981656750 285869283 518762753 605665302 916382139 501207680 844773437 152324300 527138373 719439795 944152178 353746348 543324649 407281635 519105051 753890687 862017778 917674924 943276213 266688670 484151888 577006393 775838042 505004482 698526200 52055255 994265774 770744183 864550065 595253324 924050361 891853264 919598451 605473738 968276700 707295429 974005389 760720194 908141984 827131857 991143878 578168921 688736441 315330906 922179606 294713086 591867710 32061753 202995543 326555656 719049414 61796410 192337095 342001294 672174375 694302594 707900199 805906181 890211720 37601605 489602366 693381046 715717789 369318896 554952192 176115302 332465343 209598659 417429902 243455551 850899057 438732050 440228892 107511380 751166760 441614506 746896794 670903582 775759899 268636650 375459191 374490931 833559699 281693344 998238124 182506817 317958407 20423064 392119993 961885234 984117924 747231398 836796082 385533632 758448978 53267107 970459263 575236038 607257856 219045119 277718424 861223326 884683722 974644568 991230158 254980134 872461140 762888725 840153668 525894302 677430580 310858036 933992763 431550412 863057119 610844234 817838452 896065738 980197390 514417676 515874361 144802497 579150959 796521312 839439302 265766620 434977988 863502151 876690682 793758020 895637172 529035145 736418488 356480784 957148275 413640736 785548456 186630536 908959066 164667031 270726706 367711368 441415542 474393093 503994860 346670346 755830389 26439627 451338819 977619112 979227153 39746792 520343426 679846430 841293482 968858198 981524736 881488314 905817470 134767356 810450273 397551 869709378 76146876 129929779 59097143 708623958 467155596 806241551 258068864 981345971 424498254 549432667 514256888 951169251 710474905 899042519 477572656 862413480 942519319 985144368 271916683 495480648 676591702 919394857 370132842 694054537 637166255 891520971 187532261 742994772 605701473 833045631 413266315 622492341 839762328 950465370 265544667 329133052 418156699 812295094 263103361 502553941 724221249 849903451 412513270 424732241 957610677 983468321 584076280 630299483 801013441 911358571 362282833 962741761 356789722 862299909 392059306 479143338 332397548 553516998 685927826 846405132 79142810 617993221 353446726 709597457 242938190 858701216 899971600 977524707 292997608 439188973 674907815 976316016 877012242 892313406 209925731 576017451 706978470 775805371 341210682 877206793 305405494 712655353 897379781 962256245 382783295 903853945 726881695 892922129 144025672 187529211 881312777 955876791 271067812 470128115 165265193 487145813 770530114 982943336 41044928 225670437 309996266 500935380 280352705 307298172 695445405 786126263 101293214 392011325 885833580 979413231 344667944 725388683 161615901 219115019 468756350 537205294 557322954 803898909 993582727 995894147 496041133 674772521 897063113 918691010 298123702 735391193 504127308 517651841 321436081 450280025 417877497 845839089 261767143 616760937 874977112 880535887 924966967 959050160 593501137 786382876 285904500 602747961 363120724 657924324 657745899 854881023 324958527 823027781 511162540 778365110 356267871 795885220 898236645 986472460 492080518 942836947 331314177 763313958 269473480 561945285 170664856 609706619 473868635 848393262 660916497 870298662 25383175 294898740 137819976 647232319 35399348 264577475 858144201 939569606 274929262 746042043 701892629 892554733 287047173 973199692 633882034 974769155 741445052 947950644 899349310 959062398 23077321 23621196 986905894 991067496 75956289 748182515 632899996 747474206 402756800 850681419 919204500 956907108 855433472 989297002 806420874 880424879 668007121 796432015 773192811 872371054 507085429 741613219 717296431 731178438 173234874 678500657 510367228 757556684 92299757 597137907 540056584 810444767 266717551 462663444 190552192 819122909 668612551 986662294 428439274 601095108 839630037 885724740 342523366 659052880 27889127 666738594 593818636 906104263 773565694 935263036 525767855 882269727 956251234 995117894 222422903 568869455 502266873 888173608 518380870 806249257 937973006 969956424 239112819 828796346 217219201 322247390 597237582 616819702 30956371 354379954 820696443 877903092 305290730 700536085 270283336 618608900 311071602 909114651 597941287 772237079 789721848 897297366 473237177 840561707 225970501 946625967 321205550 847456702 206454459 980193255 916543194 943838252 399102986 759221760 870075441 927580579 899956976 966906507 511968965 873059266 383176636 898056354 636687331 778113925 233398684 758981144 664654714 731065998 239707116 643290511 260273660 635552878 370008171 628186508 664149680 807789395 429653142 544018460 704089230 931729784 946531871 948735226 548095231 912036969 86900718 225490477 50110704 764359555 671065908 717042873 941332332 987118959 515186424 792493237 935588534 982847692 67206323 834736689 989513777 992456912 382146303 589556084 775829850 822191195 395036502 773580724 868480859 895805916 543844921 907427266 402628188 841824550 129960097 916128470 790596756 921435382 253664098 824857742 865674465 977567450 203345439 405897237 339604052 359094407 929680695 955496083 323017625 859147633 616281572 936725788 520115301 939065285 298666928 415255232 96460042 468440336 720780754 897786954 303866250 494281396 521456724 974323141 919657103 953037546 448583932 950209626 285337536 578964974 942339287 946435285 996606669 998093214 205080809 364583474 853626587 857405235 444249805 475830561 357513409 948997067 529328439 532522710 478765799 634915357 734745206 890908853 240969960 345109645 539166522 765230593 721081061 931256257 520217459 907368543 188622884 488999232 574532599 710959180 941093049 985182614 73688483 257358126 138710839 551679998 591162961 717979849 97493148 974692591 979127376 988027250 723697805 732498622 378067100 919781462 179982904 944114903 421905083 432864175 487529463 997668997 322504095 354584854 312807442 408934087 943939232 955264313 730236943 898984006 95616540 839421062 887933980 915091042 99015705 360098365 787716589 918042514 774768949 835677509 115197008 199408189 687200606 981739920 679629291 815647444 828818951 866873174 767425604 799687477 991441908 993715437 539863708 796924034 216081665 444094305 56004239 132850676 685904452 977135912 836760135 909302134 994305443 997797566 909555645 923272284 66783278 421282045 412649554 566305180 91194229 942702036 428958377 677938741 124872433 488629155 802819444 839534137 420355026 593036967 653498290 936647468 981764655 982004398 780360797 882286121 732682749 806241092 869640073 964841614 658242624 960664438 904203906 998203668 235021314 740386457 836188160 836561263 327114073 963894136 224835734 531642432 479781037 589586991 487387321 628233991 143704930 509075878 625266034 791515906 266358607 422557846 690684858 710937467 209531879 984217856 703524511 945716912 923063104 981925923 885686399 920420521 516419538 986109637 320521755 933465054 123982678 485142029 252386565 968286750 183792290 875904941 422265943 630703889 120562031 317005345 409360785 476563959 380761117 491459247 569249205 729154159 813382657 819411168 79918152 311906593 229152912 596214781 896532705 916582175 298734503 941271471 540514371 965648076 716305072 809880306 313426779 792972340 500788240 761417189 538597777 585363622 12178043 49431128 39729711 309724753 478825031 797987482 706326085 920445163 24361601 758920308 311662043 361700785 417461035 583411894 345079080 941450769 3408034 188949151 29585944 523339300 857362435 939547812 749299558 856340194 654225304 705003241 135381872 237523679 235647264 435754833 371022416 917143007 100069757 520692499 180846951 786030686 892275603 973526216 483738719 698860099 107199436 744598935 385033821 760380194 850011083 927188283 720630346 927380483 513764243 841247738 596183158 884603766 565078161 736072683 51159880 732985342 500608894 751034448 102811686 644141755 932286340 990117379 838062999 916955457 680059764 778810355 323778335 619150575 745662915 930374531 656515411 814328868 736893758 907308208 960606956 987143551 70204960 538989295 880468520 999063460 675858369 999148353 566867336 991957719 472044536 712759154 718153113 939229469 271635593 731834103 299009429 779666303 127604276 449252657 948704410 990316690 121167939 317401452 454964946 753505275 615994934 990054807 146401953 750612084 370840718 822179505 329864311 573841359 933050987 933187993 337510630 929929796 711482699 863621720 615993538 843674490 762179297 867815980 516031333 568996483 37583756 242010062 973642059 991965788 668935334 957381584 720070234 921010779 977138346 989540255 842287128 930178998 807653744 852336754 690434493 740243891 399137434 637864779 184378387 367316339 484148406 738391803 473209944 820998420 147513016 273163179 38644789 101294733 179591227 186236168 975436049 991263405 344460023 780978656 612286412 748028815 821106352 908384519 35526581 606309067 743426992 954058361 110964761 711546142 880197643 901596367 576653677 729183932 785774206 844877329 429126853 871936350 758969377 774499252 97818749 176905606 533173659 644789876 422674545 795544724 8197671 785420325 270075112 315179240 792116945 809703317 457351100 989331963 821718498 902572542 273374386 815037583 947517627 990629647 502197785 541570820 192775804 365405479 164924272 889166694 778779932 874281087 790149352 820986522 199643353 565263848 610819199 651033865 609200859 998032640 218460777 347208014 750294858 757596892 85013404 271357128 683667364 965885171 56724655 813591534 407698162 470507306 101732551 718815613 811692323 862173746 479147937 946359925 709854592 824680747 511677387 654513610 178606699 456247890 316835104 792829598 462396580 700371856 664694890 885812364 858479998 922067760 685486508 739744509 976452759 999880730 548035522 858350306 925436144 978168789 259720117 865716374 990772878 998954273 289670655 985238975 468668829 977265407 407715519 520170401 608206589 886179068 191830291 243161339 45933371 899373251 981446614 987887559 870362988 968832754 680088205 740391835 166451980 469113097 749532247 880797776 135689695 272767271 72509157 608586447 677332842 747365519 457690414 599760950 117972817 512364949 710830945 864638211 129370305 319924769 306879475 787052602 563841283 975680092 272640614 354396580 334370032 348584645 954514816 975878017 359951423 805337713 589433069 740003005 122602345 300814214 432969870 602813228 358660168 909491276 978779687 998043311 164390406 188657476 652890233 863983669 56256540 800331689 793432902 892613646 8076717 160577400 709867569 724776312 672815792 700047586 102113904 636632989 260275211 613094884 976729788 978705822 110319613 224737785 337924376 369832674 523618903 795345997 158047639 468620998 878681177 982634403 406411082 512479946 579820153 873848367 953286178 988474775 313064872 681293048 908106249 998417824 242443567 922083848 501293726 521014697 586652489 606180896 223097939 323747156 464690013 861738614 470905400 999182217 88884531 724752771 646001042 678337854 433995212 676550672 140431975 884507472 909604234 970845706 148711684 692691377 523437901 735988709 317886597 900208304 21899983 311756292 261652111 575642384 947733855 974531398 806958555 816903536 66800059 950546674 420395783 744916196 94002180 973347814 518570179 757257921 982064686 988054236 204553371 952203239 949212652 958269888 998859547 999287141 853980706 960962892 289220522 513411209 734755410 741991342 8685566 99354229 250087026 659380592 589526453 679098459 47880855 476647604 673126416 901611500 594354458 703479254 641966280 646085528 298306445 575268855 246428617 280264184 81554014 387276263 785994955 881457808 757069850 785578127 575181400 775278251 777156250 846453961 705241577 899712583 668729688 858322657 47204577 473297423 319440605 594919327 120809985 560506084 809609907 826303970 949447344 993583755 712514981 804395733 21373561 928359721 245538456 862081904 224132119 658638539 160155847 576292994 930279734 976030117 284000718 602673268 484271368 896459261 534562614 988179498 264286483 648938506 384186082 402960546 922686073 934513238 497166255 863723536 166284392 687190717 464118432 806238644 918257077 971454400 278202747 838642370 841709297 917423741 827841124 910467244 710693068 981397166 328312243 750911778 204901795 919954747 290306308 734748810 316149591 546547883 498920161 863553061 433422431 921732102 988785741 992509278 640095598 999186344 209530339 915459239 557108552 919046899 747040479 788430525 685752433 767859784 406059973 973015738 2613952 733637858 643205459 964698655 418079548 540262497 467093607 746069132 400081278 663926013 88599796 733072214 127162968 154721694 16837631 355671918 544195859 925233979 842720903 933439024 975072098 986296171 398778174 742609880 29840266 355835790 638062877 723937170 176228798 696949413 428583293 841283689 823217655 918312365 800206458 885894481 124003559 956437148 46514471 214542516 352063760 985092840 902643730 919426755 722619388 966089045 357397717 887276939 697765231 709345145 884927257 886139887 824124830 829176187 619612922 782531233 487727130 955083884 40717880 568889077 862511780 874927752 434404241 511559856 676188286 781385152 655521010 661556274 951829409 973095573 871648077 998527269 310317484 401634034 583875487 716732838 723691224 990783532 876870305 911323428 234131079 859900725 495701705 794580362 957320255 972380969 515641194 989307709 244576338 453142009 950074390 992612073 888415884 916901066 962986715 963595876 374281382 796420195 411427559 940513441 463772379 900635297 846556007 956466107 617779458 774645971 931547313 988261811 700374726 780219283 384251269 630236295 963260003 988948648 916932646 944100033 771638035 815281219 128143969 765833243 75275861 342970709 561197458 847772223 122076601 853043829 552876492 585061179 369158355 722273236 339796123 608204105 426456113 880056372 633099748 691317712 611215809 642022626 374384513 710994705 998630873 999918526 147240119 358609130 427184684 922621480 330644100 509141036 221463268 520614949 849021242 997479490 978433660 994370331 464061283 880178677 795580418 856339660 615977504 869439293 80971045 592086785 819663317 886547458 93799855 294507830 549758965 589117132 243134217 851832340 400034448 897171638 716113478 734018796 553585906 591852753 506998978 956218066 817676037 947572018 581572962 851527252 2060811 795459756 810624687 961891815 485663918 621591589 283160178 408813866 628335811 968131045 931141945 961093733 893024105 962454617 655021622 657276852 417335819 943944386 646444657 968350647 492454695 541234948 699661877 829619537 434767553 772479651 30481810 606572473 762071336 794179534 981446628 998496578 532475071 848296681 699877534 828393758 679085234 969528435 780684495 936880895 524711456 747482905 279265639 496157318 17630420 223268349 804641931 947926621 113669488 647972915 399095884 826135437 318074818 932180590 945803310 997020180 119311690 492427194 451492656 567391233 567461998 911931553 258601738 827163170 452038457 953741525 952990469 980012222 701602290 832054570 568010734 845532511 965468893 976077041 554176215 792306184 846744939 985423913 643718482 768006725 718585501 816046994 562392408 668158217 778361405 869165723 745089054 751095170 576569003 725211056 829286827 998964113 141413568 491623289 758540370 790919497 624042685 767848494 203912811 209470491 413284267 968369455 330050667 349542660 939544883 965487192 971642507 972381791 425516032 862514953 252289656 583673908 34049519 976133026 511180687 719383944 601882650 729574033 969642739 993203074 586510568 758546171 798617849 934913784 385302172 443179066 523102912 979262406 678332648 868631266 659139049 770755636 579883865 804163660 649015266 956215758 610019416 968077319 189208486 509396534 273735369 660200784 624995310 706218655 569305548 655418156 5973762 67552456 639095643 780015959 93578340 941721035 13111389 450480875 31430529 73508614 31265276 558798323 398087639 464615255 464439788 501915704 147804709 553513764 539543732 936997711 285511595 775880410 767908398 953223027 439865355 449621472 468621461 522125560 13031 542399238 103018731 474394114 719593510 908156217 794860412 905241790 966128450 971794560 926716128 955320764 851963496 863531456 827299619 931662561 854790097 916670928 731322831 842235577 908985484 939578927 921218155 944544710 108673179 933484077 837481179 872562536 357778062 839440336 52459559 311007754 778949008 792689388 437145462 449077406 723026404 840223138 112428527 858286745 195200194 511103422 691276882 849493020 701161211 917822567 220273480 984124609 945993300 982435091 740660340 962542295 278328834 346919889 926279937 928527394 83523045 258358343 65953322 488741976 840753245 968527047 246836408 836847825 897279299 948998264 648262094 688141657 893132486 921791297 402268250 515342851 296368558 384520693 741002743 930557550 87224162 548575977 929195954 930687305 668132460 731830087 30737550 678773545 615540819 868398337 257652310 515714463 856546904 892250450 527566399 806544731 935765932 986554512 902360748 996065738 532503576 877536192 726606694 870250309 520980384 597615899 220230481 821535672 490772956 852249674 946576155 978963642 816234375 980575246 50302241 897115061 450963788 893743048 377946718 603479343 880787425 888578150 883332596 926621854 36006583 361064802 966559942 974634970 126286230 129703343 502368060 999727852 491975550 628398597 482760821 943028911 289744181 929452418 692920371 905977524 690534688 904620777 407755894 796451161 492262973 802966980 136476691 333245755 385641003 703728551 259317482 385906910 294720763 914836781 643545008 934698816 505781509 762996547 87136563 167606133 716877915 833630403 644304265 781332596 464077125 526555379 395070399 700327526 127884851 262885330 966015244 982063921 90440849 219932104 846545699 956623728 882259610 891986075 634351619 705779827 238240499 863335760 464482489 837273662 218340027 326699665 928960876 989287661 881287118 938286317 618584395 808844385 628993726 666214923 704800960 798498685 78852347 920504842 796395453 828300281 186251863 423035166 341954142 624704576 715331979 959496511 864046565 984295170 401560070 625824855 448136304 680733432 757591558 922650510 111585332 496820160 755457069 958104533 207976583 373869196 245402149 682827945 378077980 613037829 800153782 953579600 935796000 942784375 979382017 999215722 569471593 780692861 13342388 364004570 456196847 456726283 952924444 971589332 74755729 405023752 402150313 971934868 65524768 444414052 502331639 777368462 760081099 868948417 177690970 506691807 283520980 415483551 944903981 976783613 440466809 657145366 458439272 969816537 949380069 957914980 748039527 911148982 252227734 513759262 557503556 729933544 627409212 805809655 127844119 672494216 935051590 982811152 918113198 998731657 988500962 996787725 843521161 872274019 170589713 193327643 32843134 265401358 152175112 322021535 279340237 311708982 686300477 896662921 379929668 981244250 692085836 949747235 838933632 895487316 685634958 975667901 62649408 261753112 463547327 477154553 595452205 898493300 684312361 821694704 195666457 233906626 687690423 995821608 988128799 996920372 976341758 996656846 244235637 810395935 565545458 861367969 89245574 930977852 804420285 924838713 55311629 204191633 116521316 582574724 283845352 649073411 150468892 588400410 37625000 769297640 700485916 968089977 836286985 837603498 826576488 870528095 593474955 746023038 301204675 517513968 487312852 721292073 66848946 430473331 697507489 843358003 537398612 718316445 703977801 801179836 555560069 890274559 600553053 905475511 580787413 887490350 856799384 901084018 956115648 985874947 839020972 950128061 702000262 767564979 930742106 986590552 736711923 870278003 758212473 907687500 471961302 472153216 553252849 640745115 334662712 632715824 419625048 537708879 849532962 907909360 987185775 996388185 936424334 951085504 299337775 717143607 556703380 617428811 23756134 128902537 403484968 445911390 540613340 983689048 82495911 370073324 914319810 924700934 758989662 939373671 526279308 979476694 125424472 702935529 780518523 857720777 901454285 962758995 310952223 723250187 23307844 657312384 378609833 611161384 978564294 986296983 679729321 956651309 6624188 100909583 884655576 996040152 120861575 349720411 729671938 782862744 666843961 695841135 484098746 577069502 311790300 686154084 641484447 675699246 755124673 831092236 849042364 861477146 345744563 549321509 289804684 922569238 203668825 809553949 43546246 139850894 631902856 639993944 665565496 887506835 660788597 835792307 952011441 990794266 571325438 736126927 681524947 781258996 728298194 949146901 984407944 995457772 341675269 754986022 190076987 671583254 473664123 574107214 719828641 873983995 212192421 683775192 423607001 872973094 858507439 911805811 222920846 319991538 377900231 748810146 120587278 283581704 618935190 820390831 522451530 564210038 469078464 788794940 129884432 660723618 725957315 989511623 374260575 582222285 371385231 918009598 748544222 975772700 816031760 981883488 834006565 838033475 719180156 822296008 137272540 757817142 959543722 997121949 201858152 616932379 741795591 863472503 91955931 396361642 494325942 849680487 646854942 811335178 705076570 783752175 256300050 988997935 62026861 570691252 508410461 636288212 429895868 886726291 476181152 999100291 95019359 756170597 930047490 990647135 509260082 593066430 722809800 782395936 37717625 240966524 709998843 825172385 938219706 983666634 7674496 463779574 77684150 627050764 254029558 390883518 997588971 997792955 162546796 269761517 974229972 974806017 651255513 758646079 587757873 850664773 810619411 838384556 317591535 860611099 698209436 824704953 622251788 737285523 951279543 994055274 299006165 867500104 658714273 874807589 753477196 796466448 908636466 937025782 699239716 741997969 822385226 840188229 955033245 965407371 576936315 977613524 46912310 708870409 395702824 663154790 284750416 909812223 225232410 449069996 240558200 281837577 754103000 809593859 10601819 960138590 612436476 852360520 622974320 977691429 190271746 732624701 459551021 715892028 150434056 629037252 766504161 801774138 490895183 891743597 589826992 656929356 451597818 970338150 537205818 986946367 595243485 712889851 430178505 732212365 284707083 342089512 692957399 855697753 409280501 642543265 982632967 987672447 785709566 806231485 331343028 463036962 204333789 687203596 620147789 954538320 303193173 677987396 450350311 588471537 276005633 634010611 469761269 955098361 40041643 917029135 564740405 821172121 492565635 978907254 604611228 836481894 732544041 806153541 302441287 893588248 998314445 999532852 621172264 924055020 916426284 993253733 933202865 943409211 978917688 993547287 333664409 841601239 55209680 803597750 190406113 200977576 20155576 676378618 390726254 803029011 515839985 924321900 553798989 740928502 108272150 182049418 260646767 592724368 696770581 859698105 739205489 758323943 728801671 769849286 536839838 624238441 812654580 888885749 3545142 326237168 946837238 997668232 944875982 981549651 977909960 987439135 323161007 997665710 459077986 683448039 26819502 637245681 970621230 995597366 807143182 868528910 700873953 817276374 682853293 971411140 599326450 899478750 380595174 614215298 36019425 927638898 701391091 972426103 132526423 241158391 137968970 378715346 385201789 969405712 486571820 938699064 936936310 954664692 964651015 973317710 337424047 964460756 868287731 949538618 177379699 889797404 758653191 868203123 201687927 784843752 139564092 692689205 817519283 820834082 258167649 634064222 570207433 952336980 964648479 992294268 456338063 517616379 328850458 965848459 738184612 943019990 607179173 989710175 618635154 711457808 160820156 359146172 510489014 741378217 958712704 958866143 959287194 970916310 155000210 579372909 177601821 243116104 638097069 876263691 852363043 939700164 387505316 704886375 172552410 917275567 944939805 971354721 137915277 181037984 764199966 964824741 11150261 642857555 824335979 958978777 934950608 995385244 286926296 952265325 669842444 971112495 10869286 911369714 186804069 514604886 887835538 901447175 936963271 997419735 215785643 980396421 706612397 885387111 560646990 908258550 721550848 777444549 735032440 970479677 218371235 990501186 899423820 988065129 268415684 416034712 894832356 950035482 439336229 441472678 952498072 984078044 746120783 844808552 561277982 869412607 744797610 948618673 169808848 640197563 351872786 433562482 404626089 674245594 171736060 731060385 71112643 653691224 817289634 967122373 95956194 462085072 642672648 827338816 123981303 664112411 363716553 956870627 830213929 974027386 175973410 323411080 541743585 566528076 860069318 887442632 536915866 692912121 10645367 910547715 796943755 927176909 124577875 843776802 843465042 949658577 690842479 794292547 226005251 710663884 795628979 945288626 103617579 394060144 624265687 667332816 856498253 940149083 871007324 991423532 590418928 707603099 936204604 998350114 846530239 851549133 165713751 311378637 798306674 892677278 340151246 906542903 220155740 723814732 801156591 986582525 719055365 835787796 947400667 955386287 388674554 883171511 836582487 915192100 923823507 951267855 591983294 899799582 767797862 826049882 878449567 940738974 1151925 104774372 115956857 581700531 555146108 679544531 443681479 928821535 101896413 765961891 639128440 694884950 269674575 319835803 518640942 916056436 192176937 262222088 154062300 749166300 387473286 939774216 519254973 993222152 712052117 984673996 7019440 260836118 409433704 724443313 472356745 999919496 241347231 757492386 767938143 935231290 391928515 932573038 312143290 938460964 101954360 586856031 91166784 960643349 617945755 705167847 57670695 190310454 59504297 163179481 944381999 974218809 656900297 886468148 76991488 757425554 291306489 745885699 706957248 869248591 250909076 841782648 403863782 408327707 289644360 980334556 136758202 644828626 888051622 948064145 818940590 823785727 43519712 544913190 89831227 597220633 839213540 966941413 103913763 160913778 333844928 437768780 25977327 694380706 474305157 557728605 866119786 897370880 593166910 662848939 68959506 994092364 397786279 517640653 592540199 796913268 678117666 902781030 37643691 881491368 219974111 279997030 103585020 273098273 226383170 811706020 997507904 999406112 639959400 907305105 72448871 572913144 293784962 875822387 279059306 979154923 694167507 753715961 731029091 993755063 48268417 140957273 81949382 995079970 106814543 519358746 701075880 774070542 875378062 906848319 992563023 999485803 546507911 820070621 159575749 276523845 642050267 915150649 694869915 719946091 57108864 939919327 38133376 827956485 860421467 911340612 633232723 926916980 839288383 854287071 678883670 709654708 22933613 50610320 886051417 920554064 501245860 807991698 419802693 719055276 926591839 984220945 454717196 855203840 485394777 694231578 435829797 648494513 589803432 733252149 260084089 308035102 975787718 976436594 318493789 873249170 13608712 334905066 915187253 999782538 40179045 405786424 400309196 512551459 599113950 605412440 40610 124730063 175287033 630971524 453537207 506833651 186858366 701926065 192301515 960635072 439122004 880134534 655823705 919561740 204759585 898148093 68136680 765023323 979031341 993931561 866101974 998894732 406344282 756551549 355482840 668547434 446894502 888988460 944874803 987575083 887238001 961747888 330344748 808655983 750546137 949634829 965986947 989854502 152927420 931829156 314190612 932591191 93950358 598617127 871239829 938917655 605917433 691690593 451508667 785819042 158709336 742811491 838288821 916629524 155947815 246115878 237156359 795866018 891316298 958052887 60209681 72348559 128053015 845778218 688824982 966261236 246452569 540749131 250917522 735095596 68179191 78737317 382335808 724752552 266867305 605002196 286121980 449762102 363578638 526805357 699137441 828189169 236060932 554846213 724763223 765493348 327469115 448677296 327207267 392255821 867129927 975372360 491045813 953107012 403173232 729999264 926501942 990775684 990550950 992131744 526189776 548864916 537925387 662162492 847162307 980400684 947799735 953121298 702300876 798686237 622855962 662144790 507431033 536446421 477848205 816915122 366065281 542588949 309158520 496260413 977533494 981362320 834812393 866705531 280916018 568911809 305295730 365033024 905670701 947773273 243235093 803220491 927202943 959913827 144033963 635417520 419024930 611148720 495174145 538416521 724573938 791940661 610894879 717775968 423685979 582727039 362919284 386080052 737355505 788164441 488126876 545161711 329715608 761162018 237683281 660222943 427021467 664075622 792210253 844168121 869464283 934161728 774136659 990835516 20356271 417939963 511390020 935484807 724890780 822403765 813928643 949200858 568083752 630521079 816000557 838090056 882127271 906480696 942407181 965119734 447111626 974676467 460174918 481296393 134663516 775247822 423079631 779771429 960618391 964666346 299136227 859383440 73250835 166914213 694701928 897879914 304110555 773503638 400614397 982382712 639597044 762306710 919456337 954149020 852184749 933430219 797283751 802185541 300157899 939599984 690786041 846493306 598299137 598783812 356112166 804168553 264200334 877668516 906689976 930569683 956571299 994346071 822730603 928422383 189596738 530971962 587773827 668387521 387069312 536497338 757638001 952891000 351370790 870676098 890328989 978114686 331869078 403552504 656885533 918751550 70587919 466111225 897128714 962120738 560695475 942625346 449473487 747116456 776489961 899109139 711179343 730924211 689355112 862199099 644487825 781226077 486430690 785134500 637305684 956592304 262521353 885582106 291696922 927130345 169867068 253328256 198534036 313099953 906050262 944476355 766474320 970344326 966755233 987415283 272626976 285729406 498768017 583931274 862676374 934853027 90792267 818665831 11135034 747697872 711759833 911819582 528584011 684530079 147585011 707170970 321898173 863377760 289961254 494126498 399750092 505989943 839284700 846654226 554977593 725372853 218363300 588650677 338070699 481943970 791902689 928841467 23361006 662200728 329298723 866487872 954146638 998103486 921524856 923619990 156684443 589995365 724192166 954581026 726314043 914850026 649978698 732608257 354410864 711957473 275405112 641386882 269580713 539024694 813629531 982658565 53535879 884893096 54275487 221360064 743224688 746387985 509612287 598734227 56678401 998727484 195136720 760347131 702316534 704091879 985754922 994987442 224397942 686197457 42557443 335626809 403826855 745841845 420226692 996757017 87653617 380690748 673125857 917544481 561489505 991908349 376952109 466889880 170314584 430201187 537924187 915119488 502710407 788915322 744187213 866867267 903975924 987107077 768117008 883414309 557679309 751397158 671899880 800987059 594607717 910123583 495026651 741731145 680025282 746673232 950008839 951911433 934559197 948227824 571630552 688359297 715017891 871534165 403106790 523813858 698429005 911212177 715695772 874342273 81201093 699369144 516834270 855638951 559672389 786449350 814552783 815023298 496297260 730133382 160160634 416871013 224247850 854161277 767608366 812037271 217698102 876133069 30350461 366662288 953935532 966610274 325812793 495904469 847462294 920666071 134513406 531851235 677206528 734829494 352199779 861285802 270077229 319655523 833627604 885190168 658127162 796655228 698289355 706409879 812585352 838656973 561357849 664330443 903196876 940297356 401463543 444457297 542867144 997196983 261550059 667291317 895280556 989465512 459077881 674467680 559518013 916101231 637205290 734671885 130787594 665403327 532351147 830380151 505356348 915960430 784898132 873002239 173141337 454210553 386466091 479087749 612422744 888691979 98317669 230825555 996813848 998091658 779132968 919187640 997848469 999219997 306954151 669602071 231173558 596352505 480276665 695547537 35864247 930830857 437386272 525157333 99477175 701697315 551758809 683944776 919235702 946695260 379953594 944608047 678583246 828475052 782297337 948715018 230180177 805293120 717460165 746767898 951055517 966060133 426124793 515717725 291192400 790544727 22638509 880141207 302109778 712332255 99672979 116123851 73044978 271184494 918796191 927307201 101563787 318367831 780411076 906727178 346139701 777130100 678927116 893111885 613019704 753433551 304081164 790892020 179270304 530717771 525095683 832312175 697163986 912048136 262803620 981680003 757396734 776885195 238181248 663462804 702910641 790845052 669799184 870658226 713995578 835975447 71816208 994963913 734799987 929271140 501557654 700772744 983016898 989709617 80558996 895592086 111378433 215118915 157588445 500016207 209875389 295894653 480301014 587376262 912478856 987768470 317202340 955383367 799701476 847207605 409467601 722136290 288508481 854046582 944945482 974986032 161581573 696854005 105794358 487049770 154724748 274909402 944583542 993459422 802058368 876303833 319826632 853839906 458882426 679010597 825668235 963734178 312779838 531616103 426551777 487226233 99952320 368356308 367388401 802477481 113814651 200637685 787994997 917256219 610908592 974422613 322265666 599145837 341470538 834982780 860620381 979137825 952900305 961473024 854129355 867610374 637063801 932665438 936312134 954922054 724018132 729711756 547801428 729793249 408499624 953805936 880939234 959016455 116899716 542910509 90149948 346253698 164311460 594486676 602304405 618807728 318604745 330041045 710899328 781019289 723542096 879367380 807060054 980750672 212399170 788052662 854496754 940110728 961207134 995942911 937186375 960342295 629165811 733131494 615863613 884073837 740884564 919305023 121138228 330239819 55493535 259401618 626950429 737024409 522219165 763498388 262802653 743239934 598675225 823903851 143085951 617908972 60353810 304302919 991825426 996432722 885204775 950138936 679512857 708015912 342209816 774655178 892549433 931751844 934397545 972452316 847715423 896102241 491856239 927635739 437559157 862679251 997519000 998312067 277630387 492475373 625923289 676463394 160232765 675091509 591993899 827042573 939809140 965780686 918821583 944286409 980532676 992954508 405644795 980704769 617933755 971534265 159601532 667785354 413229117 727437123 931918909 942353166 870164525 998711364 593397842 756209548 337399963 938322058 228756841 802722817 793396723 969234067 509159726 615444873 703993699 764183051 939498268 946065909 7463155 748080817 522226069 992074804 661479903 972701058 666709412 714071249 650715727 689548223 130083824 840962247 100090272 782006174 147624060 538012441 71047129 286774349 934535101 949586420 515221386 734542536 348663630 922145829 118186997 794255583 71754179 361406271 740164317 996887568 185457175 594942071 753300200 800651368 422644991 801578299 252907991 564596561 30480865 629871265 2712990 670585329 584585086 763044571 624911799 938092560 227357345 748466242 285734075 832348548 973557737 999151511 574605737 946275176 871412130 959379559 409647988 587476039 913276547 997830736 196068697 574801620 352303974 671867397 974905804 982262422 913399276 956825440 261452769 949991132 567094083 902185818 977769573 982386481 447898055 643346707 289330655 955542161 442092246 676710112 10706991 564641250 402947567 874437690 945649830 947701366 366418743 951064088 617714516 819882539 82350808 692859510 384404376 878305094 499172975 636977463 915129978 953723374 420667049 720502207 565939499 945985336 792817679 946786849 255021142 865958305 8304254 652929942 505994692 781112349 401391721 644151762 507189124 936239382 300281453 872871930 469150135 613902239 598558368 849971987 941588990 985635627 754586279 844278552 420186552 805358986 651335146 971216528 409454699 706271063 185187799 470607535 268078509 960774113 862179567 996818500 543771032 662781553 919637836 986862391 18141600 936454266 458166456 536320911 437890443 471669636 773939722 920463328 391842320 628381589 885445050 998378810 927808249 933332774 958781651 961762790 203925456 296017932 532845937 774218259 707710488 767987223 327503390 622774188 239032868 772423716 571338993 926525183 966288362 986532364 515601691 983296725 445410263 849954031 865693541 890403915 917873294 977824978 211857002 868434293 706449193 914876067 582811004 904585484 200345288 406638976 830287572 835607132 431878728 995729864 952612270 957392814 728988024 821996005 418140144 745066496 567775382 696757861 209921513 223554652 169930959 975888941 958379655 958606177 853256440 896171473 160511114 623440117 718122526 878308317 440229980 800614438 651929502 832505043 337496764 823576947 562693550 729120549 404555141 409604008 817084967 943456731 971432938 977349484 53983212 124121922 235963134 808624887 965101794 987939752 805004089 839761945 817757344 953722024 407737353 721245005 214560427 395204259 207078132 983850512 779229294 845888219 201825124 903905937 196273739 429199443 554143587 980135275 489904729 992809543 910683467 988900639 748111997 761845334 953304772 969206614 617138685 755756313 208861730 437531175 928443196 969320719 417767079 766120734 722467832 898063957 600387162 858905881 61417002 94915653 938193804 972899961 500304618 550172020 735802178 751623971 252481039 730318555 335030709 698564731 993369414 994876019 82603391 401114691 689112170 957598241 491281863 832971741 174677265 378117337 959824430 965233689 535046192 716513061 718217158 804243711 743902548 868017647 967827122 989150316 293276863 613756635 382730418 488834829 58185000 794049322 901197073 967885094 742163452 873838921 151238515 864024506 773066950 919016733 591992874 669924957 495501000 928478284 207529610 568766561 170564438 466131860 85991539 216889486 292023292 555805617 186623067 388285760 698818923 957976206 321161913 464754009 664734381 772324703 98307132 275799872 166927512 885098311 704346949 788871139 537283802 869325835 975922297 995476739 441364709 514801169 54569899 801322449 771057241 928682857 927146754 996797944 155080814 245115301 286063705 506492523 90046317 197600143 867360837 913234730 145568125 222798006 958184614 997942825 498063815 657276543 753282046 991421021 12683283 411164806 320934298 784292881 551616332 908331460 508755686 541483497 792500934 836055508 280877641 526607869 541308970 828711295 806635217 898139769 769979846 933691634 932793508 940512160 416467890 875496988 706727031 833573571 750092051 983171402 199162417 425356024 778124195 907419396 394263126 596341738 720372568 885227948 382646028 443502109 205933423 999341976 258702535 542873108 762649032 872634018 768746793 853947263 108424081 948651664 526206766 602368374 481861182 872823729 481161476 689842851 959451177 995043155 631642114 930093920 143041354 355413841 923302512 993954612 851878595 931788865 489133895 711977374 618431485 667219887 35257950 532489432 981170205 982799819 416788694 955576835 455678635 969502339 719871150 858824015 966162624 985331494 116858162 545323767 437738006 579524289 737243983 825963585 877673661 977717195 861536235 911402608 753103929 874889994 481184711 875451797 252884777 743634630 847351314 995277750 812989308 932752574 31847076 825059620 371509905 696994916 310315475 394816971 625196803 964559489 584412010 773303345 509673618 566851928 126610027 523725449 438031377 738298077 386094441 456502223 761151429 876837317 932381411 957824583 774490759 994507065 404750325 764342951 398823083 454865180 969301291 974689983 424181032 432741249 699585072 983000972 682519999 940971345 200366639 614083817 13332558 927282541 174406307 380493145 563955054 722378971 785331205 787785936 446926993 806589988 126112167 428680025 267026374 429660338 349361640 691450021 923923091 991341828 46323988 864402471 593930173 766084953 293493282 632972701 515912794 946294141 437654038 663226623 79385563 166333069 291263460 607243160 111933921 388983335 197517733 788351006 418040004 449197582 793792398 933150501 301148923 389730272 628019113 942178968 293210092 855205882 532797825 721083450 63214022 557717955 206387827 354004599 550941116 975751624 649448289 890523041 594362632 730101889 250454842 697420506 22934893 672883532 360351826 762848851 258208702 466065711 43508405 774812626 494185382 657807497 648181721 860002168 385813697 866426692 259723954 361688256 363832618 598381185 738635544 877672970 363496124 430330813 124697270 920252147 733552719 974081888 800782277 944963498 53836100 604895361 772068918 802412024 877546579 963595545 405900788 958661525 93714779 104019357 983570093 994576539 774805933 991466558 656916893 909741677 764418602 885788908 86809204 950165482 585015378 702060344 857478529 894361867 954466440 966005485 20134766 552655825 996116460 997306155 128385470 733703075 852685934 935767655 362970975 414534544 650085179 756248922 146218355 666292833 39729024 93067890 837132615 967497410 416890403 544688929 678906638 818030659 107055596 257210992 771124570 862665494 287873109 746525776 45914966 239276066 97876412 910755381 451788504 751127912 411274798 580582134 433480337 544662117 641128366 761218210 285171659 500615981 298367894 382724893 349912296 500935028 117859534 757648234 837642563 977905336 368577753 983661276 578700836 708519275 948209477 978006759 876382916 928910141 927077416 976712956 600910866 743684450 811192379 845504276 367482324 816533975 213640812 821152770 3480664 548199554 873947185 912223220 31187905 297169581 659256190 752562962 548332718 882772090 891235651 954666286 344403206 688909983 444655910 526930361 779621241 918160352 117446947 990827993 897963110 994916795 939706212 976132313 987653343 999422170 245171975 689345044 28290968 315756566 739981777 790120409 811304245 948693865 194910331 817625757 369126902 914121654 89134679 133189773 240079995 967692215 412854692 861271973 974721317 982611957 675717990 695077709 112671571 406836505 474015459 883116353 362609670 815553132 724501420 818831478 835057633 850840534 2949290 854109533 296745340 729087510 295398975 662958672 928153063 970898119 904134042 923181185 169736004 717559826 736285391 919088591 655019115 956373312 971161972 986332240 532766282 745782871 858323654 999164943 312611865 666830325 376512196 827217182 425384352 709533512 36708636 85147947 214564520 436276917 755067444 767821871 386352605 728869882 813958503 997177879 320708935 939498112 626441838 815495676 762592731 959094968 485358308 648655601 737445425 780832121 381206522 775872962 60309346 251252110 587597788 861317829 314920686 404701659 530671188 673448429 397610600 512630096 460688775 462469108 144146609 306364012 496030442 955694569 160607261 193237034 278086788 998122623 649643372 812743469 913274763 971217745 265665354 286057019 500800 649567687 595048136 752612965 335747759 724114301 397862202 510043005 915143064 946453118 591730627 845138789 815439820 982825611 694380793 707684660 627018098 841422713 258760595 725031044 653522147 965232553 294310015 684684207 696975999 964595901 22238645 546829893 302002036 498441720 841468430 878423637 313845559 959880668 717754195 724510463 901975838 979400403 74372849 515736946 509641976 703637111 193524505 683867969 514165580 938799584 464516648 777171728 898501780 963996269 120940165 418945633 672068279 961179461 885412498 984986202 793778544 811778576 439867344 999827766 875176863 911409879 266474326 277408738 92817937 839038507 114262204 600360190 286055472 681998213 931054670 957755110 786728419 837702729 338428163 981169828 226914794 677297598 814071658 901979048 82106823 456000405 377723320 731402705 91010219 728536132 327804876 942725361 616822335 770300354 283478216 847907355 389705549 848190939 775920841 923661737 540028351 602971536 109269532 971839637 708049155 925325767 860667939 896147732 350117702 702927047 889656011 979798314 300903891 488333939 995975034 996112734 250776975 783777049 239528213 360386868 762638621 950456417 934720308 993967404 208279927 353540513 726600635 790587052 35875510 411219669 869270221 976218656 883356627 927980470 5737069 254137780 107456745 626358972 372994706 464613892 841236053 846063084 76561960 118821470 112454769 548864412 460002053 679430654 127133466 465586607 236742554 442230574 773458482 826708133 880278278 937069032 490984687 792609183 388341020 477193089 885311415 979755466 755162574 947843631 405332658 450108177 124218614 614931056 424916649 569876437 286770147 427331418 79884571 190021375 631558396 968576509 294146702 984166099 759843643 887295750 355811625 666765729 203635115 698654314 156308436 891908833 609722653 915138282 160008737 960913520 954172569 999278643 980260996 983763674 652931318 710020651 524268640 822815131 637748783 967878039 371229171 553871462 280180905 681544663 285232107 814380780 398909949 940068141 5626592 598443875 53028706 194590609 477519008 649568881 854270474 924195517 193605695 538930639 952679352 988630758 509948564 543090234 355657311 594056599 231379697 523833749 296038624 853512964 643262596 916216173 129324495 690594500 159975816 718697485 279272411 743207124 31969440 872243034 693513876 871780628 759401609 960548616 452906669 673461457 118555644 935654298 641504637 760335035 968286185 998877090 15193340 668908443 899352525 977759391 753918693 869018655 345367355 422778507 874846731 949031959 915811287 976398325 42125390 255562928 344380799 873740801 737000374 783288147 923308016 935159026 270185755 842720491 201112359 897273872 816545004 937036831 119533854 975400635 591855909 647904651 575249561 610843843 233230288 426129793 600571346 896693668 971840643 995923809 499934123 682682175 250584096 795299526 434075656 889513235 518277137 671791941 522940430 981545351 448679182 616168698 309016761 551289531 728734073 939109605 847436488 992403569 99591111 366501917 511618864 804680193 585733657 602519550 129532768 510623141 406462719 969210431 843734004 936397359 947557159 948103454 537716244 956866603 566999701 743369197 166961472 218941816 993041573 997039000 487073368 646562082 487794925 914383804 956154074 959719768 239328517 797258817 850465264 971639178 133245870 265707299 355893498 727896991 365692754 437460905 57851103 863487562 950370758 995314852 829035201 951650084 571741500 720312174 520522135 750067695 137971137 983099072 528965896 753632909 977236884 991124661 578810168 836303599 229690214 311950712 35614245 671417678 722288266 805499036 712800806 934635915 212369927 413336820 996271335 997199575 577579743 837518362 452293213 572090852 696253608 735716198 741932506 928623821 450735889 757605841 480579007 618480162 343133415 375391472 51001361 582377088 431791920 588988013 228048734 388699287 980531163 991992930 741955785 872959008 981081917 995111834 853950947 918248275 740886023 798999171 879670212 978353725 579700137 998252786 284944848 667493164 356351345 389824529 286260028 818711947 756891767 944149826 533162255 673282534 556256443 800546703 50688569 848296438 704452525 823379165 458262627 726300986 398040473 692493990 939662901 946095028 324080924 845122115 669880266 896697837 525839036 875591526 362247063 538083149 673737358 686869934 969427110 994698273 966469591 992317861 521376672 696437999 493531168 796974986 621650216 763375706 283918360 842605098 68990432 770803326 374722039 940093808 821424624 833100401 108980707 785945294 182214063 651709771 978742793 981245650 521493954 777822103 27684863 891655286 771247937 874855611 981879619 985835354 126016474 435316741 295169587 955209291 902013833 989017700 602475592 885639508 520007551 917853699 565499651 857480398 840741405 876375242 370755831 831695154 290261423 408344457 5003319 747538528 781007949 965231226 843822071 916736656 405550187 981164969 54347950 505102905 37983727 766343961 241385743 751788289 890969108 937882876 892167484 981842648 755243350 940946975 612878506 882190096 767566376 782246669 640091791 996028840 411190420 781892608 439052658 725696685 503282535 839658252 489872538 946619186 621905062 634574237 17965628 946235709 530270779 780882563 716196389 738860187 165478530 412921874 408615716 589069335 329330940 477974588 347542452 762878717 173631853 913169187 708094979 909131610 570473206 760327631 831165826 902463570 502148232 584223708 967570667 993731657 86081980 102486277 668511748 845803816 919043800 924124955 99844541 327821615 91708695 156421368 236362714 517567854 951754109 970101118 989286185 995327678 189218927 411183838 739934191 754114895 925388229 985307530 225981502 844926424 587879050 605833235 807614228 945496280 936392517 966818320 974069837 977858175 270190137 576937385 871601761 990178369 689225414 720771951 139186113 941509732 196851791 488401499 248931480 652754273 689388105 730379964 306954658 392961356 192437695 450455464 941674930 959674493 589438189 723468027 112801858 283522197 767248506 820160078 251266564 654811082 764711193 948471638 709847944 926913599 482957266 858275054 299500057 813968107 831667060 999821825 720187107 996926493 532558685 676586096 811545483 898038800 335250136 715241425 189977779 329156443 68614738 969467057 489238796 644301724 959740474 992521202 931114847 976225753 91660457 419630382 845830785 935406656 272086000 333109887 28557113 77321057 156924805 239081692 557240629 695968369 489977754 833368419 697047784 958260855 90971551 828391299 146007792 182928708 216261606 718511957 356105733 820901253 671392464 742806389 244288851 270561922 350216200 441126896 854229438 958833693 223385274 481990096 138511158 648228883 208444732 228151605 4305550 47205264 255061104 604701392 491427992 877350102 178653123 254554626 700424982 908568454 430954978 581276533 609684436 891848725 292221888 892784658 301361703 470592066 84930647 425193952 667875208 985111971 354941563 786909726 486725443 499501761 427971158 524968981 613840718 739143458 13865008 282941326 584032498 811031017 776907919 786098939 648334889 736787704 138333187 786363467 136761212 944552722 878002151 906532405 761810697 950220926 597754858 646625680 582566350 641598239 665200281 931094180 977795187 992275242 493332191 994406957 679654027 752282533 38170043 929157469 77604963 818680155 572359039 609544268 256936645 412958637 966454375 991850341 366831114 745254843 18842687 389771645 687452908 996861498 670998273 759203284 37942397 475739710 611628160 816217224 630153686 834164585 999489350 999652431 638339233 996637142 872254183 914328245 245195498 667936480 608171220 678406182 991795317 998132826 45744414 622981605 39010801 488918532 515192492 960325155 553499076 957666489 621756600 874105992 304693938 427803237 459461272 973271728 681900767 804726491 539708501 701380834 348228798 716234762 808425807 910723357 342741222 816478338 306407223 541630592 967124266 998857867 255980457 274530107 266102168 754688112 493656166 936925837 306491827 961401940 318825977 557893444 138350986 409616726 192179454 522828512 71476473 923333687 566473639 681452921 446266839 866680026 648009206 743515473 13960918 894176821 447460892 507461208 378781293 512756359 916815356 969640119 989753818 996459454 651594891 654162688 95623865 583717603 981391337 995279712 892833357 913876797 854503939 910203799 187225814 502242098 691187990 990094652 509467680 622887927 920347957 994543581 525656424 809340851 240208761 464312860 825587559 896287651 100078951 987633085 770299151 792415009 659295250 684343271 638267397 871345347 783935263 894212489 832158740 959042331 498195845 971134795 555252387 602849876 99424784 672130493 975627992 989667964 580913832 760647397 893578451 998460109 641881332 820748251 267562717 562958301 37637949 319737545 987089286 999317716 760472792 910884896 462986229 563547951 642583440 933704426 373235618 783486140 492979274 915468592 601615233 767038615 396046140 818593492 852856739 924961642 505312673 865930911 727927831 757033645 774454883 924197580 363815535 397152859 869993989 895856195 709829933 775141764 662437458 754440804 608681426 611188167 371461655 739731043 588471464 729491065 435573955 885662081 58291270 99107750 969366878 972452086 793969065 998799988 566795778 607190608 297435497 347596122 566839280 852769997 325036027 901799531 175431124 865922955 257007255 853230317 569305566 920264534 719265310 966451082 886976427 960929953 217032176 288770840 696149576 824040899 132560126 549681707 539669912 934142437 409676410 649018941 944298799 988690812 232940280 326735843 440818289 837014059 206025456 851619429 426187956 786011422 508818979 510258271 375147531 464061531 584294277 954064273 573894747 946112216 106896952 782511190 627434167 882656650 771777357 814688769 92850392 638945333 857850563 970415122 887459974 978747567 80297097 203466067 814039986 832877126 78775687 909609279 172708873 459290197 583119737 810806484 7355527 655422368 270851946 747312578 905895561 992240035 874751160 935124928 93212366 621954277 891952732 941316215 168886053 772921552 107149203 530109156 378368793 903715265 183145347 390348519 395443568 765624658 213679478 333340548 659904883 853476996 864101377 943391962 224248630 246458662 879291373 981164005 441337933 967561915 506853169 758635722 466162434 932585276 259386452 788864556 100209481 915926635 922933043 982658625 569034752 961244829 756701407 858395574 854855802 942807492 934983837 992675562 171058576 547673093 933085673 996310566 663663279 885417479 912191339 929154277 949918552 957092627 342501649 816542586 409669657 725573954 997193647 998187162 467483860 820774661 295567986 870861385 133200973 620740734 892590804 902790830 409459403 935590694 516675310 671776184 785980286 890425481 176567193 881532923 121620137 697531689 94672924 117922457 137733703 578995036 894004585 984423806 860197602 923801001 9091836 656223558 861900858 990563298 170693809 851024721 72454566 225494290 328728209 595287715 232801247 365742859 361759765 463677531 868270455 966731186 222078442 977074939 371542657 853806914 792829846 938121368 509633767 871964767 311726742 684651192 581007882 901177065 207596484 235069327 9218406 698120236 135453372 723123631 372737190 943039598 845467823 924545268 468801325 772879499 676242254 990636426 362678624 983516334 852099118 916430413 956461738 964922923 360919563 831758480 48591821 141821003 540514900 877728276 397317661 655609691 297193788 576553603 180094157 869138154 372380539 650314356 698998551 974247659 243413257 491220033 664936700 833414167 42670603 175721437 391297991 807308543 537215478 858077633 536824967 966333737 175411585 455777803 243155351 709231182 660893371 862726365 616694036 930489114 383252761 881288332 98280400 875539539 779047156 960594830 532251632 982257258 920887803 938419323 331864187 411476786 927242601 953253820 59168287 883326522 46756943 767170801 583689604 697601991 102133842 333233774 392290237 630088407 712235666 760101182 510678886 726179926 936602603 939474793 52295659 512451081 224392505 863300438 62832111 562577239 655067202 872077087 230859714 678243236 677001481 689625467 920376805 957398466 360474709 789167795 451921067 701686024 928966278 983206141 378946539 738113991 409504794 466729624 389146907 782698002 945891409 977428290 714596221 732333603 394562737 647899308 205031657 483116118 38180787 720162446 721953937 902879566 912671509 968553856 993743756 996206858 377164945 634356571 617428565 624696136 257401556 377977199 218307632 542672477 376483316 605508832 317483620 347393881 308327038 755803863 735961760 874522954 653391417 685687350 882495021 995273758 858899735 903391628 349819457 556034156 435300664 696417436 884244153 933735371 243524486 535187130 759255581 975109568 690070654 992073494 771230722 812053322 350267268 573924216 178676208 817201199 221077114 877777845 598403718 756294960 248101036 413202359 151479513 696685964 888879503 978458199 913079001 939517056 994241625 997624793 342338618 532352929 324790560 908801263 654038808 895216673 665274642 957616673 575633646 927245360 22846073 729136787 528065985 895994999 538928040 850674874 636544814 671338096 962325843 994049716 719265006 973315477 672575228 961967775 762597177 936657272 261540496 956029305 343223517 432571096 272732621 731810671 401691072 631935055 653738915 867534683 422659243 962104502 247672954 881044545 692038065 878079447 21623392 895779629 8172988 661888723 44155441 434281892 140049828 400108331 22553247 248418484 932747074 952012607 761178478 939705438 152199004 993542260 970633942 990376743 279837361 939762887 263769997 987357200 198743402 650840288 879786118 912704604 755286257 826072626 695513663 904784469 79741514 82693781 793935928 974217268 415760209 997570927 425367889 663130273 115405091 667323732 327919542 420662828 168539590 840431192 195289519 834187370 692947188 763409887 677701643 909657698 446558813 485172199 349703448 369720393 166382744 431342213 111654405 849686153 900357573 980712015 616608771 907695936 779844471 842608672 600456015 694769833 565189482 715676135 242043888 316137244 650816104 669163663 250741063 665179277 197295609 457777158 793271496 818444818 16763792 479460523 47305701 350038855 42454060 999565411 763956041 778774980 554443335 794788053 206696386 647263667 760742180 906432558 16935952 663621060 249744637 450483392 813813144 989127671 757078663 800729249 403480032 415939534 454191844 591469373 327787037 622592472 147895875 533513779 925062365 959430402 557842827 631993077 110431076 934966215 639419066 839195375 280310750 411164194 253425370 312793009 308053628 640565046 170512137 991911207 561900817 748278950 495297412 770524952 354850502 521177199 529304318 621505682 606305950 887750820 568371440 646671672 863447495 870528671 585068766 803865393 460321976 961130440 619261345 831555652 588652176 922378803 333877463 915369927 720182552 992130102 730096239 780576530 457877158 978029861 807223955 838901516 607295607 953389906 238645742 532823786 946447580 985129714 30493329 723350747 632599380 956722499 249468586 420885521 933732048 960883565 391133103 548168266 705281933 741217963 967206734 979185099 410929097 865600050 195294198 828656036 35873531 355055387 593695522 691151852 433958504 994636660 882109246 978416802 72259789 572878904 482864344 914716716 501589111 679052105 125528378 576825037 642629454 993755089 342923926 692408377 147091443 500367488 409557364 578442030 358563712 378383884 275619318 913463302 609711184 648922422 973103384 983321117 281964661 835519545 620247902 912698856 518377049 858514400 733519402 969353612 852300148 985648259 165980438 825369492 798230229 837800683 760851956 883699977 614091215 858467013 985396052 999438619 911586926 980286408 489309410 612472000 953994068 955049728 891996840 913717056 583450870 987733211 789796719 876831806 991489786 999957073 368458036 854701841 86778440 918031969 885628808 924334617 367969604 467148536 421467760 468165235 276614022 489663734 309603303 690747604 133988944 327648227 194135994 631793801 938896679 938979799 131133022 622375698 371176680 728206590 852400931 921194335 636018207 715589940 618198006 818539720 795388739 878312137 244108139 896307937 673960465 700267484 838148946 910481296 135722064 824606522 336845838 943287239 576953368 651376250 383722239 692443621 355885923 438228275 26812041 98239887 254095601 752045237 123726080 519998062 741314028 931171415 934137549 975686209 794024656 828009585 944613099 947026201 28406443 810194682 954908576 956977194 975669382 990612478 634040026 736507483 771934142 973931687 774434707 806931019 667165764 765338023 288422318 667259974 873634652 958420674 659296078 958757691 93670589 185519161 612894245 833733387 805033285 837617405 6056892 633624990 327356064 764182703 583785813 702331107 949928274 981721675 146407263 293216625 464954254 740254304 249696612 259282418 410171246 889852896 220890977 421541014 403900215 695687710 906966793 927540777 546085620 678712939 880018342 985432914 495496769 947972706 759613606 932844081 520224479 667062673 617645164 786069913 433382774 845073796 787905753 948663162 372979061 386738044 578767854 810512533 599272425 996048178 207340668 928721595 454361074 638938919 799034769 801071187 362501681 536188105 717773228 854146278 532327952 734721365 33955543 950873089 357674838 929955310 390971272 866785499 316763897 440010424 736578390 821389896 648562594 892074833 410970236 503087977 786849712 999475970 832929837 938381064 198820687 477983944 420444539 710236027 983833620 988249073 174953424 922346968 29555119 40464946 552186751 667030459 167102046 236690062 691012521 779660109 19223893 799413868 710104409 892540946 589820074 967352134 267716764 791852782 253434380 261544476 43729707 223225766 137477750 855455504 354092235 581520577 204193747 509311839 118619654 556688936 461500 355023633 295122774 758403168 94116404 506681205 239507025 439021687 121016049 695974396 469815652 931709912 669376280 907270788 826047039 869004747 714202880 848202251 72114625 728900688 466868416 861511411 169259834 272547265 5941883 196161626 380717622 911532963 79538437 877215048 825486050 951847232 786042695 908157577 59143220 118031513 153481758 804105387 480629065 800018733 373338975 404090908 29525257 313860754 575219592 995482627 867041226 939330446 501172048 709788149 596162652 702236226 248313609 603626276 878213912 997562813 220751030 727576482 23915398 920873649 204561741 476670086 463759855 879486176 395677173 565170281 894167537 905583128 267552903 911430968 150681989 317185672 46060610 925598884 840429731 937483103 369820138 533677086 160879051 397905666 511589663 964139967 299978728 518158222 108189752 217970692 771455837 838040531 613181972 643393617 291656160 530841015 921098785 965705137 936981568 989601978 890859324 932447107 836645123 972129751 642198269 686105557 252848735 875925335 811481377 814384318 526632417 800532528 364022852 690509122 96269326 579500873 816121966 878094178 468707419 879433556 427015054 490758186 835113070 856414166 375996385 897124324 862556525 939824773 939243982 989277817 882029059 884858412 114286336 737831208 194616303 412837589 793376541 821718053 263288949 483235295 682198027 688373246 112320983 164793349 419488072 570899440 286240098 529681383 292971963 882773687 681799489 862186922 924715888 953562951 486407993 561796722 437860446 532172471 543409877 756010270 453424741 748358676 203394978 475879590 862250115 929551885 357454771 489862525 718214080 921562077 755013814 881171829 645620042 732640462 740411393 950346541 726140381 897826255 792417359 999053431 764972905 907522863 904248543 957313555 936782555 946743166 394280599 685909832 424697021 770605097 261577221 774657866 391768151 747851737 954728914 965034831 448196368 943479946 682122510 957715435 803755354 871651531 538235275 766398328 356451158 867934527 397041813 504020021 785403994 975081231 657374518 941285419 805190656 944319695 610815121 801593131 777960270 966921175 669201717 949222748 262022275 673877894 475333967 821716590 726458574 826348725 254492563 697182314 778252404 842468106 481766595 748075529 843532569 888961463 6467323 535876882 740646375 785322667 627117117 665316651 78693518 429397731 740070949 871741932 209496239 295797381 122237795 782573159 327024975 985191985 28738701 655086363 92745400 638705865 820727005 865130571 807929509 965505757 783849009 983387728 784094288 994643438 458352539 695338941 453656945 618291861 175144333 354111154 862957803 910512131 581148509 692571859 760955199 771602407 890184846 907166338 270932140 773196298 282685863 678226953 701899313 994511104 820181674 879313203 250467783 495643773 275945812 612230738 405292113 418152732 339782436 918364146 479176358 788708159 952526676 992419282 884494992 893287056 325282933 346058710 795424398 816842626 29939765 957408620 159974213 766550281 411945774 738026264 740518842 869534331 93471856 328334239 678033302 736476937 166045125 278526894 967684586 972241690 700530441 880805281 563161312 673980992 845900891 904343853 897889179 989700668 918591986 990379722 306087045 737174528 131183813 741856182 663010504 670700638 612237415 778755481 707121997 774988766 217008845 451644065 491536439 672544239 274410677 426010961 743668696 969973599 655688795 777179006 312420302 917625619 16402911 116498032 33644451 613290337 181034324 479085299 257544641 729532682 946379110 962549624 845987790 904015209 520437215 525412567 156906481 390213653 431790652 591281088 863995724 883978223 50781217 216726981 629446474 860149062 847293020 901770798 375680795 650099490 97058324 273546154 237587587 336399755 141841730 773494177 513975213 546777414 442990210 821155812 280211998 511247418 907715432 998698277 940385800 961339270 111422650 503957816 337396991 445695037 819617640 856766257 448660707 974428848 696185163 739781811 380028280 666061695 30618303 699582148 894633319 910032772 286480524 539421673 659354044 867125952 638445220 878922078 728401783 866426959 676149343 926920239 590420023 779601296 854168929 923363631 96152727 811612871 751828097 969714326 232687273 440182931 775812522 883690267 506145131 980605487 590235831 798277309 790963042 819146423 493092848 712486197 388056648 689116118 551787428 898538977 624446440 779045786 838930123 994133018 848720325 956428735 134235582 510310996 113464987 970964191 996355289 996720432 936729540 980540034 890019776 990621422 543543949 913433286 933397364 943859307 431258350 618698403 866188155 987330250 994224661 994641435 914584263 940916479 976069671 999487292 895931069 958219699 772612463 816310884 347867822 823337681 683674406 951911103 757598435 908002218 266260071 735865607 10665927 705452437 569958559 638124962 602245149 612661581 79146617 955266304 205082211 742514491 475346047 629144421 377557547 477670550 586509511 628015822 786841071 907855123 872929944 874958858 590405786 852704703 972556405 999354423 951418890 966750881 433093195 737020227 430033625 648461571 319478428 812647120 540009577 716820543 128520732 467761454 947484809 952536444 218648216 558411402 749978751 837459090 931489323 965077094 464306955 719108530 140605196 255207702 555000703 716061578 415037523 972786342 309811538 778564525 342675964 391158355 808195544 892735882 430872903 768409919 757989493 871594115 687334256 917324439 663062957 810754419 640793967 642895990 589573293 745806373 393753349 460010857 980042971 999413673 1423929 624008403 90487955 694366410 128515029 989969543 829804946 984910639 847737525 903688027 232541775 360072492 679716076 795885269 303517902 346052790 841369776 867926094 572387406 969473891 458117200 790791734 755470939 783695526 619597544 805018945 656508052 714365397 36275540 775575970 357720582 539928907 924435676 988976441 577234217 729343351 287713183 921515202 900761910 955663275 235266797 583415188 239422389 405682566 726113724 950383241 693035475 819929495 337946083 442659736 932360840 992825470 238334498 698775458 50784830 562263766 158554184 546846430 645984019 784983721 763902835 892089007 147440537 797630751 242319731 894035492 93410621 484435312 232591629 924453869 587978163 795505477 706828396 799083618 700436876 711454445 528741925 817127780 204992026 498409314 98407644 175712121 12443085 499123912 364313153 719787435 628776299 835728603 788523174 841187028 422836913 480274196 227921916 514867262 371149204 650406030 817689549 839130192 249173715 836774645 517938281 680901551 957984918 965497377 205837046 757515852 236660156 648196781 943860059 956962694 282886119 514835817 797684957 969747700 219227017 720905945 461175002 493630818 699111222 964597358 381235600 822679617 425926496 561202896 683770927 715737671 313550790 363596533 612909938 807315199 214344929 681444430 627893066 997459047 314338184 449819519 809744098 840569332 224177653 752726243 6099244 981629462 150842579 769560709 555461420 960906636 135953453 954531329 426122458 650108538 620275963 953623741 307334883 858869225 735769487 984261794 817133789 860658780 459896607 905498607 707080312 847796085 798018122 903823043 793191874 880458492 921990449 993603486 532301209 656626534 664268776 809367931 251621697 788702482 81830300 523355257 638391784 768896195 256522717 732950475 444515439 820192121 130807553 950688021 826933503 830170437 838670270 849695477 379110916 830384519 781232528 955463372 831203070 852451529 671154733 787525852 857156613 858898103 408814935 679401551 221861214 778664237 230209382 649805343 396978516 413682163 523581097 965479851 137891740 832517090 57584886 960397267 267949025 917531739 574718481 604496495 593102805 899379731 364435360 405014339 720578237 738874979 251858061 654127379 302496224 522315836 335815398 784198003 52679926 215423535 54159314 316396652 44255182 560055681 721536096 865584972 633030358 824285046 911458212 969756263 771036146 902394386 787604207 789338910 545831407 896645116 46226212 218378193 70028781 595860252 956243311 984923420 926977003 953986529 572428297 825505321 243058923 331350014 228147600 649104973 441115875 910256096 521668200 939500499 283378225 367883858 470133007 851430780 666445570 769535857 626774507 791354646 483270729 768799022 983966801 993083949 529009359 626929743 266473648 666408936 208944272 535705492 350993632 782973747 366779117 541665901 86708615 799273963 211435357 238419792 646724897 757822822 376510404 413605377 792404969 998891191 690930451 754251076 606831058 985906609 393214850 708858199 878069852 992013911 894382401 943050714 437849155 731227880 663710412 728219122 221147382 556467760 490533464 634651389 275822859 884936704 417943563 599459458 942584432 962417416 789909896 904160459 358782353 428694209 973143425 997931289 238855831 997045273 174317910 775423078 438966414 712027979 627582325 702668815 983248520 989169025 269818572 808865819 19536741 44009361 143363424 394722073 363005750 778473598 121609953 927573235 620459893 986562135 497276920 670199627 984056379 994119319 118076764 488834787 51153735 218150181 69981900 485922387 207882348 296816385 174916012 531334475 25641916 704172456 826627773 872499399 271237973 747510345 167242205 936994747 29977289 420314325 235264581 277240513 430364743 750160222 558230175 900983274 5875130 436852615 976204703 996667220 309352327 412004008 957818891 987758327 780208125 939246048 728507625 896691802 707178596 953474659 754553448 803436456 603240363 942465774 947920965 958806656 523731400 882171672 167382178 260694241 918440581 931493592 536120193 725588373 558833702 799280582 617039329 688073717 377405010 529015115 989417254 991124105 185584857 791287184 494225616 944086058 476035354 751171721 52957476 900670218 538167034 892818659 445972346 877881041 890038757 942538617 196013216 385931592 236430782 595669654 18172748 408424355 601562597 648052337 688642549 779292699 415066218 793473776 637154098 861838110 524376585 666031864 302075442 843528642 35368548 307970045 913748391 985589017 518664536 787505474 384584401 608676190 436035393 934198410 749652342 980443034 882072858 949094760 129441048 611248274 304335457 868984197 174790770 197549604 948029150 952614342 611927422 971426754 446007865 772129158 539019240 810251374 65635536 422883715 229625716 357785183 760986669 902746216 744363802 835517568 882366386 887966825 745749574 871947934 43178366 596840149 543278278 558715362 495594956 798150779 69594912 273655184 678645728 974288636 895570339 940003950 930274631 972910176 805683259 817805566 837442562 944580340 376834877 812480116 388315959 517786616 974570393 976423238 362931223 999599588 433841489 876911664 860813039 995129364 765112930 837691363 744935936 754951626 378502335 854496385 716770291 745262179 326926867 851008203 293216029 392759575 233673975 951334565 758036374 853613260 56877926 627012095 353938702 896238214 630303882 986024466 827493163 870080141 806669271 980078933 156507486 168942946 288474454 775225209 638553440 741618979 683536406 896379082 496631872 741047306 84131721 932438998 32268395 999831288 897155598 959187742 46701380 956679222 522726240 864298895 974540590 992933787 982557638 997808522 628820045 835178254 657638800 848788365 486693338 558708819 801186515 926083592 607094494 985819982 384709496 970872567 424534282 856712264 794278070 964135921 40124010 129651897 777257201 972305314 58539771 846120947 662372219 703014745 188562410 291183366 959598489 979091157 38092790 707160197 774123412 842774749 604003079 731195912 570105279 584411969 59431136 597760261 504454430 518574705 100496468 349763015 292402265 894415743 320854793 447587662 748212604 982246280 995149134 999349028 153197357 584714468 921489313 931706433 122587557 299507449 95763474 973161649 775428790 796884367 88834192 331111952 79531798 779390430 241058456 833478923 146926803 794137643 615484752 914971148 21964774 537733288 296416796 504966834 263247609 914369691 988093614 996595258 230259487 282411840 313881095 889505860 345904527 786031744 349679772 783335522 830874522 844416361 260449372 965506966 721040012 839447055 849201158 861770964 394470128 634435822 345999643 694171694 96094364 735128403 978973845 979740407 426009611 576869995 68739561 737399569 605880733 629668171 339456662 544980108 281097608 984422350 359663672 747653341 972749825 997648362 903570990 958333223 68016067 468992558 992290248 996367126 719016406 954276131 536416049 996581202 288938527 563470935 211932178 307226238 432431034 739507928 41835376 730944115 727702858 797691928 392857669 658293805 315142859 393165418 773927141 948986900 780996821 903667421 107106103 646163154 399447691 890095601 660893990 965860263 301394103 629720459 256170825 650988132 64653714 413636888 498852119 544613582 241898492 596158648 222800846 724212131 568511280 900948862 9337280 771193466 87711567 829971959 510067928 787738887 905340582 905700500 136106653 440927519 930335752 934920581 54920029 636185170 332418562 630319702 356937294 396010790 118603764 970798049 731991490 751439825 28806281 34954245 850731059 993903998 84744956 418369502 823685468 899439951 3973041 873057649 874188307 899379287 750561903 974352944 9445637 57076719 444402612 513071286 253510280 815857965 761726158 778448002 747054769 784133147 328648457 852144928 788141312 965087392 353619857 969687231 791312066 986221909 503745103 980673757 408205719 916130961 311852548 390414229 252932628 887569566 571357199 730114371 124617315 358070464 829399916 947586735 929868060 938300555 646188829 781031241 610009986 760386712 984647864 997246030 285696411 459944286 851896354 910119019 848667037 919604957 951165665 981613280 648481052 959548628 150566138 189898158 164170477 171192866 357045811 900988023 600549405 874941847 15146239 106156637 657809201 664971758 113801725 775733697 94090859 213757614 632076991 678003840 223703321 877067748 379743285 460730263 911406253 975146801 176582249 613552963 211328216 299568281 51623186 921077417 602666013 681585230 473608529 997726465 997507026 998644691 792549703 949930905 569237207 709433280 780887901 825845459 281385416 750287858 855366463 922085875 990409690 996432005 218870052 942800761 826034572 977912244 987604909 998169939 109262648 368421982 40609908 363306905 379114630 810292666 896387437 995664196 771365968 936720529 455182225 840057462 813467147 915592328 729772799 762431097 5083328 445803303 578054827 962915036 360299395 414304285 540954500 949628866 910757968 914713311 144061466 881963392 437677742 480859091 931872971 948806169 272259626 527874190 302284552 434885254 102140027 210768894 502601736 944360315 728465932 833805633 484717095 668991034 621450526 925216604 629480646 954380530 231693147 665781029 699666691 722799113 549801853 785688723 977274624 985208032 318105441 694473016 860930814 888058003 38359704 928039565 865314899 990673808 827443117 964524419 970511300 998282204 139998584 851112332 688467219 982787246 629558313 864617752 576310331 915736408 43114009 658651301 186764077 727163167 374125714 909853160 583157274 676913610 235384805 381069428 342874448 692477070 245327286 477278198 266529940 726580801 469575228 964814843 29246558 990290207 951421763 958953276 591410902 752431908 495650694 897503863 354958948 851361354 94727369 146994073 123050833 733368231 42828441 834482026 853604790 952435916 445719254 760590429 724583040 956653203 389060615 630093113 209175496 246411511 388911118 962528233 609831306 856933201 449424909 506750937 183349746 666642294 879827604 948962204 766256073 789119047 107612940 859859965 711134049 859339638 346975171 450270316 270411448 453404904 472179490 575128434 273425089 849212730 158374573 258364904 312030266 340643152 249487187 792003048 591684510 907244519 457278292 705065545 423005247 939554387 695184054 779701456 34204462 616669135 277079392 962763346 823902157 975019357 313008434 531110458 949200646 986100119 653583205 903746608 827441225 899710852 278465168 437729808 570166189 592153147 436354040 459684242 801000073 808617317 645807300 716007384 410525581 593312562 741937234 800516085 361619811 565991972 585862847 666640783 405800593 544508179 580453436 830561386 861756781 867280225 908038019 938793999 190987510 470925741 564849945 673972561 894170134 996648793 174527917 880300602 742152515 874483716 948649625 950140748 938335036 950771975 156483844 929290693 512804572 918007096 717855315 766575111 236333707 969703978 239685410 730354948 874558638 984759751 88308176 596538628 952172676 984475341 471909929 787135044 932381051 946604919 928510828 977251169 835015970 934005170 575062950 928918415 320465554 392559108 214420364 687532028 631682099 659430205 218296342 803080984 419877504 997682275 836551166 876033849 493135025 607697151 302750829 877376938 847502694 912639021 323045304 514468309 818471551 891766566 332976121 647080970 118555047 809437359 568154865 770416220 128593200 660169140 291801427 363310894 612251417 824057621 577416258 608799049 312775707 898691729 272052050 742530289 628672079 905020426 949151754 978216434 692134548 754354805 871923430 922414370 756990668 855417086 356160282 754109185 106972177 859104240 441915772 653702404 927808082 982594236 506246526 882213244 837436228 925262421 20402614 801191777 793673089 811565551 891198003 984737202 534023489 978445269 708937870 862674865 914523975 935573852 353719426 398775438 471862145 753869396 616766395 926977720 982099452 992109007 863620615 910655320 919979124 920040321 193064214 285518327 942043212 995550233 838445991 950431648 979829651 990070983 553528064 786305596 207989484 711553720 177664105 287796862 695368152 922922880 158684940 675482093 464520555 467498832 207403592 268504609 293908676 626702302 663316670 960863809 927693552 937180696 728233959 833785656 88972348 577218159 328645881 913815035 924713385 998637055 948650780 973007109 866218887 915141207 806086177 931113256 755218728 763114070 180540894 984279308 686615533 889970970 918198951 944280013 409706977 901574141 495854922 599847349 946156672 948005526 260838004 301579884 33279022 117926286 537072764 914494619 554473268 791707504 92210957 973070167 262574571 349555810 888728008 962520432 43584331 109921872 857252317 980525459 130995372 727383898 237136870 520648229 512875057 915310610 152659052 869984846 363081401 380303110 187059858 796209290 404250248 983429876 436617999 893910492 97245973 555178583 802440962 991588926 425268944 668491256 288078027 731171707 85442300 90144601 61500255 202221455 684478085 777051075 835704880 910230869 497607584 704656608 38238866 643565226 456788050 923037051 506669666 822120434 832254857 976915395 242220505 872126123 424815918 531269896 30159540 189514357 777632145 789515385 817958112 979723986 809373379 982009278 564559376 738609370 609023712 884976455 71619149 562052521 486128055 684562646 921890093 986549901 156633349 772427928 706719762 715756111 244043801 669022010 307783744 476415022 296347886 620870018 35291939 553609593 34412766 284589818 157669141 366428618 580115520 928181523 246162118 536095141 687787415 701630406 209105805 776495533 315913208 923681746 81368995 164521412 261908778 316241792 935702332 977295084 180228786 510913607 33441893 600730978 286338970 562416445 43595879 424013522 499899000 853982780 728703349 996997580 303425724 787556353 648973467 952132887 809879299 983637176 126363721 754161998 289638192 880264512 929749420 986643829 664034070 818866127 250582103 706793863 41886235 696923150 975834523 992519075 480394825 857660107 959668377 978260237 612682158 956488015 322686611 668816440 541457267 677596586 746689564 837615449 364790639 964700027 869000133 985645379 37093534 115654716 940238960 949484817 717728984 849272164 239904024 265915322 986994394 991121817 898689306 974692191 606017293 869571324 168515376 742057386 700785223 786665883 539719761 933429370 747017618 757779643 669858674 923520667 448112584 731601282 45289989 940997784 297314884 706610811 796380943 926092800 404678647 998322130 222293714 421219237 486334316 672757274 359050120 633749833 911671203 914530454 197567558 816943074 445763554 962711821 527412294 897528153 897155883 948890305 508686875 902949411 548888798 702279334 397162238 422124873 158349577 976597559 425490719 846399876 391287316 477828074 122209535 706797779 356650960 945965368 616359158 993992882 552176080 789169480 1017757 196545284 345793553 445492096 517321939 983529129 609623711 872600548 385605433 482091957 309240975 334208565 298467944 700615886 527724661 698517159 425696429 893182458 788857318 835555563 504053597 936565350 743552643 805048008 888034181 934667674 573696097 704801194 160973800 627385289 127496426 269497511 396813558 546786585 577347458 984430634 717162777 727332955 189933707 451635657 901438713 979709397 64260327 814169887 255232651 708000880 711362083 743307971 201734736 386090460 611391611 779658026 14723658 859803713 423664907 961500083 511703525 793863847 429936557 792551015 364031808 688302318 498529941 652920575 645069261 900016794 477376759 638197747 950956088 961645326 37847097 716531656 398903123 553618792 93142543 471533039 799389980 852321036 845917612 849564595 838652820 863972990 591744488 868648597 739346023 992346364 471016227 856461558 426274792 962513730 90216147 422607387 870607860 960739649 581674720 994010409 542185055 997387000 438221510 550911941 769272358 902489352 291253229 505238608 144945918 394235024 930342610 962036802 270674345 356032756 750628160 881584319 761500579 991382703 495010357 984153538 290253639 325143001 67010140 872408250 673975117 762037732 558587092 768814730 334873540 342823777 391728135 666736725 626525172 912573406 783722382 859459396 731435014 868344867 763195890 965589483 663962521 887850203 844519765 948650301 496553815 798277442 510209369 832796763 21199727 598512216 652883980 857106648 926988299 928480614 150711675 556629657 757140015 959977541 959151990 967917318 112867355 790562349 863852017 974959347 760446329 929236160 489162433 969521268 971559796 977234787 79020341 207589210 420721746 830469729 428114714 765575649 506480738 563835492 852590066 954229505 780324414 970310558 615822613 932808465 216575732 298534674 454091921 879689955 234722456 799718988 221334466 276283642 445110850 947935552 698787721 829799543 825049696 996648626 94504175 535968975 963909070 988618024 80637282 137832371 116391109 555803578 61999876 99425004 657027794 754655838 425163746 668661887 492424822 963837483 730443284 852203001 412042602 754177130 365777648 704852426 973549800 998559278 922089973 935648362 447914668 973433540 928758112 936644751 97071909 410795061 207708964 985304012 242391228 704619489 239680187 651793250 198026357 980457759 908802699 981476887 827560421 978964628 8945816 985697161 877884744 991378896 7420285 893740767 343691552 979966805 371539228 821509252 213333735 390109224 882152835 921338366 500425082 648369369 511445500 789479267 369815809 961038184 320470044 905630892 225814853 695080477 34422475 198825364 774384016 854283442 109840908 607107897 592688187 704446200 655829109 740571422 700414670 953380205 335704779 810231078 345609136 982291647 375914283 501849306 606435160 770412799 90518417 143688145 192422313 457700478 849948884 913222600 45441150 207751196 762391169 797200121 294465043 781360411 238524997 430424420 505346280 953248350 840199083 952469836 836192737 959138005 113454890 313065776 808080217 978765694 256276444 809310512 403975352 792510284 673601342 780456856 31198343 561795599 540382032 855640451 419511322 959676705 60522746 410285208 64810340 932920306 389638484 814474531 704528029 803498413 889542689 968325722 983284126 987524587 61928896 342123765 715675287 834157696 858368336 919901425 17036157 523198247 442657217 500758130 580285392 915210616 629395985 639860577 332607179 627204620 775858696 944368066 940754039 957654137 105149 801236554 995749420 996435012 848064131 852010881 102852923 572500847 629676094 689414663 944566825 951654614 109857359 634100718 685885868 990220061 170781241 661552440 563093148 701334144 466485308 499886006 840946901 873448573 382167104 731916475 202910620 899499959 635793171 649141632 883461193 967991191 328118355 398970687 972068607 976267592 709318426 823168349 847818711 941786891 38250916 476764770 568790597 753013256 994388007 997418445 399910888 408851620 192811778 967212169 372507515 555642387 346201884 988402694 904342374 968171176 118653455 822543323 585079273 969345265 71461640 545414169 306443737 523890778 295719498 754205346 965281817 969130489 611566927 854913189 892306241 924254676 424418557 799697129 718357317 938122336 404089418 628929722 27691097 923825957 45501119 210932507 856024994 885495028 377893191 713424505 361055395 847881753 162978258 854160376 567808321 732444330 839182359 897069545 646804249 731850692 127968777 886242623 139631825 324322653 744418737 893312361 718536286 902653976 498289441 821912719 3680690 73681256 357098583 569938093 33374100 546005251 896794644 981889848 344638605 362137137 819894064 838646492 35322931 988067896 520672873 820784490 656545879 848840590 898435688 931758941 270272277 667712397 414946814 462969153 987790420 999406322 574890744 796292138 859746857 912991385 259956682 261304286 385017922 577862343 449742048 459145348 879336989 967013442 908067466 975950935 319788315 358448196 805301940 815702893 791384437 955649694 28218136 198998797 343436309 624830733 471043077 796425729 100386584 372183524 931347799 954825766 923644834 934734658 613012999 758214300 709593964 738088620 521578237 881087162 98910989 365708456 231988949 448893346 118541828 274125323 419011143 900934759 152160668 750710923 952616711 994266183 17105568 943502719 76477965 632650270 86852058 610694161 486690466 636367342 918292463 922124552 777827852 835503739 518036801 923993840 247699966 670498794 73315393 603964499 377610764 456241216 606835906 631762175 444980510 644874935 703557310 734404771 228676004 667328072 434758439 447473049 963152139 977673645 763976626 870739536 193234530 373683842 387946582 765236255 902716338 984547035 980384560 983445502 65680507 513904867 43990765 762744275 881952805 922889607 270953715 398550482 293531556 730244046 589158661 848276759 785009696 801351428 41819940 400816925 922006374 975496692 904341921 921127950 989627874 996149468 20194355 152769538 862836345 907825777 532402529 791538598 835455074 950212818 442532697 503387592 936016150 943554211 771614539 930105669 985840758 986496357 257061638 778545432 76553683 660006415 967352043 981300873 816455446 894246362 323489034 826452699 686972769 881015802 329264729 855219728 739807894 758136547 124343548 335754918 862612254 909297669 639361708 869613087 278737263 743246929 844400664 902382223 379747511 946966137 158967233 971372494 785215555 907196463 254785776 984092097 47438943 689096097 741356371 956372776 393642335 422294978 741962191 928265943 745284452 857669751 508807524 565767462 889049056 929992603 660279666 722072928 131047339 523807786 341793714 870544905 535149758 990256432 775337510 784363537 909435589 938335272 574131899 574219158 101753510 468180854 117173036 392933986 274112335 911034375 821247910 989185902 881391375 967026422 82768121 530375609 428390422 895849160 832605448 977968433 797942400 953255296 31701655 426958700 883180931 966825361 29863239 444764636 918054291 968991648 22245560 712538340 491505092 578919050 364145789 701564335 591476014 642479912 810008261 903164419 442182784 504861499 39551403 578043489 88751132 378743736 982608492 994728962 639370444 724541723 483846215 931701056 733174272 856272997 562301302 731182371 728082812 970310057 26167460 373522096 825129724 904360720 273714761 748830277 466205514 902190327 311988099 858413996 673704553 932359755 225837583 957094028 443227062 787683549 669713588 858494109 238532928 637113259 179858824 844177344 311284603 826186300 579610927 588172934 131899246 321368037 542662080 966401555 663124425 913926519 768685761 832192848 764135840 895046150 546245678 996838345 808804902 959758067 193300244 719733959 57742255 956160897 719532034 930366685 521508310 817515302 926760214 947591027 355230290 711666568 265069683 476849099 911621207 976161717 937662073 946828797 508942464 921623953 735526701 848154059 269645176 605831983 779112236 955888975 417916790 811758835 178699732 947478161 847019545 909115559 239508008 427668420 492476943 505944698 795274841 913802617 552313899 670100459 260796873 543125585 868319248 957029043 551991026 981165013 618893403 762413448 959840423 987963424 454032420 714994323 612706200 779215606 747524833 761746754 425391833 910821248 687445530 710123352 37689884 910065125 60899956 382040829 35360349 456953444 878009604 938865932 65460577 238880775 777215598 850168681 460997721 777362433 567066645 819355770 865624864 927182120 629498194 634164185 274134708 829600470 490450456 910944620 77871814 639217038 503288392 655681202 545579266 892750814 550637076 642194585 739218802 973880007 241409356 856246147 119871444 411522838 19941503 562676086 865983197 949528807 122074743 928106555 847307944 854752837 618722354 851201714 588987202 721899903 318225576 830521157 937372014 966784007 330535300 415510661 83219467 342146738 278685665 953349745 238504996 667881128 497655213 777418268 1138631 80468793 41584262 488390548 672036203 876746727 426933453 556738710 66405564 131170612 10536447 831852764 514331406 888621494 428437395 679604770 845208176 869267254 107954731 886562027 99098600 931386750 476515493 581072774 380549902 442134611 840390810 881784440 279436126 486616569 540141295 686384020 359655398 431477401 623663960 994706109 319646364 654252361 458423105 617405094 855358193 862676664 690420629 836967745 360176473 499079099 169953618 422185653 202719815 439738937 523003388 535923660 269289318 966834473 126331587 271066454 468065107 998816892 803825830 995141433 90516406 175565065 534613228 879268830 453332991 462488022 940785940 963549531 980624114 990413983 457606007 810037228 165315665 793877141 992454789 996504950 54073662 249829447 313347868 389203244 348331054 446693079 669154661 945228662 44872541 113805916 643502599 890086690 352652703 395354327 539940760 928494025 70979110 476671922 689276763 986740396 961392536 979412147 634722712 839156552 145965916 315381452 704352366 933310401 328478243 895190141 504821290 936892972 242728388 733570740 666547605 691209712 288202316 760049437 190765646 407548033 75625684 610682536 249015562 942781407 227453236 837161194 709272282 781925596 982658091 988989383 848669387 905646750 689316470 709288497 912711345 986856660 702124255 704426048 803239581 957530724 743769541 992005813 558119744 696847089 845447635 965063302 566967408 982189797 854988838 923327054 668421840 947176025 708111560 850559051 367242881 713268542 648501753 920344168 78438432 991183288 987742345 997292722 751507785 973765251 958012087 990568910 714606437 926944053 365062975 468222016 917317585 920399724 457805097 761761140 945034741 980431739 181932060 801832046 652457968 871266397 189564417 428690650 700406617 877127880 500586480 833970521 944429608 978034159 548000603 643085475 98453122 585780411 93243284 101835549 62361099 709450838 641173715 939271957 461441624 713387376 918962400 967375535 948142788 973270860 902068127 937080645 206318578 700012969 621076706 841045617 201232493 878076533 308402566 688538115 13103436 281251321 607774623 978671181 305577419 800981466 148333079 478465726 989292794 989618674 64238213 615286376 721174916 879590629 200983368 922725683 36878265 93196282 585448016 799830540 397233022 864870077 211534207 277752169 428040024 790134514 218287177 499593481 973435911 987136769 392324584 481276939 2789092 45679919 122802300 411791910 476500814 614349741 725675012 920206634 231501668 843579594 593921653 792476470 528267110 625404767 979137186 982842556 674999490 688626390 640661628 930810480 181361034 992146615 533064050 615825365 138110723 943830644 298398895 858928337 974208436 975825648 96711410 142042981 897416210 963914190 822149060 896838824 42783491 132032363 22193497 311087658 946037658 954879843 400571096 619876252 887558217 965826018 722475786 849517695 852964010 986164854 572279601 695303201 30502456 80724909 940838046 979995106 759101021 873587068 418025341 834604311 134438269 994510790 341910982 762129168 906974359 936981438 154059136 691211095 298016057 465443344 909080566 921721538 719002616 949248874 415627414 519385183 474599347 673196136 537440078 627572899 943511664 988938673 173304592 623219303 967934 908657459 658554553 781784226 979132409 984573514 49754571 307712297 428108285 804938988 556061072 895591995 950870368 982182098 171912898 412425614 554176269 621679069 971519163 983159210 568458086 780700815 5427340 370745327 785856294 910826033 823899724 859988494 808728325 947184716 228002458 829095587 634988376 686368025 128560302 348401099 41040576 499094966 714027759 791986354 155322195 239917017 195672976 828432659 69211353 647567401 247616745 748507618 850713958 906963520 374800221 781294228 370565246 712648268 720903424 811804647 443745925 718234245 711398226 795483709 676574095 787188934 689956162 750551735 721039172 875038175 210335097 224702929 448779010 526558453 887878248 973446331 347955480 601902954 68424283 866320312 731444606 813318801 390331520 471519828 583611351 986805436 793183371 878364276 20241062 429134189 207614732 448357873 372327614 663579922 606712448 907533685 196366046 621004905 127277288 602688525 330483525 656599894 637985655 959326505 787894842 927198450 516893864 910229471 181038100 935079110 608543730 715755024 864465862 985566807 526759102 959124924 2314996 399334671 654464234 817055267 995275734 997193254 403765758 935552771 79821600 413903731 46621687 184231254 393512318 886952475 285615894 741475507 270748115 602082896 734865110 946192430 152389137 742981807 646648225 810882308 973228623 980898708 979072758 990932323 956172219 987301083 172736294 789831028 582147074 702718571 480094226 548721956 998689440 998775301 313981878 852706861 74867046 681611956 277326750 482108125 946107469 957302499 831812842 850440599 988808885 988853575 929798826 966973606 35920168 998907655 571185790 913268406 380318135 769578371 4675434 814937861 361244392 701205726 917309921 936220603 903761453 980767757 206486362 784296937 783864895 801618215 393638869 613179118 663608455 915118778 122683179 706704735 596644054 760816829 132266859 915495544 45507956 76907750 444595087 985142853 984129125 984777268 485880279 973013349 875648177 878206222 589103278 837980838 266321608 789972122 728080286 745822872 578261050 599811992 367105795 798952211 692301385 697411856 678162181 974302699 67999617 99511479 493240846 937557779 593476757 685882047 705427371 860073551 820438527 942567363 567863488 805100681 66720864 297903798 224709847 307821819 735121168 889796380 111141934 986043806 257829161 703661226 916369139 935048798 129417021 959322137 29093895 873162148 510284699 976794430 559811567 858667316 691811574 727276455 754057292 803828566 456433774 735721278 241056171 891517786 495532907 848716738 811365142 849710732 816013523 951472246 975950404 999722784 508284955 957469074 166208584 407909340 773628910 811594295 51575229 884277214 121280887 627617265 566642455 870514201 429259940 839989619 449301345 771268719 538479402 923102559 353656897 653409311 277999064 387158478 717869115 803032237 661759957 687921747 406299569 653983191 27470742 578896847 887420055 928773543 609411917 774195702 526767984 611771950 884750891 900154422 47658894 171198836 721555735 968896481 927430407 991870488 585138358 977326714 408677201 701613257 86432807 408224147 608234120 769257372 520287292 862963115 298166558 361109789 75854747 301486831 401300948 507112248 1342648 54078369 443603584 994161268 946371724 952765591 626312390 786770245 472990647 637577655 179509459 731556190 903296586 913844946 631433353 907880152 348075468 999381361 128513030 830216605 223520390 435157876 146769328 298282424 679826463 971259818 822202637 838923865 18270933 881962481 801799363 891591023 828399205 914711621 287757991 621607552 721847367 883754129 790366396 984319836 949346142 975547096 26152636 487193454 924094254 945892406 931109386 937816420 625401619 993165534 174643268 512641669 727020604 789771593 568662204 752105727 519736266 522320425 916200890 977580665 620299089 700455979 30962672 797193586 216773002 222017062 649791928 669974721 815370752 924685375 132908747 446019278 814450334 894651949 947339495 956790250 311706643 693219827 849975415 940243166 42431540 902119232 256237523 472104761 429209377 706220519 926710029 999024775 777163857 783910476 677616502 841044859 328238488 558699613 686516806 831875272 591452360 827248294 217114638 291704182 914391815 919312446 348493504 815943610 902707413 991973835 257563553 671855648 738457920 905680052 79982744 436653569 266410929 751812836 527253456 562537340 693508344 711084805 918707938 988301516 390723530 834800569 241588730 853502144 440985 261576018 489777785 548818118 751326091 989802701 79818287 895589181 711066274 787155136 652750016 697167513 599503324 688798107 250383449 563857998 216549222 216687400 340609254 788779582 790702837 863162047 984706383 989072164 121659627 122100953 280079003 390803285 297889448 481793432 41408121 758420873 304853356 817258733 528424433 678910884 155485548 988119610 896127224 923923916 31617089 272517257 779442423 931173281 618042827 640580635 346565495 817504703 270268008 329876305 149194880 175318417 40370487 204037595 374853239 614979035 184917567 196338888 410661167 965068899 762766899 899635780 758562346 793023319 793475882 874940462 929073245 953087291 225292610 488972350 104992782 882855541 967975044 994832098 808258006 904788496 752592308 830645634 312994004 321621937 645111397 715456597 806845740 826539661 773931707 939587816 729042309 837037469 853030122 963780224 620732438 968684705 638062835 788630040 722499572 968007291 251823853 834438179 63965633 286378741 124722321 892851158 73392409 895134131 650195422 944867269 682130104 756379397 12328916 344109510 784360323 823235225 683822960 797409415 643461392 839036105 474170 475373804 75253143 708964990 35342000 486344950 164753230 347498171 228264897 257291829 712820619 768552916 182820174 323738562 605423419 691333544 339411596 395156774 309581369 969952670 741517850 799197393 512153704 745700347 844322722 852261735 630504474 962224862 174965485 610933360 13658694 560556997 407371768 668728374 503890631 577824237 25591911 62711190 280134445 474944393 422752111 691896825 30679928 812978943 697691888 894340169 544079308 566698189 639482571 642054630 430838581 847877020 311608393 312195923 939749298 978193567 511415886 638070581 141757828 652658117 792165653 840190022 634484848 808509027 805420765 892921736 891075965 996356279 476952804 667267170 704124249 800398887 820021257 826385990 490122498 587189452 287350319 627937570 244063071 715856569 767763674 888005387 191764052 666993630 311213954 841031191 798958488 845341677 904593207 948458684 800007152 961292371 438547079 888356547 8440587 741145925 356316322 723155784 1077902 619636395 225891179 530062573 231360246 666210188 781219034 812226140 935007397 965363757 139927557 404495192 554980639 808735990 756566246 780930915 126741567 641950069 700203250 823742587 398645195 432020341 343947048 812983716 716553817 989417118 455038558 730870988 70598140 851374455 529388719 553336925 11783126 166053848 666252500 680817350 76514451 657091558 549013140 857393472 188867108 566287425 555620913 699138675 343647998 761221019 122366164 344858146 993873080 998269025 452150714 797183789 740410997 803277008 698960801 983150126 977631613 997098716 562108683 722075387 971336663 980938149 349380876 734982105 680632009 781884881 378448348 476512281 417803432 866837456 664491792 998605632 856910902 945461260 735571740 915368833 605018134 934351175 561871889 829090072 493331284 943883407 38418384 906132604 481567861 953420590 299469461 400979997 284120862 595530211 730977119 856622523 428707767 891396118 871353391 899580500 444850896 529565936 463646557 688864738 803434104 866708501 484626329 722774181 429688887 578542046 925968212 950721456 27001704 207629711 820126978 991963555 150852595 432296404 809385635 996998303 734613799 828031093 528249932 827947453 232568430 240442497 633095370 676928361 298844710 536066541 872427039 992526017 813847855 913601907 269249142 549184570 443584673 985915112 809173938 826428313 280459329 570914050 247984447 396084335 93677987 691111037 817480485 925770433 458066764 857373949 254762216 985477953 317092528 743301501 263693834 635160551 151325449 614899431 806368297 936026597 472506243 702255849 11584217 932873753 908838098 992458627 739964080 767591730 366923080 966471107 551864333 656953033 224274411 675902468 259078417 514301721 348551602 732858837 876376818 984666876 865914649 890010419 898138823 900692589 140056343 604328603 107276584 422669005 483848448 661429648 235298048 964484430 677126980 918856272 276783345 630818744 507037866 871960527 646111988 833790354 928996375 965210072 485843379 602714604 171223235 893616508 910520007 944715566 614272180 896382882 46882559 433630083 755062797 987651313 550158477 932114070 318617807 610282630 98780712 522300738 276734543 532646081 647990417 904398389 171971256 403534664 883355689 969625306 756322394 970681666 331132015 594755774 887707196 917748134 144303918 274170579 212564922 460484625 649944682 844861240 890235280 977503471 555950373 572295845 801993974 929153316 396919703 811930536 166079912 715219324 537183461 692238213 424615595 886567904 907427826 920248211 670308563 866728801 373821809 656488609 940390473 995065910 895500582 969132216 704583364 875405619 284784543 769111599 229340800 828371619 75144444 867796751 807806429 910835977 415979794 996243712 617167305 973102438 894089830 986705706 793290224 854581064 238532667 768338175 286319062 500465665 675909586 862731237 886443198 997487305 848408271 932568176 905720765 936797063 987462694 994064621 74741393 113851009 670661222 741749830 614884335 695327821 413658654 850962351 2384219 227852730 647769735 748615237 742084518 966131234 755618777 858338532 128291171 547500399 858553931 955848364 1297155 223644877 32002659 784349045 860228866 989907325 161485682 349124144 442498449 504191029 142116285 726279747 342197321 717928482 194030342 922089879 386347740 980914847 58846901 505919173 955136009 975469602 950875887 956170567 31092776 361643503 443991686 947571344 899105977 951293032 932123132 979597718 759010355 988092838 922101684 943581525 168850659 782884549 801002459 832343405 754102528 988893309 259832529 437502049 838924958 885965447 738022990 840498932 869903394 885757676 20840852 291401600 774791148 943255698 293448501 451264005 639793759 727445167 49197840 116195008 792117978 889875733 500394406 689363592 459319856 865716855 943079094 947570341 950237431 987037105 425305318 919031499 297910640 631478342 719629279 965260108 132459266 563521552 604284106 668201566 260408239 583753515 921321744 991609249 899612875 965900645 546583465 958945572 635678782 852178499 265401099 940573868 133048676 933569855 311773150 545497637 445639596 547204985 604323071 633602828 836537083 881567728 732035676 949879917 191887311 531566888 586876093 625811217 346722925 660202377 306649627 581637913 832306794 995425478 95816460 594566071 30149399 663772209 729122224 917007116 753575819 980535613 22456007 508532805 711180692 973619640 362499395 918494988 691131210 730832490 50306247 721565978 68269576 935453038 901681950 999161706 41874136 89593899 277128496 521925420 650673547 659327222 773402104 950311654 358430557 678889742 761479778 825482056 675617938 847517371 901876530 987950208 663868079 973987781 161606201 184811540 329125335 383658930 470314800 803672556 545228821 749646320 605688839 650367850 557935580 660246369 208974175 384726134 954799744 963599627 602845903 700841621 928057185 977964278 523947538 978080292 208035467 515694633 421383414 667027323 286926246 759332715 153435961 690358650 398801704 654085575 422197478 864693633 837952509 876935272 604093898 667873122 194299464 719474100 789446094 853821485 825974849 985195450 841772282 993714306 207506388 310911300 24451645 84141940 457341513 572816940 390102440 538262374 868379573 998813827 458578492 467117065 920000103 978714040 671233736 952031678 851539906 901726076 593931504 623664475 662728566 801165521 600801686 897690291 783613449 942058428 981577451 997319352 388838188 559959847 836250961 940605590 565567735 904159698 811171283 835200421 247901210 471015329 6394259 579298913 578027972 853756335 99427494 251613013 140738709 814179663 752178108 894379346 894620325 923559879 909918369 999952620 632972932 988575876 760441987 833415552 453139635 851658379 153020197 202024930 517312255 818930073 416812583 691358373 342891594 550405167 160748812 595247358 584807067 706582610 540421493 581893004 574222961 584499559 756340432 779160551 84062464 764637336 539396120 803585272 776798124 880081584 869824273 941272795 394925463 399937614 40719076 915812432 864871790 940862549 599761586 706159634 606260010 927254379 526286271 791245171 542189116 783597130 619061166 786131403 718068430 915702673 420278990 763701461 919866271 995096765 848621232 979034534 434783086 643370628 112738326 831423967 859812784 889644319 275209792 448447378 521365582 905975265 847094873 879604599 210457483 554021781 952970115 964116215 822342182 836062827 200009520 917613648 712383550 956555151 656176515 689274040 861190857 929836481 774755875 865402550 491904668 520679911 707792690 773185966 214532101 457817947 270331513 622740623 430590741 764543842 22884149 78082417 452861254 739828907 887651854 989573660 228787103 857518080 483946732 649460600 500771310 874635886 824216847 986672770 657593701 977769619 993672032 995679189 616904839 731716537 595515220 819340060 77382688 728695096 993765951 995663583 688790578 985784608 507467844 782615410 249551737 707490954 530451628 738826883 29910299 734213700 300928231 399122033 466130398 732859610 417954093 737473681 996530442 997136723 7116935 556287062 360058165 704468217 316043011 711801424 680672956 821905112 491935347 676376117 954580131 984726655 52612319 459942511 865202180 984782564 672364486 700596362 288523749 774937236 404338552 734636987 872235221 911673835 613481926 886572187 724449566 866828411 767945687 782169398 832866336 938266026 608124737 714585325 491374889 688426182 229836818 343521109 557191130 632432952 32890422 772017488 517267378 764943658 907817890 925212488 441460561 863518999 26616190 782200977 111605045 322662793 324172746 882212331 715223951 948521852 458755212 662562028 952816292 959039788 891270970 905424898 981045919 999077205 870934599 926864235 844237802 936419893 640824592 739572239 813133268 850725107 923395368 938911261 556000503 746723556 884376458 961598863 904060374 942854223 38648976 84558153 7776726 638807591 739514609 781583095 862734882 880620579 337585401 492946019 913062307 936660587 51747941 165343020 30164239 890170236 126309762 840902424 602565311 809783607 635090391 926226903 129718983 648191645 260702186 793630137 853434568 904627754 547846795 589921424 540155547 554223176 567828558 964111913 120392804 527546422 669935779 992576230 296741803 585586155 863780168 993572917 156150484 562546981 156408071 331444317 967121649 978378018 5656689 199160626 363346240 426772270 737694867 833376013 912471174 965393132 987209429 989254094 396398580 817535818 793793079 970618303 604824904 888194429 282285466 562014327 575348762 767428901 718176054 882195377 132595020 275842179 935252617 936678362 737864302 976455206 17710346 867128723 80015069 463483259 246430919 490993853 761726251 898493669 644688668 646561955 185109616 888976281 158482863 946809196 649583475 777070533 655509661 662687257 672491898 988647936 485827377 572510304 399368688 683048430 758619427 788559240 516667007 758302172 414879795 613478667 190568782 273861975 580150184 705413849 579543978 792694433 834892795 928617336 220800642 391727013 153581548 422413741 959468283 975595780 8860827 686979128 144373783 386997617 170275154 632860090 365962980 845746440 294791074 354322434 157218849 775727648 228665013 360196988 406925971 707480947 741280310 945836855 782838429 862304837 821151788 948428867 816379864 900307214 882567325 947732052 599064897 665637193 349215253 788449357 621881934 627851299 661378162 855265943 482273372 612987063 427654379 968429338 656515267 800430629 113574373 617408404 857583250 883181830 288931057 465318483 148787181 175850206 728100323 893414881 537766001 957751950 79499220 93025838 869897576 999309176 392186594 412925692 832301189 999887557 139428328 758804016 868258586 895310590 931896953 934357679 463048808 841209466 745795298 795164980 146634202 662031658 464468741 611511067 355808177 814856853 68042015 744814682 592877250 921401439 718922781 814011182 272852740 793637568 517525757 825020453 213825694 970547100 657078637 775890770 778861853 836344971 193132485 952954767 943148634 966454207 480182389 995357741 854130388 890180669 119307388 703333175 578654771 944665967 291976599 888021473 510085674 903893303 891334140 925267031 20353009 184047320 496523676 543894721 784768286 992405279 343438346 848170183 721995507 765130527 133528 66036622 56670730 170157297 325044820 729078922 515876605 547794682 982503557 993749674 32255116 271269997 763262209 897140677 790961637 936643695 305517507 543839055 748934433 856446099 642899835 773539552 8336723 66712906 645818311 957974421 990564193 991258280 565768372 964998501 109092313 157499233 282643660 356859209 555694170 795098005 720622807 786994635 866900840 954764228 407421486 608055575 489998819 550374520 49529065 599398725 94795857 247924233 120163408 898952510 540334004 619293553 353148148 785228705 298224152 899493718 680453036 816919455 469800352 646927117 447826351 833715535 876990131 985398507 841364969 897034491 851913782 875447557 73696065 561660877 959924877 986663746 377216948 533193803 937929040 970426072 670508194 935290006 473582679 580555959 622249340 932307091 375532294 691415735 397021721 906983059 726257764 781291306 384025461 549226581 176630231 833622272 637881616 718599900 788608918 991398769 71775778 176764801 965229467 981371722 665058587 757620850 145895438 991000377 814364171 962000857 271461314 392549077 264612901 304248335 167820568 203932604 297212190 480901235 441066099 603889684 571465804 672804878 374461019 501139150 221795445 264885298 427400348 578542832 269995066 825845884 144372632 263060967 473276950 897852728 299215926 763874843 145845883 427413871 755093160 945286912 260881711 409029445 350670257 678106214 791229971 832746424 208429619 632229788 79434266 298134815 267467269 379025057 264378398 387220092 656275777 995250670 800004769 814291845 327966353 952272507 997569801 999570862 571343482 979193202 861595449 915836598 174353280 960951476 844754709 967868700 950692875 962109564 532236461 838521384 522382938 527491027 569300112 871762488 578339238 920225331 373765506 537194887 398691709 603353420 213845331 746895733 28099942 374079324 580341262 593627900 161715725 818810095 863255197 972591841 839702329 891024593 664602054 682454578 716152185 762920799 492968419 501762012 830077054 942141191 962453791 976875863 587573949 849352432 314813620 997235610 95724378 744668487 845854996 912068315 653013120 991820358 609408079 882648355 709157124 764505495 758745109 964364411 147764303 260958894 204822884 929225404 148642320 761118052 61793810 760978301 250896385 832212623 496508 185900553 551933725 956357625 925670433 949484111 584194964 852447597 281432905 818758847 747739231 915170424 872284873 963944702 314837386 598067755 924736528 940559123 347766868 465991183 869835117 876293658 891764697 912434611 585192906 726135812 349750836 812988271 116375480 518233534 521184642 623954195 566391076 936696034 460281924 512398847 390298706 595464828 190959372 671837566 775483313 787844386 820965856 821534680 919677668 944914080 104042478 140342450 590238796 798350738 144731599 801515518 685700170 865258602 567809527 571143782 191599599 462251216 339266951 771338625 575300226 698324659 92734704 722997084 251141678 594590429 26834890 570681319 842825286 915404953 826520395 969458689 440672449 635898346 253965006 464417087 778774159 813041074 927562141 944204364 25099581 50290017 154903298 776194049 709343875 734084534 992170135 998258390 768327755 997596076 40996229 606578970 337829196 369972596 178226592 842647480 941376859 946707159 456579408 570723620 791489997 939801796 630515321 825068737 799356106 888740154 987101095 991473270 74407943 302009700 417256887 425494873 830107449 939512874 712498924 768257061 202527918 300448292 351506829 825591144 809201842 823916769 568343522 960956250 688262707 844002152 606609008 958473880 102519481 996691646 397887786 681421014 425211685 494173614 740983048 958267431 700305382 705213895 494976895 601684994 611856915 728300084 811940202 899503445 145745839 865919936 879017760 965676929 611766393 796272465 829629150 880019242 727454324 812817836 682682351 827267346 553660069 872922443 915871354 972715325 708552995 818055705 132068110 724564883 377991423 938412667 359077492 922029718 958463501 962730816 219424048 705670381 843009909 964699553 936000048 984455190 478066225 726750946 12849848 467113846 36146725 810620268 911773166 956840982 605542172 741804041 855220398 879439348 597399519 649730833 215536561 766907754 981778475 985631949 781169339 987145596 424483050 879054104 561502711 948266687 623737721 860657877 961819443 971583061 184679310 281009094 201640250 714173946 567598998 968449921 616503631 730168429 238302692 995627711 249121275 280028020 672302935 910740698 962884854 968424416 426393301 539356665 286097277 588398032 378738836 513044742 764630351 819793840 727875958 858931552 798264171 962197682 199887480 483516539 88294843 946802898 635064246 939943434 816685223 895134557 358116737 842909738 599488609 967427309 223273986 421072778 274452635 946786441 991278620 994165204 712310231 723696001 933124067 949772603 100461532 475319604 668899322 994071639 690488372 961862968 409554536 705669946 434078757 733066446 145915465 490916709 356271485 800354845 865719424 953406742 98475150 284122622 265606316 866927484 610671623 984091143 616664842 636299016 608185801 715802023 698587891 906654063 255895635 460178646 41423684 678894196 456437113 901848168 646712983 751320415 188765580 238857604 863220334 898432821 974382631 999021969 313963258 386668940 446780322 786962320 47651594 835583856 287782080 599097786 986374935 997237748 189936714 917301534 740968984 950541106 558369925 860997860 243313571 827182382 838345078 906488856 620803858 729202551 744819873 854616345 541184679 797353749 467778568 802660485 502493236 646765929 112799347 526696700 560419421 750072500 298714240 856383848 705919342 763193656 939995287 969167665 823502277 953875042 638629966 897077744 376218437 918725731 58213146 365723551 354616399 972101585 581325614 726602775 424874110 944124135 151274862 593389014 354151539 709487075 357407300 380445976 324899537 401225008 24277870 87221895 957646329 989389473 6916984 324378843 217287588 861647493 537774395 836654035 102163848 873534125 714610061 890098855 117530700 528991738 567306467 607331378 600010797 982772172 993095483 994287202 578479940 597293872 366563973 963563254 149367760 429799673 178586143 379785930 863816533 889537718 650417505 833775343 277808146 329704406 64402887 689842248 5418327 869596805 426480841 717027421 636690456 810006026 904652799 927741013 196448852 725803235 780563697 789949379 434093617 503454071 325778900 926711805 318442800 692355793 670665395 671815882 20270982 853060187 982517208 990026888 147846534 517303050 108208917 707100365 26402060 767916179 907404866 979517057 473102822 560531503 190906700 927013884 712622600 952187728 396847838 404508938 336884706 673184320 516973448 792469152 915923182 926889849 597992109 809348741 356649392 395146430 341466247 476226546 621106452 919914490 689693906 972587503 434112284 993119860 525615730 969846349 796146966 940551458 972208366 986938893 41054995 784498174 637227334 779755225 33890385 542739056 841534221 869075923 288243002 877270967 340966238 871101133 609530161 821485655 602875633 986361970 376813785 718567227 968454918 974418575 529388637 930169314 165209949 237604743 904683120 969362029 787904667 945822185 83938168 356562252 385627868 559638041 436051636 798466550 339778777 996063555 122543878 538439251 673187937 844693739 10836431 784644475 424527345 998803465 233366365 275251547 706361658 923039709 602435762 797261208 261922017 338792389 41928654 846394949 373557593 650491738 209917375 368932481 190364315 697245635 528971099 906259001 899812530 971801124 489309706 721233269 321532139 607952919 506604434 898658569 322151762 508383980 817894344 945817345 456912633 591678164 968728826 989333714 551810113 600873660 650046080 664187697 545554474 897673612 860531642 883423123 484553206 852664883 724841424 916792068 974262910 986541111 917138951 984333302 700817250 745309637 396367747 752746870 237132872 654019095 721321900 857011203 4145723 98280913 64222401 144648161 184195623 480609532 129568644 610919011 445801777 698085043 272099098 430799596 648666578 762001082 594382301 932493056 834370381 966774591 15922269 957530271 365108671 861214460 31345612 191651618 269223307 317551468 127961575 233309513 30358509 249191052 899254545 939932009 643376051 796027332 829765710 872865627 883336272 973502109 711025989 776628037 257027445 740586241 719127116 991700440 885005170 973412958 444941982 987269357 355584432 469618543 79450394 441105127 569070616 660476657 419141534 454346883 204225968 736874342 740351041 870571025 830828646 960534545 779658300 861815697 568382654 830255288 395322286 951199971 515254824 590709257 39380994 474869047 891688834 930083794 789312814 916618637 570964903 981560439 781048458 794014083 559787979 750021723 185576869 833607592 301828456 569366694 204104198 357561340 566233577 568961887 841096162 894328181 262011596 633791493 921661027 933810417 805563623 990459972 886740987 953595845 400246723 812699232 210548926 522404681 604038002 758920709 367536005 602087632 439720953 853952955 465808627 485932805 722813867 998066104 511427714 898573214 473057829 680392616 614653540 652096936 447373236 895964751 988409518 996889542 195422273 736829917 816784270 910203324 97842023 418777810 878624037 985602470 693851369 973718853 198068576 913488199 170502004 586431179 836553559 870401112 284858018 504048128 924782036 955727631 778505124 813522168 273878769 578746721 740482420 860232111 974562537 991242389 204855883 265151838 761754265 927138799 529408262 571111407 931578724 938643851 503616731 714032457 990405703 993272998 157829430 988646594 620430745 754437177 904991666 975260761 133658497 193023237 35085549 603028522 252543541 920651391 48295857 272160753 854068991 928397419 773425484 934320027 733307886 755157194 667770163 987054618 612685139 724517816 701086708 865445026 161629307 720072489 601168873 669133392 180053204 701031703 237121562 732711939 866959730 882526768 40913634 985678148 841533270 905406142 944569000 956481036 341237566 659884513 401441210 529282815 787734686 836008020 860223321 877213870 378734651 576531815 459102062 556959763 156365521 893339235 921980932 971040835 76729806 692235930 690417067 911880097 867865330 867998726 71758328 531335347 625323309 762638958 225215313 657639575 764944071 936108698 156672573 306839033 713544009 866099252 288594560 432257134 246192450 584682613 591128305 802191313 481400058 715009125 514170597 534830502 192329271 359461927 417614974 585934445 476528412 955516917 841060618 881954386 762238901 872404456 986089068 987994099 327798847 773615612 973050410 989216546 624190037 773280526 406102104 511157204 843163817 935145434 797713424 900184019 661634508 712626751 747079446 754052163 190016327 438544190 804249212 842300756 789368785 983958237 423262460 605509632 983672402 997377336 650262819 734468387 753521394 780449056 970436338 989762760 772453393 814503184 688279623 758457361 975690296 992102434 12905871 759929610 158218587 651453763 798493106 873290135 726663517 891967392 2949635 951397772 288846902 706860582 993583896 993673341 925822316 978853281 15195061 907185245 861927822 992375499 803300396 850830081 3590650 202906055 593411887 966822940 967642039 973060619 93528671 924782776 605726099 662459858 251323241 593148519 696223482 841955148 904281052 958902911 765998383 940648741 903958134 939506314 54111082 907433022 251339335 570842241 703567331 934663006 883134137 914590884 608745008 724600125 948789766 949282599 34527446 352195712 993186924 997517576 679608386 760767752 312432011 961020816 410466593 557272697 572746060 579189122 803216774 971282183 331259317 679207504 951913887 990903696 60232524 693814739 723026109 902630156 322510682 689676236 472560060 555054077 543685439 669870470 539459133 777493442 856320116 940436929 251407533 777974580 981249679 998747658 359280727 820896800 428299828 786616229 209724420 965117642 918174529 918757906 326978071 783395741 360948150 612252349 546545731 961895537 988900279 994377146 748339692 977695216 13893854 372380860 124561631 242966946 619925194 846283021 107114127 879853161 596660573 723166516 819803561 935307279 83459681 232293309 573765392 919852934 660325442 683845704 166025875 736135764 43779737 47489435 566954234 682719845 370653318 543878348 402310708 827040606 40629188 438802187 710771387 724791369 139570813 192265009 847894267 945554733 24655087 642350969 821935458 900998300 73351489 154800270 700700867 901486598 564276284 664556667 85800925 875549372 370620581 449321225 581459791 746291098 791329650 913126228 441082267 761550304 221827447 660745707 708028336 835411632 453965813 568375414 510032646 642207228 302831515 509956052 917182357 922862645 786605468 841621975 514693498 919997271 902741037 931594101 280625707 860295962 127433960 871592091 901329429 927013016 432506254 624488919 332533634 553764118 415193239 821748719 555971049 622781275 953997876 997467384 486931207 571710920 441614319 905550215 137070759 754806915 410840135 970106111 596615715 867932649 269917234 880010203 479314490 908741855 959007957 998130316 179580908 621834590 17720410 479718182 695209023 912154671 990252349 998107150 185404258 281079395 128159731 366678460 116816624 573134414 188813847 949227581 647781895 935419241 245073008 702273564 340485793 568394856 74973766 177811192 45178551 739060536 971207912 979377737 257868674 949862021 492132865 999672807 977302630 997433235 926445583 946035568 368547665 853309214 674276749 814743438 80305225 227317756 589688667 685370533 276034206 640091875 328790656 646863179 307174417 333458427 504705665 615285349 930534222 954677004 852784868 945390788 693776046 765249714 112160215 781615104 176700567 674611964 33620631 733676800 951119791 963621397 256297213 826884240 387358586 988959757 930275988 943268083 592037166 958056368 647561886 816530135 715769778 921495308 610305200 612180271 656390132 660797890 96603365 435698789 257087196 582619393 962398486 963371091 573843852 890757015 443862152 511538907 368529415 781006255 629094556 644891090 759421348 889577977 72238617 626928443 892735741 969589944 343251854 983270765 526546975 914310953 472143698 671089414 760145740 860882393 394297829 541677893 512887460 546239015 581193870 789341731 333028445 615644715 274383350 960680815 274045556 769835801 726297317 777310460 229258169 748965044 689604528 896828901 257921072 859077297 251776943 808257358 352538558 873263827 967091865 981174692 466203488 948124683 452981607 819598576 86010026 811542692 742278109 956841842 653390588 802668573 640617750 753957095 966428909 995786141 124264189 444223277 727122099 905921197 972305668 986084857 478152243 907668490 489298534 708339118 885801959 943252144 906967096 962746489 702849426 822689955 712196980 958868009 281007313 851131356 579358845 686345748 451951630 721590923 181481450 367398620 141811454 675447877 372340551 649291205 659513401 952107929 444789367 844305510 312067886 521468856 950058366 961907146 382044224 946502481 874585576 925105010 218376406 839117763 530003844 965795098 403544337 836201336 423141534 483880978 284536661 566613008 97162147 484250101 992712340 995963865 124446800 131728135 450866268 492305503 555315605 691888127 528039224 903351343 45236502 849744262 636551671 950479904 95190188 595502869 375045581 767229936 576619761 918575902 430602573 487210866 439858954 658391152 966611066 972376198 357787478 510489153 385596028 749909892 800367593 931090031 636618550 693774106 38673477 474206487 917244046 951845407 287911213 705252970 964262475 976987690 84350523 243571075 204374426 670484286 872424500 984604080 735541193 975672719 990990714 992210486 699654522 773305716 75588455 772057688 941818680 956073535 904334854 918667758 387054748 576180831 964902267 966161806 208556693 501366809 993499883 993525595 492509295 494769679 262039641 665062954 840929989 897707590 947703145 990701452 790676180 980231418 513899186 837338037 511418003 608099596 112638311 341313752 422044103 451421468 626466730 922895481 254519305 919622373 959740243 961446247 928262861 928432903 479753481 997418793 728668668 961694543 176407265 911323108 21151088 740159155 23726537 773935691 329929981 380767938 899883945 948403929 989820105 998852570 367680402 588039725 483347652 847792025 155996389 230301856 79421846 874516437 60204526 513319969 448153685 633704643 589736208 832969943 520411612 934777634 230648658 386775365 942979359 980263192 491191085 867257794 793020221 974100256 860308212 985409635 242566346 607541646 473331751 509915620 324368040 952708750 227665747 396630671 157147371 336045092 944585367 981277859 198240988 199090171 136671500 674760762 617930198 998147058 83300145 400643441 115598742 654134213 739766217 769133776 810243534 953602935 587134013 835777606 796145805 963904687 933981608 965098457 987714567 999264061 717456202 970116104 351364175 696664085 791556036 887559173 742262485 785472405 299311568 985871726 489440542 769643534 17519871 834386812 899802380 937651068 862452014 880832959 802368797 823755346 52513133 894162655 941262568 971144664 310470544 665112439 287572655 860762860 695650481 852298889 306796253 860591665 941164706 968628911 30737138 987434658 494636125 906560270 79454540 656780034 564586121 680910744 919779316 961453052 936694012 997061232 431892442 893064391 508994117 725799107 978054963 999355618 979435387 996997355 108557858 876648973 528153603 560577451 545659581 546765678 973733385 985722146 353628437 958171310 973670703 998405395 516766762 816102593 233930029 947182145 964345877 987367970 110743778 992676562 562039955 931213632 246151314 677027404 30279999 665157461 245890236 525846947 558809019 701533023 623358992 686478435 247811998 457676478 659913987 686395790 944636768 989456641 980108979 996030905 992448720 993403843 11103207 134272827 887377423 993312221 131185430 492537246 500584695 961580965 866332935 903197560 613876086 946361485 555859900 767906198 99897166 721165194 33471851 381390017 639647055 784043250 340924641 884304654 790255337 862927624 467375168 869312704 797576559 932401803 411522146 681390340 91042488 998098681 48336233 110011218 56961664 410393902 293873121 921919997 276769789 821147832 997819885 998228592 348102728 536747228 216981069 807574807 566088148 828586767 487758890 877252657 328248698 363934842 68579714 865985388 218806371 650854378 134982251 567645448 124464168 288130941 350861024 594672365 992490877 993156620 5480700 690747050 293257171 365947652 976092221 997137953 601023187 672018245 695924185 905917881 998327808 999483242 439475794 611072667 628332108 878541828 256429957 694912276 551929334 891520694 272777048 455694450 543416444 647145256 447314810 940605278 350809457 824531370 748110892 914298008 76049074 405167687 236137313 316984038 373220034 863176879 405134300 521492794 606276882 737496372 760021184 945379620 17471054 364750012 752400477 975455247 432591035 490974611 611725689 975191217 241671449 761620731 565248365 779496255 313993512 678856448 50672462 583162372 891375857 944061160 499805028 793384318 492015874 946018474 197578728 208211259 924289239 958669420 707447084 768379761 430589875 999007553 921437072 940203275 259170042 829497824 741996817 776928580 474650119 837873201 571429101 676880394 326106690 732594217 730363016 855382520 379633154 797911444 114713727 622162580 696761536 857712859 576457678 705549560 851174621 972575655 974549631 992548002 873225592 987204242 605349744 789978665 327982560 450808586 790644609 864182834 413813117 917787470 347474045 887580187 50352765 797604900 501379510 985189832 535753739 907570775 894561353 985518738 95901507 678624584 737503067 919629950 914827396 943650975 999561297 999880115 319788144 619731412 821547790 906647822 125793561 465523000 671810011 995261732 708274348 844268910 41241093 255947546 127202282 915298723 422468046 830798907 321320200 825527814 43827725 674166628 877744148 890814362 982508508 990177684 123415130 360834613 6074340 990526151 751064997 921737446 513662190 549734675 358852178 540404487 900803832 969648308 17282238 62085217 41545881 438911798 68800574 270148055 894863652 916336790 689873750 854856903 12834161 889387301 36064589 861619293 899427416 967354886 375925448 692254440 102087895 910904224 64292647 118901667 503964132 725494362 785243962 960231450 462342471 653101838 619234476 901343166 767907788 918451039 160597016 745280276 257739442 654485990 982988217 984619592 765108985 940285017 439394116 609621260 437038413 978559792 188249311 703287221 829405090 870431472 948183361 977471257 695054543 926638830 563474271 935575886 854028009 923141044 533670170 716331538 644313940 694832690 786249861 999644014 62127984 258970774 518998844 900782915 27964085 668387456 13294247 629584455 556297367 860936302 447951145 665774711 620745084 828056475 44719617 786321884 901090730 912878407 873425992 967312837 192927245 732360548 329982732 819828106 387031083 544542771 200094714 556786158 765529103 766260853 131218752 824034124 513882775 675114415 204290561 955783021 501645226 817330180 468853607 795556808 293023934 843230639 481190876 613009866 590330161 887938035 604489102 815461976 279255416 346523856 241928661 766964805 598405636 847312453 576074957 944373087 390038166 890009689 365811422 386804759 971100653 979594606 934459999 946091790 362785784 393892443 909586229 941160269 338754476 966855664 81592922 773314524 665712074 951202707 170856759 900285614 225867558 779687238 959154289 988306773 650636914 730766090 604259842 753881980 731884759 909187063 870928106 991523658 16987538 466776151 711842974 991136985 691252640 986661760 80831184 441892006 594285666 771265090 622507922 817106264 556300245 926472833 341681753 780636750 327274347 984083638 413344729 994614235 952147991 977400897 544031881 902648315 873885326 885036985 665091684 936649900 770368173 883410924 903962622 907438965 53296446 940244756 482432968 697707419 885376979 901042491 109761012 372394063 732196790 964500550 79095895 902296940 816946198 825192328 961386772 973153626 970241386 971134307 489600134 986301037 175511179 270645722 217682917 810257817 756489042 924745581 269313715 517941802 414543457 746263519 810460419 873675453 219273593 280863055 474407530 713164657 303441253 537171310 159364626 613458898 965674904 967119706 102996056 105388347 507585088 884344175 890889876 933629844 960874042 977839761 482800166 795258679 451705914 808722391 90698180 946029594 130799606 230124736 753516771 779206797 293321650 447666697 853578087 887097486 206613696 672792505 561418231 846243385 763379370 944908387 373182669 406140131 608217942 787191145 415249258 712447148 426026027 883145280 755238670 887030459 278368515 498561497 955201854 997616276 112616786 508081620 738388323 992103012 475500247 981718472 815705684 879137851 349293043 546480925 258342641 315795565 204524330 899860311 387415027 826375221 793284327 802787249 679116338 991944725 327602212 498533763 844362315 862055044 741340962 917002524 648633498 828163875 367010495 944434491 620994168 804274902 554128577 646249406 853751862 947114194 525525819 784696085 244265855 434167018 694107589 984814688 432432534 694500124 188184980 966958998 148142040 216506349 878293433 992799543 957531310 979408250 428269824 598722996 313062742 560015009 188490902 388467093 573663753 862688492 718606316 902908757 118137935 607980979 308570227 996938417 593270089 955555518 872544508 875019859 606005633 973579171 329061318 479995774 47740890 202670496 37801233 312763036 618653672 668988411 488745284 606620418 5838031 664361706 906586815 967671887 633349011 771010074 928141658 935478012 207028159 592422031 480319227 986405705 159215502 434450501 934776924 982567295 896862407 992080949 25388645 757822052 288331933 388732591 473393758 556415404 926439505 999311541 62944275 988334057 731005315 868122588 534994965 872431124 592949569 926505663 3932188 706798945 113565512 586759578 58656154 235954339 834955741 896210877 572623983 619333363 206973702 970944926 460658688 467474861 385630841 974903556 426752278 733383443 673135179 809911585 195739604 838973015 517932941 649974036 126033458 604605182 988678085 998554382 72480458 446949679 776282734 960102850 782841715 972760417 13005317 948188863 555216092 648267011 763464240 913841879 571107107 920286882 32788317 553657956 730186835 916234641 114590935 603619571 851541584 952316670 587937746 798076791 211637684 527943901 957705607 975417279 511505447 625377097 803484544 887359495 428301312 932227437 874505871 918145717 279492351 717837574 399861992 683608022 627126719 925282058 289077063 672183054 335036104 353565172 525718776 584469583 119299681 198249541 927661728 944151863 222074672 891800304 238685978 246755634 23953256 748830938 445527025 671646624 85140887 551012558 767543728 804959358 998780151 999913826 22803014 420410525 388453061 495046113 866770758 892199027 159851002 515490287 549868020 936172338 693140367 936704156 950989533 963598032 482576550 702233886 942361923 974159392 105012123 156239783 124232460 648420785 941483096 972899635 29838960 279704609 907969334 933423790 100731086 170408869 630819900 780946014 248197652 749200853 816167489 942936069 351577590 884022884 792532450 932813984 958574802 985707958 41676187 497860134 301928632 666840834 318734908 519391304 770196977 820496445 657153641 861655430 778508677 921795363 510755569 930129326 67714326 486643948 492838296 502583980 729144794 832713199 114525091 140561149 876951313 919996855 678448564 979811459 717744083 878315569 600533897 878620746 870152871 973269327 534816508 885311354 369063286 740566873 473969678 493866871 727785594 991812866 190457651 392699105 557222440 731986184 242472774 352689723 669914199 876473155 329639819 704733797 670418692 976699113 786810307 955995055 989473447 993853826 383139875 431870155 138517600 848963842 941464164 993311912 941686823 958152817 824562100 902533061 544758551 875726844 440565705 876509153 827728361 848211078 699877532 876223179 147466499 254400323 377461994 708923704 36332958 424815277 216057976 800061846 841512442 951498820 550828511 727021850 73154336 112583958 973030215 982649862 745704198 775653791 13889626 763606890 303360707 754753522 898304056 944519470 112054026 131443476 388335635 582415149 558810039 684064340 775626152 876647493 631598572 900116707 91027794 268858885 56068270 671020596 632822797 660803315 24377889 574169039 852935772 869141001 115060499 121242613 248625311 662244474 791205012 942955239 150028680 887050636 772335741 993880890 990394604 992249181 880965133 991349432 478966586 872902846 281436885 551571607 561503006 832137340 532671133 835098798 492350930 632349045 748671775 924501169 184733560 785503702 23037694 731149772 421239356 499399355 548080614 823864000 298301405 538033348 213420327 887583372 626572169 678253501 277366495 462426621 762763067 936605381 458401105 946697013 843946088 859173925 470676255 867974294 471814410 985016744 190320396 933821677 859532960 860787365 44376301 672454564 558612393 620044775 620278347 909147731 477937848 879248387 513756985 742372108 824483498 964118092 823055188 903480999 517757344 597806800 897240491 974523618 386828823 712428056 668032434 851561456 110153186 552910673 589612881 822079489 134836315 176574358 117596611 281957379 670270247 782984859 783786879 955313036 880432614 942681182 855162364 868835946 705025187 804514721 349454160 818783545 986198622 993184394 769433497 865766183 858514743 885314977 981186260 998894564 250728473 682889767 904261612 943724977 562979812 829966907 460755836 705572376 119935928 590326916 773973810 825314501 892259381 919105544 438062825 802743665 888759828 891786335 636070583 934786580 872936190 905436820 158555077 837388472 961698877 995384614 567358074 954347996 686652936 873627066 519359164 919511993 639960572 722788932 995739187 997996258 453840055 877374961 263020510 448191238 470830676 658637616 149964484 479915395 317312288 653675712 896529736 993311229 792247314 816514119 548871816 592170908 58800031 908906184 946562944 993047483 718009451 891434418 299178379 711969684 941473567 954511873 87383472 386293331 295952761 722481004 231343669 705550482 206688806 209536589 719942385 818122923 965527973 986547569 926070273 948161185 708645235 994387681 409039829 610452051 660654233 791536244 7914729 639731794 648771653 733787488 462531875 730358072 714324959 852634652 568052357 747469467 440447932 919956695 498828857 568606757 255323217 838300024 985347529 985530766 633200903 963706285 587433967 714470811 93504930 104508322 940281549 956290744 59902172 274707681 999624392 999728214 338504027 353215830 456921477 920899400 506674213 655644134 474740502 852492529 78586642 245283093 151416662 299884716 774111355 866181134 110637983 995406269 981990919 987380278 454084970 689586923 750596472 925772263 384082727 666909434 381811759 430247168 903389875 957360664 11620383 942158013 208806096 959965569 892244961 902207333 768682226 939217371 465680181 754806229 368499491 464338734 842361464 854169022 720625002 828894181 613929984 724163692 827093924 928194552 912532512 960636776 652625772 652869747 677897276 942067487 369932316 833734692 808643834 902631139 237287476 635004423 555607780 813496000 451243037 470123227 83641530 692759664 294973592 914150644 368707607 670999598 197075647 725515064 663086161 693726292 837528495 958540004 206231602 779822586 642986591 971098850 191108860 449219772 310619051 968367715 724887547 929488862 857467532 979347469 868777006 969861735 100224215 384061642 724602450 842233971 286223496 515793905 963189241 974808249 388977373 515320212 280983628 669227946 918075670 960513205 306334670 989414278 438495554 445984142 643473890 888862517 94258088 351551219 812471536 852470208 42383382 536952916 345908700 665692431 449571762 559739820 949943923 998919530 446893742 692314829 643102662 725379652 858254775 926477467 292364569 869342650 610538266 833588151 254862801 622479727 258805586 334814553 127225461 826011395 806384241 835783344 123184177 678216757 106642870 299619696 193827361 412023903 224771754 405712703 385541640 618444430 645172269 692343533 576347481 854126954 165984775 821428000 888634085 895347827 618703363 881455578 901438794 988208851 782870792 870732092 183704087 544420124 41778235 496547641 121030067 631959826 959089149 972073946 250867428 851437928 211346243 858168103 543502504 609618592 102856739 669543009 965586432 966434199 700975478 744213071 126286970 942563348 705595902 715243726 672710587 943344105 846699965 998568197 66564544 307305731 448726969 632323933 21944176 303995264 122507049 415205404 793764116 923277004 622170747 775022184 895977777 950099686 533253268 902993975 680817662 748235534 137535657 905431453 476279140 483707093 975893540 998804724 603233243 978997991 999275129 999832380 458626084 904296819 454965478 463841565 481178090 686065340 342402991 942517804 122204149 374579041 731199111 856870607 482588487 866246857 187942084 790811980 73757773 289709620 706186305 735289180 770585136 853915096 964111991 978910000 80633347 184869802 338252497 408413653 447487573 714336336 390171091 476316360 531155157 837343358 820166341 834328980 681022407 966645393 103393339 277698043 570665135 627174292 839499732 978845150 246833373 971508386 571281730 950487348 252854280 668706158 90048572 521112708 685523087 888968034 571797132 877256916 899657285 983978174 968998787 972558103 411900587 722573937 550448892 903479265 861806258 985044603 634572292 960608315 434518889 487557238 587493685 606987406 569639231 720417640 677197068 679880019 624505764 920687346 147948424 702073254 325065392 814259859 927727353 994382134 256176016 944217645 554727049 743512600 622554026 955695079 287547630 354104424 895000136 969287021 920917006 957192748 54106005 967031732 980778220 986407024 843558821 900409669 194440325 496993643 322206339 331274752 306293916 721586040 131638103 960652312 579892762 634147725 148476181 521244870 114626865 956728125 109695609 524495369 23317351 835272174 253870217 290169792 380609964 843730610 626221106 948378602 538550641 783176810 517370414 534274558 103723812 330784172 47026747 228335274 849833430 895203752 133350381 581815877 652081621 939708653 771114281 946195811 469738533 933693437 352124627 568200377 950488170 951980072 867499082 974239498 129939125 236807974 932614186 953577131 782309664 940248312 805519726 834464369 834449326 938228069 997768474 997837754 378404071 656941491 548334943 702056841 172956604 210637359 741682312 764424658 63901100 213692617 924990382 980974951 449952668 985153582 962739657 990842866 104653016 667528255 493314500 497345098 182969481 956545379 71768260 482702358 472907386 996229051 912277916 934505532 230942846 613595956 530237740 740664010 782184208 795098510 785994175 921746335 69257423 197880129 966001160 970496762 820767396 902427055 93806957 681275464 766092079 936688101 273849359 300050010 31408073 572166622 578474474 816240433 729624362 767700183 679393735 878718463 765055515 845362587 757640869 903574728 7940443 578229614 941624716 956505777 448729396 597914388 843507223 868500840 261705891 653119115 781761289 805749769 978509192 979003099 36761301 171346264 529150080 786097427 74610228 751727834 711290728 799823640 26226967 551401349 439095092 915816645 278344370 833605582 78683420 391925005 889102161 932061726 99801292 154450342 486070548 629071999 994975077 998579688 69148442 521716918 685171210 771741203 908987564 970829634 848899144 948914951 209885992 973673211 443263754 908421168 279244880 938145111 764795617 820694690 39632783 48911200 133175168 853525414 753747000 984670124 39386892 528917724 672641688 815597357 211226551 581827060 907063069 979740037 187528421 658166823 351395215 962194920 729591103 991616370 17519164 622382845 246973372 747096062 848954137 965179859 207919456 633091004 672944071 867426499 664806609 738425560 225124549 914522711 103520981 390035516 258990767 497517128 854519215 863611781 734026948 962378557 633060019 815053492 577572303 991244331 785269228 827642281 518212476 837492013 659336795 800102323 240268155 324039585 941828115 942673784 309259335 409790166 570506982 799640734 391973329 460152156 363007084 521128546 150642990 213089655 205675932 689756646 273756847 984712378 914411966 998045084 832477002 995691914 626725109 760797642 674634856 999275483 576852904 823497467 583332503 910203336 981983869 992363316 687574409 790008434 566692318 569342638 941261659 948455469 446688891 693835120 503377091 926148203 103378255 430649337 802677808 972237985 557523350 713189074 980756044 987707306 307668155 351143060 386062355 874154269 275099884 932603469 344571707 464255877 920485608 920871564 931795219 989419038 828442552 955206202 308448748 697539621 639960700 708246945 431828389 611303253 878238202 934083816 946074272 994799652 236884592 245325940 758152745 927881228 169729743 291269734 88204242 109689457 744616856 868362137 374796142 879483058 867892447 930083330 370159876 442570611 916749399 997935195 761392143 891391719 986756809 989095073 150845845 389391164 420811841 528015825 858656076 950583760 501586036 836415928 575903060 843864131 69849152 602643997 177723657 214605040 161720301 303653739 66971824 564865809 87936165 829059617 328011235 855151424 26703206 822288068 28530247 257680036 864228384 916709069 809664014 830293382 185977286 449390099 904850379 966250546 615873252 792110777 518785334 544990006 477856064 982120764 907348626 938460316 61660681 117124737 504682820 786047041 741559411 798337979 117497269 912050461 869074413 956067472 637342869 766223948 341146561 374488062 320550418 568897127 649300422 790314972 156214483 998179873 492042318 810736860 116641639 427587866 631817861 911132376 216962687 361430819 716451786 791097968 903334089 939694189 275335364 758217843 165664476 959773219 659749777 708565729 145038638 704096329 12763601 763730455 591461577 619287075 684113820 983129910 118106604 869819958 601424020 805924621 211877377 636920956 799335132 947127140 152257710 943033899 819104637 966276775 875287739 964310015 554593313 632446278 846398865 943645082 196602851 669309424 289537944 368433873 856858457 958139164 419515039 870683264 990724552 993420555 300292317 318470170 894478889 973721081 358108600 557248043 537781965 898714798 902023735 955640040 868438624 916137195 458173192 872784271 86377907 892202916 718364473 807095406 787260285 827530674 666590297 833146098 170018832 690461666 463938713 608078957 474725595 979391517 212726976 684278416 931313971 950761705 271679356 463445189 437696009 600694983 609199304 984340186 34426617 339405146 688830721 916943296 971253124 978360343 29140650 55463410 423566506 563234383 986546862 987549891 25477868 500176605 193917941 838330228 119014573 808182062 415702046 707464087 396689469 550934093 921548909 950211613 169732175 200672240 155412837 304170258 271022354 708053579 959692559 987872635 96509334 363793311 297501133 844745816 237265865 537191589 324546874 682665792 816417867 903429858 284159272 889866119 673901725 757886794 862961078 976933365 633233396 952482971 648262949 732016001 910879135 930695072 541836159 843968124 80634802 771516205 492327999 594034099 379291328 828061625 215611564 491673700 408303568 736888475 898492800 945430953 321912513 489562926 655010216 755507206 918464449 933326666 77108709 840776780 764513491 987124164 913684393 933527680 806478514 827115606 254484721 919710455 501008059 766196004 473027400 492120503 817645192 935017872 562158384 970487826 668305186 945853476 872788361 937467033 657106410 876384611 129513456 774606393 217593784 796101928 719828489 752567761 578575164 861888900 444191485 908246999 338312571 845981982 130842760 591720868 497238686 686729031 978542473 989007315 393881765 447163978 843815652 907923161 881909018 982555805 279831236 597941160 339397004 824021091 452816973 523019047 579645979 903562414 137836318 548965952 276779844 885836249 507256047 925832889 812309910 995072881 328671566 601910609 228427370 453787555 710492774 743664253 522737543 569416066 269339920 914047197 175120666 301493687 31034740 812351890 702861447 908496582 701073929 707373736 990601206 996287759 398373862 648305761 448734168 544887943 241664305 896957140 563669258 877400841 28204518 305395711 346891646 754157746 80210782 150361474 595530183 956312162 218521767 253724348 271665337 674223271 583820513 831039145 381416686 899248604 340469405 750958898 256027730 352313430 974372055 997891272 223656118 398222646 549497573 620332953 8832129 545809700 762203725 868556989 889915425 944210057 535369901 702005959 727541225 817991419 467340614 475601035 354533141 782833965 537348900 941652355 353860895 556066804 906719780 914749264 81129412 635143030 222187307 257241667 525267911 758117478 564297346 876193759 973860430 976391264 726548278 999720186 379594428 640439974 932351384 943769358 952864058 973007314 580135790 606220263 97129054 638822194 849796928 971198604 543066883 896698162 999549768 999919465 651411704 770829419 653465613 957940507 224035440 266958182 383041541 419595777 899980553 992376925 30797483 675459595 138959012 716580133 962956349 993527087 133416873 462631324 847413236 988675543 756746882 873674996 962722316 985245127 936248724 961389503 910592116 934014116 575479361 698269976 290542084 862441995 771900035 940023073 962075882 964885802 54757654 70231091 41260505 344559157 349870873 406618770 458342404 967249440 242377025 897403401 206170433 673284790 627927659 640403177 141467293 748272417 217333149 415233532 41359693 190303852 46749605 293088504 433052331 587113187 194154760 467131879 221200201 747568181 184206981 301438111 750418474 939709480 104392202 951711815 247992692 294197143 420507670 876334594 896787277 996657405 64258010 181324236 202839278 900302082 213528829 477529082 386194963 852355714 335904751 935070613 927081535 937516464 965418800 983881992 210641066 768814691 640692739 975925290 26107556 732688420 524543542 746586743 170936866 437716361 58143334 506118504 639760060 861525959 816323760 911047086 479364903 776455190 747142565 889786424 140621056 277204768 775238920 990039256 406668370 902422005 981337911 995651688 638203367 795717748 402523773 436699114 225512440 668765865 323003659 632849380 11186679 718483683 578389449 733887797 201141888 558536880 623237892 763712727 490422470 978866885 228310197 354386540 886757940 923044216 245483821 856448588 187189374 565181237 681623501 749315745 250418203 538736114 710173347 801386763 19525549 552514520 53989927 259584361 461325258 899167375 689118792 848421861 426017255 814325369 56382310 685984541 65842651 929240134 659141856 700775736 753951684 787592461 227106042 707257235 623614105 702666743 587609912 982283805 117591785 927796354 335653572 338118287 504289140 889522504 506459567 534629452 394082333 570464144 31898466 130264948 481776380 498277464 484436661 703159605 716979062 750310234 783034563 856562830 424560416 718420548 743072897 934361326 810250644 880188067 603861588 874271474 773610649 844672116 648786610 940487459 622479012 671710612 154801131 376419911 931384435 975992115 951857321 987214192 743786663 756544698 288660909 809214035 362684480 757548086 845776491 896543115 722885406 915732189 124965693 904605663 887975319 995764034 835097064 945384129 745823599 966342009 96611546 879004180 896822452 930813778 338234186 347283537 82404995 294248673 906174495 924926754 506412248 999772864 827060324 836549264 346565070 765714092 631710131 862800603 731452846 749406703 956517020 962388627 214400138 292472779 794051501 837009179 807404767 986888741 577338745 662807546 994314083 998739431 928858934 969324468 720555735 750731931 645748392 994244588 940290169 980713706 253870335 680817241 829357374 984421955 109611093 997118857 936408837 960482490 843976346 865026299 223985530 802582164 58761400 696282398 471062254 695943892 234828929 665810016 911636022 963519512 299652273 786106396 744905081 912588995 722514500 796393049 644574822 816559680 803761547 902974236 881764465 941979885 206785305 689696368 264541134 943151936 47979509 156655160 57142977 805285370 719074029 779932066 426521262 757940052 656003021 812106421 43053537 572791750 219770419 482421610 812077119 991106389 156871403 915209799 168359978 822842455 350030153 536401948 943375934 991983178 498303384 776120657 351824482 897086145 146584601 565380140 621487608 743466837 9846769 449342566 361249770 458880187 678847782 747744173 722679085 914064257 195203112 287967867 237584382 482195419 268921643 539398168 760987654 820358210 171615504 675335523 331721766 691258518 701075071 879291394 845284524 864489140 183856482 532712227 538026646 580341759 640311337 945213893 238252535 535426312 653551521 958481105 211148538 795341971 465855577 647482570 834280786 841865050 689805219 939634960 82038994 776739246 334994143 522431643 959059790 976900159 378568210 842862814 316736760 592524786 755383319 767023927 966228969 978593384 554401166 563131536 27346691 106159082 575909107 733684058 898451184 941018788 746171079 991163384 634817421 645715002 552971625 995182636 656240808 822240474 532493857 653304116 277216352 956928047 633544397 681193051 222098385 577470454 448920658 992392506 317846748 419567547 373315275 710609431 187110881 242074385 977513755 999386530 414034579 697859114 42743006 569668769 292528101 960751248 980745521 990506039 624583016 764807486 909551904 930108159 303884337 569743639 68995184 684768087 582881913 850756044 555814424 602684994 620418095 932879113 524357497 861900779 947386626 973782397 232443661 394319952 612967796 757269982 384504855 889423465 727012311 782105276 81480934 353985644 640430269 825253966 845972213 850468285 674610952 682404319 933616958 962984229 842559448 931690957 495174312 884030029 736362802 769341488 59293288 566762812 927757858 943757709 539967062 923415132 572428102 949545954 240835340 377011062 913744754 936856155 959496719 979328401 811543950 967349762 651057384 879620857 103235169 377760681 578845306 883584182 328582512 627690159 396361699 648453642 711201713 715725985 841818004 897913444 253183763 712051103 930009108 975334577 909866431 925954508 777101502 914323423 195625204 971745844 325386782 924430287 630323267 835348582 446447037 932592094 433351042 829686588 142006192 649585410 436316996 449996011 203274816 224324494 565633720 681877678 985792772 997777335 963256223 974730475 760069369 862226302 418872710 952082569 57599741 774481746 71940418 260645061 354973003 553285089 666087992 915273649 582752224 909491656 915111025 947272792 48285314 631374669 967608332 999009196 815630094 990109489 108911172 495668746 379039179 561099690 467962145 577922165 417420003 767227336 797953654 930274432 732213668 794427345 79466694 328783586 873452110 898928376 110305617 428294577 881879685 946376461 627418313 987521100 575992458 769883859 532390608 913587358 911617343 986255033 775859675 820692916 724873572 965620348 649291511 737928910 298151199 640008566 431575274 913801291 474000104 485902705 350171789 839211145 620428292 648536240 815172216 836237742 668898933 729854967 664203719 872280394 554222228 863044038 618979106 827694505 303642080 374560169 743713163 946267425 698758730 829855483 496682256 701048083 679800208 904609730 615142014 800661017 448558191 729986741 277458710 735756968 230020257 915553994 236799321 960105682 983335236 988364337 928374132 938324967 434394738 539984569 448446730 933104450 986338204 995119362 301231559 612819901 602832666 912458592 897132266 934225258 509880537 523286776 636474285 827968325 709552159 916524632 216208680 799842313 644080418 924508768 360382857 399733899 501279924 863239352 658550043 676438484 143552444 979158468 17183332 528748058 291385331 473169838 620040064 698520727 611052020 841131123 567507541 570019503 659944996 743438549 150439931 571288494 108204958 532310879 897794005 930811035 719921909 942681121 119116951 474979413 79256796 361345269 287655510 563320307 40255416 509772452 139769223 148037414 623839028 875208643 459813046 820169979 953016920 959920910 639722372 970289583 537419430 970957251 681350922 961170988 743292096 997258552 252856914 954367665 358827277 496754831 242522282 934700201 119498911 438303065 443688952 466069611 548357994 770345644 67967255 579823108 117279571 766405418 713614728 999205414 729222205 874218719 224373025 919923140 543973008 790266199 447092012 534948565 732397525 846198271 756887579 864301473 69904319 404742618 815396264 864369523 982803272 984090834 67944013 605323116 590351012 899829212 589931840 958280142 931085071 966993537 354061287 420220791 130312663 538901819 886695635 984593576 900896491 989049845 544213058 718956562 880224886 953173917 231095263 651199842 621280117 893688072 662494100 829985570 889126668 995274982 675152061 825847501 209383261 886924366 296284079 314354102 671862542 724460085 758786371 824708023 628783884 902328180 26396921 164180866 607654373 684582872 157372365 505152869 975550018 997041354 134657494 460214248 77957996 422350695 607134486 610584865 227540267 611786601 409189810 433405365 890284285 908364698 462375330 708128768 892160871 971570811 603987876 673689506 676672228 880929924 890257048 908664433 21148294 875838223 266967015 661621889 938291374 970703733 193690337 194999747 456003075 932971093 98339855 435989568 971731173 995192232 738235259 784842162 774053806 797793631 802355830 888321086 990114052 994047649 447464793 999145024 766915093 838329793 881163715 899761987 76480347 644889263 882413300 894483865 445624768 658834158 619210719 912155863 703311426 934303928 401167787 860911363 38411769 288981105 882254085 908453613 447476876 855882490 61602953 563958109 540174592 920950686 609521924 745433378 696420131 907146981 514199978 958876401 213767550 863569106 538970423 970394725 529137686 988672317 860837218 978255725 418692411 597817891 219148926 900692335 832761023 840678107 111858593 737435019 627124196 680157140 920308843 966177197 12953558 754712318 344783206 428866343 314315055 375539318 651682806 702756792 821703629 894113863 950567993 953150269 12923329 399807425 382010685 435487599 417235337 717411150 249103366 584828584 127101667 530444006 976939248 977733134 924566972 999220268 265445914 639860184 474620128 664718800 825062476 997018177 521238404 575756875 301091545 853497672 948376024 968313105 566182426 966886107 257210187 308842162 143028868 387186036 648519395 735865198 247084162 955370950 334020192 870252331 314100758 905938963 43715921 586526659 545218054 774895866 213873619 656261924 749946427 953210300 218856011 327527534 385945582 717321254 651848515 808258378 172357246 220318296 594225534 791186159 879250921 895608118 796431746 816966520 990973195 995858134 925902405 973260764 752450182 974952650 981325259 984826661 487636878 968642669 895457461 903955507 551760410 787521835 554366017 975175622 313090651 926084066 771924649 831155681 314812351 910666168 896223364 933769677 261410229 488463458 56309432 265151248 214230903 496371097 712448199 735788642 401203894 695867383 669135175 703222102 995002781 995828398 211963671 213282470 231088237 367796249 850184332 955480192 914684581 924977315 979442725 989029115 177690662 915391035 755691533 885247225 553621191 813253738 382922496 483903797 347312362 955541811 900890529 973384889 167688158 773198349 872752994 877000127 999953448 999964664 988180806 994283303 764968566 828050827 881230889 919128125 197073089 327296776 138990356 894438577 939144856 977379812 486903788 877617924 145454923 849409862 265258428 497347505 111080195 444319368 946432898 987406049 643833084 755104351 685848734 960530000 979415450 996785753 631875282 836520507 291390005 946568226 332315452 461096013 663092132 983596174 565608564 689298263 688564623 926314089 401587193 595892156 415896464 707981266 3450823 251850652 792614480 888286346 221706189 408456643 477546394 830570840 447444414 603860801 923246806 981445760 380867557 857482237 951759862 985470886 977479733 979230673 16114693 507770952 538018737 795136157 741231539 826655067 848313917 862497155 745178527 922449654 329762106 583227839 478297437 747803897 27553996 725536806 305500141 338248021 860721299 988272260 738110214 801527995 180250597 777779095 397548820 752011564 609240835 735285281 796555812 917843283 193391816 421837479 244679192 262985371 566696765 927465801 746526079 971311324 227211076 869758374 352936458 743744665 759697545 845612315 273774567 392237570 442908379 795036300 236994050 311194481 500688536 953984643 761045521 834966261 382823759 828514143 745811931 798631546 886672663 953968967 361738313 421383484 883669659 952510831 34745101 604332609 390858635 579259548 971124896 990128137 73973940 283806050 402416425 657014502 534587197 608003012 726439079 773836735 505127277 888588833 574634895 846434244 563935987 822098485 313432474 584492264 565990437 728129629 494080302 567468777 696986762 962827037 616220222 900271383 863615976 986755763 67707109 841406474 52200500 925803211 80210742 736614993 332895778 842862788 664614702 761287235 698933174 796685813 787736707 946056620 101660697 791521063 441123986 842702619 64387683 258105503 812874768 880713095 562995325 651146455 496885854 875907724 955523274 988608375 121752104 156817060 626883471 671911706 95617234 170152251 262964413 324525273 573925734 786028545 760653120 792276881 602344152 931725810 99012395 339123265 493439249 581763897 244668010 679747890 449980369 580346246 425879780 888804289 513296973 614424420 498433810 834826312 992406561 998610717 406538004 443486298 340572855 500937383 116213261 224900717 550210605 599701335 255381506 839918761 366824684 619304616 520450945 592722410 724436747 895826853 937924630 984888373 98261250 567322266 593182959 763349963 796784040 871345337 812012730 998704766 320260114 420580349 482340444 976281046 520765022 961236699 89260046 158222469 544139333 815557620 936111635 945049578 643969392 829274746 575314333 937343983 404695394 951967435 531191186 536802224 187313373 493968365 479180755 584390937 497100281 957014513 233127284 865804887 899101034 951842107 217935006 421141638 59321953 222652744 161174024 790796021 329681230 896155539 980265713 990385536 699049851 747357245 808863063 995386610 106672189 645256635 780809945 977537234 216180623 985994215 270003315 275440446 656951555 662697854 637460810 658881617 794370428 882703078 217445569 276742430 774073492 821428622 636296945 741296009 337707920 394619510 570498024 808820777 430982567 914496305 251788117 449646539 104602467 285628719 474965260 543589990 108390226 575938406 182389110 318543289 959405300 962483764 400421789 550222188 523707829 740418961 193161629 367118530 700148622 849694408 130497814 448068909 668296696 860701913 689996165 960507322 333581371 911474411 74410070 83962887 105208450 872530446 96062721 791837489 613477965 997894606 739442080 846160037 217197409 770649321 518073256 963560127 584095438 777138345 160676391 808669416 214700632 386256971 707843763 799944942 395513123 980282130 843711317 994574669 233450147 246141744 18497486 775485874 442948038 854074277 22068756 645367494 317553801 784182103 178674734 618480993 175643140 664028630 531595364 636579038 678577156 773327148 156167063 543349150 134209785 874685317 242538842 440884885 742420312 898734459 840193381 960870615 12822247 370271608 482557771 519169731 175651736 747181979 252127087 820855191 429373151 488522623 542061268 675197824 311879912 916062867 92245784 846854318 429187243 551762307 17679439 329604920 37065178 41749464 316401751 905829069 271286893 536253589 589374356 801029080 868940306 929215297 146893983 451284786 994606529 996635435 701545585 785556057 83446790 348358075 793876313 978204800 503450675 759147571 73170673 202388799 207919821 477689741 463855014 825583410 347581354 949045836 884327591 936629724 746385839 876506537 401725904 869459329 253979111 929738065 60928685 730524866 71320214 805489137 962830802 984544079 740035616 888553000 615513139 752213432 376513230 873576825 612916653 982769400 441691131 704466823 911696582 979939905 949826626 980052297 987095541 989693765 626401938 858471381 991565920 998299763 294156321 824804856 968021421 983694314 865594656 988819267 430498054 707301070 76658443 443894959 433978630 887628188 182410334 677266246 687783512 705195621 546667745 587507016 543189927 585937855 380252944 792855837 370369253 390117727 683772692 768253301 815509682 974053552 86848248 393366831 690204384 928816669 853369856 970020423 701140314 935000374 976607911 979888315 29008699 772941539 220131136 595198035 781807263 904300387 98437114 274093873 47225205 278637693 241269749 550079088 466332277 645847744 542671161 906316816 812619282 947173688 264140066 682210007 884745141 948872893 708404888 964142938 227086043 386217189 560239164 825739013 739938293 883408558 831497252 898242920 893804669 972153200 429774566 777835136 605372734 859083410 19188764 115729274 345273163 673242308 849017028 971745307 620459454 862804686 93452838 924378622 591112393 761357356 511094784 739684358 808308608 888780792 197614654 404088087 320295564 653185743 178126775 405748472 736600829 956170444 604939302 754389301 335025526 370908744 856528181 887365781 762526981 920010765 649672439 762537827 280462109 355947238 583286149 645079267 805958588 951162370 768008680 903027128 765171606 941640027 111150669 580745292 766037707 856764502 338500947 974022854 896354141 957968109 287548574 629547625 573227165 646509039 328657096 470102321 413512444 943127368 296062045 465339929 849243532 869164710 174339787 825006255 7934549 708563011 438085283 547547436 939242272 957697386 205724733 810505721 955921625 980685049 659103895 911135751 369673742 377720300 858364827 885408402 501219167 600231219 58061776 952862779 407556227 578821714 647792355 762477723 138818749 425329502 161573331 834081035 919896263 991954553 316150552 468737797 129068549 435442340 306915091 910985663 363074500 501214778 374647770 638615653 532443072 701027291 76489846 342439764 70700620 240884475 854127742 893057023 792599733 837067259 324210761 582014532 52965173 737637793 642544679 654027400 246640108 310837139 679592200 950655034 645027303 892342827 955140480 958737808 198747224 831341832 642106510 726404185 884957479 991426351 733483990 950009052 260019910 319023438 636494352 896252006 853057871 871779569 179692276 544494028 365016998 376993920 186338669 894071282 42217831 316804333 159991038 707158287 373587602 418821359 674740187 733979310 881803540 929893044 621543182 776554119 59166014 785361208 929766776 932073387 698165448 736550266 401515496 696848323 303260075 769939945 312349541 527098704 928076830 963440406 892444933 918829416 482501168 697744964 198094275 772349849 206114102 815093052 249733669 462124381 408149726 430295210 901271244 950881667 760041667 799331342 315092756 659033463 762251780 954826876 623732349 834627229 78931692 736811947 474934250 881346321 193896964 246887895 731406311 861916161 745084520 988710456 304956184 863299134 825049637 901962748 997705772 997782082 927207852 993956830 410985921 681397409 774440864 988447027 195718430 604418397 822504057 938994499 634559354 675932245 622673153 929859773 434506240 922888683 348826870 393182772 935334564 970948278 310486320 828830174 642342169 776000490 361900168 786950703 54958364 828584437 393543262 699940268 28121219 453397344 993815968 999210131 170279890 632210725 766270804 947680536 625054055 870611965 44668811 402649332 331283807 588011682 437801686 758805246 375875856 667777023 497326330 513480401 348116917 469691922 971459975 972995085 64730153 727055345 633331625 860494960 238175816 305636351 295615192 947822615 997259204 998365512 703872252 899662382 476756337 988122306 28328835 958676156 665328237 937708481 645880270 877724627 308122911 428072826 943536789 957468977 121531622 632372051 35664700 745310357 989118515 996372867 530101346 695240613 687232663 944486039 122147498 719459523 303715503 772650784 528791292 936201014 746703657 817460951 162750107 643910746 560122923 924580933 811084558 859830982 872464436 987254171 105194056 807260102 569008445 744846673 736454007 776583476 729317936 750939999 38568482 374816298 961783073 972587529 583763458 955003952 589890762 723917798 913899393 921207076 703316310 781863339 678180823 695927360 541561493 736116482 307267275 441500811 38794052 997556090 423646082 546188629 427427898 870262237 353024391 392247103 218003430 280819505 772860063 855751508 708880722 860222959 816814264 863213884 803874261 966975041 964659205 991395319 554802367 566624198 822411046 935890976 996499690 998886223 856436394 938430280 80161269 987590277 252591011 503033700 224942930 533803198 67613001 176440688 114262071 840671933 766131528 838938391 976938756 991610648 8343650 649961217 715160169 957064755 931198071 953333434 586795337 766864591 881316226 987585843 727868387 844600650 921113750 999220209 520176695 715089768 45626958 764707628 463313238 571731247 391952142 862632872 318778243 389158003 871347105 974732537 911616629 993048051 284269109 538972263 194274578 384014434 398214108 918560254 478018786 832120264 630417088 790156510 559219651 776256285 983857081 994676360 566566219 772275282 293333183 633199944 141959587 177499158 418860238 905559620 935036780 987369252 149289044 234025424 683080254 961836147 191778553 298232704 418793466 935535476 4847009 177517943 282819548 494206017 311021548 485344901 739280672 859999708 209283745 600079902 388444419 978459613 501589421 805564941 484390677 971069642 712216981 912022342 677159795 964006984 755543725 827595666 98623301 356740985 863813510 991379208 14160502 444848645 287158695 634565981 224060670 999056382 180087943 260571394 964816675 991809125 895720696 984243994 165303998 293431597 595840884 892739113 191268346 630290137 575293241 955002295 224917402 368305607 290150235 678683746 289676913 472634540 166510164 650195013 415079592 947127775 285697964 594255227 525148396 779863591 829917690 989439077 535030403 578633945 109699501 342023330 107442295 855905745 92865521 330696735 326931199 844491646 34656332 88526597 348649004 566496723 934857253 943398412 906299957 980482055 722630851 773768042 690496598 691843485 713000401 895770626 537028113 686098664 783961738 820056834 292125748 504232198 227361912 685218882 568220096 852935035 740107228 909986612 271162113 328985226 129513861 832245252 719882175 878497535 390077784 681000388 763221633 912205283 491662583 903257046 701308998 768976292 390181222 896394491 319169701 786224379 858674232 874387038 365753104 616742068 994945649 996624410 168797518 547608772 66933674 976944410 84626380 982579259 274583464 851548459 332231961 834046672 311816967 929880107 335806418 906979789 662432891 846955369 129401859 481899126 799701295 952808503 926333214 977208407 322205698 831481787 950579483 983828839 650470429 912048209 480950990 779524690 141696231 506535007 313689705 567535984 352348253 994748962 694620833 933033227 100964400 589348995 63083686 232402861 16532386 374008944 340832090 853593224 537657105 700377241 672632604 804550592 634389977 857219994 863931182 888464417 333348561 783881887 317272263 865946184 165199920 266207738 934639250 954569105 252802729 551420600 351325816 478836167 521071078 598920525 999160631 999696523 199497962 308607601 554577962 844248511 702944466 759905452 424851270 512355394 115002898 115143854 700456960 756174694 366423513 730330004 819318768 880039922 511056672 856334334 404129410 552621495 1895081 505334370 410284848 822337250 690700428 717164592 931895299 976566120 662545578 689484070 888413994 907311345 169583204 593833695 859609540 916220504 61777078 677190396 574931125 864902833 797014711 876326520 362281483 827006540 591873686 911528545 212011535 370339327 719387433 731905604 514799924 953480936 548645180 799236905 905435177 916806825 560043893 903458060 227427063 267112356 742967845 878502747 549628782 569630113 284756205 573348867 744799191 806037906 225587178 335048168 402730601 699464567 825793358 963930722 132863703 667007554 418367102 662719681 99643632 209820893 716263730 909191058 699699682 811335414 225128918 521738982 971455986 978094226 80021763 755826095 818663031 900376836 284942296 389202906 230272122 899830688 101513349 124514317 414522705 698639585 812491940 871082756 340862585 718803477 638875444 810428877 842087470 961958557 336773888 490356867 865160507 933418401 321559453 923046218 9376000 154982502 176945146 912539991 553321476 676373548 308931584 859109126 766926498 960209748 261306434 494178858 824963526 880542182 597481217 740245740 46027264 683859242 394285200 622039992 594360611 777518595 987336034 991502421 944532198 949122075 951429963 996463773 321423706 978676640 656865072 716258622 489607861 526472790 245803469 615156281 74855460 692927110 310272569 683925829 994751835 997766320 326625384 810566427 575067235 845775737 8173276 935322581 213833082 322781389 318360936 994155940 888265577 967375197 677987191 706569200 2930837 71715840 86071392 620778706 767131507 909147666 661214724 737956518 624506814 697232691 309607696 381021727 135036807 654130088 539559343 634121280 428980676 776102693 388530810 885215511 21181725 944338991 843202740 889855491 723445837 842844237 809280662 994498621 268560449 449109475 582652124 956368108 782541429 995600041 778519276 783614777 855360318 958268698 285366135 925763132 605190959 774941081 988113767 995107180 283746476 388969006 999314551 999551255 715150231 900009781 38331306 585795420 358711901 837667346 94741940 518443799 618597438 817143922 924829428 983182912 810607151 978156407 364751592 768176380 837165274 873271253 58186062 655413613 525258697 920136551 420970970 777047968 748249892 896771888 862298622 982755348 971602883 981146917 872748626 956172556 22491770 858272017 379404117 396399225 153650507 315652932 316353291 459456753 118001463 914589250 450108847 919662400 157567228 751833728 809097052 942815748 23813492 229151012 633029526 773161214 429946465 756713747 919045185 960286629 452797842 715762291 453856183 656753353 170623991 906695055 790366904 835030352 473521698 805790840 86247399 232785084 421842329 491881762 216985775 963767532 138110553 443125499 664456872 938420044 488563749 619277256 865766190 998507412 646894410 757700757 646126713 893373408 681852907 829894113 104731653 498616094 739855754 992931111 651202678 849170159 792165681 827348675 42905266 985760648 775632572 814184835 867076749 953436272 12834990 977039635 892718470 986275109 727971266 744893173 918571737 929250113 423899159 434969089 761209833 908949905 891495920 904870476 112358519 421469773 403243069 893604973 353429490 637067930 78652238 168052646 749723699 954252271 394099526 837117745 561738492 845806548 679997284 715934412 668166252 763216029 671408922 911448916 907940367 977419297 498760021 786967104 581503138 760227628 336759732 564304075 248044974 801558847 2007584 106391188 737674344 891194100 606528715 878577367 584004666 709722403 731153718 825239176 444029367 919601628 231178678 231913196 530933925 609387952 632117849 705710559 501342346 951733676 48351253 806616896 437171576 671920988 1920494 170570563 690299588 741319052 620334685 753238818 490101067 782021057 433541232 606304646 874653629 965011520 340961643 675254603 122055118 319727690 961207961 978311939 559987244 667724844 256682935 338267834 963779185 995244096 65245860 156885869 923506600 936658045 565303161 918545480 506669772 913581566 490200761 995159598 24587720 320891286 693055595 724352962 100724080 575050466 863367844 865775573 654506938 769371152 153328811 391782236 186700056 484882322 659019788 827143232 553084680 724805584 601887140 817372349 567435449 652802128 520523932 733420465 147670287 907812196 773908723 994551003 99427147 232141528 415643786 504806598 615659765 802194176 501286980 797601014 893315192 974186172 353671304 464169692 260694040 303534466 880969846 975179966 428064420 593420606 749720732 972630429 296110631 332070503 265585230 273534224 965583230 997516092 491379703 841586948 920612866 953651034 544813764 995971111 208449245 359901005 876421692 941970338 689514961 928195500 417038531 947065077 697230454 877642715 315142285 788303355 274382406 909988235 11305352 183172764 135334269 546958227 236827383 765989606 863003848 949699154 484349058 747163799 815936225 825870245 695003850 902976449 940428231 998142188 255755866 440052800 471680543 992104881 959970729 997707510 546103922 568679934 46899204 480582083 60917130 223174848 673754187 791884856 40956679 70254827 498098692 831168100 734907512 797778760 580874469 778444556 821668791 990954262 124938549 390355834 613943992 806745819 829235219 847983390 453226657 869278578 178150427 410105819 173716382 826993301 258753261 423208889 414886339 670432014 660146424 731221973 89764865 578754727 446515179 695532010 43005495 527220502 820835447 915872285 459444256 949958450 646982856 733375002 275425316 935407555 266663223 370074826 116289822 324455627 954367332 972728846 391319409 803917321 600406630 741126029 359012105 764183535 148523690 548814073 506453428 945762144 706877711 993587038 919048122 951452092 827682051 921017684 496789472 847621214 419876285 655149483 255285053 436467871 936344850 958866647 991581165 993863910 44711543 71274748 103832985 857428701 778955230 950635758 662788508 928081519 497576000 930730614 453085756 801966488 20492214 245929557 174431755 568269634 899375945 908943111 895768805 917808681 301545403 761585281 830273777 989940287 184028413 392427561 203936110 925594389 311475407 326468905 71154627 150003548 375565288 406012374 358343054 460652038 163235872 815064143 478742771 866349371 489265219 589822287 902744289 990964558 986480978 998944456 731745709 749209314 922872876 941174032 28473224 510485744 59093769 613746417 715425452 821111591 405900957 785348164 561351081 901803009 496746899 955991322 399512395 766685296 577096807 676480038 73607054 969931543 917484159 991004364 59705008 80869000 491479524 866474145 282063754 503889456 750011246 812358128 232635021 699595021 978301120 990881992 185130256 834397763 485314199 815424058 779480873 994245544 193636787 658089221 64299023 285751256 374537280 560744519 471315796 757670798 551235164 910438582 999886800 999906051 380775482 860682736 209864750 306532415 669268687 987244115 295689042 850930973 991722177 991827430 654135003 742827614 398232656 830985425 859293468 886533716 975667556 986431825 665488145 994312418 986437586 994552427 527708946 552694886 230857525 502021135 134313687 230214577 235370014 343931351 347267213 823883008 827267760 950834299 816587468 926047247 671522882 763584165 15485706 417533137 59022426 197243105 610412437 688447796 652123479 816434573 282605007 294889784 139872706 317990609 189853656 892828174 300523134 788313201 822298296 923771731 699918858 729376370 841491308 948451689 779285080 864564314 10752531 971950969 623753997 774085283 816116594 950630703 866717603 929050622 374515110 590548409 660902007 949367348 769392742 842337109 580062846 600491601 123544722 799047631 394791859 504334663 533355241 866116014 875503008 907261009 336016046 886660592 681122225 969497783 929664446 985881789 708398265 722463786 966161217 990776465 552640292 853239618 570219959 810139208 761966804 832519378 200709016 230238711 14628330 488947160 334329759 542524205 164114508 439242391 862579856 999416102 89366370 893931994 914417473 929367860 388650156 952873324 193056147 483487795 160609037 271346683 436419637 621124608 23275818 397895613 940984585 994556474 818545317 836887014 94221884 598559013 992666619 996349196 716533938 732332622 65723581 378999937 712565755 759119977 932836469 974333550 411020954 715757276 607008087 750179363 821401154 965698132 404840716 488469025 36500483 638554209 1651818 46581716 287370589 643654362 72736681 336845368 71513280 881915710 662400866 835077464 493489003 679566276 597699313 841501941 353551854 705328852 380459714 441038708 893637334 949718804 659441957 949095959 427098685 577786872 500279468 772362888 429607379 537899681 540519934 844654596 264887804 901488523 29028423 860418853 80901008 411243653 544326910 962944039 9650490 21102502 121013342 473959060 272938564 296993710 507184310 913819331 558941151 820527994 466642434 471517890 242379310 382115366 478430268 586516094 724478342 909892981 601051752 999339614 317983967 613658999 60227694 918173490 280196636 690810496 694229525 833999528 839831496 974288798 123237158 701320235 19431516 107742904 555266181 953543488 320786517 833421183 170956446 670526280 196735514 791077148 419342222 985444670 129719520 517358533 873168380 892160707 575413187 863917944 382001848 730801727 438802075 855879760 540944733 553395774 158314725 825347089 665838655 686976074 427526985 518898629 816483361 892502405 762103611 947463460 498830228 771295567 362527140 879293592 430452760 685555847 54722841 509668230 574419295 659109037 631993054 897098489 69180444 191411608 436381445 450343594 447507137 492360410 224150396 447349736 935868468 995714469 349700434 549833153 899158198 931881436 670636030 925767536 203113395 589377654 330103763 661685777 220839267 896452188 402537087 873387603 714681862 998862375 617762371 884958476 442964228 851821721 904100076 942260547 35257759 367829069 445755930 699934291 983545919 997615171 156281733 764386975 480292309 670583175 892206225 950966861 827599972 867909915 579367926 822869872 708036342 959146974 861195300 869541701 60893397 190989906 356985587 909536198 599250929 743102031 499269956 905678114 423851004 700482916 495332220 622776285 577207203 905107952 900411097 904513574 64227031 708207145 485938517 814547465 190294165 829956513 428740932 830557695 271136838 405741698 173403677 302452999 809531631 887507750 89174581 327043046 228535248 930235657 654696955 982361516 58371556 469425876 520684472 690849961 355147200 457508386 203842248 457934232 841043604 873559041 135755336 474366966 272305110 435158750 411926702 640713190 881421981 977723515 260030269 426670841 728354727 855015124 797329205 797339434 842261059 991363798 268790281 419519712 302373763 398825621 88778195 646284496 684171586 855590253 57977071 629713867 974378597 986996707 332188359 597923100 236331436 773989337 270527413 829764742 873927666 987783570 539308763 737500863 516774721 584886516 560548105 745911632 265874367 706270006 637044379 950408275 840358426 990128851 348761205 785576796 563139565 682838575 174012640 488461675 972180692 988601086 763508855 818154384 796574740 880401556 121915247 905211293 636806155 789627988 567090051 894343220 926624147 968258599 301433423 808360012 605354146 836575441 658260815 798660539 247280940 798611514 245662778 794118841 82326446 468636381 26286047 301062276 689037692 969582972 350535711 916218154 2197274 992268067 561670412 891522088 265200898 609446254 345803864 536348155 307781155 382250739 69181487 340575487 293419527 824812096 553629494 982729620 21795516 765983280 964617001 974848691 147643280 732969225 749042610 777637639 981701002 984342214 726230565 834834088 462133862 806411487 732494482 966268221 573974991 759532215 203307311 300822567 483667454 801281351 301489014 411658854 423808577 507797547 673025233 891679345 674971957 844167398 547314387 634944208 715954177 841070230 580516483 980469208 126061128 363837323 834689796 927325833 616897000 786141837 968438231 982285496 369519547 934883685 967401785 969743004 754409484 961712971 352637173 521939211 349886902 462728918 7598517 523608766 942355766 995082841 354198504 592200490 950218752 972424140 513555943 926160105 147764582 805546379 591173040 855508082 419429368 882883247 571070584 808888627 119549639 460405027 372045416 938270777 377037441 396497032 662873218 933664963 91906172 194981424 505508221 960564538 634784434 736860236 125138521 533645423 213589624 381955150 977360723 996935826 778261349 974427333 289170857 356782726 968275128 990630132 406369247 640218846 627552823 813849242 271102436 893875660 477645269 947879797 981562296 988127913 673887980 765153922 701746302 792279930 547109192 893849457 466423023 957987246 144203582 302096101 852512315 956720169 595100740 869471767 21425423 903527183 224947229 233063724 866548629 929792867 380165977 476384069 943703819 999445657 478494472 549061631 541019791 890082557 558472924 849703744 908803534 937173647 493794681 889907336 621194059 921058093 592312306 926310897 975696792 993464962 761030928 985305632 32085392 728043797 178952811 800629137 647246490 670982088 221696150 990839876 851956495 891280686 636542799 788233133 319940840 427248693 985956785 998257009 470838710 715199989 580141464 718305167 377442229 381948726 220262261 562275302 590737654 871800643 272907856 965531865 931781739 944731785 726663762 830936518 58825198 839001125 296626430 497425589 626268926 910704487 185781945 812969547 487590100 744153883 767738435 962491495 522988667 538452654 59225663 450698290 684649151 978103718 895385629 997439248 253662481 415862220 112034969 563530955 21954670 382046483 392520824 555124163 628692200 689123809 658550525 783241015 919559471 927120319 418704642 655759478 820739167 972833672 200713868 457766707 325483688 893414785 507142134 942947048 746765 702247226 726522890 992368730 907640974 921675386 3200836 590649157 758065953 792623185 881470618 888419153 879606892 966992675 198134307 585278091 454870614 875432726 528606446 966107181 37170477 452881554 691973239 725343604 522643296 602894432 779817590 868371886 706865769 795195898 407738429 905843801 541459528 559832534 135551173 756694080 899317762 996865229 727716615 881277842 820596631 913086992 458173620 776502349 577569102 590691303 742497405 989821329 351070205 923282369 580613961 639599448 75561027 847731118 704880185 872249432 363051403 441288904 758677 963349673 376938589 667491493 523275505 756767649 285845699 381298451 553193506 876137340 665923542 779061380 490842239 647997267 347494624 558995963 742354267 980515656 455200013 853033859 14233500 621533664 632378824 890839136 66090132 588167501 555699996 659104574 653916755 776357314 383081235 933234902 698598748 825341666 623486841 657168320 722378215 762848901 185869685 403387419 191220850 835609819 744988943 960729906 305779572 801735268 772159542 941845512 994609084 999163445 980069955 998429336 470927748 839150253 919921970 957732578 989053228 991970792 929803020 963626493 250045566 345364471 641505340 963620610 218917716 520727724 603064918 926499176 845234666 962895821 209142515 358761460 41992158 125172531 863889365 950624503 305843934 805776172 534329442 873287696 949455174 997424940 297710382 919728033 790220216 976406424 634511872 747113967 856292443 991346452 244590059 432678697 420810928 921681328 265527897 327931747 663236599 822055196 155495353 511251874 800664154 840657649 263953688 966250575 159697371 228083350 634478407 820823596 351640268 744027519 966240907 983412254 55853168 373488713 574269519 810930222 48147425 950444359 752271582 857255937 195537249 244056355 205723938 958440848 438379129 486290334 774578733 969935236 417963058 864299063 659400354 822970896 926673656 934264950 795694232 931226480 971550545 994585350 713750070 721909650 17880166 451562709 521061923 788151757 834206280 895178143 379429535 505887104 159626566 951736868 982934524 982999853 101409520 192262820 265603703 623894703 654385300 788677705 605795803 761760869 159112431 822073462 202139068 215454359 520823605 817133853 605618075 608580942 46087339 377897337 683846179 806428137 622732680 811307404 37189916 709942641 136162754 825683032 41285872 99845740 532222744 849325930 853811345 972552641 461643809 560798105 826045750 850660591 101161485 103949289 469412652 792209522 262941966 783519033 302536338 588670675 340657822 874594567 414511416 976997554 275946835 958601070 895615253 922531736 122515443 198152758 503447785 573542284 861507958 937049193 923984724 944309400 341996246 365463074 675960640 925575884 544233822 705125823 628774149 906756356 292106370 969909832 858670367 975478210 472518097 753535861 284598304 586132679 528532879 887425530 127801710 159964941 530219566 726341509 343568900 516566571 758683777 906229349 433456069 587691425 433574727 725304207 857281611 968115064 550608954 908478633 614263628 816575397 737296609 784180483 985649754 990182071 600715067 624232997 958607654 967968071 590349629 665348968 573002315 597779476 26219402 648912880 78626290 806367594 681840397 850980581 73289731 979613178 53585711 716390983 143357007 308418865 528772413 629898393 699482643 728179021 604914656 703729810 190183130 636959472 563731516 860412133 65041536 779953873 354134340 702524190 219651125 265786195 629530455 739027845 435925901 917929919 552523568 819627293 964350846 973141979 724493038 728383129 814646158 838222421 29081466 234843077 946655694 977829251 957571924 967733482 661526527 944759013 846573873 860299988 620553127 759208191 885640550 930568164 734641269 882060107 507153708 999089442 258340711 322924331 509012398 547176546 373865908 783561585 165796044 392798470 423094268 554961522 357739639 472639177 969373965 985260599 399936183 897239868 591171129 684310144 911880285 949670275 259092256 694917199 693622208 796228107 436195435 910513665 569440481 642958261 131403664 522498465 381699626 955125488 858749161 984112748 823057084 989361281 418627675 741330453 809477960 815591719 529504586 945361379 443587086 594093358 735767990 847026545 49732554 810647898 904534114 960815711 695808939 921593916 730607188 854302811 504818483 893869568 488633510 663835774 866432146 954251306 132411979 780201574 959098787 999794738 893203025 933838087 844098940 943937245 869198697 984355936 123109342 221262539 451477584 722912143 191901404 657688922 973221237 974741941 785351335 963523104 289902490 897588251 423415944 534379313 948856221 987950647 665512689 765070927 53624194 713181689 84270863 580144407 554581997 664805326 381061509 554136590 591585831 838679479 577083999 926789069 258759376 921965339 405041652 704631704 72501991 218407107 535856586 711437031 628520761 953753128 567543381 814456119 949926330 982866500 788877925 994313212 941901078 994337846 28842710 586098973 838208634 982208225 469995434 787532412 239454025 928551986 866546829 928537361 521036635 896528838 823377789 836628679 871971261 965125691 597647811 842941587 437995298 701245498 390208384 892334006 305227214 840916469 711673288 888006551 659667731 666342186 990481253 994183741 999907823 999911880 820996908 912733395 199017400 609454187 197719154 480425740 479091458 540126323 652781799 996112533 657793521 945461855 21893326 799501137 213299809 689874185 258564434 687533771 713715972 940470743 272395232 320713869 987531850 998630632 792088187 827620421 419905891 627705685 607602234 680357854 564189864 922701088 437629029 942207578 813742524 888018657 24983633 319457427 780859309 887475987 766554361 989515371 550957461 732409531 192573434 390152679 261151331 977125003 281854366 668565255 687265133 785011544 153532234 830319970 347933883 374195106 279495092 314417338 334773638 526646451 803908087 874357580 435390105 630570708 782918463 988223231 752948937 850945103 206692448 313781420 494464651 638066409 227917359 806109249 711736591 754306309 631798879 966686742 539867681 660845999 208910746 545185431 633445129 823537346 917834481 952341933 428681948 895234086 904577845 907663410 905698274 944369412 457215401 647893144 51512388 282897986 99172767 505838088 568552328 578344661 490150368 549249481 410951421 858034066 328570838 409464391 365402166 864627415 504448727 791019048 577825976 854412780 971106416 988653008 378679565 702789672 737670779 957523432 206468732 539821952 662139883 806357835 365587607 486749699 220943404 978613638 107652277 816430058 7198014 684916078 64662023 173717969 825240602 960177944 93648220 396436312 187106171 909514914 546192450 653204112 877946142 951243443 111899093 800732175 474633369 851822884 924549740 941646528 914907604 943326796 848642232 993750317 828230768 887647602 148379765 936075468 143224250 787619666 325767072 625111076 218381267 386695641 265121121 630283475 148353267 441760343 926857466 935435030 336716301 619686220 698264060 944569025 647799177 910478887 58944920 109952694 235393276 620055261 729197331 978160331 126050157 667455944 325546647 563734531 515288942 970174367 226135816 513841721 985412893 998353584 670208011 888577129 927103632 954109835 615180181 964149251 623495829 763961355 304414274 941382958 106751618 514946640 768724090 976735085 762708284 871109159 512514625 704941350 779831549 815105975 691422841 985324576 870032591 958187423 64196959 735856600 65902115 686076742 565354193 926081975 618884485 643551065 988842384 992593652 480400655 501731513 604098392 731801469 628348987 863694153 88361040 993866389 800216044 840791037 610198050 634439939 990682723 995567877 688372766 966161741 397020128 605820132 582785645 958584312 291209799 915711938 476271660 558809404 489134890 820448982 324157016 599446028 748365380 795033177 792627297 938665436 625619140 700268951 802497131 917872178 396071553 850159882 569854171 690136474 48293776 881785638 698253814 997132524 890904214 912261917 672441538 945799719 74619445 122184085 887081881 957345910 945774145 961707242 907995447 984830465 794185222 835364659 587256209 907018505 894173106 920289745 75423309 477736655 334789601 768219001 705662699 913128089 913791194 924628079 561292442 907962884 643035242 873246141 874866911 880857734 69223051 535611470 53032729 57871325 665286502 843864080 374657160 907045447 574191108 598642065 638662196 941415195 380820533 957309074 331944039 542868679 424094417 704686383 109603267 130793789 913593654 929685444 826459012 906290588 492523960 827204915 695780378 808536814 655861272 694808096 626272849 924563737 144347190 737139845 561875227 625137679 364296676 520503843 31048380 583750585 584258452 735021098 242429489 354642678 592942566 711522613 884888781 892610074 40950977 963251886 188700257 519305254 761710585 967873532 131205170 313630006 809548229 958776255 858518221 985061859 244255795 634861072 468512457 923803929 101599083 259921807 116772008 129403761 513428061 875306625 206591526 883712358 144650226 914664229 654192580 671217042 565695791 679142965 136225662 286380719 676148760 786884161 656171335 665601782 76701289 249912300 601753908 811560457 277119529 512112749 556452175 862024701 768369028 990564970 622217076 790126045 25765895 366452354 299820369 512604374 414724513 671715121 505999053 620869303 126817426 715129065 728088638 930437744 592491237 775648569 708459734 736765955 53205993 541053487 835853240 897488576 161430470 351510221 791097807 937254217 414913414 498988175 857603386 943485367 370153383 722111934 433947489 918385776 425332074 857013354 602867179 846488860 541002509 876811406 137892980 882681384 791237374 936660408 888748022 992906033 716454886 755325408 393275679 515166438 42913593 679051209 549794941 888399938 349121363 834203654 682614445 819119607 403969774 900126065 862801285 950169383 974778812 976652392 312724054 344527338 745787892 946998566 75623945 506666235 180600328 560462524 713412208 850197665 986750008 997765159 501378380 518383687 70662614 579435500 238703300 879803795 767010703 781766583 112979714 294459091 211980600 713749973 220427759 875732012 4918796 665730183 451885892 806703456 246619571 715333280 604879843 963115986 733871823 830231465 827619588 985745869 546803106 748143939 805766264 821620940 685376336 820500176 532632129 747345528 479611376 877007965 883666101 952631251 542131687 935434221 150494747 545864229 28971775 366817363 315955867 665126924 485656498 748847382 856907394 933108567 785199927 870028224 201121830 661837697 492985429 655360024 916600525 921848231 781962888 834389293 967481375 975070293 133300580 152910663 824689748 853984890 962825524 979878190 395086342 675217691 106992025 552120937 278745733 815536592 264960963 845634962 912014815 989145713 595336879 884252570 412561299 499863090 599449295 847605688 431363629 528805349 148643705 729678676 317899043 418231485 8786853 986353789 857660884 992582281 644734169 787094850 591348949 829129065 9036283 799700905 512634421 860565267 326212742 727345299 341620732 409164495 596655282 846977930 260407388 782755215 898930343 971939395 502549762 917507155 390022044 550321279 885940937 940869746 92258313 691288455 402020241 420367767 307358841 819405629 514509650 636123368 394955941 482739505 45790707 234343236 4442470 413400833 235460265 287820089 939659675 990394400 869916411 873319947 978411562 990596214 887564882 891008238 871024325 894408660 898060214 928325667 984424605 986975130 78269932 453609663 557782159 672918872 691991889 692587847 433688196 491099731 541917529 639261019 540806002 629112116 273795476 400875814 766602761 998400288 447692009 804837927 642386748 794908132 826782052 882671988 266788955 910665163 963817172 993434329 933874777 998120623 109467129 544665920 712877761 869387319 374092817 910117175 536132327 867228170 424527787 573455063 955631420 994573414 109078203 244397837 801212960 850658306 952831443 971912472 431247358 476653909 627922861 972125066 5437226 803661307 494702350 719424508 268273262 568633458 539936737 775816776 763516401 831066881 659992208 793246963 350012142 352104857 226026337 981993305 444862817 925576506 609355644 796141261 206284736 940073814 33599022 282745305 646067274 767249813 295449258 657365316 3860193 409793108 859427607 926750684 626756802 945977966 842148351 936463131 22014859 814507380 13120099 221864370 606883623 955163822 34237643 187505097 218468538 350331274 640385800 720649947 952159396 975739035 580645782 736873761 909979249 993103022 493909787 649524512 892789963 971572657 452503808 875853414 226659168 792303155 145221923 167932765 81488837 200574314 975885255 978508079 770591512 954908652 764353567 826963339 194070483 640636878 925285433 926135711 707225572 933860559 718174747 915852250 475185522 827079431 311511899 450667088 3444941 844448224 897062586 905896896 713770415 867790252 590622131 771567691 596792623 744186345 409469899 452791295 974723584 977562326 595544433 688842501 534847253 783045271 86563088 155196333 678807741 849786121 287495499 646103036 204399272 599316002 855738679 899217254 308042726 593201375 812294224 913313308 264021793 526808423 345898460 802401075 134262193 196752341 919772745 967812657 712825711 864268277 711015824 951977492 514308889 825888752 544826341 858646390 380256003 516557900 660900363 732188894 491689657 769741795 682126452 846720141 514801820 765210946 664716844 976298850 399382742 699197304 995053654 998702095 211071674 591335528 976451668 998340112 803698624 992721496 646304675 907357910 906984696 919453378 432133637 479248492 288474071 595376226 847487801 986121049 819963755 988194764 856481338 885737995 420712484 890553344 30935902 452293332 324269995 962087833 157025754 907177609 484851071 547271654 236478071 398884832 379110124 638651814 92640764 445097731 778244962 942790922 289665502 418140770 704269616 840170022 862605516 954143565 935136617 947067380 278061251 560378847 89916592 921217866 978907132 991884328 349587920 477515521 886557945 957350897 981106183 985610095 193246055 855811609 869930434 888859895 548485049 985015845 649141505 948634639 294349387 483868452 268429770 853692437 938149817 991096656 581864734 676250329 733124988 903772398 174260396 254234704 65984227 933221523 937499410 986080506 31239339 259304554 743748350 817124061 689451216 907431729 852346388 915828279 400851812 514636595 941113726 983256292 771709218 856290445 727781290 778692935 5533165 878486664 392680420 767875562 527404077 756171021 410103646 788882472 393177294 708300309 705077886 813102429 655928583 992075793 340576106 876175208 886557093 988473772 199530712 975414973 13608055 517374437 593245451 724936288 102225439 382085262 122610838 842339102 978657659 997849002 816509032 817604858 458170611 793804250 488265261 620901408 45805657 786801004 699949085 999891922 135557797 565562396 251570243 982557116 799823756 951152230 40739495 858343910 536551223 975401321 107184403 222191150 568084836 671196851 14982470 198135818 113568059 498346274 288051786 288684704 308603457 763461775 392229607 834746674 151547289 601583919 888249907 940756516 417499549 497370538 335042004 764822957 680623816 747216255 737169068 991267309 688430572 859732908 341629045 817043754 929434731 938469654 866536342 924725229 64807345 788537876 839567116 929000993 934558608 950406498 419338874 946250238 454161729 671745501 994453175 995593970 251984978 538291286 171785882 724600394 985930085 986961999 15200487 785780171 406224257 958541837 891346797 906982430 358494435 676504574 185719088 705938741 712386860 895378321 473442726 901714586 34531966 370680942 655699135 690502953 357688851 769485918 848624672 903165790 91569088 807560626 679987008 957721285 216805211 726261743 918302029 973230181 623620580 850367923 417790742 783572346 61176929 866243500 354706982 979828209 487259059 920412417 664933805 784193042 252030488 838683171 366610426 430759723 478010261 631336790 153945924 867843891 418524455 472681152 54773816 801097319 765969220 836032933 397375606 566884069 927205390 957158274 996932405 997584944 194314653 217006823 309588776 720859007 773194695 991838643 198881380 667372364 872871095 937702406 332822290 902180733 89847454 316331764 879231712 977938330 452752635 792661756 626882375 851009976 710671555 961533566 195303379 424145098 254073761 267167652 459704846 701057612 247562100 367196159 981844356 993501694 971793609 980785073 124199688 328390414 628865229 870805078 755953371 827966609 169845376 589331021 927594834 966835969 433004362 716964012 989207509 995376833 57855026 797134063 170711270 993641908 730995056 756588310 506711647 742344072 213567289 592973907 16606818 566656842 282430398 880038504 577014171 776053226 613102163 857105555 252396393 667204810 86388606 485728825 791311186 796380664 764956892 766916435 641190618 937654111 466574978 502242780 818589829 931094816 149291183 532644271 371089110 438457049 661379366 897087768 459435832 629210239 170197271 337207145 521157018 548883221 377230530 490427020 372087952 590859692 276570032 876557870 69495252 860816961 279604875 586586092 342976447 574633605 510299175 724029306 970599819 988273952 340086987 533498632 769120945 892338883 624733654 970149802 421300472 511257425 189540386 211389862 967784723 988243850 430825880 547409565 350134309 652259877 134086244 198031632 912241161 966696733 358172031 910772693 5220268 860103566 224351888 362483689 842786561 847386179 550914551 778350513 589070409 762496038 91910328 975287496 945214720 969801515 968575980 993819546 195046840 944195877 359904592 620364569 250731424 842262428 521430006 566692072 967259882 974325506 286201401 329973563 983752448 994940964 664447110 728296371 491543366 918324228 333591687 942336417 39627516 506874988 683194144 715020600 422366804 737750601 507573316 673162562 23221160 497630710 645514248 658434845 223811403 580411796 56084753 144045532 188444771 380844944 104973112 780514666 400076381 597787972 283899180 778549025 409693003 483919241 152344022 194092919 68131040 123509399 108318351 981367359 43675997 989987288 809277388 837039346 612423342 778127199 339909544 873067910 216372425 877516259 259989742 556528052 337183814 505768633 281857103 403147330 507939112 645000513 766312759 795909512 818125542 945319265 188472054 658658209 474783184 938674258 908082559 945276686 703451476 709468254 294032363 691069976 827782773 861965578 493565582 758377089 891627598 976242908 79266563 694029684 420611785 966510186 587798911 959713146 975135673 985177097 809722661 892316105 409197026 466099745 33482682 634040552 83062856 576904024 226676451 524902082 447017630 888689409 301776644 436050640 290264241 776576591 148647106 668836933 515286944 836199110 281917993 300865677 433183316 607319196 989911237 992880979 561048148 701752300 911960818 914178930 282875850 408711694 781943558 830535604 843456862 850922405 83874768 732050448 729892444 962580152 7144347 313206820 739316330 764782730 93023876 824542042 616474966 860890834 341676796 820296712 102962033 658445740 838570476 857910009 601858354 987343804 497417381 939055931 398451348 713923172 842029362 843445906 971310469 978750724 236795537 799915516 974688851 979051269 734775754 869697841 765780566 974765449 138398100 980827210 93174611 423849612 234753486 645286206 329857040 963844707 933701083 991458699 890296387 926398461 211021119 908485612 209413936 916476141 601113104 989335930 384455228 657667744 535327314 562364076 480490898 962350609 92204273 392764664 629547850 748221356 290805545 757840394 636049128 906417964 868402795 882826189 459442531 487516194 148996772 483949372 955988828 988018940 646788822 700639270 567534227 778240913 883292335 889392992 325908587 613706850 940646254 982219762 858551473 864345180 271273968 470053741 629765211 761212524 281518978 328525074 186667185 973089685 45371523 711746379 949187915 956155319 423312414 714848217 875071501 934252382 531703160 685500431 400625243 739165735 423315303 726375902 619475433 845305890 632669117 963060231 48839140 636950949 230208444 542336497 305855766 526984529 696544729 709504304 69172977 82998357 533742170 965404072 827144269 831121324 716466843 775986942 341974226 993067988 149031487 859004221 605812292 891002705 196679800 951079155 560482464 959489668 284905800 704932169 820237822 991283292 894900565 971351800 102183277 429860526 501678451 689027060 853774835 905769756 273046444 584344397 913795812 949822366 200946830 966583705 422920771 909348552 730751676 915222565 199446039 877294741 389886785 975546424 53538759 580583141 374180321 416981043 731701643 801818622 41079531 475089733 169544763 569243529 157927247 657365431 514220013 899961368 745702886 773733580 394627459 450880475 329111075 969120331 471041450 532978384 381831763 592386112 458595284 840002480 642284007 825441716 349057714 987463061 738832056 890324392 454572638 533855952 167634459 717109707 561250338 905727720 237545972 716655092 278233892 646755557 822833534 858477994 609900973 805453301 851770770 853515783 665110750 667525991 847270243 848479608 749751762 889702361 584734140 934262830 159373991 673249645 333204363 849982044 111863976 993376279 44476976 851384306 874606774 958766048 86995304 716594832 63524177 151942695 144015846 593632742 186655406 775910126 703959495 765901798 937700673 972222182 753419071 847547784 638168254 939220435 210698423 573011998 443509546 648702867 808405538 927081270 602555205 807781942 762783284 784366872 547464999 711968737 637822550 777862968 761226202 865643395 693532863 796399690 745381943 966504156 603910852 713766366 310774291 840045112 260939802 820948127 285679713 419988885 401608743 947496138 372980958 968344501 835110414 925978126 126426232 414533787 54970667 113605581 844840473 970545711 773241989 927522393 650116337 721119653 545480000 682531537 832732268 966632004 657306809 953335211 889836651 966723246 38159237 485952481 995459546 996841285 389821291 722327251 718674742 865790353 634033249 668248090 37287046 763253973 500023908 658675651 386170420 647884108 316521310 958646239 306826685 944298548 815587336 953327262 129457535 254691807 910908043 985192371 805913931 892530580 701253030 940358657 445016277 975512434 999926703 999943597 142137277 709476311 637835395 707446442 21880346 509678435 141692326 736762392 152799225 240947043 573365656 693373887 946538208 958244657 310993563 621903021 730733854 923737333 169347604 331681130 31079211 327618731 338564890 619068729 871079117 922863358 874854263 929137577 978382199 985142832 154198763 642310147 524617943 618604220 285912079 997019822 468954889 832286582 477259791 894428462 577368947 736031631 597934574 807639345 921383631 956024546 520750378 741081724 587035207 623942707 514417639 736930436 265062959 968181387 518328973 572757728 650012075 757718960 261347914 455757794 559954520 992146912 775754862 948710509 195561311 738696064 397727835 449076550 454351529 479861649 638499865 817725026 437584928 618825532 270610840 919429951 798888211 806005668 722080779 959600926 255885542 721292752 252798785 566280317 890799704 928676142 286592514 749488192 951773797 981447966 928923516 996526567 94659060 744054041 497028760 955552378 799912679 862334164 864854933 980540937 754314162 960061211 747437315 824159692 481348242 559822931 684161780 834705599 415801807 955129788 408479605 539342913 326257686 467819746 401245704 664690622 83465549 556096861 904705400 930154206 689380055 798359608 719585893 883151745 130803934 734518034 639963285 686161342 720824732 753130041 752927957 874763444 366392387 648762266 922915050 967070937 719089868 868766421 237000119 619504190 538106280 846549453 977903868 987033326 90762703 696595871 316228480 436576310 740545728 936768935 88407978 974097422 609294201 998204567 197898035 841378857 762531607 932261005 785494365 911922224 877193860 962830729 869575764 901303564 509013769 932687349 276942149 741361679 542999377 882328938 193414885 914935616 766461688 964403714 4567066 474371135 582227544 929377890 180923072 977438358 447733177 587349126 206219464 815022495 373856625 800455901 377335503 915076183 921632268 993565425 866550048 996076701 504885885 599040376 296119593 978756386 57869181 712136826 59109256 84304773 37213803 919903756 424467678 428362448 231901888 460047027 576549864 756717955 957643936 980099647 278548803 636006747 275108839 979711600 799806527 846658899 298965648 481199322 987299768 987651831 460873331 498140381 832110682 852044332 76946684 573892114 173279207 646551385 650621633 711516512 886439883 917219726 473529742 684756105 481538316 980888637 415988575 591194673 924228101 930972305 279584536 863041534 626182715 829019633 682333205 786210141 927140566 930725232 265831318 961216426 621922490 660451152 474425122 984997268 711716790 732691900 56705255 254366998 816969041 867437569 194587249 355562754 115785069 667531918 936185530 988088533 862239787 880091988 340277162 533443805 71703367 137573900 995900730 998254629 284136437 838003848 992089712 998440393 419896153 695346185 628212820 843823236 345353600 547927890 260054056 394147632 362776310 680725546 183012934 491471211 218477473 622314959 666608216 952469774 797292827 974347655 738571288 801137291 299504063 425743284 876512838 953039446 160267532 617544664 81759106 998922265 346102493 684658737 211101080 855115579 13498374 599073153 733195369 994897706 782581917 843103071 621988550 805647666 886852889 999229663 518930144 634116527 512183395 971257349 7671968 570145364 645197279 839411566 536118897 974864027 876105897 883481080 621705018 817223252 365882107 524309509 341745041 883471740 944791823 960259332 569580763 974168483 787880319 876836955 169943478 754143678 994430366 998455300 138226258 763280275 820695776 876030131 141802340 903613428 836868267 986036826 302057298 715235451 956567607 969435796 555053912 707743610 124979817 261030770 951915905 973256940 326355173 894487134 594596719 841855743 724697461 727143019 681739738 818802771 44060944 608600578 141998431 357572964 890158367 984765005 535866667 610676320 288219747 903046298 923169676 961878418 478875174 928610020 139691792 575204827 470202173 629047796 898956302 904869449 821696904 906148910 885701049 923619509 963244435 971175642 514960426 787347121 394174025 814970567 433582044 790372408 598657042 932075514 969425440 982997480 646866019 838367888 161738426 186166917 704886086 787479221 929928131 931544818 892653387 923023846 336976825 692969126 187674371 246345468 271893507 668422160 227446532 951327954 838884509 931665601 601227256 976942639 241591089 885518861 941896446 982547016 821943267 927892124 990324392 995915284 45543892 764663487 887284653 974977424 791573157 884834942 987519059 992471549 641120939 773862204 141497903 378687429 807533984 848584228 617198344 927353914 449685893 538771172 991718568 997511016 692256474 712315815 703794296 722094522 149946440 160170956 288546193 674714111 486321486 835808128 447112974 550592369 806127868 897043377 964395667 999151804 583405820 938348183 614894993 914429375 910236615 932961067 909966285 943940268 732317951 814119377 418208662 561911494 765818426 856901122 367203078 599913321 432715135 698065043 557947502 615120957 695586861 701190877 832029579 965531413 472449311 569339903 663218182 898900733 533427531 803467153 976937572 984702480 264823476 875138427 167374480 545081356 310832049 430860769 16308702 257604244 10247291 879365057 793698101 945211706 186218809 429264803 517880284 931025021 862972945 910652842 792739306 838202042 770532477 840552362 228383617 312705925 229501459 412356888 466069573 676812963 34964693 636166458 295798729 898444954 771316047 805088373 736529935 740917133 794300309 908083890 666417268 873789159 49355898 276112330 593980447 834014454 440247135 839727987 924957600 946484661 724213380 957008205 672448486 680125633 152001767 551895292 731610864 896896585 124422261 867326594 695234965 727597004 810347289 834617072 407252511 637457838 453306811 749479170 142790020 416372949 448954581 471994583 753466901 875922065 598051510 599446027 623792961 996315088 383997010 524348973 246347236 585221918 995696404 999594211 539534395 834457326 538720362 556132427 761282275 843449848 44983123 890119923 818464332 920081952 55825549 125710518 762961621 963969651 647634910 821163740 852377713 862453036 468514599 901791023 967795097 969713755 963051442 988136067 940048097 986390483 52336934 812220622 284403025 756457746 50480226 657094841 70231132 267868683 621053410 980605413 587024082 753181526 869642763 942861463 310061473 731036933 385232566 608518966 854570215 972986772 175056690 286284394 886028369 948355963 922926820 929176612 650535937 860379340 456687055 582805070 304341195 329756804 949804148 976720283 470841347 552071052 358294231 563098987 261951480 537972664 958372909 973800855 298093021 843836625 483747807 684232235 567676327 835711695 31477226 541455923 449742420 655402159 835546408 912921008 279755150 634944325 937152448 993664011 722472364 766014821 709843872 825394710 270033684 858830367 725524275 807805731 911170271 970765399 599756933 973186753 935967670 937033144 284437277 662846378 149521311 709464210 816948421 902238708 477196836 673439342 66623519 495220461 604700688 938883033 33996483 889494785 91920626 760249893 359213813 599156165 62875192 150974143 514765429 608370002 59679024 867163224 480079595 587778880 384695193 888262332 607418494 831076580 486296354 901197439 691189515 942010791 791180767 882557471 966012769 981982576 690084725 874276596 582628579 844706333 946446503 959691854 728983141 749396847 484016123 733786101 17847522 107834171 112638437 312551933 433427261 592964042 26038420 760344202 754986398 807002577 63041646 900472805 672391360 758685311 197260101 335513350 868947468 922861366 458622810 684880962 866066961 970151716 210372936 386460063 661005389 870017221 893268860 980227035 89064985 204294488 626209007 967487879 768243498 945803161 643701809 944184781 861807931 914392294 281541027 618856360 640747081 674279172 116458457 644762086 526600856 785381166 362648728 583233711 380383898 419524132 865713420 873846184 872278690 910863319 728394989 987517687 839376446 988614261 885956957 915644824 268759889 702859877 886564024 913371926 645929845 966367305 896262736 970981305 710894874 777997582 650945322 979753312 87008353 145427623 199082550 268278239 3059932 754850691 750944869 807107020 995418442 996529074 504612850 648935473 902977915 909685355 136567220 207083374 403335095 825532581 956900740 971737944 24336148 991967701 818707042 947692172 314581931 802497785 360390860 877488575 912273818 975016064 267949717 674027960 290912404 911332454 775563887 831175676 45725731 804570366 655296759 689236221 39647879 279192248 984079231 997604869 478502523 785058762 500514091 657439612 170114734 289032524 672018775 809202441 49818306 691464591 629725393 931965689 90358501 186107696 939467212 940580292 958400729 963465713 925609674 999573561 699738763 908374573 32371605 55302605 27400743 204940097 228016246 836546727 944406000 977177573 371855588 956729282 543712169 611701146 680203366 708793443 413556361 499824561 210513724 948502833 441097059 669863332 646841627 846669747 929484935 990379413 419321583 666746721 124308548 245972963 830678157 892341691 277514039 380853404 45732604 403772421 23209482 561926912 846230258 916543336 805735533 938547333 822787089 918022222 488172291 615759339 943149518 959230672 150971870 188136361 165799786 289395694 111419675 192755879 247012496 705627812 196014299 615173550 474229970 913138412 946371459 981948012 457097629 665459491 54474653 396305713 926878353 977699242 899904771 985393004 946710828 955076402 420231161 747964044 404681012 799658098 681772549 731103958 73105392 854967477 803950643 864152376 573252798 942238562 500537183 624556854 236800549 433733566 570584331 570624805 267337939 466780602 605288237 697278027 877733035 880812989 602944126 928995034 839864750 998300341 794050967 894648354 732830908 785806315 923495434 960091179 74421255 857713183 233384938 601855479 882116827 894708373 931860759 937433653 221455585 883525113 850370257 903498313 266252345 295676664 563952258 965835274 203390219 217327412 987109081 995211636 415805792 532605833 582757307 843915665 133315741 730127712 760167995 955365791 505427542 594532099 454443442 941658072 955157722 968119651 209068651 721182108 599817746 664113012 114757346 591284405 474686399 577355738 307409786 991216419 16314191 398186747 321028118 455815932 742540076 903177200 287615896 497643912 829763398 986158283 497606757 507327706 160418756 266757169 437535022 774887750 470156465 767388726 261101773 832624594 257193554 421101240 34259836 991578061 837747317 973403676 561542622 896272063 654567408 905408097 457149886 713855407 315315239 376501556 429642315 914587208 576355623 600320948 710519768 982105499 712304712 830653197 42407914 468048964 947623674 985754398 845919995 894589677 34550314 244202368 20650627 235715104 348450459 642859370 378916443 562843786 164832421 387518276 193453388 538031368 376597925 832407326 934081364 978576424 505905108 941083369 461925203 506050495 772060160 792806037 637289298 891169111 18222991 570533217 618082763 947047935 541074319 657733762 735822243 795630402 626908305 636805249 997001722 999569152 215870817 744511888 390025918 793250745 686468585 976239918 892614162 968952681 586113927 600839439 463431338 689357269 852712612 887059903 477795375 986632964 853774192 880950585 58143200 279626324 948801395 967409659 54043402 472350856 393609752 471382545 272966574 806022631 712704465 916448360 816674972 981694211 892835925 912886670 278536837 532486249 865522312 950875819 954647261 990713742 403862336 592571775 211138641 461704370 472406344 477016860 75841394 305836256 978149034 990658915 429612188 891853099 432689851 997088346 632507211 914557191 647773562 845702569 547028594 832355832 703373462 725582640 418154341 767224029 789041052 874311032 429744866 930137634 34385397 652591687 756945575 943509769 785346321 857962348 896997258 925153538 843463850 909836653 199438475 729797528 929651093 949122837 262315275 414466548 248211971 828334197 359795120 889253999 861455409 887505130 75207310 177121964 454819773 456318353 392630930 668994674 726382727 733724934 402636643 739640615 154013889 840946745 223764293 300321875 220748957 910288768 23806926 547316802 601213042 696145592 429889920 754912528 852732382 934385082 309590559 977431202 310901925 778919621 233317751 903292498 197189991 850931634 781670439 953976333 451277516 863618185 784550674 858948358 445220865 515858903 382142000 941264209 747047041 925835682 873677942 907201351 125005167 164448650 850106319 923705462 127272163 526075781 177327923 472975699 248837728 551064990 441954126 764388174 861771356 977467687 907234432 977028079 552544417 848554702 511926792 722215371 960391422 969694852 536377336 731225009 88996334 927017362 175412736 664040890 249794985 274427362 859690202 924330207 875443705 945030774 755532929 919487523 64034249 932383649 611036665 770703434 84977724 598119668 861662259 875550712 410108723 957809450 463776352 693841405 412106765 566632354 338206052 591263962 666499908 871964009 267158675 892567794 260840400 581858987 893673669 988012237 111672250 322839416 518799487 742638497 645612827 988421678 894261982 980053219 401911133 438853348 307025895 653495245 19259591 192976106 845168526 995910854 64311520 924536881 834615300 943762050 433674010 820101633 768024820 849700819 590556920 847841485 303414253 890568098 588711108 738450337 67994809 579832970 261226305 713817445 499717682 887816658 303993504 725212784 401020363 485764827 357681996 523303941 605340168 944733925 78283786 695411564 658030299 975809930 302972530 513798907 15571961 555063402 93927214 380706505 588134209 929571075 278487771 633512372 485573942 817332713 601582025 667447132 963513250 972542865 877545923 961372334 66861108 495284303 795508237 806028117 876021117 877017319 805185797 816021898 782534750 820480002 882104737 961774044 192370867 922674547 147255140 741351691 651099190 744115200 725892930 937186674 735468539 773806247 395541928 593718490 672515192 763449329 585405135 739467760 973830619 982308386 221060667 881634713 634984082 846265080 919481824 975058214 954025443 992072575 209199965 858630672 185418331 534370213 584016007 702763541 618426574 789222855 489905692 945664553 157106044 618728714 862234259 867564180 52268807 662762540 152476092 400406440 696192633 757908601 284488901 787127541 584293312 733605582 439338623 780169297 383674612 845163601 599673352 606409279 996721667 998046881 757191926 925553720 609724331 865777313 598920622 797248219 82264102 857683798 301449445 836197244 672675504 681710019 694777194 871827520 652070835 778982833 319741113 628893940 408583261 753907586 812137444 977190929 113211890 355639582 734540218 871382633 789099634 803509977 763021848 925228116 93115549 216463049 988434608 990921756 449929993 949757084 435300351 440060384 700485146 708421185 993660634 997389704 61762388 158925543 630028216 846146521 299966200 784757465 912168937 954799691 994240116 997515047 268367716 770456320 913628339 921066378 321653784 422979754 939217713 966796026 965850806 970605646 382002226 552024360 944099313 983549279 955438468 964765483 635573352 827090605 544580132 997680513 414113392 783070596 512859185 584859479 427655055 637762799 239923376 727414297 34845507 57982440 825992965 918550609 809400305 835544839 298441989 427817719 300814410 374895712 427232263 713974225 739737611 811944954 541337495 847484614 557366173 679001974 912151701 923715837 720961271 983468410 133834946 391173558 623715149 918021739 649570981 872113880 926798329 997834068 572613603 831501756 997345807 998191063 587361958 735684161 635999206 883525861 584390623 816456841 852205741 952678252 803206710 891516157 246287465 299105668 311236664 800164242 879891133 973830405 37042600 122504414 188577710 743409762 911494981 917860147 836988614 911546787 464349057 544751074 811273118 846471215 946986949 959693385 348038566 380925498 797518753 913750909 934960333 982090277 972825683 994653588 354375886 484668006 848482800 950840888 886648909 980662287 974366511 981791760 226711142 653880295 504581685 627809611 1095818 159263919 191517274 787340441 667877607 795223982 306379400 988048614 640897378 967629282 248756863 648096597 366639864 962145885 307065509 384504637 810511624 920487253 261618185 574408541 13218686 363268317 745755472 858944372 685618855 690006065 508240874 512876703 159853859 712639864 467954007 812414148 781188691 873226034 981570501 983488149 574552627 953560479 562311191 717668673 308294910 877543183 708591989 935821295 317414375 549966953 293354629 866167542 677959469 828239534 555424494 599293064 230164036 551175566 513993838 760706063 913525764 977515106 154278978 552739783 501012570 975706781 659046668 708240727 619810191 698302074 923603451 988618415 151205208 981048658 290367793 889095658 30116329 584708516 980297103 993342803 497143954 929672474 636754029 963702228 372427968 535712660 170624013 866186975 136317189 645666046 902472361 992877329 731106459 849267830 914675799 979143889 446520596 788464446 949955505 966687121 231533035 692332932 388537103 996441687 513344421 549053604 215739370 577484022 871118381 981860342 232444122 561415001 522124739 587659096 26379339 420665918 290133082 470882909 965491782 975699796 805052051 928112832 253746721 650289902 782419076 856755094 135291453 646004332 713152448 720795407 906510164 974428453 150640872 154030758 537230759 539364932 423358814 847199781 866568612 894780949 580052607 798616856 73883405 449514741 672621037 753137317 505084886 977528114 558892737 731166873 959917149 991434188 438615562 846136924 467219972 859890420 461106846 893100285 454940156 597234079 414624819 581415128 725444777 782005740 536579597 986884509 891289101 961363370 44549074 866356093 325229840 633624786 584151426 872750494 383604081 569969002 480314929 633511905 153938959 196920767 440649079 708530266 719332574 941837833 691224623 712357047 198000423 518840178 706639685 955771135 648476676 970419205 691864336 974493580 272715718 422044760 603827621 777229680 102305647 886010326 826989259 993954186 77513789 647783888 224317148 664323245 89448532 245697454 814600785 838268909 408943777 480798339 535659352 682089947 318340834 750082781 307646572 386396341 100436741 399981767 735082176 939360913 451002738 734314364 776494643 872937411 697596937 705007710 947989101 957713817 738867117 869921284 623692724 924076090 929656172 955544210 103421149 463332267 94337899 837324569 428012911 757291322 459667275 491097341 615843419 706063850 177498699 384002304 68334311 992353706 620631493 769140151 865694000 954984604 487093270 867428401 742189410 777570870 754933679 883439588 959595780 985937011 415758081 832244032 74315787 813340868 889735055 984446541 290949716 763172884 269917648 313293512 298120367 719438212 18697826 611398403 154288603 721638548 277555438 864814367 95566636 805214244 725511030 730939659 112061853 316711900 404894145 708780927 520062304 666827597 715912699 996367031 912975142 982895982 579064582 640776130 681160403 980188345 138007935 418300655 872024162 935273143 495624205 813235276 989332483 996999937 324066338 488889931 114902052 466005398 603154095 870838343 651556881 795840209 673278481 748233637 521992558 967302449 239276705 924735115 718413603 720678655 351335681 677866825 854738942 945075228 142014069 246807146 940797423 980993565 813572728 971987355 20884170 840649925 981287989 994452666 414768217 782405172 357521432 467396884 78514907 488783871 228462980 323372558 570649613 687573263 749116818 889041943 612893513 706545985 691401966 729759711 508213948 754181983 231370900 358566596 386390658 490400430 663604568 727373274 200810290 366850586 244504312 790003303 184186489 384444817 417337078 754400919 201912037 645826614 372996173 431073379 667473965 820808528 312504348 916168649 347708577 751242614 31110045 285307171 714976034 796600378 173717884 255275456 786904256 832585533 385943148 413061379 723849978 731339402 247238920 883585619 620195441 779426456 853938575 929778369 372251673 414139131 999963438 999979758 554678356 894401892 688074417 744406694 726087842 980988990 3204017 260445927 517149749 968702884 283486212 970769563 582470142 706061333 572356760 889224040 88405208 932730639 183364421 310908141 808207373 905925218 57094712 520905381 670917016 881991888 554629140 715219315 796864411 952620342 248317314 569839335 575260695 716084603 211841961 923968359 174096844 568793643 860525623 989897150 367809605 792205214 563239381 951584649 783831940 785934882 695608587 924571518 787216025 890191958 906992819 982840514 199107121 643340948 588994350 859627400 112663533 163401896 376423129 611733385 426182528 507951707 775623789 871528730 357337018 749032094 58106266 692909509 684465819 801829828 176408504 639931064 794980980 883382660 840159993 940669288 92197982 586115197 529516924 835015096 511191859 826742672 538213466 761763647 277094573 856802392 684721179 839054120 705806266 839039619 334946521 440111151 739408132 934234751 174073277 833702464 459106297 910179534 905020898 952124645 12178021 914798667 207267136 810313086 264039458 318432339 378507292 820955822 249834304 784000383 745031164 776890071 629316151 652137344 672018875 807975661 424173697 873520573 418005317 706775576 439223199 593644142 943694081 945895635 903852972 977409195 351441921 484955489 481026536 530223058 933202611 994756056 567076136 789893205 78247015 284777453 183203462 339053739 143466827 633681363 555422628 911423411 617878277 736227081 254164084 357415316 47817069 525065217 108046452 925644522 777532231 998066773 36175103 660321500 594907368 900735158 207798543 453592897 229353892 395623159 122703220 288171326 769793785 808205356 56418476 664962953 577438006 836468193 737026087 861306955 824288399 946102486 582547418 765195672 988846464 998227124 182426772 872819738 540393087 865988392 878386926 935296832 430459011 540444909 506054142 605297050 629989409 945078253 810030008 868629181 176180388 277894173 187252911 988808478 198269221 415236412 774263377 994432374 886464139 902053413 351337189 540661108 443471914 643231233 317141120 727164411 910695381 916689296 273259921 933063039 89514700 274185024 542202462 808689846 346970445 800525986 78730930 392689464 880059852 928224487 261471162 346937338 753985480 892600090 543020082 837946048 19586749 929441269 892767024 909383994 688403567 968508068 953993080 955837073 21739089 910957339 462824193 661607440 562847289 957395897 986509571 992009480 120610281 317018902 635143130 991339399 245380211 545328160 594912116 824574205 984071165 990470116 555089903 862268309 5846361 65703675 807613071 898823069 33546156 756590300 593635077 988452293 885917822 945127480 49175499 818255388 542819800 857665121 544006538 633879653 116869779 462161487 66590937 217731199 979460111 996661496 307831119 858482200 270630810 443108365 506422696 634514267 935217036 953362075 231806735 981623596 24955968 836869238 333018131 586409470 440009846 808124344 585213690 819908229 161111391 540379218 364597054 584317949 123806693 367507335 162183535 485236444 772418208 877515798 576869629 867006663 62636949 370805118 406076123 460504877 907134137 995712750 243447329 742393391 221772331 719890913 916185063 983671890 204637570 491879372 78634038 415591699 479368405 667527278 783501367 815656596 802809054 869131205 399755607 940951688 522592068 613658885 169497764 930122724 933547517 982686494 839678516 975744634 825415167 958036762 434169451 921691622 729947095 771571050 574291198 941283105 425744231 622160333 614158732 668191039 740181199 997646587 264174474 540321901 288108627 355421931 162493298 168337846 467985590 614824978 285482564 585130166 138055023 179565531 345090389 555545203 541389746 867742603 465580724 714995521 942897154 990424082 379230537 455384549 382666581 583801148 47333677 59052677 150749461 205695635 524770847 621321733 36492355 629810370 589980023 918503594 167367982 655815627 771491932 856363237 938838687 953936729 987058167 999547467 663038319 914278806 454558362 820146373 900583098 956682307 846738383 960311947 652848350 810641806 577754436 684593483 653963260 958552086 910356809 937311188 733927001 874206170 846423743 876831626 830989965 975777044 153765901 249608328 839638517 968136760 664716304 694409064 234489731 261014664 584123566 780941153 393167529 531442889 966161985 980015157 38113962 292513760 993957025 997349096 136559290 855977866 886408917 981050619 110594308 483865013 249002418 450628319 134249296 200654186 178899280 713672787 309538478 687769543 933149413 975772450 220182772 952329618 635226812 844074712 737505137 987063762 487339133 843906428 531589094 665037820 915765942 989996217 675230374 966915143 542542008 795572863 385601701 536591539 744029053 987860961 457192074 969205730 751712092 839372483 628830 459040571 324243596 501026152 536944019 795618368 356855668 583949119 940806873 966096256 138095607 574952836 262502083 342530626 190351248 302379711 276791858 605333186 474147822 662716605 571346200 783450530 930631545 937995143 719493205 946527835 241522813 720663661 95905346 527394716 903795693 920795270 221420816 549530043 870503530 959948833 668575673 802908769 802268694 844082018 810843418 817851469 477215658 943055187 139571441 947036539 129233282 658009642 876364297 890774450 555223480 849209098 577015307 839686571 91653310 585605850 393978306 968515732 700285422 850240567 934436402 951677891 875202679 913772838 783878611 809254299 662116714 821390950 667676564 954309907 583829117 695234379 764433406 981236933 159361399 339810708 722102178 734265434 90909009 93071706 157105244 995431141 508700344 645378864 306904192 463472306 79313024 457591470 735338787 740207924 722929691 928568088 153740834 320373382 544960308 898149706 383195336 663533884 951639670 980499709 155206255 290398634 390534165 753963176 890174118 981174306 624892440 976898092 606655689 727533103 68069993 698019050 107185613 893208211 345824208 386874373 240385299 993411035 842538572 933210243 372403013 791028415 516615807 886991861 209469075 282643168 648132201 942499908 712792421 900532215 315496671 878510683 236053503 518603737 46809230 326156718 934299256 950239709 453094892 834259716 729760498 998037143 652328716 692294171 688144848 710057463 429941057 978161604 327977304 353438699 191501538 651108728 783365098 958433180 827269366 869836854 324175680 447124613 122714779 201943100 977378921 996546648 314391796 803992977 304316684 359761028 518870889 990218912 688700529 799788593 943693161 986089462 257053596 816870535 918013978 928826783 307532080 349478469 661841133 987304861 383200660 392272114 249661179 462868309 623765915 623827138 835373990 960583873 222430712 939477894 171969583 521259305 98821734 537395293 21079746 832047201 778614588 959417416 508653371 655030573 679657169 900552308 743608091 861655364 184369672 565800073 702393287 898437983 368635392 845304365 130598862 868916547 951939745 977284197 400281435 926125821 40681135 687305840 817807037 954061229 897910134 901801084 171835690 925333111 923607419 939261776 815247451 837236759 744843484 877506362 601938722 824958374 208011398 839667774 483143773 706845341 456803716 482450312 343363706 452478390 620248487 977170724 90550707 656073840 403105564 676970065 297069805 379196668 41003545 79024517 191968823 741238758 26851393 325535899 466350519 532427307 909578311 986497341 513876235 616052836 556201411 887326843 607784433 809755285 137759866 262008810 628691780 862954125 970955092 991527868 721704723 968883708 625119873 784496550 340098872 867400966 289689738 817562155 497719429 973544430 665377336 768376129 225643067 703907645 681669266 862663449 521158156 547839267 488182138 555852296 573080618 733409222 364514891 440491025 511483916 619629851 549502352 687791079 67079114 371649511 612109909 938914965 726106980 958149343 404646290 772055719 559756319 745183693 643536437 892934169 305898866 946447643 387296974 585644860 536831224 598974114 855967908 862510554 122191492 789758478 523139366 966540467 921750409 993121677 969396658 973387486 815916965 858944383 958811398 987739535 954106710 984904108 108728288 798170254 425479945 606294640 663597802 828333348 537537779 594724224 369173792 784269019 15386688 623327714 334914209 523329378 505676131 575040399 439274395 618357086 869264383 903432378 466695610 771390021 915017090 956779108 378437677 582700586 668503972 761348623 598597662 660260071 901328469 959222303 657561404 940277037 327211081 672060740 399720780 825737638 267105667 955653002 862384015 874385406 533065763 785427341 608587621 691107470 124614145 953488650 880521092 889553100 528552282 699328263 520387650 807061742 786187031 808962616 363839419 897460338 210818931 711678508 45908983 964937007 596844532 921908220 269414102 829232078 216437232 701429128 720965627 721665186 526243319 928187213 272330879 950820695 60754358 191754956 569177901 985025730 776887087 971057674 90977080 719541267 957918004 980678733 304058207 943486881 369879347 921556222 785093721 885198978 769999171 820119367 302600097 453565711 313591991 726418868 990484079 995928178 973931922 991279438 598559433 909445704 465919013 670834127 555303332 998744081 270281267 944279933 120612099 341900127 699571739 725283093 253513817 565553826 301768638 349415522 613271483 807137212 473200784 584107701 195026360 629113852 974741337 982017452 804173622 848924266 419125487 562123644 619634328 914328221 507507058 670832846 90495130 625483749 137807856 757983449 789430115 834102462 965902436 971824332 183354981 682596451 494344863 769534147 423792789 963549249 872642523 928127161 403831022 923576312 2154727 928629032 295506831 338508175 635519667 719793083 64668624 621424398 770117705 872719121 191653883 506189593 90858424 925226102 963730070 968368835 690546296 976772538 668230853 855557627 229287411 556016551 731393190 897384496 699982122 859650017 554608607 841611873 778706884 805808144 450891731 565082978 389281746 725555699 775829572 994538260 821212175 971392918 944200237 954354428 1961982 467636046 408153924 888585844 36515230 125225287 868562755 951862012 342592899 350446247 868375919 888540486 519321082 986498023 964201098 981427997 544986577 840475573 368423653 645245952 116083775 963522966 47343384 761802489 273115483 575774159 985664365 994809239 156696699 454987967 278325633 896722054 700785196 804338307 36531769 671294698 154225210 951410596 872209050 876201265 261923493 372575950 520303749 614080824 964845493 967395897 318758304 902837681 113778111 920558131 684753176 879080401 396521775 550923067 703941466 864375708 419669732 535029497 777345788 918238880 272481295 645811015 104311296 534354966 892872981 987778882 535954772 813576382 928859175 941835120 229431218 882855684 25699763 310215541 742728173 853899496 817717329 822428250 920947123 956313297 829689414 895985647 227347994 339947710 599887413 957194231 335196481 738820662 947620602 994661949 466533198 828400712 756800174 830049371 997218871 997451269 810823345 936165951 498146651 506310621 717468731 727323361 905062106 968443369 99243372 774100229 242531188 377629228 791773031 820939314 141771637 309326948 760799437 960956370 534906155 730574862 447439832 735892371 886619537 901255923 636467109 801922703 865845147 997243097 237443985 365076624 844834578 998846518 289094966 413830561 605038870 766687171 74612817 589104652 875149905 883220789 578501614 589790024 373097190 569873248 601115795 681901373 223263582 479120466 184609153 228952722 485713496 507809188 758897862 960903084 191779895 940426521 520603792 873024916 411344387 446902919 604400594 710118170 473639649 621409235 525212802 810985504 926784662 953617931 893398186 921722526 795896728 973769252 637735888 920505589 876839064 877076533 451609824 503390949 308009974 902592853 775550225 792753761 81143283 147996977 247549345 304803665 170871522 448830308 265670824 633103545 63805375 390253945 782627607 957198388 262419962 445806877 456188191 683566245 532629091 785749283 6154129 910509249 704857926 897058579 199117851 310444789 829923837 953960962 550812267 652871488 881979020 954109304 902921361 913119996 617579422 707042472 554863133 869249147 592414419 782633557 208591062 277768678 160848207 968436761 320501454 460738846 770111283 788480132 531573045 588628082 67861518 384444500 721287751 959788053 256315138 458159265 515046973 778096485 850822326 895744415 517248576 566472142 959486438 977988188 783500032 970546523 566194624 916575398 133491334 154997012 484559548 700369077 745366724 878410571 355118039 475890284 631824510 875901677 281790007 719675270 255821444 760747829 281549654 742449592 454367540 513563513 449821540 751088699 468392280 511353891 695220153 716410537 451228742 687304282 903909266 936278450 771855825 831992279 549121904 572980692 745144642 925522963 953474081 955149489 309489807 901565419 311121441 993841025 743491438 966603875 656391755 879614374 620577664 935847608 285264552 404913915 168327397 873662877 488319301 800217001 626400799 914025623 766749002 900475165 373034833 968290118 690818189 950530015 274189925 543092335 611164009 866222493 139695785 252426996 836556986 983691160 74251368 742780591 530450356 914318258 63736709 305746203 662471690 743091659 825368203 973509313 522843544 659050585 277304801 384348369 21820947 672032538 962371558 991896324 24048515 691248896 130517662 820882789 925976686 953509116 939167264 947529246 440038323 927181548 819159078 831813102 4764900 687327589 71118586 650627372 152078605 711741482 919561312 949338055 200300811 530410750 419173536 526095418 54418826 521182664 494312687 628126687 389421460 749729140 146473589 726812786 963246220 964705340 524357134 744938064 237891129 962384169 308478694 446609920 367142636 968587487 438989169 873200885 830187272 884089195 875213673 903179162 2124281 829300712 50895386 334313786 204933645 928464150 557976383 887881148 72413681 100051687 368228668 552531560 379270339 619795266 96348854 391502345 896011853 977179283 193496339 929592885 393141897 464240312 414837168 585716581 455668202 910582610 152924955 908901287 662420221 929886340 640913342 895361890 588759282 723331033 152439742 203608739 582538042 650299718 807219616 839551519 463980490 755550358 83164106 456016174 175564484 911660143 1079686 76563666 996263776 996838699 45955557 299482649 88351875 601009125 350288104 568526066 870536297 892529279 235371588 952744101 945171479 997619084 194301540 209636781 657158957 983729669 826451151 905646961 490496799 760556653 374470658 648235828 236470189 750050897 930467931 982234557 123399014 199935795 851160253 934619597 200435098 452818026 519667704 530015229 164182085 680305571 554911861 594273735 243708814 786784357 682586965 769060010 533764215 884986485 408611235 814976441 168859560 198490182 968429190 997747450 470423662 520118643 305884766 422461181 338290237 919725245 741107399 941206372 775284483 939848582 484164678 817953641 677642830 732930393 411195039 498136544 930866457 974235542 394771682 635851463 115003860 204063598 26557649 977316966 391846211 573828558 399192845 776428424 589381559 702314339 825676626 842219546 663149347 829148508 395427017 409158998 973140902 987608426 745043929 956731854 268971529 359392766 260005801 729901567 323013061 647655670 74478681 798415237 171451311 717226065 768545172 835224618 915662292 946876370 263338362 301353212 978094572 995558826 541896076 625273903 523931405 694725975 519007810 780072429 154741084 281497156 49429305 540972068 180215875 955670036 70215764 875420361 442642555 484166343 589755006 734616503 48781656 249567892 155541338 590794806 705271996 838323254 509537115 662041081 365360672 770499707 106601207 885554711 647313164 791630897 274906586 334886355 194516371 641980571 74251794 102740074 436883767 583889083 927876031 928687900 497868237 523943806 567654452 696657933 123800293 805109516 563507385 741616236 218532975 528031880 592983596 762823212 828301276 916895345 644601477 671500227 399261435 615291523 443413478 512182096 314252245 495421142 590305104 838790994 915371408 975218304 650667287 674528120 847266524 884844378 701830628 760552350 403057453 949009783 920187079 984456535 483597866 638606440 67762634 661282129 975581086 978737278 68488920 357617602 393552668 912379106 615556642 809993174 772945901 784386243 316656027 882672533 591582 217494415 211111492 573985232 586134533 657085352 594851686 996717766 869118665 884009954 409516967 763772961 272423439 279805267 748073926 814270208 471697728 629014425 41705252 310252742 680885854 725844200 628423136 919388783 763466496 768195037 694479218 749000721 555154771 878192999 236328322 766613668 808516560 869307994 540025099 918155884 207076519 791894235 159038803 486208748 490785295 504535907 758412660 926270285 563681890 582641795 870286890 926905456 468662574 470325316 371188248 422462513 629940033 640314068 954615811 975935133 636263074 900695653 622167739 967586851 507798659 733824153 676291146 857356619 672558790 823348160 991358386 995740600 377895838 947028753 535924256 740160692 843793001 993827605 9827543 665089997 384814154 752487745 21285930 85948329 563994442 754612431 957284444 959010360 460234596 740901761 175466446 702995689 513101052 674848850 688202911 884248568 303631634 459035236 490628858 836971156 389152552 521499003 29944063 245524017 573713758 779017403 940105538 974339378 740371426 996078224 116804224 551847368 599686977 680684780 165537396 730015019 957445842 996823749 305679783 685180174 760032219 982165038 917902249 980585376 596127950 713012371 948877144 975476593 45994171 101164274 119002004 187709275 210896914 340745421 947538245 977881898 139168003 464445103 701888809 770770656 359973896 849596754 129666926 706810871 259892236 303467079 430729402 895150401 900490917 991587233 782929430 909818439 837213949 891118401 586013401 778666809 170730789 737612506 484024299 949824364 73569076 801095817 241349995 432192713 519908184 672591027 67642950 962856546 971369649 976160244 253730456 830738910 949326633 980856800 687951456 719606463 523278536 681074335 444192787 528937580 646797220 951948469 229204301 609054082 947043296 987260757 408501570 661527783 464374800 797587866 5104072 313078725 10199431 226651400 420710002 525259139 891072984 915269418 676341875 761637284 849328302 866015428 883178328 917610461 359259789 386492933 168327490 397759828 822997169 874002637 631281540 768122522 273125467 621527002 61230302 532882777 110518855 609602263 10633057 249213666 985510774 996142985 600753427 775926699 546627570 976424833 460912886 908631690 672683480 919232027 356151297 983782667 547778665 575202563 511711168 799141193 43741957 865184808 250992094 796739864 38112694 381275765 675360499 836314941 748936116 875136436 935870986 995649871 913707406 917203269 546701522 933019840 83649738 656461902 127398693 970448936 906302833 906626619 535638367 594145997 320137774 803610835 412034164 731822972 975267801 977121492 267764127 447545089 49249179 230712640 874923965 882155685 498367095 677867912 789410215 844204381 119686998 570108221 524142225 761555783 838825540 945983000 938479248 955382286 703951963 865470546 957500448 974263681 268061652 979666985 67665999 130398731 119283948 483393686 67844372 120851616 133864930 381361298 226009545 382625846 647271652 942368549 539193766 737377791 975299125 983288296 321626531 586173232 196784204 641880326 375714232 532278188 807314655 916214403 895812000 897367712 502184400 818059011 238778946 659212545 917359310 941416091 174231053 283916567 382865570 815864520 781087409 864444673 990966263 999562814 34954733 115749614 589963443 736820624 131170810 159927395 576545608 625744586 27130079 769250756 731133719 764001274 365275143 719054682 395748398 566179465 901227443 919616670 543018312 708390918 59806149 230284486 788474122 804795425 225391964 369239123 351250353 390196931 491230877 602146534 989051914 998573358 3154688 932112785 577948470 644989871 241776838 599100133 900527755 966505305 744537567 847814597 23903181 360372050 947091216 965718385 583081555 782992145 578682134 917185411 882027456 969241007 849664028 928436671 439824087 878078657 241397490 998077509 973306127 999413520 819144204 929042519 420062261 669582852 735580165 935053997 816479516 873072878 930958204 994655609 132712577 422536449 507588471 813456123 249619125 925104537 264083492 627330321 674961696 882934672 90679122 246804208 877932340 919161022 531169931 973312572 212943314 224535043 10004746 934500859 985863143 990666126 263353963 778882242 203244795 654333876 397625442 851434467 630497909 855076735 59473805 622776375 635969047 713439656 410492513 419605220 497818577 678942895 202644846 607954912 456768930 692577922 753885132 969109514 1261987 123042509 940387374 986071460 119004572 962339240 374325541 459734625 542996439 665579968 101468065 937885479 480440213 626960031 923151434 937185669 638443165 982927494 602279516 901498806 452882192 606708821 706309030 765605706 127623731 378626242 584386099 670369524 599691167 690721991 233438219 860355402 38608589 245796648 737586916 990623562 748974123 984802725 479098214 603555937 155304248 587542514 187456236 989816155 298717508 424100799 888740906 919425121 544341080 788676176 88966968 528718711 813354951 950087538 129079689 736942368 804067908 918464364 514203165 853875255 392944712 412618238 164594561 480238048 216193786 734442757 732293118 966431794 325501010 712429102 982185430 993654631 903196881 932827484 998752004 999814635 600758106 838478529 2842421 724639930 665728155 876854201 232679360 467895104 645438558 903800234 263456250 920526307 394933864 765972958 284072265 904133924 888547649 952851330 207205113 223679211 780390546 951009264 112056411 600151254 374660685 517850686 61612660 206448076 631670309 965139606 987013467 988006034 443781548 962192512 973666581 990126481 197079375 739977781 378404735 637620314 420283998 872778645 981988901 992806729 589437782 785524862 226268177 749699074 811505219 983137305 154339777 405588465 866547416 998968230 234365845 708797884 305057513 782413695 698697676 994970515 508811715 860669430 672016259 711799966 906127841 912327465 710325902 799576827 136566541 538370304 759098745 905654507 699763402 750711876 674205516 974649423 921288235 978079925 57294112 285432136 396098238 425766398 603730988 881814219 315464345 558310776 506718060 710331585 686359744 874973697 841616423 891225877 848597964 919028398 143013507 613567392 615752300 707824568 180951642 294490224 491430000 683335268 907037196 961109596 815223362 974571872 306039793 430276143 918059240 993754944 963245953 967693939 564882690 598657008 481344635 772568937 249587093 843855968 938300624 948044052 782618968 987093403 103800103 626910237 606791007 936615076 148639571 291210735 663706214 809804099 798825605 854524735 463463319 579742807 253210174 269453187 507939764 815032571 348048210 773559521 834678025 877011644 31384615 598595962 442079642 915636356 292800688 387831625 49475516 361933039 348073004 583077083 163882362 707787316 596567620 864957132 366007832 606563264 117408654 976177504 752409140 963652808 349899428 905718147 388359791 593565438 404924446 555593133 314118223 499428048 649332153 881747322 179481686 427154163 511455065 955727407 52921034 601677136 317645266 614527259 235345672 598072040 573276488 992745554 125127537 669346547 85062739 246239847 312493865 819916323 203802316 215455589 769750488 915011214 944860346 973914429 90934430 477261849 96496697 546521271 646457024 871980308 335753385 353663198 993426442 998581849 888949017 949953729 39897519 874803099 358657428 819357779 365023474 821178461 761491323 947573991 97400128 637402982 770508147 822836203 392586917 455654528 544967104 877696449 284084901 734772059 762198170 787531065 8603423 876039910 761374366 847900073 477319103 773907434 12345233 971009495 994809219 994838124 173580907 198793472 283390482 539073896 442153955 856938096 326152293 753209029 80731330 545050787 961261212 976160717 569245622 741172179 85279778 525509070 393497743 817802853 876536004 880667182 545993878 820480451 815294106 837661227 920614646 927421573 638175057 958705703 463928123 612384733 762767482 804349678 908018938 939884085 385927401 957038723 818170173 968632106 390882371 743173159 334519238 611019823 787931205 872074198 607328997 970088629 574529841 648492183 178077901 462575829 858810592 974799971 432730238 769882329 197402616 677916884 506539184 864488945 444379784 775924931 271637726 690232109 12297872 942133709 704677634 929234829 345081540 803692531 185889385 699610822 155997626 941657523 733195104 919939066 848437147 853036079 617445062 721121823 113653084 632724996 19674326 643023930 648345783 881007082 155565379 875116842 50375923 521010036 834723867 865848878 82127583 692119861 680417758 810645845 659089130 808648962 402244646 934358199 963147594 978353757 82130295 247927274 387577997 630727638 775737797 791644278 257836970 638482653 127417189 894487719 373934547 684459092 424561518 524413112 499043613 854602518 548081944 627571683 684334742 916305424 731402889 963844495 563273490 618072898 993284003 995629573 164738406 507321998 550533277 706602644 47462851 582307134 370124096 563754308 983154992 997576764 35620573 746827355 369105883 981345220 293245082 595480906 498124259 927264867 247534069 730624810 464133042 901818513 43415637 829880286 491969532 588614353 472421161 476207457 919059896 945334042 881013630 957591789 378170118 651683298 903579151 972011585 765463459 967948332 809089748 836383576 326572636 348296741 588235539 776994674 866586585 993706409 565860463 956039013 857742768 889182699 842512342 876901175 945228587 960990143 217593176 948325092 275080732 380903880 989044068 995290399 646556148 930076619 183004254 772844851 176426963 525378001 785709184 897155422 431777644 848713113 335294331 965447633 640964389 969946370 604351660 872125235 829951941 905075753 170924929 635524337 279309738 374265277 584094278 714703269 817654765 914219048 567620128 651983357 482818897 853075621 389072452 951272505 50691136 946196955 942094108 976769164 15386662 380001171 250125063 774766712 133143035 703458570 611312244 933690949 896142570 906339122 724320881 741351549 260093352 747100737 333177621 987192287 239208390 495396086 93040629 820968937 4163403 526951830 872932598 955878797 180773656 885098029 402249408 419557908 713189056 873255129 733708842 870612389 381643282 688166258 235534996 912899204 545313929 852982553 259576745 844541352 510882758 728627242 217756029 283931456 664569980 961230799 570074389 667900495 957433077 997862267 961101812 975469356 199404421 791474312 651949507 678903421 508606417 920612002 153386896 571224106 255334292 947577126 862721992 930585019 880791691 936820242 206044572 985445620 276079432 702878981 436469033 775158937 958489866 995907953 605841099 815690334 25922385 120271185 178716835 205373069 552225505 652868817 744295334 832845825 119200648 840752490 256168917 934022509 543603265 808714179 504085254 567017815 549536098 818939582 515430242 875892002 14389977 760883107 663477044 716011182 630488045 698469111 106906386 569715840 703113039 951781484 812266724 842038157 434767700 802713236 173503846 956141034 80276148 546131073 867313083 941334660 480004431 543755227 733040779 951322257 340836976 388007564 902768910 994343352 522571370 936806547 611316276 663727860 103921958 565125772 38708049 796689775 730068870 893847562 153762892 777427642 573317501 964436376 570546403 994361683 361231579 897250376 793225569 838171387 474800366 583071653 69565244 678418483 307541713 602867763 110931242 119832420 325781164 649240063 816905371 863380759 433291997 876288370 414975832 518573691 269614607 779343828 905323313 990007633 987359274 988102240 364356701 368412430 541364285 866241979 901044871 990985497 706448062 926824735 895901229 977080755 241511850 812337378 631365440 945915635 130569535 643584347 360947676 959539544 4072956 826674835 45963696 196015386 217372681 771625327 176938918 430599512 483791296 939654007 240429582 467817416 996446565 998675931 720224592 910552312 287339774 929660724 827180699 831364329 676728748 730673604 737320836 921086090 290700601 719978148 612202142 884778889 733207654 965706043 708477902 722809351 116178306 194405207 660203607 963901189 908248591 916750186 982588960 998598981 260363238 331250263 191170491 626150744 138712184 175799199 281288263 666219445 229943534 736619646 53490093 671128009 745382352 988120048 948651626 995564604 129525022 415706199 942949240 991988765 163941197 225610613 513653593 607176093 852374535 878394261 491320683 712711364 92377095 729910731 659075259 966473166 188465718 496943109 789542659 850378992 969232177 978798736 172578544 742430012 758449284 983473043 82550575 382270781 900281840 935004851 624127385 892012808 336892616 911420497 525995719 618874367 865022089 944723922 775722901 990431653 704578124 991337061 509429376 733570005 628451731 773189967 980658855 992558006 993915682 998396185 689889314 930380478 195582860 827920951 931517376 966806877 140455930 977841864 400986789 835110579 200113731 699322883 927038027 977655204 315992996 991816594 542501969 765056524 150803851 169773109 846730915 985185319 130080413 503917294 344762709 791131479 33869137 573397411 687522223 930320852 625907824 963603625 290097672 975375676 694150488 983238337 634601447 937142640 957497396 971459614 661668782 689982008 285673392 612662683 438049167 641735575 585108670 970380098 586823940 648895477 569613647 616565492 601986427 609870644 603786057 842686318 219979916 832915846 751894638 952899015 524152155 612189532 762006877 973099262 658560270 840183085 599878820 801103463 769377259 895577026 289956393 310101430 751303224 801321187 204295423 777763648 660255872 878340206 472123420 647758894 580689294 820059701 967196684 986450438 94080490 493967263 875670830 968399308 220291399 849564856 300398230 954761095 489284009 499103849 50111782 823140384 733053697 859054804 608010992 927347000 157557106 361286256 887258575 925846644 526183874 718389437 886064926 934474351 273543867 514753467 761825580 962391185 174854729 512494914 680121725 698490031 876029959 985666147 484584677 958578863 330814451 336257522 615183940 943964618 548007724 598277902 347609842 835313780 77351200 906913543 422199820 748881468 830166847 861055545 698765203 720801575 219268284 772127244 892804298 976470159 534846920 590208202 442588339 879842282 7937619 167129715 527716284 770327138 389058811 659869579 850742243 917220945 456970157 739570909 492334534 804056702 587306126 958962944 529340049 957082179 920416527 940342428 443153750 996090157 733178914 801924120 970598306 971549417 540538180 613156699 199624085 808987010 722724880 826383389 188132869 193009352 311258782 769063783 966275270 995019529 140352238 441085925 154322270 421255478 625733594 635306081 686170388 853235497 886997185 917386009 158393600 433853131 815344210 966023828 662014411 862240800 962921188 982335235 628392403 813245075 401416666 599838412 883359557 970330064 474747201 488847236 285648835 613709576 366214657 545952768 484935970 574514584 895451229 976119273 775535782 887868608 571816939 924943721 99354323 632490318 206569468 674354845 698705928 889481101 815129173 953556065 741176656 999266441 650382338 703798713 597986650 753495482 241451555 504416820 176619806 419516484 225750172 408726883 857061255 870309016 488514212 965557224 3241877 83648184 439022310 974889406 1871926 711892084 295248593 644309246 188748799 394218189 771269596 939951951 580134405 857098343 961873755 969224862 79280382 747494784 21477575 306652956 615254234 883761823 299689780 431205383 75871670 176015961 677817516 803452622 789921856 904769953 601494453 757220570 457528782 912719937 721263792 984778368 880196605 961223765 526465295 908319190 556317655 623973987 602571756 782947642 49186841 491106632 614180469 818021164 113825029 579457395 812391518 999741119 967508180 975337344 249809475 913706458 783951640 927723510 43965079 292519372 201207722 579509717 326572005 588383561 71969713 391682594 982628871 994175522 936698848 941335816 700814811 845922818 952915356 973849618 431739500 770783491 198481275 654006260 301034231 304275266 380268995 516201044 716030107 933060424 544357673 820612347 86197525 950849371 352401929 977200740 773539083 842328906 937810223 986842164 524970030 686810188 472359555 918665944 676532207 687457150 742285730 818171631 868294578 978495912 784991213 787022266 957188233 967851757 696783961 952414595 612070078 646160890 189312739 279611386 987497242 996391423 261578640 765670620 332353990 487834981 205709984 805080239 643638460 948634355 561485485 688465804 276283452 413574382 990000643 993985917 865794748 968984823 642979676 947865359 261189344 701235429 553380921 913129058 958299342 989233349 703384536 887526759 215457817 250640204 669046178 758509768 766550689 911098588 487862678 656954977 745253387 855729625 492815014 953958424 89280552 289279682 213069429 513499727 224698034 704660476 71999874 339459006 781754402 954896243 775418509 913036736 718105693 900883526 468398945 710241529 292694432 298280698 428983095 994763398 267370731 803876593 789996890 865686045 275327007 785640826 448599991 561647969 786500478 864099845 116333404 653272788 805628549 935838678 38532106 478756414 667940954 817369054 987637443 989309267 64161197 176995685 615607544 815128655 421399124 933085112 474110156 857162936 850440042 991330425 700839528 982650559 954786385 959661099 389710936 550263420 675758343 964984536 619903003 654033088 334573038 647465790 112507492 816011347 216432594 711021470 917187580 989441992 759616695 834780567 992354021 998189925 581115613 810999425 945129567 972041101 604244489 903220811 229279974 533190369 408546556 778928822 443740544 610679404 697958187 962867683 976676210 982733137 33613479 314151359 769546766 943057759 593609560 862907203 669748090 760865248 318010064 610755541 132448056 603065838 199126225 990485350 722443708 818073504 381800222 810029679 998909581 999641605 993586396 993852038 325246696 970766613 763520646 997645171 745108490 917013608 219049840 863769630 533363534 938643994 971267097 976321009 824794097 867486038 358726473 411969939 158745340 168591621 148859231 423544256 689161308 771805716 452578175 974671588 56011639 60298874 226189728 435799035 219264380 960345781 808001124 922434675 5665217 604077560 432909153 479309354 711627126 731321779 595727057 807834393 950723076 985421002 50273390 505637088 754542526 911677211 767898829 812526347 770784468 879338454 373847346 518142481 623926051 961921389 90010027 951408687 825011410 971887783 725776880 850328900 882167075 941299944 554387657 784577785 407788008 938911771 582183391 888994603 400808371 517313527 209835004 779686938 262690016 466778018 766727266 813288371 411476241 878845184 159213137 809506148 920745848 942794037 624010475 687657580 183039692 256063256 519714376 558014297 835944477 983326238 289696539 392632432 536651852 803864250 68612699 379862287 122277657 264822457 533024608 995280316 31571791 700580332 484036786 814616648 45723401 820082165 206950116 963958097 537473502 971044379 923967542 986996271 226814425 741867966 540803774 972379488 841486131 902997307 413537810 888128296 66189384 857982839 184641767 375039531 655260333 812948022 764016886 916493068 630573493 881831130 27362976 393637472 967729546 996187554 218328514 474808627 167121740 940883444 831428679 859220575 64882484 169881782 789585376 903238630 347581373 797289892 211328781 641926606 869981547 965071905 926026435 982694091 997655800 998105869 259966644 818488352 182537005 897841877 201016333 674576525 985627945 998938803 650709646 998295121 506007879 518966395 966789383 979345919 523064197 753401215 353870769 843840763 222542868 774800339 470446131 960508556 36846728 660185458 444418801 728855298 821795824 856524269 908554441 951127588 273439651 513211017 964661352 997766197 736561039 932798719 509314956 844369572 907603681 926014954 453266918 724035247 399866439 812667975 441276967 789931628 707456855 798518960 350023010 497758474 522394964 608779644 166476449 224918874 742691189 836167247 159017921 330815175 904342311 949156316 767146351 777652811 599304595 783541082 157499316 310352058 867651449 880168853 313724734 743164992 351646209 882441976 873823604 963077931 496177387 932690688 139599921 389083500 682424571 997800005 549784202 601775675 170844846 912310021 450791149 971570702 192453442 903179247 326790164 961185604 577039465 698144997 749052586 846979345 231475540 662991060 733225109 806616074 501113508 920202386 103210040 967059719 398602214 575623275 825498742 917586671 169503612 794240003 785449915 937563712 485501235 948815439 834873091 847334362 363183537 410115213 518809103 973055226 703786120 967407406 607767264 874428944 496839092 653447594 298317819 742895615 369753863 645752497 441147967 917577722 519623085 685596103 126698971 423334998 527033008 834156042 316658025 323424933 747462124 853068974 110166593 246821282 235447202 675989919 326536253 456756181 620182876 915702719 589794624 645834486 258253960 587581893 623759470 970071316 363493219 555945651 454060524 617061114 651829642 692090469 572480068 599099753 790724683 970217628 130387740 492831423 437709426 978942794 15660842 165070652 957158871 982207608 669227286 692581400 555246162 594365902 202759372 824859522 25984031 220990069 565240354 949165705 785494942 824310146 527804756 751308428 362573652 809609768 855898616 856487220 39749569 287206024 946660591 979264107 428652419 528699605 88007262 916091292 377574446 581242271 43107145 225259699 132780963 589945683 254098837 835990465 979127149 991955821 147879815 316616120 357586776 479476433 153884239 806237260 90143213 885899790 146690673 357290014 789145182 995835141 202851779 802597635 234247635 390545946 140885792 164426760 879759976 922410496 684670256 744753530 820676060 978425854 106655737 422572842 416433289 879832919 850830473 891214874 81273678 403985259 499364231 646665195 946902573 980697093 523651779 703956342 730729338 970460824 46663520 963728690 742972299 865659244 105791717 257754858 285767813 821051564 631748690 774451664 878574933 963302069 719023858 959573614 758756348 854168458 246352966 911954095 353663996 534556101 519018969 527243854 639159223 930367588 783532142 898078892 129905889 583066675 664289574 800214116 598652233 781746648 7937383 630107772 772884860 988130676 708189656 888540891 114738428 867540101 900239023 971395556 585066017 890435921 401545424 694657611 835988116 985857280 946958571 948702263 289813381 419875323 302338126 470962555 365937239 425662306 713367666 793536370 872155814 897167706 625274075 954352904 422496940 477123156 772737305 859055023 938616116 963205120 534881424 942658251 835770415 988731717 471906511 870007865 891680201 962292724 430696654 678262012 613252892 627269510 904956924 933440846 292113247 948667291 163813063 995705220 706593755 962078813 409929766 856906324 207228243 452804451 757257656 856725606 298271570 684202676 919150263 957688217 887353074 986127097 869577526 909015768 534707423 875444210 171166894 362243621 90689082 890929023 335786920 471551988 410280085 589100045 869608324 870269344 146142403 218405794 197175981 287788670 446616317 616775502 999794078 999983020 125369604 883244594 590267886 632116538 438301328 548452449 774152507 811493043 879513945 880367080 910981814 984202393 620859858 685664690 462546074 539455874 372936652 667273050 88018913 873740577 968174254 991290877 527299293 687106322 279538601 410481574 858690541 866493753 919330123 952931004 881652857 908023043 366283756 593142788 899657213 913801078 149441496 994979544 440450837 629523375 503676908 804717804 802740993 974377651 993211401 998722466 872034942 925022535 553737195 731623360 860446187 875555221 116319510 125491743 760102268 862981005 528733528 762938927 705022575 709700285 245277049 526846052 105975628 456745895 250234923 575561872 288153614 428653889 904186962 925946904 863560353 878950035 987937624 992959406 554582990 704245215 170554230 501431507 851873698 903469109 210525257 964355496 969067474 997004507 765130093 999052276 861592683 937505537 768161327 825072815 679788202 822783265 549558473 847604856 206558794 640468403 541321731 851106012 843881477 921108115 749537708 874471657 408228136 782569875 349086646 660945858 749367313 962409728 710179170 801637248 177157221 352518622 815620596 917830178 125828140 749630756 795848220 834110423 979340195 993293290 305809597 993982821 763950930 828358250 516984079 598554716 383622299 645112208 674492876 677971458 197852307 562450810 144334412 870426594 486439327 572262952 663835352 852930286 123321016 886344951 168129942 394085080 759863979 868801901 411158057 459522765 812361902 814438370 916193607 967885421 3123372 377022587 95152873 360453552 493939724 542136765 392684835 521257912 275418875 802212143 456318471 708121978 50919571 915852784 762518916 799654031 976590705 978125854 752694823 879587280 747702671 996500371 122808200 738390244 995639344 996197731 390839812 660829389 42583785 506462505 437164849 621262855 611048613 632201615 930748662 954474066 212356427 284386634 136469130 198133240 477247684 514103893 700328400 721595682 528984186 596177343 208891642 288789276 964392966 977489690 200515660 283303580 917277591 937729065 68428538 351614300 630186543 895322455 721439747 784271543 162033728 826380899 952449834 991848581 680806163 923149712 27269897 476024068 26330802 736270068 609719896 668493020 856665963 981011657 340749850 359252400 973610586 995974068 159946519 999778800 739343836 851772489 141088791 383017496 709479695 949694716 821167913 878716508 572812630 781370323 216302373 610846886 779074294 892779015 981622841 985685504 297278437 763680995 518789771 796464919 845803323 888932489 647316653 728842581 793000041 899211271 148758331 717050726 783857295 879013116 164241911 880415107 191905753 360371944 900364148 983018342 884275505 917933577 148427238 253831987 264273874 788125746 736550693 752468248 366816643 396827556 56379076 151405712 227534674 528130735 49847587 226539675 619113582 919635922 661263147 816857613 764984811 868442833 860126779 913619713 150894806 818949511 977340731 977764790 914952180 999013420 240675566 425211953 264372143 807167691 532534719 971531795 443879146 623910804 219386128 437642346 761443886 972154148 126139894 267794585 890106786 979760262 652925910 718464060 879390205 888964007 579607685 714120515 432696204 900723940 557122599 776406010 117761090 156817220 171784903 956786546 474864809 817357959 584447527 598058198 205943286 880490061 655175307 879390192 797493598 857246669 947396872 953744740 380237303 762039375 538284991 996266194 128144133 394299897 32130880 864817186 257467807 549323457 790399133 838770070 243973729 499508640 160082656 423994364 551020191 867652403 155398604 367738382 820635567 916308956 881765192 982282126 812845010 820335718 404618056 500964677 931262512 972368542 207322722 601568865 67361613 207621792 800327948 917151715 298213023 716891033 556644210 904408405 516964955 535775720 464290460 846943736 240902399 461531907 492246131 765350248 461009014 571856755 808583620 839435046 153362636 348596811 882702255 951677759 49079919 71901075 872530810 952374376 550484382 875513129 442113695 506736955 220494403 291746969 605380664 868447166 846282075 865730220 733639239 734984856 555355544 809580923 756706115 955854540 265337830 753145275 971147529 974546921 720341037 830327778 295508039 964025758 472019651 836936388 716184279 833426716 355095729 829298764 71483579 641059827 510957704 929910719 78205996 815017017 438460990 983439122 643850003 750835266 412474503 836255809 961376855 990947369 171246664 361777653 497184922 610159414 650484942 713337106 874835653 886553206 323262372 435907093 25656060 428431390 394401441 426866191 517597422 776654824 673515140 921382268 690827919 842851596 613191351 638592122 779016771 995462596 942760466 990744017 501023213 669831018 348127230 397926680 901813651 951482046 923350049 987939056 468907492 868904790 866025436 922385688 54181034 595085194 554142732 845540138 172826365 638991144 887111322 969251021 704096961 935981219 199023114 715825124 586407181 849109089 629883873 699515154 910197345 957751426 569595704 847470336 987294575 996289327 677272735 962154893 146461590 291877855 80425017 862881057 151299085 469119246 354387940 480714593 930480103 962248030 888072421 898425413 112044244 704004947 903303457 948052368 840681488 984741101 990300362 995374733 426995043 927710287 113093895 959428638 599252342 950292756 502176650 917899788 837273392 972343093 600317085 939762646 278987627 734124387 81757478 830828864 531849244 625053842 535115003 931352428 2770686 795855122 873156611 888063347 691023400 728875637 818216767 899661512 919461030 938818928 772186855 818613269 529349004 821276265 776154912 871922135 429121452 572251048 672756458 898537920 433788802 510307417 425920221 563370986 681306495 878578645 576476467 824942640 877688755 973406892 349179065 660530202 693612223 929701333 197864470 300133384 578667522 841156062 635095555 979270909 79144169 668269999 794235990 879581756 605690569 962992953 312166048 554203407 458543096 877044641 86300900 946530808 300969375 354846413 960660586 999475134 877204813 922498455 711543857 961275108 848972084 978220801 574001374 908711987 226286572 575901996 882724278 955536206 898114481 938343376 902373170 974104463 280290880 761750234 473780466 899377814 451519484 587977521 221744910 616784432 536100308 558333527 585326567 949781920 468806641 883360853 601593195 997378973 182621882 540405365 130716431 870178456 693329619 766838234 583736338 940971794 929736025 962409948 150393847 658889470 426400772 668482466 337558813 384686809 944268419 951776216 265765032 688798957 929518164 989882270 587302472 821992270 803441933 818170808 916636394 989600545 336864487 462444993 894394621 915425992 999614939 999744139 483778445 845557031 774038450 987449093 517554159 605967855 569097660 843062299 17114173 395393693 667236496 736576676 268671852 325922724 590491653 677714054 479614234 600609227 388536730 569293361 517623286 818710348 382331376 654111488 46655166 662788439 508596940 640927551 621085778 808826830 278984913 302962219 263802590 711996178 841500852 877749538 312264603 885330978 874656777 877731075 358269826 565343903 888172831 936698418 387366860 811724100 82115751 137472302 800727250 852395713 541502306 667426878 251531632 606070716 454997402 845469557 193173354 594131316 698932937 740042589 306101468 365350451 822759143 874539294 741907515 822309794 209313562 356283065 37794306 332916223 424704844 551822103 128057388 140702401 405968299 584112923 168605968 194249322 653096090 702751992 539016140 788823312 646790046 776502651 223270637 560562822 145624019 947301210 442903377 854711962 253839947 513783656 416010168 526566344 697012198 859082161 809131438 962371973 353525627 667513248 451393350 573205772 812821002 842322166 537531407 735624909 671518653 855263747 277879226 469853159 768010838 876603915 386835276 713689958 997109052 999654653 585002404 975656447 74637728 999039836 371830838 878727464 337661148 695250573 328608310 375192013 446329320 879236932 18065683 756822814 291263418 721314448 750919585 998889156 700437528 907503236 552873703 919106032 386748550 811005398 650261975 939670912 462820168 780011480 865184283 966315668 121730639 221065711 164129102 906816328 329575086 562619581 780091236 991866283 180412553 239506602 113786858 252075952 653050571 870485827 900716830 915523267 872732226 884579133 753669781 946317031 51521175 661557562 173299934 688188616 97336966 795109419 952010378 976229665 237412960 577185906 953753592 966149752 528602584 705117308 459106685 940558019 764220066 796977975 804780851 966854897 706051762 707995175 625384586 733820089 775784213 967448554 134640999 362465078 777631507 830124238 843951396 849402192 260604997 810987340 150760655 294737648 749749288 879185272 312352671 337804087 893776755 990272049 136750532 999635485 626188516 779489332 201392934 539035851 13844207 363823847 843055776 960299817 712761304 940648297 781609802 906110418 80297471 352618064 648703402 907133342 245868608 562223211 174602328 722756246 938833964 994690988 526618872 867914277 236880869 816609724 545330820 600811251 459324395 681437788 243861089 561639400 614133255 662465321 593926934 847887580 119196891 129271515 588565219 952223764 419657753 458431848 116768301 567383314 744414532 952278569 496279310 721044175 284585114 382736159 819180840 890319260 432003934 684801352 834604019 916948791 825048055 983774193 207989507 724943936 109281359 456164244 900053118 929739453 618640253 699834147 552976658 918191300 612379117 796389934 112417933 222974918 513791857 595461541 943460169 949298496 555980239 592066612 894485948 951744002 326440977 595790441 398011023 617419897 334673998 762697921 690069756 776580901 841389666 885871040 645566821 905739877 150620642 909133207 75388494 276275866 964389052 974068760 347837563 418216689 655671478 906132156 395098495 838066209 148936285 209746467 109855211 212003370 846600709 944709683 271052113 758195849 386163522 860191969 623885033 742510694 242991177 996172987 727981769 973981499 286538301 867833428 475544830 510948429 340582312 394260835 729318284 963937893 881994497 899160188 758068194 999343067 306819623 999241743 50275515 99350057 776123245 976813121 164292569 242106969 879570946 948939972 482712402 840831596 935290740 963800925 881768524 891423766 464217171 896696203 12609849 878850624 885627804 937212935 443764473 850019416 309323082 723433012 808182258 891777378 849671929 979477800 923328076 938645491 901649165 949902646 824289613 838383725 5294587 536703704 994376800 995005352 940519696 996773373 625298148 973001971 509748784 586564914 218550329 265782431 496479528 702896568 914053982 962893245 936729074 981493655 14999777 528065930 16358351 975003845 516310530 646903810 87331930 606558278 253835687 709948639 635096232 686607850 771141651 999078022 948996512 974319181 539264320 821422236 124180820 935545835 800716882 888901139 265632549 712516173 860447902 874556182 185837606 952180638 831029934 999156873 613961927 802334354 458978519 667890666 670492567 815020658 352320791 462980467 347724841 908914331 708056156 865032497 750370168 885900019 443390560 888539231 2876588 660736006 997460967 997743925 115337555 121200937 283313567 906711793 998938807 999151441 739624609 775544109 649460427 816910874 453378171 948814085 241919093 702967708 583496805 756832247 172204378 975363132 971434741 990534416 765486432 926418116 232119107 917414299 855437679 872522015 248083497 395740237 30124545 356460873 540426566 681545450 415345017 958605366 303541506 315404526 531689749 851104167 338788082 460601935 218621283 605585560 39023176 561710978 251607274 978434287 218534595 707919784 899386153 990504303 842271519 976547888 267860954 927427371 226849301 466353555 217542392 579929325 93746374 256682774 131236511 471014204 191326204 668605303 570706606 733266787 552182735 662457676 484930106 910642110 328799137 605619774 112243023 791247825 707614067 802750263 692374322 935662383 369190222 549470664 670389512 942107796 19666692 618304669 353388349 508344866 93013797 540056324 943353229 985260670 522446269 765364483 38349821 138870026 737175307 767430076 336394788 752759965 136309090 652995577 881689875 921588703 463202302 944941436 696195522 924106188 412292763 828178765 105570778 300636304 217322549 612797839 701187066 803943622 778641532 884914628 701973084 916189851 78531407 835463183 444517047 684585087 86019615 465619839 966991441 974229123 17643644 944927826 878672465 893577514 592780217 902375646 554680449 903031139 17844425 903944450 860997140 929569557 407728614 677999953 610425324 792261292 635752384 778158932 304079264 593150711 980283 993161940 934929784 980218392 246321950 473503990 358360767 554975671 577230035 763138919 189931628 564338171 174378917 235477631 293194307 315578525 687630327 708552360 666818634 861555836 160085542 816235398 45671464 270787462 645077424 881940156 511895656 593314288 162857561 732936599 79746358 654878438 665894442 726667274 618758134 758899790 243355612 950281641 899512923 941284013 574014982 872733315 789016308 953678107 957222924 970782391 792374272 945130205 340376031 580115104 200553130 965878966 475096926 934228936 818824048 846066591 930980460 989026184 809578642 966732123 106413090 480656527 824577280 962486298 381930542 917072870 307865761 898872327 513607708 784389153 678822961 830408416 917915582 934209426 518682896 628891986 919216450 974522400 86603407 725989728 637171564 937969911 510665762 892967890 958139856 979461018 84834798 921061310 879656643 929047115 825945131 877696145 627864517 836261224 583108054 720575701 661884805 898736694 160775313 590566765 609028492 896721150 359715903 565971969 141782402 479280958 444843623 525644346 628403974 943263185 955800176 974314696 861332800 995918762 87937685 269206341 397880506 739963183 797282605 990920793 964624979 998802257 508871809 893462258 994625600 999945104 672776090 679530473 613232195 747384607 394829780 640896141 683689836 988063252 227480774 795623497 989352499 990112270 512470236 712040116 365317895 486409286 691505197 848877375 755317342 791646757 448279091 636981065 921888292 950357340 363781483 532801116 571674348 983702552 180280461 864144990 393572102 719982220 557301117 995388686 930117928 931848836 1295914 34868321 660733403 948133461 906493133 912334065 958273968 961325572 250857668 463798274 952278799 973229499 344443126 824530542 162648380 611839801 206412480 344859228 897936977 912785057 650574906 716549734 509483759 936051735 221229769 706585900 804376212 949519841 731585454 885657864 548772080 877077387 685740416 741203118 238748038 631785438 509684423 915235984 275829633 595751016 152409464 845969316 36687214 198688598 777402866 974644743 291570699 937932773 828513153 955400287 242052713 611196620 543652124 724476811 266810931 273491537 431887411 608132047 274002260 646130845 101006834 509668046 89763428 497610692 35336724 278760802 760493128 887540398 951451383 968342117 490584445 710416994 447393487 611815089 453900627 837706059 256389427 266316186 390166323 785405050 818648583 826820516 434288790 522296273 427252675 897121836 379527351 833061179 894717406 904112096 790621011 815547380 404205474 511033909 714030789 980268040 949151045 990986962 459484738 631141581 277027409 770288923 876835264 929141928 357757647 719205039 938815654 997956441 471117645 877629180 611716984 873402414 573496939 973239383 52800323 931332213 720440213 862019916 123249556 374680854 372047729 888142524 614909846 984080663 514077678 555752310 678791174 866564075 946310006 984258471 259350170 525412515 709172041 864688365 239995612 891574325 348263881 764481624 445376769 869964639 672920478 988977126 643971543 945481798 847715228 980726734 54832079 352122270 645797271 888476481 508564361 812002040 356447390 495675445 189456695 908152564 901083935 940814469 78793642 570926836 288568725 324004251 466714920 962006706 865325300 894410193 144899625 439064029 524027441 757140871 721948464 995974100 601172370 701213538 447075138 484793560 296610277 862581751 128855595 747163433 782624209 934755713 840691247 914371019 697737523 890025318 118540711 618111496 425228488 595791967 741225621 838624822 526903458 875531233 993428029 996046618 893829081 940414946 263473212 328599013 341993111 380356588 571216416 597689626 129183687 686579749 132514670 679372184 617957302 642728015 41265433 981347430 102618020 139657777 573593390 814171437 291172995 614333726 463717996 560280402 306095241 898235377 225766511 711751010 631121036 916669455 829882353 936628073 76559153 264765165 689550721 968418418 776885435 919296996 581570385 842571542 754720581 870793086 998792118 999961061 692620650 937332553 127099101 178765098 972211516 981059979 236903188 268068069 827304614 835389462 304006609 489533457 866209454 932734337 643054974 660207137 985746677 986962713 49755421 320270515 50599113 171208691 219535490 948199661 55929622 864614361 514038163 556245701 774224486 967956123 266469252 638757236 948627647 982343960 924035815 944883220 629492505 706154125 434836583 639501293 348094520 870498089 171138654 753328618 610737499 667178349 551036983 584399375 66599704 474093246 738667099 765882033 941706754 945759449 55025054 160105314 563444522 942942822 464244325 890267835 74618005 213154564 615142671 964343170 763178785 949987935 442738790 546383103 213039412 482013606 130858080 343388147 323681000 768689013 229102757 899914942 923411579 989527401 131888228 887838278 485980884 604702606 1361452 695265438 438017462 875314994 440607994 473946399 694975659 931998758 777601578 800927543 631825721 934062830 737848381 769440756 455655780 679003224 325489352 388602621 930834620 982142776 424823553 579684397 112076396 875502042 272254190 935321211 531913855 771054277 112269679 646526637 716461547 767006282 416681040 895842039 978864819 979672689 201860837 933948513 318212752 905543679 659784718 819629662 75386612 131911709 32058362 350568394 938525160 940867172 969707492 989134461 373147449 882291247 581087278 642600959 834136194 977985073 240011331 760944302 110871948 660203213 668201438 689161705 395960317 905630236 980187360 994329670 248689765 763340771 465043503 890795510 875015763 930430556 27683122 947624411 75213803 900339841 704552589 936349861 562155521 779688604 452566619 714243191 700795414 828971333 660451721 688854755 41872769 50805037 819067013 825970932 463162169 961708297 447315276 989769813 523196427 798093108 961872663 998719268 185854443 976887559 589836000 913385480 13684173 805356506 510612952 798305216 309010764 633852230 774190300 898123027 289300128 903890994 636683928 984245847 573751366 736764643 557820321 998728169 88075700 189009474 218535689 283376297 49765015 789107014 214081204 854592651 516914166 700877720 340127442 366450434 555512212 592512337 599866218 920198167 563821360 643075065 203914711 624347464 172247707 980647089 129921155 627869706 943481271 975604018 250506942 792961822 929545390 937553548 214454873 465358594 977715022 998085234 725256954 948624510 616565766 824965062 725419035 915247350 982910562 985737198 879322654 936254458 733149131 942519866 484081536 726658002 785658563 802290862 84499502 924618044 864193576 875232632 773942354 984419527 453950283 908379740 995478296 996615487 176490407 969816918 550673081 778951705 974909414 986397723 424841382 617343227 706924865 770176915 304828196 406926173 441611198 749790519 828496918 904714482 213209851 963504523 862513501 983059355 597543108 772920543 606191370 985606707 262208866 719228206 790344495 888123378 957842667 978195519 943563238 952762964 21617792 353658569 995016682 995241682 129886558 987489659 925492406 941929339 246843237 630827811 59464214 516906526 233511557 518735161 478498683 480654172 111074540 341856243 546835513 756547497 97519795 344489153 487775746 592749855 49590760 478937556 447591616 528617685 263029804 792730094 138125635 490129721 918996587 994111491 908614724 923066255 980272484 996971397 634819231 728559848 726238144 916698814 405517660 543944157 717955579 795612495 897008869 973081677 405337197 492377485 954735225 958821770 429306594 707539540 362378155 971305939 462049601 899955448 268836453 401843652 161631475 784886987 584728782 724021792 695655178 747154089 348128216 709881337 532938600 819036602 414068898 617362584 917451686 945436118 508911957 598213943 425679997 626977509 867149374 910239779 446384633 498645257 735234884 789729105 829479861 959329531 815603251 919107763 893535730 896401282 423230133 500924245 82686601 541208480 772002068 996758016 633592304 658400483 235326066 561354081 420215677 732594209 749638862 845998481 953576893 994402260 759606171 868525089 936646480 987466417 57884460 867885625 42002641 501309992 751713168 925554237 779401860 944016234 249835152 394962502 691115909 743643331 637757339 977627382 878260905 892353064 962776102 984131754 57725536 539976896 91459342 581237187 490884748 783201944 482854532 909020554 830627838 871966850 725586516 820868784 286521449 539942394 267124529 277071401 508075144 701113391 768604298 955228191 543769205 784185098 307350466 722961753 263629499 338522169 844089222 928154353 529907755 620098288 406010293 737691923 706796940 710552954 323133881 571173416 712082189 925801740 624763601 673457473 819555983 968863839 640386193 731625544 798042206 918130906 22780557 530442781 758779327 875480498 282386231 359297430 409596846 693343930 765666529 816172039 188780977 695644321 540652890 731463288 784626008 887344139 547816504 725573386 534394437 975589590 813122423 914424120 240890460 978378737 353624548 546742360 513080021 760326626 312628285 396731514 376275820 765067182 438703316 723415071 945438508 967488597 632736256 678971206 604829762 716974484 727974647 961985374 16597046 851371821 707946421 855719013 195587989 625784174 319007678 898093313 64201340 67006346 563802313 881216294 411533039 618424643 473893082 735388884 66549905 874884678 357142831 860668483 685649050 908454005 157764452 611211049 207047870 674674179 301485575 775226101 243592312 935286443 570410325 922356850 490795394 601660061 353003462 989050039 485310194 894918637 514008867 648772398 560322216 614620156 604254817 844840721 221046412 628464625 503094475 594300395 537783037 993522861 208366620 775911510 429383038 439979708 454717295 953455950 490743211 992603680 507213442 825224667 283250480 936923113 5407567 765576253 394672646 964154599 165501725 704110251 842271668 941761346 866315205 981190856 254316078 454732301 961079458 993288680 531097746 635306327 817152519 931501859 726779885 990099378 638933152 873672040 31602485 164715151 699654983 818020078 802927968 978926249 324693823 685698108 657198888 917154359 779022392 857208134 634077824 894393587 229138199 660182942 27486032 580614333 667982140 888390794 327411755 612632447 436454875 894750818 529448082 895814563 470619708 542198381 117139495 624388218 776529564 795114280 814874008 987577713 201694085 276490073 828126521 931303400 463274884 636114068 690603782 940427866 97215366 384913181 238182509 543791365 982849011 986354175 360609210 893810877 808316565 990262200 287574503 293722616 378059489 844112525 755736314 874158645 36596022 814828658 481027909 491408337 134496606 375164017 136589318 825964679 290747690 630136398 895734407 905281898 464408931 997259302 758744928 887930174 96989791 977080076 616515817 858609404 260693946 369331549 864904773 882163577 300989278 355654690 949429887 952605154 784025288 956681809 97765576 268897374 835393547 920806926 735265992 761036122 510150434 944472173 370988289 679613856 919390948 955945111 936622805 977702734 922886837 923751655 730818742 776605748 934090027 961147069 830353362 996423678 32567583 298729815 570171550 683985460 625348673 796685590 166562462 544074145 534662402 900218626 180477928 671213514 514812326 612697214 49006155 953869407 872504210 923057103 803491690 960287198 95215957 401486722 534458568 842214356 884994749 931536009 734916409 941403095 79111118 326336782 13118956 272670192 709532556 920821053 909691942 911615958 814815535 957643483 323295270 415242915 944309789 973071746 81791001 300340707 277829985 735801805 993976243 996393364 258355549 315103725 898606127 921901630 168656563 175458411 525958444 831110266 350569740 808862275 351630645 581655618 522358231 840200879 772139897 804305294 217633408 598379093 579722735 674259760 253989869 320770224 711958975 749579606 900096306 933748883 688345420 839336590 141812053 592953147 899514089 912392297 498816444 541558554 431965743 663812656 7914434 981546959 55730076 161147976 480778051 738132340 937252524 963226302 996367595 996656546 271880347 835311212 981403261 997823096 457557848 782186470 547366112 719361176 662464498 959083369 710258527 952546080 550198750 925087585 846941050 956731534 782970398 972782795 3445660 854591291 874532784 875956900 703529957 766058282 251999280 873020141 412266211 550661820 95043474 359000623 717089770 727765664 897186631 940376473 382218883 577051528 617618031 785765953 771309851 827611075 218650744 754651501 972484056 979479776 268943026 870041744 156787542 381209873 83034204 900654704 29585232 359544948 340553100 391529763 158711781 830616848 984588837 988662685 116160674 970889263 713863650 771070320 826123018 849048965 662032223 669275960 851795424 904273320 991829398 997964088 122003758 299525859 867708806 947387239 560580668 890159197 839897699 845933014 910735026 979571073 631598759 974761314 531786558 893402930 481646277 952635119 652255489 765599726 850111903 933762478 930919158 933181102 33372958 994529176 957859688 981229556 714387498 978620090 273339611 311454691 751583039 820277413 589160470 954742960 398389908 703255496 269712467 625604684 565362018 770231011 206321409 626901519 502066722 812067202 766159676 910487014 945935072 992685369 848145558 954873069 436815101 669976129 689929474 755905472 283652946 973433705 30191153 928495331 660540192 909569744 196444190 391548791 626382674 721290799 275268768 681295786 513182644 572436598 752087756 986697388 118332186 716111771 16058674 130987741 146435646 810436980 71025235 467844100 482561087 927273144 619727182 640386013 786221517 811388972 482418843 826241178 362009233 376904227 975240774 992285292 992424099 992685914 197981150 615564349 782911605 869544423 642983423 791444169 774497131 935878586 939706518 978298789 26349315 575312888 153117934 512825513 361492984 587241912 880846166 985641950 709830431 985807207 976143630 996740812 389887937 565095224 86818386 139677568 92044085 257137656 872127424 955035903 205902699 951827389 848146882 962058354 433297792 720163508 31034867 558588338 846011871 885868408 855960807 990903280 661489083 785814011 732880038 875880025 59806346 668965670 607410037 737003033 251875582 578047637 32142059 633007987 36078377 68372323 937760136 944285275 424029543 712142530 632115312 708116985 523050527 983640998 205182711 485100219 227143745 643139530 382670369 674390504 513274092 583809777 348498723 752342293 126316322 684707495 317435106 487723276 944905182 974896543 450806919 879123793 332663750 469480009 783433324 917427270 895416635 918454607 161197446 605519359 285171499 939375192 683301915 934184785 419022983 423486682 467287918 687693194 761176610 998412702 753363960 803981126 249040551 386214947 857452772 981638559 116366784 451770888 794153281 849757901 717287742 895505859 550175941 787977703 117641882 242877880 14923584 711697298 547549244 921241878 835543301 862835346 946642422 953252614 916446245 916876152 929649992 978816907 918738112 948637748 980728205 989638844 931227309 940695588 453874368 453876052 411323 407108296 622077746 751744947 907348921 955270029 444158569 643495321 583566530 899412765 855192870 977731490 439696263 463956519 177962008 879594319 242260250 596304370 5426179 246147555 769812246 881557066 848016422 965320712 767371654 849619076 192089552 247504691 147446570 451354079 138093642 944210544 845744988 867249075 248096820 466345305 587613644 731014633 208749938 558695456 457228471 821448463 306350675 869680867 546434680 764588200 944029502 955994095 876154886 927692630 809772471 996405185 692605777 899426633 451783319 461591755 751958933 947110378 726093855 928817650 683014129 971845983 811797388 869009426 459730955 709206967 293289824 678585364 668360931 959535793 87586910 284124072 164052910 774474082 827633038 846742224 13152208 796122956 608971429 945321819 588029147 827857548 499371559 923838665 866109488 902268882 149828452 966624605 630660689 810954599 264088546 926357013 806252132 915221145 157967841 878715765 984170297 989986595 964148136 974846527 450482622 461602622 305014857 850564188 513528385 971558539 625722146 724252428 42096865 299592654 718385692 777091789 620078756 672838017 80044461 758948143 185578711 764880382 64753389 628029080 194589490 414902742 926344688 970738293 277499973 557274001 620126206 974326551 961969205 971428907 229031631 618515737 617132877 636757440 251332624 902690138 620433445 885244191 216350590 924414207 629568507 895374910 712679126 718465809 747949935 802455050 925548329 978591067 129278259 469642316 631102172 891263476 692897035 895907847 202073719 838919290 31506710 580408053 193124687 477342182 886366840 893165938 696692435 955807407 439590470 908926399 890849184 954261924 424482889 666264740 712078482 966864304 84973594 115211045 43697128 946474963 292600397 571402484 432700721 837631009 304644065 983322382 602266148 949720986 965683219 991839306 220963382 652330538 935595169 984663705 602830393 706953208 872315193 958803100 574854193 967599218 730174668 778150869 965875406 975473470 984075511 992117355 113053544 718876132 16914433 137873746 745759407 900135721 187680246 828081917 178156832 442285452 143421399 181073780 100543055 953509601 578449142 694758759 544765836 773611435 235476823 863571408 312738289 886606675 58119206 430634581 826091756 831207778 530381775 723629334 326749158 350268217 870797030 912148533 948650240 971408914 471520508 475241736 116032510 639821696 968471312 985694401 529208694 951252783 388352352 612795271 536719606 675934470 217789584 518035279 284791554 392377861 494325103 962288752 657611141 931307691 109288250 587936344 973236566 998402048 114261841 930401621 725533697 860355695 712055647 762068673 661405553 735170342 579471133 911966014 436638300 906329214 808869726 833464154 474047302 853724667 969170068 985025161 240250295 351859007 358531701 450052525 959530949 976048859 403838347 499134885 569941628 984759159 451586047 775403139 775409497 838759597 835496632 855766552 797066430 892775810 940636536 973269230 137874203 479058360 126583833 815911962 611521076 836510844 800278934 949157829 312837766 336585619 698676793 739025865 26226242 257914336 41596511 864698640 32689624 436083251 8381532 643576468 83743939 726399915 364306041 809793169 959809628 979522802 655160078 805983514 290846652 341117645 646947177 882677664 935928187 951543283 585018054 916473874 486377508 736631198 842217361 948481076 321769775 959180540 297717401 723512967 759742598 890637214 204983879 656717363 359192996 767546914 172967153 182375561 179891038 298715542 872796921 978929550 894570717 967858385 716323761 961422110 978506743 994670010 270219189 765713617 698740960 879387992 957978470 983135739 908637159 925093297 352115926 942212858 42625994 915472705 740904730 942027021 531580005 684385525 484732721 719337329 608407703 944562623 238978661 578106408 55900846 782189575 778549233 799847240 504905777 515394662 783976654 860352565 744708602 915571156 896106845 929643579 147319202 514216335 713238685 958911524 294524489 667794132 89490384 888778724 34806772 891135509 990914739 993246074 581971494 633600508 698453282 793110140 469039464 796746245 26013962 249495129 396117345 656240389 504119326 899430870 633843884 699094200 956132015 972650991 717632552 990775912 977859413 982164958 237847466 923221730 224251311 764646503 131536981 987943169 347543781 995173404 318713698 883695891 121100166 224177528 86172227 580341755 210675708 415297650 100099827 771403527 854311067 979433192 788235872 795771361 518914205 827713236 627081387 848384360 742463560 909637351 576082590 952262950 788065062 868242550 803614628 805251779 324590239 944931189 810972354 824998372 262675047 924224199 812270130 845473642 359031950 463117392 903983938 930804566 67454570 345751976 103842727 590379451 418181619 814175138 824317876 854813118 135682197 581859708 157545291 914269709 945884558 977152334 404433032 556573462 76901144 200369903 386552725 536602172 302510489 813877088 51469861 819432951 503518248 516905216 798054332 814635893 789620436 828778420 453367058 718928523 836911957 995023013 750049082 754206098 370238168 762590712 715461083 891655522 124701745 316874746 101794291 769785875 415526938 673253058 813854800 851705513 62187663 571698580 294319786 974288896 56759803 949386878 611977333 875435220 651160173 663266550 470755680 500472188 418221897 539851625 836716785 879842408 738044997 817078712 359255057 730829437 127134694 970957752 447754793 711057450 834658992 870675889 791748135 914646550 999654438 999975327 952637021 964541684 742444672 748315068 911757540 975941323 167903187 843172741 475269335 685283707 554677237 771492984 648660263 868479983 4157779 815390923 216791533 624285567 511766998 622932539 612618714 818489558 133147277 402932348 932265709 938808732 833608812 875988749 266902150 905472650 144940395 170634845 879216719 914805334 781972856 944654288 239530984 848365100 864481341 977762790 156534671 326428525 656492926 926471306 681595052 882088520 385645474 677685170 309904819 348358841 592830795 746683708 543830909 802832009 983774725 988558479 744481065 895217991 615545162 995957795 834654577 964525218 670063169 889344890 213665527 763965597 23873001 126724140 213056693 612695772 995499648 997952171 186735413 424354903 567658779 751975707 98624164 768110604 769557805 769932223 372163964 532129110 395938239 942505434 856838181 920437141 926380744 997839333 298524915 480424232 607934039 728905300 305398443 538449134 573258624 933985654 210960140 600522056 343131992 428152934 34518608 405495510 413793340 425907920 302186011 332600176 528450781 687177470 914514012 944217276 163104984 712957681 697632968 999218642 510626857 645160041 220354453 571225027 578141094 732000870 961350616 962641703 273814671 410865610 403323722 597152374 964974680 973233136 196106974 282507360 712504794 721053959 543671225 663119940 64829679 267597006 976791197 990055675 546703902 803769207 55439798 475761358 709399280 984596646 738233697 869986717 631361740 897282961 431138839 859294918 31173027 71531321 445016047 966936444 474880517 782867395 755309553 840948860 769270180 825592091 46999946 342563754 44773895 638640682 17323322 780275959 905662567 911449215 504123843 616804259 934437643 988080088 278116890 453039581 224872587 978940664 75135999 142159950 443477539 922803431 373337074 944523221 482435030 913803562 201390582 262733386 382870498 942182571 557968928 965019219 315739816 999031563 578283598 904649895 603932835 838685150 132798675 636436090 779584207 922695037 614164576 974705282 759728586 886468671 466933898 525593394 197459171 737600285 587387154 780063737 396859540 638160910 679981057 890618389 892524377 969691235 709211435 993266233 750110173 774897851 680701306 757521744 96785759 311493748 247124085 710991376 796551502 841353167 267139711 282971250 342427513 473867552 503914772 962794188 913252000 978015593 258797753 952529146 230230920 992104642 759030208 949872660 637622084 671012207 283978395 826150400 438295247 788710386 926148749 994861489 762847238 894278764 556794158 584186489 676159781 846228543 53976709 164592145 919467850 931249515 751512252 865777679 594396183 944308958 894004538 924769076 662936305 754931573 157908061 559215685 345207768 941842492 939305887 981904278 488899904 715298318 94830527 673235724 36644860 610281884 119572164 470422443 502697869 620432723 755841836 823985246 631388003 956712798 417258562 883100980 640700754 909367628 43211764 127378348 52050247 81626456 445218038 892359050 321367644 918868240 766324915 979710437 860397928 999100085 328239253 427534429 462735889 558118594 666287416 689166504 328741819 792191941 699752299 849466366 73553830 796427494 905375231 947957057 832659414 874506034 828803316 917120650 416314449 489143233 517234135 640870554 523740113 853705490 11971587 580589932 121935717 486931173 14913796 395846974 672275904 756927856 95297122 475211292 823828297 988704456 670556475 827147467 434431794 527092389 895356736 923458074 694700211 750183342 671720098 762547013 599052564 991225466 152736104 586567248 834249518 845792665 570682200 599262470 347223815 806500334 707121783 921445308 418357071 856699345 290719520 323471493 690924812 850630763 12696278 401431837 524060087 800711961 317170586 759058011 692784829 860391048 767342360 798328558 728554717 963314146 7403447 310309745 152162878 799434750 339943786 453887996 953413557 959159731 111277684 271017622 240214667 806980531 491825252 895961891 506982782 596055350 32301902 371038665 31939522 120191453 893967357 978844623 194437418 297142098 597710728 889309218 279116454 506409441 74203990 708664370 609851339 997317471 451457578 470510134 960090208 986499480 730676049 836688795 971274308 983493495 165827258 683698685 684693909 911611251 631913090 707712134 591968355 829865985 321304665 588482208 890658895 995019408 242521686 307450722 904106563 924499010 484179230 487953498 365597193 685334269 559213856 838000608 817520421 856265722 232980077 240048103 796651022 817255867 753534941 830826641 285543927 857028995 676058125 977374954 914065650 943255308 619064235 646788666 945550852 951543217 267105477 346770947 956572996 995089065 186302171 237498470 889547816 971725388 574094656 655557583 790575852 939638192 34173866 885646768 120955759 921218383 285605427 669792896 618964499 916893972 935789737 947850192 51117440 873582861 50086998 897740036 81976845 753483493 781627288 832064967 770586283 854295199 810847889 879139168 585254466 674014182 965495898 966718457 836480315 970187225 819326398 836227589 791599658 929723149 195887169 254918216 839531611 896618788 551421962 840573739 117041002 352212348 586535764 967365238 494759876 549683224 289246232 923467287 842907935 896284673 648976231 698331715 667332279 817192780 290771716 626400711 848977529 913252786 143242652 500005472 388934268 940298157 838619601 848705445 177947160 784088236 737036020 812822949 525460802 608534531 826935133 892537568 898502147 902662857 494152797 749248393 748297230 778763398 182086303 697515967 30951343 100943371 998495441 998645971 632443105 687838666 564121861 629406402 318214378 945233512 131651825 359004434 741503017 968902767 205573176 974367298 715208151 773134283 998962428 999143253 495757235 852713525 359426735 450011706 686524405 733190956 337943649 952088658 633262352 897996584 443832182 773086529 577666767 829308735 882347754 968689334 588792046 812110091 678710870 733639920 413493309 676123143 814162753 820039696 447057339 555947544 468937030 496136524 198789601 415118618 682997870 696748404 545455709 992204254 687544696 702361886 593489933 632886945 31694228 511359218 603258940 996001362 395231522 451075000 352190181 517895872 615460505 984398436 679223452 743040585 526863952 562398314 210453360 372526420 449192340 771635878 747855273 807872184 389154375 850670900 402616573 919863690 863185869 959079939 802769133 857737865 679213489 939303099 573978714 628977783 978189121 993410769 482308508 811878804 916219471 947947191 753766822 757877680 450011157 609922406 819671360 973334170 949273378 985330941 441746509 938175372 354965313 750985591 581198313 878992651 552063715 886849304 423804709 559141883 581439857 872890365 706131591 767548041 102709714 426439308 407442171 412833962 514832335 618077932 770798136 896739469 629289635 784115064 3369813 261950546 650857268 849695892 954524393 980073627 316304417 943854413 173895850 318630038 277584720 653139620 309092188 382390375 174994478 944321783 694141903 742194432 970736485 980873652 297205796 564098101 243125081 384883632 176016494 564919598 444872476 841144713 883586971 973909160 852771638 994498511 219428909 728217323 300600328 919524611 638215152 834286020 880345305 994595656 23367334 665933001 876056932 943136652 110149541 615197012 736420403 948531860 677195982 711777234 949641514 990336544 239200237 624049900 313764514 572828795 541503352 646820280 76179564 728747460 166518490 177022520 277959867 364538309 752289790 812636952 801795983 863029919 762553370 983568111 857460006 878303329 75922301 552428941 854396616 985639650 827974919 960375765 468470204 615856181 490087830 979999770 97159188 132019598 384859961 961977926 328970954 650685699 159659076 988398030 224062508 795254373 760471212 803169455 972023104 979305782 364068495 576622459 435891667 958121858 802418796 905685075 222853837 327937866 567993325 838457800 898221261 929951561 471707896 859361714 542930277 909725765 736583397 802217218 491386165 670120190 135317947 591696461 931314626 978021599 701530850 744600743 827403360 854154097 431162513 550744179 300222240 363746938 81682360 521546043 708424802 712722920 746804070 821353467 537890995 726947432 885421489 895574852 852643062 935064420 945955382 976907911 294430960 342849165 332074082 390289599 805878822 989055958 945041860 997394055 952531626 989782677 988826514 990313143 851247939 954404581 117211095 460223816 3961080 90246687 419614905 428440570 1561678 886689524 846809352 847115865 517038229 732071046 943920417 960192380 296110994 353868767 722964339 865977727 544995030 549876372 773500041 955899540 499726653 553839556 62673893 85720378 225485487 362889769 770696170 923715007 44600993 639045716 880472138 962279460 277093024 736181108 50410941 654091799 919022704 972275089 887581041 901966170 587842617 927319911 518567290 673418915 935155504 990708639 596719013 749327625 992335796 992338103 315592452 900465052 906452256 930851055 538878978 695165959 281103543 365840522 450690023 563452760 652774407 695196797 924920151 925412695 379930636 678383023 440755205 780109772 600160057 914922442 947646145 955876056 987621718 987909557 939480159 964491216 674113503 852189681 848900862 917466017 953952499 981480927 982808172 992700312 91683174 667266465 443627467 860197431 752356086 792472917 202866637 929235478 311938268 606375466 403305583 713131880 627908139 687895309 614721258 715741968 717648970 925289742 250987310 718238762 258958228 771534599 500994909 748642691 260249204 475858042 57496266 897451361 796357506 958734080 769493249 871584842 796838561 843501383 136427608 557174025 540077726 802850377 992801809 993415062 766075942 822317871 745054403 832023155 682971530 864122074 147765743 180389524 112510012 335966627 320339320 589353465 239492602 932452944 1785587 881078122 603347242 900594546 82436824 810032643 912267313 949333971 189581031 294287191 653348467 783667874 318065489 491678568 796449622 986792466 167022661 813049245 262598796 727609275 627623039 708144126 635577092 865686858 239292762 343900158 701227678 710399814 485741114 721954400 372749467 505406312 199741670 952488900 97493046 246485172 456557165 958770964 696129164 944978152 172857760 477442926 318891060 559973729 745316882 920838050 74314828 942078914 578223152 736778739 851341292 987984459 920227977 998980846 638159054 644289724 938350277 963796819 292663154 576717616 110358441 848789973 793371938 910671806 902876458 934118172 189958602 228872684 983073292 993418632 988930735 992046012 165074470 807789285 558800175 782272520 734338568 841955789 240740893 727394228 881290971 888525098 133176665 218345329 302830147 947617214 74073427 302054175 847326084 883636282 286291298 675852539 270157634 294816405 317444736 643214411 787181110 893492508 905821436 950951333 902844468 970155543 118711661 367114750 718207538 997548530 983357912 996807017 862858503 969216454 209919470 238872918 802742322 888974918 947875023 978361817 554565900 627738998 313664409 416030662 989930548 992528391 401484454 667837572 760161186 915608333 818858945 998050483 722671612 982893419 169276129 754418352 398782596 557170003 724284792 724943460 244312611 799508680 148046515 244114366 253363640 301312564 817138247 900011009 204624048 990349489 389068349 577003945 208514648 763055794 332755404 891229381 885150435 951435667 954480630 967085514 899374748 980106962 393508274 423348678 946067469 966180784 526988837 923834076 13517356 300760548 937757644 969432094 516330648 814649291 614262346 650607183 171639790 223390416 187530697 203348336 482145936 519749784 22991648 550128160 189186534 473770707 477647971 734565177 957626442 997250823 244210553 968081355 763663673 814097379 847245581 852239675 431647834 895440823 403062491 502438938 145827144 796308518 142694648 669261335 139250631 400541698 379307274 472480284 411907936 835661720 997604812 999484101 713879932 865309680 731896892 736769790 140711538 785405544 545020272 712052816 991164999 994257863 819652984 956627914 743909926 798695423 511653242 623572180 793313265 837682694 375890392 489455265 102619359 798134489 376504694 579343103 166568165 972344135 497742168 627671403 440051701 909896197 970847505 982094315 883883668 995539403 744075137 908930471 881742857 992336411 127956620 363392878 290939479 821789996 506743577 537143702 866360843 955269407 545646800 738800376 830225679 840227931 20647860 718343852 394510598 849168709 50037199 233234248 846471152 851884122 354688964 619790972 630552311 927752540 571062500 843193743 184342128 575656952 74514454 535924348 719657224 816325993 437410205 862016537 292885489 757780105 557831662 809440483 69657896 741296850 327802268 408829012 406991530 882021915 77587207 561380079 888713191 996475919 957429953 994845412 13693211 99062288 946308669 983676460 712601871 717338590 232154838 244882000 770626143 803213219 598962724 932414469 202800502 222226810 329565202 941509241 429572669 626581858 718494663 733812721 873167977 881465955 412581980 753013607 880983942 951887482 85867887 849801675 156263284 401441346 34403883 343557865 117620528 857514330 750026997 938806119 408271293 871240231 312890946 352012316 266257912 793609756 388312852 889274173 288734455 328086365 226174766 987347938 508981232 623182473 718337137 934907263 100347533 897278123 312888386 452403571 826623990 861116467 117047669 192055076 390031199 937836486 213829249 561399472 774317596 873541283 872744153 932440133 161623754 718483682 724401078 762073969 415453039 888698857 472953925 903205838 243792477 391514254 994734980 998042730 764535916 853277187 856486694 973963578 126912228 343366137 935463665 974549988 812313248 879384098 247285699 760200862 298434713 445847189 394588861 947165001 149180726 578253202 572801466 981149290 372549922 572250521 100201873 791813853 194878652 469596152 335468862 531272586 818297275 819726433 248979146 754562823 378784064 994285713 844236217 913771687 421077469 657866845 355966276 778368961 956220562 971767448 122139760 582349094 534388787 624352711 161503086 855747733 633381796 736239691 438249432 654442401 408647481 838729706 284264259 704207950 430910174 974053631 606303450 922320260 423464502 895405989 977418423 978581409 662267364 959760799 134038412 830875583 762786416 826128255 581250919 989546104 387639642 931985067 522436520 911109950 900766317 933719050 307073834 628276727 597846204 659352058 94157749 482076786 697092441 892924580 450905445 750890805 799783093 838071059 883002393 889315464 497929796 886408798 668949337 785082455 409394602 550183602 789020057 955119714 398538754 590930852 236147631 279296520 507491815 610683848 343506484 596105256 754619701 868671165 105585307 482248373 878186126 896999501 978854043 984025464 456639281 487520239 324111395 970739830 267012909 420693147 404204636 578557531 472487720 663063563 294363057 920470304 362733688 548247084 470910871 737715352 31201545 209507220 16228980 352620606 188238019 300551798 545795069 637321219 298178970 320043861 317746356 761783543 376375449 893804726 661824574 668005746 633154785 867295906 583025830 731882805 999630209 999767676 270425385 817245977 704383089 839655032 486507486 714531160 556469284 639846779 863548499 883729887 2511285 786968689 474608081 631016379 938651186 990597661 968521942 979674770 449454059 858491483 131172490 880441919 514247417 588081339 452318707 630785351 629767279 765771790 354800213 507194971 971226136 994351466 961459465 969964938 929326538 948118987 624619961 850258217 624518525 777691257 351362973 888667204 302496000 690468648 425980502 816378241 138780835 848082817 4955524 304861296 893980077 948203296 917529943 950038414 863981455 979331338 351246898 571664620 280790519 899759278 275672816 528149572 364532224 654445489 726368840 873897483 269933609 341769128 879994568 924696681 938875158 990804933 142765736 493904312 332744176 853043701 865208290 995817543 24195807 850572774 404582434 494831661 901914404 906234093 422247529 635032440 804781801 926557636 915440771 932709092 166779501 778506458 250678871 716071979 66588088 979339221 240210174 279095686 338061844 653313656 994722451 998765680 442373715 833792463 83852874 401389474 613934401 680328469 76609303 850999740 952627256 953531480 614855311 853123898 897886373 900110754 583734004 676596200 625230175 989235325 44736392 736154136 602831123 871722397 701086454 982090602 461889220 914813886 539152886 828596686 566341283 627157700 606130779 942599941 426865506 723007793 214497619 259368220 573509463 737024267 233649983 636869056 19139046 667692051 311534011 627707978 5616598 85438293 606890661 888418715 753171843 813943210 826485611 994302462 896869831 942141772 237713109 833634543 250156229 979409126 882796095 912663855 290780244 419788932 228165405 287677534 427365067 839783230 216734343 294079390 212573524 510622551 317684337 994950108 493144981 635176686 873793556 953086892 453804375 724132086 467006412 490879937 349487497 747920306 58738013 703485296 938015663 994620722 311505545 350938257 546079144 927952137 456765957 919853739 4020185 838405864 24331936 417054094 451466424 719320231 129863525 413198170 804174239 977498979 568165185 778718683 631849716 986353192 371041363 739532809 289379382 604023831 266176414 381968159 325632681 956636647 681971325 845301336 218886415 640245709 22695246 806580643 692180761 933879307 591949985 877636562 785681954 795825500 33116636 935730992 858284033 981081802 226479110 850987050 620151653 971629210 175137071 735209187 93745203 676501672 268522214 536500914 261278631 289805035 366945058 863658318 380512769 990732943 906261198 985297948 870191706 939453468 896654407 910934865 609703305 898165099 856347669 912514348 615435901 760008524 774099980 905228757 268397690 609419358 868160350 979297357 797887318 887356522 720976523 987492154 610955614 667631047 632746170 931826463 949075548 997902581 63560420 660240498 245299280 308986214 216099581 928986549 744729051 796079207 453206868 657088230 5371635 605596843 888336973 927005286 803297449 821920645 755374098 906744547 21483462 881965958 117524518 640180050 546089694 706649332 364788090 526494178 792364024 901275383 972113983 999631868 466077702 528269867 243308724 929067321 208497704 261401751 83153442 420810858 524994427 891560797 23066564 530318225 161439526 379855064 854519857 988455079 764873745 971070342 629040946 705439043 145915116 660928188 521942113 894295775 434162982 871112838 589987977 867982927 902703642 957631348 399023886 562097843 478390144 524521520 323062848 414893377 259860610 301123302 630683328 837148979 999670737 999853180 527947558 973707479 515109811 587962331 145075507 187185956 473927790 593727771 937524435 995149869 576733826 880704032 325910484 420966534 592027069 664742390 598579768 807065107 422798464 483405716 231683603 458606532 558123254 714942932 534504947 847575098 952522529 955434968 59169018 512038796 112933115 717001178 771388315 865646295 871715420 982491464 56473943 627340911 941650080 953687351 38507838 867209919 573491332 718060255 979303837 999950069 48117168 257046893 401440754 424092120 58868285 475019631 482379586 691833098 209096309 628849913 487915064 718078297 165565926 906614103 490866407 935838209 85924241 715588682 283989002 979604587 85476264 527194070 994931300 999007800 50731751 552040076 916081311 993639948 131919218 647268797 244226184 554565783 186808485 871176197 164744061 668712392 378367127 467283734 644015002 978353926 243840350 903382911 587065714 938724963 476711905 631667435 14292773 559110363 888230385 894483321 422220005 476770228 245022897 269740421 839969370 950952774 507044608 967495429 727351431 836644094 787604090 804995210 176156497 657732262 197893926 836392937 726852227 807892387 30651270 944541833 822465396 961913485 721446867 826189675 4164183 5077966 941421239 976681901 228207582 754184223 594439744 650103108 217381783 365594874 209996803 370035784 740636177 952339274 572343055 790139939 770801329 994134955 264196785 354746207 215767629 853060780 139551126 958145182 273278138 296157626 877527871 931694368 433975866 801455034 506371339 958937802 979995929 990233848 985834901 994444060 880976498 993366937 90597268 855665101 182035202 426561296 771002458 924739611 958116922 980557238 923196229 932806393 783074757 847426119 426873342 837759499 918173067 940234588 436659512 552108478 188361225 632563888 88341587 172237478 854978203 962438077 539473587 852649747 231243199 768561921 557874814 834880477 537597208 775546095 273221342 718921374 808929944 901581507 838443908 849788214 384049755 863324698 649989997 733374399 799749174 995835848 214230848 697570773 873106588 927016455 554362778 735631256 501465312 550437145 455999528 518367611 645031073 858125367 716702662 869013452 675995207 925176074 742331879 931613259 478970513 643380615 993330720 999081772 417225630 805611299 692103758 782435888 310988452 986319725 594284772 965110945 37854789 307291539 168581348 664781831 773819210 928736205 504788081 949671177 423137540 562185803 48704543 397924921 183472410 274730420 946904259 995229368 127965243 250532136 463393708 729714059 32333996 101546775 447034747 818278303 465738958 769757975 321282983 686513720 821966064 823935019 590385067 687971519 477918043 760232324 223109111 570676378 476560961 670902508 913805438 962089731 940307455 943460016 841861780 869433989 798662960 998356344 497811086 874559430 633388272 756285633 352629773 666322156 513836181 624411000 950838902 995547497 228606304 258680497 856214592 888769625 768460779 841707471 263136306 858885755 580109938 611390070 835546970 885145098 163576514 658680056 115138473 739555870 560345774 829284795 731851990 844848007 913914326 924626046 424563257 650570529 683201076 909100077 119953204 897399678 774176378 897316304 357742929 701727632 598387041 657825444 819914320 931119740 793272789 986056575 658786288 864772216 20434208 218271767 564922491 873686997 7190775 498667718 792949342 844206111 419741560 604070136 767603596 855524469 373191594 434988761 255375432 255550037 855871 962486507 502721609 830448624 493853307 578125519 136371929 899417288 648782449 767270706 256761303 346242029 130076066 788642356 846388631 946619444 17506390 293590721 121507730 906018157 74486585 421012904 524287166 819742883 226649663 466403821 550712948 929498112 894324596 958878560 188247625 905622672 712056539 793090647 255020966 521596154 694276109 703232694 817046472 836609394 675267834 926045826 448537562 641467905 94517652 321430602 395939594 554842686 188798192 855753284 617719629 622905281 556630734 687703491 363536876 493884090 478417604 679976857 76355681 787669742 860271961 990423950 60347910 151549818 256612835 701114102 577781626 805396367 471619005 757842314 467051722 627091121 247997937 998364278 554140709 577802455 288727601 953513387 994868287 996410797 518902633 627226745 162778362 996053404 897078571 907959107 867471970 877951426 740217843 774653351 908632438 922571640 901108475 970857084 41587750 415670675 152003425 885109190 628165018 674479976 692700863 748734192 428015904 878646873 533318880 725488526 349383731 990333143 555707733 659135222 692901447 973839893 383269047 808803311 549170540 843123993 514662331 746698918 506395910 713356834 400583716 807666597 351132965 529509557 636036425 756254614 849553286 898808653 512949881 917755080 118550203 228223938 408903240 497254114 634102192 977301029 418565391 778336317 496396560 768303362 848355591 866429435 423501714 926200557 15202199 777964801 102186320 372634396 581913954 846488214 464515077 662100846 633809216 738419434 893921405 921841601 603119220 885744697 634134073 665404873 133190192 679272433 451091093 485589642 821325963 950221074 471350647 724505023 556039111 565420877 640164373 854494113 424683820 636725526 250109142 420258152 558147640 668457782 91692842 676504212 841730843 953848506 727880355 983582360 676842285 826226079 226692236 338502480 989131743 995079228 357263509 978658418 962787613 996267841 482064203 528431447 473019321 696452223 363001002 671340413 485605217 895316771 694535408 894445334 436644510 937025457 194112367 721511201 281155302 885306000 784246098 882817179 175651495 779951673 426583668 942741564 396080485 533509525 987526873 993298301 463636782 608076678 806219404 868703473 624433638 773868578 100248254 427707922 828016213 892350292 227311824 909338678 583843076 726705768 960942675 965962085 925732146 997849200 826815815 991593079 727072263 765678959 925684055 958802952 484045398 839899026 373621483 469344236 191016647 493580971 110813559 237089754 302416199 349890646 7872634 712716774 508647068 584081382 864346700 995092987 348182751 750444035 947374122 951344375 798073860 935205490 256813199 709240120 995569248 997205559 729602888 764057420 865167295 969968404 314996241 792591800 183401735 972002545 703754515 916178597 48935810 193848679 370785974 769749431 83636385 532562638 234389000 275532249 579012584 673565571 30636440 368140605 321702483 850979048 975951165 989209294 875955682 934485710 178331886 613712135 425289255 998778313 950626236 991510017 992630513 999865813 860024688 874615942 946494160 956094269 874481912 895332756 640377483 716838505 378172930 652215154 169852922 518311341 475707504 611693499 371710078 734072126 618283466 978443674 248414045 506361610 851877531 986182686 100323210 596510317 666448210 713239504 280984226 810753582 945191373 985288300 534756375 906399916 610359582 938722486 459917899 862244816 141591002 520771499 325749859 528007672 392441011 680758762 511248292 862489620 70333621 188576097 91056227 637827772 759339826 879513355 998729150 999088316 454648574 658162333 424665790 611848248 18610579 226139580 16366157 349417915 964001334 986843814 329979627 796178542 740766838 842113024 4084220 114982638 752456252 926901250 478896426 497737837 431309743 600216101 251119413 410585835 411459180 463786958 979283737 984178473 193567216 812337045 1882777 308990681 542173461 742193935 930954256 995581726 10043735 902560648 122159282 903550963 650404394 844490740 209633395 754861763 235515053 678124277 301747433 358185907 837793296 959131938 311298179 534287481 25110959 896034805 50239070 742696870 767556886 884877820 257697647 325406506 69915831 474622033 574904549 847526225 822099733 970732031 983053320 990822262 605635689 856930490 359660772 963780670 313382459 395989101 263154768 535593844 331586382 612982268 901554676 927084494 519417921 961416294 878162302 908314537 391972759 856902335 858296919 941077943 477084012 540691069 75090358 725314154 991004246 994816101 437934527 807639017 71265082 870676295 899539308 938629265 757567492 930446283 931267404 935490882 5611691 266745802 973886924 985931444 648786697 704851361 388437511 819077662 941858944 995996950 295076172 919182123 347283804 780071918 490641425 808181265 927421931 939970217 480828543 609020278 335322132 969857000 714422326 960218186 331467754 521165624 537047119 783100652 492563060 683053171 4696462 335870264 53271102 364147137 986162451 997896763 669732447 843289852 625679062 988322207 319027058 811255785 509673042 819964894 369974842 423525187 761938527 999183726 194477179 748489622 349301817 599610418 167064580 714552585 306768651 476953861 452997379 622621712 489515310 607305128 262975996 794986325 529385491 842128108 371879840 491122424 91322664 140811647 807382624 976651228 121810424 825607716 483631718 881171676 399151966 500835932 94707229 742073252 103890755 113498348 240592443 368168524 828452103 926893454 32913655 599409448 473534985 554672470 551593824 766568588 586742840 753703067 109915345 227022311 510658310 733296233 360727566 966686650 84993625 711478257 226576289 666136136 152544512 894512339 855910691 875976383 799063927 802207734 889905654 952301761 192375477 597304951 980632669 987280412 899264787 966809532 304183783 580168900 184677040 667908536 998089431 999209604 641537585 650130110 500239911 611038453 999807768 999869812 155138636 719256890 861213756 955955168 78898194 993769123 138593944 329779236 18371864 958243077 285051720 609410115 674056086 721325790 200068833 412741393 526338370 569880042 371098018 539079844 635068271 809333091 793023660 817568678 332288238 729928291 19311688 605399235 477617371 551001535 113349585 518216564 306699956 648826063 822642566 850940250 263567650 940001535 427661433 482930602 310553575 396367933 995174030 998512216 839878682 997554480 838819697 892138435 452748733 879175298 623600994 888255206 113946669 199000663 769938568 874599878 84875134 482289823 944126721 987139183 722826084 763668740 765455772 775265405 640941135 741387912 250284117 684005801 180851957 973702983 413261368 450156576 633746845 986822316 481239351 770047660 132530047 833291984 633639051 905059615 451756617 598771923 399449496 535771539 670942103 912849349 49452515 84028730 640945278 746428903 64654372 319847742 331423391 944126850 288478479 357553577 611362479 628438907 777686144 830618869 407325060 839376895 940972656 968216544 777348143 799657407 200780484 813888819 914551840 955636117 519896623 888628069 963413561 992199399 750046711 758554377 329563738 835848435 826649962 994082079 680050530 711067944 29669626 814201147 897979089 995221059 779942018 827883677 967406774 970967616 42461028 127415402 481547381 896853563 606274594 847856921 104919668 218251133 151695442 626134063 48239540 714358364 739447265 837416404 833147435 996231283 561214442 703200483 950814423 968742877 840056732 964316853 92151485 330260933 875906698 931152350 355259199 838352447 622894998 648235953 322531697 575433774 604457470 806060416 434155476 940656362 722787435 867769228 797263151 881807367 896593449 936380854 581541424 643387834 371065327 531814729 530342771 561237167 640463002 752809841 394850249 890207930 168391326 656163420 586402610 879638027 74724437 196354327 183925179 977677335 617549919 828512550 139529847 708163562 892716315 920802999 993838775 994232686 870806587 935124314 884908798 924460901 969392102 997948711 586791490 652556406 548012675 921540427 880915305 893435782 917420110 953511356 117709771 184398755 656604212 929361898 133669266 474839826 399977874 769258584 181739188 256861043 166440628 333857516 451740614 848667597 93421788 607331753 348847994 705463954 603810791 963795842 220470258 978716830 726685014 750761249 792611012 924929721 592070416 856524080 30405581 323912756 757949699 818137962 305333474 902746795 639954720 839500708 626368303 916512023 407064924 630303194 199351225 213759677 606992560 708199323 874870566 884686490 59669871 208977555 939841652 950537832 192116346 236416472 375151166 387921507 145296527 886073704 433275690 530281297 827782460 880451651 922999095 957886915 733625455 749885904 402507300 404506899 560754925 859110690 138994089 549320437 364803811 429454107 830675543 832970509 931346561 974814439 662880950 934324988 643772863 805883722 536054324 739078554 174707827 421006100 970772235 976595436 170902734 519624818 157266528 763251318 583075464 618331949 505383319 733326848 962731870 977491888 59232344 138709424 838922696 938273974 779266566 889993106 604264109 972517349 324795626 393073921 161482067 627910550 554820644 641172910 87727581 455000022 990235644 994194082 638421772 983595462 292888031 301764650 196814844 304733520 689027328 867048481 441262249 772707811 853640112 901801653 627445092 864691870 391202459 687364094 128696995 599102155 12817656 235167355 109528602 367769301 930161300 944146594 925707243 982010615 126003951 411497547 174632022 408883261 904465868 958849505 150228604 765470301 14591908 791868937 775601261 867874206 979552467 989205457 22789303 340896677 70407166 182990377 786181219 905540994 529706242 538637353 506574741 893183193 729224908 816912739 746313077 903697091 433919005 977346366 820129725 941186930 118340022 999625697 124373545 600307700 872687067 956024378 453382145 784411280 761990810 912753978 386027283 500529874 315618200 598932940 151048812 943727825 632929582 637668218 957975172 963672431 959188815 963015010 287251442 909684447 560853507 693935116 228808499 789515010 389382944 800223249 815040268 899801490 443517816 749328121 789680309 894624249 769538853 847059114 532920505 935616880 466088117 913124594 750812002 822786410 538481506 884157523 297528690 360863360 261687036 968729832 393289777 629267861 991693784 998908662 783761265 904551855 802544091 980646607 263107925 333699228 830669422 984108475 532352002 980333371 37331993 166990325 849096862 995654856 360839269 972179486 186451670 561935929 190020767 731499747 43777375 566587105 92528303 581720953 525248416 829241221 366860442 951360322 402966040 929196634 453745235 994708994 678817943 830153481 454136366 812589601 861897454 992349990 959494066 971139758 17743705 297547117 534368776 845074948 924670920 959588893 444040549 929621029 3137700 774630009 231899150 797698089 831942868 971339242 842837890 984480637 532402946 777838670 295790095 345311156 414870201 943139097 450573434 562737738 59845106 307142989 164302676 501156020 761145016 871160543 920328615 936734907 209090796 509255343 607585584 642701986 662961264 965592407 291178093 726694106 78988570 951047451 60690746 333784354 579606471 766026113 741098529 861794140 183007582 758652884 806710078 943437894 748537777 863464100 603840025 953106952 141871537 322549239 419609728 971308560 860286525 979582595 801011477 982194602 587166683 868031110 688553698 752391861 152502627 188339612 550736157 884694422 510050824 657287384 417907976 444090472 795618050 943377054 684725806 942900224 932359115 949908355 370347783 631743168 878644618 886462090 566364226 739739294 618239234 971077690 970888226 981489978 628730297 720490384 538770265 737574161 204183762 799647406 743119189 907445836 594359306 957182175 487310734 611688401 690212179 959705307 136972116 182080409 527181567 995387322 580156170 701183196 345372164 691002085 113688021 235680904 473469172 596453091 892474957 942809381 617239275 815717001 468314039 791110866 640735078 667319907 366630323 743504469 980588339 989691460 358625780 536396786 506941746 888585584 579906874 789778922 708940057 729111383 557042172 664351415 205269145 977226709 585993540 626534738 376440440 429207710 693750568 821904723 983217308 988132096 133427598 575289417 811484491 967206338 884152601 910697118 791727466 798038873 279924105 683718264 379899162 581057832 230928027 498355649 54098137 77592701 404440627 638459481 129300873 690986430 848351736 949480902 726690115 977183956 280643255 983075471 959065579 997098927 192750951 496090677 63964051 864391215 967995066 992503901 438413417 640743896 186751651 249759710 224319050 486726367 772224545 791026644 605596837 829063529 77389615 190959316 91082885 156627090 446975965 541674303 719530962 792284281 684275002 712175515 842055458 997131321 840233948 939226980 319809571 652466158 101474523 797842432 551487451 905677674 989533939 994629587 353287624 481538801 576937545 589285993 552196021 809690235 654286768 976560782 986165623 996602439 653662141 675876636 662943386 783795293 398391938 779191433 771097707 927561984 860223165 930198902 962650655 967391592 966053600 966319813 436889386 585870612 302453411 756117021 551942912 552618828 998705801 999803432 906558197 992022490 252464861 896312228 618481682 698151912 12507251 16492938 889350608 960105022 418594966 779045209 923953585 970355721 259463466 457598659 871827396 927117687 569806334 949749579 469307084 646456891 109903380 276975744 778638692 984761906 771589105 805903781 861575786 933427841 828906442 911459060 510181202 788511132 910831642 965435298 189331583 204359631 217525741 840612292 648636477 772376661 384750663 760365535 747879119 964240351 381024876 859524293 487900554 995369226 193083706 297225008 800380424 864704395 389518087 568549634 192606967 727339791 529925963 877867953 440582257 793868176 237114532 630569330 34645787 780973933 404684689 467642179 78907458 857877817 631161714 853217365 981958854 986075510 403243962 623450368 827685475 874974873 687651658 841883119 440698690 980047396 721865293 951758420 31058360 776570219 679824292 934713185 621000139 981819176 56178316 423680978 408060317 416255233 294465687 677194945 926922158 983093001 596280113 836259897 76875635 108455200 731502703 973645536 766858331 894177985 106533150 180629926 145182428 499996362 923051842 969300343 81164230 393079773 200996059 749725091 279430346 604613178 301575070 717436945 797572046 842173313 443450081 527291209 5314057 735139793 911750691 916403921 354793739 817534135 297272000 456615047 664144660 689473231 688023335 842565511 967152209 985359547 180057289 509760019 507939406 544614722 427282757 635526732 213271984 264075696 602405365 727030694 934117398 942751362 379960712 395533650 267883978 517284039 805237779 938946628 459570345 954053652 730127638 803391099 972073694 979513257 192432205 319981400 628704259 975749400 549617667 624769749 363082130 375133861 504023254 874538599 608943023 699599964 633950624 983424876 464318482 994717853 864329451 917897363 185100925 541738293 342799865 511652402 774555629 953525211 80707199 480700122 747420500 907012951 967726346 986842623 702863790 843438924 848939931 863693283 207755404 970516309 268125352 795569434 56369008 81947863 171600679 419980253 30343625 696038642 397438416 881911218 490479641 512163523 857387060 970367248 259773735 356820546 512327544 531116280 44055160 55866152 875275300 922501799 774084605 863307591 979156932 981582914 420429804 438701204 322160051 790595271 820050645 968844736 465111676 789991118 737785768 954522737 599905665 903613985 650909175 868414183 391587669 805843149 655756813 960985285 170951056 304380019 547647627 958441179 480336082 944311890 324788937 582181253 960022172 975170080 96467347 619805524 329024800 808170111 662657204 688714956 501389869 960697666 136993243 938271997 336411300 656269798 746915475 966199569 28399079 973272347 932731408 966768091 187497197 292398820 738514601 740467272 811316129 932743421 336783596 832549372 578372731 613472067 851401411 942081383 919670853 953426444 964768408 965610964 494491158 884514711 636353192 805729538 655155738 993629152 502210040 848619073 963137640 986211109 447305416 723504094 759560628 973129382 706126955 987921097 253043393 326734971 64046293 353843755 269208335 279766764 105866796 489072402 393828920 931507158 852957727 912183596 666785532 747804884 992413217 998714860 315294006 659418689 844639795 914765376 640516114 827995781 751735329 974226231 868713784 992004699 529260698 721429781 776791075 848523157 232575607 767678335 429330955 716617405 413157692 929228784 14246606 903959952 773263367 992806236 78489988 793648880 508491339 565720320 966794091 997910427 27838339 541843186 803918456 813817154 685286330 927124125 17399508 616191153 619996424 984019920 47811946 894934549 587750462 886725730 711767644 729731924 404360777 639130430 525259393 998085483 970027359 990524511 459881724 565196546 850337646 941343809 171052044 403809621 328797337 692137561 997178227 998694463 788035437 854787869 287768905 777309104 724248444 750379556 747003360 924649900 372810128 975401687 491953366 957759325 982596141 999068352 756963254 938877155 857750649 957348616 212543890 608191776 897313826 989421243 218542325 804655512 271706954 552528587 218960547 793907487 984652488 999105401 720557267 748835972 958975557 997332923 921316230 960227806 542939328 744698846 864441382 912247422 412792671 988776597 312686571 472301090 824147398 978179209 690339735 826096993 418858883 610319237 402103524 417470998 208473662 596163069 391690042 701040013 648360897 786311429 806438615 816975986 766096059 849360666 876790052 878186049 746654746 837142001 872013513 923838216 696007540 864958937 982871807 991513802 681331621 787328171 959665042 960456375 947503731 959279670 558985454 591464681 304267707 962223667 859300840 893106201 679030498 837140373 465897082 979810183 977013629 983685353 344673234 733640530 617538204 698442570 317357456 437467663 905743436 941332976 145569197 590453283 74251662 430030458 320990061 362907429 743817685 892060096 864754388 986403108 900346827 964191200 677333890 984733319 104704268 380033671 231631850 636126749 876937951 936475925 709978481 852961964 851652540 957147154 20195041 336353199 725720682 900491966 38558936 759599902 979575458 996484087 651626225 722141414 699679245 893122747 411816436 947403628 976381443 997066260 591074863 613959091 810802786 951536568 735373635 924195909 139552370 820361378 107865109 248381281 390400238 644388980 643112119 681701961 379311269 808294734 450213379 970719921 410344941 915753299 924025051 935734270 899963117 909199189 677013681 828442983 985934681 988240537 986701909 987613671 976366074 987828829 904131282 918480788 256593960 669173871 408557194 578854629 51018787 262416296 855357483 964250597 75141089 643426334 979663003 986756979 195200165 897838225 556549073 778017837 803192121 834578840 305537979 895224297 943590715 963641403 587658655 863195408 265293914 285915979 969581942 987345322 880877783 938359190 867919562 975793089 852278243 921746942 230094154 837072396 563365983 640629218 123934046 723275956 10709575 217626778 607642134 906487825 3911886 767187671 721546198 795353585 991403431 998531593 831155114 931839689 992292845 998334713 161658160 835182295 747471661 775376319 866085894 940929653 103137193 880412147 905929373 977111270 880424283 933083544 485974455 779393592 375293852 505394425 699149047 748613022 973390341 996046927 368006174 403408002 245773840 295454450 554854430 791971368 528523336 732074605 863455984 872341378 970466599 994764013 215932928 668723668 722266667 740648846 983762794 989969717 51747597 414244560 765741664 952787021 647898050 963696165 810990819 837540020 856514659 933072855 320206264 494127429 261001435 407226732 122698509 933680220 870810710 968426301 740386822 782163058 134415673 941161125 423241156 496096130 568264878 794730257 523726308 861503899 226127354 226932462 855685946 993313633 726731592 986288988 76040401 106577576 428943599 820618616 675721665 813758075 913459214 984440659 925363022 989649658 368643707 497210925 744290494 763898120 494851714 877768952 834921050 885553103 798897133 819286963 776679415 978241205 602165503 644952081 425436847 701315472 393797485 862015555 689101906 909458669 492177423 808121863 588266209 618646748 548142451 734170979 244414778 368665493 573918654 920672194 483349192 536383129 54894823 822888746 260429174 953091811 184997083 419798845 667044506 833495101 453487199 533909880 177238746 719227234 985004962 997554562 397776914 846948508 55644713 501303823 760489187 977266162 995161975 999975013 356461799 375332365 158169375 417901788 474130246 556774552 691319627 845501238 284956487 453506348 665807967 835002252 912823160 944323946 17279015 973368370 870028527 872719766 148636835 996318509 151394251 671917368 471736895 946787963 254866556 296410058 36823643 59613052 70029452 970126056 636917533 953859394 505438592 612914291 77634044 643716106 868832668 903138795 815473700 983635564 104262777 946959406 859278128 948056228 43322586 812127350 659422160 967011491 492692937 555022432 530167061 665564297 277368129 789127859 22484204 882662349 977996515 984418235 861506208 980495998 420715226 997524458 879777797 997496492 398573579 410425190 800181122 914602443 748721885 807366987 574253876 889002951 634512294 940017190 560330882 758408888 754874599 897975881 875030543 938792458 51725385 356406177 845871234 878050039 388695534 710310473 63310648 280989251 459624306 631166975 302968164 377749036 624887735 665177294 461243848 536818446 476942841 847659262 986640050 992185677 545284817 996583530 693603296 866963258 104360577 725872984 307398947 866986697 8131751 353743851 746746805 858507736 257468764 818122527 633561956 792211943 566814120 711343824 358236133 764962496 863826649 910261363 217783054 626460881 925986793 971524873 242877079 607526458 129197113 509560370 768740117 860831307 530937329 554643362 400157998 947718798 588584820 612481016 314932719 809355115 468273172 638097183 679627359 917077094 692775093 938858977 553572532 554474933 895502498 936181051 467469080 821420400 5753324 280391524 920731011 942952645 127671991 238310252 582028594 987574307 589585142 724296857 689534874 934344156 175848756 641084683 985736267 990019017 679921030 943081214 682861360 711671248 519741194 651793642 76902502 902281784 515453222 607866253 502869459 926769562 936045186 949747334 672938712 856180248 382467062 732899653 2927817 941378619 411060995 681883461 672921948 781778340 240990163 927193122 917619472 993730733 251875874 531038731 643796800 661298600 399276394 923349786 598902741 782055176 275193491 751171599 181767048 258954449 937104760 942886299 329737721 738528160 794246155 997902111 602271161 930644682 536792787 840653770 473886759 776633890 973247290 974818759 312743242 615854785 527594797 602170604 141026877 594757106 497818234 564136799 958333377 965097011 835269856 902136841 519251156 580514878 138041787 139591181 829660129 902991902 764590504 866966000 480305143 917027805 865664777 982833308 751821010 818488136 144235840 270086073 273984027 761020465 644679007 911987817 325078542 763622804 242850354 746641031 38359316 984570635 764993213 767562290 558586715 786988885 407939708 701810764 754343505 887743025 944713302 973271026 970591915 986796264 389895392 770342847 188349528 785028666 119475321 527091362 920585813 938309945 504976268 960275219 568812082 745451380 192135306 750407219 496579768 652707221 618828167 815495581 757489816 864537083 513979619 735394446 631873786 876009716 685214697 824346740 981037236 994130517 777245779 885098836 502752079 530641902 279794236 707770557 832775880 875898603 256215182 794822089 766675221 795263763 416008383 484876114 657312093 699061452 773396050 951229688 997183177 999134415 285566060 290150803 69691169 803054689 329763934 865667744 705280646 866265614 522167115 648519298 406621530 524372818 881335087 961033567 850458226 907661544 66781990 110847418 310949954 472199856 26074186 257806366 113852014 936403531 550735733 964179737 459078624 595645480 833300551 943865069 573444730 757667554 999281704 999441222 140539720 505757790 551247288 592472947 179878553 331620409 881099096 946019900 403201224 568618288 188431586 626894785 800526504 915926466 681377430 894299775 36289801 207509627 52651732 200248044 807869575 961006236 116083140 329215270 619648744 628744176 267716409 941678735 527798964 634723397 749480870 897922713 587886097 921487942 853046392 969622331 673038154 717512093 895178703 999463795 245475008 932954667 559138931 642084245 584290362 586850211 543557750 999725299 830214532 901382601 641318529 647523872 131494303 388608831 874574113 889333060 682864864 935611538 437055380 706547777 975215921 988278905 176386774 673922911 666042201 854697653 868623623 898223621 550109027 582373478 445301718 551774237 391340265 871115632 402322261 841146337 836602791 949213340 387704905 781668905 688449857 900435786 455727675 577529449 918861830 923977136 443092931 930479742 737525052 879050200 25111858 249209530 160345559 627601990 149521333 815205787 454103888 579193604 656955823 979306165 837537914 942473984 823235547 962278803 489108983 912277119 244858691 759387857 918311712 952803424 119554762 218354567 174347820 478495212 271230402 403826393 374256480 391284873 999355320 999407077 238746385 567011648 849347988 961927952 62467443 255296216 312356232 366486339 611386182 744402891 175532594 513097866 309172161 789754581 195108763 378685964 960825686 964187565 401769198 783025149 278694954 730902460 987965726 992271446 127041261 994665348 713427398 767983126 855230081 992802752 295731047 418404302 39363836 187292339 313051973 818554408 904534888 927650772 350082843 832276076 16536827 623045029 285426090 875737689 112674696 529799439 709979284 743488233 34843121 113005331 454557222 479167956 676162538 963994220 402347467 876503499 817154171 962828457 627292 888037815 94138683 980747073 558311545 714465351 514460039 906990007 739053218 837349481 338181378 715374194 819911087 892375674 72550721 981424958 771619947 911764535 883600882 973390107 710750318 918083855 900171814 937084693 853343 573856160 646843911 851259287 190736489 941545577 804869534 846957383 608303338 838477305 964754230 999581341 195634148 540369475 866657815 995790353 668936408 681096518 918367525 985745430 709927347 996922760 802139104 946682026 495805742 521250118 5936632 733665366 544449629 549171910 62029595 471435719 175866061 737533500 204397986 362614455 456491616 803729875 637213747 693327817 476776816 865744558 44151023 200251965 794132871 861519829 256332532 283793385 497365590 716109418 367052707 374241929 389355609 567585828 309485959 809535510 50666593 267889018 946043902 957752218 971955275 986267066 542389372 944305021 221040544 414531396 150181583 187611373 678534878 865620019 393823756 781496385 908631752 922000604 560006078 939492199 729688237 815267365 726767056 936228696 95157838 488498089 381783539 872685811 690115238 938168910 97304314 216941766 778300332 979668537 580498394 941076932 783544140 884119382 146386834 660779654 834633745 913877109 948246563 991870557 914323381 985871223 140527884 222940852 814665788 956242311 399974941 645765319 513169320 784480049 771961016 832476523 224922108 736199113 577012090 606054703 905320712 997017618 862314739 979146613 120673082 804939543 643250385 693129396 256072103 272131136 891763347 948204945 461662468 481091467 902131096 966778664 745363674 854067691 335419573 842996469 225339594 404767816 937692685 996963888 711667635 949431203 375072220 440200516 629024516 944971438 989723473 990220466 180560071 892278747 170595081 374823539 696251283 955478879 440662241 846471490 290690203 610571647 249633945 459632445 394619845 998713188 658337427 817893718 48915397 489588749 662945593 743356167 154460299 841865332 394179445 726379608 153559138 240645834 103514100 852376115 430408520 464984128 278249031 568765710 326892357 938156166 259793998 945325356 6655165 939350943 761914569 985861052 867420968 921692041 10337111 623621734 56442163 570481739 660400592 676329912 969814282 996989942 234821912 640775518 973148670 995980944 337075483 352742974 59898440 916258416 454349466 848393136 330524169 869963100 723919038 766782991 655454075 719713058 621791686 978593445 758403492 909017127 19039815 761226487 42900083 640739625 157967516 906639893 796198530 807251686 119596268 433852059 630052156 985084730 40424280 901993901 346238113 433760474 178202367 737883346 994218177 994801987 629765643 976823326 252301001 386941586 18543213 167878665 549810972 727353849 383567604 419291748 984407508 999189111 771235476 871694777 933614750 983089347 693380031 973009160 523746818 950814568 619651916 841400018 395273260 974072544 669676675 873681817 350466843 708917141 616723795 930004946 479991392 734490083 152240426 799810436 728468065 914563269 296372916 422285250 945161674 945680485 48208782 657604422 307415731 463996063 239985050 546342088 441906127 718508484 490320124 770566411 500453739 712829866 380502665 756991888 131929424 829367251 706694398 787288250 883137456 960570771 533384727 592649094 118852317 219198000 993455468 999916358 892088124 966654090 170054550 886573522 15238914 231480568 883540698 907065119 996455621 996773885 451099624 817363247 738738270 949184922 361865378 545053814 608342638 673458365 760378574 896588738 854832847 983684366 662394723 737828894 194041816 665588250 815164684 855274953 429059348 956136187 98782441 967437533 302140530 601766534 129880141 594003252 279364639 584421866 749850898 756154216 160179240 240217969 798061213 947352031 377789552 630090992 652503859 844834932 401420400 416345921 523100368 680695631 475162346 622762030 394261595 840991559 771367594 912259796 663689993 997256093 414724893 898853084 305966974 443902845 922715216 961154048 216469803 840868608 978921378 994965166 500151663 588205446 828904602 913524049 185666628 776472335 316602716 621574308 724103263 993198166 351480410 535458302 479091859 604039444 919154643 931182787 168873974 434749268 140345771 714254703 696695241 738583203 303926550 336374661 273200355 870744793 698006009 842894192 927961878 969509574 275770694 476613988 213547112 412068105 925166755 983219948 516774287 968064644 334971346 438713920 502245334 832293108 212232274 911301324 529912729 752259674 818827542 962752521 29131674 858068192 468520998 840805244 161709293 757806497 153621809 681817179 754955899 772138679 439753377 904452475 575182990 722584320 433419291 606132605 47883022 834926691 675300501 815416544 548026501 943241967 338109630 566969853 632159501 698143803 11121830 385840603 785166937 851531742 681946459 982658376 394467816 969254868 225027925 245223460 854936147 867209798 115644691 596994773 990278355 996502148 721551752 737481148 534212795 701288863 779794099 855647050 65315689 658213549 447508807 853755859 283401777 890010756 201588879 736680185 853918213 895089348 206430086 639845841 77386153 914500212 847523905 937088678 790313550 930186267 900938813 971315171 134980132 681764373 870187364 990279722 327736153 750646279 492645615 972830940 108208588 446827195 439804277 904620056 862997880 962280889 124824601 768104055 596456060 885728893 123466976 636171865 458444703 684488155 560003458 844950277 720567378 848911264 422358950 875578481 155994635 626534310 665520775 787904907 367942705 711094728 504710428 870413104 29205701 588387910 223777034 803966852 876809383 912899060 508226817 633517558 297044428 981607784 282767925 411887942 710947987 992028775 524354968 596961944 276722837 620407768 156011030 368148090 402588936 971611229 211570283 560654709 946447810 998180453 639526974 829657161 252770620 883565834 437687721 844093068 597111029 991446287 300700409 785976769 596675996 699833432 275129171 545322969 782735549 890179052 530827802 571860353 957018654 960148230 842302285 888183127 500397917 763766215 155743385 196869871 902994944 914866335 72939939 384110506 510264267 631022823 385940695 517948991 783305066 828559742 175118054 962590688 437643407 708825415 735769229 979999528 514012311 550991740 960844211 967095222 891132686 976215120 685801468 877324239 403878260 461503112 549846482 807072960 750764234 974040376 196904480 225406817 664534314 784077889 717793430 730340749 191241996 250420042 196168675 475620271 631793282 914269701 305318394 523488551 983208911 987936603 380638054 969830695 340966476 536473678 849317575 950841958 562309579 964031409 82595999 136206450 20868267 70485745 690017565 691668746 538437362 733212794 99168497 591328988 645361867 885210477 837993581 975079473 828695026 916673672 702261907 962890889 904371547 996449693 243288682 730206732 898459890 944908356 454014370 941455801 313070059 629050243 115246934 240461329 977302308 983332415 735791407 752530096 145468227 306316169 143064503 971192157 171317191 898801006 525911106 573864801 455948934 905820020 31814186 349599587 485923532 548589084 621723010 701108519 148429297 838306779 85692946 895692371 724655658 763500135 847207238 931220418 121249072 510944721 773538632 844167978 616595179 832937606 221645491 831529183 724313024 890521478 419256459 634109029 985709063 998057598 685332364 724928790 9742430 975563450 950570024 960704214 716886426 907297493 827356032 966029794 496123264 666384014 747987735 889708230 955314316 964894663 933006376 955262977 204461786 413184899 583776479 734082237 601321515 852259629 865705578 922944349 453486794 866000499 569455546 772190994 807498715 977772274 270627119 281409374 115936303 728760929 385073197 609698699 941173333 999775823 748458996 992170282 4835837 956115625 535588678 979072666 16797154 345327288 902914387 911952724 796689904 953030651 35583608 594281256 558702825 662608548 965256804 974238179 185264935 496946302 392693668 546907016 385404919 461285315 629490090 634458471 705701260 817830392 758152223 907788063 399316063 485995610 987725396 987806866 277733865 710616121 440476280 938891912 260492179 639342095 667146837 966805140 230615495 993742530 137343378 330845865 262867735 682915096 318058015 792822472 617017326 665364935 944570093 952658488 893942033 958638112 688684905 859947651 627872884 822494116 415747529 628102395 278031973 364945495 222635089 465678645 849744227 940134209 380626991 647402265 120483479 147965366 300250129 920048588 543713282 872569376 678973697 899795097 369540446 941732549 921007415 959600325 770581257 990715207 622415990 776395250 476000545 912754336 627676988 633984862 637669420 923272003 810524933 903105336 799061696 973805902 589398384 934875000 329956629 678902035 615722828 961347896 241904156 683239142 698009457 703202621 533260063 581623334 678530639 717215624 785076771 809206481 335476970 809006461 666460455 718514962 964838757 990886278 29834613 446266866 909059626 916505587 242990106 367707989 79988765 309803245 765240002 946321008 405267419 859767574 202688194 295282136 945559489 990260398 418440389 995103053 398515880 833095510 888367939 942478894 145316911 193110869 627410567 848824292 793894681 807993281 269011283 335976377 434724788 637802104 958926544 971958788 22463508 677746145 471710643 570105073 199615314 492521449 894989491 935589292 969241305 979986647 951252079 995815622 315474925 997508419 607601106 857716000 538436705 983224836 720462451 961119703 221463984 234372480 548086784 592556827 225093394 442271756 998845946 999047648 542536112 573511854 895615579 974363752 661688205 777442681 933796535 985350924 47431133 173268920 708315010 930829169 622545220 977625670 568138195 583560277 242673733 336525008 228573285 815052069 300663123 916394275 676729998 808267618 677679177 909516871 610656852 854446882 101984629 874211885 223970937 344673652 374058287 976707498 716100459 929666644 566187823 584535063 129669604 833169197 253978644 848833245 292843221 880777019 259212081 788444168 234344858 565318981 705701892 866375450 908749720 913545525 462231129 778155386 26268997 293800773 98279211 155619067 117912549 464958775 732742343 748067976 340936539 582468402 554485171 736103181 923989982 929803411 143247386 951143360 291071598 746502616 727552224 814354044 864376267 923022897 324211448 593638744 112002663 976649836 594380914 597285234 621612786 627237982 41276336 84091470 398071740 495474035 855763426 955082712 682552444 864246081 522439454 734375777 414375551 528332757 329634197 557708087 606183506 731155506 294455199 344639696 401546885 546433580 506131179 647108576 654153795 761068282 180159588 613109922 438629779 627659304 574632641 646044495 51589906 694909983 139472424 312366941 344802843 512439103 853677434 914631296 856339361 856826971 440530300 777626958 735802945 903037363 307849545 933922039 98383000 746252976 205798002 981606465 819504179 847714781 37327202 421974395 873509153 957222274 548737541 995978562 740488619 856061953 403299943 696822020 288606584 810134640 527692071 822433411 473950373 705163185 791793931 928624189 113796339 302633994 632178281 652549089 51183445 392221154 478609113 816872524 740663276 882271869 30733115 874499565 709654632 745220916 38823444 938402397 731342285 897914386 317032570 519899535 969498005 995889957 620763991 802428762 701119642 879420974 819747619 864193176 599919958 814421964 917089567 950975772 777673347 914348086 191533461 267104616 765742969 856130400 388460225 876611930 711363378 855067465 570289634 882955604 479305130 865502633 800787231 882952280 128882106 462899128 597538939 776599705 897975585 956136877 454713164 820717158 396845351 541633812 122843698 923768264 548488558 810660406 973101980 990321669 979927613 990989931 812078366 946932158 936958199 962927026 417180577 904647485 783768475 793182382 201223632 343623219 932576980 960359974 632267026 919307547 889824798 950285918 985555495 989599620 131516066 190332544 80430449 505732318 838918380 943944824 498074803 742039750 307056857 392290296 887368166 981874516 778096916 857243950 753746782 961680656 879536514 972798372 723760021 805476304 32248666 458379570 676020231 711237717 684141631 704445437 643813252 990923271 387628807 973372430 307745140 902976298 933695422 958820393 942667344 985955055 688572621 763464905 655872977 745334563 513902476 637619233 545882876 891207128 967514031 977790534 401372156 634696078 935187572 950017503 110396737 134205715 730950327 867105821 874954012 957949789 406464408 562748606 217493843 887138626 517114096 908319491 791492438 976986849 613279317 805367447 842159366 918307453 514497577 946285031 315782564 626446448 883342496 925462150 29911413 850402163 472821171 620573112 524113570 605455160 977585354 987641996 202966569 393178508 707246786 788706351 885201550 914959642 996186120 998240043 500757941 783151350 289825421 517673659 396567840 537441421 492117570 990259105 112680296 184485747 697029226 827049779 569930019 868479726 353273875 431544187 439689751 937121653 333960416 429963901 822295368 901961192 53584436 955994837 570480765 678235500 320949542 420947689 641064060 777906924 155732313 275337990 714766308 982071112 953061404 960143153 384181668 399868803 590828797 650776272 776738074 972198323 262139337 552457979 156144548 953005212 247046565 400446975 476634821 667275065 680335896 708880338 260370178 627904910 964246123 980580529 970682853 984769766 236879863 667184250 108058303 392345225 318513510 972980737 520974606 761504692 826493 434858876 998809220 999483350 453142013 727765876 259249189 493455205 845750035 908025024 177871276 567985832 789492521 837810717 47321074 613203044 472152939 577784915 483306484 675178231 869215505 975701989 2003711 404478230 244479633 781595554 494519120 981430106 376554248 880946135 573768138 623152433 223108036 616648323 645589524 822823589 981006545 984724098 692863831 946846786 267171405 399640900 103466052 194107882 210243256 765528179 139498922 856075409 271126963 740131693 847785381 857703294 402538075 964053417 991553855 999842112 119372551 230632370 702886897 988366125 784112361 894097014 708708143 819959269 981844840 986103639 37973808 377116873 234694452 745647736 809025054 955521579 300357413 765792088 226003892 407108152 378811901 613377384 323379044 828333662 169962334 178095434 909875912 997651978 864993376 920551385 380130082 475492336 154228063 202845424 428810289 659000570 125761396 883431242 200290654 492666227 231742412 825291089 450759066 971233544 236344731 973488410 18744058 64298675 697396643 727194038 298656171 975342959 346474750 824804201 598312618 671894086 224320658 724933168 201448704 909210560 580327753 983551551 184710927 384267224 407577123 917094934 856641925 892842860 810298533 928932015 646586339 746385356 261995394 577949515 57263901 424496579 268349007 460957236 297634245 650404747 221762919 820183181 507451226 602797440 808035347 894945999 443841847 645639097 127012489 897105019 507059424 825627269 518305453 898363995 866919247 969509923 379278144 519368888 599585557 716342973 704898295 744419481 585396201 808430508 850771095 892677919 223733722 687690881 641640688 779421174 558913095 943776916 811852499 931597485 173624 788901217 92130149 959475125 914658369 943821534 251063398 979902858 332414650 833256138 18223475 204343667 365467873 448560114 153558955 195346691 791273842 819421248 228506487 582446451 463606026 866360450 826859710 905584838 970475646 975134779 964360324 984205374 353102626 394643734 409895890 570612258 425744272 801082102 71289797 380839643 841788108 858316900 748773875 921537473 875305473 934326926 713801454 838069349 786469823 912253287 127235167 604822655 518504148 904404007 178655669 527967627 385553102 571031601 992479391 997360081 568380369 982246105 137928888 467577445 643987040 786105365 506790467 680837090 68190978 970754416 794545251 939439416 121553277 796998092 683455470 956681976 465308991 887892359 501109224 965176007 962346373 980112747 59996270 888842009 676068855 906101695 863864004 913798920 356395791 760142340 116071829 357324514 674757113 789366751 742134696 743596033 611366486 893390296 571976711 610537500 753392990 848482761 45894563 286158904 788950995 934777708 575967338 641307607 950950563 951853152 990457961 990605653 781360042 933636035 923236406 937147649 592419061 964320587 384324506 845001855 650009428 889725231 938537490 952558443 938430198 995170307 900068540 950935823 736594953 767115032 691911403 942724432 19380810 904116606 7003284 618677720 147955490 490987785 648421563 715094351 730577620 976344971 105880763 578978489 117019816 303813301 985379847 992427749 218026576 555416789 599879576 922303731 148008350 224401880 833676220 919669631 163567339 839328931 498750060 687805298 749516666 863228955 250976294 947776011 610835109 671093588 611554314 658373613 811081946 905419762 600127733 869888141 963378489 980622817 841976791 999320833 841033641 923103112 604576153 841315994 847194173 853690241 584427480 859803884 199256641 960999019 632610670 750483723 662979911 717328424 955538510 974878630 160085669 997735945 62792268 160412746 307367463 397537452 582182092 712017816 763656157 787500608 599858435 861115109 421689416 658339426 560960371 672373937 713544743 909739359 27044681 615037004 660341628 798481188 599043939 732735532 915107373 936514904 679137568 905299899 859018014 956455119 683667109 909357707 896877472 906647881 424466455 675470309 303112751 936001283 156990530 692860880 618273429 789725141 772371722 887321079 706271259 848520265 968638796 976655739 298578532 796942917 23692096 717036485 503458241 889533042 129068471 201312292 824398406 928415074 413867570 634290986 922152400 961410649 568673771 595647094 432132670 965008427 52677494 262397272 911400685 953548000 315570038 628030583 283705201 962047486 531398559 619803860 662973197 732888729 406808459 907226660 462930408 682305835 972939079 996741387 877031767 912815586 539602645 794615955 813981467 961159751 591390541 769956573 993052801 996243251 35301085 536936419 305745221 755587185 553939100 982623285 584938403 780826422 960844214 991950231 834936888 955650332 405526686 521491335 674492632 973084817 165480249 225505242 562577764 781346942 840123025 977565428 899030354 998597686 234029996 442050699 75574860 981414749 285372642 972278005 489596422 668030303 175868336 475192805 253951170 742645803 498811175 796277779 779771752 837679710 338865941 549287631 243973197 485471257 506550066 919727149 640302196 726906664 283697367 641139035 995580016 999555911 426663443 597613567 542983346 763535025 414481641 684190874 71140072 674407842 756018770 836338633 127095157 874312968 429717164 535329119 653595866 890910016 354500085 631348825 111258304 297207711 61207013 743054966 958648286 981565503 60600822 978561869 199817550 630638792 674295582 805959804 641905225 652880216 979874239 981224896 796576922 823243159 319541906 735807264 117515942 242197135 395527449 994645020 742037872 801716844 376498021 910985907 500826198 826084149 935177715 959714599 759118362 921929696 985730637 996453036 416825441 520611816 130081698 147624743 353897231 958298929 507545716 640897155 745287249 891326912 829358500 859253136 652887431 822650528 475175088 767638852 647982166 872379540 883518196 933067821 458720852 559132868 3234542 188082690 819008537 846392880 302554780 436769983 342104808 831827975 811021296 881040775 292440046 895086109 909253060 962608981 431191674 762698598 583549539 797554886 461327877 642599837 684348337 760864678 82919507 379403168 496294974 919527068 402862456 672528552 95091446 568847790 483838458 968511047 811651947 985563123 675551953 789471301 597214349 877186025 912876877 934774333 552034231 614399677 173779377 938594099 141360777 462897499 429548703 448606929 309866013 746111082 645370305 658359658 455731642 898200640 461608747 840923445 580188892 581935007 691339971 765145632 690098132 927279912 807723069 975306508 673991685 868075676 498671885 884867723 800930917 852921557 768840336 963151217 779218061 817725846 846210469 993194689 122400983 853582914 490823908 723266073 196659035 432819625 7165916 207165899 690795339 717948099 724143210 743840797 783704316 904266724 99008793 307543597 256577854 785552230 628125785 662633195 929827394 989738414 74345267 91942123 494196603 745236605 837445302 841840891 900181411 933642502 828465148 859800982 307614849 785550313 143086967 287079533 77118144 486557387 333947018 620633239 271148088 951066930 777718603 805131507 157774520 822874173 861030386 971484532 183752664 691332767 166116701 867946662 269508119 442433625 354851065 882793353 917653618 945065481 969361189 997971784 365109675 912510696 726974969 983671342 255281365 896546394 794381690 803680756 536748640 859504555 27076279 382057405 270063802 828105547 98424716 248235665 678610026 911165201 250580158 652478979 601161474 863591848 878950748 960701026 77548464 666237757 80624546 520115281 928825652 957299409 632954651 852068581 760738768 790403610 853768439 929711996 660562415 888592848 323249335 670170162 394095195 820441126 301137640 647134896 318519704 848256039 423526237 813146906 614210520 962504173 518019528 886496297 586185862 841485580 429518206 949957150 799272181 925234422 317699269 781516143 100219287 418251023 928733292 942057685 97928537 867965534 811418448 823754883 665795334 721996575 325313032 698307382 19584174 801457526 396894103 583661312 586216665 700497106 970296836 980906429 237132413 289600344 840108224 939760018 363545268 396242769 107700324 613064220 449497010 548075149 81287216 303412510 524213718 873566898 118481295 783429812 296927742 960482733 86004336 624992659 282459988 986053021 819842846 921878488 70961907 435721625 320244440 447605615 596011324 772124359 59167410 363834621 958264754 996043836 213712260 880689149 152865693 516735064 182244872 423654886 584449897 856323166 342304397 990951822 76430460 347056111 989246825 990675273 187467561 253303294 285160754 854259244 683290195 799696535 464233909 536214792 106488482 689224504 244046773 585636647 197555429 998703054 687588653 704734870 320238649 826121250 340020565 581956577 28439125 268503301 581223667 793174237 726174890 925507187 833409675 849250807 353488357 389027076 94009551 128696162 926252146 980294837 561466635 924443413 179664228 741367053 875949296 932843513 509212074 722274554 148513369 231458907 446379993 926601760 719064707 988153726 977493459 988033464 841500911 982346012 515682408 689980804 524635040 571006851 945192850 989872204 538697747 903891351 796057134 998549497 660865746 871737509 297858915 649098131 456310331 898581340 154949110 797439231 668693800 993277798 479628080 690420572 985275161 994448705 942975149 969554620 754921855 881502952 900756646 997416934 330549419 447285873 573762681 826609554 962255718 992572541 830412477 837673088 870638551 971680560 142663394 566975550 869455273 881041571 128626274 995717440 704349353 839287474 512966944 623201698 633401344 854926191 543222650 862423436 617107010 824128985 348045657 985480489 331234723 428202858 473877101 578324694 473787732 791301648 456728641 904918260 935152965 973153227 470739934 531829555 89469464 578660572 504216203 684227529 630641782 656946866 560279155 993515609 384597707 722168542 22828783 957481442 168870895 322171424 875655648 991170157 863477213 997924073 62126450 403384753 800573151 915483608 3679517 132774522 955113470 990817539 29187140 626095869 269380776 853032636 253721294 645285400 234368473 835264031 986220590 996004336 772867437 801792674 676859973 908776849 586759220 812438303 535548855 802228139 17252175 322352440 9711170 221200131 975748992 989566391 768783112 967879233 498537736 687716252 213156561 234959055 682119453 955894104 42449201 278992278 112730513 603224383 199227328 527884682 709342174 747880972 782058642 893367256 454438213 615232185 878835239 935165946 133833204 623784937 711036283 889809839 856808132 984400829 886034808 922247228 784581909 821300283 499731766 877679325 532446832 532868528 585792964 737937915 741759252 853977611 903111665 998358880 466387063 919254114 990749021 993022862 285708831 352276445 499927705 660266998 508222427 874201123 363973164 565902431 857881753 913578328 407198278 973789540 783354011 998771771 651185132 735257776 833252112 840973678 880797144 906255490 407263605 474667215 45360444 928888558 962168 808295970 802934553 837312845 755177046 832580119 666090898 711850598 699335528 976129047 340034166 684197905 578609129 984122530 318097581 504474586 921473156 979686171 301821171 366242155 181516571 397289849 908554535 925064064 650885673 855537108 98030320 542968289 128171254 749988783 387876000 440817759 958190710 997217665 662714180 947422868 645233576 821122648 625824808 979690168 620650268 863975333 348682364 977118151 809720898 992392521 716415405 906395191 792915213 897935131 950557147 961299089 974415835 997265937 120222619 882484744 749138286 903851626 368559041 385591291 930987965 933800295 209997496 328609796 682051184 706345818 922382576 987030734 889890659 895421169 505134701 646351698 74972952 874013214 470250814 483542427 61004184 288677654 542393280 874210417 444026224 607282721 469285701 953121132 593160751 904021308 877691143 886115228 507044379 510253863 34218299 668256637 197971260 775603256 546353732 553137737 257432698 404465609 399741509 716675660 341660280 505663451 250584811 388268015 415858209 970777939 807585176 830471185 855551426 899376007 247190964 964812256 1307135 625871697 748520525 781264332 18522304 179066383 108393459 393481557 280495539 759407842 26693272 308765711 998653473 998763522 440887930 885145932 852561438 877602830 654929225 798396418 445879698 786724565 84806731 481458927 830343178 850640029 980024803 981075036 175885723 733324817 838980581 972454778 378017513 878198208 624175156 682955026 393389520 833115002 456801053 565938121 383658454 647661161 853757614 979524239 10272560 967684574 975302564 989002704 917010864 984940843 332684533 543316318 400279142 441496769 22352200 529708940 396615112 716588798 740441087 749421777 365394341 791213475 300616397 474596681 132866229 409725704 253287925 704386286 645947724 696939983 791945543 811725200 889392745 942794804 587245786 836928003 513610028 797934492 189744808 935492298 602765080 830735443 680946360 872976694 617995974 842922540 215354824 371140548 124796693 206374834 749069421 862548321 615672368 913696598 166523450 613618275 779694130 843321597 349482279 628567805 671894459 783771098 618100963 937744256 765588157 977404630 581139226 692503927 39557903 694705623 630622468 875979391 673809428 747112330 28415412 559009130 685483016 808506376 46641548 107746346 473963181 783471479 300486743 469780502 813663317 824246884 293951102 418822727 276212620 325804616 466759333 871201405 690042762 846626297 120215970 457783206 366864600 774176735 562316747 978548732 216446091 714952024 138046921 814215842 801001070 861854061 567172859 877486527 586831986 940897356 243513307 896331723 439243850 561229227 530297398 559503238 583912416 913389114 676414737 747611172 976972801 987049003 399986622 693140049 884086750 995786098 108349609 981581271 450007371 719553107 289635060 729230258 495163329 710240657 407400044 774442034 321499865 423276075 357400830 516114355 506259647 690327980 672902303 903957665 150327620 642703509 358460318 779213984 764548698 776316680 670722865 766425539 110571532 485967598 690089887 799176729 673703307 908654354 515876251 840725604 207557377 651160740 999764197 999861459 973859963 978254922 464911174 979762304 218346533 459995809 352651229 407882769 150172318 820229468 705010463 887199237 59908507 436442828 723266313 779770047 671134229 845557801 227660155 782858889 248682926 349896720 423888646 737919630 436128804 449617630 423015229 910295253 570398596 780410245 546702133 823476904 456534454 562850676 989027685 998448213 258160528 864962329 476773831 840459071 529439962 577638271 578357082 689039930 412089641 847099342 579163541 831065164 980550080 985932846 341858698 976825756 984551245 990493250 618055224 977880258 417339541 653511959 580441150 848752453 340190570 616053701 634319874 809635350 99477685 143947644 502994582 605021835 425021877 983507039 521915430 791082828 17241830 979352059 456944324 674039624 729402833 908404664 829323294 841011724 597573784 651572939 950467536 985242272 620626282 783526435 518136709 959756693 980612535 986687927 192639536 286944981 293219369 464910952 634534953 665599401 830992615 955630472 442523276 928888007 763074822 960333904 360142973 646253904 111132867 674387651 301876207 556273509 680242868 724058355 386439071 932982474 176393690 888438274 997582255 998332904 15754481 358201601 533674397 632167364 603363246 927049117 793707101 928707894 837312386 895320531 700542776 897161089 913437639 955456373 879401548 939470227 760453628 894144441 517621604 807869368 171540258 254496656 520232220 954050061 601443955 822807620 142841718 492208658 723256173 751692821 415079634 737999045 239497369 866249253 236196034 307492123 137442708 613930438 284388249 386584217 923818942 962222608 16446245 593892537 391279672 989157630 925445534 954773544 825696457 998814434 990259158 996591630 130224556 705017973 839271497 920709239 427931271 451962402 381409589 927877352 740881260 940491334 858114050 869842123 692722532 960270667 717928586 725878442 779513433 805513752 60516468 896180397 849732439 882444840 575314116 988073792 170534841 644901885 616568396 708056939 299420034 659340705 196140030 636795230 928717357 968502325 827966911 879212965 904556901 923927305 209938718 443012464 629218734 737718002 920500483 998334144 338316723 489908825 968695277 989976081 57961908 990427483 80560298 351686409 230706983 677657171 948766645 983532504 485066002 589193908 398394970 573691338 958591832 978737243 964364357 964938913 972317700 975874564 608956078 656904351 650038338 843520606 902649894 928198406 954429532 988157509 521192705 778725308 904389887 916917759 705095872 758058439 400618187 671689245 307327385 490997577 526553951 829230094 580423065 852253220 565335174 951755985 65943467 795558518 458546098 480080853 296268936 525002869 101608261 826783189 223068685 603353749 325361664 479106678 344334700 765609259 973631369 996409038 841068785 993196931 213351954 933232379 346588883 642395496 720840687 819428962 189806440 755344848 558358383 647657501 644673123 973196471 188341863 283679535 628186962 998038008 949716695 976788257 748688749 959605921 843987381 866366796 381252149 539169001 788850486 900683115 29609353 199989457 390867685 976789939 287425542 612579771 312555155 447758161 989136811 996163154 768472463 876207352 886862681 980366425 888580392 906164921 836975905 979186575 361536673 835628748 807558476 813700501 353269105 767753601 901589461 994060234 303104223 632036729 848310308 918934385 410369077 925097752 551245141 887256096 154313701 669787884 329961894 947121202 683827517 928064626 562215008 739399506 46036491 63980503 470632534 704199781 533761561 558709361 283340294 867719266 416109701 717890229 157876990 547347421 31520628 497479219 285100693 378259073 106718447 984694957 668980481 923241313 795826754 800238495 519166513 920542476 592948178 896068803 587277001 722389442 672873057 926002711 482025436 600646846 949917277 992605756 100836505 677468298 342969353 671632607 368953718 719800234 50352981 424459253 988859927 989835022 299958669 393722127 487506454 695878697 937366612 943355776 628824085 738800131 177072606 972480065 353638580 687071192 432149153 771557096 716905761 923767765 883709094 995606540 220397285 893600995 823560022 913605882 27750984 104262559 155006647 303729186 899068918 922266731 906248994 952109312 759770494 887548974 190941615 749320286 612268154 996091697 566369632 570700139 450835765 651994416 582091825 851355343 433834695 472470863 223250680 224619865 262148636 755382169 606772317 985073926 762747776 891572567 323313380 823241611 631473760 759787558 810710040 988510206 190575064 347199457 266669317 888405878 522912328 931637688 802657326 954459190 960476092 987546803 74842315 114573407 855651763 878587184 260672511 707529986 800147165 991324325 301913316 752428193 50408563 548344497 887721277 972534051 518190513 932608308 501293295 566604344 305063541 840698180 972509238 977850634 174800093 337363141 129811039 955437549 490332170 765798349 160888036 925175019 125301076 438917399 21834687 808256495 586433675 729709678 929820584 964266515 238650394 269462934 988058024 991179657 374827981 586211754 883401673 991774438 681554182 893119124 850171737 970663688 147846506 849893750 361021523 883322165 227594993 470871014 502214175 660198104 619200476 897652492 862556628 938412402 697243142 874883355 326051641 522481814 339325413 805437060 921791083 943161439 965839270 972600364 768762704 843242794 322457870 366963604 96040411 968590932 14488694 903372997 676934848 910666590 972345874 994938483 600373825 959367417 803224735 936709702 113132087 488721354 756955126 782459215 920659185 972030903 865157210 895979907 562637250 985836095 267436386 716890562 150668742 493127099 469922429 610496270 567255041 876161629 384282245 699410394 944827300 993133325 194813445 249509488 662222002 811588003 756933695 870678848 878586240 957759050 494921252 984320494 526326629 971235719 672103212 753917394 869309776 941680102 447113397 995828557 686916162 895555687 181469117 728572714 419111147 488013033 169907434 278086323 42930761 125630829 437003586 602583150 32522566 181103042 76010932 92165757 957176077 986344110 241307186 960810600 685383788 770837751 338743816 490693262 190786495 261415528 649989466 651262249 984466314 993033794 135142990 609468836 817813064 920940378 836605981 925784179 495780388 793656337 50126317 940839612 982564602 995949991 329087994 979181150 466235243 702358296 341678896 439901872 355973488 601092130 631864545 682301078 676568987 806371569 865238203 931292788 25847650 915364356 510704369 586804196 556050018 865648918 79355320 741758822 965307749 973037243 348155654 418649582 277723923 403445578 766072216 869543872 986561119 997760364 519489962 897062252 679866462 835329809 325566256 835234911 971877271 986935622 821670281 986671167 155231998 924331795 361268394 545992617 461612115 795244297 494464138 866556608 716250038 885900537 592519010 716007404 643499673 976345924 182014847 498514473 204196669 999075530 731237525 807654290 610217549 748049704 676729172 697350260 222639277 334000130 597507897 629304699 407545461 587495345 618801871 937964869 214731549 592559145 468819296 546647159 297957430 722116583 866978035 980574727 222840640 562945298 881645591 919648192 581479524 914519121 849414390 966591577 753937670 757608329 13145489 52746591 56241722 157478055 243051430 703768017 311450846 579083818 379982766 446853080 790765235 952773747 586640293 588049295 913123762 950781899 604319507 820858825 762425790 900031845 987665656 995581170 352044573 843491014 470843222 855563630 118423621 583724608 726816993 988038245 15406137 992584190 725503922 739906040 750318893 853982127 109547200 983975664 741497399 852009645 56705708 87991835 45574503 89216275 656317047 908066665 244803185 689445136 9220166 567850501 355502217 872824437 476197954 615343437 415958234 615352753 397052684 883958354 134989039 362996238 832959965 988843143 663228213 939632603 224871354 396581125 474097857 831971190 842014275 961235176 845645714 924958566 728127596 931695157 663219667 746716814 282789406 987937787 741426456 747267371 31908898 448253371 488420383 926710570 762825374 965364716 194050915 502872470 235655954 976133449 543264322 793011568 915288729 923248181 934838743 977741498 880831697 943973869 709365029 969481043 940189017 951411915 614055593 760706962 500960575 628498074 494536980 956177310 578509901 852510843 826975485 901997913 724867783 992694152 596159753 670322397 341774641 817396843 932480747 935993895 744234348 949821425 534244067 981203732 350402264 908488872 297278824 576169537 443849355 968958549 979316013 985720259 787395371 804522727 599256167 785950472 600632274 894394570 485128230 573411115 333245717 747178515 189441378 727791665 919374695 991681753 888821713 994635875 955458304 980060585 375563514 813254253 181741381 407551649 901658401 939074270 524886530 837845348 228280167 233481606 291869192 573676414 775275321 950430929 714599530 797163656 372894428 635763471 576903322 638272500 645652275 901381211 223456732 729163737 45609832 50223090 226025205 412001997 239634182 775935757 518111897 850587749 278597520 701214647 869191585 954060000 157182527 950410380 33531716 311315766 344447171 872873739 545185533 563229413 334952780 601395605 699651487 712123532 545435598 967375716 747638822 770237181 955669585 963953299 530892736 688334145 862815706 962891608 722600001 746757679 709008231 950861539 913881851 931576227 416401953 570819127 468078428 646325656 546647081 878957968 844710410 993885599 998709092 999850583 559170876 614677501 777463961 789198950 803664377 956223050 954793150 978741981 133587347 487931188 993662640 997990202 965735400 983569438 39999401 737198923 597485333 665995026 155886871 847606362 654421775 984269204 438055773 449144725 162067227 355999741 4912687 949450434 479266763 872383760 643459169 653974781 714216467 933513316 416290303 808396772 745997457 948584814 772928364 782723787 735950261 953211471 487627320 597669081 309181268 396123178 986817148 995312102 977952905 978962924 785635075 835565097 225826977 431053281 336092493 375699721 921395764 937698899 629438273 910643054 136789305 337292757 326595748 613803264 930511294 969049029 198979518 868545368 467777610 947388158 228795904 426864809 173912147 807398993 839225569 990892605 827161709 975418672 864462500 885840190 727914605 833167614 192982705 940852157 422179549 880846044 894839053 982633621 818705882 952605449 6152581 553520586 323432458 450621409 565818923 943123463 40922908 408691933 619840990 788547171 207462654 746929514 958347065 991065290 394583229 585961864 453736959 994437627 317882653 793961959 66801085 617936269 767858043 904287024 199886721 460189581 650953388 885307504 380404852 421546179 946431336 980796467 158038602 641726466 688256921 865657340 101959900 679384981 301126586 851985963 474499701 868504717 991991037 996497457 789535361 958426849 178675108 240473345 120074400 879492295 789369684 818936782 722344192 819866279 853083440 856803012 742817828 905678098 684153288 960789396 477254337 628598325 512749721 545791600 990339568 995509598 231141780 252988293 159103026 435166102 294526066 706202251 289600045 928583011 2626379 967209600 249154336 453972780 35043804 863460690 818703171 996056559 45856324 354192846 39627278 106636948 62863451 280522226 297175807 790643655 553824423 879937207 309608913 745451379 97984533 338316661 998636135 999015528 634179441 685619802 928775570 947060032 508283019 686064622 910789641 966821747 905315395 982673355 12921736 441219177 95267888 320158635 433030118 678344353 403857220 682686465 799078911 799466472 998020965 999597237 743953017 968867356 464938578 567478850 971315009 976593256 921266556 972020229 978781106 997430708 574433024 860884417 217634284 574494990 358028403 864516842 963457737 985685723 39904779 212917574 611208795 957382511 72770911 825034907 662533826 739502352 570010953 887469984 790487267 901929200 148100132 715806368 188320965 553204534 463163384 590980897 451286874 967251018 166336559 425883495 475309745 885814356 46045993 916800621 832341283 972985267 938637108 962813954 582372507 592727107 427537907 841882523 979717173 991833707 49633595 775067494 843836106 958496331 745711297 918337746 372605280 680081571 287037544 358139974 916482000 969477484 427246541 703828272 706404353 892544088 432821888 532432254 904398653 967899847 454438324 462752563 280837647 296611790 86006785 213026279 53001608 987097863 119183253 965250055 661643777 983651069 146433742 217929975 559560971 711934470 986359456 990163311 430032476 701341513 775475349 778099701 699268308 737726886 561833838 678273303 899232961 902352728 205589782 502618037 623743599 994052878 693462779 738075526 181178917 325000446 904694815 989674441 329071724 430431867 340119069 570035197 170296356 606718583 391614319 447932527 609182631 680097286 254098978 666545800 730499471 936634239 679849871 788058859 564028068 637172595 339655936 461602128 23194659 691128037 331090798 423417090 134147578 912684605 70291226 972957627 614348213 658831118 251206343 261241658 130866780 756830117 409830566 792065939 754121841 827061758 178256021 237291795 421361672 928244166 232045710 419579183 810446628 839056856 956280602 965693475 21081918 674849419 7424770 866587145 653380411 926115880 136886941 884966476 50177452 370727308 575504867 889892512 496287170 584327862 87692652 639815563 472904824 729957682 18701252 430657355 322302425 649002434 439628083 680119955 764769495 975956355 967917464 970739817 374361407 739848935 862188965 873845363 762942931 893908250 994154774 998759975 418403393 459865528 376214665 758732101 794388680 865721104 235595731 742784566 325698749 818868210 480133464 746119397 267488110 999551337 239415104 746172991 53204879 458130817 501226563 625513686 114471717 353691267 85898290 135080002 697424894 916556159 163780946 917034225 615466887 858708983 607933801 614947349 947846690 990014545 658917776 723243334 91388377 312627901 878609615 972887332 612134563 849337794 219753317 984171130 68750929 174232620 41375798 860997350 665363130 699058109 627425940 782889518 135917951 448271535 350673140 710107526 59782117 576950722 966870405 999374864 818104262 916964413 983238978 989266865 765488993 933464217 948990892 952154640 251121343 514069721 184099764 659062314 752807629 989235416 146481696 364846570 718421351 857404642 648941824 669457668 569838103 785122896 603485667 659922607 772603890 991263831 100317840 668768554 737512932 828422662 894028336 960008158 815206339 903505739 306824556 417359726 681871416 810250794 912333468 991995954 710261317 889550023 193163897 894299137 359764358 635861915 637581910 655218204 790743746 965834227 477081907 845595806 998171314 998798423 319292334 423736884 896675544 899881554 691228032 777433222 914975241 942478420 888877538 956488074 966721528 973697226 857897625 964966920 511544715 633557085 879733772 918597593 574423968 712707564 902037149 930310115 647118786 993592000 430915772 435295146 779008201 902406510 916488295 979929785 213181976 944470182 795241255 832324801 493265572 725049878 635686168 710204611 66075207 138515627 678048622 889779719 675574717 918888676 720526151 783171171 966718034 972988588 826400176 935436218 418515299 822656433 555034481 970224459 662947786 727029185 269863916 850621970 316183898 614787864 358103890 892257784 544791117 983192514 781213337 918637501 150660361 982577709 748426835 789553426 545543357 864167824 348360651 714215552 813235863 922025281 466904717 913528291 568385283 630074402 105494920 112659273 602378854 819836411 115454991 417360229 547188848 812557707 812348490 869765494 115466857 259776184 4141144 117102562 547315571 686612257 686557087 929546569 977124438 984481443 340997449 378571476 836466442 853507990 991249752 995834279 53646804 900491563 62182086 106527656 977383598 999712303 737110942 917277580 71616679 455771120 576757314 831392462 102400316 593945560 48605608 849175066 201160800 359652225 876022485 955563395 605214392 663870620 907337517 998982093 841210383 939543429 843290496 852531714 64345571 630952231 63737737 675656994 644346274 907408834 486206238 643393783 683554036 972415682 954765626 957609416 352112269 859448793 297602025 546817954 368158713 524480415 399097401 655559285 584109948 794729926 921368171 990603219 237198069 802328869 992772332 995379014 595633927 680589466 23954203 314311615 943491997 986518190 414929118 880578062 238919862 431705554 560903647 606093685 285261308 737195107 495558911 889138985 258381484 421240162 11700537 707316339 195980300 596626281 662380299 999687221 474439767 698165902 543256708 743503839 654622209 914438260 132584181 668128755 857742170 966440045 95118815 231935942 255358178 339490914 869081725 989671616 160710755 641374356 421833004 952045863 161578564 829140697 330120101 859510036 916804787 979036114 281378485 754513397 308022640 776624101 721342650 735399504 152792784 337648339 961519104 990067794 853807418 860613828 333054598 666547150 72376077 429896436 209901806 900587818 99027240 884524470 767793434 948781520 734498351 884777062 990053591 992216439 166674094 201211054 172335444 658084580 681489035 981597443 937898121 953383171 790964350 955444564 712675074 853155408 790468371 820668203 445977072 892309652 338186394 615675094 73729400 672954703 934803923 939907236 19327298 541979623 83278597 741277614 878781990 955719320 416549928 725560607 105856830 183975907 809932825 958596287 974864529 985611394 41204896 379710201 270174880 488190105 227106336 258520071 403389818 902798258 250897802 493953450 735114505 799736985 233078797 252780785 557470166 741819874 243010271 966042183 855820008 920106739 487673879 972498572 894586304 895876723 153083059 784943862 411941860 627524573 218185276 688982457 636306203 740131803 371828807 912297149 258151920 337204759 919055626 988373463 207573761 462640950 872205936 900595145 63400820 67497471 703981001 980573306 983038740 999035411 776232332 804158551 289315372 780798213 732383378 882263437 212114722 683598984 164805440 204734898 201168713 330746434 162416043 956937558 889923659 949628056 794630363 808821400 72064378 79610840 988520499 989627938 734742927 955783141 611385421 863197952 982048001 987398317 967381238 977712886 225941028 834601845 589724079 964574396 428801091 505128888 317416327 819263467 218844767 913261889 939943258 975256707 891150169 917996471 275924985 657806418 806961040 932056423 727423061 887583095 377418663 889123363 169830422 987433350 136746089 229776718 159413002 990218882 424724675 682147810 876777665 977053880 485248184 834410000 89751984 691090482 409225263 476201300 483439879 949453008 9537718 913542810 684362300 842503879 833520653 874533918 635552633 820513094 181588349 439732785 385848645 764748421 945530264 997989641 553812600 754257551 935166581 971292748 995699186 996556823 462069900 939105200 646310357 822909974 577246503 590469148 360851129 471034111 368667094 667917245 631893717 842863288 314030330 792898643 676834918 936953983 718550370 910890132 676332740 936248874 421718398 686828335 824117034 951604613 303790377 740608270 337264352 705748564 542761436 985983535 980642498 992708552 288705015 460235735 571644977 678816577 523547825 885476040 805365491 927277441 304063145 799854147 611987191 849343670 141579782 819869392 915858804 953128798 660822232 873201640 992175173 994512882 224877485 923490633 236991953 541321995 737731757 959937856 96109094 721354620 608225562 652600015 165155389 381153234 28216410 178887878 265818883 390723479 48530704 399258583 366048762 722415877 316894599 552903953 678452379 752434534 609970268 855230420 142021217 208876386 483623529 685373971 830343096 932298811 911083425 948766589 982878207 987682488 325508941 726147951 181624046 299554765 875468445 984755303 198548150 434069798 906682431 964558019 369943973 800134963 485908573 636571654 144436252 859347729 517536873 732556398 98729449 440867317 760177091 823458333 316859395 742315044 367777626 646751610 769566972 853069759 307338460 577760372 348632287 785594001 393092468 848647351 997856410 998178409 945311707 960641934 627707464 992414522 742284388 915708609 557530584 916523149 168695362 304331049 360355428 577128302 906753625 975051549 635038563 800544655 565870543 859284535 273897163 795983470 930409518 959869613 283011307 371409437 688364276 776839419 546465770 852352445 49979501 392962185 265388136 536264961 353946288 757292047 975857141 999419383 262247117 290536686 746669624 851206321 278040035 899693695 726068609 893893074 924620969 962004385 683801204 846043447 371414577 436843489 630973809 665226572 896044385 977639734 753634183 762264966 9051738 408868611 162761002 261609325 815746977 939714961 207012067 431678711 585622604 847832085 812727237 965765909 384390883 790489419 862739075 985221391 81342505 819348663 477873853 511212993 315533891 789219429 769197227 936475024 465990407 783926562 954201579 964575802 328472150 338786021 538314676 906595444 135253351 396049051 416952493 502142088 752712431 907283790 974200552 995616759 264966469 270125811 218100206 434683531 687682299 951363513 524991061 534510591 85260416 900796831 174589952 254954912 890213390 906257789 787567413 856264922 112019882 990839468 370156007 603410279 531519255 549761295 104039326 213074248 702307786 860684683 98908875 105530645 292503144 869783997 704285633 982883895 308901542 731365312 204778476 277672505 978768751 985074030 621786953 845454199 980892153 995131957 794158438 864929757 53992999 817649830 312854616 581231236 434804497 536452041 68682372 585055440 17644749 463254047 299586714 877472827 942394750 981266212 705623966 933348943 42516186 689494808 424233838 870382273 915315390 941399433 718292933 922806486 569023608 610010625 543742592 996495091 671605669 716814835 144124040 543844743 748729380 812625497 691977588 873509305 938079519 999832483 756971319 920479475 234741767 754097831 56532581 979770038 575172656 788271264 433408197 710497421 700163372 879380357 684927894 959606719 984940891 989620037 159021575 184938866 539960234 834214192 868179621 983355237 603905023 859674625 213187420 242763060 893919836 987894379 120954728 218655750 406320112 680644138 273352801 319087722 490364893 876099536 469318879 795320841 775330519 870661348 623052314 625454762 204214990 623475279 420644601 623970814 637635749 820823061 233774728 466900367 41086403 376594874 108071598 901234266 208185844 721927653 418484873 916233575 202802386 939019138 119914891 945653420 214345143 970278642 993885034 994086894 154819789 635880871 988985935 989103033 338781055 560673355 696805970 868712050 583214953 716934533 548714687 822832961 341043178 740415894 417346101 882949483 345519794 928427390 910334701 973671784 725247928 818993823 556774623 792766199 495516476 994501846 80561927 250526826 111086192 604550851 420760361 654829408 397349445 397480666 731104135 877609991 145223463 568390294 442007783 682995205 437566804 533662659 410927850 515413494 594020240 617214553 414840792 482044318 724221596 899631316 313799949 904101292 502930447 619087754 398493356 702967113 930845184 946311387 954786318 988189609 894551474 967049172 910483288 947222164 322395631 488158376 51138910 553376767 653208291 782884694 49401171 371208698 383266784 883797735 197885361 845295304 456436737 549453996 553780304 747068120 325444902 955530939 398101128 940038161 603026345 834216642 909924118 982558221 587950985 930054088 28072648 894139949 359824577 575290226 871079690 892235332 805721386 860355039 899504405 963284090 341376583 824876950 367150098 610066101 595088819 718433359 978792980 990173747 645971669 823281824 783320756 866305002 913552300 999853217 218483044 459357979 443679883 683009867 444101585 532784324 870277713 976016386 745926197 950696395 182759018 382506272 224059752 368443260 719361283 892431172 982445301 985760850 675822812 970183953 470496342 664154370 332804967 484048716 345192954 802350043 944825390 991857583 889562489 899411528 529493279 899546749 378556848 980907858 179674601 739176191 40003161 105323985 857729603 865318271 117662057 655763773 431743105 734690737 143380443 445413664 595474905 686725895 657490118 805108205 633002363 946905461 235852397 435332472 250712956 523044889 941507321 944356003 221277326 744152064 205441884 806089482 537406398 639371273 163670790 699102483 642183440 727689572 404417277 667424327 905899458 967352651 407175369 994733735 104777270 712056237 725538921 773731206 605890201 681614832 84667263 703008549 820545848 973799143 349221527 421009208 536485054 756764631 690942755 848212687 447154433 983943631 616768198 855372420 525179522 526675866 344094593 490401847 855011301 934200426 748857099 883368202 785049448 877128843 19785468 115087641 543440549 712035511 977923601 997106201 487217582 643366651 947458922 949166785 361800298 516084889 762827172 942041543 515628192 692250331 590103883 983828342 981971040 988515375 793147902 988819799 324280764 986326346 916046986 962970675 30847799 596814045 434598743 883633012 74808187 980865708 242026594 419092576 939813380 964911214 884795599 902410214 283024643 692108882 643454230 695634164 868947359 903808699 183662942 244204882 797382200 957670625 626182045 878294405 929331116 962169002 23389385 43513584 540519193 784142206 649352333 688750004 219096570 395579219 231378021 455156698 374072459 886811343 575237332 610421545 840354202 981945182 326220948 989829708 124373279 866112600 308565065 793043886 435110852 622024014 457409908 753191667 29127545 217015136 454044981 457808700 627261965 953505560 6033044 279627584 513956186 993006887 944368860 994859150 328183182 714234422 856074029 894030192 792421968 872785617 133402131 486939417 941546722 954666932 643290892 956679122 613964465 908600421 212033186 527309539 257788198 668549384 803152179 915493998 733156206 958789564 210061330 671387464 51933514 582077629 782454529 829290642 325327909 792989696 566304778 590754809 574228585 680769175 892077533 902253294 125895587 427548918 968399925 975114431 536770033 845619128 443822438 823531597 907959910 908312117 656587031 906273885 715624398 925947452 531328233 845791639 792816131 927471413 721214695 967823723 574887399 945454258 27490243 938929425 335613079 448827316 867937543 951092312 153918915 170884527 90530173 289714589 125402017 482773072 350930252 358041683 696515228 737540110 601172273 633281829 158427232 328126881 837240449 943457149 326856769 499048229 247653068 303606755 126590625 914594545 441964368 908694585 490978170 647497194 939254897 984516959 403077957 600936096 391694837 606997718 871201433 923042989 400449550 988101899 331918867 874952353 49449960 701274193 798518199 855664789 297613405 332901659 158614255 460614722 527873219 954899831 719796711 891407953 212091461 442089488 126314122 628903961 583521005 810273314 776026772 874979726 898698088 965688679 373269452 524329648 428928422 921121654 920283951 922397061 493870584 919630108 135272094 154823610 568842917 631528977 681782994 881233276 257825811 410515299 849186420 979153973 629981309 739772236 721025109 991493856 459941566 460412190 980492891 998699659 420714603 918490935 825918436 972325945 164295692 343747708 740238562 970583588 809522619 904283713 505816121 519656304 611390858 674178875 681622380 788696940 662067166 765597291 16717450 399409756 828194438 953917160 357570729 620477476 431389485 898151354 612570953 874021398 684376083 794680924 623525011 967467068 906356470 911743778 289973435 543040599 647383192 974291965 291101128 437217018 349069284 798499771 859922925 988285315 804656213 854266426 184161893 690728312 139067252 633227409 123577905 671169840 941516762 980538895 792135800 955941747 859311290 949910293 875890778 951706755 356752365 475718919 256331057 864462620 330521104 551988035 423427985 484292474 220366249 756978102 691479619 794239095 379314513 800770699 639750099 915433327 7558838 62535357 875147456 886813926 278207042 426492699 829181927 841094242 321675846 859748547 187678286 765583704 954205360 991221001 355242806 856951611 204453066 597362853 774490219 870188626 757484706 917943443 198915911 235862639 966012241 982354133 519586739 989508536 895185403 924400610 979000173 979637874 57041045 344179814 743952424 904104067 378122338 666579350 935694797 989471108 734077603 806818281 557801548 910033729 193046945 258039464 429148299 689788250 891380112 975759329 381107065 415998806 537791275 729814471 594472283 631118471 384392299 425323109 667410323 681371026 633582269 891189245 497119921 759031596 715893919 971468778 541806351 661272151 840489884 937951037 999729905 999931505 255296967 751755895 884548432 896058484 196433028 462998336 664745355 902701290 440576129 455084135 24111010 816276990 601603598 869348564 299839887 851710723 14490657 565877504 193705476 835106372 118927278 220983113 804416928 932248941 371554167 415031160 575686493 834635723 837382884 898599526 291665033 620041298 818960071 957178290 10810912 508067155 419122548 825797682 267767826 601675230 548771720 711291337 712255697 931668384 257139806 450559471 178566666 703553391 961450037 990276834 481552633 672863209 547360486 567218739 660748530 737673188 371695539 759612988 375055709 516232094 326126345 894300394 563875747 811780389 956428281 978413210 882958848 976398404 264255646 763303027 247225267 976618790 891725239 974387405 796217802 856659798 732575008 872268451 670043463 864520417 850156297 968496174 557221895 804297964 559242296 923912003 346900744 545016504 369263660 892657391 621132733 925539851 114134425 129116386 724856720 740777731 657821269 985916148 222214591 606679251 479825491 737415932 910166578 984282798 813850722 975156459 895457402 915463824 30039598 231814687 179271161 892523139 143721966 978028590 80777864 787915224 329360142 634007625 361711671 589436898 731254349 804565738 419936634 587246997 173938543 817661063 826059610 952017548 624128114 729835401 288461622 400693718 994259846 999863432 832077276 953791384 689955861 795220906 331364013 696288689 766607941 912153416 872288527 939125181 84667006 342322134 633383880 728836261 105537885 150008392 819668017 897590334 443194779 501134308 560733466 645569128 208949812 564580922 322477315 899526379 678336308 791963029 555861494 714093978 951033862 992893852 405873508 663466718 540578540 854973423 713807300 798445752 384353776 771529091 938164712 960735083 194883678 482160389 525336808 899023473 481709144 831367595 250841286 544422139 700704982 731079010 889230713 897966980 61648148 377338960 924245864 985317281 397102040 847235944 582433856 773401404 711918672 999017704 507670240 727511301 113545848 803439439 508251212 924882348 324891945 675001312 111978447 401665576 124594400 331800766 364620923 588412703 239823168 542157686 454176594 967558931 292571936 343194785 596556137 776479162 803837164 886715289 612023162 862119893 540316897 632564807 325257656 959878360 487734278 571758853 494082316 697031212 430476796 801665784 208016948 350150347 512623965 795740034 738146380 861158213 238443685 850367178 991846680 995927918 389025380 703084460 974779803 998976719 30460000 285119573 894336916 917616129 184570400 832128678 363502930 373010507 869277430 889280540 771235363 880977384 57504364 177222056 988770428 999930637 613428241 820424757 312301498 429584832 534628493 777448001 422411018 618559602 788496640 978396336 21744933 626289885 980726942 994645160 881225924 971939641 402173561 714501454 772093705 772390805 54466554 834604634 189563090 811621204 649293656 708895664 192015452 832077211 303136216 799927290 213047300 842844466 617386314 625352876 23089099 599793309 884914480 968539176 831650943 987864333 573643867 936157363 8416297 338353160 954683021 978948154 923349211 946649697 881221573 996760829 182988794 281379518 362662075 493768127 456215863 476224010 430272663 689881402 956840821 966324885 642473752 735631196 931215495 933869975 359241054 709996472 829456514 848193770 787396253 927684307 656099793 775408063 393679951 682582757 481122364 595945348 824373398 885762261 71066280 314335580 161780602 685494443 912309169 918886132 142954422 362926514 722330140 830709651 86504549 543954177 998167981 999494203 785062348 917344140 2694904 473031938 590306801 732527283 428919686 657083940 814957729 911931707 231978299 284163135 317906155 425496307 830903845 890114171 145728127 364572603 61467697 135093775 135403888 829134586 600819174 713561440 434911677 582266146 863132246 944491470 665001028 805916291 427878981 648747236 302106802 363206230 979722765 998535780 797511894 970790753 72083533 777928417 839125800 891958357 575899588 936362575 435284410 555891570 303149371 366306119 155239252 832852644 803026809 921898665 752820696 875776117 995127118 996255937 233742291 557764240 938697734 985825622 418528250 704940126 881548143 974966318 509845143 711138650 117863208 598713873 527818724 739407558 568575595 572269844 668251837 727649741 845480077 973832445 511664621 523578053 523118251 725758531 68801492 128936766 555335814 911124243 78424742 806275224 591881903 976200047 889025818 986082283 569698150 848958347 56377927 188857357 111638794 956985017 89343586 243455210 677723168 792351964 916539470 991970008 655753958 920365238 125268440 877260690 345670150 628330539 936561980 973951416 78049296 539677533 968827223 994083247 111712819 788505596 953594327 976522872 781586256 996333061 351370994 842447825 858971898 887624448 407642906 883611470 61172703 208332666 803137543 837151723 642485650 919386362 351876767 443766952 982243715 997553646 852986252 949291399 402293994 753404555 670348514 716657733 8629762 223756633 360254310 374368555 374622554 569701508 47789467 366069769 765811545 779482557 546498457 782780874 886071715 969295111 872027565 892749462 700981975 947125253 805169216 823066868 715301619 833456418 234829705 575526299 557687614 592279727 259733861 720769023 416017615 627928989 863876221 899482360 524188978 678637748 939174372 984110265 691790500 835909628 552846782 821733317 174915027 265282164 260792271 308087729 269445538 740772136 343585764 496834651 272643709 526591648 823559592 979404834 247397916 661653361 951559970 992473302 233635108 365798851 22554308 27708418 492583561 922262302 969822625 992480675 40691953 746304756 615479612 665393486 371804029 742458759 236854692 647481407 695537015 786319152 182204295 766216049 81715194 692234209 574906601 977323852 926301571 937361603 784809724 844792339 29838393 725389966 254350313 927476180 562306741 923188585 43003063 796327676 719749570 843632532 930669498 970810248 478357258 976029617 255640544 773271106 848331990 982877865 933591418 984588591 705069204 955909535 454336311 649919208 372099348 768208242 704242397 829777725 8500006 395726712 17771043 340104425 652800756 811810129 480333001 906431645 634914752 716857170 753230217 973664930 484644222 721250916 271730761 645563781 122428062 257439003 384617033 946271069 731464730 739973832 987723323 991703841 540318161 929376574 725443767 773420698 479635199 531366835 627803423 899175166 126955301 930777047 710657216 892879113 94419075 845036072 773292919 917748448 238081738 949794752 204960362 931315860 1458456 761422094 260679071 497192039 58332180 126830708 381884245 744142845 65381318 743363567 286710371 501186825 977770265 978361628 739204131 909339405 630422380 788794823 416128774 920126574 303159107 633012385 349959481 790594042 205441181 902299588 373177865 930748602 815215067 903768347 979333771 989609004 673351826 919770598 688251944 995169271 825173132 890424453 550627139 595580587 134861579 136706873 229434371 744869794 20153236 212216429 703791931 967555771 199043316 920629760 426450559 560526302 184806922 925184415 79608428 735566341 743395559 927926347 783825909 829298406 611498136 774631864 373783907 671425722 669922057 796908369 395113705 846858829 62132571 149168239 129282605 693340427 765526237 992690576 570310520 837313311 572886511 962620001 485062877 815499760 623656416 672210954 856712403 975908482 874588659 916435899 984778575 991255577 502289694 831067497 622403373 814795494 215299081 945059378 291616490 706273321 509707515 787901913 230994921 783785791 68183337 895236590 372734875 601388940 985303931 999821513 150533968 170131095 917593332 951310078 854383046 857063540 443530598 801408976 224126326 605559451 959397147 989257844 204090035 563344667 254005114 416211759 425470749 771849104 322181192 659727729 365994717 424114411 58172219 842077040 144406853 380346714 890513907 968944822 752932322 756057990 996903639 998164470 4240029 79552926 683866427 702836489 303100092 994753034 268596678 826173058 890882387 927710425 910451276 992378055 643731455 750878003 679242107 737540151 693624808 932189046 375380947 773628724 211920584 302036580 447964965 558062969 723813883 805701023 948704127 968961402 670240543 980163271 151750979 987790709 665902900 903151805 692673094 768386998 889173591 996272105 509563905 784658118 911306602 968743016 648453216 990730024 662930709 745629438 820521191 958445570 13112535 54477923 641098571 975103173 342993691 715525037 415537132 954822189 139588165 847447867 897882621 968993781 353387481 857314361 102502691 783210973 982253000 990320362 104982207 132190245 651953043 881140474 116617108 174912895 142665026 480601673 457502689 842061966 140793905 147940312 975179108 997476438 58463826 764287533 301035509 828024907 270648031 298865604 553866628 736326592 993554330 994713842 240810559 421638280 66430019 119087805 964367060 976086054 286104410 842193652 984225970 986266194 138405946 542101337 63605392 191382741 141144984 881772621 415930136 763504424 995300679 996791434 101411960 589899765 645087407 711728738 812316403 980279760 887991404 948748963 455416265 693780528 437848346 741674577 126640235 586384986 672504325 843237042 270128264 428403421 561062436 752610401 509535008 921136771 67918234 91969621 357025654 552682278 136903684 302200691 302619463 354850129 916853850 985592861 211718312 593767171 229688197 456728101 401132058 616919569 570807635 716651727 305982628 971196182 10918010 710733847 44094909 759858810 976636721 993134029 423797368 828258627 683679124 766455227 791656975 832406233 71820834 208063777 804691682 932010881 935963685 982134231 973913252 984944526 145957021 428933330 574409346 871812913 590825812 895370200 497220879 636959696 187787941 753359922 116589436 971577985 723329697 860457224 408436678 663501374 528751536 858474171 317947540 645331468 81616404 249966810 746144142 752517906 975222349 986845996 622344919 721280962 475043481 816865196 620275119 712984941 117068191 926302025 294937799 552007301 846092002 949865247 964447990 986365742 155779648 442101268 944653980 945190758 82937304 691264767 158550590 898119850 993670118 996324179 805235687 890335674 635818342 877637609 147482356 190405248 802165570 943083179 500906597 834922453 191162458 563422065 183766651 785962482 730329995 835149972 733527859 806641045 114709604 886810777 868513252 888395403 460837094 683194399 358884838 997716852 854573159 995134875 98907367 688043500 350176850 669834996 105743631 441554733 101861594 612727028 530526552 998676752 427961437 658357435 877741495 999822020 63625410 389495320 65976673 905668916 469130984 928511302 471792257 965453151 476707234 562853331 354832269 823203452 455832629 832999887 219884254 510187997 739091393 886085113 477319603 635770353 841297647 863334824 894586864 915558967 219800836 831471468 16008668 482804774 566025778 884093905 576197415 947132201 285415866 765600677 204464755 413928136 991166580 994305948 596127375 692964026 121316210 538076518 246251361 546151984 864430729 987496135 978961675 993777306 792051859 934773379 282248534 390545865 968811543 969477023 214228830 670409238 775895495 839488398 410798515 569331522 673387890 840475261 52795330 96296195 81994190 308536372 666087233 767766046 271199776 324761121 741607627 904671907 928530106 993090079 923354126 986668544 38180137 155945085 926652937 939575524 651730720 812808196 673615824 926576707 139420879 804685087 575543372 800544506 879937049 996790855 895381725 923951277 761377840 878345457 83340235 639001847 556013900 969804587 129626288 445607639 125586915 285993263 217085979 759494531 878889780 953480057 513292725 596280389 770057251 877624757 172659568 800633869 491469856 541767219 262515354 758645148 173735963 783514176 917248009 992986512 433070517 730206039 691708081 949146826 224262082 587361683 699215145 756810241 947188353 965341709 932439783 994122158 920954348 936642028 273296050 515380231 812011100 850191375 88510362 134938240 401053611 445314869 989918534 993201968 199164838 363665686 304056018 744107945 301544656 590995381 888473699 964058121 777034371 789423641 871875305 952135353 617855700 712432600 183628901 427796092 924544085 994569838 1766937 571866403 679304840 846842097 835685679 871859942 783659225 800972430 872693970 899211060 450758977 815439840 643086492 975059366 781698133 993899968 308119735 849968270 122321329 157570186 902434783 914325473 984384523 987026062 326255391 513318409 638104976 803562975 963716535 979051231 236561028 526743716 231122013 615679473 291556278 320269153 715941911 906052400 885873614 891084343 556144262 887981021 114929064 805057199 219448446 513611660 368024985 663641462 712946921 847332715 419820597 517858199 250799620 842018651 892394793 992342498 469223218 664770205 644303337 754602361 888182802 920059744 337671807 858265251 109870842 297180302 164707509 758868482 818139745 884347502 309800706 420768657 588904727 762404771 531456456 774908571 872465126 950942341 655441032 753468459 686003574 697887160 912559299 957286664 948522325 953882447 685033171 881452373 422849680 955120840 100554815 183707631 797880076 927698480 823383209 894271426 527583505 823259454 727586433 848297145 801004010 853990654 737371214 952502327 676502565 940673888 128419562 903173172 720056434 723317777 288538030 301554124 545339137 972876668 157722695 887221134 213469397 484826461 141383559 645085363 57037039 311195146 292205522 851743877 69162381 891809343 626758512 860665695 821272876 835064756 618221236 811366603 987142670 989328312 816714703 840842639 303873478 812372018 893473998 973936160 988899685 995119336 256032675 576500032 15978096 538677977 945228400 956519625 437503258 859350693 200173599 976135199 344721950 615740935 569577121 874852488 968050010 997765749 313249551 421203645 250381920 849191466 463733506 492423107 704434979 796582587 177124253 732789108 959650219 961379239 547556520 919199597 853722078 972875011 314987683 481104498 919205042 984877636 126022090 387761274 630843955 874122717 738446256 815603661 858277097 988543042 661893630 973649029 263757287 891952221 797545933 921120376 813243615 871851990 461527406 609283331 100035277 799611782 671411461 911508563 746058003 913281489 840236434 895663871 823056924 912538502 57647869 649975398 152903814 243985229 57511760 317837792 628450090 746864826 497519530 697675289 610364147 818402622 362326234 892872593 318659574 422583665 282946282 725541971 40032969 596769234 212557891 865981607 937590427 960329698 574061197 984125374 196402465 553445789 209799492 405353760 125714760 174577860 545400541 900121520 760984039 968819599 689176297 750070459 230158191 299884483 562665203 798889969 714787295 800543092 785338643 914264318 4444323 269328591 331095529 498384317 704872948 954879315 724077019 835709100 993551678 998224280 363526462 951619785 413965108 758571251 947818064 978172776 22233664 612029138 495806122 667826650 16658762 135170693 587215280 825802075 888577274 959786929 299999248 873270467 504536137 755651386 64600340 503796873 400061831 731903905 666631684 761451364 66829647 527014474 315523996 981231322 531508355 985965650 792319723 910630584 913900913 971630350 642683897 834679370 898193622 923039176 567959512 605954342 576382008 576508803 345048601 543052270 529076279 652998250 458557846 690904881 439213726 692009195 728620155 739603156 915289586 988969234 217963480 596577958 964065863 983167413 879727793 900992245 548253423 859851198 759135662 804671274 604241465 988541251 122825598 449452961 888022598 924147251 544567826 656648074 58984867 887785366 522803385 573291742 167469200 388885367 406661626 888353624 805379141 967717367 585103417 930468857 653311888 995559133 237751150 450149505 161403023 781027182 22629659 612216891 93804681 881186057 885027440 972604312 118469073 557759059 516865658 727760813 245825412 846438177 633406098 868268143 614447608 762426800 149470668 491441138 58037437 126659512 961806476 981468955 427059690 648706720 771094254 927189362 850975647 885915265 792308252 935979790 29868271 617986622 973813017 993240814 422731480 978139205 513111923 583843837 614180164 667128058 988707613 995278143 886048426 907930224 339490107 395134003 294574918 430065240 251012127 361549283 750757265 996214890 932857580 994999671 347403064 519430740 202252176 861819153 46614326 405465558 140638124 304183757 472768940 853793817 674164871 903063854 984536908 992893833 488068609 536767974 898262947 987382989 869708056 961452540 905992841 924279990 550600521 688441798 482964516 725566263 148881820 801350284 949039294 997694775 975185320 999290375 878237166 900118937 826334698 832961785 871294619 943734737 473719894 986666022 205074488 835839051 631260405 942213531 785292662 920604036 502698572 542970864 431583073 580976150 700716119 971660005 653865885 707703955 886606740 918059638 623296572 697985866 810807451 891337629 495867961 859833962 171014484 959011902 980550905 984652057 231764287 313283404 653798017 982581523 711082603 854515129 846348200 874869287 480755434 567137110 917821243 990068443 962597607 996995021 240680173 766282568 517248675 518342727 136044058 846472957 398945640 925046369 122531694 438513263 398834654 689851445 681691237 846204308 553648122 827519034 729404339 935618530 390579510 823929540 73357243 719358552 115001852 685270191 790727585 937883956 27668169 940886842 731636761 825234348 701803517 935362871 628850004 889516783 97909532 367813262 671306267 841598101 208138715 532504995 170534110 705197798 617549727 652443207 193007271 280081833 469125656 512194900 164886497 409341649 429545918 581918940 981787324 998367318 398882730 728444947 282673234 448563741 865018031 909763446 27800716 204012780 905327299 990611764 249141749 513644892 760381976 997970170 751333319 879787907 235890340 405178456 261191453 811141592 986345617 988272076 985753047 997248567 729031802 807277432 626304915 956983061 399110929 830614816 56689642 747170645 421167601 993116131 281750761 780955533 849499159 976858698 659487165 922902453 731930378 849853812 311618417 445513937 95309420 983390648 565627451 641369988 94776832 285858282 714295362 773909427 713210207 810679792 773685790 842206793 178501532 220336906 34490770 249513575 860336585 901064202 233050581 972099052 610044301 647730131 743133824 761177530 713166784 826154576 987492165 996148945 206502169 766140303 901801894 996272262 363120719 442240940 734510943 755926716 367404922 724756298 454344859 560586294 752919273 787745666 900226933 959178593 65382374 497079464 95219730 422732069 811125661 979486312 836598294 935508584 756099808 910443847 745587294 782716336 699065300 832846635 41791056 703660504 320485763 392419433 676691478 974359832 275864469 467575198 558718383 713070817 900072547 942830454 605764113 892841065 205595790 830643985 901991432 937345780 683848287 817395523 73236404 720472904 671006775 788466071 988404850 997450922 719979061 817406464 904792132 912060579 166027318 475486626 396240595 616741690 871820647 872280109 111947860 928927169 389191487 462319992 954040339 997967581 200299295 458361088 211523343 688030493 848482656 914540923 476547955 795433157 227041837 813330561 580918467 937029457 509787804 553307397 506164657 674888714 357175233 946735172 260161998 457560609 341153134 796184210 592838302 928389817 483409215 687385573 777153658 939343522 316788428 825697547 50944118 994280056 847511174 963922608 543793196 733256609 368637000 721621428 276011962 570333537 270712445 847400557 463594807 604779355 682046739 688301688 111620579 606675429 707992081 991701489 197421003 556768415 393993374 544151540 62817905 120965275 382671036 788718806 342973886 573387147 34391371 668102855 610081992 624898022 313624573 371209866 665119307 905165624 562190361 948799396 281693739 479312071 283140672 373830355 184633016 434587458 636680431 683894949 370910888 749535239 878388363 915894177 860809369 892634925 170832767 809053255 4416858 779376910 367302928 544855246 504280135 671449411 532619728 766503688 902909590 927600357 80556043 153165565 217398359 602777216 430450427 462019578 253082202 305140368 862036849 887428629 394918618 653714182 370825609 482603406 55882486 815235384 740674585 757004057 42022635 568150193 706334324 879806010 374685826 721858317 466922592 954067888 174563437 518390221 806354934 950011542 19252850 971204955 1826395 772784194 927474398 971657051 491669877 765617587 445053299 507580360 611082037 946410546 248834152 391768232 873442116 966542482 222072571 618810402 951537247 951604806 577499669 631969628 798392390 898278530 980699136 986184931 609896361 800029613 317583085 616191863 237357805 786676395 146114819 836229532 886145400 934532167 583760752 854353816 115534641 325117922 583362569 609399929 895186411 954384859 189745133 684744281 298076854 438317348 272982083 895632390 677595234 914965680 70692314 72447249 575600205 988859911 432449844 461288623 161592402 576952991 283945170 626647082 293728153 629888652 886556745 989888738 561486978 790765478 861424579 944715922 276416069 321772153 695626932 908617560 349805748 908408809 741515879 876784164 148882694 565196386 653983408 951387307 703224527 981657407 406845979 626509851 190628798 472718710 248135181 961631716 286257461 822111324 334862491 370868730 962815852 970631147 297342898 624470062 183694308 591127649 329712432 837716621 650652442 807871090 55761629 250991370 602728357 855258436 198989207 738490258 769248858 898299433 209623114 303981489 448750001 610049733 357029818 431803846 879206861 935852190 841761517 909458396 139590876 662213659 374145311 640778242 529734367 982630525 80564083 803736367 80359172 712906538 2273189 979606669 948111800 971155229 174750791 261285480 989114190 991260637 359881160 461586921 434745528 659138234 536345745 945843905 287557644 957732652 236142155 363906910 595409337 596263490 865881411 964719662 584099797 823616741 304251058 721739921 48376698 179630001 90871376 788728310 327631391 379366188 656418437 720213688 804227756 989931582 855993980 971503197 629179408 767370595 301745959 930940244 559401307 912482738 73716627 169628602 534370439 629058369 952018022 970880596 3641579 777618260 736080216 867939727 671591720 917715032 47485211 324035978 711200992 798850478 987036735 994754413 147114710 172135284 204619280 801518831 886682811 920301206 785348926 993618377 867984213 948881649 128924082 445539413 174574286 301229315 267804803 486528882 739976020 878074869 136403966 550843592 765494647 960675778 226349838 501778570 931603251 962235504 547913922 984728386 594457968 638591409 185360785 297673604 611802962 686779897 290346607 567947821 869390841 919993550 312282549 489825310 419368789 502167223 297581401 311941405 312211678 456330911 73196392 440664140 704836011 910949601 957340048 990626995 708651676 768481272 794558245 842196369 414858904 845410373 5498037 939480820 125756256 585992332 663673377 996281925 172531096 440726756 106918972 237429321 177744135 264529430 248613575 924613800 846739046 999390799 381562283 559393237 630991856 872931291 242206194 292498936 153653651 579071481 592028488 811591814 104245548 920125233 186754393 650834438 778423955 981166816 899031931 953576196 929686560 998939740 129350600 286610168 140880464 867688303 834769807 939052473 225868591 964583008 444144088 623184575 456614802 590766934 427987590 470804520 851058072 921098002 345490654 643424787 616158671 956922706 365668558 437289872 826912833 877154286 740629023 858261950 958339975 990637409 252198366 697393634 118919390 639874317 270768430 827646315 304272399 682606329 304848994 435727168 603805349 849372034 928509468 998369804 715273517 879626549 928338038 963149565 638330853 837508857 715553119 828704299 22525657 581264844 444967674 824395592 714484664 806419700 398970049 832391775 688518654 890390579 5235994 183321127 880675814 994468731 345041107 458849429 460040653 582563193 351070082 460999546 779136802 974382228 323214085 894259645 113401863 482102224 247957389 936021628 445019298 842605552 457588895 788039844 530705130 611743225 21310930 376393632 99671508 879443287 124414324 910429018 666448639 792537584 952978457 967408970 999335305 999836992 251621983 867246617 60491395 712546830 683490587 685717290 335141816 817627467 893372862 982237295 615541318 846978932 830220812 951363989 943222058 995423030 270890886 571220567 91897274 901530190 504928084 685798454 416002098 614799014 866778265 961809008 605234450 677369379 300857134 464999672 104633354 529892110 734687670 890325624 257197560 893613455 751465248 929408508 958420495 974179650 20282567 515248259 582735499 820069793 691126017 724510048 86217016 625110786 141147309 510335937 147904301 245226246 154361591 663697401 873215672 886808258 970143044 997771203 218707966 311818639 185475152 999972270 780275891 801077237 571985424 724996107 907170131 966798764 891383969 961791806 638133908 925404629 161595137 668785864 999680313 999935941 180854939 726024109 149891031 665625428 398251431 714617500 872731078 872770361 969067626 999754607 234128001 717974716 98521168 485923425 539774899 774353346 327080684 874970938 125202358 846659162 63789922 747930894 730565052 909016504 370045271 470799387 616203869 856810342 118444652 462035388 578748349 751503161 392362741 950500049 324362824 962743378 166905815 888624190 511564120 927198021 986220282 995398748 134827 574536611 759287388 785976039 39241766 871860355 366281857 874205001 654821342 785268919 788722251 964614763 397824701 696603579 585707333 837112559 913351877 983224139 319782556 747892303 393661535 705386772 675066361 958894119 425293530 479497887 614489710 682095241 962899287 989245967 182412586 836881462 830105464 940232394 590617080 643010753 919801302 989938751 512533328 524355487 14819790 247614262 147896292 519102850 474642139 487624884 551110082 821121228 474307097 710838787 857281573 947357034 562433641 949368033 260569584 313553426 553440387 826480561 97426726 172350241 841208842 841895541 269773348 557430758 171929687 863785841 675059601 967830902 832843453 897740728 707655121 714029180 847983731 876276325 631791001 835513266 878403067 987194729 584126863 771668033 845616108 855534340 180015297 433677745 972724546 978161429 353688538 610706643 212367668 532778291 137220553 458576345 700089538 812944782 158985165 786745399 318472281 377678291 19401242 509130080 762098625 884586287 700132510 959806062 857586335 886575761 334055893 407344176 478322197 794665114 727404046 772507348 775258207 820673911 483786944 831386124 502424462 546924959 861121148 992563854 977171768 988036108 535209053 576631551 128073342 781111795 452600944 967902467 139589785 715702468 312286205 719793689 418938905 693435777 819060966 956328675 457405091 692939065 831365403 983996955 504943070 697874655 742904803 830323965 461078391 868476676 956312795 993517425 584481246 786356161 356465983 377677568 247676163 410531543 804500963 874890979 239998245 898741854 322709760 357037060 894379818 956591418 828020864 961996651 800528110 876255692 363057272 665221169 785345180 803558556 135344779 724188819 931380039 977123117 721486878 777877980 411709833 543711245 860110531 872850257 447633570 774903898 73290903 483855740 179073963 708488051 897179835 932705528 754602602 836897654 131499404 554773052 987278947 998473173 65821371 789566595 689585415 705010652 395935669 527057461 536157855 616705758 832904474 836264822 630034353 856859522 41578186 608456365 813513741 906733628 46473415 50501686 867660201 898661624 152774830 569614975 220661916 987592277 564144576 608949001 135804497 274416247 560539274 733989682 118781921 576335496 208419907 969921076 775344760 910892478 7535811 202694979 306111490 789003818 812990334 837301905 408201287 713789921 72739218 664329912 294930233 674940778 530320690 906244008 851040597 871636361 514978024 858252278 277975520 732384731 267004674 396635310 394017977 698872006 834389493 863640292 677153116 779914357 633863969 668592629 241002288 466908995 174345830 970081058 251445972 337001236 417054543 945850534 260028388 282595278 531520228 539011436 361192371 518445167 887310478 973827093 468786871 856087887 96487031 556471844 622569343 697840538 313554662 499634872 470038311 552484812 217791199 437170368 53991958 976641308 887486825 997384923 274941908 610620368 39961480 908032940 956034117 978623058 796097076 847326681 265499860 583642644 783610106 951143500 81264356 250216384 854706575 939639544 148348572 786279032 621207121 932472509 663296507 752105280 278713867 410106040 786531150 838389924 626333782 893052240 823011597 903869264 748546101 884506161 715105688 759251264 242054535 349035637 121305916 835549739 325257026 753692865 760572852 978068514 666779822 881786381 578841921 839991712 168625108 440015403 278045455 333908011 248661028 324684704 947178175 974939758 809090335 980669281 632783826 760096108 461471828 948797628 403929461 404221132 894299158 974754198 746235832 974876986 763762765 910834692 501105646 904977783 647993184 974047095 440080933 527243527 147678063 569972739 552395787 861565740 917252489 972767572 750737508 931281087 537632449 722621606 223181754 774546801 205993718 332326019 593575405 840477610 936447260 953881500 603288496 817240234 83387312 91651859 139919765 231467181 352532363 391189762 343513139 825870002 447911459 563243427 663500529 803009609 688661293 884563455 48498461 184627561 937205546 938064988 782038513 848763730 340452571 675795145 93864354 338351677 253457166 783033922 540650996 601316392 311959910 574816914 328215829 374866666 689003008 749163766 238398551 412917185 188302587 906035365 924548480 924718904 462499334 789705603 868845175 928856762 446697445 648636981 138256555 650248007 79891867 129425734 141429827 321717135 378189408 645597543 772563743 993150144 445524633 634183493 796621509 924528569 216479862 905340220 25189894 55431946 704763656 802836223 949672099 997149402 860278052 935341237 175483210 420017501 836621926 983692409 746377969 774108774 210945948 479057171 907009178 946646029 256576897 295574872 697462916 808951718 877401307 969155893 679118206 805577553 530132540 740435634 840528207 945207676 175489293 717174559 327618097 521581240 143002846 633694582 153104158 338317622 23627574 504531027 714168504 755215633 764478346 870089603 666666133 900080083 458803418 587285656 771649898 826525141 177492287 924901845 609546180 996460430 829105064 979296280 464557031 896681714 400642430 553044769 421515479 867589586 391984792 611142835 583259271 916931020 754424188 986567641 744523690 959875589 485404359 485580281 32142464 403872123 448031815 756998326 405106361 775343873 774826229 784411264 96259982 386994149 504941727 927472055 12291360 919856631 61402777 549839478 923423067 923975136 189822074 655997883 58471401 463348030 106376476 783178399 216560957 828099490 355934478 620385245 994766937 998433355 950840169 959747973 650007354 914252158 716597396 966271465 501079389 928219079 215134045 867851518 253796394 408472071 227344868 664101452 351984263 768111561 771248149 989321245 989684445 991661442 335702150 462464596 424057363 924662247 449869888 826531004 719460052 748493458 180085609 397137828 930456795 948626919 788320572 853356706 795845912 947698363 772383490 835866108 89950403 127112478 645540658 848489647 45745247 896545009 837310495 994573323 977137147 990835267 524190683 537549000 932432460 952967965 716623513 861300503 345953980 843631635 716002766 725971556 41558724 865878150 595622401 862635107 136703882 347660810 63688986 751638513 487657080 519183693 326251887 635033106 144926037 974882893 349133979 842691905 40170581 921982422 846114647 917551312 57048036 742819348 51304872 210183636 81081871 819811564 421596560 666282773 709191837 900967848 800681164 950168063 790311602 802280398 487898180 490991065 617047702 789701334 74407576 228794599 366768265 981049962 456546930 507338402 284879794 885627906 387960512 770548879 854566275 970896286 577833741 756050880 355726619 521925389 596855946 970966695 764021044 944791457 725723144 975948728 315071474 402328566 493760921 677805675 466950443 871021579 432320683 969570367 606799073 931335821 19858813 962604326 999648634 999929112 99677555 196301637 781761011 810650047 559339285 709502605 396489490 937922957 771099498 803650123 211966781 569701510 715486788 963067310 269237210 697744361 423435686 809678257 263180656 891011621 873774786 988295407 576051936 692122572 666997054 698080456 577074357 835311744 815537324 918038589 17939844 728150822 695342058 809951324 598436542 872143570 475914090 959385837 68805215 859830501 179391283 345553956 800989795 817030325 879969999 953262217 92304280 709496696 347529474 442035547 4149195 27907224 826804211 916806996 612254062 920458394 510514625 628797286 744227322 840958190 210463574 997256288 272864976 287145283 108192763 353984151 175955709 222782290 679938056 887030362 330210567 730894473 765041244 942025486 241832036 776198269 192490566 279014818 844652705 990032706 199449757 925898210 600595901 956333998 695693395 892668329 935835954 943082450 708582249 726429353 857061630 929172298 727306093 744901918 769643596 842963062 699353183 700911017 811280347 890203385 708821690 987413779 129074767 667742581 718294791 968455209 87666311 611270159 312008432 687618215 625324777 955704810 569265134 836862721 121153619 509752386 820089081 930163385 906573770 940011166 349947185 429464357 198439845 774560222 247922348 999329320 28364807 71822570 504734180 819168904 993987641 994400651 38465815 99172108 913643175 942080583 30335997 232274440 635602021 854777123 315029740 661275575 145798244 815782252 990510063 998550614 707546754 832488223 388696810 391929707 676146240 807930123 261223474 772309966 888420992 913993694 106514964 206050212 549336419 780076512 954145148 956549024 30325753 723759869 230933423 924458736 353002015 789789968 264353867 484856054 708475897 815945175 187253107 471343470 158484207 555652294 426835802 528383371 506937731 997528391 897565055 939866275 431402061 907609763 845546173 906576960 521999310 885852385 448793329 462142344 380468097 917026840 762640936 848393181 584397879 677655008 489599389 967331640 804222634 806173716 647653159 846474049 809692676 839663220 122629490 643135388 142373323 705962441 551438778 993652404 811822591 992081602 996854305 997105380 422809288 895471107 330351711 773929818 251553225 890149626 672439871 842486367 851500481 968719767 799334005 999276163 857018827 984931280 79903286 474151109 16201830 593046363 937803202 981263321 928092498 972138106 946025645 947382303 41324623 308061445 735291454 776940559 764394049 842813914 150509063 303362249 108232254 443675438 85831673 545730294 504663732 647179394 906527786 971894209 160616605 177646937 32178185 61462349 36622676 747186495 732256360 735421087 92208680 763948418 673953429 749533813 846528258 999508412 509237378 917584691 536380899 911500073 850023966 981372216 574986323 601982606 723933039 951506781 18768649 232819068 276975352 659896063 172369549 363009027 921927408 955001891 537334963 754742932 342997250 923620026 173500834 282534058 928500888 980059855 274210024 625858768 456213421 775544115 766864527 939235579 69240513 215949384 347079103 394486307 994754603 996583326 232051747 678091524 369480383 387997687 245713570 650646228 587382619 817958040 427505882 963222323 878458818 946315932 59663727 459256311 957028107 972369216 394572684 970268703 255672533 543185147 302625081 712249520 3577987 586607287 895713007 914136382 909532346 957328946 389503814 979017157 128196815 187793027 19323089 525475469 915330058 918827218 835459344 906513909 96731548 947144670 224270955 410803811 648126108 906255849 256803733 475376037 274341724 530760296 955966665 979845568 640403487 820141277 619129299 957836236 743170928 806920080 963691934 995036938 45320602 95627222 985542527 995600133 926791596 996425068 563864991 774882324 450309415 598356643 534464167 896204450 546072162 843571631 720610175 777936832 764413737 959480875 331628054 885753448 518977324 678168119 149578874 458305588 341046266 831557041 616416643 776292801 788496058 830031375 686939956 754947683 33043609 173502659 908360948 950293811 300267582 945347644 459190032 892114693 931680439 936176822 665976284 828253286 446601797 747692115 646634868 711554337 857457530 938949671 991761448 996884905 349136653 866016448 830189108 952132178 814336563 975721303 324717725 547008900 406768265 427432092 427141063 973565071 925246746 929333466 127342197 174511372 719069094 960087188 636106912 913532295 703378979 855879096 229079191 946091548 292662054 718078491 657064014 658653599 496115895 732481877 218126922 247122868 475046408 662508667 920357928 994649599 490796942 516465566 852369513 897410286 786632810 844560744 169908370 463260367 651645185 883167508 293235067 979717841 965062731 991135677 485727463 983415467 29084887 480366480 356547604 517997239 52344748 489379508 874130532 881663242 253180315 257735788 539454061 734099055 13547472 984963639 520600358 645852702 572387029 880737438 998289531 999168509 439634676 699615646 695670261 910981057 556857163 723735691 779502082 849294430 509363598 579867386 107128495 302014653 757019216 800440412 257638969 590535414 520918764 866485954 603595353 958318890 646564178 843792144 400746611 415379906 591400445 932783723 229038615 581711228 876198963 915640684 472800663 777164573 601950725 972041999 572124958 641367219 597798692 628934927 327219696 436410163 198009861 480723092 844265346 854644175 405577332 971508557 734700124 977689132 476210397 615392722 954563372 988374679 531079234 638727198 883377517 910478173 710126645 810514792 846667406 973235777 678994648 746398599 12397895 166285181 546287378 602934003 903336928 984316991 773466936 896175916 154581312 660750535 64758048 114872111 342196340 370383951 421574263 808832889 626429051 987886780 639947218 952013581 394310341 452676208 995156441 997568692 128593282 813106200 270905458 893415674 140757104 281891425 147373579 817042513 261201238 901319273 843845239 982147888 62827388 341857300 310492788 492405009 802589974 819308926 35605555 841670020 639543380 975821270 789186490 822280753 405913798 412180584 630352790 873431384 240109695 990113681 497540223 660780141 694536022 820985714 950570226 976825423 133620469 575634303 305957386 486377266 709095545 761640444 283069722 379845151 590560200 724457479 645216041 787278609 403474862 992941630 876731860 979981985 463189288 888861265 798930788 859266671 688072212 731774577 449247378 525224316 973702575 999352402 283672597 893343762 449698412 851821697 36203851 674706934 902875224 995514972 674749635 854318404 619885725 884825064 22112774 299287759 140748537 674947339 351446253 637274212 899233369 981025093 505425068 908161796 952172358 970302154 768874471 787991759 745251837 904506714 75908242 895157200 126253800 388790906 137343119 306927122 778075316 888337568 492866708 823595863 666000420 878754721 859648282 898913027 266277153 604357556 21389266 96594910 332933593 433475275 245179273 655255068 5170160 373634682 52865079 818285731 900220686 931787596 606159114 975458348 855339059 942661037 603182139 734801607 580773586 938158171 779682917 965446060 264943985 692261229 600280042 955377067 235934664 929382326 61061281 62693596 902657151 970552622 958901353 992369958 770189183 980758081 474896383 889364027 459236184 838764868 267059872 795063060 277340265 442810979 830826690 950893871 809061983 916107584 479199442 631332839 449338661 961079291 606432662 953826256 473693678 763806039 405405552 652797023 487240900 559491686 550719764 766789347 50146990 914724259 940598175 944581179 701718402 964296410 518243600 826901648 475198829 677633360 833760707 886273302 297670503 920286391 382177580 514711476 518942099 832932581 949705719 983646277 761665184 810951140 492777604 619299487 346776888 619825443 318653837 635594152 362644668 787171820 91602899 791102210 889820011 905088375 992095395 996312559 875136491 921013728 633693438 989916057 336109302 563032899 831432805 954247635 921355797 984304331 75079204 994228241 776473951 929739451 602150267 912008191 470984029 859766563 301714453 995517744 167002384 427068695 470162981 538363886 986220375 987832571 463637158 656739730 985847296 992045074 210698856 393831517 147933670 628717099 646061106 830798221 789724411 907367972 172844713 725776820 66476350 367249290 49648914 497377781 243477595 805993980 83621175 198133260 991872683 992123433 49644755 633758221 263311668 706497529 726354727 912074216 865387852 898781494 331780896 388990113 795272236 863203591 641436020 712060263 215428655 742711504 430683452 542055972 160536898 605398495 110007235 642219538 6202738 257231265 223708210 743072718 406883100 807855572 456665490 945396504 641007037 992902150 5166636 58420926 879222389 892969182 136944058 784367031 907799377 973875698 267998047 998423286 926951314 995806092 336722300 915751889 425533699 879691846 676950863 991242969 747678869 947351656 894139748 902061813 227232281 841980417 380824354 984123667 426287327 813501577 98040952 265837049 886754084 969463511 816680246 836866978 351298051 550668550 358249589 514675583 941158903 989678425 221335063 769386509 431840993 938108422 741990650 990035074 259505325 293893298 530596123 573515851 227697541 849567588 99329211 499168181 758521328 884337941 347167941 509549579 931842418 950885340 76132673 979084699 697574215 898887818 602698207 666992553 81160258 363965443 819049611 987198584 460096557 489930475 5444500 882414764 96535782 522349932 596070673 753388717 844533916 862635081 727774820 921408091 282740511 804930103 733105336 911535961 857377409 910010206 91948034 151810590 182965603 376724323 552078222 718287344 900450478 945240232 336910382 638190295 146094717 373831157 399010404 816890499 596827473 956019630 604598562 754977195 970746672 978935813 49402645 761961975 92316722 220918826 76933747 557410611 882563548 965782545 526270056 848898259 475662712 633780156 947984470 953274198 329110417 686894721 775591960 828977484 629926705 676191896 924849295 986325294 857352464 958292665 742776786 806157313 395674191 593596801 773763041 939881797 527554125 665042631 603126000 790886916 390021854 524385439 671316080 687426951 157292646 368815995 964588046 977138572 850636583 896767968 613915292 766918444 787051537 944651057 753568746 944354025 348829671 525898806 914844829 986395384 75614698 645105678 984135785 984429824 279987937 891192079 584868936 810730817 367820868 401071160 981184475 996982734 23105115 219446608 122967596 303829958 124045264 993809191 846400188 848538437 231092420 516953744 473619624 614801529 560178510 997468976 976943535 983028701 660345133 967947284 718635060 788654574 748620086 773454706 206032004 231198607 994751676 999510087 503530893 645947944 347012837 864098674 41690269 273574933 657196432 723141868 708320534 968701780 605554930 789377874 809311139 943997368 838209362 931204096 984852294 993408315 302970973 838605447 325318616 409952942 822870888 993455089 405788683 442281715 51974311 716482267 576213757 955161619 78328044 829365262 925878190 933497395 635133276 856381987 366955251 606669097 562700374 839067881 682188848 811403017 588332822 990044356 610832743 817433369 170192397 720064049 717984438 907793423 815179583 873592674 649844424 664418768 237061172 834379966 238532445 791344037 900652382 903275589 836856298 923926230 955948554 976530180 286251401 747664887 575291719 701668018 604907614 610899466 506967558 768724667 930381785 945937192 829523215 893833205 587108434 596736262 579298833 714452440 692087397 806181953 789001853 930486118 229488258 855337598 35243066 819788006 215356765 309828671 958749703 976325499 800072464 853123225 779873812 815468049 806858445 885074413 222295946 760974618 898565277 941383874 429372174 573315806 280292047 720783323 242150034 553046047 578632478 634856390 69189147 463928155 647742795 693160117 302312082 710532988 486091545 749775127 30662250 710955913 579356491 750497071 370797969 954800497 748192369 870746667 592393644 997454919 726083395 910294285 118982282 715431765 478850640 480145521 654817874 819039371 222034978 923193312 194780223 510009601 64394234 882444969 208640305 405970875 757785031 776807639 489189689 831164888 731205695 733326655 946221668 962511802 510618045 730464157 637511589 638392425 370836304 587222210 421798192 632499386 796873073 843707064 265391687 550981001 328175720 688689616 165205168 909505364 520653350 999635717 485563722 790366798 53996521 370607211 223417043 943788252 568279618 947180255 432531299 465108097 895678794 914646543 336217383 544038710 574025303 778944327 738922747 827697113 941922448 998513120 568010059 651987893 158048521 550801312 392260300 709024315 189920517 792780419 15138300 756012722 532325716 868020276 690077158 777375021 785304269 889033190 2470924 358462107 700141267 859340133 738880701 830599435 121384739 897270007 773926101 834992434 60862211 695567207 990408122 995935285 292566218 298648772 525736491 578177564 912584545 960613852 709324169 733546889 286176548 924539348 65255347 516501934 903491015 963276994 806876831 974069064 724067999 780514255 359887727 400439086 834145311 917815061 191213845 268239191 50154701 355589193 122479878 762043706 494248936 755767258 964450926 971862910 320980424 837654522 972646509 996484584 656412688 822414873 392190532 918061764 851007940 929509554 410106871 919619697 847854473 969314788 499307954 918083794 710765187 758748306 854834530 945841551 69475971 817233705 194176824 565350433 24208178 590178306 435445145 882147739 631221559 680295566 6604344 841853957 294900407 954996472 234665641 378911581 960526749 963932300 112434599 834457001 2994562 800968799 885498715 988148792 773523988 907110571 687586944 961055686 469142296 629793313 744209546 877286263 546358975 683733125 660776641 927566717 5688039 717709971 402028702 616885507 294619505 861455344 25831545 926390809 817120131 836508330 348327066 446294450 634586341 965546382 981715760 999779580 661655679 780813914 839945726 961199668 111356353 139999601 73982411 107459171 934665923 967784100 44681562 735141235 129560664 312926498 861444171 987394117 506618902 578641172 925075590 962159840 494472238 788572152 641875958 968620422 572364511 689480379 193938154 633832090 991006877 992991112 925567946 962226554 340401252 985194281 728847571 753600348 338544705 378107576 433041141 924370777 999483037 999887429 303185730 969247638 308337477 513520978 65404898 292809088 175453113 788451778 724318898 831142619 464776922 949210420 714454617 812285223 361272515 752807047 570824668 572258641 947445854 964727223 268227465 513040530 151495712 952962569 609116007 989090549 279200350 665823393 37806876 447123307 737864088 851390510 299353384 430144094 130558796 285784340 840514981 934338215 12062598 207949532 189037677 439477972 688488473 907420054 674684567 938662021 736835900 953995708 294424971 388949484 632780918 755856801 164729091 760300542 789088381 846656116 548256853 924692250 133571243 594164472 792932703 813919803 396005459 875359570 325483044 688144266 754373347 834480677 866838362 948900758 18823115 38273914 295038422 429197593 401103445 549216578 314664122 499342719 667487315 812568312 15754337 558188113 808139715 905777956 646175256 712060232 836671688 979600944 760344654 813835893 703807126 915002705 18545899 624364820 22667095 827239265 360672751 410404197 757743099 977651550 640467354 747633935 392178401 637577231 191783244 657012452 149310243 936842896 47814652 977177629 223773450 305773394 221329216 649125221 923393407 973406993 621163771 856794041 843486781 914564596 359997264 602750662 350260911 679048677 614887602 835027438 629169946 899783051 148302986 347323161 339052469 697667118 860128016 880841551 432731381 714348412 689421450 976068136 582037222 830886982 262228006 999784292 938855565 939972915 453153075 730749889 668652002 970027196 524373632 958995410 839443828 962229593 186488734 743522563 938908939 950456704 578382055 880636073 13192225 97751471 222484464 935320354 438841365 813589924 815466050 987980183 919064208 979120755 394522439 403874379 992947411 996872892 673234436 916416577 142627229 558301063 855999083 919740414 572627065 930435897 195132531 208811055 723783440 990108159 428454264 612149399 892685183 948447431 215619702 543560351 923438749 985452820 88290124 919912519 883367947 970564404 475576624 488286370 905018850 953831365 541237674 703626213 379696066 567781259 118615878 969402115 243621345 956459434 97305968 293166994 888663594 979428170 272888687 986999939 656833921 988841988 278766792 422241780 215176223 847284910 664432520 811079204 431322644 771327116 978146428 994648664 859738305 889972243 600464289 900100921 797365536 844598163 107125814 563897472 410688208 622896900 299724556 495430111 293947445 929449850 91730073 949069921 197521229 594198835 511282812 650956129 907455344 946936300 359701291 591135037 749769355 961476302 21360638 855275120 133539945 532389218 81301795 986569789 527931113 865086204 824829036 892177863 158934668 723078670 320889931 363546215 962651862 971852205 959394243 967280189 201210216 955808272 891160630 925524448 64431149 811742251 838432580 851858548 185726245 280743516 332501832 433510027 118506010 223119570 720145716 799743976 432832307 621753852 917711599 957653410 967509462 979131676 787210675 999431720 940443562 995332024 803925797 885178264 508246305 626126439 959706797 960010435 968993988 990641834 107366488 301768876 14772573 526037753 144150745 310472402 480818828 549843142 721674603 952904175 726121828 898434626 273399380 828059544 369828820 753236547 355266362 588639245 369230439 673405512 377079521 771397049 800931295 832107302 461863120 503245758 665014851 965934614 508375740 838994630 223639806 234534901 396025511 640929780 551485699 928425703 630408162 967926402 807960992 893669531 996701992 997148508 162517827 307329276 291152405 913956951 494015889 647158477 946928731 969110721 983924703 987998475 474407819 929342919 675841143 826726641 441104775 747585669 910114224 974363231 519167077 574594815 727393041 995080535 968338214 974553070 569804120 592019604 836617272 938039369 894428208 965162945 660960227 698934932 528812529 695103410 947869175 990205392 163741749 818562751 553732054 905472919 558663741 832492210 272363420 676600780 497399128 535733317 231972157 551397729 70484827 485035264 765384770 800881960 315741751 337609103 783979641 990554461 2817827 298998262 531677399 708776826 394000580 521107936 813814546 865424460 385400812 990091458 826915304 985741767 815821648 896021720 844916686 910021347 832675494 871928245 27061046 173380624 716074709 875334049 748725623 930863406 42318733 445405986 123918277 674007600 336672564 826671821 979933507 988764093 144193871 217241975 713941269 967785328 989996331 996864466 790086280 812498306 26136279 953301689 26656854 673218778 41235261 199065726 768246639 922713221 147725498 708333639 328441670 525109876 278774962 298239439 19827869 284710060 396579182 430131585 332998275 362467960 949239742 987910410 955151201 975711030 7372961 900202362 113680654 223742307 652627171 834404494 166792549 492140786 690838393 863786227 135933699 303914656 63001593 371254739 860997625 983239546 5612877 397478105 115871894 908898191 671198608 980694088 399816465 516123564 216411350 410617653 635920119 656916863 530160204 634661443 497852302 587756887 133819438 478764971 60279009 412512759 259901676 547800498 857255980 970762728 246757129 761517519 876796833 945485684 447554500 580330106 178844893 708785557 767277654 771954556 916322704 929983263 489795242 530116025 620626479 985721137 558657029 625819037 209320219 507895225 242148456 262237772 896669918 979377013 545063748 718821706 817505604 897243819 67492763 603390815 706174704 857970399 581977503 783170552 529269781 920167933 937702583 994882597 952698944 979390421 920409064 990701969 404621728 882684595 938880241 963315908 933206804 970018602 89968687 928187680 649262412 747766967 552648126 928366568 378343354 510972846 849034250 895351294 711967516 716883734 561956567 979098569 132170948 431914064 500075402 727806900 323744102 859511772 466670063 782041447 916335498 996602671 960397227 975180503 146538925 961189087 417068725 689367179 904590962 959194514 446474196 502229982 783699695 964909012 199621293 834601808 84195832 841532712 188406736 610858004 396580991 943927144 397245137 627552454 715045136 948484119 996580706 996742820 346982856 637113648 917502798 925575607 242873023 548833759 213349165 539557743 917921679 965298170 59725465 398581396 893355985 980187503 144920977 943509639 191553812 603609404 484815972 528809829 379827972 565577510 497254771 549938086 759123895 810008549 465338983 947742045 194444401 665245211 921389835 979157420 280876293 969868408 107530927 241039999 977964318 998426315 488586691 631266348 382582446 451541839 576252736 745289068 584110705 810587763 400079283 434201218 433219643 681048467 321659036 912284967 38729961 260682100 607253745 860750399 201073188 253990226 366123637 669841795 488559283 570890226 298673260 430740083 931658934 940917536 433606386 697173560 600020884 788402079 625320125 783169129 69852431 985751640 328657363 446214021 473459523 836059593 385250723 717414954 728314070 786513368 408540864 939092380 690853776 721137003 272707042 903917707 574200824 735158524 970592537 975497115 274088474 442085533 257264945 755941012 460068283 924476174 288760378 639215180 868732838 966946335 295739371 921251501 602911565 768798454 683385175 763802027 389367834 857758709 769750086 842057294 678823677 821197039 959274812 982239800 744390904 944463558 855894272 910520097 632188522 798380523 318500939 399492178 653236508 737985910 994354047 996162447 519309305 559443224 835417948 953365783 12800556 531514335 302382701 591884961 769854708 898873753 512899964 609309828 359857062 580951762 803898030 963732579 685305432 792363567 350840779 598747437 905754577 957867614 146644369 716830316 545225008 593916132 312474077 345233312 991301598 996957583 454339551 864369825 503681291 961824151 282014557 503896179 567231515 889976916 875028763 941540092 834424965 892315376 151157215 902209101 293487920 996279099 596817259 876374812 276950129 408428467 832464151 881481206 943071422 971141747 642039894 672429550 214781064 634110704 497546409 627244890 116859307 485392279 114780529 194780869 588480562 784890426 295857577 735750184 739414264 878273922 372567816 796205575 428490487 966653367 66800691 875077584 842369499 995277298 891261233 908277091 793701498 930116983 777670083 979839674 235143313 680451960 138387855 398565167 107697995 429165492 371794155 529987963 866581361 871200676 76629877 728084895 610769094 629459149 848121679 972482928 759295867 869754357 74877764 235650196 239761097 893429107 906113043 977981446 427607584 716076385 175446806 930289134 131764903 615362908 369732137 469983519 744464631 949795406 582403283 662125259 795844795 960832271 337427026 905603126 53796456 209877730 632333260 881389027 303891643 652499587 862671587 979096990 459268274 684475668 251932126 681498632 566020096 782510693 621047706 996543540 781754755 810985464 514581042 917659809 477316823 779006202 113579426 171901050 319559987 422553736 203624080 300853258 106528258 171351319 851296314 977068068 280055547 598575286 937392107 974692033 98577811 664103294 314290437 366639827 114570554 704854661 228099385 360850358 468126151 768618605 545744351 548228787 240697728 500545289 103581061 672845342 741217458 955628579 225145638 575872651 994835831 999515316 358758450 645834344 607185622 626610155 755100155 859125305 131781765 611825231 561434037 825201005 356477516 703084392 794986141 961319222 87985505 683710083 46640451 726447860 611494634 759969850 576300117 790087293 44569771 880894997 317924048 331458204 486741430 742872741 46644340 859352775 605291598 795218521 379553428 793175446 560768981 719242834 226934616 326689263 808233560 898366173 390616086 840549534 119473250 549132901 387712126 553678554 811292072 872954524 626373270 862931043 873518816 889628448 284299597 465222576 939385599 956579895 680859597 930449792 358021996 885502980 262082134 772423861 217218945 727557150 855758464 858219893 538224952 656366450 184771351 665990311 847767713 881941815 585276463 648026513 353510088 725771606 961919250 985917429 76367482 933272162 322256095 838138698 979490231 997904700 990507067 998923413 540755388 587079057 229153015 879752918 934487593 994270969 657817174 796766286 972320575 996504553 113779161 706628725 364262283 492535298 485219078 807820313 260150050 760838720 803788152 964666870 986588865 994036916 641635594 894350792 675085207 945860767 830055258 965349185 521698941 685029649 322553926 451076668 862929737 959484999 968044594 981275700 496734580 857219907 996006054 996351382 63986472 971112847 327630266 447434547 235507115 661372476 445075237 955735006 683793451 810546041 78425893 960464693 97703255 439383728 524766407 762123677 472397825 809622743 985544258 998814124 222607766 728385358 277216258 662965170 947173885 977544034 802762838 804542289 114207120 539348961 149804066 212686976 731370624 857695381 922067362 980035121 282903688 744144932 522937640 905889435 792107719 953810233 379891711 838665717 107797408 207897719 983862596 987238702 637770687 709155503 78865948 803340750 204569357 695617083 870005448 926925950 487191724 974683534 318601667 458743790 306473815 630050558 583621811 689277994 250295299 767781586 176662950 531849526 479615056 607055359 351191901 439136333 747792702 878921761 760518665 901262456 306840452 363189445 815579771 971044292 872906268 891769693 682969413 769668820 149314511 960573739 524942341 968264894 894540358 997311045 942653704 976700857 245059851 622035942 652745433 795277587 722969309 791608934 382753838 493191364 534009658 555349965 906541621 994011165 847863509 848531652 811979603 833250407 636474317 675787177 990573665 990733975 925359488 990461922 559102651 938509029 336348237 599067914 454257840 656079873 721843272 791883713 290905911 713310805 181437146 656181930 170497220 800908765 362894282 983979029 692798405 793843388 482040264 775797959 791150321 908198273 9813079 617960946 77833072 471455398 478245615 755786525 286501797 728192839 751808382 796957579 944422650 991516187 427880815 867418154 801340819 809859469 366226874 909188203 157948193 269439763 306003018 821313730 827737712 914470491 499377102 662080145 616261856 652597147 56741152 555093581 851262221 929462152 564959697 783863011 485828883 684879206 857131292 875569832 442638561 816035312 248535688 384636976 781955272 793081088 854966146 871500134 491184937 794029135 85275177 948561093 854479382 937777458 499536697 847542372 215902852 624376406 964898276 977227769 740299232 991678126 73189150 947102578 966670211 974753365 373760393 476877040 811855010 823750606 193844193 612892040 33446526 775656703 178765545 446249784 474877897 595559310 815265147 908024650 295349717 570617751 239242035 819439612 396286479 647770188 824135830 890799447 15327335 893897942 553849422 698643981 754512165 822594757 511321829 784941899 280308855 853110750 795174110 885947171 633440813 640386504 248012348 666079103 981781541 989690175 907123346 921197999 81780726 898647667 71031542 477340555 732011856 805925996 900383522 940106480 634319200 656223325 76202475 831665472 119403496 214128067 860222442 996161068 16352947 901042597 437084721 733458049 75926321 463350332 549270709 555634677 612696823 780868017 326560016 996789016 781344511 938014139 440022221 956580007 777640095 796498293 564094197 875253576 802838387 993620908 639336223 672431017 974903021 984263944 938319923 994389888 63452694 492892015 924008072 933604172 753705429 836427433 630032288 752559174 534662308 946871724 772887132 991492858 502757332 855272918 493783838 559922675 473745960 993719246 542419484 867076655 654144274 759713792 95567348 566118880 742194234 906170331 266281504 622705415 360892846 550080537 413778276 489736812 859410448 878944573 699777777 805691525 433726288 470639637 71185849 647343243 702583986 794267654 391338292 454486638 342814742 871348766 499629207 858908537 504469764 695967415 652540118 898434533 33207281 120561599 103456225 547387253 855611739 856320288 149554805 746781666 703088853 990343418 939404689 967954133 298725190 997034652 707991616 884595903 199377274 376329626 729268174 785103666 562119260 970817493 434592281 501663123 616321176 766545879 592414954 868557694 183497932 575483543 403919011 730465636 252538308 943973854 820793998 931052391 214615509 873454777 465858184 954710822 378317114 414326160 780896941 798061870 186568806 555935990 731084316 982654398 181086375 608054662 473978503 787610394 684965920 958234619 236884506 910918620 68598047 223960551 414016858 837255173 972881322 981746280 63716974 652183396 90314948 992863269 862500089 957479407 16669430 760734732 349947940 581145996 447035642 787059966 850205907 965673291 237826104 543601351 116182354 547960240 176682983 223036338 212892763 221479868 231590392 357715516 999461798 999702470 923130410 930343406 599803340 933057017 171803524 582137720 198136968 330266151 731306067 793149352 55007272 894599388 179100939 439057012 236636075 723672891 368639572 768907924 733507705 863625196 496114959 534755689 124303754 985709291 32411638 121616743 491882144 658093910 793882859 900287235 981221187 987866546 241791091 735666274 636457293 945150683 619240208 712363828 18387601 240049099 456003872 992263234 281721802 930075775 574630773 725787193 403418942 801827998 778179657 971444826 318970528 660308200 6891039 539589176 744186895 808094212 882354609 911009573 575876594 680780092 55104791 457246938 882082351 901497212 954330873 965475623 689046984 983836775 544799918 918756286 942721159 948685331 684890693 996367263 294612330 481382296 107271828 785624366 653704353 780557189 498010909 875967150 746103064 987904156 831091871 855759890 335154018 738228442 542098426 563503682 647761404 776871029 864528370 888936668 816242941 860424108 799937455 955102055 56209871 104736731 454440843 856950693 814719505 863572159 255098221 424361032 321893348 526293813 361391261 460167609 46561601 488750253 545021310 633405170 342625743 724255700 262597784 464825770 647747574 822879434 478543866 969833872 821107641 945451287 872601259 927996801 80112790 329926507 286537775 651883342 514959382 550028459 661127233 905956768 440246836 774718821 50739482 804881419 796390867 976543766 517173925 701253951 326689849 647157565 955994610 993252653 843665048 846983682 236579332 960139868 577751011 585051927 431022944 858240065 576235626 789718790 362609124 877297770 346409559 436985719 511911698 710468984 478452700 504353209 414022434 777290522 373995684 680630136 925827414 978881613 563854494 869979839 263189448 484512453 300593614 725757745 416216224 981734659 400314201 990223327 230548431 292856996 2250638 926891846 956702216 965536440 35158787 922396938 609138712 903557757 287530378 649273775 281144653 924524196 249140984 276178440 167370772 470982719 824422484 940328786 821265370 878595017 247053589 635489096 277066654 903286070 182617229 747357925 123905159 681811866 530863924 546554439 553150550 838381640 574677163 923798543 372431402 760790726 499247635 902670381 497810740 844008601 546958989 693379260 186072122 333250413 473719630 910717728 336714549 993702148 247723160 981278033 298399092 540977102 940288187 968289836 988772028 991428873 288129377 748841806 376305175 788850673 882669779 983026069 423908804 646789472 491282509 736667508 283238124 444817516 114831359 382249821 667410683 691165111 748226 423873029 24391486 886062032 607289644 875963600 142591219 635472685 211575403 403977038 656562345 991801115 444627112 963547792 897288368 973839957 399206449 403131355 464777560 621835181 594423103 809361718 77744156 539485425 768818158 948738502 706207829 739227262 695345565 936144307 742947259 755709591 553235597 868115718 380889590 751058950 965662591 999735328 664664684 841669736 952745182 965638418 865482215 926371740 667235293 856049724 678109199 871110480 953569722 985988772 881776739 983349457 376968136 389905098 320193544 523115817 543256597 809490915 934691303 946537358 528289363 761322329 30774628 140147455 827621787 846051797 722026353 757104709 247150878 815026900 738072809 967239726 838969002 994262775 519618710 973191502 432962794 699692014 625485207 877788988 818672919 897195588 791191245 987839356 978093064 981518357 423033326 814700886 287161872 819176053 804137649 968266208 302875389 674818009 33878383 516758790 742717350 861994700 309210066 633398636 619567307 645672086 10179353 438871641 195592341 748409409 466916566 870457699 358469525 653200610 487026833 712062495 16839240 749770478 270660801 940307573 60522796 815124620 590544918 666497115 89964783 760330316 219489154 448289227 248190038 390684343 909941332 978420899 782900069 921895009 645537352 863983187 186780965 225680965 994004073 998311836 216947832 221591604 863361207 971548518 385764605 824760325 114010618 704084519 26779757 337946225 558370915 811524056 293800729 360680723 139904838 601652540 401379747 731901757 666319930 958726731 93332591 193254855 648440484 761939943 364371029 787316582 976865841 994790513 663335525 989305411 420241596 742939235 605705024 760960644 408332007 525209364 801933033 845508870 556961496 909974891 221165165 410460119 430921194 785166888 116034286 938017092 285630216 656539177 528138662 833650238 851879803 971081384 332856535 388897757 910802419 955284943 220946621 411066690 190836888 734550138 447892895 782171753 92942778 969158354 144386401 170825844 354538613 619920205 405992310 553668413 66108994 453536966 711343012 937586437 976187968 994209377 179893270 218664012 486872524 707869030 256014022 304756644 697682116 800125689 544415158 968218020 954737409 983043878 766878155 983226068 523145038 631507484 308889092 453973179 217817748 396331872 510570725 745993474 601402792 884994745 7016130 360937277 688677607 866312703 202021257 943092315 811745020 959170540 697448600 940398017 519969004 977791872 64273724 408625299 443152349 751239650 75315108 566300118 668368663 858288853 159264239 323943970 511761022 673234389 40322094 753725076 804924400 969103671 461443438 763408497 181990443 412856493 496087291 814220585 759226121 891661494 447856379 850423847 317988816 377095287 547310820 927040753 742947732 975088630 259066039 599923130 963729982 988572866 409994244 736611296 307699673 593027579 497530434 581323102 375302789 662538842 852787154 924814359 386542509 853018754 572381056 794757976 815315136 835174527 414866140 474770363 514592230 602309887 888724032 996475128 390831726 865944951 551011653 772908703 985116072 993726440 789400970 933280470 837989814 869054428 250146736 934503683 356675924 971442804 742791623 981956485 418166149 737417926 862941693 966809506 26349813 608707439 595130194 865111233 646597482 838515318 79163396 258577161 511119564 694073693 306859802 851374993 819115340 904034887 716466273 841939749 632618973 667745131 290521063 798953296 236544156 454897049 621027986 857500150 858330960 863425864 584130909 700691681 368996917 391253302 515277941 587006754 281021819 748344628 350537988 507773966 514498443 790073958 264487258 576912186 219827082 466621960 719661686 920349502 413477530 936454805 767291596 873118785 545544883 905374686 836826239 867774940 284776978 489254978 620200719 664355702 634099015 859605665 753812934 955067330 434165089 942150286 768216224 982834202 828610462 941745809 687069538 741805110 265455893 490761428 665295123 735714402 127180800 341567879 778101591 786822597 629352524 719849981 310366551 634982933 747262455 935926383 729078090 966571853 362644925 730687899 291776488 586662498 350122104 908008961 388505874 768391975 89696095 282857466 515775978 615503818 918132750 989744079 620500360 931338528 121529829 820835270 357130170 841614955 597054601 961344513 666610007 927675330 690088276 733935839 254044040 622372429 120938598 740606549 184087943 936781497 692180404 807266949 738837272 893118260 318866590 441856167 222245194 528054002 416739659 692102832 788465048 820629839 228664016 756196867 628324963 767626603 493418500 818299277 181548723 868277010 84631779 231300297 120940905 996634402 864191286 961063334 572562222 627789193 267937178 622642331 628654426 636961173 248636222 255325666 436644557 656656274 639536033 664025451 319176622 428798070 358294667 546124217 147274063 587998696 588859952 936302092 310187356 772057795 23683996 847811395 464331030 689512800 214241332 819501630 859030440 999640921 120505164 886886401 325209137 672792175 462055040 551194066 682222696 726336984 876644681 906886456 147999903 359385070 621078487 936034291 938727062 999443465 703533082 988580769 822211056 846725287 382742468 793372113 807904191 872641710 807590991 929544102 422886679 874039121 668237807 676248650 388564606 837690700 163596964 473888223 188548057 839573971 496527636 690092692 792192729 876794281 358411757 663832220 647046272 989654918 736850609 769455505 35607720 847462725 952834896 958582456 584655814 603774948 585043716 881709181 901660560 984882665 585547215 703176886 304896049 375572225 495229506 571938547 50031267 580893489 413930221 807621284 174787131 618681775 911540719 958433814 323849993 796003430 419626122 654303689 119679795 524869481 909856635 982760161 718483542 911176046 991238244 998429869 785043448 902944372 860124757 960438134 553906411 966012689 147362241 525693524 930617521 989228524 558188154 819956779 474310556 655215474 857885292 881723788 584506528 854999482 351958477 515605611 985495513 991717547 930465536 934866158 223774085 906724260 366572583 760540008 365874516 491006913 268729314 933888935 244270374 289024731 564004962 612428717 588887993 896161513 908916465 933135083 405393315 972096990 422671298 974211008 944757462 998428237 891067365 958531398 564667323 665568818 561512374 654787597 530675968 752303569 300036166 765786278 34953370 83618344 334669124 871623633 325895825 573147009 575953740 650835866 724337186 945681303 193963868 463885442 891713586 957602291 186092951 207761300 783026627 927340597 208238879 526252887 623030695 781716008 146342585 328275742 627780991 729109160 515265416 851404247 539819673 839678534 499548082 721292332 958194226 959138821 566441840 861728310 294438178 970286933 153701449 215113275 932837468 945919083 257393122 664784198 167389247 734263444 677059651 725545062 883116006 908321681 451710126 754793721 982747889 997309481 297426373 801073692 49053385 95067103 359931025 751622389 350548324 817916256 622796387 871057007 442685181 538097977 141094882 785148723 885606982 973204389 517883735 851745038 481770210 743560165 772843698 903272713 938782740 997499219 52840854 348122872 39271699 953875814 432448939 523456217 542186604 814888038 134291165 987675456 495299102 770876871 520501082 626873685 50747032 907425763 55174792 442249507 902383182 982550828 757680659 817187495 114685193 538958243 424187675 621765924 331260986 750683174 183692698 834265863 946202227 956392081 222512260 259128340 180444057 215886388 644128594 794494099 201057196 351235913 186648153 499898002 73383980 993793607 629295598 846384559 162134359 652062193 739747590 749773765 782811350 959215251 152892846 443783043 676642274 748861182 987368537 992703687 283775048 497651197 175151473 988787237 815515429 944776410 545411543 888455554 151852509 672135949 326924760 990303458 14488075 604774636 429105947 482910613 368165132 560659575 141508801 541536833 711740839 719557570 698822587 890635137 412323149 670941770 200837070 657954568 55925816 384490664 245746331 682692581 394303269 740228051 14982157 567196215 422343612 963784326 696351608 971693938 337974470 384921766 464813383 585588545 653862378 820101360 473190877 745710170 986816936 992884805 705607771 939337570 84566849 843471317 5773558 727514098 451955135 506626419 179200514 970341839 856665614 983243111 517532933 661208212 396815131 439246134 605879367 892827353 517009654 684786686 122465823 930426757 32916244 921372380 462143648 881233146 228937759 552117970 35742922 742764877 593458159 697528089 873966153 981513556 516564666 696785972 166155395 350707357 478064662 904818933 10058795 967462311 321995504 994354722 197074964 399285335 714935888 795795337 13612879 796523421 287861552 748425924 900899955 995155601 647013293 874133122 953796282 971570609 296334597 314094486 807111363 992637782 988187433 990970274 604966296 804496686 234066315 890426794 585160943 769281108 594263246 853514372 1683744 526495429 83842930 157769618 636375816 817461990 460677873 539896300 609697071 732934738 507801459 650695281 530875085 675246406 26331933 822223010 506987331 645744878 490872319 619137770 241275852 451293880 869124172 953552413 866893128 930810462 937777086 981252247 190565959 855033875 231559637 741756025 173578864 547163669 915543996 955840528 143431607 809012020 299076676 609822839 302980816 685707259 637439860 737704809 708277919 892947825 313541497 643560200 346513670 751393755 315489538 930526046 14988595 463830544 246417488 987043525 586427029 983563262 238465081 843641711 297093156 324282140 577526097 923853407 715993147 962452906 250237622 991810281 789760768 991498405 725329561 891983283 97332497 214014214 125959894 421239560 808155737 889508430 379266954 744740704 77652053 387622477 258231514 582010546 822073521 890853228 276307433 503782046 167049622 822472274 667461187 941433271 696765278 889389507 290147844 370678078 8316628 517624562 892617207 971040737 772119287 789168166 645691534 791531914 722889549 746231853 250434125 392756848 765642534 932855510 931316798 999423716 200916928 574731687 455124656 538687339 180525204 819634044 518652405 845250160 689209170 963646074 808351205 879628235 199060203 678048198 512208245 681595201 516087277 673956419 992616799 999465121 87490611 237206239 864291812 995946442 677116906 899190459 221466432 944748706 991584462 993339951 629606275 764576051 497861663 853838048 399175266 578790491 880561763 915553234 957007507 984345180 734689129 797837676 682745818 810658795 249305354 679113555 867081402 873250306 763821040 804003869 277248901 448702901 372815459 819635202 509983730 630079815 754936408 905803754 951164578 963145783 712343549 779825103 898562054 961912287 85370715 543782189 524088597 531473384 108016832 914765364 22536155 391579240 734875408 865101428 377788148 934662779 660769439 749780034 439945692 665301604 203545516 708123794 774875510 922777330 540491179 654304729 937074180 973013195 461994160 866251417 920054070 948480301 975170091 993068701 532179152 791109160 129942577 935759166 718187276 913641983 639846355 650685029 983711092 991639938 389106058 994530276 367954582 840755153 751801349 844919195 97081402 579889358 440051010 935075980 926402691 996125973 620552054 938201821 384748898 820884224 820514646 917715717 317698393 728842160 409900446 752034024 567434969 782450809 739144317 986170612 307281073 529984421 120266920 733652040 452555011 928600779 275883149 826759694 496527623 782987367 74658039 805030892 613949217 917147299 539436492 647926831 522864670 773251618 572777245 863505913 688580401 763941311 203431623 463117188 545391637 775059878 744995147 964218008 725622069 998689394 43549989 452630305 974507195 984282661 23165539 491459958 168685628 550858742 772447992 957742029 924419433 978256414 291069321 547115527 226102289 650952230 452661540 840294138 973404554 986501208 899287932 902318271 605862548 955786163 316915738 564598454 793893020 927516533 353116117 521165115 100209876 631682523 308087565 706790621 222431388 864570474 375055873 702323477 684480680 717709070 906272808 951311434 676369534 870006088 574114603 903002625 595541362 709713932 406737300 968394662 467332069 937813263 891351871 920791042 517779489 809751414 544534201 603799270 305264920 594062172 121004891 123044046 76562363 783192338 490695650 823786375 162862540 601257122 613264171 637282662 100515483 769890874 629573696 814941095 497983533 980651565 991297852 993155657 998507311 999846296 250303121 527240244 709539456 969601812 916567815 988113214 531390924 535333640 807662965 955729492 300669009 490457623 898496604 959537745 138689448 337544815 482977746 754921855 146396795 411229339 709099146 773981615 289615688 710684565 175075379 642723255 581565418 583270231 144053072 360363071 668503965 714116918 115029102 643822328 92989751 490764674 113053281 736293005 256440607 358147387 360622400 918613141 469886425 585048671 525898335 880222648 489420347 868678321 490551824 981201881 205033603 836487665 466440518 687225101 763834488 866627515 117466625 962063116 224038906 793992393 821932063 887348779 584169653 718826345 483127181 714994749 475519696 687687216 904998650 908263297 965351298 988157772 974449951 977386611 534769882 937221577 72531572 410913251 910549012 997994011 603396669 653419927 543767638 972453020 756729777 973800027 526822439 533797729 42247907 419670550 711603170 929244994 975999614 981536325 515802288 916520620 587589107 799702003 438708326 823125567 369676649 720017957 764340049 878228170 294386020 719590998 741342171 821260424 930615319 967204032 683790782 985519012 978574647 979665434 326811505 895106964 529666176 578109124 815499951 904048918 839221565 946521173 352957806 588668673 629733513 899145177 908045734 932726431 622718387 765083386 634195451 949181532 339375813 683390959 950681348 968378297 929014941 959764114 140944419 241028577 782878086 792684633 243928062 958587856 432014547 792280872 675877125 990806133 78126880 306232481 67260601 97580793 717693642 798434810 356810987 582114184 442547880 953628097 96401256 834329511 668529427 983570543 103985372 978595562 743047291 890399697 809746501 856682135 487296200 811211012 108717618 676575041 580480261 901844858 860957512 938837983 595000653 853670020 910149749 954021100 697591612 948961728 755070959 826688424 846779677 942477544 40722395 400811850 821057449 864076540 611720242 957249288 681348189 929955864 65643168 825368605 153432520 545924982 26432881 969329605 569294488 919019012 685903584 807050420 89660666 285245629 343950200 537342607 89056867 823470833 348644803 947424725 661402474 763336676 687982225 720759518 488752077 494845527 556220731 585354138 996055935 996098188 664961959 953375531 688024740 720951471 720738792 933718629 83657711 559870704 867521202 875898593 908970276 948650252 2479433 551841385 198042550 330272098 687196188 718573400 638121862 762561046 543818432 691326786 866404429 997084434 549726459 591329756 194803989 807687956 620180563 742942294 495358128 601324877 65716070 119740332 862274068 936299477 732298722 767307593 995416760 998730654 729818037 844773871 153541913 332119197 878299574 953503888 894856704 914227877 446016576 496129749 639857894 926762994 923884210 968549590 944965058 961337608 182397780 855027958 744134508 912747163 412399645 880736339 36330438 775255381 382701380 715578490 471668368 637067548 829165591 892653829 746020177 916672960 258538502 336935011 972222783 986075917 746050836 798942241 436934115 862174546 457247699 468756976 929523789 934587901 606246168 969255480 107411998 128645613 485437837 899204834 596780808 636593766 516718010 694356571 862748477 931592076 523292851 576406702 593046576 835797638 601506186 921533102 189531842 279416173 336943160 589360426 21398639 738294838 977723773 989881329 240828388 730512688 177714083 557094661 70129202 923906243 409668755 716529059 918611257 976683799 151714913 823502884 472746027 892682219 821414459 837790632 531441405 668396190 892160701 990461773 606367857 864998194 618854016 753978338 968505988 973211940 853995344 994093886 766927056 839733087 836447852 954307201 304543425 723589668 291885344 583733821 559088525 881558923 232512632 668535727 588766873 968044950 700465087 854182594 234766155 338137270 844115231 915609117 655715607 676097123 714060963 940965404 40681359 726220751 895021923 962359576 333365808 548310327 61486753 781780018 421050609 526272595 925782694 967395704 31745012 129836992 81828830 262827368 456067515 710688146 776376395 978872062 346399828 646844872 294135677 679832810 269512624 862087605 316999690 886000960 434054382 645232415 14087608 304562344 982848528 986611551 162748645 779216713 39392607 75283887 614572836 830896649 971670591 987205333 277965476 872351905 238186394 744882450 531352908 619104676 202742179 440723571 21375165 44883328 879737476 927459946 64004910 325847230 224737740 901068943 193794834 867559856 170964462 439978307 777539164 960910601 162706139 253584636 473066226 804445566 751552459 814227701 240199742 301719679 581858068 819227433 340336663 846793036 815439615 915915134 704867909 994937850 335962932 573142471 322842406 537404974 158940474 787774456 559085615 943864370 245598935 554755200 492864346 783646984 848987235 903025707 433698623 531477855 425152201 953461827 264707354 798025935 626600681 678007588 602942065 865995435 863125596 868405467 182125454 491297570 809115761 816869705 825983262 907988542 621284093 913677211 897677884 960271902 616835933 959347508 874060450 878509885 64147682 317172985 468559078 531492969 438950410 958235948 52707584 596551697 441719414 881898515 858032509 944931745 234368373 810411928 829665597 899491570 29956260 638729362 510441061 886963425 406051008 514548960 27321792 881134908 467309072 543718837 863071942 929000315 96822574 481552525 123276040 883763661 507078048 849270255 188279835 974613295 333174343 949560222 681186839 995299938 242008184 504552879 164179385 950402117 469085951 877515610 47219908 383128269 990432494 998752364 167560070 238931119 520648017 801398575 934209917 952371827 510011598 571377955 162341088 969646243 860161607 971513875 461142080 791646686 211619854 426662347 80223073 143835383 852312985 885646563 743597665 862037551 16978871 485325521 540785350 688023676 767298295 832492087 318213282 880198422 315810662 360231193 91110587 517054265 526675718 923599067 593341255 882004827 951370826 992030338 385013146 621625949 57496279 592422566 515366116 716211867 858713531 953733619 851725377 980001864 522514574 749449117 225668469 935925605 713988946 978324375 807121273 998803173 492047233 513947239 893541783 998502634 626153349 851577679 90703034 281274552 646654811 867866045 732467563 869252108 620659055 769288106 361118762 966584334 596226917 649886882 799150744 911283580 255968036 688041311 785314428 850008139 839041333 923240550 812966734 844942107 363298374 912955269 428309455 482403767 6129897 440015354 456246332 829124798 681193317 988486953 937042011 990163079 259989151 683430125 19574586 158674638 683554003 897519059 869623488 933239079 471172997 548649075 31735459 690769800 847310156 852934408 967553081 992918470 984299873 998881132 813695805 992517160 177884681 336296840 953560464 970799911 990282824 995182829 71305411 428550600 450319844 455192149 573726236 723598081 148737813 826973023 669594807 866351471 613415114 621733826 16092893 312224538 520933637 719774196 151775878 210938470 534101182 649760165 772819340 830082793 553805229 820144290 835147834 990177929 551035846 929534846 364954169 471766823 296322257 908398676 330780799 590033391 383057779 584666615 734840566 808150111 887786690 930031933 96264440 578770674 387494916 421547247 802036316 897585632 290238492 886091830 890849858 901298239 219266599 653399326 360810096 892742032 1450089 831157173 572403493 801086280 864501519 943779323 647625223 962147517 690724928 978049440 17028189 346787475 661841999 780505907 964236011 966176969 77408753 77962015 507443871 893021392 43132645 789388879 450018660 775330307 46219313 590447164 402664801 777482324 687175666 976222133 880193129 939220527 546460628 823704630 871462707 949106469 593909523 672769918 514614158 576925635 513975661 526990499 482379108 820219815 373013800 491359839 211454574 796731531 768887080 836853279 200575231 278158681 979494310 995034765 451305750 880915934 902997918 908173703 400631744 785585901 337958723 362886201 859320394 910505360 789338145 802578441 939466761 942820367 808059542 812730553 287871668 838791499 739947458 872157865 874447577 955623817 4522083 673308648 858363707 979764645 579688818 590779629 297748712 727127920 86309801 675629851 784328126 825271632 335853879 428321598 312652724 961172718 704091824 781242107 443685465 930636854 790379794 896440961 135656745 459868814 875645212 901241844 919545160 940310787 824599468 882385187 942718730 962963939 47722346 637929708 440813311 532346170 593305384 869725588 727489599 920684857 508401065 844895868 529223522 959436604 389071208 803772076 418794503 584662493 384944077 646236079 790861746 817974279 213021983 879345101 539189021 756735527 243955280 363279909 692743316 988251636 430168856 624645810 566070912 686837109 681738227 766085604 198550686 252074178 267879128 932670641 325940103 585706989 173219983 592927441 196781725 347268895 695814617 917858563 404329725 429641436 191534261 475218092 325019687 487460372 10949987 526849063 735498016 997878388 471356126 729544825 599437427 637893570 940809963 970175994 368810550 825321661 913973216 960106224 426644378 991917910 597106459 918250685 297007173 396421974 225692305 961124352 871133203 912815750 612915037 943145421 397017390 583194936 634194161 732983301 992299000 992504789 6851202 641274764 505653651 875360581 714868906 805732819 323098793 409792366 321672015 884333051 233863971 767990867 626822241 743082707 825679613 844135716 41324448 365158200 726387379 940085953 293821337 479242338 19803680 161082429 448873139 730174139 757729868 924392864 515587863 788041927 286267856 453663626 383670830 405785236 807729608 907328227 751845249 814314564 790527048 883247792 970771767 998709328 488876772 515364467 292745019 823026787 731904049 814748291 549430432 678700093 943967121 985816114 463559752 615224765 937017386 974057206 203999003 762051909 581334603 814043021 966680563 987151777 516268792 906697671 633586897 752124795 661415457 929776526 372954940 815488623 480896106 831057314 577829263 630250385 101673796 795055798 986538156 993149448 413570583 817638053 140387977 946409340 54169965 736813224 88509909 987892343 375316441 970503536 575612545 596644377 634414896 745876464 30210593 899071081 722872795 830237428 437571690 638648575 842827636 881896555 954468335 980217858 742054884 912280780 404907795 741575405 298266983 528753554 894776951 983645047 126861890 500622592 604456332 909114339 626089789 651677860 333027397 511704107 762253863 997738152 3891766 340079430 704912112 888660769 972601373 990831960 185557574 620210627 551266953 825943848 698257394 824154863 991839427 994582279 182424052 567905907 280633845 998024544 82590064 414327475 679408150 820660588 229624660 951671577 630087757 632383709 109652099 692678433 537258196 629319440 276536789 708704116 553951209 998042409 490014528 794931677 295484572 644884228 629093599 912719574 35265202 390307375 166702410 846124258 617212798 903166055 379145567 824324669 935372982 982989592 285479382 394962259 189618921 284843710 510304840 780717379 690016459 736572578 365574193 408602688 62729390 951608088 773256983 917839999 805677043 872291670 906089806 962046536 425137331 509918024 496048581 551454855 617463221 836217400 88072587 531074766 333626289 766087434 861091985 862917333 300495591 780031226 994779099 997741326 496144226 664633205 85037041 305974255 721669782 952743115 953592131 998069463 72176745 675969701 139634119 496065676 154020811 209110751 73525078 433659847 980719466 986678532 359020557 523309816 957952607 978962954 510302720 569356188 713769539 963073176 719910756 757423737 338751093 442443447 791250747 826756736 678897721 700939809 569581495 663790982 130811643 935098560 575057756 625543804 898889974 928076929 385859420 783122062 300220282 614981932 330076987 870440773 721854102 901472059 480094946 970557001 477193354 896109762 636306855 676125533 549842096 794077329 588541159 650940243 279520239 811328882 190048585 581449766 382848745 751752509 526230586 975792197 948205308 986632954 125275680 644397707 603768447 939672252 979872034 999818954 277157208 361573967 953724944 994819716 614134 927135455 437464590 556875882 565366524 911061319 579693751 622963776 981274401 982822698 876177458 909499019 813089224 910375617 80834963 101201627 937236461 949927270 255129405 722320628 823458208 844435117 735064257 864800852 647422503 822735373 566201480 904671902 353059611 609526659 698388272 759132289 22708270 440745828 638936510 845643631 730603776 852501431 573390165 621767790 991782366 994399378 582292424 765595796 48327580 820364618 787868982 910058904 398953751 747131042 244524884 280918215 901642173 917782227 531020795 819684782 4643777 175356521 971710589 998902310 845047259 903672870 592441529 859866545 749685 727833385 153902241 946499062 749668400 858592283 559196642 846312076 555670884 573379178 626161907 787412012 266058408 296289334 277841863 337749358 429073374 955343873 444236593 683299248 364190942 557635174 183309982 969780478 792315404 914775791 267404964 799699854 559963038 663636273 901398124 926327805 432991394 465116270 46413449 783274431 890669398 891506632 857490836 930648377 363852930 586227713 168092336 814652874 378490441 785686223 487376222 674362531 898913875 963124721 697982236 756183336 473828545 634869250 308336616 439393028 488932981 578992403 178336756 207820197 558183136 608202972 731403649 986668981 40254651 130677685 280748040 487731350 336521340 366078350 479893975 950537289 807445163 992433795 127973004 759770742 283382332 942015421 489493131 558539257 882213427 915828949 433052409 562642456 544679861 969752638 18946013 723453483 429042488 794672197 559476914 931144290 31089714 625592490 85396953 133387348 703388716 897664651 428554347 683369493 521434124 910949354 241873818 799846340 637901373 747074528 918273369 998907891 124494124 880554676 635710826 763191080 328243172 931570577 167016099 496047105 826118251 908028754 15278445 189184917 678037243 712348874 475958099 930361866 458060257 833727449 303946658 870111316 770897451 936539318 32289239 817271155 903605393 911256054 317948874 608180371 213237764 783283358 205686159 595084838 911803073 973565309 626680149 927568138 381798785 908453551 581479344 982164045 238933759 718965607 506519055 693208153 952619017 957527414 316940969 588479996 373445970 817800661 744522515 967227706 329509868 841438858 460832976 690814539 587397177 736791881 981239299 992144627 450791231 590011528 704242973 979903619 960582246 979000722 875060578 954987950 619303458 709781654 625687162 950566725 446750009 795735263 286163449 849794562 955624273 973148157 513314006 935326958 745786906 776998025 652289564 696955214 415605937 741161174 814019627 988635881 494732104 699920210 730453408 807754165 793791091 902034746 511446610 836880515 544399801 604426162 881007612 921731661 837551385 928176248 845360059 956730911 961745056 986641653 681547295 926811207 126948324 131722908 27566459 799778112 205186157 863513773 670561615 923722198 22202687 749232244 563987329 658698490 746319515 781722704 770559362 896659621 419213016 949575101 486024098 662094576 777223915 854065224 166498022 380574334 773245456 891508963 612271091 729424115 808126782 892926958 8362638 285954427 613622326 614801261 109465341 515922345 990326435 992291598 830730744 946376548 102057775 617133819 433680253 965415209 519356861 520999588 807062974 952056982 398169924 841307170 328233440 614308590 707956768 827898412 429660379 827886127 709938957 872931244 873071055 974898957 705344121 866489099 567668088 667515320 720058264 737471986 582530629 999280212 240338516 299230896 95975709 628053441 381232172 448362768 190702916 285056008 296609758 355611260 409432211 854432483 458027621 708542262 803881937 812552726 824317258 913957574 278445590 646449526 872673440 978358728 975889539 980106338 399073533 578548340 825994877 870549434 426967907 737763541 639556355 967802645 919758310 981543369 921141489 928923942 78971689 933603496 269763728 739158974 421243338 881724401 913375089 983976340 33310472 647753888 957539300 996677483 391727941 920504183 242682511 913583387 311193746 552708100 345763124 808185726 493290598 744813585 137014904 263904254 296671619 638442912 236354411 829317952 860824286 882592999 662999276 871264177 17202045 714174219 300491187 694678238 971042012 991302415 379769568 841818605 325286265 872281249 178443377 513859988 155348890 321811091 938005863 992525786 511050283 823980331 715346790 758461908 761777572 827458459 207821543 545824687 232424603 916003229 877741997 934685614 987858608 992356644 219648640 551212579 981311949 996325317 30781265 630080659 554477322 857804836 943177175 945933924 732093216 808852224 923463871 960258948 103299880 970708302 995169726 996753940 901461588 953571725 218834878 540234131 404690736 876571366 540019358 588230699 344326013 483546667 806153076 954571760 362804988 946337619 390709906 763621221 34433261 373027693 458687921 654886785 208154258 338672998 921757879 963903368 900021982 982372685 800807439 883608288 698639034 794865390 92657939 808035480 415721082 931703140 305495673 417520059 698100647 827210552 779304395 788734209 584992579 909340256 469622443 737160327 91677602 359997135 485280900 766716599 319907077 511252904 970638235 975542200 280755119 975507479 376563416 878429468 139267336 263920792 21581384 44209477 205446618 997258725 171108800 748292400 789173010 895932746 619242921 980770667 241093024 433786090 974446210 993229652 146019739 634474768 283532950 941053983 833381082 943744076 885864151 967393252 733845252 751748700 898797338 904630549 290840655 627551639 908350742 968071695 211201597 777705331 193798403 895392993 737357859 850653524 583337081 889168098 352640182 407506870 870684883 965427674 605017898 653792775 71931644 488530772 599440578 880317731 579562771 950279273 385019084 661668421 63825852 559696357 151009527 600509216 106622840 679605931 788169359 871484324 16352023 116549593 421210052 572974946 406139530 636883869 430477108 788752075 23415895 489467983 174460836 536540703 246180910 820328987 538978587 909594185 189765967 246611156 847790538 988993015 807079540 929752596 671722481 721865978 691851454 892826911 356880375 723220145 91199481 162083088 900502618 956672197 455441277 670986343 641201994 942780740 860985565 915464474 933126347 999650931 386366785 905147496 965952513 974430734 756531480 916754397 375871307 876052836 124088628 913679155 86544962 712097240 174897416 485938167 681129249 979000278 794222282 992101351 922352038 976646220 723105439 800367251 690174904 705128809 246066495 513816710 46061262 792065865 365513886 785046841 36264972 90272010 532496902 907066696 894163245 905728434 221546198 415839662 680362723 682420929 682651964 732762417 368728958 774202918 876351096 889074536 744879434 909127368 398840328 655449616 560846635 576708829 784642384 961447799 652856801 881280254 415068785 762064362 983831305 992144965 150367539 326997714 285357050 913271043 256202789 716885238 723744787 853160911 484131845 702682462 854929877 966207425 550610415 773168197 690096757 769075388 422337269 449931953 761175145 769400103 976015707 992132856 959923949 962997951 895631279 982676872 801357267 861807398 963615512 993263785 351715670 967917884 146221137 849380068 102318588 719428636 19900821 840828996 936943123 978569049 129717878 281157413 994764003 995545276 207532280 405609725 964238878 967885086 278076392 658193758 622139248 642030757 213741129 939867015 422334970 851980291 672703201 802029719 426319766 634099497 773011737 873650923 765808626 842705735 642348374 744191571 994546237 998192655 179849548 875233221 687650252 743165519 76726835 782253600 242615669 831817759 628445936 851883600 857346389 975810729 973703059 996818103 480051309 539106479 285397978 463183548 750436744 798170514 227279802 878629911 100955663 493541394 279550759 625777740 696986580 896365808 974458089 975541001 53094101 540089395 134096810 718397950 304231141 981129127 252726207 819238115 345590532 512371416 668489145 884263719 823791907 997103719 363390025 636734971 898172070 920047042 303378033 748762715 559235270 927752826 37792904 588222135 985754180 990366652 814786863 965236624 774856462 981440749 2757422 114407826 427896335 853113109 483840237 850097055 495582876 621818536 478886759 969694670 340585251 434187068 566128190 905120832 735452098 798273812 243405131 469440833 813016077 837994065 931844874 955903251 297890493 482612421 125137193 719804739 156388144 802158537 217179252 671515324 940075183 943748363 478535421 777430424 353276755 401123036 200465746 350532458 845622525 877014945 724582082 868695057 185686199 969967975 869669664 872545349 850321493 870819557 592068651 986593440 186102465 422246457 21293968 893837574 559883787 965831716 457089736 831121285 769425410 993633174 854625343 951103568 90533242 230432134 603489758 615357283 626117030 884813097 643701487 840482637 389202408 396796567 68360073 904944362 175484886 322940561 174514727 371438620 77222732 844865816 806657407 848878350 584583988 691488873 125695619 949817675 275680123 581912303 192593723 623832809 891236192 916763748 213671150 816793071 126382426 919725383 5646568 766778233 329957764 806850319 308880569 513339806 618913685 791846164 661877857 993610482 106101361 858477289 367850388 394634442 776867684 974013850 301747831 328196442 599829221 885396001 706734299 780169129 388924417 642013690 688910598 803724913 263584042 643101005 544107356 586446965 506036465 514625748 267030395 852944661 146220178 330968820 283441924 627809515 387711935 489939249 337722068 700590974 767841507 927891712 656564188 686975812 529951930 658166344 97168217 822562328 49431173 257660195 836187992 908271996 580501387 819013095 289156464 897623144 458182972 665304492 42158142 415278664 221585857 883663552 652690324 834164527 472306379 799359578 497148745 870425170 784075430 926987705 459828996 851464620 258542846 586646622 987401701 992432361 642407057 845872739 639923092 929447577 850962925 934514214 1658456 692532708 355853653 411831121 356327118 974991079 209135615 436686781 131019403 631686076 751768141 847790513 59309059 575483006 307024619 529529812 504646812 673081028 342327502 548779194 445699681 858735773 945998842 965212986 768243122 941194650 447812173 946168119 836039589 917414264 432470778 449726932 541718004 608929946 404077147 472797212 451693934 790311543 666397132 727713440 361193441 959274497 637769948 744572358 352746635 689628505 596006348 930759153 65825023 631006305 175657512 699396256 641887442 790701768 74104151 191315758 514055463 971920727 456575688 709797814 205175754 452835789 961563041 968045768 949632182 987770954 29625846 477279429 160253402 631095697 263604089 748572969 833904719 953770229 880606613 926274497 549975156 599794599 137041635 471844091 555318424 943514501 746388754 872938850 473289493 553929289 626364100 722117054 558923187 962413368 363765599 633209007 333852529 972277881 947016510 977781418 104600997 241787739 94130364 921686681 839079099 954229900 53393061 348814013 235453971 891206495 603140146 881961497 946794248 952354875 278390647 493399100 427600516 862765087 24728479 358252954 982863774 985376280 176638004 547641429 943446229 985264054 852337176 890735259 569812293 819952251 793244996 959721080 191386147 415468436 716980360 986753034 769280948 807617527 342496134 562679404 834976500 983391652 398201615 419790920 410727337 816570188 440749716 889270693 93056289 863380700 708419480 863022929 160013431 553802014 547413799 813666451 261058732 872095109 924298916 942117784 192945866 760615485 217249635 310967378 406036130 968448373 965292470 984010562 748674812 895720595 594213673 602236687 905067784 955976806 135456426 822580018 571068764 699768327 597804961 816436611 819487864 947425990 166843828 816176171 679418400 795078448 304488541 776658716 999911788 999960875 307881647 650822066 390136595 839595089 679527435 821408590 863170175 910517550 786253911 912752544 440026659 631672350 786631967 980103629 610539113 853648700 741241083 905469039 525336904 721027152 453631675 771073007 482505531 819632795 612303789 713256315 145988133 166145468 994755671 999602813 499238100 770460444 434298663 657346233 925567441 941851069 542471652 986117087 334344279 371575655 395573009 428994882 376673103 691408179 748857687 855126015 890965010 924684093 797429618 848242495 375077884 846894660 716863628 724235796 518833331 734782626 453262814 519838508 18358614 547265610 549278098 792588613 421134067 642335793 416921608 854097797 738102117 739599187 998886166 999945493 431094944 481778996 935341200 978143453 376132480 525820033 724209477 911493970 133537648 598320856 767272607 950825687 547119234 774497838 846820365 885715092 508415122 987167185 541229195 588033984 672987014 793866796 173497370 490652116 684143989 958818236 556142435 709467284 419582937 679526166 737463442 756483609 496317327 870094500 290007969 893167521 801388749 804623055 612866939 613059530 113729186 148880533 797672876 876750958 598733324 743020807 512581014 887805047 365778063 415728730 804445602 953766700 498112484 851114879 791659580 854406399 140156652 532207708 409418475 492812610 334359022 402384625 747080000 934674102 884259575 968589666 77390077 622068387 36566710 467992234 438466452 653205280 814543018 966476937 11169175 892885528 99612957 768014363 443220456 518467909 631790378 976480565 250937337 767339701 224888622 433154241 742906063 865406434 572994606 893328211 802493220 957885232 701906776 967160333 534492808 538416307 493872011 818297761 862945722 983076609 190292498 415415342 193522203 680200005 216231556 807648448 117337772 881782260 19341073 429460998 647594370 928956513 958680606 970250762 468497765 661541301 161068980 881651828 304031717 760894360 976218309 982097693 909262368 974882634 718825314 753585178 115040474 983768546 815498764 941177927 2031350 297249359 810232866 854128560 998652487 999477898 868763452 896282379 324320867 657238063 686655477 917699203 947430893 982267967 605188620 820170787 53189728 972054798 877957579 878891841 535370193 943117502 914168484 966484799 542717263 906221653 756789164 850585878 933916273 939929731 605509361 729028321 474542631 743045546 473259607 718209204 150511695 908996331 754940380 879178083 22490963 540896524 23657842 722892670 303000347 847159247 260379293 802203213 744541491 974875648 286731785 373365101 259122068 908522374 272299841 975212408 236658996 833606550 916045450 991986596 445125531 688160631 623556170 697977563 611554013 792713278 678342574 969890564 683375508 770693274 311044577 875589182 82777853 274338932 401201610 425096031 67238402 269423258 373976522 627381309 852546276 887190870 179352438 940237839 826083288 949428831 260600622 456974546 435095269 445612357 7957661 644444190 159836828 618599793 247506088 959295430 496728597 560146091 803573663 908072549 219595922 641026371 81110536 670907356 523408312 585002597 299517468 473128999 542539565 821242571 578762541 724845040 319540574 375878486 281015947 601074064 307156623 885839774 670649625 983866339 901696459 954508344 15854693 876987680 927055106 948165707 299440109 359417457 194409186 628640626 398359490 621893423 715860296 969749694 955020727 960140034 420101816 820499367 80996201 924619019 909959510 979097339 370988762 931252263 982509458 997377138 742471434 938279772 33653584 59608211 854524103 995261673 286756730 295297041 442970821 802419904 806321280 891500263 816562783 975328278 377739006 622388637 411653153 973497183 614006213 772788384 473644474 508233853 725817890 748381383 193830647 428911153 920388710 998270292 851760937 887823369 705602076 793331036 552025596 937808569 102943241 852734099 145855408 274324765 855825894 998245300 580961981 951734420 717886052 978617428 644574338 797843680 757323756 773591353 395545882 724437854 448639167 932076813 851094647 930377879 134004351 901241147 161282667 594290697 807186525 860964252 671814472 873727303 181345395 287507858 432508611 728227144 918045821 991673140 669791521 687445715 147968377 307671557 392731393 465675086 830820913 972051911 335273616 843727712 872738146 922486681 462267813 810355758 704198791 946568336 44290664 954683017 739957718 940886220 155807069 591160477 927372323 999866717 323790420 596579467 339591881 741805542 600409734 805216460 604747374 611229205 833895715 975221602 591521713 607553799 143948549 484836132 486366110 651652412 957602692 961648437 826175523 964414825 310609699 435625238 890037401 892031111 303365904 996943879 225253923 570062067 411905860 615329358 509900118 926689753 26635430 137536184 240724714 475270907 87212025 114088856 475081819 509335101 800831447 963038894 857897139 954943222 277162839 949168057 801646069 981076788 150246580 322955899 659584744 768562734 371262822 754399097 579746433 636129175 188533787 403910433 435194684 990986239 564434931 868541104 143791831 959103329 470918900 898944061 48373728 765303264 786092915 891262380 115207518 463285778 440416409 769391088 499457918 598045745 862937507 973888420 125208602 922141835 734983314 998814317 870910708 918572065 494974772 710630660 473822737 864741862 608095347 862230455 690681868 755048703 837859159 859861259 734595086 892943083 760619746 989902260 950520247 970466263 801035152 989422782 510742791 910896257 9069134 498862665 631106389 675417901 105048388 712874377 299620081 747274881 14837806 528457272 995990334 996822686 815056599 911663893 58501270 744710427 367267660 818077016 754232051 879494703 822311599 985395642 617090700 914300699 367341227 619373858 829367937 979373051 746998179 959356729 217217553 481787085 278432088 754516596 449925184 913354445 652158096 964175663 341647445 997248175 807255674 930203606 802124548 952584779 574617136 712768854 681030905 985157921 249194796 482873390 141676282 541644345 399946760 509617845 662342647 671798389 234941041 928615599 444734080 571881405 36005665 503012746 793429584 939297157 911380535 924264666 363137773 987628001 791107786 999284338 150165931 770722199 732100531 883807430 665866813 720804969 19563660 980034034 579597148 740562902 258915663 684741626 673257980 705644663 783893349 968478283 669956574 908984750 636695030 828821443 887085749 888801367 355462502 405432024 761735604 973381946 862277196 877166925 199366932 203467171 222811303 472978375 983556353 989094273 733273453 861711429 329402524 449778002 874291633 992512688 437277231 994601251 602719449 780025196 430632929 628062814 718462662 924989782 446657218 694642248 897737778 919778772 323783541 557895618 232380547 452163733 227440713 564457416 190496835 275976483 270228752 538509613 274924597 990526676 353415453 962148529 995831417 999496023 64435178 480039693 256817878 610092565 180950840 232355683 708488329 848701795 537312429 978068932 376373439 593697533 477648962 842670323 490469875 928433201 721464216 769458333 98700345 526951741 702323728 933748967 452187527 579399979 91006991 254535434 723548899 867845199 290604 770037568 733908760 993519564 502607868 976427554 661445368 811918334 726953051 943243688 742724064 930259511 371694235 965380792 602498141 667742439 720421783 817719427 600473419 603726253 781579937 784112728 487181550 764453691 965599045 969583311 721783205 838746395 654036611 784172180 581659956 701096191 463061008 960374236 248199608 274940281 153339011 328563024 588098684 997338482 99609546 312292756 962536301 992694411 176775900 263605813 847451397 897050329 22171050 762147958 660407746 954815094 29940920 951600885 709325745 940666569 856249622 951402776 986944111 994653184 996507405 998598156 362490944 752275117 980337131 992806922 484855846 508021982 844384145 850614503 325308060 545519061 920344841 966121734 647679833 671850757 345173495 745709897 362671033 814055479 372642610 428936897 624383746 962312419 351877109 752117540 266514959 563776591 294582110 383394500 965856418 985393445 393189597 994337949 992616726 999516900 654815724 798469862 674746873 900604352 627837740 814647326 285435264 320357947 196343606 968111524 226104029 628965556 42819822 849482702 441511130 540682812 77342228 722019721 693905608 754496180 272871168 562097483 334326077 954793737 620024350 696218505 489551255 865426660 254747917 275351949 569662714 894509822 751943240 845168387 536096520 681049407 740004053 921304840 345193501 634106660 855726890 899117855 89338336 125090557 808674417 939027412 866864620 942268053 755956178 838089843 540819756 707452481 747110574 931674723 719450586 771752550 823101964 920685362 846428965 957015024 15306705 791445997 976873998 994898883 773088781 862545159 481264871 531799500 605439361 821260229 125206242 587342179 19951168 983811059 641480529 967874738 85287254 500913921 334320501 407614313 88682210 646565868 599923682 875174536 195704998 672400771 155574248 251862005 463997222 596409166 53752387 923118045 700668941 946290677 898651460 937817752 249359049 371629668 796302192 966528488 618455191 805473926 301635006 757717268 637054346 667297190 502326762 574044193 747515633 976268074 782841240 932140909 799701434 939980718 978525275 987806628 647225044 748714478 96207815 620893900 878747656 984684397 231040890 987248889 4190641 741417616 15049559 979012387 918568687 944700865 825332630 833954204 946982483 954975546 351361696 810998693 663199605 788579065 404787841 899471173 491749551 595680475 908820121 942945117 286817441 869693932 466813745 508083827 9759650 284506111 829035642 911354131 524112596 984546417 770851651 931705364 257472030 478782369 459155017 676967955 188595400 996622414 748394237 883346932 774649361 847531179 92703750 125969122 56995186 475131345 93076754 146880901 314564114 391772985 510593870 646026000 578038653 972172267 333259664 374321440 290900967 878192825 361569544 879256756 526813637 645772931 37670240 277636756 900536890 923534334 378427497 562156633 681120301 754333072 105888624 259926642 604917041 617622802 558993509 686423375 751671954 918408986 830618117 945567967 904838970 939598951 948566662 982820235 163695464 443763639 186429748 364021292 878475734 915482265 158614426 540780020 143559085 320848901 756752673 817929137 7942929 691022640 501376037 679181887 429473914 768435205 154521467 361998738 171086612 686975102 403501930 613413728 252397092 963703048 102594753 525266347 643782219 754339306 470634 160776160 571931835 704860828 538996162 918023867 25248584 894353922 236852787 765843891 538915185 642133620 39319766 700326337 316831759 345333149 711128711 874943387 930959726 938602342 258504494 927149277 354061540 887214854 808374190 816800990 195952916 814632166 528390009 929385647 61307325 167200644 46861641 532917931 386849399 593405531 155784913 956072753 787941219 882793727 724049986 851072796 516461137 932744837 501693316 819894202 855354477 959196127 545016705 722851600 114669668 904195200 158361739 177855779 847089163 986258194 32069650 462311839 767143038 853880975 993994615 997763819 220634763 704651668 302182823 979943093 432759171 933087345 904257028 927770221 569100602 707396692 837883849 891102288 976620933 978624268 691692908 875342038 720298617 805804305 285266435 454094797 840212312 939170974 804532982 926613577 877788913 942520893 503020458 861304779 254151005 832642260 364237048 428750669 990280447 997245485 605607424 711224597 915213708 986809181 550664526 994425086 849367078 896802219 396073175 774707005 335446597 637284908 52582822 154426010 106116361 877754209 635618823 818897370 210126658 789120784 809488683 958251199 321361845 610631444 376842654 460486638 550564134 594285669 408085138 928096302 844420746 867159858 928585282 940266855 767637660 824444209 14030972 655321753 33848134 98490361 240520181 470188775 392978537 521737856 677617202 975831995 128075580 185967682 765911587 817382169 833707512 886998224 457455830 871440486 647069417 745062625 287401850 745742422 733521091 905612329 452897922 547268731 402809157 734126135 974895957 981221354 178064747 809867550 518633404 632263829 289227164 836691410 343272269 594953851 204217653 713796461 896875571 927079322 935892955 997545122 71247775 120021798 937555739 958355637 326602225 882500638 712517176 712896605 65132936 982954490 242742944 485280009 154296747 838783693 51708424 242139229 238745319 364575394 748035492 915827846 842055811 964550878 398228663 953226541 89786240 361720132 484560335 638852782 794420454 930583056 835492518 867056232 702192937 829418826 673324633 971675596 764783767 787976495 583486090 939782710 120924166 872827600 521197484 953348936 718396861 859834400 694037935 914174488 519348912 604120483 224402072 482115844 665915432 715326722 122199789 986075663 238967666 541843439 269306138 911632919 305474656 976686786 335945968 722376932 355373577 736650268 908006076 978735638 13873624 438614101 120427159 812037370 67983973 276724609 759643336 822604699 157482816 597724660 723654882 893400349 85248093 539322375 398221044 975362540 873340040 906728258 62217063 947191384 809529073 956857720 149707951 836796818 416977521 421196764 275106168 512622437 167736959 701248084 397492337 671146148 471866351 945870635 596829807 613781930 778756395 987418839 608545599 829171030 238590671 742438540 816101495 997976255 196194798 624788681 689792165 910710954 630362428 726663307 850521954 994517814 321019999 588763978 86274727 389269216 55730228 431763559 990531845 991973718 327116146 462187049 554502203 963094142 276736946 604409984 123983887 563352939 191134308 671705283 943957267 973644240 428058615 601257822 415910458 959931268 447244042 619465835 905742539 910144225 434556377 542953646 927673441 971041892 610768928 931479325 116639800 540505889 866045252 919746929 630808558 719901843 314609416 470793151 209529632 357781640 858890478 984058185 781872270 799449518 523559081 711668852 664989325 904086365 437352182 538438216 462903088 590387259 62581431 288650219 803897727 952406910 212713299 531487036 210994767 992238305 164904373 842994317 999319954 999721301 499067602 499589990 703363817 897323359 744999595 977503288 457761593 782585995 683897109 731781889 626420019 748610817 819658896 973251373 676798928 858709507 819466537 994863057 422968949 718567105 926437705 999805352 724540141 909548623 843862434 865439121 129999672 658601836 859600080 903875063 100916993 826904433 760691187 821218612 942510607 957485213 585708246 715634371 97373421 360053580 126001209 305775667 113045202 560549747 449115695 638609926 914859180 921508460 152476321 178926232 912269049 983384543 99811577 995574922 576255855 755416768 393785794 711229163 613755743 981701972 358950270 857713547 948151366 956801125 907991570 940820438 699384928 963998102 690231695 841240448 307134978 366037683 689395351 819478984 892665306 955672986 602267082 923761826 41326384 327267247 258610936 726446110 107854816 796473787 126333211 627830468 425007934 702769815 540126502 693011858 454940681 675478700 880373653 947024174 779979556 976922739 897166759 971810204 985765351 992383845 771348402 943408421 5583592 731659849 100301285 603219556 626245025 861585604 131131095 526654093 140148820 285015838 685210257 848434620 830885775 985647347 714044868 955574048 490709788 535015456 520720010 916225842 728643161 788953891 205110300 596714930 521125049 912831636 731483784 975450420 350554174 694966076 291314025 663158542 252716779 959989805 630720312 885482273 843855159 980866985 344940120 784039194 782387789 886022595 815104009 892769805 521574451 896514538 146560092 692469758 175661842 727770800 624459328 954919557 640736804 969068062 771888540 914818051 829257496 873420853 409044720 874363310 454425822 618296498 697319015 737043027 274829074 472460282 372953873 675538449 447365611 658145993 929496804 966645758 116404931 860605755 87988332 808353526 211027559 609838676 993018048 998310581 723566216 737397824 815653151 901287382 204732537 790660514 608108128 869330348 124440431 474040417 539402122 729527899 487029392 916522273 986021321 992942102 996879326 998503412 124364024 582604922 888222609 989402091 384342605 676721752 799361420 877364141 230145462 638843499 927208852 989883786 131193313 655418861 270575988 967457311 673103917 889057611 903974959 967186807 905322835 961719164 513351060 720160092 30250184 244005917 308059122 800345822 742993961 793764489 830007750 939415414 106415146 949178836 404012096 440461066 806650626 939053885 805717406 837886561 384673682 491611552 687210597 960261367 822736730 920737258 207712115 593094551 349928042 414347315 581957153 932647689 495828509 923936327 189927200 483963267 288533163 731538973 643909388 791953847 787048548 887882058 219291906 571972233 712064864 716338277 920783787 983034298 224135797 823157930 437135670 577808948 115456571 978111077 619184327 793854854 2070521 637471533 317133184 799834743 508513777 815582111 412067419 823185749 311471466 819642281 321246983 882423951 863924730 940879294 639391590 918071606 733877692 905371840 631131489 708144822 826350295 940186783 988045969 991976359 456894366 967834515 942540293 992603632 319461977 632067159 551331378 758398536 382416172 735678802 259513913 939725964 233453544 642905082 254385060 343658207 615737590 787205259 153559308 590258303 703404913 816339039 433734322 976640754 64452657 283785180 263103510 767571543 627228984 889296216 771056858 995601003 820509570 839418602 231488336 341700510 327068620 432446630 814202274 905492900 272203332 309531331 906135212 979952004 537742157 789956131 844953632 920607087 602655575 904460921 340690987 991447515 697449518 971534622 833685620 955566695 178071964 603009884 358076055 662991782 921231163 959522907 440843476 978201347 205838136 842191653 424896651 955947452 486600516 561608638 544057052 708308688 410552925 411172224 841453251 861531233 172098578 428667322 666564249 868058482 50536072 58415380 781275280 921540832 372310927 735062835 314458356 403248179 921528608 963045230 135529157 155251500 32379121 261440212 739937805 891994627 745063198 985725975 610920727 638294678 848140909 964207042 962965478 986285770 130995226 894225097 247341130 300053794 397644008 636033320 994881532 995357723 698751809 929450545 346937098 782723404 913799286 918054815 751256819 995161437 4587605 645149499 987116030 988417982 164649049 816766337 493635572 760990179 374259452 920260307 849011236 933227941 189986056 977857253 30651762 855491086 278705087 624617761 701106328 716443020 615802188 978458866 574903747 885498406 449500702 924887467 324376142 582669524 80083829 569724646 548301540 979193673 49500493 487210250 701794344 996585989 542533948 805614831 29793347 155395445 297130474 997304778 73390247 91552894 498357098 747509776 583426479 595406951 510867203 943945906 278578298 727580305 961036288 991812034 948992322 979595016 192419872 762416469 488411708 903761723 392383638 571332225 817073688 860849587 649780517 972066161 865223310 883939699 39032457 527258884 220360305 779838924 557597653 603099634 827785519 946343843 859043055 984874734 861195208 892765111 577579957 892861459 26289352 132203720 668471180 934464555 216515150 623187785 685705992 706718307 132620289 476167309 845614428 959778928 531087004 904553667 277683441 950012870 517542918 723742826 858237810 961621514 574111428 595670730 342349327 818137610 887207065 939779049 868480923 940939662 807104100 855942585 220453993 945270699 728390571 827947704 800893770 958379080 972393677 978083542 109238791 796243596 241569641 860055644 418143662 711455344 81962534 451104964 474367786 493789427 889082720 897682916 631449608 829983689 12234089 996189627 375930350 883591239 587104812 898564356 127304291 492761283 906094284 984898763 319699875 871526856 827106640 864071765 104722437 414260990 119280936 560642626 965706526 973306444 950080969 983016570 153910474 735764612 258510677 373694928 515425448 879753935 636348650 734396711 479603606 811859512 682029184 822261453 326622783 648185862 701314327 912865832 3000700 123664151 297525010 987546747 584908642 642637382 463858655 606463215 16154240 887155445 198123770 553283235 403523559 640238741 836339081 974788514 223289385 800815377 434649919 543775292 268834691 987454617 64885584 687115752 662673387 934188147 271026471 855542232 541826663 663366818 31958024 703545709 461545218 727869704 238211823 605034024 166058077 698895287 746467025 879742621 719998102 964160402 516155751 768357455 731717362 738285244 667518847 710918581 769472771 844975367 282961604 716342468 275157943 405613925 16441885 686869087 329211261 483843480 722701178 869297687 225828546 323867301 768360330 811724821 669730574 943798471 559310722 733173846 191305649 766922189 99379003 215316100 608857768 787083783 919924059 957449390 723888459 849866636 269919896 652010011 231813289 936392115 422701186 847178123 714107122 780633278 400677290 451817985 444583033 695648674 650883645 972991784 122130907 870973693 187426019 608323883 896607683 899509706 924936205 961115946 7715451 775081575 134705885 336652321 682473920 818350514 489663049 803305820 93414975 761101269 132346808 668384547 72645019 972319683 714443530 903963512 882308497 973181216 867335484 990481478 474848822 655626002 896795892 918683022 727560802 881844810 149840604 909476811 670254805 892239680 702613493 733393809 466716187 757215883 811704338 907994750 668440923 710726704 164722697 689302163 142059404 701465568 759423217 760340619 535351213 900371372 321535259 408236172 678471883 824936741 248569442 738421890 141200514 625252451 197382262 621218581 654910959 724143552 360317068 709752523 917092328 983147824 665620849 832976815 961537345 967864429 834397413 874579826 882044284 901664031 369049235 406629083 203920585 948719111 432978783 656631188 59319537 935105435 888612276 985124417 533780464 852326412 227673134 697674754 806101648 862709418 620632715 965640900 367936533 755380600 412547371 595610844 420966278 704350519 675999914 908110365 180242593 758085471 462981378 782567455 598612142 940042228 461046767 729423030 763531606 936069486 204094026 527651280 483503919 549830630 791449713 912470743 486172606 917294440 769823645 878902499 805550362 811076638 655443730 845462442 955883817 977106053 652841077 855487242 196745812 415402600 791130642 893752112 238991040 832220447 399078043 715129770 734510606 894078512 471046945 701370327 301116522 796288033 199695227 963895841 542905378 711229844 963900758 982192201 116976316 404892828 862432817 940312546 926589960 962063398 162755564 194294170 593801989 682138441 713701751 746017297 379117896 529646222 469929480 555659060 294905472 602183367 766962718 935413763 241745149 322846781 474680588 915120432 884715716 970850242 904874501 935840240 704829950 913666599 530886588 623758350 228051662 927416062 814600599 818897487 696318771 706443732 353255336 660255713 49625224 131389377 773694146 940310617 57725018 604855044 564261076 732608230 495533051 781737370 784431709 831617368 141073783 956309834 707146682 710445310 898840404 899048752 381732733 742778723 515206775 669979647 208204871 580424404 359387124 391080997 967523539 981327885 7538040 511413745 666235295 890129444 613510855 787181007 263508381 468056822 98082544 706542880 565144089 693881984 207828358 649104895 351604767 589312151 999718176 999982694 266898132 488277730 159297813 817554099 46783762 747951902 40149635 617702010 51158677 518046159 770358204 856908262 472086609 892310103 196804350 199954760 109899481 363004428 940159570 991046150 455899382 656170456 238157621 561175400 640344097 842935800 781285028 798730004 494533857 896588253 350446105 528715369 820208288 966384240 368951602 502505835 807605657 831746248 136111559 443091872 191672288 909382056 861429940 884203619 714002473 960683357 592860468 830179251 681811919 884305557 516448694 780493423 579286813 841175561 910886667 983258509 442400991 936055996 515613378 599187028 268589289 650098547 872411939 979982131 176572836 607338531 779404905 846513607 566184968 964180438 648851780 977191693 687858222 833547860 553243770 934146500 914735451 925390584 645326659 729629508 599700585 713476137 875866523 956462709 496786040 756024370 346065203 376891979 666444626 786962789 877539791 955532635 872755303 912922106 242744479 373376015 895057425 999489704 689174472 923354516 681556691 948568509 908581020 980520108 816178064 965972976 889975867 917669825 936672244 966964335 342209570 890194071 202528189 396641090 540535243 991113662 839063074 866684259 205040870 901015377 513255932 753329594 220904358 441345436 58554614 385593013 443247276 981884044 570181199 610156940 137216942 636879795 999706076 999980544 753969503 920255173 528388597 737410845 775540424 844449331 35396874 768388031 110807437 943091431 662804593 742236288 530971735 576247703 855863304 904617911 382424894 869584561 609408269 932222032 974579672 992918725 594088024 985536178 890475670 929329306 88135939 598161276 139419556 771185034 445388419 762148054 461466415 752981601 727077985 886937723 676143742 731989894 569773561 854005907 608291107 697905904 679918713 766858208 477076039 984180760 753735383 757212781 870537245 903941671 194815785 952367499 300659264 509432791 924419050 973918232 27714731 168917199 36398311 510597023 990189928 991427672 576376517 979014240 368843281 616202665 597944716 767138637 850415077 948974400 397524387 561154016 740615070 752764710 367179561 463851067 777591280 963609742 106329313 476834322 884602656 897213216 772437848 882461558 522900149 615922204 911984856 966819226 901811735 960074473 399277481 539203530 86079770 883965578 144038417 672469955 801653789 841501822 340128054 426299517 768860409 911389205 318860034 940557506 599391015 994362091 291658872 340379272 799951167 939726786 925257557 973582147 501864121 888292469 819876798 889052982 583136938 827194795 757742863 890996180 724223438 970306259 713136013 981292742 720876882 898656772 909597297 989440139 151510637 191397777 47499962 562500388 254609387 663566614 185063279 845248144 55254005 836983360 274689463 333747867 694832677 716481277 229048721 393712412 473297525 709797026 875378896 913721733 379770512 392814776 860154861 881153610 961484590 978973239 42289039 535335207 520504106 572086003 774989195 963502101 604643914 959561899 782769854 853317460 542602317 721076665 23770168 416975608 761716169 767794238 123657383 380722065 10847654 18623937 744379920 852109426 442495405 602626945 226446504 613274890 873843821 978123804 9838512 976224746 107767809 222694111 288427497 542176690 47877860 812007177 59793725 912784338 479673452 825739354 937491545 971967707 982221275 982543728 408038120 565896504 774893057 933294792 928620226 932450030 357242818 543644971 902879774 952333268 620187275 648181784 809938446 841668099 221398599 882525078 47470096 215995495 597505779 953586094 936044311 996323737 575759520 771122606 796394270 890255728 796585041 838746743 318515652 788459006 328063764 411889615 928262137 997201154 164960699 388347312 676424041 842610253 860647713 908092428 255190448 841000448 60834141 166886467 926397254 935689592 794979150 956140020 127806478 973934889 776129603 791871790 802138023 988830870 549139998 863096377 171155008 591513684 913844892 925070239 433517574 656243223 547610810 884563442 720729913 786648317 31208125 890354839 654685105 934553000 673739116 895300875 282538094 411402085 978667672 988772706 99833597 551801294 907035766 945903821 908696708 961806199 930619903 942388280 809699845 905556770 914858202 918956928 876590613 999256891 979018070 990657010 664241083 940032241 86310681 461421743 824875603 994877085 674819600 713426782 678109951 741499300 157230010 776700740 843056367 878001946 792212179 828144942 281983549 532903419 723442056 813775933 81693798 159405711 378281991 490796181 211083115 256316501 20308854 929483590 643137346 761584517 904552963 982701352 726157330 926041090 551189844 777883856 157985297 306815529 388680883 424343875 351643343 483063902 102483798 159040499 728022270 987112260 866364714 907948136 5718239 584686847 26095211 400151501 338398404 741819014 99186363 318927037 794020019 893600473 898125956 980468403 116900157 773464446 833064090 867660548 322109212 486061111 214417128 746596606 4300746 727486814 784481364 822621855 578309473 951427976 776444265 798515688 480359184 804222697 777018762 971447439 465480623 782771677 471328998 938341258 148464501 346603328 334341850 337865291 948698544 975505366 73457464 469082775 967793973 975071642 125265160 313255998 388174153 777785343 861267367 908764221 703051614 857786874 735804757 838749454 209651188 381851071 866418168 924234622 730942150 875969958 984705760 995009464 172235265 490696660 184303660 739662993 642969974 822650004 602178756 779891879 965617279 998838438 248766632 591903947 839329592 893555222 336547759 606337513 403597924 921661701 797697049 874525915 236679735 514047013 440547831 946663925 870760702 985943853 989877116 991058283 889713859 906547248 839951619 844044690 366862181 895073958 967593118 975507680 264604163 619947613 720621359 788029907 666794619 733585049 181826177 628996005 412315203 986150676 497995062 783541210 14795466 627853649 155340574 270385417 644942770 964561041 674331868 733239954 421600552 771399998 675735783 843063840 832156550 972915938 65825827 553515809 632326485 870163821 742012772 994578709 694891450 946399565 474369464 504897357 428561927 455937977 489567953 588015690 248222662 723222477 312518319 696692074 672198771 897022104 681178450 796168552 285470122 388595111 855440561 877663987 578385477 904923014 237624911 865077734 699258521 950297145 85725572 595122351 130881999 515747394 865770549 906177284 533701384 580281136 86305835 239798808 492525990 731362976 268270201 419922131 244018143 260195352 637023024 856480717 854473650 912592008 379059187 470119581 831734519 899802481 280999922 684522355 644691760 990125074 532383557 617852741 588024415 754133632 727422406 763410789 865406645 888476394 725617717 853802874 120217742 280361824 423873577 655798034 644349907 928203282 114639100 422976501 839867961 862538681 130333268 411110795 15615130 49144214 167113726 765486429 593913654 819446906 864095022 949943283 733378715 829396732 689367724 894539203 141057386 152426442 610395345 914824085 61868695 193696950 885453812 952270790 596633868 805557288 879371413 925467546 750179328 907417193 868386189 899754995 804425211 826013514 101123934 221147063 863685240 986828662 405232879 408578197 613206800 943704774 286064587 366312427 962710963 977125197 980990974 993462940 530236073 758717163 434818276 625249938 180379515 474971988 760921858 845508416 668765296 766607770 268779841 799358955 847989013 892418002 482192540 809986593 315299558 792804309 251606269 758506786 906769089 940900250 434718559 593984574 502665282 546258432 518080929 664391135 22354493 762774402 916032010 993492817 195910549 992223004 631170997 910872329 62345876 368935725 898581839 965902495 751962466 909420506 349421015 763895186 6114821 762676797 925155663 971216952 119066803 485152702 119511968 633727464 267941729 529670889 111095273 325770061 147323139 615502354 490678565 574328169 888279523 942310337 162886789 248585477 373986656 889559874 940098265 962238280 171833037 517743420 928645527 934005048 872949994 875981255 233469924 333888000 306096753 959031110 552698359 875506084 84922051 642230268 451118858 922127242 923031863 953797111 81811199 293464015 534352394 997015303 319596456 771192861 923055049 957539374 79400352 310711376 223547611 905324851 148401973 557808709 954171651 988519601 655194338 740374584 617882270 649701965 388386007 824273362 476879596 489674357 2104288 373025833 681367617 899690246 371430338 873756804 806944401 901050062 16783365 815605354 646228378 820478333 873008987 951795830 298619814 312134152 202651731 954459256 499593444 823923538 729226537 985369851 842598603 919471556 989947004 990724519 16508483 105764280 545696113 792013593 542408292 689634004 851909282 872671408 935101103 988713269 716647298 733465857 833338321 961125771 930403713 934859460 65611441 261610419 977051201 979483182 582628666 951768536 596075223 736993614 369944640 845626412 278152153 516557634 431844465 566784638 426868696 521903413 291257182 693246502 55148884 649897959 353731298 380866746 996712053 997177966 562257061 647516155 11401486 922594202 495141764 974149274 839168171 949046615 712089338 862824463 114620092 474919448 652876377 753108708 536352115 751388858 946903627 978980864 961188619 997290675 847568148 925103775 688405117 844495489 990946450 997796946 157189185 257424939 364468874 700669689 786524097 889600554 941597881 991842619 846497572 965317542 70943940 799836211 252797671 858510594 88256107 310259210 172515681 654839304 4941209 465841777 738940807 779106287 601660987 853191202 823606343 966183682 648832193 956313938 146328749 606950728 571171064 903742889 765260533 803009758 82270020 122565352 13106522 229158529 544144569 658532523 783704824 883658038 226351598 423217859 700836381 968527006 1449119 957825536 174166301 868327021 533869606 624442612 7636554 250956319 731113358 993138955 318490364 868248930 387349602 476616028 420219983 725580766 299213782 772702937 789156915 917719159 9471012 920010384 583832611 679016097 728444820 904968329 820491396 936535354 695999267 891160684 71516981 720415559 832776145 931390883 896068046 995095590 878905962 945799145 898208978 993155234 772320892 862142429 528999729 542254106 75963664 298998000 28805319 887655330 914737339 960992225 327832315 813365067 450657019 697231428 611111162 833915137 278343269 906184044 111386971 386765852 796778424 898740688 220862220 661680461 23914971 404588987 143012706 856996639 948986343 972818054 491203131 992456652 759302016 833530260 861738154 957542023 212382376 622971540 474387462 624551354 857816884 931467216 837735675 898762196 770428905 805806277 536523655 754589706 648671613 845557377 910022213 970073770 245225496 662215426 425697241 590670958 336680153 558511795 318759915 954280253 252566134 788621055 924204712 972866952 555206937 763611305 978404244 990837257 563319163 772641859 870862979 941960538 946903387 975009663 666008492 698041947 327248722 591335892 92876341 298547900 848759647 863795432 759136850 801657496 470507351 739050993 132253974 437773189 396437755 987463151 686961391 703393183 989665182 997471772 220731642 513421487 751770081 922837969 125420243 905641626 168373861 552973445 65186214 467828628 761738979 778728572 51136021 941650424 330473408 568998424 140216320 207669201 691639853 843771996 412134900 719638084 677305450 719668665 863661540 981412378 248635780 366766473 700767816 714168690 886890397 922782279 722515887 764752776 476116267 504018282 765148318 947456995 278320240 302602776 717525767 948062967 617132306 645669422 992782359 999047854 272176806 859959657 830902455 991004791 542216248 746061940 924068189 965021291 137630602 260904849 379789133 835318581 159107657 210151805 259147494 644441864 729228731 911257209 356645335 658729769 246699245 471418349 696362373 874327562 557352889 633153018 139498035 496928652 90817566 107814012 147076308 469347454 214159035 677187887 275815949 880631679 97734878 161175852 681957627 808365438 463318993 476859283 222276987 448220035 849276756 955763352 913226244 940883874 950462771 981113699 668911719 992369430 349909050 979391033 860491075 991382208 745950166 916162412 332084721 589423466 954243830 976857137 277732161 880299044 781411865 900246260 825570838 879112263 349983857 944786711 115634830 141692005 777521275 986594309 513162186 704835507 376506446 467299333 692547967 970757436 845192908 871609907 44975296 430503845 311821123 324639770 36508384 392235852 998764812 999891253 110145829 959907600 634718372 791143349 909911133 913837681 903299786 928116350 922761546 970689124 177858239 373345506 482852262 490138756 771573663 944237169 957538726 958097961 816991751 909703986 889124695 893789146 642309152 909884225 602832050 630385417 185462963 257517178 181541348 746895806 951106935 952177012 825440312 892472269 571575688 584231260 151982972 161913646 524241468 792272677 976696514 997703277 331471021 842631953 59576668 176834411 261463816 679492604 125188814 286685065 868504406 962591803 216787412 309963353 909093268 995708015 610811784 750670317 281895050 958349005 617284959 992777801 734848936 772648271 732114989 764241758 791169869 989442758 926171163 993403457 628796433 975875727 993194544 995110878 805826834 815360489 988411906 991074896 27843118 692341316 336067588 581214035 106275522 284272664 620150000 899818937 908132688 950115016 876901079 924126799 558131728 782219821 89709153 556618134 864009445 937561214 410907879 640257051 117582469 707901244 682488715 991559177 749426131 799762241 885368175 909198311 641415489 821842578 378353893 866968827 560797902 661003235 59294877 367134598 575807990 808944908 364131326 669067589 92146542 716118715 799660487 846911665 495145598 502319754 820991418 821557764 626492560 711713278 646652352 877777510 917783907 922869650 862596752 944800687 351002884 669939163 982183238 983606162 570976816 771216361 715714023 943428256 662475291 799854884 673816951 753651617 989661358 990100488 918658670 973716069 232956879 826207440 120207207 912911007 27853778 674415378 90077547 268180309 177108272 446998788 378411357 674475109 40514108 759266018 604025131 756589239 442035110 806879699 68100321 940787841 693169510 963267763 591298810 941657901 2064512 541392525 907370 386345436 127410099 402152545 620696071 873483690 921471740 988800582 468985180 591428789 717805072 961623482 793347813 842071333 99357144 273447634 784490819 877745265 288350227 809858055 458107787 561206292 72726713 464324009 901864118 914923860 139568926 343862593 338483516 601680170 420945629 608508453 469422433 677053275 162639082 877764622 559894217 783864857 223078252 489099495 731567464 813038053 253664640 495679329 378462293 903131616 757632045 818957195 204616754 524123030 919933253 936148973 472502741 697493174 513593637 944280317 992451874 995884495 185397256 300927142 3859494 232993120 221031218 553338687 314175979 603927641 118686832 306229172 647082174 713137242 468700224 889379439 643107851 947711528 637017524 776569614 581889294 863415005 102971764 480822378 110809710 391833647 198643126 777055540 861139817 980055414 561713870 735941821 858515747 971718983 562376561 595142283 752882732 929757958 958587371 983034224 445297484 617788255 473605233 669609673 622203203 840958318 746671693 964044635 638889632 742657280 504089974 793603714 151762787 919920654 465745110 772164987 567796563 966352002 156884346 294915848 163289853 787124779 186002058 973495656 78813418 551244257 702683069 729312815 67410334 813889775 172622186 827771561 627715840 913269253 520838767 614491080 921183520 940849651 607575563 772264372 586142013 679449656 362393706 471205293 749676288 802161590 459447665 851621680 973660939 991305195 165606083 332861893 438678674 949257382 740960868 781702568 734674498 890748670 709890015 944765200 933531788 979760328 527214124 535733754 338695130 631227694 599670217 688309516 941044636 990255599 936277366 998615917 280285945 316447428 825776459 999623735 130092735 348075683 977277325 987177953 971728994 995607213 935839824 955541077 117369267 778160470 463412282 565272337 2941783 767527861 746189662 875410602 636763563 969322434 156116771 962193318 5086098 630966007 791490328 842282666 405025015 973554924 703381500 840061409 168784748 744935308 672426619 790568212 467492478 774960388 458369361 593840128 189648612 981826985 92887221 848582348 493709993 622945021 528157659 819899410 265698542 714563746 557634690 871262516 307508455 991862397 917978578 998483436 205239121 343097048 94501805 783796897 353390364 730607988 552692118 909379304 976685028 988201862 449332125 992731418 141581907 407805927 479540038 595210846 731000092 736938929 827860834 894038216 893615778 931086511 303710704 686095977 442278272 643756984 130416667 955740407 807597552 958193556 692355221 766321050 881530844 966161828 248767812 503002781 955467354 983266022 71309184 768125160 860227845 867260090 199285874 960756161 994079570 994602433 952661985 980390033 971151148 991895099 550384935 884640362 925246626 949386094 56963342 750361317 625553237 696093213 872781112 894968614 435015244 515319215 933463499 941579795 649117188 788850952 281179255 498457957 494481149 653873035 834198924 854394551 64258405 84423936 275816902 983121379 370849141 768532937 175134392 701771262 53001676 694599897 532010423 752729284 265513683 724545618 383874531 384241248 268317883 746943026 281684670 638214464 30667395 537731835 786460177 857836826 664660343 792086952 384190087 428709675 973103102 990578397 525100526 698128142 919927668 960986933 260570748 550512986 821072373 892400390 374162885 990544005 490105987 944210613 360530344 640795326 703885494 770983753 31423991 495546009 181462624 873808266 352181953 368778974 84091427 347541648 396912055 853179792 541319011 649450409 938553110 961768303 293953858 567176896 174261960 339187271 85894469 385636678 258388742 267686410 235035128 258287167 208983691 734850664 582230459 991874123 625756558 942519847 592994059 728668945 895460985 932681491 859216186 879820135 54603772 679673307 310163417 657449993 776089195 864028168 197983845 596538692 280353511 540387263 676656540 715604683 979736575 997673338 45550289 581586569 511323454 949798494 171448758 342766454 282719181 327418272 188893997 407035176 791616887 872588128 848281854 895941884 33211568 767530878 935133897 970678093 76549355 399453104 353010983 656301254 529055684 678178913 697673538 720315131 787994433 973748770 922904234 992736997 386531406 508700876 920703638 929279183 514968719 752521690 606243833 829331458 691437671 755608271 828429572 930467848 629246061 696426777 669637133 834562362 662096277 834376588 538189278 973166811 225706268 812522477 62809409 239780115 859021473 900729647 800372074 814154495 4746665 524994627 674309651 766517651 97468272 762903310 707524612 716069711 119734630 375374444 819062266 852673881 936157900 946945914 105238081 510808030 693049199 866719079 56029613 914040896 114156656 691259780 13651117 159176157 621729421 931274789 885696635 998379184 85432360 754635965 61110919 727398491 325844267 662407586 425159631 938966943 955015105 974080725 962773585 982612636 350718927 632379863 235689042 454096426 420344844 900013498 179790347 396298767 890878135 999061022 270533286 750899682 512375998 812666610 722880177 930698760 485357471 553316216 477743691 707760626 127852859 757517797 85453502 992213908 867186728 975570016 240770652 661488760 857021728 927164431 993121352 994456922 842825883 914554844 518462316 889412710 415552283 752058354 731933420 809758037 454322897 509840362 676259031 995118584 894175350 920872717 45115797 419360765 395658162 406470787 21404730 55385336 284472583 990464959 926653556 949383390 710377332 737042633 635674278 945107883 902892619 956238906 310921975 571581897 976891653 990076647 426590833 623412491 238210471 978321414 585805807 716596779 386024556 938268847 591600326 994670948 111669129 118402387 877198287 941068590 764544328 797611051 698529091 839463590 156437313 245690855 659131920 687801068 510384551 639406661 772033971 778297182 721952581 752340806 156999656 692428221 402807626 757316201 299028256 754120475 897717266 924812823 992290069 993892585 778567493 858269572 911693134 936156566 821905442 914395204 374071485 509161176 311779539 966187562 568635835 816326183 536095514 565838350 101965170 290359124 940856112 963572080 194975051 754009472 273546079 666304676 549435508 857878766 238389276 736962229 933321606 935932721 361393589 566393882 995856706 996851197 206526036 954264140 465790850 916115446 222765693 536230164 463920234 923556881 906570597 916989463 404162896 907661147 452691507 670699868 437972133 638569184 623323616 667816489 784005598 861566821 873499381 883022732 465726881 716803645 921098778 926932443 709024658 749987920 391934414 439518171 562023661 776635019 551432373 701551515 234620564 672694761 690962966 983026987 432839599 709621181 168119004 446567760 527229726 994162400 239188615 588071757 666964381 720502150 687680348 774352214 521293021 835111618 27646518 562596395 659233981 687806699 267087364 836913722 368042027 618397842 884876653 890542552 994474023 995960677 172000464 633721858 245791438 375483061 815188188 942391429 706051796 888841357 284790205 996554299 294137852 918437492 172679026 412486253 469067793 936009510 132644334 707780555 405621933 852022574 644579310 949607583 792532913 796225263 271438685 696716874 894847469 997931666 396265581 687488994 121986652 526488738 756939866 905994060 366196727 713179211 770889167 833284890 319110664 732781406 756901518 853140588 503366325 510605356 441415419 736307779 492435061 934161124 226430783 772872235 948187897 998845749 402842587 773637906 345636487 880733717 501290380 771226975 423289131 888530249 238155065 399349073 217791804 435813730 520308350 523107849 365180941 787189936 326899209 906039439 134207435 438111894 259562840 972259825 713922150 967591978 678424599 798759486 352441845 743922937 543333020 670950827 418351713 503342196 114657262 773073896 778200788 911534216 529851507 646341229 295446261 431060047 488636099 655730274 338214446 684378862 552807221 578582390 913741962 989622647 716943206 802606120 168465021 300844547 849128114 863934801 849920017 914354252 710358578 713482329 726718859 896916578 913203179 916382442 980531787 987674095 859823408 949463850 453486313 955905108 709825060 739768405 234064176 608532559 786602413 916882351 135772359 673663630 261196075 280356173 849019954 994307179 844227048 972951241 693583738 835301892 56961294 185163554 932891397 986919652 550617349 813276098 653535842 758625021 316143321 494043861 379340924 554771611 606605623 609973909 139311519 472730958 299168291 919692293 592809134 902744235 756752512 878550008 872768917 932075404 472233393 577008103 651943597 767795524 219459719 482757867 675385925 821635746 174449266 843564948 651644188 976400136 539032487 953128797 710744002 718100941 834330205 890294798 15206413 897834620 86989147 462488180 285108118 877276834 32909974 464812463 377983827 937354686 661292200 887412583 518831760 882918107 591443314 754196617 536464694 830267637 226289214 291723761 670402789 999723289 931029250 973008395 61156154 702789440 298657913 707369609 209468622 630925011 419096923 935899577 322702169 588587203 741066315 836172780 510228330 584648136 855203651 996516769 137824842 531654517 920329682 963060503 16810614 94316338 685556781 991405552 823098677 972928322 36920376 352801481 618048550 905608115 113106216 862479006 934153021 947116804 405331690 597601944 507853074 649092456 252581161 946495186 859645784 959723109 909065569 945541231 476370965 759614561 80451157 368923015 231331506 588452535 842142621 910671374 231559710 386404543 353773222 890517806 86566521 667651445 261905503 764393031 583200469 759236650 56184353 366009145 570618565 637141792 84262063 891083995 953697399 985751799 775396928 968802323 379534302 682778280 337307996 950193357 38023224 908409330 974120987 977356343 269390819 768780898 116774059 123581749 639168585 832165250 482186273 533873490 247747397 359779857 227192255 817275716 598475653 886930463 92669461 982433699 212254480 565038032 612575728 926546683 383065953 991300247 386091139 906296823 29738938 279797581 523657987 818153008 713456953 809550111 660040650 715195386 592413060 779951755 135694263 885850999 227919953 988830648 108563669 753072844 677332062 730423534 188912961 957967580 326538879 934717610 541907000 889754938 649276855 797427684 511455081 979499824 343651922 962637251 772183499 873456658 886320838 985170983 374060707 617248976 883465968 964728861 274033041 662569705 86796781 208754341 745583584 986335292 93407716 314589316 672379904 855769377 796991034 806333226 40530928 946466005 201041595 539139806 359386583 505757267 465002668 540035467 929913134 969436307 1456414 792830856 138765490 880123216 80698918 832563510 403957490 799740420 696622439 978962784 508381596 662117199 638071300 727448044 751905219 850876414 5961138 961710641 234747670 927837707 955690713 961317680 236072984 915829754 757395562 779079448 81262851 791481977 593881781 855160761 236512131 973174988 978357071 982868195 344564927 811857971 860413384 894537441 103057711 393518325 500947594 775746562 178341960 564682395 195716581 686028471 156877725 515814673 833434687 964614536 232976483 839192829 963211409 978561454 133943750 632753422 224673168 411307480 447843422 628271911 951692603 972098612 832723724 994607281 760126655 790952843 300143978 693795873 804701737 898159381 470021821 581204324 992605939 995482096 587671200 789563300 70412977 243921331 400477615 803948488 328607619 844800347 358521932 467232160 657859390 900898651 609007165 969190495 605620110 957014621 816925720 884645824 603207702 963542336 264947329 997123032 374090433 405208197 345346283 420489206 526834098 884389842 886585470 921828635 417485566 654195063 538095658 910884986 884895522 946642865 364667146 621814381 349683440 622275005 639356911 750684221 596645775 823334694 346207977 728091164 455468921 684859690 817161630 871820250 189431544 791719243 103029016 243171581 835014627 878109189 703450750 956669773 282607742 589496374 265253622 820280501 287327312 850121446 620191627 740970469 323975858 717970752 454869090 552441057 827853577 917055432 293891018 940818627 636287931 673490286 944265062 952230152 551781902 685498066 596855582 841536878 329004212 453696761 696382392 970158930 417440044 783613158 482621238 578955694 663521166 798544722 134376517 931093005 199818108 713108473 559076776 761790305 544557976 925023372 436970169 588182590 25139054 936974195 515397735 653152035 430342386 505032713 990436351 997678975 310311895 315531316 422481200 670144671 707127708 923473549 222183752 902591922 169400931 911361498 38890513 886055626 936444394 964746616 49761958 291581773 413975111 636501705 760657243 828782449 59377649 695789383 568133064 742427731 734533046 757623165 528871049 744256857 67009211 950819748 48425671 970747944 363266968 645806127 562332806 822016715 974777324 975872284 198027222 570362560 229158401 408590078 741024627 893067909 348377974 730851696 800799447 801362450 408958923 690391227 773653222 941479649 387042284 835532722 80949167 642104932 773413752 828563173 136124288 643588170 576479511 879399709 102823198 507782036 125535789 673558931 319082094 472322096 474865598 557895752 362059190 676022670 793958718 958092946 786486579 901230337 948133293 956601618 610209770 869754830 365203271 371720300 691091321 999649994 528876336 667557149 471039429 509284015 936480684 990404203 441138070 941757115 518312606 963213011 448497028 820963568 895023477 966990648 668304066 795243312 782214284 923365418 237861693 758621496 333759100 491055500 300877287 965304519 890871714 915257061 305491930 520704734 901648783 996964842 686841282 971848519 894787350 920139241 224723365 744925218 434378969 800243809 942207212 973328492 818220820 917445695 561999002 655539371 631896607 976861844 327060642 947401367 108509559 226809856 329019399 978301955 687471231 934619853 870474962 908258484 612193052 993986993 435981556 925958228 946013564 967631977 701628849 908928679 73186525 860994819 80372883 327121175 685303 590087055 501354694 973141777 716897130 820676537 289872722 703377709 486834626 660553994 472668890 939008662 151587025 396861673 979251732 979534794 11495412 512902405 627024960 786117700 246480154 592578821 716338198 908878627 824232118 885465402 895271128 953850626 490045359 562603856 92695431 376082385 276901768 793463492 418645246 713176652 59492866 935108301 731302014 747103449 625876434 671017091 474427025 795051360 462454630 947321185 740674905 747860852 593603744 712051268 497444660 749169681 999730325 999968283 455271281 463605067 401968239 427180986 151424003 746705442 3366360 782612705 481470439 609306398 593405475 764352321 516412479 622649026 682195443 910154435 349099546 567090899 296553605 411690429 181815760 565772743 785599335 806731324 155465903 301461736 331719248 963520659 594245323 768877864 752535068 817105056 395100787 482721337 934224143 944669955 575604968 880755514 320843335 352602068 647244897 938354828 676023245 895881189 945373043 947808605 171840810 285558425 505254641 598350052 55921087 530008983 116395490 671051354 639272729 975680093 424717102 639937760 704712564 949007877 772798420 993960825 657341499 823866381 161214882 518415233 426858145 988600958 660743341 713412308 328589015 878049539 524122381 653162172 434521126 969491009 71955437 249344965 636621388 840202789 869295620 954095023 332157169 918247385 283812068 710169088 127634915 330253342 486820069 889324196 917310691 999455374 641600665 948616038 672477404 904387705 150980935 712343482 490667896 552435231 395366131 786769283 228937943 648363371 824984157 841037455 744708277 946795465 169145235 945955606 458675158 752264626 200613609 966263560 243830824 889617163 434812843 901848841 690045909 801890242 789826827 826384166 205546111 343858698 479153328 541877030 894182248 909175359 762245387 979759753 968412055 974196609 320609205 579471515 278501484 679961218 748595194 958511561 437090039 855525349 864413155 986983329 717381068 821787657 830113767 917503052 790706775 802607776 733587630 931079449 760846814 875978846 636103442 890907319 802830761 976602439 998688583 999900241 207182389 243958869 773722920 964856282 85411824 582121218 720528365 995255286 556481339 750004375 803411875 843551949 818963017 910664828 249769779 681825344 878195435 918370058 204372852 546218595 381057822 978974565 421838579 648114043 285767406 875068275 787436575 810493125 431667495 819116791 542737281 772986502 596010930 650538351 161434467 556993289 90625114 124871053 785392048 896175482 934473065 960657535 53184774 941710961 973277657 976553704 816273940 997694168 440280481 823688093 979178285 983872184 689077763 859315087 596034939 668730177 785654081 874735494 524126294 895690071 309131390 741324983 695351051 879560945 729989407 868690411 855482336 977967730 802446619 920704118 176083994 647475524 86239292 90501374 420741478 789226845 519004451 615610681 268236745 611864626 868858367 983686012 307885693 984794926 668391801 971362163 499236947 902183657 173955081 470514412 814188077 863392583 916522688 975848013 536814984 974466499 285777006 319688225 621206540 636698983 287940447 798418204 56064390 70211501 899282643 912304503 43398729 418619361 880495979 895668874 184974940 492844993 296479804 693670821 403728588 651520127 694417656 882227008 10736166 546945953 318665132 860443671 431113571 861214961 342301651 527750484 879623158 906266158 790838365 937614273 271657032 693953727 57593373 545210118 609682053 848805339 520059304 915837148 337332091 869729990 558758600 954926213 49487188 479802780 483454792 821423353 664330826 694498980 121979333 583516024 732242611 796764214 438762751 510733423 5915081 294289044 487069655 783118644 233111119 502644616 31903463 555300559 107229794 206047498 234817525 693276777 494336194 837593478 957415929 960703959 304275978 833922501 73131674 804002784 472749101 871173305 461238283 878805715 755109304 755437303 453122277 638602166 722872702 855867031 990760222 996772086 104080311 580073101 921484179 994906503 669003753 716435408 326298434 366892240 544588336 751754003 719694020 727510572 50158052 159909982 656372174 857316911 638481721 676174186 844901047 942724100 43153444 300755371 571603135 894058095 372142074 980765047 727607241 796756508 285481218 674515311 63350438 899137199 521381485 949488978 501422212 791411789 948630637 999197852 93348711 573127240 108462913 188996522 785199395 906511594 83246495 970025616 119639296 667436988 880151716 996680729 884210983 982997475 71452807 525533132 352262972 984293180 614207157 831684637 880800573 906538646 643208881 949934624 772128822 989262785 146283300 400307467 413387863 689630278 172604897 796876918 130977286 730958334 883114796 974389321 29695646 433997774 998631378 998702211 577292249 606540843 179219256 296027343 277859993 321283273 261572570 962611316 917951691 936229241 801332503 965877999 829221729 985426228 160311560 953827632 209957860 651538122 989602520 998341495 409031603 850322058 321424106 867443255 28866395 609922073 906566727 928885501 736364593 941386427 493067685 721083157 9172602 73681325 160420378 548285975 948342096 972682909 285582991 651475630 673813381 728154513 22268185 320425064 447328931 545751886 293182767 379592600 435699088 628625723 410934716 920525979 964853748 990481473 918908511 992914087 346442803 884970814 559281054 924074974 946223616 947764847 596511279 780660765 853135233 916111982 317575817 888617433 520066244 640289226 628891760 897799044 772743824 820641465 223187523 638122892 943561663 986663304 479431464 915557144 765176642 856959630 977684768 992778301 564015513 704167564 817821155 956985522 189918739 468819493 487576189 850163965 348787648 757503940 633367386 893706943 584026411 785659594 291122753 397743109 205554764 554878854 872248139 982814136 235832700 372286208 835990513 887110266 961523575 976960633 542011591 559749330 270549054 476484317 236438105 620518479 681623898 880645547 952049714 983992143 314555000 791768887 338005195 734481390 565049181 817101402 169795176 906882841 662156651 663881408 181351486 644971362 125363593 235972699 127545052 825556706 847236249 936659197 473950720 869703558 178371720 631472627 825158773 997819075 599856702 985507416 147936816 424081063 415526984 639614268 747298663 984366893 928056708 937412712 632796966 639502152 624171194 983401817 437433092 744118619 346263522 756891861 814176591 823204160 443220243 939760611 292080859 682762482 772976467 845397756 673305758 883763740 850276862 915042635 908011176 974946969 93948008 487016246 414943755 476437841 52597601 602441142 850110103 976939637 902289863 906266340 601469648 728015625 188711460 305158042 498061053 651445778 489429227 947747089 45861575 416096052 286066169 977629394 188551933 355982762 795423625 826318361 953096803 965888157 114641860 377130328 68395566 70994126 89158577 925076560 206032638 634292041 5417931 579336200 120962743 196327154 901928038 992971491 500498652 943730686 116039448 149052069 975949101 990342139 426713003 598944972 109871715 336003009 667241533 759027787 525255306 554119865 986329897 990971590 207077346 600688928 348610403 521174286 11906896 37766238 83328561 584646688 887532899 970145394 590543687 689446030 325987834 429375245 567524719 983664515 785180702 970068494 919198194 978872792 108354392 154526334 469611883 848110878 521415256 708670817 640187569 650209470 329885801 784283808 618378875 961028632 15377029 300661687 620683899 794313291 167707286 619614763 651940391 941807241 805247675 889340780 181014807 942852653 450012669 731195953 884578478 889352779 406757739 608214797 119369898 126494228 13729213 358356680 980372993 994637554 731290381 870662722 182804939 502868035 114914332 535072286 113632231 295947006 624854708 799977158 582591298 865522656 842326335 930263521 430960088 648735923 775550874 972829881 817234268 933911805 834272904 953572901 678354531 834474492 453078893 666174379 569860146 814739573 655690000 799305494 202750123 594035538 540613257 877919776 405486770 583692311 508985479 900907587 288228428 391846060 64830507 834785075 742247807 761023744 364279933 830073278 542359500 893181357 680871873 961698039 508449223 813888486 461002688 701633854 657186066 994795614 604318140 925055616 894617267 929179213 342736573 819828088 733253549 886461317 913267692 938096482 412410520 683988633 853893779 910234180 457187414 763161128 460313625 739570280 144511648 788729331 969080850 978827549 378933148 595838391 53669187 682812141 399649352 543510411 239263486 467594486 375807154 461100476 642271469 813990002 195349244 795460033 521007227 523693257 939101273 968398710 123622166 203906988 690086328 964071685 668905374 971025440 916966398 992837503 819802908 866283200 826642245 909735089 105321238 932168623 692147965 817913699 395378918 996994315 608153014 648072815 495399773 604060464 987025857 990313914 263208965 649478503 550405249 797249289 867010869 998551704 919815646 920873079 460828560 661386389 987039736 987539218 386684588 968749969 153220052 969518003 730805489 907854970 998348274 999499663 691040170 709559162 178269474 446425090 240789673 771335519 437933887 507253090 695822993 901418898 309935415 429530508 886083172 933798963 117859292 699242815 139115947 738685326 390596732 394068073 518528539 608094466 625563999 992658694 7768982 853000730 86037991 664263380 292961878 958561142 447131070 626784550 900527040 935230601 515147935 816124802 64380759 747335058 605658714 896281095 792130485 796776422 581758701 933116214 64032133 868863580 939739188 995738138 566203017 780853269 596390901 600192034 711348196 889111771 707828161 826109271 967286824 967521443 572022475 590112096 993168611 993263231 709409377 718299489 705414081 860767417 929764520 942997359 539849240 740565637 15622188 399904706 134139974 911543687 742196145 955522602 732025258 973620552 415371074 690466067 898649175 913003642 339577971 913606469 460255181 500446110 761816963 973831683 40947558 414223413 67533463 838523017 354888908 890228167 982951341 998882254 831018230 872572729 984014673 989226343 193913048 682604511 220027293 387154076 524979296 661751541 701345837 729792971 676770097 824492101 957367700 966710765 964978990 973766527 351485686 373786364 940273617 945638644 890966658 947881972 581084225 766079826 489371417 736660620 724596343 953773225 46043677 991553682 886602374 946714619 411380623 832832135 100029152 388206338 826891245 841568234 568017017 833891848 408856320 835626112 447975841 928196110 202908044 701686160 862694987 919015884 309162590 361342771 904407424 984020590 753456126 971534484 778020310 851084329 715571051 973564585 729592948 806451351 431461989 673212091 249098528 585499188 510692518 678728412 318103850 462386766 52058218 212473426 910224395 936505536 576207799 717820024 279968647 612419345 721262213 736666409 768278848 885999290 446382377 963916320 212684111 752630173 779497729 929158200 816452951 825717712 170523725 668010541 794136525 868507938 817516787 894545456 730201843 735204909 554876282 614092682 761954551 975458891 907546893 941835536 587614300 587903689 297306249 636441682 387107252 854866804 675403252 918339797 926769817 949741488 645536772 758878531 38112960 562810012 773216347 955832084 433157302 527296482 553538607 745801334 510951877 660642509 81148574 273057742 769090875 859562594 138798900 189198900 988435166 992719536 933659109 974023795 874115762 888251592 781258088 857056459 198556770 832380536 999967080 999995935 336409511 621074939 220121943 282323450 391801529 394245248 985062885 985878291 335046658 554542096 273290639 782413975 976219082 992939843 700493298 907799736 667778765 672033941 437707353 801176192 997477359 997595486 938666420 980116073 87544646 697451103 410734964 670265403 577257461 953855075 239678929 273957690 318987108 373735587 326845716 595091874 835332523 855722410 521908882 844503478 25555364 137277781 923221172 986561938 81970548 795977134 629938214 691265673 159847457 167420515 63371748 820063598 257211290 818909612 452950812 528933820 264156926 617591584 527315634 542629877 327982022 957993019 124435843 943739288 82208410 104133646 947488984 973595463 930440653 975424320 120138726 518918103 559327230 884012380 853472447 921002839 830745206 935294967 261497201 660658488 188640487 948239874 294864726 458564627 623727833 867443881 235154886 382625149 566113241 632310438 285811419 810207310 301654827 805046213 363187530 430658856 658403709 935625641 78060461 831522060 488672230 519883541 276201728 365528102 887115604 960086127 181313463 334947702 708969766 785428541 892878382 937935453 216829546 304658314 235196670 674459718 935090352 935441994 704747937 824387562 575185081 646443622 250033310 885921268 857816464 910492283 740411782 796965110 651181931 896878970 105319023 687593474 60363257 273600566 940516175 954657651 465517304 930100554 920829214 932646964 639411152 966389268 620340102 993373068 258249514 755988656 723524486 958446465 760708649 857377353 367731118 428652697 927957838 940789216 520849966 783495036 658826355 781907819 258827541 280401246 184277232 282366353 96276799 132356561 553177111 816521253 807494471 877051976 918679522 981138344 827599591 905019146 628117022 928192041 530744325 958302999 528816073 656900066 555917375 843386699 857955731 942926357 989579571 994904317 968557528 986083546 765246256 942767039 496596352 567107081 774467994 956536009 573633924 840832271 266952872 509574559 450912555 919433061 122178869 344702036 883649595 933487629 218217703 914027925 696182419 722056809 506159036 869718550 386730120 917195913 28633450 38350354 310169165 976611253 623479504 910019773 934900197 972719878 346669364 397240424 410642787 463562483 769962640 797461132 222121068 521563098 535230005 647935251 120412873 670943642 565396002 642320462 781730909 922149426 188892122 946326342 309008445 948164678 463222563 918900139 722749689 836458430 113376350 840516462 285495631 945628557 626785721 748742545 450034577 980499131 380086422 586105823 129616479 334923603 352444606 718742587 684673860 732400965 452370964 466515151 405857013 663560462 485730633 516521577 292248985 327066844 48326565 87214803 607866295 793726434 8194101 663490922 759321567 982839047 480146628 686208777 746540725 945156171 732203240 819302383 337018751 874272938 764285059 854410138 983688778 984506063 457376256 694857794 130255165 548574273 428027677 661184439 953608946 982497098 355912524 987145330 635999531 930332350 567780749 709362544 700299664 937193114 794032002 868887894 409432689 579960143 812032257 901147282 907252458 933827564 116114443 147745655 221976670 759416999 72015565 542919645 298318800 639344904 908293186 954974603 396514312 481756612 174967238 392146020 186764690 784716557 92633366 385293766 697023105 907658670 867483876 922985691 767160212 804500759 631794496 700199107 926300697 963229618 458244047 678136613 387261226 925968754 660835079 825329436 627464520 648581052 333264882 961399225 837907937 956009731 909932226 920428498 67590124 654392165 788865260 951121580 239190403 679730742 19707729 989379381 665303706 717925111 295434938 723603946 751927912 914714167 509418734 563330136 460200080 888820911 796991158 980237767 308942333 487294204 714996006 846255156 22087288 747704278 425764731 512421116 70963474 93348525 333555889 683526820 597575249 771429570 702543231 994881239 443678783 784285645 264307155 441545848 440028957 854352380 90735961 886662683 14537876 732316056 570171570 636052059 384462031 400661326 693837823 928450914 218669218 799353020 46015377 311610586 480642527 812114070 398586081 581358079 841035762 898335950 872342145 982589740 150790281 962322956 43973551 937576955 169909901 398088885 72359693 744680887 984796861 996363948 697791167 943027682 653967793 960421317 849651708 880168595 800570089 951348739 138100083 768397428 685847654 815232234 302919455 885251540 10982396 14626748 61102435 514393209 356170348 747655052 408253140 666535255 87301740 927735127 63807811 621490761 619004098 857655698 819095544 880208987 444290403 896607304 487441054 999491432 648420166 945851726 673849095 856041949 860218035 956548269 67152254 220888664 354390320 443594659 453894537 878217992 196304844 202554040 668892687 873297108 920540049 954851193 488518431 908003261 161450316 252216689 978303063 981731231 542291331 915016440 83968515 948005272 17514998 552836300 32415870 218794373 489206162 517346320 680710761 697724516 227582556 281144336 926779651 952751519 327018801 393309719 442440538 470593751 871595564 979148668 811116649 817638304 766291828 966754001 979998482 987863077 373308790 443168422 306616937 717299163 984822189 998809432 453656121 939891269 182960347 997726838 166501403 430902176 202767074 784152102 101970683 560692791 808888557 832488771 726882501 829004979 898230867 929125899 941377408 974193397 172148276 684334940 305189062 936601651 94483918 317803059 786543583 868327838 862311484 868685945 861464021 878555623 702061618 844595880 48439688 909544362 233583890 266432098 184459421 727695778 134783804 632316616 669720743 774504341 183601518 592053754 877023058 914551015 151887206 681801544 711250417 903491444 576519492 830659297 34010143 141359946 635417078 725839169 811818409 968432051 559857160 893144036 384697787 704277927 466174491 492458246 749158977 808018891 861437483 921232035 349015690 711239738 817406895 999485248 938916606 957154217 310228793 757805939 756068826 890819441 577678769 593695229 391974602 989710152 300234799 816261282 774474281 929719277 545685161 688884041 69386267 514351988 304293496 422341442 641163806 954091784 710787852 912180107 650383297 808070712 673634263 773738536 749816425 809428326 266472660 992345675 20762609 119986379 126652782 595076207 496608209 847371370 188673836 844657664 723239633 782992508 584693362 841655174 253879239 269488234 188235947 512664465 136015916 354445539 177038021 778163267 65698899 286153274 270081215 347529832 977453593 991891947 882661375 951421087 583278128 908992128 627085383 697391949 23988870 405174415 65361356 966859945 177061181 346160141 940211803 973835880 169698554 909557429 91841336 511546420 810305150 994600700 64965460 748379923 909225258 977026955 694935664 939942570 642728859 956949501 694858830 988822069 60349650 862583213 973062258 990817097 361096122 893158217 284471952 378526498 220039643 485003990 363362611 898968014 857518575 917631993 696473277 814407968 395095116 999513459 355996769 786751582 796221647 968462849 797603486 900127322 300081953 428590619 497155423 602616758 419483553 691480977 791032022 841445888 616956608 815165576 469191444 785205654 112916960 335520038 55664172 481296904 808559951 818015164 285417378 850110961 235982508 618882982 321978519 988386518 820242486 860534980 129138441 408568599 892521046 909409205 64477372 358992570 775238909 796853247 625657334 700907979 971949565 979296350 248509519 568653194 838371161 890028143 497353537 607515158 340363349 391591674 659652472 835547251 807090616 965171349 549059203 711908225 412641077 925593316 926961122 946638097 78753547 866047031 244991198 528491122 592213006 605712160 645011510 722545199 213635575 876223167 107161965 383611974 231247742 623575556 705976027 975091610 751382354 794142465 830381754 879615135 272999426 743129611 413085711 886598116 718163970 841592154 854368475 876614444 973682584 976963129 672554694 918772659 768054860 962765742 725821420 732477315 948260415 986344274 93649759 819058365 345733345 596998761 362580291 396719083 343005015 560691338 886105804 921566670 802552293 992080283 876429671 952167030 945627593 978429051 763891510 917359461 679479221 931380771 320629985 498445008 81204101 381946527 392680170 655630592 180645184 623029544 160189685 267346009 952285877 986727729 121622614 949758478 782544165 833885445 607607889 766966495 520607486 584650118 903138572 939760906 194464284 532464816 33793178 583844781 30761572 709027596 178613551 746652689 424347717 800586476 505417576 656928150 449110252 501354735 15752530 806736738 650731985 801024474 634804712 929350925 114524658 393684212 585761226 800626929 895388830 922315777 392358220 582543931 670535292 941685885 546443021 893018323 52946391 804089943 211677493 489189244 686941538 801270318 3045608 682905963 794372861 842376828 174459925 864412736 197799592 332050800 406382537 792227241 444341870 792637928 171690983 523355257 404253150 914342920 384748677 658595132 276354296 975715820 558470521 737582013 441698257 796430187 173298556 758732828 394778454 428081107 590113099 945657883 910111393 913373426 711564175 996781760 700441613 899337039 754178100 792821098 101421137 574716927 724803861 870187290 1305733 798173279 195364611 764559583 315524903 894786730 133524034 682800198 81599386 926805609 710340060 910315775 520208292 946254747 165928728 632512691 545190986 933172979 684592233 853690862 932236225 955516798 286064123 364917589 258359932 918184382 838558914 955429596 667265166 796521003 704721139 780418567 996828301 997031323 955224416 961085993 414042226 495821235 852709482 880179681 816200925 891917374 888860604 932910342 202847113 307977507 172658778 908234383 494669618 524952031 450466658 689661173 975474730 977430197 523988948 551815020 443900151 999320027 529609454 685156244 80336375 759037138 933494454 933791538 206971667 784892994 617697816 965263561 744321960 964987282 550395444 804468666 959598169 967592457 490037568 886677812 641065615 966360765 765488365 982415305 546182998 968556055 98115766 239939489 838512096 954094253 618433783 924043110 277460286 797317350 415043231 834861010 456899115 666520695 10096328 822487341 366494484 866239843 778965814 925766279 344324286 698760433 345447004 519225178 141613312 635818941 624704856 905615395 379918545 614454156 178834489 563822667 959087850 985961313 485900066 996419151 326439926 484089955 723925829 952601231 779440174 919689102 409649140 963177615 220202526 830136509 7142307 215453240 379174397 380619608 205790821 937702512 661397274 806999736 894705018 971869573 889364355 908840147 181151227 580220322 346751459 523970032 159804807 585707155 386419659 983112245 442966214 909569698 576366730 845987890 326358871 895843108 123223678 324036384 529592430 692555035 618678676 869929650 898246381 908597293 9171585 167780180 314995928 617787285 323179600 809169351 341885546 456931550 800848213 991464128 127807030 960799454 399550887 479177634 542146402 904478810 639328932 700637594 514088058 958085910 14801411 267278611 302330846 582458450 419570381 651282468 591943584 805750525 243852919 785867880 959724781 968424182 494205618 847200591 59297247 323181332 838075784 947108003 249120554 707699525 488427529 652878286 954236878 976937510 185682787 248253391 789465173 977193516 595490531 710528360 511616658 571562434 695596102 915743537 653025445 963352519 965160661 981267500 124733265 599375939 965572324 993745851 482188445 809549256 893351505 999177721 866206244 869492644 329920340 712604146 647898986 950078004 287827035 447861406 211083839 561907056 449900201 836994301 289463460 876222567 515019123 615144469 694415361 927356660 692956580 825237250 123720293 920397285 856641128 949417655 9557680 505520364 620644433 862521376 793340153 820113453 986926306 991580798 425862217 430994765 686494416 893150183 376113882 850402672 142599516 272151742 314949165 795577162 165529449 963046932 42534816 913195640 766277386 795945867 390460033 669103079 806883349 915152306 884164273 935541711 614819569 801301191 303041599 578863491 700391468 862777316 915041738 964536620 432791097 923717245 418641146 615226955 448746024 477892977 303899008 514506211 886090346 992043130 15278369 733042526 322078774 539588559 85383231 828224392 489034827 925565284 550075538 984143237 595938754 684183829 455404571 666562952 993283736 993730101 470359753 566044742 879630219 993043954 887331084 967975346 707648117 747608311 917513534 993965281 937715885 972144284 771026249 905932636 796015240 908652219 124636750 716479738 375489981 517288018 188969819 703377135 261280889 668396667 611771739 686741950 896595752 948440543 772798397 968675533 952329771 995792944 78723855 192188334 78944978 416586294 956452851 967020246 612879323 828833790 940235597 951836002 120007452 353987372 861334135 870824939 260580864 277697377 707545832 744692955 739346162 970702167 289854311 455953834 422541653 621893249 201500441 762451431 410767838 770079896 949626794 967774717 664482553 969889643 806845063 854534523 67447824 422662241 493609510 761946192 552005211 906543775 573973845 762409618 334703185 517535992 754388950 808221516 831056786 982378178 218629385 809248067 975020398 975854859 898823230 899245003 467121559 919725024 181317748 219606553 43548502 269704285 598644582 821272498 668773239 939780943 13339406 958819884 600421036 875846957 683307301 808725514 530598244 928252019 50269757 397261237 975638604 992991076 243571708 767124246 182741304 607941569 474669657 549647432 785401054 907634479 617193493 904316406 493734175 607900194 690997831 924347076 921932272 961129541 18182988 299115362 699935207 961221583 924063625 984876441 945743890 950553312 295787066 605230205 864306703 921911849 871532630 926064641 918513680 961238767 776067071 917375337 420130124 619261739 862072453 983391459 68417687 701160840 278255815 749270555 308031657 611973753 294064912 604296212 516390719 906018298 311896319 448004827 107137273 713133341 820323292 966652113 295176408 940091824 842918885 994577447 160817844 694219278 740573732 929216060 825599542 968066093 859264574 958651603 598683472 746727066 207666136 895629236 672587141 844633957 156434094 436222489 501428258 588420659 78821262 946321646 611833618 828126450 956319557 963316760 400855292 726557521 676536044 991965598 393666318 726047771 950671050 995505086 360230195 670916847 885033746 937851429 962760025 965900348 492222076 873547852 513547986 586839616 844301151 906651717 902966514 904589672 136292219 615228358 326097493 485892726 589021842 768764884 148945840 377441145 56496755 580191065 238293435 701067703 768748007 785744033 97475041 673524597 857186323 924443897 367448140 518198946 835877904 904056989 88970904 891681145 159018038 967243587 607009035 644364571 249751286 277149734 6315078 153381010 312311951 501354864 984004255 998323794 311589938 562292020 288252084 845240410 132734705 628144023 286487981 563636564 346314822 825560146 566421086 720140180 822043372 886059593 241452597 414578396 260648982 296975595 292760796 980496807 969397752 976868818 363856024 993677281 898766859 900619409 771280423 851966113 478644599 846040189 302124714 979700184 366786618 599104033 208748882 800297188 255525216 693414674 631901105 679602515 393064751 902723868 791531536 977357315 191905111 858587194 27639352 927378189 422594016 709548668 824909446 919229818 477864598 506240156 426885860 507992140 241673938 567710453 897827491 977043865 729525280 931214248 569449192 929351074 698276672 999260809 184039421 995143323 337956456 900833745 791822104 947683774 233751156 287261608 495934195 781804281 525846679 662262822 882177523 955016151 526673809 924275618 312116319 364741782 676212028 849791176 909602837 962398494 177752942 444656674 896049101 945183510 31399909 861229084 501302976 688467771 619793540 946429475 56447349 907351745 137653810 828105299 853458547 873606609 697924920 872019392 937221545 963548681 329328096 795483419 107836393 848171139 564032805 724172126 823800066 939926850 171228968 235795662 136763452 318248515 424066508 870067108 77236463 89998403 417596922 874515392 180341700 809960358 573820387 967880598 917265655 929087708 80825852 258883458 659878607 896093094 201390312 282429475 732056825 816742814 292307559 616758955 554320504 782209430 862102082 954672079 69973415 479593298 28123969 94502196 571286374 742515270 900634624 915003691 718148529 983604652 553018047 994427695 194100819 516944337 214342955 508635327 27262842 226750416 591547601 974711255 768657706 912986943 636486864 984533922 168278898 246238874 662230665 954622382 518024122 539354991 787628905 833625604 215717651 929070815 498204773 941220816 814020448 968768503 352033866 809303780 961556947 973054532 894791837 993124758 962251558 976178488 701341451 785616245 977973565 998163749 410072664 871663827 817014361 963206092 680465766 878831863 156517424 866791688 408417387 571363312 960870836 990132145 203808614 968204745 829695437 953858226 734434604 932661790 33309809 814473517 872357133 983310044 83501056 720821582 608091365 618427720 135491974 891964764 512145581 931788811 791614370 926524487 519863187 640225459 492930508 879825670 308035246 403821659 242742061 382641547 287333944 319795564 247578377 421094360 86950695 427888218 692009147 923306799 165985257 184567534 490685398 943015731 582432078 914482106 963260644 972947859 371703351 436248644 388760301 860747449 306328206 566942997 253253603 701450948 417755025 921870365 175680809 639137801 477950443 484851198 613802307 855391297 632158460 999514773 779249220 920263267 89968438 248523318 194082179 734317563 176490077 495213341 728544290 961570727 153964522 546247793 381049847 555876275 657276427 818771816 288505508 936109928 287251938 875717303 444497838 696488933 713288497 840488491 410771865 815791678 354400676 503509487 889802167 943674200 243787864 907988332 555894077 872394563 254101237 344629815 916572807 969688942 526848712 652940576 134414787 154532647 585758928 669471724 356574161 730826508 264933657 787998986 845103574 923025552 543517832 724562757 737650786 771374142 784546506 843893791 620340885 829306580 65985760 232384032 117208604 605159866 78063952 762576794 31111143 980355977 890600921 926686381 757665767 899550158 30084997 119043709 281004682 643512424 316014899 473051061 907934653 913273506 94225130 411550321 240166310 243420773 152951225 721705549 77952889 429215097 36704667 709102431 484082419 815595839 834236235 869414721 287492080 983237791 626661850 726392938 111637881 795810214 33530147 381369423 539487608 925653187 317674905 778751899 194409251 490537583 214058823 390882292 177879762 204500114 194834013 262008403 557269366 608782885 979409871 992209596 356457890 638564795 803812966 941423399 333745063 555147154 477454639 715054823 105256349 309798464 426166608 595917677 518998 619927961 357786739 417088600 877678280 977991942 92627407 754009030 523546547 613591746 404177257 555577736 368289583 855267922 420308925 977646229 758356718 817196747 42431705 197574889 805261418 984147038 700575873 831444510 730370917 977808066 123240043 716151502 980477524 983704912 633850578 761433365 54172711 867851973 631952704 896886461 312663959 725183797 33847260 43443337 36437807 762985943 412345576 711747018 753710795 928870101 334435951 681926453 198798184 428580689 117358616 689404536 160624629 684708653 471066080 492095771 774343152 793216385 573640077 786275566 792417186 873917158 477061779 587991049 771728681 947543411 747537376 874102683 31448643 224946481 837323704 868164701 257503057 963232560 159818592 804302976 348178443 491069323 530070338 842725759 196780056 295824179 511531429 983001761 874660629 874772068 837136793 987213826 353698911 927705153 708026965 747054446 393602000 493369137 79244570 269409147 20598666 343325476 298186857 775802133 194981565 521523497 353727642 413346433 558490605 951221826 223279857 468623914 851072863 956616380 326125923 521643944 387641591 737124260 144401310 326350906 274552897 731028994 40454793 516538204 803585686 840317058 804320649 998711885 282302426 569998954 780385839 899572091 589771694 864235265 344023361 498317439 207131289 288278013 343498501 406011873 252795065 776090378 84154486 715091157 182859618 792589136 491531733 982034162 674449870 681048592 603958668 699091563 256400831 470588656 373420723 646255378 926978770 953290775 105705126 234048443 886380868 921942661 345645140 683960680 731483359 988872934 328838859 548973171 847448979 971387799 278921433 963372911 661478255 785831660 275982380 804740097 500369085 787912625 816965964 933891199 749470545 970345448 394525056 551555233 193695287 550193160 407959704 540563282 13363528 970855762 883006768 954698874 15184539 961135834 762430373 984063977 646473899 773536314 139706650 969287401 113643548 770521506 494201031 836536333 205787128 265024739 799111838 906333384 726045752 740178314 346034509 458970693 682317625 797337155 561702519 929847982 44024429 846959388 392194654 450111667 130693635 562505682 292770576 504056618 598032485 933949817 564841902 606942760 159644173 264039809 657072346 719387364 524393196 763701406 572454877 817384454 928049059 978095732 179965708 883840812 87277816 382436258 985278422 986958674 790127779 814685068 602285268 781008371 402766629 814656927 247111230 479940641 16436508 599590100 532242058 572410368 236059113 352089468 187249703 950832057 223734121 439586060 928294091 996490448 424750679 464573729 998766392 999500655 464935125 978731302 907239822 914532348 225978041 615916663 377573551 847737092 576719330 715970818 813458271 922769235 824404311 902671474 989797411 995114321 289662021 599477851 95452980 137008682 826172500 838394920 76234902 158580349 857503838 925024406 741746624 921265071 533670878 576291490 961876948 977825847 691385497 801579328 104739880 734893874 783920154 901584270 380092085 727963934 895729972 910919324 532212012 916939542 736936069 990720865 774056088 927997920 465745046 557696324 281699328 376144149 170560741 604192533 707289365 914086085 85401466 206682285 594032484 735397650 495347300 733818492 933688944 980946464 155072105 607721513 37335322 168863672 494392926 922852720 835181611 863598031 830025775 913751182 554892661 792972458 127788629 198280609 467179177 538230294 833308384 967057437 213877926 800436363 875509830 926949342 547190373 902059622 54941171 599061505 479566806 606948999 254718760 892329089 62385819 64797868 362003633 506765857 686988499 834709236 572059937 606969434 186513782 310639221 513459696 515705035 918149046 963672959 521350907 532405340 424278951 958415336 751489243 966926793 971833925 979034483 941559815 982737138 458289655 587933223 118582042 479705996 596734549 769059605 465317084 842911352 662393091 845268694 742737918 894290065 225046737 748091836 588446706 621269483 573675071 974477434 819319570 989715962 649198047 820565813 564349558 844070162 531702990 600766621 860575271 959989215 46752191 190752286 156412021 270279397 807463849 810819873 632049134 658326894 556281098 874672055 534298921 731933003 667079185 738040099 540639595 751299567 341409908 971787059 319394096 673431329 4261729 692997148 566880702 940921740 960256617 969891133 875173588 956654611 729576929 838148336 332078618 890314623 12519836 523299329 283199649 538841342 410238640 767890598 433492791 834822542 898009013 976293244 212985264 524497845 211934574 801295661 994659867 996833895 314923036 887760903 134573414 689940534 741307958 883451165 799012847 923964336 6295114 86318076 471999663 488530620 970406603 998720449 893651106 986121478 262860932 711894330 522008533 709456447 550438077 950625873 266421271 913768224 283891419 966012086 351127186 949527900 440361873 714146345 221720813 465703324 811700602 906849894 15079588 711336891 701853799 703962535 234406273 433010215 258023351 679154809 823397763 994094218 841694770 983764650 685655188 686891820 394819903 656622390 468795632 936792234 653968909 824640712 540752199 721428459 873385725 885021223 555109329 642044983 601208956 812040965 162350942 271645947 70348627 819932079 632743473 935284648 809890745 984763964 327192322 879935063 970579569 990492713 739878123 760519274 939004024 953874490 529689224 757365087 302861685 925611662 23552292 73110529 943061655 981827858 767895957 813770423 614390075 659769767 788679636 878173212 621114906 734483661 642149215 892312495 838157744 866741808 362948496 501088876 732829925 944671169 53541249 893855789 831861275 989656278 941471959 971145788 364861746 875811488 17017737 432915729 666579406 942972471 793014770 872646123 683773469 827498313 505574070 875088948 874808389 887771049 389348815 988484332 312736346 591412539 884386214 935338853 262895929 919521114 565054626 931186892 803034566 991279296 504135952 764006731 856582324 935418915 279131251 539441923 949810621 972226369 374253698 558543490 224813388 528670718 24839067 934354920 950765374 996201547 69507484 302674721 23437116 262126150 102940975 803636819 202421023 760123358 246368964 473344597 971234042 978901289 508784694 666216720 602781198 712940534 420223316 469700882 64105509 263653709 597429502 768975596 205364045 720424415 840173181 856059367 848364082 860924192 100328956 897518236 88479744 665766706 552343240 741761661 472053628 555479299 315090643 773243432 54910433 144516216 613783345 949753539 472897212 842991892 132189426 816334687 437794762 605061697 76951220 189875901 121634072 473797673 918092510 994699756 32666580 278588778 918007440 919967573 780630566 856592759 593810771 661143263 16410672 439728616 576202775 768226953 821019398 838397734 105470147 133128424 802075636 919759635 835439864 991958660 167400431 581562024 822122768 870447513 831983557 943311808 39102506 450444090 952056823 974768555 585093021 671226835 554056584 758179168 156803303 878275672 638648824 684298543 416005564 658536074 593597009 804029167 166503449 221839501 453319067 986765715 316905027 947665376 728972453 936902409 995012804 995608474 211021616 360855582 122609267 439841039 560155809 911235469 958635841 964014026 819161146 899212246 845188792 849355546 275259746 485188785 534450519 637111313 325624554 961993167 857093152 905798017 468146521 549694826 995673095 999936876 199953939 862551703 479342493 951913542 990027898 998753026 400386703 828523846 656514408 761920135 333355740 733165926 801469419 874730418 804021698 909926595 390051497 913149000 63601069 747567039 324244109 911019199 61308781 336659300 950031426 980158055 924779294 958350139 944867411 999214058 201098930 358611267 326144774 751847516 234416308 492518570 307230628 760070297 981068357 985682078 527122 252363472 457141002 689360382 343946246 435055660 184645986 813739593 590846155 806087261 611444820 671041906 213092544 963624499 786095443 991330947 387313214 442623242 127119632 843382068 322025120 855896185 280553600 566651157 49858459 500813530 714720050 978430629 112709148 818668479 342207599 487322791 462030915 862716919 454081546 649080074 80521763 864586039 961059638 968544426 935359642 941827951 897628759 980290319 436906616 680922332 764900786 885394442 198198593 687279229 798153529 876114556 524981877 936098774 180303075 783797630 191894069 449831473 251690623 935656208 881531777 993104607 39011024 640465026 281370901 695732108 894758972 970226668 935006503 956448707 484220458 700864745 954337419 956266796 207632200 505956180 625453112 752321116 648774740 751147539 610362531 847470127 746033300 827316480 48106994 524750050 512449033 681454102 456838435 868421031 348349024 652370253 208115708 789842892 263755751 738502342 154704205 431126795 828627876 984754570 206313561 858371734 564091268 977317094 124680359 607316347 599666799 968732503 215454948 769331800 230731659 851101356 275069968 634898470 615153999 620304084 221608613 900283692 993902754 999607149 581086317 927109911 207708670 751523491 281896660 943463853 957348501 976872026 603544279 694989904 587881497 800960965 410721814 875476021 43915927 957922522 27915046 774037693 541605110 653322217 912136890 994496677 84049178 321328523 116244727 988798399 107005124 395553324 445640375 768615607 984651821 993933281 258008140 463244746 250038868 578035314 56549709 804206505 966863218 986528511 60991751 698377323 665681349 934146459 100185553 529975898 990371533 999221910 619850652 841707514 271452258 904162464 788719301 892234635 675842858 678914720 432664501 936628974 233984746 691206547 994671156 996573680 620683783 784939309 829041949 986084693 469811841 748003294 525627676 730279435 746607695 956462945 273182186 601521188 827768695 970815032 47290186 575687399 683404850 828266969 13865425 50166556 777577253 878466040 616802942 944396789 788600124 903844637 255124654 735421876 80659034 800217910 958897677 990476331 861061691 949986001 379434952 737564276 998302516 998512739 801995892 994665515 442536025 580451599 277850686 775404064 583420963 889231296 683765244 795032299 639237509 648274145 334309777 814526252 414308166 810505798 561498526 795296782 665349338 799324386 886212493 908495929 475007864 703297735 256637151 362794760 839334662 975979843 246845255 252486515 786461384 925353229 321034988 760466171 690535536 908652424 32903165 909876134 608482401 687414940 158263567 779863699 824598164 925075621 937888426 952590026 319598452 482898501 207164563 406726780 19146511 971607659 65533349 868548374 992796729 993259720 299560233 464923363 29432083 45173274 706455487 993815325 490391495 625126919 664408576 703686661 635609259 783787512 128528655 696293769 840787757 959620565 390024056 475986967 171130278 712101832 694147829 874238918 348545269 389513348 85306162 658240247 191968986 225038091 675952506 776175316 882128524 928406885 332521291 733428880 740350847 833192562 351016225 660763867 651251766 749792353 244580896 524955060 376669850 951842229 131764663 692261279 644901667 915869454 774483350 918673073 573536341 649710121 846357748 988112483 353830406 878586510 898045064 916987243 584991087 832177996 847231528 895028049 993286517 994136701 159737705 894449157 342569700 417896762 113643209 375719173 880872600 912654796 361527172 950543070 969937797 975642860 306580958 631395428 375356182 732196556 222775038 557320257 544430895 850471000 37011710 613978059 136931321 988076868 106363784 345462363 922585069 973833079 803324476 949690755 448572626 847160296 243781784 767808615 498548730 878048373 552403943 583385585 994861088 997196312 464934554 543526512 572373962 998454142 67403594 168688207 547162702 964425002 266821382 327035011 806094957 922355993 217867017 281354066 846764472 935359773 126626343 492941320 29771528 890736405 816005607 892447426 308321175 404663278 478858807 625948046 692109331 833678888 214261757 796208868 339215290 554108283 975110152 994203331 474121458 575193983 666220990 773629831 795254675 812848636 229753121 858336338 88355090 974906582 481981305 885501573 348809552 977276638 447071194 538991635 878752176 928639455 972959706 977739243 674917109 993846183 120978577 872033167 151698827 345131695 444339918 727665230 956102408 979704078 623914878 982122470 734239977 982949676 696002354 839176204 997458323 998329399 54338334 130312186 33445946 826847077 146628289 706990776 353531123 800130301 762572058 842962249 213200567 375592103 674819351 842328983 915591235 970903943 638424579 958176882 79142980 177644566 199692608 786268348 698598256 730995499 35387948 273741073 859317554 914949127 399809013 684723393 676803495 813911762 575443973 757467051 836938336 914878406 90724109 299857418 376155194 883741904 154727251 568522284 175558232 994027435 365308949 838605516 104540611 581809676 44468555 425043175 788949211 978885104 550239085 689667718 637700955 979509675 779132550 780568782 172395677 566432056 872367154 935579062 936321338 957522416 609007634 829243427 595358874 629541656 909870120 983870014 932853424 999606894 974853407 981046264 768276401 768573088 153825771 213633087 549714700 572033048 83302541 687858149 406734933 539543769 26974649 235950417 533944966 883159732 445420384 483498538 541394480 994918000 943707793 994129352 664502839 878490721 470798429 514872481 26699045 891313369 400934595 611756988 264982686 824270529 323805793 351937244 644241459 666663155 958495352 959760301 322342483 709301684 259400732 758988824 439639949 789404561 243177962 661639527 330272510 689965535 537930569 711118078 889405867 945339571 924683565 960433302 795053515 915245647 49641679 798278982 821370092 865398161 854216149 868445158 866873368 981126293 947794313 959115877 348894527 359724345 900662842 918731791 931342044 971884913 286914932 805545315 981517100 986448224 316910147 893943843 918473748 958388167 236749645 700022828 290918044 780128629 773751608 874778408 489806136 888904013 394909220 625040924 356928420 359853507 897223281 958335181 19301783 820463414 29494458 606318448 383629543 790973988 894716154 935915389 524377911 969189346 24149156 919525694 302935819 937006414 279117923 800916179 574634973 789546724 489066617 924650064 321536006 688140314 142969146 873221370 348944214 542913298 737174126 960533273 346814739 469259096 243752732 268100413 935602515 967153812 850544793 949885429 933678263 936792055 223086738 502956536 662284411 795830307 6953455 780133202 549432537 752801790 261935263 506581785 325891824 334560556 74870709 273076668 321391461 787050998 993694511 994607288 799381636 838037572 975096609 999146629 572909804 586077906 415764246 516246142 179196 551168861 702092009 886165540 342538865 853842682 526982517 861322249 429589426 786494650 403132920 828197564 254473043 544799343 473609310 739189710 777117582 859998757 221993644 907919519 824601256 944578554 538832145 802744045 19443293 980159274 248513111 610997582 4226908 421845544 363707144 585766847 469199142 766041303 637045850 679897839 864403023 886234632 377970809 865540204 368345578 588653999 51016240 68626019 745146241 839615756 543837030 999106014 308227468 921978131 406836745 735414188 678150843 983038716 47356290 789914190 285339214 739333285 190792175 258544407 945059098 958068353 754335083 836948411 182453003 626419483 779138256 846099327 598161485 600662481 849937808 942804388 416050741 920828881 357762048 502105366 890272352 915541344 169491786 934575994 71094723 405359788 198245947 575783162 737297745 905749685 774897825 831159704 620812550 856924984 743708708 934230863 277656361 844719474 276470732 560199032 9307775 28102037 356708609 404024218 345920492 839965999 104679892 491770875 733142324 884384100 34531114 348436051 604534295 939638355 272673823 644414710 641704615 888494497 674687109 926665497 714469580 735918379 32726321 165173451 603605490 844572764 349300122 796564664 432022251 949981386 27923909 451414060 293274763 624569316 772585044 962401956 318171261 987872508 262108839 293934038 238560033 981570386 449999244 948017875 392700581 619807255 383090105 488920673 951605183 954780173 530242911 923893532 471009664 692014724 845700777 953452712 75112074 145692885 632481550 950102910 526232983 998448864 432944044 963208583 972308560 979851833 531649916 992824559 164556252 893503001 80731153 457095476 948037867 989976225 648839192 833332531 239226387 349909758 610152816 613677508 279729916 908308087 900157981 996777031 645051371 743488030 416048743 802369727 890020817 983698354 809636679 913083328 450858782 569868972 477356003 510005051 411388862 827259130 513626710 620602631 977592827 987905976 304489295 329159460 865878101 957439041 693528913 883684854 561917160 592573704 110569203 192283140 636544753 873275542 473715608 628697587 590568280 702289218 445059724 858133281 639361396 710937619 871030045 985084934 584318057 686816987 484598058 647764565 205261013 516194913 864278302 934992453 282509550 930004840 789717591 805291637 534456801 891677070 959681531 975804078 622515656 731095110 912058881 994253949 109078560 933158519 196740928 648529656 44603724 510362570 539509340 937027417 703358774 999592258 289523140 724906517 54355607 721442993 772618364 979880591 200300970 452637068 792061382 883752360 491362340 685535550 180011360 915838312 702946647 969063224 438085906 525354169 758750117 860128001 353706167 634905863 113643259 465995167 543628532 608998179 656602046 983139034 81228277 810694029 600534437 768613279 816052856 962301088 669840676 914747399 565575165 620536657 151258347 595131367 384511219 397202768 416472933 534176412 160542855 930552987 440892512 891784138 642667814 940875446 725500808 810083746 145552351 391419167 644010522 808340333 856577662 976286412 314040648 960388253 481499578 976528171 402966657 656555482 47744480 804858905 306061907 513693845 126744781 978650717 746558103 830859121 719290346 814103867 359823354 457878678 890880675 974597664 430364446 832632078 587100580 846711090 921789393 997177180 194400672 486754637 433074539 613312345 107964267 764606772 309676524 990500140 161613438 575494630 367411280 726727802 326992609 408409535 601946893 998393082 656582818 697137680 644159098 803614543 612705431 821886485 576208632 713496505 68789999 85123535 477695717 747415153 447766495 476715354 986559726 998316245 780395770 957879701 248416048 757876350 29969076 357667432 49080422 796935446 881206903 902191045 781722900 891860929 40515380 141254260 898751276 933901867 176490253 729122067 182913574 700787020 423586333 890958568 205289409 227321169 494236029 766182427 124047393 798161588 226167411 328912141 93430278 616566361 915759978 917969303 998053804 998916439 965456821 992242596 335604907 695525016 776793312 911628219 8362894 232372949 559558673 886632777 70223640 613773979 915808390 947543466 610882921 948649783 969348911 982321013 46612747 636668788 885217027 931369280 551725644 845300971 364951310 817059732 177909234 254544957 447513487 993735028 507482605 809392450 496718520 689400188 402744653 648486894 348745791 900098566 688390926 702549993 170319158 869760122 635640498 733873407 610634559 819352465 645464033 928261910 222340653 550652063 133260871 356552910 184924047 924105805 103089252 474735402 8154142 846913644 593355275 759214845 547270049 774084497 251834403 617160791 32197627 311376248 513026180 700356491 458957526 838177155 609830170 989274734 151662662 170946734 668951661 786473749 316684356 528578499 403424844 690112028 450908059 582546043 575574186 775830796 674805798 888959686 211897477 856147930 967846316 995615512 50860136 622190473 350281144 592501984 282060582 428247948 165910280 570358449 623693032 671554222 573643186 957162205 521382160 956780149 913319093 940979507 544703818 804729845 434154652 742412815 319731746 736872110 499301291 783034849 334948165 568972416 397523214 740788377 705802912 750872316 324255091 922857090 759273236 814289258 979745707 991329668 22283662 724118638 85847129 147231740 311962364 572000260 330366842 744810127 807969149 824347052 737078624 888344570 472415667 516790446 802806336 899178426 460395100 710324894 873624991 995764295 46948810 683352586 660290248 826312311 238945517 451942540 234756435 531459611 57305414 854369234 569860585 648298460 121007832 542429824 62723909 173894672 406655962 649159884 382599061 629042907 713530066 727961607 977700064 985163543 481683065 936084995 911159950 961003529 891761309 913564694 248380688 614402658 484466103 783452020 438736465 877154897 764741426 826101614 360063575 842080751 84345713 529493881 374676021 788024005 440753418 915558881 298700894 783832789 869904822 921642852 432022382 679550099 845407519 953199626 186738992 362852850 683499443 724170722 626546027 924239420 910754537 954027372 94448650 610448272 858086034 960672712 212809367 235964960 641206983 665748825 368959502 475001432 53421733 813953460 748638689 854535025 815078034 987520607 761883923 978320694 484171402 549596591 472042572 474709075 374436160 509324460 110568147 373570391 105838089 753292147 136282532 490350148 3906847 391112017 523236897 596267449 558955102 780435561 134721205 244823458 938244949 939420811 84890520 339011146 826977184 859691132 193229800 919706621 10719239 504981320 684016543 847034226 386456222 501366259 952430264 961768715 287440702 804549897 783178463 913999910 714359156 851076596 559827529 836626248 943838741 987779028 322471142 708842730 249754745 587083560 104300944 350734084 235234966 836745012 968842762 999572842 424387011 815344929 488390122 650265288 289898047 756316601 182231118 791856745 104370590 706820242 248090770 408840587 180624236 822720189 284303415 475873628 570520356 818023430 227376383 672649017 73712368 161715504 668496070 911018719 882465142 958443801 602300494 844956537 686483052 796641674 354401055 584246605 666263188 979290326 72120356 732444209 844144696 922938517 467379271 978469250 509045723 709854319 11064862 56874847 836319077 960716492 148433421 635964477 145036209 863433746 651394511 958532897 703152602 898517731 897316947 960259224 915535641 983265591 105769483 601726795 88333500 219298031 1492490 180535881 796195324 941855552 470484652 583559819 568108095 864458413 897750730 921733396 121873619 349720743 14943836 725636575 542552933 748560409 140574598 943248072 677482589 813171936 267111799 417302040 606732276 919759444 280277150 508122995 691293759 918358766 552053900 918851724 519758252 729667253 884859968 893599855 94697915 707209363 863665850 919752719 725559547 755514276 795587356 968905974 666271673 753682241 416755935 707848149 610261543 847731602 488596249 556105992 603938974 758457390 405781460 786105246 400724981 864539828 122588546 188028052 468750032 641662368 546884783 940626450 418414107 602518202 679172429 913179690 240052687 434392271 630232019 929183024 109365749 969134195 358810534 941210809 653065154 952526795 709575487 847115020 129809597 334984498 315979854 656171218 624300611 979601155 24133080 454330023 385497830 559058553 494803478 761328245 300790403 807175820 393880987 884159826 119940071 289916599 282478256 673850417 252535957 337410196 280434590 316505120 10361996 357053316 170428897 238505685 746022014 975943663 110078126 169602823 668516497 997924535 128693712 161759207 378658422 455435205 127645030 744474564 636875940 978125596 58425743 405991107 745290238 778557165 981688993 996388656 486857033 977962717 572799305 684842029 762009954 921020702 855068787 876521712 71493023 317437624 999407395 999723856 453178456 914195068 800960316 849095988 911332401 991195248 606949100 736862128 622087458 678310118 602115963 957938677 748711766 986558285 887656539 946155119 579193299 611321604 83711780 479695857 837599517 924814719 968772431 988360291 501511373 955740399 29313809 877588805 178244310 185844394 378862139 603869833 964899596 973838451 445365835 521132052 241330847 876994259 724796125 792870152 959321271 997351127 715215997 946329721 604549386 917421542 595604038 806748492 474748313 723260411 915664151 942812211 177827414 462162747 786423971 967488573 149308015 371555697 830805580 905057887 900283031 903184741 961218094 980419918 666596118 881543478 774963443 956628680 819997581 962936046 231483092 569642620 5929847 410570790 611514535 750580636 43398831 554181395 688090697 894728709 326567234 483179622 236541287 352297247 193727747 997351014 83666095 580429366 509724922 546351843 740526457 742113226 724843810 890609044 112239776 710748597 190895137 610087765 612381570 878246461 857414557 928770674 418422247 627436313 621982294 940413055 197794908 359659141 288636401 942495403 482509717 630182362 592430956 860384243 747366697 783914364 961382085 991884833 121459060 156404243 708690316 930042657 824864210 881832848 911529377 928880202 453345099 640888371 134141756 222417313 504235517 960513054 562537158 608844538 909602430 967754650 881984000 891948187 478364234 670631699 53809319 309695120 854470646 890590871 843302953 919685080 558671773 665737051 208743900 333742998 145841729 204025703 362252153 438224993 84237910 256875537 67237471 794184405 179834069 483843971 572805872 788461626 651036806 959728400 918299180 955532484 83191014 804836536 171243829 258338427 974097874 996058981 890164485 979168112 66364184 696858568 496979197 718203940 744770572 968687403 170940996 953133132 607452048 990369319 860549012 865103431 762572840 783048377 579321372 715433824 594617189 734301107 728098282 866375780 925943927 997958591 385883011 752509857 404427381 520399711 422559822 990952977 423556902 456477904 155398155 506512532 244029471 459217359 962301354 963973896 792240532 980582141 805351063 882084668 184185651 663740633 844373007 855651037 713281033 843083893 338975568 587677680 766916726 984803146 495082249 702967931 789399791 956567150 69301205 687483259 631013257 637598144 146575431 151312772 674734285 976820524 958563396 988358509 427798077 899862761 629241883 908557918 871689947 910859792 296328653 607283376 529894472 656321727 613034604 691492355 504060072 746392481 798942525 940069608 189538741 936391535 475479563 480209893 351910674 418096576 549392285 710648056 620046426 710983984 905630867 989021614 396998785 759431884 158565670 506201403 310374260 883185877 584303130 902338171 632442264 822760142 42138328 662463733 21273331 420416476 548684085 952663207 742270333 774295318 547568430 747903209 497523047 779161465 722820777 960898862 285267927 555100375 760557298 801966037 782460670 850098289 985789511 998626342 149194656 473639277 435688631 925937189 952600987 964552668 41038635 90376778 406617818 532286935 21798110 361260160 958453591 976922513 88023691 880380708 412731633 715373160 877767381 944255187 445822947 757974206 860974666 946703580 537514583 949767812 916444770 954125990 667283686 864501030 69556053 576098599 431041234 630580138 588171421 933951906 109224627 281043720 997083031 998140136 34812470 718397995 667350061 856295688 906425899 937999665 992521776 997558019 364080865 397144764 500078568 951148245 756428932 811509081 966771091 980792318 994555739 998937125 329191224 812546474 938579474 963502391 278742735 297571283 952633607 966361983 278153061 758439593 340898752 682490431 663489098 669758542 558413811 867165254 999355740 999662047 223708378 328496836 379120050 712894348 323241554 884709124 420488679 561785392 394541219 874940508 468568132 973643842 729310470 948498850 668058972 900048487 138839665 842945663 653475350 722403616 795894874 864681064 624106710 635673126 341895484 389503253 777300250 874208623 448193059 650048949 780205379 998248575 428146975 559154286 444276169 549220051 700896122 838655019 294641558 642259823 384193147 735960842 913033359 931979770 326858039 847315007 462052362 513969306 217591909 769993476 988017291 990926012 714362587 992327209 822511003 930828250 382365365 983113437 840375762 872728272 501808669 601194140 797176551 849933586 616969301 987197310 758168711 923339871 542713778 753949783 205515452 759720580 588997485 733658452 682291716 814320023 932040692 947128483 252363054 504520952 960126570 964118389 753283379 954362782 910332100 923060978 356078380 752343130 985959176 995690250 525785151 931582641 711514683 764600501 473254465 939372974 213576291 572697966 250112601 987316415 752354693 930866461 5554562 837242498 359997902 786284453 224406120 820846949 791213168 973090662 270504601 747635116 832978411 901154329 229371243 615487907 628325162 703545730 310622656 364542533 279205810 846658648 93098496 589990085 203754342 828848951 946566783 959093938 728273388 982464676 308979605 932774968 684864352 947213245 6499010 648678078 999461797 999889888 432030198 581270862 477227295 901062158 784158742 848342766 274677837 936390883 437760882 858249915 511683759 524050349 328590175 938148983 534310081 934256372 878669197 985735761 656284205 707179738 753317751 922879732 506513576 877208241 918559469 995682418 471875537 639893274 627750414 637575477 876209890 906845629 337689411 624774521 712551933 845335868 778875079 812396149 597627709 642690304 831559174 987492040 945703566 990008860 220948004 955539105 600254375 950222998 783487314 925290820 125482161 835856986 35550420 229449705 70314433 118651123 399525734 581553972 25044633 151917337 22431270 260365128 437421091 610395454 97239868 933894111 218922374 582806885 854763461 872202077 111909427 711234672 939187266 943794673 377836127 633396640 451822183 497249416 434503164 775176163 324404214 877029275 142957486 176866408 672086046 954638688 166485819 710530950 327730761 778231481 745703561 771343815 770164669 910373408 656701819 820721725 460210432 725539187 226052572 497868317 88789072 385882731 817105811 951218916 620534434 648751882 945205815 956053732 179471614 392698379 870260823 902760372 959232692 996755683 784265127 994882098 202374624 245991096 617943086 967300755 51803239 103430341 198103954 224799529 162214669 999673288 140774831 381415990 758700820 990797538 925632691 997600208 470001303 470382623 824718597 876126727 995307313 999037932 54903245 815343449 540633839 655639463 834646313 947282865 790985910 991093354 884683913 968877980 730217259 992171042 727485741 798703059 23364116 139506574 293262834 882214782 825929036 920109181 834809650 874912600 839930481 889596450 320724517 644744812 641930233 665138641 990164854 995385822 540038182 666172544 918742079 977399043 237872176 416497565 498045182 956974239 511021472 616443499 348652682 870323766 112420656 583569769 926644258 934793504 990556246 997933035 219333408 270131383 434993006 777774900 184211607 787701324 350289570 408313173 369641135 533952486 836075167 888173835 866461062 916282071 542557305 759754029 765186845 970350231 56500351 731859096 777625689 880552784 105430651 528619593 141071575 906801977 603140902 821844232 470617409 791957579 332239557 925779457 422840008 762691621 861016339 996820713 267676246 561303170 349543757 552118611 132571618 662013071 398956269 766641540 235129174 240313513 60322615 995936745 725377625 976366839 508807295 584702190 358087060 746107961 67012282 356396953 942779795 999642866 374368542 664203926 978144632 987601500 841760629 867907021 485597791 727073880 214901980 481898289 101020363 253006377 218220577 540353428 495816988 510618066 205654694 374431667 447197423 638189388 733454908 860813820 424103127 794629675 560162818 573135372 980327981 982048747 330908194 918123457 839137016 980398795 933396063 940401844 912935030 928803862 961649012 996522685 562320521 719575783 200329314 354153768 313470154 536377425 174764751 688936062 364009265 448393921 24762811 843682461 637740008 944533035 212957128 716968191 663671400 811019600 268874606 599021298 635290892 972888842 227220143 652943977 628883577 797517497 136953273 474960194 523101563 638369424 754563869 772011446 752063593 997741552 734492991 922404143 667296210 958249351 231101399 634894307 488459124 803133191 462345698 534608663 809815328 956740397 708010644 778458989 177182217 952022088 749101879 789889443 135266297 349019377 702480215 871267533 378485437 906497416 336899601 628428672 203889488 466907440 458856536 757730249 725822444 754340929 219802117 342036719 140536271 347307314 399033525 832522801 546077689 800517306 174110928 197388359 471115207 664536282 825662483 830434100 612059706 803330011 674131448 677912506 292144706 673169051 465282955 775366802 646076972 776423944 852482753 928219871 336574303 687897117 262368299 915548520 647689667 849723918 369459559 839641342 821647627 833723218 841695861 842966659 769026167 904787383 467101882 512171077 305581226 590563068 320959468 522358117 396026451 430984591 68964720 434081186 941402425 962099069 900906919 952591019 553046755 593349158 463609843 690856795 42036918 648762573 647489377 679084205 663785246 670173784 13219371 345244833 457766585 622066663 459532179 958497466 495626860 583075361 694076904 722935005 208808242 447839149 464965177 508480476 334181295 371417627 642818526 891990257 923575785 970180905 864690352 900839383 344948455 491700287 177773801 411052161 534399217 984810443 682105481 840126362 931556564 990616507 513791531 653170639 60402989 398954147 57727763 315104288 428484646 695582726 514993041 843204646 577065122 945350643 420667912 810007191 726594747 950247629 386026004 985675307 136494900 415980908 630428940 637772942 559418613 778865994 818695581 896283579 789210723 902480610 158631967 903782831 866322546 936028695 557075304 746132151 387304823 428120569 355288885 958551956 505707403 541416488 514367750 973537846 627790607 829744343 604503579 726430416 761411496 824889285 249980512 566322040 6907533 467219103 861220036 990660192 929691728 950939835 312194373 640779702 114127819 139553607 620389237 678766730 812530305 838931620 561588722 961492796 415743536 502412439 854509030 894604038 219309487 775264181 279418992 636802503 835958334 959004774 193288946 317701490 42158364 181586311 21407844 984456045 875914886 903375681 912160498 993065840 895772155 905131592 510633724 582736557 763049632 795417459 325299673 403730924 756784466 884037056 659304219 900364771 573302520 579629476 840981069 946255756 161182800 525408439 626139997 934968685 218757139 501657695 549548079 759281726 809249780 966549733 531236090 943637799 360961399 818299169 73513677 583229224 187171370 388279685 873185294 905572632 86464142 340793782 280034257 352719875 698910437 779327745 879223506 931783997 327568461 360191197 872243277 994495445 307730018 910808362 85817754 585503811 725540951 851056728 9134940 404192459 65859838 773616462 540678893 711080270 366570644 975190558 400874944 467138099 664126907 752236178 930561433 971019733 110257982 226417808 420795683 492284776 654592942 657266790 659894054 977982032 312166999 693004695 687585237 921104044 956485471 969946167 516812148 795969786 926936445 953153603 692150034 945084767 164221055 744399617 43839130 605400553 905924650 939260967 883420551 904207556 505323550 652590648 977140152 982356505 810058474 939127795 67279469 162287043 385779338 869468175 470095867 971576326 321639175 736771883 187415196 704347888 639205870 662475567 963952228 968361103 183224805 764380161 227007885 582211151 882103782 957088553 181045842 737001573 976000483 983636418 202757636 230585373 67745928 541837384 688481892 699232104 243291029 606037404 652889301 736121843 656053535 684899139 101988540 641600359 843950461 887411661 219267156 903188509 379533275 415207235 709475557 984788915 445819943 614449445 238822584 779347186 598145122 915783680 50527244 586758249 883943557 973098809 317235684 887722842 243021711 429346172 518498272 869441710 290296526 724237541 396284484 673938328 277047893 974516408 818550956 973900844 855321171 884583030 26447041 855964838 374725689 404685064 107045889 251804358 35921980 674961864 577795791 734353500 365248556 955150425 243833321 501632907 960105046 977233213 731141169 890800613 467961994 837795962 103912682 367685376 809244905 825051824 469871641 655801282 86040280 831596754 175810356 576778870 938296109 981010182 342910257 957333800 402187425 640721861 908803146 961773094 50612155 996528989 780671170 950457458 847535939 850142071 806851277 831256665 409627013 789769264 245783612 343223143 75619212 968668021 18318374 20546757 629828103 941324823 290092740 692401911 778288118 830445626 912808581 938528153 861411387 890204846 859402806 904714957 4440284 502399823 586417778 941147993 405993518 742823330 171202812 477096575 172902252 630680255 731328440 935245480 260655675 477886046 856610009 880555622 349465452 963858420 466831353 887322715 559488094 774164393 558562755 917394230 336175753 401857669 840846855 889165475 634379257 821546082 969349467 981484705 648285475 783442910 192439877 650835307 943847059 948131343 63888125 756799691 119392455 950897872 174017498 414589974 905662810 948908563 669982301 713811463 850591051 876165286 18395862 825330611 786832179 818318714 331336657 579474664 533350134 716360380 92478405 829723095 236073443 657386548 808457160 916566611 815979405 983327078 829672279 877693879 581431039 734253451 427535822 957968439 158413296 456389559 808728204 889611049 748349094 817908636 537794522 584313994 880315047 955292951 621768720 956210300 111019453 429993690 855829959 907025780 27766633 255179240 462894020 545337156 973294409 997176390 479710608 512564931 896109423 897895527 689669194 953226009 806284558 943938993 692993425 943709764 885832952 903974855 422089711 806751407 273645350 862301623 703619068 943752513 386961871 842479279 665404513 835390244 563683972 818558870 54792239 629514011 517412141 949929015 271526708 501391693 374831541 629227860 538609644 909602330 198229759 922513681 467020902 911851960 273560578 437421836 390531111 664759437 800608929 933302218 694718150 762205176 20922058 648233832 509428922 522334805 40433240 126713298 600143733 745582343 135482921 591240243 327861661 824556289 260176051 430738992 894971445 915864302 728547410 847194013 547124563 550682816 360440544 749902035 224220537 388985045 82438789 323190584 71900185 924458671 958785 661181811 370925023 992738069 111761744 212020808 832211833 959060294 155493276 530166615 957427928 978804485 964388264 981168143 742940662 999158625 815353854 969291859 686964968 738746050 638632668 773947712 635369821 978812137 887688937 891294241 638409776 912381525 19196443 284748479 588430049 944545066 230123216 866015777 15948074 898763887 731371168 996504351 85332846 787449957 497629117 860410032 709316952 730864680 587768851 799130172 47931114 309800087 767933457 906348277 479768882 604741861 275162833 537086347 634152718 906994713 212251401 735191385 366034069 927742500 717208371 836820251 327730221 661030490 974734267 977393912 276751150 285317548 984941496 988712628 787028205 892904306 646411280 667777028 95445214 838788499 874078169 892259550 974400168 986341336 169633075 809336780 163764174 807737552 330317959 945658417 721985617 994437653 737343004 746911356 874571489 984424715 758953260 822639068 723065449 752389442 934430866 988848502 248655729 767382477 337692294 544055496 689993850 949485778 688369599 720760697 711420122 764667973 170469638 932274394 905452637 906898489 582396634 731600664 585346191 769619912 7351813 144730676 614979808 817841049 96028525 433683294 308092552 605977339 21626764 901126595 586531394 902317564 736083184 755344768 195621028 326455540 46731592 795220719 60743927 656999651 995275904 998559502 184167718 476424195 375741969 735217657 862052553 866048371 642011971 803372455 407412570 837499695 343002700 558517205 452132948 457009211 197786380 943686084 726390172 962683005 58472284 902374012 503690113 778453762 124312715 532604394 769461975 857853469 813855137 930755589 748164670 985783803 913088300 943174116 895332232 971975037 181296487 643797783 492809453 735755047 132221038 184544911 825876595 938461309 827609316 877327102 827176383 857418393 321671765 329172573 391198168 560101410 359650977 637017954 682933551 736740512 773998689 831710856 366635228 615172568 913153813 960576526 275915683 663703633 102781085 178166272 625451917 876422718 2479252 383836286 857049764 958838356 119852021 698071276 926422767 927591653 86060308 130098820 703215955 812519737 260574998 289603591 789094359 954077406 552773216 716280578 32573099 542933095 366934026 873919368 742389421 815021875 965080955 995614210 557837863 577480315 74955473 852959382 939144964 983533202 634157436 821929562 158147940 918390055 574488754 843324348 436603063 988203625 822908173 878251460 640598084 650665304 735394814 918963490 162944540 231516436 742024083 934399510 11812225 108931569 703883410 707626616 122283316 765177711 291724000 565090039 412300030 644027128 96436825 390482842 755646102 957795654 518459481 960011336 503324319 981602575 702115485 888822478 747257879 755211152 202363561 266090058 142885177 268063572 57800940 526070161 209240582 403797358 293333289 408487357 73656880 390178854 395420764 705738173 638684613 796687022 266637620 483905546 184010456 988742590 632082403 883779331 237180889 926571494 732055812 812761669 529635877 614976424 457677478 576539001 762189315 800298273 920084858 991722988 191872885 233683326 560419463 722183530 575376723 952849608 909114045 939469130 875806704 914622520 561836020 775255074 611659680 906367614 111626724 397430871 987349852 996833307 625347828 751771585 471718652 792668255 676571921 815226787 334022387 746898325 63697788 535871546 269590174 323964657 324529602 578906160 971126206 993157299 163547207 557038149 537289449 861187338 911464017 922621236 206343650 253395477 646414959 816292178 687881024 836530475 506400355 567719030 657598711 869436809 186235322 445346843 787445807 828446896 401948316 435947153 473661117 977798639 483914365 776746781 402409413 417433370 451262645 582786221 76208127 860510136 782114839 855107766 573138500 588894144 397053234 852307980 670609026 747674896 94807275 645571221 134339612 333399578 917759287 995968339 309735284 866240711 508348552 571426952 125416718 510572716 691510803 831031632 377077018 626798518 355232576 595709724 598158994 628691683 390672962 760964304 420204818 948253685 643609802 955092449 814132987 923677720 156197698 769252153 120496768 928918394 722845423 801299005 588944422 922082219 147604252 969078974 655420318 975782749 261942402 789175618 403667119 436665789 613728028 910581559 171545247 601258486 957658525 959954400 33782418 177996885 952835328 997075329 734663797 867302076 843447013 940342285 199568048 397356044 483514676 760073445 793971113 803745830 196124761 401653947 562152974 580989100 374449627 431681093 487756823 540483679 535807301 960489386 951125087 992279353 146005316 733969561 16216181 842282158 524285410 929773812 534011843 939449924 351398417 684413152 566888039 912542143 178833680 504940406 736785633 808397273 431067962 536603849 358654620 894003799 5734028 373509043 742395735 830795930 503568206 511105901 178828457 271466469 763480685 824745129 429724577 876388379 315023375 797760801 934500128 986073587 659056909 904053882 40880820 779231027 958743043 993170094 660883020 957409932 480905670 509266285 718838750 943775915 908386219 934535394 933293162 976266136 148079647 992060992 294120973 889117605 242672320 762495502 971489134 994056237 136593849 822043446 718294272 980609021 911021213 963567887 830633184 974849506 536277165 804102966 492402139 897820783 485270668 686675542 24075734 927623431 456181947 472775892 952475859 960846524 265717379 637285072 172835437 725842048 21266597 849842378 638377274 938581393 774900117 926663811 300928610 765039999 413100215 581464509 687694035 786983009 92377895 650428779 939170069 958593093 248828476 577884043 841257125 842725305 958740578 985550330 746342757 957443459 121405792 825450319 971212038 975490927 231791585 869815385 598180223 741632996 561970365 570362259 656767936 722141595 336991626 790268790 275447206 879545143 325892465 613937135 951468522 972987197 205769180 593719445 119775580 907478819 114037143 917450751 487528829 705417446 336968131 569287543 301322512 863235061 186530026 402543547 405544523 576043281 329303740 445993524 35729069 988680924 240537742 562840580 78905347 841254982 865176220 952218731 710919222 982412143 630050468 748840319 533369185 803482025 130192087 611609705 153574442 245494260 850569443 914520704 298810347 848479425 259404711 525357078 403984735 489987332 627318132 943421134 799930419 919978768 672434400 673743754 710983392 825433080 922986890 987324546 74593843 942008257 741869617 900283961 280241488 435439364 423219671 650534851 137393949 302808024 489378675 525614526 703285257 886377722 430000227 492806026 296483302 441568548 630003904 692566983 853588978 933814887 61831180 247700536 974213086 993804692 413860592 934665806 362963699 986207820 832711513 856939041 230107180 459665572 91267711 896725946 779989079 863136175 553757985 770853366 114093600 898420247 13944207 764823874 167773714 168739951 622525469 759514367 219357703 270922424 522556738 693092586 525770940 718680196 906543253 999320388 732837426 777121374 231524919 639510616 103023394 577349736 165818643 344746388 150756150 222316969 73988728 687608634 470808742 776189385 438496283 636341952 745197192 897236910 722008339 971578539 387189751 976501797 553334596 864810269 863081192 972956041 363117118 960756071 57513698 924391764 216515229 616115195 387476860 483061201 311883624 953513362 29670121 168708611 276533011 978931106 775307858 833602762 354636797 770195157 435129690 545889269 298577650 719417624 504078377 552856941 330518070 898370572 854340242 954732113 708077747 901399432 168489444 725778034 268842592 782257955 987307058 999782670 601613723 852201597 945668618 995313276 477865194 877040384 543570774 652693269 278187277 697336916 575517027 909803059 424572246 758958657 804499742 807910874 478765562 950611045 771142517 978186148 153817559 544074791 248690491 561488288 138492401 576080139 847827666 992790209 567536342 625562261 838512236 981217689 709686906 879217343 830212752 915476260 574243541 642310903 168750390 723593641 770036512 980098293 488537984 663296029 566653784 942420730 197865923 285580570 106447555 913194629 563008196 735736086 961025636 964568040 241853311 511495581 28489516 318865093 866869408 871461551 20833912 766535864 465495623 994015182 233770618 889655193 414873524 512735108 621294475 623066281 56111194 662427841 47932875 716758345 118325646 472145646 655814178 670546204 748823086 787801852 204761814 447484549 676682965 872898569 369364564 890944750 633466919 786017436 907157313 958182378 382368292 566556395 205726349 349010011 769013139 814442748 237091936 872453057 768878593 843752613 292917998 497889643 700198376 730902698 51537111 965998716 682243593 925480240 333611129 727534527 667350953 786907965 850463338 938476440 215363572 913659551 938584879 949236887 720779503 983008975 204703069 388585466 852438675 943225200 686722292 904529161 8998136 58853484 756201445 965155711 218044413 584597823 518667350 591432077 575906879 592420188 636618338 668649238 511475915 561128396 832156948 885558508 906722625 926160032 915999716 967689655 507330364 945343248 645829971 676629649 110641677 515853109 938493549 985352224 249834007 485130572 935608060 947262871 474382870 681094164 268204640 332961811 848367795 878105140 979912379 999831586 18296271 779310166 733219184 860074374 151659822 934770159 487838413 868598269 714754588 969259394 32629413 566209214 91007817 661232014 161860783 438068735 163004513 307959081 7534448 298695742 392816461 788103610 131770334 402354494 333452965 370333074 209778302 747427534 934995668 936670602 773608467 958969001 386093056 727847420 830288534 849058228 42931039 281240778 972026766 978444064 350900716 822161084 51540366 136960305 223366868 969918366 175351839 795925999 242984662 455653740 729428235 751842723 858287795 979417073 259582382 877636044 255994747 659271142 47796262 310855871 32735375 526889405 726125214 968743209 850031342 956652799 338282414 596806133 375305309 452425907 813539536 941680377 43937667 975954550 198904740 916100119 355273474 867938954 201266882 773229543 704032414 779290135 379920662 732117239 517650672 831688886 625984393 974304648 503571413 759557184 183318403 501244758 597378620 912055554 444970497 914861350 947950141 949648790 313007055 419382204 764136970 991947261 249988965 660546710 333850894 489122681 250399223 914864036 203724231 828563823 632188957 806821181 441587260 926219087 25526990 946989188 147816221 919375044 762632384 966338720 818770480 895543633 878110734 981120392 659037140 812989532 663121642 741601322 461316671 944685648 95427127 503646698 927803368 997000786 727518825 970815115 789341858 836741542 862792731 891951711 928804210 959214272 876859505 992544135 128467271 387034477 601975676 984391921 288679838 812175749 452412455 455275822 806057605 808514350 66135719 971892273 11027958 990516501 705949259 931348694 782549533 973111661 529010728 540312562 714598456 990987481 744383543 819440491 160862629 238770327 209992099 754030447 906437645 907291415 52787562 528477694 546837571 801849782 538039141 808887746 794820142 932771825 76455024 106432582 80993996 179480289 146224670 553328029 855508119 976414517 248583360 689317801 559491000 991145640 230392782 470370609 49380385 681401536 607308926 998936544 250163535 718964349 843027381 952118479 82024785 362813685 650512606 983411280 313451983 915275568 183465854 193916001 458209626 997728317 736789667 827067581 211154621 751893662 737383630 905503262 199930012 588087977 560378315 890353540 331899987 448408154 66122159 840875760 812372262 867064181 118076322 899538412 598842642 707692223 65218474 833408425 378684046 796552820 566737980 945700826 146164692 529585099 511281109 655164593 554344501 749639059 654982410 995608923 231748182 899383326 262530138 495305579 631349453 860808926 868348929 928583775 127437302 716220206 688214682 755848884 786579631 895509721 383502073 429875222 237981774 951536952 8046817 742601645 466734005 650129740 131704937 678424248 929380895 957333970 317044338 883913550 926423714 943377755 52079555 338198973 204436959 319211313 512399238 929707965 461744431 561731294 829258820 881503431 61640775 903276558 331175477 998532538 581553142 624806783 801810250 837881870 154067227 426407107 451641056 506748068 766563696 871200759 635795536 853993770 382042150 840600354 271462533 350405282 456523200 856904550 964834386 967103662 178372875 454010770 113729671 918277463 296366003 325269651 5105280 318091323 142817325 369721905 868898450 960808852 401085583 554186076 78129801 234835306 631156043 915089475 230485536 367346121 452642359 968695510 828589960 931116244 218535031 928994836 639514909 908985170 535796215 859716169 884394700 902886586 461225230 881498556 521020478 525760136 935651969 966985639 560939879 599307086 849675875 880034152 214510166 692416702 315973108 502759349 980887101 981745776 652483908 756773991 307088379 697695363 286031563 939585557 81205861 495117952 794255356 886071345 84430482 502359515 732123842 854662160 681294871 682614413 44097967 755060240 754541774 773565882 170033208 287630176 170417814 873192916 190822178 311968779 219426369 992610916 807164854 813137422 874915259 913290960 400264543 688192040 397242488 464669201 762908285 908948565 239496700 621404786 199973393 484660697 477127167 961214771 317043346 491271293 116074981 979026690 366221222 968845006 206262449 400757499 480092333 926132417 236388537 363626616 532996543 821560556 663359200 950631551 966383712 986523495 820632537 834232584 907648781 958929064 163819722 506682117 291993958 549170147 666505558 994666144 55600172 246933648 665971485 903970976 364905858 371382987 873401856 955691346 326208548 771937348 348527813 717127945 184170113 494398361 797614553 826990141 552349181 646434042 541358348 981263070 283603138 796403108 318456192 477099405 94240423 503300966 347088159 977377698 655363420 819227774 204006300 908457970 555846919 595430432 888102971 906948956 997109330 998544956 733106857 951423645 47108854 117147752 529766627 770234871 796045774 866605940 476801375 709936504 893412003 895463289 840980663 957663746 601495227 629767249 917753138 938601384 641972305 866698429 63308006 622852234 385608628 406793362 667535063 768853149 882618806 935873090 758734024 951648240 386526453 470512134 59830504 487965527 248009195 579932609 593829811 951872436 8572108 802834680 19818594 276928177 226523989 654843460 911215564 934215222 785122035 883474779 893183284 991384943 249048229 558805031 413900441 445745030 331666381 623948287 115682247 921713342 669842721 717900994 26330764 519063409 355930575 625486200 612239365 926600942 173328767 668960936 427998969 962535756 369581462 640261274 604475684 947642766 406396338 504262900 746040620 820410679 222382438 804720866 862201526 877105039 377167338 646002370 478769973 843690316 785351190 831976007 874007472 977749539 869148455 970470982 959460286 986008914 929276920 973214541 60222008 136636783 93636506 651536897 20239429 966250997 130472890 833291415 84375523 968397116 853074004 870543651 808098059 979888465 668464761 873193214 544860956 931662979 243810669 650638408 923389648 977602444 169211972 758669668 165457694 890001062 995366145 998547398 631976623 947105871 559073070 633768886 895389670 899019462 98115065 390246230 926147075 968014246 371612522 479910700 370380326 903608966 26169770 331287010 492591195 579944164 358432886 569443683 839704752 911084756 708761770 826180964 415816271 973342091 406412206 802663011 952438854 956707028 17959620 135106818 234924201 837801823 383914640 569178615 429383645 966375125 664887220 743325281 534525932 864030080 37921279 731519437 625190925 920206345 572322168 956327757 115769740 537603287 76526534 894691684 589321250 709288750 592681752 868701673 378963497 488002926 765469904 805536940 132444195 582521905 981512709 993562078 363885389 506513007 552204824 561242291 893218558 945299236 487974087 850707426 401020976 955760432 142476623 422473670 222254700 476324298 30835322 912201810 714288890 807552077 486762150 649726927 628915080 793911673 354203349 495235198 889844298 908562289 363811141 629793543 62533122 978006131 474928577 741426127 648011174 672912101 187639315 797339451 513306439 582402086 838051969 983575639 492267854 606249658 144480138 837776868 31889885 101735304 514410967 588026652 784341350 920893453 510866959 679070985 986399141 988504340 492434082 839667330 469824175 939891343 221283625 907215802 968437930 978556838 690457934 993194483 66893257 656709399 853780402 966217114 443484985 974548533 946696326 994417089 612047635 883401218 262472041 294858445 313925503 919477473 401826148 701628635 771281456 969328401 30208727 754861028 394596357 857875285 789489458 921448354 256703073 355200467 400200973 433281827 201208073 670438731 902987670 926185203 54900603 552146873 799828055 907472893 139015791 271861796 52283210 471741513 199275249 495707370 132935106 818653987 5646150 999899570 120814509 739777962 985810346 997241027 140819084 961531734 677928951 718404304 242642462 477807476 898737027 978000829 262044416 726640744 65755103 212332900 114327042 740952911 128154001 789500697 206493593 446514718 301479665 728361220 316464065 647893757 181974806 240457738 147706791 451266376 847336371 886828178 293787429 689862068 347164574 371785919 703340826 981695960 700391295 791004728 140717448 558812128 735936393 828250327 77718139 385318413 894373839 954783844 468885610 749079113 245592096 504216197 397218481 397792649 442700954 755692384 373403732 648761024 330263238 743617284 801169915 918480800 457574366 972846731 361499081 876783160 60583470 666574088 406530546 546521496 719176318 803375641 93408403 207347228 27499709 977853754 602209406 954871489 46396549 163409588 865319858 878958462 409868419 916402510 248390274 612949028 915249768 945017494 514763167 835886477 515390789 565898792 61459691 314218211 125219130 974899014 936469851 997148815 572270145 778009881 990340244 992820966 40970068 583840564 13936965 914699379 464619311 798238761 794949726 858101942 703384872 833863197 866400088 874577478 398371530 624907860 359826306 515407244 808132575 924715579 961423667 974592939 308449703 734905770 654657542 795074502 667379427 700272366 627620336 942562012 373489059 421227587 173691171 232977678 967234110 995032474 976535062 990427696 104986670 506267149 231164646 763108084 506631239 875400604 761328338 925951731 30048331 240722119 644380907 693708886 640884943 934174105 496841459 701950682 240096548 513196528 341794116 654289919 124518115 424355022 953149916 963858848 975656201 984580742 503774775 513991579 94047605 174349674 282437038 961207597 152940287 578557705 300043263 504285937 455227635 518677865 344392491 944547832 858407490 858776433 59811380 807821456 873342047 887958906 564993575 857385916 846678320 901904158 302279147 516299886 553372893 940676973 517725552 892258741 698004196 930630794 139224636 706880115 439468932 881686515 182584693 667134616 44643336 971082152 842164683 914951341 77724534 436222612 830513409 902022809 487645571 972183297 831358895 937870635 579249084 797234618 938286439 939178263 310294644 708866067 442759685 469943959 622067749 958775632 728508171 842393477 412686119 745852054 651938756 663883542 88772143 903869511 314979206 852951490 345844169 979502895 80188282 623803604 552857237 926454282 66016929 893084159 330232885 353162726 766720957 869833547 682194681 972311721 479873871 902678119 833196654 992606307 663005276 769733076 628757212 951535992 216097655 627451985 20939771 451612780 726117445 983116139 193068835 264953295 454848502 747901935 21570096 794416247 917096281 950643958 504623760 896298157 765968106 792370704 559434491 833629236 749376894 857986304 105917000 584619477 103105088 961182690 247756522 400067248 271803067 755306046 430171466 548417334 956170573 971843622 484029170 704188761 76403446 190409198 450406907 754921834 895708659 955247848 480483829 518936870 326933922 685710653 665591605 914357026 473695267 551080123 5454874 48456326 697042493 801091578 15256384 609815953 154244387 756754994 656209867 749034113 69341964 108664277 887857856 915274181 752999885 792978033 797300358 933906280 77048496 549244822 936465541 949086321 969166354 992865330 662828503 789398866 80237151 310111552 444570099 855996779 99667029 671656339 131731499 844218002 936928563 959944755 185721312 940840491 444501956 815316554 952281597 957498758 778356641 826052598 825754617 983326729 30916119 961456797 57446851 897625133 551844142 954712499 699954682 749046500 711668746 906358180 396181918 961757783 9078635 396940395 706698333 760373516 663898015 926706496 628406671 767447020 444437119 823571950 229669419 325729956 157921088 465971509 385568949 870532895 865509888 990177707 938653364 944332439 662738965 956702323 626236176 876849789 741467115 748987500 84166701 727915350 55068160 278412248 367874903 748492427 944275394 947846798 663681470 812486119 146005638 333392365 877993133 996867017 761486204 773108606 887273525 957067800 372526315 454846965 310419403 840345767 963063892 996964486 800732461 832359614 133133172 180117240 438156127 916269780 605983654 915424655 829185743 980678399 324494892 462567847 903953998 970895204 425829664 551533435 218052568 871484959 391612634 976136226 466301162 722917609 813318578 908750015 925184758 996466946 823085462 854634855 340960025 827703915 873694540 924035341 220222112 384716666 159687583 794713135 261387468 878886630 169452912 668892790 260846898 277210689 507735556 952810315 205797701 969217096 316432719 530121642 373318243 823719050 187272425 563845215 869481621 920933041 430587306 550736751 803478289 863790040 669402213 738900559 346208944 991562665 850859017 937783374 923156570 935157472 280634438 448186287 315159868 931893402 337452415 649291951 999643066 999987927 863167311 948997292 573770595 799838778 977155668 996337749 734397257 795851971 856165571 869022313 913628400 939059618 524024408 844266033 139634624 676785173 212220821 610242277 505911290 935928507 870283055 948280500 292574810 306617921 775105074 919582357 820054200 900055534 167218259 602705944 841577904 845364970 614346060 973551584 518345663 886970598 657276904 929270642 5313438 533493313 880736315 932690173 245690024 607794594 111377320 725333098 307167851 462481429 170942044 973339543 207221487 387640495 304577461 310379966 510337776 933512101 836803431 877492049 646905441 885373035 861584874 898030759 32493408 444453810 969833682 985583395 893897848 997086929 329436903 910323473 655960962 686093859 197391703 289122456 23376162 43320388 15722267 469036635 86317432 210575763 91445231 749816298 582111818 746830056 818090663 849221118 639403575 662692554 718313869 921645553 354571767 483003385 544084718 740810951 21135810 123775433 937656577 971995233 100773643 592296198 624391856 981573923 202440483 850122944 678917135 972117030 416269775 545084248 37346846 414501732 818445841 969809866 318042980 707851260 350002344 591636278 799198230 966585318 389924614 834484806 79680818 827582020 890815182 956638186 624985776 947833017 885843014 922538886 475309226 591737419 246368749 613398666 703419523 970906520 777934682 798248898 679552847 856744572 176364776 580317028 827012661 957704422 180355223 440652506 835755608 969069498 100812852 500946580 725752288 750255460 89983011 290477573 367227328 417432201 314688574 997513006 523988306 835508424 41647509 882551051 359277643 492875288 83385546 248925443 261930729 441287911 634919001 794627998 813251865 916228711 59788695 254789410 186467719 684566343 410323484 842327670 737525098 925307549 856608584 958538993 481138521 810055766 562884725 850275575 926051545 973415883 571710506 645761634 755991523 825295023 386948892 459304507 467741818 604547528 404021013 559899351 503656270 703705720 158027188 170540916 37528261 582558329 157807958 409577058 716466281 958730479 424435676 838264621 919485795 921378008 832479578 893668283 930709333 989148055 996432364 997934108 887292718 914622414 301056784 846610890 567146030 945340282 938808825 974361544 531846119 769706395 734307935 813806385 48267129 253432195 922759691 950482969 207164118 565691238 969359233 991659208 867893638 943002128 780992520 824705662 906684790 957024221 766505427 853581079 764691758 979782222 60793157 64386503 310030335 753534565 219888304 822983134 35676276 45490431 626845084 865790477 185106778 765984808 344322612 768644235 330423829 424780523 802248639 896623788 921510883 931100645 80269533 300478119 19369137 601912833 291991061 742717199 965049408 970035263 366984452 926714942 762932731 936281239 440872633 608981385 500923735 605252484 264267057 496874205 808857021 898322602 342707582 626852721 37679257 90921562 780147491 834323528 58272223 689328162 616290673 722300427 376792871 976832584 583378291 885065669 922458145 922783715 904417054 927775589 820647192 939287220 64019511 892927462 232978105 754447563 737004653 900661536 58590768 196379727 122158964 746185626 791888407 876316967 230999498 363235188 878303090 942726220 525939196 621766897 811735729 841528865 706745202 980406422 832969847 917802789 174512452 982539610 484477485 676048094 567787544 969683682 336190693 933858633 107660462 435964897 816170312 950493107 58111643 212625640 493474662 737208199 701806961 790685257 284668613 333879708 616627500 988273608 925883680 955721556 94158270 103916849 243000312 319039638 104285514 478965551 197557140 647734202 116110469 632209125 471529453 763066782 16348717 754063364 37904250 167005743 273085743 726721228 104047232 120226617 376380653 705958345 599749834 686422036 133950583 230617359 116148794 640424578 531645531 668788126 579387232 671084318 196232847 519591749 902669355 984324363 17727198 143856544 166637239 838508889 336904180 982001414 794640037 949255737 147025525 783826999 590548901 724024867 737185505 796902993 58127949 361104092 69322569 681204957 742261950 805034203 797191601 847933504 77106838 389523277 647478470 801869385 176942149 614136865 716240447 966396036 997147607 998634294 136634478 640976536 558199720 710394436 724063275 996479169 664829897 705853574 602976558 950963149 678507633 771374144 592211969 981478280 513827381 661104162 102475776 500043062 69325975 76066384 715872194 994155489 712524753 777484146 956949702 996898802 216308241 549713488 256237746 552142202 498298292 735898604 865683734 984754858 286227330 444812889 232791844 590355852 771524218 888936457 283350227 986310432 501351001 637637618 138355965 966959263 352439107 791417589 490066158 895466171 359196083 520716492 96894194 635516079 475041633 902291636 556721235 865250558 147534231 430991900 253998025 855116434 787434225 979424515 9298225 716025032 371156480 827932070 534074307 948009195 277739261 284027689 206160052 482444729 969947811 982329318 435187988 444229007 441885231 910266000 152580051 444133718 148760115 520373325 161589384 461767302 134632709 893782403 311803587 709247104 242455002 526265130 834623324 932051875 994470383 998250324 344168260 842633689 617369370 785148951 88661019 339189677 946485732 954333513 981639789 989909348 821873871 885157523 126156456 338849849 634749461 836528284 750370993 960389156 548457622 865354551 333883613 403751419 960314109 967033554 818194403 950347721 435338696 934216415 104062431 987501995 679571145 909128084 123011454 881477754 599564653 840552682 307214538 487433288 892554978 954296826 457844946 806100342 602899646 880932403 842004282 938353840 548680136 921722329 789943651 992464504 443508856 891513791 682166022 741098804 385622011 665408401 465275307 494731716 658757860 978825190 575541290 628502184 968759803 988986020 969688380 997637511 698567370 925368808 556745976 915390962 74131674 735239138 975899516 985141977 56562160 819940846 406079557 555016602 62776152 238602245 667066267 711593523 462958698 593318009 392416510 643153023 293329009 989150319 800701828 863143766 5141686 156673265 591067545 717956505 721013905 909788475 574809518 645326864 872524474 979902377 979131566 996554998 807361363 822022749 804530884 962102156 568187478 619340139 220168111 401546257 439580073 650241065 473670589 704080081 241302085 328674451 744726164 942781491 315344811 343305635 295196495 765176148 94092713 289301472 192491782 286770393 515507952 519827015 856757108 931562318 439187090 869722014 210042049 561225749 527752287 782130900 294503125 348273552 279344778 696020912 312080717 546590101 533573806 934391558 803935946 808996480 358687650 405263227 173109439 177171118 429335042 891702889 578243072 929760760 486548223 652080837 850768594 944352664 733090117 776836592 279479837 408063939 969883589 971103966 14101200 700193169 540872258 799635684 879415188 896760043 845126955 904627561 766744146 781200714 247872257 503708470 333622920 537438905 128216306 908016597 682486784 831698402 910369081 922719577 759645066 985294321 746060445 885483252 918304338 964311350 356831005 649604736 715823630 805662400 581851878 954369554 533428516 580864308 117548015 635626217 96955890 768454757 565957741 921198856 76556468 532344978 571874871 750343188 478579573 838077562 458172422 658722440 139831019 206940030 365045921 824710122 411802827 742413854 432513159 818914532 489759028 527349205 582573309 984484064 665875161 915765798 841603732 978564606 33726303 795363191 135937650 217162111 350749445 757481189 806012626 867251515 89097572 927947365 371072634 633706778 13447384 447834917 438292404 955389504 924619157 975952665 491032444 771500704 991407259 994440797 59413703 495041502 458226539 905091859 209755849 770091707 214240093 321879320 59705366 362978845 159142817 467235115 735285016 791116237 199534125 258057134 541336329 739432708 670231768 793598447 552449231 983580051 530637254 977260963 681847475 788996927 48744212 330597259 988612959 988902373 82923600 889594569 319287689 408202729 99658861 485821877 189805728 581521214 695506545 966211831 466068 357501519 538743385 927810876 347739718 970820667 46968544 657303814 215386939 931916882 710600323 882302048 871704922 899858802 628041080 996244060 748367134 869261749 520253177 686098317 631012621 644667074 910244298 963269299 379089030 506638125 91866672 212108475 695946665 814131394 375244131 913597625 534646906 577948297 765239215 986222946 233075144 312192880 536638450 800221670 127742837 145479106 935269784 948597406 890091789 901366981 844784045 876012097 155461887 314403796 35987415 749800564 467557221 963126831 896422176 927883173 369319483 888257245 42536703 235697297 563944548 816708676 132235777 287889133 841012530 983050734 464191679 952009717 978658356 996499477 310926719 877986331 694088263 961778442 643862706 717555363 37777643 990492957 311253188 337458652 553409364 944748600 409887633 623448491 272810028 873055467 438613553 649614856 398557719 753251979 229601295 352363315 827514873 996379740 458722675 863505950 624721773 641129665 396300451 683791565 797455249 837862441 924713009 976670881 751765913 809328156 608746364 893870795 583846304 945104515 73336747 720575322 982007212 990710706 518292123 528383171 952370550 978167608 520739204 650736992 379118625 981213696 235659929 927443812 644769780 923672569 480342677 741467853 710061857 846110580 952637869 957175808 368088771 488700346 573029699 893126517 639374474 645073202 990918025 999533492 374938032 846299649 950170741 992305439 964509736 989097348 723458977 745118491 843189198 891773708 139286338 452144073 815563210 849505429 106106189 321632589 49787027 181749801 327845175 823016694 757635613 943340341 131097906 997949284 252152315 640153071 512338613 928065242 116908548 421638375 714111852 937377184 415228248 477412416 947585819 979653693 440251679 802302507 720978321 751784231 380620915 871859161 244285807 855592839 539207337 595487899 280668656 336196001 843190630 926266749 435429873 676140407 224842640 658990794 305538796 850924870 896803707 904487607 206496731 620079653 271427043 771174802 80809136 670939372 789523186 919327881 832925250 844310695 923822977 951692673 842576729 924599832 936621576 964520091 524687307 817260415 64709643 95184021 319452493 387125789 86760751 629765864 455380037 729523386 8234913 84355803 56479188 585986639 184982585 949953655 210391998 890080743 726015063 830901518 841611595 950376307 670575134 952631530 714300994 801678387 991094066 996128335 235028188 676164726 52571866 412300285 815902771 978379476 811895389 873591941 665437756 717124022 824074577 976591238 159140562 615286460 398713932 568537887 978163662 989014976 248386708 431100946 585782996 981732470 835564026 959053812 599266963 845109686 51024764 639987495 310742064 622578482 321961693 870079877 158586698 587869721 402065090 622118871 597507653 850081048 732225145 892652453 594960371 601591682 228554151 664244482 327301382 370219749 872273717 911654849 747023671 914021440 692378253 809894146 377342261 542004514 990906424 991864977 611503350 924784547 588679007 827225680 473900336 499614462 883638478 994461918 461590979 695851019 914390627 961108227 201527083 687624062 584372109 902505333 674932044 873635311 44565633 572025388 686813044 716313786 576333040 886146164 191015600 940795606 784720506 997086245 131482272 292977900 505089733 782166365 425731520 468872086 77558232 563078922 521736684 931209960 545984930 690695950 357011171 443864471 762882839 904826050 957306954 963650081 190451188 363003493 49748374 580802032 154890284 781569759 479599328 802214170 533245599 861551300 846925738 955393983 595761632 754894876 67806402 220972580 539180674 962284287 785694180 789535266 331608963 647296690 968989806 972843452 224366765 362527073 506902148 508828536 543639210 803421011 251661811 387416489 743884545 819765821 967644618 985118334 576218244 769230126 890466582 948954895 53547196 671978090 601522902 711428063 749142835 947986268 122227207 762276255 403678468 999952586 771055722 905421197 684420070 765930471 349634310 529365150 641827175 866541285 823996009 872978162 763091189 837040358 74024604 351554398 253733122 539369197 753494835 920261518 200499944 886997348 472742401 802833484 231900267 893862866 814522500 839329293 685566784 765392461 928130343 931882022 926528360 958482513 606380092 846655337 249895492 677814620 718454973 882019277 990626909 991527407 521919722 744687183 937566172 964481871 417023480 505020465 25072750 376767403 690415675 696533267 423189679 983211154 448539699 942344803 439171856 845110811 738895361 774642062 880303507 914520716 733349224 763369696 724130626 762414796 73582829 84499010 353268521 435005386 617666484 862840876 735106084 888336107 65050064 876837851 740157219 857765538 720003899 989409756 971034387 991878115 446723358 581135607 843085398 940880909 625966250 709206558 927835799 939716246 461613060 551282488 350187343 903650285 550829984 957489262 730706942 896456884 123765792 296451911 775684274 983011496 575533993 873398912 14367737 347484186 206541117 760082045 134126193 228134350 577936360 646749343 251423533 368064866 458378889 733058823 315652538 407105782 542942735 688251870 791656776 959172590 328069956 389727883 632580476 817379805 919342492 981570796 513436084 866045926 710239206 803422685 378244153 508573134 346213095 731403943 416135724 422723973 494296458 593040661 241238485 249489331 255505810 946728509 605986437 890749602 743861139 972951183 372081176 766042903 519776464 995299060 124851388 603388776 61213089 394807462 658565564 954771873 120319731 314393886 404084535 887437202 30675471 540241134 786171832 948793131 394795675 566369702 182267906 974628256 581888700 752347852 477740707 534580898 499469882 791404510 781417632 859004336 997158643 997516308 754567105 853033582 52850544 749466579 507741334 746386350 710126970 749360691 953444065 975352254 645082832 703142098 67913810 184298697 916135912 926981876 608993506 951778469 815607891 961910176 498101209 685729217 610246406 694305506 557795233 563545302 421780093 716284175 314056910 865708057 703559010 942425391 19444261 976013708 254417938 331555682 722328672 780467863 938326841 975542682 752345012 839933952 345122901 482595436 218457019 248906190 622206892 629987929 353313762 356652540 713425415 991358811 423021401 735501013 934208557 965522996 584675926 900603922 768637165 768922591 184295396 493309130 799343915 843975133 244439887 379078334 890390797 951844746 191470062 472100663 841477996 948645423 554356860 660949033 488729404 583399367 14757894 107171317 952799301 966546788 241569463 857074466 416501853 716971594 675242684 921144746 467375779 705331178 974918164 997878374 121359961 538816023 110168853 288904691 645786531 866440125 457032682 556912937 562686637 660549013 910848046 981937700 369264625 387232129 776347326 959270225 733378881 866003413 780907078 880992841 788441376 868995589 784358580 920432413 161466487 382867903 135814829 628936272 767570350 815135078 487714388 581250156 189894950 344847750 728598566 991840118 689543598 965190859 218762322 677001984 926953536 929893229 524541308 728894624 300471666 707683735 628579523 907006406 548150775 923955155 563284210 580771825 988710320 998776178 803621349 826192751 16203787 921910696 438735472 484751351 891069565 976940625 251325951 382782494 681968016 968389258 954643619 958594594 512384769 981325316 538037612 831995257 546394900 629729302 595341663 694892464 2102585 626592303 558301804 609415555 956503424 959838894 185462428 976302937 384014258 940041517 460964492 943407038 403254529 988699626 7587504 151346196 419103043 952288964 498725509 739485949 702286139 971488332 75261857 945438769 160107063 610038948 640709330 895064808 853518662 907622591 516157350 897704074 514367658 700297157 166895257 213771530 395046849 839102272 76676161 618073646 775342213 864019137 671269788 869079727 119290663 649549329 216272960 661552143 667617806 905992413 847750717 920880187 440521375 963270889 99175917 902196146 159737350 969014916 531767281 855954014 270765114 534775199 356742589 666718799 946763938 993331791 527807734 973899241 517826474 799914153 862557888 896924013 231965878 844626535 753942127 872733671 276616526 370973018 993467058 996073797 600407241 942518021 895396234 980072394 154521675 515848988 394885791 833711118 428123550 958229450 436031425 449711917 132833049 295870289 338690466 611803158 544719426 761482923 753137502 794404088 537471927 981258146 947656944 958648108 221825570 630876040 917991812 919518033 148616484 504213254 808559222 927283825 709540424 768626061 640154003 966148582 478521960 629859746 332527214 732603261 772485190 864005361 858259057 966245092 185716800 620843790 49015193 729539529 320991764 788616669 442210038 710063846 713674168 723390483 681529749 844498040 564339628 673620425 324884469 603241488 411491030 973279692 746647797 953668764 874147729 900175498 994330700 997970025 124130184 753642580 174856694 239176791 798381287 878184938 952536681 991486501 631953174 926867728 605946881 727987064 943926263 999512866 599314193 647016341 183453824 393025144 570831430 651858578 642899142 794174721 69191283 183251299 904103147 969830991 89353208 157405692 21655886 607037864 447389703 605788713 208836703 485931913 637900688 885281344 511401538 684997007 567595633 571270006 263286826 378370173 644398116 969516486 110071371 405001182 770124310 930969671 695048937 789109929 720339125 878278277 430161150 532359803 138749099 715241783 132357215 892348346 102908757 320694927 206244838 280761922 233611051 563229085 355970159 912473313 213750925 966813392 405916061 807334050 806391199 932507582 595811034 766946274 560196843 921107559 269888636 455420658 405534772 950097949 801835944 811985752 842398794 920188122 194053553 735440832 274124031 368454752 494730224 585495184 377346573 642475054 515185169 747436454 488953042 942725134 881033567 992113975 178442511 929999808 435944720 896144449 320437722 346076963 990232919 994160486 283283329 503471457 436864666 748532964 359164440 684744579 504473148 794234974 670425299 949565423 836064373 916793075 694110456 738115990 90939684 175220692 344078984 954172421 746525017 884854922 740648431 935152012 717416459 980388875 165252456 228175916 261304602 521425262 43532762 58170753 355338089 773710298 235509118 796819572 149925780 395070601 147978496 821926626 75606557 350776126 710282540 867104627 854047501 921799757 871722121 905376827 561710103 996151619 998951693 999879538 123599107 744740373 345088314 718967799 210872187 433342544 391204037 435722172 774139878 932212591 182611336 857320657 382504538 963211209 582188841 658323187 561573121 916487613 168787192 982858603 766375654 970861874 497910596 552672756 534621281 923527836 518797818 727175247 386574141 864921082 639160327 803040364 916468237 929561088 111244656 727975023 737005841 818932909 405425896 420012941 673791499 797224785 959025878 993895469 993490547 996746642 254905582 268574724 965540821 983027826 312908391 531272398 653554821 789966412 127140902 242235943 954077743 997494186 174622254 720101221 274485258 912727898 74031717 805036309 952530807 979145272 880908266 986441993 642956589 906987167 779785204 982543626 898259860 905665151 282969401 926276450 410733299 852383269 652337500 737441289 432475061 439461350 376922531 604956473 898679810 910300943 663666424 695668431 39417822 229894200 929442582 985243633 155054519 812882830 13136226 284934528 82641476 406697594 600001861 947845696 943249777 965939073 928213958 943788028 994069778 998099066 570063773 743400944 6834489 156438401 404437807 490646189 108080405 870547297 147726689 389080503 612062339 920833712 523308725 762936443 312551672 864662037 426836548 913341944 310368006 567334978 355022658 984991571 134315525 296178632 700059820 796945214 838011868 972171181 408495678 442805779 297588057 748446322 246822713 499752714 187425088 466137935 266274700 722726896 909833158 919376951 775365937 881862451 673527100 761877568 983309733 984460263 884694808 899703472 589216943 851879252 734501783 864006284 65739025 276880426 487899065 498541668 858379601 872172553 540727831 799029136 243029616 515736322 677633405 956896218 843929042 941654062 483810438 589200305 370134718 960425247 647344979 817444648 586985244 758621647 458551725 672724511 377299847 734604555 858358257 968280454 308361915 560573878 947220666 982481493 889600581 910178325 227624866 616411201 834229041 936292104 617386466 816195074 370623559 955665715 389179640 876930445 89121207 643308425 773221535 978589428 336726965 739777854 453052842 912484605 802740189 826511665 55292960 813822831 142650023 534255617 250307118 335514222 191050921 658582465 81050314 464905223 978215770 989106245 890550999 897565528 591527218 871926264 125788567 552955129 651031 266165146 846487091 856129878 460864100 661567498 367338180 569307814 529928473 557840018 763658581 981539251 741671716 746136852 655857046 949338135 725659966 879790161 692365549 740446472 980904907 981031087 858244063 942484544 193333777 537896615 732782845 767738204 46998556 617079532 584986803 752481293 687993293 930535415 298767953 346847076 78175478 209210090 731706085 932832496 102083177 337725057 94830472 578332634 138660736 640402475 901417819 913493497 297099861 922341386 807217812 913676193 28673775 297916581 758923059 915683816 450862678 942507353 135915039 463584016 309753777 707366646 122980679 271076437 84166439 240669804 971855033 980661703 498025936 602994898 210864832 465438093 319530508 890143304 965689817 975951327 102652362 648875189 769762643 969962613 727837309 806450830 239867009 927331032 327342748 983147061 77447224 548652488 824605882 867238150 192456961 328079523 67824261 696708142 811969754 984573744 741324343 910735549 982458854 984610876 182013664 977643228 253700795 377439946 865301051 982416722 534483162 736119837 800209196 898831112 127957062 195040910 342382487 976348303 498963391 922197672 279733965 538201292 396214172 572122684 299933739 587500997 775589525 840623995 488313426 648424781 618579195 623631497 39821302 166955556 806286026 927880625 338135219 418282577 370628212 399575523 602702993 716781563 675807179 748552063 256800293 547019336 777281931 827242021 361101291 712639865 788374980 891209427 522975056 713549128 345324558 437900459 515573095 939102551 859595833 945142288 260409465 617508776 730536678 846493118 394054131 680000396 73521678 186934355 758657015 783749984 211027905 278110401 453745976 793947968 956515334 991882417 722075526 900349572 288200512 338261375 820431389 957577746 713498468 922089563 527921625 888619863 309990808 445551697 999411550 999773730 196885009 860563408 972994799 991991393 438532869 614667545 952146144 972789904 606839592 793385752 789280569 986980284 144033738 566893952 896058698 967283019 278562101 702322945 751358849 753432553 822977644 867810543 585937753 912466867 90218354 378240697 51559536 563658988 563970984 605254899 409934626 505958239 430773094 787355767 326449192 535930117 633487814 896826329 552076760 587819895 766692049 851882387 358318524 889998718 987354057 989137597 355629465 706853791 744200617 783206000 346070808 595276269 66016250 352035201 616750576 754085666 450698427 501401388 456473529 779000043 11268361 290344960 182646789 999585561 98426492 429408643 893818669 926190673 67710937 684869435 23108498 365285917 55239443 825218220 350317021 734227723 23176334 61313883 592686655 676897516 331346616 600845095 720409840 816203833 201096128 698919822 359307926 798510852 429257657 518427734 317351582 902621173 513588477 864892756 438648790 739957062 202964104 931266565 136668392 704198385 724650494 738627573 635267567 806816804 542830950 640122923 984820367 998350422 187395142 309437025 473500515 674744731 737098425 769090419 100011070 680809834 364270488 676281736 93661224 468315428 247293125 957376709 558782404 978048596 449617571 778536673 997443580 997798519 796177299 974015379 485127171 970076839 139871679 185818691 958091703 988563150 37828198 509060175 356905446 813466363 706660002 868979574 636313899 855572887 645542295 920112007 769845112 775793272 431627298 984307033 520441616 893029632 103731567 218381396 804814091 953098288 730447197 834969737 904862480 908378727 316688528 786985297 45358991 713846678 789928636 841032544 35795355 748416018 208398639 395780905 821722055 870757425 206547927 319964709 829385259 834275970 542326519 635480580 675558837 823612526 543988580 991958658 725314252 733993183 914831724 916306471 762479363 910310640 567690143 735263809 757591947 794470431 397354823 785047238 861931667 931388330 214345778 777715486 532243116 563631195 681697730 826634454 509880694 999523374 248699040 426893636 370575082 558241632 376057107 407410627 303833808 464565509 787047140 790087052 257698011 654165186 412344015 708703662 380644887 900274772 401998343 473521060 984728625 993577599 565779238 851393508 635901069 654157678 571197137 746588437 526385110 876530791 333988660 861211028 34110072 396569873 388742921 800125499 344246391 692300072 478460850 553482261 456091478 930279279 731885528 920129185 791706495 925484859 670479155 780176587 190777704 508254947 192690020 387282793 987893674 998316052 62801583 246786608 16326438 45626307 776562211 977052943 134015264 990310913 395021453 906209596 206735581 841209658 531456504 668824597 397397557 454755196 221262658 403536450 712297208 952834223 502293091 832537947 90207819 602525588 484700921 979527893 119580429 204751794 983432841 988454007 183463583 311372452 801821701 942217416 627129735 675795983 643449370 790583164 820744853 936883872 640550927 697226656 99946790 401770328 693916642 984172941 99906866 155575742 227109715 597967033 801339849 945229364 617859891 675128332 243038599 818207000 353479077 656219847 941453097 998754975 370363115 415513060 648523435 677485137 554607857 833182041 545862673 790567018 339458837 841434239 7101972 475880396 671965837 790743568 261846351 921340471 427147698 679003965 81446032 542958062 556809475 952062722 375324623 827017910 751263424 905862892 240234944 267992561 386645107 928130801 683134403 998063233 898734336 963204039 467196849 823923451 580521512 618040770 671285152 948517153 522335168 912645380 345362436 385367668 265513026 856189580 871435663 883709035 611864630 650560015 539357722 695933616 379671687 859217616 651940647 830311058 251884069 354952295 371670711 503066778 9385852 880381952 800695766 903326104 773244096 793960678 178037582 736315638 931327614 985876204 427764635 841565057 804710777 836296324 354711403 873583713 438889643 626679170 549238210 682074320 106575208 266337329 526907039 921171018 804408107 928163352 210758951 530023934 941496261 954676512 229203928 728430145 581894136 912902500 25077020 752814539 804922793 939422408 370614817 414043353 832113686 972705893 15441283 250687357 706223614 733833830 500322806 906150929 73695784 519817426 72490525 697103810 777801042 879333742 99620750 390650401 953903914 991137779 753675982 779561094 815562968 893755327 347650217 945227484 754703268 782989520 705660149 773490313 902688451 910919628 692631571 810053672 355486698 989256126 476448641 611559371 12239040 723380999 373547186 800550875 575150972 801814767 112770458 194116110 31312830 214969394 578125659 852171644 858401118 901169112 195553523 823584741 255398829 497326838 245505341 587197620 187761852 305093486 663209473 875644198 730155330 860750132 5831341 68885653 1907214 69459326 812175823 851656751 818238687 856968518 269174431 445060742 6565473 713537068 526669891 651339211 11817747 663780878 137790957 802633745 471409993 605893966 276834344 363698742 343621188 571608639 936288513 976872809 67572905 880170649 978018521 991908919 916749109 942633727 511091045 602267414 363462223 422164985 755245825 952750608 401938721 755963606 214392716 892334083 69124715 372496116 796068580 798921951 742578503 876584911 452030127 567767244 982990212 985836958 8549809 558469025 722914638 834880112 607234968 733396027 643682475 696471046 660936415 996350804 10925175 900417041 165360998 446161982 443878643 788827080 489527923 918055373 260298462 997426228 814944414 850159726 137920078 169009472 244165821 732088595 590452903 931148446 134967457 614639756 590125630 967667409 156491254 841873376 53156620 901789836 872953342 924730766 985930860 992131526 753345659 849317237 138336104 316929662 525058113 926737557 654698481 701529283 500174683 703308583 458176633 690665356 423222 269612972 20166753 661374556 107338968 268803346 979429738 993428278 712001929 910412067 213887329 490992083 290507252 653855820 806083212 831387797 15451373 753799377 730692928 929768388 687723255 959277515 364689640 813793351 452546013 927035195 80581136 640901856 810567636 837167287 787836819 931136272 531588171 973270511 298571832 377216959 583291319 979113583 282422214 961336544 529168247 848289054 778698656 875226980 640151619 752852886 971504377 973402259 290610750 662212056 185604584 189420600 394124230 516816863 235969975 994726804 729221219 902657167 524089223 799110346 301670887 338875421 427910775 938134006 467269279 741253789 950157126 981355925 856702793 974644289 355510424 445472912 344735735 645506527 48532970 735458594 459965603 709947423 291640006 786722795 189131998 659968242 687868374 951224841 252883887 935515302 489149443 510476546 856583679 926030228 194456982 529740343 974992130 992291339 632710752 824896055 169071345 407617611 211226912 796205033 592973453 786056182 463062850 641521106 246124721 659829701 884883824 898389161 73639953 153977555 561626505 950517363 54303832 669578168 627997769 634110779 119305327 474121493 593504334 832322141 347278718 771436228 511372359 942743464 234736061 909251625 942009519 986062441 962165911 998767772 964848633 969080687 85612579 787106765 983039035 986443550 92922044 374434888 376542432 939151404 263265228 465770890 532011399 798495530 65569269 563240501 407173776 717410155 118965153 812607417 660280542 982703374 808170473 893375495 957441780 980497074 207830430 437957489 987029844 994348177 933549802 956617651 619440114 687500767 170627040 834985723 799517614 867218896 58699406 631762016 453068751 529467770 362250342 861991708 587492875 854936021 136814399 534677308 681239461 938146229 892161201 942301422 481064274 811114882 840448279 933523005 873570469 999875532 505819230 520864276 999208650 999695978 461367036 609665988 3611047 947175710 739273147 982071145 301815978 421420171 499798215 877244880 896231166 993943672 759995859 885037469 631918437 744633462 593071262 921598016 759449274 925175447 903292434 936987999 189433088 193715809 30911037 374864321 510902272 572501395 524122804 669478675 946932747 992201543 228712676 257986778 229772375 826430419 697616201 782827285 651450418 858722523 842410230 893578567 755691849 939292056 571225038 994991045 616776291 930467226 773363685 991673630 134468405 317702563 961803013 965911311 997951548 999780518 818047476 882516623 537507553 722213830 962518872 986509977 161242379 585361400 77588211 400285493 510802244 756860599 72467214 261054010 469959823 683456967 734504038 770168277 931257696 947849509 688373244 900933493 90702690 220254098 235910209 429406126 623773134 872945003 827106300 954191222 640242796 681021905 283963906 441869431 324713828 614959501 766197929 932445170 808920035 818861257 479667486 482404100 956752193 989917473 596309167 836672501 325103052 883218534 337023737 889261701 256356800 269251405 602014839 677049120 636856392 957851236 949452049 991730899 484720127 845865386 25966125 745960709 896193780 961158462 318095655 715484016 492859452 754014093 494540795 563148318 856933068 898873505 991619987 993491522 526054943 923714933 952615197 957496077 764841622 900770414 564628373 971717993 33792334 340258537 77385865 806629866 139430716 285593858 317789537 872934104 821044786 829175900 311186205 467917112 408179365 530749178 658274277 936895122 967706843 988101126 211938531 739364925 452223483 907277822 326381929 831434135 550010141 791689474 589714813 854911052 124067150 934653224 228289819 832994946 586967440 598961872 136873641 487618196 307610504 679426696 200944815 792027067 911908501 986635167 716784170 988072369 747044877 982404656 657825995 868537074 524232195 636097686 864205354 939498741 881587033 986553111 577099765 633074576 757070643 968513701 592588145 721944081 462420069 563019541 676030798 930028282 406398661 967271693 758116157 792609354 395687674 919286983 728921693 871952662 214175663 525942616 362489905 549858844 365482543 990922688 472817152 823374687 41416518 821728182 138732045 654355993 513076763 563658812 674065992 961634498 959524226 969989741 877282473 921224272 958084153 967883279 182267865 760772701 55291469 934595890 340187263 683646141 845388210 961441454 922478298 952403952 931673125 982207624 641527694 759537229 42650146 790061745 861271963 865521026 694332040 849372082 560422505 947904535 456182424 682918484 182937415 415149834 396666654 561046934 692552173 864176381 13657279 290439217 989350183 996203340 42856625 830707093 858646309 948186085 570264977 760450833 342892234 443149955 231651616 698777991 676069989 938166346 90528489 848323104 168303132 453072346 181066670 627794322 201515753 321293449 431186225 834411775 374763592 785720049 862104912 897016278 997664929 998017387 191977858 640893399 595429952 602451661 680557511 871310441 894162166 944986062 486160112 578014127 513719343 775569505 390010104 589088752 556537682 933035014 11933756 585724471 728972081 998344151 933442802 934056424 787161460 903393447 999336352 999400886 244470054 572607135 90523541 823529034 730395648 850621964 825549452 922476729 896937076 933096425 225779704 891221287 915406798 931801779 992374029 997433158 770842409 961215560 479355183 877812075 985969286 995877059 246704717 412007995 296239772 613824840 909694597 954066544 777090702 897949107 520439612 978584980 610584546 686406688 949119457 955102505 78747063 447131680 343210845 548564347 49086086 794269693 260979384 695200404 398495565 735213086 796167997 831583020 232465912 373331690 654768938 821786123 652171518 886600015 586722598 603693401 973739621 977027358 998590687 998752148 572215153 728038704 705088474 815641136 130628428 469101419 432149411 908215703 480862397 863318287 373278324 988834873 647067244 823024603 197505470 348601754 754457112 872063129 563977643 613470382 636077259 756414935 731224019 964479709 882157645 886734266 98918712 904912039 458532706 586888575 870830246 920585481 286767799 458197089 607611903 761335771 854685901 951353328 361844191 888591796 21846597 101499090 901065917 996148271 513062536 818591350 649801444 835872179 231562044 900095110 190821797 295279367 218976711 523992251 946442525 994185854 342905586 963762554 602789357 626671220 952038348 966040154 925668538 928681223 879898052 897327020 156239556 939333673 348157949 587567202 757146911 917883604 713539396 737080214 341047912 712877145 681386635 695823821 290340218 681551032 552377608 623133268 374010829 612442404 840114415 918307679 351448579 980954700 941554816 967354811 706080845 993285177 141529012 828302215 395143859 966517125 519218811 721649573 489371373 823874526 642669974 870754474 203787736 893991607 493251222 870015322 592887398 983437363 692902671 916258569 310573029 957507972 24544163 461951357 15851502 656409943 74590727 405735221 383563793 674162554 340672367 682621523 991977741 995746423 398722444 428284074 542222067 983410641 938239227 966013313 208649319 232270189 316970756 792827834 623803009 803562750 900415675 984805246 847772066 952240477 756692857 781455380 212033843 565131927 467092063 584774982 972182933 995330455 215353527 992460400 892195575 947214662 884559968 958382154 684498030 689482576 458806770 780931040 586160532 891545996 809956336 946918211 972994112 990245940 889873193 930651505 377158572 743680433 419868785 964433370 271828094 915170154 546201579 705041865 838989969 927839970 863087181 891887540 208575186 350744681 887469682 977007489 819998089 857028796 212937802 446378016 350125048 367349969 621305748 920761051 998276088 999461474 318255038 592075330 341724536 851646827 13533808 861689458 235072586 342702828 637318512 913419438 965291880 991190108 549814834 739050061 294527307 518989207 968440569 980740695 935445141 937880923 487615659 621716323 428076328 618399830 307953691 713914336 537911160 759179296 720917018 803551212 64947534 415934288 58226250 385078565 701760694 850910501 864847000 979444503 520232769 817146551 175043975 589998997 59668604 440970262 681913067 974633295 588305946 914236674 645166956 933817360 180540132 660691180 873924137 997172306 376142480 952486255 90309364 890132556 768571617 826083026 175266607 888314339 732560247 879966653 312539308 714912349 896283550 992988533 827264089 877393070 749913000 833481769 911747076 992037507 282456698 530720406 300229324 550351151 616644113 945783722 354844830 662590294 629847018 984293810 269544962 617595697 130662957 507047483 173169249 724190478 507333082 948048492 181031342 663410132 643898027 915511166 848743839 951041471 810061000 856877795 905191605 935867531 266117588 726964788 227844410 947294142 83252778 454687262 749731948 855102465 607513020 818295492 705128560 881042657 76966731 111709729 514775897 922214846 322888138 511139353 471624424 641718857 627963965 995155057 187165685 686979629 261275863 422538208 399727503 886172875 476467948 939238060 549938325 991964438 734856928 754524136 637959400 670661250 25548978 459769531 209856882 292771198 153603287 845713530 719493410 800387242 651300258 727949456 610981612 670940270 75454262 650163275 505926534 552307851 474686828 565666686 861970035 948328272 405005645 888280370 776538271 911189659 502382233 718253946 780150452 843274591 657042132 896871404 113340912 806641694 764405790 863385351 704896100 929283692 375148158 510278621 732784355 807939848 759680063 929300147 427321792 893368666 299617155 772300111 449522961 816954330 856588754 870392520 770333154 992022947 777746354 832373489 972255608 988088463 535568834 547327511 769372635 897151965 401226697 945990384 341649997 843152709 537052715 793193359 207392685 813444095 228305899 776888370 900203047 966870702 949360080 972927308 441684827 740136854 856123702 995308967 511982529 562122105 105941654 524341466 64962045 320115883 758695999 982002855 188382737 598412331 33588268 945625505 430960547 897159246 795343166 906636905 869047135 976740835 265463548 468391795 902796988 998062837 7271966 650523120 918205441 983821645 410870177 740806418 824176187 892833476 40084302 240354939 595722429 673243984 251122729 935652783 433759389 607293128 776411682 798901293 815399887 996787123 304788708 526858035 201927352 762954204 494148156 754406034 850542617 898370114 100656533 932654912 20513472 326204362 393836662 450096442 946566648 953576460 89572973 547983842 721592059 841734289 127003066 227437978 471960931 820313674 840876890 950630921 535331654 910192664 100958812 953854999 356283055 554157559 567968995 823184876 869002955 976388827 434305992 532388849 865391505 944375751 413699653 994085976 305237367 489330235 276898545 753764624 948051658 955373882 525990327 737041457 825109521 863191734 302820978 408964491 612858774 972050377 265384774 950218953 476977810 948119553 347971842 869883148 865900087 878395641 50462276 264505632 959980060 995784999 720625209 840837733 914711411 982217706 228191043 814825582 23093372 623037376 457240370 961535855 911914210 931067503 284210912 892400199 975520661 993741808 481799855 837869156 562251966 736557332 39533192 198127177 424117246 758450685 257593424 721425703 251982667 634136422 366800925 929818538 305109132 579120807 954687678 989789263 843868123 898816066 477969226 860929734 278075202 791991334 96582727 251700736 471072019 768154948 872676373 975155200 279510612 334050011 92149354 170025881 611540105 679757304 618352881 869176191 257674280 456201813 383727679 799648465 928477852 954121545 15539837 813716529 909335648 924029483 758170240 961071126 19086696 296904280 739486275 741901552 339606586 827442867 818947291 863203023 867263900 942625785 791893861 800793591 559352347 961287863 571801121 704737382 553127942 795226925 784165572 915763896 120950037 784240991 370648435 968276397 588164911 868816510 443921200 527270075 355285588 502011060 133789835 532738222 121182300 561532023 226626852 516499933 649250822 701794369 754906637 806288386 561033125 893416238 619605071 847473219 757588830 859142823 705357655 884121175 14812719 537174153 415962427 431943593 546031971 702286067 466278426 784555475 625255042 999886312 743784855 920076241 437669859 709009351 237683130 433545302 639102758 926109610 940164608 970530653 576907699 739678669 737451140 870008257 824184464 974669230 558612129 627636255 298269312 795177980 781601520 943520986 851110715 865356618 625647677 954888956 113979277 954147472 961098533 994701884 464206485 805090197 386968270 750288480 1961100 597376391 820110479 900266903 988940850 990179528 815482644 887189908 60263871 158953977 491279729 728832111 439296886 577016995 166916008 489361927 892818834 979913053 224125329 234049859 48803737 963216718 211224194 500936418 588868571 703487055 374165358 754546316 357895161 979224557 764206915 977420765 488997023 834295799 331283817 953287316 806785089 935766396 324726407 779677275 360818072 368268327 340083122 749647291 272540462 568987095 843319722 980935884 258084288 572298124 140950957 677547426 990154090 992505340 497578422 903135797 735477193 947779393 130420942 671218015 273401854 612805137 858478642 901165107 804997922 905625374 195077000 695817405 559091558 942358313 850696858 872568345 523986392 692598043 953380679 992053413 86256406 198571897 112731746 440444462 361730404 585384666 546257505 866825971 457522489 552410433 767598002 879457041 41247548 271247365 69255572 213289566 176986240 873503163 905287016 985039204 617344403 871660390 190867583 677220770 777781267 837583693 959136461 989267731 520396892 848970335 840701611 863637895 600445521 833467888 811119340 907665216 86173129 939027961 105382942 660253281 741740088 903739340 833294492 966107276 928846878 960232328 726765518 862146876 532487117 698186379 586048681 847391486 420472130 796789229 11862207 383225577 349408375 400039436 535248420 785188071 567713658 960962668 841707668 960290531 148200472 546102700 98354152 549020241 278250471 301234149 784100990 927912994 199342345 929516599 260036617 825298472 964197873 980397430 562676003 986976687 1647669 475092866 833515982 971759625 55866317 334722530 169849385 189563779 429110305 812778401 968662072 996953884 790002296 972813449 602260809 774235244 993211 983717533 85035203 252383168 928366312 975554998 738238678 967672921 229145435 973870295 224805898 271575491 869185681 877733215 1450278 851853569 80914776 229841090 215106453 480178419 953071732 961148745 932065259 938557206 245502423 930719560 795927275 976952579 143043983 439786824 976399620 992275513 131359126 668475944 548345915 889274235 246152054 507563497 979317231 997276560 476920565 783462273 669535397 845968534 57732347 438679528 787642733 829077202 136571513 273234156 233306826 626923306 136633308 649394433 41824979 753510300 372500364 941693180 425895872 831119648 23797357 988716251 118905228 884861644 84292204 698515231 340398598 589735197 466328200 534053358 923234699 997146194 93886770 212292073 731265470 845884071 703285975 795313675 448976779 966939732 22407899 314657611 110917340 626878023 342336980 717996820 726549755 880262035 619830325 728568733 667517642 934707506 776424907 789702965 400032370 458010205 687858598 958663664 796294302 846962854 3587205 245396048 176467503 796619698 991435347 991858621 391066855 858832466 481979296 755707924 218851901 297673957 305241821 716048874 235564010 251867122 483563239 645163047 543621384 809666788 177291396 618310511 386405259 939003855 66078667 358838951 750795013 767641442 409491593 794148982 230971098 660540616 237535933 547727594 635888843 987482117 630123383 693475327 770605733 844914221 656899494 984717947 335160885 887197881 699334651 727873320 883560137 987722294 415114775 927463926 477641811 939603036 812054292 993052663 197841176 937548867 738532725 972245083 606551447 650881049 577620287 951583253 432879504 531564612 141272070 561224120 171835469 940893418 747007995 748783240 621252977 699111394 402909716 632139635 563595639 997660167 827269003 865859727 278244640 924006791 730612809 773123003 95533447 659323200 308726727 362197886 897983909 898704374 905116726 993507276 392967338 937548077 855607050 878319114 644181779 654758658 406756799 607251411 438086327 998769315 46043611 53283765 703985445 995287935 211570846 684850305 904488477 984148102 271878777 921380458 175584491 796959859 383171548 744787136 375388481 414115142 924534731 990757829 352762663 893456730 372095239 509829491 531339462 919136243 927530317 938467964 4961716 757401888 993754365 995944062 178199544 761128044 960187548 974948915 425147665 768711756 427299956 643030340 215803644 756038635 212410116 227921628 237110716 301133353 76788594 700306537 781986593 888270890 122835842 958739602 921544743 953050302 836424720 945961004 152140348 762588571 886817122 897170515 776053711 951528102 228499273 484131227 771008024 773633673 91768440 356717450 940086101 946159852 772741291 991646142 705899707 987891374 484386786 718933794 615684608 992624520 437894313 997631486 179123528 996977991 851259867 905744667 825028010 924945956 617790065 741691081 684806826 859262327 846465148 850377559 541673618 923572127 152567697 317415738 175160347 455326521 962552099 962839691 518837092 872421360 695876909 776664098 388088324 960714626 203316801 782827248 855398275 970530449 487435420 668547530 285839734 561449521 448026110 667897925 837791258 921046130 912239405 980471015 97542028 328572441 338794939 767842902 959222524 967337445 686046043 941361922 441919960 934157098 241634898 266881278 518117402 957297023 378583273 495998384 836977402 996903213 329178106 703297048 500509623 923725063 77303901 468634359 515230468 861640365 63389415 877692317 306651730 913138083 166834469 342450723 106288949 614838507 329280711 878110440 393788438 901901263 680962874 698390992 89551572 346114716 83805808 488774533 911496060 939479509 768809375 781853268 931058709 981685453 456078163 888260964 5214632 394845489 477443853 762991724 252805539 506747647 638771011 808885043 975649206 983658873 248741435 484798611 756458060 974341551 581099878 853958478 645584149 767689109 99984389 807905171 916570278 974330880 799445126 952501776 837304749 882193857 745624026 771752153 21259827 862036362 350012536 848004223 700737085 955779298 711571725 857628632 223193007 608255335 543732482 791415781 32622543 750912624 783347971 958387783 201360771 538700894 557154913 715906378 519255392 575614475 971599404 987104970 181634404 948566733 494669083 504757834 231919925 557308953 299231649 796467920 201724789 341784285 677408160 739293067 898747751 909821122 179487477 921343064 161522000 692830820 267459590 583477147 938251797 956043140 14528666 249001170 844942144 984909272 772673171 890627552 781977925 795800287 641750127 898175816 251096732 786073117 683537166 945968948 120587034 841540429 335816199 924587134 8958696 737617505 558974675 723948867 684080634 846154807 862397594 913712102 342428788 632469806 21403926 212847387 914895778 939399958 764660094 989117198 891688161 952860174 759145559 772404041 999517425 999978455 1965806 956925517 133101663 402584812 989105613 991447955 342825783 739450391 713807467 950525185 538371856 605881522 937679653 979026237 817951600 833091032 789802304 821610365 124996795 387288907 993409397 998674713 542856377 767792655 391785402 707018805 269129038 368231672 498720379 783407894 245258751 728721037 907726042 973434660 823483882 957966767 984525806 986722926 964331375 988970280 66095585 226409467 267329745 420092094 295964581 493071768 577789983 704483078 984870743 993315697 303079398 421664717 588733376 828724193 719154335 867332279 356034029 633234330 143754694 406853120 684816039 718511074 106059859 913463726 882293076 923940565 81706276 832619455 27773194 572289726 732986111 943840832 31958720 817140673 747586192 946722197 169903090 538676276 542243256 564511037 898513131 985602577 185935776 339449750 28268160 794036029 123115579 604942335 466215831 622119172 80867772 421127624 269325792 425113038 763523467 905699578 782841334 987247144 400707380 744367354 222736213 560487812 644873303 700590738 609033598 663108782 932547648 964627543 481438618 508770480 494251792 589239795 33863275 167537905 320773699 949417655 810835771 996433777 103129835 846571808 749081499 871838182 580764349 730038895 302777534 622942744 881297544 902048335 774154417 997012462 188837575 563140525 946813533 998208300 554381164 638212632 499882286 973306517 208732759 982543460 17637180 508252301 215347594 582110359 337413094 594536339 773366157 998729375 790549988 896040978 454675460 994546697 395540099 493797421 391122456 490376509 199480954 258553547 527186270 983274691 949784417 985929428 595307419 920308529 73265031 74659641 430968487 980831864 207421542 552215546 634195314 816032696 874474764 954049554 579180930 949598447 181365167 184316568 230391669 811860564 983162897 991874036 247640645 765199375 725294343 887467925 926507326 954134648 675542423 791462051 250447243 473326012 212136448 426038396 316822219 511454839 898616174 899020647 363249853 974075178 768838907 908479137 544425633 851824721 841404758 850302778 324914913 557844423 364454060 700588661 524385306 905766233 319079630 839510972 394443989 865825761 474604311 644564988 694768571 702474776 461399549 562384789 945490135 964503214 381599700 705667226 352259935 762280840 342262371 906637924 797941307 815104640 640752069 730272156 148609067 198275324 753199461 955749007 577618436 613163449 415922435 998706043 927609533 979589559 790368142 857897810 733183212 921294306 226247103 925141788 923161186 946921480 984819848 994434517 963300919 993482028 556673471 870439173 698360003 845916348 120059622 465406545 925615775 972239890 681753910 901883470 102835525 151169619 763571266 933749063 695939128 905282963 652897964 962516024 863641755 972002195 841919985 899214959 924614802 928359540 672190641 825179243 590423850 965296710 745210688 898292681 717953271 741784479 920324411 931527911 710556613 714563766 106778470 180715553 794666066 953005880 930962926 975679061 844427329 950640996 484198290 549992444 302646197 488827546 120770041 339274711 376208764 672069730 262220237 679658804 502828697 882333100 920976623 922475070 608201964 901368679 500134009 651674348 457830221 708413795 268593479 947217537 749499718 761143504 315111259 977733974 991596218 996449465 975448585 999208405 819983084 916756817 734320085 916391915 222603925 838927794 734340190 842665704 812544520 955394736 262464453 780690115 270356486 879386341 695633222 979370676 267466357 571229778 125236310 898163910 133213459 783318466 472520722 477873587 698290772 939500322 212895765 368928285 243345080 701005444 253233591 858985635 341753461 571215087 971900088 997091329 489095214 553228150 900056779 969777969 191953423 726859377 740172466 797963443 441458515 825523944 534111308 771529717 165618481 943478713 340540642 446323382 79590464 398429324 220712516 574901191 72807604 389322938 421737340 546849979 846150470 863823140 383359476 902849361 522284527 687008299 719718644 990978599 894241522 982303325 238385858 464800970 531298940 777495147 992150735 992261005 360178561 481666266 570380092 685345861 632229 610122666 792980459 989533622 626302233 736687167 508607524 962504191 820058708 968132467 486930222 585466945 414176293 453952758 376098519 900849931 240484652 307285444 124496247 927556173 73318766 720773466 538307492 645864237 466221056 747431648 394534649 774053159 702970894 892152347 330535106 573146076 739081302 981972431 403894510 908191140 79863789 629472075 32260221 691398496 305270877 349028875 804431245 966374158 14526559 517201415 290161844 863739610 795325390 838325481 444351659 563562807 223248807 935748743 566403743 829601653 351514152 893946235 566345869 761270319 990007127 996511229 658941066 701670767 984482882 987555895 311946487 930543461 498349023 700500319 988042718 995941252 79573664 779202041 886193429 932119108 779775177 944070287 650106745 918825750 298157354 365387506 252789029 430228605 939747913 946048326 585188747 931149110 127278801 454521510 517980093 960922955 495163714 678239198 70355026 237330569 98208977 987970241 72988440 242765013 908429206 971219700 154407901 271593948 260406691 274248921 440730397 882104671 176371032 313877768 806934602 883309760 354211784 649403743 78298450 366983973 773219247 788319263 422324062 697621690 21631819 632165894 949083179 973709644 697658815 942327440 902478985 984175861 666109939 879858615 704058065 893017179 789739870 812620076 545220837 733105703 706346873 810761812 975946265 979146783 527307859 624183994 433955543 902472896 368467308 928135875 969680478 986726019 861234926 964238265 659690032 823722801 643881405 919383398 467455688 987798441 402300479 925750956 631964777 669890974 667821385 714481692 472837332 488845539 221817044 665903700 559347729 671905890 692829087 859698344 909590441 917764440 834615535 991406506 403338781 938043838 337387948 939301565 138816178 288826918 779010760 841032306 777551195 871770237 822631130 980450740 183481616 886002124 578656183 619668682 126486072 544648711 361277105 820663031 416191993 613937643 408332903 534325977 267953330 432345048 824967696 935471434 362758439 516888721 339921951 750618149 541050609 703681355 752507136 819650143 90954351 713809208 270584338 491815576 549803240 593077682 866615893 912060513 137281410 234805885 996310059 997487528 51106495 302698228 175619722 535835919 481620027 967304384 535259824 882560972 750505629 949948123 694258472 752876811 902995995 942633017 174377428 181749705 327857368 434310536 400430927 716482305 154789435 837841132 784278575 888471931 667003445 890873697 452379451 977032325 63547533 610808119 516978662 648854892 52607033 808624804 544855852 628528340 865748893 961084598 775615398 955981670 10106761 652497466 955583861 958395621 636432220 788304651 313777715 999750456 131671218 913441478 982795050 986537822 235262718 483524464 947002236 987890661 567694042 900290752 512154849 921056664 5578635 690594901 407652872 579909256 868554426 869414689 217962720 543395930 804474061 878078816 121314345 633280198 387405231 408492772 104633167 704462285 801383516 885340902 456731415 979208283 596406996 829127419 260257991 591734959 208666948 665053615 759832940 971438264 720457435 843495938 16407966 98377880 63618203 98627538 152036325 845749205 538954554 555851373 674960400 807264609 644257096 877896474 480926970 573014159 670857938 817781243 549232172 885466255 262926279 939873506 393062722 955437469 229932443 517601429 548129525 780109666 112476206 438216963 971128800 980764537 498390770 531146192 669007887 958218795 473308506 863394069 639993797 857175581 916479785 926127244 999407186 999743408 561187041 739760313 20700110 533421901 710843585 989555505 652599073 710788579 383509858 720496245 428001630 728713129 327357938 732387278 842301205 983967276 377284641 409382002 142824490 385305517 746145596 982627134 267908494 783014049 608693829 892070290 991250733 998140112 994765919 996140521 428656131 504297721 350214987 374581141 797707950 989596477 907512038 996682902 1745790 847470103 321802610 378921662 396579400 866962889 166379425 587329905 389971050 715792665 832608754 947517265 256544592 269184854 377737414 456363774 145893229 922206514 331992710 336821758 231880331 377920237 128482698 516165363 295690544 556397920 606240107 940797536 57156498 74281445 928211677 983803816 472426786 703630980 281803938 298080256 434974585 945876828 504392831 901807542 908632302 966190095 639364062 666426626 537364830 731310294 511898223 606171007 43270674 50367632 500884767 901477996 244296954 642120274 323349028 950502123 809143702 934398457 653810639 809887127 301728768 355864164 689383030 966904466 369039074 969333891 495528658 498067363 624824707 776887764 76573191 258949420 260737609 341554189 734843642 754790897 874581485 969655229 880074338 993440565 191352810 908546128 192713268 293151888 600326275 759088730 127697475 263796313 716218979 726700803 217911821 808429520 857291774 970442032 706471690 912944430 736049776 892796848 173066365 388884811 960180924 977523296 523720619 606555914 756574436 864949602 865604412 960046405 532143816 641388045 216075597 902668930 546822392 618827473 951846592 982925684 722440602 937693727 425245694 749989035 929782078 991391826 671016143 683556978 163148425 632105226 355310395 961010851 994243245 995579560 442126098 564046269 394383348 678795955 281239357 651560265 672102337 924222813 711405203 771148111 51491424 656445731 636420272 893105588 358437738 542459422 394532938 689041622 65754662 471890718 89552281 129299904 243348144 487766557 947351507 957978469 510579316 510636932 875033587 896541000 578640108 987339720 717422261 795296460 642470830 838702748 698500256 703991009 48518724 646206390 647551888 856656966 149848347 636451745 220127220 626832323 199508347 769231005 32307743 400143795 414887894 597379253 250611116 668857773 761273622 819796738 876864446 890358307 73689229 692902880 77701744 366346099 279832423 281154671 835106540 860245318 617803855 827158215 47634664 230861391 165237495 729094115 726443211 851408300 740578335 922328898 716977832 956539697 576314127 796599277 42061435 79722216 919976102 969619587 978988634 998606641 197130706 423054872 554740777 657385377 405517002 559525609 524436884 550004124 565421957 701542554 496571402 982783399 947989987 988127600 21162916 167704221 726711695 757013142 147960937 729972984 202910175 719612262 657202397 733507597 804644542 876912689 661464918 903587591 62690574 833847036 903046547 915021604 810541773 918200671 445411110 519812112 734471357 839641134 40178850 417520609 235113040 801407306 530654426 707292204 375101215 416947654 592877079 934201909 605586035 772288335 996520061 999568299 646170759 977108745 315533737 590415087 775793036 840227619 457174086 551276573 504929523 680335222 272176223 470702619 58920367 933851886 651087581 658875917 329569004 561542129 292514419 971997838 583533585 794462326 101567625 413783080 514138774 602092324 338343333 678598840 975401569 989348309 637049793 916531497 683850584 864522002 543901669 944101057 809486825 946411791 950463453 967191911 746053606 877572577 264828381 684888376 910122681 989328026 172124535 347252076 819786885 941058050 68936440 558656193 315673420 741767852 348723273 765916047 945561813 984111100 947718311 991404179 592144386 835228075 4228803 995576165 812285921 916884455 653987096 902856229 712704156 729794851 795017666 972355157 442092209 517534531 692826607 733480405 379596723 580752459 793528841 922695313 932910615 952526868 538605843 624865847 187276294 250372067 580495795 961031110 759537806 903759290 719254635 848358362 70247978 935960498 248653434 263895285 774602152 804644528 191796196 366677138 603377771 746414441 932385001 946770172 696858219 916032744 307526024 862571706 35494029 462760823 133894679 583910948 268378854 738016918 469584302 988410674 730600059 815250247 164214511 386285419 889791595 910036937 356180022 658918291 37250516 313749160 416913479 918447519 207507923 969208335 437930598 469613782 199638060 496303854 498536787 877797770 563204579 865220630 831942869 919184616 648739717 751629150 3808505 694209629 311568509 553055594 76316781 603928052 692472365 987920423 980722954 990699131 948507206 990593476 653114446 739831588 7526900 936726783 407733015 912990305 117042183 960278565 649150808 911226611 123263797 447850568 328232020 948621391 688259487 881420884 29392669 58701196 520999031 536987936 941112185 966887964 422463875 928007480 408250627 913249980 577758785 849888762 402395823 643977199 692844913 858635025 27764798 470772408 801926433 992544368 490992239 965917582 762852875 765146720 223278663 610036528 144330901 705485380 545765562 982264947 895112634 973742613 724120465 918560039 960944707 973425019 974127986 989816829 813280816 900228131 885004431 957480956 751774211 953717697 524465794 587739966 12283150 120951516 511767507 673515233 169163832 522342901 846573347 914572156 397610945 860774759 44915124 217046411 93337536 620396104 592701502 827414095 393084163 921081505 804360466 833498697 545398535 713811093 205484144 905971183 846298701 860376621 928227706 988522623 485233664 541996031 306802209 609441363 89625746 600018991 485999547 789448257 24669331 955083227 661532330 892533470 149516701 731243940 350846588 572298689 751037708 788249916 134667039 136571945 54283688 929329168 85879912 998447773 141002288 925050746 225827983 673631260 231167708 888871557 28358584 997939640 488849873 952007056 30694913 152149701 820784399 849477790 17114700 792502973 143084189 167764771 436667069 760762310 628678258 948837736 345200387 404403430 602311923 688316974 810949282 913641369 717784229 911492463 117635244 426229073 381452236 604528729 69268430 925985566 933042580 996888370 801607912 969195283 489719157 693381559 606498479 772151901 200594699 456493457 625067616 789757800 778475098 832547609 895623311 923021969 488786107 791955746 162218838 793947399 682328475 961931519 746459225 941785487 879793759 913040681 377600940 730247846 112002465 829278086 537264360 825243903 480661021 484478853 469356130 750195050 11925876 344053852 450297850 871863281 781247725 798878037 257246804 491651121 470162177 958614755 635668628 918370467 691963985 748198781 653476675 670889396 106614689 185301144 261792860 971419253 510499246 642008617 610716410 876362432 724075961 952886909 748315671 836757879 376295085 844568744 970106765 984517078 407686298 829060960 336209075 532583205 950723301 960679686 746062807 998114536 719989841 974820458 331050303 763981026 772211163 970045455 486022883 548606547 518081336 525526170 703388901 733260539 561199531 793515622 767424320 932078947 192456435 679555611 602859774 735337158 345250325 506475921 557645823 724471208 77606870 678388926 840656879 902958331 111028476 433880932 961122651 978128950 495558297 874365336 49201381 262442319 580476240 754704012 543370101 744274816 315667572 679044750 277861371 457240184 570254585 614404249 822726288 870717532 272880156 392076069 869179236 968687537 535044030 540201141 478518099 798714462 36106752 478210966 64636597 594351449 455806684 957769379 894139173 971176625 948703385 976543763 498566126 824599653 812865854 830036904 975246888 976316713 943571789 970246772 588650201 795156934 198521082 837588749 135503856 682510064 272226188 595912501 211423431 819960269 849273936 918972533 673983334 703384876 258503948 427344217 585855700 925843901 925740683 926880150 113037691 468858452 899159507 928521171 159383129 409172115 281124914 881903827 851756821 879118368 294517027 665609052 995948269 998826653 683158437 720583613 60792559 315069741 861369728 972245854 703924377 850937965 76327308 890831684 195789453 807818886 885000305 928611879 453363924 565960675 156082503 420853860 346380622 627364382 909136533 926720232 378548199 785233106 420775526 478211270 638066648 790906583 788708604 940539597 785556682 993084220 883107659 909796822 195214927 966865272 331640632 478284406 781810405 943903434 220489502 803934742 987312313 997991505 436995486 545184580 547480971 640503722 747617518 975495621 17734023 81469041 859765336 963781045 744450673 763674126 603475427 947094729 871416348 900749482 389720937 517688296 577582283 913333731 888634688 945512256 291525548 630288748 770540604 844979874 402537216 957087217 902643704 940764450 77778376 625680734 81465002 752572658 524852472 571267898 10683573 452648567 67260539 495626988 761958720 907621929 133551629 980631644 194000114 612320186 400275257 737436182 488872556 830272939 366316256 496216772 703413730 895828212 989969999 993505134 24357708 280337968 243280748 741173789 661217784 765969280 755262904 918439477 596488045 904593668 324311756 345051200 175427340 821421626 898733609 911669408 578741625 686928362 542670745 576874943 100221800 288921259 767441920 897043717 930927755 993679077 374178628 917035339 393138393 853952342 48805201 792252043 409791140 853744532 591154269 703666470 877972426 958692951 512293225 944887398 798138466 904831128 304292242 798532822 874658004 988407532 441552095 939548838 432673814 914844825 660625153 982939164 292718492 461227919 10507712 650025956 167862080 344419154 436686807 969209027 322358510 551205049 129500355 738058256 770577921 930287304 316825192 711907014 462150168 697218491 699816177 916789882 10905235 169795486 868697924 907585136 299057274 528621913 848632719 884026259 210139940 575492784 524778380 625851842 346136730 356359115 980789244 981601944 575875382 857276372 3821062 434404567 111166132 232707164 888886558 890642670 528077739 706634137 826951574 863856135 12405960 22953585 119073796 983557873 392760550 508618963 269067937 540172307 2437325 878384903 179183974 930813919 757272477 835491229 247306384 418352380 491601516 967231264 226649609 580029650 460702490 919175513 596685681 938534839 675395223 852960007 59110239 993146247 518300886 898980344 568145274 750094662 601102350 903703771 358238854 646753363 187629696 591425671 134058142 280098701 801916497 822698216 537826208 768135892 313215666 494506755 466301514 966801806 586705389 696400233 386089061 665623217 918255105 943287925 161400393 191321121 164745204 637944909 587182038 589254339 343596708 384880031 711237129 981458954 616060140 709424434 222173225 628296134 806496716 972914193 303218192 442742637 123267017 554621603 207585591 887930506 240649197 319495928 531168981 695781489 755531931 999870250 465047558 746822025 206398831 688889009 734939844 926110229 110266962 845178039 536620604 669198485 786297010 795383381 368511304 587229572 980222882 983002848 286634033 884164868 818622001 836016485 347218401 540554667 215263156 565824310 794697224 986433756 39957218 707101060 583452882 808341142 264009570 366952624 633443443 900321099 442439046 633400084 148406982 483222401 932991564 977808986 132988481 405101204 804241209 861088824 678431264 912281447 23944722 611431152 212352315 651202774 768428620 848648674 907514880 919525504 461132956 537740604 132572956 613854482 657638358 819567067 500596123 644942352 330548803 962073161 120702158 958283880 803365360 806857493 717338942 881481438 780565645 955230312 850546859 984837091 501322473 847824922 458275324 803774065 344346937 535655722 34817299 748856791 984424613 997128679 468599736 907961936 950771690 993932903 996052954 997292091 476474204 775940738 686344463 861236538 389315402 888515090 541403965 572685654 585546096 650186564 203326523 216177521 595988776 812109986 381788554 533135015 478825671 723111961 424557307 894797649 305157772 806155288 488916881 994029925 400238880 803074926 962689616 971007168 159908347 817734633 56412186 382689247 377205258 398229680 931101275 952947930 379167463 773366813 716088688 802384767 315366516 999353786 978272062 994804303 665089752 830398983 158334143 715538022 141132959 347158923 190086747 807092930 547773672 674845602 464134270 466511486 870157562 915823177 283013968 371670877 544377671 650582087 143615991 481725741 219778438 634014980 381689427 999665060 130263000 860173208 721746984 960327219 140821014 177926965 320512982 704369444 889662115 980706768 326743811 638742855 553037629 724338400 547546913 751527545 673009527 935858027 977036691 989443269 756434890 841424856 864955471 972844956 714280742 748911293 880942082 900342507 104063551 173060433 491591900 652651324 775905682 824632068 74238634 100713447 782576984 845677366 133093703 750250722 442569479 450473376 304139491 749320629 476956710 538615059 527333794 527553272 63610097 899136103 151477296 638964261 291093073 906884529 243686455 390439366 568896088 754544044 626355069 926885600 317697849 828783840 68610978 197853747 146323632 625225256 430845405 757488320 319498853 417315566 550803107 793606705 732908158 842793140 262700119 761204840 231679055 656935566 526632012 550860232 194005433 469413462 531947881 698426996 498519975 634707308 923724795 952271132 225026831 679597041 32653035 618240664 307074514 854328275 129307386 790474877 433594962 766055479 487191880 845647512 346239109 527084357 90729634 963081852 681195148 749417489 34306418 291211498 842965931 925259780 88350127 644871156 401391521 793749093 578534771 942806673 716951969 842329942 101075860 568283799 441391759 516381038 770203790 940905044 276741232 679795026 21853973 237865603 930919973 961681740 716201466 812283416 45231619 442709131 773234409 959589928 752657789 930884387 759583384 832832703 669324287 788403510 67023374 626365066 203122020 503405905 744961519 815541968 67134401 245167571 531484756 748987042 611221576 628799622 739067094 983317534 703566993 850623097 534749736 636061960 203426695 973042380 210733444 321272773 386094654 798087305 572756530 986049076 546804148 678553599 630783334 859659133 356309671 872043586 595350709 709062089 4559445 9618887 913211901 940721261 555108220 768865410 299534284 629078299 167780282 477511437 245717261 827759421 195013796 480827305 412186888 990137065 916899019 972572318 213606154 876090776 539349639 757721750 629085118 917222852 652829965 891873007 553948474 727553603 586553123 880902947 263230918 333279613 428940499 451358966 275686212 444919039 802011916 891220696 948005758 953287987 33240572 275103430 788020095 930225977 16505080 823470261 727877281 734411725 826949720 828766984 358643509 688762043 924056184 990628596 25179881 595715479 900657907 931782672 71736027 227038977 267305542 436496240 746812870 992896237 57133371 884319530 789432834 940958695 395778408 593921613 25671793 380182699 471440280 928492612 231182011 718326741 361715859 810522237 831074005 885095063 573770600 696926561 878924027 904987307 580949401 896178925 58932824 471444988 82710073 154562685 934714785 948724523 332727044 440856454 481254576 874167833 422960199 826818914 337279036 774842350 848919900 889986324 683258075 785150914 63778781 928810802 856583915 884297826 40533526 57339058 228820830 389884922 224733831 628705408 603404560 858690767 481269728 997685619 652459930 866029558 292502257 627722705 610457385 964852914 534030890 593249188 625330729 722327379 106089837 916205980 730847605 785414521 391742759 818933959 885234976 916426659 531168033 584180917 212805758 987627181 723082762 893081746 976835094 987971209 634821605 822036714 710937653 762728342 259973728 898568445 199472687 744603091 266266358 707400140 902557761 960413003 752009264 947023319 475449937 864470910 349411581 564547377 224622419 779362026 358599065 960443957 657158206 732141862 725187595 914365143 398661488 642949352 220786728 930048297 14995552 490006652 406756308 660445689 984803706 986369518 553251725 808954351 803078609 818322292 301931095 978164849 743558183 959044032 457842926 714484133 22388467 867547517 663553428 843216731 763147376 830172860 233969301 677197276 510765834 747783960 138314901 397597055 340330239 904344260 86286198 433214745 353969617 412637042 613834337 990654147 789709598 937107891 349562797 789328392 835843154 853165120 827546957 876104711 487925870 671919390 457658414 808473289 943116811 949721436 33339554 286935776 383633996 900237717 51475049 756363476 972120234 996761825 730255413 942929734 140384695 764272997 381533656 775630130 260567242 813741462 884657355 908941379 818814149 868413180 905555138 984759423 83688555 303029625 712842402 844266146 848248822 976789290 590635223 897127755 774896243 886922713 648576937 652148780 818201833 976869748 493852866 858774557 38300043 745614161 967636941 991675121 216795366 299490460 44068237 155343191 25735007 932920688 657375633 661221988 685886843 824426167 8020947 258611933 108633639 811870916 648257460 784447931 329354006 835158276 111804662 939094421 962415938 987703585 689070990 832412323 973857576 987792669 666410255 916839274 277963538 305137977 921061323 946525917 307095434 863376305 326801922 446552676 637468000 697254954 225743212 929036719 582903051 950824344 749427922 763250483 56846129 153822122 71380555 765748224 832707390 889055330 634393032 740186182 119670148 715646370 251753481 479709113 61327624 440829610 925152846 985669107 794930615 974699604 559030461 817884775 360100947 463098557 327799432 676591599 358297595 401565065 341389544 672100170 584084147 619926604 862389216 936724906 803574907 908055451 197851299 525408923 339130620 844182339 456664966 891854406 508585534 882136859 548967609 782773301 881126860 939555837 423364914 741925680 419227897 452712212 840138578 956870313 803910257 952971646 135471922 354422540 329078459 754436660 924724397 949819966 443871222 777136395 557667832 597470652 931463747 969329621 925190603 947241505 987856193 992043835 867162731 885218478 817310470 962515476 559435284 589704692 584894850 686025872 765415800 975524085 38845064 715637606 307111913 847304933 828692864 980245787 18175295 538797248 901035896 942094458 730450674 814486246 262497402 337759172 905773719 919925590 210649599 321913011 914669250 999878776 904561853 938182210 996928912 998025370 831921508 868399968 5270339 350790678 443827568 929411541 953688821 974391444 599358950 923499644 305433732 679263173 405695042 708026367 865126944 876574692 443217534 445208300 826679520 974609099 585913762 807168068 588766450 901196779 513754874 543604187 854151060 907368323 117007970 718930492 601945756 824934646 655671463 956420773 771268127 912636686 240911435 942566733 784763006 861234907 303847647 532013401 727990604 916541384 194839914 275735348 641677598 803425136 189919807 335940952 236307713 820283736 674349919 958323319 74454054 825087414 619814714 735705994 88237766 544627131 317523644 930091645 410130092 985708911 925867870 982628811 281686169 650067921 52046945 569010355 702134536 880560251 8708348 649361045 257629387 425454224 641362642 748820566 330761359 451706691 938556345 982806704 31894185 517556615 351792542 937349625 549237588 998499841 121758219 420639642 303578479 756739450 652097290 746725440 57484178 720083894 669805781 916073687 422152227 810220541 427758929 803683881 81890501 241709504 91524727 257742453 320133650 880364298 315440890 321276808 947132027 950472255 540491047 587783074 401591438 872703265 643233363 866766317 719376122 923018194 758862019 760792932 10336570 387837298 471143416 958024374 915867988 998823544 860816023 866864699 608549967 667267203 21216300 678847437 140748454 782260687 493352221 732812617 575862340 977489543 606452394 697189843 883674076 951842837 921580727 970508377 910238039 931128450 132289527 291796512 396581084 449985003 11492000 51317540 275046107 940050044 398522743 739683183 946983728 970648668 787338181 837308980 874880121 884830149 877630410 892281590 839333846 857596071 606892066 946207293 144994406 302016828 346751055 792294368 837933167 881314141 426874760 887200835 422335363 606538905 490476097 665792936 662922767 726141812 360901997 750403183 295929580 763875235 406665829 544536751 668839931 755072831 632820864 877476117 819274616 989019363 287518814 415960004 759464081 896425646 841557841 975461605 565737314 586364079 53192892 507819640 271869299 373386547 460872711 735336714 420233256 807105541 978665526 978712700 390653269 651082818 625712495 846528872 851991612 885048623 193783190 823435834 920975934 968431939 694167634 810067572 813370336 868624731 588404553 608461428 733240920 742772958 920929926 947541815 14048862 642558329 618609994 694217217 803911665 822031718 452397479 829019325 623895892 973100002 395463803 587122878 585603604 711042803 309469647 966641602 687259851 840062587 562554355 578451712 812113280 859562386 71916724 899331403 938504390 986467100 74140492 139458982 388957959 447470130 164018417 696584231 304762137 971432517 306231588 586212134 803881168 927507183 934546961 981834261 143863443 381792495 614809877 944935190 292649842 596413026 811455545 896073771 85868882 797527525 621789062 935520495 351764477 641720816 321832082 445682046 119142691 870426315 254770561 512735628 907386259 975458797 160406357 381984284 286340724 378346042 766380188 890551674 805520018 931454645 265279952 944062957 978377579 997943754 591925652 715596438 280164511 466356961 235298637 609367299 630845843 707455820 743903281 788414617 750210178 809056689 7420773 227630004 893851891 899904811 529502811 796564763 530295634 962708952 468856320 693699127 542796979 585196088 218013892 825153902 320922438 409987232 136135970 924771654 763225540 816455955 254754154 579629180 735356073 889576323 547765940 557413045 491268088 685647132 211300490 907290165 396905085 476829735 885553167 980006399 120879461 550884746 766599357 800696930 740237444 873195711 49442242 63788674 393523586 807814639 725654581 981178368 305918257 814034488 522616291 903965233 768857140 779070295 952992863 976639000 878329341 974934708 641269221 929894629 273298839 683397077 795625804 894898129 292342497 496640463 746093999 821431189 323265422 512261957 296690262 527492377 307732878 582506823 437172529 952589235 511148465 852678801 705711057 719334069 953290879 985817079 799531829 807991354 515706191 529868635 438531652 743802248 623726072 966396355 818007922 968664126 699069392 981459268 552888258 772606172 900480482 967597260 771575989 813133218 674554151 911614919 53392462 900600961 647712443 750549555 43363326 87980661 305445009 536017939 133555818 340842461 13175509 850193660 44537316 551251743 511042023 898944044 443319754 847571495 43451239 346123425 654207843 845852528 267893466 322856089 438166323 883483214 511436141 974537780 360971516 396615168 200093469 233528611 264035654 384552589 952780391 958500517 307812569 342116864 416171453 475638197 819922184 839363653 70540457 900997989 32644525 740344762 551255346 904413612 484010110 594593051 630445693 644316450 56802580 492768599 269031527 837087297 203981739 978246571 718514369 854905354 284823400 568503219 723363231 743445630 975995238 985627303 406187439 821931230 681260226 861250696 989717203 996879170 414512011 813250343 628310217 861966800 2111110 630185124 506624361 728517262 989784312 990607946 674761517 736433156 992608536 997510819 381657824 842688762 546170054 693107828 290188257 879614753 262217740 889444260 568472808 764224121 408128892 755963009 867427548 908854489 734982401 740382365 746839273 818050600 623598168 875259248 605085584 762160256 459388987 845516127 174717646 422963694 334753346 712039020 300433992 339582649 305168925 639360238 586034067 671969257 500529977 646867631 134421346 414253204 377125872 814050185 102618263 370746377 40911082 950623509 755831483 925757500 327412732 806633753 339516947 707621520 922149382 958068255 99935378 776338689 774317765 952238315 248458128 644026982 380674669 855856948 800532195 843604748 958037813 970047216 818459044 902574587 1928954 987102911 697257084 895776493 183534300 596580240 989997488 991221156 905701616 995618474 661862995 844541456 901440351 961665731 25372841 658750124 179734232 700341718 277868251 599472440 282892820 943468030 330970713 679798069 682209578 954743568 75315051 543662350 416155820 761802027 248820336 781415549 782429973 817734739 400958959 755011927 297287116 864838243 890902408 923818435 540623070 829457762 7024467 936944258 381312686 923136700 640299803 783886097 489707110 692307912 946641277 990962823 139837324 519584293 751531809 767938485 633029217 634818707 525460561 930699749 120353815 286420790 378657443 859495005 290545970 571437690 766171654 913321526 636505461 680417517 581836648 933689280 179559503 981930132 943571499 946372621 79884250 238853006 242834550 438137499 424388124 501137394 965967386 988682302 232400087 491370048 272801808 850281600 304498808 607143787 179760088 787494408 304330329 829970211 752766267 960443209 865001239 984326997 318114044 718501382 456388053 594101435 358726868 816840978 383258209 830635740 6825136 620681918 268742606 833563787 509122801 880376928 153943444 308971594 794321022 952433836 639416107 935451139 68903042 683483542 491827067 594890040 602834657 871528026 472877841 700048036 669938923 958597100 664229855 820155821 502596591 965234290 306077169 881394145 372279135 762273709 99615581 537008619 296415644 878118891 875166429 955417948 709031521 781439026 361558274 409060342 356293051 509855794 411523932 567159193 512393958 917376150 766103014 986940402 796236795 948645429 186463107 311555767 98768099 458302389 197961902 406676198 519276207 805610013 808051733 825152722 924474261 988383364 396079861 754436373 301020056 969916476 970513315 999587332 314304324 785843107 675374887 849798133 837842449 905352240 976034618 978372499 232866576 906570222 930419717 999379231 880059582 896656634 670503576 930972460 408455503 629938252 960223833 961399352 462035820 984643323 728932748 812846597 326366998 449600503 852616209 933330680 431888910 830666406 375648580 662146651 691443781 796152364 413947847 772620368 395972830 606367660 414092575 868716620 357002569 510427706 998389297 998588622 590773315 755658587 523655331 652511593 278660624 837685768 513293943 862920994 514247313 684072979 276871886 891902722 758969896 815408019 441864163 854489441 834266334 890007070 44386141 653492067 833838547 892762932 691024319 956895473 546059988 585756090 394246988 402926654 955197437 970084849 955521450 997240793 485161942 623765725 93075555 744387912 198313084 236608959 760693281 942219651 110350490 988688028 231114104 914282154 424615339 525982547 147536162 507816676 325110994 412653339 808294970 996576594 316354255 700772342 636819655 738353205 846579122 964363500 528393821 858172649 924867512 993722058 564484135 605262987 311401798 830451223 298415974 921598486 317016269 538707938 300796095 960149532 90988792 160356046 203634650 236068618 482139221 899599578 646080378 913439831 910180412 988787855 142463791 171994020 617726396 889198413 634716602 904150573 662155098 710826248 478352468 597832412 608408238 686829181 605292462 772329896 732585439 874295630 702350187 717567804 892364935 978919490 767309912 972377012 514693510 636580756 192339851 898513121 140254997 749975181 942763144 996935809 391004098 519639823 741550620 997080280 698379477 859607947 922357221 971620246 395011099 977120136 246771610 671644104 224744200 333927133 167276966 754293692 310338736 739229620 724367059 741874643 755999954 850402999 941078738 943497668 598999595 755565511 884399745 987361860 220387658 785164591 167667199 701081732 813715439 819263980 520331762 671670912 269201614 731785899 394995223 565086669 956156628 993952762 308797352 771597827 874875328 941774024 833019579 941023597 759710063 942037563 358004994 538242370 619141239 810839948 396653276 990286368 360382674 860359579 980196764 993647280 315253088 928738802 11872659 543400835 293141708 429381033 181964739 655876064 593188867 790033012 213576885 548325894 659641086 708390222 961303641 983101456 440568127 661924084 120621569 382991891 893664000 933473625 365104023 859509703 727834272 973655942 2895216 854344387 914230911 925211242 628457302 767557358 641445922 971079319 502578299 918337706 397852809 526130524 262728667 415191749 877308048 989320709 606689484 951940012 829566956 994142105 719889899 850417385 110955156 130874808 283182310 757375323 781231737 921917562 418806938 738306679 57549805 478626800 571395591 612470654 974551851 994392949 817354307 850450278 301864184 316916533 232839054 587019617 521053708 676745335 698568386 778406329 963691079 989141209 76468948 907217626 714543921 842492780 77061794 108607228 662828714 821688721 620452626 741600601 306537 784631407 337883223 743025061 864092327 990466430 637646973 737574323 803676801 815904104 59930306 406438522 304565528 405601852 775623378 851862191 421116339 493411306 752109507 892201144 670697094 727259637 294116702 795513915 514941578 705403522 549860702 821416289 89965386 411611852 207706191 459966082 535592918 720114953 362349731 390803199 352498321 689696253 295727837 920782467 99345143 352386769 163628494 454029049 588324558 851964412 70579349 173126247 719345863 737595466 235135513 770576890 811650139 960774394 369470783 408465190 247637475 952694943 954780680 983603417 196364843 496628900 286865287 304186781 50099498 353388171 875082692 934525538 564648385 802594670 606015022 797806578 640684070 728096079 564175428 718545057 58729828 384457908 16589611 37081651 434703270 747202349 381646033 604059067 175917907 443161555 265938089 385345562 487020836 506711460 375728278 978681891 897967975 899671789 342750826 468298843 501831687 719796925 635828218 935587622 762594497 923120083 778652017 964372794 331355922 394708424 906264758 993425945 241343645 992714594 97208994 662960532 876094402 998646430 840737528 863662174 965178178 993773847 381121323 929641638 37398843 404332485 247810930 324831060 496737616 522439568 792253416 939752523 834100877 850318519 259535387 649454274 357589506 945793804 732009276 894877355 948442094 991285033 802788954 809772264 348270017 833090856 178305140 527189826 635062720 680283245 23870003 99889503 565038236 916522181 338582354 816586252 734676069 955254979 432037992 692782577 460632589 856212650 511222154 684867373 161815194 704126525 938780446 996933865 235561001 413446730 384905649 909647743 476137040 478816770 551257688 858592287 988305051 995745051 492637092 700265740 75751977 661658077 227319050 621367148 780686019 964628663 322985637 984140180 791657418 843307241 499599202 790028779 964096124 978379412 825770339 952778912 574916853 592239463 666265183 756858237 633722192 640372886 250706737 377215882 491093787 894390004 686058779 748621994 767449510 963962777 260537594 558551655 844635653 997910874 802227311 966816737 250688325 359694939 593980663 866817049 738307779 786727812 76015992 183870412 735799158 831007989 29631619 396438956 28007945 85339283 779865145 857171279 311098100 623570543 75834442 651510876 614037159 770197815 849028683 896122367 396652731 568272188 912370207 956443295 468257842 610476651 85270226 472106973 320211596 928312190 6471378 230102327 234256045 657504352 279823287 399369025 839136446 904171439 952210495 983816644 424788968 443865244 359484567 738654108 607774418 871230651 680377865 949956079 637378075 694180387 226984065 372987850 612948811 847223398 770461814 989350158 685403065 709837044 291690900 733397878 276275142 405539199 386699149 457810081 518102114 714666789 156376359 689452200 157878517 249211631 100118669 346501560 639397274 776306777 864786847 941074171 119724082 939806488 930336691 986094204 577552297 847917062 252667343 439817036 924965252 949522047 701404201 869730174 207899502 519092470 29892236 716824139 918179616 956457034 346621266 977514883 384382143 670574505 677873290 870231796 812784114 977557237 865028667 958487162 912284841 966110340 456894793 890801858 776775795 956059234 150162864 649336681 716518801 758070597 701820935 887893717 188133882 192910142 169014630 722793698 679199268 700123507 720782417 865532842 69276840 483837060 87868879 997288490 572284715 740471354 368201429 415622535 427099920 527174001 478655846 673127512 989873696 999659037 681073989 766598779 749102334 779280939 713490648 733874157 563348611 737142025 827469909 949760394 613953678 775555584 356153925 815463578 189876761 969086811 654824940 787321414 829794300 928911448 955879310 968746494 253408611 645723995 290316248 566214072 545118769 799840075 797047248 815737716 915057960 927000025 362692055 834163129 782586266 877356857 79986077 241954609 692850800 892679259 77342476 818765557 395450849 631785095 434749275 532718634 868021871 941674867 452093791 499548380 26111152 864871250 348838269 962335143 178921034 782809606 611687798 879195054 626790535 727682702 162477570 740484256 718491001 944124968 60211037 91383265 72579288 698259931 937403446 968172784 869278098 889564103 463397515 671751275 106826587 662467492 112032805 952170353 886723746 961449792 978558798 984106633 704756564 706394459 799180049 884304897 890832763 946901760 493859745 836630273 753495689 889462140 424089829 809756951 880729037 928925655 694826059 742982996 482779310 551111774 699469823 749056739 711215945 814411402 848822128 934422688 455453273 504813053 934762832 939231203 10204847 164871670 651858115 774568797 463129601 683584247 749053693 946218150 221262256 330598471 156365406 958940607 345782685 785039084 878220918 953700760 374568252 720703987 443973881 710993999 227816327 352971225 713523414 835596253 760210121 793230416 478803816 855193240 654365617 918596685 623886940 951712088 205165850 619095982 115279799 298629575 965237941 970506993 483998334 840954731 772542306 819301426 144081803 859472988 357787085 399282854 940803014 977603606 48475915 732220894 581025141 893994245 235917352 942533611 301542682 468304057 613124188 828515273 158209236 958325228 545122694 776890673 295805998 448290893 811190919 869043086 29194903 333275682 405463069 905571908 486353419 586497882 542252923 747563567 994380173 995467896 746798242 826226099 109757576 504171700 868146368 922720476 611350374 976013126 326254211 538078356 154959866 920858967 670636306 832916199 578965209 801963304 177326596 573504487 158466163 312224962 966120647 973361343 904863672 995508745 6923894 60351143 38493679 889163108 508193099 656925039 176786269 301755039 840403162 887302803 686725014 815106103 399700522 902778897 235993822 545733881 950365096 999596137 74713532 457958029 922629126 996151949 407944876 670691704 117829206 550276574 414519586 461461842 634938275 929304609 449676935 493614789 687672479 751884686 566607480 748459776 635220885 917786384 955748784 986144101 871811516 978693625 872399565 918607063 150102858 279627576 626248703 741687709 33351095 159610480 764806057 776759549 644960922 812717596 904374761 978776153 862658920 934417038 160915773 978210286 686775427 767559307 398238881 562618992 703115255 776574027 874970775 916608266 21989716 818253859 332364890 404890773 207772862 927919858 883627398 983152520 408641079 647132582 158625107 707884072 598786588 922179054 596965299 940099263 244132373 553469005 35586999 477988566 652503259 741686739 866775847 924634221 219899650 821074655 769185156 881857094 763668264 960533381 853875834 905038335 733272013 861333601 472124075 755757953 975071201 981840960 185920442 812071255 450989852 465798006 467474515 664356609 178659787 486043241 577544967 821561904 806625998 881226344 117056037 238091818 316206144 475859461 23714660 554107811 345408776 436549544 929431052 935515952 748649865 751673003 193517020 324172529 298885478 914784656 916079232 951374692 625811932 891906318 710369825 940754200 344826545 519437650 215506716 360910523 944041022 972438205 853292288 959148045 835371480 981604232 547212960 767935098 934069849 989414535 516237405 946211658 826908473 964774105 443486167 620670226 789302374 965492405 961463192 968967307 744382506 816211406 648151489 967993810 678445354 915592740 912532397 942465090 581367394 687860081 524693304 728420558 169556755 604168711 773369889 886141883 367517516 882715151 55351486 105592776 307820072 681245208 198603899 585989801 116593519 304350767 422879997 832108293 304749095 642358546 164731642 886622918 892651755 972138933 840944015 980375135 232131529 923363535 38902852 806305986 361119023 555972078 108402891 803791129 103988597 849348515 188658806 628894362 330605892 969815405 741071259 970936032 884402403 886341491 722335031 724256047 969807680 990330776 902975179 991284351 388832005 870806636 67368545 787860653 185730770 387936301 433146189 777667215 288998531 330612361 825819937 913119105 536508674 934705246 777601631 968204029 761197672 859976238 460031791 581915394 404915974 778954027 558543949 807444750 956779776 984750298 889628392 992854789 18286005 390284416 963888307 974357765 606716870 840302516 432486354 715151578 552744438 707150577 354922842 469691570 621858286 795785240 332378266 965809694 312739594 712046124 179550905 758458628 531309106 855447922 4244625 142072380 910260739 957948694 229419319 272590723 827796679 903290553 500178923 614776046 309522140 421229444 388403928 791864144 40773959 621665666 995708347 997377117 730413410 781227642 901986583 978386315 270293195 508358730 907591406 924760202 146619324 765409585 238467527 320817567 601810613 956990032 99458978 734413419 520721347 604220144 865412084 986383761 926917630 929245850 971366046 993735733 712017694 939808089 815176941 912350079 131100627 655325208 507436440 643697531 373442680 496614545 521577267 763477081 910826504 966821128 998371058 998466873 83146651 564238451 682672297 925067093 887468360 919314187 200607011 879690064 840058746 962335582 298197630 662304211 150648784 367131336 9124671 409411239 40926129 573278534 435982257 943308989 756666309 962299897 318206209 796320217 541081729 584266365 961596468 979964371 79457828 451338434 589740037 743871564 702198374 869601694 446564209 650746972 197372664 997426390 968730155 979561089 320428200 446711567 316181389 742894470 994733065 996292313 621110685 736579594 366386896 855321334 948787831 953629580 407391608 759305365 374435870 707590726 297205877 888836512 142676772 740303393 785024472 884979448 179703232 923082971 500310496 736348934 660808117 944362093 898657668 967410392 908613325 970855840 585565400 588202930 401145581 479455574 494049541 935473810 290059382 679329912 743565706 931103663 324352885 678480178 612817653 817786517 478989423 676927525 426188719 550642556 207746964 592884724 568865179 639779178 775551763 789014702 629273794 998411063 537177214 584385619 509412283 801444536 763263449 985194026 272317705 482451194 976393093 994549452 199049332 299752601 97694018 960195320 355611847 890536466 160169223 244355152 81340893 522347277 990837840 997228284 641001054 678085701 51502684 919517262 9180437 735666993 24594920 445298138 735909550 774873567 925948671 984545530 328960344 415317180 136027033 690161275 745550078 884743343 705449398 955822516 8740085 421950669 145711246 881639722 115925034 928628486 684304930 788662893 449548451 768857732 695874953 737975217 749545617 800928023 140952851 905967606 613726236 661449669 547407186 751270419 363765569 579888098 834339390 900892188 858724458 864869560 291013648 863934795 983206584 995842481 189556704 193423249 485902878 533004702 44403048 366715793 360077339 430834842 516812261 604693524 390046511 988504804 546440989 610815953 77785663 314010859 110401869 578068841 893718808 955814374 300412700 763462580 299275790 564020382 973568566 975738201 417590751 839380910 698415147 948105695 113341842 400607992 933908061 998463384 785642180 898864611 254349883 686523358 674924761 694024822 520910900 977443502 128962000 512272653 556500852 907546328 788650627 851469424 891661454 977209610 514092644 957978919 56129936 837209709 552919851 754570330 932589549 961632777 861910260 973161288 39233340 255716633 996149728 996640061 296922486 445718393 463953007 677556033 906709246 953340962 239642462 273524871 746694179 971938003 824388269 966428151 880933792 993683777 839180345 872747819 394892458 701215284 924719140 982055710 831964923 965944918 84864094 126019769 222169822 668546239 668793672 681842401 281827990 883535989 996190981 997086737 20096359 20854176 893670641 929097927 956968244 959732186 40580171 314176302 606926540 907974956 737468683 865317176 858248986 961231564 23199013 114448034 129906935 211898104 740978050 960207137 81895939 615029845 978395601 994014416 49204128 93287292 196024646 880048892 543853529 880383505 76735373 968452458 285929152 770545904 10709220 203833338 795437196 937542152 244662501 643224721 237240204 946756346 355675874 393805296 23971005 540384128 661423345 856110563 536307411 778218211 568215566 818487617 73334450 995488142 483593654 930280900 207358138 895792454 27367163 685190446 438358815 922367786 328475275 793409017 947772567 984328125 125390809 990475009 254013895 828015753 918167709 986616029 941811515 963493106 471761672 880038518 512215323 668274165 693922394 848255073 771312298 993257605 308787460 969323728 750309038 875531079 169966983 200629566 672833906 885911298 462753160 657888719 197973813 269852139 532788558 997032295 321157985 814573255 842908905 956314022 991368220 995283606 410114854 599864844 821599649 937867007 322097536 348545273 993954639 999539412 603986065 769270706 68595590 110639205 235477474 778190127 280255303 424038641 894210173 931872304 279014422 918873358 660826537 690133682 545763442 676708029 586379764 933422057 900762412 974137886 677898679 958453825 967435796 973371223 299326337 349538561 918291867 924023445 539387334 687835877 854085717 905081041 740470195 743660234 988445966 990165737 704888049 982956069 102934889 849498078 58193047 626207130 903682105 941873598 894690631 899339638 693796967 729366956 961740388 991322966 940626717 972579044 311029070 401004117 665643230 788825516 301113296 918970140 435308128 755047041 841626343 963225836 534902711 737184342 728237071 832040727 723737174 952697383 824280908 968974574 762776135 980720122 230604581 495943659 301919553 481182998 495587933 909900452 603407707 810927238 706594031 867978611 827832110 993087820 742692752 823823583 836414002 861612646 54059739 843089266 163389603 291592691 965360993 991775487 261798621 948953884 452429389 755068468 866521357 919444697 767394956 999370839 132288776 767248684 822958634 882295484 492308376 513664678 564184287 972468997 311661040 740312198 976219614 993524266 327369930 788381362 481367620 574223079 567272204 944112867 160816203 560958294 569598295 874581263 883641144 946739480 936437177 946124816 333865262 588082271 273672792 580998550 179068226 548328229 866730551 992571394 495691129 708348093 626221859 760793022 94987337 763166340 690469121 718828281 239907679 722588110 542144046 829211714 690278326 824586932 429568172 510575426 565173387 725346420 444836166 647468256 103109339 641030073 679032487 823945062 727586320 863969076 951852835 985701398 758900238 764991388 43348648 507518260 938846057 973242908 877922268 961163941 597947055 830140931 527437002 852546453 804080770 935054675 158029399 655853493 764386884 811092568 431348471 862665862 847920379 979179499 633653585 880373436 581019646 928084885 936825284 987049182 467745590 776648965 908496636 916653739 21306417 904141579 856474995 952659975 70653200 824480201 700552448 967530470 23450909 653661578 848799304 859946231 255268887 854823039 630104686 941949869 744882585 808544229 492842398 994913183 111973582 151579475 781082245 927127842 680641679 844595401 190933680 319718720 838150576 934515663 82989792 359875489 283861096 537684731 236167845 798080115 850762101 917137376 200693272 952076094 88112643 476798277 93586764 615075100 809045525 936127701 9806606 88599899 389333159 446234038 704528280 742964496 774043405 833595348 320615762 474861085 281061209 958123159 594365829 606095763 239352694 919197508 239688601 462934394 278198471 287918259 836343602 854283885 640401967 812002590 504056582 763193824 363071889 403305141 935423752 987508772 106847361 890175393 790411121 931138246 964274425 969662929 382003499 953180771 95617263 114746543 960092205 964085537 567653624 777971958 721942593 927718733 851355421 927171330 399116775 929779122 262915449 563376580 105239216 175686652 325072065 745610370 421991562 988698010 979523082 999977515 324935664 971121526 741766956 848839758 580190352 758027279 795216157 904886812 791953322 843119448 371374235 441564014 229376420 832208850 457729654 481925905 476836836 862440706 39280208 352270776 624116506 973471775 212671717 400559695 620906331 936619885 244964411 497029361 368813754 857561749 398508344 615467693 932368934 939855093 138075229 300404237 119014896 425460678 428397496 917875524 209648264 747086895 667517329 972805549 936771458 970754208 67062381 971409441 43520733 418464370 96142871 257504485 520897116 971368656 739216202 810060963 869974967 923066578 536435018 902443769 469144637 551954805 271758240 581141408 211890585 937399431 56461501 619426551 885171168 956365056 95337373 504794820 353458798 703453909 966209972 969917492 466566718 960439951 922888526 924367894 107744645 196916705 378056374 667792785 804186438 927709401 358023264 569969724 300423031 957554345 218157747 433202042 376284160 880400406 48056382 563524969 918157685 924789328 102351473 347641075 563663521 865964166 879357501 916249281 35455941 207739261 744209020 968390868 636935578 745925952 629936352 720457252 206168176 602925620 268596233 752815224 185643938 253922620 773338699 856811999 771466235 910011235 173238174 197307382 402364792 954030151 219229299 882255380 804536975 910816515 891164341 951286875 532610468 594023161 571228588 731489308 466764568 571730980 840041051 850365898 761143765 989531141 914936894 929415714 421969087 729577185 146176065 935281992 815407618 926367268 924048028 948885266 825303613 839811196 307359622 956767697 387930560 629425183 800084995 955947487 930443207 994144879 437219958 593114719 521527969 682856501 815667523 996847112 644276343 922645486 176875233 554692830 909621242 957916673 394384432 835441352 305841 311079963 611990694 620279499 574841593 649357639 961124437 966573194 438898549 539548923 964746934 979287606 744105733 929096865 821038346 857036602 763026014 894168226 341868729 926293609 655358285 718677726 754702270 888288600 370672668 781157006 557528538 970625662 224351026 797269662 274152316 932754771 445024968 867303196 766059968 867330400 917889842 930871141 66729865 498570455 670971479 769483030 445591491 762788404 653932640 999425520 631282891 949595977 748882184 778797267 299420540 390286138 608004898 741386330 626260957 650545049 259525009 419388943 642068105 909280608 947173084 961561494 174952220 595487713 730235673 738062055 126731684 136724851 433475903 985420848 200496347 766692320 301668960 393900653 970849049 973813412 147976012 441088984 400728248 816790198 786660173 895361078 302638324 525684704 616671570 833970418 637757122 704478084 89066946 591064790 852146434 948745045 31959842 901499985 74081965 915158592 54603022 66366806 404882941 736749698 480666848 973175413 784156872 911926140 299708996 630218985 884689447 976106491 185967380 613205589 288246159 551394588 427721356 556595483 746529582 930583629 79624898 421756316 566828171 910256689 642804602 920799720 862229769 920000866 363278553 767239769 66579514 341450444 141352785 371828123 24147248 653180505 961615334 974082674 377309786 662758088 42806049 217661064 162307218 530903169 972541957 982451222 926224125 937692361 324758708 543622730 425472270 674943320 439335751 760067902 264256316 487931858 681816705 778351788 864526259 917580335 396675313 682849172 25788697 335007991 764113708 810751894 132849395 146699511 793726941 948101289 469800775 556848713 985671213 987017544 138117802 968268849 255121188 384520322 155148768 283217918 666737886 832155679 800950543 840806233 209679234 295604638 468632209 841910630 621114684 736418777 192326004 469921048 820582802 858214146 772186295 938333265 410794943 424418880 643723221 722626014 583485071 747333852 377301362 725049206 666570763 670607117 212605185 379175524 644570583 919713967 168882401 422157887 578980775 652923611 794332258 967220492 186733602 287910452 660328809 970974738 270144235 786548780 939859831 954160283 369022635 448088813 98927277 306721279 496119077 901835589 59931883 671633140 850864034 866655687 355810407 695660667 82026056 988170193 959492250 994688516 205604831 798721629 320675273 325250329 816840567 951474148 490556887 514327260 121926414 327198402 489961067 996855980 899649929 956429330 542180328 941795223 885708144 891509650 669557342 684326151 807233563 875875142 612669645 664281646 95682853 249754201 424577490 566985910 811471763 859233396 279430482 591323871 927526928 961740482 331328305 873275071 756671458 833573441 501517132 670412034 105953357 506252549 544667863 680880295 558362612 848753624 874715653 992465818 867868479 872884517 951701179 985787351 499189026 855938759 356582209 395912269 771096634 812576917 428634490 457315656 182138422 531101751 191651480 717277827 192687150 418500346 428873765 628501729 703581514 799887497 321586890 806846740 546569993 639315049 230261576 349343931 51897873 825173865 201620102 830069223 876382233 949008521 273287174 785217659 643353134 693708202 257046650 794454192 558545562 658953002 184775758 907710047 425709707 912147187 140683079 362701491 501163263 511794377 301199040 683533375 825081406 958617422 93153207 161955455 543501086 835160934 749530070 886576927 12439275 598835708 687401109 887185481 148304681 357528689 176389933 180393575 768709794 869994070 245470393 736567954 602773305 678077542 217062673 492797347 222721293 437827106 754644833 857560216 573180930 736479367 142410207 145876377 75079114 348365876 351565716 568919836 180558085 713710084 939181868 948435656 271404677 391374456 960126167 989523129 4048074 900568666 122052845 320863677 592732052 634464815 1098196 848191157 251823834 889350513 37116786 532327337 374809719 936333336 635475570 943615591 696385256 943948708 329322395 814284356 354438126 838083511 298145945 980536032 711414968 791969216 832614148 965121761 38499918 371836263 628716856 703021212 889980481 945401973 586688297 636179309 735773532 797654417 477016754 887722288 928137050 974238014 127393024 641493786 961393989 961660256 872882554 928717295 188646312 941217549 427950764 961901400 172882816 787271936 486110323 745148957 193285563 389554449 346961463 922338621 575497888 595600432 979984991 984640713 189350560 320003687 190113531 944198391 126335340 170596724 565770840 701537027 336378992 898963665 587597916 629522884 561197555 894221846 556276656 585124544 598354177 771222593 314532353 871118385 795497976 800134529 433800393 860375193 512990918 558923357 356056961 601466338 63911238 738432714 383794780 819070396 609126964 851747552 737195791 980435500 89299751 457151718 854921702 872495584 84193668 145653053 439182865 621406280 174191758 550702235 658996427 903127328 118869471 574798302 463694865 661893503 167141334 521452651 544124678 691523561 530428695 632021372 48595285 95730578 16489267 37583979 288960042 608606122 382678328 804123259 318528702 530297459 742949037 930561023 285706094 873207680 50931482 855363230 491944176 890659089 191569079 226836283 591144979 746207744 166253963 779025594 958926941 960800743 979353579 979883035 814933754 975133431 204475723 772391552 215413242 397130806 573247543 776716889 762948208 961176378 718569018 927472541 761138497 962952393 111717667 132927787 97906518 692847459 488811351 799627088 232903219 580309135 206142592 507289717 368690848 482812239 376199053 768238600 138426895 379152446 662939812 815749326 598174452 811556993 970096695 970324317 535476589 938382225 696019000 706015006 603808710 764624889 493108265 952225157 87428087 237933665 679596600 875097822 132941221 696034237 428243174 966953881 554517538 738071361 511863990 906817381 758757959 769677338 174204819 843537105 878216346 888424433 721781118 838185017 419091497 952580107 662964166 715209040 44723076 235772979 39444829 201271482 774386762 872412969 841600021 977338669 806212535 976504278 537570073 786094635 966746179 991841121 173068026 272048630 327055989 394087906 827214459 902280439 339646894 765470448 655524557 781568954 201198842 337246437 615669887 818974914 423130823 646432834 711008171 949723500 939616189 984030402 68540478 647024210 94298540 831785865 328943752 726981344 312708058 860365489 855988997 995689004 448430316 864152907 754168414 901394458 746329971 805608315 672296742 906630915 624817952 695448085 670740149 976639953 479170516 531674014 171133891 296588975 64987881 873918748 3838225 421703229 440028739 493868308 879622233 956661956 351174264 385873408 283670006 687758376 479978297 883182376 516047546 719592045 58344703 432126696 231635123 981284465 83405042 828852563 404714163 637631298 115553143 534305141 596776874 599008472 304693661 637878873 513373796 544687919 20071904 670652913 892346329 937585492 429857291 558192626 317182467 705638427 202035688 340435920 483421602 978976369 816037437 969518116 894768532 963275700 34712179 436743114 877414971 927682514 242830054 954954015 389419185 563280430 882100306 905610009 519540319 544706966 352612738 501602610 818508037 917670433 448548216 451715596 37584831 97380419 936110697 998242489 347360104 371608919 408860290 573254255 916370082 995714300 816530905 939962609 666387293 928833373 770839153 940181544 484761266 691796678 269021829 740341154 524905460 655252206 23796549 673301247 495799073 590275875 804494179 838859132 738008230 838307637 475151468 761134274 144013762 469174237 965480750 981589074 339026751 589451036 3802265 894641809 193383963 909762060 67087154 319879687 75970842 159039633 901815109 997773624 811406613 988340142 4802315 843286732 751275142 887066648 447507574 501559227 409458580 747725037 661448009 785865987 949932097 972135509 899333891 956368782 515884847 878915210 374011097 973438537 897864615 933702300 640715112 890549879 701544170 921974222 260943994 422474758 446213535 797645055 109769360 253212770 725361804 886573166 23533996 179549457 641759523 899666892 452669071 705365634 313529252 329176440 661601242 955462746 549775503 789846847 337912151 413677528 348733657 703098866 691502352 855051619 424347614 726177275 312228345 862296108 468466245 517908841 942823965 957349603 858493872 985918437 351255956 468250186 285054619 810694726 708320616 772137990 330870874 974015384 380169951 638174394 262818046 763012529 69568984 410198969 923905394 992145666 84574971 390855901 781120327 951725964 108352492 261075498 884293993 938669331 306478728 712615847 573651779 668444521 276044979 455838489 908556372 974642762 113348791 347209716 354196756 674427810 452548385 937627022 940107770 988510128 450101156 819075003 961179098 977762791 872096478 956824304 550798571 724135160 372364670 645754071 994902825 997726590 373094797 947970866 8083532 398248751 340623273 398075475 591637237 631275526 149123009 631008125 441194008 689588335 417197862 449907097 668153321 848046249 132230146 443738328 300699361 773615966 457732896 770601342 119938359 891442185 453295719 541842164 843414643 917997245 819257699 952227261 983928619 984534267 607793053 726547941 649691760 688709187 860331236 879334159 910772442 991633261 366005074 379170249 292173409 526482707 179057219 610380875 46313483 676644417 432224877 998925890 439798036 827832500 264583865 995363359 792433717 918913088 794785096 889176404 698478514 927821571 192579473 199974339 821682304 878088517 738077761 777294354 590312135 908819697 674525510 804654588 74302175 794733992 395221677 829962751 194196000 620219544 639327906 651371615 924164789 967676938 312619923 972467700 984092850 990598840 6479516 242839311 440509508 917129338 150426491 442489335 580886864 772208047 223987603 876788234 601442912 780724916 334369741 376300842 475670155 538124314 88239220 126187800 752874705 873467636 25329717 834606644 968936119 993858024 955825844 957301829 300373439 584712073 399279064 567394098 197400342 835949781 850342867 877061058 381062530 629874456 265811515 571965807 540545700 972880675 910903067 967374963 275179832 980021647 35865416 453045524 922425025 925540507 792845231 988818451 294194094 700936662 507000961 912742241 273839278 954952561 487034857 490259035 324437583 866356475 785105627 921233634 550339703 912401011 902339360 989733238 659660149 900967560 360858050 814592654 426856188 528480731 552083842 827489332 793409001 944284880 432485339 656803267 790551835 926004310 199033305 588510108 622368490 798540230 42111914 600623899 80938691 135165380 293300403 725851640 999699738 999931163 255454310 484405948 8170285 357886459 595547241 613303030 160981418 687059489 192048877 549028120 153369916 196321184 406976360 525769492 848533692 949617503 520076347 708912313 534117316 871786198 693277024 888522112 646772245 790284709 791186134 837607851 371729297 924475535 465302588 976090702 295024160 707641607 560596516 883683717 147345376 387190935 20501137 490056417 151918518 414290658 881594736 936406747 390554923 584348768 997545807 998402279 381914564 774810727 84129888 726972743 349745230 665365483 4041244 685843172 196472236 466701307 144686351 454398593 464739911 601121052 828757442 899869442 674937646 925818085 497261289 554887608 673921226 695185665 889289384 946055195 141396111 189472669 514801391 769880581 314553729 664453539 868031999 902073962 65837030 805923461 590907806 884868866 887001292 925745639 134425062 273542216 245097960 473983294 93828555 151454460 478878894 805610510 290207037 310677078 383302217 510071152 400952331 645861850 129610834 966440458 453650667 934116914 838372658 889547787 437421052 813762545 945304508 993151084 679142554 706637618 809021288 972132440 719977554 967538279 418735529 934548114 724694834 790761002 489678458 820966908 857205568 886369767 15947284 609177797 396319941 885839498 740028636 788216155 361259003 715340744 467925727 979972689 353112875 433900213 808352485 900352832 738207172 742527989 554602410 953265937 996687925 998131264 838438976 977575782 474920681 653252427 481615230 976294539 741799505 922875378 140413705 832074263 848191087 899308712 724919248 804475974 586560645 745796686 805836679 955871359 554284653 981545839 731196386 848907005 791064549 812529174 439738392 473417293 261282293 538331687 385581546 414409104 943895294 946715388 211448042 829951464 862831705 977651120 265204051 273699873 931045595 956214788 377303306 484372376 947544396 996804784 427082430 560959982 951056648 998974934 404189897 484618909 796863886 995001109 540710138 958297524 831521597 862723314 554599570 659145502 571013612 697821559 839878953 853741939 176467098 756765048 437612539 470384558 123829080 956935546 776879590 924933742 984192600 997919784 209158059 302899773 729311747 961839683 889101503 907743940 774353860 859411800 226076322 694771743 977011188 996627425 195985311 585954467 589832074 713214119 572004705 700839885 766138458 865095056 266861881 641088557 372893877 698207225 8604760 270239202 365746786 696884886 345701977 452847040 115064031 353199370 475099300 765896480 385599882 622261064 505190106 990802226 501649385 650735653 502415572 541965710 38428386 908185050 194889019 553923256 825310679 979123039 216815402 243922827 347144384 741896487 4814797 110812476 672076278 685970647 891238192 931280358 340588797 830887205 928076703 986969947 622896346 770059011 760568624 866974175 678731222 835008815 335966036 835414574 852977575 987103878 883433471 895461827 253895380 454954960 37430345 88425875 920354194 970425298 122652789 997157587 442208541 830086600 336827899 807756111 704823950 809162761 601049615 725280171 951986156 980992402 938322284 954901228 637117570 669730177 967001611 975091109 565927078 601870017 617051196 884704632 223626114 888943544 481009137 861269214 533426626 575891638 445763884 559372720 702111418 831701752 905291014 921613978 27270822 679497725 733877339 767462585 158307710 746538099 360721605 638742172 105060209 174370948 201665194 794416019 741103389 769632873 931896997 968614004 393869963 496370560 327726215 407642336 218387430 344673931 967740859 971203364 431617772 615605525 367189915 634960641 486731773 956959658 786701597 968933900 772113365 957698669 89095585 362478549 419129300 845046221 12687228 680309742 251249612 343547073 454853359 607781146 747437300 801665390 849757836 874786549 522959804 583325658 956767453 963101958 350305628 945675111 128073088 530568522 164480984 372599830 609727290 866739227 355276393 449017541 556000249 944058361 899654803 910370117 884800255 943879079 353230101 721272364 293515082 575156516 746309439 767697288 536303685 890180778 336678958 623699885 763589747 901419556 54011916 848910035 909640517 928339117 35515504 884688763 894558166 919704254 716220735 809337263 892767340 978384338 164752975 529869003 95184604 485608117 666562921 822775728 257487684 922000291 798108585 888500680 381957976 621886322 425641400 727310101 837962557 973630056 473177364 546272073 239321389 297225030 121138185 929175446 40125018 753189338 74313530 760986300 552536326 999342626 954467921 967774189 531622121 750693495 425578769 681850193 84603795 778006984 592665390 719374402 444450856 972396405 435948543 696920526 727832215 904308377 773642747 949234850 417502210 916113287 230318367 596241445 200515149 905676720 596753469 955107187 335324762 919438941 503331685 677883634 98623138 391176376 57392584 544462500 552489749 656303013 315438511 897846084 810975808 900215204 270559715 392531239 188299641 627859932 493977379 737624395 537056406 888266652 334397426 989203500 471750752 952009899 964598566 965648049 756572367 808749792 812638191 923965418 234243668 763867739 78712097 426211962 494301098 503890072 766224156 913696520 241868972 495693543 870729602 903967892 269526882 513182634 327050289 979719234 887800891 968479573 304413132 758734703 204571260 737492384 837400217 957419433 951496430 969662565 415822020 875926501 367861628 453039883 415679411 871486072 283292772 745720603 870101953 906063139 529490753 570683152 343628940 939905368 817861162 823749509 220182890 744377640 650171194 701584523 637801245 794082524 339035091 914037418 765292441 908339076 637026428 833007257 78467293 627632447 641557028 975885385 287567380 911036817 840030508 908122486 538849430 891988796 676282070 825464350 140820291 798869791 679025376 871567146 922865521 973793499 410424643 838762087 524227431 962560168 455662292 495610944 384313607 678578390 957310538 970007814 761653159 770784124 636953726 883551990 70909889 826465120 243917830 546051411 893875567 953090951 672822393 992060610 86919089 894126838 370911537 717359712 538925325 958449903 99554450 557089641 877280815 941736104 590560852 965323493 615968031 776452111 929100304 993358737 428032951 830242222 181634866 472312141 48737294 469172148 468264297 831091972 236425370 530456267 401695690 422222566 91194910 122588447 878596384 967591258 582021093 876440067 266197373 769932148 788162220 861855031 552259765 912096898 423253720 922189042 592267837 982251055 404764286 751651084 471653150 672621222 212665651 362511493 320960256 896649729 684007535 914353033 734779554 768343652 172808638 660275788 897084831 986856144 144638247 656702356 324478048 508080475 120424731 690334800 476453129 639746895 869434589 999285867 959874733 998263946 75420750 461826418 393272952 661658425 896729804 990941361 708298730 808483670 854979772 872042447 399390439 984791461 6964969 32341072 554143179 676553215 445111641 715419806 860191544 871083179 517652788 996248987 80905085 160870282 200272369 801333281 634373688 841645254 810722481 813429152 639373912 863968561 808893765 847547411 423171709 528930577 891630382 965379070 918470885 942061402 627709407 938934658 937665232 949309408 530516176 729267631 755752706 832703492 827122583 890063512 76913113 671149911 211223834 390934175 827890937 948344986 854474176 855210939 248873289 801589476 802700808 923397421 855363643 995729393 155209739 601103819 730271874 798557464 247727717 327360584 753138139 856804331 110566939 651793272 170850227 481132844 956655123 990834206 170949403 993004252 800050945 996768801 743511412 828398928 752275373 976008075 273417758 966341919 755571419 973806484 423191830 934918834 531267107 649397211 415861572 715363158 555110566 687132056 190124593 749125789 853009354 868212520 907523435 959260814 194991781 628074022 265290770 429991494 358942175 928165459 761101346 831997897 391801904 448796641 718534486 975157058 502469501 813687023 35242532 480029580 301258487 987316681 503369163 939166343 702543700 972610206 754668381 878590520 990031053 992891180 127082629 232982674 944964404 977826322 949605410 963045976 392868607 432031060 709286885 954321035 810849672 965746834 846345534 925203023 824794811 835114005 593778470 965792813 484542475 922858957 498134522 936849096 415579819 775036623 593873187 844581065 523881919 962878094 687958147 745917214 177336927 571131777 667039575 775299022 843948472 990751836 928746214 946528717 874255890 887396806 130095280 193629975 827830179 850341861 529288456 819272684 80826481 482576692 270887750 326438358 803378161 957544282 149093779 488805884 953953055 966416564 550793791 808091470 529528844 652597175 100531486 470934166 225272568 909729998 167394766 896653419 11291517 582376327 525869347 725436106 592838585 753387418 719243140 818873044 557649217 960344746 897484681 938658997 420755377 673329477 162269114 207958006 514422439 537898393 647123662 962413765 607093106 801240637 164553031 706093122 305494030 454830776 308388644 802660707 560431963 662174918 827892038 868804636 512713464 828857237 183786230 257736956 606346346 893374360 36194380 783395340 217475763 718787137 859704036 980316382 474368932 805521025 246213492 811879132 898263939 965313955 114053651 425039320 508952628 988547771 271655308 326971913 763745309 800043698 446770232 481081300 649856201 939053025 628683491 907699617 692676816 751851515 872407560 945040339 27239703 905575932 853752207 933751089 33256274 801831994 145280163 437497573 792976071 968517394 135333123 685542101 67320619 627910734 293044449 931032518 519344270 860430583 552138306 606267592 597650885 793485640 21624108 28489652 854370928 896883555 231551420 243202591 390136522 608205365 500254387 875285203 50240393 543733133 139656708 633194925 287773338 698765748 908746345 932142859 446235305 928050800 550130253 661671661 615970344 617173701 842832048 902662805 720130719 811607573 316985729 330769600 513791915 662701324 550442641 888059166 23504605 362627069 536187983 585949524 835963403 910003515 636410005 676487801 104150723 596320967 499452010 863114087 27791086 728622584 852278683 855761550 721198792 795175955 38344899 996831909 838569588 923625249 385958272 791377289 926902888 951758131 893140342 947193832 781688040 912164320 429387247 554614153 426008889 483110765 207909846 888539677 1181812 38307784 804360907 887698325 336209370 368960484 241278238 637349075 217003374 456684210 81655503 464629486 7509347 347305579 304341779 775280813 849967247 891603039 648595345 953580113 653235552 809273758 681236671 740315853 843999281 894140923 48027496 126666808 669477952 842712379 37607649 139055451 317216097 655146738 958936338 968612604 941584487 945741209 283973263 956530724 172997148 311590306 731878508 830512625 533955752 970308759 77783317 190797308 25603602 532085667 701194655 924173134 763908589 840506088 658477383 725871128 889061671 935320813 654432829 914617507 874887075 895295842 187302909 660699094 356020029 767519939 261530668 891618324 833256323 889687864 207829931 815123561 140599927 366813891 730563594 855630429 133701911 824991420 331176899 774169414 138056983 882294210 644679916 652264949 630028064 840291859 287653865 652350818 269432013 381954850 410840823 518599574 162608819 666504026 565493545 663140438 431314261 944179734 984175762 985570187 966695418 980566875 833008030 890691096 312215654 326778752 878041431 911137558 599218833 799739120 390125112 527542841 844542753 920748788 355732794 950296213 725118688 804728022 944658777 979142785 424260422 733415466 276583230 926159543 553388787 903392632 741225127 824476732 1912330 509560817 942369017 996220506 485292834 793661406 590175000 598988195 969792703 975582086 453086186 868135585 852118647 963551646 659779896 705772774 40762981 206222441 473250988 533591675 379035266 686424483 50598028 387914594 869805820 893458338 714246570 988704204 168061577 639885774 68493373 245852011 668058820 679934609 100827100 180863127 94568689 667436744 433465128 505850589 578838069 672771545 476308415 598457567 524756008 819263064 68975516 226151570 145757444 321881139 561905269 913296391 295359611 896665894 770646409 776880916 625312629 751957165 684524583 772050022 436983498 815341575 710115582 909532249 965320775 980704103 136861976 739923167 491880127 938491313 694917287 963243192 779422953 876328108 603519471 937395385 437632841 528496606 465460888 587525844 796999827 884964292 75715744 237471340 192179145 744508959 517759752 988871354 883015496 890903421 622012203 789823870 498232694 871503245 182616653 753674773 650046037 713428122 806656005 966921063 419975084 711003073 943619656 961582569 126820099 998907740 483944712 848989343 389903887 752757530 822708605 897517617 456112766 718875677 84992848 173553469 130697695 837767342 879043710 894457379 586862741 739849834 978743446 998474047 889774037 931838997 164099974 324666131 363093415 551656706 937653883 967665115 999756461 999886222 368480018 578951735 15792059 391337821 830034924 840478651 871868520 968158733 200870472 634192874 60823936 973761223 804138800 934051093 384301915 873884057 696671202 878751781 919450553 930408069 70810278 75552063 623787938 948348418 85395819 331288147 759624197 785244802 479076561 893578177 564079717 685991238 71935949 514832749 416680368 860145150 601362897 977879912 509310745 580736478 456186441 577996715 20825450 466890931 598895485 656866926 924661322 961192914 790178118 949673714 461254864 513297363 250995965 462182486 617057377 717913406 3751087 155973861 19577799 265466683 23201302 426588766 715922403 800237327 413285322 566447237 151824234 611182568 502292460 734936863 352873807 438569424 29161852 217767328 728135214 901852196 873031173 918989120 940408662 976408287 952684655 959133338 772823220 852179807 799724725 865032118 718224215 917079478 451249781 642563641 606589718 917113978 935796271 953556447 132573305 903615738 341030179 736798202 555079833 744993670 85622174 947005852 524614163 675822274 373450741 527845805 447443577 729234655 57201422 805223242 316251063 460890477 619832083 948463614 515507975 950848077 132806219 593669200 462184737 679051436 640299074 708797837 446724070 651217274 768276904 831172832 300142916 516978492 682206378 795231538 291888229 561215653 863114840 923901360 203709590 660034536 190601622 669090520 780972820 955194956 56424014 770450634 534891209 784936774 53455798 599995946 517573588 818779345 153821284 238680186 402514635 891990202 197984284 472577385 236037718 873517471 969614227 979022568 360367397 884542745 938943524 978915043 163116521 971549427 840150239 847171182 998500621 999107292 864200470 998028512 555956509 761499538 834590210 955877215 49505860 505530050 283145530 972170733 178412709 315392716 575426979 975403015 461785751 483785628 107258615 183968107 632723231 931250027 950185156 971203523 375368479 449715123 996076843 997649182 216273558 665889965 393977046 739836450 377809349 678082449 445408991 709670197 119845345 835797038 549428603 657768973 618841084 959321914 431544167 671505759 135970829 901164322 472741511 924281818 267715676 272678324 245037447 246507232 142109438 508879402 456011768 548150261 693207349 802980435 775943029 833172180 995534883 999639245 988565144 997888776 957933638 963595055 534853010 828549487 913491004 943927930 941802672 981614431 73924674 805843566 556474493 997346955 834914240 947377087 559342999 579470708 929658589 965586404 609217400 802694727 622995267 956064275 848759623 894829457 292869417 459967636 393139666 602350280 405674103 810508671 187452932 894267666 808542872 839072491 590444613 592871535 440958007 600901861 902140446 919689174 766827340 882558532 517598834 892772457 823025966 943301614 372015076 611388124 462555207 922548595 261732277 585642939 575362910 665111417 55417504 351727774 733040982 961122028 865528606 914299097 696445756 999045411 134619885 319676215 28257189 567572216 803186444 939779211 132228177 222597888 28377764 605530130 810292802 970322143 123139390 711185330 453895999 753434262 838578211 951034027 83327524 356175495 829921194 963643625 292777001 881093076 504771847 533659547 873688631 931879379 126130169 323549134 914739827 917547455 148992964 598334784 987126171 996781011 339967244 739143569 642077581 692847736 694796144 702686386 310887424 371206697 579510025 826952853 398674377 532079092 604238297 832831076 434901894 841174151 950558580 958296010 326020429 485538551 150099053 175715553 224769474 877959509 375352532 446786521 33346677 580650234 312147550 694719810 425279535 508517877 684428924 932669516 214718880 251362067 923924083 945243579 931772671 956868795 980570644 990709889 920411713 982493134 566265451 718013625 625374698 718562483 677131586 770194519 893196495 901728115 821695227 858451033 130058006 496926650 339180632 643210629 690698458 938191435 355411255 477255300 765678307 807436575 76553179 969808948 38380658 121739711 6362467 967948269 769087453 794252587 267564810 871742418 681011356 900532522 567435561 616451449 635296171 662536981 439878819 459682437 27523446 699479718 795441435 824348736 163424530 937072392 360020576 378714200 924266505 975812750 6171326 645552957 54997845 424071656 520119527 886368623 753081623 997076176 740739833 768183325 56284339 566824857 258490557 609339850 242474268 643683719 231473952 915888104 80669281 749809886 337799832 934960916 501885841 808047980 928020724 976656919 357244344 383215086 15550294 385387052 986732066 991426727 604259059 605268130 122167255 461231455 662737721 831550822 979598730 990846718 933501211 936714033 424414954 523154038 874426462 951071085 158280956 281045149 695448488 880339830 962898646 990236575 784895666 846268653 876113896 902213156 973881778 978552172 898577978 945377476 898197351 956875764 231218485 561948655 607194711 805919126 169591429 342201353 526473878 999867455 355275973 473432673 169000838 361550101 229461911 500451212 538723765 601240109 250198716 484159110 395997917 789167187 669529706 811709300 741630261 778290849 471405897 810336603 12106348 665262142 286796019 544923260 418319921 639458064 255089545 844166989 543753116 831135807 895092933 901542892 758660991 921714341 660319777 668600055 298282786 321150874 320549699 548474253 174166995 602239244 252267073 345138979 204131168 855601287 259227065 755137645 703912790 726346303 435764162 878270017 535142114 563818994 860099356 922986139 162323381 625619147 596326241 931215936 381251064 454888753 159180671 852351563 368265304 560197357 93239089 390237065 634511632 667293339 460994265 918817505 633377752 872001630 884635084 980251261 359672132 477775609 885581764 954238012 702523483 724590026 336549563 336938641 69499210 806371842 173085155 767130238 359428901 405667374 352722029 547606664 920129227 955211812 220166826 948594714 816914929 856237323 501271546 805245070 478415294 810889958 364644556 975543792 332234379 889046065 668263840 942322915 994471974 997001846 868177478 991044841 682922576 751225639 507145641 565862815 283767845 941846529 726349083 869353446 450300719 728690134 204498107 722449688 737660074 933730302 850956048 996587704 255409577 762199096 591086830 702516230 876216668 906118713 458282955 501020821 874407050 933263261 9109145 451249994 903758589 954255861 545565553 991560871 682395101 872459774 242273745 831677559 814906030 949983482 451904905 664192523 839200493 991120571 662195296 874946705 98515548 422203133 301043732 590947719 54691490 316091828 434657267 994574731 716891133 853636791 987424604 996211731 461685466 520086959 600414482 608968762 181172208 400198018 471351317 474700267 299317111 789607870 588519549 618265991 502203741 940130467 317340479 452049121 639176660 915739838 850131692 914081355 802322686 918381052 212550991 989798733 992393130 993881164 231743643 980520160 103621694 368858114 897143841 973402176 658038623 809351276 366904216 958137225 631157129 809044432 807323252 973139731 354425160 508677713 151578881 475363233 806516803 998922606 820578980 981884869 66707486 761596417 694023807 800724243 464071740 512409450 883290063 997497528 426323216 824973601 733760955 975711226 469621138 896459058 284373081 451794031 757460691 882640967 633015887 999515198 371991006 659975514 365326018 912845885 606561946 708844066 762996970 913627415 366762945 588658944 464032711 852887984 922332126 970300165 222170446 513357594 40847926 925931252 244819871 267617840 194517517 202640406 910339749 953050030 645752735 951407038 199745959 939187472 550726524 756757767 116959192 870538992 626629066 888539637 829256167 994783212 528460048 572357984 693159706 724031873 212015503 947147794 507483699 743931383 917866516 923023358 411831866 980067532 247225011 411025396 647500855 693199964 156611834 274294008 230125999 379050977 579404130 709780335 306580935 783428990 330889279 353606823 284604551 681009167 583744659 948944861 667904151 919278833 756096660 961443983 146139102 548445413 307978572 665350347 500165681 501743446 383685373 920296450 493009923 698422926 972659635 979631591 331947473 434357460 221288635 931691897 798738445 969034263 251858990 540046707 860108990 975538680 79877585 484869201 219791440 592706028 814068362 846452041 749848061 865191536 428899838 624266692 933284395 965408370 227180295 796190253 1862282 802736718 581066860 620538312 868156578 946347638 355530637 616035594 288504263 479393293 505804442 867901538 455486361 929132825 49678316 161706324 492041600 500899608 328362557 953737432 476931371 793617821 597546272 871605644 956394427 977919321 129062643 373989855 680248428 783067902 474549185 761832390 50036727 89543420 178327719 442227823 898298681 985840766 793111388 922592131 702210667 707543890 807279222 887199726 918563561 955215477 823343616 833591239 382072941 756112287 582122967 963482155 665433137 931691459 315176026 970264310 24811855 579369885 578110483 825610595 162249563 952512818 66516954 588896622 363843088 377059241 68845493 730557032 480518390 518641691 755955225 898989630 859332107 914879744 667398197 834517641 999330135 999964022 621262479 708764880 655554744 851847713 485094290 523891364 575845202 932329657 958846445 985822475 248708717 729137427 425649186 685819901 223903903 576584703 990704977 992865604 532692958 948185654 186494296 524393794 316783107 720680539 437841475 890942937 728039922 847276993 626565959 792589993 359676080 639532475 928469890 952740681 453778980 986663000 5569897 230396403 285311940 610254519 676629238 995127944 585363815 835839410 195448518 681744333 432700841 720325218 316827032 730553548 643013274 959120228 579550272 781615735 575144125 972897128 860716296 985770483 709669124 939457424 410524266 867417392 671569352 823109382 293193532 880710828 226851007 939547163 867813690 913709393 325027399 890120870 336422108 567976354 264972737 545544158 55827628 887499322 761353759 807946558 155646017 657937802 624334409 981677879 841878423 958565904 586444894 725414341 391082320 589357305 618714991 634942437 565233787 827382552 649098149 854584899 844136587 978108662 846542194 910127732 79367088 419285530 966467318 967347480 858902878 941925443 862295763 959630902 738807320 855095399 889023119 911832480 476948528 644079248 816842751 977313312 564762328 669352439 502846056 577230860 85725051 103938305 858396808 955795233 956842168 991435544 767094286 788274948 980266885 995751460 216275634 446576803 168279105 758429920 8649053 14956660 526524753 701329493 628314472 763163932 99015449 915934088 739050721 819223189 808180110 958383027 372181326 759868821 918246541 950661911 207203235 829471439 335887610 780956996 654401020 702954050 797338671 956939500 690892794 833122641 76037556 748897981 613138144 694011489 890522199 992848091 541728395 896567652 492629038 535431569 592520040 803625324 55913551 501466016 80598406 484626867 532535794 715254633 139678161 451334257 754759476 934108466 24426127 856428781 510564740 871171465 409634378 578509548 643012484 890786567 386734262 748501631 800360534 823757173 986610578 998395697 977821168 994991279 385800717 731189008 605050982 651645307 575784526 654703491 328827108 987226476 393763255 928468858 446311341 715086217 335828812 839165873 590665455 788215476 648010691 754271440 766532040 929829442 139014796 955919289 110397461 384185782 870460743 955233149 348287958 589422671 996588718 997160066 475496097 761229970 526378458 849363166 958782764 970740061 193004640 901012909 696441852 976240666 50021448 500418916 702093163 865462215 788109217 972550134 730835494 941597133 682845333 803307882 558234036 886257636 309769199 758561568 276275513 383473035 687702241 744891346 160177976 337591234 896885265 997708687 3202770 350274497 486996472 515874571 142320908 460399853 645293929 748875114 188285268 569878386 924019618 944002207 326227523 365109465 417452099 588236847 802303815 955894095 386005805 854645412 710876103 941167240 980172178 999961623 909750281 947252861 949326164 957353984 349497449 638906080 204736124 231825528 49610626 765347956 617684094 749787208 444790275 623184120 552263785 989595943 727594099 762166561 831683839 834378422 652337195 674723613 835866976 906009639 258494456 831005993 322630818 713428183 137600109 899168543 254430413 308717316 568498461 609907686 216120420 586300645 183184522 472844686 395883006 618263322 412220767 712500637 99061609 188923813 422452415 874233766 667308020 865862403 339004994 746234145 961058279 966671875 697593871 896169393 659002150 738530694 888762651 984051776 475391147 645197620 797136965 839834235 899523685 999479623 67018101 689104027 443194723 866497357 745363205 961834599 698954535 727831102 674341037 805129202 570778537 690440051 776092222 951462118 96315771 432518462 864969684 937878207 756250566 857024047 555429682 604628482 405709583 796165730 18798457 673734359 960753550 986409109 948603695 955358281 583762845 900120582 78341668 690642910 301316952 392779613 92748324 584215713 241780851 589469320 221577866 986382131 451219602 595874461 686778621 965054624 942912383 978155222 539548661 989806430 819528847 978025802 790877440 826334863 114803476 809925821 690057952 703555712 872988601 968076203 493814389 985110312 619673277 945351887 722991378 869065421 516550517 837827992 584269063 790396012 768793025 926804354 706484790 876743194 388312563 921356064 190400613 504536647 564858104 931908430 441071107 697140742 405586640 740058737 568031331 867349757 597338301 686162674 954551022 990671126 834651126 944933373 982019865 997594357 187125085 398149816 846983156 933081109 905858409 922256929 382390811 705463201 334505101 395709337 434399841 569443119 719705454 898846660 466417939 651216141 301201024 813437168 836705851 963811704 362965850 716657644 195680301 810200106 926798190 972199423 439681746 872800094 894563420 957302351 622757941 669783407 685175128 690157661 443832560 655792467 248211227 475690861 233507474 322006986 972009305 981352678 997803341 999338015 240930101 479851667 200578370 359368560 938243758 964791651 566902580 975081615 595233334 772897186 723721996 769238909 484976224 731469661 484656616 624982556 168203075 412391554 824743615 852507292 945099927 961632270 505809401 700799602 791969536 887054407 359659152 888981762 53611316 361332493 217466683 572473693 133255613 761899145 93986936 666170755 72579878 309848773 472927077 860611440 862588135 958662554 592000887 979631923 411473270 732991904 301427762 527199833 107833755 246239948 185694016 366771492 743653853 962520408 250050401 806985043 786166890 823728307 675031520 720257141 583507864 853707260 609447902 942806868 148349667 500667252 744411108 892707270 759769180 979127230 542643951 975026228 932902732 961021309 481977247 899131514 417095306 543624141 86646271 314523953 487013782 556720847 820020285 855058327 190285547 290285811 228289531 387063115 910037612 968955263 479689478 896668776 100626433 966148799 594674893 744773918 231857180 751763492 548107066 802778969 703293047 712392785 32289763 421502372 926115961 994623972 339168133 595747888 378820639 992652602 833001922 914291232 632327877 709427888 612951548 794592851 503905819 659280274 141375930 257775565 365567009 772907700 427654977 658526082 179144799 221432879 547431467 860259504 108100019 948179593 150847428 711294632 303327166 320067663 568225143 802392559 970616338 983994158 801998313 918895593 574722777 789889127 481596362 519312246 14522765 17911001 641666925 948895137 314720414 390432184 504650153 804695372 300352507 822873393 422302354 840512430 976732040 982809047 185697600 793933540 763033180 852263536 18198734 186922154 723989844 828153387 717481518 748087071 507665472 876665278 185836587 769983872 919558818 962020993 440828413 649302425 750878052 859384474 634389011 975815189 798958392 906178596 343200678 648832617 806101918 923276112 158306234 391456532 258665433 985678291 829575695 920566385 31123556 341655110 837453466 997195019 601736100 936552673 476975055 644976620 581655940 979680785 804255298 886189947 189765660 895418081 7688588 502830681 63431874 442454186 524118541 800080450 993390226 994397244 119984188 192096413 286386318 925180661 309450395 873815044 143668382 537624414 210869365 515513877 266936843 558860952 334527220 604515918 716332824 927995045 11785193 741571783 759326904 862284285 223536913 328186826 209433216 827004620 282692803 987532423 474115654 741795039 545404331 772707468 795036863 960797283 924885498 977743957 531116552 618751499 323212878 384870014 270844886 343599711 553324184 812474430 781624552 984173805 139428380 851680267 244252774 721820055 286134071 367779311 810214911 937826961 3970248 331445605 906965473 909931305 816766333 881891338 664140181 706314499 560613727 824652747 932601485 992803970 708312792 969983379 937580726 951825622 352821890 700624436 466052112 516101953 626622149 781044191 233676829 334443860 545052722 726056318 716193001 730941073 717493052 734339568 377169670 613187918 28921546 126752113 763218178 893804033 748045370 865565648 826082299 862939548 194490804 204965138 571667208 582286030 446772796 836277665 913182136 999308665 360566919 508526895 991559967 993416868 758049536 801595079 226801982 943813408 272274938 702988192 763151047 793440783 660446826 966189694 233446614 883417302 913552158 973224457 22657668 133756905 921328025 923706016 384939804 937299596 938009058 973843265 80599193 235278224 590668344 992157997 902514124 924841269 429039808 987186167 41455743 213257329 369378212 407759290 355780647 574458597 47728093 470816281 143920890 659623739 207328042 946561121 133520328 206471032 326413321 475441918 564229089 828561850 793807421 797022218 704132066 943454181 952739529 986962236 739074236 943026342 910770190 976864229 901743174 931808968 435702763 788014269 393904189 801249574 360030557 681166686 703731438 759810425 308068113 784038171 23114072 485000805 968669550 999473555 751715738 780220150 960882388 978478202 200635866 487010630 526766398 592888156 488453221 506607612 229941469 766948242 696558564 894514602 233338688 973491564 911969229 940763927 126197750 890021763 208848862 766197328 525689812 720659687 996025473 999214148 484458464 765573210 616860535 894980767 839903875 908653549 693369778 845079373 825962836 909122758 641598813 684795040 498559904 857226516 876495649 952930507 694577129 831956410 548740370 898773419 732866648 787281734 78634043 311296761 958932983 994807126 593930953 882419186 376681465 389290920 537954315 820792068 849561060 889967857 559088060 663242499 218880994 740766444 939779365 959274729 377460088 927239123 166512483 895338531 670781927 726882698 627100801 764021020 873085300 943332691 300683102 369945408 993888531 998517146 649346673 962413421 44291228 447901987 259122493 703106357 315995669 857545996 368691021 782556204 416834070 709304962 865234388 894778870 215944482 626978312 689787061 758302213 659558729 837440177 28039094 808142326 897772711 991441672 696839406 861062803 379003405 648012268 679289065 741868054 557268218 916676311 662543839 746880543 264718356 368099244 183346802 655896127 969843091 999328824 738210547 884297151 374525216 996971507 111363856 560164613 142413644 587452657 708147642 802178373 551694514 668860020 321291731 999242834 269062534 699530495 571590052 826811075 608668015 643864538 292088180 540023673 644105748 893753496 453810585 509565338 837544242 945902250 158373772 885114169 148088837 155927516 988076918 995779479 46567536 202713836 296381123 809498502 239831383 364824420 568060752 757832084 179094144 793870546 634198811 847462418 373719216 880858311 241490785 511007607 58447829 616570964 473441883 905768125 635988390 954614708 390217712 851043436 324340916 642203943 175825300 668419060 21354199 496752221 936431714 936670893 512362748 851944520 551946320 932853392 140984339 634519339 379690631 945104804 688225790 829447119 44382413 961764070 435674086 960350245 377867812 780939986 280629933 973390002 194371546 248825703 381346737 465237652 350170479 586857349 640852585 682379304 705987139 822952181 234002405 728130699 347330786 616134521 590105519 845880119 26191224 789701604 532679282 830538006 704052253 750290709 542427204 951830988 560253546 656875252 427598034 695036579 755249410 973412385 359738816 818985705 346457560 409040827 558347803 781335578 352842160 779355050 431209813 598553400 816891454 913316691 808872967 995874615 120296992 536527769 423807855 907026818 187777846 803184121 634985385 776458656 71499491 87517268 554390321 650938421 329538826 408123529 843230059 854336998 861089171 966258805 709746089 844093170 975347276 995805962 991812832 993406018 393215984 620453751 144964579 349333671 697368038 873580181 470776335 858716190 653032017 792517504 852556520 920418623 677243681 961017932 818544848 933312259 602708119 705733046 8526220 182056040 462460740 587429232 439580521 565191165 403403000 488640824 61251381 303225481 852949284 980306180 21828040 437153587 945989182 974217827 324785443 375099235 374215980 803598668 720190576 773340801 479728938 752619246 402554372 431961781 708501557 868857978 523810434 878836888 628478866 783356351 537658687 907100968 123039951 861130974 71948814 484651134 552181932 718363763 994756 923032431 243287759 831494099 544704909 831435737 735032226 910565163 485954903 725997007 704980190 971890114 898427656 967910460 488733796 952354435 694417305 891056811 644773215 850759892 458823924 799572157 605472732 686536017 353546838 912618298 427592790 837618429 814838440 851475031 990170698 992164638 921229663 977195894 598080995 729970818 676173589 801521190 962137620 997200263 217393386 546212866 938578715 952475823 18997392 827766800 235224572 403785979 473867304 520262732 201637379 209245466 399082645 524430463 688656327 766041531 662614370 917639654 816207354 995167334 609436603 881013533 320149429 947552953 362353567 747019120 778641232 842577791 850951850 967071911 316312982 608094824 274749468 293124936 8141730 448815520 829787253 936138615 52387285 390930944 464085128 666278825 525086974 701726216 38671947 804652754 882354371 968541127 160524880 813040709 785667014 979925524 462412910 922126321 709150025 781093458 502630311 638615461 597195691 973899156 660747414 993586567 394213030 916729678 139910026 357670801 612447406 838306251 301993268 494220661 126463822 476855410 998159323 999145991 814736993 919411474 393676157 798574263 473307812 767859599 916932470 978493559 938863503 968694093 644911651 862335492 272572958 560448260 400857374 464288082 382250360 685681406 285046714 397348856 59337768 315348232 867357051 962477357 320032510 422048773 748257155 917193537 178211292 211562103 652107515 850409441 888773266 912539366 830543584 890423654 485160508 669117159 318731027 961923626 960581340 968974119 349482537 821669894 666206913 713363303 186761084 765267894 33975368 387753661 332069259 406739802 950456842 988774270 71555934 238139817 352647545 667594803 696404806 700479393 979134974 992830105 987651264 990843131 486694576 643865124 198984484 902652431 217360015 709745558 866861790 968019808 71371478 210263003 222150591 435646387 90005839 168727587 724063254 784695185 258389000 789763767 899238148 976419718 46054726 428753229 109161239 264902666 121071693 488318571 369145956 493024747 142489339 283096162 902103414 957255211 572919870 957077478 191708172 962608787 128550424 988663689 385892805 701946898 62335604 613284937 177486126 550470408 55057546 663913517 156012797 783938090 166372129 285501468 978141082 979105514 921226815 988118970 250511425 925483450 390819069 706242130 571724155 873986021 178963609 563385520 614309633 976629397 619223894 688622645 284725084 336685819 606237009 798662573 154283719 844898613 771933597 788127801 546938411 867418763 342465578 371807462 892082108 933917190 622970615 954570787 859108114 978457511 953210497 960026357 263398791 352107476 260648267 512205553 713022134 863699592 958912741 964362605 550557154 655665166 702489774 983505096 384289615 794412440 168444275 813213679 900062859 914188367 251485354 766210422 720937617 938322101 603272859 615703906 380783219 461708784 933737119 996379843 343548669 458348529 957948420 981575955 10044136 289370196 194287223 317338629 712292753 894326891 680782308 995965778 686389243 887257640 56941937 454825674 476589909 820028385 386896806 818603337 682114192 859088983 182749930 374709530 182574487 496389139 306643948 654294167 501245273 805214008 627968475 855693408 499278219 877789507 533825279 872788261 799915370 994903583 298651901 510394742 836812154 916407263 346237256 539336017 551277317 878116480 353908763 355143744 501381032 733145115 146687522 952286120 43126452 974819421 7824684 42145090 68638542 701425658 773710466 888141508 492397546 615543955 781587239 788884473 995961780 997327825 501335290 885212104 115874207 925379164 470270255 612862792 691514798 755839372 271990070 733196856 634947916 828992498 191055147 557718620 103435833 976288917 205018396 536028341 776473016 961930786 795061147 807587320 657724050 760958864 709229019 895826482 121428251 138241260 357500382 369699384 807680667 812725735 586649835 689640945 40046957 268546159 461442388 851078393 713482722 911365449 888967174 994473465 902955725 995280517 730595025 765786252 22002194 575774532 126447074 506646859 888165400 892468563 483859254 604187831 67593081 131783063 277140006 414454880 28424299 612612374 791310867 943502024 3560001 805370134 222188963 786327390 211699532 440861463 846553946 930496697 591085835 781415979 659783778 868526714 235214016 840194607 553010146 864844175 599207360 892801215 291838581 565648780 319378658 656589746 281600577 526577278 170711745 193194418 926676625 948309076 620976145 705458120 180675115 384481630 134291733 316604443 277989155 656033530 313235367 601941017 431227925 871099692 286500076 498653297 835508105 882740665 339690007 798760158 257867253 393012473 389496893 637847989 534480306 655231842 441440797 806657626 347124356 929452923 963281416 980724489 164416181 922237687 970753127 971838246 207351272 812794134 349624762 589663159 528687729 797056150 384986335 420072031 738480917 995102801 68207570 838844930 673953660 988177125 471002827 680333888 637151659 920790886 814649311 848244222 390294942 756827004 806891519 927309820 941692450 970466772 358122939 561210861 415618555 969248491 116960355 424061892 193016801 235273066 827781743 912965208 348956867 872609251 119460495 295867969 931228173 942798360 322872799 954734338 919224342 929197713 748796249 851417240 412383327 637562075 359038792 614646238 488484183 773202960 274698286 404062154 799603445 920018417 684638793 694117173 763798037 952092325 973971212 986757466 441617774 925828135 47669136 490154721 226862403 523862825 896381411 980470580 754575424 880889304 1948366 55402937 666030802 843729111 578036898 807017437 728347588 858097092 331856029 898218199 85726738 858189445 781725180 966821884 102821508 577882753 516068220 596117880 341656220 973546126 364038512 419593337 327085473 357245659 28331404 511498381 438169465 900920803 782361045 903096546 518105965 648951075 105706618 205845306 965938517 978161871 719191386 828030518 73187223 140195500 423486642 816698027 901861035 933650113 410698310 451111295 712811842 814361874 169591128 863204433 422524809 723444965 371310952 965648678 967704462 987325411 472545707 869293320 423625668 744011999 200785611 319824798 858259752 863078507 297316066 704911172 582018925 588264158 557474295 916401891 759307488 866348501 258971244 656972756 496509954 896918599 924865429 979033072 486431340 883805839 806837866 859912739 934657200 966407384 139845456 262269629 890538712 892871810 112644675 868371624 578969138 858312803 163590617 345857073 303777499 680340691 249087732 837501589 699479859 899767828 7955729 45529193 923493622 953686153 251696786 542847472 243853576 457722332 141764783 583953825 732852906 978832670 210033651 749440394 601732213 992555410 741146562 880927459 91769190 516056339 973942819 990624476 876011835 930436417 572653189 624610791 364027462 819952535 663033573 905355917 731412960 813967772 527671165 707232909 757061351 953234939 567593889 995762733 190584862 433566293 128984913 895691585 666276557 945170861 199320955 577072939 520667761 754748891 773873325 872019171 318808317 501808783 445548331 565153506 346617158 675108911 181916604 823110111 631729577 650064432 383949834 759830432 642193253 971204959 240730135 589878154 346348931 568244087 789562495 993583707 517225492 553914896 345638867 411343526 66433077 137244455 456078187 906372463 730417077 966244020 930348376 990351568 604559511 862352778 112227675 617265698 635036453 725235422 949440648 972810588 423125329 765095117 873183126 900992938 281069576 995572081 58097537 309711095 564446673 626432394 770287737 997708787 194678754 823124117 395323831 974304416 427302832 887472229 554431951 866731966 334050104 485262774 966640864 989558815 102709385 751207011 618878524 835550125 665673853 777915686 789531007 912261366 449314744 556902250 39664048 122302504 574725910 761844000 248047666 867887282 884568852 984024054 765521680 870231390 329582638 794513223 352576992 655670338 62763534 818897523 903759119 958824567 243756952 724386091 858565723 914077213 595977819 930819875 91955879 377935750 464174579 565797417 807852801 942280977 1361128 978256095 619521696 788827609 567345079 688853789 271084265 655883658 246810952 360100941 824052837 849019162 367444871 894413357 913383485 926547256 311267159 765956649 968587772 982121398 861948906 882535550 851130649 899088695 796777469 818324175 840955266 946030834 7038081 992874659 757073973 793779088 213176582 467913985 576149699 711156593 769858610 837060515 424737989 576091882 521363510 557480713 699838370 882120698 476095632 647887562 766406232 938433396 870160623 977613849 261417098 289053990 983661037 984232558 712524780 806736923 999343487 999519687 692515707 997604622 624711886 880075519 11234278 424245636 115683247 310376629 470903787 587282094 261170033 271341051 611333059 615616047 477345646 901591698 627490833 969384727 319490121 488878649 568432704 585724349 557836985 715049133 166209501 195199039 535747350 911906138 215167356 431101310 368285978 525885348 669557753 826083920 934570088 967132662 329283563 521055600 657088887 938408781 713366328 730453850 719843884 873503705 650305867 837209270 56226296 338857075 334670707 894913011 243949208 457318076 559648113 568255727 565326410 839411662 809320113 849566849 495684639 550196512 431759202 677259686 829724736 936954008 741705551 859747554 578825222 791742865 100086899 601159621 956315904 966175424 665361216 912061131 461687282 731988195 34312758 899520827 747178405 955472315 583619388 672962993 230311387 395632250 934329773 988303571 889896155 954785815 79843513 606283028 747249877 979575249 535214364 834422472 751030147 862883264 550438366 884742681 839290807 893184685 158685719 993419425 554214692 628897409 667271637 974719871 948751326 950994900 117350112 590706964 692644476 791999745 85409407 649245109 857435409 876018214 252283359 502667024 70513558 918559904 114018531 531019893 958450662 970011833 869074473 920310304 582049184 985897467 400182719 895613977 83582732 261259252 727364633 949151071 171285056 291450265 289479097 625525579 651957981 660280577 1205032 442542139 214014934 285406094 148113869 775562229 549717480 736427895 568462352 625351473 745420943 979331044 615545789 786920168 398350489 674157977 47508518 541755133 43064643 481386910 256537501 758811896 811382038 847219110 133919515 447217144 58293071 273358669 916640298 991851796 229588893 899145271 243564727 325793032 801749451 924704050 272358083 283698292 65995209 244281164 581454151 850097223 729582974 735415561 341540781 470887969 859042113 968493820 235496667 412612114 852909746 955614198 349877584 490648232 29709641 167078509 335449003 638753822 61719424 102961612 524288158 767322803 166370116 898532959 29873234 192071488 330021463 346747246 414652910 711056874 623183522 842534975 731153068 977558620 291417564 653136918 964311909 968127490 737796573 904650269 369595263 923908544 833048715 920788716 569359957 843313620 973512406 983632813 477957132 512548642 950919473 957272950 884026128 937380849 930773947 966630045 306704211 567798699 513706077 972766808 762930404 800486802 582909537 705714115 102573415 543593069 745266827 974130120 482294210 540391434 231347494 654767325 191280146 275372402 604733673 885774581 24868031 703052401 502908455 560415250 698418033 703292545 534218356 826861256 292399456 519068598 632772786 913660276 844099205 872175152 381418761 484152207 935229092 959654573 813247860 830482779 276526019 746273779 383544159 398473880 886419881 929829856 465419289 585630139 160117009 314071424 481226139 689139358 89356345 886151741 884359098 909600160 86341883 480639237 990668356 990976103 378165462 554770727 776771708 970168397 431087062 957187973 815389692 845355135 46358303 247020830 963300917 994246581 430781073 448326007 725162378 855851761 92964136 410274684 219861055 233509777 108480139 491470711 791149114 798838668 830497785 851889155 166803143 419761943 956085466 985236711 669483999 888180851 688480815 983879732 88565025 324927701 637565091 858464929 904252874 971949926 118722606 908694541 120957176 601867850 318894691 889780230 415809675 843498562 206681762 807757536 891585264 944647392 401839959 522854437 912818793 977354345 463630240 489844080 948978563 951672946 531936894 871280217 646060447 954081988 484849398 729428999 872704607 976751159 508298396 887877762 995761875 995782548 917149557 977520182 678234733 727099266 583850919 630787457 67711881 891713776 528570993 952200374 847728458 932486971 399139953 678303945 826097215 941802632 527960827 533582610 832193533 975544546 507781101 556133862 256187209 600414808 160099080 390846427 252446529 806891933 317577020 700544121 671140268 789213500 424435095 785428902 249462451 618339825 110807061 463304285 313440799 917352867 319284373 394463525 221792479 572358034 225119332 263364972 604843733 716666151 799755877 817119564 771076304 775363751 295001422 661269179 601397807 764135356 501298421 580073268 482586982 583168336 477044344 702219389 909160350 941823865 722412769 822274847 559082024 579116863 989356004 994389837 347969850 697966046 713177464 786739722 3374830 71501576 625853616 871572082 985209865 999726428 201189479 925525367 594567787 860041765 766660137 799356750 475454548 837544694 848360689 860958248 246772905 900266627 386793579 595489892 644994135 702745802 676052750 684546125 822497839 936687104 803474067 914429354 912686551 916556416 806307360 915446551 189678701 938043461 157284888 400797799 773174903 781033933 406598774 982675679 646725214 725520983 654232630 853963394 295621192 853958749 628947799 709427826 961864959 999026147 603779537 818680332 7464016 98269549 458030165 520840781 34567516 915643209 841985859 874164988 455508066 596095913 687683318 857638586 616126094 846207571 913965705 954755549 466754092 749982457 687173978 907384226 43000544 856584033 699338055 766077506 554498679 987576352 950581262 985674401 162759848 961839724 287844883 585678828 681057208 928259315 198417815 926624940 766084165 855647671 7509600 779280312 233290769 771238869 793099136 878927894 797883552 830951439 494164693 930511311 147903452 523493108 159530672 915215877 688788296 995303927 328654791 546632077 348119852 779316771 12778112 115818232 791691224 840264919 229977507 688446761 49357384 595753004 15015187 183011049 194244105 323374129 153081834 557520033 511857726 685570570 679268566 831646980 358801487 716944242 157162822 196848651 246281822 603821763 295952624 462635639 77688602 557726277 842419092 957823253 101218351 540834405 134687563 694372185 876923317 976942643 628552883 863279338 566211482 933969572 51003718 126745379 311154180 516030381 400582067 622136839 32835304 351174628 246894907 445265846 62193076 786668055 293073968 328735008 969778726 979588248 313594994 521495864 588774497 732295681 666777203 836065169 432098277 545447860 808176444 860436983 187433221 863314133 53931693 381942817 830012058 998697897 970830071 971379592 14061284 682683148 803656602 886725564 732174192 846405701 650099336 791010181 150101776 313224248 1441713 34602690 75888746 594630716 484359100 719172584 386131655 932465255 573278489 595289609 571759887 902570555 716513760 952673390 71452933 868479977 877465764 976703012 732796053 778389868 125294995 258931172 432820208 442339724 87257255 493530222 322893608 535958181 340245231 587525813 84135809 313573236 754677028 868108559 18806416 576784643 991545417 995788124 164964163 629545281 899703326 965828116 670137687 818516807 190734695 753048490 316265595 998835886 182977873 685249519 73103452 257697545 117133419 577696972 757418350 911639270 163815830 176736628 7087302 506163781 275314185 601035358 478734605 532480026 510329443 590347855 892958707 893953506 504449888 971322984 923374012 936475309 615789570 882040515 695597184 971111625 671085407 882443311 677152943 954025278 428300185 512588003 161421015 427814114 426083889 645358080 428041722 846228112 180499951 488080175 628354549 848994533 448650163 948173220 825492049 976104214 957484326 995503161 174885045 272145558 493523474 714251677 560041177 920781432 268798027 441386405 240398381 412297640 986630757 987975948 859252119 997572344 962759965 984951053 272515821 423002841 870579022 924729899 682914854 853948438 693296419 986492958 427444461 662036183 399129748 464986814 834929387 974261478 24335402 853565258 3582043 926717192 910169622 963849770 852219482 891975832 918819294 998243392 27395159 164482911 976204443 985298946 36781328 966066712 234683549 912660283 702863492 748486033 38114339 660701377 805151690 869044686 333147702 386857168 897327950 970517449 320395307 598644673 168857200 427807551 939492378 940383260 265145705 634255965 103978721 170692422 965963846 978287361 772238188 887220760 657878018 852345755 91044945 517573704 837586014 878676657 280931093 657317756 54955118 420439542 156902429 998783630 162779936 385860697 104527238 350074394 731755554 750463092 535979156 632311671 90779785 780484541 636240952 999507820 588409892 665466544 76927250 849974830 224435049 725848274 94600334 741548623 991650691 992163871 997528699 999782802 108963761 318639049 512041517 640310572 252315672 626036241 12260785 470106086 91655430 228394222 354190179 740442543 543859860 727677923 966133211 981221581 738520493 875866270 509303144 734359529 312146950 997359564 551836900 679464958 284480218 561774372 918087709 981099386 68569196 108194179 87360400 671854679 897478016 902133580 611950393 944495621 935172837 957813951 174753832 604447062 619064532 836220653 385515753 792305456 437674550 993924070 174719157 545998145 177371398 420655205 155041488 220955041 159669359 849221965 781065856 887020589 214268517 274149114 552349214 713920744 469658116 898381133 211708727 399831313 627763617 997954816 857064722 860980310 671552441 906291781 188068610 215229875 714592123 842765346 551314908 661613227 160169345 232663984 307487285 961423770 127720477 671635449 402941912 962729666 244165184 609743887 369848170 637177018 93995005 698710050 126500382 877808130 787104845 960902470 914559128 933654915 205364955 853089678 630923183 923519242 405459842 434088553 682274630 737477810 309837900 743936771 942416837 955255953 59376968 336571780 418353110 930814503 282066114 344156848 299956117 407559821 716348748 853977379 308238985 891320971 524441512 669650876 814699100 866238239 100247713 199154743 759020134 877766186 865295903 883763208 808975209 854001973 824745089 971638864 988055410 992376820 656329154 964991458 130660346 264060966 666626763 959535612 277035115 718189440 405408329 950556172 409861648 499982142 651385930 931509639 282005187 483876795 329105956 506301299 400378156 939346707 290295924 720975453 238429150 755395074 311917273 442837719 410908551 541017542 803653427 948123672 149952703 991132121 628339264 973284018 85537626 146789507 865959554 937086277 308431531 556914051 255981424 849854173 616774606 898516971 626766122 883224345 746549355 795919892 744296667 868970162 649351617 788104287 177017864 756262973 786687584 806869772 312270644 719329639 762834189 790666936 434747499 537966533 651504372 862278483 253763634 327580388 967999270 977338152 632025874 797059823 436252738 511783017 820240479 907740213 216631979 712296088 530570072 595553688 95046879 525590787 896411668 970196870 818777280 960871969 690798559 894547308 286919905 944119369 591458812 629152478 343004270 446134845 595436050 651143347 478146568 871777003 950283696 971934248 184370319 338848954 294268996 554778850 100325928 397197546 236096064 727830536 255783223 760518526 644916734 980119484 823380851 972708238 228902887 919031265 127753387 920723386 517050071 849437503 581575413 906724293 256694739 683717149 568184260 937125293 457519628 753741908 149513116 665959801 9949532 385610793 48606564 169306377 347009370 628907701 368514772 895849167 515155838 681714356 483226098 745583288 276217553 863763534 900269206 994041654 852953605 941742690 466991172 911492062 710666912 909206323 307059056 962228218 656234955 975339351 497775683 588291867 456049030 939322385 464932831 707649357 444145873 859664428 861198460 906334423 455121664 583964977 993924389 999722914 977483954 978286393 464299382 879894106 813737477 945591070 939498760 974440947 943023498 994188165 659428721 769813054 864508868 953181799 300963680 425503189 544689163 780217238 202771712 351895842 898689127 995136963 180431298 349857162 686158547 819170054 134920102 865815298 392546837 463617770 939346437 988407319 499293988 736330397 316245345 955975093 175937728 596485904 114646605 646997176 412159800 741094867 883124958 962669517 711042871 793886169 188017600 487604879 8707927 429491832 169277278 813107545 286993075 416769462 693434672 789240919 327776061 518762421 96670203 871554868 277750322 575098237 758954842 859711599 705989729 930616555 601176857 649329717 90529883 606716199 419064570 783546190 653151642 928366447 666547558 917910098 770790332 976652179 528094404 869357827 39117781 438792506 195548189 565815360 519735641 562647721 613757277 712123101 636916927 731175164 567596030 823730013 937138168 949197682 454007437 828892325 449120025 855555004 745463912 932139552 899349539 916570523 236751163 600725760 951733308 967565514 968462045 993694131 219779312 775972872 850389951 986448500 178305218 601459316 21640352 91067009 955972910 966861271 452247784 533806032 614238708 901649487 704821249 855333507 688639540 762727867 81985553 239367216 764186325 879252454 132889677 552338896 166606245 827958778 917400443 959600176 236656876 505878124 956050145 970809616 779301506 841179433 734461560 970344734 922935862 930904183 346531347 955265081 947339119 997456846 87557649 792841171 991441798 993745179 626794372 932525543 998296443 999405502 38479754 390369439 245039552 485342001 477876299 826131966 530768758 794015316 53248249 806833022 905806083 939551969 648505620 984576008 477449570 483161133 352779486 933281358 857003776 884171811 369796644 557950726 391475449 988919357 647427582 826669301 693485958 873358563 223610185 369434169 971495628 984236073 334763635 409285367 721233002 892882339 906621392 939057157 907066184 922686681 42638751 387581579 521007337 783392007 806734947 938563788 864735975 946029751 766283935 994050015 666154696 688425359 322258262 771623198 184693656 693332282 270810569 574328060 997573516 999226194 203023929 758809859 139316784 700343326 502821049 999306863 940247025 963677913 746180222 854712278 119797100 748527236 73547110 136472156 159243256 301618756 980355612 994741396 996263221 999994873 140996622 551540079 283086239 740919150 527331709 846796440 160460223 444861563 949692166 968799566 903373317 979489289 536847014 983934850 830896056 942051892 916518105 995588484 237726451 949717039 166276068 671978400 250106007 663901756 184942690 648095907 692394272 983016232 759504798 812388436 165333811 485468612 70625243 262006427 332585470 372435871 605166048 733120810 661401779 819118344 406233861 449847453 731422213 856778207 711277378 926273205 84533819 126359982 645494411 832459897 120907090 195908897 908824050 963955730 972096178 994703435 506354830 614883377 895305831 993920572 302604738 375045456 924665474 975469584 32855895 534004794 704512075 921754040 405293544 747382459 36492370 703035211 938978568 984488556 160680839 316704859 973086058 992451222 426353892 956481081 994922997 999982321 777991017 901728086 197256991 537942376 431072404 591377263 844818371 948943853 346554514 471678920 995890043 998967328 748737041 896373829 300197727 964913289 16966590 839003922 970577585 972158492 625470362 770086087 318544199 607964030 748336195 794140906 45738997 82217364 746156979 889616315 949782321 974660485 227177213 472467314 587121245 783637172 811071338 959422008 330907158 344458405 958049917 996230936 17346123 605913828 990144535 990196208 49162413 736957665 219895672 923381646 337039775 717695183 70082663 458331898 283481402 634044125 26903369 369904186 975501298 999554032 949325930 996100182 846862664 871792621 928453557 978900422 464226284 686164863 227578503 393722666 372686394 707178224 21746447 445600649 632464762 892547054 79490653 252755848 28992268 372798070 930446282 964108035 873564852 960885944 149923891 192467278 809941210 921370567 357670739 609857468 187030589 671696952 246050707 780398263 360528463 592812790 672265711 814825196 631557753 831081724 827382186 925545890 856999017 922752810 803344698 992608999 970987897 981456005 379925093 514424088 334504058 825478013 162173101 278170342 131280326 540401788 653535260 973288210 324500644 915877446 961700737 990697466 94174601 132537790 658338359 701220402 946019092 947203347 640133502 734017516 479067827 690859085 417109205 760912452 93748123 950620109 803757908 853244827 655287644 911853267 94798731 890147264 669275014 925789483 715475072 958905019 642488088 811557470 943380106 947355630 861399964 911706106 584494024 718971334 557651412 807802454 109835508 207654879 603053079 844069947 982014803 983778408 457466303 509463229 735895834 895641332 382382430 976177864 342677802 862776420 106032600 397496150 41528250 678123981 571265324 780450728 207898876 601553068 453456020 889590248 938759110 970571527 421734113 914876993 234662375 518361812 914027435 995110984 816940587 916657608 286318171 887311858 860846489 963215804 432709582 610159179 380606923 610288622 706871586 982198508 990720981 997411103 610731772 863072392 763121142 893782231 619061492 820138171 138717960 356652450 810346570 832191284 310868349 363975952 506621918 571490789 925926301 981997140 782483285 856473798 832515319 940528176 864677644 970413446 478200673 760546797 79690832 737721799 826390820 863524429 895904194 939748520 956099786 975434318 456772123 726196001 934356650 997249521 418685396 854128518 468818755 658378357 596177205 997406704 112949960 879131886 95754852 947611983 532188842 626772041 673174866 735594822 34969432 810322819 390939572 583040689 465266506 534823099 620858575 813346078 774606495 805354793 465318958 930801309 505767548 775452728 871639288 989288869 786337514 915320116 459432424 782212472 430827208 981629241 402843693 938034049 505413313 794330725 237450085 656022275 823954676 982961276 247713158 468425624 351774582 740061172 600266283 602229864 131867962 895026060 704371271 879854530 233552524 238765991 299761142 986144333 650159073 965854800 939650533 971666800 400404940 678011596 36354520 88188468 620534747 944972261 408699569 515706230 808004180 934144273 24317629 774150451 820293966 997997913 910398201 976032410 423841067 521818628 707055190 809567163 685103656 894707292 253841004 677807102 955625675 963998736 721648193 904721213 664906698 833908699 301242036 349027449 657896131 744116874 249967171 832861107 285639800 334278539 453212471 652573954 65595465 277445299 556055447 722592939 527020501 538521713 491255117 804244992 443046717 767483056 359112065 453079086 983268194 997964134 1863045 136379370 555189438 603392455 461871659 600725488 343623303 643522588 526848148 863498945 806897105 944550046 567969047 779506238 461383847 692746564 871713148 882098892 714757070 871991903 846168063 889432943 863232397 979574425 358272326 631309746 399523329 850948819 569994766 762737860 521833752 803998016 905487489 940764280 832421924 862483214 60378320 634687584 949539738 954350224 707977222 747107784 298739877 941268950 302446514 925643560 646231701 857879322 667746173 799218891 576858042 659642224 473406292 628895797 941676779 998787002 670994769 952226152 419192816 935594343 363311895 630634748 890060503 952143813 304978006 705248207 172772878 713853683 775766199 907066270 385117389 696750007 252178739 965153449 88360496 435850134 132631632 289207239 549816036 804817018 855202038 942213539 511414676 530848052 933426915 994234783 715923916 753725117 469227149 499610341 429002534 586119126 678463876 778984027 278012862 309536292 573156447 940128112 124221537 226853631 960289889 965214739 929044140 941433230 780696592 807850905 824931751 927772373 624957850 899836151 357018166 651633840 652796312 692482697 193996898 359025999 296506429 698190027 321209999 772089944 365761121 827289982 20075927 270573921 42545137 870304044 311954674 410143015 184537494 553834777 576900108 621387653 56442409 930559975 563631444 685697528 678974576 857026138 566034928 678485636 207404531 756763844 424285188 573515495 49397476 376719236 519989903 990755465 106818128 229031279 185569224 409166690 864611684 986433607 811097642 828951117 963386210 966681276 335759059 750646529 837158734 987431796 364067863 600052826 975138625 997991587 54854580 727841294 810433298 915192687 40305316 593636592 824480343 933894713 29068680 903790270 614748348 976038922 903843321 999898234 928357121 951372035 703758771 772470321 377766520 960086452 817867870 877949788 98601654 186049441 741411561 801966375 353484551 698623483 282049127 542088479 922136929 936495872 934582745 999924182 419755352 493502388 474404733 790714176 327065995 743511876 593987008 838968653 740823076 874944142 33028893 834584185 472812215 947145724 703873413 715954153 446101761 567035413 742423990 939810829 726498374 876393811 65394950 425663601 481501786 547862590 380030289 451475482 118456116 229953872 615363590 789725359 224485820 555506677 956854862 969245228 303231259 950249300 398992440 867529433 509246209 677690826 10990932 449269875 803931656 934932109 56649727 742381219 231965405 427631494 490324555 919912481 642709998 756912368 878951834 901487644 117094540 405945720 254681563 537089652 302997884 354992177 473790607 670232583 491505983 718293967 678415929 861501381 949146296 949796711 447022618 689938954 959451260 959672324 764470381 977394775 536744654 773923234 320689915 820938534 232611225 340211883 449090077 891086620 719310980 818054874 577223739 943970081 925084827 987990619 180856955 840469637 976604032 976874425 277492265 881400262 257372048 474941260 906929352 960604305 128916611 163999409 295768899 417209785 947974398 951797130 189336213 921282985 538453287 568962467 376409485 625761824 580929202 927396819 248880816 352209849 995875031 996330927 916710856 955139816 27538216 466625056 312487611 856605211 646662702 969321969 313160157 883965007 510144500 926284333 668279558 946848313 139122011 841387786 566916762 615083759 656903126 913260612 132965481 870513992 367468392 581175731 421358672 532282715 181409597 917452189 827945856 884724281 639432410 777361456 701128185 782096488 989275179 998486795 334340616 796272694 559110078 592037556 692318078 697096075 955722158 958555420 755596704 879292317 96592336 404085322 147979534 794451475 707540430 851635933 550678455 564782436 965276134 977851531 670429203 815857983 118648561 131207080 692937170 731522706 183026599 913028617 608898690 972758688 168217916 405480747 62952316 363659515 601415518 686081771 340093030 668474767 53273787 890688447 217477095 883322409 24701262 43229463 299095518 629664216 470501913 577868841 484622787 691888808 364301765 367442165 645105520 989114928 667558557 906716270 748134617 809549561 765756870 939145263 607109330 964812228 951796188 955767425 447408613 830393152 277242361 316201685 131024729 573222708 412887598 821162949 379195776 869355359 722903098 841493308 156105703 213596371 361559097 505389098 31809719 955318071 864493137 981748319 283120910 313161879 366603100 702129313 903538653 984361277 372986281 581424453 116791935 262768274 494309695 921993938 202865607 454671624 107929365 248353583 618409301 622067028 695502294 829741610 772424573 878128684 890933059 936533475 873146188 953386157 378186332 665550029 774721030 990686652 694665604 980915279 73832531 409853618 411394113 832714751 237396987 321790336 57594203 366999621 97843728 762813505 667881714 857666408 801752898 915816455 862104213 892026597 377969120 561199008 286507935 937540995 587468935 869085959 234392708 377203347 347248148 443698005 631042064 991450859 198853064 424620818 109537624 950585332 503365871 992814451 77380273 163214798 64459206 808420539 339905955 976040966 861328342 919517740 641007566 719851048 55866604 407443875 37357502 563105603 146745148 366159067 356922173 385139714 778161868 981536716 618877721 738831322 259969706 696347312 569462068 931792938 283504756 511374033 204843832 273917953 126224297 248644641 342805649 438446422 512218661 749594804 868019320 945411742 931389726 957508819 601008538 987294504 467868697 856956439 646017211 716475112 56130623 57242099 872055481 993257658 348673023 952815906 96387674 124147878 196529069 282877827 937081074 986823829 609489900 850075932 891598874 895625712 303299404 863636470 627814374 806276557 269742545 640906907 822319350 996018960 299773956 419844590 331735252 981646298 485295828 790438996 238349538 372367795 808332576 845491330 934448639 940775997 667282237 696547167 618085114 994280068 480603461 632895139 769321623 812843564 609731568 939687535 596763735 915646394 662460653 957056484 966334898 971802707 231008358 547784160 302035142 391211761 238249172 617848306 233712802 629642741 430074450 489265516 182054043 237935461 88614611 955319046 185267487 679666779 632002469 687543203 882130416 919592644 749190208 862845118 894136948 994886534 945047653 949297676 597340776 751147422 784209490 962363334 938096552 961048460 645343302 882904772 535276575 919172302 284203261 532920965 887632386 993998117 961384344 985348467 149652366 855225657 555299396 927447813 153980852 754512518 111261883 343398990 926002132 955989174 765978440 965614565 263297235 534043205 186548754 306892494 293281642 739141979 398825814 461131499 691666919 702303601 491989416 804972661 402077768 933133065 720961839 968785347 316614616 696382328 679358626 877651747 29859522 501009288 86434521 245643722 511044209 535853961 346601689 751486287 116007173 879005460 8830880 177291819 29975452 255831975 79796336 322217503 353011972 477860514 439688109 821403209 999463469 999591532 867802110 972172074 313940286 458209294 108705943 549554367 229871129 798688880 42215025 477043812 330918619 732237517 906199732 977391732 327591577 933350239 89686902 788036183 959197057 978677078 438604505 939098935 211427853 338777500 419478438 521997197 287451386 301636016 382345991 614929980 955106745 985711695 795972438 882781173 33152590 587778754 944897436 997492107 354984411 490058944 164094481 750161844 381818753 935767283 654134243 844718392 453275872 551329338 961789793 990524670 59489272 681137402 423154292 786724769 945901459 997268165 36136976 490461475 356098421 969068293 974678761 982894945 741957973 842214943 591550385 735094209 793419481 880898066 602506809 920534691 406482600 688653470 208031172 490178487 375297322 648848205 642170899 988120527 994504963 997472323 873778283 996460479 441283865 740746747 159394922 219719878 320703255 977668025 187124980 823721611 604094694 888066765 789322246 876646587 294932732 311879331 245395265 680250925 852116255 935213810 117843443 381927774 681672212 943326479 985024592 985187471 64528615 94102059 821015173 937918714 867146762 883121821 889792540 981127836 630783931 716532658 815074599 952250650 60179679 419825774 91720979 368221879 742807484 958795503 63194704 673878972 618471192 643852763 838518472 868418550 442556009 573718509 472305094 578269655 711472114 925433969 41638373 282589025 768698607 907588683 283621940 284823465 488538873 670640074 189459821 679479048 623271641 801050485 55347579 476897017 268935789 864934776 244904056 283682764 950944451 966911540 793611633 906504127 185055594 345340076 927618100 954144017 726918567 841224204 315101728 659087710 563594503 624883638 211918323 800322081 680945360 758406380 917300051 924966193 664701555 691170017 215307530 423973259 492300505 948891160 308238827 587743440 899199172 950878000 267931637 727875063 450801040 539988243 8306610 141091974 280861541 938265869 541499096 616665155 725014722 742142440 659286774 931118937 661304930 792285723 484702869 908278287 221894664 426467930 299293684 389979387 877837830 931055668 730959047 942303347 515845677 949599551 73643880 927723437 251198012 772460555 908409370 911401887 475429384 999287528 939937869 987460409 526996240 554633440 21651328 545909171 700155152 914481804 256511038 769893506 321714256 609761722 787498513 885363801 323912022 330404075 75910348 980397135 161752306 314685906 239231243 869084035 269850740 278142097 669832201 874981063 271131863 705261813 807787204 868637814 326629729 684686111 545445033 964057880 285395818 543216325 97659698 575079814 136357495 728728179 707878706 932136912 421393335 443560496 123389455 754393418 266387612 887750094 1575652 193992665 857419577 898385904 285564676 825721828 186353424 347300700 832065195 908450117 29398188 876174063 391914843 615212971 265859124 373480296 953457160 987273852 776786927 891076087 915214476 987761511 272047567 353704414 148300552 553227625 538534146 662553793 442622570 758931083 45523077 92991727 502685793 627883489 330114 124725648 324417979 990599150 204345903 472355401 549536978 602631090 661375939 770156674 68768318 180159033 889912351 976796434 288287772 300342355 984180606 993330997 777172821 996087523 734300823 834568251 340867330 984197877 325500985 422169099 849588447 947368062 514320700 891289609 34888511 911994577 136425697 679928948 785996765 964966399 714377993 811930042 570629896 671130726 502326387 687703689 645617016 732497666 745297325 785522422 782925680 936412301 90059211 320306450 912145755 970824878 75594280 154035444 521937571 831974586 79602870 297444978 404250055 559626992 765625166 853362159 489115578 496463292 716510937 900177458 843402337 915443307 129326922 990523086 7535902 101382619 915556968 973738792 126657435 158740868 871486524 899416242 844841648 988269491 765677188 939438233 266892448 532783961 565266415 827572155 438756237 772849932 347491310 908759581 843284852 967677987 114231821 771339352 930719835 943471261 214275745 598102002 75782932 937175531 784583583 946306834 166810320 256426777 950765647 967418614 474276414 734263407 82646513 523954810 100034884 596996412 518956640 640889465 410443833 883048118 328242605 700935511 64901455 430580831 219697213 766815487 492787014 803518927 32423862 840311534 127437034 819201579 167338231 660027034 279645050 510280550 267953187 973721737 763145304 766682539 928587331 980819504 875090071 939362618 229900153 821136190 67198464 780453740 753611035 782736624 152609337 556413365 169513428 286026929 6028638 547108259 575659630 586626973 123831779 872283040 929606037 978519208 431556249 672589995 267065986 691766588 112294825 334943105 843335707 856916130 152975697 585568161 387462499 753425669 935128340 946526466 989223533 994404347 848676095 960091146 490440658 897433402 341431868 908406582 241763642 912907427 299064812 385392717 310308934 392201100 225500305 435541948 971737008 978355402 478979537 849284541 924675816 968159668 222683440 385216760 218065723 342866180 302886244 880342770 46044721 847597020 63091486 468187564 471515504 934806242 566206884 960939723 311380682 950083989 640200973 844850011 386750508 725342766 6001452 974944833 288665412 974590237 339247898 929368515 172948793 401210648 815872092 973793432 200615751 483473972 572776339 633471166 38966459 531769130 443672470 990105614 622369116 780617820 466622148 727418193 985981438 994904902 713004457 913055215 604417214 941998434 983637958 995650050 23864491 282647782 711853585 991471710 375221629 903529516 638837241 796879921 480640859 928401324 939909033 983785240 919078810 953904438 527520717 547434016 435660447 950871940 710171692 831040942 540119374 726529099 587230123 712968801 417341483 583344165 284252958 655056082 116119909 892526310 87279711 563339686 144092180 461696237 269456184 573990232 314494527 432249961 195919570 668763467 457071845 588479854 910881688 925175062 99808603 576478877 126123373 503474954 649389096 785351273 233986134 820485743 47225494 349255636 601459346 943050091 435541588 611306047 490549726 493213565 394987706 517353238 865816838 875779243 953224835 997118098 919246014 957813796 10144728 685369889 597575315 915200712 94455530 853079654 207152674 267614108 963982253 968443564 693795844 808109198 121951161 979135973 161294171 978422880 299990276 962328882 343307280 669295950 350423609 899799695 26065052 356717005 83730855 586814635 236887074 303649266 942573618 970219431 703280247 820464685 144189606 207388781 88686446 135660677 889233165 972678605 893061409 912587705 183061001 799005630 618712924 786809543 737596015 996829271 320920019 993494621 249450120 620463061 154907153 522985755 480623507 508725208 105864997 396804006 991754961 994240144 876183368 970308342 878902744 888588853 249703285 902214666 336620571 377521087 519369575 742647796 75309735 645026011 638354772 790866608 221971724 743179853 388576822 563097545 567644747 735995009 638449407 941214216 210532464 773473075 797902465 945166144 177283955 303087118 95659781 503016627 696750015 704208855 371937960 856448397 632767224 767803055 824082291 858343687 807765869 850495037 619288208 998195939 394776908 515542841 843854342 961722380 692056350 784450403 934649250 934787795 26409274 328215199 143816745 507377005 706950857 924509544 534389150 695720257 866281382 925261054 320256957 323447986 198489102 815623874 973105845 985596187 261936253 398485137 49896863 709098903 827027046 936632304 717592436 745095033 633392158 824737216 674362060 769457536 379251724 835397611 20363104 408874983 667216037 884413384 380034742 997129045 761779244 938453480 145584960 408294790 194048591 720931814 345405179 821526152 114126071 927147035 441135859 692337262 990278575 997013624 330813077 370198209 766683998 800384242 703768305 918953449 496532025 977334115 630465596 749422831 244248028 687084001 170210419 682720149 267695336 650994188 506410127 580358012 887224652 921612432 280954144 998041762 309144465 844941216 601473810 695028339 122247654 935374335 9016218 127264929 203239214 471261697 865599932 971316004 573136968 805795990 103686655 113701926 830636668 908718834 364856863 648271865 190535323 654592365 47528623 107566396 851238762 900538743 671126958 774846276 880611829 987510374 227565040 736718633 218440092 276407735 605382017 653062887 398238560 567134614 100638430 200743574 440300114 814493933 612011679 878543681 936411397 938062302 690427709 721839152 26207929 129035540 655320621 756630304 861017341 929961550 683763481 973479223 263049801 550895445 28007002 148312386 744361396 780636020 18074572 724370068 405735201 760794927 82157286 941468655 611759029 772542609 28628462 922315949 234105257 895097497 536673157 917803541 747530927 783419398 838647895 972353818 195249294 265864652 398943352 680278667 76287420 788149040 160965564 553904643 594765056 757251993 919947839 966554716 238245213 475703143 510166365 965241214 20202781 746811928 252720165 950251719 682582165 897267508 801431025 938481795 244479236 462239421 692744377 774894961 622309969 720927131 29238894 667497767 162130680 342268361 851422793 903255967 345638603 448553540 770204183 902088327 988422580 995825557 950274980 969416467 167746142 801660762 629795035 934320318 520830832 986582908 288598456 526266537 876954478 933052862 670092164 749698931 451046225 788779939 628457940 761423616 742920877 832936190 275794145 513866104 592183720 987610303 229411281 638445841 536225640 680379605 888448818 935662013 968289238 987514564 876713605 914103719 456115080 581998982 442324124 942607076 695448796 696898325 910046001 979753249 880128208 918798892 764680873 948783906 649403948 857558240 964254255 964973115 968935212 990855370 237757516 619340231 919934751 976846344 866542564 918756641 750989237 759089113 383329173 884877551 715468132 830694135 180371384 469414367 254481599 346425667 878013298 916119724 62131685 788016976 941106797 967468775 451762332 592545803 989422193 993706662 722554818 933950562 821537586 866029159 591313493 856585068 640074595 888976260 286641087 311444676 370340513 857863819 581152513 755053807 60983880 355706642 64355331 991105777 943879499 953522227 434540016 625698483 209006437 302992472 685487930 700132361 410438954 756655070 202791376 997659471 565045544 594089829 736047117 736501814 835796105 908180201 595795900 952044566 863735189 931992814 885860514 935986698 499420500 807693074 724559955 862763177 206920897 803195006 959425992 981132609 357357555 519541923 981950919 995634614 451628832 762385049 561057436 932373408 757470932 869975451 808054977 996168887 957567561 995884614 702183252 706692480 104282086 639175073 233110443 539974720 841463097 872192116 310111647 966592850 179264713 785749981 713004899 895606848 29593143 78135487 94163056 879236033 814653798 871266912 353053134 528123876 420417048 720642019 734356055 999705900 142545984 596561004 163865692 366106341 984329213 987812712 419163070 806670269 979472666 989280343 4908142 855806696 579393802 768238854 990183515 996265407 587026816 937975608 149806724 782101465 117647468 924745853 379115693 756849049 353164227 926145348 505676889 557636336 179704329 806004249 413949939 814394351 94733429 769950644 821004355 922697246 214245451 865157670 859159061 981445431 474657996 644141623 714691082 913324674 390661600 567301594 291163733 796196657 226136007 587600989 380505561 467634655 226903470 571534636 792587619 918954987 599416825 906437328 739469611 884817310 221298790 268294424 926084371 934190856 14468613 556842941 185429932 658420554 847171986 911142621 220265317 876684674 690045672 791600567 770827319 786899211 618965217 702884474 444605540 964695819 931463583 979367642 270697623 754252557 881391120 968618899 315657494 742317681 51390736 591567211 273653165 644404870 669785338 832797042 447579463 831151425 349037864 360420282 75338268 543430900 215726400 938647265 359089073 525453345 858392222 927862274 967692354 985118294 794455543 924974094 525285071 630146768 637230727 689341123 824986325 995157720 870123142 938377861 508107134 895551095 330855909 804619713 459981870 842016799 393467001 441173945 597732376 847728294 281384276 960376776 578552944 580408391 236866646 862270722 302994640 438374469 376147671 750189990 8194585 260946681 328377023 859971548 428737101 646247561 144722767 863750462 965972462 989163291 696981764 729396405 166336829 219096754 464145564 846811962 835520860 913804871 342832321 705337458 99628754 199728545 660383934 783816829 572882058 610965871 461911648 832814674 133344432 459982521 407668567 452915145 713574734 900146861 132499425 866243373 762671287 843934705 732547551 824706513 62825325 469274437 332903216 418424970 388763427 794524080 323114382 785830076 79742924 798655804 510197063 598700651 950221597 975621385 477541317 589639568 485370754 756172847 691074415 803499246 957877357 963164435 346690245 886226135 736211440 777003622 609218077 713463302 275974220 730717570 869304701 995180274 368761241 439918724 406858068 677375971 516420862 861296782 224545020 956783104 599679964 909569122 236075890 503728155 585877987 955249628 924263183 942032106 973114724 997639443 334238413 441519840 831660598 833676216 696557996 921007610 768078244 777624466 981264211 996438522 140647077 376922548 64821970 455108625 804247055 819714718 235795708 677109681 951578573 972557345 379914210 705350623 581387928 934265166 425005597 936134804 424815218 586874806 683982662 974538618 874425021 933530788 378571171 902110047 274383198 299439213 159246223 812230906 63050825 954512754 479388732 770045286 520976675 611090756 258190025 305134181 335067747 754054681 927175087 984817488 962425207 985061548 658450265 894116369 67054350 702064967 691473068 972010508 833517371 914972853 42315899 485429415 210883635 625504141 99039573 755898013 132483223 972308224 749114136 989879609 492759592 574994675 650710466 782153184 312609655 790693856 749098752 865810727 718413974 840637153 444672450 991369264 933835711 982630107 106953484 155251671 733647823 829847942 567171482 868390847 269843530 370328371 384053489 434052865 914839146 988500842 130361835 607473668 49592899 242279907 487026358 625856500 84844753 216387304 576292116 679701133 381021070 868696115 531566506 678918497 267359083 782990486 771489307 801312567 538528155 616756731 213351969 993361262 286519577 740899593 277256573 791741225 759602472 820780970 868143240 913315455 564142979 813255189 552071268 654145085 356642350 615721315 610990094 783506035 11794013 21915696 130648703 666714018 310738966 782997535 986537479 993703275 657015612 878272029 278761882 758753299 599810604 895012762 950713265 971785290 881110467 927650021 462049816 512138120 625283620 944540173 248932458 706817958 503434740 675205950 38277705 690907181 572378189 769512762 51568778 55512011 451317360 889601438 533877053 990985747 413641362 876244847 670736511 919382510 849224769 863195355 371526628 929140533 634638524 981921218 935525722 983793469 497171865 583137519 905113735 965074653 527406252 793483771 341648078 491881191 118786032 979550543 227800501 801983641 158772357 634194781 600232020 922345496 860659022 975251488 977359830 992086261 151451013 836324397 617892921 644847563 340519652 818182937 242506445 669839075 35679718 580166225 750220537 764362804 196400296 418018813 441985169 967194393 930373958 946740069 479710218 930079645 250548002 729399827 397591766 743921013 705701827 839905372 660399481 931722556 193831574 729665895 731075197 988917918 910941978 969497298 675216584 855258538 121795246 415269406 399170366 974456584 793712562 874650818 96512027 921510430 806618787 826870657 662682705 951570601 61227143 507961301 69866584 651899257 690746482 789849958 151231891 801668760 980161899 995480518 802222191 918978681 107154381 365478869 840862022 983977410 984949719 998581515 432035830 869957864 823283294 925636075 708658969 916092186 568682552 778591609 597064944 636149697 557620238 836569895 90517173 531508997 762408956 880815134 9158688 619060245 782491773 794939954 283986397 310828042 530694906 614930755 320426850 477137695 344096209 920538260 626220626 921308358 347288309 399958224 180659411 847725184 938499890 985047791 850053304 944129259 129032403 803422921 881605813 887761984 953491764 976338358 718304891 721316728 398921565 470377419 912899734 929388751 335678185 802433657 4695784 338190044 405048239 604014043 356907858 663405416 527715106 847510906 691738664 963462134 765541821 860827640 161521279 359773378 587327063 979149467 770341712 833677217 197670403 672893088 721495907 791905254 428960309 778975920 850781264 882567266 580333318 866581152 176703170 780234276 208056519 893983909 101310931 422879016 930679344 993260555 747421460 749348950 637721875 646824180 458589910 773383523 964737664 973555259 118045072 841490507 166552409 477586673 965269561 982627184 509859355 913524932 564427567 899082776 307299220 474204087 697257110 840555303 799451800 832596900 275537758 697257871 870722708 889442635 16285370 417491060 489751732 855673316 375674906 619468918 789700814 940996531 427761369 771879549 112432719 390013790 63164843 510028747 451335944 577382087 270380544 693772117 970055194 971443771 315033998 370516185 889663063 902312577 1448251 416920099 790647632 808176056 879797115 925927733 925316305 957442676 559598318 588114091 127268672 695913417 696578764 726989920 583981789 594276924 473557686 834802109 564093171 644830525 549515917 780625513 341304219 465697119 956333262 980928058 357554298 946105954 561711031 933793910 575169667 877134633 815575917 962975759 441538401 790699919 417147271 442491989 139286094 948368138 853332738 906699462 633987469 852043873 673654658 912637375 636092513 838424804 61657350 561294628 365240309 483001663 813937115 861865515 962474945 985748645 106716692 885174213 714559067 954238752 937041832 964020966 789214432 957150359 616488630 720438968 550434816 749622575 302319317 995190752 189028353 620964196 821584057 843131615 465576322 928119240 905666508 913194675 874681076 911590080 542961691 979277917 375168986 546152086 544467215 748211630 144240263 765709983 769069847 888229901 437694999 795769169 694878622 918530806 174659977 256876274 573088930 688821427 385753677 819280079 890740428 988896688 865482119 990429337 462682916 608240408 841845019 888705062 121775518 355312587 188434610 560906962 44103061 290287376 843368450 925562482 697719301 989050039 799110010 997230502 666552133 816941127 624974717 839023442 631872872 692402928 905683412 908433325 317633992 450830065 575826973 967037038 445070205 538608130 437775641 812636034 225553060 755955914 460040887 866580108 176715502 984010631 931174675 974302611 810805211 853992887 303070165 838522925 724376651 747990516 244262351 313794876 120382427 172511406 733970598 977146982 267927286 361200153 699326119 977455460 825854101 943322022 146255730 581532034 895634551 976913984 931070318 990991586 979924993 998044622 235960781 948825766 998744497 999691404 562482435 726985334 238556554 992361144 702875764 765055318 916666772 975048509 515594515 913144374 373441739 749086060 557855778 572005924 297391464 713717158 531492549 825814395 253926518 890690385 71790617 136697894 931973469 982466359 252910136 364414413 72902352 504466595 348169166 477461652 417874924 932246513 228719844 328102186 618905594 917108079 905689353 987504919 843824431 995421903 341495180 354283027 638007270 829737286 227226639 705460915 159056910 458253678 429499702 844917577 664796095 912427857 846058954 924181904 901599715 948255565 207881611 267207221 301478588 458021542 719413766 879057142 146372325 654328052 429107707 747490672 104458704 296752779 35217856 80945732 14046893 189576080 861553358 983710935 959661610 971808456 440594774 748456349 575637061 975359445 296290370 602673426 719889130 828190315 942505747 971933249 431254127 726324893 321062157 641922152 793495664 908816332 145830169 330832523 800142821 968841016 396948335 967993464 95423296 726979790 771922152 985325141 932574050 966108838 536810566 791858847 170161595 774765817 968810944 971422388 18892887 211897900 337009124 449485386 158257152 507947185 520057739 918304506 367485356 957638063 799644042 908157379 625596463 827313057 937344119 955979000 87283777 951277314 103360788 570439050 137298579 470125268 875283997 887400678 392744549 947216422 748709018 777832224 217138759 605808157 621900674 803391735 551855518 896981295 296271955 558566209 675303652 949991569 474407497 718204303 285766730 636706557 249809156 434963730 89731475 191895836 937245526 996874960 371076687 736197019 639731399 665830834 948662893 965104442 690944416 893217945 667658771 891836890 314793823 699502787 777797068 836868547 425306335 934129628 414587132 973685564 306869138 654239764 171064457 209236971 851176243 950037075 335106638 723038382 929473999 955128294 960614826 985561388 730809824 953900485 114005534 953949887 728987421 996654545 266543009 760220510 928860631 975079915 974840138 989586505 498321565 525572612 46016939 541188155 372945167 929549679 401573859 658676949 81968029 276119282 78205825 590729064 859674350 867814428 191106553 277510626 698101699 930376604 923234237 963681995 306552253 442944988 690805038 830857638 682330441 952155795 253447488 954393383 671128583 681319009 527365710 882180541 549983896 827929563 401324588 759427580 349120294 866517472 446513469 504421604 329874124 679307769 65459231 163443363 993803520 996466763 423613200 886793618 145379081 401521903 492474055 528058532 366405446 666696383 603531122 685516968 227893658 588812028 65604405 662569650 81180318 882501539 441161636 934297814 984943759 988637217 618917390 738393926 808617329 951512356 524770450 555093668 515189715 554799821 431986511 861033978 263683463 651478239 929424446 932507884 640699926 683957833 83016301 835325761 775577738 924180114 482283858 683966771 805334513 949463616 17020999 399402685 612196371 885019276 570279874 941120408 171054846 607390389 430269118 885193786 715397250 747141791 834160566 844710386 329273860 920228058 349918753 465896526 959195802 971264793 125054507 806381238 894693407 934969545 709278733 795971905 489103029 537795043 131763507 427045354 98283636 249338508 485544916 732614306 483882308 572612553 973342676 991287317 214987894 762209966 722014294 992845528 430553737 926664553 719617643 916327049 341780059 831840183 369473801 537211250 826242109 872610648 150450192 714159548 998203714 999878764 602370238 886694587 112854961 136565854 931013380 992348144 917288044 969965350 221679359 225503342 401719748 592272293 750888835 949376717 780413129 904259811 72468269 136136364 677122435 821018450 252878545 296301646 417502904 570734498 720377447 733419488 996609778 996779007 541162206 915853551 398303794 798407695 72236813 504150513 99927539 907481303 71788614 95068460 262070281 377490830 528653305 839373797 625188652 737243902 41311137 298538815 774122551 795944089 630170007 932062284 731173004 848576267 542016092 793133965 432546121 964284286 583655786 812211092 506866860 590498157 779582322 988185416 449736091 948149647 517898698 879569690 19973405 883177108 422307170 692149639 696505424 860739054 660532276 735566267 514076582 807501758 564662524 697375594 878008053 882945721 8927459 641629726 612218380 678251255 776179111 936432871 887631081 965460620 722559334 728292370 920803545 991896760 827473393 839727332 336277997 706972311 322453119 386754586 502274723 584958478 220086291 468956676 187642716 755383564 53954897 112944497 696054704 996583312 772402690 997361274 110122528 688666100 316264690 462448720 96415978 483644824 251326132 682688896 302250874 859283079 908198531 968724256 543646262 906137188 569047153 846282879 363440 640936439 476406523 582310447 620672118 756873307 595998468 849727402 653234827 789066856 199081002 917302875 156401876 300093109 440532127 664601506 792644569 989249679 641462073 852805314 184750112 968126247 951098269 961764559 345503048 818200053 404967858 912042537 562632791 562892689 419970376 438160775 963881828 969306633 305402286 866924500 553718085 993306642 115307523 181455667 167646369 797812318 691626365 836670624 870441125 887944486 29457947 894080888 500287450 908782107 679372466 840431930 647729788 923744477 46990068 431061397 934754294 956977597 219291044 670636925 460743150 530616042 15289887 207629397 157166859 898102936 845518043 888443342 417070825 427644698 283515083 602339708 522445214 610443549 519339342 785194875 533264507 753186645 155641366 525788946 341132780 436921430 840723358 900510642 770714395 965569679 689601443 826703985 390332899 841966820 282874275 338347752 39254656 914486127 608295889 870914758 757850437 807418061 54056339 694820203 701550368 709583082 792407710 830561640 370894129 445048637 728532814 891943992 688690232 787914993 604658423 917870035 550036620 588767920 956724214 991333123 128229252 143957999 507725112 814668406 26642219 658308889 272600784 665424351 330098986 952890467 30943870 822021999 61977887 835993310 810120999 903649880 489616311 580195999 643026806 800653038 522142185 858682854 278572141 588503367 192826838 668142474 115107187 184906413 298493536 986242457 712731182 843984037 285649222 956772157 371656216 621135428 333000269 985797866 734337732 760263915 513755721 666771058 349993947 953325371 666917698 747820307 564594647 760287567 898953561 955551569 815210626 849183121 2167791 823835619 294332224 603396848 155570521 231945750 980360289 991152636 584037801 611552405 185247758 725078421 132023337 583434121 996087228 999718296 242090110 737748870 934922838 985642554 599335694 654441019 715398276 911989546 269720788 960254374 954104804 976614338 136204843 552704498 444592335 462509936 918958033 991459169 589219432 708612032 518488725 745096169 304388737 754881575 614954027 738445627 193575959 834739326 912740865 914410750 739006030 799364070 223423368 442179027 631086293 705773846 636182577 676488230 313922147 698133741 283835262 956300656 324538217 479206053 455889691 738654993 553711750 713241423 169162170 741824505 383707273 564921368 45619344 705273218 60872690 81849424 571656041 625110451 665675543 796418852 601457010 831826192 575634852 819100500 858130464 902204806 703454652 787419720 509557350 688676609 414676748 634115615 546316911 551258150 95372335 463742833 631047981 757192625 919120009 945887725 606487551 854347929 844585511 955713675 676468755 813567519 314153052 703417575 956143274 963487170 123659764 245785852 331493592 495372616 947011633 957129213 299948579 615233815 478356990 898874356 826549052 836098762 819687413 868833223 651237636 996646375 51683567 329160100 198538016 732068061 480836600 928304649 189827843 535699535 983550599 991648348 341131903 454763656 861011444 966979694 668201859 887092833 323352588 426810415 20585111 190431081 598947846 853985715 847947646 923645653 823345163 965615348 794880387 919589297 455004380 746558995 829711335 990285442 913902920 924438075 761269388 778506017 951108115 999360871 208391292 926035015 658351310 954246217 988440575 997753632 733468847 873758504 588244735 619947216 74580878 195938969 575757411 875478775 218860957 741102256 625754190 772113221 151780051 225436224 473561001 569292744 62126436 859595055 527131861 667349037 522939092 986842290 868341487 977825445 581081007 968881488 54216628 675816485 725276668 967330563 117811498 975436714 982575950 998805876 851742707 929886780 560635607 913508867 320292413 576259973 749264388 775738990 217821499 907291798 862513049 921996679 517971680 545366430 203281742 385704437 65282927 573048786 80537437 219161070 486927777 747521018 161606728 338463104 342450830 348225716 569340140 743996755 560389852 685810622 447908106 908612899 504846690 896028984 892081909 953577842 667446394 930014668 109401012 180427602 540719441 838891727 711735260 826721756 982197726 997895268 221243973 439261606 163101067 590620858 641465402 903668272 239734021 757117660 659606733 967176949 418004664 703488993 527998242 812588990 649273469 851682723 511247145 925739349 342281421 608715225 986025524 989007168 109576159 190486961 103003521 369275598 894251187 954751066 261997590 264825085 732578993 985551322 552060057 821415110 140575310 265573496 467394142 706731052 811358195 855225970 613964314 859028971 993137524 994638390 439639461 814918793 665117312 698914890 460261331 542859685 662913088 702869827 864454508 904440455 604767697 659383675 946238786 960022080 411175112 514729458 92049328 190735203 449604045 945059061 146519933 403233014 202216858 344890232 458618076 598920452 737932054 825973100 957597000 995552625 710081981 819959268 214840873 503684473 513674727 700392161 199268958 868920605 283666338 933753700 43671292 493578223 507153214 832236639 612293228 890892975 98477742 432671626 915417325 970640991 896605172 954735333 175902523 721107612 56315858 872260861 27092503 602875190 675175522 788788542 958701371 969524995 18986001 891058717 949580801 970285640 968174375 996292481 556235092 638498228 530627268 736481702 914930908 941366308 806997529 871414182 248954501 396338037 483463140 569676061 84528243 543759679 845406673 863037741 892480371 944521615 427904564 789475161 550100068 785731145 173347451 401226213 420957877 787751963 808221984 943310478 282974513 439556835 407695357 825828222 263047411 663328674 862748288 934253362 513813548 982413869 10072746 320538399 103034615 296043162 181682744 766907581 409855589 655056873 186552364 316319484 765101368 876253344 443493610 707010860 964829297 974983414 876767879 900127500 626000644 770689177 303058934 937975901 910991236 932724334 948661386 971719470 325002171 627221625 715742777 896498431 197952224 466481090 175745509 744019722 806940268 958406055 169637495 999153176 519399135 641067226 836601700 990161991 97982594 670255810 803567410 987830668 386966929 809318059 490805057 935839473 935916787 960851743 450136964 803897046 927985135 989860389 572158590 915598808 790376872 981699043 947706614 950525862 226792776 615487844 167787600 831205716 844555025 882217950 849316497 884822478 584887757 849117123 519962100 947422997 630842328 724913695 191946186 452882864 540891315 830280138 153639979 621316386 938268235 955843176 235815977 906768823 684723736 822278723 313862927 768988024 559522290 655106996 63395365 619482085 940538664 955846013 290445846 297210719 782376788 986460884 785634563 906044810 309709302 973364335 200182915 984179170 595871725 897892961 926169695 942941466 90020863 281087755 432935931 735442499 506304312 797374500 908224639 912213572 36937642 460233694 384715744 953678394 753506432 842401870 80417625 978949821 485293536 874890204 713694524 769092290 782117951 798928795 474705141 526306967 981046339 993254448 794286250 933066879 364744884 903154254 686517632 804091105 911330104 982801131 929689851 977529894 696157266 846914767 814210066 873391035 32207979 150739683 641295966 641892839 982983237 984441124 569245219 679790860 606670264 624840699 6118782 560381324 362371010 753039096 92744213 262116463 350729607 499904976 820740854 829238108 866568079 871999921 989954618 996317718 802540835 825273347 537087177 550843285 829331844 951612536 575767480 610451629 208791242 288491824 937778397 987978388 306107399 346133260 216084523 273487534 525598508 539510278 218069617 530274110 885787083 919630477 569871093 838577464 803745808 994732026 982970252 987644327 141934160 648188482 943300549 972794234 175497538 999845158 547157303 963437783 158575898 638009269 444812969 872818228 410253372 430389672 387317292 509477568 802785597 805677455 989376036 993615447 930722711 939577439 844734767 995705292 488869945 516234323 778155002 849090377 918870721 941926698 196838807 802924312 593613725 619699762 475614454 659610600 74825959 328362334 360753783 844587056 492632687 619139702 277219332 293902521 426233184 919572882 887930081 995540028 180838238 805902173 18618801 547608207 775894348 826077834 30880993 661491342 666807650 829247969 240573870 646043504 69292128 650340630 880099232 901631938 774303747 801729890 670117055 975456189 506549178 630756980 424908643 683560558 300202872 775498350 890011711 967567773 489419406 703306365 79291846 828214711 732219757 933243680 229017586 809705278 2271524 343587984 463502147 547448330 936689871 966867925 310545622 912909892 666149756 929459085 745019329 819186588 374053065 798751670 585910477 832018158 450971667 928509591 862341679 925475399 211474670 555686159 77986142 841963479 719107409 893899196 556752277 758549836 345790935 502902829 63888913 346130491 944349955 953436843 155482963 773758948 938338422 971593799 844164495 951007626 634225332 806524877 603844436 985589795 654457750 806247183 437583601 904149261 113608654 646248454 387871149 762091728 217226942 977998409 805799722 924650454 866844693 934633382 444479318 956929864 623202984 954919608 718032373 845211176 624029203 863208600 106986186 903204630 159523309 990495579 481796236 861420989 860396223 994249953 766479085 865932836 204332848 504697738 695131905 977335544 927034315 931594557 172782264 362398058 13647376 380863306 128320610 381639099 360733121 595866387 304321032 929554289 930090609 992466357 489416228 579256891 870117579 871233596 931186268 993870407 595519389 597751968 537852185 860441542 790269884 987185816 734229319 768175710 213315240 449199499 621822871 638314832 354236322 521208379 976227401 976906857 642134134 694706154 215373323 987919028 687752624 778422346 504781638 561476942 166344642 782372262 475690977 716798410 753665481 829642289 246525059 357117426 621323053 955990067 143633650 679987781 369884247 541222159 599160510 923876862 25900225 962535276 467594568 846730353 664207091 676351243 989500734 994465261 503130979 557381267 507022694 913928034 495405457 999038217 878231555 926653493 751248171 967612607 737526479 749510005 173775529 595653393 910937744 922156413 497833207 624313391 101961090 803625761 676165518 896150285 512892371 859330800 769743464 954175837 448802183 568361106 888083547 894446949 995632725 997166560 627263971 916593162 777266001 888985585 175791559 546998125 304901434 399520374 301986165 326651912 885347096 904567644 617797247 684408225 928887838 968091786 205829963 556942184 351075559 747876184 893676197 896879982 744255048 776182218 765688806 774806027 651690579 888192893 28538442 358884598 666624685 972551327 462436798 929768041 647717048 649098047 593030815 728097034 52234306 374147326 168782024 894892690 816714942 935117501 725924105 889024262 762841046 885794513 204397864 916176318 983914210 993712786 129847503 586783002 84959064 598399760 701845872 811635019 22192486 213141210 334041719 910029383 746012200 941069885 719991780 943587304 573009473 610585643 819983694 962034015 151021642 329806004 88697446 993412078 484149169 923752657 453833132 606566606 291239807 591731513 426868536 795745644 399002024 790304198 131848052 518849520 117996222 774672905 578929327 806462972 322705477 747088731 401844990 951525145 344573600 443409349 731532201 809995821 593165214 891491367 907297103 954960040 323556137 691017008 552799002 701708744 91481385 590948786 599995211 872866788 176569027 864520939 47129157 440026497 170598702 966131572 22639121 388025004 896228573 985598733 376095524 810937795 692850792 982714113 679162555 902230137 845384323 981308465 957227465 974158357 84453067 546146857 910559840 973411770 442171341 567309215 833404501 991975955 777140295 783157003 972176169 994514507 300040950 403361971 616043952 822075805 435788760 920304517 798557070 946160790 624142027 940516538 306537180 600957431 440416200 971110093 269457948 546280394 290731685 610820566 862697363 941064545 464634614 492132294 68458048 463924658 734828454 805323531 819672742 870556400 834741084 934293880 455967323 841980616 147680166 868449417 306493019 755663221 79077287 956096969 604806107 850630131 522958098 741743616 669738642 703628999 844756320 884674788 80966958 184751891 698438252 898472135 170258915 956451226 879183379 913429939 207810552 258397120 618945647 635251509 109475636 699077381 603561638 670799590 64204935 450832979 418543403 618889428 736939274 955323194 298194307 488812446 587283700 759024543 731039488 976543267 965706115 976461087 986845814 996476434 300097397 705155915 719935942 844051079 996512642 999558438 538197746 551050522 541256095 554430918 851686816 892361313 586220117 762492501 753718983 867268005 250942513 593696988 545787711 758863336 983801720 999713828 308334504 633120597 273957633 497011575 779138723 782544766 737942168 914763074 766986356 844931296 327757409 377929359 48430063 263953225 551093690 817080886 769302911 959128056 146407309 832995973 411461067 483370643 263057394 668439397 279037787 810934436 564739825 737006895 302717144 692316704 367563624 836366706 29966496 129133030 545077377 746608686 37627246 480933146 301973164 570351944 93724250 599222410 901352114 942380537 448178843 482433405 98306449 760423698 883202082 915919049 586760874 792644766 756695078 943001892 682328251 935733956 150405945 884218411 156008856 650240272 989651383 992835374 236651156 644620190 462914346 742443872 970570776 991904541 835328080 906345878 991969520 996949825 100752562 779886358 963769538 993355125 7469510 34174410 337121673 799274534 370721559 634821023 702888776 887733545 823140524 864765128 391430849 398522118 217526616 803758115 489269153 887998410 255850419 535255347 93671398 163346072 645762210 959851555 582381501 657722476 128435245 692923490 909172953 940681218 630663351 650263230 206576275 566195639 217068585 621412556 382744537 524522867 535519066 988006845 955411965 961979081 30739911 876221836 255713389 415271012 369378844 636819313 425972184 821541822 104752063 715040029 167553360 796443258 795885723 839529065 713804500 900256709 879544602 911572727 106596052 272317317 781157562 800962952 129878281 641695728 499264144 549802405 281402926 493415538 592678065 822394883 305961482 779502981 139604821 491404461 449254145 799623297 208057175 976937467 248916857 925393961 990461703 990728003 816643665 958377622 983642983 998098205 659485232 930754541 379138971 851572108 66442392 449159617 236358930 562153539 993597629 998379886 633657013 983971512 733381826 805571887 370156561 826252289 953752081 970088445 217336079 334590064 600548248 788117484 794186542 819142207 219621949 586845102 751592106 789941746 775406140 820163015 565366034 842973629 87689852 350681337 794338425 935637352 425549262 640933006 563501951 833258895 786347820 827414214 24169462 753717500 393322370 456442245 559458131 712927551 40588647 187472288 78498272 730426241 158381075 288787147 792358690 958568192 545433151 867871367 412718239 553830092 597504458 910285060 167862920 598566168 795534280 877863567 182042438 522283792 587387376 826310395 662536320 793726740 765774515 781119952 688732705 980553984 773799840 980923341 205175137 399322910 64073704 358919019 20100779 37629288 924075443 983592664 977177092 981130099 222530347 980937474 227221579 251722210 989009345 998392642 857441252 904794992 30790603 321564132 284380695 920733225 2620791 539855976 858919098 881015500 443512889 998800589 598689835 942411894 858592169 976116585 94479024 212976226 183875142 293085434 361630678 801066179 703780575 781090570 67913259 633138332 995061643 997071661 276168443 773863709 916321061 984125572 257895007 385527314 894828951 948993774 190018268 533161721 470957200 506508077 838759054 894602724 964594325 975599235 467439713 469911441 816137398 840994348 721584617 990991106 862996526 945961129 708134908 763146102 380200881 612989239 942275977 966804069 668572359 788552503 506475802 856716029 88706249 474066844 223213091 542222326 338652302 576702098 268077671 284777675 854673557 858539587 143134578 920151244 776564853 818412017 345500933 512804902 207494778 799933831 124240030 341730408 457812687 871860182 462331195 863469525 938742440 987465851 321454221 950917914 598778136 605468859 309903335 510620436 851328074 986803830 952948294 998003139 640005297 661619836 583916078 872200912 91272153 335844418 510189655 541495650 651443966 791679817 296016625 700799377 704957254 981879950 900333602 929603591 14531744 722017895 763973494 795412277 106137340 316516123 170486562 686274588 298509383 639231171 607963836 642129787 911814590 948167992 595157887 898925750 804302589 878629376 435158636 601080202 185019543 185514583 762478190 865581120 388633377 797948294 596889636 602456144 586922785 846799006 412654582 951667645 701093026 895824125 232808293 613108110 866450893 884418537 54630681 788257334 719613870 945907633 13466548 699638881 812632452 881158604 507972150 818735572 843383657 963200618 202074054 753461010 610957359 857057114 67964695 249175461 675402967 767468946 63341550 832867708 491492816 718905393 552478397 926049560 463580109 665963763 631227900 919821121 305970740 851030896 231952408 908704178 334817090 915167460 413530349 682934764 934968031 989222552 659865795 954610441 202082370 626087722 645496682 837541847 798722812 845506845 528594433 864784694 925744196 951423509 123901437 918924281 284935330 838954332 958960500 992243251 265512235 920630953 579039681 907724758 710896266 874747191 477258379 971764880 672610270 980374639 24384023 882752620 833513546 955346019 50773350 103534212 904215320 937121834 936255652 988088847 251042224 425982691 751347106 923764348 599893628 993346751 499327601 903349900 696166693 972797618 581653367 886649544 875075122 957405245 565778638 804776776 495650736 755271013 815980300 816568875 737363275 890379301 833578997 863997507 874141162 958965490 762512170 782814088 460669466 933504862 575108396 876308448 616416076 778385946 668372735 683430233 762383878 842503129 835759746 950514482 131176113 303567248 292715576 616003067 350317539 588558530 901586979 973397464 833388090 950702959 550409159 643725192 514544628 693319159 122255296 489876312 717589464 948067770 76798962 413007496 598522117 775220863 14483245 328171132 194462335 713011225 962102688 988027703 259112314 548880827 575524688 674936514 455491433 478213930 381636332 800155844 156611632 435161667 527782476 649338187 80941498 203967389 646482258 697910673 300600664 880848454 673871574 786542871 583644508 894949060 834350599 889612701 976017584 985896339 529195588 821662096 881378083 885659901 415902102 737921335 462223219 683081597 28860550 66357148 671831034 844683846 508793200 774379618 740277923 834848164 770435288 770590293 840892641 849711852 48847799 559422414 354420474 721867320 779907897 785526629 490670212 651357982 840061805 875414084 537153838 732293953 847708845 887965546 527696491 641084252 584040136 901076905 571578310 841021543 682641341 781293811 381090822 450422717 4192423 8377897 644416642 834059919 67531474 282358479 154579948 207668389 504214047 619206497 998951145 999038746 140186462 779665739 616721404 928286752 832044725 908043779 51363352 414009927 667388761 920181869 983270789 989779286 424935170 966062838 396317775 948177141 540376900 815685530 48050442 103617376 264565409 760063672 756308981 987983789 846697545 938723273 797627993 939743498 257515399 631874785 800267275 896393751 1426140 396568564 42023216 304704398 211635557 814466977 412826263 872367636 837120808 921736068 169097094 229512037 922718973 991000367 68836533 95042305 614565704 703946879 40932115 905443220 445008863 676678269 747364226 854752201 831690940 936473895 254400751 629336694 350353051 795262939 697919103 810473198 900909699 958048009 764437994 988363183 448272965 997899254 156485930 972601477 436559584 812173968 291459742 642749645 965958883 995363231 698719410 884637324 710022513 782342861 157810350 382367278 676828646 917745262 37933029 265333054 666737966 928496865 62463423 607428896 241188633 668148879 719756178 870644218 933168769 983832582 85968491 232789079 121855302 776513542 687675749 870882965 962205568 997896979 201985934 652405267 273113089 375851342 905428412 967015096 911774055 960029725 670199548 715720422 588789557 775804090 16561707 405141372 946349463 992749280 99818545 988524787 177125503 241114428 36466665 947742848 271191238 661839562 394482042 762968181 2632819 85725918 76033650 244164717 491257390 985700783 21570691 54647887 772439085 870477820 175541537 358479698 429543387 855720214 366176532 904992799 856109324 905529460 735919042 993420406 959706687 998464434 729689838 932738982 519021472 748212510 320068807 858983981 183894976 620060410 292027959 309761477 848827142 899241785 145900022 774938489 933898507 956228420 707679176 790330312 387048516 594578452 44372201 88969905 898362304 941146273 230842375 918591945 275380679 996331920 645847311 915387261 697427724 792720415 375684655 396443516 610922235 963000208 578298262 648631054 963404778 978750783 101652108 365461392 549668867 826267790 908632283 977751908 977554460 985640452 632904745 941668778 898565855 916118692 700486020 936995898 772771444 924793317 591215768 684077146 679629823 968046747 285713622 995213688 429087060 736337021 852679704 880946814 88024368 176797841 229710036 499709672 65178294 479464761 913379656 923743749 187805476 824382386 556269311 935891612 114372926 478293791 752823056 957851987 327708635 913087074 100933546 644340121 14839100 727591462 613164789 881196988 784179826 796151544 563555449 697105536 909527296 988638248 351353528 478733255 363252438 513710035 650824204 720687451 945704445 948405107 329241908 378058843 455491690 912674626 443066252 484474803 25873685 624042997 832098409 908229927 378576325 943315666 48333853 154529294 423666019 558865132 471441794 537101006 611120118 706320526 286589652 334339329 546985140 679230892 349041313 774143754 1262410 329418032 78363696 798488316 457332082 799038696 748645528 998065401 323255732 498341028 16794717 775451363 624711290 742186221 91549702 386263114 14051477 939790786 117592624 337279781 244706045 578976703 72782472 563802286 582920692 756961477 186816893 591805765 487237915 505273586 793110142 953359725 969048269 976251320 862598969 959413706 612000493 960345471 902227141 988651180 725727623 812375414 262387123 887335252 235550881 761156231 506570932 822889807 577071953 971099360 603798408 706210831 291532317 906456073 666337769 912960051 618395657 662120800 982852716 995684429 114344889 685774155 224425663 319845723 339358873 688352506 257578079 260188694 967881152 989032958 452915362 866459011 424164700 974729778 695743051 860828186 13523003 555840035 665687042 797185086 991380366 995535759 342493424 666195768 876393480 903658829 60324044 890612145 356754624 857719873 115845690 417871507 248715668 615230107 691437329 888659038 797804688 996293394 885307688 976791119 430152104 785759627 809057261 949764346 542491574 644789143 579707985 697345166 121576709 715373718 744434922 745541580 259873953 996951932 198482920 449037899 583474631 707644200 677787868 798710213 434666193 914998946 708022379 884574113 282919729 624450404 135761501 629147704 697832552 712368189 764605739 899441692 701034400 994064115 987109411 998223153 841685517 967067934 375132251 821601999 385523288 799845161 635343286 840790669 391367691 396618281 155005385 907283677 293412266 692717663 115497294 729130101 301776845 819848722 370875495 735085856 671713134 992884758 342357290 408193296 621913609 993409186 5485381 120577220 265243254 277138892 219621183 452738737 657435083 768038223 89070956 840962405 303321870 468030352 156551132 323510781 867600583 901182548 683349540 910351254 74592987 295768208 631225504 947611345 135356675 507915082 34474173 58570385 355113023 669632630 74136476 692808837 402194882 961182256 221057707 950594054 625981543 931095330 131703584 822313584 601465324 604667588 963460595 991830741 991117946 993883659 243729884 662918734 61991973 93623363 370528546 712497756 103925622 235648715 643200165 667679692 137816417 218978274 456315115 514226542 617482789 826760102 927685160 951342391 797494951 807146065 423101891 820600820 88442161 494168661 787134956 985399056 452860763 955293928 513903379 857497644 997184977 999131942 529201896 605475921 905148351 995024076 309255712 573843713 351440042 983047796 349831642 378471838 453090702 476695375 80973515 470813447 421455656 684797347 42042093 265564684 418073661 945257600 564621408 871835718 237147519 436662285 244976039 655026155 681343506 994672338 800896522 881400301 69215136 668841294 175234958 889479753 132363096 762311894 474961496 934117557 528337827 697371009 423548785 959151605 864949821 876681483 424067465 517515051 977413692 977694530 332871364 630886736 102557829 457931368 24382779 796687017 995423171 997598180 378447949 468640136 505602679 612139393 413644372 545997431 589971577 610860249 343616813 784870503 712271141 899285847 620560476 992696259 301905918 629593703 750954906 798593806 442929072 752326005 95556682 332567277 174779507 524470290 632102303 806363290 925815080 969698959 206749766 945893306 162022128 568336822 580064740 838316319 252284691 418164041 885304901 966397911 776485941 945079577 982123688 987609638 628408071 705996860 398004090 838010918 601554835 672600179 346327388 376831673 11483049 83506000 618515647 663427474 912477053 912696643 457940504 795164675 879285868 972837542 50174573 421713234 55607481 172171666 397243508 874287241 483373937 820814665 655470553 889356501 409315004 809808966 621376392 659624559 989835838 998924101 948770037 999645281 944024281 944577379 152107103 915849831 18384256 549244787 972331825 973716192 8384479 400519563 24699672 93518428 588567061 864445367 531840061 793162932 358840825 613209662 795023184 936315192 764243174 766160190 957636918 978793359 675501943 851255068 203894821 840768227 334156482 596198360 671519014 914937312 934739182 949873392 670664546 680322990 462346292 571031807 485808557 879668092 879359927 926189682 33483975 90174908 256659745 567683531 301043887 409423009 12256811 705537954 119248714 874454451 351193502 921862579 913857114 973705773 182718250 877879493 246084931 546004167 580028010 843094862 137742115 310454271 587277365 591399862 250701849 824839082 212794639 486474177 153435160 969307143 423140549 691330160 239627820 613727191 403592256 674679802 981579839 982606570 698000929 855664860 780573917 882942125 339662024 842739945 861652333 899465974 147738565 499241330 156518572 623586327 445197922 786407298 920813083 944157984 453261367 759409309 658376142 860483032 105277144 894990352 657654384 872591014 468637636 936767308 95139833 354592226 701648659 772357571 46960743 651258415 113821808 631796787 50788518 136376799 100712122 511457567 238219996 774055003 488850272 501244793 424594296 517057298 219396820 963862205 751061535 908093066 59089857 697462068 620315666 756354140 214177368 402845136 655386486 904124582 857212934 870014619 21931009 586033051 738289776 883458819 891933486 936896632 97035347 849900789 823251641 965991947 414661272 912810122 808930323 997964501 578219303 913083858 532136822 908074821 110495219 982502788 426349417 614234978 744502828 864778758 128186621 206670025 887735790 920997133 506186275 791585985 623585982 810092376 189636857 876075077 551948586 942629602 744484605 977762771 750092249 971468862 924394344 938062175 612263905 653944610 587392455 775197642 727885448 940873771 34091303 92193115 930140716 969115717 790061675 877657491 146516432 340611122 379373641 667495800 638237201 939785395 608894280 911067076 381556366 619766190 726915552 930504451 695206548 699129750 943002509 956449856 167181152 424532594 163068367 829543573 966628745 992376172 779668051 872491973 229489951 429118325 265971410 739237634 407910939 790546830 476177420 779567988 305582734 892917621 548969335 829653195 361004651 528233589 171322989 982331810 727722718 825627500 374700316 691424824 238886592 643515639 396036640 662825807 310630762 783971528 294789854 542227766 87291591 222295468 3384778 468407249 54791489 575367214 374157632 662020042 194169516 954436759 320964840 698961418 396559006 741883281 654755702 929767891 62606388 407251915 247932540 793883392 265661031 819703466 735572702 989708585 519014931 818359592 479679609 695892720 819202116 842060621 569545034 854889637 683401459 827106771 231806176 873472023 170455937 239747403 928312544 963222194 354349138 825728423 244453123 338926693 147081175 362571907 516306867 982106929 175995866 515383791 559718052 776521450 826112940 929805367 795730333 911620847 798370082 971094985 97117499 470550302 653543539 862836750 246040461 261360682 546426270 589825191 329639848 478112409 699555271 795062750 539377811 990300131 151728613 728139285 900830428 908149891 657528800 928611804 79203709 332591944 126394138 521251164 304082487 660671755 964625107 995453638 171809767 717106896 206326952 662311808 461183248 656908790 512278060 568336092 255185251 623067216 937695260 970173012 582480456 933288793 575463929 649928391 107020886 767714783 893616734 993493795 781152263 867925602 349997627 558102058 253294478 809448811 264476628 879095283 573646518 779962511 527643630 758516798 175360830 459787249 660609330 849558117 828138872 848395304 172920059 431050985 208475402 825777589 136061787 355314268 473703154 834112742 803148423 857539356 797330671 880066473 233762158 698492616 958585548 961250179 15653682 736355646 342165596 465657094 826961704 978940015 451396050 489045059 520954342 623157680 301367210 737557178 708177075 768379431 613397900 674066920 123521785 998059055 239162079 838474069 874071524 977654833 223384752 382555227 868251198 934270234 130695481 855386417 527242135 868383310 914957855 979074909 998761917 999775000 887331088 954894318 474902216 961331161 311993233 916002514 744448150 750836732 350022624 517473563 298072785 697871545 350488148 654969031 171897287 324202222 70643912 763838900 302792745 493132712 305410585 789522456 245846759 288570036 678048548 872468651 558990767 845897620 151895808 945268502 367892750 799467500 638162789 847882962 981079947 999628082 648063772 974176640 202732672 432158646 758731972 856653698 745373263 979037320 473007300 625792141 228733162 615302267 661084762 921013713 103984850 402890818 334090190 947629686 191716070 656819625 348229068 605666188 268175492 964406877 179725224 587854742 944892146 983273858 641167602 992229690 729218924 792230230 738171260 794758501 202353028 577209452 923400585 959361028 341473178 579156956 33703389 190993732 174012757 780618505 173951309 953701638 136828529 456658031 33504873 447234454 784149650 913133411 217776759 350729505 866657683 868483237 656014660 736316443 97757275 511760675 785478433 952254447 974126404 991785324 524668218 744341749 932405894 996323639 946991201 951298502 931419551 980696507 623607065 843985019 971586514 998196451 487992675 717200723 758441553 844650958 232050569 336748136 465554456 886733500 448943375 998303594 107033253 385072122 498760572 982936207 181246399 608164608 552349165 596653542 753804698 766652325 340854907 464355236 55754224 234506514 805989842 982509138 925659660 964894328 514612553 530700995 593702326 702921994 809227247 940953457 746274680 887982816 387568684 883633369 689761277 728875563 87314236 498264374 299579873 877340709 327354428 448691025 379297990 526314310 641022637 839213142 488508229 518528898 78870955 935992497 414925677 811394691 435583915 695133307 111053045 156293047 849616255 938946796 173013829 577198201 708263963 754375816 870605779 942545060 822711606 922378442 731644379 914180254 895048544 920569528 490734310 679637089 68438651 668158113 262824907 658356191 119632934 661293580 991417495 992678975 868648104 940416885 413187302 493863287 599419186 873949903 979668691 980925371 222674738 687801947 581269389 972585811 882946484 926190831 778194116 899564145 467019808 723749956 39913673 798466155 682695190 765816057 63465499 834635685 732690707 969079038 948364789 958829094 364948412 521922713 477905125 486745534 596588148 996793010 601248263 676784122 824819876 928386004 786532017 892586956 246123488 631848365 833041208 997396969 574879265 934268544 305902938 527253687 101388884 945057309 540934384 966906784 697984151 727853455 372974872 885502038 531469611 641959275 173152659 260602519 43301464 682601945 539747943 834734374 93912072 329184220 118893426 532234194 171379452 494553111 719856700 857473439 498920053 630942606 567156769 575720420 550030726 708292260 947143028 973217527 179005030 492097862 306306158 667866156 172533681 723564482 812558173 838952852 797728964 944372000 578340598 842448860 925908350 997384020 641708943 807912040 609548652 669519194 782728953 883443461 413739329 553306740 803163224 954331941 406562430 492761041 907579577 997239940 14439180 421062989 610061905 698140214 332050205 766287937 331710741 352802060 891757324 962943571 254224664 269932852 919740815 935444026 97851364 964275145 546786287 977108934 437064925 618128737 214184531 769686093 412736311 988807202 968144657 973671948 193692749 441743342 91831597 535305391 871987196 954429231 980496982 996804631 392417219 912405761 48942314 872939397 410267631 605143298 427037072 980417273 1067331 53140030 197482803 697599170 64769688 204441428 172381719 400939460 933430542 977785374 357553856 445553861 256305042 373410425 764507552 916406366 52039436 986264293 963407059 996380671 626658914 651559113 421068681 460533603 337076921 949457403 924897294 993558461 290941467 750420613 779564239 900731856 53176503 218440954 956407182 982516695 85822095 494732183 733991326 832814501 433792224 852938865 764550816 998992739 153153865 375296524 178903589 582615810 186846166 409500518 373114840 942361765 879117408 996038193 628805177 839396394 437995634 618829409 371794397 630623159 28619829 531581840 375369940 738197689 967242980 997248480 897068994 974583005 58488551 631132682 567435644 788915673 702722924 792328333 763961940 943827033 361016783 590035216 151134330 759195894 535270762 682186744 555446156 573911984 812833263 813313667 800786003 838217904 74429663 868579090 360217175 602893288 137404850 381124222 614679728 763400805 667985983 954982351 233296559 872969180 303220525 993705011 565291863 962737763 733337993 924392586 51287875 589115820 16160349 558312651 518676315 577042656 369108223 879636499 841163525 918359323 348253389 830951129 325161868 974757322 211926137 926656098 102679219 561996849 33399062 627873987 467654234 575759618 923522651 943892761 370376208 699414977 791917760 949958136 202828097 856637473 822729766 826191297 134904432 737111279 688471519 856506686 837459302 866097674 893746025 954738766 470522474 916048456 535540422 932283396 917658875 917921178 583602208 782786376 529900798 992267000 661962242 700559373 431471404 936319515 8945159 168111347 28292699 244060966 214043114 831851492 783022992 871108836 750176746 885756990 335488219 349070058 398291402 942523377 704061297 939145712 382490637 389409518 382176912 430266602 901375403 987499781 484569142 519419793 541787718 853030408 857442587 988528563 395089508 996229024 42693777 963349657 59538587 305141034 91261563 507862995 181453488 577826912 115513217 210790587 786301688 898214746 84134038 504127748 21819772 182437575 469330504 903834491 666828648 882054371 89183634 340784510 87122899 584767270 257517524 647247908 519822262 741671921 160529887 430256203 297681339 301054835 68569994 634018809 565060018 689263839 815608305 957982393 654685149 929425572 236611125 549203101 208998026 266177980 898237929 954617157 412040352 921830985 116667804 692534791 739090270 837075250 48647256 481336741 765573356 942611476 798189383 986719908 906710858 913841209 82699578 839812613 356922892 486082015 522008946 764785627 768600471 867479801 390485296 614455931 921045166 998803446 638402657 735990894 150393592 452908733 835519165 938346826 111490885 395667190 50830855 540371405 105028687 975418357 688135570 896096476 721576957 991245369 370872684 651632736 605473607 733035154 906326252 964326134 855256932 866345380 7165163 334962222 418216995 524956249 198705206 250094464 849642368 953578496 603992038 972632222 118948279 179718627 71402937 189222714 894788241 905826451 918927710 987488143 214683022 446508135 18706559 335300644 56153703 192142202 27722550 230653769 594180588 959288004 906223262 949087360 316674120 377833160 553820996 796652081 366621046 470770915 972645565 979344503 537556712 619284054 687566781 925558506 618693587 680431470 485618701 649382114 327199934 947787077 312646743 530782969 742793846 937680949 167119543 930450424 438140992 602725420 680882558 842436248 960277953 986415474 549402188 761434894 307885236 321554086 724440280 976754312 973024131 987291480 338898625 496962564 674627861 953107245 610033358 850871474 537735282 846986945 577391653 596259684 743969996 749697125 292412084 467220037 993749215 997789507 884825408 902328561 359995029 764934306 471673444 697547722 766721143 885214352 72569736 679413536 381061810 916655470 329183368 584746196 875415530 978665114 833417885 937423729 540448034 757962562 686834678 950921987 548400160 597670057 106152929 745943225 374067203 962462177 431609579 780781297 142449759 717870189 980431449 992963447 301167694 513542900 597921855 633686297 128408261 546370077 761848048 806648274 851150832 917045349 3084579 623806793 549734016 741041407 92925009 955603288 58909952 737613731 242043041 488573600 598390941 711084742 619615013 664546460 928870090 991435476 585527232 981563979 663347802 722658781 221537095 958136212 193608981 989921283 316401502 695511211 54434847 428500844 221604766 853817200 291492327 549991974 139824279 320255570 146567862 217054435 582990446 674948610 788024411 998840124 136422283 710605393 51094258 652408941 868155552 933129414 54500953 691650645 569674814 906879884 163615259 723747572 770901247 929514666 428487094 764556316 26735044 527322716 389929093 925066545 514470000 850879623 310748968 359464709 852620362 930456254 255886280 508776980 72080324 696662041 900434319 973415087 220531776 745797396 878425807 953446209 295583725 967544952 327481049 566774844 746750791 999232811 255280493 621147506 277228105 562229758 840114996 850880535 436278500 737760886 74846952 636846367 564812790 976967272 429006596 722563058 246972114 652889044 268222242 303295949 313527982 640695658 401609546 737084303 503941825 734045471 643061797 861228978 715201044 807652975 488591933 554177031 2174846 673483878 926302958 934177214 303251832 885492839 452597252 710936237 143033487 492943617 170502853 429574818 926246393 958635138 385941087 509312562 267817496 327603559 989806874 992700593 267303720 498493670 11808623 775810084 650460658 812691947 154631720 611967850 840634517 856375194 190149500 924687605 560160527 934714055 806894692 886455379 28309467 509792477 60390989 721586952 925558126 944857610 369799441 526218863 21642644 623656001 30446847 675166230 961316324 975203146 339382439 834938395 569890645 921709597 684865422 884856467 47387089 827927986 550949939 619917280 181271256 779381834 303032514 729550327 754488605 813342430 814518091 844939836 201044718 565117699 73879637 95612615 906493057 986781642 495158735 540219806 636077595 775868171 922222808 943303743 21285635 929495250 659449717 663853240 440929499 863733742 390772488 500949652 328595062 497361479 441470131 583729881 185429681 295342488 100988842 937042590 329458091 533478357 458389030 520155418 860016511 907387287 429381864 509462722 620352703 878271411 320691739 786428521 481401790 510834252 525291651 548192180 311344006 491336147 170774601 344848702 540768308 972510537 833106435 983858610 563783573 705990869 905227173 968779622 888286758 910844572 79983589 475748139 249643754 854263636 591303027 655651607 946153800 977341722 910066182 991096393 314678164 985174180 933186088 995026571 944766202 967475405 646517747 872462572 713099593 956260188 965352634 994462374 506682631 845729354 201464119 468303224 262521155 665727369 520686863 571395348 33471828 40312827 117843549 960733739 703055383 717205918 653426887 685744978 931388349 981290747 181221771 708197967 609985775 938199173 377557855 789501328 422130112 806167249 283970054 779830763 970247232 975556952 651290106 869931473 58925687 76002725 981757007 988230788 458051087 979827482 685970903 791302866 762411009 906030431 498377553 758445742 12086013 591398272 497732978 830073232 124642073 509157110 754284232 838659055 562238180 756674311 938488508 976038514 668336888 798969367 719721401 901498602 927096449 952410235 893511256 900317481 413135564 907992505 685500981 965934737 143153611 779863997 140317446 268223327 552317227 814546333 38175245 679643337 405878226 499534257 49529603 772712348 187048583 955411380 367987792 916844232 314465681 903033232 674537824 706840137 104892872 708807837 474851973 679098405 512338375 560592559 729440500 941357306 290030836 294622652 230034503 847817477 793943508 968739358 19131604 156861779 986122501 992403655 25554194 905454125 543632153 809555435 277089790 600031588 616917714 810432955 292489012 402181905 401182321 542192132 73207433 387065786 989279839 995023658 412633658 965583341 834082118 981407997 69000064 533501835 651154714 847169941 416428068 509923068 296933811 995678941 861085882 964906357 129684914 234131905 876117395 928162584 166448603 424634651 862672883 896755268 898442895 908975511 245390651 874315515 735265348 741268149 830742807 886449686 390129512 543520347 513702731 582557208 500952761 983631938 56234067 66689199 602915486 849191045 60491023 713997462 618316254 993260167 546421982 647010338 406613511 879063876 176366916 860179653 190049159 357940996 429789617 554163200 809986912 941466333 893021566 943284751 551536573 967895027 55359135 429571687 129098606 442163747 869074508 968920752 652012308 866813164 555797790 667382800 140470334 280179908 187360506 958820614 512713484 696683007 862044567 889918845 278040059 941449085 402441622 615952797 135088980 456337479 695512595 970676276 448679452 915842108 963261434 975909423 263304299 439033576 187253031 939218340 60548485 236461332 167298064 438279082 898737507 975471735 62778630 283450355 652202853 775168665 968814384 998624429 68215710 414609381 745119582 888424773 11581507 454779415 83230041 612800556 549777311 803224511 853956146 983981395 568300136 791806692 944290237 957541952 293662403 346827577 66856662 174695384 79022267 774392025 90547520 946287067 606456535 852056967 57547948 814622953 327125012 503390453 591503409 681870369 471785853 472533953 655306567 825019799 306711294 348799157 307959651 876005757 344411639 733231996 451246543 574061049 894125843 895732051 311368918 597828701 429402193 781697272 408716421 613104226 558431205 776651636 833991051 858885248 302130562 801429482 257074180 553949525 795417078 989441425 987451913 989911907 907290364 933891543 141034244 587811035 398829000 622767848 585880593 771455658 960383571 968301131 723725412 772810486 640493713 786982122 932135472 959781547 863751162 960025637 824074458 956858872 41078383 614622655 436935061 510961430 959365797 977665081 50989255 745811904 42239545 459882803 894563279 898144648 615023154 906494275 552237857 972189664 513431711 585402730 702064424 813395806 329173421 711392754 887680774 915174563 531809676 835753298 104460735 713423478 325688448 926077006 249509351 468054579 97330819 917530823 313851678 835994559 214182456 799490672 124069006 862052756 343868951 705840935 991745169 992653307 570903736 894251830 374435592 554984360 305917889 516966419 204488771 500095043 499937727 731591544 286336816 872336514 354266818 582618555 151462880 171338109 35772134 437779822 753545112 926734280 372207585 756928694 176525142 882648878 7294557 990321594 446277233 810365428 370156313 631658318 693427630 782348420 12540565 347239162 762873402 795092921 534712807 688840811 64117293 256126512 205286032 370497974 952745773 960474321 354984314 358669492 903972591 985213773 506241506 739087289 468090221 907062642 190506708 843175924 631574538 914276209 678573398 783864559 922241887 986408005 443818849 666293458 897533054 960053468 109500595 322464034 24791547 938808418 142824059 206029155 730161292 830538842 235808188 289783511 496326040 940429761 815352915 871264752 58006701 654830988 171990394 977926951 160583378 618428613 975849619 994736262 662247931 677732300 943271065 950354067 605315123 870263329 712674980 903117433 582747992 912415565 205919093 731023721 586204177 849573433 643350257 856711487 755130216 955673308 247984658 669297627 678849568 818562177 122254908 998662960 636705376 761495397 15288113 475840644 191682324 664403172 207986434 528936999 319393784 949410248 174761431 954447709 394086059 982177289 764547537 969038005 495680889 987028030 673486732 763084769 473111558 513343993 951319190 951882071 751378009 962440624 506338476 540819017 511210878 716979553 698886560 779553411 51864033 692231407 482395107 589825915 117565141 591450556 523416491 754680300 366664991 563809679 672133612 793151811 966966616 994225258 43799266 253595184 534864886 552992163 853499029 993575803 175410384 633503543 512860595 990551900 134259401 320255585 810504299 902221897 19127528 249975739 657166497 827281803 362242428 825668792 702002336 893039924 359399896 901644512 429619296 431613759 892457141 980733830 667124422 877761915 357563318 619213188 759989961 805465992 199894685 346569802 19913610 459651952 305196046 903737174 250500604 864735174 755923811 877093669 446236951 860305693 785499013 907693192 142617571 416651351 78635426 578005888 295475519 325534323 839146313 960539729 952219645 993403885 823739667 939265080 387016843 849613651 128998655 663059917 761620106 973867909 752714181 943468874 969357904 978516100 30683652 520023257 851017802 865048924 968974031 980927829 523966823 705617670 686939804 987282757 628797700 888858073 93764322 497703010 383438444 523970413 177885979 554020365 207665982 291838821 976470067 999740173 36105488 903972311 226924346 233056289 770584197 817796396 732202706 799402497 92510651 694116988 459960379 463402053 156067105 887222084 675636068 761561021 184357149 665756547 90397533 105904636 427129528 681332187 689410530 751389679 626516960 953585654 679469363 991929248 543694314 823358498 184123171 613567721 806118414 962729646 994315537 996866824 250517317 978940929 141199317 321003118 123896944 579073137 470250425 695978023 12368435 193518035 702496867 817919200 504668183 988891557 520055146 702447933 721656396 936863918 713686952 928513536 364063722 374824591 193180399 403286333 687416765 775014349 480810486 516743298 356757483 641413606 115676623 406516938 127997827 242835838 893060509 954621897 306918235 441404761 598381607 950963712 868377910 915838675 127852972 270996016 998695381 999514217 501944221 645721728 727982239 967667876 297260450 807800252 421947649 813545914 864956313 976213928 475213759 499918785 509278793 861731567 853367808 907707055 867374474 956011774 739499831 786814006 447790598 850704353 229862600 520753969 616525288 719111614 708349464 810502365 16031534 643721366 903179674 961772071 29795896 574641091 106781535 962234044 333088096 939901221 631464814 699217684 727479744 834400807 286651572 703654104 943577952 998756757 986348691 998329801 189625606 202763097 793136383 816868412 195532455 350655728 457538834 460579932 548018129 670775765 182942050 722286742 245469561 547704007 398190732 405033383 618559709 872193628 594579863 987996318 64573922 414725852 339795597 905982823 245720039 660831144 286413402 702485648 939576294 999852112 187929276 652564632 51420256 514331218 291742348 332653608 275788252 866495421 365262135 515993874 612251613 865613885 159073430 675685550 6278394 373610100 378308322 666818750 559730752 662148775 853193518 853256312 436979501 988502169 823508811 946687864 912357325 931384122 274962769 454668066 96020571 878468358 278987499 523934127 233136027 715809267 85049701 895139681 6958974 235181025 57378671 894177861 831116446 975635992 342324452 357648180 742630602 863957095 707820655 819117544 554125193 603339413 530758194 632005093 87499169 548257904 24657885 103032479 68037147 82070123 285483606 844340779 701134364 875856453 823295873 969672862 733798138 862270698 523895023 835482288 736294572 859713417 964968783 980466210 782879265 966772398 957595342 988404888 977226787 981544438 275949658 315295638 176036591 277989367 232502496 773497141 673264139 821173295 699239912 950128767 573646 595671822 366687919 374461961 90144749 572637245 847438380 878394144 128883259 884398689 908540070 980100902 400131432 683653534 506092686 717475518 902300236 990121584 163703694 200724974 676217346 809427583 589958844 833040705 54424621 872483072 542185314 774647622 748989444 843536412 432250271 865918778 164913331 671618131 316041284 953641989 351624006 416323316 707560722 855799375 718913268 835071739 86827129 798696403 641695707 779793388 555542440 683652787 678547314 840627746 808928305 999598419 898296219 944805211 417781879 869086401 769641832 922221749 943904850 957813439 29059567 366352647 683417106 735722148 939424858 956858786 133568601 768420112 492838166 692233485 746382037 809887271 520437769 808623524 115424589 416127750 648436152 939223222 849050636 993722021 988297770 999273333 653414903 898932398 177472323 589268790 584763954 673728190 727121172 826227337 895295734 929846243 247906052 876224993 101611446 350555068 274576034 569038946 611613608 807508263 767715058 832360755 875343559 950502668 366263809 940772229 671801039 766721637 333453902 482399148 497914376 588080524 865638401 909085919 983587871 994305909 616767372 735327713 940615778 958709689 555373194 891243203 758130244 773463959 860174791 867497748 538286103 686520507 474983997 514842609 13765941 41289010 134660459 778781384 37200212 41208663 99929334 309252540 159858361 518459484 595024700 985483644 116269519 959363809 840002864 939995453 544520081 987657610 555192604 860460728 338112820 722704822 283837831 991366941 89314624 471917888 701450269 747479095 973137280 980754264 952106468 990861024 10820884 119860618 619078892 812786402 273518924 406949944 3962120 45548073 918371502 961822317 927728756 959420995 129965295 450425932 864962330 947087776 35774796 56181676 71253289 163320206 24986297 79632968 147104058 983385440 925131972 937596673 691150060 740939203 516934008 671448579 439443344 711103298 879816003 947461369 475469106 998101401 257106634 429015103 338050744 807941722 438269584 801375991 752853322 937313818 239419981 438126051 348492396 626637842 618103315 749833638 565758312 919601485 792386159 855763819 248658200 664638287 164320495 753439078 168057126 713831254 404507184 987524848 409918799 580358968 641253847 654620084 519998282 777605669 749799389 804781555 576546974 988121374 818035609 820499457 16629682 875489053 591997440 728778126 279677584 727081673 83827524 721485304 649040919 973171063 147107783 855188593 144145471 252803712 404005355 673822637 361640021 969561677 396747890 847016629 649302482 988470970 298818749 571492996 318392152 399712414 637707266 729771514 714409647 924182750 139796186 571790277 868696 294741541 684153196 686766863 211969916 932338445 959026518 984867845 666369561 910209959 717543542 922192391 639412527 794158380 126726799 637748384 742650572 748638777 473667582 528364019 553017970 556405354 609830007 662721433 107830835 431693898 984113751 999755121 892068118 940903466 210240188 276213137 849061191 860569913 748569286 840913167 890414599 926260284 631063398 675209540 344582256 885570169 852016236 938298703 178467054 630117296 158748342 878223955 157063450 526583337 496691917 915605729 593655751 985868371 143370730 412958416 636734598 786619824 456881304 721662797 905847977 992595176 34840830 676249166 113017856 864179912 533796115 985245185 426025527 767960746 755952476 784071060 603897414 881525328 16817438 293608972 497489168 950017071 464708375 627910046 49614831 927754261 110748822 167968278 880640377 993796553 124787220 597832574 391053257 437329646 472500817 886300723 708733266 788315517 384994292 538840129 875894691 887097002 156584901 211388890 58514621 963281682 711753008 772356974 798125543 901083154 279481530 444532406 737858723 897880120 346087157 824945549 875339793 968599348 238122025 792289367 369912903 868567709 636595390 845474461 603834719 833455334 518875061 520943425 703628840 970121977 818733932 896597727 641292336 713217900 973751832 988786605 157183983 223965041 83234190 382613082 686535466 887855878 620347641 850149635 567257431 950156400 258126676 658966358 89618975 293206657 611568850 963741760 511779365 973083572 256984798 881194622 89831506 372376652 152124367 288315965 23177850 935573591 356305625 456656121 143420484 255149429 438739471 899848681 258628425 441021441 146245899 395277423 278922331 938323742 704828194 760547568 6427417 871721922 23218878 449084191 722516242 729034022 616350104 730435320 275413295 888477307 947137199 973926563 640390358 677958833 582764655 671580550 385997534 921414015 296659540 427259782 309621541 566720549 309361623 777746977 973133043 985782983 177179188 905165898 237902387 859685264 593624914 645601258 960184895 991388204 880369559 957376256 614214208 806637156 354912789 434548449 369268661 372125570 17983410 146919762 211699517 260184835 323686877 906203922 972446134 999472856 620864269 708097506 722094590 785961734 367754710 928727753 336092367 661101715 234341015 381868434 850396546 899042468 39880049 342922007 367663040 725538198 812917959 892453332 123545334 818499038 367590155 749169428 540690429 679223513 388230188 410876806 903350720 946206550 175348920 847557315 596660893 691737307 91543352 561529550 615216753 895475979 86382542 215089149 898552846 956569838 688810467 951975895 308201943 901039764 849268832 984241428 246819616 659182718 175733022 654395197 169879205 954883007 756321109 885687689 51670049 218917231 734786701 852012129 499058007 657605298 209016544 537273202 224045933 474302017 806054234 980219442 824565981 862502745 438881151 820086903 93235111 478900603 464529803 939183046 990403044 992797428 869820935 919750412 52892140 653780925 853761668 971453880 726813142 911372062 252385627 458849859 497906177 776947448 723460697 853544068 137901438 174652677 551208888 939888454 222667355 683391624 766784937 917903282 184790038 281910658 793798585 924686807 924833617 980978785 232656197 900725485 724488101 930192906 212392343 922899103 852786318 878636036 138262356 519150223 170720405 541199711 759347051 805445293 95226493 687336743 124901466 755598110 678733396 747667447 81508822 569767854 681842722 873048694 623717481 679144647 226886988 527605190 656481505 965146059 95496705 208779482 42263181 250897675 884409310 999114906 736486946 903975213 142547723 312970890 526981091 750305388 549204319 976972864 787395276 956616183 556433290 655396870 54137679 732791472 159739845 200339914 248266603 567869996 431190470 907685323 244998482 417711324 481397936 646076995 797116478 907353431 422490622 472379854 53336844 255551462 461687054 916908382 288109955 777180316 141583933 497183721 549525115 697873203 593682893 836780541 283044391 325930954 564546983 693748774 362901406 925982854 149498259 640440955 146108159 525432872 338493873 673767312 157664668 693315768 639510409 855524806 270105301 860911370 335302341 719839186 191502010 375194536 582863820 816274670 755115337 901094928 817958531 977822587 145411466 203167840 829613121 949574522 612240166 717963195 178198674 747752632 756256962 984855519 284554484 890077556 674317741 865531864 476506268 905113016 925325988 978956837 195522287 253297444 679022569 812025766 165353493 714653035 871922023 886563341 678829843 818462523 758771517 813030897 980886629 991655904 890341884 970126918 867852854 933367442 479326148 990211267 410659850 426148886 148469212 521277005 965053595 965358066 372936594 980769775 413861555 764531035 909831763 918134668 449009254 866149582 304235813 590658611 971277532 997283138 927931101 988828881 571507207 959629493 328415137 577313276 496056637 499948284 781746262 879092130 417957563 627988649 679943909 954412155 303417205 892742415 727622146 884144651 837333800 846356008 408995376 560250486 215598831 373896667 671969367 859475153 814394521 935537270 583988716 785752039 656757094 960392442 999087612 999257963 297802946 880936317 809581426 817661194 389702730 902398076 221857520 672863751 864987792 909675608 11058074 985403965 164838865 710355618 321116376 711931216 183784592 309552097 26919902 816706353 549382852 811995820 128483844 146578398 393785334 640711954 501483956 853956178 214115935 920952245 339021814 890154539 662193440 968600486 227085914 762172310 926324647 984149651 469159753 924215048 435572641 469652816 476890820 827661316 791639031 985020219 594116287 844463129 876811932 948638320 921720005 962450279 99448104 346354184 462434912 576356677 345117184 411480929 287454683 306249376 416330078 858780174 921244134 929445218 669818791 676292424 196672201 481897298 484317879 925846280 250645001 505361127 574951074 715381981 781716257 957647274 122471744 491846846 41017704 839822098 68383799 289052961 826954859 868218798 358872638 819278660 473492530 867399279 856289305 984645245 900233679 995967020 528806572 615258847 82484270 328982266 342149607 534990267 263029492 562831048 768633646 781524515 345959609 865972002 431703392 456079038 787476525 944558436 298412106 944193779 791367821 872200373 997502002 999816967 317150577 777129243 622755752 974867146 492715344 807013546 69652444 613925525 538446968 618126359 115482266 543873695 722110695 790268970 353880014 871926536 985830239 991177863 210246243 264255895 367237123 570277225 934926427 952507535 358216170 662928948 383095172 550105316 498674393 515243699 575582084 823129928 492417515 736338831 95885250 481153142 705314095 931456880 368837986 467516474 25566987 531656827 714538187 847586095 697306883 718370312 566909602 897201241 857704957 919731502 752249917 995416752 456654469 851002246 441622247 779658053 835485482 837841713 949867483 988574351 689449562 979104469 540245164 793161100 871865671 903882361 160534324 654289898 341923456 675196467 259287631 956605679 786589770 914922516 693457216 707748391 879739160 912679694 138951385 390368829 406809263 446057694 9810334 291365592 497764712 694284338 404383071 949012109 942094688 946537857 341772929 972096959 337202819 706982021 613381143 864633248 782948938 832354980 848927186 885173809 22509340 196672912 702262671 998570436 202621333 548129895 765954312 873174709 258004864 502520521 244464429 989382299 919063800 998466657 327033721 370644101 628988237 706219404 621544051 727464374 220506513 833806932 62631341 335009970 564697852 979605543 549347377 945773549 655609282 740662086 783473202 797541885 728652418 785910063 735640877 936412462 2552239 18341447 63188800 848459200 62683376 661243974 27460208 344985376 828570044 984932012 185810342 901364004 394374222 773359321 570617545 864768988 735572898 750137271 249034742 952231736 686566970 837981608 160940562 478322916 887042127 950276963 293106554 793393926 782128028 988545086 998545514 999718913 713152763 942736131 135600050 887457857 243805906 994046854 691956821 821981196 708550193 785865778 361488772 829278384 658468103 903314133 775059749 893730482 444799483 473247134 542484643 654368029 373026079 929490920 998797072 999320822 150416623 896519676 609050271 703255149 459598224 473741384 967313028 980751318 48849368 777822476 896904842 981066316 961538812 991560969 795870463 965441542 461260972 472805380 621595939 730803388 986889722 999748787 72438811 729522526 757921910 962376253 28620320 437753200 820806144 857926720 612840091 770514150 717753225 776756294 921101828 977873137 284259128 881449629 764891856 819782724 383472290 686243142 798391702 885818259 963563016 986043926 496772292 751117903 945555092 959108546 876180556 931380215 205439405 251117958 336159894 830646208 843176086 924013491 999666091 999899657 659355586 917043879 744332600 762745115 591989148 820165418 911726288 970306776 2513907 739427309 931646273 960791705 182541419 848763424 671870639 902705917 253521276 962132632 850277776 906773836 224894743 338397083 543392752 666905222 388318967 769894454 21370565 832545256 484997438 668385858 38048322 455125554 207492817 745794761 753048701 808507590 237154643 594462328 758356106 812831073 257830955 311146349 444492754 913916949 649130478 858544337 143553384 709903389 621349299 842202978 766815628 850110070 128416526 561866483 657875563 806965569 336025065 357275591 416257466 513764206 272114084 957240056 326128671 565299735 411370325 516284549 965540455 967293284 220561926 317378359 670524112 752507629 836565888 933506464 707847344 898385775 364401276 614871551 148642863 718551550 192469961 596762071 13747381 107750424 975365640 989568133 806000506 969004210 896966517 984686113 124303622 290636275 823879162 842945004 538577178 786805282 516816518 900491340 854606982 944346963 704438207 907268919 363738990 366445806 981422615 990721561 357804507 565530062 228912509 827605116 160688732 742845862 922500797 961635855 423138128 944053605 242243845 753172851 96168630 700421985 270208858 611440655 967418827 974510900 494903009 931051671 260487848 870720335 785241108 931416167 876726205 877020567 980810773 994996618 220020620 749137745 145096810 593351492 371897229 604508522 988283267 995842005 476857869 695114502 374728357 559554287 333342808 336708748 435974890 819421345 577019584 733117050 9279204 624428985 470557861 955501548 91168267 888719971 628341016 958376428 859696229 900904094 526799826 939145698 359803712 537568701 335329222 749504199 95444311 633858224 694289482 908557005 774808745 864360709 472890087 987630227 952500471 972484265 281135632 837819047 823746940 890364666 5542442 97017968 210151556 661717799 6594328 680523308 779892047 864399035 42400544 890903480 743734209 907285238 536731703 612051619 119796216 959613849 482435037 850731350 366990220 984211003 183029940 956718682 662136429 837079819 296752872 331853765 927946635 942654104 979997900 989148745 70984462 566666600 234835338 505850411 55523214 319682010 600009802 631308141 810435583 885142350 180817681 522252740 304926758 931067328 846611890 939204382 380803404 418656747 673104395 845292970 232938501 807023760 183284305 544602361 466277048 916116790 745026897 768351104 540080877 667499943 136278549 443462004 198943095 981997171 157640603 823838054 519416849 940642799 499570428 694101968 339059790 696346564 413819267 520361557 462497626 487865364 337903309 885827974 618059603 962355384 139795383 355182404 470951993 623977285 415124036 993115801 491988011 933588177 80622310 139189305 108193090 817064729 85621286 912120782 755195243 993275974 467826390 881881174 369978717 481703773 30251801 487847334 610430338 732200206 82164328 421794028 738881747 835040421 339881571 541428147 83976372 668835191 385851645 852998520 452006445 506741813 414454130 484036760 517269159 585714375 822832466 913072523 321356085 387060196 738981881 981944796 402377831 579483697 319725659 569507267 928227559 990458292 769048066 980141929 964002753 987855626 29638244 637238716 294363544 477402135 81892928 254104758 790365253 969654552 481656219 565837588 412770407 450772733 416232866 754886687 4577497 908498052 254223446 458035179 860085216 880568660 824132204 844364615 511003335 642622224 58257421 263490447 952166246 995927332 245069274 364129164 712371005 994330938 597794315 916452104 812212658 859015300 19679415 838911805 82269927 625360301 828227614 869104649 754127107 839768023 272665044 844718905 542429441 886903495 923055739 996915606 872528200 924661149 249784919 528794127 348083437 567416095 880932571 939455782 388566307 442247594 483088306 656495656 993726782 997453490 331058571 987620638 875604904 883636402 731744406 968689074 787092118 916046985 683749715 696602119 331249699 411042899 285372080 384699910 173331396 863097058 363855452 389455534 178596448 747600107 380153413 782353127 951257510 953236064 639603368 796235409 226213822 922910251 641648446 928957755 36260412 465523969 392241608 859278815 694682867 749481353 662111112 792115689 695976278 754609046 302003732 448212552 449700949 746082876 736920413 900727633 399937590 738064466 928314144 968828903 192701639 770581633 301032283 521318232 977447460 999231104 356462248 970778951 452565503 614948705 101735790 477945937 297546514 338427404 352136484 642556821 439935728 531150482 458221000 604946307 783577351 945756522 444065229 887027816 657079457 677831237 393021949 814685610 233017675 825579839 766038897 987340277 48520907 922947392 55504546 390395679 858918412 956666054 145672964 945028263 626014991 896072343 711179938 914176581 712553493 720124205 887506487 905288114 463236813 509085891 341616066 648493511 958740333 966459025 606645675 832381567 815294249 927603963 768480310 824195355 420949414 558266302 263898648 543288512 416723232 867183395 191599508 552285228 785350872 987469200 2562188 262920138 271987753 414746051 376896289 857819974 111565048 505518345 213425940 934159128 289281024 326189587 848272291 954742567 743218393 750602577 752773203 862886221 400156253 722547415 253692964 846317214 457378221 593756443 62040470 693146344 261110290 924240397 609738332 921705308 273022994 856874190 766698359 904416983 853630239 861563531 739503340 835585785 269220534 753854865 940487410 996399470 629780514 655675041 436507843 713422772 171142833 346959831 840417450 902063246 186763265 522742284 737896039 892942208 514027069 542655211 431332917 968587349 178377296 235822878 391121993 759300739 616483015 789298365 880461946 917375712 668870326 838951717 955024169 996099469 170330518 862229244 772029481 816111352 208345667 551318169 953234453 963370520 909700127 910897013 857453299 951158671 501994770 918413834 347426554 788381769 376994713 387452277 476625214 879134866 308493990 959697778 517068610 756238587 242651025 593097605 997155346 999767343 840806594 930600954 776091247 954432555 980591492 990656696 84256548 123431013 611538527 772646456 92447593 450706935 876387578 984742470 835635689 934174046 741728822 929817602 72302464 115234736 508362622 984934508 342849488 944883183 353720226 770300561 922474261 999853992 154854975 580001901 942081372 954247100 158195961 327686077 346456207 528992886 315961253 537009216 217221367 389417346 404905499 631447871 851740961 926708835 657376771 696190803 871661419 879629435 874108167 944389060 113133832 601774466 312944191 609561927 152248967 224269688 252715812 503764510 404599160 405673412 433491081 696061405 361944296 456123125 31617855 201065954 940032701 967942302 668472804 985704850 982588113 998549761 763917043 934809640 330108121 861523848 132903494 915438085 175302784 995887038 414657415 911526177 625386054 644755959 58716473 412744131 447415636 945592608 461082071 736796671 547784209 779542810 689510265 881938175 216929240 570428928 893000455 946669862 590561927 700493541 247319296 290703444 212714589 213678457 396117197 960503532 683094288 852711809 137006609 472706035 146187828 654060022 896310355 982247287 24889323 237026059 918225327 936822816 956751719 970046469 352341323 396271460 855707034 901653154 980519679 986411169 561505418 930761613 748518819 947085218 597231292 652765614 496923243 975371852 691633859 945403129 464849047 764655586 750097954 952531354 71717890 97119396 530951548 714883318 735490157 787999402 502808125 814734365 572232451 842889038 843796747 986914775 360565885 556111440 319926799 482710958 345314184 654206498 121369156 195385811 256764204 795014816 135954844 388529144 124637367 172387832 293993636 916115056 632733713 998346952 974847740 986273510 342639588 776195475 931339934 974153380 491120779 710259919 518654507 766471139 802308434 910879759 437310790 874995662 395818014 634830293 535086362 900692113 995653186 995834822 583601657 729424903 630635205 701818843 435758251 987760533 232873790 373753524 867076465 872353434 518143860 789471443 723029356 849072189 966376334 973957752 994402014 997496739 10533344 780230098 396326731 547590934 18537552 116718672 268565769 425608802 745845663 929067506 455659648 933657275 334678084 682135160 359113751 854379195 585656770 862039393 32326937 736894684 745155820 833089495 288385565 782631162 600984653 956786063 513150742 734716522 275289089 771764984 377262165 388276139 56246108 976180146 858774036 979365566 995518061 999093124 774753663 776922379 66702148 88685477 567893633 732038433 373843832 839179550 908475643 983037192 69062800 986830730 169467942 884955570 198622436 546634179 935363722 996324863 143118873 685653959 967799518 997715153 385594675 836675315 476318249 563158127 463181813 846201773 45186548 203530439 475281322 969255511 521636679 680112890 359387408 795539285 673637130 723997177 890298442 909964053 561402248 678404915 793895375 995967234 849370668 872830359 835475405 853634765 316780176 755397792 469661772 695060015 892509644 918657268 117881008 399580131 370404634 713736028 401351582 988573304 587045038 879415001 330836852 404360988 823858957 993410758 619533856 682606439 845947297 950602523 714066011 809186457 695964462 877723054 618803854 918314676 435347935 921892034 854282050 956169606 784630893 887968391 685875060 774494695 69331658 359280168 537196902 964908583 392684131 995112025 536644886 846188574 944090526 957061389 472555912 478307411 975058490 976402975 908590303 994053165 579318612 960936731 29574416 152470054 190862317 638118590 908686199 977743212 52791368 129706491 950273162 993440927 289904857 292624870 510657145 553951315 1404572 34129577 828798880 983970823 432597508 831060916 487361566 508480012 957655498 991863436 771734183 996690778 683296479 738192279 295471698 722128647 889943610 909019724 82884368 503610729 47997097 535758798 107995360 480166034 351034521 885527094 431555508 971268492 888579383 943894904 357947111 578150650 727895211 775568755 46845366 771744858 507892119 772395078 253148825 352644471 163352047 173490716 904935574 975685513 888838855 962415755 210798203 418594965 965482251 991203293 222923327 696891816 712747330 995168216 832950267 943162498 318965335 902824788 500934095 691630140 117279833 444568653 100639959 801208402 247249628 263906258 834611518 874679925 36095393 644933719 223091199 830411603 559669979 697550463 432116603 639139195 69115742 771424418 313217132 662810416 963987760 968408375 359393697 998513833 877789361 920740074 332104162 370007688 398555204 757472669 63489606 943768955 571903680 938807922 668906940 696201746 376430072 512405923 825242701 924404827 804287268 810289735 654011767 822476307 85366304 249134984 275648805 556845389 139317736 897323126 81018356 121320415 167121134 185647677 446324178 673223206 780998412 809852711 992937281 993167591 826045279 877656591 824839571 940154325 833174423 886132137 626474006 909674018 414824300 476807926 456454758 552282522 246045537 317664953 82046192 115647871 737121799 800249691 794023982 899134678 689889848 969973649 383269372 687936348 421279599 448901928 141973811 157269618 40372996 771174924 176793196 838063161 447714912 612917667 115773324 502544253 831576765 879162328 212952574 938143536 564000842 935418763 103607128 832546837 787460204 998366266 832778328 980429948 204297740 457677306 443154891 910628896 917182696 934099013 365949844 780601106 513154791 630845071 378175821 558672039 842272498 980676083 15721121 531594333 856162058 890948285 546005826 607879351 777835017 894307540 26318233 226199436 388984012 881282604 962378470 974323309 968007972 996796144 85352255 284014475 777830185 868433905 540613649 809688513 494874372 540722240 321363326 782252706 621227415 787945574 132956438 692004696 550002003 921557315 479104741 679792784 124868078 871806605 653015294 755821722 564489106 583316221 91810291 487557126 234946981 598672505 781693633 913910790 164301788 553798305 463357946 687107147 894966615 916323645 624753384 634873248 89090665 253734952 488399384 707343668 30274243 395710892 274222896 993361749 172333801 859860608 414909760 974380320 870255090 888596785 680449677 888657504 305771972 738214952 504072445 509150937 758306341 852118923 928516970 962508281 279125511 378124680 802247667 827444482 959009957 999424586 639082259 907628796 890928376 907246834 310663570 880898001 207261364 374316040 838810243 944192647 324397998 957680540 285587122 440654024 67371759 750839921 320633867 804068333 509322912 555046642 416334844 747916515 955665397 987409923 406420364 439719252 32529858 36674180 550846885 986277052 27771279 167939964 301394877 310843887 304780647 449373087 183663769 985682906 678516252 951099084 636824162 768049796 355332416 878551027 260307924 396380003 951063633 961333822 956889960 997412773 643963257 801315896 864465875 900159885 296150847 947112172 674759989 983114680 246557499 602871778 18070756 277682996 819469000 926214098 755598774 939332930 884089443 968041489 336004495 779193422 413712279 873271476 227950262 872349023 564432165 734867843 707017233 997557420 193016111 418428620 187505503 493895818 945261569 976047386 827810213 851087629 821452689 994430136 902326652 938127377 734800170 816928062 283442414 683170379 155638462 311676596 184281684 933665137 681031023 833794884 629426821 900059698 340334997 792763380 987755675 998430323 887810069 983511096 793274421 994073461 609321599 980510591 927703428 958262323 972918188 976410838 176158460 837631115 407442840 674837161 912201642 966790871 98784642 955448764 166184748 818460228 243940550 986956167 910301785 912788746 229256018 453531133 452452047 903492689 500080176 882453705 848091511 931184974 986189867 999909669 82957232 551975593 27717539 936825417 764340378 827491584 394431542 895451684 263435599 282305548 671522475 680485982 46112663 58199419 146319860 413628424 852286927 973309051 800612623 850286102 170498684 791472444 111389277 671512124 800042367 880446092 116916816 235297523 606929630 784005060 954770855 983593977 141033593 796087062 906765535 919587332 472638855 844042409 541430461 874260718 47488930 869220114 373452867 750521171 327339966 842340827 985455851 994470092 11739344 827757206 860781348 909015951 408771299 756887023 57953583 803121021 250548875 581085486 227266001 788184014 549919272 569603824 475362811 674568298 135621971 484507138 512182531 931831176 531050863 770468742 256959302 658784425 334679975 430545290 427532826 519005092 198809572 300721581 63321023 972555133 137959955 490791690 162264291 632441250 19735620 866450898 708311741 869759901 447701676 477599377 591963768 626168884 756634112 959051570 850611716 879861495 896077082 910009110 326291670 944243354 761232488 965072645 396439215 877652513 986790434 998003802 554591892 831754281 510966537 716413740 452760387 717309080 836110829 958003775 297490495 927554777 503800147 590879075 320874700 714563526 547269504 871864609 653570140 846821022 16183533 177554601 837996351 927001908 438961247 879077560 759538809 872428447 6954869 377077265 24357304 934297675 76384599 920794723 73353754 890304916 954912506 963620984 255149668 692530156 490067813 819098432 918997168 938607037 613512822 682476723 404469148 995420057 502315956 619050199 428737586 868598628 344907740 714339852 707014441 804373964 474208456 967773567 585676494 966300617 452150154 500781151 205973982 322384002 784280963 925445172 966851146 986998743 15532880 932953484 150785982 841850270 445561590 753049474 840177279 949566797 928625790 976228804 394119871 520483618 473871923 938797035 665308056 791693189 443237335 612659362 38485523 786120490 791407227 909111409 10471055 757608459 533186484 830291657 967582957 974882715 431206642 642867821 419119325 487630169 189741269 698450355 468150981 578987522 468687997 785151450 948498509 995371419 537998286 634031597 230113055 647789823 989222946 992347642 506343822 907447273 61168302 695747299 959565061 961204630 440114019 873738148 378644406 927838990 782458360 929740912 995452545 996007780 949538144 970833505 889917929 966315291 295749217 713708863 369372027 883924169 970709868 984540257 840578552 886398994 294037743 507430740 865346148 915177682 264461655 945932516 910188498 969652271 90186777 474319530 492207124 824544626 435396312 770393137 895399366 964513357 949983654 953269591 444529043 932853586 416672100 966787464 86648572 263262587 319695052 996893339 381966162 616420010 857985708 924408171 994192717 995125414 495131089 920852233 499334653 988751546 702189764 819391109 308080377 597798542 94866549 734145009 613625985 644580174 996162292 999948578 480993939 841675131 552750641 981666453 594904550 810386759 271113786 860399280 69175610 812015639 940393421 959472003 428854704 489375158 741429102 895130796 609440167 763951495 59826368 751994403 724896380 868268866 211556836 776558483 812597986 880872733 161218571 647335287 945882225 999561215 682599925 959031840 859924042 938057512 271230145 622965126 726137415 861029054 206179998 594091532 738335395 764912522 248282401 890355964 897297963 917077267 557275479 691484410 73426609 292391675 132971565 857329229 635207801 766088903 264074756 413006751 962207362 986348559 234806004 690091542 901950903 932887657 584389324 609112674 348695386 815173885 102185535 817569647 858969564 970705248 429349654 593128439 888881441 997886190 606496584 955866345 331517169 997969607 925743229 930376949 816670204 840123155 298825132 533205680 822215486 934467122 775294249 863517782 451843043 995430777 568251200 574295557 931077022 996291723 860151304 876962002 26872339 833508739 232395072 876981010 209858638 934313828 868109439 994386705 44091398 248600135 539170163 704813113 673920946 838360970 247806854 919165858 835563987 841733876 302090047 759453308 541129789 975129356 391891908 909836471 552810562 907304174 370941914 479021101 284049863 319658747 82996091 122683156 959213321 984368744 598647286 801182499 693845023 918529638 848823019 888196593 587236196 994000990 624960262 637962113 452493841 988637640 821034993 822708123 955906528 989810982 249294825 603631977 256973223 523733434 601125249 968215997 879716876 902510704 159240492 951290847 761866375 881336960 323108488 560535993 35769331 939006028 688037135 909578731 894647421 962639323 70507476 478478398 948601254 955144647 3750038 961503797 671103382 693329232 106150940 910227693 742945534 747944004 646188451 936773308 781202316 869167353 918372988 947694858 977817786 984520097 779363093 910453998 834932746 875492409 847713684 864397573 409334624 975072288 90409763 959301100 413201139 836630001 945291320 985965511 261712628 380447443 264837400 746499394 792372486 992899249 10356792 229030802 268089732 543047923 758249770 835762981 926665300 927699919 185556649 448808985 905014866 957252129 469802110 974799563 364266457 427111702 478081640 567704704 452535325 797200343 927452583 970798589 630955668 836110250 431204408 999404039 970184519 999504718 360346198 439216839 147674182 667399174 689679849 835143003 901483190 926607847 664938648 740366118 222308722 534768947 666756196 668984030 979058228 989306692 498196018 589220071 240861960 927625124 771844856 916358522 242141085 914449962 483165610 685686486 919419154 968975023 230863502 265758137 287204058 471767615 380611977 461517330 168100636 699895857 869856553 920605087 972531791 988041017 521436401 820285484 90114405 630220162 893386364 922940765 117132206 266072141 443283208 739606969 255242913 556018366 624067962 775969116 820797369 911797450 318755425 808837442 591844010 603544803 221590041 998928337 362454696 396241169 435830933 571640880 158387537 367253080 966934195 972228836 230409537 978846072 652948757 850655752 367661960 789664688 596726891 674009569 457091475 534906176 557488438 838126730 867133270 904356550 931358403 943715565 884889154 920510915 157972096 256023336 684372803 776653700 243056975 773054837 97097631 777779403 803949342 993762985 242967512 733774890 89445510 543510982 571057350 722141321 825525934 826467062 627855139 734077850 649693872 902855488 29473925 537256482 410448608 538087850 661293966 893910513 179397836 849913725 635624036 973333044 564105154 733241368 442725600 527658571 7297724 961141523 431408994 693736528 677617668 715914668 897017105 990110810 934181687 944772314 827905296 963215646 646578067 647781333 578129689 693450000 692807103 902869644 946603988 962750975 107980800 542263835 229732343 902683426 313706276 757574601 239521506 733017548 992552555 994876590 920872935 958763395 525849775 846358823 360107888 852201303 132683366 375311808 604568496 955927559 517605793 610743010 253534069 353416913 6329225 541204443 253569061 958960757 928032926 929669149 625403611 695806310 267425758 530585033 676366680 839301180 544457371 668416663 459650241 823640637 911372417 921768180 384468842 641799211 319248720 977747454 662687410 739549016 474170858 928023534 398859755 490384485 4038511 619129998 861197996 977376009 689998733 714450482 469771921 928146907 246724514 561406517 856186611 874197954 624184288 773896677 88575561 367962087 137491817 479977684 742520606 953585987 70702230 467510148 929102872 942679230 795779290 982990766 223491526 788937021 59037996 537057228 651173433 851743927 862969252 901127898 620595833 925476149 161301569 910552032 562223933 898530251 408937743 474230316 390569655 614721728 171203484 857291422 783024877 820934363 314174534 563639838 16048479 459806874 128547644 737827758 782382306 944350059 602312151 838077073 529410082 541790718 787151388 870755280 687775055 720262243 849118923 937841099 17514939 872132948 922039228 989616462 799513514 808057384 815640142 982672450 161351803 480942163 262333417 671489555 112051420 354878513 159115492 790686971 583661177 951120119 12869438 910914926 992456758 999077626 643063028 785616458 330953810 809525532 116492692 949874746 114895988 366562992 560120788 973408665 624892549 908466932 443511783 695403614 224737445 916243572 944156822 952056739 99377440 981935138 830096805 960964160 94096889 876886843 665904305 785455471 364121534 805866140 499333522 681064303 569921447 628473135 130111 776639511 272975069 889779746 578158568 960892802 993338676 998238131 670666323 843921293 74953384 642203273 242602363 289911583 354473764 538037114 668994488 718248301 948244501 969298902 983558374 996728696 466076506 532824987 510543280 872236574 343887212 734518790 87261221 210050617 436758200 803960648 355480750 794998668 389925276 728543088 113507211 668402672 99189916 516140264 870025747 916002582 81797451 253321693 969194502 970972734 553860825 603891251 943965299 973598352 427782002 772512967 702002111 966600283 833743799 859529382 436595014 713788985 325530168 609846607 390833184 846392983 746748894 969675481 903041161 999012663 481267872 834916580 188988725 596112503 570571067 943433979 897901912 999420744 532483117 923682731 180297632 940575273 107108377 108578834 313326022 332293343 516262954 783897893 941616187 966830012 738622203 742077028 996286308 997191340 117595363 908009936 321176133 524375983 210566001 688996753 424244324 675727860 952303718 984594081 348220196 741522669 29834022 739935049 873062128 949172957 641258711 902046973 98864153 219899470 601838937 919838919 947520397 989303911 748407801 792996532 7056995 962185487 11251689 869764798 645690997 684274995 947515695 999507826 574538361 870724597 970569723 991162002 239603434 845482141 902404623 911717595 795911391 853970455 998560101 998950388 111829068 152011084 66955244 749696202 214757476 650088829 687079567 772518540 181215000 778038195 949598145 987383765 270399677 320223817 1797883 661465981 896569038 950077265 457505470 734689080 24694433 384874046 793362988 986785726 717351068 892378636 912066573 988971585 580298378 800505699 834470763 876705981 232378526 232914490 883585357 966911963 201191772 241382374 636532484 822241787 344586980 394775263 192462909 824054293 103573744 107986528 199990176 595020105 920882968 961952277 638073950 993046113 455453395 726881273 523411124 580135209 825730857 870168591 996552583 997263832 187017364 439346136 469023142 820752907 885664764 950576716 649094034 697579538 124298880 153959567 683023335 710517082 480906194 606163085 110472120 621266534 371037767 743949174 508986451 732623498 966381400 993890368 44957310 677344062 847103134 937859881 535312342 890396050 490832380 691134040 563975371 715395668 629668592 710291189 406037114 478107964 473682568 479094537 930896730 971376170 331226368 791688507 649680905 793182673 263995688 590394097 448576586 449358042 534117610 831039794 141706874 366386472 56130266 376001795 961706295 981665039 796978031 971816839 492897064 778672930 298036026 396422858 555773320 951626738 203523161 427337591 727745557 875811503 691322209 837038861 428413125 602765048 322587209 458396142 290224091 497468085 60999659 892847948 599860577 850145385 947903953 978615895 31456770 251302262 560156037 727741730 765081746 982061146 559674011 764759338 99785099 380409406 813410193 862052829 543605902 642453783 52578434 730467656 564771259 758431330 525414227 860050992 477690755 547310994 282429390 355852371 177836332 336723479 82396560 309036778 771610305 958591380 574350511 707604367 885891011 961476710 295258849 556996006 211978188 700374555 923744407 963545869 249113097 303066335 805909213 807023943 221043128 636693920 71733363 645420986 194633524 253708335 58301016 284513673 148430992 544697890 364189888 631114788 731199333 866107851 669559227 732021146 319585644 388461613 144796681 984540095 530775235 959073760 36432339 345186658 477793843 485516058 498713087 658666151 281125038 802872544 691560794 903778899 333038460 670040754 935150731 963317686 975931949 990280047 934099545 965718703 255819722 666868360 326312634 423357629 475382921 961375283 981763779 994528577 192582607 857203327 423678568 994280711 10413465 271565524 219295549 787222022 529095470 790112487 356983431 540422675 100725710 807596442 903457781 937717622 228691816 318882282 617723956 655577588 146402526 946520173 223797475 950977167 917242712 977802307 239137466 541502198 160064175 777278105 335277220 540417825 185232537 584777772 956232551 995928064 176623644 673718331 955456031 958862408 627607817 708037535 84221071 212266047 349987863 699042649 520867240 632563694 385820913 450669093 550982756 853027687 282866133 490989163 818650702 865493414 841712158 893600697 1267452 739845229 875817962 948259699 977963518 997170300 385862498 987410482 133451564 387290478 467934333 918804669 713671382 794655785 658252137 857421763 396030989 792489790 805170802 917839406 580131765 783921615 281719651 429578219 20355255 612572437 304012767 367105475 254580699 832652947 958253890 977525428 931376993 946771208 531495030 794675962 410107556 747871986 44376486 610386781 970412093 985904729 933884884 957089958 168235831 897117758 208744285 835280214 896311251 924221087 791160569 807476802 643149325 751130854 433959812 978452252 610580819 900799312 214360254 540937100 155962518 769199858 183834376 719461910 116573993 455071394 520991152 547514348 304219675 655252752 305168301 780516808 700171246 740818915 803857982 915024678 582878956 776062913 499664828 722993681 746857787 939150300 982786274 999709138 757204017 965654862 658188801 839047243 950823028 980538438 299165658 466363008 415955972 612269381 560841383 984883581 504650811 798654968 582943947 947624672 154627730 946089815 429341161 976808965 579040462 704209961 48818023 487181756 402583759 766503589 248036743 971097254 337087005 786112672 151357045 718259744 76897721 272650182 154359495 989524782 443358449 836902090 652771414 986021563 824113754 878920298 342719581 388608795 495286523 683502381 551844449 788545305 801340692 965311978 145462303 962049955 393314170 500811482 312257492 986302911 168721977 978213728 450459324 549391046 847690 266907317 188547086 372648624 483684620 848249078 766059258 888899192 767512514 879272400 810549217 935771024 252666217 307434574 952658385 977061452 815046592 960022329 381024380 937098622 534822162 569722115 806982186 830734935 548453561 666686861 468722217 521814354 573139135 954049161 501819562 902441221 109685652 660740938 414197227 870978999 113219398 923243603 247475327 414274605 621692981 903547111 341792963 761469303 869181930 976953309 969484151 977234925 670522151 979696492 848182658 940070418 519871574 999301268 638904121 671929436 118408118 928059834 9596932 750599656 982156422 984691265 213302495 873612943 171815234 651799963 879665615 908995506 713378430 718944549 38325846 735013412 176766089 475641526 312156779 318194722 381539813 865021129 72058109 798596551 476478965 901771910 926475700 984157563 474754457 681267058 682860342 883734425 354615991 391961387 466559669 909308330 770144566 822463975 840327243 867036361 242389699 974559498 750808917 959283577 833249876 920232609 415348669 759663107 884784431 954345985 187061002 470720624 917201971 923354527 302678650 864184575 503556588 658565914 726343669 812925286 977755765 990221806 473085918 578504478 97860272 649223731 298173275 696216886 682863285 863141753 909043202 956383616 55967090 626584331 807859547 955156354 828876661 871954292 699316244 891864706 8933196 389496041 285931883 788845413 172037660 952962690 873614617 971920244 205126180 498749862 985834528 998808542 969801439 983530079 987566842 997302506 255500958 477421287 763017786 993496177 652487697 908155830 10973494 816474126 53002747 598467285 820876225 880838824 208195071 532497344 722157586 754067710 535498504 831278883 546388551 627242109 482505838 866038572 912692637 976411591 652371814 923837642 88477894 379380303 616193566 852246490 709129695 788591026 577811390 995338837 293552981 836299056 203236367 525551722 643180833 852086896 331758175 784641517 954471438 976498796 744217360 810199370 818470612 931383392 135537649 642050397 699053838 771991389 545346349 751258693 221843723 837188718 494767846 845448414 566172274 907059779 742070480 782764681 355927847 952806692 446263177 602724000 331812837 461047774 280214973 662632734 226534745 719794667 280164765 386374576 439685193 993775552 95571730 600790026 689797381 949923354 513229838 657080762 259625571 863578738 900128946 900225046 371693401 616987683 692903786 840715878 736201098 749596542 37275551 532120005 798156701 987941647 329121629 439602168 533553807 977641928 271418569 662745351 111207097 297452579 523331074 819876118 353162643 627478239 857642992 987458214 789278655 951702935 904341649 924183180 228411248 749001039 514752311 624747647 53528393 303048352 414292488 731387942 748572736 839320736 853261287 983940817 870263748 872690501 441411707 535471402 828120497 874606060 64810965 731673949 113343850 258569534 604699723 973685762 25836520 332344203 66395296 963380660 454828179 610677093 659408578 769409389 165624829 259732595 340190998 798864047 904526301 935948497 904591801 965493234 751529156 863431497 260902385 750158383 147310481 449116492 704531667 977483538 466822171 847418872 244776053 509510924 915442156 945269949 887068790 950994040 389823768 412385526 740349984 988858644 192970815 609572505 236788674 843552684 62388829 789891880 912434765 965521569 635023563 888396354 222739487 655819372 574039215 656044037 672224115 733966675 731289016 941146547 344667928 683736542 644337269 728522140 852600909 972172095 414856768 781159483 621602967 637841686 549869425 674717259 650970445 941014106 70126113 562489406 467390488 517715130 726210898 735725597 960434660 977829470 877049427 913005145 234905705 584667243 26673934 968633900 274626553 541549451 630167660 813764520 150888649 536250136 478594307 580641850 865733203 940780360 168441566 612120580 619570410 790382556 719209541 881390359 806695819 983637287 321554340 485470092 196697861 952002254 747285690 801837777 962668224 983600038 860739999 867578648 994624210 996445388 687048980 962011695 579709882 839052799 382068025 384384065 11653517 754636117 773844152 775843440 210872896 776012537 283741984 767212799 264697361 392198940 521481979 717346487 125072210 655973890 800449214 999288456 167392892 651256589 508092340 853616045 44004352 654519705 25641894 284849613 277263000 415690360 986070683 989921281 8542 236635597 215691569 595319760 156899494 271557462 723130617 992086231 858723387 914343002 844663147 951711671 712305355 777802570 799909971 926080636 853025748 893600254 903154351 903179931 729982568 894412943 966870409 984305320 326978285 503538617 913719482 980337899 829107105 984105162 787155037 865208124 934998412 970387115 669504943 933437797 500287115 937229308 792259135 977067279 800925333 808181083 616861702 951439364 824316174 905529736 705363755 939953610 98462356 813419277 184580168 292257854 958646039 985020837 569668738 875388709 339532793 726209913 162059943 505269409 656323234 729308872 888307592 892533468 269336817 398761710 291092975 462372980 532016709 677791338 148400342 378464827 636988440 748017133 852119566 991990941 937472330 971781892 398817630 641927134 421992991 900846335 743696278 944618280 716141763 945619682 672799557 777311159 936240031 988849493 1753023 208062754 759558286 978494516 733597333 872478107 371506044 506528490 395093099 750752248 880083031 882387481 484005697 713034031 172478314 899208610 833031665 847575427 492543986 500992330 955594550 986111348 478443989 598444298 887377981 989001195 879084473 946348090 813342384 999351193 346665053 677227095 63459907 303623131 824848073 844058797 864653915 915737665 566103496 679879305 811913732 825605146 606770221 897526716 560423768 978259359 860047739 965482890 63888936 285291590 182820652 573276342 16801898 822329933 542646313 868044519 394577159 896318002 956510500 972198990 720305836 921764715 576745050 613625015 141931434 514985055 324254403 424268054 633028610 940241110 21076842 471040139 528803506 833044679 64143373 515975431 448122820 589956855 637877875 958483235 697642455 889575156 57689261 503196931 399996009 509718908 698742210 821303172 662363384 808070320 300863825 327312010 352465873 817339655 642581478 649195567 854526728 863594522 373584871 446775334 921587095 928860907 646637767 903227373 210036741 509930481 15861785 692846467 549399860 973459646 595465717 866889602 839585587 864450907 418778956 920296429 632647234 987970552 53544627 917961527 753439143 889897983 960293997 972343091 371582301 553018050 692116213 952456322 835969487 994935102 739646267 983861943 133126755 609295713 20380673 584798805 923066400 947396652 316307099 601855767 525741441 562503011 504596873 902804864 330248501 613616768 843971240 868259677 765896455 899855101 643780569 860793555 943292747 962604855 247216442 768590023 156372352 785028635 331481342 428884546 813415691 872698112 320606589 547697605 244867146 278289967 45885743 523134410 56686551 383632279 987922706 993642596 738493027 958761508 419188414 537097038 277584513 984656978 488988288 947454144 644912509 717751336 922599544 941336942 200182841 718932086 647782490 661752863 320090214 998973013 189278806 981769628 761162181 901094180 490966224 922378705 906404548 911361173 886969838 973340123 548772795 734349646 489359414 970640187 392107925 970163537 663801394 791669482 141868703 315585979 189010853 252774454 315101734 978494625 550707301 709231844 494920921 741242696 199159882 489639061 819069889 912741233 826351051 930424432 122051523 138562659 675379150 711806038 24742455 36066686 364224682 419217662 735687447 821843456 806155338 989319983 807795311 992552089 261673114 625157741 304695947 779585749 785837182 994395067 610197237 823755063 919465497 988982425 98682228 209499624 922259693 936944588 70255078 343546968 605086519 788655075 257521301 279069556 868493656 893146327 332889522 858263600 240512413 646881565 794544351 929472178 210783954 462956397 979561824 983669040 852701012 954027972 697473863 938240377 205665006 881851655 395513284 563715269 678798148 820611549 7689541 143868615 667843445 766725322 28479938 158276222 608001429 721893760 41649745 631657940 291458422 362772153 880543674 957857498 50359865 694963048 25697811 939727374 494217497 901777611 851314508 906195345 321309408 979048241 122877305 729536412 167206916 774208338 96622437 371732772 460699993 965910733 86167943 154783605 132330825 223929819 248998011 817439544 713382375 990274817 657619833 891673914 345168640 694546989 84760991 520481160 943781867 999352585 262286062 453707501 357214828 403334915 456527925 675252223 233606253 288253147 709019963 946020773 875871799 894854865 819251847 862508304 936295332 938872967 739465118 827314984 40832814 617764828 203450220 404980421 843466860 908076370 414402225 675024574 879404765 888515812 960171166 988706242 606983552 651160868 817241992 897465052 739255363 987501566 620222826 718378718 116813466 222382552 839116466 989422385 587529228 791352834 745213635 982616115 131951783 457603116 177203418 589565821 469095514 671575839 491078589 512630232 66627204 934946777 204587801 699623073 701988003 747446534 286736548 391465490 798693893 802376436 245504926 860246340 745545967 846928324 471576541 937714383 387263392 510549762 610453234 913080767 136188007 352846980 804377596 885575572 54690142 591190872 722197576 921151829 727302162 877856854 804299654 908931340 235236892 679723368 665346892 973254547 934172475 955442678 87990702 623608280 325804066 543016069 963046123 966147348 970584261 974347992 778635859 835702867 829833928 964273594 245097336 732239629 867789183 974480414 878784801 980036047 856554405 978304614 664930412 793310356 314845235 655902127 478086428 636083511 261876640 552859713 878325630 991960383 248602278 378248967 456522102 565907627 342530844 404683684 88819165 582093888 780379465 897556546 784527934 920201625 622202990 775811742 767971995 812776298 619404831 738581100 161365954 707962079 871119891 931886064 240014348 407307040 919479247 961246740 173812977 320600768 23334173 363507382 900891154 959659617 444564814 870747799 610943875 885743465 565734783 692239244 472713676 994901082 831188655 882291335 601417470 705961592 156792760 787018627 198640493 909836113 9388630 300880068 337491997 557890451 335854010 980372771 607178064 658169276 324004784 685201442 551521694 595789990 941005116 953634831 130858243 933012438 300712508 814821160 408427429 870522578 964059822 976559088 852187082 896303738 116160010 703682541 584384135 600065614 71587522 618480093 511417121 924732066 357036432 480787561 637601821 727137984 99426748 103400122 490906209 583644859 82280149 196143378 44509417 922924224 209804167 640204208 694887657 773421846 789065667 879830770 479255975 814124406 323364655 991416168 632932966 707222550 745855548 923547018 589179317 684338669 491285622 781586747 466497093 742688008 143853236 891631316 530995502 980790355 749590471 997785216 379067876 917778702 85762941 539797670 922733474 964853030 438681803 545542893 250841708 425725711 65592825 283827069 561685136 988782294 317333169 798221834 636124827 920092617 178556229 183038161 684499581 754331139 900900209 977151843 322986783 628553788 847354047 952351089 179984495 635060943 608375915 989545589 698032873 887437934 141394971 470726476 912589689 943446210 961976419 962280176 959048205 976403917 504292150 584933728 359295727 469090888 543460964 934546537 488754158 675734536 700430250 951059300 271450306 289821591 622041409 931798801 88526866 595625493 240836315 404047492 864843024 940237426 248203009 614626757 703588851 914251687 288387159 670048805 888336494 945234339 623414199 713948648 523356685 714769386 380657904 811658041 416053661 806290006 865412423 956426678 372777616 455014548 849807507 961576734 906740964 970428153 879738653 950629084 672696109 762534404 407390116 796624438 875879455 897480032 50670781 59836915 251350174 384725732 651863707 895527627 740926430 766193490 159479553 248981590 273704940 914564710 234857096 907881794 169084684 961493860 112030965 660366238 418957987 873366804 79910175 591953267 99190462 323375067 489433554 955773113 204015640 786800351 716975600 929990421 427884213 454955142 767678159 787837768 688513183 793970480 673530163 980297309 391431697 505176822 45924647 897988083 979500208 998063870 772794154 890208163 242790117 247096404 785276950 828240886 551482607 675997584 453058767 682747882 819255423 948174623 972980929 985008570 743786780 798600500 587105557 680820224 901042984 956070738 426601777 430245754 39500067 628795962 577189875 613347265 270415932 298151965 439993928 658292970 295348442 581004384 97745272 889600808 325993727 833694227 879346808 908974125 788493000 830061138 757608485 844720112 639014200 981222270 984907412 998347072 45534067 912875639 363073841 858188134 887820921 969765712 769882358 887926381 916561321 965024179 825850526 891892985 12029734 894058194 628254060 844388658 143926860 591218760 213489345 404192956 87120703 820754095 264099877 744101833 225880160 504111906 388629284 474066557 687479125 907150160 31238150 723032793 791159909 914032489 828820971 915474154 866971576 965369527 567531070 879877345 440546934 612867196 350789312 953102350 401160595 505131805 301510065 645381425 317708962 510190676 598529609 730329674 896333428 927341942 982066690 991107896 171239756 488798329 67839312 289031654 297855501 910046182 490307926 966963588 535090205 975964288 238024461 573061029 579087943 601681370 574221676 684764427 25288982 321015567 230350192 386943220 787332035 849409718 4503874 951986460 637761977 887709745 425414530 946843326 315332574 777145991 153467918 783881409 567711991 815132768 126444390 642427383 415676440 638857828 360392092 471606836 455168670 682450362 277844132 332080405 564953969 807447156 394091578 709674039 567306136 760427810 19997219 636497736 336056094 460856889 10995880 82946253 41572564 355627107 222069890 394984653 598844340 738356130 469750120 593080625 337865914 430880671 287371748 857292649 430289639 721299610 176735061 929333777 561437769 901980243 28251296 33876417 46861024 228460510 62058947 263091620 931853068 964741482 405741733 719413304 942618401 988173466 781290036 942404773 504591497 790672879 617328552 832605152 508977622 721104925 993035649 998948789 338341130 998317393 819666467 923697343 577215681 846520339 71428421 218176358 431061390 520246625 236569557 448449093 320855778 487966558 492865469 854733529 904775086 991812276 425059485 980469680 590181346 917826795 673835507 871570990 834022995 898985276 863649946 969838912 396687879 918926146 744401239 841100494 815808042 830147371 532717653 928995661 609441736 980582820 110634186 665917698 3172632 503499394 710227874 857482027 447074964 494989172 28928245 998702192 685376452 912212830 135322491 485462822 614682923 615621442 124985553 578909273 222476365 260437310 72153366 262346854 827318828 933381193 202944656 714009774 555493172 561287284 533306556 797054623 758487316 910353980 891104246 912715350 936311349 968007944 70085180 88455618 307794902 963357518 208666031 973424277 804561110 883161537 552035092 628012475 381876187 401624227 598798844 643683255 878619737 929789170 149017276 833655877 372228541 595555772 944030894 946615201 323246609 602729789 755862482 959573843 320025732 783069921 724013669 938547262 143238804 195498422 636705243 853180689 272357568 808070894 652676436 783604145 239719768 997015335 126220543 431699916 675045068 979767575 907873397 909589822 753545273 935691467 890734563 929461082 878152867 994072579 707613952 934428473 924984911 958727065 235807511 750801184 27506323 502033752 457565930 983476838 120711327 356871993 386027958 656010452 160176238 723886174 626258373 782786611 450781875 634743732 504992706 823865109 139497831 729011270 814656287 836175090 449255964 890657638 351832428 862028714 844855031 861159686 465744458 502518648 574611949 628951184 733073490 878442576 843632270 891150795 128288063 731912174 13902615 619441645 280094151 737312561 893920654 975672686 312319981 542629016 382839662 965743836 195353785 689667225 935794817 991050879 624936758 662868316 329850588 672584821 484672313 601824612 166949387 523458156 803166049 841475394 925269542 930483342 523060205 537446003 438933447 594573588 638704695 724513194 499636878 531223636 132353610 211165626 146371758 268464393 837493715 866329669 65630403 784229243 790959605 940839249 630296768 695678243 798014248 963409986 665639773 946640494 377647129 964326743 245467964 774804398 711488181 839578047 228801575 916849302 449122377 897598440 781630705 958336540 837251354 885249136 298443306 610714473 399197334 586729960 642791042 990324578 930684974 987685858 707839264 976424543 35876179 189103494 490598513 589954898 668917630 767359826 399185407 522944282 758864709 806552823 209328645 597823795 736250520 973787927 635807239 807246883 276546117 394777685 317193002 914609814 339787396 785811593 183478238 644051066 745289051 788305395 19691808 781660233 723015919 836074211 718628100 829105783 435253571 723463101 829190418 905339236 472751054 594757805 766667234 912086857 989803213 994653710 185768762 898034354 234934800 244668395 648306712 908950107 448592198 601912173 538232353 588233654 771095559 977074784 105171043 914903902 233311819 651438177 39567599 265584026 526945160 738535055 407311410 940032567 153413458 879603146 857088384 893232869 526922622 794720020 344867082 750367610 4031018 860225127 960841647 978496758 684134652 817288016 137435965 899824372 677756784 765455418 793409258 944535331 915346550 978917060 351897637 639570780 231476693 696348357 697925621 953777660 365188589 542451651 768012208 792301784 3250288 757223574 834244262 974004050 473580897 586413135 401672587 754692402 595966986 710911256 277823595 812349454 679195520 724316445 924051682 952181370 816101298 989643387 446966223 711843964 130462753 958722729 310049425 755165254 75386066 365918872 462999497 899016654 483574969 532591352 854782402 920534606 972305498 975633800 84501421 855482766 681392079 700551878 844504681 921901990 764532044 918441998 487126869 907885054 480856929 560546567 475326607 902535016 5782257 869708456 285089715 784502524 391028282 861404240 321020757 322819060 926822910 990194760 321109246 719717352 889468120 946237537 847370551 944398108 378776598 758695387 393671169 509102549 662094457 895006951 24658267 554246218 845886260 987131273 470331263 506829365 531863992 669953300 447934834 572391293 379989926 601408302 490490841 595534589 251995520 921632251 483776486 589355915 896205889 903327042 857141317 948321443 682190151 778776017 746718393 887711880 807446533 900066455 526119669 694129563 906143843 945431804 578087124 718603810 39772097 202804029 133477811 269006344 725107302 850798040 57302714 161791700 885777612 917896279 651978654 760238546 143978549 216581935 130900494 438033496 715120627 814948731 728792682 793480180 860218377 890242644 782637922 949826868 951299049 955514521 605757660 674784893 284402591 991408678 143866470 573431791 846118786 932793740 667150742 850447272 826503857 942835080 116024050 372433758 626051238 764777368 930969280 931029149 461894278 774242972 604150120 983686570 377306716 713454482 60183166 685110304 325488020 469278477 241141049 580566720 48761074 865346337 943907505 995586314 112061471 358360547 252190154 668679232 139620933 479463939 755508132 776169289 567604369 853440256 35633709 399777020 90326958 612363233 828668755 896243762 733355024 751091682 753964392 974238864 817799424 825242963 472041873 803302542 669185298 845689762 970187724 973109777 613961901 975921516 261974307 644515601 211049422 539286050 51783539 751046665 985505339 997272876 749859499 912765815 224906844 395945456 703593243 808113469 309866545 410171522 307723670 636747771 554381169 730622929 397432418 699794572 30020067 75194146 539871304 733823601 758602118 927701279 853960726 988879673 164251198 544701622 493828593 574075065 157004632 662346913 666788033 709474843 976305474 981206477 420119160 563565632 810056699 927713437 410945760 909789418 147015488 618913044 140253306 561709937 517827484 947686834 998974042 999788399 365171674 516453077 399210548 857822926 969770967 989854380 842498461 920149887 978123242 990538424 650713626 739159133 98543268 228789094 833651656 836899378 978264536 987172762 362949384 884390302 799133179 838563863 539648305 941390945 48236961 708767802 739986600 781986114 243490637 745256849 123882633 700317314 811856409 906289337 987677093 992189147 541778159 732240821 245583904 349414659 661782612 830470989 766269707 965423982 278974076 657959063 934544903 950561269 156118361 693365406 106922851 708112409 793962167 801219468 983600671 995226831 120510906 785985036 173778431 256475878 581591902 971917471 94269800 453589470 200465845 556544858 832423780 866155074 697720770 953296383 291142898 666012215 203184920 687728681 836192370 843927184 337837995 463789270 927034708 945199958 593224512 737611899 515351524 718905956 18332332 672463302 21552383 317514595 991394199 997732235 227114409 287121575 125790543 416625688 222054334 845946042 203739172 588846428 215334621 529504775 371003029 603338103 782435544 871475315 236056303 940931758 234516165 696926316 52981920 970309514 452186703 672517737 705010661 794629054 536017942 963433871 834252677 927139474 207952383 745661544 648751315 707447739 461638040 931066925 314542522 357755818 305100161 652731110 615225280 920755680 856758928 956559476 890065480 999336031 30402137 602719609 74577620 304789130 439548282 753723002 4495932 873553358 184377113 759412285 181950107 191036037 655251982 866985412 230007300 590186000 298683735 376423737 492590801 962181410 803119680 924002470 427940167 478605962 654922607 823672029 497639567 976856670 419231297 707103665 525888448 831842890 806203267 906261982 270456594 500695558 254163052 636301798 140185611 856521241 903668403 919547208 143356028 970963062 322856351 778022595 394164366 717940761 544494167 556031784 244641703 307718944 346880355 645613491 729696031 761004877 383114362 792028486 184111849 195633264 367120343 459883457 268394691 766392849 589777561 671875736 405072463 882231206 469608288 538319263 221090069 297765568 485316367 668028818 863760206 875415678 54552791 718391078 911836385 955095489 395076895 558738074 172876039 346104456 654428960 794897600 6795748 568640388 674798169 773471597 236897871 886016241 169828164 653557884 691754236 996128949 150184458 814092764 4821047 281562678 535392758 836824888 263170962 541364288 790938661 925766394 399039818 498957499 921598051 995131617 454488346 766166660 820293081 969981318 955162177 974054131 92534826 321508984 773090394 808758027 468765890 793236148 948413771 999197793 953912143 989201450 171330869 324300944 334370315 712159166 150149302 954075719 479855408 763438762 306966509 525732016 65405572 228655561 374552461 740267858 402337558 493358893 610535850 746913857 328092280 649773651 525794816 689474702 84267799 698359363 224886087 877404819 177568675 556760259 558208473 822518459 814976101 815802460 293142068 955964296 964359495 992223923 390875823 827475177 464517702 500517152 642248984 843216029 896567404 906663242 916993376 925781047 938792758 960936664 998935635 999929843 154044139 555220200 450801623 744577501 222929853 435536091 60411539 140163141 222671343 764897792 121860740 521548006 6874796 847152732 620793439 879964492 285884704 671902411 338644529 513600227 354180383 755512812 612259795 772248330 674682706 721508752 211044190 552071734 651721755 751195075 794877784 809070292 372263326 499993028 200854892 932962881 419713423 829889537 710242 487656383 2097088 503381778 25690834 189044180 880324095 925613102 775138487 776916184 616471581 743612105 97050952 486273495 105771048 572468029 217764741 820376760 474978199 599045110 127191746 971429472 961100598 992699778 762169868 975962747 71949119 720777590 139707955 923040225 295654947 851601501 628939075 935530888 549774956 903357186 362643652 663110028 214182565 793953113 32389989 101105526 789098367 803769201 209773638 667608368 898276112 932671674 173254028 917485172 582087826 664018666 851988616 857379651 286502207 823406433 126417844 220653977 530104871 739166858 975314089 997492103 520441785 571681250 372474843 895456371 893798199 967548691 275575140 748972588 878390317 908208101 704868966 723910923 837703962 893348084 564442181 850019028 357351955 878027169 617669773 884151380 31502303 664152473 715060471 874790404 196391248 556645953 646310105 870820989 830006763 951682252 870733903 921222150 877461275 905251244 42698963 321529370 863828631 991101613 544502957 884955879 186170443 189567883 135085605 966395804 952480793 979420443 239055525 316400156 266506426 706446999 973358870 975082499 241799187 334968185 224991141 871553091 22578915 804192916 893584956 942724451 728759722 985429634 250486246 879439073 35229090 934692331 808422293 865481816 665351099 840152672 179452364 611856774 94849877 589422904 197840409 603099516 72432721 389719202 363709443 664548518 454912688 863067031 10775063 53219923 578371816 852049523 883034600 958907651 561202290 588215495 688103360 849554434 371333093 480931465 445718357 487091013 137227677 381404539 430412416 450446055 790915792 819593360 607080235 655427387 931497729 959723764 258981519 445814706 688313754 764135851 353175515 496020876 204132412 992177582 71012637 351703653 470384574 514714898 312948097 606346349 786698206 846113168 709901406 921470307 652532158 842272139 872645174 929007953 691228695 963053810 918856969 940045985 398199188 713212831 497116746 714955127 785749825 985376816 434110001 819365276 26551772 395667624 420085126 427561123 677528915 803409409 707430241 900761555 526254855 925156089 653053944 933657444 475158896 764267541 947147767 949830615 860403015 952138729 419409080 974586774 295780927 494972424 751247533 986670538 567890950 770120741 471056671 882769974 657087880 998652587 491028042 687765874 781069610 887504065 955117447 959319000 314283733 553474545 231174444 279133254 83546338 366323668 529819330 720959935 28779691 514644446 234839818 594055955 367715734 544910166 606757409 966852017 398415890 857855653 721190977 814198413 289919190 427469424 575866340 918859563 492663779 918586024 561928677 885403893 929832726 945478417 732381768 836951856 696013337 979853786 997180977 998175800 534597418 859054069 999079458 999872850 344295251 949830704 603262844 761871785 889919186 998247396 252851239 595418907 921903044 987706521 839759523 986168787 9570710 244459427 213727927 234647379 380132605 959964703 311854523 345485724 566559187 892402050 929248067 935788710 448007549 793628911 506773793 593491662 196761091 601536459 348559602 416769720 219330449 312710479 616167141 904444571 213612018 851328010 107288729 631769496 288759598 797148538 327087556 595069624 314690030 891519788 527859516 747847610 717329259 949896619 323201584 470966726 705185066 980683295 474019111 871648019 299103945 589128003 62185925 952860389 877885737 941369685 311398796 435856781 360609151 666033087 619917839 867953213 606758289 777025779 43000202 829481618 147720137 541434145 515108901 899454977 718896898 914902084 154025634 548026252 706645112 847938807 378082254 420230668 427801205 460422242 959885056 996585784 764372982 904874336 824351634 869143216 220786476 512028611 819074663 964559481 285658596 979579654 24750567 142245490 302290200 342926226 728185877 925626374 640287761 666709288 273496460 826425482 488004687 587053259 629302552 753345277 895860766 950619055 538937431 752560520 627337804 921513823 843240551 939672639 193797115 604037542 674336086 729935853 878418806 978679439 928183136 939590530 656122205 983030396 477449760 663228428 931717868 932957523 166690500 318880393 117397015 952090179 562808454 936617526 640030592 880223088 107314686 714192085 176362027 526954155 181637567 537133200 385565542 474513793 103053284 603318072 694384133 728843880 794488922 981905359 980427572 995869534 31620325 141080326 220849091 901962878 80036485 565745345 976776720 981781647 629797229 819399323 155234687 786690983 370776521 646323398 172479661 715861773 273343702 356667857 389462432 777288310 53822010 237006059 65829665 546342785 986729528 992927628 113194329 335934790 998602389 998753618 334681285 436160426 149457892 960395478 20606679 581867804 943529372 993070599 163211475 952479742 358840357 482652925 344231704 411593373 35443396 763388868 368062875 560400446 16007169 891447566 391698829 984753440 611957395 652652819 167052126 659475861 346009530 476838521 491224873 689320880 182313582 637725274 890295710 984181071 504118895 934040730 712931205 752652532 866259573 884648834 527036909 618528860 140443075 467072214 42891652 61959023 374979500 888309725 310007723 754858575 544288916 813505668 261333484 776831459 422962125 561866764 726472034 822648948 902495320 976213493 939862777 948005310 292318538 746385577 858304946 940797623 246270644 614598783 26767934 63099164 72111391 189037968 926470969 974724087 940492020 941688286 878691739 935881960 883198418 968154679 922317406 955219880 160842455 916549833 725413027 994715817 750166379 848013656 425417765 984947417 681530184 941846588 159117630 998700078 210518543 275491630 319338842 765364700 241595202 555910631 511352733 844643776 314128784 396242312 448349415 976889214 588620053 816945180 937438874 975737064 661805659 874011861 618624518 820926892 396375337 952873757 853632022 902068695 58677241 171575683 703937217 796949337 894378712 944850103 263430153 490200382 422323014 633415657 298859443 773559932 928121590 952065476 975245301 996825184 345966986 598568430 650155675 969151208 453056557 775873828 544695724 979023211 174478074 607842513 748320408 794832159 467018761 880801278 354634223 863784074 38644920 87260863 553056690 590563719 66492543 949111638 163864862 723534977 904154775 905493539 830921134 843611554 539187099 722230837 854996177 893649738 60866291 501232215 196853071 968676572 846824773 905000778 70403773 186777048 483775283 712708486 646688606 952871400 727452958 932762232 469038408 730755604 266373207 306087886 177855129 695232931 678438185 904979655 730293298 895244903 859580866 918343744 521310012 576158080 86469714 379404590 867450330 951263311 466933198 878462478 731224113 769583976 609666464 734898046 530004429 720420624 495674900 921460356 175068964 418164631 676448676 972842667 715033901 982526883 638722042 854549975 884619838 932149910 342993896 807868592 51477770 499977859 307200617 543866001 830241472 915654189 574713324 765104421 849511409 950862693 350665384 714541743 64105848 308776681 899874028 996147095 370245561 442515692 41025271 805335958 152144686 817459256 432328016 797787323 804165843 920527029 855287824 877354287 746156057 895378626 875737813 952253320 615896001 690545143 990902245 992808364 626982644 867927495 177456837 513627001 445297534 514634620 433133675 875300769 668877710 739096232 804983810 841856428 269408483 375089137 139731809 998643920 907985097 932621860 519822884 962923284 575764975 812773145 550136060 634952817 130809901 276007238 680890325 874861636 531826939 707097539 371408607 902111551 734927358 745326667 727347851 796426095 442125774 695577890 677329444 942670556 344846709 718432561 266174670 964682327 621735501 819071857 937055019 967220642 137184914 617324242 838499674 872046968 932174603 974566914 864993393 906738426 105657297 421311698 290452312 661421815 294617123 955689360 23240468 123824337 575877396 916931352 198513448 382478910 419524833 715428524 355959918 949444637 300322189 375273232 738848088 993242561 191773015 886094776 485340632 714970956 682941278 908836233 612507943 945214014 228213426 663498138 974852031 983136677 303625184 811342997 204915706 368791057 975501979 998716667 940914706 974964443 655441341 944464331 809469991 860248495 889219615 938540997 991447713 998657851 845485436 974081076 159808715 930606623 752632281 897860922 559747470 659661381 693191092 784396080 978042109 984219908 269912899 693297474 278043737 743481728 19498717 175134993 415186732 992871711 728169016 880879687 488772632 847170977 623358875 638174379 244048396 277658692 544409844 774626960 602077163 647055657 345590126 731331816 51875168 166135615 303973518 739077345 963025097 963604617 204555534 977990373 39624263 412631441 629743092 708785535 645465713 660904431 424442959 975877557 495496607 584943839 197078775 258729037 865479610 945377964 579162246 962799384 399374546 782632240 83483304 280514954 246758353 399749841 968801073 989442070 408123656 476490113 483459737 844088856 709675689 718858555 544632070 997284053 962962737 979806892 14890276 694631967 534357559 919420928 530508669 694617602 653447954 918013147 237014725 709770091 188872518 835176424 299548339 451449461 709045139 813260092 261140849 774977068 437655897 525733357 835996238 911947929 765570966 963935899 872240716 885580632 987385664 988527563 29849227 604178128 949477572 991425553 700340142 964074231 251926590 683077844 120882999 294116118 567915448 898537131 460910766 570743999 141209093 821735457 71646988 741880244 495196073 971352407 202936085 750021428 199663762 418045611 312580237 747974376 821083787 894978639 966162391 974499252 17745721 819103306 138295937 294970821 774909769 982959077 782925314 988681965 12298139 316118180 667597378 695807537 68068635 240842643 637186243 915766856 75641766 707341093 751646712 821925696 675525276 880830634 617476545 718695328 377183669 957409361 782162969 799668415 868061195 933339395 423162973 667314199 194960224 521072964 920102470 922875339 304511402 431609812 877375983 949890214 375059697 556563219 407683517 931090364 107077322 502539717 642782253 942397416 397550980 736353866 439718230 668331292 708508909 933665184 214902709 821312919 824619879 960651888 41119887 293442502 208933636 576368939 66627055 163461030 755072652 809088564 612780527 627067803 842856386 866858247 369119173 815433428 342378905 442612018 68173890 139329605 975851396 992098802 940231872 981858660 909068760 936472892 881005034 892330997 278534770 943512844 924823164 948093484 817681669 954439677 250941593 349285822 384052806 954443862 498257746 998346576 184490063 630863725 109779127 759083203 979529086 989192684 49390148 923417981 543712724 725186364 94547873 313875051 334887717 734189719 806432820 834134770 182261833 368630700 565203042 588574342 279848432 318607898 381492330 532796951 504642941 699094786 636883358 917004529 81928932 736548592 92701739 564889521 659712883 788145060 162909683 440294944 740684860 847098116 685362385 922349340 1567854 182058594 185230170 768395373 618211360 739212545 225525231 275452482 25077816 580089520 882160932 903749100 973038179 984997056 496492661 697229731 418336164 724049573 813800263 976345874 12557759 666107967 602826178 973169402 404661325 480569968 787761371 958405509 40088460 142280268 171851783 697645667 23311441 886125265 128821157 887302667 226493725 432981877 773640022 955336791 514103422 627351677 234114366 503777393 788060421 978620936 108232054 969759315 64588841 634120513 652631349 801844903 683999854 933094010 989833263 992020022 112014413 175331912 714399852 824842259 882922248 903523906 766276265 862341010 162138689 219734526 212919698 611389714 638125155 980610425 808424417 876956164 274658110 369959031 69733358 119737281 517154435 843032760 27614817 775156090 726434022 907543052 769438643 881243411 607928631 765452487 149508203 847230233 720756941 724960338 38533051 624275699 654141925 717110141 488126430 535068781 197177339 617936265 499326611 596322339 226164601 680985112 580388775 828124587 26514596 919723876 306090770 552026018 15780278 54483458 598243287 784213160 269064744 606735985 97792584 780072308 271803024 449537242 314347883 442900894 563097817 597664179 584981142 615540808 297441078 981039028 836302703 871916168 920584342 940229070 976510141 998657549 404584645 876976586 424628599 502759071 155501320 436536870 276800930 501367362 440616251 513706339 475810795 650659021 316131030 621969134 203708701 958585603 966979707 989545962 715152116 831137820 697641619 986708884 28713677 893013894 682983032 793037912 26524340 534595258 212047024 950789087 995826235 997322663 980574253 999559059 749082637 835209283 618322677 644318361 564026320 923264235 911726710 958100342 542636567 897662568 519608263 618598296 94310510 950192939 853437989 994913156 927006447 987133127 603859725 994154730 142460148 969359444 819169812 968369241 659831471 859345402 137642284 816719763 62537817 880538612 419286014 702943483 191207213 857682851 487934780 768391098 6650633 69173528 798961635 909469187 903447871 947504248 843476692 984381188 537220324 891405775 403500084 651119930 553910553 956765013 801503655 883735120 999509617 999648560 234119854 595769449 381108790 499112555 410320921 443189149 141579292 895888829 275364342 771614813 557845748 895149577 921558598 925283370 164121780 892786724 999456000 999883213 982540005 995701270 506094092 883262636 514507513 818479054 209963496 455793273 450027283 622314930 27174171 723750023 479319355 701309407 199934940 732433179 421135725 656587380 228441594 457405205 849226598 896563195 848420562 979040786 148070665 439670977 633225296 699423940 348661682 461058177 536254024 589389951 261808105 873795634 844624475 909069755 191614085 761275545 442275216 681178133 385430706 793798643 456831466 940433986 224931090 392975122 920949045 948651985 654365904 719567736 480838043 615986229 696114542 789224371 961356697 969034382 440238377 674716743 514236631 790392978 661671395 734679337 319266866 867299256 701501607 901854026 92719793 463567161 387268942 526412575 788037604 813152630 520688916 968475226 494080816 854495520 109090556 590917990 384026650 681788673 689663004 981899393 94279780 697401709 386250956 817770591 339403991 956904190 252971228 435652825 605304568 997510864 464414124 785330878 372071898 497068761 426254343 459087750 663722335 916456297 943701918 965016473 147430643 858942532 231187369 981951056 381608149 927117663 989455526 992293765 408537810 621997942 503746848 772930408 936544010 943567944 998555123 998971970 701411747 837247820 725321993 866259082 1037375 80826314 636825587 984638848 313379002 449813016 775725578 797930328 396288887 880399135 926463855 934935153 187482519 416159462 843950672 904781735 565362429 606274251 141180584 380306484 151285597 377173895 465318633 924815730 492661314 884932669 63726134 70080138 577641094 988469666 595922482 992800254 418093339 430346653 893269697 947687431 955810526 979241866 100199515 310631824 551073197 599908452 922613281 935351813 451387535 547989631 501192454 698547284 162838106 824496521 528142263 840964935 643220954 692839921 357187665 873017247 240754720 976297559 13327805 323052260 474966838 964000131 282421697 855723673 625539031 827021044 722989885 895929706 851540480 868824720 789109488 890276135 709579554 765091147 671157784 880903764 811271615 837766456 771304142 888478520 243076690 349964773 747892107 836474807 5021326 958917645 967582858 997452252 328213559 480169269 797050753 961661448 805286638 858754124 191128290 571304371 317922231 533387383 354717517 694738195 397826689 930419698 377517793 673686910 532551521 645142804 597123004 634894473 459693027 988965182 464043221 849375379 875970932 879320510 150716197 429848509 481586403 534114098 245711385 500797350 387915502 468501079 596137175 903668510 142171349 438783516 110514693 566488677 179102971 227222797 584007192 625154365 635286729 774135028 809269624 841016679 613849807 773843979 149947495 849370180 705944557 783689259 273657742 752442341 959977299 991757257 666231848 958630790 29323071 328264034 679986275 777258213 239927569 492150314 295073716 761396240 24462508 261640645 114346466 340760555 832897422 918800750 110354560 735189731 684077899 762661469 602566501 834863987 758196821 871682721 961421876 995533507 152438856 603488638 338555921 815505376 802227127 833416790 959005453 993840122 865461290 898831245 551333697 560820006 770298105 942323871 626924543 909838537 984038071 991760565 374289644 411365334 580405622 755036749 902045725 979414114 734799950 951296682 604514679 790903063 29263443 931615108 314741817 619798990 333904481 538578952 205690214 394124547 590346730 751258083 74188790 664048847 713545672 909114165 319728953 509615523 770338110 913731294 547958640 561672103 73752465 904349384 623772677 700128353 228752839 731271576 792635367 845937374 577940756 827806373 483376184 519140279 403360748 737226360 480188425 482134125 284461633 656860459 40512645 848858617 257173987 393558618 754975732 900035719 793704759 961064149 567801091 781499304 971731967 986643274 382257196 887999941 57107431 71758036 671973296 890908039 926496107 971861581 944826204 974163542 867414252 907236836 854273282 888648095 452430607 819945027 340315342 582816401 515061900 892935481 718450326 934748493 473831074 619315908 624900522 766532810 559643459 628139063 228805645 780639871 383461815 852730395 683695388 877762264 914312224 976361977 159612055 320601631 888119535 935873724 336461627 358862887 408446663 492531416 329530454 571593778 530141750 833932784 578763214 961758291 328635583 519788691 735782182 770817796 127852668 760680484 740103936 899797527 809217100 902355232 851506603 964205275 615699457 702080564 180977155 723775217 143075854 898602093 670057264 805673492 796402272 912571021 361742269 385116169 618247515 876958331 637190249 815913132 42730403 171910327 768846675 861714410 224593594 534585128 91149215 968201086 432502831 818829347 974771288 977257264 388413879 464915276 474741094 534787578 680328665 931775345 296421396 352622058 481403581 664106576 525696068 686000151 900823724 902932653 94343106 861593150 302045881 318773511 819101595 833424671 816029760 989054764 484884610 799693498 69181760 221444100 388522665 426127341 149610208 379740394 305941396 382182179 194539154 661543978 805900467 908206966 343947029 726521449 834486210 918273454 478782659 998104651 299404344 649315224 251331635 611941338 494432577 822878708 590040299 921258310 612189897 725691247 59427438 231587394 506838670 750991003 961396965 996756228 928705443 982972273 52261134 629250823 4360588 639331186 915873787 991403687 207657178 479948823 911623100 939285520 905307494 994683045 46605461 583463900 207268340 835031616 951859839 962510650 834189590 974970353 33145855 919566396 723907336 729615845 280096908 794745530 639633243 825350234 605936838 691381075 51206308 106504785 892110245 993269459 165334797 843687036 565662368 840860847 858080109 932220155 627928577 838994949 881320964 964491656 96483805 789680317 905112481 959714213 468551092 479848718 898582488 963925211 40736282 699085017 123220681 647798051 43559350 600496561 394938025 871574838 805787754 907587807 615964973 977633285 566964713 576528836 815361222 857248570 900578050 975461164 692528110 713868856 951510125 986816662 379661712 442711227 401218704 639636245 919693076 994040039 506827465 820821131 327341159 422298508 165177575 220040565 536683640 626741517 264329641 720114716 937434490 948444017 512534124 621469139 514267799 876897906 875748380 948726751 952923678 987701648 887699810 921962580 911166232 942135910 270661176 713671843 409392865 621360643 81728183 491102714 368518450 614392502 355058806 810424567 29108896 395038816 76394182 822783160 630816853 871850140 725814462 824624415 246886100 748691891 392362097 464413081 628193371 700575708 530055844 722760446 244702204 805161488 991753199 994622335 526923940 954459034 385204281 511155329 933138334 976469055 545150470 988727066 741001254 822186925 699379231 908827342 176751799 245492352 88334365 838740576 574555236 905829626 624250601 829909741 322620245 591510525 365016199 745561243 647241036 879017512 220713203 276638734 398669905 809385424 163752478 535499470 601233934 623744537 476241645 912290912 623287913 856075295 542215917 733737949 690937267 724344235 84172442 645495133 956308110 996471524 403397693 958405818 87638258 542268754 562261184 700557668 783349925 874107040 872058750 907741567 464446214 505166169 297026353 568416245 757621855 943688635 249650344 670614559 226575341 720121281 19027013 783007898 762086562 916423897 820712109 873267628 549705610 777886226 893221753 958910268 115546 216470990 409563681 459580710 294397317 792867838 632236475 746252814 366806200 768116812 491430450 503218615 385998152 504838094 575196711 740734101 433769596 551325613 667403646 920960350 18201970 273641069 127579741 766878324 892662419 936393188 625525810 786585752 732877056 823249082 299365946 634239742 25461078 576908429 308095669 509247790 63915339 593141243 842824717 864948957 454276660 634580879 847344943 989829026 338042699 612358483 328311002 482668845 977266095 986026078 482150694 508059072 66736357 525030362 627652778 823158628 930839787 974242514 56952203 825745600 360372223 875366260 861916276 899183684 122172638 129088127 747075417 841545924 860125420 874022713 581577796 880376826 181613684 983886166 538095680 984065941 437123438 449413164 151170278 158678085 570231076 971804666 415444192 813632123 435139141 970380868 666333598 841218334 109559822 580651050 656989021 676865782 201280827 317114262 169989283 182653338 532822716 577127253 765902245 991994940 791346379 993869868 383919957 633052832 800353972 922906484 479966671 948138561 450337730 960783431 571079241 918852867 445944473 569083390 125355103 838012091 930339981 959411016 413365025 669814788 503842520 735626802 96261011 250351941 815339783 828847579 23882655 734112453 853139202 855378441 496799734 612069437 460071267 552882772 267202270 764521382 383878252 626895205 632325561 751718951 749243557 894389322 460867967 869010052 153913264 721833985 125596802 657504833 911811944 992910067 870158568 944953450 298469337 624106173 398844966 896095182 396199309 926623781 98922742 116476816 340676501 406014943 666201357 782055036 408954968 504937212 868454959 913010019 351747859 874723251 212425098 384699571 351088707 767381780 678519234 881149879 610724685 856706133 320066602 487939210 440220922 601007687 222550943 451483588 935361056 950271013 701813491 899455843 150892383 500767459 980358036 999428939 447644246 746165672 950350232 983526859 737406179 836335948 935695419 999158955 668084704 769405131 205042513 349305766 35566150 904331644 782352364 987788817 523770632 959926071 517543370 944528378 352445232 769155178 713574618 946717322 17408510 811079913 863662941 948155782 862750583 881523261 343971242 530552217 487098436 988239958 488680191 649824660 697103772 796002126 537354985 716535342 74205392 241468395 218928937 927892078 842726829 864950121 230823421 804801154 582066408 595246248 26859303 209955499 460818772 662338137 203391482 631831985 864146652 956309148 338452804 561148108 755383535 900350383 619905207 904554704 762619838 833086311 603571531 817298935 89411281 256450271 289731088 953385297 125107707 588935844 215011524 935955932 329114719 542036971 727013789 836231296 426357583 646192975 854225135 923344670 149029989 453387430 513941243 523101390 388281274 771424590 844511681 924424228 665383834 931763089 378475288 978030283 144396882 734130538 719677180 795844320 131989856 821161486 133889374 668481963 134132540 265409470 763634108 792024149 279537438 656304653 244675671 308465959 99756916 737434345 191722905 776818767 706560815 797571912 766286177 840170647 39087277 942098923 537015162 935512595 396861446 691613135 294828870 646786868 656344197 772046746 104298042 947568572 70667436 301778977 424880067 921447049 551538680 907225300 886824230 896314543 127108349 665804344 84377953 287612185 646095016 673360174 905980654 981177701 148970281 200265081 22977196 646848569 388427485 789847983 154557099 989469516 981238807 982584949 814334953 838354427 478944396 809818113 270113555 866809401 930103944 949515573 175874917 990597006 964386437 985275187 484369064 904363934 849588392 966550661 336533944 396147773 984221431 999261051 262299970 951012934 83044546 556398559 911959131 927016188 319954414 744249296 506846894 915216732 373670374 414472550 179731685 241084633 744750342 747482561 834078103 954350457 184414590 399624530 909640520 966964716 145323047 927325640 453966571 570490002 210416246 758004274 850113261 941968323 470077593 587537824 822720037 859041996 535623630 847545222 843610071 889289744 154446342 671596536 215432041 356146319 263357061 642868628 483501475 668564390 635257412 760208165 592604803 656197113 722949655 814432118 31648823 546208961 84806225 685076344 515105319 976255615 235841914 916026526 631161377 909694379 218208409 344121546 463930815 846586459 802539614 954120014 326188446 687320883 249910032 340475985 997407490 998123903 226658117 711734666 481591686 584259803 560946920 759827305 309455593 313001811 128513427 901559353 471089809 518238007 712410498 879602515 896448657 981483149 255648312 789405140 275120303 675945072 336748059 664791010 646608832 957271769 105478022 137590973 173442644 833647932 56841727 151710827 427425069 892097290 148193494 747232977 696340361 836393402 796176960 913753028 206853581 950923349 497626711 834542210 175590266 326580815 622734884 889136212 622121340 902934959 588506379 894561313 890106814 913749733 862184164 869873202 144383082 447831327 718763541 754501917 680523471 680655640 649665965 945734172 193155480 298538240 370749755 961393779 367624565 890444307 965124881 971005459 149052728 847540852 659802226 792849151 523685813 799014818 174205254 227509024 60122441 332917896 648523484 692445706 935227314 960365728 210052865 936062309 95023994 370115833 489594689 550619631 949007262 969105977 676086058 701161295 235329917 785310667 649715940 925628977 808723393 913587143 245862478 852679079 259445690 471911241 783868604 825638333 422827256 894433497 10436675 546254777 133659842 247386857 283360920 937470167 208519839 362813085 409754380 621417391 944189815 965897567 459108591 614834041 440842461 565198343 232340418 427750672 976990506 999766125 590881087 639868037 541299626 993485781 247206348 947846939 777935089 934291970 341148431 793967317 681613038 789171709 290636647 677972840 371575449 587791261 538653266 553995570 213079487 882219822 562246888 952672423 57377286 606455256 772921716 796218371 123084131 594235673 107302131 608318371 494351380 631409384 742310467 903907267 770609533 863225874 434631053 794586591 472223173 641569982 768893168 922825674 685367852 763572484 395691671 532518157 257148986 578217624 445599528 723701974 791441069 875451538 861523160 931630063 815694980 885425426 606988297 652158676 549545970 689816023 949466653 963252994 626973378 900240045 352993220 693858372 315737413 585041423 222937690 250167512 673770102 906673583 523743968 644439705 71038298 917300278 120675437 356853470 308625992 444485658 648710506 794361478 763771954 915512392 898055319 987713012 623096865 671776319 131101042 962837944 479666935 803303405 695756955 962189279 268574487 702315370 474207589 482425225 379516088 731507997 196602413 229679771 677142195 846415060 480632569 690350218 405694922 844627904 159291617 378051770 979700265 993295517 717154064 973749230 576620428 623717800 99003788 265488233 250826591 269573844 767426710 844924056 703178070 707880278 110887968 443636623 650858967 849975375 654861536 863329986 910740277 962889237 442462784 693275307 824450725 903399913 24243898 127765427 713872273 853027683 780670891 941920342 297711471 784095540 991151351 997652742 697060558 912714505 751670501 761857889 374118823 753047823 691496916 973044117 819615833 977769193 235103063 769816300 451084889 646105915 973168575 974705296 569977434 772007206 763491531 928083974 316688830 840328676 543343657 765107641 717573679 870004008 597797282 662821131 364793917 484626404 878255337 993322897 787921488 801121330 10427433 742442851 585223645 783818679 807379664 863413117 618832597 649834142 192074904 999069341 915439546 953040669 6236660 432054805 985901239 997483649 774330694 965764703 11228497 60097491 840056113 960640023 346008232 971821899 970715541 976998972 377315101 467752567 262726052 654786404 162772135 476188388 569836047 890428355 782421308 864272889 837948889 958834067 65993605 110952577 586996354 683136967 810352574 870166260 608333174 975707211 14587886 117856012 50731212 354845873 177095357 464812646 582371890 815188490 836285387 860224514 835722285 987631006 415524722 926965995 973785299 983895491 66751393 683630467 508799480 712722632 268250621 648374259 109842793 563109260 646923522 671714776 825071111 911730373 629013275 860121103 708126468 908164251 210889390 937786531 431260692 898262672 965166721 983391773 148372155 496446695 362544049 369519660 457721894 950719630 430835543 824342312 85980772 270545216 935662328 948624992 175759363 589781798 407817628 569755983 482508556 742204326 179008030 898612004 406447636 830262478 545789875 678690884 524971402 693760494 953331314 970618211 708156837 960827125 542504620 623144257 413384081 903862266 518873363 765503629 540737749 861077474 765751964 902216787 108168458 133095114 780551075 985421673 587854688 686293275 824603467 983770052 811799856 925238159 216013349 843354739 258463351 812582852 419484905 810772022 32335882 959558936 351781172 468266002 383321789 415614571 202028123 745096209 421856059 613944441 519181827 857218747 103501096 786674661 558277064 642147747 638015312 704019451 344148570 901682035 419035951 485073016 473539101 934800495 340741469 743807924 54631894 843243997 701428347 923751488 149613884 894917030 787844449 996403062 598661760 712561095 298793077 455162465 210827115 918061479 133398063 184905044 176103947 488549733 906932991 947493913 285050008 841890388 717084664 924417392 681910220 736211761 893386301 911553920 821414024 926046840 598650045 762446294 901225609 994276074 669779388 874498689 777369531 935814896 292942687 481987610 33734306 652785168 642860749 727831435 887270891 957287168 298120511 418488691 835815487 878711716 772762525 867330932 750871143 766045421 604804828 634529240 347337219 960224838 741687133 964495671 886047493 918637681 86157622 721794142 466044438 537094869 641075181 707965694 931001614 971630719 901577329 956401821 735161526 765612284 888728141 996279119 293107022 319846875 137174379 783881954 191307996 524927750 167849647 485030005 803030355 997434782 69740290 245124904 739012388 995619554 550705343 581777300 207954310 261530194 604368595 916876776 740262196 927888259 574766899 910845040 327385653 504733454 891099186 974765790 571738030 996042153 170835343 306886012 513711434 968747992 365980048 886630201 8239132 868612928 648259149 933233993 525949842 750930622 186858788 768334048 310122726 365764638 710349934 974327119 901369748 961768393 799970432 837108379 912503657 954017538 433871900 797797232 616032442 881125755 166757294 922526270 615490238 905503634 265570122 757332492 394205718 672914169 142736078 366037402 85125573 729517803 679702586 902663502 644344886 753248534 394006900 553914795 143835622 732409114 714660632 972593056 827456021 840878831 216780678 637535153 205670478 749734220 942834111 948398847 474064892 579316281 975055831 983867232 192602556 533900940 935430427 991635046 653030494 819748525 492414935 722766971 85385164 347905734 416985843 883763940 772324823 894287795 288366431 571383284 226240351 460985138 675219328 734346109 966002523 996865316 105057362 338180595 952490117 999784249 473421582 534088064 443683250 528352271 484417590 529617006 1732720 330635871 375353730 619146030 509248706 935579860 804553756 817331636 944436027 988217479 576707007 662910837 334327183 507399459 684458380 854812195 627038746 703422138 908934029 970559199 132929202 634269521 607111314 975860262 66232275 598701710 938458558 985953918 871203533 947659593 409122249 696484854 274184878 942861016 197261943 269681961 134091270 409826949 287461209 677236559 230062542 305434731 218985555 895424183 766632979 782400369 885804177 901719370 994476823 996624018 102658141 269905856 910918422 912373902 958154279 984458620 491932101 902646199 758769990 800715517 253251329 667841065 363598498 450075538 746451462 765363394 501754934 789396830 640619342 895699394 199447486 977797358 937981345 944138742 320734260 855558218 652628631 655286430 49595839 318429124 948347433 964231954 776455933 835503804 875747366 936480150 661770684 959494336 55964818 512653946 558819308 940585033 480649913 956855421 723144145 943765784 737966459 902880968 930331338 970135584 224637771 731434643 915221050 928088157 489309558 714794439 97175391 252425254 42017494 929769866 572986153 803550255 249023226 511770230 928214967 949206255 79988679 107571985 509576489 882263053 326320189 983536514 552464210 963185158 957144690 964170689 824472692 901242039 183468096 545427224 392036786 427396407 530984205 724216301 515663395 820340217 849099341 872161115 729712222 838189436 787362344 937363678 917579490 998242132 435900249 959361418 894330422 971140962 402338528 778160850 716044634 898452139 829913752 877961952 680228958 923073012 983024480 997268657 916194664 969245736 393985653 902964667 151115667 199499190 7072405 208393459 798049920 991309985 164837800 781578112 129244054 378375475 845904410 974376114 288307472 863936613 951088503 963409587 108841842 583146657 642146758 709232701 179451637 596069534 216750178 797208864 423396254 899623037 236487961 411506114 281534486 362878064 286203895 578958586 33243845 132092044 615067149 643883278 705319597 742981302 948592163 998757916 609904149 634972998 604116361 997825318 546765838 899036045 725180885 985151926 304227480 916673097 671984302 917036082 399433447 512149256 162619549 225022572 446424505 651846727 581998927 705788894 232488071 249082484 67968166 278390637 468670481 996881301 129834236 768500860 828636429 958082484 361204827 909670537 541396171 588661928 19898027 976613329 297241066 856999258 149739847 770640196 554656331 632953722 899593374 972716147 837214246 985706008 430409722 891112637 819908142 966893261 253881671 473344592 443896033 850131029 43569474 222613649 520324335 945247586 436685369 502656435 867249715 936099234 528730864 925576484 971075816 975789168 190739392 588860486 752686706 841487739 661613134 960942861 401760034 484765569 873397780 969637705 599865842 996796230 681388435 819149182 266441216 362773585 728501852 965667043 160820393 192186191 186977992 858741979 119647282 323609501 455382299 511463081 274169969 311265145 847660252 868526956 842222209 943856659 316422707 491444496 689032639 965775608 673906036 961951332 14145277 954079578 80846589 753829789 83669883 531803124 593854900 815265894 453697360 845215762 330394594 458660754 729109250 735120315 848599948 854731467 93546486 103681286 584856154 594379827 673083278 976166250 401212471 622679729 214931235 605054490 370139359 625769714 418104707 478761170 754142917 827915143 505398727 518546686 493759970 782141580 599781739 740437855 215570809 287775357 695213436 759947589 588045487 690689843 208342080 249392146 678231240 728486284 148200613 947419517 888332711 891496480 790728756 927984924 610782077 962606309 240263138 688779982 532004902 826601009 701170072 915157036 305187190 371690247 621501144 763899517 977633926 997523958 371938708 822856172 305237729 361985445 649086301 700078614 585701839 757728133 523020768 953558042 185867487 908448788 434868797 665685738 417881373 615644681 116632944 640438115 579764033 869467683 991226692 991448349 215340188 998046621 630363180 795147786 492466787 896637343 54797488 183671568 86068731 733217183 85712772 793386777 760937722 857538019 649717280 671599252 946815311 957820181 49071731 637054535 331715519 640542226 223862090 282040704 442810407 742774045 803760400 812442538 420584668 490318951 65103887 605517064 545901305 987253127 216983319 884736534 147548747 249296153 296724534 499650481 239263911 707878701 507593934 929176158 55016467 723571014 644274085 667143411 940972179 945409705 797413720 954883566 152126845 622013164 371136370 871823553 228063163 742163666 798615064 863868843 497613303 524232368 512765577 700231828 131175860 473523655 897175420 989781541 953962200 967555842 482229249 493217091 116722533 737832101 180583264 766624337 57680159 264862773 980706772 984939268 15839223 694499884 622295849 746307598 44681187 132981582 453062504 715386840 645329315 945479231 928123347 936864417 288440203 646509893 273478441 729083937 861597894 899004033 171117670 233027032 511722428 642512515 123955785 400221197 659654733 674924438 66653307 649406674 113866875 443059747 16154927 283925641 13852137 840366046 583674139 683850181 584602946 709956620 892511356 959960391 744638217 874102849 267084984 700568762 169796169 764716238 353334719 363264910 577430099 920117406 15518081 616003356 753657487 754812311 747142848 875575811 717996887 853303180 722097306 965977379 961191603 987038268 901922624 904666226 843178779 898342982 93091280 905452319 253123773 699879064 963659480 991014925 890679124 974268600 709242838 747505518 324576139 778416533 85910342 610101206 751469602 861185066 782486508 899289355 392240257 467793443 758936559 995698410 460519824 638329766 577523168 681258716 215754972 684375204 935319541 947369904 552015001 597956372 585776344 592559994 79918224 122626864 769235863 815688269 312577979 638303216 757571646 874665967 869410336 931984933 779585442 927115610 194916157 205903043 153861013 785324450 327039727 525764223 851617405 983625055 1777291 480100977 75087903 183571444 228601235 473608814 485129227 635555928 613871087 909938721 295747886 678200520 120675263 816511468 433529291 922698407 901490172 962833144 659650924 893209260 657984021 974119846 252161017 702862817 114487725 732916221 895911640 915216773 55834244 348011990 351841056 999673062 407545790 634773915 30512319 93265036 655260679 841794086 73581629 87957531 770704012 859378724 854534494 972964963 929026003 973751274 826706783 878594050 772930799 792771961 348833544 799384321 759467676 981586556 633473637 995255803 137011125 472325512 215884813 550277284 973416970 984390664 945750122 981945978 267959014 984344649 22628684 279194397 73466796 303920944 623883888 851212215 109419392 977739748 697024923 884965097 714775617 753634866 424374429 918943056 126294245 449323985 102251660 330008001 31975828 282617233 415376323 726742164 774555648 843924220 153305542 923347900 434180700 654904278 67515900 236704857 702599403 803663944 890157251 944346651 691384296 886499414 138471137 328759080 666220437 968874993 423895833 522250980 269297287 979979887 56667285 767990822 278871276 669992220 610178784 742601159 786238592 883642082 926345966 946773965 369344104 890378020 62639824 306586351 344094934 682508178 650853251 800973757 887630761 972929405 877981855 909734798 323653716 355274285 502882360 646895792 598676238 730348623 942696062 957155270 144665833 930239491 732175175 761654756 335700157 627229130 123562151 172498280 927590476 972840039 96770831 646908570 249944153 723275464 63374114 953863569 703479625 929691999 26001120 364723002 104828426 328204676 703955439 765743580 62512422 901906165 897516178 997260568 875666928 967311624 196092049 330314101 844405873 964805061 603280436 697087365 60095439 919063677 821320274 874718164 339283099 764693674 769461292 867464978 427656179 847211256 343776660 736261965 471802057 588686921 71698808 852927645 391327543 707662013 702021017 982850794 7253428 588857906 962219966 990098078 736308280 922505989 863943660 941867507 959024293 981413929 805662172 962241625 721653709 875865018 274564251 936536966 644183940 709352384 268347574 994324475 546738584 785074382 806529500 867006584 351728430 967388684 649161006 658255527 828233568 854299302 980799201 993083736 511237192 816529898 165892174 816629167 357999438 520512946 770674067 964808949 213154965 949257804 788639609 812979779 307571417 930575980 424419705 475070708 625131586 942144269 756395106 977219519 655153619 716138572 527818019 816424812 437771486 628208312 169407522 744931627 942579797 987439248 278546196 564491506 2595173 8759077 815910042 887467708 362565412 413659627 127518494 725016049 19301436 933459615 349091532 383502495 693668972 806868802 982157096 986467777 278167457 400726849 163224129 646000017 966927656 969814335 891445989 921920198 457666595 476129688 770474796 876786623 631567087 825684174 416444271 799813883 624158040 962479977 897084955 987580803 764107516 777528540 388525879 746124615 823364746 884113393 170746825 496600191 23899821 233885140 526249180 654349233 763241806 879662978 875115298 996967452 974051145 989496878 756509374 996020434 695033546 865209423 494824164 945305280 115120351 995652097 805290355 870050975 13745222 412957534 771412233 799837760 677704433 956850025 138583479 222449240 51964366 930177411 594899980 662469929 919547698 925887755 390738898 448870973 785172516 948855116 636880658 757161544 840138297 854067070 126635762 947136098 653028194 875787247 812478373 956403370 440246026 599658072 352248498 902704974 229274361 280238362 716704233 800605721 942585558 992270366 735699583 955433493 31821892 264319794 554334648 948299051 472747461 734111309 732844275 939698217 230401311 596583296 980790873 998629833 393404644 783704505 485905447 614064664 94319627 335466457 143066424 707490480 516289948 833982297 291045780 928480454 283134534 743292010 647574038 732689342 14786060 221346465 722632862 940187639 256805325 539293112 820593308 913204414 161016738 631244062 524954191 591523783 992766165 999059684 170276578 988739400 125817591 642552434 780676112 873042930 570703383 877159868 452827539 698862532 587544139 789693879 878737631 945459267 423248504 686564357 818694095 913571632 395430223 458901470 536622338 559331335 14632061 671296948 161861630 672573221 414428373 836591474 310584915 886992416 749265312 797173146 963590810 977010863 433852119 565923078 670401001 995081341 759870359 981343887 600295481 870125176 780364832 877714946 378392175 730491436 10834051 208213563 168779752 560408760 380238712 764216539 130137803 519750926 535986163 944326394 51678550 986268684 413716678 554023456 382559630 549547098 719916418 831717223 71474250 681012510 558191705 912584824 303283581 593409061 335249312 995294495 984050867 995791557 484861685 885714879 94723882 234626716 713308727 997607238 457535555 680683869 679599235 728192818 989753152 998549190 192979818 474223556 624224218 727399974 671515657 784655549 414532603 658438423 908005839 972648880 614368857 806891429 961394533 980106478 599858753 995886660 63790182 956155136 579752247 983148764 54103895 189571782 271305220 841125508 194963297 831828331 905489925 958613019 952606655 979746541 827632693 990363671 53897322 923403575 11518787 430799984 97605436 354280208 684331781 910848446 748446058 913498871 468193983 564689174 216087265 372800667 33059851 706599502 532011594 711226710 86221919 333758174 727746392 786170401 168406648 799096245 191922875 975135732 528250076 977169167 26273743 219728947 721754239 907684324 38482204 151045164 274773064 839007638 147433112 362662407 131829033 877333936 786388026 817163694 616631545 898577444 890469861 903019907 602683610 888787227 118532277 800159867 672265704 907101300 341474096 368973869 582854417 730916057 334502885 514046983 16594882 608958885 896373896 987562278 326033161 342514930 241448759 516895261 46632994 967899031 262294235 333031498 329705885 976983574 109639092 952217174 826754104 902045061 442947983 803263795 728609474 896124244 805067382 981480583 584689092 996514283 247002948 415309406 790800841 803708685 16975301 243210215 712287525 969687215 790029371 999434880 242744790 346384863 183810958 608049140 305218241 612754240 993618675 999112682 596900470 784179234 475728176 618295250 897908929 922865281 102482665 954523346 838612687 957220026 980222006 991986746 57318623 437169439 533864189 592365689 129935199 934828305 971011177 979776931 635154179 699357515 166386583 546651781 147222175 596849076 293768147 627858338 495030418 778039169 808257199 975671744 270840312 773750664 301901728 965376702 878637432 992900424 972793822 980303812 45112067 504802615 633806117 740468501 417225764 702384970 757537058 891333823 114837636 659485633 54828350 74221816 662478475 706086099 258722934 969361753 300122379 864965837 766009696 825043251 360750932 760180871 339932472 926618393 667866651 884575670 639275001 928293885 847106030 951174116 780789571 787793850 664599184 863361041 319933913 751229714 749830324 848751415 751215038 856294176 931035715 974491193 925656601 987691063 381058396 848819887 370866031 376749187 54857730 461027066 308174606 785269526 1298119 307702560 782902402 915731879 929977524 935446815 813595844 832569758 303681744 367004222 178789718 791813404 491142081 529757812 799802341 911859474 684717751 921515045 245072961 466515371 344692534 877352588 821052942 968335760 13622991 870471773 393876575 823258356 214083618 909919701 880742861 956782604 482224558 950948760 561833680 618630156 576035201 675777386 10898422 649943982 786265075 792366818 408774933 621297393 921912516 949037103 973684576 994372768 369509493 858635447 637787063 716194804 870906182 981915709 752866233 875874724 946543235 999352296 174394882 998535205 631589804 743037504 580187329 703305632 740496352 972744433 950080243 965263980 672582459 919333375 88496143 480762939 106104771 438271437 718213632 981634129 90828266 392675498 866712583 991163488 291361780 739035863 957809306 966006973 367432037 484202548 951452970 958231167 822810160 914137447 134344557 201557686 411711327 492838479 41410060 770715853 689972658 748271677 894665462 906329881 828618026 939740385 959610473 986577383 891532398 904676134 826270320 972977419 96863514 713546560 251955551 519429758 213021896 286418267 481890762 522884042 631843141 939342456 843206996 983114931 698207204 986041472 765540080 943938032 953686440 972192151 339579471 697069393 407050769 420222278 714215761 981943716 899046829 985572697 196589843 856952113 183007473 859416664 674579799 994760265 280836225 806605517 828271517 944210478 331229570 683282679 803999312 984434661 340512072 613930864 790720570 967348245 594220708 996751642 55557334 230759585 998420352 999058989 243941558 486515886 353966560 399139755 558222310 683347813 901252873 906100736 237982955 930618738 332148722 466585307 919650033 980584093 521876777 646708120 627608534 918321569 127699170 322131581 548160648 715091261 788598316 844973375 765468293 973331973 919196816 970760520 354817667 396623473 497328868 889317269 187509198 885903835 645646582 666545302 209314314 926080321 360288449 524283423 367360630 966779416 911073949 961971208 746010454 853057252 180466820 680494902 711399308 959659361 591249497 782735335 576541488 929223311 790428137 881218145 396942854 973965230 87452862 601614689 341702797 900421467 525109886 598449193 796244654 934294991 771368613 785834953 76015983 985007319 793897206 878937537 437855631 989120191 739402073 751895645 877902274 882958646 918142998 927831073 964209765 975624629 522824727 781002183 743133407 768270824 234887196 389652032 78007543 810744158 587996092 978606709 412540513 496249790 131395135 859884258 9866925 220976833 847736701 928997017 807877676 877857268 240588482 509822883 877490060 989832922 952186085 974816616 899332743 953303873 76213997 200991633 173549279 298001829 339958127 947678922 46788467 308146256 410334663 920969054 346636736 372976378 471273834 819399055 665039611 952060050 558629404 653431860 183032800 298461078 288864538 696137576 897214381 977573228 499894852 940872516 385861905 713615701 351116839 597211672 640731608 943498513 894739057 919100342 298330967 829383751 346112479 614959217 747236279 989122374 578288817 695797213 276756107 675528815 905833794 963875493 80379776 188797766 392439489 990170767 508853359 626682150 491983879 513311994 974730852 977453642 889983637 965829374 997236139 999428519 44550449 644150713 914650169 946473204 839252386 986850016 214556252 734557058 414417292 518081547 635637828 865458221 683528600 845744403 49948503 283653208 448977959 851801403 870570958 929378025 101660609 376214039 876194132 885404199 709914098 858780089 697548519 889303630 677583371 849364558 574520017 952525328 395516377 882491074 849875155 924217262 264168586 907697989 379708383 925520774 544488789 562234502 769700138 860556788 840054436 841547875 38081967 817257139 241617923 661733345 188578230 427388255 910179948 988176164 502304535 874941284 365355534 888358502 672534228 684268595 201954052 222284257 211087245 961358358 687255685 822636907 775435998 848384463 925267956 944139429 408322911 821233569 729688707 779774508 154407338 225277321 349508446 886458431 951240543 963304331 153502031 359220646 924416613 931390213 833273026 983428595 419069552 430555221 422810492 505953875 475814015 996332095 939783863 951599377 107775750 366698749 660954186 676777851 323130747 837149899 828284736 965837963 273573301 673432526 247290917 637609738 505202293 880862825 131931451 953222585 596931473 872545853 653015923 759110117 868008273 997011599 63549694 282639040 421581465 487284613 931224653 980366380 352589061 686317517 645593640 878174736 11009985 360238780 674479587 702376711 400549285 641638760 18194626 440748038 706433637 882133361 141117220 642184815 683111816 942232641 287372640 579204228 215016306 353580786 121461048 130470471 47709600 959298346 434800393 452169580 709139011 886276601 123494463 877743087 383237393 591289604 372118341 402133041 242578149 416528834 562714567 962446829 252898868 317481745 223210328 412311829 111938151 872671319 407616405 426178296 855093940 988018232 765166830 920662606 788234743 885540204 33671158 341931682 317983173 492096514 537641474 996680554 40050793 311724959 132231779 832026048 538676121 755427818 379608238 443268799 464024809 626229050 923737090 987975808 179960637 474293925 825332587 901685954 93960023 358787149 902215104 953000777 912469352 935714820 810336530 875821642 984451430 998179586 298398683 661018060 643794775 851779452 259749437 281749453 90207629 493883959 763154842 763783191 418793188 665703345 320718499 810014864 524074511 573050724 613160162 887198273 588678869 942897124 389297207 816407552 211791365 393742379 831306168 976008727 844240259 947901351 56837266 329523974 921240099 990594208 376132843 952187883 685315155 887920199 316470922 392293510 286653914 686005437 281475199 815358521 621848136 886750131 318399516 690942925 578870307 845903830 739630558 990916777 245606443 957077849 3941164 667530025 221811778 713284632 40475630 423849512 848605607 920703912 566933933 634145180 185884596 675427262 98965492 143286904 584912971 810495310 488150347 926456509 883230679 913470967 578494045 877393162 659111961 859450516 402349825 673579174 268347396 958915253 593772652 696282996 389273711 569430012 75400574 670350723 370501166 599261795 710154257 957936743 112216845 974330572 775184962 812909453 485748408 748253346 157923342 660510700 232743067 832086372 814725720 934933117 664480110 818244491 543810681 992929185 420179020 942944192 724969478 975814268 181645548 584786402 140081596 678932794 656505294 659427895 772285470 966037595 555224967 664912652 958326418 991739302 255785586 569257137 689926557 707416261 872091206 888093650 587745701 954405100 701554994 975545194 423755516 901239828 963261975 998302621 291718380 528623810 496358561 901023841 469875383 730794051 866745466 887659297 310904623 510228371 604304067 904579887 270227255 448897841 89286166 523501550 871655333 902682134 96958587 787980049 478086690 557815215 66950652 307965963 53389523 910544043 885291163 923518612 57767579 819568804 618954269 683998749 758510967 808794283 425164769 915553295 10802888 835987430 902727089 925605271 605128201 875854202 89013903 434623076 548558274 770513593 893652593 970402638 763693647 960271339 717261492 913897461 521809778 663018452 262946541 925712215 191373744 807068930 222792384 325419029 624735008 954573632 292708454 753389637 504608631 819626375 290066779 693598253 494728033 543155877 879104135 904674991 912129721 984444079 101391755 912569092 45299601 195946564 57475371 821160907 599541605 728276423 157738686 598158162 385871519 975853171 382766660 525734306 152749396 572676712 224044047 662025897 89482717 896080464 850936693 879102795 776668467 921845202 989599382 999402929 700189043 976059971 344719008 856603236 516296959 830869251 760723051 910081682 250102630 874921997 132887161 559344544 240097991 436382927 963315936 981760732 730871260 976151186 96167065 967162718 786669366 868491292 658260674 905636688 609406890 930927681 548947884 622950801 684208031 876081014 527532432 709998151 746964516 835605098 854829525 898206315 911051057 996875540 793964271 818611873 888797293 995543157 538825887 718462154 136612977 675077428 815772355 824035557 845744662 884369198 280472858 734359268 636260737 673386953 152781186 476396180 72016848 444946279 192832198 751166108 158163492 390676415 999040061 999245055 165571980 606990219 879918667 902006911 969154142 984602675 627395057 973329134 984028940 991130703 796137296 968167983 856919306 940932518 971518451 998019528 810555488 980540680 859585942 947098994 319804973 343817960 608137709 877221991 279397855 756652567 5107327 68051710 128574374 409263812 396006372 402568746 805834852 856747639 886546717 889271554 483969324 887361923 773498575 783198365 30088279 815540416 106387234 227381263 963118446 991323622 846653408 903160309 849781425 896067919 900123822 962066296 420682641 853040755 367402712 703581782 297692162 950162185 212156944 784023019 553933585 684856623 286200308 342184384 825308850 938383089 81702963 696626841 950797435 974139491 483502598 970020989 393538307 754635167 231806856 917255356 539964415 741505351 567611536 664876693 587358437 671909728 676020949 981677924 527690665 606556849 340615185 429804514 612644777 735933411 20255425 847761847 14911218 82743878 979538055 986442140 465241285 539798602 417098731 582446998 380885448 499346589 495211904 696020054 600472579 927117240 516936670 619128210 425857188 560257129 494917743 896808425 287383814 416810590 172258543 474364783 418751329 585579946 893562323 956984111 277673597 928696090 428729137 944007263 274190197 604193290 117906556 148123313 352816524 720206936 123350719 583653839 984761860 992234910 15619930 381258829 223466485 790075095 299309176 444357349 81256100 830918736 430690432 590669449 189857071 847324295 517776274 941455795 117723563 219161872 462647370 919363288 183317546 317521548 241368193 652534887 965739483 992492892 377581618 691076017 882840239 977263263 421067439 527496287 402844744 899648206 292191604 618227554 519218876 883255731 463823241 674369039 96633005 334420799 550249827 816611040 909024419 914533259 486747027 759782298 951341457 993786746 892237700 972809718 615404817 932458102 746875597 923108740 699480117 787000483 959287817 961172334 180468877 747391515 136043214 836425851 380662288 513160635 932997282 980346896 603526922 892306852 353367309 511754134 744722511 888074204 505460378 637292836 217847582 751678111 243182704 369070534 979057149 981286940 208666999 709454610 4992146 853848544 990498512 992729814 66393339 374526884 530262046 737102433 52237410 362198104 474021090 722432602 60298522 584247079 710320 97825982 960245640 967466975 880301692 992059215 322035228 390173896 264007542 579576561 763115830 952787977 434546869 910264016 624410724 987437612 632516342 701130142 435048654 546221958 628209801 950140554 267971150 371199813 387924553 402484069 503449284 902739374 489184012 803932551 958383806 982834879 773570880 977837499 477186530 835257153 636727285 691104955 123954360 237020930 15404973 331355931 346211551 713462613 105000174 338648040 495600352 551023537 109396626 199810506 566583048 863697148 971747447 994393975 364844151 615067713 146493957 453394074 436529534 740723023 859943272 985482020 383084306 531393069 271706297 800435722 434191852 689226357 912985976 923725794 885638276 944811407 724383358 765425811 640447690 685465668 716844550 816083619 216317770 601072232 927715871 967201517 649325534 712302428 530071498 679216825 11063948 448392956 508674717 717957085 423358790 970805029 141547653 597467449 777566266 909941502 631851617 992101146 232900539 927738653 687899991 884034531 162585381 760062609 907649463 939118814 247148815 603761487 6788040 416575485 689128008 914893147 915000323 987415423 369772661 465588081 844102681 986732218 720286821 879285370 99197792 419097490 806678761 834365139 855996867 936243287 989095219 999032687 296069586 373026391 436046892 776341936 349485587 490981850 103416691 209406248 556061684 627450847 568920045 793087535 600667351 709579579 340227399 837738428 236658428 811522368 909294334 990911149 718749597 998780145 402469928 449797627 935649186 962394692 444231344 463286891 931763177 982640348 799771270 873460180 856307967 992813863 312423825 797336254 773834603 879235155 625440620 826967476 548448831 874372251 632285232 718503614 206493395 413459909 904542218 947226348 437512475 542800171 921688003 923372667 545467059 545654394 502228314 959361049 619534673 738613298 33324944 381388173 564445938 774165819 781242368 916308811 161772259 474247325 203180095 668201096 357971494 798394969 677227529 963543798 486707136 511271410 210068953 867161511 888623854 936699049 899456367 994338261 870429646 953712727 586743671 961829312 924001772 929694614 905168225 998668204 877126685 939923190 725134031 752610913 342963647 724898089 395724642 863946686 772667302 901593836 299920005 489034553 921795122 966426566 991971400 997256158 528091616 977779972 68323970 429119804 523244039 790679547 48425495 634796068 173195050 282146429 206507514 717750562 817119894 817947306 430069246 853621724 105052880 937524298 140747719 341195310 788560547 813473247 519478347 972075876 240363998 774162247 289109216 816453832 267504265 981455544 344955482 862851855 643914470 855562680 361507806 895223147 413381567 840403170 249638213 836064086 777565626 789458612 824247354 913300297 728524809 961103176 999896464 999951754 429030296 825135675 325945140 833657289 919881184 927338106 660369590 789221077 578154133 589098647 726054630 879379338 633650845 876175350 8543360 986747021 876680778 942443717 48217656 887466745 453038482 525410549 735317376 981223769 31604596 574681046 900634683 908420801 977332092 991193577 600565018 755604600 299050117 549939179 68676554 910994589 124001620 344461319 227027269 234014436 444755116 449955385 199580179 277458915 22528534 424887531 534398390 888226181 509868048 589807752 615924920 742698675 148797631 621614248 811400870 938706552 954450845 978332319 531755929 908322969 29423973 343200949 921792770 994806400 74360381 360203533 37370905 676151720 900810850 932415298 589015897 832748391 369561876 874790055 589633828 890765101 582351964 835251503 516563022 960998103 529038880 691704483 475400772 648586109 217632360 920790414 640134365 718106771 249836182 935707206 434646996 803585579 543875332 712328150 599979446 930824464 692149873 791823376 846839981 924814220 873950158 967359071 154180421 567956936 143045001 778553517 854449020 955853014 676603167 865317347 391859105 808626795 149450229 503943190 413533280 677753416 657626206 817805345 336954952 596572590 529946882 756693348 241525308 447455833 867049839 915185147 851874250 947944051 69661970 162893733 307742707 648713580 571984802 978836583 439194174 612156809 854236067 990058854 43287182 165622622 283928477 776739254 419541368 616824697 806483478 874077960 936348004 980276280 163103946 261131905 178882771 967989598 535739553 701844441 532370600 670799039 613357877 849727510 884026751 944456619 86820815 698174706 272440865 490390671 268685102 569933905 307476541 888308059 323840020 553390850 56303019 277785851 917664150 959271932 654794323 822676541 367519754 645643811 202930356 719341099 903319462 929045205 657997697 832331030 837779441 957333711 573112683 638155007 521716725 704492055 764045799 982507134 45137288 120140268 264722689 329685509 574507573 902989946 358612092 750531462 314913424 422102850 840960764 852568826 181724189 370020443 651223382 987600320 697245630 734622348 229478526 572575303 832891157 986987663 243887828 629842702 266755802 621066173 794650476 922141394 789664304 888037894 480828968 857677789 738430409 895660505 814639789 882397264 379227822 696066604 59243524 140035862 620126665 741548322 985233041 998362647 319021446 474141920 117866975 216261189 403032465 782063308 873912907 954477695 741482881 758164645 743602382 860911775 791208800 917991920 577601054 624535981 619250062 755019554 893060981 939591018 249021849 968255093 443266071 607680565 291936867 349164960 119629642 265301560 444680860 920160880 611653341 795008122 471667308 924832188 592805002 963788323 5986765 974049416 836827341 986421057 372723075 975493975 722826552 877708027 611278791 885293004 543682574 824500188 674181410 795099621 801322518 863386919 448429014 953334679 277751623 707050672 785052186 842334842 824676429 935420634 914911324 986133374 574803381 984062191 394979424 572302399 963966644 995452476 406486336 713756415 762978788 884789192 400315986 845835306 341653284 369001663 940132529 943079186 629991114 934566376 781699148 915494713 169554194 221119795 84223574 352427681 319149245 951812613 703984205 764420628 958283297 962002330 105664328 909845960 165205788 259146303 817674548 969757546 686402241 880478992 10101967 878183222 711275363 971225462 591842396 646144012 985446891 989692263 832888809 834201482 344075798 642694141 677712872 874871480 794344082 983763791 170588584 337705852 931720748 947592888 726548641 743451496 936045883 997261629 322633083 649578607 965528311 977532118 348395814 692027855 231434554 971049526 655427920 722997446 746868400 777198820 625221764 703716267 308436617 975744522 641940968 998806611 333696097 423154329 329708254 512528161 376751699 547534388 904685610 977212905 790965346 895224615 427368720 681032791 925649890 968108344 448266883 977867762 889831491 992419677 332333989 608895112 78761431 286352930 909213575 982817013 759874058 882779244 779815348 830418539 269825745 373767365 24873188 337017121 529097196 607921676 361639437 625345904 979870538 991121103 351904050 551025739 550865479 796875563 957942611 959047000 177145975 358368051 976840946 977038837 283615756 972587779 818564235 944498295 161509212 739797013 317694572 492811006 629487950 831720059 516509044 694090893 569078880 971425891 202946958 272094930 371905907 889835195 824081186 869218282 138070034 347827543 995405958 997122107 252838098 439234825 391178269 991856739 682062674 813739776 525939767 751575019 912721051 945792258 252851125 946830558 27564341 710775208 390207245 595505529 30350431 777460112 30566526 78582168 368229136 984468072 559940408 653351365 767916199 947830145 888788091 927145972 689122697 837597279 30101397 235320629 431889247 698118138 77503047 404357577 276991938 566849631 912216512 917321294 63815297 169492909 653428822 943998383 669927199 744408644 431792401 807612932 129202271 168904635 402177050 864699026 583217608 728413480 548320447 663250742 39948182 279854517 876048775 997307412 335647207 906362050 928522589 973933491 751507917 765513845 76779384 480945799 958807540 986825013 165934859 426401937 367316157 402933376 549397581 912221776 784162461 790809990 712716164 956297824 122330325 269909237 504136265 517276185 296061709 529678467 42242915 938025834 880608884 955235071 962264751 975125150 927785841 932073916 10473479 718741339 769842732 917524700 465782097 559362557 416768083 926439204 789174808 925569219 119498910 679134311 815015531 899740351 106490724 144971252 888563709 936840105 81692337 715630750 992282563 992956015 9616405 13457705 444645714 649941363 416205644 828364710 835578103 928826808 545472079 552367970 933296522 954191355 405834601 872705357 365993612 635220215 392363450 809838138 643347586 870877382 835548436 874631416 651910288 774125114 189919467 733052994 607910542 828507181 160250524 902552487 59586174 546773823 841757501 989730931 399159861 404249745 340182864 520147335 593192918 931641264 358207028 715323448 245177946 545850931 899612986 944669510 496924718 964445529 860939818 993578265 579490002 648578563 821591525 951657073 656671687 832310814 438295747 799398338 768968331 815571701 806368803 903411812 807733408 834091835 374665535 526101714 790616410 962587754 835681750 853539967 570847840 992001560 272280712 924964233 148442762 265004647 173083339 973108143 848494489 989058996 407816604 483605544 88100770 963952248 532456205 706986037 680689835 841051227 569523301 758182703 130354371 688151664 660461472 913090144 622469268 868713520 367500085 643159234 10890752 287275452 725233825 993575466 773757490 780005449 442684088 565748777 476010345 524028949 848827315 980525103 758494343 878339298 643477217 982023453 659663579 757683386 955600408 958656799 308055647 695955062 45714911 492562154 58676580 525368200 960560835 962687906 362971410 389321978 577068380 614030897 512764919 903899448 214395887 223215877 592655915 856627882 888559252 962903168 684352241 807035859 829573211 895118282 904398947 945001532 358815488 829527940 92032781 787619461 95044671 733228346 314502019 968584237 848243329 932045962 314137584 654334259 737271028 765808783 643453202 856501333 518915542 868266103 736024625 875297891 902850195 935153036 745107526 946527037 44479695 461992824 956620154 996482578 353686671 694876061 547247817 777041771 669166426 815789676 217420752 303385617 763196026 906593106 899239347 906260913 8660351 254309021 746859352 997895946 463365785 562684741 274961322 650039179 191813809 833497523 301438596 606922297 308158629 818793267 663450584 792706459 214189419 769931168 40002037 507990746 763988764 864511340 898182514 989801200 150976582 910875702 730649621 805599279 853069187 880274587 391289399 905240070 590660278 590986791 178462228 820472764 74311098 933859174 690833643 802969300 274273664 825885534 987872821 989614195 52895607 188308630 860098140 902212327 319664132 661908334 784499627 934813948 760401269 935794352 965178435 993724570 260368663 965029870 518734766 841020112 87376402 768014531 243300649 295709914 817744319 884952871 996878103 997085906 640112343 650568202 173224541 885248236 377581321 493839775 910091945 995372265 863631768 900102886 1042898 546294496 58987084 200040236 204397727 728054419 659259838 742518112 454741885 704183044 694946834 911473495 411415799 722823925 976145316 999133911 520911715 860209174 499703255 642463773 367141248 918366483 467817629 484075672 425423195 628638057 303644663 512485702 711593251 863471215 501877205 742250946 949676213 994666648 259106136 260049650 143392805 503452319 575234910 648668705 998145683 998736475 880927606 892628152 16777957 967696719 376226259 741220148 277833222 538475954 906247184 932200509 647765159 736257222 994427900 998897870 702687932 765605665 821529816 992833964 750420048 914487756 123378251 319126174 725128997 795810034 220499931 476850748 722385832 785613121 790787228 818549968 958184428 963186961 475878699 878405500 780577520 911927397 395332787 920097047 567990057 687794858 995027826 996598604 345666318 944595543 649438310 953331426 345407555 936594846 745629002 898386460 480795607 878188300 404377902 485338074 616955817 705892915 899768198 987224640 643083625 774789204 32322174 796482024 165657269 904385242 430642155 578456105 959079929 965059965 697608554 950030511 107037838 992406377 314377706 810674786 950809860 994020108 469263199 504213979 650491956 711102004 180504497 378595383 605972054 699322615 404877156 632344255 996443814 998855780 41849297 280642513 138680610 190286126 284323389 867802983 754144598 776590131 570531356 942734962 350267615 972222132 600596400 901903790 617864226 748645378 394555277 841281224 773341244 920190745 677672853 798971084 305591291 933107462 254537573 491209954 81405656 181854056 129756890 349920173 602164326 630921436 188440837 485286851 877985774 944161502 831282818 904414286 992079388 993807797 566434588 855365493 700407911 931670363 458089388 504328016 782183983 917296020 135064307 349754920 906536413 927049041 513736140 748521209 933918179 958125660 24897613 826687543 652064177 948796660 597468607 764419107 7642563 99849955 119065437 550176338 595502133 993334862 928538981 935212290 815126070 971307175 81828055 229167630 72636843 828013955 126795175 525126303 863093864 959608356 928164036 972307179 829477155 877165723 595241781 595577070 384988112 790283544 661966185 870564757 439633518 765943674 320721909 563293646 968076961 987382128 778916450 951085332 532093669 829345718 610309072 883165631 316935057 882049366 209662984 774279829 811157074 837334587 376895684 539460909 67948669 117686969 199943337 770241029 978948405 996606401 363067894 439451906 893582109 991720595 584008494 902302618 447231259 588626134 352239480 878081915 937400811 957090559 648397259 874875481 333539090 338300891 900139871 988785811 20215526 995454363 261332147 691708817 499354060 679250209 240024133 800946001 746192024 972040295 363120538 760977585 177394244 700833117 697736872 704820763 24971530 653647945 686455651 719238372 749716856 957796315 326966962 668760632 686038933 891528833 950445923 958601306 158094744 839704713 691533580 965124915 41609568 164208679 237612836 851435051 185546554 676534139 793810037 922052761 268278590 999298427 112676360 500033313 861357611 893095741 127368295 746389351 938881798 982315266 374308368 648754906 195678658 790756363 115256875 440870198 555813455 922140606 594599787 601707782 447428680 648200386 488438826 877576921 113522359 817367682 466734711 903739115 878978256 941537932 262761053 815057882 852280216 859135664 744358090 961838832 397738353 576425564 317322562 702202808 392293510 812930141 510893056 667723743 673593890 950373869 500574864 910507594 828748177 996283364 47238829 372380989 606683672 681342236 255928328 673412286 548676019 942892544 983676185 988166761 673937755 724639389 447055111 626099170 145611909 846087597 647970470 908074634 752176397 777920069 829552495 851437176 66832487 643819632 632630993 851943128 175244573 581846263 189007406 683011852 738072495 980292001 971416514 995603292 857818513 934902487 964402764 995377789 832481181 868195849 682711374 899593472 744170812 782782757 321350528 664085977 502489783 819082052 717929986 840957931 78386950 819672453 420979963 740621490 222622733 468491752 330523566 703869018 570061807 654673119 18258784 657441337 659039899 764642514 311423935 702656878 367740219 610678550 773521409 807588722 609208809 778683191 446955659 549083415 513043721 913592888 149135630 336217090 998953341 999034222 962221848 969556807 633064514 797770709 51514177 618186959 753906607 773546829 51108718 174943271 268628760 692842861 798034178 857687850 911451686 957177182 981882298 999429293 834536019 852697901 335092051 467879813 504154407 828777031 4132600 523701586 216474630 438017383 178059742 697835912 504986318 992623367 468001976 839294742 735422741 924617290 888793170 979647212 340100393 624223107 169513300 855020036 177092072 272450991 643939594 664833488 666252606 977950335 119884109 277727458 75578029 911992895 740511868 765846089 304902526 459332456 592237184 855295660 5531389 560356830 600174458 768866975 474008332 965829920 748997084 870491928 385337012 769556694 102050934 847112777 974009461 975839143 62460203 258604625 650774407 976720149 833079764 955734206 363543752 887112264 320929393 508544044 658474264 761536813 261653560 702867492 831415140 918371733 41361831 590949222 118504790 524566157 862489295 964773887 138566752 761396315 832075207 873009968 631443849 805419332 199565737 276856708 611812827 951792820 439968409 761728843 569651628 866710065 305302570 776264563 701627721 727924498 530778404 947492721 478275798 805850484 857778561 934173109 425089783 740956291 260923566 965707484 636554160 660039231 715581841 793746472 340632180 472822145 284524109 589733183 384908167 403582487 635841905 800724664 729955621 878537195 314124954 638514828 761615189 937143044 91917311 443023268 91772192 960947825 186645134 641211147 448742608 622787561 720972935 822593232 622803221 722599421 527550267 905627135 518041751 959712209 146734080 484999197 901761692 924087491 922564826 951705920 243116260 760591226 450228211 524844560 430254766 772766050 792491801 901331178 447810595 685339616 733394906 749083900 131379435 783254118 400805572 442118687 741267501 816507876 573607876 700107656 118373063 578527416 530936361 930904514 588605081 706887803 42056833 190261773 357087675 877570568 195159759 804624416 226125621 949662644 861646032 943596151 276020191 705855800 821804050 998833687 856274898 947724996 447781843 815162354 595619768 783659609 60192203 833488336 948350907 997514236 607331110 702194459 389199699 600769927 824267449 873333787 287350138 771055688 799752503 930511209 21903973 579762239 260869035 678754050 355620993 597567690 92550157 248171714 918467418 975344113 494159520 881583769 124743832 327895699 252133627 332778707 93105721 795392041 436134747 705328600 518734862 681800197 743731067 835825436 486690258 727129285 260022821 672518541 7919151 44213811 814226231 829947721 241076619 259193695 389030010 944664337 717129216 957794964 780436545 948254673 997225689 999649175 494472347 495113186 632918130 718218011 129658716 872365613 859215816 978469691 387240850 599052970 909896677 951877814 359702583 704751187 784185820 980841989 166515738 815180725 844621504 965079383 395877234 650935921 281014049 547410556 159330989 320003531 659991361 742289158 560462200 859733989 539881671 661390715 228001130 539912442 822454428 828980829 909143192 983005683 362954694 641392180 711422217 940112720 513603716 913692166 512277233 567585350 88379306 330460286 848605663 893900836 665595572 921140964 207982570 806122459 823156729 843064141 856056653 982542964 99208078 905399702 982811626 986539349 837689588 874024612 496666368 661438369 601665013 752486891 979434251 979846607 224513880 984158691 226827387 396295494 454271466 518583136 750080808 877011853 5711865 341850375 73295899 260724020 798692534 977260099 88712470 414484824 672219127 926180501 980475237 983887217 600290981 867282693 248338089 507671322 190771142 248214263 577362994 737235280 722725475 924284807 74437331 205333396 614828290 703461651 468798794 575709963 342472823 800601679 28688693 259221743 836794122 948927653 445513862 890848909 251292975 941015689 152944709 471705624 725354819 815237167 234370367 243426207 153089010 790054183 225861417 378082077 254507034 602945354 85981328 222650330 731994605 970615935 192349983 260310573 254447653 309136847 823368554 930883707 292272131 471447640 22891297 146987143 336929050 900808216 435702820 929940232 358376555 713296662 337240406 896689364 624478378 768006549 330021917 696328116 284900289 346806687 746996979 844467356 176677206 841199838 190141594 783716869 169984859 555079774 753483574 901814910 344701269 801091808 125766422 753324407 480903857 581191167 992308702 993466295 806231036 837326624 754696342 903193056 473781554 993379170 946462265 993138580 585548415 669226089 82079231 123531694 327720946 899245665 194006946 951117578 296089168 870462900 643413333 986052991 784580382 885036904 675791280 961370871 147806115 688236098 203739265 487757990 697315417 839856074 849470212 908122276 772074890 988588510 47579873 90652263 163473392 834477106 422693747 717175182 519921310 706400404 716571249 842256582 497226028 632073583 510545088 556467416 142709584 760429017 374561583 657823304 302567000 468875567 878456192 922400747 659333001 996282027 230574918 633456691 118889204 932975029 320085021 621459901 878195049 983794062 421769876 868715007 697799677 871961107 895338328 934245926 880306795 936761430 139544472 857294408 596322397 995821092 842920093 856067643 796869710 844399071 494970849 770200361 950288435 964351379 598866378 678287248 419451482 458593030 853128291 953065136 435501555 548993778 611075622 812185023 206468675 658845484 525946644 841350305 974816591 979332485 479211955 944266764 629998831 883272625 43546067 836991775 677433025 702030783 102419852 970850866 386842096 858550613 151314565 462884488 805483823 844985172 855902579 899179625 743435534 750536710 529790446 652597588 768729834 975575033 201610645 441217154 998625483 999689567 814769207 823533804 226521216 914289934 54759120 465611688 398357963 630462986 556726959 975426570 565543861 585829586 693355040 929156261 300746283 557527284 230593845 521044486 287529514 396783151 21103381 408780053 747534951 973767543 344551718 900695421 973202609 992225614 963505196 964747746 408700451 474829712 54669133 278948105 100023241 774175003 642916441 988313814 460803087 715440809 73181212 765166897 539214025 909349116 684704704 965563663 737031218 803072567 891271477 986095898 794777808 843314317 769429498 835503498 479713474 768855208 41165646 712016569 423083596 660848535 515145711 685249879 646094319 670946042 425024634 513086931 44002239 795467825 595180719 640933692 579337408 604356357 88775242 561087934 129119051 769476394 430769114 759400388 483960782 945339315 74954941 81806595 157956752 738773738 796374721 998947605 378804938 440989705 757698607 879210857 78191176 380384093 342511754 457781405 897594505 941152729 220268392 423868235 494712733 515370566 449291429 786578150 867012390 978852081 870781293 929405530 571644750 722826120 455923258 520088178 736181303 834223961 363911379 750044496 46261706 420653926 609558888 729640202 681529333 965222325 863578288 895414212 868974553 980815377 112184933 597539597 119724236 492033713 846478110 934526839 15446141 797301487 979415918 999301890 568204506 893532545 637431139 716810079 744419765 966796626 387027906 403738629 342687682 468056454 805916853 905134404 712236839 831046654 923269826 990296614 393719306 891366545 894921988 896908907 86751134 288160592 194827743 491505297 91640098 944032641 200823344 898883493 965837743 971389971 39998406 892545221 854559610 924350033 394956970 606653715 582096974 820396913 726697448 914446530 711575936 821738469 377104410 566677727 474528385 770025275 461720074 698044471 540565972 687943660 874423458 943024424 359798775 754185504 714010716 722117304 613079491 656299842 832560827 849566301 990139934 993991348 347275534 448864523 672757784 762456348 126541725 694657627 626926171 844797039 36515385 213394527 225801105 683936833 103857876 129289441 818092459 946756410 479236357 900689962 979663262 994283535 934254549 985608945 415509726 855498805 680366665 768062691 753448049 897739030 287411599 638084805 81207218 786361837 313976118 969320340 85619669 402577508 836219867 909993067 565972387 955205400 47977587 692812275 880919734 959262036 179168603 530582624 44775463 364429038 78608574 796670879 867993844 893547711 166790619 993254810 241329813 335711023 280442719 280931568 467860001 485550369 998097096 998481028 302543893 646689074 4342282 385226633 328047301 840645127 330467294 963745516 284233930 676065784 711380905 723884239 692467878 969284993 292464687 761248009 284030964 689612222 466644781 743191371 935005677 987816514 457174699 707906383 662631849 746558929 981077645 983181180 46629206 564224693 345698593 718751900 34511099 148456004 97459402 749561873 826774078 910865350 899731987 979516340 326410779 831479063 497165934 596858881 732498070 748853575 519461727 655176505 276024030 323968560 163787894 402928897 438758640 629752784 646624898 883030872 430117641 896540548 894816338 999163541 895118055 913938008 969069870 995557989 114069144 547066071 416655967 809426518 637735088 751905713 409707339 719973529 539246583 737793017 160623615 838232553 850620522 985620158 895494421 959590166 145940505 147714909 561614037 713849094 298777694 355928947 546884557 597706937 746144820 903394213 455162216 661711467 907324013 972680710 759261697 904851539 727725946 766762802 643785215 684837848 787165840 999082153 573973046 662306275 110958144 187730443 810972485 868656936 735664706 910997994 201930327 363164504 907074577 965157839 90270270 579837447 484559776 716211828 33438521 405322832 597488484 857027735 491346153 954688796 40183910 883795735 75554703 624758740 40112875 917225097 632205706 975374335 473818868 855944367 258997482 922129856 787020087 856015716 573163743 612898574 826127919 972754351 377852542 705759081 492401205 538547549 489169074 710245034 818223339 986173985 150660981 949747412 844821333 996525953 349583344 763650919 494731362 981892030 721399594 737639121 886854809 912641652 664660309 693801617 341285675 718487980 293303601 570442969 458284063 715349432 429690937 451289415 424867456 769007653 918866424 923618013 398563383 963735105 614624104 682180020 776314106 784850207 489718906 756146868 405184782 791162136 30418627 635945866 606829268 729290098 523091813 871040970 331137393 997418730 993752743 997976407 392192156 900001460 103472267 363339802 129372022 711977999 204707225 546914303 429156970 873471866 223641026 407029511 326556303 837864489 867805056 928451448 333860258 676436331 962474647 997978526 729435744 971160760 992168191 994930831 299954392 313819731 942693310 945131218 183258697 384593270 793142504 969510416 869215349 955319724 834781097 848897006 181277619 402690167 959978315 969800358 33419027 475420567 702655678 775882613 216247215 335729939 307070019 729238737 595909733 628314029 714945914 830461788 784914770 985317241 542509804 731483208 172015174 961979591 964551219 978272028 446142931 568979840 958446771 968082361 498120461 913139654 361281466 362082097 505146560 640695533 915833231 994815370 448965705 944730084 277294454 383238967 508285416 953271119 870550712 874134486 106264398 446939664 957625950 978193834 567299732 694209788 242794992 541664231 708569568 925995904 723144447 755020556 970613557 972092373 413415615 850136239 161160125 926623595 627849742 770431380 271786566 451276520 811605480 853185082 933164687 989667068 444564532 602189333 793112343 918627920 259009923 970321986 282356897 995232607 924051262 971372317 133403754 214984097 65164073 111149824 884166601 950649127 512150926 773010142 792867361 951035752 83352573 191223376 984072323 988015313 132973923 261168089 851806732 981798652 904842131 965836305 397205475 817387916 741849421 860721835 16944116 235501497 565191541 850157269 29863411 850413285 557259931 992069586 211987687 874104412 693092591 883804481 257562834 941061653 537903787 719237325 873195175 987512735 607361846 857709243 667153805 756139337 280009802 546463378 215452991 602987115 126239410 670905957 447897355 877931450 599300046 802404556 276943306 501762413 990752982 992005724 164745214 665766772 613205729 754434001 659114428 745676427 427307722 486178156 453380775 803440875 894508875 994832815 178206509 872792252 693111079 928934328 67245290 791993533 229800248 655436620 26423127 709372849 593540877 748378219 431967966 801813319 213356402 791900095 308420021 496789272 589939779 748688834 573888127 745605389 469078391 639233170 213170297 372709252 797054248 894091965 182059989 915832770 471157391 918142963 128535117 789367085 111926596 342444364 518994476 920043381 772248752 918039224 460025996 930883972 755938672 939260403 417568436 688884246 620532552 671470027 884112308 905017076 780723510 903243575 483040647 590556711 723413984 864146845 845283690 872873178 257371642 368199590 262269483 311480380 157976777 808592076 93927629 672101795 904302658 977304448 150050035 583786066 507662882 904578638 577656037 794609706 999172380 999844365 927627894 932688147 316060408 323664532 803043795 887352931 611856623 790753968 465841235 507747613 123820926 633282987 813473991 927964077 424594565 472023973 568473426 820291366 781972188 929859484 968678802 998980342 610832535 900086396 354529251 552072628 103107885 422853917 301055357 553465890 331976564 708970968 870644794 918221925 642017069 968094426 771256091 944912792 253277534 959054771 144403250 774942943 91254280 791235344 826943710 868938869 614351370 836336625 996528098 998435875 64015099 121153315 616845448 940046232 691692682 874536983 12380007 891125026 329088014 450075801 831728127 841965070 446499454 616872125 711448201 908096133 646825692 928981901 722421556 732436217 892090319 950742038 615778322 965224833 201220132 941678557 700584565 984282511 752256505 997252606 393048253 738254447 2146937 74838191 601274462 702714161 21866730 539019260 750394528 992955173 170234756 679664879 378682692 883890923 880911986 925729735 595933230 654735629 436172318 888949680 80616713 109468258 875217736 881590119 901934697 905635387 866720421 996340057 165344766 799345915 363478250 414509492 248703107 390202237 705647138 771604989 582732063 737439028 376075263 487651989 698811608 764182493 464470580 573817538 820946988 903362266 332077714 736267079 653828298 988974774 343945286 361751454 666899957 970465155 973138845 978227229 157547834 280581059 272695986 743639845 355235677 922754024 154235998 309166996 563723600 762426462 100604286 887968061 405943925 812219846 223659694 728809423 166872502 230559198 230612853 513167690 359448922 986032645 301925801 703018796 457623744 547426568 477758102 918120741 887746972 966506979 633636790 787763581 618478500 653876141 873690571 953524409 572476258 655627581 277956980 321429658 438517650 918168602 617252148 998492733 839517488 891742396 498455069 577689710 825905789 960601085 46656761 373201278 228673841 629137112 618865463 628312234 118238643 555082914 326968317 978760814 5398673 356108420 746840359 778653981 204785698 745337225 550959749 872743003 878571173 914586873 794327221 834184541 305032547 705742776 617582389 766538508 40901650 396140975 999837102 999864690 778935624 994141346 631559608 858915289 667065102 860998653 155302653 306428765 254476838 717326827 198904388 885975717 525355048 571616319 588714971 709857942 160668499 456306556 417751657 834182789 898136271 904441157 84276827 807916554 536702991 641980184 794226001 811390132 782495525 942997838 270008004 891721853 731063879 903646875 170250738 887212717 401655718 432075184 507108861 815530681 888038691 912158427 233637136 363566210 392389271 871960428 357316472 430312114 996541021 999078044 520002124 670096569 560383840 571288077 835523982 852396940 477897296 977773460 676146773 940143249 858829248 876642831 62708550 220095810 759066580 928536016 169258444 795986416 649205033 978361088 84958632 447120975 20121963 964839436 655519358 721779718 722970980 881451697 893711095 977724272 986396602 991941470 698850401 999848774 832695860 879469929 476615885 655930450 471355066 695300143 783680470 935872041 267584501 498406190 358849690 835292366 225396752 992759570 350399473 982855271 90546897 622005286 655969076 712796841 218441827 819599564 991253737 999498749 376128723 786624068 881407564 940332152 414945774 666144321 771730650 858675220 265618502 801862953 228472523 789980221 941016541 969247504 181037049 713836858 287776823 471261446 674051156 969279947 54888894 197792971 769113083 826216306 63877089 697323463 113906537 774461450 39316267 723667640 807767627 884595409 511950799 566699877 96100406 853618200 27177908 707603281 576768480 680670073 664559310 674935438 914130695 922697657 609875302 637595874 636373097 804399562 432697768 612313055 614878223 758530104 128193994 278912505 521666355 619612668 151638339 479389916 372445661 765964299 717157623 973033027 417203725 772869086 677255238 751916727 657169892 909123216 929489176 999741662 219876434 504775338 895465715 930384073 979742698 987642693 488733122 784589025 454303734 753851169 716375752 751696865 902017731 957210929 332110674 830530558 750099328 956734714 815507662 876050842 853585279 914653307 535546222 792043522 614087045 943848976 557244714 786365722 950781170 992114325 908402313 926510500 285400197 337838952 428436623 468663742 229626492 502686700 682607386 870356071 543763298 759919297 521950890 713719473 328299414 657529947 358636294 553759431 912096059 932149761 602481665 734142627 240409934 673935082 318734493 361391962 554093341 880551861 883497873 991756395 555401233 912167942 674807085 813783031 110239560 269421578 984410284 995061885 204563970 225746993 66223295 958940980 69658715 823882220 304744363 954616516 851657041 990923759 225835393 328500946 871196294 942504938 501478771 604127335 195586156 571462211 552042228 617199818 447590003 645451816 233549377 667325797 865701215 886143526 786720381 822180291 787585672 879053540 948662565 984697879 699339528 908359915 700485577 940319740 475883108 510566082 127613952 188681536 326998123 849628998 545307065 755911208 791957634 936609697 894862838 977800995 718963343 749542880 981913319 993776425 446943060 509156753 140777609 805179495 867849301 929030202 531249906 767837422 588422601 661997142 960739865 961387628 898070186 913849402 213020457 649943569 14821079 799284897 598259114 873055787 21705619 494914145 486106825 641014338 995842034 999178212 446458015 504578726 412632230 524956629 669560282 904820855 364403074 961673936 323287317 971665547 854325739 955293955 946042417 951879670 865283216 963002758 899409708 917763439 436203638 594160948 531349955 937127013 421229888 673871638 659536732 980000544 517709230 786591388 897178677 965362619 255433524 617938221 19778575 578344797 675023297 776422016 954001169 987596961 900561995 909746673 952751721 955682286 201140567 460913313 469320144 525976268 506762071 622568127 642316489 709444704 674472210 890775933 229599554 589490662 41324170 115614802 928904059 999212325 586750684 983569808 11611916 211749997 669108065 940333656 915913512 953346136 697182828 970314676 729109802 929560705 128532319 906894475 763657039 968823168 402192347 791188035 762157595 971258550 753957407 952829207 28194269 867290154 564326866 619597408 626581334 988170293 916611823 968976689 415195885 623394361 168413256 711335414 558323733 637521972 629119300 880053198 199467569 732462167 415613331 684958294 218439430 461743450 569589357 922025531 404279433 653323760 399531507 440493967 146887028 828003446 621472685 870495391 291371391 599883576 254040869 744965516 772173 363522555 711121818 808584545 999573024 999922469 461161212 859821235 321132499 381135168 346907876 677625082 535381405 663021749 349512966 527046364 415851841 941240663 228017026 699119156 613868722 798486901 600594879 813796946 57152348 843192132 717080829 919587536 758496152 785553995 152651073 851154759 754669427 858932656 994196860 996441215 485589810 832370487 165595253 770125988 225338095 765707835 448805191 958642403 936404716 987468827 578195762 834089821 762579518 936556601 742549603 960162923 326370024 558150399 944803369 982968990 335752505 646451603 427962144 945139353 988453079 990657954 211072208 977605163 628715152 704502481 396301078 758823983 630606505 945299052 364288681 594753968 507712960 877373641 193329417 287287892 438131050 872315547 261881863 858069427 82558399 692631017 343614451 418287383 873420093 932733265 270316160 526471172 633388316 688698643 75935733 346420435 414792782 665031260 849140837 850862800 664463599 975974778 232295766 444316251 769835121 874482565 168179482 189085387 552596159 919225253 140735512 530858351 539862710 612079218 329964529 688351879 651645986 862565264 300543931 843751606 794360122 841492729 699936746 709819648 500981480 843826094 562937867 961289993 322282883 774187106 307856947 713018508 471006945 608586951 789134436 886474474 710475715 938648032 416421836 578234549 835495810 842518990 665663398 891634023 411905437 963018734 883002879 996445779 489560064 708158894 889037124 894163854 175712878 577684405 5799623 339237969 949373899 995323829 442152421 830801214 30267358 409750999 963340082 987894099 806111528 808408313 777112298 846983847 145866435 666595147 366270630 815588713 160255603 850509882 451072566 913124674 343451158 844053804 524003326 898075697 35626065 549660208 64829516 505264323 796987794 979795685 496413503 511292948 494591938 698382940 257530034 763855126 491402045 989195885 606090044 633770506 827866146 878449736 78866804 133505053 796008670 956042678 818710430 895323941 570612712 864795586 807591946 860314605 881610508 957618990 986632593 992934920 108517784 534894365 645934532 968465165 797953153 801476874 398499979 959906233 302213869 443218660 732691977 788769782 772887565 945914519 338089597 419059150 118135017 245704900 512875637 866356524 614240202 775425974 423209391 836852481 102321980 174760340 486378619 581945454 434073570 646585549 86074624 828773989 189705780 897007640 316351350 728388794 878404763 976093283 331217165 476377087 791405884 969934087 656989515 798767009 321442780 493518626 354629044 785570032 178157782 937001023 14050215 689717506 213893474 943014653 975426214 978301622 504345573 958807959 174962345 687823271 296103207 424461415 279862738 635819753 365699451 798870286 917204519 990727280 570848793 985426429 171633041 705541051 20175190 183385530 292211887 740712925 537356475 834284491 988095297 998652765 948030591 971327738 508414767 882652100 740812456 769046468 287267296 564694885 744953471 829915655 843765708 866465107 341330201 947444133 293165196 417897392 134193224 279321873 855231588 864747042 849185205 877889275 14308121 154273163 26781090 608116727 988436578 994388204 92698536 830965101 40263201 987069251 849014565 919748959 781439480 853395910 476801519 925002357 441712313 973463727 969650123 990811089 856202842 928208160 449953381 536437803 859459613 903040599 91982258 746445457 981843687 993796345 635012806 904028829 557616187 967754957 675776502 872078093 855983262 954312012 389456625 783501276 150333652 774248226 355863333 798057443 28985522 539540299 29247310 79653200 409877157 763077369 498355091 551634748 664171184 705879581 251731405 556880784 802716357 925616038 424485178 755895537 103323745 906616552 144859504 535986172 564231352 839822277 113374520 482243363 843483286 950703191 300832374 925288717 537360425 702550469 221059509 680417310 466302256 722319811 4956494 719586385 361741824 455800044 928971659 993127686 172876397 333608608 7024329 488387035 862181438 864354811 696747506 765683181 282019439 890475966 281369383 315243151 370122842 975462652 901622079 951034855 676855212 802809411 111100512 855611231 154878221 381610351 868779331 873458256 165838891 804890128 733746413 997221994 218903327 848736080 471557119 916826203 720422376 757180397 565057039 630669070 587907253 777643728 496095457 621533751 145865246 372000315 716763105 841279883 265263322 314989385 938977713 968666496 597015786 724268595 428627685 809806270 678493678 989597112 498877276 974947953 181144859 204364211 29988436 784120535 144073978 256081899 499707014 728457863 302783225 987535383 999123899 999760075 585620979 634221109 95627180 746676412 702974811 760613964 733156284 825235836 318069464 657336274 694383275 815850187 381887283 959349911 377561477 995277263 444135417 489399914 884114688 952090493 104937192 189225101 460900707 646163584 485703985 499892714 379881258 635752825 214576106 517507384 479436599 909050801 604405297 643463496 561508723 906079429 500606007 692792776 564318675 850101557 521646119 916692099 779354939 864245635 627797945 997594432 932412353 934142882 470583578 799911179 359861871 437680257 936475832 949726045 717730398 774581871 416116198 982293248 71846993 417937312 548764315 892852030 824679993 828054203 895606423 996815370 594618530 929077538 116966329 381866903 130088082 703431084 432102055 523982045 765171613 884805480 863430937 902899776 188275256 890338278 305323274 952697725 301720575 529062698 349391173 379502074 533692267 878366617 72813052 612304728 529851365 641125898 523131907 651058324 151771258 553928536 863360450 908851564 808018255 971571953 598196388 800727503 755364189 922648774 40441548 433318655 373616769 498907475 370505574 414201508 504398770 889914581 11463976 317684581 731771139 752226032 437255871 698266974 283987744 405413320 567217832 580219148 684125021 729021060 977809030 996269096 408283613 986778835 909690339 974235712 339234960 865519244 473477589 883070190 353929508 530847913 631252066 803908338 319200158 865877647 441035972 707128091 67399305 218223812 474435748 864134994 327879973 612031576 558078381 890336740 719782781 815109252 867561594 956410399 670470782 935409533 101201207 913632704 74095730 516633913 779546910 863738596 205691824 839788696 158601433 332596669 241033997 461125273 159728131 546533243 617205698 656238221 58782327 195595514 979355206 998975451 261619121 748850760 521576622 822065209 507214559 832975517 369411571 880544200 711562685 752350544 649359933 740149095 861450623 906195024 441517424 559699343 177982956 752506792 30732107 97185460 47655953 478714430 20932373 761484748 658850338 876330356 595525717 603783191 810470644 857975577 997376478 997778785 336196993 407250233 134414998 571649374 180733627 710936562 665993436 731593710 984683239 993624941 308678895 712973655 822021990 866333777 806780136 913728023 582562849 648632124 445905252 872796698 634388491 916108751 203457035 339878114 415290345 910307916 868370072 889756041 175054422 855672509 801593495 855347031 80811383 140882884 636714306 686685305 775064329 826539345 311349412 339261439 666703136 801983904 607782679 785010890 570360687 808947812 473040370 573676551 410480536 991086449 32740532 815006752 251990212 528703059 108570801 322176678 567166942 729666999 871766531 920292831 871012670 991391507 108012182 452517286 78164928 808658723 250921971 984587872 468655005 563472739 90809404 828926514 588996364 959348120 948141352 989233052 209357913 673122479 591602081 943312597 525343521 698515924 3163781 392926467 270831599 363963944 619886873 810917321 25385322 44320506 122902811 169887059 783819377 803041588 74832590 108822718 104904427 679175444 425894759 479636335 238474908 471557479 943484539 956942302 98116058 112344539 25768515 586362496 400127392 886474252 220297076 691697762 969488673 973082386 671347734 882923510 391556272 688367578 431441671 820323484 485550199 930849479 270201948 552862442 243494189 773349380 726118364 754104193 566143802 840319056 244288681 458598424 825078944 926713951 997319654 997617930 197850900 918352635 918991067 937400895 247896393 508664109 528423331 750223093 147606649 801589857 735762223 919185270 542567148 689257220 461642168 900227874 399475277 733730376 586280857 592989528 889775102 952829244 778299213 778856789 301363234 673843019 932908831 981074667 482600756 628036500 532606836 575662548 774388600 991845922 369562857 799020129 145956169 205819064 384864562 765362664 580003307 778260319 381392198 620935703 318124749 392634674 82544274 511902388 16773130 746586924 858692570 908915230 10115752 140693450 423855406 646432931 138750561 393947491 415479705 882402785 477939545 711573670 423816505 792589794 523245809 679500878 369860855 584509357 344404987 899497687 432184265 552313739 377129383 633510971 744515946 831187206 381108777 714509497 760132287 969245715 57461218 992682845 801749290 999927800 815846974 965746218 271424555 496328634 207858403 724397475 759938268 972219195 857712903 973053268 687621294 689195496 640971282 692226990 330617994 964335698 154487201 686023781 877683029 923505764 875701729 983712628 905766043 921633937 824354993 862772174 735499941 904221427 763528863 804396850 810273426 978283977 681515144 700671105 107547592 304539753 125302498 661138123 621810674 661081217 199390374 298089737 532060543 669526614 252321730 762090704 599916257 794297257 39191921 251554174 116098424 809613535 106174200 331947418 311953706 606515700 335459000 724955666 599492711 985511604 347037893 443665851 733359104 793152649 638412704 722565142 300363945 404025688 527571678 853440580 208120333 275235060 305676811 694826453 236584832 557127104 928255068 988293560 710654745 982029210 556984338 619033094 371231050 985576670 701555823 859596052 51467529 937218509 382372283 391407258 202610857 295037363 645427075 760619554 360936698 658564044 302794104 555963657 960354697 993266491 326523778 934049462 964561175 969361219 829599590 914749506 546631988 635458889 137219968 161715516 508505159 526422532 153675503 350288227 52642990 433090543 496346301 844653205 944392214 966958347 988786260 999048109 692400680 924688884 89733968 336261906 603240301 947475522 903502648 934161353 257571736 560584853 337428331 622592578 998802594 999657803 281698775 344339694 870016914 974527466 494402864 568090396 485491594 825644382 658134028 793497797 987274240 992273781 714247444 969225516 976878752 984401981 13877823 393933071 230623842 987390057 543780399 976180064 678555269 937853947 835244152 847640297 654948006 947468095 790151738 895569004 748925076 904573021 976857518 999668890 252008816 529958962 768600939 829706869 498928290 535831654 797591060 870686536 336783124 394379366 442740346 636337796 809535517 845911635 422767034 823084734 56674961 984506071 117109006 517885297 101489287 380447607 372584698 376260218 294839013 692661702 351965197 794183342 248335051 537509104 503728666 886009207 323153642 454209791 679977763 890671324 82400952 937734820 293543032 663962312 253886725 357321285 139870505 155781847 270040164 381696033 287599350 393698372 692579993 738001105 754803416 994715335 328204654 344949838 213010065 811709754 358705180 590368091 923831167 930668613 436419694 746465052 692620509 767132013 925435641 994338008 35727567 250075378 702711381 887465871 418170870 553019987 899841899 969978129 678194367 792208346 431805921 635268967 746687021 781885264 287898404 873146615 322512117 392738779 837112242 933915991 425550615 560531800 660686745 982837325 244699045 444990245 416560227 509353453 383188742 740413078 300305543 768409841 763188393 947905162 23680873 638106735 543876483 747327531 274070956 924660697 793689168 864828400 897271797 988302958 802355206 898345706 842112429 936550968 556918415 891505086 654459141 876461067 628577911 731504241 486140582 956232731 772501348 800191616 935805170 936017076 736125681 929484519 424779998 741430373 715741916 946347106 592030129 991834168 367662235 518124651 458442967 678166538 60840207 917921501 427571944 865754099 903577523 974035089 263800166 797526475 625571825 909954359 424940291 687388950 973533999 978261348 662262023 793937198 372629751 587944597 338011064 977218304 554297039 581600110 458740023 793817820 897296761 960120521 71402694 686003327 46405757 399567174 444145185 861539543 860311694 947545186 791750155 864891127 239086840 557060204 661224532 744932612 98635909 641213302 924356240 993962760 160572713 745300211 819246562 847453512 771642585 861978345 709300262 817394705 59484408 88945122 817663478 882125906 882631826 883391218 267953899 411481218 29316026 544515390 997032341 998721382 613232545 885180377 692785472 980057477 908190996 910525564 550284250 559518015 666481618 855468224 240177973 944963348 618978407 709145868 405567594 427791682 627201515 846464919 833937640 874151129 706670165 800559649 65447688 797996244 546926137 799413429 458050310 990164789 82029126 781210922 504353147 571701351 790449897 917384542 713088994 956197094 903819731 930216778 412976534 875117334 256865508 517107421 641113033 784937324 256723532 747079210 636101753 732815054 38104344 574582679 200796008 852655793 567017753 921570904 718451961 813640835 21031645 279769588 725270108 820561747 447554289 755081340 862056370 935806916 296908255 693925244 352649661 747529564 970447117 975814527 375055450 818481231 546560307 631340821 77424012 712010385 65115001 132349358 762294404 923288824 755613604 901633241 219643129 325577939 50990354 266338351 292894355 899163760 380889303 752330620 640970168 900700509 205627934 673673206 821147528 911896852 525229327 936942970 368424333 705971681 285302943 856766549 207883030 315584908 529813002 642549755 346572156 801058033 77145731 799059687 386158348 765513226 148187692 662698796 796202362 927196396 930459555 986860912 960051168 970138249 640459388 843964691 252335485 410571854 929731679 986425174 151040424 775994392 575587654 736049061 182058119 402601045 503846941 680755875 785270965 947625687 626758832 852382370 940898684 982849230 647947268 841247935 532717507 974204094 329112846 754194622 453623627 539251596 476432100 506295438 815478700 899560254 177939866 327290146 191058695 217506056 581721455 668156227 581431445 587532725 233882258 828639155 213549211 251134396 651297776 941092119 718442951 783251502 848487326 943773380 71812352 518521966 576731224 616608648 596248931 611792622 16454820 441143645 913325917 962471647 842744315 915619946 677850545 909362262 395638929 785050830 894561806 929602084 204463851 327190231 167146532 430233998 371929292 750144853 477964717 514586458 615695257 873490728 534815707 586384739 217970788 963322390 818509133 976693653 759287443 972963479 626313216 810103579 701577894 925784129 409593782 451201313 51969374 700976277 923554423 989719190 631858067 730705391 32336735 56978874 934703540 943812154 906699036 954993919 848928646 910634830 829695087 994389637 636669710 643924664 994762028 998967103 518176736 885506488 275153086 634178555 975679846 979551278 667727088 809862100 179315019 789147271 268037358 487200842 334842107 411814035 146096390 691394811 120427795 267372700 167611726 322853644 509516361 798388616 425563272 470479179 421872116 851410517 772586044 781276505 457773215 497829010 72495782 779490059 552598530 671376701 943958727 948224275 94948015 548566598 543508896 975329018 315385158 485341035 543688513 858487171 142957788 444585209 233834804 465125851 440773812 900838441 227256894 595336633 419451817 483180737 379453964 503531923 793277637 795024522 441371345 975663693 690265394 709675348 623347019 870365434 142607483 662047319 406530858 675265007 912942995 944744507 21343059 982916103 413882191 482375538 847505874 998867577 432827166 594752388 683891044 784531810 563920634 735078453 686779587 902695147 494945815 731090931 847774681 914782099 318041182 326243948 142265810 382220860 904987519 978740680 670836801 985183148 515736170 710288661 460265428 573097494 655631359 923793947 501181334 590809929 389658268 551875458 821982818 862236181 582957721 622599927 6912671 248206848 343349393 726602884 201331271 944198837 651279490 924150211 840921402 863850367 967145693 971805800 594664307 731312681 13099114 573036292 470707290 867766216 598708399 786916853 231980099 254739932 470315316 621487008 542821904 910362841 901766088 917014387 365908466 744548672 876614676 879125206 399584210 933253577 255352637 817929825 121740198 336793550 374280430 836399211 916673959 963784895 155674668 540455537 403515821 931120786 646409866 970892498 982732714 996999714 295543559 996275658 3013851 146594613 225401656 997619053 891051029 982359257 40173178 553965427 804812631 823640493 708616674 716668905 400450072 462890386 353738466 491839155 148014809 585828506 909787853 995052113 311614865 970637000 65234747 302222827 80154348 259685001 95109724 426403771 318482332 714271944 923539334 967371179 265758052 838125038 582259924 660559411 811455093 995528064 809028462 977787039 446580732 817338641 637621899 972301255 245328400 880485601 446833948 802516272 929930190 971204744 684063262 802742432 577125097 909709708 653075561 990157730 498579774 866542250 289703611 413595845 653816541 833602095 187742239 631797931 732895 402704460 553391762 580035968 279085743 578309676 978752973 980364656 428674710 649148200 428605920 519257789 155273703 846133822 293213351 734355704 169141993 493409102 705420662 865530637 943336273 977044596 57875632 571220234 705967699 855350430 587308411 791842289 798232927 847469176 740057699 990020570 745257729 876705809 693732897 874679221 846189866 894894424 862574668 967371166 947804306 951843326 625210680 638957468 550229394 730768587 319500348 861075176 13853852 401994904 17122578 102574028 150800940 568383521 306648471 594085809 964249683 969690958 823277157 995893526 647528304 700165948 117252656 756161463 549911039 998551629 67306772 188161646 674910919 719178184 760023153 851973226 66571212 657895661 570053782 778662496 952983417 987713796 671310609 679787562 727658910 875231833 411806870 450727466 589852838 965497351 792986905 878567476 504047170 531743719 890591755 957488260 540568542 570458609 603937251 762074638 895468749 975655863 369701731 543364243 339049980 987244516 955845864 997460635 350078015 548616071 482616502 904643984 897668603 934096494 689449364 995365985 226203329 761825389 54789030 377391715 40783773 978151779 475214806 662710392 973575607 999507185 662061116 964420729 602928455 687786876 432542145 935773247 566581121 992155778 872741065 954732309 12247626 926124265 817725965 970538427 553614934 599143390 234634829 559449312 517234528 918505130 579961714 864967713 366032211 813902571 76903429 935689337 209380358 855633111 606038359 872389516 14956612 526506748 954118658 963608014 112395253 913475756 958242604 984365086 712755846 718067112 870821016 885065903 756345659 950874899 869586244 882223419 314467899 949524983 203885721 305401195 98121308 437781451 835585266 923398324 292993933 741554757 217973893 283709197 422539345 493522863 418403547 423717843 824485464 982280995 127350575 297162903 1898425 485229562 79126475 680648439 974592017 991597238 480251823 791871239 365003918 908670596 437048736 940257726 24719681 840616847 657641075 690164962 49185836 198728078 930087662 998833794 781438537 942343191 705008661 852205393 56996973 195339605 209587120 569785340 844554238 918723646 739294548 797740816 498587508 831499511 181533704 882783205 124900486 916187870 756695862 784025396 957158537 974997867 390192915 948142396 862517841 987219445 606762633 989719581 30501093 826031018 9269913 687365482 594255044 741409609 832969335 970583310 355698404 929009674 900824899 923284316 972638670 987649372 235152566 684748456 617009289 817652742 453316141 984724445 362396912 845220754 851988082 995964190 407639529 579759582 280013785 846568470 629061814 759714343 187028802 253023382 626381580 938565246 570931169 699161549 412375759 979651304 530859146 614504728 410366859 695772410 622162649 834183181 916744057 982612453 999485549 999845466 48304407 736366150 31905516 420795371 791017988 848298215 118631103 655255405 670855831 963339068 788705032 948250136 280261591 677157309 498401927 540550600 680519760 975353469 54008633 131262825 198373435 416966950 707410174 969451085 929563146 970032218 22734008 987832676 810624310 989188803 542840006 575944047 789560084 822786913 238624446 346204923 820222068 890824673 451543362 707206593 493131825 578971904 231287516 673240418 169593283 289832361 298882118 459019189 909776868 950680396 385008880 741174320 862058010 908397675 114061225 808464423 568606549 711028938 934172324 959621540 451086300 673852183 946664261 973069398 944348312 996368707 367022777 771644887 24961656 878440983 752334420 893479539 76003591 318931875 322010453 334262588 810844845 989758757 646187098 846058932 514073526 782070687 27754976 740904123 909364921 993501886 113316579 754475600 186095987 722315411 516749269 921483860 129513981 533871684 963371207 976190881 956936223 961378745 939974323 984729815 224239861 563681846 105564229 133549886 758351585 822864659 589801105 757702175 887498883 913880997 340467215 555121523 232019043 455995033 59201195 741367613 777052019 871576983 199013122 292328844 235698642 283347608 988396335 989235462 131082979 663212067 501435034 578290711 679242308 782272634 762300350 956968962 181922405 675921820 844088307 993474773 999974364 999978768 528393624 819106182 957707127 970295304 394838949 733274639 400277851 955641441 761141665 846394200 580281198 841718322 473409504 978902424 320175330 645550871 991280231 998316567 936511335 973516168 863174904 863610443 833328864 852717513 602082690 660858531 920732154 968161932 712517006 728622532 692218860 999038072 926994941 951182350 375727655 468338254 345933617 740463858 616408162 857786651 491013066 718662549 372323060 990916502 118124797 898216549 78839822 838333448 876318822 948958030 919635193 961615371 224769629 856637276 405951915 783511636 896505079 916294918 726376926 943346367 745561358 842939059 719107983 918793780 645045373 923415588 798349475 874150392 646652503 751466360 874607697 923075343 749612054 789643590 516619144 969266844 898494359 998574754 204086669 547473215 803576865 837439319 597811348 762733805 451763716 567338517 7902874 190667776 799852870 930641363 999016540 999147102 816709814 901686004 332801554 759994929 329636066 689319976 965200905 975959489 482644999 836220159 355785458 637072080 348122866 418142737 554398796 746348059 947639533 972211111 465104072 535946520 505086429 635323989 848593875 955794689 728638584 942200841 548535928 861614522 290311173 758962410 285470369 665787150 190362961 311664939 776427739 847637465 550710817 971758525 636539653 747409411 497914431 629318382 78810020 508729984 788311092 949950945 336023748 362842395 152105944 414080302 363249841 689128454 684848006 801374919 359569042 411823541 266033537 517657067 86269510 587772852 766485882 851349165 637712312 990915669 726081195 759171514 269142229 891077130 859974382 920545165 621573983 634810069 423804614 745559681 610969462 934151852 295086548 966685849 620949357 637643268 317480652 949318870 11877478 175763782 400021831 601974698 216189837 947010111 61197238 603280518 997087295 997201621 296110546 669200463 313040913 934810416 737308938 985657192 209127291 569746668 584148855 861904803 77926123 162774337 484657921 791055637 587368737 782739298 591477266 791885361 694579696 960280639 296244954 357387582 22931187 385980404 752833679 980587080 385866439 493267183 246855227 645826986 91403010 787544027 270431874 597578211 573942515 673437761 6231650 409153657 597692760 705279971 914739831 984480387 512661321 828804177 656032876 665341637 847846813 867172107 361113471 383259817 268029906 901482059 385179429 537072454 554364740 690256454 494547927 679857905 553164134 580719453 265215533 473170952 475389861 974720109 376205066 739207249 514760273 826675745 40472888 393387477 99757224 112125949 162267184 654490344 376474254 817889113 510819885 800446348 970995997 993625334 438951697 735283809 124018925 561106669 964904649 998443013 967136771 967426855 364060292 726356062 135514048 230521035 251831947 848233575 553453265 798480403 111031568 217416371 417024162 623738654 501407426 506872576 74287902 531699857 457107166 670467473 701602716 755211443 783899846 894794408 404247806 952812495 607881900 858962202 89648305 216326749 326211493 867479946 450781563 971351331 273368328 442437866 935650573 965409387 671099886 673092235 933411484 973482350 378011471 907590666 870730957 936169750 534416241 820008172 324538701 797367419 858005994 917801104 492950643 667711404 824041224 855860259 193061304 927424188 10025349 113752627 676719188 730206663 360364986 745777446 446463045 514985756 475927667 635481542 460672397 838531060 288244462 515195412 132609173 566739276 497484513 687044230 399406662 868484858 913233221 935141583 623357786 627535583 504884830 678619827 960871308 996789279 529366131 786858900 531085060 561867338 362035147 620000057 412262246 986947897 457641253 544300952 330411825 699659405 669086794 783655036 889134317 950270974 877806905 941123043 620480959 638477344 162428350 182722488 8091222 439703271 322603846 355830460 610050462 974066142 752513097 916001564 885852957 905004933 781408628 914796478 408110364 755308210 198713459 303943351 576841737 886664656 724338515 956359825 618223197 623994925 575862708 675548953 921792769 970753682 190439722 439518461 305606746 591714289 643502395 661688125 425964897 948505811 256513113 977951940 595577082 975041472 746014722 795008154 944724990 961916925 639078515 951948168 92063191 546451344 272630521 372727943 80438469 448162815 514046416 855689984 2803961 801701031 994615988 996370650 317940535 955088456 628271027 799206977 885499442 997497453 805631515 941945367 460401999 801039550 837239646 909006311 439523301 613845299 253259339 278797839 958644117 999399441 370011644 717392580 642990880 930346408 211219725 258344375 169194361 844847494 488436224 995951182 69810534 681910862 746360543 890436911 454718199 898994442 619132039 983281526 177401930 855560719 495600679 890365662 379041143 714163822 388851632 654209585 141626911 919566621 408494236 475090485 826551931 970190364 99426977 863558701 900100080 918551960 89852610 392074738 440643890 920554073 54509248 227040903 903887593 968908998 91715454 181419304 295240279 885047835 144107162 679786640 199450441 646787099 661425512 833432718 271594296 906717341 19219182 575727674 495463240 901941721 324099350 682698476 8168172 37152634 909128902 917118118 985042442 987161184 878153236 899532326 717433343 831758361 137964650 892602716 301028164 768410435 813769233 994509500 339334875 612686657 187450393 527264965 354776026 593212161 532875075 927923569 695927341 754273626 343299155 557058540 184622405 851088475 971282328 994294377 404568380 568937629 274079917 460483362 399679272 664028526 36471058 410951042 733295679 801895184 162803276 844530655 660060836 754851979 956145932 966147752 120205680 989680907 545945758 808068208 553809296 911935732 161905521 958821975 515041290 956532600 892635331 980011372 511182515 709480111 909348626 932876382 607976378 769497527 656231160 831670833 267894176 448570094 76965745 128319524 889999295 958524102 636197313 753240440 822542176 830041024 359238975 427255176 102493019 314022522 415634713 453303565 331750507 595560748 132289597 177368958 237128797 508711854 729423742 926645158 356731845 753653940 570834482 712347835 379369180 735113272 547975953 672832957 998663724 999503146 928386741 964123283 929970571 972318342 541285098 641063502 511470360 730912011 991073816 996529309 532231477 926277018 44311023 537191684 528441958 603427695 4605494 979934294 153774196 973499993 592278106 771901832 131690120 454705251 606728404 966682759 646482411 786688751 116886253 793828431 360928494 596811287 531576241 711932710 429231805 832310489 371550037 890305661 900096242 977184811 799180504 844312344 558652082 738892066 44153339 493297864 708211232 785378612 586326495 588018450 805721495 965457311 389663380 495470776 852405222 973356148 913041658 964990555 141769594 193671743 349872751 417554273 486504646 618843240 116114913 447576554 330121232 897055454 377846680 385673289 191467272 929978766 249396829 677073191 584967546 736451341 572906775 889779668 681519268 920789864 646925765 824716893 641945913 964060154 134779577 718321275 43650214 83480869 576228140 914563905 928608130 950058086 598810998 979961905 301292034 860996257 446184545 989692638 540081761 740729865 262933080 303769560 774483995 791803571 949407394 991622806 996355585 996494150 277966193 650339759 335106735 524230326 94506861 646763375 279966635 471939150 179863463 409840640 186328381 389846113 498619999 831372334 724982413 956104632 548985945 691451831 338902931 922366018 406806393 625791428 854567548 952245889 743976432 897953100 45972904 762692801 762780307 804199339 632166584 954606143 860433705 965452531 838217215 969056336 238007363 467673211 316089863 648158237 261228637 425783076 695416418 894555109 167233190 770685393 296842707 622633177 81198851 471648860 893945875 952392260 304256490 321711053 934923796 987145879 926655332 992967943 369300735 869302611 149550127 517625866 325021663 739026129 768736406 888118295 281971962 417433568 680477502 941010337 321161049 605056887 147786028 833748521 790323654 850270027 530286843 686502845 562503181 973005140 291609771 440563225 146443982 313430769 572765098 888190071 656366554 739166859 126339153 895249062 430096639 467383119 429195020 682520788 55932232 259296848 518194373 747435925 380879836 739579768 864397433 901166434 970423816 973629281 699799415 938578186 950443469 995699050 65131898 901494259 329689948 655661345 871872608 958488679 11899979 353820918 718188165 731427657 447394866 849938570 858632927 874502887 952967362 965360788 969422634 977056757 212771528 480347713 625837413 904424547 484973977 897077930 218903829 893549151 513641927 796839667 183064086 209690011 943254625 967476605 188109892 760396795 997794327 998039720 497393308 684551407 889849414 908558950 107653813 442856832 609038221 910647430 979857897 987430518 760326986 953650071 108817587 497205673 203419600 761264255 847632392 864250846 360711286 469955370 203789919 916916196 900270463 933782107 896496946 928078832 669248962 677617582 209311592 896115497 752775924 814382117 707786247 943978491 84665492 104240735 694793713 848214854 789553264 907030846 578954683 911791114 648750072 962505412 433361012 521955641 35543202 380546549 838201211 966944677 78250198 913488709 359497872 961090819 264334925 648368264 375941808 714822124 807830008 874766140 560879520 874555831 66248839 286081446 731084248 753651596 350726041 490148188 722626019 907546159 461545840 984959348 176210712 574420295 48922006 178228609 601680635 672797110 946206832 950329843 858716899 997117001 549139681 915471006 265206045 889034893 153893928 408323814 462902105 674284388 795322502 962838378 334528320 403278381 720390277 750336985 342363423 347501589 774880908 923110412 830903135 945746618 849388451 977432525 158189887 174712756 561826898 834108672 171221711 593195876 720614852 779735255 334693470 485334482 925776684 995672978 608655819 739673910 321335244 956327193 195811152 488182047 741938880 959525045 489547089 928865839 281087886 470055045 839147543 992247930 189906981 980354690 642055511 834740904 505317709 611769503 504589340 754629812 422564793 885245125 777432786 942912379 113168286 852433448 476398583 787648277 148638906 589412718 979271059 984529750 525447922 978309563 669655742 861309762 893509122 981680826 260603784 881479921 561086564 605665005 14454168 601946039 681052267 945693812 561178555 971741093 853288630 988995609 62222067 792595054 708502092 793943075 15474568 959133959 863610605 864277227 59391520 63053145 470334769 521110052 605933575 890135644 262046867 764171196 135178266 299577077 794804936 994378947 390201595 622298163 537516098 706532938 4476648 465311378 277351307 751169559 330514712 354056296 65396262 637381112 675950525 749157709 681562073 683002928 951031849 951065501 896352830 983720483 844008108 900387472 618806685 684839943 328525093 804032837 182589411 525883742 406011760 770460577 571504433 978887997 977905135 980045501 927729797 984156898 786514510 989622226 127100393 437381927 889994693 913607595 202132311 948380768 912566360 970676421 891346250 988004153 853878949 864515654 147300402 873422581 168871806 683187153 148955941 477435816 98183597 520009233 59098044 844165047 212696212 928369569 728604487 839865640 865471565 900994221 872763719 969286319 293675970 827819652 286986751 383517071 637621544 861904425 644988033 677653519 939064786 972663006 580807490 964034033 384367068 639460867 879223522 927434848 877188025 890218098 360052045 609233627 802022647 920579743 711384967 992629100 409238660 802634349 409545435 558066617 553087984 991801829 699345825 794075152 420275070 584406965 737964028 908863998 771500140 932373016 656763879 853641281 798018765 973529518 372464945 959955162 72788033 892765159 69260044 364250662 808706378 904210328 780298617 909524238 213396455 230903823 290416387 482151589 296752033 783445326 379496785 555559929 635750430 959058430 219099755 666373698 374012374 482070707 280037337 614823477 677732628 814318972 556682641 967506563 120135210 743973398 706361512 997478568 75896744 239710575 40663050 589818093 484816757 727399205 778091081 969269241 724529873 903373703 707293461 909570657 988767730 997608439 633298313 759642567 525154462 900885703 918498007 972112393 499237331 508085100 202138835 915562051 816461988 998176933 960232353 979129811 770065391 848597613 571025397 610052203 561207711 910552254 753617188 974740236 855825556 891228820 880056037 931070277 227786802 311521395 874306735 984126472 773487915 986272772 952809597 982667170 898486843 931433758 61390231 689279092 209397457 318236835 949397984 982897426 962583210 982755737 467368316 519536828 218976864 395458859 59140406 169514592 324243845 710833291 236064871 361715528 164896182 511230571 532117574 644471933 572705591 852090037 83978605 612029689 454923049 884705821 317599356 711227377 869482594 882889927 940513400 958111041 823143501 966801275 435159780 904015739 664871234 911381923 607671008 717999287 87899121 512846889 977344825 999732051 206920699 265933017 131374499 528950979 135881973 503729168 285408238 536584545 761253452 878494011 804998276 808889734 766202729 786136764 821892078 929985007 112369157 672100491 308311010 314547429 913652098 989501769 232572052 383703892 727189195 767954284 914282119 954202085 874653982 884973895 157408484 303975544 494348517 768814736 109969494 809807711 574899669 950375779 442875786 501192989 930508772 941015735 601344048 993687876 84184329 302082212 620938718 674462747 813545245 862891894 343063666 603842316 215367385 702216891 308750662 701701418 230635140 999097760 632837450 803706314 945299655 966672882 761555554 780828422 671421808 859795210 869561942 996492342 86218853 857727611 413988458 625329773 450326978 883388400 50205967 772730241 831747038 854990584 933211730 972606522 918659408 972189621 433920834 673383162 608612986 764978093 912054525 951896228 835823158 938590845 527967231 532293569 937953927 999239845 816715513 889987884 236732131 593931613 442118513 905813114 411819304 451829352 553445074 989880014 949735443 957224313 370772863 943560327 15789486 61755831 631904954 807714230 159478179 991266458 214281150 779355213 841985066 847888225 503041561 783915030 660277658 833738530 619441810 668464057 211238084 547107610 152521333 416812757 743668830 749847542 770722043 984643256 321099312 892424841 535057875 637997022 434024848 601555310 628689913 956032048 816212030 982442730 418353354 511180081 77241709 586876147 842689452 914306381 686127412 956621651 752171690 859895424 9024279 23067728 899196934 945320209 109555926 795564339 258637611 892366986 93263666 780443640 671618796 955337407 159882216 697215865 331198329 693177900 181534141 716523003 555951874 850786945 168900860 319443434 55723211 519673549 235817674 423172933 66461932 606791182 439217254 604480815 990296062 992665350 226755050 657210954 507016810 543352276 291370343 754441365 504017348 870953736 208208956 590711176 867424013 941335500 198004349 470689729 980719128 992694473 149169184 986750572 113082844 639785732 482948222 816935220 838628291 978982282 939122303 985954776 658810900 817103449 140925489 615282497 417166893 531891250 503018231 547480857 512026766 694834641 475703778 627071472 528285769 977870792 987110389 991572554 764541231 948556756 334999888 368742774 568119967 898224201 842027430 979830755 749308794 972664637 225136812 502920839 87140173 372014244 772810014 991581419 135547620 563344954 905115683 925348234 372321223 779968374 182479425 717378184 883356829 901303569 373179345 595760845 897795346 976816712 378508146 606435777 281127967 802455732 115433276 310705519 79572056 484161171 284297141 390258260 781997810 891209844 115703733 600191623 935717364 945290711 391333253 536107867 861561912 982577056 834097323 875110485 975745173 985192988 916371363 960858614 242347019 393873072 921931863 996656131 853964031 988420714 6477908 720689787 400509706 704052422 962792170 972183740 327026 628833762 172761533 184745268 590302451 942419383 185596958 608491473 257528657 928831588 666973 75298198 468136089 476975041 350849185 782197975 874960580 921032038 142941805 264691965 997723193 998991364 459323891 701043829 630673654 684227767 626976425 818553295 907046276 993847796 467391828 677225220 297505648 540606270 72723240 349008602 120786674 766194661 740016358 827008268 557949545 669562084 902603108 978430338 616186292 689345439 862305351 992848241 580995572 946743364 824774678 909243649 139621369 222376879 612793899 998403939 907271551 947987348 447485220 980707854 81708029 82281391 642485138 779231724 628186012 920015432 923219604 966699910 72879416 290427326 71158481 760519398 27223831 310120152 764213972 874434496 733161970 991254812 9114859 919473397 994300456 997315155 383713688 406470318 526646909 921543086 736020152 781904018 927471919 983082838 308256827 875496967 121263669 764222669 372309034 705763894 452953517 972364565 81344634 936432337 724471863 881167152 627385161 989086866 428582190 472070787 756656326 785030798 125144618 706639170 57745069 196229728 696684680 906224253 480133088 515084788 209655460 982997990 77367512 865750904 914215306 915595828 914724460 916568526 313813001 866742798 849433578 922369696 334354590 822539341 62662111 738202013 26337514 857370319 846232071 892497621 551564284 666614437 92222981 959109308 676309697 776972154 733036075 794103271 67104316 285807861 567173361 815305211 358927592 566420904 742014239 760048133 720624931 792216639 275965646 960639845 99655777 249662804 18811970 897231146 589013493 906702292 748333650 892875180 42728404 953263771 773893233 903425896 422210083 535381241 388300386 391878441 958853924 978491061 136618333 843821602 335574797 465936902 4473373 986962519 48752773 871537706 57844140 887096758 151779298 237568603 414656900 602463500 96054647 218028839 881316720 992353410 128173584 238449608 758798956 836425747 633011239 964328255 939267673 993285784 262568467 830401069 611989516 615299580 797791617 966704937 281833432 315883092 181068629 785435107 51171345 659289501 939206611 941986802 566458334 870544065 667768845 760026433 879574414 923387286 238936373 371509182 676809847 867105203 837092365 929724306 376598787 435790877 849951869 877141026 165030987 983407337 230134242 813279906 739532085 931654766 905086591 979704704 904226201 987280636 879341018 989388299 980967841 987051559 126589031 695511566 119002562 199003168 565422864 795367768 372050893 698371985 486739683 830910047 709730055 794596805 91703465 245835185 672914787 740499912 272971185 788355844 238298448 940400813 203794928 525707227 277073557 592738242 974375570 996426517 329890063 458172775 708487589 725869369 906585675 981203554 289989974 500868162 814028424 927696668 395105007 510580945 66119043 602809195 366287298 997613060 284055336 544666883 464780788 718141693 463262201 490600559 877918532 951538371 228259509 547154111 931904608 970202099 110195443 404018443 857005320 936019633 92345481 782926370 884831817 959072001 160996547 567085513 31832910 51834457 499592654 761763679 880040225 889170408 65913733 637463981 638177481 996755907 34437648 232967631 54047330 603704297 69799166 332009254 214081670 988011534 48820178 785383881 975817834 987166291 933594142 978723912 957046516 977407615 74822933 998312273 969140002 995560199 913909293 996136741 973562904 980153547 985265858 996511706 974063300 976976660 369568916 927590664 367603234 618929650 971873246 975990847 116915361 824666230 217787526 593406134 185852814 672598819 889289244 971803229 307602619 426071601 167606590 370957465 686568557 801796717 746685380 899231610 461412311 774153611 788777860 830956330 99143665 891460551 677820521 718254000 891594949 916925503 566954726 651856504 746306752 853357164 718956268 765648166 774585031 959117135 444128429 976769448 927413203 969130590 661041945 717778874 482528626 755643042 9723960 966421906 925861330 953841435 943027976 959762532 964019959 978325872 395854153 441462544 842833120 945181388 481416734 993900124 398462142 655341369 659848382 971637907 108050257 229391432 437011568 632698942 113309998 582926683 551815570 860613240 409734951 904660169 978829172 997608122 668776589 956049684 789963951 835229179 628022657 895509465 638231439 714801171 198941901 697022391 10313175 997259618 936602125 978350606 268847367 386368362 288628179 433739594 94393986 534531406 451613735 912253499 695844304 730894089 481667421 864602660 803204417 943228397 67011963 171808912 445629504 740098452 940506185 979246946 230065378 852112948 242259413 703022122 979730765 990321807 562615828 849439595 532031843 779260745 585733590 793041177 806643780 874514847 508341535 971921365 271248735 624851704 70748761 124705459 269046842 519871856 401545253 437847981 79459698 719717993 973715771 988946014 144221448 313673573 766475401 783275791 766110002 805148639 161096228 219529717 351027127 645162196 589982788 829187532 780246376 939710517 936142864 994823023 475570751 800489349 887524615 906623934 498892894 839439351 256350737 922949245 276509190 386138756 32362879 604978840 553106168 937274929 581175415 832863620 737788961 803769264 718058121 817816623 477561137 801993845 952772476 992465098 799752602 896178212 337901677 616000227 916788891 930847877 170345691 776508432 56205323 303489280 87180755 622843309 626484553 840598667 543055764 655461015 630189556 761483489 45704281 272748473 294358749 311436798 211011931 935758439 514382604 789576346 774929766 991067301 979813163 984676777 585104505 594187627 1487917 423413421 241184178 958524575 597438896 809666659 698044630 789967617 958088483 992072837 955567356 985546377 156994606 169954931 398061280 672801260 298507067 533847328 333303204 496871963 977075920 996710357 790736042 874785289 874569799 902771399 71305915 910912855 604509752 880569110 568026558 624032765 116028656 124055584 823239535 879611752 27923686 605077694 801056307 975949176 937697492 947402026 907945622 980100812 461607248 982550206 964009248 997628183 710572350 744778165 938223869 946840178 706754813 951820273 663381628 666193783 388786816 393569595 695891688 820862411 484032582 781885977 742288361 935381517 653048946 865391558 947393038 991403881 586410395 731088259 665033038 982796486 850006844 888502899 535334049 912238323 224768874 769934972 996761345 999893065 52714882 862133758 129760769 324319415 604755408 638079459 609740733 686259851 907957509 990783820 668203568 976282987 587624842 812140749 148250241 609786880 241992656 908963639 110212355 299297607 755410829 778566195 206883813 606902873 625478199 646167185 438220951 544175806 364887466 990247867 531020303 563650618 585445209 959852857 599845629 763402889 676853093 948395198 872955101 993082484 812945448 857637608 798779736 986568801 455302154 942959179 587944688 757212128 489058991 823692242 946466725 949905865 241722160 444701707 510575962 543222097 379927127 715611983 529569261 754576938 194004587 593359970 19582813 361045885 463067337 852719791 10843962 44291649 708983373 965348690 207712729 891738633 732476366 751101320 231924396 746849818 111740425 382874422 517844901 735098694 452849391 720078322 559405018 767483133 71345532 878743821 428594598 833938481 912442433 936845439 593612756 942375846 968732567 971817444 476415640 568684993 299154710 934085455 243578006 488929134 474090082 912553662 570284568 830723577 988946626 990861886 812291651 894654333 249815778 782278986 103657634 607217819 750855243 838520299 824121555 982869115 546165492 958857058 876222831 929484037 638166830 666231751 894062879 936373946 231842896 384179984 248815514 613160162 704569205 984879151 56695732 558692846 376300873 704997506 784894685 971766405 951487035 969159790 188954770 640537432 729471786 933605380 330193483 619752051 196750567 227702200 797630074 913956271 553815094 592470287 236047416 373481409 401066299 678889427 197183557 488537058 76617155 247559672 647243699 726257269 60017053 593064433 359741860 463962807 638016783 840372523 308099898 411195060 338411225 387755042 935922759 939736752 746742067 874067037 337397470 779378815 651845030 808289830 721200386 804476957 171669387 644191142 700448458 867780151 396313295 596690630 240297089 714262931 888999233 967176819 520347857 653338566 354598052 537595501 666101436 892275960 464834618 891581967 630623887 832228075 31059246 286352629 995959448 996663643 454714111 835293246 247982239 814439855 901273585 961613141 256348507 521307182 824213468 936522885 96501889 401638620 752209343 967341248 164293428 683644306 932602211 955493225 743856724 926566878 180433839 859209352 580180497 605580722 715075002 923432087 170329657 669321505 584199117 983657060 120787840 291361562 863189965 960779547 823652485 855967584 113341555 468107005 240138819 575868194 547114820 718695780 310837717 831853956 207150194 647377515 320870890 326402647 84277137 976820903 924393393 951994085 296167846 791520274 605375489 673603206 940680195 996288278 807528177 954238877 772563626 894132035 411682531 470799424 183974592 653014669 113557061 983974600 182852204 468742366 949450437 957490154 434854322 902020915 6531070 810815605 77325765 845525760 544868896 781449483 505437624 819616086 755927373 869324039 221011683 352002245 878862705 933147453 1769301 113313046 692785125 778268277 157982026 678174009 901324399 953607930 529517679 764636151 128574813 499360484 608304853 841028052 739994712 875023291 159045019 562865465 791469810 878159762 871737797 974985996 405305602 857945315 756550477 864011508 158311035 321416124 732464643 814313091 185033608 803723378 452195458 871232348 372066139 692531599 268420414 453452701 381508504 633464560 805457402 818797459 723373725 789861012 599538268 791593119 546859949 556152375 966640872 969807054 785472348 853763671 552944170 847364241 195105751 227461531 448941818 602848828 783820448 997635999 515631440 992221753 214652812 466018014 795627268 814819257 209765970 268817154 525602805 582112997 18097472 793470111 881361535 886456501 986534146 990175811 204667024 360649289 449689640 553629947 229569122 393386511 465587806 742453603 343318092 755755543 386187895 557834118 568812275 744749198 750031532 818640235 525354844 705040503 630243349 645404846 613580583 714644050 516470215 864561435 374455753 982104404 753163749 878999261 990124242 991475248 709405006 742117549 252923993 995863139 64282292 587712831 996924581 997140001 662820924 764836360 121080867 860505876 330824290 860357198 827417939 933156637 861847386 921002292 423399562 876297165 351706238 652230046 79751734 83077699 273442446 290738464 131273536 946260084 133193781 186919917 468240762 504249365 279954078 524071384 125151726 619096979 963425897 985638093 603214642 882151770 423487489 571958522 686173082 826918362 465436218 834507158 968282768 971136970 858232494 897953275 774264801 846929808 317031304 535799909 647479324 739668403 178522388 353294091 544308632 709486176 20570277 951178174 300559434 366784559 544124478 950640027 478170109 690781312 392262060 930132869 566630047 822144012 221488092 854092996 245928634 374733784 720689891 825230506 521163965 809297773 600564818 679955620 302074203 431568845 152527341 333199036 127705780 873942996 217516934 234096409 938464566 994398320 97445425 984863592 336111839 614596280 238563095 984166971 909395529 982023802 950518019 974471254 913865735 976406919 948840351 983612111 412373168 768895296 202645004 362234144 439927559 907463967 853158915 966384296 622335274 906754341 837816978 895098340 919294105 999379730 402641700 990555369 375213948 913431924 960414088 971418811 262143077 512551986 19575190 538914639 606514563 914838830 445932277 532206411 960267255 974083356 776160086 815972522 369117802 506930850 176871537 685214695 615648940 730521072 876571660 942222605 448973506 798497613 243800065 310089555 546586380 639721755 766025147 829236644 375503857 502676640 129619485 881100422 324246758 661763706 982295606 988091468 227818503 882256016 212823310 401396437 98960291 567057587 993822056 997182400 718298180 877301382 373717637 976732513 827115252 918306059 58680694 876739227 181068190 890793584 246569418 676942988 287504810 966863287 680886351 777626892 955188249 972511781 974107344 976641335 984511938 991801085 180858169 760467620 400066114 482418872 586316524 822457520 791068702 902542919 444028190 811122789 849530718 894377574 66214131 403698258 883311294 979805767 239378046 542637033 401150807 820857207 518290738 808322590 781471383 949849946 621213185 910913668 187267890 548116089 706339076 964493969 906901702 914819726 645621284 810402123 282055496 356219240 634481270 854455007 201264324 437379653 231228433 672933575 999378846 999868540 726228211 873211013 665413315 739370862 659577549 727090125 704547128 787280848 624749430 874776408 106513466 858260690 363240466 959241687 820277787 895778057 827328719 841467038 981957319 995544591 410658600 894977017 305965439 405168519 531723765 803256683 578896189 716590861 957009635 959281256 63873171 221615312 847429903 981582360 29372700 950133029 933986800 988858854 170666393 826500014 833880551 890620682 856591429 963285163 814534908 822971308 43868443 250269296 411388251 541058917 656256726 902070672 427489726 781088666 320324581 675131152 531163820 824848176 316382271 480334085 606347273 722524716 448577321 651095368 259568149 906780398 411049479 443659758 104422655 885991794 551393044 899301577 166524468 696096778 315566641 410565981 950559603 952593656 32806507 736506043 155088190 634576668 759533709 877582763 560468148 978092252 262786084 792664328 830449333 915841959 734874821 886563525 259732633 790813101 341263294 797700333 8069175 681975192 117665501 746994349 246437101 418325180 602974171 959513638 121404392 802574504 200320288 646655806 299311088 604295129 59095945 445084424 730476207 969290849 601419050 908661485 223793258 351463848 514472086 883751281 490171336 786874313 306435571 980126385 152778926 859076894 457923725 523372477 947430290 993689845 529320901 913163646 402703453 456355585 792313595 905812606 7163056 412274031 346809165 459288964 252433375 870908277 913736963 972109879 581868136 835671664 654055943 654688791 839470524 862564030 144597273 423199864 855400042 928738944 549966651 994994361 758806488 958934717 929259149 945225595 275008450 307626131 917263705 991371764 259305726 347366010 678511251 853020664 978824327 995999097 669243947 790897834 140386975 435618913 316380542 730740414 122196862 452910644 225669502 911589877 540357985 855825644 311727780 373301697 762885518 976839072 597996957 922509952 490093586 715927361 465360818 633738338 777377107 874395231 544802815 612561322 973183532 994997585 422521938 709939698 455225628 802417827 785578881 964801931 317475008 579075586 929078884 991348605 123136897 729967224 249427250 873436418 408206326 792790905 368244592 426744101 499177349 594315342 475904989 659140703 852192468 874495369 530665832 989632201 554171612 560458633 209130606 330718748 932767499 937098614 443840285 957746347 393595075 869520448 223278962 739501566 43427378 612054984 619584095 835788549 753153950 807090559 644509603 936633210 332332629 693937128 58996939 779008621 314587913 395410960 151924119 352685874 30349458 371959287 556184645 839158984 32890943 632364122 920128452 984249238 741290374 885882572 249030866 744724023 11558321 912417316 958749020 976235385 958519579 969009509 118216691 846789482 962046871 974938565 997905660 998270215 486696253 989079858 706050144 853020271 156335030 908787787 510124247 928358570 101328552 106486623 999680064 999795600 701897429 782026297 702498988 922598122 570047191 804345287 28494460 250394260 740217659 963731387 935172853 936362368 992564930 993077995 960295877 987291740 557507296 700335301 887135930 960206910 374261610 687966664 126286828 746215452 980599701 984927941 34831269 239934509 745430511 969100513 292872130 628847948 560400858 562377507 943847719 961970819 14145598 464139131 204625121 969947366 393073849 394907647 190534247 398856370 801845144 975072274 862542864 916867827 631277599 895661762 615216415 706310325 729724285 981688269 306148817 698588121 170916907 550049784 147214312 150560694 293813217 353386985 355037734 657638329 951143027 964058736 242578011 887036649 428223337 768034163 70162262 802461027 235574548 511631991 748092111 812617119 447889740 496311461 739576199 983829692 931250929 933333994 995531697 998507744 511213398 519845184 703045363 774354114 907752979 946306609 115982874 695462987 424495492 474760294 129963955 911859758 774657576 997007253 926363575 958113512 40190761 111737486 308133144 321223859 492847187 636092403 359185788 448088126 562205022 941227731 73534103 458078085 63166556 930239380 660611654 718973330 635544940 830320338 328591032 632013276 597254245 836256575 264762809 653177636 695920186 985143152 735923190 876790949 40066915 534856058 532926746 953214639 413635823 947121409 919688269 950047796 819532745 990401363 65689505 995995600 814567968 936754041 251897070 414948514 718310160 756685642 388345147 665867097 467695054 788334450 912154182 999149859 104007768 295652063 762260863 845476093 676589703 799147263 890830397 998296907 437726031 984246353 684447399 900666510 863142464 887546129 964545894 988739512 886757062 932634106 956819362 995760038 493491144 990191669 695669056 791818669 691162070 799187952 667164624 697236318 439877878 980041317 536077151 729546886 472833223 657061077 939594398 992887030 875309299 919589166 139614918 697191125 90468811 739497119 670499842 997031186 653290702 852966774 313079849 466724573 568872712 762883233 25026165 529711326 374607748 879285023 294274470 347656098 252461228 714070598 950945478 981585398 654797080 799108890 254060609 996551106 294746168 347508350 434289566 887853039 750980072 809421939 129666557 569852808 535915221 706816010 980379577 981365779 700321967 832384831 416170979 454162338 194395865 383292020 195682297 983749141 467214570 547169390 59686137 247448928 977268167 989093759 109021710 377895203 233483562 966714840 25488147 207941772 774790940 975253993 817199252 978457150 31827327 965828237 8338814 375921299 315016573 588601812 548255828 556594144 512968085 941563974 898418128 989780275 703889950 915832941 643557333 650179510 159659393 189207953 288991319 515744345 341440368 782173308 109244036 932109458 442162095 796979061 593983866 667597761 704639995 982655389 253895320 575230236 365201365 544293304 112891131 282625641 892409560 910098114 270520995 438338835 156558740 797339206 794142255 902166073 15919965 731211136 390224794 915529564 231978270 402407462 750708412 965794098 260371100 957856134 854378803 997016701 765738057 906974506 926079578 967831857 664142016 971358565 8719357 858132966 729870268 858681379 627493785 899260835 191439845 449754277 81478361 676997517 779283926 811586211 810600753 867833815 761952654 881696875 157206056 240261522 600264151 950767494 236432815 532465812 909544253 952431890 638760041 937044631 509806915 993989246 660265168 948355391 969274217 974046445 36855942 887346574 240641568 370413546 617695028 948055625 922714408 957675154 117548835 633774089 57076380 258893614 810527214 826053397 900838522 964545067 157790078 266224946 54308815 308429769 705212788 790639031 122078013 666758523 561023678 565780191 279150027 515919921 584198169 928333831 216180562 979086701 312049036 971719194 787485364 868484517 633190218 723870518 220794347 635726788 315338388 884106477 79639730 142027874 164016944 244101430 934194773 936193967 310794860 541882269 475019235 859020778 603560795 779417167 381202625 786294804 190958426 694605020 13035905 112757631 150099307 900052560 755686110 913007874 589085489 750406234 944135044 962957496 751962802 946885590 375831362 618824881 167562716 192586323 509541063 782215639 542282861 804341046 853836075 870201017 966253282 968309975 536441876 697927802 744811755 863549597 390330433 763023963 939182792 980973189 371693788 660474132 471120136 795942310 561519423 940861792 860993656 901847922 965855300 997108712 674769487 999192304 871355277 958247735 376863146 676233814 161457901 719044437 919683440 927051727 852023610 888600201 649484329 794841470 509724187 862341554 844931435 882737822 616081046 869005158 865536864 957262485 100006709 621405986 824406901 925761598 890460975 951929876 3659062 812077796 44201830 935823481 20225758 856921306 243242185 868323686 781031030 825575982 632364463 857336619 479314393 639352250 955828618 964060373 643331404 764943896 635411549 781541100 336786307 900235059 356041464 821346685 692378317 924202490 882887210 989956073 130382400 598232970 709767847 785470357 507424476 759885785 480068985 784298388 739679341 888341938 453394080 611418825 79133694 812123791 503384241 788894717 903407148 926722409 765525713 983966324 549607018 972061065 463244464 678505637 300199984 544235280 772477026 841299670 933118229 997834035 680201248 884279300 351298736 968677138 691148893 779601261 216670630 561031848 841230576 913659187 86490608 588235773 519963480 730237047 85688730 749890281 224679358 593829250 217114758 682584300 354298681 528682766 509992478 852776661 702483409 919332356 784861713 832966039 293214991 915059096 330492240 972009263 953535733 962733739 433829863 444831167 188673475 869395315 77099429 562649865 74720974 230727169 289181602 842151743 132374999 906997127 884074165 927504889 755634248 891494477 194595035 717333073 992087136 992421941 674062978 770696331 969647099 975066716 230081438 551060303 428967589 450277369 757926329 919294632 394055020 436149117 470445893 612533408 415069931 518159346 5679977 741472608 137194419 965028267 38584414 265720912 151955915 954677924 787908922 840354610 678262214 716406718 251810344 933563617 434394853 488297354 988974293 990106065 926988890 967649820 777295267 946376736 676441381 793561920 487304410 534182052 920117239 952798709 716880630 945974613 828311937 885372071 343195771 772602982 634929833 710423577 353982099 769731127 125546197 130440884 435053949 980420351 31530971 222671591 767073487 771411175 889181598 902143646 964264990 988794093 650456862 842518090 558724377 837205601 513800033 739920089 408681861 605580812 559970747 826940123 185524752 648193636 367976900 863370567 587016505 592646306 3594485 91957108 655258357 708021649 349406559 959092302 605932921 707479053 717267712 942523631 604600728 765298429 3001072 423440372 555383578 797941836 531887325 665030564 329645671 349164295 356846088 466422843 623441022 851360947 879405629 887609787 716482770 984526921 611309068 678609025 724472150 944652428 287856983 790672705 10978066 897379652 963368991 974343118 702046267 743933491 544804272 690657128 224201478 479110855 702781687 810067947 684633920 996623359 185131819 446054492 405041246 705005891 928313718 956341737 505833098 836410215 200836821 685166566 670788621 808635041 866748459 896675823 964000826 967129105 705056145 915151502 139250705 844384275 319104375 393382315 670244731 917804307 508327158 885674666 807617170 978353158 768735081 941282956 234130611 857838189 338388049 410397617 780373684 924809670 868169781 958902741 999691827 999981596 692207691 859400144 962171092 997144418 616990936 648300519 269840319 512326642 559280291 808328532 17791910 865682333 395534200 487658875 531632639 536755944 500583588 607583067 852990889 908408761 8335457 295586088 71404126 230513195 775260194 925222902 704738691 848631314 56469381 462189265 443277951 913156148 493637568 827920520 488523483 904698416 906625877 983599837 112531734 810023304 737588329 750575553 401529578 759971986 447533218 996453932 715447257 759896336 963201345 980994790 80379989 127696317 951569981 962767342 390540243 754680510 732616357 827785106 618253951 836058080 887151271 973240752 385897610 546911653 662705320 773326758 65632602 760206591 184248489 401198172 224900977 463696048 40142732 44378423 267735416 637180195 874388706 908550298 102863048 829204606 889619053 964641434 792157094 829456426 884922443 973346124 32325169 688892192 916564438 993244185 413355404 508437972 654997789 821100335 344527481 557598700 568733992 901903946 418778462 421644046 55880924 238049061 603712613 887167680 458071615 899093002 933889808 992346268 920734411 954128672 937483273 945859882 737315183 792251148 306478700 934677861 654239246 871039648 982574721 995959707 717616954 742502737 177408209 355289762 494837621 580275374 923026778 944286946 642242382 682071370 893464728 968834274 857718823 872335999 239653728 320076989 471679892 765464536 793879484 801025528 541155314 612405368 623828765 758930684 976779987 986047372 555293453 810819804 81917104 682062665 770762518 858445849 904164532 908502426 907772526 995482860 483042495 534919271 870996412 899202872 624268482 847252064 453144243 948372666 440506085 615788769 738454407 803733965 842027631 912848124 542985935 924280547 613433582 933075146 395440334 873260340 970341934 995070361 279114245 812071275 109435672 401047843 640351151 910245379 614986839 792835626 39431926 272666786 235141333 912006806 146327222 837263865 680894459 852542174 296251400 660276572 392701357 644657002 213359843 844830618 642474067 769018451 530924848 557651803 362450484 588114839 950250792 953341050 280172368 545231917 77028004 143949271 905770116 995299926 260184763 519265784 353811422 584055011 624739327 934035669 824048283 899769564 846019279 897828138 196948442 539466040 6978241 874184451 629844624 895342596 976932486 995826240 414596909 447821473 221990334 740285629 836403999 999077888 683483161 908379660 249745635 708328436 781177765 995792634 735123471 905149935 334388514 807178366 902198722 944864654 218205099 390038236 374597520 589754683 138796847 602437048 32773653 135605140 332577697 981706353 296625156 783897038 610534517 754108726 989581667 997364638 925062074 963969747 909532484 957713819 145719672 742049923 786857026 787220371 214767191 824673328 478671972 820069298 65585939 556627887 350162046 562335508 25812506 357858649 952067821 963881732 915936170 952640296 451039190 860129556 182403741 738302121 518920720 654489828 574939883 586299914 334803170 825814113 486982020 795183851 222865147 920307982 650074935 972080135 144326462 718091777 553167134 885508498 635733147 752564508 59676124 646116113 235878681 614874601 898752454 955595960 749056797 924585797 858352310 880406856 445714229 985413875 876111199 967817627 625895282 742468983 185039338 422478915 750872687 996034775 366282076 820270925 774403899 987103465 992299707 993510443 927651410 949504703 158473448 521845523 35556057 835985180 81544367 758065678 935508489 981408666 799689416 989925326 85977466 981671477 35471264 782611146 917277263 945894076 739186638 930070016 907009891 939784922 715399082 849886660 769398237 820748635 600071903 893047732 510227618 597017405 593427847 801620120 32631395 865261692 881316873 886135621 981078386 988242413 300234637 505085014 954455062 974734445 342790754 471046018 609129628 963245183 877784183 973920528 7033939 488015561 867081989 924527156 990157559 991619447 755778586 912435119 841617189 946291241 478343736 691068811 285919335 710696603 63280931 114750536 169973854 611733979 21610697 219244041 143901199 466056125 266605867 882828803 27508787 49476300 970106109 976977006 397059931 751189087 554532287 761000130 150714915 336416220 202793639 905440572 816467427 979714957 643661354 972296805 303610060 351423242 323235382 397831857 890931066 974504379 192978205 570685224 836422782 923456762 173664226 310582447 926490302 931130750 971134797 980573455 445289265 632970740 816121452 828627526 892397427 988005389 50179360 223982235 12711812 864306271 858051765 959154876 987677704 997206145 432324501 972782920 458420677 698791262 512292828 883387363 238740313 650156366 926184152 979486992 211710560 919079051 612687835 832043192 194777278 776386044 299495790 809240250 541361436 835683440 493676804 569744687 866755187 947500151 914960126 922928397 773336 444408048 4843676 815683165 458330172 535300825 271678854 984024028 152914554 737387273 32952324 563976353 79268367 502296209 484645116 698847493 601358965 832404422 89415609 797470705 8254009 525195686 617577989 704803415 535039579 596222034 968696957 977925326 74832329 99962551 315313585 383112629 7890724 901993471 404974664 911756564 810541139 843457512 313127090 333397927 432026927 738438145 32460924 175459664 840161641 914307646 12683968 270019997 269512438 822567641 976750668 983071814 671923977 736726404 27280519 43756503 2845117 421702912 924959075 925625402 291145034 412310046 385447263 755962709 493019366 901663955 800337585 935825977 786802468 837631293 33345037 985278778 563083992 612185414 732256842 882174222 539495569 751221709 254207038 270441303 3462879 220341510 590144256 619768670 606448260 843947249 8810350 251549239 80038255 570277648 470584647 664681383 860225758 929570381 703455703 748114968 699336964 774471361 820008563 990525790 448124072 629220690 955476647 984379894 672766469 742286756 956207027 962966499 942849058 969840175 392068671 587230655 579621669 930945439 263761180 722069793 461164267 505808787 632297022 990407236 497296946 499574811 716752662 977980226 574234503 902279201 685859194 861939728 56643999 502033463 862520130 903849413 926132110 986527336 693198293 809994596 790598943 848435517 602347087 892639915 386587666 888585484 29157629 320876143 774493099 892006690 924508379 992349934 76086989 848855748 948158762 953588806 371721958 731678082 632970559 723957306 289708375 948875459 561377334 936955404 161364303 603752053 83149335 224523753 567688839 980225160 679950764 765584285 453887338 966900568 369655778 695556377 777093193 885596047 605559731 881707500 738380645 888948030 988719203 998601559 177255963 568025342 458190330 516794581 315607905 667987236 691864181 762025762 258301660 897556637 948234097 960417527 368752706 416998995 520158920 736561753 278263848 735663690 450027164 821109700 822077053 847687379 954549501 974276338 213290667 601843395 996463445 998917605 581739533 736944307 590092311 750848728 675175735 792788561 677808514 702039801 564273473 626058107 460628261 818860195 346035425 545642603 519095593 658547028 105621658 119758565 825458216 981350602 59700736 485883015 13111310 68259862 233467583 410434150 296055241 811666886 25080855 557262324 420543159 456374967 408803080 644760326 410705533 492855981 571711508 753215647 529900381 806656960 648702988 929811652 790775724 844027896 502990931 799294479 347623554 805394273 571269591 940645674 484083204 944457772 274127375 325233265 135544399 692003535 817462271 961695168 402816787 621142617 789304174 871254670 174065742 717417571 293338515 407515608 287104105 686635140 638554054 917239643 505471633 879910475 741100374 960708951 54886826 257571568 464284499 637478854 42727985 500959851 575678821 628179667 115652661 292882692 778858084 993716593 637460379 668713423 631484454 787274364 520514980 778907920 784952683 979824067 102896577 921260840 613386611 983059703 548082755 816589935 995556080 999314648 747147296 932646159 616190204 698749234 97633103 801293944 691961523 978666857 651483953 765612942 762974067 895373165 378250929 759600380 51027643 642278528 399747422 638558215 447205801 818388129 882640892 885359130 2484038 110355422 864443785 891782189 488213210 892574358 553451874 676929682 240738304 257376904 911582578 982859380 888871931 943294351 930103961 989234336 355197180 589605468 200170040 665361567 98661473 778567169 766846148 967934024 80837082 772626116 89733259 117896739 497006042 582024197 862853312 955629516 245777833 563623011 702620498 897584685 412461557 965455238 96281134 718623309 341544215 459860378 155561429 635653883 445261157 797538290 984909476 995692175 605381471 839734008 887383024 979158691 19285831 447644616 329989237 600944110 698306255 837638919 549330751 815920266 797955888 846134870 390070949 510627345 381424531 739130696 855886786 898188748 166260735 850383598 66453366 555123851 959671015 990679482 469644492 817561992 792470078 949473680 449250594 772746968 906352525 914024985 621636951 634823878 63927432 283333965 1805367 850669723 569547526 746947958 946582614 997077857 680869134 806764416 623045833 812788587 372372935 749064583 973142627 973151384 221589242 431818214 334553634 560827925 912821987 938058137 207285929 705288171 570259741 643442856 796287463 964437763 698864519 722873620 348526802 804899907 979432307 988423025 352095862 879051959 963956142 980192020 468367492 986859650 534554258 610672360 83780240 195265170 578872703 591493311 551992560 585573708 680556722 842020469 582061506 979625145 998715293 999236170 829236563 833405944 186965587 470049907 386963129 482592176 767635450 986744146 129982175 639002146 784860453 913116588 903646869 965493852 592542147 885981354 551025481 733544690 712935406 841591433 207478873 774970103 338943368 679770516 385985518 887657769 289978647 368393130 754580213 788968458 370504313 518369337 310515975 358151255 60566869 659089005 862544534 892008844 672689741 970659470 741132849 961762291 440573535 674114612 187338028 944540398 60541168 762294161 735489283 960582633 670712410 803272527 439001841 439441853 711235573 945273214 771524658 882753721 658380099 780730221 659502259 987387532 750466660 925354666 162211556 765910829 967677896 990718994 549833478 891660754 990869441 995848713 137776265 846478468 859843063 864429747 494735336 677548974 144691964 799443529 205310993 345159527 36520287 998889035 302756309 960787882 109386447 856230230 433718897 758543277 31934822 908438277 924501833 953317299 132122480 652132245 993263373 998492437 740143017 958835054 717871515 776143331 76159955 376822625 694064215 761944784 987697295 987919877 650354205 917475193 854335255 945954478 949034779 970420966 966216482 989349988 301895529 715140416 907161506 950538070 999245652 999452102 83842395 459884943 504082729 914151446 248848119 804916275 437928606 616580505 921359053 960401917 306103635 766009464 355615447 835258714 17637450 294168199 277644281 698136380 871000089 995207580 678042210 988782944 55544740 525121871 308962163 559576780 555545480 795010712 358300954 478261741 553022559 606797911 470925631 878842643 867258695 884120988 801708494 861077870 822758265 891541987 891309742 953924828 24088541 789205195 808650238 878794615 405161434 694198943 938977154 959261683 929995462 940712602 471283309 473418384 198478094 222877196 397592326 804063571 156522668 778106777 932595427 961330315 312784874 391603025 91119588 271853271 233694384 855797638 269911976 635411560 909257410 965110117 815838975 873054840 52012142 786599357 323873078 700788833 474808403 591403625 840284733 992863341 570998584 781110360 345196507 690924869 706831695 783872719 409168635 752640926 917084646 931021761 168185401 934356560 631462062 876551384 312782536 640117774 534455431 760927911 333405629 600732573 623153969 789366070 766867381 914499179 5778088 75097997 882830437 975740936 895107630 944362187 719789883 899254481 19184868 502552286 725256188 736493362 518408869 766128117 55381189 386979390 637628632 693624626 881916256 988158188 773022276 785908752 687588707 963085274 351631706 446790160 171761640 341646029 174990750 887160393 372745788 475242651 479888042 525763258 647653299 720084085 659741303 795427188 131414041 581615391 252721633 947563716 220783000 921153837 387713414 861946296 63770975 422256829 398954141 967248979 656994692 698407355 947304303 958272526 125013806 680747023 984744614 996040138 914579160 985587079 918147758 941921715 432635847 642969800 893792896 929130992 612263728 967052767 808345980 991909456 697151087 764652720 433552732 715703253 394074630 407544789 627227714 933616151 510710734 610080185 187146327 697366701 163611281 827737420 23787335 40073978 629732242 847340530 801555552 870365846 91764491 745060544 895133226 929155611 249315792 794385403 112036736 124662051 969731515 989439081 447634020 453498074 503711841 954619154 856272669 987339588 191788606 504882600 663357588 962629878 994966743 999202714 709123679 899389124 264757531 592353294 421623556 646445530 116815833 226064152 399489495 747938859 436301408 774065155 783696366 889980799 386491137 920185669 567766313 946129037 106371156 708375674 994030780 999242688 377273549 696967146 161803387 505756118 179321948 654659216 708114301 957370465 262198382 758941341 406996127 563888204 484985796 724482296 274487914 548766086 118806726 678303949 90202435 323510824 545836728 551640401 353042734 695148246 768996225 994056542 453547123 877806745 759374460 909106367 268195191 691398396 611438116 639455501 432167407 879376496 90245517 119354741 84649452 881590922 898050737 930350921 426475087 968651648 409610024 461364374 288367871 288801807 178896504 750663193 136545069 459864183 665480882 689249336 773783023 998973804 567173948 575801883 891308935 914074730 73933451 716905057 307907150 488422240 655204651 833205075 816529604 818700663 480022296 563664465 131109264 210247654 823068275 982590283 815932125 909674217 657552114 829532250 777714062 785237094 667625602 880858841 321699042 796557395 712219547 786725307 789708170 987897745 855988479 857314518 862194732 967258165 782222325 905849296 308914808 791777298 56438942 164330164 377785239 736039210 939356110 976162687 224336949 946621493 631232425 825671867 891418496 969667697 445748954 995024368 262672113 783612655 704584937 993850088 498812846 886443581 194901056 215793658 523592897 903606579 327775565 591702444 776284835 857830707 544574395 854733540 158150980 710465268 260055790 948305700 587702211 831594360 796139708 886153012 887135237 947745220 786437325 801446530 749759819 846664483 937269201 959155009 666390687 726299919 408183699 750796615 13784703 665021765 71025891 220261345 871265227 907127046 697446866 888911474 258064567 972338994 608975177 954251175 274540444 733853675 339754399 850139538 835590615 967770692 913647038 954248007 253274922 985413732 55962483 785192106 690669395 974756466 619283574 832994553 764979008 814562024 736356092 988579093 108246273 667590240 890417531 894371031 912105731 993401628 760943563 993094321 972176474 981905235 709568603 984309453 350900865 863214256 431045941 455574589 927329448 972339631 197389845 991462637 418059937 850555496 824857801 928307592 973639312 987062602 484373149 487456005 722795143 827454804 16717075 790079658 323989753 407355922 782304292 933762841 689771627 761874568 207034301 710555470 482934833 756174597 27459344 983843353 1779344 867918600 254265006 844773346 60098761 442142256 756578280 973626008 346197233 926735793 412771978 581113245 388580289 724032194 321199446 751565730 361408389 387074350 872017930 937088267 395362376 988662768 134282045 698850349 922748880 953599901 820541352 845608859 126851318 517990694 768669964 789240981 747262487 994894483 315779341 365151627 244542867 687586039 869059695 879581140 286042318 997074041 140635497 523059906 311217271 607644057 993848773 994399724 570119042 650042162 477763791 974244653 72451705 621357233 351166512 367530784 689159337 803491541 299106593 574223696 8708357 738149995 797443320 883661889 31690110 319726797 605467906 815767180 277777954 442341251 160926416 791727224 710227417 866669913 495115141 688403702 859337102 935780958 56714952 507907716 36554463 52880866 464433359 857770901 415312224 417931658 973124437 973653515 913414393 934531302 869929452 874361842 310694420 399062315 742486695 917385861 303897826 561737865 777617191 846308568 931347762 967426621 221524666 319146990 586871177 671448084 355637774 672763955 841173902 932917978 50890701 598677347 519648154 997340439 557235592 622655007 189329998 414618387 780918517 912859898 654810842 679937608 436953127 614141047 488377665 579974271 645325765 945494427 697002435 938217489 844773276 889377326 683529704 767544718 431472747 830988162 972471293 979115214 384590301 425137597 503529675 895316499 856517527 957242065 635675923 804892380 432279750 613005691 209456536 922397219 775313552 985910571 861840160 916653431 99978950 700982358 952787875 976878687 499058754 594914323 76538332 568101039 588506839 926033285 627395187 948838007 710104669 838263342 58525868 462959324 922298922 936794685 424381890 619043633 677534838 927187062 639291523 863975535 274726064 941374325 855236474 995285917 770970143 937402859 211326671 599788124 467675401 700905275 893909979 928283035 260558983 918492496 826755382 970069037 262051667 999611418 8871347 132571933 927860607 937522614 517729147 728344424 369041492 573071364 184805043 608186898 27330348 75563172 628078472 996370645 15644116 67730021 130513141 336192018 126380260 850655725 300919999 749167387 841231313 988330587 275127250 411334246 928831907 965859510 652685943 851762754 68374713 274623931 394718672 627587939 167928528 516268036 757060457 812455946 977251273 990226745 360889272 863976508 998037896 998667345 454570753 726665505 343646198 767495852 963953557 981561086 23507022 476187130 779059287 789662708 618966142 835576807 500233656 831953140 213918060 318915473 933082397 973927334 495318210 527347224 426216695 607296209 730745363 732943411 452428473 690991293 405956523 521432068 240760954 867199777 249505485 423985678 455660473 729737913 556780654 684424333 609306709 833608119 578155860 756590274 290682006 556281893 765664581 818718641 845043893 935553250 668700901 969770881 182776 132520037 773054130 850079773 253330114 999280986 163757755 352098593 814169889 923595800 445141938 473365542 298265167 932171397 768677634 802960154 794451092 966134442 972545686 980124654 720277722 989051529 772045715 789193391 953179496 973620207 429602006 683109845 131768593 515625599 5565034 393686247 463343894 665207222 307018840 616435196 853134406 885479181 109572634 977755323 316548505 768205995 42581482 902995563 123816596 557715191 960342449 971595582 63758262 84712093 525943307 620121473 583914496 722961853 145589852 248238459 644369553 815115505 666642145 976533329 455596333 661536468 479349649 491316975 741355318 743771892 60130692 418825773 983072048 993871513 436664142 730863571 486801170 846772575 15961208 429504337 35365529 913928413 909351315 925686033 806734793 898271447 450543839 926823122 833843356 925522553 924399356 962470065 179548711 499184951 65412430 683644121 732784668 966399090 362745197 893058988 249802589 901282805 59690179 267915842 204392152 761291810 544178591 981761923 193298435 525549097 690908778 853893006 963878125 980186390 518584838 808363259 653515286 744574532 229848953 345530695 966020033 990098754 933987493 937100767 165618674 440615687 225236257 643139006 177925709 426294686 200227510 756236546 721479023 926407845 502195644 506587331 153398779 975654138 269098721 759225678 66344978 358160021 367286237 903444955 910441278 995613490 435917882 581829717 224794668 631329816 135884149 483881582 402961678 803625551 536683155 836499208 362387063 687234593 73219565 788280700 923388074 923863593 396838736 529705005 369133217 924644708 221176028 978088433 949240741 976295613 757938441 967200635 42529990 488622623 729772411 772262153 188101493 660941754 261749769 354015747 585320644 789214973 800925103 929824025 788909168 966739939 206033503 840062347 955375654 996746196 921065806 953686168 912625070 969174480 663917575 828335671 352900212 717852401 479984524 772895448 600457648 951415695 298145750 889000167 783006527 939276846 597024400 757656239 934510738 985262012 333046958 428768096 156997152 497675286 621776636 886514831 883986507 928845809 742482519 789813474 609939169 617131226 564031157 914949902 590070106 921702546 805212542 817555826 64048795 988582479 909016634 912929536 421047580 551900527 27812814 631626722 309029870 829501028 431066211 936710464 484708969 880362623 465757296 701302833 593765232 851314867 935417280 985105805 254580019 409676198 17368305 659770394 199004061 292736807 523298453 819042616 261428212 772457472 518498488 710495466 619529528 646735286 498098601 747683467 689644709 820523740 445219011 626539669 544683159 715992217 239904727 465609193 812166059 883157770 491205397 630456638 569510809 977682046 140072061 819080549 975318375 991137728 119857460 441221009 857414652 928463106 481713809 744316858 79673682 993021812 155647843 280700324 585002089 832287059 151835027 817372828 117591994 253951614 519050944 631349166 612015906 696233760 937844613 948975774 179218177 963285944 248377980 736814929 934555540 960402077 730289576 876768822 608242105 829336901 122990647 504971965 583335391 946542179 931996677 950477327 273120538 657310138 675490237 961317179 752087754 886352292 337942314 442007603 84267165 226565915 804150086 929083903 545002540 915419965 727674634 939525738 230372800 351317773 264500645 656616688 5662853 311077839 448136661 817036569 501907679 504784002 412752368 910065546 248674236 569645436 516218996 903084528 31992838 766740843 182660353 238490253 570471469 672426389 4215924 362194179 606743617 977439672 240815049 796543076 954382585 968649694 83554027 432690011 447510140 493376330 229966248 977204499 980036976 994104170 252405604 855414146 960550146 975545624 722622116 932358972 867861921 873934530 917690969 967643874 536792941 595846168 488270003 547434286 116398655 633776441 52851880 348750006 893826477 973227297 822152971 983279029 131699917 997438753 139912065 460594269 421678502 926878078 559670454 820135404 833250901 979487747 289162266 635104686 320315958 556972696 976261457 998819856 193695081 232871701 275993529 528288412 901219521 952464993 769622111 769846634 795411533 970457382 347381882 542934980 959194146 988006320 979979238 985941497 321485683 388713034 366912212 544395615 829445216 916296646 114902159 378337142 466569259 809171818 494891314 532008098 409965180 517069841 583320161 966041948 971553933 976897192 86949473 164389928 378308935 573164110 983338537 994299223 970580977 995349350 617390206 854390526 527732013 761888997 468559733 644404537 398159817 771995970 433144164 647133896 61708939 846811367 63826778 203562719 161838558 298085080 755774677 992619015 685267157 937350447 302539837 797278507 147765633 835507610 275917645 980478912 257904685 447436615 674486622 883024506 821636576 905487824 375509587 766129257 817604121 912247229 709664584 809775290 574505084 892214459 503242749 822840058 494117614 859957056 978225037 990818560 535809983 952731149 481811475 610601763 923791591 956047683 851859002 987704321 745618991 968184863 259648397 905735823 242495952 491506055 414222700 944729456 674353956 882969788 417388587 595722120 374122178 735579774 931229950 987739281 386083196 634176514 625780827 877053462 247587653 318445123 380039219 820072663 559402316 615369868 649662288 890170000 86302115 362149008 177976393 264101694 229825746 329737108 469857666 603658469 844351172 909376816 825564825 864365651 957712285 975649417 798862205 867359182 281797247 794996496 254808940 447296895 777964697 904548762 527831138 853883902 481816687 726744474 645465069 790254932 911675187 964452035 307135767 907440677 313073634 774229578 34311145 80315929 958192709 996776176 650406703 955068544 114626764 308719306 135459791 832675080 291254273 480760389 92194877 375586262 594025564 690654662 265543083 685286580 559997378 790817933 756612797 965138972 148879183 450403970 330710976 852247081 520427493 639513383 671380208 750728109 962488282 974506788 332844933 388421612 319933402 705195438 562579700 631396046 777481344 835758325 371848203 653711155 221156570 529424892 597182297 967699172 684000444 723196483 494942737 967131877 36942173 443865580 440247404 495839938 581962631 976085114 799017613 895636800 191739189 825469950 577293637 877700518 336301946 974651280 635845660 968319307 390974099 438448779 272814380 766708590 387847391 438393581 614599938 778182003 611301438 729999380 573102774 975844338 89623721 179099452 213785138 423510732 343913229 586621211 672491614 990203405 28170678 221414235 242375087 517977252 284376464 307539997 140574394 685178870 465109130 571571701 9637366 869160500 705314334 932303059 183821385 579734164 562280596 787615075 851643170 898736127 768353924 921226398 666070439 850514240 835653590 914481366 302245527 654180893 521049462 688435382 529876710 985063043 154891290 770558027 911125440 989222822 180219775 248368801 180523451 550150999 324977234 715673472 653060426 750357823 567246062 838221834 958111957 969629159 952283769 999123757 73432052 606002488 423093092 474343323 605261723 924646462 804638046 882128871 37818975 431068413 52584251 621777906 57263446 100224325 751250583 844759612 500948210 895172233 586243274 671210317 727816065 787227332 713849372 836845837 734702195 760707681 876640046 945006939 585392088 694948685 929698652 954528386 143860004 247818603 844782530 861181138 178878158 401830974 61024473 601671747 604186820 911801360 858418636 884967709 271806821 922179257 359905305 469879565 695563214 799942861 55236529 818897598 693807270 961934790 36439133 479064492 515844319 833454667 70816072 236367210 831816693 864883429 654932547 989028691 260526002 507466167 438680223 572565551 649225936 811302560 819685553 955430244 97106067 567332074 690185259 704534216 219171861 429487984 756215093 780722951 163771864 180589253 410997068 528227923 549842739 573920964 699448535 856541479 23359802 138682106 798417952 835356307 411605257 433921861 267888600 459882193 309721211 756395482 118882028 935758072 534510523 746002404 344151995 773070416 564696410 826783515 142477190 524363820 633984413 819792168 438109251 469482903 127227996 891153308 245324340 551410027 789191235 808634784 208466641 702927845 297424571 777475722 530073647 605556066 467459975 528089769 960149364 975258134 580877063 875647560 131738848 322001960 956658528 979825664 73657511 290137926 756385567 909918984 134396172 398443785 885258612 940411424 147500029 306595336 801962341 890531913 812308312 881709329 284857704 574305604 146126164 550052816 72680829 283951802 967146659 990452427 602534406 740561174 162640628 185429990 757558910 832970728 757507705 815191272 348663254 836978372 674744850 695894402 907991716 928394474 659360187 886164849 595769784 886390109 476013266 940536718 430281618 778364285 831055791 987185452 554688942 799641653 215155290 742167547 377717063 455408116 673568634 714675392 965009595 998991288 907738207 963186228 642711697 761770974 984798843 997022323 842684674 958460195 516998858 615934036 486123728 830648375 275343617 835548579 151088275 690393412 392360742 679565947 621350943 931083408 455291284 812213560 241319839 850543059 892177392 895156706 170805342 931730792 454586915 851581863 823779659 855311547 315372946 749002275 802282202 835392380 749532034 870073307 557777033 681323323 588420721 630627572 918384727 929323893 768106064 768798538 55894997 709368996 823549630 858945216 80693795 462583140 481118863 596716869 973898708 978273397 485472950 791440452 823928615 998381916 818722065 954892076 58216283 954126195 893108924 928137608 422095310 669820844 40549730 696630594 839055200 996856331 822636588 907289728 857426942 863656993 157789066 688344010 706181004 928380290 709952328 977602507 991226734 996176297 489306017 810936362 254494109 712163583 413684964 536534501 310240550 451336128 183800070 545604182 242509075 485191333 59146828 549465802 543172192 971444722 124077432 133733363 988263121 999574806 193236605 804662661 898992399 907325641 870420399 949334172 878725315 890934284 268636392 599424713 973886974 982975852 8782573 977742929 395235107 486073520 917707450 936563027 632364438 998370390 572675244 752276835 670678339 878229788 466731875 647386742 23987678 49670355 63168479 287113874 14702585 66199327 742810736 809022647 60430138 617766571 236735302 860373639 88895928 264953494 383689848 577385200 699401618 746229596 333517753 777817632 62576246 421026293 961308551 972128982 337902539 440987585 286913527 551765522 692398417 801008203 643566080 752094107 487550033 746347075 457159258 830553999 628751469 844674434 187914256 863350537 536015079 621856647 266386989 887575597 859815709 982202571 741675228 969473805 77688241 235265248 430394431 826305867 319372743 527460270 362328284 781666112 777944902 837620133 996207848 999628584 569570591 723742601 391440502 997599566 75310891 312698761 206343043 487611089 508613536 549679036 552485192 567674693 798884833 994947227 990545544 999156744 915569358 917539465 677785157 829952794 399011446 518680890 223591974 384110280 327648295 482369687 741844212 866952727 264144738 954726743 553854472 835780393 914891737 934550697 139393841 797964735 454806069 487563409 138570136 210363799 447639598 457717699 506030604 556036045 945171280 952123985 704141521 716701334 292535410 344992337 530011124 834454832 513653803 954229210 781727304 819403792 391330489 984027476 478460751 633435271 138890462 280272977 154073682 364610807 445952969 615294782 604810746 711115528 604141734 700742052 874461563 975250409 515151118 577430609 562163742 824518417 732947426 991147517 656624197 721264803 841171072 846971593 844284260 929380822 151805564 431979002 485434795 567443743 141192080 238842195 969182519 969324058 401713900 954109851 294344143 850262262 204042080 968557257 72714408 567086316 618804668 661301454 180865783 540267849 333636388 424478200 703133459 898889968 430671679 732115234 396680938 997008207 540021384 588229951 797306900 807519322 134326559 312577310 545050965 719771402 230749841 791244891 225285347 638745047 351615677 498256281 734004932 804804617 716815782 993331311 389060317 715972812 457287842 750364925 686888598 735473719 707439506 980012442 378607340 465596201 601165630 705357435 492572424 551128756 664414066 758064289 69225494 791606749 181987616 555106433 91994463 166701039 246618159 644767683 974141873 987535962 317540220 546024678 60558874 154705505 458089792 718068831 451756143 934579127 388163705 478695404 498972711 655221394 316269874 455028259 116519531 830236551 334382019 886598850 188309228 612768487 448395277 918160669 957460243 963027830 535773842 953621314 543196467 605837773 349818100 873510901 173857761 506547882 391201526 980421388 226400334 460159766 475462199 542620413 193770531 740493150 924270093 950389096 93465869 728287694 28467728 617503005 568191002 912146656 418042779 545668959 138844005 408651040 52282727 518495389 123066565 860378719 791404054 913348302 572332531 767014075 812655262 905798441 335069076 905603888 327883843 644763793 782679162 950268999 742717273 770362768 967872675 984176886 27957591 879417706 204662427 987776882 335668112 995033681 569696666 640315000 767548006 971969994 537766260 941428419 669905683 761119895 569277005 866338328 764960689 837866175 623529642 823723410 187373184 702255053 957167229 979270111 721845081 797722943 926900502 986965814 44190338 851335192 252216412 424483251 765747930 826823773 84708904 117593208 592300518 597406480 491080998 789011580 862877 966374840 362262883 929264653 806574486 851581561 136945364 254489888 323288111 953046130 128350081 349967225 992628753 995511074 604549952 852297726 26727001 566190487 19588035 287404970 391099020 938998703 966588341 978134240 209524458 389467890 324797589 719292715 780861741 926499996 878413672 937961032 465195496 860465215 145263938 615019225 172977471 737366798 339278389 800583925 67705911 748148878 510260902 823523457 773163974 957315755 165004769 581862591 742338106 778525003 994118376 998786514 282691789 807706110 345824420 529523207 891595112 981776580 533196788 994808977 120120017 872761701 125804670 971142541 53339960 669541603 619296963 682495728 135751255 997253747 342180963 854421536 318603486 935779010 885950179 898751802 353753355 491727885 774581598 794239336 472622955 955120387 924327889 960628976 780358808 885170795 199364655 366442999 343935211 638623785 654233751 812977914 370656395 526791545 12670041 836617692 493281948 954392464 10274062 769799569 761888406 843328442 808403451 857162171 631654246 839055824 658429344 899950957 222357088 352283168 401768344 933587659 876265829 889702675 700381443 748554311 180889744 297988498 760795894 859470584 692729426 852034214 985360921 997421381 687510374 955427725 845952792 960015090 593295256 780846935 106174754 862891238 152557222 772623245 918569118 978680008 712018941 808565152 958762845 997956666 53372310 511761391 643765115 875068411 190822696 877567436 840064271 912415041 782328433 919860741 558392606 771767012 251576015 934082449 500894087 653413171 852228176 895481092 834759040 920554458 211641345 959202158 243487828 557365104 806707756 926695072 781823831 829021331 440340923 536455334 152751826 786117266 373775344 422681441 76861250 705468752 718967693 768405425 626339631 807600285 504288790 890489689 97392717 862590456 926953364 988725882 967681772 968651701 370157721 856958603 864668009 992100074 153081978 327897483 675232858 892387995 456220147 457442285 919389736 993715239 289212480 942531885 371085953 969758677 810281211 938061445 813982956 976449850 374757154 464828091 418137939 936820689 777229973 920376658 668744154 688345635 683170576 899591697 945882472 962983504 897100318 904431518 57928187 939647527 996787927 999713256 53066964 549210384 654716411 844378823 437086956 641972198 186415896 394343314 122485484 996520157 914889175 953070212 245040336 316784368 378413297 835537151 741135005 971268733 509440667 668752811 235364699 559446287 830963252 892069803 948848180 961078673 344492984 365225151 407641991 502581918 697596489 754813859 528047303 638237212 737174016 941053851 276890915 702335420 754743630 960974009 65302647 503008380 550631047 996006200 243048183 589468779 331005849 553997591 309746260 625362704 719218383 728161313 745967939 903980054 137388409 584543808 861077154 919182705 384927473 980855636 616775530 790456220 727875168 965123421 222789156 506111495 454352725 547075448 901277948 908626287 392187650 891577595 613100575 785003976 826687710 910492288 269462692 280644983 146222993 247172745 243908561 864504826 441903250 540123080 403678215 488086044 578106585 906708534 984649165 988796040 370996095 840035733 629920048 708003529 723590632 784327672 82283705 603211713 119624908 181354110 670938167 933927583 250954130 366193479 395781421 529527847 438965678 905175970 332540266 661718661 844947679 983958011 741728226 901735639 965843107 990828794 414289992 511412837 434425295 955597514 124441403 296845065 642648268 971192405 161379247 779925284 150327240 904610736 333111250 453903457 221094356 640690866 231048073 770899584 458231634 490993571 534078025 603023716 851509176 905715141 42624077 890020694 662005832 820969299 770903855 785444771 17836172 775348436 906325853 911787109 126973019 691157208 608080930 863692157 304744820 373964643 821771645 935488627 963512623 981458917 266300751 879926683 39479897 682889329 160903170 408925856 798707355 871722637 210611032 238997595 864217878 907848825 234743950 515021509 39618960 371027674 617616673 935685255 160247215 943937469 634951712 934201972 561100627 951348730 316440845 701229765 412381517 522610446 716062234 967766820 215793519 594157933 564821987 792339558 792408411 971857720 102042878 921643004 154263505 759874512 611899340 892530415 479698178 865784244 383848701 967997195 260555099 540495266 440867201 805250012 153388627 286294798 787795306 842959847 914004881 943230130 437262988 814326095 407918881 915396851 978275803 990432414 23482368 98417998 863277846 984604109 866753333 946500607 819385786 950263677 73629388 90604110 626595001 682045948 142100848 968612909 801172871 850854480 113118473 125403989 247738316 755252549 94364811 270670494 229342368 886918147 751610129 850366886 10660325 190028445 673372797 836402058 671848421 869001256 990168802 998486598 263781380 516828132 437009239 470032711 663102331 711010551 256598377 393129149 141241816 780440947 841383937 858147227 438753197 448119987 451814879 817950947 571958186 741238112 599369919 693346772 738845287 796720190 193627049 936962321 290808689 556421340 623366852 871190231 840011245 980790371 338408958 589109456 68858474 983448320 812868358 848927281 673429083 881002454 573785943 640519590 100950266 428153631 116848944 208072451 854467277 985461174 560663139 996104166 79012321 878626912 182765392 860611207 816596812 982350761 653260641 767736059 27008643 474642435 901529951 969514886 252113849 321703213 778790320 883956426 774047815 996222740 699555365 918739697 751003969 915829397 445429023 936328298 647306138 655873120 197571915 307891219 142462487 625335354 833144056 957765794 669777187 824322316 229126377 632068122 542191572 702355819 325264956 885833818 745940117 955310040 660014039 706116811 932241430 941987010 513028392 583646177 517295406 963321171 523705237 585884091 189411375 566073811 509322949 924672880 787606709 813442290 189216630 385030548 848737070 887561264 488013028 812034829 727473930 932970348 311546354 813317825 24361533 863794271 13454251 557101926 230582839 377854589 826757126 931171260 32568400 998150218 261036502 512684802 766967565 786284694 891856289 957072404 316018763 746931104 929611118 945976177 866177928 920365505 560533203 913838528 414869583 585078071 306460046 663991500 330414174 421883459 206307082 787444429 765864984 958831445 555389386 709175055 445047349 774451305 328391287 546733108 607054953 779936420 592578114 973407233 621157029 912757969 602318360 610643462 497500002 620958974 652582425 952863959 208369751 276842239 160021363 323781155 377721414 751955247 231220623 455681229 596899167 813113210 405147980 851127448 278050316 315260388 433362293 817599147 376036025 997037092 652889985 917065258 419606047 428224454 830561582 838089118 602265688 868351164 700300647 842789756 801725052 931243094 548939203 682255223 827403064 862313877 559524669 900744914 86467860 406249180 227933512 357783370 666546761 915190964 830658564 994766147 904729114 984233349 562492692 984233313 810992543 953102493 85279559 314438038 447139521 935359075 783252110 967028631 163153409 524367473 180301667 262116836 482373755 667809749 821222584 849300919 426089370 693976912 532786892 546871035 566207071 984461066 223321611 518646422 846885566 917791823 559800519 988267294 132793004 684616059 200404128 201484949 405089317 816876302 426119945 492827856 339515059 489797440 171681800 277297476 753669311 933720377 88556960 996018965 897470380 970999911 107539249 764677734 419627222 863242469 720028875 859643490 748404654 775791191 598302759 979796793 836977752 981519290 210142326 755509976 876042033 880669698 104736949 374242242 705713539 959143818 912589041 956268215 8500346 810293668 580020179 711087388 81175728 490109996 130361925 677137931 14481885 546262688 474787845 890690331 454821486 772629333 181013586 498121586 696010546 889176974 713127775 935852637 455060329 523238857 20859582 950529019 836080366 954023800 995460834 995818030 179595532 407705676 703436551 954539046 2874987 459652074 119420442 746910534 997594696 998922868 449610685 981623140 323638866 443393607 69141817 314820748 820773220 975942036 859853133 950915279 32827378 38307127 768015540 868310104 553577971 838871832 187188943 864374528 476988238 825960906 509391695 778572471 655735972 783550457 864283170 937794710 313240668 525398555 643490903 762333377 356128182 896468116 330358244 800304545 583999823 714675023 486035232 992679013 911264547 913895039 787157218 844613701 255391541 596986447 828250140 922835123 118913912 375105303 632317589 969324965 576348750 682782043 852907698 874177923 613008321 780769681 692433970 870245812 245263700 607664440 610930425 747816771 983418921 985533090 113712220 473478821 839894055 956243310 38077300 119386059 780981017 846050084 78109772 850555069 421061017 984164738 11872685 16059713 888362694 896778326 110228334 125420591 80025055 198435092 292101204 436189164 612355516 756417708 687410279 997830566 281155834 908382964 846061180 928594825 661886583 954001420 256455214 948692874 190238975 359265076 266787123 536025024 109657332 119164646 387080629 679342897 77312469 199172060 688116959 879142493 302386068 542929656 445255512 940517463 971958436 997888126 639990017 959180070 928727634 945163051 710276267 932614363 387348552 537386635 590836595 660843571 53741727 914816850 879751125 950557324 696632690 796490828 332753622 827622550 860315601 913138278 418806460 518938633 767918329 806317847 639776527 801765690 394289453 625249737 187324471 679308370 250757417 888280514 205014364 791118743 3703384 254110420 872871235 945265769 974842074 999000003 542911439 664932987 630476944 974363002 462849944 720418459 707581877 937637506 586909995 878688367 218148750 838170213 400635495 617728644 396034508 720418451 313252034 668154634 238428234 837371030 26124080 137044254 689334151 842218606 820817017 998087712 38192463 462060353 642722409 948043902 248654851 435122740 169443153 872375354 426875496 923010910 323710594 976994205 204183128 207122481 356983651 575694964 445293991 914929411 162293990 336086030 971975799 996398147 165083162 673034718 316586802 363335398 682547261 756482171 994687338 996777310 214244968 743701761 258038730 621410051 935252421 984431828 735507937 929877185 849189722 958132569 106247778 310237637 272708052 691516718 461335573 665016527 928143579 956432818 818541816 897315525 9783239 708808941 488796862 491934076 573813169 629892470 492987866 679837012 826073958 992677307 988795930 993247577 366066921 885468511 769497578 857905545 617733569 887587532 629524094 632031052 704675900 938293685 551025164 984185351 961129776 988413523 825922759 871182442 191976520 839741026 853336609 889150664 581963612 972373839 341279531 734489277 62724839 631879507 249736628 290993396 147169190 358094727 610301576 811337801 710163083 842820918 13978671 779438925 638526172 785500004 200413875 442889132 14145995 782019438 186627794 582600847 445783928 813250744 63600805 425453014 331970358 721073470 671948483 722115575 846194436 995647846 41321826 129036017 122911514 887156919 888972028 930295606 147549476 926158514 964181105 998111143 349867436 376981738 902413360 913301464 277291252 598037675 376054949 925803500 864279696 985585044 381652767 444863795 629781473 698088143 347476672 437940389 596777294 961980900 8590172 416105829 877196837 989033295 347366556 756476789 130177249 960561893 895263403 927427069 445190290 930844823 545411272 894641478 512316659 732951132 28970376 210589882 910818669 945350755 274456528 773293767 707402417 808466607 629623094 667020185 293899348 681734833 456418324 540935513 563781696 884990343 77895744 515691052 800534126 962787281 435424079 813646054 611458561 983870503 904423302 908947622 412079328 551861351 950750881 972558970 985564250 988458096 154108460 168880832 498251380 735821659 377219806 398765310 582158803 945184664 953750967 990279015 410533200 828860186 226543416 780631297 268530147 488222249 260294910 572253206 827218415 829630453 386110194 924148678 551326593 920709150 635100110 899738565 389407461 763767882 642436311 816021674 510632045 876399629 488144385 739100247 211565683 698506892 711609718 713109818 328363905 576934526 362345621 606988236 141273321 437570701 479022071 926349597 841472656 870930183 40329281 787819304 867031994 947483209 581076928 647539273 143477009 355534236 744940354 858233613 131100594 348978777 485618245 971720268 874579956 888820902 753903631 968785088 664113008 748584993 897665534 906485809 686356895 925654339 905215809 923501475 197433397 949123754 836063413 941766228 720120446 812045748 6061850 619017703 868276359 949060156 221429575 738137129 693353074 730250105 744665068 763406302 85128889 406861446 495988268 879505069 824310322 903903678 696670274 746612763 221812311 763140036 693720967 962727455 335456387 518694377 209208566 265704353 127228102 987265261 45471562 628948992 290688521 654367883 676016609 975759326 974682965 997264576 688642398 909023686 562546578 720499613 84396545 287645494 609849819 830789654 800401858 920818489 605813265 739848573 758258232 940359178 600122811 921450331 96589606 127946460 293616440 884448382 644897267 962185755 61144488 435544813 936261823 937277395 464362758 490777228 735220221 851569060 537443216 610905994 979643819 987801393 586311408 593832905 683809663 787040661 565109912 892715350 398585912 603973839 602143161 673299385 479291650 747133557 159188617 620283672 358249828 862963116 701604350 976887867 155802695 976009523 671581157 686006421 786239946 824592974 238812087 701772818 648712262 934950276 486216839 795113685 72103863 387672977 198112090 750667888 337445252 612482208 621352587 852486831 276653120 429868037 729787026 900100414 519062080 795007719 827874830 978425680 504641146 803779211 561038962 682084766 250654138 750300805 905741347 927562606 271895686 843925414 191449791 860959751 919184603 961654976 741003148 917202407 912117390 921759291 717988457 972452101 952754895 970176949 884218939 980811199 940113886 959162553 452003857 823153018 973993598 984784606 536790916 865022460 246063882 250311211 749891010 955911947 858842924 992840935 581419370 969883493 457803563 770552275 790580187 954235047 914207171 999926580 592858542 665148374 583586589 722095192 873837119 900967870 645304605 775981298 166871599 271105268 2972591 96193290 791749760 801054848 462815790 607552634 348829085 707846297 238502027 902573069 991678503 992042244 29575663 414800564 478761490 663970408 767887263 776837471 67308810 717169407 604095112 656000084 637362493 686403417 402107558 864921971 393148881 927564304 344851994 703128719 854114379 871554547 928979434 975059250 323123167 383939470 154693139 760799431 198592247 442953948 998883888 999953068 247840875 911429196 950811708 970013933 546365571 861940456 661001664 811069435 435503650 568252093 987690178 991781435 590517684 668972251 176853999 518634398 644895102 860523584 750636997 777716466 404398529 793650533 197412636 518783814 489876794 799515945 254722212 844036123 624474181 859800423 108146931 142726019 91274517 500554084 962032947 999015386 203667458 757661452 842322296 976301181 329608761 845633682 804021859 806631031 52267181 529230555 111644776 562921208 736707928 972490339 537932125 951570581 644096833 674532469 452910436 989260968 112033038 321645600 903275250 999823821 632020795 763100178 499719893 817827443 655482339 696588395 124954496 914404836 830420952 834060856 63526104 250682956 428266797 719821295 905570550 925850714 698806567 765964572 280367767 709930033 873472329 879582375 504538001 826853801 232111098 771106812 661011916 765619586 970463991 975656814 378019167 646526592 989600815 994759011 389047069 923200868 747894140 806809150 529167295 892533618 421610515 769809952 885543854 906160445 704109890 781149030 514309861 621678684 456079903 829892119 860068649 962473411 853764595 992581057 565646471 623565165 973569097 997738106 517126365 840880688 312160066 755669557 257069924 920327004 460993439 930100173 400252207 694499821 753443428 792325918 7557367 622016823 121262408 125551775 927519120 933451675 706705476 757697499 111773582 471050115 727174692 817873621 800714523 937676231 642904137 900671336 122099237 654623078 142985842 595614517 661930621 893353703 77267809 525751890 356893830 403802555 453754557 777045147 424756578 651268837 616729454 942566326 382225568 652988490 109774039 469278809 545376495 780150687 466717423 936532336 235804199 458494206 831336288 874525155 333746706 505373916 800085438 998040868 761100803 830711508 458113035 963058741 107534598 694523594 548090130 791572038 410969345 953988359 712942942 930093868 98621653 836706423 169852054 186848123 23592542 478651429 104453646 954274427 590687143 787186051 534808520 775664897 714704123 849169563 967316958 972381115 960012208 980314014 459237737 517659974 239764286 787130125 34585981 531661083 836649322 935822241 840804767 984606403 700562112 802422284 832858898 978276119 338853629 839956209 974764067 979646268 106081509 471811661 36562875 325259417 637741513 771305559 381840829 869406198 484085 320660854 212434791 796550222 248000497 553667121 518943844 831772445 884539254 894710967 777376739 930007009 252276314 349050473 141908161 235508946 203860727 219867192 627691292 673821265 826497253 947972605 843914926 945926744 525945385 696106096 989591845 998747833 521626662 563257608 716135272 872635044 416034913 979453713 768249430 919337009 228289151 892374717 846682804 859173061 690782912 744981823 942160018 945370580 345254511 794624242 705813076 722269967 251469882 299833622 194605580 608572895 427073083 796762377 53736235 940205787 965734922 968726809 338766568 381493251 596807404 826785745 342042805 689182898 734875006 786874405 329037109 854165636 461549918 713154415 130079600 627772810 232447535 975097553 656886368 785724238 915374390 973932535 105157701 382454046 412114485 472682383 880118267 881887883 638118481 639960791 728469048 926323743 154902959 624400989 808572035 908297759 808942594 968791485 702602374 807717962 733380180 757560875 276993109 352644482 953906648 996877127 498928999 965623198 913319258 928179210 669653190 698995557 377343934 400973630 852109874 877405686 686531285 771978433 520518377 887421791 873894711 933856805 167763423 190028623 673656907 881647196 490097792 687980539 947255574 963353613 912960213 952484022 351329287 968455953 211330272 575083331 595437756 670877899 515833435 939361616 513811217 894286255 281042430 337968061 615167686 818953913 290094813 292583121 169032701 667704740 706190622 737346388 811534923 816467536 117006481 931431563 989694820 999001500 204741302 777405196 843805093 861052098 597566534 958068892 244353281 269287555 534627306 714389148 32872035 91954551 614948666 731126165 357618486 524737357 181148011 269103446 841055926 845357981 459170651 685950341 242454928 544445441 469981152 587010917 354851854 940220784 336252450 533723449 86831271 580458878 527520544 919465752 454914476 878992514 479370804 686538585 571092739 842073077 276893678 866540856 357233434 521535393 196266116 939239046 762638268 920333609 37796273 524178807 762082279 977877313 460102614 969305058 909479516 981589496 18455338 583396972 906908032 930819297 26702936 479449623 380033171 827139380 204737458 921177981 155460670 904971693 381584642 642130906 815592966 916646925 284054629 605968982 271265986 682225217 742257740 841228401 805116303 855037884 832086710 925408283 654131297 850313156 459079173 726905981 360605420 424817026 552743251 593959200 738775014 972034590 238670179 770445916 35324158 780986937 42799789 386483640 58248370 126566716 792550367 945154023 14307664 132261718 550235758 809480245 380311139 968711032 541814449 635993738 973165278 988732719 356566188 741542092 156749547 369208833 238897241 447315082 171902957 307589805 748694706 790545963 766737147 896919124 288281968 740770626 274456651 552091171 678102245 858118521 598973162 717631248 829870299 996709775 896223711 900563212 607641159 933335959 244328280 322665467 659763974 784689932 932264547 998156787 475148843 888614310 42962945 521711328 971678617 986186680 545301393 562306390 550686846 946063314 899030202 963891630 409461553 983207389 414577373 780051037 681227668 965792415 156775202 275483438 230448822 618799603 722608316 874991788 338014226 886385389 703031184 973249876 529106233 944337758 885882567 906003351 12591399 185381929 637597701 848080045 354726300 716630934 175941186 264799701 837408503 966238919 174972985 677279712 513500760 699536912 279661362 361606536 957892230 997042130 476053474 842478504 780823702 849457748 575540536 914508611 496880121 609472519 311793823 611158565 276082427 332605641 347152500 767456076 821581568 885111395 483439724 592836152 9352687 950961790 851209705 946594106 461632259 611475541 814848140 914424962 830565044 900928015 526516302 817390469 683046816 755747550 477812202 590610109 587144958 933235496 47319466 629094436 739628008 970025647 433629371 857012902 738139435 909611804 72428791 240477624 267478349 554666314 140235302 807139558 260154019 573828974 457393326 803652447 476339744 588881246 206960713 785531278 517345650 855140079 315137449 790183285 523075565 758647287 205260202 650838972 331581887 586509162 231297745 405806643 280820858 671965485 562884832 935295360 304534163 660975623 868046576 901442884 141727619 725000496 862341464 966860953 524317203 872938352 555346427 898071784 33937118 67087098 289735483 714063131 590391667 942441069 991866010 995001858 161968374 877728119 328598833 965934061 462318150 723466260 127799674 198406145 473459161 613894702 913806429 967399200 627223097 661881707 844903503 929218824 307617355 954305585 511868653 767960942 187441779 328729486 289584390 696732898 809003104 825477804 832936288 952684914 886676483 952003176 72347106 749059905 448299725 874414734 265094946 906589636 875707500 967446380 870318677 909159084 5086394 62457705 336112270 718718187 321963825 970963385 877878764 929315504 801175032 823318752 758352740 961537847 587830092 867541572 246102015 840466017 230879843 477554632 952466227 991368107 316251257 602043707 812510609 901657377 36854121 577263491 953392609 989745874 271156855 463978289 573775423 880459940 627449610 735480096 323087900 585695333 777921158 902117634 675045411 863917522 384618455 854335758 530898438 545926090 607537627 865609771 152878921 882880525 151320079 647217517 595662203 709209389 125127290 650944577 520046876 880373473 203302456 229319554 438188741 642383677 796525680 910866037 59287120 762361187 392986679 480498288 219500654 348561020 287392762 938420576 345437536 690725351 7831834 818339158 895797010 931445019 136625101 453573547 433929605 520875302 231272392 845885272 152653776 927137953 769992263 926448808 665498917 997969061 861440403 908793745 385185083 997505661 768199879 897167466 269682642 394091601 546350202 902999522 546637260 888364559 291701212 482396485 925808752 934894742 344106584 922792125 253109749 909236668 323854287 757951951 533887358 725810149 163258267 511404539 105865347 194458452 204044136 531576109 741928851 999707425 973825391 978253158 44160752 802900732 426668133 677767483 717438942 775492367 218976915 470177658 818581648 987542773 686334066 688055639 678285391 835073499 936547330 941189735 675576277 957562321 273903965 375171347 871640493 936623817 132089014 566474796 105316935 977140589 306248927 949942236 522781058 834153724 659160084 849832780 472805648 807365000 722002008 860432231 17322747 25633865 207393981 739897761 801530911 813751385 100520886 927091478 208921580 839731407 349234629 570742172 663119518 744880057 783658623 903730539 737333001 988060867 37953397 59434114 788455722 878938183 991414626 995769491 743407483 947106423 548364958 693581351 970334473 984040308 990141447 991797291 888448347 958924223 96944102 390226089 948646513 956468195 471407359 515954531 968955036 984844322 206323415 973987029 313321611 339170087 659538826 853755919 662212734 774738117 183125446 691951478 889896980 892459600 787789921 981643412 624558989 816459015 1489353 733136149 3125905 359178302 540052967 880360154 92446447 515534629 760439058 931604523 578950364 993459973 46609948 731297703 65886803 142446323 661968226 988688498 64450753 614201891 61513533 810610775 938689588 971824756 509852360 827709960 750941449 893950603 708512410 848419102 860134885 970744418 929439564 988785282 444119507 799226817 534053314 632674280 365642828 577384392 682693736 774947373 968050589 988572060 527190341 992907600 441895867 476175224 188051003 451809412 309605832 516388249 45340886 304151813 97101042 722604782 277635455 359366993 124093717 454896471 931025085 977673973 338265998 904572932 27811913 178113212 892736871 927142537 767436969 895518289 142074763 855949876 301451709 346765982 323989538 882611797 982547783 995392057 143310675 506858467 70870357 642954569 990745920 997330463 224912106 601123426 663054492 706806010 183008806 636085372 507033808 741698786 398441633 466432581 607940532 632268675 954894347 997071027 992952176 996391677 975103471 975446926 187918127 843840213 197616390 702081639 246286370 979989267 896079810 943392477 107669359 527034900 174370129 414208295 952329604 979095491 254306277 816922350 618496901 811320382 995903834 997142245 519642204 705558328 555078345 885790396 927956641 967670191 888028366 899421406 51740183 574337807 607467430 832143881 812120463 937564754 178779971 400493410 858327916 868188656 837507215 975518034 658973885 680262665 820592637 823236006 363734024 507144544 105795293 235834563 142027445 613822159 789053008 911163095 143966083 433544929 723972448 989000160 819958303 945368527 965516789 976275487 549635175 851778843 477263172 501905948 692470048 719925148 449177957 631572574 845674311 989366058 483453959 922781915 513727 793990726 394638278 898344085 618473851 803008547 940717911 967728922 85325737 775091843 653272469 981242878 745061944 805810898 822380093 884520835 851750592 891191718 522764537 757221181 48931052 149738849 64095332 245837644 155615067 819607500 656347467 675471919 687284948 799672450 235464807 720893686 562330555 618830630 610510496 826730549 449331366 514197832 711862867 767844416 539550552 730361257 405010451 951755969 828261016 994592871 237825778 550726146 423835330 886815146 877806714 992375828 558852152 829050008 764620018 815343066 773336627 986508376 227877567 737108095 556753662 614936749 595656017 815476060 473812202 836318583 936056700 960170787 513942048 666771347 139186702 873249729 324371903 964160816 137567929 996135043 814568537 953079306 294564069 984188495 991083557 993853922 894084320 956519197 867294206 977483977 339756494 789960445 910719256 999337457 773354367 957699703 972940932 974323952 958492200 985550794 330061888 331207494 989340530 991445980 619951587 985284232 779830578 799759737 657773405 779406706 488315223 759674136 270619445 481092823 265662887 713207508 374456868 568133451 798733873 859754186 344165050 538924928 892159317 919977684 800420729 954661434 9132630 400859631 82720599 551545620 33831977 260544224 516361834 800791329 290156889 970095769 54011316 575989565 836946592 856693117 716596289 783802361 655868935 666533938 927238869 934419234 181832709 704072008 724502306 955910670 410481900 638039579 11273467 909643541 216222496 444660275 23711167 302057588 656678172 818139172 719942472 922499931 820022741 839767798 457937603 961591168 619339069 790555574 762836133 879401291 48889690 582730066 238593918 557077072 433957674 978274899 643730099 833313958 520555267 874637905 730775475 895699398 590552301 827297191 478255430 988980967 977632896 981000294 539286759 851179958 338328593 895341054 708872087 968481434 996001189 999604838 434356413 508274169 735023868 916664837 746399773 976182534 349602972 703567255 92005931 301831993 83476443 340014021 509980252 788876748 612951260 899380932 847181014 965087395 733318793 976323790 462526923 887194209 645200189 760052839 532348281 560231967 702558781 835529891 659011518 922423587 369912778 663684335 122995626 226337422 406826686 849197881 512087384 998295891 641190471 684399742 156676450 581898514 947433736 978488458 250405893 767440340 970248598 991452113 924996766 951330377 186645958 297354560 552059741 895941112 575264377 733788180 870925465 876769554 698609420 923376086 157492811 276047710 31869953 451542661 846810227 927651782 27666045 62118083 729102415 742187779 689312589 993354900 756394482 996567737 131953712 693253707 754980879 898971996 444248085 900682489 419632020 929548695 832058062 998930818 739192581 884041326 863479486 889958360 748111899 877151000 725477904 886253365 195423783 458368215 190038352 845935626 136551449 770506840 332175902 664619027 478587008 814435860 786848731 818663839 114936581 274253805 436440652 718491494 742004098 851541633 281092424 526104429 103862207 175462113 933727163 979760753 893858700 903918929 784849230 826177577 965146922 996469097 545565677 735441892 557026572 961526818 395054783 547047314 791471292 934873790 513939719 789773488 866442745 884813167 246157203 672003325 279625472 963928010 169565554 439965980 512157435 993727872 107877622 767661124 59737555 733577865 33370266 615917311 39912338 515873347 177069626 917941762 583698128 604208418 903567629 945240314 66428467 380711901 104927318 738926870 123686455 357539980 484060575 820137314 70301824 126735498 767174592 791190100 330768331 336514381 247212067 654243985 584345122 839999059 654485721 878744468 407586006 553308176 148265137 376209083 672878087 968460557 791023117 809591263 661942046 777876800 272436465 521734364 776240736 943323188 51218899 794805099 444648895 931702967 98368680 343829465 920062953 935803532 573713416 712295996 728888563 990920864 99571087 492728897 486886680 852640196 873489609 950392882 8207846 237948717 607763165 912463998 873087704 902983073 650084958 764244589 790738868 808540735 439902820 788817088 34907473 999974981 944036805 996562259 306109098 943555540 778862021 911556793 244219686 395808776 239162774 978792157 13832300 385152492 638110888 816286905 58102789 941763392 84155828 542750168 747965304 754106551 666016131 860324855 570420368 871031002 597169853 739344880 335090072 379099410 879255335 899150320 220702145 988155116 168465327 549732294 488116755 802386377 455869873 788351136 286797238 399975307 28685750 829392553 473699366 835462830 187822161 816461519 162530380 819255015 680531871 721292067 917552651 939178150 295796465 376603737 820612191 988581609 909007713 912566260 616869216 876347933 452331169 878875008 826074241 998801234 758371894 834591327 85067465 206358077 71694899 812470040 286359099 521441547 60707506 497359312 420996574 473088648 68882726 524303790 47333600 714304815 492446031 824164885 147377208 803724618 893443714 992788893 861231835 944247009 483480054 727166883 538080673 896820080 272064966 584687393 856548438 989256332 453504892 888987500 899918567 976492473 518815427 552805015 530508073 904034156 355874300 519600305 292912590 419234546 7107072 395243672 577848019 806766089 913609472 938118573 296813615 687293685 941607050 997729456 593716298 630703328 629669206 813717939 871017448 917450648 502705519 802170847 9174962 91250194 601682525 841469417 487728711 707851831 427074784 724842500 630493820 810090958 692103742 720552785 891340290 949304261 438025661 856391580 790769056 990630237 382221863 622109558 287332002 617726419 606176567 735597253 131191179 542651202 938180454 979826417 769065150 965360826 455305447 607605727 407780736 766410516 583902487 774300049 330909156 674824975 777504161 937700628 940159660 990489234 143767303 567125549 303947376 600105618 481099668 853681952 437692778 596033692 181637831 369848853 849340345 935078431 614487346 738011559 617146996 669659909 815919553 963397940 983165104 984838270 923799826 956973122 65045420 308790045 352556581 892037021 158174902 314432285 315030237 636574727 949146881 989866717 133782304 592336465 187754088 851399360 883249427 899818157 837518920 924895650 292873148 697250414 698932581 845636130 329700346 646844516 524013655 904570483 686905771 897669046 54136571 81594530 110741912 520973992 904638550 937471002 798275416 933925118 663596413 947715988 214396835 776033254 118850825 787654129 467282544 639539084 866128832 983562851 190070569 677702285 70858131 720370421 1655745 724028561 233248728 763856216 823734106 988922671 118691003 532297325 792421093 953892707 642641070 794843769 79346572 195685997 685604673 834862215 133497538 573226042 842291671 860423162 278324799 748799540 601183063 764813946 184490656 604553080 895751371 981014307 264363502 843134594 910322906 998205816 367336242 770324078 559711786 815162676 291001493 363316585 263253334 855158712 886804735 963648794 644295577 993755961 653225709 722288750 746339984 918868063 894431324 902824050 949531377 954071829 731175482 908233924 461759628 683708698 613742329 836289237 698514306 843930666 946940024 995305342 878289261 973729289 738740975 959114854 86911170 679423327 652637909 723262661 761681170 870961107 471379091 551654782 785265840 858042529 977982645 995509308 651225793 710760189 81791967 442039304 518725491 928779521 543059956 869830868 337513093 701068902 996776671 999450516 900834125 919545375 569580109 844896882 125792806 768116110 490418768 757761044 735094612 998004581 939769651 980883107 476689849 757059428 157481068 204544533 852947659 877855385 130098278 145452420 28848062 799985413 350650078 969994649 232586124 570780847 681851865 978129644 552140747 757589923 79003436 678281885 649623492 766958983 628048411 677312887 905567873 935418675 878870453 932856599 178796689 687931492 378501399 929040007 314518473 978076610 18252697 320081679 682744090 795867194 567007808 770064800 511383007 685387156 518290255 554854817 895668381 923188040 941120749 969171188 419743246 865256887 371674980 582350906 432259478 736582381 504170568 610122359 753467949 942329212 646266802 980373230 107404439 977370110 423062069 704257744 821560014 981261415 895015343 943111863 509438854 973528557 515691068 756922405 948358196 968977568 16161665 433458318 70563643 232998447 900248037 938136758 887151189 959020676 334926167 885383891 726739782 998398321 377390691 757800931 205287230 522224995 804463847 880904432 996683568 997882970 607169807 951780064 145288664 349102553 641531630 688573272 816532149 990047167 60722995 188567124 628061553 639749412 777051128 932600525 935765547 954919886 382243186 403302310 924760314 931436413 50843442 68272120 320188936 924387416 98523947 720735141 287389143 571284562 755381644 905671650 566713471 862734400 478600111 718515991 197848552 948490725 811372009 943640940 417890872 920492174 56077912 432146581 26197629 831404177 113321164 535654449 995100022 996369586 479325700 563353971 477559041 870611243 219319439 765757138 721967169 782737245 949535339 974188645 600412871 745499585 769401411 968218274 430049350 738303708 407247784 710187782 49084716 859105729 60147956 753658181 230057458 738319393 374823123 801940775 310502373 589265983 915222392 978432136 87437899 698260961 665838259 692637918 218075646 895596279 517872348 659696997 131475487 659126237 236773278 508018518 204479590 615806527 134518596 324416964 79211148 367945633 51345460 873939507 620565296 809411486 997677871 999331441 736525814 861871767 471475584 924956276 52868315 101909745 658854637 761829645 838069584 888230007 924383552 991615075 232988309 745782077 169872804 818514703 451780844 483065542 908004752 949727833 363294746 905335060 712358719 898830867 104335155 705025809 274482475 537949803 79290970 774015568 796108703 932366612 252250192 295565935 304701503 652049666 868555344 917713554 470813642 476297290 979962946 998131431 897484712 910484151 561156996 835595326 917860218 917971796 522945078 850577266 760856338 852774078 420357996 520342448 790484009 983015876 616851151 738082531 912109593 942801142 681573789 725414919 209867885 913352325 751568967 761900447 391009515 968851279 191127886 679789937 225265517 530597861 372012928 837898692 70986730 834452628 534308714 978920677 660923188 791558993 451781620 758702500 651995200 893128283 291069769 960947699 822429885 908806720 295959398 412307162 339345231 506764580 429850968 668333002 817986005 861784582 389419231 757270818 582487989 693821284 98813874 471327812 545471024 981671204 495776425 734956535 204798475 410009149 129120397 364894076 656761558 794944493 316732938 555704198 482763782 789746808 31862231 58162244 407353898 637145330 454918125 686461471 129929005 635309167 454311013 853192699 998999 490952895 921687818 988199994 48101409 324997880 557939789 583217750 455592136 482703565 350260197 448358786 519834300 734557796 421257150 978668321 58047721 617064922 613626596 940389743 704003900 732746366 301614861 656506315 242465736 807338755 410851570 666663925 791022046 919137549 596651100 976519206 440970957 550263136 415279142 930239419 16788674 114014933 940145109 979243240 411183019 433974629 664948844 954407778 649284241 976442554 766150712 919523858 74852065 148184941 558880457 654563837 561704070 912658768 280118583 880597072 281118728 997472166 196452796 805131489 66975075 858853269 673354545 975959572 579284812 871444420 988240346 997996058 47732558 503570530 665637353 860316088 539842374 549354661 558287011 868397610 447588994 926423673 45325324 279756248 304459448 366925259 566145989 877642891 166033680 430225496 881685078 898254706 60284537 476180984 294930469 633719280 74721302 917400885 611066554 772303517 253913340 508743313 836528028 913114447 812657727 830322857 148091174 182201417 57630991 343604997 832943745 860661964 98427096 456351910 767567690 968130194 588028375 991053040 503945805 622208338 944414876 945407240 963800833 969280746 491020134 854905637 372810820 807402172 937911110 944840197 224297939 888882260 339769507 863131847 404454788 675358097 62882514 825475796 172689082 181515585 699465799 818368006 571474032 735386113 381971347 827296448 570183662 809690632 826342394 964510061 896238063 940477471 1825603 33271226 651029257 683576097 988543930 989091234 986368953 989660513 680684465 888972233 461941302 558638916 471080787 905546121 398715160 582157399 440154434 610059477 288321700 890085302 671873819 917551763 750338459 814559547 823275274 959304673 401798873 436959627 834485173 931255651 494662401 850882801 573235847 612778893 435294126 490998495 185177452 601750211 384186355 402557567 459564615 837395086 684260117 835972153 414769757 895889283 960937002 999868282 679531976 784635588 528996418 952121921 44347168 544502763 901890611 968243558 437868317 978254041 84725878 266932224 594794478 709248106 807091585 913229618 364952999 411736899 168450321 339602554 738053636 829019915 940082549 950317305 381551976 689912813 969587517 995714576 971904392 994234877 680437196 789233167 116222217 316332266 648912701 815621782 447564500 549970846 456216742 602589556 322776090 745067726 453096477 876805545 555750507 910631716 229380416 897776081 398067142 548590655 196116349 611427084 774563110 903258105 606160733 740485431 166947980 683545879 866499493 891817250 636775739 996080528 737831290 768916939 445643728 768706699 10716738 382107064 732180541 915130542 336422564 413053246 682364089 989538605 135663739 720342627 347316185 575517367 894376069 955645642 797033412 908069220 994683053 998107494 996826251 999961791 16592817 783488915 18076037 540661891 211054772 461858060 266698526 330496044 718663190 735903684 858840396 938160191 345906002 470235497 621765723 998821961 826676297 995153879 770646290 843002309 348659194 716247185 872104377 914002298 229215039 656253744 190504363 215434870 484230846 591635997 772272050 915350493 999699244 999853451 943292765 956112026 478083728 740279676 553482428 869648021 21574043 79992327 455444868 971851369 874638561 933999809 307490029 764273641 301228696 958138228 924545893 955374430 71252658 526127843 959905112 998572333 375986856 620674114 758842909 810406198 779854417 801635729 624074457 818098759 302610246 547498269 532999754 566058781 404790886 616272829 51099241 462673965 357366573 471881626 165656714 481183470 503464706 916494706 765186166 966984558 459979662 595589892 544664759 573280278 809263251 983657194 333727688 939040085 644219362 980993981 774790165 846144364 817443611 907016143 308644901 441695598 931847425 934623630 849141192 998043066 341210138 888664332 80507902 786390563 334091777 441253060 932791010 993459969 715698925 995843434 456150498 587339744 824328067 828747392 205632019 904246161 926636226 962267469 927370230 969634336 937983196 996116789 300868015 535235402 217269402 822176489 69200870 955216782 412155777 898631462 597895523 792014633 707544297 756575818 335806784 896928869 428567387 472157741 172306810 387950084 171670461 487031884 853105293 943180474 485543071 940231372 971656920 999829546 431015192 481211600 237980054 908999294 982001250 995330156 817914489 908929842 932601710 935180088 762860987 984357697 680438611 732480533 79609528 689029359 292019998 422793415 1705619 914478806 599839101 640764509 447115837 467125148 343637838 888360588 136990482 205020584 286430163 876851854 989383325 995284192 644256352 999128537 301944294 485557918 473054298 526887008 990802378 991837847 54680699 238036596 779018254 919704805 564679041 927933671 910296141 913375938 244113808 970904634 305513547 381705809 841630723 896628523 187701284 845647890 245677801 741420502 924880287 930422407 291765011 354448770 928987342 951675659 619581728 687754456 413037887 660307207 423626520 620825362 179538955 918608370 895642923 904391530 992177544 996946734 910768345 939972756 977214441 982668758 650575871 995635299 921741652 986208284 153256029 818431121 412343617 445965910 458574347 600944930 288886811 557093437 643931149 829698601 738493466 946973458 602003457 788434386 21730671 979533445 304019952 607996136 47619809 303562663 209840582 833979982 608051775 741384155 440458844 462135575 418307115 570266364 307244929 758603894 450818919 926621277 590864375 971039106 559577374 926883514 680139547 880810737 430200682 480607098 485129246 961828952 900280161 948920821 475748245 916968492 212443213 476057449 306985794 775804196 169820834 310000690 264309746 840358908 582183436 688778132 58015607 293840508 756210344 871918891 143399338 975634086 277579400 892266325 627569474 728944498 587719381 686828996 415519449 837588615 516337973 647483987 750329693 810193325 46523850 582717267 661121638 672067560 756833718 918842259 427755746 618800791 647444278 824592879 776991553 961992046 514402443 582633923 192996242 278893584 962974637 970468065 841950236 859609914 356663842 670006925 535482393 713778282 480468980 760658535 845350811 969292606 65998366 873196170 298452766 321630327 325041618 750459459 511032610 971106184 888276528 903117059 952519919 974128289 454284802 880045522 994165151 997740077 20685388 718285342 741821445 747470318 258736862 376330095 945053958 960454001 643479356 738346861 535682582 727285979 788799359 794697608 896969447 934910731 753582759 865850179 657653294 873614216 356736654 629066171 305611973 924103685 635579529 786374781 851621272 910762213 90305872 119167851 914037286 917516742 802313656 881794840 966362496 985840266 6876972 27208616 713139911 837207835 910577118 974248947 821940275 956966646 5394062 78016479 210085551 759116948 940701270 978119238 184627441 644929375 10558334 596914695 529233854 928904137 206705673 799048751 87469439 200142404 778107513 816819095 558071885 716491316 784082633 893504266 231036970 570677035 903190150 999505545 938906795 988561306 24204524 766837139 37387455 526603367 47308814 737612393 339531435 699302852 717944467 962539803 870038838 989684964 780492000 802870026 957908896 963739154 661614926 696426210 265628276 861475119 84860300 706650361 731254982 852157225 775367199 879432119 513135125 642659841 831076993 884961837 766413850 823511671 95780551 179797622 887481552 938471312 869367113 957945789 900618537 945532449 280587399 369072985 791882988 956146359 370440005 781489046 504404462 719323718 483820225 594698461 700181075 800982953 236218926 737902849 348546682 948373778 795554786 879606221 756410283 886017326 890226951 899379182 446713858 934024421 40837153 576344217 384855780 681679314 215307089 801186465 901943493 999264457 560203535 722092912 10033553 735688261 631396491 867745359 155560053 276504021 474338253 597730215 427720128 788356529 915633354 957216388 646259925 766181825 600689739 915633880 184508783 981960098 73386797 428693014 755977263 903883304 196957691 560762038 310950811 423283377 680672956 999035013 804457537 862375476 122772060 570520885 535472295 629463235 772003191 955914515 605212006 729146869 355409528 647151187 733299340 966575383 798447053 859380212 233729038 363994200 877437906 983281788 284867809 787782933 635791040 832485100 807821336 951729332 100920537 425288284 906270142 948330317 478020882 792967392 658540074 659920131 613657266 849987589 531172947 604235552 194313564 640792813 196254575 689705453 453549559 581676818 154480334 811814309 851161806 987663985 658204424 664898191 166155883 617659880 199013794 353432719 608905435 947327148 441100578 962392776 770710944 938301057 329701271 874617047 823987806 933784900 184466427 486386562 544941829 916529110 841679515 963746161 816819243 904003921 792982358 887706827 2541456 842063467 544592617 704582191 232581226 759459146 270733299 914553372 312745022 657943756 126863396 686543463 138761799 556755697 888177080 964944601 557462810 700609016 506817896 710857388 633419140 719685534 817951527 886644868 655098502 987693232 957873271 966471906 249219646 903982208 376523610 551011032 65754689 628057100 609994645 791022617 379872180 825392659 742019639 972501979 13437854 854427867 75296245 890179989 193840443 287471733 743260982 999122287 276944475 825643058 967808627 988317811 720538157 958598032 849438714 950983601 238666198 462683249 265086955 342711538 773419491 980687219 666708075 836443872 901230250 970541672 600727308 723227183 551924291 735513754 89680672 727435628 964725489 997139901 818113869 879245347 474506777 715307953 639323758 852048182 553706344 978226339 953954652 999068888 62648529 804169221 826684103 837172703 718485137 881528105 4081388 805441837 370350667 684333272 527844219 926830530 806117693 849259124 72581243 463924799 502571207 920834050 602334008 918362583 552634819 974964323 704443736 926826462 459850389 513947815 739034919 899201839 397089281 564410350 813228936 860559142 514337652 719793421 940011309 961152891 70426049 941939201 194485572 731809344 516378138 604150961 363848574 598929398 869665792 962137954 280869825 489368610 777503859 833076177 570444072 935295695 172012861 960616601 838466571 915309279 222406782 441670372 336398010 952788818 526452336 877879944 981961153 990605039 763387799 962604219 779352505 913071227 782914342 881492201 384857865 691062056 406089701 419857445 838534268 853223089 35245439 980036697 940837496 971163335 444366559 479103967 765369433 891904965 681681611 929477823 215560600 741481761 256151099 809628219 160468778 489664231 629299138 897891975 862555652 982061997 368516839 373523836 240310695 948073723 772263756 851524299 640270185 782649555 142317249 694213002 473841556 592116588 944339848 961298825 724530069 972062448 484536287 628457553 996555814 999365531 432433057 696540315 188266532 913564254 212223289 740751363 63579539 623114622 458122043 512851461 318319239 927736198 221120374 652561530 60945231 461948235 701151572 936904699 337556591 624133215 107881948 756229551 411972147 533146831 191312332 271648860 439400227 639288166 165096127 403554106 819399911 862952373 331788447 592811941 775247950 963911848 814144422 914186563 175149459 902761846 630745058 942040012 345890097 373119441 148211052 266807606 467646474 719422429 958556799 999138867 929837693 996309763 597201930 696006398 713523989 756356406 438987216 781274225 882390018 904038216 515540053 528568721 186716597 362249291 940654000 954823944 235490830 413312109 52095087 278908493 631375291 716502572 71257567 179721045 989884731 992195744 666537858 796429474 627503969 994971302 195749150 437546742 655216453 893592390 748885732 848436375 572084677 948147587 385814539 867935053 192594587 581097593 504535084 822922517 195458114 610153691 286072663 748328560 177027350 923206517 22249979 550332942 579210917 779235059 16428609 244625074 665200257 913256527 176522009 341573226 708076312 787286311 295040461 454197938 81530975 815541548 853780548 864644958 934471901 973708643 997114079 998832703 18935962 294913299 297671593 640876883 519649985 682720050 621704013 888821702 621054672 984568047 361042135 498275675 858063900 946101543 280103206 513678155 121886407 506469230 989364617 994079868 663372525 822285372 605695611 690852644 914981668 974534295 790654122 812887581 498450522 606597087 844271925 882301544 854590516 873979133 818726537 975554939 381575395 756756421 942817973 959842611 564103593 868846430 750020642 801240434 670433302 998847107 514080020 549309220 170225629 370726413 240021433 466126121 710355569 789536189 46165191 865592468 846349977 942581812 49827963 106969535 229649416 547781246 451853524 668238162 116751320 831015574 530126273 791471982 700440958 792293597 261538097 658444865 33363036 489971115 410947754 883765534 589549776 805305617 840451236 937993637 982766312 987105846 451327700 590873633 626242732 911702517 683993899 724288101 988925823 994873993 791402383 857277775 681954730 839252394 244282219 429658465 479173364 682390366 141859119 478161295 660788159 753783783 108129847 161514203 73136696 911262737 477313903 753121030 507692851 618374452 148470309 404286078 539561247 887006681 322642545 561111388 77159933 482772608 9899224 123821381 686476684 732136872 975419054 986960059 746209153 870721241 892081727 902313001 221097091 673046260 746823945 856847349 364702552 965636382 609554174 882447722 374224515 462861053 788557567 982063958 859035528 942100284 136993305 595078187 267658764 327502240 881028363 987313037 81276097 465638374 294660919 919882086 177064919 962533227 365661691 542993968 83763651 884572370 148824324 320274252 164973243 336898755 59612885 423510833 97498630 420100688 879702212 921376813 613146442 671974599 303777842 850573620 997235975 997948372 153085925 509889316 969393919 976441962 521720812 920298292 137030445 519529043 725058835 989707081 902300746 947427634 537580270 663980806 772197194 848000149 276065501 869698466 70650037 605563768 156635092 447017508 938700784 967747808 157183323 519198753 699773797 896521822 96519031 850627088 976327061 992991999 498452132 605826252 346372846 635630608 503594383 886769171 304777522 854426797 860448413 951173367 996965025 998763451 520800772 924003577 936800079 996678187 194597408 573452744 660714467 707697869 484045184 983447187 251863195 900463303 518695435 945932992 44120452 383055955 404631042 414452043 441842034 548977839 7368333 314168003 672624396 923056766 876012320 901178636 839586787 971571787 886540771 943944711 257710442 484082405 413016163 895903210 998317507 999277636 71826580 702844253 402753292 771577535 375241594 562309467 785474977 828255050 651701945 684568748 376392527 741952976 798859092 950644819 390772381 977312650 767560168 983586356 398311774 534279776 696869379 901656286 771730993 890197814 369595109 510749368 121831384 495097469 130658721 141964014 505744836 930001821 246642270 270999957 934550011 941725205 930416069 993903662 902680660 938365531 635185772 783178946 845820482 879420871 349891071 407674185 360689921 531602390 251305825 544817472 514359285 803082906 568405844 764924950 547791495 596474167 166796601 278283943 585698167 817592636 334679534 609038823 643530012 854042730 889957516 914583497 923266428 958516274 856774572 936697186 625274680 697974551 440444608 925678047 232094556 659318211 915105624 973773063 515713705 992665693 225085847 485663777 247719143 540755373 95975551 972705515 136397932 766390290 446641236 679235004 791777136 805679116 767092608 921276746 669169405 761104518 5268280 192958044 261221993 346443904 491768718 591005409 839692152 947129141 479285473 789547412 155973958 827736340 47394278 548529901 124514047 283131521 78876889 256141288 796077195 963754606 379607404 439839878 683322112 704222268 602669997 880970769 885771221 898510557 970215457 972859628 805314902 869643176 297234061 887407544 1282012 199897433 385920011 525512264 124787544 821605588 885906321 983782156 598249068 820497624 550604683 870343360 663484794 884010422 281453689 649946623 332371896 949756550 649652185 797612548 659850741 789316249 584520764 697445771 378175711 628315293 662553345 709205813 127730412 976285501 115625904 916273546 264836977 475983370 300007867 897376392 347563587 533609499 828894752 839448574 469165664 966658989 809409148 962055948 599461835 998934701 438984432 486539742 386347675 931475074 629237261 751538779 401543356 615137777 963205958 970279439 496782690 505296996 598698881 825076746 629997843 761403502 917815353 977130289 249271829 582193767 936178212 948479314 790662407 933136414 946470339 962059877 726370596 914745704 362016004 367804198 797990603 856185067 918990065 969687371 374827867 979839464 200824699 843107711 75141274 439657506 547375372 925961283 871553595 956992478 546509982 692294856 615996011 716119601 117820228 363874330 437187480 727886517 720722673 885994641 321062927 972310420 406654891 492293959 854569055 922899066 623006748 713172317 936131406 974007486 117569919 384781190 353078568 488586374 401814367 678433661 220698996 285471572 309963613 362266129 664170396 815276831 309496255 685054067 487202891 566250844 195811071 478640067 741599644 848349698 315847016 980395141 715947642 726628805 381680036 833087178 231837618 315963938 214528910 358070324 343725701 453570045 283343181 723010630 362447256 722338201 343765809 547200707 631343956 862810589 603801452 668235535 910278931 938106210 389611074 561166834 357443626 654234538 741091650 785019748 322137804 928948286 400352665 541744241 591368942 843372796 228387680 355932918 458650989 778318300 549204319 803154883 802071808 852821100 308435181 801052486 896290638 954424998 422796182 672043330 76200170 172115502 14657770 316582303 41756723 881138716 850043959 866772819 959594693 991915815 634832526 776725500 350025470 824994755 976391144 986849097 853618952 914672828 976734519 999468943 689792220 717003450 805065453 943434617 461087410 584415677 416998819 852063878 175144885 743012893 132512730 566168571 429116073 751927212 323052384 854991115 313366227 663214057 752352026 964889488 744041283 877794555 397628571 598558303 41184691 567726322 993245320 996514684 693801331 904397119 679571953 847757412 646812223 724366474 894500384 906552466 675492291 969879699 951511246 951735382 716142146 770812832 858242511 901116561 459868553 986807335 555808145 848654833 196388259 906944940 90388059 455368128 23191791 880604332 916801540 966340792 693657624 752279499 363239332 648674535 53122876 927470493 781526609 968650164 883244601 887094241 589444232 998379219 632331374 726906059 295766773 637991494 886658665 936180148 708621317 742693004 167330144 557284607 988969101 992487798 797655686 829663349 589808668 922422557 53492995 687589036 26173812 522300395 10954178 681226891 148819000 981161713 651299004 905785830 704166950 804690033 109920776 471675860 671766120 958454242 310621780 319922849 149334866 404618098 800044369 816712964 605851536 954825157 207108345 893927995 712645835 885357359 804094421 971580645 893145513 914879440 525043537 806112656 485095385 794402643 928988225 974685836 85363985 491046424 840866222 917829447 103825343 240451075 126580202 516776790 687842012 918029092 693523123 761545482 652197206 672144460 88656082 294627574 977178667 991257318 589982800 624449718 279793970 941887571 273943609 767376961 760016961 870155629 500781491 638241704 264255202 957703294 369654208 752791451 908813474 936052612 718024488 974299420 821749254 854756389 191140611 320087478 388852019 765976134 891594237 967633183 165119085 916188631 249996939 748587081 789050320 889595467 185873465 710521207 982245156 993839648 343299179 369740035 92219109 598812719 113388720 624808381 952979461 985661807 716825088 841093294 696965255 711030109 192345997 721676790 616472345 913575645 396137444 572622294 209821499 764950947 974928499 982490287 653404798 791726627 614925051 704290160 920458842 987089206 579199537 740221849 302357089 732367026 496932787 717134952 129885707 181624394 927520842 998652638 175993007 226368367 807686013 811710962 660358118 690509536 562250500 874853568 91144931 994828769 77677446 464727272 870599573 888261601 744454023 754859332 466162429 479301840 363677443 753128634 759307886 796683494 971192976 988169316 386036805 810086014 436748487 983331226 877505690 906097745 542355401 920117462 58287701 633406025 356893628 556583201 709478228 732560921 466980747 899575098 438620062 705365373 288412923 789772670 793397310 820143708 711275322 818893388 458901133 466469461 552373745 854289357 985631453 987646811 130156983 547624861 129662852 542794044 932937439 965573007 892342573 897234130 943407182 970057896 211948893 910534299 782672739 814733051 418403962 940208379 100795994 162722599 897523566 959144270 498525624 547149090 607237137 700573795 281911091 868757728 380267 723156051 851147279 876316536 972743796 988279510 989708112 993899115 184929637 285409251 201264122 245381725 316281198 828234979 536094490 707505917 696369235 865427395 343259158 522062800 592716476 774049032 487350059 681549384 601211085 816187008 347811398 983139739 666002232 796567666 194388256 986075749 590881009 936355452 12671134 613872615 912462396 914089926 770896423 906791577 613640493 720717017 951411725 957280963 496597930 567033827 126715770 432752416 282962261 945867782 442603545 771867759 518663284 957647299 203100431 485039274 915943537 988076937 738054703 972428602 653044237 866541079 939090582 942005171 352124365 592533667 882155392 898084141 614377984 937764275 318284243 624589252 164487935 338282372 644222900 816835727 174878912 645475968 81109194 123524000 663137678 794121060 527171552 813763237 461227962 960990922 673286235 784117712 441968914 588301622 260769062 415225508 520962216 602071532 784681688 838240341 101709369 965109457 478197388 564066388 441178784 995197045 698858270 770977828 423929922 705955416 898767997 969592500 65440285 546323488 398881791 679029599 975235349 992017443 632623498 773658903 718106286 998601666 625388502 740434628 728144566 901284564 976341265 976442924 996688038 999008812 784165461 809368412 264096613 809667400 824863651 916866005 168868983 318423408 125430679 478447605 923045004 967229094 719675130 958205131 617922590 924911291 705668047 924158998 166902190 808961838 629617684 801373697 667955651 970082699 277561408 327367953 641490518 733081098 594467007 988509979 568889347 948533060 602908485 826544711 228244037 840379392 694354365 784271600 129181564 985939260 189921736 680288355 635722413 665322366 549182171 835951495 364999680 902009433 628403774 979355279 944259541 968088500 353140697 424267635 53689927 753963967 783874875 968280332 128180864 407248998 163341603 339991328 552851349 725435174 736232850 875246673 828681351 999686827 713648998 956739661 798857329 815280330 980553136 995389599 648598807 837007127 747698458 818497978 943263424 969497232 345801816 624231901 76445865 527144110 503328672 817140501 669764547 852032037 16913525 681501328 697915372 751734507 967784224 991364244 62787752 295202113 251461246 458378675 94422414 571256901 14301646 232111004 843062309 915249548 782610431 941234871 516233551 947509283 728264448 806909745 505288032 678842693 294748820 811838496 471912097 945239120 594575345 638908087 312810101 881515286 137810932 957697042 232435379 296008121 853286396 866451556 67218441 941751041 390992092 468601419 849273539 995220398 398386555 465903112 331941881 687168770 307108782 637544237 242839368 912165435 42469663 990204181 571232210 851595682 232849473 312451305 493655371 696007849 325571748 937179282 228300022 289754886 587227211 852112165 264833555 686808890 614011400 781921901 135543289 856029099 240778746 952933775 864235271 880768473 151534061 807518719 428388537 437195764 151403435 964000996 156588463 963236645 791625145 918728486 970426341 984318472 626248177 719459518 739463567 921200807 636110373 986775151 541406607 819706071 677461953 783279524 328656885 991835981 122800293 803782418 542284009 742560729 292689337 320038620 241804294 298091506 30684164 837117551 419781135 990905476 546332498 951535286 829895115 867481631 566847879 645683677 176244696 233054837 197607885 830757928 992773030 996565586 590300821 662743688 164514801 998191392 559197866 873233416 410338834 665382316 659650098 968100302 114858858 198025921 458686856 539836970 238847231 641578858 120899831 726278829 568298101 786270772 640147199 816565281 527228778 666722454 244279359 504522029 953380277 993244732 649503414 988867257 235235297 281757433 812674556 823235841 737558824 922955234 864289277 994173849 456361862 480239707 473245243 621264306 789660673 817036296 767855698 807772854 187259391 715922165 588789614 869229973 543169838 954808828 151818222 735650910 342693553 347584731 382003598 778609460 999992481 999995127 304338870 958934927 895310673 947646421 999865058 999914116 99721110 631432241 953151043 956010242 405310208 626293811 436282794 938617351 466777416 788219560 101924401 593707009 210751718 400652674 86256280 159910798 100535230 313302474 971428628 993463882 888608724 899865588 447482353 822388231 548216884 650445645 102427326 515363900 576383460 738205018 633566111 899312136 627883193 690148297 213611870 222049833 343494355 902013188 23729644 200015169 126250435 571684417 467914314 738214053 700535519 893174696 29577901 926067980 286530136 518448379 570486371 832017166 666867358 992262553 567301138 670783070 337265824 354772539 862956345 995762515 531418529 697665588 780386917 962124703 751297712 892806044 808972243 959268043 427872206 544996932 788528630 812713124 327046130 947317518 482384447 960598545 645936126 758437706 677215924 930052767 748482948 837894416 524491255 774948232 900944848 994785682 54312234 569191348 502967799 740217736 926981384 976908235 642404448 753838611 171210394 295518849 442635440 488060035 331754021 799026597 67016986 408144719 727444223 889828482 326957789 543580888 335308349 577367114 796727894 892474113 636141102 674250405 364675841 615075257 736466750 798797897 66639582 337619299 830843147 924990997 26665818 666746715 24222634 518195326 987923932 994866497 174504297 964448239 199884006 927607921 264264859 369602348 865824018 899100487 814237817 875482682 88376479 90409193 303740953 636279546 157264588 341374399 89826407 301703142 500571660 501639714 776485174 899965224 332650232 805906751 454474269 856439175 914054739 918466646 193625939 580640852 733003691 832609745 1322007 264959462 612252152 658677929 984209952 985499913 897074784 972071240 508637702 990852632 846527826 958121691 305645741 437743129 622904593 859521931 332315662 578189446 485119568 890397596 839352316 917916780 637463151 820596651 583209996 827047736 769696209 825806214 739997974 907338483 968955673 987478410 696184328 732844805 243445367 326214760 736612557 998988011 317571889 440226064 486063709 653325470 910268951 913527818 16572186 874109292 501684472 595919446 987365760 994962020 178488100 847671735 529018036 872437171 104434535 335930766 564191968 690738557 942925298 943939833 886048712 957814492 862892440 894304415 210400196 734197296 368682184 835162818 92908500 115070037 543404287 923068141 754042908 819990444 737738834 947853316 97237244 757410209 611002000 623437309 421259221 790862814 112709928 382435248 393738454 850510468 558683635 843467741 911384551 953118374 574205677 884420166 460334700 835789962 552052527 878009921 827204065 967345452 172768949 701161071 805039171 915509016 925812233 975290201 846057184 891242893 395951299 683354006 222036706 705339106 218434101 545233270 562229925 623335599 273735851 878882004 580616150 969101820 221123758 580198581 435703535 954561723 922995389 948738660 749081572 934409585 874381293 927090200 869275889 888088096 432173010 805687172 538914318 652687000 771819195 804701724 779343353 902920697 425630039 894562329 486799178 890038370 118273426 860217461 199081596 376774205 297639685 812370014 247317449 833462372 340127702 600259616 537654659 620313752 518826308 621760882 118168637 929906368 116057378 927258825 547782488 909957989 916312539 972262826 649489940 736250475 679119360 783706657 130537966 929325502 442241021 705936950 646596741 894100977 52251678 463980021 53130865 548625527 756892053 907848954 416424562 588427449 725691831 862527161 341856754 765308862 862581399 912632946 459610001 751742229 36757150 380026181 667854162 808890937 926898072 945831610 294424951 485845783 604496854 874526016 22117087 575483821 419709701 610441889 662028605 734910723 647423267 886671569 699023230 874127946 176560237 558649211 501297189 595119978 663474121 778077703 80414693 667144185 973853832 975533151 539604051 580407462 690267516 817536842 306890204 727882635 281977136 911166265 729611110 936106513 950917395 979293968 513902235 701965559 264117876 746678790 302147340 694536912 316652334 434755131 81084953 243985383 652330933 806199732 371463593 513475706 97890409 430708966 971384368 985029101 890425737 914176809 446969349 861149291 260431359 338382310 2039489 144841281 78125101 986836653 128705740 306147763 867686652 980520715 11740275 519694463 486360487 759857722 310857274 992088013 536705393 632797467 937715593 983039443 297925617 788833274 63002947 671228867 851309084 943820177 682147085 721707538 203995461 783208014 76508687 928156414 3786500 475104670 371241934 744601785 531481530 941822108 915389962 980312006 245429463 517661805 999260819 999290189 725209876 930473924 175139582 431393536 215927765 504374006 233257490 865102278 874724603 983674733 148856588 326415933 517588483 609445127 639211569 808359234 167964172 903048444 794769637 849684345 307852356 313934993 87576966 307529555 448135413 573592372 835852621 864955038 548787364 990329232 691515742 884222093 652019316 917119004 157223947 676597756 350328146 627226966 467606748 852764984 52379044 944260691 291070944 316365406 591024683 768145291 200125201 970153253 981814775 986226314 738475457 845973923 813942230 983950879 565460833 670552959 955360661 984546968 670354957 797498579 148767713 787587611 67828610 475683186 504476907 912574913 754714747 848128519 906897601 947226175 325324268 639451936 519143762 845505303 291258608 554727681 508379835 652102763 363226135 614673120 954020449 979965475 368286349 967578316 369240708 991058061 822681193 908426754 384196596 732208829 267198037 482501088 53405092 242922872 342627842 401759682 924937967 991529784 976152647 995988191 192157656 961001367 888716908 977198030 997381505 999032827 173196106 535097236 270348359 718739022 839915165 984451723 769743889 809789980 281933495 995073095 721304997 891941895 670676436 699275152 646059440 769727382 312511036 955766684 118548463 343655834 494192306 564122729 10996851 565415838 183099192 260010873 197928160 240335028 670938387 685624919 167427283 207544507 456006586 475132435 495947202 631271414 526059410 759386369 326792237 349667522 824032382 969855910 429604594 683911327 121517885 175120074 235438892 964478121 883268826 960230139 957179156 961305890 659006946 790388567 311265378 424198764 959520952 983343259 55539487 726508814 871231226 903983887 405562326 796098788 578075354 856749270 709280759 751206701 805583931 887065561 833821491 920452321 133560493 815747335 117606126 812671166 994761831 995154577 594477562 632461590 213940534 749785383 975299040 988372295 290235214 357845678 964106598 979857469 166131217 766322633 661791242 959689034 375382772 659415417 533127543 756427353 694792161 804559979 450081159 728025821 267008602 803899035 429444114 790079752 754834698 898989024 520819370 715165428 37032047 783205430 533290840 801763570 376273751 519593086 265673018 648197093 427095022 536807854 373070858 925585538 663256503 960511984 732233092 902020036 492277661 612655323 991302150 998822902 656766220 998269115 888780928 921119874 928517291 992616941 450277441 577231912 675303247 832081232 37379518 427088281 667856216 729161776 442543661 862576265 788860278 867520149 591164638 965017155 530235203 930449449 984101033 995784391 503990798 800301938 199213979 396996232 833887291 930193266 229498767 539939720 124250803 521679996 535837703 595565389 586371523 633607288 302089018 740271693 644453940 841675611 234130167 814595199 760944707 967094776 192933948 636053403 76382676 853212666 861211391 977942440 567971930 757828712 663765101 903247568 38513858 291511188 727986977 969412543 543075381 583503586 806885139 970060872 852181873 852360059 897968111 956230468 567194877 601714628 458847336 552260277 664548421 727222345 798920431 914534871 452666758 486511261 566832092 835986126 518164780 890145710 959475256 990049375 36559615 729804979 209793042 719924437 292711068 805721618 329793578 447200129 676312898 765048889 974793056 987595812 564093592 881696574 633641757 872843642 944722598 994618347 681907739 955509940 884540600 973055414 927183739 948316541 691682132 805448102 195130615 442905072 679145666 977124238 486110554 958862364 435256760 612007005 747244051 952164991 600572915 745698455 335966559 494371939 294528571 861969470 419974803 478294250 799279720 900094662 273020603 862110052 129712948 513585313 602027266 854600316 191687804 730935318 15385554 132634869 161567130 874579684 12508704 378010803 830109913 962531257 853734707 935559073 895494772 917853499 738029882 818818964 780812310 849025478 836638383 849203284 849940119 948929715 134139025 311569002 442889150 973626213 593037098 868496213 872596669 975633005 726907506 837065585 169876899 636849484 376251215 706233945 306728099 486847757 698698331 746986288 517329005 887348662 837606390 886536027 556294388 648776307 12346329 519930461 999095989 999357983 845460387 938444394 162882652 300108730 10811469 668405452 109919797 670064489 169623778 767745756 849066126 906073505 246256342 870196027 552375202 674204296 418221004 585775444 699161530 833631890 279045563 755607601 979312 4555337 926696538 949751589 919241169 994528550 993866292 996200628 815526282 861162312 686818741 772699019 667013739 791172113 614016567 982558222 168951486 515319639 720705792 899130188 265207782 855168713 64800120 378160490 449568505 720145187 405815279 732911783 742898374 749616079 208749086 380836925 794364289 935901707 452715571 824719687 917092198 942205250 118803047 715957343 166865001 795792907 948628663 982754793 102120064 347885536 828607772 832076184 293853188 638677389 958686389 996516101 567235132 754304452 214064078 569850045 557715720 776760853 155452290 604844784 297063669 389366159 964849909 973849497 373964272 786212318 703047281 806722804 537884775 551852917 731286567 939852835 440262106 874319030 414650716 566804320 301832196 304251209 109703439 935944839 580764568 827816760 148287546 683803046 37906546 217478582 252670314 644983866 226290425 636585851 165271546 835317838 58903854 142718768 530698829 640699362 887255847 907497972 906086701 926128494 826426268 951878817 888684521 936833717 530460376 576296660 405803795 679758627 635276759 945635083 769218345 975273073 793241770 946572145 832728702 918763533 934516864 975275187 670644159 783340309 605927324 790042709 592422739 832430160 361732563 642683729 56835600 964089715 233874274 902726839 968970557 970801906 156002715 255812961 635241305 974069618 435001233 710154664 763381415 986868652 384050459 831691567 118384994 958312252 266490246 613232376 817609067 943796652 762041757 985059881 287201231 635452636 627661579 736518572 596673357 745536394 310097353 884578305 767391795 779244326 551892643 890944356 136198638 747698057 1441130 941652111 686196231 788018489 246471630 797728287 973600306 983294677 146936743 616455183 409041300 788346677 763711603 819873648 553693885 593315084 581401388 838438301 101163269 245612396 417256564 613573901 806579482 817840688 862440153 993809506 165853618 245550057 631156737 934959579 946131953 988513085 977127639 997709451 315261651 873955849 715203593 774278394 208516218 315940019 152996459 998943216 368668798 571567931 436286641 570249643 141424251 656254310 365691137 742969902 588435393 685426753 866009327 998912712 357029049 543483844 947647062 988597181 919028693 961476670 284226949 339321851 690942212 922569884 511261388 986285652 836988756 922990138 932544084 967243304 430250718 694279408 746063627 749132108 301237149 805766100 860010191 998618398 584278907 819138767 491522969 724312554 496469285 498111991 937186016 961374554 742315607 776075403 351477524 787165226 317910103 465178780 604343371 652108739 44690342 731340978 480271232 912132561 928167718 988223636 4919613 446274744 234924098 598313313 784160380 952837979 699763097 779235210 970422492 974562369 488374698 591961094 661955276 878198717 774041998 889801880 432533080 776220419 220720933 958124528 373604797 451579240 97275290 702447762 897415208 922377648 925981769 985819217 438512281 918857915 361554563 767777558 831041798 945089729 498390089 582479735 480074676 496297507 115271643 906883101 147976426 978986227 883925275 953404035 578524352 873668473 780289300 909661359 333439201 996693905 290229099 638050291 829618581 979361459 868549478 949180479 210682809 793993247 276800731 827721428 301958094 537671563 953641055 988034035 495674188 984787624 122026894 533546579 479102936 643808727 463015628 947646942 785534591 924002319 299563636 909816725 282158164 477616919 310380583 361233500 980448467 982280336 911606976 990311101 386882695 776474774 108796784 489988793 671892602 985875209 57572342 641741305 822767677 933312012 128969617 533798463 845735799 963088779 812750557 991022178 804343895 982208549 764981057 795798986 199549601 454396990 729939533 839184824 459415175 567780542 108215599 704570272 211520496 267973790 507470070 984702496 815358985 990016133 190534951 314998947 586351055 753886825 868093654 958210793 172632612 836804415 688284672 930314074 529840914 966711067 345335165 460857742 993216903 996926601 956186353 983190676 763149369 921775110 413898790 604289811 770913609 828803397 937436675 960115202 648198771 677399294 29764601 380854091 647647149 841648799 510375147 548735133 103948151 507750645 412166040 959809942 130369149 564201414 609901310 631439170 642565418 957930210 12734664 334580787 924376876 927520826 584896904 851490082 932628124 998603351 89034416 424198485 786925091 967827425 100998902 771270012 552012568 600181910 441209786 632243586 35996731 459307384 942805807 970453081 207572613 326792780 23081361 822234268 874383210 962583694 270739745 847199977 543379742 750189552 312872499 548965267 210785687 754255630 458421751 929681790 828156688 849406875 946054553 959350738 929657463 959721696 838225365 966171443 823375895 889134720 952989799 972331285 993639319 995052716 233415408 341933279 815916543 975798335 56784443 695777231 308300028 560110311 530015765 836219672 587732823 591441671 719441387 822801077 487349221 888315911 13699320 801032668 908432099 990504659 302109849 596808867 791271909 983276566 669122931 794028064 133189802 281074219 923474695 929846576 295184684 925100584 24507463 36182710 406346429 427263720 463247591 580482001 707643234 928876735 869404717 950651843 320225285 744730879 104780035 626602368 582025054 723209039 552444290 934476667 921694836 989626416 389074770 449231806 857271854 995436929 727730776 777806452 469714430 765017646 925971606 987702953 412264444 456853815 186405186 898670144 794140927 826417907 784326976 968929304 790319750 831552027 810028986 865756091 70765295 402969047 889654756 929908004 732023658 844361702 108188723 617920818 577660733 964251621 819863084 981914556 129786371 669976552 602091674 904140869 209494247 469588077 340802255 892351798 864844512 968992374 876168857 899152620 712538497 787412936 499014182 554475675 437654454 845952474 301066503 355890533 132257560 678949324 589709519 909712719 703956545 850747099 164196456 211287440 325886287 367743591 943568338 987679188 753349582 904631470 890374715 963039680 969177893 980840299 828403056 881145734 471136211 532352268 94644603 770401562 169568141 494659373 427802750 724560746 189175001 803785908 528383206 770112472 561381293 967199471 656199280 719211095 360582257 513031049 63110519 185389587 257625141 950620988 753538101 854582206 464334829 641132779 803734028 999654262 747039634 992560282 315675208 909595421 605822988 947573959 73907990 301203391 289894523 916546395 434140775 935220102 33437618 931021505 961533219 975307278 709359034 827441465 254969013 375478285 827609909 885098849 582085148 688516573 27396834 994154387 606921288 963468504 141366437 160588796 826400327 946822448 440672553 694502736 503027199 711786230 546605460 589835904 171059870 432252655 709005863 921129696 460610122 663708667 846971070 970468388 378623843 851736867 257824644 833134324 3042852 923966888 700737915 908634106 132677303 656152543 837627424 960732085 829115952 859957805 136953204 902423085 371396117 962253084 612033258 990843304 762594981 931995985 697191340 975476311 814728557 909955049 660853902 814665353 775528225 780950243 442703923 871414229 419510536 716120094 689887170 932904078 338365385 651535023 370778150 735157433 231336848 302994785 272646662 768021613 104362304 371241522 865326116 975537072 356125092 829680797 170703672 418836950 79103429 308731193 61477769 831182734 626921474 683553968 586170507 762053333 773374483 922222596 152264035 904266739 27639767 603036734 273294918 621467200 113600708 709948141 542234813 863335990 253393761 448443337 359757058 753426194 975964460 987294340 367642356 374329455 284239653 523805115 649040031 784282156 373682899 458026769 801516772 885250425 363576909 481398914 143374021 270315436 730424651 747911492 898380004 999308954 890232892 896318298 863774126 913866872 702342094 729720883 499441583 860109765 677785593 743148316 500165869 678092454 301170492 544959539 347656919 582801265 720154756 826854697 776405968 945309101 747023942 755563491 548322969 897210727 777618539 852716341 762576475 914662908 732489274 809291629 520959378 860808501 8522765 983180049 499544937 933072302 157951881 294158406 251111606 857094702 500498914 807888726 302836699 798509265 304581813 927595411 720609852 879680262 762683054 999165637 390834229 834314923 303272990 738244988 981152023 999842048 319367957 811070653 437286040 531790102 18672424 660870927 636047664 670374540 613718128 753410177 205142242 680573340 469960062 583061100 166125804 737856631 763328435 933941311 268986459 781300301 915519998 922677012 42536161 504321430 685385036 961692105 654852508 694139345 610373207 787502345 653709761 899919028 957182163 965187125 369536275 601414254 377084466 760982766 197414344 248862055 640850586 989295085 515853968 894196014 781063282 782429395 128195543 727691375 324623125 505955293 721172734 989348045 695782397 874639496 525129721 761625062 716080391 837989363 247821554 739815869 635969831 990951334 744211121 835352867 754137261 812415713 494312411 702335018 708048370 788460513 666476318 706188839 371281114 512075296 871728650 947743583 957398356 959619670 817709425 888907201 190208959 760851026 271804872 530466807 758093360 962843909 849732506 898110595 873493247 939343764 986190841 994405909 136648537 221513182 942907680 982772507 503161075 787648850 858888017 958454958 647360757 762567315 327949570 806241654 769362792 986389684 906988602 919684209 512752243 780307450 1437492 922779952 708703199 941376453 875184315 938155995 764559173 926837915 379433940 764733223 319672729 946887047 150765501 498446706 681929656 746459019 821491428 878633275 234307098 824756178 853846943 874457983 811174960 910346321 751592401 833715252 805964279 883997214 68765243 341134362 690440210 768103757 544015576 870483842 491777340 985463852 120694359 849758662 391419574 663969823 540169864 610889190 979610447 997801533 399667920 734292806 628666246 708353641 331537683 793148411 574667765 780425892 840565185 854339049 624232808 732096001 955983191 998829044 142165354 142754926 842398180 974441133 137941390 644785185 4937734 196195827 331143723 740388597 998061248 999173521 761486475 835931989 763034451 815774684 689076296 962987332 502440348 686137696 943352286 965638732 428817196 703304153 383183105 785030036 176454294 309965181 925247768 969624046 377440681 887638336 554224540 825680734 772891042 959952529 911272576 953142066 13966054 124331401 24079177 751880352 861642417 990656041 571364303 909490715 611813439 669506715 981020088 993038901 694909784 823529386 473054824 858666199 429419696 742203559 806884905 895621486 39622117 574496815 134490974 285004769 744352774 893887276 301412489 923764440 178994676 645062097 467419042 917272776 212307859 910895555 755077079 966394850 100124459 324029186 640976659 822759830 418751312 906902563 962546323 997359136 757757110 875520317 198592448 682789303 773453361 808821928 980875249 999305975 959743622 962606124 249943315 487098523 428459223 613371358 345671713 772326365 930519446 976754344 716750274 969900903 498888009 807691544 436539588 617262389 354035825 514101525 217095764 789545377 495173939 670880560 540703901 932380971 649065363 743870991 486186041 743815039 708591798 937717074 680250283 755906482 462170257 708997758 372294033 458179290 945311653 991484938 617166405 699733498 559012164 751796952 15561203 221019162 918647837 965607112 970975663 980319492 860544945 999671731 882143350 907357286 840862936 941849109 36327805 682960801 783704747 980753686 10134067 90601722 761003899 956365507 541962745 756759702 987212087 995574994 201411492 376588615 297701497 736118847 326627476 766173986 869611760 911371031 522457021 956775478 855938820 974815352 108544687 967506243 288780264 806013363 554971748 600975217 907570602 940361958 687952458 951923893 184490197 882208227 371918105 374471494 886683304 959324070 488563489 620776571 626988569 887129698 703499411 959408689 407969683 683996216 453754493 769201003 914090340 979638184 123702220 395766308 168897064 700646439 47648301 517694686 302004533 426802785 619393231 647778913 384379507 495411957 844460114 854702774 970330382 998063031 512361137 919440928 164369792 908130595 879965623 999158234 545574001 727634466 882491905 998864701 836148890 899889890 375687293 707887343 695028704 947570804 497837827 734578021 442578571 809858119 982015763 998526363 712196711 732114082 512294343 963419384 570499429 594954155 482343043 892072504 693182302 746979473 463076330 988928831 139368267 964377853 938689271 945956481 693713244 825683945 681324398 697484418 780503234 896732208 1242386 889966743 193459164 715399696 399942853 752694600 505495101 706247494 483314450 686213380 363204174 471038409 359248340 669118823 445522394 840693652 168765677 996489074 164577792 693513662 855979949 916787990 498794314 989337689 276903061 501592890 229338950 331549080 814008464 888530340 600423144 915383085 342161208 841797974 682716442 950064527 899244263 923467934 802517636 886968783 644178559 750715704 842434789 981135010 162209362 997124165 832436972 857970145 87756435 493805432 474615105 554623416 807275958 849752899 557183032 591264943 852803295 964596748 88621264 482390538 781309653 944563659 636544489 827901544 981148123 996497069 979662517 984123166 618483832 979960630 231297920 275671154 291852772 441080808 71362828 289429225 687132836 784331591 748741881 950245060 310223282 463222723 498993020 947213775 905496437 956739043 412755655 414877902 648854698 744244976 678920244 816406973 395281853 852239896 524183676 933683051 479643175 774557145 57189936 938957296 481563577 810425560 99681326 827766693 307145186 979250512 600105728 730743509 975520139 990860707 107373242 575613774 569191357 625202396 130849809 521556594 521478213 944561636 498361645 830263188 502873387 969482479 892737324 947337524 705853806 784568496 698038408 808890510 702230952 985421201 782846611 919785279 95695656 422311457 533857780 679142210 316440349 979246949 264726441 447875686 13010916 657763854 8820356 803578017 654271171 767383140 591657125 782584559 431964521 808235956 637142591 904694129 149676484 637757256 973750149 997482199 111810263 944304320 251284307 963114191 987443429 988389293 362695353 605950509 348837938 736281863 572043005 678932603 635188601 862775252 609751456 994731151 270944528 865601154 444117252 962490636 370586046 555471528 693635658 750868019 518417538 592341029 846584030 913024867 37976762 42840715 659147606 673502810 29791827 250114652 812887881 835625962 502849745 581912431 768083694 898943924 497512640 647453200 204169522 682410041 671414072 773701809 93302627 951019409 826282042 921227754 379501590 993788074 869668672 904945859 354686629 875040276 702236619 739440648 853140016 962458526 988206402 997215460 480771325 609516220 592534718 827368082 389545032 392668801 855767383 957999793 507088694 937139121 678916852 836585062 124126826 523588731 732162411 984493594 693747211 975375804 306986704 847541717 409803159 799764057 729595413 822134160 526231287 565692780 132380572 583850260 949111910 980895552 900411038 918514782 286945849 683318308 920253672 972812773 484867735 650975914 359079823 547560970 394190 572072550 811560887 827632875 756019593 898834068 415614379 455308358 552931622 947966428 290866702 821492492 674558345 713555575 784590110 825315864 566030151 909836132 65102062 363023193 907528304 930204247 682016571 934365942 469643881 982847369 690257712 693219158 215027646 376289336 527222428 967413360 880720433 910131208 86666906 762423258 741207372 823041394 964303288 990342468 899472372 905043573 282708972 699183782 218835576 310821849 829420700 941494158 738808816 837943119 476622030 997558748 900866479 928844123 431341047 963710361 477901053 558420876 56053638 361877531 71329976 941113729 455612552 654053271 610560383 911357808 607657472 876056037 601282908 832265733 216454046 995770146 999717846 999875125 542499134 831798600 425186826 658000313 284435709 620629773 581065111 622611152 301453720 822863919 411300807 444909542 17306633 281993579 279695282 597750138 730704526 797579337 763492453 823896756 507890651 873195686 733249259 948025271 529431474 953131336 191807974 262504248 441657834 823693432 225548988 922352143 195156755 524153990 418631392 912861028 291332696 956666263 554445950 573811727 668897529 836844915 594659283 950206784 147995745 548836904 799081190 872483313 289446873 763108003 450548036 608293598 572981761 786692352 130641155 650814632 161245937 192452895 112975305 281714845 359046418 472021266 179613506 857396149 981813537 990083260 807813021 978515181 853032855 941029849 533056664 803627155 97736546 742626340 660805650 942980440 7777863 566299692 252897000 808736183 704838349 706137732 614129294 765107919 809947003 900795035 724115100 745645789 786371163 983239374 51639131 377857225 638576692 717343595 613647407 631855223 657205894 766944529 111017939 409051028 664103455 680017967 446587946 979883667 628093838 662997810 413649234 468343527 513425318 819010943 689588663 778818727 688476589 721334342 260296165 732808311 127410191 962933899 589230254 970443083 200611641 413679678 491006269 890035718 704731059 736840755 927439776 927664960 710888575 942427353 698269309 923909813 8319214 426159133 857528389 921840446 433138827 684811618 341640873 590249908 103676626 617837034 438937115 799408690 327866579 984023355 136770891 231183474 965063555 981644950 975250929 996100026 960905957 994410589 329990622 579920238 855259203 890989314 732538385 819817104 205568561 805569830 81943673 946378175 94309006 335436994 80662946 330302404 729661835 912394567 109395868 567992766 560404055 883899531 39465765 47920168 132861711 705328018 906579399 984363686 681986370 703007730 764046583 852373143 706458162 942325296 372714493 817056163 505024558 784094436 842554364 987921415 877473172 931393690 125389759 444247036 135497637 517697806 51238927 206113767 28854404 195415693 473929685 575171833 262361949 273460504 589572987 630185269 863891455 894408557 453952933 735047879 105468684 391197524 749780847 993433329 48254914 348881193 482127247 920711842 643541152 957215724 371316710 888423795 463611235 467186757 156253383 424886597 341461223 633891301 359658456 582105260 220109333 756696902 142607541 948883596 136397632 976085427 426221093 520375369 729207784 847235728 903741886 924015664 537151232 799403571 136535661 653341958 135876971 252981326 711254497 840073971 817793518 836324372 837729128 956158867 743736532 998801166 868233993 899377337 929818258 952778277 64902973 460857028 55321869 130038427 301485225 933740602 351980076 602946526 434767016 910097024 927725219 980557006 999074699 999139325 967572818 982875052 108896003 323610083 899312000 930250901 116412120 708857612 92823815 161120005 466220577 811000273 357856005 990525883 575505953 699943382 725591457 793874709 348321839 856853543 216140037 762498269 370446359 851435386 156392465 713314809 420311504 515458989 319531314 346589140 426001551 787409858 974250665 992925976 975573778 980512753 106515949 748958553 823627017 995661935 240178981 999967160 972045646 993667756 953921322 987772283 590679261 765832863 855596306 925568950 618922956 653615316 717804982 976814584 802009838 883308657 222528884 493186182 274226032 418695470 452969287 518311861 525868072 705413828 804486320 948919800 235886443 718928987 929616176 978160548 364907671 546662672 391512206 998700620 218796214 838339834 190113603 592023101 498066689 894669400 537250041 673176566 79633074 496623463 61980095 763442842 941341928 976162409 351919134 368800361 370377977 862181788 618145611 835679860 154252540 776310867 687930523 871226088 703316567 767339455 87888470 857742997 142608914 981309578 342537645 891738296 832510202 968365696 667782554 842948609 461730938 622335128 619024916 994430688 566534008 848492976 182932199 361625188 181756731 863961636 838093225 956782178 806979915 953918952 473667490 811705713 34574592 643564274 514871391 692230882 928918803 975825185 41473504 684505392 550835791 808113937 895780367 991542543 344910142 848110152 405389472 822876900 42980094 471812456 424842110 932500737 122345308 335460846 942333977 993871873 386083896 410788825 733330225 887698203 462490066 618230483 302601709 912824820 340428802 902414707 823449021 836688141 775315856 825037816 456995585 971363255 267824623 767663411 642464450 765008939 246127339 375865878 115300762 136508280 821258338 909256176 870248461 944580177 655329530 910620649 675050444 846011883 480827430 667218448 529445590 920376200 912994262 973969790 946169222 962843781 685024919 999327047 218321377 936982411 444396078 483154518 426892449 974042025 176618248 759421923 255914508 810876231 471106413 879832806 961436901 993711734 879847826 908931276 506294481 932239434 662663512 966653289 702700581 751591914 218438172 867757059 366341681 731198038 178473992 250704961 579984111 987070376 774554142 792871750 206808479 383829666 495819289 579443027 974427278 987116105 230271168 830504515 709239188 799908353 731865963 985796471 50824478 444131266 777945760 785760761 541649315 622616135 695018 483311201 855411155 985296900 688696489 885572897 153554799 182549372 657664312 795837605 841421145 994805810 270596091 418148422 939301752 941308639 651258297 782404660 409414995 649476162 356250835 491842733 144466508 502377547 178066623 199659610 385975792 401969383 631896999 669842251 238919162 937742079 720308201 766590751 459543944 860757788 221307201 891483842 863119075 976503472 518904427 738983094 990065274 993627569 802642979 994721379 367026160 390682181 786758865 974454231 887816149 934984010 756439693 841147813 381782320 574056883 668093346 828240485 816919604 854758354 181537554 720097496 574913807 653333260 86613921 708430795 480214204 733369936 744920284 772678761 620247793 813559991 911073130 938366443 831881295 840427107 89227025 641547914 812494308 883951415 629571233 927550565 382820806 442602441 587333654 743275500 455206073 570344933 289646196 593028727 601339865 858901697 69908945 741269492 436339685 518630177 645957529 705239230 291019255 828038115 37384165 821005968 71044314 803631396 425396980 719914867 420927737 640321349 278972714 789532629 348953946 686700522 716710635 972421382 558041586 759300554 976186500 980761876 828927847 976332636 445375860 724236488 993707665 994951840 911352645 976923465 720021332 981400337 854214765 925488017 284220011 671194037 217118556 634191337 912960060 983868880 73321440 382281296 51886585 341793170 685116024 901032513 918867237 990144149 907584384 947035303 333329882 420522692 924428902 945361806 612429997 925442278 225432791 882482527 855469371 983580587 103968101 246641248 333829544 718213925 173022512 510086791 320854570 442899313 833908774 852169854 523395134 852473719 916088888 932939200 632582626 906403826 875179193 888370504 12426825 393189387 693953935 784532519 973645288 988894430 724798249 813604666 325071977 616174838 280388252 399863671 834719151 942788777 943579248 984584203 701274515 768243570 551229381 555471613 838413578 965766402 334764813 902959907 123077740 542409557 4890504 822888544 859640384 880456874 202235060 816133428 255862945 895273334 76447531 288911388 265319389 720827606 864951296 986813948 912212019 953557417 393305053 773527992 21128420 576408090 477246540 520116663 860540609 901035003 339303759 532131797 939822847 977534183 957164399 981115894 165477555 186753986 462965730 565282104 724647456 969044301 954352845 998656181 779236104 985966492 435229176 465195243 982689260 991966720 422122661 750916255 388721814 569626276 603992419 630008272 15848234 51239126 558416379 592269045 321048604 867008495 578234855 855380621 283943192 827549239 161115432 786873039 880759607 897694559 368561757 908172129 41740872 761120280 659096201 819751296 118802289 954917938 26280930 745799832 173204721 602587012 343735375 831438864 415243088 829613463 972653750 990766336 532353341 822290004 167042814 748136631 385024906 555926550 956116255 981373801 968111544 978003230 931664562 964845177 563932228 581089649 766856568 986648187 523874267 641623177 498793564 879968954 462434444 632141183 920342369 949427440 453501657 522765463 796010214 828969012 869383278 921186970 239272375 776078818 798410568 999603830 938600519 943986990 291343197 569833973 36618574 66590655 499440301 501489264 686538390 846937497 559800875 785215522 933181978 980877047 933001384 993457709 320620771 939393903 764534030 828388123 479145299 535021273 4712469 674289477 165000295 768024535 752844440 912937816 250192129 810319931 382936355 775114776 951049046 994652357 658629500 923295128 934042127 975798232 221977658 687580537 621889518 814536782 751104120 970260594 348924844 897833201 369805080 370463813 521263976 724004571 669942863 954577518 461740893 647609771 349673068 605437063 744250409 777354910 313633495 823436412 454992574 955821541 588691627 948954397 215028104 693881712 673235534 729804415 566897840 848961984 349901395 466294285 629476698 936180765 142851603 341720020 500456830 861122653 148059722 787654749 83024929 83894291 582937755 907888117 562585639 795183033 540928280 951706177 259720090 729493815 365162356 636864521 428942629 599657779 156746250 657698892 986356104 996848970 683814108 684625130 138777433 911518916 287506431 566494377 906425625 970521799 894278737 945324873 880963276 897095811 632928112 977612324 945259400 967366525 153117192 269791578 188602016 296743616 92828333 936257354 15212574 701156835 540610536 843918815 881766833 987876918 60310054 495125983 126905313 616474946 361885393 974528951 98254025 504577650 717846272 890058058 484516534 976621521 303601646 384426701 856384701 974704620 771336750 798101858 714142562 740788144 68843292 171485240 592348549 666733583 743752067 965276363 968867652 976453492 311100300 367247856 819881523 881501727 428911498 826366632 38600668 223334390 603088814 858974792 666016236 670155103 946048856 989750546 157693294 333668672 174720741 917292289 184239612 250301340 883570521 929163459 553820372 882101312 749224944 779093755 600771310 885865214 100524124 920554984 10440967 848021814 231115290 718366735 202029970 892353426 430962241 913903015 468819029 558366931 354851891 941014765 9903078 771702752 509085981 802497312 775879984 929560943 571646091 997751977 542294721 917270033 99174649 234351781 685953685 752053323 957271969 986865293 927776401 970705709 458842189 545471036 384927492 462919906 30778615 796842914 467928394 886719003 796459777 977214432 602660230 845659661 769010355 933559138 325127813 670756527 206343913 931759058 254642671 622719431 160995296 820277660 938798805 984714613 883469012 909839312 168077272 894928748 49423366 486726553 452928328 506695544 750180675 762647804 26240643 556171329 531425653 675923056 453623085 605835218 249938954 802073741 9729320 828464914 965680907 976421652 238898349 678152552 671421682 749250096 615057123 987474310 568442234 715279895 472187813 823945997 995273034 996433391 94164046 157992320 301561398 500485376 428029092 848457816 262859749 695363870 675476738 909773538 374902546 587339877 671537578 968688716 352532852 755310318 832961262 896798307 829820160 923410356 368470429 435876520 400989044 514209461 513381375 722964217 95043670 334961151 724388907 763352724 505883878 692140162 448131542 562562943 913120584 936882144 272086636 906474845 833041040 980447102 55906564 298459006 109910086 571141426 126403531 582039229 372317716 594374953 683511157 691320848 401962140 762441326 135288855 431469698 533694361 950632989 397916778 414773356 403002410 559083282 615949664 773262831 613038933 680353530 936144055 967263056 471189665 765984135 861209344 944096778 862095076 893563682 663637377 680029018 164113217 446994283 815669422 817541062 471977116 703786509 351199514 727199518 522181510 971716958 709659329 912647336 938052451 945216897 790362603 937776819 667890000 946302069 296857431 470163903 710324317 965210354 298808318 319266446 603623939 622868967 789198801 792926070 317132681 726880490 868964092 879067238 292893007 534258840 264788506 866095201 39771456 521957848 1049583 255349667 61735724 140146923 986513089 997724776 378894566 554694787 8541916 789635445 391056493 598475663 778861088 912355638 100076170 919724049 368578948 602652342 88441316 721733343 283433720 451139917 458574104 513036993 532153186 587903133 286005084 835786517 774504076 861173440 37846569 574420018 528585485 618352274 960853595 967962909 244236038 321885130 20733922 661731224 124705920 633406336 38517054 643690715 827152806 855893188 205537370 847226572 228093133 800795934 546246493 907706957 884622757 940100828 405135562 940147144 22374092 947597980 294441731 389393766 565146617 766513772 250643407 901391660 146138172 462676492 655746775 923427367 414816063 651841084 303988766 765782554 508749127 885825388 890790876 891097245 440068549 947562236 882931093 940462114 272415086 488182036 234682186 633236854 108475249 560904074 609480489 633900370 21734488 463440957 215355777 714319318 916907314 964889099 454251097 861130661 238846238 407636096 191612707 716717093 553182780 712788847 783511110 932585167 321944547 417549031 22198784 345569553 98290707 550216026 750046594 826621296 500589092 739119206 964603138 980653938 361891918 738151350 842240359 934106038 14756196 849337147 656928778 794561315 256957038 860540789 812118152 877971911 98825171 672515566 703629504 884059058 10975803 565385545 798909616 917789861 149071038 645475295 751809954 790570124 76490813 778345436 257004177 509338424 101892102 258719810 949482264 982257987 834313079 994005288 518540381 557219468 52145186 358902712 534210014 776592543 534358197 537938098 582517623 907509131 947001986 977398585 299956667 945223521 559846063 825761038 951084556 965225424 952399463 998918399 377851584 505838376 251026762 971500382 947394115 981771550 451154873 621949061 694156232 830919389 220764670 727290364 394438508 515079606 990873089 997592008 543089843 869826384 652280238 991025584 741677948 880370848 117840537 507927202 880829630 914617941 747290812 866946037 538104813 742565781 71073561 598877352 949482979 969557313 156012998 332970922 252639557 699556830 84785846 658693034 568565265 657479340 875093865 907122511 445262496 626574096 883641192 934080919 992985217 994312055 714924165 821458621 15216268 99655878 557866345 739990392 791871126 848596167 780253191 964461275 864993884 966082501 353549756 540396775 932750237 971345369 451603173 855592827 243247731 773463186 310314282 608128932 277432850 752871865 218832912 904791256 751037149 971564375 384966405 945392573 214612078 885060793 310235467 685905447 421404730 471307001 14144395 846894316 871110525 983485696 317182456 391512102 389750905 404669084 466208522 909554109 318261442 592606989 209492281 961070831 909757813 994412163 810219641 971122394 577487973 955163441 860723448 959434930 718213053 853498027 835071845 852905130 819789030 977474764 369984504 421011651 75707925 411857654 701117673 938225545 575863520 718110868 869862694 955530960 495789608 535989736 657744884 683039871 497389109 582417141 125709615 449854996 35524658 532293546 503247530 663921725 58624540 340787776 193823419 353570654 860533186 890642229 912608982 951920724 72840138 554702563 647178856 806395497 778669116 909129908 646693356 927767166 781624072 836920342 981475423 981851709 174021585 792522054 944462895 983334062 927063523 994106871 555250729 838620954 121102457 425928874 788731140 958834747 274041723 856258370 741342697 916993515 592024888 595726715 594791106 750538598 302453147 411441504 665131116 682060054 920938393 989737200 93288342 726807178 968978477 986511402 509558077 915722721 758745558 973621915 303745014 995030214 552586603 733607751 685549145 933026610 669791738 976125657 963105514 963970474 358405543 679584827 790271017 875656838 975671182 997620440 667789163 756830546 321097614 923566580 445221600 880564560 654376562 978799153 307738591 863332055 562205470 981535059 240992310 302802672 623636969 753234984 57492449 254765048 673691593 748393060 546097931 669656730 923116130 986551805 691745884 728893764 492621759 497039941 91049048 704509810 561820414 967160965 764362664 947306772 69013874 760155680 158297568 928960014 946795114 967945834 631598862 734087600 517231232 708968339 84246522 932561716 414376682 480166488 100579892 177562689 185874612 986177547 612862976 791066290 425762958 497068229 897204197 918985698 114426977 400587266 195595544 903621392 695810180 769256389 330653482 468264518 359040647 394998015 910217318 926413401 299171586 334705301 562964002 787659908 765722721 917374259 368447947 442169512 844791155 952032542 402473091 441384309 238697147 539012255 9644715 891621305 240505030 894348665 460701392 798431220 316099860 972056458 204027290 356809265 247978890 683642871 651145302 779122702 437428809 744685549 92863598 177753090 606883375 816265965 121544943 681567682 281181719 978048329 893821263 984351298 939100253 992183600 503817594 605195134 261337023 912872298 424480854 784400238 758398928 853816829 391588792 882491396 309173340 457043309 167392436 469308484 174619828 411510744 808428188 859504963 370902182 811155654 592334211 721455730 564547835 629820810 673955807 968256947 665106104 952588888 568610215 835093474 457432443 527329939 72241039 963949135 268512272 932169622 76400427 323411558 476577685 696053200 403169228 629967154 873105420 957985554 455542018 627020663 866585099 911271054 435568714 793711764 596987023 730991527 147881966 612373299 18429671 748002602 477509240 976486168 800150918 821908939 177163767 362394835 34651455 726622425 104179882 475380384 531410685 990219785 907687402 912249948 554977098 583028176 15580496 302486187 722023829 764846604 731561926 882553074 587510494 653725425 988159786 996250770 242587126 858349317 160008004 757877943 814330723 937432683 356885257 795103573 943142874 969315784 768750931 920664299 238597981 476229268 357892687 889027367 743451252 842345650 550166598 734108792 673221686 742480054 689735691 919431575 349737534 437354199 218051927 485364954 340893057 969189365 290307047 298605356 67039586 644608949 601652425 673984362 635118910 737583701 641540897 685585317 895371626 990843451 1437646 541802118 591714256 743514035 718779165 735343297 942673359 997607418 624535136 922475003 997254111 997723485 499681880 860515706 605058886 794953389 980069949 993589943 682202820 978059406 835993053 889334985 288151193 975156808 627393649 705755725 247661360 916336904 473514902 709569982 919793406 951057803 132925938 980089360 210281562 734429776 245218963 681273984 56954728 672340032 282625844 497339369 536625491 737931923 368283779 789455599 764310540 839203261 213530025 488965300 388208792 453687760 878593399 986852467 462255250 645533173 413454184 931721439 956096105 986488855 387450812 746176272 551713452 966034241 386252604 388235838 885128167 896283077 273923737 572310224 208768462 950815359 787503125 890000352 553973125 889705799 489616021 732881857 657514416 724391703 954848842 961735307 541622082 643708205 996460563 998260049 936371732 982566205 376498227 383700773 857790972 949203437 364431641 499657069 978348664 994285983 111926043 249072027 467678957 745911613 765493204 917967136 961542029 978808780 633209335 752048817 544244969 741722378 384595032 862930461 687768238 842614793 280515211 685743957 805010804 927896059 543009927 912654266 878525342 975663883 744267426 887488771 959718006 999219995 245892283 807839883 977486620 983167435 527004946 672707716 104189791 511481362 314490289 636763708 678341516 857566186 109939811 167158702 823470393 855005310 120933947 391795242 957145829 969236419 567415501 642636425 318742422 988764257 647950897 718525213 126168387 368539798 851802575 963705706 877503425 900554576 664998367 895362658 715567479 737249797 944399539 956042834 337829572 645301958 468210328 871965472 808380984 992887393 372810264 504368113 787331487 948736964 190091432 632396340 517318808 812489131 870493110 990032026 321818999 777773063 141580844 465860891 67839348 603200001 450401330 478614598 772702832 943631635 710265540 819619724 331825628 906503652 101700910 376491287 768019651 932509428 221579107 867502603 318795940 403981495 791649902 962682597 248845577 608132030 311849744 522763692 495666915 703852149 714682173 856034168 240113531 632119257 605332698 904973466 597055759 841475603 645770608 688015619 722218118 971164355 967842438 986667750 397661658 817882814 915074294 992181333 166754055 178066150 570233960 599784566 536965946 845787256 754834370 907648823 69581284 982312269 502789349 952186511 503649215 985935654 358985881 726142216 564445788 627143226 646081364 697977223 721328936 943378396 626660747 772816112 787636784 978359868 673644875 693377098 426880262 816247985 908929858 996315813 895611980 927184056 580163296 690724980 784158591 807001305 323087816 397646296 980748523 980773038 647607638 909191324 703350991 750184062 269745254 777234330 325081923 645690170 322552835 845938679 866403520 882752609 553420021 816246276 29111089 305601590 861104641 863374818 60950493 403840071 437127250 618841743 185651644 730028867 161468360 805688346 446992681 625452193 552484981 899084692 582567927 725779566 385205483 854889080 263270433 302945841 255992827 895600278 932869871 939285711 785417943 931205118 571981897 619487213 113153483 744066546 900389058 980468832 616933922 762240917 109652950 618327348 797791986 845790390 256269619 873213488 241560479 418081478 735442696 942345345 191206136 412610632 642420922 656359320 703721915 897619213 887525790 954078413 556986038 725507276 479627478 975895070 844814799 937262208 197547445 498491837 445623947 478243491 781148770 845772813 325091157 652254262 646794982 905794901 51234142 687538510 696319559 838770549 73417428 672511440 444466443 886571686 417358127 873026097 381472273 731137661 434017745 941746420 845899640 979149340 186075233 227472284 353226307 817142852 163250277 806605876 458638222 873580031 285457871 423429773 916822417 942887990 638680298 759385242 209933695 479376120 489667737 832636155 573485646 585581755 969200201 994963879 232896791 515328262 530883737 979684883 308406407 577609707 23714561 542235762 826855666 998943020 699567196 862078250 32043023 713085365 846931023 934570627 966769370 996238012 788658466 932762147 789887366 911143428 48762184 645321864 491782606 988395814 85945463 958513600 856655463 889067109 637212474 715539745 425962286 966300223 963692682 966636058 857796825 913449001 387515056 541290196 312547393 654181037 497545155 558223711 228550494 983496424 354817308 490934096 725068351 796258254 848783345 904595053 766006558 994022384 825765513 842547659 417005746 595691651 34401620 385900291 372684862 449043513 557720950 858395960 3881086 611049402 427960584 532579772 45227488 511457849 825285178 944689637 897523078 955507470 907058735 948487529 396656777 690882179 296568347 361834431 371388766 625347320 974140807 995765977 970582383 985159713 42191499 57816919 575978894 596136067 820059412 827741989 129549285 588852834 252199266 902473978 990938324 997116544 765378066 937081029 886464987 939262475 238689847 962059532 140909170 277138722 952490510 993214911 603528765 967902793 759865329 995893273 571720639 765110998 801287431 805947049 653499179 869850627 373852644 673166366 231993059 557217975 453963583 678387011 594252753 604704347 164510374 385744404 816321631 955630474 132923044 310953464 871270198 972438209 93210996 732936167 989421464 991001171 438185292 642932000 673840344 705300848 214528004 280857952 637829602 774680333 4201816 928273477 896612546 960190287 545246056 944303941 452826153 694028932 578915690 595985343 42116862 644651082 772655755 954773551 82577551 923426057 485872590 622657508 634445054 678888216 460217337 927291827 770773058 993528340 845193125 994867210 221858892 483598008 215722259 368315677 391976089 459656801 340081812 657846351 517297683 869621984 261088819 302906646 445541578 756520654 677912056 959833672 633223450 840749601 664152301 725998931 189132947 388829908 371725623 821305502 703000230 942750427 476826640 686241020 125931504 544380731 480844886 547233303 622310599 855107534 198177725 365447390 809070497 983526548 373344734 953788336 72955389 331652131 495541021 908526489 540917387 968411433 547980317 849463176 520711272 807496853 493651378 748665778 655869691 695112482 628154171 883851086 560623927 982822191 502072466 815094115 782574889 804894693 265019617 513503202 323952780 937106416 887716315 999449905 77368059 291830444 685889976 750006968 36229447 195474078 590253183 727590069 342201858 657998120 787961269 897028720 836273914 990073463 167446385 319684959 181264944 182335534 915141063 933365287 53656743 838959296 98310245 977749760 373066171 579257621 247210019 749599402 651365567 874241435 565721321 703072213 544505595 978856242 786104604 956808931 679623022 972425140 368164178 979090290 780424840 827546584 637690281 745272565 312738945 733209592 534029917 702803377 718015645 795342072 120669857 407405401 299690138 690379667 909514174 928649796 987276578 993420092 749855188 959952223 225648019 439567223 299584263 328434911 453088456 748998557 218250128 780215066 824618839 934839396 53635119 796967941 801346567 980809818 959385361 969520077 530458348 853563952 659158264 879988228 969552261 995146077 667507468 893255682 845123281 873849524 491288394 979150290 462297001 778205195 165450387 273394155 552131489 829114777 460916563 484740511 494870595 582074460 344501037 684721616 158014139 605335812 38942040 856414876 108990625 951305342 826905050 850415489 884336672 954448223 959121515 961741328 106503877 279013587 258295242 910149785 824781141 869509750 278700779 850582880 203898272 231051383 929555074 939238208 523349581 990317383 56321437 997095995 99455986 230990105 340352192 948991670 131550200 242814658 54338879 944854078 697321826 926643059 509008274 552147801 76245170 597200804 550221638 611481749 300578701 901986814 102075734 725045671 612289358 704897393 85449861 537830235 634724039 925607950 284306536 899919423 418417259 868072041 418950457 969808185 218274289 536123662 887506772 904977274 281542737 952398302 645889190 804405899 255360647 712365302 776404144 903489600 999779064 999970305 70959453 806858036 916947972 985178176 681150522 944820748 904615363 980285775 34422916 326782140 735038261 841506236 924849762 964700702 754762238 907934650 90708624 264622028 720063413 785525073 652938114 934258475 307179608 336937620 780137683 850217222 212308545 741176312 489610117 939710414 277472384 690303803 679452927 710971556 688327717 864907744 267541661 459752620 855851525 959214482 374773841 723679651 843823932 875025975 134535227 279707661 952667240 967425193 275703700 299127349 660897728 976901485 946516494 999349327 201381623 571898440 546616899 988690405 361910312 964733320 493545522 672525806 973428464 992770307 945935224 988359687 853752939 885826643 631873013 842409705 886895435 931738010 818261109 855741597 537563381 608665662 82705768 225260473 399020668 530850120 120354308 881293526 507397910 860707272 702675801 921336160 710521494 916365825 534923872 813785585 993355285 994274545 565951154 780787163 905257757 968633271 575956289 823072387 300582373 346264677 344970714 755025414 303839613 711346759 271259701 792942219 373062791 452889330 786806210 826918394 297849263 364879839 486705575 508664322 115570817 372102004 682915848 961970965 341407594 548006690 151916335 373250918 152138902 241924048 925779117 984251622 146061341 955905745 517789373 891228186 338234345 509099092 159055416 760473332 638009423 846793191 752337510 895304212 276848179 440741352 507838385 684045977 842135348 893867056 123112531 645410333 304087226 345953467 873726309 988670580 728201431 927704210 584379190 904923538 424656673 475625521 38709160 924540355 25685777 718662789 93009365 354232065 848156623 909448969 768040155 818752521 38886480 873754760 130808397 923561148 704061102 917026508 495252711 617231214 485097013 809544823 546416967 939747870 720235247 751700538 680559831 741311531 246042029 633436259 753762043 768846551 285379467 779046210 586574412 947466829 741099562 782330214 178528269 429534107 130589273 781564937 213440014 621576736 377261086 414893658 217015743 359324987 427794936 475965426 402748863 588911437 338945430 595818271 938815441 984006637 595419847 962795317 356383240 450107197 851684448 974609768 800411926 820915603 159183579 316088983 456296092 569418423 144412375 768734039 576015582 759481053 888005418 898841009 663941079 834095856 173692990 460680500 294595140 848127455 151618193 780819439 868238714 935747704 74399881 930137001 341566524 582855305 62051333 732284043 797253406 950035711 502639127 964535412 636952848 902637567 818989309 892618564 553341326 811261377 22651811 166761180 537641680 984910695 370780149 657965218 657304847 825181934 567464674 666941615 187351235 331304998 579910661 952802688 298619791 752768628 194338543 333674235 225856219 448282309 20041457 613930252 219066726 636626560 585580559 741772363 865555510 931374319 671816933 721011976 655594748 894132717 670213409 817460063 219571007 604700908 689085423 753395244 539833097 770485657 998135323 998932165 8157345 381555329 396503178 509297337 456989131 642341736 659496747 982189000 114743499 476262287 843654565 863768422 401957372 836699932 703444082 857135256 963322089 976764050 688756321 904997740 612312656 613117918 827464224 876105866 514818454 795829803 858806528 877520333 537990939 717088789 5804654 864885822 785185920 966038281 598497473 712617550 65675649 400955600 617541004 912643325 667892181 685022540 927085753 975918552 870628175 928014316 84235304 775269791 451411703 943182823 195123334 289579760 941131376 994304945 71999200 829520441 539552617 777340737 805734029 854130791 507740506 919413940 74600398 510439533 570864102 742721445 147581989 551962233 424242057 877675862 574371810 770048871 711862314 745030693 6279951 679952004 111270907 370088750 623958139 648889554 169068570 395127478 813456292 894511208 301074391 943543952 524978730 783740421 819155816 979213171 736676239 982091366 346028287 397968913 261914005 858709401 266321906 695719466 93388458 640280148 325250386 831400861 932962394 980058371 248938439 484757899 630651435 713230378 1387750 984816106 605098321 968802488 863401071 892469967 923093317 952818506 720742854 866573568 470797536 612049275 348221070 370980609 913492089 936607516 158341378 587556885 946237547 992214845 179134160 512290575 723115900 771953511 46172509 371470499 65446720 610691260 885163296 951567207 263570928 837694595 187853270 483120690 706603307 714168271 74510232 790162152 318273325 849996138 126202576 155276559 301029801 638598362 265143912 702223114 37038598 354994107 409363291 542494060 127866923 732246429 516326558 976967391 894770303 918557236 938547974 992206613 155224051 519175184 352576531 464746990 39804014 633922000 189063561 806922544 541960366 700458890 335840896 774056630 65427895 430234598 894765298 976855857 452258613 646998316 986441432 998154969 658529846 880977375 818990379 835409863 45338631 797498817 517049839 719735333 855801575 988861726 894497111 946239144 556773187 579942522 968469641 998783474 659964331 821413060 466602861 650301766 89851901 983112331 682506966 872898531 16918712 887643419 771768252 905943611 726759598 851469171 569974849 845276708 421720460 793012078 429056066 986613839 76034746 296554591 271485318 560389173 188414744 472997058 390159161 963806407 947754447 964573066 911309227 938578399 556831394 699472954 579674443 908254326 240914146 590323788 250946903 841092840 451193496 586762146 609374785 896759485 116060196 752812405 692460800 819366389 611419147 725246730 693693366 948852009 715853969 875165306 227121121 621256243 488637979 949093396 59768195 318763431 920029589 986607287 952708731 970125318 270627793 908406512 322633301 930140986 383214288 579523212 691214915 991592393 545271169 645840943 800198292 925139399 220606186 876622808 149007535 704725485 632673940 934371046 304187267 770486948 284949212 972782217 325280206 663887954 628440297 920110066 272592 635687614 728296792 987195099 275140821 805720321 789338252 966222393 863218220 938564062 343456281 407394782 426367708 926147994 25562355 270659105 682767677 962242924 498484934 541515190 131384232 146883260 912252836 973099550 850725633 930353733 30266404 863042843 104237215 961328528 346738993 823773629 753510718 856811113 688011770 709632382 753818975 905136202 291942206 440005657 880148013 895499069 946499765 953440604 743348961 929241438 612630721 747240649 381532286 661371586 39380319 101665549 625836325 832419419 791291389 903659769 131337820 878258622 144711048 649772221 577977286 709872870 281087604 542790121 539890716 788985766 448315778 898148172 447069136 613072061 516639836 566731387 970414668 972451589 992558427 999557972 540412206 933629433 811057120 833323324 208209413 971181314 638167619 837680748 712281976 987646127 560394632 941296262 102270609 851569867 592204846 726013339 385500572 455962780 154390426 955335622 631864019 746173683 475528665 621550502 754141779 930040900 340977059 703422951 962463005 980911903 713574953 744058286 837642231 962324922 609439407 664328393 224668711 262024854 386750666 485779505 269624550 559039239 32938536 468235780 343042112 889906373 641708681 911121049 379918451 886266543 317671277 354886834 28330571 879641587 10337048 869861339 991822633 999165105 61361717 742201951 104450949 918256925 163522795 364064281 739142401 744563038 245846986 408569908 139082671 470053506 540539150 681142084 186273248 195136760 622728812 994748689 447919620 535460706 5152093 92291589 341475822 565174525 313163371 711153721 458117914 635199660 175037110 748129648 218369789 304211290 250391165 733737117 779720239 866070124 523993935 973337885 464793134 785406617 70466661 432971897 837844538 962481389 391629344 823504488 599904537 984367461 58028325 627412795 778856776 894482950 351666994 492110169 585739952 962747383 67445646 963283299 211026275 959905178 766505628 849605325 165672634 529719961 574872879 703685056 586167650 852329433 600392983 671870883 946720443 946947902 931349014 957989693 206187469 313918413 463056185 576425364 131386680 609521529 334723343 964546662 131229179 626131249 884488221 984634342 215299095 385996668 742993924 814839974 277272195 592564105 195178650 946873422 495175160 931422001 451892798 843329012 149280778 645234914 219154269 298727338 239628705 577421665 130167581 396865044 643224673 899245397 285062403 347594478 825715560 907907479 102371885 783278298 775586073 862259831 591148287 706366611 750120395 898082868 233631604 408062551 601950133 995338538 778545284 962221610 680680672 749352887 205650848 253131887 734720202 991164650 787064661 979680502 44773947 194642393 535710574 605649203 999260195 999406193 159609844 320542337 611400629 951659242 891265079 983459831 447212734 760971731 950347307 982762467 434521870 919978986 858203007 989610289 775923712 840048824 257382035 338738888 35216775 448532454 23074407 97554286 202184886 696003766 670438328 994630732 192478766 709309399 330334445 942393212 989160026 993631902 496591354 864997810 670436458 937821802 870298312 969552667 552990504 865328558 44297833 147815531 330009709 495784177 731368921 916298523 453813659 778196970 431075916 860657181 591806896 675061801 343828197 535832651 480953481 790289125 591125917 845395360 390838739 884102346 62479484 835814934 393529909 410836205 710389891 791498438 217504495 830047835 167348209 397897249 818818581 893183139 528888455 699190644 827067649 997239847 65826699 861392194 642775636 764492533 91120331 517286925 307513535 404746334 799847057 882942973 4918824 510664129 528843805 758962149 257193839 393466570 704588870 952141056 938057300 941082231 382136629 956971590 146906034 336188167 980275628 996892783 433310827 828710664 985262312 994443187 926295510 973805056 301320133 912229243 746371008 904499810 248679473 446473420 897559375 981295412 59342658 604039565 323225638 350184090 101751908 503328924 918211939 944229271 927686698 952815741 792148804 890969032 81351831 390019719 575751478 617076847 339863730 507948334 233556100 472323197 973787884 985533412 964770836 969636889 191654896 943951213 138161956 916646516 717869953 772669557 729514704 968483079 30194498 961432344 128772469 498109240 857317894 960529660 292119027 567949382 479460943 533332743 876013493 954090506 541902731 748669792 740258727 910416711 496836805 510197739 406844145 789339780 678458066 754363955 131860629 476882815 100733578 717652952 313521689 762478776 826550127 840295358 562612669 970392973 446553420 668818008 474941642 508960148 350321872 873878335 121893227 946141167 994895884 995922612 137280585 238898091 800728866 812216388 292221001 927853780 629982502 936746761 418403660 554614783 355346812 427689156 985930776 996162476 641864256 804419711 60668537 277743119 340467398 657616776 733531120 894921800 652597650 689182300 665810904 751680328 685190117 824786077 901944872 991828345 426512077 793918992 941488930 982772081 166832570 700362846 590147150 636936506 650711984 757734344 912005675 925977371 564211512 749615487 8904467 569305845 903872296 988918848 156216000 765997421 76953656 643484352 171437187 530732183 50579472 373854390 901641036 936983946 760607763 835728094 218271367 964264699 16803960 207114117 895050728 934230198 305420909 757807172 366544512 740057550 100361641 574441755 183727701 864475872 733797782 971215968 415542985 807372982 366168265 375878925 995499870 999210866 207497632 269164829 139603007 639838717 966095321 995168123 686000444 818960180 467369501 915845500 477844344 857097213 735047203 981776468 426046686 766903778 844339740 990295115 439548789 882108900 54177606 233708517 809403600 875967943 220304857 401121101 46355578 910573976 930130685 992295980 911386085 949897619 695160954 878785003 103977405 197694033 930931951 954869322 659305673 921984100 55854351 653258543 364593458 854104364 976058175 997647650 725264849 840774811 843142029 864420902 504312420 947258120 330006313 650070052 694126886 988964943 293041223 659018676 610672294 895808799 412119955 933933492 64345210 963324716 141167397 381141697 908074408 945022514 586949812 587514524 132489073 713904200 902547235 920212396 971111460 983680340 760987500 962154449 947371501 972980977 516411878 784899890 199786089 826545375 32858578 413407639 444573701 824173623 589398119 798921420 600249884 815467351 554076909 919370640 831738718 867967234 422203282 432007125 738972899 993938621 97361072 326308164 501408025 726036151 444471912 901482706 139694570 617674231 56502783 575970730 867723987 971817343 876411372 939988949 948823915 970416020 966206461 967315075 755747451 830144217 740613413 935997405 802652664 981877617 91366102 267783397 118628400 722310770 928267453 991015700 365350098 687052322 326186928 744758989 37814970 76632301 229581662 476414046 609958120 938533856 279368886 682806013 592793291 940256376 772336548 881770664 483758085 701422100 296146716 746628882 75713207 488051220 706145685 915094999 808848926 816933992 734504007 747420085 63010166 493962346 784020256 811493859 459557869 807730913 933709277 981830170 405565079 435027824 260662153 426451111 231720984 780325661 770437931 922216487 881639272 905912696 159236387 427194920 762097882 972636257 958731101 999102060 291694783 755713104 279157469 629474286 455654957 696695995 797952761 959848633 782878472 861580430 693023468 971993330 852983851 876990937 622074928 633782338 311083705 452517855 563470187 977791861 864494062 894349599 186400020 484894956 252642825 330420235 967916355 984873143 656323982 937289599 985700052 991945877 280041927 519476186 26365741 235508360 726267099 763772933 935325264 966852756 142175492 572920917 606212189 701907739 794738357 977307610 382133800 862216195 746995443 971876290 609407603 914804281 896117884 919269489 817204435 851684078 66074930 833429434 230859065 976064120 527479084 709166119 557447189 629849487 320850967 432072358 629606744 669272649 29348352 838158090 873088942 963746773 380998823 974170246 846256643 953121130 862935694 875356640 407195688 667236989 85671627 247220250 104973798 944281158 904491434 984818596 444920189 861234438 27062232 268337879 709422757 844418249 464923204 998771862 544205597 875292981 286229120 683289565 158172639 712246081 223297581 943838127 41006161 364168554 876267935 994161487 478267432 499344201 99386684 152932919 266579708 700809817 152933467 772743408 698358734 831660572 892300947 962209081 395865250 726989890 918708966 959032770 424056110 991345983 164151912 392228572 501035139 512332550 741694311 795591775 925890232 964831163 163762843 968177502 137898755 397218456 457343096 755354717 859137910 961816033 154170379 209691998 799980592 966835493 569825480 892287762 344453367 883274715 194427373 527844048 610255299 678879121 999704185 999949850 719379730 982833528 683627425 879427379 64409412 303563701 713640090 773770331 159728768 396091286 910179203 967054156 617817305 752202365 496638231 796908863 195965744 844659633 440849408 954677302 317388687 732879634 802933753 891745605 267542469 517935573 174811634 204274564 197876965 874800548 261068870 367170702 141157603 932531570 341001632 684629241 870845944 955962726 582084910 754835255 44720910 120194147 714489816 771129202 570458942 631436732 989868662 997141448 676710735 722229492 359423115 372828002 803470881 815021025 941039331 970376225 709776178 976449642 209150085 669820837 307132847 510814093 297242609 358652129 702084456 812595932 563162935 968889769 620435397 676413997 756657831 786031368 699008698 813191178 735741078 816287551 839146402 992607878 688523120 913586017 96995390 814914050 252640447 267777512 444860633 521353663 521130354 768993956 334587201 532147196 544458439 671866710 149667257 521606006 931376731 971237512 909628151 910176609 611170963 699086682 993936832 994504201 506552662 980417039 571398867 720287912 684040848 924405544 932643100 955260134 912431790 920122982 378455434 826847825 418126673 824281344 124290508 636386007 124172351 665395098 102324316 962060449 353410214 709301488 373253491 503143145 471500208 824941731 519154051 710380799 510730884 881613890 894112517 929409103 347712047 596982122 844654535 873237946 160398771 460028526 326910198 634408108 289139833 487305231 584446332 609448189 425663715 649060219 203360035 277249947 278318232 742216882 520367386 893895606 185832776 463633923 23265844 93332547 715293114 992095769 859719228 924476051 115458985 519203285 66851527 99814041 840300953 844482267 647269600 653479062 425529844 960575445 567733133 665784060 743421923 923556715 256671840 293533945 281721912 520607340 759070780 768592855 840975057 960540675 778440255 815924771 184306668 784899115 778601350 844096801 928788367 995913499 336982782 388073029 239686891 838315911 211253749 521335897 958593967 963350412 833262826 848762094 127646967 347906750 526422287 768777105 230854075 845496831 416321551 879439192 957620330 965366561 707278464 765835165 559578203 604397717 839141132 916833428 488866937 878762584 638224500 995985028 473555978 698621840 796853919 809766951 567592396 879165862 963038013 968888440 44870796 681731357 158122042 884765023 99468489 507699619 337406019 545243709 313793973 960133024 819356039 851643463 94201881 628268430 366264121 598329938 387051175 893210118 197075772 713360708 784086609 906525700 902863386 907225294 580264914 582405660 697312351 927604058 568309309 801116985 511329843 576971171 944208584 993367702 221060193 551619728 618510267 802111292 121303784 220317776 230315745 414673564 682310016 815764669 673783398 861192481 956429289 963642557 741044877 779737944 809163239 849981928 116764805 384177533 366390668 644938770 709527411 857339371 887282104 891355012 563050983 622627261 252590224 946464875 571568392 886326239 845220742 873358846 632663539 697692137 158658637 901594582 649988793 674734810 494814318 918068719 915153485 964233771 349839231 540463074 665765487 812682671 52171705 372667233 796166820 868148844 166121677 835222093 872618757 928097051 786457465 792764222 598998147 821823363 268010058 523648857 610434935 821271288 285031431 721981865 334280706 352702336 581444796 697786203 462086489 829388323 885254364 891089738 588538007 841537866 849383051 945692689 663210748 757274026 105536119 316889774 915137454 966571850 676032779 749649125 212959296 347625564 409701743 802827672 555629868 744997254 522957444 873228015 826806253 884756302 558497582 747236680 461266434 699560796 544859772 741690374 91069234 882774991 554189555 911810931 421538155 598230984 191004778 780515105 90104990 864231978 965434077 965680060 157677302 500938297 205940922 275195193 183832681 394510717 668080583 751469807 461230239 964240995 361240638 378089305 196200196 827912167 927603769 978269545 833636073 994605665 882278279 939218877 759638712 954554393 838333906 956568676 308064241 799911221 185402420 375274315 137333268 494219336 895760816 981722186 476074418 897691399 115853983 313785772 291828714 765513684 875762182 919729473 891869146 944499513 40527360 860823331 157549151 336822598 471780962 908060459 151055679 492358418 267628875 528527474 467475199 484797407 773066528 917382003 749891549 768546157 85492373 828071363 389962148 458835663 896244367 954042264 141389974 299361434 238876969 241166354 289366252 742688965 291545696 494967732 898610128 928559799 785799952 883182706 392510703 887846763 56139612 422152408 190531869 763318795 247898235 978983834 597497446 905191476 440308225 879171901 447672503 680685180 460609501 983468937 859913666 881941123 485360801 995307167 83567128 246652895 360681432 711390082 771089784 833780049 660658614 877776551 750227678 865876698 34298900 488787669 16444890 645372346 912656787 923828076 2699266 945024327 427670668 432360757 778018374 943208903 744296922 802415319 881885672 902628372 346724391 901992913 299880177 461920210 246388235 855129389 187193334 507944380 792027718 986646015 779242835 844110500 80379742 480031259 793197183 921102437 299392388 419011903 74598136 229119688 653517913 942252173 58875715 348235662 178536060 357025556 640862227 897239314 606514317 727405762 725107313 792475352 450769141 461753102 849479413 922821270 529155695 934880759 99048194 859857618 244540366 324062613 248612776 687172385 779117033 984119986 881325163 984445112 816791839 892863080 704788888 718108786 996927168 998163815 691972906 971558298 918151837 961362346 914387018 946597219 779173932 949097068 130655576 541305410 79207149 281363448 792964294 907087919 168895026 621076846 825008129 918100173 498983621 546058316 851295739 984948034 702450648 974306974 690260968 871234209 980086221 987817179 412760998 677827781 331119611 709181686 733598719 907738116 748056995 841165202 621148383 978308177 596516050 939853069 211148927 537689812 257871102 399816620 744035292 872486891 252320759 418251533 831992716 973937340 692547264 988066858 342226197 608994869 466933404 779536821 273261840 458772404 427314396 983192075 600828860 887907304 921499541 934810501 865586470 962903954 227056687 438594819 420992884 699946068 392108347 775675073 177663111 978182025 243713762 812495117 519399686 905897513 979871423 997645751 244359070 752587221 885585361 915546970 957898399 992433407 669955757 886754488 30000762 512599469 248940456 573922218 353526655 707949134 939217036 947217546 69642202 773141121 13788604 801216684 197695647 503417712 238140402 853573070 177650540 420414581 546620989 882221455 673432873 698898916 351098611 697714325 483409785 939542294 369024143 600690885 104456464 741569076 786399184 872965762 798728123 821368638 679491976 978127646 135977541 174788770 599861621 883091948 384560263 458981294 285363605 633834923 28209369 602493998 560371062 725123104 458571995 538421686 270120734 273103425 472445065 535112182 174871759 844102785 364824563 867446300 223018953 679426286 436312269 608092188 800958976 916060186 518995631 607725821 576742214 627843099 428469869 778038378 258781311 555728507 347135010 607944645 125228451 662172788 802013644 826248521 152048223 208713523 837273984 890559906 574279915 846232771 148390860 972634256 152563747 270678993 182092776 478510947 988784817 991692895 149156518 521105815 419794431 948433068 285631352 475451785 654779484 937932799 536665642 844361561 586757064 633633404 398086571 485845256 531654553 748937353 767689634 921887325 348905973 382137843 820520954 982947321 972469575 983624887 498130034 793664434 667329316 707145472 640158971 650846629 694772953 715418597 629117870 783411584 289954935 727253454 109872657 956882895 124410047 752644797 768550733 893474320 585852768 618009934 208171160 224885207 671757118 763013972 559733539 979780494 717458063 967454412 273328198 474140572 700979454 998474992 687260436 726316993 556586868 800531049 830003293 902219149 131385473 227284201 879384153 901727856 684432153 768266259 150862839 188225804 897917856 945846401 83547882 771207639 49558834 490372088 361234133 699575568 847066990 880490538 441119014 604576346 500340276 643720857 835206527 889804093 232339182 957737699 79123772 667407181 690875916 754691972 970313689 996209675 621003448 832167395 601904283 662713010 19726782 980895575 273478542 653365051 664905830 962866297 60745598 82539678 985637508 987387264 894963066 912826202 867782704 968792519 583682607 755477913 792594393 821832179 741518368 835253069 718284236 830996371 936327477 943115044 214798487 992643616 858923481 958462674 713145436 726303371 943942117 965183439 783912819 865142004 346086939 766913037 664269022 874559478 61039197 893485600 883112013 996946678 302001324 502872482 575150642 654578144 780238023 963712850 972393365 985403504 377970516 666244588 603704226 825175674 233338932 671356724 649280290 737043321 614990 418465534 587962649 650654352 681394003 864282585 757232732 958986591 242355355 683402168 688339476 754283051 757542922 971277807 751344790 913399273 831861803 942126584 611711964 755862161 358505018 553209822 896912890 972654340 834350239 856619156 673021267 958475932 122840608 364951932 404486587 657738634 780242925 786805051 602433751 732867603 151310969 645017671 999024519 999755445 644135271 695436755 698809820 964490331 88874681 549712413 272597844 966798755 563580366 905814825 376986208 789756323 140722887 929558130 36746245 721603021 279674569 992417439 218830281 422436737 443248451 843890047 292820291 671852806 6566072 844536105 58557259 300995058 898594241 952808588 305686040 386118468 758764058 779436116 878993355 938973119 494676488 578419233 779709902 831791477 641264307 788950699 656124079 845371240 409205860 724324496 522878110 667883602 85175132 961962273 41044475 210644128 703737570 860405623 433081206 453131852 806985911 998023985 677754074 912083025 450667570 863848262 382642674 434087453 125549194 415729713 658448631 691637336 644496466 893110028 957802367 982933463 283320575 607338156 127677547 824381418 338725209 510930955 891446348 967330986 683600805 907630903 447475154 862455350 761918521 790522596 390863966 405911462 23587847 468497725 579816219 673533345 537289710 884493836 841399842 876511402 196663161 634197928 622638389 884797820 161026393 725951545 553944594 973523388 279741809 383800016 935203844 954221885 658349501 793304313 894775403 937301987 252394642 573590106 533281026 637683423 575011345 716550644 331610239 371742619 574756931 941491150 118434256 397614720 657281958 987900322 498340904 765286448 664871704 752115298 785221912 909963820 93243903 120493032 863379295 926404027 380944941 414776625 709050814 931645133 792228966 981532358 370216784 495836750 608219772 686449481 302977989 769169696 399643747 655336303 264973072 483589784 631762966 664405002 660961174 780798774 133166855 896683650 335315273 753747675 195486131 740060201 510194380 715033617 290260732 338868934 106620531 109110704 827158062 847359012 993889667 996477342 625023450 872562961 121602247 919589029 807104099 852700717 330426543 657830827 722430370 987574284 952833391 991175518 241190937 873000971 133260104 604409643 535023939 577330406 11947478 434391125 387475171 805903455 72338301 277914792 14734906 49536652 276238339 691541747 63835316 674094820 438793416 713634283 302056468 814892355 688821643 917989708 52169818 204825626 832739787 874067159 413479506 626908808 907309878 954096925 632998778 852586846 209130167 369656904 837601239 973464899 418960445 859232300 558528836 594936240 934836820 955056508 386429853 620711877 27320110 662875898 457625526 575005416 336291377 999825230 888039213 967354114 998412925 999426925 541675388 826519874 80102724 821436404 22102805 691860704 371867671 813798694 515583312 884585161 832768398 957631418 458312774 680814429 128713910 901497287 822513723 881243028 257326640 995417806 622661024 774826056 275213058 910997616 606024330 858897179 638860919 760737987 558495521 848895267 114616642 567973657 229864975 926390397 496739322 844801253 63339692 988216537 941198933 980800893 885033575 928230310 268606581 318941237 403574926 732855566 413057 631761263 640945310 905047939 868358822 992117130 141072062 378713748 676645088 921915434 355501949 431889330 610797101 964883086 247600700 855725943 382318096 509906738 767106901 784190865 610938827 841816302 973545221 991770090 137796436 930833359 883193147 887425654 914709206 920206533 683603762 988708370 800188410 901217028 305430843 364279011 750196102 853237254 55236405 78052793 88887441 558389695 814449369 830676151 62817424 854503797 921856488 982748259 915763144 976753396 632551761 812575594 388808028 665712120 534377683 686968117 536024438 987343622 801477420 930155567 615477236 756497658 993099807 997776739 111460533 187066057 949357678 985770930 548767983 825403790 735647241 754481935 851726379 867506463 246354741 267190704 307948832 917898587 374718249 898927271 712821557 987220773 657864339 956959088 24264715 109574930 3082423 779988230 275334295 541249743 594528130 683364065 683972997 729622698 297243820 801336546 173019237 981940380 326023269 853663796 928191259 991771665 900886855 962732429 611047048 984925521 966606701 986108846 836154790 873802499 317290488 477824432 544899181 664134782 310532259 915780150 586686971 974560202 296017901 534153597 758016789 778478235 685831974 925684767 662201918 970602364 744043551 850745184 556017251 685381062 109440229 209902238 967718399 986540911 869294093 897061948 492595060 909418670 838591610 868444141 589603813 665662269 531990438 846827363 669718685 897409803 814617906 900934983 984402841 987519371 57820054 684593105 562917072 872419576 702077009 861391030 134258103 827219536 510007375 787714508 960383077 967187584 717135364 935850289 265589610 497196189 725131464 949046066 720880245 812518599 74763764 298389460 416479874 601352496 287914148 842087118 278164090 331431832 569591741 824733555 800238867 958018014 895301370 975359473 261736565 604818258 449659041 827501477 726430609 785738353 567404638 681156267 493429063 508620092 908515462 918964315 206654062 543192091 916291677 980562706 901434809 950269796 251590666 511741157 396675793 878185693 84832788 511031223 305126874 772825449 54239782 827168067 515571894 711658428 777737828 834000738 513160649 875329666 666607593 975167492 798039760 862023255 219113779 460511360 982587533 994709060 660605441 852542490 505557745 950101155 316234963 763493329 248542924 894015556 267762593 634137000 651555765 724594199 826877531 970789229 970101919 973817190 169105401 973518007 698565256 828174868 523818876 845801701 594496661 827416347 809579501 849537724 416195955 439248553 97965186 312572543 484170836 610482674 865906983 899116265 131228468 775168728 794100516 809969532 36722303 493867579 696657152 780173609 295659310 829583887 181323537 707742559 369815856 438169284 303712966 604047521 114207247 695550089 774983991 963354866 755785740 901205018 620388685 999077888 537773173 995624077 945161426 967280515 833559224 926475431 401912510 597334307 213883199 728288427 81442756 768646753 382020577 487999879 809583372 821517892 326770725 624073043 36921207 730312242 252837273 461289486 337187851 849897413 75778966 807391661 422005192 616564531 649487831 708050294 131091062 747061789 20378733 240062281 273621567 365702144 347779300 721482619 436494692 830705719 375931096 829537376 516448697 597474806 999582424 999899053 381539084 625358700 935343434 947297930 926574563 934756479 943156275 949630496 893484379 946903304 696535328 789745387 166991878 615625472 790935756 926597522 272990662 710345550 497968417 498670632 363221708 832735667 507991151 879262851 197551338 294067239 831109458 844230099 259959799 586661695 63269862 391405001 942131852 943185198 975331228 987358571 92987882 151202384 175832330 864564150 632786603 758579332 705370747 901869523 18884649 504461534 275812468 629282465 643041125 901301219 96738442 994598653 424292649 846941919 102390253 338796610 845129748 993207664 122846317 340393543 475269806 898785214 475642903 839034541 654354891 954497619 255430919 948293660 487336196 547601294 375382032 842301338 24549632 429718810 16502928 245724293 319787319 831362631 929966501 991110728 616436917 925883959 191245315 289835985 130836489 906951783 208241474 484735857 274891813 420964934 785632448 999728070 277565923 861870263 814217476 902550704 289644423 801904506 202396049 536252773 261605379 527212683 450487084 664088655 344432369 843711632 32803557 378818511 351255390 537555937 781221763 810437232 793490724 832986755 522733782 681527242 62315044 205582404 980868600 996174665 667815295 881874530 181113975 227582263 830800184 934409199 60911182 510697084 583436429 724065289 200892362 318256133 833716716 894309806 265826521 629613497 679650361 829488783 558451054 927930345 623483525 838059628 251307045 952494817 253476332 860101008 181001127 560382268 341521925 724880990 731275248 741548081 480980493 895894963 807056569 999248147 227342969 450170325 382578082 586462853 95430462 848394694 537602811 789311947 187797278 797467376 964517290 982682046 639303963 988213948 12760285 983574804 633372141 975903410 840401081 955384012 174727166 865763247 311723493 817707691 554408683 964667968 272757519 295872454 807949639 858787439 135880452 852288065 138243034 277256840 457141414 820322951 298966525 779438004 820935904 831227483 608327458 674700994 903112034 941215445 164502375 496359340 930775088 954588468 611305679 708185966 165914809 578404372 917205875 920242286 484677596 856038479 599769252 767253738 939670034 946548729 872938384 978925362 241027924 313440848 214099198 341561697 48466056 93592557 305872790 639845180 156805193 717622680 913674409 915096749 828760572 884162587 38679469 167774610 797915600 947916034 513209272 840544110 562493994 567190644 467406945 862431353 573801816 933096712 17332714 603683301 306819027 643337385 909279405 998801966 725709858 857303805 748764559 925030777 913822125 938939704 811875730 862036582 50644945 322405833 448378926 536885932 498598976 854962295 27167889 490515859 876588902 943770555 97348492 456364637 23456075 784862444 291402419 530931959 183172700 662308348 779489574 885121131 531574489 867088321 486632393 839523155 483121325 737223302 708854376 975934576 616485246 863540162 51034022 990925845 149693711 493376711 843648239 847326474 103574248 960599256 878072591 937818071 668971782 972882741 482607508 770388921 396772386 601879731 892439388 901976663 372139053 562051257 729628655 863774874 490923804 981850744 173473807 473573265 490690328 745008093 254870763 745849041 894687793 955711387 164116103 871820083 268018618 483816295 887470010 897632063 65793206 97491143 746282594 833592333 97375471 272598001 325927784 603339585 638301057 683574015 510864200 749253110 337080952 660402466 547354232 704996951 693764421 978705850 748783358 834804224 335670837 376915997 108209247 636462775 716040117 838026047 139877023 375982873 107762773 661419615 539942576 701469989 815411422 892948288 252131087 445217457 468032672 707012529 808567455 853217798 519710482 930249791 952032454 953141715 236503467 618474776 995367657 995519241 864006871 912896823 536426357 792077026 772773823 776516329 488681538 952793563 339580049 541247310 932303861 940709649 147732680 692707628 671521119 985119336 150500446 698882115 209004463 976642042 499922178 548320852 75260515 921202122 430348448 988069004 899783982 990997902 834229736 971211496 753850060 820197990 758540792 816306825 318617741 907830708 205114342 693592535 5520767 372490782 228434437 700141025 321135249 396651425 777180516 823739181 111919047 312459146 297931406 515494861 767314458 949375862 779206135 805025706 644761894 856794853 594210583 893396063 357645927 437416321 676232753 720172948 479694956 830008537 137346495 888575053 416798829 954497953 649499269 894926377 727611430 864649472 34301193 41861707 482464796 948350152 47396170 268244123 33253238 491131247 263764322 488221042 913620460 942247945 352539823 500598747 765305376 833375155 398555314 931614969 741676365 917426334 619876894 796927706 932114773 934843441 198312784 770802622 960133932 999816925 338898213 772408367 837418578 954320285 426706167 999756758 959391148 965305855 861302874 906782255 120860073 335916182 115612777 899409931 79610082 702499653 937766845 973240756 365249510 417436624 21760094 881649948 978507216 996982110 992595319 994029354 948812169 975813112 622427396 801540941 687717347 846376240 445837603 683007332 702333212 994342978 585614562 903281096 74371622 754223979 478307731 662637146 591256967 694046829 302993715 557647649 630787715 956897429 291524821 683175569 489067187 604918903 659237267 982861904 156089940 639837167 192353007 337617291 923330933 928165283 136079388 178871808 71299034 147335557 607647805 731751036 841288503 957068150 641823307 681336874 863670466 899213832 905849471 922763271 142035022 378687198 492580937 801782154 546637334 984373126 142313451 356216015 432950776 452184905 350786362 843420094 927061449 969414019 574800641 717225909 987396395 999818441 885588786 945106439 961426453 994900321 420320728 808272929 985074756 993831897 735639101 911381184 576355147 717913884 860164564 907679356 345351327 948896936 878477939 973148860 428213136 567940817 218146723 654632830 93040471 278738614 943110798 999096840 13841127 968876177 758652043 947110882 837797003 992931034 812796000 817737914 826414288 955717274 473972401 817875854 257852951 342607788 513525526 817680361 436493174 746095398 901002739 942808505 779791456 878028220 389498260 597637115 820437636 930274290 565199710 709573594 683278367 986736302 15800408 279757727 986682788 990809887 334288032 811370885 213782839 250244691 857510754 954133174 36452501 445831473 309768091 461618476 133574396 181686722 633304305 672431289 671082697 831299938 869168981 912374306 402456936 413644747 30221420 445196229 327623599 581133717 271742834 516172872 876866943 889525542 211597577 784231254 954900760 990345903 259722849 372703620 3617762 420022249 431363385 997293112 11475683 870682350 193499284 763743410 500505404 926218113 854489638 946414757 975794040 997379198 393488049 427625701 387482260 448042977 9692459 956108766 348202106 994816878 864091588 950803874 963703050 986546046 618870170 710671632 719533582 794344641 109403923 988763377 350637479 761500099 427925427 464428852 337797547 612442994 370352666 787741790 847436284 906789507 856450086 921796088 234824823 288354831 384249124 492562147 623208528 750108490 395897453 604259754 615458857 822415027 919288313 973157906 176129753 833503287 714175861 800644057 698834748 785776950 526671489 529357523 991597462 995298459 853226267 962696194 476754493 532039273 178359088 582994974 659645604 697864080 30502246 668762453 83156842 647559070 711940070 950194083 34259115 379625116 139189950 215445692 763039281 891925062 382313750 810900265 673015607 846363382 24623018 277565016 343182996 705638674 282483604 863190538 529491543 837423999 561339829 613890644 81894912 987069991 161190047 863164347 728090739 806152550 899080953 931718797 520478541 642790740 356125781 926450128 870890183 947131678 730988532 768019124 813291954 946838207 675216619 975539055 904780285 969609651 812594010 882038388 832707760 860089545 639378351 833994675 119508468 816531878 640093642 850882038 437617693 519105760 893653752 921412315 228594155 975686944 72488623 123586843 979234611 984278210 851247090 865786902 306901592 631804833 2657931 169715273 773522661 914083489 342207475 647491329 788399394 828474107 629258677 983334386 852294386 909924327 717400798 747719800 513249502 898090016 437682932 788912558 882306940 946654736 899625920 935366569 65238393 807951946 677654332 760759898 432119137 590462362 509871227 928919314 733548820 945426655 366291005 451718800 927457909 941745390 854299806 861190107 822517437 964166941 484561305 495717765 983109313 989592826 796157529 836050200 980938556 989486732 303335210 334647566 306068142 337166159 495509824 539061493 160641745 173172357 123843779 970331870 514190047 847319223 373151977 866874191 976662896 980750455 153623610 570116432 474721494 557588969 643943066 684718233 766867696 991999737 153900646 972211992 260169505 452494590 847704198 937494769 943623524 987663406 706924628 810978378 916423810 970457486 592632973 680133896 368593818 958309234 606248011 667249938 576986573 662086014 732066420 914345959 428816459 689896268 964494337 999057030 491059020 606872657 877406475 916966741 902280324 956467276 46378761 915093301 230215930 795173090 276785626 973359648 276096261 995835300 129880018 888594674 946486102 955645507 666194071 738064140 577468878 927256996 649012700 953505636 244407251 521834261 906190314 965649560 797021052 971707494 73637959 564872235 626007822 739840400 718565806 957464079 358014230 723704572 353259600 692279336 94718012 747152729 645530131 660597778 166179885 470565653 484646704 826599374 310382935 383419158 399901208 561665429 304476465 925380731 676706114 867071340 187707693 945116190 353145554 578073411 432175883 903930615 558141539 892388518 858019237 938078992 433319233 537843215 453192798 798692697 877237375 886791875 358490810 459127176 766028951 986745637 652804862 675404916 429103822 901990028 792683729 884365912 564327891 896905611 264960405 530328998 955808587 966938910 957918022 968771746 795627634 924519549 606486691 678380910 865861960 931970840 852818289 881308064 417142412 968602552 365567333 943916950 805558464 865012275 480070292 747853135 60027855 360362853 134992847 922009245 559390333 703817897 20266410 995325727 377543040 459869581 118750168 867595634 539631955 806128167 612624752 939258745 988800631 989637215 667392981 700036646 949747916 963241154 679955020 837152674 97806981 870601480 933102303 937632901 765911666 823800561 42398077 938142978 932035880 970560381 92355210 523399792 14816541 914342514 913541918 948867188 900835157 979541985 955176682 993379130 203122468 540515274 882835619 977101925 674271858 889465449 339526801 804753852 232369773 483874685 913187703 962213226 162536001 765936476 591754602 841196210 337826196 801620454 387752756 617388965 149813507 590695115 649238451 755769743 436614911 892434148 698154554 705365585 583523910 926044103 412433022 681285395 940632426 952815900 609206372 943260582 418597870 717356608 431525344 562200795 115392575 590745209 259651089 704888714 665666426 786922942 889525933 955631855 64140544 974111916 364707371 458649993 733407020 975762730 974753946 975714985 383352923 460427108 696975851 812419530 409697532 775372509 657654239 862252092 665715322 860051475 625251870 833275657 520559996 812644652 191771910 459779466 20931277 975206162 853652914 854372065 712744546 889065951 446173809 501617309 571932302 646597130 235180189 273802975 854914528 925570794 152932313 736606453 915145934 957995276 300378019 715251915 758582602 999021258 6480143 366993837 148397197 595647488 387932813 609183740 2481716 308494703 611150362 750313949 963834768 995146069 910122776 932919786 741210840 928441412 368853905 476531570 464682428 632551256 460218152 840899369 495458135 566986709 947313679 998567396 45217013 752823001 230906256 795327941 816923298 887662654 118807743 911703830 113600326 606211687 801917220 813490778 962825629 962908785 661900774 742691112 367545559 612355962 590466923 669333925 549972630 740068696 915892342 989910646 833951792 912049164 670531998 789977090 55539056 69933336 214913985 981586813 737285931 778597151 717687508 865540280 152453717 364671677 479057959 649767663 821602081 986171172 941734438 972844590 161788948 840121084 678135973 963089055 219296061 757176954 250292627 314436334 528287770 753674695 695860868 698106093 71819014 99120054 302617699 953014641 743820388 870639508 870016599 953488980 392980829 759298995 473639318 791756439 537874910 549845881 448412909 532991381 862497034 915953932 550792009 778028753 564036681 748323842 895324219 936629010 562413147 718309976 896704169 942032594 328371345 360981310 378505961 883513759 615521658 877036811 951873592 994621140 141625538 423299818 147300190 752652963 445217903 469545534 791953251 847756661 628642834 944312079 165351673 712098327 467849608 492272863 965705042 970532805 622782624 981147705 376303590 386090975 55300480 68424620 648326611 789701316 422037703 564339492 622298184 778335207 993573089 994054665 645558974 662905193 682608666 804707387 272915266 854748392 317252591 483292832 808356345 996020487 639635182 976856817 500721658 979360072 733026440 782165306 53472763 376550125 24673700 292707607 766960723 915573306 855925984 989764964 865927762 931097557 911735868 980389609 680913693 754564176 999115251 999643513 255480672 763570599 404429635 673250938 931858280 993508602 677792170 894324283 277590115 931104639 494242457 510325657 503886537 839372867 376636760 868559471 580234782 843884947 644257079 785721019 752709247 923525805 38167188 201530257 246209041 817763376 98372333 705775519 872404091 990993363 351820363 641191418 531271381 909458712 462870748 617982472 685702511 760877319 330263615 998664295 709537562 822004908 206289169 219741984 911706827 980787461 564956214 850991244 933036210 967017233 829420741 862496869 732363913 823679465 739836369 936825420 633140458 722331789 264535539 897883840 915179956 994300846 928643199 960486505 604784794 832123984 520271043 554225663 383330501 484848857 172410083 268943270 227323183 645721348 96103472 997293438 10227572 492805010 838981815 995888639 384491249 902103190 712830724 716112826 588825373 863757112 278252294 363570142 324973152 574476480 945544698 978743266 41139919 571247964 197845396 423523998 891883510 900795933 726991481 933859708 569627861 732718519 714264581 793048222 961460362 982775225 343387997 777270381 774878945 827555172 918674632 926599661 354046267 853153409 669934266 999964058 739694024 831800493 543832272 760837793 160072065 995929420 210311623 710895056 35014873 393993054 419155461 799311876 689476258 843930907 864735368 909364364 499050507 619207328 547075779 971029922 696146602 799740293 540133169 698576003 316945761 390593911 114369324 325292248 127431582 451621165 840495977 924993646 718805944 980647928 704335368 972938143 29742990 628740946 101351462 657610375 307378922 530212338 546064267 665048397 411686047 461308958 647475638 694602636 453571864 535485177 130324257 155302254 393998007 462875323 636582801 933773149 884547874 968759388 624820195 642342388 816221030 872355643 468134371 924507865 35113840 343837936 317870391 418318080 656006391 661190982 361798142 986534033 290292253 982993168 136084827 853947555 236543876 541964296 297522922 920844569 432854146 533150869 250312039 832302616 53075561 837694942 713064398 957124732 41707461 458800706 935167688 946559985 817690997 921886046 67003569 729506043 460539168 874012672 846763161 871980618 197268389 723478914 94868923 489879710 338946977 816232612 994064663 994914137 470706586 689501853 97649868 675962066 944110040 983545326 436582297 944613797 724993629 954202092 541076880 811520067 194236778 752927160 951917751 972028657 643495635 709061736 974287806 983307834 426450285 757995667 778482516 893574268 969019972 990996805 821761391 846991090 617175432 775237095 178791132 924244903 742326643 936268585 382214849 660813702 406097224 436117166 864310404 962064783 766236125 807932166 32537468 953398194 123414677 209569848 398579580 690097744 684162479 945712806 713562479 778781457 385519890 552089610 682496650 968497060 560110434 958407500 197987370 345293318 160675215 163477386 40050955 256097986 575793698 845552126 186800433 771779473 355530629 780007251 194600642 940945091 721103595 847917836 305711041 975402142 111613702 999818662 802893976 882242683 700070749 798586644 65605062 342391557 585403078 965576329 672125158 777724056 680141196 777939545 909088480 942319933 46440921 234107337 416675640 703502472 441874817 946538396 900494639 993074933 674434624 864879043 728699121 802948653 341571130 604354084 998962837 999292115 86829693 716675202 451525218 599236345 986303429 992682145 589183806 941675418 344794480 689911734 152745790 198901955 18891142 170746668 964305925 987814056 182639532 711332723 195080929 819711624 405014906 661959770 806647180 924026982 40549200 640347362 351075656 919292403 706092153 821595516 202979788 237442126 56703278 595801811 477379212 962335037 16215045 623039254 912062897 934672072 49979830 112620816 887704324 946162082 540339049 782934869 767033483 815065800 324006773 748125959 953921238 970424334 304303108 465151598 499148434 502691587 945634667 988252149 782736800 795716059 945976641 987959301 794008479 821010605 740025810 756728804 479506112 781102141 818389800 966307157 772676142 973607226 88610675 211696450 707810526 784553757 870975794 946315786 214145754 904248873 888161836 890387766 295845286 608136502 643088763 724637066 373820795 925914607 616471799 932998429 758259788 866588631 345436434 879593328 413332773 438024087 477226772 548580377 935468829 961640235 576174272 927553900 563173991 950151285 663759995 775633839 726663450 889815198 468929472 485421122 53050729 462397707 191309712 746906715 92398378 607995812 817563043 859461621 143382970 849455605 52216545 421865235 382414884 512687152 21116611 701815418 113962859 489821498 787485128 925784662 967186232 984672227 135801734 532597114 92909146 775138437 334725866 703239121 995889711 998928703 835920983 859221787 393171896 627749019 845447077 977554181 746983327 970285147 527624393 568331704 194105084 223816606 767442068 944062421 633315792 992363968 23464182 131055842 682016399 723341535 834917223 988328746 866641709 920335536 86472806 517009555 862882575 971601989 270964571 420894229 161709617 283230071 399558946 608537356 473403252 934195178 903072841 943852231 105084091 562150355 879217919 986382961 156334059 752040618 827256067 941142614 227475597 328050077 962017850 993457159 245893591 924719688 665179121 779592019 220323834 643511312 159801823 298138456 618163142 818687667 806312359 840219741 442095550 855532447 60238713 969312455 533105197 724318753 805694251 899170734 463481798 552756796 393124749 963402631 416266635 658877823 176749754 436429434 123538082 574308109 480749204 648632424 726818883 987908587 881000212 997329191 17940581 946582179 176174670 305764555 889738231 938716637 775633528 906419577 486479292 600369428 859372841 967957100 63937448 230260131 102772945 460413097 887560590 897606387 308727432 818864368 933469860 936849500 29978916 686983302 294815205 989924037 232567893 967060412 795442798 875300206 493360203 553419978 870362139 918118837 984274942 996003011 911138819 977796775 679757228 705808578 788159458 831562395 810375327 830701819 329690601 358737542 573808420 836267998 804565826 807998429 810454840 996412818 755987708 827568949 434052623 526099860 692233353 925190370 202256085 753910132 972359054 992710398 613019375 680764958 187009115 713151233 276112569 541502721 31950554 772354271 485897104 675880881 454364337 671044779 478487096 915264085 163112623 692837346 52857070 916342256 973400901 992742390 49761636 382336676 671437740 923627006 743723607 865216371 226470830 602984043 605742774 784746365 711076809 985180300 892959692 899415348 912862509 932952835 769324899 783783428 360557856 420078739 785439414 940358927 171416639 253268644 917203443 999851743 819164531 882069509 785768700 990885615 578851004 863948986 933682942 939644924 592405445 782189878 975047068 998537554 97848415 535427330 618258551 804302348 646705429 735563202 214398887 272663176 835516931 872335226 852085542 894314499 802877412 995163523 234292938 446549281 802430362 825978959 206619281 900498112 903453167 922944142 756051435 920016964 871496133 984272052 705620892 896302902 164507384 369197241 389717613 925969596 970522552 983361110 518594049 863575697 689152041 739000249 132730842 443200485 156766044 491707725 955741008 980351054 377964972 423335535 15636339 752508380 547870003 934572462 147677028 795380188 539661411 667952851 524702081 538228163 621584015 868920239 403181582 807426467 730018733 928163797 815448989 867886876 173876570 770759105 61213406 479659106 406907310 945791265 625168951 737330209 672486681 960399869 965795864 980558231 360071145 594619110 560098324 890181472 699885934 846558175 591838761 919811973 973239717 995969490 690351626 926323555 37831020 226890288 634877595 913801380 663059184 905464765 698985642 719228991 354112842 621603936 894394726 908235186 62476333 583800512 855164322 928032280 665691942 752319846 918821597 981453054 629925470 806581715 174661981 574344375 83846188 324785461 758429192 773436315 1330720 297733832 168393987 696512670 591582152 753077551 241824688 674771988 969202356 989018103 519079197 577998374 443301082 836489068 600330514 753196594 760030748 979773749 49951447 497772554 36617937 915240981 860144365 961425945 384334496 955934304 851755074 863149520 569136043 761086639 735529572 928225585 410524724 793418495 110776918 336845486 756803533 818098916 834366150 898896190 68655171 243331123 937699366 983016211 639677204 827178776 593421694 617496170 248663059 508982292 233841278 468450021 334723155 832712701 63303 723756647 143782035 787902871 610521300 985110409 577519436 847181221 186613564 468455988 718471968 926369839 990901531 994238484 739135583 817156231 229342274 301321540 307563801 648468372 194619574 520974147 928694019 939329642 399374931 918774148 618576219 885598338 867132300 914045219 290806940 419300262 17585284 817561145 827657395 858294616 804532848 965044517 110166701 589423371 155757346 251132749 597913230 642736532 145077758 947670667 273789340 610781337 999846300 999883733 189157208 429897192 59591056 807829427 22965726 980854847 952545994 963410427 176096543 384407570 824202656 875427622 515933299 576183735 110983540 718727344 355445490 442360770 234470594 937462031 712407643 880310220 44529052 363512570 613312081 709011926 112749425 976778084 215430508 793218386 898506390 920964489 623843546 944427881 479270951 624400073 231493359 945731716 464470150 926358723 205889029 634335337 928038015 939389251 795788752 796202756 579870995 654481533 704278623 988816895 213147886 583181172 928906911 994152102 708394222 737411876 347915165 950167452 3877716 580847060 760287344 972093122 96420357 106754316 253164915 421074178 996256983 997237691 310457381 731408029 874378401 905579895 546023713 706513061 264614224 629767872 654549688 981955714 712656686 907632432 861543574 958519548 697350367 886448052 409135051 897219820 104268194 999341793 249675373 761750417 371934070 518612189 281683842 563962195 545442489 559831183 909002056 961605867 615769782 678741884 375749610 655865847 716978644 777641136 539776975 876405368 624903066 717467515 998406426 999393969 575963550 982456619 780515884 803964781 581528182 844448727 740598421 917347760 501296127 693589012 678187142 766020069 165273316 419122968 965667117 991082206 444071594 906584444 497411324 671288090 720473929 991706440 713619756 816609233 398270934 751087998 406175077 594614543 562127682 617148515 952706163 972330392 329570688 615071907 287484287 509711270 552516743 923382645 248409052 413850990 679139652 880008819 402971301 881163795 917101844 929007278 484569882 855773783 475542779 625354391 149667809 344693120 804257368 939467199 635408622 801663013 610108187 642626972 602352488 784022740 286572945 826340685 229627698 874130081 987375078 998863254 403644983 762962947 274375228 712596143 75996565 863131169 158598743 992624690 494647162 921834028 632970726 868508002 198516382 475993911 822428912 955097985 259944637 952255077 765767405 854212589 424526560 770198913 272396804 347551518 708949237 995353197 397034606 774257744 455145666 505302536 541668273 553289761 416762900 419563497 827247734 876557160 343733245 705244163 912239379 939517728 616367590 937181840 982003474 996696280 999330719 999744806 608495791 744997435 570389174 770316927 251256721 678667332 789920287 843815977 283727952 520085083 466294727 722598581 615831791 817511289 617089278 675944707 537183836 903672983 138582653 589258823 195713047 548520448 484454221 714567805 897919451 988716327 59271989 658946223 678310945 848733459 50056297 430092248 315681033 445229659 757951087 788296051 481049953 649631999 64410609 238923101 765367540 991873145 123585588 988233584 847651120 910422529 426561571 873702482 742997590 928302503 961098577 970402352 325003631 792102959 247270316 273478433 76186007 251253522 872093519 983776271 510689783 833489413 878716415 926129802 693554992 915766137 275542739 578758855 83176860 276909284 57233013 784355613 972581705 989195486 212705298 845957316 78746285 625495155 361233076 500056712 424345535 694511371 998537449 999206604 988318485 997835706 972526967 997894344 214589149 559247437 505342037 543054306 24677339 775727479 305253245 384942222 386388381 898636607 989436172 995649464 876292094 973312391 614054723 639309865 953495539 968398800 634228343 998847825 602375921 656616276 305786744 982942080 952295881 978147285 198046098 961619063 989295046 990437565 795684849 982082678 539785884 706292580 382598453 965480460 332097387 917341857 910990209 921969211 517316688 657339257 726622796 774267885 444075359 800591140 129680640 525607562 104073011 368422855 341402309 569491938 564995659 968334885 318623300 466512170 490166492 766148618 137085571 225405247 261428502 541495597 23240791 44573496 242589765 876852189 199651405 229885428 496623042 758032093 207973631 481091702 35199884 303856816 490892130 882493596 98845013 254704881 921337586 939964488 825426723 925671316 491923740 728878474 161939525 640450658 18848881 906418739 1826512 329139499 625927234 859436432 235185155 267831117 708363938 793640911 87147721 132254142 948285703 973677380 152895980 370767664 82018653 851290792 114641306 928403455 74264437 551362738 183629238 437119800 610585943 641097874 370853934 478923186 843926826 903142950 77198784 405330216 646171496 850306386 73681356 426357277 721079698 997088149 557552781 762294223 975360746 992833293 944208411 949720577 945062908 999201592 54236618 559652573 182911610 366876363 380171745 597293846 860313505 921011807 261864052 459769045 627274686 976142707 224066326 390949493 808789723 893711592 88779322 412499098 368370048 728978637 496184717 683553274 168810964 225732901 249553574 849863204 569088656 901819179 340683336 886525931 296434682 311302391 910320830 953706310 328770738 401065598 515038064 884918043 711395147 719902474 940459556 954410098 974168625 984969220 464944018 925548938 102467932 296990153 582857937 864266822 156345549 193436609 570240878 818129464 2804272 233996983 854999423 940215225 602107650 938215026 405499793 554372807 340619402 643484462 904772967 925646995 831191452 935537792 791080690 980061853 887383810 974313229 464731830 811532869 923130507 945562790 840764227 932011211 421186465 496559205 819823226 962699487 57481202 495357328 884910271 917914755 854720323 973990591 377300258 476228011 771135984 801563658 876747975 990997373 553638222 588900681 212813225 539653880 637189335 913645710 635565644 944900836 72579666 382368162 397583572 676124733 626397276 954272454 283287390 784027784 466304498 935581820 615965111 872030287 200693007 312580634 232006491 883250645 800452962 848609887 888823807 953202453 590539178 882424850 296110105 787442982 109490904 277395079 397420543 440672088 319910705 935581065 726989676 759753039 923594106 969754911 144212545 789901810 223266897 616035964 478838033 852722712 653308522 666444160 230965252 640399752 5878412 373730809 408513763 430183254 805132983 950981633 556019017 759003508 892671123 948538534 119036296 992703294 870366396 879013527 162719431 507886182 131824703 265420643 819705563 855280059 51534032 698932929 940719421 949216563 999346800 999823891 337827358 770756108 761486993 968463838 23821410 920204455 43469883 211304192 889506273 975463573 992342599 996816682 720580416 762170474 584889537 699419868 807490700 861670783 59533776 537143658 136126062 684708162 584185018 833626896 328704078 472648000 27537317 830892644 30807607 727769928 143853313 608236757 208205505 632462222 229419321 301493608 781210381 785911656 598581962 962490881 106521520 168400787 259900387 340128509 79096872 318696472 697505307 792169967 685622981 981856837 820418298 846506322 99103643 485137330 405480891 903012596 209557358 328505176 166863477 850472186 96266907 881321099 22456292 165834755 589330414 729751864 794066140 861304245 776679521 926791226 331629607 641073047 965808421 986117537 732423065 763374613 927875878 952137072 751854976 777465731 393287168 581502716 389760247 772627197 153857027 447919213 623802121 940748265 294493881 368280450 973750829 982432175 482718807 888868009 249761742 448481294 883577840 992322802 559200140 580247506 975456095 985447529 488272126 960175509 496989225 890118774 111678256 705889884 413136015 761486149 880034404 998473202 797251594 896983749 339764127 708580406 190526570 637719305 264785822 695136324 811820724 997996022 290321378 890618715 684314524 765057050 993292152 996692715 955146596 990880327 20932331 75112273 879932533 990175362 263418604 955386885 907906571 965787600 837045370 990102146 128308160 562378207 354061124 598362308 590369871 762036065 125635608 410943890 702204830 827081973 231477659 707915407 862818045 967842600 131344942 615939292 488374620 581854277 136334006 908283834 236239718 248129131 786961157 900205353 503866808 938706338 754223373 956368457 422881179 427347129 463622989 805749860 280805408 809981863 945778125 963416238 818188052 877854591 944066747 980139796 433895291 537587701 4285413 749616826 290971728 418496269 350049529 561158911 854596541 993218989 612764598 957299391 979033978 981144784 868459072 876448663 792460433 913243658 1079535 345773703 398529161 758362666 130419952 229749524 920693431 978417063 602439438 995930437 824842947 892316549 477339463 486166955 317604693 881468013 657638553 851887306 617951743 748889006 813443109 998305830 647695173 968122629 50479178 80997120 19566015 955352582 496316158 529378754 419238994 496830330 89903786 202359126 130630399 700310507 821025159 910344646 324224396 539453976 577764102 641626339 712559405 745367278 642567432 776808901 410203536 962820469 639002016 796908510 116882857 654780812 508806971 968542446 474486874 487495380 143999589 855292697 286719042 957355488 808910448 989289630 199917614 551142746 916684720 942832868 644895474 788688777 488145427 597203746 177475729 668161471 517551550 779970994 591362808 711289578 167430558 282142608 225206983 648748625 828834903 916092307 656448618 747390981 202854266 362434038 479483059 729837627 333141187 682148138 676291641 755641954 304732267 357242251 552325846 775805144 933802350 991023195 474435588 783489075 6337509 360364287 459548863 519992920 743302417 972980571 526873884 984735541 395885371 554906172 712689495 822036319 300310556 666921525 680644527 775851270 55368488 857129518 174600247 369821381 200407898 986423409 845742207 960789261 694319703 960870777 464246641 739324016 580064726 662931530 979635449 993497908 561344996 825333115 813356282 901896168 55773739 403774090 692362557 908530974 429240311 480722027 256209010 612688075 72447872 321106803 821636928 942982349 187534783 639914341 66765033 703678737 511358080 567326236 686668091 963198622 129747401 206423181 777810871 934091613 656813993 948905055 716804901 730098671 744850439 868612426 803376064 889742392 854091785 873102438 195002081 574368781 965209336 987858139 992806087 997714743 912174095 970127198 919172515 956530572 32215687 153145959 74189 521206534 372751497 998096962 593007513 897705104 111405446 840586976 814645291 967670551 952051707 970096237 721341830 792362617 330650433 884825739 377785100 509327189 678981662 868788470 104601334 169640224 499442529 960812662 6061241 65047958 118449470 516118880 17037091 443749888 118599854 199423271 158493590 697569651 164375346 976465006 635116533 833678949 859448107 937313894 864439547 996949573 715868395 923957597 339287106 660697516 451359932 766011378 917818435 998502028 687837575 966154628 958792991 965740885 342519283 739750088 370495372 547672512 870243965 909397810 692302259 896862907 540305909 850188775 10762783 854328246 889988789 928728965 474280524 674418577 849547180 915421802 339657668 589180270 660590833 795626913 198481909 266858277 928371399 952697317 418063702 861894616 16324691 483486695 333431000 763815708 514818232 992689056 693634844 997775046 452413560 541399095 323698772 360469366 718646145 794599051 922596875 997342626 215928855 759945152 919622347 952777078 591598553 939130991 529004124 832706421 892072135 895736907 666936842 760279239 150307731 331254517 106057013 115135345 751906365 981724714 38705708 250075166 117488350 400114976 692877146 719489204 853992086 896943860 921083945 998860617 461760591 905222490 886819492 921332256 246298982 775053871 317992946 949016144 995346683 996777561 467776061 895921116 631477951 757325109 967890856 997049164 138845577 595757697 141661626 670007812 824461465 852196987 446143363 927738616 233263695 930571129 521733724 730166544 710774881 970290746 656388314 676814343 765246235 980581363 377429853 970990820 152104783 662065123 82910959 202465245 932508265 995169053 178661925 429008961 816704153 962018438 724541084 770307059 103293109 139436236 794860346 954174685 118285287 573668634 550982934 948254018 482098701 801569852 66415549 606253891 885980740 912684807 359047091 741668624 740428076 842843679 251346414 971050549 79603262 402493074 63919148 549243360 640842785 917220345 363793967 860233324 84710332 765137744 188642337 392588511 8420087 489532241 985288531 985715143 101920876 833923332 213344062 756125126 515338122 802179936 944038515 999376094 632258575 993971088 183356774 567392850 428417471 819792015 973591752 981423147 92469394 922131359 754178065 849667663 84877704 357467897 488623741 585358886 696342642 904689928 713068701 996502485 634131155 945572197 697047293 762351900 779032445 922849122 805363919 837477813 992397321 994786746 401744005 422211618 530770385 807939376 487974589 979632601 782123136 989882790 341159061 371957108 437916621 738870171 446249693 921222896 149237205 768784700 731875042 794680116 582814290 632503974 801677563 829376011 223688309 466120666 857994450 917135018 752495753 944253058 942007333 948443711 507482974 912612563 272422076 436173553 904124237 996498453 506459648 641384122 566386206 711072037 89122718 470864098 197744765 822861015 5581533 546537486 530674624 965228576 431319728 904511427 231748750 819747436 878579037 929040588 637148320 765047081 636611339 763415819 603421994 896937657 202220701 330224336 930016363 957976698 724914364 735515238 423263908 602067387 17835222 839715133 233810264 541519372 896733642 903654128 323973578 987351471 42741824 182685681 705648356 922340390 909114316 921284766 715915290 949816020 166371563 354085012 141424452 917154838 510486500 696607885 102259179 438689970 768941206 941335913 936707013 986228861 686267090 878111713 529790612 670113543 118665608 215029631 957288212 988926923 877898605 962660439 44288629 162045990 866639309 868030977 11724673 243816298 419595584 669877971 995218377 997148577 407732865 748271749 938397694 979322787 715026821 741867420 780817468 877092512 611296405 876761705 816886480 884509563 17265924 249542494 859536052 993684000 275482374 740750664 474894353 816370337 170166164 222927539 766989268 909187682 782000528 862163961 921195550 964557908 794529726 796775366 302904979 622677548 977734109 992020869 885128462 987352951 605830579 788231929 783934600 847499681 141102836 661786138 439491813 706345512 759361212 837367262 186937660 781139181 392602534 428107588 976184670 996637052 445783465 751393509 446063206 680579135 707717073 856043632 718947029 825751495 326922010 459117724 303116804 441560859 75309133 604532536 998763825 999712312 330840516 949113919 107482248 331517718 714409751 886971196 635744190 643467918 164856927 725970777 559864415 869439409 576917915 789639940 705460199 824415284 106914090 819160518 885215828 947335105 665128750 744020875 105630091 111231879 751526003 761690822 878080702 904493283 307937788 835719227 896140679 926436094 304770841 487624555 972918342 987144863 214072908 734218935 381932957 503506889 392425138 469739528 656769531 885703558 92831389 432590884 267142028 848866396 147554848 211197057 159382067 289806795 268951495 749684664 7412789 787383989 378556500 915901688 440240878 915120474 356868612 726879859 566969825 878282307 636160287 855620613 658546418 941006438 912576332 967818660 754821370 969998521 340644816 380519935 970368101 972630881 217984904 584232015 568750351 899319988 669518741 713209364 143808297 442483203 57454935 806368590 312272980 662182996 201246052 280190928 128953169 696031074 201981312 322023322 609951839 909418533 634743144 659480710 296789680 801999285 373047877 822124725 564387768 766099116 823988153 989555697 458497639 883926524 705205070 760481824 755310159 976836495 666062404 878889125 539809465 968143305 934477750 942418821 59762300 705867669 553182340 919547584 64547472 444489832 377486184 660964516 597788622 727602047 125527502 414956772 795572500 858707228 479126220 511688831 50480097 295107874 636625953 685338228 534102032 810497309 707429133 819372513 247646841 321437011 432518609 990045246 772585874 990833897 639211464 811582181 525083936 829295947 538182169 901582776 226267368 368652697 112116734 511957218 105108673 963347714 736695163 887198609 396505790 926070431 742215912 875514855 521522236 976822836 678012774 779589174 445749242 457187109 851095069 926898423 612130425 682479520 746569038 853835000 697153263 853491973 804643097 816370674 600313887 853671503 886184146 903843039 159118606 299299855 207957264 652949728 888691033 891636824 185131467 198442850 821112862 976101776 735559 808587090 355015588 435161934 811420614 996717848 118840698 488431209 163332441 737321006 88125381 340877806 430754217 589063526 638580709 695569250 728390243 865596928 142191019 627088175 962888151 972680640 175474276 279741581 44631071 384889536 568396862 673551589 524216407 879735991 691499987 933033575 979570977 988110798 724630861 934662387 521058332 563888716 806793653 879865397 612097074 612709835 496124223 777694701 871735834 897452204 180439053 990203028 823484812 944954800 490124556 490282538 118720229 733050536 613031828 672061206 844061781 914354118 467289842 663955671 674362815 860458279 469870051 984582620 30304101 526062037 431175952 999394093 837804254 913965650 313036398 449670871 303827590 413233108 694231332 728160490 863850525 871544704 727013560 877864457 198307671 450884566 941374947 964104785 557840099 900091499 804195694 970041878 843369710 980286738 872696219 957908924 17927436 551934356 701664361 964618170 203859744 643049199 317457906 883882558 483233208 693492446 817595935 955370227 186731702 366793451 26016190 943226802 664510281 704850305 932733377 947678142 112897615 260358428 729714483 947455146 266222855 510552209 751968172 794021686 620799103 925472705 329002290 496799595 776490095 910019370 216611333 354356736 240409628 840973014 210463024 718915330 695389035 969704945 880904436 978523784 553837881 607180422 92656923 574479650 709850037 943592124 124735439 423753670 254834402 668980151 904050563 929077266 98239622 267717613 229584101 957237084 134820941 628404822 224192495 546606124 266246456 688574625 508129069 520014156 831788954 979237049 720768644 822201539 897503638 907765858 124456254 351265459 296914565 678018303 614542100 848840403 161268473 364647718 693725892 788586223 757533746 828273516 378722710 960516127 236048006 753748171 366718581 525085047 239529216 587362607 725882135 820952935 588727766 774072529 512083467 883798584 894797662 969270379 495234026 509370380 673684059 785062315 521830249 533835624 638762544 715772101 437030271 852191159 388301752 968192362 625756441 745403853 274834045 912392451 560080482 718141517 698572526 792733625 467693725 793935059 822390783 969863313 230541410 246214410 439667940 484368656 542985026 994876532 995790039 998834457 271249596 812331752 858595101 965028286 507668448 853575935 749952258 904959750 758586690 957012992 900678075 914925313 94207521 95883516 790651927 790916495 782747090 901409801 658427103 890013559 796554385 803305004 399564533 671677968 932943733 960615091 98024963 764980768 831214541 932552244 950155073 954040221 53490961 160518151 951933193 985469808 943366649 959787348 252021364 477606087 676655279 725126793 386087476 936499492 639395100 713512186 993019405 999937758 798129438 804958618 950964067 987706294 750459497 983607236 19824364 546958775 268194227 907665846 124703680 944214057 13924566 278800381 916435309 993046592 130163917 439704571 733896736 766542697 633170744 718185037 114277647 415068626 26305145 377721893 308745163 330952179 95578654 856842293 205655527 930890813 729408548 810896173 376908475 550731838 686492930 754945275 153159765 296340064 752711563 991792383 436583385 679295435 957345675 964988126 506267206 859313906 686330854 947109034 162921206 570655849 98539103 500464295 310430098 541855258 186976223 591305039 257945052 682978796 615848139 778713929 553862682 677284824 696306118 740419897 494127550 525732664 418635727 755580540 995411098 999972522 246609865 897059598 846218671 989505969 433144288 494874552 43212308 490943143 304644819 915631343 425236263 509537152 916729171 948737105 260616821 614057807 425149824 437363945 846222766 938160692 116316460 117362847 742217371 891638190 568081186 855571702 613109133 938086493 317235567 419666340 765497491 839060782 400384784 804151299 696789047 900356779 805086301 959737010 659565717 842595195 238940032 426868902 273568931 724392237 123057105 839518463 123495927 817307362 59942086 495264093 911678288 914640623 765823535 798014402 783432084 881821159 320540807 437940728 328167342 554662471 953089386 983995180 982541510 988042239 766991949 769553819 179534574 371358172 791965299 859426687 567070707 752121663 360029750 553071965 56988171 396907911 840650231 850024341 330142429 464867177 111702758 547268390 874082165 996451292 431116513 825516667 413018190 431745667 432390806 682942627 576462565 576515847 674006906 741524110 214552881 826006632 339909460 506866249 79802358 743872476 695638574 824785335 718680904 852404328 469952487 760995637 997481538 999878555 764578068 904889231 15027184 56713056 331310549 822960070 220326182 472635075 904805469 979993018 953532922 967943993 624813727 867818464 66676159 322507048 765911665 810657150 326259389 465230677 23481848 752470591 642030903 751764143 479978399 992185494 185076571 725558391 738655434 880155098 602199502 955209227 500305811 503213369 333772511 915772280 753853754 907183233 73796717 346272668 198408820 345349945 460365743 657935294 290314091 307807184 380790367 557023025 502089792 689532603 750459821 893147042 870434738 955054644 661349462 815539875 180458405 643074605 880649694 902560251 996958841 998637331 647292337 890270808 508610641 908410290 864736891 945463736 121010011 973894811 462546693 830430379 813019008 975172612 624122352 989549585 444590291 571857035 826466697 957381276 895010644 908697860 601094981 774987352 961098242 966805258 496656898 684529351 342389226 468718520 516764838 722914498 827774935 884762876 312255634 812200297 56549785 693902469 478773863 719767576 494847806 888074816 209279388 835013580 548890675 801883465 81837059 969946638 247259550 289563393 660829716 864614366 740116812 976122657 794040678 799290352 944566944 971593310 763378114 778700602 427505207 599273659 98897804 326384408 414820109 901955215 152122027 677574232 627684639 847300924 275178907 530108558 334500683 412264330 161509996 999239398 360708129 806006137 714861220 774992967 260637864 424207001 875032906 999088534 150463955 188411218 435957636 806980626 778644759 779230066 876752578 952882172 669640250 983035284 8993708 534511215 545553615 584273788 876966015 977759986 505035393 971691568 714783187 787685747 140204290 860873269 491481356 598067489 212236604 641745330 811926054 987586529 128822486 741050051 224497713 423349646 496722969 843238321 982561599 998183982 54093399 524799692 76212593 229901803 498397438 984057548 731513916 745611571 538208269 700610947 316211377 536761445 299534972 881122548 129283347 339237075 680802907 695024383 159577389 355779692 220816085 276262034 807203998 888082153 138421183 560341922 308425057 609479146 247702591 298099476 207659060 554742580 777524904 855567089 886392101 972997683 337823436 585028472 339672085 874944777 697884726 859697325 979015278 992838789 796208084 928880011 253227856 253897914 39259981 540591393 227906978 573114293 714679247 805457031 859092267 931397768 816230157 824021698 372200921 903423668 306628477 822610945 227929169 252630608 354451216 596133107 407421810 547561426 167813317 890859011 137399983 248747625 155734386 648096095 794495132 991732680 248706930 537024775 732426226 993699324 516808778 628667798 656040209 768554646 791548392 929099802 226466744 357892753 762584834 903801956 922986690 936503172 966138852 982303649 897745514 908977637 114933632 636311817 114473693 896291273 295539635 690692266 784497038 897321245 312260998 330929109 827083857 965774477 847689836 922519565 297216908 517873324 367134351 572197411 421680491 650572893 257744545 400272516 405377154 984061538 93336194 956338653 983987620 997573655 362514168 601754013 832373782 957080764 116177185 876009248 455286541 552958544 922693437 983329876 817999333 862700000 394882005 976166594 58359088 211164405 756922403 868989379 544337214 679565405 296944684 510847843 861375900 863303889 579617384 685669887 945615635 961154875 239350129 696549334 112030375 821445675 57866829 704177806 603488070 969559293 41871459 281530554 326463741 746246961 493514378 673261931 618408234 700730705 831796072 881331944 807513970 994221844 313945945 446661679 762991785 980525067 403993649 646243092 640917764 714100687 129788282 738426733 213315644 941017534 568648118 679759483 967226767 973827729 71987832 522727829 211054010 899036777 949099102 986567249 963801747 970403447 353828607 949959560 184278299 921852900 595408286 973795405 87338282 954061333 795092712 803980774 946471045 964709532 703029498 978666776 908255256 994958920 189556827 228576618 975918089 984035218 253649657 574113941 3839733 704282135 381485623 772237833 147933353 540283162 55864845 206771540 33798924 625842022 386020424 942057897 292930760 797282629 988435046 995966774 453172315 687003076 150738807 170293285 353035974 972731482 449362925 572000387 302999468 816368556 298039684 825447854 371775613 626714728 148153248 241672643 398076270 430772068 164456137 205212233 381345567 474392156 786196704 916403625 608989877 824285797 183692911 379360501 225358134 801752578 633975960 830034463 923594715 992903711 468046877 481618862 851215652 909120496 701677350 720358058 968392998 994410755 788245351 857554218 233043276 460055765 47775156 813281351 240883787 319810412 401083141 934809499 314273061 684101019 462102981 892726403 886960230 965329840 237012612 733514734 180835547 330505672 928022418 997617669 616900530 960092082 219459089 982122283 746791376 956174239 180929415 703346822 667492140 775974039 193826113 306187371 470516993 729393257 182198902 613998461 823022421 857977646 336991762 651734060 94745347 455740136 795437056 880984738 373965917 616270766 28125133 958702504 757807976 777178291 161962312 194918195 218410135 703681137 447160066 858698063 513154549 766486030 300615998 876444371 196570687 965902176 193387987 213381463 697991597 950190257 161215287 950691486 55364775 582445703 348917337 704762816 122372441 234836618 536482140 911197833 945122143 963144724 515912373 634676415 632924989 634385663 890406292 931610584 647182211 751281904 43895564 463865915 925805339 937966694 124138961 403538683 445806391 865824694 677083588 886106427 99098327 249921449 672969121 967153161 705429304 825569122 416868584 945762177 648087946 970399779 806297418 992668785 399954889 673659134 530773631 569742762 555814757 906183629 243619675 914565712 887123428 889387223 179291677 691712830 293207179 604376287 498910848 672451525 667840974 864240738 596166681 832914652 280148735 326716014 716008030 978768421 469045377 722778567 332159821 506541359 433515957 593708385 865485031 894802691 601893499 920362913 144789700 417746213 66640002 490046352 509798535 846457224 969828262 990346134 830244413 864996824 652422152 941252278 850925120 936490757 993671651 999848678 374931092 546368173 956158137 996688354 352000840 810229822 271009383 306372981 396077576 684054614 587427942 872974075 302707476 957526162 984267714 998079243 785096287 864643300 404746086 513609696 247263478 642196009 757087435 964360515 227774073 437926180 998702187 998880777 662541783 666936682 728865470 975027145 118749909 772426193 722261234 895443433 649869305 839021361 435809429 881656932 658387723 819231128 545665916 852922821 120676291 164464594 89508641 243678203 24384882 747128192 879084415 997800118 819947171 886131304 597158753 979185528 585612713 987597572 853452317 965102926 144088189 609484695 419937763 667129575 487479260 675711388 658271304 973543878 969806679 991861485 102978274 174928849 974047680 977012066 456823244 898026983 632533989 902661995 623505420 708535243 598121623 810397443 331753281 507813527 23260446 24922867 828006631 894820207 729602197 897855626 348257705 422778070 528882502 539323426 461318604 580970667 61286954 474366712 344121629 847583236 433113139 847880626 198529841 534969900 667209922 971401853 710241951 911993528 355758007 784920552 946148146 968649119 204228868 492361127 838630877 962968385 578658131 777830099 790271439 946418058 722702747 799583029 733964120 968502149 428120398 977581420 693282696 738865511 882313383 981584549 786461509 811053675 845965726 937252835 698321126 935635262 22041295 205205493 679575224 719340431 276426978 723074140 184478599 991909987 386458466 584310016 658133346 981891910 960883286 993749788 955993183 956829081 106800265 632642074 276780823 502082866 734544253 818329883 723201603 841970702 468369610 957670787 835798553 970998294 156569708 543903459 342647388 678084012 747981553 988891191 35061219 864695739 620923863 822221834 862577812 913680441 334013282 943694525 865710837 968929548 431741482 932890754 265724420 371054394 649869322 656946129 358010701 599996714 298984291 644319029 745003499 851893691 442054194 711703447 840782305 866595853 814683153 929504710 293913214 910856244 903597740 983003441 760239651 802363389 150317678 808368051 815700868 894329168 79988766 680885493 423594805 854986009 503693083 981198985 447466924 950331833 835441113 903032198 829187626 853097251 299912053 725102011 795713491 933167704 488578298 736751431 414026330 453022734 737002384 862290873 426198481 609910779 117151922 642336898 406069147 422837989 416844162 809767688 983497703 997657738 357595662 645371804 933357214 990815661 219325023 345506819 871166132 964930670 895226903 983242609 729903248 814722752 614680551 774769415 76181867 664462624 852464914 866833067 537332014 622641709 334206299 540450573 280098579 687443446 123584992 556486734 643618519 718595828 719577952 931769475 150247000 736020002 643069544 653401003 346209733 375938450 284137814 779372704 403769474 567098732 832932838 898498819 905490461 921452081 692788647 977291364 2039162 231160555 225251621 383657808 991721278 994701753 383818274 440808032 226679080 671302350 473679510 682311166 37974573 83739802 938289636 990033710 140496659 842134824 173738644 612020377 718117002 869015341 201372482 216750883 253442434 764682759 71670922 329376338 865014941 992437773 48112146 198878929 185717265 648389742 469273749 813058762 869283650 961836900 370230881 384333977 991506716 995168094 608402298 676942706 987201800 999010895 172532088 665091663 305514733 409255847 993746657 996930679 428061544 477727986 663764034 671311560 263663243 509182778 424865224 756203424 149994074 325986088 434204859 500596451 465355321 685634896 278310863 817979054 174380036 567615369 717487104 921688298 620977906 770802139 243402940 619591172 446476349 737757442 212757551 567498148 187288397 505452897 763994385 990195763 127304361 491178691 612661687 742002131 843161491 924989343 231172317 252458897 105233953 977794188 533846180 585020575 664720206 784438345 510247136 548930755 194299237 864769998 550965596 849366384 149344599 493475983 463480755 683436595 273582028 712963904 60955207 199810420 990673683 991860466 520901356 882720216 171538120 371356544 655922691 675199643 311808069 382500662 573456981 598081599 621047821 727255184 625607492 857775892 515588885 575114079 848787107 963426214 423280951 548463221 51796826 424663728 905430712 943097634 298625895 845837192 532234244 656244979 588953477 995036503 633896701 977770377 712353651 929748473 302134807 866066164 152781610 172338249 171772040 796963885 177011268 917646112 758687705 889062156 55438305 431227441 160164812 260636336 606098723 879298598 988669769 989831716 599883170 994313130 94136866 170359349 560921598 827644200 301715079 653346447 580200704 909305507 39433439 560345762 654075500 705870824 632146454 766819743 480665347 744203419 150797575 595008887 674889755 872783790 571671313 799479701 888628183 919921240 31297433 383940859 564962880 967428815 64406106 861244669 425031566 656902907 698279438 874219188 183438211 968612326 221707980 583294987 805809562 898525381 107317294 280096025 757028826 785571507 381938768 939710180 267939850 352665512 974190772 986839907 126616136 232203308 382626521 838449073 830707083 846625370 546801925 716182783 651869339 808150166 984448688 998789701 110709564 389523257 85097322 702524624 761717796 789037011 711530501 953485408 121039023 512743998 693231989 963926231 99309442 580639030 695455077 978452162 290276194 558692332 971806497 987667729 5404467 761673860 853947161 873792922 966682245 977770745 328094619 826486105 361151432 806517455 673761079 985328814 404633695 441796679 157028576 206026663 532555316 780754106 932032169 993137911 867615078 922847573 766436958 963885377 944997832 968200878 388026180 698576785 670129551 744995987 24094995 635078102 663150719 718708581 532473455 903118527 481332058 896145818 642571507 944452505 586185428 961343736 308478086 953341879 200167705 894377216 151114054 377538683 960323469 990056130 805512961 818297184 301495689 781834189 234752087 711486550 249840460 899919428 272593600 934405878 951261750 999851611 688592477 859801473 586963412 909539937 990296712 993166362 634614095 916943974 828092675 857888667 947264907 952099850 698306307 954346950 587701115 957336802 900650358 924812591 826859163 988316532 810396636 822709184 235899805 629780066 310576007 597012882 280599592 474789584 59747006 145052577 744252920 855542867 921779377 950294585 812726876 914005117 932654809 993822206 850098123 955335732 173154255 723675821 290351922 947775490 998074524 998615494 839899562 866099625 97437105 797186022 14609461 676520900 446440402 611438619 175513069 387874406 858297239 904465434 752102137 795800563 249795552 941268316 615824005 803246696 854550588 992016230 349007227 470020088 887598553 925358566 2057324 210853254 44343942 763505876 736061562 934239752 30151710 261104676 429885360 597263453 111733893 596232107 215032337 377304553 663614506 887186405 72703461 844427033 127809032 917782253 17283166 249915327 991816480 998598806 537422869 726276489 505179276 715022729 76354558 820748480 335846417 887505065 877500474 927022053 727987338 857208411 788520732 919496521 331038677 383189091 628044483 972362399 189240510 815304429 321666986 670954645 428788310 942878383 721084328 795831469 280268439 435504161 785484387 820256224 212409642 641654250 308277574 994489061 877530602 932825209 910118189 944409671 476669446 582855871 594495421 994615137 407884737 825050580 998309710 999342002 597919722 945128399 173375894 725955169 721670925 969478587 43663094 724069503 942323276 973982951 646970000 827375083 553515842 587951962 46725595 395838941 195439739 989677652 918253253 960868072 61197642 999491643 106496380 802261441 747032510 882348725 767535721 941046614 22359446 661230311 639509382 946739304 29397649 424438514 404404635 414300608 503521582 839583862 88033824 564411636 830391878 916810495 759741639 979976764 92974101 801914392 351920345 574034926 297896186 710504753 217701139 868174459 196555445 847068210 868682148 927708175 462533073 932637608 899079159 944437819 280853052 397198905 133378633 300832206 957062040 993083968 785362864 873987726 620931630 942783949 853482818 856664168 242031524 992417436 861197771 917695744 120931463 271377503 832471835 873711361 1949733 413267492 248495460 325214341 301500329 749270512 651930015 760985145 17019886 114625086 547217982 547232590 138700309 561936284 170801612 453972465 340878212 745146198 694221636 994267396 623365014 945636484 129999837 409060793 32364073 297022187 417350117 829769158 599860333 823478544 304140690 397398873 196055227 547984714 675820199 692266772 889099683 968557145 388953348 650006452 910540313 925939582 536651062 679339578 279739957 642525438 477956311 736478151 833502727 902449304 55906417 422912607 836275576 837821794 336811688 413595141 367225284 869284532 700038891 748366513 385675884 723256888 46841992 741558951 633178398 642832935 651523658 778103892 179570186 467568382 147385854 364958505 128856835 295118551 545101612 757335555 914538064 976190298 13317437 681899557 686872023 875153594 637848945 883462007 956623346 995994501 577060006 610924313 581626013 682532967 276919492 938328220 28463635 534984775 828843982 944887598 101426165 911093186 777539758 816922403 884670198 957769255 950558219 972872297 3678130 800460836 417386645 944196763 406481335 685983614 196394796 601858021 231559039 895031441 956258305 978644123 962405970 999104866 52795245 382533044 598667426 913032184 391048365 441460022 879674182 946701444 376922799 615954783 825921048 957150122 189471833 196069771 173710219 375512557 303476905 975906645 707778454 959509150 922429764 943882282 355239305 464963847 746008904 978838438 12174037 514292402 195376025 262027332 265810363 831779977 867242903 913912925 913846163 984858852 167253424 917390053 220713107 782281306 799646391 971585176 225562608 266508454 414609991 418511865 102141005 142376331 241579034 635239364 675682138 804946039 981260517 981805128 80006589 165309442 881228081 919541929 731191075 913147989 409450436 422279222 776036530 783978037 749516400 852395288 62995209 156005496 805886555 830947870 470636015 754749170 96225495 481593880 410089629 539703229 651320076 674548766 537582276 646512881 629947856 773426695 430579936 836459701 173398559 850864310 732665218 940478131 927333008 997266403 740214357 989973239 437203623 819771762 270747995 827579146 399809789 819429727 155135391 787989760 288015499 351025397 259906170 657589363 441057894 796249290 19544755 746318829 619664497 720449188 183309270 380265295 931406574 982863024 802436460 955229885 283610552 466384001 69932811 791284244 436077452 962302869 288050732 731274590 271712343 952584530 946122294 963006226 199009099 911706929 455512823 679095713 676759461 911643798 301283557 339934685 748064650 803533896 230754047 914691158 774101984 962368256 147142999 635521418 589211781 794110931 679030356 731129142 40106981 429298712 224494952 879479812 788000547 793553623 254287544 946897247 391066236 988299010 161320932 211601071 287831756 473026689 693696640 866430526 398435598 955278862 801255161 813010217 402714265 700369867 614512304 842086554 45329001 333169070 411176360 474687940 152278843 700071970 395150034 479096480 484218265 741453991 383736479 694165215 351814142 837018861